[
  {
    "path": ".gitignore",
    "content": "newscoop/images/*\nnewscoop/cache/*\nnewscoop/plugins/*\nnewscoop/backup/*\nnewscoop/vendor/\nnewscoop/newscoop-indexer.lock\nnewscoop/.htaccess\nnewscoop/conf/configuration.php\nnewscoop/conf/database_conf.php\nnewscoop/templates_cache/*\nnewscoop/themes/publication_*\nnewscoop/themes/unassigned/empty/\nnewscoop/themes/unassigned/system_templates/\nnewscoop/install/cron_jobs/all_at_once\nnewscoop/application/configs/application.ini\nnewscoop/application/configs/parameters/custom_parameters.yml\nnewscoop/composer.phar\n.DS_Store"
  },
  {
    "path": ".travis.yml",
    "content": "language: php\nphp:\n- '5.6'\n- '5.5'\n- '5.4'\n- '5.3'\nnotifications:\n  email: false\nbefore_script:\n- sudo apt-get update > /dev/null\n- sudo apt-get install -y --force-yes apache2 libapache2-mod-php5 php5-curl php5-mysql php5-intl php5-gd postfix\n- echo \"$(curl -fsSL https://gist.github.com/ahilles107/8255528/raw/fa949a791fe882323a34decd3b0caf130b6d52d6/travis_newscoop.dev)\" | sed -e \"s,PATH,`pwd`/newscoop,g\" | sudo tee /etc/apache2/sites-available/default > /dev/null\n- echo \"127.0.0.1 newscoop.dev\" | sudo tee -a /etc/hosts\n- sudo a2enmod rewrite\n- sudo service apache2 restart\n- mysql -e 'create database newscoop;' -uroot\n- cd newscoop/\n- composer self-update\n- composer install --prefer-dist\n- \"./application/console newscoop:install --fix --database_name newscoop --database_user root --no-client\"\n- sudo php upgrade.php\n- \"./application/console oauth:create-client testclient newscoop.dev newscoop.dev --test\"\n- \"./application/console user:create test@example.org testpassword testuser 'Test Name' 'Test Surname' true 1 1\"\n- cd ..\n- sudo php newscoop/scripts/fixer.php\nscript:\n- newscoop/vendor/bin/phpspec run --format pretty\n- newscoop/vendor/bin/behat\n"
  },
  {
    "path": "Dockerfile",
    "content": "# Start with fresh Unbuntu\nFROM ubuntu:14.04\n\n# Install dependencies\nRUN apt-get update && \\\nDEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \\\ngit \\\napache2 \\\nphp5-cli php5-curl php5-mysql php5-gd php5-intl \\\nlibapache2-mod-php5 \\\nimagemagick \\\ncurl\n\nEXPOSE 80\n\nWORKDIR /usr/share/newscoop\n\n#VOLUME /var/www\n\n# copy virtual host config and source code\nADD docker/newscoop.conf /etc/apache2/sites-available/newscoop.conf\nADD docker/newscoop-dev.conf /etc/apache2/sites-available/newscoop-dev.conf\nADD newscoop /var/www/newscoop\n\n# Enable production env\nRUN a2ensite newscoop\n\n# add management scripts\nADD docker /usr/share/newscoop\n\n# update permissions\n# 1000 needs to be a dynamic var for the userid of the files\n# on the host\nRUN usermod -u 1000 www-data\n\n# turn on mod_rewrite, update php config\n#RUN a2ensite newscoop.conf\nRUN a2enmod rewrite php5\nRUN /bin/echo 'date.timezone = \"Europe/Berlin\"' >> /etc/php5/apache2/php.ini\n\nENTRYPOINT [\"/usr/share/newscoop/docker-entrypoint.sh\"]\nCMD [\"/usr/sbin/apachectl\", \"-D\", \"FOREGROUND\"]\n"
  },
  {
    "path": "LICENSE",
    "content": "GNU GENERAL PUBLIC LICENSE\n                       Version 3, 29 June 2007\n\n Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>\n Everyone is permitted to copy and distribute verbatim copies\n of this license document, but changing it is not allowed.\n\n                            Preamble\n\n  The GNU General Public License is a free, copyleft license for\nsoftware and other kinds of works.\n\n  The licenses for most software and other practical works are designed\nto take away your freedom to share and change the works.  By contrast,\nthe GNU General Public License is intended to guarantee your freedom to\nshare and change all versions of a program--to make sure it remains free\nsoftware for all its users.  We, the Free Software Foundation, use the\nGNU General Public License for most of our software; it applies also to\nany other work released this way by its authors.  You can apply it to\nyour programs, too.\n\n  When we speak of free software, we are referring to freedom, not\nprice.  Our General Public Licenses are designed to make sure that you\nhave the freedom to distribute copies of free software (and charge for\nthem if you wish), that you receive source code or can get it if you\nwant it, that you can change the software or use pieces of it in new\nfree programs, and that you know you can do these things.\n\n  To protect your rights, we need to prevent others from denying you\nthese rights or asking you to surrender the rights.  Therefore, you have\ncertain responsibilities if you distribute copies of the software, or if\nyou modify it: responsibilities to respect the freedom of others.\n\n  For example, if you distribute copies of such a program, whether\ngratis or for a fee, you must pass on to the recipients the same\nfreedoms that you received.  You must make sure that they, too, receive\nor can get the source code.  And you must show them these terms so they\nknow their rights.\n\n  Developers that use the GNU GPL protect your rights with two steps:\n(1) assert copyright on the software, and (2) offer you this License\ngiving you legal permission to copy, distribute and/or modify it.\n\n  For the developers' and authors' protection, the GPL clearly explains\nthat there is no warranty for this free software.  For both users' and\nauthors' sake, the GPL requires that modified versions be marked as\nchanged, so that their problems will not be attributed erroneously to\nauthors of previous versions.\n\n  Some devices are designed to deny users access to install or run\nmodified versions of the software inside them, although the manufacturer\ncan do so.  This is fundamentally incompatible with the aim of\nprotecting users' freedom to change the software.  The systematic\npattern of such abuse occurs in the area of products for individuals to\nuse, which is precisely where it is most unacceptable.  Therefore, we\nhave designed this version of the GPL to prohibit the practice for those\nproducts.  If such problems arise substantially in other domains, we\nstand ready to extend this provision to those domains in future versions\nof the GPL, as needed to protect the freedom of users.\n\n  Finally, every program is threatened constantly by software patents.\nStates should not allow patents to restrict development and use of\nsoftware on general-purpose computers, but in those that do, we wish to\navoid the special danger that patents applied to a free program could\nmake it effectively proprietary.  To prevent this, the GPL assures that\npatents cannot be used to render the program non-free.\n\n  The precise terms and conditions for copying, distribution and\nmodification follow.\n\n                       TERMS AND CONDITIONS\n\n  0. Definitions.\n\n  \"This License\" refers to version 3 of the GNU General Public License.\n\n  \"Copyright\" also means copyright-like laws that apply to other kinds of\nworks, such as semiconductor masks.\n\n  \"The Program\" refers to any copyrightable work licensed under this\nLicense.  Each licensee is addressed as \"you\".  \"Licensees\" and\n\"recipients\" may be individuals or organizations.\n\n  To \"modify\" a work means to copy from or adapt all or part of the work\nin a fashion requiring copyright permission, other than the making of an\nexact copy.  The resulting work is called a \"modified version\" of the\nearlier work or a work \"based on\" the earlier work.\n\n  A \"covered work\" means either the unmodified Program or a work based\non the Program.\n\n  To \"propagate\" a work means to do anything with it that, without\npermission, would make you directly or secondarily liable for\ninfringement under applicable copyright law, except executing it on a\ncomputer or modifying a private copy.  Propagation includes copying,\ndistribution (with or without modification), making available to the\npublic, and in some countries other activities as well.\n\n  To \"convey\" a work means any kind of propagation that enables other\nparties to make or receive copies.  Mere interaction with a user through\na computer network, with no transfer of a copy, is not conveying.\n\n  An interactive user interface displays \"Appropriate Legal Notices\"\nto the extent that it includes a convenient and prominently visible\nfeature that (1) displays an appropriate copyright notice, and (2)\ntells the user that there is no warranty for the work (except to the\nextent that warranties are provided), that licensees may convey the\nwork under this License, and how to view a copy of this License.  If\nthe interface presents a list of user commands or options, such as a\nmenu, a prominent item in the list meets this criterion.\n\n  1. Source Code.\n\n  The \"source code\" for a work means the preferred form of the work\nfor making modifications to it.  \"Object code\" means any non-source\nform of a work.\n\n  A \"Standard Interface\" means an interface that either is an official\nstandard defined by a recognized standards body, or, in the case of\ninterfaces specified for a particular programming language, one that\nis widely used among developers working in that language.\n\n  The \"System Libraries\" of an executable work include anything, other\nthan the work as a whole, that (a) is included in the normal form of\npackaging a Major Component, but which is not part of that Major\nComponent, and (b) serves only to enable use of the work with that\nMajor Component, or to implement a Standard Interface for which an\nimplementation is available to the public in source code form.  A\n\"Major Component\", in this context, means a major essential component\n(kernel, window system, and so on) of the specific operating system\n(if any) on which the executable work runs, or a compiler used to\nproduce the work, or an object code interpreter used to run it.\n\n  The \"Corresponding Source\" for a work in object code form means all\nthe source code needed to generate, install, and (for an executable\nwork) run the object code and to modify the work, including scripts to\ncontrol those activities.  However, it does not include the work's\nSystem Libraries, or general-purpose tools or generally available free\nprograms which are used unmodified in performing those activities but\nwhich are not part of the work.  For example, Corresponding Source\nincludes interface definition files associated with source files for\nthe work, and the source code for shared libraries and dynamically\nlinked subprograms that the work is specifically designed to require,\nsuch as by intimate data communication or control flow between those\nsubprograms and other parts of the work.\n\n  The Corresponding Source need not include anything that users\ncan regenerate automatically from other parts of the Corresponding\nSource.\n\n  The Corresponding Source for a work in source code form is that\nsame work.\n\n  2. Basic Permissions.\n\n  All rights granted under this License are granted for the term of\ncopyright on the Program, and are irrevocable provided the stated\nconditions are met.  This License explicitly affirms your unlimited\npermission to run the unmodified Program.  The output from running a\ncovered work is covered by this License only if the output, given its\ncontent, constitutes a covered work.  This License acknowledges your\nrights of fair use or other equivalent, as provided by copyright law.\n\n  You may make, run and propagate covered works that you do not\nconvey, without conditions so long as your license otherwise remains\nin force.  You may convey covered works to others for the sole purpose\nof having them make modifications exclusively for you, or provide you\nwith facilities for running those works, provided that you comply with\nthe terms of this License in conveying all material for which you do\nnot control copyright.  Those thus making or running the covered works\nfor you must do so exclusively on your behalf, under your direction\nand control, on terms that prohibit them from making any copies of\nyour copyrighted material outside their relationship with you.\n\n  Conveying under any other circumstances is permitted solely under\nthe conditions stated below.  Sublicensing is not allowed; section 10\nmakes it unnecessary.\n\n  3. Protecting Users' Legal Rights From Anti-Circumvention Law.\n\n  No covered work shall be deemed part of an effective technological\nmeasure under any applicable law fulfilling obligations under article\n11 of the WIPO copyright treaty adopted on 20 December 1996, or\nsimilar laws prohibiting or restricting circumvention of such\nmeasures.\n\n  When you convey a covered work, you waive any legal power to forbid\ncircumvention of technological measures to the extent such circumvention\nis effected by exercising rights under this License with respect to\nthe covered work, and you disclaim any intention to limit operation or\nmodification of the work as a means of enforcing, against the work's\nusers, your or third parties' legal rights to forbid circumvention of\ntechnological measures.\n\n  4. Conveying Verbatim Copies.\n\n  You may convey verbatim copies of the Program's source code as you\nreceive it, in any medium, provided that you conspicuously and\nappropriately publish on each copy an appropriate copyright notice;\nkeep intact all notices stating that this License and any\nnon-permissive terms added in accord with section 7 apply to the code;\nkeep intact all notices of the absence of any warranty; and give all\nrecipients a copy of this License along with the Program.\n\n  You may charge any price or no price for each copy that you convey,\nand you may offer support or warranty protection for a fee.\n\n  5. Conveying Modified Source Versions.\n\n  You may convey a work based on the Program, or the modifications to\nproduce it from the Program, in the form of source code under the\nterms of section 4, provided that you also meet all of these conditions:\n\n    a) The work must carry prominent notices stating that you modified\n    it, and giving a relevant date.\n\n    b) The work must carry prominent notices stating that it is\n    released under this License and any conditions added under section\n    7.  This requirement modifies the requirement in section 4 to\n    \"keep intact all notices\".\n\n    c) You must license the entire work, as a whole, under this\n    License to anyone who comes into possession of a copy.  This\n    License will therefore apply, along with any applicable section 7\n    additional terms, to the whole of the work, and all its parts,\n    regardless of how they are packaged.  This License gives no\n    permission to license the work in any other way, but it does not\n    invalidate such permission if you have separately received it.\n\n    d) If the work has interactive user interfaces, each must display\n    Appropriate Legal Notices; however, if the Program has interactive\n    interfaces that do not display Appropriate Legal Notices, your\n    work need not make them do so.\n\n  A compilation of a covered work with other separate and independent\nworks, which are not by their nature extensions of the covered work,\nand which are not combined with it such as to form a larger program,\nin or on a volume of a storage or distribution medium, is called an\n\"aggregate\" if the compilation and its resulting copyright are not\nused to limit the access or legal rights of the compilation's users\nbeyond what the individual works permit.  Inclusion of a covered work\nin an aggregate does not cause this License to apply to the other\nparts of the aggregate.\n\n  6. Conveying Non-Source Forms.\n\n  You may convey a covered work in object code form under the terms\nof sections 4 and 5, provided that you also convey the\nmachine-readable Corresponding Source under the terms of this License,\nin one of these ways:\n\n    a) Convey the object code in, or embodied in, a physical product\n    (including a physical distribution medium), accompanied by the\n    Corresponding Source fixed on a durable physical medium\n    customarily used for software interchange.\n\n    b) Convey the object code in, or embodied in, a physical product\n    (including a physical distribution medium), accompanied by a\n    written offer, valid for at least three years and valid for as\n    long as you offer spare parts or customer support for that product\n    model, to give anyone who possesses the object code either (1) a\n    copy of the Corresponding Source for all the software in the\n    product that is covered by this License, on a durable physical\n    medium customarily used for software interchange, for a price no\n    more than your reasonable cost of physically performing this\n    conveying of source, or (2) access to copy the\n    Corresponding Source from a network server at no charge.\n\n    c) Convey individual copies of the object code with a copy of the\n    written offer to provide the Corresponding Source.  This\n    alternative is allowed only occasionally and noncommercially, and\n    only if you received the object code with such an offer, in accord\n    with subsection 6b.\n\n    d) Convey the object code by offering access from a designated\n    place (gratis or for a charge), and offer equivalent access to the\n    Corresponding Source in the same way through the same place at no\n    further charge.  You need not require recipients to copy the\n    Corresponding Source along with the object code.  If the place to\n    copy the object code is a network server, the Corresponding Source\n    may be on a different server (operated by you or a third party)\n    that supports equivalent copying facilities, provided you maintain\n    clear directions next to the object code saying where to find the\n    Corresponding Source.  Regardless of what server hosts the\n    Corresponding Source, you remain obligated to ensure that it is\n    available for as long as needed to satisfy these requirements.\n\n    e) Convey the object code using peer-to-peer transmission, provided\n    you inform other peers where the object code and Corresponding\n    Source of the work are being offered to the general public at no\n    charge under subsection 6d.\n\n  A separable portion of the object code, whose source code is excluded\nfrom the Corresponding Source as a System Library, need not be\nincluded in conveying the object code work.\n\n  A \"User Product\" is either (1) a \"consumer product\", which means any\ntangible personal property which is normally used for personal, family,\nor household purposes, or (2) anything designed or sold for incorporation\ninto a dwelling.  In determining whether a product is a consumer product,\ndoubtful cases shall be resolved in favor of coverage.  For a particular\nproduct received by a particular user, \"normally used\" refers to a\ntypical or common use of that class of product, regardless of the status\nof the particular user or of the way in which the particular user\nactually uses, or expects or is expected to use, the product.  A product\nis a consumer product regardless of whether the product has substantial\ncommercial, industrial or non-consumer uses, unless such uses represent\nthe only significant mode of use of the product.\n\n  \"Installation Information\" for a User Product means any methods,\nprocedures, authorization keys, or other information required to install\nand execute modified versions of a covered work in that User Product from\na modified version of its Corresponding Source.  The information must\nsuffice to ensure that the continued functioning of the modified object\ncode is in no case prevented or interfered with solely because\nmodification has been made.\n\n  If you convey an object code work under this section in, or with, or\nspecifically for use in, a User Product, and the conveying occurs as\npart of a transaction in which the right of possession and use of the\nUser Product is transferred to the recipient in perpetuity or for a\nfixed term (regardless of how the transaction is characterized), the\nCorresponding Source conveyed under this section must be accompanied\nby the Installation Information.  But this requirement does not apply\nif neither you nor any third party retains the ability to install\nmodified object code on the User Product (for example, the work has\nbeen installed in ROM).\n\n  The requirement to provide Installation Information does not include a\nrequirement to continue to provide support service, warranty, or updates\nfor a work that has been modified or installed by the recipient, or for\nthe User Product in which it has been modified or installed.  Access to a\nnetwork may be denied when the modification itself materially and\nadversely affects the operation of the network or violates the rules and\nprotocols for communication across the network.\n\n  Corresponding Source conveyed, and Installation Information provided,\nin accord with this section must be in a format that is publicly\ndocumented (and with an implementation available to the public in\nsource code form), and must require no special password or key for\nunpacking, reading or copying.\n\n  7. Additional Terms.\n\n  \"Additional permissions\" are terms that supplement the terms of this\nLicense by making exceptions from one or more of its conditions.\nAdditional permissions that are applicable to the entire Program shall\nbe treated as though they were included in this License, to the extent\nthat they are valid under applicable law.  If additional permissions\napply only to part of the Program, that part may be used separately\nunder those permissions, but the entire Program remains governed by\nthis License without regard to the additional permissions.\n\n  When you convey a copy of a covered work, you may at your option\nremove any additional permissions from that copy, or from any part of\nit.  (Additional permissions may be written to require their own\nremoval in certain cases when you modify the work.)  You may place\nadditional permissions on material, added by you to a covered work,\nfor which you have or can give appropriate copyright permission.\n\n  Notwithstanding any other provision of this License, for material you\nadd to a covered work, you may (if authorized by the copyright holders of\nthat material) supplement the terms of this License with terms:\n\n    a) Disclaiming warranty or limiting liability differently from the\n    terms of sections 15 and 16 of this License; or\n\n    b) Requiring preservation of specified reasonable legal notices or\n    author attributions in that material or in the Appropriate Legal\n    Notices displayed by works containing it; or\n\n    c) Prohibiting misrepresentation of the origin of that material, or\n    requiring that modified versions of such material be marked in\n    reasonable ways as different from the original version; or\n\n    d) Limiting the use for publicity purposes of names of licensors or\n    authors of the material; or\n\n    e) Declining to grant rights under trademark law for use of some\n    trade names, trademarks, or service marks; or\n\n    f) Requiring indemnification of licensors and authors of that\n    material by anyone who conveys the material (or modified versions of\n    it) with contractual assumptions of liability to the recipient, for\n    any liability that these contractual assumptions directly impose on\n    those licensors and authors.\n\n  All other non-permissive additional terms are considered \"further\nrestrictions\" within the meaning of section 10.  If the Program as you\nreceived it, or any part of it, contains a notice stating that it is\ngoverned by this License along with a term that is a further\nrestriction, you may remove that term.  If a license document contains\na further restriction but permits relicensing or conveying under this\nLicense, you may add to a covered work material governed by the terms\nof that license document, provided that the further restriction does\nnot survive such relicensing or conveying.\n\n  If you add terms to a covered work in accord with this section, you\nmust place, in the relevant source files, a statement of the\nadditional terms that apply to those files, or a notice indicating\nwhere to find the applicable terms.\n\n  Additional terms, permissive or non-permissive, may be stated in the\nform of a separately written license, or stated as exceptions;\nthe above requirements apply either way.\n\n  8. Termination.\n\n  You may not propagate or modify a covered work except as expressly\nprovided under this License.  Any attempt otherwise to propagate or\nmodify it is void, and will automatically terminate your rights under\nthis License (including any patent licenses granted under the third\nparagraph of section 11).\n\n  However, if you cease all violation of this License, then your\nlicense from a particular copyright holder is reinstated (a)\nprovisionally, unless and until the copyright holder explicitly and\nfinally terminates your license, and (b) permanently, if the copyright\nholder fails to notify you of the violation by some reasonable means\nprior to 60 days after the cessation.\n\n  Moreover, your license from a particular copyright holder is\nreinstated permanently if the copyright holder notifies you of the\nviolation by some reasonable means, this is the first time you have\nreceived notice of violation of this License (for any work) from that\ncopyright holder, and you cure the violation prior to 30 days after\nyour receipt of the notice.\n\n  Termination of your rights under this section does not terminate the\nlicenses of parties who have received copies or rights from you under\nthis License.  If your rights have been terminated and not permanently\nreinstated, you do not qualify to receive new licenses for the same\nmaterial under section 10.\n\n  9. Acceptance Not Required for Having Copies.\n\n  You are not required to accept this License in order to receive or\nrun a copy of the Program.  Ancillary propagation of a covered work\noccurring solely as a consequence of using peer-to-peer transmission\nto receive a copy likewise does not require acceptance.  However,\nnothing other than this License grants you permission to propagate or\nmodify any covered work.  These actions infringe copyright if you do\nnot accept this License.  Therefore, by modifying or propagating a\ncovered work, you indicate your acceptance of this License to do so.\n\n  10. Automatic Licensing of Downstream Recipients.\n\n  Each time you convey a covered work, the recipient automatically\nreceives a license from the original licensors, to run, modify and\npropagate that work, subject to this License.  You are not responsible\nfor enforcing compliance by third parties with this License.\n\n  An \"entity transaction\" is a transaction transferring control of an\norganization, or substantially all assets of one, or subdividing an\norganization, or merging organizations.  If propagation of a covered\nwork results from an entity transaction, each party to that\ntransaction who receives a copy of the work also receives whatever\nlicenses to the work the party's predecessor in interest had or could\ngive under the previous paragraph, plus a right to possession of the\nCorresponding Source of the work from the predecessor in interest, if\nthe predecessor has it or can get it with reasonable efforts.\n\n  You may not impose any further restrictions on the exercise of the\nrights granted or affirmed under this License.  For example, you may\nnot impose a license fee, royalty, or other charge for exercise of\nrights granted under this License, and you may not initiate litigation\n(including a cross-claim or counterclaim in a lawsuit) alleging that\nany patent claim is infringed by making, using, selling, offering for\nsale, or importing the Program or any portion of it.\n\n  11. Patents.\n\n  A \"contributor\" is a copyright holder who authorizes use under this\nLicense of the Program or a work on which the Program is based.  The\nwork thus licensed is called the contributor's \"contributor version\".\n\n  A contributor's \"essential patent claims\" are all patent claims\nowned or controlled by the contributor, whether already acquired or\nhereafter acquired, that would be infringed by some manner, permitted\nby this License, of making, using, or selling its contributor version,\nbut do not include claims that would be infringed only as a\nconsequence of further modification of the contributor version.  For\npurposes of this definition, \"control\" includes the right to grant\npatent sublicenses in a manner consistent with the requirements of\nthis License.\n\n  Each contributor grants you a non-exclusive, worldwide, royalty-free\npatent license under the contributor's essential patent claims, to\nmake, use, sell, offer for sale, import and otherwise run, modify and\npropagate the contents of its contributor version.\n\n  In the following three paragraphs, a \"patent license\" is any express\nagreement or commitment, however denominated, not to enforce a patent\n(such as an express permission to practice a patent or covenant not to\nsue for patent infringement).  To \"grant\" such a patent license to a\nparty means to make such an agreement or commitment not to enforce a\npatent against the party.\n\n  If you convey a covered work, knowingly relying on a patent license,\nand the Corresponding Source of the work is not available for anyone\nto copy, free of charge and under the terms of this License, through a\npublicly available network server or other readily accessible means,\nthen you must either (1) cause the Corresponding Source to be so\navailable, or (2) arrange to deprive yourself of the benefit of the\npatent license for this particular work, or (3) arrange, in a manner\nconsistent with the requirements of this License, to extend the patent\nlicense to downstream recipients.  \"Knowingly relying\" means you have\nactual knowledge that, but for the patent license, your conveying the\ncovered work in a country, or your recipient's use of the covered work\nin a country, would infringe one or more identifiable patents in that\ncountry that you have reason to believe are valid.\n\n  If, pursuant to or in connection with a single transaction or\narrangement, you convey, or propagate by procuring conveyance of, a\ncovered work, and grant a patent license to some of the parties\nreceiving the covered work authorizing them to use, propagate, modify\nor convey a specific copy of the covered work, then the patent license\nyou grant is automatically extended to all recipients of the covered\nwork and works based on it.\n\n  A patent license is \"discriminatory\" if it does not include within\nthe scope of its coverage, prohibits the exercise of, or is\nconditioned on the non-exercise of one or more of the rights that are\nspecifically granted under this License.  You may not convey a covered\nwork if you are a party to an arrangement with a third party that is\nin the business of distributing software, under which you make payment\nto the third party based on the extent of your activity of conveying\nthe work, and under which the third party grants, to any of the\nparties who would receive the covered work from you, a discriminatory\npatent license (a) in connection with copies of the covered work\nconveyed by you (or copies made from those copies), or (b) primarily\nfor and in connection with specific products or compilations that\ncontain the covered work, unless you entered into that arrangement,\nor that patent license was granted, prior to 28 March 2007.\n\n  Nothing in this License shall be construed as excluding or limiting\nany implied license or other defenses to infringement that may\notherwise be available to you under applicable patent law.\n\n  12. No Surrender of Others' Freedom.\n\n  If conditions are imposed on you (whether by court order, agreement or\notherwise) that contradict the conditions of this License, they do not\nexcuse you from the conditions of this License.  If you cannot convey a\ncovered work so as to satisfy simultaneously your obligations under this\nLicense and any other pertinent obligations, then as a consequence you may\nnot convey it at all.  For example, if you agree to terms that obligate you\nto collect a royalty for further conveying from those to whom you convey\nthe Program, the only way you could satisfy both those terms and this\nLicense would be to refrain entirely from conveying the Program.\n\n  13. Use with the GNU Affero General Public License.\n\n  Notwithstanding any other provision of this License, you have\npermission to link or combine any covered work with a work licensed\nunder version 3 of the GNU Affero General Public License into a single\ncombined work, and to convey the resulting work.  The terms of this\nLicense will continue to apply to the part which is the covered work,\nbut the special requirements of the GNU Affero General Public License,\nsection 13, concerning interaction through a network will apply to the\ncombination as such.\n\n  14. Revised Versions of this License.\n\n  The Free Software Foundation may publish revised and/or new versions of\nthe GNU General Public License from time to time.  Such new versions will\nbe similar in spirit to the present version, but may differ in detail to\naddress new problems or concerns.\n\n  Each version is given a distinguishing version number.  If the\nProgram specifies that a certain numbered version of the GNU General\nPublic License \"or any later version\" applies to it, you have the\noption of following the terms and conditions either of that numbered\nversion or of any later version published by the Free Software\nFoundation.  If the Program does not specify a version number of the\nGNU General Public License, you may choose any version ever published\nby the Free Software Foundation.\n\n  If the Program specifies that a proxy can decide which future\nversions of the GNU General Public License can be used, that proxy's\npublic statement of acceptance of a version permanently authorizes you\nto choose that version for the Program.\n\n  Later license versions may give you additional or different\npermissions.  However, no additional obligations are imposed on any\nauthor or copyright holder as a result of your choosing to follow a\nlater version.\n\n  15. Disclaimer of Warranty.\n\n  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY\nAPPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT\nHOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY\nOF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,\nTHE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\nPURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM\nIS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF\nALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n\n  16. Limitation of Liability.\n\n  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\nWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS\nTHE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY\nGENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE\nUSE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF\nDATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD\nPARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),\nEVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF\nSUCH DAMAGES.\n\n  17. Interpretation of Sections 15 and 16.\n\n  If the disclaimer of warranty and limitation of liability provided\nabove cannot be given local legal effect according to their terms,\nreviewing courts shall apply local law that most closely approximates\nan absolute waiver of all civil liability in connection with the\nProgram, unless a warranty or assumption of liability accompanies a\ncopy of the Program in return for a fee.\n\n                     END OF TERMS AND CONDITIONS\n\n            How to Apply These Terms to Your New Programs\n\n  If you develop a new program, and you want it to be of the greatest\npossible use to the public, the best way to achieve this is to make it\nfree software which everyone can redistribute and change under these terms.\n\n  To do so, attach the following notices to the program.  It is safest\nto attach them to the start of each source file to most effectively\nstate the exclusion of warranty; and each file should have at least\nthe \"copyright\" line and a pointer to where the full notice is found.\n\n    {one line to give the program's name and a brief idea of what it does.}\n    Copyright (C) {year}  {name of author}\n\n    This program is free software: you can redistribute it and/or modify\n    it under the terms of the GNU General Public License as published by\n    the Free Software Foundation, either version 3 of the License, or\n    (at your option) any later version.\n\n    This program is distributed in the hope that it will be useful,\n    but WITHOUT ANY WARRANTY; without even the implied warranty of\n    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n    GNU General Public License for more details.\n\n    You should have received a copy of the GNU General Public License\n    along with this program.  If not, see <http://www.gnu.org/licenses/>.\n\nAlso add information on how to contact you by electronic and paper mail.\n\n  If the program does terminal interaction, make it output a short\nnotice like this when it starts in an interactive mode:\n\n    {project}  Copyright (C) {year}  {fullname}\n    This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.\n    This is free software, and you are welcome to redistribute it\n    under certain conditions; type `show c' for details.\n\nThe hypothetical commands `show w' and `show c' should show the appropriate\nparts of the General Public License.  Of course, your program's commands\nmight be different; for a GUI interface, you would use an \"about box\".\n\n  You should also get your employer (if you work as a programmer) or school,\nif any, to sign a \"copyright disclaimer\" for the program, if necessary.\nFor more information on this, and how to apply and follow the GNU GPL, see\n<http://www.gnu.org/licenses/>.\n\n  The GNU General Public License does not permit incorporating your program\ninto proprietary programs.  If your program is a subroutine library, you\nmay consider it more useful to permit linking proprietary applications with\nthe library.  If this is what you want to do, use the GNU Lesser General\nPublic License instead of this License.  But first, please read\n<http://www.gnu.org/philosophy/why-not-lgpl.html>.\n"
  },
  {
    "path": "README.md",
    "content": "<a href=\"http://www.sourcefabric.org/en/newscoop/\">![Logo](newscoop/admin-style/images/newscoop_logo_big.png)\n===\n[![Build Status](https://travis-ci.org/sourcefabric/Newscoop.svg?branch=master)](https://travis-ci.org/sourcefabric/Newscoop)\n\n[Newscoop][1] is the open content management system for professional journalists.\n\nFeatures for the modern newsroom include multiple author management, issue-and-section based publishing, geolocation and multilingual content management. The enterprise-standard journalist’s dashboard and a templating engine supporting anything from HTML5 to mobile complete this fast production and publishing system. Read more about Newscoop history on his [wikipedia page][5].\n\nQuick links to our resources are:\n\n* Manuals for Newscoop [http://manuals.sourcefabric.org][6]\n* Forums and mailing lists: [http://forum.sourcefabric.org][7]\n* Bug Tracking: [http://dev.sourcefabric.org/browse/CS][8]\n* Public source code hosting: [http://github.com/sourcefabric/Newscoop][9]\n* Download link: [https://github.com/sourcefabric/Newscoop/releases/latest][10]\n* Developer's wiki: [https://wiki.sourcefabric.org/display/CS/][11]\n* Developer's blog: [https://dev-blog.sourcefabric.org][12]\n* Plugins Development’s documentation: [http://docs.sourcefabric.org/projects/newscoop-plugins/en/latest/][15]\n* RESTful API documentation: [http://docs.sourcefabric.org/projects/newscoop-restful-api/en/master/][16]\n* Developer's Cookbooks: [http://docs.sourcefabric.org/projects/newscoop-cookbook/en/latest/][17]\n\n## Installation\n\n**Using console command**\n\n\tphp application/console newscoop:install --fix --database_name newscoop --database_user root --database_password password\n\nDefault Admin Panel account is `admin` with password `password`.\n\nFor more details run:\n\n\tphp application/console newscoop:install --help\n\n**Using docker**\n\nMake sure docker and docker compose are installed (boot2docker or docker machine on OSX as well). Add the line ```127.0.0.1 newscoop.docker``` to your ```/etc/hosts``` file. OSX users should use the ip of their virtualbox (e.g. ```boot2docker ip```).\n\nFor running Newscoop in production mode:\n\n```bash\ndocker-compose build\ndocker-compose up\n```\n\nFor running Newscoop in development mode:\n\n```bash\ndocker-compose -f docker-compose-dev.yml build\ndocker-compose -f docker-compose-dev.yml up\n```\n\n## Requirements\n\n- PHP version must be at least 5.4 on Debian and CentOS to run Newscoop properly. See [PHP bug][14].\n\n- MySQL can't work in \"strict mode\". Newscoop will currently break in many places when \"strict mode\" is enabled.\n\n- If you use `E_DEPRECATED` error_reporting level in PHP 5.6, you can get the behaviour described in this [PHP bug][18] report.\n  `always_populate_raw_post_data` must be set to `-1` in your `php.ini` file.\n\n**Compatibility**\n\n| Browsers | Tablets |  Smartphones |\n| -------- | ------- | ----------- |\n| Safari 7.1+| not supported |  not supported |\n| Google Chrome 31+ |  not supported | not supported |\n| Internet Explorer 9+ | not supported | not supported |\n| Firefox 35+ |  not supported |  not supported |\n| Opera 27+ | not supported |  not supported |\n\n## REST API documentation\n\nREST API documentation will be available under the link: `http://www.domain.com/documentation/rest-api/` after Newscoop installation is done.\n\n## How to contribute\n\nOnly 4 steps:\n\n* Fork sourcefabric/Newscoop repository - [how to fork][2].\n* Clone your fork\n* Create new local feature branch - [how to create branch][3]\n* Create pull request with your feature/bugfix - [how to create pull request][4]\n\n## License\n\nNewscoop is licensed under the GPL3 license.\n\n[1]: http://www.sourcefabric.org/en/newscoop/\n[2]: https://help.github.com/articles/fork-a-repo\n[3]: http://learn.github.com/p/branching.html\n[4]: https://help.github.com/articles/creating-a-pull-request\n[5]: http://en.wikipedia.org/wiki/Newscoop\n[6]: http://manuals.sourcefabric.org\n[7]: http://forum.sourcefabric.org\n[8]: http://dev.sourcefabric.org/browse/CS\n[9]: http://github.com/sourcefabric/Newscoop\n[10]: https://github.com/sourcefabric/Newscoop/releases/latest\n[11]: https://wiki.sourcefabric.org/display/CS/\n[12]: https://dev-blog.sourcefabric.org/en/blogs/?filter=1\n[13]: https://github.com/sourcefabric/Newscoop/blob/master/newscoop/docs/INSTALL-ubuntu.md\n[14]: https://bugs.php.net/bug.php?id=54709\n[15]: http://docs.sourcefabric.org/projects/newscoop-plugins/en/latest/\n[16]: http://docs.sourcefabric.org/projects/newscoop-restful-api/en/master/\n[17]: http://docs.sourcefabric.org/projects/newscoop-cookbook/en/latest/\n[18]: https://bugs.php.net/bug.php?id=66763\n"
  },
  {
    "path": "behat.yml",
    "content": "default:\n    paths:\n        features:  %behat.paths.base%/features\n        bootstrap: %behat.paths.features%/bootstrap\n    filters:\n    context:\n        parameters:\n            base_url: http://newscoop.dev/api\n            oauth_url: http://newscoop.dev/oauth\n            publication: newscoop.dev\n            api_prefix: api\n            paths:\n                base:      %behat.paths.base%\n                bootstrap: features/bootstrap\n                steps:     features/steps\n                hooks:     features/support\n            subContexts:\n            associative: true"
  },
  {
    "path": "docker/docker-entrypoint.sh",
    "content": "#!/bin/bash\n\nif [ \"$1\" = 'newscoop' ]; then\n    # install composer and install PHP dependencies\n    if [ ! -f /var/www/newscoop/composer.phar ]; then\n        cd /var/www/newscoop && curl -sS https://getcomposer.org/installer | php\n    fi\n    if [ \"$APPLICATION_ENVIRONMENT\" = \"dev\" ]; then\n        # Disable production, enable dev\n        a2dissite newscoop\n        a2ensite newscoop-dev\n        cd /var/www/newscoop && /usr/bin/php composer.phar install\n    else\n        cd /var/www/newscoop && /usr/bin/php composer.phar install --no-dev\n    fi\n\n    # check if we should install\n    if [ -f /var/www/newscoop/conf/installation.php ]; then\n        /usr/share/newscoop/import-newscoop.sh\n    fi\n\n    # restore default newscoop crontab\n    if [ \"$(sudo -u www-data crontab -l)\" = \"\" ]; then\n        touch /var/spool/cron/crontabs/www-data\n        echo \"* * * * * php /var/www/newscoop/application/console scheduler:run\" | tee -a /var/spool/cron/crontabs/www-data\n        chown www-data:crontab /var/spool/cron/crontabs/www-data\n    fi\n\n    # catch signlas\n    trap \"echo 'caught signal'\" HUP INT QUIT KILL TERM\n\n    cron start\n\n    #/usr/sbin/apachectl -D FOREGROUND\n    /usr/sbin/apachectl start\n\n    if [ \"$APPLICATION_ENVIRONMENT\" = \"dev\" ]; then\n        tail -F /var/www/newscoop/log/dev.log\n    else\n        tail -F /var/www/newscoop/log/prod.log\n    fi\n\n    echo \"[hit enter key to exit] or run docker stop <container>'\"\n    read\n\n    echo \"stopping apache\"\n    /usr/sbin/apachectl stop\n\n    echo \"stopping cron\"\n    stop cron\n\n    echo \"exited $0\"\nfi\n\nexec \"$@\"\n"
  },
  {
    "path": "docker/docker-newscoop.yml",
    "content": "newscoop:\n    build: ../\n    command: newscoop\n    ports:\n        - \"80:80\"\n    volumes:\n        - ../newscoop:/var/www/newscoop\n\nmysql:\n    image: \"mysql:5\"\n    environment:\n        MYSQL_ROOT_PASSWORD: root\n        MYSQL_DATABASE: newscoop\n"
  },
  {
    "path": "docker/import-newscoop.sh",
    "content": "#!/bin/sh\n\nSHARE_DIR=\"/usr/share/newscoop\"\nDATA_DIR=\"$SHARE_DIR/data\"\nWWW_DIR=\"/var/www/newscoop\"\nPLUGINS=false\nCUSTOM_DB=false\n\nif [ ! \"$(ls -A $DATA_DIR)\" ]; then\n    echo \"nothing to import\"\n    exit 0\nfi\n\n# import database\nif [ -s $DATA_DIR/database.sql ] ; then\n    DUMP=\"$DATA_DIR/database.sql\"\n    CUSTOM_DB=true\nelse\n    DUMP=\"$WWW_DIR/install/Resources/sql/campsite_core.sql\"\nfi\n\n# Create database and insert custom or default data\nmysql -h mysql -u root -proot -e 'CREATE DATABASE newscoop;'\nmysql -h mysql -u root -proot newscoop < $DUMP;\n\n# Update root password to: SoFab\nmysql -h mysql -u root -proot newscoop -e 'UPDATE liveuser_users SET Password = \"sha1$nDB8qhSKXSKD$7cd8fb537cc3f60708dbcc8c8925f3a0600fa444\" WHERE id = 1 and UName = \"admin\"';\n\n# copy system themes to user share\nif [[ \"$(ls -A $DATA_DIR/themes)\" ]] ; then\n    mv $WWW_DIR/themes/* $DATA_DIR/themes/\n    # Remove theme directory so we can create symlink\n    rm -rf $WWW_DIR/themes/\n    # make theme symlink\n    ln -sf $DATA_DIR/themes $WWW_DIR/themes\n    chown -hR www-data:www-data $DATA_DIR/themes\nfi\n\n# copy plugins\nif [[ \"$(ls -A $DATA_DIR/plugins)\" ]] ; then\n    cp -rf $DATA_DIR/plugins/* $WWW_DIR/plugins/\n    PLUGINS=true\nfi\n\n# copy custom parameters\nif [[ -s $DATA_DIR/custom_parameters.yml ]] ; then\n    cp $DATA_DIR/custom_parameters.yml $WWW_DIR/application/configs/parameters/custom_parameters.yml\nfi\n\n# Files are required for installed newscoop\ncp $DATA_DIR/conf/database_conf.php.dist $WWW_DIR/conf/database_conf.php\ncp $DATA_DIR/conf/configuration.php.dist $WWW_DIR/conf/configuration.php\n\n# Set up htaccess\ncp $WWW_DIR/htaccess.dist $WWW_DIR/.htaccess\n\n# Move to directory else composer will complain\ncd $WWW_DIR\nphp $WWW_DIR/composer.phar dump-autoload --optimize\n\nif [[ $PLUGINS && $CUSTOM_DB ]] ; then\n    php $WWW_DIR/application/console plugins:upgrade\n    php $WWW_DIR/composer.phar update\n    php $WWW_DIR/composer.phar dump-autoload --optimize\n    php $WWW_DIR/application/console assets:install --symlink public\nfi\n\n# Clear the cache\nrm -rf $WWW_DIR/cache/*\n\n# Run the upgrade script\nphp $WWW_DIR/upgrade.php\n\n# Remove files which indicate not yet installed\nrm $WWW_DIR/conf/upgrading.php\nrm $WWW_DIR/conf/installation.php\n\n"
  },
  {
    "path": "docker/newscoop-dev.conf",
    "content": "<VirtualHost *:80>\n    DocumentRoot /var/www/newscoop\n    ServerName newscoop.docker\n    ServerAlias localhost boot2docker *.boot2docker newscoop.docker *.newscoop.docker newscoop.dckr *.newscoop.dckr\n    DirectoryIndex index.php index.html\n    <Directory /var/www/newscoop>\n        Options -Indexes +FollowSymLinks -MultiViews\n        AllowOverride All\n        Order allow,deny\n        Allow from all\n        Require all granted\n    </Directory>\n    SetEnv APPLICATION_ENV \"development\"\n</VirtualHost>\n"
  },
  {
    "path": "docker/newscoop.conf",
    "content": "<VirtualHost *:80>\n    DocumentRoot /var/www/newscoop\n    ServerName newscoop.docker\n    ServerAlias localhost boot2docker *.boot2docker newscoop.docker *.newscoop.docker newscoop.dckr *.newscoop.dckr\n    DirectoryIndex index.php index.html\n    <Directory /var/www/newscoop>\n        Options -Indexes +FollowSymLinks -MultiViews\n        AllowOverride All\n        Order allow,deny\n        Allow from all\n        Require all granted\n    </Directory>\n</VirtualHost>\n"
  },
  {
    "path": "docker-compose-dev.yml",
    "content": "newscoop:\n    extends:\n        file: docker/docker-newscoop.yml\n        service: newscoop\n    links:\n        - mysql\n    environment:\n        - APPLICATION_ENVIRONMENT=dev\n\nmysql:\n    extends:\n        file: docker/docker-newscoop.yml\n        service: mysql\n\n"
  },
  {
    "path": "docker-compose.yml",
    "content": "newscoop:\n    extends:\n        file: docker/docker-newscoop.yml\n        service: newscoop\n    links:\n        - mysql\n\nmysql:\n    extends:\n        file: docker/docker-newscoop.yml\n        service: mysql\n\n"
  },
  {
    "path": "features/0_api_articles.feature",
    "content": "Feature: Articles\n    I need to be able to create and update articles\n\n    Scenario: Check if route is correct\n        Given that I want to find an articles\n            When I request \"/articles\"\n            And the response is JSON\n\n    Scenario: Create new article\n        Given that I want to create an new article\n            And that i have fake \"article\" data:\n                | name             | <<sentence>>       | 4 |\n                | language         | 1                  ||\n                | publication      | 1                  ||\n                | issue            |                    ||\n                | section          |                    ||\n                | comments_enabled | 1                  ||\n                | type             | news               ||\n                | onFrontPage      | 0                  ||\n                | onSection        | 0                  ||\n                | keywords         | <<text>>           | 30 |\n\n            And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I submit \"article\" data to \"/articles/create\"\n            Then the response status code should be 201\n            And the response is JSON\n            And the response should contain field \"number\"\n            And the response should contain field \"title\"\n            And the response should contain field \"type\"\n        Then save new item location as \"new_article\"\n\n        Given that I want to create an new article\n            And that i have fake \"article\" data:\n                | name             | <<sentence>>       | 4 |\n                | language         | 1                  ||\n                | publication      | 1                  ||\n                | issue            |                    ||\n                | section          |                    ||\n                | comments_enabled | 1                  ||\n                | type             | news               ||\n                | onFrontPage      | 1                  ||\n                | onSection        | 1                  ||\n                | keywords         | test keywords      | 30 |\n                | fields[content] | <<sentence>>       | 35 |\n\n        When I submit \"article\" data to \"<<new_article>>\"\n            Then the response status code should be 200\n            And the response is JSON\n            And field \"keywords\" in the response should be \"test keywords\"\n\n    Scenario: Getting all article's topics\n        Given that I want to check if there are any topics attached to the article\n            And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I request \"/articles/1/en/topics?query=\"\n        Then the response status code should be 200\n            And the response is JSON\n            And the response should contain field \"items\""
  },
  {
    "path": "features/1_api_images.feature",
    "content": "Feature: Images\n    I need to be able to work with images api\n\n    Scenario: Check if route is correct\n        Given that I want to find an articles\n            When I request \"/images\"\n            And the response is JSON\n\n    Scenario: Create new image\n        Given that I want to create an new image\n            And that i have fake \"image\" data:\n                | description      | <<sentence>>       | 6 |\n                | photographer     | <<name>>           | |\n                | photographer_url | <<url>>            | |\n                | place            | <<address>>        | |\n                | image            | <<image>>          | /tmp,640,480 |\n\n            And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I submit \"image\" data to \"/images\"\n            Then the response status code should be 201\n            And the response is JSON\n            And the response should contain field \"photographer\"\n            And the response should contain field \"photographerUrl\"\n            And the response should contain field \"description\"\n        Then save new item location as \"new_image\"\n\n        Given that I want to find an image\n            And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I request \"<<new_image>>\"\n            Then the response status code should be 200\n            And the response is JSON\n            And the response should contain field \"photographer\"\n            And the response should contain field \"photographerUrl\"\n            And the response should contain field \"description\"\n\n        Given that I want to create an new image\n            And that i have fake \"image\" data:\n                | description      | <<sentence>>       | 12 |\n                | photographer     | <<name>>           | |\n                | photographer_url | <<url>>            | |\n                | place            | <<address>>        | |\n\n            And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I submit \"image\" data to \"<<new_image>>\"\n            Then the response status code should be 200\n            And the response is JSON\n            And the response should contain field \"photographer\"\n            And the response should contain field \"photographerUrl\"\n            And the response should contain field \"description\"\n\n        Given that I want to delete an image\n            And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I request \"<<new_image>>\"\n            Then the response status code should be 204\n            And the response is JSON"
  },
  {
    "path": "features/2_api_linkImage_to_article.feature",
    "content": "Feature: Images\n    I need to be able to work link images to articles\n\n    Scenario: Create new article and image\n        Given that I want to create an new article\n            And that i have fake \"article\" data:\n                | name             | <<sentence>>       | 4 |\n                | language         | 1                  ||\n                | publication      | 1                  ||\n                | issue            |                    ||\n                | section          |                    ||\n                | comments_enabled | 1                  ||\n                | type             | news               ||\n                | onFrontPage      | 0                  ||\n                | onSection        | 0                  ||\n                | keywords         | <<text>>           | 30 |\n\n            And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I submit \"article\" data to \"/articles/create\"\n            Then the response status code should be 201\n            And the response is JSON\n            And the response should contain field \"number\"\n            And the response should contain field \"title\"\n            And the response should contain field \"type\"\n        Then save new item location as \"new_article\"\n\n        Given that I want to create an new image\n            And that i have fake \"image\" data:\n                | description      | <<sentence>>       | 6 |\n                | photographer     | <<name>>           | |\n                | photographer_url | <<url>>            | |\n                | place            | <<address>>        | |\n                | image            | <<image>>          | /tmp,640,480 |\n\n        When I submit \"image\" data to \"/images\"\n            Then the response status code should be 201\n            And the response is JSON\n            And the response should contain field \"photographer\"\n            And the response should contain field \"photographerUrl\"\n            And the response should contain field \"description\"\n        Then save new item location as \"new_image\"\n\n        Given that I want to link an image to article\n            And that i have \"link\" header with \"<$$new_image$$; rel='image'>\" value\n        When I request \"<<new_article>>\"\n            Then the response status code should be 201\n            And the response is JSON\n\n        Given that I want to unlink an image from article\n            And that i have \"link\" header with \"<$$new_image$$; rel='image'>\" value\n        When I request \"<<new_article>>\"\n            Then the response status code should be 204\n            And the response is JSON\n\n        Given that I want to delete an image\n        When I request \"<<new_image>>\"\n            Then the response status code should be 204\n            And the response is JSON"
  },
  {
    "path": "features/3_api_articles_search.feature",
    "content": "Feature: Endpoints\n    I need to be able to create and search articles\n\n    Scenario: Check if route is correct\n        Given that I want to find an articles\n            When I request \"/articles\"\n            And the response is JSON\n\n    Scenario: Create new article\n        Given that I want to create an new article\n            And that i have fake \"article\" data:\n                | name             | <<sentence>>       | 4 |\n                | language         | 1                  ||\n                | publication      | 1                  ||\n                | issue            |                    ||\n                | section          |                    ||\n                | comments_enabled | 1                  ||\n                | type             | news               ||\n                | onFrontPage      | 0                  ||\n                | onSection        | 0                  ||\n                | keywords         | unique keyword       | |\n\n            And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I submit \"article\" data to \"/articles/create\"\n            Then the response status code should be 201\n            And the response is JSON\n            And the response should contain field \"number\"\n            And the response should contain field \"title\"\n            And the response should contain field \"type\"\n        Then save new item location as \"new_article\"\n\n        # we need publish that article first to make it searchable\n\n        Given that I want to find an article\n            And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I request \"/search/articles?query=unique keyword\"\n            Then the response status code should be 200\n            And the response is JSON\n            And the response should contain field \"items\""
  },
  {
    "path": "features/3_api_topics.feature",
    "content": "Feature: Testing Topics API\n\tIn order to maintain topics through the API\n\tAs a service user\n    I want to see if the topics management works as expected\n\n    Scenario: Checking topics endpoint\n        When I request \"/topics\"\n        Then the response is JSON\n\n    Scenario: Creating a new root topic and subtopic, checking if topics have been created successfully\n    \tGiven that I want to make a new topic\n\t        And that i have fake \"topic\" data:\n\t                | title            | roottopic      | 4 |\n\n\t        And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I submit \"topic\" data to \"/topics\"\n        Then the response status code should be 201\n            And the response is JSON\n        Then save new item location as \"root_topic\"\n\n    \tGiven that I want to check if root topic has been created successfully\n    \t\tWhen I request \"<<root_topic>>\"\n\t    \tThen the response status code should be 200\n\t            And the response is JSON\n\t\t        And the response should contain field \"id\"\n\t            And the response should contain field \"title\"\n\t            And the response should contain field \"left\"\n\t            And the response should contain field \"right\"\n\t            And the response should contain field \"root\"\n\t            And the response should contain field \"level\"\n\t            And the response should contain field \"translations\"\n\t\t\t\tAnd field \"level\" in the response should be \"0\"\n\t\t\t\tAnd field \"title\" in the response should be \"roottopic\"\n\t\t\t\tAnd save \"id\" field under location \"topic_id\"\n\n    \tGiven that I want to make a new subtopic\n\t        And that i have fake \"topic\" data:\n\t                | title            | <<sentence>>       | 4 |\n\t                | parent           | (topic_id)         ||\n\n\t        And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I submit \"topic\" data to \"/topics\"\n        Then the response status code should be 201\n            And the response is JSON\n        Then save new item location as \"sub_topic\"\n\n    \tGiven that I want to check if subtopic has been created successfully\n    \t\tWhen I request \"<<sub_topic>>\"\n\t    \tThen the response status code should be 200\n\t            And the response is JSON\n\t\t        And the response should contain field \"id\"\n\t            And the response should contain field \"title\"\n\t            And the response should contain field \"parent\"\n\t            And the response should contain field \"left\"\n\t            And the response should contain field \"right\"\n\t            And the response should contain field \"root\"\n\t            And the response should contain field \"level\"\n\t            And the response should contain field \"translations\"\n\t\t\t\tAnd field \"parent\" in the response should be \"(topic_id)\"\n\t\t\t\tAnd field \"level\" in the response should be \"1\"\n\n\t\tGiven that I want to delete an previously created subtopic\n            And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I request \"<<sub_topic>>\"\n            Then the response status code should be 204\n            And the response is JSON\n\n\tScenario: Getting all the topics\n\t\tGiven that I want to check if there are any topics\n\t\t\tAnd I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n\t\tWhen I request \"/topics\"\n\t\tThen the response status code should be 200\n        \tAnd the response is JSON\n       \t\tAnd the response should contain field \"items\"\n\n    Scenario: Creating a new topic and attaching it directly to the article\n\t\tGiven that I want to make a new topic and attach it to the article\n\t\t\tAnd that i have fake \"topic\" data:\n\t                | title            | <<sentence>>       | 4 |\n\n\t        And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n\t\tWhen I submit \"topic\" data to \"/articles/1/en/topics\"\n\t\tThen the response status code should be 201\n        \tAnd the response is JSON\n        Then save new item location as \"new_topic\"\n\n        Given that I want to check if topic has been created successfully\n    \t\tWhen I request \"<<new_topic>>\"\n\t    \tThen the response status code should be 200\n\t            And the response is JSON\n\t\t        And the response should contain field \"id\"\n\t            And the response should contain field \"title\"\n\t            And the response should contain field \"left\"\n\t            And the response should contain field \"right\"\n\t            And the response should contain field \"root\"\n\t            And the response should contain field \"level\"\n\t            And the response should contain field \"translations\"\n\t\t\t\tAnd field \"level\" in the response should be \"0\"\n\n\t\tGiven that I want to delete an previously created topic\n            And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I request \"<<new_topic>>\"\n            Then the response status code should be 204\n            And the response is JSON\n\n    Scenario: Getting all the topics attached to a given article\n\t\tGiven that I want to check if there are topics attached to the article\n\t\tWhen I request \"/topics/article/1/en\"\n\t\t\tAnd I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n\t\tThen the response status code should be 200\n        \tAnd the response is JSON\n\n    Scenario: Getting the list of the topics by given search query\n\t\tGiven that I want to find an topic by given title\n\t\t\tAnd I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n\t\tWhen I request \"/search/topics?query=roottopic\"\n\t\tThen the response status code should be 200\n        \tAnd the response is JSON\n       \t\tAnd the response should contain field \"items\"\n\n    Scenario: Getting articles by given topic\n\t\tGiven that I want to find an articles by given topic\n\t\t\tAnd I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n\t\tWhen I request \"/topics/1/en/articles\"\n\t\tThen the response status code should be 200\n        \tAnd the response is JSON\n       \t\tAnd the response should contain field \"items\"\n\n    Scenario: Creating a new root topic with the title that already exist\n    \tGiven that I want to make a new topic\n\t        And that i have fake \"topic\" data:\n\t                | title            | roottopic      | 4 |\n\n\t        And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I submit \"topic\" data to \"/topics\"\n        Then the response status code should be 409\n            And the response is JSON\n        Then save new item location as \"root_topic\"\n"
  },
  {
    "path": "features/4_api_link_unlink_topic_to_from_article.feature",
    "content": "Feature: Testing linking/unlinking topics to/from the articles\n    In order to link/unlink topics through the API\n    As a service user\n    I want to see if the topics can be linked or unlinked to/from the articles\n\n    Scenario: Create a new article and topic, then link/unlink topic from created article.\n        Given that I want to create an new article\n            And that i have fake \"article\" data:\n                | name             | <<sentence>>       | 4 |\n                | language         | 1                  ||\n                | publication      | 1                  ||\n                | issue            |                    ||\n                | section          |                    ||\n                | comments_enabled | 1                  ||\n                | type             | news               ||\n                | onFrontPage      | 0                  ||\n                | onSection        | 0                  ||\n                | keywords         | <<text>>           | 30 |\n\n            And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I submit \"article\" data to \"/articles/create\"\n            Then the response status code should be 201\n            And the response is JSON\n            And the response should contain field \"number\"\n            And the response should contain field \"title\"\n            And the response should contain field \"type\"\n        Then save new item location as \"new_article\"\n\n        Given that I want to make a new topic\n            And that i have fake \"topic\" data:\n                    | title            | <<sentence>>      | 4 |\n\n            And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I submit \"topic\" data to \"/topics\"\n        Then the response status code should be 201\n            And the response is JSON\n        Then save new item location as \"new_topic\"\n\n        Given that I want to link that topic to the article\n            And that i have \"link\" header with \"<$$new_topic$$; rel='topic'>\" value\n            And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I request \"<<new_article>>\"\n        Then the response status code should be 201\n            And the response is JSON\n\n        Given that I want to unlink that topic from article\n            And that i have \"unlink\" header with \"<$$new_topic$$; rel='topic'>\" value\n            And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I request \"<<new_article>>\"\n        Then the response status code should be 204\n            And the response is JSON"
  },
  {
    "path": "features/5_api_related_articles.feature",
    "content": "Feature: Testing linking/unlinkig related articles feature\n    I need to be able to link and unlink articles (aka. related articles)\n\n    Scenario: Create articles and link them them\n        Given that I want to create an new article\n            And that i have fake \"article\" data:\n                | name             | <<sentence>>       | 4 |\n                | language         | 1                  ||\n                | publication      | 1                  ||\n                | issue            |                    ||\n                | section          |                    ||\n                | comments_enabled | 1                  ||\n                | type             | news               ||\n                | onFrontPage      | 0                  ||\n                | onSection        | 0                  ||\n                | keywords         | <<text>>           | 30 |\n\n            And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I submit \"article\" data to \"/articles/create\"\n            Then the response status code should be 201\n            And the response is JSON\n            And the response should contain field \"number\"\n            And the response should contain field \"title\"\n            And the response should contain field \"type\"\n        Then save new item location as \"base_article\"\n\n        Given that I want to create an new article\n            And that i have fake \"article\" data:\n                | name             | <<sentence>>       | 4 |\n                | language         | 1                  ||\n                | publication      | 1                  ||\n                | issue            |                    ||\n                | section          |                    ||\n                | comments_enabled | 1                  ||\n                | type             | news               ||\n                | onFrontPage      | 0                  ||\n                | onSection        | 0                  ||\n                | keywords         | <<text>>           | 30 |\n\n            And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I submit \"article\" data to \"/articles/create\"\n            Then the response status code should be 201\n            And the response is JSON\n            And the response should contain field \"number\"\n            And the response should contain field \"title\"\n            And the response should contain field \"type\"\n        Then save new item location as \"second_article\"\n\n        Given that I want to create an new article\n            And that i have fake \"article\" data:\n                | name             | <<sentence>>       | 4 |\n                | language         | 1                  ||\n                | publication      | 1                  ||\n                | issue            |                    ||\n                | section          |                    ||\n                | comments_enabled | 1                  ||\n                | type             | news               ||\n                | onFrontPage      | 0                  ||\n                | onSection        | 0                  ||\n                | keywords         | <<text>>           | 30 |\n\n            And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I submit \"article\" data to \"/articles/create\"\n            Then the response status code should be 201\n            And the response is JSON\n            And the response should contain field \"number\"\n            And the response should contain field \"title\"\n            And the response should contain field \"type\"\n        Then save new item location as \"third_article\"\n\n\n        Given that I want to link an article to the article\n            And that i have \"link\" header with \"<$$second_article$$; rel='article'>\" value\n        When I request \"<<base_article>>\"\n        Then the response status code should be 201\n            And the response is JSON\n\n        Given that I want to link an article to the article\n            And that i have \"link\" header with \"<$$third_article$$; rel='article'>\" value\n        When I request \"<<base_article>>\"\n        Then the response status code should be 201\n            And the response is JSON\n\n        Given that I want to link an article to the article\n            And that i have \"link\" header with \"<$$second_article$$; rel='article'>,<2; rel='article-position'>\" value\n        When I request \"<<base_article>>\"\n        Then the response status code should be 201\n            And the response is JSON        \n\n        Given that I want to unlink an article to the article\n            And that i have \"link\" header with \"<$$second_article$$; rel='article'>\" value\n        When I request \"<<base_article>>\"\n        Then the response status code should be 204\n            And the response is JSON"
  },
  {
    "path": "features/6_api_link_unlink_topic.feature",
    "content": "Feature: Testing linking/unlinkig topics (follow/unfollow topics by users)\n    I need to be able to follow/unfollow topics by given users\n\n    Scenario: Create a new topic and link it to the user, unlink and delete\n    \tGiven that I want to make a new topic\n\t        And that i have fake \"topic\" data:\n\t                | title            | <<sentence>>      | 4 |\n\n\t        And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n\t   \tWhen I submit \"topic\" data to \"/topics\"\n        Then the response status code should be 201\n            And the response is JSON\n        Then save new item location as \"new_topic\"\n\n        Given that I want to link that previously created topic to the user\n            And that i have \"link\" header with \"<$$new_topic$$; rel='topic'>\" value\n        When I request \"/users/9\"\n        Then the response status code should be 201\n            And the response is JSON\n\n        Given that I want to check if there are any topics by given user\n\t\t\tAnd I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n\t\tWhen I request \"/users/9/topics\"\n\t\tThen the response status code should be 200\n        \tAnd the response is JSON\n        \tAnd the response should contain field \"items\"\n        When I request \"/users/9\"\n\t\tThen the response status code should be 200\n        \tAnd the response is JSON\n        \tAnd the response should contain field \"topics\"\n\n       \tGiven that I want to unlink that previously created topic from the user\n            And that i have \"unlink\" header with \"<$$new_topic$$; rel='topic'>\" value\n        When I request \"/users/9\"\n        Then the response status code should be 204\n            And the response is JSON\n\n        Given that I want to delete an previously created topic\n            And I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I request \"<<new_topic>>\"\n            Then the response status code should be 204\n            And the response is JSON\n\n        Given that I want to check if topic was successfully unassigned from the user after deletion\n        \tAnd I'm logged in as \"testuser\" with \"testpassword\" with client \"1_svdg45ew371vtsdgd29fgvwe5v\" and secret \"h48fgsmv0due4nexjsy40jdf3sswwr\"\n        When I request \"/users/9\"\n\t\tThen the response status code should be 200\n        \tAnd the response is JSON\n        \tAnd in the response there is no field called \"topics\"\n"
  },
  {
    "path": "features/bootstrap/FeatureContext.php",
    "content": "<?php\n/**\n * @author   Demin Yin <deminy@deminy.net>\n * @license  MIT license\n */\n\nuse Behat\\Behat\\Context\\ClosuredContextInterface;\nuse Behat\\Behat\\Context\\BehatContext;\nuse Symfony\\Component\\Finder\\Finder;\n\nrequire_once __DIR__ . '/RestContext.php';\n\n/**\n * Features context.\n */\nclass FeatureContext extends BehatContext implements ClosuredContextInterface\n{\n\n    /**\n     * @var array\n     */\n    protected $parameters;\n\n    /**\n     * Store data used across different subcontexts and steps.\n     *\n     * @var array\n     */\n    protected $data = array();\n\n    /**\n     * Initializes context.\n     * Every scenario gets it's own context object.\n     *\n     * @param array $parameters Context parameters (set them up through behat.yml)\n     * @throws \\InvalidArgumentException\n     * @throws \\Exception\n     */\n    public function __construct(array $parameters)\n    {\n        if (empty($parameters)) {\n            throw new \\InvalidArgumentException('Parameters not loaded.');\n        }\n\n        $this->parameters = $parameters;\n\n        $this->useContext('RestContext', new RestContext($parameters));\n\n        /**\n         * You may chain other contexts as sub-contexts of this main context via parameters. In this way all the\n         * context classes may communicate with each other.\n         */\n        if (array_key_exists('subContexts', $parameters) && is_array($parameters['subContexts'])) {\n            $this->loadBootstrapScripts($this->getResourcePath('bootstrap'));\n\n            foreach ($parameters['subContexts'] as $subContext) {\n                if (class_exists($subContext)) {\n                    $this->useContext($subContext, new $subContext());\n                } else {\n                    throw new \\Exception(\"Context '{$subContext}' doesn't exist.\");\n                }\n            }\n        }\n    }\n\n    /**\n     * Returns array of step definition files (*.php).\n     *\n     * @return array\n     */\n    public function getStepDefinitionResources()\n    {\n        $path = $this->getResourcePath('steps') ?: (__DIR__ . '/../steps');\n\n        return $this->getFiles($path);\n    }\n\n    /**\n     * Returns array of hook definition files (*.php).\n     *\n     * @return array\n     * @throws \\RuntimeException\n     */\n    public function getHookDefinitionResources()\n    {\n        $path = $this->getResourcePath('hooks') ?: (__DIR__ . '/../support');\n\n        return $this->getFiles($path);\n    }\n\n    /**\n     * Get data by field name, or return all data if no field name provided.\n     *\n     * @param string $name Field name.\n     * @return mixed\n     * @throws \\Exception\n     */\n    public function getData($name = null)\n    {\n        if (!isset($name)) {\n            return $this->data;\n        } elseif (array_key_exists($name, $this->data)) {\n            return $this->data[$name];\n        }\n\n        throw new \\Exception('Requested data not exist.');\n    }\n\n    /**\n     * Set value on given field name.\n     *\n     * @param string $name Field name.\n     * @param mixed $value Field value.\n     * @return void\n     */\n    public function setData($name, $value)\n    {\n        $this->data[$name] = $value;\n    }\n\n    /**\n     * Check if specified field name exists or not.\n     *\n     * @param string $name Field name.\n     * @return mixed\n     */\n    public function dataExists($name)\n    {\n        return array_key_exists($name, $this->data);\n    }\n\n    /**\n     * This public method is also for other context(s) to set parameter(s) into this context.\n     *\n     * @param string $name\n     * @param mixed $value\n     * @return void\n     */\n    public function setParameter($name, $value)\n    {\n        $this->parameters[$name] = $value;\n    }\n\n    /**\n     * Get context parameter.\n     *\n     * @param string $name Parameter name.\n     * @return mixed\n     */\n    public function getParameter($name)\n    {\n        return array_key_exists($name, $this->parameters) ? $this->parameters[$name] : null;\n    }\n\n    /**\n     * Returns path that points to specified resources.\n     *\n     * @param string $type Resource type. Either 'boostrap', 'steps' or 'hooks'.\n     * @return string Return path back.\n     * @throws \\RuntimeException\n     */\n    protected function getResourcePath($type)\n    {\n        $paths = $this->getParameter('paths');\n\n        if (array_key_exists($type, $paths)) {\n            $pathBase = array_key_exists('base', $paths) ? $paths['base'] : '';\n            $pathType = $paths[$type];\n\n            // Check if it's an absolute path.\n            if (substr($pathType, 0, 1) == DIRECTORY_SEPARATOR) {\n                if (empty($pathBase)) {\n                    return $pathType;\n                } else {\n                    throw new \\RuntimeException(\n                        sprintf('You may only use relative path for type \"%s\" when base path is presented.', $type)\n                    );\n                }\n            } else {\n                // TODO: check if there is a trailing directory separator in the base path.\n                return ($pathBase ? ($pathBase . DIRECTORY_SEPARATOR) : '') . $pathType;\n            }\n        }\n\n        return '';\n    }\n\n    /**\n     * Get files of certain type under specified directory.\n     *\n     * @param string $dir A directory.\n     * @param string $ext File extension.\n     * @return array\n     * @throws \\InvalidArgumentException\n     */\n    protected function getFiles($dir, $ext = 'php')\n    {\n        if (!is_dir($dir)) {\n            throw new \\InvalidArgumentException(sprintf('Given path \"%s\" is not a directory.', $dir));\n        }\n\n        if (!is_readable($dir)) {\n            throw new \\InvalidArgumentException(sprintf('Given path \"%s\" is not readable.', $dir));\n        }\n\n        if (!preg_match('/^[0-9a-z]+$/i', $ext)) {\n            throw new \\InvalidArgumentException(\n                sprintf('Given file extension \"%s\" is invalid (may only contain digits and/or letters).', $dir)\n            );\n        }\n\n        $finder = new Finder;\n\n        return $finder->files()->name('*.' . $ext)->in($dir);\n    }\n\n    /**\n     * Requires *.php scripts from bootstrap/ folder.\n     *\n     * @param string $path\n     * @see Behat\\Behat\\Console\\Processor\\LocatorProcessor::loadBootstrapScripts()\n     */\n    protected function loadBootstrapScripts($path)\n    {\n        $iterator = Finder::create()\n            ->files()\n            ->name('*.php')\n            ->sortByName()\n            ->in($path)\n        ;\n\n        foreach ($iterator as $file) {\n            include_once (string) $file;\n        }\n    }\n}"
  },
  {
    "path": "features/bootstrap/RestContext.php",
    "content": "<?php\n/**\n * @author   Demin Yin <deminy@deminy.net>\n * @license  MIT license\n */\nuse Behat\\Behat\\Context\\BehatContext;\nuse Behat\\Behat\\Context\\Step;\nuse Buzz\\Message\\Form\\FormUpload;\n\n/**\n * Rest context.\n */\nclass RestContext extends BehatContext\n{\n    const METHOD_DELETE = 'DELETE';\n    const METHOD_GET    = 'GET';\n    const METHOD_POST   = 'POST';\n    const METHOD_PUT    = 'PUT';\n    const METHOD_PATCH  = 'PATCH';\n    const METHOD_LINK   = 'LINK';\n    const METHOD_UNLINK = 'UNLINK';\n\n    /**\n     * @var \\Buzz\\Browser\n     */\n    protected $client;\n\n    /**\n     * @var string\n     */\n    protected $requestMethod;\n\n    /**\n     * Used for debugging purpose only.\n     * @var string\n     */\n    protected $requestUrl;\n\n    /**\n     * Client access_token\n     * @var string\n     */\n    protected $access_token = null;\n\n    /**\n     * Data collected from steps\n     * @var string\n     */\n    protected $collectedData = array();\n\n    /**\n     * Locations collected from steps\n     * @var array\n     */\n    protected $locations = array();\n\n    /**\n     * Headers\n     * @var array\n     */\n    protected $headers = array();\n\n    /**\n     * @var \\Buzz\\Message\\Response\n     */\n    protected $response;\n\n    /**\n     * Data decoded from HTTP response.\n     * @var mixed\n     */\n    protected $responseData;\n\n    /**\n     * Specifies if the response data should be an associative array or a nested stdClass object hierarchy.\n     *\n     * @var bool\n     */\n    protected $associative;\n\n    /**\n     * @var boolean\n     */\n    protected $responseIsJson;\n\n    /**\n     * @var \\Exception\n     */\n    protected $responseDecodeException;\n\n    /**\n     * Initializes context.\n     * Every scenario gets it's own context object.\n     *\n     * @param array $parameters Context parameters (set them up through behat.yml)\n     */\n    public function __construct(array $parameters)\n    {\n        $fileGetContent = new \\Buzz\\Client\\FileGetContents();\n        $fileGetContent->setTimeout(15);\n        $this->client      = new \\Buzz\\Browser($fileGetContent);\n        $this->associative = (array_key_exists('associative', $parameters) ? $parameters['associative'] : true);\n    }\n\n    /**\n     * @Given /^that I want to (delete|remove) an? /\n     * @return void\n     */\n    public function thatIWantToDelete()\n    {\n        $this->requestMethod = self::METHOD_DELETE;\n    }\n\n    /**\n     * @Given /^that I want to ((find|look for) an?|check) /\n     * @return void\n     */\n    public function thatIWantToFind()\n    {\n        $this->requestMethod = self::METHOD_GET;\n    }\n\n    /**\n     * @Given /^that I want to (add|create|make) an? (new )?/\n     * @return void\n     */\n    public function thatIWantToMakeANew()\n    {\n        $this->requestMethod = self::METHOD_POST;\n    }\n\n    /**\n     * @Given /^that I want to (change|update) (an?|that) /\n     * @return void\n     */\n    public function thatIWantToUpdate()\n    {\n        $this->requestMethod = self::METHOD_PATCH;\n    }\n\n    /**\n     * @Given /^that I want to link (an?|that) /\n     * @return void\n     */\n    public function thatIWantToLink()\n    {\n        $this->requestMethod = self::METHOD_LINK;\n    }\n\n    /**\n     * @Given /^that I want to unlink (an?|that) /\n     * @return void\n     */\n    public function thatIWantToUnlink()\n    {\n        $this->requestMethod = self::METHOD_UNLINK;\n    }\n\n    /**\n     * @Given /^I\\'m autheticated with client \"([^\"]*)\" and secret \"([^\"]*)\"$/\n     * @param  string     $clientId\n     * @return void\n     * @throws \\Exception\n     */\n    public function authenitcatedWith($client, $secret)\n    {\n        $tokenUrl = '/v2/token?client_id='.$client.'&grant_type=client_credentials&client_secret='.$secret;\n        $this->client->call($this->getMainContext()->getParameter('oauth_url').$tokenUrl, 'GET');\n        $this->response = $this->client->getLastResponse();\n\n        $this->processResponse();\n\n        $this->access_token = $this->responseData['access_token'];\n    }\n\n    /**\n     * @Given /^I\\'m logged in as \"([^\"]*)\" with \"([^\"]*)\" with client \"([^\"]*)\" and secret \"([^\"]*)\"$/\n     * @param  string     $username\n     * @param  string     $password\n     * @param  string     $client\n     * @return void\n     * @throws \\Exception\n     */\n    public function authenitcatedAsWithClient($username, $password, $client, $secret)\n    {\n        $tokenUrl = '/v2/token?client_id='.$client.'&grant_type=password&username='.$username.'&password='.$password.'&client_secret='.$secret;\n        $this->client->call($this->getMainContext()->getParameter('oauth_url').$tokenUrl, 'GET');\n        $this->response = $this->client->getLastResponse();\n\n        $this->processResponse();\n\n        $this->access_token = $this->responseData['access_token'];\n    }\n\n    /**\n     * @Given /^that i have folowing \"([^\"]*)\" data:$/\n     * @param  string     $clientId\n     * @return void\n     * @throws \\Exception\n     */\n    public function collectData($dataKey, \\Behat\\Gherkin\\Node\\TableNode $data)\n    {\n        foreach ($data->getRows() as $key => $value) {\n            $this->collectedData[$dataKey][$value[0]] = $value[1];\n        }\n    }\n\n    /**\n     * @Given /^that i have \"([^\"]*)\" header with \"([^\"]*)\" value$/\n     * @param  string     $clientId\n     * @return void\n     * @throws \\Exception\n     */\n    public function collectHeaders($key, $value)\n    {\n        if (strpos($value, '$$') !== false) {\n            $start = '$$';\n            $end = '$$';\n\n            $startpos = strpos($value, $start) + strlen($start);\n            if (strpos($value, $start) !== false) {\n                $endpos = strpos($value, $end, $startpos);\n                if (strpos($value, $end, $startpos) !== false) {\n                    $link = substr($value, $startpos, $endpos - $startpos);\n                }\n            }\n\n            $value = str_replace('$$', '', str_replace('$$', '', str_replace(\"$$\".$link.\"$$\", $this->locations[$link], $value)));\n        }\n\n        $this->headers[$key] = $value;\n    }\n\n    /**\n     * @Given /^that i have fake \"([^\"]*)\" data:$/\n     * @param string                        $dataKey\n     * @param \\Behat\\Gherkin\\Node\\TableNode $data\n     *\n     * @return boolean\n     */\n    public function collectFakeData($dataKey, \\Behat\\Gherkin\\Node\\TableNode $data)\n    {\n        $faker = Faker\\Factory::create();\n\n        $this->collectedData[$dataKey] = array();\n        foreach ($data->getRows() as $key => $value) {\n            if (strpos($value[1], '<<') !== false) {\n                $functionName = str_replace('>>', '', str_replace('<<', '', $value[1]));\n                $fakeValue = call_user_func_array(array($faker, $functionName), explode(',', $value[2]));\n                if ($functionName == 'file' || $functionName == 'image') {\n                    $fakeValue = new FormUpload($fakeValue);\n                }\n\n                if (strpos($value[0], '[') !== false) {\n                    parse_str($value[0].'='.$fakeValue, $temp);\n                    $temp = array($dataKey => $temp);\n                    $this->collectedData = array_merge_recursive($this->collectedData, $temp);\n                    continue;\n                }\n\n                $this->collectedData[$dataKey][$value[0]] = $fakeValue;\n            } else {\n                if (strpos($value[0], '[') !== false) {\n                    parse_str($value[0].'='.$fakeValue, $temp);\n                    $temp = array($dataKey => $temp);\n                    $this->collectedData = array_merge_recursive($this->collectedData, $temp);\n                    continue;\n                }\n\n                if (strpos($value[1], '(') !== false) {\n                    $locationIndex = str_replace(')', '', str_replace('(', '', $value[1]));\n                    $locationValue = $this->locations[$locationIndex];\n                    parse_str($value[0].'='.$locationValue, $temp);\n                    $temp = array($dataKey => $temp);\n                    $this->collectedData = array_merge_recursive($this->collectedData, $temp);\n                    continue;\n                }\n\n                $this->collectedData[$dataKey][$value[0]] = $value[1];\n            }\n        }\n\n        return true;\n    }\n\n    /**\n     * @Then /^save new item location as \"([^\"]*)\"$/\n     * @param string $location\n     *\n     * @return boolean\n     */\n    public function collectLocations($locationIndex)\n    {\n        $this->response = $this->client->getLastResponse();\n        $this->locations[$locationIndex] = $this->response->getHeader('X-Location');\n    }\n\n    /**\n     * @Then /^save \"([^\"]+)\" field under location \"([^\"]*)\"$/\n     * @param  string         $fieldName\n     * @param  string         $locationIndex\n     * @return Step\\Then|void\n     * @throws Exception\n     */\n    public function saveFieldValueUnderLocation($fieldName, $locationIndex)\n    {\n        $this->response = $this->client->getLastResponse();\n        $fieldValue = null;\n        if ($this->responseIsJson) {\n            if ($this->associative) {\n                if (!(is_array($this->responseData)) || !array_key_exists($fieldName, $this->responseData)) {\n                    throw new \\Exception('Field \"'.$fieldName.'\" is not set!');\n                }\n\n                $fieldValue = $this->responseData[$fieldName];\n            } else {\n                if (!($this->responseData instanceof stdClass) || !property_exists($this->responseData, $name)) {\n                    throw new \\Exception('Field \"'.$fieldName.'\" is not set!');\n                }\n\n                $fieldValue = $this->responseData->$fieldName;\n            }\n\n            $this->locations[$locationIndex] = $fieldValue;\n        } else {\n            return new Step\\Then('the response is JSON');\n        }\n    }\n\n    /**\n     * @When /^I request \"([^\"]*)\"$/\n     * @param  string     $pageUrl\n     * @return void\n     * @throws \\Exception\n     */\n    public function iRequest($pageUrl)\n    {\n        $this->responseData = $this->responseDecodeException = null;\n        $this->responseIsJson = false;\n\n        if ($this->access_token) {\n            $this->headers['Authorization'] = 'Bearer '.$this->access_token;\n        }\n\n        $this->client->call(\n            $this->processPageUrl($pageUrl),\n            strtolower($this->requestMethod),\n            $this->headers\n        );\n        $this->response = $this->client->getLastResponse();\n    }\n\n    /**\n     * @When /^I submit \"([^\"]*)\" data to \"([^\"]*)\"$/\n     * @param  string     $pageUrl\n     * @return void\n     * @throws \\Exception\n     */\n    public function iSubmitDataTo($dataKey, $pageUrl)\n    {\n        $this->responseData = $this->responseDecodeException = null;\n        $this->responseIsJson = false;\n\n        if ($this->access_token) {\n            $this->headers['Authorization'] = 'Bearer '.$this->access_token;\n        }\n\n        $this->client->submit(\n            $this->processPageUrl($pageUrl),\n            array($dataKey => $this->collectedData[$dataKey]),\n            strtolower($this->requestMethod),\n            $this->headers\n        );\n\n        $this->response = $this->client->getLastResponse();\n    }\n\n    public function processPageUrl($pageUrl)\n    {\n        if (strpos($pageUrl, '<<') !== false) {\n            $locationIndex = str_replace('>>', '', str_replace('<<', '', $pageUrl));\n\n            return $this->locations[$locationIndex];\n        }\n\n        return $this->getMainContext()->getParameter('base_url').$pageUrl;\n    }\n\n    /**\n     * This public method is also for other context(s) to process REST API call and inject response into this context.\n     *\n     * @param  \\Buzz\\Message\\Response $response\n     * @param  boolean                $asJson   Process the response as JSON or not.\n     * @return void\n     */\n    public function processResponse(\\Buzz\\Message\\Response $response = null, $asJson = true)\n    {\n        if (!empty($response)) {\n            $this->response = $response;\n        }\n\n        return $this->processResponseBody($this->response->getContent(), $asJson);\n    }\n\n    /**\n     * Process response body. This method may also be used by other context(s) to process REST API call and inject\n     * response body into this context by using 2nd parameter $asJson.\n     *\n     * @param  string  $jsonData\n     * @param  boolean $asJson\n     * @return void\n     */\n    protected function processResponseBody($jsonData, $asJson = true)\n    {\n        if ($asJson) {\n            try {\n                $this->responseData            = $this->decodeJson($jsonData);\n                $this->responseIsJson          = true;\n                $this->responseDecodeException = null;\n            } catch (\\Exception $e) {\n                $this->responseData            = $jsonData;\n                $this->responseIsJson          = false;\n                $this->responseDecodeException = $e;\n            }\n        } else {\n            $this->responseData            = $jsonData;\n            $this->responseIsJson          = false;\n            $this->responseDecodeException = null;\n        }\n    }\n\n    /**\n     * @Then /^the response is( not)? JSON$/\n     * @param  string     $notJson\n     * @return void\n     * @throws \\Exception\n     */\n    public function theResponseIsJson($notJson = '')\n    {\n        $this->processResponse();\n\n        if (strpos($notJson, 'not') === false) {\n            if (!$this->responseIsJson) {\n                $message = \"Response was not JSON\\n\";\n                if (!empty($this->responseDecodeException)) {\n                    $message .= $this->responseDecodeException->getMessage();\n                }\n\n                throw new \\Exception($message.\"\\n\".$this->response);\n            }\n        } else {\n            if ($this->responseIsJson) {\n                throw new \\Exception(\"Response was JSON\\n\".$this->response);\n            }\n        }\n    }\n\n    /**\n     * @Given /^the response should contain field \"([^\"]*)\"$/\n     * @param  string     $name\n     * @return void\n     * @throws \\Exception\n     */\n    public function theResponseHasAField($name)\n    {\n        if ($this->responseIsJson) {\n            if ($this->associative) {\n                if (!(is_array($this->responseData)) || !array_key_exists($name, $this->responseData)) {\n                    throw new \\Exception('Field \"'.$name.'\" is not set!');\n                }\n            } else {\n                if (!($this->responseData instanceof stdClass) || !property_exists($this->responseData, $name)) {\n                    throw new \\Exception('Field \"'.$name.'\" is not set!');\n                }\n            }\n        } else {\n            return new Step\\Then('the response is JSON');\n        }\n    }\n\n    /**\n     * @Then /^in the response there is no field called \"([^\"]*)\"$/\n     * @param  string     $name\n     * @return void\n     * @throws \\Exception\n     */\n    public function theResponseShouldNotHaveAField($name)\n    {\n        if ($this->responseIsJson) {\n            if ($this->associative) {\n                if (is_array($this->responseData) && array_key_exists($name, $this->responseData)) {\n                    throw new \\Exception('Field \"'.$name.'\" should not be there!');\n                }\n            } else {\n                if (($this->responseData instanceof stdClass) && property_exists($this->responseData, $name)) {\n                    throw new \\Exception('Field \"'.$name.'\" should not be there!');\n                }\n            }\n        } else {\n            return new Step\\Then('the response is JSON');\n        }\n    }\n\n    /**\n     * @Then /^field \"([^\"]+)\" in the response should be \"([^\"]*)\"$/\n     * @param  string     $fieldName\n     * @param  string     $fieldValue\n     * @return void\n     * @throws \\Exception\n     */\n    public function valueOfTheFieldEquals($fieldName, $fieldValue)\n    {\n        if ($this->responseIsJson) {\n            if (new Step\\Given(\"the response should contain field \\\"{$fieldName}\\\"\")) {\n                $fieldValue = $this->extractValueByGivenLocation($fieldValue) ?: $fieldValue;\n                if ($this->associative) {\n                    if ($this->responseData[$fieldName] != $fieldValue) {\n                        throw new \\Exception(\n                            sprintf(\n                                'Field value mismatch! (given: \"%s\", match: \"%s\")',\n                                $fieldValue,\n                                $this->responseData[$fieldName]\n                            )\n                        );\n                    }\n                } else {\n                    if ($this->responseData->$fieldName != $fieldValue) {\n                        throw new \\Exception(\n                            sprintf(\n                                'Field value mismatch! (given: \"%s\", match: \"%s\")',\n                                $fieldValue,\n                                $this->responseData->$fieldName\n                            )\n                        );\n                    }\n                }\n            }\n        } else {\n            return new Step\\Then('the response is JSON');\n        }\n    }\n\n    private function extractValueByGivenLocation($fieldValue)\n    {\n        if (strpos($fieldValue, '(') !== false) {\n            $locationIndex = str_replace(')', '', str_replace('(', '', $fieldValue));\n\n            return $this->locations[$locationIndex];\n        }\n    }\n\n    /**\n     * @Then /^the response should contain \"([^\"]*)\"$/\n     * @param  string     $str\n     * @return void\n     * @throws \\Exception\n     */\n    public function theResponseShouldContain($str)\n    {\n        if (!$this->responseIsJson) {\n            if (strpos($this->responseData, $str) === false) {\n                throw new \\Exception(sprintf('String \"%s\" not found.', $str));\n            }\n        } else {\n            throw new \\Exception('Response should not be a JSON message.');\n        }\n    }\n\n    /**\n     * @Then /^field \"([^\"]+)\" in the response should be an? (int|integer) \"([^\"]*)\"$/\n     * @param  string     $fieldName\n     * @param  string     $type\n     * @param  string     $fieldValue\n     * @return void\n     * @throws \\Exception\n     * @todo Need to be better designed.\n     */\n    public function fieldIsOfTypeWithValue($fieldName, $type, $fieldValue)\n    {\n        if ($this->responseIsJson) {\n            if (new Step\\Given(\"the response should contain field \\\"{$fieldName}\\\"\")) {\n                switch (strtolower($type)) {\n                    case 'int':\n                    case 'integer':\n                        if (!preg_match('/^(0|[1-9]\\d*)$/', $fieldValue)) {\n                            throw new \\Exception(\n                                sprintf(\n                                    'Field \"%s\" is not of the correct type: %s!',\n                                    $fieldName,\n                                    $type\n                                )\n                            );\n                        }\n                        // TODO: We didn't check if the value is as expected here.\n                        break;\n                    default:\n                        throw new \\Exception('Unsupported data type: '.$type);\n                        break;\n                }\n            }\n        } else {\n            return new Step\\Then('the response is JSON');\n        }\n    }\n\n    /**\n     * @Then /^the response status code should be (\\d+)$/\n     * @param  int        $httpStatus\n     * @return void\n     * @throws \\Exception\n     */\n    public function theResponseStatusCodeShouldBe($httpStatus)\n    {\n        if (((string) $this->response->getStatusCode()) !== $httpStatus) {\n            throw new \\Exception(\n                sprintf(\n                    'HTTP code does not match %s (actual: %s)',\n                    $httpStatus,\n                    $this->response->getStatusCode()\n                )\n            );\n        }\n    }\n\n    /**\n     * @Given /^the response should be \"([^\"]*)\"$/\n     * @param  string     $string\n     * @return void\n     * @throws \\Exception\n     */\n    public function theResponseShouldBe($string)\n    {\n        $data = $this->response->getBody(true);\n\n        if ($string != $data) {\n            throw new \\Exception(\n                sprintf(\"Unexpected response.\\nExpected response:%s\\nActual response:\\n%s\".$string, $data)\n            );\n        }\n    }\n\n    /**\n     * @Then /^echo last response$/\n     * @return void\n     */\n    public function echoLastResponse()\n    {\n        $this->printDebug($this->client->getLastRequest().\"\\n\\n\".$this->response.\"\\n\\n\".\"access_token: \".$this->access_token);\n    }\n\n    /**\n     * Return the response object.\n     *\n     * This public method is also for other context(s) to get and process REST API response.\n     *\n     * @return Guzzle\\Http\\Message\\Response\n     */\n    public function getResponse()\n    {\n        return $this->response;\n    }\n\n    /**\n     * Return the response data.\n     *\n     * This public method is also for other context(s) to get and process REST API response.\n     *\n     * @return mixed\n     */\n    public function getResponseData()\n    {\n        return $this->responseData;\n    }\n\n    /**\n     * Decode JSON string.\n     *\n     * @param  string     $string A JSON string.\n     * @return mixed\n     * @throws \\Exception\n     * @see http://www.php.net/json_last_error\n     */\n    protected function decodeJson($string)\n    {\n        $json = json_decode($string, $this->associative);\n\n        switch (json_last_error()) {\n            case JSON_ERROR_NONE:\n                return $json;\n                break;\n            case JSON_ERROR_DEPTH:\n                $message = 'Maximum stack depth exceeded';\n                break;\n            case JSON_ERROR_STATE_MISMATCH:\n                $message = 'Underflow or the modes mismatch';\n                break;\n            case JSON_ERROR_CTRL_CHAR:\n                $message = 'Unexpected control character found';\n                break;\n            case JSON_ERROR_SYNTAX:\n                $message = 'Syntax error, malformed JSON';\n                break;\n            case JSON_ERROR_UTF8:\n                $message = 'Malformed UTF-8 characters, possibly incorrectly encoded';\n                break;\n            default:\n                $message = 'Unknown error';\n                break;\n        }\n\n        throw new \\Exception('JSON decoding error: '.$message);\n    }\n}\n"
  },
  {
    "path": "features/steps/.gitignore",
    "content": "*\n\n!.gitignore"
  },
  {
    "path": "features/support/.gitignore",
    "content": "*\n\n!.gitignore"
  },
  {
    "path": "newscoop/.gitignore",
    "content": "# Bootstrap\napplication/bootstrap*\n\n# Symfony directories\n*/log/*\ncache/*\npublic/uploads/*\npublic/bundles/*\n"
  },
  {
    "path": "newscoop/.rmt.yml",
    "content": "_default:\n\n    # VCS CONFIG\n    vcs: git\n\n    # PREREQUISITES\n    #  Actions executed before any questions get asked to the user.\n    #  Custom action can be added by provided a relative path the the php script. Example:\n    #   - relative/path/to/your-own-sript.php\n    prerequisites:\n     - working-copy-check\n     - display-last-changes\n\n    # GENERAL CONFIG\n    #  Apply to all branches except the one from the 'branch-specific' section\n    #  Like prerequisites, you can add your own script. Example:\n    #   - relative/path/to/your-own-sript.php\n    version-generator:\n        semantic:\n            allow-label: true\n    version-persister:\n        vcs-tag:                           # Release with VCS tag\n            tag-prefix: ''   # Prefix any tag with the VCS branch name\n    pre-release-actions:\n        bin/UpdateApplicationVersionCurrentVersion.php: ~\n        composer-update: ~\n        changelog-update:          # Update a CHANGELOG file before the release\n            file: DETAILED-CHANGELOG.txt\n            format: semantic\n            dump-commits: true\n            exclude-merge-commits: true\n        vcs-commit: ~              # Commit the CHANGELOG\n    post-release-actions:\n        vcs-publish: ~\n"
  },
  {
    "path": "newscoop/DETAILED-CHANGELOG.txt",
    "content": "\nVERSION 4  NEWSCOOP 4.3\n=========================================================================================================\n\n   Version 4.4 - Newscoop 4.4 minor release\n      08/02/2016 13:42  4.4.7  Newscoop 4.4.7 release\n         7f5a968 Add information about not supported MySQL \"strict mode\"\n         a945fc8 Revert \"simplify registration confirmation\"\n         530c86a simplify registration confirmation\n         17a0534 correct error code\n         1727f85 CS-5923 - After upgrade: fatal error on article editor opening due to topic stuff\n         66db93e CS-5949: Adds updating of article modified time on topic changes\n         fee1b11 fix spec\n         14a3d2c update comemnt in code\n         aa9821b remove publication aliases on publication removal, don't set publication in listener when not exist and is still attached to alias\n         fa3677b don't set session lifetime if it's set to 0\n         418018d add language to url, set it on rendered template\n         f880438 CS-5925 - list_subtopics on empty topic (i.e. root) does not respect order constraint\n         030e5bc [feature] implement feed controller\n         9c7fd33 CS-5938 - Job scheduler doesn't execute task if notification isn't enabled\n         9b3baf9 updated translation resources\n         206974a remove dump, don't sett cookie in request paramerer bag, change TOL_Language cookie parameters\n         6967786 remove connection between session lifetime and php gc, allow to login on frontend with username, cover /auth with symfony firewall\n         3b806e9 fix spec for BackendPublicationsController\n         55ed031 add links to docs under docs.sourcefabric.org\n         6876303 move cache_reset file to cache/{env}/cache_reset\n         7708dc9 [CS-5844] fix implementation\n         91d23b5 CS-5931: Moves language setting code to helper, instead of view\n         354dad2 CS-5931: Reverting changes\n         e07139e CS-5931: Persists locale from Symfony request to Zend Smarty View\n         7534240 AZ-278 - Issue with indexing of articles - remove commented code\n         a1bb9d5 AZ-278 - Issue with indexing of articles\n         a2a38ef ignore comments for not existing articles\n         8778e2d updated translation resources\n         4b0bad4 updated translation resources\n         e4470a1 CS-5941: Adds charset as well to header\n         81dd223 CS-5941: Sets different content-type for rss.tpl or atom.tpl templates\n         4ed7279 CS-5933: Forces getSEO() always to return an array and fixes typo\n         b91fd21 CS-5942: Adds check if request is set\n         99254ca remove unused hipchat notifications from travis\n         5985b49 update outdated tests for phpspec\n         beb8398 simplify repository method, use better way to checking if request is secure\n         967b131 add support to filter articles by section in /articles api resource\n         1fd9944 fix code typo\n         41a865e handle ssl and proper protocol behind proxy\n         9c1749a removed Visible to non subscribers switch - moved to paywall plugin\n         9089db1 AZ-266: Typo\n         84072f6 AZ-266: Add script to run webcode for many many webcodes\n         0cc66eb AZ-266: Adds return status to webcode command and removes weird loop\n         4a140ac simplify code in PlaylistsService\n         6864636 remove broken upgrade script, improve errors handling in publication edit form\n         456fdbc updated translation resources\n         fac026d updated translation resources\n         eea522a enable sluggable extension\n         0fa08f9 improve fetching topic articles\n         cecf521 polish and simplify code for front page template theme setting feature\n         d2d526b add support for comments likes and dislikes, render images, snippets, links and more in api this same as in template\n         b3c1e2e Fix issue with 500 error when session not exists in request object\n         eb3388a CS-5931: Stores language in session\n         82ca2a0 CS-5930: Removes unneeded parameter\n         3d29357 CS-5844: Initial commit\n         c5211d2 CS-5844: Detect language by uri parts, then issue\n         d714d20 Probable fix for multi theme handling per issue and language\n      19/10/2015 19:04  4.4.6  Release of Newscoop 4.4.6\n         aac2ece Adds missing echo\n         8d0cc94 replace addError with addWarning\n         e901088 rename title to name\n         8bb5849 AENV-540 - Make name/title field consistent for playlists api - improvements\n         978cfab AENV-540 - Make name/title field consistent for playlists api\n         3797e0e Added endpoint with the list of playlist the given article belongs to\n         25f39d6 fixed script\n         cea5daf hide label when array is empty\n         cfa7a0e fix upgrade scripts\n         1e7a3c7 updated translation resources\n         6640e3d updated translation resources\n         adb3e92 CS-5429 - Topic list is opening too long in article editor\n         bc39231 hide featured articles modal's close button\n         f644c69 updated translation resources\n         e8bf2e1 updated translation resources\n         0552485 updated translation resources\n         b43389e use Number for Article issueId (bug). Use Y in public.\n         f1a0633 updated translation resources\n         93771b8 updated translation resources\n         ecf2190 CS-5913: Trim and remove duplicate spaces from author names\n         23ecb63 fixed getting articles by section number\n         8db76c6 Revert \"fixed getting articles by section number\"\n         63ebd0f fixed getting articles by section number\n         d5fa0f5 Fixes languages codes missing for Azerbaijani, Hungarian and Danish\n         a4807e5 Make RFC3066bis field available in templates via rfc_code property\n         0dac142 preload featured article list by providing an extra parameter in url\n         8cbe547 add option to fetch hidden article comments\n         88707e2 added option to override locale from get parameter\n         ecd8b47 CS-5914: Removes reference to non-working composer install command\n         a31d83f Use proper quality for cropped images with png format\n         a4674a0 CS-5913: Update author management page\n         1c659cb CS-5913: Adds translation to yml file\n         f0e9727 CS-5913:  Prevents adding of dplicate authors with the same full name\n         0154395 CS-5913: Implements optimized author ReadName mechanism\n         4c2d527 Changes themes field to text (needed for multiple templates under playlist)\n         b00b9ba updated translation resources\n         4a3d268 CS-5910: Undoes optimization to reanebl in article pagination\n         e0c6455 IM-2915: Removed date limits from search datepicker\n      13/08/2015 09:24  4.4.5  Newscoop 4.4.5 minor release\n         bb7edfe Adds auto increment to article playlist id\n         b40e46d updated translation resources\n         3df4f56 updated translation resources\n         ff63bb5 Improves popover text for rich text captions related settings\n         10f9e3c updated translation resources\n         180bd31 CS-5908: Adds updating of time_update when workflow_status changes\n         695ce5e CS-5907 Typo and ambiguity in core string\n         ce77c0e updated translation resources\n         a17ef9e updated translation resources\n         db27b20 removed reloading after removing comment, added option to check comment with just clicking in row\n         63580e7 Add validation for meta properties in publications form, fix some minor ui issues\n         5ec786c CS-5898: Use issue number fetched from db\n         f71a3b5 hide visible for non subscriber only when plugin is not enabled and article is public.\n         486286c add support to Imagick\n         944c30e setup default images (generated by Newscoop) quality to 90 (from 0 to 100)\n         25e5222 CS-5903: Adds DISTINCT so related article numbers are only returned once\n         1c79915 CS-5900 - Translations for legacy plugins dont work anymore\n         7981832 TW-275 - After update: Attaching a topic to an article doesnt work anymore\n         131f909 CS-5895: Adds custom redirect to confirm action\n         49e0dd6 TW-236: Disabled escpaing when RichTextCaption setting is on\n         2049134 updated translation resources\n         3f5b03f updated translation resources\n         e4bd5e1 BN-220: Always close transaction\n         5b00d53 CS-5890: Returns null if there are no lists in theme\n      13/07/2015 12:30  4.4.4  Newscoop 4.4.4 minor release\n         d3150bc CS-5888: Adds parameter published to list_related_articles\n         38de286 use proper left join for thread, move search to header - it shows up mor comments on first screen\n         8b82051 improve MetaTopic class\n         cc5aa8c fixing metatopic class - get results as an array each time\n         4a8de20 fixed displaying subtopics - missing parameter\n         c2de384 improve detecting and updating plylist templates\n         271cc5d CS-5880 - Save of order is not working for root topics in topics management\n         7c15658 comment out php values in htacces and display a proper value\n         4d5077e CS-5878 - Newscoop 4.4.4 allows only 100M even if php.ini allows higher upload max size value\n         0c64d4d updated translation resources\n         a753dfc updated translation resources\n         06e1b8c updated translation resources\n         4945dbf CS-5867 Increase the height of the modals in Newscoop to take almost full height of the browser window\n         f93923f CS-5871 Improve image caption in admin interface\n         77ff032 fixed showing topics checkboxes in Firefox\n         de6a516 improve text\n         a51855d CS-5868- adapt the topic design to show more topics in a window\n         90e61eb [Improvement] Add links to REST API documentation in admin ui\n         525c86f rename method\n         e733e51 CS-5804 - Subtopics list broken\n         572aaff [CS-5863] [Fix] User without user type can edit and delete comments\n         7d4d8a9 CS-5672 - Due to missed several fields in System Preferencies form the Save function doesn't work\n         ae0b88a updated translation resources\n         fb42c17 updated translation resources\n         fcc26ae CS-5861 Update link to user manual\n         52d4c67 improved slideshows\n         83dbc07 added thumbnail handler\n         1e1d3b1 slideshows improvements\n         99e6532 remove old file\n         39b8d2d change function name to uri from url\n         c1360a1 don't update change update_time on article update\n         e4075b3 [CS-5853] [Fix] Date of articles in related articles search in the modal is always current day\n         55bf96a [CS-5851] [Fix] Option to show photos in full size\n         f7ae02b [CS-5822] [Fix] publication management: switching url type does not work\n         f34c9dc CS-5854: Adds css fix so select2 will keep the same width\n         15614ab CS-5461: Implementes $gimme->article->rating_enabled\n         465df6e set fallback translations to english by default in bazinga bundle\n         5cb4bb9 CS-5854: Adds checkbox to search in hidden article types\n         70853e2 added query to upgrade scripts - article_language column\n         8c553f2 fixed articles search by topics\n         e378cf8 TW-250: Adds allowfullscreen attribute as valid\n         dda92ee fixed count by menthods\n         3ff1da0 fixed adding root topic\n         e2fa6c1 [CS-5848] [Fix] Properly save article properties\n         a16341d make cache key aware of the article number\n         b5eeaf5 Changes url seperator to / instead of OS dependant directory seperator\n         4c9ab14 TW-246 - topic-Management\n         7eb197b fix wrong collumn name in indexes\n         eb03ac2 updated translation resources\n         83190f7 updated translation resources\n         3a7b02f remove not needed code (wrong merging)\n         b7f99ae [CS-5846] [Fix] Default order of available articles in featured article lists manager should be by recency\n         3669df6 fix spacing\n         4a35ecd AENV-504: make inputfields for width and height for vimeo/youtube snippets mandatory updated metadata in campsite_core and upgrades sql\n         26e5a3f replaced sql script with silex script\n         639dd39 fixed articles ordering\n         7b8f51c Adds check if article to be deleted actually exists\n         8a3be16 CS-5779 - Scrolling in playlist is not working for the second playlist if playlists are so long\n         ad20e7c updated translation resources\n         7f5c09a updated translation resources\n         83a7d16 AENV-503 - adapt save button behaviour in the attach slideshow modal\n         d17ee14 improve messages\n         a607af7 CS-5825 Better labels and tooltips for Article Type field management\n         318ef74 BN-200 - Search article by author is not working in Playlist management\n         3ca5712 CS-5802 - instantly remove items over limit\n         cbd29fc Adds Docker instructions to README\n         26d0d7e Adds default cron\n         6e56952 [CS-5825] [Fix] Article Type field controls Show in Editor and Show/Hide have no function\n         ebd266b Fixes cron command\n         4560f5a CS-5802 - Featured Article List limits do not work as expected\n         2236933 use public function in cache key, clear chache key on comments status update from article save action\n         fb0e347 CS-5806 - New Topics language filter does not work when session cookie expires\n         099db89 CS-5809 - Translating a subtopic auto-fills the parent topic translation field\n         34a71ea CS-5810 - Clicking a topic delete button twice throws a 'Failed to find topic by ID' error\n         e9a4a7e [TW-243] [Fix] Comment-function doesn't work\n         89bbe1b [CS-5811] [Improvement] Interface for uploading private plugins results in white screen\n         ddd3d7c Adds prod/dev env switch and runs cron server\n         f4f479a [CS-5837] [New Feature] add support for other editors in smarty link function\n         bad60b8 Change indentation for yml, shell to bash and tells tail to keep retrying\n         def602e [CS-5832] [Fix] Comments article preview shows title and date multiple times\n         b9ae549 [CS-5814] [Fix] Article Edit sidebar still has the switch 'Visible to non-subscribers'\n         77f0b8f uncomment volumns\n         ff7641c clean install sql and snipptets queries\n         841c93b [CS-5832] [Fix] deactivate comments ordering by article name, allow showing comments for pending articles.\n         b238644 remove unused entrypoint.sh\n         c5c9a95 latest docker build\n         f87011c CS-5799 - Can't select previously created Featured Article Lists via drop-down menu\n         b2f0612 CS-5803 - Tags shown to user while the Featured Article List page is loading\n         e1088dd fixed exception parameters\n         65079f8 CS-5821 - loading spinner for editorial comments never stops\n         91efe32 make use of only oembed and extract endpoints\n         02bee0e use zend request params only when available\n         0defa79 set a proper jms serializer version\n         92b1d73 remove not needed header\n         3463878 keep breadcrumbs for editing user\n         085fd36 remove jms serializer commit restriction from composer.json\n         194278c get error message from the response\n         fb32afb use black color for active select's\n         5d1c81b use value from head title in page titles again\n         166e735 CS-5606: Changes temp dir to project cache dir\n         fd08e64 change parameter format to string\n         39da243 added api key handling to the embedly controller\n         edfa7cd fix snippets sql for both upgrades and new installs\n         c2e8911 Initialize loader even when translations files are cached\n         40d469a Revert \"Aenv 495\"\n         99d6650 updated translation resources\n         055e82c add embedly enpoint field to snippets for upgrade\n         6d233b4 updated translation resources\n         3c074da updated translation resources\n         7949c10 add endpoint field back to demo data for embedly snippet\n         9a6f9e7 TW-75: Adds parameter to sort articles by publication date\n         ad29970 fix wrong translations labels\n         4ed0b78 uodate also install sql's\n         b8d1a82 use default NULL instead 0\n         c560163 CS-5819 This capitalization does not appear in Newscoop source code\n         d8474af make IdPublication nullable with default 0\n         76bb862 CS-5819 Update YML files for string modifications\n         a308251 CS-5761 - \"The last article of this list has been removed\" is not translated.\n         22a6497 Buttons \"Add this article\" and \"Close\" is not translated in Playlist management\n         d6931dc improved slideshows handling using API\n         106ac5f When using tpid parameter page can get into an infinite loop\n         13653f9 CS-5819 Clarify labels for Article Types\n         0e21216 reintroduce clearPlaylistTemplates calls\n         6175e3f improve playlists articles fetching with getArticle\n         fde43db use arrayResult for fetching playlist articles ids, fetch real articles with getArticlesByCriteria\n         5400629 manual join needed article relations for api - it takes less time than left joining\n         49f6e8e replace our custom playlists articles ordering with gedmo/sortable\n         7b2b719 set proper limit\n         6381adf fixed articles listing on the playlist with the limit\n         9649dd4 improve removing left nodes, fix clearing Playlist templates, update order initializing script\n         83c2eb3 added script to remove not existing index\n         098f1b8 Adds correct way to update section_id in Articles table\n         d2fc1e7 Fixes issues with missing or wrong positioned beginTransaction calls\n         67fadc9 fixed jms serializer version to work also with php 5.3\n         f67447d serialize objects in cache keys, use md5 instead base64_encode\n         e23105a fix cache key for getArticle in CampURIShortNames\n         806a978 allow resseting article with this same number\n         f50f389 fetch language\n         7185623 fix typo\n         67c92a3 Moves script to folder with date of merging PR to prevent errors\n         f53efed Fixes issue with locale getting lost\n         c25c2a4 TW-203: Fixes error with comment search service\n         8ce3899 added utcdatetime type to the upgrade script\n         e090c8c added articles filtering by language in playlists\n         50d22e7 updated translation resources\n         700033f updated translation resources\n         04fb338 updated translation resources\n         bfb57a0 updated translation resources\n         eaf8808 IM-2792 - some article types are blank pages when opening them from backend after upgrade to 4.4.3\n         d57b96e improved auth-interceptor\n         2761544 improve sql script\n         d1a6fbc remove webcode on article delete\n         fc1c5f1 CS5784 - Playlists don't support many languages\n      26/05/2015 16:49  4.4.3  Newscoop 4.4.3 minor release\n         8c71179 add missing update sql, fix useForAll js function with tinymce\n         49c5d01 CS-5790: Fixes issue when images/files/videos/pdf folder is symlink\n         875aabd CS-5791:  Adds more clear error messages when direcotires dont exist\n         626b349 translations fixes\n         0ab991f small fixes in default templates\n         5238fb2 updated translation resources\n         385a835 get locale from translator\n         8efc6a0 CS-5724: Improves upgrade script for TimeZOne\n         992fd17 hide the \"show in editor\" option in the article type fields for switches\n         15da820 CS-5724: Adds proper time zone setting for Newscoop\n         ea73a2d add articles relation to Author table, fix comments api user checking, fix uri parameters in metaSubtitle (editor_image.tpl)\n         79e7d49 added ORM UTC datetime type and fixed playlists saving\n         9cbb0f4 fix metaSubtitle missing $request object, fix cacheKey usage\n         d4b5c58 fixed typo\n         1af69e9 removed unused method\n         8411516 improved and fixed set_topic function\n         1487df2 use site secret key instead installation_id\n         51087c5 use new getLink method to create article edit links in admin\n         bc43bb1 spaces format\n         716a2ae CS-5754 - Problem with topics\n         3f35817 clear vector after rendering\n         7291a14 add unique per instance installation_id to database cache keys\n         4189790 prettify oauth result page\n         d9dd32e update main.css\n         928b491 added oauth login-modal style\n         a6d77f4 fixed obtaining a new token\n         bbe93bd wip playlists oauth\n         0b91820 improve connected articles listing on edit image view\n         e2b40ff authorize user on frontend when signing in to backend\n         417d39a remove custom target path\n         9862d31 improved issue service\n         a74aada remove 'parent' from password recovery template\n         d18ac74 oauth token handling\n         d2e75ec disable issue listener for api\n         504e392 users logout api - simplified the code\n         8a87d32 revert services.yml\n         076a55e fixed custom handlers\n         87f4303 simplyfy and fix webcode (re)generate command\n         5fba74d check if $publicationMetadata is filled\n         5fcec47 improve rendering templates from templates service\n         c5843c1 add 404 response code for not found pages\n         a0e47a5 remove unused encoder factory from UserService\n         7923750 use cacheService for acl resources scan\n         646d3c5 remove findBy and findAll methods\n         f9ff851 ignore authentication oauth modal when session is valid\n         1dba319 fix comments\n         ff13efd added no_cache cookie handling also on frontend\n         a675ecb CS5777 - Create OAuth custom login & logout handlers\n         df1553c by default hide hidden comments for not admins on api\n         2828d5c fix broken html source view in chrome\n         de84a99 CS-5771 - Handle relative redirect uris for oauth clients\n         6b33911 CS-5658: add title for dashboard\n         d125772 CS-5658: improve admin pages titles\n         b6118f2 updated translation resources\n         96c291d S-5773: Fixes issue with upgrade which doesn't take mixed returned entities in account.\n         42987da fix login page title\n         5d6673f add and fix admin pages titles\n         7f53486 set attachment translations per language\n         08f294c CS-5761 - \"The last article of this list has been removed\" is not translated.\n         aad55b0 Buttons \"Add this article\" and \"Close\" is not translated in Playlist management\n         416eea5 AENV-462 - Change name of button \"Done\" to \"Save\" in Attach/Detach slideshows\n         5375aa1 use tagged vendors, clone default_url for url property\n         02e30c8 share security context between api and frontend, update somposer.json\n         06a5375 TW-176: Fixes issue with unserialized array in cache key\n         82a8bdd removed check for token\n         b080d76 added image width support\n         b06d29e AENV-452 - Big image is not resized on front-end\n         ca0da21 updated translation resources\n         459cd21 updated translation resources\n         5128a2f added upgrade script - update redirect_uris for defaultoauth client\n         06e3828 use real renditions url, add some details\n         5982184 move InteractiveDoctrineAuthService to onw file, fix multiple keywords search on api\n         b93420f simplify oauth obtaining process\n         e4b97fa override TokenBasedRememberMeServices and authenticate user also in zend_auth\n         8fecf4d updated translation resources\n      22/04/2015 09:35  4.4.2  Newscoop 4.4.2 minor release\n         921408c improve rmt config\n         73b3495 identations to spaces\n         1095f71 tabs fix in service\n         5193be8 tabs fix\n         327fad1 removed comments\n         d3045ea CS-5751 - Editorial comments improvements\n         18d3552 remove not used files in 4.4.2\n         46912ea keep orginal order in search by ids\n         bc127ac pass $onlyPublished to articles repository\n         730df98 one more relation usage replace\n         b8c32cf check if smarty_function_uri before initializing\n         3a273b1 fix comments management and remove article relation from playlist_article entity\n      16/04/2015 10:27  4.4.1  Newscoop 4.4.1 minor release\n         7945847 add cacheId parameter for display method in render smarty function\n         89218e6 context_articles table change, cache key change\n         83d99f3 playlist order fix - new upgrade script\n         5be4796 playlist order fix - upgrade script\n         cdfca8e fixed theme deletion\n         80d1f53 fixed redirect uri for oauth\n         1348379 fixed redirect uri handling when creating oauth user\n         541d3ca fixed path to login modal\n         2d7467c improve issue service\n         12f81bb expand info block by default and icon fix\n         a00d8f6 fixed multiple images in edito mode - slideshows\n         efe7795 fixed iframe width ofr support popup\n         0cdfaa8 removed duplicates from themes.en.yml\n         1b09f70 fixed playlist cache bugs\n         a460d43 remove logs from travis\n         0b65524 fix section_id and issue_id handling in Article entity.\n         1dcafa0 fixed fancybox border\n         93baaba revert section/issue relation change\n         40b373c add dev.log to end of tests\n         f5cfbf2 [big change] fix article issue/section relation, fix comments manager after change on thread property\n         f71d3a2 fix comments ussage after change for thread property\n         c2a7be5 fix handling xml content  with single items, add comments\n         d2b2498 fixed upgrade script related to playlists\n         aea5908 rebuilt create view for slideshows to suit new design\n         9bccb33 improve docblock\n         003902f optimize accessDeniedExceptionListener\n         78a1843 AENV-330 - polish newscoop create/manage slideshow modal\n         8fbf4d9 [AENV-434]: remove endpoint property from embedly snippet template\n         9d1d375 CS-5745: Adds execute bit to scripts\n         88837e1 provide default redirect_uri route with oauth_result.tpl template file rendering\n         91d8c71 fix current cache driver cache flushing\n         dd3976c don't use getArticleNumber from comment entity\n         c9b182f change article_num ussage to thread when work with comment entity\n         abf86a7 remove not needed files\n         7d9d68a allow posting anonymous comments when it's allowed in publication settings\n         c23a160 destroy interval after it stops\n         f6cb020 fixed editrial comments translations\n         e983e1f added handling when token expires - added modal\n         8f4b878 improve editorial comments inicialization\n         4d5d823 optimized system preferences service\n         ea5056c revert singleton for adodb in DatabaseObject\n         071bbb9 implement singleton for adodb in DatabaseObject\n         8944b53 do not use this in static\n         082e83e optimize DatabaseObject - don't fetch adodb in every function\n         c0c07ad encode articlesModificationTime value\n         eecc4ea add missing docblocks\n         61ca702 introduce support for theme playlists configuration, clear defined templates on playlist modification\n         ae1b3d8 display 0 when no playlist limit is set\n         2e35933 added opera support to readme\n         3f3741f changed function comment\n         8076fc0 added handling when token expires - ported from aes plugin\n         7b6ad09 added handling when token expires - ported from aes plugin\n         6a1366e removed unnecessary comment and code form auth interceptor\n         f0ff2e5 fixed bug in playlist modification datetime - ignored timezone\n         0039879 fixed search\n         c06f7bf disable save and add to lists buttons when no playlist selected\n         740b9c1 clear temp list on playlist change\n         877dd9d CS-5707 - Define Newscoop requirements related to supported browsers\n         5473c6f CS-5744 - Move custom DQL functions to config.yml\n         c5a7a73 check for array index before using it it install_conf, replace pear errors with exceptions in image class\n         41ece29 CS-5669 - update the Readme file to tell users about the issue with running Newscoop 4.3 on Debian with PHP version 5.3\n         8fefff5 revert strlower on images extensions\n         5c73ba0 fix endless loop in campcontext with tpid parameter in url\n         a657566 cache seourlend in metaArticle\n         2d0bc76 fix MetaSection preventing caching empty objects\n         ddab515 fix ArticleImage, don't cache empty object in metaSection\n         338f37b changed getArticlesByIds to getArticlesByCriteria function name\n         0cbe5ba AENV-445 - Related articles is not working by API 500 message\n         6124002 improve performance in ArticlesList, reintroduce caching in ArticleImage\n         ccb2508 fixed playlists bugs - auto remove last item etc.\n         b96a672 improve cacheService ussage in ArticleTypeField\n         2188811 remove duplicated code in MetaSection, improve cacheService in ArticleData\n         eb365fa CS-5733 - change UI for the playlist revert alert\n         17ffd70 fixed creating article without issue and section via api\n         85e0d8f added description to article type form\n         df57541 revert cache key parameter for article images list\n         71bc9d6 optimize public resources listener\n         bc52f33 lower images extensions, optimize cache keys, fix articlemodificationtime in playlists\n         e9953cd added authentication exception\n         6adfdce fixed failed authentication handling\n         d9d7892 revert user check\n         c2ea1ed optimize public_resources_listener\n         ef480c6 optimize cacheService ussage\n         3632f0d fixed issue and section relationship in article entity - missing issue, section\n         d618af8 handle current user when not logged in in comments\n         2799d21 Revert \"fixed issue and section relationship in article entity - missing issue, ...\"\n         9fe8a8e fixed issue and section relationship in article entity - missing issue, section\n         4f4a1a9 Adds support for using old style topic names (with locale appended)\n         83706ed performance fixes - catched on production\n         584f4d6 fixed proxy regeneration in upgrade scripts\n         b35d902 update 4.4 upgrade doc\n         a5809ee fix proxy regeneration for publication entity\n         c9759c8 CS-4863: Removes ingest code from core, code from css and config files  - Removes ingest rules form ACL table  - Adds fake permissions for old auth\n         a868d8e save wip\n      24/03/2015 16:08  4.4.0  initial release\n         2f8dd0f fixed proxy regeneration when already generated in upgrade scripts\n         34783f4 improve rmt config\n         734e5ed optimize search query\n         2bbad8f fixed loading more articles on scroll - afterlist save\n         1c3dad1 added track by\n         098b175 removed height from the editor image tpl so images can be disppplayed responsively\n         2d9f639 fix translation\n         e3369b8 fix issue with dissapearing articles\n         f9079dd display revert popup when adding article from preview\n         41937ab revert button fix\n         f93f95f changed onEnd to onAdd events in playlist app\n         e137cb6 Set new codename for minor release\n         268a8f5 updated translation resources\n         f01cbe7 updated translation resources\n         b5bcd71 add missing domain translations\n         e921f3a fix typo in translations domain\n         ea4421e updated translation resources\n         ded1774 CS-5735: Changes find into findOneBy and catches exception if not found.\n         e3840e7 fix admin menu under low permisions, update vendors\n         b1fd64a CS-5732 - User can add into playlist same article multi times in FF\n         218582e CS-5731 - playlist limit alert \"limit reached - should I revert\" is not being triggered on firefox\n         068b04b Set new codename for minor release\n         0e93c9d set descending sorting in article repository\n         633d2aa CS-5709 - Playlist is not correct working with long list\n         b153f14 updated translation resources\n         c249df1 updated translation resources\n         f0b167a added translation domain\n         4b5165f fix playlist limit when saving and fetching more articles on scroll\n         d75258f fix limit\n         d350920 added spinner when loading featured articles\n         6e800d9 disable proxy regeneration, laod other annotations\n         165b9d6 added spinner when loading featured articles\n         ee75778 [CS-5729] add upgrade script for initializing playlists articles order, remove some not used files\n         7553d46 improvements to list saving\n         0ff18f0 disable proxy regeneration, laod other annotations\n         ee78558 CS-5728 - Remove limitation from loaded playlist, load more on scroll when no limit\n         cffecc9 Update BridgeController.php\n         a2923f5 [CS-5720] Fix Insert/edit internal link\n         59e37d1 added option to not create default client in console command installer\n         c5547a3 fix try catch for topics.php script\n         c469078 fix renditions cropping with in implementation\n         d81433a create oauth client when installing newscoop from console command\n         bd35900 added fixed rss fields links to dashboard widgets\n         a47652d mapping fixes\n         5144978 fix some of the not valid associations\n         09108b0 fix add_client.php script to not fail when diffrent files permissions\n         56e40bf CS-5721: Adds composer.lock for updated composer.jsont\n         d18f1d7 Fixes issue\n         e6410b8 catch Entity not found exception when topic's language cant be found\n         a412c53 clear cache before adding oauth client\n         87e8574 CS-5721: Fixes issue when using <% or %> in templates with smarty\n         2ea50ba improved topics script\n         30a545f CS-5723 - AES is showing incorrect language for added topics\n         916cbd5 CS-5715 - Remove not used core files in 4.4\n         0ec87a8 updated docs\n         62f3414 CS-5718 - added and changed upgrade docs\n         4159f61 move editorial comment sql so the script can be executed\n         6d06f31 revert exception handling\n         2553179 fix bug in authors table causing: headers already sent issue\n         3b0a9ed CS-5684 - Front-end is not support correctly percent values from AES\n         9834873 CS-5642 - Article Editor removes the img tags for imported articles\n         fb420df CS-5717 - fixed topics script\n         379b8f0 CS-5714 - Restore of backup is not working from 4.3.2 to 4.4.0 RC\n         a060634 CS-5719 - DB query errors for dashboard widgets\n         c4c2e4b CS-5717 - Integrate script which converts topics into Newscoop\n         37ef66b CS-5666 - Stop creating newscoop-indexer.lock in the root of newscoop instance\n         093a8e1 fixed topic unlinking - behat\n         bb38717 require MetaDbObject class in MetaTopic class\n         93a560c CS-5708 - Add info how to install Newscoop from the console\n         00ccfde CS-5666 - Stop creating newscoop-indexer.lock in the root of newscoop instance\n         222220e added isset\n         e755d0f Adds link to 'Add publication'-button, if no publications are available\n         27f927e added try catch block to getDefaultAlias function\n         9e94a10 fix documentation block for getServerOS in bug reporter\n         de7c397 added php version and OS info to bug reporter\n         0862d1b clear 'topic' namespace\n         19a41c6 fixed image width for user image in comments management\n         807b0e2 added 'site' for backward compability\n         a256d18 fixed subtopics list and added caching to it\n         4198d32 fix install plugins command\n         0efb477 remove request\n         33bbd59 throw exception when alias not found\n         008d056 provide default alias for creating oauth default client upgrade script\n         863979f changed preview function name\n         4c63ea7 fixed article preview for related articles\n         804a13f fix sections API, article translate url\n         6973425 CS-5713 - Namespace alias can't be detected in Topic service\n         f3394db updated translation resources\n         71361e7 updated translation resources\n         b4685fe updated translation resources\n         e522575 updated translation resources\n         4014748 CS-5712 - Show popup when changing list name\n         00302f8 revert action improvements\n         56197f7 CS-5711 - Remove last item from the list with possibility to revert\n         47d84cf added alert, changed draggable placeholder, removed load on scroll\n         5ad70b2 changed DateTime parameter when locking, unlocking article\n         201dff5 AENV-428 - image captions not updating\n         fc2743b updated translation resources\n         1a9f857 updated translation resources\n         07c0d62 updated translation resources\n         7b23a29 AENV-356 - Related articles is not showing correctly issues - added parameter\n         5deae2e AENV-356 - Related articles is not showing correctly issues\n         8269cc5 A proper merge of #918 into 4.3\n         df845a4 CS-5656 - Error in section articles API - languages mixed\n         68567b3 CS-5656 - Error in section articles API - languages mixed\n         9a9b367 removed wrong phrase in articles.en.yml\n         0bff89f updated translation resources\n         0bea33b Release of new version 4.4.0-rc\n\n   Version 4.4 - Newscoop 4.4 Release Candidate 1\n      04/03/2015 12:01  4.4.0-rc  initial release\n\n   Version 4.3 - Tag Newscoop 4.3 stable release\n      23/01/2015 11:35  4.3.2  Newscoop 4.3.2 minor release (bugfixes)\n      28/11/2014 14:46  4.3.1  \"Newscoop 4.3.1 minor release\"\n      06/11/2014 09:21  4.3.0  initial release\n\n   Version 4.3 - Newscoop 4.3 release candidate\n      17/09/2014 13:53  4.3.0-rc  initial release\n         6d600e6 update rmt version in composer.json\n         baa188e updte rmt config, update vendors before release\n         20550b1 make 'public' folder writable during Newscoop installation\n         ad2461f CS-5488 - Missing text \"Back to Article Types List\" in Article type fields\n         b23fd52 updated translation resources\n         3e7e54a text/blog can not have default value in older versions of mysql\n         61b8dca CS-5503 - Upgrading Newscoop from 4.2 -> 4.3 issues\n         a59abaa add sendmail to recomendations\n         9895fc2 use insert ignore instead try catch\n         267debb replaced  variable with null in GenericEvent when setting user points\n         09e4433 CS-5497 - Newscoop installer strings\n         8bd4464 CS-4726 New Installer design - improved errors displaying\n         c8a3e9b CS-4726 - New Installer design\n         905bcd1 ignore existing index in cache insert\n         d7a6b5c (CS-5496) Move templates service from classes construct\n         f2fb3a5 updated translation resources\n         1295d81 updated translation resources\n         0430c77 CS-3121: fix ignore_language, fix seting language in campcontext\n         06c39e6 show smarty errors on dev only\n         916c2c4 add sentry channel to dev and prod, log with exceptions\n         382626c updated translation resources\n         b2b49ce revert articles_list caching - better keys (based on context) are needed\n         667d792 remove broken google gadgets widgets\n         35f5dd1 update composer files (new monolog)\n         3fc4312 use custom monolog chanell for sentry logging, setup errors handler on legacy code\n         227324a updated translation resources\n         6a931cb update composer.json and lock files\n         39de14a Revert \"Revert \"[CS-4762] Fixes missing Georgian file for jQuery datepicker\"\"\n         cd58bc8 CS-4849: Fixes issue with placing description as image text\n         e64d370 CS-4849: Removes debug information\n         906a513 CS-4849: Removes unneeded line of code.\n         7a4523d CS-4849: Adds newline and retrieves language from Request instead of cookie\n         2d9f52f CS-4849: Adds newline and retrieves language from Request instead of cookie\n         afacc89 Setup Newscoop Community Sentry channel, log legacy errors to sentry.\n         7c69d07 Add posibility to check if plugin is installed and enabled from template\n         ab2b24b updated translation resources\n         383acc5 CS-4752 - topics hierarchy overlap on topic deletion\n         31f47ff updated translation resources\n         83d3113 fix article image captions screen\n         aeaa2f4 fixed translator params for listing issues\n         41144d2 fixed translator params for listing issues\n         7e741ac updated translation resources\n         1d4bf22 updated translation resources\n         fda8b4a updated translation resources\n         a83a711 updated translation resources\n         1090e8e updated translation resources\n         178933d updated translation resources\n         784ea2f updated translation resources\n         3c1129d updated translation resources\n         b8b6912 updated translation resources\n         b5433d0 updated translation resources\n         8add851 CS-5446: Replaces putGS with translator\n         c62e52e CS-4849: Renames variable name\n         103e055 Revert \"CS-5446: Disabled 'add article_type' button if viewing all fields (with no article_type selected)\"\n         4b9f028 Revert \"[CS-4762] Fixes missing Georgian file for jQuery datepicker\"\n         4b1753d CS-4849: Implements rich text captions\n         8de6a9b WOBS-1105 added dynamic block for editor_image.tpl\n         dbff717 updated translation resources\n         ca570c3 CS-5403 Fixes corruption in the Languages, Countries and LocationContents tables\n         527af29 CS-4849: Adds rich text captions preferences\n         a43ce8c add upgrade message\n         da75c54 added method to remove system preferences from database\n         f6956b2 [CS-4762] Fixes missing Georgian file for jQuery datepicker\n         0e53d67 CS-4690: make dafault path as empty string instead null\n         8505a35 CS-4690: fix api user image link, add getBaseUrl method to linkService\n         f0432d1 WOBS-3390: missing image description in aes media box\n         ba93ae8 updated translation resources\n         f56d914 updated translation resources\n         083203c updated translation resources\n         6ea79a5 fix article move action\n         6fb53e1 updated translation resources\n         a3aa28b updated translation resources\n         c43e1b2 CS-5477 Armenian code has changed from hy to hy_AM\n         e166851 CS-4911 - Delete author biography\n         82926a7 improve lists caching\n         6c77b9a optimize console commands to not output alerts by default when commands are executed\n         8c1064f updated translation resources\n         2b6f035 CS-5408 - Support is not working on newscoop backend\n         583d41b image zoom link improve (WOBS-1105)\n         624e02d returned error message (WOBS-1105)\n         93d8506 WOBS-1105 - make all images with width more than 1000px enlargeable on click\n         99380d8 updated translation resources\n         dbd0050 updated translation resources\n         fd563ab removed dump\n         69f71a1 CS-4887 - Multiple localization bugs on theme management page\n         ee471aa CS-5472 - Resources directory contains obsolete translation strings\n         defe107 CS-5439 - Typo in Newscoop smarty string\n         e0bda6a CS-5479 - Typo in background jobs string\n         0a84eb8 improved crontab.php script\n         c84c9a2 updated translation resources\n         588de12 updated translation resources\n         01a2cf6 updated translation resources\n         d88aac0 added details url for cron jobs\n         4ef803b added sorting to status and notify columns in cron jobs table\n         7b9349d added log:maintenance cron job\n         eae1eba CS-5459 - added displaying author name also to featured article lists\n         efbee96 added 302 status to API documentation\n         9363292 scheduler command fixes\n         48e7595 upgrade cron jobs upgrade script\n         f0c83c6 fixed typos\n         32c7fb1 added email notification for cron jobs in system preferences\n         eb3e3a2 added email notification for cron jobs in system preferences\n         9ab0058 CS-5434 - improve password recovery\n         47f4b5f CS-5459 typo\n         c5d5af2 CS-5459 - display author name in related articles interface\n         a871e29 updated translation resources\n         d9f1ebf WOBS-3382 - comments deactivated by default for some blogposts\n         6058baa added 302 status code in user login API when _target_path param is given\n         d83c7ff [CS-5475] Manage background jobs via backend\n         fa9efb7 Lets the menu correctly show the URL if it's a dropdown element\n         cf2b99c updated translation resources\n         a0693fd WOBS-3381: Replaces manual check if webcode exists with internal getWebcode() method\n         a0e4d0f updated translation resources\n         c72f047 updated translation resources\n         b4516c0 Changes the URL for redirecting to the Plugin vs the old Edit screen when creating a new article\n         ea45f37 CS-5446: Disabled 'add article_type' button if viewing all fields (with no article_type selected)\n\n   Version 4.3 - First Newscoop 4.3 alpha, released with liip/rmt, close to code freeze, first weekly release, enjoy\n      28/07/2014 13:41  4.3.0-alpha3  fix broken alpha2 release (missing comma in last commit).\n         99aae92 fix missing comma in login api\n      28/07/2014 12:56  4.3.0-alpha2  Newscoop 4.3-alpha2 weekly release, performance fixes, support for _target_path in api login, fix for serbian language, ui for article image captions, updated translations\n         9390282 update rmt release script\n         557b6f5 update lock before release\n         0e508c5 Merge pull request #773 from takeit/redirect\n         377a907 WOBS-3380 I am not redirected to the form to enter a classified, but to /dashboard\n         4d0ada7 updated translation resources\n         88d6589 updated translation resources\n         5b844ca Update rmt to latest version\n         2929573 Merge branch 'danielhjames-master'\n         4db0b3b improve menu translations\n         a449e15 Merge branch 'master' of https://github.com/danielhjames/Newscoop into danielhjames-master\n         5d19590 updated translation resources\n         bf0c52a Merge pull request #772 from ahilles107/CS-5086_article_image_captions\n         48a59d7 updated translation resources\n         c07bb04 CS-5086: introduce article specific captions and keeping image description\n         286fb3c Merge pull request #770 from ahilles107/master\n         f8e22f1 fix creating object_id in article\n         5d91f0a clear article image cache, fix namespace\n         67763e4 clear article image cache\n         4ee2e07 Merge branch 'master' of git://github.com/sourcefabric/Newscoop\n         43f7338 clear comments cache after chnaging status\n         89e51dc updated translation resources\n         3552fae updated translation resources\n         3572587 Merge pull request #768 from takeit/master\n         5d1e67c update symofny2 to @dev\n         7dcca36 Merge branch 'master' of https://github.com/sourcefabric/Newscoop\n         36d0b2b Merge pull request #766 from sourcefabric/revert-765-articleTypeExtension\n         98b66da Revert \"WIP: Extends the ArticleType adding a showInEditor option\"\n         33eb1c8 Merge pull request #765 from terwey/articleTypeExtension\n         721afa5 Extends the ArticleType adding a showInEditor option\n         1281680 Merge branch 'master' of git://github.com/sourcefabric/Newscoop\n         dc21dad Merge branch 'master' of https://github.com/sourcefabric/Newscoop\n         37a73c1 Merge branch 'master' of https://github.com/sourcefabric/Newscoop\n         440ea5c Merge branch 'master' of git://github.com/sourcefabric/Newscoop\n         01ef46d Merge branch 'master' of git://github.com/sourcefabric/Newscoop\n         38239c4 Revert demo data file, it is corrupted (CS-5403)\n         6da4b0f CS-5415 Eastern Armenian corrections and short month/day names, thanks Mikayel!\n         3b519bb CS-5415 - corrections for Eastern Armenian\n         e303e76 CS-5415 Add Armenian support to Languages table on install and upgrade\n         f611d55 Apply CS-5418 fix\n         b967ec2 Apply CS-5404 fix and correct Azerbaijani weekday names\n         6afa590 Corrections to Azerbaijani days of the week\n         7e89527 CS-5398 Add Danish to Language table when upgrading\n         1222c8d Merge missing month and day names from 4.2.x branch\n         e236c41 CS-5398 Add Hungarian, Danish and Azerbaijani to core SQL\n         f1b3f58 CS-4603 Correct code for Serbian Latin is sr@latin\n      17/07/2014 22:28  4.3.0-alpha  initial release\n         c8e45e9 move RMT to newscoop dir\n         4bcc122 Merge pull request #764 from sourcefabric/pre_alpha_fixes\n         974f7ec update composer\n         0804611 fix plugin manager - enabled/disabled method\n         709f59f Merge pull request #763 from terwey/editorBundle\n         cf4691a Merge pull request #761 from ahilles107/plugins_fixes\n         32b0372 Merge branch 'master' of https://github.com/sourcefabric/Newscoop\n         ee3573d Merge pull request #762 from terwey/pluginManager\n         8c21b2e remove unwanted comment\n         758bb52 Implements a rudimentary way to check if the AES plugin is Enabled, if so, use a different URL\n         2b7d80e Removes the unneccesary intval\n         5ece6d9 Merge branch 'patch-1' of https://github.com/acalisma/Newscoop\n         30dd7b8 improve install sql, fix issue with not existing publication\n         e0016cb Merge pull request #760 from ahilles107/performance\n         97ed06d don't cache user object - it's serialized only with id, fix caching has_topic\n         5fe2578 Merge pull request #758 from ahilles107/protect_dirs\n         ead17a2 deny access to logs and cache directory\n         aad748b Merge pull request #752 from takeit/master\n         d124619 Merge pull request #757 from takeit/v4.3\n         19129ca composer.lock fix update\n         c392a92 Merge branch 'master' of https://github.com/sourcefabric/Newscoop into v4.3\n         875a223 Merge pull request #742 from ahilles107/performance_3\n         933a490 fix fetching user from metaauthor\n         144eaaa clear comments cache on comment hide\n         cf1c2cc Merge pull request #719 from snurolss/master\n         a6c9fa0 clear chace after modyfing article property\n         7ba5511 improve cache clearing for comments\n         dd8eda1 Merge branch 'master' of https://github.com/sourcefabric/Newscoop into performance_3\n         25318b8 improve cache clearing\n         c0b8245 Merge pull request #754 from ahilles107/master\n         2764ef7 Merge pull request #756 from takeit/installer\n         adaf1c3 autoId table fix when fresh install\n         cf8f28f autoId table fix when fresh install\n         1d4a693 Update MetaArticle.php\n         e7338dc updated translation resources\n         e355fe8 updated translation resources\n         1656fb4 add url, issue, section to article resource in api, fix playlist articles resource, fix statistics collection popup\n         0c1e205 fix cachekey in ArticlesList\n         72b11b3 fix wrong var name, add lock file\n         eff39d8 move secret key and installation id to install process\n         90b2350 Merge pull request #753 from m038/WOBS-2944\n         cd7f2ca WOBS-2944: Updates time_updated field for articles when toppics are changed\n         ccc346a oauth2 command change\n         7a4aa45 updated translation resources\n         43fd8f7 access token from CLI fix\n         1f7b6c2 secret key fix\n         cffe294 Merge branch 'master' of https://github.com/sourcefabric/Newscoop into performance_3\n         9df5260 Merge pull request #751 from takeit/master\n         eca40d6 remove line\n         fe39312 README.md update\n         ce4be60 behat fix\n         35bcd48 composer update\n         812fcf3 fix cache key in theme translations listener\n         3f877ad Merge pull request #749 from terwey/jsRouteFix\n         2042c19 Merge pull request #750 from takeit/master\n         23f7754 removed not used notification controller and improve upgrade script for cli\n         b9139c2 add cached objects clearing\n         f467dc3 Merge pull request #744 from takeit/master\n         47f8f31 specs fix\n         ddb3cba revert\n         5b91642 final CLI Newscoop installer fix 2\n         4a236b5 final CLI Newscoop installer fix\n         a917b43 updated translation resources\n         1484d9c oauth tables fix\n         b48fb38 oauth table fix\n         f135085 Exposes the oAuth Route\n         5f095d3 fix authorize controller\n         b70d4d1 fix\n         47ab1d0 strict standard fix\n         b910204 typo fix\n         d7010d9 authorize form fix\n         7be9a75 cahce fix\n         82917c1 Merge pull request #748 from terwey/jsRouteFix\n         6ce7946 Exposes the newscoop_gimme_comments_getcommentsforarticle_1 route\n         9de9c63 cache fix try\n         f1cf069 Merge branch 'performance_3' of https://github.com/ahilles107/Newscoop into performance_3\n         3248df9 fixes when using CLI\n         76f64d6 travis recheck 2\n         a20e302 travis recheck\n         a77353f updated translation resources\n         72ca07d travis another test\n         011ca5e Merge pull request #747 from terwey/jsRouteFix\n         2c28054 The order is important to Route, this corrects it.\n         74c018f travis test3\n         84160a9 Merge pull request #746 from terwey/jsRouteFix\n         76b6aff travis test2\n         b645620 Properly quotes the word expose\n         da98c6a Merge pull request #745 from terwey/jsRouteFix\n         ea96f5f Unexposes the DefaultController\n         c8982ed Unexposes the ConfigureAPIController\n         5bcf3ee Adds the expose=true option to the Route because the routing.yml from FOSRestBundle doesn't leak this information through to the JSRoutingBundle\n         1328a3d travis test\n         d440dc0 updated translation resources\n         2b3d55f travis check\n         92953b1 fix\n         659e89b install assets fix\n         8ef76f4 Merge branch 'master' of https://github.com/sourcefabric/Newscoop\n         717dcaf travis revert\n         e0e8b2e travis check2\n         fc763c3 travis check\n         fd5521c fix\n         35baa63 install guide improvemement\n         c5b9048 fixes\n         f51be49 install doc update\n         46bf6a8 ubuntu documentation improvement and installer fix\n         7b01380 Merge branch 'master' of github.com:sourcefabric/Newscoop\n         b9a7080 fix user points, disable caching on cli for now\n         a93ab54 updated translation resources\n         d16726c updated translation resources\n         e0a4230 newscoop ubuntu install guide improve\n         c01d18c doc image fix\n         879e184 Merge branch 'master' of https://github.com/sourcefabric/Newscoop\n         e9012f6 installer fixes and documentation\n         30b11f3 Merge branch 'clean_performance_improvements' of https://github.com/ahilles107/Newscoop into performance_3\n         d28891e some fixes\n         0078fbc Merge pull request #740 from takeit/master\n         16b31cf get rid off dispatching unused events\n         cb0e494 CS-5455 - JS being loaded twice\n         4f0aa76 added dot\n         67c7b76 hide comments status bar when no comments\n         6888a4e revert to master\n         d0ae62b Merge branch 'master' of https://github.com/sourcefabric/Newscoop\n         b1aad08 CS-5055 - Numbers of comment is showing 1.,2.,.3, even user is on the second or third page of comments list\n         23fc539 updated translation resources\n         fdc64cf updated translation resources\n         21ce7ce Merge pull request #729 from takeit/master\n         c4c321c Merge branch 'master' of https://github.com/sourcefabric/Newscoop\n         9f6219a Merge pull request #738 from takeit/points\n         e1c1487 user points fix when no connection between author and user\n         55cae5c assign author to user if its not assigned to properly count points\n         d2801cc assign author to user if its not assigned to properly count points\n         9fdc9a8 Merge branch 'master' of https://github.com/sourcefabric/Newscoop\n         d61ba45 Merge pull request #737 from takeit/points\n         afb030d WOBS-3326 - Hidden comment is a part of points in profile\n         c497fad remove diplucates from authors search\n         95f9d27 WOBS-3326 - Hidden comment is a part of points in profile\n         b31387b remove diplucates from authors search\n         dda5c4e Merge pull request #736 from m038/WOBS-3327\n         de0593b WOBS-3327: Adds parameter status to list_user_comments\n         a6130a9 remove uneccessary methods from installer\n         46333e6 fix cs\n         63f5e54 CS-5445 - Simpler Installer\n         e3053ff installer first phase\n         4f9a063 updated translation resources\n         74c9e9e Merge pull request #734 from m038/CS-5033\n         fc0d872 CS-5033: Fixes typo\n         ee83ecb Merge pull request #733 from m038/CS-5033\n         8b9485c Merge pull request #732 from m038/CS-5432\n         6292d02 CS-5033: Adds functionality to use specific protocol in smarty\n         aba106e Merge branch 'master' of https://github.com/sourcefabric/Newscoop\n         6e08ffd CS-5432: Adds searching for full name\n         600d0bd updated translation resources\n         0e04f53 Merge pull request #731 from m038/CS-5444\n         0319449 CS-5444: Changes tagged version to one corresponding with previous commit hash (2.1 doesn't work)\n         481195c updated translation resources\n         8bdfcf1 Merge pull request #730 from m038/CS-5444\n         0d637df CS-5444: Fixes issue with missing composer depedencies\n         62807d4 fixes\n         f8e2fa5 Database override message alert shows up in next step, should show up in /install/prepare\n         350a407 travis check v4\n         f762da1 travis check v3\n         ebb9244 travis check v2\n         3c428bb CS-5432: Fixes translations and displays 20 instead of 10 results in select2 autocomplete\n         eb45dd0 travis check\n         0953ce1 CS-5432: Fixes indentation\n         857404e CS-5432: Set mimimum of search characters to 1\n         e0b014d CS-5432: Fixes translation domain typo\n         5205f86 Merge remote-tracking branch 'upstream/master' into CS-5432\n         4d07639 CS-5432: Adds autocomplete functionality for topics, authors and creators in universal search\n         0600c4f When overriding already existing database the Integrity constraint violation occurs\n         d801898 fixes\n         70c3b6e Invalid catalog name: 1046 No database selected fix\n         4f05ea3 updated translation resources\n         b3c683d updated translation resources\n         3628497 merge fix\n         c0a63e1 resolve merge conflict\n         2ca0d9e Merge pull request #728 from takeit/sql-optimize\n         23b3a08 Merge branch 'master' of github.com:sourcefabric/Newscoop\n         003f21e Merge branch 'CS-5413' of https://github.com/terwey/Newscoop\n         d23f03e updated translation resources\n         fa6de54 user points fix for authors\n         08c53a5 user points fix for authors\n         6929da9 Merge pull request #685 from terwey/patch-5\n         daa280b Merge pull request #667 from ahilles107/CS-5332_author_related_resources\n         c79b3c2 Merge pull request #727 from ahilles107/fun_friday\n         3a5a39d Merge branch 'sql-optimize' of https://github.com/takeit/Newscoop\n         35c07e1 Merge pull request #708 from takeit/v4.3\n         c611367 documentation block fix\n         5d4ee2b remove comments\n         a3c3cc2 add/remove user points also for authors of the articles\n         753384d Merge branch 'WOBS-3298' of https://github.com/terwey/Newscoop\n         f7633b8 Merge branch 'master' of https://github.com/sourcefabric/Newscoop into sql-optimize\n         408d15f updated translation resources\n         fb15f38 Merge branch 'fun_friday' of https://github.com/ahilles107/Newscoop into v4.3\n         fb7f3ed add short stats for dashboard\n         8d32f5a Merge branch 'master' of https://github.com/sourcefabric/Newscoop\n         853c1f7 Merge branch 'master' of https://github.com/sourcefabric/Newscoop into v4.3\n         9ae1fb9 remove points when article is deleted\n         11f8a5f user points fix if\n         d0375b2 user points fix\n         7bc0aab CS-5432: Optimizes backend universal search by only loading lists when filter is selected by user\n         146b8b7 updated translation resources\n         c4c4bf5 updated translation resources\n         e28bf92 Merge remote-tracking branch 'upstream/master' into CS-5432\n         e67f94f updated translation resources\n         613966e Merge pull request #725 from ahilles107/fix_performance\n         b4e1544 small fixes already done on tw production\n         c68e88b Merge pull request #714 from m038/CS-5033\n         884f0f1 userlist fix\n         1a78dd7 points fix\n         eb7e7af merge fixes\n         3ae8868 Rewrite/Optimize saving users points v2\n         16d6d3d Merge pull request #723 from ahilles107/fix_performance\n         d990395 CS-5435 - Rewrite/Optimize saving users points\n         6e342d9 Merge branch 'sql-optimize' of https://github.com/takeit/Newscoop into fix_performance\n         ae3e5fb small fixes\n         5647c9d apply most important cachings and clearing in respective actions\n         4cc0f71 merge fix\n         d5aecfd merge master\n         d8c8bb5 Merge branch 'master' of https://github.com/sourcefabric/Newscoop into sql-optimize\n         89e997c Merge pull request #716 from ahilles107/fix_performance\n         12d7a37 authors fixes\n         2b330a3 Merge pull request #2 from m038/CS-5432\n         4eaa37f Merge remote-tracking branch 'rafal/sql-optimize' into CS-5432\n         7740bc4 CS-5432: Merges methods and adds parameter for users results\n         cf909c5 CS-5432: Adds method for only retrieving authors\n         555ee8b authors fix\n         d2320fd permissions fixes\n         6216131 Merge branch 'master' of https://github.com/sourcefabric/Newscoop into sql-optimize\n         9ad3000 CS-5433 - Adding authors to article overloads\n         c2bf511 updated translation resources\n         79a287f Merge pull request #720 from takeit/sql-optimize\n         bc72ba9 CS-5033: Refrasing of system preferences text\n         e195999 CS-5424 - [slow query] very slow articles query\n         8aaa3ee CS-5033: Removed comment on advice from Paweł\n         dde5e89 CS-5033: Makes comment more consistent with preference name\n         bca9085 Update ContainerAwareUnitTestCase.php\n         9a4f75f Update FieldsHandler.php\n         1825ff6 remove ordering by points on the fly\n         9df3638 Update post-install.sh\n         c8ecce7 Update phpunit.bootstrap.php\n         a007407 Loops through the groups if multiple\n         24de91a add temporary users_points updating\n         f12b2de remove distinct\n         67f7f4c Merge pull request #718 from m038/CS-5424\n         3e3b609 improve users listing\n         f0fe82f updated translation resources\n         f64507c CS-5033: Adds methods in template engine classes for protocol relative urls\n         1cbd8c9 Removes the sub-query to improve speed\n         f4911c5 Merge remote-tracking branch 'upstream/master' into CS-5424\n         59e03db CS-5424: Adds index to Id field in KeywordIndex table\n         d1d627b Removes the DISTINCT from the COUNT query, there can never be multiple returns anyway\n         db34ffe Merge branch 'master' of https://github.com/sourcefabric/Newscoop into v4.3\n         d39f9bd access denied message\n         3bf9951 fix countByUser function queries\n         dc5e277 Merge pull request #715 from terwey/WOBS-3298\n         e8042dc access denied exception listener\n         9c77a42 Fixes WOBS-3298\n         1c55bd4 CS-5033: Adds SmartyUseProtocol system preference to upgrade procedure\n         26a4b7e CS-5033: Changes service name and changes smarty parameter to be consistent with system preference\n         a0d28f7 CS-5033: Adds systempreference for protocol in Smarty generated urls\n         b0c8859 CS-5033: Adds option to disable protocol for generating urls\n         d760488 CS-5422- Backup / restore scripts are outdated and doesn't work properly\n         c5d85af Merge pull request #712 from ahilles107/fix_performance\n         2b7cce3 improve sections caching\n         a60c17a improve sections caching\n         ab4e9dd remove plugin permissions when uninstall plugin action is taken\n         cb426fd cache only filled sections list\n         75aafa2 Merge branch 'master' of github.com:sourcefabric/Newscoop into fix_performance\n         1442bfb updated translation resources\n         20f3bef Merge branch 'master' of https://github.com/sourcefabric/Newscoop into v4.3\n         e4d9ddb fetch only given plugin permissions instead of all plugins permissions\n         3a09654 disable buggy templates checking\n         390ef48 updated translation resources\n         2e77cd1 updated translation resources\n         dd2b355 table alert, twig extension for permissions\n         86fc20e Merge pull request #711 from terwey/CS-5411\n         4e12cc1 plugins service fix\n         80f635e Fixes the ShortURL problem\n         b389fcc updated translation resources\n         683a830 Merge pull request #706 from terwey/CS-5411\n         5742b88 setting up plugins permissions in backend\n         05db143 [api] fix update of article-author type\n         9f68024 fix authors reordering\n         f638613 CS-5410: use 404 code for responses without items\n         c699d25 doc block fix\n         6df0aab doc block fix\n         7a1a2a3 [CS-5401] reorder article authors after removing one\n         4a45e55 updated translation resources\n         60fc6b7 Support for new plugins permissions (ACL)\n         a4428a5 merge\n         01d7165 Support for new plugins permissions (ACL)\n         5858867 Clears the cache for the Attachment CacheKey\n         a400be2 Bugfixes\n         d0b1a26 Caches the hasAttachment() result in the MetaArticle and the ArticleAttachmentsList\n         44a2647 Caches the has_image in the MetaArticle\n         a0abb16 Caches the MetaImage\n         926361f Bugfixes\n         6930fa4 Bug\n         5694042 Caches the ArticleImagesList\n         b834779 Caches the ArticleImageIndex\n         d905ef6 Caches another MetaImage object\n         010c972 Fixes a small bug in caching the ArticleImage\n         e4ae2ca Caches the MetaImage for the Article\n         e5b82f5 Adds a namespace to the ArticleTypeField cachekey\n         c374a8f Adds a namespace to the OutputService cachekey\n         b41fb3a Caches the CurrentIssue\n         5f05e4e Fixes a bug where an array is included\n         d64ab58 Implements a __toString on the ComparisonOperation object\n         0ed232f Caches the Themepath for the Issue\n         e6d7ba9 Caches the IssueThemePath\n         4b97055 Caches the Publication inside the MetaArticle's getCommentsEnabled\n         a74be11 Caches the sectionList\n         b052625 Also cache the Issue if a name is known\n         99f7db1 Small fix\n         7401ca8 Fixes a bug where in GetInvalidURLTemplate the cacheService was undefined\n         fdbaa6f Clears the cache for the Publication, Alias, Issue and Section objects\n         0edba49 Caches the WebOutput Issue information\n         23524e8 Caches the GetCurrentIssue, GetSection and corrects namespaces\n         105302d Caches the GetIssueTemplate and GetSectionTemplate in the CampSystem\n         444aef6 Caches the GetCurrentIssue and MetaIssue object\n         074767a cache objects in metaclasses\n         331d243 implement database cache to most used objects\n         e3a4000 revert camptemplate\n         251dff1 improve translations listeners\n         d412e65 Don't fetch all plugins one by one\n         59d4b67 Merge pull request #13 from terwey/optimise\n         1498690 Merge pull request #703 from m038/CS-5404\n         1bcb798 updated translation resources\n         2a2bba6 Caches the Template Cachelifetime inside the smarty render\n         c548da1 Caches the MetaImage\n         9e89c61 Caches the Templates Cachelifetime\n         f3b32a4 Caches the Template cacheLifetime\n         7e0c0df Caches the metaBoxArticlesList\n         96a416f Fixes a bug in the IPAccess caching\n         2ba861e Clears the cache for the Attachment CacheKey\n         3f2d7cd updated translation resources\n         8564db1 caches the Article in the MetaArticleBodyField\n         c4c9f6d Caches the ArticleList in the block.list_articles\n         bb9be4a Caches the Articlelists\n         58832e7 Caches the MetaUser for the MetaAuthor\n         26c9ff4 Namespace\n         5384906 Caches the counting of comments\n         d878859 Caches the has_topic\n         3bd9e13 Caches the ArticleTopicList\n         16b17b5 Bugfixes\n         bffbbb1 Caches the MetaTopic\n         40f64ff Caches the Language object inside the smarty_modifier_camp_date_format\n         4cfe179 Caches the has_image in the MetaArticle\n         18b73c0 Caches the CurrentIssue\n         e4eaab2 Caches the Authors\n         c2bccb1 Caches the IPAccess information\n         9004f90 Fixes a bug where an array is included\n         f821689 Implements a __toString on the ComparisonOperation object\n         c25aa22 updated translation resources\n         f124522 updated translation resources\n         e2d012e Merge branch 'master' of https://github.com/sourcefabric/Newscoop\n         f2abcf2 Caches the Themepath for the Issue\n         ab269f6 CS-5404: Removes values for id field\n         412c7ad Caches the IssueThemePath\n         df2c40e Caches the articleTypeObj\n         57a145b Caches the sectionList\n         b8f1549 Caches the ObjectType\n         baba9b8 Caches the ArticleTypeField\n         2e9ea1c Also cache the Issue if a name is known\n         454115c Caches the hasAttachment() result in the MetaArticle and the ArticleAttachmentsList\n         31c5060 updated translation resources\n         88fa297 Small fix\n         32613a5 Merge pull request #700 from takeit/v4.3\n         e5cfd9e regisster controller fix\n         10a970d updated translation resources\n         83372ef access token fix\n         c7d0032 access token fix\n         f5ee732 updated translation resources\n         0a13187 updated translation resources\n         be040d4 updated translation resources\n         90101b2 Fixes a bug where in GetInvalidURLTemplate the cacheService was undefined\n         bb5eee6 Merge pull request #692 from takeit/v4.3\n         7ac687f merge tw-temp to master\n         3ee6883 Merge pull request #696 from takeit/temp\n         2f3b5cf logout from zend\n         2627fb3 fixes\n         7346873 logout handlers\n         45a22d0 fb login fix\n         5d9276b add clearing cache for objects modify actions\n         69b5132 Bugfixes\n         de0ef96 Bug\n         1603826 Caches the ArticleImagesList\n         8045985 logout handlers\n         658f2d6 Caches the ArticleImageIndex\n         a160ea9 Caches another MetaImage object\n         1354266 Fixes a small bug in caching the ArticleImage\n         3ff2df6 Caches the MetaImage for the Article\n         6ef006f Merge branch 'optimise' of https://github.com/terwey/Newscoop into clean_performance_improvements\n         dc8b2a7 Caches some more objects in the CampSystem\n         2a710c6 Adds caching to the ArticleType\n         12b6610 Merge pull request #695 from takeit/temp\n         2a22c8e added public resource route\n         f6a067a Merge pull request #694 from takeit/temp\n         9aaa650 typo fix\n         82a09b0 services.yml update\n         4a697f0 services.yml update\n         004b3d6 Merge pull request #693 from takeit/temp\n         2d4dabf frontend success logout handler\n         7c78b26 frontend success logout handler\n         e553c9e removed curl, replaced by symofny request -response handle\n         e6599bf removed curl, replaced by symofny request -response handle\n         ff284ba duplicate property assign removed\n         e703441 call frontend success handler via API\n         2bf670b fixes\n         77b8088 Merge branch 'master' of github.com:sourcefabric/Newscoop into v4.3\n         de61548 fix\n         57df494 Implements caching in the MetaArticle\n         f2ea5de call frontend success handler via API\n         f2d0daa Implements more caching\n         6ca0e86 fixes\n         509eb82 Removes the old CampCache and implements the new Caching mechanism in the CampSystem\n         e0a6968 Adds more caching to CampURIShortNames\n         c07054a removed listener not implemented yet in tw-temp\n         efcd805 api doc fix\n         bd8bfdb oauth cherry pick\n         e6a4137 cherry picked\n         c6fdb45 Create trusted property for API apps\n         3ca2875 cherry pick\n         fb9deea added route to trusted & fixes\n         a6bff36 Adds caching to the ArticleTypeField\n         3a32e5e Merge branch 'tw-temp' of github.com:sourcefabric/Newscoop into temp\n         596b617 api doc fix\n         640da8a Getting user access token by API and automatically log in to oauthprovider\n         24b73a9 More descriptive keys for the caching\n         88fbfa1 Fixes the serialization and unserialization of the Object\n         4fe1246 Caches the Language Class object\n         df35fe5 Fixes the loading of the 'legacy' Language at the source\n         b228c24 Checks in the Language class if the languageCode provided is Legacy and then returns an empty array\n         586f230 updated translation resources\n         9d4f38d Merge branch 'master' of github.com:sourcefabric/Newscoop into clean_performance_improvements\n         2a0683f updated translation resources\n         c1c013f Create trusted property for API apps\n         f811de8 WOBS-3261 - Adding new client for api access doesn't work\n         3e56daa Implements the cacheService for the MetaAttachment\n         21eba07 Implements the cacheService for the MetaLanguage\n         f21c4e6 updated translation resources\n         69737cf cache objects in metaclasses\n         859a82b updated translation resources\n         901c491 updated translation resources\n         029ba32 updated translation resources\n         701a0a8 implement database cache to most used objects\n         9fbbbaf updated translation resources\n         9380710 Merge pull request #691 from takeit/v4.3\n         a2f18c0 WOBS-3258 - TW: Attachments should be automatically approved in media archive again\n         d3caabe updated translation resources\n         dbd220b revert camptemplate\n         07dc467 improve translations listeners\n         38b02de Don't fetch all plugins one by one\n         7f1ed64 Merge pull request #689 from takeit/v4.3\n         bec1381 merge fix\n         051746c set up user address properties\n         1365088 changes needed for memberships support\n         23d11c7 updated translation resources\n         9f9e9b8 updated translation resources\n         b417402 [api][docs] improve docs\n         298e387 [api][docs] improve docs\n         080a5f7 Merge branch 'master' of github.com:sourcefabric/Newscoop into CS-5332_author_related_resources\n         b4b47f9 [new_api_resource] add checking order parameter\n         5cf3fd6 [new_api_resource] implement articleauthors sorting\n         c92e1c2 Merge pull request #687 from danielhjames/master\n         813f2ab Fix broken link to wiki\n         26df764 Merge pull request #686 from ahilles107/oauth_remember_access\n         4a5d665 [api] add missing create tables\n         6aa4c60 [api] remember user access for client\n         e36e83c CS-4908\n         5397816 Merge pull request #684 from takeit/v4.3\n         13838a8 Merge branch 'master' of github.com:sourcefabric/Newscoop into v4.3\n         ac7e40c CS-4874 - Add / at the end of folder name in htaccess template file & CS-5368-Restore of backup is brake on back-end or terminal\n         7a4abda Merge pull request #681 from ahilles107/CS-4688_duplicated_sections\n         2256ba8 Merge pull request #682 from ahilles107/CS-4691_slideshows\n         a342a0f [api_resource] CS-4691: Slideshow hasn't attribute for source of image/video\n         dcad2c6 [api_resource] revert public to protected\n         0a96fbd [api resource] add publication name and issue name to section response\n         1889e88 Clear cache before using db with command, add real error output.\n         f170a21 Merge pull request #676 from takeit/v4.3\n         cb04a80 assign theme improvement\n         43a5365 improve assign theme command to assign selected theme\n         a0b931b languages fix in demo table\n         2e031ca description fix\n         abe8930 hungarian and az languages\n         877eeb9 CS-5334 - Upgrade SQL needed for new localizations\n         3fc3937 CS-4899 - Install process is not working\n         8a86b12 http_response_code fix and remove community ticker from demo data as it causes some problems\n         311e434 added demo data to community ticket table\n         382666b Merge branch 'master' of github.com:sourcefabric/Newscoop into v4.3\n         3c9e3e3 changed info to release\n         73062aa added community ticker table structure to demo data\n         a8fbfac alias fix\n         dd621e9 revert\n         a76d575 README update\n         6ddef6f release fixes\n         157ea4b add default site alias\n         bb1d20c Merge pull request #677 from ahilles107/CS-5328_better_error_pages\n         0416dac CS-5328: convert tabs to spaces\n         9f6d63a CS-5328: On newscoop side error the http code shouldn't be 200 to avoid caching by proxy\n         c5b1a30 command name change\n         3f9549b remove em in fetch publications command\n         c5448e2 console command to fetch publications\n         9141212 fixing typos\n         4f6b9bb fix templates installer\n         40b1ea8 [api] Get pagination only when exists.\n         d766767 demo data\n         869f08a [wip] prepare sorting\n         4e4ecb1 CS-4944 - Installer fails as users table is missing\n         4f69dd3 merge tw-temp to master\n         d609945 Merge branch 'master' of github.com:sourcefabric/Newscoop into v4.3\n         f61fdbd test\n         240fdd1 remove pagination from array\n         a18ceec revert pagination for article images.\n         32c7e6c Merge pull request #671 from takeit/temp\n         6720ab3 [new_api] CS-5332: unlink article author from article\n         65a971b [api resource] CS-5332 add article author type update\n         03188ed [api] CS-5332 - add authors search\n         8589c80 WOBS-3215 - Invalid security token is showed during attach images process after life time\n         331a275 [api] CS-5332 - add authorstypes and articlesauthors\n         3e646c8 Merge pull request #670 from takeit/temp\n         c718d59 attach topic on  enter button fix - dont do anything if no topic found\n         d43e28e Merge pull request #669 from takeit/temp\n         2be7621 attach topic on enter hit, don't add new one\n         bb6c0ab Merge pull request #666 from takeit/temp\n         120a074 add missing resources proposal\n         cfc97a3 authors resources\n         664e260 Merge pull request #659 from ahilles107/plugins_manager\n         5a8a598 [WOBS-3211] - Article editor is showing Fatal error after life time\n         6531d84 added more fields for original image in image block\n         7eb84a8 added more fields for original image in image block\n         c511275 Merge pull request #663 from takeit/temp\n         84a445e user profile fix\n         ee2f2df fix author route name.\n         e062b38 Merge pull request #662 from takeit/temp\n         e0439b1 Merge branch 'tw-temp' of github.com:sourcefabric/Newscoop into temp\n         c2d9f1b extend session lifetime form input to enter max 24 hours\n         009c71b Merge pull request #658 from ahilles107/api_docs\n         c0446bf [api_docs] fix error handling in article types and articles controllers\n         b3081b9 [api_docs] add api docs to missing controller\n         1028268 Merge pull request #657 from takeit/temp\n         eb580db fix\n         a3425ba authentication listener fixes\n         13f3ccc typo fix\n         8047c57 backend session listener\n         d456d86 session expiration fix\n         f6cc150 Merge pull request #655 from takeit/temp\n         b9b9a50 WOBS-3189 - Fix the slider: Users comments on user profile pages\n         65898ef [plugins manager] improve upgrade command, fix checking if private plugin is installed, make new plugins manager default\n         07f83fb Merge pull request #654 from ahilles107/CS-4922_images_search\n         52e632a [api fix] fix fetching highest number of attached to article image\n         4438b38 Merge pull request #652 from ahilles107/CS-4922_images_search\n         9cd9d5d [api change] change unlink route to have language in it\n         62480a4 CS-4922: query param is not required\n         8f3c524 CS-4922: images search, insert image polish translation, fix in linking objects to article\n         e42060e Merge pull request #651 from terwey/patch-4\n         23bdf42 Update GenerateORMSchemaCommand.php\n         81821c2 CS-4922: fix in image uri handler and start for images search controller\n         bd111a8 Merge pull request #646 from takeit/temp\n         300e868 Merge branch 'tw-temp' of github.com:sourcefabric/Newscoop into temp\n         b052535 Merge pull request #649 from ahilles107/CS-4996\n         6cd43da CS-4996: Provide image for comment author (commenter object is added to comment response)\n         43f96ca Merge pull request #648 from ahilles107/CS-5330_api_expand\n         8093fb0 support query param expand to change serialization group to details. error handling improvement\n         8795cef Merge pull request #647 from ahilles107/fix_api_error_handling\n         22b772f remove unwanted translation entity change\n         20fa2bb fix exceptions handling for api\n         4d195d5 ban fix\n         a6f5ee5 Change First name and Last name in user ban settings\n         a278049 [WOBS-3151] - Support Community TagesWoche | added info about publication that user registered with\n         b778ec0 Merge pull request #645 from ahilles107/CS-5329\n         ccf99c9 accept also full urls for linked resources\n         d4aaf21 Merge pull request #640 from takeit/temp\n         2ca3a7f Merge pull request #643 from m038/WOBS-3177-tw-temp\n         ef2704e Merge pull request #642 from m038/WOBS-3177\n         b070ccb WOBS-3177: Adds missing code to core for this feature\n         f0244d3 fixes\n         89bf25c WOBS-3177: Adds missing code to core for this feature\n         63b7614 Merge pull request #641 from ahilles107/master\n         727826c Merge branch 'tw-temp' of github.com:sourcefabric/Newscoop\n         d4f6acf [WOBS-3180] - Users list pagination doesn't work properly\n         93a9d99 Merge pull request #639 from takeit/tw-temp\n         a8b646d FilesystemService & attachments name sanitization\n         e7f9179 Merge pull request #637 from m038/WOBS-3117\n         c5570cb Merge pull request #638 from m038/WOBS-3117-tmp\n         6839187 WOBS-3117: Partially restores previous verion of entity\n         7602161 WOBS-3117: Partially restores previous verion of entity\n         b1b1050 Merge pull request #636 from takeit/tw-temp\n         d8a1d84 revert changes\n         7df38a7 Merge pull request #634 from ahilles107/cleaning\n         2793188 revert current versions\n         86990ba Merge branch 'tw-temp' of github.com:sourcefabric/Newscoop into cleaning\n         28a9d7e Merge pull request #635 from takeit/tw-temp\n         993f08e translation fixes\n         b3e8f16 remove unwanted getId method\n         d34e5a9 [WOBS-3132] - Attached files don’t show up on backside of articles\n         727c465 Merge pull request #633 from takeit/tw-temp\n         605911d [WOBS-3179] - Change commenter name to username in backend\n         ad54d05 cleaning\n         ad2471d [WOBS-3178] - Remove limitation from displaying comments text in backend\n         840ec33 Merge pull request #632 from takeit/tw-temp\n         a7c5f34 removed int\n         1683da4 [WOBS-3152] - Number of contributions \"Beiträge\" does not seem correct\n         011c607 Merge pull request #631 from takeit/tw-temp\n         f157cee [WOBS-3132] - Attached files don’t show up on backside of articles\n         b4026f4 Merge pull request #630 from takeit/tw-temp\n         cfdcb87 [WOBS-3149] - character count for body text is missing (improvements)\n         a982970 Merge pull request #629 from takeit/tw-temp\n         60e6de0 hide button when no image\n         b6b894d [WOBS-3169] - Author's picture in biography tab & [WOBS-3148] - User image limit\n         debedaa Merge pull request #628 from takeit/tw-temp\n         01af2cc menu improvement and fix\n         907739c Merge branch 'master' of github.com:sourcefabric/Newscoop\n         bee38e3 Release of new version 4.2.16\n         053411c Release of new version 4.2.15\n         f97a10d Release of new version 4.2.14\n         f48527c Release of new version 4.2.13\n         e895461 Release of new version 4.2.12\n         702ad9d Release of new version 4.2.11\n         f8f1918 Release of new version 4.2.10\n         9f1fe1c Merge pull request #626 from takeit/css\n         26df94f css image fix\n         8c0e8a3 Merge pull request #625 from ahilles107/fixes\n         3d84ac8 Merge branch 'attachments' of github.com:ahilles107/Newscoop into v4.3\n         e84066a Merge branch 'attachments' of github.com:ahilles107/Newscoop into v4.3\n\n   Version 4.3 - First Newscoop 4.3 alpha, installable, with almost all features, almost ready to freeze, enjoy\n      17/07/2014 22:14  4.3.0-alpha  initial release"
  },
  {
    "path": "newscoop/LICENSE_3RD_PARTY.txt",
    "content": "\n3rd Party Software / Data\n*************************\n\nNewscoop builds on top of a number of open source projects. We thank all people behind these resources for their amazing job !\n\nBelow are the licenses for the projects we use, with Debian package names where known.\n\nNOTE: This list is a work in progress, we apologize to any project no mentioned here at this point.\n\n--------------------------------\nPHP Frameworks, Tools, Libraries\n--------------------------------\n\n* Smarty v3 - (http://www.smarty.net) - GNU LESSER GENERAL PUBLIC LICENSE, Version 3 (Debian: smarty)\n\n* Doctrine - (http://www.doctrine-project.org/) - GNU LESSER GENERAL PUBLIC LICENSE, Version 2.1 \"sudo pear channel-discover pear.doctrine-project.org\" \"sudo pear install pear.doctrine-project.org/Doctrine-1.2.4\"\n\n* Zend Framework - (http://framework.zend.com/license) - New BSD License\n\n* Symfony - (http://symfony.com) - MIT License\n\n* Composer - (http://getcomposer.org) - MIT License\n\n* GETID3 - GNU GENERAL PUBLIC LICENSE, Version 2 (Debian: php-getid3)\n\n* JSON library (public domain) (Debian: php-services-json?)\n\n* PHPCaptcha - New BSD License\n\n-------------\nPEAR packages\n-------------\n\n* Archive_Tar (http://pear.php.net/package/Archive_Tar) - New BSD License (Debian: php-pear)\n\n* Console_Getopt (http://pear.php.net/package/Console_Getopt) - The PHP License, version 3.01\n\n* Date (http://pear.php.net/package/Date) - New BSD License (Debian: php-date)\n\n* HTML_Common 1.2.5 (http://pear.php.net/package/HTML_Common) - The PHP License, version 3.01 (Debian: php-html-common)\n\n* File (http://pear.php.net/package/File) - The PHP License, version 3.01 (In Debian? Needs checking)\n\n* File_Find (http://pear.php.net/package/File_Find) - The PHP License, version 3.01 (In Debian? Needs checking)\n\n* HTTP_Client 1.2.1 (http://pear.php.net/package/HTTP_Client) - New BSD License\n\n* HTTP_Request 1.4.4 (http://pear.php.net/package/HTTP_Request) - New BSD License\n\n* Mail 1.2.0 (http://pear.php.net/package/Mail) - New BSD\n\n* Net_Socket 1.0.9 - (http://pear.php.net/package/Net_Socket) - The PHP License, version 3.01\n\n* Net_URL 1.0.15 (http://pear.php.net/package/Net_URL) - New BSD\n\n* PEAR 1.9.0 (http://pear.php.net/package/PEAR) - New BSD\n\n* XML_Parser 1.3.2 (http://pear.php.net/package/XML_Parser) - New BSD\n\n* XML_RPC 1.5.3 (http://pear.php.net/package/XML_RPC) - The PHP License, version 3.01\n\n* XML_Serializer 0.20.0 (http://pear.php.net/package/XML_Serializer) - New BSD   sudo pear install -f XML_Serializer\n\n* XML_Util 1.2.1 (http://pear.php.net/package/XML_Util) - New BSD\n\n----------\nJavascript\n----------\n\n* Base64 library (GPL v.3)\n\n* TinyMCE - GNU LESSER GENERAL PUBLIC LICENSE, Version 2.1 (Debian: tinymce)\n\n* Markdown - BSD style, see: http://daringfireball.net/projects/markdown/license (Debian: markdown)\n\n* Script.aculo.us - custom license, http://madrobby.github.com/scriptaculous/license/ (Debian: libjs-scriptaculous)\n\n* jQuery- GNU GENERAL PUBLIC LICENSE, Version 2 (Debian: libjs-jquery)\n\n* JQuery components\n\n  * DataTables - GPL v.2 or BSD (not yet in Debian?)\n  * FancyBox - MIT or GPL v.2 (not yet in Debian?)\n\n* Backbone.js - (http://backbonejs.org) - MIT License\n\n* EditArea - GNU LESSER GENERAL PUBLIC LICENSE, Version 2.1 (Debian: libjs-edit-area)\n\n* Prototype - MIT style: https://github.com/sstephenson/prototype/raw/master/LICENSE (Debian: libjs-prototype)\n\n* Plupload - GNU GENERAL PUBLIC LICENSE, Version 2 only\n\n* PhotoViewer - Creative Commons Attribution-Share Alike 3.0 United States License http://creativecommons.org/licenses/by-sa/3.0/us/\n\n-----\nFonts\n-----\n\nIn include/captcha/fonts/ we have Bitstream Vera, custom license:\nhttp://packages.debian.org/changelogs/pool/main/t/ttf-bitstream-vera/ttf-bitstream-vera_1.10-8/ttf-bitstream-vera.copyright (Debian: ttf-bitstream-vera)\n\n------------\nGeo-location\n------------\n\n* Based mainly on the OpenLayers library, BSD license.\n* OpenLayers uses parts of the Prototype (MIT license) and Rico (Apache 2.0 license) libraries\n\n* OpenStreetMap tiles (OSM, Mapquest Open): Creative commons CC-BY-SA, application has to state that with a link\n\n* Geographical data: GeoNames - Creative commons BY 3.0\n\n-------------\nMedia playing\n-------------\n\n* Strobe Media Playback (BSD license) (now known as OSMF)\n\n"
  },
  {
    "path": "newscoop/RMT",
    "content": "#!/usr/bin/env php\n<?php\ndefine('RMT_ROOT_DIR', __DIR__);\nrequire 'vendor/liip/rmt/command.php';\n"
  },
  {
    "path": "newscoop/admin-files/ad.php",
    "content": "<?php\nrequire_once dirname(__FILE__) . '/../db_connect.php';\nrequire_once dirname(__FILE__) . '/../classes/Input.php';\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n$ADReason = Input::Get('ADReason', 'string', $translator->trans('You do not have the right to access this page.', array(), 'home'), true);\n?>\n<p>\n<FORM>\n<CENTER>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\" ALIGN=\"CENTER\" style=\"margin-top: 50px; margin-bottom: 50px;\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B><font color=\"red\"><?php echo $translator->trans(\"Error\"); ?> </font></B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<BLOCKQUOTE>\n\t\t<font color=\"red\">\n\t\t<li><?php print htmlspecialchars($ADReason, ENT_QUOTES); ?></li>\n\t\t</font>\n\t\t</BLOCKQUOTE>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\">\n\t\t<DIV ALIGN=\"CENTER\">\n            <INPUT id=\"ok-button\" TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php echo $translator->trans('OK'); ?>\" />\n            <script type=\"text/javascript\">\n            $(function() {\n                $('#ok-button').click(function() {\n                    if(typeof $.fancybox == 'function') {\n                        parent.$.fancybox.close();\n                    } else {\n                        window.history.back();\n                    }\n\n                    location.href = \"/admin\";\n                });\n            });\n            </script>\n\t\t</DIV>\n\t</TD>\n</TR>\n</TABLE>\n</CENTER>\n</FORM>\n</p>\n<script type=\"text/javascript\">\n$(document).ready(function() {\n    $('.meta-bar').hide();\n    $('.main-menu-bar').hide();\n    $('.footer').hide();\n});\n</script>\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/ad_popup.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/db_connect.php\");\n$translator = \\Zend_Registry::get('container')->getService('translator');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\n$ADReason = Input::Get('ADReason', 'string', $translator->trans('You do not have the right to access this page.', array(), 'home'), true);\n?>\n<head>\n\t<link rel=\"shortcut icon\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/images/7773658c3ccbf03954b4dacb029b2229.ico\" />\n\t<link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/admin_stylesheet.css\" />\n\t<title><?php echo $translator->trans(\"Error\"); ?></title>\n</head>\n<p>\n<center>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"8\" class=\"message_box\" align=\"center\" style=\"margin-top: 20px; margin-bottom: 20px; margin-right: 10px;\">\n<tr>\n\t<td colspan=\"2\">\n\t\t<b><font color=\"red\"><?php echo $translator->trans(\"Error\"); ?> </font></b>\n\t\t<hr noshade size=\"1\" color=\"black\" />\n\t</td>\n</tr>\n<tr>\n\t<td colspan=\"2\" align=\"center\" style=\"padding-left: 15px; padding-right: 15px;\">\n\t\t<?php  print htmlspecialchars($ADReason); ?>\n\t</td>\n</tr>\n<tr>\n\t<td colspan=\"2\" align=\"center\">\n\t\t<a href=\"javascript:self.close()\"><b><?php  echo $translator->trans('Close'); ?></b></a>\n\t</td>\n</tr>\n</table>\n</center>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/article_import/CommandProcessor.php",
    "content": "<?\nrequire_once($GLOBALS['g_campsiteDir'].'/article_import/DocBookParser.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n// Command processor\nif ($_REQUEST[\"form_name\"] == \"upload_article_form\") {\n\tif (!SecurityToken::isValid()) {\n\t\tcamp_html_display_error($translator->trans('Invalid security token!'));\n\t\texit;\n\t}\n\n\tupload_article_handler($_REQUEST, $_SESSION, $_FILES);\n}\n\nfunction upload_article_handler(&$request, &$session, &$files) {\n\t$publication = Input::Get('Pub', 'int', 0);\n\t$issue = Input::Get('Issue', 'int', 0);\n\t$section = Input::Get('Section', 'int', 0);\n\t$language = Input::Get('Language', 'int', 0);\n\t$sLanguage = Input::Get('sLanguage', 'int', 0);\n\t$articleNumber = Input::Get('Article', 'int', 0);\n\n\tif (!Input::IsValid()) {\n\t\techo \"Input Error: Missing input\";\n\t\treturn;\n\t}\n\n\t// Unzip the sxw file to get the content.\n\t$zip = zip_open($files[\"filename\"][\"tmp_name\"]);\n\tif ($zip) {\n\t\t$xml = null;\n\t\twhile ($zip_entry = zip_read($zip)) {\n\t\t\tif (zip_entry_name($zip_entry) == \"content.xml\") {\n\t\t       \tif (zip_entry_open($zip, $zip_entry, \"r\")) {\n\t\t           \t$xml = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));\n\t\t\t        zip_entry_close($zip_entry);\n\t\t       \t}\n\t\t\t}\n\t\t}\n\t\tzip_close($zip);\n\n\t\tif (!is_null($xml)) {\n\t\t\t// Write the XML to a file because the XSLT functions\n\t\t\t// require it to be in a file in order to be processed.\n\t\t\t$tmpXmlFilename = tempnam(\"/tmp\", \"ArticleImportXml\");\n\t\t\t$tmpXmlFile = fopen($tmpXmlFilename, \"w\");\n\t\t\tfwrite($tmpXmlFile, $xml);\n\t\t\tfclose($tmpXmlFile);\n\n\t\t\t// Transform the OpenOffice document to DocBook format.\n\t\t\t$xsltProcessor = xslt_create();\n\t\t\t$docbookXml = xslt_process($xsltProcessor,\n\t\t\t\t\t\t\t\t\t   $tmpXmlFilename,\n\t\t\t\t\t\t\t\t\t   \"sxwToDocbook.xsl\");\n\t\t\tunlink($tmpXmlFilename);\n\n\t\t\t// Parse the docbook to get the data.\n\t\t\t$docBookParser = new DocBookParser();\n\t\t\t$docBookParser->parseString($docbookXml, true);\n\n\t\t\t$article = new Article($articleNumber, $language);\n\t\t\t$article->setTitle($docBookParser->getTitle());\n\t\t\t$article->setIntro($docBookParser->getIntro());\n\t\t\t$article->setBody($docBookParser->getBody());\n\n\t\t\t// Go back to the \"Edit Article\" page.\n\t\t\theader(\"Location: /$ADMIN/articles/edit.php?Pub=$publication&Issue=$issue&Section=$section&Article=$articleNumber&Language=$language&sLanguage=$sLanguage\");\n\t\t} // if (!is_null($xml))\n\t} // if ($zip)\n\n\t// Some sort of error occurred - show the upload page again.\n\tinclude(\"index.php\");\n} // fn upload_article_handler\n\n?>"
  },
  {
    "path": "newscoop/admin-files/article_import/DocBookParser.php",
    "content": "<?\nrequire_once('XML/Parser/Simple.php');\n\nclass DocBookParser extends XML_Parser_Simple {\n//\tvar $m_firstName;\n//\tvar $m_surName;\n\tvar $m_author;\n\tvar $m_title;\n\tvar $m_intro;\n\tvar $m_body;\n\t\n\tfunction DocBookParser() {\n\t\t$this->XML_Parser_Simple();\n\t} // constructor\n\n\tfunction handleElement($name, $attribs, $data) {\n\t\t//printf('handle %s<br>', $name);\n\t\tswitch ($name) {\n\t\tcase \"AUTHOR\":\n\t\t\t$this->m_author = $data;\n\t\t\tbreak;\n//\t\tcase \"FIRSTNAME\":\n//\t\t\t$this->m_firstName = $data;\n//\t\t\tbreak;\n//\t\tcase \"SURNAME\":\n//\t\t\t$this->m_surName = $data;\n//\t\t\tbreak;\n\t\tcase \"TITLE\":\n\t\t\t$this->m_title = $data;\n\t\t\tbreak;\n\t\tcase \"ABSTRACT\":\n\t\t\t$this->m_intro = $data;\n\t\t\tbreak;\n\t\tcase \"SIMPLESECT\":\n\t\t\t$this->m_body  = $data;\n\t\t\tbreak;\n\t\t}\n\t} // fn handleElement\n\t\n\tfunction dump() {\n\t\techo \"Title: \" . $this->m_title . \"<Br>\";\n\t\t//echo \"Author: \" . $this->m_firstName . \" \" . $this->m_surName . \"<br>\";\n\t\techo \"Author: \" . $this->m_author . \"<br>\";\n\t\techo \"Intro: \" . $this->m_intro . \"<br>\";\n\t\techo \"Body: \" . $this->m_body . \"<br>\";\n\t} // fn dump\n\n\t\n\tfunction getAuthor() {\n\t\t//return $this->m_firstName . \" \" . $this->m_surName;\n\t\treturn $this->m_author;\n\t} // fn getAuthor\n\t\n\tfunction getTitle() {\n\t\treturn $this->m_title;\n\t} // fn getTitle\n\t\n\tfunction getIntro() {\n\t\treturn $this->m_intro;\n\t} // fn getIntro\n\t\n\tfunction getBody() {\n\t\treturn $this->m_body;\n\t} // fn getBody\n\t\n} // class DocBookParser\n\n?>"
  },
  {
    "path": "newscoop/admin-files/article_import/DocbookFinalForm.xml",
    "content": "<?xml version=\"1.0\"?>\n<article>\n<artheader>\n  <author><firstname>Norman</firstname><surname>Walsh</surname></author>\n  <title>A World Wide Web Interface to CTAN</title>\n  <abstract><![CDATA[The intro goes here.]]></abstract>\n</artheader>\n<simplesect>\n<![CDATA[The body of the article <h1>blah</h1> ]]>\n</simplesect>\n</article>\n"
  },
  {
    "path": "newscoop/admin-files/article_import/Installation.txt",
    "content": "Article Import Installation Instructions\n----------------------------------------\n\nZZipLib needs to be installed.  You can get it here:\nhttp://zziplib.sourceforge.net/\n./configure; make; make install;\n\nXSLT libraries:\nSablotron: http://www.gingerall.com\nExpat: http://sourceforge.net/projects/expat\n\nThen you need to recompile Apache & PHP.\nFirst do this:\nexport LDFLAGS=-lstdc++\n\n\"Make sure you follow the advice of adding -lstdc++ to EXTRA_LD_FLAGS in Makefile after you've run ./configure, and BEFORE you've run make (if you issue make, you'll need to do a make clean before you make again, after changing the Makefile, or it still won't work reliably).\"\n\nApache configure command (must be rebuilt after the export command above):\nconfigure --prefix=/usr/local/apache-1.3 --enable-module=so\n\nPHP configure command:\n./configure --prefix=/usr/local/php-4.3.4 --with-mysql --with-apxs=/usr/local/apache-1.3/bin/apxs --with-zip --enable-xslt --with-xslt-sablot\n\nSablotron,expat,libxml,.., and PHP compilation FAQ (read this if you encounter errors):\nhttp://www.protonicdesign.com/tutorial/faq.php\n"
  },
  {
    "path": "newscoop/admin-files/article_import/index.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Section.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Issue.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Publication.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n$rootDirectory = $ADMIN_DIR;\n\n$Pub = Input::Get('Pub', 'int', 0);\n$Issue = Input::Get('Issue', 'int', 0);\n$Section = Input::Get('Section', 'int', 0);\n$Language = Input::Get('Language', 'int', 0);\n$sLanguage = Input::Get('sLanguage', 'int', 0);\n$Article = Input::Get('Article', 'int', 0);\n\nif (!Input::IsValid()) {\n\theader(\"Location: /$ADMIN/logout.php\");\n\texit;\n}\n\n$articleObj = new Article($sLanguage, $Article);\n$sectionObj = new Section($Pub, $Issue, $Language, $Section);\n$issueObj = new Issue($Pub, $Language, $Issue);\n$publicationObj = new Publication($Pub);\n$articleLanguage = new Language($Language);\n$issueLanguage = new Language($sLanguage);\n\n?>\n<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\" \"http://www.w3.org/TR/REC-html40/loose.dtd\">\n<HTML>\n<HEAD>\n    <META http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\">\n    <?php include_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/javascript_common.php\"); ?>\n\t<TITLE><?php echo $translator->trans(\"Article Import\"); ?></TITLE>\n</HEAD>\n\n<BODY>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\" WIDTH=\"100%\" class=\"page_title_container\">\n<TR>\n\t<TD class=\"page_title\">\n\t    <?php echo $translator->trans(\"Article Import\"); ?>\n\t</TD>\n\t<TD ALIGN=RIGHT>\n\t\t<TABLE BORDER=\"0\" CELLSPACING=\"1\" CELLPADDING=\"0\">\n\t\t<TR>\n\t\t\t<TD>\n\t\t\t\t<A HREF=\"/<?php echo $ADMIN; ?>/articles/?Pub=<?php p($Pub); ?>&Issue=<?php p($Issue); ?>&Language=<?php p($Language); ?>&Section=<?php p($Section); ?>\" class=\"breadcrumb\">\n\t\t\t\t<?php echo $translator->trans(\"Articles\");  ?></A>\n\t\t\t</TD>\n\t\t\t<td class=\"breadcrumb_separator\">&nbsp;</td>\n\t\t\t<TD>\n\t\t\t\t<A HREF=\"/<?php echo $ADMIN; ?>/sections/?Pub=<?php p($Pub); ?>&Issue=<?php p($Issue); ?>&Language=<?php p($Language); ?>\" class=\"breadcrumb\" ><?php echo $translator->trans(\"Sections\");  ?></A>\n\t\t\t</TD>\n\t\t\t<td class=\"breadcrumb_separator\">&nbsp;</td>\n\t\t\t<TD>\n\t\t\t\t<A HREF=\"/<?php echo $ADMIN; ?>/issues/?Pub=<?php p($Pub); ?>\" class=\"breadcrumb\" ><?php echo $translator->trans(\"Issues\");  ?></A>\n\t\t\t</TD>\n\t\t\t<td class=\"breadcrumb_separator\">&nbsp;</td>\n\t\t\t<TD>\n\t\t\t\t<A HREF=\"<?php \\Zend_Registry::get('container')->get('router')->generate('newscoop_newscoop_publications_index'); ?>\" class=\"breadcrumb\"><?php echo $translator->trans(\"Publications\");  ?></A>\n\t\t\t</TD>\n\t\t</TR>\n\t\t</TABLE>\n\t</TD>\n</TR>\n</TABLE>\n\n<TABLE BORDER=\"0\" CELLSPACING=\"1\" CELLPADDING=\"1\" WIDTH=\"100%\" class=\"current_location_table\">\n<TR>\n\t<TD ALIGN=\"RIGHT\" WIDTH=\"1%\" NOWRAP VALIGN=\"TOP\" class=\"current_location_title\">&nbsp;<?php echo $translator->trans(\"Publication\"); ?>:</TD>\n\t<TD VALIGN=\"TOP\" class=\"current_location_content\"><?php echo htmlspecialchars($publicationObj->getName()); ?></TD>\n\n\t<TD ALIGN=\"RIGHT\" WIDTH=\"1%\" NOWRAP VALIGN=\"TOP\" class=\"current_location_title\">&nbsp;<?php echo $translator->trans(\"Issue\"); ?>:</TD>\n\t<TD VALIGN=\"TOP\" class=\"current_location_content\"><?php echo $issueObj->getIssueNumber(); ?>. <?php echo htmlspecialchars($issueObj->getName()); ?> (<?php echo htmlspecialchars($issueLanguage->getName()); ?>)</TD>\n\n\t<TD ALIGN=\"RIGHT\" WIDTH=\"1%\" NOWRAP VALIGN=\"TOP\" class=\"current_location_title\">&nbsp;<?php echo $translator->trans(\"Section\"); ?>:</TD>\n\t<TD VALIGN=\"TOP\" class=\"current_location_content\"><?php echo $sectionObj->getSectionNumber(); ?>. <?php echo htmlspecialchars($sectionObj->getName()); ?></TD>\n\n\t<TD ALIGN=\"RIGHT\" WIDTH=\"1%\" NOWRAP VALIGN=\"TOP\" class=\"current_location_title\">&nbsp;<?php echo $translator->trans(\"Article\"); ?>:</TD>\n\t<TD VALIGN=\"TOP\" class=\"current_location_content\"><?php echo htmlspecialchars($articleObj->getTitle()); ?> (<?php echo htmlspecialchars($articleLanguage->getName()); ?>)</TD>\n</TR>\n</TABLE>\n\n<table width=\"100%\" border=\"0\">\n<tr>\n\t<td style=\"padding:20px;\" align=\"center\">\n    Here you can upload an article that has been written in Open Office (files with extension \".sxw\").  Click <a href=\"/<?php echo $ADMIN; ?>/article_import/CampsiteArticleTemplate.stw\">here</a> to get the template.\n\t</td>\n</tr>\n</table>\n\n<form method=\"POST\" action=\"/<?php echo $ADMIN; ?>/article_import/CommandProcessor.php\" onsubmit=\"return <?php camp_html_fvalidate(); ?>;\" enctype=\"multipart/form-data\">\n<?php echo SecurityToken::FormParameter(); ?>\n<input type=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"1000000\" />\n<input type=\"hidden\" name=\"form_name\" value=\"upload_article_form\">\n<input type=\"hidden\" name=\"Pub\" value=\"<?php echo $Pub ?>\">\n<input type=\"hidden\" name=\"Issue\" value=\"<?php echo $Issue ?>\">\n<input type=\"hidden\" name=\"Section\" value=\"<?php echo $Section ?>\">\n<input type=\"hidden\" name=\"Article\" value=\"<?php echo $Article ?>\">\n<input type=\"hidden\" name=\"Language\" value=\"<?php echo $Language ?>\">\n<!-- BEGIN: The following fields are needed for edit.php -->\n<input type=\"hidden\" name=\"sLanguage\" value=\"<?php echo $sLanguage ?>\">\n<!-- END -->\n<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" class=\"box_table\">\n<tr>\n\t<td align=\"left\" colspan=\"2\" style=\"padding: 6px\">\n\t\t<B>Article Import</B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</td>\n</tr>\n<tr>\n\t<td style=\"padding: 6px;\">\n\t\tUpload File:\n\t</td>\n\n\t<td style=\"padding: 6px;\">\n\t\t<input type=\"file\" name=\"filename\" size=\"55\" value=\"\" alt=\"file|sxw\" emsg=\"The file name must have an extension of .sxw\" class=\"input_file\">\n\t</td>\n\n</tr>\n<tr>\n\t<td colspan=\"2\">\n\t\t<table width=\"100%\">\n\t\t<tr>\n\t\t\t<td align=\"right\" style=\"padding: 3px;\" >\n\t\t\t\t<INPUT type=\"submit\" name=\"Submit\" value=\"Upload\" class=\"button\">\n\t\t\t</td>\n\t\t\t<td align=\"left\" style=\"padding: 3px;\">\n\t\t\t\t<INPUT type=\"button\" name=\"Cancel\" value=\"Cancel\" class=\"button\" ONCLICK=\"location.href='/<?php echo $ADMIN; ?>/articles/edit.php?Pub=<?php p($Pub); ?>&Issue=<?php p($Issue); ?>&Section=<?php p($Section); ?>&Article=<?php p($Article) ?>&Language=<?php p($Language); ?>&sLanguage=<?php p($sLanguage) ?>'\">\n\t\t\t</td>\n\t\t</tr>\n\t\t</table>\n\t</td>\n</tr>\n</table>\n</form>\n"
  },
  {
    "path": "newscoop/admin-files/article_import/stylesheet.css",
    "content": "BODY, TH, TD, FORM, BLOCKQUOTE, UL, LI { \n\tfont-family: Tahoma, Arial, Helvetica, sans-serif; \n\tfont-size: 10pt; \n}\n\nSMALL, ADDRESS { \n\tfont-family: Tahoma, Arial, Helvetica, sans-serif; \n\tfont-size: 8pt; \n}\n\nA { \n\tfont-family: Tahoma, Arial, Helvetica, sans-serif; \n\tfont-size: 10pt; \n\ttext-decoration: none; \n\tcolor: darkblue; \n}\n"
  },
  {
    "path": "newscoop/admin-files/article_import/sxwToDocbook.xsl",
    "content": "<xsl:stylesheet xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\" xmlns:text=\"http://openoffice.org/2000/text\" version=\"1.0\" >\n\n<xsl:template match=\"/\">\n\t<article>\n\t\t<xsl:apply-templates/>\n\t</article>\n</xsl:template>\n\n<xsl:template match=\"text:user-field-get[@text:name='Author']\">\n\t<author><xsl:value-of select=\".\"/></author>\n</xsl:template>\n\n<xsl:template match=\"text:user-field-input[@text:name='Author']\">\n\t<author><xsl:value-of select=\".\"/></author>\n</xsl:template>\n\n<xsl:template match=\"text:user-field-input[@text:name='Title']\">\n\t<title><xsl:value-of select=\".\"/></title>\n</xsl:template>\n\n<xsl:template match=\"text:user-field-get[@text:name='Title']\">\n\t<title><xsl:value-of select=\".\"/></title>\n</xsl:template>\n\n<xsl:template match=\"text:section[@text:name='Intro']\">\n\t<abstract><xsl:value-of select=\".\"/></abstract>\n</xsl:template>\n\n<xsl:template match=\"text:section[@text:name='Body']\">\n\t<simplesect><xsl:value-of select=\".\"/></simplesect>\n</xsl:template>\n\n<xsl:template match=\"text()\"/>\n\n</xsl:stylesheet>\n\n"
  },
  {
    "path": "newscoop/admin-files/article_types/add.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n// Check permissions\nif (!$g_user->hasPermission('ManageArticleTypes')) {\n\tcamp_html_display_error($translator->trans('You do not have the right to add article types.', array(), 'article_types'));\n\texit;\n}\n\n$articleTypes = ArticleType::GetArticleTypes(true);\n\n$crumbs = array();\n$crumbs[] = array($translator->trans('Configure'), \"\");\n$crumbs[] = array($translator->trans('Article Types'), \"/$ADMIN/article_types/\");\n$crumbs[] = array($translator->trans('Add new article type', array(), 'article_types'), \"\");\necho camp_html_breadcrumbs($crumbs);\ninclude_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/javascript_common.php\");\n\n?>\n<P>\n<FORM NAME=\"dialog\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/article_types/do_add.php\" onsubmit=\"return <?php camp_html_fvalidate(); ?>;\">\n<?php echo SecurityToken::FormParameter(); ?>\n\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" CLASS=\"box_table\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B><?php echo $translator->trans('Article Types', array(), 'article_types'); ?></B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n</TR>\n<TR><TD COLSPAN=\"2\"><?php echo $translator->trans('The template name may only contain letters and the underscore (_) character.', array(), 'article_types'); ?><BR>\n</TD></TR>\n<TR>\n\t<TD ALIGN=\"LEFT\" ><?php echo $translator->trans('Template Type Name', array(), 'article_types'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_name\" ALT=\"alnum|1|A|0|0|_\" emsg=\"<?php echo $translator->trans(\"The template name may only contain letters and the underscore (_) character.\", array(), 'article_types'); ?>\" SIZE=\"15\" MAXLENGTH=\"15\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t<DIV ALIGN=\"CENTER\">\n\t<INPUT TYPE=\"submit\" class=\"button\" NAME=\"Ok\" VALUE=\"<?php  echo $translator->trans('Save'); ?>\">\n\t</DIV>\n\t</TD>\n</TR>\n</TABLE>\n</FORM>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/article_types/do_add.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Check permissions\nif (!$g_user->hasPermission('ManageArticleTypes')) {\n    camp_html_display_error($translator->trans(\"You do not have the right to add article types.\", array(), 'article_types'));\n    exit;\n}\n\n$f_name = trim(Input::Get('f_name'));\n\n$correct = true;\n$created = false;\n$errorMsgs = array();\n\nif (empty($f_name)) {\n    $correct = false;\n    $errorMsgs[] = $translator->trans('You must fill in the $1 field.', array('$1' => '</B>'.$translator->trans('Name')).'</B>');\n}\n\nif ($correct) {\n    $valid = ArticleType::IsValidFieldName($f_name);\n    if (!$valid) {\n        $correct = false;\n        $errorMsgs[] = $translator->trans('The $1 field may only contain letters and underscore (_) character.', array('$1' => '</B>'.$translator->trans('Name').'</B>'), 'article_types');\n    }\n}\n\nif ($correct) {\n\n    $articleType = new ArticleType($f_name);\n    if ($articleType->exists()) {\n        $correct = false;\n        $errorMsgs[] = $translator->trans('The article type $1 already exists.', array('$1' => '<B>'.htmlspecialchars($f_name).'</B>'), 'article_types');\n    }\n\n    if ($correct) {\n        $created = $articleType->create();\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('article_type');\n        camp_html_goto_page(\"/$ADMIN/article_types/fields/add.php?f_article_type=$f_name\");\n    }\n}\n\n$crumbs = array();\n$crumbs[] = array($translator->trans('Configure'), \"\");\n$crumbs[] = array($translator->trans('Article Types'), \"/$ADMIN/article_types/\");\n$crumbs[] = array($translator->trans(\"Adding new article type\", array(), 'article_types'), \"\");\n\necho camp_html_breadcrumbs($crumbs);\n\n?>\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<TR>\n    <TD COLSPAN=\"2\">\n        <B> <?php  echo $translator->trans(\"Adding new article type\", array(), 'article_types'); ?> </B>\n        <HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n    </TD>\n</TR>\n<TR>\n    <TD COLSPAN=\"2\">\n        <BLOCKQUOTE>\n        <?php\n        foreach ($errorMsgs as $errorMsg) {\n            echo \"<li>\".$errorMsg.\"</li>\";\n        }\n        ?>\n        </BLOCKQUOTE>\n    </TD>\n</TR>\n<TR>\n    <TD COLSPAN=\"2\">\n    <DIV ALIGN=\"CENTER\">\n    <INPUT TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php  echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php p($ADMIN); ?>/article_types/add.php'\">\n    </DIV>\n    </TD>\n</TR>\n</TABLE>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/article_types/do_comment_activation.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Check permissions\nif (!$g_user->hasPermission('ManageArticleTypes')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to rename article types.\", array(), 'article_types'));\n\texit;\n}\n\n$articleTypeName = Input::Get('f_article_type');\n$errorMsgs = array();\n\n$articleType = new ArticleType($articleTypeName);\nif ($articleType->exists()) {\n    $articleType->setCommentsEnabled(!$articleType->commentsEnabled());\n\n    $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n    $cacheService->clearNamespace('article_type');\n\n    \\Zend_Registry::get('container')->getService('dispatcher')\n        ->dispatch('article_type.comments_management', new \\Newscoop\\EventDispatcher\\Events\\GenericEvent($this, array(\n            'article_type' => $articleType,\n            'new_status' => !$articleType->commentsEnabled()\n        )));\n}\ncamp_html_goto_page(\"/$ADMIN/article_types/\");\n\n?>"
  },
  {
    "path": "newscoop/admin-files/article_types/do_del.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Check permissions\nif (!$g_user->hasPermission('DeleteArticleTypes')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to delete article types.\", array(), 'article_types'));\n\texit;\n}\n\n$articleTypeName = Input::Get('f_article_type');\n$doDelete = true;\n$errorMsgs = array();\n\nif ($doDelete) {\n\t$articleType = new ArticleType($articleTypeName);\n\t$articles = Article::GetArticlesOfType($articleTypeName);\n\tforeach ($articles as $a) {\n\t\t$a->delete();\n\t}\n\n\t$articleType->delete();\n\n\t$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n    $cacheService->clearNamespace('article_type');\n\n\tcamp_html_goto_page(\"/$ADMIN/article_types/\");\n} else {\n\t$errorMsgs[] = $translator->trans('The article type $1 could not be deleted.', array('$1' => '<B>'.htmlspecialchars($articleTypeName).'</B>'), 'article_types');\n}\n\n\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Configure\"), \"\");\n$crumbs[] = array($translator->trans(\"Article Types\"), \"/$ADMIN/article_types/\");\n$crumbs[] = array($translator->trans(\"Delete article type $1\", array('$1' => $articleTypeName), 'article_types'), \"\");\n\necho camp_html_breadcrumbs($crumbs);\n\n\n?>\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B> <?php  echo $translator->trans(\"Delete article type $1\", array('$1' => $articleTypeName), 'article_types'); ?> </B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<BLOCKQUOTE>\n\t\t<?PHP\n\t\tforeach ($errorMsgs as $errorMsg) { ?>\n\t\t\t<li><?php p($errorMsg); ?></li>\n\t\t\t<?PHP\n\t\t}\n\t\t?>\n\t\t</BLOCKQUOTE>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t<DIV ALIGN=\"CENTER\">\n\t<INPUT TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php  echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php p($ADMIN); ?>/article_types/'\">\n\t</DIV>\n\t</TD>\n</TR>\n</TABLE>\n<P>\n\n<?php camp_html_copyright_notice(); ?>"
  },
  {
    "path": "newscoop/admin-files/article_types/do_filter.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n$f_articleTypeName = Input::Get('f_article_type');\n$f_filter = Input::Get('f_filter');\n$errorMsgs = array();\n\n$res = \\ArticleType::SetTypeFilter($f_articleTypeName, $f_filter);\n\ncamp_html_goto_page(\"/$ADMIN/article_types/\");\n?>"
  },
  {
    "path": "newscoop/admin-files/article_types/do_hide.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n$articleTypeName = Input::Get('f_article_type');\n$status = Input::Get('f_status');\n$errorMsgs = array();\n\n$articleType = new ArticleType($articleTypeName);\n$articleType->setStatus($status);\n\n$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n$cacheService->clearNamespace('article_type');\n\n\\Zend_Registry::get('container')->getService('dispatcher')\n\t->dispatch('article_type.hide', new \\Newscoop\\EventDispatcher\\Events\\GenericEvent($this, array(\n\t    'article_type' => $articleType\n\t)));\n\ncamp_html_goto_page(\"/$ADMIN/article_types/\");"
  },
  {
    "path": "newscoop/admin-files/article_types/do_rename.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Check permissions\nif (!$g_user->hasPermission('ManageArticleTypes')) {\n    camp_html_display_error($translator->trans(\"You do not have the right to rename article types.\", array(), 'article_types'));\n    exit;\n}\n\n$f_oldName = trim(Input::get('f_oldName'));\n$f_name = trim(Input::Get('f_name'));\n\nif ($f_oldName == $f_name) {\n    camp_html_goto_page(\"/$ADMIN/article_types/\");\n}\n\n$correct = true;\n$created = false;\n\n$errorMsgs = array();\nif (empty($f_name)) {\n    $correct = false;\n    $errorMsgs[] = $translator->trans('You must fill in the $1 field.', array('$1' => '</B>'.$translator->trans('Name').'</B>'));\n} else {\n    $valid = ArticleType::IsValidFieldName($f_name);\n    if (!$valid) {\n        $correct = false;\n        $errorMsgs[] = $translator->trans('The $1 field may only contain letters and underscore (_) character.', array('$1' => '</B>'.$translator->trans('Name').'</B>'), 'article_types');\n    }\n\n    if ($correct) {\n        $old_articleType = new ArticleType($f_oldName);\n        if (!$old_articleType->exists()) {\n            $correct = false;\n            $errorMsgs[] = $translator->trans('The article type $1 does not exist.', array('$1' => '<B>'.htmlspecialchars($f_oldName).'</B>'), 'article_types');\n        }\n    }\n\n    if ($correct) {\n        $articleType = new ArticleType($f_name);\n        if ($articleType->exists()) {\n            $correct = false;\n            $errorMsgs[] = $translator->trans('The article type $1 already exists.', array('$1' => '<B>'. htmlspecialchars($f_name). '</B>'), 'article_types');\n        }\n    }\n\n    if ($correct) {\n        $old_articleType->rename($f_name);\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('article_type');\n\n        \\Zend_Registry::get('container')->getService('dispatcher')\n            ->dispatch('article_type.hide', new \\Newscoop\\EventDispatcher\\Events\\GenericEvent($this, array(\n                'article_type' => $articleType,\n                'old_name' => $f_oldName\n            )));\n\n        camp_html_goto_page(\"/$ADMIN/article_types/\");\n    }\n}\n\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Configure\"), \"\");\n$crumbs[] = array($translator->trans(\"Article Types\"), \"/$ADMIN/article_types/\");\n$crumbs[] = array($translator->trans(\"Rename article type $1\", array('$1' => $f_oldName), 'article_types'), \"\");\n\necho camp_html_breadcrumbs($crumbs);\n\n?>\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<TR>\n    <TD COLSPAN=\"2\">\n        <BLOCKQUOTE>\n        <?php\n        foreach ($errorMsgs as $errorMsg) {\n            echo \"<li>\".$errorMsg.\"</li>\";\n        }\n        ?>\n        </BLOCKQUOTE>\n    </TD>\n</TR>\n<TR>\n    <TD COLSPAN=\"2\">\n    <DIV ALIGN=\"CENTER\">\n    <INPUT TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php  echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php p($ADMIN); ?>/article_types/rename.php?f_name=<?php p($f_oldName); ?>'\">\n    </DIV>\n    </TD>\n</TR>\n</TABLE>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/article_types/do_translate.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Check permissions\nif (!$g_user->hasPermission('ManageArticleTypes')) {\n    camp_html_display_error($translator->trans(\"You do not have the right to add article types.\", array(), 'article_types'));\n    exit;\n}\n\n\n$f_type_id = Input::Get('f_type_id');\n$f_type_language_id = Input::Get('f_type_language_id', 'int', 0);\n$f_type_translation_name = trim(Input::Get('f_type_translation_name'));\n$correct = true;\n$created = false;\n\n$errorMsgs = array();\n\n\nif ($f_type_language_id <= 0) {\n    $correct = false;\n    $errorMsgs[] = $translator->trans('You must choose a language for the article type.', array(), 'article_types');\n}\n\nif ($correct) {\n    // Translate existing type\n    $type = new ArticleType($f_type_id);\n    $created = $type->setName($f_type_language_id, $f_type_translation_name);\n    if ($created) {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('article_type');\n        \n        \\Zend_Registry::get('container')->getService('dispatcher')\n            ->dispatch('article_type.translate', new \\Newscoop\\EventDispatcher\\Events\\GenericEvent($this, array(\n                'article_type' => $type\n            )));\n\n        camp_html_goto_page(\"/$ADMIN/article_types/index.php\");\n    }\n    else {\n        $errorMsgs[] = $translator->trans('The translation could not be added.', array(), 'article_types');\n    }\n}\n\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Configure\"), \"\");\n$crumbs[] = array($translator->trans(\"Article Types\"), \"/$ADMIN/article_types/\");\n$crumbs[] = array($translator->trans(\"Adding new article type\", array(), 'article_types'), \"\");\n\necho camp_html_breadcrumbs($crumbs);\n\n?>\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<TR>\n    <TD COLSPAN=\"2\">\n        <B> <?php echo $translator->trans(\"Adding new article type\", array(), 'article_types'); ?> </B>\n        <HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n    </TD>\n</TR>\n<TR>\n    <TD COLSPAN=\"2\">\n        <BLOCKQUOTE>\n        <?php\n        foreach ($errorMsgs as $errorMsg) {\n            echo \"<li>\".$errorMsg.\"</li>\";\n        }\n        ?>\n        </BLOCKQUOTE>\n    </TD>\n</TR>\n<TR>\n    <TD COLSPAN=\"2\">\n    <DIV ALIGN=\"CENTER\">\n    <INPUT TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php  echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php p($ADMIN); ?>/article_types/'\">\n    </DIV>\n    </TD>\n</TR>\n</TABLE>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/article_types/fields/add.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n// Check permissions\nif (!$g_user->hasPermission('ManageArticleTypes')) {\n    camp_html_display_error($translator->trans('You do not have the right to add article types.', array(), 'article_type_fields'));\n    exit;\n}\n\n$articleTypeName = Input::Get('f_article_type');\n$lang = camp_session_get('LoginLanguageId', 1);\n$langObj = new Language($lang);\n$currentLanguageId = $langObj->getLanguageId();\n\n$em = \\Zend_Registry::get('container')->getService('em');\n$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n$topicService = \\Zend_Registry::get('container')->getService('newscoop_newscoop.topic_service');\n$topicsCount = $topicService->countBy();\n$cacheKey = $cacheService->getCacheKey(array('topics_add_article_type', $topicsCount), 'topic');\n$repository = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic');\nif ($cacheService->contains($cacheKey)) {\n    $topics = $cacheService->fetch($cacheKey);\n} else {\n    $topicsQuery = $repository->getTranslatableTopics($langObj->getCode());\n    $topics = $topicsQuery->getResult();\n    $cacheService->save($cacheKey, $topics);\n}\n\n$crumbs = array();\n$crumbs[] = array($translator->trans('Configure'), \"\");\n$crumbs[] = array($translator->trans('Article Types'), \"/$ADMIN/article_types/\");\n$crumbs[] = array($articleTypeName, '');\n$crumbs[] = array($translator->trans(\"Article type fields\", array(), 'article_type_fields'), \"/$ADMIN/article_types/fields/?f_article_type=\".urlencode($articleTypeName));\n$crumbs[] = array($translator->trans(\"Add new field\", array(), 'article_type_fields'), \"\");\n\necho camp_html_breadcrumbs($crumbs);\n\ninclude_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/javascript_common.php\");\n\nforeach (ArticleTypeField::DatabaseTypes() as $type=>$sqlDesc) {\n    $options[$type] = ArticleTypeField::VerboseTypeName($type, $currentLanguageId);\n}\n\n?>\n<script>\nfunction UpdateArticleFieldContext()\n{\n    var my_form = document.forms[\"add_field_form\"]\n    var field_type = my_form.elements[\"f_article_field_type\"].value\n    var is_topic = my_form.elements[\"is_topic\"].value\n    if ((is_topic == \"false\" && field_type == \"topic\")\n            || (is_topic == \"true\" && field_type != \"topic\")) {\n        ToggleRowVisibility('topic_list')\n        ToggleBoolValue('is_topic')\n    }\n\n    var show_is_content = my_form.elements[\"show_is_content\"].value\n    if ((show_is_content == \"true\" && field_type != \"body\")\n            || (show_is_content == \"false\" && field_type == \"body\")) {\n        ToggleRowVisibility('is_content');\n        ToggleBoolValue('show_is_content');\n    }\n\n    var show_editor_size = my_form.elements[\"show_editor_size\"].value\n    if ((show_editor_size == \"true\" && field_type != \"body\")\n            || (show_editor_size == \"false\" && field_type == \"body\")) {\n        ToggleRowVisibility('editor_size');\n        ToggleBoolValue('show_editor_size');\n    }\n\n    var show_precision = my_form.elements[\"show_precision\"].value\n    if ((show_precision == \"true\" && field_type != \"numeric\")\n            || (show_precision == \"false\" && field_type == \"numeric\")) {\n        ToggleRowVisibility('precision');\n        ToggleBoolValue('show_precision');\n    }\n\n    var show_maxsize = my_form.elements[\"show_maxsize\"].value\n    if ((show_maxsize == \"true\" && field_type != \"text\")\n            || (show_maxsize == \"false\" && field_type == \"text\")) {\n        ToggleRowVisibility('maxsize');\n        ToggleBoolValue('show_maxsize');\n    }\n\n    if (field_type == \"complex_date\") {\n        $('#event_color_part').removeClass('color_sel_hidden');\n    } else {\n        $('#event_color_part').addClass('color_sel_hidden');\n    }\n}\n</script>\n\n<P>\n<FORM NAME=\"add_field_form\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/article_types/fields/do_add.php\" onsubmit=\"return <?php camp_html_fvalidate(); ?>;\">\n<?php echo SecurityToken::FormParameter(); ?>\n<input type=\"hidden\" name=\"is_topic\" id=\"is_topic\" value=\"false\">\n<input type=\"hidden\" name=\"show_is_content\" id=\"show_is_content\" value=\"false\">\n<input type=\"hidden\" name=\"show_editor_size\" id=\"show_editor_size\" value=\"false\">\n<input type=\"hidden\" name=\"show_precision\" id=\"show_precision\" value=\"false\">\n<input type=\"hidden\" name=\"show_maxsize\" id=\"show_maxsize\" value=\"true\">\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" CLASS=\"box_table\">\n<TR><TD COLSPAN=\"2\"><?php echo $translator->trans('The template name may only contain letters and the underscore (_) character.', array(), 'article_type_fields'); ?></TD></TR>\n<TR>\n    <TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Template Field Name\", array(), 'article_type_fields'); ?>:</TD>\n    <TD>\n    <INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_field_name\" SIZE=\"20\" MAXLENGTH=\"32\" alt=\"alnum|1|A|false|false|_\" emsg=\"<?php echo $translator->trans(\"The template name may only contain letters and the underscore (_) character.\", array(), 'article_type_fields'); ?>\">\n    </TD>\n</TR>\n<TR>\n    <TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Type\"); ?>:</TD>\n    <TD>\n    <SELECT NAME=\"f_article_field_type\" class=\"input_select\" onchange=\"UpdateArticleFieldContext()\">\n        <?php foreach ($options as $k => $v) {\n            if ($k == ArticleTypeField::TYPE_TOPIC && count($topics) == 0) {\n                continue;\n            }\n        ?>\n            <OPTION VALUE=\"<?php print $k; ?>\"><?php echo $v; ?></OPTION>\n        <?php } ?>\n    </SELECT>\n    </TD>\n</TR>\n<tr style=\"display: none;\" id=\"topic_list\">\n    <td align=\"right\"><?php echo $translator->trans(\"Top element\", array(), 'article_type_fields'); ?>:</td>\n    <td>\n        <select name=\"f_root_topic_id\" class=\"input_select\">\n<?php\n\nforeach ($topics as $topic) {\n    echo '<option value=\"' . $topic->getTopicId() . '\">'\n        . htmlspecialchars($topicService->getReadablePath($topic)) . \"</option>\\n\";\n}\n?>\n        </select>\n    </td>\n</tr>\n\n<style type=\"text/css\">\n.color_sel_hidden {\n    display: none;\n}\n.color_sel_visible {\n    margin-top: -8px;\n    border-color: #c0c0c0;\n    border-width: 8px;\n    border-style: solid;\n    margin-left: 25px;\n    position: absolute;\n}\n.color_one_current {\n    border-color: #404040;\n    border-width: 1px;\n    border-style: solid;\n\n    float:left;\n    width:14px;\n    height:14px;\n    cursor:pointer\n}\n.color_one_list {\n    border-color: #404040;\n    border-width: 1px;\n    border-style: solid;\n\n    float:right;\n    width:14px;\n    height:14px;\n    cursor:pointer\n}\n\n</style>\n\n<script type=\"text/javascript\">\nwindow.set_field_color = function (color) {\n    $('#f_event_color').val(color);\n}\n</script>\n\n<tr class=\"color_sel_hidden\" id=\"event_color_part\">\n    <td align=\"right\"><?php echo $translator->trans('Event Color', array(), 'article_type_fields'); ?>:</td><td>\n<?php\n\n$color_list = array(\n'#ff4040',\n'#ff4080',\n'#ff8040',\n'#ff8080',\n\n'#ff40ff',\n\n'#40ff40',\n'#80ff40',\n'#40ff80',\n'#80ff80',\n\n'#ffff40',\n\n'#4040ff',\n'#8040ff',\n'#4080ff',\n'#8080ff',\n\n'#40ffff',\n\n'#808080',\n);\n\n        $cur_color = ArticleTypeField::getDefaultColor();\n\n        $row_rank = 0;\n        $color_div = '';\n\n        $color_div .= '<div id=\"color_sel_' . $row_rank . '\" class=\"color_sel_hidden color_sel_visible\">';\n        foreach ($color_list as $one_color) {\n            $color_div .= '<div class=\"color_one_list\" style=\"background:' . $one_color . ';\" onClick=\"$(\\'#color_val_' . $row_rank . '\\').css(\\'backgroundColor\\', \\'' . $one_color . '\\'); $(\\'#color_sel_' . $row_rank . '\\').addClass(\\'color_sel_hidden\\'); window.set_field_color(\\'' . $one_color . '\\'); return false;\";></div>';\n        }\n        $color_div .= '</div>';\n        $color_div .= '<div class=\"color_one_current\" id=\"color_val_' . $row_rank . '\" style=\"background-color:' . $cur_color . ';\" href=\"#\" onClick=\"$(\\'#color_sel_' . $row_rank . '\\').toggleClass(\\'color_sel_hidden\\')\"; return false;\"></div>';\n        echo $color_div;\n?>\n\n    <input type=\"text\" style=\"display: none\" id=\"f_event_color\" name=\"f_event_color\" value=\"<?php echo $cur_color; ?>\">\n</td>\n\n</tr>\n<tr style=\"display: none;\" id=\"is_content\">\n    <td align=\"right\"><?php echo $translator->trans('Page Read Count?', array(), 'article_type_fields'); ?>:</td>\n    <td><input type=\"checkbox\" name=\"f_is_content\"></td>\n</tr>\n<tr style=\"display: none;\" id=\"editor_size\">\n    <td align=\"right\"><?php echo $translator->trans('Editor size'); ?>:</td>\n    <td>\n        <select name=\"f_editor_size\" onChange=\"if (this.value == 'custom') document.getElementById('editor_size_custom').style.display = 'inline'; else document.getElementById('editor_size_custom').style.display = 'none';\">\n            <option value=\"small\"><?php echo $translator->trans('Small ($1 pixels)', array('$1' => ArticleTypeField::BODY_ROWS_SMALL), 'article_type_fields'); ?></option>\n            <option value=\"medium\"><?php echo $translator->trans('Medium ($1 pixels)', array('$1' => ArticleTypeField::BODY_ROWS_MEDIUM), 'article_type_fields'); ?></option>\n            <option value=\"large\"><?php echo $translator->trans('Large ($1 pixels)', array('$1' => ArticleTypeField::BODY_ROWS_LARGE), 'article_type_fields');?></option>\n            <option value=\"custom\"><?php echo $translator->trans('Custom', array(), 'article_type_fields'); ?></option>\n        </select>\n        &nbsp;\n        <input type=\"text\" name=\"f_editor_size_custom\" class=\"input_text\" value=\"160\" id=\"editor_size_custom\" size=\"3\" style=\"display: none;\">\n    </td>\n</tr>\n<tr style=\"display: none;\" id=\"precision\">\n    <td align=\"right\"><?php echo $translator->trans('Precision', array(), 'article_type_fields'); ?>:</td>\n    <td><input type=\"text\" class=\"input_text\" size=\"2\" maxlength=\"2\" name=\"f_precision\" emsg=\"<?php echo $translator->trans('You must input a number greater than $1 and less than $2 into the $3 field.', array('$1' => 0, '$2' => 99, '$3' => $translator->trans('Precision', array(), 'article_type_fields')), 'article_type_fields'); ?>\" alt=\"number|0|0|99|bok\" ></td>\n</tr>\n<tr style=\"display: table-row;\" id=\"maxsize\">\n    <td align=\"right\"><?php echo $translator->trans('Characters limit', array(), 'article_type_fields'); ?>:</td>\n    <td>\n        <input type=\"text\" class=\"input_text\" size=\"3\" maxlength=\"3\" name=\"f_maxsize\" emsg=\"<?php echo $translator->trans('You must input a number greater than $1 and less than $2 into the $3 field.', array('$1' => 0, '$2' => 999, '$3' => $translator->trans('Characters limit', array(), 'article_type_fields')), 'article_type_fields'); ?>\" alt=\"number|0|1|999|bok\" >\n    </td>\n</tr>\n<TR>\n    <TD COLSPAN=\"2\">\n    <DIV ALIGN=\"CENTER\">\n    <INPUT TYPE=\"HIDDEN\" NAME=\"f_article_type\" VALUE=\"<?php  print htmlspecialchars($articleTypeName); ?>\">\n    <INPUT TYPE=\"submit\" class=\"button\" NAME=\"OK\" VALUE=\"<?php  echo $translator->trans('Save'); ?>\">\n    </DIV>\n    </TD>\n</TR>\n</TABLE>\n</FORM>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/article_types/fields/do_add.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleTypeField.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Check permissions\nif (!$g_user->hasPermission('ManageArticleTypes')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to add article type fields.\", array(), 'article_type_fields'));\n\texit;\n}\n\n$articleTypeName = Input::Get('f_article_type');\n$fieldName = trim(Input::Get('f_field_name'));\n$showInEditor = Input::Get('f_show_in_editor', 'int', 0);\n$fieldType = trim(Input::Get('f_article_field_type'));\n$rootTopicId = Input::Get('f_root_topic_id', 'int', 0);\n$isContent = Input::Get('f_is_content');\n$precision = Input::Get('f_precision');\n$editorSize = Input::Get('f_editor_size');\n$editorSizeCustom = Input::Get('f_editor_size_custom');\n$maxsize = Input::Get('f_maxsize');\n$eventColor = Input::Get('f_event_color');\n\n$field = new ArticleTypeField($articleTypeName, $fieldName);\n\n$correct = true;\n$errorMsgs = array();\n\nif (!ArticleType::IsValidFieldName($fieldName)) {\n\t$errorMsgs[] = $translator->trans('The $1  must not be void and may only contain letters and underscore (_) character.', array('$1' => $translator->trans('Name')), 'article_type_fields');\n\t$correct = false;\n}\nif ($field->exists()) {\n\t$errorMsgs[] = $translator->trans('The field $1 already exists.', array('$1' => '<B>'.urlencode($fieldName).'</B>'), 'article_type_fields');\n\t$correct = false;\n}\n\n$validTypes = array_keys(ArticleTypeField::DatabaseTypes());\nif (!in_array($fieldType, $validTypes)) {\n\t$errorMsgs[] = $translator->trans('Invalid field type.', array(), 'article_type_fields');\n\t$correct = false;\n}\n\n$article = new MetaArticle();\nif ($article->has_property($fieldName) || method_exists($article, $fieldName)) {\n\t$correct = false;\n\t$errorMsgs[] = $translator->trans(\"The property $1 is already in use.\", array('$1' => $fieldName), 'article_type_fields');\n}\n\nif ($correct) {\n    if ($editorSize == 'small') $editorSize = ArticleTypeField::BODY_ROWS_SMALL;\n    else if ($editorSize == 'medium') $editorSize = ArticleTypeField::BODY_ROWS_MEDIUM;\n    else if ($editorSize == 'large') $editorSize = ArticleTypeField::BODY_ROWS_LARGE;\n    else if ($editorSize == 'custom') $editorSize = $editorSizeCustom;\n    else $editorSize = ArticleTypeField::BODY_ROWS_MEDIUM;\n    \n    $params = array('root_topic_id'=>$rootTopicId, 'is_content'=>strtolower($isContent) == 'on',\n\t'precision'=>$precision, 'maxsize'=>$maxsize, 'editor_size' => $editorSize, 'event_color' => $eventColor,\n\t'show_in_editor'=>$showInEditor\n\t);\n\t$field->create($fieldType, $params);\n    $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n    $cacheService->clearNamespace('article_type');\n\n\tcamp_html_goto_page(\"/$ADMIN/article_types/fields/?f_article_type=\".urlencode($articleTypeName));\n}\n\n$crumbs = array();\n$crumbs[] = array($translator->trans('Configure'), \"\");\n$crumbs[] = array($translator->trans('Article Types'), \"/$ADMIN/article_types/\");\n$crumbs[] = array($articleTypeName, '');\n$crumbs[] = array($translator->trans(\"Article type fields\", array(), 'article_type_fields'), \"/$ADMIN/article_types/fields/?f_article_type=\".urlencode($articleTypeName));\n$crumbs[] = array($translator->trans(\"Adding new field\", array(), 'article_type_fields'), \"\");\n\necho camp_html_breadcrumbs($crumbs);\n\n?>\n\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<BLOCKQUOTE>\n\t\t<ul>\n\t\t<?php\n\t\tforeach ($errorMsgs as $errorMsg) { ?>\n\t\t\t<li><?php p($errorMsg); ?></li>\n\t\t\t<?php\n\t\t}\n\t\t?>\n\t\t</ul>\n\t\t</BLOCKQUOTE>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t<DIV ALIGN=\"CENTER\">\n\t<INPUT TYPE=\"button\" class=\"button\" NAME=\"Ok\" VALUE=\"<?php echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php p($ADMIN); ?>/article_types/fields/add.php?f_article_type=<?php print urlencode($articleTypeName); ?>'\">\n\t</DIV>\n\t</TD>\n</TR>\n</TABLE>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/article_types/fields/do_del.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Check permissions\nif (!$g_user->hasPermission('DeleteArticleTypes')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to delete article type fields.\", array(), 'article_type_fields'));\n\texit;\n}\n\n$articleTypeName = Input::Get('f_article_type');\n$fieldName = Input::Get('f_field_name');\n\n\n$field = new ArticleTypeField($articleTypeName, $fieldName);\nif ($field->exists()) {\n\t$field->delete();\n\n    $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n    $cacheService->clearNamespace('article_type');\n}\ncamp_html_goto_page(\"/$ADMIN/article_types/fields/?f_article_type=\".urlencode($articleTypeName));\n?>"
  },
  {
    "path": "newscoop/admin-files/article_types/fields/do_hide.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!Saas::singleton()->hasPermission('ManageArticleTypes')) {\n    camp_html_display_error($translator->trans(\"You do not have the right to hide article types.\", array(), 'article_type_fields'));\n    exit;\n}\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n$articleTypeName = Input::Get('f_article_type');\n$articleTypeFieldName = Input::Get('f_field_name');\n$status = Input::Get('f_status');\n$errorMsgs = array();\n\n$articleTypeField = new ArticleTypeField($articleTypeName, $articleTypeFieldName);\n$articleTypeField->setStatus($status);\n\n$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n$cacheService->clearNamespace('article_type');\n\ncamp_html_goto_page(\"/$ADMIN/article_types/fields/?f_article_type=\".urlencode($articleTypeName));\n\n?>"
  },
  {
    "path": "newscoop/admin-files/article_types/fields/do_rename.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Check permissions\nif (!$g_user->hasPermission('ManageArticleTypes')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to rename article type fields.\", array(), 'article_type_fields'));\n\texit;\n}\n\n$articleTypeName = Input::Get('f_article_type');\n$f_oldName = Input::Get('f_old_field_name');\n$f_name = Input::Get('f_new_field_name');\n\nif ($f_oldName == $f_name) {\n   \tcamp_html_goto_page(\"/$ADMIN/article_types/fields/?f_article_type=\". urlencode($articleTypeName));\n}\n$correct = true;\n$created = false;\n\n$errorMsgs = array();\nif (empty($f_name)) {\n    $correct = false;\n    $errorMsgs[] = $translator->trans('You must fill in the $1 field.', array('$1' => '<B>'.$translator->trans('Name').'</B>'));\n} else {\n\t$valid = ArticleType::IsValidFieldName($f_name);\n\tif (!$valid) {\n\t\t$correct = false;\n\t\t$errorMsgs[] = $translator->trans('The $1 field may only contain letters and underscore (_) character.', array('$1' => '<B>'.$translator->trans('Name').'</B>'), 'article_type_fields');\n    }\n\n    if ($correct) {\n    \t$old_articleTypeField = new ArticleTypeField($articleTypeName, $f_oldName);\n    \tif (!$old_articleTypeField->exists()) {\n\t\t    $correct = false;\n\t\t    $errorMsgs[] = $translator->trans('The field $1 does not exist.', array('$1' => '<B>'.htmlspecialchars($f_oldName).'</B>'), 'article_type_fields');\n\t\t}\n    }\n\n\tif ($correct) {\n\t\t$articleTypeField = new ArticleTypeField($articleTypeName, $f_name);\n\t\tif ($articleTypeField->exists()) {\n\t\t\t$correct = false;\n\t\t\t$errorMsgs[] = $translator->trans('The field $1 already exists.', array('$1' => '<B>'.htmlspecialchars($f_name). '</B>'), 'article_type_fields');\n\t\t}\n\t}\n\n\tif ($correct) {\n\t\t$article = new MetaArticle();\n\t\tif ($article->has_property($f_name) || method_exists($article, $f_name)) {\n\t\t\t$correct = false;\n\t\t\t$errorMsgs[] = $translator->trans(\"The property $1 is already in use.\", array('$1' => $f_name), 'article_type_fields');\n\t\t}\n\t}\n\n    if ($correct) {\n    \t$old_articleTypeField->rename($f_name);\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('article_type');\n\n    \tcamp_html_goto_page(\"/$ADMIN/article_types/fields/?f_article_type=\". urlencode($articleTypeName));\n\t}\n}\n\n$crumbs = array();\n$crumbs[] = array($translator->trans('Configure'), \"\");\n$crumbs[] = array($translator->trans('Article Types'), \"/$ADMIN/article_types/\");\n$crumbs[] = array($articleTypeName, '');\n$crumbs[] = array($translator->trans(\"Article type fields\", array(), 'article_type_fields'), \"/$ADMIN/article_types/fields/?f_article_type=\".urlencode($articleTypeName));\n$crumbs[] = array($translator->trans(\"Renaming article type field\", array(), 'article_type_fields'), \"\");\n\necho camp_html_breadcrumbs($crumbs);\n\n?>\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B> <?php  echo $translator->trans(\"Renaming article type field\", array(), 'article_type_fields'); ?> </B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<BLOCKQUOTE>\n\t\t<?php\n\t\tforeach ($errorMsgs as $errorMsg) {\n\t\t\techo \"<li>\".$errorMsg.\"</li>\";\n\t\t}\n\t\t?>\n\t\t</BLOCKQUOTE>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t<DIV ALIGN=\"CENTER\">\n\t<INPUT TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php  echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php p($ADMIN); ?>/article_types/fields/rename.php?f_article_type=<?php print $articleTypeName; ?>&f_field_name=<?php p($f_oldName); ?>'\">\n\t</DIV>\n\t</TD>\n</TR>\n</TABLE>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/article_types/fields/do_reorder.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!Saas::singleton()->hasPermission('ManageArticleTypes')) {\n    camp_html_display_error($translator->trans(\"You do not have the right to reorder article types.\", array(), 'article_types'));\n    exit;\n}\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n$articleTypeName = Input::Get('f_article_type');\n$articleTypeFieldName = Input::Get('f_field_name');\n$move = Input::Get('f_move');\n$errorMsgs = array();\n\n$articleTypeField = new ArticleTypeField($articleTypeName, $articleTypeFieldName);\n$articleTypeField->reorder($move);\n\n$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n$cacheService->clearNamespace('article_type');\n\ncamp_html_goto_page(\"/$ADMIN/article_types/fields/?f_article_type=\".urlencode($articleTypeName));\n?>"
  },
  {
    "path": "newscoop/admin-files/article_types/fields/do_retype.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Check permissions\nif (!$g_user->hasPermission('ManageArticleTypes')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to reassign article type fields.\", array(), 'article_type_fields'));\n\texit;\n}\n\n$articleTypeName = Input::Get('f_article_type');\n$fieldName = trim(Input::Get('f_field_name'));\n$fieldType = trim(Input::Get('f_article_field_type'));\n\n$field = new ArticleTypeField($articleTypeName, $fieldName);\n\n$correct = true;\n$errorMsgs = array();\n\nif (!$field->exists()) {\n\t$errorMsgs[] = $translator->trans('The field $1 does not exist.', array('$1' => '<B>'.urlencode($fieldName).'</B>'), 'article_type_fields');\n\t$correct = false;\n}\n\nif (array_search($fieldType, $field->getConvertibleToTypes()) === false) {\n\t$errorMsgs[] = $translator->trans('Can not convert the field $1 from $2 to type $3.', array('$1' => $fieldName, '$2' => $field->getType(), '$3' => $fieldType), 'article_type_fields');\n\t$correct = false;\n}\n\nif ($correct) {\n\t$field->setType($fieldType);\n\n\t$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n    $cacheService->clearNamespace('article_type');\n\n\tcamp_html_goto_page(\"/$ADMIN/article_types/fields/?f_article_type=\".urlencode($articleTypeName));\n}\n\n$crumbs = array();\n$crumbs[] = array($translator->trans('Configure'), \"\");\n$crumbs[] = array($translator->trans('Article Types'), \"/$ADMIN/article_types/\");\n$crumbs[] = array($articleTypeName, '');\n$crumbs[] = array($translator->trans(\"Article type fields\", array(), 'article_type_fields'), \"/$ADMIN/article_types/fields/?f_article_type=\".urlencode($articleTypeName));\n$crumbs[] = array($translator->trans(\"Adding new field\", array(), 'article_type_fields'), \"\");\n\necho camp_html_breadcrumbs($crumbs);\n\n?>\n\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B> <?php  echo $translator->trans(\"Adding new field\", array(), 'article_type_fields'); ?> </B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<BLOCKQUOTE><ul>\n\t\t<?php\n\t\tforeach ($errorMsgs as $errorMsg) { ?>\n\t\t\t<li><?php p($errorMsg); ?></li>\n\t\t\t<?php\n\t\t}\n\t\t?>\n\t\t</ul></BLOCKQUOTE>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t<DIV ALIGN=\"CENTER\">\n\t<INPUT TYPE=\"button\" class=\"button\" NAME=\"Ok\" VALUE=\"<?php  echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php p($ADMIN); ?>/article_types/fields/add.php?f_article_type=<?php print urlencode($articleTypeName); ?>'\">\n\t</DIV>\n\t</TD>\n</TR>\n</TABLE>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/article_types/fields/do_translate.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Check permissions\nif (!$g_user->hasPermission('ManageArticleTypes')) {\n    camp_html_display_error($translator->trans(\"You do not have the right to translate article types.\", array(), 'article_type_fields'));\n    exit;\n}\n\n$f_field_id = Input::Get('f_field_id');\n$f_field_language_id = Input::Get('f_field_language_id', 'int', 0);\n$f_field_translation_name = trim(Input::Get('f_field_translation_name'));\n$f_article_type = Input::Get('f_article_type');\n$correct = true;\n$created = false;\n\n$errorMsgs = array();\nif (empty($f_field_translation_name)) {\n    $correct = false;\n    $errorMsgs[] = $translator->trans('You must fill in the $1 field.', array('$1' => '<B>'.$translator->trans('Name').'</B>'));\n}\n\nif ($f_field_language_id <= 0) {\n    $correct = false;\n    $errorMsgs[] = $translator->trans('You must choose a language for the field.');\n}\n\nif ($correct) {\n    // Translate existing type\n    $field = new ArticleTypeField($f_article_type, $f_field_id);\n    $created = $field->setName($f_field_language_id, $f_field_translation_name);\n\n    if ($created) {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('article_type');\n\n        camp_html_goto_page(\"/$ADMIN/article_types/fields/?f_article_type=\". $f_article_type);\n        exit;\n    } else {\n        $errorMsgs[] = $translator->trans('The translation could not be added.');\n    }\n}\n\n$crumbs = array();\n$crumbs[] = array($translator->trans('Configure'), \"\");\n$crumbs[] = array($translator->trans('Article Types'), \"/$ADMIN/article_types/\");\n$crumbs[] = array($f_article_type, '');\n$crumbs[] = array($translator->trans(\"Article type fields\", array(), 'article_type_fields'), \"/$ADMIN/article_types/fields/?f_article_type=\".urlencode($f_article_type));\n$crumbs[] = array($translator->trans('Add new article type', array(), 'article_types'), \"\");\n\necho camp_html_breadcrumbs($crumbs);\n?>\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<TR>\n    <TD COLSPAN=\"2\">\n        <B> <?php  echo $translator->trans(\"Translating field\"); ?> </B>\n        <HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n    </TD>\n</TR>\n<TR>\n    <TD COLSPAN=\"2\">\n        <BLOCKQUOTE>\n        <?php\n        foreach ($errorMsgs as $errorMsg) {\n            echo \"<li>\".$errorMsg.\"</li>\";\n        }\n        ?>\n        </BLOCKQUOTE>\n    </TD>\n</TR>\n<TR>\n    <TD COLSPAN=\"2\">\n    <DIV ALIGN=\"CENTER\">\n    <INPUT TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php  echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php p($ADMIN); ?>/article_types/fields/?f_article_type=<?php p($f_article_type); ?>'\">\n    </DIV>\n    </TD>\n</TR>\n</TABLE>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/article_types/fields/index.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Translation.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$request = \\Zend_Registry::get('container')->get('request');\n$locale = $request->getLocale();\n\nif (!Saas::singleton()->hasPermission('ManageArticleTypes')) {\n    camp_html_display_error($translator->trans(\"You do not have the right to manage article types.\", array(), 'article_type_fields'));\n    exit;\n}\n\n$articleTypeName = Input::Get('f_article_type');\n// return value is sorted by language\n$allLanguages = Language::GetLanguages(null, null, null, array(), array(), true);\n\n$lang = Language::GetLanguageByCode($locale);\n$languageObj = new Language($lang->getLanguageId());\n\n$articleType = new ArticleType($articleTypeName);\n$fields = $articleType->getUserDefinedColumns(null, true, true);\n\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Configure\"), \"\");\n$crumbs[] = array($translator->trans(\"Article Types\"), \"/$ADMIN/article_types/\");\n$crumbs[] = array($articleTypeName, \"\");\n$crumbs[] = array($translator->trans(\"Article type fields\", array(), 'article_type_fields'), \"\");\n\necho camp_html_breadcrumbs($crumbs);\n\n$row_rank = 0;\n\nif ($g_user->hasPermission(\"ManageArticleTypes\")) {\n\tinclude_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/javascript_common.php\");\n\t?>\n<script>\nvar field_ids = new Array;\nvar allShown = 0;\n</script>\n<?php\nfor ($i = 0; $i < count($fields); $i++) { ?>\n<script>\nfield_ids.push(\"translate_field_\"+<?php p($i); ?>);\n</script>\n<?php } ?>\n\n<style type=\"text/css\">\n.color_sel_hidden {\n    display: none;\n}\n.color_sel_visible {\n    margin-top: -8px;\n    border-color: #c0c0c0;\n    border-width: 8px;\n    border-style: solid;\n    margin-left: 25px;\n    position: absolute;\n}\n.color_one_current {\n    border-color: #404040;\n    border-width: 1px;\n    border-style: solid;\n\n    float:left;\n    width:14px;\n    height:14px;\n    cursor:pointer\n}\n.color_one_list {\n    border-color: #404040;\n    border-width: 1px;\n    border-style: solid;\n\n    float:right;\n    width:14px;\n    height:14px;\n    cursor:pointer\n}\n\n</style>\n<script type=\"text/javascript\">\n\nwindow.save_field_color = function(article_type, field_name, color_value) {\n\n    var url = '<?php echo $Campsite['WEBSITE_URL']; ?>/admin/multidate/setfieldcolor?f_article_type=' + article_type + '&f_field_name=' + field_name + '&f_color_value=' + color_value;\n\n    callServer(['ArticleTypeField', 'SetFieldColor'], [\n        article_type, field_name, color_value\n    ], function(msg) {\n        flashMessage(msg);\n    });\n\n};\n\n</script>\n\n<?php\n\n$color_list = array(\n'#ff4040',\n'#ff4080',\n'#ff8040',\n'#ff8080',\n\n'#ff40ff',\n\n'#40ff40',\n'#80ff40',\n'#40ff80',\n'#80ff80',\n\n'#ffff40',\n\n'#4040ff',\n'#8040ff',\n'#4080ff',\n'#8080ff',\n\n'#40ffff',\n\n'#808080',\n);\n\n?>\n\n<TABLE class=\"action_buttons\" STYLE=\"padding-top: 5px;\" BORDER=\"0\" CELLPADDING=\"1\" CELLSPACING=\"0\">\n<TBODY>\n<TR>\n    <TD><A HREF=\"/<?php echo $ADMIN; ?>/article_types/\"><IMG BORDER=\"0\" SRC=\"<?php echo $Campsite['ADMIN_IMAGE_BASE_URL']; ?>/left_arrow.png\"></A></TD>\n    <TD><B><A HREF=\"/<?php echo $ADMIN; ?>/article_types/\"><?php echo $translator->trans('Back to Article Types List', array(), 'article_type_fields'); ?></A></B></TD>\n</TR>\n</TBODY>\n</TABLE>\n\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\" class=\"action_buttons\">\n<TR>\n    <?php\n        if (!empty($articleTypeName))  {\n            echo '\n                <TD><A HREF=\"/'.$ADMIN.'/article_types/fields/add.php?f_article_type='.urlencode($articleTypeName).'\" ><IMG SRC=\"'.$Campsite[\"ADMIN_IMAGE_BASE_URL\"].'/add.png\" BORDER=\"0\"></A></TD>\n                <TD><B><A HREF=\"/'.$ADMIN.'/article_types/fields/add.php?f_article_type='.urlencode($articleTypeName).'\" >';\n                echo $translator->trans(\"Add new field\");\n                echo '</A></B></TD>\n            ';\n        }\n    ?>\n\t<TD><DIV STYLE=\"width:15px;\"></DIV></TD>\n\t\t<TD><A HREF=\"javascript: void(0);\"\n               ONCLICK=\"if (allShown == 0) {\n                            ShowAll(field_ids);\n                            allShown = 1;\n                            document.getElementById('showtext').innerHTML = '<?php echo $translator->trans(\"Hide human-readable field names\", array(), 'article_type_fields'); ?>';\n                            document['show'].src='<?php print $Campsite['ADMIN_IMAGE_BASE_URL']; ?>/viewmagminus.png';\n                        } else {\n                            HideAll(field_ids);\n                            allShown = 0;\n                            document.getElementById('showtext').innerHTML = '<?php echo $translator->trans(\"Edit and translate human-readable field names\", array(), 'article_type_fields'); ?>';\n                            document['show'].src='<?php print $Campsite['ADMIN_IMAGE_BASE_URL']; ?>/viewmagplus.png';\n                        }\">\n\t\t      <IMG NAME=\"show\" SRC=\"<?php echo $Campsite['ADMIN_IMAGE_BASE_URL']; ?>/viewmagplus.png\" BORDER=\"0\"></A></TD>\n    \t<TD><B><A HREF=\"javascript: void(0);\"\n                    ONCLICK=\"if (allShown == 0) {\n                                ShowAll(field_ids);\n                                allShown = 1;\n                                document.getElementById('showtext').innerHTML = '<?php echo $translator->trans(\"Hide human-readable field names\", array(), 'article_type_fields'); ?>';\n                                document['show'].src='<?php print $Campsite['ADMIN_IMAGE_BASE_URL']; ?>/viewmagminus.png';\n                                } else {\n                                HideAll(field_ids);\n                                allShown = 0;\n                                document.getElementById('showtext').innerHTML = '<?php echo $translator->trans(\"Edit and translate human-readable field names\", array(), 'article_type_fields'); ?>';\n                                document['show'].src='<?php print $Campsite['ADMIN_IMAGE_BASE_URL']; ?>/viewmagplus.png';\n                                }\"><DIV ID=\"showtext\"><?php echo $translator->trans(\"Edit and translate human-readable field names\", array(), 'article_type_fields'); ?></DIV></A></B></TD>\n\n\n\n</TR>\n</TABLE>\n<?php  } ?>\n\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"1\" CELLPADDING=\"3\" class=\"table_list\">\n<TR class=\"table_list_header\">\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Order\"); ?></B></TD>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Template Field Name\", array(), 'article_type_fields'); ?></B></TD>\n\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Type\"); ?></B></TD>\n\t<?php  if ($g_user->hasPermission(\"ManageArticleTypes\")) { ?>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Display Name\", array(), 'article_type_fields'); ?></B></TD>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Translate\"); ?></B></TD>\n    <TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Page Read Count?\", array(), 'article_type_fields'); ?></B></TD>\n    <TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Editorial Content?\", array(), 'article_type_fields'); ?></B></TD>\n    <TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Event Color\", array(), 'article_type_fields'); ?></B></TD>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Show to Authors?\", array(), 'article_type_fields'); ?></B></TD>\n\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Delete\"); ?></B></TD>\n\t<?php  } ?>\n</TR>\n<?php\n$color= 0;\n$i = 0;\n$duplicateFieldsCount = 0;\nforeach ($fields as $field) {\n        $row_rank += 1;\n\n\tif ($field->getStatus() == 'hidden') {\n\t\t$hideShowText = $translator->trans('show', array(), 'article_type_fields');\n\t\t$hideShowStatus = 'show';\n\t\t$hideShowImage = \"is_hidden.png\";\n\t}\n\telse {\n\t\t$hideShowText = $translator->trans('hide', array(), 'article_type_fields');\n\t\t$hideShowStatus = 'hide';\n\t\t$hideShowImage = \"is_shown.png\";\n\t}\n\tif ($field->isContent()) {\n\t    $contentType = 'non content';\n        $isContentField = 'true';\n        $setContentField = 'false';\n\t} else {\n\t    $contentType = 'content';\n        $isContentField = 'false';\n        $setContentField = 'true';\n\t}\n\tif ($field->showInEditor()) {\n\t    $editorType = 'not displayed in editor';\n        $showInEditor = 'true';\n        $setShowInEditor = 'false';\n\t} else {\n\t    $editorType = 'displayed in editor';\n        $showInEditor = 'false';\n        $setShowInEditor = 'true';\n\t}\n\t$fieldName = $field->getPrintName();\n\t$article = new MetaArticle();\n\tif ($article->has_property($fieldName) || method_exists($article, $fieldName)) {\n\t\t$duplicateFieldName = true;\n\t\t$duplicateFieldsCount++;\n\t} else {\n\t\t$duplicateFieldName = false;\n\t}\n\n?>\n\n\n\n<TR <?php  if ($color) { $color=0; ?>class=\"list_row_even\"<?php  } else { $color=1; ?>class=\"list_row_odd\"<?php  } ?>>\n\t<TD>\n\t\t<TABLE><TR>\n\t\t<TD>\n\t\t<DIV STYLE=\"width: 15px;\">\n            <?php if (count($fields) > 1 && $i < count($fields) - 1) { ?><A HREF=\"/<?php echo $ADMIN; ?>/article_types/fields/do_reorder.php?f_article_type=<?php print urlencode($articleTypeName); ?>&f_field_name=<?php print $field->getPrintName(); ?>&f_move=down&<?php echo SecurityToken::URLParameter(); ?>\"><IMG BORDER=\"0\" SRC=\"<?php echo $Campsite['ADMIN_IMAGE_BASE_URL']; ?>/down_arrow.png\"></A><?php } else { ?>&nbsp;<?php } ?>\n\t\t</DIV>\n\t\t</TD>\n\t\t<TD>\n\t\t<DIV STYLE=\"width: 15px;\">\n            <?php if (count($fields) > 1 && $i != 0) { ?><A HREF=\"/<?php echo $ADMIN; ?>/article_types/fields/do_reorder.php?f_article_type=<?php print urlencode($articleTypeName); ?>&f_field_name=<?php print $field->getPrintName(); ?>&f_move=up&<?php echo SecurityToken::URLParameter(); ?>\"><IMG BORDER=\"0\" SRC=\"<?php echo $Campsite['ADMIN_IMAGE_BASE_URL']; ?>/up_arrow.png\"></A><?php } else { ?>&nbsp;<?php } ?>\n\t\t</DIV>\n\t\t</TD>\n\t\t</TR></TABLE>\n\t</TD>\n\n\t<TD>\n        <?php if ($duplicateFieldName) { echo '<div class=\"failure_message\">'; } ?>\n        <A HREF=\"/<?php echo $ADMIN; ?>/article_types/fields/rename.php?f_article_type=<?php print urlencode($articleTypeName); ?>&f_field_name=<?php print $field->getPrintName(); ?>\"><?php  print htmlspecialchars($field->getPrintName()); ?></A>&nbsp;\n\t\t<?php if ($duplicateFieldName) { echo '**</div>'; } ?>\n\t</TD>\n\n\t<TD>\n        <A HREF=\"/<?php echo $ADMIN; ?>/article_types/fields/retype.php?f_article_type=<?php print urlencode($articleTypeName); ?>&f_field_name=<?php print $field->getPrintName(); ?>\"><?php print htmlspecialchars($field->getVerboseTypeName($languageObj->getLanguageId())); ?></A>\n\t</TD>\n\n\t<TD>\n\t\t<?php print htmlspecialchars($field->getDisplayName($languageObj->getLanguageId())); ?> <?php print htmlspecialchars($field->getDisplayNameLanguageCode($languageObj->getLanguageId())); ?>\n\t</TD>\n\n\t<td>\n\t\t<a href=\"javascript: void(0);\" onclick=\"HideAll(field_ids); ShowElement('translate_field_<?php p($i); ?>');\"><img src=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/localizer.png\" alt=\"<?php echo $translator->trans(\"Translate\"); ?>\" title=\"<?php echo $translator->trans(\"Translate\"); ?>\" border=\"0\"></a>\n\t</td>\n\n    <TD ALIGN=\"CENTER\">\n        <?php if ($field->getType() == ArticleTypeField::TYPE_BODY) { ?>\n        <input type=\"checkbox\" title=\"<?php echo $translator->trans('Does serving this field count as a page read for statistics?', array(), 'article_type_fields'); ?>\" <?php if ($field->isContent()) { ?>checked<?php } ?> id=\"set_is_content_<?php echo $i; ?>\" name=\"set_is_content_<?php echo $i; ?>\" \n        onclick=\"if (confirm('<?php echo $translator->trans('Are you sure you want to make $1 a $2 field?', array('$1' => $field->getPrintName(), '$2' => $contentType), 'article_type_fields'); ?>')) { location.href='/<?php p($ADMIN); ?>/article_types/fields/set_is_content.php?f_article_type=<?php print urlencode($articleTypeName); ?>&f_field_name=<?php  print urlencode($field->getPrintName()); ?>&f_is_content=<?php print $setContentField; ?>&<?php echo SecurityToken::URLParameter(); ?>' } else { document.getElementById('set_is_content_<?php echo $i; ?>').checked = <?php echo $isContentField; ?> }\">\n        <?php } else { ?>\n        <?php echo $translator->trans('N/A'); ?>\n        <?php } ?>\n    </TD>\n\n    <TD ALIGN=\"CENTER\">\n        <?php if ($field->getType() == ArticleTypeField::TYPE_SWITCH ) { ?>\n        <?php echo $translator->trans('N/A'); ?>\n        <?php } else { ?> \n        <input type=\"checkbox\" title=\"<?php echo $translator->trans('Is this field intended for the reader to view? If not, it is metadata.', array(), 'article_type_fields'); ?>\" <?php if ($field->showInEditor()) { ?>checked<?php } ?> id=\"set_show_in_editor_<?php echo $i; ?>\" name=\"set_show_in_editor_<?php echo $i; ?>\" \n        onclick=\"if (confirm('<?php echo $translator->trans('Are you sure you want to make $1 a $2 field?', array('$1' => $field->getPrintName(), '$2' => $editorType), 'article_type_fields'); ?>')) { location.href='/<?php p($ADMIN); ?>/article_types/fields/set_show_in_editor.php?f_article_type=<?php print urlencode($articleTypeName); ?>&f_field_name=<?php  print urlencode($field->getPrintName()); ?>&f_show_in_editor=<?php print $setShowInEditor; ?>&<?php echo SecurityToken::URLParameter(); ?>' } else { document.getElementById('set_show_in_editor_<?php echo $i; ?>').checked = <?php echo $showInEditor; ?> }\">\n        <?php } ?>\n    </TD>\n\n<TD>\n<?php\n    if ($field->getType() != ArticleTypeField::TYPE_COMPLEX_DATE) {\n        echo $translator->trans('N/A');\n    }\n    else {\n        $cur_color = $field->getColor();\n        $color_div = '';\n\n        $color_div .= '<div id=\"color_sel_' . $row_rank . '\" class=\"color_sel_hidden color_sel_visible\">';\n        foreach ($color_list as $one_color) {\n            $color_div .= '<div class=\"color_one_list\" style=\"background:' . $one_color . ';\" onClick=\"$(\\'#color_val_' . $row_rank . '\\').css(\\'backgroundColor\\', \\'' . $one_color . '\\'); $(\\'#color_sel_' . $row_rank . '\\').addClass(\\'color_sel_hidden\\'); window.save_field_color(\\'' . $articleTypeName . '\\', \\'' . $field->getPrintName() . '\\', \\'' . $one_color . '\\'); return false;\";></div>';\n        }\n        $color_div .= '</div>';\n        $color_div .= '<div class=\"color_one_current\" id=\"color_val_' . $row_rank . '\" style=\"background-color:' . $cur_color . ';\" href=\"#\" onClick=\"$(\\'#color_sel_' . $row_rank . '\\').toggleClass(\\'color_sel_hidden\\')\"; return false;\"></div>';\n        echo $color_div;\n    }\n?>\n</TD>\n\n\t<TD ALIGN=\"CENTER\">\n\t\t<A HREF=\"/<?php p($ADMIN); ?>/article_types/fields/do_hide.php?f_article_type=<?php print urlencode($articleTypeName); ?>&f_field_name=<?php  print urlencode($field->getPrintName()); ?>&f_status=<?php print $hideShowStatus; ?>&<?php echo SecurityToken::URLParameter(); ?>\" onclick=\"return confirm('<?php echo $translator->trans('Are you sure you want to $1 the article type field $2?', array('$1' => $hideShowText, '$2' => $field->getPrintName()), 'article_type_fields'); ?>');\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/<?php echo $hideShowImage; ?>\" BORDER=\"0\" ALT=\"<?php echo $translator->trans('$1 article type field $2', array('$1' => ucfirst($hideShowText), '$2' => $field->getPrintName()), 'article_type_fields'); ?>\" TITLE=\"<?php  echo $translator->trans('$1 article type $2', array('$1' => ucfirst($hideShowText), '$2' => $field->getPrintName()), 'article_type_fields');?>\" ></A>\n\t</TD>\n\n\t<?php  if ($g_user->hasPermission(\"ManageArticleTypes\")) { ?>\n\t<TD ALIGN=\"CENTER\">\n\t\t<A HREF=\"/<?php p($ADMIN); ?>/article_types/fields/do_del.php?f_article_type=<?php print urlencode($articleTypeName); ?>&f_field_name=<?php print urlencode($field->getPrintName()); ?>&<?php echo SecurityToken::URLParameter(); ?>\" onclick=\"return confirm('<?php echo $translator->trans('Are you sure you want to delete the field $1?', array('$1' => htmlspecialchars($field->getPrintName().' '.$translator->trans('You will also delete all fields with this name from all articles of this type from all publications.'))), 'article_type_fields');  ?>');\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/delete.png\" BORDER=\"0\" ALT=\"<?php echo $translator->trans('Delete field $1', array('$1' => htmlspecialchars($field->getPrintName())), 'article_type_fields'); ?>\" TITLE=\"<?php  $translator->trans('Delete field $1', array('$1' => htmlspecialchars($field->getPrintName())), 'article_type_fields'); ?>\" ></A>\n\t</TD>\n\t<?php } ?>\n</TR>\n\n\n    <tr id=\"translate_field_<?php p($i); ?>\" style=\"display: none;\"><td colspan=\"7\">\n    \t<table>\n\n\t\t<?php\n\t\t$color2 = 0;\n\t\t$isFirstTranslation = true;\n\t\t$fieldTranslations = $field->getTranslations();\n\t\tforeach ($fieldTranslations as $languageId => $transName) {\n\t\t?>\n\t\t<TR <?php  if ($color2) { $color2 = 0; ?>class=\"list_row_even\"<?php  } else { $color2 = 1; ?>class=\"list_row_odd\"<?php  } ?>\">\n\t\t\t<TD <?php if ($isFirstTranslation) { ?>style=\"border-top: 2px solid #8AACCE;\"<?php } ?> valign=\"middle\" align=\"center\">\n\t\t\t\t<?php\n\t\t\t\t$language = new Language($languageId);\n\t\t\t\tp($language->getCode());\n\t\t\t\t?>\n\t\t\t</TD>\n\t\t\t<TD <?php if ($isFirstTranslation) { ?>style=\"border-top: 2px solid #8AACCE;\"<?php } ?> valign=\"middle\" align=\"left\" width=\"450px\">\n\t\t\t\t<?php\n\t\t\t\techo htmlspecialchars($transName);\n\t\t\t\t?>\n\t\t\t</TD>\n\t\t\t</tr>\n\t\t\t<?php\n\t\t\t$isFirstTranslation = false;\n\t\t}\n\t\t?>\n\n\n\n\n    \t<tr>\n    \t<td colspan=\"2\">\n            <FORM method=\"POST\" action=\"/<?php echo $ADMIN; ?>/article_types/fields/do_translate.php?f_article_type=<?php p($articleTypeName); ?>\" >\n\t\t\t<?php echo SecurityToken::FormParameter(); ?>\n    \t\t<input type=\"hidden\" name=\"f_field_id\" value=\"<?php p($field->getPrintName()); ?>\">\n    \t\t<table cellpadding=\"0\" cellspacing=\"0\" style=\"border-top: 1px solid #CFC467; border-bottom: 1px solid #CFC467; background-color: #FFFCDF ; padding-left: 5px; padding-right: 5px;\" width=\"100%\">\n    \t\t<tr>\n    \t\t\t<td align=\"left\">\n    \t\t\t\t<table cellpadding=\"2\" cellspacing=\"1\">\n    \t\t\t\t<tr>\n\t\t    \t\t\t<td><?php echo $translator->trans(\"Add translation:\", array(), 'article_type_fields'); ?></td>\n\t\t    \t\t\t<td>\n\t\t\t\t\t\t\t<SELECT NAME=\"f_field_language_id\" class=\"input_select\" alt=\"select\" emsg=\"<?php echo $translator->trans(\"You must select a language.\"); ?>\">\n\t\t\t\t\t\t\t<option value=\"0\"><?php echo $translator->trans(\"---Select language---\"); ?></option>\n\t\t\t\t\t\t\t<?php\n\t\t\t\t\t\t \tforeach ($allLanguages as $tmpLanguage) {\n\t\t\t\t\t\t \t\tif ($languageObj->getLanguageId() == $tmpLanguage->getLanguageId()) $selected = true;\n\t\t\t\t\t\t \t\telse $selected = false;\n\t\t\t\t\t\t \t    camp_html_select_option($tmpLanguage->getLanguageId(),\n\t\t\t\t\t\t \t\t\t\t\t\t\t\t$selected,\n\t\t\t\t\t\t \t\t\t\t\t\t\t\t$tmpLanguage->getNativeName());\n\t\t\t\t\t        }\n\t\t\t\t\t\t\t?>\n\t\t\t\t\t\t\t</SELECT>\n\t\t    \t\t\t</td>\n\t\t    \t\t\t<td><input type=\"text\" name=\"f_field_translation_name\" value=\"\" class=\"input_text\" size=\"15\" alt=\"blank\" emsg=\"<?php echo $translator->trans('You must enter a name for the field.', array(), 'article_type_fields'); ?>\"></td>\n\t\t    \t\t\t<td><input type=\"submit\" name=\"f_submit\" value=\"<?php echo $translator->trans(\"Translate\"); ?>\" class=\"button\"></td>\n\t\t    \t\t</tr>\n\t\t    \t\t</table>\n\t\t    \t</td>\n    \t\t</tr>\n    \t\t</table>\n    \t\t</FORM>\n\n    \t</td>\n    \t</tr>\n    \t</table>\n\t</td>\n    </tr>\n\n\n\n\n\n<?php\n$i++;\n} // foreach\n?>\n</TABLE>\n<?php\nif ($duplicateFieldsCount > 0) {\n\techo \"<div class=\\\"indent\\\"><p class=\\\"failure_message\\\">** \" . $translator->trans('The field name was already in use as a base property of the article. The field content will not be displayed in the templates.', array(), 'article_type_fields') . \"</p></div>\";\n}\n?>\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/article_types/fields/rename.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n// Check permissions\nif (!$g_user->hasPermission('ManageArticleTypes')) {\n    camp_html_display_error($translator->trans(\"You do not have the right to rename article type fields.\", array(), 'article_type_fields'));\n    exit;\n}\n\n$articleTypeName = Input::Get('f_article_type');\n$articleTypeFieldName = Input::Get('f_field_name');\n$crumbs = array();\n$crumbs[] = array($translator->trans('Configure'), \"\");\n$crumbs[] = array($translator->trans('Article Types'), \"/$ADMIN/article_types/\");\n$crumbs[] = array($articleTypeName, '');\n$crumbs[] = array($translator->trans(\"Article type fields\", array(), 'article_type_fields'), \"/$ADMIN/article_types/fields/?f_article_type=\".urlencode($articleTypeName));\n$crumbs[] = array($translator->trans(\"Rename field\", array(), 'article_type_fields'), \"\");\n\necho camp_html_breadcrumbs($crumbs);\n\ninclude_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/javascript_common.php\");\n?>\n<P>\n<FORM NAME=\"add_field_form\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/article_types/fields/do_rename.php\" onsubmit=\"return <?php camp_html_fvalidate(); ?>;\">\n<?php echo SecurityToken::FormParameter(); ?>\n\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" CLASS=\"box_table\">\n<TR><TD COLSPAN=\"2\"><?php echo $translator->trans('The template name may only contain letters and the underscore (_) character.', array(), 'article_type_fields'); ?></TD></TR>\n<TR>\n    <TD ALIGN=\"LEFT\" ><?php echo $translator->trans(\"Template Field Name\", array(), 'article_type_fields'); ?>:</TD>\n    <TD>\n    <INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_new_field_name\" SIZE=\"20\" VALUE=\"<?php print htmlspecialchars($articleTypeFieldName); ?>\" MAXLENGTH=\"32\" alt=\"alnum|1|A|false|false|_\" emsg=\"<?php\n    echo $translator->trans('The template name may only contain letters and the underscore (_) character.', array(), 'article_type_fields'); ?>\">\n    </TD>\n</TR>\n\n<TR>\n    <TD COLSPAN=\"2\">\n    <DIV ALIGN=\"CENTER\">\n    <INPUT TYPE=\"HIDDEN\" NAME=\"f_article_type\" VALUE=\"<?php  print htmlspecialchars($articleTypeName); ?>\">\n    <INPUT TYPE=\"HIDDEN\" NAME=\"f_old_field_name\" VALUE=\"<?php print htmlspecialchars($articleTypeFieldName); ?>\">\n    <INPUT TYPE=\"submit\" class=\"button\" NAME=\"OK\" VALUE=\"<?php  echo $translator->trans('Save'); ?>\">\n    </DIV>\n    </TD>\n</TR>\n</TABLE>\n</FORM>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/article_types/fields/retype.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n// Check permissions\nif (!$g_user->hasPermission('ManageArticleTypes')) {\n    camp_html_display_error($translator->trans(\"You do not have the right to reassign a field type.\", array(), 'article_type_fields'));\n    exit;\n}\n\n$articleTypeName = Input::Get('f_article_type');\n$articleTypeFieldName = Input::Get('f_field_name');\n$articleField = new ArticleTypeField($articleTypeName, $articleTypeFieldName);\n\n$crumbs = array();\n$crumbs[] = array($translator->trans('Configure'), \"\");\n$crumbs[] = array($translator->trans('Article Types'), \"/$ADMIN/article_types/\");\n$crumbs[] = array($articleTypeName, '');\n$crumbs[] = array($translator->trans(\"Article type fields\", array(), 'article_type_fields'), \"/$ADMIN/article_types/fields/?f_article_type=\".urlencode($articleTypeName));\n$crumbs[] = array($translator->trans(\"Reassign a field type\", array(), 'article_type_fields'), \"\");\n\necho camp_html_breadcrumbs($crumbs);\ninclude_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/javascript_common.php\");\n\n$lang = camp_session_get('LoginLanguageId', 1);\n$languageObj = new Language($lang);\n\n// Verify the merge rules\n$options = array();\n$convertibleFromTypes = $articleField->getConvertibleToTypes();\nforeach ($convertibleFromTypes as $type) {\n    $options[$type] = ArticleTypeField::VerboseTypeName($type, $languageObj->getLanguageId());\n}\n?>\n<script>\nfunction UpdateArticleFieldContext()\n{\n    var my_form = document.forms[\"add_field_form\"]\n    var field_type = my_form.elements[\"f_article_field_type\"].value\n    var is_topic = my_form.elements[\"is_topic\"].value\n    if ((is_topic == \"false\" && field_type == \"topic\")\n            || (is_topic == \"true\" && field_type != \"topic\")) {\n        ToggleRowVisibility('topic_list')\n        ToggleBoolValue('is_topic')\n    }\n}\n</script>\n\n<?php if (count($options) < 1) { ?>\n<P>\nYou cannot reassign this type.\n</P>\n<?php camp_html_copyright_notice(); ?>\n<?php } else { ?>\n\n<P>\n<FORM NAME=\"add_field_form\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/article_types/fields/do_retype.php\" onsubmit=\"return <?php camp_html_fvalidate(); ?>;\">\n<?php echo SecurityToken::FormParameter(); ?>\n<input type=\"hidden\" name=\"f_field_name\" value=\"<?php print $articleTypeFieldName; ?>\">\n<input type=\"hidden\" name=\"is_topic\" id=\"is_topic\" value=\"false\">\n<TABLE BORDER=\"\" CELLSPACING=\"0\" CELLPADDING=\"0\" CLASS=\"box_table\">\n<TR>\n    <TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Type\"); ?>:</TD>\n    <TD>\n    <SELECT NAME=\"f_article_field_type\" class=\"input_select\" onchange=\"UpdateArticleFieldContext()\">\n        <?php foreach ($options as $k => $v) { ?>\n            <OPTION VALUE=\"<?php print $k; ?>\"><?php echo $v; ?></OPTION>\n        <?php } ?>\n    </SELECT>\n\n    </TD>\n</TR>\n<tr style=\"display: none;\" id=\"topic_list\">\n    <td align=\"right\"><?php echo $translator->trans(\"Top element\", array(), 'article_type_fields'); ?>:</td>\n    <td>\n        <select name=\"f_root_topic_id\" class=\"input_select\">\n<?php\n$TOL_Language = camp_session_get('LoginLanguageId', 1);\n$lang = new Language($TOL_Language);\n$em = \\Zend_Registry::get('container')->getService('em');\n$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n$topicService = \\Zend_Registry::get('container')->getService('newscoop_newscoop.topic_service');\n$topicsCount = $topicService->countBy();\n$cacheKey = $cacheService->getCacheKey(array('topics_add_article_type', $topicsCount), 'topic');\n$repository = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic');\nif ($cacheService->contains($cacheKey)) {\n    $topics = $cacheService->fetch($cacheKey);\n} else {\n    $topicsQuery = $repository->getTranslatableTopics($lang->getCode());\n    $topics = $topicsQuery->getResult();\n    $cacheService->save($cacheKey, $topics);\n}\n\nforeach ($topics as $topic) {\n    echo '<option value=\"' . $topic->getTopicId() . '\">'\n        . htmlspecialchars($topicService->getReadablePath($topic)) . \"</option>\\n\";\n}\n?>\n        </select>\n    </td>\n</tr>\n<TR>\n    <TD COLSPAN=\"2\">\n    <DIV ALIGN=\"CENTER\">\n    <INPUT TYPE=\"HIDDEN\" NAME=\"f_article_type\" VALUE=\"<?php  print htmlspecialchars($articleTypeName); ?>\">\n    <INPUT TYPE=\"submit\" class=\"button\" NAME=\"OK\" VALUE=\"<?php echo $translator->trans('Save'); ?>\">\n    </DIV>\n    </TD>\n</TR>\n</TABLE>\n</FORM>\n<P>\n<?php if ($articleField->getType() == ArticleTypeField::TYPE_TOPIC) { ?>\n<script>\nUpdateArticleFieldContext();\n</script>\n<?php } ?>\n<?php camp_html_copyright_notice(); ?>\n<?php } ?>\n"
  },
  {
    "path": "newscoop/admin-files/article_types/fields/set_is_content.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!Saas::singleton()->hasPermission('ManageArticleTypes')) {\n    camp_html_display_error($translator->trans(\"You do not have the right to delete article types.\", array(), 'article_types'));\n    exit;\n}\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n$articleTypeName = Input::Get('f_article_type');\n$articleTypeFieldName = Input::Get('f_field_name');\n$isContent = Input::Get('f_is_content');\n$errorMsgs = array();\n\n$articleTypeField = new ArticleTypeField($articleTypeName, $articleTypeFieldName);\n$articleTypeField->setIsContent($isContent == 'true');\n\n$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n$cacheService->clearNamespace('article_type');\n\ncamp_html_goto_page(\"/$ADMIN/article_types/fields/?f_article_type=\".urlencode($articleTypeName));\n\n?>"
  },
  {
    "path": "newscoop/admin-files/article_types/fields/set_show_in_editor.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!Saas::singleton()->hasPermission('ManageArticleTypes')) {\n    camp_html_display_error($translator->trans(\"You do not have the right to delete article types.\", array(), 'article_types'));\n    exit;\n}\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n$articleTypeName = Input::Get('f_article_type');\n$articleTypeFieldName = Input::Get('f_field_name');\n$showInEditor = Input::Get('f_show_in_editor');\n$errorMsgs = array();\n\n$articleTypeField = new ArticleTypeField($articleTypeName, $articleTypeFieldName);\n$articleTypeField->setShowInEditor($showInEditor == 'true');\n\n$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n$cacheService->clearNamespace('article_type');\n\ncamp_html_goto_page(\"/$ADMIN/article_types/fields/?f_article_type=\".urlencode($articleTypeName));\n\n?>\n"
  },
  {
    "path": "newscoop/admin-files/article_types/index.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Translation.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$request = \\Zend_Registry::get('container')->get('request');\n$locale = $request->getLocale();\n\nif (!$g_user->hasPermission('ManageArticleTypes') && !$g_user->hasPermission('DeleteArticleTypes')) {\n\tcamp_html_goto_page(\"/$ADMIN/\");\n}\n\n$articleTypes = ArticleType::GetArticleTypes(true);\n// return value is sorted by language\n$allLanguages = Language::GetLanguages(null, null, null, array(), array(), true);\n\n$lang = Language::GetLanguageByCode($locale);\n$languageObj = new Language($lang->getLanguageId());\n\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Configure\"), \"\");\n$crumbs[] = array($translator->trans(\"Article Types\"), \"\");\n\n$controller->view->headTitle($translator->trans('Article Types').' - Newscoop Admin', 'SET');\n\necho camp_html_breadcrumbs($crumbs);\ninclude_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/javascript_common.php\");\n?>\n<script>\nvar type_ids = new Array;\nvar allShown = 0;\n</script>\n\n\n<?php\nif (count($articleTypes))\n{\n\t$i = 0;\n\tforeach ($articleTypes as $articleType)\n\t{ ?>\n\n\t<script>\n\ttype_ids.push(\"translate_type_\"+<?php p($i); ?>);\n\t</script>\n\n<?php\n\t$i++;\n\t} // foreach\n} // if\n\nif ($g_user->hasPermission(\"ManageArticleTypes\")) { ?>\n\t<P>\n\t<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\" class=\"action_buttons\">\n\t<TR>\n        <TD><A HREF=\"/<?php echo $ADMIN; ?>/article_types/add.php?Back=<?php  print urlencode($_SERVER['REQUEST_URI']); ?>\" ><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/add.png\" BORDER=\"0\"></A></TD>\n        <TD><B><A HREF=\"/<?php echo $ADMIN; ?>/article_types/add.php?Back=<?php  print urlencode($_SERVER['REQUEST_URI']); ?>\" ><?php echo $translator->trans(\"Add new article type\"); ?></A></B></TD>\n\t\t<TD><DIV STYLE=\"width:15px;\"></DIV></TD>\n        <TD><A HREF=\"/<?php echo $ADMIN; ?>/article_types/merge.php?Back=<?php  print urlencode($_SERVER['REQUEST_URI']); ?>\" ><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/merge.png\" BORDER=\"0\"></A></TD>\n        <TD><B><A HREF=\"/<?php echo $ADMIN; ?>/article_types/merge.php?Back=<?php  print urlencode($_SERVER['REQUEST_URI']); ?>\" ><?php echo $translator->trans(\"Merge types\", array(), 'article_types'); ?></A></B></TD>\n\t\t<TD><DIV STYLE=\"width:15px;\"></DIV></TD>\n\t\t<TD><A HREF=\"javascript: void(0);\"\n               ONCLICK=\"if (allShown == 0) {\n                            ShowAll(type_ids);\n                            allShown = 1;\n                            document.getElementById('showtext').innerHTML = '<?php echo $translator->trans(\"Hide human-readable field names\", array(), 'article_types'); ?>';\n                            document['show'].src='<?php print $Campsite['ADMIN_IMAGE_BASE_URL']; ?>/viewmagminus.png';\n                        } else {\n                            HideAll(type_ids);\n                            allShown = 0;\n                            document.getElementById('showtext').innerHTML = '<?php echo $translator->trans(\"Edit and translate human-readable field names\", array(), 'article_types'); ?>';\n                            document['show'].src='<?php print $Campsite['ADMIN_IMAGE_BASE_URL']; ?>/viewmagplus.png';\n                        }\">\n\t\t      <IMG NAME=\"show\" SRC=\"<?php echo $Campsite['ADMIN_IMAGE_BASE_URL']; ?>/viewmagplus.png\" BORDER=\"0\"></A></TD>\n    \t<TD><B><A HREF=\"javascript: void(0);\"\n                    ONCLICK=\"if (allShown == 0) {\n                                ShowAll(type_ids);\n                                allShown = 1;\n                                document.getElementById('showtext').innerHTML = '<?php echo $translator->trans(\"Hide human-readable field names\", array(), 'article_types'); ?>';\n                                document['show'].src='<?php print $Campsite['ADMIN_IMAGE_BASE_URL']; ?>/viewmagminus.png';\n                                } else {\n                                HideAll(type_ids);\n                                allShown = 0;\n                                document.getElementById('showtext').innerHTML = '<?php echo $translator->trans(\"Edit and translate human-readable field names\", array(), 'article_types'); ?>';\n                                document['show'].src='<?php print $Campsite['ADMIN_IMAGE_BASE_URL']; ?>/viewmagplus.png';\n                                }\"><DIV ID=\"showtext\"><?php echo $translator->trans(\"Edit and translate human-readable field names\", array(), 'article_types'); ?></DIV></A></B></TD>\n\n\n\t</TR>\n\t</TABLE>\n\n<?php  } ?>\n<P>\n\n<?php if (count($articleTypes) > 0) { ?>\n<TABLE BORDER=\"0\" CELLSPACING=\"1\" CELLPADDING=\"3\" class=\"table_list\">\n<TR class=\"table_list_header\">\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Template Type Name\", array(), 'article_types'); ?></B></TD>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Fields\"); ?></B></TD>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Display Name\", array(), 'article_types'); ?></B></TD>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Translate\"); ?></B></TD>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Show to Authors?\", array(), 'article_types'); ?></B></TD>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Show in Article Lists?\", array(), 'article_types'); ?></B></TD>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Comments Enabled?\", array(), 'article_types'); ?></B></TD>\n\t<?php  if ($g_user->hasPermission(\"DeleteArticleTypes\")) { ?>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php  echo $translator->trans(\"Delete\"); ?></B></TD>\n\t<?php  } ?>\n</TR>\n<?php\n$color = 0;\n$i = 0;\nforeach ($articleTypes as $articleType) {\n\t$currentArticleType = new ArticleType($articleType);\n\tif ($currentArticleType->getStatus() == 'hidden') {\n\t\t$hideShowText = $translator->trans('show', array(), 'article_types');\n\t\t$hideShowStatus = 'show';\n\t\t$hideShowImage = \"is_hidden.png\";\n\t} else {\n\t\t$hideShowText = $translator->trans('hide', array(), 'article_types');\n\t\t$hideShowStatus = 'hide';\n\t\t$hideShowImage = \"is_shown.png\";\n\t}\n\n\tif ($currentArticleType->commentsEnabled()) {\n\t\t$commentChangeText = $translator->trans('deactivate', array(), 'article_types');\n\t\t$commentImage = \"is_shown.png\";\n\t} else {\n\t\t$commentChangeText = $translator->trans('activate', array(), 'article_types');\n\t\t$commentImage = \"is_hidden.png\";\n\t}\n\n    $filterChangeValue = 1;\n    $filterChangeText = $translator->trans('filter', array(), 'article_types');\n    $filterImage = \"is_shown.png\";\n    if ($currentArticleType->getFilterStatus()) {\n        $filterChangeValue = 0;\n        $filterChangeText = $translator->trans('list', array(), 'article_types');\n        $filterImage = \"is_hidden.png\";\n    }\n\n    ?>\n    <TR <?php  if ($color) { $color=0; ?>class=\"list_row_even\"<?php  } else { $color=1; ?>class=\"list_row_odd\"<?php  } ?>>\n\t<TD>\n\t\t<A HREF=\"/<?php p($ADMIN); ?>/article_types/rename.php?f_name=<?php  print htmlspecialchars($articleType); ?>\"><?php print htmlspecialchars($articleType); ?></A>&nbsp;\n\t</TD>\n\t<TD ALIGN=\"CENTER\">\n\t\t<A HREF=\"/<?php p($ADMIN); ?>/article_types/fields/?f_article_type=<?php  print urlencode($articleType); ?>\"><?php echo $translator->trans('Fields'); ?></A>\n\t</TD>\n\n\t<TD>\n\t\t<?php  print $currentArticleType->getDisplayName($languageObj->getLanguageId()); ?> <?php print $currentArticleType->getDisplayNameLanguageCode($languageObj->getLanguageId()); ?>&nbsp;\n\t</TD>\n\n\t<td>\n\t\t<a href=\"javascript: void(0);\" onclick=\"HideAll(type_ids); ShowElement('translate_type_<?php p($i); ?>');\"><img src=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/localizer.png\" alt=\"<?php echo $translator->trans(\"Translate\"); ?>\" title=\"<?php echo $translator->trans(\"Translate\"); ?>\" border=\"0\"></a>\n\t</td>\n\n\t<TD ALIGN=\"CENTER\">\n\t\t<A HREF=\"/<?php p($ADMIN); ?>/article_types/do_hide.php?f_article_type=<?php  print urlencode($articleType); ?>&f_status=<?php print $hideShowStatus; ?>&<?php echo SecurityToken::URLParameter(); ?>\" onclick=\"return confirm('<?php echo $translator->trans('Are you sure you want to $1 the article type $2?', array('$1' => $hideShowText, '$2' => \"\\'\".htmlspecialchars($articleType).\"\\'\"), 'article_types'); ?>');\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/<?php echo $hideShowImage; ?>\" BORDER=\"0\" ALT=\"<?php  echo $translator->trans('$1 article type $2', array('$1' => ucfirst($hideShowText), '$2' => htmlspecialchars($articleType)), 'article_types'); ?>\" TITLE=\"<?php  echo $translator->trans('$1 article type $2', array('$1' => ucfirst($hideShowText), '$2' => htmlspecialchars($articleType)), 'article_types'); ?>\" ></A>\n\t</TD>\n\n    <TD ALIGN=\"CENTER\">\n        <A HREF=\"/<?php p($ADMIN); ?>/article_types/do_filter.php?f_article_type=<?php print urlencode($articleType); ?>&f_filter=<?php echo($filterChangeValue); ?>&<?php echo SecurityToken::URLParameter(); ?>\" onclick=\"return confirm('<?php echo $translator->trans('Are you sure you want to $1 articles of article type $2?', array('$1' => $filterChangeText, '$2' => \"\\'\".htmlspecialchars($articleType).\"\\'\"), 'article_types'); ?>');\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/<?php echo $filterImage; ?>\" BORDER=\"0\" ALT=\"<?php  echo $translator->trans('$1 articles of article type $2', array('$1' => ucfirst($filterChangeText), '$2' => htmlspecialchars($articleType)), 'article_types'); ?>\" TITLE=\"<?php  echo $translator->trans('$1 articles of article type $2', array('$1' => ucfirst($filterChangeText), '$2' => htmlspecialchars($articleType)), 'article_types'); ?>\" ></A>\n    </TD>\n\n\t<TD ALIGN=\"CENTER\">\n\t\t<A HREF=\"/<?php p($ADMIN); ?>/article_types/do_comment_activation.php?f_article_type=<?php  print urlencode($articleType); ?>&<?php echo SecurityToken::URLParameter(); ?>\" onclick=\"return confirm('<?php echo $translator->trans('Are you sure you want to $1 comments for article type $2?', array('$1' => $commentChangeText, '$2' => \"\\'\".htmlspecialchars($articleType).\"\\'\"), 'article_types'); ?>');\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/<?php echo $commentImage; ?>\" BORDER=\"0\" ALT=\"<?php  echo $translator->trans('$1 comments for article type $2', array('$1' => ucfirst($commentChangeText), '$2' => htmlspecialchars($articleType)), 'article_types'); ?>\" TITLE=\"<?php  echo $translator->trans('$1 comments for article type $2', array('$1' => ucfirst($commentChangeText), '$2' => htmlspecialchars($articleType)), 'article_types'); ?>\" ></A>\n\t</TD>\n\n\t<?php  if ($g_user->hasPermission(\"DeleteArticleTypes\")) { ?>\n\t<TD ALIGN=\"CENTER\">\n\t\t<A HREF=\"/<?php p($ADMIN); ?>/article_types/do_del.php?f_article_type=<?php  print urlencode($articleType); ?>&<?php echo SecurityToken::URLParameter(); ?>\" onclick=\"return confirm('<?php echo $translator->trans('Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.', array('$1' => htmlspecialchars($articleType)), 'article_types'); ?>');\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/delete.png\" BORDER=\"0\" ALT=\"<?php  echo $translator->trans('Delete article type $1', array('$1' => htmlspecialchars($articleType)), 'article_types'); ?>\" TITLE=\"<?php  echo $translator->trans('Delete article type $1.', array('$1' => htmlspecialchars($articleType)), 'article_types'); ?>\" ></A>\n\t</TD>\n\t<?php  } ?>\n\n\t</TR>\n\n    <tr id=\"translate_type_<?php p($i); ?>\" style=\"display: none;\"><td colspan=\"6\">\n    \t<table>\n\n\t\t<?php\n\t\t$color2 = 0;\n\t\t$isFirstTranslation = true;\n\t\t$typeTranslations = $currentArticleType->getTranslations();\n\t\tforeach ($typeTranslations as $typeLanguageId => $typeTransName) {\n\t\t?>\n\t\t<TR <?php  if ($color2) { $color2 = 0; ?>class=\"list_row_even\"<?php  } else { $color2 = 1; ?>class=\"list_row_odd\"<?php  } ?>\">\n\t\t\t<TD <?php if ($isFirstTranslation) { ?>style=\"border-top: 2px solid #8AACCE;\"<?php } ?> valign=\"middle\" align=\"center\">\n\t\t\t\t<?php\n\t\t\t\t$typeLanguage = new Language($typeLanguageId);\n\t\t\t\tp($typeLanguage->getCode());\n\t\t\t\t?>\n\t\t\t</TD>\n\t\t\t<TD <?php if ($isFirstTranslation) { ?>style=\"border-top: 2px solid #8AACCE;\"<?php } ?> valign=\"middle\" align=\"left\" width=\"450px\">\n\t\t\t\t<?php\n\t\t\t\techo htmlspecialchars($typeTransName);\n\t\t\t\t?>\n\t\t\t</TD>\n\t\t\t</tr>\n\t\t\t<?php\n\t\t\t$isFirstTranslation = false;\n\t\t}\n\t\t?>\n\n    \t<tr>\n    \t<td colspan=\"2\">\n        <FORM method=\"POST\" action=\"/<?php echo $ADMIN; ?>/article_types/do_translate.php\">\n\t\t\t<?php echo SecurityToken::FormParameter(); ?>\n    \t\t<input type=\"hidden\" name=\"f_type_id\" value=\"<?php p($articleType); ?>\">\n    \t\t<table cellpadding=\"0\" cellspacing=\"0\" style=\"border-top: 1px solid #CFC467; border-bottom: 1px solid #CFC467; background-color: #FFFCDF ; padding-left: 5px; padding-right: 5px;\" width=\"100%\">\n    \t\t<tr>\n    \t\t\t<td align=\"left\">\n    \t\t\t\t<table cellpadding=\"2\" cellspacing=\"1\">\n    \t\t\t\t<tr>\n\t\t    \t\t\t<td><?php echo $translator->trans(\"Add translation:\", array(), 'article_types'); ?></td>\n\t\t    \t\t\t<td>\n\t\t\t\t\t\t\t<SELECT NAME=\"f_type_language_id\" class=\"input_select\" alt=\"select\" emsg=\"<?php echo $translator->trans(\"You must select a language.\"); ?>\">\n\t\t\t\t\t\t\t<option value=\"0\"><?php echo $translator->trans(\"---Select language---\"); ?></option>\n\t\t\t\t\t\t\t<?php\n\t\t\t\t\t\t \tforeach ($allLanguages as $tmpLanguage) {\n\t\t\t\t\t\t        if ($languageObj->getLanguageId() == $tmpLanguage->getLanguageId())\n\t\t\t\t\t\t            $selected = true;\n\t\t\t\t\t\t        else\n\t\t\t\t\t\t            $selected = false;\n\t\t\t\t\t\t \t    camp_html_select_option($tmpLanguage->getLanguageId(),\n\t\t\t\t\t\t \t\t\t\t\t\t\t\t$selected,\n\t\t\t\t\t\t \t\t\t\t\t\t\t\t$tmpLanguage->getNativeName());\n\n\t\t\t\t\t        }\n\t\t\t\t\t\t\t?>\n\t\t\t\t\t\t\t</SELECT>\n\t\t    \t\t\t</td>\n\t\t    \t\t\t<td><input type=\"text\" name=\"f_type_translation_name\" value=\"\" class=\"input_text\" size=\"15\" alt=\"blank\" emsg=\"<?php echo $translator->trans('You must enter a name for the type.', array(), 'article_types'); ?>\"></td>\n\t\t    \t\t\t<td><input type=\"submit\" name=\"f_submit\" value=\"<?php echo $translator->trans(\"Translate\"); ?>\" class=\"button\"></td>\n\t\t    \t\t</tr>\n\t\t    \t\t</table>\n\t\t    \t</td>\n    \t\t</tr>\n    \t\t</table>\n    \t\t</FORM>\n    \t</td>\n    \t</tr>\n    \t</table>\n\t</td>\n    </tr>\n\n\t<?php  $i++; } // foreach  ?>\n</TABLE>\n<?php } else { ?>\n\t<BLOCKQUOTE>\n\t<LI><?php  echo $translator->trans('No article types.', array(), 'article_types'); ?></LI>\n\t</BLOCKQUOTE>\n<?php } ?>\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/article_types/merge.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n// Check permissions\nif (!$g_user->hasPermission('ManageArticleTypes')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to merge article types.\", array(), 'article_types'));\n\texit;\n}\n\n$articleTypes = ArticleType::GetArticleTypes();\n\n$f_src = trim(Input::get('f_src'));\n$f_dest = trim(Input::get('f_dest'));\n\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Configure\"), \"\");\n$crumbs[] = array($translator->trans(\"Article Types\"), \"/$ADMIN/article_types/\");\n$crumbs[] = array($translator->trans(\"Merge article type\", array(), 'article_types'), \"\");\necho camp_html_breadcrumbs($crumbs);\n\n$controller->view->headTitle($translator->trans(\"Merge article type\", array(), 'article_types').' - Newscoop Admin', 'SET');\n?>\n<P>\n<FORM NAME=\"dialog\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/article_types/merge2.php\">\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" CLASS=\"box_table\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<b><?php echo $translator->trans(\"Merge Article Types: Step $1 of $2\", array('$1' => 1, '$2' => 3), 'article_types'); ?></b>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD align=\"center\"><?php echo $translator->trans(\"Source Article Type\", array(), 'article_types'); ?></td>\n\t<TD align=\"center\" style=\"padding-left: 25px;\"><?php echo $translator->trans(\"Destination Article Type\", array(), 'article_types'); ?></td>\n</tr>\n<tr>\n\t<td align=\"center\">\n\t<SELECT NAME=\"f_src\" CLASS=\"input_select\">\n\t<?php\n\tforeach ($articleTypes as $at) {\n\t\tprint '<OPTION VALUE=\"'. $at .'\"';\n\t\tif ($f_src == $at) { print \" SELECTED \"; }\n\t\tprint '>'. $at .'</OPTION>';\n\n\t}\n\t?>\n\t</SELECT>\n\t</TD>\n\n\t<td align=\"center\">\n\t<SELECT NAME=\"f_dest\" CLASS=\"input_select\">\n\t<?php\n\tforeach ($articleTypes as $at) {\n\t\tprint '<OPTION VALUE=\"'. $at .'\"';\n\t\tif ($f_dest == $at) { print \" SELECTED \"; }\n\t\tprint '>'. $at .'</OPTION>';\n\n\t}\n\t?>\n\t</SELECT>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\">\n\t\t<INPUT TYPE=\"submit\" class=\"button\" NAME=\"Ok\" VALUE=\"<?php echo $translator->trans('Go to Step 2', array(), 'article_types'); ?>\">\n\t</TD>\n</TR>\n</TABLE>\n</FORM>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/article_types/merge2.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n// Check permissions\nif (!$g_user->hasPermission('ManageArticleTypes')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to merge article types.\", array(), 'article_types'));\n\texit;\n}\n\n$f_src = trim(Input::get('f_src'));\n$f_dest = trim(Input::get('f_dest'));\n$errorMsgs = array();\n\nif ($f_src == $f_dest) {\n\t$errorMsgs[] = $translator->trans(\"You cannot merge the same type into itself.\", array(), 'article_types');\n}\n\n$src = new ArticleType($f_src);\n$dest = new ArticleType($f_dest);\n\n$srcNumArticles = $src->getNumArticles();\n\nif ($srcNumArticles <= 0) {\n    $errorMsgs[] = $translator->trans(\"The source article type ($1) does not have any articles.\", array('$1' => $f_src), 'article_types');\n}\n\nif (count($errorMsgs)) {\n\n\t$crumbs = array();\n\t$crumbs[] = array($translator->trans(\"Configure\"), \"\");\n\t$crumbs[] = array($translator->trans(\"Article Types\"), \"/$ADMIN/article_types/\");\n\t$crumbs[] = array($translator->trans(\"Merge article type\", array(), 'article_types'), \"\");\n\n\techo camp_html_breadcrumbs($crumbs);\n\n\t?>\n\t<P>\n\t<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n\t<TR>\n\t\t<TD COLSPAN=\"2\">\n\t\t\t<B> <?php echo $translator->trans(\"Merge Article Types: Step $1 of $2\", array('$1' => 1, '$2' => 3), 'article_types'); ?> </B>\n\t\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t\t</TD>\n\t</TR>\n\t<TR>\n\t\t<TD COLSPAN=\"2\">\n\t\t\t<BLOCKQUOTE>\n\t\t\t<?php\n\t\t\tforeach ($errorMsgs as $errorMsg) {\n\t\t\t\techo \"<li>\".$errorMsg.\"</li>\";\n\t\t\t}\n\t\t\t?>\n\t\t\t</BLOCKQUOTE>\n\t\t</TD>\n\t</TR>\n\t<TR>\n\t\t<TD COLSPAN=\"2\">\n\t\t<DIV ALIGN=\"CENTER\">\n\t\t<INPUT TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php  echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php p($ADMIN); ?>/article_types/merge.php?f_src=<?php p($f_src); ?>&f_dest=<?php p($f_dest); ?>'\">\n\t\t</DIV>\n\t\t</TD>\n\t</TR>\n\t</TABLE>\n\t<P>\n\n\t<?php camp_html_copyright_notice(); return; ?>\n\n<?php\n} // endif count(errorMessages)\n\n\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Configure\"), \"\");\n$crumbs[] = array($translator->trans(\"Article Types\"), \"/$ADMIN/article_types/\");\n$crumbs[] = array($translator->trans(\"Merge article type\", array(), 'article_types'), \"\");\necho camp_html_breadcrumbs($crumbs);\n\n?>\n<P>\n<FORM NAME=\"dialog\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/article_types/merge3.php?f_src=<?php print $f_src; ?>&f_dest=<?php print $f_dest; ?>\">\n\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" CLASS=\"box_table\">\n<TR>\n\t<TD COLSPAN=\"3\">\n\t\t<b><?php echo $translator->trans(\"Merge Article Types: Step $1 of $2\", array('$1' => 2, '$2' => 3), 'article_types'); ?></b>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<tr>\n\t<td>\n\t\t<table cellpadding=\"2\">\n\t\t<tr>\n\t\t\t<td colspan=\"3\" style=\"padding-bottom: 10px;\">\n\t\t\t\t<b><?php echo $translator->trans(\"There are $1 articles associated with $2 that will be merged.\", array('$1' => $srcNumArticles, '$2' =>$src->getDisplayName()), 'article_types');?></b>\n\n\t\t\t</td>\n\t\t</tr>\n\t\t<TR>\n\t\t\t<TD align=\"right\">\n\t\t\t\t<u><?php echo $translator->trans(\"Source Article Type\", array(), 'article_types');?></u>\n\t\t\t</TD>\n\t\t\t<td>\n\t\t\t</td>\n\t\t\t<TD align=\"left\" style=\"padding-left: 2px;\">\n\t\t\t\t<u><?php echo $translator->trans(\"Destination Article Type\", array(), 'article_types'); ?></u>\n\t\t\t</TD>\n\t\t</TR>\n\t\t<tr>\n\t\t\t<td align=\"right\">\n\t\t\t\t <b><?php print $src->getDisplayName(); ?></b>\n\t\t\t</td>\n\t\t\t<td>-&gt;</td>\n\t\t\t<td align=\"left\">\n\t\t\t\t<b><?php print $dest->getDisplayName(); ?></b>\n\t\t\t</td>\n\t\t</tr>\n\t\t<?php foreach ($dest->getUserDefinedColumns(null, true, true) as $destColumn) { ?>\n\t\t<TR>\n\t\t\t<TD align=\"right\">\n\t\t\t\t<SELECT CLASS=\"input_select\" NAME=\"f_src_<?php print $destColumn->getPrintName(); ?>\">\n\t\t\t\t<?php\n\t\t\t\t$selected = false;\n\t\t\t\tforeach ($src->getUserDefinedColumns(null, true, true) as $srcColumn) {\n\t\t\t\t\tif (!$destColumn->isConvertibleFrom($srcColumn)) {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\t\t\t\t\t$selected = ($srcColumn->getType() == $destColumn->getType()\n\t\t\t\t\t|| $destColumn->getPrintName() == $srcColumn->getPrintName()) && !$selected;\n\t\t\t\t?>\n\t\t\t\t\t<OPTION VALUE=\"<?php print $srcColumn->getPrintName(); ?>\" <?php if ($selected) { print \"SELECTED\"; } ?>><?php print $srcColumn->getDisplayName(); ?></OPTION>\n\t\t\t\t<?php } ?>\n\t\t\t\t\t<OPTION VALUE=\"NULL\" <?php if (!$selected) { print \"SELECTED\"; } ?>><?php echo $translator->trans(\"--None--\", array(), 'article_types'); ?></OPTION>\n\t\t\t\t</SELECT>\n\t\t\t</TD>\n\t\t\t<td>-&gt;</td>\n\t\t\t<TD align=\"left\"><?php print $destColumn->getDisplayName(); ?></TD>\n\t\t</TR>\n\t\t<?php } ?>\n\t\t</table>\n\t</td>\n</tr>\n\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\" style=\"padding-top: 20px; padding-bottom: 10px;\">\n\t<INPUT TYPE=\"hidden\" NAME=\"f_src\" VALUE=\"<?php print $f_src; ?>\">\n\t<INPUT TYPE=\"hidden\" NAME=\"f_dest\" VALUE=\"<?php print $f_dest; ?>\">\n\t<INPUT TYPE=\"hidden\" NAME=\"f_action\" VALUE=\"\">\n\t<INPUT TYPE=\"submit\" class=\"button\" NAME=\"Ok\" ONCLICK=\"dialog.f_action.value='Step1'\" VALUE=\"<?php  echo $translator->trans('Back to Step 1', array(), 'article_types'); ?>\">\n\t&nbsp;&nbsp;&nbsp;&nbsp;\n\t<INPUT TYPE=\"submit\" class=\"button\" NAME=\"Ok\" ONCLICK=\"dialog.f_action.value='Step3'\" VALUE=\"<?php  echo $translator->trans('Go to Step 3', array(), 'article_types'); ?>\">\n\t</TD>\n</TR>\n</TABLE>\n</FORM>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/article_types/merge3.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleImage.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n// Check permissions\nif (!$g_user->hasPermission('ManageArticleTypes')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to merge article types.\", array(), 'article_types'));\n\texit;\n}\n\n$f_src = trim(Input::get('f_src'));\n$f_dest = trim(Input::get('f_dest'));\n\n$f_prev_action = trim(Input::get('f_action', 'string', 'NULL')); // Preview actions: either NEXT, PREV, ORIG\n$f_action = trim(Input::get('f_action')); // either Step1, Step2, Preview or Merge\n\n\nif ($f_action == 'Step1') {\n\tcamp_html_goto_page(\"/$ADMIN/article_types/merge.php?f_src=$f_src&f_dest=$f_dest\");\n}\n\n$src = new ArticleType($f_src);\n$dest = new ArticleType($f_dest);\n\n$getString = '';\nforeach ($dest->getUserDefinedColumns(null, true, true) as $destColumn) {\n\t$getString .= \"&f_src_\". $destColumn->getPrintName() .\"=\". trim(Input::get('f_src_'. $destColumn->getPrintName()));\n}\n\nif ($f_action == 'Step2') {\n\tcamp_html_goto_page(\"/$ADMIN/article_types/merge2.php?f_src=$f_src&f_dest=$f_dest\". $getString);\n}\n\nforeach ($dest->getUserDefinedColumns(null, true, true) as $destColumn) {\n    $tmp = trim(Input::get('f_src_'. $destColumn->getPrintName()));\n    if (empty($tmp)) {\n    \t$tmp = 'NULL';\n    }\n\t$f_src_c[$destColumn->getPrintName()] = $tmp;\n}\n\n\n// Verify the merge rules\n$ok = true;\n$errMsgs = array();\n\nforeach ($f_src_c as $destColumn => $srcColumn) {\n\tif ($srcColumn == 'NULL') {\n\t\tcontinue;\n\t}\n\t$destATF = new ArticleTypeField($f_dest, $destColumn);\n\t$srcATF = new ArticleTypeField($f_src, $srcColumn);\n\n\tif (!$destATF->isConvertibleFrom($srcATF)) {\n        $errMsgs[] = $translator->trans('Cannot merge a $1 field ($2) into a $3 field ($4).', array(\n                '$1' => $translator->trans($srcATF->getType()), \n                '$2' => $srcATF->getDisplayName(),\n                '$3' => $translator->trans($destATF->getType()), \n                '$4' => $destATF->getDisplayName()\n            ), 'article_types');\n        $ok = false;\n\t}\n}\n\n//\n// if f_action is Merge, do the merge and return them to article_types/ screen (or an error)\n//\nif ($ok && $f_action == 'Merge') {\n\tif (!SecurityToken::isValid()) {\n\t\tcamp_html_display_error($translator->trans('Invalid security token!'));\n\t\texit;\n\t}\n\n\t$res = ArticleType::merge($f_src, $f_dest, $f_src_c);\n    if (!$res) {\n        $errMsgs[] = $translator->trans(\"Merge failed.\", array(), 'article_types');\n        $ok = false;\n    }\n    if ($ok) {\n    \t$f_delete = Input::get('f_delete', 'checkbox', 0);\n        if ($f_delete) {\n            // delete the source article type\n            $at = new ArticleType($f_src);\n            $at->delete();\n        }\n\n        camp_html_goto_page(\"/$ADMIN/article_types/\");\n        exit(0);\n    }\n}\n\n\n//\n// Otherwise, we are in preview mode, so render up a preview\n//\nif ($ok) {\n    //\n    // calculate where this article is in relation to all the articles of the src type\n    //\n    $articlesArray = $src->getArticlesArray();\n    if (!count($articlesArray)) {\n        $errMsgs[] = $translator->trans(\"No articles.\");\n        $ok = false;\n    }\n    if ($ok) {\n        $f_cur_preview = trim(Input::get('f_cur_preview', 'int', $articlesArray[0])); // The currently previewed article\n        $tmp = array_keys($articlesArray, $f_cur_preview);\n        $curPos = $tmp[0]; // used for calculating the next / prev arrows\n\n        // calculate the first language of an article number\n        // and also the number of translations associated with an article number\n        global $g_ado_db;\n        $sql = \"SELECT * FROM X$f_src WHERE NrArticle=$f_cur_preview\";\n        $rows = $g_ado_db->GetAll($sql);\n        if (!count($rows)) {\n            $errMsgs[] = $translator->trans('There is no article associated with the preview.', array(), 'article_types');\n            $ok = false;\n        }\n    }\n\n    if ($ok) {\n        $numberOfTranslations = count($rows);\n        $firstLanguage = $rows[0]['IdLanguage'];\n        $curPreview = new Article($firstLanguage, $f_cur_preview);\n        $articleCreator = new User($curPreview->getCreatorId());\n        $articleData = $dest->getPreviewArticleData();\n        $dbColumns = $articleData->getUserDefinedColumns(1, true);\n        $srcArticleData = $curPreview->getArticleData();\n        $srcDbColumns = $srcArticleData->getUserDefinedColumns(1, true);\n        $getString = '';\n        foreach ($_GET as $k => $v) {\n            if ( ($k != 'f_action') && ($k != 'f_preview_action') ) {\n                $getString .= \"&$k=$v\";\n            }\n        }\n        foreach ($_POST as $k => $v) {\n            if ( ($k != 'f_action') && ($k != 'f_prev_action') ) {\n                $getString .= \"&$k=$v\";\n            }\n        }\n        $getString = substr($getString, 1);\n\n        $crumbs = array();\n        $crumbs[] = array($translator->trans(\"Configure\"), \"\");\n        $crumbs[] = array($translator->trans(\"Article Types\"), \"/$ADMIN/article_types/\");\n        $crumbs[] = array($translator->trans(\"Merge article type\", array(), 'article_types'), \"\");\n        echo camp_html_breadcrumbs($crumbs);\n\n        ?>\n        <P>\n        <FORM NAME=\"dialog\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/article_types/merge3.php?f_src=<?php print $f_src; ?>&f_dest=<?php print $f_dest; ?>\">\n\t\t<?php echo SecurityToken::FormParameter(); ?>\n        <TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" CLASS=\"box_table\">\n        <TR>\n        \t<TD COLSPAN=\"2\">\n        \t\t<b><?php echo $translator->trans(\"Merge Article Types: Step $1 of $2\", array('$1' => 3, '$2' => 3), 'article_types'); ?></b>\n\t\t\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n        \t</TD>\n        </TR>\n        <TR>\n        \t<TD COLSPAN=\"2\">\n        \t\t<b><?php echo $translator->trans(\"Merge configuration for merging $1 into $2.\", array('$1' => $src->getDisplayName(), '$2' => $dest->getDisplayName()), 'article_types'); ?></b>\n        \t<BR>\n        \t<UL>\n        \t<?php\n        \tforeach ($f_src_c as $destColumn => $srcColumn) {\n        \t\t$tmp = array_keys($f_src_c, $srcColumn);\n\n        \t\tif ($srcColumn == 'NULL') {\n        \t\t\t?>\n        \t\t\t<LI><FONT COLOR=\"TAN\"><?php echo $translator->trans(\"Merge $1 into $2\",  array('$1' => \"<b>\".$translator->trans(\"NOTHING\", array(), 'article_types').\"</b>\", '$2' => \"<b>\". $destColumn .\"</b>\"), 'article_types'); ?> <?php echo $translator->trans(\"(Null merge warning.)\", array(), 'article_types'); ?></FONT></LI>\n        \t\t\t<?php\n        \t\t} else if (count($tmp) > 1) {\n        \t\t\t?>\n        \t\t\t<LI><FONT COLOR=\"TAN\"><?php echo $translator->trans(\"Merge $1 into $2\", array('$1' => \"<b>\".$srcColumn.\"</b>\", '$2' => \"<b>\". $destColumn .\"</b>\"), 'article_types'); ?> <?php echo $translator->trans(\"(Duplicate warning.)\", array(), 'article_types'); ?></FONT></LI>\n        \t\t\t<?php\n        \t\t} else {\n        \t\t\t?>\n        \t\t\t<LI><FONT COLOR=\"GREEN\"><?php echo $translator->trans(\"Merge $1 into $2\", array('$1' => \"<b>\".$srcColumn.\"</b>\", '$2' => \"<b>\". $destColumn .\"</b>\"), 'article_types'); ?></FONT></LI>\n        \t\t\t<?php\n        \t\t}\n        \t}\n\n        \t// display the warning in red if the user select NONE\n        \tforeach ($src->getUserDefinedColumns(null, true, true) as $srcColumn) {\n        \t\tif (array_search($srcColumn->getPrintName(), $f_src_c) === false) {\n        \t\t\t?><LI><FONT COLOR=\"RED\"><?php echo $translator->trans(\"(!) Do NOT merge $1\", array('$1' => \"<B>\". $srcColumn->getPrintName() .\"</B>\"), 'article_types'); ?> <?php echo $translator->trans(\"(No merge warning.)\", array(), 'article_types'); ?></FONT></LI><?php\n        \t\t}\n        \t} ?>\n        \t</UL>\n        \t</TD>\n\n        </TR>\n        <TR>\n        \t<TD COLSPAN=\"2\">\n        \t<B><?php echo $translator->trans(\"Preview a sample of the merge configuration.\", array(), 'article_types'); ?></B> <SMALL><?php echo $translator->trans(\"Cycle through your articles to verify that the merge configuration is correct.\", array(), 'article_types'); ?></SMALL>\n        \t</TD>\n        </TR>\n\n        <TR>\n        \t<TD COLSPAN=\"2\">\n            <?php if ($f_prev_action == 'Orig') { ?>\n                <B><?php echo $translator->trans(\"View of original ($1) $2\", array('$1' => htmlspecialchars($curPreview->getType()), '$2' => $curPreview->getTitle()), 'article_types'); ?>\n                (<A HREF=\"/<?php print $ADMIN; ?>/article_types/merge3.php?<?php print $getString; ?>\">\n                <?php echo $translator->trans(\"To return to the preview click here\", array(), 'article_types'); ?></a>)</B>\n            <?php } else { ?>\n            \t<B><?php echo $translator->trans(\"Preview of $1\", array('$1' => wordwrap(htmlspecialchars($curPreview->getTitle()), 60, '<BR>')), 'article_types'); ?>\n            \t   (<A HREF=\"/<?php print $ADMIN; ?>/article_types/merge3.php?f_action=Orig&<?php print $getString; ?>\"><?php echo $translator->trans(\"View the source ($1) version of $2\", array('$1' => $src->getDisplayName(), '$2' => wordwrap(htmlspecialchars($curPreview->getTitle()), 60, '<BR>')), 'article_types'); ?></A>)\n            \t<?php echo $translator->trans(\"$1 of $2\", array('$1' => $curPos + 1, '$2' => count($articlesArray)), 'article_types'); ?>.\n                <?php\n                if (isset($articlesArray[$curPos - 1])) {\n                    $prevArticle = $articlesArray[$curPos - 1];\n                ?>\n                \t<A HREF=\"/<?php print $ADMIN; ?>/article_types/merge3.php?<?php print $getString; ?>&f_cur_preview=<?php print $prevArticle; ?>\"><IMG BORDER=\"0\" SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/previous.png\" BORDER=\"0\"></a>&nbsp;\n                <?php\n                }\n                if (isset($articlesArray[$curPos + 1])) {\n                    $nextArticle = $articlesArray[$curPos + 1];\n                    ?>\n                    <A HREF=\"/<?php print $ADMIN; ?>/article_types/merge3.php?<?php print $getString; ?>&f_cur_preview=<?php print $nextArticle; ?>\"><IMG BORDER=\"0\" SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/next.png\" BORDER=\"0\"></a>\n                <?php\n                }\n            } // else\n            ?>\n            <BR><?php echo $translator->trans(\"This is the first translation of $1\", array('$1' => $numberOfTranslations), 'article_types'); ?>\n\n            </TD>\n        </TR>\n        <TR>\n        \t<TD COLSPAN=\"2\">\n        \t<TABLE BORDER=\"1\">\n            <tr>\n        \t<td valign=\"top\">\n        \t<!-- BEGIN article content -->\n        \t<table>\n        \t<TR>\n        \t\t<TD style=\"padding-top: 3px;\">\n        \t\t\t<TABLE>\n        \t\t\t<TR>\n        \t\t\t\t<TD ALIGN=\"RIGHT\" valign=\"top\" ><b><?php  echo $translator->trans(\"Name\"); ?>:</b></TD>\n        \t\t\t\t<TD align=\"left\" valign=\"top\">\n        \t\t\t\t    <?php print wordwrap(htmlspecialchars($curPreview->getTitle()), 60, \"<br>\"); ?>\n        \t\t\t\t</TD>\n        \t\t\t\t<TD ALIGN=\"RIGHT\" valign=\"top\"><b><?php  echo $translator->trans(\"Created by\"); ?>:</b></TD>\n        \t\t\t\t<TD align=\"left\" valign=\"top\"><?php p(htmlspecialchars($articleCreator->getRealName())); ?></TD>\n        \t\t\t\t<TD ALIGN=\"RIGHT\" valign=\"top\"></TD>\n        \t\t\t\t<TD align=\"left\" valign=\"top\" style=\"padding-top: 0.25em;\">\n        \t\t\t\t<?php  echo $translator->trans('Show article on front page', array(), 'article_types'); ?>\n        \t\t\t\t</TD>\n        \t\t\t</TR>\n        \t\t\t<TR>\n        \t\t\t\t<TD ALIGN=\"RIGHT\" valign=\"top\" style=\"padding-left: 1em;\"><b><?php  echo $translator->trans(\"Type\"); ?>:</b></TD>\n        \t\t\t\t<TD align=\"left\" valign=\"top\">\n        \t\t\t\t\t<?php print htmlspecialchars($dest->getDisplayName()); ?>\n        \t\t\t\t</TD>\n        \t\t\t\t<TD ALIGN=\"RIGHT\" valign=\"top\" style=\"padding-left: 1em;\"><b><nobr><?php echo $translator->trans(\"Creation date\"); ?>:</nobr></b></TD>\n        \t\t\t\t<TD align=\"left\" valign=\"top\" nowrap>\n        \t\t\t\t\t<?php print $curPreview->getCreationDate(); ?>\n        \t\t\t\t</TD>\n        \t\t\t\t<TD ALIGN=\"RIGHT\" valign=\"top\" style=\"padding-left: 1em;\"></TD>\n        \t\t\t\t<TD align=\"left\" valign=\"top\"  style=\"padding-top: 0.25em;\">\n        \t\t\t\t<?php echo $translator->trans('Show article on section page', array(), 'article_types'); ?>\n        \t\t\t\t</TD>\n        \t\t\t</TR>\n        \t\t\t<TR>\n        \t\t\t    <td align=\"right\" valign=\"top\" nowrap><b><?php echo $translator->trans(\"Number\"); ?>:</b></td>\n        \t\t\t    <td align=\"left\" valign=\"top\"  style=\"padding-top: 2px; padding-left: 4px;\"><?php p($curPreview->getArticleNumber()); ?> <?php if (isset($publicationObj) && $publicationObj->getUrlTypeId() == 2) { ?>\n        &nbsp;(<a href=\"/<?php echo $languageObj->getCode().\"/\".$issueObj->getUrlName().\"/\".$sectionObj->getUrlName().\"/\".$curPreview->getUrlName(); ?>\"><?php echo $translator->trans(\"Link to public page\", array(), 'article_types'); ?></a>)<?php } ?></td>\n\n        \t\t\t\t<TD ALIGN=\"RIGHT\" valign=\"top\" style=\"padding-left: 1em;\"><b><?php echo $translator->trans(\"Publish date\", array(), 'article_types'); ?>:</b></TD>\n        \t\t\t\t<TD align=\"left\" valign=\"top\">\n        \t\t\t\t\t<?php print htmlspecialchars($curPreview->getPublishDate()); ?>\n        \t\t\t\t</TD>\n        \t\t\t\t<TD ALIGN=\"RIGHT\" valign=\"top\" style=\"padding-left: 1em;\"></TD>\n        \t\t\t\t<TD align=\"left\" valign=\"top\" style=\"padding-top: 0.25em;\">\n        \t\t\t\t<?php echo $translator->trans('Allow users without subscriptions to view the article', array(), 'article_types'); ?>\n        \t\t\t\t</TD>\n        \t\t\t</TR>\n        \t\t\t</TABLE>\n        \t\t</TD>\n        \t</TR>\n\n        \t<TR>\n        \t\t<TD style=\"border-top: 1px solid #8baed1; padding-top: 3px;\">\n        \t\t\t<TABLE>\n        \t\t\t<TR>\n        \t\t\t\t<td align=\"left\" style=\"padding-right: 5px;\">\n        \t\t\t\t</td>\n        \t\t\t\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Keywords\"); ?>:</TD>\n        \t\t\t\t<TD>\n        \t\t\t\t\t<?php print htmlspecialchars($curPreview->getKeywords()); ?>\n        \t\t\t\t</TD>\n        \t\t\t</TR>\n\n        \t\t\t<?php\n        \t\t\t// Display the article type fields.\n        \t\t\t$i = 0;\n        \t\t\tif ($f_prev_action == 'Orig') $dbColumns = $srcDbColumns;\n        \t\t\tforeach ($dbColumns as $dbColumn) {\n                        if ($f_prev_action == 'Orig') {\n                            $text = $srcArticleData->getProperty($dbColumn->getName());\n                        } elseif ($f_src_c[$dbColumn->getPrintName()] != 'NULL') {\n            \t\t\t\t$text = $srcArticleData->getProperty('F'. $f_src_c[$dbColumn->getPrintName()]);\n                        } else {\n                            $text = '';\n                        }\n\n        \t\t\t\tif ($dbColumn->getType() == ArticleTypeField::TYPE_TEXT) {\n        \t\t\t\t\t// Single line text fields\n        \t\t\t?>\n        \t\t\t<TR>\n        \t\t\t\t<td align=\"left\" style=\"padding-right: 5px;\">\n        \t\t\t\t</td>\n        \t\t\t\t<td align=\"right\">\n        \t\t\t\t\t<?php echo htmlspecialchars($dbColumn->getDisplayName()); ?>:\n        \t\t\t\t</td>\n        \t\t\t\t<TD>\n        \t\t\t\t<?php print htmlspecialchars($text); ?>\n        \t\t\t\t</TD>\n        \t\t\t</TR>\n        \t\t\t<?php\n        \t\t\t} elseif ($dbColumn->getType() == ArticleTypeField::TYPE_DATE) {\n        \t\t\t\t// Date fields\n        \t\t\t?>\n        \t\t\t<TR>\n        \t\t\t\t<td align=\"left\" style=\"padding-right: 5px;\">\n        \t\t\t\t</td>\n        \t\t\t\t<td align=\"right\">\n        \t\t\t\t\t<?php\n                            echo htmlspecialchars($dbColumn->getDisplayName()); ?>:\n        \t\t\t\t</td>\n        \t\t\t\t<TD>\n        \t\t\t\t\t<span style=\"padding-left: 4px; padding-right: 4px; padding-top: 1px; padding-bottom: 1px; border: 1px solid #888; margin-right: 5px; background-color: #EEEEEE;\">\n        \t\t\t\t\t<?php echo htmlspecialchars($text); ?>\n        \t\t\t\t\t</span>\n        \t\t\t\t<?php echo $translator->trans('YYYY-MM-DD'); ?>\n        \t\t\t\t</TD>\n        \t\t\t</TR>\n        \t\t\t<?php\n        \t\t\t} elseif ($dbColumn->getType() == ArticleTypeField::TYPE_BODY) {\n        \t\t\t\t// Multiline text fields\n        \t\t\t\t// Transform Campsite-specific tags into editor-friendly tags.\n        \t\t\t\t// Subheads\n        \t\t\t\t$text = preg_replace(\"/<!\\*\\*\\s*Title\\s*>/i\", \"<span class=\\\"campsite_subhead\\\">\", $text);\n        \t\t\t\t$text = preg_replace(\"/<!\\*\\*\\s*EndTitle\\s*>/i\", \"</span>\", $text);\n\n        \t\t\t\t// Internal Links with targets\n        \t\t\t\t$text = preg_replace(\"/<!\\*\\*\\s*Link\\s*Internal\\s*([\\w=&]*)\\s*target\\s*([\\w_]*)\\s*>/i\", '<a href=\"/campsite/campsite1_internal_link?$1\" target=\"$2\">', $text);\n        \t\t\t\t// Internal Links without targets\n        \t\t\t\t$text = preg_replace(\"/<!\\*\\*\\s*Link\\s*Internal\\s*([\\w=&]*)\\s*>/i\", '<a href=\"/campsite/campsite1_internal_link?$1\">', $text);\n        \t\t\t\t// End link\n        \t\t\t\t$text = preg_replace(\"/<!\\*\\*\\s*EndLink\\s*>/i\", \"</a>\", $text);\n        \t\t\t\t// Images\n        \t\t\t\tpreg_match_all(\"/<!\\*\\*\\s*Image\\s*([\\d]*)\\s*/i\",$text, $imageMatches);\n        \t\t\t\tif (isset($imageMatches[1][0])) {\n        \t\t\t\t\tforeach ($imageMatches[1] as $templateId) {\n        \t\t\t\t\t\t// Get the image URL\n        \t\t\t\t\t\t$articleImage = new ArticleImage($srcArticleData->getProperty('NrArticle'), null, $templateId);\n        \t\t\t\t\t\t$image = new Image($articleImage->getImageId());\n        \t\t\t\t\t\t$imageUrl = $image->getImageUrl();\n        \t\t\t\t\t\t$text = preg_replace(\"/<!\\*\\*\\s*Image\\s*\".$templateId.\"\\s*/i\", '<img src=\"'.$imageUrl.'\" id=\"'.$templateId.'\" ', $text);\n        \t\t\t\t\t}\n        \t\t\t\t}\n        \t\t\t?>\n        \t\t\t<TR>\n        \t\t\t<TD ALIGN=\"RIGHT\" VALIGN=\"TOP\" style=\"padding-top: 8px; padding-right: 5px;\">\n        \t\t\t</td>\n        \t\t\t<td align=\"right\" valign=\"top\" style=\"padding-top: 8px;\">\n        \t\t\t\t<?php echo htmlspecialchars($dbColumn->getDisplayName()); ?>:\n        \t\t\t</td>\n        \t\t\t<TD align=\"left\" valign=\"top\">\n        \t\t\t\t<table cellpadding=\"0\" cellspacing=\"0\" width=\"100%\">\n        \t\t\t\t<tr>\n        \t\t\t\t\t<td align=\"left\" style=\"padding: 5px; <?php if (!empty($text)) {?>border: 1px solid #888; margin-right: 5px;<?php } ?>\" <?php if (!empty($text)) {?>bgcolor=\"#EEEEEE\"<?php } ?>><?php p($text); ?></td>\n        \t\t\t\t</tr>\n        \t\t\t\t</table>\n        \t\t\t</TD>\n        \t\t\t</TR>\n        \t\t\t<?php\n        \t\t\t} elseif ($dbColumn->getType() == ArticleTypeField::TYPE_TOPIC) {\n        \t\t\t?>\n        \t\t\t<tr>\n        \t\t\t<TD ALIGN=\"RIGHT\" VALIGN=\"TOP\" style=\"padding-top: 8px; padding-right: 5px;\">\n        \t\t\t</td>\n        \t\t\t<td align=\"right\">\n        \t\t\t\t<?php echo htmlspecialchars($dbColumn->getDisplayName()); ?>:\n        \t\t\t</td>\n        \t\t\t<td>\n                        <?php\n                        $em = Zend_Registry::get('container')->getService('em');\n                        $repository = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic');\n                        $topic = $repository->getTopicByIdOrName((int)$text, camp_session_get('LoginLanguageId', 1))->getOneOrNullResult();\n                        if ($topic) {\n                            echo $topic->getTitle();\n                        }\n                        ?>\n        \t\t\t</td>\n        \t\t\t</tr>\n        \t\t\t<?php\n        \t\t\t} elseif ($dbColumn->getType() == ArticleTypeField::TYPE_SWITCH) {\n                        try {\n                            $checked = $srcArticleData->getFieldValue($dbColumn->getPrintName()) ? 'checked' : '';\n                        } catch (\\InvalidPropertyException $e) {\n                            $checked = '';\n                        }\n                    ?>\n                    <tr>\n                    <TD ALIGN=\"RIGHT\" VALIGN=\"TOP\" style=\"padding-top: 8px; padding-right: 5px;\">\n                    </td>\n                    <td align=\"right\"><?php echo htmlspecialchars($dbColumn->getDisplayName()); ?>:</td>\n                    <td>\n                    <input type=\"checkbox\" <?php echo $checked; ?> class=\"input_checkbox\" name=\"<?php echo $dbColumn->getName(); ?>\" id=\"<?php echo $dbColumn->getName(); ?>\" disabled>\n                    </td>\n                    </tr>\n                    <?php\n        \t\t\t}\n        \t\t} // foreach ($dbColumns as $dbColumn)\n        \t\t?>\n        \t\t\t</TABLE>\n        \t\t</TD>\n        \t</TR>\n        \t</TABLE>\n        \t<!-- END Article Content -->\n\n\n\n        \t</TD></TR></TABLE>\n        \t</TD>\n        </TR>\n\n        <TR>\n        \t<TD>\n        \t<INPUT TYPE=\"CHECKBOX\" NAME=\"f_delete\"><?php echo $translator->trans(\"Delete the source article type ($1) when finished.\", array('$1' => $src->getDisplayName()), 'article_types'); ?>\n        \t</TD>\n        \t<TD>\n        \t<b><?php echo $translator->trans('Clicking \"Merge\" will merge ($1) article(s).', array('$1' => $src->getNumArticles()), 'article_types'); ?></b>\n        \t</TD>\n        <TR>\n        \t<TD COLSPAN=\"2\">\n        \t<DIV ALIGN=\"CENTER\">\n\n        \t<?php foreach ($dest->getUserDefinedColumns(null, true, true) as $destColumn) { ?>\n        \t<INPUT TYPE=\"HIDDEN\" NAME=\"f_src_<?php print $destColumn->getPrintName(); ?>\" VALUE=\"<?php print $f_src_c[$destColumn->getPrintName()]; ?>\">\n        \t<?php } ?>\n\n        \t<INPUT TYPE=\"HIDDEN\" NAME=\"f_cur_preview\" VALUE=\"<?php $curPreview->getArticleNumber(); ?>\">\n        \t<INPUT TYPE=\"HIDDEN\" NAME=\"f_action\" VALUE=\"\">\n        \t<INPUT TYPE=\"submit\" class=\"button\" NAME=\"Ok\" ONCLICK=\"dialog.f_action.value='Step2'\" VALUE=\"<?php  echo $translator->trans('Back to Step 2', array(), 'article_types'); ?>\">\n        \t<INPUT TYPE=\"submit\" class=\"button\" NAME=\"Ok\" ONCLICK=\"dialog.f_action.value='Merge'\" VALUE=\"<?php  echo $translator->trans('Merge!', array(), 'article_types'); ?>\">\n        \t</DIV>\n        \t</TD>\n        </TR>\n        </TABLE>\n        </FORM>\n        <P>\n\n        <?php camp_html_copyright_notice(); ?>\n    <?php\n    } // end if ok\n} // end if ok\nif (!$ok) {\n    $crumbs = array();\n    $crumbs[] = array($translator->trans(\"Configure\"), \"\");\n    $crumbs[] = array($translator->trans(\"Article Types\"), \"/$ADMIN/article_types/\");\n    $crumbs[] = array($translator->trans(\"Merge article type\", array(), 'article_types'), \"\");\n\n    echo camp_html_breadcrumbs($crumbs);\n\n    ?>\n    <P>\n    <TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n    <TR>\n    \t<TD COLSPAN=\"2\">\n    \t\t<B> <?php  echo $translator->trans(\"Merge article type\", array(), 'article_types'); ?> </B>\n    \t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n    \t</TD>\n    </TR>\n    <TR>\n    \t<TD COLSPAN=\"2\">\n    \t\t<BLOCKQUOTE>\n    \t\t<?php\n    \t\tforeach ($errMsgs as $errorMsg) {\n    \t\t\techo \"<li>\".$errorMsg.\"</li>\";\n    \t\t}\n    \t\t?>\n    \t\t</BLOCKQUOTE>\n    \t</TD>\n    </TR>\n    <TR>\n    \t<TD COLSPAN=\"2\">\n    \t<DIV ALIGN=\"CENTER\">\n    \t<INPUT TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php  echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php p($ADMIN); ?>/article_types/merge2.php?f_src=<?php echo $f_src; ?>&f_dest=<?php echo $f_dest . $getString ?>'\">\n    \t</DIV>\n    \t</TD>\n    </TR>\n    </TABLE>\n    <P>\n\n    <?php echo camp_html_copyright_notice(); ?>\n    <?php\n\n} ?>\n"
  },
  {
    "path": "newscoop/admin-files/article_types/rename.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n// Check permissions\nif (!$g_user->hasPermission('ManageArticleTypes')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to rename article types.\", array(), 'article_types'));\n\texit;\n}\n\n$articleTypes = ArticleType::GetArticleTypes(true);\n$f_name = trim(Input::get('f_name'));\nif (array_search($f_name, $articleTypes) === false) {\n    camp_html_display_error($translator->trans(\"Invalid article type $1.\", array('$1' => \"'\".$f_name.\"'\"), 'article_types'));\n    exit;\n}\n\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Configure\"), \"\");\n$crumbs[] = array($translator->trans(\"Article Types\"), \"/$ADMIN/article_types/\");\n$crumbs[] = array($translator->trans(\"Rename article type $1\", array('$1' => \"'\".$f_name.\"'\"), 'article_types'), \"\");\necho camp_html_breadcrumbs($crumbs);\ninclude_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/javascript_common.php\");\n\n?>\n<P>\n<FORM NAME=\"dialog\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/article_types/do_rename.php\" onsubmit=\"return <?php camp_html_fvalidate(); ?>;\">\n<?php echo SecurityToken::FormParameter(); ?>\n<INPUT TYPE=\"hidden\" VALUE=\"<?php p($f_name); ?>\" NAME=\"f_oldName\">\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" CLASS=\"box_table\">\n<TR><TD COLSPAN=\"2\"><?php echo $translator->trans('The template name may only contain letters and the underscore (_) character.', array(), 'article_types'); ?></TD></TR>\n<TR>\n\t<TD ALIGN=\"LEFT\" ><?php echo $translator->trans(\"Template Type Name\", array(), 'article_types'); ?>:</TD>\n\t<TD ALIGN=\"LEFT\">\n\t<INPUT TYPE=\"TEXT\" VALUE=\"<?php p($f_name); ?>\" class=\"input_text\" NAME=\"f_name\" ALT=\"alnum|1|A|false|false|_\" emsg=\"<?php echo $translator->trans(\"The template name may only contain letters and the underscore (_) character.\", array(), 'article_types'); ?>\" SIZE=\"15\" MAXLENGTH=\"15\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t<DIV ALIGN=\"CENTER\">\n\t<INPUT TYPE=\"submit\" class=\"button\" NAME=\"Ok\" VALUE=\"<?php echo $translator->trans('Save'); ?>\">\n\t</DIV>\n\t</TD>\n</TR>\n</TABLE>\n</FORM>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/JSON.php",
    "content": "<?php\r\n/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */\r\n\r\n/**\r\n* Converts to and from JSON format.\r\n*\r\n* JSON (JavaScript Object Notation) is a lightweight data-interchange\r\n* format. It is easy for humans to read and write. It is easy for machines\r\n* to parse and generate. It is based on a subset of the JavaScript\r\n* Programming Language, Standard ECMA-262 3rd Edition - December 1999.\r\n* This feature can also be found in  Python. JSON is a text format that is\r\n* completely language independent but uses conventions that are familiar\r\n* to programmers of the C-family of languages, including C, C++, C#, Java,\r\n* JavaScript, Perl, TCL, and many others. These properties make JSON an\r\n* ideal data-interchange language.\r\n*\r\n* This package provides a simple encoder and decoder for JSON notation. It\r\n* is intended for use with client-side Javascript applications that make\r\n* use of HTTPRequest to perform server communication functions - data can\r\n* be encoded into JSON notation for use in a client-side javascript, or\r\n* decoded from incoming Javascript requests. JSON format is native to\r\n* Javascript, and can be directly eval()'ed with no further parsing\r\n* overhead\r\n*\r\n* All strings should be in ASCII or UTF-8 format!\r\n*\r\n* LICENSE: Redistribution and use in source and binary forms, with or\r\n* without modification, are permitted provided that the following\r\n* conditions are met: Redistributions of source code must retain the\r\n* above copyright notice, this list of conditions and the following\r\n* disclaimer. Redistributions in binary form must reproduce the above\r\n* copyright notice, this list of conditions and the following disclaimer\r\n* in the documentation and/or other materials provided with the\r\n* distribution.\r\n*\r\n* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED\r\n* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\r\n* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN\r\n* NO EVENT SHALL CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,\r\n* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,\r\n* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS\r\n* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND\r\n* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR\r\n* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE\r\n* USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH\r\n* DAMAGE.\r\n*\r\n* @category\r\n* @package     Services_JSON\r\n* @author      Michal Migurski <mike-json@teczno.com>\r\n* @author      Matt Knapp <mdknapp[at]gmail[dot]com>\r\n* @author      Brett Stimmerman <brettstimmerman[at]gmail[dot]com>\r\n* @copyright   2005 Michal Migurski\r\n* @version     CVS: $Id: JSON.php,v 1.1 2007/07/24 18:36:02 davglass Exp $\r\n* @license     http://www.opensource.org/licenses/bsd-license.php\r\n* @link        http://pear.php.net/pepr/pepr-proposal-show.php?id=198\r\n*/\r\n\r\n/**\r\n* Marker constant for Services_JSON::decode(), used to flag stack state\r\n*/\r\ndefine('SERVICES_JSON_SLICE',   1);\r\n\r\n/**\r\n* Marker constant for Services_JSON::decode(), used to flag stack state\r\n*/\r\ndefine('SERVICES_JSON_IN_STR',  2);\r\n\r\n/**\r\n* Marker constant for Services_JSON::decode(), used to flag stack state\r\n*/\r\ndefine('SERVICES_JSON_IN_ARR',  3);\r\n\r\n/**\r\n* Marker constant for Services_JSON::decode(), used to flag stack state\r\n*/\r\ndefine('SERVICES_JSON_IN_OBJ',  4);\r\n\r\n/**\r\n* Marker constant for Services_JSON::decode(), used to flag stack state\r\n*/\r\ndefine('SERVICES_JSON_IN_CMT', 5);\r\n\r\n/**\r\n* Behavior switch for Services_JSON::decode()\r\n*/\r\ndefine('SERVICES_JSON_LOOSE_TYPE', 16);\r\n\r\n/**\r\n* Behavior switch for Services_JSON::decode()\r\n*/\r\ndefine('SERVICES_JSON_SUPPRESS_ERRORS', 32);\r\n\r\n/**\r\n* Converts to and from JSON format.\r\n*\r\n* Brief example of use:\r\n*\r\n* <code>\r\n* // create a new instance of Services_JSON\r\n* $json = new Services_JSON();\r\n*\r\n* // convert a complexe value to JSON notation, and send it to the browser\r\n* $value = array('foo', 'bar', array(1, 2, 'baz'), array(3, array(4)));\r\n* $output = $json->encode($value);\r\n*\r\n* print($output);\r\n* // prints: [\"foo\",\"bar\",[1,2,\"baz\"],[3,[4]]]\r\n*\r\n* // accept incoming POST data, assumed to be in JSON notation\r\n* $input = file_get_contents('php://input', 1000000);\r\n* $value = $json->decode($input);\r\n* </code>\r\n*/\r\nclass Services_JSON\r\n{\r\n   /**\r\n    * constructs a new JSON instance\r\n    *\r\n    * @param    int     $use    object behavior flags; combine with boolean-OR\r\n    *\r\n    *                           possible values:\r\n    *                           - SERVICES_JSON_LOOSE_TYPE:  loose typing.\r\n    *                                   \"{...}\" syntax creates associative arrays\r\n    *                                   instead of objects in decode().\r\n    *                           - SERVICES_JSON_SUPPRESS_ERRORS:  error suppression.\r\n    *                                   Values which can't be encoded (e.g. resources)\r\n    *                                   appear as NULL instead of throwing errors.\r\n    *                                   By default, a deeply-nested resource will\r\n    *                                   bubble up with an error, so all return values\r\n    *                                   from encode() should be checked with isError()\r\n    */\r\n    function Services_JSON($use = 0)\r\n    {\r\n        $this->use = $use;\r\n    }\r\n\r\n   /**\r\n    * convert a string from one UTF-16 char to one UTF-8 char\r\n    *\r\n    * Normally should be handled by mb_convert_encoding, but\r\n    * provides a slower PHP-only method for installations\r\n    * that lack the multibye string extension.\r\n    *\r\n    * @param    string  $utf16  UTF-16 character\r\n    * @return   string  UTF-8 character\r\n    * @access   private\r\n    */\r\n    function utf162utf8($utf16)\r\n    {\r\n        // oh please oh please oh please oh please oh please\r\n        if(function_exists('mb_convert_encoding')) {\r\n            return mb_convert_encoding($utf16, 'UTF-8', 'UTF-16');\r\n        }\r\n\r\n        $bytes = (ord($utf16{0}) << 8) | ord($utf16{1});\r\n\r\n        switch(true) {\r\n            case ((0x7F & $bytes) == $bytes):\r\n                // this case should never be reached, because we are in ASCII range\r\n                // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8\r\n                return chr(0x7F & $bytes);\r\n\r\n            case (0x07FF & $bytes) == $bytes:\r\n                // return a 2-byte UTF-8 character\r\n                // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8\r\n                return chr(0xC0 | (($bytes >> 6) & 0x1F))\r\n                     . chr(0x80 | ($bytes & 0x3F));\r\n\r\n            case (0xFFFF & $bytes) == $bytes:\r\n                // return a 3-byte UTF-8 character\r\n                // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8\r\n                return chr(0xE0 | (($bytes >> 12) & 0x0F))\r\n                     . chr(0x80 | (($bytes >> 6) & 0x3F))\r\n                     . chr(0x80 | ($bytes & 0x3F));\r\n        }\r\n\r\n        // ignoring UTF-32 for now, sorry\r\n        return '';\r\n    }\r\n\r\n   /**\r\n    * convert a string from one UTF-8 char to one UTF-16 char\r\n    *\r\n    * Normally should be handled by mb_convert_encoding, but\r\n    * provides a slower PHP-only method for installations\r\n    * that lack the multibye string extension.\r\n    *\r\n    * @param    string  $utf8   UTF-8 character\r\n    * @return   string  UTF-16 character\r\n    * @access   private\r\n    */\r\n    function utf82utf16($utf8)\r\n    {\r\n        // oh please oh please oh please oh please oh please\r\n        if(function_exists('mb_convert_encoding')) {\r\n            return mb_convert_encoding($utf8, 'UTF-16', 'UTF-8');\r\n        }\r\n\r\n        switch(strlen($utf8)) {\r\n            case 1:\r\n                // this case should never be reached, because we are in ASCII range\r\n                // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8\r\n                return $utf8;\r\n\r\n            case 2:\r\n                // return a UTF-16 character from a 2-byte UTF-8 char\r\n                // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8\r\n                return chr(0x07 & (ord($utf8{0}) >> 2))\r\n                     . chr((0xC0 & (ord($utf8{0}) << 6))\r\n                         | (0x3F & ord($utf8{1})));\r\n\r\n            case 3:\r\n                // return a UTF-16 character from a 3-byte UTF-8 char\r\n                // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8\r\n                return chr((0xF0 & (ord($utf8{0}) << 4))\r\n                         | (0x0F & (ord($utf8{1}) >> 2)))\r\n                     . chr((0xC0 & (ord($utf8{1}) << 6))\r\n                         | (0x7F & ord($utf8{2})));\r\n        }\r\n\r\n        // ignoring UTF-32 for now, sorry\r\n        return '';\r\n    }\r\n\r\n   /**\r\n    * encodes an arbitrary variable into JSON format\r\n    *\r\n    * @param    mixed   $var    any number, boolean, string, array, or object to be encoded.\r\n    *                           see argument 1 to Services_JSON() above for array-parsing behavior.\r\n    *                           if var is a strng, note that encode() always expects it\r\n    *                           to be in ASCII or UTF-8 format!\r\n    *\r\n    * @return   mixed   JSON string representation of input var or an error if a problem occurs\r\n    * @access   public\r\n    */\r\n    function encode($var)\r\n    {\r\n        switch (gettype($var)) {\r\n            case 'boolean':\r\n                return $var ? 'true' : 'false';\r\n\r\n            case 'NULL':\r\n                return 'null';\r\n\r\n            case 'integer':\r\n                return (int) $var;\r\n\r\n            case 'double':\r\n            case 'float':\r\n                return (float) $var;\r\n\r\n            case 'string':\r\n                // STRINGS ARE EXPECTED TO BE IN ASCII OR UTF-8 FORMAT\r\n                $ascii = '';\r\n                $strlen_var = strlen($var);\r\n\r\n               /*\r\n                * Iterate over every character in the string,\r\n                * escaping with a slash or encoding to UTF-8 where necessary\r\n                */\r\n                for ($c = 0; $c < $strlen_var; ++$c) {\r\n\r\n                    $ord_var_c = ord($var{$c});\r\n\r\n                    switch (true) {\r\n                        case $ord_var_c == 0x08:\r\n                            $ascii .= '\\b';\r\n                            break;\r\n                        case $ord_var_c == 0x09:\r\n                            $ascii .= '\\t';\r\n                            break;\r\n                        case $ord_var_c == 0x0A:\r\n                            $ascii .= '\\n';\r\n                            break;\r\n                        case $ord_var_c == 0x0C:\r\n                            $ascii .= '\\f';\r\n                            break;\r\n                        case $ord_var_c == 0x0D:\r\n                            $ascii .= '\\r';\r\n                            break;\r\n\r\n                        case $ord_var_c == 0x22:\r\n                        case $ord_var_c == 0x2F:\r\n                        case $ord_var_c == 0x5C:\r\n                            // double quote, slash, slosh\r\n                            $ascii .= '\\\\'.$var{$c};\r\n                            break;\r\n\r\n                        case (($ord_var_c >= 0x20) && ($ord_var_c <= 0x7F)):\r\n                            // characters U-00000000 - U-0000007F (same as ASCII)\r\n                            $ascii .= $var{$c};\r\n                            break;\r\n\r\n                        case (($ord_var_c & 0xE0) == 0xC0):\r\n                            // characters U-00000080 - U-000007FF, mask 110XXXXX\r\n                            // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8\r\n                            $char = pack('C*', $ord_var_c, ord($var{$c + 1}));\r\n                            $c += 1;\r\n                            $utf16 = $this->utf82utf16($char);\r\n                            $ascii .= sprintf('\\u%04s', bin2hex($utf16));\r\n                            break;\r\n\r\n                        case (($ord_var_c & 0xF0) == 0xE0):\r\n                            // characters U-00000800 - U-0000FFFF, mask 1110XXXX\r\n                            // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8\r\n                            $char = pack('C*', $ord_var_c,\r\n                                         ord($var{$c + 1}),\r\n                                         ord($var{$c + 2}));\r\n                            $c += 2;\r\n                            $utf16 = $this->utf82utf16($char);\r\n                            $ascii .= sprintf('\\u%04s', bin2hex($utf16));\r\n                            break;\r\n\r\n                        case (($ord_var_c & 0xF8) == 0xF0):\r\n                            // characters U-00010000 - U-001FFFFF, mask 11110XXX\r\n                            // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8\r\n                            $char = pack('C*', $ord_var_c,\r\n                                         ord($var{$c + 1}),\r\n                                         ord($var{$c + 2}),\r\n                                         ord($var{$c + 3}));\r\n                            $c += 3;\r\n                            $utf16 = $this->utf82utf16($char);\r\n                            $ascii .= sprintf('\\u%04s', bin2hex($utf16));\r\n                            break;\r\n\r\n                        case (($ord_var_c & 0xFC) == 0xF8):\r\n                            // characters U-00200000 - U-03FFFFFF, mask 111110XX\r\n                            // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8\r\n                            $char = pack('C*', $ord_var_c,\r\n                                         ord($var{$c + 1}),\r\n                                         ord($var{$c + 2}),\r\n                                         ord($var{$c + 3}),\r\n                                         ord($var{$c + 4}));\r\n                            $c += 4;\r\n                            $utf16 = $this->utf82utf16($char);\r\n                            $ascii .= sprintf('\\u%04s', bin2hex($utf16));\r\n                            break;\r\n\r\n                        case (($ord_var_c & 0xFE) == 0xFC):\r\n                            // characters U-04000000 - U-7FFFFFFF, mask 1111110X\r\n                            // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8\r\n                            $char = pack('C*', $ord_var_c,\r\n                                         ord($var{$c + 1}),\r\n                                         ord($var{$c + 2}),\r\n                                         ord($var{$c + 3}),\r\n                                         ord($var{$c + 4}),\r\n                                         ord($var{$c + 5}));\r\n                            $c += 5;\r\n                            $utf16 = $this->utf82utf16($char);\r\n                            $ascii .= sprintf('\\u%04s', bin2hex($utf16));\r\n                            break;\r\n                    }\r\n                }\r\n\r\n                return '\"'.$ascii.'\"';\r\n\r\n            case 'array':\r\n               /*\r\n                * As per JSON spec if any array key is not an integer\r\n                * we must treat the the whole array as an object. We\r\n                * also try to catch a sparsely populated associative\r\n                * array with numeric keys here because some JS engines\r\n                * will create an array with empty indexes up to\r\n                * max_index which can cause memory issues and because\r\n                * the keys, which may be relevant, will be remapped\r\n                * otherwise.\r\n                *\r\n                * As per the ECMA and JSON specification an object may\r\n                * have any string as a property. Unfortunately due to\r\n                * a hole in the ECMA specification if the key is a\r\n                * ECMA reserved word or starts with a digit the\r\n                * parameter is only accessible using ECMAScript's\r\n                * bracket notation.\r\n                */\r\n\r\n                // treat as a JSON object\r\n                if (is_array($var) && count($var) && (array_keys($var) !== range(0, sizeof($var) - 1))) {\r\n                    $properties = array_map(array($this, 'name_value'),\r\n                                            array_keys($var),\r\n                                            array_values($var));\r\n\r\n                    foreach($properties as $property) {\r\n                        if(Services_JSON::isError($property)) {\r\n                            return $property;\r\n                        }\r\n                    }\r\n\r\n                    return '{' . join(',', $properties) . '}';\r\n                }\r\n\r\n                // treat it like a regular array\r\n                $elements = array_map(array($this, 'encode'), $var);\r\n\r\n                foreach($elements as $element) {\r\n                    if(Services_JSON::isError($element)) {\r\n                        return $element;\r\n                    }\r\n                }\r\n\r\n                return '[' . join(',', $elements) . ']';\r\n\r\n            case 'object':\r\n                $vars = get_object_vars($var);\r\n\r\n                $properties = array_map(array($this, 'name_value'),\r\n                                        array_keys($vars),\r\n                                        array_values($vars));\r\n\r\n                foreach($properties as $property) {\r\n                    if(Services_JSON::isError($property)) {\r\n                        return $property;\r\n                    }\r\n                }\r\n\r\n                return '{' . join(',', $properties) . '}';\r\n\r\n            default:\r\n                return ($this->use & SERVICES_JSON_SUPPRESS_ERRORS)\r\n                    ? 'null'\r\n                    : new Services_JSON_Error(gettype($var).\" can not be encoded as JSON string\");\r\n        }\r\n    }\r\n\r\n   /**\r\n    * array-walking function for use in generating JSON-formatted name-value pairs\r\n    *\r\n    * @param    string  $name   name of key to use\r\n    * @param    mixed   $value  reference to an array element to be encoded\r\n    *\r\n    * @return   string  JSON-formatted name-value pair, like '\"name\":value'\r\n    * @access   private\r\n    */\r\n    function name_value($name, $value)\r\n    {\r\n        $encoded_value = $this->encode($value);\r\n\r\n        if(Services_JSON::isError($encoded_value)) {\r\n            return $encoded_value;\r\n        }\r\n\r\n        return $this->encode(strval($name)) . ':' . $encoded_value;\r\n    }\r\n\r\n   /**\r\n    * reduce a string by removing leading and trailing comments and whitespace\r\n    *\r\n    * @param    $str    string      string value to strip of comments and whitespace\r\n    *\r\n    * @return   string  string value stripped of comments and whitespace\r\n    * @access   private\r\n    */\r\n    function reduce_string($str)\r\n    {\r\n        $str = preg_replace(array(\r\n\r\n                // eliminate single line comments in '// ...' form\r\n                '#^\\s*//(.+)$#m',\r\n\r\n                // eliminate multi-line comments in '/* ... */' form, at start of string\r\n                '#^\\s*/\\*(.+)\\*/#Us',\r\n\r\n                // eliminate multi-line comments in '/* ... */' form, at end of string\r\n                '#/\\*(.+)\\*/\\s*$#Us'\r\n\r\n            ), '', $str);\r\n\r\n        // eliminate extraneous space\r\n        return trim($str);\r\n    }\r\n\r\n   /**\r\n    * decodes a JSON string into appropriate variable\r\n    *\r\n    * @param    string  $str    JSON-formatted string\r\n    *\r\n    * @return   mixed   number, boolean, string, array, or object\r\n    *                   corresponding to given JSON input string.\r\n    *                   See argument 1 to Services_JSON() above for object-output behavior.\r\n    *                   Note that decode() always returns strings\r\n    *                   in ASCII or UTF-8 format!\r\n    * @access   public\r\n    */\r\n    function decode($str)\r\n    {\r\n        $str = $this->reduce_string($str);\r\n\r\n        switch (strtolower($str)) {\r\n            case 'true':\r\n                return true;\r\n\r\n            case 'false':\r\n                return false;\r\n\r\n            case 'null':\r\n                return null;\r\n\r\n            default:\r\n                $m = array();\r\n\r\n                if (is_numeric($str)) {\r\n                    // Lookie-loo, it's a number\r\n\r\n                    // This would work on its own, but I'm trying to be\r\n                    // good about returning integers where appropriate:\r\n                    // return (float)$str;\r\n\r\n                    // Return float or int, as appropriate\r\n                    return ((float)$str == (integer)$str)\r\n                        ? (integer)$str\r\n                        : (float)$str;\r\n\r\n                } elseif (preg_match('/^(\"|\\').*(\\1)$/s', $str, $m) && $m[1] == $m[2]) {\r\n                    // STRINGS RETURNED IN UTF-8 FORMAT\r\n                    $delim = substr($str, 0, 1);\r\n                    $chrs = substr($str, 1, -1);\r\n                    $utf8 = '';\r\n                    $strlen_chrs = strlen($chrs);\r\n\r\n                    for ($c = 0; $c < $strlen_chrs; ++$c) {\r\n\r\n                        $substr_chrs_c_2 = substr($chrs, $c, 2);\r\n                        $ord_chrs_c = ord($chrs{$c});\r\n\r\n                        switch (true) {\r\n                            case $substr_chrs_c_2 == '\\b':\r\n                                $utf8 .= chr(0x08);\r\n                                ++$c;\r\n                                break;\r\n                            case $substr_chrs_c_2 == '\\t':\r\n                                $utf8 .= chr(0x09);\r\n                                ++$c;\r\n                                break;\r\n                            case $substr_chrs_c_2 == '\\n':\r\n                                $utf8 .= chr(0x0A);\r\n                                ++$c;\r\n                                break;\r\n                            case $substr_chrs_c_2 == '\\f':\r\n                                $utf8 .= chr(0x0C);\r\n                                ++$c;\r\n                                break;\r\n                            case $substr_chrs_c_2 == '\\r':\r\n                                $utf8 .= chr(0x0D);\r\n                                ++$c;\r\n                                break;\r\n\r\n                            case $substr_chrs_c_2 == '\\\\\"':\r\n                            case $substr_chrs_c_2 == '\\\\\\'':\r\n                            case $substr_chrs_c_2 == '\\\\\\\\':\r\n                            case $substr_chrs_c_2 == '\\\\/':\r\n                                if (($delim == '\"' && $substr_chrs_c_2 != '\\\\\\'') ||\r\n                                   ($delim == \"'\" && $substr_chrs_c_2 != '\\\\\"')) {\r\n                                    $utf8 .= $chrs{++$c};\r\n                                }\r\n                                break;\r\n\r\n                            case preg_match('/\\\\\\u[0-9A-F]{4}/i', substr($chrs, $c, 6)):\r\n                                // single, escaped unicode character\r\n                                $utf16 = chr(hexdec(substr($chrs, ($c + 2), 2)))\r\n                                       . chr(hexdec(substr($chrs, ($c + 4), 2)));\r\n                                $utf8 .= $this->utf162utf8($utf16);\r\n                                $c += 5;\r\n                                break;\r\n\r\n                            case ($ord_chrs_c >= 0x20) && ($ord_chrs_c <= 0x7F):\r\n                                $utf8 .= $chrs{$c};\r\n                                break;\r\n\r\n                            case ($ord_chrs_c & 0xE0) == 0xC0:\r\n                                // characters U-00000080 - U-000007FF, mask 110XXXXX\r\n                                //see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8\r\n                                $utf8 .= substr($chrs, $c, 2);\r\n                                ++$c;\r\n                                break;\r\n\r\n                            case ($ord_chrs_c & 0xF0) == 0xE0:\r\n                                // characters U-00000800 - U-0000FFFF, mask 1110XXXX\r\n                                // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8\r\n                                $utf8 .= substr($chrs, $c, 3);\r\n                                $c += 2;\r\n                                break;\r\n\r\n                            case ($ord_chrs_c & 0xF8) == 0xF0:\r\n                                // characters U-00010000 - U-001FFFFF, mask 11110XXX\r\n                                // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8\r\n                                $utf8 .= substr($chrs, $c, 4);\r\n                                $c += 3;\r\n                                break;\r\n\r\n                            case ($ord_chrs_c & 0xFC) == 0xF8:\r\n                                // characters U-00200000 - U-03FFFFFF, mask 111110XX\r\n                                // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8\r\n                                $utf8 .= substr($chrs, $c, 5);\r\n                                $c += 4;\r\n                                break;\r\n\r\n                            case ($ord_chrs_c & 0xFE) == 0xFC:\r\n                                // characters U-04000000 - U-7FFFFFFF, mask 1111110X\r\n                                // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8\r\n                                $utf8 .= substr($chrs, $c, 6);\r\n                                $c += 5;\r\n                                break;\r\n\r\n                        }\r\n\r\n                    }\r\n\r\n                    return $utf8;\r\n\r\n                } elseif (preg_match('/^\\[.*\\]$/s', $str) || preg_match('/^\\{.*\\}$/s', $str)) {\r\n                    // array, or object notation\r\n\r\n                    if ($str{0} == '[') {\r\n                        $stk = array(SERVICES_JSON_IN_ARR);\r\n                        $arr = array();\r\n                    } else {\r\n                        if ($this->use & SERVICES_JSON_LOOSE_TYPE) {\r\n                            $stk = array(SERVICES_JSON_IN_OBJ);\r\n                            $obj = array();\r\n                        } else {\r\n                            $stk = array(SERVICES_JSON_IN_OBJ);\r\n                            $obj = new stdClass();\r\n                        }\r\n                    }\r\n\r\n                    array_push($stk, array('what'  => SERVICES_JSON_SLICE,\r\n                                           'where' => 0,\r\n                                           'delim' => false));\r\n\r\n                    $chrs = substr($str, 1, -1);\r\n                    $chrs = $this->reduce_string($chrs);\r\n\r\n                    if ($chrs == '') {\r\n                        if (reset($stk) == SERVICES_JSON_IN_ARR) {\r\n                            return $arr;\r\n\r\n                        } else {\r\n                            return $obj;\r\n\r\n                        }\r\n                    }\r\n\r\n                    //print(\"\\nparsing {$chrs}\\n\");\r\n\r\n                    $strlen_chrs = strlen($chrs);\r\n\r\n                    for ($c = 0; $c <= $strlen_chrs; ++$c) {\r\n\r\n                        $top = end($stk);\r\n                        $substr_chrs_c_2 = substr($chrs, $c, 2);\r\n\r\n                        if (($c == $strlen_chrs) || (($chrs{$c} == ',') && ($top['what'] == SERVICES_JSON_SLICE))) {\r\n                            // found a comma that is not inside a string, array, etc.,\r\n                            // OR we've reached the end of the character list\r\n                            $slice = substr($chrs, $top['where'], ($c - $top['where']));\r\n                            array_push($stk, array('what' => SERVICES_JSON_SLICE, 'where' => ($c + 1), 'delim' => false));\r\n                            //print(\"Found split at {$c}: \".substr($chrs, $top['where'], (1 + $c - $top['where'])).\"\\n\");\r\n\r\n                            if (reset($stk) == SERVICES_JSON_IN_ARR) {\r\n                                // we are in an array, so just push an element onto the stack\r\n                                array_push($arr, $this->decode($slice));\r\n\r\n                            } elseif (reset($stk) == SERVICES_JSON_IN_OBJ) {\r\n                                // we are in an object, so figure\r\n                                // out the property name and set an\r\n                                // element in an associative array,\r\n                                // for now\r\n                                $parts = array();\r\n\r\n                                if (preg_match('/^\\s*([\"\\'].*[^\\\\\\][\"\\'])\\s*:\\s*(\\S.*),?$/Uis', $slice, $parts)) {\r\n                                    // \"name\":value pair\r\n                                    $key = $this->decode($parts[1]);\r\n                                    $val = $this->decode($parts[2]);\r\n\r\n                                    if ($this->use & SERVICES_JSON_LOOSE_TYPE) {\r\n                                        $obj[$key] = $val;\r\n                                    } else {\r\n                                        $obj->$key = $val;\r\n                                    }\r\n                                } elseif (preg_match('/^\\s*(\\w+)\\s*:\\s*(\\S.*),?$/Uis', $slice, $parts)) {\r\n                                    // name:value pair, where name is unquoted\r\n                                    $key = $parts[1];\r\n                                    $val = $this->decode($parts[2]);\r\n\r\n                                    if ($this->use & SERVICES_JSON_LOOSE_TYPE) {\r\n                                        $obj[$key] = $val;\r\n                                    } else {\r\n                                        $obj->$key = $val;\r\n                                    }\r\n                                }\r\n\r\n                            }\r\n\r\n                        } elseif ((($chrs{$c} == '\"') || ($chrs{$c} == \"'\")) && ($top['what'] != SERVICES_JSON_IN_STR)) {\r\n                            // found a quote, and we are not inside a string\r\n                            array_push($stk, array('what' => SERVICES_JSON_IN_STR, 'where' => $c, 'delim' => $chrs{$c}));\r\n                            //print(\"Found start of string at {$c}\\n\");\r\n\r\n                        } elseif (($chrs{$c} == $top['delim']) &&\r\n                                 ($top['what'] == SERVICES_JSON_IN_STR) &&\r\n                                 ((strlen(substr($chrs, 0, $c)) - strlen(rtrim(substr($chrs, 0, $c), '\\\\'))) % 2 != 1)) {\r\n                            // found a quote, we're in a string, and it's not escaped\r\n                            // we know that it's not escaped becase there is _not_ an\r\n                            // odd number of backslashes at the end of the string so far\r\n                            array_pop($stk);\r\n                            //print(\"Found end of string at {$c}: \".substr($chrs, $top['where'], (1 + 1 + $c - $top['where'])).\"\\n\");\r\n\r\n                        } elseif (($chrs{$c} == '[') &&\r\n                                 in_array($top['what'], array(SERVICES_JSON_SLICE, SERVICES_JSON_IN_ARR, SERVICES_JSON_IN_OBJ))) {\r\n                            // found a left-bracket, and we are in an array, object, or slice\r\n                            array_push($stk, array('what' => SERVICES_JSON_IN_ARR, 'where' => $c, 'delim' => false));\r\n                            //print(\"Found start of array at {$c}\\n\");\r\n\r\n                        } elseif (($chrs{$c} == ']') && ($top['what'] == SERVICES_JSON_IN_ARR)) {\r\n                            // found a right-bracket, and we're in an array\r\n                            array_pop($stk);\r\n                            //print(\"Found end of array at {$c}: \".substr($chrs, $top['where'], (1 + $c - $top['where'])).\"\\n\");\r\n\r\n                        } elseif (($chrs{$c} == '{') &&\r\n                                 in_array($top['what'], array(SERVICES_JSON_SLICE, SERVICES_JSON_IN_ARR, SERVICES_JSON_IN_OBJ))) {\r\n                            // found a left-brace, and we are in an array, object, or slice\r\n                            array_push($stk, array('what' => SERVICES_JSON_IN_OBJ, 'where' => $c, 'delim' => false));\r\n                            //print(\"Found start of object at {$c}\\n\");\r\n\r\n                        } elseif (($chrs{$c} == '}') && ($top['what'] == SERVICES_JSON_IN_OBJ)) {\r\n                            // found a right-brace, and we're in an object\r\n                            array_pop($stk);\r\n                            //print(\"Found end of object at {$c}: \".substr($chrs, $top['where'], (1 + $c - $top['where'])).\"\\n\");\r\n\r\n                        } elseif (($substr_chrs_c_2 == '/*') &&\r\n                                 in_array($top['what'], array(SERVICES_JSON_SLICE, SERVICES_JSON_IN_ARR, SERVICES_JSON_IN_OBJ))) {\r\n                            // found a comment start, and we are in an array, object, or slice\r\n                            array_push($stk, array('what' => SERVICES_JSON_IN_CMT, 'where' => $c, 'delim' => false));\r\n                            $c++;\r\n                            //print(\"Found start of comment at {$c}\\n\");\r\n\r\n                        } elseif (($substr_chrs_c_2 == '*/') && ($top['what'] == SERVICES_JSON_IN_CMT)) {\r\n                            // found a comment end, and we're in one now\r\n                            array_pop($stk);\r\n                            $c++;\r\n\r\n                            for ($i = $top['where']; $i <= $c; ++$i)\r\n                                $chrs = substr_replace($chrs, ' ', $i, 1);\r\n\r\n                            //print(\"Found end of comment at {$c}: \".substr($chrs, $top['where'], (1 + $c - $top['where'])).\"\\n\");\r\n\r\n                        }\r\n\r\n                    }\r\n\r\n                    if (reset($stk) == SERVICES_JSON_IN_ARR) {\r\n                        return $arr;\r\n\r\n                    } elseif (reset($stk) == SERVICES_JSON_IN_OBJ) {\r\n                        return $obj;\r\n\r\n                    }\r\n\r\n                }\r\n        }\r\n    }\r\n\r\n    /**\r\n     * @todo Ultimately, this should just call PEAR::isError()\r\n     */\r\n    function isError($data, $code = null)\r\n    {\r\n        if (class_exists('pear')) {\r\n            return PEAR::isError($data, $code);\r\n        } elseif (is_object($data) && (get_class($data) == 'services_json_error' ||\r\n                                 is_subclass_of($data, 'services_json_error'))) {\r\n            return true;\r\n        }\r\n\r\n        return false;\r\n    }\r\n}\r\n\r\nif (class_exists('PEAR_Error')) {\r\n\r\n    class Services_JSON_Error extends PEAR_Error\r\n    {\r\n        function Services_JSON_Error($message = 'unknown error', $code = null,\r\n                                     $mode = null, $options = null, $userinfo = null)\r\n        {\r\n            parent::PEAR_Error($message, $code, $mode, $options, $userinfo);\r\n        }\r\n    }\r\n\r\n} else {\r\n\r\n    /**\r\n     * @todo Ultimately, this class shall be descended from PEAR_Error\r\n     */\r\n    class Services_JSON_Error\r\n    {\r\n        function Services_JSON_Error($message = 'unknown error', $code = null,\r\n                                     $mode = null, $options = null, $userinfo = null)\r\n        {\r\n\r\n        }\r\n    }\r\n\r\n}\r\n\r\n?>\r\n"
  },
  {
    "path": "newscoop/admin-files/articles/add.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/article_common.php\");\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/editor_load_countable.php\");\nrequire_once($GLOBALS['g_campsiteDir']. \"/classes/ArticleType.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nglobal $Campsite;\n\nif (!$g_user->hasPermission('AddArticle')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to add articles.\"));\n\texit;\n}\n\n// Only for use when in the article screens.\n$f_publication_id = Input::Get('f_publication_id', 'int', 0, true);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0, true);\n$f_section_number = Input::Get('f_section_number', 'int', 0, true);\n$f_language_id = Input::Get('f_language_id', 'int', 0, true);\n\n// The article location dropdowns cause this page to reload,\n// so we need to preserve the state with each refresh.\n$f_article_name = Input::Get('f_article_name', 'string', '', true);\n$f_article_type = Input::Get('f_article_type', 'string', '', true);\n$f_article_language = Input::Get('f_article_language', 'int', $f_language_id, true);\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $_SERVER['REQUEST_URI']);\n\texit;\n}\n\n// Only for the article screens.\n$publicationObj = null;\n$issueObj = null;\n$sectionObj = null;\nif ($f_publication_id > 0) {\n\t$publicationObj = new Publication($f_publication_id);\n\tif (($f_issue_number > 0) && ($f_article_language > 0)) {\n\t\t$issueObj = new Issue($f_publication_id, $f_article_language, $f_issue_number);\n\t\tif ($f_section_number > 0) {\n\t\t\t$sectionObj = new Section($f_publication_id, $f_issue_number, $f_article_language, $f_section_number);\n\t\t}\n\t}\n}\n\n// Only show the languages for sections which have been translated.\n$sections = Section::GetSections($f_publication_id, $f_issue_number, null, null, null, null, true);\n$languageIds = DbObjectArray::GetColumn($sections, 'IdLanguage');\n$allLanguages = array();\nforeach ($languageIds as $languageId) {\n\tif (!isset($allLanguages[$languageId])) {\n\t\t$allLanguages[$languageId] = new Language($languageId);\n\t}\n}\n$allArticleTypes = ArticleType::GetArticleTypes();\n\n$topArray = array('Pub' => $publicationObj, 'Issue' => $issueObj,\n\t\t\t\t  'Section' => $sectionObj);\ncamp_html_content_top($translator->trans('Add new article'), $topArray, true, false, array($translator->trans(\"Articles\") => \"/$ADMIN/articles/?f_publication_id=$f_publication_id&f_issue_number=$f_issue_number&f_section_number=$f_section_number&f_language_id=$f_language_id\"));\n$controller->view->headTitle($translator->trans('Add new article').' - Newscoop Admin', 'SET');\n?>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\" class=\"action_buttons\" style=\"padding-top: 5px;\">\n<TR>\n\t<TD><A HREF=\"<?php echo \"/$ADMIN/articles/?f_publication_id=$f_publication_id&f_issue_number=$f_issue_number&f_section_number=$f_section_number&f_language_id=$f_language_id\"; ?>\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/left_arrow.png\" BORDER=\"0\"></A></TD>\n\t<TD><A HREF=\"<?php echo \"/$ADMIN/articles/?f_publication_id=$f_publication_id&f_issue_number=$f_issue_number&f_section_number=$f_section_number&f_language_id=$f_language_id\"; ?>\"><B><?php echo $translator->trans(\"Article List\", array(), 'articles'); ?></B></A></TD>\n</TR>\n</TABLE>\n\n<?php\nif (sizeof($allArticleTypes) == 0) {\n?>\n<p>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"box_table\">\n<tr>\n\t<td align=\"center\" class=\"error_message\">\n\t<?php echo $translator->trans(\"No article types were defined. You must create an article type first.\", array(), 'articles'); ?>\n\t<p><b><a href=\"/<?php echo $ADMIN; ?>/article_types/\"><?php echo $translator->trans(\"Edit article types\", array(), 'articles'); ?></a></b></p>\n\t</td>\n</tr>\n</table>\n<?php\n} else {\n\tinclude_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/javascript_common.php\");\n\tcamp_html_display_msgs();\n?>\n<P>\n<FORM NAME=\"add_article\" METHOD=\"GET\" ACTION=\"/<?php echo $ADMIN; ?>/articles/do_add.php\" onsubmit=\"return <?php camp_html_fvalidate(); ?>;\">\n<?php echo SecurityToken::FormParameter(); ?>\n<?php if ($f_publication_id > 0) { ?>\n<INPUT TYPE=\"HIDDEN\" NAME=\"f_publication_id\" VALUE=\"<?php p($f_publication_id); ?>\">\n<?php } ?>\n<?php if ($f_issue_number > 0) { ?>\n<INPUT TYPE=\"HIDDEN\" NAME=\"f_issue_number\" VALUE=\"<?php p($f_issue_number); ?>\">\n<?php } ?>\n<?php if ($f_section_number > 0) { ?>\n<INPUT TYPE=\"HIDDEN\" NAME=\"f_section_number\" VALUE=\"<?php p($f_section_number); ?>\">\n<?php } ?>\n<?php if ($f_language_id > 0) { ?>\n<INPUT TYPE=\"HIDDEN\" NAME=\"f_language_id\" VALUE=\"<?php  p($f_language_id); ?>\">\n<?php } ?>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" class=\"box_table\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B><?php echo $translator->trans(\"Add new article\"); ?></B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<td valign=\"top\">\n\t\t<table>\n\t\t<tr>\n\t\t\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Name\"); ?>:</TD>\n\t\t\t<TD>\n\t\t\t<INPUT TYPE=\"TEXT\" NAME=\"f_article_name\" SIZE=\"40\" MAXLENGTH=\"140\" class=\"input_text countable\" alt=\"blank\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => $translator->trans('Name'))); ?>\" value=\"<?php echo htmlspecialchars($f_article_name); ?>\">\n\t\t\t</TD>\n\t\t</TR>\n\t\t<TR>\n\t\t\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Type\"); ?>:</TD>\n\t\t\t<TD>\n\t\t\t    <?php if (count($allArticleTypes) == 1) { ?>\n\t\t\t        <INPUT TYPE=\"HIDDEN\" NAME=\"f_article_type\" VALUE=\"<?php echo $allArticleTypes[0]; ?>\">\n                    <?php\n                        $tmpAT = new ArticleType($allArticleTypes[0]);\n                        echo $tmpAT->getDisplayName($f_language_id);\n\t\t\t    } else { ?>\n    \t\t\t\t<SELECT NAME=\"f_article_type\" class=\"input_select\" alt=\"select\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => $translator->trans('Article Type'))); ?>\">\n\t   \t\t      \t<option></option>\n\t\t  \t\t    <?php\n    \t\t\t\tforeach ($allArticleTypes as $tmpType) {\n\t       \t\t\t    $tmpAT = new ArticleType($tmpType);\n\t\t\t     \t    camp_html_select_option($tmpType, $f_article_type, $tmpAT->getDisplayName($f_language_id));\n\t\t\t\t    }\n\t\t\t\t\t?>\n\t\t\t\t    </SELECT>\n               <?php } ?>\n\t\t\t</TD>\n\t\t</TR>\n\t\t<TR>\n\t\t\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Language\"); ?>:</TD>\n\t\t\t<TD style=\"padding-top: 3px;\">\n\t\t\t\t<?php if (count($allLanguages) > 1) { ?>\n\t\t\t\t<SELECT NAME=\"f_article_language\" alt=\"select\" emsg=\"<?php echo $translator->trans(\"You must select a language.\");?>\" class=\"input_select\">\n\t\t\t\t<option value=\"0\"><?php echo $translator->trans(\"---Select language---\"); ?></option>\n\t\t\t\t<?php\n\t\t\t \tforeach ($allLanguages as $tmpLanguage) {\n\t\t\t \t\tcamp_html_select_option($tmpLanguage->getLanguageId(),\n\t\t\t \t\t\t\t\t\t\t\t$f_article_language,\n\t\t\t \t\t\t\t\t\t\t\t$tmpLanguage->getNativeName());\n\t\t        }\n\t\t\t\t?>\n\t\t\t\t</SELECT>\n\t\t\t\t<?php } else {\n\t\t\t\t\t$tmpLanguage = array_pop($allLanguages);\n\t\t\t\t\techo '<b>'.htmlspecialchars($tmpLanguage->getNativeName()).'</b>';\n\t\t\t\t\t?>\n\t\t\t\t\t<input type=\"hidden\" name=\"f_article_language\" value=\"<?php p($tmpLanguage->getLanguageId()); ?>\">\n\t\t\t\t\t<?php\n\t\t\t\t}\n\t\t\t\t?>\n\n\t\t\t</TD>\n\t\t</TR>\n\t\t</table>\n\t</td>\n</tr>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\">\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t\t<INPUT TYPE=\"submit\" NAME=\"save\" VALUE=\"<?php  echo $translator->trans('Save'); ?>\" class=\"button\">\n\t</TD>\n</TR>\n</TABLE>\n</FORM>\n<P>\n<script>\ndocument.add_article.f_article_name.focus();\n</script>\n<?php } ?>\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/add_move.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/article_common.php\");\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/editor_load_countable.php\");\nrequire_once($GLOBALS['g_campsiteDir']. \"/classes/ArticleType.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$publications = Publication::GetPublications();\n\nglobal $Campsite;\n\nif (!$g_user->hasPermission('AddArticle')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to add articles.\"));\n\texit;\n}\n\n// The article location dropdowns cause this page to reload,\n// so we need to preserve the state with each refresh.\n$f_article_name = Input::Get('f_article_name', 'string', '', true);\n$f_article_type = Input::Get('f_article_type', 'string', '', true);\n$f_article_language = Input::Get('f_article_language', 'int', 0, true);\n\n// For choosing the article location.\n$f_destination_publication_id = Input::Get('f_destination_publication_id', 'int', 0, true);\n$f_destination_issue_number = Input::Get('f_destination_issue_number', 'int', 0, true);\n$f_destination_section_number = Input::Get('f_destination_section_number', 'int', 0, true);\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $_SERVER['REQUEST_URI']);\n\texit;\n}\n\nif ($f_article_language <= 0) {\n\t$f_destination_publication_id = 0;\n\t$f_destination_issue_number = 0;\n\t$f_destination_section_number = 0;\n}\n\nif (count($publications) == 1) {\n    $singlePublication = camp_array_peek($publications);\n    $f_destination_publication_id = $singlePublication->getPublicationId();\n}\n\n$allIssues = array();\nif ($f_destination_publication_id > 0) {\n\t$allIssues = Issue::GetIssues($f_destination_publication_id,\n\t\t\t\t\t\t\t\t  $f_article_language, null, null, null, false,\n\t\t\t\t\t\t\t\t  array(\"ORDER BY\" => array(\"Number\" => \"DESC\")), true);\n    if (count($allIssues) == 1) {\n        $singleIssue = camp_array_peek($allIssues);\n        $f_destination_issue_number = $singleIssue->getIssueNumber();\n        $f_article_language = $singleIssue->getLanguageId();\n    }\n}\n\n$allSections = array();\nif ($f_destination_issue_number > 0) {\n\t$selectedIssue = new Issue($f_destination_publication_id, $f_article_language, $f_destination_issue_number);\n\t$allSections = Section::GetSections($f_destination_publication_id, $f_destination_issue_number, $f_article_language, null, null, array(\"ORDER BY\" => array(\"Name\" => \"ASC\")), true);\n\tif (count($allSections) == 1) {\n\t    $singleSection = camp_array_peek($allSections);\n\t    $f_destination_section_number = $singleSection->getSectionNumber();\n\t}\n}\n\n$allArticleTypes = ArticleType::GetArticleTypes();\n$allLanguages = Language::GetLanguages(null, null, null, array(), array(), true);\n\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Actions\"), \"\");\n$crumbs[] = array($translator->trans(\"Add new article\"), \"\");\necho camp_html_breadcrumbs($crumbs);\n\n$controller->view->headTitle($translator->trans('Add new article').' - Newscoop Admin', 'SET');\n\n?>\n\n<?php\nif (sizeof($allArticleTypes) == 0) {\n?>\n<p>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"box_table\">\n<tr>\n\t<td align=\"center\">\n\t<font color=\"red\">\n\t<?php echo $translator->trans(\"No article types were defined. You must create an article type first.\", array(), 'articles'); ?>\n\t</font>\n\t<p><b><a href=\"/<?php echo $ADMIN; ?>/article_types/\"><?php echo $translator->trans(\"Edit article types\", array(), 'articles'); ?></a></b></p>\n\t</td>\n</tr>\n</table>\n<?php\n} else {\n\tinclude_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/javascript_common.php\");\n\tcamp_html_display_msgs();\n?>\n<P>\n<FORM NAME=\"add_article\" METHOD=\"GET\" ACTION=\"\" onsubmit=\"return <?php camp_html_fvalidate(); ?>;\">\n<?php echo SecurityToken::FormParameter(); ?>\n\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" class=\"box_table\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B><?php  echo $translator->trans(\"Add new article\"); ?></B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<td valign=\"top\">\n\t\t<table>\n\t\t<tr>\n\t\t\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Title\", array(), 'api'); ?>:</TD>\n\t\t\t<TD>\n\t\t\t<INPUT TYPE=\"TEXT\" NAME=\"f_article_name\" SIZE=\"40\" MAXLENGTH=\"140\" class=\"input_text countable\" alt=\"blank\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => $translator->trans('Title', array(), 'api'))); ?>\" value=\"<?php echo htmlspecialchars($f_article_name); ?>\">\n\t\t\t</TD>\n\t\t</TR>\n\t\t<TR>\n\t\t\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Type\"); ?>:</TD>\n\t\t\t<TD>\n\t\t\t    <?php if (count($allArticleTypes) == 1) { ?>\n\t\t\t        <INPUT TYPE=\"HIDDEN\" NAME=\"f_article_type\" VALUE=\"<?php echo $allArticleTypes[0]; ?>\">\n                    <?php\n                        $tmpAT = new ArticleType($allArticleTypes[0]);\n                        echo $tmpAT->getDisplayName($f_article_language);\n\t\t\t    } else { ?>\n    \t\t\t\t<SELECT NAME=\"f_article_type\" class=\"input_select\" alt=\"select\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => $translator->trans('Article Type', array(), 'articles'))); ?>\">\n\t   \t\t      \t<option></option>\n\t\t  \t\t    <?php\n    \t\t\t\tforeach ($allArticleTypes as $tmpType) {\n\t       \t\t\t    $tmpAT = new ArticleType($tmpType);\n\t\t\t     \t    camp_html_select_option($tmpType, $f_article_type, $tmpAT->getDisplayName($f_article_language));\n\t\t\t\t    }\n\t\t\t\t\t?>\n\t\t\t\t    </SELECT>\n               <?php } ?>\n\t\t\t</TD>\n\t\t</TR>\n\t\t<TR>\n\t\t\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Language\"); ?>:</TD>\n\t\t\t<TD>\n\t\t\t\t<script>\n\t\t\t\tfunction on_language_select(p_select)\n\t\t\t\t{\n\t\t\t\t\tp_select.form.submit();\n\t\t\t\t}\n\t\t\t\t</script>\n\t\t\t\t<SELECT NAME=\"f_article_language\" alt=\"select\" emsg=\"<?php echo $translator->trans(\"You must select a language.\");?>\" class=\"input_select\" onchange=\"on_language_select(this);\">\n\t\t\t\t<option value=\"0\"><?php echo $translator->trans(\"---Select language---\"); ?></option>\n\t\t\t\t<?php\n\t\t\t \tforeach ($allLanguages as $tmpLanguage) {\n\t\t\t \t\tcamp_html_select_option($tmpLanguage->getLanguageId(),\n\t\t\t \t\t\t\t\t\t\t\t$f_article_language,\n\t\t\t \t\t\t\t\t\t\t\t$tmpLanguage->getNativeName());\n\t\t        }\n\t\t\t\t?>\n\t\t\t\t</SELECT>\n\t\t\t</TD>\n\t\t</TR>\n\t\t</table>\n\t</td>\n\n\t<?php if ($g_user->hasPermission(\"MoveArticle\")) { ?>\n\t<td style=\"border-left: 1px solid black;\">\n\t\t<TABLE>\n\t\t<TR>\n\t\t\t<td colspan=\"2\" style=\"padding-left: 20px; padding-bottom: 5px;font-size: 10pt; font-weight: bold;\"><?php  echo $translator->trans(\"Select section:\", array(), 'articles'); ?> <?php echo $translator->trans(\"(optional)\"); ?></TD>\n\t\t</TR>\n\t\t<TR>\n\t\t\t<TD VALIGN=\"middle\" ALIGN=\"RIGHT\" style=\"padding-left: 20px;\"><?php  echo $translator->trans('Publication'); ?>: </TD>\n\t\t\t<TD valign=\"middle\" ALIGN=\"LEFT\">\n\t\t\t\t<?php if ( count($publications) == 0) { ?>\n\t\t\t\t\t<SELECT class=\"input_select\" DISABLED><OPTION><?php  echo $translator->trans('No publications'); ?></option></SELECT>\n\t\t\t\t<?php } elseif (count($publications) == 1) {\n\t\t\t\t    echo htmlspecialchars($singlePublication->getName());\n\t\t\t\t    ?>\n\t\t\t\t    <input type=\"hidden\" name=\"f_destination_publication_id\" value=\"<?php p($singlePublication->getPublicationId()); ?>\">\n\t\t\t\t    <?php\n\t\t\t\t} else { ?>\n    \t\t\t\t<SELECT NAME=\"f_destination_publication_id\" class=\"input_select\" ONCHANGE=\"if (this.options[this.selectedIndex].value != <?php p($f_destination_publication_id); ?>) {this.form.submit();}\" <?php if ($f_article_language == 0) { echo \"disabled\"; } ?>>\n    \t\t\t\t<OPTION VALUE=\"0\"><?php  echo $translator->trans('---Select publication---'); ?></option>\n    \t\t\t\t<?php\n    \t\t\t\tforeach ($publications as $tmpPublication) {\n    \t\t\t\t\tcamp_html_select_option($tmpPublication->getPublicationId(), $f_destination_publication_id, $tmpPublication->getName());\n    \t\t\t\t}\n    \t\t\t\t?>\n    \t\t\t\t</SELECT>\n    \t\t\t\t<?php\n\t\t\t\t}\n\t\t\t\t?>\n\t\t\t</td>\n\t\t</tr>\n\n\t\t<tr>\n\t\t\t<TD VALIGN=\"middle\" ALIGN=\"RIGHT\" style=\"padding-left: 20px;\"><?php  echo $translator->trans('Issue'); ?>: </TD>\n\t\t\t<TD valign=\"middle\" ALIGN=\"LEFT\">\n\t\t\t\t<?php\n\t\t\t\tif (($f_destination_publication_id > 0) && (count($allIssues) > 0)) {\n\t\t\t\t    if (count($allIssues) == 1) {\n\t\t\t\t        echo htmlspecialchars($singleIssue->getName());\n                        ?>\n                        <input type=\"hidden\" name=\"f_destination_issue_number\" value=\"<?php p($singleIssue->getIssueNumber()); ?>\">\n                        <?php\n\t\t\t\t    } else {\n    \t\t\t\t\t?>\n    \t\t\t\t\t<SELECT NAME=\"f_destination_issue_number\" class=\"input_select\" ONCHANGE=\"if (this.options[this.selectedIndex].value != <?php p($f_destination_issue_number); ?>) { this.form.submit(); }\">\n    \t\t\t\t\t<OPTION VALUE=\"0\"><?php  echo $translator->trans('---Select issue---'); ?></option>\n    \t\t\t\t\t<?php\n    \t\t\t\t\tforeach ($allIssues as $tmpIssue) {\n    \t\t\t\t\t\tcamp_html_select_option($tmpIssue->getIssueNumber(), $f_destination_issue_number, $tmpIssue->getName());\n    \t\t\t\t\t}\n    \t\t\t\t\t?>\n    \t\t\t\t\t</SELECT>\n    \t\t\t\t\t<?php\n\t\t\t\t    }\n\t\t\t\t} else {\n\t\t\t\t\techo $translator->trans('No issues');\n\t\t\t\t}\n\t\t\t\t?>\n\t\t\t</td>\n\t\t</tr>\n\n\t\t<tr>\n\t\t\t<TD VALIGN=\"middle\" ALIGN=\"RIGHT\" style=\"padding-left: 20px;\"><?php  echo $translator->trans('Section'); ?>: </TD>\n\t\t\t<TD valign=\"middle\" ALIGN=\"LEFT\">\n\t\t\t\t<?php\n\t\t\t\tif (($f_destination_publication_id > 0)\n\t\t\t\t    && (count($allIssues) > 0)\n\t\t\t\t\t&& ($f_destination_issue_number > 0)\n\t\t\t\t\t&& (count($allSections) > 0)) {\n\n\t\t\t\t\tif (count($allSections) == 1) {\n\t\t\t\t\t    echo htmlspecialchars($singleSection->getName());\n\t\t\t\t\t    ?>\n\t\t\t\t\t    <input type=\"hidden\" name=\"f_destination_section_number\" value=\"<?php p($singleSection->getSectionNumber()); ?>\">\n\t\t\t\t\t    <?php\n\t\t\t\t\t} else {\n\t\t\t\t      ?>\n\n        \t\t\t\t<SELECT NAME=\"f_destination_section_number\" class=\"input_select\">\n        \t\t\t\t<OPTION VALUE=\"0\"><?php  echo $translator->trans('---Select section---'); ?>\n        \t\t\t\t<?php\n        \t\t\t\tforeach ($allSections as $tmpSection) {\n        \t\t\t\t\tcamp_html_select_option($tmpSection->getSectionNumber(), $f_destination_section_number, $tmpSection->getName());\n        \t\t\t\t}\n        \t\t\t\t?>\n        \t\t\t\t</SELECT>\n        \t\t\t\t<?php\n\t   \t\t\t     }\n\t\t\t    } else {\n\t\t\t\t\techo $translator->trans('No sections');\n\t\t\t\t}\n\t\t\t\t?>\n\t\t\t\t</TD>\n\t\t</tr>\n\t\t</TABLE>\n\t</td>\n\t<?php } ?>\n</tr>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\">\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n        <INPUT TYPE=\"submit\" NAME=\"save\" VALUE=\"<?php  echo $translator->trans('Save'); ?>\" class=\"button\" onclick=\"document.forms.add_article.action='do_add.php';\" <?php if (count($allIssues) == 0) { echo 'disabled=\"disabled\"'; } ?>>\n\t</TD>\n</TR>\n</TABLE>\n</FORM>\n<P>\n<script>\ndocument.add_article.f_article_name.focus();\n</script>\n<?php } ?>\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/article_common.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ContextBox.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Section.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Issue.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Publication.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/User.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\n?>"
  },
  {
    "path": "newscoop/admin-files/articles/article_stylesheet.css",
    "content": ".campsite_subhead {\n\tborder: 1px dashed #444444;\n\tpadding: 2px;\n}\n\n.campsite_external_link {\n\ttext-decoration: underline;\n\tcolor: blue;\n}\n\n.swiss-info-free,\n.largebox,\n.smallbox,\n.interview-box,\n.camp-textbox {\n  display: block;\n  border: 1px solid #000;\n  padding: 10px;\n  margin-top: 10px;\n  margin-bottom: 24px;\n  font-size: 15px !important;\n  font-style: normal;\n  font-family: Arial, Helvetica, sans-serif !important;\n  -webkit-box-sizing: border-box;\n  -moz-box-sizing: border-box;\n  box-sizing: border-box;\n}\n\n.camp_snippet {\n  display: block;\n  text-align: center;\n  border: 1px solid #000;\n  padding: 10px;\n  margin-top: 10px;\n  margin-bottom: 24px;\n  font-size: 15px !important;\n  font-style: normal;\n  font-family: Arial, Helvetica, sans-serif !important;\n  -webkit-box-sizing: border-box;\n  -moz-box-sizing: border-box;\n  box-sizing: border-box;\n  opacity: 0.5;\n  background: #CCC;\n}\n\n.interview-box {\n    border-color: #007fb3;\n}\n\n.smallbox {\n  width: 250px;\n  margin-left: 20px;\n  float: right;\n}"
  },
  {
    "path": "newscoop/admin-files/articles/autopublish.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/article_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticlePublish.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!$g_user->hasPermission(\"Publish\")) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to schedule issues or articles for automatic publishing.\"));\n\texit;\n}\n\n$f_publication_id = Input::Get('f_publication_id', 'int', 0, true);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0, true);\n$f_section_number = Input::Get('f_section_number', 'int', 0, true);\n$f_language_id = Input::Get('f_language_id', 'int', 0);\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n$f_article_number = Input::Get('f_article_number', 'int', 0);\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $BackLink);\n\texit;\n}\n\nif ($f_publication_id == 0 || $f_issue_number == 0 || $f_section_number == 0) {\n\tcamp_html_display_error($translator->trans('You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the \"$1\" menu and select \"$2\" to do this.', array('$1' => $translator->trans(\"Actions\").\"...\", '$2' => $translator->trans(\"Move\")), 'articles'), null, true);\n\texit;\n}\n\n$articleObj = new Article($f_language_selected, $f_article_number);\nif (!$articleObj->exists()) {\n\tcamp_html_display_error($translator->trans('Article does not exist.'), null, true);\n\texit;\n}\n\n$BackLink = camp_html_article_url($articleObj, $f_language_id, \"edit.php\");\n\n$publicationObj = new Publication($f_publication_id);\nif (!$publicationObj->exists()) {\n\tcamp_html_display_error($translator->trans('Publication does not exist.'), $BackLink, true);\n\texit;\n}\n\n$issueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\nif (!$issueObj->exists()) {\n\tcamp_html_display_error($translator->trans('Issue does not exist.'), $BackLink);\n\texit;\n}\n\n$sectionObj = new Section($f_publication_id, $f_issue_number, $f_language_id, $f_section_number);\nif (!$sectionObj->exists()) {\n\tcamp_html_display_error($translator->trans('Section does not exist.'), $BackLink, true);\n\texit;\n}\n\n\n$articleEvents = ArticlePublish::GetArticleEvents($f_article_number, $f_language_selected);\n\n$publishTime = date(\"Y-m-d H:i\");\nif ($articleObj->getWorkflowStatus() != 'N') {\n\t$publishAction = '';\n\t$frontPageAction = '';\n\t$sectionPageAction = '';\n\t$datetime = explode(\" \", trim($publishTime));\n\t$publishDate = $datetime[0];\n\t$publishTime = explode(\":\", trim($datetime[1]));\n\t$publishHour = $publishTime[0];\n\t$publishMinute = $publishTime[1];\n?>\n\n<!DOCTYPE html>\n<html>\n<head>\n  <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n  <meta http-equiv=\"Expires\" content=\"now\" />\n  <title><?php echo $translator->trans(\"Attach Topic To Article\", array(), 'articles'); ?></title>\n\n  <?php include dirname(__FILE__) . '/../html_head.php'; ?>\n</head>\n<body>\n\n<FORM NAME=\"autopublish\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/articles/autopublish_do_add.php\" onsubmit=\"return <?php camp_html_fvalidate(); ?>;\">\n<?php echo SecurityToken::FormParameter(); ?>\n<INPUT TYPE=\"HIDDEN\" NAME=\"f_publication_id\" VALUE=\"<?php echo $f_publication_id; ?>\">\n<INPUT TYPE=\"HIDDEN\" NAME=\"f_issue_number\" VALUE=\"<?php echo $f_issue_number; ?>\">\n<INPUT TYPE=\"HIDDEN\" NAME=\"f_section_number\" VALUE=\"<?php echo $f_section_number; ?>\">\n<INPUT TYPE=\"HIDDEN\" NAME=\"f_article_number\" VALUE=\"<?php echo $f_article_number; ?>\">\n<INPUT TYPE=\"hidden\" NAME=\"f_article_code[]\" VALUE=\"<?php echo $f_article_number.'_'.$f_language_selected; ?>\">\n<INPUT TYPE=\"HIDDEN\" NAME=\"f_language_id\" VALUE=\"<?php echo $f_language_id; ?>\">\n<INPUT TYPE=\"HIDDEN\" NAME=\"f_language_selected\" VALUE=\"<?php echo $f_language_selected; ?>\">\n<INPUT type=\"hidden\" name=\"f_backlink\" value=\"<?php echo $BackLink; ?>\">\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" class=\"box_table\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B><?php echo $translator->trans(\"Schedule a new action\"); ?></B>\n            <HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Date\"); ?>:</TD>\n\t<TD>\n\t\t<?php $now = getdate(); ?>\n\t\t<input type=\"text\" name=\"f_publish_date\" value=\"\" class=\"input_text date minDate_0\" size=\"10\" alt=\"date|yyyy/mm/dd|-|4|<?php echo $now[\"year\"].\"/\".$now[\"mon\"].\"/\".$now[\"mday\"]; ?>\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => \"'\".$translator->trans('Date').\"'\")); ?> <?php echo $translator->trans(\"The date must be in the future.\"); ?>\" />\n        <script type=\"text/javascript\">\n        <!--\n        $(document).ready(function() {\n            $('input[name=f_publish_date]').focus();\n        });\n        -->\n        </script>\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Time\"); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" NAME=\"f_publish_hour\" SIZE=\"2\" MAXLENGTH=\"2\" VALUE=\"<?php p($publishHour); ?>\" class=\"input_text\" alt=\"number|0|0|23\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => \"'\".$translator->trans('Time').\"'\")); ?>\"> :\n\t<INPUT TYPE=\"TEXT\" NAME=\"f_publish_minute\" SIZE=\"2\" MAXLENGTH=\"2\" VALUE=\"<?php p($publishMinute); ?>\" class=\"input_text\" alt=\"number|0|0|59\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => \"'\".$translator->trans('Time').\"'\")); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"CENTER\" COLSPAN=\"2\"><b><?php echo $translator->trans(\"Actions\"); ?></b></TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Publish\"); ?>:</TD>\n\t<TD>\n\t<SELECT NAME=\"f_publish_action\" class=\"input_select\">\n\t\t<OPTION VALUE=\" \">---</OPTION>\n\t\t<OPTION VALUE=\"P\" <?php if ($publishAction == \"P\") echo \"SELECTED\"; ?>><?php echo $translator->trans(\"Publish\"); ?></OPTION>\n\t\t<OPTION VALUE=\"U\" <?php if ($publishAction == \"U\") echo \"SELECTED\"; ?>><?php echo $translator->trans(\"Unpublish\"); ?></OPTION>\n\t</SELECT>\n\t</TD>\n</TR>\n<?php\n$user = \\Zend_Registry::get('container')->getService('user')->getCurrentUser();\n$blogService = \\Zend_Registry::get('container')->getService('blog');\nif (!$blogService->isBlogger($user)) {\n?>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Front page\"); ?>:</TD>\n\t<TD>\n\t<SELECT NAME=\"f_front_page_action\" class=\"input_select\">\n\t\t<OPTION VALUE=\" \">---</OPTION>\n\t\t<OPTION VALUE=\"S\" <?php if ($frontPageAction == \"S\") echo \"SELECTED\"; ?>><?php echo $translator->trans(\"Show on front page\"); ?></OPTION>\n\t\t<OPTION VALUE=\"R\" <?php if ($frontPageAction == \"R\") echo \"SELECTED\"; ?>><?php echo $translator->trans(\"Remove from front page\"); ?></OPTION>\n\t</SELECT>\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Section page\"); ?>:</TD>\n\t<TD>\n\t<SELECT NAME=\"f_section_page_action\" class=\"input_select\">\n\t\t<OPTION VALUE=\" \">---</OPTION>\n\t\t<OPTION VALUE=\"S\" <?php if ($sectionPageAction == \"S\") echo \"SELECTED\"; ?>><?php echo $translator->trans(\"Show on section page\"); ?></OPTION>\n\t\t<OPTION VALUE=\"R\" <?php if ($sectionPageAction == \"R\") echo \"SELECTED\"; ?>><?php echo $translator->trans(\"Remove from section page\"); ?></OPTION>\n\t</SELECT>\n\t</TD>\n</TR>\n<?php } ?>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\">\n\t<INPUT TYPE=\"submit\" NAME=\"Save\" VALUE=\"<?php echo $translator->trans('Save'); ?>\" class=\"button\">\n\t&nbsp;&nbsp;\n        <input type=\"submit\" value=\"<?php echo $translator->trans(\"Close\"); ?>\" class=\"button\" onclick=\"parent.$.fancybox.close(); return false;\" />\n\t</TD>\n</TR>\n</TABLE>\n</FORM>\n<?php } else { ?>\n\t<BLOCKQUOTE>\n\t<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n\t<TR>\n\t\t<TD COLSPAN=\"2\">\n\t\t\t<B> <?php echo $translator->trans(\"Scheduling a new publish action\"); ?> </B>\n\t\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t\t</TD>\n\t</TR>\n\t<TR>\n\t\t<TD COLSPAN=\"2\"><BLOCKQUOTE><?php echo $translator->trans(\"The article is new, it is not possible to schedule it for automatic publishing.\", array(), 'articles');?></BLOCKQUOTE></TD>\n\t</TR>\n\t<TR>\n\t\t<TD COLSPAN=\"2\" align=\"center\">\n\t\t\t<INPUT TYPE=\"button\" NAME=\"OK\" VALUE=\"<?php echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php echo $ADMIN; ?>/articles/edit.php?f_publication_id=<?php p($f_publication_id); ?>&f_issue_number=<?php p($f_issue_number); ?>&f_section_number=<?php p($f_section_number); ?>&f_article_number=<?php p($f_article_number); ?>&f_language_id=<?php p($f_language_id); ?>&f_language_selected=<?php p($f_language_selected); ?>'\" class=\"button\">\n\t\t</TD>\n\t</TR>\n\t</TABLE>\n\t</BLOCKQUOTE>\n<?php } ?>\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/admin-files/articles/autopublish_del.php",
    "content": "<?PHP\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/article_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticlePublish.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nif (!$g_user->hasPermission(\"Publish\")) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to schedule issues or articles for automatic publishing.\", array(), 'articles'));\n\texit;\n}\n\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n$f_language_id = Input::Get('f_language_id', 'int', 0);\n$f_article_number = Input::Get('f_article_number', 'int', 0);\n$f_event_id = Input::Get('f_event_id', 'int', 0);\n$BackLink = Input::Get('Back', 'string', \"/$ADMIN/articles/index.php\", true);\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $BackLink);\n\texit;\n}\n\n$articleObj = new Article($f_language_selected, $f_article_number);\nif (!$articleObj->exists()) {\n\tcamp_html_display_error($translator->trans('Article does not exist.'), $BackLink);\n\texit;\n}\n\n$articlePublishObj = new ArticlePublish($f_event_id);\nif ($articlePublishObj->exists()) {\n\t$articlePublishObj->delete();\n}\ncamp_html_add_msg($translator->trans(\"Scheduled action deleted.\", array(), 'articles'), \"ok\");\n$redirect = camp_html_article_url($articleObj, $f_language_id, \"edit.php\");\ncamp_html_goto_page($redirect);\n?>"
  },
  {
    "path": "newscoop/admin-files/articles/autopublish_do_add.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/article_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticlePublish.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nif (!$g_user->hasPermission(\"Publish\")) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to schedule issues or articles for automatic publishing.\", array(), 'articles'));\n\texit;\n}\n\n$f_publication_id = Input::Get('f_publication_id', 'int', 0);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0);\n$f_section_number = Input::Get('f_section_number', 'int', 0);\n$f_language_id = Input::Get('f_language_id', 'int', 0);\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n$f_publish_date = trim(Input::Get('f_publish_date', 'string', '', true));\n$f_publish_hour = trim(Input::Get('f_publish_hour', 'int', '', true));\n$f_publish_minute = trim(Input::Get('f_publish_minute', 'int', '', true));\n$f_publish_action = Input::Get('f_publish_action', 'string', '', true);\n$f_front_page_action = Input::Get('f_front_page_action', 'string', '', true);\n$f_section_page_action = Input::Get('f_section_page_action', 'string', '', true);\n$f_article_code = Input::Get('f_article_code', 'array', 0);\n// \"mode\" can be \"multi\" or \"single\"\n$f_mode = Input::Get('f_mode', 'string', 'single', true);\nif ($f_mode == \"multi\") {\n\t$args = $_REQUEST;\n\t$argsStr = camp_implode_keys_and_values($args, \"=\", \"&\");\n\t$backLink = \"/$ADMIN/articles/multi_autopublish.php?\".$argsStr;\n} else {\n\t$args = $_REQUEST;\n\tunset($args[\"f_article_code\"]);\n\t$argsStr = camp_implode_keys_and_values($args, \"=\", \"&\");\n\t$backLink = \"/$ADMIN/articles/autopublish.php?\".$argsStr;\n}\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $BackLink);\n\texit;\n}\n\n// Get all the articles.\n$articles = array();\n$errorArticles = array();\nforeach ($f_article_code as $code) {\n\tlist($articleId, $languageId) = explode(\"_\", $code);\n\t$tmpArticle = new Article($languageId, $articleId);\n\tif ($tmpArticle->getWorkflowStatus() != 'N') {\n\t\t$articles[] = $tmpArticle;\n\t}\n\telse {\n\t\t$errorArticles[] = $tmpArticle;\n\t}\n}\n\n$publicationObj = new Publication($f_publication_id);\nif (!$publicationObj->exists()) {\n\tcamp_html_display_error($translator->trans('Publication does not exist.'));\n\texit;\n}\n\n$issueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\nif (!$issueObj->exists()) {\n\tcamp_html_display_error($translator->trans('Issue does not exist.'));\n\texit;\n}\n\n$sectionObj = new Section($f_publication_id, $f_issue_number, $f_language_id, $f_section_number);\nif (!$sectionObj->exists()) {\n\tcamp_html_display_error($translator->trans('Section does not exist.'));\n\texit;\n}\n\nif ($f_publish_date == \"\") {\n\tcamp_html_add_msg($translator->trans('You must fill in the $1 field.', array('$1' => '<B>'.$translator->trans('Date').'</B>')));\n}\n\nif ( ($f_publish_hour == \"\") || ($f_publish_minute == \"\") ) {\n\tcamp_html_add_msg($translator->trans('You must fill in the $1 field.',array('$1' => '<B>'.$translator->trans('Time').'</B>')));\n}\n\nif ( ($f_publish_action != \"P\") && ($f_publish_action != \"U\")\n\t && ($f_front_page_action != \"S\") && ($f_front_page_action != \"R\")\n\t && ($f_section_page_action != \"S\") && ($f_section_page_action != \"R\") ) {\n\tcamp_html_add_msg($translator->trans('You must select an action.'));\n}\n\nif ( (count($articles) == 0) && (count($errorArticles) > 0) ) {\n\tcamp_html_add_msg($translator->trans(\"The article is new; it is not possible to schedule it for automatic publishing.\", array(), 'articles'));\n}\n\n\n\n\nif (camp_html_has_msgs()) {\n\tcamp_html_goto_page($backLink);\n}\n\n$publishTime = $f_publish_date . \" \" . $f_publish_hour . \":\" . $f_publish_minute . \":00\";\n\nforeach ($articles as $tmpArticle) {\n\n\n\t$articleEvents = ArticlePublish::GetArticleEvents($tmpArticle->getArticleNumber(), $f_language_selected, TRUE);\n\tforeach($articleEvents as $event) {\n        if ( $event->getActionTime() == $publishTime ) {\n            if ( $f_publish_action != $event->getPublishAction() ) {\n            \t?>\n\t\t\t    <script type=\"text/javascript\">\n\t\t\t    try {\n\t\t\t        parent.$.fancybox.reload = true;\n\t\t\t        parent.$.fancybox.message = '<?php echo $translator->trans('You can not schedule opposing events at the same time', array(), 'articles'); ?>';\n\t\t\t        parent.$.fancybox.close();\n\t\t\t    } catch (e) {\n\t\t\t    }\n\t\t\t    </script>\n\t\t\t    <?php\n            \texit();\n            }\n        }\n\t}\n\n\n\t$articlePublishObj = new ArticlePublish();\n\t$articlePublishObj->create();\n\t$articlePublishObj->setArticleNumber($tmpArticle->getArticleNumber());\n\t$articlePublishObj->setLanguageId($tmpArticle->getLanguageId());\n\t$articlePublishObj->setActionTime($publishTime);\n\tif ($f_publish_action == \"P\" || $f_publish_action == \"U\") {\n\t\t$articlePublishObj->setPublishAction($f_publish_action);\n\t}\n\tif ($f_front_page_action == \"S\" || $f_front_page_action == \"R\") {\n\t\t$articlePublishObj->setFrontPageAction($f_front_page_action);\n\t}\n\tif ($f_section_page_action == \"S\" || $f_section_page_action == \"R\") {\n\t\t$articlePublishObj->setSectionPageAction($f_section_page_action);\n\t}\n\tLog::ArticleMessage($tmpArticle, $translator->trans('Scheduled action added', array(), 'articles'), $g_user->getUserId(), 37);\n}\n\n\nif ($f_mode == \"multi\") {\n\t$args = $_REQUEST;\n\tunset($args[\"f_article_code\"]);\n\t$argsStr = camp_implode_keys_and_values($args, \"=\", \"&\");\n\tcamp_html_add_msg($translator->trans(\"Scheduled action added.\", array(), 'articles'), \"ok\");\n\tcamp_html_goto_page(\"/$ADMIN/articles/index.php?\".$argsStr);\n} else {\n\t?>\n\t<script type=\"text/javascript\">\n    try {\n        parent.$.fancybox.reload = true;\n        parent.$.fancybox.message = '<?php echo $translator->trans('Actions updated.', array(), 'articles'); ?>';\n        parent.$.fancybox.close();\n    } catch (e) {\n    }\n\t</script>\n\t<?php\n}\n?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/comments/add_comment_form.php",
    "content": "<?php\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n// check permissions\nif (!$g_user->hasPermission('CommentEnable')) {\n    return;\n}\n?>\n\n<form id=\"comment-add\" action=\"../comment/add-to-article/format/json\" method=\"POST\">\n    <?php echo SecurityToken::FormParameter(); ?>\n    <input type=\"hidden\" name=\"f_language_id\" value=\"<?php p($f_language_id); ?>\">\n    <input type=\"hidden\" name=\"f_article_number\" value=\"<?php p($f_article_number); ?>\">\n    <input type=\"hidden\" name=\"f_language_selected\" value=\"<?php p($f_language_selected); ?>\">\n    <h3><?php echo $translator->trans('Post a Comment', array(), 'article_comments'); ?></h3>\n    <fieldset class=\"plain\">\n    <ul>\n      <li>\n        <label><?php echo $translator->trans('Author'); ?></label>\n        <input id=\"commenter_name\" type=\"text\" name=\"f_comment_nickname\" value=\"<?php p($g_user->getRealName()); ?>\" class=\"input_text\" size=\"41\" />\n      </li>\n      <li>\n        <label><?php echo $translator->trans('Subject'); ?></label>\n        <input id=\"comment_subject\" type=\"text\" name=\"f_comment_subject\" value=\"\" class=\"input_text\" size=\"41\" spellcheck=\"false\" <?php print $spellcheck ?> />\n      </li>\n      <li>\n        <label><?php echo $translator->trans('Comment'); ?></label>\n        <textarea id=\"comment_message\" name=\"f_comment_body\" class=\"input_text_area\" rows=\"8\" cols=\"\" <?php print $spellcheck ?> style=\"width:99.5%;\"></textarea>\n      </li>\n      <li><input type=\"submit\" value=\"<?php echo $translator->trans('Submit'); ?>\" class=\"default-button\" /></li>\n    </ul>\n    </fieldset>\n</form>\n<script>\nfunction addComment() {\n    $('#comment-add').submit(function(){\n\n\t\tvar call_data = {\n\t\t\t\"article\": \"<?php echo $f_article_number; ?>\",\n\t\t\t\"language\": \"<?php echo $f_language_selected; ?>\",\n\t\t\t\"name\": $('#commenter_name').val(),\n\t\t\t\"subject\": $('#comment_subject').val(),\n\t\t\t\"message\" :$('#comment_message').val()\n\t\t};\n\n\t    var call_url = '../comment/add-to-article/format/json';\n\n\t\tvar res_handle = function(data) {\n\t\t\t$('#comment-add').each(function(){\n\t\t\t\tthis.reset();\n\t\t\t});\n\n\t\t\tloadComments(true);\n\t\t\tflashMessage('<?php echo $translator->trans('Comment saved.', array(), 'article_comments'); ?>');\n\n\t\t};\n\n\t\tcallServer(call_url, call_data, res_handle, true);\n\n        return false;\n    });\n};\n</script>\n<script>\n$(function() {\n    addComment();\n});\n</script>"
  },
  {
    "path": "newscoop/admin-files/articles/comments/reply.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n$f_language_id = Input::Get('f_language_id', 'int', 0, true);\n$f_article_number = Input::Get('f_article_number', 'int', 0);\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n$f_comment_id = Input::Get('f_comment_id');\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $BackLink);\n\texit;\n}\n\nif ($g_user->hasPermission('EditorSpellcheckerEnabled')) {\n    $spellcheck = 'spellcheck=\"true\"';\n} else {\n    $spellcheck = 'spellcheck=\"false\"';\n}\n\n// Check that the article exists.\n$articleObj = new Article($f_language_id, $f_article_number);\nif (!$articleObj->exists()) {\n\texit;\n}\nif (!$articleObj->commentsEnabled() || $articleObj->commentsLocked())  {\n\tcamp_html_goto_page(camp_html_article_url($articleObj, $f_language_selected, \"edit.php\"));\n}\n\n$publicationObj = new Publication($articleObj->getPublicationId());\n$issueObj = new Issue($articleObj->getPublicationId(), $f_language_id, $articleObj->getIssueNumber());\n$sectionObj = new Section($articleObj->getPublicationId(), $articleObj->getIssueNumber(), $f_language_id, $articleObj->getSectionNumber());\n$languageObj = new Language($articleObj->getLanguageId());\n\n$topArray = array('Pub' => $publicationObj, 'Issue' => $issueObj,\n\t\t\t\t  'Section' => $sectionObj, 'Article'=>$articleObj);\ncamp_html_content_top($translator->trans(\"Reply to comment\", array(), 'article_comments'), $topArray);\n?>\n<table cellpadding=\"1\" cellspacing=\"0\" class=\"action_buttons\" style=\"padding-top: 10px;\">\n<tr>\n  <td><img src=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/left_arrow.png\" border=\"0\" /></td>\n  <td><a href=\"<?php echo camp_html_article_url($articleObj, $f_language_id, \"edit.php\"); ?>\"><b><?php echo $translator->trans('Back to Edit Article'); ?></b></a></td>\n</tr>\n</table>\n<p>\n<table id=\"comment-reply-to\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" class=\"box_table\" style=\"display:none;\">\n<tr>\n  <td colspan=\"2\" style=\"padding-top: 5px; padding-bottom: 5px; border-bottom: 1px solid black;\"\">\n    &nbsp;<b><?php echo $translator->trans('Comment'); ?></b>\n  </td>\n<tr>\n<?php\nif (isset($connectedToOnlineServer)\n    && $connectedToOnlineServer == false) {\n?>\n<tr>\n  <td><?php camp_html_display_msgs('0.25em', '0.25em'); ?></td>\n</tr>\n</table>\n<?php\n} else {\n?>\n<tr>\n  <td align=\"right\" valign=\"top\" nowrap><?php echo $translator->trans('From', array(), 'article_comments'); ?>:</td>\n  <td>${name} &lt;${email}&gt; (${ip})</td>\n</tr>\n<tr>\n  <td align=\"right\" valign=\"top\" nowrap><?php echo $translator->trans('Date'); ?>:</td>\n  <td>${time_created}</td>\n</tr>\n<tr>\n  <td align=\"right\" valign=\"top\" nowrap><?php echo $translator->trans('Subject'); ?>:</td>\n  <td>${subject}</td>\n</tr>\n<tr>\n  <td align=\"right\" valign=\"top\" nowrap><?php echo $translator->trans('Comment'); ?>:</td>\n  <td>${message}</td>\n</tr>\n</table>\n<p>\n<form id=\"comment-reply\" action=\"../../comment/reply/format/json\" method=\"POST\">\n<?php echo SecurityToken::FormParameter(); ?>\n<input type=\"hidden\" name=\"f_language_id\" value=\"<?php p($f_language_id); ?>\">\n<input type=\"hidden\" name=\"f_article_number\" value=\"<?php p($f_article_number); ?>\">\n<input type=\"hidden\" name=\"f_language_selected\" value=\"<?php p($f_language_selected); ?>\">\n<input type=\"hidden\" name=\"f_comment_id\" value=\"<?php p($f_comment_id); ?>\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"box_table\">\n<tr>\n  <td colspan=\"2\" style=\"padding-left: 5px;\">\n    <b><?php echo $translator->trans('Reply to comment', array(), 'article_comments'); ?></b>\n    <hr noshade size=\"1\" color=\"black\" />\n  </td>\n</tr>\n<tr>\n  <td valign=\"middle\" align=\"right\">\n    <?php echo $translator->trans('Subject'); ?>:\n  </td>\n  <td>\n    <input id=\"comment_subject\" type=\"text\" name=\"f_comment_subject\" value=\"\" class=\"input_text\" size=\"41\" <?php print $spellcheck ?> >\n  </td>\n</tr>\n<tr>\n  <td valign=\"top\" align=\"right\" style=\"padding-top: 5px;\">\n    <?php echo $translator->trans('Comment'); ?>:\n  </td>\n  <td>\n    <textarea id=\"comment_message\" name=\"f_comment_body\" class=\"input_text_area\" rows=\"10\" cols=\"60\" <?php print $spellcheck ?>></textarea>\n  </td>\n</tr>\n<tr>\n  <td colspan=\"2\" align=\"center\">\n    <input type=\"submit\" value=\"<?php echo $translator->trans('Submit'); ?>\" class=\"button\">\n  </td>\n</tr>\n</table>\n</form>\n<script>\nfunction replyComment() {\n\t$('#comment-reply').submit(function(){\n\n\t\tvar call_data = {\n\t\t\t\"article\": \"<?php echo $f_article_number; ?>\",\n\t\t\t\"language\": \"<?php echo $f_language_selected; ?>\",\n\t\t\t\"parent\": \"<?php echo $f_comment_id; ?>\",\n\t\t\t\"subject\": $('#comment_subject').val(),\n\t\t\t\"message\": $('#comment_message').val(),\n                        \"<?php echo SecurityToken::KeyParameter();?>\": \"<?php echo SecurityToken::ValueParameter();?>\"\n\t\t};\n\n\t    var call_url = '../../comment/reply/format/json';\n\n\t\tvar res_handle = function(data) {\n\t\t\twindow.location.href = \"<?php echo camp_html_article_url($articleObj, $f_language_id, \"edit.php\"); ?>\";\n\t\t};\n\n\t\tcallServer(call_url, call_data, res_handle, true);\n\n        return false;\n\n\t});\n};\nfunction loadComment() {\n\n\tvar call_data = {\n\t\t\"comment\": \"<?php echo $f_comment_id; ?>\"\n\t};\n\n    var call_url = '../../comment/list/format/json';\n\n\tvar res_handle = function(data) {\n\t\ttemplate = $('#comment-reply-to').html();\n\t\tcomment = data.result[0];\n\t\tif(comment)\n\t\t\tfor(key in comment) {\n\t\t\t\ttemplate = template.replace(new RegExp(\"\\\\$({|%7B)\"+key+\"(}|%7D)\",\"g\"),comment[key]);\n\t\t\t}\n\t\t$('#comment-reply-to').html(template).show();\n\t};\n\n\tcallServer(call_url, call_data, res_handle, true);\n};\n</script>\n<script>\n$(function() {\n    loadComment();\n    replyComment();\n});\n</script>\n<?php } // if comment enabled ?>\n\n<?php camp_html_copyright_notice(); ?>"
  },
  {
    "path": "newscoop/admin-files/articles/comments/show_comments.php",
    "content": "<?php\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n// check permissions\nif (!$g_user->hasPermission('CommentEnable')) {\n    return;\n}\n?>\n\n<?php\n// add token\necho SecurityToken::FormParameter();\n\n// add hidden inputs\n$hiddens = array(\n    'f_language_id' => 'language_id',\n    'f_article_number' => 'article_id',\n    'f_language_selected' => 'language_selected_id',\n);\nforeach ($hiddens as $name) {\n    if (!isset($$name)) {\n        $$name = '';\n    }\n\n    echo '<input type=\"hidden\" name=\"', $name;\n    echo '\" value=\"', $$name, '\" />', \"\\n\";\n}\n/** @todo Replace this basic template with a doT template from jquery*/\n?>\n<fieldset id=\"comment-prototype\" class=\"plain comments-block\" style=\"display:none\">\n    <input type=\"hidden\" name=\"comment_id\" value=\"${id}\">\n    <?php if ($inEditMode): ?>\n    \n    <?php endif; //inEditMode?>\n    <div class=\"frame clearfix\">\n      <dl class=\"inline-list\" id=\"comment-${id}\">\n        <div class=\"comment_status\" style=\"display:none;\">${status}</div>\n        <dt><?php echo $translator->trans('From', array(), 'article_comments'); ?></dt>\n        <dd><a href=\"mailto:${email}\">\"${name}\" &lt;${email}&gt;</a> (${ip})</dd>\n        <dt><?php echo $translator->trans('Date'); ?></dt>\n        <dd>${time_created}</dd>\n        <dt><?php echo $translator->trans('Subject'); ?></dt>\n        <dd>\n            <?php if ($inEditMode && $g_user->hasPermission('CommentEdit')): ?>\n                <input type=\"text\" value=\"${subject}\"></input>\n            <?php else: ?>\n                ${subject}\n            <?php endif; //inEditMode?>\n        </dd>\n        <dt><?php echo $translator->trans('Comment'); ?></dt>\n        <dd>\n            <?php if ($inEditMode && $g_user->hasPermission('CommentEdit')): ?>\n                <textarea rows=\"5\" cols=\"60\">${message}</textarea>\n            <?php else: ?>\n                ${message}\n            <?php endif; //inEditMode?>\n        </dd>\n        <?php if (!$inEditMode): ?>\n        <dt><?php echo $translator->trans('Status'); ?></dt>\n        <dd>\n            <span class=\"comment-state-status comment-state-status-${status}\" style=\"font-size:12px;\">&nbsp;</span>\n            <span class=\"comment-recommend-status comment-recommend-status-${recommended_toggle}\" style=\"font-size:12px;\">&nbsp;</span>\n        </dd>\n        <?php else: ?>\n        <?php if ($g_user->hasPermission('CommentEdit')) { ?>\n        <dt>&nbsp;</dt>\n        <?php } ?>\n        <?php if ($g_user->hasPermission('CommentModerate')) { ?>\n        <dd>\n            <ul class=\"action-list clearfix\">\n              <li>\n              <input type=\"radio\" name=\"comment_action_${id}\" value=\"pending\" class=\"input_radio\" id=\"inbox_${id}\" ${pending_checked}/>\n                <label class=\"inline-style left-floated\" for=\"inbox_${id}\"><?php echo $translator->trans('New'); ?></label>\n              </li>\n\n              <li>\n              <input type=\"radio\" name=\"comment_action_${id}\" value=\"approved\" class=\"input_radio\" id=\"approved_${id}\" ${approved_checked}/>\n                <label class=\"inline-style left-floated\" for=\"approved_${id}\"><?php echo $translator->trans('Approved'); ?></label>\n              </li>\n\n              <li>\n                <input type=\"radio\" name=\"comment_action_${id}\" value=\"hidden\" class=\"input_radio\" id=\"hidden_${id}\" ${hidden_checked}/>\n                <label class=\"inline-style left-floated\" for=\"hidden_${id}\"><?php echo $translator->trans('Hidden'); ?></label>\n              </li>\n\n              <li>\n                <input type=\"radio\" name=\"comment_action_${id}\" value=\"deleted\" class=\"input_radio\" id=\"deleted_${id}\" ${deleted_checked}/>\n                <label class=\"inline-style left-floated\" for=\"deleted_${id}\"><?php echo $translator->trans('Delete'); ?></label>\n              </li>\n            </ul>\n        </dd>\n        <?php } else { ?>\n        <dt><?php echo $translator->trans('Status'); ?></dt>\n        <dd>\n            <span class=\"comment-state-status comment-state-status-${status}\" style=\"font-size:12px;\">&nbsp;</span>\n            <span class=\"comment-recommend-status comment-recommend-status-${recommended_toggle}\" style=\"font-size:12px;\">&nbsp;</span>\n        </dd>\n        <?php } ?>\n        <dd class=\"buttons\">\n            <?php if ($inEditMode): ?>\n            <?php if (($g_user->hasPermission('CommentEdit')) || ($g_user->hasPermission('CommentModerate'))) { ?>\n            <a class=\"ui-state-default icon-button comment-update\"><span class=\"ui-icon ui-icon-disk\"></span><?php echo $translator->trans('Save comment', array(), 'article_comments'); ?></a>\n            <?php } ?>\n            <?php endif; //inEditMode?>\n\n            <?php if ($g_user->hasPermission('CommentModerate')) { ?>\n            <a href=\"<?php echo $controller->view->url(array(\n                'module' => 'admin',\n                'controller' => 'comments',\n                'action' => 'set-recommended',\n            )); ?>/${id}/${recommended_toggle}\" class=\"ui-state-default text-button comment-recommend status-${recommended_toggle}\"><?php echo $translator->trans('Recommend', array(), 'article_comments'); ?></a>\n            <?php } ?>\n\n            <a href=\"<?php echo camp_html_article_url($articleObj, $f_language_selected, 'comments/reply.php', '', '&f_comment_id=${id}'); ?>\" class=\"ui-state-default text-button\"><?php echo $translator->trans('Reply to comment', array(), 'article_comments'); ?></a>\n\n        </dd>\n        <?php endif; //inEditMode?>\n      </dl>\n    </div>\n</fieldset>\n<p style=\"display:none\"><?php echo $translator->trans('No comments posted.', array(), 'article_comments'); ?></p>\n<form id=\"comment-moderate\" action=\"../comments/set-status\" method=\"POST\"></form>\n\n<script type=\"text/javascript\">\nfunction toggleCommentStatus(commentId) {\n    var commentSetting = $('input:radio[name^=\"f_comment\"]:checked').val();\n    $('#comment-moderate .comments-block').each(function() {\n        if (commentId && commentId == $(this).find('input:hidden').val()) {\n            var statusClassMap = { 'hidden': 'hide', 'approved': 'approve', 'pending': 'inbox'};\n            var block = $(this);\n            var status = $('input:radio:checked', block).val();\n            if (status === undefined) {\n                status = $('.comment_status', block).html();\n            }\n            var cclass = 'comment_'+statusClassMap[status];\n\n            // set class\n            $('.frame', block).removeClass('comment_inbox comment_hide comment_approve')\n                .addClass(cclass);\n        }\n    });\n\n    //detach deleted\n    $('input[value=deleted]:checked', $('#comment-moderate')).each(function() {\n        $(this).closest('fieldset').slideUp(function() {\n            $(this).detach();\n        });\n    });\n}\n\nfunction loadComments(addComment) {\n    var lastCommentId = null;\n    var commentsNumber = 10;\n    if ($('#comment-moderate .comments-block').length > 0) {\n        lastCommentId = $('#comment-moderate .comments-block').length;\n        if (addComment) {\n            lastCommentId = 0;\n            commentsNumber = 1;\n        }\n\n        if (lastCommentId >= commentsNumber) {\n            commentsNumber += commentsNumber;\n        }\n    }\n\n    var call_data = {\n        \"article\": \"<?php echo $articleObj->getArticleNumber(); ?>\",\n        \"language\": \"<?php echo $f_language_selected; ?>\",\n        \"iDisplayStart\": lastCommentId,\n        \"iDisplayLength\": commentsNumber\n    };\n\n    var call_url = '../comments/list';\n\n    var res_handle = function(data) {\n       $('fieldset.get-more-comments').remove();\n        var hasComment = false;\n        for(var i in data.result) {\n            hasComment = true;\n            var comment = data.result[i];\n            if(typeof(comment) == \"function\") {\n                continue;\n            }\n\n            var template = $('#comment-prototype').html();\n            for(var key in comment) {\n                if(key == 'status') {\n                    template = template.replace(new RegExp(\"\\\\$({|%7B)\"+comment[key]+\"_checked(}|%7D)\",\"g\"),'checked=\"true\"');\n                    template = template.replace(new RegExp(\"\\\\${[^_]*_checked}\",\"g\"),'');\n                }\n                template = template.replace(new RegExp(\"\\\\$({|%7B)\"+key+\"(}|%7D)\",\"g\"),comment[key]);\n            }\n\n            if (data.result.length == 1) {\n                $('#comment-moderate').prepend('<fieldset data-comment-id=\"'+comment['id']+'\" class=\"plain comments-block\">'+template+'</fieldset>');\n            } else {\n                $('#comment-moderate').append('<fieldset data-comment-id=\"'+comment['id']+'\" class=\"plain comments-block\">'+template+'</fieldset>');\n            }\n            toggleCommentStatus(comment['id']);\n        }\n\n        var getMoreLink = $('<div style=\"text-align:center;\"><fieldset class=\"get-more-comments\"><input type=\"button\" style=\"pull-right\" class=\"ui-state-default default-button paginate paginate-next\" value=\"<?php echo $translator->trans('Show more comments', array(), 'article_comments'); ?>\" /></fieldset></div>');\n        getMoreLink.find('input')\n            .click(function(e){\n                loadComments();\n                e.preventDefault();\n            });\n\n        if (data.result.length >= commentsNumber) {\n            $('#comment-moderate').append(getMoreLink);\n        }\n\n        if (data.result.length == 0) {\n            $('#comment-moderate').append(getMoreLink);\n            $('fieldset.get-more-comments').html('<p><?php echo $translator->trans('There are no more comments', array(), 'article_comments'); ?></p>');\n        }\n\n        var referencedComment = $(document.location.hash);\n        if (referencedComment.size() == 1) {\n            $(window).scrollTop(referencedComment.position().top);\n        }\n\n        if(!hasComment)\n            $('#no-comments').show();\n\n        $('.comment-state-status').each(function() {\n            $(this).html(\"&nbsp;\");\n            if ($(this).hasClass('comment-state-status-pending')) {\n                $(this).html(\"<?php echo $translator->trans(\"New\"); ?>\");\n            }\n            if ($(this).hasClass('comment-state-status-approved')) {\n                $(this).html(\"<?php echo $translator->trans(\"Approved\"); ?>\");\n            }\n            if ($(this).hasClass('comment-state-status-hidden')) {\n                $(this).html(\"<?php echo $translator->trans(\"Hidden\"); ?>\");\n            }\n        });\n\n        $('.comment-recommend-status').each(function() {\n            if ($(this).hasClass('comment-recommend-status-0')) {\n                $(this).html(\"<?php echo $translator->trans(\"Recommended\", array(), 'article_comments'); ?>\");\n            }\n            else {\n                $(this).html(\"&nbsp;\");\n            }\n        });\n        $('.comment-recommend').each(function() {\n             if ($(this).hasClass('status-0')) {\n                 $(this).html(\"<?php echo $translator->trans(\"Unrecommend\", array(), 'article_comments'); ?>\");\n            }\n        }).click(function() {\n            var link = $(this);\n            callServer('ping', [], function(json) {\n                $.getJSON(link.attr('href'), {\n                }, function(data, textStatus, jqXHR) {\n                    if (link.hasClass('status-0')) {\n                        link.removeClass('status-0').addClass('status-1');\n                        link.html(\"<?php echo $translator->trans(\"Recommend\", array(), 'article_comments'); ?>\");\n                        var status = 1;\n                    } else {\n                        link.removeClass('status-1').addClass('status-0');\n                        link.html(\"<?php echo $translator->trans(\"Unrecommend\", array(), 'article_comments'); ?>\");\n                        var status = 1;\n                    }\n\n                    var href = link.attr('href');\n                    link.attr('href', href.substr(0, href.length - 2) + '/'+ status);\n                });\n            });\n\n            return false;\n        });\n    };\n\n    callServer(call_url, call_data, res_handle, true);\n};\n\nvar updateStatus = function(button) {\n    var el = $(button).parents('dl').find('input:radio:checked').first();\n    var wanted_status = el.val();\n\n    var call_data = {\n       \"comment\": el.attr('id').match(/\\d+/)[0],\n       \"status\": wanted_status\n    };\n\n    var call_url = '../comments/set-status';\n\n    var res_handle = function(data) {\n        //flashMessage('<?php echo $translator->trans('Comments updated.'); ?>');\n        toggleCommentStatus(el.attr('id').match(/\\d+/)[0]);\n        if ('deleted' == wanted_status) {\n            loadComments();\n        }\n\n    };\n\n    callServer(call_url, call_data, res_handle, true);\n\n    return wanted_status;\n};\n\n$('.comment-update').live('click',function(){\n    var comment, subject, body;\n\n    <?php if ($g_user->hasPermission('CommentModerate')) { ?>\n    var wanted_status = updateStatus(this);\n    if ('deleted' == wanted_status) {\n        return;\n    }\n    <?php } ?>\n\n    <?php if (!$g_user->hasPermission('CommentEdit')) { ?>\n        return;\n    <?php } ?>\n\n    comment = $(this).parents('dl');\n    subject = comment.find('input').val();\n    body = comment.find('textarea').val();\n\n    var call_data = {\n       \"id\": comment.attr('id').match(/\\d+/)[0],\n       \"subject\": subject,\n       \"body\": body\n    };\n\n    var call_url = '../comment/update-contents/format/json';\n\n    var res_handle = function(data) {\n        flashMessage('<?php echo $translator->trans('Comment updated.', array(), 'article_comments'); ?>');\n    };\n\n    callServer(call_url, call_data, res_handle, true);\n});\n\nloadComments();\n</script>\n"
  },
  {
    "path": "newscoop/admin-files/articles/context_box/popup.php",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n?>\n<!DOCTYPE html>\n<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n<meta http-equiv=\"Expires\" content=\"now\" />\n<title><?php echo $translator->trans(\"Edit Related articles\", array(), 'articles');  ?></title>\n<script type=\"text/javascript\">\n\nfunction relatedListIncidence(articleId)\n{\n    var incidence = 0;\n    $('#context_list').find('tr').each(function (key, value) {\n        if (value.id == articleId) {\n            incidence ++;\n        }\n    });\n\n    return incidence;\n}\n\nfunction toggleDragZonePlaceHolder()\n{\n    if ($('#context_list').find('.context-item').html() != null) {\n        $('#drag-here-to-add-to-list').css('display', 'none');\n    } else {\n        $('#drag-here-to-add-to-list').css('display', 'block');\n    }\n}\n\nfunction fnLoadContextList(data)\n{\n    if (data.code == 200) {\n        var items = data.items;\n        for (i = 0; i < items.length; i++) {\n            var item = items[i];\n            appendItemToContextList(item.articleId, item.date, item.title, item.status);\n        }\n    }\n    toggleDragZonePlaceHolder();\n}\n\nfunction loadContextList()\n{\n    var relatedArticles = $('#context_list').sortable( \"serialize\");\n    var aoData = new Array();\n    var items = new Array('1_1','0_0');\n\n    aoData.push(\"context_box_load_list\");\n    aoData.push(items);\n    aoData.push({\n        'articleId': '<?php echo Input::Get('f_article_number', 'int', 1)?>',\n    });\n    callServer(['ArticleList', 'doAction'], aoData, fnLoadContextList);\n}\n\nfunction appendItemToContextList(article_id, article_date, article_title, status)\n{\n    if (typeof status != 'undefined') {\n       var articleStatus = ' ('+status+')';\n    } else {\n        var articleStatus = '';\n    };\n\n        $(\"#context_list\").append(\n                '<tr id=\"'+article_id+'\">'+\n                '<td>'+\n                '<div class=\"context-item\">'+\n                '<div class=\"context-drag-topics\"><a href=\"#\" title=\"drag to sort\"></a></div>'+\n                '<div class=\"context-item-header\">'+\n                    '<div class=\"context-item-date\">'+ article_date + articleStatus +'</div>'+\n                    '<a href=\"#\" class=\"view-article\" style=\"display: none\" onClick=\"viewArticle($(this).parent(\\'div\\').parent(\\'div\\').parent(\\'td\\').parent(\\'tr\\').attr(\\'id\\'));\"><?php echo $translator->trans('View article', array(), 'articles');  ?></a>'+\n                '</div>'+\n                '<a href=\"#\" class=\"corner-button\" style=\"display: block\" onClick=\"$(this).parent(\\'div\\').parent(\\'td\\').parent(\\'tr\\').remove();toggleDragZonePlaceHolder();\"><span class=\"ui-icon ui-icon-closethick\"></span></a>'+\n                '<div class=\"context-item-summary\">'+article_title+'</div>'+\n                '</div>'+\n                '</td>'+\n                '</tr>'\n                );\n        closeArticle();\n}\n\nfunction deleteContextList()\n{\n    $(\"#context_list\").html(''+\n            '<div id=\"drag-here-to-add-to-list\" style=\"\">'+\n            'Drag here to add to list'+\n        '</div>'+\n    '');\n}\n\nfunction removeFromContext(param)\n{\n    $(\"#\"+param).remove();\n}\n\nfunction fnPreviewArticle(data)\n{\n    $(\"#preview-article-date\").val(data.date);\n    $(\"#preview-article-title\").html(data.title);\n    var bodyHtml = '';\n    bodyHtml += '<h4>'+data.authorsLabel+'</h4>';\n    if (data['authors'].length != 0) {\n        for (author in data['authors']) {\n            bodyHtml += '<p> - '+data['authors'][author]+'</p>';\n        }\n    } else {\n        bodyHtml += '<p>null</p>';\n    }\n\n    for (i in data) {\n        if ($.inArray(i, ['title', 'date', 'authors', 'authorsLabel']) != -1) continue;\n        bodyHtml += '<h4>'+i+'</h4>';\n        bodyHtml += '<p>'+data[i]+'</p>';\n    };\n\n    $(\"#preview-article-body\").html(bodyHtml);\n    $(\".context-block.context-list\").css(\"display\",\"none\");\n    $(\".context-block.context-article\").css(\"display\",\"block\");\n}\n\nfunction clearActiveArticles()\n{\n    $('.item-active').each( function () {\n        $(this).removeClass('item-active');\n    });\n}\n\nfunction viewArticle(param, lang)\n{\n     clearActiveArticles();\n     $(\"#\"+param).addClass('item-active');\n     var relatedArticles = $('#context_list').sortable( \"serialize\");\n\n     //var aoData = new Array();\n     //var items = new Array('1_1','0_0');\n\n     //aoData.push(\"context_box_preview_article\");\n     //aoData.push(items);\n     //aoData.push({'articleId' : param});\n     //aoData.push({'langId' : lang});\n     //callServer(['ArticleList', 'doAction'], aoData, fnPreviewArticle);\n\n     $(\"#preview-article-id\").val(param);\n     param = param.substring( param.lastIndexOf('_')+1 );\n     callServer('/<?php echo $ADMIN ?>/playlist/article-preview', { 'id' : param, 'lang' : lang }, fnPreviewArticle, true);\n}\n\nfunction closeArticle()\n{\n    $(\".context-block.context-list\").css(\"display\",\"block\");\n    $(\".context-block.context-article\").css(\"display\",\"none\");\n}\n\nfunction popup_close()\n{\n    try {\n        if (parent.$.fancybox.reload) {\n            parent.$.fancybox.message = '<?php echo $translator->trans('Locations updated.', array(), 'articles'); ?>';\n        }\n        parent.$.fancybox.close();\n    } catch (e) {window.close();}\n}\n\nfunction popup_save()\n{\n    var relatedArticles = $('#context_list').sortable( \"serialize\");\n    var aoData = new Array();\n    var items = new Array('1_1','0_0');\n\n    aoData.push(\"context_box_update\");\n    aoData.push(items);\n    aoData.push({\n        'relatedArticles': relatedArticles,\n        'articleId': '<?php echo Input::Get('f_article_number', 'int', 1)?>',\n    });\n    callServer(['ArticleList', 'doAction'], aoData, fnSaveCallback);\n}\n\nfunction fnSaveCallback()\n{\n    var flash = flashMessage('<?php echo $translator->trans('Related articles list saved', array(), 'articles'); ?>', null, false);\n}\n\n   </script>\n\n<?php\n$f_context_box = 1;\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/html_head.php\");\nrequire_once LIBS_DIR . '/ContextList/ContextList.php';\n\n$f_publication_id = Input::Get('f_publication_id', 'int', 0);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0);\n$f_section_number = Input::Get('f_section_number', 'int', 0);\n$f_language_id = Input::Get('f_language_id', 'int', 1);\nif (isset($_SESSION['f_language_selected'])) {\n    $f_old_language_selected = (int) $_SESSION['f_language_selected'];\n} else {\n    $f_old_language_selected = 0;\n}\n$f_language_selected = (int) camp_session_get('f_language_selected', 0);\n?>\n\n</head>\n<body onLoad=\"return false;\" style=\"background: none repeat scroll 0 0 #FFFFFF;\">\n\n<div class=\"content\">\n<div id=\"context-box\">\n<div class=\"toolbar\">\n<div class=\"save-button-bar\"><input type=\"submit\" name=\"cancel\"\n    value=\"<?php echo $translator->trans('Close'); ?>\" class=\"default-button\" onclick=\"popup_close();\"\n    id=\"context_button_close\"> <input type=\"submit\" name=\"save\"\n    value=\"<?php echo $translator->trans('Save'); ?>\" class=\"save-button-small\" onclick=\"popup_save();\"\n    id=\"context_button_save\"></div>\n<h2><?php echo $translator->trans('Related Articles', array(), 'articles'); ?></h2>\n</div>\n<div class=\"context-content\" style=\"position:relative\">\n<div class=\"context-block context-search\">\n<h3><?php echo $translator->trans('Available Articles', array(), 'articles'); ?></h3>\n<?php\n\n$contextlist = new ContextList();\n$contextlist->setSearch(TRUE);\n$contextlist->setOrder(TRUE);\n$contextlist->setLanguage($f_language_id);\n\n$contextlist->renderFilters();\n$contextlist->render();\n\n?></div>\n<script>\n                 $(function () {\n                        $(\".dataTables_filter input\").attr(\"placeholder\", \"Search\").addClass(\"context-search search\");\n                        //$(\"#table-<?php echo $contextlist->getId();?>_filter\").css(\"border\",\"0px\");\n                        $(\".fg-toolbar .ui-toolbar .ui-widget-header .ui-corner-tl .ui-corner-tr .ui-helper-clearfix\").css(\"border\",\"none\");\n                        $(\".fg-toolbar .ui-toolbar .ui-widget-header .ui-corner-bl .ui-corner-br .ui-helper-clearfix\").css(\"background-color\",\"#CCCCCC\");\n                        $(\".datatable\").css(\"position\",\"static\");\n                 });\n                 $(function () {\n                     $('#table-<?php echo $contextlist->getId(); ?> tbody').sortable({\n                         connectWith: \"#context_list\",\n                         receive: function (event, ui) {\n                             $(ui.item).find(\".corner-button\").css(\"display\",\"none\");\n                             $(ui.item).find(\".view-article\").css(\"display\",\"block\");\n                             toggleDragZonePlaceHolder();\n                         }\n                     }).disableSelection();\n                     $('#context_list').sortable({\n                         connectWith: \"#table-<?php echo $contextlist->getId(); ?> tbody\",\n                         receive: function (event, ui) {\n                            $(ui.item).find(\".corner-button\").css(\"display\",\"block\");\n                            $(ui.item).find(\".view-article\").css(\"display\",\"none\");\n                            toggleDragZonePlaceHolder();\n                            if (relatedListIncidence($(ui.item).attr('id')) > 1) {\n                                alert('<?php echo $translator->trans('You already have this item in the Related Articles list!', array(), 'articles'); ?>');\n                                ui.item.remove();\n                            }\n                         }\n                     }).disableSelection();\n                     loadContextList();\n                 });\n\n                 </script>\n<div class=\"context-block context-list\">\n\n<h3><?php echo $translator->trans('Related Articles', array(), 'articles'); ?></h3>\n<div class=\"context-list-results\">\n<div class=\"save-button-bar\" style=\"display: block;\"><input\n    type=\"submit\" name=\"delete-all\" value=\"Delete all\"\n    class=\"default-button\" onclick=\"deleteContextList()\" id=\"context_button_delete_all\"></div>\n<div style=\"display: block; float: left\">\n<div id=\"context_list\" style=\"display:block; height: 433px; width: 506px; overflow-y:auto; overflow-x:hidden; padding: 36px 0px 0px 0px;\">\n    <div id=\"drag-here-to-add-to-list\" style=\"display:none\">\n        <?php echo $translator->trans('Drag here to add to list', array(), 'articles'); ?>\n    </div>\n</div>\n\n</div>\n</div>\n</div>\n\n<div class=\"context-block context-article\" style=\"display: none\">\n<div class=\"save-button-bar\"><input type=\"submit\"\n    name=\"add-this-article\" value=\"Add this article\"\n    class=\"save-button-small\" onclick=\"if (relatedListIncidence($('#preview-article-id').val()) == 0) {appendItemToContextList($('#preview-article-id').val(), $('#preview-article-date').val(), $('#preview-article-title').html()); toggleDragZonePlaceHolder(); clearActiveArticles()} else { alert('<?php echo $translator->trans('You already have this item in the Related Articles list!', array(), 'articles'); ?>'); };\" id=\"context_button_add\"> <input\n    type=\"submit\" name=\"close\" value=\"Close\" class=\"default-button\"\n    onclick=\"closeArticle(); clearActiveArticles();\" id=\"context_button_close_article\"></div>\n<div class=\"context-article-preview\" style=\"overflow-y:auto; height:500px;\">\n\n<input id=\"preview-article-date\" type=\"hidden\" />\n<input id=\"preview-article-id\" type=\"hidden\" />\n<h3 id=\"preview-article-title\"></h3>\n<div id=\"preview-article-body\" style=\"color: #444444\"></div>\n</div>\n</div>\n\n</div>\n</div>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/admin-files/articles/do_add.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/article_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/classes/Log.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Check permissions\nif (!$g_user->hasPermission('AddArticle')) {\n    camp_html_display_error($translator->trans(\"You do not have the right to add articles.\"));\n    exit;\n}\n\n// Get input\n$f_publication_id = Input::Get('f_publication_id', 'int', 0, true);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0, true);\n$f_section_number = Input::Get('f_section_number', 'int', 0, true);\n$f_language_id = Input::Get('f_language_id', 'int', 0, true);\n\n// For choosing the article location.\n$f_destination_publication_id = Input::Get('f_destination_publication_id', 'int', 0, true);\n$f_destination_issue_number = Input::Get('f_destination_issue_number', 'int', 0, true);\n$f_destination_section_number = Input::Get('f_destination_section_number', 'int', 0, true);\n\n$f_article_name = trim(Input::Get('f_article_name', 'string', ''));\n$f_article_type = trim(Input::Get('f_article_type', 'string', ''));\n$f_article_language = trim(Input::Get('f_article_language', 'int', 0));\n\n$f_language_id = ($f_language_id > 0) ? $f_language_id : $f_article_language;\n\n$linkArgs = '?f_article_name=' . urlencode($f_article_name)\n    . '&f_article_type=' . urlencode($f_article_type)\n    . \"&f_article_language=$f_article_language\";\nif ($f_publication_id != 0) {\n    $linkArgs .= \"&f_publication_id=$f_publication_id\"\n        . \"&f_issue_number=$f_issue_number\"\n        . \"&f_section_number=$f_section_number\"\n        . \"&f_language_id=$f_language_id\";\n    $backLink = \"/$ADMIN/articles/add.php\" . $linkArgs;\n} else {\n    $backLink = \"/$ADMIN/articles/add_move.php\" . $linkArgs;\n}\n\n// Check input\nif (empty($f_article_name)) {\n    camp_html_add_msg($translator->trans('You must fill in the $1 field.', array('$1' => '<B>'.$translator->trans('Name').'</B>')));\n}\n\nif (empty($f_article_type)) {\n    camp_html_add_msg($translator->trans('You must select an article type.'));\n}\n\nif (empty($f_article_language)) {\n    camp_html_add_msg($translator->trans('You must select a language.'));\n}\n\nif (camp_html_has_msgs()) {\n    camp_html_goto_page($backLink);\n}\n\n$articleType = new ArticleType($f_article_type);\nif (!$articleType->exists()) {\n    camp_html_display_error($translator->trans('Invalid type: $1', array('$1' => $f_article_type), 'articles'));\n}\n\n$publication_id = ($f_destination_publication_id > 0) ? $f_destination_publication_id : $f_publication_id;\n$issue_number = ($f_destination_issue_number > 0) ? $f_destination_issue_number : $f_issue_number;\n$section_number = ($f_destination_section_number > 0) ? $f_destination_section_number : $f_section_number;\n\nif ($publication_id > 0) {\n    $publicationObj = new Publication($publication_id);\n    if (!$publicationObj->exists()) {\n        camp_html_display_error($translator->trans('Publication does not exist.'));\n        exit;\n    }\n\n    if ($issue_number > 0) {\n        $issueObj = new Issue($publication_id, $f_article_language, $issue_number);\n        if (!$issueObj->exists()) {\n            camp_html_display_error($translator->trans('Issue does not exist.'));\n            exit;\n        }\n\n        if ($section_number > 0) {\n            $sectionObj = new Section($publication_id, $issue_number, $f_article_language, $section_number);\n            if (!$sectionObj->exists()) {\n                camp_html_display_error($translator->trans('Section does not exist.'));\n                exit;\n            }\n        }\n    }\n}\n\n// Create article\n$articleObj = new Article($f_article_language);\n\n$conflictingArticles = Article::GetByName($f_article_name, $publication_id, $issue_number, $section_number, null, true);\nif (count($conflictingArticles) > 0) {\n    $conflictingArticle = array_pop($conflictingArticles);\n    $conflictingArticleLink = camp_html_article_url($conflictingArticle, $conflictingArticle->getLanguageId(), 'edit.php');\n    camp_html_add_msg($translator->trans(\"You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.\",\n         array('$1' => \"<a href='$conflictingArticleLink'>\".$conflictingArticle->getName().\"</a>\"), 'articles'));\n    camp_html_goto_page($backLink);\n} else {\n    $articleObj->create($f_article_type, $f_article_name, $publication_id, $issue_number, $section_number);\n}\n\nif ($articleObj->exists()) {\n    $em = $this->_helper->service('em');\n    $currentUser = $this->_helper->service('user')->getCurrentUser();\n    $author = $currentUser->getAuthorId();\n    $articleObj->setCreatorId($g_user->getUserId());\n    if (empty($author)) {\n        $authorObj = new Author($g_user->getRealName());\n        if (!$authorObj->exists()) {\n            $authorData = Author::ReadName($g_user->getRealName());\n            $authorData['email'] = $g_user->getEmail();\n            $authorObj->create($authorData);\n        } else {\n            $authorUser = $em->getRepository('Newscoop\\Entity\\Author')\n                ->findOneById($authorObj->getId());\n\n            $currentUser->setAuthor($authorUser);\n            $em->flush();\n        }\n    } else {\n        $authorObj = new Author($author);\n    }\n\n    if ($authorObj->exists()) {\n        $articleObj->setAuthor($authorObj);\n    }\n\n    $articleObj->setIsPublic(true);\n    if ($publication_id > 0) {\n        $commentDefault = $publicationObj->commentsArticleDefaultEnabled();\n        $articleObj->setCommentsEnabled($commentDefault);\n    }\n\n    camp_html_add_msg($translator->trans(\"Article created.\", array(), 'articles'), \"ok\");\n\n    $editorService = \\Zend_Registry::get('container')->getService('newscoop.editor');\n    $articleLink = $editorService->getLink($articleObj);\n    camp_html_goto_page($articleLink, false);\n    ArticleIndex::RunIndexer(3, 10, true);\n    exit();\n} else {\n    camp_html_display_error($translator->trans(\"Could not create article.\", array(), 'articles'));\n}\n"
  },
  {
    "path": "newscoop/admin-files/articles/do_article_action.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/article_common.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n$f_publication_id = Input::Get('f_publication_id', 'int', 0, true);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0, true);\n$f_section_number = Input::Get('f_section_number', 'int', 0, true);\n$f_language_id = Input::Get('f_language_id', 'int', 0, true);\n\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n$f_article_number = Input::Get('f_article_number', 'int', 0);\n$f_action = Input::Get('f_action', 'string', null, true);\n$f_action_workflow = Input::Get('f_action_workflow', 'string', null, true);\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())));\n\texit;\n}\n\nif (is_null($f_action) && is_null($f_action_workflow)) {\n\tcamp_html_display_error($translator->trans('No action specified', array(), 'articles'));\n\texit;\n}\n\n$articleObj = new Article($f_language_selected, $f_article_number);\nif (!$articleObj->exists()) {\n\t$BackLink = \"/$ADMIN/articles/index.php?f_publication_id=$f_publication_id&f_issue_number=$f_issue_number&f_language_id=$f_language_id&f_section_number=$f_section_number\";\n\tcamp_html_display_error($translator->trans('Article does not exist.'), $BackLink);\n\texit;\n}\n\nswitch ($f_action) {\n\tcase \"unlock\":\n\t\t// If the user does not have permission to change the article\n\t\t// or they didnt create the article, give them the boot.\n\t\tif (!$articleObj->userCanModify($g_user)) {\n\t\t\tcamp_html_add_msg($translator->trans(\"You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.\", array(), 'articles'));\n\t\t} else {\n\t\t\tcamp_html_add_msg($translator->trans(\"Article unlocked.\", array(), 'articles'), \"ok\");\n\t\t\t$articleObj->setIsLocked(false);\n\n\t\t\t\\Zend_Registry::get('container')->getService('dispatcher')\n\t\t        ->dispatch('article.unlock', new \\Newscoop\\EventDispatcher\\Events\\GenericEvent($this, array(\n\t\t            'article' => $articleObj\n\t\t        )));\n\t\t}\n\t\tcamp_html_goto_page(camp_html_article_url($articleObj, $f_language_id, \"edit.php\", \"\", \"&f_unlock=true\"));\n\t\texit;\n\tcase \"delete\":\n\t\tif (!$g_user->hasPermission('DeleteArticle')) {\n\t\t\tcamp_html_add_msg($translator->trans(\"You do not have the right to delete articles.\", array(), 'articles'));\n\t\t\tcamp_html_goto_page(camp_html_article_url($articleObj, $f_language_id, \"edit.php\"));\n\t\t} else {\n\t\t\t$creatorId = $articleObj->getCreatorId();\n\t\t\t$articleObj->delete();\n\t\t\t\\Zend_Registry::get('container')->getService('dispatcher')\n                ->dispatch('user.set_points', new \\Newscoop\\EventDispatcher\\Events\\GenericEvent(null, array('user' => $creatorId)));\n\t\t\tif ($f_publication_id > 0) {\n\t\t\t\t$url = \"/$ADMIN/articles/index.php\"\n\t\t\t\t\t\t.\"?f_publication_id=$f_publication_id\"\n\t\t\t\t\t\t.\"&f_issue_number=$f_issue_number\"\n\t\t\t\t\t\t.\"&f_section_number=$f_section_number\"\n\t\t\t\t\t\t.\"&f_language_id=$f_language_id\";\n\t\t\t} else {\n\t\t\t\t$url = \"/$ADMIN/home.php\";\n\t\t\t}\n\t\t\tcamp_html_add_msg($translator->trans(\"Article deleted.\", array(), 'articles'), \"ok\");\n\t\t\tcamp_html_goto_page($url);\n\t\t}\n\t\texit;\n\tcase \"translate\":\n\t\t$args = $_REQUEST;\n\t\tunset($args[SecurityToken::SECURITY_TOKEN]);\n\t\t$argsStr = camp_implode_keys_and_values($args, \"=\", \"&\");\n\t\t$argsStr .= \"&f_article_code=\".$f_article_number.\"_\".$f_language_selected;\n\t\tcamp_html_goto_page(\"/$ADMIN/articles/translate.php?\".$argsStr, false);\n\t\tArticleIndex::RunIndexer(3, 10, true);\n\t\texit;\n\tcase \"copy\":\n\t\t$args = $_REQUEST;\n\t\tunset($args[SecurityToken::SECURITY_TOKEN]);\n\t\t$argsStr = camp_implode_keys_and_values($args, \"=\", \"&\");\n\t\t$argsStr .= \"&f_article_code[]=\".$f_article_number.\"_\".$f_language_selected;\n\t\t$argsStr .= \"&f_mode=single&f_action=duplicate\";\n\t\tcamp_html_goto_page(\"/$ADMIN/articles/duplicate.php?\".$argsStr, false);\n\t\tArticleIndex::RunIndexer(3, 10, true);\n\t\texit;\n\tcase \"move\":\n\t\t$args = $_REQUEST;\n\t\tunset($args[SecurityToken::SECURITY_TOKEN]);\n\t\t$argsStr = camp_implode_keys_and_values($args, \"=\", \"&\");\n\t\t$argsStr .= \"&f_article_code[]=\".$f_article_number.\"_\".$f_language_selected;\n\t\t$argsStr .= \"&f_mode=single&f_action=move\";\n\t\tcamp_html_goto_page(\"/$ADMIN/articles/duplicate.php?\".$argsStr, false);\n\t\tArticleIndex::RunIndexer(3, 10, true);\n\t\texit;\n}\n\nif (!is_null($f_action_workflow)) {\n\t$f_action_workflow = strtoupper($f_action_workflow);\n\tif (in_array($f_action_workflow, array('Y', 'M', 'S', 'N'))) {\n\t\t$access = false;\n\t\t// A publisher can change the status in any way he sees fit.\n\t\t// Someone who can change an article can submit/unsubmit articles.\n\t\t// A user who owns the article may submit it.\n\t\tif ($g_user->hasPermission('Publish')\n\t\t\t|| ($g_user->hasPermission('ChangeArticle') && ($f_action_workflow != 'Y'))\n\t\t\t|| ($articleObj->userCanModify($g_user) && ($f_action_workflow == 'S') )) {\n\t\t\t$access = true;\n\t\t}\n\n\t\t// If the article is set to New, remove all the autopublish events\n\t\tif ( $f_action_workflow == 'N') {\n            $articleEvents = ArticlePublish::GetArticleEvents($f_article_number, $f_language_selected, TRUE);\n            foreach($articleEvents as $event) {\n                $eventId = $event->getArticlePublishId();\n                $articlePublishObj = new ArticlePublish($eventId);\n\t\t\t\tif ($articlePublishObj->exists()) {\n\t\t\t\t    $articlePublishObj->delete();\n\t\t\t\t}\n            }\n\t\t}\n\n\t\tif (!$access) {\n\t\t\tcamp_html_add_msg($translator->trans(\"You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.\", array(), 'articles'));\n\t\t\tcamp_html_goto_page(camp_html_article_url($articleObj, $f_language_id, \"edit.php\"));\n\t\t}\n\n\t\t// If the article is not yet categorized, force it to be before publication.\n\t\tif (($f_action_workflow == \"Y\" || $f_action_workflow == 'M') && (($articleObj->getPublicationId() == 0) || ($articleObj->getIssueNumber() == 0) || ($articleObj->getSectionNumber() == 0))) {\n\t\t\t$args = $_REQUEST;\n\t\t\t$argsStr = camp_implode_keys_and_values($_REQUEST, \"=\", \"&\");\n\t\t\t$argsStr .= \"&f_article_code[]=\".$f_article_number.\"_\".$f_language_selected;\n\t\t\t$argsStr .= \"&f_mode=single&f_action=publish\";\n\t\t\tcamp_html_goto_page(\"/$ADMIN/articles/duplicate.php?\".$argsStr);\n\t\t}\n        else if (($f_action_workflow == \"S\") && (($articleObj->getPublicationId() == 0) || ($articleObj->getIssueNumber() == 0) || ($articleObj->getSectionNumber() == 0))) {\n\t\t\t$args = $_REQUEST;\n\t\t\t$argsStr = camp_implode_keys_and_values($_REQUEST, \"=\", \"&\");\n\t\t\t$argsStr .= \"&f_article_code[]=\".$f_article_number.\"_\".$f_language_selected;\n\t\t\t$argsStr .= \"&f_mode=single&f_action=submit\";\n\t\t\tcamp_html_goto_page(\"/$ADMIN/articles/duplicate.php?\".$argsStr);\n\t\t}\n\n\t\t$articleObj->setWorkflowStatus($f_action_workflow);\n\n\t\t// Make sure that the time stamp is updated.\n\t\t$articleObj->setProperty('time_updated', 'NOW()', true, true);\n\n\t\t$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n\t\t$cacheService->clearNamespace('article');\n\n\t\tcamp_html_add_msg($translator->trans(\"Article status set to $1\", array('$1' => $articleObj->getWorkflowDisplayString()), 'articles'), \"ok\");\n\t}\n\t$url = camp_html_article_url($articleObj, $f_language_id, \"edit.php\");\n\tcamp_html_goto_page($url);\n}\n\n?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/do_article_list_action.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/article_common.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Get input\n$f_publication_id = Input::Get('f_publication_id', 'int', 0);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0);\n$f_section_number = Input::Get('f_section_number', 'int', 0);\n$f_language_id = Input::Get('f_language_id', 'int', 0);\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n$f_article_codes = Input::Get('f_article_code', 'array', array(), true);\n$f_article_list_action = Input::Get('f_article_list_action');\n$f_total_articles = Input::Get('f_total_articles', 'int', 0);\n$offsetVarName = \"f_article_offset_\".$f_publication_id.\"_\".$f_issue_number.\"_\".$f_language_id.\"_\".$f_section_number;\n$f_article_offset = camp_session_get($offsetVarName, 0);\n$ArticlesPerPage = 15;\n\nif (sizeof($f_article_codes) == 0) {\n\tcamp_html_add_msg('You must select at least one article to perform an action.');\n\tcamp_html_goto_page(\"/$ADMIN/articles/?f_publication_id=$f_publication_id&f_issue_number=$f_issue_number\"\n\t\t\t\t.\"&f_section_number=$f_section_number&f_language_id=$f_language_id\");\n\texit(0);\n}\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())));\n\texit;\n}\n\nif ($f_article_offset < 0) {\n\t$f_article_offset = 0;\n}\n\n// Validate permissions\nswitch ($f_article_list_action) {\ncase \"delete\":\n\tif (!$g_user->hasPermission('DeleteArticle')) {\n\t\tcamp_html_display_error($translator->trans(\"You do not have the right to delete articles.\", array(), 'articles'));\n\t\texit;\n\t}\n\tbreak;\ncase \"publish\":\n\tif (!$g_user->hasPermission('Publish')) {\n\t\t$errorStr = $translator->trans(\"You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.\", array(), 'articles');\n\t\tcamp_html_display_error($errorStr, $BackLink);\n\t\texit;\n\t}\n\tbreak;\ncase \"copy\":\ncase \"copy_interactive\":\n\tif (!$g_user->hasPermission('AddArticle')) {\n\t\t$errorStr = $translator->trans(\"You do not have the right to add articles.\");\n\t\tcamp_html_display_error($errorStr, $BackLink);\n\t\texit;\n\t}\n\tbreak;\n}\n\n\n$articleCodes = array();\n$groupedArticleCodes = array();\nforeach ($f_article_codes as $code) {\n\tlist($articleId, $languageId) = explode(\"_\", $code);\n\t$articleCodes[] = array(\"article_id\" => $articleId, \"language_id\" => $languageId);\n\t$groupedArticleCodes[$articleId][$languageId] = $languageId;\n}\n\nswitch ($f_article_list_action) {\ncase \"workflow_new\":\n\tforeach ($articleCodes as $articleCode) {\n\t\t$articleObj = new Article($articleCode['language_id'], $articleCode['article_id']);\n\t\t// A publisher can change the status in any way he sees fit.\n\t\t// Someone who can change an article can submit/unsubmit articles.\n\t\tif ($g_user->hasPermission('Publish')\n\t\t\t|| ($g_user->hasPermission('ChangeArticle') && ($articleObj->getWorkflowStatus() == 'S'))) {\n\t\t\t$articleObj->setWorkflowStatus('N');\n\t\t\t$articleObj->setProperty('time_updated', 'NOW()', true, true);\n\t\t}\n\t}\n\tcamp_html_add_msg($translator->trans(\"Article status set to $1\", array('$1' => $translator->trans(\"New\")), 'articles'), \"ok\");\n\tbreak;\ncase \"workflow_submit\":\n\tforeach ($articleCodes as $articleCode) {\n\t\t$articleObj = new Article($articleCode['language_id'], $articleCode['article_id']);\n\t\t// A user who owns the article may submit it.\n\t\tif ($g_user->hasPermission(\"Publish\") || $articleObj->userCanModify($g_user)) {\n\t\t\t$articleObj->setWorkflowStatus('S');\n\t\t\t$articleObj->setProperty('time_updated', 'NOW()', true, true);\n\t\t}\n\t}\n\tcamp_html_add_msg($translator->trans(\"Article status set to $1\", array('$1' => $translator->trans(\"Submitted\")), 'articles'), \"ok\");\n\tbreak;\ncase \"workflow_publish\":\n\tforeach ($articleCodes as $articleCode) {\n\t\t$articleObj = new Article($articleCode['language_id'], $articleCode['article_id']);\n\t\t$articleObj->setWorkflowStatus('Y');\n\t\t$articleObj->setProperty('time_updated', 'NOW()', true, true);\n\n        \\Zend_Registry::get('container')->getService('dispatcher')\n            ->dispatch('article.publish', new \\Newscoop\\EventDispatcher\\Events\\GenericEvent($this, array(\n                'article' => $articleObj\n            )));\n\t}\n\tcamp_html_add_msg($translator->trans(\"Article status set to $1\", array('$1' => $translator->trans(\"Published\")), 'articles'), \"ok\");\n\tbreak;\ncase \"delete\":\n\tforeach ($articleCodes as $articleCode) {\n\t\t$articleObj = new Article($articleCode['language_id'], $articleCode['article_id']);\n\t\t$articleObj->delete();\n\t}\n\tif ($f_article_offset > 15\n\t    && (count($articleCodes) + $f_article_offset) == $f_total_articles) {\n\t\t$f_article_offset -= $ArticlesPerPage;\n\t}\n\tcamp_html_add_msg($translator->trans(\"Article(s) deleted.\", array(), 'articles'), \"ok\");\n\tbreak;\ncase \"toggle_front_page\":\n\tforeach ($articleCodes as $articleCode) {\n\t\t$articleObj = new Article($articleCode['language_id'], $articleCode['article_id']);\n\t\tif ($articleObj->userCanModify($g_user)) {\n\t\t\t$articleObj->setOnFrontPage(!$articleObj->onFrontPage());\n\t\t}\n\t}\n\tcamp_html_add_msg($translator->trans(\"$1 toggled.\", array('$1' => \"&quot;\".$translator->trans(\"On Front Page\").\"&quot;\"), 'articles'), \"ok\");\n\tbreak;\ncase \"toggle_section_page\":\n\tforeach ($articleCodes as $articleCode) {\n\t\t$articleObj = new Article($articleCode['language_id'], $articleCode['article_id']);\n\t\tif ($articleObj->userCanModify($g_user)) {\n\t\t\t$articleObj->setOnSectionPage(!$articleObj->onSectionPage());\n\t\t}\n\t}\n\tcamp_html_add_msg($translator->trans(\"$1 toggled.\", array('$1' => \"&quot;\".$translator->trans(\"On Section Page\").\"&quot;\"), 'articles'), \"ok\");\n\tbreak;\ncase \"toggle_comments\":\n\tforeach ($articleCodes as $articleCode) {\n\t\t$articleObj = new Article($articleCode['language_id'], $articleCode['article_id']);\n\t\tif ($articleObj->userCanModify($g_user)) {\n\t\t\t$articleObj->setCommentsEnabled(!$articleObj->commentsEnabled());\n\t\t}\n\t}\n\tcamp_html_add_msg($translator->trans(\"$1 toggled.\", array('$1' => \"&quot;\".$translator->trans(\"Comments\").\"&quot;\"), 'articles'), \"ok\");\n\tbreak;\ncase \"copy\":\n\tforeach ($groupedArticleCodes as $articleNumber => $languageArray) {\n\t\t$languageId = camp_array_peek($languageArray);\n\t\t$articleObj = new Article($languageId, $articleNumber);\n\t\t$articleObj->copy($articleObj->getPublicationId(),\n\t\t\t\t\t\t  $articleObj->getIssueNumber(),\n\t\t\t\t\t\t  $articleObj->getSectionNumber(),\n\t\t\t\t\t\t  $g_user->getUserId(),\n\t\t\t\t\t\t  $languageArray);\n\n        \\Zend_Registry::get('container')->getService('dispatcher')\n            ->dispatch('article.duplicate', new \\Newscoop\\EventDispatcher\\Events\\GenericEvent($this, array(\n                'article' => $articleObj,\n                'orginal_article_number' => $articleNumber\n            )));\n\n\t\tcamp_html_add_msg($translator->trans(\"Article(s) duplicated.\", array(), 'articles'), \"ok\");\n\t}\n\tcamp_session_set($offsetVarName, 0);\n\tbreak;\ncase \"copy_interactive\":\n\t$args = $_REQUEST;\n\tunset($args[SecurityToken::SECURITY_TOKEN]);\n\tunset($args[\"f_article_code\"]);\n\t$argsStr = camp_implode_keys_and_values($args, \"=\", \"&\");\n\t$argsStr .= \"&f_mode=multi&f_action=duplicate\";\n\tforeach ($_REQUEST[\"f_article_code\"] as $code) {\n\t\t$argsStr .= \"&f_article_code[]=$code\";\n\t}\n\tcamp_session_set($offsetVarName, 0);\n\tcamp_html_goto_page(\"/$ADMIN/articles/duplicate.php?\".$argsStr);\ncase \"move\":\n\t$args = $_REQUEST;\n\tunset($args[SecurityToken::SECURITY_TOKEN]);\n\tunset($args[\"f_article_code\"]);\n\t$argsStr = camp_implode_keys_and_values($args, \"=\", \"&\");\n\t$argsStr .= \"&f_mode=multi&f_action=move\";\n\tforeach ($_REQUEST[\"f_article_code\"] as $code) {\n\t\t$argsStr .= \"&f_article_code[]=$code\";\n\t}\n\tcamp_session_set($offsetVarName, 0);\n\tcamp_html_goto_page(\"/$ADMIN/articles/duplicate.php?\".$argsStr);\ncase \"unlock\":\n\tforeach ($articleCodes as $articleCode) {\n\t\t$articleObj = new Article($articleCode['language_id'], $articleCode['article_id']);\n\t\tif ($articleObj->userCanModify($g_user)) {\n\t\t\t$articleObj->setIsLocked(false);\n\t\t}\n\t}\n\tcamp_html_add_msg($translator->trans(\"Article(s) unlocked.\", array(), 'articles'), \"ok\");\n\tbreak;\ncase \"context_box_update\":\n\tcamp_html_add_msg($translator->trans(\"Context Box updated\", array(), 'articles'), \"ok\");\n\tbreak;\ncase \"schedule_publish\":\n\t$args = $_REQUEST;\n\tunset($args[SecurityToken::SECURITY_TOKEN]);\n\tunset($args[\"f_article_code\"]);\n\t$argsStr = camp_implode_keys_and_values($args, \"=\", \"&\");\n\tforeach ($_REQUEST[\"f_article_code\"] as $code) {\n\t\t$argsStr .= \"&f_article_code[]=$code\";\n\t}\n\tcamp_html_goto_page(\"/$ADMIN/articles/multi_autopublish.php?\".$argsStr);\ncase \"translate\":\n\t$args = $_REQUEST;\n\tunset($args[SecurityToken::SECURITY_TOKEN]);\n\tunset($args[\"f_article_code\"]);\n\t$argsStr = camp_implode_keys_and_values($args, \"=\", \"&\");\n\tforeach ($_REQUEST[\"f_article_code\"] as $code) {\n\t\t$argsStr .= \"&f_article_code=$code\";\n\t\tbreak;\n\t}\n\tcamp_html_goto_page(\"/$ADMIN/articles/translate.php?\".$argsStr);\n}\n\n$backUrl = \"/$ADMIN/articles/index.php?f_publication_id=$f_publication_id\"\n\t.  \"&f_issue_number=$f_issue_number&f_section_number=$f_section_number\"\n\t.  \"&f_language_id=$f_language_id&f_language_selected=$f_language_selected\"\n\t.  \"&$offsetVarName=$f_article_offset\";\ncamp_html_goto_page($backUrl);\n?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/do_edit.php",
    "content": "<?php\ndefine(\"STATUS_APPROVED\",\"approved\");\ndefine(\"STATUS_HIDDEN\",\"hidden\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/articles/article_common.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n$f_publication_id = Input::Get('f_publication_id', 'int', 0, true);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0, true);\n$f_section_number = Input::Get('f_section_number', 'int', 0, true);\n$f_language_id = Input::Get('f_language_id', 'int', 0, true);\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n$f_article_number = Input::Get('f_article_number', 'int', 0);\n$f_article_author = Input::Get('f_article_author', 'array', array(), true);\n$f_article_author_type = Input::Get('f_article_author_type', 'array', array(), true);\n$f_on_front_page = Input::Get('f_on_front_page', 'string', '', true);\n$f_on_section_page = Input::Get('f_on_section_page', 'string', '', true);\n$f_is_public = Input::Get('f_is_public', 'string', '', true);\n$f_keywords = Input::Get('f_keywords');\n$f_article_title = Input::Get('f_article_title');\n$f_message = Input::Get('f_message', 'string', '', true);\n$f_creation_date = Input::Get('f_creation_date');\n$f_publish_date = Input::Get('f_publish_date');\n$f_comment_status = Input::Get('f_comment_status', 'string', '', true);\nif (isset($_REQUEST['save_and_close'])) {\n\t$f_save_button = 'save_and_close';\n\t$BackLink = \"/$ADMIN/articles/index.php?f_publication_id=$f_publication_id&f_issue_number=$f_issue_number&f_language_id=$f_language_id&f_section_number=$f_section_number\";\n} else {\n\t$f_save_button = 'save';\n\t$BackLink = \"/$ADMIN/\";\n}\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $BackLink);\n\texit;\n}\n\n// Fetch article\n$articleObj = new Article($f_language_selected, $f_article_number);\nif (!$articleObj->exists()) {\n\tcamp_html_display_error($translator->trans('No such article.', array(), 'articles'), $BackLink);\n\texit;\n}\n\n$articleTypeObj = $articleObj->getArticleData();\n$dbColumns = $articleTypeObj->getUserDefinedColumns(false, true);\n\n$articleFields = array();\nforeach ($dbColumns as $dbColumn) {\n    if ($dbColumn->getType() == ArticleTypeField::TYPE_BODY) {\n        $dbColumnParam = $dbColumn->getName() . '_' . $f_article_number;\n    } else {\n        $dbColumnParam = $dbColumn->getName();\n    }\n    if (isset($_REQUEST[$dbColumnParam])) {\n        if($dbColumn->getType() == ArticleTypeField::TYPE_TEXT\n            && $dbColumn->getMaxSize()!=0\n            && $dbColumn->getMaxSize()!='') {\n                $articleFields[$dbColumn->getName()] = substr(trim(Input::Get($dbColumnParam)), 0, $dbColumn->getMaxSize());\n            }\n        else\n    \t    $articleFields[$dbColumn->getName()] = trim(Input::Get($dbColumnParam));\n    } else {\n    \t$articleFields[$dbColumn->getName()] = null;\n    }\n}\n\nif (!empty($f_message)) {\n\tcamp_html_add_msg($f_message, \"ok\");\n}\n\nif (!$articleObj->userCanModify($g_user)) {\n\tcamp_html_add_msg($translator->trans(\"You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.\", array(), 'articles'));\n\tcamp_html_goto_page($BackLink);\n\texit;\n}\n// Only users with a lock on the article can change it.\nif ($articleObj->isLocked() && ($g_user->getUserId() != $articleObj->getLockedByUser())) {\n\t$diffSeconds = time() - strtotime($articleObj->getLockTime());\n\t$hours = floor($diffSeconds/3600);\n\t$diffSeconds -= $hours * 3600;\n\t$minutes = floor($diffSeconds/60);\n\t$lockUser = new User($articleObj->getLockedByUser());\n\tcamp_html_add_msg($translator->trans('Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.', array('$1' => $lockUser->getRealName(), '$2' => $hours, '$3' => $minutes), 'articles'));\n\tcamp_html_goto_page($BackLink);\n\texit;\n}\n\n// Update the article author\nif (!empty($f_article_author)) {\n    ArticleAuthor::OnArticleLanguageDelete($articleObj->getArticleNumber(), $articleObj->getLanguageId());\n    $i = 0;\n    foreach ($f_article_author as $author) {\n        $authorObj = new Author($author);\n        if (!$authorObj->exists()  && strlen(trim($author)) > 0) {\n            $authorData = Author::ReadName($author);\n            $authorObj->create($authorData);\n        }\n        // Sets the author type selected\n        $author_type = $f_article_author_type[$i];\n        $authorObj->setType($author_type);\n        // Links the author to the article\n        $articleAuthorObj = new ArticleAuthor($articleObj->getArticleNumber(),\n                                              $articleObj->getLanguageId(),\n                                              $authorObj->getId(), $author_type);\n        if (!$articleAuthorObj->exists()) {\n            $articleAuthorObj->create();\n        }\n        $i++;\n    }\n}\n\n// Update the article.\n$articleObj->setOnFrontPage(!empty($f_on_front_page));\n$articleObj->setOnSectionPage(!empty($f_on_section_page));\n$articleObj->setIsPublic(!empty($f_is_public));\n$articleObj->setKeywords($f_keywords);\n$articleObj->setTitle($f_article_title);\n$articleObj->setIsIndexed(false);\nif (!empty($f_comment_status)) {\n    if ($f_comment_status == \"enabled\" || $f_comment_status == \"locked\") {\n        $commentsEnabled = true;\n    } else {\n        $commentsEnabled = false;\n    }\n    // If status has changed, then you need to show/hide all the comments\n    // as appropriate.\n    if ($articleObj->commentsEnabled() != $commentsEnabled) {\n\t    $articleObj->setCommentsEnabled($commentsEnabled);\n        global $controller;\n        $repository = $controller->getHelper('entity')->getRepository('Newscoop\\Entity\\Comment');\n\t    $repository->setArticleStatus($f_article_number, $f_language_selected, $commentsEnabled?STATUS_APPROVED:STATUS_HIDDEN);\n\t    $repository->flush();\n    }\n    $articleObj->setCommentsLocked($f_comment_status == \"locked\");\n}\n\n// Make sure that the time stamp is updated.\n$articleObj->setProperty('time_updated', 'NOW()', true, true);\n\n// Verify creation date is in the correct format.\n// If not, dont change it.\nif (preg_match(\"/\\d{4}-\\d{2}-\\d{2}/\", $f_creation_date)) {\n\t$articleObj->setCreationDate($f_creation_date);\n}\n\n// Verify publish date is in the correct format.\n// If not, dont change it.\nif (preg_match(\"/\\d{4}-\\d{2}-\\d{2}/\", $f_publish_date)) {\n\t$articleObj->setPublishDate($f_publish_date);\n}\n\nforeach ($articleFields as $dbColumnName => $text) {\n\t$articleTypeObj->setProperty($dbColumnName, $text);\n}\n\n$articleObj->setIsLocked(false);\n\nLog::ArticleMessage($articleObj, $translator->trans('Content edited', array(), 'articles'), $g_user->getUserId(), 37);\n\nif ($f_save_button == \"save\") {\n\tcamp_html_goto_page(camp_html_article_url($articleObj, $f_language_id, 'edit.php'), false);\n} elseif ($f_save_button == \"save_and_close\") {\n\tif ($f_publication_id > 0) {\n\t\tcamp_html_goto_page(camp_html_article_url($articleObj, $f_language_id, 'index.php'), false);\n\t} else {\n\t\tcamp_html_goto_page(\"/$ADMIN/\", false);\n\t}\n}\n\n$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n$cacheService->clearNamespace('article');\n\nArticleIndex::RunIndexer(3, 10, true);\n\n?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/do_position.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/articles/article_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/classes/Log.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Check permissions\nif (!$g_user->hasPermission('Publish')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.\" , array(), 'articles'));\n\texit;\n}\n\n// Get input\n$f_publication_id = Input::Get('f_publication_id', 'int', 0);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0);\n$f_section_number = Input::Get('f_section_number', 'int', 0);\n$f_language_id = Input::Get('f_language_id', 'int', 0);\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n$f_article_language = Input::Get('f_article_language', 'int', 0);\n$f_article_number = Input::Get('f_article_number', 'int', 0);\n$f_move = Input::Get('f_move', 'string', 'up_rel');\n$f_position = Input::Get('f_position', 'int', 1, true);\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())));\n\texit;\n}\n\n\n$publicationObj = new Publication($f_publication_id);\nif (!$publicationObj->exists()) {\n\tcamp_html_display_error($translator->trans('Publication does not exist.'));\n\texit;\n}\n\n$issueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\nif (!$issueObj->exists()) {\n\tcamp_html_display_error($translator->trans('Issue does not exist.'));\n\texit;\n}\n\n$sectionObj = new Section($f_publication_id, $f_issue_number, $f_language_id, $f_section_number);\nif (!$sectionObj->exists()) {\n\tcamp_html_display_error($translator->trans('Section does not exist.'));\n\texit;\n}\n\n$articleObj = new Article($f_article_language, $f_article_number);\nif (!$articleObj->exists()) {\n\tcamp_html_display_error($translator->trans('Article does not exist.'));\n\texit;\n}\n\nswitch ($f_move) {\ncase 'up_rel':\n\t$articleObj->positionRelative('up', 1);\n\tbreak;\ncase 'down_rel':\n\t$articleObj->positionRelative('down', 1);\n\tbreak;\ncase 'abs':\n\t$articleObj->positionAbsolute($f_position);\n\tbreak;\ndefault: ;\n}\n\n$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n$cacheService->clearNamespace('article');\n\n$url = \"/$ADMIN/articles/index.php\"\n\t\t.\"?f_publication_id=\".$articleObj->getPublicationId()\n\t\t.\"&f_issue_number=\".$articleObj->getIssueNumber()\n\t\t.\"&f_section_number=\".$articleObj->getSectionNumber()\n\t\t.\"&f_article_number=\".$articleObj->getArticleNumber()\n\t\t.\"&f_language_selected=$f_language_selected\"\n\t\t.\"&f_language_id=\".$f_language_id;\ncamp_html_add_msg($translator->trans(\"Article order changed.\", array(), 'articles'), \"ok\");\ncamp_html_goto_page($url);\n?>"
  },
  {
    "path": "newscoop/admin-files/articles/do_translate.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/articles/article_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nif (!$g_user->hasPermission(\"AddArticle\")) {\n    $errorStr = $translator->trans('You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.', array(), 'articles');\n    camp_html_display_error($errorStr);\n    exit;\n}\n\n// Optional input.\n$f_language_id = Input::Get('f_language_id', 'int', 0, true);\n$f_publication_id = Input::Get('f_publication_id', 'int', 0, true);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0, true);\n$f_section_number = Input::Get('f_section_number', 'int', 0, true);\n\n// Required input.\n$f_article_code = Input::Get('f_article_code', 'string', 0);\n$f_translation_title = trim(Input::Get('f_translation_title'));\n$f_translation_language = Input::Get('f_translation_language');\nlist($articleNumber, $languageId) = explode(\"_\", $f_article_code);\n$backLink = \"/$ADMIN/articles/translate.php?f_language_id=$f_language_id\"\n        . \"&f_publication_id=$f_publication_id&f_issue_number=$f_issue_number\"\n        . \"&f_section_number=$f_section_number&f_article_code=$f_article_code\"\n        . \"&f_translation_title=$f_translation_title&f_translation_language=$f_translation_language\";\n\nif (!Input::IsValid()) {\n    camp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())));\n    exit;\n}\n\n$articleObj = new Article($languageId, $articleNumber);\nif (!$articleObj->exists()) {\n    camp_html_display_error($translator->trans('Article does not exist.'));\n    exit;\n}\n\n$translationLanguageObj = new Language($f_translation_language);\nif (!$translationLanguageObj->exists()) {\n    camp_html_display_error($translator->trans('Language does not exist.'));\n    exit;\n}\n\n$translationArticle = new Article($f_translation_language, $articleNumber);\nif ($translationArticle->exists()) {\n    camp_html_add_msg($translator->trans(\"The article has already been translated into $1.\", array('$1' => $translationLanguageObj->getNativeName()), 'articles'));\n    camp_html_goto_page($backLink);\n}\n\n$f_publication_id = $articleObj->getPublicationId();\n\n// Only create the translated issue and section if the article has been categorized.\nif ($f_publication_id > 0) {\n    $publicationObj = new Publication($f_publication_id);\n    if (!$publicationObj->exists()) {\n        camp_html_display_error($translator->trans('Publication does not exist.'), $backLink);\n        exit;\n    }\n\n    $f_issue_number = $articleObj->getIssueNumber();\n    $issueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\n    if (!$issueObj->exists()) {\n        camp_html_display_error($translator->trans('No such issue.'), $backLink);\n        exit;\n    }\n\n    $translationIssueObj = $issueObj->copy(null, $issueObj->getIssueNumber(), $f_translation_language);\n    if (!$translationIssueObj) {\n        $translationIssueObj = new Issue($f_publication_id, $f_translation_language, $f_issue_number);\n    }\n    \n    if (!$translationIssueObj->exists()) {\n        if (!$g_user->hasPermission(\"ManageIssue\")) {\n            camp_html_add_msg($translator->trans('An issue must be created for the selected language but you do not have the right to create an issue.', array(), 'articles'));\n            camp_html_goto_page($backLink);\n        }\n\n        foreach ($issueObj->getData() as $field=>$fieldValue) {\n            if ($field != 'IdLanguage') {\n                $translationIssueObj->setProperty($field, $fieldValue, false);\n            }\n        }\n\n        $f_issue_name = Input::Get('f_issue_name', 'string', '');\n        $f_issue_urlname = Input::Get('f_issue_urlname', 'string', $issueObj->getUrlName());\n        \n        if ($f_issue_name != '') {\n            $translationIssueObj->setName($f_issue_name);\n        }\n        \n        if ($f_issue_urlname == \"\") {\n            camp_html_add_msg($translator->trans('You must fill in the $1 field.', array('$1' => '\"'.$translator->trans('New issue URL name', array(), 'articles').'\"')));\n            camp_html_goto_page($backLink);\n        }\n\n        if (!camp_is_valid_url_name($f_issue_urlname)) {\n            camp_html_add_msg($translator->trans('The $1 field may only contain letters, digits and underscore (_) character.', array('$1' => '\"' . $translator->trans('New issue URL name', array(), 'articles') . '\"')));\n            camp_html_goto_page($backLink);\n        }\n\n        $translationIssueObj->create($f_issue_urlname);\n        if (!$translationIssueObj->exists()) {\n            camp_html_add_msg($translator->trans('Unable to create the issue for translation $1.', array('$1' => $translationLanguageObj->getName()), 'articles'));\n            camp_html_goto_page($backLink);\n        }\n    } else {\n        $f_issue_name = Input::Get('f_issue_name', 'string', $translationIssueObj->getName());\n        $f_issue_urlname = Input::Get('f_issue_urlname', 'string', $translationIssueObj->getUrlName());\n        \n        $translationIssueObj->update(array('Name' => $f_issue_name, 'ShortName' => $f_issue_urlname));\n    }\n\n    $f_section_number = $articleObj->getSectionNumber();\n    $sectionObj = new Section($f_publication_id, $f_issue_number, $f_language_id, $f_section_number);\n    if (!$sectionObj->exists()) {\n        camp_html_display_error($translator->trans('No such section.', array(), 'articles'), $backLink);\n        exit;\n    }\n\n    $translationSectionObj = new Section($f_publication_id, $f_issue_number, $f_translation_language, $f_section_number);\n    if (!$translationSectionObj->exists()) {\n        if (!$g_user->hasPermission(\"ManageSection\")) {\n            camp_html_add_msg($translator->trans('A section must be created for the selected language but you do not have the right to create a section.', array(), 'articles'));\n            camp_html_goto_page($backLink);\n        }\n\n        foreach ($sectionObj->getData() as $field=>$fieldValue) {\n            if (!in_array($field, array('IdLanguage', 'id'))) {\n                $translationSectionObj->setProperty($field, $fieldValue, false);\n            }\n        }\n\n        $f_section_name = Input::Get('f_section_name', 'string', $sectionObj->getName());\n        $f_section_urlname = Input::Get('f_section_urlname', 'string', $sectionObj->getUrlName());\n        if ($f_section_urlname == \"\") {\n            camp_html_add_msg($translator->trans('You must fill in the $1 field.', array('$1' => '\"'.$translator->trans('New section URL name', array(), 'articles').'\"')));\n            camp_html_goto_page($backLink);\n        }\n\n        if (!camp_is_valid_url_name($f_section_urlname)) {\n            camp_html_add_msg($translator->trans('The $1 field may only contain letters, digits and underscore (_) character.', array('$1' => '\"' . $translator->trans('New section URL name', array(), 'articles') . '\"')));\n            camp_html_goto_page($backLink);\n        }\n\n        $translationSectionObj->create($f_section_name, $f_section_urlname);\n        if (!$translationSectionObj->exists()) {\n            camp_html_add_msg($translator->trans('Unable to create the section for translation $1.', array('$1' => $translationLanguageObj->getName()), 'articles'));\n            camp_html_goto_page($backLink);\n        }\n    } else {\n        $f_section_name = Input::Get('f_section_name', 'string', $translationSectionObj->getName());\n        $f_section_urlname = Input::Get('f_section_urlname', 'string', $translationSectionObj->getUrlName());\n        \n        $translationSectionObj->update(array('Name' => $f_section_name, 'ShortName' => $f_section_urlname));\n    }\n}\n\nif($articleObj->translationTitleExists($f_translation_title, $f_translation_language)) {\n    camp_html_add_msg($translator->trans(\"There already is an article with the same name. Please change the name and try again.\", array(), 'articles'), \"ok\");\n    camp_html_goto_page($backLink);\n    exit();\n}\n\n$articleCopy = $articleObj->createTranslation($f_translation_language, $g_user->getUserId(), $f_translation_title);\n\n\\Zend_Registry::get('container')->getService('dispatcher')\n    ->dispatch('article.translate', new \\Newscoop\\EventDispatcher\\Events\\GenericEvent($this, array(\n        'article' => $articleCopy\n    )));\n\ncamp_html_add_msg($translator->trans(\"Article translation created.\", array(), 'articles'), \"ok\");\n\nArticleIndex::RunIndexer(3, 10, true);\ncamp_html_goto_page(camp_html_article_url($articleCopy, $f_translation_language, 'edit.php'), true);\n"
  },
  {
    "path": "newscoop/admin-files/articles/do_unlock.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/article_common.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n$f_publication_id = Input::Get('f_publication_id', 'int', 0);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0);\n$f_section_number = Input::Get('f_section_number', 'int', 0);\n$f_language_id = Input::Get('f_language_id', 'int', 0);\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n$f_article_number = Input::Get('f_article_number', 'int', 0);\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())));\n\texit;\n}\n\n$articleObj = new Article($f_language_selected, $f_article_number);\n\n// If the user does not have permission to change the article\n// or they didnt create the article, give them the boot.\nif (!$articleObj->userCanModify($g_user)) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.\", array(), 'articles'));\n\texit;\n}\n\n$articleObj->setIsLocked(false);\n\n$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n$cacheService->clearNamespace('article');\n\ncamp_html_add_msg($translator->trans(\"Article unlocked.\", array(), 'articles'), \"ok\");\ncamp_html_goto_page(camp_html_article_url($articleObj, $f_language_id, \"edit.php\", \"\", \"&Unlock=true\"));\n\n?>"
  },
  {
    "path": "newscoop/admin-files/articles/duplicate.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/article_common.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n// Optional input, for articles that are inside of sections.\n$f_publication_id = Input::Get('f_publication_id', 'int', 0, true);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0, true);\n$f_section_number = Input::Get('f_section_number', 'int', 0, true);\n$f_language_id = Input::Get('f_language_id', 'int', 0, true);\n\n\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n$f_article_code = Input::Get('f_article_code', 'array', array(), true);\n$f_destination_publication_id = Input::Get('f_destination_publication_id', 'int', 0, true);\n\n$f_destination_issue_number_language = explode('_', Input::Get('f_destination_issue_number', 'str', '0_'.$f_language_id, true));\n$f_destination_issue_number = $f_destination_issue_number_language[0];\n$f_destination_issue_language_id = $f_destination_issue_number_language[1];\n\n$f_destination_section_number = Input::Get('f_destination_section_number', 'int', 0, true);\n\n// $f_mode can be \"single\" or \"multi\".  This governs\n// the behavior of where the user goes after they perform the action.\n$f_mode = Input::Get('f_mode', 'string', 'single', true);\n\n// $f_action can be \"duplicate\", \"move\", or \"publish\".\n$f_action = Input::Get('f_action');\n\n//\n// Check permissions\n//\nif ($f_action == \"duplicate\") {\n\tif (!$g_user->hasPermission(\"AddArticle\")) {\n\t\tcamp_html_display_error($translator->trans(\"You do not have the right to add articles.\"));\n\t\texit;\n\t}\n} elseif ($f_action == \"move\") {\n\tif (!$g_user->hasPermission(\"MoveArticle\")) {\n\t\tcamp_html_display_error($translator->trans(\"You do not have the right to move articles.\", array(), 'articles'));\n\t\texit;\n\t}\n} elseif ($f_action == \"publish\") {\n\tif (!$g_user->hasPermission(\"Publish\")) {\n\t\tcamp_html_display_error($translator->trans(\"You do not have the right to publish articles.\", array(), 'articles'));\n\t\texit;\n\t}\n}\n\n// Article names can change from page request to page request.\n// We create $articleNames, a 2-dimensional array of article names indexed by article ID, language ID.\n//\n// The user can choose whether to perform an action on articles from page request to page request.\n// We create $doAction, a 2-dimensional array of boolean values indexed by article ID, language ID.\n$articleNames = array();\n$doAction = array();\nforeach ($_REQUEST as $key => $value) {\n\tif (!strncmp($key, \"f_article_name_\", strlen(\"f_article_name_\"))) {\n\t\t$tmpCodeStr = str_replace(\"f_article_name_\", \"\", $key);\n\t\tlist($articleId, $languageId) = explode(\"_\", $tmpCodeStr);\n\t\t$articleNames[$articleId][$languageId] = Input::Get($key, 'string', '', true);\n\t}\n\tif (!strncmp($key, \"f_do_copy_\", strlen(\"f_do_copy_\"))) {\n\t\t$tmpCodeStr = str_replace(\"f_do_copy_\", \"\", $key);\n\t\tlist($articleId, $languageId) = explode(\"_\", $tmpCodeStr);\n\t\t$doAction[$articleId][$languageId] = Input::Get($key, 'string', '', true);\n\t}\n}\n\n\n// $articles array:\n// The articles that were initially selected to perform the move or duplicate upon.\n$articles = array();\n$firstArticle = null;\nforeach ($f_article_code as $code) {\n\tlist($articleNumber, $languageId) = explode(\"_\", $code);\n\t$tmpArticle = new Article($languageId, $articleNumber);\n\tif (is_null($firstArticle)) {\n\t\t$firstArticle = $tmpArticle;\n\t}\n\t$articles[$articleNumber][$languageId] = $tmpArticle;\n\n\t// Initialize the article names on initial page request.\n\t// Initialize the $doAction array on initial page request.\n\tif (!isset($articleNames[$articleNumber][$languageId])) {\n\t\t$articleNames[$articleNumber][$languageId] = $tmpArticle->getTitle();\n\t\t$doAction[$articleNumber][$languageId] = $languageId;\n\t}\n}\n\n\n// Fill in article names for translations.\n// The user is automatically given the choice to perform actions on translations\n// when they get to this screen.\nforeach ($articles as $articleNumber => $languageArray) {\n\t$tmpArticle = camp_array_peek($languageArray);\n\t$translations = $tmpArticle->getTranslations();\n\tforeach ($translations as $article) {\n\t\t$articleNumber = $article->getArticleNumber();\n\t\t$articleLanguage = $article->getLanguageId();\n\t\tif (!isset($articleNames[$articleNumber][$articleLanguage])) {\n\t\t\t$articleNames[$articleNumber][$articleLanguage] = $article->getTitle();\n\t\t}\n\t\tif (!isset($articles[$articleNumber][$articleLanguage])) {\n\t\t\t$articles[$articleNumber][$articleLanguage] = $article;\n\t\t}\n\t}\n}\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())));\n\texit;\n}\n\nif ($f_publication_id > 0) {\n\t$publicationObj = new Publication($f_publication_id);\n\tif (!$publicationObj->exists()) {\n\t\tcamp_html_display_error($translator->trans('Publication does not exist.'));\n\t\texit;\n\t}\n\n\tif ($f_issue_number > 0) {\n\t    $issueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\n\t    if (!$issueObj->exists()) {\n\t        camp_html_display_error($translator->trans('Issue does not exist.'));\n\t        exit;\n\t    }\n\n\t    if ($f_section_number > 0) {\n\t        $sectionObj = new Section($f_publication_id, $f_issue_number, $f_language_id, $f_section_number);\n\t        if (!$sectionObj->exists()) {\n\t            camp_html_display_error($translator->trans('Section does not exist.'));\n\t            exit;\n\t        }\n\t    }\n\t}\n}\n\n// Get all the publications\n$allPublications = Publication::GetPublications();\n// Automatically select the publication if there is only one.\nif (count($allPublications) == 1) {\n\t$tmpPublication = camp_array_peek($allPublications);\n\t$f_destination_publication_id = $tmpPublication->getPublicationId();\n}\n\n// Get the most recent issues.\n$allIssues = array();\nif ($f_destination_publication_id > 0) {\n$allIssues = Issue::GetIssues($f_destination_publication_id, null, null, null, null, false, array(\"LIMIT\" => 300, \"ORDER BY\" => array(\"Number\" => \"DESC\")/*, 'GROUP BY' => 'Number'*/), true);\n\t// Automatically select the issue if there is only one.\n\tif (count($allIssues) == 1) {\n\t\t$tmpIssue = camp_array_peek($allIssues);\n\t\t$f_destination_issue_number = $tmpIssue->getIssueNumber();\n\t}\n}\n\n// Get all the sections.\n$allSections = array();\nif ($f_destination_issue_number > 0) {\n    $destIssue = new Issue($f_destination_publication_id, $f_destination_issue_language_id);\n    $allSections = Section::GetSections($f_destination_publication_id, $f_destination_issue_number, $f_destination_issue_language_id, null, null, array(\"ORDER BY\" => array(\"Number\" => \"DESC\"), 'GROUP BY' => 'Number'), true);\n    // Automatically select the section if there is only one.\n    if (count($allSections) == 1) {\n        $tmpSection = camp_array_peek($allSections);\n        $f_destination_section_number = $tmpSection->getSectionNumber();\n    } else {\n        $tmpSection = new Section($f_destination_publication_id, $f_destination_issue_number,\n            $firstArticle->getLanguageId(), $f_destination_section_number);\n        if (!$tmpSection->exists()) {\n            $f_destination_section_number = 0;\n        }\n    }\n}\n\n\n// Special case:\n// You cannot copy the articles if there is no cooresponding translated issue/section\n// in the destination issue.  For example, you cannot copy a french article to an\n// issue that has ONLY an english translation.\n$issueLanguages = array();\nif ($f_destination_issue_number > 0) {\n\t$issueTranslations = Issue::GetIssues($f_destination_publication_id, null, $f_destination_issue_number, null, null, false, null, true);\n\t$issueLanguages = DbObjectArray::GetColumn($issueTranslations, \"IdLanguage\");\n}\n// $actionDenied is TRUE if any articles cannot be moved/duped.\n$actionDenied = false;\nforeach ($articles as $articleNumber => $languageArray) {\n\tforeach ($languageArray as $languageId => $article) {\n\t\t$tmpActionDenied = (count($issueLanguages) > 0) && !in_array($languageId, $issueLanguages);\n\t\t$actionDenied |= $tmpActionDenied;\n\n\t\t// Uncheck any articles that cannot be moved/duped.\n\t\tif ($tmpActionDenied) {\n\t\t    unset($doAction[$articleNumber][$languageId]);\n\t\t\tif (isset($doAction[$articleNumber])\n\t\t\t    && count($doAction[$articleNumber]) == 0) {\n\t\t\t\tunset($doAction[$articleNumber]);\n\t\t\t}\n\t\t}\n\t}\n}\n\n\n//\n// This section is executed when the user finally hits the action button.\n//\nif (isset($_REQUEST[\"action_button\"])) {\n\n\t$srcArticleIndexUrl = \"/$ADMIN/articles/\"\n\t\t\t\t.\"?f_publication_id=$f_publication_id\"\n\t\t\t\t.\"&f_issue_number=$f_issue_number\"\n\t\t\t\t.\"&f_section_number=$f_section_number\"\n\t\t\t\t.\"&f_language_id=$f_language_id\";\n\t$destArticleIndexUrl = \"/$ADMIN/articles/\"\n\t\t\t\t.\"?f_publication_id=$f_destination_publication_id\"\n\t\t\t\t.\"&f_issue_number=$f_destination_issue_number\"\n\t\t\t\t.\"&f_section_number=$f_destination_section_number\"\n\t\t\t\t.\"&f_language_id=$f_language_id\";\n\n\t// If no actions were selected, dont do anything.\n\tif (($f_action != \"move\") && (count($doAction) == 0) ) {\n\t\tcamp_html_goto_page($srcArticleIndexUrl);\n\t}\n\n\tif (!empty($f_action) && !SecurityToken::isValid()) {\n\t\tcamp_html_display_error($translator->trans('Invalid security token!'));\n\t\texit;\n\t}\n\n\tif ($f_action == \"duplicate\") {\n\t\tglobal $controller;\n        $em = Zend_Registry::get('container')->getService('em');\n        $ArticleDatetimeRepository = $controller->getHelper('entity')->getRepository('Newscoop\\Entity\\ArticleDatetime');\n        foreach ($doAction as $articleNumber => $languageArray) {\n\t\t\t$events = $ArticleDatetimeRepository->findBy(array('articleId' => $articleNumber));\n\n            $languageArray = array_keys($languageArray);\n\t\t\t$tmpLanguageId = camp_array_peek($languageArray);\n\n\t\t\t// Error checking\n\t\t\tif (!isset($articles[$articleNumber][$tmpLanguageId])) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// Grab the first article - it doesnt matter which one.\n\t\t\t$tmpArticle = $articles[$articleNumber][$tmpLanguageId];\n\n\t\t\t// Copy all the translations requested.\n\t\t\t$newArticles = $tmpArticle->copy($f_destination_publication_id,\n\t\t\t\t\t\t\t  \t\t\t\t $f_destination_issue_number,\n\t\t\t\t\t\t\t  \t\t\t\t $f_destination_section_number,\n\t\t\t\t\t\t\t  \t\t\t\t $g_user->getUserId(),\n\t\t\t\t\t\t\t  \t\t\t\t $languageArray);\n\n\t\t\t// Set properties for each new copy.\n\t\t\tforeach ($newArticles as $newArticle) {\n    \t\t\t// Set the name of the new copy\n\t\t\t\t$newArticle->setTitle($articleNames[$articleNumber][$newArticle->getLanguageId()]);\n\t\t\t\t// Set the default \"comment enabled\" status based\n\t\t\t\t// on the publication config settings.\n\t\t\t\tif ($f_destination_publication_id > 0) {\n                    $tmpPub = new Publication($f_destination_publication_id);\n                    $commentDefault = $tmpPub->commentsArticleDefaultEnabled();\n                    $newArticle->setCommentsEnabled($commentDefault);\n            \t}\n\n                foreach ($events as $event) {\n                    //$repo->add($timeSet, $articleId, 'schedule');\n                    $newEvent = $ArticleDatetimeRepository->getEmpty();\n                    $newEvent->setArticleId($newArticle->getArticleNumber());\n                    $newEvent->setArticleType($event->getArticleType());\n                    $newEvent->setStartDate($event->getStartDate());\n                    $newEvent->setStartTime($event->getStartTime());\n                    $newEvent->setEndDate($event->getEndDate());\n                    $newEvent->setEndTime($event->getEndTime());\n                    $newEvent->setRecurring($event->getRecurring());\n                    $newEvent->setFieldName($event->getFieldName());\n                    $em->persist($newEvent);\n                }\n\n                $em->flush();\n\n                \\Zend_Registry::get('container')->getService('dispatcher')\n                  ->dispatch('article.duplicate', new \\Newscoop\\EventDispatcher\\Events\\GenericEvent($this, array(\n                        'article' => $newArticle,\n                        'orginal_article_number' => $articleNumber\n                    )));\n\t\t\t}\n\t\t}\n\t\tif ($f_mode == \"single\") {\n\t\t\t$tmpArticle = camp_array_peek($newArticles);\n\t\t\t$url = camp_html_article_url($tmpArticle, $tmpArticle->getLanguageId(), \"edit.php\");\n\t\t} else {\n\t\t\t$url = $destArticleIndexUrl;\n\t\t}\n\t\tArticleIndex::RunIndexer(3, 10, true);\n\n\t\tcamp_html_add_msg($translator->trans(\"Article(s) duplicated.\", array(), 'articles'), \"ok\");\n\t\tcamp_html_goto_page($url);\n\n\t} elseif ($f_action == \"move\") {\n\n\t\t// Move all the translations requested.\n\t\t$tmpArticles = array();\n\t\tforeach ($articles as $articleNumber => $languageArray) {\n\t\t\t$tmpArticle = camp_array_peek($languageArray);\n\t\t\t$translations = $tmpArticle->getTranslations();\n\t\t\tforeach ($translations as $tmpArticle2) {\n\t\t\t\t$articleNumber = $tmpArticle2->getArticleNumber();\n\t\t\t\t$articleLanguage = $tmpArticle2->getLanguageId();\n\t\t\t\t$tmpArticle2->move($f_destination_publication_id,\n\t\t\t\t\t\t\t   \t   $f_destination_issue_number,\n\t\t\t\t\t\t\t   \t   $f_destination_section_number);\n\t\t\t\t$tmpArticle2->setTitle($articleNames[$articleNumber][$articleLanguage]);\n\t\t\t\t$tmpArticles[] = $tmpArticle2;\n\n                \\Zend_Registry::get('container')->getService('dispatcher')\n                    ->dispatch('article.move', new \\Newscoop\\EventDispatcher\\Events\\GenericEvent($this, array(\n                        'article' => $tmpArticle,\n                    )));\n\t\t\t}\n\t\t}\n\t\t$tmpArticle = camp_array_peek($tmpArticles);\n\t\tif ($f_mode == \"single\") {\n\t\t\t$url = camp_html_article_url($tmpArticle, $tmpArticle->getLanguageId(), \"edit.php\");\n\t\t} else {\n\t\t\t$url = $destArticleIndexUrl;\n\t\t}\n\t\tArticleIndex::RunIndexer(3, 10, true);\n\t\tcamp_html_add_msg($translator->trans(\"Article moved.\", array(), 'articles'), \"ok\");\n\t\tcamp_html_goto_page($url);\n\n\t} elseif ($f_action == \"publish\") {\n\n\t\t// Publish all the articles requested.\n\t\t$tmpArticles = array();\n\t\tforeach ($doAction as $articleNumber => $languageArray) {\n\t\t\tforeach ($languageArray as $languageId => $action) {\n\t\t\t\t$tmpArticle = new Article($languageId, $articleNumber);\n\t\t\t\t$tmpArticle->setTitle($articleNames[$articleNumber][$languageId]);\n\n\t\t\t\t// Check if the name already exists in the destination section.\n\t\t\t\t$conflictingArticles = Article::GetByName($tmpArticle->getTitle(),\n\t\t\t\t\t\t\t\t          $f_destination_publication_id,\n\t\t\t\t\t\t\t \t          $f_destination_issue_number,\n\t\t\t\t\t\t\t\t          $f_destination_section_number, null, true);\n\t\t\t\tif (count($conflictingArticles) > 0) {\n\t\t\t\t\t$conflictingArticle = array_pop($conflictingArticles);\n\t\t\t\t\t$conflictingArticleLink = camp_html_article_url($conflictingArticle,\n\t\t\t\t\t\t\t\t\t$conflictingArticle->getLanguageId(),\n\t\t\t\t\t\t\t\t\t\"edit.php\");\n    \t\t\t\tcamp_html_add_msg($translator->trans(\"The article could not be published.\", array(), 'articles').\" \".$translator->trans(\"You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.\", array(\n    \t\t\t\t\t'$1' => \"<a href='$conflictingArticleLink'>\".$conflictingArticle->getName().\"</a>\"), 'articles'));\n     \t\t\t\t$args = $_REQUEST;\n     \t\t\t\tunset($args[\"action_button\"]);\n\t\t\t\t\tunset($args[\"f_article_code\"]);\n\t\t\t\t\t$argsStr = camp_implode_keys_and_values($args, \"=\", \"&\");\n\t\t\t\t\tforeach ($_REQUEST[\"f_article_code\"] as $code) {\n\t\t\t\t\t\t$argsStr .= \"&f_article_code[]=$code\";\n\t\t\t\t\t}\n\t\t\t\t\t$backLink = \"/$ADMIN/articles/duplicate.php?$argsStr\";\n\t\t\t\t\tcamp_html_goto_page($backLink);\n\t\t\t\t} else {\n\t\t\t\t\t$tmpArticle->move($f_destination_publication_id,\n\t\t\t\t\t \t              $f_destination_issue_number,\n\t\t\t\t\t\t\t\t      $f_destination_section_number);\n\t\t\t\t\t$tmpArticle->setWorkflowStatus('Y');\n\n                    \\Zend_Registry::get('container')->getService('dispatcher')\n                        ->dispatch('article.publish', new \\Newscoop\\EventDispatcher\\Events\\GenericEvent($this, array(\n                            'article' => $tmpArticle,\n                        )));\n\n\t\t\t\t\t$tmpArticles[] = $tmpArticle;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t$tmpArticle = camp_array_peek($tmpArticles);\n\t\tif ($f_mode == \"single\") {\n\t\t\t$url = camp_html_article_url($tmpArticle, $tmpArticle->getLanguageId(), \"edit.php\");\n\t\t} else {\n\t\t\t$url = $destArticleIndexUrl;\n\t\t}\n\t\tArticleIndex::RunIndexer(3, 10, true);\n\t\tcamp_html_goto_page($url);\n\t} elseif ($f_action == \"submit\") {\n\n\t\t// Submit all the articles requested.\n\t\t$tmpArticles = array();\n\t\tforeach ($doAction as $articleNumber => $languageArray) {\n\t\t\tforeach ($languageArray as $languageId => $action) {\n\t\t\t\t$tmpArticle = new Article($languageId, $articleNumber);\n\t\t\t\t$tmpArticle->setTitle($articleNames[$articleNumber][$languageId]);\n\n\t\t\t\t// Check if the name already exists in the destination section.\n\t\t\t\t$conflictingArticles = Article::GetByName($tmpArticle->getTitle(),\n\t\t\t\t\t\t\t\t          $f_destination_publication_id,\n\t\t\t\t\t\t\t \t          $f_destination_issue_number,\n\t\t\t\t\t\t\t\t          $f_destination_section_number, null, true);\n\t\t\t\tif (count($conflictingArticles) > 0) {\n\t\t\t\t\t$conflictingArticle = array_pop($conflictingArticles);\n\t\t\t\t\t$conflictingArticleLink = camp_html_article_url($conflictingArticle,\n\t\t\t\t\t\t\t\t\t$conflictingArticle->getLanguageId(),\n\t\t\t\t\t\t\t\t\t\"edit.php\");\n    \t\t\t\tcamp_html_add_msg($translator->trans(\"The article could not be submitted.\", array(), 'articles').\" \".$translator->trans(\"You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article '$1'.\", array(\n     \t\t\t\t\t\t'$1' => \"<a href='$conflictingArticleLink'>\".$conflictingArticle->getName().\"</a>\"), 'articles'));\n     \t\t\t\t$args = $_REQUEST;\n     \t\t\t\tunset($args[\"action_button\"]);\n\t\t\t\t\tunset($args[\"f_article_code\"]);\n\t\t\t\t\t$argsStr = camp_implode_keys_and_values($args, \"=\", \"&\");\n\t\t\t\t\tforeach ($_REQUEST[\"f_article_code\"] as $code) {\n\t\t\t\t\t\t$argsStr .= \"&f_article_code[]=$code\";\n\t\t\t\t\t}\n\t\t\t\t\t$backLink = \"/$ADMIN/articles/duplicate.php?$argsStr\";\n\t\t\t\t\tcamp_html_goto_page($backLink);\n\t\t\t\t} else {\n\t\t\t\t\t$tmpArticle->move($f_destination_publication_id,\n\t\t\t\t\t \t              $f_destination_issue_number,\n\t\t\t\t\t\t\t\t      $f_destination_section_number);\n\t\t\t\t\t$tmpArticle->setWorkflowStatus('S');\n\n                    \\Zend_Registry::get('container')->getService('dispatcher')\n                        ->dispatch('article.submit', new \\Newscoop\\EventDispatcher\\Events\\GenericEvent($this, array(\n                            'article' => $tmpArticle,\n                        )));\n\n\t\t\t\t\t$tmpArticles[] = $tmpArticle;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t$tmpArticle = camp_array_peek($tmpArticles);\n\t\tif ($f_mode == \"single\") {\n\t\t\t$url = camp_html_article_url($tmpArticle, $tmpArticle->getLanguageId(), \"edit.php\");\n\t\t} else {\n\t\t\t$url = $destArticleIndexUrl;\n\t\t}\n\t\tArticleIndex::RunIndexer(3, 10, true);\n\t\tcamp_html_goto_page($url);\n\t}\n} // END perform the action\n\n\n$title = \"\";\nif (count($doAction) > 1) {\n\tif ($f_action == \"duplicate\") {\n\t\t$title = $translator->trans(\"Duplicate articles\", array(), 'articles');\n\t} elseif ($f_action == \"move\") {\n\t\t$title = $translator->trans(\"Move articles\", array(), 'articles');\n\t} elseif ($f_action == \"publish\") {\n\t\t$title = $translator->trans(\"Publish articles\", array(), 'articles');\n\t} elseif ($f_action == \"submit\") {\n\t\t$title = $translator->trans(\"Submit articles\", array(), 'articles');\n\t}\n} else {\n\tif ($f_action == \"duplicate\") {\n\t\t$title = $translator->trans(\"Duplicate article\", array(), 'articles');\n\t} elseif ($f_action == \"move\") {\n\t\t$title = $translator->trans(\"Move article\", array(), 'articles');\n\t} elseif ($f_action == \"publish\") {\n\t\t$title = $translator->trans(\"Publish article\", array(), 'articles');\n\t} elseif ($f_action == \"submit\") {\n\t\t$title = $translator->trans(\"Submit article\", array(), 'articles');\n\t}\n}\n\nif ($f_publication_id > 0) {\n\t$topArray = array('Pub' => $publicationObj, 'Issue' => $issueObj,\n\t\t\t\t\t  'Section' => $sectionObj);\n\tif (count($articles) > 1) {\n\t\t$crumbs = array($translator->trans(\"Articles\") => \"/$ADMIN/articles/index.php?f_publication_id=$f_publication_id&f_issue_number=$f_issue_number&f_section_number=$f_section_number&f_language_id=$f_language_id&f_language_selected=$f_language_selected\");\n\t\tcamp_html_content_top($title, $topArray, true, false, $crumbs);\n\t} elseif ($f_issue_number > 0 && $f_section_number > 0) {\n\t\t$topArray['Article'] = camp_array_peek(camp_array_peek($articles));\n\t\tcamp_html_content_top($title, $topArray);\n\t} else {\n\t    $crumbs = array();\n\t    $crumbs[] = array($translator->trans(\"Pending articles\", array(), 'articles'), \"/$ADMIN/pending_articles\");\n\t    $crumbs[] = array($title, \"\");\n\t    echo camp_html_breadcrumbs($crumbs);\n\t}\n} else {\n\t$crumbs = array();\n\t$crumbs[] = array($translator->trans(\"Actions\"), \"\");\n\t$crumbs[] = array($title, \"\");\n\techo camp_html_breadcrumbs($crumbs);\n}\n?>\n\n<?php if ($f_mode == \"single\") { ?>\n<table cellpadding=\"1\" cellspacing=\"0\" class=\"action_buttons\" style=\"padding-top: 10px;\">\n<tr>\n\t<td><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/left_arrow.png\" BORDER=\"0\"></td>\n\t<td><a href=\"<?php echo camp_html_article_url($article, $f_language_id, \"edit.php\"); ?>\"><b><?php echo $translator->trans(\"Back to Edit Article\"); ?></b></a></td>\n</tr>\n</table>\n<?php } ?>\n\n<?php camp_html_display_msgs(); ?>\n\n<P>\n<div class=\"page_title\" style=\"padding-left: 18px;\">\n<?php p($title); ?>:\n</div>\n\n<FORM NAME=\"move_duplicate\" METHOD=\"POST\">\n<?php echo SecurityToken::FormParameter(); ?>\n<?php if ($f_publication_id > 0) { ?>\n<input type=\"hidden\" name=\"f_publication_id\" value=\"<?php p($f_publication_id); ?>\">\n<input type=\"hidden\" name=\"f_issue_number\" value=\"<?php p($f_issue_number); ?>\">\n<input type=\"hidden\" name=\"f_section_number\" value=\"<?php p($f_section_number); ?>\">\n<input type=\"hidden\" name=\"f_language_id\" value=\"<?php p($f_language_id); ?>\">\n<?php } ?>\n<input type=\"hidden\" name=\"f_mode\" value=\"<?php p($f_mode); ?>\">\n<input type=\"hidden\" name=\"f_action\" value=\"<?php p($f_action); ?>\">\n<?php\nforeach ($articles as $languageArray) {\n\tforeach ($languageArray as $article) {\t?>\n<input type=\"hidden\" name=\"f_article_code[]\" value=\"<?php p($article->getArticleNumber().\"_\".$article->getLanguageId()); ?>\">\n\t<?php\n\t}\n}\n?>\n<input type=\"hidden\" name=\"f_language_selected\" value=\"<?php p($f_language_selected); ?>\">\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"6\" style=\"margin-left: 10px;\">\n<TR>\n\t<TD>\n\t\t<TABLE cellpadding=\"3\">\n\t\t<TR class=\"table_list_header\">\n\t\t\t<?php if ($f_action != \"move\") { ?>\n\t\t\t<TD valign=\"top\">\n\t\t\t\t<?php\n\t\t\t\tif ($f_action == \"duplicate\") {\n\t\t\t\t\techo $translator->trans(\"Duplicate?\", array(), 'articles');\n\t\t\t\t} elseif ($f_action == \"publish\") {\n\t\t\t\t\techo $translator->trans(\"Publish?\", array(), 'articles');\n\t\t\t\t}\n\t\t\t\t?>\n\t\t\t</TD>\n\t\t\t<?php } ?>\n\t\t\t<TD valign=\"top\"><?php echo $translator->trans(\"Name\"); ?></TD>\n\t\t\t<TD valign=\"top\"><?php echo $translator->trans(\"Language\"); ?></TD>\n\t\t\t<TD valign=\"top\"><?php echo $translator->trans(\"Type\"); ?></TD>\n\t\t</TR>\n\n\t\t<?php\n\t\t$color = 0;\n\t\tforeach ($articles as $languageArray) {\n\t\t\t$count = 0;\n\t\t\tforeach ($languageArray as $languageId => $article) {\n\t\t\t\t$bad = (count($issueLanguages) > 0) && !in_array($languageId, $issueLanguages);\n\t\t\t\t$articleNumber = $article->getArticleNumber();\n\t\t\t?>\n\t\t<TR class=\"<?php if ($color) { ?>list_row_even<?php } else { ?>list_row_odd<?php } $color = !$color; ?>\" >\n\t\t\t<?php\n\t\t\t// When moving articles, you must move all translations as well,\n\t\t\t// so the user is not allowed to opt-opt of moving them.\n\t\t\tif ($f_action != \"move\") { ?>\n\t\t\t<TD <?php if ($bad) { ?>style=\"border-left: 3px solid #AF2041; background-color: #FFD4E4;\"<?php } ?>>\n\t\t\t\t<input type=\"checkbox\" name=\"f_do_copy_<?php p($articleNumber.\"_\".$languageId); ?>\" value=\"\" <?php if ($bad) { echo \"disabled\"; } elseif (isset($doAction[$articleNumber][$languageId])) { echo \"CHECKED\"; } ?>>\n\t\t\t</TD>\n\t\t\t<?php } ?>\n\t\t\t<TD <?php if ($count++ > 0) { ?>class=\"translation_indent\"<?php } ?> <?php if ($bad) { ?>style=\"background-color: #FFD4E4;\"<?php } ?>>\n\t\t\t\t<INPUT TYPE=\"TEXT\" NAME=\"f_article_name_<?php p($articleNumber.\"_\".$languageId); ?>\" SIZE=\"50\" MAXLENGTH=\"256\" VALUE=\"<?php  p(htmlspecialchars($articleNames[$articleNumber][$languageId])); ?>\" class=\"input_text\">\n\t\t\t</TD>\n\n\t\t\t<TD <?php if ($bad) { ?>style=\"background-color: #FFD4E4\"<?php } ?>>\n\t\t\t\t<B><?php p(htmlspecialchars($article->getLanguageName())); ?></B>\n\t\t\t</TD>\n\n\t\t\t<TD <?php if ($bad) { ?>style=\"background-color: #FFD4E4; border-right: 3px solid #AF2041;\"<?php } ?>>\n\t\t\t\t<B><?php p(htmlspecialchars($article->getTranslateType())); ?></B>\n\t\t\t</TD>\n\n\t\t</TR>\n\t\t<?php\n\t\t\t}\n\t\t}\n\t\t?>\n\t\t</TABLE>\n\t</TD>\n</TR>\n</TABLE>\n\n<?php if ($actionDenied) { ?>\n<table width=\"565px\">\n<tr>\n\t<td colspan=\"2\" style=\"padding-left: 17px; padding-bottom: 8px;\" align=\"center\">\n\t\t<div style=\"border: 1px solid #AF2041; background-color: #FFD4E4; font-size: 12pt; padding: 5px; font-weight: bold; color: #AF2041;\">\n\t\t<?php\n\t\t\techo $translator->trans(\"You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.\", array('$1' => ($f_action == \"move\") ? $translator->trans(\"move\") : $translator->trans(\"duplicate\")), 'articles');\n\t\t?>\n\t\t</div>\n\t</td>\n</tr>\n</table>\n<?php } ?>\n\n<p>\n<div class=\"page_title\" style=\"padding-left: 18px;\">\n<?php echo $translator->trans(\"to section\", array(), 'articles'); ?>:\n</div>\n<p>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" class=\"box_table\">\n<TR>\n\t<TD align=\"left\">\n\t\t<TABLE align=\"left\" border=\"0\" width=\"100%\">\n\t\t<TR>\n\t\t\t<td colspan=\"2\" style=\"padding-left: 20px; padding-bottom: 5px;font-size: 12pt; font-weight: bold;\"><?php echo $translator->trans(\"Select destination\"); ?></TD>\n\t\t</TR>\n\t\t<TR>\n\t\t\t<td>\n\t\t\t\t<!-- BEGIN table for pub/issue/section selection -->\n\t\t\t\t<table border=\"0\">\n\n\t\t\t\t<!-- PUBLICATION -->\n\t\t\t\t<tr>\n\t\t\t\t\t<TD VALIGN=\"middle\" ALIGN=\"RIGHT\" style=\"padding-left: 20px;\"><?php echo $translator->trans('Publication'); ?>: </TD>\n\t\t\t\t\t<TD valign=\"middle\" ALIGN=\"LEFT\">\n\t\t\t\t\t\t<?php if (count($allPublications) > 1) { ?>\n\t\t\t\t\t\t<SELECT NAME=\"f_destination_publication_id\" class=\"input_select\" ONCHANGE=\"if (this.options[this.selectedIndex].value != <?php p($f_destination_publication_id); ?>) {this.form.submit();}\">\n\t\t\t\t\t\t<OPTION VALUE=\"0\"><?php echo $translator->trans('---Select publication---'); ?></option>\n\t\t\t\t\t\t<?php\n\t\t\t\t\t\tforeach ($allPublications as $tmpPublication) {\n\t\t\t\t\t\t\tcamp_html_select_option($tmpPublication->getPublicationId(), $f_destination_publication_id, $tmpPublication->getName());\n\t\t\t\t\t\t}\n\t\t\t\t\t\t?>\n\t\t\t\t\t\t</SELECT>\n\t\t\t\t\t\t<?php } elseif (count($allPublications) == 1) {\n\t\t\t\t\t\t\t$tmpPublication = camp_array_peek($allPublications);\n\t\t\t\t\t\t\tp(htmlspecialchars($tmpPublication->getName()));\n\t\t\t\t\t\t\t?>\n\t\t\t\t\t\t\t<input type=\"hidden\" name=\"f_destination_publication_id\" value=\"<?php p($tmpPublication->getPublicationId()); ?>\">\n\n\t\t\t\t\t\t<?php } else { ?>\n\t\t\t\t\t\t\t<SELECT class=\"input_select\" DISABLED><OPTION><?php echo $translator->trans('No publications'); ?></option></SELECT>\n\t\t\t\t\t\t<?php }\t?>\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\n\t\t\t\t<!-- ISSUE -->\n\t\t\t\t<tr>\n\t\t\t\t\t<TD VALIGN=\"middle\" ALIGN=\"RIGHT\" style=\"padding-left: 20px;\"><?php echo $translator->trans('Issue'); ?>: </TD>\n\t\t\t\t\t<TD valign=\"middle\" ALIGN=\"LEFT\">\n\t\t\t\t\t\t<?php if (($f_destination_publication_id > 0) && (count($allIssues) > 1)) { ?>\n\t\t\t\t\t\t<SELECT NAME=\"f_destination_issue_number\" class=\"input_select\" ONCHANGE=\"if (this.options[this.selectedIndex].value != '<?php p($f_destination_issue_number.'_'.$f_destination_issue_language_id); ?>') { this.form.submit(); }\">\n\t\t\t\t\t\t<OPTION VALUE=\"0\"><?php echo $translator->trans('---Select issue---'); ?></option>\n\t\t\t\t\t\t<?php\n\t\t\t\t\t\tforeach ($allIssues as $tmpIssue) {\n\t\t\t\t\t\t\tcamp_html_select_option($tmpIssue->getIssueNumber().'_'.$tmpIssue->getLanguageId(), $f_destination_issue_number.'_'.$f_destination_issue_language_id, $tmpIssue->getIssueNumber().\". \".$tmpIssue->getName());\n\t\t\t\t\t\t}\n\t\t\t\t\t\t?>\n\t\t\t\t\t\t</SELECT>\n\t\t\t\t\t\t<?php } elseif (($f_destination_publication_id > 0) && (count($allIssues) == 1)) {\n\t\t\t\t\t\t\t$tmpIssue = camp_array_peek($allIssues);\n\t\t\t\t\t\t\tp(htmlspecialchars($tmpIssue->getName()));\n\t\t\t\t\t\t\t?>\n\t\t\t\t\t\t\t<input type=\"hidden\" name=\"f_destination_issue_number\" value=\"<?php p($f_destination_issue_number); ?>\">\n\t\t\t\t\t\t<?php } else { ?>\n\t\t\t\t\t\t\t<SELECT class=\"input_select\" DISABLED><OPTION><?php echo $translator->trans('No issues'); ?></SELECT>\n\t\t\t\t\t\t<?php } ?>\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\n\t\t\t\t<!-- SECTION -->\n\t\t\t\t<tr>\n\t\t\t\t\t<TD VALIGN=\"middle\" ALIGN=\"RIGHT\" style=\"padding-left: 20px;\"><?php echo $translator->trans('Section'); ?>: </TD>\n\t\t\t\t\t<TD valign=\"middle\" ALIGN=\"LEFT\">\n\t\t\t\t\t\t<?php if (($f_destination_issue_number > 0) && (count($allSections) > 1)) { ?>\n\t\t\t\t\t\t<SELECT NAME=\"f_destination_section_number\" class=\"input_select\" ONCHANGE=\"this.form.submit();\">\n\t\t\t\t\t\t<OPTION VALUE=\"0\"><?php echo $translator->trans('---Select section---'); ?></OPTION>\n\t\t\t\t\t\t<?php\n\t\t\t\t\t\t$previousSection = camp_array_peek($allSections);\n\t\t\t\t\t\tforeach ($allSections as $tmpSection) {\n\t\t\t\t\t\t\tcamp_html_select_option($tmpSection->getSectionNumber(), $f_destination_section_number, $tmpSection->getName());\n\t\t\t\t\t\t}\n\t\t\t\t\t\t?>\n\t\t\t\t\t\t</SELECT>\n\t\t\t\t\t\t<?php } elseif (($f_destination_issue_number > 0) && (count($allSections) == 1)) {\n\t\t\t\t\t\t\t$tmpSection = camp_array_peek($allSections);\n\t\t\t\t\t\t\tp(htmlspecialchars($tmpSection->getName()));\n\t\t\t\t\t\t\t?>\n\t\t\t\t\t\t\t<input type=\"hidden\" name=\"f_destination_section_number\" value=\"<?php p($f_destination_section_number); ?>\">\n\t\t\t\t\t\t<?php } else { ?>\n\t\t\t\t\t\t\t<SELECT class=\"input_select\" DISABLED><OPTION><?php echo $translator->trans('No sections'); ?></SELECT>\n\t\t\t\t\t\t<?php }\t?>\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t\t<!-- END table for pub/issue/section selection -->\n\t\t\t</TD>\n\t\t</tr>\n\n\t\t<tr>\n\t\t\t<td colspan=\"2\"><?php\n\t\t\t\tif ( ($f_publication_id == $f_destination_publication_id) && ($f_issue_number == $f_destination_issue_number)\n\t\t\t\t&& ($f_section_number == $f_destination_section_number) && ($f_section_number > 0) && ($f_language_id == $f_destination_issue_language_id)) {\n\t\t\t\t\techo $translator->trans(\"The destination section is the same as the source section.\", array(), 'articles'); echo \"<BR>\\n\";\n\t\t\t\t}\n\t\t\t?></td>\n\t\t</tr>\n\n\t\t<tr>\n\t\t\t<td align=\"center\" colspan=\"2\">\n\t\t\t\t<input type=\"submit\" name=\"action_button\" value=\"<?php p($title); ?>\" <?php if (($f_destination_publication_id <= 0) || ($f_destination_issue_number <= 0) || ($f_destination_section_number <= 0)) { echo 'disabled=\"disabled\" class=\"default-button disabled\"'; } else { echo 'class=\"default-button\"'; }?> >\n\t\t\t</td>\n\t\t</tr>\n\t\t</TABLE>\n\t</TD>\n</TR>\n</table>\n</FORM>\n<p>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/edit.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/articles/article_common.php\");\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/editor_load_tinymce.php\");\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/editor_load_countable.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbReplication.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticlePublish.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleAttachment.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleImage.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleTopic.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ShortURL.php');\n\nrequire_once WWW_DIR . '/classes/GeoMap.php';\n\nglobal $articleObj, $f_edit_mode;\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n// These are optional, depending on whether you are in a section\n// or whether editing an article that doesnt have a location.\n$f_publication_id = Input::Get('f_publication_id', 'int', 0, true);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0, true);\n$f_section_number = Input::Get('f_section_number', 'int', 0, true);\n$f_language_id = Input::Get('f_language_id', 'int', 0, true);\n\n$f_article_number = Input::Get('f_article_number', 'int', 0);\n$f_unlock = Input::Get('f_unlock', 'string', false, true);\n\n// $f_edit_mode can be \"view\" or \"edit\"\n$f_edit_mode = Input::Get('f_edit_mode', 'string', 'edit', true);\n\n// Whether to show comments at the bottom of the article\n// (you may not want to show them to speed up your loading time)\n// Selected language of the article\n$f_language_selected = (int) camp_session_get('f_language_selected', 0);\n\nif (!Input::IsValid()) {\n    camp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $_SERVER['REQUEST_URI']);\n    exit;\n}\n\n// Fetch article\n$articleObj = new Article($f_language_selected, $f_article_number);\nif (!$articleObj->exists()) {\n    camp_html_display_error($translator->trans('No such article.', array(), 'articles'));\n    exit;\n}\n\n// detect if blogger can edit\n$userIsBlogger = false;\n$blogService = \\Zend_Registry::get('container')->getService('blog');\nif ($blogService->isBlogger($g_user)) {\n    $userIsBlogger = true;\n    $userSection = $blogService->getSection($g_user);\n    if (empty($userSection) || $userSection->getSectionId() != $articleObj->getSection()->getSectionId()) {\n        camp_html_display_error($translator->trans(\"You are not allowed to edit article.\", array(), 'articles'));\n        exit;\n    }\n}\n\n$controller->view->headTitle($articleObj->getName().' - '.$translator->trans('Edit article', array(), 'article_files').' - Newscoop Admin', 'SET');\n\n$articleData = $articleObj->getArticleData();\n// Get article type fields.\n$dbColumns = $articleData->getUserDefinedColumns();\n$articleType = new ArticleType($articleObj->getType());\n\n$articleImages = ArticleImage::GetImagesByArticleNumber($f_article_number);\n$lockUserObj = new User($articleObj->getLockedByUser());\n$articleCreator = new User($articleObj->getCreatorId());\n$articleEvents = ArticlePublish::GetArticleEvents($f_article_number, $f_language_selected, TRUE);\n$em = \\Zend_Registry::get('container')->getService('em');\n$articleTopics = $em->getRepository(\"Newscoop\\Entity\\ArticleTopic\")\n   ->getArticleTopicsIds($f_article_number)\n   ->getResult();\n\n$articleFiles = ArticleAttachment::GetAttachmentsByArticleNumber($f_article_number, $f_language_selected);\n$articleLanguages = $articleObj->getLanguages();\n\n// Create displayable \"last modified\" time.\n$lastModified = strtotime($articleObj->getLastModified());\n$today = getdate();\n$savedOn = getdate($lastModified);\n$savedToday = true;\nif ($today['year'] != $savedOn['year'] || $today['mon'] != $savedOn['mon'] || $today['mday'] != $savedOn['mday']) {\n    $savedToday = FALSE;\n}\n\n$sectionObj = null;\n$showComments = FALSE;\n$showCommentControls = FALSE;\nif ($f_publication_id > 0) {\n    $publicationObj = new Publication($f_publication_id);\n    if ($publicationObj->exists()) {\n        $issueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\n        if ($issueObj->exists()) {\n            $sectionObj = new Section($f_publication_id, $f_issue_number, $f_language_id, $f_section_number);\n            if ($sectionObj->exists()) {\n                $languageObj = new Language($articleObj->getLanguageId());\n            } else {\n                $sectionObj = null;\n            }\n        } else {\n            $issueObj = null;\n        }\n    } else {\n        $publicationObj = null;\n    }\n\n    $showCommentControls = ($publicationObj->commentsEnabled() && $articleType->commentsEnabled());\n    $showComments = $showCommentControls && $articleObj->commentsEnabled();\n}\n\nif ($showComments) {\n//    $comments = array();\n\n    /**\n    * @todoget comments\n    */\n}\n\n// Automatically switch to \"view\" mode if user doesnt have permissions\nif (!$articleObj->userCanModify($g_user)) {\n    $f_edit_mode = 'view';\n}\n\n//\n// Automatic unlocking\n//\n$locked = TRUE;\n// If the article has not been touched in 24 hours\n$timeDiff = camp_time_diff_str($articleObj->getLockTime());\nif ($timeDiff['days'] > 0) {\n    $articleObj->setIsLocked(FALSE);\n    $locked = FALSE;\n} elseif (($articleObj->getLockedByUser() != 0) && !$lockUserObj->exists()) {\n    // If the user who locked the article doesnt exist anymore, unlock the article\n    $articleObj->setIsLocked(FALSE);\n    $locked = FALSE;\n}\n\n//\n// Automatic locking\n//\n\n// If the article has not been unlocked and is not locked by a user.\nif ($f_unlock === FALSE) {\n    if (!$articleObj->isLocked()) {\n        // Lock the article\n        $articleObj->setIsLocked(TRUE, $g_user->getUserId());\n    }\n} else {\n    $f_edit_mode = 'view';\n}\n\n// Automatically unlock the article if the user goes into VIEW mode\n$lockedByCurrentUser = ($articleObj->getLockedByUser() == $g_user->getUserId());\nif (($f_edit_mode == 'view') && $lockedByCurrentUser) {\n    $articleObj->setIsLocked(FALSE);\n}\n\n// If the article is locked by the current user, OK to edit.\nif ($lockedByCurrentUser) {\n    $locked = FALSE;\n}\n\n//\n// Begin Display of page\n//\ninclude_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/javascript_common.php\");\n\n$inEditMode = ($f_edit_mode == 'edit');\n$inViewMode = ($f_edit_mode == 'view');\n$publishRights = $g_user->hasPermission('Publish');\n\nif ($g_user->hasPermission('EditorSpellcheckerEnabled')) {\n    $spellcheck = 'spellcheck=\"true\"';\n} else {\n    $spellcheck = 'spellcheck=\"false\"';\n}\n\n// Generate the breadcrumb\n$title = '';\nif ($f_publication_id > 0 && $f_issue_number && $f_section_number) {\n    $topArray = array(\n        'Pub' => $publicationObj,\n        'Issue' => $issueObj,\n        'Section' => $sectionObj,\n        'Article' => $articleObj\n    );\n\n    camp_html_content_top($title, $topArray);\n} else {\n    $crumbs = array();\n    $crumbs[] = array($translator->trans('Pending Articles', array(), 'articles'), \"/$ADMIN/pending_articles/index.php\");\n    $crumbs[] = array($title, '');\n    echo camp_html_breadcrumbs($crumbs);\n}\n\nfunction parseTextBody($text, $articleNumber)\n{\n    $translator = \\Zend_Registry::get('container')->getService('translator');\n    \n    // Subheads\n    $text = preg_replace(\"/<!\\*\\*\\s*Title\\s*>/i\", \"<span class=\\\"campsite_subhead\\\">\", $text);\n    $text = preg_replace(\"/<!\\*\\*\\s*EndTitle\\s*>/i\", \"</span>\", $text);\n\n    // Internal Links with targets\n    $text = preg_replace(\"/<!\\*\\*\\s*Link\\s*Internal\\s*([\\w=&]*)\\s*target[\\s\\\"]*([\\w_]*)[\\s\\\"]*>/i\", '<a href=\"/campsite/campsite_internal_link?$1\" target=\"$2\">', $text);\n\n    // Internal Links without targets\n    $text = preg_replace(\"/<!\\*\\*\\s*Link\\s*Internal\\s*([\\w=&]*)\\s*>/i\", '<a href=\"/campsite/campsite_internal_link?$1\">', $text);\n\n    // External Links (old style 2.1) with targets\n    $text = preg_replace(\"/<!\\*\\*\\s*Link\\s*External[\\s\\\"]*([^\\s\\\"]*)[\\s\\\"]*target[\\s\\\"]*([\\w_]*)[\\s\\\"]*>/i\", '<a href=\"$1\" target=\"$2\">', $text);\n\n    // External Links (old style 2.1) without targets\n    $text = preg_replace(\"/<!\\*\\*\\s*Link\\s*External[\\s\\\"]*([^\\s\\\"]*)[\\s\\\"]*>/i\", '<a href=\"$1\">', $text);\n\n    // End link\n    $text = preg_replace(\"/<!\\*\\*\\s*EndLink\\s*>/i\", \"</a>\", $text);\n    // Images\n    preg_match_all(\"/<!\\*\\*\\s*Image\\s*([\\d]*)\\s*/i\",$text, $imageMatches);\n\n    preg_match_all(\"/\\s*sub=\\\"(.*?)\\\"/\", $text, $titles);\n\n    preg_match_all(\"/<!\\*\\*\\s*Image\\s*([\\d]*)\\s*(.*?)\\s*ratio=\\\"(.*?)\\\"/\", $text, $ratios);\n\n    // snippet tag format: <-- Snippet 1 -->\n    $snippetPattern = '<\\-\\-\\sSnippet\\s([\\d]+)\\s\\-\\->';\n    $text = preg_replace(\"/$snippetPattern/i\", '<div data-snippet-id=\"$1\" class=\"camp_snippet\">'.$translator->trans('Snippet', array(), 'articles').' $1</div>', $text);\n\n    if (isset($imageMatches[1][0])) {\n        if (isset($titles) && sizeof($titles) > 0) {\n            for ($x = 0; $x < sizeof($titles[0]); $x++) {\n                $text = preg_replace(\"/\\s*\".preg_replace('~\\/~', '\\/',\n                preg_quote($titles[0][$x])).\"/\", ' title=\"'.htmlspecialchars($titles[1][$x], ENT_QUOTES, 'UTF-8').'\"', $text);\n            }\n        }\n\n        $formattingErrors = FALSE;\n        foreach ($imageMatches[1] as $templateId) {\n            // Get the image URL\n            $articleImage = new ArticleImage($articleNumber, NULL, $templateId);\n            if (!$articleImage->exists()) {\n                ArticleImage::RemoveImageTagsFromArticleText($articleNumber, $templateId);\n                $formattingErrors = TRUE;\n                continue;\n            }\n            $image = new Image($articleImage->getImageId());\n            $imageUrl = $image->getImageUrl();\n            unset($fakeTemplateId);\n            if (isset($ratios) && sizeof($ratios) > 0) {\n                $n = 0;\n                foreach ($ratios[3] as $ratio) {\n                    if ($ratios[1][$n++] == $templateId) {\n                        $fakeTemplateId = $templateId.'_'.$ratio;\n                    }\n                }\n            }\n            if (!isset($fakeTemplateId)) {\n                $fakeTemplateId = $templateId;\n            }\n            $text = preg_replace(\"/<!\\*\\*\\s*Image\\s*\".$templateId.\"\\s+/i\", '<img src=\"'.$imageUrl.'\" id=\"'.$fakeTemplateId.'\" ', $text);\n        }\n        if ($formattingErrors) {\n            print ('<script type=\"text/javascript\">window.location.reload();</script>');\n        }\n    }\n\n    return $text;\n}\n\n$hasMultiDates = false;\n$multiDatesFields = array();\ninclude_once 'edit_html.php';\n\n// Display tinymce loading code if required\n$hasArticleBodyField = FALSE;\n\nforeach ($dbColumns as $dbColumn) {\n    if ($dbColumn->getType() == ArticleTypeField::TYPE_BODY) {\n        $hasArticleBodyField = TRUE;\n    }\n}\nif ($inEditMode && $hasArticleBodyField) {\n    $languageSelectedObj = new Language($f_language_selected);\n    $editorLanguage = !empty($_COOKIE['TOL_Language']) ? $_COOKIE['TOL_Language'] : $languageSelectedObj->getCode();\n    editor_load_tinymce($dbColumns, $g_user, $f_article_number, $editorLanguage);\n}\n\nforeach (array('fCustomFields', 'fCustomSwitches', 'fCustomTextares') as $var) {\n    if (!isset($$var)) {\n        $$var = array();\n    }\n}\n\n$jsArrayFieldsStr = '';\nfor ($i = 0; $i < sizeof($fCustomFields); $i++) {\n    $jsArrayFieldsStr .= \"'\" . addslashes($fCustomFields[$i]) . \"'\";\n    if ($i + 1 < sizeof($fCustomFields)) {\n        $jsArrayFieldsStr .= ',';\n    }\n}\n\n$jsArraySwitchesStr = '';\nfor ($i = 0; $i < sizeof($fCustomSwitches); $i++) {\n    $jsArraySwitchesStr .= \"'\" . addslashes($fCustomSwitches[$i]) . \"'\";\n    if ($i + 1 < sizeof($fCustomSwitches)) {\n        $jsArraySwitchesStr .= ',';\n    }\n}\n\n$jsArrayTextareasStr = '';\nif( isset($fCustomTextareas) )\n    for ($i = 0; $i < sizeof($fCustomTextareas); $i++) {\n        $jsArrayTextareasStr .= \"'\" . addslashes($fCustomTextareas[$i]) . \"'\";\n        if ($i + 1 < sizeof($fCustomTextareas)) {\n            $jsArrayTextareasStr .= ',';\n        }\n    }\n\ninclude 'edit_javascript.php';\n"
  },
  {
    "path": "newscoop/admin-files/articles/edit_comments_box.php",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n?>\n\t\t\t<table width=\"100%\" style=\"border: 1px solid #EEEEEE;\">\n\t\t\t<tr>\n\t\t\t\t<td>\n\t\t\t\t\t<table width=\"100%\" bgcolor=\"#EEEEEE\" cellpadding=\"3\" cellspacing=\"0\">\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td align=\"left\">\n                            <strong><?php echo $translator->trans(\"Comments\", array(), 'articles'); ?></strong>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n            <tr>\n\t\t\t\t<td align=\"left\" width=\"100%\" style=\"padding-left: 8px;\">\n                <?php\n                if ($preferencesService->UseDBReplication == 'Y') {\n                    if ($connectedToOnlineServer) {\n                ?>\n                    <span class=\"success_message\">\n                <?php\n                       echo $translator->trans(\"Online Server: On\", array(), 'articles');\n                    } elseif (isset($connectedToOnlineServer)\n                              &&$connectedToOnlineServer == false) {\n                ?>\n                    <span class=\"failure_message\">\n                <?php\n                        echo $translator->trans(\"Online Server: Off\", array(), 'articles');\n                    }\n                ?>\n                    </span><br />\n                <?php\n                }\n                ?>\n                    <?php echo $translator->trans(\"Total:\", array(), 'articles'); ?> <?php p(count($comments)); ?>\n                    <br />\n                    <?php if ($f_show_comments) { ?>\n                    <a href=\"<?php echo camp_html_article_url($articleObj, $f_language_selected, \"edit.php\", \"\", \"&f_show_comments=0\"); ?>\"><?php echo $translator->trans(\"Hide Comments\", array(), 'articles'); ?></a>\n                    <?php } else { ?>\n\t\t\t\t    <a href=\"<?php echo camp_html_article_url($articleObj, $f_language_selected, \"edit.php\", \"\", \"&f_show_comments=1\"); ?>\"><?php echo $translator->trans(\"Show Comments\", array(), 'articles'); ?></a>\n\t\t\t\t    <?php } ?>\n                </td>\n            </tr>\n            </table>\n"
  },
  {
    "path": "newscoop/admin-files/articles/edit_context_box.php",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n?>\n<div class=\"articlebox\" title=\"<?php echo $translator->trans('Related Articles', array(), 'articles'); ?>\"><div>\n<div id=\"context_box\">\n    <div id=\"contextBoxArticlesList\" style=\"display:block; padding-bottom:8px;\">\n\n    </div>\n\n    <?php if ($inEditMode && $g_user->hasPermission('ChangeArticle')) : ?>\n        <a class=\"iframe ui-state-default icon-button right-floated\"\n        href=\"<?php echo camp_html_article_url($articleObj, $f_language_id, \"context_box/popup.php\"); ?>\">\n        <span class=\"ui-icon ui-icon-pencil\"></span><?php echo $translator->trans('Edit'); ?></a>\n    <?php endif; ?>\n</div>\n</div></div>\n"
  },
  {
    "path": "newscoop/admin-files/articles/edit_html.php",
    "content": "<?php\n/**\n * @package Newscoop\n */\n$translator = \\Zend_Registry::get('container')->getService('translator');\n// If the article is locked say so to the user\nif ($articleObj->userCanModify($g_user) && $locked && !$inViewMode) {\n?>\n<div class=\"wrapper\">\n  <div class=\"main-content-wrapper\">\n    <div class=\"ui-widget-content big-block block-shadow padded-strong\" style=\"text-align:center;\">\n      <h3 class=\"alert\"><?php echo $translator->trans('Article is locked', array(), 'articles'); ?></h3>\n      <fieldset class=\"plain\">\n        <ul>\n          <li>\n          <?php\n          $timeDiff = camp_time_diff_str($articleObj->getLockTime());\n          if ($timeDiff['hours'] > 0) {\n              echo $translator->trans('The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.', array(\n                  '$1' => '<b>'.htmlspecialchars($lockUserObj->getRealName()),\n                  '$2' => htmlspecialchars($lockUserObj->getUserName()).'</b>',\n                  '$3' => $timeDiff['hours'],\n                  '$4' => $timeDiff['minutes']), 'articles');\n          } else {\n              echo $translator->trans('The article has been locked by $1 ($2) $3 minute(s) ago.', array(\n                  '$1' => '<b>'.htmlspecialchars($lockUserObj->getRealName()),\n                  '$2' => htmlspecialchars($lockUserObj->getUserName()).'</b>',\n                  '$3' => $timeDiff['minutes']), 'articles');\n          }\n          ?>\n          </li>\n          <li>\n            <input type=\"button\" name=\"Yes\" value=\"<?php echo $translator->trans('Unlock'); ?>\" class=\"button\" onclick=\"location.href='<?php echo camp_html_article_url($articleObj, $f_language_id, \"do_unlock.php\", '', null, true); ?>'\" />\n            <input type=\"button\" name=\"Yes\" value=\"<?php echo $translator->trans('View'); ?>\" class=\"button\" onclick=\"location.href='<?php echo camp_html_article_url($articleObj, $f_language_id, \"edit.php\", \"\", \"&f_edit_mode=view\"); ?>'\" />\n            <input type=\"button\" name=\"No\" value=\"<?php echo $translator->trans('Cancel'); ?>\" class=\"button\" onclick=\"location.href='/<?php echo $ADMIN; ?>/articles/?f_publication_id=<?php p($f_publication_id); ?>&f_issue_number=<?php p($f_issue_number); ?>&f_language_id=<?php p($f_language_id); ?>&f_section_number=<?php p($f_section_number); ?>'\" />\n          </li>\n        </ul>\n      </fieldset>\n    </div>\n  </div>\n</div>\n<?php\n    camp_html_copyright_notice();\n\n    return;\n}\n\n// Get proper URL to switch between modes\nif ($articleObj->userCanModify($g_user)) {\n    $switchModeUrl = camp_html_article_url($articleObj, $f_language_id, 'edit.php')\n        . '&f_edit_mode=' . ( ($inEditMode) ? 'view' : 'edit');\n}\n\n// Display either the \"Go to live article\" or \"Preview\" button\n// depending on article status\n$doPreviewLink = '';\nif (isset($publicationObj) && $articleObj->isPublished()) {\n    if ($publicationObj->getUrlTypeId() == 2) {\n        $previewLinkURL = ShortURL::GetURL($publicationObj->getPublicationId(),\n            $articleObj->getLanguageId(), null, null, $articleObj->getArticleNumber());\n        $doPreviewLink = 'live';\n\n        $seoFields = $publicationObj->getSeo();\n        $articleEndLink = $articleObj->getSEOURLEnd($seoFields, $articleObj->getLanguageId());\n        if (strlen($articleEndLink) > 0) {\n            $previewLinkURL .= $articleEndLink;\n        }\n\n        if (!is_string($previewLinkURL) && PEAR::isError($previewLinkURL)) {\n            $doLiveLink = '';\n        }\n    }\n} else {\n    if (isset($publicationObj) && (0 < $f_publication_id) && (0 < $f_issue_number) && (0 < $f_section_number)) {\n        $doPreviewLink = 'preview';\n        $previewLinkURL = \"/$ADMIN/articles/preview.php?f_publication_id=$f_publication_id\"\n            . \"&f_issue_number=$f_issue_number&f_section_number=$f_section_number\"\n            . \"&f_article_number=$f_article_number&f_language_id=$f_language_id&f_language_selected=$f_language_selected\";\n    }\n}\n\n?>\n  <!-- BEGIN Article Title and Saving buttons bar //-->\n  <div class=\"toolbar clearfix\">\n  <?php if ($inEditMode) { ?>\n    <input class=\"top-input\" name=\"f_article_title\" id=\"f_article_title\" type=\"text\"\n      value=\"<?php print htmlspecialchars($articleObj->getTitle()); ?>\" <?php print $spellcheck ?> />\n  <?php } elseif ($locked) {\n  ?>\n    <span class=\"article-title-locked\"><?php print wordwrap(htmlspecialchars($articleObj->getTitle()), 80, '<br />'); ?></span>\n  <?php } else { ?>\n    <span class=\"article-title\"><?php print wordwrap(htmlspecialchars($articleObj->getTitle()), 80, '<br />'); ?></span>\n  <?php } ?>\n\n    <span class=\"comments\"><?php p(count(isset($comments) ? $comments : array())); ?></span>\n    <div class=\"save-button-bar\">\n      <input type=\"submit\" class=\"save-button\" value=\"<?php echo $translator->trans('Save All', array(), 'articles'); ?>\" id=\"save\" name=\"save\" <?php if (!$inEditMode) { ?> disabled style=\"opacity: 0.3\"<?php } ?> />\n      <?php if ($inEditMode) { ?>\n        <input type=\"submit\" class=\"save-button\" value=\"<?php echo $translator->trans('Close'); ?>\" id=\"close\" name=\"close\" />\n      <?php } ?>\n      <input type=\"submit\" class=\"save-button\" value=\"<?php echo $inEditMode ? $translator->trans('Save and Close') : $translator->trans('Close'); ?>\" id=\"save_and_close\" name=\"save_and_close\" />\n    </div>\n    <div class=\"top-button-bar\">\n      <input type=\"button\" name=\"edit\" value=\"<?php echo $translator->trans('Edit'); ?>\" <?php if ($inEditMode || ! $articleObj->userCanModify($g_user)) {?> disabled=\"disabled\" class=\"default-button disabled\"<?php } else { ?> onclick=\"location.href='<?php p($switchModeUrl); ?>';\" class=\"default-button\"<?php } ?> />\n      <input type=\"button\" name=\"edit\" value=\"<?php echo $translator->trans('View'); ?>\" <?php if ($inViewMode) {?> disabled=\"disabled\" class=\"default-button disabled\"<?php } else { ?> onclick=\"location.href='<?php p($switchModeUrl); ?>';\" class=\"default-button\"<?php } ?> />\n      <?php if ($doPreviewLink == 'live') { ?>\n      <a class=\"ui-state-default icon-button\" target=\"_blank\" href=\"<?php echo $previewLinkURL; ?>\"><span class=\"ui-icon ui-icon-extlink\"></span><?php echo $translator->trans('Go to live article', array(), 'articles'); ?></a>\n      <?php } elseif ($doPreviewLink == 'preview') { ?>\n      <a class=\"ui-state-default icon-button\" href=\"#\" onclick=\"window.open('<?php echo $previewLinkURL; ?>', 'fpreview', 'resizable=yes, menubar=no, toolbar=no, width=780, height=660'); return false;\"><span class=\"ui-icon ui-icon-extlink\"></span><?php echo $translator->trans('Preview'); ?></a>\n      <?php } ?>\n    </div>\n    <div id=\"f_article_count\" class=\"j-countable rt\">&nbsp;</div>\n  </div>\n  <!-- END Article Title and Saving buttons bar //-->\n\n<div class=\"wrapper\">\n  <!-- BEGIN Info/Messaging bar //-->\n  <div class=\"info-bar\">\n    <span class=\"info-text\" id=\"info-text\"></span>\n  </div>\n  <!-- END Infor/Messaging bar //-->\n\n  <!-- START Main form //-->\n  <div class=\"main-content-wrapper\">\n  <form id=\"article-main\" action=\"/<?php echo $ADMIN; ?>/articles/post.php\" method=\"POST\">\n        <?php echo SecurityToken::formParameter(); ?>\n        <?php\n            $hiddens = array(\n                'f_publication_id',\n                'f_issue_number',\n                'f_section_number',\n                'f_language_id',\n                'f_language_selected',\n                'f_article_number',\n                'f_article_title'\n                );\n            foreach ($hiddens as $name) {\n                if (!isset($$name)) {\n                    $$name = '';\n                }\n\n                echo '<input type=\"hidden\" name=\"', $name;\n                echo '\" value=\"', $$name, '\" />', \"\\n\";\n            }\n        ?>\n\n    <div class=\"ui-widget-content big-block block-shadow padded-strong\">\n      <fieldset class=\"plain\">\n      <!-- BEGIN Authors //-->\n      <?php include_once('edit_html_authors.php'); ?>\n      <!-- END Authors //-->\n\n      <!-- BEGIN Dates //-->\n      <ul>\n        <li>\n          <label><?php echo $translator->trans('Date'); ?></label>\n          <?php if ($articleObj->isPublished()) { ?>\n          <div class=\"text-container left-floated date-published\"><b><?php echo $translator->trans('Published'); ?>:</b> <span class=\"f_publish_date\"><?php print htmlspecialchars($articleObj->getPublishDate()); ?></span>\n            <?php if ($inEditMode) { ?><input type=\"hidden\" name=\"f_publish_date\" value=\"<?php echo $articleObj->getPublishDate(); ?>\" class=\"datetime\" /><?php } ?></div>\n          <?php } ?>\n          <div class=\"text-container left-floated date-created\"><?php echo $translator->trans('Created', array(), 'articles'); ?>: <span class=\"f_creation_date\"><?php print htmlspecialchars($articleObj->getCreationDate()); ?></span>\n            <?php if ($inEditMode) { ?><input type=\"hidden\" name=\"f_creation_date\" value=\"<?php echo $articleObj->getCreationDate(); ?>\" class=\"datetime\" /><?php } ?></div>\n          <div class=\"text-container left-floated date-changed\"><span class=\"date-last-modified\" id=\"date-last-modified\"></span></div>\n        </li>\n      </ul>\n      <?php if ($inEditMode) { ?>\n      <script type=\"text/javascript\">\n      $(function () {\n          // update displayed datetime\n          $('input:hidden.datetime').change(function () {\n              $('span.' + $(this).attr('name')).text($(this).val());\n          }).next().css('vertical-align', 'middle')\n          .css('margin-top', '-3px')\n          .css('cursor', 'pointer');\n      });\n      </script>\n      <?php } ?>\n      <!-- END Dates //-->\n      </fieldset>\n      <fieldset class=\"plain\">\n        <ul>\n        <?php\n\n        foreach ($dbColumns as $dbColumn) {\n            // Single line text fields\n            if ($dbColumn->getType() == ArticleTypeField::TYPE_TEXT) {\n        ?>\n          <li>\n            <label><?php echo htmlspecialchars($dbColumn->getDisplayName($articleObj->getLanguageId())); ?></label>\n            <?php\n            if ($inEditMode) {\n                $fCustomFields[] = $dbColumn->getName();\n            ?>\n            <input name=\"<?php echo $dbColumn->getName(); ?>\"\n              id=\"<?php echo $dbColumn->getName(); ?>\"\n              type=\"text\"\n              size=\"45\"\n              value=\"<?php print htmlspecialchars($articleData->getProperty($dbColumn->getName())); ?>\"\n              autocomplete=\"off\"\n              style=\"width:70%;\"\n              <?php if($dbColumn->getMaxSize()!=0 && $dbColumn->getMaxSize()!=''): ?>\n                maxlength=\"<?php echo $dbColumn->getMaxSize(); ?>\"\n                class=\"input_text countableft\"\n             <?php else: ?>\n              class=\"input_text\"\n             <?php endif; ?>\n              <?php print $spellcheck ?> />\n            <?php } else {\n                print htmlspecialchars($articleData->getProperty($dbColumn->getName()));\n            }\n            ?>\n          </li>\n        <?php\n\n            } elseif ($dbColumn->getType() == ArticleTypeField::TYPE_LONGTEXT) {\n        ?>\n          <li>\n            <label><?php echo htmlspecialchars($dbColumn->getDisplayName($articleObj->getLanguageId())); ?></label>\n            <?php\n            if ($inEditMode) {\n                $fCustomFields[] = $dbColumn->getName();\n            ?>\n              <textarea name=\"<?php echo $dbColumn->getName(); ?>\"\n                id=\"<?php echo $dbColumn->getName(); ?>\"\n                rows=\"5\"\n                cols=\"40\"\n                style=\"width:70%;height:100%;\"\n                class=\"input_text\"\n                <?php print $spellcheck ?>><?php print htmlspecialchars($articleData->getProperty($dbColumn->getName())); ?></textarea>\n            <?php\n            } else {\n                print htmlspecialchars($articleData->getProperty($dbColumn->getName()));\n            }\n            ?>\n          </li>\n        <?php\n            } elseif ($dbColumn->getType() == ArticleTypeField::TYPE_DATE) {\n                // Date fields\n                if ($articleData->getProperty($dbColumn->getName()) == '0000-00-00') {\n                    $articleData->setProperty($dbColumn->getName(), 'CURDATE()', TRUE, TRUE);\n                }\n        ?>\n          <li>\n            <label><?php echo htmlspecialchars($dbColumn->getDisplayName($articleObj->getLanguageId())); ?></label>\n            <?php\n            if ($inEditMode) {\n                $fCustomFields[] = $dbColumn->getName();\n            ?>\n            <input name=\"<?php echo $dbColumn->getName(); ?>\"\n              id=\"<?php echo $dbColumn->getName(); ?>\"\n              type=\"text\"\n              value=\"<?php echo htmlspecialchars($articleData->getProperty($dbColumn->getName())); ?>\"\n              class=\"input_text datepicker\"\n              size=\"11\"\n              maxlength=\"10\" />\n            <?php } else { ?>\n            <span style=\"padding-left: 4px; padding-right: 4px; padding-top: 1px; padding-bottom: 1px; border: 1px solid #888; margin-right: 5px; background-color: #EEEEEE;\"><?php echo htmlspecialchars($articleData->getProperty($dbColumn->getName())); ?></span>\n            <?php\n            }\n            ?>\n            &nbsp;<?php echo $translator->trans('YYYY-MM-DD'); ?>\n          </li>\n        <?php\n            } elseif ($dbColumn->getType() == ArticleTypeField::TYPE_BODY) {\n                // Multiline text fields\n                // Transform Campsite-specific tags into editor-friendly tags.\n                $unparsedText = $articleData->getProperty($dbColumn->getName());\n                $text = parseTextBody($unparsedText, $f_article_number);\n                $editorSize = str_replace('editor_size=', '', $dbColumn->m_data['field_type_param']);\n                if (!is_numeric($editorSize)) {\n                    require_once($GLOBALS['g_campsiteDir'].'/classes/ArticleTypeField.php');\n                    $editorSize = ArticleTypeField::BODY_ROWS_MEDIUM;\n                }\n        ?>\n          <li>\n            <label><?php echo htmlspecialchars($dbColumn->getDisplayName($articleObj->getLanguageId())); ?></label>\n            <div class=\"tinyMCEHolder\" style=\"overflow: auto; min-width: 670px; <?php echo $inEditMode ? '' : 'width: 74%'; ?>\">\n            <?php\n            if ($inEditMode) {\n                $textAreaId = $dbColumn->getName() . '_' . $f_article_number;\n                $fCustomTextareas[] = $textAreaId;\n            ?>\n              <textarea name=\"<?php print($textAreaId); ?>\"\n                id=\"<?php print($textAreaId); ?>\" class=\"tinymce\"\n                style=\"height: <?php print($editorSize); ?>px;\" cols=\"70\"><?php print $text; ?></textarea>\n            <?php } else { ?>\n              <?php p($text); ?>\n            <?php } ?>\n          </li>\n        <?php\n            } elseif ($dbColumn->getType() == ArticleTypeField::TYPE_TOPIC) {\n                $articleTypeField = new ArticleTypeField($articleObj->getType(),\n                                                         substr($dbColumn->getName(), 1));\n                $rootTopicId = $articleTypeField->getTopicTypeRootElement();\n                $em = \\Zend_Registry::get('container')->getService('em');\n                $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n                $topicService = \\Zend_Registry::get('container')->getService('newscoop_newscoop.topic_service');\n                $cacheKey = $cacheService->getCacheKey(array('topics_editor_article_type', $rootTopicId), 'topic');\n                $repository = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic');\n                if ($cacheService->contains($cacheKey)) {\n                    $subtopics = $cacheService->fetch($cacheKey);\n                } else {\n                    $topic = $repository->getTopicByIdOrName($rootTopicId, camp_session_get('TOL_Language', 'en'))->getOneOrNullResult();\n                    if ($topic && count($topic->getChildren()) > 0) {\n                        $subtopics = $topic->getChildren();\n                    }\n\n                    $cacheService->save($cacheKey, $subtopics);\n                }\n\n                $articleTopicId = $articleData->getProperty($dbColumn->getName());\n        ?>\n          <li>\n            <label><?php echo htmlspecialchars($dbColumn->getDisplayName($articleObj->getLanguageId())); ?></label>\n                <?php if (count($subtopics) == 0) { ?>\n                <?php echo $translator->trans('No subtopics available', array(), 'articles'); ?>\n                <?php } else { ?>\n                    <select class=\"input_select\" name=\"<?php echo $dbColumn->getName(); ?>\" id=\"<?php echo $dbColumn->getName(); ?>\" <?php if ($f_edit_mode != \"edit\") { ?>disabled<?php } ?>>\n                    <option value=\"0\"></option>\n                    <?php\n                      foreach ($subtopics as $topic) {\n                          echo '<option value=\"' . $topic->getTopicId() . '\">'\n                              . htmlspecialchars($topicService->getReadablePath($topic)) . \"</option>\\n\";\n                      }\n                    ?>\n                    </select>\n        <?php\n                }\n            } elseif ($dbColumn->getType() == ArticleTypeField::TYPE_NUMERIC) {\n        ?>\n          <li>\n            <label><?php echo htmlspecialchars($dbColumn->getDisplayName($articleObj->getLanguageId())); ?></label>\n            <input type=\"text\" class=\"input_text\" size=\"20\" maxlength=\"20\" <?php print $spellcheck ?>\n              name=\"<?php echo $dbColumn->getName(); ?>\"\n              id=\"<?php echo $dbColumn->getName(); ?>\"\n              value=\"<?php echo htmlspecialchars($articleData->getProperty($dbColumn->getName())); ?>\"\n              <?php if ($inViewMode) { ?>disabled<?php } ?> />\n          </li>\n        <?php\n            } elseif ( $dbColumn->getType() == ArticleTypeField::TYPE_COMPLEX_DATE ) {\n                $hasMultiDates = true;\n                $multiDatesFields[] = $dbColumn->getPrintName();\n            }\n        }\n        ?>\n\n    <?php if ($inEditMode && $showCommentControls) { ?>\n    <li>\n        <label><?php echo $translator->trans('Comment settings', array(), 'articles'); ?></label>\n        <input type=\"radio\" name=\"f_comment_status\" value=\"enabled\" class=\"input_radio\" id=\"f_comment_status_enabled\" <?php if ($articleObj->commentsEnabled() && !$articleObj->commentsLocked()) { ?> checked<?php } ?> />\n        <label for=\"f_comment_status_enabled\" class=\"inline-style left-floated\" style=\"padding-right:15px;\"><?php echo $translator->trans('Enabled', array(), 'articles'); ?></label>\n        <input type=\"radio\" name=\"f_comment_status\" value=\"disabled\" class=\"input_radio\" id=\"f_comment_status_disabled\" <?php if (!$articleObj->commentsEnabled()) { ?> checked<?php } ?> />\n        <label for=\"f_comment_status_disabled\" class=\"inline-style left-floated\" style=\"padding-right:15px;\"><?php echo $translator->trans('Disabled', array(), 'articles'); ?></label>\n        <input type=\"radio\" name=\"f_comment_status\" value=\"locked\" class=\"input_radio\" id=\"f_comment_status_locked\" <?php if ($articleObj->commentsEnabled() && $articleObj->commentsLocked()) { ?> checked<?php } ?>  />\n        <label for=\"f_comment_status_locked\" class=\"inline-style left-floated\"><?php echo $translator->trans('Locked', array(), 'articles'); ?></label>\n    </li>\n    <?php } ?>\n      </ul>\n      </fieldset>\n    </div>\n  </form><!-- /form#article -->\n\n    <?php if ($showCommentControls && $g_user->hasPermission('CommentEnable')) { ?>\n    <div id=\"comments-list\" class=\"ui-widget-content big-block block-shadow\">\n      <div class=\"collapsible\">\n        <h3 class=\"head ui-accordion-header ui-helper-reset ui-state-default ui-widget\">\n        <span class=\"ui-icon\"></span>\n        <a href=\"#\" tabindex=\"-1\"><?php echo $translator->trans('Comments', array(), 'articles'); ?></a></h3>\n      </div>\n      <div class=\"padded-strong\">\n        <?php include('comments/show_comments.php'); ?>\n      </div>\n    </div>\n    <?php } ?>\n\n    <?php if ($inEditMode && $showCommentControls && $g_user->hasPermission('CommentEnable')) { ?>\n    <div id=\"comments-form\" class=\"ui-widget-content big-block block-shadow padded-strong\">\n      <?php include('comments/add_comment_form.php'); ?>\n    </div>\n    <?php } ?>\n    <!-- END Comments //-->\n  </div>\n  <!-- END Main form //-->\n\n  <!-- START Side bar //-->\n  <div class=\"sidebar\">\n      <!-- BEGIN Scheduled Publishing table -->\n      <?php require('edit_main_box.php'); ?>\n      <!-- END Scheduled Publishing table -->\n\n      <!-- editorial comments hook -->\n      <?php\n      echo \\Zend_Registry::get('container')->getService('newscoop.plugins.service')\n        ->renderPluginHooks('newscoop_admin.interface.article.edit.sidebar.editorialComments', null, array(\n            'article' => $articleObj,\n            'edit_mode' => $f_edit_mode\n        ));\n      ?>\n\n      <!-- BEGIN Geo-locations table -->\n      <?php require('edit_locations_box.php'); ?>\n      <!-- END Geo-locations table -->\n\n      <!-- BEGIN Topics table -->\n      <?php require('edit_topics_box.php'); ?>\n      <!-- END Topics table -->\n\n      <!-- BEGIN Switches table -->\n      <?php require('edit_switches_box.php'); ?>\n      <!-- END Switches table -->\n\n      <!-- BEGIN Info table -->\n      <?php require('edit_info_box.php'); ?>\n      <!-- END Info table -->\n\n      <!-- BEGIN Media table -->\n      <?php require('edit_media_box.php'); ?>\n      <!-- END Images table -->\n\n      <!-- BEGIN Context Box table -->\n      <?php require('edit_context_box.php'); ?>\n      <!-- END Context Box table -->\n\n      <!-- BEGIN Article Playlist table -->\n      <?php require('edit_playlist.php'); ?>\n      <!-- END Article Playlist table -->\n\n      <!-- BEGIN Multi date table -->\n      <?php\n      if ($hasMultiDates) {\n          echo '\n  <script type=\"text/javascript\">\n    window.has_multidates = true;\n  </script>';\n          require 'edit_multidate_box.php';\n      }\n      ?>\n      <!-- END Multi date table -->\n\n      <!-- Old plugins hooks -->\n      <?php CampPlugin::adminHook(__FILE__, array( 'articleObj' => $articleObj, 'f_edit_mode' => $f_edit_mode ) ); ?>\n\n      <!-- New plugins hooks -->\n      <?php\n      echo \\Zend_Registry::get('container')->getService('newscoop.plugins.service')\n        ->renderPluginHooks('newscoop_admin.interface.article.edit.sidebar', null, array(\n            'article' => $articleObj,\n            'edit_mode' => $f_edit_mode\n        ));\n      ?>\n\n  </div>\n  <script type=\"text/javascript\">\n  $(document).ready(function () {\n    $('.sidebar .articlebox').each(function () {\n        var box = $(this);\n        var title = box.attr('title');\n\n        // main classes\n        box.addClass('ui-widget-content small-block block-shadow');\n\n        // wrap content\n        $('> *', box).wrapAll('<div class=\"padded clearfix\" />');\n\n        // wrap header\n        var header = $('<div class=\"collapsible\" />').prependTo(box);\n        $('<h3><span class=\"ui-icon\"></span><a href=\"#\" tabindex=\"-1\">'+title+'</a></h3>')\n            .addClass('head ui-accordion-header ui-helper-reset ui-state-default ui-widget')\n            .appendTo(header);\n    });\n\n    // init tabs\n    $('.sidebar .tabs').each(function () {\n        $(this).tabs();\n        $(this).closest('.padded').addClass('inner-tabs');\n    });\n  });\n  </script>\n  <!-- END Side bar //-->\n\n</div>\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/edit_html_authors.php",
    "content": "      <?php\n      $translator = \\Zend_Registry::get('container')->getService('translator');\n      function drawCombo($id, $pos) {\n          $combo = '<select name=\"f_article_author_type[]\" id=\"article_author_type' . $pos . '\"\n              class=\"input_select aaselect\" onchange=\"\" style=\"width:130px;height:100%;margin-bottom:2px;float:none\">';\n          $combo .= drawComboContent($id);\n          $combo .= '    </select>   ';\n          return $combo;\n      }\n\n      function drawComboContent($id = 0) {\n          $combo = '';\n          $types = AuthorType::GetAuthorTypes();\n          foreach ($types as $xtype) {\n              $combo .=  '<option value=\"' . $xtype->getId() . '\"';\n              if ($id == $xtype->getId()) {\n                  $combo.= ' selected=\"selected\" ';\n              }\n              $combo .= '>' . $xtype->getName() . '</option>';\n          }\n          return $combo;\n      }\n      ?>\n      <script type=\"text/javascript\">\n      function  addAuthor(){\n          var rnumber=Math.floor(Math.random()*9876)\n          $('#authorContainer ul').append('<li id=\"author_li' + rnumber + '\"><div class=\"item_alt\"><div><span id=\"author_type' + rnumber + '\" style=\"margin-top:1px; margin-left: 20px;\"><select name=\"f_article_author_type[]\" id=\"article_author_typexx\" class=\"input_select aaselect\" style=\"width:130px;height:100%;margin-bottom:2px;float:none\"><?php echo drawComboContent(); ?></select></span><input type=\"text\" name=\"f_article_author[]\" id=\"f_article_authorxx\" size=\"45\" class=\"input_text_alt aauthor\" style=\"margin-left: 20px;\" value=\"\" autocomplete=\"off\" /><a class=\"icon delete\" href=\"#\" id=\"removeauthorxx\" onclick=\"deleteAuthor(' + rnumber + ');\"><span class=\"ui-icon ui-icon-closethick\"></span></a></div></div></li>');\n      }\n\n      function deleteAuthor(id, empty){\n          $('#f_article_author' + id).remove();\n          $('#article_author_type' + id).remove();\n          $('#removeauthor' + id).remove();\n          $('#author_li' + id).remove();\n          $('#article-main').addClass('changed');\n      }\n      \n      $(document).ready(function() {\n          var orderChanges = {};\n          $('.sortable').sortable({\n                revert: 100,\n                distance: 5,\n                start: function(event, ui) {\n                    $(this).data( 'is-sorting', true );\n                    sorting = true;\n                    //ui.item.addClass('move');\n                },\n                stop: function(event, ui) {\n                    $(this).data( 'is-sorting', false );\n                    sorting = false;\n                    //ui.item.removeClass('move');\n                },\n                update: function(event, ui) {\n                    $('#article-main').addClass('changed');\n                },\n            });\n      }); // /document.ready\n      \n      \n      </script>\n      <?php\n      // Get the list of authors\n      $authors = ArticleAuthor::GetAuthorsByArticle($articleObj->getArticleNumber(), $articleObj->getLanguageId());\n      if ($inEditMode) {\n      ?>\n      <div id=\"authorAutoComplete\">\n      <ul>\n        <li>\n          <label><?php echo $translator->trans('Authors', array(), 'articles'); ?></label>\n          <div id=\"authorContainer\">\n          <ul class=\"tree sortable\">\n      <?php\n          if (!empty($authors)) {\n              $i = 0;\n              foreach ((array) $authors as $author) {\n      ?>\n            <li id=\"<?php p('author_li'.$i); ?>\">\n              <div class=\"item_alt\">\n                <div>\n                    <span id=\"<?php p('author_type'.$i); ?>\" style=\"margin-top:1px; margin-left: 20px;\"><?php echo drawCombo($author->getAuthorType()->getId(), $i); ?></span>\n                    <input type=\"text\" name=\"f_article_author[]\" id=\"f_article_author<?php echo $i; ?>\" size=\"45\" class=\"input_text_alt aauthor\" style=\"margin-left: 20px;\" value=\"<?php print htmlspecialchars($author->getName()); ?>\" autocomplete=\"off\" />\n                    <a class=\"icon delete\" href=\"#\" id=\"removeauthor<?php echo $i;?>\" onclick=\"deleteAuthor('<?php echo $i; ?>');\">\n                        <span class=\"ui-icon ui-icon-closethick\"></span>\n                    </a>\n                </div>\n              </div>\n            </li>\n      <?php\n                  $i++;\n              }\n          }\n      ?>\n            <li id=\"author_lixx\">\n              <div class=\"item_alt\">\n                <div>\n                    <span id=\"author_typexx\" style=\"margin-top:1px; margin-left: 20px;\">\n                        <select name=\"f_article_author_type[]\" id=\"article_author_typexx\" class=\"input_select aaselect\" style=\"width:130px;height:100%;margin-bottom:2px;float:none\">\n                        <?php echo drawComboContent(); ?>\n                        </select>\n                    </span>\n                    \n                    <input type=\"text\" name=\"f_article_author[]\" id=\"f_article_authorxx\" size=\"45\" class=\"input_text_alt aauthor\" style=\"margin-left: 20px;\" value=\"\" autocomplete=\"off\" />\n                    <a class=\"icon delete\" href=\"#\" id=\"removeauthorxx\" onclick=\"deleteAuthor('xx');\">\n                        <span class=\"ui-icon ui-icon-closethick\"></span>\n                    </a>\n                </div>\n              </div>\n            </li>\n            \n          </ul>\n          </div>\n        </li>\n        <li>\n          <ul>\n            <li>\n              <a class=\"ui-state-default icon-button left-floated\"\n                href=\"#\" onclick=\"addAuthor();\"><span\n                class=\"ui-icon ui-icon-plusthick\"></span><?php echo $translator->trans('Add another author', array(), 'articles'); ?></a>\n            </li>\n          </ul>\n        </li>\n      </ul>\n      </div>\n      <?php } else { ?>\n      <ul>\n        <li>\n          <label><?php echo $translator->trans('Authors', array(), 'articles'); ?></label>\n          <?php\n          if (!empty($authors)) {\n              foreach ((array) $authors as $author) {\n          ?>\n            <div class=\"text-container authorlist\">\n              <span class=\"author-type-label\"><?php echo (!is_null($author->getAuthorType())) ? ($author->getAuthorType()->getName()) : ''; ?>:</span>\n              <span class=\"publish_date\"><?php p($author->getName()); ?></span>\n            </div>\n          <?php\n              }\n          }\n          ?>\n        </li>\n      </ul>\n      <?php } ?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/edit_info_box.php",
    "content": "<?php\n  $translator = \\Zend_Registry::get('container')->getService('translator');\n?>\n\n<div class=\"ui-widget-content small-block block-shadow\">\n  <div class=\"collapsible\">\n    <h3 class=\"head ui-accordion-header ui-helper-reset ui-state-default ui-widget\">\n    <span class=\"ui-icon\"></span>\n    <a href=\"#\" tabindex=\"-1\"><?php echo $translator->trans('Info', array(), 'articles'); ?></a></h3>\n  </div>\n  <div class=\"padded clearfix\">\n    <dl class=\"inline-list\">\n      <dt><?php echo $translator->trans('Reads'); ?></dt>\n      <dd>\n        <?php\n        if ($articleObj->isPublished()) {\n            $requestObject = new RequestObject($articleObj->getProperty('object_id'));\n            echo $requestObject->exists() ? $requestObject->getRequestCount() : '0';\n        } else {\n            echo $translator->trans('N/A');\n        }\n        ?>\n      </dd>\n      <dt><?php echo $translator->trans('Type'); ?></dt>\n      <dd><?php print htmlspecialchars($articleType->getDisplayName()); ?></dd>\n      <dt><?php echo $translator->trans('Number'); ?></dt>\n      <dd><?php p($articleObj->getArticleNumber()); ?></dd>\n      <dt><?php echo $translator->trans('Created by'); ?></dt>\n      <dd><?php\n          if ($articleCreator->getRealName()) {\n              p(htmlspecialchars(sprintf('%s %s', $articleCreator->getRealName(), $articleCreator->getLastName())));\n\n              echo ' (<a style=\"color:#007fb3;\" href=\"'.\\Zend_Registry::get('container')->get('zend_router')->assemble(array(\n                        'module' => 'admin',\n                        'controller' => 'user',\n                        'action' => 'edit',\n                        'user' => $articleCreator->getUserId(),\n                    ), 'default', true).'\">'.$articleCreator->getUserName().'</a>)';\n          } else {\n              echo $translator->trans('N/A');\n          }\n      ?></dd>\n      <dt><?php echo $translator->trans('Webcode', array(), 'articles'); ?></dt>\n      <dd><?php echo '+', $articleObj->getWebcode(); ?></dd>\n      <dt><?php echo $translator->trans('Rating', array(), 'articles'); ?></dt>\n      <dd><?php echo $articleObj->getRating(); ?></dd>\n      <!-- render here results of admin.article.edit.info events classes -->\n    </dl>\n  </div>\n</div>\n"
  },
  {
    "path": "newscoop/admin-files/articles/edit_javascript.php",
    "content": "<?php\n  $translator = \\Zend_Registry::get('container')->getService('translator');\n?>\n<script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/json2.js\"></script>\n<script type=\"text/javascript\">\n// Print last modified date\nvar dateTime = '<?php if ($savedToday) { p(date(\"H:i:s\", $lastModified)); } else { p(date(\"Y-m-d H:i\", $lastModified)); } ?>';\nvar fullDate = '<?php p(date(\"Y-m-d H:i:s\", $lastModified)); ?>';\ndocument.getElementById('info-text').innerHTML = '<?php echo $translator->trans('Saved', array(), 'articles'); ?> ' + ' ' + dateTime;\ndocument.getElementById('date-last-modified').innerHTML = '<?php echo $translator->trans('Last modified', array(), 'articles'); ?> ' + ': ' + fullDate;\n\n/**\n * Close window after timeout\n * @param int timeout\n * @return void\n */\nvar close = function(timeout) {\n    setTimeout(\"window.location.href = '<?php\n    if ($f_publication_id > 0 && $f_issue_number > 0 && $f_section_number > 0) {\n        echo \"/$ADMIN/articles/index.php?f_publication_id=$f_publication_id&f_issue_number=$f_issue_number&f_language_id=$f_language_id&f_section_number=$f_section_number\";\n    } else if ($f_publication_id > 0) {\n        echo \"/$ADMIN/pending_articles/index.php\";\n    } else {\n        echo \"/$ADMIN/\";\n    }\n    ?>'\", timeout);\n};\n\n$(function() {\n\n// make breadcrumbs + save buttons sticky\n$('.breadcrumb-bar, .toolbar').wrapAll('<div class=\"sticky\" />');\n\n// datepicker for date\n$('.datepicker').datepicker({\n    dateFormat: 'yy-mm-dd'\n});\n\n// accordion hovers\n$('.ui-accordion-header').hover(\n    function(){ $(this).removeClass('ui-state-default').addClass('ui-state-hover'); },\n    function(){ $(this).removeClass('ui-state-hover').addClass('ui-state-default'); }\n);\n\n// hover states on the static widgets\n$('.icon-button').hover(\n    function() { $(this).addClass('ui-state-hover'); },\n    function() { $(this).removeClass('ui-state-hover'); }\n);\n\n$('.collapsible').each(function(index) {\n    var head = $('> .head', $(this));\n    var cookie = 'articlebox-' + index;\n    var closed = $.cookie(cookie);\n    var expires = { expires: 14 } // 14 days cookie expiration\n\n    // init by cookie\n    if (closed != 1) {\n        head.addClass('ui-state-active');\n    } else {\n        $(this).next().hide();\n    }\n\n    // toggle\n    $(this).click(function() {\n        $(this).next().toggle('fast');\n        head.toggleClass('ui-state-active');\n        if (head.hasClass('ui-state-active')) {\n            $.cookie(cookie, 0, expires);\n        } else {\n            $.cookie(cookie, 1, expires);\n        }\n        return false;\n    });\n});\n\n// copy title to hidden field\n$('input:text[name=f_article_title]').change(function() {\n    $('input:hidden[name=f_article_title]').val($(this).val())\n        .closest('form').change();\n}).change();\n\n/**\n * Enable/disable comments list/form according to selected state.\n */\nvar toggleComments = function() {\n    $('input:radio[name^=\"f_comment\"]:checked').each(function() {\n        var form = $('#comments-form');\n        var list = $('#comments-list');\n        var commentReply = $('#comment-moderate dd.buttons');\n        switch ($(this).val()) {\n            case 'enabled':\n                form.show();\n                list.show();\n                commentReply.show();\n                break;\n\n            case 'disabled':\n                form.hide();\n                list.hide();\n                break;\n\n            case 'locked':\n                form.hide();\n                list.show();\n                commentReply.hide();\n                break;\n        }\n    });\n};\n\n// init\ntoggleComments();\n\n/**\n * Telling to the Tinymce that the current state is the correct one\n */\ncleanTextContents = function()\n{\n    var editor_rank = 0;\n    while (true) {\n        var editor_obj = typeof(tinyMCE) != \"undefined\" ? tinyMCE.get(editor_rank) : false;\n        if (!editor_obj) {\n            break;\n        }\n        editor_obj.isNotDirty = true;\n        editor_rank += 1;\n    }\n};\n\n/**\n * Tracking save problems is used at checking un/saved state of article\n */\nwindow.save_had_problems = false;\nwindow.ajax_had_problems = false;\n\n// main form submit\n$('form#article-main').submit(function() {\n    window.save_had_problems = false;\n    var form = $(this);\n    if (!articleChanged()) {\n        flashMessage('<?php echo $translator->trans('Article saved.', array(), 'articles'); ?>');\n        if(save_and_close) {\n            close(1);\n        }\n    } else {\n        // tinymce should know that the current state is the correct one\n        cleanTextContents();\n\n        //fix breadcrumbs title\n        $('.breadcrumbs li:last a').text($('#f_article_title').val() + ' (' + $('#article_language').text() + ')');\n\n         // ping for connection\n        callServer('ping', [], function(json) {\n            $.ajax({\n                type: 'POST',\n                url: '<?php echo $Campsite['WEBSITE_URL']; ?>/admin/articles/post.php',\n                data: form.serialize(),\n                success: function(data, status, p) {\n                    flashMessage('<?php echo $translator->trans('Article saved.', array(), 'articles'); ?>');\n                    toggleComments();\n                    if(save_and_close) {\n                        close(1);\n                    }\n                },\n                error: function (rq, status, error) {\n                    window.save_had_problems = true;\n                    if (status == 0 || status == -1) {\n                        flashMessage('<?php echo $translator->trans('Unable to reach Newscoop. Please check your internet connection.', array(), 'articles'); ?>', 'error');\n                    }\n                }\n            });\n\n        }); // /ping\n        $(this).removeClass('changed');\n    }\n\n    return false;\n}).change(function() {\n    $(this).addClass('changed');\n});\n\n/**\n * Unlock article\n * @return void\n */\nfunction unlockArticle(doAction) {\n    doAction = typeof(doAction) != 'undefined' ? doAction : 'none';\n    callServer(['Article', 'setIsLocked'], [\n        <?php echo $f_language_selected; ?>,\n        <?php echo $articleObj->getArticleNumber(); ?>,\n        0,\n        <?php echo $g_user->getUserId(); ?>], function() {\n           if(doAction == 'close') {\n                close(1);\n           }\n        });\n};\n\n<?php if ($inEditMode) { ?>\n\n// save all buttons\n\n$('.save-button-bar input').click(function() {\n    if ($(this).attr('id') == 'save_and_close') {\n        if (articleChanged()) {\n            unlockArticle();\n            save_and_close = true;\n            $('form#article-main').submit();\n        } else {\n            unlockArticle('close');\n        }\n    } else if ($(this).attr('id') == 'close') {\n        var redirect = '<?php if ($f_publication_id > 0 && $f_issue_number > 0 && $f_section_number > 0) {\n                                echo \"/$ADMIN/articles/index.php?f_publication_id=$f_publication_id&f_issue_number=$f_issue_number&f_language_id=$f_language_id&f_section_number=$f_section_number\";                              } else if ($f_publication_id > 0) {\n                                echo \"/$ADMIN/pending_articles/index.php\";\n                              } else {\n                                echo \"/$ADMIN/\";\n                              } ?>'; \n        callServer(['Article', 'setIsLocked'], [\n        <?php echo $f_language_selected; ?>,\n        <?php echo $articleObj->getArticleNumber(); ?>,\n        0,\n        <?php echo $g_user->getUserId(); ?>], function() {\n            window.location.href = redirect;\n        });\n        return false;\n    } else if ($(this).attr('id') == 'save') {\n        save_and_close = false;\n        $('form#article-main').submit();\n    }\n\n    $('form#article-keywords').submit();\n    $('form#article-switches').submit();\n\n    return false;\n});\n\n<?php } else { // view mode ?>\n$('.save-button-bar input#save_and_close').click(function() {\n<?php if ($articleObj->isLocked() && $articleObj->getLockedByUser() == $g_user->getUserId()) { ?>\n    unlockArticle();\n<?php } ?>\n    close(1);\n});\n<?php } ?>\n\n\n\n<?php\n$allAuthors = array();\nif ($userIsBlogger) {\n    $blogInfo = $blogService->getBlogInfo($g_user);\n    $allAuthors = array_map(function($author) {\n        return $author->getName();\n    }, ArticleAuthor::GetAuthorsByArticle($blogInfo->getArticleNumber(), $blogInfo->getLanguageId()));\n\n$quoteStringFn = create_function('&$value, $key',\n    '$value = json_encode((string) $value);');\narray_walk($allAuthors, $quoteStringFn);\n?>\nvar authorsList = [<?php echo implode(\",\\n\", $allAuthors); ?>];\n\n$(\".aauthor\").autocomplete({ source: authorsList });\n\n<?php } else { ?>\n// authors autocomplete\n$(\".aauthor\").live('focus', function() {\n    $(\".aauthor\").autocomplete({\n      source: function (request, response) {\n        $.ajax({\n          url: \"/admin/authors/get\",\n          dataType: \"json\",\n          data: {\n            limit: 10,\n            term: request.term,\n            users: true\n          },\n          success: function (data) {\n            response($.map(data, function(item) {\n              return {\n                label: item.title,\n                value: item.title\n              }\n            }));\n          }\n        });\n      },\n      minLength: 1,\n      open: function () {\n        $( this ).removeClass( \"ui-corner-all\" ).addClass( \"ui-corner-top\" );\n      },\n      close: function () {\n        $( this ).removeClass( \"ui-corner-top\" ).addClass( \"ui-corner-all\" );\n      }\n    });\n});\n\n<?php } ?>\n\n\n// fancybox for popups\n$('a.iframe').each(function() {\n    if (!$(this).attr('custom')) {\n        $(this).fancybox({\n            hideOnContentClick: false,\n            width: 800,\n            height: 500,\n            centerOnScroll: true,\n            onStart: function() { // check if there are any changes\n                return checkChanged();\n            },\n            onClosed: function(url, params) {\n                if ($.fancybox.reload) { // reload if set\n                    if ($.fancybox.message) { // set message after reload\n                        $.cookie('flashMessage', $.fancybox.message);\n                    }\n                    window.location.reload();\n                } else if ($.fancybox.error) {\n                    flashMessage($.fancybox.error, 'error');\n                } else {\n                    window.location.reload();\n                }\n            }\n        });\n    }\n});\n\n$('#locations_box a.iframe').each(function() {\n    $(this).data('fancybox').showCloseButton = false;\n    $(this).data('fancybox').width = 1100;\n    $(this).data('fancybox').height = 660;\n\n});\n\n$('#place-images').fancybox({\n    hideOnContentClick: false,\n    width: 1300,\n    height: 800,\n    type: 'iframe',\n    centerOnScroll: true\n});\n\n$('#attach-images').fancybox({\n    hideOnContentClick: false,\n    width: 1300,\n    height: 800,\n    type: 'iframe',\n    centerOnScroll: true,\n    onStart: function() { // check if there are any changes\n        return checkChanged();\n    },\n    onClosed: function() {\n        window.location.reload();\n    }\n});\n\n$('#edit-images').fancybox({\n    hideOnContentClick: false,\n    width: 1300,\n    height: 800,\n    type: 'iframe',\n    centerOnScroll: true,\n    onStart: function() { // check if there are any changes\n        return checkChanged();\n    },\n    onClosed: function() {\n        window.location.reload();\n    }\n});\n\n$('#topic_box_frame a.iframe').each(function() {\n    var fancyBox = $(this).data('fancybox');\n    fancyBox.width = '100%';\n    fancyBox.height = '100%';\n    fancyBox.showCloseButton = false;\n    fancyBox.scrolling = 'auto';\n    fancyBox.centerOnScroll = true;\n});\n\n$(\"#context_box a.iframe\").fancybox({\n    'showCloseButton' : false,\n    'width': 1150,\n    'height'     : 700,\n    'scrolling' : 'auto',\n    'centerOnScroll': true,\n    'onClosed'      : function() {\n       loadContextBoxActileList();\n    }\n});\n\n$(\"#multidate_box a.iframe\").fancybox({\n    'showCloseButton' : false,\n    'width': 1000,\n    'height'     : 710,\n    'scrolling' : 'auto',\n    'centerOnScroll': true,\n    'onClosed'      : function() {\n       //loadContextBoxActileList();\n       loadMultiDateEvents();\n    }\n});\n\n$(\"#playlist a.iframe\").fancybox\n({\n    'showCloseButton' : false,\n    'type' : 'iframe',\n    'width' : 700,\n    'height' : 700,\n    'scrolling' : 'auto',\n    'autoDimensions' : true,\n    'centerOnScroll': true\n});\n\n// comments form check for changes\n$('form#article-comments').submit(function() {\n    if (!checkChanged()) {\n        return false;\n    }\n});\n\nvar message = $.cookie('flashMessage');\nif (message) {\n    flashMessage(message);\n    $.cookie('flashMessage', null);\n}\n\n}); // /document.ready\n\n/**\n * Check for unsaved changes in tinymce editors\n * @return bool\n */\nfunction editorsChanged()\n{\n    var editor_rank = 0;\n    while (true) {\n        var editor_obj = typeof(tinyMCE) != \"undefined\" ? tinyMCE.get(editor_rank) : false;\n        if (!editor_obj) {\n            break;\n        }\n        if (editor_obj.isDirty()) {\n            return true;\n        }\n        editor_rank += 1;\n    }\n\n    return false;\n};\n\n/**\n * Check for unsaved changes in main/boxes forms\n * @return bool\n */\nfunction articleChanged()\n{\n    if (window.save_had_problems || window.ajax_had_problems) {\n        return true;\n    }\n\n    if ((!editorsChanged()) && ($('form.changed').size() == 0)) {\n        return false;\n    }\n\n    return true;\n};\n\nwindow.article_confirm_question = '<?php echo $translator->trans('Your work has not been saved. Do you want to continue and lose your changes?', array(), 'articles'); ?>';\n\n/**\n * Check for unsaved changes in main/boxes forms\n * Asks for confirmations too.\n * @return bool\n */\nfunction checkChanged()\n{\n    if( $(\"#f_action_workflow\").val() == 'N' ) {\n        <?php\n            if ( count($articleEvents) ) {\n                ?>\n                return confirm('<?php echo $translator->trans('Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.', array(), 'articles'); ?>');\n                <?php\n            }\n        ?>\n    }\n    if (!articleChanged()) {\n        return true; // continue\n    }\n    return confirm(window.article_confirm_question);\n}\n\n/**\n * Check for unsaved changes in main/boxes forms\n * Warn if leaving the page without saving it.\n */\n$(document).ready(function() {\n    window.onbeforeunload = function ()\n    {\n        if (articleChanged())\n        {\n            return window.article_confirm_question;\n        }\n    };\n    if (window.opera) {\n        $('.breadcrumbs').click(function() {\n            if (articleChanged()) {\n                return confirm(window.article_confirm_question);\n            }\n            return true;\n        });\n\n        var leave_links = ['/admin', '/admin/logout', '/admin/application/help'];\n        var leave_links_length = leave_links.length;\n\n        for (var lind = 0; lind < leave_links_length; lind++) {\n            var one_leaf = leave_links[lind];\n\n            $('a[href$=\"' + one_leaf + '\"]').click(function() {\n                if (articleChanged()) {\n                    return confirm(window.article_confirm_question);\n                }\n                return true;\n            });\n        }\n    }\n    loadContextBoxActileList();\n    loadMultiDateEvents();\n});\n\nfunction fnLoadContextBoxArticleList(data) {\n    var items = data.items;\n    if(items.length > 0) {\n        var injectHtml = '<ul class=\"block-list\">';\n        for(var i=0; i<items.length; i++) {\n            var item = items[i];\n            injectHtml += '<li>';\n            injectHtml += $('<li />').text(item.title).html();\n            injectHtml += '</li>';\n        }\n        injectHtml += '</ul>';\n        $(\"#contextBoxArticlesList\").html(injectHtml);\n    } else  {\n        $(\"#contextBoxArticlesList\").html('');\n    }\n}\n\nfunction loadContextBoxActileList() {\n    var aoData = new Array();\n    var items = new Array('1_1','0_0');\n\n    aoData.push(\"context_box_load_list\");\n    aoData.push(items);\n    aoData.push({\n        'articleId': '<?php echo Input::Get('f_article_number', 'int', 1)?>',\n    });\n    callServer(['ArticleList', 'doAction'], aoData, fnLoadContextBoxArticleList);\n}\n\nfunction loadMultiDateEvents() {\n    if ((window.has_multidates === undefined) || (!window.has_multidates)) {\n        return;\n    }\n\n<?php\n    $f_language_id = Input::Get('f_language_id', 'int', 1);\n    $f_language_selected = (int)camp_session_get('f_language_selected', 0);\n\n    $article_language_use = $f_language_selected;\n    if (empty($article_language_use)) {\n        $article_language_use = $f_language_id;\n    }\n?>\n\n    var url = '<?php echo $Campsite['WEBSITE_URL']; ?>/admin/multidate/getdates';\n    callServer(\n        {\n            method: 'GET',\n            url: url\n        },\n        {\n            articleId : \"<?php echo Input::Get('f_article_number', 'int', 1)?>\",\n            languageId : \"<?php echo $article_language_use; ?>\"\n        },\n        function(data) {\n            var eventList = '';\n            eventList += '<ul class=\"block-list\">';\n\n            var dispalyed_all = true;\n            \n            for(var i=0; i<data.length; i++) {\n                if (i >= 20 ) {\n                    dispalyed_all = false;\n                    break;\n                }\n                var item = data[i];\n                \n                var start = new Date(item.start_utc * 1000);                \n                var end = new Date(item.end_utc * 1000);\n\n                var start_values = {\n                    'month': start.getUTCMonth() + 1,\n                    'day': start.getUTCDate(),\n                    'hour': start.getUTCHours(),\n                    'minute': start.getUTCMinutes()\n                };\n                var end_values = {\n                    'month': end.getUTCMonth() + 1,\n                    'day': end.getUTCDate(),\n                    'hour': end.getUTCHours(),\n                    'minute': end.getUTCMinutes()\n                };\n                for (var start_key in start_values) {\n                    if (start_values[start_key] < 10) {\n                        start_values[start_key] = '0' + start_values[start_key];\n                    }\n                }\n                for (var end_key in end_values) {\n                    if (end_values[end_key] < 10) {\n                        end_values[end_key] = '0' + end_values[end_key];\n                    }\n                }\n\n                if (item.allDay) {\n                    end_values['hour'] = '24';\n                    end_values['minute'] = '00';\n                }\n                if ((item.restOfDay !== undefined) && item.restOfDay) {\n                    end_values['hour'] = '24';\n                    end_values['minute'] = '00';\n                }\n\n                var startString = '<span style=\"float:left\">' + (start.getUTCFullYear() + '-' + start_values['month'] + '-' + start_values['day'] + ' ' + start_values['hour'] + ':' + start_values['minute'] ) + '</span>';\n                var endString = '<span style=\"float:left\">' + (end.getUTCFullYear() + '-' + end_values['month'] + '-' + end_values['day'] + ' ' + end_values['hour'] + ':' + end_values['minute'] ) + '</span>';\n\n                var eventString = startString + '<span style=\"float:left\" class=\"ui-icon ui-icon-arrowthick-1-e\"></span>' + endString;\n\n                var event_comment = item.event_comment;\n                if (null === event_comment) {\n                    event_comment = '';\n                }\n                event_comment = event_comment.replace('\"', \"&quot;\")\n                event_comment = event_comment.replace(\"'\", \"&apos;\")\n                eventList += '<li style=\"background-color:'+item.backgroundColor+'; color:'+item.textColor+';\" title=\"' + event_comment + '\"><span style=\"float:right\">' + item.field_name + '</span>' + eventString + '</li>';\n            }\n\n            var other_notice = '';\n            if (!dispalyed_all) {\n                other_notice = '<li><span class=\"ui-icon ui-icon-grip-dotted-horizontal\"></span></li>';\n            }\n\n            $('#multiDateEventList').html('');\n            $('#multiDateEventList').append(eventList + other_notice + '</ul>');              \n        },\n        true\n    );    \n}\n\n</script>"
  },
  {
    "path": "newscoop/admin-files/articles/edit_locations_box.php",
    "content": "<?php\n/**\n * @package Newscoop\n */\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$locations = array();\n$map_name = '';\n$map_name_title = '';\n$map = $articleObj->getMap();\nif (is_object($map) && $map->exists()) {\n    $locations = $map->getLocations();\n    $map_name = $map->getName();\n    if (0 < strlen($map_name)) {\n        $map_name_title = $map_name;\n        $map_name_title = str_replace(\"&\", '&amp;', $map_name_title);\n        $map_name_title = str_replace(\"<\", '&lt;', $map_name_title);\n        $map_name_title = str_replace(\">\", '&gt;', $map_name_title);\n        $map_name_title = str_replace(\"\\\\\", '&#92;', $map_name_title);\n        $map_name_title = str_replace(\"'\", '&#39;', $map_name_title);\n        $map_name_title = \" title='$map_name_title'\";\n    }\n    $map_name_max_len = 20;\n    if ($map_name_max_len < strlen($map_name)) {\n        $map_name = mb_substr($map_name, 0, $map_name_max_len, 'UTF-8') . \"...\";\n    }\n    $map_name = str_replace(\"&\", '&amp;', $map_name);\n    $map_name = str_replace(\"<\", '&lt;', $map_name);\n    $map_name = str_replace(\">\", '&gt;', $map_name);\n}\n$detachMapUrl = \"/$ADMIN/articles/locations/do_unlink.php?f_publication_id=$f_publication_id&f_issue_number=$f_issue_number&f_section_number=$f_section_number&f_article_number=$f_article_number&f_language_selected=$f_language_selected&f_language_id=$f_language_id&\".SecurityToken::URLParameter();\n\n$map_language_used = $f_language_selected;\nif (0 == $map_language_used) {\n    $map_language_used = $f_language_id;\n}\n$map_article_spec = '' . $f_article_number . '_' . $map_language_used;\n?>\n<div id=\"locations_box\" class=\"ui-widget-content small-block block-shadow locations-box\">\n  <div class=\"collapsible\">\n    <h3 class=\"head ui-accordion-header ui-helper-reset ui-state-default ui-widget\">\n    <span class=\"ui-icon\"></span>\n    <a href=\"#\" tabindex=\"-1\"><?php echo $translator->trans('Geolocation', array(), 'articles'); ?></a></h3>\n  </div>\n  <div class=\"padded\">\n  <?php\n  $canEdit = ($inEditMode && $g_user->hasPermission('ChangeArticle'));\n  if ($map->exists()) {\n  ?>\n    <?php if ($canEdit) { ?>\n    <a href=\"<?php echo camp_html_article_url($articleObj, $f_language_id, 'locations/popup.php'); ?>\"\n      class=\"iframe map-thumb\"><img\n      src=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/images/map_thumb.png\" alt=\"<?php echo $translator->trans('Edit'); ?>\" title=\"<?php echo $translator->trans('Edit'); ?>\" /><span><?php echo $translator->trans('Edit'); ?></span></a>\n    <a class=\"ui-state-default icon-button right-floated\"\n      href=\"<?php p($detachMapUrl); ?>\" onclick=\"return confirm('<?php echo $translator->trans(\"Are you sure you want to remove the map from the article?\", array(), 'articles'); ?>'); return false;\" style=\"margin-bottom:8px;\"><span\n      class=\"ui-icon ui-icon-closethick\"></span><?php echo $translator->trans('Remove'); ?></a>\n    <a class=\"iframe ui-state-default icon-button right-floated\"\n      href=\"<?php echo camp_html_article_url($articleObj, $f_language_id, 'locations/preview.php'); ?>&focus=default&loader=article\"><span\n      class=\"ui-icon ui-icon-zoomin\"></span><?php echo $translator->trans('Preview'); ?></a>\n    <?php } else { ?>\n    <a href=\"<?php echo camp_html_article_url($articleObj, $f_language_id, 'locations/preview.php'); ?>&focus=default&loader=article\"\n        class=\"iframe map-thumb\"><img\n      src=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/images/map_thumb.png\" alt=\"<?php echo $translator->trans('Preview'); ?>\" title=\"<?php echo $translator->trans('Preview'); ?>\" /></a>\n    <a class=\"iframe ui-state-default icon-button right-floated\"\n      href=\"<?php echo camp_html_article_url($articleObj, $f_language_id, 'locations/preview.php'); ?>&focus=default&loader=article\"><span\n      class=\"ui-icon ui-icon-zoomin\"></span><?php echo $translator->trans('Preview'); ?></a>\n  <?php }\n  } elseif ($canEdit) { ?>\n    <a class=\"iframe ui-state-default icon-button right-floated\"\n      href=\"<?php echo camp_html_article_url($articleObj, $f_language_id, 'locations/popup.php'); ?>\"><span\n      class=\"ui-icon ui-icon-plusthick\"></span><?php echo $translator->trans('Add'); ?></a>\n  <?php } ?>\n  <?php if ($map->exists()) { ?>\n    <h4 class=\"geo_map_name\"<?php echo $map_name_title; ?>>\n    <?php echo $map_name; ?>\n    </h4>\n  <?php } ?>\n    <div class=\"clear\"></div>\n  <?php if ($map->exists() && !empty($locations)) { ?>\n    <ul class=\"block-list\">\n    <?php\n    $language_usage = $f_language_selected;\n    if (!$language_usage) { $language_usage = $f_language_id; }\n    foreach ($locations as $location) {\n        $content = $location->getContent($language_usage);\n\n        $poi_name = $content->getName();\n        $poi_name_max_len = 40;\n        if ($poi_name_max_len < strlen($poi_name)) {\n            $poi_name = mb_substr($poi_name, 0, $poi_name_max_len, 'UTF-8') . \"...\";\n        }\n        $poi_name = str_replace(\"&\", '&amp;', $poi_name);\n        $poi_name = str_replace(\"<\", '&lt;', $poi_name);\n        $poi_name = str_replace(\">\", '&gt;', $poi_name);\n        if ($location->isEnabled($language_usage)) {\n            echo '<li class=\"geomap_list_location_enabled\">' . $poi_name . '</li>';\n        } else {\n            echo '<li class=\"geomap_list_location_disabled\">' . $poi_name . '</li>';\n        }\n    }\n    ?>\n    </ul>\n  <?php } ?>\n  </div>\n</div>\n"
  },
  {
    "path": "newscoop/admin-files/articles/edit_main_box.php",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n// set language url\n$languageUrl = implode('&', array(\n    \"edit.php?f_publication_id=$f_publication_id\",\n    \"f_issue_number=$f_issue_number\",\n    \"f_section_number=$f_section_number\",\n    \"f_article_number=$f_article_number\",\n    \"f_language_id={{language}}\",\n    \"f_language_selected={{language}}\",\n));\n\n?>\n\n<!-- BEGIN the article control bar -->\n<div class=\"ui-widget-content small-block block-shadow highlight-block padded\">\n<form name=\"article_actions\" action=\"/<?php echo $ADMIN; ?>/articles/do_article_action.php\" method=\"POST\">\n<?php echo SecurityToken::FormParameter(); ?>\n<input type=\"hidden\" name=\"f_publication_id\" id=\"f_publication_id\" value=\"<?php p($f_publication_id); ?>\" />\n<input type=\"hidden\" name=\"f_issue_number\" id=\"f_issue_number\" value=\"<?php p($f_issue_number); ?>\" />\n<input type=\"hidden\" name=\"f_section_number\" id=\"f_section_number\" value=\"<?php p($f_section_number); ?>\" />\n<input type=\"hidden\" name=\"f_language_id\" id=\"f_language_id\" value=\"<?php p($f_language_id); ?>\" />\n<input type=\"hidden\" name=\"f_language_selected\" id=\"f_language_selected\" value=\"<?php p($f_language_selected); ?>\" />\n<input type=\"hidden\" name=\"f_article_number\" id=\"f_article_number\" value=\"<?php p($f_article_number); ?>\" />\n<script type=\"text/javascript\">\nfunction action_selected(dropdownElement)\n{\n    if (!checkChanged()) {\n        return false;\n    }\n\n    // Get the index of the \"delete\" option.\n    deleteOptionIndex = -1;\n    for (var index = 0; index < dropdownElement.options.length; index++) {\n        if (dropdownElement.options[index].value == \"delete\") {\n            deleteOptionIndex = index;\n        }\n    }\n\n    // if the user has selected the \"delete\" option\n    if (dropdownElement.selectedIndex == deleteOptionIndex) {\n        ok = confirm(\"<?php echo $translator->trans(\"Are you sure you want to delete this article?\", array(), 'articles'); ?>\");\n        if (!ok) {\n            dropdownElement.options[0].selected = true;\n            return;\n        }\n    }\n\n    // do the action if it isnt the first or second option\n    if ((dropdownElement.selectedIndex != 0) &&  (dropdownElement.selectedIndex != 1)) {\n        dropdownElement.form.submit();\n    }\n}\n\nfunction change_language(select)\n{\n    if (!checkChanged()) {\n        return false;\n    }\n    \n    var languageUrl = '<?php p($languageUrl); ?>';\n    \n    var dest = languageUrl.replace(/\\{\\{language\\}\\}/gi, select.options[select.selectedIndex].value);\n    window.location.href = dest;\n}\n</script>\n\n  <fieldset class=\"plain\">\n    <!-- BEGIN Language -->\n    <?php if (sizeof($articleLanguages) > 1) { ?>\n    <select name=\"f_language_selected\" class=\"input_select right-floated\" onchange=\"change_language(this);\">\n    <?php\n    foreach ($articleLanguages as $articleLanguage) {\n        camp_html_select_option($articleLanguage->getLanguageId(), $f_language_selected, htmlspecialchars($articleLanguage->getNativeName()));\n    }\n    ?>\n    </select>\n  <?php\n  } else {\n      $articleLanguage = camp_array_peek($articleLanguages);\n      echo '<strong class=\"right-floated\" id=\"article_language\">'.htmlspecialchars($articleLanguage->getNativeName()).'</strong>';\n  }\n  ?>\n    <label for=\"f_action_language\" class=\"inline-style right-floated\" style=\"width:80px;\"><?php echo $translator->trans('Language'); ?></label>\n    <!-- END Language -->\n\n    <?php if (empty($userIsBlogger)) { ?>\n    <!-- BEGIN Actions -->\n    <select name=\"f_action\" class=\"input_select\" onchange=\"action_selected(this);\" style=\"margin-bottom:2px;\">\n      <option value=\"\"><?php echo $translator->trans(\"Actions\"); ?>...</option>\n      <option value=\"\"></option>\n      <?php if ($articleObj->userCanModify($g_user) && $articleObj->isLocked()) { ?>\n      <option value=\"unlock\"><?php echo $translator->trans('Unlock'); ?></option>\n      <?php } ?>\n\n      <?php if (!$locked && $g_user->hasPermission('DeleteArticle')) { ?>\n      <option value=\"delete\"><?php echo $translator->trans('Delete'); ?></option>\n      <?php } ?>\n\n      <?php if ($g_user->hasPermission('AddArticle')) { ?>\n      <option value=\"copy\"><?php echo $translator->trans('Duplicate'); ?></option>\n      <?php } ?>\n\n      <?php if ($g_user->hasPermission('TranslateArticle')) { ?>\n      <option value=\"translate\"><?php echo $translator->trans('Translate'); ?></option>\n      <?php } ?>\n\n      <?php if (!$locked && $g_user->hasPermission('MoveArticle')) { ?>\n      <option value=\"move\"><?php echo $translator->trans('Move'); ?></option>\n      <?php } ?>\n    </select>\n    <!-- END Actions -->\n    <?php } ?>\n\n    <!-- BEGIN Workflow -->\n    <?php if ($g_user->hasPermission('Publish')) { ?>\n    <select name=\"f_action_workflow\" class=\"input_select\" id=\"f_action_workflow\"\n      onchange=\"return checkChanged() && this.form.submit();\" <?php if ($locked) { ?>disabled=\"disabled\"<?php } ?>>\n    <?php\n    if (!isset($issueObj)) {\n        camp_html_select_option('Y', $articleObj->getWorkflowStatus(), $translator->trans('Publish'));\n    } elseif ($issueObj->isPublished()) {\n        camp_html_select_option('Y', $articleObj->getWorkflowStatus(), $translator->trans('Status') . ': ' . $translator->trans('Published'));\n    } else {\n        camp_html_select_option('M', $articleObj->getWorkflowStatus(), $translator->trans('Status') . ': ' . $translator->trans('Publish with issue'));\n    }\n    camp_html_select_option('S', $articleObj->getWorkflowStatus(), $translator->trans('Status') . ': ' . $translator->trans('Submitted'));\n    camp_html_select_option('N', $articleObj->getWorkflowStatus(), $translator->trans('Status') . ': ' . $translator->trans('New'));\n    ?>\n    </select>\n    <?php } elseif ($articleObj->userCanModify($g_user) && ($articleObj->getWorkflowStatus() != 'Y')) { ?>\n    <select name=\"f_action_workflow\" class=\"input_select\" id=\"f_action_workflow\"\n      onchange=\"return checkChanged() && this.form.submit();\" <?php if ($locked) { ?>disabled=\"disabled\"<?php } ?>>\n    <?php\n    camp_html_select_option('S', $articleObj->getWorkflowStatus(), $translator->trans('Status') . ': ' . $translator->trans('Submitted'));\n    camp_html_select_option('N', $articleObj->getWorkflowStatus(), $translator->trans('Status') . ': ' . $translator->trans('New'));\n    ?>\n    </select>\n    <?php } else {\n        switch ($articleObj->getWorkflowStatus()) {\n            case 'Y':\n                echo $translator->trans('Status') . ': ' . $translator->trans('Published');\n                break;\n            case 'M':\n                echo $translator->trans('Status') . ': ' . $translator->trans('Publish with issue');\n                break;\n            case 'S':\n                echo $translator->trans('Status') . ': ' . $translator->trans('Submitted');\n                break;\n            case 'N':\n                echo $translator->trans('Status') . ': ' . $translator->trans('New');\n                break;\n        }\n    }\n    ?>\n    <!-- END Workflow -->\n  </fieldset>\n  <?php\n  if( $articleObj->getWorkflowStatus() != 'N' ) {\n      require_once('edit_schedule_box.php');\n  }\n  ?>\n</form>\n</div>\n"
  },
  {
    "path": "newscoop/admin-files/articles/edit_media_box.php",
    "content": "<?php $translator = \\Zend_Registry::get('container')->getService('translator'); ?>\n<div class=\"articlebox\" title=\"<?php echo $translator->trans('Media', array(), 'articles'); ?>\"><div class=\"tabs\">\n    <ul>\n        <li><a href=\"#media-images\"><?php echo $translator->trans('Images'); ?></a></li>\n        <li><a href=\"#media-slideshows\"><?php echo $translator->trans('Slideshows', array(), 'articles'); ?></a></li>\n        <li><a href=\"#media-attachments\"><?php echo $translator->trans('Files', array(), 'articles'); ?></a></li>\n    </ul>\n    <div id=\"media-images\">\n        <?php if ($inEditMode && $g_user->hasPermission('AttachImageToArticle')) { ?>\n        <a style=\"margin-bottom: 10px;\" id=\"attach-images\" class=\"ui-state-default icon-button right-floated\" href=\"<?php echo $this->view->url(array(\n            'module' => 'admin',\n            'controller' => 'image',\n            'action' => 'article-attach',\n            'article_number' => $articleObj->getArticleNumber(),\n            'language_id' => $f_language_id,\n        )); ?>\"><span class=\"ui-icon ui-icon-plusthick\"></span><?php echo $translator->trans('Attach'); ?></a>\n\n        <?php if ($this->_helper->service('image.rendition')->hasRenditions()) { ?>\n        <a style=\"margin-bottom: 10px;\" id=\"place-images\" class=\"ui-state-default icon-button right-floated\" href=\"<?php echo $this->view->url(array(\n            'module' => 'admin',\n            'controller' => 'image',\n            'action' => 'article',\n            'article_number' => $articleObj->getArticleNumber(),\n            'language_id' => $f_language_id,\n        )); ?>\"><span class=\"ui-icon ui-icon-image\"></span><?php echo $translator->trans('Place images', array(), 'articles'); ?></a>\n        <?php } ?>\n\n        <?php if (count((array) $articleImages) > 0) {  ?>\n        <a style=\"margin-bottom: 10px;\" id=\"edit-images\" class=\"ui-state-default icon-button right-floated\" href=\"<?php echo $this->view->url(array(\n            'module' => 'admin',\n            'controller' => 'image',\n            'action' => 'edit-image-data',\n            'article_number' => $articleObj->getArticleNumber(),\n            'language_id' => $f_language_id,\n            'force_edit' => true,\n        )); ?>\"><span class=\"ui-icon ui-icon-plusthick\"></span><?php echo $translator->trans('Edit metadata', array(), 'articles'); ?></a>\n        <?php } ?>\n\n        <div class=\"clear\"></div>\n        <?php } ?>\n\n        <ul class=\"block-list\">\n            <?php foreach ((array) $articleImages as $articleImage) {\n                $image = $articleImage->getImage();\n                $imageEditUrl = \\Zend_Registry::get('container')->get('router')->generate('newscoop_newscoop_article_images_edit', array(\n                    'language' => $f_language_id,\n                    'articleNumber' => $f_article_number,\n                    'imageId' => $image->getImageId()\n                ));\n                $detachUrl = \"/$ADMIN/articles/images/do_unlink.php?f_publication_id=$f_publication_id&f_issue_number=$f_issue_number&f_section_number=$f_section_number&f_article_number=$f_article_number&f_image_id=\".$image->getImageId().\"&f_language_selected=$f_language_selected&f_language_id=$f_language_id&f_image_template_id=\".$articleImage->getTemplateId().'&'.SecurityToken::URLParameter();\n                $imageSize = @getimagesize($image->getImageStorageLocation()) ? : array(0, 0);\n            ?>\n            <li>\n            <?php\n                $imageService = \\Zend_Registry::get('container')->get('image');\n                $preferenceService = \\Zend_Registry::get('container')->get('preferences');\n                $localImage = $imageService->find($image->getImageId());\n            ?>\n                <div class=\"image-thumbnail-container\">\n                    <?php if ($inEditMode) { ?>\n                    <a href=\"<?php echo $imageEditUrl; ?>\" class=\"image-edit\"><img src=\"<?php p($image->getThumbnailUrl()); ?>\" /></a>\n                    <?php } else { ?>\n                    <span id=\"image-<?php echo $image->getImageId(); ?>-caption\"><?php echo $this->view->escape($imageService->getCaption($localImage, $f_article_number, $f_language_selected)); ?></span><br />\n                    <?php } ?>\n                </div>\n\n                <strong><?php echo $articleImage->getTemplateId(); ?></strong> <small><?php echo $image->getStatus() == 'approved' ? $translator->trans('Approved', array(), 'articles') : $translator->trans('Unapproved', array(), 'articles'); ?></small><br />\n                <span id=\"image-<?php echo $image->getImageId(); ?>-caption\" class=\"caption\"><?php\n                    if ($preferenceService->MediaRichTextCaptions == 'Y') {\n                        echo $imageService->getCaption($localImage, $f_article_number, $f_language_selected);\n                    } else {\n                        echo $this->view->escape($imageService->getCaption($localImage, $f_article_number, $f_language_selected));\n                    }\n                ?></span><?php\n                    if ($preferenceService->MediaRichTextCaptions == 'N') {\n                        echo '<br />';\n                    }\n                ?>\n\n                <?php echo $imageSize[0], ' x ', $imageSize[1]; ?>\n\n                <?php if (($inEditMode) && $g_user->hasPermission('AttachImageToArticle')) { ?>\n                <a class=\"corner-button\" href=\"<?php p($detachUrl); ?>\" onclick=\"return confirm('<?php\n                    echo $translator->trans(\"Are you sure you want to remove the image $1 from the article?\", array('$1' => 'image_caption'), 'articles');\n                ?>'.replace('image_caption', $('#image-<?php echo $image->getImageId(); ?>-caption').text()));\"><span class=\"ui-icon ui-icon-closethick\"></span></a>\n                <?php } ?>\n            </li>\n            <?php } ?>\n        </ul>\n    </div>\n\n    <script type=\"text/javascript\">\n        $(function() {\n            $('#media-images a.image-edit').fancybox({\n                hideOnContentClick: false,\n                width: 1300,\n                height: 800,\n                type: 'iframe'\n            });\n        });\n    </script>\n\n    <!-- BEGIN Slideshows -->\n    <div id=\"media-slideshows\">\n        <?php echo $this->view->partial('slideshow-box.phtml', array(\n            'articleNumber' => $articleObj->getArticleNumber(),\n            'slideshows' => $this->_helper->service('package')->findByArticle($articleObj->getArticleNumber()),\n        )); ?>\n    </div>\n    <!-- END Slideshows -->\n\n    <div id=\"media-attachments\">\n        <?php if ($inEditMode && $g_user->hasPermission('AddFile')) {  ?>\n        <a class=\"iframe ui-state-default icon-button right-floated\"\n            href=\"<?php echo camp_html_article_url($articleObj, $f_language_id, \"files/popup.php\"); ?>\"><span\n            class=\"ui-icon ui-icon-plusthick\"></span><?php echo $translator->trans('Attach'); ?></a>\n        <div class=\"clear\"></div>\n        <?php } ?>\n\n        <ul class=\"block-list\">\n            <?php foreach ($articleFiles as $file) {\n                $fileEditUrl = \"/$ADMIN/articles/files/edit.php?f_publication_id=$f_publication_id&f_issue_number=$f_issue_number&f_section_number=$f_section_number&f_article_number=$f_article_number&f_attachment_id=\".$file->getAttachmentId().\"&f_language_id=$f_language_id&f_language_selected=$f_language_selected\";\n                $deleteUrl = \"/$ADMIN/articles/files/do_del.php?f_publication_id=$f_publication_id&f_issue_number=$f_issue_number&f_section_number=$f_section_number&f_article_number=$f_article_number&f_attachment_id=\".$file->getAttachmentId().\"&f_language_selected=$f_language_selected&f_language_id=$f_language_id&\".SecurityToken::URLParameter();\n                $downloadUrl = $file->getAttachmentUrl().\"?g_download=1\";\n                $previewUrl = null;\n                if (strstr($file->getMimeType(), \"image/\") && (strstr($_SERVER['HTTP_ACCEPT'], $file->getMimeType()) ||\n                                        (strstr($_SERVER['HTTP_ACCEPT'], \"*/*\")))) {\n                $previewUrl = $Campsite['SUBDIR'].\"/attachment/\".basename($file->getStorageLocation()).\"?g_show_in_browser=1\";\n                }\n            ?>\n            <li>\n                <?php if ($inEditMode) { ?>\n                <a class=\"text-link\" href=\"<?php echo $fileEditUrl; ?>\"><?php echo wordwrap($file->getFileName(), \"25\", \"<br />\", true); ?></a>\n                <?php } else { ?>\n                <?php echo wordwrap($file->getFileName(), \"25\", \"<br />\", true); ?>\n                <?php } ?>\n\n                <span class=\"info\"><?php echo !$file->getLanguageId() ? htmlspecialchars($file->getDescription($f_language_selected)) : htmlspecialchars($file->getDescription($f_language_selected)) , ', ', camp_format_bytes($file->getSizeInBytes()); ?></span>\n                <a class=\"link icon-link\" href=\"<?php p($downloadUrl); ?>\"><span class=\"icon ui-icon-arrowthickstop-1-s\"></span><?php echo $translator->trans('Download', array(), 'articles'); ?></a>\n\n                <?php if ($inEditMode && $g_user->hasPermission('DeleteFile')) { ?>\n                <a class=\"corner-button\" href=\"<?php p($deleteUrl); ?>\" onclick=\"return confirm('<?php echo $translator->trans(\"Are you sure you want to remove the file $1 from the article?\", array('$1' => camp_javascriptspecialchars($file->getFileName())), 'articles'); ?>');\"><span class=\"ui-icon ui-icon-closethick\"></span></a>\n                <?php } ?>\n            </li>\n            <?php } ?>\n    </div>\n</div></div>\n"
  },
  {
    "path": "newscoop/admin-files/articles/edit_multidate_box.php",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n if (empty($userIsBlogger)) { ?>\n<div class=\"articlebox\" title=\"<?php echo $translator->trans('Multi date events', array(), 'articles'); ?>\"><div>\n<div id=\"multidate_box\">\n<style type=\"text/css\">\n/*\n<?php foreach($multiDatesFields as $one_multi_date_field) { $one_multi_date_field = substr($one_multi_date_field, 1); ?>\n.multidate_item_field_<?php echo $one_multi_date_field; ?> {\n    background-color:<?php $field_obj = new ArticleTypeField($articleObj->getType(), $one_multi_date_field); echo $field_obj->getColor(); ?>;\n}\n<?php } ?>\n*/\n</style>\n    <div id=\"multiDateEventList\" style=\"display:block; padding-bottom:8px;\">\n\n    </div>\n\n    <?php if ($inEditMode && $g_user->hasPermission('ChangeArticle')) : ?>\n        <a class=\"iframe ui-state-default icon-button right-floated\"\n        href=\"<?php echo camp_html_article_url($articleObj, $f_language_id, \"multidate/popup.php\", \"\", \"\"); ?>\">\n        <span class=\"ui-icon ui-icon-pencil\"></span><?php echo $translator->trans('Edit'); ?></a>\n    <?php endif; ?>\n</div>\n</div></div>\n<?php } ?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/edit_playlist.php",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$router = \\Zend_Registry::get('container')->getService('router');\nif (empty($userIsBlogger)) : ?>\n<div class=\"articlebox\" title=\"<?php echo $translator->trans('Featured Article Lists', array(), 'articles'); ?>\">\n  <div>\n    <div id=\"playlist\">\n      <div id=\"playlistArticles\" style=\"display:block; padding-bottom:8px;\">\n      <?php\n          try {\n              $playlists = Zend_Registry::get('container')->getService('em')\n                  ->getRepository('Newscoop\\Entity\\Playlist')\n                  ->getArticlePlaylists(Input::Get('f_article_number', 'int', 1), Input::Get('f_language_id', 'int', 1));\n\n              $playlistsData = array();\n              foreach ($playlists as $playlist) {\n                  $playlistsData[] = (object) array(\n                      'name' => $playlist->getName(),\n                      'id' => $playlist->getId(),\n                  );\n              }\n          } catch (\\Exception $e) {\n              $playlistsData = array();\n          }\n      ?>\n\n      <ul class=\"block-list\" id=\"added-to-playlists\">\n      <?php if ($playlistsData) : ?>\n        <?php foreach ($playlistsData as $playlist) : ?>\n          <li playlist-id=\"<?php echo $playlist->id ?>\">\n            <?php echo $this->view->escape($playlist->name); ?>\n          </li>\n        <?php endforeach; ?>\n      <?php endif; ?>\n      </ul>\n      </div>\n\n      <?php if ($inEditMode && $GLOBALS['controller']->getHelper('acl')->isAllowed('playlist', 'manage')) : ?>\n      <a class=\"iframe ui-state-default icon-button right-floated\"\n        popup-width=\"600\"\n        href=\"<?php echo $router->generate('newscoop_newscoop_playlists_editor', array(\n            'articleNumber' => $articleObj->getArticleNumber(),\n            'language' => $f_language_id,\n        )); ?>\">\n        <span class=\"ui-icon ui-icon-pencil\"></span><?php echo $translator->trans('Edit'); ?></a>\n      <?php endif; ?>\n    </div>\n  </div>\n</div>\n<?php endif; ?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/edit_schedule_box.php",
    "content": "<?php $translator = \\Zend_Registry::get('container')->getService('translator'); ?>\n<div class=\"ui-widget-content small-block\" style=\"margin-top:8px; margin-bottom:0;\">\n  <div class=\"collapsible\">\n    <h3 class=\"head ui-accordion-header ui-helper-reset ui-state-default ui-widget\">\n    <span class=\"ui-icon\"></span>\n      <a href=\"#\" tabindex=\"-1\"><?php echo $translator->trans('Publish Schedule', array(), 'articles'); ?></a></h3>\n  </div>\n  <div class=\"padded\">\n  <?php if ($inEditMode && $g_user->hasPermission('Publish')) { ?>\n  <a class=\"iframe ui-state-default icon-button right-floated\" href=\"<?php echo camp_html_article_url($articleObj, $f_language_id, \"autopublish.php\"); ?>\"><span class=\"ui-icon ui-icon-plusthick\"></span><?php echo $translator->trans('Add Event'); ?></a>\n  <?php } ?>\n    <div class=\"clear\"></div>\n    <?php if (sizeof($articleEvents) > 0) { ?>\n    <ul class=\"block-list\">\n    <?php foreach ($articleEvents as $event) { ?>\n      <li><?php p(htmlspecialchars($event->getActionTime())); ?>\n        <ul class=\"simple-list\">\n        <?php\n        $publishAction = $event->getPublishAction();\n        if (!empty($publishAction)) {\n            echo '<li>';\n            if ($publishAction == 'P') {\n                echo $translator->trans('Publish');\n            }\n            if ($publishAction == 'U') {\n                echo $translator->trans('Unpublish');\n            }\n            echo '</li>';\n        }\n        $frontPageAction = $event->getFrontPageAction();\n        if (!empty($frontPageAction)) {\n            echo '<li>';\n            if ($frontPageAction == 'S') {\n                echo $translator->trans('Show on front page');\n            }\n            if ($frontPageAction == 'R') {\n                echo $translator->trans('Remove from front page');\n            }\n            echo '</li>';\n        }\n        $sectionPageAction = $event->getSectionPageAction();\n        if (!empty($sectionPageAction)) {\n            echo '<li>';\n            if ($sectionPageAction == 'S') {\n                echo $translator->trans('Show on section page');\n            }\n            if ($sectionPageAction == 'R') {\n                echo $translator->trans('Remove from section page');\n            }\n            echo '</li>';\n        }\n        ?>\n        </ul>\n        <?php if ($inEditMode && $g_user->hasPermission('Publish')) { ?>\n        <a href=\"<?php p(camp_html_article_url($articleObj, $f_language_id, 'autopublish_del.php', '', '&f_event_id='.$event->getArticlePublishId(), true)); ?>\"\n          onclick=\"return confirm('<?php echo $translator->trans(\"Are you sure you want to remove the event scheduled on $1?\", array('$1' => camp_javascriptspecialchars($event->getActionTime())), 'articles'); ?>');\"\n          class=\"corner-button\"><span class=\"ui-icon ui-icon-closethick\"></span></a>\n        <?php } ?>\n      </li>\n      <?php } ?>\n    </ul>\n  <?php } ?>\n  </div>\n</div>\n"
  },
  {
    "path": "newscoop/admin-files/articles/edit_switches_box.php",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\nif (empty($userIsBlogger)) { ?>\n<div class=\"articlebox\" title=\"<?php echo $translator->trans('Switches', array(), 'articles'); ?>\"><div>\n<form id=\"article-switches\" action=\"/<?php echo $ADMIN; ?>/articles/post.php\" method=\"POST\">\n\n    <ul class=\"check-list padded\">\n      <li><input type=\"checkbox\" name=\"f_on_front_page\" id=\"f_on_front_page\"\n        class=\"input_checkbox\" <?php if ($articleObj->onFrontPage()) { ?> checked<?php } ?> <?php if ($inViewMode || !$publishRights ) { ?>disabled<?php } ?> />\n        <label for=\"f_on_front_page\"><?php echo $translator->trans('Show article on front page'); ?></label>\n      </li>\n      <li><input type=\"checkbox\" name=\"f_on_section_page\" id=\"f_on_section_page\"\n        class=\"input_checkbox\" <?php if ($articleObj->onSectionPage()) { ?> checked<?php } ?> <?php if ($inViewMode || !$publishRights) { ?>disabled<?php } ?> />\n        <label for=\"f_on_section_page\"><?php echo $translator->trans('Show article on section page'); ?></label>\n      </li>\n      <li><input type=\"checkbox\" name=\"f_rating_enabled\" id=\"f_rating_enabled\"\n        class=\"input_checkbox\" <?php if ($articleObj->ratingEnabled()) { ?> checked<?php } ?> <?php if ($inViewMode || !$publishRights) { ?>disabled<?php } ?> />\n        <label for=\"f_rating_enabled\"><?php echo $translator->trans('Enable Rating', array(), 'articles'); ?></label>\n      </li>\n    <?php\n    foreach ($dbColumns as $dbColumn) {\n        // Custom switches\n        if ($dbColumn->getType() == ArticleTypeField::TYPE_SWITCH) {\n            $checked = $articleData->getFieldValue($dbColumn->getPrintName()) ? 'checked' : '';\n    ?>\n      <li>\n        <input type=\"checkbox\" name=\"<?php echo $dbColumn->getName(); ?>\" id=\"<?php echo $dbColumn->getName(); ?>\"\n          class=\"input_checkbox db\" value=\"on\" <?php if ($inViewMode) { ?>disabled<?php } ?> <?php echo $checked; ?> />\n        <label for=\"<?php echo $dbColumn->getName(); ?>\"><?php echo htmlspecialchars($dbColumn->getDisplayName($articleObj->getLanguageId())); ?></label>\n      </li>\n    <?php\n        }\n    }\n    if ($inEditMode) {\n    ?>\n      <li>\n        <input type=\"submit\" class=\"default-button right-floated clear-margin next-to-field\" value=\"<?php echo $translator->trans('Save'); ?>\" />\n      </li>\n    <?php } ?>\n    </ul>\n    </form>\n\n    <script type=\"text/javascript\">\n    $(document).ready(function() {\n        $('form#article-switches').submit(function() {\n            var form = $(this);\n            var vals = {\n                'setOnFrontPage': $('input[name=f_on_front_page]', form),\n                'setOnSectionPage': $('input[name=f_on_section_page]', form),\n                'setRatingEnabled': $('input[name=f_rating_enabled]', form)\n            };\n\n            // check if saved\n            if (!form.hasClass('changed')) {\n                return false;\n            }\n\n            // set dynamic\n            $('input.db', form).each(function() {\n                var val = 'off';\n                if ($(this).is(':checked')) {\n                    val = 'on';\n                }\n\n                callServer(['ArticleData', 'setProperty'], [\n                    '<?php echo $articleObj->getType(); ?>',\n                    <?php echo $articleObj->getArticleNumber(); ?>,\n                    <?php echo $f_language_selected; ?>,\n                    $(this).attr('name'), val], function(json) {\n                \t   flashMessage('<?php echo $translator->trans('Switches saved.', array(), 'articles'); ?>');\n                    });\n            });\n\n            // set static\n            for (method in vals) {\n                if (vals[method].attr('disabled'))\n                    continue;\n                callServer(['Article', method], [\n                    <?php echo $f_language_selected; ?>,\n                    <?php echo $articleObj->getArticleNumber(); ?>,\n                    Number(vals[method].is(':checked'))], function(json) {\n                        flashMessage('<?php echo $translator->trans('Switches saved.', array(), 'articles'); ?>');\n                    });\n            }\n\n            form.removeClass('changed');\n            return false;\n        }).change(function() {\n            $(this).addClass('changed');\n        });\n    });\n    </script>\n</div></div>\n<?php } ?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/edit_topics_box.php",
    "content": "<?php $translator = \\Zend_Registry::get('container')->getService('translator'); ?>\n<div class=\"ui-widget-content small-block block-shadow\">\n  <div class=\"collapsible\">\n    <h3 class=\"head ui-accordion-header ui-helper-reset ui-state-default ui-widget\">\n    <span class=\"ui-icon\"></span>\n    <a href=\"#\" tabindex=\"-1\"><?php echo $translator->trans('Keywords &amp; Topics', array(), 'articles'); ?></a></h3>\n  </div>\n  <div class=\"padded\">\n  <?php if ($inEditMode && $g_user->hasPermission('ChangeArticle')) { ?>\n  <form id=\"article-keywords\" action=\"/<?php echo $ADMIN; ?>/articles/post.php\" method=\"POST\">\n      <fieldset class=\"frame top-field\">\n        <label for=\"Keywords\" class=\"block-label\"><?php echo $translator->trans('Keywords'); ?></label>\n        <input type=\"text\" name=\"Keywords\" id=\"Keywords\" size=\"45\"\n          class=\"input_text\" value=\"<?php echo $articleObj->getKeywords(); ?>\" onkeyup=\"\" autocomplete=\"off\" style=\"width:75%;\" /><input\n          type=\"submit\" class=\"default-button right-floated clear-margin next-to-field\" value=\"<?php echo $translator->trans('Save'); ?>\" />\n      </fieldset>\n    </form>\n    <script type=\"text/javascript\">\n    $(document).ready(function () {\n        $('form#article-keywords').submit(function () {\n            if (!$(this).hasClass('changed')) {\n                return false;\n            }\n\n            var keywords = $('input#Keywords', $(this)).val();\n            callServer(['Article', 'setKeywords'], [\n                <?php echo $f_language_selected; ?>,\n                <?php echo $articleObj->getArticleNumber(); ?>,\n                keywords], function (json) {\n                    flashMessage('<?php echo $translator->trans('Keywords saved.', array(), 'articles'); ?>');\n                });\n\n            $(this).removeClass('changed');\n\n            return false;\n        }).change(function () {\n            $(this).addClass('changed');\n        });\n\n        $('a#detachTopic').click(function (e) {\n          var alertMsg = $(this).attr('data-msg');\n          var result = confirm(alertMsg);\n          var that = $(this);\n\n          if (checkChanged() && result) {\n            callServer('ping', [], function (json) {\n                $.ajax({\n                    type: \"POST\",\n                    url: that.attr('href'),\n                    data: {\n                      'articleNumber': that.attr('data-article-number'),\n                      'topicId': that.attr('data-topicId'),\n                      'language': that.attr('data-language')\n                    },\n                    dataType: \"json\",\n                    success: function (msg) {\n                      if (msg.status) {\n                        flashMessage(msg.message);\n                        that.parent().remove();\n                      } else {\n                        flashMessage(msg.message, 'error');\n                      }\n                    },\n                    error: function (xhr, textStatus, errorThrown) {\n                        flashMessage(textStatus, 'error');\n                    }\n                });\n            });\n          }\n\n          e.preventDefault();\n        });\n    });\n    </script>\n  <?php }\n    $em = \\Zend_Registry::get('container')->getService('em');\n    $router = \\Zend_Registry::get('container')->getService('router');\n    $language = $em->getReference(\"Newscoop\\Entity\\Language\", $f_language_id);\n  ?>\n    <div class=\"frame\" id=\"topic_box_frame\">\n    <?php if ($inEditMode && $g_user->hasPermission('AttachTopicToArticle')) { ?>\n      <a class=\"iframe ui-state-default icon-button right-floated\"\n      href=\"<?php echo $router->generate('newscoop_newscoop_topics_index_compact', array(\n          'compactView' => 'compact',\n          'articleNumber' => $articleObj->getArticleNumber(),\n          'language' => $language->getCode()\n      )); ?>\"><span\n        class=\"ui-icon ui-icon-pencil\"></span><?php echo $translator->trans('Edit'); ?></a>\n    <?php } ?>\n      <label class=\"left-floated block-label\"><?php echo $translator->trans('Topics'); ?></label>\n      <div class=\"clear\"></div>\n    <?php if (count($articleTopics) > 0) { ?>\n      <ul class=\"block-list\">\n    <?php\n    $repo = $em->getRepository(\"Newscoop\\NewscoopBundle\\Entity\\Topic\");\n    foreach ($articleTopics as $tmpArticleTopic) {\n        $tmpArticleTopic = $tmpArticleTopic->getTopic();\n        $pathStr = $repo->getReadablePath($tmpArticleTopic, $language->getCode());\n        // Get the topic name for the 'detach topic' dialog box, below.\n        $tempArray = array_values(explode(\" / \", $pathStr));\n        $tmpTopicName = end($tempArray);\n    ?>\n        <li><?php p(wordwrap($pathStr, 45, '<br />&nbsp;&nbsp;')); ?>\n        <?php if ($inEditMode && $g_user->hasPermission('AttachTopicToArticle')) { ?>\n          <a class=\"corner-button\" id=\"detachTopic\" data-language=\"<?php echo $f_language_selected ?>\" data-topicId=\"<?php echo $tmpArticleTopic->getTopicId() ?>\" data-article-number=\"<?php echo $f_article_number ?>\" href=\"/admin/topics/detach\"\n            data-msg=\"<?php echo $translator->trans(\"Are you sure you want to remove the topic $1 from the article?\", array('$1' => camp_javascriptspecialchars($tmpTopicName)), 'articles'); ?>\"><span class=\"ui-icon ui-icon-closethick\"></span></a></li>\n        <?php } ?>\n    <?php } ?>\n      </ul>\n    <?php } ?>\n    </div>\n  </div>\n</div>\n"
  },
  {
    "path": "newscoop/admin-files/articles/editor_load_countable.php",
    "content": "<!-- Load TinyMCE -->\n<link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/jquery/jCountable/jquery.jCountable.css\" />\n<script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/jquery/jCountable/jquery.jCountable.js\"></script>\n<script type=\"text/javascript\">\n$().ready(function() {\n    $('.top-input').jCountable(\n        {\n            errorLength: 140,\n            message: { container: $('#f_article_count') }\n        });\n    $('.countableft').jCountable(\n        {\n            message: { className: 'j-countable ft' }\n        });\n    $('.countable').jCountable();\n});\n</script>\n"
  },
  {
    "path": "newscoop/admin-files/articles/editor_load_tinymce.php",
    "content": "<?php\n/**\n * @param array p_dbColumns\n * @param object p_user The User object\n * @param int p_editorLanguage The current or selected language\n *\n * @return void\n */\nfunction editor_load_tinymce($p_dbColumns, $p_user, $p_articleNumber,\n                             $p_editorLanguage, $p_objectType = 'article')\n{\n    global $Campsite;\n\n    $stylesheetFile = $Campsite['WEBSITE_URL'] . '/admin/articles/article_stylesheet.css';\n\n    /** STEP 1 ********************************************************\n     * What are the names of the textareas you will be turning\n     * into editors?\n     ******************************************************************/\n    $editors = array();\n    if (is_array($p_dbColumns)) {\n        foreach ($p_dbColumns as $dbColumn) {\n            if ($dbColumn->getType() == ArticleTypeField::TYPE_BODY) {\n                if ($p_articleNumber > 0) {\n                    $editors[] = $dbColumn->getName().'_'.$p_articleNumber;\n                } else {\n                    $editors[] = $dbColumn->getName();\n                }\n            }\n        }\n    } else {\n        if ($p_articleNumber > 0) {\n            $editors[] = $p_dbColumns.'_'.$p_articleNumber;\n        } else {\n            $editors[] = $p_dbColumns;\n        }\n    }\n    $textareas = implode(\",\", $editors);\n\n    /** STEP 2 ********************************************************\n     * Now, what are the plugins you will be using in the editors\n     * on this page.  List all the plugins you will need, even if not\n     * all the editors will use all the plugins.\n     ******************************************************************/\n    $plugins = array();\n    if ($p_user->hasPermission('EditorCopyCutPaste')) {\n        $plugins[] = 'paste';\n    }\n    if ($p_user->hasPermission('EditorFindReplace')) {\n        $plugins[] = 'searchreplace';\n    }\n    if ($p_user->hasPermission('EditorEnlarge')) {\n        $plugins[] = 'fullscreen';\n    }\n    if ($p_user->hasPermission('EditorTable')) {\n        $plugins[] = 'table';\n    }\n    if ($p_user->hasPermission('EditorTable')) {\n        $plugins[] = 'table';\n            $plugins[] = 'textbox';\n    }\n    if ($p_user->hasPermission('EditorLink')) {\n        $plugins[] = 'campsiteinternallink';\n        if ($p_objectType == 'article') {\n            $plugins[] = 'campsiteattachment';\n        }\n    }\n    if ($p_user->hasPermission('EditorImage') && $p_objectType == 'article') {\n            $plugins[] = 'campsiteimage';\n            $plugins[] = 'media';\n    }\n        if ($p_user->hasPermission('EditorFontColor')) {\n            $plugins[] = 'codehighlighting';\n        }\n        if ($p_user->hasPermission('EditorTextDirection')) {\n            $plugins[] = 'directionality';\n        }\n    $plugins[] = 'iframe';\n\n    $plugins_list = implode(\",\", $plugins);\n\n    $statusbar_location = \"none\";\n    if ($p_user->hasPermission('EditorStatusBar')) {\n        $statusbar_location = \"bottom\";\n    }\n\n    /** STEP 3 ********************************************************\n     * We create a default configuration to be used by all the editors.\n     * If you wish to configure some of the editors differently this\n     * will be done in step 4.\n     ******************************************************************/\n    $toolbar1 = array();\n    if ($p_user->hasPermission('EditorBold')) {\n        $toolbar1[] = \"bold\";\n    }\n    if ($p_user->hasPermission('EditorItalic')) {\n        $toolbar1[] = \"italic\";\n    }\n    if ($p_user->hasPermission('EditorUnderline')) {\n        $toolbar1[] = \"underline\";\n    }\n    if ($p_user->hasPermission('EditorStrikethrough')) {\n        $toolbar1[] = \"strikethrough\";\n            $toolbar1[] = \"blockquote\";\n    }\n    if ($p_user->hasPermission('EditorTextAlignment')) {\n        $toolbar1[] = \"|\";\n        $toolbar1[] = \"justifyleft\";\n        $toolbar1[] = \"justifycenter\";\n        $toolbar1[] = \"justifyright\";\n        $toolbar1[] = \"justifyfull\";\n    }\n    if ($p_user->hasPermission('EditorIndent')) {\n        $toolbar1[] = \"|\";\n        $toolbar1[] = \"outdent\";\n        $toolbar1[] = \"indent\";\n    }\n    if ($p_user->hasPermission('EditorCopyCutPaste')) {\n        $toolbar1[] = \"|\";\n        $toolbar1[] = \"copy\";\n        $toolbar1[] = \"cut\";\n        $toolbar1[] = \"paste\";\n        $toolbar1[] = \"pastetext\";\n        $toolbar1[] = \"pasteword\";\n    }\n    if ($p_user->hasPermission('EditorUndoRedo')) {\n        $toolbar1[] = \"|\";\n        $toolbar1[] = \"undo\";\n        $toolbar1[] = \"redo\";\n    }\n    if ($p_user->hasPermission('EditorTextDirection')) {\n        $toolbar1[] = \"|\";\n        $toolbar1[] = \"ltr\";\n        $toolbar1[] = \"rtl\";\n    }\n\n    if ($p_user->hasPermission('EditorLink')) {\n        $toolbar1[] = \"|\";\n        $toolbar1[] = \"campsiteinternallink\";\n        $toolbar1[] = \"link\";\n        $toolbar1[] = \"anchor\";\n        if ($p_objectType == 'article') {\n            $toolbar1[] = \"campsiteattachment\";\n        }\n    }\n    if ($p_user->hasPermission('EditorSubhead')) {\n        $toolbar1[] = \"campsite-subhead\";\n    }\n    if ($p_user->hasPermission('EditorImage') && $p_objectType == 'article') {\n            $toolbar1[] = \"campsiteimage\";\n            $toolbar1[] = \"media\";\n    }\n    if ($p_user->hasPermission('EditorSourceView')) {\n        $toolbar1[] = \"code\";\n    }\n    if ($p_user->hasPermission('EditorEnlarge')) {\n        $toolbar1[] = \"fullscreen\";\n    }\n    if ($p_user->hasPermission('EditorHorizontalRule')) {\n        $toolbar1[] = \"hr\";\n    }\n    if ($p_user->hasPermission('EditorFontColor')) {\n        $toolbar1[] = \"forecolor\";\n        $toolbar1[] = \"backcolor\";\n            $toolbar1[] = 'codehighlighting';\n    }\n    if ($p_user->hasPermission('EditorSubscript')) {\n        $toolbar1[] = \"sub\";\n    }\n    if ($p_user->hasPermission('EditorSuperscript')) {\n        $toolbar1[] = \"sup\";\n    }\n    if ($p_user->hasPermission('EditorFindReplace')) {\n        $toolbar1[] = \"|\";\n        $toolbar1[] = \"search\";\n        $toolbar1[] = \"replace\";\n    }\n\n    $toolbar2 = array();\n    // Slice up the first toolbar if it is too long.\n    if (count($toolbar1) > 34) {\n        $toolbar2 = array_splice($toolbar1, 34);\n    }\n\n    if ($p_user->hasPermission('EditorCharacterMap')) {\n        $toolbar2[] = \"charmap\";\n    }\n\n\n    // This is to put the bulleted and numbered list controls\n    // on the most appropriate line of the toolbar.\n    if ($p_user->hasPermission('EditorListBullet') && $p_user->hasPermission('EditorListNumber') && count($toolbar1) < 19) {\n        $toolbar1[] = \"|\";\n        $toolbar1[] = \"bullist\";\n        $toolbar1[] = \"numlist\";\n    } elseif ($p_user->hasPermission('EditorListBullet') && !$p_user->hasPermission('EditorListNumber') && count($toolbar1) < 34) {\n        $toolbar1[] = \"|\";\n        $toolbar1[] = \"bullist\";\n    } elseif (!$p_user->hasPermission('EditorListBullet') && $p_user->hasPermission('EditorListNumber') && count($toolbar1) < 20) {\n        $toolbar1[] = \"|\";\n        $toolbar1[] = \"numlist\";\n    } else {\n        $hasSeparator = false;\n        if ($p_user->hasPermission('EditorListBullet')) {\n            $toolbar2[] = \"|\";\n            $toolbar2[] = \"bullist\";\n            $hasSeparator = true;\n        }\n        if ($p_user->hasPermission('EditorListNumber')) {\n            if (!$hasSeparator) {\n                $toolbar2[] = \"|\";\n            }\n            $toolbar2[] = \"numlist\";\n        }\n    }\n\n    if ($p_user->hasPermission('EditorFontFace')) {\n        $toolbar2[] = \"|\";\n        //$toolbar2[] = \"styleselect\";\n        $toolbar2[] = \"formatselect\";\n        //$toolbar2[] = \"fontselect\";\n    }\n    if ($p_user->hasPermission('EditorFontSize')) {\n        $toolbar2[] = \"fontsizeselect\";\n    }\n\n    $toolbar3 = array();\n    if ($p_user->hasPermission('EditorTable')) {\n        $toolbar3[] = \"tablecontrols\";\n        $toolbar3[] = 'textbox';\n    }\n    $toolbar2[] = 'iframe';\n\n    $theme_buttons1 = (count($toolbar1) > 0) ? implode(',', $toolbar1) : '';\n    $theme_buttons2 = (count($toolbar2) > 0) ? implode(',', $toolbar2) : '';\n    $theme_buttons3 = (count($toolbar3) > 0) ? implode(',', $toolbar3) : '';\n\n    $localeFile = $Campsite['CAMPSITE_DIR'] . '/js/tinymce/langs/' . $p_editorLanguage . '.js';\n    if (!file_exists($localeFile)) {\n        $p_editorLanguage = 'en';\n    }\n?>\n\n<!-- Load TinyMCE -->\n<script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/tinymce/jquery.tinymce.js\"></script>\n<script type=\"text/javascript\">\n<?php if ($p_objectType == 'article') { ?>\nfunction CampsiteSubhead(ed) {\n    element = ed.dom.getParent(ed.selection.getNode(), 'span');\n    if (element && ed.dom.getAttrib(element, 'class') == 'campsite_subhead') {\n        return false;\n    } else {\n        html = ed.selection.getContent({format : 'text'});\n        ed.selection.setContent('<span class=\"campsite_subhead\">' + html + '</span>');\n    }\n} // fn CampsiteSubhead\n<?php } ?>\n\n$().ready(function() {\n    $('textarea.tinymce').tinymce({\n\n\n        // Location of TinyMCE script\n        script_url : '<?php echo $Campsite['WEBSITE_URL']; ?>/js/tinymce/tiny_mce.js',\n\n        // General options\n        language : \"<?php p($p_editorLanguage); ?>\",\n        theme : \"advanced\",\n        plugins : \"<?php p($plugins_list); ?>\",\n\n        file_browser_callback : \"campsitemedia\",\n        relative_urls : false,\n        onchange_callback : function() { $('form#article-main').change(); },\n        extended_valid_elements : \"iframe[src|width|height|name|align|frameborder|scrolling|marginheight|marginwidth|style|id|class|allowfullscreen]\",\n\n        // Theme options\n        theme_advanced_buttons1 : \"<?php p($theme_buttons1); ?>\",\n        theme_advanced_buttons2 : \"<?php p($theme_buttons2); ?>\",\n        theme_advanced_buttons3 : \"<?php p($theme_buttons3); ?>\",\n\n        theme_advanced_toolbar_location : \"top\",\n        theme_advanced_toolbar_align : \"left\",\n        theme_advanced_resizing : false,\n        theme_advanced_statusbar_location: \"<?php p($statusbar_location); ?>\",\n\n        // Example content CSS (should be your site CSS)\n        content_css : \"<?php echo $stylesheetFile; ?>\",\n\n        // Drop lists for link/image/media/template dialogs\n        template_external_list_url : \"lists/template_list.js\",\n        external_link_list_url : \"lists/link_list.js\",\n        external_image_list_url : \"lists/image_list.js\",\n        media_external_list_url : \"lists/media_list.js\",\n\n\n        // paste options\n        paste_auto_cleanup_on_paste: true,\n        paste_convert_headers_to_strong: true,\n        paste_remove_spans: true,\n        paste_remove_styles: true,\n        paste_block_drop: true,\n\n        // not escaping greek characters\n        entity_encoding: 'raw',\n\n        <?php if ($p_user->hasPermission('EditorSpellcheckerEnabled')): ?>\n        gecko_spellcheck : true,\n        <?php endif; ?>\n\n        <?php\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        ?>\n        setup : function(ed) {\n            var wordcount = false;\n            <?php if ($p_user->hasPermission('EditorSubhead') && $p_objectType == 'article') { ?>\n            ed.onInit.add(function(){\n                ed.controlManager.setDisabled('pasteword', true);\n                    if (tinymce.isIE) {\n                        tinymce.dom.Event.add(ed.getBody(), \"dragenter\", function(e) {\n                            return tinymce.dom.Event.cancel(e);\n                        });\n                    } else {\n                       tinymce.dom.Event.add(ed.getBody().parentNode, \"drop\", function(e) {\n                            tinymce.dom.Event.cancel(e);\n                            tinymce.dom.Event.stop(e);\n                        });\n                    }\n            });\n            ed.onNodeChange.add(function(){ed.controlManager.setDisabled('pasteword', true);});\n\n            ed.addButton('campsite-subhead', {\n                title : '<?php echo $translator->trans(\"Newscoop Subhead\", array(), 'articles'); ?>',\n                image : website_url + '/js/tinymce/themes/advanced/img/campsite_subhead.gif',\n                onclick : function() {\n                    CampsiteSubhead(ed);\n                }\n            });\n            <?php } ?>\n\n            ed.onKeyUp.add(function(ed, l) {\n                var row = tinymce.DOM.get(tinyMCE.activeEditor.id + '_path_row');\n                if (!wordcount) {\n                    tinymce.DOM.add(row.parentNode, 'div', {'style': 'float: right'}, '<?php echo $translator->trans(\"Characters\", array(), 'articles'); ?>: ' + '<span id=\"' + tinyMCE.activeEditor.id + '-wordcount\">0</span>');\n                    wordcount = true;\n                }\n                var strip = (tinyMCE.activeEditor.getContent()).replace(/(<([^>]+)>)/ig,\"\");\n                tinymce.DOM.setHTML(tinyMCE.activeEditor.id + '-wordcount', strip.length);\n            });\n        },\n    });\n});\n\n<?php if ($p_objectType == 'article') { ?>\nfunction campsitemedia(field_name, url, type, win)\n{\n    topDoc = window.top.document;\n    articleNo = topDoc.getElementById('f_article_number').value;\n    langId = topDoc.getElementById('f_language_selected').value;\n\n    tinyMCE.activeEditor.windowManager.open({\n        url: website_url + \"/js/tinymce/plugins/campsitemedia/popup.php?article_id=\"+articleNo+'&language_selected='+langId,\n        width: 580,\n        height: 320,\n        inline : \"yes\",\n        close_previous : \"no\"\n    },{\n        window : win,\n        input : field_name\n    });\n}\n<?php } ?>\n</script>\n<!-- /TinyMCE -->\n<?php\n} // fn editor_load_tinymce\n?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/empty.php",
    "content": "<html>\n    <head>\n    <style>\n        body {\n            margin: 0px;\n            padding: 0px;\n            font: 12px Courier New, Sans;\n        }\n    </style>\n    <script>\n        function toggleErrorWindow() {\n            var button = document.getElementById('error_frame');\n            if (button.value == 'show') {\n                parent.document.getElementById('frameset').rows = \"*, 200px\";\n                button.value = 'hide';\n            }\n            else {\n                parent.document.getElementById('frameset').rows = \"*, 30px\";\n                button.value = 'show';\n            }\n        }\n    </script>\n    </head>\n    <body>\n        Parse errors: <span id=\"error_count\"></span>\n        <input id=\"error_frame\" type=\"button\" value=\"show\" onClick=\"toggleErrorWindow();\"><br>\n        <div id=\"error_list\"></div>\n    </body>\n</html>\n"
  },
  {
    "path": "newscoop/admin-files/articles/files/do_add.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Attachment.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleAttachment.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Translation.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\n\nuse Symfony\\Component\\HttpFoundation\\File\\UploadedFile;\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$request = \\Zend_Registry::get('container')->getService('request');\n$params = $request->request->all();\n$queryParams = $request->query->all();\n\n/**\n * Set message\n * @param string $message\n * @return void\n */\nfunction setMessage($message, $isError = FALSE)\n{\n    if (empty($queryParams['archive'])) { // fancybox\n        echo '<script type=\"text/javascript\">';\n        echo 'try {';\n\n        if (!$isError) {\n            echo 'parent.$.fancybox.reload = true;';\n            echo 'parent.$.fancybox.message = \"', $message, '\";';\n        } else {\n            echo 'parent.$.fancybox.error = \"', $message, '\";';\n        }\n\n        echo 'parent.$.fancybox.close();';\n        echo '} catch (e) {}';\n        echo '</script>';\n        exit;\n    }\n\n    if ($isError) {\n\t    camp_html_display_error($message, null, true);\n        exit;\n    }\n\n    camp_html_add_msg($message);\n}\n\nif (empty($params)) {\n    setMessage($translator->trans('The file exceeds the allowed max file size.', array(), 'article_files'), TRUE);\n}\n\nif (!SecurityToken::isValid()) {\n    setMessage(SecurityToken::GetToken(), TRUE);\n    setMessage($translator->trans('Invalid security token!'), TRUE);\n}\n\nif (!$g_user->hasPermission('AddFile')) {\n    setMessage($translator->trans('You do not have the right to add files.', array(), 'article_files'), TRUE);\n}\n\n// We set to unlimit the maximum time to execution whether\n// safe_mode is disabled. Upload is still under control of\n// max upload size.\nif (!ini_get('safe_mode')) {\n\tset_time_limit(0);\n}\n\n$inArchive = !empty($queryParams['archive']);\n\nif (!$inArchive) {\n    $f_language_id = Input::Get('f_language_id', 'int', 0);\n    $f_language_selected = Input::Get('f_language_selected', 'int', 0);\n    $f_article_number = Input::Get('f_article_number', 'int', 0);\n\n    $articleObj = new Article($f_language_selected, $f_article_number);\n    if (!$articleObj->exists()) {\n        setMessage($translator->trans(\"Article does not exist.\"), TRUE);\n    }\n}\n\n$f_description = Input::Get('f_description');\n$f_language_specific = Input::Get('f_language_specific');\n$f_content_disposition = Input::Get('f_content_disposition');\n\n$BackLink = Input::Get('BackLink', 'string', null, true);\n\nif (isset($_FILES[\"f_file\"])) {\n\tswitch($_FILES[\"f_file\"]['error']) {\n\t\tcase 0: // UPLOAD_ERR_OK\n\t\t\tbreak;\n\n\t\tcase 1: // UPLOAD_ERR_INI_SIZE\n\t\tcase 2: // UPLOAD_ERR_FORM_SIZE\n            setMessage($translator->trans(\"The file exceeds the allowed max file size.\", array(), 'article_files'), TRUE);\n\t\t\tbreak;\n\n\t\tcase 3: // UPLOAD_ERR_PARTIAL\n\t\t\tsetMessage($translator->trans(\"The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in 'php.ini'\", array(), 'article_files'), TRUE);\n\t\t\tbreak;\n\n\t\tcase 4: // UPLOAD_ERR_NO_FILE\n\t\t\tsetMessage($translator->trans(\"You must select a file to upload.\", array(), 'article_files'), TRUE);\n\t\t\tbreak;\n\n\t\tcase 6: // UPLOAD_ERR_NO_TMP_DIR\n\t\tcase 7: // UPLOAD_ERR_CANT_WRITE\n\t\t\tsetMessage($translator->trans(\"There was a problem uploading the file.\", array(), 'article_files'), TRUE);\n\t\t\tbreak;\n    }\n} else {\n\tsetMessage($translator->trans(\"The file exceeds the allowed max file size.\", array(), 'article_files'), TRUE);\n}\n\nif (!Input::IsValid()) {\n\tsetMessage($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), TRUE);\n}\n\n$container = \\Zend_Registry::get('container');\n$user = $container->get('security.context')->getToken()->getUser();\n$em = $container->get('em');\n\nif (!empty($_FILES['f_file'])) {\n    $language = $em->getRepository('Newscoop\\Entity\\Language')->findOneById($f_language_selected);\n    $attachmentService = $container->get('attachment');\n    $file = new UploadedFile($_FILES['f_file']['tmp_name'], $_FILES['f_file']['name'], $_FILES['f_file']['type'], $_FILES['f_file']['size'], null, true);\n    $attachment = $attachmentService->upload($file, $f_description, $language, array('user' => $user));\n\n    if ($f_language_specific != \"yes\") {\n        $queryBuilder = $em->createQueryBuilder();\n        $attach = $queryBuilder->update('Newscoop\\Entity\\Attachment', 'a')\n            ->set('a.language', 'null')\n            ->where('a.id = ?1')\n            ->setParameter(1, $attachment->getId())\n            ->getQuery();\n        $attach->execute();\n    }\n\n    if ($f_content_disposition == \"attachment\") {\n        $attachment->setContentDisposition($f_content_disposition);\n    }\n} else {\n\tcamp_html_goto_page(camp_html_article_url($articleObj, $f_language_id, 'files/popup.php'));\n}\n\n// Check if image was added successfully\nif (!$attachment) {\n    setMessage($translator->trans(\"There was a problem uploading the file.\", array(), 'article_files'), TRUE);\n\tcamp_html_goto_page($BackLink);\n}\n\nif (!$inArchive) {\n    ArticleAttachment::AddFileToArticle($attachment->getId(), $articleObj->getArticleNumber());\n    $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n    $cacheService->clearNamespace('attachments');\n\n    $logtext = $translator->trans('File #$1 \"$2\" attached to article',\n        array('$1' => $attachment->getId(), '$2' => $attachment->getName()), 'article_files');\n    Log::ArticleMessage($articleObj, $logtext, null, 38, TRUE);\n\n    setMessage($translator->trans('File attached.', array(), 'article_files'));\n} else { ?>\n<script type=\"text/javascript\"><!--\n    if (opener && !opener.closed && opener.onUpload) {\n        opener.onUpload();\n        opener.focus();\n        window.close();\n    }\n//--></script>\n<?php } ?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/files/do_add_existing.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Attachment.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleAttachment.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Translation.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_add_msg($translator->trans('Invalid security token!'));\n?>\n<script type=\"text/javascript\">\nparent.$.fancybox.reload = true;\nparent.$.fancybox.close();\n</script>\n<?php\n\texit;\n}\n\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n$f_article_number = Input::Get('f_article_number', 'int', 0);\n$articleObj = new Article($f_language_selected, $f_article_number);\nif (!$articleObj->exists()) {\n\tcamp_html_display_error($translator->trans(\"Article does not exist.\"), null, true);\n\texit;\n}\n\nforeach ((array) $_POST['item'] as $attachmentId) {\n    ArticleAttachment::AddFileToArticle((int) $attachmentId, $articleObj->getArticleNumber());\n}\n$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n$cacheService->clearNamespace('attachments');\n$logtext = $translator->trans('$1 file/s attached to article', array('$1' => sizeof($_POST['item'])), 'article_files');\nLog::ArticleMessage($articleObj, $logtext, null, 38, TRUE);\n\n?>\n<script type=\"text/javascript\">\ntry {\n    parent.$.fancybox.reload = true;\n    parent.$.fancybox.message = '<?php echo $translator->trans('Files attached.', array(), 'article_files') ?>';\n    parent.$.fancybox.close();\n} catch (e) {}\n</script>\n\n<?php exit; ?>\n\n"
  },
  {
    "path": "newscoop/admin-files/articles/files/do_del.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Attachment.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleAttachment.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/User.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nif (!$g_user->hasPermission('DeleteFile')) {\n\tcamp_html_display_error($translator->trans('You do not have the right to delete files.', array(), 'article_files'), null, true);\n\texit;\n}\n\n$f_language_id = Input::Get('f_language_id', 'int', 0);\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n$f_article_number = Input::Get('f_article_number', 'int', 0);\n$f_attachment_id = Input::Get('f_attachment_id', 'int', 0);\n\n// Check input\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), null, true);\n\texit;\n}\n\nif (!$g_user->hasPermission(\"DeleteFile\")) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to delete file attachments.\", array(), 'article_files'), null, true);\n\texit;\n}\n\n$articleObj = new Article($f_language_selected, $f_article_number);\n\nif (!$articleObj->exists()) {\n\tcamp_html_display_error($translator->trans(\"Article does not exist.\"), null, true);\n\texit;\n}\n\n$attachmentObj = new Attachment($f_attachment_id);\nif (!$attachmentObj->exists()) {\n\tcamp_html_display_error($translator->trans('Attachment does not exist.', array(), 'article_files'), null, true);\n\texit;\n}\n$filePath = dirname($attachmentObj->getStorageLocation()) . '/' . $attachmentObj->getFileName();\nArticleAttachment::RemoveAttachmentFromArticle($f_attachment_id, $f_article_number);\n$logtext = $translator->trans('File #$1 \"$2\" unattached', array(\n\t\t '$1' => $attachmentObj->getAttachmentId(), '$2' => $attachmentObj->getFileName()), 'article_files');\nLog::ArticleMessage($articleObj, $logtext, null, 39);\n\n$attachmentFileName = $attachmentObj->getFileName();\n$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n$cacheService->clearNamespace('attachments');\n\n// Go back to article.\ncamp_html_add_msg($translator->trans(\"File $1 unattached.\", array('$1' => $attachmentFileName), 'article_files'), \"ok\");\ncamp_html_goto_page(camp_html_article_url($articleObj, $f_language_id, 'edit.php'));\n?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/files/do_edit.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Issue.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Section.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Publication.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Attachment.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nif (!$g_user->hasPermission('ChangeFile')) {\n    camp_html_display_error($translator->trans('You do not have the right to change files.', array(), 'article_files'), null, true);\n    exit;\n}\n\n$f_publication_id = Input::Get('f_publication_id', 'int', 0);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0);\n$f_section_number = Input::Get('f_section_number', 'int', 0);\n$f_language_id = Input::Get('f_language_id', 'int', 0);\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n$f_article_number = Input::Get('f_article_number', 'int', 0);\n$f_attachment_id = Input::Get('f_attachment_id', 'int', 0);\n$f_description = trim(Input::Get('f_description', 'string', '', true));\n$f_language_specific = Input::Get('f_language_specific');\n$f_content_disposition = Input::Get('f_content_disposition');\n\nif (!Input::IsValid()) {\n    camp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), null, true);\n    exit;\n}\n\n$articleObj = new Article($f_language_selected, $f_article_number);\n$publicationObj = new Publication($f_publication_id);\n$issueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\n$sectionObj = new Section($f_publication_id, $f_issue_number, $f_language_id, $f_section_number);\n\nif (!$articleObj->exists()) {\n    camp_html_display_error($translator->trans(\"Article does not exist.\"), null, true);\n    exit;\n}\n\n// This file can only be accessed if the user has the right to change articles\n// or the user created this article and it hasnt been published yet.\nif (!$articleObj->userCanModify($g_user)) {\n    camp_html_display_error($translator->trans('You do not have the right to change the article.', array(), 'article_files'), null, true);\n    exit;\n}\n\n$em = \\Zend_Registry::get('container')->getService('em');\n$attachment = $em->getRepository('Newscoop\\Entity\\Attachment')->findOneById($f_attachment_id);\n$language = $em->getRepository('Newscoop\\Entity\\Language')->findOneById($f_language_selected);\n$description = $em->getRepository('Newscoop\\Entity\\Translation')->findOneBy(array(\n    'phrase_id' => $attachment->getDescription()->getPhraseId(),\n    'language' => $language\n));\n\nif (!$description) {\n    $description = new \\Newscoop\\Entity\\Translation($attachment->getDescription()->getPhraseId());\n    $description->setLanguage($language);\n    $em->persist($description);\n}\n\n$description->setTranslationText($f_description);\nif ($f_language_specific == \"yes\") {\n    $attachment->setLanguage($language);\n} else {\n    $queryBuilder = $em->createQueryBuilder();\n    $attach = $queryBuilder->update('Newscoop\\Entity\\Attachment', 'a')\n        ->set('a.language', 'null')\n        ->where('a.id = ?1')\n        ->setParameter(1, $f_attachment_id)\n        ->getQuery();\n    $attach->execute();\n}\nif ($f_content_disposition == \"attachment\" || empty($f_content_disposition)) {\n    $attachment->setContentDisposition($f_content_disposition);\n}\n$em->flush();\n$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n$cacheService->clearNamespace('attachments');\n// Go back to article.\ncamp_html_add_msg($translator->trans(\"File '$1' updated.\", array('$1' => $attachment->getName()), 'article_files'), \"ok\");\ncamp_html_goto_page(camp_html_article_url($articleObj, $f_language_id, 'edit.php'));\n\n?>"
  },
  {
    "path": "newscoop/admin-files/articles/files/edit.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/articles/article_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Attachment.php');\nrequire_once LIBS_DIR . '/MediaPlayer/MediaPlayer.php';\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n$f_publication_id = Input::Get('f_publication_id', 'int', 0, true);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0, true);\n$f_section_number = Input::Get('f_section_number', 'int', 0, true);\n$f_language_id = Input::Get('f_language_id', 'int', 0, true);\n\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n$f_article_number = Input::Get('f_article_number', 'int', 0);\n$f_attachment_id = Input::Get('f_attachment_id', 'int', 0);\n\nif (!Input::IsValid()) {\n    camp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $_SERVER['REQUEST_URI'], true);\n    exit;\n}\n\nif ($f_publication_id > 0) {\n    $publicationObj = new Publication($f_publication_id);\n    $issueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\n    $sectionObj = new Section($f_publication_id, $f_issue_number, $f_language_id, $f_section_number);\n}\n$articleObj = new Article($f_language_selected, $f_article_number);\n$attachmentObj = new Attachment($f_attachment_id);\n\nif (!$articleObj->exists()) {\n    camp_html_display_error($translator->trans(\"Article does not exist.\"), null, true);\n    exit;\n}\n\n$isDisabled = '';\n$isReadOnly = '';\nif (!$g_user->hasPermission('ChangeFile')) {\n    $isDisabled = 'disabled';\n    $isReadOnly = 'readonly';\n    $title = $translator->trans('File information', array(), 'article_files');\n} else {\n    $title = $translator->trans('Change file information', array(), 'article_files');\n}\n// Add extra breadcrumb for image list.\nif ($f_publication_id > 0) {\n    $extraCrumbs = array($translator->trans(\"Attachments\", array(), 'article_files') => \"\");\n    $topArray = array('Pub' => $publicationObj, 'Issue' => $issueObj,\n                      'Section' => $sectionObj, 'Article'=>$articleObj);\n    camp_html_content_top($title, $topArray, true, true, $extraCrumbs);\n} else {\n    $crumbs = array();\n    $crumbs[] = array($translator->trans(\"Actions\"), \"\");\n    $crumbs[] = array($translator->trans(\"Edit article\", array(), 'article_files'), camp_html_article_url($articleObj, $f_language_id, \"edit.php\"));\n    $crumbs[] = array($translator->trans(\"Attachments\", array(), 'article_files'), \"\");\n    $crumbs[] = array($title, \"\");\n    echo camp_html_breadcrumbs($crumbs);\n}\n?>\n<table cellpadding=\"1\" cellspacing=\"0\" class=\"action_buttons\" style=\"padding-top: 10px;\">\n<tr>\n    <td><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/left_arrow.png\" BORDER=\"0\"></td>\n    <td><a href=\"<?php echo camp_html_article_url($articleObj, $f_language_id, \"edit.php\"); ?>\"><b><?php echo $translator->trans(\"Back to Edit Article\"); ?></b></a></td>\n</table>\n<P>\n<?php if (strstr($attachmentObj->getMimeType(), \"image/\") &&\n                (strstr($_SERVER['HTTP_ACCEPT'], $attachmentObj->getMimeType()) ||\n                (strstr($_SERVER['HTTP_ACCEPT'], \"*/*\")))) { ?>\n<div class=\"indent\">\n<IMG SRC=\"<?php echo $attachmentObj->getAttachmentUrl(); ?>\" style=\"max-width: 600px;\" BORDER=\"0\" ALT=\"<?php echo htmlspecialchars($attachmentObj->getDescription($f_language_selected)); ?>\">\n</div>\n<P>\n<?php } ?>\n<FORM NAME=\"dialog\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/articles/files/do_edit.php\" >\n<?php echo SecurityToken::FormParameter(); ?>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" class=\"box_table\">\n<TR>\n    <TD COLSPAN=\"2\">\n        <B><?php  p($title); ?></B>\n        <HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n    </TD>\n</TR>\n<tr>\n    <td></td>\n    <td><?php if (strstr($attachmentObj->getMimeType(), \"audio/\") || strstr($attachmentObj->getMimeType(), \"video/\")) {\n        echo new MediaPlayer($attachmentObj->getAttachmentUrl() . '?g_show_in_browser=1', $attachmentObj->getMimeType()); \n    } ?></td>\n</tr>\n<?php if (strstr($attachmentObj->getMimeType(), \"application/\") || strstr($attachmentObj->getMimeType(), \"image/\")) { ?>\n<TR>\n    <TD ALIGN=\"RIGHT\"><?php echo $translator->trans('File Name', array(), 'article_files'); ?>:</TD>\n    <TD><?php echo htmlspecialchars($attachmentObj->getFileName()); ?> &nbsp; <A\n        HREF=\"<?php p($attachmentObj->getAttachmentUrl()); ?>\"><IMG\n        TITLE=\"<?php echo $translator->trans('Download', array(), 'article_files'); ?>\" BORDER=\"0\" ALIGN=\"absmiddle\" SRC=\"<?php p($Campsite[\"ADMIN_IMAGE_BASE_URL\"]);?>/download.png\" /></A></TD>\n</TR>\n<?php } ?>\n<TR>\n    <TD ALIGN=\"RIGHT\"><?php echo $translator->trans('Description'); ?>:</TD>\n    <TD>\n    <INPUT TYPE=\"TEXT\" NAME=\"f_description\" VALUE=\"<?php echo htmlspecialchars($attachmentObj->getDescription($f_language_selected)); ?>\" class=\"input_text\" SIZE=\"32\" <?php p($isReadOnly); ?>>\n    </TD>\n</TR>\n<TR>\n    <TD ALIGN=\"RIGHT\"><?php echo $translator->trans('File Size', array(), 'article_files'); ?>:</TD>\n    <TD><?php p(camp_format_bytes($attachmentObj->getSizeInBytes())); ?></TD>\n</TR>\n<TR>\n    <TD ALIGN=\"left\" colspan=\"2\" style=\"padding-left: 15px;\"><?php echo $translator->trans(\"Should this file only be available for this translation of the article, or for all translations?\", array(), 'article_files'); ?></TD>\n</TR>\n<TR>\n    <TD colspan=\"2\" class=\"indent\"  style=\"padding-left: 30px;\">\n    <INPUT type=\"radio\" name=\"f_language_specific\" value=\"yes\" <?php if ($attachmentObj->getLanguageId()) { ?> checked<?php } ?> <?php p($isDisabled); ?>><?php echo $translator->trans(\"Only this translation\", array(), 'article_files'); ?><br>\n    <INPUT type=\"radio\" name=\"f_language_specific\" value=\"no\" <?php if (!$attachmentObj->getLanguageId()) { ?> checked<?php } ?>  <?php p($isDisabled); ?>><?php echo $translator->trans(\"All translations\", array(), 'article_files'); ?>\n    </TD>\n</TR>\n<TR>\n    <TD ALIGN=\"left\" colspan=\"2\"  style=\"padding-left: 15px;\"><?php echo $translator->trans(\"Do you want this file to open in the user's browser, or to automatically download?\", array(), 'article_files'); ?></TD>\n</TR>\n<TR>\n    <TD colspan=\"2\" style=\"padding-left: 30px;\">\n    <INPUT type=\"radio\" name=\"f_content_disposition\" value=\"\" <?php if (!$attachmentObj->getContentDisposition()) { ?> checked<?php } ?> <?php p($isDisabled); ?>><?php echo $translator->trans(\"Open in the browser\", array(), 'article_files'); ?><br>\n    <INPUT type=\"radio\" name=\"f_content_disposition\" value=\"attachment\" <?php if ($attachmentObj->getContentDisposition()) { ?> checked<?php } ?> <?php p($isDisabled); ?>><?php echo $translator->trans(\"Automatically download\", array(), 'article_files'); ?>\n    </TD>\n</TR>\n<?php if ($g_user->hasPermission('ChangeFile')) { ?>\n<TR>\n    <TD COLSPAN=\"2\">\n    <DIV ALIGN=\"CENTER\">\n    <INPUT TYPE=\"HIDDEN\" NAME=\"f_publication_id\" VALUE=\"<?php  p($f_publication_id); ?>\">\n    <INPUT TYPE=\"HIDDEN\" NAME=\"f_issue_number\" VALUE=\"<?php  p($f_issue_number); ?>\">\n    <INPUT TYPE=\"HIDDEN\" NAME=\"f_section_number\" VALUE=\"<?php  p($f_section_number); ?>\">\n    <INPUT TYPE=\"HIDDEN\" NAME=\"f_article_number\" VALUE=\"<?php  p($f_article_number); ?>\">\n    <INPUT TYPE=\"HIDDEN\" NAME=\"f_language_id\" VALUE=\"<?php  p($f_language_id); ?>\">\n    <INPUT TYPE=\"HIDDEN\" NAME=\"f_language_selected\" VALUE=\"<?php  p($f_language_selected); ?>\">\n    <INPUT TYPE=\"HIDDEN\" NAME=\"f_attachment_id\" VALUE=\"<?php  p($f_attachment_id); ?>\">\n    <INPUT TYPE=\"submit\" NAME=\"Save\" VALUE=\"<?php echo $translator->trans('Save'); ?>\" class=\"button\">\n    </DIV>\n    </TD>\n</TR>\n<?php } ?>\n</TABLE>\n</FORM>\n<P>\n<?php\n\ncamp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/files/popup.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/articles/article_common.php\");\nrequire_once LIBS_DIR . '/MediaList/MediaList.php';\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n\n$inArchive = !empty($_REQUEST['archive']);\n\nif (!$inArchive) {\n    $f_publication_id = Input::Get('f_publication_id', 'int', 0);\n    $f_issue_number = Input::Get('f_issue_number', 'int', 0);\n    $f_section_number = Input::Get('f_section_number', 'int', 0);\n    $f_language_id = Input::Get('f_language_id', 'int', 0);\n    $f_language_selected = Input::Get('f_language_selected', 'int', 0);\n    $f_article_number = Input::Get('f_article_number', 'int', 0);\n\n    if (!Input::IsValid()) {\n\t    camp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $_SERVER['REQUEST_URI'], true);\n\t    exit;\n    }\n\n    $articleObj = new Article($f_language_selected, $f_article_number);\n}\n\nif (camp_convert_bytes(($preferencesService->MaxUploadFileSize)) == false) {\n\tcamp_html_add_msg($translator->trans(\"The maximum file upload size was not configured in Newscoop.\", array(), 'article_files'));\n\tcamp_html_add_msg($translator->trans(\"Please make sure you upgraded the database correctly: run $1 in a shell.\", array(\n\t\t\t'$1' => $Campsite['BIN_DIR'].'/campsite-create-instance --db_name '.$Campsite['DATABASE_NAME']), 'article_files'));\n}\n\nif (!is_writable($Campsite['FILE_DIRECTORY'])) {\n\tcamp_html_add_msg($translator->trans(\"Unable to add attachment.\", array(), 'article_files'));\n\tcamp_html_add_msg(camp_get_error_message(CAMP_ERROR_WRITE_DIR, $Campsite['FILE_DIRECTORY']));\n}\n\ncamp_html_display_msgs();\n?>\n<!DOCTYPE html>\n<html>\n<head>\n    <meta charset=\"utf-8\" />\n    <meta http-equiv=\"expires\" content=\"now\" />\n    <title><?php echo $translator->trans(\"Attach File to Article\", array(), 'article_files'); ?></title>\n\n    <?php include dirname(__FILE__) . '/../../html_head.php'; ?>\n    <?php include dirname(__FILE__) . '/../../javascript_common.php'; ?>\n\n    <style>\n        body, #tabs { background-color: #f5f5f5; }\n        #tabs { border: none; }\n    </style>\n\n    <script type=\"text/javascript\"><!--\n        $(function() {\n            $('#tabs').tabs();\n        });\n    //--></script>\n</head>\n<body>\n\n<?php if (!$inArchive) { ?>\n<div id=\"tabs\">\n    <ul>\n        <li><a href=\"#new-file\"><?php echo $translator->trans('Attach new file', array(), 'article_files'); ?></a></li>\n        <li><a href=\"#existing-file\"><?php echo $translator->trans('Attach existing file', array(), 'article_files'); ?></a></li>\n    </ul>\n\n    <div id=\"new-file\">\n<?php } ?>\n\n<p></p>\n<form name=\"dialog\" method=\"POST\" action=\"/<?php echo $ADMIN; ?>/articles/files/do_add.php?archive=<?php echo (int) $inArchive; ?>\" enctype=\"multipart/form-data\" onsubmit=\"return <?php camp_html_fvalidate(); ?>;\">\n<?php echo SecurityToken::FormParameter(); ?>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"box_table\">\n<tr>\n  <td colspan=\"2\">\n    <b><?php echo $translator->trans(\"Attach File to Article\", array(), 'article_files'); ?></b>\n    <hr noshade size=\"1\" color=\"black\" />\n  </td>\n</tr>\n<tr>\n  <td align=\"right\"><?php echo $translator->trans(\"File\"); ?>:</td>\n  <td>\n    <input type=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"<?php p(intval(camp_convert_bytes($preferencesService->MaxUploadFileSize))); ?>\" />\n    <input type=\"file\" name=\"f_file\" size=\"32\" class=\"input_file\" /><br />\n    <?php echo $translator->trans(\"Maximum Upload Size\", array(), 'article_files'); p(\" = \" . $preferencesService->MaxUploadFileSize); ?>\n  </td>\n</tr>\n<tr>\n  <td align=\"right\"><?php echo $translator->trans(\"Description\"); ?>:</td>\n  <td>\n    <input type=\"text\" name=\"f_description\" value=\"\" size=\"32\" class=\"input_text\" alt=\"blank\" emsg=\"<?php echo $translator->trans(\"Please enter a description for the file.\", array(), 'article_files'); ?>\" />\n  </td>\n</tr>\n<tr>\n  <td align=\"left\" colspan=\"2\" style=\"padding-left: 15px;\"><?php echo $translator->trans(\"Should this file only be available for this translation of the article, or for all translations?\", array(), 'article_files'); ?></td>\n</tr>\n<tr>\n  <td colspan=\"2\" class=\"indent\"  style=\"padding-left: 30px;\">\n    <input type=\"radio\" name=\"f_language_specific\" value=\"yes\"><?php echo $translator->trans(\"Only this translation\", array(), 'article_files'); ?><br />\n    <input type=\"radio\" name=\"f_language_specific\" value=\"no\" checked /><?php echo $translator->trans(\"All translations\", array(), 'article_files'); ?>\n  </td>\n</tr>\n<tr>\n  <td align=\"left\" colspan=\"2\" style=\"padding-left: 15px;\"><?php echo $translator->trans(\"Do you want this file to open in the user's browser, or to automatically download?\", array(), 'article_files'); ?></td>\n</tr>\n<tr>\n  <td colspan=\"2\" style=\"padding-left: 30px;\">\n    <input type=\"radio\" name=\"f_content_disposition\" value=\"\"><?php echo $translator->trans(\"Open in the browser\", array(), 'article_files'); ?><br />\n    <input type=\"radio\" name=\"f_content_disposition\" value=\"attachment\" checked /><?php echo $translator->trans(\"Automatically download\", array(), 'article_files'); ?>\n  </td>\n</tr>\n<tr>\n  <td colspan=\"2\">\n    <div align=\"center\">\n      <input type=\"hidden\" name=\"f_article_number\" value=\"<?php p($f_article_number); ?>\" />\n      <input type=\"hidden\" name=\"f_language_id\" value=\"<?php p($f_language_id); ?>\" />\n      <input type=\"hidden\" name=\"f_language_selected\" value=\"<?php p($f_language_selected); ?>\" />\n      <input type=\"hidden\" name=\"BackLink\" value=\"<?php  p($_SERVER['REQUEST_URI']); ?>\" />\n      <?php if (is_writable($Campsite['FILE_DIRECTORY'])) { ?>\n      <input type=\"submit\" name=\"Save\" value=\"<?php echo $translator->trans('Save'); ?>\" class=\"button\" />\n      &nbsp;&nbsp;\n      <?php } ?>\n      <input type=\"button\" name=\"Cancel\" value=\"<?php echo $translator->trans('Cancel'); ?>\" class=\"button\" onclick=\"parent.$.fancybox.close();\" />\n    </div>\n  </td>\n</tr>\n</table>\n</form>\n\n<?php if (!$inArchive) { ?>\n</div>\n<div id=\"existing-file\">\n<form action=\"/<?php echo $ADMIN; ?>/articles/files/do_add_existing.php\" method=\"POST\">\n\n<?php\n\n// add hiddens\necho SecurityToken::formParameter();\nforeach (array('f_language_selected', 'f_article_number') as $name) {\n    echo '<input type=\"hidden\" name=\"', $name;\n    echo '\" value=\"', $$name, '\" />', \"\\n\";\n}\n\n// render list\n$list = new MediaList;\n$list->setColVis(FALSE)\n    ->setHidden('content_disposition')\n    ->setHidden('inUse')\n    ->setClickable(FALSE)\n    ->render();\n\n?>\n\n    <div style=\"margin: 8px 0; text-align:center\">\n        <input type=\"submit\" class=\"button\" value=\"<?php echo $translator->trans('Attach'); ?>\" />\n    </div>\n\n    </form>\n</div>\n\n</div><!-- /#tabs -->\n<?php } ?>\n\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/admin-files/articles/get.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/articles/article_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbReplication.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ShortURL.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!$g_user->hasPermission('CommentModerate')) {\n    camp_html_display_error($translator->trans(\"You do not have the right to moderate comments.\", array(), 'articles'));\n    exit;\n}\n// These are optional, depending on whether you are in a section\n// or whether editing an article that doesnt have a location.\n$f_publication_id = Input::Get('f_publication_id', 'int', 0, true);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0, true);\n$f_section_number = Input::Get('f_section_number', 'int', 0, true);\n$f_language_id = Input::Get('f_language_id', 'int', 0, true);\n\n$f_article_number = Input::Get('f_article_number', 'int', 0);\n$f_unlock = Input::Get('f_unlock', 'string', false, true);\n\n// $f_edit_mode can be \"view\" or \"edit\"\n$f_edit_mode = Input::Get('f_edit_mode', 'string', 'edit', true);\n\n// Whether to show comments at the bottom of the article\n// (you may not want to show them to speed up your loading time)\n// Selected language of the article\n$f_language_selected = (int) camp_session_get('f_language_selected', 0);\n\n// Fetch article\n$articleObj = new Article($f_language_selected, $f_article_number);\nif (!$articleObj->exists()) {\n    camp_html_display_error($translator->trans('No such article.', array(), 'articles'));\n    exit;\n}\n\n//getArticleAuthors()\n$articleInfo = array();\n$articleData = $articleObj->getArticleData();\n// Get article type fields.\n$dbColumns = $articleData->getUserDefinedColumns(false, true);\nforeach ($dbColumns as $dbColumn) {\n    if ($dbColumn->getType() == ArticleTypeField::TYPE_SWITCH) {\n        $value = $articleData->getProperty($dbColumn->getName()) ? $translator->trans('On', array(), 'articles') : $translator->trans('Off', array(), 'articles');\n        $articleInfo[htmlspecialchars($dbColumn->getDisplayName($articleObj->getLanguageId()))] = $value;\n    } else {\n        $articleInfo[htmlspecialchars($dbColumn->getDisplayName($articleObj->getLanguageId()))] = $articleData->getProperty($dbColumn->getName());\n    }\n}\n$articleInfo[$translator->trans('Title', array(), 'articles')] = $articleObj->getTitle();         // THIS IS REALLY BAD, NEVER LOCALIZE INTERNALLY\n$articleInfo[$translator->trans('Date')] = $articleObj->getCreationDate();   // But I don't know what possibly depends on this so we leave it for now\n$articleInfo['title'] = $articleObj->getTitle();\n$articleInfo['date'] = $articleObj->getCreationDate();\n$authors = ArticleAuthor::GetAuthorsByArticle($articleObj->getArticleNumber(), $articleObj->getLanguageId());\n$authorsNames = array();\nforeach ($authors as $author) {\n    $authorsNames[] = $author->getName();\n}\n\n$articleInfo['authors'] = $authorsNames;\n$articleInfo['authorsLabel'] = $translator->trans('Authors', array(), 'articles');\n\necho $this->view->json($articleInfo);\n"
  },
  {
    "path": "newscoop/admin-files/articles/images/add.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ImageSearch.php');\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/articles/article_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/classes/ArticleImage.php\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/classes/Image.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!$g_user->hasPermission(\"AddImage\")) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to add images\", array(), 'media_archive'), null, true);\n\texit;\n}\n$maxId = Image::GetMaxId();\n$f_publication_id = Input::Get('f_publication_id', 'int', 0);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0);\n$f_section_number = Input::Get('f_section_number', 'int', 0);\n$f_language_id = Input::Get('f_language_id', 'int', 0);\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n$f_article_number = Input::Get('f_article_number', 'int', 0);\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $_SERVER['REQUEST_URI'], true);\n\texit;\n}\n\nif (!is_writable($Campsite['IMAGE_DIRECTORY'])) {\n\tcamp_html_add_msg($translator->trans(\"Unable to add new image.\", array(), 'media_archive'));\n\tcamp_html_add_msg(camp_get_error_message(CAMP_ERROR_WRITE_DIR, $Campsite['IMAGE_DIRECTORY']));\n}\n\n$articleObj = new Article($f_language_selected, $f_article_number);\n$publicationObj = new Publication($f_publication_id);\n$issueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\n$sectionObj = new Section($f_publication_id, $f_issue_number, $f_language_id, $f_section_number);\n\n$ImageTemplateId = ArticleImage::GetUnusedTemplateId($f_article_number);\n\n$q_now = $g_ado_db->GetOne(\"SELECT LEFT(NOW(), 10)\");\n\ninclude_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/javascript_common.php\");\n\ncamp_html_display_msgs();\n\n?>\n\n<form method=\"POST\" action=\"/<?php echo $ADMIN; ?>/media-archive/do_upload.php\" enctype=\"multipart/form-data\">\n<?php echo SecurityToken::FormParameter(); ?>\n<input type=\"hidden\" name=\"f_article_edit\" value=\"1\">\n<input type=\"hidden\" name=\"f_publication_id\" value=\"<?php echo($f_publication_id); ?>\">\n<input type=\"hidden\" name=\"f_issue_number\" value=\"<?php echo($f_issue_number); ?>\">\n<input type=\"hidden\" name=\"f_section_number\" value=\"<?php echo($f_section_number); ?>\">\n<input type=\"hidden\" name=\"f_language_id\" value=\"<?php echo($f_language_id); ?>\">\n<input type=\"hidden\" name=\"f_language_selected\" value=\"<?php echo($f_language_selected); ?>\">\n<input type=\"hidden\" name=\"f_article_number\" value=\"<?php echo($f_article_number); ?>\">\n<input type=\"hidden\" name=\"f_place\" value=\"0\" id=\"f_place\">\n<div id=\"uploader\"></div>\n<div id=\"uploader_error\"></div>\n\n\n<div class=\"plupload-addon-bottom clearfix\">\n  <div class=\"buttons\">\n    <input type=\"submit\" value=\"<?php echo $translator->trans('Attach'); ?>\" name=\"save\" class=\"save-button\">\n    <input type=\"submit\" value=\"<?php echo $translator->trans('Attach & Place', array(), 'article_images'); ?>\" name=\"save\" class=\"save-button\" onClick=\"document.getElementById('f_place').value = 1;\">\n  </div>\n</div>\n\n</form>\n<p>&nbsp;</p>\n<script type=\"text/javascript\" src=\"../../../js/jquery/jquery-1.7.1.min.js\"></script>\n<script type=\"text/javascript\" src=\"../../../js/jquery/jquery-ui-1.8.6.custom.min.js\"></script>\n<script type=\"text/javasctipt\" src=\"../../../js/jquery/i18n/jquery.ui.datepicker-' . $this->locale . '.js\"></script>\n<script type=\"text/javascript\" src=\"../../../js/jquery/jquery-ui-timepicker-addon.min.js\"></script>\n<script type=\"text/javascript\" src=\"../../../js/jquery/fg.menu.js\"></script>\n<script type=\"text/javascript\" src=\"../../../js/jquery/jquery.cookie.js\"></script>\n<script type=\"text/javascript\" src=\"../../../js/jquery/jquery.dataTables.min.js\"></script>\n<script type=\"text/javascript\" src=\"../../../js/jquery/ColVis.min.js\"></script>\n<script type=\"text/javascript\" src=\"../../../js/jquery/jquery.widgets.js\"></script>\n<script type=\"text/javascript\" src=\"../../../js/jquery/fancybox/jquery.fancybox-1.3.4.pack.js\"></script>\n<script type=\"text/javascript\" src=\"../../../js/admin.js\"></script>\n\n<link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"../../../js/plupload/js/jquery.plupload.queue/css/jquery.plupload.queue.css\" />\n\n<?php $this->view->plupload('', array(\n    'url' => '../../media-archive/uploader.php',\n    'filters' => array(\n        $translator->trans('Image files', array(), 'article_images') => \"jpg,gif,png\",\n    ),\n)); ?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/images/do_link.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Image.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/User.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n$f_article_number = Input::Get('f_article_number', 'int', 0);\n$f_image_id = Input::Get('f_image_id', 'int', 0);\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), null, true);\n\texit;\n}\n\n$articleObj = new Article($f_language_selected, $f_article_number);\nif (!$articleObj->exists()) {\n\tcamp_html_display_error($translator->trans('Article does not exist.'), null, true);\n\texit;\n}\n\n$imageObj = new Image($f_image_id);\nif (!$imageObj->exists()) {\n\tcamp_html_display_error($translator->trans('Image does not exist.'), null, true);\n\texit;\n}\n\n// This file can only be accessed if the user has the right to change articles\n// or the user created this article and it hasnt been published yet.\nif (!$g_user->hasPermission('AttachImageToArticle')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to attach images to articles.\", array(), 'article_images'), null, true);\n\texit;\n}\n\nArticleImage::AddImageToArticle($f_image_id, $f_article_number);\n\n?>\n<script>\ntry {\n    parent.$.fancybox.reload = true;\n    parent.$.fancybox.message = \"<?php echo $translator->trans(\"Image $1 added.\", array('$1' => addslashes($imageObj->getDescription())), 'article_images'); ?>\";\n    parent.$.fancybox.close();\n} catch (e) {}\n</script>\n"
  },
  {
    "path": "newscoop/admin-files/articles/images/do_unlink.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Image.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/User.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n$f_language_id = Input::Get('f_language_id', 'int', 0);\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n$f_article_number = Input::Get('f_article_number', 'int', 0);\n$f_image_id = Input::Get('f_image_id', 'int', 0);\n$f_image_template_id = Input::Get('f_image_template_id', 'int', 0);\n\n// Check input\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), null, true);\n\texit;\n}\n\n// This file can only be accessed if the user has the right to change articles\n// or the user created this article and it hasnt been published yet.\nif (!$g_user->hasPermission('AttachImageToArticle')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to attach images to articles.\", array(), 'article_images'), null, true);\n\texit;\n}\n\n$articleObj = new Article($f_language_selected, $f_article_number);\n$imageObj = new Image($f_image_id);\n$articleImage = new ArticleImage($f_article_number, $f_image_id, $f_image_template_id);\n$articleImage->delete();\n\nZend_Registry::get('container')->getService('image.rendition')->unsetArticleImageRenditions($f_article_number, $f_image_id);\n\ncamp_html_add_msg($translator->trans('The image has been removed from the article.', array(), 'article_images'), \"ok\");\ncamp_html_goto_page(camp_html_article_url($articleObj, $f_language_id, 'edit.php'));\n?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/images/popup.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/include/campsite_constants.php');\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/articles/article_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Image.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ImageSearch.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!$g_user->hasPermission(\"AttachImageToArticle\")) {\n\t$errorStr = $translator->trans('You do not have the right to attach images to articles.', array(), 'article_images');\n\tcamp_html_display_error($errorStr, null, true);\n\texit;\n}\n\n$f_language_id = Input::Get('f_language_id', 'int', 0);\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n$f_article_number = Input::Get('f_article_number', 'int', 0);\n$f_image_attach_mode = camp_session_get('f_image_attach_mode', 'new');\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $_SERVER['REQUEST_URI'], true);\n\texit;\n}\n\n$articleObj = new Article($f_language_selected, $f_article_number);\n?>\n<html>\n<head>\n  <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n  <meta http-equiv=\"Expires\" content=\"now\" />\n  <link rel=\"shortcut icon\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/images/7773658c3ccbf03954b4dacb029b2229.ico\" />\n  <link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/admin_stylesheet_new.css\" />\n  <link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/admin_stylesheet.css\" />\n  <title><?php echo $translator->trans(\"Attach Image To Article\", array(), 'article_images'); ?></title>\n</head>\n<body>\n<?php camp_html_display_msgs(); ?> \n<table style=\"margin-top: 10px; margin-left: 5px;\" cellpadding=\"0\" cellspacing=\"0\">\n<tr>\n\t<?php if ($g_user->hasPermission('AddImage')) { ?>\n\t<td style=\"padding: 3px; background-color: #EEE; border-top: 1px solid #8baed1; border-left: 1px solid #8baed1; <?php if ($f_image_attach_mode != \"new\") { ?>border-bottom: 1px solid #8baed1;<?php } ?>\"><a href=\"<?php echo camp_html_article_url($articleObj, $f_language_id, \"images/popup.php\", \"\", \"&f_image_attach_mode=new\"); ?>\"><img src=\"<?php p($Campsite['ADMIN_IMAGE_BASE_URL']); ?>/add.png\" border=\"0\"><b><?php echo $translator->trans(\"Attach New Image\", array(), 'article_images'); ?></b></a></td>\n\t<?php } ?>\n\n\t<td style=\"padding: 3px; background-color: #EEE; border-top: 1px solid #8baed1; border-right: 1px solid #8baed1; border-left: 1px solid #8baed1; <?php if ($f_image_attach_mode != \"existing\") { ?>border-bottom: 1px solid #8baed1;<?php } ?>\"><a href=\"<?php echo camp_html_article_url($articleObj, $f_language_id, \"images/popup.php\", \"\", \"&f_image_attach_mode=existing\"); ?>\"><img src=\"<?php p($Campsite['ADMIN_IMAGE_BASE_URL']); ?>/add.png\" border=\"0\"><b><?php echo $translator->trans(\"Attach Existing Image\", array(), 'article_images'); ?></b></a></td>\n</tr>\n</table>\n\n<?php\nif ($f_image_attach_mode == \"existing\") {\n    include(\"search.php\");\n} else {\n    include(\"add.php\");\n}?>\n\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/admin-files/articles/images/search.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/articles/article_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Image.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ImageSearch.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/SimplePager.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$f_order_by = camp_session_get('f_order_by', 'id');\n$f_order_direction = camp_session_get('f_order_direction', 'ASC');\n$f_image_offset = camp_session_get('f_image_offset', 0);\n$f_search_string = camp_session_get('f_search_string', '');\n$f_items_per_page = camp_session_get('f_items_per_page', 4);\n$f_source_filter_out = !isset($_REQUEST['f_source_all']) ? 'newsfeed' : false;\n\nif ($f_items_per_page < 4) {\n\t$f_items_per_page = 4;\n}\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $_SERVER['REQUEST_URI'], true);\n\texit;\n}\n\n// Build the links for ordering search results\n$OrderSign = '';\nif ($f_order_direction == 'DESC') {\n\t$ReverseOrderDirection = \"ASC\";\n\t$OrderSign = \"<img src=\\\"\".$Campsite[\"ADMIN_IMAGE_BASE_URL\"].\"/descending.png\\\" border=\\\"0\\\">\";\n} else {\n\t$ReverseOrderDirection = \"DESC\";\n\t$OrderSign = \"<img src=\\\"\".$Campsite[\"ADMIN_IMAGE_BASE_URL\"].\"/ascending.png\\\" border=\\\"0\\\">\";\n}\n\n$TotalImages = Image::GetTotalImages();\n$imageSearch = new ImageSearch($f_search_string, $f_order_by, $f_order_direction, $f_image_offset, $f_items_per_page);\nif ($f_source_filter_out) {\n    $imageSearch->setFilter( \"Source\", $f_source_filter_out, true );\n}\n$imageSearch->run();\n$imageData = $imageSearch->getImages();\n$NumImagesFound = $imageSearch->getNumImagesFound();\n\n//$orderDirectionUrl = camp_html_article_url($articleObj, $f_language_id, 'images/popup.php');\n\n?>\n\n    <form method=\"POST\" action=\"/<?php echo $ADMIN; ?>/articles/images/popup.php\" id=\"searchform\">\n<input type=\"hidden\" name=\"f_order_direction\" value=\"<?php echo $f_order_direction; ?>\">\n<input type=\"hidden\" name=\"f_image_offset\" value=\"0\">\n<input type=\"hidden\" name=\"f_language_id\" value=\"<?php p($f_language_id); ?>\">\n<input type=\"hidden\" name=\"f_language_selected\" value=\"<?php p($f_language_selected); ?>\">\n<input type=\"hidden\" name=\"f_article_number\" value=\"<?php p($f_article_number); ?>\">\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" class=\"box_table\">\n<tr>\n\t<td><input type=\"submit\" name=\"submit_button\" value=\"Search\" class=\"button\"></td>\n\t<td><input type=\"text\" name=\"f_search_string\" value=\"<?php echo $f_search_string; ?>\" class=\"input_text\" style=\"width: 150px;\"></td>\n\t<td>\n\t\t<table cellpadding=\"0\" cellspacing=\"0\">\n\t\t<tr>\n\t\t\t<td>Order by:</td>\n\t\t\t<td>\n\t\t\t\t<select name=\"f_order_by\" class=\"input_select\" onchange=\"this.form.submit();\">\n\t\t\t\t<?PHP\n\t\t\t\tcamp_html_select_option('id', $f_order_by, $translator->trans(\"Most Recently Added\"));\n\t\t\t\tcamp_html_select_option('last_modified', $f_order_by, $translator->trans(\"Most Recently Modified\"));\n\t\t\t\tcamp_html_select_option('description', $f_order_by, $translator->trans(\"Description\"));\n\t\t\t\tcamp_html_select_option('photographer', $f_order_by, $translator->trans(\"Photographer\"));\n\t\t\t\tcamp_html_select_option('place', $f_order_by, $translator->trans(\"Place\"));\n\t\t\t\tcamp_html_select_option('date', $f_order_by, $translator->trans(\"Date\"));\n\t\t\t\tcamp_html_select_option('inuse', $f_order_by, $translator->trans(\"In use\"));\n\t\t\t\t?>\n\t\t\t\t</select>\n\t\t\t</td>\n\t\t\t<td>\n                <a href=\"/<?php echo $ADMIN; ?>/articles/images/popup.php?f_language_id=<?php p($f_language_id); ?>&f_language_selected=<?php p($f_language_selected); ?>&f_article_number=<?php p($f_article_number); ?>&f_order_direction=<?php p($ReverseOrderDirection); ?>\"><?php p($OrderSign); ?></a>\n\t\t\t</td>\n\t\t</tr>\n\t\t</table>\n\t</td>\n\t<td><?php echo $translator->trans(\"Items per page\"); ?>: <input type=\"text\" name=\"f_items_per_page\" value=\"<?php p($f_items_per_page); ?>\" class=\"input_text\" size=\"4\"></td>\n</tr>\n<tr>\n\t<td colspan=\"4\">\n\t\t<input name=\"f_source_all\" id=\"f_source_all\" value=\"newsfeed\" type=\"checkbox\"\n\t\t\t<?php if (!$f_source_filter_out) : ?>checked=\"checked\"<?php endif; ?>\n\t\t\tonclick=\"console.log(this.checked); document.getElementById('searchform').submit()\" />\n\t    <label for=\"f_source_all\"><?php echo $translator->trans('Show all', array(), 'article_images'); ?></label>\n\t</td>\n</tr>\n</table>\n</form>\n\n<?php\nif (count($imageData) > 0) {\n    $pagerUrl = camp_html_article_url($articleObj, $f_language_id, \"images/popup.php\").\"&\".\n        (!$f_source_filter_out ? \"f_source_all=newsfeed&\" : \"\");\n    $pager = new SimplePager($NumImagesFound, $f_items_per_page, \"f_image_offset\", $pagerUrl);\n\n?>\n<table class=\"action_buttons\">\n<tr><td><?php     echo $pager->render(); ?></td></tr>\n</table>\n<TABLE BORDER=\"0\" CELLSPACING=\"1\" CELLPADDING=\"6\" class=\"table_list\">\n<TR class=\"table_list_header\">\n    <?php if ($articleObj->userCanModify($g_user)) { ?>\n    <TD ALIGN=\"center\" VALIGN=\"top\" style=\"padding: 3px;\"><B><?php p($translator->trans(\"Attach\")); ?></B></TD>\n\t<?php } ?>\n    <TD ALIGN=\"LEFT\" VALIGN=\"TOP\">\n      <?php echo $translator->trans(\"Thumbnail\"); ?>\n    </TD>\n    <TD ALIGN=\"LEFT\" VALIGN=\"TOP\">\n      <?php echo $translator->trans(\"Description\"); ?>\n    </TD>\n    <TD ALIGN=\"LEFT\" VALIGN=\"TOP\">\n      <?php echo $translator->trans(\"Photographer\"); ?>\n    </TD>\n    <TD ALIGN=\"LEFT\" VALIGN=\"TOP\">\n      <?php echo $translator->trans(\"Place\"); ?>\n    </TD>\n    <TD ALIGN=\"LEFT\" VALIGN=\"TOP\">\n      <?php echo $translator->trans(\"Date\").'<BR><SMALL>(yyyy-mm-dd)</SMALL>'; ?>\n    </TD>\n    <TD ALIGN=\"center\" VALIGN=\"top\" style=\"padding: 3px;\" nowrap>\n      <?php echo $translator->trans(\"In use\"); ?>\n    </TD>\n</TR>\n<?php\n$color = 0;\nforeach ($imageData as $image) {\n    ?>\n    <TR <?php  if ($color) { $color=0; ?>class=\"list_row_even\"<?php  } else { $color=1; ?>class=\"list_row_odd\"<?php  } ?>>\n        <?php\n        if ($articleObj->userCanModify($g_user)) { ?>\n            <TD ALIGN=\"CENTER\">\n            <form method=\"POST\" action=\"/<?php echo $ADMIN; ?>/articles/images/do_link.php\">\n\t\t\t<?php echo SecurityToken::FormParameter(); ?>\n\t\t\t<input type=\"hidden\" name=\"f_language_id\" value=\"<?php p($f_language_id); ?>\">\n\t\t\t<input type=\"hidden\" name=\"f_language_selected\" value=\"<?php p($f_language_selected); ?>\">\n\t\t\t<input type=\"hidden\" name=\"f_article_number\" value=\"<?php p($f_article_number); ?>\">\n    \t\t<input type=\"hidden\" name=\"f_image_id\" value=\"<?php echo $image['id']; ?>\">\n\t\t\t\t<input type=\"image\" src=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/add.png\">\n            </form>\n          \t</TD>\n        \t<?php\n     \t}\n     \telse {\n     \t\t?>\n        \t<TD ALIGN=\"CENTER\">&nbsp;</TD>\n     \t\t<?php\n     \t}\n        ?>\n        <TD ALIGN=\"center\">\n            <A HREF=\"<?php echo\n            camp_html_article_url($articleObj, $f_language_id, \"images/view.php\", camp_html_article_url($articleObj, $f_language_id, \"images/popup.php\"))\n            .'&f_image_id='.$image['id']; ?>\">\n              <img src=\"<?php echo $image['thumbnail_url']; ?>\" border=\"0\"><br>\n              <?php echo $image['width'].'x'.$image['height']; ?>\n            </a>\n        </TD>\n        <TD style=\"padding-left: 5px;\">\n            <A HREF=\"<?php echo camp_html_article_url($articleObj, $f_language_id, \"images/view.php\", camp_html_article_url($articleObj, $f_language_id, \"images/popup.php\"))\n            .'&f_image_id='.$image['id']; ?>\"><?php echo htmlspecialchars($image['description']); ?></A>\n        </TD>\n        <TD style=\"padding-left: 5px;\">\n            <?php echo htmlspecialchars($image['photographer']); ?>&nbsp;\n        </TD>\n        <TD style=\"padding-left: 5px;\">\n            <?php echo htmlspecialchars($image['place']); ?>&nbsp;\n        </TD>\n        <TD style=\"padding-left: 5px;\">\n            <?php echo htmlspecialchars($image['date']); ?>&nbsp;\n        </TD>\n        <TD align=\"center\">\n            <?php echo htmlspecialchars($image['in_use']); ?>&nbsp;\n        </TD>\n    </TR>\n<?php\n}\n\n?>\n<tr>\n\t<td colspan=\"5\" nowrap>\n\t<?php echo $translator->trans('$1 images found', array('$1' => $NumImagesFound), 'article_images'); ?></TD>\n</tr>\n</table>\n<table class=\"action_buttons\">\n<TR>\n    <TD>\n    <?php\n    echo $pager->render();\n    ?></td>\n</TR>\n</TABLE>\n<?php\n}\n\n//camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/images/view.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/articles/article_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Image.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$f_backlink = Input::Get('Back', 'string', '');\n$f_image_id = Input::Get('f_image_id', 'int', 0);\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $_SERVER['REQUEST_URI'], true);\n\texit;\n}\n\n$imageObj = new Image($f_image_id);\n\n// Add extra breadcrumb for image list.\n?>\n<P>\n<div class=\"indent\">\n<a href=\"<?php p($f_backlink); ?>\"><?php echo $translator->trans(\"Back\"); ?>\n<p>\n<IMG SRC=\"<?php echo $imageObj->getImageUrl(); ?>\" BORDER=\"0\" ALT=\"<?php echo htmlspecialchars($imageObj->getDescription()); ?>\">\n</a>\n</div>\n<p>\n"
  },
  {
    "path": "newscoop/admin-files/articles/index.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/article_common.php\");\nrequire_once($GLOBALS['g_campsiteDir']. '/classes/DbObjectArray.php');\nrequire_once($GLOBALS['g_campsiteDir']. '/classes/ArticlePublish.php');\nrequire_once($GLOBALS['g_campsiteDir']. '/classes/ArticleImage.php');\nrequire_once($GLOBALS['g_campsiteDir']. '/classes/ArticleTopic.php');\nrequire_once($GLOBALS['g_campsiteDir']. '/classes/SimplePager.php');\n\nrequire_once LIBS_DIR . '/ArticleList/ArticleList.php';\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n$f_publication_id = Input::Get('f_publication_id', 'int', 0);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0);\n$f_section_number = Input::Get('f_section_number', 'int', 0);\n$f_language_id = Input::Get('f_language_id', 'int', 0);\nif (isset($_SESSION['f_language_selected'])) {\n\t$f_old_language_selected = (int)$_SESSION['f_language_selected'];\n} else {\n\t$f_old_language_selected = 0;\n}\n$f_language_selected = (int)camp_session_get('f_language_selected', 0);\n$offsetVarName = \"f_article_offset_\".$f_publication_id.\"_\".$f_issue_number.\"_\".$f_language_id.\"_\".$f_section_number;\n$f_article_offset = camp_session_get($offsetVarName, 0);\n$ArticlesPerPage = 15;\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $_SERVER['REQUEST_URI']);\n\texit;\n}\n\nif ($f_old_language_selected != $f_language_selected) {\n\tcamp_session_set('f_article_offset', 0);\n\t$f_article_offset = 0;\n}\n\nif ($f_article_offset < 0) {\n\t$f_article_offset = 0;\n}\n\n$sectionObj = new Section($f_publication_id, $f_issue_number, $f_language_id, $f_section_number);\nif (!$sectionObj->exists()) {\n\tcamp_html_display_error($translator->trans('Section does not exist.'));\n\texit;\n}\n\n$publicationObj = new Publication($f_publication_id);\nif (!$publicationObj->exists()) {\n\tcamp_html_display_error($translator->trans('Publication does not exist.'));\n\texit;\n}\n\n$issueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\nif (!$issueObj->exists()) {\n\tcamp_html_display_error($translator->trans('Issue does not exist.'));\n\texit;\n}\n\n$allArticleLanguages = $issueObj->getLanguages();\nif (!in_array($f_language_selected, DbObjectArray::GetColumn($allArticleLanguages, 'Id'))) {\n\t$f_language_selected = 0;\n}\n\n$sqlOptions = array(\"LIMIT\" => array(\"START\" => $f_article_offset,\n\t\t\t\t\t\t\t\t\t \"MAX_ROWS\" => $ArticlesPerPage));\nif ($f_language_selected) {\n\t// Only show a specific language.\n\t$totalArticles = Article::GetArticles($f_publication_id,\n\t\t\t\t\t\t\t\t\t\t  $f_issue_number,\n\t\t\t\t\t\t\t\t\t\t  $f_section_number,\n\t\t\t\t\t\t\t\t\t\t  $f_language_selected,\n\t\t\t\t\t\t\t\t\t\t  null,\n\t\t\t\t\t\t\t\t\t\t  true);\n\t$allArticles = Article::GetArticles($f_publication_id,\n\t\t\t\t\t\t\t\t\t\t$f_issue_number,\n\t\t\t\t\t\t\t\t\t\t$f_section_number,\n\t\t\t\t\t\t\t\t\t\t$f_language_selected,\n\t\t\t\t\t\t\t\t\t\t$sqlOptions);\n\t$numUniqueArticles = $totalArticles;\n\t$numUniqueArticlesDisplayed = count($allArticles);\n} else {\n\t// Show articles in all languages.\n\t$totalArticles = Article::GetArticles($f_publication_id,\n\t\t\t\t\t\t\t\t\t\t  $f_issue_number,\n\t\t\t\t\t\t\t\t\t\t  $f_section_number,\n\t\t\t\t\t\t\t\t\t\t  null,\n\t\t\t\t\t\t\t\t\t\t  null,\n\t\t\t\t\t\t\t\t\t\t  true);\n\t$allArticles = Article::GetArticlesGrouped($f_publication_id,\n\t\t\t\t\t\t\t\t\t\t\t   $f_issue_number,\n\t\t\t\t\t\t\t\t\t\t\t   $f_section_number,\n\t\t\t\t\t\t\t\t\t\t\t   null,\n\t\t\t\t\t\t\t\t\t\t\t   $f_language_id,\n\t\t\t\t\t\t\t\t\t\t\t   $sqlOptions);\n\t$numUniqueArticles = Article::GetArticlesGrouped($f_publication_id,\n\t\t\t\t\t\t\t\t\t\t\t\t\t $f_issue_number,\n\t\t\t\t\t\t\t\t\t\t\t\t\t $f_section_number,\n\t\t\t\t\t\t\t\t\t\t\t\t\t null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t true);\n\t$numUniqueArticlesDisplayed = count(array_unique(DbObjectArray::GetColumn($allArticles, 'Number')));\n}\n$numArticlesThisPage = count($allArticles);\n\n$previousArticleNumber = 0;\n\n$pagerUrl = \"index.php?f_publication_id=\".$f_publication_id\n\t.\"&f_issue_number=\".$f_issue_number\n\t.\"&f_section_number=\".$f_section_number\n\t.\"&f_language_id=\".$f_language_id\n\t.\"&f_language_selected=\".$f_language_selected.\"&\";\n$pager = new SimplePager($numUniqueArticles, $ArticlesPerPage, $offsetVarName, $pagerUrl);\n\n$topArray = array('Pub' => $publicationObj, 'Issue' => $issueObj,\n\t\t\t\t  'Section' => $sectionObj);\ncamp_html_content_top($translator->trans('Article List', array(), 'articles') . ': ' . $this->view->escape($sectionObj->getName()), $topArray);\n\n$controller->view->headTitle($translator->trans('Article List', array(), 'articles').': '.$this->view->escape($sectionObj->getName()).' - Newscoop Admin', 'SET');\n?>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\" class=\"action_buttons\" style=\"padding-top: 5px;\">\n<TR>\n\t<TD><A HREF=\"/<?php echo $ADMIN; ?>/sections/?Pub=<?php p($f_publication_id); ?>&Issue=<?php p($f_issue_number); ?>&Language=<?php p($f_language_id); ?>\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/left_arrow.png\" BORDER=\"0\"></A></TD>\n\t<TD><A HREF=\"/<?php echo $ADMIN; ?>/sections/?Pub=<?php p($f_publication_id); ?>&Issue=<?php p($f_issue_number); ?>&Language=<?php p($f_language_id); ?>\"><B><?php echo $translator->trans(\"Section List\"); ?></B></A></TD>\n\t<?php if ($g_user->hasPermission('AddArticle')) { ?>\n    <TD style=\"padding-left: 20px;\"><A HREF=\"/<?php echo $ADMIN; ?>/articles/add.php?f_publication_id=<?php p($f_publication_id); ?>&f_issue_number=<?php p($f_issue_number); ?>&f_section_number=<?php p($f_section_number); ?>&f_language_id=<?php p($f_language_id); ?>\" ><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/add.png\" BORDER=\"0\"></A></TD>\n    <TD><A HREF=\"/<?php echo $ADMIN; ?>/articles/add.php?f_publication_id=<?php p($f_publication_id); ?>&f_issue_number=<?php p($f_issue_number); ?>&f_section_number=<?php p($f_section_number); ?>&f_language_id=<?php p($f_language_id); ?>\" ><B><?php echo $translator->trans(\"Add new article\"); ?></B></A></TD>\n\t<?php  } ?>\n</tr>\n</TABLE>\n<?php\n    $articlelist = new ArticleList();\n\n    $articlelist->setPublication($f_publication_id);\n    $articlelist->setIssue($f_issue_number);\n    $articlelist->setSection($f_section_number);\n    $articlelist->setLanguage($f_language_id);\n\n    $articlelist->setColVis(TRUE);\n    if ($g_user->hasPermission('Publish')) {\n    \t$articlelist->setOrder(TRUE);\n    }\n    $articlelist->setSearch(TRUE);\n\n    if ($f_section_number) {\n        $articlelist->setHidden('Section');\n    }\n\n    $articlelist->renderActions();\n    $articlelist->render();\n?>\n\n<?php camp_html_copyright_notice(); ?>\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/admin-files/articles/la_import.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/articles/article_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/javascript_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/classes/ArticleType.php\");\n\nglobal $Campsite;\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif ( isset($_POST['f_save']) && !SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nif (!$g_user->hasPermission('ManageIssue') || !$g_user->hasPermission('AddArticle')) {\n    camp_html_display_error($translator->trans(\"You do not have the right to import XML archives.\", array(), 'articles'));\n    exit;\n}\n\n// Whether form was submitted\n$f_save = Input::Get('f_save', 'string', '', true);\n\n// The article location dropdowns cause this page to reload,\n// so we need to preserve the state with each refresh.\n$f_article_type = Input::Get('f_article_type', 'string', '', true);\n$f_article_language_id = Input::Get('f_article_language_id', 'int', 0, true);\n\n// For choosing the article location.\n$f_publication_id = Input::Get('f_publication_id', 'int', 0, true);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0, true);\n$f_section_number = Input::Get('f_section_number', 'int', 0, true);\n\n// Whether articles must be overwritten\n$f_overwrite_articles = Input::Get('f_overwrite_articles', 'string', '', true);\n\n// Build the back link\n$backlink = $Campsite['WEBSITE_URL'] . DIR_SEP . 'admin' . DIR_SEP . 'articles' . DIR_SEP . basename(__FILE__);\n\nif ($f_save) {\n    if (isset($_FILES[\"f_input_file\"])) {\n        switch($_FILES[\"f_input_file\"]['error']) {\n            case 0: // UPLOAD_ERR_OK\n                break;\n            case 1: // UPLOAD_ERR_INI_SIZE\n            case 2: // UPLOAD_ERR_FORM_SIZE\n                camp_html_display_error($translator->trans(\"The file exceeds the allowed max file size.\", array(), 'articles'), null, true);\n                break;\n            case 3: // UPLOAD_ERR_PARTIAL\n                camp_html_display_error($translator->trans(\"The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini\", array(), 'articles'), null, true);\n                break;\n            case 4: // UPLOAD_ERR_NO_FILE\n                camp_html_display_error($translator->trans(\"You must select a file to upload.\", array(), 'articles'), null, true);\n                break;\n            case 6: // UPLOAD_ERR_NO_TMP_DIR\n            case 7: // UPLOAD_ERR_CANT_WRITE\n                camp_html_display_error($translator->trans(\"There was a problem uploading the file.\", array(), 'articles'), null, true);\n                break;\n        }\n    } else {\n        camp_html_display_error($translator->trans(\"The file exceeds the allowed max file size.\", array(), 'articles'), null, true);\n    }\n}\n\nif (!Input::IsValid()) {\n    camp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $backlink);\n    exit;\n}\n\n$articleTypes = ArticleType::GetArticleTypes();\n$allPublications = Publication::GetPublications();\n$allLanguages = Language::GetLanguages(null, null, null, array(), array(), true);\n\n$isValidXMLFile = false;\nif ($f_save && !empty($_FILES['f_input_file'])) {\n    if (file_exists($_FILES['f_input_file']['tmp_name'])) {\n        if (!($buffer = @file_get_contents($_FILES['f_input_file']['tmp_name']))) {\n\t    camp_html_display_error($translator->trans(\"File could not be read.\", array(), 'articles'), $backlink);\n\t    exit;\n\t}\n\n    try {\n        $xml = new SimpleXMLElement($buffer);\n        if (!is_object($xml)) {\n            throw new Exception();\n        }\n\t} catch (Exception $e) {\n\t    camp_html_display_error($translator->trans(\"File is not a valid XML file.\", array(), 'articles'), $backlink);\n\t    exit;\n    }\n\n\tif (!isset($xml->article->name)) {\n\t    camp_html_add_msg($translator->trans(\"Bad format in XML file.\", array(), 'articles'), $backlink);\n\t}\n\n\t$isValidXMLFile = true;\n\t@unlink($_FILES['f_input_file']['tmp_name']);\n    } else {\n        camp_html_display_error($translator->trans(\"File does not exist.\", array(), 'articles'), $backlink);\n        exit;\n    }\n} elseif ($f_save) {\n    camp_html_add_msg($translator->trans(\"File could not be uploaded.\", array(), 'articles'), $backlink);\n}\n\n\nif ($isValidXMLFile) {\n    if ($f_publication_id > 0) {\n        $publicationObj = new Publication($f_publication_id);\n        if (!$publicationObj->exists()) {\n            camp_html_display_error($translator->trans('Publication does not exist.'), $backlink);\n            exit;\n        }\n    \tif ($f_issue_number > 0) {\n    \t    $issueObj = new Issue($f_publication_id, $f_article_language_id, $f_issue_number);\n    \t    if (!$issueObj->exists()) {\n    \t        camp_html_display_error($translator->trans('Issue does not exist.'), $backlink);\n                exit;\n    \t    }\n\n    \t    if ($f_section_number > 0) {\n    \t        $sectionObj = new Section($f_publication_id, $f_issue_number, $f_article_language_id, $f_section_number);\n                if (!$sectionObj->exists()) {\n                    camp_html_display_error($translator->trans('Section does not exist.'), $backlink);\n                    exit;\n                }\n    \t    }\n    \t}\n    }\n\n    // Loads article data from XML file into database\n    $xmlArticle = array();\n    $articleFields = array();\n    $errorMessages = array();\n    $articleCount = 0;\n    foreach ($xml->article as $article) {\n        $existingArticles = Article::GetByName((string) $article->name,\n\t\t\t\t\t       $f_publication_id,\n\t\t\t\t\t       $f_issue_number,\n\t\t\t\t\t       $f_section_number,\n\t\t\t\t\t       $f_article_language_id, true);\n\t// There is already an article with same name and language\n\tif (count($existingArticles) > 0) {\n\t    $existingArticle = array_pop($existingArticles);\n\t    // Is overwrite articles false? then skip and process next article\n\t    if ($f_overwrite_articles == 'N') {\n\t        $errorMessages[][] = $translator->trans('Article <i>$1</i> already exists, and was not overwritten.<br />',array('$1' => $article->name), 'articles');\n\t        continue;\n\t    }\n\t}\n\n\tif (isset($existingArticle) && $existingArticle->exists()) {\n\t    $articleObj = $existingArticle;\n\t} else {\n\t    $articleObj = new Article($f_article_language_id);\n\t    $articleName = (string) $article->name;\n\t    $articleObj->create($f_article_type, $articleName, $f_publication_id, $f_issue_number, $f_section_number);\n\t}\n\n\t// Checks whether article was successfully created\n\tif (!$articleObj->exists()) {\n\t    camp_html_display_error($translator->trans('Article could not be created.', array(), 'articles'), $backlink);\n\t    exit;\n\t}\n\t$articleFields['name'] = true;\n\n\t// Number of articles successfully created in database\n\t$articleCount++;\n\t$errorMessages[$articleCount][] = '<p><strong>'\n\t    . htmlspecialchars((string) $article->name) . '</strong></p>';\n\t$xmlArticle = get_object_vars($article);\n\n\t$articleTypeObj = $articleObj->getArticleData();\n\t$dbColumns = $articleTypeObj->getUserDefinedColumns(false, true);\n\t$articleTypeFields = array();\n\tforeach ($dbColumns as $dbColumn) {\n\t    $fieldName = $dbColumn->getPrintName();\n\t    $field = strtolower($fieldName);\n\t    if (!isset($article->$field)) {\n\t        $errorMessages[$articleCount][] = 'The article type field \"<i>'\n\t\t    .$fieldName\n\t\t    .'</i>\" does not match any field from XML input file.<br />';\n\t\tcontinue;\n\t    }\n\n\t    $articleFields[$field] = true;\n\n\t    $articleTypeObj->setProperty($dbColumn->getName(), (string) $article->$field);\n\t}\n\n\t// Updates the article creator and author\n    $articleObj->setCreatorId($g_user->getUserId());\n    $isAuthorFromCreator = FALSE;\n\tif (isset($article->author) && !empty($article->author)) {\n\t    $authorName = (string) $article->author;\n\t} else {\n\t    $authorName = (string) $g_user->getRealName();\n\t    $isAuthorFromCreator = TRUE;\n\t}\n    $authorObj = new Author($authorName);\n    if (!$authorObj->exists()) {\n        $authorData = Author::ReadName($authorName);\n        if ($isAuthorFromCreator) {\n            $authorData['email'] = $g_user->getEmail();\n        }\n        $authorObj->create($authorData);\n    }\n    if ($authorObj->exists()) {\n        $articleObj->setAuthor($authorObj);\n        $articleFields['author'] = true;\n    }\n\n\t// Updates the article\n\tif (isset($article->keywords) && !empty($article->keywords)) {\n\t    $articleObj->setKeywords((string) $article->keywords);\n\t}\n\t$articleFields['keywords'] = true;\n\n\tforeach($xmlArticle as $articleFieldName => $articleFieldValue) {\n\t    if (!array_key_exists($articleFieldName, $articleFields)) {\n\t        $errorMessages[$articleCount][] = '\"' . $articleFieldName\n\t\t    .'\" field in XML file '\n\t\t    . 'was not loaded into database as there is not any '\n\t\t    . 'article type field matching it.<br />';\n\t    }\n\t}\n    }\n\n    camp_html_add_msg($translator->trans(\"$1 articles successfully imported.\", array('$1' => $articleCount), 'articles'), \"ok\");\n}\n\n\n// Gets all issues\n$allIssues = array();\nif ($f_publication_id > 0) {\n    $allIssues = Issue::GetIssues($f_publication_id, $f_article_language_id, null, null, null, false, array(\"LIMIT\" => 300, \"ORDER BY\" => array(\"Number\" => \"DESC\")), true);\n    // Automatically selects the issue if there is only one\n    if (count($allIssues) == 1) {\n        $tmpIssue = camp_array_peek($allIssues);\n\t$f_issue_number = $tmpIssue->getIssueNumber();\n    }\n}\n\n// Gets all the sections\n$allSections = array();\nif ($f_issue_number > 0) {\n    $destIssue = new Issue($f_publication_id);\n    $allSections = Section::GetSections($f_publication_id, $f_issue_number, $f_article_language_id, null, null, array(\"ORDER BY\" => array(\"Number\" => \"DESC\")), true);\n    // Automatically selects the section if there is only one\n    if (count($allSections) == 1) {\n        $tmpSection = camp_array_peek($allSections);\n        $f_section_number = $tmpSection->getSectionNumber();\n    }\n}\n\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Actions\"), \"\");\n$crumbs[] = array($translator->trans(\"Import XML\", array(), 'articles'), \"\");\necho camp_html_breadcrumbs($crumbs);\n\n$controller->view->headTitle($translator->trans(\"Import XML\", array(), 'articles').' - Newscoop Admin', 'SET');\n\n?>\n\n<?php camp_html_display_msgs(); ?>\n\n<p>\n<form name=\"import_archive\" enctype=\"multipart/form-data\" method=\"POST\" action=\"/<?php echo $ADMIN; ?>/articles/la_import.php\" onsubmit=\"return <?php camp_html_fvalidate(); ?>;\">\n<?php echo SecurityToken::FormParameter(); ?>\n\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"box_table\">\n<tr>\n  <td colspan=\"2\">\n    <b><?php echo $translator->trans(\"Import XML\", array(), 'articles'); ?></b>\n    <hr noshade size=\"1\" color=\"black\">\n  </td>\n</tr>\n<tr>\n  <td valign=\"top\">\n    <table>\n    <tr>\n      <td align=\"right\"><?php echo $translator->trans(\"Article Type\", array(), 'articles'); ?>:</td>\n      <td>\n        <select name=\"f_article_type\" id=\"f_article_type\" class=\"input_select\" alt=\"select\" emsg=\"<?php echo $translator->trans('You must select an article type.', array(), 'articles'); ?>\">\n        <option value=\"\"><?php echo $translator->trans('---Select article type---', array(), 'articles'); ?></option>\n        <?php\n        foreach ($articleTypes as $article_type) {\n            $articleType = new ArticleType($article_type);\n            camp_html_select_option($articleType->getTypeName(), $f_article_type, $articleType->getTypeName());\n        }\n        ?>\n        </select>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"right\"><?php echo $translator->trans(\"Language\"); ?>:</td>\n      <td>\n        <select name=\"f_article_language_id\" id=\"f_article_language_id\" class=\"input_select\" alt=\"select\" emsg=\"<?php echo $translator->trans('You must select an article language.', array(), 'articles'); ?>\" onchange=\"if (this.options[this.selectedIndex].value != <?php p($f_article_language_id); ?>) {this.form.submit();}\">\n        <option value=\"\"><?php echo $translator->trans('---Select language---'); ?></option>\n        <?php\n        foreach ($allLanguages as $language) {\n            camp_html_select_option($language->getLanguageId(), $f_article_language_id, $language->getNativeName());\n        }\n        ?>\n        </select>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"right\"><?php echo $translator->trans(\"Publication\"); ?>:</td>\n      <td>\n        <?php if ($f_article_language_id > 0 && count($allPublications) > 1) { ?>\n        <select name=\"f_publication_id\" id=\"f_publication_id\" class=\"input_select\" alt=\"select\" emsg=\"<?php echo $translator->trans('You must select a publication.', array(), 'articles') ?>\" onchange=\"if (this.options[this.selectedIndex].value != <?php p($f_publication_id); ?>) {this.form.submit();}\">\n        <option value=\"\"><?php echo $translator->trans('---Select publication---'); ?></option>\n        <?php\n        foreach ($allPublications as $publication) {\n            camp_html_select_option($publication->getPublicationId(), $f_publication_id, $publication->getName());\n        }\n        ?>\n        </select>\n        <?php } else { ?>\n        <select class=\"input_select\" disabled><option><?php echo $translator->trans('No publications'); ?></option></select>\n        <?php } ?>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"right\"><?php echo $translator->trans(\"Issue\"); ?>:</td>\n      <td>\n        <?php if (($f_publication_id > 0) && (count($allIssues) >= 1)) { ?>\n        <select name=\"f_issue_number\" id=\"f_issue_number\" class=\"input_select\" onchange=\"if (this.options[this.selectedIndex].value != <?php p($f_issue_number); ?>) { this.form.submit(); }\">\n        <option value=\"0\"><?php echo $translator->trans('---Select issue---'); ?></option>\n        <?php\n            foreach ($allIssues as $issue) {\n                camp_html_select_option($issue->getIssueNumber(), $f_issue_number, $issue->getName());\n            }\n        ?>\n        </select>\n        <?php } else { ?>\n        <select class=\"input_select\" disabled><option><?php echo $translator->trans('No issues'); ?></option></select>\n        <?php } ?>\n        &nbsp;\n        (<?php echo $translator->trans('Optional', array(), 'articles'); ?>)\n      </td>\n    </tr>\n    <tr>\n      <td align=\"right\"><?php echo $translator->trans(\"Section\"); ?>:</td>\n      <td>\n        <?php if (($f_issue_number > 0) && (count($allSections) >= 1)) { ?>\n        <select name=\"f_section_number\" id=\"f_section_number\" class=\"input_select\">\n        <option value=\"\"><?php echo $translator->trans('---Select section---'); ?></option>\n        <?php\n            foreach ($allSections as $section) {\n                camp_html_select_option($section->getSectionNumber(), $f_section_number, $section->getName());\n            }\n        ?>\n        </select>\n        <?php } else { ?>\n        <select class=\"input_select\" disabled><option><?php echo $translator->trans('No sections'); ?></option></select>\n        <?php } ?>\n        &nbsp;\n        (<?php echo $translator->trans('Optional', array(), 'articles'); ?>)\n      </td>\n    </tr>\n    <tr>\n      <td align=\"right\"><?php echo $translator->trans(\"Overwrite articles with matching names\", array(), 'articles'); ?>?:</td>\n      <td>\n        <input type=\"radio\" name=\"f_overwrite_articles\" value=\"Y\" <?php if ($f_overwrite_articles == 'Y') p(\"checked\"); ?> /> <?php echo $translator->trans(\"Yes\"); ?>\n        <input type=\"radio\" name=\"f_overwrite_articles\" value=\"N\" <?php if ($f_overwrite_articles == 'N' || $f_overwrite_articles == '') p(\"checked\"); ?> /> <?php echo $translator->trans(\"No\"); ?>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"right\"><?php echo $translator->trans(\"Input File\", array(), 'articles'); ?>:</td>\n      <td>\n        <input type=\"file\" name=\"f_input_file\" id=\"f_input_file\" size=\"40\" class=\"input_text\" alt=\"file|xml|0\" emsg=\"<?php echo $translator->trans('You must select a XML input file.', array(), 'articles'); ?>\" />\n      </td>\n    </tr>\n    </table>\n  </td>\n</tr>\n<tr>\n  <td colspan=\"2\" align=\"center\">\n    <hr noshade size=\"1\" color=\"black\">\n    <input type=\"submit\" name=\"f_save\" value=\"<?php echo $translator->trans('Save'); ?>\" class=\"button\" />\n  </td>\n</tr>\n</table><br />\n\n<?php if ( isset($errorMessages) && sizeof($errorMessages) > 0) { ?>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"box_table\">\n<tr>\n  <td>\n    <b><?php echo $translator->trans(\"Error List\", array(), 'articles'); ?></b>\n    <hr noshade size=\"1\" color=\"black\">\n  </td>\n</tr>\n<tr>\n  <td>\n    <?php\n    foreach ($errorMessages as $key => $errors) {\n        for ($i = 0; $i < sizeof($errors); $i++) {\n\t    print($errors[$i]);\n\t}\n    }\n    ?>\n  </td>\n</tr>\n</table>\n<?php } ?>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/locations/country_codes.php",
    "content": "<?php\n$country_codes_alpha_2 = array(\n'Afghanistan' => 'AF',\n'Aland Islands / Åland Islands' => 'AX',\n'Albania' => 'AL',\n'Algeria' => 'DZ',\n'American Samoa' => 'AS',\n'Andorra' => 'AD',\n'Angola' => 'AO',\n'Anguilla' => 'AI',\n'Antarctica' => 'AQ',\n'Antigua and Barbuda' => 'AG',\n'Argentina' => 'AR',\n'Armenia' => 'AM',\n'Aruba' => 'AW',\n'Australia' => 'AU',\n'Austria' => 'AT',\n'Azerbaijan' => 'AZ',\n'Bahamas' => 'BS',\n'Bahrain' => 'BH',\n'Bangladesh' => 'BD',\n'Barbados' => 'BB',\n'Belarus' => 'BY',\n'Belgium' => 'BE',\n'Belize' => 'BZ',\n'Benin' => 'BJ',\n'Bermuda' => 'BM',\n'Bhutan' => 'BT',\n'Bolivia, Plurinational State of' => 'BO',\n'Bosnia and Herzegovina' => 'BA',\n'Botswana' => 'BW',\n'Bouvet Island' => 'BV',\n'Brazil' => 'BR',\n'British Indian Ocean Territory' => 'IO',\n'Brunei Darussalam' => 'BN',\n'Bulgaria' => 'BG',\n'Burkina Faso' => 'BF',\n'Burundi' => 'BI',\n'Cambodia' => 'KH',\n'Cameroon' => 'CM',\n'Canada' => 'CA',\n'Cape Verde' => 'CV',\n'Cayman Islands' => 'KY',\n'Central African Republic' => 'CF',\n'Chad' => 'TD',\n'Chile' => 'CL',\n'China' => 'CN',\n'Christmas Island' => 'CX',\n'Cocos (Keeling) Islands' => 'CC',\n'Colombia' => 'CO',\n'Comoros' => 'KM',\n'Congo' => 'CG',\n'Congo, the Democratic Republic of the' => 'CD',\n'Cook Islands' => 'CK',\n'Costa Rica' => 'CR',\n'Cote d\\'Ivoire / Côte d\\'Ivoire' => 'CI',\n'Croatia' => 'HR',\n'Cuba' => 'CU',\n'Cyprus' => 'CY',\n'Czech Republic' => 'CZ',\n'Denmark' => 'DK',\n'Djibouti' => 'DJ',\n'Dominica' => 'DM',\n'Dominican Republic' => 'DO',\n'Ecuador' => 'EC',\n'Egypt' => 'EG',\n'El Salvador' => 'SV',\n'Equatorial Guinea' => 'GQ',\n'Eritrea' => 'ER',\n'Estonia' => 'EE',\n'Ethiopia' => 'ET',\n'Falkland Islands (Malvinas)' => 'FK',\n'Faroe Islands' => 'FO',\n'Fiji' => 'FJ',\n'Finland' => 'FI',\n'France' => 'FR',\n'French Guiana' => 'GF',\n'French Polynesia' => 'PF',\n'French Southern Territories' => 'TF',\n'Gabon' => 'GA',\n'Gambia' => 'GM',\n'Georgia' => 'GE',\n'Germany' => 'DE',\n'Ghana' => 'GH',\n'Gibraltar' => 'GI',\n'Greece' => 'GR',\n'Greenland' => 'GL',\n'Grenada' => 'GD',\n'Guadeloupe' => 'GP',\n'Guam' => 'GU',\n'Guatemala' => 'GT',\n'Guernsey' => 'GG',\n'Guinea' => 'GN',\n'Guinea-Bissau' => 'GW',\n'Guyana' => 'GY',\n'Haiti' => 'HT',\n'Heard Island and McDonald Islands' => 'HM',\n'Holy See (Vatican City State)' => 'VA',\n'Honduras' => 'HN',\n'Hong Kong' => 'HK',\n'Hungary' => 'HU',\n'Iceland' => 'IS',\n'India' => 'IN',\n'Indonesia' => 'ID',\n'Iran, Islamic Republic of' => 'IR',\n'Iraq' => 'IQ',\n'Ireland' => 'IE',\n'Isle of Man' => 'IM',\n'Israel' => 'IL',\n'Italy' => 'IT',\n'Jamaica' => 'JM',\n'Japan' => 'JP',\n'Jersey' => 'JE',\n'Jordan' => 'JO',\n'Kazakhstan' => 'KZ',\n'Kenya' => 'KE',\n'Kiribati' => 'KI',\n'Korea, Democratic People\\'s Republic of' => 'KP',\n'Korea, Republic of' => 'KR',\n'Kuwait' => 'KW',\n'Kyrgyzstan' => 'KG',\n'Lao People\\'s Democratic Republic' => 'LA',\n'Latvia' => 'LV',\n'Lebanon' => 'LB',\n'Lesotho' => 'LS',\n'Liberia' => 'LR',\n'Libyan Arab Jamahiriya' => 'LY',\n'Liechtenstein' => 'LI',\n'Lithuania' => 'LT',\n'Luxembourg' => 'LU',\n'Macao' => 'MO',\n'Macedonia, the former Yugoslav Republic of' => 'MK',\n'Madagascar' => 'MG',\n'Malawi' => 'MW',\n'Malaysia' => 'MY',\n'Maldives' => 'MV',\n'Mali' => 'ML',\n'Malta' => 'MT',\n'Marshall Islands' => 'MH',\n'Martinique' => 'MQ',\n'Mauritania' => 'MR',\n'Mauritius' => 'MU',\n'Mayotte' => 'YT',\n'Mexico' => 'MX',\n'Micronesia, Federated States of' => 'FM',\n'Moldova, Republic of' => 'MD',\n'Monaco' => 'MC',\n'Mongolia' => 'MN',\n'Montenegro' => 'ME',\n'Montserrat' => 'MS',\n'Morocco' => 'MA',\n'Mozambique' => 'MZ',\n'Myanmar' => 'MM',\n'Namibia' => 'NA',\n'Nauru' => 'NR',\n'Nepal' => 'NP',\n'Netherlands' => 'NL',\n'Netherlands Antilles' => 'AN',\n'New Caledonia' => 'NC',\n'New Zealand' => 'NZ',\n'Nicaragua' => 'NI',\n'Niger' => 'NE',\n'Nigeria' => 'NG',\n'Niue' => 'NU',\n'Norfolk Island' => 'NF',\n'Northern Mariana Islands' => 'MP',\n'Norway' => 'NO',\n'Oman' => 'OM',\n'Pakistan' => 'PK',\n'Palau' => 'PW',\n'Palestinian Territory, Occupied' => 'PS',\n'Panama' => 'PA',\n'Papua New Guinea' => 'PG',\n'Paraguay' => 'PY',\n'Peru' => 'PE',\n'Philippines' => 'PH',\n'Pitcairn' => 'PN',\n'Poland' => 'PL',\n'Portugal' => 'PT',\n'Puerto Rico' => 'PR',\n'Qatar' => 'QA',\n'Reunion / Réunion' => 'RE',\n'Romania' => 'RO',\n'Russian Federation' => 'RU',\n'Rwanda' => 'RW',\n'Saint Barthélemy' => 'BL',\n'Saint Helena, Ascension and Tristan da Cunha' => 'SH',\n'Saint Kitts and Nevis' => 'KN',\n'Saint Lucia' => 'LC',\n'Saint Martin (French part)' => 'MF',\n'Saint Pierre and Miquelon' => 'PM',\n'Saint Vincent and the Grenadines' => 'VC',\n'Samoa' => 'WS',\n'San Marino' => 'SM',\n'Sao Tome and Principe' => 'ST',\n'Saudi Arabia' => 'SA',\n'Senegal' => 'SN',\n'Serbia' => 'RS',\n'Seychelles' => 'SC',\n'Sierra Leone' => 'SL',\n'Singapore' => 'SG',\n'Slovakia' => 'SK',\n'Slovenia' => 'SI',\n'Solomon Islands' => 'SB',\n'Somalia' => 'SO',\n'South Africa' => 'ZA',\n'South Georgia and the South Sandwich Islands' => 'GS',\n'Spain' => 'ES',\n'Sri Lanka' => 'LK',\n'Sudan' => 'SD',\n'Suriname' => 'SR',\n'Svalbard and Jan Mayen' => 'SJ',\n'Swaziland' => 'SZ',\n'Sweden' => 'SE',\n'Switzerland' => 'CH',\n'Syrian Arab Republic' => 'SY',\n'Taiwan, Province of China' => 'TW',\n'Tajikistan' => 'TJ',\n'Tanzania, United Republic of' => 'TZ',\n'Thailand' => 'TH',\n'Timor-Leste' => 'TL',\n'Togo' => 'TG',\n'Tokelau' => 'TK',\n'Tonga' => 'TO',\n'Trinidad and Tobago' => 'TT',\n'Tunisia' => 'TN',\n'Turkey' => 'TR',\n'Turkmenistan' => 'TM',\n'Turks and Caicos Islands' => 'TC',\n'Tuvalu' => 'TV',\n'Uganda' => 'UG',\n'Ukraine' => 'UA',\n'United Arab Emirates' => 'AE',\n'United Kingdom' => 'GB',\n'United States' => 'US',\n'United States Minor Outlying Islands' => 'UM',\n'Uruguay' => 'UY',\n'Uzbekistan' => 'UZ',\n'Vanuatu' => 'VU',\n'Venezuela, Bolivarian Republic of' => 'VE',\n'Viet Nam' => 'VN',\n'Virgin Islands, British' => 'VG',\n'Virgin Islands, U.S.' => 'VI',\n'Wallis and Futuna' => 'WF',\n'Western Sahara' => 'EH',\n'Yemen' => 'YE',\n'Zambia' => 'ZM',\n'Zimbabwe' => 'ZW',\n);\n"
  },
  {
    "path": "newscoop/admin-files/articles/locations/do_unlink.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/GeoMap.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/User.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n$f_language_id = Input::Get('f_language_id', 'int', 0);\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n$f_article_number = Input::Get('f_article_number', 'int', 0);\n\n// Check input\nif (!Input::IsValid()) {\n    camp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), null, true);\n    exit;\n}\n\n// This file can only be accessed if the user has the right to change articles\n// or the user created this article and it hasnt been published yet.\nif (!$g_user->hasPermission('ChangeArticle')) {\n    camp_html_display_error($translator->trans('You do not have the right to remove maps from articles.', array(), 'geolocation'), null, true);\n    exit;\n}\n\n$language_usage = $f_language_selected;\nif ((!$language_usage) || (0 == $language_usage))\n{\n    $language_usage = $f_language_id;\n}\n\n$articleObj = new Article($f_language_selected, $f_article_number);\nGeo_Map::UnlinkArticle($articleObj);\n\ncamp_html_add_msg($translator->trans('The map has been removed from the article.', array(), 'geolocation'), 'ok');\ncamp_html_goto_page(camp_html_article_url($articleObj, $f_language_id, 'edit.php'));\n?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/locations/filter.php",
    "content": "<?php\n\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/GeoPreferences.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/GeoMap.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nheader('Content-Type: text/html; charset=utf-8');\necho '<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">' . \"\\n\";\n?>\n<html>\n<head>\n    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n    <meta http-equiv=\"Expires\" content=\"now\" />\n\n        <link rel=\"shortcut icon\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/images/7773658c3ccbf03954b4dacb029b2229.ico\" />\n\n\t<link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/admin_stylesheet.css\" />\n\t<link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/admin_stylesheet_new.css\" />\n\t<link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/jquery-ui-1.8.6.custom.css\" />\n\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/map-filter.css\" />\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/geocoding/styles/map-info.css\" />\n    <title><?php echo $translator->trans('Geo-filtering', array(), 'geolocation'); ?></title>\n\n    <script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/base64.js\"></script>\n    <script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/json2.js\"></script>\n\n    <script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/jquery/jquery-1.7.1.min.js\"></script>\n\n    <script type=\"text/javascript\">\n\t\twindow.update_opener_link = function() {\n\t\t\ttry {\n\t\t\t\tif (window.opener && (!window.opener.closed) && (!window.opener.geo_filter_window)) {\n\t\t\t\t\twindow.opener.geo_filter_window = window;\n\t\t\t\t}\n\t\t\t}\n\t\t\tcatch (e) {alert(e);};\n\t\t}\n\t\tif (window.opener) {\n\t\t\twindow.setInterval('window.update_opener_link();', 1000);\n\t\t}\n\t</script>\n\n<?php\n    $map_width = 800;\n    $map_height = 500;\n\techo Geo_Map::GetMapFilterHeader($map_width, $map_height);\n?>\n\n</head>\n<body onLoad=\"return false;\">\n\n<div class=\"map_show_filter\">\n\n<div class=\"map_mappart_outer_filter\">\n\n<div class=\"map_mappart_filter\">\n<a href=\"#\" class=\"geo_map_show_initial\" onClick=\"<?php echo Geo_Map::GetMapFilterCenter(); ?> return false;\"><?php echo $translator->trans('show initial map view', array(), 'geolocation'); ?></a>\n<?php echo Geo_Map::GetMapFilterBody(); ?>\n</div><!-- end of map_mappart_filter -->\n\n</div><!-- end of map_mappart_outer_filter -->\n\n<div class=\"geo_filter_texts\" style=\"height:150px;overflow-y:auto;overflow-x:hidden\">\n\n<div class=\"polygon_info\">\n<div id=\"geo_polygons_info\">&nbsp;</div>\n</div><!-- end of polygon_info -->\n\n<div class=\"polygon_append\">\n<form name=\"polygon_spec_new\" action=\"#\" onSubmit=\"<?php echo Geo_Map::GetMapFilterObjName(); ?>.add_polygon(polygon_spec_new.geo_polygon_new.value); return false;\">\n<a style=\"float:left\" href='#' onclick='<?php echo Geo_Map::GetMapFilterObjName(); ?>.add_polygon(polygon_spec_new.geo_polygon_new.value); return false;'><span class=\"geo_add_polygon ui-icon ui-icon-plusthick\"></span></a>\n<input id=\"geo_polygon_new\" class=\"geo_polygon_new\" name=\"geo_polygon_new\" size=\"80\">\n</form>\n</div><!-- end of polygon_append -->\n\n</div><!-- end of map_show_filter -->\n\n</div><!-- end of geo_filter_texts -->\n\n</body>\n</html>\n\n"
  },
  {
    "path": "newscoop/admin-files/articles/locations/popup.php",
    "content": "<?php\n\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/articles/article_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/articles/locations/country_codes.php\");\n\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/GeoPreferences.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/GeoMap.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n$f_language_id = Input::Get('f_language_selected', 'int', 0);\nif (0 == $f_language_id) {\n    $f_language_id = Input::Get('f_language_id', 'int', 0);\n}\n$f_article_number = Input::Get('f_article_number', 'int', 0);\n\n$map_article_spec = '' . $f_article_number . '_' . $f_language_id;\n\nif (!Input::IsValid()) {\n    camp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $_SERVER['REQUEST_URI'], true);\n    exit;\n}\n\n$articleObj = new Article($f_language_id, $f_article_number);\n\n\n\n$cnf_html_dir = $Campsite['HTML_DIR'];\n$cnf_website_url = $Campsite['WEBSITE_URL'];\n\n$geo_map_info = Geo_Preferences::GetMapInfo($cnf_html_dir, $cnf_website_url);\n$geo_map_incl = Geo_Preferences::PrepareMapIncludes($geo_map_info['incl_obj']);\n$geo_map_json = \"\";\n$geo_map_json .= json_encode($geo_map_info['json_obj']);\n\n$geo_map_usage = Geo_Map::ReadMapInfo('article', $f_article_number);\n$geo_map_usage_json = \"\";\n$geo_map_usage_json .= json_encode($geo_map_usage);\n\n$geo_icons_info = Geo_Preferences::GetIconsInfo($cnf_html_dir, $cnf_website_url);\n$geo_icons_json = \"\";\n$geo_icons_json .= json_encode($geo_icons_info['json_obj']);\n\n\n$geo_popups_info = Geo_Preferences::GetPopupsInfo($cnf_html_dir, $cnf_website_url);\n$geo_popups_json = \"\";\n$geo_popups_json .= json_encode($geo_popups_info['json_obj']);\n\n?>\n<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"en\">\n<head>\n    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n    <meta http-equiv=\"Expires\" content=\"now\" />\n    <title><?php echo $translator->trans('Setting Map Locations', array(), 'geolocation'); ?></title>\n\n        <?php include dirname(__FILE__) . '/../../html_head.php'; ?>\n\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/map-picking.css\" />\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/form.css\" />\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/geocoding/styles/map-info.css\" />\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/geocoding/openlayers/theme/default/style.css\" />\n\n<?php\n    $include_files = Geo_Preferences::GetIncludeCSS($cnf_html_dir, $cnf_website_url);\n    $include_files_css = $include_files[\"css_files\"];\n    $include_files_tags = \"\";\n    foreach ($include_files_css as $css_file)\n    {\n        $include_files_tags .= \"<link rel=\\\"stylesheet\\\" type=\\\"text/css\\\" href=\\\"$css_file\\\" />\\n\";\n    }\n    echo $include_files_tags;\n?>\n\n    <script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/base64.js\"></script>\n    <script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/json2.js\"></script>\n        <?php echo $geo_map_incl; ?>\n\n    <script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/geocoding/map_popups.js\"></script>\n    <script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/geocoding/openlayers/OpenLayers.js\"></script>\n    <script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/geocoding/openlayers/OLlocals.js\"></script>\n    <script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/geocoding/location_chooser.js\"></script>\n\n    <script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/geocoding/country_codes.js\"></script>\n    <script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/geocoding/country_cens.js\"></script>\n    <script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/geocoding/geonames/search.js\"></script>\n    <script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/jquery/jquery.dataTables.min.js\"></script>\n\n    <script type=\"text/javascript\">\n\n// prepare localized strings\nvar local_strings_map = {};\n\nvar set_local_strings = function()\n{\n\n    local_strings_map[\"fill_in_map_name\"] = \"<?php echo $translator->trans('fill in map name', array(), 'geolocation'); ?>\";\n    local_strings_map[\"point_markers\"] = \"<?php echo $translator->trans('Point markers', array(), 'geolocation'); ?>\";\n    local_strings_map[\"this_should_not_happen_now\"] = \"<?php echo $translator->trans('problem at point processing, please send error report', array(), 'geolocation'); ?>\";\n    local_strings_map[\"really_to_delete_the_point\"] = \"<?php echo $translator->trans('Really delete this point?', array(), 'geolocation'); ?>\";\n    local_strings_map[\"the_removal_is_from_all_languages\"] = \"<?php echo $translator->trans('The point will be removed from all translations of the article.', array(), 'geolocation'); ?>\";\n    local_strings_map[\"point_number\"] = \"<?php echo $translator->trans('Point no.', array(), 'geolocation'); ?>\";\n    local_strings_map[\"fill_in_the_point_description\"] = \"<?php echo $translator->trans('Describe the location...', array(), 'geolocation'); ?>\";\n    local_strings_map[\"edit\"] = \"<?php echo $translator->trans('Edit'); ?>\";\n    local_strings_map[\"edit_advanced\"] = \"<?php echo $translator->trans('Advanced editing', array(), 'geolocation'); ?>\";\n    local_strings_map[\"center\"] = \"<?php echo $translator->trans('Center', array(), 'geolocation'); ?>\";\n    local_strings_map[\"enable\"] = \"<?php echo $translator->trans('Show'); ?>\";\n    local_strings_map[\"disable\"] = \"<?php echo $translator->trans('Hide'); ?>\";\n    local_strings_map[\"remove\"] = \"<?php echo $translator->trans('Delete location', array(), 'geolocation'); ?>\";\n    local_strings_map[\"remove_short\"] = \"<?php echo $translator->trans('Delete'); ?>\";\n    local_strings_map[\"coordinates\"] = \"<?php echo $translator->trans('Coordinates', array(), 'geolocation'); ?>\";\n    local_strings_map[\"longitude\"] = \"<?php echo $translator->trans('Longitude', array(), 'geolocation'); ?>\";\n    local_strings_map[\"latitude\"] = \"<?php echo $translator->trans('Latitude', array(), 'geolocation'); ?>\";\n    local_strings_map[\"locations_updated\"] = \"<?php echo $translator->trans('List of locations updated', array(), 'geolocation'); ?>\";\n    local_strings_map[\"empty_label_show\"] = \"<?php echo $translator->trans('Fill in location label', array(), 'geolocation'); ?>\";\n\n    geo_locations.set_display_strings(local_strings_map);\n\n    local_strings_nam = {};\n\n    local_strings_nam[\"cc\"] = \"+\";\n    local_strings_nam[\"city\"] = \"<?php echo $translator->trans('Center map on location', array(), 'geolocation'); ?>\";\n    local_strings_nam[\"add_city\"] = \"<?php echo $translator->trans('add location to map', array(), 'geolocation'); ?>\";\n    local_strings_nam[\"no_city_was_found\"] = \"<?php echo $translator->trans('Sorry, that place was not found. Check your spelling or search again.', array(), 'geolocation'); ?>\";\n\n    geo_names.set_display_strings(local_strings_nam);\n\n};\n// prepare map settings\nvar useSystemParameters = function() {\n<?php\n    $article_spec_arr = array('language_id' => $f_language_id, 'article_number' => $f_article_number);\n    $article_spec = json_encode($article_spec_arr);\n?>\n    geo_locations.set_article_spec(<?php echo $article_spec; ?>);\n    geo_locations.set_map_info(<?php echo $geo_map_json; ?>);\n    geo_locations.set_map_usage(<?php echo $geo_map_usage_json; ?>);\n    geo_locations.set_icons_info(<?php echo $geo_icons_json; ?>);\n    geo_locations.set_popups_info(<?php echo $geo_popups_json; ?>);\n};\n\n// city search start; if longitude/latitude provided, immediate results done\nvar findLocation = function(forced)\n{\n    var city_obj = document.getElementById ? document.getElementById(\"search-city\") : null;\n    var cc_obj = document.getElementById ? document.getElementById(\"search-country\") : null;\n\n    var cc_code = cc_obj.options[cc_obj.selectedIndex].value;\n\n    var cities_term = city_obj.value.replace(/\\*/g, \"%\");\n    cities_term = cities_term.replace(/^\\s+|\\s+$/g, '');\n    if (0 == cities_term.length)\n    {\n        if (forced)\n        {\n            if (cc_code in country_centers)\n            {\n                var cclon = country_centers[cc_code]['lon'];\n                var cclat = country_centers[cc_code]['lat'];\n                geo_locations.center_lonlat (cclon, cclat);\n            }\n        }\n\n        return;\n    }\n\n    var longitude = null;\n    var latitude = null;\n\n    var comma_sep = false;\n    if ((-1 == cities_term.indexOf(';')) && (-1 == cities_term.indexOf(' ')))\n    {\n        comma_sep = true;\n    }\n\n    var test_list = [];\n    if (comma_sep)\n    {\n        test_list = cities_term.split(/[,]+/);\n    }\n    else\n    {\n        test_list = cities_term.split(/[\\s;][\\s,;]*/);\n    }\n\n    geonames_dir = \"<?php echo $Campsite['WEBSITE_URL']; ?>/admin/cities/\";\n\n    var direct_coords = true;\n    if (2 <= test_list.length)\n    {\n        latitude = parseFloat(test_list[0].replace(\",\", \".\"));\n        longitude = parseFloat(test_list[1].replace(\",\", \".\"));\n\n        if ((isNaN(latitude)) || (isNaN(longitude)))\n        {\n            direct_coords = false;\n        }\n        if (direct_coords)\n        {\n            geo_locations.center_lonlat (longitude, latitude);\n            geo_locations.insert_poi('EPSG:4326', null, longitude, latitude);\n\n            var found_cits = geo_names.askForNearCities(longitude, latitude, geonames_dir, \"search_results\");\n            return;\n        }\n    }\n\n    var found_locs = geo_names.askForCityLocation(cities_term, cc_code, geonames_dir, \"search_results\");\n\n};\n\n// dispetching search results display\nvar showhideState = false;\nvar showhideLocation = function()\n{\n    if (showhideState)\n    {\n        hideLocation();\n    }\n    else\n    {\n        showLocation();\n    }\n};\n\n// hides the city search results box\nvar hideLocation = function()\n{\n    showhideState = false;\n\n    $(\"#search_results\").addClass(\"map_hidden\");\n\n    $(\"#map_geo_showhide\").removeClass(\"map_hidden\");\n    $(\"#map_geo_showhide\").addClass(\"toggle_link_block\");\n\n    geo_locations.map_update_side_desc_height();\n\n    $(\"#map_geo_showhide .round-delete\").removeClass(\"map_hidden\");\n    $(\"#map_geo_showhide .round-delete\").addClass(\"round-plus\");\n\n    $(\"#showhide_link\").attr(\"title\", \"<?php echo $translator->trans('Show search results', array(), 'geolocation'); ?>\");\n    $(\"#showhide_link\").removeClass(\"map_hidden\");\n    $(\"#showhide_link\").addClass(\"toggle_link_block\");\n\n    var showhide_link_label = document.getElementById ? document.getElementById(\"showhide_link_label\") : null;\n    if (showhide_link_label) {\n        showhide_link_label.innerHTML = \"<?php echo $translator->trans('Show search results', array(), 'geolocation'); ?>\";\n    }\n\n};\n\n// shows the city search results box\nvar showLocation = function()\n{\n    showhideState = true;\n\n    $(\"#map_sidedescs\").addClass(\"map_hidden\");\n\n    $(\"#search_results\").removeClass(\"map_hidden\");\n\n    $(\"#map_geo_showhide\").removeClass(\"map_hidden\");\n    $(\"#map_geo_showhide\").addClass(\"toggle_link_block\");\n\n    geo_locations.map_update_side_desc_height();\n    $(\"#map_sidedescs\").removeClass(\"map_hidden\");\n\n    $(\"#map_geo_showhide .round-delete\").removeClass(\"map_hidden\");\n    $(\"#map_geo_showhide .round-delete\").removeClass(\"round-plus\");\n\n    $(\"#showhide_link\").attr(\"title\", \"<?php echo $translator->trans('Hide search results', array(), 'geolocation'); ?>\");\n    $(\"#showhide_link\").removeClass(\"map_hidden\");\n    $(\"#showhide_link\").addClass(\"toggle_link_block\");\n\n    var showhide_link_label = document.getElementById ? document.getElementById(\"showhide_link_label\") : null;\n    if (showhide_link_label) {\n        showhide_link_label.innerHTML = \"<?php echo $translator->trans('Hide search results', array(), 'geolocation'); ?>\";\n    }\n\n};\n\n// if some search term initially provided, do the search\nvar init_search = function ()\n{\n    var city_obj = document.getElementById ? document.getElementById(\"search-city\") : null;\n    if (\"\" != city_obj.value)\n    {\n        findLocation();\n    }\n};\n\nvar map_close_question = \"<?php p($translator->trans('Are you sure you want to quit without saving your changes?', array(), 'geolocation')); ?>\";\n\nvar set_pois_action = function(value)\n{\n    if (value) {\n        geo_locations.ignore_select_event = true;\n        geo_locations.show_edit_on_select = true;\n    }\n    else {\n        geo_locations.ignore_select_event = false;\n        geo_locations.show_edit_on_select = false;\n    }\n};\n\nwindow.point_perex_focus = function()\n{\n    var point_perex = document.getElementById ? document.getElementById(\"point_perex\") : null;\n    if (point_perex) {\n        point_perex.focus();\n    }\n}\n\nvar on_load_proc = function()\n{\n    geo_locations = new geo_locations_edit();\n    geo_locations.set_obj_name(\"geo_locations\");\n\n    // does not work for opera (window.opera), no known workaround\n    window.onbeforeunload = function ()\n    {\n        if (geo_locations.something_to_save)\n        {\n            return map_close_question;\n        }\n    }\n\n    set_local_strings();\n    $(\"#edit_tabs_all\").tabs();\n    useSystemParameters();\n    geo_locations.main_openlayers_init('map_mapcanvas', 'map_sidedescs');\n\n    set_pois_action(false);\n    init_search();\n    window.focus();\n    window.geomap_art_spec_popup = \"\" + '<?php echo $map_article_spec; ?>';\n\n};\n\non_close_request = function()\n{\n    if (geo_locations.something_to_save)\n    {\n        var to_close = confirm(map_close_question);\n        if (!to_close)\n        {\n            return;\n        }\n        window.onbeforeunload = null;\n    }\n\n    try {\n        if (parent.$.fancybox.reload) {\n            parent.$.fancybox.message = '<?php echo $translator->trans('Locations updated.', array(), 'geolocation'); ?>';\n        }\n        parent.$.fancybox.close();\n    }\n    catch (e) {window.close();}\n    return;\n}\n\nvar map_show_preview = function(forced)\n{\n    if (!forced) {\n        if (geo_locations.something_to_save) {\n            geo_locations.go_to_preview_page = true; \n            geo_locations.map_save_all(); \n            return;\n        }\n    }\n\n    if (!geo_locations.map_id) {return;}\n\n    if (geo_locations.something_to_save)\n    {\n        var to_redirect = confirm(map_close_question);\n        if (!to_redirect)\n        {\n            return;\n        }\n        window.onbeforeunload = null;\n    }\n\n    var cur_location = window.location.href;\n    var new_location = cur_location.replace(\"popup.php\", \"preview.php\");\n    var new_location = new_location.replace(\"loader=article\", \"loader=map\");\n    new_location += \"&focus=default\";\n    try {\n    window.location.replace(new_location);\n    } catch (e) {}\n}\n\n    </script>\n\n<script type=\"text/javascript\">\n\n    $(function(){\n\n\n        $('.icon-button').hover(\n            function() { $(this).addClass('ui-state-hover'); },\n            function() { $(this).removeClass('ui-state-hover'); }\n        );\n        $('.text-button').hover(\n            function() { $(this).addClass('ui-state-hover'); },\n            function() { $(this).removeClass('ui-state-hover'); }\n        );\n    });\n\n\n</script>\n\n</head>\n<?php $geocodingdir = $Campsite['WEBSITE_URL'] . '/js/geocoding/'; ?>\n<body onLoad=\"on_load_proc(); return false;\" id=\"geolocation\">\n<div class=\"map_editor clearfix\">\n<!--Toolbar-->\n<div id=\"map_save_part\" class=\"toolbar clearfix\">\n\n    <div class=\"save-button-bar\">\n        <input id=\"map_button_save\" type=\"submit\" onclick=\"geo_locations.map_save_all(); try {parent.$.fancybox.reload = true;} catch (e) {} return false;\" class=\"save-button-small\" disabled=\"disabled\" value=\"<?php echo $translator->trans('Save'); ?>\" name=\"save\" />\n        <input id=\"map_button_preview\" type=\"submit\" onClick=\"try {parent.$.fancybox.reload = true;} catch (e) {} map_show_preview(); return false;\" class=\"default-button\" value=\"<?php echo $translator->trans('Save'); ?> &amp; <?php echo $translator->trans('Preview'); ?>\" name=\"preview\" />\n        <input id=\"map_button_close\" type=\"submit\" onClick=\"on_close_request(); return false;\" class=\"default-button\" value=\"<?php echo $translator->trans('Close'); ?>\" name=\"close\" />\n    </div>\n    <div id=\"map_save_info\" class=\"map_save_info\">\n      <a href=\"#\" class=\"map_name_display inline_editable\" id=\"map_name_display\" onClick=\"geo_locations.map_edit_name(); return false;\" title=\"<?php echo $translator->trans('Setting the map name helps with map search', array(), 'geolocation'); ?>\"><?php echo $translator->trans('fill in map name', array(), 'geolocation'); ?></a>\n        <input id=\"map_name_input\" class=\"map_name_input map_hidden\" type=\"text\" size=\"40\" maxlength=\"255\" onChange=\"geo_locations.map_save_name(); return false;\" onBlur=\"geo_locations.map_display_name(); return false;\" onKeyUp=\"geo_locations.map_save_name(); geo_locations.map_update_name_state(this.value); return true;\">\n     </div>\n    <!-- end of map_save_part -->\n\n  </div>\n<!--END Toolbar-->\n<div class=\"clear\" style=\"height:10px;\"></div>\n<div class=\"map_sidepan\" id=\"map_sidepan\">\n<div class=\"map_menubar\">\n    <fieldset class=\"plain\">\n    <ul>\n        <li>\n            <label><span class=\"map_search_label\"><?php echo $translator->trans('Search for place or coordinate', array(), 'geolocation'); ?></span></label>\n        </li>\n        <li>\n        <form class=\"map_geo_city_search\" onSubmit=\"findLocation(); return false;\">\n          <input class=\"map_geo_cityname input_text\" id=\"search-city\" type=\"text\" title=\"<?php echo $translator->trans('Based on GeoNames.org and OpenStreetMap.org data', array(), 'geolocation'); ?>\"><a href=\"#\" title=\"<?php echo $translator->trans('Search for place or coordinate', array(), 'geolocation'); ?>\" class=\"ui-state-default icon-button no-text\" onClick=\"findLocation(true); return false;\"><span class=\"ui-icon ui-icon-search\"></span></a>\n        </form>\n        </li>\n        <li>\n<select class=\"input_select map_geo_ccselect\" id=\"search-country\" name=\"geo_cc\" onChange=\"findLocation(); return false;\">\n<option value=\"\" selected=\"true\"><?php echo $translator->trans('Specify country (optional)', array(), 'geolocation'); ?></option>\n<?php\nforeach ($country_codes_alpha_2 as $cc_name => $cc_value) {\n    echo '<option value=\"' . $cc_value . '\">' . $cc_name . '</option>' . \"\\n\";\n}\n?>\n</select>\n        </li>\n    </ul>\n    </fieldset>\n</div><!-- end of map_menubar -->\n<div id=\"side_info\" class=\"side_info\">\n\n<a class=\"toggle_link map_hidden\" onclick=\"showhideLocation(); return false;\" title=\"\" id=\"showhide_link\" href=\"#\">\n<span class=\"ui-icon ui-icon-triangle-2-n-s\"></span>\n<span id=\"showhide_link_label\"><?php echo $translator->trans('Hide search results', array(), 'geolocation'); ?></span></a>\n<div id=\"search_results\" class=\"search_results map_hidden\">&nbsp;</div>\n<div id=\"map_sidedescs\" class=\"map_sidedescs\">&nbsp;</div>\n</div><!--end of side_info -->\n</div><!-- end of map_sidepan -->\n<div class=\"map_mappart\">\n<div class=\"map_mapmenu\">\n\n<div class=\"map_mapinitview\">\n      <a class=\"ui-state-default text-button\" href=\"#\" onClick=\"geo_locations.map_showview(); return false;\"><?php echo $translator->trans('Last Saved Map View', array(), 'geolocation'); ?></a> </div>\n<!-- end of map initview -->\n<div class=\"map_resizing\">\n          <a href=\"#\" class=\"ui-state-default icon-button no-text right-floated clear-margin\" onClick=\"geo_locations.map_height_change(10); return false;\"><span class=\"ui-icon ui-icon-plus\"></span></a>\n          <div class=\"resize-label\"><span class=\"geo_resize_hor ui-icon ui-icon-arrowthick-2-n-s\">V</span></div>\n          <a href=\"#\" class=\"ui-state-default icon-button no-text right-floated clear-margin\" onClick=\"geo_locations.map_height_change(-10); return false;\"><span class=\"ui-icon ui-icon-minus\"></span></a>\n          <div id=\"map_view_size\" class=\"map-resizing-text\">600 x 400</div>\n          <a href=\"#\" class=\"ui-state-default icon-button no-text right-floated clear-margin\" onClick=\"geo_locations.map_width_change(10); return false;\"><span class=\"ui-icon ui-icon-plus\"></span></a>\n          <div class=\"resize-label\"><span class=\"geo_resize_ver ui-icon ui-icon-arrowthick-2-e-w\">H</span></div>\n          <a href=\"#\" class=\"ui-state-default icon-button no-text right-floated\" onClick=\"geo_locations.map_width_change(-10); return false;\"><span class=\"ui-icon ui-icon-minus\"></span></a>\n    <div class=\"map-resizing-text map_resizing_label\"><?php echo $translator->trans('Map size', array(), 'geolocation'); ?>:</div>\n</div><!-- end of map resizing -->\n<div id=\"map_mapedit\" class=\"map_mapedit map_hidden\">\n    <div class=\"map_editinner\">\n        <a onclick=\"geo_locations.close_edit_window(); geo_locations.preview_edited(); return false;\" href=\"#\" class=\"ui-state-default icon-button button geo_close_edit_window\"><span class=\"\"><?php echo $translator->trans('OK'); ?></span></a>\n        <div class=\"map_editpart1\">\n            <form action=\"#\" onSubmit=\"return false;\">\n              <fieldset>\n\n                <div id=\"edit_tabs_all\">\n                    <ul>\n                    <li><a href=\"#edit_basic\"><?php echo $translator->trans('text', array(), 'geolocation'); ?></a></li>\n                    <li><a href=\"#edit_image\" id=\"image_edit_part\"><?php echo $translator->trans('image', array(), 'geolocation'); ?></a></li>\n                    <li><a href=\"#edit_video\" id=\"video_edit_part\"><?php echo $translator->trans('video', array(), 'geolocation'); ?></a></li>\n                    <li><a href=\"#edit_marker\"><?php echo $translator->trans('icon', array(), 'geolocation'); ?></a></li>\n                </ul>\n                <div id=\"edit_basic\" class=\"edit_tabs\">\n                    <div class=\"edit_label_long map_poi_edit_intro\"><?php echo $translator->trans('Name and describe this location', array(), 'geolocation'); ?>.</div>\n\n                    <ol>\n                    <li class=\"edit_label_top\">\n                    <label class=\"edit_label\" for=\"point_label\"><?php echo $translator->trans('Location label', array(), 'geolocation'); ?>:</label>\n                    <input id=\"point_label\" name=\"point_label\" class=\"text\" type=\"text\" onChange=\"geo_locations.store_point_label(); return false;\" onKeyUp=\"geo_locations.store_point_label(); return true;\" />\n                    </li>\n                    <li id=\"edit_part_link\" class=\"\">\n                    <label class=\"edit_label\" for=\"point_link\"><?php echo $translator->trans('Label url', array(), 'geolocation'); ?>:</label>\n                    <input id=\"point_link\" name=\"point_link\" class=\"text\" type=\"text\" onChange=\"geo_locations.store_point_property('link', this.value); return false;\" onKeyUp=\"geo_locations.store_point_property('link', this.value); return true;\" />\n                    </li>\n\n                    <li>\n                    <label class=\"edit_label\" for=\"point_descr\"><?php echo $translator->trans('Location description:', array(), 'geolocation'); ?></label>\n                    <select class=\"text\" id=\"point_predefined\" name=\"point_predefined\" onChange=\"geo_locations.store_point_direct(this.options[this.selectedIndex].value); return false;\" onKeyUp=\"geo_locations.store_point_direct(this.options[this.selectedIndex].value); return true;\">\n                    <option value=\"0\" selected=\"true\"><?php echo $translator->trans('plain text', array(), 'geolocation'); ?></option>\n                    <option value=\"1\"><?php echo $translator->trans('html content', array(), 'geolocation'); ?></option>\n                    </select>\n                    <div id=\"edit_part_text\" class=\"\">\n                    <textarea rows=\"5\" cols=\"40\" id=\"point_descr\" name=\"point_descr\" class=\"text geo_edit_textarea_text\" type=\"text\" title=\"<?php echo $translator->trans('Describe the location...', array(), 'geolocation'); ?>\" onChange=\"geo_locations.store_point_property('text', this.value); return false;\" onKeyUp=\"geo_locations.store_point_property('text', this.value); return true;\" onClick=\"if(local_strings_map['fill_in_the_point_description'] == this.value) {this.value = '';}\" onBlur=\"if ('' == this.value) {this.value = local_strings_map['fill_in_the_point_description'];}\">\n</textarea>\n                    </div>\n                    <div id=\"edit_part_content\" class=\"map_hidden\">\n                    <textarea rows=\"5\" cols=\"40\" id=\"point_content\" name=\"point_content\" class=\"text geo_edit_textarea_text\" type=\"text\" title=\"<?php echo $translator->trans('Describe the location...', array(), 'geolocation'); ?>\" onChange=\"geo_locations.store_point_property('content', this.value); return false;\"  onKeyUp=\"geo_locations.store_point_property('content', this.value); return true;\">\n</textarea>\n                    </div>\n                    </li>\n                    </ol>\n                        </div>\n                        <div id=\"edit_image\" class=\"edit_tabs\">\n                            <div class=\"edit_label_long map_poi_edit_intro\"><?php echo $translator->trans('Add an image to this location', array(), 'geolocation'); ?>.</div>\n<?php\n    $image_desc_other = $translator->trans('Fill in image link, like', array(), 'geolocation') . \" \" . \"http://www.example.net/image.png\";\n?>\n                    <ol>\n                    <li class=\"edit_label_top\">\n                    <label class=\"edit_label\" for=\"point_image\"><?php echo $translator->trans('Image URL', array(), 'geolocation'); ?>:</label>\n                    <input id=\"point_image\" name=\"point_image\" class=\"text\" type=\"text\" onChange=\"geo_locations.store_point_property('image_source', this.value); return false;\" onKeyUp=\"geo_locations.store_point_property('image_source', this.value); return true;\" title=\"<?php echo $image_desc_other; ?>\" />\n                    <div class=\"poi_edit_description\" id=\"geo_image_desc\"><?php echo $image_desc_other; ?></div>\n                    </li>\n\n                    <li class=\"edit_label_long map_poi_edit_intro_sub\"><?php echo $translator->trans('Change image display size', array(), 'geolocation'); ?>.</li>\n\n                    <li>\n                    <label class=\"edit_label\" for=\"point_image_height\"><?php echo $translator->trans('width', array(), 'geolocation'); ?>:</label>\n                    <input id=\"point_image_width\" name=\"point_image_height\" class=\"text\" type=\"text\" onChange=\"geo_locations.store_point_property('image_width', this.value); return false;\" onKeyUp=\"geo_locations.store_point_property('image_width', this.value); return true;\" />\n                    </li>\n                    <li>\n                    <label class=\"edit_label\" for=\"point_image_height\"><?php echo $translator->trans('height', array(), 'geolocation'); ?>:</label>\n                    <input id=\"point_image_height\" name=\"point_image_height\" class=\"text\" type=\"text\" onChange=\"geo_locations.store_point_property('image_height', this.value); return false;\" onKeyUp=\"geo_locations.store_point_property('image_height', this.value); return true;\" />\n                    </li>\n                    </ol>\n                        </div>\n                        <div id=\"edit_video\" class=\"edit_tabs\">\n                            <div class=\"edit_label_long map_poi_edit_intro\"><?php echo $translator->trans('Add a video to this location', array(), 'geolocation'); ?>.</div>\n<?php\n    $video_desc_other = $translator->trans('Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.', array(), 'geolocation');\n    $video_desc_youtube = $translator->trans('Fill in youtube ID or link, e.g.', array(), 'geolocation') . ' ' . 'http://youtu.be/c9WzlvLn3X0';\n    $video_desc_vimeo = $translator->trans('Fill in vimeo ID or link, e.g', array(), 'geolocation') . ' ' . 'http://vimeo.com/21757310';\n    $video_desc_local_swf = $translator->trans('Fill in local swf flash file name or link, e.g.', array(), 'geolocation') . ' ' . 'http://www.example.net/video.swf';\n    $video_desc_local_flv = $translator->trans('Fill in local flv flash file name or link, e.g.', array(), 'geolocation') . ' ' . 'example.flv';\n?>\n                    <ol>\n                    <li>\n                    <label class=\"edit_label edit_label_top\" for=\"point_video_type\"><?php echo $translator->trans('Video source', array(), 'geolocation'); ?>:</label>\n                    <select class=\"text poi_video_type_selection\" id=\"point_video_type\" name=\"point_video_type\" onChange=\"geo_locations.store_point_property('video_type', this.options[this.selectedIndex].value); return false;\">\n                    <option value=\"none\" selected=\"true\"><?php echo $translator->trans('None', array(), 'geolocation'); ?></option>\n                    <option value=\"youtube\">Youtube</option>\n                    <option value=\"vimeo\">Vimeo</option>\n                    <option value=\"flash\">Flash (sfw)</option>\n                    <option value=\"flv\">Flash (flv)</option>\n                    </select>\n                    </li>\n\n                    <li class=\"edit_label\">\n                    <label class=\"edit_label\" for=\"point_video\"><span id=\"video_file_label_id\"><?php echo $translator->trans('Video ID', array(), 'geolocation'); ?>:</span><span id=\"video_file_label_file\" class=\"map_hidden\"><?php echo $translator->trans('Video file', array(), 'geolocation'); ?>:</span></label>\n                    <input id=\"point_video\" name=\"point_video\" class=\"text\" type=\"text\" onChange=\"geo_locations.store_point_property('video_id', this.value); return false;\" onKeyUp=\"geo_locations.store_point_property('video_id', this.value); return true;\" title=\"<?php echo $video_desc_other; ?>\" />\n                    <div id=\"geo_video_desc_other\" class=\"poi_edit_description\"><?php echo $video_desc_other; ?></div>\n                    <div id=\"geo_video_desc_youtube\" class=\"map_hidden poi_edit_description\"><?php echo $video_desc_youtube; ?></div>\n                    <div id=\"geo_video_desc_vimeo\" class=\"map_hidden poi_edit_description\"><?php echo $video_desc_vimeo; ?></div>\n                    <div id=\"geo_video_desc_local_swf\" class=\"map_hidden poi_edit_description\"><?php echo $video_desc_local_swf; ?></div>\n                    <div id=\"geo_video_desc_local_flv\" class=\"map_hidden poi_edit_description\"><?php echo $video_desc_local_flv; ?></div>\n                    </li>\n\n                    <li class=\"edit_label_long map_poi_edit_intro_sub\"><?php echo $translator->trans('Change video display size', array(), 'geolocation'); ?>.</li>\n\n                    <li>\n                    <label class=\"edit_label\" for=\"point_video_width\"><?php echo $translator->trans('width', array(), 'geolocation'); ?>:</label>\n                    <input id=\"point_video_width\" name=\"point_video_width\" class=\"text\" type=\"text\" onChange=\"geo_locations.store_point_property('video_width', this.value); return false;\" onKeyUp=\"geo_locations.store_point_property('video_width', this.value); return true;\" />\n                    </li>\n                    <li>\n                    <label class=\"edit_label\" for=\"point_video_height\"><?php echo $translator->trans('height', array(), 'geolocation'); ?>:</label>\n                    <input id=\"point_video_height\" name=\"point_video_height\" class=\"text\" type=\"text\" onChange=\"geo_locations.store_point_property('video_height', this.value); return false;\" onKeyUp=\"geo_locations.store_point_property('video_height', this.value); return true;\" />\n                    </li>\n                    </ol>\n                        </div>\n                        <div id=\"edit_marker\" class=\"edit_tabs\">\n                            <div class=\"edit_label_long map_poi_edit_intro_icon\"><?php echo $translator->trans('Change icon of this location', array(), 'geolocation'); ?>.</div>\n\n                        <div class=\"edit_marker_icons_all\">\n                        <ol>\n                            <li>\n                                <div id=\"edit_marker_selected\" class=\"edit_marker_selected\">\n                                <?php echo $translator->trans('selected marker icon', array(), 'geolocation'); ?>:&nbsp;\n                                <img id=\"edit_marker_selected_src\" src=\"\">\n                                </div>\n                            </li>\n                            <li>\n                                <div class=\"edit_marker_choices\" id=\"edit_marker_choices\">&nbsp;</div>\n                            </li>\n                        </ol>\n                        </div>\n\n                        </div>\n                </div>\n              </fieldset>\n            </form>\n\n          </div><!-- end of map_editpart1 -->\n        </div><!-- end of map_editinner -->\n      </div><!-- end of map_mapedit -->\n\n    </div><!-- end of map_mapmenu -->\n<div id=\"map_mapcanvas\" class=\"map_mapcanvas geo_map_mapcanvas\"></div>\n</div><!-- end of map_mappart -->\n</div><!-- end of map_editor -->\n\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/admin-files/articles/locations/preview.php",
    "content": "<?php\n/**\n * @package\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/GeoPreferences.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/GeoMap.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n$f_language_id = Input::Get('f_language_selected', 'int', 0);\nif (0 == $f_language_id) {\n    $f_language_id = Input::Get('f_language_id', 'int', 0);\n}\n$f_article_number = Input::Get('f_article_number', 'int', 0);\n\n$loaded_from = Input::Get('loader', 'string', 'map', true);\n\n$f_focus = Input::Get('focus', 'string', 'default', true);\n$focus_default = true;\nif ('revert' == $f_focus) {$focus_default = false;}\n\nif (!Input::IsValid()) {\n    camp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $_SERVER['REQUEST_URI'], true);\n    exit;\n}\n?>\n<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"en\">\n<head>\n    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n    <meta http-equiv=\"Expires\" content=\"now\" />\n    <title><?php echo $translator->trans('Map Preview', array(), 'geolocation'); ?></title>\n\n    <?php include dirname(__FILE__) . '/../../html_head.php'; ?>\n\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/map-preview.css\" />\n\n    <script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/base64.js\"></script>\n    <script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/json2.js\"></script>\n\n    <script type=\"text/javascript\">\nvar map_preview_focus_default = function()\n{\n    var cur_location = window.location.href;\n    var new_location = cur_location.replace(\"focus=revert\", \"focus=default\");\n    try {\n        window.location.replace(new_location);\n    } catch (e) {}\n};\n\nvar map_preview_focus_revert = function()\n{\n    var cur_location = window.location.href;\n    var new_location = cur_location.replace(\"focus=default\", \"focus=revert\");\n    if (-1 == new_location.indexOf(\"focus=revert\"))\n    {\n        new_location += \"&focus=revert\";\n    }\n\n    try {\n        window.location.replace(new_location);\n    } catch (e) {}\n};\n\nvar map_preview_close = function()\n{\n    try {\n        if (parent.$.fancybox.reload) {\n            parent.$.fancybox.message = '<?php echo $translator->trans('Locations updated.', array(), 'geolocation'); ?>';\n        }\n        parent.$.fancybox.close();\n    }\n    catch (e) {window.close();}\n};\n\nvar map_show_edit = function()\n{\n    var cur_location = window.location.href;\n    var new_location = cur_location.replace(\"preview.php\", \"popup.php\");\n    new_location = new_location.replace(\"&focus=default\", \"\");\n    new_location = new_location.replace(\"&focus=revert\", \"\");\n    try {\n        window.location.replace(new_location);\n    } catch (e) {}\n};\n\n    </script>\n\n\n<?php\n$map_width = 0;\n$map_height = 0;\n\n$focus_info = Geo_Preferences::GetFocusInfo();\n$auto_focus = (bool) $focus_info[\"json_obj\"][\"auto_focus\"];\n\nif (!$focus_default) {$auto_focus = !$auto_focus;}\n\n$map_options = array('auto_focus' => $auto_focus, 'load_common' => true);\necho Geo_Map::GetMapTagHeader($f_article_number, $f_language_id, $map_width, $map_height, $map_options);\n?>\n</head>\n<body onLoad=\"return false;\">\n<div class=\"map_preview clearfix\">\n<!--Toolbar-->\n<div id=\"map_toolbar_part\" class=\"toolbar clearfix map_preview_toolbar\">\n\n    <div class=\"save-button-bar\">\n<?php\n  $canEdit = $g_user->hasPermission('ChangeArticle');\n  if ($canEdit)\n  {\n        $edit_str = $translator->trans('Edit');\n        if (\"map\" == strtolower($loaded_from)) {\n            $edit_str = $translator->trans('Return to edit', array(), 'geolocation');\n        }\n?>\n        <input id=\"map_button_edit\" type=\"submit\" onClick=\"map_show_edit(); return false;\" class=\"default-button\" value=\"<?php echo $edit_str; ?>\" name=\"edit\" />\n<?php\n  }\n?>\n        <input id=\"map_button_close\" type=\"submit\" onClick=\"map_preview_close(); return false;\" class=\"default-button\" value=\"<?php echo $translator->trans('Close'); ?>\" name=\"close\" />\n    </div>\n    <div id=\"map_preview_info\" class=\"map_preview_info\">\n      <?php\n        echo $translator->trans('Map preview', array(), 'geolocation');\n      ?>\n    </div>\n    <!-- end of map_save_part -->\n  </div>\n<!--END Toolbar-->\n</div>\n<div class=\"clear\" style=\"height:10px;\"></div>\n<!-- Map Preview Begin -->\n<div class=\"geomap_container\">\n  <div class=\"geomap_locations\">\n    <?php echo Geo_Map::GetMapTagList($f_article_number, $f_language_id); ?>\n  </div>\n  <div class=\"geomap_menu\">\n    <a href=\"#\" class=\"ui-state-default text-button\" onClick=\"<?php echo Geo_Map::GetMapTagCenter($f_article_number, $f_language_id); ?> return false;\"><?php echo $translator->trans('show initial map view', array(), 'geolocation'); ?></a>\n  </div>\n  <div class=\"geomap_map\">\n    <div class=\"geomap_menu\">\n        <?php echo Geo_Map::GetMapTagBody($f_article_number, $f_language_id); ?>\n    </div>\n  </div>\n</div>\n<div style=\"clear:both\" ></div>\n<!-- Map Preview End //-->\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/admin-files/articles/locations/search.php",
    "content": "<?php\n\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/GeoPreferences.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/GeoMap.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n?>\n<html>\n<head>\n    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n    <meta http-equiv=\"Expires\" content=\"now\" />\n    <title><?php echo $translator->trans('Map Search Example', array(), 'geolocation'); ?></title>\n\n    <?php include dirname(__FILE__) . '/../../html_head.php'; ?>\n\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/map-preview.css\" />\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/geocoding/styles/map-info.css\" />\n\n    <script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/base64.js\"></script>\n    <script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/json2.js\"></script>\n\n<?php\n    $bbox_divs = array('tl_lon' => 'top_left_longitude', 'tl_lat' => 'top_left_latitude', 'br_lon' => 'bottom_right_longitude', 'br_lat' => 'bottom_right_latitude');\n\n    $map_width = 600;\n    $map_height = 400;\n    echo Geo_Map::GetMapSearchHeader($map_width, $map_height, $bbox_divs);\n?>\n\n</head>\n<body onLoad=\"return false;\">\n<div class=\"map_preview_serach\">\n<div class=\"map_mappart_outer_serach\">\n<div class=\"map_mappart_serach\">\n<div class=\"map_mapmenu_serach\">\n<a href=\"#\" onClick=\"<?php echo Geo_Map::GetMapSearchCenter(); ?> return false;\"><?php echo $translator->trans('show initial map view', array(), 'geolocation'); ?></a>\n</div><!-- end of map_mapmenu -->\n<?php echo Geo_Map::GetMapSearchBody(); ?>\n</div><!-- end of map_mappart -->\n</div><!-- end of map_mappart_outer -->\n</div><!-- end of map_preview -->\n<div class=\"map_search_rectangle\">\n<ol>Top left\n<li>longitude: <span id=\"top_left_longitude\"> </span></li>\n<li>latitude: <span id=\"top_left_latitude\"> </span></li>\n</ol>\n</div>\n<div>\n<ol>Bottom right\n<li>longitude: <span id=\"bottom_right_longitude\"> </span></li>\n<li>latitude: <span id=\"bottom_right_latitude\"> </span></li>\n</ol>\n</div><!-- end of map_search_rectangle -->\n</body>\n</html>\n\n"
  },
  {
    "path": "newscoop/admin-files/articles/multi_autopublish.php",
    "content": "<?PHP\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/article_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticlePublish.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!$g_user->hasPermission(\"Publish\")) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to schedule issues or articles for automatic publishing.\", array(), 'articles'));\n\texit;\n}\n\n$f_publication_id = Input::Get('f_publication_id', 'int', 0);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0);\n$f_section_number = Input::Get('f_section_number', 'int', 0);\n$f_language_id = Input::Get('f_language_id', 'int', 0);\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n$f_article_code = Input::Get('f_article_code', 'array', 0);\n\n// Get all the articles.\n$articles = array();\n$errorArticles = array();\nforeach ($f_article_code as $code) {\n\tlist($articleId, $languageId) = explode(\"_\", $code);\n\t$tmpArticle = new Article($languageId, $articleId);\n\tif ($tmpArticle->getWorkflowStatus() != 'N') {\n\t\t$articles[] = $tmpArticle;\n\t}\n\telse {\n\t\t$errorArticles[] = $tmpArticle;\n\t}\n}\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $BackLink);\n\texit;\n}\n\n$publicationObj = new Publication($f_publication_id);\nif (!$publicationObj->exists()) {\n\tcamp_html_display_error($translator->trans('Publication does not exist.'));\n\texit;\n}\n\n$issueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\nif (!$issueObj->exists()) {\n\tcamp_html_display_error($translator->trans('Issue does not exist.'));\n\texit;\n}\n\n$sectionObj = new Section($f_publication_id, $f_issue_number, $f_language_id, $f_section_number);\nif (!$sectionObj->exists()) {\n\tcamp_html_display_error($translator->trans('Section does not exist.'));\n\texit;\n}\n\n$crumbs = array($translator->trans(\"Articles\") => \"/$ADMIN/articles/index.php?f_publication_id=$f_publication_id&f_issue_number=$f_issue_number&f_section_number=$f_section_number&f_language_id=$f_language_id&f_language_selected=$f_language_selected\");\n$topArray = array('Pub' => $publicationObj, 'Issue' => $issueObj,\n\t\t\t\t  'Section' => $sectionObj);\ncamp_html_content_top($translator->trans(\"Article automatic publishing schedule\"), $topArray, true, false, $crumbs);\n\n?>\n\n<?php\nif (count($errorArticles) > 0) {\n\t?>\n\t<p>\n\t<div class=\"page_title\">\n\t<?php echo $translator->trans(\"The following articles are new, it is not possible to schedule them for automatic publishing\", array(), 'articles'); ?>:\n\t</div>\n\t<p>\n\t<table cellpadding=\"3\" cellspacing=\"0\" style=\"padding-left: 10px;\">\n\t<tr class=\"table_list_header\">\n\t\t<td><?php echo $translator->trans(\"Name\"); ?></td>\n\t</tr>\n\t<?php\n\t$color = 0;\n\tforeach ($errorArticles as $tmpArticle) { ?>\n\t<tr class=\"<?php if ($color) { ?>list_row_even<?php } else { ?>list_row_odd<?php } $color = !$color; ?>\">\n\t\t<td><?php p($tmpArticle->getTitle()); ?></td>\n\t</tr>\n\t<?php } ?>\n\t</table>\n\t<?PHP\n}\n\nif (count($articles) > 0) {\n?>\n<P>\n<FORM NAME=\"autopublish\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/articles/autopublish_do_add.php\" >\n<?php echo SecurityToken::FormParameter(); ?>\n<INPUT TYPE=\"HIDDEN\" NAME=\"f_publication_id\" VALUE=\"<?php echo $f_publication_id; ?>\">\n<INPUT TYPE=\"HIDDEN\" NAME=\"f_issue_number\" VALUE=\"<?php echo $f_issue_number; ?>\">\n<INPUT TYPE=\"HIDDEN\" NAME=\"f_section_number\" VALUE=\"<?php echo $f_section_number; ?>\">\n<?php foreach ($articles as $article) { ?>\n<input type=\"hidden\" name=\"f_article_code[]\" value=\"<?php p($article->getArticleNumber().\"_\".$article->getLanguageId()); ?>\">\n<?php } ?>\n<INPUT TYPE=\"HIDDEN\" NAME=\"f_language_id\" VALUE=\"<?php echo $f_language_id; ?>\">\n<INPUT TYPE=\"HIDDEN\" NAME=\"f_language_selected\" VALUE=\"<?php echo $f_language_selected; ?>\">\n<INPUT TYPE=\"HIDDEN\" NAME=\"f_mode\" VALUE=\"multi\">\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" class=\"box_table\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B><?php  echo $translator->trans(\"Schedule a new action\", array(), 'articles'); ?></B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD valign=\"top\" align=\"right\" style=\"padding-top: 12px;\">\n\t\t<?php echo $translator->trans(\"Articles\"); ?>:\n\t</TD>\n\t<TD>\n\t\t<table cellpadding=\"3\" cellspacing=\"2\">\n\t\t<?php\n\t\tforeach ($articles as $tmpArticle) { ?>\n\t\t<tr class=\"list_row_even\">\n\t\t\t<td><?php p($tmpArticle->getTitle()); ?></td>\n\t\t</tr>\n\t\t<?php } ?>\n\t\t</table>\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" valign=\"top\" style=\"padding-top: 12px;\"><?php  echo $translator->trans(\"Date\"); ?>:</TD>\n\t<TD>\n\t\t<input type=\"text\" name=\"f_publish_date\" value=\"\" class=\"input_text date minDate_0\" />\n        <script type=\"text/javascript\">\n            $(document).ready(function() {\n                $('input[name=f_publish_date]').focus();\n            });\n        </script>\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Time\"); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" NAME=\"f_publish_hour\" SIZE=\"2\" MAXLENGTH=\"2\" VALUE=\"0\" class=\"input_text\"> :\n\t<INPUT TYPE=\"TEXT\" NAME=\"f_publish_minute\" SIZE=\"2\" MAXLENGTH=\"2\" VALUE=\"0\" class=\"input_text\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"CENTER\" COLSPAN=\"2\"><b><?php echo $translator->trans(\"Actions\"); ?></b></TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Publish\"); ?>:</TD>\n\t<TD>\n\t<SELECT NAME=\"f_publish_action\" class=\"input_select\">\n\t\t<OPTION VALUE=\" \">---</OPTION>\n\t\t<OPTION VALUE=\"P\"><?php echo $translator->trans(\"Publish\"); ?></OPTION>\n\t\t<OPTION VALUE=\"U\"><?php echo $translator->trans(\"Unpublish\"); ?></OPTION>\n\t</SELECT>\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Front page\"); ?>:</TD>\n\t<TD>\n\t<SELECT NAME=\"f_front_page_action\" class=\"input_select\">\n\t\t<OPTION VALUE=\" \">---</OPTION>\n\t\t<OPTION VALUE=\"S\"><?php echo $translator->trans(\"Show on front page\"); ?></OPTION>\n\t\t<OPTION VALUE=\"R\"><?php echo $translator->trans(\"Remove from front page\"); ?></OPTION>\n\t</SELECT>\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Section page\"); ?>:</TD>\n\t<TD>\n\t<SELECT NAME=\"f_section_page_action\" class=\"input_select\">\n\t\t<OPTION VALUE=\" \">---</OPTION>\n\t\t<OPTION VALUE=\"S\"><?php echo $translator->trans(\"Show on section page\"); ?></OPTION>\n\t\t<OPTION VALUE=\"R\"><?php echo $translator->trans(\"Remove from section page\"); ?></OPTION>\n\t</SELECT>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\">\n\t\t<INPUT TYPE=\"submit\" NAME=\"Save\" VALUE=\"<?php echo $translator->trans('Save'); ?>\" class=\"button\">\n\t</TD>\n</TR>\n</TABLE>\n</FORM>\n<?php\n}\n\ncamp_html_copyright_notice();\n?>\n"
  },
  {
    "path": "newscoop/admin-files/articles/multidate/popup.php",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n?>\n<!DOCTYPE html>\n<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n<meta http-equiv=\"Expires\" content=\"now\" />\n<title><?php echo $translator->trans(\"Multi date events\", array(), 'articles'); ?></title>\n<link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/calendar/fullcalendar.css\" />\n<link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/calendar/timepicker.css\" />\n<link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/form.css\" />\n<link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/content.css\" />\n\n<style type=\"text/css\">\n.type-holder {\n    margin-top: 16px;\n    margin-left: 10px;\n}\nselect#multidatefield_specific {\n    font-weight: bold;\n}\nselect#multidatefield_range {\n    font-weight: bold;\n}\n.comment-holder {\n    margin-top: 10px;\n    margin-left: 10px;\n}\ndiv.comment-holder textarea {\n    font-size: 13px;\n    border: 1px solid #9D9D9D;\n}\n</style>\n\n<?php\n$f_multidate_box = 1;\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/html_head.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\n\n\n$f_publication_id = Input::Get('f_publication_id', 'int', 0);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0);\n$f_section_number = Input::Get('f_section_number', 'int', 0);\n$f_language_id = Input::Get('f_language_id', 'int', 1);\n$articleId = Input::Get('f_article_number', 'int', 1);\n\nif (isset($_SESSION['f_language_selected'])) {\n\t$f_old_language_selected = (int)$_SESSION['f_language_selected'];\n} else {\n\t$f_old_language_selected = 0;\n}\n$f_language_selected = (int)camp_session_get('f_language_selected', 0);\n\n$article_language_use = $f_language_selected;\nif (empty($article_language_use)) {\n    $article_language_use = $f_language_id;\n}\n\n$article = new Article($article_language_use, $articleId);\n\n$article_type_name = $article->getType();\n$article_type = new ArticleType($article_type_name);\n$article_type_columns = $article_type->getUserDefinedColumns();\n//var_dump($article_type_columns);\n\n?>\n<script src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/jquery/calendar/fullcalendar.min.js\" type=\"text/javascript\"></script>\n<script type=\"text/javascript\">\n\n$.fn.serializeObject = function()\n{\n    var o = {};\n    var a = this.serializeArray();\n    $.each(a, function() {\n        if (o[this.name] !== undefined) {\n            if (!o[this.name].push) {\n                o[this.name] = [o[this.name]];\n            }\n            o[this.name].push(this.value || '');\n        } else {\n            o[this.name] = this.value || '';\n        }\n    });\n    return o;\n};\n\nfunction resetSpecificForm() {\n\t$('#specific-multidate-id').val('');\n    $('#specific-radio-start-and-end').trigger('click');\n\t$('#start-date-specific').val('');\n\t$('#start-time-specific').val('');\n\t$('#end-time-specific').val('');\n\t$('#remove-specific-link').css('display','none');\n    $('#multidatefield_specific option').eq(0).attr('selected', 'selected');\n    $('#event_comment_specific').val('');\n}\n\nfunction resetDaterangeForm() { \n\t$('#daterange-multidate-id').val('');\n\t$('#start-time-daterange').css('display', 'inline').val('');\n\t$('#start-time-daterange').css('visibility','visible').val('');\n\t$('#start-date-daterange').val('');\n\t$('#end-time-daterange').css('display', 'inline').val('');\n\t$('#end-time-daterange').css('visibility','visible').val('');\n\t$('#end-date-daterange').css('visibility','visible').val('');\n\t$('#daterange-all-day').removeAttr('checked');\n\t$('#cycle-ends-on-set-date').trigger('click');\n\t$('#remove-daterange-link').css('display','none');\n    $('#multidatefield_range option').eq(0).attr('selected', 'selected');\n    $('#event_comment_range').val('');\n}\n\nfunction prepareDate(oldFormat) {\n\tvar dates = oldFormat.split('-');\n\tvar returnVal = dates[1]+'/'+dates[2]+'/'+dates[0];\n\treturn returnVal;\n}\n\nfunction timeOk(startDate, startTime, endDate, endTime) {\n\tstartDate = prepareDate(startDate);\n\tendDate = prepareDate(endDate);\n\tvar startFull = new Date(startDate + ' ' + startTime);\n\tvar endFull = new Date(endDate + ' ' + endTime);\n\tif ( endFull - startFull >=0 ) {\n\t\treturn true;\n\t} else {\n\t\treturn false;\n\t}\n}\n\nfunction popup_close() {\n    try {\n        if (parent.$.fancybox.reload) {\n            parent.$.fancybox.message = '<?php echo $translator->trans('Events updated.', array(), 'articles'); ?>';\n        }\n        parent.$.fancybox.close();\n    }\n    catch (e) {window.close();}\n}\n\nfunction submitForm(formData) {\n\tvar flash = flashMessage(localizer.processing, null, true);\n\tvar url = '<?php echo $Campsite['WEBSITE_URL']; ?>/admin/multidate/add';\n\n    callServer(\n        url,\n        formData,\n        function(res) {\n        \t$('#full-calendar').fullCalendar( 'refetchEvents' );\n        \tflash.fadeOut();\n        \tresetSpecificForm();\n        \tresetDaterangeForm();\n        },\n        true\n    );\n}\n\nfunction submitSpecificForm() {\n\n\t//validating specific form\n\tvar valid = 1;\n\tif ( $('#start-date-specific').val() == '' ) {\n\t\tvalid = 0;\n\t\talert(\"<?php echo $translator->trans('Start date can not be empty', array(), 'articles'); ?>\");\n\t\t$('#start-date-specific').focus();\n\t}\n\tvar radio = $('input:radio[name=specific-radio]:checked').val();\n\tif (radio == 'start-only' || radio == 'start-and-end') {\n\t\tif ( valid == 1) {\n\t\t\tif ( $('#start-time-specific').val() == '' ) {\n\t\t\t\tvalid = 0;\n\t\t\t\talert(\"<?php echo $translator->trans('Start time can not be empty', array(), 'articles')?>\");\n\t\t\t\t$('#start-time-specific').focus();\n\t\t\t}\n\t\t}\n\t\tif (radio == 'start-and-end' && valid == 1) {\n\t\t\tif ( $('#end-time-specific').val() == '' ) {\n\t\t\t\talert(\"<?php echo $translator->trans('End time can not be empty', array(), 'articles') ?>\");\n\t\t\t\tvalid = 0;\n\t\t\t\t$('#end-time-specific').focus();\n\t\t\t}\n\n\t\t\tif (valid == 1) {\n\t\t\t\tif ( !timeOk($('#start-date-specific').val(), $('#start-time-specific').val(), $('#start-date-specific').val(), $('#end-time-specific').val()) ) {\n\t\t\t\t\tvalid = 0;\n\t\t\t\t\talert(\"<?php echo $translator->trans('End time can not be set before start time', array(), 'articles')?>\");\n\t\t\t\t\t$('#end-time-specific').focus();\n\t\t\t\t}\n\t\t\t}\t\t\n\t\t}\n\t}\n\t\n\tif (valid == 1) {\n\t\tformData = $('#specific-dates-form').serializeObject();\n\t    submitForm(formData);\n\t}\n        \n}\n\nfunction submitDaterangeForm() {\n\n\tvar valid = 1;\n\tvar needTime = true;\n\tvar needDate = true;\n\n\tif ($('input:radio[name=cycle-ends]:checked').val() == 'never') {\n\t\tneedDate = false;\n\t}\n\tif ($('#daterange-all-day').attr('checked') == 'checked' ) {\n\t\tneedTime = false;\n\t}\n\t\n\t//start date\n\tif ( $('#start-date-daterange').val() == '' ) {\n\t\tvalid = 0;\n\t\talert(\"<?php echo $translator->trans('Start date can not be empty', array(), 'articles')?>\");\n\t\t$('#start-date-daterange').focus();\n\t}\n\t//start time\n\tif ( valid == 1 && needTime) {\n\t\tif ( $('#start-time-daterange').val() == '' ) {\n\t\t\tvalid = 0;\n\t\t\talert(\"<?php echo $translator->trans(\"Start time can not be empty\", array(), 'articles')?>\");\n\t\t\t$('#start-time-daterange').focus();\n\t\t}\n\t}\n\t//end date\n\tif (valid == 1 && needDate) {\n\t\tif ( $('#end-date-daterange').val() == '' ) {\n\t\t\tvalid = 0;\n\t\t\talert(\"<?php echo $translator->trans(\"End date can not be empty\", array(), 'articles')?>\");\n\t\t\t$('#end-date-daterange').focus();\n\t\t}\n\t}\n\t//end time \n\tif ( valid == 1 && needTime) {\n\t\tif ( $('#end-time-daterange').val() == '' ) {\n\t\t\tvalid = 0;\n\t\t\talert(\"<?php echo $translator->trans(\"End time can not be empty\", array(), 'articles')?>\");\n\t\t\t$('#end-time-daterange').focus();\n\t\t}\n\t}\n\t//end time is not set before start time\n\tif (valid == 1 && needTime) {\n\t\tvar auxDate = \"2000-01-01\";\n\t\tvar startTime = $('#start-time-daterange').val();\n\t\tvar endTime = $('#end-time-daterange').val();\n\t\t\n\t\tif ( !timeOk(auxDate, startTime, auxDate, endTime) ) {\n\t\t\tvalid = 0;\n\t\t\talert(\"<?php echo $translator->trans(\"End time can not be set before start time\", array(), 'articles')?>\");\n\t\t\t$('#end-time-daterange').focus();\n\t\t}\n\t}\t\n\t//last date is not set before first date\n\tif (valid == 1 && needDate) {\n\t\tvar startDate = $('#start-date-daterange').val();\n        var endDate = $('#end-date-daterange').val();\n\t\tvar auxTime = \"00:00\";\n\t\t\n\t\tif ( !timeOk(startDate, auxTime, endDate, auxTime) ) {\n\t\t\tvalid = 0;\n\t\t\talert(\"<?php echo $translator->trans(\"Last date can not be set before first date\", array(), 'articles')?>\");\n\t\t\t$('#end-date-daterange').focus();\n\t\t}\n\t}\t\n\t\n\t\n\t\n\tif (valid == 1) {\n\t\tformData = $('#daterange-dates-form').serializeObject();\n\t\tsubmitForm(formData);\n\t}\n\t\n}\n\nfunction popup_save() {\n    if ($(\"#specific-dates\").css('display') == 'block') {\n        submitSpecificForm();\n    } else {\n        submitDaterangeForm();\n    }\n}\n\nfunction reset_specific_start_time() {\n    $('#start-time-specific').css('display', 'inline');\n    $('#end-time-specific').css('visibility', 'hidden');\n}\n\nfunction reset_specific_start_end_time() {\n    $('#specific-radio-start-and-end').attr('checked', 'checked');\n    $('#start-time-specific').css('display', 'inline');\n    $('#end-time-specific').css('visibility', 'visible');\n}\n\nfunction reset_specific_all_day() {\n    $('#specific-radio-all-day').attr('checked', 'checked');\n    $('#start-time-specific').css('display', 'none');\n    $('#end-time-specific').css('visibility', 'hidden');\n}\n\nfunction loadDaterangeEvent(event) {\n\tresetDaterangeForm();\n\t$('.date-range-switch').trigger('click');\n\t$('#daterange-multidate-id').val(event.id);\n\t$('#start-date-daterange').val(event.startDate);\n\t$('#start-time-daterange').val(event.startTime);\n\t$('#end-date-daterange').val(event.endDate);\n\t$('#end-time-daterange').val(event.endTime);\n\tvar repeatValue = ''+event.isRecurring;\n\t$(\"#repeats-cycle option[value='\"+repeatValue+\"']\").attr('selected','selected');\n\t$('#remove-daterange-link').css('display','block');\n\tif (event.neverEnds == 1) {\n\t\t$('#cycle-ends-never').attr('checked', 'checked');\n\t\t$('#end-date-daterange').css('visibility','hidden');\n\t} else {\n\t\t$('#cycle-ends-on-set-date').attr('checked', 'checked');\n\t\t$('#end-date-daterange').css('visibility','visible');\n\t}\n\tif (event.allDay) {\n\t\t$('#daterange-all-day').trigger('click');\n\t\t$('#start-time-daterange').css('visibility', 'hidden');\n\t\t$('#end-time-daterange').css('visibility', 'hidden');\n\t}\n    $('#multidatefield_range').val(event.field_name);\n    $('#event_comment_range').val(event.event_comment);\n\t\n}\n\nfunction doSpecificTimeRange(all_day, rest_of_day, start, end) {\n    if ( all_day ) {\n\t\t$('#specific-radio-all-day').trigger('click');\n        return;\n\t}\n\n    if ( rest_of_day ) {\n\t\t$('#specific-radio-start-only').trigger('click');\n        return;\n\t}\n\n\t$('#specific-radio-start-and-end').trigger('click');\n}\n\nfunction loadSpecificEvent(event) {\n\t$('.date-specific-switch').trigger('click');\n\t$('#specific-multidate-id').val(event.id);\n\t$('#start-date-specific').val(event.startDate);\n\t$('#start-time-specific').val(event.startTime);\n\t$('#end-time-specific').val(event.endTime);\n\t$('#remove-specific-link').css('display', 'block');\n\n    doSpecificTimeRange(event.allDay, event.restOfDay, event.startTime, event.endTime);\n    $('#multidatefield_specific').val(event.field_name);\n    $('#event_comment_specific').val(event.event_comment);\n}\n\nfunction removeSpecificEvent() {\n\tvar id = $('#specific-multidate-id').val();\n\tif (id.length > 0) {\n\t    if ( confirm('<?php echo $translator->trans(\"Are you sure you want to clear the event?\", array(), 'articles'); ?>') ) {\n\t        removeEvent(id);\n\t        resetSpecificForm();\n\t    }\n\t}\n}\n\nfunction removeDaterangeEvent() {\n\tvar id = $('#daterange-multidate-id').val();\n    if (id.length > 0) {\n        if ( confirm('<?php echo $translator->trans(\"Are you sure you want to clear the event?\", array(), 'articles'); ?>' ) ) {\n            removeEvent(id);\n            resetDaterangeForm();\n        }\n    }\n}\n\n\nfunction removeEvent(id) {\n\tvar url = '<?php echo $Campsite['WEBSITE_URL']; ?>/admin/multidate/remove';\n\tvar data = {'id': id};\n    var flashDelete = flashMessage(localizer.processing, null, true);\n\n    callServer(\n        url,\n        data,\n        function(res) {\n            flashDelete.fadeOut();\n            $('#full-calendar').fullCalendar( 'refetchEvents' );\n        },\n        true\n    );\n}\n\nfunction eventClick(eventId) {\n\t\n\tvar url = '<?php echo $Campsite['WEBSITE_URL']; ?>/admin/multidate/getevent';\n\tvar data = {'id': eventId};\n\tvar flashClick = flashMessage(localizer.processing, null, true);\n\n    callServer(\n        {\n            'url': url,\n            'method': 'GET'\n        },\n        data,\n        function(res) {\n            var isRecurring = res.isRecurring;\n            flashClick.fadeOut();\n            if (res.isRecurring) {\n                loadDaterangeEvent(res);\n            } else {\n                loadSpecificEvent(res);\n            }\n        },\n        true\n    );\n}\n\n$(function(){\n\t $('#specific-radio-start-only').click( function () {\n\t\t reset_specific_start_time(); \n\t});\n\t $('#specific-radio-start-and-end').click( function () {\n\t\t reset_specific_start_end_time(); \n\t});\n\t $('#specific-radio-all-day').click( function () {\n\t\t reset_specific_all_day(); \n    });\n\n\t$('.date-range-switch').click( function() {\n\t    $('#specific-dates').css('display','none');\n\t    $('#daterange-dates').css('display','block');\n\t    \n\t    $('.date-range-switch').addClass('switch-active');\n\t    $('.date-specific-switch').removeClass('switch-active');\n\t});\n\n\t$('.date-specific-switch').click( function() {\n        $('#daterange-dates').css('display','none');\n        $('#specific-dates').css('display','block');\n\n        $('.date-specific-switch').addClass('switch-active');\n        $('.date-range-switch').removeClass('switch-active');\n    });\n\n\t\n\n\treset_specific_start_time();\n\n\tvar url = '<?php echo $Campsite['WEBSITE_URL']; ?>/admin/multidate/getdates';\n\t\n\n\t$('#full-calendar').fullCalendar({\n\t\t\teventClick: function(calEvent, jsEvent, view) {\n\t\t\t\teventClick(calEvent.id);\n\t\t\t},\n\t\t\theader: {\n\t\t\t\tleft: 'prev,next today',\n\t\t\t\tcenter: 'title',\n\t\t\t\tright: 'month,agendaWeek,agendaDay'\n\t\t\t},\n\t\t \teditable: false,\n            events: function (start, end, callback) {\n                window.load_events(start, end, callback, url);\n            },\n\t\t\teventDrop: function(event, delta) {\n\t\t\t\talert(event.title + ' was moved ' + delta + ' days\\n' +\n\t\t\t\t\t'(should probably update your database)');\n\t\t\t},\n\t\t\tloading: function(bool) {\n\t\t\t\tif (bool) $('#loading').show();\n\t\t\t\telse $('#loading').hide();\n\t\t\t},\n\t\t\ttimeFormat: 'H(:mm)'\n\t});\n\n\n\t $(\"#start-date-specific\").datepicker({ dateFormat: 'yy-mm-dd' });\n\t \n\t $('#start-date-daterange').datepicker({ dateFormat: 'yy-mm-dd' });\n\t $('#end-date-daterange').datepicker({ dateFormat: 'yy-mm-dd' });\n\t \n\t $('#start-time-specific').timepicker({stepHour: 1, stepMinute: 1});\n\t $('#end-time-specific').timepicker({stepHour: 1, stepMinute: 1});\n\t $('#start-time-daterange').timepicker({stepHour: 1, stepMinute: 1});\n\t $('#end-time-daterange').timepicker({stepHour: 1, stepMinute: 1});\n\n\t $('#daterange-all-day').click(function() {\n\t\t if ($('#daterange-all-day').attr('checked') != 'checked') {\n\t\t\t $('#start-time-daterange').css('visibility','visible');\n\t\t\t $('#end-time-daterange').css('visibility','visible');\n\t\t } else {\n\t\t\t $('#start-time-daterange').css('visibility','hidden');\n\t\t\t $('#end-time-daterange').css('visibility','hidden');\n\t\t }\n\t\t\n\t });\n\n\t$('#cycle-ends-on-set-date').click(function(){\n\t\t$('#end-date-daterange').css('visibility', 'visible');\n\t\t});\n\t\n\t$('#cycle-ends-never').click(function(){\n\t\t$('#end-date-daterange').css('visibility', 'hidden');\n\t\t});\n\t\t    \n    $('#specific-radio-start-and-end').trigger('click');\n});\n\nwindow.load_events = function(start, end, callback, url) {\n// TODO: use start/end to limit the amount of loaded data\n    callServer(\n        {\n            'url': url,\n            'method': 'GET'\n        },\n        {\n            articleId : \"<?php echo $articleId?>\",\n            languageId : \"<?php echo $article->getLanguageId(); ?>\"\n        },\n        function(res) {\n            callback(res);\n        },\n        true\n    );\n\n};\n\n</script>\n\n</head>\n<body onLoad=\"return false;\" style=\"background: none repeat scroll 0 0 #FFFFFF;\">\n\n\n\n\n<div class=\"content\">\n<div id=\"multidate-box\" class=\"multidate-box\">\n<div class=\"toolbar\">\n\t<div class=\"save-button-bar\">\n\t    <input type=\"submit\" name=\"cancel\" value=\"<?php echo $translator->trans('Close'); ?>\" class=\"default-button\" onclick=\"popup_close();\" id=\"context_button_close\">\n\t</div>\n<h2><?php echo $translator->trans('Multi date events', array(), 'articles'); ?></h2>\n</div>\n\n\n<div class=\"multi-box\">\n\n<div class=\"dates\" id=\"specific-dates\" style=\"display:block\">\n<form id=\"specific-dates-form\" onsubmit=\"return false;\">\n    <input type=\"hidden\" name=\"article-number\" value=\"<?php echo Input::Get('f_article_number', 'int', 1)?>\" />\n    <input type=\"hidden\" name=\"date-type\" value=\"specific\" />\n    <input type=\"hidden\" name=\"multidateId\" id=\"specific-multidate-id\" value=\"\" />\n    \n    <div class=\"date-switch date-specific-switch switch-active border-left\" style=\"margin-left: 10px;\"><?php echo $translator->trans('Specific dates', array(), 'articles'); ?></div>\n\t<div class=\"date-switch date-range-switch\" style=\"margin-left: 4px;\"><?php echo $translator->trans('Recurring', array(), 'articles'); ?></div>\n\t\n    <input type=\"text\" id=\"start-date-specific\" name=\"start-date-specific\" class=\"multidate-input date-input\" style=\"width: 125px; margin-left: 12px; margin-top: 20px;\" readonly='true' title=\"<?php echo $translator->trans('Event date', array(), 'articles'); ?>\" /> \n\t<input type=\"text\" id=\"start-time-specific\" name=\"start-time-specific\" class=\"multidate-input time-input\" style=\"width: 128px; margin-left: 2px; margin-top: 20px;\" readonly='true' title=\"<?php echo $translator->trans('Event start time', array(), 'articles'); ?>\" /> \n\t<input type=\"text\" id=\"end-time-specific\" name=\"end-time-specific\" class=\"multidate-input time-input\" style=\"width: 128px; margin-left: 144px; margin-top: 20px; visibility: visible\" readonly='true' title=\"<?php echo $translator->trans('Event end time', array(), 'articles'); ?>\" />\n\t\n\t<div class=\"specific-radio-holder\">\n\t\t<input type=\"radio\" id=\"specific-radio-start-only\" name=\"specific-radio\" value=\"start-only\" /><label for=\"specific-radio-start-only\"><?php echo $translator->trans('Start time', array(), 'articles'); ?></label><br />\n\t\t<input type=\"radio\" id=\"specific-radio-start-and-end\" name=\"specific-radio\" value=\"start-and-end\" checked=\"checked\" /><label for=\"specific-radio-start-and-end\"><?php echo $translator->trans('Start & end time', array(), 'articles'); ?><br /></label>\n\t\t<input type=\"radio\" id=\"specific-radio-all-day\" name=\"specific-radio\" value=\"all-day\" /><label for=\"specific-radio-all-day\"><?php echo $translator->trans('All day', array(), 'articles'); ?></label>\n\t</div>\n\n    <div><hr style=\"width: 260px; margin-bottom: 10px;\"></div>\n\n        <div class=\"type-holder\">\n            <select name=\"multidatefield\" id=\"multidatefield_specific\" title=\"<?php echo $translator->trans('Event type', array(), 'articles'); ?>\">\n<?php\n    foreach ($article_type_columns as $one_column_type) {\n        if (ArticleTypeField::TYPE_COMPLEX_DATE != $one_column_type->getType()) {\n            continue;\n        }\n        if ($one_column_type->isHidden()) {\n            continue;\n        }\n        $field_name = $one_column_type->getPrintName();\n        $option_str = '<option value=\"' . $field_name . '\">' . $field_name . '';\n        echo $option_str . \"\\n\";\n    }\n?>\n            </select>\n        </div>\n        <div class=\"comment-holder\">\n            <textarea name=\"event-comment\" id=\"event_comment_specific\" rows=\"4\" cols=\"30\" title=\"<?php echo $translator->trans('Event comment', array(), 'articles'); ?>\"></textarea>\n        </div>\n\n\t<div class=\"form-action-holder\">\n\t\t<input type=\"button\" value=\"Reset form\" onclick=\"resetSpecificForm()\"; class=\"default-button\" style=\"width:127px; margin-right:3px;\"/>\n\t\t<input type=\"button\" class=\"save-button-small\" onclick=\"popup_save();\" value=\"Save\" style=\"width:129px;\";/>\n\t</div>\n\t<a href=\"#\" onclick=\"removeSpecificEvent()\" class=\"remove-link\" id=\"remove-specific-link\" style=\"display:none\"><?php echo $translator->trans(\"Remove event\", array(), 'articles'); ?></a>\n</form>\n</div>\n\n<div class=\"dates\" id=\"daterange-dates\" style=\"display: none\">\n<form id=\"daterange-dates-form\" onsubmit=\"return false;\">\n    <input type=\"hidden\" name=\"article-number\" value=\"<?php echo Input::Get('f_article_number', 'int', 1)?>\" />\n    <input type=\"hidden\" name=\"date-type\" value=\"daterange\" />\n    <input type=\"hidden\" name=\"multidateId\" id=\"daterange-multidate-id\" value=\"\" />\n    \n    <div class=\"date-switch date-specific-switch switch-active border-left\" style=\"margin-left: 10px; margin-bottom: 10px;\"><?php echo $translator->trans('Specific dates', array(), 'articles'); ?></div>\n    <div class=\"date-switch date-range-switch\" style=\"margin-left: 4px; margin-bottom: 10px;\"><?php echo $translator->trans('Recurring', array(), 'articles'); ?></div>\n    \n    <input type=\"text\" id=\"start-date-daterange\" name=\"start-date-daterange\" class=\"multidate-input date-input\"style=\"width: 125px; margin-left: 12px; margin-top: 10px;\"  readonly='true' title=\"<?php echo $translator->trans('Event first date', array(), 'articles'); ?>\" /> \n    <input type=\"text\" id=\"start-time-daterange\" name=\"start-time-daterange\" class=\"multidate-input time-input\" style=\"width: 128px; margin-left: 2px; margin-top: 10px;\" readonly='true' title=\"<?php echo $translator->trans('Event start time', array(), 'articles'); ?>\" />\n    \n    <div class=\"repeats-checkbox-holder\">\n        <input type=\"checkbox\" id=\"daterange-all-day\" name=\"daterange-all-day\" value=\"1\" / style=\"margin-top: 12px;\"><label for=\"daterange-all-day\"><?php echo $translator->trans('All day', array(), 'articles'); ?></label>\n        <input type=\"text\" id=\"end-time-daterange\" name=\"end-time-daterange\" class=\"multidate-input time-input\" style=\"float: right; width: 128px; margin-right: 11px; margin-top: 12px; margin-bottom: 20px;\"  readonly='true' title=\"<?php echo $translator->trans('Event end time', array(), 'articles'); ?>\" />\n    </div>\n\n    <div><hr style=\"width: 260px; margin-bottom: 10px;\"></div>\n\n    <select id=\"repeats-cycle\" class=\"multidate-input\" style=\"margin-left: 12px; margin-top: 10px; width: 260px;\" name=\"repeats-cycle\">\n        <option value='daily'><?php echo $translator->trans('Repeats daily', array(), 'articles'); ?></option>\n        <option value='weekly'><?php echo $translator->trans('Repeats weekly', array(), 'articles'); ?></option>\n        <option value='monthly'><?php echo $translator->trans('Repeats monthly', array(), 'articles'); ?></option>\n    </select>\n    \n    <!-- \n     <div class=\"repeats-checkbox-holder\">\n        <input type=\"checkbox\" id=\"monday\" name=\"day-repeat\" value=\"moday\"/>M\n        <input type=\"checkbox\" id=\"tuesday\" name=\"day-repeat\" value=\"tuesday\"/>T\n        <input type=\"checkbox\" id=\"wednesday\" name=\"day-repeat\" value=\"wednesday\"/>W\n        <input type=\"checkbox\" id=\"thursday\" name=\"day-repeat\" value=\"thursday\"/>T\n        <input type=\"checkbox\" id=\"friday\" name=\"day-repeat\" value=\"friday\"/>F\n        <input type=\"checkbox\" id=\"saturday\" name=\"day-repeat\" value=\"saturday\"/>S\n        <input type=\"checkbox\" id=\"sunday\" name=\"day-repeat\" value=\"sunday\"/>S\n    </div>\n     -->\n\n    <span style=\"display:block; margin-left: 16px; margin-top: 20px;\"><?php echo $translator->trans('Till', array(), 'articles'); ?></span> \n    <input type=\"text\" id=\"end-date-daterange\" name=\"end-date-daterange\" class=\"multidate-input date-input\"style=\"width: 125px; margin-left: 12px; margin-top: 12px;\"  readonly='true' title=\"<?php echo $translator->trans('Event last date', array(), 'articles'); ?>\" /> \n    \n     <div class=\"repeats-checkbox-holder\">\n       <?php echo $translator->trans('Ends', array(), 'articles'); ?>\n       <input type=\"radio\" id=\"cycle-ends-on-set-date\" name=\"cycle-ends\"  value=\"on-set-date\" style=\"display: inline; margin-left:25px;\" name=\"cycle-ends\" checked=\"checked\"/><label for=\"cycle-ends-on-set-date\"><?php echo $translator->trans('On set date', array(), 'articles');?></label><br />\n       <input type=\"radio\" id=\"cycle-ends-never\" name=\"cycle-ends\" value=\"never\" style=\"display: inline; margin-left:73px;\" /><label for=\"cycle-ends-never\"><?php echo $translator->trans('Never', array(), 'articles');?></label><br />\n    </div>\n\n    <div><hr style=\"width: 260px; margin-bottom: 10px;\"></div>\n\n        <div class=\"type-holder\">\n            <select name=\"multidatefield\" id=\"multidatefield_range\" title=\"<?php echo $translator->trans('Event type', array(), 'articles'); ?>\">\n<?php\n    foreach ($article_type_columns as $one_column_type) {\n        if (ArticleTypeField::TYPE_COMPLEX_DATE != $one_column_type->getType()) {\n            continue;\n        }\n        if ($one_column_type->isHidden()) {\n            continue;\n        }\n        $field_name = $one_column_type->getPrintName();\n        $option_str = '<option value=\"' . $field_name . '\">' . $field_name . '';\n        echo $option_str . \"\\n\";\n    }\n?>\n            </select>\n        </div>\n        <div class=\"comment-holder\">\n            <textarea name=\"event-comment\" id=\"event_comment_range\" rows=\"4\" cols=\"30\" title=\"<?php echo $translator->trans('Event comment', array(), 'articles'); ?>\"></textarea>\n        </div>\n\n    <div class=\"form-action-holder\">\n\t\t<input type=\"button\" value=\"Reset form\" onclick=\"resetDaterangeForm()\"; class=\"default-button\" style=\"width:127px; margin-right:3px;\"/>\n\t\t<input type=\"button\" class=\"save-button-small\" onclick=\"popup_save();\" value=\"Save\" style=\"width:129px;\";/>\n\t</div>\n\t<a href=\"#\" onclick=\"removeDaterangeEvent()\" class=\"remove-link\" id=\"remove-daterange-link\" style=\"display:none\"><?php echo $translator->trans(\"Remove event\", array(), 'articles'); ?></a>\n</form>\n</div>\n\n<div id=\"full-calendar\" class=\"full-calendar\" style=\"\"></div>\n</div>\n</div>\n</div>\n\n<script type=\"text/javascript\">\n    $('input.time-input').click(function(e) {\n        $('input.time-input').removeClass('clicked');\n        $(e.target).addClass('clicked');\n    });\n\n    $('.ui-datepicker-close').live('click', function() {\n        var input = $('input.time-input.clicked').first();\n        if (input.val() == '') {\n            input.val('00:00');\n            input.removeClass('clicked');\n        }\n    });\n</script>\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/admin-files/articles/playlist/popup.php",
    "content": "<?php\n    $front = Zend_Controller_Front::getInstance();\n    $front->getRequest()\n        ->clearParams()\n        ->setDispatched(false)\n        ->clearParams()\n        ->setActionName('article')\n        ->setControllerName('playlist')\n        ->setModuleName('admin')\n        ->setParam('id', Input::Get('f_article_number', 'int', 1) );\n        ;\n    $front->getDispatcher()->dispatch($front->getRequest(), $front->getResponse());\n    $front->getResponse()->getBody();\n?>"
  },
  {
    "path": "newscoop/admin-files/articles/post.php",
    "content": "<?php\nheader('Content-Type: application/json');\ndefine(\"STATUS_APPROVED\",\"approved\");\ndefine(\"STATUS_HIDDEN\",\"hidden\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/article_common.php\");\n\nif (!SecurityToken::isValid()) {\n\t$data = new stdclass();\n\t$data->Results = new stdclass();\n\t$data->Results->f_message = $translator->trans('Invalid security token!');\n\techo json_encode($data);\n\texit;\n}\n\n$f_publication_id = Input::Get('f_publication_id', 'int', 0, true);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0, true);\n$f_section_number = Input::Get('f_section_number', 'int', 0, true);\n$f_language_id = Input::Get('f_language_id', 'int', 0, true);\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n$f_article_number = Input::Get('f_article_number', 'int', 0);\n$f_article_author = Input::Get('f_article_author', 'array', array(), true);\n$f_article_author_type = Input::Get('f_article_author_type', 'array', array(), true);\n$f_article_title = Input::Get('f_article_title');\n$f_message = Input::Get('f_message', 'string', '', true);\n$f_creation_date = Input::Get('f_creation_date');\n$f_publish_date = Input::Get('f_publish_date', 'string', '', true);\n$f_comment_status = Input::Get('f_comment_status', 'string', '', true);\n$data = new stdclass();\n$data->Results = new stdclass();\n$data->Results->f_publication_id = $f_publication_id;\n$data->Results->f_issue_number = $f_issue_number;\n$data->Results->f_section_number = $f_section_number;\n$data->Results->f_language_id = $f_language_id;\n$data->Results->f_language_selected = $f_language_selected;\n$data->Results->f_article_number = $f_article_number;\n$data->Results->f_article_author = $f_article_author;\n$data->Results->f_article_author_type = $f_article_author_type;\n$data->Results->f_article_title = $f_article_title;\n$data->Results->f_message = $f_message;\n$data->Results->f_creation_date = $f_creation_date;\n$data->Results->f_publish_date = $f_publish_date;\n$data->Results->f_comment_status = $f_comment_status;\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), isset($BackLink) ? $Backlink : null);\n\texit;\n}\n\n// Fetch article\n$articleObj = new Article($f_language_selected, $f_article_number);\nif (!$articleObj->exists()) {\n\tcamp_html_display_error($translator->trans('No such article.', array(), 'articles'), $BackLink);\n\texit;\n}\n\n$articleTypeObj = $articleObj->getArticleData();\n$dbColumns = $articleTypeObj->getUserDefinedColumns(false, true);\n\n$articleFields = array();\nforeach ($dbColumns as $dbColumn) {\n    if ($dbColumn->getType() == ArticleTypeField::TYPE_BODY) {\n        $dbColumnParam = $dbColumn->getName() . '_' . $f_article_number;\n    } else {\n        $dbColumnParam = $dbColumn->getName();\n    }\n    if (isset($_REQUEST[$dbColumnParam])) {\n        if($dbColumn->getType() == ArticleTypeField::TYPE_TEXT\n            && $dbColumn->getMaxSize()!=0\n            && $dbColumn->getMaxSize()!='') {\n                $fieldValue = trim(Input::Get($dbColumnParam));\n                $articleFields[$dbColumn->getName()] = mb_strlen($fieldValue, 'utf8') > $dbColumn->getMaxSize()\n                    ? substr($fieldValue, 0, $dbColumn->getMaxSize())\n                    : $fieldValue;\n        } else {\n            $articleFields[$dbColumn->getName()] = trim(Input::Get($dbColumnParam));\n        }\n    } else {\n        unset($articleFields[$dbColumn->getName()]); // ignore if not set\n    }\n}\n\nif (!empty($f_message)) {\n\tcamp_html_add_msg($f_message, \"ok\");\n}\n\nif (!$articleObj->userCanModify($g_user)) {\n\tcamp_html_add_msg($translator->trans(\"You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.\", array(), 'articles'));\n\tcamp_html_goto_page($BackLink);\n\texit;\n}\n// Only users with a lock on the article can change it.\nif ($articleObj->isLocked() && ($g_user->getUserId() != $articleObj->getLockedByUser())) {\n\t$diffSeconds = time() - strtotime($articleObj->getLockTime());\n\t$hours = floor($diffSeconds/3600);\n\t$diffSeconds -= $hours * 3600;\n\t$minutes = floor($diffSeconds/60);\n\t$lockUser = new User($articleObj->getLockedByUser());\n\tcamp_html_add_msg($translator->trans('Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.', array('$1' => $lockUser->getRealName(), '$2' => $hours, '$3' => $minutes), 'articles'));\n\tcamp_html_goto_page($BackLink);\n\texit;\n}\n\n// Update the article author\n    $blogService = Zend_Registry::get('container')->getService('blog');\n    $blogInfo = $blogService->getBlogInfo($g_user);\n    if (!empty($f_article_author)) {\n        $em = Zend_Registry::get('container')->getService('em');\n        $dispatcher = Zend_Registry::get('container')->getService('dispatcher');\n        $language = $em->getRepository('Newscoop\\Entity\\Language')->findOneById($articleObj->getLanguageId());\n        $authors = $em->getRepository('Newscoop\\Entity\\ArticleAuthor')->getArticleAuthors($articleObj->getArticleNumber(), $language->getCode())->getArrayResult();\n\n        ArticleAuthor::OnArticleLanguageDelete($articleObj->getArticleNumber(), $articleObj->getLanguageId());\n        foreach ($authors as $author) {\n            $dispatcher->dispatch(\"user.set_points\", new \\Newscoop\\EventDispatcher\\Events\\GenericEvent($this, array('authorId' => $author['fk_author_id'])));\n        }\n\n        $i = 0;\n        foreach ($f_article_author as $author) {\n            $authorObj = new Author($author);\n            $author = trim($author);\n            if (!$authorObj->exists() && isset($author[0])) {\n                if ($blogService->isBlogger($g_user)) { // blogger can't create authors\n                    continue;\n                }\n\n                $authorData = Author::ReadName($author);\n                $authorObj->create($authorData);\n            } elseif ($blogService->isBlogger($g_user)) { // test if using authors from blog\n                if (!$blogService->isBlogAuthor($authorObj, $blogInfo)) {\n                    continue;\n                }\n            }\n\n            // Sets the author type selected\n            $author_type = $f_article_author_type[$i];\n            $authorObj->setType($author_type);\n            // Links the author to the article\n            if ($authorObj->getId() != 0) {\n                $articleAuthorObj = new ArticleAuthor($articleObj->getArticleNumber(),\n                                                  $articleObj->getLanguageId(),\n                                                  $authorObj->getId(), $author_type, $i + 1);\n            }\n\n            if (isset($articleAuthorObj) && !$articleAuthorObj->exists()) {\n                $articleAuthorObj->create();\n                $dispatcher->dispatch(\"user.set_points\", new \\Newscoop\\EventDispatcher\\Events\\GenericEvent($this, array('authorId' => $articleAuthorObj->getAuthorId())));\n            }\n\n            $i++;\n        }\n    }\n\n$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n// Update the article.\n$articleObj->setTitle($f_article_title);\n$articleObj->setIsIndexed(false);\n\nif (!empty($f_comment_status)) {\n    if ($f_comment_status == \"enabled\" || $f_comment_status == \"locked\") {\n        $commentsEnabled = true;\n    } else {\n        $commentsEnabled = false;\n    }\n    // If status has changed, then you need to show/hide all the comments\n    // as appropriate.\n    if ($articleObj->commentsEnabled() != $commentsEnabled) {\n\t    $articleObj->setCommentsEnabled($commentsEnabled);\n        global $controller;\n        $repository = $controller->getHelper('entity')->getRepository('Newscoop\\Entity\\Comment');\n\t    $repository->setArticleStatus($f_article_number, $f_language_selected, $commentsEnabled?STATUS_APPROVED:STATUS_HIDDEN);\n\t    $repository->flush();\n    }\n    $articleObj->setCommentsLocked($f_comment_status == \"locked\");\n    $cacheKey = $cacheService->getCacheKey(array('are_comments_enabled', $articleObj->getProperty('IdPublication'), $articleObj->getProperty('Type'), $articleObj->getArticleNumber(), $articleObj->getLanguageId()), 'publication');\n    $cacheService->delete($cacheKey);\n}\n\n// Make sure that the time stamp is updated.\n$articleObj->setProperty('time_updated', 'NOW()', true, true);\n\n// Verify creation date is in the correct format.\n// If not, dont change it.\nif (preg_match(\"/\\d{4}-\\d{2}-\\d{2}/\", $f_creation_date)) {\n\t$articleObj->setCreationDate($f_creation_date);\n}\n\n// Verify publish date is in the correct format.\n// If not, dont change it.\nif (preg_match(\"/\\d{4}-\\d{2}-\\d{2}/\", $f_publish_date)) {\n\t$articleObj->setPublishDate($f_publish_date);\n}\n\nforeach ($articleFields as $dbColumnName => $text) {\n    $articleTypeObj->setProperty($dbColumnName, $text);\n}\n\nLog::ArticleMessage($articleObj, $translator->trans('Content edited', array(), 'articles'), $g_user->getUserId(), 37);\nArticleIndex::RunIndexer(3, 10, true);\n\nif (CampTemplateCache::factory()) {\n    CampTemplateCache::factory()->update(array(\n        'language' => $articleObj->getLanguageId(),\n        'publication' => $articleObj->getPublicationId(),\n        'issue' => $articleObj->getIssueNumber(),\n        'section' => $articleObj->getSectionNumber(),\n        'article' => $articleObj->getArticleNumber(),\n    ), !($articleObj->isPublished() || $articleObj->m_published));\n}\n\n$cacheService->clearNamespace('authors');\n$cacheService->clearNamespace('article');\n$cacheService->clearNamespace('article_type');\n$cacheService->clearNamespace('boxarticles');\n\necho json_encode($data);\nexit;\n"
  },
  {
    "path": "newscoop/admin-files/articles/preview.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/article_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Alias.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ShortURL.php');\n\nuse Newscoop\\Service\\ISyncResourceService;\nuse Newscoop\\Service\\IIssueService;\nuse Newscoop\\Service\\IOutputService;\n\n//@New theme management\nuse Newscoop\\Service\\Resource\\ResourceId;\nuse Newscoop\\Service\\IThemeManagementService;\nuse Newscoop\\Service\\IOutputSettingIssueService;\nuse Newscoop\\Service\\IOutputSettingSectionService;\nuse Newscoop\\Entity\\Output\\OutputSettingsIssue;\n\nheader(\"Expires: Thu, 01 Jan 1970 00:00:00 GMT\");\nheader(\"Last-Modified: \" . gmdate(\"D, d M Y H:i:s\") . \" GMT\");\nheader(\"Cache-Control: no-store, no-cache, must-revalidate\");\nheader(\"Content-Type: text/html; charset=UTF-8\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n$f_language_id = Input::Get('f_language_id', 'int', 0);\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n$f_publication_id = Input::Get('f_publication_id', 'int', 0);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0);\n$f_section_number = Input::Get('f_section_number', 'int', 0);\n$f_article_number = Input::Get('f_article_number', 'int', 0);\n\n$languageObj = new Language($f_language_selected);\n$publicationObj = new Publication($f_publication_id);\n$issueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\n$sectionObj = new Section($f_publication_id, $f_issue_number, $f_language_id, $f_section_number);\n$articleObj = new Article($f_language_selected, $f_article_number);\n\n$errorStr = \"\";\n\nif (!$articleObj->exists()) {\n\t$errorStr = $translator->trans('There was an error reading request parameters.', array(), 'articles');\n\tcamp_html_display_error($errorStr, null, true);\n}\n\n/**\n * @author Mihai Balaceanu <mihai.balaceanu@sourcefabric.org>\n * New theme management\n */\n\n$resourceId = new ResourceId('Publication/Edit');\n$themeManagementService = $resourceId->getService(IThemeManagementService::NAME_1);\n/* @var $themeManagementService \\Newscoop\\Service\\Implementation\\ThemeManagementServiceLocal */\n$outputSettingSectionService = $resourceId->getService(IOutputSettingSectionService::NAME);\n/* @var $outputSettingSectionService \\Newscoop\\Service\\Implementation\\OutputSettingSectionServiceDoctrine */\n$outputSettingIssueService = $resourceId->getService(IOutputSettingIssueService::NAME);\n/* @var $outputSettingIssueService \\Newscoop\\Service\\Implementation\\OutputSettingIssueServiceDoctrine */\n$issueService = $resourceId->getService(IIssueService::NAME);\n/* @var $issueService \\Newscoop\\Service\\Implementation\\IssueServiceDoctrine */\n$outputService = $resourceId->getService(IOutputService::NAME);\n$syncRsc = $resourceId->getService(ISyncResourceService::NAME);\n\n$outputSectionSettings = current($outputSettingSectionService->findBySection($sectionObj->getSectionId()));\n/* @var $outputIssueSettings \\Newscoop\\Entity\\Output\\OutputSettingsIssue */\n$outputIssueSettings = current($outputSettingIssueService->findByIssue($issueObj->getIssueId()));\n/* @var $outputIssueSettings \\Newscoop\\Entity\\Output\\OutputSettingsIssue */\n\n$publicationThemes = $themeManagementService->getThemes($publicationObj->getPublicationId());\n\nif (!$outputIssueSettings) {\n    if (count($publicationThemes) > 0) {\n        $themePath = $publicationThemes[0]->getPath();\n        $outputIssueSettings = new OutputSettingsIssue();\n        $outputIssueSettings->setOutput($outputService->findByName('Web'));\n        $outputIssueSettings->setIssue($issueService->getById($issueObj->getIssueId()));\n        $outputIssueSettings->setThemePath($syncRsc->getThemePath($themePath));\n        $outputIssueSettings->setFrontPage(null);\n        $outputIssueSettings->setSectionPage(null);\n        $outputIssueSettings->setArticlePage(null);\n        $outputSettingIssueService->insert($outputIssueSettings);\n    } else {\n        $errorStr = $translator->trans('This issue cannot be previewed. Please make sure the publication has a theme assigned.', array(), 'articles');\n        camp_html_display_error($errorStr, null, true);\n    }\n} else {\n    $themePath = $outputIssueSettings->getThemePath()->getPath();\n}\nif ($outputSectionSettings instanceof OutputSettingsSection) {\n    $articlePage = $outputSectionSettings->getArticlePage();\n} else {\n    $articlePage = $outputIssueSettings->getArticlePage();\n}\nif (is_null($articlePage)) {\n    foreach ($publicationThemes as $publicationTheme) {\n        if ($publicationTheme->getPath() == $themePath) {\n            $themeOutSettings = $themeManagementService->findOutputSetting($publicationTheme, $outputService->findByName('Web'));\n            $articlePage = $themeOutSettings->getArticlePage();\n        }\n    }\n}\n$templateId = $articlePage->getPath();\n$templateName = substr($templateId, strlen($themePath));\n\nif (!$templateId) {\n\t$errorStr = $translator->trans('This article cannot be previewed. Please make sure it has the article template selected.', array(), 'articles');\n\tcamp_html_display_error($errorStr, null, true);\n}\n\nif (!isset($_SERVER['SERVER_PORT'])) {\n\t$_SERVER['SERVER_PORT'] = 80;\n}\n$scheme = '//';\n$siteAlias = new Alias($publicationObj->getDefaultAliasId());\n$websiteURL = $scheme.$siteAlias->getName() . $GLOBALS['Campsite']['SUBDIR'];\n\n$accessParams = \"LoginUserId=\" . $g_user->getUserId()\n\t\t\t\t. \"&AdminAccess=all\";\nif ($publicationObj->getUrlTypeId() == 1) {\n\t$url = \"$websiteURL/tpl/$templateName?IdLanguage=$f_language_id\"\n\t\t. \"&IdPublication=$f_publication_id&NrIssue=$f_issue_number&NrSection=$f_section_number\"\n\t\t. \"&NrArticle=$f_article_number&$accessParams\";\n} else {\n\t$url = ShortURL::GetURL($f_publication_id, $f_language_selected, null, null, $f_article_number);\n\tif (!is_string($url) && PEAR::isError($url)) {\n\t\t$errorStr = $url->getMessage();\n\t}\n\t$url .= '?' . $accessParams;\n    $url = preg_replace('@^https?://@i', $scheme, $url);\n}\n\n$selectedLanguage = (int)CampRequest::GetVar('f_language_selected');\n$url .= \"&previewLang=$selectedLanguage\";\n$siteTitle = (!empty($Campsite['site']['title'])) ? htmlspecialchars($Campsite['site']['title']) : $translator->trans(\"Newscoop\", array(), 'articles') . $Campsite['VERSION'];\n?>\n<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\n<html xmlns=\"http://www.w3.org/1999/xhtml\" dir=\"ltr\" lang=\"en\" xml:lang=\"en\">\n<head>\n  <title><?php p($siteTitle); ?></title>\n</head>\n<?php\nif ($errorStr != \"\") {\n\tcamp_html_display_error($errorStr, null, true);\n}\n\nif ($g_user->hasPermission(\"ManageTempl\") || $g_user->hasPermission(\"DeleteTempl\")) {\n\t// Show dual-pane view for those with template management priviledges\n?>\n  <frameset id=\"frameset\" rows=\"*, 30px\" border=\"1\">\n    <frame name=\"preview\" src=\"<?php print \"$url&preview=on\"; ?>\" name=\"body\" frameborder=\"1\">\n    <frame name=\"e\" src=\"empty.php\" frameborder=\"1\">\n  </frameset>\n<?php\n} else {\n\t// Show single pane for everyone else.\n?>\n  <frameset rows=\"100%\">\n    <frame src=\"<?php print \"$url&preview=on\"; ?>\" name=\"body\" frameborder=\"1\">\n  </frameset>\n<?php\n}\n?>\n</html>\n"
  },
  {
    "path": "newscoop/admin-files/articles/translate.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/articles/article_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbObjectArray.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n// Optional input parameters\n$f_publication_id = Input::Get('f_publication_id', 'int', 0, true);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0, true);\n$f_section_number = Input::Get('f_section_number', 'int', 0, true);\n$f_language_id = Input::Get('f_language_id', 'int', 0, true);\n\n$f_article_code = Input::Get('f_article_code', 'string', 0);\n$BackLink = Input::Get('Back', 'string', \"/$ADMIN/articles/?f_publication_id=$f_publication_id&f_issue_number=$f_issue_number&f_section_number=$f_section_number&f_language_id=$f_language_id\", true);\n\nlist($articleNumber, $languageId) = explode(\"_\", $f_article_code);\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $BackLink);\n\texit;\n}\n\n$articleObj = new Article($languageId, $articleNumber);\nif (!$articleObj->exists()) {\n\tcamp_html_display_error($translator->trans('Article does not exist.'), $BackLink);\n\texit;\n}\n\n$f_publication_id = ($f_publication_id > 0) ? $f_publication_id : $articleObj->getPublicationId();\n$f_issue_number = ($f_issue_number > 0) ? $f_issue_number : $articleObj->getIssueNumber();\n$f_section_number = ($f_section_number > 0) ? $f_section_number : $articleObj->getSectionNumber();\n\nif ($f_publication_id > 0) {\n\t$publicationObj = new Publication($f_publication_id);\n\tif (!$publicationObj->exists()) {\n\t\tcamp_html_display_error($translator->trans('Publication does not exist.'), $BackLink);\n\t\texit;\n\t}\n\n\t$issueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\n\tif (!$issueObj->exists()) {\n\t\tcamp_html_display_error($translator->trans('No such issue.'), $BackLink);\n\t\texit;\n\t}\n\n\t$sectionObj = new Section($f_publication_id, $f_issue_number, $f_language_id, $f_section_number);\n\tif (!$sectionObj->exists()) {\n\t\tcamp_html_display_error($translator->trans('No such section.'), $BackLink);\n\t\texit;\n\t}\n}\n\nif (!$g_user->hasPermission(\"TranslateArticle\")) {\n\t$errorStr = $translator->trans('You do not have the right to translate articles.', array(), 'articles');\n\tcamp_html_display_error($errorStr, $BackLink);\n\texit;\n}\n\n// When the user selects a language the form is submitted to the same page (translation.php).\n// Read article translation form input values for the case when the page has been reloaded\n// because of language select.\n$f_translation_title = Input::Get('f_translation_title', 'string', '', true);\n$f_language_selected = Input::Get('f_translation_language', 'int', 0, true);\n$f_translation_language = Input::Get('f_translation_language', 'int', 0, true);\n\nif ($f_publication_id > 0) {\n\t$f_translation_issue_name = Input::Get('f_issue_name', 'string', $issueObj->getName(), true);\n\t$f_translation_issue_urlname = Input::Get('f_issue_urlname', 'string', $issueObj->getUrlName(), true);\n\t$f_translation_section_name = Input::Get('f_section_name', 'string', $sectionObj->getName(), true);\n\t$f_translation_section_urlname = Input::Get('f_section_urlname', 'string', $sectionObj->getUrlName(), true);\n}\n\n$allLanguages = Language::GetLanguages(null, null, null, array(),\narray(array('field'=>'byname', 'dir'=>'asc')), true);\n$articleLanguages = $articleObj->getLanguages();\n$articleLanguages = DbObjectArray::GetColumn($articleLanguages, \"Id\");\n\nif ( ($f_language_selected > 0) && ($f_issue_number > 0) ) {\n\t$translationIssueObj = new Issue($f_publication_id, $f_language_selected, $f_issue_number);\n\t$translationSectionObj = new Section($f_publication_id, $f_issue_number, $f_language_selected, $f_section_number);\n}\n\nif ($f_publication_id > 0) {\n\t$topArray = array('Pub' => $publicationObj, 'Issue' => $issueObj,\n\t\t\t\t\t  'Section' => $sectionObj, 'Article'=>$articleObj);\n\tcamp_html_content_top($translator->trans('Translate article', array(), 'articles'), $topArray, true, true);\n} else {\n\t$crumbs = array();\n\t$crumbs[] = array($translator->trans(\"Actions\"), \"\");\n\t$crumbs[] = array($translator->trans('Translate article', array(), 'articles'), \"\");\n\techo camp_html_breadcrumbs($crumbs);\n}\n?>\n<table cellpadding=\"1\" cellspacing=\"0\" class=\"action_buttons\" style=\"padding-top: 10px;\">\n<tr>\n\t<?php if ($f_publication_id > 0) { ?>\n\t<td><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/left_arrow.png\" BORDER=\"0\"></td>\n\t<td><a href=\"<?php echo \"index.php?f_publication_id=$f_publication_id&f_issue_number=$f_issue_number&f_section_number=$f_section_number&f_language_id=$f_language_id\"; ?>\"><b><?php echo $translator->trans(\"Article List\", array(), 'articles'); ?></b></a></td>\n\t<?php } ?>\n\t<td <?php if ($f_publication_id > 0) { ?>style=\"padding-left: 20px;\"<?php } ?>><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/left_arrow.png\" BORDER=\"0\"></td>\n\t<td><a href=\"<?php echo camp_html_article_url($articleObj, $f_language_id, \"edit.php\"); ?>\"><b><?php echo $translator->trans(\"Back to Edit Article\"); ?></b></a></td>\n</table>\n\n<?php camp_html_display_msgs(); ?>\n<P>\n<FORM NAME=\"article_translate\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/articles/do_translate.php\" onsubmit=\"return <?php camp_html_fvalidate(); ?>;\">\n<?php echo SecurityToken::FormParameter(); ?>\n<INPUT TYPE=\"HIDDEN\" NAME=\"f_article_code\" VALUE=\"<?php  p($f_article_code); ?>\">\n<?php if ($f_publication_id > 0) { ?>\n<INPUT TYPE=\"HIDDEN\" NAME=\"f_language_id\" VALUE=\"<?php  p($f_language_id); ?>\">\n<input type='hidden' name='f_publication_id' value=\"<?php p($f_publication_id); ?>\">\n<input type='hidden' name='f_issue_number' value=\"<?php p($f_issue_number); ?>\">\n<input type='hidden' name='f_section_number' value=\"<?php p($f_section_number); ?>\">\n<?php } ?>\n\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" class=\"box_table\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B><?php echo $translator->trans(\"Translate article\", array(), 'articles'); ?></B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" valign=\"top\"><?php echo $translator->trans(\"Article name ($1)\", array('$1' => $articleObj->getLanguageName()), 'articles'); ?>:</TD>\n\t<TD><?PHP p(htmlspecialchars($articleObj->getTitle())); ?></td>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"New article name\", array(), 'articles'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" NAME=\"f_translation_title\" SIZE=\"32\" value=\"<?php echo htmlspecialchars($f_translation_title); ?>\" class=\"input_text\" alt=\"blank\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => $translator->trans('Name'))); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Language\"); ?>:</TD>\n\t<TD>\n    <SELECT NAME=\"f_translation_language\" class=\"input_select\" alt=\"select\" <?php if ($f_publication_id > 0) { ?>ONCHANGE=\"this.form.action = '/<?php echo $ADMIN; ?>/articles/translate.php'; this.form.submit();\"<?php } ?> emsg=\"<?php echo $translator->trans(\"You must choose a language\", array(), 'articles'); ?>\">\n\t<option></option>\n\t<?php\n\t// Show all the languages that have not yet been translated.\n\t$displayLanguages = array();\n\tforeach ($allLanguages as $language) {\n\t\tif (!in_array($language->getLanguageId(), $articleLanguages)) {\n\t\t\t$displayLanguages[$language->getLanguageId()] = $language->getNativeName();\n\t\t}\n\t}\n\tasort($displayLanguages);\n\tforeach ($displayLanguages as $tmpLangId => $nativeName) {\n\t\tcamp_html_select_option($tmpLangId, $f_language_selected, $nativeName);\n\t}\n\t?>\n\t</SELECT>\n\t</TD>\n</TR>\n<?php\n\t$canCreate = true;\n\tif ( ($f_language_selected > 0) && ($f_issue_number > 0) ) {\n\t\t// Every article must live inside a cooresponding issue of the same language.\n\t\tif (!$translationIssueObj->exists()) {\n\n\t\t\tif ($g_user->hasPermission(\"ManageIssue\")) {\n\n\t\t\t\t// If a section needs to be translated, but the user doesnt have the permission\n\t\t\t\t// to create a section, then we dont want to display anything here.  Even\n\t\t\t\t// if they can create the issue, they still need to create a cooresponding section.\n\t\t\t\t// If they dont have the permission to do that, then no use in creating the issue.\n\t\t\t\tif ($translationSectionObj->exists() || $g_user->hasPermission(\"ManageSection\")) {\n?>\n<TR>\n\t<TD colspan=\"2\" align=\"left\" style=\"padding-left: 40px; padding-right: 40px; padding-top: 20px;\"><strong><?php echo $translator->trans(\"An issue must be created for the selected language.  Please enter the issue name and URL name.\", array(), 'articles'); ?></strong></TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"New issue name\", array(), 'articles'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" NAME=\"f_issue_name\" SIZE=\"32\" value=\"<?php echo htmlspecialchars($f_translation_issue_name) ?>\" class=\"input_text\" alt=\"blank\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => $translator->trans('Issue Name', array(), 'articles'))); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"New issue URL name\", array(), 'articles'); ?>:</TD>\n\t<TD valign=\"bottom\">\n\t<INPUT TYPE=\"TEXT\" NAME=\"f_issue_urlname\" SIZE=\"20\" value=\"<?php echo htmlspecialchars($f_translation_issue_urlname) ?>\" class=\"input_text\" alt=\"blank\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => $translator->trans('Issue URL Name', array(), 'articles'))); ?>\">\n\t</TD>\n</TR>\n<?php\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t$canCreate = false;\n?>\n<TR>\n\t<TD colspan=\"2\" align=\"left\" class=\"error_message\" style=\"padding-left: 40px; padding-right: 40px; padding-top: 20px; padding-bottom: 20px;\"><?php echo $translator->trans('An issue must be created for the selected language but you do not have the right to create an issue.', array(), 'articles'); ?></TD>\n</TR>\n<?php\n\t\t\t}\n\t\t}\n\n\t\tif (!$translationSectionObj->exists()) {\n\n\t\t\tif ($g_user->hasPermission(\"ManageSection\")) {\n\n\t\t\t\t// If an issue needs to be translated, but the user doesnt have the permission\n\t\t\t\t// to create an issue, then we dont want to display anything here.  Even\n\t\t\t\t// if they can create the section, they still need to create a cooresponding issue.\n\t\t\t\tif ($translationIssueObj->exists() || $g_user->hasPermission(\"ManageIssue\")) {\n?>\n<TR>\n\t<TD colspan=\"2\" align=\"left\" style=\"padding-left: 40px; padding-right: 40px; padding-top: 20px;\"><strong><?php echo $translator->trans(\"A section must be created for the selected language.  Please enter the section name and URL name.\", array(), 'articles'); ?></strong></TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"New section name\", array(), 'articles'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" NAME=\"f_section_name\" SIZE=\"32\" maxlength=\"255\" value=\"<?php echo htmlspecialchars($f_translation_section_name) ?>\" class=\"input_text\" alt=\"blank\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => $translator->trans('Section Name', array(), 'articles'))); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"New section URL name\", array(), 'articles'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" NAME=\"f_section_urlname\" SIZE=\"20\" value=\"<?php echo htmlspecialchars($f_translation_section_urlname) ?>\" class=\"input_text\" alt=\"blank\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => $translator->trans('Section URL Name', array(), 'articles'))); ?>\">\n\t</TD>\n</TR>\n<?php\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t$canCreate = false;\n?>\n<TR>\n\t<TD colspan=\"2\" align=\"left\" class=\"error_message\" style=\"padding-left: 40px; padding-right: 40px; padding-top: 20px; padding-bottom: 20px;\"><?php echo $translator->trans('A section must be created for the selected language but you do not have the right to create a section.', array(), 'articles'); ?></TD>\n</TR>\n<?php\n\t\t\t}\n\t\t}\n?>\n<?php\n\t}\n\tif ($canCreate) {\n?>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\">\n\t<INPUT TYPE=\"submit\" NAME=\"Save\" VALUE=\"<?php  echo $translator->trans('Save'); ?>\" class=\"button\">\n\t</TD>\n</TR>\n<?php\n\t}\n?>\n</TABLE>\n</FORM>\n<P>\n<script>\ndocument.article_translate.f_translation_title.focus();\n</script>\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/backup.php",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nrequire_once(CS_PATH_SITE.DIR_SEP . 'scripts' . DIR_SEP . 'file_processing.php');\n\n// check permission\nif (!$g_user->hasPermission('ManageBackup')) {\n    camp_html_display_error($translator->trans(\"You do not have the right to manage backups.\", array(), 'home'));\n    exit;\n}\n\n// make backup list and define file name based on index\n$files = getBackupList();\n$fileIndex = Input::Get('index', 'integer', 0);\nif (!empty($files[$fileIndex]['name'])) {\n    $file = CS_PATH_SITE . DIR_SEP . 'backup' . DIR_SEP . $files[$fileIndex]['name'];\n} else {\n    $file = null;\n}\n\n// main controller\n$action = Input::Get('action', 'string', null);\nswitch ($action) {\n\n    case 'backup':\n        set_time_limit(0);\n        ob_end_flush();\n        flush();\n        echo str_repeat(' ', 2048);\n        echo '<pre>';\n        $options = array('--default-dir', '--keep-session');\n        include CS_PATH_SITE.DIR_SEP . 'bin' . DIR_SEP . 'newscoop-backup';\n        echo '</pre><script type=\"text/javascript\">window.opener.location.reload();</script>';\n        echo '<center><a href=# onclick=\"window.close()\">'.$translator->trans('Close').'</a></center>';\n        exit(0);\n\n    case 'delete':\n        if (!is_readable($file)) {\n            camp_html_goto_page(\"/$ADMIN/backup.php\");\n        }\n        $do = unlink($file);\n        if($do === true) {\n            camp_html_add_msg($translator->trans('The file $1 was deleted successfully.', array('$1' => basename($file)), 'home'), 'ok');\n        } else {\n            camp_html_add_msg($translator->trans('There was an error trying to delete the file $1.', array('$1' => basename($file)), 'home'));\n        }\n        camp_html_goto_page(\"/$ADMIN/backup.php\");\n        break;\n\n    case 'restore':\n        if (!is_readable($file)) {\n            camp_html_goto_page(\"/$ADMIN/backup.php\");\n        }\n        set_time_limit(0);\n        ob_end_flush();\n        flush();\n        echo str_repeat(' ', 2048);\n        echo '<pre>';\n        $options = array(\n            'f' => true,\n            'e' => true,\n            'b' => $file,\n            '--keep-session'\n        );\n        include CS_PATH_SITE.DIR_SEP . 'bin' . DIR_SEP . 'newscoop-restore';\n        echo '</pre><script type=\"text/javascript\">window.opener.location.reload();</script>';\n        echo '<center><a href=# onclick=\"window.close()\">'.$translator->trans('Close').'</a></center>';\n        exit(0);\n\n    case 'download':\n        if (!is_readable($file)) {\n            camp_html_goto_page(\"/$ADMIN/backup.php\");\n        }\n        header('Content-Disposition: attachment; filename=' . basename($file));\n        header('Content-Length: ' . filesize($file));\n        header('Content-Type: application/x-gzip');\n        header('Cache-Control: must-revalidate, post-check=0, pre-check=0');\n        header('Content-Transfer-Encoding: binary');\n        set_time_limit(0);\n\t\t// it looks that a problem could happen here if the server is out of its disk space\n\t\ttry {\n\t        $fp = fopen($file, 'r');\n\t        while (!feof($fp)) {\n\t            print(fread($fp, 8192));\n\t            flush();\n\t            ob_flush();\n\t        }\n\t        fclose($fp);\n\t\t}\n\t\tcatch (Exception $exc) {\n\t\t\techo $translator->trans('Download was not successful. Check please that the server is not out of disk space.', array(), 'home');\n\t\t}\n        exit(0);\n\n    case 'upload':\n        foreach ($_FILES as $file) {\n\t\t\tif (UPLOAD_ERR_OK != $file['error']) {\n\t\t\t\t$err_msg = camp_upload_errors($file['error']);\n                camp_html_add_msg($translator->trans('Upload of file $1 was not successful.', array('$1' => $file['name']), 'home') . ' ' . $err_msg);\n\t\t\t\tcontinue;\n\t\t\t}\n\n            if ($file['type'] == 'application/x-tar' || $file['type'] == 'application/x-gzip'\n            || $file['type'] == 'application/gzip' || $file['type'] == 'application/x-compressed-tar') {\n\t\t\t\t// if not enough space, throws exception on the move attempt\n\t\t\t\t$move_failed = false;\n\t\t\t\t$move_dest = CS_PATH_SITE . DIR_SEP . 'backup' . DIR_SEP . $file['name'];\n\t\t\t\ttry {\n\t\t\t\t\tmove_uploaded_file($file['tmp_name'], $move_dest);\n\t\t\t\t\tcamp_html_add_msg($translator->trans('The file $1 has been uploaded successfully.', array('$1' => $file['name']), 'home'), 'ok');\n\t\t\t\t}\n\t\t\t\tcatch (Exception $exc) {\n\t\t\t\t\t$move_failed = true;\n\t\t\t\t\tcamp_html_add_msg($translator->trans('The file $1 could not be moved. Check you have enough of disk space.', array('$1' => $file['name']), 'home'));\n\t\t\t\t}\n\t\t\t\t// try to remove the (partially) moved file if the move was not successful\n\t\t\t\tif ($move_failed) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tunlink($move_dest);\n\t\t\t\t\t}\n\t\t\t\t\tcatch (Exception $exc) {}\n\t\t\t\t}\n            } else {\n                camp_html_add_msg($translator->trans(\"You have tried to upload an invalid backup file.\", array(), 'home'));\n            }\n        }\n        $files = getBackupList();\n        break;\n}\n\n// show breadcrumbs\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Actions\"), \"\");\n$crumbs[] = array($translator->trans(\"Backup/Restore\", array(), 'home'), \"\");\n$breadcrumbs = camp_html_breadcrumbs($crumbs);\necho $breadcrumbs;\n\n$controller->view->headTitle($translator->trans(\"Backup/Restore\", array(), 'home').' - Newscoop Admin', 'SET');\n\n\n// view template\n?>\n<script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/campsite.js\"></script>\n\n<!--  CONTENT  -->\n<div class=\"wrapper mid-sized\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"action_buttons\">\n    <tr>\n    <td valign=\"bottom\"><b><?php echo $translator->trans(\"Free disk space\", array(), 'home') . ': '\n        . ceil(disk_free_space($Campsite['CAMPSITE_DIR'])/1024/1024) . ' ' . $translator->trans('MiB', array(), 'home');?></b></td>\n    <td valign=\"bottom\" style=\"padding-left: 10px;\">\n        <a href=\"#\" onclick=\"if (confirm('<?php echo $translator->trans('Are you sure you want to make a new backup?', array(), 'home')?>')) window.open('backup.php?action=backup', 'Backup', 'scrollbars=yes, resizable=yes, menubar=no, toolbar=no, width=700, height=550, top=100, left=100');\">\n        <img src=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/add.png\" border=\"0\">\n        <b><?php echo $translator->trans(\"Make a new backup\", array(), 'home')?></b>\n        </a>\n    </td>\n    <td valign=\"bottom\" style=\"padding-left: 10px;\">\n        <a href=\"#\" onclick=\"$('#uploader').show();\">\n        <img src=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/tol.gif\" border=\"0\">\n        <b><?php echo $translator->trans(\"Upload backup file\", array(), 'home')?></b>\n        </a>\n    </td>\n    </tr>\n</table>\n<p />\n<div id=\"uploader\" style=\"display:none\">\n<fieldset class=\"buttons\">\n<form method=\"POST\" enctype=\"multipart/form-data\">\n<input type=\"submit\" class=\"button right-floated\" name=\"save\" value=\"<?php echo $translator->trans('Save'); ?>\" />\n<input type=\"hidden\" name=\"action\" value=\"upload\" />\n<input type=\"file\" name=\"archivefile\" size=\"30\">\n\n</form>\n</fieldset>\n</div>\n<p />\n<?php\ncamp_html_display_msgs();\n?>\n<table border=\"0\" cellspacing=\"1\" cellpadding=\"3\" class=\"table_list full-sized\">\n    <tr class=\"table_list_header\">\n        <td align=\"left\" valign=\"middle\"><b><?php echo $translator->trans(\"File\"); ?></b></td>\n        <td align=\"left\" valign=\"middle\"><b><?php echo $translator->trans(\"Creation date\"); ?></b></td>\n        <td align=\"center\" valign=\"middle\"><b><?php echo $translator->trans(\"Size\", array(), 'home') . ', ' . $translator->trans(\"Mb\", array(), 'home'); ?></b></td>\n        <td align=\"center\" valign=\"middle\"><b><?php echo $translator->trans(\"Download\", array(), 'home'); ?></b></td>\n        <td align=\"center\" valign=\"middle\"><b><?php echo $translator->trans(\"Restore\", array(), 'home'); ?></b></td>\n        <td align=\"center\" valign=\"middle\"><b><?php echo $translator->trans(\"Delete\"); ?></b></td>\n    </tr>\n<?php\nif ($files) {\n    $color = 0;\n    foreach ($files as $key => $file) {\n        if ($color) {\n            $color = 0;\n            $tr_class = \"class=\\\"list_row_even\\\"\";\n        } else {\n            $color = 1;\n            $tr_class = \"class=\\\"list_row_odd\\\"\";\n        }\n        print \"<tr $tr_class><td>{$file['name']}</td><td align=\\\"left\\\">{$file['time']}</td><td align=\\\"center\\\">{$file['size']}</td>\";\n        print '<td align=\"center\"><a href=\"backup.php?action=download&index='.$key.'\"><img src=\"'\n            .$Campsite[\"ADMIN_IMAGE_BASE_URL\"].'/save.png\" border=\"0\" alt=\"'.$translator->trans('Download file', array(), 'home').'\" title=\"'.$translator->trans('Download file', array(), 'home').'\"></a>';\n?>\n\t\t<td align=\"center\">\n\t\t\t<a href=\"#\" onclick=\"\n\t\t\t\tif( confirm( '<?php echo $translator->trans('Warning: the existing data and themes will be deleted!', array(), 'home') ?>'\n\t\t\t\t\t+'\\n'+'<?php echo $translator->trans('Are you sure you want to restore the file $1?', array('$1' => htmlspecialchars($file['name'])), 'home') ?>') )\n\t\t\t\t\twindow.open('backup.php?action=restore&index=<?php echo $key ?>', 'Backup',\n\t\t\t\t\t\t'scrollbars=yes, resizable=yes, menubar=no, toolbar=no, width=700, height=550, top=100, left=100');\">\n\t\t\t<img src=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"] ?>/help.png\" border=\"0\" alt=\"<?php echo $translator->trans('Restore file', array(), 'home') ?>\"\n\t\t\t\ttitle=\"<?php echo $translator->trans('Restore file', array(), 'home') ?>\"></a>\n<?php\n        print '<td align=\"center\"><a href=\"backup.php?action=delete&index='.$key.'\" onclick=\"return confirm(\\''\n            .$translator->trans('Are you sure you want to delete the file $1?',array('$1' => htmlspecialchars($file['name'])), 'home').'\\');\"><img src=\"'\n            .$Campsite[\"ADMIN_IMAGE_BASE_URL\"].'/delete.png\" border=\"0\" alt=\"'.$translator->trans('Delete file', array(), 'home').'\" title=\"'.$translator->trans('Delete file', array(), 'home').'\"></a>';\n        print '</tr>';\n    }\n} else {\n    echo '<tr><td colspan=\"3\">'.$translator->trans('Backup list is empty.', array(), 'home').'</td></tr>' ;\n}\n?>\n</table>\n\n<!--  END CONTENT  -->\n</div>\n<?php camp_html_copyright_notice();\n\nfunction getBackupList() {\n    $files = array();\n    $backupDir = CS_PATH_SITE . DIR_SEP . 'backup';\n    $handle = opendir($backupDir);\n    while (($file = readdir($handle))!=false) {\n        $fullPath = $backupDir. DIR_SEP . $file;\n        if (!is_readable($fullPath)) {\n            continue;\n        }\n        $fileType = filetype($fullPath);\n        if ($fileType != \"dir\" && $file != '.htaccess') {\n            $tmp = array();\n            $tmp['name'] = $file;\n            $tmp['size'] = ceil(filesize($fullPath)/1024/1024);\n            $tmp['time'] = date(\"Y-F-d H:i:s\", filectime($fullPath));\n            $files[] = $tmp;\n        }\n    }\n    sort($files);\n    return array_reverse($files);\n}\n?>\n"
  },
  {
    "path": "newscoop/admin-files/bugreporter/bug_handler_main.php",
    "content": "<?php\n\nrequire_once __DIR__ . '/../../classes/BugReporter.php';\n\n/**\n * Called for all Newscoop errors.\n *\n * If the flag $Campsite['DEBUG'] is set to false, this function will\n * return minor errors (ie notices and warnings) without having\n * processed them.  Errors with fsockopen() are returned without being\n * processed regardless of the $Campsite['DEBUG'] flag.\n *\n * @param int    $p_number The error number.\n * @param string $p_string The error message.\n * @param string $p_file The name of the file in which the error occurred.\n * @param int    $p_line The line number in which the error occurred.\n * @return void\n */\nfunction camp_bug_handler_main($p_number, $p_string, $p_file, $p_line)\n{\n    global $ADMIN_DIR;\n    global $ADMIN;\n    global $Campsite;\n    global $g_user;\n\n    // --- Return on unimportant errors ---\n    if (!$Campsite['DEBUG']) {\n        switch ($p_number) {\n            case E_NOTICE:\n            case E_WARNING:\n            case E_USER_NOTICE:\n            case E_USER_WARNING:\n                return;\n        }\n    }\n\n    // --- Return on coverred (with @) errors ---\n    if (!error_reporting()) {\n        return;\n    }\n\n    // throw exception instead of raising error\n    // TODO: we should catch those exceptions on BridgeController\n/*    if (defined('APPLICATION_ENV') && APPLICATION_ENV == 'development') {\n        require_once __DIR__ . '/../../library/Newscoop/Utils/Exception.php';\n        $exception = new \\Newscoop\\Utils\\Exception($p_string, $p_number);\n        $exception->setFile($p_file);\n        $exception->setLine($p_line);\n        throw $exception;\n    }*/\n\n    // -- Return on generic errors ---\n    if (preg_match ('/^Undefined index:/i', $p_string)){\n        return;\n    }\n    if (preg_match ('/^Undefined variable:/i', $p_string)){\n        return;\n    }\n    if (preg_match ('/^Undefined offset:/i', $p_string)){\n        return;\n    }\n\n    // -- SimpleXMLElement errors ---\n    if (preg_match('/^SimpleXMLElement/i', $p_string)) {\n        return;\n    }\n\n    // -- Return on URL parse errors\n    if (preg_match('/^parse_url/i', $p_string)) {\n        return;\n    }\n\n    // -- Return on mysql connect errors ---\n    if (preg_match ('/^mysql_connect/i', $p_string)){\n    return;\n    }\n\n    // --- Return on socket errors ---\n    if (preg_match ('/^fsockopen/i', $p_string)){\n        return;\n    }\n\n    // --- Return on unlink errors ---\n    if (preg_match ('/^unlink/i', $p_string)){\n        return;\n    }\n\n    // --- Return on upload file errors ---\n    if (preg_match ('/^move_uploaded_file/i', $p_string)){\n        return;\n    }\n\n    // -- Return on getimagesize errors --\n    if (preg_match ('/^getimagesize/i', $p_string)){\n        return;\n    }\n\n    // -- Return on imagecreate* errors --\n    if (preg_match ('/^imagecreate/i', $p_string)) {\n        return;\n    }\n\n    // -- Return on rmdir errors --\n    if (preg_match ('/^rmdir/i', $p_string)){\n        return;\n    }\n\n    // -- Return on mkdir errors --\n    if (preg_match ('/^mkdir/i', $p_string)){\n        return;\n    }\n\n    // -- Return on fopen errors --\n    if (preg_match ('/^fopen/i', $p_string)){\n        return;\n    }\n\n    // -- Return on chown errors --\n    if (preg_match ('/^chown/i', $p_string)){\n        return;\n    }\n\n    // -- Return on chgrp errors --\n    if (preg_match ('/^chgrp/i', $p_string)){\n        return;\n    }\n\n    define('IN_BUG_HANDLE', TRUE);\n\n    if (ob_get_length() !== false) { // --- Don't print out the previous screen (in which the error occurred). ---\n        ob_end_clean();\n    }\n\n    if (is_object($g_user)) {\n        require_once($Campsite['HTML_DIR'] . \"/$ADMIN_DIR/menu.php\");\n    }\n\n    // --- If reporter doesn't exist, make one ($reporter might exist\n    //     already if this script is an 'include') ---\n    // Remove the code name from the version number.\n    $version = explode(\" \", $Campsite['VERSION']);\n    $version = array_shift($version);\n\n    if (!isset($reporter)) {\n        $reporter = new BugReporter($p_number, $p_string, $p_file, $p_line,\n                                    'Newscoop', $version);\n    }\n\n    // --- Print results ---\n    if (!function_exists('http_response_code')) {\n        httpResponseCode(500);\n    } else {\n        http_response_code(500);\n    }\n\n    include dirname(__FILE__) . '/emailus.php';\n    exit();\n}\n\n\n/**\n * http_response_code function is supported from PHP >= 5.4\n * This function provide same functionality for PHP < 5.4\n *\n * @param int|string $newCode Status code.\n *\n * @return int\n */\nfunction httpResponseCode($newcode = null)\n{\n    $code = 200;\n\n    if ($newcode !== null) {\n        header('X-PHP-Response-Code: '.$newcode, true, $newcode);\n        if (!headers_sent()) {\n            $code = $newcode;\n        }\n    }\n\n    return $code;\n}\n"
  },
  {
    "path": "newscoop/admin-files/bugreporter/emailus.php",
    "content": "<?php\nrequire_once $GLOBALS['g_campsiteDir'].'/classes/Language.php';\n$translator = \\Zend_Registry::get('container')->getService('translator');\nglobal $ADMIN_DIR;\nglobal $Campsite;\n\n?>\n<br />\n<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" class=\"box_table\">\n<tr>\n    <td colspan=\"2\">\n<?php\nif (isset($sendWasAttempted) && $sendWasAttempted) {\n    echo \"<b>\";\n    echo $translator->trans(\"We are sorry, but there was a problem sending your bug report.\", array(), 'bug_reporting');\n    echo \"</b>\";\n} else {\n    echo '<font size=\"+2\"><b>';\n    echo $translator->trans(\"Newscoop has encountered a problem.\", array(), 'bug_reporting');\n    echo \"</b></font>\";\n    echo '<hr noshade size=\"1\" color=\"black\">';\n}\n?>\n<p>\n<?php\n    echo $translator->trans(\"Please take a minute to send us an email.\");\n    echo \"<br><br>\";\n    echo $translator->trans(\"Simply copy and paste the error report below and send it to:\", array(), 'bug_reporting');\n    echo(\" <b>\");\n    echo $Campsite[\"SUPPORT_EMAIL\"];\n    echo(\"</b>\");\n?>.\n</p>\n<p>\n    <?php\n    echo $translator->trans(\"Thank you.\");\n    ?>\n</p>\n<br />\n    </td>\n</tr>\n\n<tr>\n    <td colspan=\"2\"><b><?php echo $translator->trans(\"Error Report\", array(), 'bug_reporting'); ?></b>\n    <hr noshade size=\"1\" color=\"black\"><br /></td>\n</tr>\n<?php if (isset($sendWasAttempted) && $sendWasAttempted) {\n    ?>\n\t<tr>\n\t    <td nowrap><?php echo $translator->trans(\"Email:\");\n    ?></td>\n\t    <td><?php echo htmlspecialchars($reporter->getEmail());\n    ?></td>\n\t</tr>\n\t<tr>\n\t    <td nowrap><?php echo $translator->trans(\"Description:\", array(), 'bug_reporting');\n    ?></td>\n\t    <td><?php echo htmlspecialchars($reporter->getDescription());\n    ?></td>\n\t</tr>\n\t<tr>\n\t    <td nowrap>&nbsp;</td>\n\t    <td>&nbsp;</td>\n\t</tr>\n<?php\n\n} ?>\n<tr>\n    <td nowrap><?php echo $translator->trans(\"Error ID:\", array(), 'bug_reporting'); ?></td>\n    <td><?php echo $reporter->getId(); ?></td>\n</tr>\n<tr>\n    <td nowrap>PHP <?php echo $translator->trans(\"Version\", array(), 'messages'); ?>:</td>\n    <td><?php echo $reporter->getPHPVersion(); ?></td>\n</tr>\n<tr>\n    <td nowrap>OS:</td>\n    <td><?php echo $reporter->getServerOS(); ?></td>\n</tr>\n<tr>\n    <td nowrap><?php echo $translator->trans(\"Error String:\", array(), 'bug_reporting'); ?></td>\n    <td><?php echo $reporter->getStr(); ?></td>\n</tr>\n<tr>\n    <td nowrap><?php echo $translator->trans(\"Time:\"); ?></td>\n    <td><?php echo $reporter->getTime(); ?></td>\n</tr>\n<tr align=\"left\">\n    <td valign=\"top\" nowrap><?php echo $translator->trans(\"Backtrace:\", array(), 'bug_reporting'); ?></td>\n    <td>\n<pre>\n<?php echo $reporter->getBacktraceString(); ?>\n</pre>\n    </td>\n</tr>\n</table>\n"
  },
  {
    "path": "newscoop/admin-files/bugreporter/errormessage.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nglobal $Campsite;\nglobal $ADMIN_DIR;\nglobal $ADMIN;\n?>\n<br>\n<br>\n<table border=\"0\">\n<tr>\n    <td rowspan=\"2\" valign=\"top\">\n        <script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/campsite.js\"></script>\n\n        <form name=\"dialog\" method=\"POST\" action=\"/<?php echo $ADMIN; ?>/bugreporter/senderrorform.php\" />\n\n        <input type=\"hidden\" name=\"f_is_post_from_bugreporter\" value=\"1\">\n        <input type=\"hidden\" name=\"f_str\" value=\"<?php echo htmlspecialchars($reporter->getStr()); ?>\">\n        <input type=\"hidden\" name=\"f_num\" value=\"<?php echo htmlspecialchars($reporter->getErrorNum()); ?>\">\n        <input type=\"hidden\" name=\"f_time\" value=\"<?php echo htmlspecialchars($reporter->getTime()); ?>\">\n        <input type=\"hidden\" name=\"f_file\" value=\"<?php echo htmlspecialchars($reporter->getFile()); ?>\">\n        <input type=\"hidden\" name=\"f_line\" value=\"<?php echo htmlspecialchars($reporter->getLine()); ?>\">\n        <input type=\"hidden\" name=\"f_backtrace\" value=\"<?php echo htmlspecialchars($reporter->getBacktraceString()); ?>\">\n        <table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" class=\"box_table\">\n        <tr>\n            <td align=\"left\">\n                <table border=\"0\" cellspacing=\"0\" cellpadding=\"3\" align=\"left\">\n                <tr>\n                    <td colspan=\"2\"><b><font color=\"red\"><?php echo $translator->trans(\"Error Report\", array(), 'bug_reporting'); ?></font></b>\n                        <hr noshade size=\"1\" color=\"black\">\n                    </td>\n                </tr>\n                <tr>\n                    <td colspan=\"2\">\n                        <p><?php\n                            echo $translator->trans(\"Newscoop has encountered a problem.\", array(), 'bug_reporting');\n                            echo $translator->trans(\"We are sorry for the inconvenience.\", array(), 'bug_reporting');\n                            ?></p>\n                        <p><?php\n                           echo $translator->trans(\"In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.\", array(), 'bug_reporting');\n                           ?></p>\n                    </td>\n                </tr>\n                <tr>\n                    <td colspan=\"2\">&nbsp;\n                    </td>\n                </tr>\n                <tr valign=\"top\">\n                    <td colspan=\"2\">\n                    \t<?php echo $translator->trans(\"What were you trying to do when this happened?\", array(), 'bug_reporting'); ?> <?php echo $translator->trans(\"(optional)\"); ?>\n                    </td>\n                </tr>\n                <tr>\n                    <td align=\"left\" nowrap>&nbsp;</td>\n                    <td>\n                        <textarea cols=\"50\" rows=\"4\" class=\"input_text\" name=\"f_description\"></textarea>\n                    </td>\n                </tr>\n                <tr>\n                    <td align=\"left\" nowrap>\n                    \t<?php echo $translator->trans(\"Email:\");  ?> <?php echo $translator->trans(\"(optional)\"); ?>\n                    </td>\n                    <td><input type=\"text\" class=\"input_text\" name=\"f_email\" value=\"\" size=\"32\" maxlength=\"255\">\n                    </td>\n                </tr>\n                </table>\n            </td>\n        </tr>\n        <tr id=\"user_details_show_link\">\n            <td style=\"padding-left: 6px; padding-top: 6px;\">\n                <a href=\n                \"javascript:%20void(0);\" onclick=\n                \"ToggleRowVisibility('user_details_dialog');\n                ToggleRowVisibility('user_details_hide_link');\n                ToggleRowVisibility('user_details_show_link');\">\n                <img src=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"] . \"/viewmagplus.png\"; ?>\" id=\"my_icon\" border=\n                \"0\" align=\"center\"><?php echo $translator->trans(\"Show error details\", array(), 'bug_reporting'); ?></a>\n            </td>\n        </tr>\n        <tr id=\"user_details_hide_link\" style=\"display: none;\">\n            <td style=\"padding-left: 6px; padding-top: 6px;\"><a href=\n                \"javascript:%20void(0);\" onclick=\n                \"ToggleRowVisibility('user_details_dialog');\n                ToggleRowVisibility('user_details_hide_link');\n                ToggleRowVisibility('user_details_show_link');\">\n                <img src=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"] . \"/viewmagminus.png\"; ?>\" id=\"my_icon\" border=\"0\" align=\"center\"><?php echo $translator->trans(\"Hide error details\", array(), 'bug_reporting'); ?></a>\n            </td>\n        </tr>\n        <tr id=\"user_details_dialog\" style=\"display: none;\">\n            <td>\n                <table border=\"0\" cellspacing=\"0\" cellpadding=\"3\" align=\"center\"\n                width=\"100%\">\n                <tr>\n                    <td align=\"left\" nowrap>\n                    \t<?php echo $translator->trans(\"Error ID:\", array(), 'bug_reporting'); ?>\n                    </td>\n                    <td>\n                    \t<?php echo $reporter->getId(); ?>\n                    </td>\n                </tr>\n                <tr>\n                    <td align=\"left\" nowrap>\n                    \t<?php echo $translator->trans(\"Software:\", array(), 'bug_reporting'); ?>\n                    </td>\n                    <td>\n                    \t<?php echo $reporter->getSoftware();  ?>\n                    </td>\n                </tr>\n                <tr>\n                    <td align=\"left\" nowrap>\n                    \t<?php echo $translator->trans(\"Error Message:\", array(), 'bug_reporting'); ?>\n                    </td>\n                    <td>\n                    \t<?php echo $reporter->getStr(); ?>\n                    </td>\n                </tr>\n                <tr>\n                    <td align=\"left\" nowrap>\n                    \t<?php echo $translator->trans(\"Error Number:\", array(), 'bug_reporting'); ?>\n                    </td>\n                    <td>\n                    \t<?php echo $reporter->getErrorNum(); ?>\n                    </td>\n                </tr>\n                <tr>\n                    <td align=\"left\" nowrap>\n                    \t<?php echo $translator->trans(\"Time:\"); ?>\n                    </td>\n                    <td>\n                    \t<?php echo $reporter->getTime(); ?>\n                    </td>\n                </tr>\n                <tr valign=\"top\">\n                    <td align=\"left\" nowrap>\n                    \t<?php echo $translator->trans(\"Backtrace:\", array(), 'bug_reporting'); ?>\n                    </td>\n                    <td>\n                        <div style=\"overflow: auto; height: 150px;\n                        background-color: #EEEEEE; border: 1px solid\n                        black; padding-left: 3px;\"><pre><?php\n                            echo $reporter->getBacktraceString();\n                        ?></pre>\n                        &nbsp;\n                    </td>\n                </table>\n            </td>\n    </tr>\n    <tr>\n            <td>\n                <table border=\"0\" cellspacing=\"0\" cellpadding=\"6\" align=\"center\"\n                width=\"100%\">\n                <tr>\n                    <td colspan=\"2\">\n                        <div align=\"center\"><input type=\"submit\"\n                        class=\"button\" value=\"<?php echo $translator->trans(\"Send\"); ?>\"></div>\n                    </td>\n                </tr>\n                </table>\n            </td>\n        </tr>\n        </table>\n        </form>\n    </td>\n</tr>\n</table>\n"
  },
  {
    "path": "newscoop/admin-files/camp_html.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * includes\n */\n$ADMIN_DIR = \"admin-files\";\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/lib_campsite.php\");\n\n/**\n * Print out an HTML OPTION element.\n *\n * @param string $p_value\n * @param string $p_selectedValue\n * @param string $p_printValue\n * @return boolean\n * \t\tReturn TRUE if the option is selected, FALSE if not.\n */\nfunction camp_html_select_option($p_value, $p_selectedValue, $p_printValue, $p_attributes=array())\n{\n\t$selected = false;\n\t$str = '<option value=\"'.htmlspecialchars($p_value, ENT_QUOTES).'\"';\n\tif (is_array($p_selectedValue)) {\n\t\tif (in_array($p_value, $p_selectedValue)) {\n\t\t\t$str .= ' selected=\"selected\"';\n\t\t\t$selected = true;\n\t\t}\n\t} else {\n\t\tif (!strcmp($p_value, $p_selectedValue)) {\n\t\t\t$str .= ' selected=\"selected\"';\n\t\t\t$selected = true;\n\t\t}\n\t}\n\tforeach ($p_attributes as $k => $v) {\n\t   $str .= \" $k=\\\"$v\\\"\";\n\t}\n\t$str .= '>'.htmlspecialchars($p_printValue).\"</option>\\n\";\n\techo $str;\n\treturn $selected;\n} // fn camp_html_select_option\n\n\n/**\n * Display the copyright notice and close the HTML page.\n */\nfunction camp_html_copyright_notice($p_displayBorder = true)\n{\n    global $Campsite;\n    $campVersion = new CampVersion();\n    if ($p_displayBorder) {\n?>\n    <div class=\"footer\">\n    <?php\n    } else {\n    ?>\n    <div class=\"footer_plain\">\n    <?php\n    }\n    ?>\n    <a href=\"http://newscoop.sourcefabric.org/\" target=\"_blank\">\n    <?php\n      echo $campVersion->getPackage();\n      ?></a>, the open content management system for professional journalists. Version: <?php echo $campVersion->getRelease() ?>\n      <br />\n      <?php\n      echo $campVersion->getCopyright() . '&nbsp;';\n      echo $campVersion->getPackage();\n    ?>\n       is distributed under\n    <?php echo $campVersion->getLicense(); ?>\n    </div>\n\t<?php\n} // fn camp_html_copyright_notice\n\n\n/**\n * Create a HTML HREF link to an article.\n *\n * @param Article $p_articleObj\n *\t\tThe article we want to display.\n *\n * @param int $p_sectionLanguageId\n *\t\tThe section language ID.\n *\n * @param string $p_targetFileName\n *\t\tWhich file in the \"articles\" directory to call.\n *\n * @param string $p_backLink\n *\t\tI'm not entirely sure what this is for.  I put it in for backward compatibility.\n */\nfunction camp_html_article_link($p_articleObj, $p_interfaceLanguageId, $p_targetFileName = \"\", $p_backLink = \"\")\n{\n\t$str = '<A HREF=\"'.camp_html_article_url($p_articleObj, $p_interfaceLanguageId, $p_targetFileName, $p_backLink).'\">';\n\treturn $str;\n} // fn camp_html_article_link\n\n\n/**\n * Create a link to an article.\n *\n * @param Article $p_articleObj\n *\t\tThe article we want to display.\n *\n * @param int $p_sectionLanguageId\n *\t\tThe language ID for the publication/issue/section.\n *\n * @param string $p_targetFileName\n *\t\tWhich file in the \"articles\" directory to call.\n *\n * @param string $p_backLink\n *\t\tA URL to get back to the previous page the user was on.\n *\n * @param string $p_extraParams\n */\nfunction camp_html_article_url($p_articleObj, $p_sectionLanguageId, $p_targetFileName = \"\",\n\t$p_backLink = \"\", $p_extraParams = null, $p_securityParameter = false)\n{\n\tglobal $ADMIN;\n\t$str = \"/$ADMIN/articles/\".$p_targetFileName\n\t\t.\"?f_publication_id=\".$p_articleObj->getPublicationId()\n\t\t.\"&f_issue_number=\".$p_articleObj->getIssueNumber()\n\t\t.\"&f_section_number=\".$p_articleObj->getSectionNumber()\n\t\t.\"&f_article_number=\".$p_articleObj->getArticleNumber()\n\t\t.\"&f_language_id=\".$p_sectionLanguageId\n\t\t.\"&f_language_selected=\".$p_articleObj->getLanguageId();\n\tif ($p_securityParameter) {\n\t\t$str .= '&'.SecurityToken::URLParameter();\n\t}\n\tif ($p_backLink != \"\") {\n\t\t$str .=\"&Back=\".urlencode($p_backLink);\n\t}\n\tif (!is_null($p_extraParams)) {\n\t    $str .= $p_extraParams;\n\t}\n\treturn $str;\n} // fn camp_html_article_url\n\n\n/**\n * Redirect to the error page and show the given error message.\n * You can also give a back link for the user to go back to when they\n * click OK on that screen.\n *\n * @param mixed $p_errorStr\n *\t\tThis can be a string or an array.  An array is for the case when the\n *\t\terror string requires arguments.\n *\n * @param string $p_backLink\n *\n * @return void\n */\nfunction camp_html_display_error($p_errorStr, $p_backLink = null, $popup = false)\n{\n\tglobal $ADMIN;\n\t$script = $popup ? 'ad_popup.php' : 'ad.php';\n\t$location = \"/$ADMIN/$script?ADReason=\".urlencode($p_errorStr);\n\tif (!is_null($p_backLink)) {\n\t\t$location .= '&Back='.urlencode($p_backLink);\n\t}\n\theader(\"Location: $location\");\n\texit;\n} // fn camp_html_display_error\n\n\n\n/**\n * Common header for all content screens.\n *\n * @param string $p_title\n *\t\tThe title of the page.  This should have a translation in the language\n *\t\tfiles.\n *\n * @param array $p_objArray\n *\t\tThis represents your current location in the content tree.  This\n * \t\tcan have the following index values, each containing the appropriate\n *\t\tobject: 'Pub', 'Issue', 'Section', 'Article'\n *\n * @param boolean $p_includeLinks\n *\t\tWhether to include the links underneath the title or not.  Default TRUE.\n *\n * @param boolean $p_fValidate\n *\t\tWhether to include the fValidate javascript files in the HTML header.\n *      Default FALSE.\n *\n * @param array $p_extraBreadcrumbs\n *\t\tAn array in the form 'text' => 'link' for more breadcrumbs.\n *\n * @return void\n */\nfunction camp_html_content_top($p_title, $p_objArray, $p_includeLinks = true,\n\t\t\t\t\t\t\t   $p_fValidate = false, $p_extraBreadcrumbs = null)\n{\n\tglobal $Campsite;\n\tglobal $ADMIN;\n\tglobal $ADMIN_DIR;\n    $translator = \\Zend_Registry::get('container')->getService('translator');\n\t$publicationObj = camp_array_get_value($p_objArray, 'Pub', null);\n\t$issueObj = camp_array_get_value($p_objArray, 'Issue', null);\n\t$sectionObj = camp_array_get_value($p_objArray, 'Section', null);\n\t$articleObj = camp_array_get_value($p_objArray, 'Article', null);\n\n\t$breadcrumbs = array();\n\t$breadcrumbs[] = array($translator->trans(\"Content\"), \"\");\n\tif (!is_null($publicationObj)) {\n\t    $prompt =  $translator->trans(\"Publication\").\":\";\n\t    $name = $publicationObj->getName();\n    \t$breadcrumbs[] = array($prompt, \\Zend_Registry::get('container')->get('router')->generate('newscoop_newscoop_publications_index'), false);\n    \t$breadcrumbs[] = array($name, \\Zend_Registry::get('container')->get('router')->generate('newscoop_newscoop_publications_edit', array('id' => $publicationObj->getPublicationId())));\n\t}\n\n\tif ($issueObj instanceof Issue) {\n\t    $prompt = $translator->trans(\"Issue\").\":\";\n    \t$breadcrumbs[] = array($prompt,\n    \t       \"/$ADMIN/issues/\"\n    \t       .\"?Pub=\".$issueObj->getPublicationId()\n    \t       .\"&Issue=\".$issueObj->getIssueNumber()\n    \t       .\"&Language=\".$issueObj->getLanguageId(),\n    \t       false);\n\t    $name = $issueObj->getName() . ' (' . $issueObj->getLanguageName() . ')';\n        $breadcrumbs[] = array($name,\n    \t       \"/$ADMIN/issues/edit.php\"\n    \t       .\"?Pub=\".$issueObj->getPublicationId()\n    \t       .\"&Issue=\".$issueObj->getIssueNumber()\n    \t       .\"&Language=\".$issueObj->getLanguageId());\n\t}\n\tif ($sectionObj instanceof Section) {\n\t    $prompt = $translator->trans(\"Section\").\":\";\n\t\t$breadcrumbs[] = array($prompt,\n\t\t        \"/$ADMIN/sections/\"\n\t\t        .\"?Pub=\".$sectionObj->getPublicationId()\n                .\"&Issue=\".$sectionObj->getIssueNumber()\n                .\"&Language=\".$sectionObj->getLanguageId()\n                .\"&Section=\".$sectionObj->getSectionNumber(),\n                false);\n\t    $name = $sectionObj->getName();\n        $breadcrumbs[] = array($name,\n                \"/$ADMIN/sections/edit.php\"\n                .\"?Pub=\".$sectionObj->getPublicationId()\n                .\"&Issue=\".$sectionObj->getIssueNumber()\n                .\"&Language=\".$sectionObj->getLanguageId()\n                .\"&Section=\".$sectionObj->getSectionNumber());\n\t}\n\tif ($articleObj instanceof Article) {\n\t    $prompt = $translator->trans(\"Article\").\":\";\n\t\t$breadcrumbs[] = array($prompt,\n                \"/$ADMIN/articles/index.php\"\n                .\"?f_publication_id=\" . $articleObj->getPublicationId()\n                .\"&f_issue_number=\".$articleObj->getIssueNumber()\n                .\"&f_language_id=\".$articleObj->getLanguageId()\n                .\"&f_section_number=\".$articleObj->getSectionNumber()\n                .\"&f_article_number=\".$articleObj->getArticleNumber(),\n                false);\n\t    $name = $articleObj->getName() . ' (' . $articleObj->getLanguageName() . ')';\n        $breadcrumbs[] = array($name,\n                \"/$ADMIN/articles/edit.php\"\n                .\"?f_publication_id=\" . $articleObj->getPublicationId()\n                .\"&f_issue_number=\".$articleObj->getIssueNumber()\n                .\"&f_language_id=\".$articleObj->getLanguageId()\n                .\"&f_section_number=\".$articleObj->getSectionNumber()\n                .\"&f_article_number=\".$articleObj->getArticleNumber()\n                .\"&f_language_selected=\".$articleObj->getLanguageId());\n\t}\n\tif (is_array($p_extraBreadcrumbs)) {\n\t\tforeach ($p_extraBreadcrumbs as $text => $link) {\n\t\t    $breadcrumbs[] = array($text, $link);\n\t\t}\n\t}\n\t$breadcrumbs[] = array($p_title, \"\");\n\tif ($p_fValidate) {\n\t\tinclude_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/javascript_common.php\");\n\t}\n\techo camp_html_breadcrumbs($breadcrumbs);\n} // fn camp_html_content_top\n\n\n/**\n * Renders page title.\n * @param string $title\n * @param bool $toString\n * @return string|void\n */\nfunction camp_html_title($title, $toString = FALSE)\n{\n    if (strpos($_SERVER['REQUEST_URI'], 'admin/articles/edit.php') !== false) {\n        return ''; // no title on article edit screen\n    }\n\n    ob_start();\n    echo '<div class=\"toolbar clearfix\"><span class=\"article-title\">';\n    echo $title;\n    echo '</span></div>';\n    $content = ob_get_clean();\n\n    if ($toString) {\n        return $content;\n    }\n\n    echo $content;\n}\n\n\n/**\n * Create a set of breadcrumbs.\n *\n * @param array $p_crumbs\n *\t\tAn array in the form 'text' => 'link' for breadcrumbs.\n *      Farthest-away link comes first, increasing in specificity.\n *\n * @param bool $showTitle\n *\n * @return string\n */\nfunction camp_html_breadcrumbs($p_crumbs, $showTitle = TRUE)\n{\n    $lastCrumb = array_pop($p_crumbs);\n    $str = '<div class=\"breadcrumb-bar clearfix\">' . \"\\n\";\n    if (count($p_crumbs) > 0) {\n\t   \t$str .= '<ul class=\"breadcrumbs clearfix\">' . \"\\n\";\n\t\tforeach ($p_crumbs as $crumb) {\n\t\t    if (count($crumb) == 2) {\n\t\t        $str .= camp_html_breadcrumb($crumb[0], $crumb[1]);\n\t\t    } else {\n\t\t        $str .= camp_html_breadcrumb($crumb[0], $crumb[1], $crumb[2]);\n\t\t    }\n\t\t}\n\t\t$str .= '</ul>' . \"\\n\";\n    }\n    $str .= \"</div>\\n\";\n\n    if ($showTitle) {\n        $str .= camp_html_title($lastCrumb[0], TRUE);\n    }\n\n    return $str;\n} // fn camp_html_breadcrumbs\n\n\n/**\n * Create one breadcrumb.\n *\n * @param string $p_text\n * @param mixed $p_link\n * @param boolean $p_active\n * @param boolean $p_separator\n * @return string\n */\nfunction camp_html_breadcrumb($p_text, $p_link, $p_separator = true, $p_active = false) {\n    $tmpStr = '<li';\n    $classStr = '';\n\tif ($p_separator) {\n\t    $tmpStr .= ' class=\"separator\">';\n\t} else {\n\t    $tmpStr .= '>';\n        $classStr = ' class=\"category\"';\n    }\n    if ($p_link != '') {\n        $tmpStr .= '<a href=\"' . htmlspecialchars($p_link) . '\"';\n        $tmpStr .= (!empty($classStr)) ? $classStr : '';\n        $tmpStr .= '>';\n        $tmpStr .= htmlspecialchars($p_text, ENT_NOQUOTES) . '</a>';\n    } else {\n        $tmpStr .= '<a href=\"#\">' . htmlspecialchars($p_text, ENT_NOQUOTES) . '</a>';\n    }\n\t$tmpStr .= '</li>' . \"\\n\";\n\n    return $tmpStr;\n} // fn camp_html_breadcrumb\n\n\n/**\n * Send the user to the given page.\n *\n * @param string $p_link\n * @param bool $p_exit\n * @param array $p_params\n * @return void\n */\nfunction camp_html_goto_page($p_link, $p_exit = true, array $p_params = array())\n{\n    global $Campsite;\n\n    if (!empty($p_params)) {\n        $p_link .= strpos($p_link, '?') === FALSE ? '?' : '&';\n        foreach ($p_params as $key => $val) {\n            $p_link .= \"$key=$val&\";\n        }\n        $p_link = rtrim($p_link, '&');\n    }\n\n    preg_match(\"`http(s?)://`\", $p_link, $linkm);\n    //if (strpos($p_link, 'http://') === FALSE) { // location header must be absolute for ie\n    if (!count($linkm)) {\n        $p_link = (!empty($_SERVER['HTTPS']) ? 'https' :'http') .'://'. $Campsite['HOSTNAME'] . $p_link;\n    }\n\n\theader(\"Location: $p_link\");\n\tif ($p_exit) {\n\t    exit;\n\t}\n} // fn camp_html_goto_page\n\n// This is a simple global to tell us whether messages have been added\n// during this page request.\nglobal $g_camp_msg_added;\n$g_camp_msg_added = false;\n\n/**\n * Add a message to be sent to a page when camp_html_goto_page() is called.\n * The messages can be displayed on the destination screen by using\n * camp_html_display_msgs().\n *\n * @param mixed $p_errorMsg\n * \t\tThis can be a string or an array of strings.\n * @param string $p_type\n * @param int $p_delay\n * \t\tThe number of screen refreshes before this is displayed.\n */\nfunction camp_html_add_msg($p_errorMsg, $p_type = \"error\")\n{\n\tglobal $g_camp_msg_added;\n\t$p_type = strtolower($p_type);\n\tif (!in_array($p_type, array(\"error\", \"ok\"))) {\n\t\treturn;\n\t}\n\tif (!is_string($p_errorMsg) && !is_array($p_errorMsg)) {\n\t\treturn;\n\t}\n\tif (is_string($p_errorMsg)) {\n\t\t$p_errorMsg = array($p_errorMsg);\n\t}\n\n\tforeach ($p_errorMsg as $errorMsg) {\n\t\tif (is_string($errorMsg) && (trim($errorMsg) != \"\")) {\n\t\t\t$g_camp_msg_added = true;\n\t\t\tif (camp_html_has_msg($errorMsg)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t$_SESSION[\"camp_user_msgs\"][] = array(\"msg\" => $errorMsg,\n\t\t\t\t\t\t\t\t\t\t\t\t  \"type\" => $p_type);\n\t\t}\n\t}\n} // fn camp_html_add_msg\n\n\n/**\n * Return true if the given message was already to the list\n * @param string $p_msg\n * @return boolean\n */\nfunction camp_html_has_msg($p_msg)\n{\n\tif (isset($_SESSION['camp_user_msgs']) && is_array($_SESSION['camp_user_msgs'])) {\n\t\tforeach ($_SESSION['camp_user_msgs'] as $msg) {\n\t\t\tif ($msg['msg'] == $p_msg) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t}\n\treturn false;\n} // camp_html_has_msg\n\n\n/**\n * Return true if there are response messages to show to the user.\n *\n * @return boolean\n */\nfunction camp_html_has_msgs()\n{\n\treturn (isset($_SESSION['camp_user_msgs']) && count($_SESSION['camp_user_msgs']) > 0);\n} // fn camp_html_has_msgs\n\n\n/**\n * Delete all pending user messages.  This is called at the end of\n * the next page request in admin.php.  This means that messages do not last\n * past one page request.\n *\n * @param boolean $p_calledByAdmin\n *\t\tThis is only used by the admin script.  If it is set to true it\n * \t\twill check if any messages have been posted during this request,\n * \t\tand if so, it does not delete the messages.\n * @return void\n */\nfunction camp_html_clear_msgs($p_calledByAdmin = false)\n{\n\tglobal $g_camp_msg_added;\n\tif (!$p_calledByAdmin || ($p_calledByAdmin && !$g_camp_msg_added)) {\n\t\t$_SESSION['camp_user_msgs'] = array();\n\t}\n} // fn camp_html_clear_msgs\n\n\n/**\n * Display any user messages stored in the session.\n *\n * @param string $p_spacing\n * \t\tHow much spacing to put above and below the error message\n * \t\t(e.g. 10px, 1em, etc...).\n *\n * @return void\n */\nfunction camp_html_display_msgs($p_spacingTop = \"1em\", $p_spacingBottom = \"1em\")\n{\n\tif (isset($_SESSION['camp_user_msgs']) && count($_SESSION['camp_user_msgs']) > 0) { ?>\n\t\t<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" class=\"action_buttons\" style=\"padding-top: <?php echo $p_spacingTop; ?>; padding-bottom: <?php echo $p_spacingBottom; ?>;\" width=\"800px\">\n\t\t<?php\n\t\t$count = 1;\n\t\tforeach ($_SESSION['camp_user_msgs'] as $message) {\n\t\t\t?>\n\t\t\t<tr>\n\t\t\t\t<?php if ($message['type'] == 'ok') { ?>\n\t\t\t\t<td class=\"info_message\" id=\"camp_message_<?php p($count); ?>\">\n\t\t\t\t<?php } elseif ($message['type'] == 'error') { ?>\n\t\t\t\t<td class=\"error_message\" id=\"camp_message_<?php p($count); ?>\">\n\t\t\t\t<?php } ?>\n\t\t\t\t\t<?php echo $message['msg']; ?>\n\t\t\t\t\t<script type=\"text/javascript\">\n\t\t\t\t\t$('#camp_message_<?php p($count); ?>').delay(3000).fadeOut();\n\t\t\t\t\t</script>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<?php\n\t\t\t$count++;\n\t\t} ?>\n\t\t</table>\n\t\t<?php\n\t\t$_SESSION['camp_user_msgs'] = array();\n\t}\n} // fn camp_html_display_msgs\n\n\n/**\n * One common form validate function.\n *\n */\nfunction camp_html_fvalidate()\n{\n\techo \"validateForm(this, 0, 1, 0, 1, 8)\";\n} // fn camp_html_fvalidate\n\n?>\n"
  },
  {
    "path": "newscoop/admin-files/country/add.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/country/country_common.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!$g_user->hasPermission('ManageCountries')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to add countries.\" , array(), 'country'));\n\texit;\n}\n\n$languages = Language::GetLanguages(null, null, null, array(), array(), true);\n\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Configure\"), \"\");\n$crumbs[] = array($translator->trans(\"Countries\"), \"/$ADMIN/country/\");\n$crumbs[] = array($translator->trans(\"Add new country\"), \"\");\necho camp_html_breadcrumbs($crumbs);\n\n$controller->view->headTitle($translator->trans('Add new country').' - Newscoop Admin', 'SET');\n\n?>\n\n<P>\n<FORM NAME=\"dialog\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/country/do_add.php\">\n<?php echo SecurityToken::FormParameter(); ?>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" CLASS=\"box_table\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B><?php  echo $translator->trans(\"Add new country\"); ?></B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Code\"); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_country_code\" SIZE=\"2\" MAXLENGTH=\"2\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Name\"); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_country_name\" SIZE=\"32\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Language\"); ?>:</TD>\n\t<TD>\n\t\t<SELECT NAME=\"f_country_language\" class=\"input_select\">\n\t\t<?php\n\t\tforeach ($languages as $language) {\n\t\t\tcamp_html_select_option($language->getLanguageId(), 0, $language->getNativeName());\n    \t} ?>\n    \t</SELECT>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<DIV ALIGN=\"CENTER\">\n\t\t<INPUT TYPE=\"submit\" class=\"button\" NAME=\"OK\" VALUE=\"<?php echo $translator->trans('Save'); ?>\">\n\t\t<!--<INPUT TYPE=\"button\" class=\"button\" NAME=\"Cancel\" VALUE=\"<?php  echo $translator->trans('Cancel'); ?>\" ONCLICK=\"location.href='/admin/country/'\">-->\n\t\t</DIV>\n\t</TD>\n</TR>\n</TABLE>\n</FORM>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/country/country_common.php",
    "content": "<?PHP\nrequire_once($GLOBALS['g_campsiteDir'].\"/classes/Language.php\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/classes/User.php\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/classes/Country.php\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/classes/Input.php\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/classes/Log.php\");\n\n?>"
  },
  {
    "path": "newscoop/admin-files/country/do_add.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/country/country_common.php\");\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nif (!$g_user->hasPermission('ManageCountries')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to add countries.\" , array(), 'country'));\n\texit;\n}\n\n$languages = Language::GetLanguages(null, null, null, array(), array(), true);\n\n$f_country_code = trim(Input::Get('f_country_code'));\n$f_country_name = trim(Input::Get('f_country_name'));\n$f_country_language = trim(Input::Get('f_country_language', 'int', 0));\n$correct = true;\n$created = false;\n$errorMsgs = array();\nif (empty($f_country_code)) {\n\t$errorMsgs[] = $translator->trans('You must fill in the $1 field.', array('$1' => '<B>'.$translator->trans('Code').'</B>'));\n\t$correct = false;\n}\nif (empty($f_country_name)) {\n\t$errorMsgs[] = $translator->trans('You must fill in the $1 field.', array('$1' => '<B>'.$translator->trans('Name').'</B>'));\n\t$correct = false;\n}\nif (empty($f_country_language) || ($f_country_language == 0)) {\n\t$correct = false;\n    $errorMsgs[] = $translator->trans('You must select a language.');\n}\nif ($correct) {\n\t$country = new Country($f_country_code, $f_country_language);\n\t$created = $country->create(array(\"Name\" => $f_country_name));\n\tif ($created) {\n\t\tcamp_html_goto_page(\"/$ADMIN/country/\");\n\t}\n\telse {\n\t\t$errorMsgs[] = $translator->trans('The country $1 could not be created.', array('$1' => '<strong>'.$f_country_name.'</strong>'), 'country');\n\t\t$errorMsgs[] = $translator->trans('Country with code $1 exists already.', array('$1' => $f_country_code), 'country');\n\t}\n}\n\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Configure\"), \"\");\n$crumbs[] = array($translator->trans(\"Countries\"), \"/$ADMIN/country/\");\n$crumbs[] = array($translator->trans(\"Add new country\"), \"\");\necho camp_html_breadcrumbs($crumbs);\n?>\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B> <?php echo $translator->trans(\"Add new country\"); ?> </B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t<BLOCKQUOTE>\n\t<?php\n\tforeach ($errorMsgs as $errorMsg) { ?>\n\t\t<li><?php p($errorMsg); ?></li>\n\t\t<?PHP\n\t}\n\t?>\n\t</BLOCKQUOTE>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t<DIV ALIGN=\"CENTER\">\n\t<INPUT TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php p($ADMIN); ?>/country/add.php'\">\n\t</DIV>\n\t</TD>\n</TR>\n</TABLE>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/country/do_del.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/country/country_common.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nif (!$g_user->hasPermission('DeleteCountries')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to delete countries.\", array(), 'country'));\n\texit;\n}\n\n$f_country_code = Input::Get('f_country_code');\n$f_country_language = Input::Get('f_country_language');\n\n$country = new Country($f_country_code, $f_country_language);\n$language = new Language($f_country_language);\n$deleted = $country->delete();\nif ($deleted) {\n\tcamp_html_goto_page(\"/$ADMIN/country\");\n}\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Configure\"), \"\");\n$crumbs[] = array($translator->trans(\"Countries\"), \"/$ADMIN/country/\");\n$crumbs[] = array($translator->trans(\"Delete country\", array(), 'country'), \"\");\necho camp_html_breadcrumbs($crumbs);\n\n?>\n\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B> <?php echo $translator->trans(\"Delete country\", array(), 'country'); ?> </B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t<BLOCKQUOTE>\n\t<LI><?php echo $translator->trans('The country $1 could not be deleted.' , array('$1' => '<B>'.htmlspecialchars($country->getName()).'('.htmlspecialchars($language->getNativeName()).')</B>'), 'country'); ?></LI>\n\t</BLOCKQUOTE>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t<DIV ALIGN=\"CENTER\">\n\t<INPUT TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php p($ADMIN); ?>/country/'\">\n\t</DIV>\n\t</TD>\n</TR>\n</TABLE>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/country/do_edit.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/country/country_common.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nif (!$g_user->hasPermission('ManageCountries')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to change country names.\", array(), 'country'));\n\texit;\n}\n\n$f_country_code = Input::Get('f_country_code');\n$f_country_language = Input::Get('f_country_language');\n$f_country_name = trim(Input::Get('f_country_name'));\n\n$country = new Country($f_country_code, $f_country_language);\n$language = new Language($f_country_language);\n\nif (empty($f_country_name)) {\n\t$errorMsgs[] = $translator->trans(\"You must fill in the $1 field.\", array('$1' => \"<B>\".$translator->trans(\"Name\").\"</B>\"));\n} else {\n\tif ($country->setName($f_country_name)) {\n\t\tcamp_html_goto_page(\"/$ADMIN/country/index.php\");\n\t} else {\n\t\t$errorMsgs[] = $translator->trans('The country name $1 could not be changed', array('$1' =>  '<B>'.htmlspecialchars($country->getName()).'</B>'), 'country');\n\t}\n}\n\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Configure\"), \"\");\n$crumbs[] = array($translator->trans(\"Countries\"), \"/$ADMIN/country/\");\n$crumbs[] = array($translator->trans(\"Changing country name\", array(), 'country'), \"\");\necho camp_html_breadcrumbs($crumbs);\n\n?>\n\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B> <?php echo $translator->trans(\"Changing country name\", array(), 'country'); ?> </B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<BLOCKQUOTE>\n\t\t<?php\n\t\tforeach ($errorMsgs as $errorMsg) { ?>\n\t\t\t<li><?php p($errorMsg); ?></li>\n\t\t\t<?php\n\t\t}\n\t\t?>\n\t\t</BLOCKQUOTE>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t<DIV ALIGN=\"CENTER\">\n\t<INPUT TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php p($ADMIN); ?>/country/edit.php?f_country_code=<?php print urlencode($f_country_code); ?>&f_country_language=<?php  print $f_country_language; ?>'\">\n\t</DIV>\n\t</TD>\n</TR>\n</TABLE>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/country/do_translate.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/country/country_common.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nif (!$g_user->hasPermission('ManageCountries')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to translate country names.\", array(), 'country'));\n\texit;\n}\n\n$f_country_code = Input::Get('f_country_code');\n$f_country_orig_language = Input::Get('f_country_orig_language');\n$f_country_new_language = Input::Get('f_country_new_language');\n$f_country_name = trim(Input::Get('f_country_name'));\n\n$country = new Country($f_country_code, $f_country_orig_language);\n$language = new Language($f_country_new_language);\n$correct = true;\n$created = false;\n\nif (empty($f_country_name)) {\n\t$correct = false;\n\t$errorMsgs[] = $translator->trans(\"You must fill in the $1 field.\", array('$1' => \"<B>\".$translator->trans(\"Name\").\"</B>\"));\n}\n\nif (!$language->exists()) {\n    $correct = false;\n    $errorMsgs[] = $translator->trans('You must select a language.');\n}\n\nif ($correct) {\n\t$newCountry = new Country($f_country_code, $f_country_new_language);\n\t$created = $newCountry->create(array('Name' => $f_country_name));\n\tif ($created) {\n\t    camp_html_goto_page(\"/$ADMIN/country/\");\n\t} else {\n\t\t$errorMsgs[] = $translator->trans('The country name $1 could not be translated', array('$1' => '<B>'.$country->getName().'</B>'), 'country');\n\t}\n}\n\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Configure\"), \"\");\n$crumbs[] = array($translator->trans(\"Countries\"), \"/$ADMIN/country/\");\n$crumbs[] = array($translator->trans(\"Adding new translation\"), \"\");\necho camp_html_breadcrumbs($crumbs);\n\n?>\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B> <?php echo $translator->trans(\"Adding new translation\"); ?> </B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t<BLOCKQUOTE>\n\t<?PHP\n\tforeach ($errorMsgs as $errorMsg) { ?>\n\t\t<li><?php p($errorMsg); ?></li>\n\t\t<?php\n\t}\n\t?>\n\t</BLOCKQUOTE>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t<DIV ALIGN=\"CENTER\">\n\t<INPUT TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php p($ADMIN); ?>/country/'\">\n\t</DIV>\n\t</TD>\n</TR>\n</TABLE>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/country/edit.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/country/country_common.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!$g_user->hasPermission('ManageCountries')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to change country names.\", array(), 'country'));\n\texit;\n}\n\n$f_country_code = Input::Get('f_country_code');\n$f_country_language = Input::Get('f_country_language');\n\n$country = new Country($f_country_code, $f_country_language);\n$language = new Language($f_country_language);\n\n$countryTranslations = Country::GetCountries(null, $f_country_code);\n\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Configure\"), \"\");\n$crumbs[] = array($translator->trans(\"Countries\"), \"/$ADMIN/country/\");\n$crumbs[] = array($translator->trans(\"Edit country name\", array(), 'country'), \"\");\necho camp_html_breadcrumbs($crumbs);\n\n$controller->view->headTitle($translator->trans('Edit country name').' - Newscoop Admin', 'SET');\n\n?>\n\n<P>\n<FORM NAME=\"dialog\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/country/do_edit.php\"  >\n<?php echo SecurityToken::FormParameter(); ?>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" CLASS=\"box_table\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B><?php echo $translator->trans(\"Edit country name\", array(), 'country'); ?></B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" valign=\"top\"><?php echo $translator->trans(\"Country\"); ?>:</TD>\n\t<TD>\n\t<?php\n\t$names = array();\n\tforeach ($countryTranslations as $translation) {\n\t\t$names[] = htmlspecialchars($translation->getName());\n\t}\n\techo implode(\", \", $names);\n\t?>\n\t<TR>\n\t\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Name\"); ?>:</TD>\n\t\t<TD>\n\t\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_country_name\" SIZE=\"32\" VALUE=\"<?php  p(htmlspecialchars($country->getName())); ?>\">\n\t\t</TD>\n\t</TR>\n\t<TR>\n\t\t<TD COLSPAN=\"2\">\n\t\t<DIV ALIGN=\"CENTER\">\n\t\t<INPUT TYPE=\"HIDDEN\" NAME=\"f_country_code\" VALUE=\"<?php  print $country->getCode(); ?>\">\n\t\t<INPUT TYPE=\"HIDDEN\" NAME=\"f_country_language\" VALUE=\"<?php  print $country->getLanguageId(); ?>\">\n\t\t<INPUT TYPE=\"submit\" class=\"button\" NAME=\"OK\" VALUE=\"<?php echo $translator->trans('Save'); ?>\">\n\t\t<!--<INPUT TYPE=\"button\" class=\"button\" NAME=\"Cancel\" VALUE=\"<?php  echo $translator->trans('Cancel'); ?>\" ONCLICK=\"location.href='/admin/country/'\">-->\n\t\t</DIV>\n\t\t</TD>\n\t</TR>\n</TABLE>\n</FORM>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/country/index.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/country/country_common.php\");\nrequire_once($GLOBALS['g_campsiteDir']. \"/classes/SimplePager.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!$g_user->hasPermission('ManageCountries') && !$g_user->hasPermission('DeleteCountries')) {\n\tcamp_html_goto_page(\"/$ADMIN/\");\n}\n\n$f_country_language_selected = camp_session_get('f_country_language_selected', '');\n$f_country_offset = camp_session_get('f_country_offset', 0);\nif (empty($f_country_language_selected)) {\n\t$f_country_language_selected = null;\n}\n$ItemsPerPage = 20;\n$languages = Language::GetLanguages(null, null, null, array(), array(), true);\n$countries = Country::GetCountries($f_country_language_selected, null, null,\n\t\t\t\tarray(\"LIMIT\" => array(\"START\" => $f_country_offset, \"MAX_ROWS\" => $ItemsPerPage)));\n$numCountries = Country::GetNumCountries($f_country_language_selected);\n\n$pager = new SimplePager($numCountries, $ItemsPerPage, \"f_country_offset\", \"index.php?\");\n\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Configure\"), \"\");\n$crumbs[] = array($translator->trans(\"Countries\"), \"\");\necho camp_html_breadcrumbs($crumbs);\n\n$controller->view->headTitle($translator->trans('Countries').' - Newscoop Admin', 'SET');\n\n?>\n\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"3\" class=\"action_buttons\">\n<?php  if ($g_user->hasPermission(\"ManageCountries\")) { ?>\n<TR>\n\t<TD>\n\t\t<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\">\n\t\t<TR>\n            <TD><A HREF=\"/<?php echo $ADMIN; ?>/country/add.php\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/add.png\" BORDER=\"0\"></A></TD>\n            <TD><A HREF=\"/<?php echo $ADMIN; ?>/country/add.php\"><B><?php echo $translator->trans(\"Add new country\"); ?></B></A></TD>\n\t\t</TR>\n\t\t</TABLE>\n\t</TD>\n</TR>\n<?php  } ?>\n<TR>\n\t<TD ALIGN=\"RIGHT\">\n\t\t<FORM METHOD=\"GET\" ACTION=\"\" NAME=\"\">\n\t\t<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\" class=\"search_dialog\">\n\t\t<TR>\n\t\t\t<TD><?php echo $translator->trans('Language', array(), 'country') ?>:</TD>\n\t\t\t<TD>\n\t\t\t\t<SELECT NAME=\"f_country_language_selected\" class=\"input_select\">\n\t\t\t\t<OPTION></option>\n\t\t\t\t<?php\n\t\t\t\tforeach ($languages as $language) {\n\t\t\t\t\tcamp_html_select_option($language->getLanguageId(), $f_country_language_selected, $language->getNativeName());\n\t\t\t    }\n\t\t\t\t?>\n\t\t\t\t</SELECT>\n\t\t\t</TD>\n\t\t\t<TD><INPUT TYPE=\"submit\" class=\"button\" NAME=\"Search\" VALUE=\"<?php echo $translator->trans('Search'); ?>\"></TD>\n\t\t</TR>\n\t\t</TABLE>\n\t\t</FORM>\n\t</TD>\n</TR>\n</TABLE>\n<p>\n\n<table class=\"action_buttons\">\n<TR>\n\t<TD>\n\t\t<?php  echo $pager->render(); ?>\n\t</TD>\n</TR>\n</TABLE>\n<TABLE BORDER=\"0\" CELLSPACING=\"1\" CELLPADDING=\"3\" class=\"table_list\">\n<TR class=\"table_list_header\">\n\t<?php  if ($g_user->hasPermission(\"ManageCountries\")) { ?>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Name\").' <small>'. $translator->trans(\"(click to edit)\") .'</small>'; ?></B></TD>\n\t<?php  } else { ?>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Name\"); ?></B></TD>\n\t<?php  } ?>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Language\"); ?></B></TD>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Code\"); ?></B></TD>\n\t<?php  if ($g_user->hasPermission(\"ManageCountries\")) { ?>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Translate\"); ?></B></TD>\n\t<?php  }\n\tif ($g_user->hasPermission(\"DeleteCountries\")) { ?>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Delete\"); ?></B></TD>\n\t<?php  } ?>\n</TR>\n\n<?php\n$color = 0;\n$previousCountryCode = \"xx\";\nforeach ($countries as $country) { ?>\n    <TR <?php  if ($color) { $color=0; ?>class=\"list_row_even\"<?php  } else { $color=1; ?>class=\"list_row_odd\"<?php  } ?>>\n\t<?php  if ($g_user->hasPermission(\"ManageCountries\")) { ?>\n\t<TD <?php  if ($previousCountryCode == $country->getCode()) { ?>class=\"translation_indent\"<?php } ?>>\n\t\t<A HREF=\"/<?php p($ADMIN); ?>/country/edit.php?f_country_code=<?php  p(urlencode($country->getCode())); ?>&f_country_language=<?php  p(urlencode($country->getLanguageId())); ?>\"><?php p(htmlspecialchars($country->getName())); ?>&nbsp;</A>\n\t</TD>\n\n\t<?php  } else { ?>\n\t<TD <?php  if ($previousCountryCode == $country->getCode()) { ?>class=\"translation_indent\"<?php } ?>>\n\t\t<?php  p(htmlspecialchars($country->getName())); ?>&nbsp;\n\t</TD>\n\t<?php  } ?>\n\n\t<TD>\n\t<?php\n\t$language = new Language($country->getLanguageId());\n\tp(htmlspecialchars($language->getNativeName()));\n\t?>\n\t</TD>\n\n\t<TD ALIGN=\"CENTER\">\n\t<?php\n\t\tp(htmlspecialchars($country->getCode()));\n\t?>\n    </TD>\n\n    <?php  if ($g_user->hasPermission(\"ManageCountries\")) { ?>\n\t\t<TD ALIGN=\"CENTER\">\n\t\t\t<A HREF=\"/<?php p($ADMIN); ?>/country/translate.php?f_country_code=<?php p(urlencode($country->getCode())); ?>&f_country_language=<?php p($country->getLanguageId()); ?>\"><?php echo $translator->trans(\"Translate\"); ?></A>\n\t\t</TD>\n\t<?php  }\n\tif ($g_user->hasPermission(\"DeleteCountries\")) { ?>\n\t\t<TD ALIGN=\"CENTER\">\n\t\t\t<A HREF=\"/<?php p($ADMIN); ?>/country/do_del.php?f_country_code=<?php p(urlencode($country->getCode())); ?>&f_country_language=<?php p($country->getLanguageId()); ?>&<?php echo SecurityToken::URLParameter(); ?>\" onclick=\"return confirm('<?php echo $translator->trans('Are you sure you want to delete the country $1?' , array('$1' => htmlspecialchars($country->getName()).' ('.htmlspecialchars($language->getNativeName()).')'), 'country'); ?>');\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/delete.png\" BORDER=\"0\" ALT=\"Delete country <?php p(htmlspecialchars($country->getName())); ?>\" TITLE=\"Delete country <?php  p(htmlspecialchars($country->getName())); ?>\" ></A>\n\t\t</TD>\n\t<?php  } ?>\n\t</TR>\n\t<?php\n\t$previousCountryCode = $country->getCode();\n} ?>\n</table>\n<table class=\"action_buttons\">\n<TR>\n\t<TD>\n\t\t<?php  echo $pager->render(); ?>\n\t</TD>\n</TR>\n</TABLE>\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/country/translate.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/country/country_common.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!$g_user->hasPermission('ManageCountries')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to translate country names.\", array(), 'country'));\n\texit;\n}\n\n$f_country_code = Input::Get('f_country_code');\n$f_country_language = Input::Get('f_country_language');\n\n$country = new Country($f_country_code, $f_country_language);\n$languages = Language::GetLanguages(null, null, null, array(), array(), true);\n$countryTranslations = Country::GetCountries(null, $f_country_code);\n\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Configure\"), \"\");\n$crumbs[] = array($translator->trans(\"Countries\"), \"/$ADMIN/country/\");\n$crumbs[] = array($translator->trans(\"Translate country name\", array(), 'country'), \"\");\necho camp_html_breadcrumbs($crumbs);\n\n$controller->view->headTitle($translator->trans('Translate country name', array(), 'country').' - Newscoop Admin', 'SET');\n\n?>\n<P>\n<FORM NAME=\"dialog\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/country/do_translate.php\"  >\n<?php echo SecurityToken::FormParameter(); ?>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"6\" CLASS=\"table_input\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B><?php echo $translator->trans(\"Translate country name\", array(), 'country'); ?></B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Country\"); ?>:</TD>\n\t<TD>\n\t<?php\n\t$names = array();\n\tforeach ($countryTranslations as $item) {\n\t\t$names[] = $item->getName();\n\t}\n\techo implode(\", \", $names);\n\t?>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Name\"); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_country_name\" SIZE=\"32\" >\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Language\"); ?>:</TD>\n\t<TD>\n\t\t<SELECT NAME=\"f_country_new_language\" class=\"input_select\">\n\t\t<?php\n\t\tforeach ($languages as $language) {\n\t\t\t$num = Country::GetNumCountries($language->getLanguageId(), $f_country_code);\n\t\t\tif ($num == 0) { ?>\n\t\t\t\t<OPTION VALUE=\"<?php p($language->getLanguageId()); ?>\"><?php p(htmlspecialchars($language->getNativeName())); ?>\n\t\t\t\t<?php\n\t\t\t}\n\t\t} ?>\n\t\t</SELECT>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t<DIV ALIGN=\"CENTER\">\n\t<INPUT TYPE=\"HIDDEN\" NAME=\"f_country_code\" VALUE=\"<?php print $f_country_code; ?>\">\n\t<INPUT TYPE=\"HIDDEN\" NAME=\"f_country_orig_language\" VALUE=\"<?php  print $f_country_language; ?>\">\n\t<INPUT TYPE=\"submit\" class=\"button\" NAME=\"Save\" VALUE=\"<?php  echo $translator->trans('Save'); ?>\">\n\t<!--<INPUT TYPE=\"button\" class=\"button\" NAME=\"Cancel\" VALUE=\"<?php  echo $translator->trans('Cancel'); ?>\" ONCLICK=\"location.href='/admin/country/'\">-->\n\t</DIV>\n\t</TD>\n</TR>\n</TABLE>\n</FORM>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/home.php",
    "content": "<?php\n\nrequire_once dirname(dirname(__FILE__)) . '/db_connect.php';\nrequire_once dirname(dirname(__FILE__)) . '/classes/Input.php';\nrequire_once dirname(dirname(__FILE__)) . '/classes/Extension/WidgetContext.php';\nrequire_once dirname(dirname(__FILE__)) . '/classes/Extension/WidgetManager.php';\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n$em = \\Zend_Registry::get('container')->getService('em');\n\n$auth = \\Zend_Auth::getInstance();\nif (!$auth->hasIdentity()) {\n    camp_html_goto_page('/admin');\n}\n\n// install default widgets for admin\nWidgetManager::SetDefaultWidgetsAll();\n\n// 7 days published articles\n\n$activeUsers = $em->getRepository('Newscoop\\Entity\\User')->getLatelyLoggedInUsers(7, true)->getSingleScalarResult();\n$date = new \\DateTime();\n$commentsCount =  $em->getRepository('Newscoop\\Entity\\Comment')\n    ->createQueryBuilder('c')\n    ->andWhere('c.time_created > :date')\n    ->select('COUNT(c)')\n    ->setParameter('date', $date->modify('- 7 days'))\n    ->getQuery()\n    ->getSingleScalarResult();\n\n$newArticles = $em->getRepository('Newscoop\\Entity\\Article')\n    ->createQueryBuilder('a')\n    ->select('count(a)')\n    ->where('a.workflowStatus = :workflowStatus')\n    ->andWhere('a.published > :date')\n    ->setParameters(array(\n        'workflowStatus' => 'Y',\n        'date' => $date\n    ))\n    ->getQuery()\n    ->getSingleScalarResult();\n$controller->view->headTitle($translator->trans('Dashboard', array(), 'home').' - Newscoop Admin', 'SET');\necho '<div class=\"toolbar clearfix\"><span class=\"article-title\">';\necho $translator->trans('Dashboard', array(), 'home');\necho '</span>';\necho '<div style=\"float:right; padding: 8px;\" title=\"Last 7 days statistics\">';\necho $translator->trans('Active users', array(), 'home').': '.$activeUsers.', '.$translator->trans('New comments', array(), 'home').': '.$commentsCount.', '.$translator->trans('Published articles', array(), 'home').': '.$newArticles.'</div>';\necho '</div>';\n\nif (!$preferencesService->stat_ask_time) $preferencesService->stat_ask_time = '0';\n\n$request_only = false;\nif (!$preferencesService->support_send && (int) $preferencesService->stat_ask_time <= time() && empty($_SESSION['statDisplayed'])) {\n    $statUrl = $Campsite['WEBSITE_URL'].'/admin/support/popup';\n    $request_only = true;\n    ?><a style=\"display: none;\" id=\"dummy_stat_link\" href=\"<?php echo($statUrl); ?>\"></a><?php\n}\n\n// clear cache\n$clearCache = Input::Get('clear_cache', 'string', 'no', true);\nif ((CampCache::IsEnabled() || CampTemplateCache::factory()) && ($clearCache == 'yes')\n        && $g_user->hasPermission('ClearCache')) {\n    // Clear cache engine's cache\n    CampCache::singleton()->clear('user');\n    CampCache::singleton()->clear();\n\n    // Clear compiled templates\n    require_once dirname(dirname(__FILE__)) . '/template_engine/classes/CampTemplate.php';\n    CampTemplate::singleton()->clearCompiledTemplate();\n\n    // Clear template cache storage\n    if (CampTemplateCache::factory()) CampTemplateCache::factory()->clean();\n\n    $actionMsg = $translator->trans('Newscoop cache was cleaned up', array(), 'home');\n    $res = 'OK';\n}\n\n?>\n\n<?php if (!empty($actionMsg)) { ?>\n<script type=\"text/javascript\">\n$(function () {\n    <?php if ($res == 'OK') { ?>\n    flashMessage('<?php echo $actionMsg; ?>', null, true);\n    <?php } else { ?>\n    flashMessage('<?php echo $actionMsg; ?>', 'error', true);\n    <?php } ?>\n});\n</script>\n<?php } ?>\n\n<?php camp_html_display_msgs(\"0.25em\", \"0.25em\"); ?>\n\n<div class=\"links\"><a href=\"<?php echo $Campsite['WEBSITE_URL']; ?>/admin/widgets.php\" title=\"<?php echo $translator->trans('Add more widgets', array(), 'home'); ?>\"><?php echo $translator->trans('Add more widgets', array(), 'home'); ?></a></div>\n\n<div id=\"dashboard\">\n\n<div class=\"column\">\n<?php\nif (!$request_only) {\n    $context = new WidgetContext('dashboard1');\n    $context->render();\n}\n?>\n</div>\n\n<div class=\"column\">\n<?php\nif (!$request_only) {\n    $context = new WidgetContext('dashboard2');\n    $context->render();\n}\n?>\n</div>\n\n</div><!-- /#dashboard -->\n\n<div class=\"clear\"></div>\n<script src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/jquery/jquery.cookie.js\" type=\"text/javascript\"></script>\n<script type=\"text/javascript\">\n$(document).ready(function () {\n    $('#dummy_stat_link').fancybox({\n        showCloseButton: true,\n        overlayShow: true,\n        hideOnOverlayClick: false,\n        hideOnContentClick: false,\n        enableEscapeButton: false,\n        centerOnScroll: true,\n        onClosed: function () {\n            $.getJSON(\"<?php echo($Campsite['WEBSITE_URL'].'/admin/support/close'); ?>\", function (data) {\n                window.location.reload();\n            });\n        },\n        overlayOpacity: 0.8,\n        overlayColor: '#666',\n        onStart: function () {\n            $(\"#fancybox-overlay\").css({\n                'background-color': '#666',\n                opacity: 0.8,\n                height: $(document).height()\n            }).show();\n        }\n    }).trigger('click');\n\n    $('.context').widgets({\n        localizer: {\n            remove: '<?php echo $translator->trans('Remove widget', array(), 'home'); ?>',\n            info: '<?php echo $translator->trans('Widget info', array(), 'home'); ?>',\n        }\n    });\n});\n</script>\n\n<?php camp_html_copyright_notice(); ?>\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/admin-files/html_head.php",
    "content": "<?php\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n// locale for datepicker\n$locale = !empty($_COOKIE['TOL_Language']) ? $_COOKIE['TOL_Language'] : 'en';\nif ($locale == 'cz') {\n    $locale = 'cs';\n}\n?>\n\n<link rel=\"shortcut icon\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/images/7773658c3ccbf03954b4dacb029b2229.ico\" />\n<link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/jquery-ui-1.8.6.custom.css\" />\n<link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/admin_stylesheet.css?v=1.0\" />\n\n\n\n<?php if(!isset($f_context_box)) {?>\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/admin_stylesheet_new.css\" />\n<?php } else { ?>\n\t<link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/admin_stylesheet_context.css\" />\n<?php } ?>\n\n\n<?php if (isset($f_multidate_box)) {?> <link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/multidate.css\" /> <?php }?>\n\n<link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/content.css\" />\n<link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/ColVis.css\" />\n\n<script src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/jquery/jquery-1.7.1.min.js\" type=\"text/javascript\"></script>\n<script src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/jquery/jquery-ui-1.8.6.custom.min.js\" type=\"text/javascript\"></script>\n\n<?php if ($locale != 'en') { ?>\n<script src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/jquery/i18n/jquery.ui.datepicker-<?php echo $locale; ?>.js\" type=\"text/javascript\"></script>\n<?php } ?>\n<script src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/jquery/jquery-ui-timepicker-addon.min.js\" type=\"text/javascript\"></script>\n\n<script type=\"text/javascript\"><!--\n    var website_url = '<?php echo $Campsite['WEBSITE_URL'];?>';\n    var g_admin_url = '/<?php echo $ADMIN; ?>';\n    var g_security_token = '<?php echo SecurityToken::GetToken(); ?>';\n    var g_admin_img = '<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>';\n    var popupFlash = false;\n\n    var localizer = localizer || {\n        processing: '<?php echo $translator->trans('Processing...', array(), 'home'); ?>',\n        session_expired: '<?php echo $translator->trans('Session expired.', array(), 'home'); ?>',\n        please: '<?php echo $translator->trans('Please', array(), 'home'); ?>',\n        login: '<?php echo $translator->trans('login', array(), 'home'); ?>',\n        connection_interrupted : '<?php echo $translator->trans('Connection interrupted', array(), 'home') ?>',\n        try_again_later : '<?php echo $translator->trans('try again later', array(), 'home') ?>'\n    };\n\n    $(function() {\n        $.datepicker.setDefaults( $.datepicker.regional['<?php echo $locale; ?>'] );\n    });\n//--></script>\n\n<script src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/jquery/jquery.cookie.js\" type=\"text/javascript\"></script>\n<script src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/jquery/jquery.dataTables.min.js\" type=\"text/javascript\"></script>\n<script src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/jquery/ColVis.min.js\" type=\"text/javascript\"></script>\n\n<script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/admin.js\"></script>\n"
  },
  {
    "path": "newscoop/admin-files/index.php",
    "content": "<?php\nrequire_once($Campsite['HTML_DIR'] . \"/$ADMIN_DIR/home.php\");\n?>\n"
  },
  {
    "path": "newscoop/admin-files/issues/add_new.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/issues/issue_common.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n// Check permissions\nif (!$g_user->hasPermission('ManageIssue') || !SaaS::singleton()->hasPermission('ManageIssueTemplates')) {\n\tcamp_html_display_error($translator->trans('You do not have the right to add issues.', array(), 'issues'));\n\texit;\n}\n\n$Pub = Input::Get('Pub', 'int');\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid Input: $1', array('$1' => Input::GetErrorString()), 'issues'));\n\texit;\n}\n$publicationObj = new Publication($Pub);\n$allLanguages = Language::GetLanguages(null, null, null, array(), array(), true);\n$newIssueId = Issue::GetUnusedIssueId($Pub);\n\ninclude_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/javascript_common.php\");\n\ncamp_html_content_top($translator->trans('Add new issue'), array('Pub' => $publicationObj), true, true, array($translator->trans(\"Issues\") => \"/$ADMIN/issues/?Pub=$Pub\"));\n$controller->view->headTitle($translator->trans('Add new issue').' - Newscoop Admin', 'SET');\ncamp_html_display_msgs();\n?>\n\n<P>\n<FORM name=\"issue_add\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/issues/do_add_new.php\" onsubmit=\"return <?php camp_html_fvalidate(); ?>;\">\n<?php echo SecurityToken::FormParameter(); ?>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" CLASS=\"box_table\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B><?php echo $translator->trans(\"Add new issue\"); ?></B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Name\"); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_issue_name\" SIZE=\"32\" alt=\"blank\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => \"'\".$translator->trans('Name').\"'\")); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Language\"); ?>:</TD>\n\t<TD>\n\t<SELECT NAME=\"f_language_id\" class=\"input_select\">\n\t   <?php\n            foreach ($allLanguages as $language) {\n            \tcamp_html_select_option($language->getLanguageId(), $publicationObj->getLanguageId(), $language->getNativeName());\n            }\n        ?>\n\t</SELECT>\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Number\"); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_issue_number\" VALUE=\"<?php p($newIssueId); ?>\" SIZE=\"5\" MAXLENGTH=\"10\" alt=\"number|0|1|1000000000\" emsg=\"<?php echo $translator->trans(\"You must input a number greater than 0 into the $1 field.\", array('$1' => \"'\".$translator->trans(\"Number\").\"'\")); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"URL Name\"); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_url_name\" VALUE=\"<?php p($newIssueId); ?>\" SIZE=\"32\"  alt=\"alnum|1|A|true|false|_\" emsg=\"<?php echo $translator->trans('The $1 field may only contain letters, digits and underscore (_) character.', array('$1' => \"'\" . $translator->trans('URL Name') . \"'\")); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\">\n\t\t<INPUT TYPE=\"HIDDEN\" NAME=\"f_publication_id\" VALUE=\"<?php p($Pub); ?>\">\n\t\t<INPUT TYPE=\"submit\" class=\"button\" NAME=\"Save\" VALUE=\"<?php echo $translator->trans('Save'); ?>\">\n\t\t&nbsp;&nbsp;\n\t\t<INPUT TYPE=\"button\" class=\"button\" NAME=\"Cancel\" VALUE=\"<?php echo $translator->trans('Cancel'); ?>\" ONCLICK=\"location.href='/<?php p($ADMIN); ?>/issues/?Pub=<?php p($Pub); ?>'\">\n\t</TD>\n</TR>\n</TABLE>\n</FORM>\n<P>\n<script>\ndocument.issue_add.f_issue_name.focus();\n</script>\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/issues/add_prev.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/issues/issue_common.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n// Check permissions\nif (!$g_user->hasPermission('ManageIssue')) {\n\tcamp_html_display_error($translator->trans('You do not have the right to add issues.', array(), 'issues'));\n\texit;\n}\n\n$Pub = Input::Get('Pub', 'int');\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid Input: $1', array('$1' => Input::GetErrorString()), 'issues'));\n\texit;\n}\n$publicationObj = new Publication($Pub);\n$allLanguages = Language::GetLanguages(null, null, null, array(), array(), true);\n$newIssueId = Issue::GetUnusedIssueId($Pub);\n$lastCreatedIssue = Issue::GetLastCreatedIssue($Pub);\n\ninclude_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/javascript_common.php\");\n\ncamp_html_content_top($translator->trans('Copy previous issue', array(), 'issues'), array('Pub' => $publicationObj), true, true, array($translator->trans(\"Issues\") => \"/$ADMIN/issues/?Pub=$Pub\"));\n$controller->view->headTitle($translator->trans('Copy previous issue', array(), 'issues').' - Newscoop Admin', 'SET');\n\nif (is_null($lastCreatedIssue)) { ?>\n    <BLOCKQUOTE>\n\t<LI><?php echo $translator->trans('No previous issue.', array(), 'issues'); ?></LI>\n    </BLOCKQUOTE>\n    <?php\n} else {\n\tcamp_html_display_msgs();\n\t?>\n\n<P>\n<FORM name=\"issue_add\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/issues/do_add_prev.php\" onsubmit=\"return <?php camp_html_fvalidate(); ?>;\">\n<?php echo SecurityToken::FormParameter(); ?>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" CLASS=\"box_table\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B><?php echo $translator->trans(\"Copy previous issue\", array(), 'issues'); ?></B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\"><?php echo $translator->trans('Copy structure from issue number $1', array('$1' => '<B>'. $lastCreatedIssue->getIssueNumber().'</B>'), 'issues'); ?></TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Issue Number\", array(), 'issues'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_issue_number\" VALUE=\"<?php  print ($lastCreatedIssue->getIssueNumber() + 1); ?>\" SIZE=\"5\" MAXLENGTH=\"10\" alt=\"number|0|1|1000000000\" emsg=\"<?php echo $translator->trans(\"You must input a number greater than 0 into the $1 field.\", array('$1' => \"'\".$translator->trans(\"Number\").\"'\")); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\">\n\t\t<INPUT TYPE=\"HIDDEN\" NAME=\"f_publication_id\" VALUE=\"<?php p($Pub); ?>\">\n\t\t<INPUT TYPE=\"submit\" class=\"button\" NAME=\"Save\" VALUE=\"<?php  echo $translator->trans('Save'); ?>\">\n\t</TD>\n</TR>\n</TABLE>\n</FORM>\n<P>\n<script>\ndocument.issue_add.f_issue_number.focus();\n</script>\n<?php  } ?>\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/issues/autopublish.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/issues/issue_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/IssuePublish.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n// Check permissions\nif (!$g_user->hasPermission('ManageIssue')) {\n\tcamp_html_display_error($translator->trans('You do not have the right to change issues.', array(), 'issues'));\n\texit;\n}\n$Pub = Input::Get('Pub', 'int');\n$Issue = Input::Get('Issue', 'int');\n$Language = Input::Get('Language', 'int');\n$event_id = Input::Get('event_id', 'string', null, true);\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid Input: $1', array('$1' => Input::GetErrorString()), 'issues'));\n\texit;\n}\n$publicationObj = new Publication($Pub);\n$issueObj = new Issue($Pub, $Language, $Issue);\n\n$action = '';\n$publish_articles = '';\n$publish_date = date(\"Y-m-d\");\n$publish_hour = (date(\"H\") + 1);\n$publish_min = \"00\";\n\nif (!is_null($event_id)) {\n\t$issuePublishObj = new IssuePublish($event_id);\n\tif ($issuePublishObj->exists()) {\n\t\t$action = $issuePublishObj->getPublishAction();\n\t\t$publish_articles = $issuePublishObj->getPublishArticlesAction();\n\t}\n\t$datetime = explode(\" \", trim($issuePublishObj->getActionTime()));\n\t$publish_date = $datetime[0];\n\t$publish_time = explode(\":\", trim($datetime[1]));\n\t$publish_hour = $publish_time[0];\n\t$publish_min = $publish_time[1];\n}\n\ncamp_html_content_top($translator->trans('Issue Publishing Schedule', array(), 'issues'), array('Pub' => $publicationObj, 'Issue' => $issueObj), true, true);\n\n?>\n\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\" class=\"action_buttons\" style=\"padding-top: 5px;\">\n<TR>\n\t<TD><A HREF=\"/<?php echo $ADMIN; ?>/issues/?Pub=<?php  p($Pub); ?>\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/left_arrow.png\" BORDER=\"0\"></A></TD>\n\t<TD><A HREF=\"/<?php echo $ADMIN; ?>/issues/?Pub=<?php  p($Pub); ?>\"><B><?php echo $translator->trans(\"Issue List\"); ?></B></A></TD>\n\t<TD style=\"padding-left: 20px;\"><A HREF=\"/<?php echo $ADMIN; ?>/issues/?Pub=<?php  p($Pub); ?>\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/left_arrow.png\" BORDER=\"0\"></A></TD>\n\t<TD><A HREF=\"/<?php echo $ADMIN; ?>/issues/edit.php?Pub=<?php  p($Pub); ?>&Issue=<?php  p($issueObj->getIssueNumber()); ?>&Language=<?php p($issueObj->getLanguageId()); ?>\"><B><?php  echo $translator->trans(\"Issue\").\": \".htmlspecialchars($issueObj->getName()); ?></B></A></TD>\n</TR>\n</TABLE>\n\n<P>\n<FORM NAME=\"dialog\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/issues/autopublish_do_add.php\" onsubmit=\"return <?php camp_html_fvalidate(); ?>;\">\n<?php echo SecurityToken::FormParameter(); ?>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" class=\"box_table\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<?php if (is_null($event_id)) { ?>\n\t\t<B><?php echo $translator->trans(\"Schedule a new action\"); ?></B>\n\t\t<?php } else { ?>\n\t\t<B><?php echo $translator->trans(\"Edit\"); ?></B>\n\t\t<?php } ?>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<INPUT TYPE=\"HIDDEN\" NAME=\"Pub\" VALUE=\"<?php echo $Pub; ?>\">\n<INPUT TYPE=\"HIDDEN\" NAME=\"Issue\" VALUE=\"<?php echo $Issue; ?>\">\n<INPUT TYPE=\"HIDDEN\" NAME=\"Language\" VALUE=\"<?php echo $Language; ?>\">\n<?php if (!is_null($event_id)) { ?>\n<input type=\"hidden\" name=\"event_id\" value=\"<?php echo $event_id; ?>\">\n<?php } ?>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Date\"); ?>:</TD>\n\t<TD>\n\t\t<?php $now = getdate(); ?>\n\t\t<input type=\"text\" class=\"input_text date minDate_0\" name=\"publish_date\" id=\"publish_date\" maxlength=\"10\" size=\"11\" value=\"<?php p($publish_date); ?>\" alt=\"date|yyyy/mm/dd|-|4|<?php echo $now[\"year\"].\"/\".$now[\"mon\"].\"/\".$now[\"mday\"]; ?>\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => \"'\".$translator->trans('Date').\"'\")); ?> <?php echo $translator->trans(\"The date must be in the future.\"); ?>\" />\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Time\"); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"publish_hour\" SIZE=\"2\" MAXLENGTH=\"2\" VALUE=\"<?php p($publish_hour); ?>\" alt=\"number|0|0|23\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => \"'\".$translator->trans('Time').\"'\")); ?>\"> :\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"publish_min\" SIZE=\"2\" MAXLENGTH=\"2\" VALUE=\"<?php p($publish_min); ?>\" alt=\"number|0|0|59\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => \"'\".$translator->trans('Time').\"'\")); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Action\"); ?>:</TD>\n\t<TD>\n\t<SELECT NAME=\"action\" class=\"input_select\" alt=\"select\" emsg=\"<?php echo $translator->trans('You must select an action.'); ?>\">\n\t\t<OPTION VALUE=\" \">---</OPTION>\n\t\t<OPTION VALUE=\"P\" <?php if ($action == \"P\") echo \"SELECTED\"; ?>><?php echo $translator->trans(\"Publish\"); ?></OPTION>\n\t\t<OPTION VALUE=\"U\" <?php if ($action == \"U\") echo \"SELECTED\"; ?>><?php echo $translator->trans(\"Unpublish\"); ?></OPTION>\n\t</SELECT>\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Publish all articles\", array(), 'issues'); ?>:</TD>\n\t<TD>\n\t<SELECT NAME=\"publish_articles\" class=\"input_select\">\n\t\t<OPTION VALUE=\"Y\" <?php if ($publish_articles == \"Y\") echo \"SELECTED\"; ?>><?php echo $translator->trans(\"Yes\"); ?></OPTION>\n\t\t<OPTION VALUE=\"N\" <?php if ($publish_articles == \"N\") echo \"SELECTED\"; ?>><?php echo $translator->trans(\"No\"); ?></OPTION>\n\t</SELECT>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t<DIV ALIGN=\"CENTER\">\n\t<INPUT TYPE=\"submit\" class=\"button\" NAME=\"Save\" VALUE=\"<?php echo $translator->trans('Save'); ?>\">\n\t</DIV>\n\t</TD>\n</TR>\n</TABLE>\n</FORM>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/issues/autopublish_del.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/issues/issue_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/IssuePublish.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Check permissions\nif (!$g_user->hasPermission('Publish')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to schedule issues or articles for automatic publishing.\"));\n}\n\n$Pub = Input::Get('Pub', 'int', 0);\n$Issue = Input::Get('Issue', 'int', 0);\n$Language = Input::Get('Language', 'int', 0);\n$event_id = trim(Input::Get('event_id', 'string', ''));\n\n$action = new IssuePublish($event_id);\n$deleted = $action->delete();\n\nif ($deleted) {\n        $issueObj = new Issue($Pub, $Language, $Issue);\n        camp_html_goto_page(\"/$ADMIN/issues/edit.php?Pub=$Pub&Issue=$Issue&Language=$Language\");\n}\n$publicationObj = new Publication($Pub);\n$issueObj = new Issue($Pub, $Language, $Issue);\n$crumbs = array(\"Pub\" => $publicationObj, \"Issue\" => $issueObj);\ncamp_html_content_top($translator->trans(\"Delete scheduled publish action\"), $crumbs);\n?>\n\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B> <?php  echo $translator->trans(\"Delete scheduled publish action\"); ?> </B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<BLOCKQUOTE>\n\t\t<LI><?php echo $translator->trans('The action scheduled on $1 could not be deleted.', array('$1' => '<B>'.$publish_time.'</B>'), 'issues'); ?></LI>\n\t\t</BLOCKQUOTE>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t<DIV ALIGN=\"CENTER\">\n\t<INPUT TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php echo $ADMIN; ?>/issues/edit.php?Pub=<?php p($Pub); ?>&Issue=<?php p($Issue); ?>&Language=<?php p($Language); ?>'\">\n\t</DIV>\n\t</TD>\n</TR>\n</TABLE>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/issues/autopublish_do_add.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/issues/issue_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/IssuePublish.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Check permissions\nif (!$g_user->hasPermission('Publish')) {\n    camp_html_display_error($translator->trans(\"You do not have the right to schedule issues or articles for automatic publishing.\"));\n}\n\n// Get input\n$Pub = Input::Get('Pub', 'int', 0);\n$Issue = Input::Get('Issue', 'int', 0);\n$Language = Input::Get('Language', 'int', 0);\n$event_id = Input::Get('event_id', 'int', null, true);\n$publish_date = trim(Input::Get('publish_date', 'string', ''));\n$action = trim(Input::Get('action', 'string', ''));\n$publish_articles = trim(Input::Get('publish_articles', 'string', ''));\n$publish_hour = trim(Input::Get('publish_hour', 'string', ''));\n$publish_min = trim(Input::Get('publish_min', 'string', ''));\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString()) , 'issues'));\n\texit;\n}\n\n\n$correct = ($publish_date != \"\") && ($publish_hour != \"\")\n\t&& ($publish_min != \"\") && ($action == \"P\" || $action == \"U\");\n\n// Check that publish date is not in the past\n$past_publish = 0;\nif( date (\"Y-m-d\", time() ) == $publish_date ) {\n\tif(strlen($publish_hour) == 1) {\n\t\t$server_hour = date(\"G\", time());\n\t} else {\n\t\t$server_hour = date(\"H\", time());\n\t}\n\tif( $server_hour >= $publish_hour) {\n\t\tif( $server_hour > $publish_hour) {\n\t\t\t$correct = 0;\n\t\t\t$past_publish = 1;\n\t\t} else {\n\t\t\tif( date(\"i\", time()) > $publish_min) {\n\t\t\t\t$correct = 0;\n\t\t\t\t$past_publish = 1;\n\t\t\t}\n\t\t}\n\t}\n}\n\n$publish_time = $publish_date . \" \" . $publish_hour . \":\" . $publish_min . \":00\";\n\n// check publish/unpublish same time\nforeach( IssuePublish::GetIssueEvents($Pub, $Issue, $Language, false ) as $evt ) {\n    if( strtotime( $evt->m_data['time_action'] ) == strtotime( $publish_time )\n        && ( $action != $evt->m_data['publish_action'] ) ) {\n        $correct = false;\n        $conflicting_action = true;\n    }\n}\n\nif ($publish_articles != \"Y\" && $publish_articles != \"N\") {\n\t$publish_articles = \"N\";\n}\n\n$created = 0;\nif ($correct) {\n    $issuePublishExists = true;\n\n    $issuePublishObj = new IssuePublish($event_id);\n\tif (!$issuePublishObj->exists()) {\n\t    $issuePublishObj->create();\n\t    $issuePublishObj->setPublicationId($Pub);\n\t    $issuePublishObj->setIssueNumber($Issue);\n\t    $issuePublishObj->setLanguageId($Language);\n\t    $issuePublishExists = false;\n\n\t}\n    $issuePublishObj->setPublishAction($action);\n    $issuePublishObj->setPublishArticlesAction($publish_articles);\n    $issuePublishObj->setActionTime($publish_time);\n\t$created = 1;\n}\nif ($created) {\n\n        $action = ($issuePublishExists) ? 'updated' : 'added';\n        $issueObj = new Issue($Pub, $Language, $Issue);\n        camp_html_goto_page(\"/$ADMIN/issues/edit.php?Pub=$Pub&Issue=$Issue&Language=$Language\");\n}\n\n$issueObj = new Issue($Pub, $Language, $Issue);\n$publicationObj = new Publication($Pub);\n$crumbs = array(\"Pub\" => $publicationObj, \"Issue\" => $issueObj);\ncamp_html_content_top($translator->trans(\"Scheduling a new publish action\"), $crumbs);\n?>\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" class=\"box_table\">\n\t<TR>\n\t\t<TD COLSPAN=\"2\">\n\t\t\t<B> <?php echo $translator->trans(\"Scheduling a new publish action\"); ?> </B>\n\t\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t\t</TD>\n\t</TR>\n\t<TR>\n\t\t<TD COLSPAN=\"2\"><BLOCKQUOTE>\n<?php\n\tif ( $publish_date == \"\" ) {\n\t$correct= 0; ?>\t<LI><?php echo $translator->trans('You must fill in the $1 field.', array('$1' => '<B>'.$translator->trans('Date').'</B>')); ?></LI>\n\t<?php }\n\n    if ( ($publish_hour == \"\") || ($publish_min == \"\") ) {\n\t$correct= 0; ?>\t<LI><?php echo $translator->trans('You must fill in the $1 field.','<B>'. array('$1' => $translator->trans('Time').'</B>' )); ?></LI>\n    <?php }\n\n\tif ( ($action != \"P\") && ($action != \"U\") ) {\n\t$correct= 0; ?>\t<LI><?php echo $translator->trans('You must select an action.'); ?></LI>\n    <?php }\n\n\tif ($past_publish) {\n\t?>\t<LI><?php echo $translator->trans('The publishing schedule can not be set in the past', array(), 'issues'); ?></LI>\n    <?php }\n\n    if ($conflicting_action) {\n\t?>\t<LI><?php echo $translator->trans('The publishing/unpublishing can not be set the same time', array(), 'issues'); ?></LI>\n    <?php }\n\n\tif ($correct) {\n\t\tif (!$created) { ?>\n\t\t\t<LI><?php echo $translator->trans('There was an error scheduling the $1 action on $2', array('$1' => $translator->trans($action_str), '$2' => $publish_time), 'issues'); ?></LI>\n\t       <?php\n\t\t}\n    }\n?>\t</BLOCKQUOTE></TD>\n\t</TR>\n\t<TR>\n\t\t<TD COLSPAN=\"2\">\n\t\t<DIV ALIGN=\"CENTER\">\n\t<INPUT TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php echo $ADMIN; ?>/issues/edit.php?Pub=<?php p($Pub); ?>&Issue=<?php p($Issue); ?>&Language=<?php p($Language); ?>'\">\n\t\t</DIV>\n\t\t</TD>\n\t</TR>\n</TABLE>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/issues/delete.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/issues/issue_common.php\");\nrequire_once($GLOBALS['g_campsiteDir']. '/classes/Article.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n// Check permissions\nif (!$g_user->hasPermission('DeleteIssue')) {\n\tcamp_html_display_error($translator->trans('You do not have the right to delete issues.', array(), 'issues'));\n\texit;\n}\n$f_publication_id = Input::Get('f_publication_id', 'int');\n$f_issue_number = Input::Get('f_issue_number', 'int');\n$f_language_id = Input::Get('f_language_id', 'int');\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid Input: $1', array('$1' => Input::GetErrorString()), 'issues'));\n\texit;\n}\n\n$numArticles = count(Article::GetArticles($f_publication_id, $f_issue_number, null, $f_language_id));\n$publicationObj = new Publication($f_publication_id);\n$issueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\n\ncamp_html_content_top($translator->trans('Delete issue', array(), 'issues'), array('Pub' => $publicationObj, 'Issue' => $issueObj));\n$controller->view->headTitle($translator->trans('Delete issue', array(), 'issues').' - Newscoop Admin', 'SET');\n?>\n<P>\n<FORM METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/issues/do_del.php\">\n<?php echo SecurityToken::FormParameter(); ?>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B> <?php echo $translator->trans(\"Delete issue\", array(), 'issues'); ?> </B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\">\n\t\t<?php echo $translator->trans('There are $1 articles in this issue.', array('$1' => '<b>'.$numArticles.'</b>'), 'issues'); ?>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\"><?php echo $translator->trans('Are you sure you want to delete the issue $1?', array('$1' => '<B>'.htmlspecialchars($issueObj->getName()).' ('.$issueObj->getLanguageName().')</B>'), 'issues'); ?></TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\">\n\t<INPUT TYPE=\"HIDDEN\" NAME=\"f_publication_id\" VALUE=\"<?php p($f_publication_id); ?>\">\n\t<INPUT TYPE=\"HIDDEN\" NAME=\"f_issue_number\" VALUE=\"<?php p($f_issue_number); ?>\">\n\t<INPUT TYPE=\"HIDDEN\" NAME=\"f_language_id\" VALUE=\"<?php p($f_language_id); ?>\">\n\t<INPUT TYPE=\"submit\" class=\"button\" NAME=\"Yes\" VALUE=\"<?php echo $translator->trans('Yes'); ?>\">\n\t&nbsp;&nbsp;&nbsp;&nbsp;\n\t<INPUT TYPE=\"button\" class=\"button\" NAME=\"No\" VALUE=\"<?php echo $translator->trans('No'); ?>\" ONCLICK=\"location.href='/<?php p($ADMIN);?>/issues/?Pub=<?php p($f_publication_id); ?>'\">\n\t</TD>\n</TR>\n</TABLE>\n    </FORM>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/issues/do_add_new.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/issues/issue_common.php\");\n\nuse Newscoop\\Service\\ISyncResourceService;\nuse Newscoop\\Service\\IIssueService;\nuse Newscoop\\Service\\IOutputService;\n//@New theme management\nuse Newscoop\\Service\\Resource\\ResourceId;\nuse Newscoop\\Service\\IThemeManagementService;\nuse Newscoop\\Service\\IOutputSettingIssueService;\nuse Newscoop\\Entity\\Output\\OutputSettingsIssue;\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Check permissions\nif (!$g_user->hasPermission('ManageIssue')) {\n\tcamp_html_display_error($translator->trans('You do not have the right to add issues.', array(), 'issues'));\n\texit;\n}\n\n$f_publication_id = Input::Get('f_publication_id', 'int');\n$f_issue_name = trim(Input::Get('f_issue_name', 'string', ''));\n$f_issue_number = trim(Input::Get('f_issue_number', 'int'));\n$f_language_id = Input::Get('f_language_id', 'int', 0);\n$f_url_name = Input::Get('f_url_name');\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid Input: $1', array('$1' => Input::GetErrorString()), 'issues'));\n\texit;\n}\n\n$backLink = \"/$ADMIN/issues/add_new.php?Pub=$f_publication_id\";\n$created = false;\nif ($f_language_id == 0) {\n\tcamp_html_add_msg($translator->trans('You must select a language.'));\n}\nif (empty($f_issue_name)) {\n\tcamp_html_add_msg($translator->trans('You must fill in the $1 field.', array('$1' => '<B>'.$translator->trans('Name').'</B>')));\n}\nif ($f_url_name == \"\") {\n\tcamp_html_add_msg($translator->trans('You must fill in the $1 field.', array('$1' => '<B>'.$translator->trans('URL Name').'</B>')));\n}\nif (!camp_is_valid_url_name($f_url_name)) {\n\tcamp_html_add_msg($translator->trans('The $1 field may only contain letters, digits and underscore (_) character.', array('$1' => '</B>' . $translator->trans('URL Name') . '</B>')));\n}\nif (empty($f_issue_number) || !is_numeric($f_issue_number) || ($f_issue_number <= 0)) {\n\tcamp_html_add_msg($translator->trans('You must fill in the $1 field.', array('$1' => '<B>'.$translator->trans('Number').'</B>')));\n}\n\nif ($errorMsg = camp_is_issue_conflicting($f_publication_id, $f_issue_number, $f_language_id, $f_url_name, false)) {\n\tcamp_html_add_msg($errorMsg);\n}\n\nif (camp_html_has_msgs()) {\n\tcamp_html_goto_page($backLink);\n}\n\n$lastIssueObj = Issue::GetLastCreatedIssue($f_publication_id);\n\n$publicationObj = new Publication($f_publication_id);\n$newIssueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\n$created = $newIssueObj->create($f_url_name, array('Name' => $f_issue_name));\n\n//add default theme\n$resourceId = new ResourceId('Publication/Edit');\n$syncRsc = $resourceId->getService(ISyncResourceService::NAME);\n$outputService = $resourceId->getService(IOutputService::NAME);\n$outputSettingIssueService = $resourceId->getService(IOutputSettingIssueService::NAME);\n$issueService = $resourceId->getService(IIssueService::NAME);\n$themeManagementService = $resourceId->getService(IThemeManagementService::NAME_1);\n$publicationThemes = $themeManagementService->getThemes($publicationObj->getPublicationId());\n\nif (is_array($publicationThemes) && count($publicationThemes) > 0) {\n    if ($lastIssueObj instanceof Issue) {\n        $outSetIssues = $outputSettingIssueService->findByIssue($lastIssueObj->getIssueId());\n        $themePath = null;\n        if (count($outSetIssues) > 0) {\n            $outSetIssue = $outSetIssues[0];\n            $themePath = $outSetIssue->getThemePath()->getPath();\n        }\n        if ($themePath == null) {\n            $themePath = $publicationThemes[0]->getPath();\n        }\n        if ($themePath == null) {\n            $f_theme_id = '0';\n        } else {\n            $f_theme_id = $themePath;\n        }\n    } else {\n        $f_theme_id = $publicationThemes[0]->getPath();\n    }\n\n    $issueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\n\n    $outSetIssues = $outputSettingIssueService->findByIssue($issueObj->getIssueId());\n\n    $newOutputSetting = false;\n    if (count($outSetIssues) > 0) {\n        $outSetIssue = $outSetIssues[0];\n    } else {\n        $outSetIssue = new OutputSettingsIssue();\n        $outSetIssue->setOutput($outputService->findByName('Web'));\n        $outSetIssue->setIssue($issueService->getById($issueObj->getIssueId()));\n        $newOutputSetting = true;\n    }\n    $outSetIssue->setThemePath($syncRsc->getThemePath($f_theme_id));\n    $outSetIssue->setFrontPage(null);\n    $outSetIssue->setSectionPage(null);\n    $outSetIssue->setArticlePage(null);\n\n    if (SaaS::singleton()->hasPermission('ManageIssueTemplates')) {\n        if($newOutputSetting){\n            $outputSettingIssueService->insert($outSetIssue);\n        } else {\n            $outputSettingIssueService->update($outSetIssue);\n        }\n    }\n    //end to add default theme\n} else {\n\t$f_theme_id = null;\n}\n\n\nif ($created) {\n\tcamp_html_add_msg($translator->trans(\"Issue created.\", array(), 'issues'), \"ok\");\n\tcamp_html_goto_page(\"/$ADMIN/issues/edit.php?Pub=$f_publication_id&Issue=$f_issue_number&Language=$f_language_id\");\n} else {\n\tcamp_html_add_msg($translator->trans('The issue could not be added.', array(), 'issues'));\n\tcamp_html_goto_page($backLink);\n}\n?>"
  },
  {
    "path": "newscoop/admin-files/issues/do_add_prev.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/issues/issue_common.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Check permissions\nif (!$g_user->hasPermission('ManageIssue')) {\n\tcamp_html_display_error($translator->trans('You do not have the right to add issues.', array(), 'issues'));\n\texit;\n}\n\n$f_publication_id = Input::Get('f_publication_id', 'int');\n$f_issue_number = trim(Input::Get('f_issue_number', 'int'));\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid Input: $1', array('$1' => Input::GetErrorString()), 'issues'));\n\texit;\n}\n\n$backLink = \"/$ADMIN/issues/add_prev.php?Pub=$f_publication_id\";\n$publicationObj = new Publication($f_publication_id);\nif (!$publicationObj->exists()) {\n\tcamp_html_display_error($translator->trans(\"Publication does not exist.\"));\n\texit;\n}\n\n$created = false;\n$errorMsgs = array();\nif ( empty($f_issue_number) || !is_numeric($f_issue_number) || ($f_issue_number <= 0) ) {\n\tcamp_html_add_msg($translator->trans('You must fill in the $1 field.', array('$1' => '<B>'.$translator->trans('Number').'</B>')));\n}\n\nif (camp_html_has_msgs()) {\n\tcamp_html_goto_page($backLink);\n}\n// check if the issue number already exists\n$lastIssue = Issue::GetLastCreatedIssue($f_publication_id);\n$existingIssues = Issue::GetIssues($f_publication_id, null, $f_issue_number, null, null, false, null, true);\nif (count($existingIssues) > 0) {\n\t$conflictingIssue = array_pop($existingIssues);\n\t$conflictingIssueLink = \"/$ADMIN/issues/edit.php?\"\n\t\t.\"Pub=$f_publication_id\"\n\t\t.\"&Issue=\".$conflictingIssue->getIssueNumber()\n\t\t.\"&Language=\".$conflictingIssue->getLanguageId();\n\n\t$errMsg = $translator->trans('The number must be unique for each issue in this publication of the same language.', array(), 'issues').\"<br>\".$translator->trans('The values you are trying to set conflict with issue $1$2. $3 ($4)$5.', array(\n\t\t'$1' => \"<a href='$conflictingIssueLink' class='error_message' style='color:#E30000;'>\",\n\t\t'$2' => $conflictingIssue->getIssueNumber(),\n\t\t'$3' => $conflictingIssue->getName(),\n\t\t'$4' => $conflictingIssue->getLanguageName(),\n\t\t'$5' => '</a>'), 'issues');\n\tcamp_html_add_msg($errMsg);\n\tcamp_html_goto_page($backLink);\n}\n\n$issueCopies = $lastIssue->copy(null, $f_issue_number);\nif (!is_null($issueCopies)) {\n\t$issueCopy = $issueCopies[0];\n\tcamp_html_add_msg($translator->trans(\"Issue created.\", array(), 'issues'), \"ok\");\n\tcamp_html_goto_page(\"/$ADMIN/issues/edit.php?Pub=$f_publication_id&Issue=\".$issueCopy->getIssueNumber()\n\t\t   .\"&Language=\".$issueCopy->getLanguageId());\n} else {\n\tcamp_html_add_msg($translator->trans(\"The issue could not be added.\", array(), 'issues'));\n\tcamp_html_goto_page($backLink);\n}\n?>"
  },
  {
    "path": "newscoop/admin-files/issues/do_del.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/issues/issue_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Check permissions\nif (!$g_user->hasPermission('DeleteIssue')) {\n\tcamp_html_display_error($translator->trans('You do not have the right to delete issues.', array(), 'issues'));\n\texit;\n}\n\n$f_publication_id = Input::Get('f_publication_id', 'int');\n$f_issue_number = Input::Get('f_issue_number', 'int');\n$f_language_id = Input::Get('f_language_id', 'int');\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid Input: $1', array('$1' => Input::GetErrorString()), 'issues'));\n\texit;\n}\n$publicationObj = new Publication($f_publication_id);\n$issueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\n\n$tmpArray = array(\"Pub\" => $publicationObj, \"Issue\"=> $issueObj);\ncamp_html_content_top($translator->trans(\"Deleted issue\", array(), 'issues'), $tmpArray);\n\n$issueName = htmlspecialchars($issueObj->getName());\n$numArticlesDeleted = $issueObj->delete(true, true);\n\n$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n$cacheService->clearNamespace('issue');\n\n?>\n\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<TR>\n\t<TD>\n\t\t<B> <?php echo $translator->trans(\"Deleted issue\", array(), 'issues'); ?> </B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD>\n\t\t<BLOCKQUOTE>\n        <LI><?php echo $translator->trans('The issue $1 has been deleted.', array('$1' => '<B>'.$issueName.'</B>'), 'issues'); ?></LI>\n\t\t<LI><?php echo $translator->trans('A total of $1 articles were deleted.', array('$1' => '<B>'.$numArticlesDeleted.'</B>'), 'issues'); ?></LI>\n\t\t</BLOCKQUOTE>\n\t</TD>\n</TR>\n\n<TR>\n\t<TD align=\"center\">\n\t\t<INPUT TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php echo $ADMIN; ?>/issues/?Pub=<?php echo $f_publication_id; ?>'\">\n\t</TD>\n</TR>\n</TABLE>\n<P>\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/issues/do_edit.php",
    "content": "<?php\nuse Newscoop\\Service\\ISyncResourceService;\nuse Newscoop\\Service\\IIssueService;\nuse Newscoop\\Service\\IOutputService;\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/issues/issue_common.php\");\n//@New theme management\nuse Newscoop\\Service\\Resource\\ResourceId;\nuse Newscoop\\Service\\IThemeManagementService;\nuse Newscoop\\Service\\IOutputSettingIssueService;\nuse Newscoop\\Entity\\Output\\OutputSettingsIssue;\n//@New theme management\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Check permissions\nif (!$g_user->hasPermission('ManageIssue')) {\n\tcamp_html_display_error($translator->trans('You do not have the right to change issue details.', array(), 'issues'));\n\texit;\n}\n\n$f_publication_id = Input::Get('f_publication_id', 'int');\n$f_issue_number = Input::Get('f_issue_number', 'int');\n$f_current_language_id = Input::Get('f_current_language_id', 'int');\n$f_issue_name = trim(Input::Get('f_issue_name'));\n$f_new_language_id = Input::Get('f_new_language_id', 'int');\n$f_publication_date = Input::Get('f_publication_date', 'string', '', true);\n\n\n$f_theme_id = Input::Get('f_theme_id', 'string');\n$f_issue_template_id = Input::Get('f_issue_template_id', 'string');\n$f_section_template_id = Input::Get('f_section_template_id', 'string');\n$f_article_template_id = Input::Get('f_article_template_id', 'string');\n\n\n$f_url_name = trim(Input::Get('f_url_name'));\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString()), 'issues'));\n\texit;\n}\n$publicationObj = new Publication($f_publication_id);\n$issueObj = new Issue($f_publication_id, $f_current_language_id, $f_issue_number);\n\n$backLink = \"/$ADMIN/issues/edit.php?Pub=$f_publication_id&Issue=$f_issue_number&Language=$f_current_language_id\";\nif ($f_new_language_id == 0) {\n\tcamp_html_add_msg($translator->trans('You must select a language.'));\n}\nif (empty($f_issue_name)) {\n\tcamp_html_add_msg($translator->trans('You must fill in the $1 field.', array('$1' => \"'\".$translator->trans('Name').\"'\")));\n}\nif (empty($f_url_name)) {\n\tcamp_html_add_msg($translator->trans('You must fill in the $1 field.', array('$1' => \"'\".$translator->trans('URL Name').\"'\")));\n}\nif (!camp_is_valid_url_name($f_url_name)) {\n\tcamp_html_add_msg($translator->trans('The $1 field may only contain letters, digits and underscore (_) character.', array('$1' => \"'\" . $translator->trans('URL Name') . \"'\")));\n}\nif (camp_html_has_msgs()) {\n\tcamp_html_goto_page($backLink);\n}\n\n$changed = true;\n$changed &= $issueObj->setName($f_issue_name);\nif ($issueObj->getWorkflowStatus() == 'Y') {\n\t$changed &= $issueObj->setPublicationDate($f_publication_date);\n}\n\n//@New theme management\n$resourceId = new ResourceId('Publication/Edit');\n$themeManagementService = $resourceId->getService(IThemeManagementService::NAME_1);\n$outputSettingIssueService = $resourceId->getService(IOutputSettingIssueService::NAME);\n$outputService = $resourceId->getService(IOutputService::NAME);\n$issueService = $resourceId->getService(IIssueService::NAME);\n$syncRsc = $resourceId->getService(ISyncResourceService::NAME);\n\n$newOutputSetting = false;\n\n$outSetIssues = $outputSettingIssueService->findByIssue($issueObj->getIssueId());\nif(count($outSetIssues) > 0){\n\t$outSetIssue = $outSetIssues[0];\n} else {\n\t$outSetIssue = new OutputSettingsIssue();\n\t$outSetIssue->setOutput($outputService->findByName('Web'));\n\t$outSetIssue->setIssue($issueService->getById($issueObj->getIssueId()));\n\t$newOutputSetting = true;\n}\n$outSetIssue->setThemePath($syncRsc->getThemePath($f_theme_id));\nif($f_issue_template_id != null && $f_issue_template_id != '0'){\n\t$outSetIssue->setFrontPage($syncRsc->getResource('frontPage', $f_issue_template_id));\n} else {\n\t$outSetIssue->setFrontPage(null);\n}\nif($f_section_template_id != null && $f_section_template_id != '0'){\n\t$outSetIssue->setSectionPage($syncRsc->getResource('sectionPage', $f_section_template_id));\n} else {\n\t$outSetIssue->setSectionPage(null);\n}\nif($f_article_template_id != null && $f_article_template_id != '0'){\n\t$outSetIssue->setArticlePage($syncRsc->getResource('articlePage', $f_article_template_id));\n} else {\n\t$outSetIssue->setArticlePage(null);\n}\n//@New theme management\n\nif ($changed) {\n        \n} else {\n\t$errMsg = $translator->trans(\"Could not save the changes to the issue.\", array(), 'issues');\n\tcamp_html_add_msg($errMsg);\n\texit;\n}\n\n// The tricky part - language ID and URL name must be unique.\n$conflictingIssues = Issue::GetIssues($f_publication_id, $f_new_language_id, null, $f_url_name, null, false, null, true);\n$conflictingIssue = array_pop($conflictingIssues);\n// If it conflicts with another issue\nif ($errorMsg = camp_is_issue_conflicting($f_publication_id, $f_issue_number, $f_new_language_id, $f_url_name, true)) {\n\tcamp_html_add_msg($errorMsg);\n\tcamp_html_goto_page($backLink);\n} else {\n\t$issueObj->setProperty('ShortName', $f_url_name, false);\n\t$issueObj->setProperty('IdLanguage', $f_new_language_id, false);\n\t$issueObj->commit();\n\t//@New theme management\n    if(SaaS::singleton()->hasPermission('ManageIssueTemplates')) {\n        if($newOutputSetting){\n            $outputSettingIssueService->insert($outSetIssue);\n        } else {\n            $outputSettingIssueService->update($outSetIssue);\n        }\n    }\n\n    $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n    $cacheService->clearNamespace('issue');\n\n\t//@New theme management\n\t$link = \"/$ADMIN/issues/edit.php?Pub=$f_publication_id&Issue=$f_issue_number&Language=\".$issueObj->getLanguageId();\n\tcamp_html_add_msg($translator->trans('Issue updated', array(), 'issues'), \"ok\");\n\tcamp_html_goto_page($link);\n}\n\n?>\n"
  },
  {
    "path": "newscoop/admin-files/issues/do_status.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/issues/issue_common.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n$Pub = Input::Get('Pub', 'int');\n$Issue = Input::Get('Issue', 'int');\n$Language = Input::Get('Language', 'int');\n$f_target = Input::Get('f_target', 'string', 'index.php', true);\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid Input: $1', array('$1' => Input::GetErrorString()), 'issues'));\n\texit;\n}\n\nif (!$g_user->hasPermission('ManageIssue') || !$g_user->hasPermission('Publish')) {\n\t$BackLink =\"/$ADMIN/issues/?Pub=$Pub&Language=$Language\";\n\tcamp_html_display_error($translator->trans('You do not have the right to change issues.', array(), 'issues'));\n\texit;\n}\n\n$issueObj = new Issue($Pub, $Language, $Issue);\n$issueObj->setWorkflowStatus();\n\n$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n$cacheService->clearNamespace('issue');\n\ncamp_html_goto_page(\"/$ADMIN/issues/$f_target?Pub=$Pub&Issue=$Issue&Language=$Language\");\n\n?>"
  },
  {
    "path": "newscoop/admin-files/issues/do_translate.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/issues/issue_common.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Check permissions\nif (!$g_user->hasPermission('ManageIssue')) {\n\tcamp_html_display_error($translator->trans('You do not have the right to add issues.', array(), 'issues'));\n\texit;\n}\n\n$f_publication_id = Input::Get('f_publication_id', 'int');\n$f_issue_number = Input::Get('f_issue_number', 'int');\n$f_language_id = Input::Get('f_language_id', 'int');\n\n$f_name = trim(Input::Get('f_name'));\n$f_url_name = trim(Input::Get('f_url_name'));\n$f_new_language_id = Input::Get('f_new_language_id');\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid Input: $1', array('$1' => Input::GetErrorString()), 'issues'));\n\texit;\n}\n$publicationObj = new Publication($f_publication_id);\n$issueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\n\n$backLink = \"/$ADMIN/issues/translate.php?Pub=$f_publication_id&Issue=$f_issue_number&Language=$f_language_id\";\n$created = false;\n\nif ($f_new_language_id == 0) {\n\tcamp_html_add_msg($translator->trans('You must select a language.'));\n}\n\nif ($f_name == \"\") {\n\tcamp_html_add_msg($translator->trans('You must fill in the $1 field.', array('$1' => \"'\".$translator->trans('Name').\"'\")));\n}\n\nif ($f_url_name == \"\") {\n\tcamp_html_add_msg($translator->trans('You must fill in the $1 field.', array('$1' => \"'\".$translator->trans('URL Name').\"'\")));\n}\n\n$errorMsg = camp_is_issue_conflicting($f_publication_id, $f_issue_number, $f_new_language_id, $f_url_name, false);\nif ($errorMsg) {\n\tcamp_html_add_msg($errorMsg);\n}\n\nif (camp_html_has_msgs()) {\n\tcamp_html_goto_page($backLink);\n}\n\n$newIssue = $issueObj->copy(null, $issueObj->getIssueNumber(), $f_new_language_id);\nif ($newIssue->exists()) {\n\t$newIssue->setName($f_name);\n\t$newIssue->setUrlName($f_url_name);\n\tcamp_html_add_msg($translator->trans('The issue $1 has been successfuly added.', array('$1' => '\"<B>'.htmlspecialchars($f_name).'</B>\"'), 'issues'), \"ok\");\n\tcamp_html_goto_page(\"/$ADMIN/issues/?Pub=$f_publication_id\");\n} else {\n\tcamp_html_add_msg($translator->trans('The issue could not be added.', array(), 'issues'));\n\tcamp_html_goto_page($backLink);\n}\n?>"
  },
  {
    "path": "newscoop/admin-files/issues/edit.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/issues/issue_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/IssuePublish.php');\n//@New theme management\nuse Newscoop\\Service\\Resource\\ResourceId;\nuse Newscoop\\Service\\IThemeManagementService;\nuse Newscoop\\Service\\IOutputSettingIssueService;\n//@New theme management\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nglobal $issueObj;\n\n// Check permissions\nif (!$g_user->hasPermission('ManageIssue')) {\n\tcamp_html_display_error($translator->trans('You do not have the right to change issue details.', array(), 'issues'));\n\texit;\n}\n$Pub = Input::Get('Pub', 'int');\n$Issue = Input::Get('Issue', 'int');\n$Language = Input::Get('Language', 'int');\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid Input: $1', array('$1' => Input::GetErrorString()), 'issues'));\n\texit;\n}\n$publicationObj = new Publication($Pub);\n\nif (!$publicationObj->exists()) {\n\tcamp_html_display_error($translator->trans('Publication does not exist.'));\n\texit;\n}\n$issueObj = new Issue($Pub, $Language, $Issue);\nif (!$issueObj->exists()) {\n\tcamp_html_display_error($translator->trans('Issue does not exist.'));\n\texit;\n}\n\n$allLanguages = Language::GetLanguages(null, null, null, array(), array(), true);\n\n// Get translations of this issue\n$issueTranslations = Issue::GetIssues($Pub, null, $Issue, null, null, false, null, true);\n$excludeLanguageIds = DbObjectArray::GetColumn($issueTranslations, 'IdLanguage');\n\n$allEvents = IssuePublish::GetIssueEvents($Pub, $Issue, $Language);\n\n$publish_date = date(\"Y-m-d\");\n$publish_hour = (date(\"H\") + 1);\n$publish_min = \"00\";\n\ncamp_html_content_top($translator->trans('Change issue details', array(), 'issues'), array('Pub' => $publicationObj, 'Issue' => $issueObj), true, true);\n$controller->view->headTitle($translator->trans('Change issue details', array(), 'issues').' - Newscoop Admin', 'SET');\n$url_args1 = \"Pub=$Pub\";\n$url_args2 = $url_args1.\"&Issue=$Issue&Language=$Language\";\n\n$url_args3 = \"f_publication_id=$Pub&f_issue_number=$Issue&f_language_id=$Language\";\n\nif (Issue::GetNumIssues($Pub) <= 0) {\n\t$url_add = \"add_new.php\";\n} else {\n\t$url_add = \"qadd.php\";\n}\n\n//@New theme management\n$resourceId = new ResourceId('Publication/Edit');\n$themeManagementService = $resourceId->getService(IThemeManagementService::NAME_1);\n$outputSettingIssueService = $resourceId->getService(IOutputSettingIssueService::NAME);\n\n$outSetIssues = $outputSettingIssueService->findByIssue($issueObj->getIssueId());\n$themePath = null;\n$tplFrontPath = null;\n$tplSectionPath = null;\n$tplArticlePath = null;\nif(count($outSetIssues) > 0){\n\t$outSetIssue = $outSetIssues[0];\n\t$themePath = $outSetIssue->getThemePath()->getPath();\n\tif($outSetIssue->getFrontPage() != null){\n\t\t$tplFrontPath = $outSetIssue->getFrontPage()->getPath();\n\t}\n\tif($outSetIssue->getSectionPage() != null){\n\t\t$tplSectionPath = $outSetIssue->getSectionPage()->getPath();\n\t}\n\tif($outSetIssue->getArticlePage() != null){\n\t\t$tplArticlePath = $outSetIssue->getArticlePage()->getPath();\n\t}\n}\n\n$publicationThemes = $themeManagementService->getThemes($publicationObj->getPublicationId());\n$publicationHasThemes = count($publicationThemes) > 0;\nif($themePath == null && $publicationHasThemes){\n\t$themePath = $publicationThemes[0]->getPath();\n}\n\nif($themePath != null && $themePath != '0'){\n\t$allTemplates = $themeManagementService->getTemplates($themePath);\n} else {\n\t$allTemplates = array();\n}\n\n//@New theme management\n?>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\" class=\"action_buttons\" style=\"padding-top: 5px;\">\n<TR>\n\t<TD><A HREF=\"/<?php echo $ADMIN; ?>/issues/?Pub=<?php  p($Pub); ?>\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/left_arrow.png\" BORDER=\"0\"></A></TD>\n\t<TD><A HREF=\"/<?php echo $ADMIN; ?>/issues/?Pub=<?php  p($Pub); ?>\"><B><?php echo $translator->trans(\"Issue List\"); ?></B></A></TD>\n\t<TD style=\"padding-left: 20px;\"><A HREF=\"/<?php echo $ADMIN; ?>/sections/?Pub=<?php  p($Pub); ?>&Issue=<?php  p($issueObj->getIssueNumber()); ?>&Language=<?php p($issueObj->getLanguageId()); ?>\"><B><?php echo $translator->trans(\"Go To Sections\", array(), 'issues'); ?></B></A></TD>\n\t<TD><A HREF=\"/<?php echo $ADMIN; ?>/sections/?Pub=<?php  p($Pub); ?>&Issue=<?php  p($issueObj->getIssueNumber()); ?>&Language=<?php p($issueObj->getLanguageId()); ?>\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/go_to.png\" BORDER=\"0\"></A></TD>\n</TR>\n</TABLE>\n\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\" class=\"action_buttons\">\n<TR>\n\t<TD><A HREF=\"<?php p($url_add); ?>?<?php p($url_args1); ?>\" ><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/add.png\" BORDER=\"0\"></A></TD>\n\t<TD><A HREF=\"<?php p($url_add); ?>?<?php p($url_args1); ?>\" ><B><?php echo $translator->trans(\"Add new issue\"); ?></B></A></TD>\n\n    <TD style=\"padding-left: 20px;\"><A HREF=\"\" ONCLICK=\"window.open('/<?php echo $ADMIN; ?>/issues/preview.php?<?php p($url_args2); ?>', 'fpreview', 'resizable=yes, menubar=no, toolbar=yes, width=800, height=600'); return false;\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/preview.png\" BORDER=\"0\"></A></TD>\n    <TD><A HREF=\"\" ONCLICK=\"window.open('/<?php echo $ADMIN; ?>/issues/preview.php?<?php p($url_args2); ?>', 'fpreview', 'resizable=yes, menubar=no, toolbar=yes, width=800, height=600'); return false;\"><B><?php echo $translator->trans(\"Preview\"); ?></B></A></TD>\n\n    <TD style=\"padding-left: 20px;\"><A HREF=\"/<?php echo $ADMIN; ?>/issues/translate.php?<?php p($url_args2); ?>\" ><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/translate.png\" BORDER=\"0\"></A></TD>\n    <TD><A HREF=\"/<?php echo $ADMIN; ?>/issues/translate.php?<?php p($url_args2); ?>\" ><B><?php echo $translator->trans(\"Translate\"); ?></B></A></TD>\n\n    <TD style=\"padding-left: 20px;\"><A HREF=\"/<?php echo $ADMIN; ?>/issues/delete.php?<?php p($url_args3); ?>\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/delete.png\" BORDER=\"0\"></A></TD>\n    <TD><A HREF=\"/<?php echo $ADMIN; ?>/issues/delete.php?<?php p($url_args3); ?>\"><B><?php echo $translator->trans(\"Delete\"); ?></B></A></TD>\n</TR>\n</TABLE>\n\n<?php camp_html_display_msgs(\"1em\", 0); ?>\n\n<P>\n<table>\n<tr>\n\t<td valign=\"top\">\n        <FORM name=\"issue_edit\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/issues/do_edit.php\" onsubmit=\"return <?php camp_html_fvalidate(); ?>;\">\n\t\t<?php echo SecurityToken::FormParameter(); ?>\n\t\t<INPUT TYPE=\"HIDDEN\" NAME=\"f_publication_id\" VALUE=\"<?php p($Pub); ?>\">\n\t\t<INPUT TYPE=\"HIDDEN\" NAME=\"f_issue_number\" VALUE=\"<?php p($Issue); ?>\">\n\t\t<INPUT TYPE=\"HIDDEN\" NAME=\"f_current_language_id\" VALUE=\"<?php p($Language); ?>\">\n\t\t<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" CLASS=\"box_table\">\n\t\t<TR>\n\t\t\t<TD COLSPAN=\"2\">\n\t\t\t\t<B><?php echo $translator->trans(\"Change issue details\", array(), 'issues'); ?></B>\n\t\t\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t\t\t</TD>\n\t\t</TR>\n\n\t\t<TR>\n\t\t\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Number\"); ?>:</TD>\n\t\t\t<TD>\n\t\t\t\t<?php  p($issueObj->getIssueNumber()); ?>\n\t\t\t</TD>\n\t\t</TR>\n\n\t\t<TR>\n\t\t\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Name\"); ?>:</TD>\n\t\t\t<TD>\n\t\t\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_issue_name\" SIZE=\"32\" value=\"<?php  p(htmlspecialchars($issueObj->getName())); ?>\" alt=\"blank\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => \"'\".$translator->trans('Name').\"'\")); ?>\">\n\t\t\t</TD>\n\t\t</TR>\n\n\t\t<TR>\n\t\t\t<TD ALIGN=\"RIGHT\"><?php echo $translator->trans(\"URL Name\"); ?>:</TD>\n\t\t\t<TD>\n\t\t\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_url_name\" SIZE=\"32\" value=\"<?php  p(htmlspecialchars($issueObj->getUrlName())); ?>\" alt=\"alnum|1|A|true|false|_\" emsg=\"<?php echo $translator->trans('The $1 field may only contain letters, digits and underscore (_) character.', array('$1' => \"'\" . $translator->trans('URL Name') . \"'\")); ?>\">\n\t\t\t</TD>\n\t\t</TR>\n\n\t\t<TR>\n\t\t\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Language\"); ?>:</TD>\n\t\t\t<TD>\n\t\t\t    <SELECT NAME=\"f_new_language_id\" class=\"input_select\">\n\t\t\t\t<?php\n\t\t\t\tforeach ($allLanguages as $tmpLanguage) {\n\t\t\t\t\t$langId = $tmpLanguage->getLanguageId();\n\t\t\t\t\tif (($langId == $issueObj->getLanguageId()) || !in_array($langId, $excludeLanguageIds)) {\n\t\t\t\t\t\tcamp_html_select_option($langId, $issueObj->getLanguageId(), $tmpLanguage->getNativeName());\n\t\t\t\t\t}\n\t\t\t    }\n\t\t\t\t?>\n\t\t\t\t</SELECT>\n\t\t\t</TD>\n\t\t</TR>\n\n\t\t<?php if($publicationHasThemes){?>\n\t\t<TR>\n\t\t\t<TD ALIGN=\"RIGHT\"><?php echo $translator->trans(\"Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>\"); ?>:</TD>\n\t\t\t<TD>\n\t\t\t\t<?php\n\t\t\t\tif ($issueObj->getWorkflowStatus() == 'Y') {\n\t\t\t\t\t$t2 = $translator->trans('Published');\n\t\t\t\t\t$t3 = $translator->trans('Not published');\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\t$t2 = $translator->trans('Not published');\n\t\t\t\t\t$t3 = $translator->trans('Published');\n\t\t\t\t}\n\t\t\t\t?>\n\n\t\t\t\t<?php if ($issueObj->getWorkflowStatus() == 'Y') { ?>\n\t\t\t\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_publication_date\" SIZE=\"20\" MAXLENGTH=\"19\" value=\"<?php  p(htmlspecialchars($issueObj->getPublicationDate())); ?>\">\n\t\t\t\t<?php } ?>\n\t\t\t\t<A HREF=\"/<?php echo $ADMIN; ?>/issues/do_status.php?Pub=<?php p($Pub); ?>&Issue=<?php  p($issueObj->getIssueNumber()); ?>&Language=<?php p($issueObj->getLanguageId()); ?>&f_target=edit.php&<?php echo SecurityToken::URLParameter(); ?>\" onclick=\"return confirm('<?php echo $translator->trans('Are you sure you want to change the issue $1 status from $2 to $3?', array('$1' => $issueObj->getIssueNumber().'. '.htmlspecialchars($issueObj->getName()).' ('.htmlspecialchars($issueObj->getLanguageName()).')', '$2' => \"\\'$t2\\'\", '$3' => \"\\'$t3\\'\"), 'issues'); ?>\n\t\t');\">\n\t\t\t\t<?php if ($issueObj->getWorkflowStatus() == 'Y') {\n\t\t\t\t\t\tprint $translator->trans(\"Unpublish\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tprint $translator->trans(\"Click here to publish this issue\", array(), 'issues');\n\t\t\t\t\t}\n\t\t\t\t?>\n\t\t\t\t</A>\n\t\t\t</TD>\n\t\t</TR>\n\t\t<?php\n            }\n\t\t\tif(SaaS::singleton()->hasPermission('ManageIssueTemplates')) {\n\t\t?>\n\t\t<TR>\n\t\t\t<TD COLSPAN=\"2\" style=\"padding-top: 20px;\">\n\t\t\t\t<B><?php  echo $translator->trans(\"Default templates\"); ?></B>\n\t\t\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t\t\t</TD>\n\t\t</TR>\n\t\t<?php if($publicationHasThemes){?>\n\t\t<TR>\n\t\t\t<TD ALIGN=\"RIGHT\"><?php echo $translator->trans(\"Issue Theme\", array(), 'issues'); ?>:</TD>\n\t\t\t<TD>\n\t\t\t\t<SELECT ID=\"f_theme_id\" NAME=\"f_theme_id\" class=\"input_select\">\n\t\t\t\t<?php\n\t\t\t\tforeach ($publicationThemes as $theme) {\n\t\t\t\t\tcamp_html_select_option($theme->getPath(), $themePath, $theme->getName());\n\t\t\t\t}\n\t\t\t\t?>\n\t\t\t\t</SELECT>\n\t\t\t</TD>\n\t\t</TR>\n\t\t<TR>\n\t\t\t<TD ALIGN=\"RIGHT\"><?php echo $translator->trans(\"Front Page Template\", array(), 'issues'); ?>:</TD>\n\t\t\t<TD>\n\t\t\t\t<SELECT ID=\"f_issue_template_id\" NAME=\"f_issue_template_id\" class=\"input_select\">\n\t\t\t\t<OPTION VALUE=\"0\">&lt;<?php echo $translator->trans(\"default\", array(), 'issues'); ?>&gt;</OPTION>\n\t\t\t\t<?php\n\t\t\t\tforeach ($allTemplates as $template) {\n\t\t\t\t\tcamp_html_select_option($template->getPath(), $tplFrontPath, $template->getName());\n\t\t\t\t}\n\t\t\t\t?>\n\t\t\t\t</SELECT>\n\t\t\t</TD>\n\t\t</TR>\n\n\t\t<TR>\n\t\t\t<TD ALIGN=\"RIGHT\"><?php echo $translator->trans(\"Section Template\"); ?>:</TD>\n\t\t\t<TD>\n\t\t\t\t<SELECT ID=\"f_section_template_id\" NAME=\"f_section_template_id\" class=\"input_select\">\n\t\t\t\t<OPTION VALUE=\"0\">&lt;<?php echo $translator->trans(\"default\", array(), 'issues'); ?>&gt;</OPTION>\n\t\t\t\t<?php\n\t\t\t\tforeach ($allTemplates as $template) {\n\t\t\t\t\tcamp_html_select_option($template->getPath(), $tplSectionPath, $template->getName());\n\t\t\t\t}\n\t\t\t\t?>\n\t\t\t\t</SELECT>\n\t\t\t</TD>\n\t\t</TR>\n\n\t\t<TR>\n\t\t\t<TD ALIGN=\"RIGHT\"><?php echo $translator->trans(\"Article Template\"); ?>:</TD>\n\t\t\t<TD>\n\t\t\t\t<SELECT ID=\"f_article_template_id\" NAME=\"f_article_template_id\" class=\"input_select\">\n\t\t\t\t<OPTION VALUE=\"0\">&lt;<?php echo $translator->trans(\"default\", array(), 'issues'); ?>&gt;</OPTION>\n\t\t\t\t<?php\n\t\t\t\tforeach ($allTemplates as $template) {\n\t\t\t\t\tcamp_html_select_option($template->getPath(), $tplArticlePath, $template->getName());\n\t\t\t\t}\n\t\t\t\t?>\n\t\t\t\t</SELECT>\n\t\t\t</TD>\n\t\t</TR>\n\t\t<?php\n\t\t\t} else {?>\n\t\t<TR>\n\t\t\t<INPUT TYPE=\"hidden\" NAME=\"f_theme_id\" VALUE=\"0\"/>\n\t\t\t<INPUT TYPE=\"hidden\" NAME=\"f_issue_template_id\" VALUE=\"0\"/>\n\t\t\t<INPUT TYPE=\"hidden\" NAME=\"f_section_template_id\" VALUE=\"0\"/>\n\t\t\t<INPUT TYPE=\"hidden\" NAME=\"f_article_template_id\" VALUE=\"0\"/>\n\t\t\t<TD ALIGN=\"LEFT\" colspan=\"2\" style=\"color: red;\">\n\t\t\t<?php echo $translator->trans(\"Please assign at least one theme to the publication\", array(), 'issues');?>,\n\t\t\t<br/>\n\t\t\t<?php echo $translator->trans(\"so that default templates can be assigned to the issue.\", array(), 'issues');?>\n\t\t\t<br/>\n\t\t\t<?php echo $translator->trans(\"Once this is done, the issue can be published\", array(), 'issues');?>.\n\t\t\t<br />\n\t\t\t<?php if ($g_user->hasPermission('ManageTheme')) { ?>\n\t\t\t<br />\n\t\t\t<?php echo $translator->trans('Click to open', array(), 'issues');?> <a target=\"_blank\" href=\"/<?php echo $ADMIN ?>/themes\"><?php echo $translator->trans('Theme management', array(), 'themes');?></a>.\n\t\t\t<?php } ?>\n\t\t\t</TD>\n\t\t</TR>\n\t\t<?php }\n\t\t\t} else {\n\t\t\t\t    $themePathSafe = strlen($themePath) ? $themePath : '0';\n\t\t\t\t    $tplFrontPathSafe = strlen($tplFrontPath) ? $tplFrontPath : '0';\n\t\t\t\t    $tplSectionPathSafe = strlen($tplSectionPath) ? $tplSectionPath : '0';\n\t\t\t\t    $tplArticlePathSafe = strlen($tplArticlePath) ? $tplArticlePath : '0';\n\t\t\t\t?>\n                <INPUT TYPE=\"hidden\" NAME=\"f_theme_id\" VALUE=\"<?php echo $publicationHasThemes ? $themePathSafe : '0'?>\"/>\n\t            <INPUT TYPE=\"hidden\" NAME=\"f_issue_template_id\" VALUE=\"<?php echo $publicationHasThemes ? $tplFrontPathSafe : '0'?>\"/>\n\t            <INPUT TYPE=\"hidden\" NAME=\"f_section_template_id\" VALUE=\"<?php echo $publicationHasThemes ? $tplSectionPathSafe : '0'?>\"/>\n\t            <INPUT TYPE=\"hidden\" NAME=\"f_article_template_id\" VALUE=\"<?php echo $publicationHasThemes ? $tplArticlePathSafe : '0'?>\"/>\n\t\t\t\t<?php\n\t\t\t}\n\t\t?>\n\t\t<TR>\n\t\t\t<TD COLSPAN=\"2\" align=\"center\" style=\"padding-top: 15px;\">\n\t\t\t\t<INPUT TYPE=\"submit\" class=\"button\" NAME=\"Save\" VALUE=\"<?php  echo $translator->trans('Save'); ?>\">\n\t\t\t</TD>\n\t\t</TR>\n\t\t</TABLE>\n\t\t</FORM>\n\t\t<P>\n\t\t<!-- Old plugins hooks -->\n\t\t<?php CampPlugin::adminHook(__FILE__, array( 'issueObj' => $issueObj ) ); ?>\n\n\t\t<!-- New plugins hooks -->\n\t\t<?php \n\t\techo \\Zend_Registry::get('container')->getService('newscoop.plugins.service')\n\t\t\t->renderPluginHooks('newscoop_admin.interface.issue.edit', null, array(\n\t\t\t    'issue' => $issueObj\n\t\t\t));\n\t\t?>\n\t</td>\n\n\t<td valign=\"top\">\n\t\t<div class=\"action_buttons\" style=\"font-size: 10pt; font-weight: bold;\"><?php echo $translator->trans('Issue Publishing Schedule', array(), 'issues'); ?></div>\n\t\t<TABLE BORDER=\"0\" CELLSPACING=\"1\" CELLPADDING=\"3\" class=\"table_list\">\n\t\t<TR class=\"table_list_header\">\n\t\t\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Date/Time\"); ?></B></TD>\n\t\t\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Action\"); ?></B></TD>\n            <TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Publish all articles\", array(), 'issues'); ?></B></TD>\n\t\t\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Delete\"); ?></B></TD>\n\t\t</TR>\n\t\t<?php\n\t\t//\n\t\t// Scheduled Publishing\n\t\t//\n\t\tif (count($allEvents) == 0) { ?>\n\t\t\t<tr><td colspan=\"4\" class=\"list_row_odd\"><?php echo $translator->trans(\"No events.\"); ?></td></tr>\n\t\t\t<?php\n\t\t} else {\n\t\t\t$color= 0;\n\t\t\tforeach ($allEvents as $event) {\n\t\t\t\t$url_publish_time = urlencode($event->getActionTime());\n\t\t\t\t?>\n\t\t\t\t<TR <?php  if ($color) { $color=0; ?>class=\"list_row_even\"<?php  } else { $color=1; ?>class=\"list_row_odd\"<?php  } ?>>\n\n\t\t\t\t<TD>\n\t\t\t\t\t<?php if (!$event->isCompleted()) { ?><A HREF=\"/<?php echo $ADMIN; ?>/issues/autopublish.php?Pub=<?php p($Pub); ?>&Issue=<?php p($Issue); ?>&Language=<?php p($Language); ?>&event_id=<?php echo $event->getEventId(); ?>\"><?php } else { echo \"<strike>\"; } ?><?php p(htmlspecialchars($event->getActionTime())); ?><?php if (!$event->isCompleted()) { ?></A><?php } else { echo \"</strike>\"; } ?>\n\t\t\t\t</TD>\n\n\t\t\t\t<TD >\n\t\t\t\t\t<?php\n\t\t\t\t\t\t$action = $event->getPublishAction();\n\t\t\t\t\t\tif ($action == \"P\") {\n\t\t\t\t\t\t\techo $translator->trans(\"Publish\");\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\techo $translator->trans(\"Unpublish\");\n\t\t\t\t\t\t}\n\t\t\t\t\t?>&nbsp;\n\t\t\t\t</TD>\n\n\t\t\t\t<TD >\n\t\t\t\t\t<?php\n\t\t\t\t\t\t$publish_articles = $event->getPublishArticlesAction();\n\t\t\t\t\t\tif ($publish_articles == \"Y\") {\n\t\t\t\t\t\t\techo $translator->trans(\"Yes\");\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\techo $translator->trans(\"No\");\n\t\t\t\t\t\t}\n\t\t\t\t\t?>&nbsp;\n\t\t\t\t</TD>\n\n\t\t\t\t<TD ALIGN=\"CENTER\">\n\t\t\t\t\t<A HREF=\"/<?php echo $ADMIN; ?>/issues/autopublish_del.php?Pub=<?php p($Pub); ?>&Issue=<?php p($Issue); ?>&Language=<?php p($Language); ?>&event_id=<?php echo $event->getEventId(); ?>&<?php echo SecurityToken::URLParameter(); ?>\" onclick=\"return confirm('<?php echo $translator->trans(\"Are you sure you want to delete this scheduled action?\"); ?>');\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/delete.png\" BORDER=\"0\" ALT=\"<?php echo $translator->trans('Delete entry', array(), 'issues'); ?>\"></A>\n\t\t\t\t</TD>\n\n\t\t\t<?php } // foreach ?>\n\t\t<?php\n\t\t} // if\n\t\t?>\n\t\t</TR>\n\t\t</table>\n\n        <FORM NAME=\"dialog\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/issues/autopublish_do_add.php\" onsubmit=\"return <?php camp_html_fvalidate(); ?>;\">\n\t\t<?php echo SecurityToken::FormParameter(); ?>\n        <INPUT TYPE=\"HIDDEN\" NAME=\"Pub\" VALUE=\"<?php echo $Pub; ?>\">\n        <INPUT TYPE=\"HIDDEN\" NAME=\"Issue\" VALUE=\"<?php echo $Issue; ?>\">\n        <INPUT TYPE=\"HIDDEN\" NAME=\"Language\" VALUE=\"<?php echo $Language; ?>\">\n        <p>\n        <?php if($publicationHasThemes){ ?>\n\t\t<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" class=\"box_table\">\n\t\t<TR>\n\t\t\t<TD COLSPAN=\"2\">\n\t\t\t\t<B><?php echo $translator->trans(\"Schedule a new action\"); ?></B>\n\t\t\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t\t\t</TD>\n\t\t</TR>\n\t\t<TR>\n\t\t\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Date\"); ?>:</TD>\n\t\t\t<TD>\n\t\t\t\t<?php $now = getdate(); ?>\n                <input type=\"text\" class=\"input_text date minDate_0\" name=\"publish_date\" id=\"publish_date\" maxlength=\"10\" size=\"11\" value=\"<?php p($publish_date); ?>\" alt=\"date|yyyy/mm/dd|-|4|<?php echo $now[\"year\"].\"/\".$now[\"mon\"].\"/\".$now[\"mday\"]; ?>\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => \"'\".$translator->trans('Date').\"'\")); ?> <?php echo $translator->trans(\"The date must be in the future.\"); ?>\" />\n\t\t\t</TD>\n\t\t</TR>\n\t\t<TR>\n\t\t\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Time\"); ?>:</TD>\n\t\t\t<TD>\n\t\t\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"publish_hour\" SIZE=\"2\" MAXLENGTH=\"2\" VALUE=\"<?php p($publish_hour); ?>\" alt=\"number|0|0|23\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => \"'\".$translator->trans('Time').\"'\" )); ?>\"> :\n\t\t\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"publish_min\" SIZE=\"2\" MAXLENGTH=\"2\" VALUE=\"<?php p($publish_min); ?>\" alt=\"number|0|0|59\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => \"'\".$translator->trans('Time').\"'\" )); ?>\">\n\t\t\t</TD>\n\t\t</TR>\n\t\t<TR>\n\t\t\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Action\"); ?>:</TD>\n\t\t\t<TD>\n\t\t\t<SELECT NAME=\"action\" class=\"input_select\" alt=\"select\" emsg=\"<?php echo $translator->trans('You must select an action.'); ?>\">\n\t\t\t\t<OPTION VALUE=\" \">---</OPTION>\n\t\t\t\t<OPTION VALUE=\"P\"><?php echo $translator->trans(\"Publish\"); ?></OPTION>\n\t\t\t\t<OPTION VALUE=\"U\"><?php echo $translator->trans(\"Unpublish\"); ?></OPTION>\n\t\t\t</SELECT>\n\t\t\t</TD>\n\t\t</TR>\n\t\t<TR>\n            <TD ALIGN=\"RIGHT\">\n                <abbr title=\"<?php echo $translator->trans(\"Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.\", array(), 'issues'); ?>\"><?php echo $translator->trans(\"Publish all articles:\"); ?></abbr>\n            </TD>\n\t\t\t<TD>\n\t\t\t<SELECT NAME=\"publish_articles\" class=\"input_select\">\n\t\t\t\t<OPTION VALUE=\"Y\"><?php echo $translator->trans(\"Yes\"); ?></OPTION>\n\t\t\t\t<OPTION VALUE=\"N\" selected=\"selected\"><?php echo $translator->trans(\"No\"); ?></OPTION>\n\t\t\t</SELECT>\n\t\t\t</TD>\n\t\t</TR>\n\t\t<TR>\n\t\t\t<TD COLSPAN=\"2\" align=\"center\">\n\t\t\t\t<INPUT TYPE=\"submit\" class=\"button\" VALUE=\"<?php echo $translator->trans('Save'); ?>\">\n\t\t\t</TD>\n\t\t</TR>\n\t\t</TABLE>\n\t\t<?php } ?>\n\t\t</FORM>\n\t</td>\n</tr>\n</table>\n<script>\ndocument.forms.issue_edit.f_issue_name.focus();\n</script>\n\n<script type=\"text/javascript\">\n\n$(function() {\n    // list templates per theme\n    $('select[name=f_theme_id]').change(function() {\n        var themePath = $(this).val();\n        $.getJSON('get_templates.php', {\n            'themePath': themePath\n        }, function(data) {\n\t\t\tvar selects = [$('select[name=f_issue_template_id]'),\n\t\t\t   \t\t\t$('select[name=f_section_template_id]'),\n\t\t\t   \t\t\t$('select[name=f_article_template_id]')];\n\t\t\tfor(i = 0; i < selects.length; i++){\n\t\t\t\tselect = selects[i];\n\t\t\t\tselect.empty().append('<option selected value=\"0\">&lt;<?php echo $translator->trans(\"default\", array(), 'issues'); ?>&gt;</option>');\n\t\t\t\t$.each(data, function(key, value) {\n\t\t\t\t\tselect.append('<option value=\"' + key + '\">' + value + '</option>');\n\t\t\t\t});\n\t        }\n        });\n    });\n\n});\n\n</script>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/issues/empty.php",
    "content": "<HTML>\n</HTML>\n"
  },
  {
    "path": "newscoop/admin-files/issues/get_templates.php",
    "content": "<?php\nuse Newscoop\\Service\\Resource\\ResourceId;\nuse Newscoop\\Service\\IThemeManagementService;\n\n//@New theme management\n$resourceId = new ResourceId('Publication/Edit');\n$themeManagementService = $resourceId->getService(IThemeManagementService::NAME_1);\n\n$themePath = $_REQUEST['themePath'];\n\nif($themePath != null && $themePath != '0'){\n\t$allTemplates = $themeManagementService->getTemplates($themePath);\n} else {\n\t$allTemplates = array();\n}\n\n$ret = array();\nforeach ($allTemplates as $template){\n\t$ret[$template->getPath()] = $template->getName();\n}\n\necho json_encode($ret);\nexit;\n"
  },
  {
    "path": "newscoop/admin-files/issues/index.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/issues/issue_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/classes/SimplePager.php\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/classes/IssuePublish.php\");\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n$Pub = Input::Get('Pub', 'int', 0);\n$IssOffs = camp_session_get(\"IssOffs_$Pub\", 0);\nif ($IssOffs < 0) {\n    $IssOffs = 0;\n}\n$ItemsPerPage = 15;\n\nif (!Input::IsValid()) {\n    camp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString()), 'issues'), $_SERVER['REQUEST_URI']);\n    exit;\n}\n$publicationObj = new Publication($Pub);\n$allIssues = Issue::GetIssues($Pub, null, null, null, $publicationObj->getLanguageId(), false, array('LIMIT' => array('START' => $IssOffs, 'MAX_ROWS'=> $ItemsPerPage)), true);\n$totalIssues = Issue::GetNumIssues($Pub);\n\n$pager = new SimplePager($totalIssues, $ItemsPerPage, \"IssOffs_$Pub\", \"index.php?Pub=$Pub&\");\ninclude_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/javascript_common.php\");\n\ncamp_html_content_top($translator->trans('Issue List'), array('Pub' => $publicationObj));\n\n$controller->view->headTitle($translator->trans('Issue List').' - Newscoop Admin', 'SET');\n?>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\" class=\"action_buttons\" style=\"padding-top: 5px;\">\n<TR>\n    <TD><A HREF=\"<?php echo \\Zend_Registry::get('container')->get('router')->generate('newscoop_newscoop_publications_index'); ?>\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/left_arrow.png\" BORDER=\"0\"></A></TD>\n    <TD><A HREF=\"<?php echo \\Zend_Registry::get('container')->get('router')->generate('newscoop_newscoop_publications_index'); ?>\"><B><?php echo $translator->trans(\"Publication List\"); ?></B></A></TD>\n<?php\nif ($g_user->hasPermission('ManageIssue')) {\n    if (Issue::GetNumIssues($Pub) <= 0) {\n        ?>\n            <TD style=\"padding-left: 20px;\"><A HREF=\"/<?php echo $ADMIN; ?>/issues/add_new.php?Pub=<?php p($Pub); ?>\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/add.png\" BORDER=\"0\"></A></TD>\n            <TD><A HREF=\"/<?php echo $ADMIN; ?>/issues/add_new.php?Pub=<?php p($Pub); ?>\"><B><?php echo $translator->trans(\"Add new issue\"); ?></B></A></TD>\n    <?php  } else { ?>\n            <TD style=\"padding-left: 20px;\"><A HREF=\"/<?php echo $ADMIN; ?>/issues/qadd.php?Pub=<?php p($Pub); ?>\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/add.png\" BORDER=\"0\"></A></TD>\n            <TD><A HREF=\"/<?php echo $ADMIN; ?>/issues/qadd.php?Pub=<?php p($Pub); ?>\"><B><?php echo $translator->trans(\"Add new issue\"); ?></B></A></TD>\n    <?php  }\n}\n?>\n</TR>\n</TABLE>\n<?php camp_html_display_msgs(); ?>\n<P>\n<?php\nif (count($allIssues) > 0) {\n    $color = 0;\n    ?>\n    <table class=\"indent\">\n    <TR>\n        <TD>\n            <?php echo $pager->render(); ?>\n        </TD>\n    </TR>\n    </TABLE>\n\n    <TABLE BORDER=\"0\" CELLSPACING=\"1\" CELLPADDING=\"3\" class=\"table_list\">\n    <TR class=\"table_list_header\">\n        <TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Number\"); ?></B></TD>\n        <TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Name<BR><SMALL>(click to see sections)</SMALL>\"); ?></B></TD>\n        <TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"URL Name\"); ?></B></TD>\n        <TD ALIGN=\"center\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Publish Date $1\", array('$1' => \"<br><small>(\".$translator->trans(\"YYYY-MM-DD\").\")</small>\"), 'issues'); ?></B></TD>\n\n        <?php  if ($g_user->hasPermission('ManageIssue')) { ?>\n        <TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Configure\"); ?></B></TD>\n        <?php } ?>\n\n        <?php  if ($g_user->hasPermission('ManageIssue')) { ?>\n        <TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Translate\"); ?></B></TD>\n        <?php } ?>\n        <TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Preview\"); ?></B></TD>\n\n        <?php if ($g_user->hasPermission('DeleteIssue')) { ?>\n        <TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php echo $translator->trans(\"Delete\"); ?></B></TD>\n        <?php  } ?>\n    </TR>\n\n<?php\n$currentIssue = -1;\nforeach ($allIssues as $issue) {\n    $pendingEvents = IssuePublish::GetIssueEvents($issue->getPublicationId(), $issue->getIssueNumber(), $issue->getLanguageId(), false);\n    ?>\n    <TR <?php  if ($color) { $color=0; ?>class=\"list_row_even\"<?php  } else { $color=1; ?>class=\"list_row_odd\"<?php  } ?>>\n\n    <TD ALIGN=\"RIGHT\">\n        <?php p($issue->getIssueNumber()); ?>\n    </TD>\n\n    <TD <?php if ($currentIssue == $issue->getIssueNumber()) { ?> class=\"translation_indent\" <?php } ?>>\n        <A HREF=\"/<?php echo $ADMIN; ?>/sections/?Pub=<?php  p($Pub); ?>&Issue=<?php  p($issue->getIssueNumber()); ?>&Language=<?php p($issue->getLanguageId()); ?>\"><?php p(htmlspecialchars($issue->getName())); ?></A> (<?php p(htmlspecialchars($issue->getLanguageName())); ?>)\n    </TD>\n\n    <TD>\n        <?php p(htmlspecialchars($issue->getUrlName())); ?>\n    </TD>\n\n    <TD ALIGN=\"CENTER\">\n        <?php\n        if ($issue->getWorkflowStatus() == 'Y') {\n            p(htmlspecialchars($issue->getPublicationDate()));\n        } else {\n            print $translator->trans(\"Not published\");\n        }\n        ?>\n        <?php\n        if (count($pendingEvents) > 0) {\n            echo \"<br>\";\n            $nextEvent = array_shift($pendingEvents);\n            if ($nextEvent->getPublishAction() == 'P') {\n                echo $translator->trans(\"Publish on: $1\", array('$1' => $nextEvent->getActionTime()), 'issues');\n            } else {\n                echo $translator->trans(\"Unpublish on: $1\", array('$1' => $nextEvent->getActionTime()), 'issues');\n            }\n        }\n        ?>\n        <br>\n        <?php if ($g_user->hasPermission('ManageIssue')) {\n            if ($issue->getWorkflowStatus() == 'Y') {\n                $t2 = $translator->trans('Published');\n                $t3 = $translator->trans('Not published');\n            } else {\n                $t2 = $translator->trans('Not published');\n                $t3 = $translator->trans('Published');\n            }\n            ?>\n            <A HREF=\"/<?php echo $ADMIN; ?>/issues/do_status.php?Pub=<?php p($Pub); ?>&Issue=<?php  p($issue->getIssueNumber()); ?>&Language=<?php p($issue->getLanguageId()); ?>&f_target=index.php&<?php echo SecurityToken::URLParameter(); ?>\" onclick=\"return confirm('<?php  echo $translator->trans('Are you sure you want to change the issue $1 status from $2 to $3?', array('$1' => $issue->getIssueNumber().'. '.htmlspecialchars($issue->getName()).' ('.htmlspecialchars($issue->getLanguageName()).')', '$2' => \"\\'$t2\\'\", '$3' => \"\\'$t3\\'\"), 'issues'); ?>\n    ');\"><?php echo ($issue->getWorkflowStatus() == 'Y') ? $translator->trans(\"Unpublish\") : $translator->trans(\"Publish\"); ?></A>\n            - <A HREF=\"/<?php echo $ADMIN; ?>/issues/edit.php?Pub=<?php p($Pub); ?>&Issue=<?php  p($issue->getIssueNumber()); ?>&Language=<?php p($issue->getLanguageId()); ?>\"><?php echo $translator->trans(\"Schedule\", array(), 'issues'); ?></A>\n            <?php\n        }\n        ?>\n    </TD>\n\n    <?php  if ($g_user->hasPermission('ManageIssue')) { ?>\n    <TD ALIGN=\"CENTER\">\n        <A HREF=\"/<?php echo $ADMIN; ?>/issues/edit.php?Pub=<?php p($Pub); ?>&Issue=<?php  p($issue->getIssueNumber()); ?>&Language=<?php p($issue->getLanguageId()); ?>\"><img src=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/configure.png\" alt=\"<?php echo $translator->trans(\"Configure\"); ?>\" title=\"<?php echo $translator->trans(\"Configure\"); ?>\"  border=\"0\"></A>\n    </TD>\n    <?php } ?>\n\n    <?php  if ($g_user->hasPermission('ManageIssue')) { ?>\n    <TD ALIGN=\"CENTER\">\n        <A HREF=\"/<?php echo $ADMIN; ?>/issues/translate.php?Pub=<?php  p($Pub); ?>&Issue=<?php  p($issue->getIssueNumber()); ?>&Language=<?php p($issue->getLanguageId()); ?>\"><img src=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/translate.png\" alt=\"<?php echo $translator->trans(\"Translate\"); ?>\" title=\"<?php echo $translator->trans(\"Translate\"); ?>\" border=\"0\"></A>\n    </TD>\n    <?php  } ?>\n\n    <TD ALIGN=\"CENTER\">\n        <A HREF=\"\" ONCLICK=\"window.open('/<?php echo $ADMIN; ?>/issues/preview.php?Pub=<?php  p($Pub); ?>&Issue=<?php p($issue->getIssueNumber()); ?>&Language=<?php p($issue->getLanguageId()); ?>', 'fpreview', 'resizable=yes, menubar=no, toolbar=yes, width=800, height=600'); return false\"><img src=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/preview.png\" alt=\"<?php echo $translator->trans(\"Preview\"); ?>\" title=\"<?php echo $translator->trans(\"Preview\"); ?>\" border=\"0\"></A>\n    </TD>\n\n    <?php\n    if ($g_user->hasPermission('DeleteIssue')) { ?>\n        <TD ALIGN=\"CENTER\">\n            <A HREF=\"/<?php echo $ADMIN; ?>/issues/delete.php?f_publication_id=<?php p($Pub); ?>&f_issue_number=<?php  p($issue->getIssueNumber()); ?>&f_language_id=<?php p($issue->getLanguageId()); ?>\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/delete.png\" BORDER=\"0\" ALT=\"<?php echo $translator->trans('Delete issue $1', array('$1' => htmlspecialchars($issue->getName())), 'issues'); ?>\" title=\"<?php echo $translator->trans('Delete issue $1', array('$1' => htmlspecialchars($issue->getName())), 'issues'); ?>\"></A>\n        </TD>\n    <?php  } ?>\n    </TR>\n\n    <?php\n    $currentIssue = $issue->getIssueNumber();\n}\n?>\n</table>\n<table class=\"indent\">\n<TR>\n    <TD>\n        <?php echo $pager->render(); ?>\n    </TD>\n</TR>\n</TABLE>\n<?php\n} else { ?>\n    <BLOCKQUOTE>\n    <LI><?php echo $translator->trans('No issues.'); ?></LI>\n    </BLOCKQUOTE>\n    <?php\n} ?>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/issues/issue_common.php",
    "content": "<?PHP\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Publication.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Issue.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\n\n/**\n * Check if the given parameters match an existing issue.  All parameters\n * should be for the issue you are adding/editing.  If you are adding,\n * set $p_isExistingIssue to FALSE, and if you are editing, set it to TRUE.\n *\n * @param int $p_publicationId\n * @param int $p_issueNumber\n * @param int $p_languageId\n * @param string $p_urlName\n * @param boolean $p_isExistingIssue\n * \t\tSet this to true if the issue already exists.\n * @return string\n * \t\tReturn empty string on success, error message on failure.\n */\nfunction camp_is_issue_conflicting($p_publicationId, $p_issueNumber, $p_languageId, $p_urlName, $p_isExistingIssue)\n{\n\tglobal $ADMIN;\n\t$translator = \\Zend_Registry::get('container')->getService('translator');\n\t// The tricky part - language ID and URL name must be unique.\n\t$conflictingIssues = Issue::GetIssues($p_publicationId, $p_languageId, null, $p_urlName, null, false, null, true);\n\t$conflictingIssue = array_pop($conflictingIssues);\n\n\t// Check if the issue conflicts with another issue.\n\n\t// If the issue exists, we have to make sure the conflicting issue is not\n\t// itself.\n\t$isSelf = ($p_isExistingIssue && is_object($conflictingIssue)\n\t\t\t   && ($conflictingIssue->getIssueNumber() == $p_issueNumber));\n\tif (is_object($conflictingIssue) && !$isSelf) {\n\t\t$conflictingIssueLink = \"/$ADMIN/issues/edit.php?\"\n\t\t\t.\"Pub=$p_publicationId\"\n\t\t\t.\"&Issue=\".$conflictingIssue->getIssueNumber()\n\t\t\t.\"&Language=\".$conflictingIssue->getLanguageId();\n\n\t\t$errMsg = $translator->trans('The language and URL name must be unique for each issue in this publication.', array(), 'issues').\"<br>\".$translator->trans('The values you are trying to set conflict with issue $1$2. $3 ($4)$5.', array(\n\t\t\t'$1' => \"<a href='$conflictingIssueLink'>\",\n\t\t\t'$2' => $conflictingIssue->getIssueNumber(),\n\t\t\t'$3' => $conflictingIssue->getName(),\n\t\t\t'$4' => $conflictingIssue->getLanguageName(),\n\t\t\t'$5' => '</a>'), 'issues');\n\t\treturn $errMsg;\n\t}\n\treturn \"\";\n}\n?>"
  },
  {
    "path": "newscoop/admin-files/issues/preview.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/issues/issue_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Alias.php');\n\n\nuse Newscoop\\Service\\ISyncResourceService;\nuse Newscoop\\Service\\IIssueService;\nuse Newscoop\\Service\\IOutputService;\n\n//@New theme management\nuse Newscoop\\Service\\Resource\\ResourceId;\nuse Newscoop\\Service\\IThemeManagementService;\nuse Newscoop\\Service\\IOutputSettingIssueService;\nuse Newscoop\\Entity\\Output\\OutputSettingsIssue;\n//@New theme management\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$Language = Input::Get('Language', 'int', 0);\n$Pub = Input::Get('Pub', 'int', 0);\n$Issue = Input::Get('Issue', 'int', 0);\n\n$errorStr = \"\";\n$languageObj = new Language($Language);\nif (!$languageObj->exists()) {\n\t$errorStr = $translator->trans('There was an error reading the language parameter.', array(), 'issues');\n}\nif ($errorStr == \"\") {\n\t$publicationObj = new Publication($Pub);\n\tif (!$publicationObj->exists())\n\t$errorStr = $translator->trans('There was an error reading the publication parameter.', array(), 'issues');\n}\nif ($errorStr == \"\") {\n\t$issueObj = new Issue($Pub, $Language, $Issue);\n\tif (!$issueObj->exists())\n\t$errorStr = $translator->trans('There was an error reading the issue parameter.', array(), 'issues');\n}\n\nif ($errorStr != \"\") {\n\tcamp_html_display_error($errorStr, null, true);\n}\n\n$resourceId = new ResourceId('Publication/Edit');\n$themeManagementService = $resourceId->getService(IThemeManagementService::NAME_1);\n/* @var $themeManagementService \\Newscoop\\Service\\Implementation\\ThemeManagementServiceLocal */\n$outputSettingIssueService = $resourceId->getService(IOutputSettingIssueService::NAME);\n/* @var $outputSettingIssueService \\Newscoop\\Service\\Implementation\\OutputSettingIssueServiceDoctrine */\n$issueService = $resourceId->getService(IIssueService::NAME);\n/* @var $issueService \\Newscoop\\Service\\Implementation\\IssueServiceDoctrine */\n$outputService = $resourceId->getService(IOutputService::NAME);\n$syncRsc = $resourceId->getService(ISyncResourceService::NAME);\n\n$outputIssueSettings = current($outputSettingIssueService->findByIssue($issueObj->getIssueId()));\n/* @var $outputIssueSettings \\Newscoop\\Entity\\Output\\OutputSettingsIssue */\n\n$publicationThemes = $themeManagementService->getThemes($publicationObj->getPublicationId());\n\nif (!$outputIssueSettings) {\n    if (count($publicationThemes) > 0) {\n        $themePath = $publicationThemes[0]->getPath();\n        $outputIssueSettings = new OutputSettingsIssue();\n        $outputIssueSettings->setOutput($outputService->findByName('Web'));\n        $outputIssueSettings->setIssue($issueService->getById($issueObj->getIssueId()));\n        $outputIssueSettings->setThemePath($syncRsc->getThemePath($themePath));\n        $outputIssueSettings->setFrontPage(null);\n        $outputIssueSettings->setSectionPage(null);\n        $outputIssueSettings->setArticlePage(null);\n        $outputSettingIssueService->insert($outputIssueSettings);\n    } else {\n        $errorStr = $translator->trans('This issue cannot be previewed. Please make sure the publication has a theme assigned.', array(), 'issues');\n        camp_html_display_error($errorStr, null, true);\n    }\n} else {\n    $themePath = $outputIssueSettings->getThemePath()->getPath();\n}\n$frontPage = $outputIssueSettings->getFrontPage();\nif (is_null($frontPage)) {\n    foreach ($publicationThemes as $publicationTheme) {\n        if ($publicationTheme->getPath() == $themePath) {\n            $themeOutSettings = $themeManagementService->findOutputSetting($publicationTheme, $outputService->findByName('Web'));\n            $frontPage = $themeOutSettings->getFrontPage();\n        }\n    }\n}\n$templateId = $frontPage->getPath();\n$templateName = substr($templateId, strlen($themePath));\n\nif (!$templateId) {\n    $errorStr = $translator->trans('This issue cannot be previewed. Please make sure it has the front template selected.', array(), 'issues');\n    camp_html_display_error($errorStr, null, true);\n}\n\nif (!isset($_SERVER['SERVER_PORT'])) {\n\t$_SERVER['SERVER_PORT'] = 80;\n}\n$scheme = $_SERVER['SERVER_PORT'] == 443 ? 'https://' : 'http://';\n$siteAlias = new Alias($publicationObj->getDefaultAliasId());\n$websiteURL = $scheme.$siteAlias->getName();\n\n$accessParams = \"\";\n$urlType = $publicationObj->getProperty('IdURLType');\nif ($urlType == 1) {\n\t$url = \"$websiteURL\"  . \"/tpl/\" . $templateObj->getName()\n\t. \"?IdLanguage=$Language&IdPublication=$Pub&NrIssue=$Issue&$accessParams\";\n} else {\n\t$url = \"$websiteURL\" . '/' . $languageObj->getCode()\n\t. \"/\" . $issueObj->getUrlName() . \"?$accessParams\";\n}\n\n$selectedLanguage = (int)CampRequest::GetVar('Language');\n$url .= \"&previewLang=$selectedLanguage\";\n\nif ($g_user->hasPermission(\"ManageTempl\") || $g_user->hasPermission(\"DeleteTempl\")) {\n\t// Show dual-pane view for those with template management priviledges\n\t?>\n<FRAMESET ROWS=\"60%,*\" BORDER=\"1\">\n\t<FRAME SRC=\"<?php echo \"$url&preview=on\"; ?>\" NAME=\"body\"\n\t\tFRAMEBORDER=\"1\">\n\t<FRAME NAME=\"e\" SRC=\"empty.php\" FRAMEBORDER=\"1\">\n</FRAMESET>\n\t<?php\n} else {\n\t// Show single pane for everyone else.\n\t?>\n<FRAMESET ROWS=\"100%\">\n\t<FRAME SRC=\"<?php print \"$url&preview=on\"; ?>\" NAME=\"body\"\n\t\tFRAMEBORDER=\"1\">\n</FRAMESET>\n\t<?php\n}\n?>\n"
  },
  {
    "path": "newscoop/admin-files/issues/qadd.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/issues/issue_common.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n// Check permissions\nif (!$g_user->hasPermission('ManageIssue')) {\n\tcamp_html_display_error($translator->trans('You do not have the right to add issues.', array(), 'issues'));\n\texit;\n}\n\n$Pub = Input::Get('Pub', 'int');\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid Input: $1', array('$1' => Input::GetErrorString()), 'issues'));\n\texit;\n}\n$publicationObj = new Publication($Pub);\n$allLanguages = Language::GetLanguages(null, null, null, array(), array(), true);\n$newIssueId = Issue::GetUnusedIssueId($Pub);\n\ncamp_html_content_top($translator->trans('Add new issue'), array('Pub' => $publicationObj), true, false, array($translator->trans(\"Issues\") => \"/$ADMIN/issues/?Pub=$Pub\"));\n$controller->view->headTitle($translator->trans('Add new issue').' - Newscoop Admin', 'SET');\n?>\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" class=\"box_table\">\n<TR>\n    <TD VALIGN=\"TOP\"><A HREF=\"/<?php echo $ADMIN; ?>/issues/add_prev.php?Pub=<?php p($Pub); ?>\"><IMG SRC=\"<?php echo $Campsite['ADMIN_IMAGE_BASE_URL']; ?>/tol.gif\" BORDER=\"0\"></A></TD>\n    <TD><B><A HREF=\"/<?php echo $ADMIN; ?>/issues/add_prev.php?Pub=<?php p($Pub); ?>\"><?php echo $translator->trans('Use the structure of the previous issue', array(), 'issues'); ?></A></B></TD>\n</TR>\n<TR>\n\t<TD></TD>\n\t<TD VALIGN=\"TOP\">\n\t\t<LI><?php echo $translator->trans('Copy the entire structure in all languages from the previous issue except for content.', array(), 'issues'); ?><LI><?php echo $translator->trans('You may modify it later if you wish.', array(), 'issues'); ?></LI>\n\t</TD>\n<TR>\n<?php\n\tif (SaaS::singleton()->hasPermission('ManageIssueTemplates')) {\n?>\n<TR>\n    <TD VALIGN=\"TOP\"><A HREF=\"/<?php echo $ADMIN; ?>/issues/add_new.php?Pub=<?php  p($Pub); ?>\"><IMG SRC=\"<?php echo $Campsite['ADMIN_IMAGE_BASE_URL']; ?>/tol.gif\" BORDER=\"0\"></A></TD>\n    <TD><B><A HREF=\"/<?php echo $ADMIN; ?>/issues/add_new.php?Pub=<?php  p($Pub); ?>\"><?php echo $translator->trans('Create a new structure', array(), 'issues'); ?></A></B></TD>\n</TR>\n<TR>\n\t<TD></TD>\n\t<TD VALIGN=\"TOP\">\n\t\t<LI><?php echo $translator->trans('Create a complete new structure.', array(), 'issues'); ?><LI><?php echo $translator->trans('You must define an issue type for each language and then sections for them.', array(), 'issues'); ?></LI>\n\t</TD>\n<TR>\n<?php\n\t}\n?>\n</TABLE>\n<P>\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/issues/translate.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/issues/issue_common.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n// Check permissions\nif (!$g_user->hasPermission('ManageIssue')) {\n\tcamp_html_display_error($translator->trans('You do not have the right to add issues.', array(), 'issues'));\n\texit;\n}\n$f_publication_id = Input::Get('Pub', 'int');\n$f_issue_number = Input::Get('Issue', 'int');\n$f_language_id = Input::Get('Language', 'int');\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid Input: $1', array('$1' => Input::GetErrorString()), 'issues'));\n\texit;\n}\n$publicationObj = new Publication($f_publication_id);\n$issueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\n$allIssues = Issue::GetIssues($f_publication_id, null, $f_issue_number, null, null, false, null, true);\n$unusedLanguages = $issueObj->getLanguages(true, true,\narray(array('field'=>'byname', 'dir'=>'asc')), false, false);\n\ninclude_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/javascript_common.php\");\n\ncamp_html_content_top($translator->trans('Add new translation', array(), 'issues'), array('Pub' => $publicationObj, 'Issue' => $issueObj));\n\n$controller->view->headTitle($translator->trans('Add new translation', array(), 'issues').' - Newscoop Admin', 'SET');\n\n?>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\" class=\"action_buttons\" style=\"padding-top: 5px;\">\n<TR>\n\t<TD><A HREF=\"/<?php echo $ADMIN; ?>/issues/?Pub=<?php  p($f_publication_id); ?>\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/left_arrow.png\" BORDER=\"0\"></A></TD>\n\t<TD><A HREF=\"/<?php echo $ADMIN; ?>/issues/?Pub=<?php  p($f_publication_id); ?>\"><B><?php echo $translator->trans(\"Issue List\"); ?></B></A></TD>\n\t<TD style=\"padding-left: 20px;\"><A HREF=\"/<?php echo $ADMIN; ?>/issues/?Pub=<?php  p($f_publication_id); ?>\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/left_arrow.png\" BORDER=\"0\"></A></TD>\n\t<TD><A HREF=\"/<?php echo $ADMIN; ?>/issues/edit.php?Pub=<?php  p($f_publication_id); ?>&Issue=<?php  p($issueObj->getIssueNumber()); ?>&Language=<?php p($issueObj->getLanguageId()); ?>\"><B><?php  echo $translator->trans(\"Issue\").\": \".htmlspecialchars($issueObj->getName()); ?></B></A></TD>\n</TR>\n</TABLE>\n\n<?php camp_html_display_msgs(); ?>\n\n<P>\n<FORM NAME=\"issue_translate\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/issues/do_translate.php\" onsubmit=\"return <?php camp_html_fvalidate(); ?>;\">\n<?php echo SecurityToken::FormParameter(); ?>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"\" CLASS=\"box_table\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B><?php echo $translator->trans(\"Add new translation\", array(), 'issues'); ?></B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n\n<TR>\n\t<TD ALIGN=\"RIGHT\" valign=\"top\"><?php echo $translator->trans(\"Issue\"); ?>:</TD>\n\t<TD>\n\t\t<?php\n\t\t$comma = 0;\n\t\tforeach ($allIssues as $tmpIssue) {\n\t\t\tif ($comma) {\n\t\t\t    print '<br>';\n\t\t\t}\n\t\t\tp(htmlspecialchars($tmpIssue->getName() .' ('.$tmpIssue->getLanguageName().')'));\n\t\t\t$comma =1;\n\t\t}\n\t\t?>\n\t</TD>\n</TR>\n\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Name\"); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_name\" SIZE=\"32\" alt=\"blank\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => $translator->trans('Name'))); ?>\">\n\t</TD>\n</TR>\n\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"URL Name\"); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_url_name\" size=\"32\" value=\"<?php echo htmlspecialchars($issueObj->getUrlName()); ?>\" alt=\"blank\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.',array('$1' => $translator->trans('URL Name'))); ?>\">\n\t</TD>\n</TR>\n\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Language\"); ?>:</TD>\n\t<TD>\n\t\t<SELECT NAME=\"f_new_language_id\" class=\"input_select\"><?php\n\t\tforeach ($unusedLanguages as $tmpLanguage) {\n\t\t\tcamp_html_select_option($tmpLanguage->getLanguageId(),'',htmlspecialchars($tmpLanguage->getNativeName()));\n        }\n\t    ?>\n\t\t</SELECT>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\">\n\t\t<INPUT TYPE=\"HIDDEN\" NAME=\"f_publication_id\" VALUE=\"<?php p($f_publication_id);?>\">\n\t\t<INPUT TYPE=\"HIDDEN\" NAME=\"f_issue_number\" VALUE=\"<?php p($f_issue_number); ?>\">\n\t\t<INPUT TYPE=\"HIDDEN\" NAME=\"f_language_id\" VALUE=\"<?php p($f_language_id); ?>\">\n\t\t<INPUT TYPE=\"submit\" class=\"button\" VALUE=\"<?php echo $translator->trans('Save'); ?>\">\n\t</TD>\n</TR>\n</TABLE>\n</FORM>\n<P>\n<script>\ndocument.issue_translate.f_name.focus();\n</script>\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/javascript_common.php",
    "content": "<script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/campsite.js\"></script>\n<script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/fValidate/fValidate.config.js\"></script>\n<script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/fValidate/fValidate.core.js\"></script>\n<script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/fValidate/fValidate.lang-enUS.js\"></script>\n<script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/fValidate/fValidate.validators.js\"></script>\n"
  },
  {
    "path": "newscoop/admin-files/json.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nheader('Content-type: application/json');\n\nrequire_once WWW_DIR . '/classes/ServerRequest.php';\n\n// include valid callbacks files\n// TODO replace with Zend_Loader\nrequire_once WWW_DIR . '/classes/Extension/WidgetManager.php';\nrequire_once LIBS_DIR . '/ArticleList/ArticleList.php';\nrequire_once LIBS_DIR . '/ContextList/ContextList.php';\nrequire_once LIBS_DIR . '/MediaList/MediaList.php';\nrequire_once LIBS_DIR . '/ImageList/ImageList.php';\nrequire_once WWW_DIR . '/classes/GeoNames.php';\nrequire_once WWW_DIR . '/classes/GeoMap.php';\nrequire_once WWW_DIR . '/classes/Article.php';\nrequire_once WWW_DIR . '/classes/ArticleData.php';\n\ntry {\n    // init request\n    $serverRequest = new ServerRequest($_POST['callback'], isset($_POST['args']) ? $_POST['args'] : array());\n\n    // set permissions\n    $serverRequest->allow('ping');\n    $serverRequest->allow('ArticleList::doAction'); // checked in handler\n    $serverRequest->allow('ArticleList::doData');\n    $serverRequest->allow('ArticleList::getFilterIssues');\n    $serverRequest->allow('ArticleList::getFilterSections');\n    $serverRequest->allow('ArticleList::doOrder', 'Publish');\n\n    $serverRequest->allow('ContextList::doAction'); // checked in handler\n    $serverRequest->allow('ContextList::doData');\n    $serverRequest->allow('ContextList::getFilterIssues');\n    $serverRequest->allow('ContextList::getFilterSections');\n    $serverRequest->allow('ContextList::doOrder', 'Publish');\n\n    $serverRequest->allow('WidgetManager::AddWidget');\n    $serverRequest->allow('WidgetManagerDecorator::delete');\n    $serverRequest->allow('WidgetRendererDecorator::render');\n    $serverRequest->allow('WidgetManagerDecorator::getSetting');\n    $serverRequest->allow('WidgetContext::setWidgets');\n    $serverRequest->allow('WidgetManagerDecorator::update');\n    $serverRequest->allow('Geo_Names::FindCitiesByPosition');\n    $serverRequest->allow('Geo_Names::FindCitiesByName');\n    $serverRequest->allow('Geo_Map::LoadMapData');\n    $serverRequest->allow('Geo_Map::StoreMapData', 'ChangeArticle');\n    $serverRequest->allow('MediaList::doData');\n    $serverRequest->allow('ImageList::doData');\n    $serverRequest->allow('MediaList::doDelete');\n    $serverRequest->allow('ImageList::doDelete');\n    $serverRequest->allow('ImageList::doApprove');\n    $serverRequest->allow('MediaList::doApprove');\n    $serverRequest->allow('ImageList::doDisapprove');\n    $serverRequest->allow('MediaList::doDisapprove');\n    $serverRequest->allow('Article::setOnFrontPage','Publish');\n    $serverRequest->allow('Article::setOnSectionPage','Publish');\n    $serverRequest->allow('Article::setIsPublic','Publish');\n    $serverRequest->allow('Article::setRatingEnabled');\n    $serverRequest->allow('Article::setKeywords');\n    $serverRequest->allow('Article::setIsLocked');\n    $serverRequest->allow('ArticleData::setProperty');\n    $serverRequest->allow('ArticleTypeField::SetFieldColor', 'ManageArticleTypes');\n    // execute\n    echo json_encode($serverRequest->execute());\n} catch (Exception $e) {\n    echo json_encode(array(\n        'error_code' => $e->getCode(),\n        'error_message' => 'Error: '.$e->getMessage(),\n        'error_file' => $e->getFile(),\n        'error_line' => $e->getLine(),\n    ));\n}\n\nexit;\n\n/**\n * Connection check function\n * @return bool\n */\nfunction ping()\n{\n    return TRUE;\n}\n"
  },
  {
    "path": "newscoop/admin-files/languages/add_modify.php",
    "content": "<?php\nrequire_once($Campsite['HTML_DIR'] . \"/$ADMIN_DIR/languages.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$f_language_id = Input::Get('f_language_id', 'int', 0, true);\n$editMode = ($f_language_id != 0);\n\nif (!$g_user->hasPermission('ManageLanguages')) {\n    if (!$editMode) {\n\t   camp_html_display_error($translator->trans(\"You do not have the right to add languages.\", array(), 'languages'));\n    }\n    else {\n       camp_html_display_error($translator->trans(\"You do not have the right to edit languages.\", array(), 'languages'));\n    }\n\texit;\n}\n\n$q_defaultTimeUnits = $g_ado_db->GetAll(\"SELECT * FROM TimeUnits WHERE IdLanguage=1\");\n$numTimeUnits = 0;\n$q_timeUnits = array();\nif ($editMode) {\n    $q_timeUnits = $g_ado_db->GetAll(\"SELECT * FROM TimeUnits WHERE IdLanguage=$f_language_id\");\n}\n\n$languageObj = new Language($f_language_id);\n\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Configure\"), \"\");\n$crumbs[] = array($translator->trans(\"Languages\"), \"/$ADMIN/languages\");\nif ($editMode) {\n    $crumbs[] = array($translator->trans(\"Edit language\", array(), 'languages'), \"\");\n} else {\n    $crumbs[] = array($translator->trans(\"Add new language\", array(), 'languages'), \"\");\n}\n$breadcrumbs = camp_html_breadcrumbs($crumbs);\necho $breadcrumbs;\n\ninclude_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/javascript_common.php\");\n\ncamp_html_display_msgs();\n?>\n<P>\n<FORM NAME=\"language_form\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/languages/do_add_modify.php\" onsubmit=\"return <?php camp_html_fvalidate(); ?>;\">\n<?php echo SecurityToken::FormParameter(); ?>\n<?php if ($editMode) { ?>\n<input type=\"hidden\" name=\"f_language_id\" value=\"<?php p($languageObj->getLanguageId()); ?>\">\n<?php } ?>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" CLASS=\"box_table\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t   <?php if ($editMode) { ?>\n\t       <B><?php echo $translator->trans(\"Edit language\", array(), 'languages'); ?></B>\n\t   <?php } else { ?>\n           <B><?php echo $translator->trans(\"Add new language\", array(), 'languages'); ?></B>\n       <?php } ?>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php echo $translator->trans(\"Name\"); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_language_name\" SIZE=\"32\" alt=\"blank\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => $translator->trans('Name'))); ?>\" value=\"<?php p($languageObj->getProperty('Name')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Native name\"); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_native_name\" SIZE=\"32\" alt=\"blank\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => $translator->trans('Native name'))); ?>\" value=\"<?php p($languageObj->getProperty('OrigName')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Code\"); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_language_code\" SIZE=\"20\" MAXLENGTH=\"20\" alt=\"length|2|20\" emsg=\"<?php  echo $translator->trans('You must fill in the $1 field.', array('$1' => $translator->trans('Code'))); ?>\" value=\"<?php p($languageObj->getProperty('Code')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\"><?php  echo $translator->trans('Please enter the translation for month names.', array(), 'languages'); ?></TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"January\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_month_1\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('Month1')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"February\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_month_2\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('Month2')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"March\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_month_3\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('Month3')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"April\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_month_4\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('Month4')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"May\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_month_5\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('Month5')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"June\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_month_6\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('Month6')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"July\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_month_7\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('Month7')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"August\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_month_8\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('Month8')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"September\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_month_9\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('Month9')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"October\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_month_10\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('Month10')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"November\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_month_11\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('Month11')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"December\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_month_12\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('Month12')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\"><?php  echo $translator->trans('Please enter the translation for month short names.', array(), 'languages'); ?></TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Jan\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_short_month_1\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('ShortMonth1')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Feb\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_short_month_2\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('ShortMonth2')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Mar\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_short_month_3\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('ShortMonth3')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Apr\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_short_month_4\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('ShortMonth4')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"May\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_short_month_5\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('ShortMonth5')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Jun\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_short_month_6\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('ShortMonth6')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Jul\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_short_month_7\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('ShortMonth7')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Aug\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_short_month_8\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('ShortMonth8')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Sep\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_short_month_9\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('ShortMonth9')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Oct\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_short_month_10\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('ShortMonth10')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Nov\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_short_month_11\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('ShortMonth11')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Dec\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_short_month_12\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('ShortMonth12')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\"><?php  echo $translator->trans('Please enter the translation for week day names.', array(), 'languages'); ?></TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Sunday\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_sunday\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('WDay1')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Monday\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_monday\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('WDay2')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Tuesday\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_tuesday\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('WDay3')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Wednesday\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_wednesday\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('WDay4')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Thursday\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_thursday\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('WDay5')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Friday\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_friday\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('WDay6')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Saturday\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_saturday\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('WDay7')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\"><?php  echo $translator->trans('Please enter the translation for week day short names.', array(), 'languages'); ?></TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Su\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_short_sunday\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('ShortWDay1')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Mo\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_short_monday\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('ShortWDay2')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Tu\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_short_tuesday\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('ShortWDay3')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"We\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_short_wednesday\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('ShortWDay4')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Th\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_short_thursday\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('ShortWDay5')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Fr\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_short_friday\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('ShortWDay6')); ?>\">\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Sa\", array(), 'languages'); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"f_short_saturday\" SIZE=\"20\" value=\"<?php p($languageObj->getProperty('ShortWDay7')); ?>\">\n\t</TD>\n</TR>\n\n<TR>\n\t<TD COLSPAN=\"2\"><?php  echo $translator->trans('Please enter the translation for time units.', array(), 'languages'); ?></TD>\n</TR>\n\t<?php\n\tfor ($i = 0; $i < count($q_defaultTimeUnits); $i++) {\n\t    if (count($q_timeUnits) > 0) {\n            $value = $q_timeUnits[$i]['Name'];\n\t    }\n\t    else {\n\t        $value = $q_defaultTimeUnits[$i]['Name'];\n\t    }\n\t   ?>\n\t   <TR>\n\t\t  <TD ALIGN=\"RIGHT\"><?php p(htmlspecialchars($q_defaultTimeUnits[$i]['Name']));?></TD>\n\t\t  <TD><INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"<?php p(htmlspecialchars($q_defaultTimeUnits[$i]['Unit']));?>\" SIZE=\"20\" VALUE=\"<?php  p(htmlspecialchars($value)); ?>\"></TD>\n\t   </TR>\n\t   <?php\n\t} ?>\n\t<TR>\n\n\t<TD COLSPAN=\"2\" align=\"center\">\n\t\t<INPUT TYPE=\"submit\" class=\"button\" NAME=\"Save\" VALUE=\"<?php  echo $translator->trans('Save'); ?>\">\n\t</TD>\n</TR>\n</TABLE>\n</FORM>\n<P>\n<script>\ndocument.forms.language_form.f_language_name.focus();\n</script>\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/languages/do_add_modify.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/TimeUnit.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nif (!$g_user->hasPermission('ManageLanguages')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to add new languages.\", array(), 'issues'));\n\texit;\n}\n\n$f_language_id = Input::Get('f_language_id', 'int', 0, true);\n$editMode = ($f_language_id != 0);\n$f_language_name = Input::Get('f_language_name');\n$f_native_name = Input::Get('f_native_name');\n$f_language_code = Input::Get('f_language_code');\n$f_month_1 = Input::Get('f_month_1', 'string', '', true);\n$f_month_2 = Input::Get('f_month_2', 'string', '', true);\n$f_month_3 = Input::Get('f_month_3', 'string', '', true);\n$f_month_4 = Input::Get('f_month_4', 'string', '', true);\n$f_month_5 = Input::Get('f_month_5', 'string', '', true);\n$f_month_6 = Input::Get('f_month_6', 'string', '', true);\n$f_month_7 = Input::Get('f_month_7', 'string', '', true);\n$f_month_8 = Input::Get('f_month_8', 'string', '', true);\n$f_month_9 = Input::Get('f_month_9', 'string', '', true);\n$f_month_10 = Input::Get('f_month_10', 'string', '', true);\n$f_month_11 = Input::Get('f_month_11', 'string', '', true);\n$f_month_12 = Input::Get('f_month_12', 'string', '', true);\n$f_short_month_1 = Input::Get('f_short_month_1', 'string', '', true);\n$f_short_month_2 = Input::Get('f_short_month_2', 'string', '', true);\n$f_short_month_3 = Input::Get('f_short_month_3', 'string', '', true);\n$f_short_month_4 = Input::Get('f_short_month_4', 'string', '', true);\n$f_short_month_5 = Input::Get('f_short_month_5', 'string', '', true);\n$f_short_month_6 = Input::Get('f_short_month_6', 'string', '', true);\n$f_short_month_7 = Input::Get('f_short_month_7', 'string', '', true);\n$f_short_month_8 = Input::Get('f_short_month_8', 'string', '', true);\n$f_short_month_9 = Input::Get('f_short_month_9', 'string', '', true);\n$f_short_month_10 = Input::Get('f_short_month_10', 'string', '', true);\n$f_short_month_11 = Input::Get('f_short_month_11', 'string', '', true);\n$f_short_month_12 = Input::Get('f_short_month_12', 'string', '', true);\n$f_sunday = Input::Get('f_sunday', 'string', '', true);\n$f_monday = Input::Get('f_monday', 'string', '', true);\n$f_tuesday = Input::Get('f_tuesday', 'string', '', true);\n$f_wednesday = Input::Get('f_wednesday', 'string', '', true);\n$f_thursday = Input::Get('f_thursday', 'string', '', true);\n$f_friday = Input::Get('f_friday', 'string', '', true);\n$f_saturday = Input::Get('f_saturday', 'string', '', true);\n$f_short_sunday = Input::Get('f_short_sunday', 'string', '', true);\n$f_short_monday = Input::Get('f_short_monday', 'string', '', true);\n$f_short_tuesday = Input::Get('f_short_tuesday', 'string', '', true);\n$f_short_wednesday = Input::Get('f_short_wednesday', 'string', '', true);\n$f_short_thursday = Input::Get('f_short_thursday', 'string', '', true);\n$f_short_friday = Input::Get('f_short_friday', 'string', '', true);\n$f_short_saturday = Input::Get('f_short_saturday', 'string', '', true);\n$D = Input::Get('D', 'string', '', true);\n$W = Input::Get('W', 'string', '', true);\n$M = Input::Get('M', 'string', '', true);\n$Y = Input::Get('Y', 'string', '', true);\n\n$correct = 1;\n$created = 0;\nif (($f_language_name == \"\") || ($f_native_name == \"\") || ($f_language_code == \"\") ) {\n    $correct = 0;\n}\n$errorMsgs = array();\nif ($f_language_name == \"\") {\n    camp_html_add_msg($translator->trans('You must fill in the $1 field.', array('$1' => '<B>'.$translator->trans('Name').'</B>')));\n}\nif ($f_native_name == \"\") {\n   \tcamp_html_add_msg($translator->trans('You must fill in the $1 field.', array('$1' => '<B>'.$translator->trans('Native name', array(), 'issues').'</B>')));\n}\nif ($f_language_code == \"\") {\n\tcamp_html_add_msg($translator->trans('You must fill in the $1 field.', array('$1' => '<B>'.$translator->trans('Code').'</B>')));\n}\n\nif ($editMode) {\n    $languageObj = new Language($f_language_id);\n}\n\nif ($correct) {\n\t$columns = array('Name' => $f_language_name,\n\t\t\t\t\t 'Code' => $f_language_code,\n\t\t\t\t\t 'OrigName' => $f_native_name,\n\t\t\t\t\t 'Month1' => $f_month_1,\n\t\t\t\t\t 'Month2' => $f_month_2,\n\t\t\t\t\t 'Month3' => $f_month_3,\n\t\t\t\t\t 'Month4' => $f_month_4,\n\t\t\t\t\t 'Month5' => $f_month_5,\n\t\t\t\t\t 'Month6' => $f_month_6,\n\t\t\t\t\t 'Month7' => $f_month_7,\n\t\t\t\t\t 'Month8' => $f_month_8,\n\t\t\t\t\t 'Month9' => $f_month_9,\n\t\t\t\t\t 'Month10' => $f_month_10,\n\t\t\t\t\t 'Month11' => $f_month_11,\n\t\t\t\t\t 'Month12' => $f_month_12,\n\t\t\t\t\t 'ShortMonth1' => $f_short_month_1,\n\t\t\t\t\t 'ShortMonth2' => $f_short_month_2,\n\t\t\t\t\t 'ShortMonth3' => $f_short_month_3,\n\t\t\t\t\t 'ShortMonth4' => $f_short_month_4,\n\t\t\t\t\t 'ShortMonth5' => $f_short_month_5,\n\t\t\t\t\t 'ShortMonth6' => $f_short_month_6,\n\t\t\t\t\t 'ShortMonth7' => $f_short_month_7,\n\t\t\t\t\t 'ShortMonth8' => $f_short_month_8,\n\t\t\t\t\t 'ShortMonth9' => $f_short_month_9,\n\t\t\t\t\t 'ShortMonth10' => $f_short_month_10,\n\t\t\t\t\t 'ShortMonth11' => $f_short_month_11,\n\t\t\t\t\t 'ShortMonth12' => $f_short_month_12,\n\t\t\t\t\t 'WDay1' => $f_sunday,\n\t\t\t\t\t 'WDay2' => $f_monday,\n\t\t\t\t\t 'WDay3' => $f_tuesday,\n\t\t\t\t\t 'WDay4' => $f_wednesday,\n\t\t\t\t\t 'WDay5' => $f_thursday,\n\t\t\t\t\t 'WDay6' => $f_friday,\n\t\t\t                 'WDay7' => $f_saturday,\n\t\t\t\t\t 'ShortWDay1' => $f_short_sunday,\n\t\t\t\t\t 'ShortWDay2' => $f_short_monday,\n\t\t\t\t\t 'ShortWDay3' => $f_short_tuesday,\n\t\t\t\t\t 'ShortWDay4' => $f_short_wednesday,\n\t\t\t\t\t 'ShortWDay5' => $f_short_thursday,\n\t\t\t\t\t 'ShortWDay6' => $f_short_friday,\n\t\t\t\t\t 'ShortWDay7' => $f_short_saturday);\n\n\t$success = true;\n    if ($editMode) {\n\t\t$languageObj->update($columns);\n    } else {\n    \t$languageObj = new Language();\n    \t$result = $languageObj->create($columns);\n    \tif (PEAR::isError($result)) {\n    \t\tcamp_html_add_msg($result->getMessage());\n    \t\t$success = false;\n    \t} else {\n    \t\t$f_language_id = $languageObj->getLanguageId();\n    \t}\n    }\n    if ($success) {\n\t\tTimeUnit::SetTimeUnit('D', $f_language_id, $D);\n\t\tTimeUnit::SetTimeUnit('W', $f_language_id, $W);\n\t\tTimeUnit::SetTimeUnit('M', $f_language_id, $M);\n\t\tTimeUnit::SetTimeUnit('Y', $f_language_id, $Y);\n\t    camp_html_goto_page(\"/$ADMIN/languages/index.php\");\n    }\n}\n$link = \"/$ADMIN/languages/add_modify.php\". ($editMode ? \"?f_language_id=\".$f_language_id : \"\");\ncamp_html_goto_page($link);\n\n?>"
  },
  {
    "path": "newscoop/admin-files/languages/do_del.php",
    "content": "<?php\nrequire_once($Campsite['HTML_DIR'] . \"/$ADMIN_DIR/languages.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nif (!$g_user->hasPermission('DeleteLanguages')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to delete languages.\", array(), 'languages'));\n\texit;\n}\n\n$Language = Input::Get('Language', 'int');\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $BackLink);\n\texit;\n}\n\n$languageObj = new Language($Language);\nif (!$languageObj->exists()) {\n\tcamp_html_goto_page(\"/$ADMIN/logout.php\");\n}\n\n$doDelete = true;\n$errorMsgs = array();\n$numPublications = $g_ado_db->GetOne(\"SELECT COUNT(*) FROM Publications WHERE IdDefaultLanguage=$Language\");\nif ($numPublications > 0) {\n\t$doDelete = false;\n\t$errorMsgs[] = $translator->trans('There are $1 publication(s) left.', array('$1' => $numPublications));\n}\n\n$numIssues = $g_ado_db->GetOne(\"SELECT COUNT(*) FROM Issues WHERE IdLanguage=$Language\");\nif ($numIssues > 0) {\n    $doDelete = false;\n    $errorMsgs[] = $translator->trans('There are $1 issue(s) left.', array('$1' => $numIssues));\n}\n\n$numSections = $g_ado_db->GetOne(\"SELECT COUNT(*) FROM Sections WHERE IdLanguage=$Language\");\nif ($numSections > 0) {\n    $doDelete = false;\n    $errorMsgs[] = $translator->trans('There are $1 section(s) left.', array('$1' => $numSections));\n}\n\n$numArticles = $g_ado_db->GetOne(\"SELECT COUNT(*) FROM Articles WHERE IdLanguage=$Language\");\nif ($numArticles > 0) {\n    $doDelete = false;\n    $errorMsgs[] = $translator->trans('There are $1 article(s) left.', array('$1' => $numArticles));\n}\n\n$numCountries = $g_ado_db->GetOne(\"SELECT COUNT(*) FROM Countries WHERE IdLanguage=$Language\");\nif ($numCountries > 0) {\n    $doDelete = false;\n    $errorMsgs[] = $translator->trans('There are $1 countries left.', array('$1' => $numCountries));\n}\n\nif ($doDelete) {\n\t$result = $languageObj->delete();\n\tif (!PEAR::isError($result)) {\n\t\tcamp_html_goto_page(\"/$ADMIN/languages/index.php\");\n\t} else {\n\t\t$errorMsgs[] = $result->getMessage();\n\t}\n\n}\n\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Configure\"), \"\");\n$crumbs[] = array($translator->trans(\"Languages\"), \"/$ADMIN/languages/\");\n$crumbs[] = array($translator->trans(\"Deleting language\", array(), 'languages'), \"\");\necho camp_html_breadcrumbs($crumbs);\n\n?>\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B> <?php  echo $translator->trans(\"Deleting language\", array(), 'languages'); ?> </B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t   <BLOCKQUOTE>\n\t\t<LI><?php  echo $translator->trans('The language $1 could not be deleted.', array('$1' => '<B>'.$languageObj->getNativeName().'</B>'), 'languages'); ?></LI>\n        <?php\n        foreach ($errorMsgs as $error) { ?>\n            <LI><?php p($error); ?></LI>\n            <?php\n        }\n        ?>\n\t   </BLOCKQUOTE>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n    \t<DIV ALIGN=\"CENTER\">\n        \t<INPUT TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php  echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php p($ADMIN); ?>/languages/'\">\n    \t</DIV>\n\t</TD>\n</TR>\n</TABLE>\n<P>\n\n<?php camp_html_copyright_notice(); ?>"
  },
  {
    "path": "newscoop/admin-files/languages/index.php",
    "content": "<?php\nrequire_once($Campsite['HTML_DIR'] . \"/$ADMIN_DIR/languages.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$languages = Language::GetLanguages(null, null, null, array(), array(), true);\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Configure\"), \"\");\n$crumbs[] = array($translator->trans(\"Languages\"), \"\");\n$breadcrumbs = camp_html_breadcrumbs($crumbs);\necho $breadcrumbs;\n\nif ($g_user->hasPermission('ManageLanguages')) { ?>\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" class=\"action_buttons\">\n<TR>\n    <TD><A HREF=\"/<?php echo $ADMIN; ?>/languages/add_modify.php\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/add.png\" BORDER=\"0\"></A></TD>\n    <TD><A HREF=\"/<?php echo $ADMIN; ?>/languages/add_modify.php\"><B><?php echo $translator->trans(\"Add new language\", array(), 'languages'); ?></B></A></TD>\n</TR>\n</TABLE>\n<?php  } ?>\n\n<?php camp_html_display_msgs(); ?>\n\n<P>\n<?php\nif (count($languages) > 0) {\n\t$color= 0; ?>\n\t<TABLE BORDER=\"0\" CELLSPACING=\"1\" CELLPADDING=\"3\" class=\"table_list\">\n\t<TR class=\"table_list_header\">\n\t\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><?php  echo $translator->trans(\"Language\"); ?></TD>\n\t\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><?php  echo $translator->trans(\"Native name\", array(), 'languages'); ?></TD>\n\t\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><?php  echo $translator->trans(\"Code\"); ?></TD>\n        <?php if ($g_user->hasPermission('DeleteLanguages')) { ?>\n\t\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php  echo $translator->trans(\"Delete\"); ?></B></TD>\n        <?php  } ?>\n\t</TR>\n    <?php\n    foreach ($languages as $language) { ?>\n\t<TR <?php  if ($color) { $color=0; ?>class=\"list_row_even\"<?php  } else { $color=1; ?>class=\"list_row_odd\"<?php  } ?>>\n\t\t<TD>\n\t\t\t<?php if ($g_user->hasPermission('ManageLanguages')) { ?>\n\t\t\t<A HREF=\"/<?php echo $ADMIN; ?>/languages/add_modify.php?f_language_id=<?php p($language->getLanguageId()); ?>\">\n\t\t\t<?php } ?>\n\t\t\t<?php  p(htmlspecialchars($language->getName())); ?>\n\t\t\t<?php if ($g_user->hasPermission('ManageLanguages')) { ?>\n\t\t\t</a>\n\t\t\t<?php } ?>\n\t\t</TD>\n\t\t<TD>\n\t\t\t<?php p(htmlspecialchars($language->getNativeName())); ?>\n\t\t</TD>\n\t\t<TD>\n\t\t\t<?php p(htmlspecialchars($language->getCode())); ?>&nbsp;\n\t\t</TD>\n\n\t<?php\n\tif ($g_user->hasPermission('DeleteLanguages')) { ?>\n\t<TD ALIGN=\"CENTER\">\n\t\t<A HREF=\"/<?php echo $ADMIN; ?>/languages/do_del.php?Language=<?php p($language->getLanguageId()); ?>&amp;<?php echo SecurityToken::URLParameter(); ?>\" onclick=\"return confirm('<?php echo $translator->trans('Are you sure you want to delete the language $1?', array('$1' => $language->getNativeName()), 'languages');?>');\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/delete.png\" BORDER=\"0\" ALT=\"<?php  echo $translator->trans('Delete language $1', array('$1' => htmlspecialchars($language->getNativeName())), 'languages'); ?>\" TITLE=\"<?php  echo $translator->trans('Delete language $1', array('$1' => htmlspecialchars($language->getNativeName())), 'languages'); ?>\"></A>\n\t\t</TD>\n\t<?php  } ?>\n\t</TR>\n    <?php\n    } // foreach\n    ?>\n    </TABLE>\n    <?php\n} else { ?>\n    <BLOCKQUOTE>\n\t<LI><?php  echo $translator->trans('No language.', array(), 'languages'); ?></LI>\n    </BLOCKQUOTE>\n<?php  } ?>\n<?php camp_html_copyright_notice(); ?>"
  },
  {
    "path": "newscoop/admin-files/languages.php",
    "content": "<?php\nglobal $Campsite;\n$tmpLanguages = $g_ado_db->GetAll('SELECT Code, Name, CodePage, OrigName FROM Languages');\n$languages = array();\nforeach ($tmpLanguages as $tmpLanguage) {\n    $languages[$tmpLanguage['Code']] = array ('name' => $tmpLanguage['Name'],\n        'charset' => $tmpLanguage['CodePage'], 'orig_name' => $tmpLanguage['OrigName']);\n}\nunset($tmpLanguages);\nunset($tmpLanguage);\n?>"
  },
  {
    "path": "newscoop/admin-files/lib_campsite.php",
    "content": "<?php\n\n/**\n * Compute the difference between two string times.\n *\n * @param string $p_time1\n *      Any string that can be converted with strtotime();\n *\n * @param string $p_time2\n *      (optional) Any string that can be converted with strtotime();\n *      If not specified, the current time is used.\n *\n * @return array\n *      An array of (days, hours, minutes, seconds)\n */\nfunction camp_time_diff_str($p_time1, $p_time2 = null)\n{\n    // Convert the string times into absolute seconds\n    $p_time1 = strtotime($p_time1);\n    if (is_null($p_time2)) {\n        $p_time2 = time();\n    } else {\n        $p_time2 = strtotime($p_time2);\n    }\n\n    // Compute the absolute difference between the times.\n    $diffSeconds = abs($p_time1 - $p_time2);\n    $days = floor($diffSeconds/86400);\n    $diffSeconds -= ($days * 86400);\n    $hours = floor($diffSeconds/3600);\n    $diffSeconds -= $hours * 3600;\n    $minutes = floor($diffSeconds/60);\n    $diffSeconds -= $minutes * 60;\n\n    return array('days' => $days, 'hours' => $hours, 'minutes' => $minutes, 'seconds' => $diffSeconds);\n} // fn camp_time_diff_str\n\n/**\n * Format a time data given in the playtime format.\n *\n * @param string $p_time\n *\n * @return string\n *      A string in the [H:]m:i format\n */\nfunction camp_time_format($p_time)\n{\n    if (strpos($p_time, '.')) {\n        list ($p_time, $lost) = explode('.', $p_time);\n    }\n    $p_time = str_replace('&nbsp;', '', $p_time);\n\n    if (preg_match('/^[0-9]{1,2}:[0-9]{1,2}:[0-9]{1,2}$/', $p_time)) {\n        list($h, $i, $s) = explode(':', $p_time);\n    } elseif (preg_match('/^[0-9]{1,2}:[0-9]{1,2}$/', $p_time)) {\n        list($i, $s) = explode(':', $p_time);\n    } else {\n        $s = $p_time;\n    }\n\n    if ((isset($all) && $all) || ($h > 0) ) {\n        $H = sprintf('%02d', $h).':';\n    } else {\n        $H = '';\n    }\n    $I = sprintf('%02d', $i).':';\n    $S = sprintf('%02d', $s);\n\n    return $H.$I.$S;\n} // fn camp_time_format\n\n/**\n * Return a value from the array, or if the value does not exist,\n * return the given default value.\n *\n * @param array $p_array\n * @param mixed $p_index\n * @param mixed $p_defaultValue\n *\n * @return mixed\n */\nfunction camp_array_get_value($p_array, $p_index, $p_defaultValue = null)\n{\n    if (isset($p_array[$p_index])) {\n        return $p_array[$p_index];\n    } else {\n        return $p_defaultValue;\n    }\n} // fn camp_array_get_value\n\n/**\n * Convert a string so that it can be placed within\n * a javascript string that begins and ends with a single quote (').\n * This is for confirmation dialogs so that database strings do not\n * mess things up.\n *\n * @param string $p_string\n * @return string\n */\nfunction camp_javascriptspecialchars($p_string)\n{\n    $encodedString = htmlspecialchars($p_string);\n    $slashedString = addslashes($encodedString);\n\n    return $slashedString;\n} // fn camp_javascriptspecialchars\n\n\n/**\n * Format the values of an array into a string.\n *\n * @param array $p_array\n *      The array to format.\n * @param string $p_keyValueSeparator\n *      The string to put between the key and the value.\n * @param string $p_elementSeparator\n        The string to put between elements of the array.\n * @param string $p_keyPrefixString\n *      The string to put before each key. Default is the empty string.\n * @param string $p_keyPostfixString\n *      The string to put after each key.  Default is the empty string.\n * @param string $p_valuePrefixString\n *      The string to put before each element value. Default is the empty string.\n * @param string $p_valuePostfixString\n *      The string to put after each element value. Default is the empty string.\n * @return string\n */\nfunction camp_implode_keys_and_values($p_array,\n                                      $p_keyValueSeparator,\n                                      $p_elementSeparator,\n                                      $p_keyPrefixString = '',\n                                      $p_keyPostfixString = '',\n                                      $p_valuePrefixString = '',\n                                      $p_valuePostfixString = '')\n{\n    $returnString = '';\n    if (is_array($p_array)) {\n        $elements = array();\n        foreach ($p_array as $key => $value) {\n            if (is_string($key) && is_string($value)) {\n                $elements[] = $p_keyPrefixString . $key . $p_keyPostfixString .\n                    $p_keyValueSeparator . $p_valuePrefixString . $value . $p_valuePostfixString;\n            }\n        }\n        $returnString = implode($p_elementSeparator, $elements);\n    }\n\n    return $returnString;\n} // fn camp_implode_keys_and_values\n\n\n/**\n * An alias for \"print()\".\n * @param string $p_string\n * @return void\n */\nfunction p($p_string = null)\n{\n    print $p_string;\n} // fn p\n\n\n/**\n * Transform bytes into a human-readable string.\n *\n * @param int $p_bytes\n * @return string\n */\nfunction camp_format_bytes($p_bytes)\n{\n    $translator = \\Zend_Registry::get('container')->getService('translator');\n\n    if ( ($p_bytes / 1073741824) > 1) {\n        return round($p_bytes/1073741824, 1).' '.$translator->trans('GB');\n    } elseif ( ($p_bytes / 1048576) > 1) {\n        return round($p_bytes/1048576, 1).' '.$translator->trans('MB');\n    } elseif ( ($p_bytes / 1024) > 1) {\n        return round($p_bytes/1024, 1).' '.$translator->trans('KB');\n    } else {\n        return round($p_bytes, 1).' '.$translator->trans('bytes');\n    }\n} // fn camp_format_bytes\n\n\n/**\n * Transform a human-readable string into bytes.\n *\n * @param string $p_val\n * @return int\n */\nfunction camp_convert_bytes($p_val)\n{\n    $p_val = trim($p_val);\n    if ($p_val == '') {\n        return false;\n    }\n    $last = strtolower($p_val{strlen($p_val)-1});\n    switch ($last) {\n        // The 'G' modifier is available since PHP 5.1.0\n        case 'g':\n            $p_val *= 1024;\n        case 'm':\n            $p_val *= 1024;\n        case 'k':\n            $p_val *= 1024;\n            break;\n        default:\n            $p_val = false;\n    }\n\n    return $p_val;\n} // fn camp_convert_bytes\n\n\n/**\n * Find out the Mime Content Type for the given file.\n * Replacement for the PHP native but not-always\n * available function mime_content_type()\n *\n * @param string $p_file\n * @return string\n */\nfunction camp_mime_content_type($p_file)\n{\n    return exec(trim('file -bi ' . escapeshellarg($p_file)));\n} // fn camp_mime_content_type\n\n\n/**\n * Return TRUE if the given name is a valid URL name for a issue or section.\n *\n * @param string $p_name\n * @return boolean\n */\nfunction camp_is_valid_url_name($p_name)\n{\n    if (strlen($p_name) == 0) {\n        return false;\n    }\n    for ($i = 0; $i < strlen($p_name); $i++) {\n        $c = $p_name[$i];\n        $ok = ($c >= 'A' && $c <= 'Z') || ($c >= 'a' && $c <= 'z') || $c == '_' || ($c >= '0' && $c <= '9');\n        if (!$ok) {\n            return false;\n        }\n    }\n\n    return true;\n} // fn camp_is_valid_url_name\n\n\n\nfunction camp_is_valid_url($p_url)\n{\n    if (preg_match('/^(http|https|ftp):\\/\\/(([A-Z0-9][A-Z0-9_-]*)(\\.[A-Z0-9][A-Z0-9_-]*)+)(:(\\d+))?\\//i', $p_url, $m)) {\n        return true;\n    } else {\n        return false;\n    }\n} // fn camp_is_valid_url\n\n\n/**\n * Get the first element from the given array, but do not modify\n * the array the way array_pop() does.\n * @param array $p_array\n * @param boolean $p_getKeyValuePair\n * \t\tIf TRUE, return both the key and the element,\n * \t\tif FALSE, just return the element.\n * @param int $p_offset\n * \t\tWhich element to peek at.  If -1, peek at the last element.\n * @return mixed\n */\nfunction camp_array_peek($p_array, $p_getKeyValuePair = false, $p_offset = 0)\n{\n    reset($p_array);\n    if ($p_offset == -1) {\n        end($p_array);\n    }\n    list($key, $element) = each($p_array);\n    if ($p_getKeyValuePair) {\n        return array($key, $element);\n    } else {\n        return $element;\n    }\n} // fn camp_array_peek\n\n\n/**\n * Get a persistant value.  If the value is present in the $_REQUEST\n * array, the session variable will be set to this value and returned.\n * If the value is not yet set, it will be set to the default value.\n * In all other cases the value from the session variable is returned.\n *\n * @param string $p_name\n * @param mixed $p_defaultValue\n * @return mixed\n */\nfunction camp_session_get($p_name, $p_defaultValue)\n{\n    // Use the REQUEST variable if it is set.\n    if (isset($_REQUEST[$p_name])) {\n        $_SESSION[$p_name] = $_REQUEST[$p_name];\n    } elseif (!isset($_SESSION[$p_name])) {\n        $_SESSION[$p_name] = $p_defaultValue;\n    }\n\n    return $_SESSION[$p_name];\n} // fn camp_session_get\n\n\n/**\n * A wrapper around setting a session variable.\n *\n * @param string $p_name\n * @param mixed $p_value\n * @return void\n */\nfunction camp_session_set($p_name, $p_value)\n{\n    $_SESSION[$p_name] = $p_value;\n} // fn camp_session_set\n\n\n/**\n * A wrapper around unsetting a session variable.\n *\n * @param string $p_name\n * @param mixed $p_value\n * @return void\n */\nfunction camp_session_unset($p_name)\n{\n    if (isset($_SESSION[$p_name])) {\n        unset($_SESSION[$p_name]);\n    }\n} // fn camp_session_set\n\n\n/**\n * Print out the array or object surrounded with PRE tags so that its readable.\n * @param mixed $p_object\n * @return void\n */\nfunction camp_dump($p_object)\n{\n    echo \"<pre>\";\n    ob_start();\n    print_r($p_object);\n    $buffer = ob_get_clean();\n    echo htmlspecialchars(wordwrap($buffer, 100));\n    echo \"</pre>\";\n}\n\n\n/**\n * Get the error message for standard errors.\n *\n * @param int $p_errorCode\n * @param mixed $p_arg1\n */\nfunction camp_get_error_message($p_errorCode, $p_arg1 = null, $p_arg2 = null)\n{\n    global $Campsite;\n    $translator = \\Zend_Registry::get('container')->getService('translator');\n\n    switch ($p_errorCode) {\n    case CAMP_ERROR_CREATE_FILE:\n        return $translator->trans(\"The system was unable to create the file $1.\", array('$1' => basename($p_arg1)), 'home')\n            .(!is_null($p_arg2) ? ' '.$translator->trans(\"This file is stored on disk as $1.\", array('$1' => $p_arg2), 'home') : '')\n            .' '.$translator->trans(\"Please check if the user $1 has permission to write to the directory $2.\", array('$1' => $Campsite['APACHE_USER'], '$2' => dirname($p_arg1)), 'home');\n        break;\n    case CAMP_ERROR_WRITE_FILE:\n        return $translator->trans(\"The system was unable to write to the file $1.\", array('$1' => basename($p_arg1)), 'home')\n            .(!is_null($p_arg2) ? ' '.$translator->trans(\"This file is stored on disk as $1.\", array('$1' => $p_arg2), 'home') : '')\n            .' '.$translator->trans(\"Please check if the user $1 has permission to write to this file.\", array('$1' => $Campsite['APACHE_USER']), 'home');\n        break;\n    case CAMP_ERROR_READ_FILE:\n        return $translator->trans(\"The system was unable to read the file $1.\", array('$1' => basename($p_arg1)), 'home')\n            .(!is_null($p_arg2) ? ' '.$translator->trans(\"This file is stored on disk as $1.\", array('$1' => $p_arg2), 'home') : '')\n            .' '.$translator->trans(\"Please check if the user $1 has permission to read this file.\", array('$1' => $Campsite['APACHE_USER']), 'home');\n        break;\n    case CAMP_ERROR_DELETE_FILE:\n        return $translator->trans(\"The system was unable to delete the file $1.\", array('$1' => basename($p_arg1)), 'home')\n            .(!is_null($p_arg2) ? ' '.$translator->trans(\"This file is stored on disk as $1.\", array('$1' => $p_arg2), 'home') : '')\n            .' '.$translator->trans(\"Please check if the user $1 has permission to write to the directory $2.\", array('$1' => $Campsite['APACHE_USER'], '$2' => dirname($p_arg1)), 'home');\n        break;\n    case CAMP_ERROR_UPLOAD_FILE:\n        return $translator->trans(\"The system was unable to upload the file $1. \", array('$1' => basename($p_arg1)), 'home')\n            .$translator->trans('Please check the file you are trying to upload, it might be corrupted.', array(), 'home');\n        break;\n    case CAMP_ERROR_MKDIR:\n        return $translator->trans(\"The system was unable to create the directory $1.\", array('$1' => $p_arg1), 'home').' '.$translator->trans(\"Please check if the user $1 has permission to write to the directory $2.\", array('$1' => $Campsite['APACHE_USER'], '$2' => dirname($p_arg1)), 'home');\n        break;\n    case CAMP_ERROR_RMDIR:\n        return $translator->trans(\"The system was unable to delete the directory $1.\", array('$1' => $p_arg1), 'home').' '.$translator->trans(\"Please check if the directory is empty and the user $1 has permission to write to the directory $2.\", array('$1' => $Campsite['APACHE_USER'], '$2' => dirname($p_arg1)), 'home');\n        break;\n    case CAMP_ERROR_WRITE_DIR:\n        return $translator->trans(\"The system is unable to write to the directory $1.\", array('$1' => $p_arg1), 'home').' '.$translator->trans(\"Please check if the user $1 has permission to write to the directory $2.\", array('$1' => $Campsite['APACHE_USER'], '$2' => $p_arg1), 'home');\n        break;\n    }\n\n    return \"\";\n} // fn camp_get_error_message\n\n\nfunction camp_get_plugin_path($p_plugin_name, $p_source_fullpath)\n{\n    global $ADMIN_DIR;\n\n    $PLUGIN_PATH = dirname(__FILE__).'/../plugins';\n\n    $target_subpath = str_replace(dirname(__FILE__), '', $p_source_fullpath);\n    $target_fullpath = realpath(\"$PLUGIN_PATH/$p_plugin_name/$ADMIN_DIR/include/$target_subpath\");\n\n    if (file_exists($target_fullpath)) {\n        return $target_fullpath;\n    } else return false;\n}\n\n\nfunction get($p_input)\n{\n    return $p_input;\n}\n\n\n/**\n * Decode an structured array\n *\n * @param array $input\n * @return array\n */\nfunction camp_html_entity_decode_array($p_input, $p_decode_keys=false)\n{\n    if ($p_decode_keys) {\n        $function = 'html_entity_decode';\n    } else {\n        $function = 'get';\n    }\n\n    if (is_array($p_input)) {\n        foreach ($p_input as $key=>$val) {\n            if (is_array($val)) {\n                $arr[$function($key)] = html_entity_decode_array($val, $p_decode_keys);\n            } else {\n                $arr[$function($key)] = $function($val);\n            }\n        }\n\n        return $arr;\n    } else {\n        return html_entity_decode($p_input);\n    }\n}\n\n\nfunction htmlspecialchars_array($p_input, $p_decode_keys=false)\n{\n    if ($p_decode_keys) {\n        $function = 'html_specialchars';\n    } else {\n        $function = 'get';\n    }\n\n    if (is_array($p_input)) {\n        foreach ($p_input as $key=>$val) {\n            if (is_array($val)) {\n                $arr[$function($key)] = html_entity_decode_array($val, $p_decode_keys);\n            } else {\n                $arr[$function($key)] = $function($val);\n            }\n        }\n\n        return $arr;\n    } else {\n        return html_entity_decode($p_input);\n    }\n}\n\n\n/**\n * Set Lock Info and Row Class strings\n * for the usage in Article list tables.\n *\n * @param object $p_articleObj\n * @param string $p_lockInfo\n * @param string $p_rowClass\n * @param boolean $p_color\n */\nfunction camp_set_article_row_decoration(&$p_articleObj, &$p_lockInfo, &$p_rowClass, &$p_color)\n{\n    global $g_user;\n    $p_lockInfo = '';\n    $translator = \\Zend_Registry::get('container')->getService('translator');\n\n    $timeDiff = camp_time_diff_str($p_articleObj->getLockTime());\n    if ($p_articleObj->isLocked() && ($timeDiff['days'] <= 0)) {\n        $lockUserObj = new User($p_articleObj->getLockedByUser());\n        if ($timeDiff['hours'] > 0) {\n            $p_lockInfo = $translator->trans('The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.', array(\n                '$1' => htmlspecialchars($lockUserObj->getRealName()),\n                '$2' => htmlspecialchars($lockUserObj->getUserName()),\n                '$3' => $timeDiff['hours'],\n                '$4' => $timeDiff['minutes']), 'home');\n        } else {\n            $p_lockInfo = $translator->trans('The article has been locked by $1 ($2) $3 minute(s) ago.', array(\n                '$1' => htmlspecialchars($lockUserObj->getRealName()),\n                '$2' => htmlspecialchars($lockUserObj->getUserName()),\n                '$3' => $timeDiff['minutes']), 'home');\n        }\n    }\n\n    if ($p_articleObj->isLocked() && ($timeDiff['days'] <= 0) && $p_articleObj->getLockedByUser() != $g_user->getUserId()) {\n        $p_rowClass = \"article_locked\";\n    } else {\n        if ($p_color) {\n            $p_rowClass = \"list_row_even\";\n        } else {\n            $p_rowClass = \"list_row_odd\";\n        }\n    }\n    $p_color = !$p_color;\n}\n\n\nfunction camp_get_calendar_include($p_languageCode = null)\n{\n    global $Campsite;\n\n    $calendarPath = $GLOBALS['Campsite']['CAMPSITE_DIR'] . '/js/jquery/';\n    $calendarLocalization = \"i18n/jquery.ui.datepicker-$p_languageCode.js\";\n    if (!file_exists(\"$calendarPath/$calendarLocalization\")) {\n        $codeParts = explode('_', $p_languageCode);\n        if (count($codeParts) > 1) {\n            $p_languageCode = $codeParts[0];\n            $calendarLocalization = \"i18n/jquery.ui.datepicker-$p_languageCode.js\";\n            if (!file_exists(\"$calendarPath/$calendarLocalization\")) {\n                $p_languageCode = 'en';\n                $calendarLocalization = \"i18n/jquery.ui.datepicker-$p_languageCode.js\";\n            }\n        } else {\n            $p_languageCode = 'en';\n            $calendarLocalization = \"i18n/jquery.ui.datepicker-$p_languageCode.js\";\n        }\n    }\n\n    $websiteURL = $GLOBALS['Campsite'][\"WEBSITE_URL\"];\n    $calendarURL = \"$websiteURL/js/jquery\";\n    ob_start();\n?>\n\n<style type=\"text/css\">@import url('<?php echo $Campsite['WEBSITE_URL']; ?>/admin-style/jquery-ui-1.8.6.datepicker.css');</style>\n<script type=\"text/javascript\" src=\"<?php echo htmlspecialchars($calendarURL); ?>/jquery-ui-1.8.6.custom.min.js\"></script>\n<script type=\"text/javascript\" src=\"<?php echo htmlspecialchars($calendarURL); ?>/jquery-ui-timepicker-addon.min.js\"></script>\n<?php if (file_exists(dirname(__FILE__) . '/../js/jquery/' . $calendarLocalization)) { ?>\n<script type=\"text/javascript\" src=\"<?php echo htmlspecialchars($calendarURL); ?>/<?php echo $calendarLocalization; ?>\"></script>\n<script type=\"text/javascript\"><!--\n    $(document).ready(function () {\n        $.datepicker.setDefaults( $.datepicker.regional['<?php echo $p_languageCode; ?>'] );\n    });\n//--></script>\n<?php } ?>\n\n<?php\n\n    return ob_get_clean();\n}\n\n\nfunction camp_get_calendar_field($p_fieldName, $p_defaultValue = null,\n                                 $p_showTime = false, $p_htmlCode = null)\n{\n    $showTime = $p_showTime ? 'true' : 'false';\n    $size = $p_showTime ? 19 : 10;\n    $format = $p_showTime ? \"%Y-%m-%d %H:%M:00\" : \"%Y-%m-%d\";\n    ob_start();\n?>\n<input type=\"text\" name=\"<?php echo htmlspecialchars($p_fieldName); ?>\"\n    value=\"<?php echo htmlspecialchars($p_defaultValue); ?>\"\n    id=\"<?php echo htmlspecialchars($p_fieldName); ?>\"\n    size=\"<?php echo $size; ?>\" maxlength=\"<?php echo $size; ?>\"\n    <?php echo $p_htmlCode; ?> />\n    <script type=\"text/javascript\"><!--\n        $('#<?php echo htmlspecialchars($p_fieldName); ?>').each(function () {\n            var settings = {\n                dateFormat: 'yy-mm-dd',\n                timeFormat: 'hh:mm:ss',\n            };\n            <?php if ($p_showTime) { ?>\n            $(this).datetimepicker(settings);\n            <?php } else { ?>\n            $(this).datepicker(settings);\n            <?php } ?>\n        });\n    </script>\n<?php\n\n    return ob_get_clean();\n}\n\n\nfunction camp_set_author(ArticleTypeField $p_sourceField, &$p_errors)\n{\n    $translator = \\Zend_Registry::get('container')->getService('translator');\n    $p_errors = array();\n    $articles = Article::GetArticlesOfType($p_sourceField->getArticleType());\n    foreach ($articles as $article) {\n        $articleData = $article->getArticleData();\n        $authorName = trim($articleData->getFieldValue($p_sourceField->getPrintName()));\n        if (empty($authorName)) {\n            continue;\n        }\n        $author = new Author($authorName);\n        if (!$author->exists()) {\n            if (!$author->create()) {\n                $p_errors[] = $translator->trans('Unable to create author $1 for article no. $2 ($3) of type $4.', array(\n                                    '$1' => $author->getName(), '$2' => $article->getArticleNumber(),\n                                    '$3' => $article->getName(), '$4' => $article->getType()), 'home');\n                continue;\n            }\n        }\n        if (!$article->setAuthorId($author->getId())) {\n            $p_errors[] = $translator->trans('Error setting the author $1 for article no. $2 ($3) of type $4.', array(\n                                '$1' => $author->getName(), '$2' => $article->getArticleNumber(),\n                                '$3' => $article->getName(), '$4' => $article->getType()), 'home');\n            continue;\n        }\n    }\n\n    $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n    $cacheService->clearNamespace('authors');\n    $cacheService->clearNamespace('article');\n\n    return count($p_errors);\n}\n\n/**\n * Internal cron task scheduler.\n */\nfunction camp_cron()\n{\n    require_once(CS_PATH_SITE.DIR_SEP.'classes'.DIR_SEP.'Cron.php');\n\n    $fileName = CS_INSTALL_DIR.DIR_SEP.'cron_jobs'.DIR_SEP.'all_at_once';\n    $cronTasks = null;\n    if (is_readable($fileName)) {\n        $cronTasks = @file_get_contents($fileName);\n    }\n    if (preg_match_all('/^(.+)([^*]+)$/mU', $cronTasks, $aMatches)) {\n        foreach ($aMatches[1] as $key => $schedule) {\n            $task = trim($aMatches[2][$key]);\n            $taskName = basename($task);\n            $fileName = CS_INSTALL_DIR.DIR_SEP.'cron_jobs'.DIR_SEP.'lastrun-'.$taskName;\n            $taskLastRun = null;\n            if (is_readable($fileName)) {\n                $taskLastRun = @file_get_contents($fileName);\n            }\n            $currentTime = time();\n            if (!$taskLastRun || Cron::due((int) $taskLastRun, (int) $currentTime, $schedule)) {\n                if ($fp = fopen($fileName, 'w')) {\n                    if (flock($fp, LOCK_EX)) {\n                        fwrite($fp, (string) $currentTime);\n                        flock($fp, LOCK_UN);\n                        if (substr(strtolower(PHP_OS), 0, 3) != 'win') {\n                            exec($task . ' > /dev/null &');\n                        }\n                    }\n                    fclose($fp);\n                }\n            }\n        }\n    }\n}\n\nfunction camp_display_message($p_message)\n{\n    $params = array('context' => null,\n                'template' => '_campsite_message.tpl',\n                'templates_dir' => CS_TEMPLATES_DIR.DIR_SEP.CS_SYS_TEMPLATES_DIR,\n                'info_message' => $p_message\n    );\n    $document = CampSite::GetHTMLDocumentInstance();\n    $document->render($params);\n}\n?>\n"
  },
  {
    "path": "newscoop/admin-files/libs/ArticleList/ArticleList.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\nrequire_once dirname(__FILE__).'/../BaseList/BaseList.php';\nrequire_once WWW_DIR.'/classes/GeoMap.php';\n\n/**\n * Article list component\n */\nclass ArticleList extends BaseList\n{\n    /** @var int */\n    protected $publication = null;\n\n    /** @var int */\n    protected $issue = null;\n\n    /** @var int */\n    protected $section = null;\n\n    /** @var int */\n    protected $language = null;\n\n    /** @var string */\n    protected $workflow_status = null;\n\n    /** @var string */\n    protected $type = null;\n\n    /** @var array */\n    protected $filters = array();\n\n    /** @var array */\n    protected $orderBy = array();\n\n    /** @var bool */\n    protected static $renderFilters = false;\n\n    /** @var bool */\n    protected static $renderActions = false;\n\n    /** @var string */\n    protected static $lastId = null;\n\n    /**\n     * @param bool $randomId\n     */\n    public function __construct($randomId = false)\n    {\n        parent::__construct();\n\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        // generate id - unique per page instance\n        if (empty(self::$lastId)) {\n            self::$lastId = __FILE__;\n            if ($randomId) {\n                self::$lastId = uniqid();\n            }\n        }\n        $this->id = substr(sha1(self::$lastId), -6);\n        self::$lastId = $this->id;\n\n        // column titles\n        $this->cols = array(\n            'Number' => null,\n            'Language' => $translator->trans('Language'),\n            'Order' => $translator->trans('Order'),\n            'Name' => $translator->trans('Title', array(), 'api'),\n            'Section' => $translator->trans('Section'),\n            'Webcode' => $translator->trans('Webcode', array(), 'library'),\n            'Type' => $translator->trans('Type'),\n            'Created' => $translator->trans('Created by'),\n            'Author' => $translator->trans('Author'),\n            'Status' => $translator->trans('Status'),\n            'OnFrontPage' => $translator->trans('On Front Page'),\n            'OnSectionPage' => $translator->trans('On Section Page'),\n            'Images' => $translator->trans('Images'),\n            'Topics' => $translator->trans('Topics'),\n            'Comments' => $translator->trans('Comments'),\n            'Reads' => $translator->trans('Reads'),\n            'UseMap' => $translator->trans('Use Map', array(), 'library'),\n            'Locations' => $translator->trans('Locations', array(), 'library'),\n            'CreateDate' => $translator->trans('Create Date', array(), 'library'),\n            'PublishDate' => $translator->trans('Publish Date', array(), 'library'),\n            'LastModified' => $translator->trans('Last Modified', array(), 'articles'),\n            'Preview' => $translator->trans('Preview'),\n            'Translate' => $translator->trans('Translate'),\n        );\n    }\n\n    /**\n     * Set publication.\n     * @param  int         $publication\n     * @return ArticleList\n     */\n    public function setPublication($publication)\n    {\n        $this->publication = is_null($publication) ? null : (int) $publication;\n\n        return $this;\n    }\n\n    /**\n     * Set issue.\n     * @param  int         $issue\n     * @return ArticleList\n     */\n    public function setIssue($issue)\n    {\n        $this->issue = is_null($issue) ? null : (int) $issue;\n\n        return $this;\n    }\n\n    /**\n     * Set section.\n     * @param  int         $section\n     * @return ArticleList\n     */\n    public function setSection($section)\n    {\n        $this->section = is_null($section) ? null : (int) $section;\n\n        return $this;\n    }\n\n    /**\n     * Set language.\n     * @param  int         $language\n     * @return ArticleList\n     */\n    public function setLanguage($language)\n    {\n        $this->language = empty($language) ? 1 : (int) $language;\n\n        return $this;\n    }\n\n    /**\n     * Set status.\n     * @param  string      $status\n     * @return ArticleList\n     */\n    public function setWorkflowStatus($status)\n    {\n        if (array_search($status, array('pending', 'new', 'submitted', 'withissue', 'published')) !== false) {\n            $this->workflow_status = $status;\n        }\n\n        return $this;\n    }\n\n    /**\n     * Set type\n     *\n     * @param  string      $type\n     * @return ArticleList\n     */\n    public function setType($type)\n    {\n        $this->type = (string) $type;\n\n        return $this;\n    }\n\n    /**\n     * Set filter.\n     * @param  string      $name\n     * @param  mixed       $value\n     * @return ArticleList\n     */\n    public function setFilter($name, $value)\n    {\n        $this->filters[$name] = $value;\n\n        return $this;\n    }\n\n    /**\n     * Set column to order by.\n     *\n     * @param  string      $column\n     * @param  string      $direction\n     * @return ArticleList\n     */\n    public function setOrderBy($column, $direction = 'asc')\n    {\n        if (!isset($this->cols[$column])) {\n            return $this;\n        }\n\n        $columnNo = array_search($column, array_keys($this->cols));\n        $this->orderBy[$columnNo] = strtolower($direction) == 'desc' ? 'desc' : 'asc';\n\n        return $this;\n    }\n\n    /**\n     * Render filters.\n     * @return ArticleList\n     */\n    public function renderFilters()\n    {\n        $this->beforeRender();\n\n        include dirname(__FILE__).'/filters.php';\n        self::$renderFilters = true;\n\n        return $this;\n    }\n\n    /**\n     * Render actions.\n     * @return ArticleList\n     */\n    public function renderActions()\n    {\n        $this->beforeRender();\n\n        include dirname(__FILE__).'/actions.php';\n        self::$renderActions = true;\n\n        return $this;\n    }\n\n    /**\n     * Render table.\n     * @return ArticleList\n     */\n    public function render()\n    {\n        $this->beforeRender();\n\n        include dirname(__FILE__).'/table.php';\n        self::$renderTable = true;\n        echo '</div><!-- /#list-'.$this->id.' -->';\n\n        return $this;\n    }\n\n    /**\n     * Process item\n     * @param  Article $article\n     * @return array\n     */\n    public function processItem($article)\n    {\n        global $g_user, $Campsite;\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $editorService = \\Zend_Registry::get('container')->getService('newscoop.editor');\n        $articleLink = $editorService->getLink($article);\n        $articleLinkParams = $editorService->getLinkParameters($article);\n        $articleLinkParamsTranslate = $articleLinkParams.'&amp;f_action=translate&amp;f_action_workflow='.$article->getWorkflowStatus()\n        .'&amp;f_article_code='.$article->getArticleNumber().'_'.$article->getLanguageId();\n        $previewLink = $Campsite['WEBSITE_URL'].'/admin/articles/preview.php'.$editorService->getLinkParameters($article);\n        $htmlPreviewLink = '<a href=\"'.$previewLink.'\" target=\"_blank\" title=\"'.$translator->trans('Preview').'\">'.$translator->trans('Preview').'</a>';\n        $translateLink = $Campsite['WEBSITE_URL'].'/admin/articles/translate.php'.$articleLinkParamsTranslate;\n        $htmlTranslateLink = '<a href=\"'.$translateLink.'\" target=\"_blank\" title=\"'.$translator->trans('Translate').'\">'.$translator->trans('Translate').'</a>';\n\n        $lockInfo = '';\n        $lockHighlight = false;\n        $timeDiff = camp_time_diff_str($article->getLockTime());\n        if ($article->isLocked() && ($timeDiff['days'] <= 0)) {\n            $lockUser = new User($article->getLockedByUser());\n            if ($timeDiff['hours'] > 0) {\n                $lockInfo = $translator->trans('The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.', array(\n                '$1' => htmlspecialchars($lockUser->getRealName()),\n                '$2' => htmlspecialchars($lockUser->getUserName()),\n                '$3' => $timeDiff['hours'],\n                '$4' => $timeDiff['minutes'], ), 'articles');\n            } else {\n                $lockInfo = $translator->trans('The article has been locked by $1 ($2) $3 minute(s) ago.', array(\n                '$1' => htmlspecialchars($lockUser->getRealName()),\n                '$2' => htmlspecialchars($lockUser->getUserName()),\n                '$3' => $timeDiff['minutes'], ), 'articles');\n            }\n            if ($article->getLockedByUser() != $g_user->getUserId()) {\n                $lockHighlight = true;\n            }\n        }\n\n        $tmpUser = new User($article->getCreatorId());\n        $tmpArticleType = new ArticleType($article->getType());\n\n        $tmpAuthor = new Author();\n        $articleAuthors = ArticleAuthor::GetAuthorsByArticle($article->getArticleNumber(), $article->getLanguageId());\n        foreach ((array) $articleAuthors as $author) {\n            if (strtolower($author->getAuthorType()->getName()) == 'author') {\n                $tmpAuthor = $author;\n                break;\n            }\n        }\n        if (!$tmpAuthor->exists() && isset($articleAuthors[0])) {\n            $tmpAuthor = $articleAuthors[0];\n        }\n\n        $onFrontPage = $article->onFrontPage() ? $translator->trans('Yes') : $translator->trans('No');\n        $onSectionPage = $article->onSectionPage() ? $translator->trans('Yes') : $translator->trans('No');\n\n        $imagesNo = (int) ArticleImage::GetImagesByArticleNumber($article->getArticleNumber(), true);\n        $topicsNo = (int) ArticleTopic::GetArticleTopics($article->getArticleNumber(), true);\n        $commentsNo = '';\n        if ($article->commentsEnabled()) {\n            global $controller;\n            $repositoryComments = $controller->getHelper('entity')->getRepository('Newscoop\\Entity\\Comment');\n            $filter = array( 'thread' => $article->getArticleNumber(), 'language' => $article->getLanguageId());\n            $params = array( 'sFilter' => $filter);\n            $commentsNo = $repositoryComments->getCount($params);\n        } else {\n            $commentsNo = 'No';\n        }\n\n        // get language code\n        $language = new Language($article->getLanguageId());\n\n        return array(\n            $article->getArticleNumber(),\n            $article->getLanguageId(),\n            $article->getOrder(),\n            sprintf('%s <a href=\"%s\" title=\"%s %s\">%s</a>',\n            $article->isLocked() ? '<span class=\"ui-icon ui-icon-locked'.(!$lockHighlight ? ' current-user' : '').'\" title=\"'.$lockInfo.'\"></span>' : '',\n            $articleLink,\n            $translator->trans('Edit'), htmlspecialchars($article->getName().\" ({$article->getLanguageName()})\"),\n            htmlspecialchars($article->getName().(empty($_REQUEST['language']) ? \" ({$language->getCode()})\" : ''))), // /sprintf\n            htmlspecialchars($article->getSection()->getName()),\n            $article->getWebcode(),\n            htmlspecialchars($tmpArticleType->getDisplayName()),\n            $tmpUser->getRealName() ? sprintf('%s %s', $tmpUser->getRealName(), $tmpUser->getLastName()). ' (<a style=\"color:#007fb3;\" href=\"'.\\Zend_Registry::get('container')->get('zend_router')->assemble(array(\n                'module' => 'admin',\n                'controller' => 'user',\n                'action' => 'edit',\n                'user' => $tmpUser->getUserId(),\n            ), 'default', true).'\">'.$tmpUser->getUserName().'</a>)' : $translator->trans('N/A'),\n            htmlspecialchars($tmpAuthor->getName()),\n            $article->getWorkflowStatus(),\n            $onFrontPage,\n            $onSectionPage,\n            $imagesNo,\n            $topicsNo,\n            $commentsNo,\n            (int) $article->getReads(),\n            Geo_Map::GetArticleMapId($article) != null ? $translator->trans('Yes') : $translator->trans('No'),\n            (int) sizeof(Geo_Map::GetLocationsByArticle($article)),\n            $article->getCreationDate(),\n            $article->getPublishDate(),\n            $article->getLastModified(),\n            $htmlPreviewLink,\n            $htmlTranslateLink,\n        );\n    }\n\n    /**\n     * Handle data\n     */\n    public function doData()\n    {\n        global $ADMIN_DIR, $g_user;\n        foreach ($_REQUEST['args'] as $arg) {\n            $_REQUEST[$arg['name']] = $arg['value'];\n        }\n\n        return require_once dirname(__FILE__).'/do_data.php';\n    }\n\n    public function getFilterIssues()\n    {\n        global $ADMIN_DIR, $g_user;\n        require_once $GLOBALS['g_campsiteDir'].'/classes/Publication.php';\n        require_once $GLOBALS['g_campsiteDir'].'/classes/Issue.php';\n        require_once $GLOBALS['g_campsiteDir'].'/classes/Section.php';\n        require_once $GLOBALS['g_campsiteDir'].'/classes/Author.php';\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        foreach ($_REQUEST['args'] as $arg) {\n            $_REQUEST[$arg['name']] = $arg['value'];\n        }\n\n        if ($_REQUEST['publication'] > 0) {\n            $publication = $_REQUEST['publication'];\n        } else {\n            $publication = null;\n        }\n\n        if ($_REQUEST['language'] > 0) {\n            $language = $_REQUEST['language'];\n        } else {\n            $language = null;\n        }\n\n        $newIssues = array();\n        $issues = Issue::GetIssues($publication, $language);\n        $issuesNo = is_array($issues) ? sizeof($issues) : 0;\n        $menuIssueTitle = $issuesNo > 0 ? $translator->trans('All Issues', array(), 'library') : $translator->trans('No issues found', array(), 'library');\n        foreach ($issues as $issue) {\n            $newIssues[] = array('val' => $issue->getPublicationId().'_'.$issue->getIssueNumber().'_'.$issue->getLanguageId() , 'name' => $issue->getName());\n        }\n        $returns = array();\n        $returns['items'] = $newIssues;\n        $returns['itemsNo'] = $issuesNo;\n        $returns['menuItemTitle'] = $menuIssueTitle;\n\n        return json_encode($returns);\n    }\n\n    public function getFilterSections()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        global $ADMIN_DIR, $g_user;\n        require_once $GLOBALS['g_campsiteDir'].'/classes/Publication.php';\n        require_once $GLOBALS['g_campsiteDir'].'/classes/Issue.php';\n        require_once $GLOBALS['g_campsiteDir'].'/classes/Section.php';\n        require_once $GLOBALS['g_campsiteDir'].'/classes/Author.php';\n\n        foreach ($_REQUEST['args'] as $arg) {\n            $_REQUEST[$arg['name']] = $arg['value'];\n        }\n\n        if ($_REQUEST['publication'] > 0) {\n            $publication = $_REQUEST['publication'];\n        } else {\n            $publication = null;\n        }\n\n        $language = null;\n        if ($_REQUEST['issue'] > 0) {\n            $issueArray = explode(\"_\", $_REQUEST['issue']);\n            $issue = $issueArray[1];\n            if (isset($issueArray[2])) {\n                $language = $issueArray[2];\n            }\n        } else {\n            $issue = null;\n        }\n\n        if ($_REQUEST['language'] > 0) {\n            $language = $_REQUEST['language'];\n        }\n\n        // get sections\n        $sections = array();\n\n        $section_objects = Section::GetSections($publication, $issue, $language);\n\n        foreach ($section_objects as $section) {\n            if (!isset($sections[$section->getSectionNumber()])) {\n                $sections[$section->getSectionNumber()] = $section;\n            }\n        }\n        $newSections = array();\n        foreach ($sections as $section) {\n            $newSections[] = array('val' => $section->getPublicationId().'_'.$section->getIssueNumber().'_'.$section->getLanguageId().'_'.$section->getSectionNumber(), 'name' => $section->getName());\n        }\n        $sectionsNo = is_array($newSections) ? sizeof($newSections) : 0;\n        $menuSectionTitle = $sectionsNo > 0 ? $translator->trans('All Sections', array(), 'library') : $translator->trans('No sections found', array(), 'library');\n\n        $returns = array();\n        $returns['items'] = $newSections;\n        $returns['itemsNo'] = $sectionsNo;\n        $returns['menuItemTitle'] = $menuSectionTitle;\n\n        return json_encode($returns);\n    }\n\n    /**\n     * Handle action\n     * @param  string $f_action\n     * @param  array  $f_items\n     * @param  array  $f_params\n     * @return void\n     */\n    public static function doAction($f_action, $f_items, $f_params = array())\n    {\n        global $ADMIN_DIR, $g_user, $Campsite, $ADMIN;\n\n        // this is used for some actions, but some do not have it defined at all\n        if (empty($f_target)) {\n            $f_target = '';\n        }\n\n        return require_once dirname(__FILE__).'/do_action.php';\n    }\n\n    /**\n     * Handle order\n     * @param  array $f_order\n     * @param  int   $f_language\n     * @return void\n     */\n    public static function doOrder($f_order, $f_language)\n    {\n        global $ADMIN_DIR;\n\n        return require_once dirname(__FILE__).'/do_order.php';\n    }\n\n    /**\n     * Get column keys\n     *\n     * @return array\n     */\n    public function getColumnKeys()\n    {\n        return array_keys($this->cols);\n    }\n}\n"
  },
  {
    "path": "newscoop/admin-files/libs/ArticleList/actions.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\n?>\n<div class=\"actions\">\n<?php\n\tglobal $g_user;\n    $translator = \\Zend_Registry::get('container')->getService('translator');\n?>\n<fieldset class=\"actions\">\n    <legend><?php echo $translator->trans('Select action', array(), 'library'); ?></legend>\n    <select name=\"action\">\n        <option value=\"\">---</option>\n        <?php if ($g_user->hasPermission('Publish')) { ?>\n        <option value=\"workflow_publish\"><?php echo $translator->trans('Status: Publish', array(), 'library'); ?></option>\n        <?php } ?>\n        <option value=\"workflow_submit\"><?php echo $translator->trans('Status: Submit', array(), 'library'); ?></option>\n        <option value=\"workflow_new\"><?php echo $translator->trans('Status: Set New', array(), 'library'); ?></option>\n        <option value=\"switch_onfrontpage\"><?php echo $translator->trans(\"Toggle: On Front Page\", array(), 'library'); ?></option>\n        <option value=\"switch_onsectionpage\"><?php echo $translator->trans(\"Toggle: On Section Page\", array(), 'library'); ?></option>\n        <option value=\"switch_comments\"><?php echo $translator->trans(\"Toggle: Comments\", array(), 'library'); ?></option>\n        <?php if ($this->publication > 0 && $this->issue > 0 && $this->section > 0) { ?>\n        <option value=\"publish_schedule\"><?php echo $translator->trans('Publish Schedule', array(), 'library'); ?></option>\n        <?php } ?>\n        <option value=\"unlock\"><?php echo $translator->trans('Unlock'); ?></option>\n        <?php if ($g_user->hasPermission('DeleteArticle')) { ?>\n        <option value=\"delete\"><?php echo $translator->trans('Delete'); ?></option>\n        <?php } ?>\n        <option value=\"duplicate\"><?php echo $translator->trans('Duplicate'); ?></option>\n        <option value=\"duplicate_interactive\"><?php echo $translator->trans('Duplicate to another section', array(), 'library'); ?></option>\n        <option value=\"move\"><?php echo $translator->trans('Move'); ?></option>\n    </select>\n</fieldset>\n</div><!-- /.smartlist-actions -->\n\n<?php if (!self::$renderActions) { ?>\n<script type=\"text/javascript\">\n$(document).ready(function() {\n\n// check all/none\n$('.smartlist thead input:checkbox').change(function() {\n    var smartlist = $(this).closest('.smartlist');\n    var checked = (typeof $(this).attr(\"checked\") === 'undefined') ? false : true;\n    $('tbody input:checkbox', smartlist).each(function() {\n        $(this).attr('checked', checked);\n        if (checked) {\n            $(this).parents('tr').addClass('selected');\n        } else {\n            $(this).parents('tr').removeClass('selected');\n        }\n    });\n});\n\n// actions handle\n$('.smartlist .actions select').change(function() {\n    var smartlist = $(this).closest('.smartlist');\n    var action = $(this).val();\n    $(this).val('');\n\n    var items = [];\n    $('tbody input:checkbox:checked', smartlist).each(function() {\n        items.push($(this).attr('name'));\n    });\n\n    if (items.length == 0) {\n        flashMessage('<?php echo $translator->trans('Select some article first.', array(), 'library'); ?>', 'error');\n        return;\n    }\n\n    params = [];\n    if (action == 'delete') {\n        if (!confirm('<?php echo $translator->trans('Are you sure you want to delete selected articles?', array(), 'library'); ?>')) {\n            return;\n        }\n    } else if (action == 'move'\n        || action == 'duplicate_interactive'\n        || action == 'publish_schedule') {\n        params = {\n            'f_publication_id': <?php echo (int) $this->publication; ?>,\n            'f_issue_number': <?php echo (int) $this->issue; ?>,\n            'f_section_number': <?php echo (int) $this->section; ?>,\n            'f_language_id': <?php echo (int) $this->language; ?>,\n        }\n    }\n\n    callServer(['ArticleList', 'doAction'], [\n        action,\n        items,\n        params,\n        ], function(data) {\n    \t\tvar dataJson = eval('(' + data + ')');\n            if (action == 'duplicate_interactive'\n                || action == 'move'\n                || action == 'publish_schedule') {\n                window.location = dataJson.hiperlink; // redirect\n            }\n\t\t\tvar messages = dataJson.messages;\n\n\t\t\tvar sentFlash = false;\n\t\t\tfor(var i=0; i< messages.length; i++) {\n\t\t\t\tvar message = messages[i];\n\t\t\t\tif(message.no > 0) {\n\t\t\t\t\tvar flashType = '';\n\t\t\t\t\tvar textMessage = message.textMessage;\n\t\t\t\t\tif(message.status == 'notAffected') {\n\t\t\t\t\t\tflashType = 'error';\n\t\t\t\t\t}\n\t\t\t\t\tif(sentFlash == true) {\n\t\t\t\t\t\tsetTimeout(function() {\n\t\t\t\t\t\t\tflashMessage(message.textMessage, flashType);\n\t\t\t\t\t\t},3000);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tflashMessage(textMessage, flashType);\n\t\t\t\t\t}\n\t\t\t\t\tsentFlash = true;\n\t\t\t\t}\n\t\t\t}\n\n            var smartlistId = smartlist.attr('id').split('-')[1];\n            tables[smartlistId].fnDraw(true);\n\n            $('.datatable th input:checkbox').attr('checked', false);\n        }\n    );\n});\n\n});\n\n</script>\n<?php } ?>\n"
  },
  {
    "path": "newscoop/admin-files/libs/ArticleList/do_action.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\n$f_language_selected = (int) camp_session_get('f_language_selected', 0);\n\nrequire_once $GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/article_common.php\";\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n$success = false;\n$message = $translator->trans('Access denied.', array(), 'library'); // default error\n$hiperlink = '';\n\n$affectedArticles = 0;\n$notAffectedArticles = 0;;\n\n$message = '';\n$errorMessage = '';\n\n$articleCodes = array();\n$flatArticleCodes = array();\n$groupedArticleCodes = array();\nforeach ($f_items as $articleCode) {\n    list($articleId, $languageId) = explode('_', $articleCode);\n    $articleCodes[] = array(\"article_id\" => $articleId, \"language_id\" => $languageId);\n    $flatArticleCodes[] = $articleId . '_' . $languageId;\n    $groupedArticleCodes[$articleId][$languageId] = $languageId;\n}\n\nfunction prepareContextBoxItems($f_params)\n{\n    GLOBAL $f_language_selected;\n    $myItems = array();\n    $return = array();\n    if (array_key_exists('relatedArticles', $f_params)) {\n        $f_items = $f_params['relatedArticles'];\n    } else {\n        $f_items = array();\n    }\n    $f_article_id = $f_params['articleId'];\n\n    $splitItems = explode('&', $f_items);\n    foreach ($splitItems as $splitItem) {\n        $labelId = explode('=', $splitItem);\n        if (count($labelId) > 1) {\n            $myItems[] = $labelId[1];\n        }\n    }\n    $f_items = $myItems;\n    $return['f_related_items'] = $myItems;\n    $return['f_article_id'] = $f_article_id;\n\n    return $return;\n}\n\nfunction buildMessage($status, $no, $message)\n{\n    $messageArray = array();\n    $messageArray['status'] = $status;\n    $messageArray['no'] = $no;\n    $messageArray['textMessage'] = $message;\n\n    return $messageArray;\n\n}\n\nfunction returnJson($affectedNo, $message, $notAffectedNo, $errorMessage, $hiperlink)\n{\n    $returnJson = array();\n    $returnJson['hiperlink'] = $hiperlink;\n\n    $returnJson['messages'][] = buildMessage('affected', $affectedNo, $message);\n    $returnJson['messages'][] = buildMessage('notAffected', $notAffectedNo, $errorMessage);\n\n    return json_encode($returnJson);\n}\n\nswitch ($f_action) {\ncase 'delete':\n    if (!$g_user->hasPermission('DeleteArticle')) {\n        $success = false;\n        $data->error = $translator->trans('You do not have the right to delete articles.', array(), 'library');\n        break;\n    }\n    $affectedArticles = 0;\n    $notAffectedArticles = 0;\n    foreach ($articleCodes as $articleCode) {\n        $article = new Article($articleCode['language_id'], $articleCode['article_id']);\n        $creatorId = $article->getCreatorId();\n        if ($article->delete()) {\n            \\Zend_Registry::get('container')->getService('dispatcher')\n                ->dispatch('user.set_points', new \\Newscoop\\EventDispatcher\\Events\\GenericEvent(null, array('user' => $creatorId)));\n            $success = true;\n            $affectedArticles += 1;\n        } else {\n            $notAffectedArticles += 1;\n        }\n    }\n\n    $message = $translator->trans(\"$1 articles have been removed\", array('$1' => $affectedArticles), 'library');\n    $errorMessage = $translator->trans(\"$1 articles have not been removed\", array('$1' => $notAffectedArticles), 'library');\n\n    break;\ncase \"workflow_publish\":\n    if (!$g_user->hasPermission('Publish')) {\n        $success = false;\n        $data->error = $translator->trans('You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.', array(), 'library');\n        break;\n    }\n    foreach ($articleCodes as $articleCode) {\n        $articleObj = new Article($articleCode['language_id'], $articleCode['article_id']);\n        if ($articleObj->setWorkflowStatus('Y')) {\n            $articleObj->setProperty('time_updated', 'NOW()', true, true);\n            $success = true;\n            $affectedArticles += 1;\n        } else {\n            $notAffectedArticles += 1;\n        }\n    }\n\n    $message = $translator->trans(\"Article status set to $1 for $2 articles\", array('$1' => $translator->trans(\"Published\"), '$2' => $affectedArticles), 'library');\n    $errorMessage = $translator->trans(\"Article status not set to $1 for $2 articles\", array('$1' => $translator->trans(\"Published\"), '$2' => $notAffectedArticles), 'library');\n\n    break;\ncase 'workflow_submit':\n    foreach ($articleCodes as $articleCode) {\n        $articleObj = new Article($articleCode['language_id'], $articleCode['article_id']);\n        if ($g_user->hasPermission(\"Publish\") || $articleObj->userCanModify($g_user)) {\n            if ($articleObj->setWorkflowStatus('S')) {\n                $articleObj->setProperty('time_updated', 'NOW()', true, true);\n                $success = true;\n                $affectedArticles += 1;\n            } else {\n                $notAffectedArticles += 1;\n            }\n        } else {\n            $notAffectedArticles += 1;\n        }\n    }\n\n    $message = $translator->trans(\"Article status set to $1 for $2 articles\", array('$1' => $translator->trans(\"Submitted\"), '$2' => $affectedArticles), 'library');\n    $errorMessage = $translator->trans(\"Article status not set to $1 for $2 articles\", array('$1' => $translator->trans(\"Submitted\"), '$2' => $notAffectedArticles), 'library');\n\n    break;\ncase 'workflow_new':\n    foreach ($articleCodes as $articleCode) {\n        $articleObj = new Article($articleCode['language_id'], $articleCode['article_id']);\n        if ($g_user->hasPermission(\"Publish\")\n                || ($g_user->hasPermission('ChangeArticle') && ($articleObj->getWorkflowStatus() == 'S'))) {\n            if ($articleObj->setWorkflowStatus('N')) {\n                $articleObj->setProperty('time_updated', 'NOW()', true, true);\n                $success = true;\n                $affectedArticles += 1;\n            } else {\n                $notAffectedArticles += 1;\n            }\n        } else {\n                $notAffectedArticles += 1;\n            }\n    }\n\n    $message = $translator->trans(\"Article status set to $1 for $2 articles\", array('$1' => $translator->trans(\"New\"), '$2' => $affectedArticles), 'library');\n    $errorMessage = $translator->trans(\"Article status set to $1 for $2 articles\", array('$1' => $translator->trans(\"New\"), '$2' => $affectedArticles), 'library');\n\n    break;\ncase 'switch_onfrontpage':\n    foreach ($articleCodes as $articleCode) {\n        $articleObj = new Article($articleCode['language_id'], $articleCode['article_id']);\n        if ($articleObj->userCanModify($g_user)) {\n            if ($articleObj->setOnFrontPage(!$articleObj->onFrontPage())) {\n                $success = true;\n                $affectedArticles += 1;\n            } else {\n                $notAffectedArticles += 1;\n            }\n        } else {\n            $notAffectedArticles += 1;\n        }\n    }\n\n    $message = $translator->trans(\"$1 toggled for $2 articles.\", array('$1' => \"&quot;\".$translator->trans(\"On Front Page\").\"&quot;\", '$2' => $affectedArticles), 'library');\n    $errorMessage = $translator->trans(\"$1 not toggled for $2 articles.\", array('$1' => \"&quot;\".$translator->trans(\"On Front Page\").\"&quot;\", '$2' => $notAffectedArticles), 'library');\n\n    break;\ncase 'switch_onsectionpage':\n\n    $affectedArticles = 0;\n    $notAffectedArticles = 0;\n\n    foreach ($articleCodes as $articleCode) {\n        $articleObj = new Article($articleCode['language_id'], $articleCode['article_id']);\n        if ($articleObj->userCanModify($g_user)) {\n            if ($articleObj->setOnSectionPage(!$articleObj->onSectionPage())) {\n                $success = true;\n                $affectedArticles += 1;\n            } else {\n                $notAffectedArticles += 1;\n            }\n        } else {\n            $notAffectedArticles += 1;\n        }\n    }\n\n    $message = $translator->trans(\"$1 toggled for $2 articles.\", array('$1' => \"&quot;\".$translator->trans(\"On Section Page\").\"&quot;\", '$2' => $affectedArticles), 'library');\n    $errorMessage = $translator->trans(\"$1 not toggled for $2  articles.\", array('$1' => \"&quot;\".$translator->trans(\"On Section Page\").\"&quot;\", '$2' => $notAffectedArticles), 'library');\n\n    break;\ncase 'switch_comments':\n    foreach ($articleCodes as $articleCode) {\n        $articleObj = new Article($articleCode['language_id'], $articleCode['article_id']);\n        if ($articleObj->userCanModify($g_user)) {\n            if ($articleObj->setCommentsEnabled(!$articleObj->commentsEnabled())) {\n                $success = true;\n                $affectedArticles += 1;\n            } else {\n                $notAffectedArticles += 1;\n            }\n        } else {\n            $notAffectedArticles += 1;\n        }\n    }\n\n    $message = $translator->trans(\"$1 toggled for $2 articles.\", array('$1' => \"&quot;\".$translator->trans(\"Comments\").\"&quot;\", '$2' => $affectedArticles), 'library');\n    $errorMessage = $translator->trans(\"$1 not toggled for $2 articles.\", array('$1' => \"&quot;\".$translator->trans(\"Comments\").\"&quot;\", '$2' => $notAffectedArticles), 'library');\n\n    break;\ncase 'unlock':\n    foreach ($articleCodes as $articleCode) {\n        $articleObj = new Article($articleCode['language_id'], $articleCode['article_id']);\n        if ($articleObj->userCanModify($g_user)) {\n            $articleObj->setIsLocked(false);\n            $success = true;\n            $affectedArticles += 1;\n        } else {\n               $notAffectedArticles += 1;\n        }\n    }\n\n    $message = $translator->trans(\"$1 Article(s) unlocked\", array('$1' => $affectedArticles), 'library');\n    $errorMessage = $translator->trans(\"$1 Article(s) not unlocked\", array('$1' => $notAffectedArticles), 'library');\n\n    break;\ncase 'duplicate':\n    foreach ($groupedArticleCodes as $articleNumber => $languageArray) {\n        $languageId = camp_array_peek($languageArray);\n        $articleObj = new Article($languageId, $articleNumber);\n        $articleObj->copy($articleObj->getPublicationId(),\n                          $articleObj->getIssueNumber(),\n                          $articleObj->getSectionNumber(),\n                          $g_user->getUserId(),\n                          $languageArray);\n        $success = true;\n        $affectedArticles += 1;\n    }\n\n    $message = $translator->trans(\"$1 Article(s) duplicated\", array('$1' => $affectedArticles), 'library');\n\n    break;\n\ncase 'duplicate_interactive':\ncase 'move':\n    $args = array_merge($_REQUEST, $f_params);\n    unset($args[\"f_article_code\"]);\n    $argsStr = camp_implode_keys_and_values($args, \"=\", \"&\");\n    $argsStr .= '&f_mode=multi&f_action=';\n    $argsStr .= $f_action == 'move' ? 'move' : 'duplicate';\n    $argsStr .= '&f_language_selected=' . ( (int) camp_session_get('f_language_selected', 0));\n    foreach ($flatArticleCodes as $articleCode) {\n        $argsStr .= '&f_article_code[]=' . $articleCode;\n    }\n\n    return returnJson(0, '', 0, '',  $Campsite['WEBSITE_URL'] . \"/admin/articles/duplicate.php?\".$argsStr);\n    break;\n\ncase 'publish_schedule':\n    $args = array_merge($_REQUEST, $f_params);\n    $argsStr = camp_implode_keys_and_values($args, \"=\", \"&\");\n    $argsStr .= '&f_language_selected=' . ( (int) camp_session_get('f_language_selected', 0));\n    foreach ($flatArticleCodes as $articleCode) {\n        $argsStr .= '&f_article_code[]=' . $articleCode;\n    }\n\n    return returnJson(0, '', 0, '',  $Campsite['WEBSITE_URL'] . \"/admin/articles/multi_autopublish.php?\".$argsStr);\n    break;\ncase 'context_box_update':\n\n    $contextContent = prepareContextBoxItems($f_params);\n\n    $articleObj = new Article($f_language_selected, $contextContent['f_article_id']);\n    if ($articleObj->userCanModify($g_user)) {\n        $contextBoxObj = new ContextBox(null, $contextContent['f_article_id']);\n        $contextId = $contextBoxObj->getId();\n        $relatedItems = array_filter($contextContent['f_related_items'], 'is_numeric');\n        ContextBoxArticle::saveList($contextId, $relatedItems);\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('boxarticles');\n    }\n\n    return json_encode(array(200));\n    break;\n\ncase 'context_box_preview_article':\n    $return = array();\n\n    foreach ($_REQUEST['args'] as $arg) {\n        if ( is_array($arg) && isset($arg['langId'])) {\n            $f_language_selected = $arg['langId'];\n        }\n    }\n\n    $articleId = $f_params['articleId'];\n    if (!is_numeric($articleId)) {\n        $articleIdArray = explode('_', $articleId);\n        $articleId = $articleIdArray[1];\n    }\n\n    $articleObj = new Article($f_language_selected, $articleId);\n\n    $articleInfo = array();\n    $articleData = $articleObj->getArticleData();\n    // Get article type fields.\n    $dbColumns = $articleData->getUserDefinedColumns(false, true);\n    foreach ($dbColumns as $dbColumn) {\n        if (htmlspecialchars($dbColumn->getDisplayName(0)) == 'full_text') {\n            if ($dbColumn->getType() == ArticleTypeField::TYPE_SWITCH) {\n                $value = $articleData->getProperty($dbColumn->getName()) ? $translator->trans('On', array(), 'library') : $translator->trans('Off', array(), 'library');\n                $return['body'] = $value;\n            } else {\n                $return['body'] = $articleData->getProperty($dbColumn->getName());\n            }\n        }\n    }\n\n    $return['title'] = $articleObj->getTitle();\n    $return['articleId'] = $articleId;\n    $return['date'] = $articleObj->getCreationDate();\n\n    if (!array_key_exists('body', $return)) {\n        $return['date'] = $articleObj->getCreationDate();\n    }\n      $return['code'] = 200;\n\n    return $return;\n    break;\n\ncase 'context_box_load_list':\n    $return = array();\n    $items = array();\n\n    $articleId = $f_params['articleId'];\n    if (!is_numeric($articleId)) {\n        $articleIdArray = explode('_', $articleId);\n        $articleId = $articleIdArray[1];\n    }\n\n    $contextBoxObj = new ContextBox(null, $articleId);\n    $contextId = $contextBoxObj->getId();\n    $contextArticleIds = $contextBoxObj->getArticlesList();\n\n    foreach ($contextArticleIds as $contextArticleId) {\n        $articleObj = new Article($f_language_selected, $contextArticleId);\n        $item['title'] = $articleObj->getTitle();\n        $item['articleId'] = 'article_'.$contextArticleId;\n        $item['date'] = $articleObj->getCreationDate();\n        $item['status'] = $articleObj->getWorkflowDisplayString();\n        $items[] = $item;\n    }\n\n    $return['items'] = $items;\n    $return['code'] = 200;\n\n    return $return;\n    break;\n}\n\nif ($f_target == 'art_ofp') {\n    $value = ($f_value == 'Yes') ? true : false;\n    $success = $articleObj->setOnFrontPage($value);\n    $message = $translator->trans(\"$1 toggled.\", array('$1' => \"&quot;\".$translator->trans(\"On Front Page\").\"&quot;\"), 'library');\n}\nif ($f_target == 'art_osp') {\n    $value = ($f_value == 'Yes') ? true : false;\n    $success = $articleObj->setOnSectionPage($value);\n    $message = $translator->trans(\"$1 toggled.\", array('$1' => \"&quot;\".$translator->trans(\"On Section Page\").\"&quot;\"), 'library');\n}\nif ($f_target == 'art_status') {\n    if (in_array($f_value, array('Published', 'Submitted', 'New'))) {\n        switch ($f_value) {\n        case 'New': $f_value = 'N'; break;\n        case 'Published': $f_value = 'Y'; break;\n        case 'Submitted': $f_value = 'S'; break;\n        }\n        $access = false;\n        // A publisher can change the status in any way he sees fit.\n        // Someone who can change an article can submit/unsubmit articles.\n        // A user who owns the article may submit it.\n        if ($g_user->hasPermission('Publish')\n                || ($g_user->hasPermission('ChangeArticle') && ($f_value != 'Y'))\n                || ($articleObj->userCanModify($g_user) && ($f_value == 'S') )) {\n            $access = true;\n        }\n\n        // If the article is not yet categorized, force it to be before publication.\n        if (($f_action_workflow == \"Y\")\n                && (($articleObj->getPublicationId() == 0)\n                || ($articleObj->getIssueNumber() == 0) || ($articleObj->getSectionNumber() == 0))) {\n            //$args = $_REQUEST;\n            //$argsStr = camp_implode_keys_and_values($_REQUEST, \"=\", \"&\");\n            //$argsStr .= \"&f_article_code[]=\".$f_article_number.\"_\".$f_language_selected;\n            //$argsStr .= \"&f_mode=single&f_action=publish\";\n            //camp_html_goto_page(\"/$ADMIN/articles/duplicate.php?\".$argsStr);\n        }\n\n        $success = $articleObj->setWorkflowStatus($f_value);\n\n        $message = $translator->trans(\"Article status set to $1\", array('$1' => $articleObj->getWorkflowDisplayString($f_value)), 'library');\n    }\n}\n\nif ($affectedArticles == 0 && $success) {\n    $affectedArticles = 1;\n}\n\nreturn returnJson($affectedArticles, $message, $notAffectedArticles, $errorMessage, $hiperlink);\n"
  },
  {
    "path": "newscoop/admin-files/libs/ArticleList/do_data.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\n\nrequire_once dirname(__FILE__) . '/ArticleList.php';\nrequire_once WWW_DIR . '/classes/Article.php';\n\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\n\n$list = new ArticleList(TRUE);\n\n// start >= 0\n$start = max(0,\n    empty($_REQUEST['iDisplayStart']) ? 0 : (int) $_REQUEST['iDisplayStart']);\n\n// results num >= 10 && <= 100\n$limit = min(100, max(10,\n    empty($_REQUEST['iDisplayLength']) ? 0 : (int) $_REQUEST['iDisplayLength']));\n\n// filters - common\n$articlesParams = array();\n$filters = array(\n    'publication' => array('is', 'integer'),\n    'issue' => array('is', 'integer'),\n    'section' => array('is', 'integer'),\n    'language' => array('is', 'integer'),\n    'publish_date' => array('is', 'date'),\n    'publish_date_from' => array('greater_equal', 'date'),\n    'publish_date_to' => array('smaller_equal', 'date'),\n    'author' => array('is', 'integer'),\n    'topic' => array('is', 'integer'),\n    'workflow_status' => array('is', 'string'),\n    'creator' => array('is', 'integer'),\n    'type' => array('is', 'string'),\n);\n\n// mapping form name => db name\n$fields = array(\n    'publish_date_from' => 'publish_date',\n    'publish_date_to' => 'publish_date',\n    'language' => 'idlanguage',\n    'creator' => 'iduser',\n);\n\n//fix for the new issue filters\nif( isset($_REQUEST['issue']) && $_REQUEST['issue'] > 0 ) {\n\tif($_REQUEST['issue'] != 0) {\n\t\t$issueFiltersArray = explode('_', $_REQUEST['issue']);\n\t\tif(count($issueFiltersArray) > 1) {\n            if (empty($_REQUEST['publication'])) {\n\t\t\t    $_REQUEST['publication'] = $issueFiltersArray[0];\n            }\n\n\t\t\t$_REQUEST['issue'] = $issueFiltersArray[1];\n\t\t\t$_REQUEST['language'] = $issueFiltersArray[2];\n\t\t}\n\t}\n}\n\n//fix for the new section filters\nif( isset($_REQUEST['section']) && $_REQUEST['section'] > 0 ) {\n\tif($_REQUEST['section'] != 0) {\n\t\t$sectionFiltersArray = explode('_', $_REQUEST['section']);\n\t\tif(count($sectionFiltersArray) > 1) {\n            if (empty($_REQUEST['publication'])) {\n\t\t\t    $_REQUEST['publication'] = $sectionFiltersArray[0];\n            }\n\n            if (empty($_REQUEST['language'])) {\n\t\t\t    $_REQUEST['language'] = $sectionFiltersArray[2];\n            }\n\n\t\t\t$_REQUEST['section'] = $sectionFiltersArray[3];\n\t\t}\n\t}\n}\n\nforeach ($filters as $name => $opts) {\n    if (isset($_REQUEST[$name])\n    && (!empty($_REQUEST[$name]) || $_REQUEST[$name] === 0)) {\n        $field = !empty($fields[$name]) ? $fields[$name] : $name;\n        $articlesParams[] = new ComparisonOperation($field, new Operator($opts[0], $opts[1]), $_REQUEST[$name]);\n    }\n}\n\nif (empty($_REQUEST['showtype']) || $_REQUEST['showtype'] != 'with_filtered') { // limit articles of filtered types by default\n\n    foreach((array) \\ArticleType::GetArticleTypes(true) as $one_art_type_name) {\n        $one_art_type = new \\ArticleType($one_art_type_name);\n        if ($one_art_type->getFilterStatus()) {\n            $articlesParams[] = new ComparisonOperation('type', new Operator('not', 'string'), $one_art_type->getTypeName());\n        }\n    }\n\n}\n\n// search\nif (isset($_REQUEST['sSearch']) && strlen($_REQUEST['sSearch']) > 0) {\n    $search_phrase = $_REQUEST['sSearch'];\n    //$articlesParams[] = new ComparisonOperation('search_phrase', new Operator('is', 'integer'), $search_phrase);\n    $articlesParams[] = new ComparisonOperation('search_phrase', new Operator('like', 'string'), \"__match_all.\".$search_phrase);\n}\n\n// sorting\n$cols = $list->getColumnKeys();\n$sortOptions = array(\n    'Number' => 'bynumber',\n    'Order' => 'bysectionorder',\n    'Name' => 'byname',\n    'Comments' => 'bycomments',\n    'Reads' => 'bypopularity',\n    'CreateDate' => 'bycreationdate',\n    'PublishDate' => 'bypublishdate',\n    'Author' => 'byauthor',\n    'Status' => 'bystatus'\n);\n\n$sortBy = 'bysectionorder';\n$sortDir = 'asc';\n$sortingCols = min(1, (int) $_REQUEST['iSortingCols']);\nfor ($i = 0; $i < $sortingCols; $i++) {\n    $sortOptionsKey = (int) $_REQUEST['iSortCol_' . $i];\n    if (!empty($sortOptions[$cols[$sortOptionsKey]])) {\n        $sortBy = $sortOptions[$cols[$sortOptionsKey]];\n        $sortDir = $_REQUEST['sSortDir_' . $i];\n        break;\n    }\n}\n\n// get articles\n$articles = Article::GetList($articlesParams, array(array('field' => $sortBy, 'dir' => $sortDir)), $start, $limit, $articlesCount, true);\n\n$return = array();\nforeach($articles as $article) {\n    $return[] = $list->processItem($article);\n}\nreturn array(\n    'iTotalRecords' => Article::GetTotalCount(),\n    'iTotalDisplayRecords' => $articlesCount,\n    'sEcho' => (int) $_REQUEST['sEcho'],\n    'aaData' => $return,\n);\n"
  },
  {
    "path": "newscoop/admin-files/libs/ArticleList/do_order.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/article_common.php\");\n\n$article = new Article();\nforeach ($f_order as $order => $item) {\n    list($prefix, $articleId) = explode('_', $item);\n    $article->Article($f_language, $articleId);\n    $article->setProperty('ArticleOrder', $order + 1);\n}\n\nreturn TRUE;\n"
  },
  {
    "path": "newscoop/admin-files/libs/ArticleList/filters.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once $GLOBALS['g_campsiteDir'] . '/classes/Publication.php';\nrequire_once $GLOBALS['g_campsiteDir'] . '/classes/Issue.php';\nrequire_once $GLOBALS['g_campsiteDir'] . '/classes/Section.php';\nrequire_once $GLOBALS['g_campsiteDir'] . '/classes/Author.php';\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n// get publications\n$publications = Publication::GetPublications();\n$publicationsNo = is_array($publications) ? sizeof($publications) : 0;\n$menuPubTitle = $publicationsNo > 0 ? $translator->trans('All Publications', array(), 'library') : $translator->trans('No publications found', array(), 'library');\n\n// get issues\n$issues = Issue::GetIssues($this->publication, NULL);\n$issuesNo = is_array($issues) ? sizeof($issues) : 0;\n$menuIssueTitle = $issuesNo > 0 ? $translator->trans('All Issues', array(), 'library') : $translator->trans('No issues found', array(), 'library');\n\n// get sections\n$sections = array();\n$section_objects = Section::GetSections($this->publication, $this->issue, $this->language);\n\nforeach ($section_objects as $section) {\n    if (!isset($sections[$section->getSectionNumber()])) {\n        $sections[$section->getSectionNumber()] = $section;\n    }\n}\n\n$sectionsNo = is_array($sections) ? sizeof($sections) : 0;\n$menuSectionTitle = $sectionsNo > 0 ? $translator->trans('All Sections', array(), 'library') : $translator->trans('No sections found', array(), 'library');\n\n?>\n<div class=\"filters\">\n<fieldset class=\"filters\"><legend><?php echo $translator->trans('Filter', array(), 'library'); ?></legend> <select\n    name=\"publication\" id=\"publication_filter\">\n    <?php if ($publicationsNo > 0) { ?>\n    <option value=\"0\"><?php p($menuPubTitle); ?></option>\n    <?php foreach ($publications as $tmpPublication) { ?>\n    <option value=\"<?php echo $tmpPublication->getPublicationId(); ?>\"><?php echo htmlspecialchars($tmpPublication->getName()); ?></option>\n    <?php }\n    } ?>\n</select> <select name=\"issue\" id=\"issue_filter\">\n<?php if ($issuesNo > 0) { ?>\n    <option value=\"0\"><?php p($menuIssueTitle); ?></option>\n    <?php foreach ($issues as $issue) { ?>\n    <option\n        value=\"<?php echo $issue->getPublicationId().'_'.$issue->getIssueNumber().'_'.$issue->getLanguageId(); ?>\"><?php echo htmlspecialchars($issue->getName()); ?></option>\n        <?php }\n} ?>\n</select> <select name=\"section\" id=\"section_filter\">\n<?php if ($sectionsNo > 0) { ?>\n    <option value=\"0\"><?php p($menuSectionTitle); ?></option>\n    <?php foreach ($sections as $section) { ?>\n    <option\n        value=\"<?php echo $section->getPublicationId().'_'.$section->getIssueNumber().'_'.$section->getLanguageId().'_'.$section->getSectionNumber(); ?>\"><?php echo htmlspecialchars($section->getName()); ?></option>\n        <?php }\n} ?>\n</select>\n\n<div class=\"extra\">\n\n<dl>\n    <dt><label for=\"filter_date\"><?php echo $translator->trans('Publish date', array(), 'library'); ?></label></dt>\n    <dd><input id=\"filter_date\" type=\"text\" name=\"publish_date\"\n        class=\"date\" /></dd>\n</dl>\n<dl>\n    <dt><label for=\"filter_from\"><?php echo $translator->trans('Published after', array(), 'library'); ?></label></dt>\n    <dd><input id=\"filter_from\" type=\"text\" name=\"publish_date_from\"\n        class=\"date\" /></dd>\n</dl>\n<dl>\n    <dt><label for=\"filter_to\"><?php echo $translator->trans('Published before', array(), 'library'); ?></label></dt>\n    <dd><input id=\"filter_to\" type=\"text\" name=\"publish_date_to\"\n        class=\"date\" /></dd>\n</dl>\n<dl>\n    <dt><label for=\"filter_author\"><?php echo $translator->trans('Author'); ?></label></dt>\n    <dd><input type=\"hidden\" name=\"author\" id=\"filter_author\" class=\"select2\" data-placeholder=\"<?php echo $translator->trans('Search for authors', array(), 'authors'); ?>\" data-contenturl=\"/admin/authors/get\" /></dd>\n</dl>\n<dl>\n    <dt><label for=\"filter_creator\"><?php echo $translator->trans('Creator', array(), 'library'); ?></label></dt>\n    <dd><input type=\"hidden\" name=\"creator\" id=\"filter_creator\" class=\"select2\" data-placeholder=\"<?php echo $translator->trans('Search for creators', array(), 'library'); ?>\" data-contenturl=\"/admin/users/load\" /></dd>\n</dl>\n<dl>\n    <dt><label for=\"filter_status\"><?php echo $translator->trans('Status'); ?></label></dt>\n    <dd><select name=\"workflow_status\">\n        <option value=\"\"><?php echo $translator->trans('All'); ?></option>\n        <option value=\"published\"><?php echo $translator->trans('Published'); ?></option>\n        <option value=\"new\"><?php echo $translator->trans('New'); ?></option>\n        <option value=\"submitted\"><?php echo $translator->trans('Submitted'); ?></option>\n        <option value=\"withissue\"><?php echo $translator->trans('Publish with issue'); ?></option>\n    </select></dd>\n</dl>\n<dl>\n    <dt><label for=\"filter_topic\"><?php echo $translator->trans('Topic'); ?></label></dt>\n    <dd><input type=\"hidden\" name=\"topic\" id=\"filter_topic\" class=\"select2\" data-placeholder=\"<?php echo $translator->trans('Search for topics', array(), 'topics'); ?>\" data-contenturl=\"/admin/topics/get\" /></dd>\n</dl>\n<dl>\n    <dt><label for=\"filter_language\"><?php echo $translator->trans('Language'); ?></label></dt>\n    <dd><select id=\"filter_name\" name=\"language\">\n        <option value=\"\"><?php echo $translator->trans('All'); ?></option>\n        <?php foreach (Language::GetLanguages() as $language) { ?>\n        <option value=\"<?php echo $language->getLanguageId(); ?>\"><?php echo htmlspecialchars($language->getNativeName()); ?></option>\n        <?php } ?>\n    </select></dd>\n</dl>\n</div>\n</fieldset>\n</div>\n<!-- /.smartlist-filters -->\n\n        <?php if (!self::$renderFilters) { ?>\n<link type=\"text/css\" rel=\"stylesheet\" href=\"/js/select2/select2.css\"></link>\n<script type=\"text/javascript\" src=\"/js/select2/select2.js\"></script>\n<script type=\"text/javascript\">\n\nfunction handleArgs()\n{\n    if ($('#filter_name').val() < 0) {\n        langId = 0;\n    } else {\n        langId = $('#filter_name').val();\n    }\n\n    if ($('#publication_filter').val() < 0) {\n        publicationId = 0;\n    } else {\n        publicationId = $('#publication_filter').val();\n    }\n\n    if ($('#issue_filter').val() < 0) {\n        issueId = 0;\n    } else {\n        issueId = $('#issue_filter').val();\n    }\n\n    args = new Array();\n    args.push({\n        'name': 'language',\n        'value': langId\n    });\n    args.push({\n        'name': 'publication',\n        'value': publicationId\n    });\n    args.push({\n        'name': 'issue',\n        'value': issueId\n    });\n\n    return args;\n}\n\nfunction handleFilterIssues(args)\n{\n    var args = eval('(' + args + ')');\n    $('#issue_filter >option').remove();\n    $('#issue_filter').append($(\"<option></option>\").val('0').html(args.menuItemTitle));\n\n    var items = args.items;\n    for (var i=0; i < items.length; i++) {\n        var item = items[i];\n        $('#issue_filter').append($(\"<option></option>\").val(item.val).html(item.name));\n    }\n}\n\nfunction handleFilterSections(args)\n{\n    var args = eval('(' + args + ')');\n    $('#section_filter >option').remove();\n    $('#section_filter').append($(\"<option></option>\").val('0').html(args.menuItemTitle));\n\n    var items = args.items;\n    for (var i=0; i < items.length; i++) {\n        var item = items[i];\n        $('#section_filter').append($(\"<option></option>\").val(item.val).html(item.name));\n    }\n}\n\nfunction refreshFilterIssues()\n{\n    var args = handleArgs();\n    callServer(['ArticleList', 'getFilterIssues'], args, handleFilterIssues);\n}\n\nfunction refreshFilterSections()\n{\n    var args = handleArgs();\n    callServer(['ArticleList', 'getFilterSections'], args, handleFilterSections);\n}\n\n$(document).ready(function () {\n//handle language change first\n$('#filter_name').change(function () {\n\n    refreshFilterIssues();\n    refreshFilterSections();\n})\n\n$('#publication_filter').change(function () {\n    refreshFilterIssues();\n    refreshFilterSections();\n})\n\n$('#issue_filter').change(function () {\n    var smartlist = $(this).closest('.smartlist');\n    var smartlistId = smartlist.attr('id').split('-')[1];\n    filters[smartlistId]['section'] = 0;\n    refreshFilterSections();\n})\n\n// filters handle\n$('.smartlist .filters select, .smartlist .filters input').change(function () {\n    var smartlist = $(this).closest('.smartlist');\n    var smartlistId = smartlist.attr('id').split('-')[1];\n    var name = $(this).attr('name');\n    var value = $(this).val();\n    filters[smartlistId][name] = value;\n    if ($(this).attr('id') == 'filter_name' || $(this).attr('id') == 'publication_filter' ) {\n        filters[smartlistId]['issue'] = 0;\n        filters[smartlistId]['section'] = 0;\n    }\n    tables[smartlistId].fnDraw(true);\n\n    return false;\n});\n\n// datepicker for dates\n$('input.date').datepicker({\n    dateFormat: 'yy-mm-dd',\n    maxDate: '+0d',\n});\n\n// filters managment\n$('fieldset.filters .extra').each(function () {\n    var extra = $(this);\n    $('dl', extra).hide();\n    $('<select class=\"filters\"></select>')\n        .appendTo(extra)\n        .each(function () { // init options\n            var select = $(this);\n            $('<option value=\"\"><?php echo $translator->trans('Filter by...', array(), 'library'); ?></option>')\n                .appendTo(select);\n            $('dl dt label', extra).each(function () {\n                var label = $(this).text();\n                $('<option value=\"'+label+'\">'+label+'</option>')\n                    .appendTo(select);\n            });\n        }).change(function () {\n            var select = $(this);\n            var value = $(this).val();\n            $(this).val('');\n            $('dl', $(this).parent()).each(function () {\n                var label = $('label', $(this)).text();\n                var option = $('option[value=\"' + label + '\"]', select);\n                if (label == value) {\n                    $(this).show();\n                    $(this).insertBefore($('select.filters', $(this).parent()));\n\n                    if ($('a.detach', $(this)).length == 0) {\n                        $('<a class=\"detach\">X</a>').appendTo($('dd', $(this)))\n                            .click(function () {\n                                $(this).parents('dl').hide();\n                                $('input, select', $(this).parent()).val('').change();\n                                select.change();\n                                option.show();\n                            });\n                    }\n                    option.hide();\n                }\n            });\n    }); // change\n});\n\n$('fieldset.filters').each(function () {\n    var fieldset = $(this);\n    var smartlist = fieldset.closest('.smartlist');\n    var smartlistId = smartlist.attr('id').split('-')[1];\n\n    // reset all button\n    var resetMsg = '<?php echo $translator->trans('Reset all filters', array(), 'library'); ?>';\n    $('<a href=\"#\" class=\"reset\" title=\"'+resetMsg+'\">'+resetMsg+'</a>')\n        .appendTo(fieldset)\n        .click(function () {\n            // reset extra filters\n            $('.extra dl', fieldset).each(function () {\n                $(this).hide();\n                $('select, input', $(this)).val('');\n            });\n            $('select.filters', fieldset).val('');\n            $('select.filters option', fieldset).show();\n\n            // reset main filters\n            $('> select', fieldset).val('0').change();\n\n            // redraw table\n            filters[smartlistId] = {};\n            tables[smartlistId].fnDraw(true);\n\n            return false;\n        });\n});\n\n// autocomplete\n$('input.select2').each(function () {\n\n    // Default processors\n    var idProcessor  = function (data) { return data.id; };\n    var resultFormatProcessor = function (data) { return data.title };\n    var selectionFormatProcessor = function (data) { return data.title; };\n    var paramProcessor = function (term, page) { return { term: term, limit: 20 }; };\n    var resultsProcessor = function (data, page) { return {results: data}; };\n\n    switch ($(this).attr('id')) {\n        case 'filter_creator':\n            resultFormatProcessor = function (data) { return (data.first_name + ' ' + data.last_name).trim(); };\n            selectionFormatProcessor = function (data) { return (data.first_name + ' ' + data.last_name).trim(); };\n            resultsProcessor = function (data, page) { return {results: data.records}; };\n            paramProcessor = function (term, page) { return { queries : { search_name: term }, perPage: 20 }; };\n            break;\n        case 'filter_topic':\n            break;\n        case 'filter_author':\n            idProcessor  = function (data) { return data.title; };\n            break;\n        default:\n            break;\n    }\n\n    $(this).select2({\n        minimumInputLength: 1,\n        ajax: {\n            url: $(this).data('contenturl'),\n            dataType: 'json',\n            data: paramProcessor,\n            results: resultsProcessor\n        },\n        id: idProcessor,\n        formatResult: resultFormatProcessor,\n        formatSelection: selectionFormatProcessor,\n        formatNoMatches: function () { return \"<?php echo $translator->trans('No matches.', array(), 'library'); ?>\"; },\n        formatSearching: function () { return \"<?php echo $translator->trans('Searching...', array(), 'library'); ?>\"; },\n        formatInputTooShort: function () { return  \"<?php echo $translator->trans('Minimum input of characters: $1', array('$1' => 1), 'library'); ?>\"; }\n    });\n});\n\n}); // document.ready\n\n</script>\n        <?php } ?>\n"
  },
  {
    "path": "newscoop/admin-files/libs/ArticleList/table.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n$translator = \\Zend_Registry::get('container')->getService('translator');\n?>\n\n<script>\njQuery.fn.dataTableExt.oApi.fnSetFilteringDelay = function ( oSettings, iDelay ) {\n    /*\n     * Inputs:      object:oSettings - dataTables settings object - automatically given\n     *              integer:iDelay - delay in milliseconds\n     * Usage:       $('#example').dataTable().fnSetFilteringDelay(250);\n     * Author:      Zygimantas Berziunas (www.zygimantas.com) and Allan Jardine\n     * License:     GPL v2 or BSD 3 point style\n     * Contact:     zygimantas.berziunas /AT\\ hotmail.com\n     */\n    var\n        _that = this,\n        iDelay = (typeof iDelay == 'undefined') ? 250 : iDelay;\n     \n    this.each( function ( i ) {\n        $.fn.dataTableExt.iApiIndex = i;\n        var\n            $this = this, \n            oTimerId = null, \n            sPreviousSearch = null,\n            anControl = $( 'input', _that.fnSettings().aanFeatures.f );\n         \n            anControl.unbind( 'keyup' ).bind( 'keyup', function(event) {\n                var $$this = $this;\n                var searchKeyword;\n                var inputKeyword;\n                \n                inputKeyword = anControl.val();\n                searchKeyword = inputKeyword;\n                \n                if (sPreviousSearch === null || sPreviousSearch != anControl.val()) {\n                    window.clearTimeout(oTimerId);\n                    sPreviousSearch = anControl.val();  \n                    oTimerId = window.setTimeout(function() {\n                        $.fn.dataTableExt.iApiIndex = i;\n                        searchKeyword = inputKeyword; \n                        _that.fnFilter( searchKeyword );\n                    }, iDelay);\n                }\n            });\n         \n        return this;\n    } );\n    return this;\n}\n\n</script>\n\n<div class=\"table\">\n\n<table id=\"table-<?php echo $this->id; ?>\" cellpadding=\"0\" cellspacing=\"0\" class=\"datatable\">\n<thead>\n    <tr>\n        <?php foreach ($this->cols as $label) { ?>\n        <?php if (!isset($label)) { ?>\n        <th><input type=\"checkbox\" /></th>\n        <?php } else { ?>\n        <th><?php echo $label; ?></th>\n        <?php }} ?>\n    </tr>\n</thead>\n<tbody>\n<?php if ($this->items === NULL) { ?>\n    <tr><td colspan=\"<?php echo sizeof($this->cols); ?>\"><?php echo $translator->trans('Loading data', array(), 'library'); ?></td></tr>\n<?php } else if (!empty($this->items)) { ?>\n    <?php foreach ($this->items as $item) { ?>\n    <tr>\n        <?php foreach ($item as $row) { ?>\n        <td><?php echo $row; ?></td>\n        <?php } ?>\n    </tr>\n    <?php } ?>\n<?php } ?>\n</tbody>\n</table>\n</div>\n<?php if ($this->order) { ?>\n<form method=\"post\" action=\"<?php echo $this->path; ?>/do_order.php\" onsubmit=\"return sendOrder(this, '<?php echo $this->id; ?>');\">\n    <?php echo SecurityToken::FormParameter(); ?>\n    <input type=\"hidden\" name=\"language\" value=\"<?php echo $this->language; ?>\" />\n    <input type=\"hidden\" name=\"order\" value=\"\" />\n\n<fieldset class=\"buttons\">\n    <input id=\"button-set-order\" type=\"submit\" name=\"Save\" value=\"<?php echo $translator->trans('Save order', array(), 'library'); ?>\" />\n</fieldset>\n</form>\n<div style=\"clear: both\"></div>\n<?php } ?>\n\n<?php if (!self::$renderTable) { ?>\n<script type=\"text/javascript\"><!--\ntables = [];\nfilters = [];\n\nfunction sendOrder(form, hash)\n{\n    var order = $('#table-' + hash + ' tbody').sortable('toArray');\n    callServer(['ArticleList', 'doOrder'], [\n        order,\n        $('input[name=language]', $(form)).val(),\n        ], function(data) {\n            tables[hash].fnSort([[2, 'asc']]);\n            tables[hash].fnDraw(true);\n            flashMessage('<?php echo $translator->trans('Order updated.', array(), 'library'); ?>');\n        });\n    return false;\n}\n--></script>\n<?php } // render ?>\n<script type=\"text/javascript\"><!--\n$(document).ready(function() {\nvar table = $('#table-<?php echo $this->id; ?>');\nfilters['<?php echo $this->id; ?>'] = [];\ntables['<?php echo $this->id; ?>'] = table.dataTable({\n    'bAutoWidth': true,\n    'bScrollCollapse': true,\n    'bDestroy': true,\n<?php if ($this->items === null && !isset($this->type)) {\n    $this->addSDom('filter_type_' . $this->id);\n} ?>\n    'sDom': '<?php echo $this->getSDom(); ?>',\n    'aaSorting': [\n        <?php foreach ($this->orderBy as $column => $dir) { ?>\n        [<?php echo $column; ?>, '<?php echo $dir; ?>'],\n        <?php } ?>\n        [2, 'asc']\n    ],\n    'oLanguage': {\n        'oPaginate': {\n            'sFirst': '<?php echo $translator->trans('First', array(), 'library'); ?>',\n            'sNext': '<?php echo $translator->trans('Next'); ?>',\n            'sPrevious': '<?php echo $translator->trans('Previous'); ?>',\n            'sLast': '<?php echo $translator->trans('Last', array(), 'library'); ?>',\n        },\n        'sZeroRecords': '<?php echo $translator->trans('No records found.', array(), 'library'); ?>',\n        'sSearch': '<?php echo $translator->trans('Search'); ?>:',\n        'sInfo': '<?php echo $translator->trans('Showing _START_ to _END_ of _TOTAL_ entries', array(), 'library'); ?>',\n        'sEmpty': '<?php echo $translator->trans('No entries to show', array(), 'library'); ?>',\n        'sInfoFiltered': '<?php echo $translator->trans(' - filtering from _MAX_ records', array(), 'library'); ?>',\n        'sLengthMenu': '<?php echo $translator->trans('Display _MENU_ records', array(), 'library'); ?>',\n        'sInfoEmpty': '',\n    },\n    'aoColumnDefs': [\n        { // inputs for id\n            'fnRender': function(obj) {\n                var id = obj.aData[0] + '_' + obj.aData[1];\n                return '<input type=\"checkbox\" name=\"' + id + '\" />';\n            },\n            'aTargets': [0]\n        },\n        { // status workflow\n            'fnRender': function(obj) {\n                switch (obj.aData[9]) {\n                    case 'Y':\n                        return '<?php echo $translator->trans('Published'); ?>';\n                    case 'N':\n                        return '<?php echo $translator->trans('New'); ?>';\n                    case 'S':\n                        return '<?php echo $translator->trans('Submitted'); ?>';\n                    case 'M': return '<?php echo $translator->trans('Publish with issue'); ?>';\n                }\n            },\n            'aTargets': [9]\n        },\n        { // hide columns\n            'bVisible': false,\n            'aTargets': [<?php if (!self::$renderActions) { ?>0, <?php } ?>1, 2, 7, 12, 13, 18, 20,\n                <?php echo implode(', ', $this->hidden); ?>\n            ]\n        },\n        { // not sortable\n            'bSortable': false,\n            'aTargets': [0, 1, 2, 4, 5, 6, 7, 10, 11, 12, 13, 16, 17, 20, 21, 22]\n        },\n        { // id\n            'sClass': 'id',\n            'sWidth': '3em',\n            'aTargets': [0]\n        },\n        { // name\n            'sClass': 'name',\n            'sWidth': '13em',\n            'aTargets': [3]\n        },\n        { // type & author\n            'sWidth': '8em',\n            'aTargets': [4, 5, 6, 8]\n        },\n        { // short\n            'sClass': 'flag',\n            'sWidth': '5em',\n            'aTargets': [9, 10, 11, 12, 13, 14, 15, 16, 17, 21, 22]\n        },\n        { // dates\n            'sClass': 'date',\n            'sWidth': '5em',\n            'aTargets': [18, 19, 20]\n        }\n    ],\n    'fnDrawCallback': function() {\n        $('#table-<?php echo $this->id; ?> tbody tr').click(function(event) {\n            if (event.target.type == 'checkbox') {\n                return; // checkbox click, handled by it's change\n            }\n\n            var input = $('input:checkbox', $(this));\n            if (input.attr('checked')) {\n                input.removeAttr('checked');\n            } else {\n                input.attr('checked', 'checked');\n            }\n            input.change();\n        }).each(function() {\n            var tr = $(this);\n            // detect locks\n            if ($('.name .ui-icon-locked', tr).not('.current-user').size()) {\n                tr.addClass('locked');\n            }\n        });\n\n        $('#table-<?php echo $this->id; ?> tbody input:checkbox').change(function() {\n            if ($(this).attr('checked')) {\n                $(this).parents('tr').addClass('selected');\n            } else {\n                $(this).parents('tr').removeClass('selected');\n            }\n\n            // update check all checkbox on item change\n            var table = $('#table-<?php echo $this->id; ?>');\n            if ($('tbody input:checkbox', table).size() == $('tbody input:checkbox:checked', table).size()) { // all checked\n                $('.smartlist thead input:checkbox').attr(\"checked\", true);\n            } else {\n                $('.smartlist thead input:checkbox').attr(\"checked\", false);\n            }\n        });\n\n        <?php if ($this->order) { ?>\n        $('#table-<?php echo $this->id; ?> tbody').sortable();\n        <?php } ?>\n    },\n    <?php if ($this->items !== NULL) { // display all items ?>\n    'bPaging': false,\n    'iDisplayLength': <?php echo sizeof($this->items); ?>,\n    <?php } else { // no items - server side ?>\n    'bServerSide': true,\n    'sAjaxSource': '<?php echo $this->path; ?>/do_data.php',\n    'sPaginationType': 'full_numbers',\n    'fnServerData': function (sSource, aoData, fnCallback) {\n        for (var i in filters['<?php echo $this->id; ?>']) {\n            aoData.push({\n                'name': i,\n                'value': filters['<?php echo $this->id; ?>'][i],\n            });\n        }\n        <?php foreach (array('publication', 'issue', 'section', 'language', 'workflow_status', 'type') as $filter) {\n            if ($filter == 'language' && !$this->order) {\n                continue; // ignore language on non-section pages\n            }\n\n            if (!is_null($this->$filter)) { ?>\n            aoData.push({\n                'name': '<?php echo $filter; ?>',\n                'value': '<?php echo $this->$filter; ?>',\n            });\n        <?php }} ?>\n            callServer(['ArticleList', 'doData'], aoData, fnCallback);\n    },\n    'fnStateLoadCallback': function(oSettings, oData) {\n        oData.sFilter = ''; // reset filter\n        <?php if ($this->order) { ?>\n        oData.aaSorting = [[2, 'asc']]; // show correct order on reload\n        <?php } ?>\n        return true;\n    },\n    <?php } ?>\n    <?php if ($this->colVis) { ?>\n    'oColVis': { // disable Show/hide column\n        'aiExclude': [0, 1, 2],\n        'buttonText': '<?php echo $translator->trans('Show / hide columns', array(), 'library'); ?>',\n    },\n    <?php } ?>\n    <?php if ($this->order) { ?>\n    'fnRowCallback': function(nRow, aData, iDisplayIndex, iDisplayIndexFull ) {\n        var id = $(aData[0]).attr('name').split('_')[0];\n        $(nRow).attr('id', 'article_' + id);\n        return nRow;\n    },\n    <?php } ?>\n    <?php if ($this->workflow_status == 'pending') { ?>\n    'bStateSave': true,\n    <?php } ?>\n    'bJQueryUI': true\n}).css('position', 'relative').css('width', '100%').fnSetFilteringDelay(500);\n\n<?php if ($this->items === null && !isset($this->type)) { ?>\n$('<input type=\"checkbox\" name=\"showtype\" value=\"with_filtered\" id=\"display_filtered_types_<?php echo $this->id; ?>\" /> <label for=\"display_filtered_types_<?php echo $this->id; ?>\"><?php echo $translator->trans(\"Show hidden Article Types?\", array(), 'library'); ?></label>')\n    .appendTo('#filter_type_<?php echo $this->id; ?>');\n$('#filter_type_<?php echo $this->id; ?>').css('float', 'right');\n$('#filter_type_<?php echo $this->id; ?>').css('margin-right', '20px');\n$('#filter_type_<?php echo $this->id; ?>').css('margin-top', '1px');\n\n$('#filter_type_<?php echo $this->id; ?>').css('margin-bottom', '5px');\n\n$('input#display_filtered_types_<?php echo $this->id; ?>').change(function() {\n    filters['<?php echo $this->id; ?>']['showtype'] = $(this).attr('checked') ? 'with_filtered' : '';\n    tables['<?php echo $this->id; ?>'].fnDraw(true);\n});\n\n<?php } ?>\n});\n--></script>\n"
  },
  {
    "path": "newscoop/admin-files/libs/BaseList/BaseList.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\n/**\n * List component\n */\nclass BaseList\n{\n    /** @var string */\n    protected $id = '';\n\n    /** @var string */\n    protected $web = '';\n\n    /** @var string */\n    protected $admin = '';\n\n    /** @var bool */\n    protected $search = FALSE;\n\n    /** @var array */\n    protected $searchCols = array();\n\n    /** @var array */\n    protected $cols = array();\n\n    /** @var array */\n    protected $ignoredCols = array();\n\n    /** @var bool */\n    protected $colVis = FALSE;\n\n    /** @var mixed */\n    protected $model = NULL;\n\n    /** @var bool */\n    protected $order = FALSE;\n\n    /** @var array */\n    protected $hidden = array();\n\n    /** @var string */\n    protected $defaultSorting = NULL;\n\n    /** @var string */\n    protected $defaultSortingDir = 'asc';\n\n    /** @var array */\n    protected $notSortable = array();\n\n    /** @var array */\n    protected $items = NULL;\n\n    /** @var bool */\n    protected $beforeRender = FALSE;\n\n    /** @var bool */\n    protected static $renderTable = FALSE;\n\n    /** @var int */\n    protected $inUseColumn = NULL;\n\n    /** @var bool */\n    protected $clickable = TRUE;\n\n    /** @var array */\n    protected $filters = array('1');\n\n    /**\n     */\n    public function __construct()\n    {\n        global $Campsite, $ADMIN;\n\n        // set paths\n        $this->web = $Campsite['WEBSITE_URL'];\n        $this->path = $this->web . '/admin/libs/ArticleList';\n\n        $this->id = substr(sha1(get_class($this)), -6);\n    }\n\n    /**\n     * Get list id\n     * @return string\n     */\n    public function getId()\n    {\n        return (string) $this->id;\n    }\n\n    /**\n     * Add sDom element\n     *\n     * @param string $id\n     * @return void\n     */\n    public function addSDom($id)\n    {\n        $this->sDoms = array($id);\n    }\n\n    /**\n     * Get sDom property.\n     * @return string\n     */\n    public function getSDom()\n    {\n        $colvis = $this->colVis ? 'C' : '';\n        $search = $this->search ? 'f' : '';\n        $paging = $this->items === NULL ? 'ip' : 'i';\n        $custom = !empty($this->sDoms) ? '<\"#' . $this->sDoms[0] . '\">' : '';\n        return sprintf('<\"H\"%s%s%s%s>t<\"F\"%s%s>',\n            $colvis,\n            $custom,\n            $search,\n            $paging,\n            $paging,\n            $this->items === NULL ? 'l' : ''\n        );\n    }\n\n    /**\n     * Get Context Box sDom property.\n     * @return string\n     */\n    public function getContextSDom()\n    {\n        $colvis = $this->colVis ? 'C' : '';\n        $search = $this->search ? 'f' : '';\n        $paging = $this->items === NULL ? 'ip' : 'i';\n        return sprintf('<\"H\"%s%s>t<\"F\"%s%s>',\n            $colvis,\n            $search,\n            //$paging,\n            $paging,\n            $this->items === NULL ? 'l' : ''\n        );\n    }\n\n    /**\n     * Get default sorting\n     * @return string\n     */\n    public function getSorting()\n    {\n        return json_encode(array(\n            (int) $this->defaultSorting,\n            $this->defaultSortingDir,\n        ));\n    }\n\n    /**\n     * Set search.\n     * @param bool $search\n     * @return ArticleList\n     */\n    public function setSearch($search = FALSE)\n    {\n        $this->search = (bool) $search;\n        return $this;\n    }\n\n    /**\n     * Set links clickable\n     * @param bool $clickable\n     * @return BaseList\n     */\n    public function setClickable($clickable = TRUE)\n    {\n        $this->clickable = $clickable;\n        return $this;\n    }\n\n    /**\n     * Set ColVis.\n     * @param bool $colVis\n     * @return ArticleList\n     */\n    public function setColVis($colVis = FALSE)\n    {\n        $this->colVis = (bool) $colVis;\n        return $this;\n    }\n\n    /**\n     * Set order.\n     * @param bool $order\n     * @return ArticleList\n     */\n    public function setOrder($order = FALSE)\n    {\n        $this->order = (bool) $order;\n        return $this;\n    }\n\n    /**\n     * Set column to be hidden.\n     * @param int|string $key\n     * @return ArticleList\n     */\n    public function setHidden($key)\n    {\n        if (is_int($key)) {\n            $this->hidden[] = (int) $key;\n        } else {\n            foreach(array_keys($this->cols) as $id => $val) {\n                if ($key == $val) {\n                    $this->hidden[] = $id;\n                    break;\n                }\n            }\n        }\n\n        return $this;\n    }\n\n    /**\n     * Set items.\n     * @param array $items\n     * @return ArticleList\n     */\n    public function setItems($items)\n    {\n        if (isset($items[0]) && is_array($items[0])) {\n            $items = $items[0];\n        }\n        $this->items = array();\n        foreach ((array) $items as $item) {\n            $this->items[] = $this->processItem($item);\n        }\n        return $this;\n    }\n\n    /**\n     * Process item\n     * @param mixed $item\n     * @return mixed\n     */\n    public function processItem($item)\n    {\n        return array_values($item); // to be overriden in subclasses\n    }\n\n    /**\n     * Get function arguments\n     * @return array\n     */\n    final protected function getArgs()\n    {\n        $args = array();\n        foreach ($_POST['args'] as $arg) {\n            $args[$arg['name']] = $arg['value'];\n        }\n        return $args;\n    }\n\n    /**\n     * Get path for file - try in subclass folder, fallback in baseclass folder\n     * @param string $filename\n     * @return string|NULL\n     */\n    final protected function getPath($filename)\n    {\n        $reflector = new ReflectionObject($this);\n        $paths = array(\n            dirname($reflector->getFileName()) . '/' . ((string) $filename),\n            dirname(__FILE__) . '/' . ((string) $filename),\n        );\n        foreach ($paths as $path) {\n            if (file_exists($path)) {\n                return $path;\n            }\n        }\n        return NULL;\n    }\n\n\n    /**\n     * Data provider\n     * @return array\n     */\n    public function doData()\n    {\n        global $g_ado_db;\n\n        if (!isset($this->model)) {\n            return array();\n        }\n\n        // get args\n        $aoData = $this->getArgs();\n\n        // order\n        $dbCols = array_keys($this->cols);\n        $order = array();\n        for ($i = 0; $i < (int) $aoData['iSortingCols']; $i++) {\n            $order[] = sprintf('%s %s',\n                $dbCols[$aoData[\"iSortCol_$i\"]],\n                $aoData[\"sSortDir_$i\"]);\n        }\n\n        // select columns\n        $cols = array_diff(array_keys($this->cols), $this->ignoredCols);\n        $queryStr = 'SELECT ' . implode(', ', $cols) . '\n            FROM ' . $this->model->m_dbTableName;\n\n        $queryStr .= ' WHERE ' . implode(' AND ', $this->filters);\n\n        // set search\n        if (!empty($aoData['sSearch'])) {\n            $search = array();\n            foreach ($this->searchCols as $col) {\n                $search[] = sprintf('%s LIKE \"%%%s%%\"', $col,\n                    $aoData['sSearch']);\n            }\n            $queryStr .= ' AND (' . implode(' OR ', $search) . ' ) ';\n        }\n\n        // get filtered count (before ordering and limiting)\n        $totalDisplayRecords = $this->getCount($queryStr);\n\n        // set order\n        if (!empty($order)) {\n            $queryStr .= ' ORDER BY ' . implode(', ', $order);\n        }\n\n        // add limit\n        $queryStr .= sprintf(' LIMIT %s,%s',\n            $aoData['iDisplayStart'],\n            $aoData['iDisplayLength']);\n\n        $items = array();\n        $rows = (array) $g_ado_db->GetAll($queryStr);\n        foreach ($rows as $row) {\n            $items[] = $this->processRow((array) $row);\n        }\n\n        return array(\n            'iTotalRecords' => $this->getCount(),\n            'iTotalDisplayRecords' => $totalDisplayRecords,\n            'sEcho' => (int) $aoData['sEcho'],\n            'aaData' => $items,\n        );\n    }\n\n    /**\n     * Get db rows count\n     * @param string $from\n     * @return int\n     */\n    public function getCount($from = NULL)\n    {\n        global $g_ado_db;\n\n        $queryStr = 'SELECT COUNT(*)\n            FROM ' . (isset($from) ? \"($from) f\" : $this->model->m_dbTableName);\n\n        return (int) $g_ado_db->GetOne($queryStr);\n    }\n\n    /**\n     * Process db row\n     * @param array $row\n     * @return array\n     */\n    public function processRow(array $row)\n    {\n        return array_values($row);\n    }\n\n    /**\n     * Renders list id\n     * @return void\n     */\n    public function beforeRender()\n    {\n        if (!$this->beforeRender) {\n            echo '<div id=\"smartlist-' . $this->id . '\" class=\"smartlist\">';\n        }\n        $this->beforeRender = TRUE;\n    }\n\n    /**\n     * Render table.\n     * @return ArticleList\n     */\n    public function render()\n    {\n        $this->beforeRender();\n\n        include $this->getPath('table.php');\n        self::$renderTable = TRUE;\n        echo '</div><!-- /#list-' . $this->id . ' -->';\n        return $this;\n    }\n\n    /**\n     * Handle delete\n     * @param array $ids\n     * @return bool\n     */\n    public function doDelete($ids)\n    {\n        $class = get_class($this->model);\n\n        foreach ((array) $ids as $id) {\n            $object = new $class($id);\n            $object->delete();\n        }\n\n        return TRUE;\n    }\n    \n    /**\n     * Handle approve\n     * @param array $ids\n     * @return bool\n     */\n    public function doApprove($ids)\n    {\n        $class = get_class($this->model);\n\n        foreach ((array) $ids as $id) {\n            $object = new $class($id);\n            $object->update(array('Status' => 'approved'));\n        }\n\n        return TRUE;\n    }\n    \n    /**\n     * Handle disapprove\n     * @param array $ids\n     * @return bool\n     */\n    public function doDisapprove($ids)\n    {\n        $class = get_class($this->model);\n\n        foreach ((array) $ids as $id) {\n            $object = new $class($id);\n            $object->update(array('Status' => 'unapproved'));\n        }\n\n        return TRUE;\n    }\n\n    /**\n     * Get human readable filesize\n     * @credits joaoptm [http://php.net/manual/en/function.filesize.php]\n     * @param int $size\n     * @return string\n     */\n    public static function FormatFileSize($size)\n    {\n        static $units = array(' B', ' KB', ' MB', ' GB', ' TB');\n\n        $size = (int) $size;\n        for ($i = 0; $size >= 1024 && $i < 4; $i++) {\n            $size /= 1024;\n        }\n\n        return round($size, 2) . $units[$i];\n    }\n}\n"
  },
  {
    "path": "newscoop/admin-files/libs/BaseList/table.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$preferencesService = \\Zend_Registry::get('container')->getService('preferences');\n?>\n<div class=\"table\">\n\n<table id=\"table-<?php echo $this->id; ?>\" cellpadding=\"0\" cellspacing=\"0\" class=\"datatable <?php echo strtolower(get_class($this)); ?>\">\n<thead>\n    <tr>\n        <?php foreach ($this->cols as $title) { ?>\n        <?php if ($title === NULL) { ?>\n        <th><input type=\"checkbox\" /></th>\n        <?php } else { ?>\n        <th><?php echo $title; ?></th>\n        <?php }} ?>\n    </tr>\n</thead>\n<tbody>\n<?php if ($this->items === NULL) { ?>\n    <tr><td colspan=\"<?php echo sizeof($this->cols); ?>\"><?php echo $translator->trans('Loading data', array(), 'library'); ?></td></tr>\n<?php } else if (!empty($this->items)) { ?>\n    <?php foreach ($this->items as $item) { ?>\n    <tr>\n        <?php foreach ($item as $row) { ?>\n        <td><?php echo $row; ?></td>\n        <?php } ?>\n    </tr>\n    <?php } ?>\n<?php } ?>\n</tbody>\n</table>\n</div>\n<?php if (!self::$renderTable) { ?>\n<script type=\"text/javascript\"><!--\ntables = [];\nfilters = [];\n--></script>\n<?php } // render ?>\n<script type=\"text/javascript\"><!--\n$(document).ready(function() {\nvar table = $('#table-<?php echo $this->id; ?>');\nvar filters = [];\n$.smartlist_filter = '';\ntables['<?php echo $this->id; ?>'] = table.dataTable({\n    'bAutoWidth': true,\n    'bDestroy': true,\n    'bJQueryUI': true,\n    'bStateSave': true,\n    'sDom': '<?php echo $this->getSDom(); ?>',\n    'aaSorting': [<?php echo $this->getSorting(); ?>],\n    'oLanguage': {\n        'oPaginate': {\n            'sFirst': '<?php echo $translator->trans('First', array(), 'library'); ?>',\n            'sLast': '<?php echo $translator->trans('Last', array(), 'library'); ?>',\n            'sNext': '<?php echo $translator->trans('Next'); ?>',\n            'sPrevious': '<?php echo $translator->trans('Previous'); ?>',\n        },\n        'sZeroRecords': '<?php echo $translator->trans('No records found.', array(), 'library'); ?>',\n        'sSearch': '<?php echo $translator->trans('Search'); ?>:',\n        'sInfo': '<?php echo $translator->trans('Showing _START_ to _END_ of _TOTAL_ entries', array(), 'library'); ?>',\n        'sEmpty': '<?php echo $translator->trans('No entries to show', array(), 'library'); ?>',\n        'sInfoFiltered': '<?php echo $translator->trans(' - filtering from _MAX_ records', array(), 'library'); ?>',\n        'sLengthMenu': '<?php echo $translator->trans('Display _MENU_ records', array(), 'library'); ?>',\n        'sInfoEmpty': '',\n    },\n    'aoColumnDefs': [\n        { // inputs for id\n            'fnRender': function(obj) {\n                var id = obj.aData[0];\n                return '<input type=\"checkbox\" name=\"item[]\" value=\"' + id + '\" />';\n            },\n            'aTargets': [0]\n        },\n        <?php if (is_int($this->inUseColumn)) { ?>\n        { // inputs for id\n            'fnRender': function(obj) {\n                var inUse = obj.aData[0];\n                if (obj.aData[<?php echo $this->inUseColumn; ?>]) {\n                    return '<span class=\"used\"><?php echo $translator->trans('Yes'); ?></span>';\n                } else {\n                    return '<span><?php echo $translator->trans('No'); ?></span>';\n                }\n            },\n            'bSortable': false,\n            'aTargets': [<?php echo $this->inUseColumn; ?>]\n        },\n        <?php } ?>\n        { // hide columns\n            'bVisible': false,\n            'aTargets': [<?php echo implode(', ', $this->hidden); ?>]\n        },\n        { // not sortable\n            'bSortable': false,\n            'aTargets': [0, <?php echo implode(', ', $this->notSortable); ?>]\n        },\n        { // id\n            'sClass': 'id',\n            'aTargets': [0]\n        },\n    ],\n    'fnDrawCallback': function() {\n        $('#table-<?php echo $this->id; ?> tbody tr').click(function(event) {\n\n        }).each(function() {\n            <?php if ($this->type == 'image') { ?>\n                // set 'row_' + id as row id\n                var id = $(this).find('.id').find('input').val();\n                $(this).attr('id', 'row_' + id);\n                <?php\n                    if ($preferencesService->MediaRichTextCaptions == 'N') {\n                ?>\n                $($(this).children()[2]).addClass('description');\n                <?php\n                    }\n                ?>\n                $($(this).children()[3]).addClass('photographer');\n                $($(this).children()[4]).addClass('place');\n                $($(this).children()[5]).addClass('date');\n            <?php } ?>\n        });\n\n        $('#table-<?php echo $this->id; ?> tbody tr td').click(function(event) {\n            <?php if ($this->type == 'image') { ?>\n                var id = $(this).parent().find('.id').find('input').val();\n                if ($(this).hasClass('description')) {\n                    edit('description', id);\n                }\n                if ($(this).hasClass('photographer')) {\n                    edit('photographer', id);\n                }\n                if ($(this).hasClass('place')) {\n                    edit('place', id);\n                }\n                if ($(this).hasClass('date')) {\n                    edit('date', id);\n                }\n            <?php } ?>\n        });\n\n        $('#table-<?php echo $this->id; ?> tbody input:checkbox').change(function() {\n            if ($(this).attr('checked')) {\n                $(this).parents('tr').addClass('selected');\n            } else {\n                $(this).parents('tr').removeClass('selected');\n            }\n        });\n\n        $('#table-<?php echo $this->id; ?> thead input:checkbox').change(function() {\n            var main = $(this);\n            $('#table-<?php echo $this->id; ?> tbody input:checkbox').each(function() {\n                if (main.attr('checked')) {\n                    $(this).attr('checked', 'checked');\n                } else {\n                    $(this).removeAttr('checked');\n                }\n                $(this).change();\n            });\n        });\n\n        /**\n         * hack for loading fancy box for datatable elements\n         */\n        if( typeof newscoopMediaArchiveDataTable == 'function') {\n            newscoopMediaArchiveDataTable(this);\n        }\n    },\n\t'fnCookieCallback': function (sName, oData, sExpires, sPath) {\n        oData['abVisCols'] = []; // don't save visibility\n\t\treturn sName + \"=\"+JSON.stringify(oData)+\"; expires=\" + sExpires +\"; path=\" + sPath;\n\t},\n    <?php if ($this->items !== NULL) { // display all items ?>\n    'bPaging': false,\n    'iDisplayLength': <?php echo sizeof($this->items); ?>,\n    <?php } else { // no items - server side ?>\n    'bServerSide': true,\n    'sAjaxSource': '', // callServer handle\n    'bPaging': true,\n    'sPaginationType': 'full_numbers',\n    'fnServerData': function (sSource, aoData, fnCallback) {\n        aoData.push({ 'name': 'filter', 'value': $.smartlist_filter });\n        callServer(['<?php echo get_class($this); ?>', 'doData'], aoData, fnCallback);\n    },\n    <?php } ?>\n    <?php if ($this->colVis) { ?>\n    'oColVis': { // disable Show/hide column\n        'aiExclude': [0, 1],\n        'buttonText': '<?php echo $translator->trans('Show / hide columns', array(), 'library'); ?>',\n    },\n    <?php } ?>\n}).css('position', 'relative').css('width', '100%');\n\n});\n--></script>\n"
  },
  {
    "path": "newscoop/admin-files/libs/ContextList/ContextList.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/../BaseList/BaseList.php';\nrequire_once WWW_DIR . '/classes/GeoMap.php';\nrequire_once WWW_DIR . '/classes/Article.php';\n\n/**\n * Article list component\n */\nclass ContextList extends BaseList\n{\n    /** @var int */\n    protected $publication = 0;\n\n    /** @var int */\n    protected $issue = 0;\n\n    /** @var int */\n    protected $section = null;\n\n    /** @var int */\n    protected $language = null;\n\n    /** @var array */\n    protected $filters = array();\n\n    /** @var array */\n    protected $orderBy = array();\n\n    /** @var bool */\n    protected static $renderFilters = FALSE;\n\n    /** @var bool */\n    protected static $renderActions = FALSE;\n\n    /** @var string */\n    protected static $lastId = NULL;\n\n    /**\n     * @param bool $randomId\n     */\n    public function __construct($randomId = FALSE)\n    {\n        parent::__construct();\n\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        // generate id - unique per page instance\n        if (empty(self::$lastId)) {\n            self::$lastId = __FILE__;\n            if ($randomId) {\n                self::$lastId = uniqid();\n            }\n        }\n        $this->id = substr(sha1(self::$lastId), -6);\n        self::$lastId = $this->id;\n\n        // column titles\n        $this->cols = array(\n            'Number' => NULL,\n            'Language' => $translator->trans('Language'),\n            'Order' => $translator->trans('Order'),\n        );\n    }\n\n    /**\n     * Set publication.\n     * @param  int         $publication\n     * @return ArticleList\n     */\n    public function setPublication($publication)\n    {\n        $this->publication = empty($publication) ? NULL : (int) $publication;\n\n        return $this;\n    }\n\n    /**\n     * Set issue.\n     * @param  int         $issue\n     * @return ArticleList\n     */\n    public function setIssue($issue)\n    {\n        $this->issue = empty($issue) ? NULL : (int) $issue;\n\n        return $this;\n    }\n\n    /**\n     * Set section.\n     * @param  int         $section\n     * @return ArticleList\n     */\n    public function setSection($section)\n    {\n        $this->section = empty($section) ? NULL : (int) $section;\n\n        return $this;\n    }\n\n    /**\n     * Set language.\n     * @param  int         $language\n     * @return ArticleList\n     */\n    public function setLanguage($language)\n    {\n        $this->language = empty($language) ? 1 : (int) $language;\n\n        return $this;\n    }\n\n    /**\n     * Set filter.\n     * @param  string      $name\n     * @param  mixed       $value\n     * @return ArticleList\n     */\n    public function setFilter($name, $value)\n    {\n        $this->filters[$name] = $value;\n\n        return $this;\n    }\n\n    /**\n     * Set column to order by.\n     *\n     * @param  string      $column\n     * @param  string      $direction\n     * @return ArticleList\n     */\n    public function setOrderBy($column, $direction = 'asc')\n    {\n        if (!isset($this->cols[$column])) {\n            return $this;\n        }\n\n        $columnNo = array_search($column, array_keys($this->cols));\n        $this->orderBy[$columnNo] = strtolower($direction) == 'desc' ? 'desc' : 'asc';\n\n        return $this;\n    }\n\n    /**\n     * Render filters.\n     * @return ArticleList\n     */\n    public function renderFilters()\n    {\n        $this->beforeRender();\n\n        include dirname(__FILE__) . '/filters.php';\n        self::$renderFilters = TRUE;\n\n        return $this;\n    }\n\n    /**\n     * Render actions.\n     * @return ArticleList\n     */\n    public function renderActions()\n    {\n        $this->beforeRender();\n\n        include dirname(__FILE__) . '/actions.php';\n        self::$renderActions = TRUE;\n\n        return $this;\n    }\n\n    /**\n     * Render table.\n     * @return ArticleList\n     */\n    public function render()\n    {\n        $this->beforeRender();\n\n        include dirname(__FILE__) . '/table.php';\n        self::$renderTable = TRUE;\n        echo '</div><!-- /#list-' . $this->id . ' -->';\n\n        return $this;\n    }\n\n    /**\n     * Process item\n     * @param  Article $article\n     * @return array\n     */\n    public function processItem($article)\n    {\n        global $g_user, $Campsite;\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        return array(\n            $article->getArticleNumber(),\n            $article->getLanguageId(),\n            sprintf('\n                <div class=\"context-item\" langid=\"%s\">\n                    <div class=\"context-drag-topics\"><a href=\"#\" title=\"drag to sort\"></a></div>\n                    <div class=\"context-item-header\">\n                        <div class=\"context-item-date\">%s (%s) (%s)</div>\n                        <a href=\"#\" class=\"view-article\" onClick=\"viewArticle($(this).parent(\\'div\\').parent(\\'div\\').parent(\\'td\\').parent(\\'tr\\').attr(\\'id\\'), $(this).parents(\\'.context-item:eq(0)\\').attr(\\'langid\\'));\">%s</a>\n                    </div>\n                    <a href=\"javascript:void(0)\" class=\"corner-button\" style=\"display: none\" onClick=\"removeFromContext($(this).parent(\\'div\\').parent(\\'td\\').parent(\\'tr\\').attr(\\'id\\'));removeFromContext($(this).parents(\\'.item:eq(0)\\').attr(\\'id\\'));toggleDragZonePlaceHolder();\"><span class=\"ui-icon ui-icon-closethick\"></span></a>\n                    <div class=\"context-item-summary\">%s</div>\n                    </div>\n            ', $article->getLanguageId(), $article->getCreationDate(), $article->getWorkflowDisplayString(), $article->getType(), $translator->trans('View article', array(), 'library'), $article->getName()),\n        );\n    }\n\n    /**\n     * Handle data\n     * @param array $f_request\n     */\n\n    public function doData($f_request = null)\n    {\n        global $ADMIN_DIR, $g_user;\n        foreach ($_REQUEST['args'] as $arg) {\n            $_REQUEST[$arg['name']] = $arg['value'];\n        }\n\n        return require_once dirname(__FILE__) . '/do_data.php';\n    }\n\n    public function getFilterIssues()\n    {\n\n        global $ADMIN_DIR, $g_user;\n        require_once $GLOBALS['g_campsiteDir'] . '/classes/Publication.php';\n        require_once $GLOBALS['g_campsiteDir'] . '/classes/Issue.php';\n        require_once $GLOBALS['g_campsiteDir'] . '/classes/Section.php';\n        require_once $GLOBALS['g_campsiteDir'] . '/classes/Author.php';\n\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        foreach ($_REQUEST['args'] as $arg) {\n            $_REQUEST[$arg['name']] = $arg['value'];\n        }\n\n        if ($_REQUEST['publication'] > 0) {\n            $publication = $_REQUEST['publication'];\n        } else {\n            $publication = NULL;\n        }\n\n        if ($_REQUEST['language'] > 0) {\n            $language = $_REQUEST['language'];\n        } else {\n            $language = NULL;\n        }\n\n        $newIssues = array();\n        $issues = Issue::GetIssues($publication, $language);\n        $issuesNo = is_array($issues) ? sizeof($issues) : 0;\n        $menuIssueTitle = $issuesNo > 0 ? $translator->trans('All Issues', array(), 'library') : $translator->trans('No issues found', array(), 'library');\n        foreach ($issues as $issue) {\n            $newIssues[] = array('val' => $issue->getPublicationId().'_'.$issue->getIssueNumber().'_'.$issue->getLanguageId() , 'name' => $issue->getName());\n        }\n        $returns = array();\n        $returns['items'] = $newIssues;\n        $returns['itemsNo'] = $issuesNo;\n        $returns['menuItemTitle'] = $menuIssueTitle;\n\n        return json_encode($returns);\n\n    }\n\n    public function getFilterSections()\n    {\n        global $ADMIN_DIR, $g_user;\n        require_once $GLOBALS['g_campsiteDir'] . '/classes/Publication.php';\n        require_once $GLOBALS['g_campsiteDir'] . '/classes/Issue.php';\n        require_once $GLOBALS['g_campsiteDir'] . '/classes/Section.php';\n        require_once $GLOBALS['g_campsiteDir'] . '/classes/Author.php';\n\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        foreach ($_REQUEST['args'] as $arg) {\n            $_REQUEST[$arg['name']] = $arg['value'];\n        }\n\n        if ($_REQUEST['publication'] > 0) {\n            $publication = $_REQUEST['publication'];\n        } else {\n            $publication = NULL;\n        }\n\n        $language = NULL;\n        if ($_REQUEST['issue'] > 0) {\n            $issueArray = explode(\"_\",$_REQUEST['issue']);\n            $issue = $issueArray[1];\n            if (isset($issueArray[2])) {\n                $language = $issueArray[2];\n            }\n        } else {\n            $issue = NULL;\n        }\n\n        if ($_REQUEST['language'] > 0) {\n            $language = $_REQUEST['language'];\n        }\n\n        // get sections\n        $sections = array();\n        $section_objects = Section::GetSections($publication, $issue, $language);\n        foreach ($section_objects as $section) {\n            if (!isset($sections[$section->getSectionNumber()])) {\n                $sections[$section->getSectionNumber()] = $section;\n            }\n        }\n        $newSections = array();\n        foreach ($sections as $section) {\n            $newSections[] = array('val' => $section->getPublicationId().'_'.$section->getIssueNumber().'_'.$section->getLanguageId().'_'.$section->getSectionNumber(), 'name' => $section->getName());\n        }\n        $sectionsNo = is_array($newSections) ? sizeof($newSections) : 0;\n        $menuSectionTitle = $sectionsNo > 0 ? $translator->trans('All Sections', array(), 'library') : $translator->trans('No sections found', array(), 'library');\n\n        $returns = array();\n        $returns['items'] = $newSections;\n        $returns['itemsNo'] = $sectionsNo;\n        $returns['menuItemTitle'] = $menuSectionTitle;\n\n        return json_encode($returns);\n\n    }\n\n    /**\n     * Handle action\n     * @param  string $f_action\n     * @param  array  $f_items\n     * @param  array  $f_params\n     * @return void\n     */\n    public static function doAction($f_action, $f_items, $f_params = array())\n    {\n        global $ADMIN_DIR, $g_user, $Campsite, $ADMIN;\n\n        // this is used for some actions, but some do not have it defined at all\n        if (empty($f_target)) {\n            $f_target = '';\n        }\n\n        return require_once dirname(__FILE__) . '/do_action.php';\n    }\n\n    /**\n     * Handle order\n     * @param  array $f_order\n     * @param  int   $f_language\n     * @return void\n     */\n    public static function doOrder($f_order, $f_language)\n    {\n        global $ADMIN_DIR;\n\n        return require_once dirname(__FILE__) . '/do_order.php';\n    }\n\n    public function doPreview($f_language_id = 0, $_article_no = 0)\n    {\n    }\n}\n"
  },
  {
    "path": "newscoop/admin-files/libs/ContextList/actions.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\n?>\n<div class=\"actions\">\n<?php\n\tglobal $g_user;\n    $translator = \\Zend_Registry::get('container')->getService('translator');\n?>\n<fieldset class=\"actions\">\n    <legend><?php echo $translator->trans('Select action', array(), 'library'); ?></legend>\n    <select name=\"action\">\n        <option value=\"\">---</option>\n        <?php if ($g_user->hasPermission('Publish')) { ?>\n        <option value=\"workflow_publish\"><?php echo $translator->trans('Status: Publish', array(), 'library'); ?></option>\n        <?php } ?>\n        <option value=\"workflow_submit\"><?php echo $translator->trans('Status: Submit', array(), 'library'); ?></option>\n        <option value=\"workflow_new\"><?php echo $translator->trans('Status: Set New', array(), 'library'); ?></option>\n        <option value=\"switch_onfrontpage\"><?php echo $translator->trans(\"Toggle: On Front Page\", array(), 'library'); ?></option>\n        <option value=\"switch_onsectionpage\"><?php echo $translator->trans(\"Toggle: On Section Page\", array(), 'library'); ?></option>\n        <option value=\"switch_comments\"><?php echo $translator->trans(\"Toggle: Comments\", array(), 'library'); ?></option>\n        <?php if ($this->publication > 0 && $this->issue > 0 && $this->section > 0) { ?>\n        <option value=\"publish_schedule\"><?php echo $translator->trans('Publish Schedule', array(), 'library'); ?></option>\n        <?php } ?>\n        <option value=\"unlock\"><?php echo $translator->trans('Unlock'); ?></option>\n        <?php if ($g_user->hasPermission('DeleteArticle')) { ?>\n        <option value=\"delete\"><?php echo $translator->trans('Delete'); ?></option>\n        <?php } ?>\n        <option value=\"duplicate\"><?php echo $translator->trans('Duplicate'); ?></option>\n        <option value=\"duplicate_interactive\"><?php echo $translator->trans('Duplicate to another section', array(), 'library'); ?></option>\n        <option value=\"move\"><?php echo $translator->trans('Move'); ?></option>\n    </select>\n</fieldset>\n</div><!-- /.smartlist-actions -->\n\n<?php if (!self::$renderActions) { ?>\n<script type=\"text/javascript\">\n$(document).ready(function() {\n\n// check all/none\n$('.smartlist thead input:checkbox').change(function() {\n    var smartlist = $(this).closest('.smartlist');\n    var checked = (typeof $(this).attr(\"checked\") === 'undefined') ? false : true;\n    $('tbody input:checkbox', smartlist).each(function() {\n        $(this).attr('checked', checked);\n        if (checked) {\n            $(this).parents('tr').addClass('selected');\n        } else {\n            $(this).parents('tr').removeClass('selected');\n        }\n    });\n});\n\n// actions handle\n$('.smartlist .actions select').change(function() {\n    var smartlist = $(this).closest('.smartlist');\n    var action = $(this).val();\n    $(this).val('');\n\n    var items = [];\n    $('tbody input:checkbox:checked', smartlist).each(function() {\n        items.push($(this).attr('name'));\n    });\n\n    if (items.length == 0) {\n        flashMessage('<?php echo $translator->trans('Select some article first.', array(), 'library'); ?>', 'error');\n        return;\n    }\n\n    params = [];\n    if (action == 'delete') {\n        if (!confirm('<?php echo $translator->trans('Are you sure you want to delete selected articles?', array(), 'library'); ?>')) {\n            return;\n        }\n    } else if (action == 'move'\n        || action == 'duplicate_interactive'\n        || action == 'publish_schedule') {\n        params = {\n            'f_publication_id': <?php echo (int) $this->publication; ?>,\n            'f_issue_number': <?php echo (int) $this->issue; ?>,\n            'f_section_number': <?php echo (int) $this->section; ?>,\n            'f_language_id': <?php echo (int) $this->language; ?>,\n        }\n    }\n\n    callServer(['ArticleList', 'doAction'], [\n        action,\n        items,\n        params,\n        ], function(data) {\n    \t\tvar dataJson = eval('(' + data + ')');\n            if (action == 'duplicate_interactive'\n                || action == 'move'\n                || action == 'publish_schedule') {\n                window.location = dataJson.hiperlink; // redirect\n            }\n\t\t\tvar messages = dataJson.messages;\n\n\t\t\tvar sentFlash = false;\n\t\t\tfor(var i=0; i< messages.length; i++) {\n\t\t\t\tvar message = messages[i];\n\t\t\t\tif(message.no > 0) {\n\t\t\t\t\tvar flashType = '';\n\t\t\t\t\tvar textMessage = message.textMessage;\n\t\t\t\t\tif(message.status == 'notAffected') {\n\t\t\t\t\t\tflashType = 'error';\n\t\t\t\t\t}\n\t\t\t\t\tif(sentFlash == true) {\n\t\t\t\t\t\tsetTimeout(function() {\n\t\t\t\t\t\t\tflashMessage(message.textMessage, flashType);\n\t\t\t\t\t\t},3000);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tflashMessage(textMessage, flashType);\n\t\t\t\t\t}\n\t\t\t\t\tsentFlash = true;\n\t\t\t\t}\n\t\t\t}\n\n            var smartlistId = smartlist.attr('id').split('-')[1];\n            tables[smartlistId].fnDraw(true);\n\n            $('.datatable th input:checkbox').attr('checked', false);\n        }\n    );\n});\n\n});\n\n</script>\n<?php } ?>\n"
  },
  {
    "path": "newscoop/admin-files/libs/ContextList/do_action.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once $GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/article_common.php\";\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n$f_language_selected = (int) camp_session_get('f_language_selected', 0);\n\n$success = false;\n$message = $translator->trans('Access denied.', array(), 'library'); // default error\n$hiperlink = '';\n\n$affectedArticles = 0;\n$notAffectedArticles = 0;;\n\n$message = '';\n$errorMessage = '';\n\n$articleCodes = array();\n$flatArticleCodes = array();\n$groupedArticleCodes = array();\nforeach ($f_items as $articleCode) {\n    list($articleId, $languageId) = explode('_', $articleCode);\n    $articleCodes[] = array(\"article_id\" => $articleId, \"language_id\" => $languageId);\n    $flatArticleCodes[] = $articleId . '_' . $languageId;\n    $groupedArticleCodes[$articleId][$languageId] = $languageId;\n}\n\n/*\nfunction returnJson($status = 'true', $message = 'Articles updated.', $hiperlink = '') {\n\t$returnJson = array();\n\t$returnJson['status'] = $status;\n\t$returnJson['message'] = $message;\n\t$returnJson['hiperlink'] = $hiperlink;\n\treturn json_encode($returnJson);\n}\n*/\n\nfunction buildMessage($status, $no, $message) {\n\t$messageArray = array();\n\t$messageArray['status'] = $status;\n\t$messageArray['no'] = $no;\n\t$messageArray['textMessage'] = $message;\n\treturn $messageArray;\n\n}\n\nfunction returnJson($affectedNo, $message, $notAffectedNo, $errorMessage, $hiperlink) {\n\t$returnJson = array();\n\t$returnJson['hiperlink'] = $hiperlink;\n\n\t$returnJson['messages'][] = buildMessage('affected', $affectedNo, $message);\n\t$returnJson['messages'][] = buildMessage('notAffected', $notAffectedNo, $errorMessage);\n\treturn json_encode($returnJson);\n}\n\nswitch($f_action) {\ncase 'delete':\n    if (!$g_user->hasPermission('DeleteArticle')) {\n        $success = false;\n        $data->error = $translator->trans('You do not have the right to delete articles.', array(), 'library');\n        break;\n    }\n    $affectedArticles = 0;\n    $notAffectedArticles = 0;\n    foreach ($articleCodes as $articleCode) {\n        $article = new Article($articleCode['language_id'], $articleCode['article_id']);\n        if ($article->delete()) {\n            $success = true;\n            $affectedArticles += 1;\n        } else {\n        \t$notAffectedArticles += 1;\n        }\n    }\n\n\n\n    $message = $translator->trans(\"$1 articles have been removed\", array('$1' => $affectedArticles), 'library');\n    $errorMessage = $translator->trans(\"$1 articles have not been removed\", array('$1' => $notAffectedArticles), 'library');\n\n\n    break;\ncase \"workflow_publish\":\n    if (!$g_user->hasPermission('Publish')) {\n        $success = false;\n        $data->error = $translator->trans('You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.', array(), 'library');\n        break;\n    }\n    foreach ($articleCodes as $articleCode) {\n        $articleObj = new Article($articleCode['language_id'], $articleCode['article_id']);\n        if ($articleObj->setWorkflowStatus('Y')) {\n            $success = true;\n            $affectedArticles += 1;\n        } else {\n        \t$notAffectedArticles += 1;\n        }\n    }\n\n    $message = $translator->trans(\"Article status set to $1 for $2 articles\", array('$1' => $translator->trans(\"Published\"), '$2' => $affectedArticles), 'library');\n    $errorMessage = $translator->trans(\"Article status not set to $1 for $2 articles\",  array('$1' => $translator->trans(\"Published\"), '$2' => $notAffectedArticles), 'library');\n\n\n    break;\ncase 'workflow_submit':\n    foreach ($articleCodes as $articleCode) {\n        $articleObj = new Article($articleCode['language_id'], $articleCode['article_id']);\n        if ($g_user->hasPermission(\"Publish\") || $articleObj->userCanModify($g_user)) {\n            if ($articleObj->setWorkflowStatus('S')) {\n                $success = true;\n                $affectedArticles += 1;\n            } else {\n\t        \t$notAffectedArticles += 1;\n\t        }\n        } else {\n        \t$notAffectedArticles += 1;\n        }\n    }\n\n    $message = $translator->trans(\"Article status set to $1 for $2 articles\", array('$1' => $translator->trans(\"Submitted\"), '$2' => $affectedArticles), 'library');\n    $errorMessage = $translator->trans(\"Article status not set to $1 for $2 articles\", array('$1' => $translator->trans(\"Submitted\"), '$2' => $notAffectedArticles), 'library');\n\n\n    break;\ncase 'workflow_new':\n    foreach ($articleCodes as $articleCode) {\n        $articleObj = new Article($articleCode['language_id'], $articleCode['article_id']);\n        if ($g_user->hasPermission(\"Publish\")\n                || ($g_user->hasPermission('ChangeArticle') && ($articleObj->getWorkflowStatus() == 'S'))) {\n            if ($articleObj->setWorkflowStatus('N')) {\n                $success = true;\n                $affectedArticles += 1;\n            } else {\n\t        \t$notAffectedArticles += 1;\n\t        }\n        } else {\n\t        \t$notAffectedArticles += 1;\n\t        }\n    }\n\n    $message = $translator->trans(\"Article status set to $1 for $2 articles\", array('$1' => $translator->trans(\"New\"), '$2' => $affectedArticles), 'library');\n    $errorMessage = $translator->trans(\"Article status set to $1 for $2 articles\", array('$1' => $translator->trans(\"New\"), '$2' => $affectedArticles), 'library');\n\n    break;\ncase 'switch_onfrontpage':\n    foreach ($articleCodes as $articleCode) {\n        $articleObj = new Article($articleCode['language_id'], $articleCode['article_id']);\n        if ($articleObj->userCanModify($g_user)) {\n            if ($articleObj->setOnFrontPage(!$articleObj->onFrontPage())) {\n                $success = true;\n                $affectedArticles += 1;\n            } else {\n\t        \t$notAffectedArticles += 1;\n\t        }\n        } else {\n        \t$notAffectedArticles += 1;\n        }\n    }\n\n    $message = $translator->trans(\"$1 toggled for $2 articles.\", array('$1' => \"&quot;\".$translator->trans(\"On Front Page\").\"&quot;\", '$2' => $affectedArticles), 'library');\n    $errorMessage = $translator->trans(\"$1 not toggled for $2 articles.\", array('$1' => \"&quot;\".$translator->trans(\"On Front Page\").\"&quot;\", '$2' => $notAffectedArticles), 'library');\n\n    break;\ncase 'switch_onsectionpage':\n\n\t$affectedArticles = 0;\n\t$notAffectedArticles = 0;\n\n    foreach ($articleCodes as $articleCode) {\n        $articleObj = new Article($articleCode['language_id'], $articleCode['article_id']);\n        if ($articleObj->userCanModify($g_user)) {\n            if ($articleObj->setOnSectionPage(!$articleObj->onSectionPage())) {\n                $success = true;\n                $affectedArticles += 1;\n            } else {\n            \t$notAffectedArticles += 1;\n            }\n        } else {\n        \t$notAffectedArticles += 1;\n        }\n    }\n\n    $message = $translator->trans(\"$1 toggled for $2 articles.\", array('$1' => \"&quot;\".$translator->trans(\"On Section Page\").\"&quot;\", '$2' => $affectedArticles), 'library');\n    $errorMessage = $translator->trans(\"$1 not toggled for $2  articles.\", array('$1' => \"&quot;\".$translator->trans(\"On Section Page\").\"&quot;\", '$2' => $notAffectedArticles), 'library');\n\n\n    break;\ncase 'switch_comments':\n    foreach ($articleCodes as $articleCode) {\n        $articleObj = new Article($articleCode['language_id'], $articleCode['article_id']);\n        if ($articleObj->userCanModify($g_user)) {\n            if ($articleObj->setCommentsEnabled(!$articleObj->commentsEnabled())) {\n                $success = true;\n                $affectedArticles += 1;\n            } else {\n            \t$notAffectedArticles += 1;\n            }\n        } else {\n            $notAffectedArticles += 1;\n        }\n    }\n\n    $message = $translator->trans(\"$1 toggled for $2 articles.\", array('$1' => \"&quot;\".$translator->trans(\"Comments\").\"&quot;\", '$2' => $affectedArticles), 'library');\n    $errorMessage = $translator->trans(\"$1 not toggled for $2 articles.\", array('$1' => \"&quot;\".$translator->trans(\"Comments\").\"&quot;\", '$2' => $notAffectedArticles), 'library');\n\n    break;\ncase 'unlock':\n    foreach ($articleCodes as $articleCode) {\n        $articleObj = new Article($articleCode['language_id'], $articleCode['article_id']);\n        if ($articleObj->userCanModify($g_user)) {\n            $articleObj->setIsLocked(false);\n            $success = true;\n            $affectedArticles += 1;\n        } else {\n           \t$notAffectedArticles += 1;\n        }\n    }\n\n    $message = $translator->trans(\"$1 Article(s) unlocked\", array('$1' => $affectedArticles), 'library');\n    $errorMessage = $translator->trans(\"$1 Article(s) not unlocked\", array('$1' => $notAffectedArticles), 'library');\n\n    break;\ncase 'duplicate':\n    foreach ($groupedArticleCodes as $articleNumber => $languageArray) {\n        $languageId = camp_array_peek($languageArray);\n        $articleObj = new Article($languageId, $articleNumber);\n        $articleObj->copy($articleObj->getPublicationId(),\n                          $articleObj->getIssueNumber(),\n                          $articleObj->getSectionNumber(),\n                          $g_user->getUserId(),\n                          $languageArray);\n        $success = true;\n        $affectedArticles += 1;\n    }\n\n    $message = $translator->trans(\"$1 Article(s) duplicated\", array('$1' => $affectedArticles), 'library');\n\n    break;\n\ncase 'duplicate_interactive':\ncase 'move':\n    $args = array_merge($_REQUEST, $f_params);\n    unset($args[\"f_article_code\"]);\n    $argsStr = camp_implode_keys_and_values($args, \"=\", \"&\");\n    $argsStr .= '&f_mode=multi&f_action=';\n    $argsStr .= $f_action == 'move' ? 'move' : 'duplicate';\n    $argsStr .= '&f_language_selected=' . ( (int) camp_session_get('f_language_selected', 0));\n    foreach ($flatArticleCodes as $articleCode) {\n        $argsStr .= '&f_article_code[]=' . $articleCode;\n    }\n\n\treturn returnJson(0, '', 0, '',  $Campsite['WEBSITE_URL'] . \"/admin/articles/duplicate.php?\".$argsStr);\n    break;\n\ncase 'publish_schedule':\n    $args = array_merge($_REQUEST, $f_params);\n    $argsStr = camp_implode_keys_and_values($args, \"=\", \"&\");\n    $argsStr .= '&f_language_selected=' . ( (int) camp_session_get('f_language_selected', 0));\n    foreach ($flatArticleCodes as $articleCode) {\n        $argsStr .= '&f_article_code[]=' . $articleCode;\n    }\n    return returnJson(0, '', 0, '',  $Campsite['WEBSITE_URL'] . \"/admin/articles/multi_autopublish.php?\".$argsStr);\n    break;\n}\n\n\n\nif ($f_target == 'art_ofp') {\n    $value = ($f_value == 'Yes') ? true : false;\n    $success = $articleObj->setOnFrontPage($value);\n    $message = $translator->trans(\"$1 toggled.\", array('$1' => \"&quot;\".$translator->trans(\"On Front Page\").\"&quot;\"), 'library');\n}\nif ($f_target == 'art_osp') {\n    $value = ($f_value == 'Yes') ? true : false;\n    $success = $articleObj->setOnSectionPage($value);\n    $message = $translator->trans(\"$1 toggled.\", array('$1' => \"&quot;\".$translator->trans(\"On Section Page\").\"&quot;\"), 'library');\n}\nif ($f_target == 'art_status') {\n    if (in_array($f_value, array('Published', 'Submitted', 'New'))) {\n        switch($f_value) {\n        case 'New': $f_value = 'N'; break;\n        case 'Published': $f_value = 'Y'; break;\n        case 'Submitted': $f_value = 'S'; break;\n        }\n        $access = false;\n        // A publisher can change the status in any way he sees fit.\n        // Someone who can change an article can submit/unsubmit articles.\n        // A user who owns the article may submit it.\n        if ($g_user->hasPermission('Publish')\n                || ($g_user->hasPermission('ChangeArticle') && ($f_value != 'Y'))\n                || ($articleObj->userCanModify($g_user) && ($f_value == 'S') )) {\n            $access = true;\n        }\n\n        // If the article is not yet categorized, force it to be before publication.\n        if (($f_action_workflow == \"Y\")\n                && (($articleObj->getPublicationId() == 0)\n                || ($articleObj->getIssueNumber() == 0) || ($articleObj->getSectionNumber() == 0))) {\n            //$args = $_REQUEST;\n            //$argsStr = camp_implode_keys_and_values($_REQUEST, \"=\", \"&\");\n            //$argsStr .= \"&f_article_code[]=\".$f_article_number.\"_\".$f_language_selected;\n            //$argsStr .= \"&f_mode=single&f_action=publish\";\n            //camp_html_goto_page(\"/$ADMIN/articles/duplicate.php?\".$argsStr);\n        }\n\n        $success = $articleObj->setWorkflowStatus($f_value);\n\n        $message = $translator->trans(\"Article status set to $1\", array('$1' => $articleObj->getWorkflowDisplayString($f_value)), 'library');\n    }\n}\n\nif($affectedArticles == 0 && $success) {\n\t$affectedArticles = 1;\n}\n\nreturn returnJson($affectedArticles, $message, $notAffectedArticles, $errorMessage, $hiperlink);\n"
  },
  {
    "path": "newscoop/admin-files/libs/ContextList/do_data.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/ContextList.php';\nrequire_once WWW_DIR . '/classes/Article.php';\n\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleType.php');\n\n// start >= 0\n$start = max(0,\n    empty($_REQUEST['iDisplayStart']) ? 0 : (int) $_REQUEST['iDisplayStart']);\n\n\n// results num >= 10 && <= 100\n$limit = min(100, min(10,\n    empty($_REQUEST['iDisplayLength']) ? 0 : (int) $_REQUEST['iDisplayLength']));\n\n\n// filters - common\n$articlesParams = array();\n$filters = array(\n    'publication' => array('is', 'integer'),\n    'issue' => array('is', 'integer'),\n    'section' => array('is', 'integer'),\n    'language' => array('is', 'integer'),\n    'publish_date' => array('is', 'date'),\n    'publish_date_from' => array('greater_equal', 'date'),\n    'publish_date_to' => array('smaller_equal', 'date'),\n    'author' => array('is', 'integer'),\n    'topic' => array('is', 'integer'),\n    'workflow_status' => array('is', 'string'),\n    'creator' => array('is', 'integer'),\n    'type' => array('is', 'string')\n);\n\n// mapping form name => db name\n$fields = array(\n    'publish_date_from' => 'publish_date',\n    'publish_date_to' => 'publish_date',\n    'language' => 'idlanguage',\n    'creator' => 'iduser',\n);\n\n//fix for the new issue filters\nif( isset($_REQUEST['issue']) ) {\n\tif($_REQUEST['issue'] != 0) {\n\t\t$issueFiltersArray = explode('_', $_REQUEST['issue']);\n\t\tif(count($issueFiltersArray) > 1) {\n\t\t\t$_REQUEST['publication'] = $issueFiltersArray[0];\n\t\t\t$_REQUEST['issue'] = $issueFiltersArray[1];\n\t\t\t$_REQUEST['language'] = $issueFiltersArray[2];\n\t\t}\n\t}\n}\n//fix for the new section filters\nif( isset($_REQUEST['section']) ) {\n\tif($_REQUEST['section'] != 0) {\n\t\t$sectionFiltersArray = explode('_', $_REQUEST['section']);\n\t\tif(count($sectionFiltersArray) > 1) {\n\t\t\t$_REQUEST['publication'] = $sectionFiltersArray[0];\n\t\t\t$_REQUEST['language'] = $sectionFiltersArray[2];\n\t\t\t$_REQUEST['section'] = $sectionFiltersArray[3];\n\t\t}\n\t}\n}\n\nforeach ($filters as $name => $opts) {\n    if (!empty($_REQUEST[$name])) {\n        $field = !empty($fields[$name]) ? $fields[$name] : $name;\n        $articlesParams[] = new ComparisonOperation($field, new Operator($opts[0], $opts[1]), $_REQUEST[$name]);\n    }\n}\n\nif (empty($_REQUEST['showtype']) || $_REQUEST['showtype'] == \"false\") {\n\n    foreach((array) \\ArticleType::GetArticleTypes(true) as $one_art_type_name) {\n        $one_art_type = new \\ArticleType($one_art_type_name);\n        if ($one_art_type->getFilterStatus()) {\n            $articlesParams[] = new ComparisonOperation('type', new Operator('not', 'string'), $one_art_type->getTypeName());\n        }\n    }\n\n}\n\n// filter out PrintDesk articles\n$articlesParams[] = new ComparisonOperation('type', new Operator('not', 'string'), 'printdesk');\n\n// search\nif (isset($_REQUEST['sSearch']) && strlen($_REQUEST['sSearch']) > 0) {\n    $search_phrase = $_REQUEST['sSearch'];\n    //$articlesParams[] = new ComparisonOperation('search_phrase', new Operator('is', 'integer'), $search_phrase);\n    $articlesParams[] = new ComparisonOperation('search_phrase', new Operator('like', 'string'), \"__match_all.\".$search_phrase);\n}\n\n// sorting\n$sortOptions = array(\n    0 => 'bynumber',\n    2 => 'bysectionorder',\n    3 => 'byname',\n    12 => 'bycomments',\n    13 => 'bypopularity',\n    16 => 'bycreationdate',\n    17 => 'bypublishdate',\n);\n\n$sortBy = 'bysectionorder';\n$sortDir = 'asc';\n$sortingCols = min(1, (int) $_REQUEST['iSortingCols']);\nfor ($i = 0; $i < $sortingCols; $i++) {\n    $sortOptionsKey = (int) $_REQUEST['iSortCol_' . $i];\n    if (!empty($sortOptions[$sortOptionsKey])) {\n        $sortBy = $sortOptions[$sortOptionsKey];\n        $sortDir = $_REQUEST['sSortDir_' . $i];\n        break;\n    }\n}\n\n// get articles\n$articles = Article::GetList($articlesParams, array(array('field' => $sortBy, 'dir' => $sortDir)), $start, $limit, $articlesCount, true);\n\n$list = new ContextList(TRUE);\n$return = array();\nforeach($articles as $article) {\n    $return[] = $list->processItem($article);\n}\n\n\nreturn array(\n    'iTotalRecords' => Article::GetTotalCount(),\n    'iTotalDisplayRecords' => $articlesCount,\n    'sEcho' => (int) $_REQUEST['sEcho'],\n    'aaData' => $return,\n);\n"
  },
  {
    "path": "newscoop/admin-files/libs/ContextList/do_order.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/article_common.php\");\n\n$article = new Article();\nforeach ($f_order as $order => $item) {\n    list($prefix, $articleId) = explode('_', $item);\n    $article->Article($f_language, $articleId);\n    $article->setProperty('ArticleOrder', $order + 1);\n}\n\nreturn TRUE;\n"
  },
  {
    "path": "newscoop/admin-files/libs/ContextList/filters.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once $GLOBALS['g_campsiteDir'] . '/classes/Publication.php';\nrequire_once $GLOBALS['g_campsiteDir'] . '/classes/Issue.php';\nrequire_once $GLOBALS['g_campsiteDir'] . '/classes/Section.php';\nrequire_once $GLOBALS['g_campsiteDir'] . '/classes/Author.php';\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n// get publications\n$publications = Publication::GetPublications();\n$publicationsNo = is_array($publications) ? sizeof($publications) : 0;\n$menuPubTitle = $publicationsNo > 0 ? $translator->trans('All Publications', array(), 'library') : $translator->trans('No publications found', array(), 'library');\n\n// get issues\n$issues = Issue::GetIssues($this->publication, NULL);\n$issuesNo = is_array($issues) ? sizeof($issues) : 0;\n$menuIssueTitle = $issuesNo > 0 ? $translator->trans('All Issues', array(), 'library') : $translator->trans('No issues found', array(), 'library');\n\n$articleTypes = ArticleType::GetArticleTypes(true);\n\n// get sections\n$sections = array();\n$section_objects = Section::GetSections($this->publication, $this->issue, $this->language);\n\nforeach ($section_objects as $section) {\n    if (!isset($sections[$section->getSectionNumber()])) {\n        $sections[$section->getSectionNumber()] = $section;\n    }\n}\n\n$sectionsNo = is_array($sections) ? sizeof($sections) : 0;\n$menuSectionTitle = $sectionsNo > 0 ? $translator->trans('All Sections', array(), 'library') : $translator->trans('No sections found', array(), 'library');\n\n?>\n<script type=\"text/javascript\">\n//for use in table for default filters\ncontextListFilters = {}\n</script>\n<div class=\"filters\">\n<fieldset class=\"filters\"><legend><?php echo $translator->trans('Filter', array(), 'library'); ?></legend> <select\n    name=\"publication\" id=\"publication_filter\">\n    <?php if ($publicationsNo > 0) { ?>\n    <option value=\"0\"><?php p($menuPubTitle); ?></option>\n    <?php foreach ($publications as $tmpPublication) { ?>\n    <option value=\"<?php echo $tmpPublication->getPublicationId(); ?>\"><?php echo htmlspecialchars($tmpPublication->getName()); ?></option>\n    <?php }\n    } ?>\n</select> <select name=\"issue\" id=\"issue_filter\">\n<?php if ($issuesNo > 0) { ?>\n    <option value=\"0\"><?php p($menuIssueTitle); ?></option>\n    <?php foreach ($issues as $issue) { ?>\n    <option\n        value=\"<?php echo $issue->getPublicationId().'_'.$issue->getIssueNumber().'_'.$issue->getLanguageId(); ?>\"><?php echo htmlspecialchars($issue->getName()); ?></option>\n        <?php }\n} ?>\n</select> <select name=\"section\" id=\"section_filter\">\n<?php if ($sectionsNo > 0) { ?>\n    <option value=\"0\"><?php p($menuSectionTitle); ?></option>\n    <?php foreach ($sections as $section) { ?>\n    <option\n        value=\"<?php echo $section->getPublicationId().'_'.$section->getIssueNumber().'_'.$section->getLanguageId().'_'.$section->getSectionNumber(); ?>\"><?php echo htmlspecialchars($section->getName()); ?></option>\n        <?php }\n} ?>\n</select>\n\n<div>\n    <input type=\"checkbox\" name=\"showtype\" value=\"with_filtered\" id=\"display_filtered_types\" />\n    <label for=\"display_filtered_types\"><?php echo $translator->trans(\"Show hidden Article Types?\", array(), 'library'); ?></label>\n</div>\n\n<?php foreach ($this->filters as $filterName => $filterValue) : ?>\n    <?php switch ($filterName) :\n        case 'type' :\n            require_once $GLOBALS['g_campsiteDir'] . '/classes/ArticleType.php';\n            ?>\n            <!-- Type filter -->\n            <select name=\"type\" id=\"type_filter\">\n                <option value=\"\"><?php echo $translator->trans('Select type', array(), 'library'); ?></option>\n                <?php if (count($articleTypes)) foreach ($articleTypes as $atype) : ?>\n                    <option <?php if (strtolower($atype)==$filterValue) : ?>selected=\"selected\"<?php endif ?>\">\n                        <?php echo htmlspecialchars($atype) ?>\n                    </option>\n                <?php endforeach; ?>\n            </select>\n            <script type=\"text/javascript\">\n                var typeVal = $('#type_filter').val();\n                if (typeVal != '') contextListFilters.type = typeVal;\n            </script>\n            <?php break ?>\n    <?php endswitch ?>\n<?php endforeach ?>\n<div class=\"extra\">\n\n<dl>\n    <dt><label for=\"filter_date\"><?php echo $translator->trans('Publish date', array(), 'library'); ?></label></dt>\n    <dd><input id=\"filter_date\" type=\"text\" name=\"publish_date\"\n        class=\"date\" /></dd>\n</dl>\n<dl>\n    <dt><label for=\"filter_from\"><?php echo $translator->trans('Published after', array(), 'library'); ?></label></dt>\n    <dd><input id=\"filter_from\" type=\"text\" name=\"publish_date_from\"\n        class=\"date\" /></dd>\n</dl>\n<dl>\n    <dt><label for=\"filter_to\"><?php echo $translator->trans('Published before', array(), 'library'); ?></label></dt>\n    <dd><input id=\"filter_to\" type=\"text\" name=\"publish_date_to\"\n        class=\"date\" /></dd>\n</dl>\n<dl>\n    <dt><label for=\"filter_author\"><?php echo $translator->trans('Author'); ?></label></dt>\n    <dd><input type=\"hidden\" name=\"author\" id=\"filter_author\" class=\"select2\" data-placeholder=\"<?php echo $translator->trans('Search for authors', array(), 'authors'); ?>\" data-contenturl=\"/admin/authors/get\" /></dd>\n</dl>\n<dl>\n    <dt><label for=\"filter_creator\"><?php echo $translator->trans('Creator', array(), 'library'); ?></label></dt>\n    <dd><input type=\"hidden\" name=\"creator\" id=\"filter_creator\" class=\"select2\" data-placeholder=\"<?php echo $translator->trans('Search for creators', array(), 'library'); ?>\" data-contenturl=\"/admin/users/load\" /></dd>\n</dl>\n<dl>\n    <dt><label for=\"filter_status\"><?php echo $translator->trans('Status'); ?></label></dt>\n    <dd><select name=\"workflow_status\">\n        <option value=\"\"><?php echo $translator->trans('All'); ?></option>\n        <option value=\"published\"><?php echo $translator->trans('Published'); ?></option>\n        <option value=\"new\"><?php echo $translator->trans('New'); ?></option>\n        <option value=\"submitted\"><?php echo $translator->trans('Submitted'); ?></option>\n        <option value=\"withissue\"><?php echo $translator->trans('Publish with issue'); ?></option>\n    </select></dd>\n</dl>\n<dl>\n    <dt><label for=\"filter_topic\"><?php echo $translator->trans('Topic'); ?></label></dt>\n    <dd><input type=\"hidden\" name=\"topic\" id=\"filter_topic\" class=\"select2\" data-placeholder=\"<?php echo $translator->trans('Search for topics', array(), 'topics'); ?>\" data-contenturl=\"/admin/topics/get\" /></dd>\n</dl>\n<dl>\n    <dt><label for=\"filter_language\"><?php echo $translator->trans('Language'); ?></label></dt>\n    <dd><select id=\"filter_name\" name=\"language\">\n        <option value=\"\"><?php echo $translator->trans('All'); ?></option>\n        <?php foreach (Language::GetLanguages() as $language) { ?>\n        <option value=\"<?php echo $language->getLanguageId(); ?>\"><?php echo htmlspecialchars($language->getNativeName()); ?></option>\n        <?php } ?>\n    </select></dd>\n</dl>\n</div>\n</fieldset>\n</div>\n<!-- /.smartlist-filters -->\n\n        <?php if (!self::$renderFilters) { ?>\n<link type=\"text/css\" rel=\"stylesheet\" href=\"/js/select2/select2.css\"></link>\n<script type=\"text/javascript\" src=\"/js/select2/select2.js\"></script>\n<script type=\"text/javascript\">\n\nfunction handleArgs()\n{\n    if ($('#filter_name').val() < 0) {\n        langId = 0;\n    } else {\n        langId = $('#filter_name').val();\n    }\n\n    if ($('#publication_filter').val() < 0) {\n        publicationId = 0;\n    } else {\n        publicationId = $('#publication_filter').val();\n    }\n\n    if ($('#issue_filter').val() < 0) {\n        issueId = 0;\n    } else {\n        issueId = $('#issue_filter').val();\n    }\n\n    args = new Array();\n    args.push({\n        'name': 'language',\n        'value': langId\n    });\n    args.push({\n        'name': 'publication',\n        'value': publicationId\n    });\n    args.push({\n        'name': 'issue',\n        'value': issueId\n    });\n\n    return args;\n}\n\nfunction handleFilterIssues(args)\n{\n    var args = eval('(' + args + ')');\n    $('#issue_filter >option').remove();\n    $('#issue_filter').append($(\"<option></option>\").val('0').html(args.menuItemTitle));\n\n    var items = args.items;\n    for (var i=0; i < items.length; i++) {\n        var item = items[i];\n        $('#issue_filter').append($(\"<option></option>\").val(item.val).html(item.name));\n    }\n}\n\nfunction handleFilterSections(args)\n{\n    var args = eval('(' + args + ')');\n    $('#section_filter >option').remove();\n    $('#section_filter').append($(\"<option></option>\").val('0').html(args.menuItemTitle));\n\n    var items = args.items;\n    for (var i=0; i < items.length; i++) {\n        var item = items[i];\n        $('#section_filter').append($(\"<option></option>\").val(item.val).html(item.name));\n    }\n}\n\nfunction refreshFilterIssues()\n{\n    var args = handleArgs();\n    callServer(['ArticleList', 'getFilterIssues'], args, handleFilterIssues);\n}\n\nfunction refreshFilterSections()\n{\n    var args = handleArgs();\n    callServer(['ArticleList', 'getFilterSections'], args, handleFilterSections);\n}\n\n$(document).ready(function () {\n//handle language change first\n$('#filter_name').change(function () {\n    refreshFilterIssues();\n    refreshFilterSections();\n})\n\n$('#publication_filter').change(function () {\n    refreshFilterIssues();\n    refreshFilterSections();\n})\n\n$('#issue_filter').change(function () {\n    var smartlist = $(this).closest('.smartlist');\n    var smartlistId = smartlist.attr('id').split('-')[1];\n    filters[smartlistId]['section'] = 0;\n    refreshFilterSections();\n})\n\n// filters handle\n$('.smartlist .filters select, .smartlist .filters input').change(function () {\n    var smartlist = $(this).closest('.smartlist');\n    var smartlistId = smartlist.attr('id').split('-')[1];\n    var name = $(this).attr('name');\n    var value = $(this).val();\n    filters[smartlistId][name] = value;\n    if ($(this).attr('id') == 'filter_name' || $(this).attr('id') == 'publication_filter' ) {\n        filters[smartlistId]['issue'] = 0;\n        filters[smartlistId]['section'] = 0;\n    }\n    if ($(this).attr('id') == 'display_filtered_types') {\n        filters[smartlistId]['showtype'] = $(this).attr('checked') ? 'with_filtered' : '';\n    }\n    tables[smartlistId].fnDraw(true);\n\n    return false;\n});\n\n// datepicker for dates\n$('input.date').datepicker({\n    dateFormat: 'yy-mm-dd',\n    maxDate: '+0d',\n});\n\n// filters managment\n$('fieldset.filters .extra').each(function () {\n    var extra = $(this);\n    $('dl', extra).hide();\n    $('<select class=\"filters\"></select>')\n        .appendTo(extra)\n        .each(function () { // init options\n            var select = $(this);\n            $('<option value=\"\"><?php echo $translator->trans('Filter by...', array(), 'library'); ?></option>')\n                .appendTo(select);\n            $('dl dt label', extra).each(function () {\n                var label = $(this).text();\n                $('<option value=\"'+label+'\">'+label+'</option>')\n                    .appendTo(select);\n            });\n        }).change(function () {\n            var select = $(this);\n            var value = $(this).val();\n            $(this).val('');\n            $('dl', $(this).parent()).each(function () {\n                var label = $('label', $(this)).text();\n                var option = $('option[value=\"' + label + '\"]', select);\n                if (label == value) {\n                    $(this).show();\n                    $(this).insertBefore($('select.filters', $(this).parent()));\n\n                    if ($('a.detach', $(this)).length == 0) {\n                        $('<a class=\"detach\">X</a>').appendTo($('dd', $(this)))\n                            .click(function () {\n                                $(this).parents('dl').hide();\n                                $('input, select', $(this).parent()).val('').change();\n                                select.change();\n                                option.show();\n                            });\n                    }\n                    option.hide();\n                }\n            });\n    }); // change\n});\n\n$('fieldset.filters').each(function () {\n    var fieldset = $(this);\n    var smartlist = fieldset.closest('.smartlist');\n    var smartlistId = smartlist.attr('id').split('-')[1];\n\n    // reset all button\n    var resetMsg = '<?php echo $translator->trans('Reset all filters', array(), 'library'); ?>';\n    $('<a href=\"#\" class=\"reset\" title=\"'+resetMsg+'\">'+resetMsg+'</a>')\n        .appendTo(fieldset)\n        .click(function () {\n            // reset extra filters\n            $('.extra dl', fieldset).each(function () {\n                $(this).hide();\n                $('select, input', $(this)).val('');\n            });\n            $('select.filters', fieldset).val('');\n            $('select.filters option', fieldset).show();\n\n            // reset main filters\n            $('> select', fieldset).val('0').change();\n\n            $('input:checkbox, input:radio', fieldset).removeAttr('checked');\n\n            // redraw table\n            filters[smartlistId] = {};\n            tables[smartlistId].fnDraw(true);\n\n            return false;\n        });\n});\n\n// autocomplete\n$('input.select2').each(function () {\n\n    // Default processors\n    var idProcessor  = function (data) { return data.id; };\n    var resultFormatProcessor = function (data) { return data.title };\n    var selectionFormatProcessor = function (data) { return data.title; };\n    var paramProcessor = function (term, page) { return { term: term, limit: 20 }; };\n    var resultsProcessor = function (data, page) { return {results: data}; };\n\n    switch ($(this).attr('id')) {\n        case 'filter_creator':\n            resultFormatProcessor = function (data) { return (data.first_name + ' ' + data.last_name).trim(); };\n            selectionFormatProcessor = function (data) { return (data.first_name + ' ' + data.last_name).trim(); };\n            resultsProcessor = function (data, page) { return {results: data.records}; };\n            paramProcessor = function (term, page) { return { queries : { search_name: term }, perPage: 20 }; };\n            break;\n        case 'filter_topic':\n            break;\n        case 'filter_author':\n            idProcessor  = function (data) { return data.title; };\n            break;\n        default:\n            break;\n    }\n\n    $(this).select2({\n        minimumInputLength: 1,\n        ajax: {\n            url: $(this).data('contenturl'),\n            dataType: 'json',\n            data: paramProcessor,\n            results: resultsProcessor\n        },\n        id: idProcessor,\n        formatResult: resultFormatProcessor,\n        formatSelection: selectionFormatProcessor,\n        formatNoMatches: function () { return \"<?php echo $translator->trans('No matches.', array(), 'library'); ?>\"; },\n        formatSearching: function () { return \"<?php echo $translator->trans('Searching...', array(), 'library'); ?>\"; },\n        formatInputTooShort: function () { return  \"<?php echo $translator->trans('Minimum input of characters: $1', array('$1' => 1), 'library'); ?>\"; }\n    });\n});\n\n}); // document.ready\n\n</script>\n<?php } ?>\n"
  },
  {
    "path": "newscoop/admin-files/libs/ContextList/table.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Vlad Nicoara <vlad.nicoara@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n$translator = \\Zend_Registry::get('container')->getService('translator');\n?>\n\n<script>\njQuery.fn.dataTableExt.oApi.fnSetFilteringDelay = function ( oSettings, iDelay ) {\n    /*\n     * Inputs:      object:oSettings - dataTables settings object - automatically given\n     *              integer:iDelay - delay in milliseconds\n     * Usage:       $('#example').dataTable().fnSetFilteringDelay(250);\n     * Author:      Zygimantas Berziunas (www.zygimantas.com) and Allan Jardine\n     * License:     GPL v2 or BSD 3 point style\n     * Contact:     zygimantas.berziunas /AT\\ hotmail.com\n     */\n    var\n        _that = this,\n        iDelay = (typeof iDelay == 'undefined') ? 250 : iDelay;\n     \n    this.each( function ( i ) {\n        $.fn.dataTableExt.iApiIndex = i;\n        var\n            $this = this, \n            oTimerId = null, \n            sPreviousSearch = null,\n            anControl = $( 'input', _that.fnSettings().aanFeatures.f );\n         \n            anControl.unbind( 'keyup' ).bind( 'keyup', function(event) {\n\t            var $$this = $this;\n\t            var searchKeyword;\n\t            var inputKeyword;\n\t            \n\t            inputKeyword = anControl.val();\n\t            searchKeyword = inputKeyword;\n\t            \n\t            if (sPreviousSearch === null || sPreviousSearch != anControl.val()) {\n\t                window.clearTimeout(oTimerId);\n\t                sPreviousSearch = anControl.val();  \n\t                oTimerId = window.setTimeout(function() {\n\t                    $.fn.dataTableExt.iApiIndex = i;\n\t                    searchKeyword = inputKeyword; \n\t                    _that.fnFilter( searchKeyword );\n\t                }, iDelay);\n\t            }\n\t        });\n         \n        return this;\n    } );\n    return this;\n}\n\n</script>\n\n<input id=\"search_table_id\" type=\"hidden\" value=\"table-<?php echo $this->id; ?>\" />\n<div class=\"table\">\n\n<table id=\"table-<?php echo $this->id; ?>\" cellpadding=\"0\" cellspacing=\"0\" class=\"datatable\">\n\n</table>\n</div>\n\n<?php if (!self::$renderTable) { ?>\n<script type=\"text/javascript\"><!--\n\n//TODO should not name these generic name like filters and tables, shoudld put them in some namespace...\ntables = [];\nfilters = [];\n\nfunction sendOrder(form, hash)\n{\n    var order = $('#table-' + hash + ' tbody').sortable('toArray');\n    callServer(['ArticleList', 'doOrder'], [\n        order,\n        $('input[name=language]', $(form)).val(),\n        ], function(data) {\n            tables[hash].fnSort([[2, 'asc']]);\n            tables[hash].fnDraw(true);\n            flashMessage('<?php echo $translator->trans('Order updated.', array(), 'library'); ?>');\n        });\n    return false;\n}\n--></script>\n<?php } // render ?>\n<script type=\"text/javascript\"><!--\n$(document).ready(function()\n{\n\n\tvar table = $('#table-<?php echo $this->id; ?>');\n\t// TODO restrictive, inaccessible from outside, where's the interface for this?\n\tif (typeof contextListFilters == 'undefined')\n\t\tfilters['<?php echo $this->id; ?>'] = [];\n\telse\n\t\tfilters['<?php echo $this->id; ?>'] = contextListFilters;\n\n    tables['<?php echo $this->id; ?>'] = table.dataTable({\n    \t'bLengthChange': false,\n        'bAutoWidth': true,\n        'bScrollCollapse': true,\n        'bssDestroy': true,\n        'sDom': '<?php echo $this->getContextSDom(); ?>',\n        'oLanguage': {\n            'oPaginate': {\n                'sFirst': '<?php echo $translator->trans('First', array(), 'library'); ?>',\n                'sNext': '<?php echo $translator->trans('Next'); ?>',\n                'sPrevious': '<?php echo $translator->trans('Previous'); ?>',\n                'sLast': '<?php echo $translator->trans('Last', array(), 'library'); ?>',\n            },\n\n            'sZeroRecords': '<?php echo $translator->trans('No records found.', array(), 'library'); ?>',\n            'sSearch': '',\n            'sInfo': '<?php echo $translator->trans('Showing _START_ to _END_ of _TOTAL_ entries', array(), 'library'); ?>',\n            'sEmpty': '<?php echo $translator->trans('No entries to show', array(), 'library'); ?>',\n            'sInfoFiltered': '<?php echo $translator->trans(' - filtering from _MAX_ records', array(), 'library'); ?>',\n            'sLengthMenu': '<?php echo $translator->trans('Display _MENU_ records', array(), 'library'); ?>',\n            'sInfoEmpty': '',\n        },\n        'aoColumnDefs': [\n            { // inputs for id\n                'fnRender': function(obj) {\n                    var id = obj.aData[0] + '_' + obj.aData[1];\n                    return '<input type=\"checkbox\" name=\"' + id + '\" />';\n                },\n                'aTargets': [0]\n            },\n\n            { // hide columns\n                'bVisible': false,\n                'aTargets': [0,1]\n            },\n            { // not sortable\n                'bSortable': false,\n                'aTargets': [0, 1, 2]\n            },\n            { // id\n                'sClass': 'id',\n                'sWidth': '3em',\n                'aTargets': [0]\n            },\n            { // name\n                'sClass': 'name',\n                'sWidth': '13em',\n                'aTargets': [2]\n            },\n        ],\n        'fnDrawCallback': function() {\n            $('#table-<?php echo $this->id; ?> tbody tr').click(function(event) {\n                if (event.target.type == 'checkbox') {\n                    return; // checkbox click, handled by it's change\n                }\n\n                var input = $('input:checkbox', $(this));\n                if (input.attr('checked')) {\n                    input.removeAttr('checked');\n                } else {\n                    input.attr('checked', 'checked');\n                }\n                input.change();\n            }).each(function() {\n                var tr = $(this);\n                // detect locks\n                if ($('.name .ui-icon-locked', tr).not('.current-user').size()) {\n                    tr.addClass('locked');\n                }\n            });\n\n            $('#table-<?php echo $this->id; ?> tbody input:checkbox').change(function() {\n                if ($(this).attr('checked')) {\n                    $(this).parents('tr').addClass('selected');\n                } else {\n                    $(this).parents('tr').removeClass('selected');\n                }\n\n                // update check all checkbox on item change\n                var table = $('#table-<?php echo $this->id; ?>');\n                if ($('tbody input:checkbox', table).size() == $('tbody input:checkbox:checked', table).size()) { // all checked\n                    $('.smartlist thead input:checkbox').attr(\"checked\", true);\n                } else {\n                    $('.smartlist thead input:checkbox').attr(\"checked\", false);\n                }\n            });\n\n            <?php if ($this->order) { ?>\n\n\n            <?php } ?>\n        },\n        <?php if ($this->items !== NULL) { // display all items ?>\n        'bPaging': false,\n        'iDisplayLength': 5,\n        <?php } else { // no items - server side ?>\n        'bPaging': true,\n        'bServerSide': true,\n        'iDisplayLength' : 5,\n        'sAjaxSource': '<?php echo $this->path; ?>/do_data.php',\n        'sPaginationType': 'full_numbers',\n        'aaSorting' : [[0, 'desc']],\n        'fnServerData': function (sSource, aoData, fnCallback)\n        {\n            var addedFilters = new Array();\n            for (var i in filters['<?php echo $this->id; ?>'])\n\t\t\t{\n    \t\t\taddedFilters.push(i);\n                aoData.push\n                ({\n                    'name': i,\n                    'value': filters['<?php echo $this->id; ?>'][i],\n                });\n            }\n\n            <?php foreach (array('publication', 'issue', 'section', 'language') as $filter) : ?>\n    \t\t    <?php if ($filter == 'language' && !$this->order) continue; /*ignore language on non-section pages, TODO what does this mean?*/ ?>\n    \t\t    <?php if (!empty($this->$filter)) : ?>\n                \tif ($.inArray('<?php echo $filter ?>', addedFilters) == -1\n                    \t&& $.trim(filters['<?php echo $this->id; ?>']['<?php echo $filter ?>']) == '')\n                    \taoData.push\n                        ({\n                            'name': '<?php echo $filter; ?>',\n                            'value': '<?php echo $this->$filter; ?>',\n                        });\n                <?php endif ?>\n            <?php endforeach ?>\n\n            callServer(['ContextList', 'doData'], aoData, fnCallback);\n        },\n        'fnStateLoadCallback': function(oSettings, oData) {\n            oData.sFilter = ''; // reset filter\n            <?php if ($this->order) { ?>\n            oData.aaSorting = [[2, 'asc']]; // show correct order on reload\n            <?php } ?>\n            return true;\n        },\n        <?php } ?>\n        <?php if ($this->colVis) { ?>\n        'oColVisx': { // disable Show/hide column\n            //'aiExclude': [0, 1, 2],\n           // 'buttonText': '<?php echo $translator->trans('Show / hide columns', array(), 'library'); ?>',\n        },\n        <?php } ?>\n        <?php if ($this->order) { ?>\n        'fnRowCallback': function(nRow, aData, iDisplayIndex, iDisplayIndexFull ) {\n            var id = $(aData[0]).attr('name').split('_')[0];\n            $(nRow).attr('id', 'article_' + id);\n            return nRow;\n        },\n        <?php } ?>\n        'bJQueryUI': true\n    }).css('position', 'relative').css('width', '100%').fnSetFilteringDelay(500);\n\n});\n--></script>\n"
  },
  {
    "path": "newscoop/admin-files/libs/ImageList/ImageList.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/../BaseList/BaseList.php';\n\n/**\n * Image list component\n */\nclass ImageList extends BaseList\n{\n    /** @var array */\n    protected $filters = array(\n        \"Source <> 'newsfeed'\",\n    );\n\n    /**\n     */\n    public function __construct()\n    {\n        parent::__construct();\n\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        $this->model = new Image;\n\n        $this->cols = array(\n            'Id' => NULL,\n            'ThumbnailFileName' => $translator->trans('Thumbnail'),\n            'Description' => $translator->trans('Description'),\n            'Photographer' => $translator->trans('Photographer'),\n            'Place' => $translator->trans('Place'),\n            'Date' => $translator->trans('Date'),\n            'TimeCreated' => $translator->trans('Added'),\n            'LastModified' => $translator->trans('Last modified', array(), 'library'),\n            'Source' => $translator->trans('Source', array(), 'library'),\n            'Status' => $translator->trans('Status'),\n            'InUse' => $translator->trans('In use')\n        );\n\n        $this->searchCols = array(\n            'Description',\n            'Photographer',\n            'Place',\n        );\n\n        $this->ignoredCols = array('InUse');\n        $this->inUseColumn = sizeof($this->cols) - 1;\n\n        // set sorting\n        $this->defaultSorting = 6;\n        $this->defaultSortingDir = 'desc';\n        $this->notSortable[] = 1;\n        $this->type = 'image';\n    }\n\n    /**\n     * Process row\n     * @param array $row\n     * @return array\n     */\n    public function processRow(array $row)\n    {\n        global $Campsite, $ADMIN;\n        $Campsite['THUMBNAIL_BASE_URL'] . $row['ThumbnailFileName'];\n\n        // set thumbnail\n        $row['ThumbnailFileName'] = sprintf('<a href=\"/%s/media-archive/edit.php?f_image_id=%d\"><img src=\"%s\" alt=\"%s\" /></a>',\n            $ADMIN,\n            $row['Id'],\n            $Campsite['THUMBNAIL_BASE_URL'] . $row['ThumbnailFileName'],\n            strip_tags($row['Description']));\n\n        // create link for desc\n        /*\n        $row['Description'] = sprintf('<a href=\"/%s/media-archive/edit.php?f_image_id=%d\">%s</a>',\n            $ADMIN,\n            $row['Id'],\n            $row['Description']);\n        */\n        /*\n        $row['Description'] = \"\n            <span style='display: inline;' id='description_view_\".$row['Id'].\"' onClick='edit(\\\"description\\\",\".$row['Id'].\");'>\".$row['Description'].\"</span>\n            <span style='display: none;' id='description_edit_\".$row['Id'].\"'><input id='description_input_\".$row['Id'].\"'><br><button onClick='save(\\\"description\\\",\".$row['Id'].\");'>save</button><button onClick='view(\\\"description\\\",\".$row['Id'].\");'>cancel</button></span>\n        \";\n\n        $row['Photographer'] = \"\n            <span style='display: inline;' id='photographer_view_\".$row['Id'].\"' onClick='edit(\\\"photographer\\\",\".$row['Id'].\");'>\".$row['Photographer'].\"</span>\n            <span style='display: none;' id='photographer_edit_\".$row['Id'].\"'><input id='photographer_input_\".$row['Id'].\"'><br><button onClick='save(\\\"photographer\\\",\".$row['Id'].\");'>save</button><button onClick='view(\\\"photographer\\\",\".$row['Id'].\");'>cancel</button></span>\n        \";\n\n        $row['Place'] = \"\n            <span style='display: inline;' id='place_view_\".$row['Id'].\"' onClick='edit(\\\"place\\\",\".$row['Id'].\");'>\".$row['Place'].\"</span>\n            <span style='display: none;' id='place_edit_\".$row['Id'].\"'><input id='place_input_\".$row['Id'].\"'><br><button onClick='save(\\\"place\\\",\".$row['Id'].\");'>save</button><button onClick='view(\\\"place\\\",\".$row['Id'].\");'>cancel</button></span>\n        \";\n\n        $row['Date'] = \"\n            <span style='display: inline;' id='date_view_\".$row['Id'].\"' onClick='edit(\\\"date\\\",\".$row['Id'].\");'>\".$row['Date'].\"</span>\n            <span style='display: none;' id='date_edit_\".$row['Id'].\"'><input id='date_input_\".$row['Id'].\"'><br><button onClick='save(\\\"date\\\",\".$row['Id'].\");'>save</button><button onClick='view(\\\"date\\\",\".$row['Id'].\");'>cancel</button></span>\n        \";\n        */\n\n        // get in use info\n        $image = new Image($row['Id']);\n        $image->fixMissingThumbnail();\n        $row['InUse'] = (int) $image->inUse();\n\n        return array_values($row);\n    }\n\n    /**\n     * @see BaseList\n     */\n    public function doData()\n    {\n        $args = $this->getArgs();\n        if (!empty($args['filter']) && $args['filter'] == 'sda') {\n            $this->filters = array('1');\n        }\n\n        return parent::doData();\n    }\n}\n"
  },
  {
    "path": "newscoop/admin-files/libs/MediaList/MediaList.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/../BaseList/BaseList.php';\nrequire_once WWW_DIR . '/classes/Attachment.php';\n\n/**\n * Media list component\n */\nclass MediaList extends BaseList\n{\n    /**\n     */\n    public function __construct()\n    {\n        parent::__construct();\n        \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        $this->model = new Attachment;\n\n        $this->cols = array(\n            'id' => NULL,\n            'file_name' => $translator->trans('Filename', array(), 'library'),\n            'mime_type' => $translator->trans('Type'),\n            'size_in_bytes' => $translator->trans('Size'),\n            'content_disposition' => $translator->trans('Open in browser', array(), 'library'),\n            'time_created' => $translator->trans('Added', array(), 'library'),\n            'last_modified' => $translator->trans('Last modified', array(), 'library'),\n            'Source' => $translator->trans('Source', array(), 'library'),\n            'Status' => $translator->trans('Status'),\n            'InUse' => $translator->trans('In use'),\n        );\n        \n        $this->searchCols = array(\n            'file_name', 'extension', 'mime_type',\n        );\n\n        $this->ignoredCols = array('InUse');\n        $this->inUseColumn = sizeof($this->cols) - 1;\n\n        $this->defaultSorting = 5;\n        $this->defaultSortingDir = 'desc';\n        $this->type = 'media';\n    }\n\n    /**\n     * Process db row\n     * @param array $row\n     * @return array\n     */\n    public function processRow(array $row)\n    {\n        global $ADMIN;\n\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        // edit link\n        $row['file_name'] = sprintf('<a href=\"/%s/media-archive/edit-attachment.php?f_attachment_id=%d\">%s</a>',\n            $ADMIN,\n            $row['id'], $row['file_name']);\n\n        // human readable size\n        $row['size_in_bytes'] = parent::FormatFileSize($row['size_in_bytes']);\n\n        // yes/no disposition\n        $row['content_disposition'] = empty($row['content_disposition']) ? $translator->trans('Yes') : $translator->trans('No');\n\n        // get in use info\n        $object = new Attachment($row['id']);\n        $row['InUse'] = (int) $object->inUse();\n\n        return array_values($row);\n    }\n}\n"
  },
  {
    "path": "newscoop/admin-files/libs/MediaPlayer/MediaPlayer.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\n/**\n * Media player component\n */\nclass MediaPlayer\n{\n    /** @var string */\n    private $src;\n\n    /** @var string */\n    private $type;\n\n    /** @var string */\n    private $alt;\n\n    /** @var bool */\n    private static $playerLoaded = FALSE;\n\n    /**\n     * @param string $src\n     * @param string $type\n     * @param string $alt\n     */\n    public function __construct($src, $type, $alt = '')\n    {\n        $this->src = (string) $src;\n        $this->type = (string) $type;\n        $this->alt = empty($alt) ? array_shift(explode('?', basename($this->src))) : (string) $alt; // remove ?x=.. part from basename\n    }\n\n    /**\n     * Outputs html for given media type\n     * @return string\n     */\n    public function __toString()\n    {\n        global $Campsite;\n\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        \n        ob_start();\n        echo '<div class=\"mediaplayer ', str_replace('/', ' ', $this->type), '\">';\n\n        // present by content type\n        switch ($this->type) {\n            case 'image/jpeg':\n            case 'image/png':\n            case 'image/gif':\n                echo '<img src=\"', $this->src, '\" height=\"240\" alt=\"', $this->alt, '\" />';\n                break;\n\n            case 'audio/mpeg':\n            case 'audio/ogg':\n            case 'audio/mp3':\n            case 'audio/mp4':\n            case 'application/ogg':\n                echo '<audio src=\"', $this->src, '\" controls=\"controls\">';\n                echo '</audio>';\n                break;\n\n            case 'video/mp4':\n            case 'video/ogg':\n            case 'video/webm':\n                // html5 + flow player fallback\n                include dirname(__FILE__) . '/video.phtml';\n                break;\n\n            case 'video/flv':\n            case 'video/x-flv':\n                $player = $Campsite['WEBSITE_URL'] . '/public/videos/player.swf';\n                include dirname(__FILE__) . '/flash.phtml';\n                break;\n        }\n\n        // download link\n        echo '<p><strong>', $translator->trans('Download file', array(), 'library'), ':</strong> ';\n        echo '<a href=\"', $this->src, '\">', $this->alt, '</a></p>';\n\n        echo '</div>';\n\n        if (!self::$playerLoaded) {\n            //include_once dirname(__FILE__) . '/player.phtml';\n            self::$playerLoaded = TRUE;\n        }\n\n        return ob_get_clean();\n    }\n}\n"
  },
  {
    "path": "newscoop/admin-files/libs/MediaPlayer/flash.phtml",
    "content": "<object width=\"320\" height=\"240\">\n    <param name=\"movie\" value=\"<?php echo $player; ?>\"></param>\n    <param name=\"flashvars\" value=\"src=<?php echo urlencode($this->src); ?>\"></param>\n    <param name=\"allowFullScreen\" value=\"true\"></param>\n    <param name=\"allowscriptaccess\" value=\"always\"></param>\n    <embed src=\"<?php echo $player; ?>\" type=\"application/x-shockwave-flash\" allowscriptaccess=\"always\" allowfullscreen=\"true\" width=\"320\" height=\"240\" flashvars=\"src=<?php echo urlencode($this->src); ?>\"></embed>\n</object>\n"
  },
  {
    "path": "newscoop/admin-files/libs/MediaPlayer/player.phtml",
    "content": ""
  },
  {
    "path": "newscoop/admin-files/libs/MediaPlayer/video.phtml",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n?>\n<video controls=\"controls\" width=\"320\" height=\"240\">\n    <source src=\"<?php echo $this->src; ?>\" type=\"<?php echo $this->type; ?>\" />\n    <object type=\"application/x-shockwave-flash\" data=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/flowplayer/flowplayer-3.2.5.swf\" width=\"320\" height=\"240\">\n        <param name=\"movie\" value=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/flowplayer/flowplayer-3.2.5.swf\" />\n\t\t<param name=\"allowFullScreen\" value=\"true\" />\n\t\t<param name=\"wmode\" value=\"transparent\" />\n        <param name=\"flashVars\" value=\"config={'playlist':[{'url':'<?php echo $this->src; ?>','autoPlay':false}]}\" />\n        <span title=\"<?php echo $translator->trans('No video playback capabilities, please download the video below', array(), 'library'); ?>\"><?php echo $this->alt; ?></span>\n\t</object>\n</video>\n"
  },
  {
    "path": "newscoop/admin-files/media-archive/add.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Image.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ImageSearch.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!$g_user->hasPermission('AddImage')) {\n\tcamp_html_goto_page(\"/$ADMIN/logout.php\");\n}\n$q_now = $g_ado_db->GetOne(\"SELECT LEFT(NOW(), 10)\");\n\nif (!is_writable($Campsite['IMAGE_DIRECTORY'])) {\n\tcamp_html_add_msg($translator->trans(\"Unable to add new image.\", array(), 'media_archive'));\n\tcamp_html_add_msg(camp_get_error_message(CAMP_ERROR_WRITE_DIR, $Campsite['IMAGE_DIRECTORY']));\n\tcamp_html_goto_page(\"/$ADMIN/media-archive/index.php\");\n\texit;\n}\n\n$crumbs = array();\n$crumbs[] = array($translator->trans('Content'), \"\");\n$crumbs[] = array($translator->trans('Media Archive', array(), 'media_archive'), \"/$ADMIN/media-archive/index.php\");\n$crumbs[] = array($translator->trans('Add new image', array(), 'media_archive'), \"\");\n$breadcrumbs = camp_html_breadcrumbs($crumbs);\n\n$controller->view->headTitle($translator->trans('Add new image', array(), 'media_archive').' - Newscoop Admin', 'SET');\n\necho $breadcrumbs;\n\ncamp_html_display_msgs();\n?>\n\n<br />\n    <form method=\"POST\" action=\"/<?php echo $ADMIN; ?>/media-archive/do_upload.php\" enctype=\"multipart/form-data\">\n<?php echo SecurityToken::FormParameter(); ?>\n<div id=\"uploader\"></div>\n<div id=\"uploader_error\"></div>\n\n<div class=\"plupload-addon-bottom clearfix\">\n  <div class=\"info\">\n    <?php echo $translator->trans('Specify image url if you want to load it.', array(), 'media_archive'); ?>\n  </div>\n  <div class=\"inputs\">\n    <label for=\"form-url\"><?php echo $translator->trans('URL'); ?>:</label><input type=\"text\" class=\"input_text\" size=\"32\" name=\"f_image_url\" id=\"form-url\">\n  </div>\n  <div class=\"buttons\">\n    <input type=\"submit\" value=\"<?php echo $translator->trans('Save All', array(), 'media_archive'); ?>\" name=\"save\" class=\"save-button\">\n  </div>\n</div>\n\n</form>\n<p>&nbsp;</p>\n\n<?php $this->view->plupload('', array(\n    'url' => './uploader.php',\n    'filters' => array(\n        $translator->trans('Image files', array(), 'media_archive') => \"jpg,jpeg,gif,png\",\n    ),\n)); ?>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/media-archive/add_file.php",
    "content": "<?php\n/**\n * @package Newscoop\n *\n * @author Mihai Nistor <mihai.nistor@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Attachment.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Translation.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!$g_user->hasPermission('AddFile')) {\n    camp_html_goto_page(\"/$ADMIN/logout.php\");\n}\n\n$q_now = $g_ado_db->GetOne(\"SELECT LEFT(NOW(), 10)\");\n\n$crumbs = array();\n$crumbs[] = array($translator->trans('Content'), \"\");\n$crumbs[] = array($translator->trans('Media Archive', array(), 'home'), \"/$ADMIN/media-archive/index.php\");\n$crumbs[] = array($translator->trans('Add new file', array(), 'media_archive'), \"\");\n$breadcrumbs = camp_html_breadcrumbs($crumbs);\n\n$controller->view->headTitle($translator->trans('Add new file', array(), 'media_archive').' - Newscoop Admin', 'SET');\n\necho $breadcrumbs;\n\ncamp_html_display_msgs();\n?>\n\n  <br />\n      <form method=\"POST\" action=\"/<?php echo $ADMIN; ?>/media-archive/do_upload_file.php\" enctype=\"multipart/form-data\">\n  <?php echo SecurityToken::FormParameter(); ?>\n  <div id=\"uploader\"></div>\n  <div id=\"uploader_error\"></div>\n\n  <div class=\"plupload-addon-bottom clearfix\">\n    <div class=\"buttons\">\n      <input type=\"submit\" value=\"<?php echo $translator->trans('Save All', array(), 'media_archive'); ?>\" name=\"save\" class=\"save-button\">\n    </div>\n  </div>\n\n  </form>\n  <p>&nbsp;</p>\n\n  <?php $this->view->plupload('', array(\n      'url' => './uploader_file.php',\n  )); ?>\n\n  <?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/media-archive/ajax_save.php",
    "content": "<?php\n\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Image.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ImageSearch.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\n\n$f_image_id = Input::Get('f_image_id');\n$f_field = Input::Get('f_field');\n$f_value = Input::Get('f_value');\n\n$imageObj = new Image($f_image_id);\n\nif (!$g_user->hasPermission('ChangeImage')) {\n\tcamp_html_goto_page(\"/$ADMIN/logout.php\");\n}\n\n$fieldNames = array('description' => 'Description', 'photographer' => 'Photographer', 'place' => 'Place', 'date' => 'Date', 'status' => 'Status');\n\n$updateArray = array($fieldNames[$f_field] => $f_value);\n\n$imageObj->update($updateArray);"
  },
  {
    "path": "newscoop/admin-files/media-archive/do_del.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Image.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ImageSearch.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$em = \\Zend_Registry::get('container')->getService('em');\n$imageService = \\Zend_Registry::get('container')->getService('image');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n$f_image_id = Input::Get('f_image_id', 'int', 0);\n\nif (!Input::IsValid() || ($f_image_id <= 0)) {\n\tcamp_html_goto_page(\"/$ADMIN/media-archive/index.php\");\n}\n\n$image = $em->getRepository('Newscoop\\Image\\LocalImage')->findOneById($f_image_id);\n\n// This file can only be accessed if the user has the right to delete images.\nif (!$g_user->hasPermission('DeleteImage')) {\n\tcamp_html_goto_page(\"/$ADMIN/logout.php\");\n}\nif ($imageService->inUse($image)) {\n\tcamp_html_add_msg($translator->trans(\"Image is in use, it cannot be deleted.\", array(), 'media_archive'));\n\tcamp_html_goto_page(\"/$ADMIN/media-archive/index.php\");\n}\n\n$imageDescription = $image->getDescription();\n$result = $imageService->remove($image);\n\nif (!$result) {\n\tcamp_html_add_msg($translator->trans(\"Could not delete record from the database.\", array(), 'api'));\n} else {\n\t// Go back to article image list.\n\tcamp_html_add_msg($translator->trans(\"Image $1 deleted.\", array('$1' => $imageDescription), 'media_archive'), \"ok\");\n}\ncamp_html_goto_page(\"/$ADMIN/media-archive/index.php\");\n\n?>\n"
  },
  {
    "path": "newscoop/admin-files/media-archive/do_edit-attachment.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Attachment.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// check input\n$f_attachment_id = Input::Get('f_attachment_id', 'int', 0);\n$f_description = Input::Get('f_description', 'string', '');\n$f_content_disposition = Input::Get('f_content_disposition', 'string', '');\nif (!Input::IsValid() || ($f_attachment_id <= 0)) {\n    camp_html_goto_page(\"/$ADMIN/media-archive/index.php#files\");\n}\n\n$em = \\Zend_Registry::get('container')->getService('em');\n$attachment = $em->getRepository('Newscoop\\Entity\\Attachment')->findOneById($f_attachment_id);\n$description = $em->getRepository('Newscoop\\Entity\\Translation')->findOneBy(array(\n    'phrase_id' => $attachment->getDescription()->getPhraseId()\n));\nif (!$description) {\n    $nextTranslationPhraseId = $em->getRepository('Newscoop\\Entity\\AutoId')->getNextTranslationPhraseId();\n    $description = new \\Newscoop\\Entity\\Translation($nextTranslationPhraseId);\n    $em->persist($description);\n}\n$description->setLanguage($attachment->getLanguage());\n$description->setTranslationText($f_description);\n$attachment->setUpdated(new \\DateTime());\n$attachment->setContentDisposition($f_content_disposition);\n\n$em->flush();\n\n$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n$cacheService->clearNamespace('attachment');\n\ncamp_html_add_msg($translator->trans('Attachment updated.', array(), 'media_archive'), 'ok');\ncamp_html_goto_page(\"/$ADMIN/media-archive/edit-attachment.php?f_attachment_id=\".$attachment->getId());\n"
  },
  {
    "path": "newscoop/admin-files/media-archive/do_edit.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Image.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ImageSearch.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// check input\n$f_image_id = Input::Get('f_image_id', 'int', 0);\n$f_image_description = Input::Get('f_image_description');\n$f_image_photographer = Input::Get('f_image_photographer');\n$f_image_place = Input::Get('f_image_place');\n$f_image_date = Input::Get('f_image_date');\n$f_image_status = Input::Get('f_image_status');\n//$f_image_url = Input::Get('f_image_url', 'string', '', true);\nif (!Input::IsValid() || ($f_image_id <= 0)) {\n\tcamp_html_goto_page(\"/$ADMIN/media-archive/index.php\");\n}\n\n$imageObj = new Image($f_image_id);\n\nif (!$g_user->hasPermission('ChangeImage')) {\n\tcamp_html_goto_page(\"/$ADMIN/logout.php\");\n}\n\n$updateArray = array('Description' => $f_image_description,\n\t\t\t\t\t'Photographer' => $f_image_photographer,\n\t\t\t\t\t'Place' => $f_image_place,\n\t\t\t\t\t'Date' => $f_image_date,\n\t\t\t\t\t'Status' => $f_image_status,\n                    'photographer_url' => Input::Get('f_photographer_url'));\n//if (!empty($f_image_url)) {\n//\t$updateArray['URL'] = $f_image_url;\n//}\n$imageObj->update($updateArray);\n\n$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n$cacheService->clearNamespace('image');\n\ncamp_html_add_msg($translator->trans(\"Image updated.\", array(), 'media_archive'), \"ok\");\ncamp_html_goto_page(\"/$ADMIN/media-archive/edit.php?f_image_id=$f_image_id\");\n?>\n"
  },
  {
    "path": "newscoop/admin-files/media-archive/do_multiedit.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Image.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ImageSearch.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nforeach ($_POST['image'] as $id => $values) {\n    $imageObj = new Image((int) $id);\n    $updateArray = array(\n        'Description' => $values['f_description'],\n        'Photographer' => $values['f_photographer'],\n        'Place' => $values['f_place'],\n        'Date' => $values['f_date'],\n        'photographer_url' => $values['f_photographer_url'],\n    );\n    $imageObj->update($updateArray);\n}\n\n$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n$cacheService->clearNamespace('image');\n\ncamp_html_add_msg($translator->trans(\"Images updated.\", array(), 'media_archive'), \"ok\");\ncamp_html_goto_page(\"/$ADMIN/media-archive/index.php\");\n?>\n"
  },
  {
    "path": "newscoop/admin-files/media-archive/do_multiedit_file.php",
    "content": "<?php\n/**\n * @package Newscoop\n *\n * @author Mihai Nistor <mihai.nistor@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Attachment.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleAttachment.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Translation.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$em = \\Zend_Registry::get('container')->getService('em');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n$f_language_id = Input::Get('f_language_id', 'int', 0);\n$f_language_selected = Input::Get('f_language_selected', 'int', 0);\n\nforeach ($_POST['file'] as $id => $values) {\n    $attachment = $em->getRepository('Newscoop\\Entity\\Attachment')->findOneById($id);\n    $description = $em->getRepository('Newscoop\\Entity\\Translation')->findOneBy(array(\n        'phrase_id' => $attachment->getDescription()->getPhraseId()\n    ));\n\n    if (!$description) {\n        $nextTranslationPhraseId = $em->getRepository('Newscoop\\Entity\\AutoId')->getNextTranslationPhraseId();\n        $description = new \\Newscoop\\Entity\\Translation($nextTranslationPhraseId);\n        $em->persist($description);\n    }\n\n    if ($f_language_selected > 0) {\n        $language = $em->getRepository('Newscoop\\Entity\\Language')->findOneByCode($f_language_selected);\n        $description->setLanguage($language);\n    } else {\n        $publicationService = \\Zend_Registry::get('container')->get('newscoop.publication_service');\n        $publicationMetadata = $publicationService->getPublicationMetadata();\n        $language = $em->getRepository('Newscoop\\Entity\\Language')->findOneById($publicationMetadata['publication']['id_default_language']);\n        $description->setLanguage($language);\n    }\n\n    $description->setTranslationText($values['f_description']);\n    $attachment->setDescription($description);\n    $attachment->setUpdated(new \\DateTime());\n    $attachment->setContentDisposition($values['f_content_disposition']);\n}\n\n$em->flush();\ncamp_html_add_msg($translator->trans(\"Images updated.\", array(), 'media_archive'), \"ok\");\ncamp_html_goto_page(\"/$ADMIN/media-archive/index.php#files\");\n?>\n"
  },
  {
    "path": "newscoop/admin-files/media-archive/do_upload.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nuse Symfony\\Component\\HttpFoundation\\File\\UploadedFile;\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$container = \\Zend_Registry::get('container');\n$request = $container->get('request');\n$params = $request->request->all();\n$f_image_url = Input::Get('f_image_url', 'string', '', true);\n$nrOfFiles = isset($params['uploader_count']) ? $params['uploader_count'] : 0;\n$f_article_edit = isset($params['f_article_edit']) ? $params['f_article_edit'] : null;\n$f_language_id = isset($params['f_language_id']) ? $params['f_language_id'] : null;\n$f_article_number = isset($params['f_article_number']) ? $params['f_article_number'] : null;\n\nif (!SecurityToken::isValid() && !isset($f_article_edit)) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nif (!$g_user->hasPermission('AddImage') && !isset($f_article_edit)) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to add images.\", array(), 'media_archive'));\n\texit;\n}\n\nif (empty($f_image_url) && empty($nrOfFiles)) {\n\tcamp_html_add_msg($translator->trans(\"You must select an image file to upload.\", array(), 'media_archive'));\n    if ($f_article_edit) {\n        camp_html_goto_page('/'.$ADMIN.'/image/article-attach/article_number/'.$f_article_number.'/language_id/'.$f_language_id);\n    }\n\tcamp_html_goto_page(\"/$ADMIN/media-archive/add.php\");\n}\n\n$images = array();\n\n$user = $container->get('security.context')->getToken()->getUser();\n$em = $container->get('em');\n$language = $em->getRepository('Newscoop\\Entity\\Language')->findOneByCode($request->getLocale());\n$imageService = $container->get('image');\n\n// load image from url\nif (!empty($f_image_url)) {\n    $newFileName = md5(uniqid()).'__'.basename($f_image_url);\n    $fileLocation = $imageService->getImagePath() . $newFileName;\n    file_put_contents($fileLocation, file_get_contents($f_image_url));\n\n    // Check if it is really an image file\n    $imageInfo = getimagesize($fileLocation);\n    if ($imageInfo === false) {\n        unlink($fileLocation);\n        return new PEAR_Error($translator->trans('URL $1 is not an image.', array('$1' => $f_image_url), 'api'));\n    }\n\n    $mime = getimagesize($fileLocation);\n    $file = new UploadedFile($fileLocation, $newFileName, $mime['mime'], filesize($fileLocation), null, true);\n    $result = $imageService->upload($file, array('user' => $user));\n    $result->setDate('0000-00-00');\n    $images[] = $result;\n}\n\n// process uploaded images\nfor ($i = 0; $i < $nrOfFiles; $i++) {\n    $tmpnameIdx = 'uploader_' . $i . '_tmpname';\n    $nameIdx = 'uploader_' . $i . '_name';\n    $statusIdx = 'uploader_' . $i . '_status';\n    if ($params[$statusIdx] == 'done') {\n        $fileLocation = $imageService->getImagePath() . $params[$tmpnameIdx];\n\n        if (file_exists($fileLocation) && is_readable($fileLocation)) {\n            $mime = getimagesize($fileLocation);\n            $file = new UploadedFile($fileLocation, $params[$nameIdx], $mime['mime'], filesize($fileLocation), null, true);\n            $result = $imageService->upload($file, array('user' => $user));\n            $result->setDate('0000-00-00');\n            $images[] = $result;\n        } else {\n            camp_html_add_msg($translator->trans(\"An error occured while uploading the file $1\", array('$1' => $params[$nameIdx]), 'media_archive'));\n            if ($nrOfFiles == 1) {\n                camp_html_goto_page(\"/$ADMIN/media-archive/add.php\", true);\n            }\n        }\n    }\n}\n\n$em->flush();\n\nif (!empty($images)) {\n    camp_html_add_msg($translator->trans('$1 files uploaded.', array('$1' => count($images)), 'media_archive', \"ok\"));\n    if ($f_article_edit) {\n        require_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\n        require_once($GLOBALS['g_campsiteDir'].'/classes/Image.php');\n        require_once($GLOBALS['g_campsiteDir'].'/classes/Issue.php');\n        require_once($GLOBALS['g_campsiteDir'].'/classes/Section.php');\n        require_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\n        require_once($GLOBALS['g_campsiteDir'].'/classes/Publication.php');\n\n        foreach ($images as $image) {\n            $ImageTemplateId = ArticleImage::GetUnusedTemplateId($f_article_number);\n            ArticleImage::AddImageToArticle($image->getId(), $f_article_number, $ImageTemplateId);\n        }\n        camp_html_goto_page('/'.$ADMIN.'/image/edit-image-data/article_number/'.$f_article_number.'/language_id/'.$f_language_id);\n    }\n    else {\n        camp_html_goto_page(\"/$ADMIN/media-archive/multiedit.php\");\n    }\n} else {\n    if ($f_article_edit) {\n        camp_html_goto_page('/'.$ADMIN.'/image/article-attach/article_number/'.$f_article_number.'/language_id/'.$f_language_id);\n    }\n    else {\n        camp_html_add_msg($f_path . DIR_SEP . basename($newFilePath));\n        camp_html_goto_page($backLink);\n    }\n}\n\n?>\n"
  },
  {
    "path": "newscoop/admin-files/media-archive/do_upload_file.php",
    "content": "<?php\n/**\n * @package Newscoop\n *\n * @author Mihai Nistor <mihai.nistor@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nuse Symfony\\Component\\HttpFoundation\\File\\UploadedFile;\n\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Attachment.php');\n\n$container = \\Zend_Registry::get('container');\n$request = $container->get('request');\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$params = $request->request->all();\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nif (!$g_user->hasPermission('AddFile')) {\n    camp_html_display_error($translator->trans(\"You do not have the right to add files.\", array(), 'media_archive'));\n    exit;\n}\n\n$nrOfFiles = isset($params['uploader_count']) ? $params['uploader_count'] : 0;\n\n$user = $container->get('security.context')->getToken()->getUser();\n$em = $container->get('em');\n$language = $em->getRepository('Newscoop\\Entity\\Language')->findOneByCode($request->getLocale());\n$attachmentService = $container->get('attachment');\n\n// process uploaded files\nfor ($i = 0; $i < $nrOfFiles; $i++) {\n    $tmpnameIdx = 'uploader_' . $i . '_tmpname';\n    $nameIdx = 'uploader_' . $i . '_name';\n    $statusIdx = 'uploader_' . $i . '_status';\n    if ($params[$statusIdx] == 'done') {\n        $fileLocation = $attachmentService->getStorageLocation(new \\Newscoop\\Entity\\Attachment()).'/'.$params[$tmpnameIdx];\n        if (file_exists($fileLocation) && is_readable($fileLocation)) {\n            $file = new UploadedFile($fileLocation, $params[$nameIdx], mime_content_type($fileLocation), filesize($fileLocation), null, true);\n            $result = $attachmentService->upload($file, '', $language, array('user' => $user));\n        } else {\n            camp_html_add_msg($translator->trans(\"An error occured while uploading the file $1\", array('$1' => $params[$nameIdx]), 'media_archive'));\n            if ($nrOfFiles == 1) {\n                camp_html_goto_page(\"/$ADMIN/media-archive/add_file.php\", true);\n            }\n        }\n    }\n}\n\n$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n$cacheService->clearNamespace('attachment');\n\nif ($result) {\n    camp_html_add_msg($translator->trans('$1 files uploaded.', array('$1' => $nrOfFiles), 'media_archive'), \"ok\");\n    camp_html_goto_page(\"/$ADMIN/media-archive/multiedit_file.php\");\n} else {\n    camp_html_add_msg($f_path . DIR_SEP . basename($newFilePath));\n    camp_html_goto_page($backLink);\n}\n\n?>\n"
  },
  {
    "path": "newscoop/admin-files/media-archive/edit-attachment.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Attachment.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once LIBS_DIR . '/MediaList/MediaList.php';\nrequire_once LIBS_DIR . '/MediaPlayer/MediaPlayer.php';\n\n$f_attachment_id = Input::Get('f_attachment_id', 'int', 0);\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!Input::IsValid()) {\n    camp_html_goto_page(\"/$ADMIN/media-archive/index.php#files\");\n}\n\n$em = \\Zend_Registry::get('container')->getService('em');\n$attachment = $em->getRepository('Newscoop\\Entity\\Attachment')->findOneById($f_attachment_id);\n$attachmentService = \\Zend_Registry::get('container')->getService('attachment');\n\n$label_text = '';\n$crumbs = array();\n$crumbs[] = array($translator->trans('Content'), \"\");\n$crumbs[] = array($translator->trans('Media Archive', array(), 'home'), \"/$ADMIN/media-archive/index.php#files\");\nif ($g_user->hasPermission('ChangeImage')) {\n    $label_text = $translator->trans('Change attachment information', array(), 'media_archive');\n}\nelse {\n    $label_text = $translator->trans('View attachment', array(), 'media_archive');\n}\n\n$crumbs[] = array($label_text, '');\n$breadcrumbs = camp_html_breadcrumbs($crumbs);\n\n$controller->view->headTitle($label_text.' - Newscoop Admin', 'SET');\n\necho $breadcrumbs;\n?>\n\n<?php camp_html_display_msgs(); ?>\n\n<div class=\"wrapper\"><div class=\"main-content-wrapper\">\n\n<h2><?php echo $attachment->getName(); ?></h2>\n<p class=\"dates\"><?php echo $translator->trans('Created', array(), 'media_archive'); ?>: <?php echo $attachment->getCreated()->format('Y-m-d H:i:s'); ?>, <?php echo $translator->trans('Last modified', array(), 'media_archive'); ?>: <?php echo $attachment->getUpdated()->format('Y-m-d H:i:s'); ?></p>\n\n<?php echo new MediaPlayer($attachmentService->getAttachmentUrl($attachment) . '?g_show_in_browser=1', $attachment->getMimeType()); ?>\n\n<dl class=\"attachment\">\n    <dt><?php echo $translator->trans('Type'); ?>:</dt>\n    <dd><?php echo $attachment->getMimeType(); ?></dd>\n\n    <dt><?php echo $translator->trans('Size', array(), 'media_archive'); ?>:</dt>\n    <dd><?php echo MediaList::FormatFileSize($attachment->getSizeInBytes()); ?></dd>\n\n    <?php if ($attachment->getHttpCharset()) { ?>\n    <dt><?php echo $translator->trans('Charset', array(), 'media_archive'); ?>:</dt>\n    <dd><?php echo $attachment->getHttpCharset(); ?></dd>\n    <?php } ?>\n\n</dl>\n\n<form name=\"edit\" method=\"POST\" action=\"/<?php echo $ADMIN; ?>/media-archive/do_edit-attachment.php\">\n    <?php echo SecurityToken::FormParameter(); ?>\n    <input type=\"hidden\" name=\"f_attachment_id\" value=\"<?php echo $attachment->getId(); ?>\" />\n\n<div class=\"ui-widget-content big-block block-shadow padded-strong\">\n    <fieldset class=\"plain\">\n\n    <legend><?php echo $translator->trans('Change attachment information', array(), 'media_archive'); ?></legend>\n    <ul>\n        <li>\n            <label for=\"description\"><?php echo $translator->trans(\"Description\"); ?>:</label>\n            <input id=\"description\" type=\"text\" name=\"f_description\" value=\"<?php echo htmlspecialchars($attachment->getDescription()); ?>\" size=\"50\" maxlength=\"255\" class=\"input_text\" />\n        </li>\n        <li>\n            <label><?php echo $translator->trans(\"Do you want this file to open in the users browser, or to automatically download?\", array(), 'media_archive'); ?></label>\n            <input id=\"disposition0\" class=\"input_radio\" type=\"radio\" name=\"f_content_disposition\" value=\"\"<?php if ($attachment->getContentDisposition() == NULL) { echo ' checked=\"checked\"'; } ?> />\n            <label for=\"disposition0\" class=\"inline-style left-floated\" style=\"padding-right:15px\"><?php echo $translator->trans(\"Open in the browser\", array(), 'media_archive'); ?></label>\n            <input id=\"disposition1\" class=\"input_radio\" type=\"radio\" name=\"f_content_disposition\" value=\"attachment\"<?php if ($attachment->getContentDisposition() == 'attachment') { echo ' checked=\"checked\"'; } ?> />\n            <label for=\"disposition1\" class=\"inline-style left-floated\"><?php echo $translator->trans(\"Automatically download\", array(), 'media_archive'); ?></label>\n        </li>\n        <li>\n            <label>&nbsp;</label>\n            <input type=\"submit\" name=\"Save\" value=\"<?php  echo $translator->trans('Save'); ?>\" class=\"button\" />\n        </li>\n    </ul>\n\n    </fieldset>\n</div>\n\n</form>\n\n</div></div><!-- /.main-content-wrapper /.wrapper -->\n<?php camp_html_copyright_notice(); ?>\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/admin-files/media-archive/edit.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Image.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ImageSearch.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/media-archive/editor_load_tinymce.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$preferencesService = \\Zend_Registry::get('container')->getService('preferences');\n$f_image_id = Input::Get('f_image_id', 'int', 0);\n$f_fix_thumbs = Input::Get('f_fix_thumbs', 'int', 0, true);\nif ($f_fix_thumbs) {\n    //regenerate missing thumbs\n    $returnMessage = $translator->trans('No thumbnails were fixed.', array(), 'media_archive');\n    $imageObj = new Image();\n    $imagesList = $imageObj->GetList(array(), array(), 0, 0, $imagesCount, TRUE);\n\n    foreach ($imagesList as $image) {\n        $thumbLocation = $image->getThumbnailStorageLocation();\n        if (!file_exists($thumbLocation)) {\n            if ($image->generateThumbnailFromImage()) {\n            \t$returnMessage = $translator->trans('Missing thumbnails fixed.', array(), 'media_archive');\n            }\n        }\n    }\n\n    camp_html_add_msg($returnMessage);\n    camp_html_goto_page(\"/$ADMIN/media-archive/index.php\");\n    exit();\n}\n\nif (!Input::IsValid()) {\n\tcamp_html_goto_page(\"/$ADMIN/media-archive/index.php\");\n}\n$imageObj = new Image($f_image_id);\n$articles = ArticleImage::GetArticlesThatUseImage($f_image_id);\n\n$allowedExtensions = array('jpg', 'jpeg', 'tiff', 'tif');\n$imagePathParts = explode('.', $imageObj->getImageFileName());\n$imageExtension = strtolower($imagePathParts[count($imagePathParts) - 1]);\n$iptcDate = null;\n$iptcPlace = null;\n$iptcPhotographer = null;\n$iptcDescription = null;\n\nif (in_array($imageExtension, $allowedExtensions)) {\n    $exif = @exif_read_data($imageObj->getImageStorageLocation());\n    if (isset($exif['DateTime'])) {\n        $exifDate = date('Y-m-d', strtotime($exif['DateTime']));\n    }\n\n    $size = getimagesize($imageObj->getImageStorageLocation(), $info);\n    $iptc = array();\n    foreach ($info as $key => $value) {\n        $iptc[$key] = iptcparse($value);\n    }\n    if (isset($iptc['APP13'])) {\n        $iptc = $iptc['APP13'];\n    }\n    if (isset($iptc['2#055'])) {\n        $iptcDate = $iptc['2#055'][0];\n        $iptcDate = date('Y-m-d', strtotime($iptcDate));\n    }\n    if (isset($iptc['2#080'])) {\n        $iptcPhotographer = strip_tags($iptc['2#080'][0]);\n    }\n    if (isset($iptc['2#120'])) {\n        $iptcDescription = strip_tags($iptc['2#120'][0]);\n    }\n    if (isset($iptc['2#090']) || isset($iptc['2#092']) || isset($iptc['2#101'])) {\n        $iptcPlace = array();\n        if (isset($iptc['2#101'])) {\n            $iptcPlace[] = strip_tags($iptc['2#101'][0]);\n        }\n        if (isset($iptc['2#090'])) {\n            $iptcPlace[] = strip_tags($iptc['2#090'][0]);\n        }\n        if (isset($iptc['2#092'])) {\n            $iptcPlace[] = strip_tags($iptc['2#092'][0]);\n        }\n        $iptcPlace = implode(', ', $iptcPlace);\n    }\n}\n\n$crumbs = array();\n$crumbs[] = array($translator->trans('Content'), \"\");\n$crumbs[] = array($translator->trans('Media Archive', array(), 'home'), \"/$ADMIN/media-archive/index.php\");\n\nif ($g_user->hasPermission('ChangeImage')) {\n\t$label_text = $translator->trans('Change image information', array(), 'media_archive');\n} else {\n\t$label_text = $translator->trans('View image', array(), 'media_archive');\n}\n\n$crumbs[] = array($label_text, '');\n$breadcrumbs = camp_html_breadcrumbs($crumbs);\n\n$controller->view->headTitle($label_text.' - Newscoop Admin', 'SET');\n\necho $breadcrumbs;\n?>\n<p></p>\n<table cellpadding=\"0\" cellspacing=\"0\" class=\"action_buttons\">\n<tr>\n<?php if ($g_user->hasPermission('AddImage')) { ?>\n    <td>\n        <A HREF=\"/<?php echo $ADMIN; ?>/media-archive/add.php\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/add.png\" BORDER=\"0\" alt=\"<?php  echo $translator->trans('Add new image', array(), 'media_archive'); ?>\"></A>\n    </TD>\n    <TD style=\"padding-left: 3px;\">\n        <A HREF=\"/<?php echo $ADMIN; ?>/media-archive/add.php\"><B><?php  echo $translator->trans('Add new image', array(), 'media_archive'); ?></B></A>\n    </TD>\n<?php } ?>\n<?php if ($g_user->hasPermission('DeleteImage') && !$imageObj->inUse()) { ?>\n    <td style=\"padding-left: 15px;\">\n        <A HREF=\"/<?php echo $ADMIN; ?>/media-archive/do_del.php?f_image_id=<?php echo $f_image_id; ?>&<?php echo SecurityToken::URLParameter();?>\" onclick=\"return confirm('<?php echo $translator->trans(\"Are you sure you want to delete the image $1?\", array('$1' => camp_javascriptspecialchars($imageObj->getDescription()))); ?>');\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/delete.png\" BORDER=\"0\" ALT=\"<?php echo $translator->trans('Delete image $1', array('$1' => htmlspecialchars($imageObj->getDescription())), 'media_archive'); ?>\"></A>\n    </TD>\n    <TD style=\"padding-left: 3px;\">\n        <A HREF=\"/<?php echo $ADMIN; ?>/media-archive/do_del.php?f_image_id=<?php echo $f_image_id; ?>&<?php echo SecurityToken::URLParameter();?>\" onclick=\"return confirm('<?php echo $translator->trans(\"Are you sure you want to delete the image $1?\", array('$1' => camp_javascriptspecialchars($imageObj->getDescription()))); ?>');\"><b><?php echo $translator->trans('Delete'); ?></b></a>\n    </TD>\n<?php } ?>\n</tr>\n</table>\n\n<?php camp_html_display_msgs(); ?>\n<p></p>\n<IMG SRC=\"<?php echo $imageObj->getImageUrl(); ?>\" BORDER=\"0\" ALT=\"<?php echo htmlspecialchars($imageObj->getDescription()); ?>\" style=\"padding-left:15px; max-width: 800px\">\n<P>\n<?php if ($g_user->hasPermission('ChangeImage')) { ?>\n<FORM style=\"float:left;\" NAME=\"image_edit\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/media-archive/do_edit.php\" ENCTYPE=\"multipart/form-data\" onSubmit=\"<?php\n    if ($preferencesService->MediaRichTextCaptions  == 'Y') {\n        echo 'return validateTinyMCEEditors();';\n    }\n?>\">\n<?php echo SecurityToken::FormParameter(); ?>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" class=\"box_table\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B><?php  echo $translator->trans(\"Change image information\", array(), 'media_archive'); ?></B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<?php\n\n    $captionStatus = $preferencesService->MediaRichTextCaptions;\n    $captionLimit = $preferencesService->MediaCaptionLength;\n\n    if ($captionStatus == 'Y') {\n\n        // CHeck if language is this is valid\n        $languageSelectedObj = new Language((int) camp_session_get('LoginLanguageId', 0));\n        $editorLanguage = !empty($_COOKIE['TOL_Language']) ? $_COOKIE['TOL_Language'] : $languageSelectedObj->getCode();\n        $editorOptions = array(\n            'max_chars' => $captionLimit,\n            'toolbar_length' => 28,\n        );\n\n        $iptcDescriptionCode = \"tinyMCE.editors['f_image_description'].setContent('\". addcslashes($iptcDescription, \"'\").\"');\";\n\n        editor_load_tinymce('f_image_description', $g_user, $editorLanguage, $editorOptions);\n?>\n<TR>\n    <TD ALIGN=\"RIGHT\" style=\"width:115px;\"><?php\n        echo $translator->trans('Description');\n        if ($captionStatus == 'Y' && $captionLimit > 0) {\n            echo $translator->trans(' (max. $1 characters)', array('$1' => $captionLimit), 'media_archive');\n        }\n    ?>:</TD>\n    <TD align=\"left\" style=\"width:590px\">\n        <?php\n            if (!empty($iptcDescription)) {\n                ?>\n                <small><a style=\"float:right;\" href=\"javascript:void(0);\" onClick=\"<?php echo $iptcDescriptionCode; ?>\">IPTC</a></small><br>\n                <?php\n            }\n        ?>\n        <textarea name=\"f_image_description\" id=\"f_image_description\" rows=\"8\" cols=\"70\"><?php echo $imageObj->getDescription(); ?></textarea>\n    </TD>\n</TR>\n<?php\n    } else {\n\n        $iptcDescriptionCode = \"document.getElementById('f_image_description').value='\". addcslashes($iptcDescription, \"'\") .\"'\";\n?>\n<TR>\n        <TD ALIGN=\"RIGHT\" ><?php echo $translator->trans('Description'); ?>:</TD>\n        <TD align=\"left\">\n            <INPUT TYPE=\"TEXT\" NAME=\"f_image_description\" id=\"f_image_description\" VALUE=\"<?php echo htmlspecialchars(strip_tags($imageObj->getDescription())); ?>\" SIZE=\"32\" class=\"input_text\" maxlength=\"<?php echo $captionLimit; ?>\">\n            <?php\n                if (!empty($iptcDescription)) {\n                    ?>\n                    <small><a style=\"float:right;\" href=\"javascript:void(0);\" onClick=\"<?php echo $iptcDescriptionCode; ?>\">IPTC</a></small>\n                    <?php\n                }\n            ?>\n        </TD>\n</TR>\n<?php\n    }\n?>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Photographer\"); ?>:</TD>\n\t<TD align=\"left\">\n\t<INPUT TYPE=\"TEXT\" NAME=\"f_image_photographer\" id=\"f_image_photographer\" VALUE=\"<?php echo htmlspecialchars($imageObj->getPhotographer());?>\" SIZE=\"32\" class=\"input_text\">\n    <?php\n        if (!empty($iptcPhotographer)) {\n            ?>\n            <small><a style=\"float:right;\" href=\"javascript:void(0);\" onClick=\"document.getElementById('f_image_photographer').value='<?php echo($iptcPhotographer); ?>';\">IPTC</a></small>\n            <?php\n        }\n    ?>\n\t</TD>\n</TR>\n<tr>\n    <td><?php echo $translator->trans('Photographer URL', array(), 'media_archive'); ?>:</td>\n    <td><input type=\"text\" name=\"f_photographer_url\" class=\"input_text\" value=\"<?php echo $this->view->escape($imageObj->getPhotographerUrl()); ?>\" size=\"32\" title=\"<?php echo $this->view->escape($translator->trans('Add website url starting with http://', array(), 'media_archive')); ?>\" /></td>\n</tr>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Place\"); ?>:</TD>\n\t<TD align=\"left\">\n\t<INPUT TYPE=\"TEXT\" NAME=\"f_image_place\" id=\"f_image_place\" VALUE=\"<?php echo htmlspecialchars($imageObj->getPlace()); ?>\" SIZE=\"32\" class=\"input_text\">\n    <?php\n        if (!empty($iptcPlace)) {\n            ?>\n            <small><a style=\"float:right;\" href=\"javascript:void(0);\" onClick=\"document.getElementById('f_image_place').value='<?php echo($iptcPlace); ?>';\">IPTC</a></small>\n            <?php\n        }\n    ?>\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Date\"); ?>:</TD>\n\t<TD align=\"left\">\n\t<input type=\"text\" id=\"f_image_date\" name=\"f_image_date\" value=\"<?php echo htmlspecialchars($imageObj->getDate()); ?>\" size=\"11\" maxlength=\"10\" class=\"input_text date\" />\n    <?php\n        if (!empty($exifDate)) {\n            ?>\n            <small><a style=\"float:right;\" href=\"javascript:void(0);\" onClick=\"document.getElementById('f_image_date').value='<?php echo($exifDate); ?>';\">&nbsp;EXIF</a></small>\n            <?php\n        }\n        if (!empty($iptcDate)) {\n            ?>\n            <small><a style=\"float:right;\" href=\"javascript:void(0);\" onClick=\"document.getElementById('f_image_date').value='<?php echo($iptcDate); ?>';\">IPTC</a></small>\n            <?php\n        }\n    ?>\n\t</TD>\n</TR>\n<?php\n    if (!empty($iptcDescription) || !empty($iptcPhotographer) || !empty($iptcPlace) || !empty($iptcDate)) {\n        ?>\n\n        <TR>\n            <TD ALIGN=\"RIGHT\" ></TD>\n            <TD align=\"left\">\n            <small><a style=\"float:right;\" href=\"javascript:void(0);\" onClick=\"document.getElementById('f_image_date').value='<?php echo($iptcDate); ?>';document.getElementById('f_image_place').value='<?php echo($iptcPlace); ?>';document.getElementById('f_image_photographer').value='<?php echo($iptcPhotographer); ?>';<?php echo $iptcDescriptionCode ?>\">Import all IPTC</a></small>\n            </TD>\n        </TR>\n\n        <?php\n    }\n?>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Status\"); ?>:</TD>\n\t<TD align=\"left\">\n\t<input type=\"radio\" name=\"f_image_status\" value=\"approved\" <?php if ($imageObj->getStatus() == 'approved') echo('checked'); ?> >Approved\n\t<input type=\"radio\" name=\"f_image_status\" value=\"unapproved\" <?php if ($imageObj->getStatus() == 'unapproved') echo('checked'); ?>>Unapproved\n\t</TD>\n</TR>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Source\", array(), 'media_archive'); ?>:</TD>\n\t<TD align=\"left\">\n\t<?php if ($imageObj->getSource() == 'local') echo $translator->trans('Local', array(), 'media_archive'); ?>\n\t<?php if ($imageObj->getSource() == 'feedback') echo $translator->trans('Feedback', array(), 'media_archive'); ?>\n\t</TD>\n</TR>\n<?php\nif ($imageObj->getLocation() == 'remote') {\n?>\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"URL\"); ?>:</TD>\n\t<TD align=\"left\">\n\t\t<?php echo htmlspecialchars($imageObj->getUrl()); ?>\n\t</TD>\n</TR>\n<?php\n} else {\n?>\n<TR>\n\t<TD ALIGN=\"RIGHT\"><?php  echo $translator->trans(\"Image\"); ?>:</TD>\n\t<TD align=\"left\">\n\t\t<?php echo basename($imageObj->getImageStorageLocation()); ?>\n\t</TD>\n</TR>\n<?php\n}\n?>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\">\n\t<INPUT TYPE=\"HIDDEN\" NAME=\"f_image_id\" VALUE=\"<?php echo $imageObj->getImageId(); ?>\">\n\t<INPUT TYPE=\"submit\" NAME=\"Save\" VALUE=\"<?php  echo $translator->trans('Save'); ?>\" class=\"button\">\n\t</TD>\n</TR>\n</TABLE>\n</FORM>\n<script>\ndocument.forms.image_edit.f_image_description.focus();\n</script>\n<?php\n} // if ($g_user->hasPermission('ChangeImage'))\n\nif (count($articles) > 0) {\n\t// image is in use //////////////////////////////////////////////////////////////////\n\t?>\n\t<TABLE BORDER=\"0\" CELLSPACING=\"1\" CELLPADDING=\"3\" width=\"370px\" class=\"table_list\" style=\"float:left; margin-top: 5px;\">\n\t<tr class=\"table_list_header\">\n\t\t<td><?php echo $translator->trans('Used in articles', array(), 'media_archive'); ?>:</td>\n\t\t<td><?php echo $translator->trans('Language'); ?></td>\n\t</tr>\n\t<?php\n\t$color = 0;\n    $editorService = \\Zend_Registry::get('container')->getService('newscoop.editor');\n\tforeach ($articles as $article) {\n\t\techo '<tr ';\n\t\tif ($color) {\n\t\t\t$color=0;\n\t\t\techo 'class=\"list_row_even\"';\n\t\t} else {\n\t\t\t$color=1;\n\t\t\techo 'class=\"list_row_odd\"';\n\t\t}\n\t\techo '>';\n\t    echo '<td>';\n\t\techo \"<a href=\\\"\".$articleLink = $editorService->getLink($article).'\">'.$this->view->escape($article->getTitle()).'</a></td>';\n\t\techo \"<td>\".$this->view->escape($article->getLanguageName()).\"</td>\";\n\t\techo \"</tr>\";\n\t}\n\t?>\n\t</table>\n\n<?php }\ncamp_html_copyright_notice();\n?>\n"
  },
  {
    "path": "newscoop/admin-files/media-archive/editor_load_tinymce.php",
    "content": "<?php\n/**\n * @param mixed p_dbColumns\n * @param object p_user The User object\n * @param int p_editorLanguage The current or selected language\n * @param array options Override tinyMCE options\n *\n * @return void\n */\nfunction editor_load_tinymce($p_dbColumns, $p_user, $p_editorLanguage, $options=array())\n{\n    global $Campsite;\n\n    $stylesheetFile = $Campsite['WEBSITE_URL'] . '/admin/articles/article_stylesheet.css';\n\n    // Defaults, can be overridden via $options parameter\n    $toolbarlength      = 33;\n\n    // hangle options\n    if (array_key_exists('toolbar_length', $options)) {\n        $toolbarlength = $options['toolbar_length'];\n        unset($options['toolbar_length']);\n    }\n\n    /** STEP 1 ********************************************************\n     * What are the names of the textareas you will be turning\n     * into editors?\n     ******************************************************************/\n    $editors = array();\n    if (is_array($p_dbColumns)) {\n        $editors = $p_dbColumns;\n    } else {\n        $editors[] = $p_dbColumns;\n    }\n    $textareas = implode(',', $editors);\n\n    /** STEP 2 ********************************************************\n     * Now, what are the plugins you will be using in the editors\n     * on this page.  List all the plugins you will need, even if not\n     * all the editors will use all the plugins.\n     ******************************************************************/\n    $plugins = array();\n    if ($p_user->hasPermission('EditorCopyCutPaste')) {\n        $plugins[] = 'paste';\n    }\n    if ($p_user->hasPermission('EditorFindReplace')) {\n        $plugins[] = 'searchreplace';\n    }\n    if ($p_user->hasPermission('EditorEnlarge')) {\n        $plugins[] = 'fullscreen';\n    }\n    if ($p_user->hasPermission('EditorLink')) {\n        $plugins[] = 'campsiteinternallink';\n    }\n    if ($p_user->hasPermission('EditorFontColor')) {\n        $plugins[] = 'codehighlighting';\n    }\n    if ($p_user->hasPermission('EditorTextDirection')) {\n        $plugins[] = 'directionality';\n    }\n\n    $plugins_list = implode(\",\", $plugins);\n\n    $statusbar_location = \"none\";\n    if ($p_user->hasPermission('EditorStatusBar')) {\n        $statusbar_location = \"bottom\";\n    }\n\n    /** STEP 3 ********************************************************\n     * We create a default configuration to be used by all the editors.\n     * If you wish to configure some of the editors differently this\n     * will be done in step 4.\n     ******************************************************************/\n    $toolbar = array();\n    if ($p_user->hasPermission('EditorBold')) {\n        $toolbar[] = \"bold\";\n    }\n    if ($p_user->hasPermission('EditorItalic')) {\n        $toolbar[] = \"italic\";\n    }\n    if ($p_user->hasPermission('EditorUnderline')) {\n        $toolbar[] = \"underline\";\n    }\n    if ($p_user->hasPermission('EditorStrikethrough')) {\n        $toolbar[] = \"strikethrough\";\n        $toolbar[] = \"blockquote\";\n    }\n    if ($p_user->hasPermission('EditorTextAlignment')) {\n        $toolbar[] = \"|\";\n        $toolbar[] = \"justifyleft\";\n        $toolbar[] = \"justifycenter\";\n        $toolbar[] = \"justifyright\";\n        $toolbar[] = \"justifyfull\";\n    }\n    if ($p_user->hasPermission('EditorIndent')) {\n        $toolbar[] = \"|\";\n        $toolbar[] = \"outdent\";\n        $toolbar[] = \"indent\";\n    }\n    if ($p_user->hasPermission('EditorCopyCutPaste')) {\n        $toolbar[] = \"|\";\n        $toolbar[] = \"copy\";\n        $toolbar[] = \"cut\";\n        $toolbar[] = \"paste\";\n        $toolbar[] = \"pastetext\";\n        $toolbar[] = \"pasteword\";\n    }\n    if ($p_user->hasPermission('EditorUndoRedo')) {\n        $toolbar[] = \"|\";\n        $toolbar[] = \"undo\";\n        $toolbar[] = \"redo\";\n    }\n    if ($p_user->hasPermission('EditorTextDirection')) {\n        $toolbar[] = \"|\";\n        $toolbar[] = \"ltr\";\n        $toolbar[] = \"rtl\";\n    }\n\n    if ($p_user->hasPermission('EditorLink')) {\n        $toolbar[] = \"|\";\n        $toolbar[] = \"campsiteinternallink\";\n        $toolbar[] = \"link\";\n    }\n    if ($p_user->hasPermission('EditorSourceView')) {\n        $toolbar[] = \"code\";\n    }\n    if ($p_user->hasPermission('EditorEnlarge')) {\n        $toolbar[] = \"fullscreen\";\n    }\n    if ($p_user->hasPermission('EditorHorizontalRule')) {\n        $toolbar[] = \"hr\";\n    }\n    if ($p_user->hasPermission('EditorFontColor')) {\n        $toolbar[] = \"forecolor\";\n        $toolbar[] = \"backcolor\";\n        $toolbar[] = 'codehighlighting';\n    }\n    if ($p_user->hasPermission('EditorSubscript')) {\n        $toolbar[] = \"sub\";\n    }\n    if ($p_user->hasPermission('EditorSuperscript')) {\n        $toolbar[] = \"sup\";\n    }\n    if ($p_user->hasPermission('EditorCharacterMap')) {\n        $toolbar[] = \"charmap\";\n    }\n    if ($p_user->hasPermission('EditorListBullet') && $p_user->hasPermission('EditorListNumber')) {\n        $toolbar[] = \"|\";\n        $toolbar[] = \"bullist\";\n        $toolbar[] = \"numlist\";\n    } elseif ($p_user->hasPermission('EditorListBullet') && !$p_user->hasPermission('EditorListNumber')) {\n        $toolbar[] = \"|\";\n        $toolbar[] = \"bullist\";\n    } elseif (!$p_user->hasPermission('EditorListBullet') && $p_user->hasPermission('EditorListNumber')) {\n        $toolbar[] = \"|\";\n        $toolbar[] = \"numlist\";\n    }\n\n    // Create toolbar rows base on toolbarlength option\n    $toolbarRow = 0;\n    $toolbarCollector = array();\n    while (count($toolbar) > 0) {\n        $tmpArray = array_splice($toolbar, 0, $toolbarlength);\n\n        if (in_array('forecolor', $tmpArray) && in_array('backcolor', $tmpArray)) {\n            $button = array_pop($tmpArray);\n            array_unshift($toolbar, $button);\n        }\n\n        if ($tmpArray[0] == '|') {\n            $tmpArray = array_splice($tmpArray, 1);\n        }\n        if ($tmpArray[count($tmpArray)-1] == '|') {\n            $tmpArray = array_splice($tmpArray, 0, count($tmpArray)-1);\n        }\n\n        $toolbarCollector[$toolbarRow] = $tmpArray;\n        $toolbarRow++;\n    }\n\n    // Add fontface and fontsize select fields on logical positions\n    if ($p_user->hasPermission('EditorFontFace')) {\n\n        $lastIndex = (count($toolbarCollector) - 1);\n        $lastRow = $toolbarCollector[$lastIndex];\n\n        if (($toolbarlength - count($toolbarCollector[$lastIndex])) > 5) {\n            $toolbarCollector[$lastIndex][] = \"|\";\n            $toolbarCollector[$lastIndex][] = \"formatselect\";\n        } else {\n            $toolbarCollector[++$lastIndex][] = \"formatselect\";\n        }\n    }\n    if ($p_user->hasPermission('EditorFontSize')) {\n\n        $lastIndex = (count($toolbarCollector) - 1);\n        $lastRow = $toolbarCollector[$lastIndex];\n\n        if (($toolbarlength - count($toolbarCollector[$lastIndex])) > 5) {\n            $toolbarCollector[$lastIndex][] = \"|\";\n            $toolbarCollector[$lastIndex][] = \"fontsizeselect\";\n        } else {\n            $toolbarCollector[++$lastIndex][] = \"fontsizeselect\";\n        }\n    }\n\n    // Make sure there are always 3 toolbars, tinymce requires 3 to be defined\n    if (count($toolbarCollector) < 3) {\n        $toolbarCollector = array_pad($toolbarCollector, 3, array());\n    }\n\n    $localeFile = $Campsite['CAMPSITE_DIR'] . '/js/tinymce/langs/' . $p_editorLanguage . '.js';\n    if (!file_exists($localeFile)) {\n        $p_editorLanguage = 'en';\n    }\n    // Convert resting options to json\n    $optionsAsJson = json_encode($options);\n?>\n\n<!-- Load TinyMCE -->\n<script type=\"text/javascript\" src=\"/js/tinymce/tiny_mce.js\"></script>\n<script type=\"text/javascript\">\n\nvar validateTinyMCEEditors = function() { return true; };\n\nvar tinyMceOptions = {\n\n    // General options\n    language : \"<?php p($p_editorLanguage); ?>\",\n    mode : \"exact\",\n    elements : \"<?php p($textareas); ?>\",\n    theme : \"advanced\",\n    plugins : \"<?php p($plugins_list); ?>\",\n\n    forced_root_block : \"p\",\n    relative_urls : false,\n\n    <?php\n        // Print toolbars\n        foreach ($toolbarCollector as $row => $buttons) {\n            echo sprintf('theme_advanced_buttons%d : \"%s\",%s', ++$row, implode(',', $buttons), \"\\n\\t\");\n        }\n    ?>\n\n    theme_advanced_toolbar_location : \"external\",\n    theme_advanced_toolbar_align : \"left\",\n    theme_advanced_resizing : false,\n    theme_advanced_statusbar_location: \"<?php p($statusbar_location); ?>\",\n\n    // Restrict usage of certain elements\n    invalid_elements: \"html,head,body,title,base,link,meta,style,script,\"+\n        \"noscript,template,section,nav,article,aside,header,footer,\"+\n        \"address,main,figure,figcaption,div,data,time,code,car,samp,kbd,\"+\n        \"mark,ruby,rt,rp,ins,del,img,map,area,svg,math,table,caption,\"+\n        \"colgroup,col,tbody,thead,tfoor,tr,td,th,form,fieldset,legend,\"+\n        \"label,input,button,select,datalist,optgroup,option,textarea,\"+\n        \"keygen,output,progress,meter,details,summary,menuitem,menu\",\n\n    // Limit characters\n    max_chars : 0,\n    max_chars_indicator : \".maxCharsSpan\",\n\n    // Example content CSS (should be your site CSS)\n    content_css : \"<?php echo $stylesheetFile; ?>\",\n\n    // Drop lists for link/image/media/template dialogs\n    template_external_list_url : \"lists/template_list.js\",\n    external_link_list_url : \"lists/link_list.js\",\n    external_image_list_url : \"lists/image_list.js\",\n    media_external_list_url : \"lists/media_list.js\",\n\n    // paste options\n    paste_auto_cleanup_on_paste: true,\n    paste_convert_headers_to_strong: true,\n    paste_remove_spans: true,\n    paste_remove_styles: true,\n    paste_block_drop: true,\n\n    // not escaping greek characters\n    entity_encoding: 'raw',\n\n    <?php if ($p_user->hasPermission('EditorSpellcheckerEnabled')) { ?>\n    gecko_spellcheck : true,\n    <?php } ?>\n\n    <?php\n    $translator = \\Zend_Registry::get('container')->getService('translator');\n    ?>\n    setup : function(ed) {\n        var wordcount = false;\n\n        ed.onKeyUp.add(function(ed, l) {\n            var row = tinymce.DOM.get(tinyMCE.activeEditor.id + '_path_row');\n            if (!wordcount) {\n                tinymce.DOM.add(row.parentNode, 'div', {'style': 'float: right'}, '<?php echo $translator->trans(\"Characters\", array(), 'articles'); ?>: ' + '<span id=\"' + tinyMCE.activeEditor.id + '-wordcount\">0</span>');\n                wordcount = true;\n            }\n            var strip = (tinyMCE.activeEditor.getContent()).replace(/(<([^>]+)>)/ig,\"\");\n            tinymce.DOM.setHTML(tinyMCE.activeEditor.id + '-wordcount', strip.length);\n        });\n    }\n};\n\n$.extend(tinyMceOptions, <?php echo $optionsAsJson; ?>);\n\n// Remove option when value is  '0'. '0' indicates no character limit but\n// plugin doesn't support this functionality.\nif (tinyMceOptions.max_chars == 0) {\n    delete tinyMceOptions.max_chars;\n}\n\n// Default skin\ntinyMCE.init(tinyMceOptions);\n\nfunction tinyMCECharsValid(editor, maxChars) {\n    if (maxChars == 0) return true;\n    var text = editor.getContent().replace(/<[^>]*>/g, '').replace(/\\s+/g, ' ');\n    text = text.replace(/^\\s\\s*/, '').replace(/\\s\\s*$/, '');\n    return (text.length <= maxChars);\n}\n\n<?php\n    $prefService = \\Zend_Registry::get('container')->getService('preferences');\n    if ($prefService->MediaRichTextCaptions == 'Y') {\n?>\n\nvalidateTinyMCEEditors = function() {\n\n    if (typeof(tinyMceOptions.max_chars) == 'undefined') {\n        return true;\n    }\n\n    var valid = true;\n    var invalidInstances = [];\n\n    for (inst in tinyMCE.editors) {\n        // Check if entry is valid tinyMCE instance and skip numeric instances\n        if (tinyMCE.editors[inst].getContent && isNaN(inst)) {\n            if (!tinyMCECharsValid(tinyMCE.editors[inst], tinyMceOptions.max_chars)) {\n                valid = false;\n                invalidInstances.push(inst);\n            }\n        }\n    }\n\n    if (!valid) {\n        // TODO: Translate this\n        alert('<?php echo $translator->trans('An image caption is too long. The character limit is $1.', array(), 'media_archive'); ?>'.replace('$1', tinyMceOptions.max_chars));\n        // Focus first instance\n        tinymce.execCommand('mceFocus', false, invalidInstances[0]);\n    }\n\n    return valid;\n}\n\n<?php\n    }\n?>\n\n</script>\n<!-- /TinyMCE -->\n<?php\n} // fn editor_load_tinymce\n?>\n"
  },
  {
    "path": "newscoop/admin-files/media-archive/index.php",
    "content": "<?php\nrequire_once LIBS_DIR . '/ImageList/ImageList.php';\nrequire_once LIBS_DIR . '/MediaList/MediaList.php';\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n$controller->view->headTitle($translator->trans('Media Archive', array(), 'media_archive').' - Newscoop Admin', 'SET');\n\ncamp_html_content_top($translator->trans('Media Archive', array(), 'media_archive'), NULL);\n?>\n<script>\n    var adminUrl = '<?php global $ADMIN; echo($ADMIN); ?>';\n</script>\n\n<?php camp_html_display_msgs(); ?>\n\n<div id=\"archive\">\n<ul>\n    <li><a href=\"#images\"><?php echo $translator->trans('Images'); ?></a></li>\n    <li><a href=\"#slideshows\"><?php echo $translator->trans('Slideshows', array(), 'media_archive'); ?></a></li>\n    <li><a href=\"#files\"><?php echo $translator->trans('Files'); ?></a></li>\n</ul>\n\n<div id=\"images\">\n    <fieldset class=\"actions\">\n    <?php if ($g_user->hasPermission('AddImage')) { ?>\n    <span class=\"actions\" style=\"margin-right:20px;\">\n        <a href=\"/<?php echo $ADMIN; ?>/media-archive/add.php\" title=\"<?php echo $translator->trans('Add new image', array(), 'media_archive'); ?>\"><img src=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/add.png\" alt=\"<?php echo $translator->trans('Add new image', array(), 'media_archive'); ?>\">&nbsp;<?php echo $translator->trans('Add new image', array(), 'media_archive'); ?></a>\n        &nbsp;&nbsp;\n        <a href=\"/<?php echo $ADMIN; ?>/media-archive/edit.php?f_fix_thumbs=1\" title=\"<?php echo $translator->trans('Fix all thumbnails', array(), 'media_archive'); ?>\"><?php echo $translator->trans('Fix all thumbnails', array(), 'media_archive'); ?></a>\n    </span>\n    <?php } ?>\n\n    <?php if ($g_user->hasPermission('DeleteImage')) { ?>\n        <input type=\"submit\" class=\"button\" name=\"delete\" value=\"<?php echo $translator->trans('Delete selected', array(), 'media_archive'); ?>\" />\n        <input type=\"submit\" class=\"button\" name=\"approve\" value=\"<?php echo $translator->trans('Approve selected', array(), 'media_archive'); ?>\" />\n        <input type=\"submit\" class=\"button\" name=\"disapprove\" value=\"<?php echo $translator->trans('Disapprove selected', array(), 'media_archive'); ?>\" />\n    <?php } ?>\n    </fieldset>\n\n    <?php\n        $list = new ImageList;\n        $list->setSearch(TRUE);\n        $list->render();\n    ?>\n</div><!-- /#images -->\n\n<div id=\"slideshows\">\n<?php\n    $limit = 25;\n    $paginator = Zend_Paginator::factory($this->_helper->service('package')->getCountBy(array()));\n    $paginator->setItemCountPerPage($limit);\n    $paginator->setCurrentPageNumber(1);\n    echo $this->view->partial('slideshow-list.phtml', array(\n        'slideshows' => $this->view->slideshowsJson($this->_helper->service('package')->findBy(array(), array('id' => 'desc'), $limit, 0)),\n        'pages' => $paginator->count(),\n        'articlePage' => false,\n    )); ?>\n</div>\n\n<div id=\"files\">\n    <fieldset class=\"actions\">\n    <?php if ($g_user->hasPermission('AddFile')) { ?>\n    <span class=\"actions\" style=\"margin-right:20px;\">\n        <a href=\"/<?php echo $ADMIN; ?>/media-archive/add_file.php\" title=\"<?php echo $translator->trans('Add new file', array(), 'media_archive'); ?>\"><img src=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/add.png\" alt=\"<?php echo $translator->trans('Add new file', array(), 'media_archive'); ?>\">&nbsp;<?php echo $translator->trans('Add new file', array(), 'media_archive'); ?></a>\n    </span>\n    <script type=\"text/javascript\"><!--\n        $(document).ready(function() {\n            $('a#new_file').click(function() {\n                var url = $(this).attr('href');\n                window.open(url, 'new_file', 'scrollbars=yes, resizable=yes, menubar=no, toolbar=no, width=500, height=400, top=200, left=100');\n                return false;\n            });\n        });\n    //--></script>\n    <?php } ?>\n\n    <?php if ($g_user->hasPermission('DeleteFile')) { ?>\n        <input type=\"submit\" class=\"button\" name=\"delete\" value=\"<?php echo $translator->trans('Delete selected', array(), 'media_archive'); ?>\" />\n        <input type=\"submit\" class=\"button\" name=\"approve\" value=\"<?php echo $translator->trans('Approve selected', array(), 'media_archive'); ?>\" />\n        <input type=\"submit\" class=\"button\" name=\"disapprove\" value=\"<?php echo $translator->trans('Disapprove selected', array(), 'media_archive'); ?>\" />\n    <?php } ?>\n    </fieldset>\n\n    <?php\n        $list = new MediaList;\n        $list->setColVis(TRUE);\n        $list->setSearch(TRUE);\n        $list->render();\n    ?>\n</div><!-- /#files -->\n\n</div><!-- /#archive -->\n<script type=\"text/javascript\">\n<!--\n$(document).ready(function() {\n    // tabs\n    $('#archive').tabs()\n        .css('border', 'none');\n\n    // delete button\n    $('input[name=delete]').click(function() {\n        var tab = $(this).closest('div');\n        var table = $('table.datatable', tab);\n        var items = $('tbody input:checked', table);\n\n        // check for items\n        if (!items.size()) {\n            alert('<?php echo $translator->trans('Select some items first.', array(), 'media_archive'); ?>');\n            return false;\n        }\n\n        // get ids\n        var ids = [];\n        var used = false;\n        items.each(function() {\n            if ($('.used', $(this).closest('tr')).size()) {\n                used = true;\n            } else {\n                ids.push($(this).attr('value'));\n            }\n        });\n\n        if (!ids.length) { // only used selected, nothing to delete\n            flashMessage(\"<?php echo $translator->trans(\"You cant delete used files.\", array(), 'media_archive'); ?>\", 'error');\n            return true;\n        }\n\n        // confirm\n        if (!used && !confirm('<?php echo $translator->trans('Are you sure you want to delete selected items?', array(), 'media_archive'); ?>')) {\n            return false;\n        } else if (used && !confirm(\"<?php echo $translator->trans(\"You cant delete used files.\", array(), 'media_archive'), ' ', $translator->trans(\"Do you want to delete unused only?\", array(), 'media_archive'); ?>\")) {\n            return false; // delete canceled\n        }\n\n        // delete\n        var callback = [];\n        if (table.hasClass('medialist')) { // files\n            callback = ['MediaList', 'doDelete'];\n        } else {\n            callback = ['ImageList', 'doDelete'];\n        }\n        callServer(callback, [ids], function (json) {\n            var smartlistId = table.closest('.smartlist').attr('id').split('-')[1];\n            tables[smartlistId].fnDraw(true);\n            flashMessage('<?php echo $translator->trans('Items deleted.', array(), 'media_archive'); ?>');\n        });\n\n        return false;\n    });\n    \n    // approve button\n    $('input[name=approve]').click(function() {\n        var tab = $(this).closest('div');\n        var table = $('table.datatable', tab);\n        var items = $('tbody input:checked', table);\n\n        // check for items\n        if (!items.size()) {\n            alert('<?php echo $translator->trans('Select some items first.', array(), 'media_archive'); ?>');\n            return false;\n        }\n\n        // get ids\n        var ids = [];\n        var used = false;\n        items.each(function() {\n            ids.push($(this).attr('value'));\n        });\n\n        if (!ids.length) { // only used selected, nothing to delete\n            flashMessage(\"<?php echo $translator->trans(\"You cant update used files.\", array(), 'media_archive'); ?>\", 'error');\n            return true;\n        }\n\n        // confirm\n        if (!confirm('<?php echo $translator->trans('Are you sure you want to update selected items?', array(), 'media_archive'); ?>')) {\n            return false;\n        }\n\n        // delete\n        var callback = [];\n        if (table.hasClass('medialist')) { // files\n            callback = ['MediaList', 'doApprove'];\n        } else {\n            callback = ['ImageList', 'doApprove'];\n        }\n        callServer(callback, [ids], function (json) {\n            var smartlistId = table.closest('.smartlist').attr('id').split('-')[1];\n            tables[smartlistId].fnDraw(true);\n            flashMessage('<?php echo $translator->trans('Items updated.', array(), 'media_archive'); ?>');\n        });\n\n        return false;\n    });\n    \n    // disapprove button\n    $('input[name=disapprove]').click(function() {\n        var tab = $(this).closest('div');\n        var table = $('table.datatable', tab);\n        var items = $('tbody input:checked', table);\n\n        // check for items\n        if (!items.size()) {\n            alert('<?php echo $translator->trans('Select some items first.', array(), 'media_archive'); ?>');\n            return false;\n        }\n\n        // get ids\n        var ids = [];\n        var used = false;\n        items.each(function() {\n            if ($('.used', $(this).closest('tr')).size()) {\n                used = true;\n            } else {\n                ids.push($(this).attr('value'));\n            }\n        });\n\n        if (!ids.length) { // only used selected, nothing to delete\n            flashMessage(\"<?php echo $translator->trans(\"You cant update used files.\", array(), 'media_archive'); ?>\", 'error');\n            return true;\n        }\n\n        // confirm\n        if (!used && !confirm('<?php echo $translator->trans('Are you sure you want to update selected items?', array(), 'media_archive'); ?>')) {\n            return false;\n        } else if (used && !confirm(\"<?php echo $translator->trans(\"You cant update used files.\", array(), 'media_archive'), ' ', $translator->trans(\"Do you want to update unused only?\", array(), 'media_archive'); ?>\")) {\n            return false; // delete canceled\n        }\n\n        // delete\n        var callback = [];\n        if (table.hasClass('medialist')) { // files\n            callback = ['MediaList', 'doDisapprove'];\n        } else {\n            callback = ['ImageList', 'doDisapprove'];\n        }\n        callServer(callback, [ids], function (json) {\n            var smartlistId = table.closest('.smartlist').attr('id').split('-')[1];\n            tables[smartlistId].fnDraw(true);\n            flashMessage('<?php echo $translator->trans('Items updated.', array(), 'media_archive'); ?>');\n        });\n\n        return false;\n    });\n});\n\nfunction view(field, id, value) {\n    console.log(value);\n    if (!value) {\n        value = $('#row_' + id).find('.' + field).data('old');\n    }\n    var element = $('#row_' + id).find('.' + field);\n    var editElement = $('#edit_'+field+'_'+id);\n    \n    editElement.remove();\n    element.html(value);\n    element.show();\n}\n\nfunction edit(field, id) {\n    var element = $('#row_' + id).find('.' + field);\n    var previous = element.prev();\n    var value = element.html();\n    \n    element.data('old', value);\n    element.hide();\n    if (field == 'date') {\n        previous.after('<td id=\"edit_'+field+'_'+id+'\"><input id=\"input_'+field+'_'+id+'\" value=\"'+value+'\"><br><button onClick=\"save(\\''+field+'\\', '+id+');\"><?php echo $translator->trans('Save'); ?></button><button class=\"cancel\" onClick=\"view(\\''+field+'\\', '+id+');\"><?php echo $translator->trans('Cancel'); ?></button></td>');\n        $('#input_'+field+'_'+id).datepicker({\n            dateFormat : 'yy-mm-dd',\n            defaultDate: 'value'\n        });\n    }\n    else {\n        previous.after('<td id=\"edit_'+field+'_'+id+'\"><input id=\"input_'+field+'_'+id+'\" value=\"'+value+'\"><br><button onClick=\"save(\\''+field+'\\', '+id+');\"><?php echo $translator->trans('Save'); ?></button><button class=\"cancel\" onClick=\"view(\\''+field+'\\', '+id+');\"><?php echo $translator->trans('Cancel'); ?></button></td>');\n    }\n}\n\nfunction save(field, id) {\n    var value = $('#input_' + field + '_' + id).val();\n    $.get('/' + adminUrl + '/media-archive/ajax_save.php', {f_image_id: id, f_field: field, f_value: value});\n    view(field, id, value);\n}\n\n/**\n * Function to be called from popup after file is uploaded\n * @return void\n */\nfunction onUpload()\n{\n    var smartlistId = $('table.medialist').attr('id').split('-')[1];\n    tables[smartlistId].fnDraw(true);\n    flashMessage('<?php echo $translator->trans('File uploaded.', array(), 'media_archive'); ?>');\n}\n\n\n</script>\n\n<?php camp_html_copyright_notice(); ?>\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/admin-files/media-archive/multiedit.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Image.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ImageSearch.php');\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/media-archive/editor_load_tinymce.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$preferencesService = \\Zend_Registry::get('container')->getService('preferences');\n\n$captionStatus = $preferencesService->MediaRichTextCaptions;\n$captionLimit = $preferencesService->MediaCaptionLength;\n\nif (!$g_user->hasPermission('AddImage')) {\n\tcamp_html_goto_page(\"/$ADMIN/logout.php\");\n}\n\n// get all images without set date (0000-00-00)\n$imageSearch = new ImageSearch('0000', 'id', 'ASC', 0, 100);\n$imageSearch->run();\n$imageData = $imageSearch->getImages();\n\nif (empty($imageData)) {\n    camp_html_add_msg($translator->trans('No images for multi editing.', array(), 'media_archive'), 'ok');\n    camp_html_goto_page(\"/$ADMIN/media-archive/index.php\");\n}\n\n$crumbs = array();\n$crumbs[] = array($translator->trans('Content'), \"\");\n$crumbs[] = array($translator->trans('Media Archive', array(), 'media_archive'), \"/$ADMIN/media-archive/index.php\");\n$crumbs[] = array($translator->trans('Edit images', array(), 'media_archive'), \"\");\n$breadcrumbs = camp_html_breadcrumbs($crumbs);\n\n$controller->view->headTitle($translator->trans('Edit images', array(), 'media_archive').' - Newscoop Admin', 'SET');\n\necho $breadcrumbs;\n\ncamp_html_display_msgs();\n\n?>\n\n<div class=\"ui-widget-content padded-strong block-shadow\">\n\n<form name=\"image_multiedit\" method=\"POST\" action=\"/<?php echo $ADMIN; ?>/media-archive/do_multiedit.php\" enctype=\"multipart/form-data\" onsubmit=\"<?php\n    if ($preferencesService->MediaRichTextCaptions  == 'Y') {\n        echo 'return validateTinyMCEEditors();';\n    }\n?>\">\n\n<fieldset class=\"plain\">\n\n<?php echo SecurityToken::FormParameter(); ?>\n<ul id=\"edit-images\">\n    <?php foreach ($imageData as $image): ?>\n    <?php\n        unset($exifDate);\n        unset($iptcDate);\n        unset($iptcPlace);\n        unset($iptcPhotographer);\n        unset($iptcDescription);\n\n        $imageObj = new Image($image['id']);\n        $allowedExtensions = array('jpg', 'jpeg', 'tiff', 'tif');\n        $imagePathParts = explode('.', $imageObj->getImageFileName());\n        $imageExtension = strtolower($imagePathParts[count($imagePathParts) - 1]);\n\n        if (in_array($imageExtension, $allowedExtensions)) {\n            $exif = @exif_read_data($imageObj->getImageStorageLocation());\n            if (isset($exif['DateTime'])) {\n                $exifDate = date('Y-m-d', strtotime($exif['DateTime']));\n            }\n\n            $size = getimagesize($imageObj->getImageStorageLocation(), $info);\n            $iptc = array();\n            foreach ($info as $key => $value) {\n                $iptc[$key] = iptcparse($value);\n            }\n            if (isset($iptc['APP13'])) {\n                $iptc = $iptc['APP13'];\n            }\n            if (isset($iptc['2#055'])) {\n                $iptcDate = $iptc['2#055'][0];\n                $iptcDate = date('Y-m-d', strtotime($iptcDate));\n            }\n            if (isset($iptc['2#080'])) {\n                $iptcPhotographer = $iptc['2#080'][0];\n            }\n            if (isset($iptc['2#120'])) {\n                $iptcDescription = $iptc['2#120'][0];\n            }\n            if (isset($iptc['2#090']) || isset($iptc['2#092']) || isset($iptc['2#101'])) {\n                $iptcPlace = array();\n                if (isset($iptc['2#101'])) {\n                    $iptcPlace[] = $iptc['2#101'][0];\n                }\n                if (isset($iptc['2#090'])) {\n                    $iptcPlace[] = $iptc['2#090'][0];\n                }\n                if (isset($iptc['2#092'])) {\n                    $iptcPlace[] = $iptc['2#092'][0];\n                }\n                $iptcPlace = implode(', ', $iptcPlace);\n            }\n        }\n\n        $image['date'] = date('Y-m-d');\n\n        if (isset($exifDate)) {\n            $image['date'] = $exifDate;\n        }\n        if (isset($iptcDate)) {\n            $image['date'] = $iptcDate;\n        }\n        if (isset($iptcDescription)) {\n            $image['description'] = $iptcDescription;\n        }\n        if (isset($iptcPhotographer)) {\n            $image['photographer'] = $iptcPhotographer;\n        }\n        if (isset($iptcPlace)) {\n            $image['place'] = $iptcPlace;\n        }\n    ?>\n    <?php if (!empty($image['Description']) || empty($image['thumbnail_url'])) { continue; } ?>\n    <li>\n        <div><img src=\"<?php echo $image['thumbnail_url']; ?>\" border=\"0\"></div>\n\t\t<fieldset>\n\t\t    <legend><?php  echo $translator->trans(\"Change image information\", array(), 'media_archive'); ?></legend>\n\n\t\t    <dl>\n                <dt><?php  echo $translator->trans(\"Description\"); ?>:</dt>\n                <dd><?php\n\n                    if ($captionStatus == 'Y') {\n\n                        $loadAsRichtext[]   = 'image_description_'.$image['id'];\n\n                        echo '<textarea name=\"image['.$image['id'].'][f_description]\" id=\"image_description_'.$image['id'].'\" rows=\"4\" class=\"image-description\">'.$image['description'].'</textarea>';\n                    } else {\n\n                        echo '<input type=\"text\" name=\"image['.$image['id'].'][f_description]\" value=\"'.strip_tags($image['description']).'\" size=\"32\" class=\"input_text\">';\n                    }\n                ?></dd>\n\t\t    </dl>\n\t\t    <dl>\n\t\t        <dt><?php  echo $translator->trans(\"Photographer\"); ?>:</dt>\n                <dd>\n                    <input type=\"text\" name=\"image[<?php echo $image['id']; ?>][f_photographer]\" value=\"<?php echo htmlspecialchars($image['photographer']);?>\" size=\"32\" class=\"input_text copy\">\n                </dd>\n\t\t    </dl>\n            <dl>\n                <dt><?php  echo $translator->trans(\"Photographer URL\"); ?>:</dt>\n                <dd>\n                    <input type=\"text\" name=\"image[<?php echo $image['id']; ?>][f_photographer_url]\" value=\"<?php echo htmlspecialchars($image['photographer_url']);?>\" size=\"32\" class=\"input_text copy\">\n                </dd>\n            </dl>\n\t\t    <dl>\n\t\t        <dt><?php  echo $translator->trans(\"Place\"); ?>:</dt>\n                <dd>\n                    <input type=\"text\" name=\"image[<?php echo $image['id']; ?>][f_place]\" value=\"<?php echo htmlspecialchars($image['place']); ?>\" size=\"32\" class=\"input_text copy\">\n                </dd>\n\t\t    </dl>\n\t\t    <dl>\n\t\t        <dt><?php  echo $translator->trans(\"Date\"); ?>:</dt>\n                <dd>\n                    <input type=\"text\" name=\"image[<?php echo $image['id']; ?>][f_date]\" value=\"<?php echo htmlspecialchars($image['date']); ?>\" size=\"11\" maxlength=\"10\" class=\"input_text copy datepicker\">\n                </dd>\n\t\t    </dl>\n\t\t</fieldset>\n    </li>\n    <?php endforeach; ?>\n</ul>\n\n</fieldset>\n\n<fieldset class=\"plain\" style=\"margin-top: 13px\">\n    <input type=\"submit\" name=\"Save\" value=\"<?php  echo $translator->trans('Save'); ?>\" class=\"save-button\" />\n</fieldset>\n\n</form>\n\n</div>\n\n<?php\n    // Load tinymce once for all textareas\n    if (count($loadAsRichtext) > 0) {\n\n        $languageSelectedObj = new Language((int) camp_session_get('LoginLanguageId', 0));\n        $editorLanguage = !empty($_COOKIE['TOL_Language']) ? $_COOKIE['TOL_Language'] : $languageSelectedObj->getCode();\n\n        $editorOptions  = array(\n            'max_chars' => $captionLimit,\n            'toolbar_length' => 15,\n        );\n\n        editor_load_tinymce($loadAsRichtext, $g_user, $editorLanguage, $editorOptions);\n    }\n?>\n\n<script type=\"text/javascript\">\n/**\n * Copy field value to all fields of that name.\n *\n * @param string field\n * @param int imageId\n *\n * @return void\n */\nfunction copyToAll(field, imageId)\n{\n    var value = $(\"input[name*=\" + imageId + \"][name*=\" + field + \"]\").val();\n    $(\"input[name*=\" + field + \"]\").val(value);\n}\n\n// add copy to all link to all inputs with class=\"copy\"\n$('input.copy').each(function() {\n    var name = $(this).attr('name');\n    var match = name.match(/([a-z0-9_]+)/g);\n    var id = match[1];\n    var field = match[2];\n\n    var elem = '<br /><a class=\"copy-to-all\" href=\"javascript:copyToAll(\\'' + field + '\\',' + id + ');\">';\n    elem += '<?php echo $translator->trans('Use for all', array(), 'media_archive'); ?>';\n    elem += '</a>';\n    $(this).after(elem);\n});\n\n// datepicker for date\n$('.datepicker').datepicker({\n    dateFormat: 'yy-mm-dd'\n});\n</script>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/media-archive/multiedit_file.php",
    "content": "<?php\n/**\n * @package Newscoop\n *\n * @author Mihai Nistor <mihai.nistor@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Attachment.php');\n\nif (!$g_user->hasPermission('AddFile')) {\n    camp_html_goto_page(\"/$ADMIN/logout.php\");\n}\n\n// get all files without description (0)\n$attachmentService = \\Zend_Registry::get('container')->getService('attachment');\n$fileData = $attachmentService->getUnedited($g_user->getUserId());\n\nif (empty($fileData)) {\n    camp_html_add_msg($translator->trans('No files for multi editing.', array(), 'media_archive'), 'ok');\n    camp_html_goto_page(\"/$ADMIN/media-archive/index.php\");\n}\n\n$crumbs = array();\n$crumbs[] = array($translator->trans('Content'), \"\");\n$crumbs[] = array($translator->trans('Media Archive', array(), 'media_archive'), \"/$ADMIN/media-archive/index.php\");\n$crumbs[] = array($translator->trans('Edit files', array(), 'media_archive'), \"\");\n$breadcrumbs = camp_html_breadcrumbs($crumbs);\n\n$controller->view->headTitle($translator->trans('Edit files', array(), 'media_archive').' - Newscoop Admin', 'SET');\n\necho $breadcrumbs;\n\ncamp_html_display_msgs();\n\n?>\n<?php include_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/javascript_common.php\");?>\n<script type=\"text/javascript\">\n    if (window.top.location.href != window.location.href) {\n        window.top.location.href = window.location.href;\n    }\n</script>\n\n<div class=\"ui-widget-content padded-strong block-shadow\">\n\n<form name=\"image_multiedit\" method=\"POST\" action=\"/<?php echo $ADMIN; ?>/media-archive/do_multiedit_file.php\" onsubmit=\"return <?php camp_html_fvalidate(); ?>;\">\n\n<fieldset class=\"plain\">\n\n<?php echo SecurityToken::FormParameter(); ?>\n<ul id=\"edit-files\">\n    <?php foreach ($fileData as $index => $file) { ?>\n    <li>\n        <h2><?php echo $file['name']; ?></h2>\n        <fieldset>\n            <legend><?php  echo $translator->trans(\"Change file information\", array(), 'media_archive'); ?></legend>\n\n            <dl>\n                <dt><?php  echo $translator->trans(\"Description\"); ?>:</dt>\n                <dd><input type=\"text\" name=\"file[<?php echo $file['id']; ?>][f_description]\" value=\"\" size=\"32\" class=\"input_text\" size=\"32\" class=\"input_text\" alt=\"blank\" emsg=\"<?php echo $translator->trans(\"Please enter a description for the file: $1.\", array('$1' => $file['name']), 'media_archive'); ?>\"/></dd>\n            </dl>\n            <dl>\n                <dt><?php  echo $translator->trans(\"Should this file only be available for this translation of the article, or for all translations?\", array(), 'media_archive'); ?></dt>\n                <dd>\n                    <p>\n                        <input id=\"language_specific_0_<?php echo $index; ?>\" class=\"input_radio\" type=\"radio\" name=\"file[<?php echo $file['id']; ?>][f_language_specific]\" value=\"yes\">\n                        <label for=\"language_specific_0_<?php echo $index; ?>\" class=\"inline-style left-floated\" style=\"padding-right:15px\"><?php echo $translator->trans(\"Only this translation\", array(), 'media_archive'); ?></label>\n                        <input id=\"language_specific_1_<?php echo $index; ?>\" class=\"input_radio\" type=\"radio\" name=\"file[<?php echo $file['id']; ?>][f_language_specific]\" value=\"no\" checked=\"checked\" />\n                        <label for=\"language_specific_1_<?php echo $index; ?>\" class=\"inline-style left-floated\" style=\"padding-right:15px\"><?php echo $translator->trans(\"All translations\", array(), 'media_archive'); ?></label>\n                    </p>\n                </dd>\n            </dl>\n            <dl>\n                <dt><?php  echo $translator->trans(\"Do you want this file to open in the user's browser, or to automatically download?\", array(), 'media_archive'); ?></dt>\n                <dd>\n                    <p>\n                        <input id=\"disposition_0_<?php echo $index; ?>\" class=\"input_radio\" type=\"radio\" name=\"file[<?php echo $file['id']; ?>][f_content_disposition]\" value=\"\"/>\n                        <label for=\"disposition_0_<?php echo $index; ?>\" class=\"inline-style left-floated\" style=\"padding-right:15px\"><?php echo $translator->trans(\"Open in the browser\", array(), 'media_archive'); ?></label>\n                        <input id=\"disposition_1_<?php echo $index; ?>\" class=\"input_radio\" type=\"radio\" name=\"file[<?php echo $file['id']; ?>][f_content_disposition]\" value=\"attachment\" checked=\"checked\" />\n                        <label for=\"disposition_1_<?php echo $index; ?>\" class=\"inline-style left-floated\" style=\"padding-right:15px\"><?php echo $translator->trans(\"Automatically download\", array(), 'media_archive'); ?></label>\n                    </p>\n                </dd>\n            </dl>\n        </fieldset>\n    </li>\n    <?php } ?>\n</ul>\n\n</fieldset>\n\n<fieldset class=\"plain\" style=\"margin-top: 13px\">\n    <input type=\"submit\" name=\"Save\" value=\"<?php  echo $translator->trans('Save'); ?>\" class=\"save-button\" />\n</fieldset>\n\n</form>\n\n</div>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/media-archive/uploader.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Holman Romero <holman.romero@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once($GLOBALS['g_campsiteDir']. \"/classes/Plupload.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!$g_user->hasPermission('AddImage')) {\n    camp_html_display_error($translator->trans(\"You do not have the right to add images.\", array(), 'media_archive'));\n    exit;\n}\n\n// Plupload\n$files = Plupload::OnMultiFileUpload($Campsite['IMAGE_DIRECTORY']);\n?>\n"
  },
  {
    "path": "newscoop/admin-files/media-archive/uploader_file.php",
    "content": "<?php\n/**\n * @package Newscoop\n *\n * @author Mihai Nistor <mihai.nistor@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once($GLOBALS['g_campsiteDir']. \"/classes/Plupload.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Attachment.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!$g_user->hasPermission('AddFile')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to add files.\", array(), 'media_archive'));\n\texit;\n}\n\n$attachmentObj = new Attachment();\n$attachmentObj->makeDirectories();\n// Plupload\n$files = Plupload::OnMultiFileUpload($attachmentObj->getStorageLocation());\n?>\n"
  },
  {
    "path": "newscoop/admin-files/menu.php",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nglobal $ADMIN, $g_user;\n\n// Page title\n$siteTitle = (!empty($Campsite['site']['title'])) ? htmlspecialchars($Campsite['site']['title']) : $translator->trans(\"Newscoop\", array(), 'home') . $Campsite['VERSION'];\n\n// locale setting for datepicker\n$locale = !empty($_COOKIE['TOL_Language']) ? $_COOKIE['TOL_Language'] : 'en';\n?>\n<!DOCTYPE html>\n<html lang=\"<?php echo $locale; ?>\" dir=\"ltr\">\n<head>\n  <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n  <meta http-equiv=\"Expires\" content=\"now\" />\n  <title><?php p($siteTitle); ?></title>\n\n  <script type=\"text/javascript\"><!--\n    var website_url = \"<?php echo $Campsite['WEBSITE_URL'];?>\";\n\n    var localizer = localizer || {};\n    localizer.processing = '<?php echo $translator->trans('Processing...', array(), 'home'); ?>';\n    localizer.session_expired = '<?php echo $translator->trans('Session expired.', array(), 'home'); ?>';\n    localizer.please = '<?php echo $translator->trans('Please', array(), 'home'); ?>';\n    localizer.login = '<?php echo $translator->trans('login', array(), 'home'); ?>';\n  //--></script>\n\n    <?php include dirname(__FILE__) . '/html_head.php'; ?>\n\n    <script src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/jquery/fg.menu.js\" type=\"text/javascript\"></script>\n    <script src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/jquery/jquery.widgets.js\" type=\"text/javascript\"></script>\n    <script src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/jquery/fancybox/jquery.fancybox-1.3.4.pack.js\" type=\"text/javascript\"></script>\n\n    <link rel=\"shortcut icon\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/images/7773658c3ccbf03954b4dacb029b2229.ico\" />\n\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/fg.menu.css\" />\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/widgets.css\" />\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/jquery/fancybox/jquery.fancybox-1.3.4.css\" />\n\n    <!--[if IE 6]>\n    <style type=\"text/css\">\n        .fg-menu-ipod .fg-menu li { width: 95%; }\n        .fg-menu-ipod .ui-widget-content { border:0; }\n    </style>\n    <![endif]-->\n\n  <script type=\"text/javascript\">\n  <!--\n    var g_admin_url = '/<?php echo $ADMIN; ?>';\n    var g_security_token = '<?php echo SecurityToken::GetToken(); ?>';\n    <?php if (strpos($_SERVER['HTTP_REFERER'], 'login.php') !== FALSE) { ?>\n    if (opener && !opener.closed && opener.setSecurityToken) {\n        opener.setSecurityToken(g_security_token);\n        opener.focus();\n        window.close();\n    }\n    <?php } ?>\n    var g_admin_img = '<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>';\n    $(document).ready(function () {\n        $.datepicker.setDefaults( $.datepicker.regional['<?php echo $locale; ?>'] );\n    });\n    //-->\n  </script>\n  <script type=\"text/javascript\">\n  <!--\n  $(function () {\n      // BUTTONS\n      $('.fg-button').hover(\n          function () { $(this).removeClass('fg-button-ui-state-default').addClass('fg-button-ui-state-focus'); },\n          function () { $(this).removeClass('fg-button-ui-state-focus').addClass('fg-button-ui-state-default'); }\n      );\n\n      // MENUS\n      $('#newscoop_menu_content').topmenu({\n          content: $('#newscoop_menu_content').next().html(),\n          flyOut: true,\n          showSpeed: 150\n      });\n      <?php if (isset($showAdminActions)) { ?>\n      $('#newscoop_menu_action').topmenu({\n          content: $('#newscoop_menu_action').next().html(),\n          flyOut: true,\n          showSpeed: 150\n      });\n      <?php\n      }\n      if (isset($showConfigureMenu)) {\n      ?>\n      $('#newscoop_menu_configure').topmenu({\n          content: $('#newscoop_menu_configure').next().html(),\n          flyOut: true,\n          showSpeed: 150\n      });\n      <?php\n      }\n      if (isset($showUserMenu)) {\n      ?>\n      $('#newscoop_menu_users').topmenu({\n          content: $('#newscoop_menu_users').next().html(),\n          flyOut: true,\n          showSpeed: 150\n      });\n      <?php } ?>\n      $('#newscoop_menu_plugins').topmenu({\n          content: $('#newscoop_menu_plugins').next().html(),\n          flyOut: true,\n          showSpeed: 150\n      });\n  });\n  //-->\n  </script>\n  <script type=\"text/javascript\">\n  $(document).ready(function () {\n      var sticky_limit = 0;\n      $(window).scroll(function () {\n          if ($('.sticky').size() == 0) {\n              return false; // no sticky\n          }\n\n          var windowTop = $(window).scrollTop();\n          var stickyTop = $('.sticky').offset().top;\n          if (windowTop > stickyTop && sticky_limit == 0) {\n              $('.sticky').css('width', '100%').css('position', 'fixed').css('top', '0');\n              sticky_limit = stickyTop;\n          }\n          if (sticky_limit > 0 && windowTop < sticky_limit) {\n              $('.sticky').css('position', 'relative');\n              sticky_limit = 0;\n          }\n      });\n  });\n\n  var user_msgs = '';\n  <?php if (!empty($_SESSION['camp_user_msgs'])) { ?>\n  user_msgs = \"<?php echo str_replace('\"', \"'\", $_SESSION['camp_user_msgs'][0]['msg']); ?>\";\n  <?php\n    $_SESSION['camp_user_msgs'] = array();\n  } ?>\n  </script>\n</head>\n<body>\n<div class=\"meta-bar\">\n    <ul>\n        <li><a href=\"/<?php p($ADMIN); ?>/logout\"><?php echo $translator->trans('Logout'); ?></a></li>\n        <li><a href=\"<?php p($Campsite['site']['help_url']); ?>\" target=\"_blank\"><?php echo $translator->trans('Help', array(), 'home'); ?></a></li>\n        <li><?php echo $translator->trans(\"Signed in: $1\", array('$1' => '<strong>' . $g_user->getFirstName() . '</strong>'), 'home'); ?></li>\n    </ul>\n</div>\n\n<?php include_once APPLICATION_PATH . '/layouts/scripts/admin_menu.phtml' ?>\n"
  },
  {
    "path": "newscoop/admin-files/pending_articles/index.php",
    "content": "<?php\nrequire_once LIBS_DIR . '/ArticleList/ArticleList.php';\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n$f_publication_id = Input::Get('f_publication_id', 'int', null);\n$f_language_id = Input::Get('f_language_id', 'int', 1);\nif (isset($_SESSION['f_language_selected'])) {\n    $f_old_language_selected = (int)$_SESSION['f_language_selected'];\n} else {\n    $f_old_language_selected = 0;\n}\n$f_language_selected = (int)camp_session_get('f_language_selected', 0);\n\ncamp_html_content_top($translator->trans('Pending articles', array(), 'articles'), NULL);\n\n$controller->view->headTitle($translator->trans('Pending articles', array(), 'articles').' - Newscoop Admin', 'SET');\n\n// set up\n$articlelist = new ArticleList();\n$articlelist->setPublication($f_publication_id);\n$articlelist->setWorkflowStatus('pending');\n$articlelist->setLanguage($f_language_id);\n\n$articlelist->setColVis(TRUE);\n$articlelist->setSearch(TRUE);\n\n$articlelist->setHidden('Status');\n$articlelist->setHidden('OnFrontPage');\n$articlelist->setHidden('OnSectionPage');\n$articlelist->setHidden('Comments');\n$articlelist->setHidden('Reads');\n$articlelist->setHidden('UseMap');\n$articlelist->setHidden('Locations');\n$articlelist->setHidden('PublishDate');\n$articlelist->setHidden('Preview');\n\n// render\n//$articlelist->renderFilters();\n$articlelist->renderActions();\n$articlelist->render();\n\ncamp_html_copyright_notice();\n\n?>\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/admin-files/plugins/manage.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/classes/Input.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!$g_user->hasPermission('plugin_manager')) {\n    camp_html_display_error($translator->trans(\"You do not have the right to manage plugins.\", array(), 'plugins'));\n    exit;\n}\n\nif (Input::Get('save')) {\n\tif (!SecurityToken::isValid()) {\n\t\tcamp_html_display_error($translator->trans('Invalid security token!'));\n\t\texit;\n\t}\n\n\t$p_plugins = Input::Get('p_plugins', 'array');\n    $p_enabled = Input::Get('p_enabled', 'array');\n\n\n    // delete from DB those which were uninstalled\n    foreach (CampPlugin::getAll() as $CampPlugin) {\n        if (!array_key_exists($CampPlugin->getName(), $p_plugins)) {\n            if (strpos($CampPlugin->getName(), '/') !== false) {\n                continue;\n            }\n            \n            $CampPlugin->delete();\n        }\n    }\n\n\n    foreach ($p_plugins as $plugin => $oldversion) {\n        $CampPlugin = new CampPlugin($plugin);   // installed version, if exists\n        $currentVersion = $CampPlugin->getFsVersion();\n\n        if ($p_enabled && array_key_exists($plugin, $p_enabled) && $p_enabled[$plugin]) {\n            if ($CampPlugin->exists()) {\n                if ($CampPlugin->getDbVersion() != $currentVersion) {\n                    // update plugin\n                    $CampPlugin->delete();\n                    $CampPlugin->create($plugin, $currentVersion);\n                    $CampPlugin->update();\n                    $CampPlugin->enable();\n\n                    // update autoload \n                    exec('php '.$GLOBALS['g_campsiteDir'].'/scripts/newscoop.php autoload:update');\n                } else {\n                    // just enable plugin\n                    $CampPlugin->enable();\n                }\n            } else {\n                // install + enable not previously installed plugin\n                $CampPlugin->create($plugin, $currentVersion);\n                $CampPlugin->install();\n                $CampPlugin->enable();\n\n                // update autoload \n                exec('php '.$GLOBALS['g_campsiteDir'].'/scripts/newscoop.php autoload:update');\n            }\n        } else {\n            $CampPlugin->disable();\n        }\n    }\n\n    $redirector = $this->getHelper('redirector');\n    $redirector->gotoSimple('manage.php', 'plugins', 'admin');\n}\n\nif (Input::Get('upload_package')) {\n    $file = $_FILES['package'];\n    if ($Plugin = CampPlugin::extractPackage($file['tmp_name'], $log)) {\n        $success = $translator->trans('The plugin $1 was sucessfully installed.', array('$1' => $Plugin->getName()), 'plugins');\n    } else {\n        $error = $log;\n    }\n    //$Plugin->enable();\n}\n\nif (Input::Get('p_uninstall')) {\n    $Plugin = new CampPlugin(Input::Get('p_plugin', 'string'));\n    $Plugin->uninstall();\n}\n\nif( count($infos = CampPlugin::GetPluginsInfo()) > 0 ) {\n\t// check if update was needed\n\tCampPlugin::GetPluginsInfo(false, true);\n\tif ($needsUpdate = CampPlugin::GetNeedsUpdate()) {\n\t    camp_html_add_msg($translator->trans(\"Some plugins have to be updated. Please press the save button.\", array(), 'plugins'));\n\t}\n} else {\n\tcamp_html_add_msg($translator->trans(\"You have no installed plugins.\", array(), 'plugins'));\n}\n\n\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Plugins\"), \"\");\n$crumbs[] = array($translator->trans(\"Manage\", array(), 'plugins'), \"\");\necho camp_html_breadcrumbs($crumbs);\n\ncamp_html_display_msgs();\n?>\n<P>\n<FORM name=\"plugin_upload\" action=\"/<?php echo $ADMIN; ?>/plugins/manage.php\" method='POST' enctype='multipart/form-data'>\n<?php echo SecurityToken::FormParameter(); ?>\n<table cellpadding=\"0\" cellspacing=\"0\" class=\"action_buttons\" style=\"padding-bottom: 5px;\">\n  <tr>\n    <td>\n      <IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/add.png\" BORDER=\"0\" alt=\"<?php  echo $translator->trans('Add new image', array(), 'plugins'); ?>\">\n      <?php echo $translator->trans('Upload Plugin', array(), 'plugins'); ?>\n      <input type=\"file\" name=\"package\" class=\"button\">\n    </td>\n    <td valign=\"bottom\">&nbsp;<input type=\"submit\" name=\"upload_package\" value=\"<?php echo $translator->trans('Upload', array(), 'plugins') ?>\" class=\"button\"></td>\n  </tr>\n</table>\n</FORM>\n\n<?php\nif ( isset( $success ) ) {\n    ?>\n    <table cellpadding=\"0\" cellspacing=\"0\" class=\"action_buttons\" style=\"padding-bottom: 5px;\">\n      <tr>\n        <td class=\"info_message\" ><?php echo $success ?></td>\n      </tr>\n   </table>\n   <?php\n} elseif( isset( $error ) ) {\n    ?>\n    <table cellpadding=\"0\" cellspacing=\"0\" class=\"action_buttons\" style=\"padding-bottom: 5px;\">\n      <tr>\n        <td class=\"error_message\" ><?php echo $error ?></td>\n      </tr>\n   </table>\n   <?php\n}\n?>\n\n<P>\n<?php if (count($infos) > 0) { ?>\n<FORM name=\"plugins_enabled\" action=\"/<?php echo $ADMIN; ?>/plugins/manage.php\">\n<?php echo SecurityToken::FormParameter(); ?>\n<TABLE BORDER=\"0\" CELLSPACING=\"1\" CELLPADDING=\"3\" class=\"table_list\" width=\"95%\">\n    <TR class=\"table_list_header\">\n        <TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php  echo $translator->trans(\"Name\"); ?></B></TD>\n        <TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php  echo $translator->trans(\"Version\", array(), 'plugins'); ?></B></TD>\n        <TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php  echo $translator->trans(\"Description\"); ?></B></TD>\n        <TD align=\"center\" VALIGN=\"TOP\"><B><?php  echo $translator->trans(\"Enabled\", array(), 'plugins'); ?></B></TD>\n        <TD align=\"center\" VALIGN=\"TOP\"><B><?php  echo $translator->trans(\"Uninstall\", array(), 'plugins'); ?></B></TD>\n    </TR>\n    <?php\n    $color=0;\n    foreach ($infos as $info) {\n        $checked = '';\n        if (CampPlugin::isPluginEnabled($info['name'])) {\n            $checked = 'checked=\"checked\"';\n        }\n        ?>\n        <TR <?php  if ($color) { $color=0; ?>class=\"list_row_even\"<?php  } else { $color=1; ?>class=\"list_row_odd\"<?php  } ?>>\n            <TD width=\"100px\">\n                <?php  p($info['label']); ?>\n            </TD>\n\n            <td width=\"100px\">\n                <?php p($info['version']) ?>\n            </td>\n\n            <TD width=\"*\">\n                <?php  p($info['description']); ?>&nbsp;\n            </TD>\n\n            <TD  width=\"80px\" align=\"center\">\n                <input type=\"hidden\" name=\"p_plugins[<?php p(htmlspecialchars($info['name']))?>]\" value=\"<?php p(htmlspecialchars($info['version'])) ?>\">\n\n                <input type=\"checkbox\" name=\"p_enabled[<?php p(htmlspecialchars($info['name']))?>]\" <?php p($checked) ?>>\n            </TD>\n\n            <TD  width=\"80px\" align=\"center\">\n               <a href=\"/<?php echo $ADMIN; ?>/plugins/manage.php?p_plugin=<?php p(htmlspecialchars($info['name']))?>&amp;p_uninstall=1&amp;<?php echo SecurityToken::URLParameter(); ?>\" onClick=\"return confirm('<?php echo $translator->trans('Please confirm the plugin $1 uninstall. All plugin data will be deleted!', array('$1' => $info['name']), 'plugins') ?>')\">\n                 <IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"] ?>/delete.png\" BORDER=\"0\" ALT=\"<?php echo $translator->trans('Delete plugin', array(), 'plugins')?>\" TITLE=\"<?php echo $translator->trans('Delete plugin', array(), 'plugins') ?>\">\n               </a>\n            </TD>\n        </TR>\n    <?php\n    }\n    ?>\n    <tr class=\"table_list_header\">\n        <td colspan=\"5\" align=\"center\">\n            <input type=\"submit\" name=\"save\" value=\"<?php echo $translator->trans('Save') ?>\" class=\"button\">\n        </td>\n    </tr>\n</table>\n</form>\n<?php } else { ?>\n    <BLOCKQUOTE><ul>\n    <LI><?php  echo $translator->trans('No plugins found.', array(), 'plugins'); ?></LI>\n    </ul></BLOCKQUOTE>\n<?php } ?>\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/pub/add_alias.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/pub/pub_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/classes/Alias.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n// Check permissions\nif (!$g_user->hasPermission('ManagePub')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to manage publications.\", array(), 'pub'));\n\texit;\n}\n\n$Pub = Input::Get('Pub', 'int');\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $_SERVER['REQUEST_URI']);\n\texit;\n}\n\n$publicationObj = new Publication($Pub);\n\n$crumbs = array($translator->trans(\"Publication Aliases\", array(), 'pub') => \"aliases.php?Pub=$Pub\");\ncamp_html_content_top($translator->trans(\"Add new alias\", array(), 'pub'), array(\"Pub\" => $publicationObj), true, false, $crumbs);\n\ncamp_html_display_msgs();\n?>\n<P>\n<FORM NAME=\"add_alias\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/pub/do_add_alias.php\">\n<?php echo SecurityToken::FormParameter(); ?>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" CLASS=\"box_table\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B><?php  echo $translator->trans(\"Add new alias\", array(), 'pub'); ?></B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<INPUT TYPE=\"HIDDEN\" NAME=\"cPub\" VALUE=\"<?php p($Pub); ?>\">\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Name\"); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" class=\"input_text\" NAME=\"cName\" SIZE=\"32\" MAXLENGTH=\"255\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\">\n\t<INPUT TYPE=\"submit\" class=\"button\" NAME=\"Save\" VALUE=\"<?php  echo $translator->trans('Save'); ?>\">\n<!--\t<INPUT TYPE=\"button\" class=\"button\" NAME=\"Cancel\" VALUE=\"<?php  echo $translator->trans('Cancel'); ?>\" ONCLICK=\"location.href='/admin/pub/aliases.php?Pub=<?php  p($Pub); ?>'\">\n-->\n\t</TD>\n</TR>\n</TABLE>\n</FORM>\n<P>\n<script>\ndocument.forms.add_alias.cName.focus();\n</script>\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/pub/aliases.php",
    "content": "<?php\n\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/pub/pub_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/classes/Alias.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n$Pub = Input::Get('Pub', 'int');\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $_SERVER['REQUEST_URI']);\n\texit;\n}\n\n$publicationObj = new Publication($Pub);\n$aliases = Alias::GetAliases(null, $Pub);\n\ncamp_html_content_top($translator->trans(\"Publication Aliases\", array(), 'pub'), array(\"Pub\" => $publicationObj));\n\nif ($g_user->hasPermission(\"ManagePub\")) { ?>\n<p>\n<TABLE class=\"action_buttons\">\n<TR>\n    <TD><A HREF=\"/<?php echo $ADMIN; ?>/pub/add_alias.php?Pub=<?php p($Pub); ?>\" ><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/add.png\" BORDER=\"0\"></A></TD>\n    <TD><A HREF=\"/<?php echo $ADMIN; ?>/pub/add_alias.php?Pub=<?php  p($Pub); ?>\" ><B><?php  echo $translator->trans(\"Add new alias\", array(), 'pub'); ?></B></A></TD>\n</TR>\n</TABLE>\n<?php } ?>\n\n<P>\n<?php\n$color = 0;\n?>\n<TABLE BORDER=\"0\" CELLSPACING=\"1\" CELLPADDING=\"3\" class=\"table_list\">\n<TR class=\"table_list_header\">\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"  ><B><?php  echo $translator->trans(\"Alias (click to edit)\", array(), 'pub'); ?></B></TD>\n\t<?php if ($g_user->hasPermission(\"ManagePub\")) { ?>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><B><?php  echo $translator->trans(\"Delete\"); ?></B></TD>\n\t<?php } ?>\n</TR>\n<?php\nforeach ($aliases as $alias) {  ?>\n\t<TR <?php  if ($color) { $color=0; ?>class=\"list_row_even\"<?php  } else { $color=1; ?>class=\"list_row_odd\"<?php  } ?>>\n\t\t<TD>\n\t\t\t<?php if ($g_user->hasPermission(\"ManagePub\")) { ?><A HREF=\"/<?php p($ADMIN); ?>/pub/edit_alias.php?Pub=<?php p($Pub); ?>&Alias=<?php p($alias->getId()); ?>\"><?php } ?><?php  p(htmlspecialchars($alias->getName())); ?><?php if ($g_user->hasPermission(\"ManagePub\")) { ?></A><?php } ?>\n\t\t</TD>\n\t\t<?php if ($g_user->hasPermission(\"ManagePub\")) { ?>\n\t\t<TD ALIGN=\"CENTER\">\n\t\t\t<?php\n\t\t\tif ($publicationObj->getDefaultAliasId() != $alias->getId()) { ?>\n\t\t\t<A HREF=\"/<?php p($ADMIN); ?>/pub/do_del_alias.php?Pub=<?php p($Pub); ?>&Alias=<?php p($alias->getId()); ?>&<?php echo SecurityToken::URLParameter(); ?>\" onclick=\"return confirm('<?php echo $translator->trans('Are you sure you want to delete the alias $1?', array('$1' => $alias->getName()), 'pub'); ?>');\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/delete.png\" BORDER=\"0\" ALT=\"<?php  echo $translator->trans('Delete alias $1', array('$1' => htmlspecialchars($alias->getName())), 'pub'); ?>\" TITLE=\"<?php  echo $translator->trans('Delete alias $1', array('$1' => htmlspecialchars($alias->getName())), 'pub'); ?>\" ></A>\n\t\t\t<?php } ?>\n\t\t</TD>\n\t\t<?php } ?>\n\t</TR>\n<?php\n}\n?>\n\n</TABLE>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/pub/do_add_alias.php",
    "content": "<?php\n\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/pub/pub_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/classes/Alias.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Check permissions\nif (!$g_user->hasPermission('ManagePub')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to manage publications.\", array(), 'pub'));\n\texit;\n}\n\n$cPub = Input::Get('cPub', 'int');\n$cName = trim(Input::Get('cName'));\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $_SERVER['REQUEST_URI']);\n\texit;\n}\n\n$publicationObj = new Publication($cPub);\n$backLink = \"/$ADMIN/pub/add_alias.php?Pub=$cPub\";\n\n$correct = true;\n$created = false;\n$errorMsgs = array();\nif (empty($cName)) {\n\t$correct = false;\n\t$errorMsgs[] = $translator->trans('You must fill in the $1 field.', array('$1' => '<B>Name</B>'));\n}\n\n$aliases = 0;\nif ($correct) {\n\t$aliasDups = count(Alias::GetAliases(null, null, $cName));\n\tif ($aliasDups <= 0) {\n\t\t$newAlias = new Alias();\n\t\t$created = $newAlias->create(array('Name' => \"$cName\", \"IdPublication\" => \"$cPub\"));\n\t\tif ($created) {\n\t\t\t$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n\t\t\t$cacheService->clearNamespace('publication');\n\t\t\tcamp_html_goto_page(\"/$ADMIN/pub/aliases.php?Pub=$cPub\");\n\t\t}\n\t}\n\telse {\n\t\t$errorMsgs[] = $translator->trans('Another alias with the same name exists already.', array(), 'pub');\n\t}\n}\n\nif (!$created && !$correct) {\n\t$errorMsgs[] = $translator->trans('The site alias $1 could not be added.', array('$1' => '<B>'.$cName.'</B>'), 'pub');\n}\n\n$crumbs = array($translator->trans(\"Publication Aliases\", array(), 'pub') => \"aliases.php?Pub=$cPub\");\ncamp_html_content_top($translator->trans(\"Adding new alias\", array(), 'pub'), array(\"Pub\" => $publicationObj), true, false, $crumbs);\n?>\n\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B> <?php  echo $translator->trans(\"Adding new alias\", array(), 'pub'); ?> </B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<BLOCKQUOTE>\n\t\t<?php\n\t\tforeach ($errorMsgs as $errorMsg) { ?>\n\t\t\t<li><?php p($errorMsg); ?></li>\n\t\t\t<?PHP\n\t\t}\n\t\t?>\n\t\t</BLOCKQUOTE>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t<DIV ALIGN=\"CENTER\">\n\t<INPUT TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php  echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php p($ADMIN); ?>/pub/add_alias.php?Pub=<?php p($cPub); ?>'\">\n\t</DIV>\n\t</TD>\n</TR>\n</TABLE>\n<P>\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/pub/do_del_alias.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/pub/pub_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/classes/Alias.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Check permissions\nif (!$g_user->hasPermission('ManagePub')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to manage publications.\", array(), 'pub'));\n\texit;\n}\n\n$Pub = Input::Get('Pub', 'int', 0);\n$Alias = Input::Get('Alias', 'int', 0);\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $_SERVER['REQUEST_URI']);\n\texit;\n}\n\n$publicationObj = new Publication($Pub);\n$aliasObj = new Alias($Alias);\n$errorMsgs = array();\n\nif ($publicationObj->getDefaultAliasId() != $Alias) {\n        $aliasName = $aliasObj->getName();\n\t$deleted = $aliasObj->delete();\n\t$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n\t$cacheService->clearNamespace('publication');\n\n\tif ($deleted) {\n\t\tcamp_html_goto_page(\"/$ADMIN/pub/aliases.php?Pub=$Pub\");\n\t} else {\n\t\t$errorMsgs[] = $translator->trans('The alias $1 could not be deleted.', array('$1' => '<B>'.$aliasObj->getName().'</B>'), 'pub');\n\t}\n} else {\n\t$errorMsgs[] = $translator->trans('$1 is the default publication alias, it can not be deleted.', array('$1' => '<B>'.$aliasObj->getName().'</B>'), 'pub');\n}\n\n$crumbs = array($translator->trans(\"Publication Aliases\", array(), 'pub') => \"aliases.php?Pub=$Pub\");\ncamp_html_content_top($translator->trans(\"Deleting alias\", array(), 'pub'), array(\"Pub\" => $publicationObj), true, false, $crumbs);\n\n?>\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B> <?php  echo $translator->trans(\"Deleting alias\", array(), 'pub'); ?> </B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<BLOCKQUOTE>\n\t\t<?php\n\t\tforeach ($errorMsgs as $errorMsg) { ?>\n\t\t\t<li><?php p($errorMsg); ?></li>\n\t\t\t<?php\n\t\t}\n\t\t?>\n\t\t</BLOCKQUOTE>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t<DIV ALIGN=\"CENTER\">\n\t<INPUT TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php  echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php p($ADMIN); ?>/pub/aliases.php?Pub=<?php p($Pub); ?>'\">\n\t</DIV>\n\t</TD>\n</TR>\n</TABLE>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/pub/do_edit_alias.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/pub/pub_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/classes/Alias.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\n// Check permissions\nif (!$g_user->hasPermission('ManagePub')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to manage publications.\", array(), 'pub'));\n\texit;\n}\n\n$f_publication_id = Input::Get('f_publication_id', 'int');\n$f_alias_id = Input::Get('f_alias_id', 'int');\n$f_name = trim(Input::Get('f_name'));\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $_SERVER['REQUEST_URI']);\n\texit;\n}\n\n$publicationObj = new Publication($f_publication_id);\n\n$correct = true;\n$errorMsgs = array();\n\nif (empty($f_name)) {\n\t$correct = false;\n\t$errorMsgs[] = $translator->trans('You must fill in the $1 field.', array('$1' => '<B>Name</B>'));\n}\n\n$alias = new Alias($f_alias_id);\n$aliases = 0;\nif ($correct) {\n\tif ($alias->getName() != $f_name) {\n\t\t$aliasDups = count(Alias::GetAliases(null, null, $f_name));\n\t\tif ($aliasDups <= 0) {\n\t\t\t$success = $alias->setName($f_name);\n\t\t}\n\t\telse {\n\t\t\t$errorMsgs[] = $translator->trans('Another alias with the same name exists already.', array(), 'pub');\n\t\t\t$correct = false;\n\t\t}\n\t}\n}\n\nif ($correct) {\n\t$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n\t$cacheService->clearNamespace('publication');\n\t\n\tcamp_html_goto_page(\"/$ADMIN/pub/aliases.php?Pub=$f_publication_id&Alias=$f_alias_id\");\n\texit;\n} else {\n\t$errorMsgs[] = $translator->trans('The site alias $1 could not be modified.', array('$1' => '<B>'.$alias->getName().'</B>'));\n}\n\n$crumbs = array($translator->trans(\"Publication Aliases\", array(), 'pub') => \"aliases.php?Pub=$f_publication_id\");\ncamp_html_content_top($translator->trans(\"Editing alias\", array(), 'pub'), array(\"Pub\" => $publicationObj), true, false, $crumbs);\n\n?>\n\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B> <?php  echo $translator->trans(\"Editing alias\", array(), 'pub'); ?> </B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<BLOCKQUOTE>\n\t\t<?PHP\n\t\tforeach ($errorMsgs as $errorMsg) { ?>\n\t\t\t<li><?php echo $errorMsg; ?></li>\n\t\t\t<?PHP\n\t\t}\n\t\t?>\n\t\t</BLOCKQUOTE>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\">\n\t\t<INPUT TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php  echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php p($ADMIN); ?>/pub/aliases.php?Pub=<?php p($f_publication_id); ?>&Alias=<?php p($f_alias_id); ?>'\">\n\t</TD>\n</TR>\n</TABLE>\n<P>\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/pub/edit_alias.php",
    "content": "<?PHP\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/pub/pub_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/classes/Alias.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n// Check permissions\nif (!$g_user->hasPermission('ManagePub')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to manage publications.\", array(), 'pub'));\n\texit;\n}\n\n$f_publication_id = Input::Get('Pub', 'int');\n$f_alias_id = Input::Get('Alias', 'int');\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $_SERVER['REQUEST_URI']);\n\texit;\n}\n\n$publicationObj = new Publication($f_publication_id);\n$alias = new Alias($f_alias_id);\n\n$crumbs = array($translator->trans(\"Publication Aliases\", array(), 'pub') => \"aliases.php?Pub=$f_publication_id\");\ncamp_html_content_top($translator->trans(\"Edit alias\", array(), 'pub'), array(\"Pub\" => $publicationObj), true, false, $crumbs);\n\ncamp_html_display_msgs();\n?>\n<P>\n<FORM name=\"edit_alias\" METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/pub/do_edit_alias.php\">\n<?php echo SecurityToken::FormParameter(); ?>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" CLASS=\"box_table\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B><?php  echo $translator->trans(\"Edit alias\", array(), 'pub'); ?></B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<INPUT TYPE=\"hidden\" NAME=\"f_publication_id\" VALUE=\"<?php p($f_publication_id); ?>\">\n<INPUT TYPE=\"hidden\" NAME=\"f_alias_id\" VALUE=\"<?php p($f_alias_id); ?>\">\n<TR>\n\t<TD ALIGN=\"RIGHT\" ><?php  echo $translator->trans(\"Name\"); ?>:</TD>\n\t<TD>\n\t<INPUT TYPE=\"TEXT\" NAME=\"f_name\" VALUE=\"<?php echo htmlspecialchars($alias->getName()); ?>\" SIZE=\"32\" MAXLENGTH=\"255\" class=\"input_text\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\">\n\t\t<INPUT TYPE=\"submit\" class=\"button\" NAME=\"Save\" VALUE=\"<?php  echo $translator->trans('Save'); ?>\">\n\t</TD>\n</TR>\n</TABLE>\n</FORM>\n<P>\n<script>\ndocument.edit_alias.f_name.focus();\n</script>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/pub/pub_common.php",
    "content": "<?PHP\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Publication.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Alias.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/UrlType.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\n\n\nfunction camp_is_publication_conflicting($p_publicationName)\n{\n\tglobal $ADMIN;\n\t$translator = \\Zend_Registry::get('container')->getService('translator');\n\t$publications = Publication::GetPublications($p_publicationName);\n\tif (count($publications) > 0) {\n\t\t$pubObj = array_pop($publications);\n\t\t$pubLink = \"<A HREF=\\\"/$ADMIN/pub/edit.php?Pub=\".$pubObj->getPublicationId().'\">'. $pubObj->getName() .\"</A>\";\n\t\t$msg = $translator->trans(\"The publication name you specified conflicts with publication $1.\", array('$1' => $pubLink), 'pub');\n\t\tcamp_html_add_msg($msg);\n\t}\n}\n\n\n/**\n * Check if the alias given is already in use.  If so, a user error message\n * is created.\n *\n * @param mixed $p_alias\n * \t\tCan be a string or an int.\n * @return void\n */\nfunction camp_is_alias_conflicting($p_alias)\n{\n\tglobal $ADMIN;\n\t$translator = \\Zend_Registry::get('container')->getService('translator');\n\n\tif (!is_numeric($p_alias)) {\n\t\t// The alias given is a name, which means it doesnt exist yet.\n\t\t// Check if the name conflicts with any existing alias names.\n\t\t$aliases = Alias::GetAliases(null, null, $p_alias);\n\t\t$alias = array_pop($aliases);\n\t\tif ($alias) {\n\t\t\t$pubId = $alias->getPublicationId();\n\t\t\t$pubObj = new Publication($pubId);\n\t\t\t$pubLink = \"<A HREF=\\\"/$ADMIN/pub/edit.php?Pub=$pubId\\\">\". $pubObj->getName() .\"</A>\";\n\t\t\t$msg = $translator->trans(\"The publication alias you specified conflicts with publication '$1'.\", array('$1' => $pubLink), 'pub');\n\t\t\tcamp_html_add_msg($msg);\n\t\t}\n\t} else {\n\t\t// The alias given is a number, which means it already exists.\n\t\t// Check if the alias ID is already in use by another publication.\n\t\t$aliases = Alias::GetAliases($p_alias);\n\t\t$alias = array_pop($aliases);\n\t\tif ($alias) {\n\t\t\t$pubs = Publication::GetPublications(null, $alias->getId());\n\t\t\tif (count($pubs) > 0) {\n\t\t\t\t$pubObj = array_pop($pubs);\n\t\t\t\t$pubLink = \"<A HREF=\\\"/$ADMIN/pub/edit.php?Pub=\".$pubObj->getPublicationId().'\">'. $pubObj->getName() .\"</A>\";\n\t\t\t\t$msg = $translator->trans(\"The publication alias you specified conflicts with publication '$1'.\", array('$1' => $pubLink), 'pub');\n\t\t\t\tcamp_html_add_msg($msg);\n\t\t\t}\n\t\t}\n\t}\n}\n?>"
  },
  {
    "path": "newscoop/admin-files/sections/add.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/sections/section_common.php\");\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/articles/editor_load_tinymce.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!$g_user->hasPermission('ManageSection')) {\n    camp_html_display_error($translator->trans('You do not have the right to add sections.', array(), 'sections'));\n    exit;\n}\n\n$f_publication_id = Input::Get('Pub', 'int', 0);\n$f_issue_number = Input::Get('Issue', 'int', 0);\n$f_language_id = Input::Get('Language', 'int', 0);\n\nif (!Input::IsValid()) {\n    camp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $_SERVER['REQUEST_URI']);\n    exit;\n}\n$publicationObj = new Publication($f_publication_id);\n$issueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\n$newSectionNumber = Section::GetUnusedSectionNumber($f_publication_id, $f_issue_number);\n\n$topArray = array('Pub' => $publicationObj, 'Issue' => $issueObj);\ncamp_html_content_top($translator->trans('Add new section', array(), 'sections'), $topArray, true, true, array($translator->trans(\"Sections\") => \"/$ADMIN/sections/?Pub=$f_publication_id&Issue=$f_issue_number&Language=$f_language_id\"));\n$controller->view->headTitle($translator->trans('Add new section', array(), 'sections').' - Newscoop Admin', 'SET');\n$languageObj = new Language($f_language_id);\nif (!is_object($languageObj)) {\n    $languageObj = new Language(1);\n}\n$editorLanguage = camp_session_get('TOL_Language', $languageObj->getCode());\neditor_load_tinymce('f_description', $g_user, 0, $editorLanguage, 'section');\n?>\n<p>\n<form name=\"section_add\" method=\"POST\" action=\"/<?php echo $ADMIN; ?>/sections/do_add.php\" onsubmit=\"return <?php camp_html_fvalidate(); ?>;\">\n<?php echo SecurityToken::FormParameter(); ?>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"box_table\">\n<tr>\n  <td colspan=\"2\">\n    <b><?php echo $translator->trans('Add new section', array(), 'sections'); ?></b>\n    <hr noshade size=\"1\" color=\"black\" />\n  </td>\n</tr>\n<tr>\n  <td align=\"right\" ><?php echo $translator->trans('Name'); ?>:</td>\n  <td>\n    <input type=\"text\" class=\"input_text\" name=\"f_name\" size=\"32\" alt=\"blank\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => \"'\".$translator->trans('Name').\"'\")); ?>\">\n  </td>\n</tr>\n<tr>\n  <td align=\"right\" valign=\"top\"><?php echo $translator->trans('Description'); ?>:</td>\n\t<td>\n\t  <textarea name=\"f_description\" ID=\"f_description\" class=\"tinymce\" rows=\"20\" cols=\"80\"></textarea>\n\t</td>\n</tr>\n<tr>\n  <td align=\"right\" ><?php echo $translator->trans('Number'); ?>:</td>\n  <td><input\n    type=\"text\" class=\"input_text\" name=\"f_number\" value=\"<?php p($newSectionNumber); ?>\" size=\"5\" alt=\"number|0\" emsg=\"<?php echo $translator->trans('You must fill in the $1 field.', array('$1' => \"'\".$translator->trans('Number').\"'\")); ?>\">\n  </td>\n</tr>\n<tr>\n  <td align=\"right\" ><?php echo $translator->trans('URL Name', array(), 'sections'); ?>:</td>\n  <td>\n    <input type=\"text\" class=\"input_text\" name=\"f_url_name\" SIZE=\"32\" value=\"<?php p($newSectionNumber); ?>\" alt=\"alnum|1|A|true|false|_\" emsg=\"<?php echo $translator->trans('The $1 field may only contain letters, digits and underscore (_) character.', array('$1' => \"'\" . $translator->trans('URL Name', array(), 'sections') . \"'\")); ?>\">\n  </td>\n</tr>\n<tr>\n  <td colspan=\"2\">\n    <div align=\"center\">\n      <input type=\"hidden\" name=\"f_publication_id\" value=\"<?php  p($f_publication_id); ?>\">\n      <input type=\"hidden\" name=\"f_issue_number\" value=\"<?php  p($f_issue_number); ?>\">\n      <input type=\"hidden\" name=\"f_language_id\" value=\"<?php  p($f_language_id); ?>\">\n      <input type=\"hidden\" name=\"f_language_selected\" ID=\"f_language_selected\" value=\"<?php p($editorLanguage); ?>\">\n      <input type=\"submit\" class=\"button\" name=\"Save\" value=\"<?php echo $translator->trans('Save'); ?>\">\n    </div>\n  </td>\n</tr>\n</table>\n</form>\n<p>\n<script type=\"text/javascript\">\ndocument.section_add.f_name.focus();\n</script>\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/sections/del.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/sections/section_common.php\");\nrequire_once($GLOBALS['g_campsiteDir']. '/classes/Article.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!$g_user->hasPermission('DeleteSection')) {\n\tcamp_html_display_error($translator->trans('You do not have the right to delete sections.', array(), 'sections'));\n\texit;\n}\n$f_publication_id = Input::Get('Pub', 'int', 0);\n$f_issue_number = Input::Get('Issue', 'int', 0);\n$f_language_id = Input::Get('Language', 'int', 0);\n$f_section_number = Input::Get('Section', 'int', 0);\n\n$numArticles = count(Article::GetArticles($f_publication_id, $f_issue_number, $f_section_number, $f_language_id));\n$publicationObj = new Publication($f_publication_id);\n$issueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\n$sectionObj = new Section($f_publication_id, $f_issue_number, $f_language_id, $f_section_number);\n\n$sectionTranslations = Section::GetSections($f_publication_id, $f_issue_number, null, null, $sectionObj->getName(), null);\n$topArray = array('Pub' => $publicationObj, 'Issue' => $issueObj, 'Section' => $sectionObj);\ncamp_html_content_top($translator->trans('Delete section', array(), 'sections'), $topArray);\n$controller->view->headTitle($translator->trans('Delete section', array(), 'sections').' - Newscoop Admin', 'SET');\n?>\n<P>\n<FORM METHOD=\"POST\" ACTION=\"/<?php echo $ADMIN; ?>/sections/do_del.php\">\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<?php echo SecurityToken::FormParameter(); ?>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\"><?php echo $translator->trans('There are $1 articles in this section.', array('$1' => '<b>'.$numArticles.'</b>'), 'sections'); ?></TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\">\n                <INPUT TYPE=\"radio\" NAME=\"f_delete_all_section_translations\" class=\"input_checkbox\" value=\"N\" checked> <?php echo $translator->trans('Delete only this section ($1)', array('$1' => $sectionObj->getLanguageName()), 'sections'); ?>\n                <br/>\n                <INPUT TYPE=\"radio\" NAME=\"f_delete_all_section_translations\" class=\"input_checkbox\" value=\"Y\"> <?php echo $translator->trans('Delete all translations of this section', array(), 'sections'); ?>\n                <br />\n                <?php\n                foreach ($sectionTranslations as $key => $sectionTranslation) {\n                    echo $sectionTranslation->getLanguageName() . '<br />';\n                }\n                ?>\n        </TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\">\n                <INPUT TYPE=\"radio\" NAME=\"f_delete_all_articles_translations\" class=\"input_checkbox\" value=\"N\" checked> <?php echo $translator->trans('Delete all articles written in $1 language from this section', array('$1' => $sectionObj->getLanguageName()), 'sections'); ?>\n                <br/>\n                <INPUT TYPE=\"radio\" NAME=\"f_delete_all_articles_translations\" class=\"input_checkbox\" value=\"Y\"> <?php echo $translator->trans('Delete all articles and all of their translations', array(), 'sections'); ?>\n        </TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\"><?php  echo $translator->trans('Are you sure you want to delete the section $1?', array('$1' => '<B>'.htmlspecialchars($sectionObj->getName()).'</B>'), 'sections'); ?></TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\">\n\t<INPUT TYPE=\"HIDDEN\" NAME=\"f_publication_id\" VALUE=\"<?php p($f_publication_id); ?>\">\n\t<INPUT TYPE=\"HIDDEN\" NAME=\"f_issue_number\" VALUE=\"<?php p($f_issue_number); ?>\">\n\t<INPUT TYPE=\"HIDDEN\" NAME=\"f_section_number\" VALUE=\"<?php p($f_section_number); ?>\">\n\t<INPUT TYPE=\"HIDDEN\" NAME=\"f_language_id\" VALUE=\"<?php p($f_language_id); ?>\">\n\t<INPUT TYPE=\"submit\" class=\"button\" NAME=\"Yes\" VALUE=\"<?php  echo $translator->trans('Yes'); ?>\">\n\t&nbsp;&nbsp;&nbsp;&nbsp;\n\t<INPUT TYPE=\"button\" class=\"button\" NAME=\"No\" VALUE=\"<?php  echo $translator->trans('No'); ?>\" ONCLICK=\"location.href='/<?php p($ADMIN);?>/sections/?Pub=<?php p($f_publication_id); ?>&Issue=<?php p($f_issue_number); ?>&Language=<?php  p($f_language_id); ?>'\">\n\t</TD>\n</TR>\n</TABLE>\n</FORM>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/sections/do_add.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/sections/section_common.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nif (!$g_user->hasPermission('ManageSection')) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to add sections.\", array(), 'sections'));\n\texit;\n}\n\n$f_publication_id = Input::Get('f_publication_id', 'int', 0);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0);\n$f_language_id = Input::Get('f_language_id', 'int', 0);\n$f_name = trim(Input::Get('f_name', 'string', '', true));\n$f_description = trim(Input::Get('f_description', '', true));\n$f_number = trim(Input::Get('f_number', 'int', 0, true));\n$f_url_name = trim(Input::Get('f_url_name', 'string', '', true));\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString()), 'sections'), $_SERVER['REQUEST_URI']);\n\texit;\n}\n\n$issueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\n$publicationObj = new Publication($f_publication_id);\n\nif (!$publicationObj->exists()) {\n    camp_html_display_error($translator->trans('Publication does not exist.'));\n    exit;\n}\nif (!$issueObj->exists()) {\n\tcamp_html_display_error($translator->trans('No such issue.'));\n\texit;\n}\n\n$correct = true;\n$created = false;\n$isValidShortName = camp_is_valid_url_name($f_url_name);\n\n$errors = array();\nif ($f_name == \"\") {\n\t$correct = false;\n\t$errors[] = $translator->trans('You must fill in the $1 field.', array('$1' => '\"'.$translator->trans('Name').'\"'));\n}\nif ($f_number == 0) {\n\t$correct= false;\n\t$f_number = ($f_number + 0);\n\t$errors[] = $translator->trans('You must fill in the $1 field.', array('$1' => '\"'.$translator->trans('Number').'\"'));\n}\nif ($f_url_name == \"\") {\n\t$correct = false;\n\t$errors[] = $translator->trans('You must fill in the $1 field.', array('$1' => '\"'.$translator->trans('URL Name').'\"'));\n}\nif (!$isValidShortName && trim($f_url_name) != \"\") {\n\t$correct = false;\n\t$errors[] = $translator->trans('The $1 field may only contain letters, digits and underscore (_) character.', array('$1' => '\"' . $translator->trans('URL Name', array(), 'sections') . '\"'));\n}\n$sectionsConstraints = array(new ComparisonOperation('idpublication', new Operator('is'), $f_publication_id),\nnew ComparisonOperation('nrissue', new Operator('is'), $f_issue_number),\nnew ComparisonOperation('number', new Operator('is'), $f_number));\n$sections = Section::GetList($sectionsConstraints, null, 0, 0, $sectionsCount, true);\nif ($sectionsCount > 0) {\n    $correct = false;\n    $errors[] = $translator->trans('The section number $1 was already in use.', array('$1' => $f_number), 'sections');\n}\nif ($correct) {\n    $newSection = new Section($f_publication_id, $f_issue_number, $f_language_id, $f_number);\n    $columns = array();\n    $columns['Description'] = $f_description;\n    $created = $newSection->create($f_name, $f_url_name, $columns);\n    if ($created) {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('section');\n\n\t    camp_html_goto_page(\"/$ADMIN/sections/edit.php?Pub=$f_publication_id&Issue=$f_issue_number&Language=$f_language_id&Section=\".$newSection->getSectionNumber());\n    }\n}\n\n$tmpArray = array('Pub' => $publicationObj, 'Issue' => $issueObj);\ncamp_html_content_top($translator->trans('Adding new section', array(), 'sections'), $tmpArray);\n?>\n\n<P>\n<CENTER>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\" ALIGN=\"CENTER\">\n<TR>\n\t<TD COLSPAN=\"2\"><BLOCKQUOTE>\n    <?php\n    foreach ($errors as $error) { ?>\n\t\t<LI><?php echo $error; ?></LI>\n\t\t<?php\n\t}\n\tif ($created) {    ?>\n        <LI><?php  echo $translator->trans('The section $1 has been successfuly added.', array('$1' => '<B>'.htmlspecialchars($f_name).'</B>'), 'sections'); ?></LI>\n        <?php\n    } else {\n        if ($correct != 0) { ?>\n        \t<LI><?php  echo $translator->trans('The section could not be added.', array(), 'sections'); ?></LI>\n        \t<LI><?php  echo $translator->trans('Please check if another section with the same number or URL name does not exist already.', array(), 'sections'); ?></LI>\n            <?php\n        }\n    }\n    ?>\n    </BLOCKQUOTE>\n    </TD>\n</TR>\n\n<TR>\n\t<TD COLSPAN=\"2\">\n\t<DIV ALIGN=\"CENTER\">\n    <?php  if ($correct && $created) { ?>\n        <INPUT TYPE=\"button\" class=\"button\" NAME=\"Add another\" VALUE=\"<?php  echo $translator->trans('Add another'); ?>\" ONCLICK=\"location.href='/admin/sections/add.php?Pub=<?php  p($f_publication_id); ?>&Issue=<?php  p($f_issue_number); ?>&Language=<?php  p($f_language_id); ?>'\">\n\t\t<INPUT TYPE=\"button\" class=\"button\" NAME=\"Done\" VALUE=\"<?php  echo $translator->trans('Done'); ?>\" ONCLICK=\"location.href='/admin/sections/?Pub=<?php  p($f_publication_id); ?>&Issue=<?php  p($f_issue_number); ?>&Language=<?php  p($f_language_id); ?>'\">\n<?php  } else { ?>\n\t\t<INPUT TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php  echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='add.php?Pub=<?php  p($f_publication_id); ?>&Issue=<?php  p($f_issue_number); ?>&Language=<?php  p($f_language_id); ?>'\">\n<?php  } ?>\n\t</DIV>\n\t</TD>\n</TR>\n</TABLE>\n</CENTER>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/sections/do_del.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/sections/section_common.php\");\nrequire_once($GLOBALS['g_campsiteDir']. \"/classes/Article.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nif (!$g_user->hasPermission('DeleteSection')) {\n\tcamp_html_display_error($translator->trans('You do not have the right to delete sections.', array(), 'sections'));\n\texit;\n}\n$f_publication_id = Input::Get('f_publication_id', 'int', 0);\n$f_issue_number = Input::Get('f_issue_number', 'int', 0);\n$f_language_id= Input::Get('f_language_id', 'int', 0);\n$f_section_number = Input::Get('f_section_number', 'int', 0);\n$f_delete_all_section_translations = Input::Get('f_delete_all_section_translations', 'string', '', true);\n$f_delete_all_articles_translations = Input::Get('f_delete_all_articles_translations', 'string', '', true);\n\n$publicationObj = new Publication($f_publication_id);\n$issueObj = new Issue($f_publication_id, $f_language_id, $f_issue_number);\n$sectionObj = new Section($f_publication_id, $f_issue_number, $f_language_id, $f_section_number);\n$sectionName = $sectionObj->getName();\n\n$articles = Article::GetArticles($f_publication_id, $f_issue_number, $f_section_number, $f_language_id);\n$numArticles = count($articles);\n$numArticlesDeleted = 0;\n$f_delete_all_section_translations = ($f_delete_all_section_translations == 'Y') ? true : false;\n$f_delete_all_articles_translations = ($f_delete_all_articles_translations == 'Y') ? true : false;\nif ($f_delete_all_section_translations == false) {\n    $numArticlesDeleted = $sectionObj->delete(true, $f_delete_all_articles_translations);\n    $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n    $cacheService->clearNamespace('section');\n} else {\n    $sectionTranslations = Section::GetSections($f_publication_id, $f_issue_number, null, null, $sectionObj->getName(), null);\n    foreach ($sectionTranslations as $key => $sectionTranslation) {\n        $numArticlesDeleted += $sectionTranslation->delete(true, $f_delete_all_articles_translations);\n    }\n}\n\n$offsetVarName = 'SectOffs_'.$f_publication_id.'_'.$f_issue_number.'_'.$f_language_id;\n$SectOffs = camp_session_get($offsetVarName, 0);\n$totalSections = Section::GetTotalSections($f_publication_id, $f_issue_number, $f_language_id);\nif ($SectOffs >= $totalSections) {\n    camp_session_set($offsetVarName, 0);\n}\n\n$topArray = array('Pub' => $publicationObj, 'Issue' => $issueObj, 'Section' => $sectionObj);\ncamp_html_content_top($translator->trans('Delete section', array(), 'sections'), $topArray);\n?>\n\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B> <?php  echo $translator->trans(\"Deleting section\", array(), 'sections'); ?> </B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t   <BLOCKQUOTE>\n        <LI><?php echo $translator->trans('The section $1 has been deleted.', array('$1' => '<B>'.htmlspecialchars($sectionName).'</B>'), 'sections'); ?></LI>\n\t\t<LI><?php echo $translator->trans('A total of $1 articles were deleted.', array('$1' => '<B>'.$numArticlesDeleted.'</B>'), 'sections'); ?></LI>\n        </BLOCKQUOTE>\n    </TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\" align=\"center\">\n        <INPUT TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php  echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php p($ADMIN); ?>/sections/index.php?Pub=<?php  p($f_publication_id); ?>&Issue=<?php  p($f_issue_number); ?>&Language=<?php  p($f_language_id); ?>'\">\n\t</TD>\n</TR>\n</TABLE>\n<P>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/sections/do_duplicate.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/sections/section_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nif (!$g_user->hasPermission(\"ManageSection\")) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to add sections.\", array(), 'sections'));\n\texit;\n}\nif (!$g_user->hasPermission(\"AddArticle\")) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to add articles.\"));\n\texit;\n}\n\n$f_src_publication_id = Input::Get('f_src_publication_id', 'int', 0);\n$f_src_issue_number = Input::Get('f_src_issue_number', 'int', 0);\n$f_src_section_number = Input::Get('f_src_section_number', 'int', 0);\n$f_language_id = Input::Get('f_language_id', 'int', 0);\n$f_dest_publication_id = Input::Get('f_dest_publication_id', 'int', 0);\n$f_dest_issue_number = Input::Get('f_dest_issue_number', 'int', 0);\n$radioButton = Input::Get('f_section_chooser', 'string', 'new_section');\nif ($radioButton == 'new_section') {\n    $f_dest_section_number = Input::Get('f_dest_section_new_number', 'int', 0, true);\n}\nelse {\n    $f_dest_section_number = Input::Get('f_dest_section_existing', 'int', 0, true);\n}\n$f_dest_section_name = Input::Get('f_dest_section_new_name', 'string', '', true);\n\nif (!Input::IsValid()) {\n   \tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())));\n\texit;\n}\n\n$srcPublicationObj = new Publication($f_src_publication_id);\nif (!$srcPublicationObj->exists()) {\n\tcamp_html_display_error($translator->trans('Publication does not exist.'));\n\texit;\n}\n\n$srcIssueObj = new Issue($f_src_publication_id, $f_language_id, $f_src_issue_number);\nif (!$srcIssueObj->exists()) {\n\tcamp_html_display_error($translator->trans('Issue does not exist.'));\n\texit;\n}\n\n$srcSectionObj = new Section($f_src_publication_id, $f_src_issue_number, $f_language_id, $f_src_section_number);\nif (!$srcSectionObj->exists()) {\n\tcamp_html_display_error($translator->trans('Section does not exist.'));\n\texit;\n}\n\n$correct = ($f_dest_publication_id > 0) && ($f_dest_issue_number > 0) && ($f_dest_section_number > 0);\n$created = false;\n\nif ($correct) {\n    $dstSectionObj = $srcSectionObj->copy($f_dest_publication_id, $f_dest_issue_number,\n    \t\t\t\t\t\t\t\t\t  $f_language_id, $f_dest_section_number);\n    if (($radioButton == \"new_section\") && ($f_dest_section_name != \"\")) {\n        $dstSectionObj->setName($f_dest_section_name);\n    }\n\t$dstPublicationObj = new Publication($f_dest_publication_id);\n\t$dstIssueObj = new Issue($f_dest_publication_id, $f_language_id, $f_dest_issue_number);\n\t$created = true;\n\n    $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n    $cacheService->clearNamespace('section');\n\n\tcamp_html_goto_page(\"/$ADMIN/sections/duplicate_complete.php?\"\n\t\t   .\"f_src_publication_id=$f_src_publication_id\"\n\t\t   .\"&f_src_issue_number=$f_src_issue_number\"\n\t\t   .\"&f_src_section_number=$f_src_section_number\"\n\t\t   .\"&f_language_id=$f_language_id\"\n\t\t   .\"&f_dest_publication_id=$f_dest_publication_id\"\n\t\t   .\"&f_dest_issue_number=$f_dest_issue_number\"\n\t\t   .\"&f_dest_section_number=$f_dest_section_number\");\n} else {\n\t$topArray = array('Pub' => $srcPublicationObj, 'Issue' => $srcIssueObj, 'Section' => $srcSectionObj);\n\tcamp_html_content_top($translator->trans('Duplicating section', array(), 'sections'), $topArray);\n}\n\n?>\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B> <?php  echo $translator->trans(\"Duplicating section\", array(), 'sections'); ?> </B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<BLOCKQUOTE>\n\t\t<?php\n\t\t\tif (!$correct) {\n\t\t\t\techo \"<LI>\"; echo $translator->trans('Invalid parameters received'); echo \"</LI>\\n\";\n\t\t\t} else {\n\t\t\t\t ?>\n\t\t\t\t<LI><?php  echo $translator->trans('The section $1 could not be duplicated', array('$1' => '<B>'.htmlspecialchars($srcSectionObj->getName()).'</B>'), 'sections'); ?></LI>\n\t\t<?php  } ?>\n\t\t</BLOCKQUOTE>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t<DIV ALIGN=\"CENTER\">\n           <INPUT TYPE=\"button\" class=\"button\" NAME=\"OK\" VALUE=\"<?php  echo $translator->trans('OK'); ?>\" ONCLICK=\"location.href='/<?php echo $ADMIN; ?>/sections/?Pub=<?php  p($f_src_publication_id); ?>&Issue=<?php  p($f_src_issue_number); ?>&Language=<?php  p($f_language_id); ?>'\">\n\t\t</DIV>\n\t</TD>\n</TR>\n</TABLE>\n<P>\n\n<?php camp_html_copyright_notice(); ?>"
  },
  {
    "path": "newscoop/admin-files/sections/do_edit.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/sections/section_common.php\");\n//@New theme management\nuse Newscoop\\Service\\Resource\\ResourceId;\nuse Newscoop\\Service\\ISectionService;\nuse Newscoop\\Service\\IOutputService;\nuse Newscoop\\Service\\ISyncResourceService;\nuse Newscoop\\Service\\IOutputSettingSectionService;\nuse Newscoop\\Entity\\Output\\OutputSettingsSection;\n//@New theme management\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nif (!$g_user->hasPermission('ManageSection')) {\n    camp_html_display_error($translator->trans(\"You do not have the right to add sections.\", array(), 'sections'));\n    exit;\n}\n\n$Pub = Input::Get('Pub', 'int', 0);\n$Issue = Input::Get('Issue', 'int', 0);\n$Section = Input::Get('Section', 'int', 0);\n$Language = Input::Get('Language', 'int', 0);\n$cShortName = trim(Input::Get('cShortName', 'string'));\n$cDescription = trim(Input::Get('cDescription'));\n\n\n$cSectionTplId = Input::Get('cSectionTplId', 'string', 0);\n$cArticleTplId = Input::Get('cArticleTplId', 'string', 0);\n\n$cName = Input::Get('cName');\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $_SERVER['REQUEST_URI']);\n\texit;\n}\n\n$issueObj = new Issue($Pub, $Language, $Issue);\n$publicationObj = new Publication($Pub);\n$sectionObj = new Section($Pub, $Issue, $Language, $Section);\n\nif (!$publicationObj->exists()) {\n    camp_html_display_error($translator->trans('Publication does not exist.'));\n    exit;\n}\nif (!$issueObj->exists()) {\n\tcamp_html_display_error($translator->trans('No such issue.'));\n\texit;\n}\n\n$correct = true;\n$modified = false;\n\n$errors = array();\nif ($cName == \"\") {\n\tcamp_html_add_msg($translator->trans('You must fill in the $1 field.', array('$1' => '\"'.$translator->trans('Name').'\"')));\n}\nif ($cShortName == \"\")  {\n\tcamp_html_add_msg($translator->trans('You must fill in the $1 field.', array('$1' => '\"'.$translator->trans('URL Name', array(), 'sections').'\"')));\n}\n$isValidShortName = camp_is_valid_url_name($cShortName);\n\nif (!$isValidShortName) {\n\tcamp_html_add_msg($translator->trans('The $1 field may only contain letters, digits and underscore (_) character.', array('$1' => '\"' . $translator->trans('URL Name', array(), 'sections') . '\"')));\n}\n\n$editUrl = \"/$ADMIN/sections/edit.php?Pub=$Pub&Issue=$Issue&Language=$Language&Section=$Section\";\nif (!camp_html_has_msgs()) {\n\t$modified = true;\n\t$modified &= $sectionObj->setName($cName);\n\t$modified &= $sectionObj->setDescription($cDescription);\n\n\t//@New theme management\n\t$resourceId = new ResourceId('Section/Edit');\n\t$outputSettingSectionService = $resourceId->getService(IOutputSettingSectionService::NAME);\n\t$outputService = $resourceId->getService(IOutputService::NAME);\n\t$sectionService = $resourceId->getService(ISectionService::NAME);\n\t$syncRsc = $resourceId->getService(ISyncResourceService::NAME);\n\n\t$newOutputSetting = false;\n\n\t$dSection = $sectionService->getById($sectionObj->getSectionId());\n\t$outSetSections = $outputSettingSectionService->findBySection($dSection);\n\tif(count($outSetSections) > 0){\n\t\t$outSetSection = $outSetSections[0];\n\t} else {\n\t\t$outSetSection = new OutputSettingsSection();\n\t\t$outSetSection->setOutput($outputService->findByName('Web'));\n\t\t$outSetSection->setSection($dSection);\n\t\t$newOutputSetting = true;\n\t}\n\n\tif($cSectionTplId != null && $cSectionTplId != '0'){\n\t\t$outSetSection->setSectionPage($syncRsc->getResource('sectionPage', $cSectionTplId));\n\t} else {\n\t\t$outSetSection->setSectionPage(null);\n\t}\n\tif($cArticleTplId != null && $cArticleTplId != '0'){\n\t\t$outSetSection->setArticlePage($syncRsc->getResource('articlePage', $cArticleTplId));\n\t} else {\n\t\t$outSetSection->setArticlePage(null);\n\t}\n\t//@New theme management\n\n\t$conflictingSection = array_pop(Section::GetSections($Pub, $Issue, $Language, $cShortName, null, null, true));\n\tif (is_object($conflictingSection) && ($conflictingSection->getSectionNumber() != $Section)) {\n\t\t$conflictingSectionLink = \"/$ADMIN/sections/edit.php?Pub=$Pub&Issue=$Issue&Language=$Language&Section=\".$conflictingSection->getSectionNumber();\n\n\t\t$msg = $translator->trans('The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5', array(\n\t\t\t'$1' => $cShortName,\n\t\t\t'$2' => \"<a href='$conflictingSectionLink' class='error_message' style='color:#E30000;'>\",\n\t\t\t'$3' => $conflictingSection->getSectionNumber(),\n\t\t\t'$4' => htmlspecialchars($conflictingSection->getName()),\n\t\t\t'$5' => \"</a>\"), 'sections');\n\t\tcamp_html_add_msg($msg);\n\t\t// placeholder for localization string - we might need this later.\n\t\t// $translator->trans(\"The section could not be changed.\");\n\t} else {\n\t\t$modified &= $sectionObj->setUrlName($cShortName);\n\t\t//@New theme management\n\t\tif($newOutputSetting){\n\t\t\t$outputSettingSectionService->insert($outSetSection);\n\t\t} else {\n\t\t\t$outputSettingSectionService->update($outSetSection);\n\t\t}\n\t\t//@New theme management\n\t\tcamp_html_add_msg($translator->trans(\"Section updated\", array(), 'sections'), \"ok\");\n\t}\n\n\t$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n    $cacheService->clearNamespace('section');\n}\ncamp_html_goto_page($editUrl);\n\n?>"
  },
  {
    "path": "newscoop/admin-files/sections/duplicate.php",
    "content": "<?php\n\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/sections/section_common.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!$g_user->hasPermission(\"ManageSection\")) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to add sections.\", array(), 'sections'));\n\texit;\n}\nif (!$g_user->hasPermission(\"AddArticle\")) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to add articles.\"));\n\texit;\n}\n\n$f_src_publication_id = Input::Get('Pub', 'int', 0);\n$f_src_issue_number = Input::Get('Issue', 'int', 0);\n$f_src_section_number = Input::Get('Section', 'int', 0);\n$f_language_id = Input::Get('Language', 'int', 0);\n$f_dest_publication_id = Input::Get('f_dest_publication_id', 'int', 0, true);\n$f_dest_issue_number = Input::Get('f_dest_issue_number', 'string', 0, true);\n$BackLink = Input::Get('Back', 'string', \"/$ADMIN/sections/index.php?Pub=$f_src_publication_id&Issue=$f_src_issue_number&Language=$f_language_id\", true);\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans(\"Invalid input: $1\", array('$1' => Input::GetErrorString())), $BackLink);\n\texit;\n}\n\n$publicationObj = new Publication($f_src_publication_id);\nif (!$publicationObj->exists()) {\n\tcamp_html_display_error($translator->trans('Publication does not exist.'));\n\texit;\n}\n\n$issueObj = new Issue($f_src_publication_id, $f_language_id, $f_src_issue_number);\nif (!$issueObj->exists()) {\n\tcamp_html_display_error($translator->trans('Issue does not exist.'));\n\texit;\n}\n\n$sectionObj = new Section($f_src_publication_id, $f_src_issue_number, $f_language_id, $f_src_section_number);\nif (!$sectionObj->exists()) {\n\tcamp_html_display_error($translator->trans('Section does not exist.'));\n\texit;\n}\n\n$allPublications = Publication::GetPublications();\nif (count($allPublications) == 1) {\n\t$f_dest_publication_id = $f_src_publication_id;\n\t$destPublicationObj = camp_array_peek($allPublications);\n}\n$allIssues = array();\nif ($f_dest_publication_id > 0) {\n    // Get the most recent 50 Issues...if they want something farther back, we are in trouble.\n    $sqlOptions = array(\"LIMIT\" => 50, \"ORDER BY\" => array(\"Number\" => \"DESC\"));\n\t$allIssues = Issue::GetIssues($f_dest_publication_id, $f_language_id, null, null, null, false, $sqlOptions, true);\n\tif (count($allIssues) == 1) {\n\t\t$f_dest_issue_number = $allIssues[0]->getIssueNumber();\n\t}\n}\n\n$allSections = array();\n$destIssueObj = null;\nif ($f_dest_issue_number > 0) {\n    $destIssueObj = new Issue($f_dest_publication_id, $sectionObj->getLanguageId(), $f_dest_issue_number);\n\t$allSections = Section::GetSections($f_dest_publication_id, $f_dest_issue_number, $sectionObj->getLanguageId(), null, null, null, true);\n}\n\n$topArray = array('Pub' => $publicationObj, 'Issue' => $issueObj, 'Section' => $sectionObj);\ncamp_html_content_top($translator->trans('Duplicate section', array(), 'sections'), $topArray, true, true);\n$controller->view->headTitle($translator->trans('Duplicate section', array(), 'sections').' - Newscoop Admin', 'SET');\n?>\n<script>\nfunction CustomValidator_DuplicateSection(form) {\n    // Verify radio button checked\n    if (!form.section_chooser[0].checked && !form.section_chooser[1].checked) {\n        alert(\"<?php echo $translator->trans(\"Please select either $1 or $2.\", array('$1' => $translator->trans('Existing Section', array(), 'sections'), '$2' => $translator->trans('New Section', array(), 'sections')), 'sections'); ?>\");\n        return false;\n    }\n\n    // Existing section checking\n    if (form.section_chooser[0].checked) {\n        if (form.destination_section_existing.selectedIndex == 0) {\n            alert('<?php echo $translator->trans(\"You must select a section.\", array(), 'sections'); ?>');\n            return false;\n        }\n    }\n    else {\n        // New Section checking\n        // Verify there is a number for the section\n        newSectionNumber = form.destination_section_new_id.value.trim();\n        if (form.section_chooser[1].checked && (newSectionNumber == \"\")) {\n            alert('<?php echo $translator->trans(\"You must select a section.\", array(), 'sections'); ?>');\n            return false;\n        }\n\n        // Verify there is a name for the section\n        if (form.section_chooser[1].checked && (form.destination_section_new_name.value.trim() == \"\")) {\n            alert('<?php echo $translator->trans(\"You must specify a name for the section.\", array(), 'sections'); ?>');\n            return false;\n        }\n\n        // Check if user specified an existing section in the \"New Section\" dialog.\n        existingSections = [ <?php p(implode(',', DbObjectArray::GetColumn($allSections, 'Number'))); ?> ];\n        for (i = 0; i < existingSections.length; i++ ) {\n            if (newSectionNumber == existingSections[i]) {\n                alert('<?php echo $translator->trans(\"The section number specified already exists, please specify a different value or use the dropdown to find an existing section.\", array(), 'sections'); ?>');\n                return false;\n            }\n        }\n    }\n    return true;\n} // fn CustomValidator_DuplicateSection\n</script>\n\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\" class=\"action_buttons\" style=\"padding-top: 5px;\">\n<TR>\n\t<TD><A HREF=\"/<?php echo $ADMIN; ?>/sections/?Pub=<?php p($f_src_publication_id); ?>&Issue=<?php p($f_src_issue_number); ?>&Language=<?php p($f_language_id); ?>\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/left_arrow.png\" BORDER=\"0\"></A></TD>\n\t<TD><A HREF=\"/<?php echo $ADMIN; ?>/sections/?Pub=<?php p($f_src_publication_id); ?>&Issue=<?php p($f_src_issue_number); ?>&Language=<?php p($f_language_id); ?>\"><B><?php  echo $translator->trans(\"Section List\"); ?></B></A></TD>\n\n\t<TD style=\"padding-left: 20px;\"><A HREF=\"/<?php echo $ADMIN; ?>/sections/edit.php?Pub=<?php p($f_src_publication_id); ?>&f_issue_number=<?php  p($f_src_issue_number); ?>&f_section_number=<?php p($f_src_section_number); ?>&f_language_id=<?php  p($f_language_id); ?>\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/left_arrow.png\" BORDER=\"0\"></A></TD>\n\t<TD><A HREF=\"/<?php echo $ADMIN; ?>/sections/edit.php?Pub=<?php p($f_src_publication_id); ?>&Issue=<?php p($f_src_issue_number); ?>&Section=<?php p($f_src_section_number); ?>&Language=<?php  p($f_language_id); ?>\"><B><?php  echo $translator->trans(\"Section\"); ?>: <?php p(htmlspecialchars($sectionObj->getName())); ?></B></A></TD>\n</TR>\n</TABLE>\n\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" class=\"table_input\" style=\"padding-top: 10px; padding-bottom: 10px; padding-left: 20px; padding-right: 20px;\">\n<tr>\n<td>\n<table BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\" ALIGN=\"CENTER\" >\n<TR>\n\t<TD colspan=\"2\" style=\"font-size: 14pt; padding-top: 10px;\"><b><?php  echo $translator->trans(\"Duplicate Section:\", array(), 'sections'); ?> <?php  p(htmlspecialchars($sectionObj->getName())); ?></b></TD>\n</TR>\n<TR>\n\t<td colspan=\"3\">&nbsp;</TD>\n</TR>\n<TR>\n\t<td colspan=\"3\" style=\"padding-left: 20px; font-size: 12pt; font-weight: bold;\"><?php  echo $translator->trans(\"Select destination section:\", array(), 'sections'); ?></TD>\n</TR>\n<TR>\n\t<TD VALIGN=\"middle\" style=\"padding-left: 20px; padding-top: 6px;\"><?php  echo $translator->trans('Publication'); ?>: </TD>\n\t<TD valign=\"middle\" ALIGN=\"LEFT\" style=\"padding-top: 6px;\">\n\t\t<?php\n\t\tif (count($allPublications) > 0) {\n\t\t\tif (count($allPublications) == 1) {\n\t\t\t\techo htmlspecialchars($destPublicationObj->getName());\n\t\t\t} else { ?>\n\t\t<FORM NAME=\"FORM_PUB\" METHOD=\"POST\">\n\t\t<input type=\"hidden\" name=\"Pub\" value=\"<?php p($f_src_publication_id); ?>\">\n\t\t<input type=\"hidden\" name=\"Issue\" value=\"<?php p($f_src_issue_number); ?>\">\n\t\t<input type=\"hidden\" name=\"Section\" value=\"<?php p($f_src_section_number); ?>\">\n\t\t<input type=\"hidden\" name=\"Language\" value=\"<?php p($f_language_id); ?>\">\n\t\t<input type=\"hidden\" name=\"Back\" value=\"<?php p($BackLink); ?>\">\n\t\t<SELECT NAME=\"f_dest_publication_id\" class=\"input_select\" ONCHANGE=\"if (this.options[this.selectedIndex].value != '<?php p($f_dest_publication_id); ?>') { this.form.submit();}\">\n\t\t<OPTION VALUE=\"0\"><?php  echo $translator->trans('---Select publication---'); ?></option>\n\t\t<?php\n\t\tforeach ($allPublications as $tmpPublication) {\n\t\t\tcamp_html_select_option($tmpPublication->getPublicationId(), $f_dest_publication_id, $tmpPublication->getName());\n\t\t}\n\t\t?>\n\t\t</SELECT>\n\t\t</form>\n\t\t<?php\n\t\t}\n\t\t} else {\n\t\t?>\n\t\t\t<SELECT class=\"input_select\" DISABLED><OPTION><?php  echo $translator->trans('No publications'); ?></option></SELECT>\n\t\t<?php\n\t\t}\n\t\t?>\n\t</td>\n</tr>\n\n<tr >\n\t<TD VALIGN=\"middle\" style=\"padding-left: 20px; padding-top: 6px;\"><?php  echo $translator->trans('Issue'); ?>: </TD>\n\t<TD valign=\"middle\" ALIGN=\"LEFT\" style=\"padding-top: 6px;\">\n\t\t<?php\n\t\tif (($f_dest_publication_id > 0) && (count($allIssues) > 0)) {\n\t\t\tif (count($allIssues) == 1) {\n\t\t\t\techo htmlspecialchars($destIssueObj->getName());\n\t\t\t} else { ?>\n\t\t<FORM NAME=\"FORM_ISS\" METHOD=\"POST\">\n\t\t<input type=\"hidden\" name=\"Pub\" value=\"<?php p($f_src_publication_id); ?>\">\n\t\t<input type=\"hidden\" name=\"Issue\" value=\"<?php p($f_src_issue_number); ?>\">\n\t\t<input type=\"hidden\" name=\"Section\" value=\"<?php p($f_src_section_number); ?>\">\n\t\t<input type=\"hidden\" name=\"Language\" value=\"<?php p($f_language_id); ?>\">\n\t\t<input type=\"hidden\" name=\"Back\" value=\"<?php p($BackLink); ?>\">\n\t\t<input type=\"hidden\" name=\"f_dest_publication_id\" value=\"<?php p($f_dest_publication_id); ?>\">\n\t\t<SELECT NAME=\"f_dest_issue_number\" class=\"input_select\" ONCHANGE=\"if ((this.selectedIndex != 0) && (this.options[this.selectedIndex].value != <?php p($f_dest_issue_number); ?>)) { this.form.submit(); }\">\n\t\t<OPTION VALUE=\"0\"><?php  echo $translator->trans('---Select issue---'); ?></option>\n\t\t<?php\n\t\tforeach ($allIssues as $tmpIssue) {\n\t\t\tcamp_html_select_option($tmpIssue->getIssueNumber(), $f_dest_issue_number, $tmpIssue->getName());\n\t\t}\n\t\t?>\n\t\t</SELECT>\n\t\t</FORM>\n\t\t<?php\n\t\t}\n\t\t}\n\t\telse {\n\t\t\t?><SELECT class=\"input_select\" DISABLED><OPTION><?php  echo $translator->trans('No issues'); ?></SELECT>\n\t\t\t<?php\n\t\t}\n\t\t?>\n\t</td>\n</tr>\n\n<?php\nif ( ($f_src_publication_id == $f_dest_publication_id) && ($f_src_issue_number == $f_dest_issue_number)) { ?>\n<tr>\n\t<td colspan=\"2\" style=\"padding-top: 10px; padding-bottom: 7px;\">\n\t\t\t<b><?php echo $translator->trans(\"Warning\", array(), 'sections'); echo ':'; echo $translator->trans(\"The destination issue is the same as the source issue.\", array(), 'sections'); ?></b>\n\t</td>\n</tr>\n<?php } ?>\n<FORM METHOD=\"GET\" action=\"/<?php echo $ADMIN; ?>/sections/do_duplicate.php\" onsubmit=\"return CustomValidator_DuplicateSection(this);\">\n<?php echo SecurityToken::FormParameter(); ?>\n\n<input type=\"hidden\" name=\"f_src_publication_id\" value=\"<?php p($f_src_publication_id); ?>\">\n<input type=\"hidden\" name=\"f_src_issue_number\" value=\"<?php p($f_src_issue_number); ?>\">\n<input type=\"hidden\" name=\"f_src_section_number\" value=\"<?php p($f_src_section_number); ?>\">\n<input type=\"hidden\" name=\"f_language_id\" value=\"<?php p($f_language_id); ?>\">\n<input type=\"hidden\" name=\"f_dest_publication_id\" value=\"<?php p($f_dest_publication_id); ?>\">\n<input type=\"hidden\" name=\"f_dest_issue_number\" value=\"<?php p($f_dest_issue_number); ?>\">\n<tr>\n\t<td style=\"padding-left: 40px; padding-top: 10px;\">\n\t   <table cellpadding=\"0\" cellspacing=\"0\">\n\t   <tr>\n\t       <td style=\"border-top: 1px solid black; border-left: 1px solid black; padding-top: 5px;  padding-bottom: 5px;\" valign=\"top\">\n\t           <input type=\"radio\" name=\"f_section_chooser\" value=\"existing_section\" <?php if ($f_dest_issue_number <= 0) { ?> disabled <?php }?>>\n\t       </td>\n\t       <td style=\"padding-top: 8px; padding-bottom: 3px;\">\n\t           <?php echo $translator->trans(\"Existing Section\", array(), 'sections'); ?>:\n\t       </td>\n\t   </tr>\n\t   </table>\n\t</td>\n\t<td style=\"padding-top: 12px; padding-bottom: 0px;\">\n\t\t<SELECT NAME=\"f_dest_section_existing\" class=\"input_select\" <?php if (($f_dest_issue_number <= 0) || (count($allSections) <= 0)) { ?> disabled <?php } ?> onchange=\"this.form.f_section_chooser[0].checked = true;\">\n\t\t<?php if (($f_dest_issue_number <= 0) || (count($allSections) <= 0)) { ?>\n\t\t<OPTION VALUE=\"0\"><?php  echo $translator->trans('No sections'); ?></option>\n\t\t<?php } else { ?>\n\t\t<OPTION VALUE=\"0\"><?php  echo $translator->trans('---Select section---'); ?></option>\n\t\t<?php } ?>\n\t\t<?php\n\t\tforeach ($allSections as $tmpSection) {\n\t\t\tcamp_html_select_option($tmpSection->getSectionNumber(), null, $tmpSection->getName());\n\t\t}\n\t\t?>\n\t\t</SELECT>\n\t</td>\n</tr>\n\n<tr>\n\t<td style=\"padding-left: 40px;\">\n\t   <table cellpadding=\"0\" cellspacing=\"0\">\n\t   <tr>\n\t       <td style=\"border-left: 1px solid black; padding-left: 40px;\"><b><u><?php echo $translator->trans(\"OR\", array(), 'sections'); ?></u></b></td>\n\t   </tr>\n\t   </table>\n\n\t</td>\n</tr>\n\n<tr>\n\t<td style=\"padding-left: 40px;\">\n\t   <table cellpadding=\"0\" cellspacing=\"0\">\n\t   <tr>\n\t       <td style=\"border-left: 1px solid black; padding-bottom: 5px;\" valign=\"top\">\n\t           <input type=\"radio\" name=\"f_section_chooser\" value=\"new_section\" <?php if ($f_dest_issue_number <= 0) { ?> disabled <?php }?>>\n\t       </td>\n\t       <td style=\"padding-top: 3px; padding-bottom: 5px; padding-right: 10px;\">\n\t           <?php echo $translator->trans(\"New Section\", array(), 'sections'); ?>:\n\t       </td>\n\t   </tr>\n\t   </table>\n\t</td>\n\t<td>\n\t   <table cellpadding=\"0\" cellspacing=\"0\">\n\t   <tr>\n\t       <td style=\"width: 5em;\"><?php echo $translator->trans(\"Number\"); ?>:</td>\n\t       <td><input type=\"text\" class=\"input_text\" name=\"f_dest_section_new_number\" size=\"4\" value=\"<?php echo $f_src_section_number; ?>\" <?php if (($f_dest_publication_id <= 0) || ($f_dest_issue_number <= 0)) { ?>disabled<?php } ?> onclick=\"this.form.f_section_chooser[1].checked = true;\"></td>\n\t   </tr>\n\t   </table>\n\t</td>\n</tr>\n\n<tr>\n\t<td style=\"padding-left: 40px;\">\n\t   <table cellpadding=\"0\" cellspacing=\"0\">\n\t   <tr>\n\t       <td style=\"border-bottom: 1px solid black; border-left: 1px solid black; padding-bottom: 5px;\">\n\t           <!-- This radio button is here to make the border match the top border -->\n\t           <input type=\"radio\" name=\"\" value=\"\" disabled style=\"visibility:hidden;\">\n\t       </td>\n\t       <td style=\"padding-top: 3px; padding-bottom: 5px; padding-right: 10px;\">\n\t           &nbsp;\n\t       </td>\n\t   </tr>\n\t   </table>\n\t</td>\n\t<td>\n        <table cellpadding=\"0\" cellspacing=\"0\">\n        <tr>\n           <td style=\"width: 5em;\"><?php echo $translator->trans(\"Name\"); ?>:</td>\n           <td><input type=\"text\" class=\"input_text\" name=\"f_dest_section_new_name\" size=\"20\" value=\"<?php echo $sectionObj->getName(); ?>\" <?php if (($f_dest_publication_id <= 0) || ($f_dest_issue_number <= 0)) { ?>disabled<?php } ?> onclick=\"this.form.section_chooser[1].checked = true;\"></td>\n        </tr>\n        </table>\n\t</td>\n</tr>\n\n<tr>\n\t<td align=\"center\" colspan=\"2\" style=\"padding-top: 15px;\">\n\t   <table>\n\t   <tr>\n\t       <td>\n\t\t      <INPUT TYPE=\"submit\" Name=\"Duplicate\" Value=\"<?php echo $translator->trans(\"Duplicate section\", array(), 'sections'); ?>\" <?php if (($f_dest_publication_id <= 0) || ($f_dest_issue_number <=0)) { echo 'class=\"button_disabled\"'; } else { echo 'class=\"button\"'; }?> >\n\t\t   </td>\n\n\t   </tr>\n\t   </table>\n\t</td>\n</tr>\n</table>\n</FORM>\n</td>\n</tr>\n</table>\n<p>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/sections/duplicate_complete.php",
    "content": "<?php\n\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/sections/section_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!$g_user->hasPermission(\"ManageSection\")) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to add sections.\", array(), 'sections'));\n\texit;\n}\nif (!$g_user->hasPermission(\"AddArticle\")) {\n\tcamp_html_display_error($translator->trans(\"You do not have the right to add articles.\"));\n\texit;\n}\n\n$f_src_publication_id = Input::Get('f_src_publication_id', 'int', 0);\n$f_src_issue_number = Input::Get('f_src_issue_number', 'int', 0);\n$f_src_section_number = Input::Get('f_src_section_number', 'int', 0);\n$f_language_id = Input::Get('f_language_id', 'int', 0);\n$f_dest_publication_id = Input::Get('f_dest_publication_id', 'int', 0);\n$f_dest_issue_number = Input::Get('f_dest_issue_number', 'int', 0);\n$f_dest_section_number = Input::Get('f_dest_section_number', 'int', 0);\n\nif (!Input::IsValid()) {\n   \tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())));\n\texit;\n}\n\n$srcPublicationObj = new Publication($f_src_publication_id);\nif (!$srcPublicationObj->exists()) {\n\tcamp_html_display_error($translator->trans('Publication does not exist.'));\n\texit;\n}\n\n$srcIssueObj = new Issue($f_src_publication_id, $f_language_id, $f_src_issue_number);\nif (!$srcIssueObj->exists()) {\n\tcamp_html_display_error($translator->trans('Issue does not exist.'));\n\texit;\n}\n\n$srcSectionObj = new Section($f_src_publication_id, $f_src_issue_number, $f_language_id, $f_src_section_number);\nif (!$srcSectionObj->exists()) {\n\tcamp_html_display_error($translator->trans('Section does not exist.'));\n\texit;\n}\n\n$dstPublicationObj = new Publication($f_dest_publication_id);\n$dstIssueObj = new Issue($f_dest_publication_id, $f_language_id, $f_dest_issue_number);\n$dstSectionObj = new Section($f_dest_publication_id, $f_dest_issue_number, $f_language_id, $f_dest_section_number);\n\n$topArray = array('Pub' => $srcPublicationObj, 'Issue' => $srcIssueObj, 'Section' => $srcSectionObj);\ncamp_html_content_top($translator->trans('Duplicating section', array(), 'sections'), $topArray);\n\n?>\n<P>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"8\" class=\"message_box\">\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<B> <?php  echo $translator->trans(\"Duplicating section\", array(), 'sections'); ?> </B>\n\t\t<HR NOSHADE SIZE=\"1\" COLOR=\"BLACK\">\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<BLOCKQUOTE>\n \t  <?php  echo $translator->trans('Section $1 has been duplicated to $2. $3 of $4', array('$1' => '<B>'.$srcSectionObj->getName().'</B>', '$2' => '<B>'.$dstSectionObj->getIssueNumber().'</B>', '$3' => '<B>'.$dstIssueObj->getName().' ('.$dstIssueObj->getLanguageName().')</B>', '$4' => '<B>'.$dstPublicationObj->getName().'</B>'), 'sections'); ?>\n\t\t</BLOCKQUOTE>\n\t</TD>\n</TR>\n<TR>\n\t<TD COLSPAN=\"2\">\n\t\t<DIV ALIGN=\"CENTER\">\n            <table>\n            <tr>\n                <td>\n                   <b><a href=\"<?php echo \"/$ADMIN/sections/edit.php?Pub=$f_dest_publication_id&Issue=$f_dest_issue_number&Section=$f_dest_section_number&Language=$f_language_id\"; ?>\"><?php echo $translator->trans(\"Go to new section\", array(), 'sections'); ?></a></b>\n                </td>\n                <td style=\"padding-left: 50px;\">\n    \t           <b><a href=\"<?php echo \"/$ADMIN/sections/edit.php?Pub=$f_src_publication_id&Issue=$f_src_issue_number&Section=$f_src_section_number&Language=$f_language_id\"; ?>\"><?php echo $translator->trans(\"Go to source section\", array(), 'sections'); ?></a></b>\n    \t        </td>\n    \t    </tr>\n    \t    </table>\n\t\t</DIV>\n\t</TD>\n</TR>\n</TABLE>\n<P>\n\n<?php camp_html_copyright_notice(); ?>"
  },
  {
    "path": "newscoop/admin-files/sections/edit.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'] . \"/$ADMIN_DIR/sections/section_common.php\");\nrequire_once($GLOBALS['g_campsiteDir'] . \"/$ADMIN_DIR/articles/editor_load_tinymce.php\");\ninclude_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/javascript_common.php\");\n//@New theme management\nuse Newscoop\\Service\\Resource\\ResourceId;\nuse Newscoop\\Service\\IThemeManagementService;\nuse Newscoop\\Service\\IOutputSettingIssueService;\nuse Newscoop\\Service\\IOutputSettingSectionService;\n//@New theme management\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!$g_user->hasPermission('ManageSection')) {\n    camp_html_display_error($translator->trans(\"You do not have the right to modify sections.\", array(), 'sections'));\n    exit;\n}\n\nglobal $sectionObj;\n\n$Pub = Input::Get('Pub', 'int', 0);\n$Issue = Input::Get('Issue', 'int', 0);\n$Language = Input::Get('Language', 'int', 0);\n$Section = Input::Get('Section', 'int', 0);\n\n$publicationObj = new Publication($Pub);\n$issueObj = new Issue($Pub, $Language, $Issue);\n$sectionObj = new Section($Pub, $Issue, $Language, $Section);\n\n$topArray = array('Pub' => $publicationObj, 'Issue' => $issueObj, 'Section' => $sectionObj);\ncamp_html_content_top($translator->trans(\"Configure section\", array(), 'sections'), $topArray);\n$controller->view->headTitle($translator->trans('Configure section', array(), 'sections').' - Newscoop Admin', 'SET');\n\n$url_args1 = \"Pub=$Pub&Issue=$Issue&Language=$Language\";\n$url_args2 = $url_args1.\"&Section=$Section\";\n\n$languageObj = new Language($Language);\nif (!is_object($languageObj)) {\n    $languageObj = new Language(1);\n}\n//$editorLanguage = camp_session_get('TOL_Language', $languageObj->getCode());\n$editorLanguage = !empty($_COOKIE['TOL_Language']) ? $_COOKIE['TOL_Language'] : $languageObj->getCode();\neditor_load_tinymce('cDescription', $g_user, 0, $editorLanguage, 'section');\n\n//@New theme management\n$resourceId = new ResourceId('Section/Edit');\n$themeManagementService = $resourceId->getService(IThemeManagementService::NAME_1);\n$outputSettingIssueService = $resourceId->getService(IOutputSettingIssueService::NAME);\n$outputSettingSectionService = $resourceId->getService(IOutputSettingSectionService::NAME);\n\n$outSetIssues = $outputSettingIssueService->findByIssue($issueObj->getIssueId());\n\n$themePath = null;\n$tplSectionPath = null;\n$tplArticlePath = null;\nif(count($outSetIssues) > 0){\n\t$outSetIssue = $outSetIssues[0];\n\t$themePath = $outSetIssue->getThemePath()->getPath();\n\t$outSetSections = $outputSettingSectionService->findBySection($sectionObj->getSectionId());\n\tif(count($outSetSections) > 0){\n\t\t$outSetSection = $outSetSections[0];\n\t\tif($outSetSection->getSectionPage() != null){\n\t\t\t$tplSectionPath = $outSetSection->getSectionPage()->getPath();\n\t\t}\n\t\tif($outSetSection->getArticlePage() != null){\n\t\t\t$tplArticlePath = $outSetSection->getArticlePage()->getPath();\n\t\t}\n\t}\n}\n\n$issueHasTheme = $themePath != null;\nif($issueHasTheme){\n\t$allTemplates = $themeManagementService->getTemplates($themePath);\n} else {\n\t$allTemplates = array();\n}\n\n//@New theme management\n?>\n<script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/campsite.js\"></script>\n\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"1\" class=\"action_buttons\" style=\"padding-top: 5px;\">\n<tr>\n  <td><a href=\"/<?php echo $ADMIN; ?>/sections/?Pub=<?php p($Pub); ?>&Issue=<?php p($issueObj->getIssueNumber()); ?>&Language=<?php p($issueObj->getLanguageId()); ?>\"><img src=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/left_arrow.png\" border=\"0\" /></a></td>\n  <td><a href=\"/<?php echo $ADMIN; ?>/sections/?Pub=<?php p($Pub); ?>&Issue=<?php p($issueObj->getIssueNumber()); ?>&Language=<?php p($issueObj->getLanguageId()); ?>\"><b><?php echo $translator->trans(\"Section List\"); ?></b></a></td>\n  <td style=\"padding-left: 20px;\"><a href=\"/<?php echo $ADMIN; ?>/articles/?f_publication_id=<?php p($Pub); ?>&f_issue_number=<?php p($sectionObj->getIssueNumber()); ?>&f_section_number=<?php p($sectionObj->getSectionNumber()); ?>&f_language_id=<?php p($sectionObj->getLanguageId()); ?>\"><b><?php echo $translator->trans(\"Go To Articles\", array(), 'sections'); ?></b></a></td>\n  <td><a href=\"/<?php echo $ADMIN; ?>/articles/?f_publication_id=<?php p($Pub); ?>&f_issue_number=<?php p($sectionObj->getIssueNumber()); ?>&f_section_number=<?php p($sectionObj->getSectionNumber()); ?>&f_language_id=<?php p($sectionObj->getLanguageId()); ?>\"><img src=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/go_to.png\" border=\"0\" /></a></td>\n</tr>\n</table>\n\n<p>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"1\" class=\"action_buttons\">\n<tr>\n  <td><a href=\"/<?php echo $ADMIN; ?>/sections/add.php?<?php p($url_args1); ?>\"><img src=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/add.png\" border=\"0\" /></a></td>\n  <td><a href=\"/<?php echo $ADMIN; ?>/sections/add.php?<?php p($url_args1); ?>\"><b><?php echo $translator->trans(\"Add new section\", array(), 'sections'); ?></b></a></td>\n  <td style=\"padding-left: 20px;\"><a href=\"/<?php echo $ADMIN; ?>/sections/duplicate.php?<?php p($url_args2); ?>\"><img src=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/duplicate.png\" border=\"0\" /></a></td>\n  <td><a href=\"/<?php echo $ADMIN; ?>/sections/duplicate.php?<?php p($url_args2); ?>\" ><b><?php echo $translator->trans(\"Duplicate\"); ?></b></a></td>\n  <td style=\"padding-left: 20px;\"><a href=\"/<?php echo $ADMIN; ?>/sections/del.php?<?php p($url_args2); ?>\"><img src=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/delete.png\" border=\"0\" /></a></td>\n  <td><a href=\"/<?php echo $ADMIN; ?>/sections/del.php?<?php p($url_args2); ?>\" ><b><?php echo $translator->trans(\"Delete\"); ?></b></a></td>\n</tr>\n</table>\n\n<?php camp_html_display_msgs(); ?>\n\n<p>\n    <form name=\"section_edit\" method=\"POST\" action=\"/<?php echo $ADMIN; ?>/sections/do_edit.php\" onsubmit=\"return <?php camp_html_fvalidate(); ?>;\">\n<?php echo SecurityToken::FormParameter(); ?>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"box_table\">\n<tr>\n  <td colspan=\"2\">\n    <b><?php echo $translator->trans(\"Configure section\", array(), 'sections'); ?></b>\n    <hr noshade size=\"1\" color=\"black\">\n  </td>\n</tr>\n<tr>\n  <td align=\"right\"><?php echo $translator->trans(\"Number\"); ?>:</td>\n  <td>\n    <?php p($sectionObj->getSectionNumber()); ?>\n  </td>\n</tr>\n<tr>\n  <td align=\"right\"><?php echo $translator->trans(\"Name\"); ?>:</td>\n  <td>\n    <input type=\"text\" class=\"input_text\" name=\"cName\" size=\"32\" value=\"<?php p(htmlspecialchars($sectionObj->getName())); ?>\" />\n  </td>\n</tr>\n<tr>\n  <td align=\"right\"><?php echo $translator->trans(\"URL Name\", array(), 'sections'); ?>:</td>\n  <td>\n    <input type=\"text\" class=\"input_text\" name=\"cShortName\" size=\"32\" value=\"<?php p(htmlspecialchars($sectionObj->getUrlName())); ?>\" alt=\"alnum|1|A|true|false|_\" emsg=\"<?php echo $translator->trans('The $1 field may only contain letters, digits and underscore (_) character.', array('$1' => \"'\" . $translator->trans('URL Name', array(), 'sections') . \"'\")); ?>\"/>\n  </td>\n</tr>\n<tr>\n  <td align=\"right\" valign=\"top\"><?php echo $translator->trans(\"Description\"); ?>:</td>\n  <td>\n    <textarea name=\"cDescription\" id=\"cDescription\" class=\"tinymce\"\n    rows=\"20\" cols=\"80\"><?php p($sectionObj->getDescription()); ?></textarea>\n  </td>\n</tr>\n<?php\n\tif(SaaS::singleton()->hasPermission('ManageSectionTemplates')) {\n?>\n<tr>\n  <td colspan=\"2\" style=\"padding-top:20px;\">\n    <b><?php echo $translator->trans(\"Default templates\"); ?></b>\n    <hr noshade size=\"1\" color=\"black\" />\n  </td>\n</tr>\n<?php if($issueHasTheme){ ?>\n<tr>\n  <td align=\"right\"><?php echo $translator->trans(\"Section Template\"); ?>:</td>\n  <td>\n    <select name=\"cSectionTplId\" class=\"input_select\">\n    <option value=\"0\">&lt;<?php  echo $translator->trans(\"default\", array(), 'sections'); ?>&gt;</option>\n    <?php\n\tforeach ($allTemplates as $template) {\n\t\tcamp_html_select_option($template->getPath(), $tplSectionPath, $template->getName());\n\t}\n    ?>\n    </select>\n  </td>\n</tr>\n<tr>\n  <td align=\"right\"><?php echo $translator->trans(\"Article Template\"); ?>:</td>\n  <td>\n    <select name=\"cArticleTplId\" class=\"input_select\">\n    <option value=\"0\">&lt;<?php  echo $translator->trans(\"default\", array(), 'sections'); ?>&gt;</option>\n    <?php\n\tforeach ($allTemplates as $template) {\n\t\tcamp_html_select_option($template->getPath(), $tplArticlePath, $template->getName());\n\t}\n    ?>\n    </select>\n  </td>\n</tr>\n<?php } else {?>\n<TR>\n\t<TD ALIGN=\"LEFT\" colspan=\"2\" style=\"color: red;\">\n\t<INPUT TYPE=\"hidden\" NAME=\"cSectionTplId\" VALUE=\"0\"/>\n\t<INPUT TYPE=\"hidden\" NAME=\"cArticleTplId\" VALUE=\"0\"/>\n\t<?php echo $translator->trans(\"You have to assign a theme to the issue\", array(), 'sections');?>\n\t<br/>\n\t<?php echo $translator->trans(\"before you can configure the section templates.\", array(), 'sections');?>\n\t</TD>\n</TR>\n<?php }?>\n<?php\n    } else {\n    \t$tplSectionPathSafe = strlen($tplSectionPath) ? $tplSectionPath : '0';\n    \t$tplArticlePathSafe = strlen($tplArticlePath) ? $tplArticlePath : '0';\n    \t?>\n            <INPUT TYPE=\"hidden\" NAME=\"cSectionTplId\" VALUE=\"<?php echo $issueHasTheme ? $tplSectionPathSafe : '0';?>\"/>\n            <INPUT TYPE=\"hidden\" NAME=\"cArticleTplId\" VALUE=\"<?php echo $issueHasTheme ? $tplArticlePathSafe : '0';?>\"/>\n    \t<?php\n    }\n?>\n<tr>\n\t<td colspan=\"2\">\n    <!-- Old plugins hooks -->\n\t\t<?php CampPlugin::adminHook(__FILE__, array( 'sectionObj' => $sectionObj ) ); ?>\n\n    <!-- New plugins hooks -->\n    <?php \n    echo \\Zend_Registry::get('container')->getService('newscoop.plugins.service')\n        ->renderPluginHooks('newscoop_admin.interface.section.edit', null, array(\n            'section' => $sectionObj\n        ));\n    ?>\n\t</td>\n</tr>\n<tr>\n  <td colspan=\"2\" align=\"center\">\n    <input type=\"hidden\" name=\"Pub\" value=\"<?php p($Pub); ?>\" />\n    <input type=\"hidden\" name=\"Issue\" value=\"<?php p($Issue); ?>\" />\n    <input type=\"hidden\" name=\"Language\" value=\"<?php p($Language); ?>\" />\n    <input type=\"hidden\" name=\"Section\" value=\"<?php p($Section); ?>\" />\n    <input type=\"hidden\" name=\"f_language_selected\" ID=\"f_language_selected\" value=\"<?php p($editorLanguage); ?>\" />\n    <input type=\"submit\" class=\"button\" name=\"Save\" value=\"<?php echo $translator->trans('Save'); ?>\" />\n  </td>\n</tr>\n</table>\n</form>\n<p>\n<script>\ndocument.section_edit.cName.focus();\n</script>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/sections/index.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/sections/section_common.php\");\nrequire_once($GLOBALS['g_campsiteDir']. '/classes/SimplePager.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n$Pub = Input::Get('Pub', 'int', 0);\n$Issue = Input::Get('Issue', 'int', 0);\n$Language = Input::Get('Language', 'int', 0);\n$SectOffs = camp_session_get(\"SectOffs_\".$Pub.\"_\".$Issue.\"_\".$Language, 0);\nif ($SectOffs < 0)\t{\n\t$SectOffs = 0;\n}\n$ItemsPerPage = 15;\n\nif (!Input::IsValid()) {\n\tcamp_html_display_error($translator->trans('Invalid input: $1', array('$1' => Input::GetErrorString())), $_SERVER['REQUEST_URI']);\n\texit;\n}\n$publicationObj = new Publication($Pub);\n$issueObj = new Issue($Pub, $Language, $Issue);\n$allSections = Section::GetSections($Pub, $Issue, $Language, null, null, array('ORDER BY' => 'Number', 'LIMIT' => array('START' => $SectOffs, 'MAX_ROWS' => $ItemsPerPage)), true);\n$totalSections = Section::GetTotalSections($Pub, $Issue, $Language);\n\n$pager = new SimplePager($totalSections, $ItemsPerPage, \"SectOffs_\".$Pub.\"_\".$Issue.\"_\".$Language, \"index.php?Pub=$Pub&Issue=$Issue&Language=$Language&\");\n\n$topArray = array('Pub' => $publicationObj, 'Issue' => $issueObj);\ncamp_html_content_top($translator->trans('Section List'), $topArray);\n$controller->view->headTitle($translator->trans('Section List').' - Newscoop Admin', 'SET');\n?>\n<TABLE BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\" class=\"action_buttons\" style=\"padding-top: 5px;\">\n<TR>\n\t<TD><A HREF=\"/<?php echo $ADMIN; ?>/issues/?Pub=<?php  p($Pub); ?>\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/left_arrow.png\" BORDER=\"0\"></A></TD>\n\t<TD><A HREF=\"/<?php echo $ADMIN; ?>/issues/?Pub=<?php  p($Pub); ?>\"><B><?php  echo $translator->trans(\"Issue List\"); ?></B></A></TD>\n<?php\nif ($g_user->hasPermission('ManageSection')) { ?>\n    <TD style=\"padding-left: 20px;\"><A HREF=\"/<?php echo $ADMIN; ?>/sections/add.php?Pub=<?php  p($Pub); ?>&Issue=<?php  p($Issue); ?>&Language=<?php  p($Language); ?>\" ><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/add.png\" BORDER=\"0\"></A></TD>\n    <TD><A HREF=\"/<?php echo $ADMIN; ?>/sections/add.php?Pub=<?php  p($Pub); ?>&Issue=<?php  p($Issue); ?>&Language=<?php  p($Language); ?>\" ><B><?php  echo $translator->trans(\"Add new section\", array(), 'sections'); ?></B></A></TD>\n<?php  } ?>\n</TR>\n</TABLE>\n<P>\n<?php\nif (count($allSections) > 0) {\n\t$color=0;\n?>\n\n<TABLE BORDER=\"0\" CELLSPACING=\"1\" CELLPADDING=\"3\" class=\"table_list\">\n<TR class=\"table_list_header\">\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><?php echo $translator->trans(\"Number\"); ?></TD>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><?php echo $translator->trans(\"Name<BR><SMALL>(click to see articles)</SMALL>\", array(), 'sections'); ?></TD>\n    <TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><?php echo $translator->trans(\"No. of Articles<BR><SMALL>(Published/Total)</SMALL>\", array(), 'sections'); ?></TD>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><?php echo $translator->trans(\"URL Name\", array(), 'sections'); ?></TD>\n        <?php if ($g_user->hasPermission('ManageSection')) { ?>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><?php echo $translator->trans(\"Configure\"); ?></TD>\n        <?php } ?>\n\t<?php if ($g_user->hasPermission('ManageSection') && $g_user->hasPermission('AddArticle')) { ?>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><?php  echo $translator->trans(\"Duplicate\"); ?></TD>\n\t<?php } ?>\n\t<?php if($g_user->hasPermission('DeleteSection')) { ?>\n\t<TD ALIGN=\"LEFT\" VALIGN=\"TOP\"><?php  echo $translator->trans(\"Delete\"); ?></TD>\n\t<?php } ?>\n</TR>\n<?php\n    foreach ($allSections as $section) {\n        $numberOfArticles = Article::GetArticles($section->getPublicationId(),\n                                                 $section->getIssueNumber(),\n                                                 $section->getSectionNumber(),\n                                                 $section->getLanguageId(),\n                                                 null, true);\n        $whereOptions = array(\"Published='Y'\");\n        $numberOfPublishedArticles = Article::GetArticles($section->getPublicationId(),\n                                                          $section->getIssueNumber(),\n                                                          $section->getSectionNumber(),\n                                                          $section->getLanguageId(),\n                                                          null, true,\n                                                          $whereOptions);\n?>\n\t<TR <?php if ($color) { $color=0; ?>class=\"list_row_even\"<?php  } else { $color=1; ?>class=\"list_row_odd\"<?php  } ?>>\n\t\t<TD ALIGN=\"RIGHT\">\n\t\t\t<?php p($section->getSectionNumber()); ?>\n\t\t</TD>\n\t\t<TD >\n              <A HREF=\"/<?php p($ADMIN); ?>/articles/?f_publication_id=<?php p($Pub); ?>&f_issue_number=<?php  p($section->getIssueNumber()); ?>&f_section_number=<?php p($section->getSectionNumber()); ?>&f_language_id=<?php  p($section->getLanguageId()); ?>&f_language_selected=<?php  p($section->getLanguageId()); ?>\"><?php p(htmlspecialchars($section->getName())); ?></A>\n\t\t</TD>\n        <TD ALIGN=\"CENTER\">\n            <?php echo $numberOfPublishedArticles.' / '.$numberOfArticles; ?>\n        </TD>\n\t\t<TD>\n\t\t\t<?php p(htmlspecialchars($section->getUrlName())); ?>\n\t\t</TD>\n        <?php if ($g_user->hasPermission('ManageSection')) { ?>\n        <TD ALIGN=\"CENTER\">\n\t\t\t<A HREF=\"/<?php p($ADMIN); ?>/sections/edit.php?Pub=<?php  p($Pub); ?>&Issue=<?php  p($section->getIssueNumber()); ?>&Section=<?php p($section->getSectionNumber()); ?>&Language=<?php  p($section->getLanguageId()); ?>\"><img src=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/configure.png\" alt=\"<?php  echo $translator->trans(\"Configure\"); ?>\" title=\"<?php  echo $translator->trans(\"Configure\"); ?>\" border=\"0\"></A>\n        </TD>\n        <?php } ?>\n\t\t<?php if ($g_user->hasPermission('ManageSection') && $g_user->hasPermission('AddArticle')) { ?>\n\t\t<TD ALIGN=\"CENTER\">\n\t\t\t<A HREF=\"/<?php p($ADMIN);?>/sections/duplicate.php?Pub=<?php  p($Pub); ?>&Issue=<?php  p($Issue); ?>&Section=<?php p($section->getSectionNumber()); ?>&Language=<?php  p($Language); ?>\"><img src=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/duplicate.png\" alt=\"<?php echo $translator->trans('Duplicate'); ?>\" title=\"<?php echo $translator->trans('Duplicate'); ?>\" border=\"0\"></A>\n\t\t</TD>\n\t\t<?php } ?>\n\n\t\t<?php if ($g_user->hasPermission('DeleteSection')) { ?>\n\t\t<TD ALIGN=\"CENTER\">\n\t\t\t<A HREF=\"/<?php p($ADMIN); ?>/sections/del.php?Pub=<?php  p($Pub); ?>&Issue=<?php  p($section->getIssueNumber()); ?>&Section=<?php p($section->getSectionNumber()); ?>&Language=<?php  p($section->getLanguageId()); ?>&SectOffs=<?php p($SectOffs); ?>&<?php echo SecurityToken::URLParameter(); ?>\"><IMG SRC=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/delete.png\" BORDER=\"0\" ALT=\"<?php echo $translator->trans('Delete section $1', array('$1' => htmlspecialchars($section->getName())), 'sections'); ?>\" TITLE=\"<?php  echo $translator->trans('Delete section $1', array('$1' => htmlspecialchars($section->getName())), 'sections'); ?>\"></A>\n\t\t</TD>\n\t\t<?php  } ?>\n\t</TR>\n<?php\n} // foreach\n?>\n</table>\n<table class=\"indent\">\n<TR>\n\t<TD>\n\t\t<?php echo $pager->render(); ?>\n\t</TD>\n</TR>\n</TABLE>\n<?php\n} // if\nelse { ?>\n\t<BLOCKQUOTE>\n\t<LI><?php  echo $translator->trans('No sections'); ?></LI>\n\t</BLOCKQUOTE>\n\t<?php\n}\n\ncamp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/sections/section_common.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Section.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Issue.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Publication.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/User.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\n?>"
  },
  {
    "path": "newscoop/admin-files/set-author.php",
    "content": "<?php\n\nrequire_once($GLOBALS['g_campsiteDir'].\"/db_connect.php\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/lib_campsite.php\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/classes/Input.php\");\nrequire_once($GLOBALS['g_campsiteDir'].\"/classes/ArticleTypeField.php\");\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!$g_user->hasPermission('ChangeArticle')\n    || !$g_user->hasPermission('ManageIssue')) {\n    camp_html_display_error($translator->trans('You must have the permissions to add/change issues and articles in order to set the author for all articles.', array(), 'home'));\n    exit;\n}\n\n$f_src_author_field = Input::Get('f_src_author_field', 'string', '');\nif (!empty($f_src_author_field)) {\n\t$fields = ArticleTypeField::FetchFields($f_src_author_field, null, 'text', false, false, false, true, true);\n\tif (count($fields) == 0) {\n\t    camp_html_add_msg($translator->trans(\"Invalid or empty field $1. You must select a valid dynamic field.\", array('$1' => $f_src_author_field), 'home'));\n\t}\n\n\tforeach ($fields as $field) {\n\t\tcamp_set_author($field, $errors);\n\t\tif (count($errors) == 0) {\n\t\t\tcamp_html_add_msg($translator->trans(\"The author was set successfuly for articles of type $1 from the field $2.\",\n\t\t\t                        array('$1' => $field->getArticleType(), '$2' => $field->getPrintName()), 'home'), 'ok');\n\t\t} else {\n            camp_html_add_msg($translator->trans(\"There were errors setting the author for articles of type $1 from the field $2.\",\n                                    array('$1' => $field->getArticleType(), '$2' => $field->getPrintName()), 'home'));\n\t\t}\n        foreach ($errors as $error) {\n            camp_html_add_msg($error);\n        }\n\t}\n    camp_html_display_msgs();\n}\n\n$availableFields = ArticleTypeField::FetchFields(null, null, 'text', false, false, false, true, true);\n\n?>\n\n<br/>\n<form name=\"f_set_author\" method=\"post\">\n<TABLE BORDER=\"0\" CELLSPACING=\"4\" CELLPADDING=\"2\" CLASS=\"table_input\">\n<TR>\n    <TD VALIGN=\"TOP\" align=\"left\" nowrap>\n        <?php echo $translator->trans(\"Select the field from which to generate the author\", array(), 'home'); ?>:\n    </td>\n    <td valign=\"top\" align=\"left\">\n        <select name=\"f_src_author_field\">\n        <?php\n        foreach ($availableFields as $field) {\n        \techo \"<option value=\\\"\" . htmlspecialchars($field->getPrintName())\n        \t     . \"\\\">\" . $field->getPrintName() . \"</option>\\n\";\n        }\n        ?>\n        </select>\n    </td>\n</tr>\n<tr>\n    <td colspan=\"2\" align=\"center\">\n        <input type=\"submit\" name=\"f_submit\" value=\"<?php echo $translator->trans(\"Submit\"); ?>\">\n    </td>\n</tr>\n</table>\n</form>\n\n<?php camp_html_copyright_notice(false); ?>\n"
  },
  {
    "path": "newscoop/admin-files/universal-list/index.php",
    "content": "<?php\nrequire_once LIBS_DIR . '/ArticleList/ArticleList.php';\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n$f_publication_id = Input::Get('f_publication_id', 'int', null);\n$f_issue_number = Input::Get('f_issue_number', 'int', null);\n$f_section_number = Input::Get('f_section_number', 'int', null);\n$f_language_id = Input::Get('f_language_id', 'int', 1);\nif (isset($_SESSION['f_language_selected'])) {\n    $f_old_language_selected = (int)$_SESSION['f_language_selected'];\n} else {\n    $f_old_language_selected = 0;\n}\n$f_language_selected = (int)camp_session_get('f_language_selected', 0);\n\ncamp_html_content_top($translator->trans('Search'), NULL);\n\n$controller->view->headTitle($translator->trans('Search').' - Newscoop Admin', 'SET');\n\n// set up\n$articlelist = new ArticleList();\n$articlelist->setPublication($f_publication_id);\n$articlelist->setIssue($f_issue_number);\n$articlelist->setSection($f_section_number);\n$articlelist->setLanguage($f_language_id);\n\n$articlelist->setColVis(TRUE);\n$articlelist->setSearch(TRUE);\n\n// render\n$articlelist->renderFilters();\n$articlelist->renderActions();\n$articlelist->render();\n\ncamp_html_copyright_notice();\n\n?>\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/admin-files/users/access_form.php",
    "content": "<?php\n\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/users/users_common.php\");\nrequire_once('permission_list.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n$uType = 'Staff';\ncompute_user_rights($g_user, $canManage, $canDelete);\nif (!$canManage) {\n\t$error = $translator->trans(\"You do not have the right to change user account permissions.\", array(), 'users');\n\tcamp_html_display_error($error);\n\texit;\n}\n\n$userId = Input::Get('User', 'int', 0);\nif ($userId > 0) {\n\t$editUser = new User($userId);\n\tif ($editUser->getUserName() == '') {\n\t\tcamp_html_display_error($translator->trans('No such user account.', array(), 'users'));\n\t\texit;\n\t}\n} else {\n\tcamp_html_display_error($translator->trans('No such user account.', array(), 'users'));\n\texit;\n}\n\n$rights = camp_get_permission_list();\n?>\n<script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/campsite-checkbox.js\"></script>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"3\" align=\"left\">\n<?php\n$rightsList = array();\n$checkboxPrefix = 'checkbox_';\n$counter = 0;\n$no_rights = 0;\nforeach ($rights as $group_name => $group) {\n    $no_rights += sizeof($group);\n    foreach ($group as $right_name => $right_text) {\n        if ($editUser->hasPermission($right_name)) {\n            $rightsList[] = \"'\" . $checkboxPrefix . $counter . \"'\";\n        }\n        $counter++;\n    }\n}\n$jsRightsArray = implode(',', $rightsList);\n?>\n<tr>\n  <td colspan=\"2\" align=\"center\">\n    <input type=\"button\" class=\"button\" value=\"Select All\" onclick=\"checkAll(<?php echo $no_rights; ?>);\" />\n    <input type=\"button\" class=\"button\" value=\"Select None\" onclick=\"uncheckAll(<?php echo $no_rights; ?>);\" />\n    <input type=\"button\" class=\"button\" value=\"Restore\" onclick=\"var rightsArray = [<?php echo $jsRightsArray; ?>];checkRestore(<?php echo $no_rights; ?>, rightsArray);\" />\n  </td>\n</tr>\n<?php\n$i = 0;\nforeach ($rights as $group_name => $group) {\n?>\n\t<tr>\n\t\t<td colspan=\"2\" align=\"left\" style=\"padding-top: 10px; padding-left: 10px;\">\n\t\t\t<strong>--- <?php p($group_name); ?> ---</strong>\n\t\t</td>\n\t</tr>\n<?php\n        $color = 0;\n\tforeach ($group as $right_name => $right_text) {\n            $rowClass = ($color) ? 'list_row_even' : 'list_row_odd';\n            $color = !$color;\n?>\n\t<tr id=\"<?php echo 'row_' . $i; ?>\" class=\"<?php if ($editUser->hasPermission($right_name)) { echo 'list_row_click'; } else { echo $rowClass; } ?>\" onmouseover=\"setPointer(this, <?php echo $i; ?>, 'over');\" onmouseout=\"setPointer(this, <?php echo $i; ?>, 'out');\">\n                <script>default_class[<?php echo $i; ?>] = \"<?php echo $rowClass; ?>\";</script>\n\t\t<td align=\"right\" style=\"padding-left: 10px;\">\n                        <input type=\"checkbox\" value=\"<?php echo $no_rights . '_' . ($i + 1); ?>\" name=\"<?php echo $right_name; ?>\" id=\"<?php echo 'checkbox_' . $i; ?>\" class=\"input_checkbox\" onclick=\"checkboxClick(this, <?php echo $i++; ?>);\" <?php if ($editUser->hasPermission($right_name)) { p(\"CHECKED\"); } ?>>\n\t\t</td>\n\t\t<td style=\"padding-right: 10px;\">\n\t\t\t<?php p($right_text); ?>\n\t\t</td>\n\t</tr>\n<?php\n\t}\n}\n?>\n</table>\n"
  },
  {
    "path": "newscoop/admin-files/users/authors.php",
    "content": "<?php\n/**\n * @package Newscoop\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Image.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ImageSearch.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n// TODO: permissions\nif (!is_writable($Campsite['IMAGE_DIRECTORY'])) {\n    camp_html_add_msg($translator->trans('Unable to add new image, target directory is not writable.', array(), 'users'));\n    camp_html_add_msg(camp_get_error_message(CAMP_ERROR_WRITE_DIR, $Campsite['IMAGE_DIRECTORY']));\n    camp_html_goto_page(\"/$ADMIN/\");\n    exit;\n}\nif (!$g_user->hasPermission('EditAuthors')) {\n    camp_html_display_error($translator->trans('You do not have the permission to change authors.', array(), 'users'));\n    exit;\n}\n\n$id = Input::Get('id', 'int', -1);\n\n// Delete author\n$del_id = Input::Get('del_id', 'int', -1);\nif ($del_id > -1) {\n    $author = new Author($del_id);\n    if ($author->delete()) {\n        camp_html_add_msg($translator->trans('Author deleted.', array(), 'users'), 'ok');\n    }\n}\n\n// Add new author type\n$add_author_type = Input::Get('add_author', 'string', null);\nif ($add_author_type !== null) {\n    $authorTypeObj = new AuthorType();\n    if ($authorTypeObj->create($add_author_type) === true) {\n        camp_html_add_msg($translator->trans('Author type added.', array(), 'users'), 'ok');\n    } else {\n        camp_html_add_msg($translator->trans('Cannot add author type, this type already exists.', array(), 'users'));\n    }\n}\n\n// Delete author type\n$del_id_type = Input::Get('del_id_type', 'int', -1);\nif ($del_id_type > -1) {\n    $authorTypeObj = new AuthorType($del_id_type);\n    if ($authorTypeObj->delete()) {\n        camp_html_add_msg($translator->trans('Author type removed.', array(), 'users'), 'ok');\n    } else {\n        camp_html_add_msg($translator->trans('Cannot remove author type.', array(), 'users'));\n    }\n}\n\n// Delete author alias\n$del_id_alias = Input::Get('del_id_alias', 'int', -1);\nif ($del_id_alias > -1) {\n    $authorAliasObj = new AuthorAlias($del_id_alias);\n    if ($authorAliasObj->delete()) {\n        camp_html_add_msg($translator->trans('Author alias removed.', array(), 'users'), 'ok');\n    } else {\n        camp_html_add_msg($translator->trans('Cannot remove author alias.', array(), 'users'));\n    }\n}\n\n// Important! Trim spaces and replace multiple ones by space\n$first_name = preg_replace('/\\s+/', ' ', trim(Input::Get('first_name')));\n$last_name = preg_replace('/\\s+/', ' ', trim(Input::Get('last_name')));\n$can_save = false;\nif ($id > -1 && strlen($first_name) > 0 && strlen($last_name) > 0) {\n    $can_save = true;\n    $tmpAuthor = new Author(implode(' ', array($first_name, $last_name)));\n    if ($id == 0 && $tmpAuthor->exists()) {\n        $can_save = false;\n        camp_html_add_msg($translator->trans('An author with the same full name (combination of first and last name) already exists.', array(), 'users'));\n    }\n}\nif ($can_save) {\n    $author = new Author();\n    if ($id > 0) {\n        $author = new Author($id);\n        $isNewAuthor = false;\n    } else {\n        $author->create(array('first_name' => $first_name, 'last_name' => $last_name));\n        $isNewAuthor = true;\n    }\n\n    $uploadFileSpecified = isset($_FILES['file'])\n        && isset($_FILES['file']['name'])\n        && !empty($_FILES['file']['name']);\n\n    $author->setFirstName($first_name);\n    $author->setLastName($last_name);\n    $author->commit();\n\n    // Reset types\n    $types = Input::Get('type', 'array', array());\n    AuthorAssignedType::ResetAuthorAssignedTypes($author->getId());\n    foreach ($types as $type) {\n        $author->setType($type);\n    }\n\n    $author->setSkype(Input::Get('skype'));\n    $author->setJabber(Input::Get('jabber'));\n    $author->setAim(Input::Get('aim'));\n    $author->setEmail(Input::Get('email'));\n\n    $authorBiography = array();\n    $authorBiography['biography'] = Input::Get(\"txt_biography\", \"string\");\n    $authorBiography['language'] = Input::Get(\"lang\", \"int\", 0);\n    $authorBiography['first_name'] = Input::Get(\"lang_first_name\");\n    $authorBiography['last_name'] = Input::Get(\"lang_last_name\");\n    $author->setBiography($authorBiography);\n    if ($uploadFileSpecified) {\n        $attributes = array();\n        $image = Image::OnImageUpload($_FILES['file'], $attributes);\n        if (PEAR::isError($image)) {\n            camp_html_add_msg($image->getMessage());\n        } else {\n            $author->setImage($image->getImageId());\n        }\n    }\n\n    $aliases = Input::Get(\"alias\", \"array\");\n    if (!empty($aliases)) {\n        $author->setAliases($aliases);\n    }\n\n    camp_html_add_msg($translator->trans(\"Author saved.\", array(), 'users'),\"ok\");\n} elseif ($del_id_alias < 1 && $id > -1 && !$can_save) {\n    camp_html_add_msg($translator->trans(\"Please fill at least first name and last name.\", array(), 'users'));\n}\n\nif (!$id || $id == -1) {\n    $author = new Author(1);\n    if ($id == -1) {\n        $id = 0;\n    }\n}\n\n$controller->view->headTitle($translator->trans('Authors').' - Newscoop Admin', 'SET');\n\n$crumbs = array();\n$crumbs[] = array($translator->trans(\"Configure\"), \"\");\n$crumbs[] = array($translator->trans(\"Authors\"), \"\");\n$breadcrumbs = camp_html_breadcrumbs($crumbs);\necho $breadcrumbs;\n?>\n\n<?php include dirname(__FILE__) . '/../javascript_common.php'; ?>\n<script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/campsite-checkbox.js\"></script>\n<script type=\"text/javascript\">\n$(document).ready(function(){\n    $('.filter-button').click(function() {\n        $('.container').toggle('fast');\n        $(this).toggleClass(\"close\");\n        return false;\n    }).next().hide();\n\n    $(function(){\n        $(\".search-box input\").attr(\"placeholder\", \"Search authors\").addClass(\"context-search search\");\n    });\n\n});\n</script>\n<?php camp_html_display_msgs('1em', '0'); ?>\n<div class=\"wrapper\">\n  <div class=\"info-bar\"> <span class=\"info-text\"></span> </div>\n  <!--left column-->\n  <div class=\"column-one\">\n    <div class=\"author-list ui-widget-content big-block block-shadow padded-strong\">\n      <fieldset class=\"plain\">\n        <div class=\"search-box\">\n          <input type=\"text\" id=\"form_search\" onchange=\"doSearch()\" onkeyup=\"doSearch()\" class=\"input-transparent\" size=\"45\" style=\"width:220px;\" />\n          <a href=\"#\" class=\"filter-button\"><?php echo $translator->trans('Filters', array(), 'users'); ?></a>\n        </div>\n        <div class=\"container\">\n          <ul class=\"check-list padded\">\n            <li>\n              <input type=\"checkbox\" name=\"all_authors\" id=\"all_authors\" class=\"input_checkbox\"  checked=\"checked\" onclick=\"typeFilter(0)\" />\n              <label for=\"all_authors\"><?php echo $translator->trans('All Author Types', array(), 'users'); ?></label>\n            </li>\n            <?php\n            $types = AuthorType::GetAuthorTypes();\n            foreach ($types as $type) {\n                echo '<li>\n                    <input type=\"checkbox\" name=\"One\" value=\"' . $type->getName() . '\" id=\"author_' . $type->getId() . '\" class=\"input_checkbox checkbox_filter\" onclick=\"typeFilter(' . $type->getId() . ')\" />\n                    <label for=\"One\">' . $type->getName() . '</label>';\n                echo '<a href=\"?del_id_type=' . $type->getId() . '\" onclick=\"return deleteAuthorType(' . $type->getId() . ')\" style=\"float:right\"><img\n                  src=\"' . $Campsite['ADMIN_STYLE_URL'] . '/images/delete.png\" border=\"0\" alt=\"' . $translator->trans('Delete author type', array(), 'users') . '\" title=\"' . $translator->trans('Delete author type', array(), 'users') . '\" /></a>';\n                echo '</li>';\n            }\n            ?>\n            <li><?php echo $translator->trans('Add author type', array(), 'users'); ?>:</li>\n            <li>\n              <form onsubmit=\"return addAuthorType()\" method=\"post\">\n                <input type=\"text\" style=\"width: 60%; margin-right: 6px\" name=\"add_author\" id=\"add_author\" class=\"input_text\" maxlength=\"35\" />\n                <input type=\"submit\" class=\"default-button\" value=\"<?php echo $translator->trans('Add'); ?>\" id=\"save\" name=\"save\" />\n              </form>\n            </li>\n          </ul>\n        </div>\n      </fieldset>\n      <fieldset class=\"plain\" style=\"margin-top:16px;\">\n        <a onclick=\"getRow(0)\" class=\"ui-state-default icon-button right-floated\" href=\"#\"><span class=\"ui-icon ui-icon-plusthick\"></span><?php echo $translator->trans('Add new Author', array(), 'users'); ?></a>\n        <div class=\"clear\"></div>\n        <div id=\"gridtable\" style=\"margin-top:8px;\"></div>\n      </fieldset>\n    </div>\n  </div>\n  <!--END left column-->\n  <!--right column-->\n  <div id=\"detailtable\" class=\"column-two\"><?php echo $translator->trans('Loading Data', array(), 'users'); ?>...</div>\n</div>\n<script type=\"text/javascript\">\n$('.icon-button').hover(\n   function() { $(this).addClass('ui-state-hover'); },\n   function() { $(this).removeClass('ui-state-hover'); }\n);\n$('.text-button').hover(\n   function() { $(this).addClass('ui-state-hover'); },\n   function() { $(this).removeClass('ui-state-hover'); }\n);\n\nvar oTable;\n$(document).ready(function() {\n    $.get('authors_ajax/grid.php',function (data) {\n        $(\"#gridtable\").html(data);\n        oTable=$('#gridx').dataTable( {\n            'bLengthChange': false,\n            'bFilter': true,\n            'bJQueryUI':true,\n            'aoColumnDefs': [\n                { // not sortable\n                    'bSortable': false,\n                    'aTargets': [1, 2]\n                }\n            ],\n            'fnDrawCallback': function() {\n                $('#gridx tbody tr').click(function(event) {\n                    $(event.target).removeClass('selected');\n                    $(event.target).addClass('selected');\n                });\n            }\n        });\n        $(\"#gridx_filter\").html('');\n    });\n    getRow(<?php echo $id; ?>);\n});\n\nfunction addAlias() {\n    $(\"#aliases\").append('<div class=\"authorAliasItem\"><input type=\"text\" class=\"input_text authorAlias\" name=\"alias[]\" size=\"41\" spellcheck=\"false\" style=\"width:322px;margin-left:127px\"></div>');\n}\n\nfunction addAuthorType() {\n    var val= $('#add_author').val();\n    val = jQuery.trim(val);\n    if (val.length < 3) {\n        alert(\"<?php echo $translator->trans(\"Author type must be at least three characters long.\", array(), 'users') ?>\");\n        return false;\n    }\n}\n\nfunction deleteAuthorType(id) {\n    if (!confirm('<?php echo $translator->trans('Are you sure you want to delete this author type?', array(), 'users'); ?>')) {\n        return false;\n    }\n    $.post('?del_id_type=' + id, function(data) {\n        $.get('authors_ajax/grid.php',function (data) {\n            $(\"#gridtable\").html(data);\n            oTable=$('#gridx').dataTable({\n                \"bLengthChange\": false,\n                \"bFilter\": true,\n                'bJQueryUI':true\n            });\n            $(\"#gridx_filter\").html('');\n        });\n        window.location.replace(\"?\");\n    });\n    return false;\n}\n\nfunction deleteAuthorAlias(id, authorId) {\n    if (!confirm('<?php echo $translator->trans('Are you sure you want to delete this author alias?', array(), 'users')?>')) {\n        return false;\n    }\n    $.post('?id=' + authorId + '&del_id_alias=' + id, function(data) {\n        window.location.replace(\"?id=\" + authorId);\n    });\n}\n\nfunction deleteAuthor(id) {\n    if (!confirm('<?php echo $translator->trans('Are you sure you want to delete this author?', array(), 'users')?>')) {\n        return false;\n    }\n\n    $.post('?del_id=' + id, function(data, textStatus, jqXHR) {\n        window.location.replace(\"?\");\n    });\n\n    return false;\n}\n\nfunction getRow(id) {\n    $.get('authors_ajax/detail.php?id=' + id, function(data) {\n        $('#detailtable').hide();\n        $(\"#detailtable\").html(data);\n        $(function() {\n            $(\".tabs\").tabs({ selected: 0 });\n        });\n        $('#detailtable').show();\n    });\n}\n\nfunction changeBio(id) {\n    $.getJSON('authors_ajax/detail.php?id=' + id + '&getBio=1&language=' + $(\"#lang\").val(), function(data) {\n        $(\"#txt_biography\").html(data.biography);\n        $(\"#lang_first_name\").val(data.first_name);\n        $(\"#lang_last_name\").val(data.last_name);\n    });\n}\n\nfunction changeTranslation(id) {\n    $.getJSON('authors_ajax/detail.php?id=' + id + '&getBio=1&language=' + $(\"#lang_trans\").val(), function(data) {\n        $(\"#transArea\").html(data.biography);\n    });\n}\n\nfunction doSearch() {\n    oTable.fnFilter( $(\"#form_search\").val(),0);\n}\n\nfunction typeFilter(id) {\n    if (id == 0 && $(\"#all_authors\").attr('checked')) {\n        $(\".checkbox_filter\").removeAttr('checked');\n        oTable.fnFilter( '',1 );\n        return;\n    }\n    var str=\"\";\n    var multiple=false;\n    var is_checked=false;\n    if (id > 0) {\n        $(\"input[type=checkbox][checked][:not('#all_authors')]\").not('#all_authors').each(\n            function() {\n                is_checked=true;\n                if (multiple) str = str + \"|\";\n                str = str +$(\"#\" + this.id).val();\n                multiple=true;\n            }\n        );\n    }\n    if (is_checked) {\n        $(\"#all_authors\").removeAttr('checked');\n    } else{\n        $(\"#all_authors\").attr('checked','checked');\n    }\n\n    oTable.fnFilter(str,1 ,true,true);\n}\n</script>\n\n<?php camp_html_copyright_notice(); ?>\n"
  },
  {
    "path": "newscoop/admin-files/users/authors_ajax/detail.php",
    "content": "<?php\n/**\n * @package Newscoop\n */\nrequire_once($GLOBALS['g_campsiteDir'] . '/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'] . '/classes/Image.php');\nrequire_once($GLOBALS['g_campsiteDir'] . '/classes/ImageSearch.php');\nrequire_once($GLOBALS['g_campsiteDir'] . '/classes/Log.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\n$first_name = \"\";\n$last_name = \"\";\n$aliases = \"\";\n$type = array();\n$skype = \"\";\n$jabber = \"\";\n$aim = \"\";\n$networks_names = \"\";\n$network_links = \"\";\n$email = \"\";\n$biography = \"\";\n$aliases = null;\n$lang_first_name = \"\";\n$lang_last_name = \"\";\n$id = Input::Get(\"id\", \"int\", 0);\n\nif ($id > 0) {\n    $getBio = Input::Get(\"getBio\", \"int\", 0);\n    $author = new Author($id);\n    if ($getBio == 1) {\n        $json = '{\"first_name\":\"\",\"last_name\":\"\",\"biography\":\"\"}';\n        $language = Input::Get(\"language\", \"int\", 0);\n        $bioObj = new AuthorBiography($author->getId(), $language);\n        if ($bioObj->exists()) {\n            $json = '{\"first_name\":\"'.addslashes($bioObj->getFirstName())\n                .'\",\"last_name\":\"'.addslashes($bioObj->getLastName())\n                .'\",\"biography\":\"'.addslashes($bioObj->getBiography())\n                .'\"}';\n        }\n        echo $json;\n        exit();\n    }\n\n    $first_name = $author->getFirstName();\n    $last_name = $author->getLastName();\n    $type = $author->getType();\n    $skype = $author->getSkype();\n    $jabber = $author->getJabber();\n    $aim = $author->getAim();\n    $email = $author->getEmail();\n    $aliases = $author->getAliases();\n}\n?>\n<form method=\"post\" enctype=\"multipart/form-data\">\n<?php echo SecurityToken::FormParameter(); ?>\n<input type=\"hidden\" name=\"id\" value=\"<?php echo $id; ?>\" />\n<div class=\"tabs authors ui-tabs ui-widget ui-widget-content ui-corner-all block-shadow author-details\">\n  <ul>\n    <li><a href=\"#generalContainer\"><?php echo $translator->trans('General', array(), 'authors'); ?></a></li>\n    <li><a href=\"#biographyContainer\"><?php echo $translator->trans('Biography', array(), 'authors'); ?></a></li>\n    <?php if ( isset($author) && is_object($author)) { ?>\n    <li><a href=\"#contentContainer\"><?php echo $translator->trans('Content', array(), 'authors'); ?></a></li>\n    <?php } ?>\n  </ul>\n  <div id=\"generalContainer\">\n    <div class=\"space-box\"></div>\n    <fieldset class=\"frame\">\n      <ul>\n        <li>\n          <label><?php echo $translator->trans('First name', array(), 'authors'); ?>:</label>\n          <input type=\"text\" name=\"first_name\" class=\"input_text\" style=\"width: 360px;\" size=\"41\" value=\"<?php echo $first_name; ?>\" />\n        </li>\n        <li>\n          <label><?php echo $translator->trans('Last name', array(), 'authors'); ?>:</label>\n          <input type=\"text\" name=\"last_name\" class=\"input_text\" style=\"width: 360px;\" size=\"41\" spellcheck=\"false\" value=\"<?php echo $last_name; ?>\" />\n        </li>\n        <li>\n          <label><?php echo $translator->trans('Aliases', array(), 'authors'); ?>:</label>\n          <div id=\"aliases\" class=\"aliasContainer clearfix\">\n          <?php\n          $count = 0;\n          if (isset($aliases) && is_array($aliases)) {\n              foreach ($aliases as $alias) {\n                  $count++;\n                  echo '<div class=\"authorAliasItem\">';\n                  echo '<input type=\"text\" name=\"alias[]\" class=\"input_text\" size=\"41\" spellcheck=\"false\" style=\"width:325px;\" value=\"' . $alias->getName() . '\" />';\n                  echo '<a class=\"ui-state-default icon-button no-text\" href=\"?id=' . $author->getId() . '&del_id_alias=' . $alias->getId() . '\" onclick=\"return deleteAuthorAlias(' . $alias->getId() . ',' . $author->getId() . ')\"><span\n                      class=\"ui-icon ui-icon-closethick\"></span></a>';\n                  echo '</div>';\n              }\n          }\n          ?>\n            <div class=\"authorAliasItem\">\n              <input type=\"text\" name=\"alias[]\" value=\"\" class=\"input_text\" size=\"41\" spellcheck=\"false\" style=\"width:325px;\" />\n              <a class=\"ui-state-default icon-button no-text\" href=\"#\"><span class=\"ui-icon ui-icon-closethick\"></span></a>\n            </div>\n          </div>\n          <span onclick=\"addAlias();\"><a href=\"#\" class=\"addButton\"></a></span>\n        </li>\n        <li>\n          <span id=\"types\">\n            <label><?php echo $translator->trans('Type'); ?>:</label>\n            <select name=\"type[]\" class=\"input_select2\" onchange=\"\" style=\"width:362px;height:100%\" multiple=\"multiple\">\n            <?php\n            $types = AuthorType::GetAuthorTypes();\n            foreach ($types as $xtype) {\n                $str =  '<option value=\"' . $xtype->getId() . '\"';\n                if (is_array($type) && in_array(array('fk_type_id' => $xtype->getId()), $type)) {\n                    $str .= ' selected=\"selected\"';\n                }\n                $str .= '>' . $xtype->getName() . '</option>';\n                echo $str;\n            }\n            ?>\n            </select>\n          </span>\n        </li>\n      </ul>\n    </fieldset>\n    <fieldset class=\"frame\">\n      <h3><?php echo $translator->trans('Contacts', array(), 'authors'); ?></h3>\n      <ul>\n        <li>\n          <label><?php echo $translator->trans('Skype', array(), 'authors'); ?>:</label>\n          <input type=\"text\" name=\"skype\" style=\"width: 360px;\" class=\"input_text\" size=\"41\" value=\"<?php echo $skype; ?>\" />\n        </li>\n        <li>\n          <label><?php echo $translator->trans('Jabber', array(), 'authors'); ?>:</label>\n          <input type=\"text\" name=\"jabber\" style=\"width: 360px;\" class=\"input_text\" size=\"41\" spellcheck=\"false\" value=\"<?php echo $jabber; ?>\" />\n        </li>\n        <li>\n          <label><?php echo $translator->trans('AIM', array(), 'authors'); ?>:</label>\n          <input type=\"text\" name=\"aim\" style=\"width: 360px;\" class=\"input_text\" size=\"41\" spellcheck=\"false\" value=\"<?php echo $aim; ?>\" />\n        </li>\n        <li>\n          <label><?php echo $translator->trans('Email', array(), 'authors'); ?>:</label>\n          <input type=\"text\" name=\"email\" style=\"width: 360px;\" class=\"input_text\" size=\"41\" spellcheck=\"false\" value=\"<?php echo $email; ?>\" />\n        </li>\n        <li>\n          <label>&nbsp;</label>\n          <input type=\"reset\" name=\"reset\" id=\"reset\" value=\"<?php echo $translator->trans('Reset', array(), 'authors'); ?>\" class=\"button\" onclick=\"\" />\n        </li>\n      </ul>\n    </fieldset>\n  </div>\n  <div id=\"biographyContainer\">\n    <div class=\"space-box\"></div>\n    <fieldset class=\"frame\">\n      <ul>\n        <li>\n          <label class=\"smaller\"><?php echo $translator->trans('Languages'); ?>:</label>\n          <select name=\"lang\" class=\"input_select\" style=\"width:160px;\" id=\"lang\" onchange=\"changeBio(<?php echo $id ?>)\">\n          <?php\n          $publications = Issue::GetIssues();\n          $languages = array();\n          foreach ($publications as $publication) {\n              $languages[] = $publication->getLanguageId();\n          }\n          $languages = array_unique($languages);\n          $defaultLanguage = 0;\n          $combo = \"\";\n          foreach ($languages as $language) {\n              $lang = new Language($language);\n              if ($defaultLanguage == 0) {\n                  $defaultLanguage = $language;\n              }\n              $combo .= '<option value=\"' . $language . '\">' . $lang->getName() . \"</option>\";\n          }\n          $biography = \"\";\n          if ($id > 0) {\n              $bioObj = new AuthorBiography($id, $defaultLanguage);\n              //$biography = $author->getBiography($defaultLanguage);\n              //$lang_first_name = $biography[0][\"first_name\"];\n              //$lang_last_name = $biography[0][\"last_name\"];\n              $lang_first_name = $bioObj->getFirstName();\n              $lang_last_name = $bioObj->getLastName();\n              if (strlen($lang_first_name) == 0) {\n                  $lang_first_name = $first_name;\n              }\n              if (strlen($lang_last_name) == 0) {\n                  $lang_last_name = $last_name;\n              }\n              //$biography = $biography[0][\"biography\"];\n              $biography = $bioObj->getBiography();\n          }\n          echo $combo;\n          ?>\n          </select>\n        </li>\n        <li>\n          <label class=\"smaller\"><?php echo $translator->trans('Translate from', array(), 'authors'); ?>:</label>\n          <select name=\"translate\" id=\"lang_trans\" class=\"input_select\" style=\"width:120px;\" onchange=\"changeTranslation(<?php echo $id ?>)\">\n          <?php echo $combo ?>\n          </select>\n        </li>\n      </ul>\n    </fieldset>\n    <fieldset class=\"frame\">\n      <div class=\"authorThumb\">\n      <?php\n      if (isset($author) && is_object($author) && is_numeric($author->getImage())) {\n          $metaImage = new \\MetaImage($author->getImage());\n          echo $author->getImage() != 0 ? '<img src=\"' .$metaImage->getImageUrl(110, 130). '\"/>' : '';\n      }\n      ?>\n      </div>\n      <ul class=\"nameList\">\n        <li>\n          <label><?php echo $translator->trans('First name', array(), 'authors'); ?>:</label>\n          <input type=\"text\" name=\"lang_first_name\" id=\"lang_first_name\" maxlength=\"35\" class=\"input_text\" value=\"<?php echo $lang_first_name; ?>\" emsg=\"<?php echo $translator->trans('Please enter the first name', array(), 'authors'); ?>\" style=\"width:170px;\" />\n        </li>\n        <li>\n          <label><?php echo $translator->trans('Last name', array(), 'authors'); ?>:</label>\n          <input type=\"text\" name=\"lang_last_name\" id=\"lang_last_name\" maxlength=\"35\" class=\"input_text\" value=\"<?php echo $lang_last_name; ?>\" emsg=\"<?php echo $translator->trans('Please enter the last name', array(), 'authors'); ?>\" style=\"width:170px;\" />\n        </li>\n        <li>&nbsp;</li>\n        <?php\n            if (isset($author) && is_object($author) && $author->getImage() != 0) {\n              echo '<li><button><a href=\"#user-image\" id=\"user-image-btn\">'.$translator->trans(\"User image (full-size)\", array(), \"users\").'</a></button></li>';\n            }\n          ?>\n        <li>\n          <input type=\"file\" name=\"file\" size=\"32\" class=\"input_file\" />\n        </li>\n      </ul>\n    </fieldset>\n    <fieldset class=\"plain\">\n      <div class=\"textHolder\">\n        <textarea name=\"langbio\" id=\"transArea\" rows=\"20\" readonly=\"readonly\" class=\"input_text_area\"><?php echo $biography; ?></textarea>\n      </div>\n      <div class=\"textHolder omega\">\n        <textarea name=\"txt_biography\" id=\"txt_biography\" rows=\"30\" class=\"tinymce input_text_area\"><?php echo $biography; ?></textarea>\n      </div>\n    </fieldset>\n    <div class=\"clear\"></div>\n  </div>\n\n  <?php\n  if ( isset($author) && is_object($author)) {\n  ?>\n  <div id=\"contentContainer\">\n    <div class=\"space-box\"></div>\n    <fieldset class=\"frame\">\n      <ul>\n    <?php\n    $authoringList = ArticleAuthor::GetArticlesByAuthor($author->getId());\n    $authoringCount = sizeof($authoringList);\n    if ($authoringCount > 0) {\n    ?>\n        <li>\n          <label><?php echo $translator->trans('Total articles', array(), 'authors'); ?>:</label> <span><?php echo $authoringCount; ?></span></li>\n    <?php\n        foreach ($authoringList as $authoringItem) {\n            $articleUrl = $Campsite['WEBSITE_URL'] . '/' . $ADMIN . '/articles/edit.php';\n            $articleUrl .= '?f_publication_id=' . $authoringItem['article']->getPublicationId()\n                . '&f_issue_number=' . $authoringItem['article']->getIssueNumber()\n                . '&f_section_number=' . $authoringItem['article']->getSectionNumber()\n                . '&f_article_number=' . $authoringItem['article']->getArticleNumber()\n                . '&f_language_id=' . $authoringItem['article']->getLanguageId()\n                . '&f_language_selected=' . $authoringItem['article']->getLanguageId();\n    ?>\n        <li>\n          <label><?php echo $authoringItem['type']->getName(); ?></label>\n          <a href=\"<?php echo $articleUrl; ?>\" style=\"font-size:0.8em;\"><?php echo $authoringItem['article']->getName(); ?></a>\n        </li>\n    <?php\n        }\n    } else { ?>\n        <li>\n          <label><?php echo $translator->trans('No records found', array(), 'authors'); ?></label>\n        </li>\n    <?php } ?>\n      </ul>\n    </fieldset>\n  </div>\n  <?php\n    $requestSymfony = \\Zend_Registry::get('container')->getService('request');\n    $zendRouter = \\Zend_Registry::get('container')->getService('zend_router');\n    $publicationMetadata = $requestSymfony->attributes->get('_newscoop_publication_metadata');\n    $baseUrl = $requestSymfony->getScheme().'://'.$publicationMetadata['alias']['name'];\n    $metaImage = new \\MetaImage($author->getImage());\n    $baseImage = $baseUrl.'/'.$metaImage->filerpath;\n  ?>\n  <div id=\"user-image\" style=\"display:none\">\n    <img id=\"original-image\" src=\"<?php echo '/'.$metaImage->filerpath; ?>\" width=\"100%\" height=\"100%\"/><br>\n    <label><b><?php echo $translator->trans(\"URL\"); ?>: </b></label><br>\n    <input onclick=\"this.select();\" class=\"input_text\" value=\"<?php echo $baseImage ?>\" style=\"width:99%\"type=\"text\"/>\n  </div>\n  <?php } ?>\n\n  <fieldset class=\"frame\" style=\"margin-bottom:0;\">\n    <ul>\n      <li>\n        <input type=\"submit\" name=\"save\" id=\"save\" value=\"<?php echo $translator->trans('Save All', array(), 'authors'); ?>\" class=\"save-button right-floated\" />\n      </li>\n    </ul>\n  </fieldset>\n</div>\n\n<script>\n$(function() {\n    $(\"a#user-image-btn\").fancybox({\n        'onStart': function() { $(\"#user-image\").css(\"display\",\"block\"); },\n        'onClosed': function() { $(\"#user-image\").css(\"display\",\"none\"); }\n    });\n});\n</script>\n\n<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/users/load_tinymce.php\");\n$languageObj = new Language( isset($Language) ? $Language : 1 );\n//if (!is_object($languageObj)) {\n//    $languageObj = new Language(1);\n//}\n\n$editorLanguage = !empty($_COOKIE['TOL_Language']) ? $_COOKIE['TOL_Language'] : $languageObj->getCode();\neditor_load_tinymce('txt_biography', $g_user, 0, $editorLanguage, 'authorbiography');\n?>\n</form>\n"
  },
  {
    "path": "newscoop/admin-files/users/authors_ajax/grid.php",
    "content": "<?php\n/**\n * @package Newscoop\n */\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nfunction l_getType($types)\n{\n    if (!is_array($types)) return;\n    $t = \"\";\n    foreach ($types as $type){\n        if (strlen($t)>0) $t .= \", \";\n        $t .= $type['type'];\n    }\n    return $t;\n}\n?>\n<table style=\"width: 100%; margin: 0pt;\" id=\"gridx\" cellpadding=\"0\" cellspacing=\"0\" class=\"datatable\">\n<thead>\n<tr>\n  <th><?php echo $translator->trans('Author'); ?></th>\n  <th><?php echo $translator->trans('Type'); ?></th>\n  <th><?php echo $translator->trans('Delete'); ?></th>\n</tr>\n</thead>\n<tbody>\n<?php\n$authors = Author::GetAuthors();\n$i = 0;\nforeach($authors as $author) {\n?>\n<tr onclick=\"getRow(<?php echo $author->getId()?>)\"\n  onmouseover=\"setPointer(this, 0, 'over');\" onmouseout=\"setPointer(this, 0, 'out');\" style=\"cursor:pointer\">\n  <td><?php echo $author->getName(); ?></td>\n  <td><?php echo l_getType($author->getTypeWithNames()); ?></td>\n  <td align=\"right\" class=\"last\" id=\"row_0\">\n    <a href=\"\" onclick=\"return deleteAuthor(<?php echo $author->getId() ?>);\"><img\n      src=\"<?php echo $Campsite[\"ADMIN_IMAGE_BASE_URL\"]; ?>/delete.png\" border=\"0\"\n      alt=\"<?php echo $translator->trans('Delete author', array(), 'authors'); ?>\" title=\"<?php echo $translator->trans('Delete author', array(), 'authors'); ?>\" /></a>\n  </td>\n</tr>\n<?php\n  $i++;\n}?>\n</tbody>\n</table>\n<script type=\"text/javascript\">\n$(function() {\n    $('#gridx tr').click(function() {\n        $('#gridx tr').removeClass('selected');\n        $(this).addClass('selected');\n    });\n});\n</script>\n"
  },
  {
    "path": "newscoop/admin-files/users/do_add.php",
    "content": "<?php\n\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/users/users_common.php\");\nrequire_once($GLOBALS['g_campsiteDir']. \"/classes/Log.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n\tcamp_html_display_error($translator->trans('Invalid security token!'));\n\texit;\n}\n\nread_user_common_parameters(); // $uType, $userOffs, $ItemsPerPage, search parameters\nverify_user_type();\ncompute_user_rights($g_user, $canManage, $canDelete);\nif (!$canManage) {\n\tcamp_html_display_error($translator->trans('You do not have the right to create user accounts.', array(), 'users'));\n\texit;\n}\n\n// define fields arrays\n$fields = array('UName', 'Name', 'Title', 'Gender', 'Age', 'EMail', 'City', 'StrAddress',\n\t'State', 'CountryCode', 'Phone', 'Fax', 'Contact', 'Phone2', 'PostalCode', 'Employer',\n\t'EmployerType', 'Position');\n$notNullFields = array('UName'=>'Account name', 'Name'=>'Full Name', 'EMail'=>'E-Mail', 'Type'=>'Type');\n\n// read fields values\n$errorField = \"\";\n$typeParam = 'uType=' . urlencode($uType);\n$backLink = \"/$ADMIN/users/edit.php?$typeParam\";\nforeach ($fields as $index=>$field) {\n\t$fieldValues[$field] = Input::Get($field, 'string', null);\n\tif ($fieldValues[$field] != '')\n\t\t$backLink .= \"&\" . urlencode($field) . \"=\" . urlencode($fieldValues[$field]);\n\telseif (array_key_exists($field, $notNullFields) && $errorField == \"\")\n\t\t$errorField = $field;\n}\n\n// set the Reader field\n$Type = Input::Get('Type', 'int', 0);\n$fieldValues['Reader'] = ($uType == 'Subscribers') ? 'Y' : 'N';\nif ( ($uType == 'Staff') && !$Type && ($errorField == '') ) {\n\t$errorField = 'Type';\n}\n\n// display errors if found\nif ($errorField != \"\") {\n\t$desc = $notNullFields[$errorField];\n\tif ($errorField == 'Type') {\n\t\t$errorMsg = $translator->trans('You must select a $1', array('$1' => $desc), 'users');\n\t} else {\n\t\t$errorMsg = $translator->trans('You must fill in the $1 field.', array('$1' => $desc), 'users');\n\t}\n\tcamp_html_add_msg($errorMsg);\n\tcamp_html_goto_page($backLink);\n}\n\nif (User::UserNameExists($fieldValues['UName'])) {\n\t$errorMsg = $translator->trans('That user name already exists, please choose a different login name.', array(), 'users');\n\tcamp_html_add_msg($errorMsg);\n\tcamp_html_goto_page($backLink);\n}\n\nif (User::EmailExists($fieldValues['EMail'])) {\n    $errorMsg = $translator->trans('Another user is registered with that e-mail address, please choose a different one.', array(), 'users');\n    camp_html_add_msg($errorMsg);\n    camp_html_goto_page($backLink);\n}\n\n// read password\n$password = Input::Get('password', 'string', '');\n$passwordConf = Input::Get('passwordConf', 'string', '');\nif (strlen($password) < 6 || $password != $passwordConf) {\n\t$errorMsg = $translator->trans('The password must be at least 6 characters long and both passwords should match.', array(), 'users');\n\tcamp_html_add_msg($errorMsg);\n\tcamp_html_goto_page($backLink);\n}\n$fieldValues['passwd'] = $password;\n\n// create user\n$editUser = new User();\n\nif ($editUser->create($fieldValues)) {\n    if ($uType == 'Staff') {\n        $editUser->setUserType($Type);\n    }\n    camp_html_add_msg($translator->trans('User account $1 was created successfully.', array('$1' => $editUser->getUserName()), 'users'), \"ok\");\n    camp_html_goto_page(\"/$ADMIN/users/edit.php?User=\".$editUser->getUserId().\"&$typeParam\");\n} else {\n    camp_html_add_msg($translator->trans('The user account could not be created.', array(), 'users'));\n    camp_html_goto_page($backLink);\n}\n\n?>\n"
  },
  {
    "path": "newscoop/admin-files/users/do_del.php",
    "content": "<?php\n\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/users/users_common.php\");\nrequire_once($GLOBALS['g_campsiteDir']. \"/classes/Log.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nread_user_common_parameters(); // $uType, $userOffs, $ItemsPerPage, search parameters\nverify_user_type();\ncompute_user_rights($g_user, $canManage, $canDelete);\nif (!$canDelete) {\n\tcamp_html_display_error($translator->trans('You do not have the right to delete user accounts.', array(), 'users'));\n\texit;\n}\n\n$userId = Input::Get('User', 'int', 0);\n$editUser = new User($userId);\nif (!$editUser->exists()) {\n\tcamp_html_display_error($translator->trans('No such user account.', array(), 'users'));\n\texit;\n}\n$uName = $editUser->getUserName();\n$editUser->delete();\nreset_user_search_parameters();\n\n$typeParam = 'uType=' . urlencode($uType);\ncamp_html_add_msg($translator->trans('User account $1 was deleted successfully.', array('$1' => $uName), 'users'), \"ok\");\ncamp_html_goto_page(\"/$ADMIN/users/?$typeParam\");\n\n?>\n"
  },
  {
    "path": "newscoop/admin-files/users/do_edit.php",
    "content": "<?php\n\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/users/users_common.php\");\nrequire_once($GLOBALS['g_campsiteDir']. \"/classes/Log.php\");\nrequire_once($GLOBALS['g_campsiteDir']. '/classes/UserType.php');\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nread_user_common_parameters(); // $uType, $userOffs, $ItemsPerPage, search parameters\nverify_user_type();\ncompute_user_rights($g_user, $canManage, $canDelete);\n\n$userId = Input::Get('User', 'int', 0);\n$editUser = new User($userId);\nif ($editUser->getUserName() == '') {\n\tcamp_html_display_error($translator->trans('No such user account.', array(), 'users'), \"/$ADMIN/users/?\".get_user_urlparams());\n\texit;\n}\n\nif (!$canManage && $editUser->getUserId() != $g_user->getUserId()) {\n\t$errMsg = $translator->trans('You do not have the right to change user account information.', array(), 'users');\n\tcamp_html_display_error($errMsg);\n\texit;\n}\n\n$typeParam = 'uType=' . urlencode($uType);\n$userEmail = Input::Get('EMail', 'string', 0);\nif ($userEmail != $editUser->getEmail()) {\n    if (User::EmailExists($userEmail, $editUser->getUserName())) {\n        $backLink = \"/$ADMIN/users/edit.php?$typeParam&User=\".$editUser->getUserId();\n        $errMsg = $translator->trans('Another user is registered with that e-mail address, please choose a different one.', array(), 'users');\n        camp_html_add_msg($errMsg);\n        camp_html_goto_page($backLink);\n    }\n}\n\n$setPassword = Input::Get('setPassword', 'string', 'false') == 'true';\n$customizeRights = Input::Get('customizeRights', 'string', 'false') == 'true';\n\nif ($setPassword) {\n\t$password = Input::Get('password', 'string', 0);\n\t$passwordConf = Input::Get('passwordConf', 'string', 0);\n\t$backLink = \"/$ADMIN/users/edit.php?$typeParam&User=\".$editUser->getUserId();\n\n\tif ($userId == $g_user->getUserId()) {\n\t\t$oldPassword = Input::Get('oldPassword');\n\t\tif (!$editUser->isValidPassword($oldPassword)\n\t\t\t\t&& !$editUser->isValidOldPassword($oldPassword)) {\n\t\t\tcamp_html_add_msg($translator->trans('The password you typed is incorrect.', array(), 'users'));\n\t\t\tcamp_html_goto_page($backLink);\n\t\t}\n\t}\n\tif (strlen($password) < 6 || $password != $passwordConf) {\n\t\tcamp_html_add_msg($translator->trans('The password must be at least 6 characters long and both passwords should match.', array(), 'users'));\n\t\tcamp_html_goto_page($backLink);\n\t}\n\n\t$editUser->setPassword($password);\n    $liveUserValues['passwd'] = $password;\n}\n\n$userData = array(\n                  'Name', 'Title', 'Gender', 'Age', 'EMail', 'City',\n                  'StrAddress', 'State', 'CountryCode', 'Phone', 'Fax',\n                  'Contact', 'Phone2', 'PostalCode', 'Employer',\n                  'EmployerType', 'Position'\n                  );\n\n// save user data\nforeach ($userData as $value) {\n    $liveUserValues[$value] = Input::Get($value, 'string', null);\n    $editUser->setProperty($value, $liveUserValues[$value], false);\n}\n\n$backLink = \"/$ADMIN/users/edit.php?$typeParam&User=\".$editUser->getUserId();\nif ($LiveUserAdmin->updateUser($liveUserValues, $editUser->getPermUserId()) === false) {\n    camp_html_add_msg($translator->trans('There was an error when trying to update the user info.', array(), 'users'));\n    camp_html_goto_page($backLink);\n} else {\n    $editUser->commit();\n}\n\nif ($editUser->isAdmin() && $customizeRights && $canManage) {\n\t$rightsFields = $editUser->GetDefaultConfig();\n\t$permissions = array();\n\tforeach ($rightsFields as $field=>$value) {\n\t\t$val = Input::Get($field, 'string', 'off');\n\t\t$permissionEnabled = ($val == 'off') ? false : true;\n\t\t$permissions[$field] = $permissionEnabled;\n\t}\n}\n\nif ($editUser->isAdmin() && $customizeRights && $canManage) {\n\t// save user customized rights\n\t$editUser->updatePermissions($permissions);\n}\nif ($editUser->isAdmin() && !$customizeRights && $canManage) {\n\t// save user rights based on existing user type\n\t$userTypeId = Input::Get('UserType', 'int', 0);\n\tif ($userTypeId != 0) {\n\t\t$editUser->setUserType($userTypeId);\n\t}\n}\n\n// unsubscribe\n$unsubscribe = Input::Get('unsubscribe', 'bool', false);\nif ($unsubscribe\n    && ($canManage || $editUser->getUserId() == $g_user->getUserId())) {\n    $editUser->setPermission('MailNotify', false);\n}\n\ncamp_html_add_msg($translator->trans(\"User $1 information was changed successfully.\", array(\n\t'$1' => $editUser->getUserName()), 'users'), \"ok\");\n$editUser->fetch();\nif ($editUser->getUserName() == $g_user->getUserName() && !$editUser->hasPermission('ManageUsers')) {\n\tcamp_html_goto_page(\"/$ADMIN/\");\n}\ncamp_html_goto_page(\"/$ADMIN/users/edit.php?$typeParam&User=\".$editUser->getUserId());\n\n?>\n"
  },
  {
    "path": "newscoop/admin-files/users/do_ipadd.php",
    "content": "<?php\n\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/users/users_common.php\");\nrequire_once($GLOBALS['g_campsiteDir']. \"/classes/Log.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nread_user_common_parameters(); // $uType, $userOffs, $ItemsPerPage, search parameters\n$uType = 'Subscribers';\ncompute_user_rights($g_user, $g_canManage, $g_canDelete);\nif (!$g_canManage) {\n\tcamp_html_display_error($translator->trans('You do not have the right to change user account information.', array(), 'users'));\n\texit;\n}\n\n// read input\n$g_userId = Input::Get('User', 'int', 0);\n$g_editUser = new User($g_userId);\nif ($g_editUser->getUserName() == '') {\n\tcamp_html_display_error($translator->trans('No such user account.', array(), 'users'));\n\texit;\n}\n$g_backLink = \"/$ADMIN/users/edit.php?uType=Subscribers&User=$g_userId\";\n$g_cStartIP1 = Input::Get('cStartIP1', 'int', -1);\n$g_cStartIP2 = Input::Get('cStartIP2', 'int', -1);\n$g_cStartIP3 = Input::Get('cStartIP3', 'int', -1);\n$g_cStartIP4 = Input::Get('cStartIP4', 'int', -1);\n$g_cAddresses = Input::Get('cAddresses', 'int', 0);\n\n// check if input was correct\nif ($g_cStartIP1 == -1 || $g_cStartIP2 == -1 || $g_cStartIP3 == -1 || $g_cStartIP4 == -1) {\n\tcamp_html_display_error($translator->trans('You must fill in the $1 field.', array('$1' => 'Start IP')),\n\t\t$g_backLink);\n\texit;\n}\nif ($g_cAddresses == 0) {\n\t$g_errorMsg = $translator->trans('You must fill in the $1 field.', array('$1' => 'Number of addresses'));\n\tcamp_html_display_error($g_errorMsg, $g_backLink);\n\texit;\n}\n\n// check if the IP address group exists already\n$ipAddressArray = array($g_cStartIP1, $g_cStartIP2, $g_cStartIP3, $g_cStartIP4);\n$ipAccess = new IPAccess($g_userId, $ipAddressArray, $g_cAddresses);\nif ($ipAccess->exists()) {\n\t$g_errorMsg = $translator->trans('The IP address group $1:$2 conflicts with another existing group.', array(\n\t\t'$1' => $ipAccess->getStartIPstring(), '$2' => $g_cAddresses), 'users');\n\tcamp_html_display_error($g_errorMsg, $g_backLink);\n\texit;\n}\n\nif (!$ipAccess->create($g_userId, $ipAddressArray, $g_cAddresses)) {\n\tcamp_html_display_error($translator->trans('There was an error creating the IP address group.', array('$1' => \"$g_startIPStr:$g_cAddresses\"), 'users'), $g_backLink);\n\texit;\n}\n\ncamp_html_add_msg($translator->trans(\"The IP Group $1 has been created.\", array('$1' => $ipAccess->getStartIPstring().\":$g_cAddresses\"), 'users'), \"ok\");\ncamp_html_goto_page($g_backLink);\n\n?>"
  },
  {
    "path": "newscoop/admin-files/users/do_ipdel.php",
    "content": "<?php\n\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/users/users_common.php\");\nrequire_once($GLOBALS['g_campsiteDir']. \"/classes/Log.php\");\n\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\nif (!SecurityToken::isValid()) {\n    camp_html_display_error($translator->trans('Invalid security token!'));\n    exit;\n}\n\nread_user_common_parameters(); // $uType, $userOffs, $ItemsPerPage, search parameters\n$uType = 'Subscribers';\ncompute_user_rights($g_user, $canManage, $canDelete);\nif (!$canManage) {\n\tcamp_html_display_error($translator->trans('You do not have the right to change user account information.', array(), 'users'));\n\texit;\n}\n\n$userId = Input::Get('User', 'int', 0);\n$editUser = new User($userId);\nif ($editUser->getUserName() == '') {\n\tcamp_html_display_error($translator->trans('No such user account.', array(), 'users'));\n\texit;\n}\n$startIP = Input::Get('StartIP', 'string', '');\n$ipAccess = new IPAccess($userId, $startIP);\n$startIPstring = $ipAccess->getStartIPstring();\n$addresses = $ipAccess->getAddresses();\n\nif (!$ipAccess->delete()) {\n\tcamp_html_goto_page(\"/$ADMIN/users/edit.php?uType=Subscribers&User=$userId\");\n}\n\ncamp_html_add_msg($translator->trans(\"The IP address group $1 has been deleted.\", array('$1' => \"$startIPstring:$addresses\"), 'users'), \"ok\");\ncamp_html_goto_page(\"/$ADMIN/users/edit.php?uType=Subscribers&User=$userId\");\n\n?>"
  },
  {
    "path": "newscoop/admin-files/users/load_tinymce.php",
    "content": "<?php\n/**\n * @param array p_dbColumns\n * @param object p_user The User object\n * @param int p_editorLanguage The current or selected language\n *\n * @return void\n */\nfunction editor_load_tinymce($p_dbColumns, $p_user, $p_articleNumber,\n                             $p_editorLanguage, $p_objectType = 'article')\n{\n    global $Campsite;\n\n    $translator = \\Zend_Registry::get('container')->getService('translator');\n    $stylesheetFile = $Campsite['WEBSITE_URL'] . '/admin/articles/article_stylesheet.css';\n\n    /** STEP 1 ********************************************************\n     * What are the names of the textareas you will be turning\n     * into editors?\n     ******************************************************************/\n    $editors = array();\n    if (is_array($p_dbColumns)) {\n        foreach ($p_dbColumns as $dbColumn) {\n            if ($dbColumn->getType() == ArticleTypeField::TYPE_BODY) {\n                if ($p_articleNumber > 0) {\n                    $editors[] = $dbColumn->getName().'_'.$p_articleNumber;\n                } else {\n                    $editors[] = $dbColumn->getName();\n                }\n            }\n        }\n    } else {\n        if ($p_articleNumber > 0) {\n            $editors[] = $p_dbColumns.'_'.$p_articleNumber;\n        } else {\n            $editors[] = $p_dbColumns;\n        }\n    }\n    $textareas = implode(\",\", $editors);\n\n    /** STEP 2 ********************************************************\n     * Now, what are the plugins you will be using in the editors\n     * on this page.  List all the plugins you will need, even if not\n     * all the editors will use all the plugins.\n     ******************************************************************/\n    $plugins = array();\n    if ($p_user->hasPermission('EditorCopyCutPaste')) {\n        $plugins[] = 'paste';\n    }\n    if ($p_user->hasPermission('EditorFindReplace')) {\n        $plugins[] = 'searchreplace';\n    }\n    if ($p_user->hasPermission('EditorEnlarge')) {\n        $plugins[] = 'fullscreen';\n    }\n    if ($p_user->hasPermission('EditorTable')) {\n        $plugins[] = 'table';\n    }\n    if ($p_user->hasPermission('EditorLink')) {\n        $plugins[] = 'campsiteinternallink';\n        if ($p_objectType == 'article') {\n            $plugins[] = 'campsiteattachment';\n        }\n    }\n    if ($p_user->hasPermission('EditorImage') && $p_objectType == 'article') {\n            $plugins[] = 'campsiteimage';\n            $plugins[] = 'media';\n    }\n    $plugins[] = 'iframe';\n    $plugins[] = 'codehighlighting';\n    $plugins_list = implode(\",\", $plugins);\n\n    $statusbar_location = \"none\";\n    if ($p_user->hasPermission('EditorStatusBar')) {\n        $statusbar_location = \"bottom\";\n    }\n\n    /** STEP 3 ********************************************************\n     * We create a default configuration to be used by all the editors.\n     * If you wish to configure some of the editors differently this\n     * will be done in step 4.\n     ******************************************************************/\n    $toolbar1 = array();\n    if ($p_user->hasPermission('EditorBold')) {\n        $toolbar1[] = \"bold\";\n    }\n    if ($p_user->hasPermission('EditorItalic')) {\n        $toolbar1[] = \"italic\";\n    }\n    if ($p_user->hasPermission('EditorUnderline')) {\n        $toolbar1[] = \"underline\";\n    }\n    if ($p_user->hasPermission('EditorStrikethrough')) {\n        $toolbar1[] = \"strikethrough\";\n    }\n    if ($p_user->hasPermission('EditorTextAlignment')) {\n        $toolbar1[] = \"|\";\n        $toolbar1[] = \"justifyleft\";\n        $toolbar1[] = \"justifycenter\";\n        $toolbar1[] = \"justifyright\";\n        $toolbar1[] = \"justifyfull\";\n    }\n    if ($p_user->hasPermission('EditorIndent')) {\n        $toolbar1[] = \"|\";\n        $toolbar1[] = \"outdent\";\n        $toolbar1[] = \"indent\";\n        $toolbar1[] = \"blockquote\";\n    }\n    if ($p_user->hasPermission('EditorCopyCutPaste')) {\n        $toolbar1[] = \"|\";\n        $toolbar1[] = \"copy\";\n        $toolbar1[] = \"cut\";\n        $toolbar1[] = \"paste\";\n    }\n\n    if ($p_user->hasPermission('EditorTextDirection')) {\n        $toolbar1[] = \"|\";\n        $toolbar1[] = \"ltr\";\n        $toolbar1[] = \"rtl\";\n        $toolbar1[] = \"charmap\";\n    }\n    if ($p_user->hasPermission('EditorLink')) {\n        $toolbar1[] = \"|\";\n        $toolbar1[] = \"link\";\n        $toolbar1[] = \"anchor\";\n        if ($p_objectType == 'article') {\n            $toolbar1[] = \"campsiteattachment\";\n        }\n    }\n\n    if ($p_user->hasPermission('EditorSourceView')) {\n        $toolbar1[] = \"code\";\n    }\n    if ($p_user->hasPermission('EditorEnlarge')) {\n        $toolbar1[] = \"fullscreen\";\n    }\n    if ($p_user->hasPermission('EditorHorizontalRule')) {\n        $toolbar1[] = \"hr\";\n    }\n\n\n    $toolbar2 = array();\n    // Slice up the first toolbar if it is too long.\n    if (count($toolbar1) > 34) {\n        $toolbar2 = array_splice($toolbar1, 34);\n    }\n\n    // This is to put the bulleted and numbered list controls\n    // on the most appropriate line of the toolbar.\n    if ($p_user->hasPermission('EditorListBullet') && $p_user->hasPermission('EditorListNumber') && count($toolbar1) < 19) {\n        $toolbar1[] = \"|\";\n        $toolbar1[] = \"bullist\";\n        $toolbar1[] = \"numlist\";\n    } elseif ($p_user->hasPermission('EditorListBullet') && !$p_user->hasPermission('EditorListNumber') && count($toolbar1) < 34) {\n        $toolbar1[] = \"|\";\n        $toolbar1[] = \"bullist\";\n    } elseif (!$p_user->hasPermission('EditorListBullet') && $p_user->hasPermission('EditorListNumber') && count($toolbar1) < 20) {\n        $toolbar1[] = \"|\";\n        $toolbar1[] = \"numlist\";\n    }\n\n    $theme_buttons1 = (count($toolbar1) > 0) ? implode(',', $toolbar1) : '';\n    $theme_buttons2 = '';\n    $theme_buttons3 = '';\n\n\n    $localeFile = $Campsite['CAMPSITE_DIR'] . '/js/tinymce/langs/' . $p_editorLanguage . '.js';\n    if (!file_exists($localeFile)) {\n        $p_editorLanguage = 'en';\n    }\n?>\n\n<!-- Load TinyMCE -->\n<script type=\"text/javascript\" src=\"<?php echo $Campsite['WEBSITE_URL']; ?>/js/tinymce/jquery.tinymce.js\"></script>\n<script type=\"text/javascript\">\n<?php if ($p_objectType == 'article') { ?>\nfunction CampsiteSubhead(ed) {\n    element = ed.dom.getParent(ed.selection.getNode(), 'span');\n    if (element && ed.dom.getAttrib(element, 'class') == 'campsite_subhead') {\n        return false;\n    } else {\n        html = ed.selection.getContent({format : 'text'});\n        ed.selection.setContent('<span class=\"campsite_subhead\">' + html + '</span>');\n    }\n} // fn CampsiteSubhead\n<?php } ?>\n\n$().ready(function() {\n    $('textarea.tinymce').tinymce({\n\n\n        // Location of TinyMCE script\n        script_url : '<?php echo $Campsite['WEBSITE_URL']; ?>/js/tinymce/tiny_mce.js',\n\n        // General options\n        language : \"<?php p($p_editorLanguage); ?>\",\n        theme : \"advanced\",\n        plugins : \"<?php p($plugins_list); ?>\",\n\n        file_browser_callback : \"campsitemedia\",\n        forced_root_block : \"\",\n        relative_urls : false,\n        onchange_callback : function() { $('form#article-main').change(); },\n        extended_valid_elements : \"iframe[src|width|height|name|align|frameborder|scrolling|marginheight|marginwidth]\",\n\n\n        // Theme options\n        theme_advanced_buttons1 : \"<?php p($theme_buttons1); ?>\",\n        theme_advanced_buttons2 : \"<?php p($theme_buttons2); ?>\",\n        theme_advanced_buttons3 : \"<?php p($theme_buttons3); ?>\",\n\n        theme_advanced_toolbar_location : \"top\",\n        theme_advanced_toolbar_align : \"left\",\n        theme_advanced_resizing : false,\n        theme_advanced_statusbar_location: \"<?php p($statusbar_location); ?>\",\n\n        // Example content CSS (should be your site CSS)\n        content_css : \"<?php echo $stylesheetFile; ?>\",\n\n        // Drop lists for link/image/media/template dialogs\n        template_external_list_url : \"lists/template_list.js\",\n        external_link_list_url : \"lists/link_list.js\",\n        external_image_list_url : \"lists/image_list.js\",\n        media_external_list_url : \"lists/media_list.js\",\n\n\n        // paste options\n        paste_auto_cleanup_on_paste: true,\n        paste_convert_headers_to_strong: true,\n        paste_remove_spans: true,\n        paste_remove_styles: true,\n\n        // not escaping greek characters\n        entity_encoding: 'raw',\n\n        <?php if ($p_user->hasPermission('EditorSpellcheckerEnabled')): ?>\n        gecko_spellcheck : true,\n        <?php endif; ?>\n\n        <?php if ($p_user->hasPermission('EditorSubhead') && $p_objectType == 'article') { ?>\n        setup : function(ed) {\n            ed.onInit.add(function(){ed.controlManager.setDisabled('pasteword', true);});\n            ed.onNodeChange.add(function(){ed.controlManager.setDisabled('pasteword', true);});\n\n            ed.onKeyUp.add(function(ed, l) {\n                var idx = ed.id.lastIndexOf('_');\n                var buttonId = ed.id.substr(0, idx);\n            });\n\n            ed.addButton('campsite-subhead', {\n                title : '<?php echo $translator->trans(\"Newscoop Subhead\", array(), 'users'); ?>',\n                image : website_url + '/js/tinymce/themes/advanced/img/campsite_subhead.gif',\n                onclick : function() {\n                    CampsiteSubhead(ed);\n                }\n            });\n        },\n        <?php } ?>\n\n    });\n});\n\n<?php if ($p_objectType == 'article') { ?>\nfunction campsitemedia(field_name, url, type, win)\n{\n    topDoc = window.top.document;\n    articleNo = topDoc.getElementById('f_article_number').value;\n    langId = topDoc.getElementById('f_language_selected').value;\n\n    tinyMCE.activeEditor.windowManager.open({\n        url: website_url + \"/js/tinymce/plugins/campsitemedia/popup.php?article_id=\"+articleNo+'&language_selected='+langId,\n        width: 580,\n        height: 320,\n        inline : \"yes\",\n        close_previous : \"no\"\n    },{\n        window : win,\n        input : field_name\n    });\n}\n<?php } ?>\n</script>\n<!-- /TinyMCE -->\n<?php\n} // fn editor_load_tinymce\n?>\n\n"
  },
  {
    "path": "newscoop/admin-files/users/permission_list.php",
    "content": "<?php\n\nfunction camp_get_permission_list()\n{\n    $translator = \\Zend_Registry::get('container')->getService('translator');\n    \n    $content_group = array(\n        'ManagePub'=>$translator->trans('User may add/change publications', array(), 'users'),\n\t'DeletePub'=>$translator->trans('User may delete publications', array(), 'users'),\n\t'ManageIssue'=>$translator->trans('User may add/change issues', array(), 'users'),\n\t'DeleteIssue'=>$translator->trans('User may delete issues', array(), 'users'),\n\t'ManageSection'=>$translator->trans('User may add/change sections', array(), 'users'),\n\t'DeleteSection'=>$translator->trans('User may delete sections', array(), 'users'),\n\t'AddArticle'=>$translator->trans('User may add articles', array(), 'users'),\n\t'ChangeArticle'=>$translator->trans('User may change articles', array(), 'users'),\n\t'MoveArticle'=>$translator->trans('User may move articles', array(), 'users'),\n\t'TranslateArticle'=>$translator->trans('User may translate articles', array(), 'users'),\n\t'AttachImageToArticle'=>$translator->trans('User may attach images to articles', array(), 'users'),\n\t'AttachTopicToArticle'=>$translator->trans('User may attach topics to articles', array(), 'users'),\n\t'Publish'=>$translator->trans('User may publish articles', array(), 'users'),\n\t'DeleteArticle'=>$translator->trans('User may delete articles', array(), 'users'),\n\t'AddImage'=>$translator->trans('User may add images', array(), 'users'),\n\t'ChangeImage'=>$translator->trans('User may change images', array(), 'users'),\n\t'DeleteImage'=>$translator->trans('User may delete images', array(), 'users'),\n\t'AddFile'=>$translator->trans('User may add article attachments', array(), 'users'),\n\t'ChangeFile'=>$translator->trans('User may change article attachments', array(), 'users'),\n\t'DeleteFile'=>$translator->trans('User may delete article attachments', array(), 'users'),\n\t'ManageTopics'=>$translator->trans('User may manage topics', array(), 'users'),\n\t'CommentModerate'=>$translator->trans('User may moderate comments', array(), 'users'),\n\t'CommentEnable' => $translator->trans('User may enable comments', array(), 'users'));\n\n    $templates_group = array(\n\t'ManageTempl'=>$translator->trans('User may manage templates', array(), 'users'),\n\t'DeleteTempl'=>$translator->trans('User may delete templates', array(), 'users'));\n\n    $administrative_group = array(\n\t'ChangeSystemPreferences'=>$translator->trans('User may change system preferences', array(), 'users'),\n\t'ClearCache'=>$translator->trans('User may clear up the system cache', array(), 'users'),\n    'ManageBackup'=>$translator->trans('User may backup and restore the site data', array(), 'users'));\n\n    $users_group = array(\n\t'ManageUsers'=>$translator->trans('User may add/change staff accounts and passwords', array(), 'users', array(), 'users'),\n\t'DeleteUsers'=>$translator->trans('User may delete staff accounts', array(), 'users', array(), 'users'),\n\t'ManageUserTypes'=>$translator->trans('User may manage account types', array(), 'users', array(), 'users'),\n         'EditAuthors'=>$translator->trans('User may change authors', array(), 'users', array(), 'users')\n        );\n\n    $article_types_group = array(\n\t'ManageArticleTypes'=>$translator->trans('User may add/change article types', array(), 'users'),\n\t'DeleteArticleTypes'=>$translator->trans('User may delete article types', array(), 'users'));\n\n    $languages_group = array(\n        'ManageLanguages'=>$translator->trans('User may add languages and manage language information', array(), 'users'),\n\t'DeleteLanguages'=>$translator->trans('User may delete languages', array(), 'users'));\n\n    $countries_group = array(\n\t'ManageCountries'=>$translator->trans('User may add/change country entries', array(), 'users'),\n\t'DeleteCountries'=>$translator->trans('User may delete country entries', array(), 'users'));\n\n    $misc_group = array(\n\t'ViewLogs'=>$translator->trans('User may view audit logs', array(), 'users'),\n\t'MailNotify'=>$translator->trans('User will be notified on several events', array(), 'users'));\n\n    $localizer_group = array('ManageLocalizer'=>$translator->trans('User may manage localizer', array(), 'users'));\n\n    $editor_group_1 = array(\n        'EditorBold'=>$translator->trans('User may use bold', array(), 'users'),\n\t'EditorItalic'=>$translator->trans('User may use italic', array(), 'users'),\n\t'EditorUnderline'=>$translator->trans('User may use underline', array(), 'users'),\n\t'EditorStrikethrough'=>$translator->trans('User may use strikethrough', array(), 'users'),\n\t'EditorTextAlignment'=>$translator->trans('User may change text alignment', array(), 'users'),\n\t'EditorCopyCutPaste'=>$translator->trans('User may copy, cut, and paste', array(), 'users'),\n\t'EditorUndoRedo'=>$translator->trans('User may undo/redo', array(), 'users'),\n\t'EditorFindReplace'=>$translator->trans('User may find and replace', array(), 'users'),\n\t'EditorCharacterMap'=>$translator->trans('User may add special characters', array(), 'users'),\n\t'EditorTextDirection'=>$translator->trans('User may change text direction', array(), 'users'),\n\t'EditorIndent'=>$translator->trans('User may set indents', array(), 'users'),\n\t'EditorLink'=>$translator->trans('User may add links', array(), 'users'),\n\t'EditorSubhead'=>$translator->trans('User may add subheads', array(), 'users'),\n\t'EditorImage'=>$translator->trans('User may insert images', array(), 'users'),\n\t'EditorSourceView'=>$translator->trans('User may view the HTML source', array(), 'users'),\n\t'EditorEnlarge'=>$translator->trans('User may enlarge the editor', array(), 'users'),\n\t'EditorStatusBar'=>$translator->trans('User may use the editor status bar', array(), 'users'));\n\n    $editor_group_2 = array(\n\t'EditorFontFace'=>$translator->trans('User may change the font face', array(), 'users'),\n\t'EditorFontSize'=>$translator->trans('User may change the font size', array(), 'users'),\n\t'EditorListBullet'=>$translator->trans('User may create bulleted lists', array(), 'users'),\n\t'EditorListNumber'=>$translator->trans('User may create numbered lists', array(), 'users'));\n\n    $editor_group_3 = array('EditorTable'=>$translator->trans('User may insert tables', array(), 'users'));\n\n    $editor_group_4 = array(\n\t'EditorHorizontalRule'=>$translator->trans('User may insert horizontal rules', array(), 'users'),\n\t'EditorFontColor'=>$translator->trans('User may change the font color', array(), 'users'),\n\t'EditorSuperscript'=>$translator->trans('User may use superscripts', array(), 'users'),\n\t'EditorSubscript'=>$translator->trans('User may use subscripts', array(), 'users'),\n\t'EditorSpellcheckerEnabled'=>$translator->trans('Enable Firefox spell checking by default', array(), 'users'));\n\n    $rights = array($translator->trans('Content')=>$content_group,\n\t\t    $translator->trans('Templates', array(), 'users')=>$templates_group,\n\t\t    $translator->trans('Staff Management', array(), 'users')=>$users_group,\n\t\t    $translator->trans('Administrative tasks', array(), 'users')=>$administrative_group,\n\t\t    $translator->trans('Article Types')=>$article_types_group,\n\t\t    $translator->trans('Languages')=>$languages_group,\n\t\t    $translator->trans('Countries')=>$countries_group,\n\t\t    $translator->trans('Miscellaneous', array(), 'users')=>$misc_group,\n\t\t    $translator->trans('Localizer')=>$localizer_group,\n\t\t    $translator->trans('Editor Basic Settings', array(), 'users')=>$editor_group_1,\n\t\t    $translator->trans('Editor Advanced Font Settings', array(), 'users')=>$editor_group_2,\n\t\t    $translator->trans('Editor Table Settings', array(), 'users')=>$editor_group_3,\n\t\t    $translator->trans('Editor Miscellaneous Settings', array(), 'users')=>$editor_group_4);\n\n    // plugins: extend permission list\n    $rights[$translator->trans('Plugins')] = array('plugin_manager' => 'User may manage Plugins');\n    foreach (CampPlugin::GetPluginsInfo(true) as $info) {\n    \tforeach ($info['permissions'] as $permission => $label) {\n    \t\t$rights[$info['label']][$permission] = $translator->trans($label);\n    \t}\n    }\n\n    $pluginsService = \\Zend_Registry::get('container')->get('newscoop.plugins.service');\n    $collectedPermissionsData = $pluginsService->collectPermissions();\n    $rights = array_merge($collectedPermissionsData, $rights);\n\n    return $rights;\n} // fn camp_get_permission_list\n\n?>\n"
  },
  {
    "path": "newscoop/admin-files/users/users_common.php",
    "content": "<?php\nrequire_once($GLOBALS['g_campsiteDir']. '/classes/IPAccess.php');\nrequire_once($GLOBALS['g_campsiteDir']. '/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir']. '/classes/UserType.php');\nrequire_once($GLOBALS['g_campsiteDir']. '/db_connect.php');\n\nfunction verify_user_type()\n{\n\tglobal $uType;\n    $translator = \\Zend_Registry::get('container')->getService('translator');\n    \n\tif (!isset($uType))\n\t\tread_user_common_parameters();\n\n\tif ($uType != \"Staff\" && $uType != \"Subscribers\") {\n\t\tcamp_html_display_error($translator->trans('Invalid value of user type parameter', array(), 'users'));\n\t\texit(0);\n\t}\n\treturn $uType;\n}\n\n$defaultUserSearchParameters = array('full_name'=>'', 'user_name'=>'', 'email'=>'',\n\t'subscription_how'=>'expires', 'subscription_when'=>'before', 'subscription_date'=>'',\n\t'subscription_status'=>'', 'startIP1'=>'', 'startIP2'=>'', 'startIP3'=>'', 'startIP4'=>'');\n$userSearchParameters = array('full_name'=>'', 'user_name'=>'', 'email'=>'',\n\t'subscription_how'=>'expires', 'subscription_when'=>'before', 'subscription_date'=>'',\n\t'subscription_status'=>'', 'startIP1'=>'', 'startIP2'=>'', 'startIP3'=>'', 'startIP4'=>'');\n\nfunction read_user_common_parameters()\n{\n\tglobal $uType, $userOffs, $ItemsPerPage;\n\tglobal $defaultUserSearchParameters, $userSearchParameters;\n\n\t$uType = Input::Get('uType', 'string', '');\n\t$userOffs = camp_session_get('userOffs', 0);\n\tif ($userOffs < 0) {\n\t\t$userOffs = 0;\n\t}\n\t$ItemsPerPage = Input::Get('ItemsPerPage', 'int', 20);\n\tforeach ($userSearchParameters as $parameter=>$defaultValue) {\n\t\t$userSearchParameters[$parameter] =\n\t\t\tcamp_session_get($parameter, $defaultUserSearchParameters[$parameter]);\n\t}\n}\n\nfunction user_search_is_set()\n{\n\tglobal $defaultUserSearchParameters, $userSearchParameters;\n\n\tforeach ($userSearchParameters as $parameter=>$defaultValue) {\n\t\tif ($userSearchParameters[$parameter] != $defaultUserSearchParameters[$parameter]) {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n}\n\nfunction reset_user_search_parameters()\n{\n\tglobal $userSearchParameters, $_REQUEST, $_GET, $_POST, $_SESSION;\n\n\t$params = $userSearchParameters;\n\t$params['userOffs'] = null;\n\n\tforeach ($params as $parameter=>$defaultValue) {\n\t\tif (isset($_REQUEST[$parameter])) {\n\t\t\tunset($_REQUEST[$parameter]);\n\t\t}\n\t\tif (isset($_GET[$parameter])) {\n\t\t\tunset($_GET[$parameter]);\n\t\t}\n\t\tif (isset($_POST[$parameter])) {\n\t\t\tunset($_POST[$parameter]);\n\t\t}\n\t\tif (isset($_SESSION[$parameter])) {\n\t\t\tunset($_SESSION[$parameter]);\n\t\t}\n\t}\n}\n\nfunction compute_user_rights($User, &$canManage, &$canDelete)\n{\n\tglobal $uType;\n\n\tif (!isset($uType))\n\t\tread_user_common_parameters();\n\n\tswitch ($uType) {\n\tcase 'Staff':\n\t\t$canManage = $User->hasPermission('ManageUsers');\n\t\t$canDelete = $User->hasPermission('DeleteUsers');\n\t\tbreak;\n\tcase 'Subscribers':\n\t\t$canManage = $User->hasPermission('ManageReaders');\n\t\t$canDelete = $User->hasPermission('ManageReaders');\n\t\tbreak;\n\tdefault:\n\t\t$canManage = false;\n\t\t$canDelete = false;\n\t}\n}\n\nfunction get_user_urlparams($userId = 0, $print_back_link = false,\n$strip_search = false, $strip_offset = false)\n{\n\tglobal $uType, $userOffs, $userSearchParameters;\n\n\t$params_search = array('full_name', 'user_name', 'email',\n\t\t'subscription_how', 'subscription_when', 'subscription_date',\n\t\t'subscription_status');\n\t$params = array('uType');\n\tif (!$strip_offset) {\n\t\t$params[] = 'userOffs';\n\t}\n\n\t$url = '';\n\tif ($userId > 0)\n\t\t$url = 'User=' . $userId;\n\tforeach ($params as $index=>$param) {\n\t\tif ($$param != '' && $$param != '0') {\n\t\t\t$url .= '&' . urlencode($param) . '=' . urlencode($$param);\n\t\t}\n\t}\n\n\tif ($print_back_link) {\n\t\t$url .= '&backLink=' . urlencode($_SERVER['REQUEST_URI']);\n\t}\n\n\tif (!$strip_search) {\n\t\tforeach ($params_search as $param) {\n\t\t\tif (!empty($userSearchParameters[$param])) {\n\t\t\t\t$url .= '&' . urlencode($param) . '=' . urlencode($userSearchParameters[$param]);\n\t\t\t}\n\t\t}\n\t}\n\n\tif ($url != '' && $url[0] == '&')\n\t\t$url = substr($url, 1);\n\treturn $url;\n}\n\nfunction get_users_from_search($isReader, $orderFields, $orderField, $orderDir, &$totalUsers)\n{\n    global $g_ado_db;\n    global $userSearchParameters, $userOffs, $ItemsPerPage;\n\n    $sqlBase = \"SELECT DISTINCT u.Id, u.Name, u.UName, u.EMail, DATE_FORMAT(u.time_created, '%Y-%m-%d %T') as time_created FROM liveuser_users AS u\";\n    $sql = '';\n    if ($userSearchParameters['startIP1'] != 0) {\n        $sql .= \" LEFT JOIN SubsByIP AS sip ON u.Id = sip.IdUser\";\n    }\n    if ($userSearchParameters['subscription_date'] != \"\"\n\t  || $userSearchParameters['subscription_status'] != \"\") {\n        $sql .= \" LEFT JOIN Subscriptions AS s ON u.Id = s.IdUser\";\n\tif ($userSearchParameters['subscription_date'] != \"\") {\n\t    $sql .= \" LEFT JOIN SubsSections AS ss ON s.Id = ss.IdSubscription\";\n\t}\n    }\n    $sql .= \" WHERE u.Reader = '$isReader'\";\n    if ($userSearchParameters['full_name'] != '') {\n        $sql .= \" AND Name like '%\" . $g_ado_db->escape($userSearchParameters['full_name']) . \"%'\";\n    }\n    if ($userSearchParameters['user_name'] != '') {\n        $sql .= \" AND UName like '%\" . $g_ado_db->escape($userSearchParameters['user_name']) . \"%'\";\n    }\n    if ($userSearchParameters['email'] != '') {\n        $sql .= \" AND EMail like '%\" . $g_ado_db->escape($userSearchParameters['email']) . \"%'\";\n    }\n    if ($userSearchParameters['subscription_date'] != '') {\n        $ss_field = \"TO_DAYS(ss.StartDate) - TO_DAYS('\".$userSearchParameters['subscription_date'].\"')\";\n\tif ($userSearchParameters['subscription_how'] == 'expires') {\n\t    $ss_field .= \" + CAST(Days AS SIGNED)\";\n\t}\n\tswitch ($userSearchParameters['subscription_when']) {\n\t    case 'before': $comp_sign = \"<=\"; break;\n\t    case 'after': $comp_sign = \">=\"; break;\n\t    case 'on': $comp_sign = \"=\"; break;\n\t}\n\t$sql .= \" AND ($ss_field) $comp_sign 0\";\n    }\n    if ($userSearchParameters['subscription_status'] != \"\") {\n        $sql .= \" AND s.Active = '\" . ($userSearchParameters['subscription_status'] == 'active' ? 'Y' : 'N') . \"'\";\n    }\n    if ($userSearchParameters['startIP1'] != 0) {\n        $minIP = $userSearchParameters['startIP1'] * 256 * 256 * 256\n\t    + $userSearchParameters['startIP2'] * 256 * 256\n\t    + $userSearchParameters['startIP3'] * 256\n\t    + $userSearchParameters['startIP4'];\n\t$maxIP2 = $userSearchParameters['startIP2'] != 0 ? $userSearchParameters['startIP2'] : 255;\n\t$maxIP3 = $userSearchParameters['startIP3'] != 0 ? $userSearchParameters['startIP3'] : 255;\n\t$maxIP4 = $userSearchParameters['startIP4'] != 0 ? $userSearchParameters['startIP4'] : 255;\n\t$maxIP = $userSearchParameters['startIP1'] * 256 * 256 * 256 + $maxIP2 * 256 * 256 + $maxIP3 * 256 + $maxIP4;\n\t$sql .= \" AND ((sip.StartIP >= $minIP AND sip.StartIP <= $maxIP)\"\n\t    . \" OR ((sip.StartIP - 1 + sip.Addresses) >= $minIP AND (sip.StartIP - 1 + sip.Addresses) <= $maxIP))\";\n    }\n    if ($userSearchParameters['subscription_date'] != \"\") {\n        $sql .= \" GROUP BY s.Id\";\n    }\n    $sql .= \" ORDER BY \" . $orderFields[$orderField] . \" $orderDir\";\n    $searchSql = $sqlBase.$sql.\" LIMIT $userOffs, $ItemsPerPage\";\n    $users = $g_ado_db->GetAll($searchSql);\n\n    $countSql = \"SELECT COUNT(*) FROM liveuser_users as u \".$sql;\n    $totalUsers = $g_ado_db->GetOne($countSql);\n\n    return $users;\n}\n\n?>\n"
  },
  {
    "path": "newscoop/admin-files/widgets.php",
    "content": "<?php\n\nrequire_once dirname(dirname(__FILE__)) . '/db_connect.php';\nrequire_once dirname(dirname(__FILE__)) . '/classes/Extension/WidgetManager.php';\n$translator = \\Zend_Registry::get('container')->getService('translator');\n\necho camp_html_breadcrumbs(array(\n    array($translator->trans('Dashboard', array(), 'home'), $Campsite['WEBSITE_URL'] . '/admin/home.php'),\n    array($translator->trans('Widgets', array(), 'home'), ''),\n));\n?>\n\n<div class=\"links\">\n    <a href=\"<?php echo $Campsite['WEBSITE_URL']; ?>/admin/\" title=\"<?php echo $translator->trans('Go to dashboard', array(), 'home'); ?>\"><?php echo $translator->trans('Go to dashboard', array(), 'home'); ?></a>\n</div>\n\n<ul id=\"widgets\">\n    <?php foreach (WidgetManager::GetAvailable() as $widget) { ?>\n    <li>\n        <h3><?php echo $widget->getTitle(); ?></h3>\n        <p><a href=\"#<?php echo $widget->getExtension()->getId(); ?>\" class=\"add\"><?php echo $translator->trans('Add to dashboard', array(), 'home'); ?></a>&nbsp;</p>\n        <p><?php echo $translator->trans($widget->getDescription()); ?></p>\n        <?php $widget->renderMeta(); ?>\n    </li>\n    <?php } ?>\n</ul>\n\n<script type=\"text/javascript\">\n$(document).ready(function() {\n    var dashboard_id = 1;\n    $('a.add').click(function() {\n        var a = $(this);\n        var id = a.attr('href').slice(1);\n        callServer(['WidgetManager', 'AddWidget'], [\n            id,\n            'dashboard' + dashboard_id,\n            ], function(json) {\n                flashMessage('<?php echo $translator->trans('Widget added to dashboard.', array(), 'home'); ?>');\n                a.hide();\n                dashboard_id = dashboard_id + 1;\n                if (dashboard_id > 2) {\n                    dashboard_id = 1;\n                }\n                a.closest('li').addClass('ui-state-highlight');\n            });\n    });\n});\n</script>\n\n<?php camp_html_copyright_notice(); ?>\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/admin-style/ColVis.css",
    "content": "@charset \"utf-8\";\r\n/* CSS Document */\r\n\r\n/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\r\n * TableTools styles\r\n */\r\n.TableTools {\r\n\tfloat: right;\r\n\tmargin-bottom: 1em;\r\n\tpadding: 0;\r\n}\r\n\r\n.TableTools_Button {\r\n\tposition: relative;\r\n\tfloat: left;\r\n\tmargin-right: 3px;\r\n\tpadding: 2px 10px 5px 10px;\r\n\tbackground-color: #fff;\r\n\tborder: 1px solid #d0d0d0;\r\n\tcursor: pointer;\r\n\t*cursor: hand;\r\n\tfont-size:12px;\r\n\tline-height:120%;\r\n\tfont-weight:normal;\r\n}\r\n\r\n\r\n.ui-widget-header .ui-state-default.TableTools_Button {\r\n\tfont-weight:normal !important;\r\n\tpadding: 3px 10px 5px 10px;\r\n}\r\n\r\nbutton.TableTools_Button::-moz-focus-inner { \r\n\tborder: none !important;\r\n\tpadding: 0;\r\n}\r\n\r\n.TableTools_text_hover {\r\n\tborder: 1px solid #999;\r\n\tbackground-color: #f0f0f0;\r\n}\r\n\r\ndiv.TableTools_collectionBackground {\r\n\tbackground-color: black;\r\n\tz-index: 1100;\r\n}\r\n\r\ndiv.TableTools_collection {\r\n\tposition: relative;\r\n\twidth: 150px;\r\n\tbackground-color: #f3f3f3;\r\n\tpadding: 3px;\r\n\tborder: 1px solid #ccc;\r\n\tz-index: 1102;\r\n}\r\n\r\ndiv.TableTools_collection button.TableTools_Button {\r\n\tbackground-color: white;\r\n\twidth: 100%;\r\n\tfloat: none;\r\n\tmargin-bottom: 2px;\r\n}\r\n\r\ndiv.TableTools_catcher {\r\n\tposition: absolute;\r\n\tz-index: 1101;\r\n}\r\n\r\n.disabled {\r\n\tcolor: #999;\r\n}\r\n\r\n\r\n\r\nbutton.ColVis_Button {\r\n\ttext-align: left;\r\n}\r\n\r\ndiv.ColVis_collection button.ColVis_Button:hover {\r\n\tborder: 1px solid #999;\r\n\tbackground-color: #f0f0f0;\r\n}\r\n\r\nspan.ColVis_radio {\r\n\tdisplay: inline-block;\r\n\twidth: 20px;\r\n}\r\n"
  },
  {
    "path": "newscoop/admin-style/action_buttons.css",
    "content": "@charset \"utf-8\";\n/* CSS Document */\n\nul.navigation {\n    margin: 0;\n    padding: 0;\n\tdisplay:block;\n\theight:25px;\n}\nul.navigation li {\n    float: left;\n\tmargin-right:10px;\n}\n.actions ul.navigation li {\n    font-size: 12px;\n    font-weight: normal;\n    line-height: 120%;\n    list-style: none;\n    margin: 0 6px 0 0;\n    padding: 0;\n    position: relative;\n    text-decoration: none;\n    border: 1px solid #9D9D9D;\n    background-color: #f6f6f6;\n\tdisplay:block;\n    background: -moz-linear-gradient(top, #fafafa 0, #f6f6f6 100%);\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fafafa), color-stop(100%, #f6f6f6));\n\toverflow:hidden;\n}\n.actions ul.navigation li:hover {\n    text-decoration: none;\n    border: 1px solid #007fb3;\n    color: #fff;\n    background-color: #007fb3;\n    background: -moz-linear-gradient(top, #409fc6 0, #007fb3 100%);\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #409fc6), color-stop(100%, #007fb3));\n}\n.actions ul.navigation li a {\n    padding: 4px 10px 5px 10px;\n\tdisplay:block;\n    color: #3B3B3B;\n}\n\n.actions ul.navigation li:hover a,\n.actions ul.navigation li a:hover {\n    color: #fff;\n    text-decoration: none;\n}\n.actions ul.navigation li a.upload, .actions ul.navigation li a.download, .actions ul.navigation li a.edit, .actions ul.navigation li a.add {\n    padding-left: 20px;\n\tbackground-image:url(images/solo_icons.png);\n\tbackground-repeat:no-repeat;\n}\n.actions ul.navigation li a.upload {\n\tbackground-position: 5px 5px;\n}\t\n.actions ul.navigation li a.upload:hover {\n\tbackground-position: -395px 5px;\n}\n\n.actions ul.navigation li a.download {\n\tbackground-position: 5px -24px;\n}\t\n.actions ul.navigation li a.download:hover {\n\tbackground-position: -395px -24px;\n}\n\n.actions ul.navigation li a.edit {\n\tbackground-position: 5px -54px;\n}\t\n.actions ul.navigation li a.edit:hover {\n\tbackground-position: -395px -54px;\n}\n\n.actions ul.navigation li a.add {\n\tbackground-position: 5px -85px;\n}\n\n.actions ul.navigation li:hover a.add,\n.actions ul.navigation li a.add:hover {\n\tbackground-position: -395px -85px;\n}\n"
  },
  {
    "path": "newscoop/admin-style/admin_stylesheet.css",
    "content": "@charset \"utf-8\";\r\n/* CSS Document */\r\n\r\nbody {\r\n\tfont-size: 62.5%;\r\n\tfont-family:Arial, Helvetica, sans-serif;\r\n    background: #f5f5f5;\r\n    margin: 0;\r\n    padding: 0;\r\n}\r\nh2 {\r\n    color: #000000;\r\n    font-size: 2.1em;\r\n    font-weight: normal;\r\n    margin: 0;\r\n    padding: 0 0 10px;\r\n}\r\nh3 {\r\n\tfont-size:1.7em;\r\n\tfont-weight:normal;\r\n\tcolor:#000;\r\n\tpadding:0 0 10px 0;\r\n\tmargin:0;\r\n}\r\nlabel {\r\n\tfont-size:12px;\r\n}\r\nselect {\r\n\tfont-size:12px;\r\n\tfont-family:Arial, Helvetica, sans-serif;\r\n\tborder:1px solid #9d9d9d;\r\n}\r\n\r\n/* Clearfix */\r\n.clearfix:after, li:after, .poi_coors:after, .map_mapedit .ui-widget-content:after { content: \".\"; display: block;\theight: 0; clear: both;  visibility: hidden;}\r\n.clearfix, li, .poi_coors, .map_mapedit .ui-widget-content {\tdisplay: inline-block; }\r\n* html .clearfix, * html li, * html .poi_coors, * html .map_mapedit .ui-widget-content { height: 1%;}\r\n.clearfix, li, .poi_coors, .map_mapedit .ui-widget-content {\tdisplay: block;\t}\r\n\r\n\r\n/* Meta bar */\r\n\r\n.meta-bar {\r\n\tbackground:#007fb3;\r\n\theight:22px;\r\n\tcolor:#fff;\r\n\tborder-bottom:1px solid #939393;\r\n\ttext-align:right;\r\n\tfont-size:1.1em;\r\n}\r\n\r\n.meta-bar ul {\r\n\tmargin:0 7px 0 0;\r\n\tpadding:3px 0 0 0;\r\n\tlist-style-type:none;\r\n}\r\n\r\n.meta-bar ul li {\r\n\tmargin:2px 0 0 0;\r\n\tpadding:0 9px;\r\n\tfloat: right;\r\n}\r\n.meta-bar ul li a {\r\n\tcolor:#fff;\r\n\ttext-decoration:underline;\r\n\tfont-weight:bold;\r\n}\r\n\r\n/* Main navigation */\r\n\r\n.main-menu-bar {\r\n\tbackground:#3b3b3b;\r\n\theight:36px;\r\n\ttext-align:left;\r\n\tpadding:5px 0 0 0;\r\n}\r\n/* Breadcrumbs */\r\n\r\n.breadcrumb-bar {\r\n\tmin-height:21px;\r\n\ttext-align:left;\r\n\tpadding:7px 0 0 16px;\r\n\tborder-bottom:1px solid #cccccc;\r\n\tclear:both;\r\n    background: #fff;\r\n    -moz-box-shadow: 0 0px 4px rgba(0,0,0,.15);\r\n    -webkit-box-shadow: 0 0px 4px rgba(0,0,0,.15);\r\n    box-shadow: 0 0px 4px rgba(0,0,0,.15);\r\n    margin-top: 1px;\r\n}\r\n\r\n.breadcrumb-bar.zend {\r\n    padding-top: 10px;\r\n    font-size: 1.1em;\r\n}\r\n\r\n.breadcrumbs {\r\n\tmargin:0;\r\n\tpadding:0 0 5px 0;\r\n\tlist-style-type:none;\r\n}\r\n.breadcrumbs li {\r\n\tmargin:0;\r\n    padding: 0 2px 4px 0;\r\n\tfloat: left;\r\n\tfont-size:1.1em;\r\n}\r\n.breadcrumbs li.separator {\r\n    background: url(images/breadcrumb_arrow.png) no-repeat 100% 35%;\r\n    float: left;\r\n    font-size: 1.1em;\r\n    margin: 0 8px 0 0;\r\n    padding: 0 14px 4px 0;\r\n\tborder:none;\r\n}\r\n.breadcrumbs li:first-child {\r\n    padding-left: 0;\r\n}\r\n.breadcrumbs li:first-child a {\r\n\tpadding-left:0;\r\n}\r\n.breadcrumbs li a {\r\n\tmargin:0;\r\n\tpadding:0;\r\n\tcolor:#007fb3;\r\n}\r\n.breadcrumbs li a:hover {\r\n\tbackground:#edf6f9;\r\n\tcolor:#005e85;\r\n}\r\n.breadcrumbs li a.category {\r\n\tfont-weight:bold;\r\n\tpadding-right: 4px;\r\n}\r\n\r\n.link, .ui-widget-content a.link {\r\n\tcolor:#007fb3;\r\n\ttext-decoration:none;\r\n\tposition:relative;\r\n}\r\n.link:hover, .ui-widget-content a.link:hover {\r\n\ttext-decoration:underline;\r\n}\r\n.link .icon {\r\n\tbackground-image:url(images/ui-icons_007fb3_256x240.png);\r\n\tbackground-repeat:no-repeat;\r\n\twidth:16px;\r\n\theight:16px;\r\n\tdisplay:block;\r\n\tleft: 0.2em;\r\n\tmargin: -3px 5px 0 0;\r\n\tposition: absolute;\r\n\ttop: 2px;\r\n\toverflow: hidden;\r\n}\r\n.link .add-icon {\r\n\tbackground-position: -32px -128px;\r\n}\r\n.link .left-icon {\r\n\tbackground:url(images/left_arrow_small.png) no-repeat -1px 2px;\r\n}\r\n.icon-link {\r\n\tpadding-left: 20px;\r\n}\r\n.breadcrumb-bar .link .icon {\r\n    margin: -3px 5px 0 0;\r\n}\r\n.breadcrumb-bar .link {\r\n\tfloat: right;\r\n\tpadding-right:16px;\r\n\tfont-size:1.2em;\r\n\r\n}\r\n.info-bar .link {\r\n\tpadding-right:20px;\r\n\tfont-size:1.3em;\r\n\tfloat:left;\r\n\r\n}\r\n/* Toolbar */\r\n\r\n.toolbar, #geolocation .toolbar, .activeSection, h1 {\r\n\tbackground:#f5f5f5;\r\n\tmin-height:39px;\r\n\ttext-align:left;\r\n\tpadding:10px 24px 0 30px;\r\n\tborder-bottom:1px solid #cccccc;\r\n\tclear:both;\r\n    background: -moz-linear-gradient(top, #e3e3e3 0, #f5f5f5 2px, #f5f5f5 2px, #f5f5f5 100%);\r\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #e3e3e3), color-stop(2%, #f5f5f5), color-stop(2%, #f5f5f5), color-stop(100%, #f5f5f5));\r\n    -moz-box-shadow: 0 1px 4px rgba(0,0,0,.15);\r\n    -webkit-box-shadow: 0 1px 4px rgba(0,0,0,.15);\r\n    box-shadow: 0 1px 4px rgba(0,0,0,.15);\r\n}\r\n.activeSection {\r\n\tmin-height:30px;\r\n\r\n}\r\n#geolocation .toolbar {\r\n\tmin-height:35px;\r\n\tpadding:9px 8px 0 14px;\r\n    background:#fff;\r\n    -moz-box-shadow: 0 1px 4px rgba(0,0,0,.15);\r\n    -webkit-box-shadow: 0 1px 4px rgba(0,0,0,.15);\r\n    box-shadow: 0 1px 4px rgba(0,0,0,.15);\r\n}\r\n.top-input {\r\n    background: url(images/input_bg.png) repeat-x scroll 0 0 #FFFFFF;\r\n    border: 1px solid #9d9d9d;\r\n\tcolor:#007fb3;\r\n    float: left;\r\n    font-size: 16px;\r\n    height: 27px;\r\n    line-height: 20px;\r\n    margin: 0;\r\n    padding: 0;\r\n    text-indent: 6px;\r\n    width: 43%;\r\n}\r\n.toolbar .top-input {\r\n\tmargin-right: 10px;\r\n}\r\n\r\n.toolbar .comments {\r\n\tfont-size: 1.4em;\r\n\tcolor:#007fb3;\r\n\tpadding: 0 0 0 15px;\r\n\tmargin:6px 0 0 0;\r\n\tfloat:left;\r\n\tbackground:url(images/commennts_big.png) no-repeat 0 3px;\r\n}\r\n.save-button-bar {\r\n\tfloat:right;\r\n\tmargin-left:16px;\r\n}\r\n.top-button-bar {\r\n\tmargin-top:2px;\r\n\tfloat:right;\r\n\tmargin-right:6px;\r\n}\r\n.top-button-bar input.default-button {\r\n\tfloat:left;\r\n\tmargin: 0 0 0 10px;\r\n\r\n}\r\n.save-button, .save-button-small {\r\n    border: 1px solid #007fb3;\r\n    color: #fff;\r\n    font-family: Arial,Helvetica,sans-serif;\r\n    font-size: 14px;\r\n    font-weight: normal;\r\n    line-height: 18px;\r\n    margin: 0 6px 0 0;\r\n    padding: 4px 9px 5px 9px;\r\n    background-color: #007fb3;\r\n    background: -moz-linear-gradient(top, #2390bd 0, #007fb3 100%);\r\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #2390bd), color-stop(100%, #007fb3));\r\n\toutline:none;\r\n}\r\n.save-button:hover, .save-button-small:hover {\r\n    border: 1px solid #005e85;\r\n    background: #005e85;\r\n    background: -moz-linear-gradient(top, #409fc6 0, #007fb3 100%);\r\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #409fc6), color-stop(100%, #007fb3));\r\n}\r\n.sticky {\r\n\tpadding:0;\r\n\twidth:100%;\r\n}\r\n.wrapper {\r\n\tmargin: 0 30px 0 30px;\r\n\tpadding:10px 0 0 0;\r\n}\r\n.wrapper {\r\n\tmargin: 0 30px 0 30px;\r\n\tpadding:10px 0 0 0;\r\n}\r\n.main-content-wrapper {\r\n\tmargin-right: 1%;\r\n\tfloat:left;\r\n\twidth:71%;\r\n\tmin-width:670px;\r\n\tmin-height: 820px;\r\n}\r\n.sidebar {\r\n\tfloat:left;\r\n\twidth:28%;\r\n\tmin-width:200px;\r\n}\r\n.big-block {\r\n\tmargin-bottom:10px;\r\n}\r\n.small-block {\r\n\tpadding:0;\r\n\tmargin-bottom:10px;\r\n}\r\n.block-shadow {\r\n    -moz-box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n    -webkit-box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n    box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n}\r\n.highlight-block {\r\n\tborder: 1px solid #007fb3;\r\n}\r\nfieldset.plain {\r\n\tborder:none;\r\n\tpadding:0;\r\n\tmargin:0;\r\n}\r\nfieldset.comments-block {\r\n\tmargin-top:16px;\r\n}\r\n\r\nfieldset ul {\r\n\tborder:none;\r\n\tlist-style-type:none;\r\n\tpadding:0;\r\n\tmargin:0;\r\n}\r\nfieldset ul li {\r\n\tpadding:0 0 12px 0;\r\n\tmargin:0;\r\n\r\n}\r\nfieldset .input_text, .input_text {\r\n    background: url(images/input_bg.png) repeat-x scroll 0 0 #FFFFFF;\r\n\tfont-family:Arial, Helvetica, sans-serif;\r\n\tborder: 1px solid #9D9D9D;\r\n    float: left;\r\n    font-size: 12px;\r\n    height: 23px;\r\n    margin: 0;\r\n    padding: 0;\r\n    text-indent: 3px;\r\n\twidth:auto;\r\n}\r\n\r\nfieldset .input_text_alt, .input_text_alt {\r\n    background: url(images/input_bg.png) repeat-x scroll 0 0 #FFFFFF;\r\n\tfont-family:Arial, Helvetica, sans-serif;\r\n\tborder: 1px solid #9D9D9D;\r\n    font-size: 12px;\r\n    height: 23px;\r\n    margin: 0;\r\n    padding: 0;\r\n    text-indent: 3px;\r\n\twidth:auto;\r\n}\r\n\r\nfieldset.plain label, label.block-label {\r\n    display:block;\r\n    font-size: 13px;\r\n\tfont-weight:bold;\r\n\tcolor:#696969;\r\n    line-height: 20px;\r\n    margin: 0;\r\n    padding: 0 0 4px 0;\r\n    text-indent: 1px;\r\n\r\n\tfloat:none;\r\n\tclear:left;\r\n}\r\n.icon-button, .text-button {\r\n\tmargin: 0 0 0 10px;\r\n\tposition: relative;\r\n\tpadding: 4px 10px 4px 0;\r\n\tcursor: pointer;\r\n\tfloat: left;\r\n\tlist-style: none;\r\n\tfont-size:12px;\r\n\tfont-weight:normal;\r\n\tline-height:120%;\r\n\ttext-decoration:none;\r\n}\r\n.text-button {\r\n\tpadding: 4px 10px 0px 10px;\r\n\tline-height:120%;\r\n\theight:19px;\r\n\tmargin: 0 10px 0 0;\r\n}\r\n.no-text {\r\n\tpadding: 4px 0 4px 0;\r\n}\r\n\r\n.icon-button span.ui-icon {\r\n\tfloat: left;\r\n\tmargin: -1px 4px 0 3px;\r\n}\r\n.text-container {\r\n\theight:18px;\r\n\tpadding: 7px 0 0 0;\r\n\tposition:relative;\r\n}\r\n.date-last-modified {\r\n\tfont-style:italic;\r\n\tcolor:#aaa;\r\n}\r\n.arrow-link, .ui-widget-content a.arrow-link {\r\n\tcolor:#409fc6;\r\n\ttext-decoration:none;\r\n\tbackground:url(images/dropdown-arrow.png) no-repeat right 50%;\r\n\tpadding: 0 12px 0 0;\r\n\r\n}\r\n.arrow-link:hover, .ui-widget-content a.arrow-link:hover {\r\n\ttext-decoration:underline;\r\n}\r\ninput.default-button, .button  {\r\n    background: -moz-linear-gradient(center top , #fafafa 0pt, #f6f6f6 100%) repeat scroll 0 0 transparent;\r\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fafafa), color-stop(100%, #f6f6f6));\r\n    border: 1px solid #9d9d9d;\r\n    color: #444444;\r\n    font-family: Arial,Helvetica,sans-serif;\r\n    font-size: 12px;\r\n    font-weight: normal;\r\n    line-height: 17px;\r\n    margin: 0 6px 0 0;\r\n    outline: medium none;\r\n    padding: 3px 9px 3px;\r\n}\r\n\r\n.save-button-small {\r\n    font-size: 12px;\r\n    font-weight: normal;\r\n    line-height: 17px;\r\n    margin: 0 6px 0 0;\r\n    padding: 3px 9px 3px;\r\n}\r\n\r\ninput.default-button[disabled], input.default-button[disabled]:hover, input.save-button-small[disabled], input.default-button-smal[disabled]:hover, input.button[disabled], input.button[disabled]:hover {\r\n    background: -moz-linear-gradient(center top , #fdfdfd 0pt, #fbfbfb 100%) repeat scroll 0 0 transparent;\r\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fdfdfd), color-stop(100%, #fbfbfb));\r\n    border: 1px solid #cecece;\r\n    color: #b2b3b2;\r\n}\r\ninput.default-button:hover, .button:hover {\r\n\tbackground: #007FB3;\r\n    background: -moz-linear-gradient(center top , #2390BD 0pt, #007FB3 100%) repeat scroll 0 0 transparent;\r\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #2390BD), color-stop(100%, #007FB3));\r\n    border: 1px solid #007FB3;\r\n    color: #FFFFFF;\r\n}\r\ninput.next-to-field {\r\n    margin: 0 6px 0 0;\r\n}\r\n.collapsible .ui-accordion-header {\r\n    cursor: pointer;\r\n    margin-top: 0;\r\n    position: relative;\r\n\tfont-weight:bold;\r\n}\r\n.collapsible .ui-accordion-header a {\r\n    display: block;\r\n    font-size: 1em;\r\n    padding: 0.5em 0.5em 0.5em 0.7em;\r\n\tpadding-left: 2.2em;\r\n\tcolor:#007fb3;\r\n\toutline:none;\r\n}\r\n.collapsible .ui-state-default {\r\n    cursor: pointer;\r\n    margin-top: 0;\r\n    position: relative;\r\n\tborder:none;\r\n\r\n\tbackground-image:none;\r\n    background: -moz-linear-gradient(center top , #fbfbfb 0pt, #f8f8f8 100%) repeat scroll 0 0 transparent;\r\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fbfbfb), color-stop(100%, #f8f8f8));\r\n\tborder-bottom:none;\r\n}\r\n.collapsible .ui-state-hover {\r\n\tborder:none;\r\n\tbackground-image:none;\r\n    background: -moz-linear-gradient(center top , #f8f8f8 0pt, #ebebeb 100%) repeat scroll 0 0 transparent;\r\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #f8f8f8), color-stop(100%, #ebebeb));\r\n}\r\n\r\n.collapsible .ui-state-hover {\r\n\r\n}\r\n.collapsible .ui-state-hover a {\r\n \tcolor:#007fb3;\r\n}\r\n.collapsible .ui-accordion-header .ui-icon {\r\n    left: 0.5em;\r\n    margin-top: -8px;\r\n    position: absolute;\r\n    top: 50%;\r\n}\r\n.collapsible .ui-state-hover .ui-icon,\r\n.collapsible .ui-state-active .ui-icon {\r\n\tbackground-image:url(images/ui-icons_666666_256x240.png);\r\n}\r\n.collapsible .ui-state-default .ui-icon,\r\n.collapsible .ui-state-hover .ui-icon {\r\n\tbackground-position:-32px -16px;\r\n}\r\n.collapsible .ui-state-active .ui-icon {\r\n\tbackground-position:-64px -16px;\r\n}\r\n.collapsible .ui-state-active {\r\n\tbackground-image:none;\r\n    background: -moz-linear-gradient(center top , #fbfbfb 0pt, #f8f8f8 100%) repeat scroll 0 0 transparent;\r\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fbfbfb), color-stop(100%, #f8f8f8));\r\n\tborder-bottom:1px solid #ebebeb;\r\n}\r\n.collapsible .ui-state-active:hover {\r\n    background: -moz-linear-gradient(center top , #f8f8f8 0pt, #ebebeb 100%) repeat scroll 0 0 transparent;\r\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #f8f8f8), color-stop(100%, #ebebeb));\r\n}\r\n.padded {\r\n\tpadding:8px;\r\n}\r\n.padded-strong {\r\n\tpadding:10px;\r\n}\r\n.input_select {\r\n\theight:25px;\r\n    background-color: #FFFFFF;\r\n    border: 1px solid #9d9d9d;\r\n    font-size: 12px;\r\n\tfont-family:Arial, Helvetica, sans-serif;\r\n\tvertical-align:top;\r\n\tpadding:2px 2px 2px 0;\r\n\tmargin:0;\r\n}\r\nfieldset.plain label.inline-style, .frame label.inline-style , label.inline-style {\r\n    font-size: 12px;\r\n\tfont-weight:bold;\r\n\tcolor:#696969;\r\n    line-height: 22px;\r\n    margin: 0;\r\n    padding:0;\r\n    text-indent: 0;\r\n\tclear:none;\r\n\tdisplay:inline;\r\n\twidth:auto;\r\n}\r\n.left-floated, fieldset.plain .left-floated {\r\n\tfloat:left;\r\n\tmargin-left:0;\r\n\tmargin-right:10px;\r\n}\r\n.right-floated, fieldset.plain .right-floated {\r\n\tfloat:right;\r\n\tmargin-left:10px;\r\n\tmargin-right:0;\r\n\ttext-align:right;\r\n}\r\nselect.right-floated, input.right-floated,\r\nfieldset.plain select.right-floated, fieldset.plain input.right-floated {\r\n\ttext-align:left;\r\n}\r\n.clear {\r\n    clear: both;\r\n    display: block;\r\n    height: 0;\r\n    overflow: hidden;\r\n    visibility: hidden;\r\n    width: 0;\r\n}\r\n.separator {\r\n\tborder-right:1px solid #CCC;\r\n\tpadding:2px;\r\n\tmargin:0 5px 0 5px;\r\n}\r\n.block-list {\r\n\tpadding:0;\r\n\tmargin:8px 0 0 0;\r\n\tlist-style-type:none;\r\n}\r\n.block-list li {\r\n\tpadding:8px;\r\n\tmargin: 0 0 8px 0;\r\n\tfont-size:1.2em;\r\n\tborder:1px solid #CCC;\r\n\tlist-style-type:none;\r\n\tposition:relative;\r\n}\r\n.block-list li:last-child {\r\n\tmargin-bottom:0;\r\n}\r\n.icon-link  span.ui-icon-pencil {\r\n    background-position: -66px -114px;\r\n}\r\n.corner-button {\r\n\tposition:absolute;\r\n\tright:0;\r\n\ttop:2px;\r\n\theight:17px;\r\n\twidth:17px;\r\n\tpadding: 4px;\r\n\tdisplay:block;\r\n\toverflow:hidden;\r\n\ttext-indent:-9999px;\r\n\ttext-decoration:none;\r\n}\r\n.corner-button .ui-icon {\r\n\tbackground-image:url(images/ui-icons_007fb3_256x240.png);\r\n}\r\n.corner-button:hover .ui-icon-closethick {\r\n\tbackground-image:url(images/ui-icons_d00000_256x240.png);\r\n}\r\n.frame {\r\n\tpadding:8px;\r\n\tborder:1px solid #CCC;\r\n\tmargin: 0 0 8px 0;\r\n}\r\n.frame:last-child {\r\n\tmargin-bottom:0px;\r\n}\r\n.simple-list {\r\n\tpadding:0 0 0 2px;\r\n\tmargin:6px 0 0 0;\r\n\tlist-style-type:none;\r\n}\r\n.check-list {\r\n\tpadding:0;\r\n\tmargin:3px 0 0 0;\r\n\tlist-style-type:none;\r\n}\r\n.simple-list li {\r\n\tpadding:0 0 0 12px;\r\n\tmargin: 0 0 4px 0;\r\n\tfont-size:12px;\r\n\tborder:none;\r\n\tposition:relative;\r\n\tcolor:#7c7c7c;\r\n\tbackground:url(images/simple-bullet.png) no-repeat 0 50%;\r\n}\r\n.check-list li {\r\n\tpadding:0 0 6px 0;\r\n\tmargin: 0;\r\n\tfont-size:12px;\r\n\tborder:none;\r\n\tposition:relative;\r\n\tcolor:#7c7c7c;\r\n}\r\n.check-list li:last-child {\r\n\tpadding:0;\r\n}\r\n.input_checkbox {\r\n    height: 13px;\r\n\twidth: 13px;\r\n    margin: 0;\r\n    padding: 0;\r\n}\r\n.check-list .input_checkbox {\r\n    float: left;\r\n    margin-right: 7px;\r\n}\r\n.check-list label, .frame .check-list label, .inline, fieldset.plain .check-list label  {\r\n    float: left;\r\n\twidth:auto;\r\n\tclear:none;\r\n\tline-height:120%;\r\n\tfont-weight:normal;\r\n}\r\n\r\n\r\ndl.inline-list {\r\n\tfloat: left;\r\n\tmargin: 0;\r\n\tpadding: 0;\r\n}\r\n\r\ndl.inline-list dt {\r\n\tclear: left;\r\n\tfloat: left;\r\n\tmargin: 0;\r\n\tpadding: 4px 0;\r\n\tfont-weight: bold;\r\n\tcolor:#666666;\r\n\tfont-size:1.2em;\r\n\ttext-align:left;\r\n}\r\ndl.inline-list dd {\r\n\tfloat: left;\r\n\tmargin: 0;\r\n\tpadding: 4px 0 4px 15px;\r\n\tfont-size:1.2em;\r\n}\r\n.sidebar dl.inline-list {\r\n\tpadding: 0 0 0 3px;\r\n}\r\n.sidebar dt {\r\n\twidth:100px;\r\n}\r\n.main-content-wrapper dl.inline-list {\r\n\tpadding: 0 0 0 3px;\r\n\twidth:100%;\r\n}\r\n.main-content-wrapper dl.inline-list dt {\r\n\twidth:100px;\r\n\tpadding: 4px 0 4px 0;\r\n}\r\n.main-content-wrapper dl.inline-list dd {\r\n\twidth:70%;\r\n\tpadding: 4px 0 4px 0;\r\n}\r\n.main-content-wrapper dl.inline-list dd.buttons {\r\n\tpadding: 12px 0 4px 0;\r\n}\r\n.sidebar .check-list {\r\n\tpadding:0 0 4px 4px;\r\n}\r\n.inner-tabs .ui-widget-content {\r\n\tborder:none;\r\n}\r\n.inner-tabs .ui-tabs {\r\n\tpadding:0;\r\n\tmargin:0;\r\n}\r\n.tabs .ui-state-default a {\r\n\tcolor:#007fb3;\r\n}\r\n.tabs .ui-state-default a:hover {\r\n\tcolor:#fff;\r\n}\r\n.tabs .ui-state-active a, .tabs .ui-state-active a:link, .tabs .ui-state-active a:visited {\r\n\tcolor:#444;\r\n}\r\n.tabs .ui-tabs-nav {\r\n    margin: 0;\r\n    padding: 3px 3px 0 4px;\r\n}\r\n.inner-tabs .ui-tabs-panel {\r\n    padding: 8px 0 0 0;\r\n}\r\n.ui-widget .block-list li  {\r\n\tfont-size:12px;\r\n}\r\n.block-list li {\r\n\tline-height:130%\r\n}\r\n.block-list li img {\r\n\tfloat:left;\r\n\tborder:1px solid #9d9d9d;\r\n\tmargin-right:15px;\r\n}\r\n.block-list li a:hover img {\r\n\tborder:1px solid #007fb3;\r\n}\r\n.block-list li a.text-link {\r\n\tcolor:#007fb3;\r\n\ttext-decoration:none;\r\n\tdisplay:block;\r\n\twidth:90%;\r\n}\r\n.block-list li a.text-link:hover {\r\n\tcolor:#007fb3;\r\n\ttext-decoration:underline;\r\n}\r\n\r\n\r\n.info {\r\n\tfont-style:italic;\r\n\tcolor:#7c7c7c;\r\n}\r\n.map-thumb_cont {\r\n\tfloat:left;\r\n\twidth:128px;\r\n}\r\n.map-thumb {\r\n\tmargin:0;\r\n\tpadding:0;\r\n\twidth:128px;\r\n\tfloat:left;\r\n\tborder:1px solid #9d9d9d;\r\n\tbackground:#9d9d9d;\r\n}\r\n.map-thumb_tab {\r\n\tborder-top:1px solid #9d9d9d;\r\n}\r\n.map-thumb:hover {\r\n\tborder:1px solid #007eb1;\r\n\tbackground:#007eb1;\r\n}\r\n.map-thumb img {\r\n\tborder:none;\r\n\tmargin:0;\r\n\tpadding:0;\r\n\tdisplay:block;\r\n}\r\n.map-thumb:hover img {\r\n\tborder:none;\r\n}\r\n\r\n.input_radio {\r\n    float: left;\r\n    margin-right: 5px;\r\n}\r\n.info-bar {\r\n\tmargin-right: 2%;\r\n\twidth:70%;\r\n\theight:27px;\r\n\tclear:both;\r\n\tpadding:3px 0 0 0;\r\n}\r\n.info-bar.solo {\r\n\tmargin-top: 10px;\r\n\tpadding-left:30px;\r\n}\r\n.info-text {\r\n\tfont-size:1.2em;\r\n\tcolor:#858585;\r\n\tfloat:right;\r\n\tpadding:1px 0 0 0;\r\n}\r\n.action-list {\r\n\tmargin: 0 0 8px 0;\r\n\tpadding:0;\r\n\tlist-style-type:0;\r\n}\r\n.action-list li {\r\n    display: block;\r\n\tmargin: 0;\r\n    padding: 0;\r\n\tfloat:right;\r\n\twidth:auto;\r\n    line-height: 18px;\r\n    margin-left: 5px;\r\n}\r\n\r\n.action-list ul li.new, .action-list ul li.approved, .action-list ul li.hidden {\r\n    border-radius: 3px 3px 3px 3px;\r\n    margin-left: 4px;\r\n    padding-right: 10px;\r\n}\r\n\r\n.action-list ul li.new {\r\n    background: none repeat scroll 0 0 #EAF7DA;\r\n    border: 1px solid #2A8921;\r\n    color: #006B0E;\r\n}\r\n.action-list ul li.approved {\r\n    background: none repeat scroll 0 0 #FFFFFF;\r\n    border: 1px solid #5B5B5B;\r\n    color: #585858;\r\n}\r\n.action-list ul li.hidden {\r\n    background: none repeat scroll 0 0 #F2F2F2;\r\n    border: 1px solid #838383;\r\n    color: #969696;\r\n}\r\n\r\n.action-list ul li.button-first {\r\n    margin-left:20px;\r\n}\r\n.action-list ul li label, .action-list ul li label.inline-style {\r\n    font-weight: normal;\r\n}\r\n.action-list ul li.new label.inline-style {\r\n    color: #006B0E;\r\n}\r\n.action-list ul li.approved label.inline-style {\r\n    color: #585858;\r\n}\r\n.action-list ul li.hidden label.inline-style {\r\n    color: #969696;\r\n}\r\n\r\n/*---Comments color*/\r\n.comment_approve {\r\n    background: transparent;\r\n}\r\n.comment_pending_approve {\r\n    background-color: #transparent;\r\n}\r\n.comment_hide {\r\n    background-color: #d0d0d0;\r\n}\r\n\r\n.comment_pending_hidden {\r\n    background-color: #d0d0d0;\r\n\tcolor:#8a8a8a;\r\n}\r\n\r\n.comment_inbox {\r\n    background: #e5f9d0;\r\n}\r\n\r\n.comment_pending_inbox {\r\n    background: #cbf3a1;\r\n}\r\n\r\n.comment_delete {\r\n    background-color: #ffc6c6;\r\n}\r\n\r\n.comment_pending_delete {\r\n    background-color: #ffc6c6;\r\n}\r\n/*---END Comments color---*/\r\n\r\na.calendar-button {\r\n\tbackground:url(images/calendar_big.png) no-repeat scroll 0 0 transparent;\r\n    height: 16px;\r\n    margin: 0 10px 0 6px;\r\n    outline: medium none;\r\n    width: 17px;\r\n\tdisplay:inline;\r\n\tpadding: 0 14px 0 0;\r\n\ttext-decoration:none;\r\n}\r\n.logo {\r\n\tfloat:right;\r\n\theight:21px;\r\n\twidth:83px;\r\n\tbackground:url(images/newscoop_logo.png) no-repeat 0 0;\r\n\tmargin: 1px 16px 0 0;\r\n}\r\n.position-helper {\r\n\theight:25px;\r\n\twidth: 499px;\r\n\tfloat:left;\r\n\tposition:relative;\r\n}\r\n.floated-close {\r\n\tposition:absolute;\r\n\tbackground:url(images/round_close.png) no-repeat 0 0;\r\n\theight:12px;\r\n\twidth:12px;\r\n\tdisplay:block;\r\n\ttop:7px;\r\n\tright:6px;\r\n}\r\n.round-delete, .round-plus {\r\n\tbackground:url(images/round_close.png) no-repeat 0 0;\r\n\theight:12px;\r\n\twidth:12px;\r\n\tdisplay:block;\r\n\tfloat:left;\r\n\toutline:none;\r\n\ttext-indent:-99999px;\r\n\toverflow:hidden;\r\n}\r\n.round-plus {\r\n\tbackground:url(images/round_plus.png) no-repeat 0 0;\r\n}\r\n.floated-close:hover, .round-delete:hover, .round-plus:hover {\r\n\tbackground-position: 0 -15px\r\n}\r\n.clear-margin, input.clear-margin, select.clear-margin {\r\n\tmargin:0 !important;\r\n}\r\na.clear-margin:hover, .icon-button:hover  {\r\n\ttext-decoration:none !important;\r\n}\r\n/*---- Geolocation ----*/\r\n.date-published strong {\r\n\tcolor:#939393;\r\n}\r\n.date-created {\r\n\tcolor:#858585;\r\n}\r\n.map_sidepan .input_select {\r\n\twidth:100%;\r\n}\r\n\r\n.map_sidepan .input_text {\r\n\twidth:167px;\r\n\tmargin-right:0px;\r\n}\r\n.map_sidepan .icon-button {\r\n\tmargin:0;\r\n\tfloat:right;\r\n}\r\n.map_sidepan fieldset ul li {\r\n    margin: 0;\r\n    padding: 0 0 8px;\r\n}\r\n.map_sidepan  .round-delete {\r\n\tmargin: 7px 0 0 6px;\r\n}\r\n.resize-label {\r\n\tfloat:right;\r\n\twidth:25px;\r\n\theight:19px;\r\n\ttext-align:center;\r\n\tpadding:5px 0 0 0;\r\n\tfont-weight:bold;\r\n}\r\n.map-resizing-text {\r\n\tfloat:right;\r\n\twidth:110px;\r\n\tfont-size:14px;\r\n\tcolor:#444444;\r\n\theight:20px;\r\n\ttext-align:center;\r\n\tpadding:4px 0 0 0;\r\n}\r\n\r\n#geolocation .dataTables_wrapper {\r\n    margin: 0 0 8px 0;\r\n}\r\n#geolocation .ui-accordion .ui-accordion-content {\r\n\tpadding: 5px 10px 10px 10px;\r\n}\r\n\r\n.map_mapedit fieldset {\r\n\tborder:1px solid #ccc;\r\n\tmargin:0;\r\n\tpadding:4px;\r\n}\r\n.ui-widget-content .poi_actions a {\r\n    margin: 0 0 4px 0;\r\n\tfont-size:12px;\r\n\tcolor:#007fb3;\r\n\ttext-decoration:none;\r\n}\r\n.ui-widget-content .poi_actions a:hover {\r\n\tcolor:#007fb3;\r\n\ttext-decoration:underline;\r\n}\r\n.ui-widget-content .poi_actions a.icon-button {\r\n\tcolor:#444444;\r\n\ttext-decoration:none;\r\n}\r\n.ui-widget-content .poi_actions a.icon-button:hover {\r\n\tcolor:#fff;\r\n\ttext-decoration:none;\r\n}\r\n\r\n.ui-widget-content .poi_actions a.icon-link .icon  {\r\n\tmargin:-2px 0 0 0;\r\n}\r\n.ui-widget-content .poi_actions a.icon-button {\r\n\tmargin:0;\r\n}\r\n.ui-widget-content .poi_actions a.link {\r\n\tpadding-right: 10px;\r\n\r\n}.ui-widget-content .poi_actions a.icon-link {\r\n\tpadding-right: 0;\r\n}\r\n.map_mapedit .ui-state-default .ui-icon {\r\n\tbackground-image: url(images/ui-icons_007fb3_256x240.png);\r\n}\r\n.map_mapedit .ui-state-hover .ui-icon {\r\n\tbackground-image: url(images/ui-icons_ffffff_256x240.png);\r\n}\r\n/*---- END Geolocation ----*/\r\n\r\n.article-title, .article-title-locked, .breadcrumb_active, h1\t{\r\n    color: #3B3B3B;\r\n    float: left;\r\n    font-size: 17px;\r\n    height: 23px;\r\n    line-height:120%;\r\n    margin: 0;\r\n    padding: 3px 40px 0 0;\r\n    text-indent: 6px;\r\n    font-weight: normal;\r\n}\r\n.article-title, .breadcrumb_active, h1 {\r\n    color: #3B3B3B;\r\n}\r\n.article-title-locked {\r\n    color: #de3d3d;\r\n    background: transparent url(images/locked_big.png) no-repeat 0 50%;\r\n    padding-left: 16px;\r\n}\r\n.breadcrumb_active\t{\r\n    padding: 0 40px 0 0;\r\n    text-indent: 6px;\r\n}\r\nfieldset li p {\r\n\tline-height:140%;\r\n}\r\nfieldset li {\r\n\tfont-size:1.2em;\r\n\tline-height:140%;\r\n}\r\nfieldset > legend {\r\n\tfont-size:12px;\r\n\tline-height:140%;\r\n\tcolor:#696969;\r\n\tmargin-bottom: 0px;\r\n    width: auto;\r\n    border-bottom: none;\r\n}\r\nul.tree.sortable .item fieldset .input_text {\r\n\twidth: auto;\r\n\tmargin-right:4px;\r\n\tfloat:none;\r\n\r\n}\r\n.main-edit-content fieldset .input_text, .comments-list-content fieldset .input_text, .post-comment-content fieldset .input_text {\r\n\twidth: 497px;\r\n\r\n}\r\n/*----Author Management ----*/\r\n.column-one {\r\n\tfloat:left;\r\n\twidth:360px;\r\n\tmargin:0 15px 30px 0;\r\n}\r\n.column-two {\r\n\tfloat:left;\r\n\twidth:auto;\r\n\tmargin-bottom:30px;\r\n}\r\n.search-box {\r\n\theight:25px;\r\n\tbackground:#FFFFFF url(images/search_box_bg.png) repeat-x 0 0;\r\n    border: 1px solid #9D9D9D;\r\n\tborder-width: 0 1px 0 1px;\r\n}\r\n.search-box input, .search-box .input-transparent {\r\n\theight:23px;\r\n    background-color: transparent;\r\n\tbackground-image: none;\r\n\tpadding:0;\r\n\tborder:none;\r\n\tmargin:1px 0 0 0;\r\n\toutline:none;\r\n    float: left;\r\n    font-family: Arial,Helvetica,sans-serif;\r\n    font-size: 12px;\r\n    height: 23px;\r\n    text-indent: 3px;\r\n}\r\n.search-box .filter-button  {\r\n    background: transparent url(images/dropdown-arrow.png) no-repeat scroll right 9px;\r\n    color: #646664;\r\n    padding: 4px 14px 0 10px;\r\n    text-decoration: none;\r\n\tfloat:right;\r\n\tfont-size:11px;\r\n\ttext-decoration:none;\r\n\tborder-left:1px dotted #CCC;\r\n\theight: 19px;\r\n\tmargin:1px 6px 0 0;\r\n\toutline:none;\r\n}\r\n.search-box .filter-button.close  {\r\n    background: transparent url(images/dropdown-arrow-close.png) no-repeat scroll right 8px;\r\n}\r\n.search-box .filter-button:hover {\r\n    color: #007fb3;\r\n\ttext-decoration:none;\r\n}\r\n.container {\r\n    border:1px solid #CCC;\r\n    border-width: 0 1px 1px 1px;\r\n    padding: 20px 10px 10px 10px;\r\n    background:#fafafa;\r\n    background: -moz-linear-gradient(top, #e3e3e3 0, #fafafa 3px, #fafafa 3px, #fafafa 100%);\r\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #e3e3e3), color-stop(2%, #fafafa), color-stop(2%, #fafafa), color-stop(100%, #fafafa));\r\n    display:block;\r\n}\r\n\r\n.datatable tr th.ui-state-default {\r\n    border: 1px solid #CCC;\r\n\tborder-width: 0 0 0 1px !important;\r\n}\r\n\r\n#gridtable .ui-widget-header {\r\n    padding: 10px 10px 10px;\r\n}\r\n.datatable {\r\n    border-color: #9D9D9D;\r\n    border-style: solid;\r\n    border-width: 1px 1px 1px 1px;\r\n    width: 100%;\r\n}\r\n.datatable tr td, .datatable tr th {\r\n    border-color: #EBEBEB;\r\n    border-style: solid;\r\n    border-width: 1px 0 0 1px;\r\n    font-size: 12px;\r\n    padding: 3px 5px;\r\n}\r\n.datatable tr td:first-child, .datatable tr th:first-child, .datatable tr th.ui-state-default:first-child {\r\n\tborder-left-width:0 !important;\r\n}\r\n.ui-widget-header + .datatable {\r\n    border-width: 0px 1px 1px 1px;\r\n}\r\n.datatable + .ui-widget-header {\r\n    border-width: 0px 1px 1px 1px;\r\n}\r\n.dataTables_scrollHeadInner > .datatable {\r\n    border-width: 0px 1px 0 1px;\r\n}\r\n.dataTables_scroll .datatable {\r\n    border-width: 0px 1px 0 1px;\r\n}\r\n.author-list {\r\n\toverflow:hidden;\r\n}\r\n.author-details {\r\n}\r\n.author-details fieldset label {\r\n    clear: left;\r\n    color: #696969;\r\n    display: block;\r\n    float: left;\r\n    font-size: 12px;\r\n    font-weight: bold;\r\n    line-height: 20px;\r\n    margin: 0;\r\n    padding: 0 0 4px;\r\n    text-indent: 0;\r\n\twidth:140px;\r\n}\r\n.author-details fieldset ul.nameList li label {\r\n    width: 100px;\r\n}\r\n.author-details fieldset.frame ul li:last-child {\r\n    padding-bottom: 0;\r\n}\r\n.author-details.ui-tabs {\r\n\tpadding:10px;\r\n}\r\n.space-box {\r\n\tclear:both;\r\n\theight:16px;\r\n}\r\n.author-details h3 {\r\n\tfont-size:17px;\r\n\tpadding:6px 0 16px 0;\r\n}\r\n.author-details .frame {\r\n    padding: 10px;\r\n}\r\n.author-details .frame:last-child {\r\n    margin-bottom: 10px;\r\n}\r\ninput.input_file {\r\n\tfont-size: 12px;\r\n\tfont-family:Arial, Helvetica, sans-serif;\r\n}\r\n\r\n/*--- FOOTER ---*/\r\n.footer, .footer_plain {\r\n    display:block;\r\n    background:#f5f5f5;\r\n    background: -moz-linear-gradient(top, #e3e3e3 0, #f5f5f5 2px, #f5f5f5 2px, #f5f5f5 100%);\r\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #e3e3e3), color-stop(2%, #f5f5f5), color-stop(2%, #f5f5f5), color-stop(100%, #f5f5f5));\r\n    height:40px;\r\n    border-top:1px solid #CCC;\r\n    clear:both; color:#666;\r\n    margin-top:20px;\r\n    font-size:11px;\r\n    line-height:140%;\r\n    text-align:center;\r\n    padding:10px 0 0 0;\r\n}\r\n\r\n.footer_plain {\r\n    border-top:none;\r\n    margin-top:20px;\r\n\tbackground:transparent;\r\n}\r\n\r\n.footer a, .footer_plain a {\r\n    color:#015476;\r\n    text-decoration:none;\r\n}\r\n\r\n.footer a:hover, .footer_plain a:hover {\r\n    color:#1a8cbb;\r\n    text-decoration:underline;\r\n}\r\n/*--- END FOOTER ---*/\r\n\r\n/*--- New Login ---*/\r\n.login_box {\r\n    margin:40px auto 0 auto;\r\n    text-align:center;\r\n    width:420px;\r\n    border:1px solid #CCC;\r\n\tborder-width: 0 0 1px 0;\r\n\tpadding: 0 0 16px 0;\r\n    background: -moz-linear-gradient(center top , #f5f5f5 70%, #eeeeee 100%);\r\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, #f5f5f5), color-stop(100%, #eeeeee));\r\n}\r\n\r\n.login_box h2 {\r\n\tbackground:#f6f6f6;\r\n    background: -moz-linear-gradient(center top , #fafafa 0pt, #f6f6f6 100%);\r\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fafafa), color-stop(100%, #f6f6f6));\r\n    border:1px solid #afafaf;\r\n\tborder-top-color:#FFF;\r\n\tborder-left-color:#e5e5e5;\r\n\tborder-right-color:#e5e5e5;\r\n    margin:0 0 12px 0;\r\n    padding:8px 0 8px 10px;\r\n    font-size:15px;\r\n    font-weight:bold;\r\n    color:#444;\r\n    text-align:left;\r\n    -moz-box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n    -webkit-box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n    box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n}\r\n\r\n.login_box p {\r\n    font-size: 1.2em;\r\n    line-height: 1.5em;\r\n    text-align: left;\r\n}\r\n\r\n.login_box a.goto {\r\n    font-size: 1.2em;\r\n}\r\n\r\n.logobox {\r\n    height:102px;\r\n    text-align:center;\r\n}\r\n\r\n.login {\r\n    margin:2px 0 0 4px;\r\n    border:none;\r\n    background:none;\r\n    text-align:left;\r\n    -moz-box-shadow: none;\r\n    -webkit-box-shadow: none;\r\n    box-shadow: none;\r\n}\r\n\r\n.login td {\r\n    border:none;\r\n    background-color:transparent;\r\n\tcolor:#696969;\r\n}\r\n\r\n.login h2 {\r\n    padding:7px 0 10px 0;\r\n}\r\n\r\n.light {\r\n    color:#1683b0;\r\n}\r\n.alert {\r\n\tcolor:#C00;\r\n}\r\n/*--- END New Login ---*/\r\n\r\n/*---  Main menu and sticky Toolbox fix ---*/\r\n.sticky {\r\n\tz-index:100;\r\n}\r\n/*---  IMPORTANT: z-index of .fg-menu-container must be bigger then z-index of .sticky !! ---*/\r\n/*---  IMPORTANT: z-index of .fg-menu-container must be bigger then z-index of geo-maps too !! ---*/\r\n.fg-menu-container {\r\n\tz-index:2001;\r\n}\r\n\r\n/** plugins */\r\n.table_actions {\r\n    margin: 0 34px 8px;\r\n}\r\n\r\nform > .table_input {\r\n    font-size: 1.1em;\r\n}\r\n\r\n/** media archive */\r\nbody > h2 {\r\n    margin-left: 35px;\r\n}\r\n\r\np.dates {\r\n    margin: 0 0 8px;\r\n    font-size: 1.3em;\r\n}\r\n\r\n.mediaplayer {\r\n    margin: 8px 0;\r\n    font-size: 1.1em;\r\n}\r\n\r\ndl.attachment {\r\n    font-size: 1.3em;\r\n    margin: 0 0 8px;\r\n}\r\n\r\ndl.attachment > * {\r\n    margin-bottom: 3px;\r\n}\r\n\r\ndl.attachment dt {\r\n    float: left;\r\n}\r\n\r\n.dataTables_paginate.ui-buttonset {\r\n    height: auto;\r\n    overflow: visible;\r\n}\r\n\r\n.dataTables_length {\r\n    clear: both;\r\n}\r\n\r\nul.rss {\r\n    margin: 3px 0;\r\n    padding: 0;\r\n}\r\n\r\nul.rss > li {\r\n    margin: 0;\r\n    padding: 5px;\r\n    font-size: 1.2em;\r\n}\r\n\r\nul.rss li.even {\r\n    background-color: #f5f5f5;\r\n}\r\n\r\nul.rss p {\r\n    width: 60em;\r\n    margin: 3px 0 0;\r\n}\r\n\r\nul.rss li a { color: #007fb3; }\r\nul.rss li a:hover { text-decoration: underline; }\r\n\r\nul#edit-images, ul#edit-files {\r\n    height: 1%;\r\n    overflow: hidden;\r\n}\r\n\r\nul#edit-images li{\r\n    float: left;\r\n    width: 300px;\r\n    margin: 5px 0 0 5px;\r\n    padding: 5px;\r\n    border: 1px solid #ccc;\r\n}\r\n\r\nul#edit-files li {\r\n    float: left;\r\n    width: 350px;\r\n    margin: 5px 0 0 5px;\r\n    padding: 5px;\r\n    border: 1px solid #ccc;\r\n}\r\n\r\nul#edit-files dl {\r\n    display: inline-block;\r\n}\r\n\r\nul#edit-images li > div, ul#edit-files li > div {\r\n    height: 50px;\r\n    overflow: hidden;\r\n    padding-left: 10px;\r\n}\r\n\r\n#edit-images fieldset, #edit-files fieldset {\r\n    margin: 5px;\r\n    padding: 5px;\r\n    border: 1px solid #ccc;\r\n}\r\n\r\n#edit-images a.copy-to-all, #edit-files a.copy-to-all {\r\n    clear: left;\r\n    display: block;\r\n    width: 100%;\r\n}\r\n\r\nfieldset.controls, fieldset.buttons, fieldset.filters, fieldset.actions {\r\n    margin: 13px 21px;\r\n    padding: 10px;\r\n    border: 1px solid #ccc;\r\n}\r\n\r\nfieldset.buttons.active {\r\n    position: fixed;\r\n    top: 0;\r\n    left: -5px;\r\n    background-color: #fff56e;\r\n    opacity: 0.9;\r\n}\r\n\r\nfieldset.controls div {\r\n    margin-bottom: 5px;\r\n}\r\n\r\nfieldset.filters select {\r\n    margin-right: 13px;\r\n}\r\n\r\nfieldset dl {\r\n    margin: 0 0 5px;\r\n}\r\n\r\nfieldset dl dd {\r\n    margin-left: 0;\r\n}\r\n\r\nfieldset.closed {\r\n    margin-bottom: -21px;\r\n    border-width: 1px 0 0;\r\n    -moz-border-radius: 0;\r\n    border-radius: 0;\r\n}\r\n\r\nfieldset.filters a.reset {\r\n    display: inline-block;\r\n    margin: 8px 2px 0;\r\n    font-size: 0.9em;\r\n}\r\n\r\n#mc_embed_signup {\r\n    background: transparent url('images/bg-product-nav-swarm.png') no-repeat 90% 90%;\r\n}\r\n\r\n/*---  Comments tabs ---*/\r\n.tab_active {\r\n    border-left: 1px solid #777;\r\n    border-top: 1px solid #777;\r\n    border-right: 1px solid #777;\r\n    -moz-border-radius: 2px 2px 0 0;\r\n}\r\n.tab_inactive {\r\n    border: 1px solid #777;\r\n    background-color: #CFCFCF;\r\n    -moz-border-radius: 2px 2px 0 0;\r\n}\r\n\r\n/*---  plupload addon ---*/\r\n.plupload-addon-bottom {\r\n\tmargin:0 30px 10px 30px;\r\n\tborder: 1px solid #9d9d9d;\r\n\tborder-width: 1px;\r\n\tbackground:#f9f9f9;\r\n\tfont-size:12px;\r\n\tpadding:0 0 10px 0;\r\n}\r\n.plupload-addon-bottom .info {\r\n\tfloat:left;\r\n\tpadding:5px 30px 0 10px;\r\n\tfont-style:normal;\r\n}\r\n.plupload-addon-bottom .last {\r\n\tpadding-right: 6px;\r\n}\r\n.plupload-addon-bottom h3 {\r\n\tfont-size:12px;\r\n\tmargin:-20px 0 20px 0;\r\n\tpadding:10px;\r\n\tfont-weight:normal;\r\n\tborder-bottom:1px solid #CCC;\r\n\tbackground:#f4f4f4;\r\n}\r\n.plupload-addon-bottom .inputs {\r\n\tfloat:left;\r\n\tpadding:0 0px 0 0px;\r\n\tfont-style:normal;\r\n\twidth:40%;\r\n}\r\n.plupload-addon-bottom .select-only {\r\n\twidth:25%;\r\n\tmin-width:240px;\r\n}\r\n.plupload-addon-bottom .inputs .input_text  {\r\n\twidth:100%;\r\n}\r\n.plupload-addon-bottom .inputs .input_select {\r\n\twidth:100%;\r\n}\r\n.plupload-addon-bottom .inputs label {\r\n\tfloat:left;\r\n\tmargin-right:10px;\r\n\tfont-weight:bold;\r\n\tcolor:#606060;\r\n\tpadding-top:5px;\r\n}\r\n.plupload-addon-bottom .buttons {\r\n\tfloat:right;\r\n\tpadding-right:10px;\r\n}\r\n.plupload-addon-bottom .buttons .save-button{\r\n\tmargin:10px 0 0 0;\r\n}\r\n#uploader_error {\r\n\tbackground:#fce5e5;\r\n\tmargin:0 30px;\r\n\tborder: 1px solid #9d9d9d;\r\n\tborder-width: 0 1px 1px 1px;\r\n\tborder-bottom-color:#e4e4e4;\r\n\tpadding: 0 0 0 10px;\r\n\tcolor:#dd0000;\r\n\tfont-size: 12px;\r\n\tline-height:20px;\r\n}\r\n.upload-success, .upload-error {\r\n    padding: 0 0 0 10px;\r\n\tfont-size: 12px;\r\n\tline-height:20px;\r\n}\r\n.upload-success {\r\n\tborder: 1px solid #65A539;\r\n    color: #65A539;\r\n    background-color: #EFF6EB;\r\n}\r\n.upload-error {\r\n\tbackground:#fce5e5;\r\n\tborder: 1px solid #dd0000;\r\n\tcolor:#dd0000;\r\n}\r\n\r\n/*--- popup upload ---*/\r\n.message-holder\r\n{\r\n\theight: 26px;\r\n}\r\n\r\n.message-holder .false {\r\n    color: #cc0000;\r\n}\r\n\r\n/*---  System messages ---*/\r\n.info_message {\r\n    font-weight: bold;\r\n    font-size: 10pt;\r\n    color: #239f34;\r\n}\r\n.error_message {\r\n    font-weight: bold;\r\n    font-size: 10pt;\r\n    color: #de3d3d;\r\n}\r\n\r\n/*---  Topics Popup ---*/\r\n.pop-up h1 {\r\n\tpadding:0 0 0 20px;\r\n\tmargin: 10px 0 0;\r\n\tbackground:none;\r\n    border-bottom: none;\r\n    box-shadow:none;\r\n\tfloat:none;\r\n}\r\nbody.pop-up {\r\n\tmargin-top:120px;\r\n}\r\n.fixed-top {\r\n\tposition:fixed;\r\n\tbackground:#f5f5f5;\r\n\ttop:0;\r\n\tleft:0;\r\n\twidth:100%;\r\n}\r\n.pop-up ul.tree {\r\n    width: 70%;\r\n\tpadding:0 0 0 33px;\r\n}\r\n\r\n.fixed-top fieldset.buttons {\r\n\tmargin-bottom:0;\r\n}\r\n\r\n.fixed-top fieldset.buttons .input_text {\r\n    width: 40%;\r\n\tmin-width:180px;\r\n}\r\n.pop-up p {\r\n\tfont-size:1.2em;\r\n\tline-height:140%;\r\n}\r\n.pop-up > p {\r\n\tmargin-left:32px;\r\n}\r\n/*---  Backup/Restore ---*/\r\n\r\n.wrapper .table_list, .wrapper fieldset.buttons, .wrapper .box_table {\r\n\tmargin-left:0;\r\n\tmargin-right:0;\r\n}\r\n.wrapper .action_buttons {\r\n\tpadding-left:0;\r\n}\r\n.mid-sized {\r\n\twidth:60%;\r\n\tmin-width:800px;\r\n}\r\n.full-sized {\r\n\twidth:100%;\r\n}\r\n\r\n.box_table td label {\r\n\tfont-size:13px;\r\n\tpadding:0 7px 0 0;\r\n}\r\n\r\nfieldset {\r\n\tpadding:10px;\r\n\tborder:1px solid #cccccc;\r\n\tmargin:10px 0;\r\n}\r\n\r\n/*---  User Management ---*/\r\n\r\n.user-management {\r\n\tmargin-bottom:10px;\r\n}\r\n.user-management fieldset:last-child {\r\n\tmargin-bottom:0;\r\n}\r\n.user-management fieldset .input_text, .user-management fieldset .input_select {\r\n\tfloat:none;\r\n\tmargin-right:4px;\r\n}\r\n.user-management fieldset  {\r\n\tfont-size:12px;\r\n}\r\n.user-management fieldset > legend  {\r\n\tfont-size:13px;\r\n}\r\n.user-management .info-text {\r\n    color: #808080;\r\n    float: none;\r\n    font-size: 12px;\r\n    padding: 0 20px 0 8px;\r\n}\r\n.user-management fieldset.plain label, .user-management fieldset.plain .input_text {\r\n\tfloat:left;\r\n\tclear:none;\r\n}\r\n.user-management fieldset.plain label {\r\n\tmargin: 0 10px 0 20px;\r\n\tpadding:2px 0 0 0;\r\n}\r\n.user-management fieldset.plain label:first-child {\r\n\tmargin-left: 0;\r\n}\r\n.float-list {\r\n\tfloat:left;\r\n\tmargin:0;\r\n\tpadding:0;\r\n\twidth:auto;\r\n}\r\n.float-list li {\r\n\tfloat:left;\r\n\tmargin:0 0 2px 0;\r\n\tpadding:0 20px 0 0;\r\n\tmin-height:25px;\r\n}\r\n.user-management  fieldset.plain .float-list .input_text {\r\n\tmargin-right:0px;\r\n}\r\n.float-list li:last-child {\r\n\tpadding:0;\r\n}\r\n.no-table-data {\r\n\tpadding:10px;\r\n\tfont-size:13px;\r\n\tborder:1px solid #9d9d9d;\r\n\tbackground:#eeeeee;\r\n}\r\n\r\n.widget .wikipedia {\r\n    padding: 0 8px 65px;\r\n    background: transparent url('images/wikipedia-logo.png') no-repeat 5% 100%;\r\n    border: none;\r\n}\r\n\r\n.widget .wikipedia input {\r\n    line-height: 1em;\r\n    padding: 5px;\r\n    font-size: 1.1em;\r\n    border: 1px solid #ccc;\r\n}\r\n\r\n.widget .wikipedia .search {\r\n    width: 34em;\r\n    background-color: #fff;\r\n    opacity: 0.8;\r\n}\r\n\r\ntable.message_box td {\r\n    font-size: 1.2em;\r\n    line-height: 1.5em;\r\n}\r\n\r\n/*--- TinyMCE Overrides ---*/\r\n\r\n.defaultSkin table.mceLayout {\r\n    width: 100% !important;\r\n}\r\n\r\n.map-thumb span {\r\n\tmargin:0;\r\n\tpadding:4px 0 4px 24px;\r\n\tfont-size:12px;\r\n\tdisplay:block;\r\n\tbackground:#f6f6f6 url(images/edit_small.png) no-repeat 7px 7px;\r\n\tborder-top:1px solid #cccccc;\r\n}\r\n.map-thumb:hover span {\r\n\tcolor:#fff;\r\n\tbackground-color:#007eb1;\r\n\tbackground-position: 7px -18px;\r\n\tborder-top:1px solid #007eb1;\r\n}\r\n\r\n.top-field, .top-field:last-child {\r\n\tmargin-bottom:8px;\r\n}\r\n\r\n/* fg menu */\r\n#menuLog {\r\n\tfont-size:1.4em;\r\n\tmargin:20px;\r\n}\r\n.hidden {\r\n\tposition:absolute;\r\n\ttop:0;\r\n\tleft:-9999px;\r\n\twidth:1px;\r\n\theight:1px;\r\n\toverflow:hidden;\r\n}\r\n.fg-button {\r\n\tmargin:0 2px 0 0;\r\n\tpadding: .4em 1em;\r\n\ttext-decoration:none !important;\r\n\tcursor:pointer;\r\n\tposition: relative;\r\n\ttext-align: center;\r\n\tzoom: 1;\r\n}\r\na.fg-button {\r\n\tfont-size:11px !important;\r\n\tfont-weight:bold !important;\r\n\ttext-transform: uppercase;\r\n}\r\n.fg-button .fg-button-ui-icon {\r\n\tposition: absolute;\r\n\ttop: 50%;\r\n\tmargin-top: -8px;\r\n\tleft: 50%;\r\n\tmargin-left: -8px;\r\n}\r\na.fg-button { float:left;  }\r\nbutton.fg-button {\r\n\twidth:auto;\r\n\toverflow:visible;\r\n} /* removes extra button width in IE */\r\n\r\n.fg-button-icon-left { padding-left: 2.1em; }\r\n.fg-button-icon-right { padding-right: 2.1em; }\r\n.fg-button-icon-left .fg-button-ui-icon { right: auto; left: .2em; margin-left: 0; }\r\n.fg-button-icon-right .fg-button-ui-icon { left: auto; right: .2em; margin-left: 0; }\r\n.fg-button-icon-solo { display:block; width:8px; text-indent: -9999px; }\t /* solo icon buttons must have block properties for the text-indent to work */\r\n.fg-button.ui-state-loading .fg-button-ui-icon { background: url(<?php echo $Campsite['ADMIN_STYLE_URL']; ?>/fg-menu/spinner_bar.gif) no-repeat 0 0; }\r\n\r\n\r\nul.navigation {\r\n    margin: 0;\r\n    padding: 0;\r\n}\r\n\r\nul.navigation li {\r\n    float: left;\r\n}\r\n\r\n.content .pager {\r\n    margin: 8px 0;\r\n    font-size: 1.2em;\r\n}\r\n\r\ntable + .pager {\r\n    margin-top: 0;\r\n}\r\n\r\n.content p {\r\n    font-size: 1.2em;\r\n}\r\n\r\n.content pre {\r\n    font-size: 12px;\r\n}\r\n\r\n/*--- Media Box ---*/\r\ndiv.image-thumbnail-container {\r\n    float:left;\r\n    width:80px;\r\n}\r\n\r\nul span.caption p {\r\n    margin: 0;\r\n    padding: 0;\r\n}\r\n\r\nul#edit-files h2 {\r\n    margin: 0;\r\n    padding: 8px;\r\n    font-size: 1.2em;\r\n    font-weight: bold;\r\n    overflow: hidden;\r\n}\r\n\r\n.widget div.loading p {\r\n    font-size: 1.3em;\r\n    margin: 0;\r\n    padding: 0.5em;\r\n}\r\n\r\n.pager.indent {\r\n    padding: 3px;\r\n    font-size: 1.1em;\r\n}\r\n\r\nul.edit {\r\n    margin: 0;\r\n    padding: 0;\r\n    font-size: 1.3em;\r\n}\r\n\r\nul.edit li {\r\n    width: 21em;\r\n    margin: 0 0 5px;\r\n    padding: 5px;\r\n    background-color: #fff;\r\n    -moz-box-shadow: 3px 3px 3px #ccc;\r\n    -webkit-box-shadow: 3px 3px 3px #ccc;\r\n    box-shadow: 3px 3px 3px #ccc;\r\n}\r\n\r\nul.edit a.delete {\r\n    float: right;\r\n    color: #cc3333;\r\n}\r\n/*--//////////////////////////////////////// 11.05.2011 ////////////////////////////////////////--*/\r\n.theme-settings {\r\n\twidth:800px;\r\n}\r\n\r\n.theme-settings .dataTables_wrapper {\r\n\tmargin:0;\r\n}\r\n.theme-settings .dataTables_wrapper .ui-widget-header {\r\n\tborder-width: 0 0 1px 0;\r\n}\r\n.theme-edit {\r\n\twidth: 90%; min-width: 1000px;\r\n\tpadding: 10px;\r\n\toverflow:hidden;\r\n}\r\n.theme-edit .button {\r\n\tmargin: 0 0 0 6px;\r\n}\r\n.theme-edit form dl {\r\n\tpadding:0;\r\n\tborder:none;\r\n}\r\ndl.right-floated {\r\n\ttext-align:left;\r\n\tmargin-left:0;\r\n}\r\n\r\n.theme-edit input[type=\"text\"] {\r\n    background-color: #FFFFFF;\r\n    border: 1px solid #9D9D9D;\r\n    font-family: Arial,Helvetica,sans-serif;\r\n    font-size: 12px;\r\n    height: 23px;\r\n    margin: 0;\r\n    padding: 0;\r\n    text-indent: 3px;\r\n    -moz-box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);\r\n    -webkit-box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);\r\n    box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);\r\n}\r\n.cacheLifetime {\r\n\tfont-size:12px;\r\n}\r\n.theme-edit .save-button-bar {\r\n\tfloat:none;\r\n\theight:30px;\r\n\ttext-align:right;\r\n\tmargin: 12px 0 10px 0;\r\n\tpadding:0 8px 0 0;\r\n}\r\n.theme-edit .save-button-bar .save-button {\r\n\tmargin: 0 0 0 10px;\r\n}\r\n.editor-toggle td {\r\n\tpadding:8px 0 0 0;\r\n}\r\n/*--//////////////////////////////////////// 12.05.2011 ////////////////////////////////////////--*/\r\n\r\n\r\n\t.versionHolder {\r\n\t\tpadding-bottom:0px;\r\n\t\t}\r\n\t\t.versionHolder dl {\r\n\t\t\toverflow:hidden;\r\n\t\t\tpadding:5px 0;\r\n\t\t\tbox-shadow:0 0 0 !important;\r\n\t\t\t}\r\n\t\t\t.versionHolder dl dt {\r\n\t\t\t\tfloat:left;\r\n\t\t\t\twidth:320px;\r\n\t\t\t\tmargin:0px !important;\r\n\t\t\t\t}\r\n\t\t\t\t.versionHolder dl dt label {\r\n\t\t\t\t\tfloat:left;\r\n\t\t\t\t\tfont-weight:bold; line-height:25px;\r\n\t\t\t\t\t}\r\n\t\t\t.versionHolder dl dd {\r\n\t\t\t\tfloat:left;\r\n\t\t\t\twidth:400px;\r\n\t\t\t\tmargin-bottom:12px;\r\n\t\t\t\t}\r\n\t\t\t\t.versionHolder dl dd input {\r\n\t\t\t\t\tfloat:left;\r\n\t\t\t\t\twidth:40px; height:23px;\r\n\t\t\t\t\tmargin-right:10px !important;\r\n\t\t\t\t\t}\r\n\t\t\t\t.versionHolder dl dd span {\r\n\t\t\t\t\tfont-size:12px; font-style:italic; line-height:25px;\r\n\t\t\t\t\t}\r\n\t.themeSettingsTabs {\r\n\t\tposition:relative;\r\n\t\t}\r\n\t\t.addNewOutput {\r\n\t\t\tposition:absolute; right:0px; top:14px; display:block;\r\n\t\t\tpadding-left:14px;\r\n\t\t\tcolor:#007fb3 !important;\r\n\t\t\tbackground:url(images/add.png) left 2px no-repeat;\r\n\t\t\t}\r\n\t\t\t.addNewOutput:hover {\r\n\t\t\t\ttext-decoration:underline;\r\n\t\t\t\t}\r\n\t.themeSettingsTabsNav {\r\n\t\tbackground:none;\r\n\t\tborder:none;\r\n\t\tborder-bottom:1px solid #9d9d9d !important;\r\n\t\t}\r\n\t\t.themeSettingsTabsNav li {\r\n\t\t\tbackground:#ffffff !important;\r\n\t\t\tborder:none !important;\r\n\t\t\t}\r\n\t\t\t.themeSettingsTabsNav li.ui-tabs-selected {\r\n\t\t\t\tborder:1px solid #9d9d9d !important;\r\n\t\t\t\tborder-bottom:none !important;\r\n\t\t\t\t}\r\n\t\t\t.themeSettingsTabsNav li a:hover {\r\n\t\t\t\tcolor:#444444 !important;\r\n\t\t\t\t}\r\n\t.templateSettings dl {\r\n\t\toverflow:hidden;\r\n\t\tpadding:5px 0;\r\n\t\tbox-shadow:0 0 0 !important;\r\n\t\t}\r\n\t\t.templateSettings dl dt {\r\n\t\t\tfloat:left;\r\n\t\t\twidth:320px;\r\n\t\t\tmargin:0px !important;\r\n\t\t\t}\r\n\t\t\t.templateSettings  dl dt label {\r\n\t\t\t\tfloat:left;\r\n\t\t\t\twidth:320px;\r\n\t\t\t\tfont-weight:bold; line-height:25px;\r\n\t\t\t\t}\r\n\t\t.templateSettings dl dd {\r\n\t\t\tfloat:left;\r\n\t\t\twidth:400px;\r\n\t\t\tmargin-bottom:12px;\r\n\t\t\t}\r\n\t\t\t.templateSettings dl dd select {\r\n\t\t\t\tfloat:left;\r\n\t\t\t\twidth:200px;\r\n\t\t\t\t}\r\n\t.themeArticleType {\r\n\t\tfloat:left;\r\n\t\twidth:300px;\r\n\t\tmargin-right:20px; padding-top:10px;\r\n\t\t}\r\n\t\t.themeArticleType h4 {\r\n\t\t\tpadding:5px 10px; margin-top:0px;\r\n\t\t\tcolor:#000000;\r\n\t\t\tbackground:#ebebeb;\r\n\t\t\t}\r\n\t\t.themeArticleType span {\r\n\t\t\tdisplay:block;\r\n\t\t\tfont-weight:bold; font-size:13px;\r\n\t\t\t}\r\n\t\t.themeArticleType ul {\r\n\t\t\tmargin-bottom:20px;\r\n\t\t\t}\r\n\t\t\t.themeArticleType ul li {\r\n\t\t\t\theight:25px;\r\n\t\t\t\tpadding-left:15px;\r\n\t\t\t\tfont-size:13px; line-height:56px;\r\n\t\t\t\tbackground:url(images/theme-settings-dotted-line.png) left top no-repeat;\r\n\t\t\t\t}\r\n\t.matchWithExisting {\r\n\t\tfloat:left;\r\n\t\twidth:440px;\r\n\t\tpadding-top:10px;\r\n\t\t}\r\n\t\t.matchWithExisting h4 {\r\n\t\t\tpadding:5px 10px; margin-top:0px;\r\n\t\t\tcolor:#000000;\r\n\t\t\tbackground:#ebebeb;\r\n\t\t\t}\r\n\t\t.matchWithExisting ul li {\r\n\t\t\toverflow:hidden;\r\n\t\t\tpadding:8px 0 2px 0;\r\n\t\t\t}\r\n\t\t\t.matchWithExisting ul li.withPadding {\r\n\t\t\t\tpadding-left:25px;\r\n\t\t\t\tbackground:url(images/theme-settings-dotted-line.png) 10px -5px no-repeat;\r\n\t\t\t\t}\r\n\t\t\t.matchWithExisting ul li div {\r\n\t\t\t\tfloat:left;\r\n\t\t\t\tpadding:5px 10px; margin-right:10px;\r\n\t\t\t\tbackground:#f1f1f1;\r\n\t\t\t\t-moz-border-radius: 3px;\r\n\t\t\t\t-webkit-border-radius: 3px;\r\n\t\t\t\t}\r\n\t\t\t\t.matchWithExisting ul li div input {\r\n\t\t\t\t\tfloat:left;\r\n\t\t\t\t\tmargin:0px 5px 0 0;\r\n\t\t\t\t\t}\r\n\t\t\t\t.matchWithExisting ul li div label {\r\n\t\t\t\t\tdisplay:block; float:left;\r\n\t\t\t\t\tline-height:normal;\r\n\t\t\t\t\t}\r\n\t\t\t\t.matchWithExisting ul li div.active {\r\n\t\t\t\t\tbackground:#c6dfe9;\r\n\t\t\t\t\t}\r\n\t\t\t\t.matchWithExisting ul li select {\r\n\t\t\t\t\twidth:140px;\r\n\t\t\t\t\t}\r\n\t.themeSettingsBtn {\r\n\t\tfloat:right;\r\n\t\t}\r\n\t.currentDirectory {\r\n\t\toverflow:hidden;\r\n\t\tpadding:0px; margin-top:0px;\r\n\t\t}\r\n\t\t.currentDirectory li {\r\n\t\t\tfloat:left;\r\n\t\t\tmargin-right:5px;\r\n\t\t\tfont-weight:bold;\r\n\t\t\t}\r\n\t\t.themeTemplatesActionHolder {\r\n\t\t\tpadding:0px;\r\n\t\t\tborder:none;\r\n\t\t\t}\r\n\t\t\t.themeTemplatesActionHolder select {\r\n\t\t\t\twidth:150px;\r\n\t\t\t\t}\r\n\t.themeTemplatesTable {\r\n\t\t}\r\n\t\t.themeTemplatesTable tbody tr td a{\r\n\t\t\tcolor:#047eb4;\r\n\t\t\t}\r\n\t\t.themeTemplatesTable tbody tr td a:hover {\r\n\t\t\tcolor:#047eb4; text-decoration:underline;\r\n\t\t\t}\r\n\t\t.upOneLevel {\r\n\t\t\tdisplay:block; float:left;\r\n\t\t\tpadding-left:15px; margin-left:5px; line-height:17px;\r\n\t\t\tbackground:url(images/up-one-level.png) left 4px no-repeat;\r\n\t\t\t}\r\n\t\t.themeTemplatesTable tbody tr td a.folder {\r\n\t\t\tdisplay:block; float:left;\r\n\t\t\tpadding-left:15px;\r\n\t\t\tbackground:url(images/theme-templates-folder.png) left 4px no-repeat;\r\n\t\t\t}\r\n\t\t.themeTemplatesTable tbody tr td a.file {\r\n\t\t\tdisplay:block; float:left;\r\n\t\t\tpadding-left:15px;\r\n\t\t\tbackground:url(images/theme-templates-file.png) left 4px no-repeat;\r\n\t\t\t}\r\n\t\t.actionDropDown {\r\n\t\t\tmargin:0px !important; padding:0px !important;\r\n\t\t\t}\r\n\t\t\t.actionDropDown li {\r\n\t\t\t\tposition:relative; float:right;\r\n\t\t\t\t}\r\n\t\t\t\t.actionDropDown li a {\r\n\t\t\t\t\tdisplay:block;\r\n\t\t\t\t\twidth:62px; height:18px;\r\n\t\t\t\t\tpadding-left:8px;\r\n\t\t\t\t\tline-height:18px; color:#007fb3; text-align:left;\r\n\t\t\t\t\tbackground:url(images/actions-btn-bgr.png) 55px 0px no-repeat;\r\n\t\t\t\t\t-moz-border-radius: 3px;\r\n\t\t\t\t\t-webkit-border-radius: 3px;\r\n\t\t\t\t\t}\r\n\t\t\t\t\t.actionDropDown li a:hover, .actionDropDown li a.active {\r\n\t\t\t\t\t\tcolor:#ffffff !important; text-decoration:none !important;\r\n\t\t\t\t\t\tbackground-position:55px -18px;\r\n\t\t\t\t\t\tbackground-color:#9d9d9d;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t.actionDropDown li ul {\r\n\t\t\t\t\tdisplay:none; position:absolute; top:15px; left:0px; z-index:3;\r\n\t\t\t\t\twidth:160px;\r\n\t\t\t\t\tmargin:0px !important;\r\n\t\t\t\t\tpadding:0px !important;\r\n\t\t\t\t\tborder:1px solid #9d9d9d;\r\n\t\t\t\t\t}\r\n\t\t\t\t\t.actionDropDown li ul li {\r\n\t\t\t\t\t\tborder-bottom:1px solid #e5e5e5;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t.actionDropDown li ul li a, .actionDropDown li ul li a.active {\r\n\t\t\t\t\t\twidth:135px; height:25px;\r\n\t\t\t\t\t\tpadding:0 0 0 25px;\r\n\t\t\t\t\t\tline-height:25px; color:#444444 !important; text-decoration:none !important;\r\n\t\t\t\t\t\tbackground-color:#ffffff;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t.actionDropDown li ul li a.newFolder {\r\n\t\t\t\t\t\t\tbackground:url(images/new-folder.png) 5px 6px no-repeat #ffffff;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t.actionDropDown li ul li a.newTemplate {\r\n\t\t\t\t\t\t\tbackground:url(images/solo_icons.png) 7px -84px no-repeat #ffffff;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t.actionDropDown li ul li a.rename {\r\n\t\t\t\t\t\t\tbackground:url(images/rename.png) 5px 6px no-repeat #ffffff;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t.actionDropDown li ul li a.duplicate {\r\n\t\t\t\t\t\t\tbackground:url(images/duplicate.png) 5px 6px no-repeat #ffffff;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t.actionDropDown li ul li a.delete {\r\n\t\t\t\t\t\t\tbackground:url(images/topics_delete.png) 5px 6px no-repeat #ffffff\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t.actionDropDown li ul li a:hover {\r\n\t\t\t\t\t\t\tcolor:#007fb3 !important; text-decoration:none !important;\r\n\t\t\t\t\t\t\tbackground-color:#f5f5f5 !important;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t.actionDropDown li ul li ul {\r\n\t\t\t\t\t\t\tposition:absolute; display:none; top:-1px; left:160px;\r\n\t\t\t\t\t\t\twidth:160px;\r\n\t\t\t\t\t\t\tmargin:0px !important;\r\n\t\t\t\t\t\t\tpadding:0px !important;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t.actionDropDown li ul li ul li a, .actionDropDown li ul li ul li a.active {\r\n\t\t\t\t\t\t\t\twidth:140px !important;\r\n\t\t\t\t\t\t\t\tpadding:0 10px !important;\r\n\t\t\t\t\t\t\t\tbackground-image:none !important;\r\n\t\t\t\t\t\t\t\t}\r\n\r\nul.navigation {\r\n    margin: 0;\r\n    padding: 0;\r\n}\r\n\r\nul.navigation li {\r\n    float: left;\r\n}\r\n\r\n.content .pager {\r\n    margin: 8px 0;\r\n    font-size: 1.2em;\r\n}\r\n\r\ntable + .pager {\r\n    margin-top: 0;\r\n}\r\n\r\n.content p {\r\n    font-size: 1.2em;\r\n}\r\n\r\n.content pre {\r\n    font-size: 12px;\r\n}\r\n\r\n/*--- Media Box ---*/\r\ndiv.image-thumbnail-container {\r\n    float:left;\r\n    width:80px;\r\n}\r\n\r\nul#edit-files h2 {\r\n    margin: 0;\r\n    padding: 8px;\r\n    font-size: 1.2em;\r\n    font-weight: bold;\r\n    overflow: hidden;\r\n}\r\n\r\n.widget div.loading p {\r\n    font-size: 1.3em;\r\n    margin: 0;\r\n    padding: 0.5em;\r\n}\r\n\r\n.pager.indent {\r\n    padding: 3px;\r\n    font-size: 1.1em;\r\n}\r\n\r\n.main-menu-bar ul.navigation ul {\r\n    display: none;\r\n}\r\n.datatable tr td.dataTables_empty {\r\n\tpadding: 5px 0 5px 7px;\r\n}\r\n\r\n\r\n.action-list a.actionButton {\r\n    color: #444444 !important;\r\n\tbackground-color:#ebebeb;\r\n    background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#fafafa), to(#ebebeb));\r\n\tbackground-image: -moz-linear-gradient(center top , #fafafa 0pt, #ebebeb 100%);\r\n    border: 1px solid #9d9d9d;\r\n\tdisplay: inline-block;\r\n    height: 22px;\r\n    line-height: 22px;\r\n    padding: 0 10px 0 10px;\r\n\tfont-size:12px;\r\n}\r\n.action-list a.actionButton:hover {\r\n    color: #444444 !important;\r\n\tbackground-color:#d9d9d9;\r\n    background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#fafafa), to(#d9d9d9));\r\n\tbackground-image: -moz-linear-gradient(center top , #fafafa 0pt, #d9d9d9 100%);\r\n    border-color: #656565;\r\n    -moz-box-shadow: 0 1px 1px rgba(0,0,0,.20);\r\n    -webkit-box-shadow: 0 1px 1px rgba(0,0,0,.20);\r\n    box-shadow: 0 1px 1px rgba(0,0,0,.20);\r\n}\r\n\r\n.comments-block .buttons a {\r\n    margin: 0 8px 0 0;\r\n}\r\n\r\n.comments-block .action-list li {\r\n    float: left;\r\n}\r\n\r\n.comments-block textarea {\r\n    width: 99.5%;\r\n    height: 8em;\r\n    font-size: 1.2em;\r\n}\r\n\r\nabbr {\r\n    border-bottom: 0.1em dotted;\r\n    cursor: help;\r\n}\r\n\r\n#message.comment {\r\n    position: static;\r\n}\r\n\r\n/* Set zindex for external toolbar, conflicts with jCrop */\r\n.mceExternalToolbar {\r\n    z-index: 500;\r\n}\r\n\r\n#fancybox-content {\r\n\tborder-width: 0px !important;\r\n\twidth: 100% !important;\r\n}\r\n"
  },
  {
    "path": "newscoop/admin-style/admin_stylesheet_context.css",
    "content": ".datatable {\n    border: 1px solid #9d9d9d;\n    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1) inset;\n    background: #f9f9f9;\n    margin: 5px 0 0;\n    max-height: 330px;\n    padding-bottom: 20px;\n}\n.item-active    {\n    background: #ebf5f9;\n}\n.ui-widget-header + .datatable {\n    border-width: 1px 1px 1px 1px;\n}\na {\n    color: #007fb3;\n    text-decoration:none;\n}\n\n.datatable tr td, .datatable tr th {\n    border-color: #EBEBEB;\n    border-style: solid;\n    border-width: 0 0 0 0!important;\n    font-size: 12px;\n    padding: 0px 0px 0px 0px!important;\n}\n\n.ui-widget-header {\n    border: 0px!important;\n}\n\nfieldset {\n    border: 0px;\n}\n\nfieldset.closed {\n    border-width: 1px 0 0 0!important;\n}\n\n.ui-buttonset .ui-button {\n    margin-right: 2px;\n}\n.ui-widget-header{\n    background: none !important;\n    font-weight: normal !important;\n}\n\n.dataTables_info {\n    color: #696969;\n    font-size: 11px;\n    font-weight: normal;\n    margin: 3px 0 0;\n    padding: 6px 0;\n}\n\n#drag-here-to-add-to-list {\n    border: 2px #CCCCCC dashed; \n    height: 45px; \n    width: 439px; \n    margin: 4px 9px; \n    padding: 20px 5px 0px 26px;\n    color: #CCCCCC;\n    font-size: 20px;\t\n}\n\n/* Fix for author and creator filter in content search */\n.smartlist fieldset div.select2 {\n    margin-right: 13px;\n    width: 256px;\n}\n"
  },
  {
    "path": "newscoop/admin-style/admin_stylesheet_new.css",
    "content": "small, address {\r\n\tfont-size: 10px;\r\n\tcolor:#6c6c6c;\r\n}\r\na {\r\n\tcolor: #007fb3;\r\n\ttext-decoration:none;\r\n}\r\n\r\n\r\nform {\r\n\tdisplay:inline;\r\n}\r\n\r\nimg {\r\n    border-style: none;\r\n}\r\n\r\n\r\nhr {\r\n\tcolor: #CCC;\r\n\tbackground-color: #CCC;\r\n\tborder:none;\r\n\theight:1px;\r\n}\r\n\r\n.input_text_area {\r\n\tborder: 1px solid #9D9D9D;\r\n\tbackground:#fff url(images/input_bg.png) repeat-x 0 0;\r\n\ttext-indent: 3px;\r\n\tfont-size: 13px;\r\n}\r\n\r\n.input_textarea {\r\n\tborder: 1px solid #777;\r\n\tbackground-color: #f0f0ff;\r\n\tfont-size: 9pt;\r\n}\r\n\r\n.input_text_disabled {\r\n\tborder: 1px solid grey;\r\n\tbackground-color: #f0f0ff;\r\n\ttext-indent: 3px;\r\n\tfont-size: 9pt;\r\n}\r\n\r\n.input_checkbox {\r\n    height:13px;\r\n    width:13px;\r\n    margin:0;\r\n    padding:0;\r\n    border:none;\r\n    outline:none;\r\n}\r\n\r\n.table_list {\r\n    border: 1px solid #9d9d9d;\r\n    font-size: 12px;\r\n    margin-left: 30px;\r\n    margin-right: 0;\r\n    -moz-box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n    -webkit-box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n    box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n}\r\n\r\n.table_list td {\r\n    padding: 3px 6px;\r\n}\r\n\r\n.table_list_header td {\r\n    background: -moz-linear-gradient(center top , #fbfbfb 0pt, #f8f8f8 100%) repeat scroll 0 0 transparent;\r\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fbfbfb), color-stop(100%, #f8f8f8));\r\n    border-bottom: 1px solid #9d9d9d;\r\n    color: #444444;\r\n    font-weight: normal;\r\n    padding: 5px 6px;\r\n}\r\n.table_list_header td table td {\r\n    background: transparent;\r\n    border-bottom: none;\r\n    color: #444444;\r\n    font-weight: normal;\r\n    padding: 0 3px;\r\n}\r\n.list_row_odd {\r\n    background-color: #fff;\r\n}\r\n\r\n.list_row_even {\r\n    background-color:#F9F9F9;\r\n}\r\n\r\n.indent {\r\n    margin-left: 30px;\r\n}\r\n\r\n.action_buttons {\r\n    padding-left: 30px;\r\n    font-size:12px;\r\n}\r\n.action_buttons td {\r\n    padding-right: 6px;\r\n}\r\n\r\n.box_table {\r\n    background-color: #fff;\r\n    border: 1px solid #9d9d9d;\r\n    float: none;\r\n    margin: 5px 5px 0 30px;\r\n    -moz-box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n    -webkit-box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n    box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n}\r\n.box_table td {\r\n    font-size: 13px;\r\n    padding: 6px 8px;\r\n}\r\n\r\n.box_table td.pass table {\r\n    padding: 0;\r\n}\r\n.box_table td.pass table td, .box_table td table td  table td {\r\n    padding: 0;\r\n}\r\n.box_table .input_text {\r\n\tmargin-right:7px;\r\n\tfloat:none;\r\n}\r\n\r\nfieldset.controls, fieldset.buttons, fieldset.filters, fieldset.actions {\r\n    margin: 15px 30px;\r\n    padding: 10px;\r\n    border: 1px solid #ccc;\r\n}\r\nfieldset.buttons {\r\n    background-color: #fff;\r\n}\r\n\r\nfieldset.buttons.active {\r\n    position: fixed;\r\n    top: 0;\r\n    left: -5px;\r\n    background-color: #ffec85;\r\n    opacity: 0.9;\r\n}\r\n\r\nfieldset.controls div {\r\n    margin-bottom: 5px;\r\n}\r\n\r\nfieldset.filters select {\r\n    margin-right: 13px;\r\n}\r\n\r\nfieldset dl {\r\n    margin: 0 0 5px;\r\n}\r\n\r\nfieldset dl dd {\r\n    margin-left: 0;\r\n}\r\n\r\nfieldset.closed {\r\n    margin-bottom: -21px;\r\n    border-width: 1px 0 0;\r\n    -moz-border-radius: 0;\r\n    border-radius: 0;\r\n}\r\n\r\nfieldset.filters a.reset {\r\n    display: inline-block;\r\n    margin: 8px 2px 0;\r\n    font-size: 0.9em;\r\n}\r\n/*------ Tree View & Sortable ----------*/\r\n\r\n/** basic tree */\r\nul.tree {\r\n    width: 300px;\r\n}\r\n\r\nul.tree li {\r\n    width: 100%;\r\n    padding: 3px;\r\n    border-top: 1px solid #ccc;\r\n}\r\n\r\nul.tree li.odd {\r\n    background-color: #f9f9f9;\r\n}\r\n\r\nul.tree li li {\r\n    border-top: none;\r\n}\r\n\r\nul.tree img {\r\n    border: none;\r\n}\r\n\r\nul.tree li > span, ul.tree li > a {\r\n    display: block;\r\n    float: left;\r\n    width: 10px;\r\n    text-align: center;\r\n    cursor: default;\r\n}\r\n\r\nul.tree li > a {\r\n    cursor: pointer;\r\n}\r\n\r\nul.tree label.match {\r\n    font-weight: bold;\r\n    color: #006699;\r\n}\r\n\r\n/** sortable tree */\r\nul.tree.sortable {\r\n    width: auto;\r\n    height: 1%;\r\n    overflow: hidden;\r\n    margin: 0 23px 30px 30px;\r\n    padding: 0;\r\n}\r\n\r\nul.tree.sortable li {\r\n    float: left;\r\n    clear: left;\r\n    width: auto;\r\n    margin: 8px 0 0;\r\n    padding: 0;\r\n    background-color: transparent;\r\n    border: none;\r\n}\r\n\r\nul.tree.sortable a, ul.tree.sortable span {\r\n    display: inline;\r\n    float: none;\r\n    width: auto;\r\n    cursor: auto;\r\n}\r\n\r\nul.tree.sortable .item {\r\n    float: left;\r\n    clear: left;\r\n    background: #f8f8f8;\r\n    border: 1px solid #ccc;\r\n    border-top-width: 0;\r\n    cursor: move;\r\n    background: #ffffff url(images/topics_bg.png) repeat-x 0 0; \r\n}\r\n\r\nul.tree.sortable .item:first-child {\r\n    border-top-width: 1px;\r\n}\r\n\r\nul.tree.sortable .item > div {\r\n    width: 600px;\r\n    height: 1%;\r\n    overflow: hidden;\r\n    margin: 0;\r\n    padding: 6px 5px 6px 18px;\r\n    font-size: 1.2em;\r\n    background: transparent url(images/topics_drag.png) no-repeat 6px 6px;\r\n}\r\n\r\nul.tree.sortable .item_alt {\r\n    float: left;\r\n    clear: left;\r\n    background: #f8f8f8;\r\n    border: 1px solid #ccc;\r\n    cursor: move;\r\n}\r\n\r\nul.tree.sortable .item_alt > div {\r\n    width: 600px;\r\n    height: 1%;\r\n    padding: 6px 5px 6px 18px;\r\n    background: transparent url(images/topics_drag.png) no-repeat 6px 6px;\r\n}\r\n\r\nul.tree.sortable .open {\r\n    background: transparent none no-repeat 3px 3px;\r\n}\r\n\r\nul.tree.sortable .open.closed {\r\n    padding-left: 18px;\r\n    background-image: url('images/topics_open.png');\r\n    cursor: pointer;\r\n}\r\n\r\nul.tree.sortable .open.opened {\r\n    padding-left: 18px;\r\n    background-image: url('images/topics_close.png');\r\n    cursor: pointer;\r\n}\r\n\r\nul.tree.sortable .open * {\r\n    cursor: pointer;\r\n}\r\n\r\nul.tree.sortable .item.active {\r\n    background: #f9f9f9;\r\n}\r\n\r\nul.tree.sortable .item.match {\r\n    background: #fff56e;\r\n}\r\n\r\nul.tree.sortable .item strong {\r\n    color: #007fb3;\r\n    cursor: pointer;\r\n}\r\n\r\nul.tree.sortable fieldset {\r\n    margin: 16px 5px 16px 0;\r\n    padding: 10px;\r\n    border: 1px solid #ccc;\r\n}\r\n\r\nul.tree.sortable fieldset select {\r\n    margin-bottom: 3px;\r\n}\r\n\r\nul.tree.sortable .icon {\r\n    position: relative;\r\n    display: block;\r\n    float: right;\r\n    width: 11px;\r\n    height: 11px;\r\n    margin: 3px 5px 0 3px;\r\n    background: transparent none;\r\n    cursor: pointer;\r\n    text-decoration: none;\r\n    font-size: 0.9em;\r\n    text-indent:9999px;\r\n    overflow:hidden;\r\n}\r\n\r\nul.tree.sortable .icon span {\r\n    display: block;\r\n    position: absolute;\r\n    top: 0;\r\n    left: 0;\r\n    width: 14px;\r\n    height: 14px;\r\n    background: transparent none no-repeat 0 0;\r\n    z-index: 1000;\r\n    cursor: pointer;\r\n}\r\n\r\nul.tree.sortable .edit {\r\n    float: right;\r\n    margin-right: 12px;\r\n    padding-top: 1px;\r\n    padding-left: 15px;\r\n    font-size: 1em;\r\n    background: transparent url('images/topics_edit.png') no-repeat 0 50%;\r\n    cursor: pointer;\r\n}\r\n\r\nul.tree.sortable .icon.delete {\r\n    float: right;\r\n    margin-top: 2px;\r\n    width: 14px;\r\n    height: 14px;\r\n}\r\n\r\nul.tree.sortable .icon.delete span {\r\n    background-image: url('images/topics_delete.png');\t\r\n}\r\n\r\n\r\n/*------ END  Tree View & Sortable ----------*/\r\n\r\nfieldset.controls .input_text,\r\nfieldset.buttons .input_text,\r\nfieldset.filters .input_text,\r\nfieldset.actions .input_text {\r\n    float:none;\r\n    margin-right:4px;\r\n\r\n}\r\nfieldset.controls .input_text,\r\nfieldset.buttons .input_text,\r\nfieldset.filters .input_text,\r\nfieldset.actions .input_text {\r\n    float:none;\r\n    margin-right:4px;\r\n}\r\nfieldset.controls .input_text {\r\n    width: 413px;\r\n}\r\nfieldset.controls.search .input_text {\r\n    width: 540px;\r\n}\r\n/*------  Smartlist ----------*/\r\n\r\n.dataTables_wrapper {\r\n    margin: 16px 30px;\r\n}\r\n\r\n.author-list .dataTables_wrapper {\r\n    margin: 0;\r\n}\r\n#tabs .dataTables_wrapper {\r\n    margin: 13px 0 0;\r\n}\r\n\r\n\r\n.dataTables_scroll\r\n.dataTables_wrapper table.datatable {\r\n    width: 90%;\r\n}\r\n\r\n.dataTables_filter {\r\n\tpadding: 0 0 12px 0;\r\n\tfont-size:12px;\r\n\tcolor:#696969;\r\n}\r\n.dataTables_filter .input_text {\r\n\tfloat:none;\r\n\twidth:200px;\r\n\tmargin-left:6px;\r\n}\r\n.dataTables_length {\r\n\tpadding: 10px 0 ;\r\n\tfont-size:12px;\r\n\tcolor:#696969;\r\n\tfont-weight:normal;\r\n}\r\n\r\n\r\n\r\n.smartlist td { width: 5em; }\r\n.smartlist td.id { width: 1em; padding: 3px 0; text-align: center; }\r\n.smartlist td.name { width: 11em; overflow: hidden; }\r\n.smartlist td.flag { width: 50px; }\r\n.smartlist td.date { width: 6em; }\r\n\r\n.smartlist tbody tr.even td {\r\n    background-color: #f9f9f9;\r\n}\r\n\r\n.smartlist tbody tr.odd td {\r\n    background-color: #fff;\r\n}\r\n\r\n.smartlist tbody tr.odd.locked td {\r\n    background-color: #fce7f2;\r\n}\r\n\r\n.smartlist tbody tr.even.locked td {\r\n    background-color: #fcdaec;\r\n}\r\n\r\n.smartlist tbody tr.odd.selected td {\r\n    background-color: #EDF6F9;\r\n}\r\n\r\n.smartlist tbody tr.even.selected td {\r\n    background-color: #E5F2F7;\r\n}\r\n\r\n.smartlist tbody tr:hover td, .datatable tbody tr:hover td {\r\n    background-color: #cce5f0 !important;\r\n}\r\n\r\n.smartlist .ui-widget-header {\r\n    padding: 12px 12px 10px 12px;\r\n    background:#fff;\r\n}\r\n\r\n.DataTables_sort_wrapper .ui-icon {\r\n    display: block;\r\n    float: left;\r\n}\r\n\r\n.dataTables_paginate {\r\n    clear: both;\r\n    margin: 3px 0;\r\n}\r\n\r\n.ui-buttonset {\r\n    height: 1%;\r\n    overflow: hidden;\r\n}\r\n\r\n.ui-button {\r\n    float: left;\r\n    cursor: pointer;\r\n    padding: 2px 7px;\r\n    font-size:12px;\r\n    font-weight:normal;\r\n}\r\n\r\n.ui-buttonset .ui-button {\r\n    margin-right: 2px;\r\n}\r\n\r\n.smartlist fieldset {\r\n    float: left;\r\n    width: 30%;\r\n    margin-right: 0;\r\n    margin-left: 8px;\r\n}\r\n\r\n/*.smartlist fieldset:first-child {\r\n    margin-left: 30px;\r\n    }*/\r\n    .smartlist fieldset:first-child {\r\n        float: none;\r\n        margin: 16px 30px;\r\n        width: auto;\r\n    }\r\n    .smartlist fieldset.buttons {\r\n        float: none;\r\n        margin: 16px 30px;\r\n        width: auto;\r\n        background:#fff;\r\n    }\r\n    .smartlist fieldset select {\r\n        width: 256px;\r\n    }\r\n\r\n    .smartlist fieldset div.select2 {\r\n        margin-right: 13px;\r\n        width: 256px;\r\n    }\r\n\r\n    .smartlist .table {\r\n        clear: both;\r\n    }\r\n\r\n    .smartlist .extra {\r\n        margin-top: 8px;\r\n    }\r\n\r\n    .smartlist a.detach {\r\n        margin-left: 5px;\r\n        color: red;\r\n        font-weight: bold;\r\n        cursor: pointer;\r\n    }\r\n    .dataTables_info {\r\n       font-weight:normal;\r\n       font-size:11px;\r\n       color:#696969;\r\n       padding-bottom:10px;\r\n   }\r\n   .smartlist .ui-state-disabled,\r\n   .smartlist .ui-widget-content .ui-state-disabled,\r\n   .smartlist .ui-widget-header .ui-state-disabled,\r\n   .smartlist .ui-state-disabled:hover,\r\n   .smartlist .ui-widget-content .ui-state-disabled:hover,\r\n   .smartlist .ui-widget-header .ui-state-disabled:hover {\r\n    background-image: none;\r\n    background-color:#FFF;\r\n    border:1px solid #cecece;\r\n    color:#b2b3b2;\r\n}\r\n/*------ END  Smartlist ----------*/\r\n\r\n\r\n/*------ Author Management ----------*/\r\n.aliasContainer {\r\n\tfloat:left;\r\n}\r\n\r\n.authorAliasItem {\r\n\theight:25px;\r\n\tmargin-top:8px;\r\n}\r\n\r\n.aliasContainer .authorAliasItem:first-child {\r\n\tmargin-top:0px;\r\n}\r\n.authorThumb {\r\n\tbackground:#f5f5f5 url(images/author_thumb_bg_110x130.png) no-repeat 50% 50%;\r\n    border: 1px solid #9d9d9d;\r\n    float: left;\r\n    height: 130px;\r\n    padding: 0;\r\n    width: 110px;\r\n    overflow:hidden;\r\n}\r\n\r\nfieldset ul.nameList {\r\n    float: left;\r\n    margin-left: 28px;\r\n    width: 400px;\r\n}\r\n\r\n.textHolder {\r\n    float: left;\r\n    margin: 0 16px 0 0;\r\n    padding: 7px 0 10px 0;\r\n    width: 260px;\r\n}\r\n.textHolder textarea{\r\n    width: 100%;\r\n    margin:0;\r\n}\r\n.omega {\r\n    margin-right: 0;\r\n    width: auto;\r\n}\r\n.authorlist span.author-type-label {\r\n    color: #8a8a8a;\r\n    font-weight: bold;\r\n}\r\n.\r\n/*------ END Author Management ----------*/\r\n\r\n/*------ DataTables ----------*/\r\n.DataTables_sort_wrapper .ui-icon {\r\n    display: block;\r\n    float: left;\r\n}\r\n\r\n.datatable tbody tr.even td {\r\n    background-color: #F9F9F9;\r\n}\r\n.datatable tbody tr.selected td {\r\n    background-color: #EDF6F9;\r\n}\r\n\r\n.datatable tbody tr.even.selected td {\r\n    background-color: #E5F2F7;\r\n}\r\n\r\n\r\n\r\n/*------ END DataTables ----------*/\r\n\r\n\r\n/*------ Locations box ----------*/\r\n.geomap_list_location_enabled {}\r\n.geomap_list_location_disabled {\r\n    text-decoration: line-through;\r\n}\r\n\r\n.map-control-wrapper {\r\n    margin-left: 182px;\r\n}\r\n.map-control-wrapper h4 {\r\n    float:left;\r\n    font-size:13px;\r\n    font-weight:bold;\r\n    line-height:140%;\r\n    padding:0;\r\n    margin:10px 0 1px 15px;\r\n}   \r\n.geo_map_name {\r\n    margin:0;\r\n    clear:both;\r\n    padding-top: 10px;\r\n    font-size: 13px;\r\n}\r\n\r\n/*------ END Locations box ----------*/\r\n\r\n\r\n/** fixes */\r\nbody > .links {\r\n    margin: 13px 35px 0;\r\n    font-size: 1.3em;\r\n}\r\n\r\n.ColVis_collection.ui-buttonset {\r\n    height: auto;\r\n}\r\n\r\nfieldset.plain strong {\r\n    line-height: 22px;\r\n    font-size: 1.2em;\r\n}\r\n\r\ntd.name .ui-icon {\r\n    float: left;\r\n    margin: -2px 0 0 -2px;\r\n    cursor: help;\r\n}\r\n\r\n/*------ System Preferences ----------*/\r\n.system_pref {\r\n    background-color: #fff;\r\n    border: 1px solid #9d9d9d;\r\n    float: none;\r\n    margin: 30px 30px;\r\n    padding: 20px 20px 50px 20px;\r\n    -moz-box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n    -webkit-box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n    box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n}\r\n.system_pref h3 {\r\n    font-size: 18px;\r\n    border-bottom: 1px solid #ccc;\r\n    padding: 0 0 8px 0;\r\n}\r\n.system_pref input {\r\n    float:none !important;\r\n    background: #f0f0f0;\r\n    -webkit-box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.15);\r\n    -moz-box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.15);\r\n    box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.15);\r\n}\r\n.system_pref input:focus {\r\n    background-color: #fff;\r\n}\r\n.system_pref input[type=radio] {\r\n    -webkit-box-shadow: none;\r\n    -moz-box-shadow: none;\r\n    box-shadow: none;\r\n    margin-left: 4px;\r\n}\r\n.system_pref dl {\r\n}\r\n.system_pref dl dl {\r\n  margin: -5px 0 30px 30px;\r\n}\r\n.system_pref dl dl dd {\r\n    margin-bottom: 10px;\r\n    padding-top: 0;\r\n}\r\n.system_pref dl dl h4 {\r\n    margin: 0;\r\n    font-size: 13px;\r\n}\r\n.system_pref dt {\r\n    margin-bottom: 8px;\r\n    padding-top: 10px;\r\n}\r\n.system_pref dt label {\r\n    font-weight: bold;\r\n}\r\n.system_pref dd {\r\n    margin-bottom: 12px;\r\n    margin-left: 0;\r\n    font-size: 13px;\r\n}\r\n.system_pref dd .input_select {\r\n    background-color: #f0f0f0;\r\n    min-width: 280px;\r\n}\r\n.system_pref dd .input_select.wide {\r\n    min-width: 348px;\r\n}\r\n.system_pref dd .input_select:focus {\r\n    background-color: #fff;\r\n}\r\n.system_pref dd p {\r\n    margin-top: 7px;\r\n    max-width: 460px;\r\n    font-size: 13px;\r\n}\r\n.system_pref dd.border, \r\n.system_pref dt.border {\r\n    border-top:1px solid #ccc;\r\n    margin-top: 25px;\r\n    padding-top: 20px;\r\n}\r\n.alerts {\r\n    padding: 8px 35px 8px 14px;\r\n    margin-bottom: 20px;\r\n    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);\r\n    font-size: 14px;\r\n    line-height: 20px;\r\n    -webkit-border-radius: 4px;\r\n    -moz-border-radius: 4px;\r\n    border-radius: 4px;\r\n}\r\n.alert-success {\r\n    color: #468847;\r\n    background-color: #dff0d8;\r\n    border-color: #d6e9c6;\r\n}\r\n.alert-danger {\r\n    color: #b94a48;\r\n    background-color: #f2dede;\r\n    border-color: #eed3d7;\r\n}\r\n.popover-content {\r\n    font-weight: normal;\r\n    background-color: #F4FBFF;\r\n}\r\n.admin-font-size {\r\n    font-size: 10px;\r\n    font-family: Arial, Helvetica, sans-serif;\r\n}\r\n\r\n.ns_container {\r\n    background-color: #fff;\r\n    border: 1px solid #9d9d9d;\r\n    float: none;\r\n    margin: 10px 30px 30px 30px;\r\n    padding: 20px 20px 30px 20px;\r\n    -moz-box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n    -webkit-box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n    box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n}\r\n.ns_container h3 {\r\n    font-size: 18px;\r\n    border-bottom: 1px solid #ccc;\r\n    padding: 0 0 8px 0;\r\n}\r\n.ns_container input {\r\n    float:none !important;\r\n    background: #f0f0f0;\r\n    -webkit-box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.15);\r\n    -moz-box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.15);\r\n    box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.15);\r\n}\r\n.ns_container input:focus {\r\n    background-color: #fff;\r\n}\r\n.ns_container input[type=radio] {\r\n    -webkit-box-shadow: none;\r\n    -moz-box-shadow: none;\r\n    box-shadow: none;\r\n    margin-left: 4px;\r\n}\r\n\r\n.action-button {\r\n    font-size: 12px;\r\n    font-weight: normal;\r\n    line-height: 120%;\r\n    list-style: none;\r\n    margin: 0 6px 0 0;\r\n    position: relative;\r\n    text-decoration: none;\r\n    border: 1px solid #9D9D9D;\r\n    background-color: #f6f6f6;\r\n    display: block;\r\n    background: -moz-linear-gradient(top, #fafafa 0, #f6f6f6 100%);\r\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fafafa), color-stop(100%, #f6f6f6));\r\n    overflow: hidden;\r\n    padding: 3px 10px 4px 10px;\r\n    color: #3B3B3B;\r\n}\r\n\r\n.action-button:hover {\r\n    text-decoration: none;\r\n    border: 1px solid #007fb3;\r\n    color: #fff;\r\n    background-color: #007fb3;\r\n    background: -moz-linear-gradient(top, #409fc6 0, #007fb3 100%);\r\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #409fc6), color-stop(100%, #007fb3));\r\n}\r\n\r\n.action-button .glyphicon {\r\n    color: #007fb3;\r\n}\r\n\r\n.action-button .glyphicon:hover, .action-button:hover .glyphicon  {\r\n    color: white;\r\n}"
  },
  {
    "path": "newscoop/admin-style/app.css",
    "content": "#app {\n    font-size: 0.8em;\n    padding: 13px;\n}\n\n#app table {\n    margin: 8px 0;\n}\n\n#app input[type=\"number\"] {\n    border: 1px solid #ccc;\n}\n\n#ips-table {\n    width: 99%;\n}\n\n#ips-table input {\n    width: 55px;\n}\n"
  },
  {
    "path": "newscoop/admin-style/buttons.css",
    "content": "@charset \"utf-8\";\n/* CSS Document */\n\n\nbutton, input[type=\"submit\"], button.prime, input[type=\"submit\"].prime, .btn.prime {\n\tmargin:0 6px 0 0;\n\tbackground: -moz-linear-gradient(center top , #FAFAFA 0%, #F6F6F6 100%);\n\tbackground: linear-gradient(top, #FAFAFA 0%, #F6F6F6 100%);\n\tbackground: -webkit-linear-gradient(top, #FAFAFA 0%, #F6F6F6 100%);\n\tborder: 1px solid #9D9D9D;\n\tcolor: #444444;\n\tfont-family: Arial,Helvetica,sans-serif;\n\tfont-size: 12px;\n\tfont-weight: normal;\n\tline-height: 17px;\n\toutline: medium none;\n\tpadding: 3px 9px;\n    z-index: 2000;\n\t}\n\tbutton:hover, input[type=\"submit\"]:hover {\n\t\tbackground: -moz-linear-gradient(center top , #FAFAFA 0%, #eaeaea 100%);\n\t\tbackground: linear-gradient(top, #FAFAFA 0%, #eaeaea 100%);\n\t\tbackground: -webkit-linear-gradient(top, #FAFAFA 0%, #eaeaea 100%);\n\t\tborder: 1px solid #818181;\n\t\tcolor: #000;\n\t\tbox-shadow:0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 1) inset;\n\t\t}\n\tbutton:active, input[type=\"submit\"]:active {\n\t\tbackground: -moz-linear-gradient(center top , #FAFAFA 0%, #F6F6F6 100%);\n\t\tbackground: linear-gradient(top, #FAFAFA 0%, #F6F6F6 100%);\n\t\tbackground: -webkit-linear-gradient(top, #FAFAFA 0%, #F6F6F6 100%);\n\t\tborder: 1px solid #9D9D9D;\n\t\tcolor: #000;\n\t\tbox-shadow:0 1px 2px rgba(0, 0, 0, 0.3) inset;\n\t\t}\nbutton.prime, input[type=\"submit\"].prime, .btn.prime {\n\tbackground: -moz-linear-gradient(center top , #2290bd 0%, #007fb3 100%);\n\tbackground: linear-gradient(top, #2290bd 0%, #007fb3 100%);\n\tbackground: -webkit-linear-gradient(top, #2290bd 0%, #007fb3 100%);\n\tborder: 1px solid #007fb3;\n\tcolor: #FFF;\n\t}\n\tbutton.prime:hover, input[type=\"submit\"].prime:hover, .btn.prime:hover {\n\t\tbackground: -moz-linear-gradient(center top , #409FC6 0%, #007fb3 100%);\n\t\tbackground: linear-gradient(top, #409FC6 0%, #007fb3 100%);\n\t\tbackground: -webkit-linear-gradient(top, #409FC6 0%, #007fb3 100%);\n\t\tborder: 1px solid #005E85;\n\t\tbox-shadow:0 1px 2px rgba(0, 0, 0, 0.2), 0 1px 0px rgba(255, 255, 255, 0.3) inset;\n\t    color: #FFF;\n\t\t}\n\tbutton.prime:active, input[type=\"submit\"].prime:active, .btn.prime:active {\n\t\tbackground: -moz-linear-gradient(center top , #409FC6 0%, #007fb3 100%);\n\t\tbackground: linear-gradient(top, #409FC6 0%, #007fb3 100%);\n\t\tbackground: -webkit-linear-gradient(top, #409FC6 0%, #007fb3 100%);\n\t\tborder: 1px solid #005E85;\n\t\tbox-shadow:0 1px 2px rgba(0, 0, 0, 0.4) inset;\n\t    color: #FFF;\n\t\t}\n\n\n\n\n/* Bootstrap Buttons //////////////////////////////////////////////////////////////////////////\n/////////////////////////////////////////////////////////////////////////////////////////*/\n.btn {\n\tdisplay: inline-block;\n\tpadding: 3px 12px;\n\tmargin-bottom: 0;\n\tfont-size: 12px;\n\tline-height: 17px;\n\ttext-decoration:none;\n\tcolor: #444444;\n\ttext-align: center;\n\tvertical-align: middle;\n\tbackground-color: #f5f5f5;\n\tbackground-image: -moz-linear-gradient(top, #FAFAFA, #F6F6F6);\n\tbackground-image: -ms-linear-gradient(top, #FAFAFA, #F6F6F6);\n\tbackground-image: -webkit-gradient(linear, 0 0, 0 100%, from(#FAFAFA), to(#F6F6F6));\n\tbackground-image: -webkit-linear-gradient(top, #FAFAFA, #F6F6F6);\n\tbackground-image: -o-linear-gradient(top, #FAFAFA, #F6F6F6);\n\tbackground-image: linear-gradient(top, #FAFAFA, #F6F6F6);\n\tbackground-repeat: repeat-x;\n\tfilter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FAFAFA', endColorstr='#F6F6F6', GradientType=0);\n\tborder: 1px solid #9d9d9d;\n\tcursor: pointer;\n\t*margin-left: .3em;\n\t}\n\t.btn:hover {\n\t\tbackground-color: #eaeaea;\n\t\tbackground: -moz-linear-gradient(center top , #FAFAFA 0%, #eaeaea 100%);\n\t\tbackground: linear-gradient(top, #FAFAFA 0%, #eaeaea 100%);\n\t\tbackground: -webkit-linear-gradient(top, #FAFAFA 0%, #eaeaea 100%);\n\t\tfilter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FAFAFA', endColorstr='#eaeaea', GradientType=0);\n\t\tborder: 1px solid #818181;\n\t\tcolor: #000;\n\t\tbox-shadow:0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0px rgba(255, 255, 255, 1) inset;\n\t\t-webkit-transition: background-position 0.1s linear;\n\t\t-moz-transition: background-position 0.1s linear;\n\t\t-ms-transition: background-position 0.1s linear;\n\t\t-o-transition: background-position 0.1s linear;\n\t\ttransition: background-position 0.1s linear;\n\t\t}\n\t.btn:active, .btn.active, .btn.active:hover  {\n\t\tbackground-color: #F6F6F6;\n\t\tbackground: -moz-linear-gradient(center top , #FAFAFA 0%, #F6F6F6 100%);\n\t\tbackground: linear-gradient(top, #898989 0%, #FAFAFA 100%);\n\t\tbackground: -webkit-linear-gradient(top, #898989 0%, #F6F6F6 100%);\n\t\tfilter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FAFAFA', endColorstr='#F6F6F6', GradientType=0);\n\t\tborder: 1px solid #9D9D9D;\n\t\tcolor: #000;\n\t\tbox-shadow:0 1px 2px rgba(0, 0, 0, 0.3) inset;\n\t\t-webkit-transition: background-position 0.1s linear;\n\t\t-moz-transition: background-position 0.1s linear;\n\t\t-ms-transition: background-position 0.1s linear;\n\t\t-o-transition: background-position 0.1s linear;\n\t\ttransition: background-position 0.1s linear;\n\t\t}\n\t\t.btn.active:hover  {\n\t\t\tcursor:default;\n\t\t\t}\n\n.btn-group {\n\tposition: relative;\n\t*zoom: 1;\n\t*margin-left: .3em;\n}\n.btn-group:before, .btn-group:after {\n\tdisplay: table;\n\tcontent: \"\";\n}\n.btn-group:after {\n\tclear: both;\n}\n.btn-group:first-child {\n\t*margin-left: 0;\n}\n.btn-group.pull-right {\n\tfloat:right;\n\t}\n\n.btn-group .btn {\n    border-radius: 0 0 0 0;\n    float: left;\n    margin-left: -1px;\n    position: relative;\n\t}\n\t.btn-group .btn:active, .btn-group .btn.active, .btn-group .btn.active:hover  {\n\t\tbackground-color: #898989;\n\t\tbackground: -moz-linear-gradient(center top , #898989 0%, #9a9a9a 100%);\n\t\tbackground: linear-gradient(top, #898989 0%, #9a9a9a 100%);\n\t\tbackground: -webkit-linear-gradient(top, #898989 0%, #9a9a9a 100%);\n\t\tfilter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#898989', endColorstr='#9a9a9a', GradientType=0);\n\t\tborder: 1px solid #626262;\n\t\tcolor: #f4f4f4;\n\t\ttext-shadow: 0 -1px 0px rgba(0, 0, 0, 0.3);\n\t\tbox-shadow:0 2px 2px rgba(0, 0, 0, 0.3) inset;\n\t\t-webkit-transition: background-position 0.1s linear;\n\t\t-moz-transition: background-position 0.1s linear;\n\t\t-ms-transition: background-position 0.1s linear;\n\t\t-o-transition: background-position 0.1s linear;\n\t\ttransition: background-position 0.1s linear;\n\t\t}\n\t\t.btn-group .btn.active:hover  {\n\t\t\tcursor:default;\n\t\t\t}\n\t.btn-group .btn:first-child {\n\t\tmargin-left: 0;\n\t\t-webkit-border-top-left-radius: 3px;\n\t\t-moz-border-radius-topleft: 3px;\n\t\tborder-top-left-radius: 3px;\n\t\t-webkit-border-bottom-left-radius: 3px;\n\t\t-moz-border-radius-bottomleft: 3px;\n\t\tborder-bottom-left-radius: 3px;\n\t\t}\n\t.btn-group .btn:last-child {\n\t\t-webkit-border-top-right-radius: 3px;\n\t\t-moz-border-radius-topright: 3px;\n\t\tborder-top-right-radius: 3px;\n\t\t-webkit-border-bottom-right-radius: 3px;\n\t\t-moz-border-radius-bottomright: 3px;\n\t\tborder-bottom-right-radius: 3px;\n\t\t}\n\n/* ICONS //////////////////////////////////////////////////////////////////////////*/\t\n\t\t\n[class^=\"icon-\"], [class*=\" icon-\"] {\n\tdisplay: inline-block;\n\twidth: 14px;\n\theight: 14px;\n\tline-height: 14px;\n\tvertical-align: text-top;\n\tbackground-image: url(images/glyphicons-halflings.png);\n\tbackground-position: 14px 14px;\n\tbackground-repeat: no-repeat;\n\t*margin-right: .3em;\n}\n[class^=\"icon-\"]:last-child, [class*=\" icon-\"]:last-child {\n\t*margin-left: 0;\n}\n.icon-white {\n\tbackground-image: url(images/glyphicons-halflings-white.png);\n}\n.icon-glass {\n  background-position: 0      0;\n}\n.icon-music {\n  background-position: -24px 0;\n}\n.icon-search {\n  background-position: -48px 0;\n}\n.icon-envelope {\n  background-position: -72px 0;\n}\n.icon-heart {\n  background-position: -96px 0;\n}\n.icon-star {\n  background-position: -120px 0;\n}\n.icon-star-empty {\n  background-position: -144px 0;\n}\n.icon-user {\n  background-position: -168px 0;\n}\n.icon-film {\n  background-position: -192px 0;\n}\n.icon-th-large {\n  background-position: -216px 0;\n}\n.icon-th {\n  background-position: -240px 0;\n}\n.icon-th-list {\n  background-position: -264px 0;\n}\n.icon-ok {\n  background-position: -288px 0;\n}\n.icon-remove {\n  background-position: -312px 0;\n}\n.icon-zoom-in {\n  background-position: -336px 0;\n}\n.icon-zoom-out {\n  background-position: -360px 0;\n}\n.icon-off {\n  background-position: -384px 0;\n}\n.icon-signal {\n  background-position: -408px 0;\n}\n.icon-cog {\n  background-position: -432px 0;\n}\n.icon-trash {\n  background-position: -456px 0;\n}\n.icon-home {\n  background-position: 0 -24px;\n}\n.icon-file {\n  background-position: -24px -24px;\n}\n.icon-time {\n  background-position: -48px -24px;\n}\n.icon-road {\n  background-position: -72px -24px;\n}\n.icon-download-alt {\n  background-position: -96px -24px;\n}\n.icon-download {\n  background-position: -120px -24px;\n}\n.icon-upload {\n  background-position: -144px -24px;\n}\n.icon-inbox {\n  background-position: -168px -24px;\n}\n.icon-play-circle {\n  background-position: -192px -24px;\n}\n.icon-repeat {\n  background-position: -216px -24px;\n}\n.icon-refresh {\n  background-position: -240px -24px;\n}\n.icon-list-alt {\n  background-position: -264px -24px;\n}\n.icon-lock {\n  background-position: -287px -24px;\n}\n.icon-flag {\n  background-position: -312px -24px;\n}\n.icon-headphones {\n  background-position: -336px -24px;\n}\n.icon-volume-off {\n  background-position: -360px -24px;\n}\n.icon-volume-down {\n  background-position: -384px -24px;\n}\n.icon-volume-up {\n  background-position: -408px -24px;\n}\n.icon-qrcode {\n  background-position: -432px -24px;\n}\n.icon-barcode {\n  background-position: -456px -24px;\n}\n.icon-tag {\n  background-position: 0 -48px;\n}\n.icon-tags {\n  background-position: -25px -48px;\n}\n.icon-book {\n  background-position: -48px -48px;\n}\n.icon-bookmark {\n  background-position: -72px -48px;\n}\n.icon-print {\n  background-position: -96px -48px;\n}\n.icon-camera {\n  background-position: -120px -48px;\n}\n.icon-font {\n  background-position: -144px -48px;\n}\n.icon-bold {\n  background-position: -167px -48px;\n}\n.icon-italic {\n  background-position: -192px -48px;\n}\n.icon-text-height {\n  background-position: -216px -48px;\n}\n.icon-text-width {\n  background-position: -240px -48px;\n}\n.icon-align-left {\n  background-position: -264px -48px;\n}\n.icon-align-center {\n  background-position: -288px -48px;\n}\n.icon-align-right {\n  background-position: -312px -48px;\n}\n.icon-align-justify {\n  background-position: -336px -48px;\n}\n.icon-list {\n  background-position: -360px -48px;\n}\n.icon-indent-left {\n  background-position: -384px -48px;\n}\n.icon-indent-right {\n  background-position: -408px -48px;\n}\n.icon-facetime-video {\n  background-position: -432px -48px;\n}\n.icon-picture {\n  background-position: -456px -48px;\n}\n.icon-pencil {\n  background-position: 0 -72px;\n}\n.icon-map-marker {\n  background-position: -24px -72px;\n}\n.icon-adjust {\n  background-position: -48px -72px;\n}\n.icon-tint {\n  background-position: -72px -72px;\n}\n.icon-edit {\n  background-position: -96px -72px;\n}\n.icon-share {\n  background-position: -120px -72px;\n}\n.icon-check {\n  background-position: -144px -72px;\n}\n.icon-move {\n  background-position: -168px -72px;\n}\n.icon-step-backward {\n  background-position: -192px -72px;\n}\n.icon-fast-backward {\n  background-position: -216px -72px;\n}\n.icon-backward {\n  background-position: -240px -72px;\n}\n.icon-play {\n  background-position: -264px -72px;\n}\n.icon-pause {\n  background-position: -288px -72px;\n}\n.icon-stop {\n  background-position: -312px -72px;\n}\n.icon-forward {\n  background-position: -336px -72px;\n}\n.icon-fast-forward {\n  background-position: -360px -72px;\n}\n.icon-step-forward {\n  background-position: -384px -72px;\n}\n.icon-eject {\n  background-position: -408px -72px;\n}\n.icon-chevron-left {\n  background-position: -432px -72px;\n}\n.icon-chevron-right {\n  background-position: -456px -72px;\n}\n.icon-plus-sign {\n  background-position: 0 -96px;\n}\n.icon-minus-sign {\n  background-position: -24px -96px;\n}\n.icon-remove-sign {\n  background-position: -48px -96px;\n}\n.icon-ok-sign {\n  background-position: -72px -96px;\n}\n.icon-question-sign {\n  background-position: -96px -96px;\n}\n.icon-info-sign {\n  background-position: -120px -96px;\n}\n.icon-screenshot {\n  background-position: -144px -96px;\n}\n.icon-remove-circle {\n  background-position: -168px -96px;\n}\n.icon-ok-circle {\n  background-position: -192px -96px;\n}\n.icon-ban-circle {\n  background-position: -216px -96px;\n}\n.icon-arrow-left {\n  background-position: -240px -96px;\n}\n.icon-arrow-right {\n  background-position: -264px -96px;\n}\n.icon-arrow-up {\n  background-position: -289px -96px;\n}\n.icon-arrow-down {\n  background-position: -312px -96px;\n}\n.icon-share-alt {\n  background-position: -336px -96px;\n}\n.icon-resize-full {\n  background-position: -360px -96px;\n}\n.icon-resize-small {\n  background-position: -384px -96px;\n}\n.icon-plus {\n  background-position: -408px -96px;\n}\n.icon-minus {\n  background-position: -433px -96px;\n}\n.icon-asterisk {\n  background-position: -456px -96px;\n}\n.icon-exclamation-sign {\n  background-position: 0 -120px;\n}\n.icon-gift {\n  background-position: -24px -120px;\n}\n.icon-leaf {\n  background-position: -48px -120px;\n}\n.icon-fire {\n  background-position: -72px -120px;\n}\n.icon-eye-open {\n  background-position: -96px -120px;\n}\n.icon-eye-close {\n  background-position: -120px -120px;\n}\n.icon-warning-sign {\n  background-position: -144px -120px;\n}\n.icon-plane {\n  background-position: -168px -120px;\n}\n.icon-calendar {\n  background-position: -192px -120px;\n}\n.icon-random {\n  background-position: -216px -120px;\n}\n.icon-comment {\n  background-position: -240px -120px;\n}\n.icon-magnet {\n  background-position: -264px -120px;\n}\n.icon-chevron-up {\n  background-position: -288px -120px;\n}\n.icon-chevron-down {\n  background-position: -313px -119px;\n}\n.icon-retweet {\n  background-position: -336px -120px;\n}\n.icon-shopping-cart {\n  background-position: -360px -120px;\n}\n.icon-folder-close {\n  background-position: -384px -120px;\n}\n.icon-folder-open {\n  background-position: -408px -120px;\n}\n.icon-resize-vertical {\n  background-position: -432px -119px;\n}\n.icon-resize-horizontal {\n  background-position: -456px -118px;\n}\n\n/* CUSTOM ICONS //////////////////////////////////////////////////////////////////////////*/\n\n[class^=\"viewmode-\"], [class*=\" viewmode-\"] {\n\tdisplay: inline-block;\n\twidth: 26px;\n\theight: 14px;\n\tline-height: 14px;\n\tvertical-align: text-top;\n\tbackground-image: url(images/icons_view_mode.png);\n\tbackground-position: 0 0;\n\tbackground-repeat: no-repeat;\n\t*margin-right: .3em;\n\tmargin-top:1px;\n}\n.viewmode-list {\n\tbackground-position: 0 0;\n\t}\n\t.btn:active .viewmode-list, .btn.active .viewmode-list {\n\t\tbackground-position: -40px 0;\n\t\t}\n.viewmode-grid {\n\tbackground-position: 0 -25px;\n\t}\n\t.btn:active .viewmode-grid, .btn.active .viewmode-grid {\n\t\tbackground-position: -40px -25px;\n\t\t}\n"
  },
  {
    "path": "newscoop/admin-style/calendar/fullcalendar.css",
    "content": "/*\n * FullCalendar v1.5.2 Stylesheet\n *\n * Copyright (c) 2011 Adam Shaw\n * Dual licensed under the MIT and GPL licenses, located in\n * MIT-LICENSE.txt and GPL-LICENSE.txt respectively.\n *\n * Date: Sun Aug 21 22:06:09 2011 -0700\n *\n */\n\n\n.fc {\n\tdirection: ltr;\n\ttext-align: left;\n\t}\n\t\n.fc table {\n\tborder-collapse: collapse;\n\tborder-spacing: 0;\n\t}\n\t\nhtml .fc,\n.fc table {\n\tfont-size: 1em;\n\t}\n\t\n.fc td,\n.fc th {\n\tpadding: 0;\n\tvertical-align: top;\n\t}\n\n\n\n/* Header\n------------------------------------------------------------------------*/\n\n.fc-header td {\n\twhite-space: nowrap;\n\t}\n\n.fc-header-left {\n\twidth: 25%;\n\ttext-align: left;\n\t}\n\t\n.fc-header-center {\n\ttext-align: center;\n\t}\n\t\n.fc-header-right {\n\twidth: 25%;\n\ttext-align: right;\n\t}\n\t\n.fc-header-title {\n\tdisplay: inline-block;\n\tvertical-align: top;\n\t}\n\t\n.fc-header-title h2 {\n\tmargin-top: 0;\n\twhite-space: nowrap;\n\t}\n\t\n.fc .fc-header-space {\n\tpadding-left: 10px;\n\t}\n\t\n.fc-header .fc-button {\n\tmargin-bottom: 1em;\n\tvertical-align: top;\n\t}\n\t\n/* buttons edges butting together */\n\n.fc-header .fc-button {\n\tmargin-right: -1px;\n\t}\n\t\n.fc-header .fc-corner-right {\n\tmargin-right: 1px; /* back to normal */\n\t}\n\t\n.fc-header .ui-corner-right {\n\tmargin-right: 0; /* back to normal */\n\t}\n\t\n/* button layering (for border precedence) */\n\t\n.fc-header .fc-state-hover,\n.fc-header .ui-state-hover {\n\tz-index: 2;\n\t}\n\t\n.fc-header .fc-state-down {\n\tz-index: 3;\n\t}\n\n.fc-header .fc-state-active,\n.fc-header .ui-state-active {\n\tz-index: 4;\n\t}\n\t\n\t\n\t\n/* Content\n------------------------------------------------------------------------*/\n\t\n.fc-content {\n\tclear: both;\n\tz-index : 0;\n\t}\n\t\n.fc-view {\n\twidth: 100%; /* needed for view switching (when view is absolute) */\n\toverflow: hidden;\n\t}\n\t\n\t\n\n/* Cell Styles\n------------------------------------------------------------------------*/\n\n.fc-widget-header,    /* <th>, usually */\n.fc-widget-content {  /* <td>, usually */\n\tborder: 1px solid #ccc;\n\t}\n\t\n.fc-state-highlight { /* <td> today cell */ /* TODO: add .fc-today to <th> */\n\tbackground: #ffc;\n\t}\n\t\n.fc-cell-overlay { /* semi-transparent rectangle while dragging */\n\tbackground: #9cf;\n\topacity: .2;\n\tfilter: alpha(opacity=20); /* for IE */\n\t}\n\t\n\n\n/* Buttons\n------------------------------------------------------------------------*/\n\n.fc-button {\n\tposition: relative;\n\tdisplay: inline-block;\n\tcursor: pointer;\n\t}\n\t\n.fc-state-default { /* non-theme */\n\tborder-style: solid;\n\tborder-width: 1px 0;\n\t}\n\t\n.fc-button-inner {\n\tposition: relative;\n\tfloat: left;\n\toverflow: hidden;\n\t}\n\t\n.fc-state-default .fc-button-inner { /* non-theme */\n\tborder-style: solid;\n\tborder-width: 0 1px;\n\t}\n\t\n.fc-button-content {\n\tposition: relative;\n\tfloat: left;\n\theight: 1.9em;\n\tline-height: 1.9em;\n\tpadding: 0 .6em;\n\twhite-space: nowrap;\n\t}\n\t\n/* icon (for jquery ui) */\n\t\n.fc-button-content .fc-icon-wrap {\n\tposition: relative;\n\tfloat: left;\n\ttop: 50%;\n\t}\n\t\n.fc-button-content .ui-icon {\n\tposition: relative;\n\tfloat: left;\n\tmargin-top: -50%;\n\t*margin-top: 0;\n\t*top: -50%;\n\t}\n\t\n/* gloss effect */\n\t\n.fc-state-default .fc-button-effect {\n\tposition: absolute;\n\ttop: 50%;\n\tleft: 0;\n\t}\n\t\n.fc-state-default .fc-button-effect span {\n\tposition: absolute;\n\ttop: -100px;\n\tleft: 0;\n\twidth: 500px;\n\theight: 100px;\n\tborder-width: 100px 0 0 1px;\n\tborder-style: solid;\n\tborder-color: #fff;\n\tbackground: #444;\n\topacity: .09;\n\tfilter: alpha(opacity=9);\n\t}\n\t\n/* button states (determines colors)  */\n\t\n.fc-state-default,\n.fc-state-default .fc-button-inner {\n\tborder-style: solid;\n\tborder-color: #ccc #bbb #aaa;\n\tbackground: #F3F3F3;\n\tcolor: #000;\n\t}\n\t\n.fc-state-hover,\n.fc-state-hover .fc-button-inner {\n\tborder-color: #999;\n\t}\n\t\n.fc-state-down,\n.fc-state-down .fc-button-inner {\n\tborder-color: #555;\n\tbackground: #777;\n\t}\n\t\n.fc-state-active,\n.fc-state-active .fc-button-inner {\n\tborder-color: #555;\n\tbackground: #777;\n\tcolor: #fff;\n\t}\n\t\n.fc-state-disabled,\n.fc-state-disabled .fc-button-inner {\n\tcolor: #999;\n\tborder-color: #ddd;\n\t}\n\t\n.fc-state-disabled {\n\tcursor: default;\n\t}\n\t\n.fc-state-disabled .fc-button-effect {\n\tdisplay: none;\n\t}\n\t\n\t\n\n/* Global Event Styles\n------------------------------------------------------------------------*/\n\t \n.fc-event {\n\tborder-style: solid;\n\tborder-width: 0;\n\tfont-size: .85em;\n\tcursor: default;\n\t}\n\t\na.fc-event,\n.fc-event-draggable {\n\tcursor: pointer;\n\t}\n\t\na.fc-event {\n\ttext-decoration: none;\n\t}\n\t\n.fc-rtl .fc-event {\n\ttext-align: right;\n\t}\n\t\n.fc-event-skin {\n\tborder-color: #36c;     /* default BORDER color */\n\tbackground-color: #36c; /* default BACKGROUND color */\n\tcolor: #fff;            /* default TEXT color */\n\t}\n\t\n.fc-event-inner {\n\tposition: relative;\n\twidth: 100%;\n\theight: 100%;\n\tborder-style: solid;\n\tborder-width: 0;\n\toverflow: hidden;\n\t}\n\t\n.fc-event-time,\n.fc-event-title {\n\tpadding: 0 1px;\n\t}\n\t\n.fc .ui-resizable-handle { /*** TODO: don't use ui-resizable anymore, change class ***/\n\tdisplay: block;\n\tposition: absolute;\n\tz-index: 99999;\n\toverflow: hidden; /* hacky spaces (IE6/7) */\n\tfont-size: 300%;  /* */\n\tline-height: 50%; /* */\n\t}\n\t\n\t\n\t\n/* Horizontal Events\n------------------------------------------------------------------------*/\n\n.fc-event-hori {\n\tborder-width: 1px 0;\n\tmargin-bottom: 1px;\n\t}\n\t\n/* resizable */\n\t\n.fc-event-hori .ui-resizable-e {\n\ttop: 0           !important; /* importants override pre jquery ui 1.7 styles */\n\tright: -3px      !important;\n\twidth: 7px       !important;\n\theight: 100%     !important;\n\tcursor: e-resize;\n\t}\n\t\n.fc-event-hori .ui-resizable-w {\n\ttop: 0           !important;\n\tleft: -3px       !important;\n\twidth: 7px       !important;\n\theight: 100%     !important;\n\tcursor: w-resize;\n\t}\n\t\n.fc-event-hori .ui-resizable-handle {\n\t_padding-bottom: 14px; /* IE6 had 0 height */\n\t}\n\t\n\t\n\t\n/* Fake Rounded Corners (for buttons and events)\n------------------------------------------------------------*/\n\t\n.fc-corner-left {\n\tmargin-left: 1px;\n\t}\n\t\n.fc-corner-left .fc-button-inner,\n.fc-corner-left .fc-event-inner {\n\tmargin-left: -1px;\n\t}\n\t\n.fc-corner-right {\n\tmargin-right: 1px;\n\t}\n\t\n.fc-corner-right .fc-button-inner,\n.fc-corner-right .fc-event-inner {\n\tmargin-right: -1px;\n\t}\n\t\n.fc-corner-top {\n\tmargin-top: 1px;\n\t}\n\t\n.fc-corner-top .fc-event-inner {\n\tmargin-top: -1px;\n\t}\n\t\n.fc-corner-bottom {\n\tmargin-bottom: 1px;\n\t}\n\t\n.fc-corner-bottom .fc-event-inner {\n\tmargin-bottom: -1px;\n\t}\n\t\n\t\n\t\n/* Fake Rounded Corners SPECIFICALLY FOR EVENTS\n-----------------------------------------------------------------*/\n\t\n.fc-corner-left .fc-event-inner {\n\tborder-left-width: 1px;\n\t}\n\t\n.fc-corner-right .fc-event-inner {\n\tborder-right-width: 1px;\n\t}\n\t\n.fc-corner-top .fc-event-inner {\n\tborder-top-width: 1px;\n\t}\n\t\n.fc-corner-bottom .fc-event-inner {\n\tborder-bottom-width: 1px;\n\t}\n\t\n\t\n\t\n/* Reusable Separate-border Table\n------------------------------------------------------------*/\n\ntable.fc-border-separate {\n\tborder-collapse: separate;\n\t}\n\t\n.fc-border-separate th,\n.fc-border-separate td {\n\tborder-width: 1px 0 0 1px;\n\t}\n\t\n.fc-border-separate th.fc-last,\n.fc-border-separate td.fc-last {\n\tborder-right-width: 1px;\n\t}\n\t\n.fc-border-separate tr.fc-last th,\n.fc-border-separate tr.fc-last td {\n\tborder-bottom-width: 1px;\n\t}\n\t\n.fc-border-separate tbody tr.fc-first td,\n.fc-border-separate tbody tr.fc-first th {\n\tborder-top-width: 0;\n\t}\n\t\n\t\n\n/* Month View, Basic Week View, Basic Day View\n------------------------------------------------------------------------*/\n\n.fc-grid th {\n\ttext-align: center;\n\t}\n\t\n.fc-grid .fc-day-number {\n\tfloat: right;\n\tpadding: 0 2px;\n\t}\n\t\n.fc-grid .fc-other-month .fc-day-number {\n\topacity: 0.3;\n\tfilter: alpha(opacity=30); /* for IE */\n\t/* opacity with small font can sometimes look too faded\n\t   might want to set the 'color' property instead\n\t   making day-numbers bold also fixes the problem */\n\t}\n\t\n.fc-grid .fc-day-content {\n\tclear: both;\n\tpadding: 2px 2px 1px; /* distance between events and day edges */\n\t}\n\t\n/* event styles */\n\t\n.fc-grid .fc-event-time {\n\tfont-weight: bold;\n\t}\n\t\n/* right-to-left */\n\t\n.fc-rtl .fc-grid .fc-day-number {\n\tfloat: left;\n\t}\n\t\n.fc-rtl .fc-grid .fc-event-time {\n\tfloat: right;\n\t}\n\t\n\t\n\n/* Agenda Week View, Agenda Day View\n------------------------------------------------------------------------*/\n\n.fc-agenda table {\n\tborder-collapse: separate;\n\t}\n\t\n.fc-agenda-days th {\n\ttext-align: center;\n\t}\n\t\n.fc-agenda .fc-agenda-axis {\n\twidth: 50px;\n\tpadding: 0 4px;\n\tvertical-align: middle;\n\ttext-align: right;\n\twhite-space: nowrap;\n\tfont-weight: normal;\n\t}\n\t\n.fc-agenda .fc-day-content {\n\tpadding: 2px 2px 1px;\n\t}\n\t\n/* make axis border take precedence */\n\t\n.fc-agenda-days .fc-agenda-axis {\n\tborder-right-width: 1px;\n\t}\n\t\n.fc-agenda-days .fc-col0 {\n\tborder-left-width: 0;\n\t}\n\t\n/* all-day area */\n\t\n.fc-agenda-allday th {\n\tborder-width: 0 1px;\n\t}\n\t\n.fc-agenda-allday .fc-day-content {\n\tmin-height: 34px; /* TODO: doesnt work well in quirksmode */\n\t_height: 34px;\n\t}\n\t\n/* divider (between all-day and slots) */\n\t\n.fc-agenda-divider-inner {\n\theight: 2px;\n\toverflow: hidden;\n\t}\n\t\n.fc-widget-header .fc-agenda-divider-inner {\n\tbackground: #eee;\n\t}\n\t\n/* slot rows */\n\t\n.fc-agenda-slots th {\n\tborder-width: 1px 1px 0;\n\t}\n\t\n.fc-agenda-slots td {\n\tborder-width: 1px 0 0;\n\tbackground: none;\n\t}\n\t\n.fc-agenda-slots td div {\n\theight: 20px;\n\t}\n\t\n.fc-agenda-slots tr.fc-slot0 th,\n.fc-agenda-slots tr.fc-slot0 td {\n\tborder-top-width: 0;\n\t}\n\n.fc-agenda-slots tr.fc-minor th,\n.fc-agenda-slots tr.fc-minor td {\n\tborder-top-style: dotted;\n\t}\n\t\n.fc-agenda-slots tr.fc-minor th.ui-widget-header {\n\t*border-top-style: solid; /* doesn't work with background in IE6/7 */\n\t}\n\t\n\n\n/* Vertical Events\n------------------------------------------------------------------------*/\n\n.fc-event-vert {\n\tborder-width: 0 1px;\n\t}\n\t\n.fc-event-vert .fc-event-head,\n.fc-event-vert .fc-event-content {\n\tposition: relative;\n\tz-index: 2;\n\twidth: 100%;\n\toverflow: hidden;\n\t}\n\t\n.fc-event-vert .fc-event-time {\n\twhite-space: nowrap;\n\tfont-size: 10px;\n\t}\n\t\n.fc-event-vert .fc-event-bg { /* makes the event lighter w/ a semi-transparent overlay  */\n\tposition: absolute;\n\tz-index: 1;\n\ttop: 0;\n\tleft: 0;\n\twidth: 100%;\n\theight: 100%;\n\tbackground: #fff;\n\topacity: .3;\n\tfilter: alpha(opacity=30);\n\t}\n\t\n.fc .ui-draggable-dragging .fc-event-bg, /* TODO: something nicer like .fc-opacity */\n.fc-select-helper .fc-event-bg {\n\tdisplay: none\\9; /* for IE6/7/8. nested opacity filters while dragging don't work */\n\t}\n\t\n/* resizable */\n\t\n.fc-event-vert .ui-resizable-s {\n\tbottom: 0        !important; /* importants override pre jquery ui 1.7 styles */\n\twidth: 100%      !important;\n\theight: 8px      !important;\n\toverflow: hidden !important;\n\tline-height: 8px !important;\n\tfont-size: 11px  !important;\n\tfont-family: monospace;\n\ttext-align: center;\n\tcursor: s-resize;\n\t}\n\t\n.fc-agenda .ui-resizable-resizing { /* TODO: better selector */\n\t_overflow: hidden;\n\t}\n\t\n\t\n"
  },
  {
    "path": "newscoop/admin-style/calendar/timepicker.css",
    "content": "@CHARSET \"UTF-8\";\n/* css for timepicker */\n.ui-timepicker-div .ui-widget-header{ margin-bottom: 8px; }\n.ui-timepicker-div dl{ text-align: left; }\n.ui-timepicker-div dl dt{ height: 25px; }\n.ui-timepicker-div dl dd{ margin: -25px 0 10px 65px; }\n.ui-timepicker-div td { font-size: 90%; }"
  },
  {
    "path": "newscoop/admin-style/comments.css",
    "content": "body#comments {\r\n}\r\n\r\n.commentsHolder {\r\n    width: 920px;\r\n}\r\n\r\n#showComments {\r\n}\r\n\r\n#showComments fieldset {\r\n    padding: 10px;\r\n}\r\n\r\n#showComments fieldset ul {\r\n    overflow: hidden;\r\n}\r\n\r\n#showComments fieldset ul li {\r\n    float: left;\r\n    height: 25px;\r\n    min-width: 100px;\r\n    margin-right: 8px;\r\n    padding: 0px 10px;\r\n    border-radius: 4px;\r\n    -moz-border-radius: 4px;\r\n    -webkit-border--radius: 4px;\r\n    -khtml-border-radius: 4px;\r\n}\r\n\r\n#showComments fieldset ul li.published, #showComments fieldset ul li.approved  {\r\n    border: 1px solid #cccccc;\r\n    background: #fff;\r\n}\r\n\r\n#showComments fieldset ul li.new {\r\n    background: #eaf7da;\r\n    border: 1px solid #bee78d;\r\n}\r\n\r\n/*#showComments fieldset ul li.approved {\r\n    background: #ccecff;\r\n    border: 1px solid #7ac8ff;\r\n}*/\r\n\r\n#showComments fieldset ul li.hidden {\r\n    background: #f2f2f2;\r\n    border: 1px solid #cccccc;\r\n}\r\n\r\n#showComments fieldset ul li.deleted {\r\n    background: #ffd9da;\r\n    border: 1px solid #ffabad;\r\n}\r\n\r\n#showComments fieldset ul li.none {\r\n    background: #ffffff;\r\n    border: 1px solid #f0f0f0;\r\n}\r\n\r\n#showComments fieldset ul li.image {\r\n    background: #ffffff;\r\n    border: 1px solid #f0f0f0;\r\n}\r\n\r\n#showComments fieldset ul li.document {\r\n    background: #ffffff;\r\n    border: 1px solid #f0f0f0;\r\n}\r\n\r\n#showComments fieldset ul li input {\r\n    float: left;\r\n    margin: 6px 6px 0 0;\r\n}\r\n\r\n#showComments fieldset ul li label {\r\n    float: left;\r\n    font-size: 12px;\r\n    font-weight: bold;\r\n    line-height: 25px;\r\n}\r\n\r\n#showComments fieldset ul li.published label, #showComments fieldset ul li.approved label {\r\n    color: #585858;\r\n}\r\n\r\n#showComments fieldset ul li.new label {\r\n    color: #006b0e;\r\n}\r\n\r\n/*#showComments fieldset ul li.approved label {\r\n    color: #004987;\r\n}*/\r\n\r\n#showComments fieldset ul li.hidden label {\r\n    color: #969696;\r\n}\r\n\r\n#showComments fieldset ul li.deleted label {\r\n    color: #9e0013;\r\n}\r\n\r\n.basic-search-holder {\r\n    margin-bottom: 8px;\r\n}\r\n\r\n#commentFilterSearchHolder {\r\n    position: relative;\r\n    padding: 0 0 20px;\r\n    margin-bottom: 15px;\r\n    border-top: 1px solid #cccccc;\r\n}\r\n\r\n#commentFilterSearch {\r\n    overflow: hidden;\r\n    display: none;\r\n}\r\n\r\n#commentFilterSearch fieldset {\r\n    margin: 0px;\r\n    border-top: none;\r\n}\r\n\r\n#commentFilterSearch fieldset ul li {\r\n    overflow: hidden;\r\n}\r\n\r\n#commentFilterSearch ul li select {\r\n    float: left;\r\n    width: 100px;\r\n    margin-right: 10px;\r\n}\r\n\r\n#commentFilterSearch ul li input {\r\n    float: left;\r\n    width: 200px;\r\n    margin-right: 10px;\r\n}\r\n\r\n#commentFilterSearch ul li a {\r\n    float: left;\r\n    height: 23px;\r\n    margin: 0px;\r\n    padding: 0px;\r\n}\r\n\r\n#commentFilterSearch ul li a span {\r\n    margin-top: 3px;\r\n}\r\n\r\n#commentFilterTrigger {\r\n    position: absolute;\r\n    right: 0px;\r\n    bottom: 0px;\r\n    display: block;\r\n    height: 20px;\r\n    padding: 0 10px 0 22px;\r\n    background: url(\"images/dropdown-arrow.png\") no-repeat 8px 5px #ffffff;\r\n    border: 1px solid #cccccc;\r\n    border-top: none;\r\n    outline: none;\r\n}\r\n\r\n.collapsed {\r\n    background-image: url(\"images/dropdown-arrow-close.png\") !important;\r\n}\r\n\r\n#actionExpand {\r\n    overflow: hidden;\r\n    margin-bottom: 0;\r\n}\r\n\r\n#actionExpand fieldset {\r\n    margin-top: 0px;\r\n}\r\n/*\r\n#actionExpand fieldset.right {\r\n    float: right;\r\n}*/\r\n\r\nselect.actions {\r\n    width: 100px;\r\n    margin-right: 10px;\r\n}\r\n\r\n#actionExpand fieldset a {\r\n    line-height: 24px;\r\n    color: #007FB3;\r\n\tfloat:right;\r\n}\r\n\r\n#actionExpand fieldset a:hover {\r\n    text-decoration: underline;\r\n}\r\n\r\n#actionExpand fieldset label {\r\n    margin-right: 10px;\r\n    line-height: 24px;\r\n}\r\n\r\n.commentsHolder table {\r\n    margin-bottom: 1px !important;\r\n}\r\n\r\n.commentsHolder table tbody tr:hover td {\r\n    background: none !important;\r\n}\r\n\r\n.commentsHolder table thead tr th {\r\n    text-align: left;\r\n}\r\n\r\n.commentsHolder table tbody tr td {\r\n    padding: 0px;\r\n}\r\n\r\n.commentsHolder table tbody tr td table {\r\n    border: none;\r\n}\r\n\r\n.commentsHolder .index {\r\n    padding-top: 7px;\r\n    text-align: center;\r\n    vertical-align: top;\r\n    border: 0px;\r\n    display: block;\r\n    font-weight: normal;\r\n}\r\n\r\n.commentsHolder table tbody tr td table tbody tr td {\r\n    padding: 5px;\r\n    vertical-align: top;\r\n    border: 0px;\r\n}\r\n\r\n.commentUserHolder {\r\n    position: relative;\r\n    padding-left: 60px;\r\n}\r\n\r\n.commentUserHolder div {\r\n    position: absolute;\r\n    left: 0px;\r\n    top: 3px;\r\n    width: 50px;\r\n    height: 50px;\r\n    background: #e6e6e6;\r\n    border: 1px solid #a6a6a6;\r\n}\r\n\r\n.commentUserHolder p {\r\n    margin: 0px;\r\n    font-size: 12px;\r\n    color: #444444;\r\n    line-height: 17px;\r\n}\r\n\r\n.commentUserHolder p a {\r\n    color: #007FB3;\r\n}\r\n\r\n.commentUserHolder p a:hover {\r\n    text-decoration: underline;\r\n}\r\n\r\n.dateCommentHolder,.dateCommentHolderEdit, .dateCommentHolderReply {\r\n    position: relative;\r\n    padding-right: 12px;\r\n}\r\n\r\n.dateCommentHolder h4,.dateCommentHolderEdit h4, .dateCommentHolderReply h4 {\r\n    margin: 1px 0 4px 0;\r\n    font-style: italic;\r\n    font-weight: bold;\r\n    color: #000000;\r\n    font-size:12px;\r\n    -webkit-margin-end: 37px;\r\n}\r\n\r\n.dateCommentHolder h4 span,.dateCommentHolder h4 span.date,\r\n.dateCommentHolderEdit h4 span, .dateCommentHolderEdit h4 span.date,\r\n.dateCommentHolderReply h4 span, .dateCommentHolderReply h4 span.date\r\n{\r\n    color: #858585;\r\n    font-weight: normal;\r\n}\r\n\r\n.dateCommentHolder h4 span.commentSubject,\r\n.dateCommentHolderEdit h4 span.commentSubject,\r\n.dateCommentHolderReply h4 span.commentSubject\r\n{\r\n    font-weight: bold;\r\n    color: #000000;\r\n    padding-right: 53px;\r\n\tdisplay: inline;\r\n}\r\n\r\n.dateCommentHolderEdit h4 span.commentSubject, .dateCommentHolderReply h4 span.commentSubject\r\n    {\r\n    display:none;\r\n}\r\n\r\n.ratingHolder {\r\n    position: absolute;\r\n    right: 12px;\r\n    top: 0px;\r\n}\r\n\r\n.ratingHolder .thumbs {\r\n    font-size: 11px;\r\n    border-left: 1px solid #ccc;\r\n    line-height: 16px;\r\n    background: url(images/thumbs_up-down.png) no-repeat;\r\n    padding-left: 20px;\r\n}\r\n\r\n.ratingHolder .thumbs:first-child {\r\n    border-left: none;\r\n    padding-right: 6px;\r\n}\r\n\r\n.ratingHolder .thumbs.up {\r\n    background-position: 6px 2px;\r\n    color: #008700;\r\n}\r\n\r\n.ratingHolder .thumbs.down {\r\n    background-position: 6px -28px;\r\n    color: #ad0000;\r\n}\r\n\r\n.dateCommentHolder p,.dateCommentHolderEdit p,.dateCommentHolderReply p {\r\n    margin: 0px;\r\n    font-size:12px;\r\n}\r\n\r\n.dateCommentHolder fieldset,.dateCommentHolderEdit fieldset, .dateCommentHolderReply fieldset,\r\n.dateCommentHolder fieldset:first-child, .dateCommentHolderEdit fieldset:first-child, .dateCommentHolderReply fieldset:first-child {\r\n    padding: 0px;\r\n    margin: 0px;\r\n    border: none;\r\n    float: none;\r\n    margin-top: 10px;\r\n    width: 100%;\r\n}\r\n\r\n.dateCommentHolder fieldset label,.dateCommentHolderEdit fieldset label,.dateCommentHolderReply fieldset label\r\n    {\r\n    display: block;\r\n    margin-bottom: 5px;\r\n    color: #696969;\r\n    font-weight: bold;\r\n}\r\n\r\n.dateCommentHolder fieldset input,.dateCommentHolderEdit fieldset input,.dateCommentHolderReply fieldset input\r\n    {\r\n    display: block;\r\n    width: 100%;\r\n    margin-bottom: 5px;\r\n}\r\n\r\n.dateCommentHolder fieldset textarea,.dateCommentHolderEdit fieldset textarea,.dateCommentHolderReply fieldset textarea\r\n    {\r\n    width: 100%;\r\n    height: 100px;\r\n    margin-bottom: 10px;\r\n}\r\n\r\n.dateCommentHolder fieldset div input,.dateCommentHolderEdit fieldset div input, .dateCommentHolderReply fieldset div input\r\n    {\r\n    float: left;\r\n    width: auto !important;\r\n}\r\n\r\n.dateCommentHolder h3,.dateCommentHolderEdit h3, .dateCommentHolder h3,.dateCommentHolderReply h3 {\r\n    padding: 20px 0 10px;\r\n}\r\n\r\n.commentArticleHolder {\r\n\r\n}\r\n\r\n.commentArticleHolder p {\r\n    margin: 0px 0 20px;\r\n    line-height: 17px;\r\n}\r\n\r\n.commentArticleHolder p a {\r\n    text-decoration: none;\r\n    color: #007FB3;\r\n}\r\n\r\n.commentArticleHolder p a:hover {\r\n    text-decoration: underline;\r\n}\r\n\r\n.commentArticleHolder p span {\r\n    font-size: 11px;\r\n    font-style: italic;\r\n}\r\n\r\n.goToArticle {\r\n    display: inline-block;\r\n    padding-left: 14px;\r\n    color: #007FB3 !important;\r\n    font-size: 11px;\r\n    background: url(images/go-to-article.png) left center no-repeat;\r\n}\r\n\r\n.goToArticle:hover {\r\n    text-decoration: underline;\r\n}\r\n\r\n.commentBtns {\r\n    height: 30px;\r\n\r\n    background: rgba(212, 212, 212, 0.5);\r\n    visibility: hidden;\r\n}\r\n\r\n.commentBtns ul {\r\n    overflow: hidden;\r\n    padding-left: 280px;\r\n    margin: 0px;\r\n    height: 25px;\r\n    padding-top: 5px;\r\n}\r\n\r\n.commentBtns ul li {\r\n    float: left;\r\n    margin-right: 5px;\r\n    display: block;\r\n    height: 20px;\r\n    line-height: 18px;\r\n    padding: 0;\r\n}\r\n\r\n.commentBtns ul li.last {\r\n    float: right;\r\n}\r\n\r\n.commentBtns ul li a,.commentBtns ul li a.link {\r\n    display: block;\r\n    float: left;\r\n    height: 18px;\r\n    padding: 0 5px;\r\n    line-height: 18px;\r\n    color: #007FB3;\r\n}\r\n\r\n.commentBtns ul li a.link {\r\n    padding-left: 24px;\r\n    line-height: 20px;\r\n    line-height: 22px;\r\n    color: #007FB3;\r\n    /*border-left: 1px solid #cccccc;*/\r\n}\r\n\r\n.commentBtns ul li a.link .icon {\r\n    left: 6px;\r\n    margin: 0 3px 0 0;\r\n    overflow: hidden;\r\n    position: absolute;\r\n    top: 2px;\r\n    width: 16px;\r\n}\r\n\r\n.commentBtns ul li a.quickEditBtn {\r\n    padding-left: 25px;\r\n    line-height: 20px;\r\n    background: url(images/quick-edit-btn.png) 10px 4px no-repeat;\r\n    border-left: 1px solid #cccccc;\r\n}\r\n\r\n.commentBtns ul li a.addRatingBtn {\r\n    padding-left: 25px;\r\n    line-height: 20px;\r\n    background: url(images/add-rating-btn.png) 10px 4px no-repeat;\r\n    border-left: 1px solid #cccccc;\r\n}\r\n\r\n.commentBtns ul li a.new, .commentBtns ul li.new {\r\n    color: #006b0e;\r\n    background: #eaf7da;\r\n    border: 1px solid #2a8921;\r\n}\r\n\r\n.commentBtns ul li a.approved, .commentBtns ul li.approved {\r\n    color: #585858;\r\n    background: #fff;\r\n    border: 1px solid #5b5b5b;\r\n}\r\n\r\n.commentBtns ul li.hidden, .commentBtns ul li.hidden {\r\n    color: #969696;\r\n    background: #f2f2f2;\r\n    border: 1px solid #838383;\r\n}\r\n\r\n\r\n.commentBtns ul li.new, .commentBtns ul li.approved, .commentBtns ul li.hidden {\r\n    padding-right:10px;\r\n    border-radius: 4px;\r\n    -moz-border-radius: 3px;\r\n    -webkit-border-radius: 3px;\r\n    -khtml-border-radius: 3px;\r\n\tmargin-right:4px;\r\n}\r\n.commentBtns ul li.hidden {\r\n\tmargin-right:16px;\r\n}\r\n.commentBtns ul li a.deleted {\r\n    color: #9e0013;\r\n    background: #ffd9da;\r\n    border: 1px solid #ffabad;\r\n}\r\n\r\n.commentBtns ul li a.banUser, a.banUser {\r\n    color: #000000 !important;\r\n\tbackground-color:#ff9c9c;\r\n    background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#ffd9da), to(#ff9c9c));\r\n\tbackground-image: -moz-linear-gradient(center top , #ffd9da 0pt, #ff9c9c 100%);\r\n    border: 1px solid #dc4e4e;\r\n\tdisplay: inline-block;\r\n    height: 18px;\r\n    line-height: 18px;\r\n    padding: 0 11px 0 5px;\r\n\tmargin-top:3px;\r\n}\r\n\r\n.commentBtns ul li a.actionButton {\r\n    color: #444444 !important;\r\n\tbackground-color:#ebebeb;\r\n    background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#fafafa), to(#ebebeb));\r\n\tbackground-image: -moz-linear-gradient(center top , #fafafa 0pt, #ebebeb 100%);\r\n    border: 1px solid #9d9d9d;\r\n\tdisplay: inline-block;\r\n    height: 20px;\r\n    line-height: 20px;\r\n    padding: 0 10px 0 10px;\r\n}\r\n.commentBtns ul li a.actionButton:hover {\r\n    color: #444444 !important;\r\n\tbackground-color:#d9d9d9;\r\n    background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#fafafa), to(#d9d9d9));\r\n\tbackground-image: -moz-linear-gradient(center top , #fafafa 0pt, #d9d9d9 100%);\r\n    border-color: #656565;\r\n    -moz-box-shadow: 0 1px 1px rgba(0,0,0,.20);\r\n    -webkit-box-shadow: 0 1px 1px rgba(0,0,0,.20);\r\n    box-shadow: 0 1px 1px rgba(0,0,0,.20);\r\n}\r\n\r\n.commentBtns ul li a.new:hover {\r\n    border: 1px solid #2a8921;\r\n}\r\n.commentBtns ul li a.approved:hover  {\r\n    border: 1px solid #5b5b5b;\r\n}\r\n.commentBtns ul li a.hidden:hover  {\r\n    border: 1px solid #838383;\r\n}\r\n.commentBtns ul li a.deleted:hover {\r\n    border: 1px solid #ce3843;\r\n}\r\n.commentBtns ul li a.banUser span, a.banUser span {\r\n    display: block;\r\n    height: 18px;\r\n    padding-left: 20px;\r\n    background: url(images/ban-user-icon.png) left 3px no-repeat;\r\n}\r\n\r\n.commentBtns ul li a.banUser:hover, a.banUser:hover {\r\n    border: 1px solid #9a0000;\r\n\tbackground-color:#ff7575;\r\n    background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#ffd9da), to(#ff7575));\r\n\tbackground-image: -moz-linear-gradient(center top , #ffd9da 0pt, #ff7575 100%);\r\n\tcolor: #000000 !important;\r\n\ttext-decoration:none !important;\r\n}\r\n\r\n.dataTables_wrapper .commentId {\r\n    width: 3%;\r\n}\r\n\r\n.dataTables_wrapper .commentUser {\r\n    width: 27%;\r\n}\r\n\r\n.dataTables_wrapper .commentTimeCreated {\r\n    width: 305px;\r\n}\r\n\r\n.dataTables_wrapper .commentMessage {\r\n    width: 46%;\r\n}\r\n\r\n.dataTables_wrapper .commentThread {\r\n    width: 24%;\r\n}\r\n.dataTables_wrapper .commentThreadOrder {\r\n    width: 110px;\r\n}\r\n\r\n.commentsHolder .dataTables_wrapper {\r\n    margin: 0;\r\n}\r\n\r\n.commentsHolder p {\r\n    font-size:12px;\r\n}\r\n\r\n.hidden {\r\n    overflow: hidden !important;\r\n    position: inherit !important;\r\n    width: auto !important;\r\n    position:static!important;\r\n}\r\n\r\n\r\n.dataTables_filter input[type=\"text\"] {\r\n    background:transparent url(images/searchfield_bg.png) no-repeat scroll 0 0;\r\n    border: 1px solid #9D9D9D;\r\n    float: none;\r\n    font-family: Arial,Helvetica,sans-serif;\r\n    font-size: 12px;\r\n    height: 23px;\r\n    margin: 0;\r\n    padding: 0;\r\n    text-indent: 3px;\r\n    width: 60%;\r\n    text-indent: 23px;\r\n}\r\n\r\n.datatable input[type=\"checkbox\"] {\r\n    height:13px;\r\n    width:13px;\r\n}'\r\n\r\n.commentsHolder .smartlist .ui-widget-header {\r\n    background: none;\r\n    color: #444444;\r\n    font-weight: bold;\r\n}\r\n\r\n.commentsHolder .smartlist .ui-widget-header:first-child {\r\n    border-width: 0 0 1px 0;\r\n    padding:0;\r\n}\r\n\r\n.commentsHolder .smartlist .ui-widget-header:last-child {\r\n    border-width: 0;\r\n    padding:6px 0;\r\n}\r\n.commentsHolder  .dataTables_filter {\r\n    clear:left;\r\n\tpadding:0;\r\n}\r\n.commentsHolder  .dataTables_length {\r\n    padding: 0 0 10px 0;\r\n    vertical-align: top;\r\n    float:right;\r\n    line-height:23px;\r\n}\r\n.commentsHolder .ui-widget-header select, .dataTables_actions .actions {\r\n    background-color: #FFFFFF;\r\n    border: 1px solid #9D9D9D;\r\n    font-family: Arial,Helvetica,sans-serif;\r\n    font-size: 12px !important;\r\n    height: 25px;\r\n    margin: 0 0 0 0px !important;\r\n    min-width:60px;\r\n    padding: 2px 2px 2px 0;\r\n    vertical-align: top;\r\n}\r\n.commentsHolder .dataTables_actions {\r\n    padding: 0 0 10px 0;\r\n    vertical-align: top;\r\n    line-height:21px;\r\n}\r\n\r\n.commentsHolder .dataTables_actions a {\r\n    font-size:12px;\r\n    color:#007fb3;\r\n    padding: 0;\r\n    margin: 0 0 0 10px;\r\n    line-height:23px;\r\n    font-weight:normal;\r\n    display:inline-block;\r\n    border: 0px solid black !important;\r\n    background: none !important;\r\n}\r\n.commentsHolder .dataTables_actions a span {\r\n    float:left;\r\n    margin-top:3px;\r\n    padding-right:2px;\r\n}\r\n.commentsHolder .dataTables_actions a:hover {\r\n    text-decoration:underline;\r\n}\r\n.commentsHolder .dataTables_actions select {\r\n    width: 180px;\r\n}\r\n\r\n/*---////////// Status Colors //////////---*/\r\n\r\n.datatable tr.status_approved, .datatable tr.status_processed {\r\n    background:#fff;\r\n}\r\n.datatable tr.status_new {\r\n    background:#EAF7DA;\r\n}\r\n.datatable tr.status_hidden, .datatable tr.status_starred {\r\n    background:#f2f2f2;\r\n}\r\n.datatable tr.status_deleted {\r\n    background:#ffe6e7;\r\n}\r\n\r\n.commentAction {\r\n    display: none;\r\n}\r\n.user-blocked {\r\n\tcolor:#b30000;\r\n\tbackground:url(images/ban-user-icon.png) no-repeat 0 center;\r\n\tpadding:0 0 0 16px;\r\n}\r\n.user-blocked-avatar, .commentUserHolder div.user-blocked-avatar {\r\n\tborder:1px solid #b30000;\r\n}\r\n\r\n.commentBtns ul li input[type=\"radio\"], .commentBtns ul li label {\r\n\tfloat:left;\r\n\r\n}\r\n.commentBtns ul li label {\r\n\tline-height:16px;\r\n\tpadding-top:2px;\r\n}\r\n.commentsHolder .smartlist fieldset:first-child, .commentsHolder .smartlist fieldset {\r\n    margin: 10px 0;\r\n}\r\n\r\n.commentsHolder input [type=\"select\"] {\r\n    background-color: #FFFFFF;\r\n    border: 1px solid #9D9D9D;\r\n    font-family: Arial,Helvetica,sans-serif;\r\n    font-size: 12px;\r\n    height: 25px;\r\n    margin: 0;\r\n    padding: 2px 2px 2px 0;\r\n    vertical-align: top;\r\n}\r\n"
  },
  {
    "path": "newscoop/admin-style/common.css",
    "content": "@charset \"utf-8\";\n/* CSS Document */\n\nul.navigation {\n    margin: 0;\n    padding: 0;\n\tdisplay:block;\n\theight:25px;\n}\nul.navigation li {\n    float: left;\n\tmargin-right:10px;\n}\n.actions ul.navigation li {\n    font-size: 12px;\n    font-weight: normal;\n    line-height: 120%;\n    list-style: none;\n    margin: 0 6px 0 0;\n    padding: 0;\n    position: relative;\n    text-decoration: none;\n    border: 1px solid #9D9D9D;\n    background-color: #f6f6f6;\n\tdisplay:block;\n    background: -moz-linear-gradient(top, #fafafa 0, #f6f6f6 100%);\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fafafa), color-stop(100%, #f6f6f6));\n\toverflow:hidden;\n}\n.actions ul.navigation li:hover {\n    text-decoration: none;\n    border: 1px solid #007fb3;\n    color: #fff;\n    background-color: #007fb3;\n    background: -moz-linear-gradient(top, #409fc6 0, #007fb3 100%);\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #409fc6), color-stop(100%, #007fb3));\n}\n.actions ul.navigation li a {\n    padding: 4px 10px 5px 10px;\n\tdisplay:block;\n    color: #3B3B3B;\n}\n.actions ul.navigation li a:hover {\n    color: #fff;\n}\n.actions ul.navigation li a.upload, .actions ul.navigation li a.download, .actions ul.navigation li a.edit, .actions ul.navigation li a.add {\n    padding-left: 20px;\n\tbackground-image:url(images/solo_icons.png);\n\tbackground-repeat:no-repeat;\n}\n.actions ul.navigation li a.upload {\n\tbackground-position: 5px 5px;\n}\t\n.actions ul.navigation li a.upload:hover {\n\tbackground-position: -395px 5px;\n}\n\n.actions ul.navigation li a.download {\n\tbackground-position: 5px -24px;\n}\t\n.actions ul.navigation li a.download:hover {\n\tbackground-position: -395px -24px;\n}\n\n.actions ul.navigation li a.edit {\n\tbackground-position: 5px -54px;\n}\t\n.actions ul.navigation li a.edit:hover {\n\tbackground-position: -395px -54px;\n}\n\n.actions ul.navigation li a.add {\n\tbackground-position: 5px -85px;\n}\t\n.actions ul.navigation li a.add:hover {\n\tbackground-position: -395px -85px;\n}\n\nform dt {\n    font-weight: bold;\n    padding: 3px 5px 3px 2px;\n}\n\ndl.zend_form {\n    border: none !important;\n    -moz-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.1);\n    -webkit-box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.1);\n    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.1);\n\twidth: auto !important;\n}\n\ndl.zend_form dt {\n    margin-top: 8px;\n}\n\ndl.zend_form dt:first-child {\n    margin-top: 0;\n}\nform > dl.zend_form {\n\tborder:1px solid #9d9d9d;\n\tpadding-bottom:12px;\n}\n\ndl.zend_form dt:first-child {\n\tmargin-top:0;\n}\n\ndl.zend_form input[type=\"text\"], dl.zend_form input[type=\"password\"] {\n    background-color: #FFFFFF;\n    border: 1px solid #9D9D9D;\n    font-family: Arial,Helvetica,sans-serif;\n    font-size: 12px;\n    height: 23px;\n    margin: 0;\n    padding: 0;\n    text-indent: 3px;\n    -moz-box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);\n    -webkit-box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);\n    box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);\n}\ndl.zend_form input[type=\"text\"]:focus, dl.zend_form input[type=\"password\"]:focus {\n    border: 1px solid #00b5f1;\n\t/*-moz-box-shadow: 0px 0px 3px rgba(0, 180, 240, 0.3);\n    -webkit-box-shadow: 0px 0px 3px rgba(0, 180, 240, 0.3);\n    box-shadow: 0px 0px 3px rgba(0, 180, 240, 0.3);*/\n\n}\ndl.zend_form input[type=\"password\"] {\n    background-color: #f8f8f8;\n}\n\ndl.zend_form input[type=\"submit\"], dl.zend_form button  {\n    background: -moz-linear-gradient(center top , #fafafa 0pt, #f6f6f6 100%) repeat scroll 0 0 transparent;\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fafafa), color-stop(100%, #f6f6f6));\n    border: 1px solid #9d9d9d;\n    color: #444444;\n    font-family: Arial,Helvetica,sans-serif;\n    font-size: 12px;\n    font-weight: normal;\n    line-height: 17px;\n    margin: 0 6px 0 0;\n    outline: medium none;\n    padding: 3px 9px 3px;\n}\n\ndl.zend_form input[type=\"submit\"]:hover, dl.zend_form .button:hover {\n\tbackground: #007FB3;\n    background: -moz-linear-gradient(center top , #2390BD 0pt, #007FB3 100%) repeat scroll 0 0 transparent;\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #2390BD), color-stop(100%, #007FB3));\n    border: 1px solid #007FB3;\n    color: #FFFFFF;\n}\n\ndl.zend_form input[type=\"submit\"]:disabled, dl.zend_form button:disabled, dl.zend_form input[type=\"submit\"]:disabled:hover, dl.zend_form button:disabled:hover  {\n    background: -moz-linear-gradient(center top , #fdfdfd 0pt, #fbfbfb 100%) repeat scroll 0 0 transparent;\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fdfdfd), color-stop(100%, #fbfbfb));\n    border: 1px solid #cecece;\n    color: #b2b3b2;\n}\n\n/** Forms theme */\nform dl {\n    margin: 1em 0;\n    padding: 8px;\n    background-color: #fff;\n    border: 1px solid #ccc;\n}\n\nform dt, form dd {\n    margin-left: 0;\n}\n\nform dt {\n    padding: 3px 5px;\n    font-weight: bold;\n}\n\nform dd input[type=\"text\"] {\n    width: 30em;\n}\nform dd input[type=\"password\"] {\n    width: 18em;\n}\nform dd input[type=\"text\"]:focus, form dd input[type=\"password\"]:focus {\n    border: 1px solid #00b5f1;\n}\n\nform dd ul.errors {\n    padding: 3px 8px;\n}\n\nform dd ul.errors li {\n    font-size: 1.1em;\n    color: #cc0000;\n}\n\ndl.zend_form dd#submit-element {\n\ttext-align:right\n}\n\ndl.zend_form dd#submit-element input[type=\"submit\"], dl.zend_form dd#submit-element button  {\n    margin: 0 0 0 6px;\n}\n\n\n\n\n/** Actions theme */\n.content > .actions {\n    margin: 1em 0;\n    font-size: 1.2em;\n}\n\n.content > .actions ul {\n    margin: 0;\n    padding: 0;\n    height: 1%;\n    overflow: hidden;\n}\n\n.content > .actions li {\n    float: left;\n    margin: 0 0 0 5px;\n    padding: 0 0 0 5px;\n    border-left: 1px solid #ccc;\n}\n\n.content > .actions li:first-child {\n    border-left: 0;\n    padding-left: 0;\n}\n\n.filter .zend_form { width: 100%; }\n.tiny .zend_form { width: 25%; }\n.medium .zend_form { width: 620px; }\n\n.popup .zend_form { \n    border: none;\n    padding: 0 0 12px 0;\n\tbox-shadow: none;\n    -moz-box-shadow: none;\n    -webkit-box-shadow: none;\n\tmargin:0;\n}\n\nform.popup dd input[type=\"text\"] {\n    width: 99%;\n}\n"
  },
  {
    "path": "newscoop/admin-style/content.css",
    "content": "body h1 {\n    float: none;\n    margin: 0;\n    padding: 13px 30px 0;\n}\n\n/** Icons */\na.icon:hover .ui-icon {\n    background-image: url('custom-theme/images/ui-icons_d00000_256x240.png');\n}\n\n.icon .ui-icon {\n    position: relative;\n    top: 0;\n    left: 0;\n    background-image: url('custom-theme/images/ui-icons_007fb3_256x240.png');\n}\n\na.ui-icon-wrapper {\n    position: relative;\n    padding-left: 16px;\n}\n\na.ui-icon-wrapper span {\n    position: absolute;\n    top: -2px;\n    left: 0;\n}\n\n/** Messages */\n.message {\n    margin: 1em 0;\n    padding: 9px;\n    background-color: #fff;\n    border: 1px solid #a9a9a9;\n    -moz-box-shadow: 2px 2px 3px #ccc;\n    -webkit-box-shadow: 2px 2px 3px #d4d4d4;\n    box-shadow: 2px 2px 3px #e5e5e5;\n}\n\n.message:first-child {\n    margin-top: 0;\n}\n\n.message p {\n    margin: 0;\n    padding: 0;\n    font-size: 2em;\n}\n\n.message.error {\n    color: #cc0000;\n}\n\n/** Actions */\n.content .actions {\n    margin: 1em 0;\n    font-size: 1.2em;\n}\n\n.content .actions ul {\n    margin: 0;\n    padding: 0;\n    height: 1%;\n    overflow: hidden;\n}\n\n.content .actions li {\n    float: left;\n    margin: 0 0 0 5px;\n    padding: 0 0 0 5px;\n    border-left: 1px solid #ccc;\n}\n\n/*.content .actions li:first-child {\n    border-left: 0;\n    padding-left: 0;\n}*/\n\n/** Lists */\nul.edit {\n    margin: 0;\n    padding: 0;\n    font-size: 1.3em;\n}\n\nul.edit li {\n    height: 33px;\n    line-height: 33px;\n    margin: 10px 0 0;\n    padding: 0 9px;\n    font-weight: bold;\n    background-color: #fafafa;\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff), color-stop(1, #f5f5f5));\n    border: 1px solid #a9a9a9;\n    -moz-box-shadow: 2px 2px 3px #ccc;\n    -webkit-box-shadow: 2px 2px 3px #d4d4d4;\n    box-shadow: 2px 2px 3px #e5e5e5;\n}\n\nul.edit li:first-child {\n    margin-top: 0;\n}\n\nul.edit li a.delete {\n    float: right;\n    margin-top: 8px;\n    font-weight: normal;\n}\n\n.resource-group {\n    width: 500px;\n    margin: 0 13px 13px 0;\n    padding: 8px;\n    background-color: #fff;\n    border: 1px solid #9D9D9D;\n    -moz-box-shadow: 0 2px 2px rgba(0,0,0,.10);\n    -webkit-box-shadow: 0 2px 2px rgba(0,0,0,.10);\n    box-shadow: 0 2px 2px rgba(0,0,0,.10);\n}\n\n.content-sidebar .resource-group {\n    float: none;\n    margin-right: 0;\n}\n\n.resource-group.layout, .resource-group.system {\n    clear: left;\n}\n\n.resource-group h2 {\n    margin: 0 0 3px;\n    padding: 0;\n    font-size: 1.5em;\n    color: #333;\n}\n\n.resource-group h3 {\n    margin: 5px 0 0 !important;\n    padding: 7px 5px 6px 28px;\n}\n\nul.resource {\n    margin: 0;\n    padding: 0;\n}\n\nul.resource li {\n    margin: 3px 0 0;\n    padding: 5px;\n    background-color: #efefef;\n}\n\nul.resource li.all, ul.resource li.all:hover {\n    margin-top: -8px;\n    padding-top: 0;\n    padding-bottom: 3px;\n    background-color: transparent;\n}\n\nul.resource li.deny {\n    background-color: #fae9e9;\n}\n\nul.resource li:hover {\n    background-color: #cce5f0;\n}\n\nul.resource input {\n    float: left;\n}\n\nul.resource label {\n    display: block;\n    margin: 0 0 0 20px;\n    padding: 3px 0 0 3px;\n    cursor: pointer;\n}\n\n.resource-group.ui-accordion .ui-accordion-content {\n    padding: 10px 0 10px !important;\n}\n\n/* Theme edit\n--------------------------------- */\n.theme-edit dl.zend_form {\n\tbox-shadow: none;\n\twidth:100%;\n\tmargin: 6px 0 10px 0;\n}\n.theme-edit .zend_form dd.buttons {\n    margin-top: 10px;\n    padding: 0;\n\tdisplay:block;\n\ttext-align:right;\n}\n.theme-edit .zend_form dd {\n    margin: 0;\n    padding: 0;\n\tdisplay:inline;\n}\n.theme-edit .zend_form dd input[type=\"file\"] {\n    width: 30%;\n}\n.theme-edit .zend_form dd input[type=\"button\"],\n.theme-edit .zend_form dd .geo_filtering_button {\n\tbackground: -moz-linear-gradient(center top , #FAFAFA 0pt, #F6F6F6 100%) repeat scroll 0 0 transparent;\n    border: 1px solid #9D9D9D;\n    color: #444444;\n    cursor: pointer;\n    margin: -6px 6px 0 0;\n    padding: 6px 7px 3px 4px;\n}\n\n.theme-edit .zend_form dd input[type=\"button\"]:hover,\n.theme-edit .zend_form dd .geo_filtering_button:hover {\n\tbackground: #007FB3;\n    background: -moz-linear-gradient(center top , #2390BD 0pt, #007FB3 100%) repeat scroll 0 0 transparent;\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #2390BD), color-stop(100%, #007FB3));\n    border: 1px solid #007FB3;\n    color: #FFFFFF;\n}\n.theme-edit fieldset dl\t{\n\tmargin:0;\n}\ndl dd .info-text\t{\n\tpadding: 0;\n\tmargin: 0 0 10px 0;\n\tfloat: none;\n\tfont-weight: normal !important;\n}\n.theme-edit #EditAreaArroundInfos_cField\t{\n\ttext-align:right;\n\tmargin-bottom:8px;\n}\n.theme-edit .zend_form dd input[type=\"text\"] {\n\twidth:40%;\n}\n.theme-edit .save-button-bar {\n\tpadding:0;\n\tmargin:0;\n\tfloat:right;\n}\n.theme-edit .area_toolbar {\n    background-color: #F5F5F5 !important;\n}\n.theme-edit dl.zend_form:last-child {\n    margin: 6px 0 0 0;\n}\n#template-edit-area-element textarea {\n\tmargin: 0;\n    padding: 5px 0 0 0;\n    /*width: 998px;*/\n    text-indent: 3px;\n    width: 90%;\n    min-width: 1000px;\n}\n\n.edit-image  {\n    margin: 8px 0;\n    height: 1%;\n    overflow: hidden;\n}\n\n.edit-image a {\n    display: block;\n    float: left;\n    padding: 5px;\n    font-size: 1.3em;\n    background-color: #fff;\n    text-align: left;\n}\n\n.iframe .content {\n    margin: 5px;\n}\n\n.iframe .zend_form {\n    width: 503px;\n}\n\n.simple-tabs .ui-state-active a:link,\n.simple-tabs .ui-state-active a:visited {\n    color: #444444;\n}\n.actions ul.navigation li.margin {\n\tmargin-left:25px;\n}\n\nbutton:hover .ui-icon-polygon,\n.ui-icon-polygon:hover {\n    background: transparent url(images/geo_polygon_blue.png) no-repeat;\n}\n\n.ui-icon-polygon {\n    float: left;\n    margin: -3px 6px 0px 3px;\n\n    display: block;\n    text-indent: -99999px;\n    overflow: hidden;\n    background-repeat: no-repeat;\n\n    height: 22px;\n    width: 24px;\n\n    background: transparent url(images/geo_polygon_off.png) no-repeat;\n}\n\n.geo_filtering_button {\n    background: #f6f6f6;\n}\n\n.geo_filtering-label {\n}\n\n\n\n/* Context Box\n---------------------------------------------- */\n\n#context-box\t{\n\tpadding: 10px;\n    height: 660px;\n    width: 1100px;\n\tbackground:#FFF;\n\tmargin: 0 auto;\n}\n#context-box .toolbar {\n    min-height: 35px;\n    padding: 6px 4px;\n\tbackground:none;\n\tbox-shadow:none;\n\tborder:none;\n}\n#context-box h2\t{\n\tcolor:#444444;\n\twidth:50%;\n\tmargin: 0 6px;\n}\n.context-content\t{\n\tbackground: #f5f5f5;\n\tborder: 1px solid #ccc;\n\toverflow:hidden;\n\tbox-shadow: 0 2px 2px rgba(0, 0, 0, 0.1) inset;\n\theight:610px;\n}\n.context-block\t{\n\twidth:44.9%;\n\theight:550px;\n\tfloat:left;\n\tborder:1px solid #9d9d9d;\n\tbackground:#FFF;\n\tpadding:10px;\n\tfont-size: 12px;\n\tfont-family:Arial, Helvetica, sans-serif;\n    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1);\n\n}\n\n/* Left block */\n.context-search\t{\n\tmargin: 22px 11px 22px 22px;\n\tcolor: #444444;\n\theight: 550px;\n\toverflow-y: auto;\n}\n.context-search .search\t{\n\tbackground-image: url(\"images/searchfield_bg.png\");\n    border: 1px solid #9D9D9D;\n    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1) inset;\n    height: 23px;\n    margin: 0;\n    padding: 0 6px 0 20px;\n    text-indent: 3px;\n\twidth:94.4%;\n\tfont-size: 12px;\n\tfont-family:Arial, Helvetica, sans-serif;\n\tcolor: #444444;\n}\n.context-search-results\t{\n\tborder: 1px solid #9d9d9d;\n\tbox-shadow: 0 2px 2px rgba(0, 0, 0, 0.1) inset;\n\tbackground: #f9f9f9;\n\tmargin: 5px 0 0;\n\tmax-height: 330px;\n\tpadding-bottom: 20px;\n}\n.context-search .context-item\t{\n\tborder-bottom:1px solid #cbcbcb;\n\tposition:relative;\n\tpadding:5px 5px 5px 26px;\n}\n.context-drag-topics a\t{\n\twidth:10px;\n\tbackground: url(images/topics-drag-context.png) repeat-y 0 0;\n\tposition:absolute;\n\ttop: 5px;\n\tleft: 6px;\n\tbottom: 4px;\n}\n.context-drag-topics a:hover\t{\n\twidth:10px;\n\tbackground: url(images/topics-drag-context.png) repeat-y -10px 0;\n\tposition:absolute;\n\ttop: 5px;\n\tleft: 6px;\n\tbottom: 4px;\n}\n.context-item-header\t{\n\theight:13px;\n\tpadding: 2px 0;\n\tdisplay:block;\n\tfont-size:11px;\n}\n.context-item-date\t{\n\tcolor: #999;\n\tfloat:left;\n\tpadding: 1px 0px;\n}\na.view-article {\n\tfloat:right;\n\tmargin: 0 2px 0 0;\n\tpadding: 1px 6px;\n}\na.view-article:hover {\n\tfloat:right;\n\tmargin: 0 2px 0 0;\n\tpadding: 1px 6px;\n\tbackground:#75bad6;\n\tcolor: #FFF;\n\t-moz-border-radius: 3px;\n\t-webkit-border-radius: 3px;\n\tborder-radius: 3px;\n}\n.context-search .context-item-summary\t{\n\tpadding: 4px 0;\n}\n.context-search fieldset.controls,\n.context-search fieldset.buttons,\n.context-search fieldset.fiters,\n.context-search fieldset.actions {\n    border: 1px solid #CCCCCC;\n    margin: 4px 0;\n    padding: 10px;\n}\n\n.context-search fieldset\t{\n\tmargin:0;\n\tpadding:10px 10px 0 10px;\n}\n.context-search fieldset select {\n    width: 256px;\n}\n.context-search .extra {\n    margin-top: 8px;\n}\n.context-search dd,\n.context-search dl.zend_form\t{\n\tmargin:10px 0;\n\tpadding:0;\n\tborder:none;\n\tbox-shadow:none;\n\twidth:auto;\n}\n.context-search a.reset {\n    display: inline-block;\n    font-size: 0.9em;\n    margin: 8px 2px 0;\n}\n\n\n/* Right block */\n.context-list,\n.context-article\t{\n\tmargin: 22px 22px 22px 11px;\n\tcolor: #007fb3;\n\tbackground:#FFF;\n}\n.context-article\t{\n}\n.context-list-results\t{\n\tborder: 1px solid #9d9d9d;\n\tbox-shadow: 0 2px 2px rgba(0, 0, 0, 0.1) inset;\n\tbackground: #f9f9f9;\n\tmargin: 15px 0 0;\n\theight:506px;\n}\n.context-list .context-item\t{\n\tborder:1px solid #ccc;\n\tbackground:#fff;\n\tmargin:4px 8px;\n\tfloat:left;\n\tposition:relative;\n\tpadding:5px 5px 5px 26px;\n\twidth:441px;\n}\n.context-list .context-item-summary\t{\n\tpadding: 2px 18px 2px 0;\n}\n.context-list input.default-button,\n.context-article input.default-button\t{\n\tmargin:0;\n}\n.context-list-results .save-button-bar\t{\n\tmargin:8px 8px 4px 0;\n}\n.context-list h3, .context-search h3\t{\n\tcolor:#444444;\n\twidth:50%;\n\tmargin: 0 6px;\n\tpadding:2px 0;\n\tfont-size:1.5em;\n}\n.context-article-preview\t{\n\tmargin:30px 0 0;\n\tpadding: 10px;\n}\n.context-article-preview h3\t{\n\tcolor:#007fb3;\n\tfont-size: 1.8em;\n\twidth:100%;\n\tfont-family:Georgia, \"Times New Roman\", Times, serif;\n\tpadding:0;\n\tmargin:0;\n}\n.context-article-preview p\t{\n\tfont-size:12px;\n\tcolor:#444;\n\tline-height:1.4em;\n}\n\n/* pagination */\n.context-paginate.ui-buttonset {\n    height: auto;\n    overflow: hidden;\n}\n.context_info {\n    color: #696969;\n    font-size: 11px;\n    font-weight: normal;\n    padding: 6px 0;\n\tmargin:3px 0 0;\n}\n.context-block .ui-state-default:hover {\n\tcolor:#FFFFFF;\n\tbackground: #007FB3;\n    background: -moz-linear-gradient(center top , #2390BD 0pt, #007FB3 100%) repeat scroll 0 0 transparent;\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #2390BD), color-stop(100%, #007FB3));\n\tborder: 1px solid #007FB3;\n}\n\n.content .aside {\n    float: left;\n    width: 180px;\n    margin: 0 0 8px 0;\n}\n\n.aside ul.filters {\n    margin: 0;\n    padding: 0;\n}\n\n.aside ul.filters li {\n    margin: 0 0 3px;\n    padding: 5px 8px;\n    font-size: 1.3em;\n    line-height: 1em;\n    background-color: #fff;\n}\n\n.aside ul.filters li.vspace {\n    background-color: transparent;\n}\n\n.aside ul.filters li a.active {\n    font-weight: bold;\n}\n\n.aside .actions {\n    margin-top: 26px;\n}\n\n.aside .actions .navigation li {\n    border-color: #f5f5f5;\n}\n\n.canvas {\n    min-width: 600px;\n    margin: 0 0 8px 188px;\n}\n\n.canvas ul.users {\n    float: left;\n    width: 100%;\n    margin: 0 0 8px;\n    padding: 0;\n}\n\n.canvas ul.users li {\n    margin: 0 0 3px;\n    padding: 5px 8px;\n    font-size: 1.3em;\n    line-height: 1em;\n    background-color: #fff;\n}\n\n.canvas ul.users li a.edit {\n    display: inline-block;\n    width: 30%;\n    min-width: 200px;\n}\n\n.canvas ul.users li a.mailto {\n    display: inline-block;\n    width: 30%;\n    min-width: 250px;\n    color: #333;\n}\n\n.canvas ul.users .status {\n    display: inline-block;\n    width: 8%;\n    min-width: 100px;\n}\n\n.canvas ul.users .inline-actions {\n    float: right;\n    color: #666\n}\n\n.canvas ul.users .created {\n    color: #666;\n}\n\n.canvas .paginationControl {\n    float: right;\n    clear: right;\n    margin: 0;\n    font-size: 1.3em;\n    line-height: 1em;\n    color: #333;\n}\n\n.canvas .paginationControl * {\n    margin: 0 8px 5px 0;\n    padding: 1px 8px;\n}\n\n.canvas .paginationControl .disabled {\n    color: inherit;\n}\n\n.canvas .controls {\n    height: 26px;\n    overflow: hidden;\n}\n\n.canvas .status.s-0 {\n    color: #f57900;\n}\n\n.canvas .status.s-1 {\n    color: #4e9a06;\n}\n\n.canvas .status.s-2 {\n    color: #cc0000;\n}\n\n.canvas > .controls dl {\n    margin: 0;\n}\n\n.canvas > .controls dt {\n    display: none;\n}\n\n.canvas > .controls dd {\n    margin-left: 0;\n}\n\nh1 {\n    position: relative;\n}\n\n.inline-search {\n    position: absolute;\n    left: 210px;\n}\n\n.inline-search input {\n    padding: 3px 5px;\n    border: 1px solid #fff;\n    background-color: #fff;\n}\n\n.renditions {\n    height: 1%;\n    overflow: hidden;\n    margin: 0;\n    padding: 0 4px;\n    background-color: #d0d0d0;\n}\n\n.renditions li {\n    list-style-type: none;\n    float: left;\n    width: 152px;\n    margin: 8px 4px 8px;\n    padding: 4px;\n    background-color: #fff;\n    position: relative;\n    border: 1px solid #b0b0b0;\n}\n\n.renditions li.state-active {\n    color: #fff;\n    background-color: #000;\n}\n\ndl.rendition {\n    margin: 0;\n    padding: 0;\n}\n\ndl.rendition dt {\n    margin: 0;\n    padding: 0;\n}\n\ndl.rendition dd {\n    margin: 3px 0 0;\n    padding: 0;\n}\n\ndl.rendition .preview {\n    height: 152px;\n}\n\ndl.rendition .preview {\n    border: 1px solid #4e4e4e;\n    overflow: hidden;\n}\n\ndl.rendition dt {\n    height: 152px;\n}\n\nli.state-active dl.rendition .preview {\n    border-color: #fff;\n}\n\nli.state-active dl.rendition dd.name {\n    color: #fff;\n}\n\n.renditions .reset {\n    position: absolute;\n    right: 4px;\n    top: 4px;\n    padding: 3px;\n    color: #fff;\n    background-color: #4e4e4e;\n    opacity: 0.8;\n}\n\n.renditions .reset:hover {\n    opacity: 1;\n}\n\n.renditions h3 {\n    font-size: 1.1em;\n}\n\n.thumbnails {\n    clear: both;\n    margin: 0 0 8px;\n    padding: 0 4px;\n}\n\n.thumbnails li {\n    list-style-type: none;\n    display: inline-block;\n    width: 152px;\n    margin: 8px 4px 8px;\n    padding: 4px;\n    background-color: #fff;\n    border: 1px solid #9d9d9d;\n}\n\n.thumbnails li.small {\n    width: 77px;\n}\n\n.thumbnails img {\n    border: 1px solid #ccc;\n}\n\n.thumbnails figure {\n    margin: 0;\n    padding: 0;\n}\n\n.thumbnails figure div {\n    min-height: 153px;\n}\n\n.thumbnails figure div.small {\n    min-height: 78px;\n}\n\n.thumbnails figure img {\n    display: block;\n}\n\n.thumbnails figcaption {\n    padding: 5px 0 0;\n}\n\n.thumbnails figure label {\n    font-size: 1em;\n}\n\n.thumbnails input {\n    float: right;\n}\n\n#next h2 {\n    margin: 13px 0 0;\n    padding: 0 13px;\n    font-size: 1.5em;\n}\n\n#next h2 small {\n    font-size: 1em;\n}\n\n#next .editarea h2 {\n    margin-bottom: 5px;\n    padding: 0 5px;\n}\n\n#next #editor {\n    display: inline-block;\n    margin: 5px 0;\n    padding: 5px;\n    background-color: #000;\n}\n\n#next .editarea .video-preview {\n    display: inline-block;\n    margin: 5px 0;\n    padding: 5px;\n    background-color: #000;\n}\n\n.slideshow {\n    clear: both;\n    height: 1%;\n    min-height: 150px;\n    overflow: hidden;\n    margin: 8px 0;\n    padding: 4px;\n    background-color: #d0d0d0;\n}\n\n.slideshow li {\n    float: left;\n    margin: 4px 4px;\n    padding: 13px 4px 4px;\n    width: 152px;\n    background-color: #fff;\n    border: 1px solid #9c9c9c;\n    position: relative;\n}\n\n.slideshow .placeholder {\n    width: 150px;\n    height: 166px;\n    border: 2px dashed #b0b0b0;\n    background-color: transparent;\n}\n\n.slideshow .rendition-preview, .slideshow .video-preview {\n    border: 1px solid #9d9d9d;\n}\n\n.slideshow .video-preview {\n    height: 150px;\n    overflow: hidden;\n}\n\n.slideshow a figcaption {\n    margin: 3px 0 0;\n    font-size: 1.1em;\n    color: #000;\n}\n\n.slideshow figure {\n    margin: 0;\n}\n\n.slideshow figure > div {\n    height: 152px;\n    overflow: hidden;\n}\n\n.slideshow .remove {\n    position: absolute;\n    top: 0;\n    right: 0;\n    padding: 3px;\n    color: #fff;\n    background-color: #000;\n    opacity: 0.8;\n}\n\n.slideshow .remove:hover {\n    opacity: 1;\n}\n\n#next.iframe {\n    background-color: #f5f5f5;\n}\n\n#next.iframe.dark {\n    background-color: #d0d0d0;\n}\n\n#next.iframe .content {\n    margin: 0;\n}\n\n#next.iframe h1 {\n    height: auto;\n    min-height: 1%;\n    line-height: 1em;\n    margin: 0;\n    padding: 5px 8px 13px;\n    background: #fff none;\n    font-size: 2em;\n    box-shadow: none;\n    border: none;\n}\n\n#next .inline {\n    float: none;\n    width: auto;\n    margin: 8px 0;\n    padding: 0 8px;\n}\n\n#next input[type=\"text\"] {\n    min-width: 21em;\n    margin: 3px 5px 5px 0;\n    padding: 3px;\n    border: 1px solid #ccc;\n}\n\n#next .editarea input[type=\"text\"] {\n    width: 98%;\n}\n\n#next input[type=\"text\"].short {\n    min-width: 50px;\n}\n\n#next input[type=\"text\"].error {\n    color: #a40000;\n    border-color: #a40000;\n}\n\n#next .editarea {\n    padding-bottom: 5px;\n    text-align: center;\n    position: relative;\n    background-color: #f5f5f5;\n}\n\n#next .editarea > div {\n    display: inline-block;\n    text-align: left;\n    min-width: 500px;\n}\n\n.editarea button {\n    margin: 3px 0;\n}\n\n.editarea .next, .editarea .prev {\n    position: absolute;\n    width: 52px;\n    height: 67px;\n    overflow: hidden;\n    top: 34%;\n}\n\n.editarea .next span, .editarea .prev span {\n    display: block;\n    position: absolute;\n    top: 0;\n    left: 0;\n    width: 52px;\n    height: 67px;\n    background: transparent none no-repeat 0 0;\n}\n\n.editarea .prev { left: 0; }\n.editarea .next { right: 0; }\n\n.editarea .prev span { background-image: url('images/arrow_prev.png'); }\n.editarea .next span { background-image: url('images/arrow_next.png'); }\n\n.slideshow.editor { margin: 0; }\n.slideshow.editor .remove { display: none; }\n\n.editarea .done {\n    position: absolute;\n    top: 8px;\n    right: 8px;\n}\n\n#next button, .editarea .done {\n    display: inline-block;\n    margin: 0;\n    padding: 3px 5px;\n    font-size: 1.3em;\n    color: #444;\n    background-color: #f9f9f9;\n    border: 1px solid #9d9d9d;\n    cursor: pointer;\n}\n\n#editor input[type=\"radio\"] { display: none; }\n\n.slideshows {\n    clear: both;\n    margin: 0;\n    padding: 0;\n}\n\n.slideshows li {\n    margin: 3px 0 0;\n    font-size: 1.3em;\n}\n\n.renditions.editor .reset { display: none; }\n\n.renditions .active, .slideshow .active {\n    background-color: #d9eaf9;\n}\n\n.archive.images {\n    min-width: 34em;\n}\n\n.archive.images figcaption {\n    height: 2.2em;\n    overflow: hidden;\n}\n\n#image-archive {\n    display: inline-block;\n    position: relative;\n}\n\n#slideshows .slideshows {\n    margin: 8px;\n}\n\n#slideshows .slideshows > li {\n    height: 1%;\n    overflow: hidden;\n    margin: 8px 0 0;\n    padding: 5px;\n    background-color: #fff;\n}\n\n#slideshows .slideshows a {\n    float: left;\n    display: inline-block;\n    padding: 3px 5px;\n    color: #fff;\n    background-color: #000;\n    font-size: 0.85em;\n}\n\n#slideshows .slideshows a small {\n    font-size: 0.8em;\n}\n\n#slideshows .slideshow-preview {\n    float: left;\n    clear: left;\n    padding: 0 0 5px 5px;\n    background-color: #2e3436;\n}\n\n#slideshows .slideshow-preview .rendition-preview {\n    float: left;\n    margin: 5px 5px 0 0;\n}\n\na.create-slideshow {\n    display: inline-block;\n    margin: 13px 13px 5px;\n    padding: 3px 5px;\n    color: #fff;\n    background-color: #4e9a06;\n}\n\n#next .ui-tabs {\n    border: none;\n    font-size: 1em;\n}\n\n#next .ui-tabs-nav {\n    font-size: 1.1em;\n}\n\n#next #image-search {\n    margin: 8px 8px 0;\n}\n\n#next #image-archive .info {\n    margin: 8px;\n    font-size: 1.1em;\n}\n\ndl.slideshow-preview {\n    margin: 0;\n    padding: 0;\n    height: 1%;\n    overflow: hidden;\n}\n\ndl.slideshow-preview dt {\n    float: left;\n    clear: right;\n    padding: 3px 5px;\n    color: #fff;\n    background-color: #000;\n}\n\ndl.slideshow-preview dd {\n    float: left;\n    margin: 0;\n    padding: 5px 5px 5px 0;\n    color: #eeeeec;\n    background-color: #2e3436;\n}\n\ndl.slideshow-preview dd.first {\n    clear: left;\n    padding-left: 5px;\n}\n\ndl.slideshow-preview figure {\n    margin: 0;\n}\n\ndl.slideshow-preview figure > div > * {\n    display: block;\n    border: 1px solid #babdb6;\n}\n\n.ui-selected dl.slideshow-preview {\n    opacity: 0.5;\n}\n\n#attach-slideshow-list {\n    margin: 13px 8px;\n}\n\n#next .buttons {\n    margin: 0 8px 13px;\n}\n\n#media-slideshows .slideshows {\n    margin-top: 34px;\n    font-size: 0.8em;\n}\n\n#media-slideshows .slideshows .detach {\n    float: right;\n    color: #a40000;\n}\n\n#media-slideshows .slideshows li {\n    margin: 8px 0 0;\n    padding: 5px;\n    border: 1px solid #ccc;\n}\n\n#media-slideshows .slideshows a {\n    color: #2e3436;\n}\n\n#media-slideshows .empty {\n    clear: both;\n    margin: 0;\n    padding: 13px 0 0;\n}\n\n#rendition-list {\n    list-style-type: none;\n    margin: 8px 0;\n    padding: 0;\n    max-width: 60em;\n}\n\n#rendition-list > li {\n    margin: 3px 0 0;\n    padding: 5px;\n    background-color: #fff;\n    font-size: 1.3em;\n}\n\n#rendition-list input {\n    border: 1px solid #ccc;\n    padding: 2px 5px;\n}\n\n/* modal popup styles */\n\n#modal-top {\n    background: #fff;\n    margin: 0 auto;\n}\n#modal-top .toolbar {\n    min-height: 35px;\n    padding: 6px 20px 6px 0px;\n    background: #fff;\n    box-shadow: none;\n    border: none;\n}\n#modal-top h2 {\n    color: #444444;\n    width: 50%;\n    margin: 0 6px;\n}\n\n.users abbr.verified {\n    margin: 0 0 0 5px;\n    padding: 0 3px;\n    color: #fff;\n    background-color: #4e9a06;\n    border: none;\n}\n\n#article-image-edit-thumbnail,\n#article-image-edit-form {\n    float: left;\n    padding: 13px 0 13px 13px;\n}\n\n.caption-reuse > input {\n    float: left;\n}\n\n#article-image-edit-form .caption-reuse > button {\n    margin-top: 6px;\n}"
  },
  {
    "path": "newscoop/admin-style/fg-menu/fg.menu.css",
    "content": "/* Styles for jQuery menu widget\nAuthor:\tMaggie Wachs, maggie@filamentgroup.com\nDate:\t\tSeptember 2008\n*/\n\n\n/* REQUIRED STYLES - the menus will only render correctly with these rules */\t\n\n.fg-menu-container { position: absolute; top:0; left:-999px; padding: .4em;  overflow: hidden; }\n.fg-menu-container.fg-menu-flyout { overflow: visible; }\n\n.fg-menu, .fg-menu ul { list-style-type:none; padding: 0; margin:0; }\n\n.fg-menu { position:relative; }\n.fg-menu-flyout .fg-menu { position:static; }\n\n.fg-menu ul { position:absolute; top:0; }\n.fg-menu ul ul { top:-1px; }\n\n.fg-menu-container.fg-menu-ipod .fg-menu-content, \n.fg-menu-container.fg-menu-ipod .fg-menu-content ul { background: none !important; }\n\n.fg-menu.fg-menu-scroll,\n.fg-menu ul.fg-menu-scroll { overflow: scroll;  overflow-x: hidden; }\n\n.fg-menu li { clear:both; float:left; width:100%; margin: 0; padding:0; border: 0; }\t\n.fg-menu li li { font-size:1em; } /* inner li font size must be reset so that they don't blow up */\n\n.fg-menu-flyout ul ul { padding: .4em; }\n.fg-menu-flyout li { position:relative; }\n\n.fg-menu-scroll { overflow: scroll; overflow-x: hidden; }\n\n.fg-menu-breadcrumb { margin: 0; padding: 0; }\n\n.fg-menu-footer {  margin-top: .4em; padding: .4em; }\n.fg-menu-header {  margin-bottom: .4em; padding: .4em; }\n\n.fg-menu-breadcrumb li { float: left; list-style: none; margin: 0; padding: 0 .2em; font-size: .9em; opacity: .7; }\n.fg-menu-breadcrumb li.fg-menu-prev-list,\n.fg-menu-breadcrumb li.fg-menu-current-crumb { clear: left; float: none; opacity: 1; }\n.fg-menu-breadcrumb li.fg-menu-current-crumb { padding-top: .2em; }\n\n.fg-menu-breadcrumb a, \n.fg-menu-breadcrumb span { float: left; }\n\n.fg-menu-footer a:link,\n.fg-menu-footer a:visited { float:left; width:100%; text-decoration: none; }\n.fg-menu-footer a:hover,\n.fg-menu-footer a:active {  }\n\n.fg-menu-footer a span { float:left; cursor: pointer; }\n\n.fg-menu-breadcrumb .fg-menu-prev-list a:link,\n.fg-menu-breadcrumb .fg-menu-prev-list a:visited,\n.fg-menu-breadcrumb .fg-menu-prev-list a:hover,\n.fg-menu-breadcrumb .fg-menu-prev-list a:active { background-image: none; text-decoration:none; }\n\t\n.fg-menu-breadcrumb .fg-menu-prev-list a { float: left; padding-right: .4em; }\n.fg-menu-breadcrumb .fg-menu-prev-list a .ui-icon { float: left; }\n\t\n.fg-menu-breadcrumb .fg-menu-current-crumb a:link,\n.fg-menu-breadcrumb .fg-menu-current-crumb a:visited,\n.fg-menu-breadcrumb .fg-menu-current-crumb a:hover,\n.fg-menu-breadcrumb .fg-menu-current-crumb a:active { display:block; background-image:none; font-size:1.3em; text-decoration:none; }\n\n\n\n/* REQUIRED LINK STYLES: links are \"display:block\" by default; if the menu options are split into \n\tselectable node links and 'next' links, the script floats the node links left and floats the 'next' links to the right\t*/\n\n.fg-menu a:link,\n.fg-menu a:visited,\n.fg-menu a:hover,\n.fg-menu a:active { float:left; width:92%; padding:.3em 3%; text-decoration:none; outline: 0 !important; }\n\n.fg-menu a { border: 1px dashed transparent; }\n\n.fg-menu a.ui-state-default:link,\n.fg-menu a.ui-state-default:visited,\n.fg-menu a.ui-state-default:hover,\n.fg-menu a.ui-state-default:active,\n.fg-menu a.ui-state-hover:link,\n.fg-menu a.ui-state-hover:visited,\n.fg-menu a.ui-state-hover:hover,\n.fg-menu a.ui-state-hover:active,\n .fg-menu a.ui-state-active:link,\n .fg-menu a.ui-state-active:visited,\n .fg-menu a.ui-state-active:hover,\n.fg-menu a.ui-state-active:active { border-style: solid; font-weight: normal; }\n\n.fg-menu a span { display:block; cursor:pointer; }\n\n\n /* SUGGESTED STYLES - for use with jQuery UI Themeroller CSS */\t\n \n.fg-menu-indicator span { float:left; }\n.fg-menu-indicator span.ui-icon { float:right; }\n\n.fg-menu-content.ui-widget-content, \n.fg-menu-content ul.ui-widget-content { border:0; }\n\n\n/* ICONS AND DIVIDERS */\n\n.fg-menu.fg-menu-has-icons a:link,\n.fg-menu.fg-menu-has-icons a:visited,\n.fg-menu.fg-menu-has-icons a:hover,\n.fg-menu.fg-menu-has-icons a:active { padding-left:20px; }\n\n.fg-menu .horizontal-divider hr, .fg-menu .horizontal-divider span { padding:0; margin:5px .6em; }\n.fg-menu .horizontal-divider hr { border:0; height:1px; }\n.fg-menu .horizontal-divider span { font-size:.9em; text-transform: uppercase; padding-left:.2em; }\n\n"
  },
  {
    "path": "newscoop/admin-style/fg-menu/fg.menu.js",
    "content": "/*-------------------------------------------------------------------- \r\nScripts for creating and manipulating custom menus based on standard <ul> markup\r\nVersion: 3.0, 03.31.2009\r\n\r\nBy: Maggie Costello Wachs (maggie@filamentgroup.com) and Scott Jehl (scott@filamentgroup.com)\r\n\thttp://www.filamentgroup.com\r\n\t* reference articles: http://www.filamentgroup.com/lab/jquery_ipod_style_drilldown_menu/\r\n\t\t\r\nCopyright (c) 2009 Filament Group\r\nDual licensed under the MIT (filamentgroup.com/examples/mit-license.txt) and GPL (filamentgroup.com/examples/gpl-license.txt) licenses.\r\n--------------------------------------------------------------------*/\r\n\r\n\r\nvar allUIMenus = [];\r\n\r\n$.fn.menu = function(options){\r\n\tvar caller = this;\r\n\tvar options = options;\r\n\tvar m = new Menu(caller, options);\t\r\n\tallUIMenus.push(m);\r\n\t\r\n\t$(this)\r\n\t.mousedown(function(){\r\n\t\tif (!m.menuOpen) { m.showLoading(); };\r\n\t})\t\r\n\t.click(function(){\r\n\t\tif (m.menuOpen == false) { m.showMenu(); }\r\n\t\telse { m.kill(); };\r\n\t\treturn false;\r\n\t});\t\r\n};\r\n\r\nfunction Menu(caller, options){\r\n\tvar menu = this;\r\n\tvar caller = $(caller);\r\n\tvar container = $('<div class=\"fg-menu-container ui-widget ui-widget-content ui-corner-all\">'+options.content+'</div>');\r\n\t\r\n\tthis.menuOpen = false;\r\n\tthis.menuExists = false;\r\n\t\r\n\tvar options = jQuery.extend({\r\n\t\tcontent: null,\r\n\t\twidth: 180, // width of menu container, must be set or passed in to calculate widths of child menus\r\n\t\tmaxHeight: 180, // max height of menu (if a drilldown: height does not include breadcrumb)\r\n\t\tpositionOpts: {\r\n\t\t\tposX: 'left', \r\n\t\t\tposY: 'bottom',\r\n\t\t\toffsetX: 0,\r\n\t\t\toffsetY: 0,\r\n\t\t\tdirectionH: 'right',\r\n\t\t\tdirectionV: 'down', \r\n\t\t\tdetectH: true, // do horizontal collision detection  \r\n\t\t\tdetectV: true, // do vertical collision detection\r\n\t\t\tlinkToFront: false\r\n\t\t},\r\n\t\tshowSpeed: 200, // show/hide speed in milliseconds\r\n\t\tcallerOnState: 'ui-state-active', // class to change the appearance of the link/button when the menu is showing\r\n\t\tloadingState: 'ui-state-loading', // class added to the link/button while the menu is created\r\n\t\tlinkHover: 'ui-state-hover', // class for menu option hover state\r\n\t\tlinkHoverSecondary: 'li-hover', // alternate class, may be used for multi-level menus\t\t\r\n\t// ----- multi-level menu defaults -----\r\n\t\tcrossSpeed: 200, // cross-fade speed for multi-level menus\r\n\t\tcrumbDefaultText: 'Choose an option:',\r\n\t\tbackLink: true, // in the ipod-style menu: instead of breadcrumbs, show only a 'back' link\r\n\t\tbackLinkText: 'Back',\r\n\t\tflyOut: false, // multi-level menus are ipod-style by default; this parameter overrides to make a flyout instead\r\n\t\tflyOutOnState: 'ui-state-default',\r\n\t\tnextMenuLink: 'ui-icon-triangle-1-e', // class to style the link (specifically, a span within the link) used in the multi-level menu to show the next level\r\n\t\ttopLinkText: 'All',\r\n\t\tnextCrumbLink: 'ui-icon-carat-1-e'\t\r\n\t}, options);\r\n\t\r\n\tvar killAllMenus = function(){\r\n\t\t$.each(allUIMenus, function(i){\r\n\t\t\tif (allUIMenus[i].menuOpen) { allUIMenus[i].kill(); };\t\r\n\t\t});\r\n\t};\r\n\t\r\n\tthis.kill = function(){\r\n\t\tcaller\r\n\t\t\t.removeClass(options.loadingState)\r\n\t\t\t.removeClass('fg-menu-open')\r\n\t\t\t.removeClass(options.callerOnState);\t\r\n\t\tcontainer.find('li').removeClass(options.linkHoverSecondary).find('a').removeClass(options.linkHover);\t\t\r\n\t\tif (options.flyOutOnState) { container.find('li a').removeClass(options.flyOutOnState); };\t\r\n\t\tif (options.callerOnState) { \tcaller.removeClass(options.callerOnState); };\t\t\t\r\n\t\tif (container.is('.fg-menu-ipod')) { menu.resetDrilldownMenu(); };\r\n\t\tif (container.is('.fg-menu-flyout')) { menu.resetFlyoutMenu(); };\t\r\n\t\tcontainer.parent().hide();\t\r\n\t\tmenu.menuOpen = false;\r\n\t\t$(document).unbind('click', killAllMenus);\r\n\t\t$(document).unbind('keydown');\r\n\t};\r\n\t\r\n\tthis.showLoading = function(){\r\n\t\tcaller.addClass(options.loadingState);\r\n\t};\r\n\r\n\tthis.showMenu = function(){\r\n\t\tkillAllMenus();\r\n\t\tif (!menu.menuExists) { menu.create() };\r\n\t\tcaller\r\n\t\t\t.addClass('fg-menu-open')\r\n\t\t\t.addClass(options.callerOnState);\r\n\t\tcontainer.parent().show().click(function(){ menu.kill(); return false; });\r\n\t\tcontainer.hide().slideDown(options.showSpeed).find('.fg-menu:eq(0)');\r\n\t\tmenu.menuOpen = true;\r\n\t\tcaller.removeClass(options.loadingState);\r\n\t\t$(document).click(killAllMenus);\r\n\t\t\r\n\t\t// assign key events\r\n\t\t$(document).keydown(function(event){\r\n\t\t\tvar e;\r\n\t\t\tif (event.which !=\"\") { e = event.which; }\r\n\t\t\telse if (event.charCode != \"\") { e = event.charCode; }\r\n\t\t\telse if (event.keyCode != \"\") { e = event.keyCode; }\r\n\t\t\t\r\n\t\t\tvar menuType = ($(event.target).parents('div').is('.fg-menu-flyout')) ? 'flyout' : 'ipod' ;\r\n\t\t\t\r\n\t\t\tswitch(e) {\r\n\t\t\t\tcase 37: // left arrow \r\n\t\t\t\t\tif (menuType == 'flyout') {\r\n\t\t\t\t\t\t$(event.target).trigger('mouseout');\r\n\t\t\t\t\t\tif ($('.'+options.flyOutOnState).size() > 0) { $('.'+options.flyOutOnState).trigger('mouseover'); };\r\n\t\t\t\t\t};\r\n\t\t\t\t\t\r\n\t\t\t\t\tif (menuType == 'ipod') {\r\n\t\t\t\t\t\t$(event.target).trigger('mouseout');\r\n\t\t\t\t\t\tif ($('.fg-menu-footer').find('a').size() > 0) { $('.fg-menu-footer').find('a').trigger('click'); };\r\n\t\t\t\t\t\tif ($('.fg-menu-header').find('a').size() > 0) { $('.fg-menu-current-crumb').prev().find('a').trigger('click'); };\r\n\t\t\t\t\t\tif ($('.fg-menu-current').prev().is('.fg-menu-indicator')) {\r\n\t\t\t\t\t\t\t$('.fg-menu-current').prev().trigger('mouseover');\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t};\t\t\t\t\t\t\r\n\t\t\t\t\t};\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t\t\r\n\t\t\t\tcase 38: // up arrow \r\n\t\t\t\t\tif ($(event.target).is('.' + options.linkHover)) {\t\r\n\t\t\t\t\t\tvar prevLink = $(event.target).parent().prev().find('a:eq(0)');\t\t\t\t\t\t\r\n\t\t\t\t\t\tif (prevLink.size() > 0) {\r\n\t\t\t\t\t\t\t$(event.target).trigger('mouseout');\r\n\t\t\t\t\t\t\tprevLink.trigger('mouseover');\r\n\t\t\t\t\t\t};\t\t\t\t\t\t\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse { container.find('a:eq(0)').trigger('mouseover'); }\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t\t\r\n\t\t\t\tcase 39: // right arrow \r\n\t\t\t\t\tif ($(event.target).is('.fg-menu-indicator')) {\t\t\t\t\t\t\r\n\t\t\t\t\t\tif (menuType == 'flyout') {\r\n\t\t\t\t\t\t\t$(event.target).next().find('a:eq(0)').trigger('mouseover');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\telse if (menuType == 'ipod') {\r\n\t\t\t\t\t\t\t$(event.target).trigger('click');\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tsetTimeout(function(){\r\n\t\t\t\t\t\t\t\t$(event.target).next().find('a:eq(0)').trigger('mouseover');\r\n\t\t\t\t\t\t\t}, options.crossSpeed);\r\n\t\t\t\t\t\t};\t\t\t\t\r\n\t\t\t\t\t}; \r\n\t\t\t\t\treturn false;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t\t\r\n\t\t\t\tcase 40: // down arrow \r\n\t\t\t\t\tif ($(event.target).is('.' + options.linkHover)) {\r\n\t\t\t\t\t\tvar nextLink = $(event.target).parent().next().find('a:eq(0)');\t\t\t\t\t\t\r\n\t\t\t\t\t\tif (nextLink.size() > 0) {\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t$(event.target).trigger('mouseout');\r\n\t\t\t\t\t\t\tnextLink.trigger('mouseover');\r\n\t\t\t\t\t\t};\t\t\t\t\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse { container.find('a:eq(0)').trigger('mouseover'); }\t\t\r\n\t\t\t\t\treturn false;\t\t\t\t\t\t\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t\t\r\n\t\t\t\tcase 27: // escape\r\n\t\t\t\t\tkillAllMenus();\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t\t\r\n\t\t\t\tcase 13: // enter\r\n\t\t\t\t\tif ($(event.target).is('.fg-menu-indicator') && menuType == 'ipod') {\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t$(event.target).trigger('click');\t\t\t\t\t\t\r\n\t\t\t\t\t\tsetTimeout(function(){\r\n\t\t\t\t\t\t\t$(event.target).next().find('a:eq(0)').trigger('mouseover');\r\n\t\t\t\t\t\t}, options.crossSpeed);\t\t\t\t\t\r\n\t\t\t\t\t}; \r\n\t\t\t\t\tbreak;\r\n\t\t\t};\t\t\t\r\n\t\t});\r\n\t};\r\n\t\r\n\tthis.create = function(){\t\r\n\t\tcontainer.css({ width: options.width }).appendTo('body').find('ul:first').not('.fg-menu-breadcrumb').addClass('fg-menu');\r\n\t\tcontainer.find('ul, li a').addClass('ui-corner-all');\r\n\t\t\r\n\t\t// aria roles & attributes\r\n\t\tcontainer.find('ul').attr('role', 'menu').eq(0).attr('aria-activedescendant','active-menuitem').attr('aria-labelledby', caller.attr('id'));\r\n\t\tcontainer.find('li').attr('role', 'menuitem');\r\n\t\tcontainer.find('li:has(ul)').attr('aria-haspopup', 'true').find('ul').attr('aria-expanded', 'false');\r\n\t\tcontainer.find('a').attr('tabindex', '-1');\r\n\t\t\r\n\t\t// when there are multiple levels of hierarchy, create flyout or drilldown menu\r\n\t\tif (container.find('ul').size() > 1) {\r\n\t\t\tif (options.flyOut) { menu.flyout(container, options); }\r\n\t\t\telse { menu.drilldown(container, options); }\t\r\n\t\t}\r\n\t\telse {\r\n\t\t\tcontainer.find('a').click(function(){\r\n\t\t\t\tmenu.chooseItem(this);\r\n\t\t\t\treturn false;\r\n\t\t\t});\r\n\t\t};\t\r\n\t\t\r\n\t\tif (options.linkHover) {\r\n\t\t\tvar allLinks = container.find('.fg-menu li a');\r\n\t\t\tallLinks.hover(\r\n\t\t\t\tfunction(){\r\n\t\t\t\t\tvar menuitem = $(this);\r\n\t\t\t\t\t$('.'+options.linkHover).removeClass(options.linkHover).blur().parent().removeAttr('id');\r\n\t\t\t\t\t$(this).addClass(options.linkHover).focus().parent().attr('id','active-menuitem');\r\n\t\t\t\t},\r\n\t\t\t\tfunction(){\r\n\t\t\t\t\t$(this).removeClass(options.linkHover).blur().parent().removeAttr('id');\r\n\t\t\t\t}\r\n\t\t\t);\r\n\t\t};\r\n\t\t\r\n\t\tif (options.linkHoverSecondary) {\r\n\t\t\tcontainer.find('.fg-menu li').hover(\r\n\t\t\t\tfunction(){\r\n\t\t\t\t\t$(this).siblings('li').removeClass(options.linkHoverSecondary);\r\n\t\t\t\t\tif (options.flyOutOnState) { $(this).siblings('li').find('a').removeClass(options.flyOutOnState); }\r\n\t\t\t\t\t$(this).addClass(options.linkHoverSecondary);\r\n\t\t\t\t},\r\n\t\t\t\tfunction(){ $(this).removeClass(options.linkHoverSecondary); }\r\n\t\t\t);\r\n\t\t};\t\r\n\t\t\r\n\t\tmenu.setPosition(container, caller, options);\r\n\t\tmenu.menuExists = true;\r\n\t};\r\n\t\r\n\tthis.chooseItem = function(item){\r\n\t\tmenu.kill();\r\n\t\t// edit this for your own custom function/callback:\r\n\t\t$('#menuSelection').text($(item).text());\t\r\n\t\tlocation.href = $(item).attr('href');\r\n\t};\r\n};\r\n\r\nMenu.prototype.flyout = function(container, options) {\r\n\tvar menu = this;\r\n\t\r\n\tthis.resetFlyoutMenu = function(){\r\n\t\tvar allLists = container.find('ul ul');\r\n\t\tallLists.removeClass('ui-widget-content').hide();\t\r\n\t};\r\n\t\r\n\tcontainer.addClass('fg-menu-flyout').find('li:has(ul)').each(function(){\r\n\t\tvar linkWidth = container.width();\r\n\t\tvar showTimer, hideTimer;\r\n\t\tvar allSubLists = $(this).find('ul');\t\t\r\n\t\t\r\n\t\tallSubLists.css({ left: linkWidth, width: linkWidth }).hide();\r\n\t\t\t\r\n\t\t$(this).find('a:eq(0)').addClass('fg-menu-indicator').html('<span>' + $(this).find('a:eq(0)').text() + '</span><span class=\"ui-icon '+options.nextMenuLink+'\"></span>').hover(\r\n\t\t\tfunction(){\r\n\t\t\t\tclearTimeout(hideTimer);\r\n\t\t\t\tvar subList = $(this).next();\r\n\t\t\t\tif (!fitVertical(subList, $(this).offset().top)) { subList.css({ top: 'auto', bottom: 0 }); };\r\n\t\t\t\tif (!fitHorizontal(subList, $(this).offset().left + 100)) { subList.css({ left: 'auto', right: linkWidth, 'z-index': 999 }); };\r\n\t\t\t\tshowTimer = setTimeout(function(){\r\n\t\t\t\t\tsubList.addClass('ui-widget-content').show(options.showSpeed).attr('aria-expanded', 'true');\t\r\n\t\t\t\t}, 300);\t\r\n\t\t\t},\r\n\t\t\tfunction(){\r\n\t\t\t\tclearTimeout(showTimer);\r\n\t\t\t\tvar subList = $(this).next();\r\n\t\t\t\thideTimer = setTimeout(function(){\r\n\t\t\t\t\tsubList.removeClass('ui-widget-content').hide(options.showSpeed).attr('aria-expanded', 'false');\r\n\t\t\t\t}, 400);\t\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t\t$(this).find('ul a').hover(\r\n\t\t\tfunction(){\r\n\t\t\t\tclearTimeout(hideTimer);\r\n\t\t\t\tif ($(this).parents('ul').prev().is('a.fg-menu-indicator')) {\r\n\t\t\t\t\t$(this).parents('ul').prev().addClass(options.flyOutOnState);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tfunction(){\r\n\t\t\t\thideTimer = setTimeout(function(){\r\n\t\t\t\t\tallSubLists.hide(options.showSpeed);\r\n\t\t\t\t\tcontainer.find(options.flyOutOnState).removeClass(options.flyOutOnState);\r\n\t\t\t\t}, 500);\t\r\n\t\t\t}\r\n\t\t);\t\r\n\t});\r\n\t\r\n\tcontainer.find('a').click(function(){\r\n\t\tmenu.chooseItem(this);\r\n\t\treturn false;\r\n\t});\r\n};\r\n\r\n\r\nMenu.prototype.drilldown = function(container, options) {\r\n\tvar menu = this;\t\r\n\tvar topList = container.find('.fg-menu');\t\r\n\tvar breadcrumb = $('<ul class=\"fg-menu-breadcrumb ui-widget-header ui-corner-all ui-helper-clearfix\"></ul>');\r\n\tvar crumbDefaultHeader = $('<li class=\"fg-menu-breadcrumb-text\">'+options.crumbDefaultText+'</li>');\r\n\tvar firstCrumbText = (options.backLink) ? options.backLinkText : options.topLinkText;\r\n\tvar firstCrumbClass = (options.backLink) ? 'fg-menu-prev-list' : 'fg-menu-all-lists';\r\n\tvar firstCrumbLinkClass = (options.backLink) ? 'ui-state-default ui-corner-all' : '';\r\n\tvar firstCrumbIcon = (options.backLink) ? '<span class=\"ui-icon ui-icon-triangle-1-w\"></span>' : '';\r\n\tvar firstCrumb = $('<li class=\"'+firstCrumbClass+'\"><a href=\"#\" class=\"'+firstCrumbLinkClass+'\">'+firstCrumbIcon+firstCrumbText+'</a></li>');\r\n\t\r\n\tcontainer.addClass('fg-menu-ipod');\r\n\t\r\n\tif (options.backLink) { breadcrumb.addClass('fg-menu-footer').appendTo(container).hide(); }\r\n\telse { breadcrumb.addClass('fg-menu-header').prependTo(container); };\r\n\tbreadcrumb.append(crumbDefaultHeader);\r\n\t\r\n\tvar checkMenuHeight = function(el){\r\n\t\tif (el.height() > options.maxHeight) { el.addClass('fg-menu-scroll') };\t\r\n\t\tel.css({ height: options.maxHeight });\r\n\t};\r\n\t\r\n\tvar resetChildMenu = function(el){ el.removeClass('fg-menu-scroll').removeClass('fg-menu-current').height('auto'); };\r\n\t\r\n\tthis.resetDrilldownMenu = function(){\r\n\t\t$('.fg-menu-current').removeClass('fg-menu-current');\r\n\t\ttopList.animate({ left: 0 }, options.crossSpeed, function(){\r\n\t\t\t$(this).find('ul').each(function(){\r\n\t\t\t\t$(this).hide();\r\n\t\t\t\tresetChildMenu($(this));\t\t\t\t\r\n\t\t\t});\r\n\t\t\ttopList.addClass('fg-menu-current');\t\t\t\r\n\t\t});\t\t\r\n\t\t$('.fg-menu-all-lists').find('span').remove();\t\r\n\t\tbreadcrumb.empty().append(crumbDefaultHeader);\t\t\r\n\t\t$('.fg-menu-footer').empty().hide();\t\r\n\t\tcheckMenuHeight(topList);\t\t\r\n\t};\r\n\t\r\n\ttopList\r\n\t\t.addClass('fg-menu-content fg-menu-current ui-widget-content ui-helper-clearfix')\r\n\t\t.css({ width: container.width() })\r\n\t\t.find('ul')\r\n\t\t\t.css({ width: container.width(), left: container.width() })\r\n\t\t\t.addClass('ui-widget-content')\r\n\t\t\t.hide();\t\t\r\n\tcheckMenuHeight(topList);\t\r\n\t\r\n\ttopList.find('a').each(function(){\r\n\t\t// if the link opens a child menu:\r\n\t\tif ($(this).next().is('ul')) {\r\n\t\t\t$(this)\r\n\t\t\t\t.addClass('fg-menu-indicator')\r\n\t\t\t\t.each(function(){ $(this).html('<span>' + $(this).text() + '</span><span class=\"ui-icon '+options.nextMenuLink+'\"></span>'); })\r\n\t\t\t\t.click(function(){ // ----- show the next menu\t\t\t\r\n\t\t\t\t\tvar nextList = $(this).next();\r\n\t\t    \t\tvar parentUl = $(this).parents('ul:eq(0)');   \t\t\r\n\t\t    \t\tvar parentLeft = (parentUl.is('.fg-menu-content')) ? 0 : parseFloat(topList.css('left'));    \t\t\r\n\t\t    \t\tvar nextLeftVal = Math.round(parentLeft - parseFloat(container.width()));\r\n\t\t    \t\tvar footer = $('.fg-menu-footer');\r\n\t\t    \t\t\r\n\t\t    \t\t// show next menu   \t\t\r\n\t\t    \t\tresetChildMenu(parentUl);\r\n\t\t    \t\tcheckMenuHeight(nextList);\r\n\t\t\t\t\ttopList.animate({ left: nextLeftVal }, options.crossSpeed);\t\t\t\t\t\t\r\n\t\t    \t\tnextList.show().addClass('fg-menu-current').attr('aria-expanded', 'true');    \r\n\t\t    \t\t\r\n\t\t    \t\tvar setPrevMenu = function(backlink){\r\n\t\t    \t\t\tvar b = backlink;\r\n\t\t    \t\t\tvar c = $('.fg-menu-current');\r\n\t\t\t    \t\tvar prevList = c.parents('ul:eq(0)');\r\n\t\t\t    \t\tc.hide().attr('aria-expanded', 'false');\r\n\t\t    \t\t\tresetChildMenu(c);\r\n\t\t    \t\t\tcheckMenuHeight(prevList);\r\n\t\t\t    \t\tprevList.addClass('fg-menu-current').attr('aria-expanded', 'true');\r\n\t\t\t    \t\tif (prevList.hasClass('fg-menu-content')) { b.remove(); footer.hide(); };\r\n\t\t    \t\t};\t\t\r\n\t\t\r\n\t\t\t\t\t// initialize \"back\" link\r\n\t\t\t\t\tif (options.backLink) {\r\n\t\t\t\t\t\tif (footer.find('a').size() == 0) {\r\n\t\t\t\t\t\t\tfooter.show();\r\n\t\t\t\t\t\t\t$('<a href=\"#\"><span class=\"ui-icon ui-icon-triangle-1-w\"></span> <span>Back</span></a>')\r\n\t\t\t\t\t\t\t\t.appendTo(footer)\r\n\t\t\t\t\t\t\t\t.click(function(){ // ----- show the previous menu\r\n\t\t\t\t\t\t\t\t\tvar b = $(this);\r\n\t\t\t\t\t\t    \t\tvar prevLeftVal = parseFloat(topList.css('left')) + container.width();\t\t    \t\t\t\t\t\t    \t\t\r\n\t\t\t\t\t\t    \t\ttopList.animate({ left: prevLeftVal },  options.crossSpeed, function(){\r\n\t\t\t\t\t\t    \t\t\tsetPrevMenu(b);\r\n\t\t\t\t\t\t    \t\t});\t\t\t\r\n\t\t\t\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// or initialize top breadcrumb\r\n\t\t    \t\telse { \r\n\t\t    \t\t\tif (breadcrumb.find('li').size() == 1){\t\t\t\t\r\n\t\t\t\t\t\t\tbreadcrumb.empty().append(firstCrumb);\r\n\t\t\t\t\t\t\tfirstCrumb.find('a').click(function(){\r\n\t\t\t\t\t\t\t\tmenu.resetDrilldownMenu();\r\n\t\t\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t$('.fg-menu-current-crumb').removeClass('fg-menu-current-crumb');\r\n\t\t\t\t\t\tvar crumbText = $(this).find('span:eq(0)').text();\r\n\t\t\t\t\t\tvar newCrumb = $('<li class=\"fg-menu-current-crumb\"><a href=\"javascript://\" class=\"fg-menu-crumb\">'+crumbText+'</a></li>');\t\r\n\t\t\t\t\t\tnewCrumb\r\n\t\t\t\t\t\t\t.appendTo(breadcrumb)\r\n\t\t\t\t\t\t\t.find('a').click(function(){\r\n\t\t\t\t\t\t\t\tif ($(this).parent().is('.fg-menu-current-crumb')){\r\n\t\t\t\t\t\t\t\t\tmenu.chooseItem(this);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\telse {\r\n\t\t\t\t\t\t\t\t\tvar newLeftVal = - ($('.fg-menu-current').parents('ul').size() - 1) * 180;\r\n\t\t\t\t\t\t\t\t\ttopList.animate({ left: newLeftVal }, options.crossSpeed, function(){\r\n\t\t\t\t\t\t\t\t\t\tsetPrevMenu();\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t// make this the current crumb, delete all breadcrumbs after this one, and navigate to the relevant menu\r\n\t\t\t\t\t\t\t\t\t$(this).parent().addClass('fg-menu-current-crumb').find('span').remove();\r\n\t\t\t\t\t\t\t\t\t$(this).parent().nextAll().remove();\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t};\r\n\t\t\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\tnewCrumb.prev().append(' <span class=\"ui-icon '+options.nextCrumbLink+'\"></span>');\r\n\t\t    \t\t};\t\t\t\r\n\t\t    \t\treturn false;    \t\t\r\n    \t\t\t});\r\n\t\t}\r\n\t\t// if the link is a leaf node (doesn't open a child menu)\r\n\t\telse {\r\n\t\t\t$(this).click(function(){\r\n\t\t\t\tmenu.chooseItem(this);\r\n\t\t\t\treturn false;\r\n\t\t\t});\r\n\t\t};\r\n\t});\r\n};\r\n\r\n\r\n/* Menu.prototype.setPosition parameters (defaults noted with *):\r\n\treferrer = the link (or other element) used to show the overlaid object \r\n\tsettings = can override the defaults:\r\n\t\t- posX/Y: where the top left corner of the object should be positioned in relation to its referrer.\r\n\t\t\t\tX: left*, center, right\r\n\t\t\t\tY: top, center, bottom*\r\n\t\t- offsetX/Y: the number of pixels to be offset from the x or y position.  Can be a positive or negative number.\r\n\t\t- directionH/V: where the entire menu should appear in relation to its referrer.\r\n\t\t\t\tHorizontal: left*, right\r\n\t\t\t\tVertical: up, down*\r\n\t\t- detectH/V: detect the viewport horizontally / vertically\r\n\t\t- linkToFront: copy the menu link and place it on top of the menu (visual effect to make it look like it overlaps the object) */\r\n\r\nMenu.prototype.setPosition = function(widget, caller, options) { \r\n\tvar el = widget;\r\n\tvar referrer = caller;\r\n\tvar dims = {\r\n\t\trefX: referrer.offset().left,\r\n\t\trefY: referrer.offset().top,\r\n\t\trefW: referrer.getTotalWidth(),\r\n\t\trefH: referrer.getTotalHeight()\r\n\t};\t\r\n\tvar options = options;\r\n\tvar xVal, yVal;\r\n\t\r\n\tvar helper = $('<div class=\"positionHelper\"></div>');\r\n\thelper.css({ position: 'absolute', left: dims.refX, top: dims.refY, width: dims.refW, height: dims.refH });\r\n\tel.wrap(helper);\r\n\t\r\n\t// get X pos\r\n\tswitch(options.positionOpts.posX) {\r\n\t\tcase 'left': \txVal = 0; \r\n\t\t\tbreak;\t\t\t\t\r\n\t\tcase 'center': xVal = dims.refW / 2;\r\n\t\t\tbreak;\t\t\t\t\r\n\t\tcase 'right': xVal = dims.refW;\r\n\t\t\tbreak;\r\n\t};\r\n\t\r\n\t// get Y pos\r\n\tswitch(options.positionOpts.posY) {\r\n\t\tcase 'top': \tyVal = 0;\r\n\t\t\tbreak;\t\t\t\t\r\n\t\tcase 'center': yVal = dims.refH / 2;\r\n\t\t\tbreak;\t\t\t\t\r\n\t\tcase 'bottom': yVal = dims.refH;\r\n\t\t\tbreak;\r\n\t};\r\n\t\r\n\t// add the offsets (zero by default)\r\n\txVal += options.positionOpts.offsetX;\r\n\tyVal += options.positionOpts.offsetY;\r\n\t\r\n\t// position the object vertically\r\n\tif (options.positionOpts.directionV == 'up') {\r\n\t\tel.css({ top: 'auto', bottom: yVal });\r\n\t\tif (options.positionOpts.detectV && !fitVertical(el)) {\r\n\t\t\tel.css({ bottom: 'auto', top: yVal });\r\n\t\t}\r\n\t} \r\n\telse {\r\n\t\tel.css({ bottom: 'auto', top: yVal });\r\n\t\tif (options.positionOpts.detectV && !fitVertical(el)) {\r\n\t\t\tel.css({ top: 'auto', bottom: yVal });\r\n\t\t}\r\n\t};\r\n\t\r\n\t// and horizontally\r\n\tif (options.positionOpts.directionH == 'left') {\r\n\t\tel.css({ left: 'auto', right: xVal });\r\n\t\tif (options.positionOpts.detectH && !fitHorizontal(el)) {\r\n\t\t\tel.css({ right: 'auto', left: xVal });\r\n\t\t}\r\n\t} \r\n\telse {\r\n\t\tel.css({ right: 'auto', left: xVal });\r\n\t\tif (options.positionOpts.detectH && !fitHorizontal(el)) {\r\n\t\t\tel.css({ left: 'auto', right: xVal });\r\n\t\t}\r\n\t};\r\n\t\r\n\t// if specified, clone the referring element and position it so that it appears on top of the menu\r\n\tif (options.positionOpts.linkToFront) {\r\n\t\treferrer.clone().addClass('linkClone').css({\r\n\t\t\tposition: 'absolute', \r\n\t\t\ttop: 0, \r\n\t\t\tright: 'auto', \r\n\t\t\tbottom: 'auto', \r\n\t\t\tleft: 0, \r\n\t\t\twidth: referrer.width(), \r\n\t\t\theight: referrer.height()\r\n\t\t}).insertAfter(el);\r\n\t};\r\n};\r\n\r\n\r\n/* Utilities to sort and find viewport dimensions */\r\n\r\nfunction sortBigToSmall(a, b) { return b - a; };\r\n\r\njQuery.fn.getTotalWidth = function(){\r\n\treturn $(this).width() + parseInt($(this).css('paddingRight')) + parseInt($(this).css('paddingLeft')) + parseInt($(this).css('borderRightWidth')) + parseInt($(this).css('borderLeftWidth'));\r\n};\r\n\r\njQuery.fn.getTotalHeight = function(){\r\n\treturn $(this).height() + parseInt($(this).css('paddingTop')) + parseInt($(this).css('paddingBottom')) + parseInt($(this).css('borderTopWidth')) + parseInt($(this).css('borderBottomWidth'));\r\n};\r\n\r\nfunction getScrollTop(){\r\n\treturn self.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop;\r\n};\r\n\r\nfunction getScrollLeft(){\r\n\treturn self.pageXOffset || document.documentElement.scrollLeft || document.body.scrollLeft;\r\n};\r\n\r\nfunction getWindowHeight(){\r\n\tvar de = document.documentElement;\r\n\treturn self.innerHeight || (de && de.clientHeight) || document.body.clientHeight;\r\n};\r\n\r\nfunction getWindowWidth(){\r\n\tvar de = document.documentElement;\r\n\treturn self.innerWidth || (de && de.clientWidth) || document.body.clientWidth;\r\n};\r\n\r\n/* Utilities to test whether an element will fit in the viewport\r\n\tParameters:\r\n\tel = element to position, required\r\n\tleftOffset / topOffset = optional parameter if the offset cannot be calculated (i.e., if the object is in the DOM but is set to display: 'none') */\r\n\t\r\nfunction fitHorizontal(el, leftOffset){\r\n\tvar leftVal = parseInt(leftOffset) || $(el).offset().left;\r\n\treturn (leftVal + $(el).width() <= getWindowWidth() + getScrollLeft() && leftVal - getScrollLeft() >= 0);\r\n};\r\n\r\nfunction fitVertical(el, topOffset){\r\n\tvar topVal = parseInt(topOffset) || $(el).offset().top;\r\n\treturn (topVal + $(el).height() <= getWindowHeight() + getScrollTop() && topVal - getScrollTop() >= 0);\r\n};\r\n\r\n/*-------------------------------------------------------------------- \r\n * javascript method: \"pxToEm\"\r\n * by:\r\n   Scott Jehl (scott@filamentgroup.com) \r\n   Maggie Wachs (maggie@filamentgroup.com)\r\n   http://www.filamentgroup.com\r\n *\r\n * Copyright (c) 2008 Filament Group\r\n * Dual licensed under the MIT (filamentgroup.com/examples/mit-license.txt) and GPL (filamentgroup.com/examples/gpl-license.txt) licenses.\r\n *\r\n * Description: Extends the native Number and String objects with pxToEm method. pxToEm converts a pixel value to ems depending on inherited font size.  \r\n * Article: http://www.filamentgroup.com/lab/retaining_scalable_interfaces_with_pixel_to_em_conversion/\r\n * Demo: http://www.filamentgroup.com/examples/pxToEm/\t \t\r\n *\t\t\t\t\t\t\t\r\n * Options:  \t \t\t\t\t\t\t\t\t\r\n \t\tscope: string or jQuery selector for font-size scoping\r\n \t\treverse: Boolean, true reverses the conversion to em-px\r\n * Dependencies: jQuery library\t\t\t\t\t\t  \r\n * Usage Example: myPixelValue.pxToEm(); or myPixelValue.pxToEm({'scope':'#navigation', reverse: true});\r\n *\r\n * Version: 2.0, 08.01.2008 \r\n * Changelog:\r\n *\t\t08.02.2007 initial Version 1.0\r\n *\t\t08.01.2008 - fixed font-size calculation for IE\r\n--------------------------------------------------------------------*/\r\n\r\nNumber.prototype.pxToEm = String.prototype.pxToEm = function(settings){\r\n\t//set defaults\r\n\tsettings = jQuery.extend({\r\n\t\tscope: 'body',\r\n\t\treverse: false\r\n\t}, settings);\r\n\t\r\n\tvar pxVal = (this == '') ? 0 : parseFloat(this);\r\n\tvar scopeVal;\r\n\tvar getWindowWidth = function(){\r\n\t\tvar de = document.documentElement;\r\n\t\treturn self.innerWidth || (de && de.clientWidth) || document.body.clientWidth;\r\n\t};\t\r\n\t\r\n\t/* When a percentage-based font-size is set on the body, IE returns that percent of the window width as the font-size. \r\n\t\tFor example, if the body font-size is 62.5% and the window width is 1000px, IE will return 625px as the font-size. \t\r\n\t\tWhen this happens, we calculate the correct body font-size (%) and multiply it by 16 (the standard browser font size) \r\n\t\tto get an accurate em value. */\r\n\t\t\t\t\r\n\tif (settings.scope == 'body' && $.browser.msie && (parseFloat($('body').css('font-size')) / getWindowWidth()).toFixed(1) > 0.0) {\r\n\t\tvar calcFontSize = function(){\t\t\r\n\t\t\treturn (parseFloat($('body').css('font-size'))/getWindowWidth()).toFixed(3) * 16;\r\n\t\t};\r\n\t\tscopeVal = calcFontSize();\r\n\t}\r\n\telse { scopeVal = parseFloat(jQuery(settings.scope).css(\"font-size\")); };\r\n\t\t\t\r\n\tvar result = (settings.reverse == true) ? (pxVal * scopeVal).toFixed(2) + 'px' : (pxVal / scopeVal).toFixed(2) + 'em';\r\n\treturn result;\r\n};"
  },
  {
    "path": "newscoop/admin-style/fg-menu/menuContent.html",
    "content": "<ul>\r\n\t<li><a href=\"#\">Breaking News</a>\r\n\t\t<ul>\r\n\t\t\t<li><a href=\"#\">Entertainment</a></li>\r\n\t\t\t<li><a href=\"#\">Politics</a></li>\r\n\t\t\t<li><a href=\"#\">A&amp;E</a></li>\r\n\t\t\t<li><a href=\"#\">Sports</a>\r\n\t\t\t\t<ul>\r\n\t\t\t\t\t<li><a href=\"#\">Baseball</a></li>\r\n\t\t\t\t\t<li><a href=\"#\">Basketball</a></li>\r\n\t\t\t\t\t<li><a href=\"#\">A really long label would wrap nicely as you can see</a></li>\r\n\t\t\t\t\t<li><a href=\"#\">Swimming</a>\r\n\t\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t\t<li><a href=\"#\">High School</a></li>\r\n\t\t\t\t\t\t\t<li><a href=\"#\">College</a></li>\r\n\t\t\t\t\t\t\t<li><a href=\"#\">Professional</a>\r\n\t\t\t\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t\t\t\t<li><a href=\"#\">Mens Swimming</a>\r\n\t\t\t\t\t\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t\t\t\t\t\t<li><a href=\"#\">News</a></li>\r\n\t\t\t\t\t\t\t\t\t\t\t<li><a href=\"#\">Events</a></li>\r\n\t\t\t\t\t\t\t\t\t\t\t<li><a href=\"#\">Awards</a></li>\r\n\t\t\t\t\t\t\t\t\t\t\t<li><a href=\"#\">Schedule</a></li>\r\n\t\t\t\t\t\t\t\t\t\t\t<li><a href=\"#\">Team Members</a></li>\r\n\t\t\t\t\t\t\t\t\t\t\t<li><a href=\"#\">Fan Site</a></li>\r\n\t\t\t\t\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t\t\t\t\t</li>\r\n\t\t\t\t\t\t\t\t\t<li><a href=\"#\">Womens Swimming</a>\r\n\t\t\t\t\t\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t\t\t\t\t\t<li><a href=\"#\">News</a></li>\r\n\t\t\t\t\t\t\t\t\t\t\t<li><a href=\"#\">Events</a></li>\r\n\t\t\t\t\t\t\t\t\t\t\t<li><a href=\"#\">Awards</a></li>\r\n\t\t\t\t\t\t\t\t\t\t\t<li><a href=\"#\">Schedule</a></li>\r\n\t\t\t\t\t\t\t\t\t\t\t<li><a href=\"#\">Team Members</a></li>\r\n\t\t\t\t\t\t\t\t\t\t\t<li><a href=\"#\">Fan Site</a></li>\r\n\t\t\t\t\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t\t\t\t\t</li>\r\n\t\t\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t\t\t</li>\r\n\t\t\t\t\t\t\t<li><a href=\"#\">Adult Recreational</a></li>\r\n\t\t\t\t\t\t\t<li><a href=\"#\">Youth Recreational</a></li>\r\n\t\t\t\t\t\t\t<li><a href=\"#\">Senior Recreational</a></li>\r\n\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t</li>\r\n\t\t\t\t\t<li><a href=\"#\">Tennis</a></li>\r\n\t\t\t\t\t<li><a href=\"#\">Ice Skating</a></li>\r\n\t\t\t\t\t<li><a href=\"#\">Javascript Programming</a></li>\r\n\t\t\t\t\t<li><a href=\"#\">Running</a></li>\r\n\t\t\t\t\t<li><a href=\"#\">Walking</a></li>\r\n\t\t\t\t</ul>\r\n\t\t\t</li>\r\n\t\t\t<li><a href=\"#\">Local</a></li>\r\n\t\t\t<li><a href=\"#\">Health</a></li>\r\n\t\t</ul>\r\n\t</li>\r\n\t<li><a href=\"#\">Entertainment</a>\r\n\t<ul>\r\n\t\t<li><a href=\"#\">Celebrity news</a></li>\r\n\t\t<li><a href=\"#\">Gossip</a></li>\r\n\t\t<li><a href=\"#\">Movies</a></li>\r\n\t\t<li><a href=\"#\">Music</a>\r\n\t\t<ul>\r\n\t\t\t<li><a href=\"#\">Alternative</a></li>\r\n\t\t\t<li><a href=\"#\">Country</a></li>\r\n\t\t\t<li><a href=\"#\">Dance</a></li>\r\n\t\t\t<li><a href=\"#\">Electronica</a></li>\r\n\t\t\t<li><a href=\"#\">Metal</a></li>\r\n\t\t\t<li><a href=\"#\">Pop</a></li>\r\n\t\t\t<li><a href=\"#\">Rock</a>\r\n\t\t\t\t<ul>\r\n\t\t\t\t\t<li><a href=\"#\">Bands</a>\r\n\t\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t\t<li><a href=\"#\">Dokken</a></li>\r\n\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t</li>\r\n\t\t\t\t\t<li><a href=\"#\">Fan Clubs</a></li>\r\n\t\t\t\t\t<li><a href=\"#\">Songs</a></li>\r\n\t\t\t\t</ul>\r\n\t\t\t</li>\r\n\t\t</ul>\r\n\t\t</li>\r\n\t\t<li><a href=\"#\">Slide shows</a></li>\r\n\t\t<li><a href=\"#\">Red carpet</a></li>\r\n\t</ul>\r\n\t</li>\r\n\t<li><a href=\"#\">Finance</a>\r\n\t<ul>\r\n\t\t<li><a href=\"#\">Personal</a>\r\n\t\t<ul>\r\n\t\t\t<li><a href=\"#\">Loans</a></li>\r\n\t\t\t<li><a href=\"#\">Savings</a></li>\r\n\t\t\t<li><a href=\"#\">Mortgage</a></li>\r\n\t\t\t<li><a href=\"#\">Debt</a></li>\r\n\t\t</ul>\r\n\t\t</li>\r\n\t\t<li><a href=\"#\">Business</a></li>\r\n\t</ul>\r\n\t</li>\r\n\t<li><a href=\"#\">Food &#38; Cooking</a>\r\n\t<ul>\r\n\t\t<li><a href=\"#\">Breakfast</a></li>\r\n\t\t<li><a href=\"#\">Lunch</a></li>\r\n\t\t<li><a href=\"#\">Dinner</a></li>\r\n\t\t<li><a href=\"#\">Dessert</a>\r\n\t\t\t<ul>\r\n\t\t\t\t<li><a href=\"#\">Dump Cake</a></li>\r\n\t\t\t\t<li><a href=\"#\">Doritos</a></li>\r\n\t\t\t\t<li><a href=\"#\">Both please.</a></li>\r\n\t\t\t</ul>\r\n\t\t</li>\r\n\t</ul>\r\n\t</li>\r\n\t<li><a href=\"#\">Lifestyle</a></li>\r\n\t<li><a href=\"#\">News</a></li>\r\n\t<li><a href=\"#\">Politics</a></li>\r\n\t<li><a href=\"#\">Sports</a>\r\n\t\t<ul>\r\n\t\t\t<li><a href=\"#\">Baseball</a></li>\r\n\t\t\t<li><a href=\"#\">Basketball</a></li>\r\n\t\t\t<li><a href=\"#\">Swimming</a>\r\n\t\t\t<ul>\r\n\t\t\t\t<li><a href=\"#\">High School</a></li>\r\n\t\t\t\t<li><a href=\"#\">College</a></li>\r\n\t\t\t\t<li><a href=\"#\">Professional</a>\r\n\t\t\t\t<ul>\r\n\t\t\t\t\t<li><a href=\"#\">Mens Swimming</a>\r\n\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t\t<li><a href=\"#\">News</a></li>\r\n\t\t\t\t\t\t\t<li><a href=\"#\">Events</a></li>\r\n\t\t\t\t\t\t\t<li><a href=\"#\">Awards</a></li>\r\n\t\t\t\t\t\t\t<li><a href=\"#\">Schedule</a></li>\r\n\t\t\t\t\t\t\t<li><a href=\"#\">Team Members</a></li>\r\n\t\t\t\t\t\t\t<li><a href=\"#\">Fan Site</a></li>\r\n\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t</li>\r\n\t\t\t\t\t<li><a href=\"#\">Womens Swimming</a>\r\n\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t<li><a href=\"#\">News</a></li>\r\n\t\t\t\t\t\t<li><a href=\"#\">Events</a></li>\r\n\t\t\t\t\t\t<li><a href=\"#\">Awards</a></li>\r\n\t\t\t\t\t\t<li><a href=\"#\">Schedule</a></li>\r\n\t\t\t\t\t\t<li><a href=\"#\">Team Members</a></li>\r\n\t\t\t\t\t\t<li><a href=\"#\">Fan Site</a></li>\r\n\t\t\t\t\t</ul>\r\n\t\t\t\t\t</li>\r\n\t\t\t\t</ul>\r\n\t\t\t\t</li>\r\n\t\t\t\t<li><a href=\"#\">Adult Recreational</a></li>\r\n\t\t\t\t<li><a href=\"#\">Youth Recreational</a></li>\r\n\t\t\t\t<li><a href=\"#\">Senior Recreational</a></li>\r\n\t\t\t</ul>\r\n\t\t\t</li>\r\n\t\t\t<li><a href=\"#\">Tennis</a></li>\r\n\t\t\t<li><a href=\"#\">Ice Skating</a></li>\r\n\t\t\t<li><a href=\"#\">Javascript Programming</a></li>\r\n\t\t\t<li><a href=\"#\">Running</a></li>\r\n\t\t\t<li><a href=\"#\">Walking</a></li>\r\n\t\t</ul>\r\n\t\t</li>\r\n</ul>"
  },
  {
    "path": "newscoop/admin-style/fg-menu/theme/ui.accordion.css",
    "content": "/* Accordion\n----------------------------------*/\n.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; }\n.ui-accordion li {display: inline;}\n.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; }\n.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em 2.2em; }\n.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; }\n.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; }\n.ui-accordion .ui-accordion-content-active { display: block; }"
  },
  {
    "path": "newscoop/admin-style/fg-menu/theme/ui.all.css",
    "content": "@import \"ui.theme.css\";\r\n"
  },
  {
    "path": "newscoop/admin-style/fg-menu/theme/ui.base.css",
    "content": "@import url(\"ui.core.css\");\r\n\r\n@import url(\"ui.accordion.css\");\r\n@import url(\"ui.datepicker.css\");\r\n@import url(\"ui.dialog.css\");\r\n@import url(\"ui.progressbar.css\");\r\n@import url(\"ui.resizable.css\");\r\n@import url(\"ui.slider.css\");\r\n@import url(\"ui.tabs.css\");\r\n"
  },
  {
    "path": "newscoop/admin-style/fg-menu/theme/ui.core.css",
    "content": "/*\n* jQuery UI CSS Framework\n* Copyright (c) 2009 AUTHORS.txt (http://ui.jquery.com/about)\n* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses.\n*/\n\n/* Layout helpers\n----------------------------------*/\n.ui-helper-hidden { display: none; }\n.ui-helper-hidden-accessible { position: absolute; left: -99999999px; }\n.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }\n.ui-helper-clearfix:after { content: \".\"; display: block; height: 0; clear: both; visibility: hidden; }\n.ui-helper-clearfix { display: inline-block; }\n/* required comment for clearfix to work in Opera \\*/\n* html .ui-helper-clearfix { height:1%; }\n.ui-helper-clearfix { display:block; }\n/* end clearfix */\n.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }\n\n\n/* Interaction Cues\n----------------------------------*/\n.ui-state-disabled { cursor: default !important; }\n\n\n/* Icons\n----------------------------------*/\n\n/* states and images */\n.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; }\n\n\n/* Misc visuals\n----------------------------------*/\n\n/* Overlays */\n.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }"
  },
  {
    "path": "newscoop/admin-style/fg-menu/theme/ui.datepicker.css",
    "content": "/* Datepicker\n----------------------------------*/\n.ui-datepicker { width: 17em; padding: .2em .2em 0; }\n.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }\n.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; }\n.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }\n.ui-datepicker .ui-datepicker-prev { left:2px; }\n.ui-datepicker .ui-datepicker-next { right:2px; }\n.ui-datepicker .ui-datepicker-prev-hover { left:1px; }\n.ui-datepicker .ui-datepicker-next-hover { right:1px; }\n.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px;  }\n.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }\n.ui-datepicker .ui-datepicker-title select { float:left; font-size:1em; margin:1px 0; }\n.ui-datepicker select.ui-datepicker-month-year {width: 100%;}\n.ui-datepicker select.ui-datepicker-month, \n.ui-datepicker select.ui-datepicker-year { width: 49%;}\n.ui-datepicker .ui-datepicker-title select.ui-datepicker-year { float: right; }\n.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }\n.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0;  }\n.ui-datepicker td { border: 0; padding: 1px; }\n.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; }\n.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; }\n.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; }\n.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; }\n\n/* with multiple calendars */\n.ui-datepicker.ui-datepicker-multi { width:auto; }\n.ui-datepicker-multi .ui-datepicker-group { float:left; }\n.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; }\n.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; }\n.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; }\n.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; }\n.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; }\n.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; }\n.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; }\n.ui-datepicker-row-break { clear:left; width:100%; }\n\n/* RTL support */\n.ui-datepicker-rtl { direction: rtl; }\n.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; }\n.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; }\n.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; }\n.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; }\n.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; }\n.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; }\n.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; }\n.ui-datepicker-rtl .ui-datepicker-group { float:right; }\n.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; }\n.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; }\n\n/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */\n.ui-datepicker-cover {\n    display: none; /*sorry for IE5*/\n    display/**/: block; /*sorry for IE5*/\n    position: absolute; /*must have*/\n    z-index: -1; /*must have*/\n    filter: mask(); /*must have*/\n    top: -4px; /*must have*/\n    left: -4px; /*must have*/\n    width: 200px; /*must have*/\n    height: 200px; /*must have*/\n}"
  },
  {
    "path": "newscoop/admin-style/fg-menu/theme/ui.dialog.css",
    "content": "/* Dialog\n----------------------------------*/\n.ui-dialog { position: relative; padding: .2em; width: 300px; }\n.ui-dialog .ui-dialog-titlebar { padding: .5em .3em .3em 1em; position: relative;  }\n.ui-dialog .ui-dialog-title { float: left; margin: .1em 0 .2em; } \n.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; }\n.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; }\n.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; }\n.ui-dialog .ui-dialog-content { border: 0; padding: .5em 1em; background: none; overflow: auto; }\n.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; }\n.ui-dialog .ui-dialog-buttonpane button { float: right; margin: .5em .4em .5em 0; cursor: pointer; padding: .2em .6em .3em .6em; line-height: 1.4em; width:auto; overflow:visible; }\n.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; }\n.ui-draggable .ui-dialog-titlebar { cursor: move; }"
  },
  {
    "path": "newscoop/admin-style/fg-menu/theme/ui.progressbar.css",
    "content": "/* Progressbar\n----------------------------------*/\n.ui-progressbar { height:2em; text-align: left; }\n.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; }"
  },
  {
    "path": "newscoop/admin-style/fg-menu/theme/ui.resizable.css",
    "content": "/* Resizable\n----------------------------------*/\n.ui-resizable { position: relative;}\n.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; display: block;}\n.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; }\n.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0px; }\n.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0px; }\n.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0px; height: 100%; }\n.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0px; height: 100%; }\n.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; }\n.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; }\n.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; }\n.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;}"
  },
  {
    "path": "newscoop/admin-style/fg-menu/theme/ui.slider.css",
    "content": "/* Slider\n----------------------------------*/\n.ui-slider { position: relative; text-align: left; }\n.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; }\n.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: 1%; display: block; border: 0; }\n\n.ui-slider-horizontal { height: .8em; }\n.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; }\n.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; }\n.ui-slider-horizontal .ui-slider-range-min { left: 0; }\n.ui-slider-horizontal .ui-slider-range-max { right: 0; }\n\n.ui-slider-vertical { width: .8em; height: 100px; }\n.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; }\n.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; }\n.ui-slider-vertical .ui-slider-range-min { bottom: 0; }\n.ui-slider-vertical .ui-slider-range-max { top: 0; }"
  },
  {
    "path": "newscoop/admin-style/fg-menu/theme/ui.tabs.css",
    "content": "/* Tabs\n----------------------------------*/\n.ui-tabs {padding: .2em;}\n.ui-tabs .ui-tabs-nav { padding: .2em .2em 0 .2em;  position: relative; }\n.ui-tabs .ui-tabs-nav li { float: left; border-bottom: 0 !important; margin: 0 .2em -1px 0; padding: 0; list-style: none; }\n.ui-tabs .ui-tabs-nav li a { display:block; text-decoration: none; padding: .5em 1em; }\n.ui-tabs .ui-tabs-nav li.ui-tabs-selected {  padding-bottom: .1em; border-bottom: 0; }\n.ui-tabs .ui-tabs-panel { padding: 1em 1.4em;  display: block; border: 0; background: none; }\n.ui-tabs .ui-tabs-hide { display: none !important; }"
  },
  {
    "path": "newscoop/admin-style/fg-menu/theme/ui.theme.css",
    "content": "/* Component containers\r\n----------------------------------*/\r\n#main-menu .ui-widget {\r\n\tfont-family: segoe ui, Arial, sans-serif;\r\n\tfont-size: 1.1em;\r\n}\r\n#main-menu .ui-widget input, #main-menu .ui-widget select, #main-menu .ui-widget textarea, #main-menu .ui-widget button {\r\n\tfont-family: segoe ui, Arial, sans-serif;\r\n\tfont-size: 1em;\r\n}\r\n#main-menu .ui-widget-content {\r\n\tborder: 1px solid #161616;\r\n\tbackground: #202020;\r\n\tcolor: #fff;\r\n}\r\n#main-menu .ui-widget-content a {\r\n\tcolor: #fff;\r\n}\r\n#main-menu .ui-widget-header {\r\n\tborder: 1px solid #59584f;\r\n\tbackground: #3b3b35 url(images/ui-bg_inset-soft_22_3b3b35_1x100.png) 50% 50% repeat-x;\r\n\tcolor: #ffffff;\r\n\tfont-weight: bold;\r\n}\r\n#main-menu .ui-widget-header a {\r\n\tcolor: #ffffff;\r\n}\r\n/* Interaction states\r\n----------------------------------*/\r\n#main-menu .ui-state-default, #main-menu .ui-widget-content .ui-state-default {\r\n\tborder: 1px solid #3b3b3b;\r\n\tbackground: #3b3b3b;\r\n\tfont-weight: normal;\r\n\tcolor: #ffffff;\r\n\toutline: none;\r\n}\r\n#main-menu .ui-state-default a {\r\n\tcolor: #ffffff;\r\n\ttext-decoration: none;\r\n\toutline: none;\r\n}\r\n#main-menu .ui-state-hover, #main-menu .ui-widget-content .ui-state-hover, #main-menu .ui-state-focus, #main-menu .ui-widget-content .ui-state-focus {\r\n\tborder: 1px solid #161616;\r\n\tbackground: #252525;\r\n\tfont-weight: normal;\r\n\tcolor: #ffffff;\r\n\toutline: none;\r\n}\r\n#main-menu .ui-state-hover a {\r\n\tcolor: #ffffff;\r\n\ttext-decoration: none;\r\n\toutline: none;\r\n}\r\n#main-menu .ui-state-active, #main-menu .ui-widget-content .ui-state-active {\r\n\tborder: 1px solid #161616;\r\n\tbackground: #161616;\r\n\tfont-weight: normal;\r\n\tcolor: #fff;\r\n\toutline: none;\r\n}\r\n#main-menu .ui-state-active a {\r\n\tcolor: #403D38;\r\n\toutline: none;\r\n\ttext-decoration: none;\r\n}\r\n/* Interaction Cues\r\n----------------------------------*/\r\n#main-menu .ui-state-highlight, #main-menu .ui-widget-content .ui-state-highlight {\r\n\tborder: 1px solid #e8e1b5;\r\n\tbackground: #fcf0ba url(images/ui-bg_glass_55_fcf0ba_1x400.png) 50% 50% repeat-x;\r\n\tcolor: #363636;\r\n}\r\n#main-menu .ui-state-highlight a, #main-menu .ui-widget-content .ui-state-highlight a {\r\n\tcolor: #363636;\r\n}\r\n#main-menu .ui-state-error, #main-menu .ui-widget-content .ui-state-error {\r\n\tborder: 1px solid #e3a345;\r\n\tbackground: #ffedad url(images/ui-bg_highlight-soft_95_ffedad_1x100.png) 50% top repeat-x;\r\n\tcolor: #cd5c0a;\r\n}\r\n#main-menu .ui-state-error a, #main-menu .ui-widget-content .ui-state-error a {\r\n\tcolor: #cd5c0a;\r\n}\r\n#main-menu .ui-state-error-text, #main-menu .ui-widget-content .ui-state-error-text {\r\n\tcolor: #cd5c0a;\r\n}\r\n#main-menu .ui-state-disabled, #main-menu .ui-widget-content .ui-state-disabled {\r\n\topacity: .35;\r\n\tfilter:Alpha(Opacity=35);\r\n\tbackground-image: none;\r\n}\r\n#main-menu .ui-priority-primary, #main-menu .ui-widget-content .ui-priority-primary {\r\n\tfont-weight: bold;\r\n}\r\n#main-menu .ui-priority-secondary, #main-menu .ui-widget-content .ui-priority-secondary {\r\n\topacity: .7;\r\n\tfilter:Alpha(Opacity=70);\r\n\tfont-weight: normal;\r\n}\r\n/* Icons\r\n----------------------------------*/\r\n\r\n/* states and images */\r\n#main-menu .ui-icon {\r\n\twidth: 16px;\r\n\theight: 16px;\r\n\tbackground-image: url(images/ui-icons_409fc6_256x240.png);\r\n}\r\n#main-menu .ui-widget-content .ui-icon {\r\n\tbackground-image: url(images/ui-icons_808080_256x240.png);\r\n}\r\n#main-menu .ui-widget-header .ui-icon {\r\n\tbackground-image: url(images/ui-icons_e7e6e4_256x240.png);\r\n}\r\n#main-menu .ui-state-default .ui-icon {\r\n\tbackground-image: url(images/ui-icons_409fc6_256x240.png);\r\n}\r\n#main-menu .ui-state-hover .ui-icon, #main-menu .ui-state-focus .ui-icon {\r\n\tbackground-image: url(images/ui-icons_409fc6_256x240.png);\r\n}\r\n#main-menu .ui-state-active .ui-icon {\r\n\tbackground-image: url(images/ui-icons_409fc6_256x240.png);\r\n}\r\n#main-menu .ui-state-highlight .ui-icon {\r\n\tbackground-image: url(images/ui-icons_8DC262_256x240.png);\r\n}\r\n#main-menu .ui-state-error .ui-icon, #main-menu .ui-state-error-text .ui-icon {\r\n\tbackground-image: url(images/ui-icons_cd0a0a_256x240.png);\r\n}\r\n/* positioning */\r\n#main-menu .ui-icon-carat-1-n {\r\n\tbackground-position: 0 0;\r\n}\r\n#main-menu .ui-icon-carat-1-ne {\r\n\tbackground-position: -16px 0;\r\n}\r\n#main-menu .ui-icon-carat-1-e {\r\n\tbackground-position: -32px 0;\r\n}\r\n#main-menu .ui-icon-carat-1-se {\r\n\tbackground-position: -48px 0;\r\n}\r\n#main-menu .ui-icon-carat-1-s {\r\n\tbackground-position: -64px 0;\r\n}\r\n#main-menu .ui-icon-carat-1-sw {\r\n\tbackground-position: -80px 0;\r\n}\r\n#main-menu .ui-icon-carat-1-w {\r\n\tbackground-position: -96px 0;\r\n}\r\n#main-menu .ui-icon-carat-1-nw {\r\n\tbackground-position: -112px 0;\r\n}\r\n#main-menu .ui-icon-carat-2-n-s {\r\n\tbackground-position: -128px 0;\r\n}\r\n#main-menu .ui-icon-carat-2-e-w {\r\n\tbackground-position: -144px 0;\r\n}\r\n#main-menu .ui-icon-triangle-1-n {\r\n\tbackground-position: 0 -16px;\r\n}\r\n#main-menu .ui-icon-triangle-1-ne {\r\n\tbackground-position: -16px -16px;\r\n}\r\n#main-menu .ui-icon-triangle-1-e {\r\n\tbackground-position: -32px -16px;\r\n}\r\n#main-menu .ui-icon-triangle-1-se {\r\n\tbackground-position: -48px -16px;\r\n}\r\n#main-menu .ui-icon-triangle-1-s {\r\n\tbackground-position: -64px -16px;\r\n}\r\n#main-menu .ui-icon-triangle-1-sw {\r\n\tbackground-position: -80px -16px;\r\n}\r\n#main-menu .ui-icon-triangle-1-w {\r\n\tbackground-position: -96px -16px;\r\n}\r\n#main-menu .ui-icon-triangle-1-nw {\r\n\tbackground-position: -112px -16px;\r\n}\r\n#main-menu .ui-icon-triangle-2-n-s {\r\n\tbackground-position: -128px -16px;\r\n}\r\n#main-menu .ui-icon-triangle-2-e-w {\r\n\tbackground-position: -144px -16px;\r\n}\r\n#main-menu .ui-icon-arrow-1-n {\r\n\tbackground-position: 0 -32px;\r\n}\r\n#main-menu .ui-icon-arrow-1-ne {\r\n\tbackground-position: -16px -32px;\r\n}\r\n#main-menu .ui-icon-arrow-1-e {\r\n\tbackground-position: -32px -32px;\r\n}\r\n#main-menu .ui-icon-arrow-1-se {\r\n\tbackground-position: -48px -32px;\r\n}\r\n#main-menu .ui-icon-arrow-1-s {\r\n\tbackground-position: -64px -32px;\r\n}\r\n#main-menu .ui-icon-arrow-1-sw {\r\n\tbackground-position: -80px -32px;\r\n}\r\n#main-menu .ui-icon-arrow-1-w {\r\n\tbackground-position: -96px -32px;\r\n}\r\n#main-menu .ui-icon-arrow-1-nw {\r\n\tbackground-position: -112px -32px;\r\n}\r\n#main-menu .ui-icon-arrow-2-n-s {\r\n\tbackground-position: -128px -32px;\r\n}\r\n#main-menu .ui-icon-arrow-2-ne-sw {\r\n\tbackground-position: -144px -32px;\r\n}\r\n#main-menu .ui-icon-arrow-2-e-w {\r\n\tbackground-position: -160px -32px;\r\n}\r\n#main-menu .ui-icon-arrow-2-se-nw {\r\n\tbackground-position: -176px -32px;\r\n}\r\n#main-menu .ui-icon-arrowstop-1-n {\r\n\tbackground-position: -192px -32px;\r\n}\r\n#main-menu .ui-icon-arrowstop-1-e {\r\n\tbackground-position: -208px -32px;\r\n}\r\n#main-menu .ui-icon-arrowstop-1-s {\r\n\tbackground-position: -224px -32px;\r\n}\r\n#main-menu .ui-icon-arrowstop-1-w {\r\n\tbackground-position: -240px -32px;\r\n}\r\n#main-menu .ui-icon-arrowthick-1-n {\r\n\tbackground-position: 0 -48px;\r\n}\r\n#main-menu .ui-icon-arrowthick-1-ne {\r\n\tbackground-position: -16px -48px;\r\n}\r\n#main-menu .ui-icon-arrowthick-1-e {\r\n\tbackground-position: -32px -48px;\r\n}\r\n#main-menu .ui-icon-arrowthick-1-se {\r\n\tbackground-position: -48px -48px;\r\n}\r\n#main-menu .ui-icon-arrowthick-1-s {\r\n\tbackground-position: -64px -48px;\r\n}\r\n#main-menu .ui-icon-arrowthick-1-sw {\r\n\tbackground-position: -80px -48px;\r\n}\r\n#main-menu .ui-icon-arrowthick-1-w {\r\n\tbackground-position: -96px -48px;\r\n}\r\n#main-menu .ui-icon-arrowthick-1-nw {\r\n\tbackground-position: -112px -48px;\r\n}\r\n#main-menu .ui-icon-arrowthick-2-n-s {\r\n\tbackground-position: -128px -48px;\r\n}\r\n#main-menu .ui-icon-arrowthick-2-ne-sw {\r\n\tbackground-position: -144px -48px;\r\n}\r\n#main-menu .ui-icon-arrowthick-2-e-w {\r\n\tbackground-position: -160px -48px;\r\n}\r\n#main-menu .ui-icon-arrowthick-2-se-nw {\r\n\tbackground-position: -176px -48px;\r\n}\r\n#main-menu .ui-icon-arrowthickstop-1-n {\r\n\tbackground-position: -192px -48px;\r\n}\r\n#main-menu .ui-icon-arrowthickstop-1-e {\r\n\tbackground-position: -208px -48px;\r\n}\r\n#main-menu .ui-icon-arrowthickstop-1-s {\r\n\tbackground-position: -224px -48px;\r\n}\r\n#main-menu .ui-icon-arrowthickstop-1-w {\r\n\tbackground-position: -240px -48px;\r\n}\r\n#main-menu .ui-icon-arrowreturnthick-1-w {\r\n\tbackground-position: 0 -64px;\r\n}\r\n#main-menu .ui-icon-arrowreturnthick-1-n {\r\n\tbackground-position: -16px -64px;\r\n}\r\n#main-menu .ui-icon-arrowreturnthick-1-e {\r\n\tbackground-position: -32px -64px;\r\n}\r\n#main-menu .ui-icon-arrowreturnthick-1-s {\r\n\tbackground-position: -48px -64px;\r\n}\r\n#main-menu .ui-icon-arrowreturn-1-w {\r\n\tbackground-position: -64px -64px;\r\n}\r\n#main-menu .ui-icon-arrowreturn-1-n {\r\n\tbackground-position: -80px -64px;\r\n}\r\n#main-menu .ui-icon-arrowreturn-1-e {\r\n\tbackground-position: -96px -64px;\r\n}\r\n#main-menu .ui-icon-arrowreturn-1-s {\r\n\tbackground-position: -112px -64px;\r\n}\r\n#main-menu .ui-icon-arrowrefresh-1-w {\r\n\tbackground-position: -128px -64px;\r\n}\r\n#main-menu .ui-icon-arrowrefresh-1-n {\r\n\tbackground-position: -144px -64px;\r\n}\r\n#main-menu .ui-icon-arrowrefresh-1-e {\r\n\tbackground-position: -160px -64px;\r\n}\r\n#main-menu .ui-icon-arrowrefresh-1-s {\r\n\tbackground-position: -176px -64px;\r\n}\r\n#main-menu .ui-icon-arrow-4 {\r\n\tbackground-position: 0 -80px;\r\n}\r\n#main-menu .ui-icon-arrow-4-diag {\r\n\tbackground-position: -16px -80px;\r\n}\r\n#main-menu .ui-icon-extlink {\r\n\tbackground-position: -32px -80px;\r\n}\r\n#main-menu .ui-icon-newwin {\r\n\tbackground-position: -48px -80px;\r\n}\r\n#main-menu .ui-icon-refresh {\r\n\tbackground-position: -64px -80px;\r\n}\r\n#main-menu .ui-icon-shuffle {\r\n\tbackground-position: -80px -80px;\r\n}\r\n#main-menu .ui-icon-transfer-e-w {\r\n\tbackground-position: -96px -80px;\r\n}\r\n#main-menu .ui-icon-transferthick-e-w {\r\n\tbackground-position: -112px -80px;\r\n}\r\n#main-menu .ui-icon-folder-collapsed {\r\n\tbackground-position: 0 -96px;\r\n}\r\n#main-menu .ui-icon-folder-open {\r\n\tbackground-position: -16px -96px;\r\n}\r\n#main-menu .ui-icon-document {\r\n\tbackground-position: -32px -96px;\r\n}\r\n#main-menu .ui-icon-document-b {\r\n\tbackground-position: -48px -96px;\r\n}\r\n#main-menu .ui-icon-note {\r\n\tbackground-position: -64px -96px;\r\n}\r\n#main-menu .ui-icon-mail-closed {\r\n\tbackground-position: -80px -96px;\r\n}\r\n#main-menu .ui-icon-mail-open {\r\n\tbackground-position: -96px -96px;\r\n}\r\n#main-menu .ui-icon-suitcase {\r\n\tbackground-position: -112px -96px;\r\n}\r\n#main-menu .ui-icon-comment {\r\n\tbackground-position: -128px -96px;\r\n}\r\n#main-menu .ui-icon-person {\r\n\tbackground-position: -144px -96px;\r\n}\r\n#main-menu .ui-icon-print {\r\n\tbackground-position: -160px -96px;\r\n}\r\n#main-menu .ui-icon-trash {\r\n\tbackground-position: -176px -96px;\r\n}\r\n#main-menu .ui-icon-locked {\r\n\tbackground-position: -192px -96px;\r\n}\r\n#main-menu .ui-icon-unlocked {\r\n\tbackground-position: -208px -96px;\r\n}\r\n#main-menu .ui-icon-bookmark {\r\n\tbackground-position: -224px -96px;\r\n}\r\n#main-menu .ui-icon-tag {\r\n\tbackground-position: -240px -96px;\r\n}\r\n#main-menu .ui-icon-home {\r\n\tbackground-position: 0 -112px;\r\n}\r\n#main-menu .ui-icon-flag {\r\n\tbackground-position: -16px -112px;\r\n}\r\n#main-menu .ui-icon-calendar {\r\n\tbackground-position: -32px -112px;\r\n}\r\n#main-menu .ui-icon-cart {\r\n\tbackground-position: -48px -112px;\r\n}\r\n#main-menu .ui-icon-pencil {\r\n\tbackground-position: -64px -112px;\r\n}\r\n#main-menu .ui-icon-clock {\r\n\tbackground-position: -80px -112px;\r\n}\r\n#main-menu .ui-icon-disk {\r\n\tbackground-position: -96px -112px;\r\n}\r\n#main-menu .ui-icon-calculator {\r\n\tbackground-position: -112px -112px;\r\n}\r\n#main-menu .ui-icon-zoomin {\r\n\tbackground-position: -128px -112px;\r\n}\r\n#main-menu .ui-icon-zoomout {\r\n\tbackground-position: -144px -112px;\r\n}\r\n#main-menu .ui-icon-search {\r\n\tbackground-position: -160px -112px;\r\n}\r\n#main-menu .ui-icon-wrench {\r\n\tbackground-position: -176px -112px;\r\n}\r\n#main-menu .ui-icon-gear {\r\n\tbackground-position: -192px -112px;\r\n}\r\n#main-menu .ui-icon-heart {\r\n\tbackground-position: -208px -112px;\r\n}\r\n#main-menu .ui-icon-star {\r\n\tbackground-position: -224px -112px;\r\n}\r\n#main-menu .ui-icon-link {\r\n\tbackground-position: -240px -112px;\r\n}\r\n#main-menu .ui-icon-cancel {\r\n\tbackground-position: 0 -128px;\r\n}\r\n#main-menu .ui-icon-plus {\r\n\tbackground-position: -16px -128px;\r\n}\r\n#main-menu .ui-icon-plusthick {\r\n\tbackground-position: -32px -128px;\r\n}\r\n#main-menu .ui-icon-minus {\r\n\tbackground-position: -48px -128px;\r\n}\r\n#main-menu .ui-icon-minusthick {\r\n\tbackground-position: -64px -128px;\r\n}\r\n#main-menu .ui-icon-close {\r\n\tbackground-position: -80px -128px;\r\n}\r\n#main-menu .ui-icon-closethick {\r\n\tbackground-position: -96px -128px;\r\n}\r\n#main-menu .ui-icon-key {\r\n\tbackground-position: -112px -128px;\r\n}\r\n#main-menu .ui-icon-lightbulb {\r\n\tbackground-position: -128px -128px;\r\n}\r\n#main-menu .ui-icon-scissors {\r\n\tbackground-position: -144px -128px;\r\n}\r\n#main-menu .ui-icon-clipboard {\r\n\tbackground-position: -160px -128px;\r\n}\r\n#main-menu .ui-icon-copy {\r\n\tbackground-position: -176px -128px;\r\n}\r\n#main-menu .ui-icon-contact {\r\n\tbackground-position: -192px -128px;\r\n}\r\n#main-menu .ui-icon-image {\r\n\tbackground-position: -208px -128px;\r\n}\r\n#main-menu .ui-icon-video {\r\n\tbackground-position: -224px -128px;\r\n}\r\n#main-menu .ui-icon-script {\r\n\tbackground-position: -240px -128px;\r\n}\r\n#main-menu .ui-icon-alert {\r\n\tbackground-position: 0 -144px;\r\n}\r\n#main-menu .ui-icon-info {\r\n\tbackground-position: -16px -144px;\r\n}\r\n#main-menu .ui-icon-notice {\r\n\tbackground-position: -32px -144px;\r\n}\r\n#main-menu .ui-icon-help {\r\n\tbackground-position: -48px -144px;\r\n}\r\n#main-menu .ui-icon-check {\r\n\tbackground-position: -64px -144px;\r\n}\r\n#main-menu .ui-icon-bullet {\r\n\tbackground-position: -80px -144px;\r\n}\r\n#main-menu .ui-icon-radio-off {\r\n\tbackground-position: -96px -144px;\r\n}\r\n#main-menu .ui-icon-radio-on {\r\n\tbackground-position: -112px -144px;\r\n}\r\n#main-menu .ui-icon-pin-w {\r\n\tbackground-position: -128px -144px;\r\n}\r\n#main-menu .ui-icon-pin-s {\r\n\tbackground-position: -144px -144px;\r\n}\r\n.ui-icon-play {\r\n\tbackground-position: 0 -160px;\r\n}\r\n#main-menu .ui-icon-pause {\r\n\tbackground-position: -16px -160px;\r\n}\r\n#main-menu .ui-icon-seek-next {\r\n\tbackground-position: -32px -160px;\r\n}\r\n#main-menu .ui-icon-seek-prev {\r\n\tbackground-position: -48px -160px;\r\n}\r\n#main-menu .ui-icon-seek-end {\r\n\tbackground-position: -64px -160px;\r\n}\r\n#main-menu .ui-icon-seek-first {\r\n\tbackground-position: -80px -160px;\r\n}\r\n#main-menu .ui-icon-stop {\r\n\tbackground-position: -96px -160px;\r\n}\r\n#main-menu .ui-icon-eject {\r\n\tbackground-position: -112px -160px;\r\n}\r\n#main-menu .ui-icon-volume-off {\r\n\tbackground-position: -128px -160px;\r\n}\r\n#main-menu .ui-icon-volume-on {\r\n\tbackground-position: -144px -160px;\r\n}\r\n#main-menu .ui-icon-power {\r\n\tbackground-position: 0 -176px;\r\n}\r\n#main-menu .ui-icon-signal-diag {\r\n\tbackground-position: -16px -176px;\r\n}\r\n#main-menu .ui-icon-signal {\r\n\tbackground-position: -32px -176px;\r\n}\r\n#main-menu .ui-icon-battery-0 {\r\n\tbackground-position: -48px -176px;\r\n}\r\n#main-menu .ui-icon-battery-1 {\r\n\tbackground-position: -64px -176px;\r\n}\r\n#main-menu .ui-icon-battery-2 {\r\n\tbackground-position: -80px -176px;\r\n}\r\n#main-menu .ui-icon-battery-3 {\r\n\tbackground-position: -96px -176px;\r\n}\r\n#main-menu .ui-icon-circle-plus {\r\n\tbackground-position: 0 -192px;\r\n}\r\n#main-menu .ui-icon-circle-minus {\r\n\tbackground-position: -16px -192px;\r\n}\r\n#main-menu .ui-icon-circle-close {\r\n\tbackground-position: -32px -192px;\r\n}\r\n#main-menu .ui-icon-circle-triangle-e {\r\n\tbackground-position: -48px -192px;\r\n}\r\n#main-menu .ui-icon-circle-triangle-s {\r\n\tbackground-position: -64px -192px;\r\n}\r\n#main-menu .ui-icon-circle-triangle-w {\r\n\tbackground-position: -80px -192px;\r\n}\r\n#main-menu .ui-icon-circle-triangle-n {\r\n\tbackground-position: -96px -192px;\r\n}\r\n#main-menu .ui-icon-circle-arrow-e {\r\n\tbackground-position: -112px -192px;\r\n}\r\n#main-menu .ui-icon-circle-arrow-s {\r\n\tbackground-position: -128px -192px;\r\n}\r\n#main-menu .ui-icon-circle-arrow-w {\r\n\tbackground-position: -144px -192px;\r\n}\r\n#main-menu .ui-icon-circle-arrow-n {\r\n\tbackground-position: -160px -192px;\r\n}\r\n#main-menu .ui-icon-circle-zoomin {\r\n\tbackground-position: -176px -192px;\r\n}\r\n#main-menu .ui-icon-circle-zoomout {\r\n\tbackground-position: -192px -192px;\r\n}\r\n#main-menu .ui-icon-circle-check {\r\n\tbackground-position: -208px -192px;\r\n}\r\n#main-menu .ui-icon-circlesmall-plus {\r\n\tbackground-position: 0 -208px;\r\n}\r\n#main-menu .ui-icon-circlesmall-minus {\r\n\tbackground-position: -16px -208px;\r\n}\r\n#main-menu .ui-icon-circlesmall-close {\r\n\tbackground-position: -32px -208px;\r\n}\r\n#main-menu .ui-icon-squaresmall-plus {\r\n\tbackground-position: -48px -208px;\r\n}\r\n#main-menu .ui-icon-squaresmall-minus {\r\n\tbackground-position: -64px -208px;\r\n}\r\n#main-menu .ui-icon-squaresmall-close {\r\n\tbackground-position: -80px -208px;\r\n}\r\n#main-menu .ui-icon-grip-dotted-vertical {\r\n\tbackground-position: 0 -224px;\r\n}\r\n#main-menu .ui-icon-grip-dotted-horizontal {\r\n\tbackground-position: -16px -224px;\r\n}\r\n#main-menu .ui-icon-grip-solid-vertical {\r\n\tbackground-position: -32px -224px;\r\n}\r\n#main-menu .ui-icon-grip-solid-horizontal {\r\n\tbackground-position: -48px -224px;\r\n}\r\n#main-menu .ui-icon-gripsmall-diagonal-se {\r\n\tbackground-position: -64px -224px;\r\n}\r\n#main-menu .ui-icon-grip-diagonal-se {\r\n\tbackground-position: -80px -224px;\r\n}\r\n/* Misc visuals\r\n----------------------------------*/\r\n\r\n/* Corner radius */\r\n#main-menu .ui-corner-tl {\r\n\t-moz-border-radius-topleft: 4px;\r\n\t-webkit-border-top-left-radius: 4px;\r\n}\r\n#main-menu .ui-corner-tr {\r\n\t-moz-border-radius-topright: 4px;\r\n\t-webkit-border-top-right-radius: 4px;\r\n}\r\n#main-menu .ui-corner-bl {\r\n\t-moz-border-radius-bottomleft: 4px;\r\n\t-webkit-border-bottom-left-radius: 4px;\r\n}\r\n#main-menu .ui-corner-br {\r\n\t-moz-border-radius-bottomright: 4px;\r\n\t-webkit-border-bottom-right-radius: 4px;\r\n}\r\n#main-menu .ui-corner-top {\r\n\t-moz-border-radius-topleft: 4px;\r\n\t-webkit-border-top-left-radius: 4px;\r\n\t-moz-border-radius-topright: 4px;\r\n\t-webkit-border-top-right-radius: 4px;\r\n}\r\n#main-menu .ui-corner-bottom {\r\n\t-moz-border-radius-bottomleft: 4px;\r\n\t-webkit-border-bottom-left-radius: 4px;\r\n\t-moz-border-radius-bottomright: 4px;\r\n\t-webkit-border-bottom-right-radius: 4px;\r\n}\r\n#main-menu .ui-corner-right {\r\n\t-moz-border-radius-topright: 4px;\r\n\t-webkit-border-top-right-radius: 4px;\r\n\t-moz-border-radius-bottomright: 4px;\r\n\t-webkit-border-bottom-right-radius: 4px;\r\n}\r\n#main-menu .ui-corner-left {\r\n\t-moz-border-radius-topleft: 4px;\r\n\t-webkit-border-top-left-radius: 4px;\r\n\t-moz-border-radius-bottomleft: 4px;\r\n\t-webkit-border-bottom-left-radius: 4px;\r\n}\r\n#main-menu .ui-corner-all {\r\n\t-moz-border-radius: 3px;\r\n\t-webkit-border-radius: 3px;\r\n}\r\n/* Overlays */\r\n#main-menu .ui-widget-overlay {\r\n\tbackground: #2e2e28 url(images/ui-bg_glow-ball_25_2e2e28_600x600.png) 50% 35% repeat-x;\r\n\topacity: .65;\r\n\tfilter:Alpha(Opacity=65);\r\n}\r\n#main-menu .ui-widget-shadow {\r\n\tmargin: -8px 0 0 -8px;\r\n\tpadding: 8px;\r\n\tbackground: #f0f0f0 url(images/ui-bg_flat_35_f0f0f0_40x100.png) 50% 50% repeat-x;\r\n\topacity: .30;\r\n\tfilter:Alpha(Opacity=30);\r\n\t-moz-border-radius: 8px;\r\n\t-webkit-border-radius: 8px;\r\n}\r\n\r\n/* SubMenu */\r\n\r\n#main-menu .fg-menu .ui-state-default, #main-menu .fg-menu .ui-widget-content .ui-state-default {\r\n\tborder: 1px solid #3d3d3d;\r\n\tbackground: #282828;\r\n\tfont-weight: normal;\r\n\tcolor: #ffffff;\r\n\toutline: none;\r\n}\r\n#main-menu .fg-menu .ui-state-default a {\r\n\tcolor: #ffffff;\r\n\ttext-decoration: none;\r\n\toutline: none;\r\n}\r\n#main-menu .fg-menu .ui-state-hover, #main-menu .fg-menu .ui-widget-content .ui-state-hover, #main-menu .fg-menu .ui-state-focus, #main-menu .fg-menu .ui-widget-content .ui-state-focus {\r\n\tborder: 1px solid #409fc6;\r\n\tbackground: #007fb3;\r\n\tfont-weight: normal;\r\n\tcolor: #ffffff;\r\n\toutline: none;\r\n}\r\n#main-menu .fg-menu .ui-state-hover a {\r\n\tcolor: #ffffff;\r\n\ttext-decoration: none;\r\n\toutline: none;\r\n}\r\n#main-menu .fg-menu .ui-state-active, #main-menu .fg-menu .ui-widget-content .ui-state-active {\r\n\tborder: 1px solid #161616;\r\n\tbackground: #161616;\r\n\tfont-weight: normal;\r\n\tcolor: #fff;\r\n\toutline: none;\r\n}\r\n#main-menu .fg-menu .ui-state-active a {\r\n\tcolor: #403D38;\r\n\toutline: none;\r\n\ttext-decoration: none;\r\n}\r\n#main-menu .ui-widget-content .ui-icon {\r\n    background-image: url(images/ui-icons_ffffff_256x240.png);\r\n}\r\n#main-menu .fg-menu .ui-widget-content .ui-icon {\r\n\tbackground-image: url(images/ui-icons_ffffff_256x240.png);\r\n}\r\n#main-menu .fg-menu .ui-state-default .ui-icon {\r\n\tbackground-image: url(images/ui-icons_ffffff_256x240.png);\r\n}\r\n#main-menu .fg-menu .ui-state-hover .ui-icon, #main-menu .fg-menu .ui-state-focus .ui-icon {\r\n\tbackground-image: url(images/ui-icons_ffffff_256x240.png);\r\n}\r\n#main-menu .fg-menu .ui-state-active .ui-icon {\r\n\tbackground-image: url(images/ui-icons_ffffff_256x240.png);\r\n}"
  },
  {
    "path": "newscoop/admin-style/fg.menu.css",
    "content": "/* Styles for jQuery menu widget\r\nAuthor: Maggie Wachs, maggie@filamentgroup.com\r\nDate:       September 2008\r\n*/\r\n\r\n/* Component containers */\r\n.ui-widget {\r\n    font-family: Arial, Helvetica, sans-serif;\r\n}\r\n.fg-menu .ui-widget input, .fg-menu .ui-widget select, .fg-menu .ui-widget textarea, .fg-menu .ui-widget button {\r\n    font-family: Arial, Helvetica, sans-serif;\r\n    font-size: 1em;\r\n}\r\n.fg-menu .ui-widget-content {\r\n    border: 1px solid #161616;\r\n    background: #202020;\r\n    color: #fff;\r\n}\r\n.fg-menu .ui-widget-content a {\r\n    color: #fff;\r\n}\r\n.fg-menu .ui-widget-header {\r\n    border: 1px solid #59584f;\r\n    background: #3b3b35 url(images/ui-bg_inset-soft_22_3b3b35_1x100.png) 50% 50% repeat-x;\r\n    color: #ffffff;\r\n    font-weight: bold;\r\n}\r\n.fg-menu .ui-widget-header a {\r\n    color: #ffffff;\r\n}\r\n\r\n/* Interaction states */\r\n.fg-menu .ui-state-default,\r\n.fg-menu .ui-widget-content .ui-state-default,\r\n.fg-button-ui-state-default {\r\n    border: 1px solid #3b3b3b;\r\n    background: #3b3b3b;\r\n    font-weight: normal;\r\n    color: #ffffff;\r\n    outline: none;\r\n}\r\n.fg-menu .ui-state-default a {\r\n    color: #ffffff;\r\n    text-decoration: none;\r\n    outline: none;\r\n}\r\n.fg-menu .ui-state-hover,\r\n.fg-menu .ui-widget-content .ui-state-hover,\r\n.fg-menu .ui-state-focus,\r\n.fg-menu .ui-widget-content .ui-state-focus,\r\n.fg-button-ui-state-focus {\r\n    border: 1px solid #161616;\r\n    background: #252525;\r\n    font-weight: normal;\r\n    color: #ffffff;\r\n    outline: none;\r\n}\r\n.fg-menu .ui-state-hover a {\r\n    color: #ffffff;\r\n    text-decoration: none;\r\n    outline: none;\r\n}\r\n.fg-menu .ui-state-active, .fg-menu .ui-widget-content .ui-state-active {\r\n    border: 1px solid #161616;\r\n    background: #161616;\r\n    font-weight: normal;\r\n    color: #fff;\r\n    outline: none;\r\n}\r\n.fg-menu .ui-state-active a {\r\n    color: #403D38;\r\n    outline: none;\r\n    text-decoration: none;\r\n}\r\n\r\n/* Interaction Cues\r\n----------------------------------*/\r\n.fg-menu .ui-state-highlight, .fg-menu .ui-widget-content .ui-state-highlight {\r\n    border: 1px solid #e8e1b5;\r\n    background: #fcf0ba url(images/ui-bg_glass_55_fcf0ba_1x400.png) 50% 50% repeat-x;\r\n    color: #363636;\r\n}\r\n.fg-menu .ui-state-highlight a, .fg-menu .ui-widget-content .ui-state-highlight a {\r\n    color: #363636;\r\n}\r\n.fg-menu .ui-state-error, .fg-menu .ui-widget-content .ui-state-error {\r\n    border: 1px solid #e3a345;\r\n    background: #ffedad url(images/ui-bg_highlight-soft_95_ffedad_1x100.png) 50% top repeat-x;\r\n    color: #cd5c0a;\r\n}\r\n.fg-menu .ui-state-error a, .fg-menu .ui-widget-content .ui-state-error a {\r\n    color: #cd5c0a;\r\n}\r\n.fg-menu .ui-state-error-text, .fg-menu .ui-widget-content .ui-state-error-text {\r\n    color: #cd5c0a;\r\n}\r\n.fg-menu .ui-state-disabled, .fg-menu .ui-widget-content .ui-state-disabled {\r\n    opacity: .35;\r\n    filter:Alpha(Opacity=35);\r\n    background-image: none;\r\n}\r\n.fg-menu .ui-priority-primary, .fg-menu .ui-widget-content .ui-priority-primary {\r\n    font-weight: bold;\r\n}\r\n.fg-menu .ui-priority-secondary, .fg-menu .ui-widget-content .ui-priority-secondary {\r\n    opacity: .7;\r\n    filter:Alpha(Opacity=70);\r\n    font-weight: normal;\r\n}\r\n\r\n/* states and images */\r\n.fg-menu .ui-icon,\r\n.fg-button-ui-icon {\r\n    width: 16px;\r\n    height: 16px;\r\n    background-image: url(images/ui-icons_409fc6_256x240.png);\r\n}\r\n.fg-menu .ui-widget-content .ui-icon {\r\n    background-image: url(images/ui-icons_808080_256x240.png);\r\n}\r\n.fg-menu .ui-widget-header .ui-icon {\r\n    background-image: url(images/ui-icons_e7e6e4_256x240.png);\r\n}\r\n.fg-menu .ui-state-default .ui-icon, .fg-button-ui-icon {\r\n    background-image: url(images/ui-icons_409fc6_256x240.png);\r\n}\r\n.fg-menu .ui-state-hover .ui-icon,\r\n.fg-menu .ui-state-focus .ui-icon, .fg-button-ui-icon {\r\n    background-image: url(images/ui-icons_409fc6_256x240.png);\r\n}\r\n.fg-menu .ui-state-active .ui-icon, .fg-button-ui-icon {\r\n    background-image: url(images/ui-icons_409fc6_256x240.png);\r\n}\r\n.fg-menu .ui-state-highlight .ui-icon {\r\n    background-image: url(images/ui-icons_8DC262_256x240.png);\r\n}\r\n.fg-menu .ui-state-error .ui-icon, .fg-menu .ui-state-error-text .ui-icon {\r\n    background-image: url(images/ui-icons_cd0a0a_256x240.png);\r\n}\r\n\r\n/* positioning */\r\n.fg-menu .ui-icon-carat-1-n {\r\n    background-position: 0 0;\r\n}\r\n.fg-menu .ui-icon-carat-1-ne {\r\n    background-position: -16px 0;\r\n}\r\n.fg-menu .ui-icon-carat-1-e {\r\n    background-position: -32px 0;\r\n}\r\n.fg-menu .ui-icon-carat-1-se {\r\n    background-position: -48px 0;\r\n}\r\n.fg-menu .ui-icon-carat-1-s {\r\n    background-position: -64px 0;\r\n}\r\n.fg-menu .ui-icon-carat-1-sw {\r\n    background-position: -80px 0;\r\n}\r\n.fg-menu .ui-icon-carat-1-w {\r\n    background-position: -96px 0;\r\n}\r\n.fg-menu .ui-icon-carat-1-nw {\r\n    background-position: -112px 0;\r\n}\r\n.fg-menu .ui-icon-carat-2-n-s {\r\n    background-position: -128px 0;\r\n}\r\n.fg-menu .ui-icon-carat-2-e-w {\r\n    background-position: -144px 0;\r\n}\r\n.fg-menu .ui-icon-triangle-1-n {\r\n    background-position: 0 -16px;\r\n}\r\n.fg-menu .ui-icon-triangle-1-ne {\r\n    background-position: -16px -16px;\r\n}\r\n.fg-menu .ui-icon-triangle-1-e {\r\n    background-position: -32px -16px;\r\n}\r\n.fg-menu .ui-icon-triangle-1-se {\r\n    background-position: -48px -16px;\r\n}\r\n.fg-button-ui-icon-triangle-1-s {\r\n    background-position: -64px -16px;\r\n}\r\n.fg-menu .ui-icon-triangle-1-sw {\r\n    background-position: -80px -16px;\r\n}\r\n.fg-menu .ui-icon-triangle-1-w {\r\n    background-position: -96px -16px;\r\n}\r\n.fg-menu .ui-icon-triangle-1-nw {\r\n    background-position: -112px -16px;\r\n}\r\n.fg-menu .ui-icon-triangle-2-n-s {\r\n    background-position: -128px -16px;\r\n}\r\n.fg-menu .ui-icon-triangle-2-e-w {\r\n    background-position: -144px -16px;\r\n}\r\n.fg-menu .ui-icon-arrow-1-n {\r\n    background-position: 0 -32px;\r\n}\r\n.fg-menu .ui-icon-arrow-1-ne {\r\n    background-position: -16px -32px;\r\n}\r\n.fg-menu .ui-icon-arrow-1-e {\r\n    background-position: -32px -32px;\r\n}\r\n.fg-menu .ui-icon-arrow-1-se {\r\n    background-position: -48px -32px;\r\n}\r\n.fg-menu .ui-icon-arrow-1-s {\r\n    background-position: -64px -32px;\r\n}\r\n.fg-menu .ui-icon-arrow-1-sw {\r\n    background-position: -80px -32px;\r\n}\r\n.fg-menu .ui-icon-arrow-1-w {\r\n    background-position: -96px -32px;\r\n}\r\n.fg-menu .ui-icon-arrow-1-nw {\r\n    background-position: -112px -32px;\r\n}\r\n.fg-menu .ui-icon-arrow-2-n-s {\r\n    background-position: -128px -32px;\r\n}\r\n.fg-menu .ui-icon-arrow-2-ne-sw {\r\n    background-position: -144px -32px;\r\n}\r\n.fg-menu .ui-icon-arrow-2-e-w {\r\n    background-position: -160px -32px;\r\n}\r\n.fg-menu .ui-icon-arrow-2-se-nw {\r\n    background-position: -176px -32px;\r\n}\r\n.fg-menu .ui-icon-arrowstop-1-n {\r\n    background-position: -192px -32px;\r\n}\r\n.fg-menu .ui-icon-arrowstop-1-e {\r\n    background-position: -208px -32px;\r\n}\r\n.fg-menu .ui-icon-arrowstop-1-s {\r\n    background-position: -224px -32px;\r\n}\r\n.fg-menu .ui-icon-arrowstop-1-w {\r\n    background-position: -240px -32px;\r\n}\r\n.fg-menu .ui-icon-arrowthick-1-n {\r\n    background-position: 0 -48px;\r\n}\r\n.fg-menu .ui-icon-arrowthick-1-ne {\r\n    background-position: -16px -48px;\r\n}\r\n.fg-menu .ui-icon-arrowthick-1-e {\r\n    background-position: -32px -48px;\r\n}\r\n.fg-menu .ui-icon-arrowthick-1-se {\r\n    background-position: -48px -48px;\r\n}\r\n.fg-menu .ui-icon-arrowthick-1-s {\r\n    background-position: -64px -48px;\r\n}\r\n.fg-menu .ui-icon-arrowthick-1-sw {\r\n    background-position: -80px -48px;\r\n}\r\n.fg-menu .ui-icon-arrowthick-1-w {\r\n    background-position: -96px -48px;\r\n}\r\n.fg-menu .ui-icon-arrowthick-1-nw {\r\n    background-position: -112px -48px;\r\n}\r\n.fg-menu .ui-icon-arrowthick-2-n-s {\r\n    background-position: -128px -48px;\r\n}\r\n.fg-menu .ui-icon-arrowthick-2-ne-sw {\r\n    background-position: -144px -48px;\r\n}\r\n.fg-menu .ui-icon-arrowthick-2-e-w {\r\n    background-position: -160px -48px;\r\n}\r\n.fg-menu .ui-icon-arrowthick-2-se-nw {\r\n    background-position: -176px -48px;\r\n}\r\n.fg-menu .ui-icon-arrowthickstop-1-n {\r\n    background-position: -192px -48px;\r\n}\r\n.fg-menu .ui-icon-arrowthickstop-1-e {\r\n    background-position: -208px -48px;\r\n}\r\n.fg-menu .ui-icon-arrowthickstop-1-s {\r\n    background-position: -224px -48px;\r\n}\r\n.fg-menu .ui-icon-arrowthickstop-1-w {\r\n    background-position: -240px -48px;\r\n}\r\n.fg-menu .ui-icon-arrowreturnthick-1-w {\r\n    background-position: 0 -64px;\r\n}\r\n.fg-menu .ui-icon-arrowreturnthick-1-n {\r\n    background-position: -16px -64px;\r\n}\r\n.fg-menu .ui-icon-arrowreturnthick-1-e {\r\n    background-position: -32px -64px;\r\n}\r\n.fg-menu .ui-icon-arrowreturnthick-1-s {\r\n    background-position: -48px -64px;\r\n}\r\n.fg-menu .ui-icon-arrowreturn-1-w {\r\n    background-position: -64px -64px;\r\n}\r\n.fg-menu .ui-icon-arrowreturn-1-n {\r\n    background-position: -80px -64px;\r\n}\r\n.fg-menu .ui-icon-arrowreturn-1-e {\r\n    background-position: -96px -64px;\r\n}\r\n.fg-menu .ui-icon-arrowreturn-1-s {\r\n    background-position: -112px -64px;\r\n}\r\n.fg-menu .ui-icon-arrowrefresh-1-w {\r\n    background-position: -128px -64px;\r\n}\r\n.fg-menu .ui-icon-arrowrefresh-1-n {\r\n    background-position: -144px -64px;\r\n}\r\n.fg-menu .ui-icon-arrowrefresh-1-e {\r\n    background-position: -160px -64px;\r\n}\r\n.fg-menu .ui-icon-arrowrefresh-1-s {\r\n    background-position: -176px -64px;\r\n}\r\n.fg-menu .ui-icon-arrow-4 {\r\n    background-position: 0 -80px;\r\n}\r\n.fg-menu .ui-icon-arrow-4-diag {\r\n    background-position: -16px -80px;\r\n}\r\n.fg-menu .ui-icon-extlink {\r\n    background-position: -32px -80px;\r\n}\r\n.fg-menu .ui-icon-newwin {\r\n    background-position: -48px -80px;\r\n}\r\n.fg-menu .ui-icon-refresh {\r\n    background-position: -64px -80px;\r\n}\r\n.fg-menu .ui-icon-shuffle {\r\n    background-position: -80px -80px;\r\n}\r\n.fg-menu .ui-icon-transfer-e-w {\r\n    background-position: -96px -80px;\r\n}\r\n.fg-menu .ui-icon-transferthick-e-w {\r\n    background-position: -112px -80px;\r\n}\r\n.fg-menu .ui-icon-folder-collapsed {\r\n    background-position: 0 -96px;\r\n}\r\n.fg-menu .ui-icon-folder-open {\r\n    background-position: -16px -96px;\r\n}\r\n.fg-menu .ui-icon-document {\r\n    background-position: -32px -96px;\r\n}\r\n.fg-menu .ui-icon-document-b {\r\n    background-position: -48px -96px;\r\n}\r\n.fg-menu .ui-icon-note {\r\n    background-position: -64px -96px;\r\n}\r\n.fg-menu .ui-icon-mail-closed {\r\n    background-position: -80px -96px;\r\n}\r\n.fg-menu .ui-icon-mail-open {\r\n    background-position: -96px -96px;\r\n}\r\n.fg-menu .ui-icon-suitcase {\r\n    background-position: -112px -96px;\r\n}\r\n.fg-menu .ui-icon-comment {\r\n    background-position: -128px -96px;\r\n}\r\n.fg-menu .ui-icon-person {\r\n    background-position: -144px -96px;\r\n}\r\n.fg-menu .ui-icon-print {\r\n    background-position: -160px -96px;\r\n}\r\n.fg-menu .ui-icon-trash {\r\n    background-position: -176px -96px;\r\n}\r\n.fg-menu .ui-icon-locked {\r\n    background-position: -192px -96px;\r\n}\r\n.fg-menu .ui-icon-unlocked {\r\n    background-position: -208px -96px;\r\n}\r\n.fg-menu .ui-icon-bookmark {\r\n    background-position: -224px -96px;\r\n}\r\n.fg-menu .ui-icon-tag {\r\n    background-position: -240px -96px;\r\n}\r\n.fg-menu .ui-icon-home {\r\n    background-position: 0 -112px;\r\n}\r\n.fg-menu .ui-icon-flag {\r\n    background-position: -16px -112px;\r\n}\r\n.fg-menu .ui-icon-calendar {\r\n    background-position: -32px -112px;\r\n}\r\n.fg-menu .ui-icon-cart {\r\n    background-position: -48px -112px;\r\n}\r\n.fg-menu .ui-icon-pencil {\r\n    background-position: -64px -112px;\r\n}\r\n.fg-menu .ui-icon-clock {\r\n    background-position: -80px -112px;\r\n}\r\n.fg-menu .ui-icon-disk {\r\n    background-position: -96px -112px;\r\n}\r\n.fg-menu .ui-icon-calculator {\r\n    background-position: -112px -112px;\r\n}\r\n.fg-menu .ui-icon-zoomin {\r\n    background-position: -128px -112px;\r\n}\r\n.fg-menu .ui-icon-zoomout {\r\n    background-position: -144px -112px;\r\n}\r\n.fg-menu .ui-icon-search {\r\n    background-position: -160px -112px;\r\n}\r\n.fg-menu .ui-icon-wrench {\r\n    background-position: -176px -112px;\r\n}\r\n.fg-menu .ui-icon-gear {\r\n    background-position: -192px -112px;\r\n}\r\n.fg-menu .ui-icon-heart {\r\n    background-position: -208px -112px;\r\n}\r\n.fg-menu .ui-icon-star {\r\n    background-position: -224px -112px;\r\n}\r\n.fg-menu .ui-icon-link {\r\n    background-position: -240px -112px;\r\n}\r\n.fg-menu .ui-icon-cancel {\r\n    background-position: 0 -128px;\r\n}\r\n.fg-menu .ui-icon-plus {\r\n    background-position: -16px -128px;\r\n}\r\n.fg-menu .ui-icon-plusthick {\r\n    background-position: -32px -128px;\r\n}\r\n.fg-menu .ui-icon-minus {\r\n    background-position: -48px -128px;\r\n}\r\n.fg-menu .ui-icon-minusthick {\r\n    background-position: -64px -128px;\r\n}\r\n.fg-menu .ui-icon-close {\r\n    background-position: -80px -128px;\r\n}\r\n.fg-menu .ui-icon-closethick {\r\n    background-position: -96px -128px;\r\n}\r\n.fg-menu .ui-icon-key {\r\n    background-position: -112px -128px;\r\n}\r\n.fg-menu .ui-icon-lightbulb {\r\n    background-position: -128px -128px;\r\n}\r\n.fg-menu .ui-icon-scissors {\r\n    background-position: -144px -128px;\r\n}\r\n.fg-menu .ui-icon-clipboard {\r\n    background-position: -160px -128px;\r\n}\r\n.fg-menu .ui-icon-copy {\r\n    background-position: -176px -128px;\r\n}\r\n.fg-menu .ui-icon-contact {\r\n    background-position: -192px -128px;\r\n}\r\n.fg-menu .ui-icon-image {\r\n    background-position: -208px -128px;\r\n}\r\n.fg-menu .ui-icon-video {\r\n    background-position: -224px -128px;\r\n}\r\n.fg-menu .ui-icon-script {\r\n    background-position: -240px -128px;\r\n}\r\n.fg-menu .ui-icon-alert {\r\n    background-position: 0 -144px;\r\n}\r\n.fg-menu .ui-icon-info {\r\n    background-position: -16px -144px;\r\n}\r\n.fg-menu .ui-icon-notice {\r\n    background-position: -32px -144px;\r\n}\r\n.fg-menu .ui-icon-help {\r\n    background-position: -48px -144px;\r\n}\r\n.fg-menu .ui-icon-check {\r\n    background-position: -64px -144px;\r\n}\r\n.fg-menu .ui-icon-bullet {\r\n    background-position: -80px -144px;\r\n}\r\n.fg-menu .ui-icon-radio-off {\r\n    background-position: -96px -144px;\r\n}\r\n.fg-menu .ui-icon-radio-on {\r\n    background-position: -112px -144px;\r\n}\r\n.fg-menu .ui-icon-pin-w {\r\n    background-position: -128px -144px;\r\n}\r\n.fg-menu .ui-icon-pin-s {\r\n    background-position: -144px -144px;\r\n}\r\n.fg-menu .ui-icon-play {\r\n    background-position: 0 -160px;\r\n}\r\n.fg-menu .ui-icon-pause {\r\n    background-position: -16px -160px;\r\n}\r\n.fg-menu .ui-icon-seek-next {\r\n    background-position: -32px -160px;\r\n}\r\n.fg-menu .ui-icon-seek-prev {\r\n    background-position: -48px -160px;\r\n}\r\n.fg-menu .ui-icon-seek-end {\r\n    background-position: -64px -160px;\r\n}\r\n.fg-menu .ui-icon-seek-first {\r\n    background-position: -80px -160px;\r\n}\r\n.fg-menu .ui-icon-stop {\r\n    background-position: -96px -160px;\r\n}\r\n.fg-menu .ui-icon-eject {\r\n    background-position: -112px -160px;\r\n}\r\n.fg-menu .ui-icon-volume-off {\r\n    background-position: -128px -160px;\r\n}\r\n.fg-menu .ui-icon-volume-on {\r\n    background-position: -144px -160px;\r\n}\r\n.fg-menu .ui-icon-power {\r\n    background-position: 0 -176px;\r\n}\r\n.fg-menu .ui-icon-signal-diag {\r\n    background-position: -16px -176px;\r\n}\r\n.fg-menu .ui-icon-signal {\r\n    background-position: -32px -176px;\r\n}\r\n.fg-menu .ui-icon-battery-0 {\r\n    background-position: -48px -176px;\r\n}\r\n.fg-menu .ui-icon-battery-1 {\r\n    background-position: -64px -176px;\r\n}\r\n.fg-menu .ui-icon-battery-2 {\r\n    background-position: -80px -176px;\r\n}\r\n.fg-menu .ui-icon-battery-3 {\r\n    background-position: -96px -176px;\r\n}\r\n.fg-menu .ui-icon-circle-plus {\r\n    background-position: 0 -192px;\r\n}\r\n.fg-menu .ui-icon-circle-minus {\r\n    background-position: -16px -192px;\r\n}\r\n.fg-menu .ui-icon-circle-close {\r\n    background-position: -32px -192px;\r\n}\r\n.fg-menu .ui-icon-circle-triangle-e {\r\n    background-position: -48px -192px;\r\n}\r\n.fg-menu .ui-icon-circle-triangle-s {\r\n    background-position: -64px -192px;\r\n}\r\n.fg-menu .ui-icon-circle-triangle-w {\r\n    background-position: -80px -192px;\r\n}\r\n.fg-menu .ui-icon-circle-triangle-n {\r\n    background-position: -96px -192px;\r\n}\r\n.fg-menu .ui-icon-circle-arrow-e {\r\n    background-position: -112px -192px;\r\n}\r\n.fg-menu .ui-icon-circle-arrow-s {\r\n    background-position: -128px -192px;\r\n}\r\n.fg-menu .ui-icon-circle-arrow-w {\r\n    background-position: -144px -192px;\r\n}\r\n.fg-menu .ui-icon-circle-arrow-n {\r\n    background-position: -160px -192px;\r\n}\r\n.fg-menu .ui-icon-circle-zoomin {\r\n    background-position: -176px -192px;\r\n}\r\n.fg-menu .ui-icon-circle-zoomout {\r\n    background-position: -192px -192px;\r\n}\r\n.fg-menu .ui-icon-circle-check {\r\n    background-position: -208px -192px;\r\n}\r\n.fg-menu .ui-icon-circlesmall-plus {\r\n    background-position: 0 -208px;\r\n}\r\n.fg-menu .ui-icon-circlesmall-minus {\r\n    background-position: -16px -208px;\r\n}\r\n.fg-menu .ui-icon-circlesmall-close {\r\n    background-position: -32px -208px;\r\n}\r\n.fg-menu .ui-icon-squaresmall-plus {\r\n    background-position: -48px -208px;\r\n}\r\n.fg-menu .ui-icon-squaresmall-minus {\r\n    background-position: -64px -208px;\r\n}\r\n.fg-menu .ui-icon-squaresmall-close {\r\n    background-position: -80px -208px;\r\n}\r\n.fg-menu .ui-icon-grip-dotted-vertical {\r\n    background-position: 0 -224px;\r\n}\r\n.fg-menu .ui-icon-grip-dotted-horizontal {\r\n    background-position: -16px -224px;\r\n}\r\n.fg-menu .ui-icon-grip-solid-vertical {\r\n    background-position: -32px -224px;\r\n}\r\n.fg-menu .ui-icon-grip-solid-horizontal {\r\n    background-position: -48px -224px;\r\n}\r\n.fg-menu .ui-icon-gripsmall-diagonal-se {\r\n    background-position: -64px -224px;\r\n}\r\n.fg-menu .ui-icon-grip-diagonal-se {\r\n    background-position: -80px -224px;\r\n}\r\n\r\n\r\n/* Corner radius */\r\n.fg-menu .ui-corner-tl {\r\n    -moz-border-radius-topleft: 4px;\r\n    -webkit-border-top-left-radius: 4px;\r\n}\r\n.fg-menu .ui-corner-tr {\r\n    -moz-border-radius-topright: 4px;\r\n    -webkit-border-top-right-radius: 4px;\r\n}\r\n.fg-menu .ui-corner-bl {\r\n    -moz-border-radius-bottomleft: 4px;\r\n    -webkit-border-bottom-left-radius: 4px;\r\n}\r\n.fg-menu .ui-corner-br {\r\n    -moz-border-radius-bottomright: 4px;\r\n    -webkit-border-bottom-right-radius: 4px;\r\n}\r\n.fg-menu .ui-corner-top {\r\n    -moz-border-radius-topleft: 4px;\r\n    -webkit-border-top-left-radius: 4px;\r\n    -moz-border-radius-topright: 4px;\r\n    -webkit-border-top-right-radius: 4px;\r\n}\r\n.fg-menu .ui-corner-bottom {\r\n    -moz-border-radius-bottomleft: 4px;\r\n    -webkit-border-bottom-left-radius: 4px;\r\n    -moz-border-radius-bottomright: 4px;\r\n    -webkit-border-bottom-right-radius: 4px;\r\n}\r\n.fg-menu .ui-corner-right {\r\n    -moz-border-radius-topright: 4px;\r\n    -webkit-border-top-right-radius: 4px;\r\n    -moz-border-radius-bottomright: 4px;\r\n    -webkit-border-bottom-right-radius: 4px;\r\n}\r\n.fg-menu .ui-corner-left {\r\n    -moz-border-radius-topleft: 4px;\r\n    -webkit-border-top-left-radius: 4px;\r\n    -moz-border-radius-bottomleft: 4px;\r\n    -webkit-border-bottom-left-radius: 4px;\r\n}\r\n\r\n.fg-menu-container.ui-corner-all,\r\n.fg-menu .ui-corner-all,\r\n.fg-button-ui-corner-all {\r\n    -moz-border-radius: 3px;\r\n    -webkit-border-radius: 3px;\r\n}\r\n\r\n/* Overlays */\r\n.fg-menu .ui-widget-overlay {\r\n    background: #2e2e28 url(images/ui-bg_glow-ball_25_2e2e28_600x600.png) 50% 35% repeat-x;\r\n    opacity: .65;\r\n    filter:Alpha(Opacity=65);\r\n}\r\n.fg-menu .ui-widget-shadow {\r\n    margin: -8px 0 0 -8px;\r\n    padding: 8px;\r\n    background: #f0f0f0 url(images/ui-bg_flat_35_f0f0f0_40x100.png) 50% 50% repeat-x;\r\n    opacity: .30;\r\n    filter:Alpha(Opacity=30);\r\n    -moz-border-radius: 8px;\r\n    -webkit-border-radius: 8px;\r\n}\r\n\r\n/* SubMenu */\r\n.fg-menu .ui-state-default, .fg-menu .ui-widget-content .ui-state-default, .fg-menu-container.ui-widget {\r\n    border: 1px solid #3d3d3d;\r\n    background: #282828;\r\n    font-weight: normal;\r\n    color: #ffffff;\r\n    outline: none;\r\n}\r\n.fg-menu .ui-state-default a,\r\n.fg-button-ui-state-default a,\r\n.fg-menu-container.ui-widget a {\r\n    color: #ffffff;\r\n    text-decoration: none;\r\n    outline: none;\r\n}\r\n.fg-menu .ui-state-hover,\r\n.fg-menu .ui-widget-content .ui-state-hover,\r\n.fg-menu .ui-state-focus,\r\n.fg-menu .ui-widget-content .ui-state-focus {\r\n    border: 1px solid #409fc6;\r\n    background: #007fb3;\r\n    font-weight: normal;\r\n    color: #ffffff;\r\n    outline: none;\r\n}\r\n.fg-menu .ui-state-hover a {\r\n    color: #ffffff;\r\n    text-decoration: none;\r\n    outline: none;\r\n}\r\n.fg-menu .ui-state-active, .fg-menu .fg-menu .ui-widget-content .ui-state-active {\r\n    border: 1px solid #161616;\r\n    background: #161616;\r\n    font-weight: normal;\r\n    color: #fff;\r\n    outline: none;\r\n}\r\n.fg-menu .ui-state-active a {\r\n    color: #403D38;\r\n    outline: none;\r\n    text-decoration: none;\r\n}\r\n.fg-menu .ui-widget-content .ui-icon {\r\n    background-image: url(images/ui-icons_ffffff_256x240.png);\r\n}\r\n.fg-menu .ui-widget-content .ui-icon {\r\n    background-image: url(images/ui-icons_ffffff_256x240.png);\r\n}\r\n.fg-menu .ui-state-default .ui-icon {\r\n    background-image: url(images/ui-icons_ffffff_256x240.png);\r\n}\r\n.fg-menu .ui-state-hover .ui-icon, .fg-menu .ui-state-focus .ui-icon {\r\n    background-image: url(images/ui-icons_ffffff_256x240.png);\r\n}\r\n.fg-menu .ui-state-active .ui-icon {\r\n    background-image: url(images/ui-icons_ffffff_256x240.png);\r\n}\r\n.fg-menu-container.ui-widget .ui-icon {\r\n    background-image: url(images/ui-icons_ffffff_256x240.png);\r\n}\r\n\r\n\r\n\r\n\r\n\r\n\r\n/* REQUIRED STYLES - the menus will only render correctly with these rules */   \r\n\r\n.fg-menu-container { position: absolute; top:0; left:-999px; padding: .4em;  overflow: hidden; border-top-right-radius: 0 !important; border-top-left-radius: 0 !important; }\r\n.fg-menu-container.fg-menu-flyout { overflow: visible; }\r\n\r\n.fg-menu, .fg-menu ul { list-style-type:none; padding: 0; margin:0; }\r\n\r\n.fg-menu { position:relative; }\r\n.fg-menu-flyout .fg-menu { position:static; }\r\n\r\n.fg-menu ul { position:absolute; top:0; }\r\n.fg-menu ul ul { top:-1px; }\r\n\r\n.fg-menu-container.fg-menu-ipod .fg-menu-content, \r\n.fg-menu-container.fg-menu-ipod .fg-menu-content ul { background: none !important; }\r\n\r\n.fg-menu.fg-menu-scroll,\r\n.fg-menu ul.fg-menu-scroll { overflow: scroll;  overflow-x: hidden; }\r\n\r\n.fg-menu li { clear:both; float:left; width:100%; padding:0; border: 0; }    \r\n.fg-menu li li { font-size:1em; } /* inner li font size must be reset so that they don't blow up */\r\n\r\n.fg-menu-flyout ul ul { padding: .4em; }\r\n.fg-menu-flyout li { position:relative; }\r\n\r\n.fg-menu-scroll { overflow: scroll; overflow-x: hidden; }\r\n\r\n.fg-menu-breadcrumb { margin: 0; padding: 0; }\r\n\r\n.fg-menu-footer {  margin-top: .4em; padding: .4em; }\r\n.fg-menu-header {  margin-bottom: .4em; padding: .4em; }\r\n\r\n.fg-menu-breadcrumb li { float: left; list-style: none; margin: 0; padding: 0 .2em; font-size: .9em; opacity: .7; }\r\n.fg-menu-breadcrumb li.fg-menu-prev-list,\r\n.fg-menu-breadcrumb li.fg-menu-current-crumb { clear: left; float: none; opacity: 1; }\r\n.fg-menu-breadcrumb li.fg-menu-current-crumb { padding-top: .2em; }\r\n\r\n.fg-menu-breadcrumb a, \r\n.fg-menu-breadcrumb span { float: left; }\r\n\r\n.fg-menu-footer a:link,\r\n.fg-menu-footer a:visited { float:left; width:100%; text-decoration: none; }\r\n.fg-menu-footer a:hover,\r\n.fg-menu-footer a:active {  }\r\n\r\n.fg-menu-footer a span { float:left; cursor: pointer; }\r\n\r\n.fg-menu-breadcrumb .fg-menu-prev-list a:link,\r\n.fg-menu-breadcrumb .fg-menu-prev-list a:visited,\r\n.fg-menu-breadcrumb .fg-menu-prev-list a:hover,\r\n.fg-menu-breadcrumb .fg-menu-prev-list a:active { background-image: none; text-decoration:none; }\r\n    \r\n.fg-menu-breadcrumb .fg-menu-prev-list a { float: left; padding-right: .4em; }\r\n.fg-menu-breadcrumb .fg-menu-prev-list a .ui-icon { float: left; }\r\n    \r\n.fg-menu-breadcrumb .fg-menu-current-crumb a:link,\r\n.fg-menu-breadcrumb .fg-menu-current-crumb a:visited,\r\n.fg-menu-breadcrumb .fg-menu-current-crumb a:hover,\r\n.fg-menu-breadcrumb .fg-menu-current-crumb a:active { display:block; background-image:none; font-size:1.3em; text-decoration:none; }\r\n\r\n\r\n\r\n/* REQUIRED LINK STYLES: links are \"display:block\" by default; if the menu options are split into \r\n    selectable node links and 'next' links, the script floats the node links left and floats the 'next' links to the right  */\r\n\r\n.fg-menu a:link,\r\n.fg-menu a:visited,\r\n.fg-menu a:hover,\r\n.fg-menu a:active { float:left; width:92%; padding:.3em 3%; text-decoration:none; outline: 0 !important; }\r\n\r\n.fg-menu a { border: 1px dashed transparent; }\r\n\r\n.fg-menu a.ui-state-default:link,\r\n.fg-menu a.ui-state-default:visited,\r\n.fg-menu a.ui-state-default:hover,\r\n.fg-menu a.ui-state-default:active,\r\n.fg-menu a.ui-state-hover:link,\r\n.fg-menu a.ui-state-hover:visited,\r\n.fg-menu a.ui-state-hover:hover,\r\n.fg-menu a.ui-state-hover:active,\r\n.fg-menu a.ui-state-active:link,\r\n.fg-menu a.ui-state-active:visited,\r\n.fg-menu a.ui-state-active:hover,\r\n.fg-menu a.ui-state-active:active { border-style: solid; font-weight: normal; }\r\n\r\n.fg-menu a span { display:block; cursor:pointer; }\r\n\r\n\r\n /* SUGGESTED STYLES - for use with jQuery UI Themeroller CSS */    \r\n \r\n.fg-menu-indicator span { float:left; }\r\n.fg-menu-indicator span.ui-icon { float:right; }\r\n\r\n.fg-menu-content.ui-widget-content, \r\n.fg-menu-content ul.ui-widget-content { border:0; }\r\n\r\n\r\n/* ICONS AND DIVIDERS */\r\n\r\n.fg-menu.fg-menu-has-icons a:link,\r\n.fg-menu.fg-menu-has-icons a:visited,\r\n.fg-menu.fg-menu-has-icons a:hover,\r\n.fg-menu.fg-menu-has-icons a:active { padding-left:20px; }\r\n\r\n.fg-menu .horizontal-divider hr, .fg-menu .horizontal-divider span { padding:0; margin:5px .6em; }\r\n.fg-menu .horizontal-divider hr { border:0; height:1px; }\r\n.fg-menu .horizontal-divider span { font-size:.9em; text-transform: uppercase; padding-left:.2em; }\r\n\r\n\r\n/* ADDING NEW LOOK TO OLD MENU */\r\n\r\n.logo { margin: 8px 16px 0 0; }\r\n\r\nul.navigation { height: 38px; margin-top: -1px; line-height: 16px; }\r\nul.navigation li { margin-right: 0px; }\r\n\r\n.main-menu-bar { padding: 1px 0px; }\r\n\r\n.fg-menu a:link, .fg-menu a:visited, .fg-menu a:hover, .fg-menu a:active { width: 100%; }\r\n\r\n.fg-menu-container, .fg-menu-flyout ul ul {\r\n    padding: 4px 0px;\r\n}\r\n\r\n.fg-menu-indicator span.ui-icon { position: absolute; right: 4px; }\r\n\r\n.fg-menu li a {\r\n    padding-left: 20px !important;\r\n    box-sizing: border-box;\r\n}\r\n\r\na.fg-button-menu { font-size: 12px !important; padding: 9px 25px 9px 15px;}\r\n\r\n.fg-button-icon-right .fg-button-ui-icon { right: 7px; }\r\n\r\n.fg-menu .ui-icon-triangle-1-e { opacity: 0.4; }\r\n\r\n.fg-button-ui-icon-triangle-1-s {\r\n    filter: grayscale(100%);\r\n    -webkit-filter: grayscale(100%);\r\n    -moz-filter: grayscale(100%);\r\n    -ms-filter: grayscale(100%);\r\n    -o-filter: grayscale(100%);\r\n    filter: gray;\r\n    -webkit-filter: grayscale(1);\r\n    opacity: 0.7;\r\n}\r\n\r\n.fg-button-ui-corner-all, .fg-menu .ui-state-hover {\r\n    -moz-border-radius: 0px;\r\n    -webkit-border-radius: 0px;\r\n}\r\n\r\n.divider {\r\n\theight: 1px;\r\n\tmargin: 9px 0;\r\n\toverflow: hidden;\r\n\tbackground-color: #535353;\r\n}\r\n\r\na.latest-published.fg-menu-indicator {\r\n    background-color: #008148;\r\n}\r\n"
  },
  {
    "path": "newscoop/admin-style/form.css",
    "content": "\ndl.zend_form {\n    width: 550px;\n    margin: 0;\n    padding: 10px;\n    background-color: #fff;\n    border: 1px solid #9d9d9d;\n    -mozilla-box-shadow: 2px 2px 3px #ccc;\n    -webkit-box-shadow: 2px 2px 3px #d4d4d4;\n    box-shadow: 2px 2px 3px #e5e5e5;\n}\n\nbody.with-sidebar dl.zend_form {\n    width: auto;\n}\n\n.zend_form dt {\n    margin-top: 8px;\n    padding: 0;\n    position: relative;\n    font-weight: bold;\n    color: #696969;\n}\n\n.zend_form dt:first-child {\n    margin-top: 0;\n}\n\n.zend_form dd {\n    margin: 4px 0 0;\n    padding: 0;\n}\n\n.zend_form dd .description{ font-size: 11px; }\n\n.zend_form dd input[type=text], .zend_form dd input[type=password] {\n    display: block;\n    width: 80%;\n    color: #333;\n\n    background-color: #FFFFFF;\n    border: 1px solid #9D9D9D;\n    font-family: Arial,Helvetica,sans-serif;\n    font-size: 12px;\n    height: 23px;\n    margin: 0;\n    padding: 0;\n    text-indent: 3px;\n    -moz-box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);\n    -webkit-box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);\n    box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);\n}\n.zend_form dd textarea {\n    display: block;\n    color: #333;\n    background-color: #FFFFFF;\n    border: 1px solid #9D9D9D;\n    font-family: Arial,Helvetica,sans-serif;\n    font-size: 12px;\n    margin: 0;\n    padding: 0;\n    text-indent: 3px;\n    -moz-box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);\n    -webkit-box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);\n    box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1);\n}\n.zend_form dd input[type=password] {\n    width: 50%;\n    background-color: #F8F8F8;\n}\n\n.zend_form dd input[type=file] {\n    width: 80%;\n}\n\n.zend_form dd input[type=text]:focus, .zend_form dd input[type=password]:focus, .zend_form dd textarea:focus {\n    border: 1px solid #00b5f1;\n}\n\n.zend_form dd input.small\n{\n    width: 40px;\n}\n\n.zend_form dd select {\n    width: 50%;\n    margin: 0;\n    padding: 3px 5px;\n    border: 1px solid #9d9d9d;\n}\n\n.zend_form dd ul.errors {\n    margin: 3px 0;\n    padding: 0 8px;\n}\n\n.zend_form dd ul.errors li {\n    font-size: 1.1em;\n    color: #cc0000;\n}\n\n.zend_form fieldset {\n    border: 1px solid #ccc;\n}\n\n.zend_form fieldset.closed {\n    border-left-color: #fff;\n    border-bottom-color: #fff;\n    border-right-color: #fff;\n}\n\n.zend_form fieldset legend .ui-icon {\n    float: left;\n}\n\n.zend_form dd input[type=submit] {\n    margin: 0;\n    padding: 3px 12px 4px;\n    color: #fff;\n    background-color: #007fb3;\n    background: -moz-linear-gradient(top, #2390bd 0, #007fb3 100%);\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #2390bd), color-stop(100%, #007fb3));\n    border: 1px solid #007fb3;\n    cursor: pointer;\n}\n\n.zend_form dd input[type=submit]:hover {\n    border: 1px solid #005e85;\n    background: #005e85;\n    background: -moz-linear-gradient(top, #409fc6 0, #007fb3 100%);\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #409fc6), color-stop(100%, #007fb3));\n}\n\n\n.zend_form dd.buttons {\n    margin-top: 13px;\n    padding: 0;\n}\n\n.zend_form label {\n    cursor: pointer;\n}\n\n.zend_form label[for=type-allow], .zend_form label[for=type-deny] {\n    display: block;\n    line-height: 21px;\n    color: #444;\n    background-color: #b4b4b4;\n    border-radius: 5px;\n}\n\n.zend_form label[for=type-allow] input, .zend_form label[for=type-deny] input {\n    vertical-align: top;\n}\n\n.zend_form label[for=type-allow].checked {\n    color: #fff;\n    background-color: #55a112;\n}\n\n.zend_form label[for=type-deny].checked {\n    color: #fff;\n    background-color: #da0101;\n}\n\n/** Filter form */\n.filter dl.zend_form {\n    height: 1%;\n    overflow: hidden;\n    margin: 0;\n    padding: 5px;\n    background-color: transparent;\n    border: none;\n    -mozilla-box-shadow: none;\n    -webkit-box-shadow: none;\n    box-shadow: none;\n}\n\n.filter dl.zend_form > * {\n    float: left;\n    margin: 0;\n    padding: 0;\n    line-height: 23px;\n}\n\n.filter dl.zend_form dt {\n    padding-top: 1px;\n}\n\n.filter dl.zend_form dd {\n    margin-left: 1em;\n}\n\n.filter dl.zend_form dd * {\n    width: auto;\n}\n\n.popup .zend_form { \n    border: none;\n    padding: 0 0 12px 0;\n    box-shadow: none;\n    -moz-box-shadow: none;\n    -webkit-box-shadow: none;\n    margin:0;\n    width: 100%;\n}\n\nform.popup dd input[type=\"text\"] {\n    width: 99%;\n}\n\nh1 .inline.zend_form {\n    display: inline;\n    float: none;\n    text-align: left;\n    background-color: transparent;\n    border: none;\n    box-shadow: none;\n    -moz-box-shadow: none;\n    -webkit-box-shadow: none;\n}\n\nh1 .inline dt {\n    display: none;\n}\n\nh1 .inline dd {\n    display: inline;\n}\n\nh1 .inline .top-input {\n    float: none;\n}\n\nh1 .inline #name {\n    width: 34em;\n    display: inline;\n}\n\nh1 .inline #submit {\n\n}\n\n.form-div-container {\n    width: 100%;\n}\n\n.form-div {\n    float: left;\n}\n\n.form-div.left-box {\n    width: 48%;\n    margin-right: 1%;\n}\n\n.form-div.right-box {\n        width: 51%;\n}\n"
  },
  {
    "path": "newscoop/admin-style/image_management.css",
    "content": "#next input[type=text] {\n\tborder:#9d9d9d solid 1px;\n\tbox-shadow:inset 0 1px 2px rgba(0,0,0,0.2);\n\theight: 18px !important;\n\tmargin: 0 5px 0 0;\n\t}\n\n#next input[type=submit] {\n\tpadding: 3px 9px 2px 9px;\n\tcolor: #444444; font-family: Arial,Helvetica,sans-serif; font-size: 12px; font-weight: normal; line-height: 17px;\n\tmargin: 0 6px 0 0;\n\toutline: medium none;\n\tbackground: -moz-linear-gradient(center top , #FAFAFA 0pt, #F6F6F6 100%) repeat scroll 0 0 transparent;\n\tborder: 1px solid #9D9D9D;\n}\n\nul.renditions,\nul.slideshow {\n\tpadding:5px 7px; margin:0;\n\tbox-shadow:inset 0 2px 4px rgba(0,0,0,0.2), inset 0 -2px 2px rgba(0,0,0,0.1);\n\t}\n\tul.renditions.editor {box-shadow:inset 0 2px 2px rgba(0,0,0,0.2);}\n\tul.renditions li,\n\tul.slideshow li,\n\tul.thumbnails li {\n\t\tbackground:none;\n\t\tborder:#b0b0b0 solid 1px;\n\t\tborder-radius:3px; -moz-border-radius:3px; -webkit-border-radius:3px;\n\t\t}\n\t\tul.renditions li:hover,\n\t\tul.slideshow li:hover,\n\t\tul.thumbnails li:hover {\n\t\t\tborder:#808080 solid 1px;\n\t\t\tbox-shadow:0 1px 3px rgba(0,0,0,0.25);\n\t\t\t}\n\t\tul.renditions li.state-active, ul.renditions li.state-active:hover,\n\t\tul.renditions li.active, ul.renditions li.active:hover {\n\t\t\tbackground:#d9eaf9;\n\t\t\tborder:#007fb3 solid 1px !important;\n\t\t\tbox-shadow:0 1px 5px rgba(0,0,0,0.25);\n\t\t\t}\n\t\t\tul.renditions li dl.rendition .preview,\n\t\t\tul.renditions li.state-active dl.rendition .preview {border-color:#4e4e4e;}\n\t\t\tul.renditions li dl dd.name {\n                padding: 5px 0 0;\n\t\t\t\tfont-size:12px; color:#2e2e2e; text-shadow:0 1px 1px #fff; text-align:center;\n            }\n\t\t\tul.renditions li dl.rendition dd small {\n\t\t\t\tdisplay:block;\n\t\t\t\tpadding: 0 0 5px;\n\t\t\t\tfont-size:12px; color:#2e2e2e; text-shadow:0 1px 1px #fff; text-align:center;\n\t\t\t\t}\n\tul.thumbnails li {background:#fff;}\n\tul.renditions li {background:#dddddd;}\n\t\n\tul.slideshow li {\n\t\tpadding-top:18px;\n\t\tbackground:url(images/slideshow-item-top.png) 5px 4px no-repeat #ebebeb;\n\t\tbox-shadow:0 1px 5px rgba(0,0,0,0.25);\n\t\tborder:#929292 solid 1px;\n\t\t}\n\t\tul.slideshow li:hover {\n\t\t\tborder:#646464 solid 1px;\n\t\t\tbox-shadow:0 1px 2px rgba(0,0,0,0.55);\n\t\t\t}\n\t\tul.slideshow li.active, ul.slideshow li.active:hover {\n\t\t\tborder:#007fb3 solid 1px !important;\n\t\t\tbox-shadow:0 1px 5px rgba(0,0,0,0.25);\n\t\t\t}\n\t\tul.slideshow li.placeholder, ul.slideshow li.placeholder:hover {\n\t\t\theight:84px;\n\t\t\tpadding-top:65px;\n\t\t\tfont-size:12px; font-weight:bold; color:#787878; text-align:center; text-shadow:0 1px 1px #fff;\n\t\t\tbackground-image:none;\n\t\t\tbox-shadow:none;\n\t\t\tborder: 2px dashed #B0B0B0;\n\t\t\t}\n\t\t.slideshow a figcaption {\n\t\t\toverflow:hidden;\n\t\t\theight:28px;\n\t\t\t}\n\t\tul.slideshow li a.remove {\n\t\t\tright:1px;\n\t\t\ttop:3px;\n\t\t\twidth:14px; height:11px;\n\t\t\ttext-indent:-9999px;\n\t\t\tbackground:none;\n\t\t\tpadding:0 !important;\n\t\t\tbackground:#ebebeb url(images/slide_delete.png) no-repeat 2px 0;\n\t\t\topacity:1;\n\t\t\t}\n\t\t\tul.slideshow li a.remove:hover {\n\t\t\t\tbackground-position:2px -11px;\n\t\t\t\t}\n\n.popup-tabs {\n\tpadding-top:10px;\n\tbackground:#f5f5f5;\n\tborder:#cccccc solid 1px !important;\n\tborder-width:1px 0 0 0 !important;\n\t}\n\t.popup-tabs ul.ui-tabs-nav {\n\t\tpadding:3px 0 0; margin: 0 6px 6px 8px;\n\t\tbackground:none;\n\t\tborder:0; border-bottom:#9d9d9d solid 1px;\n\t\t}\n\t\t.popup-tabs ul.ui-tabs-nav li {margin-right:5px;}\n\t\t.popup-tabs ul.ui-tabs-nav li.ui-tabs-selected {background:#f5f5f5;}\n\n\t#next .button {\n\t\tpadding: 3px 9px 2px 9px;\n\t\tcolor: #444444; font-family: Arial,Helvetica,sans-serif; font-size: 12px; font-weight: normal; line-height: 17px;\n\t\tmargin: 0 6px 0 0;\n\t\toutline: medium none;\n\t\tbackground: -moz-linear-gradient(center top , #FAFAFA 0pt, #F6F6F6 100%) repeat scroll 0 0 transparent;\n\t\tborder: 1px solid #9D9D9D;\n\t\t\n\t\t}\n\t\t#next .button:hover {\n\t\t\tbackground: -moz-linear-gradient(center top , #2390BD 0pt, #007FB3 100%) repeat scroll 0 0 transparent;\n    \t\tborder: 1px solid #007FB3;\n    \t\tcolor: #FFFFFF;\n\t\t\t}\n\n#next .editarea,\n#next .top-shadow {box-shadow:inset 0 1px 4px rgba(0,0,0,0.1);}\n\t#next .top-shadow {margin:0; padding:10px;\n\t}\n\t#next .editarea > div {\n\t\tposition:relative;\n\t\t}\n\t#next .editarea h2 {\n\t\tpadding:0;\n\t\tfont-size:13px; color:#444444;\n\t\t}\n\t\t#next .editarea h2 small {\n\t\t\tcolor:#7f7f7f; font-style:italic;\n\t\t\t}\n\t#next .editarea input[type=\"text\"] {\n    \twidth: 98.5%;\n\t\tmargin:3px 0 3px 0;\n\t\t}\n\t#next .editarea div#editor {\n\t\tdisplay:block;\n\t\tpadding:6px 126px 6px 6px;\n\t\tbackground:#d9d9d9;\n\t\tborder:1px solid #b0b0b0;\n\t\tbox-shadow:inset 0 1px 2px rgba(0,0,0,0.2);\n\t\tmin-height:32px;\n\t\t}\n\t\t#next .editarea div#editor img{\n\t\t\tmargin-right:120px;\n\t\t\t}\n\n\t#next .editarea > div .save-button {\n\t\tposition:absolute; top:41px; right:7px;\n\t\tcolor:#fff;\n\t\tborder:1px solid #007fb3;\n\t\tmin-width:114px;\n\t\t}\n\t\t\n#image-archive {\n\tpadding-top:10px;\n\t}\n\t#image-archive .paginationControl {\n        color: #f5f5f5;\n\t\tpadding:3px 0 4px 8px;\n\t\t}\n\t\t#image-archive .paginationControl span,\n\t\t#image-archive .paginationControl a {\n\t\t\tdisplay:inline-block;\n\t\t\tcolor:#3b3b3b; font-size:12px;\n\t\t\tpadding:3px 12px;\n\t\t\tborder:#9d9d9d solid 1px;\n\t\t\t}\n\t\t\t#image-archive .paginationControl span {\n\t\t\t\tcolor:#dbdbdb;\n\t\t\t\tborder:#e5e5e5 solid 1px;\n\t\t\t\t}\n\n#next .inline {\n\tpadding: 0 10px;\n}\n#next .inline.top-shadow {\n\tpadding: 10px;\n}\n#next #image-search {\n\tmargin: 12px 8px 0 8px;\n}\n#next #image-search button {\n\tfont-size:13px !important;\n}\n\n#slideshow-rendition-info {\n    padding-left: 1em;\n    font-size: 0.8em;\n    color: #ccc;\n}\n"
  },
  {
    "path": "newscoop/admin-style/jScrollPane.css",
    "content": "\r\n.jScrollPaneContainer {\r\n\tposition: relative;\r\n\toverflow: hidden;\r\n\tz-index: 1;\r\n\theight:200px;\r\n}\r\n\r\n.jScrollPaneTrack {\r\n\tposition: absolute;\r\n\tcursor: pointer;\r\n\tright: 0;\r\n\ttop: 0;\r\n\theight: 100%;\r\n\tbackground: #aaa;\r\n}\r\n.jScrollPaneDrag {\r\n\tposition: absolute;\r\n\tbackground: #666;\r\n\tcursor: pointer;\r\n\toverflow: hidden;\r\n}\r\n.jScrollPaneDragTop {\r\n\tposition: absolute;\r\n\ttop: 0;\r\n\tleft: 0;\r\n\toverflow: hidden;\r\n}\r\n.jScrollPaneDragBottom {\r\n\tposition: absolute;\r\n\tbottom: 0;\r\n\tleft: 0;\r\n\toverflow: hidden;\r\n}\r\na.jScrollArrowUp {\r\n\tdisplay: block;\r\n\tposition: absolute;\r\n\tz-index: 1;\r\n\ttop: 0;\r\n\tright: 0;\r\n\ttext-indent: -2000px;\r\n\toverflow: hidden;\r\n\t/*background-color: #666;*/\r\n\theight: 9px;\r\n}\r\na.jScrollArrowUp:hover {\r\n\t/*background-color: #f60;*/\r\n}\r\n\r\na.jScrollArrowDown {\r\n\tdisplay: block;\r\n\tposition: absolute;\r\n\tz-index: 1;\r\n\tbottom: 0;\r\n\tright: 0;\r\n\ttext-indent: -2000px;\r\n\toverflow: hidden;\r\n\t/*background-color: #666;*/\r\n\theight: 9px;\r\n}\r\na.jScrollArrowDown:hover {\r\n\t/*background-color: #f60;*/\r\n}\r\na.jScrollActiveArrowButton, a.jScrollActiveArrowButton:hover {\r\n\t/*background-color: #f00;*/\r\n}"
  },
  {
    "path": "newscoop/admin-style/jquery-ui-1.8.6.custom.css",
    "content": "/*\n * jQuery UI CSS Framework 1.8.6\n *\n * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)\n * Dual licensed under the MIT or GPL Version 2 licenses.\n * http://jquery.org/license\n *\n * http://docs.jquery.com/UI/Theming/API\n */\n\n/* Layout helpers\n----------------------------------*/\n.ui-helper-hidden {\n\tdisplay: none;\n}\n.ui-helper-hidden-accessible {\n\tposition: absolute;\n\tleft: -99999999px;\n}\n.ui-helper-reset {\n\tmargin: 0;\n\tpadding: 0;\n\tborder: 0;\n\toutline: 0;\n\tline-height: 1.3;\n\ttext-decoration: none;\n\tfont-size: 100%;\n\tlist-style: none;\n}\n.ui-helper-clearfix:after {\n\tcontent: \".\";\n\tdisplay: block;\n\theight: 0;\n\tclear: both;\n\tvisibility: hidden;\n}\n.ui-helper-clearfix {\n\tdisplay: inline-block;\n}\n/* required comment for clearfix to work in Opera \\*/\n* html .ui-helper-clearfix {\n\theight:1%;\n}\n.ui-helper-clearfix {\n\tdisplay:block;\n}\n/* end clearfix */\n.ui-helper-zfix {\n\twidth: 100%;\n\theight: 100%;\n\ttop: 0;\n\tleft: 0;\n\tposition: absolute;\n\topacity: 0;\n\tfilter:Alpha(Opacity=0);\n}\n/* Interaction Cues\n----------------------------------*/\n.ui-state-disabled {\n\tcursor: default !important;\n}\n/* Icons\n----------------------------------*/\n\n/* states and images */\n.ui-icon {\n\tdisplay: block;\n\ttext-indent: -99999px;\n\toverflow: hidden;\n\tbackground-repeat: no-repeat;\n}\n/* Misc visuals\n----------------------------------*/\n\n/* Overlays */\n.ui-widget-overlay {\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\twidth: 100%;\n\theight: 100%;\n}\n/*\n * jQuery UI CSS Framework 1.8.6\n *\n * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)\n * Dual licensed under the MIT or GPL Version 2 licenses.\n * http://jquery.org/license\n *\n * http://docs.jquery.com/UI/Theming/API\n *\n * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Helvetica,%20Arial,%20sans-serif&fwDefault=bold&fsDefault=1.2em&cornerRadius=0px&bgColorHeader=ebebeb&bgTextureHeader=03_highlight_soft.png&bgImgOpacityHeader=50&borderColorHeader=d3d3d3&fcHeader=444444&iconColorHeader=007fb3&bgColorContent=ffffff&bgTextureContent=01_flat.png&bgImgOpacityContent=75&borderColorContent=dddddd&fcContent=444444&iconColorContent=ff0084&bgColorDefault=f6f6f6&bgTextureDefault=03_highlight_soft.png&bgImgOpacityDefault=100&borderColorDefault=d3d3d3&fcDefault=3b3b3b&iconColorDefault=666666&bgColorHover=007fb3&bgTextureHover=03_highlight_soft.png&bgImgOpacityHover=25&borderColorHover=007fb3&fcHover=ffffff&iconColorHover=ffffff&bgColorActive=ffffff&bgTextureActive=01_flat.png&bgImgOpacityActive=65&borderColorActive=d3d3d3&fcActive=007fb3&iconColorActive=454545&bgColorHighlight=eff6eb&bgTextureHighlight=01_flat.png&bgImgOpacityHighlight=55&borderColorHighlight=65a539&fcHighlight=65a539&iconColorHighlight=65a539&bgColorError=fae5e5&bgTextureError=01_flat.png&bgImgOpacityError=55&borderColorError=d00000&fcError=d00000&iconColorError=d00000&bgColorOverlay=9d9d9d&bgTextureOverlay=01_flat.png&bgImgOpacityOverlay=0&opacityOverlay=50&bgColorShadow=6c6c6c&bgTextureShadow=01_flat.png&bgImgOpacityShadow=0&opacityShadow=60&thicknessShadow=6px&offsetTopShadow=-6px&offsetLeftShadow=-6px&cornerRadiusShadow=0px\n */\n\n\n/* Component containers\n----------------------------------*/\n.ui-widget {\n\tfont-family: Helvetica, Arial, sans-serif;\n\tfont-size: 1.2em;\n}\n.ui-widget .ui-widget {\n\tfont-size: 1em;\n}\n.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button {\n\tfont-family: Helvetica, Arial, sans-serif;\n\tfont-size: 12px;\n}\n.ui-widget-content {\n\tborder: 1px solid #9d9d9d;\n\tbackground: #ffffff;\n\tcolor: #444444;\n}\n.ui-widget-content a {\n\tcolor: #444444;\n}\n.ui-widget-header {\n\tborder: 1px solid #9d9d9d;\n\tbackground: #ebebeb url(images/ui-bg_highlight-soft_50_ebebeb_1x100.png) 50% 50% repeat-x;\n\tcolor: #444444;\n\tfont-weight: bold;\n}\n.ui-widget-header a {\n\tcolor: #444444;\n}\n/* Interaction states\n----------------------------------*/\n\n\n.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default {\n\tborder: 1px solid #9d9d9d;\n\tbackground: #f6f6f6 url(images/ui-bg_highlight-soft_100_f6f6f6_1x100.png) 50% 50% repeat-x;\n\tcolor: #3b3b3b;\n}\n.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited {\n\tcolor: #3b3b3b;\n\ttext-decoration: none;\n}\n.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus {\n\tborder: 1px solid #007fb3;\n\tbackground: #007fb3 url(images/ui-bg_highlight-soft_25_007fb3_1x100.png) 50% 50% repeat-x;\n\tcolor: #ffffff;\n}\n.ui-state-hover a, .ui-state-hover a:hover {\n\tcolor: #ffffff;\n\ttext-decoration: none;\n}\n.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active {\n\tborder: 1px solid #9d9d9d;\n\tbackground: #ffffff url(images/ui-bg_flat_65_ffffff_40x100.png) 50% 50% repeat-x;\n\tcolor: #007fb3;\n}\n.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited {\n\tcolor: #007fb3;\n\ttext-decoration: none;\n}\n.ui-widget :active {\n\toutline: none;\n}\n.ui-widget-header .ui-state-default,\n.ui-widget-header .ui-state-hover,\n.ui-widget-header .ui-state-focus,\n.ui-widget-header .ui-state-active {\n\tfont-weight:bold;\n}\n/* Interaction Cues\n----------------------------------*/\n.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {\n\tborder: 1px solid #65a539;\n\tbackground: #eff6eb url(images/ui-bg_flat_55_eff6eb_40x100.png) 50% 50% repeat-x;\n\tcolor: #65a539;\n}\n.ui-state-highlight a, .ui-widget-content .ui-state-highlight a, .ui-widget-header .ui-state-highlight a {\n\tcolor: #65a539;\n}\n.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {\n\tborder: 1px solid #d00000;\n\tbackground: #fae5e5 url(images/ui-bg_flat_55_fae5e5_40x100.png) 50% 50% repeat-x;\n\tcolor: #d00000;\n}\n.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a {\n\tcolor: #d00000;\n}\n.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text {\n\tcolor: #d00000;\n}\n.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary {\n\tfont-weight: bold;\n}\n.ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary {\n\topacity: .7;\n\tfilter:Alpha(Opacity=70);\n\tfont-weight: normal;\n}\n.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled {\n\topacity: .35;\n\tfilter:Alpha(Opacity=35);\n\tbackground-image: none;\n}\n/* Icons\n----------------------------------*/\n\n/* states and images */\n.ui-icon {\n\twidth: 16px;\n\theight: 16px;\n\tbackground-image: url(images/ui-icons_666666_256x240.png);\n}\n.ui-widget-content .ui-icon {\n\tbackground-image: url(images/ui-icons_666666_256x240.png);\n}\n.ui-widget-header .ui-icon {\n\tbackground-image: url(images/ui-icons_007fb3_256x240.png);\n}\n.ui-state-default .ui-icon {\n\tbackground-image: url(images/ui-icons_666666_256x240.png);\n}\n.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {\n\tbackground-image: url(images/ui-icons_ffffff_256x240.png);\n}\n.ui-state-active .ui-icon {\n\tbackground-image: url(images/ui-icons_454545_256x240.png);\n}\n.ui-state-highlight .ui-icon {\n\tbackground-image: url(images/ui-icons_65a539_256x240.png);\n}\n.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {\n\tbackground-image: url(images/ui-icons_d00000_256x240.png);\n}\n/* positioning */\n.ui-icon-carat-1-n {\n\tbackground-position: 0 0;\n}\n.ui-icon-carat-1-ne {\n\tbackground-position: -16px 0;\n}\n.ui-icon-carat-1-e {\n\tbackground-position: -32px 0;\n}\n.ui-icon-carat-1-se {\n\tbackground-position: -48px 0;\n}\n.ui-icon-carat-1-s {\n\tbackground-position: -64px 0;\n}\n.ui-icon-carat-1-sw {\n\tbackground-position: -80px 0;\n}\n.ui-icon-carat-1-w {\n\tbackground-position: -96px 0;\n}\n.ui-icon-carat-1-nw {\n\tbackground-position: -112px 0;\n}\n.ui-icon-carat-2-n-s {\n\tbackground-position: -128px 0;\n}\n.ui-icon-carat-2-e-w {\n\tbackground-position: -144px 0;\n}\n.ui-icon-triangle-1-n {\n\tbackground-position: 0 -16px;\n}\n.ui-icon-triangle-1-ne {\n\tbackground-position: -16px -16px;\n}\n.ui-icon-triangle-1-e {\n\tbackground-position: -32px -16px;\n}\n.ui-icon-triangle-1-se {\n\tbackground-position: -48px -16px;\n}\n.ui-icon-triangle-1-s {\n\tbackground-position: -64px -16px;\n}\n.ui-icon-triangle-1-sw {\n\tbackground-position: -80px -16px;\n}\n.ui-icon-triangle-1-w {\n\tbackground-position: -96px -16px;\n}\n.ui-icon-triangle-1-nw {\n\tbackground-position: -112px -16px;\n}\n.ui-icon-triangle-2-n-s {\n\tbackground-position: -128px -16px;\n}\n.ui-icon-triangle-2-e-w {\n\tbackground-position: -144px -16px;\n}\n.ui-icon-arrow-1-n {\n\tbackground-position: 0 -32px;\n}\n.ui-icon-arrow-1-ne {\n\tbackground-position: -16px -32px;\n}\n.ui-icon-arrow-1-e {\n\tbackground-position: -32px -32px;\n}\n.ui-icon-arrow-1-se {\n\tbackground-position: -48px -32px;\n}\n.ui-icon-arrow-1-s {\n\tbackground-position: -64px -32px;\n}\n.ui-icon-arrow-1-sw {\n\tbackground-position: -80px -32px;\n}\n.ui-icon-arrow-1-w {\n\tbackground-position: -96px -32px;\n}\n.ui-icon-arrow-1-nw {\n\tbackground-position: -112px -32px;\n}\n.ui-icon-arrow-2-n-s {\n\tbackground-position: -128px -32px;\n}\n.ui-icon-arrow-2-ne-sw {\n\tbackground-position: -144px -32px;\n}\n.ui-icon-arrow-2-e-w {\n\tbackground-position: -160px -32px;\n}\n.ui-icon-arrow-2-se-nw {\n\tbackground-position: -176px -32px;\n}\n.ui-icon-arrowstop-1-n {\n\tbackground-position: -192px -32px;\n}\n.ui-icon-arrowstop-1-e {\n\tbackground-position: -208px -32px;\n}\n.ui-icon-arrowstop-1-s {\n\tbackground-position: -224px -32px;\n}\n.ui-icon-arrowstop-1-w {\n\tbackground-position: -240px -32px;\n}\n.ui-icon-arrowthick-1-n {\n\tbackground-position: 0 -48px;\n}\n.ui-icon-arrowthick-1-ne {\n\tbackground-position: -16px -48px;\n}\n.ui-icon-arrowthick-1-e {\n\tbackground-position: -32px -48px;\n}\n.ui-icon-arrowthick-1-se {\n\tbackground-position: -48px -48px;\n}\n.ui-icon-arrowthick-1-s {\n\tbackground-position: -64px -48px;\n}\n.ui-icon-arrowthick-1-sw {\n\tbackground-position: -80px -48px;\n}\n.ui-icon-arrowthick-1-w {\n\tbackground-position: -96px -48px;\n}\n.ui-icon-arrowthick-1-nw {\n\tbackground-position: -112px -48px;\n}\n.ui-icon-arrowthick-2-n-s {\n\tbackground-position: -128px -48px;\n}\n.ui-icon-arrowthick-2-ne-sw {\n\tbackground-position: -144px -48px;\n}\n.ui-icon-arrowthick-2-e-w {\n\tbackground-position: -160px -48px;\n}\n.ui-icon-arrowthick-2-se-nw {\n\tbackground-position: -176px -48px;\n}\n.ui-icon-arrowthickstop-1-n {\n\tbackground-position: -192px -48px;\n}\n.ui-icon-arrowthickstop-1-e {\n\tbackground-position: -208px -48px;\n}\n.ui-icon-arrowthickstop-1-s {\n\tbackground-position: -224px -48px;\n}\n.ui-icon-arrowthickstop-1-w {\n\tbackground-position: -240px -48px;\n}\n.ui-icon-arrowreturnthick-1-w {\n\tbackground-position: 0 -64px;\n}\n.ui-icon-arrowreturnthick-1-n {\n\tbackground-position: -16px -64px;\n}\n.ui-icon-arrowreturnthick-1-e {\n\tbackground-position: -32px -64px;\n}\n.ui-icon-arrowreturnthick-1-s {\n\tbackground-position: -48px -64px;\n}\n.ui-icon-arrowreturn-1-w {\n\tbackground-position: -64px -64px;\n}\n.ui-icon-arrowreturn-1-n {\n\tbackground-position: -80px -64px;\n}\n.ui-icon-arrowreturn-1-e {\n\tbackground-position: -96px -64px;\n}\n.ui-icon-arrowreturn-1-s {\n\tbackground-position: -112px -64px;\n}\n.ui-icon-arrowrefresh-1-w {\n\tbackground-position: -128px -64px;\n}\n.ui-icon-arrowrefresh-1-n {\n\tbackground-position: -144px -64px;\n}\n.ui-icon-arrowrefresh-1-e {\n\tbackground-position: -160px -64px;\n}\n.ui-icon-arrowrefresh-1-s {\n\tbackground-position: -176px -64px;\n}\n.ui-icon-arrow-4 {\n\tbackground-position: 0 -80px;\n}\n.ui-icon-arrow-4-diag {\n\tbackground-position: -16px -80px;\n}\n.ui-icon-extlink {\n\tbackground-position: -32px -80px;\n}\n.ui-icon-newwin {\n\tbackground-position: -48px -80px;\n}\n.ui-icon-refresh {\n\tbackground-position: -64px -80px;\n}\n.ui-icon-shuffle {\n\tbackground-position: -80px -80px;\n}\n.ui-icon-transfer-e-w {\n\tbackground-position: -96px -80px;\n}\n.ui-icon-transferthick-e-w {\n\tbackground-position: -112px -80px;\n}\n.ui-icon-folder-collapsed {\n\tbackground-position: 0 -96px;\n}\n.ui-icon-folder-open {\n\tbackground-position: -16px -96px;\n}\n.ui-icon-document {\n\tbackground-position: -32px -96px;\n}\n.ui-icon-document-b {\n\tbackground-position: -48px -96px;\n}\n.ui-icon-note {\n\tbackground-position: -64px -96px;\n}\n.ui-icon-mail-closed {\n\tbackground-position: -80px -96px;\n}\n.ui-icon-mail-open {\n\tbackground-position: -96px -96px;\n}\n.ui-icon-suitcase {\n\tbackground-position: -112px -96px;\n}\n.ui-icon-comment {\n\tbackground-position: -128px -96px;\n}\n.ui-icon-person {\n\tbackground-position: -144px -96px;\n}\n.ui-icon-print {\n\tbackground-position: -160px -96px;\n}\n.ui-icon-trash {\n\tbackground-position: -176px -96px;\n}\n.ui-icon-locked {\n\tbackground-position: -192px -96px;\n}\n.ui-icon-unlocked {\n\tbackground-position: -208px -96px;\n}\n.ui-icon-bookmark {\n\tbackground-position: -224px -96px;\n}\n.ui-icon-tag {\n\tbackground-position: -240px -96px;\n}\n.ui-icon-home {\n\tbackground-position: 0 -112px;\n}\n.ui-icon-flag {\n\tbackground-position: -16px -112px;\n}\n.ui-icon-calendar {\n\tbackground-position: -32px -112px;\n}\n.ui-icon-cart {\n\tbackground-position: -48px -112px;\n}\n.ui-icon-pencil {\n\tbackground-position: -64px -112px;\n}\n.ui-icon-clock {\n\tbackground-position: -80px -112px;\n}\n.ui-icon-disk {\n\tbackground-position: -96px -112px;\n}\n.ui-icon-calculator {\n\tbackground-position: -112px -112px;\n}\n.ui-icon-zoomin {\n\tbackground-position: -128px -112px;\n}\n.ui-icon-zoomout {\n\tbackground-position: -144px -112px;\n}\n.ui-icon-search {\n\tbackground-position: -160px -112px;\n}\n.ui-icon-wrench {\n\tbackground-position: -176px -112px;\n}\n.ui-icon-gear {\n\tbackground-position: -192px -112px;\n}\n.ui-icon-heart {\n\tbackground-position: -208px -112px;\n}\n.ui-icon-star {\n\tbackground-position: -224px -112px;\n}\n.ui-icon-link {\n\tbackground-position: -240px -112px;\n}\n.ui-icon-cancel {\n\tbackground-position: 0 -128px;\n}\n.ui-icon-plus {\n\tbackground-position: -16px -128px;\n}\n.ui-icon-plusthick {\n\tbackground-position: -32px -128px;\n}\n.ui-icon-minus {\n\tbackground-position: -48px -128px;\n}\n.ui-icon-minusthick {\n\tbackground-position: -64px -128px;\n}\n.ui-icon-close {\n\tbackground-position: -80px -128px;\n}\n.ui-icon-closethick {\n\tbackground-position: -96px -128px;\n}\n.ui-icon-key {\n\tbackground-position: -112px -128px;\n}\n.ui-icon-lightbulb {\n\tbackground-position: -128px -128px;\n}\n.ui-icon-scissors {\n\tbackground-position: -144px -128px;\n}\n.ui-icon-clipboard {\n\tbackground-position: -160px -128px;\n}\n.ui-icon-copy {\n\tbackground-position: -176px -128px;\n}\n.ui-icon-contact {\n\tbackground-position: -192px -128px;\n}\n.ui-icon-image {\n\tbackground-position: -208px -128px;\n}\n.ui-icon-video {\n\tbackground-position: -224px -128px;\n}\n.ui-icon-script {\n\tbackground-position: -240px -128px;\n}\n.ui-icon-alert {\n\tbackground-position: 0 -144px;\n}\n.ui-icon-info {\n\tbackground-position: -16px -144px;\n}\n.ui-icon-notice {\n\tbackground-position: -32px -144px;\n}\n.ui-icon-help {\n\tbackground-position: -48px -144px;\n}\n.ui-icon-check {\n\tbackground-position: -64px -144px;\n}\n.ui-icon-bullet {\n\tbackground-position: -80px -144px;\n}\n.ui-icon-radio-off {\n\tbackground-position: -96px -144px;\n}\n.ui-icon-radio-on {\n\tbackground-position: -112px -144px;\n}\n.ui-icon-pin-w {\n\tbackground-position: -128px -144px;\n}\n.ui-icon-pin-s {\n\tbackground-position: -144px -144px;\n}\n.ui-icon-play {\n\tbackground-position: 0 -160px;\n}\n.ui-icon-pause {\n\tbackground-position: -16px -160px;\n}\n.ui-icon-seek-next {\n\tbackground-position: -32px -160px;\n}\n.ui-icon-seek-prev {\n\tbackground-position: -48px -160px;\n}\n.ui-icon-seek-end {\n\tbackground-position: -64px -160px;\n}\n.ui-icon-seek-start {\n\tbackground-position: -80px -160px;\n}\n/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */\n.ui-icon-seek-first {\n\tbackground-position: -80px -160px;\n}\n.ui-icon-stop {\n\tbackground-position: -96px -160px;\n}\n.ui-icon-eject {\n\tbackground-position: -112px -160px;\n}\n.ui-icon-volume-off {\n\tbackground-position: -128px -160px;\n}\n.ui-icon-volume-on {\n\tbackground-position: -144px -160px;\n}\n.ui-icon-power {\n\tbackground-position: 0 -176px;\n}\n.ui-icon-signal-diag {\n\tbackground-position: -16px -176px;\n}\n.ui-icon-signal {\n\tbackground-position: -32px -176px;\n}\n.ui-icon-battery-0 {\n\tbackground-position: -48px -176px;\n}\n.ui-icon-battery-1 {\n\tbackground-position: -64px -176px;\n}\n.ui-icon-battery-2 {\n\tbackground-position: -80px -176px;\n}\n.ui-icon-battery-3 {\n\tbackground-position: -96px -176px;\n}\n.ui-icon-circle-plus {\n\tbackground-position: 0 -192px;\n}\n.ui-icon-circle-minus {\n\tbackground-position: -16px -192px;\n}\n.ui-icon-circle-close {\n\tbackground-position: -32px -192px;\n}\n.ui-icon-circle-triangle-e {\n\tbackground-position: -48px -192px;\n}\n.ui-icon-circle-triangle-s {\n\tbackground-position: -64px -192px;\n}\n.ui-icon-circle-triangle-w {\n\tbackground-position: -80px -192px;\n}\n.ui-icon-circle-triangle-n {\n\tbackground-position: -96px -192px;\n}\n.ui-icon-circle-arrow-e {\n\tbackground-position: -112px -192px;\n}\n.ui-icon-circle-arrow-s {\n\tbackground-position: -128px -192px;\n}\n.ui-icon-circle-arrow-w {\n\tbackground-position: -144px -192px;\n}\n.ui-icon-circle-arrow-n {\n\tbackground-position: -160px -192px;\n}\n.ui-icon-circle-zoomin {\n\tbackground-position: -176px -192px;\n}\n.ui-icon-circle-zoomout {\n\tbackground-position: -192px -192px;\n}\n.ui-icon-circle-check {\n\tbackground-position: -208px -192px;\n}\n.ui-icon-circlesmall-plus {\n\tbackground-position: 0 -208px;\n}\n.ui-icon-circlesmall-minus {\n\tbackground-position: -16px -208px;\n}\n.ui-icon-circlesmall-close {\n\tbackground-position: -32px -208px;\n}\n.ui-icon-squaresmall-plus {\n\tbackground-position: -48px -208px;\n}\n.ui-icon-squaresmall-minus {\n\tbackground-position: -64px -208px;\n}\n.ui-icon-squaresmall-close {\n\tbackground-position: -80px -208px;\n}\n.ui-icon-grip-dotted-vertical {\n\tbackground-position: 0 -224px;\n}\n.ui-icon-grip-dotted-horizontal {\n\tbackground-position: -16px -224px;\n}\n.ui-icon-grip-solid-vertical {\n\tbackground-position: -32px -224px;\n}\n.ui-icon-grip-solid-horizontal {\n\tbackground-position: -48px -224px;\n}\n.ui-icon-gripsmall-diagonal-se {\n\tbackground-position: -64px -224px;\n}\n.ui-icon-grip-diagonal-se {\n\tbackground-position: -80px -224px;\n}\n/* Misc visuals\n----------------------------------*/\n\n/* Corner radius */\n.ui-corner-tl {\n\t-moz-border-radius-topleft: 0px;\n\t-webkit-border-top-left-radius: 0px;\n\tborder-top-left-radius: 0px;\n}\n.ui-corner-tr {\n\t-moz-border-radius-topright: 0px;\n\t-webkit-border-top-right-radius: 0px;\n\tborder-top-right-radius: 0px;\n}\n.ui-corner-bl {\n\t-moz-border-radius-bottomleft: 0px;\n\t-webkit-border-bottom-left-radius: 0px;\n\tborder-bottom-left-radius: 0px;\n}\n.ui-corner-br {\n\t-moz-border-radius-bottomright: 0px;\n\t-webkit-border-bottom-right-radius: 0px;\n\tborder-bottom-right-radius: 0px;\n}\n.ui-corner-top {\n\t-moz-border-radius-topleft: 0px;\n\t-webkit-border-top-left-radius: 0px;\n\tborder-top-left-radius: 0px;\n\t-moz-border-radius-topright: 0px;\n\t-webkit-border-top-right-radius: 0px;\n\tborder-top-right-radius: 0px;\n}\n.ui-corner-bottom {\n\t-moz-border-radius-bottomleft: 0px;\n\t-webkit-border-bottom-left-radius: 0px;\n\tborder-bottom-left-radius: 0px;\n\t-moz-border-radius-bottomright: 0px;\n\t-webkit-border-bottom-right-radius: 0px;\n\tborder-bottom-right-radius: 0px;\n}\n.ui-corner-right {\n\t-moz-border-radius-topright: 0px;\n\t-webkit-border-top-right-radius: 0px;\n\tborder-top-right-radius: 0px;\n\t-moz-border-radius-bottomright: 0px;\n\t-webkit-border-bottom-right-radius: 0px;\n\tborder-bottom-right-radius: 0px;\n}\n.ui-corner-left {\n\t-moz-border-radius-topleft: 0px;\n\t-webkit-border-top-left-radius: 0px;\n\tborder-top-left-radius: 0px;\n\t-moz-border-radius-bottomleft: 0px;\n\t-webkit-border-bottom-left-radius: 0px;\n\tborder-bottom-left-radius: 0px;\n}\n.ui-corner-all {\n\t-moz-border-radius: 0px;\n\t-webkit-border-radius: 0px;\n\tborder-radius: 0px;\n}\n/* Overlays */\n.ui-widget-overlay {\n\tbackground: #9d9d9d url(images/ui-bg_flat_0_9d9d9d_40x100.png) 50% 50% repeat-x;\n\topacity: .50;\n\tfilter:Alpha(Opacity=50);\n}\n\n.ui-widget-shadow {\n\tmargin: -6px 0 0 -6px;\n\tpadding: 6px;\n\tbackground: #6c6c6c url(images/ui-bg_flat_0_6c6c6c_40x100.png) 50% 50% repeat-x;\n\topacity: .60;\n\tfilter:Alpha(Opacity=60);\n\t-moz-border-radius: 0px;\n\t-webkit-border-radius: 0px;\n\tborder-radius: 0px;\n}/*\n * jQuery UI Resizable 1.8.6\n *\n * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)\n * Dual licensed under the MIT or GPL Version 2 licenses.\n * http://jquery.org/license\n *\n * http://docs.jquery.com/UI/Resizable#theming\n */\n.ui-resizable {\n\tposition: relative;\n}\n.ui-resizable-handle {\n\tposition: absolute;\n\tfont-size: 0.1px;\n\tz-index: 99999;\n\tdisplay: block;\n}\n.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle {\n\tdisplay: none;\n}\n.ui-resizable-n {\n\tcursor: n-resize;\n\theight: 7px;\n\twidth: 100%;\n\ttop: -5px;\n\tleft: 0;\n}\n.ui-resizable-s {\n\tcursor: s-resize;\n\theight: 7px;\n\twidth: 100%;\n\tbottom: -5px;\n\tleft: 0;\n}\n.ui-resizable-e {\n\tcursor: e-resize;\n\twidth: 7px;\n\tright: -5px;\n\ttop: 0;\n\theight: 100%;\n}\n.ui-resizable-w {\n\tcursor: w-resize;\n\twidth: 7px;\n\tleft: -5px;\n\ttop: 0;\n\theight: 100%;\n}\n.ui-resizable-se {\n\tcursor: se-resize;\n\twidth: 12px;\n\theight: 12px;\n\tright: 1px;\n\tbottom: 1px;\n}\n.ui-resizable-sw {\n\tcursor: sw-resize;\n\twidth: 9px;\n\theight: 9px;\n\tleft: -5px;\n\tbottom: -5px;\n}\n.ui-resizable-nw {\n\tcursor: nw-resize;\n\twidth: 9px;\n\theight: 9px;\n\tleft: -5px;\n\ttop: -5px;\n}\n.ui-resizable-ne {\n\tcursor: ne-resize;\n\twidth: 9px;\n\theight: 9px;\n\tright: -5px;\n\ttop: -5px;\n}/*\n * jQuery UI Selectable 1.8.6\n *\n * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)\n * Dual licensed under the MIT or GPL Version 2 licenses.\n * http://jquery.org/license\n *\n * http://docs.jquery.com/UI/Selectable#theming\n */\n.ui-selectable-helper {\n\tposition: absolute;\n\tz-index: 100;\n\tborder:1px dotted black;\n}\n/*\n * jQuery UI Accordion 1.8.6\n *\n * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)\n * Dual licensed under the MIT or GPL Version 2 licenses.\n * http://jquery.org/license\n *\n * http://docs.jquery.com/UI/Accordion#theming\n */\n/* IE/Win - Fix animation bug - #4615 */\n.ui-accordion {\n\twidth: 100%;\n}\n.ui-accordion .ui-accordion-header {\n\tcursor: pointer;\n\tposition: relative;\n\tmargin-top: 1px;\n\tzoom: 1;\n\tfont-weight:bold;\n}\n.ui-accordion .ui-accordion-li-fix {\n\tdisplay: inline;\n}\n.ui-accordion .ui-accordion-header-active {\n\tborder-bottom: 0 !important;\n}\n.ui-accordion .ui-accordion-header a {\n\tdisplay: block;\n\tfont-size: 1em;\n\tpadding: .5em .5em .5em .7em;\n}\n.ui-accordion-icons .ui-accordion-header a {\n\tpadding-left: 2.2em;\n}\n.ui-accordion .ui-accordion-header .ui-icon {\n\tposition: absolute;\n\tleft: .5em;\n\ttop: 50%;\n\tmargin-top: -8px;\n}\n.ui-accordion .ui-accordion-content {\n\tpadding: 10px;\n\tborder-top: 0;\n\tmargin-top: -2px;\n\tposition: relative;\n\ttop: 1px;\n\tmargin-bottom: 2px;\n\toverflow: auto;\n\tdisplay: none;\n\tzoom: 1;\n}\n.ui-accordion .ui-accordion-content-active {\n\tdisplay: block;\n}/*\n * jQuery UI Autocomplete 1.8.6\n *\n * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)\n * Dual licensed under the MIT or GPL Version 2 licenses.\n * http://jquery.org/license\n *\n * http://docs.jquery.com/UI/Autocomplete#theming\n */\n.ui-autocomplete {\n\tposition: absolute;\n\tcursor: default;\n}\n/* workarounds */\n* html .ui-autocomplete {\n\twidth:1px;\n} /* without this, the menu expands to 100% in IE6 */\n/*\n * jQuery UI Menu 1.8.6\n *\n * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)\n * Dual licensed under the MIT or GPL Version 2 licenses.\n * http://jquery.org/license\n *\n * http://docs.jquery.com/UI/Menu#theming\n */\n.ui-menu {\n\tlist-style:none;\n\tpadding: 2px;\n\tmargin: 0;\n\tdisplay:block;\n\tfloat: left;\n}\n.ui-menu .ui-menu {\n\tmargin-top: -3px;\n}\n.ui-menu .ui-menu-item {\n\tmargin:0;\n\tpadding: 0;\n\tzoom: 1;\n\tfloat: left;\n\tclear: left;\n\twidth: 100%;\n}\n.ui-menu .ui-menu-item a {\n\ttext-decoration:none;\n\tdisplay:block;\n\tpadding:.2em .4em;\n\tline-height:1.5;\n\tzoom:1;\n}\n.ui-menu .ui-menu-item a.ui-state-hover, .ui-menu .ui-menu-item a.ui-state-active {\n\tfont-weight: normal;\n\tmargin: -1px;\n}\n/*\n * jQuery UI Button 1.8.6\n *\n * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)\n * Dual licensed under the MIT or GPL Version 2 licenses.\n * http://jquery.org/license\n *\n * http://docs.jquery.com/UI/Button#theming\n */\n.ui-button {\n\tdisplay: inline-block;\n\tposition: relative;\n\tpadding: 0;\n\tmargin-right: .1em;\n\ttext-decoration: none !important;\n\tcursor: pointer;\n\ttext-align: center;\n\tzoom: 1;\n\toverflow: visible;\n} /* the overflow property removes extra width in IE */\n.ui-button-icon-only {\n\twidth: 2.2em;\n} /* to make room for the icon, a width needs to be set here */\nbutton.ui-button-icon-only {\n\twidth: 2.4em;\n} /* button elements seem to need a little more width */\n.ui-button-icons-only {\n\twidth: 3.4em;\n}\nbutton.ui-button-icons-only {\n\twidth: 3.7em;\n}\n/*button text element */\n.ui-button .ui-button-text {\n\tdisplay: block;\n\tline-height: 1.4;\n}\n.ui-button-text-only .ui-button-text {\n\tpadding: .4em 1em;\n}\n.ui-button-icon-only .ui-button-text, .ui-button-icons-only .ui-button-text {\n\tpadding: .4em;\n\ttext-indent: -9999999px;\n}\n.ui-button-text-icon-primary .ui-button-text, .ui-button-text-icons .ui-button-text {\n\tpadding: .4em 1em .4em 2.1em;\n}\n.ui-button-text-icon-secondary .ui-button-text, .ui-button-text-icons .ui-button-text {\n\tpadding: .4em 2.1em .4em 1em;\n}\n.ui-button-text-icons .ui-button-text {\n\tpadding-left: 2.1em;\n\tpadding-right: 2.1em;\n}\n/* no icon support for input elements, provide padding by default */\ninput.ui-button {\n\tpadding: .4em 1em;\n}\n/*button icon element(s) */\n.ui-button-icon-only .ui-icon, .ui-button-text-icon-primary .ui-icon, .ui-button-text-icon-secondary .ui-icon, .ui-button-text-icons .ui-icon, .ui-button-icons-only .ui-icon {\n\tposition: absolute;\n\ttop: 50%;\n\tmargin-top: -8px;\n}\n.ui-button-icon-only .ui-icon {\n\tleft: 50%;\n\tmargin-left: -8px;\n}\n.ui-button-text-icon-primary .ui-button-icon-primary, .ui-button-text-icons .ui-button-icon-primary, .ui-button-icons-only .ui-button-icon-primary {\n\tleft: .5em;\n}\n.ui-button-text-icon-secondary .ui-button-icon-secondary, .ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary {\n\tright: .5em;\n}\n.ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary {\n\tright: .5em;\n}\n/*button sets*/\n.ui-buttonset {\n\tmargin-right: 7px;\n}\n.ui-buttonset .ui-button {\n\tmargin-left: 0;\n\tmargin-right: -.3em;\n}\n\n/* workarounds */\nbutton.ui-button::-moz-focus-inner {\nborder: 0;\npadding: 0;\n} /* reset extra padding in Firefox */\n/*\n * jQuery UI Dialog 1.8.6\n *\n * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)\n * Dual licensed under the MIT or GPL Version 2 licenses.\n * http://jquery.org/license\n *\n * http://docs.jquery.com/UI/Dialog#theming\n */\n.ui-dialog {\n\tposition: absolute;\n\tpadding: .4em;\n\twidth: 300px;\n\toverflow: hidden;\n\tborder-width:3px;\n}\n.ui-dialog .ui-dialog-titlebar {\n\tpadding: 6px 8px 6px 8px;\n\tposition: relative;\n}\n.ui-dialog .ui-dialog-title {\n\tfloat: left;\n\tmargin: .1em 16px .2em 0;\n}\n.ui-dialog .ui-dialog-titlebar-close {\n\tposition: absolute;\n\tright: .3em;\n\ttop: 50%;\n\twidth: 19px;\n\tmargin: -10px 0 0 0;\n\tpadding: 1px;\n\theight: 18px;\n}\n.ui-dialog .ui-dialog-titlebar-close span {\n\tdisplay: block;\n\tmargin: 1px;\n}\n.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus {\n\tpadding: 0;\n}\n.ui-dialog .ui-dialog-content {\n\tposition: relative;\n\tborder: 0;\n\tpadding: .5em 1em;\n\tbackground: none;\n\toverflow: auto;\n\tzoom: 1;\n}\n.ui-dialog .ui-dialog-buttonpane {\n\ttext-align: left;\n\tborder-width: 1px 0 0 0;\n\tborder-color:#dedede;\n\tbackground-image: none;\n\tmargin: .3em -0.4em 0 -0.4em;\n\tpadding: .3em 1em 0em .4em;\n\n}\n.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {\n\tfloat: right;\n}\n.ui-dialog .ui-dialog-buttonpane button {\n\tmargin: .5em .4em .5em 0;\n\tcursor: pointer;\n}\n.ui-dialog .ui-resizable-se {\n\twidth: 14px;\n\theight: 14px;\n\n\tright: 3px;\n\tbottom: 3px;\n}\n.ui-draggable .ui-dialog-titlebar {\n\tcursor: move;\n}\n/*\n * jQuery UI Slider 1.8.6\n *\n * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)\n * Dual licensed under the MIT or GPL Version 2 licenses.\n * http://jquery.org/license\n *\n * http://docs.jquery.com/UI/Slider#theming\n */\n.ui-slider {\n\tposition: relative;\n\ttext-align: left;\n}\n.ui-slider .ui-slider-handle {\n\tposition: absolute;\n\tz-index: 2;\n\twidth: 1.2em;\n\theight: 1.2em;\n\tcursor: default;\n}\n.ui-slider .ui-slider-range {\n\tposition: absolute;\n\tz-index: 1;\n\tfont-size: .7em;\n\tdisplay: block;\n\tborder: 0;\n\tbackground-position: 0 0;\n}\n.ui-slider-horizontal {\n\theight: .8em;\n}\n.ui-slider-horizontal .ui-slider-handle {\n\ttop: -.3em;\n\tmargin-left: -.6em;\n}\n.ui-slider-horizontal .ui-slider-range {\n\ttop: 0;\n\theight: 100%;\n}\n.ui-slider-horizontal .ui-slider-range-min {\n\tleft: 0;\n}\n.ui-slider-horizontal .ui-slider-range-max {\n\tright: 0;\n}\n.ui-slider-vertical {\n\twidth: .8em;\n\theight: 100px;\n}\n.ui-slider-vertical .ui-slider-handle {\n\tleft: -.3em;\n\tmargin-left: 0;\n\tmargin-bottom: -.6em;\n}\n.ui-slider-vertical .ui-slider-range {\n\tleft: 0;\n\twidth: 100%;\n}\n.ui-slider-vertical .ui-slider-range-min {\n\tbottom: 0;\n}\n.ui-slider-vertical .ui-slider-range-max {\n\ttop: 0;\n}/*\n * jQuery UI Tabs 1.8.6\n *\n * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)\n * Dual licensed under the MIT or GPL Version 2 licenses.\n * http://jquery.org/license\n *\n * http://docs.jquery.com/UI/Tabs#theming\n */\n.ui-tabs {\n\tposition: relative;\n\tpadding: 4px;\n\tzoom: 1;\n} /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as \"fixed\") */\n.ui-tabs .ui-tabs-nav {\n\tmargin: 0;\n\tpadding: .2em .2em 0;\n}\n.ui-tabs .ui-tabs-nav li {\n\tlist-style: none;\n\tfloat: left;\n\tposition: relative;\n\ttop: 1px;\n\tmargin: 0 .2em 1px 0;\n\tborder-bottom: 0 !important;\n\tpadding: 0;\n\twhite-space: nowrap;\n}\n.ui-tabs .ui-tabs-nav li a {\n\tfloat: left;\n\tpadding: .5em 1em;\n\ttext-decoration: none;\n}\n.ui-tabs .ui-tabs-nav li.ui-tabs-selected {\n\tmargin-bottom: 0;\n\tpadding-bottom: 1px;\n}\n.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a {\n\tcursor: text;\n}\n.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a {\n\tcursor: pointer;\n} /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */\n.ui-tabs .ui-tabs-panel {\n\tdisplay: block;\n\tborder-width: 0;\n\t/*padding: 1em 1.4em;*/\n\tbackground: none;\n}\n.ui-tabs .ui-tabs-hide {\n\tdisplay: none !important;\n}\n/*\n * jQuery UI Datepicker 1.8.6\n *\n * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)\n * Dual licensed under the MIT or GPL Version 2 licenses.\n * http://jquery.org/license\n *\n * http://docs.jquery.com/UI/Datepicker#theming\n */\n.ui-datepicker {\n\twidth: 17em;\n\tpadding: .2em .2em 0;\n}\n.ui-datepicker .ui-datepicker-header {\n\tposition:relative;\n\tpadding:.2em 0;\n}\n.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {\n\tposition:absolute;\n\ttop: 2px;\n\twidth: 1.8em;\n\theight: 1.8em;\n}\n.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover {\n\ttop: 1px;\n}\n.ui-datepicker .ui-datepicker-prev {\n\tleft:2px;\n}\n.ui-datepicker .ui-datepicker-next {\n\tright:2px;\n}\n.ui-datepicker .ui-datepicker-prev-hover {\n\tleft:1px;\n}\n.ui-datepicker .ui-datepicker-next-hover {\n\tright:1px;\n}\n.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span {\n\tdisplay: block;\n\tposition: absolute;\n\tleft: 50%;\n\tmargin-left: -8px;\n\ttop: 50%;\n\tmargin-top: -8px;\n}\n.ui-datepicker .ui-datepicker-title {\n\tmargin: 0 2.3em;\n\tline-height: 1.8em;\n\ttext-align: center;\n}\n.ui-datepicker .ui-datepicker-title select {\n\tfont-size:1em;\n\tmargin:1px 0;\n}\n.ui-datepicker select.ui-datepicker-month-year {\n\twidth: 100%;\n}\n.ui-datepicker select.ui-datepicker-month, .ui-datepicker select.ui-datepicker-year {\n\twidth: 49%;\n}\n.ui-datepicker table {\n\twidth: 100%;\n\tfont-size: .9em;\n\tborder-collapse: collapse;\n\tmargin:0 0 .4em;\n}\n.ui-datepicker th {\n\tpadding: .7em .3em;\n\ttext-align: center;\n\tfont-weight: bold;\n\tborder: 0;\n}\n.ui-datepicker td {\n\tborder: 0;\n\tpadding: 1px;\n}\n.ui-datepicker td span, .ui-datepicker td a {\n\tdisplay: block;\n\tpadding: .2em;\n\ttext-align: right;\n\ttext-decoration: none;\n}\n.ui-datepicker .ui-datepicker-buttonpane {\n\tbackground-image: none;\n\tmargin: .7em 0 0 0;\n\tpadding:0 .2em;\n\tborder-left: 0;\n\tborder-right: 0;\n\tborder-bottom: 0;\n}\n.ui-datepicker .ui-datepicker-buttonpane button {\n\tfloat: right;\n\tmargin: .5em .2em .4em;\n\tcursor: pointer;\n\tpadding: .2em .6em .3em .6em;\n\twidth:auto;\n\toverflow:visible;\n}\n.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {\n\tfloat:left;\n}\n/* with multiple calendars */\n.ui-datepicker.ui-datepicker-multi {\n\twidth:auto;\n}\n.ui-datepicker-multi .ui-datepicker-group {\n\tfloat:left;\n}\n.ui-datepicker-multi .ui-datepicker-group table {\n\twidth:95%;\n\tmargin:0 auto .4em;\n}\n.ui-datepicker-multi-2 .ui-datepicker-group {\n\twidth:50%;\n}\n.ui-datepicker-multi-3 .ui-datepicker-group {\n\twidth:33.3%;\n}\n.ui-datepicker-multi-4 .ui-datepicker-group {\n\twidth:25%;\n}\n.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header {\n\tborder-left-width:0;\n}\n.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {\n\tborder-left-width:0;\n}\n.ui-datepicker-multi .ui-datepicker-buttonpane {\n\tclear:left;\n}\n.ui-datepicker-row-break {\n\tclear:both;\n\twidth:100%;\n}\n/* RTL support */\n.ui-datepicker-rtl {\n\tdirection: rtl;\n}\n.ui-datepicker-rtl .ui-datepicker-prev {\n\tright: 2px;\n\tleft: auto;\n}\n.ui-datepicker-rtl .ui-datepicker-next {\n\tleft: 2px;\n\tright: auto;\n}\n.ui-datepicker-rtl .ui-datepicker-prev:hover {\n\tright: 1px;\n\tleft: auto;\n}\n.ui-datepicker-rtl .ui-datepicker-next:hover {\n\tleft: 1px;\n\tright: auto;\n}\n.ui-datepicker-rtl .ui-datepicker-buttonpane {\n\tclear:right;\n}\n.ui-datepicker-rtl .ui-datepicker-buttonpane button {\n\tfloat: left;\n}\n.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current {\n\tfloat:right;\n}\n.ui-datepicker-rtl .ui-datepicker-group {\n\tfloat:right;\n}\n.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header {\n\tborder-right-width:0;\n\tborder-left-width:1px;\n}\n.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {\n\tborder-right-width:0;\n\tborder-left-width:1px;\n}\n/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */\n.ui-datepicker-cover {\n\tdisplay: none; /*sorry for IE5*/\n\tdisplay/**/: block; /*sorry for IE5*/\n\tposition: absolute; /*must have*/\n\tz-index: -1; /*must have*/\n\tfilter: mask(); /*must have*/\n\ttop: -4px; /*must have*/\n\tleft: -4px; /*must have*/\n\twidth: 200px; /*must have*/\n\theight: 200px; /*must have*/\n}/*\n * jQuery UI Progressbar 1.8.6\n *\n * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)\n * Dual licensed under the MIT or GPL Version 2 licenses.\n * http://jquery.org/license\n *\n * http://docs.jquery.com/UI/Progressbar#theming\n */\n.ui-progressbar {\n\theight:2em;\n\ttext-align: left;\n}\n.ui-progressbar .ui-progressbar-value {\n\tmargin: -1px;\n\theight:100%;\n}\n"
  },
  {
    "path": "newscoop/admin-style/jquery-ui-1.8.6.datepicker.css",
    "content": "/*\n * jQuery UI CSS Framework 1.8.6\n *\n * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)\n * Dual licensed under the MIT or GPL Version 2 licenses.\n * http://jquery.org/license\n *\n * http://docs.jquery.com/UI/Theming/API\n */\n\n/* Layout helpers\n----------------------------------*/\n.ui-helper-hidden { display: none; }\n.ui-helper-hidden-accessible { position: absolute; left: -99999999px; }\n.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }\n.ui-helper-clearfix:after { content: \".\"; display: block; height: 0; clear: both; visibility: hidden; }\n.ui-helper-clearfix { display: inline-block; }\n/* required comment for clearfix to work in Opera \\*/\n* html .ui-helper-clearfix { height:1%; }\n.ui-helper-clearfix { display:block; }\n/* end clearfix */\n.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }\n\n\n/* Interaction Cues\n----------------------------------*/\n.ui-state-disabled { cursor: default !important; }\n\n\n/* Icons\n----------------------------------*/\n\n/* states and images */\n.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; }\n\n\n/* Misc visuals\n----------------------------------*/\n\n/* Overlays */\n.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }\n\n\n/*\n * jQuery UI CSS Framework 1.8.6\n *\n * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)\n * Dual licensed under the MIT or GPL Version 2 licenses.\n * http://jquery.org/license\n *\n * http://docs.jquery.com/UI/Theming/API\n *\n * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Lucida%20Grande,%20Lucida%20Sans,%20Arial,%20sans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=5px&bgColorHeader=5c9ccc&bgTextureHeader=12_gloss_wave.png&bgImgOpacityHeader=55&borderColorHeader=4297d7&fcHeader=ffffff&iconColorHeader=d8e7f3&bgColorContent=fcfdfd&bgTextureContent=06_inset_hard.png&bgImgOpacityContent=100&borderColorContent=a6c9e2&fcContent=222222&iconColorContent=469bdd&bgColorDefault=dfeffc&bgTextureDefault=02_glass.png&bgImgOpacityDefault=85&borderColorDefault=c5dbec&fcDefault=2e6e9e&iconColorDefault=6da8d5&bgColorHover=d0e5f5&bgTextureHover=02_glass.png&bgImgOpacityHover=75&borderColorHover=79b7e7&fcHover=1d5987&iconColorHover=217bc0&bgColorActive=f5f8f9&bgTextureActive=06_inset_hard.png&bgImgOpacityActive=100&borderColorActive=79b7e7&fcActive=e17009&iconColorActive=f9bd01&bgColorHighlight=fbec88&bgTextureHighlight=01_flat.png&bgImgOpacityHighlight=55&borderColorHighlight=fad42e&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=02_glass.png&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=01_flat.png&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=01_flat.png&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px\n */\n\n\n/* Component containers\n----------------------------------*/\n.ui-widget { font-family: Lucida Grande, Lucida Sans, Arial, sans-serif; font-size: 1.1em; }\n.ui-widget .ui-widget { font-size: 1em; }\n.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Lucida Grande, Lucida Sans, Arial, sans-serif; font-size: 1em; }\n.ui-widget-content { border: 1px solid #a6c9e2; background: #fcfdfd url(images/ui-bg_inset-hard_100_fcfdfd_1x100.png) 50% bottom repeat-x; color: #222222; }\n.ui-widget-content a { color: #222222; }\n.ui-widget-header { border: 1px solid #4297d7; background: #5c9ccc url(images/ui-bg_gloss-wave_55_5c9ccc_500x100.png) 50% 50% repeat-x; color: #ffffff; font-weight: bold; }\n.ui-widget-header a { color: #ffffff; }\n\n/* Interaction states\n----------------------------------*/\n.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #c5dbec; background: #dfeffc url(images/ui-bg_glass_85_dfeffc_1x400.png) 50% 50% repeat-x; font-weight: bold; color: #2e6e9e; }\n.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #2e6e9e; text-decoration: none; }\n.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #79b7e7; background: #d0e5f5 url(images/ui-bg_glass_75_d0e5f5_1x400.png) 50% 50% repeat-x; font-weight: bold; color: #1d5987; }\n.ui-state-hover a, .ui-state-hover a:hover { color: #1d5987; text-decoration: none; }\n.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #79b7e7; background: #f5f8f9 url(images/ui-bg_inset-hard_100_f5f8f9_1x100.png) 50% 50% repeat-x; font-weight: bold; color: #e17009; }\n.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #e17009; text-decoration: none; }\n.ui-widget :active { outline: none; }\n\n/* Interaction Cues\n----------------------------------*/\n.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight  {border: 1px solid #fad42e; background: #fbec88 url(images/ui-bg_flat_55_fbec88_40x100.png) 50% 50% repeat-x; color: #363636; }\n.ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #363636; }\n.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #cd0a0a; background: #fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x; color: #cd0a0a; }\n.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #cd0a0a; }\n.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #cd0a0a; }\n.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; }\n.ui-priority-secondary, .ui-widget-content .ui-priority-secondary,  .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; }\n.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; }\n\n/* Icons\n----------------------------------*/\n\n/* states and images */\n.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_469bdd_256x240.png); }\n.ui-widget-content .ui-icon {background-image: url(images/ui-icons_469bdd_256x240.png); }\n.ui-widget-header .ui-icon {background-image: url(images/ui-icons_d8e7f3_256x240.png); }\n.ui-state-default .ui-icon { background-image: url(images/ui-icons_6da8d5_256x240.png); }\n.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_217bc0_256x240.png); }\n.ui-state-active .ui-icon {background-image: url(images/ui-icons_f9bd01_256x240.png); }\n.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83ff_256x240.png); }\n.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_cd0a0a_256x240.png); }\n\n/* positioning */\n.ui-icon-carat-1-n { background-position: 0 0; }\n.ui-icon-carat-1-ne { background-position: -16px 0; }\n.ui-icon-carat-1-e { background-position: -32px 0; }\n.ui-icon-carat-1-se { background-position: -48px 0; }\n.ui-icon-carat-1-s { background-position: -64px 0; }\n.ui-icon-carat-1-sw { background-position: -80px 0; }\n.ui-icon-carat-1-w { background-position: -96px 0; }\n.ui-icon-carat-1-nw { background-position: -112px 0; }\n.ui-icon-carat-2-n-s { background-position: -128px 0; }\n.ui-icon-carat-2-e-w { background-position: -144px 0; }\n.ui-icon-triangle-1-n { background-position: 0 -16px; }\n.ui-icon-triangle-1-ne { background-position: -16px -16px; }\n.ui-icon-triangle-1-e { background-position: -32px -16px; }\n.ui-icon-triangle-1-se { background-position: -48px -16px; }\n.ui-icon-triangle-1-s { background-position: -64px -16px; }\n.ui-icon-triangle-1-sw { background-position: -80px -16px; }\n.ui-icon-triangle-1-w { background-position: -96px -16px; }\n.ui-icon-triangle-1-nw { background-position: -112px -16px; }\n.ui-icon-triangle-2-n-s { background-position: -128px -16px; }\n.ui-icon-triangle-2-e-w { background-position: -144px -16px; }\n.ui-icon-arrow-1-n { background-position: 0 -32px; }\n.ui-icon-arrow-1-ne { background-position: -16px -32px; }\n.ui-icon-arrow-1-e { background-position: -32px -32px; }\n.ui-icon-arrow-1-se { background-position: -48px -32px; }\n.ui-icon-arrow-1-s { background-position: -64px -32px; }\n.ui-icon-arrow-1-sw { background-position: -80px -32px; }\n.ui-icon-arrow-1-w { background-position: -96px -32px; }\n.ui-icon-arrow-1-nw { background-position: -112px -32px; }\n.ui-icon-arrow-2-n-s { background-position: -128px -32px; }\n.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }\n.ui-icon-arrow-2-e-w { background-position: -160px -32px; }\n.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }\n.ui-icon-arrowstop-1-n { background-position: -192px -32px; }\n.ui-icon-arrowstop-1-e { background-position: -208px -32px; }\n.ui-icon-arrowstop-1-s { background-position: -224px -32px; }\n.ui-icon-arrowstop-1-w { background-position: -240px -32px; }\n.ui-icon-arrowthick-1-n { background-position: 0 -48px; }\n.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }\n.ui-icon-arrowthick-1-e { background-position: -32px -48px; }\n.ui-icon-arrowthick-1-se { background-position: -48px -48px; }\n.ui-icon-arrowthick-1-s { background-position: -64px -48px; }\n.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }\n.ui-icon-arrowthick-1-w { background-position: -96px -48px; }\n.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }\n.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }\n.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }\n.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }\n.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }\n.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }\n.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }\n.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }\n.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }\n.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }\n.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }\n.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }\n.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }\n.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }\n.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }\n.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }\n.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }\n.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }\n.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }\n.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }\n.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }\n.ui-icon-arrow-4 { background-position: 0 -80px; }\n.ui-icon-arrow-4-diag { background-position: -16px -80px; }\n.ui-icon-extlink { background-position: -32px -80px; }\n.ui-icon-newwin { background-position: -48px -80px; }\n.ui-icon-refresh { background-position: -64px -80px; }\n.ui-icon-shuffle { background-position: -80px -80px; }\n.ui-icon-transfer-e-w { background-position: -96px -80px; }\n.ui-icon-transferthick-e-w { background-position: -112px -80px; }\n.ui-icon-folder-collapsed { background-position: 0 -96px; }\n.ui-icon-folder-open { background-position: -16px -96px; }\n.ui-icon-document { background-position: -32px -96px; }\n.ui-icon-document-b { background-position: -48px -96px; }\n.ui-icon-note { background-position: -64px -96px; }\n.ui-icon-mail-closed { background-position: -80px -96px; }\n.ui-icon-mail-open { background-position: -96px -96px; }\n.ui-icon-suitcase { background-position: -112px -96px; }\n.ui-icon-comment { background-position: -128px -96px; }\n.ui-icon-person { background-position: -144px -96px; }\n.ui-icon-print { background-position: -160px -96px; }\n.ui-icon-trash { background-position: -176px -96px; }\n.ui-icon-locked { background-position: -192px -96px; }\n.ui-icon-unlocked { background-position: -208px -96px; }\n.ui-icon-bookmark { background-position: -224px -96px; }\n.ui-icon-tag { background-position: -240px -96px; }\n.ui-icon-home { background-position: 0 -112px; }\n.ui-icon-flag { background-position: -16px -112px; }\n.ui-icon-calendar { background-position: -32px -112px; }\n.ui-icon-cart { background-position: -48px -112px; }\n.ui-icon-pencil { background-position: -64px -112px; }\n.ui-icon-clock { background-position: -80px -112px; }\n.ui-icon-disk { background-position: -96px -112px; }\n.ui-icon-calculator { background-position: -112px -112px; }\n.ui-icon-zoomin { background-position: -128px -112px; }\n.ui-icon-zoomout { background-position: -144px -112px; }\n.ui-icon-search { background-position: -160px -112px; }\n.ui-icon-wrench { background-position: -176px -112px; }\n.ui-icon-gear { background-position: -192px -112px; }\n.ui-icon-heart { background-position: -208px -112px; }\n.ui-icon-star { background-position: -224px -112px; }\n.ui-icon-link { background-position: -240px -112px; }\n.ui-icon-cancel { background-position: 0 -128px; }\n.ui-icon-plus { background-position: -16px -128px; }\n.ui-icon-plusthick { background-position: -32px -128px; }\n.ui-icon-minus { background-position: -48px -128px; }\n.ui-icon-minusthick { background-position: -64px -128px; }\n.ui-icon-close { background-position: -80px -128px; }\n.ui-icon-closethick { background-position: -96px -128px; }\n.ui-icon-key { background-position: -112px -128px; }\n.ui-icon-lightbulb { background-position: -128px -128px; }\n.ui-icon-scissors { background-position: -144px -128px; }\n.ui-icon-clipboard { background-position: -160px -128px; }\n.ui-icon-copy { background-position: -176px -128px; }\n.ui-icon-contact { background-position: -192px -128px; }\n.ui-icon-image { background-position: -208px -128px; }\n.ui-icon-video { background-position: -224px -128px; }\n.ui-icon-script { background-position: -240px -128px; }\n.ui-icon-alert { background-position: 0 -144px; }\n.ui-icon-info { background-position: -16px -144px; }\n.ui-icon-notice { background-position: -32px -144px; }\n.ui-icon-help { background-position: -48px -144px; }\n.ui-icon-check { background-position: -64px -144px; }\n.ui-icon-bullet { background-position: -80px -144px; }\n.ui-icon-radio-off { background-position: -96px -144px; }\n.ui-icon-radio-on { background-position: -112px -144px; }\n.ui-icon-pin-w { background-position: -128px -144px; }\n.ui-icon-pin-s { background-position: -144px -144px; }\n.ui-icon-play { background-position: 0 -160px; }\n.ui-icon-pause { background-position: -16px -160px; }\n.ui-icon-seek-next { background-position: -32px -160px; }\n.ui-icon-seek-prev { background-position: -48px -160px; }\n.ui-icon-seek-end { background-position: -64px -160px; }\n.ui-icon-seek-start { background-position: -80px -160px; }\n/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */\n.ui-icon-seek-first { background-position: -80px -160px; }\n.ui-icon-stop { background-position: -96px -160px; }\n.ui-icon-eject { background-position: -112px -160px; }\n.ui-icon-volume-off { background-position: -128px -160px; }\n.ui-icon-volume-on { background-position: -144px -160px; }\n.ui-icon-power { background-position: 0 -176px; }\n.ui-icon-signal-diag { background-position: -16px -176px; }\n.ui-icon-signal { background-position: -32px -176px; }\n.ui-icon-battery-0 { background-position: -48px -176px; }\n.ui-icon-battery-1 { background-position: -64px -176px; }\n.ui-icon-battery-2 { background-position: -80px -176px; }\n.ui-icon-battery-3 { background-position: -96px -176px; }\n.ui-icon-circle-plus { background-position: 0 -192px; }\n.ui-icon-circle-minus { background-position: -16px -192px; }\n.ui-icon-circle-close { background-position: -32px -192px; }\n.ui-icon-circle-triangle-e { background-position: -48px -192px; }\n.ui-icon-circle-triangle-s { background-position: -64px -192px; }\n.ui-icon-circle-triangle-w { background-position: -80px -192px; }\n.ui-icon-circle-triangle-n { background-position: -96px -192px; }\n.ui-icon-circle-arrow-e { background-position: -112px -192px; }\n.ui-icon-circle-arrow-s { background-position: -128px -192px; }\n.ui-icon-circle-arrow-w { background-position: -144px -192px; }\n.ui-icon-circle-arrow-n { background-position: -160px -192px; }\n.ui-icon-circle-zoomin { background-position: -176px -192px; }\n.ui-icon-circle-zoomout { background-position: -192px -192px; }\n.ui-icon-circle-check { background-position: -208px -192px; }\n.ui-icon-circlesmall-plus { background-position: 0 -208px; }\n.ui-icon-circlesmall-minus { background-position: -16px -208px; }\n.ui-icon-circlesmall-close { background-position: -32px -208px; }\n.ui-icon-squaresmall-plus { background-position: -48px -208px; }\n.ui-icon-squaresmall-minus { background-position: -64px -208px; }\n.ui-icon-squaresmall-close { background-position: -80px -208px; }\n.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }\n.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }\n.ui-icon-grip-solid-vertical { background-position: -32px -224px; }\n.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }\n.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }\n.ui-icon-grip-diagonal-se { background-position: -80px -224px; }\n\n\n/* Misc visuals\n----------------------------------*/\n\n/* Corner radius */\n.ui-corner-tl { -moz-border-radius-topleft: 5px; -webkit-border-top-left-radius: 5px; border-top-left-radius: 5px; }\n.ui-corner-tr { -moz-border-radius-topright: 5px; -webkit-border-top-right-radius: 5px; border-top-right-radius: 5px; }\n.ui-corner-bl { -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; border-bottom-left-radius: 5px; }\n.ui-corner-br { -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; border-bottom-right-radius: 5px; }\n.ui-corner-top { -moz-border-radius-topleft: 5px; -webkit-border-top-left-radius: 5px; border-top-left-radius: 5px; -moz-border-radius-topright: 5px; -webkit-border-top-right-radius: 5px; border-top-right-radius: 5px; }\n.ui-corner-bottom { -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; border-bottom-left-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; border-bottom-right-radius: 5px; }\n.ui-corner-right {  -moz-border-radius-topright: 5px; -webkit-border-top-right-radius: 5px; border-top-right-radius: 5px; -moz-border-radius-bottomright: 5px; -webkit-border-bottom-right-radius: 5px; border-bottom-right-radius: 5px; }\n.ui-corner-left { -moz-border-radius-topleft: 5px; -webkit-border-top-left-radius: 5px; border-top-left-radius: 5px; -moz-border-radius-bottomleft: 5px; -webkit-border-bottom-left-radius: 5px; border-bottom-left-radius: 5px; }\n.ui-corner-all { -moz-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; }\n\n/* Overlays */\n.ui-widget-overlay { background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); }\n.ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); -moz-border-radius: 8px; -webkit-border-radius: 8px; border-radius: 8px; }/*\n * jQuery UI Datepicker 1.8.6\n *\n * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)\n * Dual licensed under the MIT or GPL Version 2 licenses.\n * http://jquery.org/license\n *\n * http://docs.jquery.com/UI/Datepicker#theming\n */\n.ui-datepicker { width: 17em; padding: .2em .2em 0; }\n.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }\n.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; }\n.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }\n.ui-datepicker .ui-datepicker-prev { left:2px; }\n.ui-datepicker .ui-datepicker-next { right:2px; }\n.ui-datepicker .ui-datepicker-prev-hover { left:1px; }\n.ui-datepicker .ui-datepicker-next-hover { right:1px; }\n.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px;  }\n.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }\n.ui-datepicker .ui-datepicker-title select { font-size:1em; margin:1px 0; }\n.ui-datepicker select.ui-datepicker-month-year {width: 100%;}\n.ui-datepicker select.ui-datepicker-month, \n.ui-datepicker select.ui-datepicker-year { width: 49%;}\n.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }\n.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0;  }\n.ui-datepicker td { border: 0; padding: 1px; }\n.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; }\n.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; }\n.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; }\n.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; }\n\n/* with multiple calendars */\n.ui-datepicker.ui-datepicker-multi { width:auto; }\n.ui-datepicker-multi .ui-datepicker-group { float:left; }\n.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; }\n.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; }\n.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; }\n.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; }\n.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; }\n.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; }\n.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; }\n.ui-datepicker-row-break { clear:both; width:100%; }\n\n/* RTL support */\n.ui-datepicker-rtl { direction: rtl; }\n.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; }\n.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; }\n.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; }\n.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; }\n.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; }\n.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; }\n.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; }\n.ui-datepicker-rtl .ui-datepicker-group { float:right; }\n.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; }\n.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; }\n\n/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */\n.ui-datepicker-cover {\n    display: none; /*sorry for IE5*/\n    display/**/: block; /*sorry for IE5*/\n    position: absolute; /*must have*/\n    z-index: -1; /*must have*/\n    filter: mask(); /*must have*/\n    top: -4px; /*must have*/\n    left: -4px; /*must have*/\n    width: 200px; /*must have*/\n    height: 200px; /*must have*/\n}"
  },
  {
    "path": "newscoop/admin-style/layout.css",
    "content": "body {\n    margin: 0;\n    padding: 0;\n}\n\nbody > .content {\n    margin: 22px 30px;\n}\n\n.content-sidebar {\n    width: 800px;\n    height: 1%;\n    overflow: hidden;\n    margin: 22px 30px;\n    padding: 0 0 2px;\n    background: transparent url('images/content-sidebar-bg.png') repeat-y 441px 0;\n}\n\n.content-sidebar .content {\n    float: left;\n    width: 420px;\n    min-height: 1em;\n    margin: 0;\n}\n\n.content-sidebar .sidebar {\n    float: right;\n    clear: right;\n    width: 320px;\n    margin: 22px 15px 0 0;\n    background-color: #fff;\n    border: 1px solid #a9a9a9;\n    -mozilla-box-shadow: 1px 1px 1px #ccc;\n    -webkit-box-shadow: 2px 2px 3px #d4d4d4;\n    box-shadow: 1px 1px 1px #e5e5e5;\n}\n\n.content-sidebar .sidebar.first {\n    margin-top: 0;\n}\n"
  },
  {
    "path": "newscoop/admin-style/lists.css",
    "content": "@charset \"utf-8\";\n/* CSS Document */\n\n\n/* List View ////////////////////////////////////////////////////////////////////\n\nBasic list for switching between list view and grid view. \n\n////////////////////////////////////////////////////////////////////////////////*/\n\n.list-view {\n\tlist-style-type:none;\n\tmargin:0;\n\tpadding:0;\n}\n.list-view.list > li {\n\tmargin:0;\n\tpadding:8px 10px;\n\tborder-bottom:1px solid #ccc;\n\t}\n\t.list-view.list > li:hover  {\n\t\tbackground:#fff;\n\t\t}\n\t.list-view.list > li.selected, .list-view.list > li.active,\n\t.list-view.list > li.selected:hover, .list-view.list > li.activeHover  {\n\t\tbackground:#d9eaf9;\n\t\t}\n\n/*.rounded li { border-radius:3px; -moz-border-radius:3px; -webkit-border-radius:3px;}*/\n\n.list-view.grid {\n    padding: 6px 8px 0 8px;\n\t}\n\t.list-view.grid > li {\n\t\tbackground:#fff;\n\t\tborder: 1px solid #b0b0b0;\n\t\tdisplay: inline-block;\n\t\tmargin: 7px 5px;\n\t\tpadding: 4px 4px 12px 4px;\n\t\twidth: 152px;\n\t\tmin-height:164px;\n\t\tborder-radius:3px; -moz-border-radius:3px; -webkit-border-radius:3px;\n\t\t}\n\t\t.list-view.grid > li:hover {\n\t\t\tborder:#808080 solid 1px;\n\t\t\tbox-shadow:0 1px 3px rgba(0,0,0,0.15);\n\t\t\t}\n\t\t.list-view.grid > li.selected, .list-view.grid > li.active,\n\t\t.list-view.grid > li.selected:hover, .list-view.grid > li.activeHover  {\n\t\t\tbackground:#d9eaf9;\n\t\t\tborder:#007fb3 solid 1px !important;\n\t\t\tbox-shadow:0 1px 5px rgba(0,0,0,0.25);\n\t\t\t}\n"
  },
  {
    "path": "newscoop/admin-style/map-filter.css",
    "content": ".map_filter_toolbar {\n    background: #ffffff;\n    width: 1020px;\n    margin: 0px auto;\n    height: 0px;\n    padding: 9px 8px 0px 14px;\n}\n\n.map_filter_info {\n    margin-left: 2px;\n    margin-top: 2px;\n    margin-bottom: 4px;\n    height: 24px;\n    font-size: 18px;\n}\n\n.map_show_filter {\n    margin-left: auto;\n    margin-right: auto;\n    margin-top: 10px;\n    width: 800px;\n}\n\n.geo_filter_map_actions {\n    float: right;\n}\n\n.map_hidden {\n    display: none;\n}\n\n.geo_map_show_initial {\n    font-size: 12px;\n}\n.geo_filter_polygon_actions {\n    font-size: 14px;\n    color: #000000;\n}\n.geo_filter_unselected {\n    /*color: #666666;*/\n    /*background: #666666;*/\n}\n.geo_filter_selected {\n    /*color: #666666;*/\n    /*background: #d0d0ff;*/\n    /*color: #000088;*/\n    color: #663300;\n}\n.polygon_info {\n    margin-top: 5px;\n    font-size: 12px;\n}\n.polygon_info_label {\n    font-size: 14px;\n    margin-top: 10px;\n    margin-bottom: 10px;\n}\n\n.geo_polygon_labels {\n    height: 18px;\n}\n\n.geo_polygon_type_info {\n    float: left;\n    margin-left: 10px;\n}\n.geo_polygon_remove {\n    float:left;\n}\n\n.geo_polkygon_info {\n    width: 800px;\n    height: 100%;\n}\n\n.geo_polygon_info_std {\n    float:left;\n    color: #000000;\n    width: 800px;\n}\n.geo_polygon_info_edited {\n    float:left;\n    color: #663300;\n    width: 800px;\n}\n\n.geo_polygon_type_convex {\n    color: #000000;\n}\n\n.geo_polygon_type_concave {\n    color: #ff0000;\n}\n\n.geo_polygon_type_within_dl {\n    color: #000000;\n}\n\n.geo_polygon_type_over_dl {\n    color: #ff0000;\n}\n\n.geo_add_polygon {\n    float: left;\n}\n\n.geo_polygon_new {\n    border: 2px solid #fffff0;\n\tbackground: #ebebff;\n}\n\n.polygon_append {\n    width: 800px;\n    margin-bottom: 10px;\n}\n.geo_filter_polygon_spacer {\n    width: 800px;\n}\n\n"
  },
  {
    "path": "newscoop/admin-style/map-picking.css",
    "content": ".map_editor {\n    margin: 0 auto ;\n    width: 1050px;\n}\na.map_name_display:link {\n    text-decoration: none;\n\tcolor:#007fb3;\n}\na.map_name_display:visited {\n    text-decoration: none;\n\tcolor:#007fb3;\n}\na.map_name_display:hover {\n    text-decoration: none;\n\tbackground-color:#edf6f9;\n\tcolor:#007fb3;\n}\n.map_name_input {\n    font-size: 14px;\n    width: 300px;\n\tfont-family:Arial, Helvetica, sans-serif;\n\tmargin:0;\n}\n.map_menubar {\n    font-size: 90%;\n    display: inline;\n    width: 200px;\n}\n.map_mapmenu {\n    height: 33px;\n    font-size: 90%;\n    z-index: 5000;\n}\n.map_savemapinit {\n    float: left;\n}\n.map_gotocenter {\n    float: left;\n}\n.map_mapinitview {\n    float: left;\n}\n.map_resizing {\n    float: right;\n\tcolor:#727272;\n\tfont-size:12px;\n}\n\n.map_resizing_label {\n    float: right;\n\tcolor:#727272;\n\tfont-size:15px;\n}\n\n.geo_resize_hor {\n    float: left;\n    margin-left: 4px;\n}\n.geo_resize_ver {\n    float: left;\n    margin-left: 4px;\n}\n\n.map_sidepan {\n    float: left;\n    width: 200px;\n\tmargin-left:15px;\n}\n\n.side_info {\n\n}\n\n.map_sidedescs {\n    width: 200px;\n    margin-top: -1px;\n    overflow: auto;\n    overflow-y: auto;\n    overflow-x: hidden;\n}\n.map_mappart {\n    margin-top: 0px;\n    float: right;\n    width: 802px;\n    height: 535px;\n\tposition:relative;\n\tmargin-right:15px;\n}\n.map_mapcanvas {\n    width: 100%;\n    height: 500px;\n\tborder: 1px solid #4f5253;\t\n\toverflow:hidden;\n}\n.search_results {\n    overflow: false;\n/*\n    width: 200px;\n*/\n}\n.search_results_limit {\n    overflow: false;\n    width: 200;\n    height: 200;\n}\n.search_res_cc_header {\n    width: 25px;\n}\n.search_res_cc_header_inner {\n    float: left;\n    margin-left: 10px;\n}\n.search_res_city_header {\n    width: 95px;\n}\n.search_res_city_column {\n    word-wrap: break-word;\n    width: 95px;\n}\n.geores_cc_icon {\n    float: left;\n}\n.geores_cc_text {\n    margin-top: 1px;\n    font-weight: bold;\n    font-size: 13px;\n    color:#007fb3;\n}\n.geores_city_text {\n\n    margin-left: 6px;\n    margin-top: 2px;\n    font-weight: bold;\n    font-size: 12px;\n    color:#007fb3;\n}\n.geores_city_text:hover {\n\ttext-decoration:underline;\n}\n\n\n/*\n.hidden {\n    display: none;\n}\n*/\n.map_geo_search {\n    margin-left: 2px;\n}\n.map_geo_ccselect {\n}\n.map_geo_cityname {\n    width: 200;\n    border: 1px solid #e0e0d0;\n}\na.map-no-link {\n    cursor: pointer;\n    text-decoration: none;\n    color: #000000;\n}\n.map_poi_side_list {\n}\n.poi_std {\n}\n.map_poi_side_one {\n}\n.map_mapedit {\n    width: 615px;\n    height: 405px;\n    position: absolute;\n    top: 93px;\n    right: 90px;\n    color: #804000;\n    font-size: 11px;\n    z-index: 10000;\n    vertical-align: middle;\n    text-align: center;\n}\n.map_editinner {\n    background-color: #9d9d9d;\n    width: 610px;\n\n    position: relative;\n    top: 10;\n    left: 10;\n}\n.map_editpart1 {\n    text-align: left;\n}\n.map_editactions {\n    text-align: right;\n    position: relative;\n    top: 13;\n    right: 10;\n    font-size: 12px;\n    font-weight: bold;\n}\n.popup_preview {\n    width: 500px;\n    height: 160px;\n    overflow: auto;\n}\n.edit_popup_preview {\n    background: #ffffff;\n}\n.poi_video_type_selection {\n    margin: 0px;\n}\n.poi_image_type_placehold {\n    margin-top: 4px;\n    margin-bottom: 4px;\n}\n.geonames_result_table {\n}\n\n/* point edit forms */\n\n\n.edit_tabs {\n\tpadding:25px 10px 10px 10px;\n\theight:290px;\n}\n.edit_tabs ol {\n    padding:0;\n\tmargin:0;\n    list-style: none;\n}\n\n.edit_tabs li {\n    float: left;\n    clear: left;\n    width: 500px;\n\tfont-size:12px;\n    padding-bottom: 1em;\n\t\n    font-size: 1em;\n    line-height: 140%;\n\tposition: relative;\n\twidth:99%;\n\tmargin:0;\n}\n.edit_marker_selected {\n    padding: 2px 10px 5px 0;\n\tcolor: #696969;\n\tdisplay: block;\n\tfont-size: 12px;\n\tfont-weight: bold;\n\tline-height: 20px;\n    float: left;\n}\n\nlabel.block-label {\n    clear: left;\n    color: #696969;\n    display: block;\n    float: none;\n    font-size: 12px;\n    font-weight: bold;\n    line-height: 20px;\n    margin: 0;\n    padding: 0 0 2px;\n    text-indent: 1px;\n}\n.edit_tabs.submit {\n    float: none;\n    width: auto;\n    border: 0 none #FFF;\n    padding-left: 20px;\n    border-style: none;\n    background-color: transparent;\n    background-image: none;\n}\n\n.edit_label {\n    float: left;\n    width: 10em;\n    margin-right: 1em;\n    color: #666666;\n    float: left;\n    font-size: 12px;\n    font-weight: bold;\n    padding: 2px 0 0;\n}\n\na.edit_label_link {\n    color: #666666;\n}\n\n.edit_label_long {\n    float: left;\n    width: 85%;\n    margin-right: 1em;\n    color: #999999;\n    float: left;\n    font-size: 12px;\n    font-weight: bold;\n    padding: 2px 0 0;\n}\n\n/*\nie fixes, include as:\n<!--[if lte IE 7]>    \n<style type=\"text/css\" media=\"all\">    \n@import \"css/fieldset-styling-ie.css\";    \n</style>    \n<![endif]-->\n\nlegend {\nposition: relative;\nleft: -7px;\ntop: -0.75em;\n}\nfieldset ol {\npadding-top: 0.25em;\n}\n\nfieldset {\nposition: relative;\n}\n\n*/\n\n.map_realsize {\n    background-color: transparent;\n    background-color: #8080ff;\n    border: 1px solid #8080ff;\n\n    position: absolute;\n    z-index: 1000;\n}\n\n.part_top {\n    height: 0;\n    width: 600;\n\n\n    top: 70px;\n    right: 105px;\n}\n.part_bottom {\n    height: 0;\n    width: 600;\n\n    top: 470px;\n    right: 105px;\n}\n.part_right {\n    height: 400;\n    width: 0;\n\n    top: 70px;\n    right: 105px;\n}\n.part_left {\n    height: 400;\n    width: 0;\n\n    top: 70px;\n    right: 705px;\n}\n\n.poi_actions_all {\n}\n.poi_actions {\n    margin: 0 0 2px 0;\n}\n.poi_removal {\n    margin-left: 0px;\n}\n.list_change_poi_void {\n\n}\n.action_disabled {\n    color: #808080;\n    font-style: italic;\n}\n.poi_coors_all {\n\tborder:1px solid #ccc;\n\tpadding:7px 10px 5px 10px;\n\tmargin-bottom:8px; \n}\n.poi_coors {\n\tpadding:4px 0 5px;\n\tcolor:#666666;\n\tfont-size:12px;\n\tfont-weight:bold;\n}\n.poi_coors label{\n\tpadding:2px 0 0px;\n\tfloat:left;\n\twidth:44%;\n\tcolor:#666666;\n\tfont-size:12px;\n\tfont-weight:bold;\n}\n.poi_coors_input {\n    border: 1px solid #9d9d9d;\n    background: url(images/input_bg.png) repeat-x scroll 0 0 #FFFFFF;\n    margin: 0 0 0 0;\n\tfont-size:12px;\n\tpadding:2px 0 2px 2px;\n\tfloat:left;\n\twidth:52%;\n}\n.map_save_part {\n    margin-left: 2px;\n    margin-top: 2px;\n    margin-bottom: 4px;\n    height: 24px;\n    font-size: 18px;\n}\n.map_save_off {\n    background-color: #a0a0a0;\n}\na.map_save_off {\n    float: left;\n    color: #a0a0a0;\n}\n.map_save_on {\n    background-color: #fffff8;\n}\na.map_save_on {\n    float: left;\n    color: #6000f0;\n}\n.map_save_info {\n    float: left;\n    color: #444;\n    font-size: 16px;\n    margin-top: 2px;\n\n}\n\n.edit_marker_selected_src {\n    float: left;\n}\n\n.edit_marker_icons_all {\n    width: 90%;\n}\n\n.edit_marker_choices {\n    overflow: auto;\n    height:170px;\n    width: 500px;\n    padding:10px;\n    border:1px solid #CCC;\n}\n.edit_marker_one_choice {\n    border: 1px solid #fff;\n    margin: 4px 4px 1px 1px;\n\tpadding:3px;\n}\n.edit_marker_one_choice:hover {\n    border: 1px solid #007FB3;\n}\na.edit_marker_one_choice_link {\n    border-width: 0px;\n}\n\n.no_city_found {\n    text-align: center;\n    font-size: 12px;\n}\n\n.map_hidden {\n  display: none;\n}\n.map_shown {\n  display: default;\n}\n.edit_tabs input.input_text {\n    background: url(images/input_bg.png) repeat-x scroll 0 0 #FFFFFF;\n    border: 1px solid #9D9D9D;\n    float: left;\n    font-family: Arial,Helvetica,sans-serif;\n    font-size: 12px;\n    height: 23px;\n    margin: 0;\n    padding: 0;\n    text-indent: 3px;\n    vertical-align: middle;\n    width: 200px;\n}\n.edit_tabs .input_select {\n    background-color: #FFFFFF;\n    border: 1px solid #9D9D9D;\n    font-family: Arial,Helvetica,sans-serif;\n    font-size: 12px;\n    height: 25px;\n    margin: 0;\n    padding: 2px 2px 2px 0;\n    vertical-align: top;\n}\n.map_mapedit fieldset li {\n    font-size: 1em;\n    line-height: 140%;\n\tposition: relative;\n\tmargin:0;\n}\n\n.map_poi_edit_intro, .map_poi_edit_intro_icon, .map_poi_edit_intro_sub, .map_mapedit fieldset li.map_poi_edit_intro_sub {\n    margin-bottom: 20px;\n\tfont-size:15px;\n\tfont-weight:normal;\n}\n\n.map_poi_edit_intro_popup {\n    margin-left: 30px;\n    margin-bottom: 5px;\n}\n\n.map_poi_edit_intro_sub, .map_mapedit fieldset li.map_poi_edit_intro_sub {\n    margin-top: 0px;\n    margin-bottom: 0;\n}\n\n.map_search_label {\n    font-size: 12px;\n}\n\n.map_button_edit_on_click {\n    color:#666666;\n    margin-right: 20px;\n    font-size: 14px;\n    float: right;\n}\n\n.geo_edit_textarea_text {\n    height: 80px;\n}\n\n.geo_edit_textarea_perex {\n    height: 32px;\n}\n.map_geo_showhide {\n    margin-left: 0px;\n    margin-right: 13px;\n    float: right;\n}\n\n.geo_edit_popup_top {\n    text-align: right;\n    padding: 0 10px 0 0;\n}\n\n.geo_close_edit_window {\n    position:absolute;\n    top:16px;\n    right:16px;\n    z-index:3000;\n}\n.geo_preview_edit_window {\n    position:absolute;\n    top:16px;\n    right:42px;\n    z-index:3000;\"\n}\n\n.save_empty_dialog {\n    z-index:10000;\n}\n\n.map_text_lack {\n    background: #ffebeb;\n/*    width: 90%;*/\n\n}\n\n.dataTables_scrollBody {\n\tborder:none;\n}\n.geonames_result_table {\n\tfont-size:12px;\n\tbackground:#fff;\n}\n.geonames_result_table th, .geonames_result_table td {\n\tpadding:3px 0 3px;\n\n}\n\n\n.geonames_result_table td {\n\tpadding:3px 0 3px;\n\tborder-bottom:1px solid #ebebeb;\n}\n.geonames_result_table tr:last-child td {\n\tborder-bottom:none;\n}\n\n.geonames_result_table th.ui-state-default {\n\tborder-width: 0 0 1px 0;\n}\n.search_res_city_column {\n\t border-left:1px solid #ebebeb;\n}\n.geonames_result_table th.search_res_city_header {\n\t border-left:1px solid #ebebeb;\n}\n.inline_editable {\n\tbackground-image:url(images/icon_edit_l.png);\n\tbackground-repeat:no-repeat;\n\tbackground-position:4px 2px;\n\tpadding:0 4px 0 22px;\n}\n\n.map_save_info input[type=\"text\"] {\n    border: 1px solid #9D9D9D;\n    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1) inset;\n    font-family: Arial,Helvetica,sans-serif;\n    font-size: 16px;\n    height: 23px;\n    margin: -2px 0 0 0;\n    padding: 0;\n    text-indent: 3px;\n}\n.map_save_info input[type=\"text\"]:focus {\n    border: 1px solid #00B5F1;\n}\n\n.toggle_link {\n\tcolor: #696969;\n    font-size: 12px;\n    line-height: 140%;\n\tmargin-bottom:6px;\n}\n.toggle_link:hover {\n\tcolor: #007FB3;\n}\n.toggle_link_block {\n\tdisplay:block;\n}\n\n.toggle_link .ui-icon, legend .ui-icon {\n    float: left;\n}\n.poi_actions_all fieldset {\n\tmargin:0;\n\tpadding:8px;\n}\n.poi_actions_all fieldset.closed {\n\tpadding-left:9px;\n}\nfieldset .poi_coors_all {\n    border: none;\n    margin-bottom: 0;\n    padding: 0;\n}\n.ui-accordion-icons .ui-accordion-header a.corner-button {\n    padding: 4px;\n\tdisplay: block;\n\ttext-decoration: none;\n\ttop: 0;\n}\n.ui-accordion-icons .ui-accordion-header a.corner-button .ui-icon {\n\tleft: 0.4em;\n}\n\n.ui-state-hover .corner-button .ui-icon-closethick {\n    background-image: url(images/ui-icons_ffffff_256x240.png);\n}\n\n.ui-state-hover .corner-button:hover .ui-icon-closethick {\n    background-image: url(images/ui-icons_d00000_256x240.png);\n}\n\n.geo_edit_popup_top .icon-link {\n\tmargin-left:6px;\n}\n.map_editinner input[type=\"text\"] {\n    border: 1px solid #9D9D9D;\n    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1) inset;\n    font-family: Arial,Helvetica,sans-serif;\n    font-size: 12px;\n    height: 23px;\n    margin: 0;\n    padding: 0;\n    text-indent: 3px;\n\tcolor:#444;\n\twidth:180px;\n}\n.map_editinner input[type=\"text\"]:focus {\n    border: 1px solid #00B5F1;\n}\n\n.map_editinner select {\n    background-color: #FFFFFF;\n    border: 1px solid #9D9D9D;\n    font-family: Arial,Helvetica,sans-serif;\n    font-size: 12px;\n    height: 25px;\n    margin: 0;\n    padding: 2px 2px 2px 0;\n    vertical-align: top;\n}\n\n.map_editinner textarea {\n    border: 1px solid #9D9D9D;\n    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1) inset;\n    color: #444444;\n    font-family: Arial,Helvetica,sans-serif;\n    font-size: 14px;\n    margin: 0;\n    padding: 0 0 0 3px;\n}\n\n.map_editinner select#point_predefined {\n\tmargin-bottom:6px;\n}\n\n.geo_video_desc, geo_image_desc { \n\tfont-size:11px;\n\tfont-weight:normal;\n\tfont-style:italic;\n\tpadding: 0 0 0 6px;\n\tcolor:#999999;\n}\n\n.poi_edit_description {\n    color: #999999;\n    float: left;\n    font-size: 11px;\n    font-style: italic;\n    font-weight: normal;\n    left: 325px;\n    line-height: 14px;\n    position: absolute;\n    top: 0;\n    width: 230px;\n}\n\n.ui-state-active .corner-button .ui-icon-closethick {\n    background-image: url(images/ui-icons_808080_256x240.png);\n}\n\n.inline_link_like {\n    cursor: pointer;\n    color: #007FB3;\n}\n\n.poi_image_edit_link_desc {\n    float: left;\n    color: #888888;\n    margin-left: 330px;\n    margin-top: 40px;\n    position: absolute;\n    font-size: 12px;\n    font-weight: normal;\n    font-style: normal;\n    width: 230px;\n}\n\n.poi_video_edit_link_desc {\n    float: left;\n    color: #888888;\n    margin-left: 325px;\n    margin-top: 76px;\n    position: absolute;\n    font-size: 12px;\n    font-weight: normal;\n    font-style: normal;\n    width: 230px;\n}\n\n#geolocation .dataTables_wrapper {\n    margin: 0 0 8px;\n\tborder:1px solid #9D9D9D;\n\tborder-width: 1px;\n}\n\n"
  },
  {
    "path": "newscoop/admin-style/map-preview.css",
    "content": ".map_preview_toolbar {\n    background: #ffffff;\n    /*width: 1020px;*/\n    margin: 0px auto;\n    height: 0px;\n    padding: 9px 8px 0px 14px;\n}\n\n.map_preview_info {\n    margin-left: 2px;\n    margin-top: 2px;\n    margin-bottom: 4px;\n    height: 24px;\n    font-size: 18px;\n}\n.geomap_locations {\n    float: left;\n    width: 230px;\n    /*margin-left: 20px;*/\n    font-size: 12px;\n}\n\n.geomap_mappart {}\n\n.geomap_container {\n    /*width: 850px;*/\n    height: 500px;\n    margin-left: 16px;\n    /*margin-right: auto;*/\n}\n\n.map_hidden {\n    display: none;\n}\n\n.geomap_menu {\n    font-size: 12px;\n    height: 33px;\n    z-index: 5000;\n}\n\n.geomap_map {\n\tfloat:left;\n}\n.geomap_locations dl {\n\tdisplay:block;\n\tmargin:0;\n\tpadding:0;\n\tclear:left;\n\tfont-size:14px;\n\twidth:100%;\n}\n.geomap_locations dt {\n    clear: left;\n    color: #666666;\n    float: left;\n    font-weight: bold;\n    margin: 0;\n    padding: 4px 0;\n    text-align: left;\n}\n.geomap_locations dd {\n    float: left;\n    margin: 0;\n    padding: 4px 0 4px 15px;\n}\n.geomap_poi_icon_link {\n\n}\n.geomap_poi_icon_link img {\n\tfloat:left;\n\tmargin-right:8px;\n}\n\n.geomap_info {\n\tmargin-bottom:20px;\n\tmin-height: 25px;\n}\n.geomap_poi_name {\n\tfont-size:13px;\n\tfont-weight:bold;\n}\n\n.geomap_poi_name:hover, .geomap_poi_center a:hover {\n\ttext-decoration:underline;\n}\n"
  },
  {
    "path": "newscoop/admin-style/misc-pages.css",
    "content": "@charset \"utf-8\";\r\n/* CSS Document */\r\n\r\n.metadata {\r\n\tmargin:26px 0 0 40px;\r\n\tpadding:0;\r\n\tfont-size:1.2em;\r\n\tborder-top:1px dotted #b2b2b2;\r\n\twidth:300px;\r\n\tfloat:left;\r\n\r\n}\r\n\r\n.metadata dt {\r\n\tclear: left;\r\n    color: #666666;\r\n    float: left;\r\n    font-weight: bold;\r\n    margin: 0 5px 0 0;\r\n    min-width: 120px;\r\n    padding: 4px 0 4px 5px;\r\n    text-align: left;\r\n}\r\n.metadata dd {\r\n    margin: 0;\r\n    padding: 4px 0 4px 0;\r\n\tborder-bottom:1px dotted #b2b2b2;\r\n}\r\n\r\n.metadata dt, .metadata dd {\r\n\r\n}\r\n.help {\r\n\twidth:580px;\r\n\tmargin:30px 0 30px 75px;\r\n\tpadding:0 0 0 20px;\r\n\tfont-family:Georgia, \"Times New Roman\", Times, serif;\r\n\tfont-weight:bold;\r\n\tfont-size:16px;\r\n\t\r\n\r\n\r\n}\r\n.help li {\r\n\tdisplay:list-item;\r\n\tmargin-bottom:10px;\r\n\tcolor: #007FB3;\r\n}\r\n\r\n\r\n.help li p {\r\n\tfont-size:13px;\r\n\tcolor:#444;\r\n\tmargin:0;\r\n\tfont-family:Arial, Helvetica, sans-serif;\r\n\tfont-weight:normal;\r\n\tline-height:140%;\r\n}\r\n\r\n.help li h3 {\r\n\tfont-size:14px;\r\n\tfont-weight:bold;\r\n\tcolor:#444;\r\n\tmargin:0;\r\n\tdisplay:inline-block;\r\n\tpadding:0;\r\n\tfont-family:Arial, Helvetica, sans-serif;\r\n}\r\n\r\n.help li a:hover {\r\n\ttext-decoration:underline;\r\n}\r\n\r\n"
  },
  {
    "path": "newscoop/admin-style/modal-custom.css",
    "content": "/* Modal Bootstrap custom classes */\n.modal.renditionsModal {\n    position: fixed;\n    width: auto;\n    height: auto;\n    margin: 0 10px 10px;\n    left: 0!important;\n    top: 0!important;\n    right: 0!important;\n    bottom: 0!important;\n    padding: 0!important;\n    overflow: hidden!important;\n    border-radius: 0 0 6px 6px;\n    }\n    .modal.renditionsModal .modal-dialog {\n        width: auto;\n        height: 100%;\n        margin: 0;\n        padding-top: 10px;\n        }\n        .modal.renditionsModal .modal-dialog .modal-content {\n            height:100%;\n            border: 1px solid #222;\n        }\n        .modal.renditionsModal .modal-dialog .modal-content .modal-body {\n            position: initial;\n            height: 100%;\n        }\n        .modal.renditionsModal .modal-dialog .modal-content .modal-header {\n            min-height: 1px;\n            background: none;\n            padding: 0;\n            border-bottom: none;\n        }\n        .modal.renditionsModal .modal-dialog .close {\n            position: absolute;\n            top: 8px;\n            right: 8px;\n            z-index: 10000;\n            opacity: .4;\n            padding: 5px;\n            width: 30px;\n            height: 30px;\n        }\n.modal.renditionsModal iframe {\n    border: none;\n    position: absolute;\n    top: 0;\n    bottom: 0;\n    left: 0;\n    right: 0;\n    border-radius: 6px;\n}\n\n.modal-backdrop.in { \n    opacity: 0.8;\n}"
  },
  {
    "path": "newscoop/admin-style/modal-window.css",
    "content": "@charset \"utf-8\";\n/* CSS Document */\nhtml {\n\theight:100%;\n}\nbody.modal-window {\n\tbackground:#f5f5f5;\n\tposition:relative;\n\tmargin:0;\n\tpadding: 45px 1px 10px 1px;\n\tbox-shadow:0 0 0 1px #ccc inset;\n\tfont-family:Arial, Helvetica, sans-serif;\n\t}\n\t.modal-window header {\n\t\tposition:fixed;\n\t\ttop:0;\n\t\tleft:0;\n\t\tright:0;\n\t\theight: 35px;\n    \tpadding: 9px 12px 0 12px;\n\t\tbackground:#FFF;\n\t\tz-index:1000;\n\t\tborder-bottom:1px solid #cccccc;\n\t\tbox-shadow:0 1px 3px rgba(0, 0, 0, 0.1);\n\t\t}\n\t\t.modal-window header button, .modal-window header input[type=\"submit\"],.modal-window header .prime {\n\t\t\tfloat:right;\n\t\t\tmargin:0 0 0 6px;\n\t\t\t}\n\t\t.modal-window header h1 {\n\t\t\tfloat:left;\n\t\t\tmargin:0;\n\t\t\tfont-size:20px;\n\t\t\tfont-weight:normal;\n\t\t\tfont-family:Arial, Helvetica, sans-serif;\n\t\t\t}\n\t.modal-window nav {\n\t\tbackground: #efefef;\n\t\tborder-bottom: 1px solid #e5e5e5;\n\t\tbox-shadow:0 1px 0 rgba(255, 255, 255, 1);\n\t\tpadding:6px 10px 0 10px;\n\t\tmin-height:30px;\n\t\t}\n\t\t.modal-window nav.top-fixed {\n\t\t\tposition:fixed;\n\t\t\ttop:45px;\n\t\t\tleft:1px;\n\t\t\tright:1px;\n\t\t\tz-index:999;\n\t\t\t}\t\n\t\t\t.modal-window nav.top-fixed + section {\n\t\t\t\tmargin-top:40px;\n\t\t\t\t}\n\n#app {\n\tpadding: 0;\n}\n\n\t\t\n"
  },
  {
    "path": "newscoop/admin-style/multidate.css",
    "content": "@CHARSET \"UTF-8\";\nbody {\n    font-size: 12px;\n    color: #696969;\t\n}\n#multidate-box {\n    background: none repeat scroll 0 0 #FFFFFF;\n    height: 660px;\n    margin: 0 auto;\n    padding: 10px;\n    width: 952px;\n    font-family: Arial,Helvetica,sans-serif;\n    font-size: 12px;\n    /*\n    color: #444444;\n    */\n}\n#multidate-box .toolbar {\n    background: none repeat scroll 0 0 transparent;\n    border: medium none;\n    box-shadow: none;\n    min-height: 35px;\n    padding: 6px 4px;\n}\n.dates {\n    width: 285px;\n    height: 100%;\n    /*\n    border-right: 1px solid #CCCCCC;\n    */\n    float: left;\t\n}\n#full-calendar {\n    width: 630px;\n    height: 100px;\n    float: left;\n    margin-left:17px;\n    margin-top:17px;\n}\n.multidate-input {\n\t/*\n    border: 1px solid #9D9D9D;\n    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1) inset;\n    */\n    background-color: #FFFFFF;\n    border: 1px solid #9D9D9D;\n    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1) inset;\n    color: #333333;\n    font-family: Arial,Helvetica,sans-serif;\n    font-size: 12px;\n    height: 23px;\n    margin: 0;\n    padding: 0;\n    text-indent: 3px;\n}\n.date-mode-switcher {\n\twidth:260px;\n\tmargin-left:12px; margin-top: 20px;\n\tborder: 1px solid #9D9D9D;\n    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1) inset;\n    height: 23px;\n}\n\n.date-switch {\n\tborder: 1px solid #9D9D9D;\n    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1) inset;\n\twidth: 128px;\n\tmargin-top: 20px;\n\ttext-align:center;\n\tfloat:left;\t\n\theight: 18px;\n\tcursor: pointer;\n\tpadding-top:5px;\n}\n\n.border-left {\t\n\tborder-left: 1px solid #9D9D9D;\n\twidth: 131px!important;\n}\n.radio-specific {\n\twidth:100%;\n}\n\n.multidate-select {\n    margin: 0;\n    padding: 3px 5px;\n    border: 1px solid #9d9d9d;\t\n}\n\n.specific-radio-holder, .repeats-checkbox-holder{\n\tmargin-left:12px;\n\tmargin-top:8px;\n}\n\n.switch-active {\n    color: #FFFFFF;\n    background: none repeat scroll 0 0 #444444;\t\n}\n.form-action-holder {\n\tmargin-left:12px;\n\tmargin-top:8px;\n}\ninput[type=\"text\"].date-input {\n    background-image:url(images/input_with_calendar_bg.png);\n    background-repeat:no-repeat;\n    background-position:right 0;\n}\ninput[type=\"text\"].time-input {\n    background-image:url(images/input_with_time_bg.png);\n    background-repeat:no-repeat;\n    background-position:right 0;\n}\ninput[type=\"text\"].search, input[type=\"text\"].search-input {\n    background-image:url(images/input_with_search_bg.png);\n    background-repeat:no-repeat;\n    background-position:0 0;\n    text-indent:23px;\n}\n\n.multi-box    {\n\t/*\n    background: #f5f5f5;\n    */\n    background:#f5f5f5 url(images/multi-date_bg.png) repeat-y 0 0;\n    border: 1px solid #ccc;\n    overflow:hidden;\n    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1) inset;\n    height:610px;\n}\n.multi-box2 {\n    background:#f5f5f5 url(images/multi-date_bg.png) repeat-y 0 0;\n}\n.remove-link {\n    text-decoration: underline;\n    margin-left:12px;\t\n    margin-top:12px;\n}\n\n\n\n\n\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n\t\n"
  },
  {
    "path": "newscoop/admin-style/pagination.css",
    "content": "@charset \"utf-8\";\n/* CSS Document */\n\ndl.slideshow-preview figure > div > * {\n    border: 1px solid #BABDB6;\n    display: block;\n\t}\n\t\n/* Pagination ////////////////////////////////////////////////////////////////////\n////////////////////////////////////////////////////////////////////////////////*/\n\n.paginationControl {\n\tcolor: rgba(255, 255, 255, 0);\n\tfont-size:1px;\n\t}\n\t.paginationControl span, .paginationControl a {\n\t\tborder: 1px solid #9D9D9D;\n\t\tcolor: #3B3B3B;\n\t\tdisplay: inline-block;\n\t\tfont-size: 12px;\n\t\tpadding: 3px 12px;\n\t\tfont-size:12px;\n\t\tline-height: 17px;\n\t\t}\n\t\t.paginationControl a {\n\t\t\tbackground: -moz-linear-gradient(center top , #FAFAFA 0%, #F6F6F6 100%);\n\t\t\tbackground: linear-gradient(top, #FAFAFA 0%, #F6F6F6 100%);\n\t\t\tbackground: -webkit-linear-gradient(top, #FAFAFA 0%, #F6F6F6 100%);\n\t\t\ttext-decoration:none;\n\t\t\t}\n\t\t\t.paginationControl a:hover {\n\t\t\t\tbackground: -moz-linear-gradient(center top , #FAFAFA 0%, #eaeaea 100%);\n\t\t\t\tbackground: linear-gradient(top, #FAFAFA 0%, #eaeaea 100%);\n\t\t\t\tbackground: -webkit-linear-gradient(top, #FAFAFA 0%, #eaeaea 100%);\n\t\t\t\tborder: 1px solid #818181;\n\t\t\t\t}\n\t\t.paginationControl span {\n\t\t\tborder: 1px solid #E5E5E5;\n\t\t\tbackground: rgba(255, 255, 255, 0.5);\n\t\t\tcolor: #DBDBDB;\n\t\t\t}\nnav .paginationControl {\n\tfloat:left;\n\t}\n"
  },
  {
    "path": "newscoop/admin-style/renditions.css",
    "content": "#next.iframe {\n    background-color: #f8f8f8;\n    font-family: 'Roboto', Arial, Helvetica, sans-serif;\n}\n#next.iframe h1 {\n    padding: 5px 12px;\n}\n#next.iframe h1 span {\n    margin-top: -3px;\n}\n#modal-top .toolbar {\n    padding: 7px 20px 8px 0px;\n    min-height: initial;\n    background: #fff;\n    z-index: 100000;\n}\n#next.iframe h2 {\n    background: #424242;\n    background-image: -webkit-linear-gradient(top, #1a1a1a 0%, #333333 100%);\n    background-image: -o-linear-gradient(top, #1a1a1a 0%, #333333 100%);\n    background-image: linear-gradient(to bottom, #1a1a1a 0%, #333333 100%);\n    background-repeat: repeat-x;\n    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff1a1a1a', endColorstr='#ff333333', GradientType=0);\n    color: white;\n    font-size: 12px; \n    font-weight: 400;\n    text-transform: uppercase;\n    margin: 0;\n    padding: 11px 16px;\n    border-top: 1px solid #000;\n    border-bottom: 1px solid #3e3e3e;\n    box-shadow: inset 0 6px 20px rgba(0,0,0,.2), inset 0 1px 0 rgba(255,255,255,.4);\n    position: absolute;\n    left: 0;\n    right: 0;\n    bottom: 174px;\n}\n#next.iframe .content {\n}\n#next .inline {    \n    margin: 0 0 0 10px;\n    padding: 0px 26px;\n    position: absolute;\n    top: 8px;\n    left: 140px;\n    border-left: 1px solid #4d4d4d;\n}\n#next .inline button {\n    background-image: -webkit-linear-gradient(top, #f6f5f6 0%, #e8e5e8 100%);\n    background-image: -o-linear-gradient(top, #f6f5f6 0%, #e8e5e8 100%);\n    background-image: linear-gradient(to bottom, #f6f5f6 0%, #e8e5e8 100%);\n    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff6f5f6', endColorstr='#ffe8e5e8', GradientType=0);\n    filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n    background-repeat: repeat-x;\n    border: 1px solid #cecece;\n    text-shadow: 0 1px 0 #fff;\n    -webkit-box-shadow: inset 0 1px 0 #ffffff;\n    -moz-box-shadow: inset 0 1px 0 #ffffff;\n    box-shadow: inset 0 1px 0 #ffffff;\n    -webkit-border-radius: 2px;\n    -moz-border-radius: 2px;\n    border-radius: 2px;\n    font-family: 'Roboto', Arial, Helvetica, sans-serif;\n    font-size: 11px;\n    text-transform: uppercase;\n    padding: 3px 8px;\n    }\n    #next .inline button:hover {\n        background-color: #e8e5e8;\n        background-position: 0 -25px;\n    }\n    #next .inline button:active {\n        background-color: #d9d5d9;\n        border-color: #d4cfd4;\n        background-image: none;\n        box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n    }\n\nul.thumbnails {\n    background: #4d4d4d;\n    padding: 4px 12px 0 12px;\n    margin-bottom: 0;\n    position: absolute;\n    bottom: 0;\n    left: 0;\n    right: 0;\n    height: 170px;\n    overflow-y: auto;\n}\nul.thumbnails li {\n    padding: 10px 8px;\n    border: 1px solid #000;\n    border-radius: 2px;\n    -moz-border-radius: 2px;\n    -webkit-border-radius: 2px;\n    box-shadow: 0 2px 0 rgba(0,0,0,1);\n    width: 122px;\n    }\n    ul.thumbnails li:hover {\n        box-shadow: 0 2px 0 rgba(0,0,0,1), 0 0 16px rgba(0,0,0,1);\n        border: 1px solid #000;\n        background: #fafafa;\n    }\n    ul.thumbnails img {\n        border: none;\n    }\n    ul.thumbnails figure div {\n        min-height: 105px;\n    }\n    ul.thumbnails figure label {\n        font-size: 12px;\n    }\n\nul.renditions {\n    background: #f8f8f8;\n    padding: 5px 12px;\n    box-shadow: none;\n    position: absolute;\n    top: 45px;\n    bottom: 214px;\n    left: 0;\n    right: 0;\n    overflow-y: auto;\n    display: block;\n    box-sizing: border-box;\n    height: auto;\n    border-top: 1px solid #ddd;\n    }\n    ul.renditions li {\n        background: #fff;\n        padding: 0;\n        margin: 7px 6px;\n        border: #d4d4d4 solid 1px;\n        width: 168px;\n        border-radius: 2px;\n        -moz-border-radius: 2px;\n        -webkit-border-radius: 2px;\n        box-shadow: 0 2px 0 rgba(212,212,212,1);\n        }\n        ul.renditions li:hover {\n            border: 1px solid #707070;\n            box-shadow: 0 2px 0 rgba(112,112,112,1);\n        }\n        ul.renditions li dl.rendition .preview, ul.renditions li.state-active dl.rendition .preview {\n            border: none;\n        }\n        ul.renditions li.active {\n            background: #d9eaf9;\n        }\n        ul.renditions li.active dl.rendition dd {\n            background: #cfe1f1;\n        }\n        ul.renditions li.active dl.rendition dd.name {\n            border-top: 1px solid #c7dbeb;\n        }\n\n        ul.renditions li dl.rendition dt {\n            padding: 8px;\n            }\n            ul.renditions li dl.rendition dd {\n                margin: 0;\n                padding: 0;\n                background: #fafafa;\n                }\n                ul.renditions li dl.rendition dd.name {\n                    border-top: 1px solid #e6e6e6;\n                    color: #808080 !important;\n                    padding: 3px 0 0;\n                    }\n.renditions .reset {\n    background: #007fb3;\n    right: 10px;\n    top: 8px;\n    padding: 3px 5px;\n    }\n\n.save-button {\n    padding: 4px 12px;\n    margin-right: 40px;\n    font-family: 'Roboto', Arial, Helvetica, sans-serif;\n    font-size: 13px;\n    background-image: -webkit-linear-gradient(top, #2591be 0%, #207da4 100%);\n    background-image: -webkit-gradient(linear, left top, left bottom, from(#2591be), to(#207da4));\n    background-image: linear-gradient(to bottom, #2591be 0%, #207da4 100%);\n    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff2591be', endColorstr='#ff207da4', GradientType=0);\n    filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n    background-repeat: repeat-x;\n    border-color: #1d7093;\n    border-radius: 2px;\n    -moz-border-radius: 2px;\n    -webkit-border-radius: 2px;\n    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);\n    -webkit-box-shadow: 0 1px 0 #ffffff, inset 0 1px 0 rgba(255, 255, 255, 0.3);\n    box-shadow: 0 1px 0 #ffffff, inset 0 1px 0 rgba(255, 255, 255, 0.3);\n    }\n    .save-button:hover,\n    #next button:hover {\n        background-color: #207da4;\n        background-position: 0 -25px;\n        background-image: none;\n    }\n    .save-button:active,\n    #next button:active {\n        background-color: #1b6a8b;\n        border-color: #196382;\n        background-image: none;\n        -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n        box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n    }\n\n\n/* Editor classes */\n.editor-wrapper {\n    /*margin-top: 45px;*/\n    position: absolute;\n    top: 45px;\n    bottom: 6px;\n    left: 0;\n    right: 0;\n    border-top: 1px solid #ddd;\n}\nul.renditions.editor {\n    background: #f5f5f5;\n    box-shadow: none;\n    top: 0;\n    bottom: 0;\n    left: 0;\n    padding: 3px 0px 3px 6px;\n    width: 475px;\n    border: none;\n    }\n    ul.renditions.editor li {\n        width: 136px;\n    }\n    ul.renditions.editor li dl.rendition dt {\n        height: 122px;\n    }\n#next .editarea h2 {\n    background: #f8f8f8;\n    background-image: none;\n    color: #333;\n    box-shadow: none;\n    border: none;\n    text-transform: none;\n    font-size: 13px;\n    top: 0;\n    bottom: auto;\n    padding: 6px 10px;\n}\n#next .editarea {\n    background: #f8f8f8;\n    box-shadow: none;\n    position: absolute;\n    left: 475px;\n    right: 0;\n    top: 0px;\n    bottom: 0;\n    border-left: 1px solid #DDD;\n    overflow: auto;\n    padding: 0 10px;\n}\n#next .editarea > div .save-button {\n    top: 42px;\n}\n#next .editarea div#editor {\n    display: block;\n    padding: 10px 126px 10px 10px;\n    background: #f8f8f8;\n    box-shadow: none;\n    min-height: 32px;\n    border: 2px dashed #ccc;\n    margin: 30px 0 5px 0;\n}\n\n/* Media query */\n@media only screen and (max-width: 1290px) {\n    ul.renditions.editor {\n        width: 325px;\n    }\n    #next .editarea {\n        left: 325px;\n    }\n}\n@media only screen and (max-width: 1160px) {\n    ul.renditions.editor {\n        width: 175px;\n    }\n    #next .editarea {\n        left: 175px;\n    }\n}"
  },
  {
    "path": "newscoop/admin-style/sidebar.css",
    "content": ".sidebar h3.label {\n    height: 33px;\n    line-height: 33px;\n    margin: 0;\n    padding: 0 9px;\n    font-size: 1.3em;\n    color: #444;\n    background-color: #fafafa;\n    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff), color-stop(1, #f5f5f5));\n    border-bottom: 1px solid #ccc;\n}\n\n.sidebar .actions {\n    height: 1%;\n    overflow: hidden;\n    margin: 8px 13px;\n    font-size: 1.2em;\n}\n\n.sidebar .message {\n    margin: 8px;\n    padding: 0;\n    border: none;\n    -mozilla-box-shadow: none;\n    -webkit-box-shadow: none;\n    box-shadow: none;\n}\n\n.sidebar > table {\n    margin: 8px;\n} \n\n.sidebar .zend_form {\n    margin: 0;\n    padding: 8px;\n    border: none;\n    -mozilla-box-shadow: none;\n    -webkit-box-shadow: none;\n    box-shadow: none;\n}\n"
  },
  {
    "path": "newscoop/admin-style/slideshow-list.css",
    "content": "#article-slideshows.slideshow-list {\n\tmargin-bottom:-8px;\n}\n#article-slideshows.slideshow-list li {\n\tmargin-bottom:20px;\n}\n\n.slideshow-list img {\n    display: block;\n    border: none;\n}\n\n.slideshow-list small {\n    color: #ccc;\n\tfont-size: 11px;\n\tmargin: -5px 0 5px;\n\tdisplay: block;\n}\n\n.slideshow-list .title {\n    margin: 0 0 5px;\n    padding: 0;\n    font-size: 13px;\n    font-weight: normal;\n\twhite-space: nowrap;\n\toverflow:hidden;\n\ttext-overflow: ellipsis;\n}\n\n.slideshow-list .preview {\n    height: 150px;\n    width: 150px;\n    overflow: hidden;\n}\n\n.slideshow-list .video {\n    display: block;\n    min-height: 100px;\n    background: #797979 url(images/slideshow-preview-video.png) no-repeat 50% 50%;\n}\n\n#message {\n    position: fixed;\n    top: 0;\n    left: 0;\n    width: 100%;\n    text-align: center;\n    z-index: 1000;\n}\n\n#message > span {\n    display: inline-block;\n    margin: 0;\n    padding: 3px 5px;\n    color: #fff;\n    background-color: #5c3566;\n    font-size: 0.8em;\n}\n\n#slideshow-app {\n    margin: 13px 13px 0;\n}\n\n#add-slideshow {\n}\n\n.dark {\n\tbackground:#d0d0d0;\t\n\tbox-shadow: inset 0 -1px 1px rgba(0, 0, 0, 0.1);\n\tborder-bottom:1px solid #b2b2b2;\n\tmargin-bottom:-1px;\n}\n\n.slideshow-list .info {\n    display: inline-block;\n    min-height: 13px;\n    margin-top: -10px;\n    position: relative;\n    top: 10px;\n    font-size: 11px;\n    font-style: italic;\n    color: #7c7c7c;\n}\n"
  },
  {
    "path": "newscoop/admin-style/slideshow.css",
    "content": "#next.iframe {\n    background-color: #fff;\n    font-family: 'Roboto', Arial, Helvetica, sans-serif;\n    font-weight: 400\n}\n#next.iframe h1 {\n    padding: 5px 32px 5px 12px;\n    background: transparent\n}\n#next.iframe h1 span {\n    margin-top: -3px\n}\n#next.iframe h2 {\n    background: #424242;\n    background-image: -webkit-linear-gradient(top, #1a1a1a 0, #333 100%);\n    background-image: -o-linear-gradient(top, #1a1a1a 0, #333 100%);\n    background-image: linear-gradient(to bottom, #1a1a1a 0, #333 100%);\n    background-repeat: repeat-x;\n    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff1a1a1a', endColorstr='#ff333333', GradientType=0);\n    color: white;\n    font-size: 12px;\n    font-weight: 400;\n    text-transform: uppercase;\n    margin: 0;\n    padding: 9px 20px 8px 20px;\n    border-top: 1px solid #000;\n    border-bottom: 1px solid #3e3e3e;\n    box-shadow: inset 0 6px 20px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.4);\n    position: absolute;\n    left: 0;\n    right: 0\n}\n#next.iframe h2.slideshow-images {\n    top: 104px\n}\n#next.iframe h2.attached-slideshow {\n    top: 49px\n}\n#next .inline {\n    margin: 0 0 0 10px;\n    padding: 0 26px;\n    position: absolute;\n    top: 8px;\n    left: 140px;\n    border-left: 1px solid #4d4d4d\n}\n#next .inline button {\n    background-image: -webkit-linear-gradient(top, #f6f5f6 0, #e8e5e8 100%);\n    background-image: -o-linear-gradient(top, #f6f5f6 0, #e8e5e8 100%);\n    background-image: linear-gradient(to bottom, #f6f5f6 0, #e8e5e8 100%);\n    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#fff6f5f6', endColorstr='#ffe8e5e8', GradientType=0);\n    filter: progid: DXImageTransform.Microsoft.gradient(enabled=false);\n    background-repeat: repeat-x;\n    border: 1px solid #cecece;\n    text-shadow: 0 1px 0 #fff;\n    -webkit-box-shadow: inset 0 1px 0 #fff;\n    -moz-box-shadow: inset 0 1px 0 #fff;\n    box-shadow: inset 0 1px 0 #fff;\n    -webkit-border-radius: 2px;\n    -moz-border-radius: 2px;\n    border-radius: 2px;\n    font-family: 'Roboto', Arial, Helvetica, sans-serif;\n    font-size: 11px;\n    text-transform: uppercase;\n    padding: 3px 8px\n}\n#next .inline button:hover {\n    background-color: #e8e5e8;\n    background-position: 0 -25px\n}\n#next .inline button:active {\n    background-color: #d9d5d9;\n    border-color: #d4cfd4;\n    background-image: none;\n    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125)\n}\n#next input[type=\"submit\"] {\n    padding: 5px 12px;\n    margin-right: 40px;\n    font-family: 'Roboto', Arial, Helvetica, sans-serif;\n    font-size: 12px;\n    background-image: -webkit-linear-gradient(top, #2591be 0, #207da4 100%);\n    background-image: -webkit-gradient(linear, left top, left bottom, from(#2591be), to(#207da4));\n    background-image: linear-gradient(to bottom, #2591be 0, #207da4 100%);\n    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff2591be', endColorstr='#ff207da4', GradientType=0);\n    filter: progid: DXImageTransform.Microsoft.gradient(enabled=false);\n    background-repeat: repeat-x;\n    border-color: #1d7093;\n    border-radius: 2px;\n    -moz-border-radius: 2px;\n    -webkit-border-radius: 2px;\n    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);\n    -webkit-box-shadow: 0 1px 0 #fff, inset 0 1px 0 rgba(255, 255, 255, 0.3);\n    box-shadow: 0 1px 0 #fff, inset 0 1px 0 rgba(255, 255, 255, 0.3);\n    color: #fff\n}\n#next input[type=text] {\n    font-family: 'Roboto', Arial, Helvetica, sans-serif;\n    height: auto!important;\n    width: 300px;\n    padding: 6px 7px 6px 7px;\n    border: 1px solid #ccc;\n    margin: 0 6px 0 0;\n    -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.05);\n    box-shadow: none;\n    border-radius: 1px;\n    background: #fff\n}\n#next input[type=text]:hover {\n    border: 1px solid #bbb\n}\n#next input[type=text]:focus {\n    border: #52a8ec solid 1px!important;\n    outline: none!important\n}\n#next button {\n    padding: 5px 12px;\n    margin-right: 10px;\n    font-family: 'Roboto', Arial, Helvetica, sans-serif;\n    font-size: 12px;\n    background-image: -webkit-linear-gradient(top, #2591be 0, #207da4 100%);\n    background-image: -webkit-gradient(linear, left top, left bottom, from(#2591be), to(#207da4));\n    background-image: linear-gradient(to bottom, #2591be 0, #207da4 100%);\n    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff2591be', endColorstr='#ff207da4', GradientType=0);\n    filter: progid: DXImageTransform.Microsoft.gradient(enabled=false);\n    background-repeat: repeat-x;\n    border-color: #1d7093;\n    border-radius: 2px;\n    -moz-border-radius: 2px;\n    -webkit-border-radius: 2px;\n    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);\n    -webkit-box-shadow: 0 1px 0 #fff, inset 0 1px 0 rgba(255, 255, 255, 0.3);\n    box-shadow: 0 1px 0 #fff, inset 0 1px 0 rgba(255, 255, 255, 0.3);\n    color: #fff;\n    line-height: 17px\n}\n#next button.button {\n    background-image: -webkit-gradient(linear, left top, left bottom, from(#f6f5f6), to(#e8e5e8));\n    background-image: linear-gradient(to bottom, #f6f5f6 0, #e8e5e8 100%);\n    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#fff6f5f6', endColorstr='#ffe8e5e8', GradientType=0);\n    filter: progid: DXImageTransform.Microsoft.gradient(enabled=false);\n    background-repeat: repeat-x;\n    border-color: #1d7093;\n    text-shadow: 0 1px 0 #fff;\n    border-color: #cecece;\n    padding: 5px 12px;\n    font-family: 'Roboto', Arial, Helvetica, sans-serif;\n    color: #444\n}\n#next button.button:hover,\n#next button.button:focus {\n    background-image: none!important;\n    background-color: #e8e5e8!important;\n    background-position: 0 -25px!important;\n    border-color: #adadad!important;\n    text-shadow: 0 1px 0 #fff!important;\n    color: #333!important\n}\n#next .expand-btn {\n    position: absolute;\n    top: auto;\n    left: 0;\n    right: 0;\n    bottom: 0;\n    padding: 10px 20px 10px 50px;\n    font-size: 14px;\n    font-weight: 500;\n    background: #fff url(images/add-images-arrow.png) no-repeat 10px 0;\n    cursor: pointer;\n    color: #007fb3\n}\n#next .expand-btn:hover {\n    background-color: #f2f2f2\n}\n#next .ui-tabs {\n    margin: 0;\n    position: absolute;\n    top: auto;\n    bottom: 0;\n    background-color: #f8f8f8;\n    left: 0;\n    right: 0;\n    overflow-y: auto;\n    padding: 0;\n    height: 37px;\n    display: none;\n    font-family: 'Roboto', Arial, sans-serif\n}\n#next .ui-tabs-nav {\n    position: absolute;\n    left: 0;\n    top: 0;\n    bottom: 0;\n    width: 150px;\n    box-sizing: border-box;\n    margin: 0;\n    padding: 30px 0 0;\n    border-width: 0 1px 0 0;\n    border-style: solid;\n    border-color: #d2d2d2;\n    background: #FFF\n}\n#next .ui-tabs-nav li {\n    float: none;\n    margin: 0;\n    padding: 0;\n    border: 0;\n    background: #fff;\n    top: 0\n}\n#next .ui-tabs-nav li a {\n    font-size: 12px;\n    float: none;\n    margin: 0;\n    padding: 0;\n    display: block;\n    font-weight: normal;\n    padding: 10px 15px;\n    color: #007fb3;\n    border-style: solid;\n    border-width: 1px 0 1px 0;\n    border-color: #fff\n}\n#next .ui-tabs-nav li.ui-state-active a {\n    background: #f8f8f8;\n    border-color: #d2d2d2;\n    margin-right: -1px;\n    color: #333\n}\n#next .ui-tabs .ui-tabs-panel {\n    position: absolute;\n    left: 150px;\n    right: 0;\n    top: 0;\n    bottom: 0;\n    border: 0;\n    overflow-y: auto;\n    box-sizing: border-box;\n    padding: 10px 20px\n}\n#next .ui-tabs .ui-tabs-panel ul.thumbnails {\n    margin: 0 0 20px 0;\n    padding: 0\n}\n#next .ui-tabs .ui-tabs-panel ul.thumbnails li {\n    width: 150px;\n    position: relative;\n    margin: 7px 4px;\n    padding: 10px;\n    background-color: white;\n    border-width: 1px;\n    border-style: solid;\n    border-color: #d4d4d4;\n    border-radius: 2px;\n    -webkit-box-shadow: 0 2px 0 #d4d4d4;\n    box-shadow: 0 2px 0 #d4d4d4\n}\n#next .ui-tabs .ui-tabs-panel ul.thumbnails li:hover {\n    border-color: #707070;\n    -webkit-box-shadow: 0 2px 0 #707070, 0 0 6px rgba(0, 0, 0, 0.15);\n    box-shadow: 0 2px 0 #707070, 0 0 6px rgba(0, 0, 0, 0.15)\n}\n#next .ui-tabs .ui-tabs-panel ul.thumbnails li figure div {\n    min-height: 106px\n}\n#next .ui-tabs .ui-tabs-panel ul.thumbnails li figure div img {\n    border: 0;\n    max-height: 100px;\n    max-width: 150px\n}\n#next .ui-tabs .ui-tabs-panel ul.thumbnails li figure input {\n    margin: 4px 0\n}\n#next .ui-tabs .ui-tabs-panel ul.thumbnails li figure figcaption label {\n    font-size: 11px\n}\n#next .ui-tabs .ui-tabs-panel .add-images {\n    margin-left: 4px;\n    margin-bottom: 20px\n}\n#next ul.slideshow {\n    padding: 5px 12px 10px 12px;\n    box-shadow: none;\n    display: block;\n    box-sizing: border-box;\n    background: #4d4d4d;\n    height: auto;\n    overflow-y: scroll;\n    position: absolute;\n    top: 137px;\n    left: 0;\n    right: 0;\n    bottom: 37px\n}\n#next ul.slideshow li {\n    padding: 10px;\n    border: 1px solid #000;\n    border-radius: 2px;\n    -moz-border-radius: 2px;\n    -webkit-border-radius: 2px;\n    box-shadow: 0 2px 0 #000;\n    width: 150px;\n    background: #fff;\n    margin: 7px 4px\n}\n#next ul.slideshow li:hover {\n    box-shadow: 0 2px 0 #000, 0 0 16px #000;\n    border: 1px solid #000;\n    background: #fafafa url(images/slideshow-item-drag.png) repeat-y 0 0\n}\n#next ul.slideshow li:hover a.remove {\n    display: block\n}\n#next ul.slideshow li.placeholder,\n#next ul.slideshow li.placeholder:hover {\n    width: 172px;\n    height: 181px;\n    box-sizing: border-box;\n    -webkit-box-sizing: border-box;\n    -moz-box-sizing: border-box;\n    background-image: none;\n    background: transparent;\n    box-shadow: none;\n    border: 2px dashed #767676\n}\n#next ul.slideshow li a.remove {\n    background: #fafafa url(images/slide_delete.png) no-repeat 1px 0;\n    right: 10px;\n    top: 10px;\n    width: 20px;\n    height: 20px;\n    display: none\n}\n#next ul.slideshow li a.remove:hover {\n    background-position: 1px -30px\n}\n#next ul.slideshow figure {\n    min-height: 159px\n}\n#next ul.slideshow figure>div {\n    height: auto\n}\n#next ul.slideshow figure>div .rendition-preview {\n    border: 0\n}\n#next ul.slideshow figure>div .rendition-preview img {\n    max-height: 100px;\n    max-width: 150px\n}\n#next ul.slideshow a figcaption {\n    margin: 10px 0 0;\n    padding: 0;\n    height: 49;\n    overflow: hidden\n}\n#next ul.slideshow.editor {\n    background: #f5f5f5;\n    box-shadow: none;\n    top: 0;\n    bottom: 0;\n    left: 0;\n    padding: 3px 0 3px 6px;\n    width: 325px;\n    border: 0;\n    overflow-y: auto\n}\n#next ul.slideshow.editor li {\n    background: #fff;\n    width: 120px;\n    padding: 8px;\n    margin: 7px 6px;\n    border: #d4d4d4 solid 1px;\n    border-radius: 2px;\n    -moz-border-radius: 2px;\n    -webkit-border-radius: 2px;\n    box-shadow: 0 2px 0 #d4d4d4\n}\n#next ul.slideshow.editor li:hover {\n    border: 1px solid #707070;\n    box-shadow: 0 2px 0 #707070\n}\n#next ul.slideshow.editor li a.remove {\n    display: none\n}\n#next ul.slideshow.editor li.active {\n    background: #d9eaf9;\n    border: #007fb3 solid 1px!important;\n    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.25)\n}\n#next ul.slideshow.editor li.active a.remove {\n    background-color: #d9eaf9\n}\n#next ul.slideshow.editor figure {\n    min-height: 145px\n}\n#next ul.slideshow.editor figure>div .rendition-preview img {\n    max-height: 80px;\n    max-width: 120px\n}\n#next ul.slideshow.editor figure figcaption {\n    height: auto;\n    max-height: 52px\n}\n#next ul.slideshow.attached {\n    top: 74px;\n    height: 200px!important\n}\n#next ul.slideshow.attached li {\n    padding: 10px;\n    border: 1px solid #000;\n    border-radius: 2px;\n    -moz-border-radius: 2px;\n    -webkit-border-radius: 2px;\n    box-shadow: 0 2px 0 #000;\n    width: 150px;\n    background: #fff;\n    margin: 7px 4px;\n    height: 145px\n}\n#next ul.slideshow.attached li:hover {\n    background-image: none;\n    box-shadow: 0 2px 0 #c83929;\n    border: 1px solid #c83929;\n    cursor: pointer\n}\n#next ul.slideshow.attached li h3 {\n    padding: 0;\n    font-size: 13px;\n    font-weight: normal;\n    white-space: nowrap;\n    overflow: hidden;\n    text-overflow: ellipsis\n}\n#next ul.slideshow.attached li .preview {\n    margin: 4px 0 0;\n    height: 100px\n}\n#next ul.slideshow.attached li .preview img {\n    max-height: 100px;\n    max-width: 150px\n}\n#next ul.slideshow.attached li .info {\n    min-height: 13px;\n    position: absolute;\n    bottom: 2px;\n    font-size: 11px;\n    font-style: normal;\n    font-weight: 500;\n    color: #c83929;\n    text-transform: uppercase\n}\n#next ul.slideshow.attached li small {\n    font-size: 11px;\n    color: #888\n}\n#next ul.slideshow-list {\n    position: absolute;\n    top: 327px;\n    bottom: 0;\n    left: 0;\n    right: 0;\n    overflow-y: auto;\n    background: #f8f8f8;\n    border-top: 1px solid #e2e2e2;\n    padding: 10px 12px\n}\n#next ul.slideshow-list li {\n    width: 150px;\n    position: relative;\n    margin: 7px 4px;\n    padding: 10px;\n    background-color: white;\n    border-width: 1px;\n    border-style: solid;\n    border-color: #d4d4d4;\n    border-radius: 2px;\n    -webkit-box-shadow: 0 2px 0 #d4d4d4;\n    box-shadow: 0 2px 0 #d4d4d4;\n    height: 145px;\n    min-height: inherit\n}\n#next ul.slideshow-list li:hover {\n    border-color: #7aa03f;\n    -webkit-box-shadow: 0 2px 0 #7aa03f, 0 0 6px rgba(0, 0, 0, 0.15);\n    box-shadow: 0 2px 0 #7aa03f, 0 0 6px rgba(0, 0, 0, 0.15);\n    cursor: pointer\n}\n#next ul.slideshow-list li .preview {\n    height: 100px;\n    margin-top: 4px\n}\n#next ul.slideshow-list li .preview img {\n    max-width: 150px;\n    max-height: 100px\n}\n#next ul.slideshow-list li small {\n    font-size: 11px;\n    color: #888\n}\n#next ul.slideshow-list li .info {\n    min-height: 13px;\n    position: relative;\n    font-size: 11px;\n    font-style: normal;\n    font-weight: 500;\n    color: #7aa03f;\n    text-transform: uppercase;\n    position: absolute;\n    top: auto;\n    bottom: 2px;\n    margin-top: 0\n}\n#next.expanded .expand-btn {\n    top: 364px;\n    left: 0;\n    right: 0;\n    bottom: auto;\n    background-position: 10px -35px\n}\n#next.expanded .ui-tabs {\n    top: 400px;\n    height: auto;\n    display: block\n}\n#next.expanded ul.slideshow {\n    height: 228px;\n    bottom: auto\n}\n#next #image-search {\n    margin: 7px 4px 0 4px\n}\n#next #image-search input,\n#next #image-search button {\n    vertical-align: middle\n}\n#next #image-search button {\n    padding: 5px 12px;\n    font-size: 12px!important\n}\n#next .editarea {\n    background: #f8f8f8;\n    box-shadow: none;\n    position: absolute;\n    left: 325px;\n    right: 0;\n    top: 0;\n    bottom: 0;\n    border-left: 1px solid #DDD;\n    overflow: auto;\n    padding: 12px 10px\n}\n#next .editarea div#editor {\n    padding: 10px 126px 6px 6px;\n    background: #f8f8f8;\n    box-shadow: none;\n    min-height: 32px;\n    border: 2px dashed #ccc;\n    margin: 30px 0 5px 0\n}\n#next .editarea div>.save-button {\n    top: 41px;\n    right: 0;\n    padding: 3px 5px\n}\n#next .editarea h2 {\n    background: #f8f8f8;\n    background-image: none;\n    color: #333;\n    box-shadow: none;\n    border: 0;\n    text-transform: none;\n    font-size: 13px;\n    top: 0;\n    bottom: auto;\n    padding: 6px 10px\n}\n#modal-top .toolbar {\n    padding: 10px 20px 8px 0;\n    min-height: initial;\n    background: #fff;\n    z-index: 1049;\n}\n.slideshow-headline {\n    position: fixed;\n    top: 50px;\n    left: 0;\n    right: 0;\n    padding: 12px 20px 13px 20px;\n    border-top: 1px solid #e2e2e2;\n    background-color: #f2f2f2\n}\n.slideshow-headline input,\n.slideshow-headline button {\n    vertical-align: middle\n}\n.slideshow-headline select {\n    padding: 6px 7px 5px 7px;\n    border: 1px solid #ccc;\n    vertical-align: middle\n}\n.slideshow-headline select:hover {\n    border: 1px solid #bbb\n}\n.slideshow-headline select:focus {\n    border: #52a8ec solid 1px!important;\n    outline: none!important\n}\n.add-video {\n    margin: 7px 0 0;\n    padding: 0 4px\n}\n.add-video input,\n.add-video button {\n    vertical-align: middle\n}\n.save-button {\n    padding: 4px 12px;\n    margin-right: 40px;\n    font-family: 'Roboto', Arial, Helvetica, sans-serif;\n    font-size: 12px;\n    background-image: -webkit-linear-gradient(top, #2591be 0, #207da4 100%);\n    background-image: -webkit-gradient(linear, left top, left bottom, from(#2591be), to(#207da4));\n    background-image: linear-gradient(to bottom, #2591be 0, #207da4 100%);\n    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ff2591be', endColorstr='#ff207da4', GradientType=0);\n    filter: progid: DXImageTransform.Microsoft.gradient(enabled=false);\n    background-repeat: repeat-x;\n    border-color: #1d7093;\n    border-radius: 2px;\n    -moz-border-radius: 2px;\n    -webkit-border-radius: 2px;\n    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);\n    -webkit-box-shadow: 0 1px 0 #fff, inset 0 1px 0 rgba(255, 255, 255, 0.3);\n    box-shadow: 0 1px 0 #fff, inset 0 1px 0 rgba(255, 255, 255, 0.3)\n}\n.save-button:hover,\n#next button:hover {\n    background-color: #207da4;\n    background-position: 0 -25px;\n    background-image: none\n}\n.save-button:active,\n#next button:active {\n    background-color: #1b6a8b;\n    border-color: #196382;\n    background-image: none;\n    -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125)\n}\n#image-archive .paginationControl {\n    padding: 4px;\n    margin-bottom: 20px\n}\n#image-archive .paginationControl a,\n#image-archive .paginationControl span {\n    border: 1px solid #dedede;\n    background: -webkit-linear-gradient(#fafafa 0, #f6f6f6 100%);\n    background: -o-linear-gradient(#fafafa 0, #f6f6f6 100%);\n    background: linear-gradient(#fafafa 0, #f6f6f6 100%);\n    border-radius: 1px;\n    padding: 5px 12px\n}\n#image-archive .paginationControl a {\n    border: 1px solid #cecece\n}\n#image-archive .paginationControl a:hover {\n    border: 1px solid #aaa;\n    background: -webkit-linear-gradient(#fafafa 0, #eaeaea 100%);\n    background: -o-linear-gradient(#fafafa 0, #eaeaea 100%);\n    background: linear-gradient(#fafafa 0, #eaeaea 100%)\n}\n.editor-wrapper {\n    position: absolute;\n    top: 50px;\n    bottom: 6px;\n    left: 0;\n    right: 0;\n    border-top: 1px solid #ddd\n}\n.search-wrapper {\n    position: absolute;\n    top: 282px;\n    left: 0;\n    right: 0;\n    padding: 8px 16px;\n    background: #eee\n}\n.search-wrapper input[type=\"text\"] {\n    vertical-align: middle\n}\n.search-wrapper button {\n    vertical-align: middle\n}\n.search-wrapper .search {\n    float: left\n}\n.search-wrapper .paginationControl {\n    float: right;\n    margin-right: 12px\n}\n.search-wrapper .paginationControl a {\n    padding: 5px 12px;\n    border: 1px solid #cecece;\n    margin-left: 4px\n}\n.search-wrapper .paginationControl a:hover {\n    border: 1px solid #aaa\n}\n.search-wrapper .paginationControl span {\n    padding: 5px 12px;\n    margin-left: 4px\n}\n@media only screen and (max-width: 1290px) {\n    #next ul.slideshow.editor {\n        width: 325px\n    }\n    #next .editarea {\n        left: 325px\n    }\n}\n@media only screen and (max-width: 1160px) {\n    #next ul.slideshow.editor {\n        width: 175px\n    }\n    #next .editarea {\n        left: 175px\n    }\n}\n.btn-disabled {\n    cursor: not-allowed !important;\n    filter: alpha(opacity=55);\n    -webkit-box-shadow: none;\n    box-shadow: none !important;\n    opacity: .55;\n}"
  },
  {
    "path": "newscoop/admin-style/table.css",
    "content": "table {\n    margin: 0 0 1em;\n    font-size: 1.2em;\n    border: 1px solid #ccc;\n    background-color: #fff;\n    border-collapse: collapse;\n}\n\ntable caption {\n    text-align: left;\n    margin: 1px;\n    padding: 5px 8px;\n    background-color: #fff;\n}\n\ntable tr > * {\n    width: 13em;\n    margin: 0;\n    padding: 3px 5px;\n    background-color: #f6f6f6;\n    border: 1px solid #ebebeb;\n    border-width: 1px 0 0 1px;\n}\n\ntable .text {\n    width: 21em;\n}\n\ntable tr > th {\n    border-top-color: #ccc;\n}\n\ntable tr > *:first-child {\n    border-left: none;\n}\n\ntable tr.odd td {\n    background-color: #fff;\n}\n\ntable tr:hover td {\n    background-color: #cce5f0;\n}\n\n.content .dataTables_wrapper {\n    margin-left: 0;\n    margin-right: 0;\n}\n\n.content table.data {\n    margin-bottom: 0;\n}\n\ntable .id {\n    width: 1em;\n}\n\ntable td.size {\n    text-align: right;\n}\n\n.tabs table.templates { font-size: 1em; }\n\ntable.datatable { margin-bottom: 0; }\n"
  },
  {
    "path": "newscoop/admin-style/themes_list.css",
    "content": ".themesListHolder {\n\tbackground:none !important;\n\tborder:none !important;\n\t}\n\t.themesListHolder td{\n\t\tvertical-align: top;\n\t}\n\t.themesListHolder div {\n\t\tposition:relative;\n\t\tpadding:0px !important;\n\t\tbackground:none !important;\n\t\tborder:none !important;\n\t\t}\n\t\t.themesListTabsBtns {\n\t\t\tpadding:0px !important;\n            margin-bottom:0px !important;\n\t\t\tborder:none !important;\n\t\t\t}\n\t\t\t.themesListTabsBtns .ui-tabs-selected {\n\t\t\t\tbackground:#fff !important;\n\t\t\t\t}\n\n.themesListHolder .dataTables_wrapper {\n    margin-top: 0;\n}\n\n\t\t#addNewPublication {\n\t\t\tposition:absolute; right:0px; top:8px; display:block;\n\t\t\theight:13px; \n\t\t\tpadding-left:14px;\n\t\t\tcolor:#007FB3;\n\t\t\tbackground:url(images/small_add.png) 0 3px  no-repeat;\n\t\t\t}\n\t\t\t#addNewPublication:hover {\n\t\t\t\ttext-decoration:underline;\n\t\t\t\t}\n\t\t#actionExpand {\n\t\t\toverflow: hidden;\n\t\t\tmargin-bottom: 8px;\n\t\t\t}\n\t\t\t#actionExpand fieldset {\n\t\t\t\tfloat: left;\n\t\t\t\twidth: auto;\n\t\t\t\tmargin: 0px;\n\t\t\t\tpadding: 0px;\n\t\t\t\tborder: none;\n\t\t\t\t}\n\t\t\t#actionExpand fieldset.right {\n\t\t\t\tfloat: right;\n\t\t\t\t}\n\t\t\tselect.actions {\n\t\t\t\twidth: 100px;\n\t\t\t\tmargin-right: 10px;\n\t\t\t\t}\n\t\t\t#actionExpand fieldset a {\n\t\t\t\tline-height: 24px;\n\t\t\t\tcolor: #007FB3;\n\t\t\t\t}\n\t\t\t\t#actionExpand fieldset a:hover {\n\t\t\t\t\ttext-decoration: underline;\n\t\t\t\t\t}\n\t\t\t#actionExpand fieldset label {\n\t\t\t\tmargin-right: 10px;\n\t\t\t\tline-height: 24px;\n\t\t\t\t}\n\t\t.themesListHolder table {\n\t\t\t}\n\t\t\t.themesListHolder table thead tr th {\n\t\t\t\ttext-align:left;\n\t\t\t\t}\n\t\t\t.themesListHolder table tbody {\n\t\t\t\tbackground:#ffffff;\n\t\t\t\t}\n\t\t\t\t.themesListHolder table tbody tr:hover td {\n\t\t\t\t\tbackground:none !Important;\n\t\t\t\t\t}\n\t\t\t\t\t.themesListHolder table tbody tr td {\n\t\t\t\t\t\tpadding:10px 5px;\n\t\t\t\t\t\tborder:none; border-top:1px solid #cccccc;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t.themesListHolder table tbody tr td.valignTop {\n\t\t\t\t\t\t\tvertical-align:top;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t.themesListTabs {\n\t\t\t\t\t\t\t position:relative; overflow:hidden;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t.ui-tabs .ui-tabs-hide {\n\t\t\t\t\t\t\t\tdisplay: none;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t.themesListTabs div, .themesListTabs li {\n\t\t\t\t\t\t\t\tfloat:left !important; overflow:hidden; \n\t\t\t\t\t\t\t\twidth:210px !important; height:129px !important;\n\t\t\t\t\t\t\t\tmargin-right:16px;\n\t\t\t\t\t\t\t\tborder:1px solid #9d9d9d !important;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t.themesListTabs div, .themesListTabs li img\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\twidth: 100%\t\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t.themesListTabs .imageCtrls ul, .themesListTabs .imageCtrls li\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\twidth: 100% !important;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t.themesListTabs ul\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\twidth: 100% !important;\n\t\t\t\t\t\t\t\tborder: none !important;\t\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t.themesListTabs h3 {\n\t\t\t\t\t\t\t\tpadding-bottom:0;\n\t\t\t\t\t\t\t\tcolor:#3399c2;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t.themesListTabs h3 span {\n\t\t\t\t\t\t\t\t\tfont-size:14px; color:#3b3b3b;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t.themesListTabs p {\n\t\t\t\t\t\t\t\tmargin:0px 0 15px 0;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t.themesListTabs ul {\n\t\t\t\t\t\t\t\tright:0px; bottom:0px;\n\t\t\t\t\t\t\t\tmargin:0px !important; padding:0px !important; \n\t\t\t\t\t\t\t\twidth:236px; !Important;\n\t\t\t\t\t\t\t\tbackground:none !important;\n\t\t\t\t\t\t\t\tborder:none !important;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t.themesListTabs ul li {\n\t\t\t\t\t\t\t\t\tfloat:none !important;\n\t\t\t\t\t\t\t\t\theight:25px !important;\n\t\t\t\t\t\t\t\t\tmargin:0px !Important; padding:0px !important;\n\t\t\t\t\t\t\t\t\tbackground:none !Important;\n\t\t\t\t\t\t\t\t\tborder:none !important;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t.themesListTabs ul li a {\n\t\t\t\t\t\t\t\t\t\tdisplay:block; position:relative;\n\t\t\t\t\t\t\t\t\t\twidth:95%; height:26px; \n\t\t\t\t\t\t\t\t\t\tpadding:0px 0 0 20px !important;\n\t\t\t\t\t\t\t\t\t\tline-height:26px;\n\t\t\t\t\t\t\t\t\t\tbackground: #ff2200;\n\t\t\t\t\t\t\t\t\t\tbackground:url(images/themes-list-tabs-btn.png) left top no-repeat;\n\t\t\t\t\t\t\t\t\t\tbackground-size: 100% 53px;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t.themesListTabs ul li.ui-tabs-selected a {\n\t\t\t\t\t\t\t\t\t\tbackground-position:0 -26px;\n\t\t\t\t\t\t\t\t\t\tcursor:pointer !important;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t.themesListTabs ul li a span {\n\t\t\t\t\t\t\t\t\t\t\tposition:absolute; right:10px; top:0px; display:none;\n\t\t\t\t\t\t\t\t\t\t\tfont-weight:normal; color:#9d9d9d; font-style:italic; font-size:11px;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t.themesListTabs ul li.ui-tabs-selected a span {\n\t\t\t\t\t\t\t\t\t\t\tdisplay:block;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t.compatibilityTitle {\n\t\t\t\t\t\t\tdisplay:block; \n\t\t\t\t\t\t\tmargin-bottom:5px;\n\t\t\t\t\t\t\tcolor:#000000;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t.actionDropDown {\n\t\t\t\t\t\t\tfloat:left;\n\t\t\t\t\t\t\tmargin:0px !important;\n\t\t\t\t\t\t\tpadding:10px 0 0 0px !important;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t.actionDropDown li {\n\t\t\t\t\t\t\t\tposition:relative; float:right;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t.actionDropDown li a {\n\t\t\t\t\t\t\t\t\tdisplay:block;\n\t\t\t\t\t\t\t\t\twidth:105%; height:18px; \n\t\t\t\t\t\t\t\t\tpadding-left:8px;\n\t\t\t\t\t\t\t\t\tline-height:18px; color:#007fb3;\n\t\t\t\t\t\t\t\t\tbackground:url(images/actions-btn-bgr.png) 100% 0px no-repeat;\n\t\t\t\t\t\t\t\t\t-moz-border-radius: 3px;\n\t\t\t\t\t\t\t\t\t-webkit-border-radius: 3px;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t.actionDropDown li a:hover, .actionDropDown li a.active {\n\t\t\t\t\t\t\t\t\t\tcolor:#ffffff; \n\t\t\t\t\t\t\t\t\t\tbackground-position:100% -18px;\n\t\t\t\t\t\t\t\t\t\tbackground-color:#9d9d9d;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t.actionDropDown li ul {\n\t\t\t\t\t\t\t\t\tdisplay:none; position:absolute; top:15px; left:0px;\n\t\t\t\t\t\t\t\t\twidth:160px;\n\t\t\t\t\t\t\t\t\tmargin:0px !important;\n\t\t\t\t\t\t\t\t\tpadding:0px !important;\n\t\t\t\t\t\t\t\t\tborder:1px solid #9d9d9d;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t.actionDropDown li ul li {\n\t\t\t\t\t\t\t\t\t\tborder-bottom:1px solid #e5e5e5;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t.actionDropDown li ul li a, .actionDropDown li ul li a.active {\n\t\t\t\t\t\t\t\t\t\twidth:135px; height:auto; min-height:25px;\n\t\t\t\t\t\t\t\t\t\tpadding:0 0 0 25px;\n\t\t\t\t\t\t\t\t\t\tline-height:25px; color:#444444;\n\t\t\t\t\t\t\t\t\t\tbackground-color:#ffffff;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t.actionDropDown li ul li a.add {\n\t\t\t\t\t\t\t\t\t\t\tbackground:url(images/solo_icons.png) 7px -84px no-repeat #ffffff;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t.actionDropDown li ul li a.edit {\n\t\t\t\t\t\t\t\t\t\t\tbackground:url(images/topics_edit.png) 5px 6px no-repeat #ffffff;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t.actionDropDown li ul li a.delete, .actionDropDown li ul li a.unassign {\n\t\t\t\t\t\t\t\t\t\t\tbackground:url(images/topics_delete.png) 5px 6px no-repeat #ffffff\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t.actionDropDown li ul li a:hover {\n\t\t\t\t\t\t\t\t\t\t\tcolor:#007fb3;\n\t\t\t\t\t\t\t\t\t\t\tbackground-color:#f5f5f5;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t.actionDropDown li ul li a span {\n\t\t\t\t\t\t\t\t\t\t\t\tdisplay:block;\n\t\t\t\t\t\t\t\t\t\t\t\twidth:135px; height:25px;\n\t\t\t\t\t\t\t\t\t\t\t\tbackground:url(images/arrow-right.png) 120px 9px no-repeat;\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t.actionDropDown li ul li ul {\n\t\t\t\t\t\t\t\t\t\t\tposition:absolute; display:none; top:-1px; left:160px;\n\t\t\t\t\t\t\t\t\t\t\twidth:160px;\n\t\t\t\t\t\t\t\t\t\t\tmargin:0px !important;\n\t\t\t\t\t\t\t\t\t\t\tpadding:0px !important;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t.actionDropDown li ul li ul li a, .actionDropDown li ul li ul li a.active {\n\t\t\t\t\t\t\t\t\t\t\t\twidth:140px !important;\n\t\t\t\t\t\t\t\t\t\t\t\tpadding:0 10px !important;\n\t\t\t\t\t\t\t\t\t\t\t\tbackground-image:none !important;\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t.actionMessage{\n\t\t\t\t\t\t\t\t\t\t\t\t\theight: 14px; line-height: 14px;\n\t\t\t\t\t\t\t\t\t\t\t\t\tfont-size: 11px; color: #d50;\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t.actionDropDown li a.download\n\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\tbackground-image:url(images/solo_icons.png);\n\t\t\t\t\t\t\t\t\t\t\t\t\tbackground-repeat:no-repeat;\n\t\t\t\t\t\t\t\t\t\t\t\t\tbackground-position: 5px -24px;\t\n\t\t\t\t\t\t\t\t\t\t\t\t}\n"
  },
  {
    "path": "newscoop/admin-style/widgets.css",
    "content": "/* dashboard */\r\n.context > .widget, .widget-placeholder {\r\n    position: relative;\r\n    margin-top: 13px;\r\n    display: block;\r\n}\r\n\r\n.ui-dialog.widget {\r\n    width: auto;\r\n    position: relative;\r\n    -moz-box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n    -webkit-box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n    box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n}\r\n\r\n.widget-placeholder {\r\n    border: 3px dashed #ccc;\r\n}\r\n\r\n.widget > .content > .scroll {\r\n    margin-top: 3px;\r\n    padding: 0 3px 3px 0;\r\n    max-height: 400px;\r\n    overflow: auto;\r\n}\r\n\r\n.widget .header h3 {\r\n    margin: 0 0;\r\n    padding: 0;\r\n    font-size: 12px;\r\n\r\n}\r\n\r\n.widget .header a {\r\n    float: right;\r\n    margin: -2px 0 0 5px;\r\n    border: none;\r\n}\r\n\r\n#dashboard {\r\n    height: 1%;\r\n    overflow: hidden;\r\n    margin: 0 0 0 30px;\r\n}\r\n\r\n#dashboard .dataTables_wrapper {\r\n    margin: 10px 10px;\r\n}\r\n\r\n#dashboard > .column {\r\n    float: left;\r\n    width: 50%;\r\n    min-height: 400px;\r\n    max-width: 800px;\r\n}\r\n\r\n#dashboard > .column > .context {\r\n    margin: 0 14px 0 0;\r\n    padding: 0;\r\n}\r\n\r\n/* widget manager */\r\n#widgets {\r\n    height: 1%;\r\n    max-width: 1000px;\r\n    overflow: hidden;\r\n    margin: 0 0 0 30px;\r\n    padding: 0;\r\n}\r\n\r\n#widgets li {\r\n    float: left;\r\n    min-width: 300px;\r\n    margin: 13px 14px 0 0;\r\n    padding: 0;\r\n    border: 1px solid #ccc;\r\n\tbackground:#FFF;\r\n    -moz-box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n    -webkit-box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n    box-shadow: 0 2px 2px rgba(0,0,0,.10);\r\n\r\n}\r\n\r\n#widgets h3 {\r\n    margin: 0 0 2px;\r\n    padding: 8px;\r\n\tfont-size: 1.6em;\r\n\tcolor:#444;\r\n}\r\n\r\n#widgets p {\r\n    margin: 0 5px 8px 8px;\r\n\tfont-size:1.2em;\r\n}\r\n#widgets a:hover {\r\n\ttext-decoration:underline;\r\n}\r\n#widgets a.add {\r\n\tpadding: 0 0 0 12px;\r\n\tbackground:url(images/small_add.png) no-repeat 0 3px;\r\n}\r\n\r\ndl.meta {\r\n    background-color: #f9f9f9;\r\n    border-top: 1px solid #e1e1e1;\r\n    margin: 10px 0 0;\r\n    padding: 8px;\r\n    font-size: 1.1em;\r\n}\r\n\r\ndl.meta > * {\r\n    margin: 0;\r\n}\r\n\r\ndl.meta dt {\r\n    margin-top: 7px;\r\n}\r\ndl.meta dd {\r\n    color:#565656;\r\n}\r\ndl.meta dt:first-child {\r\n    margin-top: 0;\r\n}\r\n\r\n.widget .extra {\r\n    position: absolute;\r\n    top: 19px;\r\n    right: 0;\r\n}\r\n\r\n.widget .extra fieldset, .widget .extra dl.meta {\r\n    float: right;\r\n    clear: right;\r\n    margin: 0 0 5px;\r\n    padding: 5px;\r\n    background-color: #f5f5f5;\r\n    border: 1px solid #ccc;\r\n    -moz-border-radius: 5px;\r\n    border-radius: 5px;\r\n}\r\n\r\n.widget .extra dl.meta {\r\n    margin-top: 0;\r\n}\r\n\r\n.widget .extra fieldset input[type=text] {\r\n    width: 21em;\r\n}\r\n\r\n.widget .settings fieldset dt {\r\n    float: none;\r\n    width: 99%;\r\n}\r\n\r\n.widget iframe { border: 1px solid #fff; }\r\n"
  },
  {
    "path": "newscoop/admin-style/zend_admin_stylesheet.css",
    "content": ""
  },
  {
    "path": "newscoop/admin.php",
    "content": "<?php\nrequire_once dirname(__FILE__) . '/public/index.php';\n"
  },
  {
    "path": "newscoop/application/AppKernel.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Symfony\\Component\\HttpKernel\\Kernel;\nuse Symfony\\Component\\Config\\Loader\\LoaderInterface;\n\nclass AppKernel extends Kernel\n{\n    protected function initializeContainer()\n    {\n        parent::initializeContainer();\n\n        try {\n            $timeZone = $this->getContainer()->get('system_preferences_service')->TimeZone;\n            if (!empty($timeZone)) {\n                date_default_timezone_set($timeZone);\n            }\n        } catch (\\Exception $e) { }\n\n        // Set temp dir for Newscoop to project cache directory\n        putenv(sprintf('TMPDIR=%s/../cache', __DIR__));\n    }\n\n    public function registerBundles()\n    {\n        $bundles =  array(\n            new Symfony\\Bundle\\FrameworkBundle\\FrameworkBundle(),\n            new Symfony\\Bundle\\SecurityBundle\\SecurityBundle(),\n            new Symfony\\Bundle\\TwigBundle\\TwigBundle(),\n            new Symfony\\Bundle\\MonologBundle\\MonologBundle(),\n            new Symfony\\Bundle\\SwiftmailerBundle\\SwiftmailerBundle(),\n            new Symfony\\Bundle\\AsseticBundle\\AsseticBundle(),\n            new Doctrine\\Bundle\\DoctrineBundle\\DoctrineBundle(),\n            new Sensio\\Bundle\\FrameworkExtraBundle\\SensioFrameworkExtraBundle(),\n            new JMS\\SerializerBundle\\JMSSerializerBundle($this),\n            new FOS\\RestBundle\\FOSRestBundle(),\n            new Newscoop\\GimmeBundle\\NewscoopGimmeBundle(),\n            new Knp\\Bundle\\PaginatorBundle\\KnpPaginatorBundle(),\n            new Knp\\Bundle\\MenuBundle\\KnpMenuBundle(),\n            new EWZ\\Bundle\\RecaptchaBundle\\EWZRecaptchaBundle(),\n            new FOS\\JsRoutingBundle\\FOSJsRoutingBundle(),\n            new Bazinga\\Bundle\\JsTranslationBundle\\BazingaJsTranslationBundle(),\n            new FOS\\OAuthServerBundle\\FOSOAuthServerBundle(),\n            new Nelmio\\ApiDocBundle\\NelmioApiDocBundle(),\n            new Newscoop\\ZendBridgeBundle\\NewscoopZendBridgeBundle(),\n            new Newscoop\\NewscoopBundle\\NewscoopNewscoopBundle(),\n            new Newscoop\\CommunityTickerBundle\\NewscoopCommunityTickerBundle(),\n            new Newscoop\\ArticlesBundle\\NewscoopArticlesBundle(),\n            new Stof\\DoctrineExtensionsBundle\\StofDoctrineExtensionsBundle(),\n            new Sensio\\Bundle\\GeneratorBundle\\SensioGeneratorBundle(),\n            new Newscoop\\PluginGeneratorBundle\\NewscoopPluginGeneratorBundle()\n        );\n\n        if (in_array($this->getEnvironment(), array('dev', 'test'))) {\n            $bundles[] = new RaulFraile\\Bundle\\LadybugBundle\\RaulFraileLadybugBundle();\n            $bundles[] = new Symfony\\Bundle\\WebProfilerBundle\\WebProfilerBundle();\n            $bundles[] = new Sensio\\Bundle\\DistributionBundle\\SensioDistributionBundle();\n        }\n\n        $cachedPlugins = __DIR__ . '/../plugins/available_plugins.json';\n        if (file_exists($cachedPlugins)) {\n            $plugins = json_decode(file_get_contents($cachedPlugins));\n            foreach ($plugins as $plugin) {\n                $bundles[] = new $plugin();\n            }\n        }\n\n        return $bundles;\n    }\n\n    public function registerContainerConfiguration(LoaderInterface $loader)\n    {\n        $loader->load(__DIR__.'/configs/symfony/config_'.$this->getEnvironment().'.yml');\n    }\n\n    public function getCacheDir()\n    {\n        return $this->truepath($this->rootDir . '/../cache/' . $this->environment);\n    }\n\n    public function getLogDir()\n    {\n        return $this->truepath($this->rootDir . '/../log');\n    }\n\n    /**\n     * Gets the container's base class.\n     *\n     * All names except Container must be fully qualified.\n     *\n     * @return string\n     */\n    protected function getContainerBaseClass()\n    {\n        return 'Newscoop\\DependencyInjection\\ContainerBuilder';\n    }\n\n    /**\n     * This function is to replace PHP's extremely buggy realpath().\n     * @param string The original path, can be relative etc.\n     * @return string The resolved path, it might not exist.\n     */\n    public function truepath($path)\n    {\n        // whether $path is unix or not\n        $unipath=strlen($path)==0 || $path{0}!='/';\n        // attempts to detect if path is relative in which case, add cwd\n        if(strpos($path,':')===false && $unipath)\n            $path=getcwd().DIRECTORY_SEPARATOR.$path;\n        // resolve path parts (single dot, double dot and double delimiters)\n        $path = str_replace(array('/', '\\\\'), DIRECTORY_SEPARATOR, $path);\n        $parts = array_filter(explode(DIRECTORY_SEPARATOR, $path), 'strlen');\n        $absolutes = array();\n        foreach ($parts as $part) {\n            if ('.'  == $part) continue;\n            if ('..' == $part) {\n                array_pop($absolutes);\n            } else {\n                $absolutes[] = $part;\n            }\n        }\n        $path=implode(DIRECTORY_SEPARATOR, $absolutes);\n        // resolve any symlinks\n        if(file_exists($path) && linkinfo($path)>0)$path=readlink($path);\n        // put initial separator that could have been lost\n        $path=!$unipath ? '/'.$path : $path;\n\n        return $path;\n    }\n}\n"
  },
  {
    "path": "newscoop/application/Bootstrap.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Doctrine\\Common\\ClassLoader;\nuse Doctrine\\Common\\Annotations\\AnnotationReader;\nuse Doctrine\\ODM\\MongoDB\\DocumentManager;\nuse Doctrine\\MongoDB\\Connection;\nuse Doctrine\\ODM\\MongoDB\\Configuration;\nuse Doctrine\\ODM\\MongoDB\\Mapping\\Driver\\AnnotationDriver;\nuse Newscoop\\Doctrine\\EventDispatcherProxy;\n\nclass Bootstrap extends Zend_Application_Bootstrap_Bootstrap\n{\n    protected function _initAutoloader()\n    {\n        return;\n    }\n\n    protected function _initSession()\n    {\n        $options = $this->getOptions();\n        if (!empty($options['session'])) {\n            Zend_Session::setOptions($options['session']);\n        }\n\n        Zend_Session::start();\n\n        foreach ($_COOKIE as $name => $value) { // remove unused cookies\n            if ($name[0] == 'w' && strrpos('_height', $name) !== FALSE) {\n                setcookie($name, '', time() - 3600);\n            }\n        }\n    }\n\n    /**\n     * Name must be _initContainer because bootstrap create resource named \"container\", \n     * and if we change function name, then resource name will be also changed.\n     */\n    protected function _initContainer()\n    {\n        $this->bootstrap('autoloader');\n        return Zend_Registry::get('container');\n    }\n\n    protected function _initDatabaseObject() \n    {\n        $container = $this->getResource('container');\n        DatabaseObject::setEventDispatcher($container->getService('event_dispatcher'));\n        DatabaseObject::setResourceNames($container->getParameter('resourceNames'));\n    }\n\n    protected function _initPlugins()\n    {\n        $options = $this->getOptions();\n        $front = Zend_Controller_Front::getInstance();\n        $front->registerPlugin(new Application_Plugin_ContentType());\n        $front->registerPlugin(new Application_Plugin_Upgrade());\n        $front->registerPlugin(new Application_Plugin_Auth($options['auth']));\n        $front->registerPlugin(new Application_Plugin_Acl($options['acl']));\n    }\n\n    protected function _initRouter()\n    {\n        $this->bootstrap('container');\n        $routerFactory = new \\Newscoop\\Router\\RouterFactory();\n        $routerFactory->initRouter(\\Zend_Registry::get('container'));\n    }\n\n    protected function _initActionHelpers()\n    {\n        require_once APPLICATION_PATH . '/controllers/helpers/Smarty.php';\n        Zend_Controller_Action_HelperBroker::addHelper(new Action_Helper_Smarty());\n    }\n\n    protected function _initOdm()\n    {\n        return null;\n    }\n\n    /**\n     */\n    protected function _initLog()\n    {\n        $writer = new Zend_Log_Writer_Syslog(array('application' => 'Newscoop'));\n        $log = new Zend_Log($writer);\n        \\Zend_Registry::set('log', $log);\n        return $log;\n    }\n\n    protected function _initAuthStorage()\n    {\n        $storage = new Zend_Auth_Storage_Session('Zend_Auth_Storage');\n        Zend_Auth::getInstance()->setStorage($storage);\n    }\n\n    protected function _initAdoDb()\n    {\n        require_once __DIR__ . '/../db_connect.php';\n    }\n}\n"
  },
  {
    "path": "newscoop/application/SymfonyRequirements.php",
    "content": "<?php\n\n/*\n * This file is part of the Symfony package.\n *\n * (c) Fabien Potencier <fabien@symfony.com>\n *\n * For the full copyright and license information, please view the LICENSE\n * file that was distributed with this source code.\n */\n\n/*\n * Users of PHP 5.2 should be able to run the requirements checks.\n * This is why the file and all classes must be compatible with PHP 5.2+\n * (e.g. not using namespaces and closures).\n *\n * ************** CAUTION **************\n *\n * DO NOT EDIT THIS FILE as it will be overriden by Composer as part of\n * the installation/update process. The original file resides in the\n * SensioDistributionBundle.\n *\n * ************** CAUTION **************\n */\n\n/**\n * Represents a single PHP requirement, e.g. an installed extension.\n * It can be a mandatory requirement or an optional recommendation.\n * There is a special subclass, named PhpIniRequirement, to check a php.ini configuration.\n *\n * @author Tobias Schultze <http://tobion.de>\n */\nclass Requirement\n{\n    private $fulfilled;\n    private $testMessage;\n    private $helpText;\n    private $helpHtml;\n    private $optional;\n\n    /**\n     * Constructor that initializes the requirement.\n     *\n     * @param Boolean      $fulfilled     Whether the requirement is fulfilled\n     * @param string       $testMessage   The message for testing the requirement\n     * @param string       $helpHtml      The help text formatted in HTML for resolving the problem\n     * @param string|null  $helpText      The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags)\n     * @param Boolean      $optional      Whether this is only an optional recommendation not a mandatory requirement\n     */\n    public function __construct($fulfilled, $testMessage, $helpHtml, $helpText = null, $optional = false)\n    {\n        $this->fulfilled = (Boolean) $fulfilled;\n        $this->testMessage = (string) $testMessage;\n        $this->helpHtml = (string) $helpHtml;\n        $this->helpText = null === $helpText ? strip_tags($this->helpHtml) : (string) $helpText;\n        $this->optional = (Boolean) $optional;\n    }\n\n    /**\n     * Returns whether the requirement is fulfilled.\n     *\n     * @return Boolean true if fulfilled, otherwise false\n     */\n    public function isFulfilled()\n    {\n        return $this->fulfilled;\n    }\n\n    /**\n     * Returns the message for testing the requirement.\n     *\n     * @return string The test message\n     */\n    public function getTestMessage()\n    {\n        return $this->testMessage;\n    }\n\n    /**\n     * Returns the help text for resolving the problem\n     *\n     * @return string The help text\n     */\n    public function getHelpText()\n    {\n        return $this->helpText;\n    }\n\n    /**\n     * Returns the help text formatted in HTML.\n     *\n     * @return string The HTML help\n     */\n    public function getHelpHtml()\n    {\n        return $this->helpHtml;\n    }\n\n    /**\n     * Returns whether this is only an optional recommendation and not a mandatory requirement.\n     *\n     * @return Boolean true if optional, false if mandatory\n     */\n    public function isOptional()\n    {\n        return $this->optional;\n    }\n}\n\n/**\n * Represents a PHP requirement in form of a php.ini configuration.\n *\n * @author Tobias Schultze <http://tobion.de>\n */\nclass PhpIniRequirement extends Requirement\n{\n    /**\n     * Constructor that initializes the requirement.\n     *\n     * @param string            $cfgName            The configuration name used for ini_get()\n     * @param Boolean|callback  $evaluation         Either a Boolean indicating whether the configuration should evaluate to true or false,\n                                                    or a callback function receiving the configuration value as parameter to determine the fulfillment of the requirement\n     * @param Boolean           $approveCfgAbsence  If true the Requirement will be fulfilled even if the configuration option does not exist, i.e. ini_get() returns false.\n                                                    This is helpful for abandoned configs in later PHP versions or configs of an optional extension, like Suhosin.\n                                                    Example: You require a config to be true but PHP later removes this config and defaults it to true internally.\n     * @param string|null       $testMessage        The message for testing the requirement (when null and $evaluation is a Boolean a default message is derived)\n     * @param string|null       $helpHtml           The help text formatted in HTML for resolving the problem (when null and $evaluation is a Boolean a default help is derived)\n     * @param string|null       $helpText           The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags)\n     * @param Boolean           $optional           Whether this is only an optional recommendation not a mandatory requirement\n     */\n    public function __construct($cfgName, $evaluation, $approveCfgAbsence = false, $testMessage = null, $helpHtml = null, $helpText = null, $optional = false)\n    {\n        $cfgValue = ini_get($cfgName);\n\n        if (is_callable($evaluation)) {\n            if (null === $testMessage || null === $helpHtml) {\n                throw new InvalidArgumentException('You must provide the parameters testMessage and helpHtml for a callback evaluation.');\n            }\n\n            $fulfilled = call_user_func($evaluation, $cfgValue);\n        } else {\n            if (null === $testMessage) {\n                $testMessage = sprintf('%s %s be %s in php.ini',\n                    $cfgName,\n                    $optional ? 'should' : 'must',\n                    $evaluation ? 'enabled' : 'disabled'\n                );\n            }\n\n            if (null === $helpHtml) {\n                $helpHtml = sprintf('Set <strong>%s</strong> to <strong>%s</strong> in php.ini<a href=\"#phpini\">*</a>.',\n                    $cfgName,\n                    $evaluation ? 'on' : 'off'\n                );\n            }\n\n            $fulfilled = $evaluation == $cfgValue;\n        }\n\n        parent::__construct($fulfilled || ($approveCfgAbsence && false === $cfgValue), $testMessage, $helpHtml, $helpText, $optional);\n    }\n}\n\n/**\n * A RequirementCollection represents a set of Requirement instances.\n *\n * @author Tobias Schultze <http://tobion.de>\n */\nclass RequirementCollection implements IteratorAggregate\n{\n    private $requirements = array();\n\n    /**\n     * Gets the current RequirementCollection as an Iterator.\n     *\n     * @return Traversable A Traversable interface\n     */\n    public function getIterator()\n    {\n        return new ArrayIterator($this->requirements);\n    }\n\n    /**\n     * Adds a Requirement.\n     *\n     * @param Requirement $requirement A Requirement instance\n     */\n    public function add(Requirement $requirement)\n    {\n        $this->requirements[] = $requirement;\n    }\n\n    /**\n     * Adds a mandatory requirement.\n     *\n     * @param Boolean      $fulfilled     Whether the requirement is fulfilled\n     * @param string       $testMessage   The message for testing the requirement\n     * @param string       $helpHtml      The help text formatted in HTML for resolving the problem\n     * @param string|null  $helpText      The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags)\n     */\n    public function addRequirement($fulfilled, $testMessage, $helpHtml, $helpText = null)\n    {\n        $this->add(new Requirement($fulfilled, $testMessage, $helpHtml, $helpText, false));\n    }\n\n    /**\n     * Adds an optional recommendation.\n     *\n     * @param Boolean      $fulfilled     Whether the recommendation is fulfilled\n     * @param string       $testMessage   The message for testing the recommendation\n     * @param string       $helpHtml      The help text formatted in HTML for resolving the problem\n     * @param string|null  $helpText      The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags)\n     */\n    public function addRecommendation($fulfilled, $testMessage, $helpHtml, $helpText = null)\n    {\n        $this->add(new Requirement($fulfilled, $testMessage, $helpHtml, $helpText, true));\n    }\n\n    /**\n     * Adds a mandatory requirement in form of a php.ini configuration.\n     *\n     * @param string            $cfgName            The configuration name used for ini_get()\n     * @param Boolean|callback  $evaluation         Either a Boolean indicating whether the configuration should evaluate to true or false,\n                                                    or a callback function receiving the configuration value as parameter to determine the fulfillment of the requirement\n     * @param Boolean           $approveCfgAbsence  If true the Requirement will be fulfilled even if the configuration option does not exist, i.e. ini_get() returns false.\n                                                    This is helpful for abandoned configs in later PHP versions or configs of an optional extension, like Suhosin.\n                                                    Example: You require a config to be true but PHP later removes this config and defaults it to true internally.\n     * @param string            $testMessage        The message for testing the requirement (when null and $evaluation is a Boolean a default message is derived)\n     * @param string            $helpHtml           The help text formatted in HTML for resolving the problem (when null and $evaluation is a Boolean a default help is derived)\n     * @param string|null       $helpText           The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags)\n     */\n    public function addPhpIniRequirement($cfgName, $evaluation, $approveCfgAbsence = false, $testMessage = null, $helpHtml = null, $helpText = null)\n    {\n        $this->add(new PhpIniRequirement($cfgName, $evaluation, $approveCfgAbsence, $testMessage, $helpHtml, $helpText, false));\n    }\n\n    /**\n     * Adds an optional recommendation in form of a php.ini configuration.\n     *\n     * @param string            $cfgName            The configuration name used for ini_get()\n     * @param Boolean|callback  $evaluation         Either a Boolean indicating whether the configuration should evaluate to true or false,\n                                                    or a callback function receiving the configuration value as parameter to determine the fulfillment of the requirement\n     * @param Boolean           $approveCfgAbsence  If true the Requirement will be fulfilled even if the configuration option does not exist, i.e. ini_get() returns false.\n                                                    This is helpful for abandoned configs in later PHP versions or configs of an optional extension, like Suhosin.\n                                                    Example: You require a config to be true but PHP later removes this config and defaults it to true internally.\n     * @param string            $testMessage        The message for testing the requirement (when null and $evaluation is a Boolean a default message is derived)\n     * @param string            $helpHtml           The help text formatted in HTML for resolving the problem (when null and $evaluation is a Boolean a default help is derived)\n     * @param string|null       $helpText           The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags)\n     */\n    public function addPhpIniRecommendation($cfgName, $evaluation, $approveCfgAbsence = false, $testMessage = null, $helpHtml = null, $helpText = null)\n    {\n        $this->add(new PhpIniRequirement($cfgName, $evaluation, $approveCfgAbsence, $testMessage, $helpHtml, $helpText, true));\n    }\n\n    /**\n     * Adds a requirement collection to the current set of requirements.\n     *\n     * @param RequirementCollection $collection A RequirementCollection instance\n     */\n    public function addCollection(RequirementCollection $collection)\n    {\n        $this->requirements = array_merge($this->requirements, $collection->all());\n    }\n\n    /**\n     * Returns both requirements and recommendations.\n     *\n     * @return array Array of Requirement instances\n     */\n    public function all()\n    {\n        return $this->requirements;\n    }\n\n    /**\n     * Returns all mandatory requirements.\n     *\n     * @return array Array of Requirement instances\n     */\n    public function getRequirements()\n    {\n        $array = array();\n        foreach ($this->requirements as $req) {\n            if (!$req->isOptional()) {\n                $array[] = $req;\n            }\n        }\n\n        return $array;\n    }\n\n    /**\n     * Returns the mandatory requirements that were not met.\n     *\n     * @return array Array of Requirement instances\n     */\n    public function getFailedRequirements()\n    {\n        $array = array();\n        foreach ($this->requirements as $req) {\n            if (!$req->isFulfilled() && !$req->isOptional()) {\n                $array[] = $req;\n            }\n        }\n\n        return $array;\n    }\n\n    /**\n     * Returns all optional recommmendations.\n     *\n     * @return array Array of Requirement instances\n     */\n    public function getRecommendations()\n    {\n        $array = array();\n        foreach ($this->requirements as $req) {\n            if ($req->isOptional()) {\n                $array[] = $req;\n            }\n        }\n\n        return $array;\n    }\n\n    /**\n     * Returns the recommendations that were not met.\n     *\n     * @return array Array of Requirement instances\n     */\n    public function getFailedRecommendations()\n    {\n        $array = array();\n        foreach ($this->requirements as $req) {\n            if (!$req->isFulfilled() && $req->isOptional()) {\n                $array[] = $req;\n            }\n        }\n\n        return $array;\n    }\n\n    /**\n     * Returns whether a php.ini configuration is not correct.\n     *\n     * @return Boolean php.ini configuration problem?\n     */\n    public function hasPhpIniConfigIssue()\n    {\n        foreach ($this->requirements as $req) {\n            if (!$req->isFulfilled() && $req instanceof PhpIniRequirement) {\n                return true;\n            }\n        }\n\n        return false;\n    }\n\n    /**\n     * Returns the PHP configuration file (php.ini) path.\n     *\n     * @return string|false php.ini file path\n     */\n    public function getPhpIniConfigPath()\n    {\n        return get_cfg_var('cfg_file_path');\n    }\n}\n\n/**\n * This class specifies all requirements and optional recommendations that\n * are necessary to run the Symfony Standard Edition.\n *\n * @author Tobias Schultze <http://tobion.de>\n * @author Fabien Potencier <fabien@symfony.com>\n */\nclass SymfonyRequirements extends RequirementCollection\n{\n    const REQUIRED_PHP_VERSION = '5.3.3';\n\n    /**\n     * Constructor that initializes the requirements.\n     */\n    public function __construct()\n    {\n        /* mandatory requirements follow */\n\n        $installedPhpVersion = phpversion();\n\n        $this->addRequirement(\n            version_compare($installedPhpVersion, self::REQUIRED_PHP_VERSION, '>='),\n            sprintf('PHP version must be at least %s (%s installed)', self::REQUIRED_PHP_VERSION, $installedPhpVersion),\n            sprintf('You are running PHP version \"<strong>%s</strong>\", but Symfony needs at least PHP \"<strong>%s</strong>\" to run.\n                Before using Symfony, upgrade your PHP installation, preferably to the latest version.',\n                $installedPhpVersion, self::REQUIRED_PHP_VERSION),\n            sprintf('Install PHP %s or newer (installed version is %s)', self::REQUIRED_PHP_VERSION, $installedPhpVersion)\n        );\n\n        $this->addRequirement(\n            version_compare($installedPhpVersion, '5.3.16', '!='),\n            'PHP version must not be 5.3.16 as Symfony won\\'t work properly with it',\n            'Install PHP 5.3.17 or newer (or downgrade to an earlier PHP version)'\n        );\n\n        $this->addRequirement(\n            is_dir(__DIR__.'/../vendor/composer'),\n            'Vendor libraries must be installed',\n            'Vendor libraries are missing. Install composer following instructions from <a href=\"http://getcomposer.org/\">http://getcomposer.org/</a>. ' .\n                'Then run \"<strong>php composer.phar install</strong>\" to install them.'\n        );\n\n        $baseDir = basename(__DIR__);\n\n        $this->addRequirement(\n            is_writable(__DIR__.'/cache'),\n            \"$baseDir/cache/ directory must be writable\",\n            \"Change the permissions of the \\\"<strong>$baseDir/cache/</strong>\\\" directory so that the web server can write into it.\"\n        );\n\n        $this->addRequirement(\n            is_writable(__DIR__.'/logs'),\n            \"$baseDir/logs/ directory must be writable\",\n            \"Change the permissions of the \\\"<strong>$baseDir/logs/</strong>\\\" directory so that the web server can write into it.\"\n        );\n\n        $this->addPhpIniRequirement(\n            'date.timezone', true, false,\n            'date.timezone setting must be set',\n            'Set the \"<strong>date.timezone</strong>\" setting in php.ini<a href=\"#phpini\">*</a> (like Europe/Paris).'\n        );\n\n        if (version_compare($installedPhpVersion, self::REQUIRED_PHP_VERSION, '>=')) {\n            $this->addRequirement(\n                (in_array(date_default_timezone_get(), DateTimeZone::listIdentifiers())),\n                sprintf('Configured default timezone \"%s\" must be supported by your installation of PHP', date_default_timezone_get()),\n                'Your default timezone is not supported by PHP. Check for typos in your <strong>php.ini</strong> file and have a look at the list of deprecated timezones at <a href=\"http://php.net/manual/en/timezones.others.php\">http://php.net/manual/en/timezones.others.php</a>.'\n            );\n        }\n\n        $this->addRequirement(\n            function_exists('json_encode'),\n            'json_encode() must be available',\n            'Install and enable the <strong>JSON</strong> extension.'\n        );\n\n        $this->addRequirement(\n            function_exists('session_start'),\n            'session_start() must be available',\n            'Install and enable the <strong>session</strong> extension.'\n        );\n\n        $this->addRequirement(\n            function_exists('ctype_alpha'),\n            'ctype_alpha() must be available',\n            'Install and enable the <strong>ctype</strong> extension.'\n        );\n\n        $this->addRequirement(\n            function_exists('token_get_all'),\n            'token_get_all() must be available',\n            'Install and enable the <strong>Tokenizer</strong> extension.'\n        );\n\n        $this->addRequirement(\n            function_exists('simplexml_import_dom'),\n            'simplexml_import_dom() must be available',\n            'Install and enable the <strong>SimpleXML</strong> extension.'\n        );\n\n        if (function_exists('apc_store') && ini_get('apc.enabled')) {\n            $this->addRequirement(\n                version_compare(phpversion('apc'), '3.0.17', '>='),\n                'APC version must be at least 3.0.17',\n                'Upgrade your <strong>APC</strong> extension (3.0.17+).'\n            );\n        }\n\n        $this->addPhpIniRequirement('detect_unicode', false);\n\n        if (extension_loaded('suhosin')) {\n            $this->addPhpIniRequirement(\n                'suhosin.executor.include.whitelist',\n                create_function('$cfgValue', 'return false !== stripos($cfgValue, \"phar\");'),\n                false,\n                'suhosin.executor.include.whitelist must be configured correctly in php.ini',\n                'Add \"<strong>phar</strong>\" to <strong>suhosin.executor.include.whitelist</strong> in php.ini<a href=\"#phpini\">*</a>.'\n            );\n        }\n\n        if (extension_loaded('xdebug')) {\n            $this->addPhpIniRequirement(\n                'xdebug.show_exception_trace', false, true\n            );\n\n            $this->addPhpIniRequirement(\n                'xdebug.scream', false, true\n            );\n        }\n\n        $pcreVersion = defined('PCRE_VERSION') ? (float) PCRE_VERSION : null;\n\n        $this->addRequirement(\n            null !== $pcreVersion && $pcreVersion > 8.0,\n            sprintf('PCRE extension must be available and at least 8.0 (%s installed)', $pcreVersion ? $pcreVersion : 'not'),\n            'Upgrade your <strong>PCRE</strong> extension (8.0+).'\n        );\n\n        /* optional recommendations follow */\n\n        $this->addRecommendation(\n            file_get_contents(__FILE__) === file_get_contents(__DIR__.'/../vendor/sensio/distribution-bundle/Sensio/Bundle/DistributionBundle/Resources/skeleton/app/SymfonyRequirements.php'),\n            'Requirements file should be up-to-date',\n            'Your requirements file is outdated. Run composer install and re-check your configuration.'\n        );\n\n        $this->addRecommendation(\n            version_compare($installedPhpVersion, '5.3.4', '>='),\n            'You should use at least PHP 5.3.4 due to PHP bug #52083 in earlier versions',\n            'Your project might malfunction randomly due to PHP bug #52083 (\"Notice: Trying to get property of non-object\"). Install PHP 5.3.4 or newer.'\n        );\n        \n        $this->addRecommendation(\n            version_compare($installedPhpVersion, '5.3.8', '>='),\n            'When using annotations you should have at least PHP 5.3.8 due to PHP bug #55156',\n            'Install PHP 5.3.8 or newer if your project uses annotations.'\n        );\n\n        $this->addRecommendation(\n            version_compare($installedPhpVersion, '5.4.0', '!='),\n            'You should not use PHP 5.4.0 due to the PHP bug #61453',\n            'Your project might not work properly due to the PHP bug #61453 (\"Cannot dump definitions which have method calls\"). Install PHP 5.4.1 or newer.'\n        );\n\n        $this->addRecommendation(\n            class_exists('DomDocument'),\n            'PHP-XML module should be installed',\n            'Install and enable the <strong>PHP-XML</strong> module.'\n        );\n\n        $this->addRecommendation(\n            function_exists('mb_strlen'),\n            'mb_strlen() should be available',\n            'Install and enable the <strong>mbstring</strong> extension.'\n        );\n\n        $this->addRecommendation(\n            function_exists('iconv'),\n            'iconv() should be available',\n            'Install and enable the <strong>iconv</strong> extension.'\n        );\n\n        $this->addRecommendation(\n            function_exists('utf8_decode'),\n            'utf8_decode() should be available',\n            'Install and enable the <strong>XML</strong> extension.'\n        );\n\n        if (!defined('PHP_WINDOWS_VERSION_BUILD')) {\n            $this->addRecommendation(\n                function_exists('posix_isatty'),\n                'posix_isatty() should be available',\n                'Install and enable the <strong>php_posix</strong> extension (used to colorize the CLI output).'\n            );\n        }\n\n        $this->addRecommendation(\n            class_exists('Locale'),\n            'intl extension should be available',\n            'Install and enable the <strong>intl</strong> extension (used for validators).'\n        );\n\n        if (class_exists('Collator')) {\n            $this->addRecommendation(\n                null !== new Collator('fr_FR'),\n                'intl extension should be correctly configured',\n                'The intl extension does not behave properly. This problem is typical on PHP 5.3.X x64 WIN builds.'\n            );\n        }\n\n        if (class_exists('Locale')) {\n            if (defined('INTL_ICU_VERSION')) {\n                $version = INTL_ICU_VERSION;\n            } else {\n                $reflector = new ReflectionExtension('intl');\n\n                ob_start();\n                $reflector->info();\n                $output = strip_tags(ob_get_clean());\n\n                preg_match('/^ICU version +(?:=> )?(.*)$/m', $output, $matches);\n                $version = $matches[1];\n            }\n\n            $this->addRecommendation(\n                version_compare($version, '4.0', '>='),\n                'intl ICU version should be at least 4+',\n                'Upgrade your <strong>intl</strong> extension with a newer ICU version (4+).'\n            );\n        }\n\n        $accelerator =\n            (function_exists('apc_store') && ini_get('apc.enabled'))\n            ||\n            function_exists('eaccelerator_put') && ini_get('eaccelerator.enable')\n            ||\n            function_exists('xcache_set')\n        ;\n\n        $this->addRecommendation(\n            $accelerator,\n            'a PHP accelerator should be installed',\n            'Install and enable a <strong>PHP accelerator</strong> like APC (highly recommended).'\n        );\n\n        $this->addPhpIniRecommendation('short_open_tag', false);\n\n        $this->addPhpIniRecommendation('magic_quotes_gpc', false, true);\n\n        $this->addPhpIniRecommendation('register_globals', false, true);\n\n        $this->addPhpIniRecommendation('session.auto_start', false);\n\n        $this->addRecommendation(\n            class_exists('PDO'),\n            'PDO should be installed',\n            'Install <strong>PDO</strong> (mandatory for Doctrine).'\n        );\n\n        if (class_exists('PDO')) {\n            $drivers = PDO::getAvailableDrivers();\n            $this->addRecommendation(\n                count($drivers),\n                sprintf('PDO should have some drivers installed (currently available: %s)', count($drivers) ? implode(', ', $drivers) : 'none'),\n                'Install <strong>PDO drivers</strong> (mandatory for Doctrine).'\n            );\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/application/autoload.php",
    "content": "<?php\n\nuse Doctrine\\Common\\Annotations\\AnnotationRegistry;\n\nif (!$loader = @include __DIR__.'/../vendor/autoload.php') {\n\n    $message = <<< EOF\n<p>You must set up the project dependencies by running the following commands:</p>\n<pre>\n    curl -s http://getcomposer.org/installer | php\n    php composer.phar install\n</pre>\n\nEOF;\n\n    if (PHP_SAPI === 'cli') {\n        $message = strip_tags($message);\n    }\n\n    die($message);\n}\n\nAnnotationRegistry::registerLoader(array($loader, 'loadClass'));\n\nreturn $loader;\n"
  },
  {
    "path": "newscoop/application/check.php",
    "content": "<?php\n\nrequire_once dirname(__FILE__).'/SymfonyRequirements.php';\n\n$symfonyRequirements = new SymfonyRequirements();\n\n$iniPath = $symfonyRequirements->getPhpIniConfigPath();\n\necho \"********************************\\n\";\necho \"*                              *\\n\";\necho \"*  Symfony requirements check  *\\n\";\necho \"*                              *\\n\";\necho \"********************************\\n\\n\";\n\necho $iniPath ? sprintf(\"* Configuration file used by PHP: %s\\n\\n\", $iniPath) : \"* WARNING: No configuration file (php.ini) used by PHP!\\n\\n\";\n\necho \"** ATTENTION **\\n\";\necho \"*  The PHP CLI can use a different php.ini file\\n\";\necho \"*  than the one used with your web server.\\n\";\nif ('\\\\' == DIRECTORY_SEPARATOR) {\n    echo \"*  (especially on the Windows platform)\\n\";\n}\necho \"*  To be on the safe side, please also launch the requirements check\\n\";\necho \"*  from your web server using the web/config.php script.\\n\";\n\necho_title('Mandatory requirements');\n\nforeach ($symfonyRequirements->getRequirements() as $req) {\n    echo_requirement($req);\n}\n\necho_title('Optional recommendations');\n\nforeach ($symfonyRequirements->getRecommendations() as $req) {\n    echo_requirement($req);\n}\n\n/**\n * Prints a Requirement instance\n */\nfunction echo_requirement(Requirement $requirement)\n{\n    $result = $requirement->isFulfilled() ? 'OK' : ($requirement->isOptional() ? 'WARNING' : 'ERROR');\n    echo ' ' . str_pad($result, 9);\n    echo $requirement->getTestMessage() . \"\\n\";\n\n    if (!$requirement->isFulfilled()) {\n        echo sprintf(\"          %s\\n\\n\", $requirement->getHelpText());\n    }\n}\n\nfunction echo_title($title)\n{\n    echo \"\\n** $title **\\n\\n\";\n}\n"
  },
  {
    "path": "newscoop/application/configs/parameters/parameters.yml",
    "content": "parameters:\n    phpSettings:\n        display_startup_errors: \"0\"\n        display_errors: \"0\"\n    includePaths:\n        library: \"%application_path%/../library\"\n    bootstrap:\n        path: \"%application_path%/Bootstrap.php\"\n        class: \"Bootstrap\"\n    appnamespace: \"Application\"\n    resources:\n        frontController:\n            controllerDirectory: \"%application_path%/controllers\"\n            params:\n                displayExceptions: \"0\"\n            moduleDirectory: \"%application_path%/modules\"\n            actionHelperPaths:\n                Action_Helper: \"%application_path%/controllers/helpers\"\n        layout:\n            layoutPath: \"%application_path%/layouts/scripts/\"\n        view: \"\"\n        modules:\n            - \"\"\n        session:\n            throw_startup_exceptions: false\n    pluginPaths:\n        Resource: \"%application_path%/../library/Resource\"\n    session:\n        cookie_path: \"/\"\n    translation:\n        path: \"%application_path%/languages\"\n    doctrine:\n        cache: \"array\"\n        entity:\n            dir: \"%application_path%/../library/Newscoop\"\n        proxy:\n            dir: \"%application_path%/../library/Proxy\"\n            namespace: \"Proxy\"\n            autogenerate: false\n        functions:\n            rand: \"Newscoop\\Query\\MysqlRandom\"\n    admin:\n        resources:\n            layout:\n                jsUrl: \"/js/app/admin\"\n                jsPath: \"%application_path%/../js/app/admin\"\n                layout: \"admin\"\n            acl:\n                modules:\n                    - \"admin\"\n                cache: \"Doctrine\\Common\\Cache\\ArrayCache\"\n            view: \"\"\n    autoloader:\n        dirs:\n            - \"%application_path%/../classes\"\n            - \"%application_path%/../classes/Extension\"\n            - \"%application_path%/../template_engine/classes\"\n            - \"%application_path%/../template_engine/metaclasses\"\n    resourceNames:\n        Aliases: \"alias\"\n        ArticleAttachments: \"article-attachment\"\n        ArticleAuthors: \"article-author\"\n        ArticleImages: \"article-image\"\n        ArticlePublish: \"article-publish\"\n        Articles: \"article\"\n        ArticleTopics: \"article-topic\"\n        ArticleTypeMetadata: \"article-metadata\"\n        Attachments: \"attachment\"\n        AuditEvent: \"audit-event\"\n        AuthorAliases: \"author-alias\"\n        AuthorBiographies: \"author-biography\"\n        Authors: \"author\"\n        AuthorTypes: \"author-type\"\n        Countries: \"county\"\n        Images: \"image\"\n        Issues: \"issue\"\n        Languages: \"language\"\n        Locations: \"location\"\n        Maps: \"map\"\n        Plugins: \"plugin\"\n        Publication: \"publication\"\n        Sections: \"section\"\n        Subscriptions: \"subscription\"\n        SystemPreferences: \"system-preferences\"\n        Templates: \"template\"\n        Topics: \"topic\"\n        Translations: \"translation\"\n    auth:\n        modules:\n            - \"admin\"\n        ignore:\n            - \"auth\"\n            - \"error\"\n            - \"legacy\"\n            - \"login.php\"\n            - \"password_recovery.php\"\n            - \"password_check_token.php\"\n    acl:\n        modules:\n            - \"admin\"\n        ignore:\n            - \"auth\"\n            - \"error\"\n            - \"legacy\"\n            - \"login.php\"\n            - \"password_recovery.php\"\n            - \"password_check_token.php\"\n    email:\n        from: \"no-reply@domain.com\"\n        contact: \"info@domain.com\"\n    blog:\n        role: \"6\"\n        publication: \"5\"\n        issue: \"3\"\n        type: \"bloginfo\"\n        article_type: \"blog\"\n    image:\n        image_path: \"%application_path%/../images/\"\n        image_prefix: \"cms-image-\"\n        thumbnail_path: \"%application_path%/../images/thumbnails/\"\n        thumbnail_prefix: \"cms-thumb-\"\n        thumbnail_max_size: \"64\"\n        cache_url: \"images/cache\"\n        cache_path: \"%application_path%/../images/cache/\"\n    attachment:\n        file_base_url: \"files/\"\n        file_directory: \"%application_path%/../public/files/\"\n        file_num_dirs_level_1: 1000\n        file_num_dirs_level_2: 1000\n    subscriptions.service.class: \"Newscoop\\Services\\SubscriptionService\"\n    plugins:\n        internal_memory_limit: ''\n    scheduler:\n        environment: 'prod'\n    simple_security:\n        users_file: \"%application_path%/configs/security/users.json\"\n    remember_me.lifetime: 31536000 # 1 year in seconds\n    doctrine.charset: utf8mb4 # requires Mysql server version >= 5.5.3\n"
  },
  {
    "path": "newscoop/application/configs/parameters/parameters_cli.yml",
    "content": "parameters:\n    admin:\n        resources:\n            acl:\n                cache: \"Doctrine\\Common\\Cache\\ArrayCache\"\n    doctrine:\n        cache: \"array\"\n    scheduler:\n        environment: 'cli'\n"
  },
  {
    "path": "newscoop/application/configs/parameters/parameters_development.yml",
    "content": "parameters:\n    admin:\n        resources:\n            acl:\n                cache: \"Doctrine\\Common\\Cache\\ArrayCache\"\n    doctrine:\n        cache: \"array\"\n    phpSettings:\n        display_startup_errors: \"1\"\n        display_errors: \"1\"\n    resources:\n        frontController:\n            params:\n                displayExceptions: \"1\"\n    session:\n        cookie_domain: \"\"\n    scheduler:\n        environment: 'dev'\n"
  },
  {
    "path": "newscoop/application/configs/parameters/parameters_testing.yml",
    "content": "parameters:\n    admin:\n        resources:\n            acl:\n                cache: \"Doctrine\\Common\\Cache\\ArrayCache\"\n    audit:\n        events: false\n    community_feed:\n        events: false\n    doctrine:\n        cache: \"array\"\n        database:\n            driver: \"pdo_sqlite\"\n            path: \":memory:\"\n        functions:\n            rand: \"Newscoop\\Query\\SqliteRandom\"\n   phpSettings:\n        display_startup_errors: true\n        display_errors: true\n    resources:\n        frontController:\n            params:\n                displayExceptions: true\n    scheduler:\n        environment: 'test'\n"
  },
  {
    "path": "newscoop/application/configs/security/.gitkeep",
    "content": ""
  },
  {
    "path": "newscoop/application/configs/services/audit.yml",
    "content": "services:\n    audit:\n        class:      Newscoop\\Services\\AuditService\n        arguments:  [\"@em\", \"@user\"]\n        tags:\n            -  { name: kernel.event_listener, event: comment.update, method: update }\n            -  { name: kernel.event_listener, event: comment.delete, method: update }\n            -  { name: kernel.event_listener, event: alias.create, method: update }\n            -  { name: kernel.event_listener, event: alias.update, method: update }\n            -  { name: kernel.event_listener, event: alias.delete, method: update }\n            -  { name: kernel.event_listener, event: article-attachment.create, method: update }\n            -  { name: kernel.event_listener, event: article-attachment.delete, method: update }\n            -  { name: kernel.event_listener, event: article-author.create, method: update }\n            -  { name: kernel.event_listener, event: article-author.delete, method: update }\n            -  { name: kernel.event_listener, event: article-image.create, method: update }\n            -  { name: kernel.event_listener, event: article-image.delete, method: update }\n            -  { name: kernel.event_listener, event: article-publish.create, method: update }\n            -  { name: kernel.event_listener, event: article.create, method: update }\n            -  { name: kernel.event_listener, event: article.delete, method: update }\n            -  { name: kernel.event_listener, event: article-topic.attach, method: update }\n            -  { name: kernel.event_listener, event: article-topic.detach, method: update }\n            -  { name: kernel.event_listener, event: article-metadata.create, method: update }\n            -  { name: kernel.event_listener, event: article-metadata.delete, method: update }\n            -  { name: kernel.event_listener, event: attachment.create, method: update }\n            -  { name: kernel.event_listener, event: attachment.delete, method: update }\n            -  { name: kernel.event_listener, event: author-alias.create, method: update }\n            -  { name: kernel.event_listener, event: author-alias.delete, method: update }\n            -  { name: kernel.event_listener, event: author-biography.create, method: update }\n            -  { name: kernel.event_listener, event: author-biography.delete, method: update }\n            -  { name: kernel.event_listener, event: author.create, method: update }\n            -  { name: kernel.event_listener, event: author.delete, method: update }\n            -  { name: kernel.event_listener, event: author-type.create, method: update }\n            -  { name: kernel.event_listener, event: author-type.delete, method: update }\n            -  { name: kernel.event_listener, event: county.create, method: update }\n            -  { name: kernel.event_listener, event: county.delete, method: update }\n            -  { name: kernel.event_listener, event: image.create, method: update }\n            -  { name: kernel.event_listener, event: image.delete, method: update }\n            -  { name: kernel.event_listener, event: localimage.create, method: update }\n            -  { name: kernel.event_listener, event: localimage.delete, method: update }\n            -  { name: kernel.event_listener, event: issue.create, method: update }\n            -  { name: kernel.event_listener, event: issue.delete, method: update }\n            -  { name: kernel.event_listener, event: language.create, method: update }\n            -  { name: kernel.event_listener, event: language.delete, method: update }\n            -  { name: kernel.event_listener, event: location.create, method: update }\n            -  { name: kernel.event_listener, event: location.delete, method: update }\n            -  { name: kernel.event_listener, event: map.create, method: update }\n            -  { name: kernel.event_listener, event: map.delete, method: update }\n            -  { name: kernel.event_listener, event: plugin.create, method: update }\n            -  { name: kernel.event_listener, event: plugin.delete, method: update }\n            -  { name: kernel.event_listener, event: publication.create, method: update }\n            -  { name: kernel.event_listener, event: publication.delete, method: update }\n            -  { name: kernel.event_listener, event: section.create, method: update }\n            -  { name: kernel.event_listener, event: section.delete, method: update }\n            -  { name: kernel.event_listener, event: subscription.create, method: update }\n            -  { name: kernel.event_listener, event: subscription.delete, method: update }\n            -  { name: kernel.event_listener, event: system-preferences.create, method: update }\n            -  { name: kernel.event_listener, event: system-preferences.delete, method: update }\n            -  { name: kernel.event_listener, event: template.create, method: update }\n            -  { name: kernel.event_listener, event: template.delete, method: update }\n            -  { name: kernel.event_listener, event: topic.create, method: update }\n            -  { name: kernel.event_listener, event: topic.delete, method: update }\n            -  { name: kernel.event_listener, event: translation.create, method: update }\n            -  { name: kernel.event_listener, event: translation.delete, method: update }\n"
  },
  {
    "path": "newscoop/application/configs/services/comment.yml",
    "content": "services:\n    comment:\n        class:      Newscoop\\Services\\CommentService\n        arguments:  [\"@em\", \"@newscoop.publication_service\"]\n        tags:\n            -  { name: kernel.event_listener, event: comment.create, method: update }\n            -  { name: kernel.event_listener, event: comment.update, method: update }\n            -  { name: kernel.event_listener, event: comment.recommended, method: update }\n            -  { name: kernel.event_listener, event: comment.delete, method: update }"
  },
  {
    "path": "newscoop/application/configs/services/comment_notification.yml",
    "content": "services:\n    comment_notification:\n        class:      Newscoop\\Services\\CommentNotificationService\n        arguments:  [\"@email\", \"@comment\", \"@user\", \"@em\"]\n        tags:\n            -  { name: kernel.event_listener, event: comment.create, method: update }"
  },
  {
    "path": "newscoop/application/configs/services/services.yml",
    "content": "services:\n    doctrine.em:\n        alias: doctrine.orm.default_entity_manager\n    em:\n        alias: doctrine.em\n    dispatcher:\n        alias: event_dispatcher\n    doctrine.event_manager:\n        class:      Doctrine\\Common\\EventManager\n        factory_service:  doctrine.em\n        factory_method:   getEventManager\n    doctrine.connection:\n        class: Doctrine\\DBAL\\Connection\n        factory_service: doctrine.em\n        factory_method: getConnection\n    doctrine.adodb:\n        class:      Newscoop\\Doctrine\\AdoDbAdapter\n        arguments:  [\"@doctrine.connection\"]\n    image:\n        class:      Newscoop\\Image\\ImageService\n        arguments:  [\"%image%\", \"@em\", '@newscoop.cache']\n    attachment:\n        class:      Newscoop\\Services\\AttachmentService\n        arguments:  [\"%attachment%\", \"@em\", \"@router\", \"@user\"]\n    zend_auth:\n        class:      Zend_Auth\n        factory_class: Zend_Auth\n        factory_method: getInstance\n    user:\n        class:      Newscoop\\Services\\UserService\n        arguments:  [\"@em\", \"@zend_auth\", \"@security.context\"]\n        tags:\n            - { name: kernel.event_listener, event: user.set_points, method: updateUserPoints }\n    user.manager:\n        class:      Newscoop\\User\\UserManager\n        arguments:  [\"@em\"]\n    user.list:\n        class:      Newscoop\\Services\\ListUserService\n        arguments:  [\"%blog%\", \"@em\"]\n    user.token:\n        class:      Newscoop\\Services\\UserTokenService\n        arguments:  [\"@em\"]\n    user_type:\n        class:      Newscoop\\Services\\UserTypeService\n        arguments:  [\"@em\"]\n    author:\n        class:      Newscoop\\Services\\AuthorService\n        arguments:  [\"@em\"]\n    audit.maintenance:\n        class:      Newscoop\\Services\\AuditMaintenanceService\n        arguments:  [\"@em\"]\n    user.topic:\n        class:      Newscoop\\Services\\UserTopicService\n        arguments:  [\"@em\", \"@event_dispatcher\"]\n    auth.adapter:\n        class:      Newscoop\\Services\\Auth\\DoctrineAuthService\n        arguments:  [\"@em\"]\n    auth.adapter.social:\n        class:      Newscoop\\Services\\Auth\\SocialAuthService\n        arguments:  [\"@em\"]\n    article.link:\n        class:      Newscoop\\Article\\LinkService\n        arguments:  [\"@em\", \"@zend_router\", \"@router\"]\n    related_articles:\n        class:      Newscoop\\Services\\RelatedArticlesService\n        arguments:  [\"@em\"]\n    playlists:\n        class:      Newscoop\\Services\\PlaylistsService\n        arguments:  [\"@em\", \"@dispatcher\", \"@newscoop.cache\"]\n    article.repository:\n        class:      Doctrine\\Common\\Persistence\\ObjectRepository\n        factory_service: doctrine\n        factory_method: getRepository\n        arguments:  [\"\\\\Newscoop\\\\Entity\\\\Article\"]\n    comment.repository:\n        class:      Doctrine\\Common\\Persistence\\ObjectRepository\n        factory_service: doctrine\n        factory_method: getRepository\n        arguments:  [\"\\\\Newscoop\\\\Entity\\\\Comment\"]\n    email:\n        class:      Newscoop\\Services\\EmailService\n        arguments:  [\"@service_container\"]\n    blog:\n        class:      Newscoop\\Services\\BlogService\n        arguments:  [\"%blog%\", \"@em\"]\n    user.search:\n        class:      Newscoop\\Services\\UserSearchService\n        arguments:  [\"@em\"]\n    user.repository:\n        class:      Doctrine\\Common\\Persistence\\ObjectRepository\n        factory_service: doctrine\n        factory_method: getRepository\n        arguments:  [\"\\\\Newscoop\\\\Entity\\\\User\"]\n    content.publication:\n        class:      Newscoop\\Content\\PublicationService\n        arguments:  [\"@em\"]\n    content.section:\n        class:      Newscoop\\Content\\SectionService\n        arguments:  [\"@em\"]\n    content.type:\n        class:      Newscoop\\Content\\ContentTypeService\n        arguments:  [\"@em\"]\n    stat:\n        class:      Newscoop\\Services\\StatService\n        arguments:  [\"@em\"]\n    view:\n        class:      Newscoop\\View\\ViewFactory\n        factory_class:  Newscoop\\View\\ViewFactory\n        factory_method:   getView\n    view.helper.thumbnail:\n        class:      Newscoop\\Image\\ThumbnailViewHelper\n        arguments:  [\"@image\"]\n    view.helper.rendition:\n        class:      Newscoop\\Image\\RenditionViewHelper\n        arguments:  [\"@image\"]\n    image.rendition:\n        class:      Newscoop\\Image\\RenditionService\n        arguments:  [\"@em\", \"@image\"]\n    image.search:\n        class:      Newscoop\\Image\\ImageSearchService\n        arguments:  [\"@em\"]\n    package:\n        class:      Newscoop\\Package\\PackageService\n        arguments:  [\"@em\", \"@image\"]\n    package.search:\n        class:      Newscoop\\Package\\PackageSearchService\n        arguments:  [\"@em\"]\n    zend_router:\n        class:      Newscoop\\Router\\RouterFactory\n        factory_class:  Newscoop\\Router\\RouterFactory\n        factory_method: initRouter\n        arguments:  [\"@service_container\"]\n    subscription:\n        class:      Newscoop\\Subscription\\SubscriptionFacade\n        arguments:  [\"@em\"]\n    subscription.section:\n        class:      Newscoop\\Subscription\\SectionFacade\n        arguments:  [\"@em\"]\n    subscription.ip:\n        class:      Newscoop\\Subscription\\IpFacade\n        arguments:  [\"@em\"]\n    subscription.service:\n        class:      %subscriptions.service.class%\n        arguments:  [\"@em\"]\n    random:\n        class:      Newscoop\\Random\n    webcode:\n        class:      Newscoop\\WebcodeFacade\n        arguments:  [\"@em\", \"@random\"]\n    storage.adapter:\n        class:      Zend_Cloud_StorageService_Adapter_FileSystem\n        arguments:  [\"%storage%\"]\n    storage:\n        class:      Newscoop\\Storage\\StorageService\n        arguments:  [\"@storage.adapter\"]\n    image.update_storage:\n        class:      Newscoop\\Image\\UpdateStorageService\n        arguments:  [\"@em\", \"@storage\"]\n    notification:\n        class:      Newscoop\\Services\\NotificationService\n        arguments:  [\"@em\"]\n    topic:\n        alias: newscoop_newscoop.topic_service\n    index_client.default:\n        class: Newscoop\\Search\\DefaultIndexClient\n        arguments: [\"@service_container\"]\n    indexer.article:\n        class: Newscoop\\Search\\Indexer\n        arguments: [\"@service_container\", \"@search.article\", \"@article.repository\", \"indexer.article\"]\n    indexer.comment:\n        class: Newscoop\\Search\\Indexer\n        arguments: [\"@service_container\", \"@search.comment\", \"@comment.repository\", \"indexer.comment\"]\n    indexer.user:\n        class: Newscoop\\Search\\Indexer\n        arguments: [\"@service_container\", \"@search.user\", \"@user.repository\", \"indexer.user\"]\n    search.article:\n        class: Newscoop\\Article\\SearchService\n        arguments: [\"@webcode\", \"@image.rendition\", \"@article.link\", \"@em\"]\n    search.comment:\n        class: Newscoop\\Comment\\SearchService\n        arguments: [\"@article.link\", \"@em\"]\n    search.user:\n        class: Newscoop\\User\\SearchService\n        arguments: [\"@image\"]\n    preferences:\n        class: Newscoop\\NewscoopBundle\\Services\\SystemPreferencesService\n        arguments: [\"@em\"]\n    newscoop.plugins.manager:\n        class: Newscoop\\Services\\Plugins\\ManagerService\n        arguments: [\"@em\", \"@event_dispatcher\", \"@newscoop.plugins.service\", \"@logger\", \"%plugins%\"]\n    newscoop.plugins.service:\n        class: Newscoop\\Services\\Plugins\\PluginsService\n        arguments: [\"@dispatcher\", \"@em\"]\n    newscoop.templates.service:\n        class: Newscoop\\Services\\TemplatesService\n        arguments: [\"@newscoop_newscoop.themes_service\", \"@newscoop.publication_service\"]\n    newscoop.placeholders.service:\n        class: Newscoop\\Services\\PlaceholdersService\n    newscoop.listpaginator.service:\n        class: Newscoop\\Services\\ListPaginatorService\n    newscoop.cache:\n        class: Newscoop\\Services\\CacheService\n        arguments: [\"@system_preferences_service\"]\n    newscoop.input_manipulator:\n        class: Newscoop\\Services\\InputManipulator\n    user.garbage:\n        class: Newscoop\\Services\\GarbageCollectionService\n        arguments: [\"@em\"]\n    newscoop.filesystem:\n        class: Newscoop\\Services\\FilesystemService\n        arguments: [\"@em\"]\n    newscoop.scheduler:\n        class: Newscoop\\Services\\SchedulerService\n        arguments: [\"@em\", \"%scheduler%\"]\n    newscoop.editor:\n        class: Newscoop\\Services\\EditorService\n        arguments: [\"@dispatcher\", \"@em\"]\n\n    # Add this event listener registering to newscoop/application/configs/parameters/custom_parameters.yml\n    # search_indexer:\n    #     class:      Newscoop\\Search\\ArticleIndexer\n    #     arguments:  [\"@em\", \"@search.index\"]\n    #     tags:\n    #         -  { name: kernel.event_listener, event: article.delete, method: update }\n"
  },
  {
    "path": "newscoop/application/configs/services/template_lists.yml",
    "content": "services:\n    newscoop.criteria.users:\n        class: Newscoop\\User\\UserCriteria\n\n    newscoop.template_lists.users:\n        class:      Newscoop\\TemplateList\\UsersList\n        arguments:  [\"@newscoop.criteria.users\"]\n        tags:\n            -  { name: newscoop.template_lists }"
  },
  {
    "path": "newscoop/application/configs/services/user_attributes.yml",
    "content": "services:\n    user_attributes:\n        class:      Newscoop\\Services\\UserAttributeService\n        arguments:  [\"@em\"]\n        tags:\n            -  { name: kernel.event_listener, event: image.delivered, method: update }\n            -  { name: kernel.event_listener, event: image.approved, method: update }\n            -  { name: kernel.event_listener, event: image.published, method: update }\n            -  { name: kernel.event_listener, event: document.delivered, method: update }\n            -  { name: kernel.event_listener, event: document.approved, method: update }\n"
  },
  {
    "path": "newscoop/application/configs/services/user_points.yml",
    "content": "services:\n    user_points:\n        class:      Newscoop\\Services\\UserPointsService\n        arguments:  [\"@em\"]\n        tags:\n            -  { name: kernel.event_listener, event: image.published, method: update }"
  },
  {
    "path": "newscoop/application/configs/subscriptions/.gitignore",
    "content": "*\n\n!.gitignore"
  },
  {
    "path": "newscoop/application/configs/symfony/config.yml",
    "content": "imports:\n    - { resource: security.yml }\n# SymfonyFrameworkBundle Configuration\nframework:\n    secret:          pleaseChangeMe!pleaseChangeMe!\n    router:\n        resource: \"%kernel.root_dir%/configs/symfony/routing.yml\"\n        strict_requirements: %kernel.debug%\n    form:            ~\n    csrf_protection: ~\n    validation: { enable_annotations: true }\n    templating:      { engines: ['twig', 'php'] }\n    trusted_proxies: ~\n    session:\n        storage_id: newscoop_newscoop.session.storage\n        handler_id: ~\n    fragments: ~\n    translator: { fallback: en }\n    http_method_override: true\n\nmonolog:\n    channels: [\"sentry\"]\n    handlers:\n        sentry:\n            type:  raven\n            dsn:   'http://9cd083992bcc4dbba05b6a0253b30b3b:57ae69b9ea7347c1bca8583ab1e3da5f@sentry.sourcefabric.org/5'\n            level: notice\n            channels: ['sentry']\n\ndoctrine:\n    dbal:\n        charset: %doctrine.charset%\n        types:\n            point: Newscoop\\NewscoopBundle\\ORM\\PointType\n            utcdatetime: Newscoop\\NewscoopBundle\\ORM\\UTCDateTimeType\n    orm:\n        dql:\n            numeric_functions:\n                rand: \"Newscoop\\Query\\MysqlRandom\"\n            datetime_functions:\n                dayofweek: \"Newscoop\\Query\\MysqlDayOfWeek\"\n                dayofmonth: \"Newscoop\\Query\\MysqlDayOfMonth\"\n                dayofyear: \"Newscoop\\Query\\MysqlDayOfYear\"\n                date_format: \"Newscoop\\Query\\MysqlDateFormat\"\n            string_functions:\n                field: \"Newscoop\\Query\\MysqlField\"\n        auto_mapping: true\n        mappings:\n            gedmo_translatable:\n                type: annotation\n                prefix: Gedmo\\Translatable\\Entity\n                dir: \"%kernel.root_dir%/../vendor/gedmo/doctrine-extensions/lib/Gedmo/Translatable/Entity/MappedSuperclass\"\n                alias: GedmoTranslatable # this one is optional and will default to the name set for the mapping\n                is_bundle: false\n\n# FOSRestBundle Configuration\nfos_rest:\n    allowed_methods_listener: true\n    routing_loader:\n        default_format: ~\n    view:\n        default_engine: twig\n        view_response_listener: true\n        failed_validation: HTTP_BAD_REQUEST\n        formats:\n            json: true\n        mime_types:\n            json: ['application/json', 'application/x-json', 'application/vnd.sourcefabric-org.newscoop+json']\n    body_listener:\n        decoders:\n            json: fos_rest.decoder.json\n    format_listener:\n        default_priorities:\n            - json\n            - html\n        fallback_format: json\n        prefer_extension: true\n    exception:\n        codes:\n            'Newscoop\\Exception\\ResourcesConflictException': 409\n            'Newscoop\\Exception\\InvalidParametersException': 422\n            'Newscoop\\Exception\\ResourceIsEmptyException': 200\n            'Symfony\\Component\\Routing\\Exception\\ResourceNotFoundException': 404\n            'Doctrine\\ORM\\EntityNotFoundException': 404\n            'Symfony\\Component\\Form\\Exception\\InvalidArgumentException': 500\n            'Symfony\\Component\\HttpKernel\\Exception\\FlattenException': 404\n            'Symfony\\Component\\Routing\\Exception\\MethodNotAllowedException': 404\n            'Newscoop\\Exception\\ResourceNotModifiedException': 304\n            'Newscoop\\NewscoopException': 500\n            'OAuth2\\OAuth2AuthenticateException': 401\n            'Newscoop\\Exception\\AuthenticationException': 401\n        messages:\n            'Newscoop\\Exception\\ResourcesConflictException': true\n            'Newscoop\\Exception\\InvalidParametersException': true\n            'Newscoop\\Exception\\ResourceIsEmptyException': true\n            'Symfony\\Component\\Routing\\Exception\\ResourceNotFoundException': true\n            'Doctrine\\ORM\\EntityNotFoundException': true\n            'Symfony\\Component\\Form\\Exception\\InvalidArgumentException' : true\n            'Symfony\\Component\\Routing\\Exception\\MethodNotAllowedException': true\n            'Symfony\\Component\\HttpKernel\\Exception\\FlattenException': true\n            'Newscoop\\Exception\\ResourceNotModifiedException': false\n            'OAuth2\\OAuth2AuthenticateException': true\n            'Newscoop\\NewscoopException': true\n            'Newscoop\\Exception\\AuthenticationException': true\n\nfos_oauth_server:\n    service:\n        options:\n            supported_scopes: standard_access\n        user_provider: user.manager\n    db_driver: orm\n    client_class:        Newscoop\\GimmeBundle\\Entity\\Client\n    access_token_class:  Newscoop\\GimmeBundle\\Entity\\AccessToken\n    refresh_token_class: Newscoop\\GimmeBundle\\Entity\\RefreshToken\n    auth_code_class:     Newscoop\\GimmeBundle\\Entity\\AuthCode\n\njms_serializer:\n    metadata:\n        auto_detection: true\n        directories:\n            Newscoop:\n                namespace_prefix: Newscoop\\Entity\n                path: \"@NewscoopGimmeBundle/Resources/config/serializer/newscoop\"\n            NewscoopBundle:\n                namespace_prefix: Newscoop\\NewscoopBundle\\Entity\n                path: \"@NewscoopGimmeBundle/Resources/config/serializer/newscoop\"\n            Newscoop_Comment:\n                namespace_prefix: Newscoop\\Entity\\Comment\n                path: \"@NewscoopGimmeBundle/Resources/config/serializer/newscoop\"\n            Newscoop_Package:\n                namespace_prefix: Newscoop\\Package\n                path: \"@NewscoopGimmeBundle/Resources/config/serializer/newscoop\"\n            Newscoop_Image:\n                namespace_prefix: Newscoop\\Image\n                path: \"@NewscoopGimmeBundle/Resources/config/serializer/newscoop\"\n            Newscoop_Snippet:\n                namespace_prefix: Newscoop\\Entity\\Snippet\n                path: \"@NewscoopGimmeBundle/Resources/config/serializer/newscoop\"\n            Newscoop_SnippetTemplate:\n                namespace_prefix: Newscoop\\Entity\\Snippet\\SnippetTemplate\n                path: \"@NewscoopGimmeBundle/Resources/config/serializer/newscoop\"\n            Newscoop_Articles:\n                namespace_prefix: Newscoop\\ArticlesBundle\\Entity\n                path: \"@NewscoopGimmeBundle/Resources/config/serializer/newscoop\"\n\n\n# SensioExtraBundle Configuration\nsensio_framework_extra:\n    view:    { annotations: false }\n    router:  { annotations: true }\n\n# Assetic Configuration\nassetic:\n    debug:          %kernel.debug%\n    use_controller: false\n    # bundles:        [ ]\n    #java: /usr/bin/java\n    filters:\n        cssrewrite: ~\n        #closure:\n        #    jar: %kernel.root_dir%/Resources/java/compiler.jar\n        #yui_css:\n        #    jar: %kernel.root_dir%/Resources/java/yuicompressor-2.4.7.jar\n\n# Twig Configuration\ntwig:\n    debug:            %kernel.debug%\n    strict_variables: %kernel.debug%\n    exception_controller: 'Newscoop\\GimmeBundle\\Controller\\ExceptionController::showAction'\n\nknp_paginator:\n    page_range: 5                      # default page range used in pagination control\n    default_options:\n        page_name: knp_page                # page query parameter name\n        sort_field_name: knp_sort          # sort field query parameter name\n        sort_direction_name: knp_direction # sort direction query parameter name\n        distinct: true                 # ensure distinct results, useful when ORM queries are using GROUP BY statements\n    template:\n        pagination: KnpPaginatorBundle:Pagination:sliding.html.twig     # sliding pagination controls template\n        sortable: KnpPaginatorBundle:Pagination:sortable_link.html.twig # sort link template\n\nnewscoop_gimme:\n    allow_origin:\n        - \"*\"\n\nbazinga_js_translation:\n    locale_fallback: en\n\nnelmio_api_doc:\n    name:                     Newscoop REST API documentation\n    request_listener:\n        enabled:              false\n\newz_recaptcha:\n    public_key:\n    private_key:\n    enabled: true\n    locale_key: kernel.default_locale\n\nstof_doctrine_extensions:\n    default_locale: en_US\n    orm:\n        default:\n            tree: true\n            sluggable: true\n            translatable: true\n            sortable: true\n            loggable: false\n"
  },
  {
    "path": "newscoop/application/configs/symfony/config_dev.yml",
    "content": "imports:\n    - { resource: config.yml }\n\nframework:\n    router:\n        resource: \"%kernel.root_dir%/configs/symfony/routing_dev.yml\"\n    profiler: { only_exceptions: false }\n\nmonolog:\n    channels: [\"sentry\"]\n    handlers:\n        sentry:\n            type:  raven\n            dsn:   'http://6948f4720ffe4956b25df0fe720da09e:085cd9f5324c4e65abdd55482ca7c5cc@sentry.sourcefabric.org/5'\n            level: notice\n            channels: ['sentry']\n        main:\n            type: stream\n            path: %kernel.logs_dir%/%kernel.environment%.log\n            level: debug\n        firephp:\n            type: firephp\n            level: info\n        chromephp:\n            type: chromephp\n            level: info\n\n# enable the web profiler\nweb_profiler:\n    toolbar: true\n    intercept_redirects: false\n\nassetic:\n    use_controller: false"
  },
  {
    "path": "newscoop/application/configs/symfony/config_prod.yml",
    "content": "imports:\n    - { resource: config.yml }\n\nmonolog:\n    channels: [\"sentry\"]\n    handlers:\n        sentry:\n            type:  raven\n            dsn:   'http://6948f4720ffe4956b25df0fe720da09e:085cd9f5324c4e65abdd55482ca7c5cc@sentry.sourcefabric.org/5'\n            level: notice\n            channels: ['sentry']\n        main:\n            type:         fingers_crossed\n            action_level: error\n            handler:      nested\n        nested:\n            type:  stream\n            path:  %kernel.logs_dir%/%kernel.environment%.log\n            level: debug"
  },
  {
    "path": "newscoop/application/configs/symfony/config_testing.yml",
    "content": "imports:\n    - { resource: config.yml }\n\nframework:\n    router:\n        resource: \"%kernel.root_dir%/configs/symfony/routing_dev.yml\"\n    test: ~\n    session:\n        storage_id: session.storage.mock_file\n\nmonolog:\n    handlers:\n        main:\n            type:  stream\n            path:  %kernel.logs_dir%/%kernel.environment%.log\n            level: debug"
  },
  {
    "path": "newscoop/application/configs/symfony/routing.yml",
    "content": "admin_login:\n    pattern:   /admin/login\n    defaults:  { _controller: NewscoopNewscoopBundle:Security:login }\nadmin_login_check:\n    pattern:   /admin/login_check\nadmin_logout:\n    pattern:   /admin/logout{php}\n    defaults: { php: \".php\" }\nfos_js_routing:\n    prefix: /admin\n    resource: \"@FOSJsRoutingBundle/Resources/config/routing/routing.xml\"\n_bazinga_jstranslation:\n    prefix: /admin\n    resource: \"@BazingaJsTranslationBundle/Resources/config/routing/routing.yml\"\nfos_oauth_server_token:\n    resource: \"@FOSOAuthServerBundle/Resources/config/routing/token.xml\"\n    options:\n        expose: true\nfos_oauth_server_authorize:\n    resource: \"@FOSOAuthServerBundle/Resources/config/routing/authorize.xml\"\n    options:\n        expose: true\noauth_login:\n    pattern:   /oauth/v2/auth_login\n    defaults:  { _controller: NewscoopGimmeBundle:Oauth:login }\n    methods: GET\noauth_login_check:\n    pattern:   /oauth/v2/auth_login_check\noauth_authentication_result:\n    resource: \"@NewscoopGimmeBundle/Controller/OauthController.php\"\n    prefix:   /\n    type:     annotation\ngimme:\n    type: rest\n    prefix: /api\n    resource: \"@NewscoopGimmeBundle/Resources/config/routing.yml\"\nadmin_login_check:\n    pattern:   /admin/login_check\nNelmioApiDocBundle:\n    resource: \"@NelmioApiDocBundle/Resources/config/routing.yml\"\n    prefix:   /documentation/rest-api\nNewscoopGimmeBundleConfigureApi:\n    resource: \"@NewscoopGimmeBundle/Controller/ConfigureApiController.php\"\n    prefix:   /\n    type:     annotation\nnewscoop:\n    prefix: /\n    resource: \"@NewscoopNewscoopBundle/Resources/config/routing.yml\"\nplugins:\n    resource: .\n    type: plugins\nzendBridge:\n    prefix: /\n    resource: \"@NewscoopZendBridgeBundle/Resources/config/routing.yml\""
  },
  {
    "path": "newscoop/application/configs/symfony/routing_dev.yml",
    "content": "_wdt:\n    resource: \"@WebProfilerBundle/Resources/config/routing/wdt.xml\"\n    prefix: /_wdt\n    \n_profiler:\n    resource: @WebProfilerBundle/Resources/config/routing/profiler.xml\n    prefix:   /_profiler\n\n_main:\n    resource: routing.yml"
  },
  {
    "path": "newscoop/application/configs/symfony/security.yml",
    "content": "security:\n    encoders:\n        Symfony\\Component\\Security\\Core\\User\\User: plaintext\n        Newscoop\\Entity\\User:\n            id: newscoop_newscoop.password_encoder\n\n    role_hierarchy:\n        ROLE_ADMIN:       ROLE_USER\n        ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]\n\n    providers:\n        chain_provider:\n            chain:\n                providers: [backend_db, simple]\n        simple:\n            id: newscoop_newscoop.simple_user_provider\n        backend_db:\n            entity: { class: Newscoop\\Entity\\User, property: username }\n        frontend_db:\n            entity: { class: Newscoop\\Entity\\User }\n\n    firewalls:\n        dev:\n            pattern:  ^/(_(profiler|wdt)|css|images|js)/\n            security: false\n\n        login:\n            pattern:  ^/admin/login$\n            security: false\n\n        password_recovery:\n            pattern: ^/admin/password-recovery\n            security: false\n\n        password_check_token:\n            pattern: ^/admin/password-check-token\n            security: false\n\n        oauth_token:\n            pattern:    ^/oauth/v2/token\n            security:   false\n\n        oauth_authorize:\n            pattern:    ^/oauth/v2/auth\n            provider: backend_db\n            form_login:\n                use_forward: true\n                login_path: /oauth/v2/auth_login\n                check_path: /oauth/v2/auth_login_check\n                success_handler: newscoop_newscoop.security.oauth.success_handler\n            logout:\n                path:   /oauth/v2/auth/logout\n                target: /oauth/v2/auth\n                success_handler: newscoop_newscoop.security.oauth.logout.success_handler\n\n        api:\n            pattern:    ^/(api|content\\-api)\n            fos_oauth:  true\n            stateless:  true\n            anonymous:  true\n\n        admin_area:\n            pattern:    ^/admin\n            provider: chain_provider\n            form_login:\n                use_forward: true\n                login_path:  admin_login\n                check_path:  admin_login_check\n                success_handler: newscoop_newscoop.security.authentication.success_handler\n            remember_me:\n                key: \"%kernel.secret%\"\n                lifetime: %remember_me.lifetime%\n                path: /\n                domain: ~\n            logout:\n                path: admin_logout\n                target: /admin\n                invalidate_session: false\n                success_handler: newscoop_newscoop.security.logout.success_handler\n\n        frontend_area:\n            pattern:    ^/\n            provider: frontend_db\n            form_login:\n                login_path:  /auth\n                check_path:  /auth\n                username_parameter: email\n                password_parameter: password\n                success_handler: newscoop_newscoop.security.authentication.frontend.success_handler\n                require_previous_session: false\n            remember_me:\n                key: \"%kernel.secret%\"\n                lifetime: %remember_me.lifetime%\n                path: /\n                domain: ~\n            logout:\n                path: /auth/logout\n                target: /\n                invalidate_session: false\n                success_handler: newscoop_newscoop.security.frontend.logout.success_handler\n            anonymous:  true\n\n    access_control:\n        - { path: ^/admin/login, role: IS_AUTHENTICATED_ANONYMOUSLY }\n        - { path: ^/oauth/v2/auth_login$, role: IS_AUTHENTICATED_ANONYMOUSLY }\n"
  },
  {
    "path": "newscoop/application/console",
    "content": "#!/usr/bin/env php\n<?php\n\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nglobal $g_ado_db;\n\n// if you don't want to setup permissions the proper way, just uncomment the following PHP line\n// read http://symfony.com/doc/current/book/installation.html#configuration-and-setup for more information\n//umask(0000);\n\nset_time_limit(0);\ndefine('APPLICATION_ENV', 'cli');\n\nrequire_once __DIR__ . '/../constants.php';\nrequire_once __DIR__ . '/bootstrap.php.cache';\nrequire_once __DIR__ . '/AppKernel.php';\n\nuse Symfony\\Bundle\\FrameworkBundle\\Console\\Application;\nuse Symfony\\Component\\Console\\Input\\ArgvInput;\nuse Symfony\\Component\\Debug\\Debug;\n\nerror_reporting(error_reporting() & ~E_STRICT & ~E_DEPRECATED);\n\n$input = new ArgvInput();\n$env = $input->getParameterOption(array('--env', '-e'), getenv('SYMFONY_ENV') ?: 'prod');\n$debug = getenv('SYMFONY_DEBUG') !== '0' && !$input->hasParameterOption(array('--no-debug', '')) && $env !== 'prod';\n\nif ($debug) {\n    Debug::enable();\n}\n\n$kernel = new AppKernel($env, $debug);\n$cli = new Application($kernel);\n\n$kernel->boot();\n$container = $kernel->getContainer();\n\\Zend_Registry::set('container', $container);\n\n$cli->addCommands(array(\n    new \\Newscoop\\Tools\\Console\\Command\\LogMaintenanceCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\SendStatsCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\UpdateImageStorageCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\UpdateAutoloadCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\UpdateIndexCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\ClearIndexCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\InstallPluginCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\RemovePluginCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\UpdatePluginCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\DispatchEventForPluginCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\UpgradePluginsCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\ReloadRenditionsCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\GenerateWebcodeCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\InstallNewscoopCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\CreateOAuthClientCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\GenerateORMSchemaCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\UserGarbageCollectionCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\AutopublishCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\ClearOldStatisticsCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\IndexerCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\EventsNotifierCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\SubscriptionsNotifierCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\AssignThemeCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\SchedulerManagerCommand(),\n    new \\Newscoop\\Tools\\Console\\Command\\CreateUserCommand()\n));\n\n$cli->run($input);\n"
  },
  {
    "path": "newscoop/application/controllers/AuthController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n use Symfony\\Component\\Security\\Core\\SecurityContext;\n\nclass AuthController extends Zend_Controller_Action\n{\n    /** @var Zend_Auth */\n    private $auth;\n\n    public function init()\n    {\n        $this->_helper->layout->disableLayout();\n        $this->auth = Zend_Auth::getInstance();\n    }\n\n    public function indexAction()\n    {\n        if ($this->auth->hasIdentity()) {\n            $this->_helper->redirector('index', 'dashboard');\n        }\n\n        $translator = Zend_Registry::get('container')->getService('translator');\n        $form = new Application_Form_Login();\n        $request = $this->getRequest();\n\n        if ($authenticationException = $this->getLastAuthenticationError()) {\n            $form->addError($translator->trans($authenticationException->getMessage()));\n        }\n\n        $this->view->form = $form;\n    }\n\n    private function getLastAuthenticationError()\n    {\n        $request = \\Zend_Registry::get('container')->getService('request');\n        $session = $request->getSession();\n        $authenticationException = null;\n\n        if ($request->attributes->has(SecurityContext::AUTHENTICATION_ERROR)) {\n            $authenticationException = $request->attributes->get(SecurityContext::AUTHENTICATION_ERROR);\n        } elseif ($session !== null && $session->has(SecurityContext::AUTHENTICATION_ERROR)) {\n            $authenticationException = $session->get(SecurityContext::AUTHENTICATION_ERROR);\n            $session->remove(SecurityContext::AUTHENTICATION_ERROR);\n        }\n\n        return $authenticationException;\n    }\n\n    public function socialAction()\n    {\n        $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n        $userService = \\Zend_Registry::get('container')->getService('user');\n        $session = \\Zend_Registry::get('container')->getService('session');\n\n        $config = array(\n            'base_url' => $this->view->serverUrl($this->view->url(array('action' => 'socialendpoint'))),\n            'debug_mode' => false,\n            'providers' => array(\n                'Facebook' => array(\n                    'enabled' => true,\n                    'keys'    => array(\n                        'id' => $preferencesService->facebook_appid,\n                        'secret' => $preferencesService->facebook_appsecret,\n                    ),\n                ),\n            ),\n        );\n\n        try {\n            $hauth = new Hybrid_Auth($config);\n            $adapter = $hauth->authenticate($this->_getParam('provider'));\n            $userData = $adapter->getUserProfile();\n\n            $socialAdapter = $this->_helper->service('auth.adapter.social');\n            $socialAdapter->setProvider($adapter->id)->setProviderUserId($userData->identifier);\n            $result = $this->auth->authenticate($socialAdapter);\n\n            if ($result->getCode() !== Zend_Auth_Result::SUCCESS) {\n                $user = $this->_helper->service('user')->findOneBy(array('email' => $userData->email));\n\n                if (!$user) {\n                    $publicationService = \\Zend_Registry::get('container')->getService('newscoop_newscoop.publication_service');\n                    $user = $this->_helper->service('user')->createPending($userData->email, $userData->firstName, $userData->lastName, null, $publicationService->getPublication()->getId());\n                }\n\n                $this->_helper->service('auth.adapter.social')->addIdentity($user, $adapter->id, $userData->identifier);\n                $this->auth->authenticate($socialAdapter);\n            } else {\n                $user = $this->_helper->service('user')->getCurrentUser();\n                $token = $userService->loginUser($user, 'frontend_area');\n                $session->set('_security_frontend_area', serialize($token));\n                $OAuthtoken = $userService->loginUser($user, 'oauth_authorize');\n                $session->set('_security_oauth_authorize', serialize($OAuthtoken));\n            }\n\n            setcookie('NO_CACHE', '1', null, '/', '.'.$this->extractDomain($_SERVER['HTTP_HOST']));\n            if ($user->isPending()) {\n                $this->_forward('confirm', 'register', 'default', array(\n                    'social' => true,\n                ));\n            } else {\n                $request = $this->getRequest();\n                if ($request->getParam('_target_path')) {\n                    $this->_helper->redirector->gotoUrl($request->getParam('_target_path'));\n                }\n\n                $this->_helper->redirector('index', 'dashboard');\n            }\n        } catch (\\Exception $e) {\n            throw new \\Exception($e->getMessage());\n        }\n    }\n\n    public function socialendpointAction()\n    {\n        Hybrid_Endpoint::process();\n        exit;\n    }\n\n    public function passwordRestoreAction()\n    {\n        $form = new Application_Form_PasswordRestore();\n\n        $translator = Zend_Registry::get('container')->getService('translator');\n        $request = $this->getRequest();\n        if ($request->isPost() && $form->isValid($request->getPost())) {\n            $user = $this->_helper->service('user')->findOneBy(array(\n                'email' => $form->email->getValue(),\n            ));\n\n            if (!empty($user) && $user->isActive()) {\n                $this->_helper->service('email')->sendPasswordRestoreToken($user);\n                $this->_helper->flashMessenger($translator->trans(\"E-mail with instructions was sent to given email address.\"));\n                $this->_helper->redirector('password-restore-after', 'auth');\n            } elseif (empty($user)) {\n                $form->email->addError($translator->trans(\"Given email not found.\"));\n            }\n        }\n\n        $this->view->form = $form;\n    }\n\n    public function passwordRestoreAfterAction()\n    {\n    }\n\n    public function passwordRestoreFinishAction()\n    {\n        $translator = Zend_Registry::get('container')->getService('translator');\n        $user = $this->_helper->service('user')->find($this->_getParam('user'));\n        if (empty($user)) {\n            $this->_helper->flashMessenger(array('error', $translator->trans('User not found.')));\n            $this->_helper->redirector('password-restore', 'auth');\n        }\n\n        if (!$user->isActive()) {\n            $this->_helper->flashMessenger(array('error', $translator->trans('User is not active user.')));\n            $this->_helper->redirector('password-restore', 'auth');\n        }\n\n        $token = $this->_getParam('token', false);\n        if (!$token) {\n            $this->_helper->flashMessenger(array('error', $translator->trans('No token provided.')));\n            $this->_helper->redirector('password-restore', 'auth');\n        }\n\n        if (!$this->_helper->service('user.token')->checkToken($user, $token, 'password.restore')) {\n            $this->_helper->flashMessenger(array('error', $translator->trans('Invalid token.')));\n            $this->_helper->redirector('password-restore', 'auth');\n        }\n\n        $form = new Application_Form_PasswordRestorePassword();\n        $request = $this->getRequest();\n        if ($request->isPost() && $form->isValid($request->getPost())) {\n            $this->_helper->service('user')->save($form->getValues(), $user);\n            $this->_helper->service('user.token')->invalidateTokens($user, 'password.restore');\n            if (!$this->auth->hasIdentity()) { // log in\n                $adapter = $this->_helper->service('auth.adapter');\n                $adapter->setEmail($user->getEmail())->setPassword($form->password->getValue());\n                $this->auth->authenticate($adapter);\n                $this->_helper->redirector('index', 'dashboard');\n            } else {\n                $this->_helper->flashMessenger($translator->trans(\"Password changed\"));\n                $this->_helper->redirector('index', 'auth');\n            }\n        }\n\n        $this->view->form = $form;\n    }\n\n    private function extractDomain($domain)\n    {\n        if (preg_match(\"/(?P<domain>[a-z0-9][a-z0-9\\-]{1,63}\\.[a-z\\.]{2,6})$/i\", $domain, $matches)) {\n            return $matches['domain'];\n        } else {\n            return $domain;\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/AuthorController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass AuthorController extends Zend_Controller_Action\n{\n    public function profileAction()\n    {\n        if ($this->_getParam('author') === null) {\n            throw new InvalidArgumentException();\n        }\n\n        $this->view->author = new MetaAuthor($this->_getParam('author'));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/DashboardController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Entity\\User;\nuse Newscoop\\Topic\\SaveUserTopicsCommand;\nuse Newscoop\\Exception\\AuthenticationException;\n\n/**\n * User dashboard controller\n */\nclass DashboardController extends Zend_Controller_Action\n{\n    /** @var Newscoop\\Services\\UserService */\n    private $userService;\n\n    /** @var Newscoop\\Entity\\User */\n    private $user;\n\n    public function init()\n    {\n        $GLOBALS['controller'] = $this;\n        $this->_helper->layout->disableLayout();\n        $this->userService = $this->_helper->service('user');\n\n        try {\n            $this->user = $this->userService->getCurrentUser();\n        } catch (AuthenticationException $e) {\n            $this->_helper->redirector('index', 'auth');\n        }\n\n        $this->_helper->contextSwitch()\n            ->addActionContext('update-topics', 'json')\n            ->initContext();\n    }\n\n    public function preDispatch()\n    {\n        if ($this->user->isPending()) {\n            $this->_helper->redirector('confirm', 'register');\n        }\n    }\n\n    public function indexAction()\n    {\n        $translator = Zend_Registry::get('container')->getService('translator');\n        $form = $this->_helper->form('profile');\n        $form->setMethod('POST');\n        $form->setDefaults((array) $this->user->getView());\n        $form->username->setRequired(false);\n        $form->removeElement('username');\n        $username = $this->user->getUsername();\n        $request = $this->getRequest();\n        if ($request->isPost() && $form->isValid($request->getPost())) {\n            $values = $form->getValues();\n            $values['username'] = $username;\n            try {\n                if (!empty($values['image'])) {\n                    $imageInfo = array_pop($form->image->getFileInfo());\n                    $values['image'] = $this->_helper->service('image')->save($imageInfo);\n                }\n\n                $this->userService->save($values, $this->user);\n                $this->_helper->flashMessenger->addMessage($translator->trans('Profile saved.', array(), 'users'));\n                $this->_helper->redirector('index');\n            } catch (\\InvalidArgumentException $e) {\n                switch ($e->getMessage()) {\n                    case 'username_conflict':\n                        $form->username->addError($translator->trans(\"User with given username exists.\"));\n                        break;\n\n                    default:\n                        $form->image->addError($e->getMessage());\n                        break;\n                }\n            }\n        }\n\n        $this->view->user = new MetaUser($this->user);\n        $this->view->form = $form;\n    }\n\n    public function saveTopicsAction()\n    {\n        $form = new Application_Form_Topics();\n\n        $topics = $this->_helper->service('topic')->getMultiOptions();\n        $form->topics->setMultiOptions($topics);\n        $form->selected->setMultiOptions($topics);\n\n        if ($this->getRequest()->isPost() && $form->isValid($this->getRequest()->getPost())) {\n            $command = new SaveUserTopicsCommand($form->getValues());\n            $command->userId = $this->user->getId();\n            $this->_helper->service('user.topic')->saveUserTopics($command);\n            $this->_helper->json($command->selected);\n        }\n\n        $this->getResponse()->setHttpResponseCode(400);\n        $this->_helper->json($form->getMessages());\n    }\n\n    public function updateTopicsAction()\n    {\n        try {\n            $this->_helper->service('user.topic')->updateTopics($this->user, $this->_getParam('topics', array()));\n            $this->view->status = 1;\n        } catch (Exception $e) {\n            $this->view->status = 0;\n            $this->view->message = $e->getMessage();\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/EmailController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass EmailController extends Zend_Controller_Action\n{\n    public function preDispatch()\n    {\n        $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n        $themesService = \\Zend_Registry::get('container')->getService('newscoop_newscoop.themes_service');\n        $themePath = $themesService->getThemePath();\n\n        $this->view = new Newscoop\\SmartyView();\n        $this->view\n            ->addScriptPath(APPLICATION_PATH . '/views/scripts/')\n            ->addScriptPath(realpath(APPLICATION_PATH . \"/../themes/$themePath\"));\n\n        $this->view->addPath(realpath(APPLICATION_PATH . \"/../themes/$themePath\"));\n\n        $this->getHelper('viewRenderer')\n            ->setView($this->view)\n            ->setViewScriptPathSpec(':controller_:action.:suffix')\n            ->setViewSuffix('tpl');\n\n        $this->getHelper('layout')\n            ->disableLayout();\n\n        $this->view->publication = $this->getRequest()->getServer('SERVER_NAME', 'localhost');\n        $this->view->site = $preferencesService->SiteTitle;\n\n        $this->_helper->contextSwitch()\n            ->addActionContext('comment-notify', 'xml')\n            ->initContext();\n    }\n\n    public function confirmAction()\n    {\n        $this->view->user = $this->_getParam('user');\n        $this->view->token = $this->_getParam('token');\n    }\n\n    public function passwordRestoreAction()\n    {\n        $this->view->user = $this->_getParam('user');\n        $this->view->token = $this->_getParam('token');\n    }\n\n    public function commentNotifyAction()\n    {\n        if ($this->_getParam('user', false)) {\n            $this->view->username = $this->_getParam('user')->getUsername();\n        }\n\n        $article = $this->_getParam('article');\n\n        $this->view->articleLink = $this->getArticleLink($article);\n        $this->view->article = new \\MetaArticle($article->getLanguageId(), $article->getArticleNumber());\n        $this->view->comment = $this->_getParam('comment');\n    }\n\n    private function getArticleLink(Article $article)\n    {\n        $params = array(\n            'f_publication_id' => $article->getPublicationId(),\n            'f_issue_number' => $article->getIssueNumber(),\n            'f_section_number' => $article->getSectionNumber(),\n            'f_article_number' => $article->getArticleNumber(),\n            'f_language_id' => $article->getLanguageId(),\n            'f_language_selected' => $article->getLanguageId(),\n        );\n\n        $queryString = implode('&', array_map(function ($property) use ($params) {\n            return $property . '=' . $params[$property];\n        }, array_keys($params)));\n\n        return $this->view->baseUrl(\"/admin/articles/edit.php?$queryString\");\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/ErrorController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass ErrorController extends Zend_Controller_Action\n{\n    public function init(){}\n\n    /**\n     * Forward to legacy controller if controller/action not found\n     */\n    public function preDispatch()\n    {\n        $errors = $this->_getParam('error_handler');\n        if (!$errors) {\n            return;\n        }\n\n        $request = $this->getRequest();\n        $adminControllerFile = __DIR__.'/../..'.str_replace('/admin', '/admin-files', $request->getPathInfo());\n        if (file_exists($adminControllerFile)) {\n            $this->_forward('index', 'legacy', 'admin', array());\n\n            return;\n        }\n\n        foreach (\\CampPlugin::GetEnabled() as $CampPlugin) {\n            $adminControllerFile = dirname(APPLICATION_PATH).'/'.$CampPlugin->getBasePath().str_replace('/admin', '/admin-files', $request->getPathInfo());\n\n            if (file_exists($adminControllerFile)) {\n                $this->_forward('index', 'legacy', 'admin', array());\n\n                return;\n            }\n        }\n    }\n\n    public function errorAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        if (defined('APPLICATION_ENV') && APPLICATION_ENV == 'development') {\n            $this->_helper->layout->disableLayout(); // allow debuging\n        }\n\n        $errors = $this->_getParam('error_handler');\n\n        if (!$errors) {\n            $this->view->message = $translator->trans('You have reached the error page', array(), 'bug_reporting');\n            return;\n        }\n\n        $notFound = array(\n            Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_CONTROLLER,\n            Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_ACTION,\n        );\n\n        if (in_array($errors->type, $notFound)) {\n            $this->_helper->layout->disableLayout();\n            $this->_helper->viewRenderer->setNoRender(true);\n            $this->getResponse()->setHttpResponseCode(404);\n            $templatesService = \\Zend_Registry::get('container')->get('newscoop.templates.service');\n            $templatesService->renderTemplate('404.tpl');\n\n            return;\n        }\n\n        switch ($errors->type) {\n            case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_ROUTE:\n            case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_CONTROLLER:\n            case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_ACTION:\n                // 404 error -- controller or action not found\n                $this->getResponse()->setHttpResponseCode(404);\n                $this->view->message = $translator->trans('Page not found', array(), 'bug_reporting');\n                break;\n            default:\n                // application error\n                $this->getResponse()->setHttpResponseCode(500);\n                $this->view->message = $translator->trans('Application error', array(), 'bug_reporting');\n                break;\n        }\n\n        if (defined('APPLICATION_ENV') && APPLICATION_ENV == 'development') {\n            // conditionally display exceptions\n            if ($this->getInvokeArg('displayExceptions') == true) {\n                $this->view->exception = $errors->exception;\n            }\n\n            $this->view->request = $errors->request;\n            $this->view->errors = $errors;\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/FeedbackController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Feedback controller\n */\n\nuse Newscoop\\Entity\\Feedback;\nuse Newscoop\\EventDispatcher\\Events\\GenericEvent;\n\nrequire_once($GLOBALS['g_campsiteDir'].'/include/captcha/php-captcha.inc.php');\nrequire_once($GLOBALS['g_campsiteDir']. '/classes/Plupload.php');\n\nclass FeedbackController extends Zend_Controller_Action\n{\n    public function init()\n    {\n        $this->getHelper('contextSwitch')->addActionContext('save', 'json')->initContext();\n        $this->getHelper('contextSwitch')->addActionContext('upload', 'json')->initContext();\n    }\n\n    public function saveAction()\n    {\n        $translator = Zend_Registry::get('container')->getService('translator');\n        $userService = Zend_Registry::get('container')->getService('user');\n        $this->_helper->layout->disableLayout();\n        $parameters = $this->getRequest()->getParams();\n\n        $errors = array();\n\n        $auth = Zend_Auth::getInstance();\n\n        $publication = new Publication($parameters['f_publication']);\n\n        if ($auth->getIdentity()) {\n            $acceptanceRepository = $this->getHelper('entity')->getRepository('Newscoop\\Entity\\Comment\\Acceptance');\n            $user = new User($auth->getIdentity());\n\n            $userIp = $userService->getUserIp();\n            if ($acceptanceRepository->checkParamsBanned($user->m_data['Name'], $user->m_data['EMail'], $userIp, $parameters['f_publication'])) {\n                $errors[] = $translator->trans('You have been banned from writing feedbacks.');\n            }\n        } else {\n            $errors[] = $translator->trans('You are not logged in.');\n        }\n\n        if (!array_key_exists('f_feedback_content', $parameters) || empty($parameters['f_feedback_content'])) {\n            $errors[] = $translator->trans('Feedback content was not filled in.');\n        }\n\n        if (empty($errors)) {\n            $feedbackRepository = $this->getHelper('entity')->getRepository('Newscoop\\Entity\\Feedback');\n            $feedback = new Feedback();\n\n            $values = array(\n                'user' => $auth->getIdentity(),\n                'publication' => $parameters['f_publication'],\n                'section' => $parameters['f_section'],\n                'article' => $parameters['f_article'],\n                'subject' => $parameters['f_feedback_subject'],\n                'message' => $parameters['f_feedback_content'],\n                'url' => $parameters['f_feedback_url'],\n                'time_created' => new DateTime(),\n                'language' => $parameters['f_language'],\n                'status' => 'pending',\n                'attachment_type' => 'none',\n                'attachment_id' => 0\n            );\n\n            if (isset($parameters['image_id'])) {\n                $values['attachment_type'] = 'image';\n                $values['attachment_id'] = $parameters['image_id'];\n\n                $feedbackRepository->save($feedback, $values);\n                $feedbackRepository->flush();\n\n                $current_user = $this->_helper->service('user')->getCurrentUser();            \n                $this->_helper->service->getService('dispatcher')\n                    ->dispatch('image.delivered', new GenericEvent($this, array(\n                        'user' => $current_user,\n                        'image_id' => $values['attachment_id']\n                    )));\n\n                $this->view->response = $translator->trans('File is uploaded and your message is sent.');\n            }\n            else if (isset($parameters['document_id'])) {\n                $values['attachment_type'] = 'document';\n                $values['attachment_id'] = $parameters['document_id'];\n\n                $feedbackRepository->save($feedback, $values);\n                $feedbackRepository->flush();\n\n                $current_user = $this->_helper->service('user')->getCurrentUser();\n                $this->_helper->service->getService('dispatcher')\n                    ->dispatch('document.delivered', new GenericEvent($this, array(\n                        'user' => $current_user,\n                        'document_id' => $values['attachment_id']\n                    )));\n\n                $this->view->response = $translator->trans('File is uploaded and your message is sent.');\n            }\n            else {\n                $feedbackRepository->save($feedback, $values);\n                $feedbackRepository->flush();\n\n                $this->view->response = $translator->trans('Your message is sent.');\n            }\n        }\n        else {\n            $errors = implode('<br>', $errors);\n            $errors = $translator->trans('Following errors have been found:') . '<br>' . $errors;\n            $this->view->response = $errors;\n        }\n    }\n\n    public function uploadAction()\n    {\n        global $Campsite;\n\n        $auth = Zend_Auth::getInstance();\n        $userId = $auth->getIdentity();\n\n        $_FILES['file']['name'] = preg_replace('/[^\\w\\._]+/', '', $_FILES['file']['name']);\n\n        $mimeType = $_FILES['file']['type'];\n        $type = explode('/', $mimeType);\n\n        if ($type[0] == 'image') {\n            $file = Plupload::OnMultiFileUploadCustom($Campsite['IMAGE_DIRECTORY']);\n            $image = Image::ProcessFile($_FILES['file']['name'], $_FILES['file']['name'], $userId, array('Source' => 'feedback', 'Status' => 'Unapproved', 'Date' => date('Y-m-d')));\n            $this->view->response = 'image_'.$image->getImageId();\n        }\n        else if ($type[1] == 'pdf') {\n            $attachment = new Attachment();\n            $attachment->makeDirectories();\n            \n            $file = Plupload::OnMultiFileUploadCustom($attachment->getStorageLocation());\n            $document = Attachment::ProcessFile($_FILES['file']['name'], $_FILES['file']['name'], $userId, array('Source' => 'feedback', 'Status' => 'Unapproved'));\n            $this->view->response = 'pdf_'.$document->getAttachmentId();\n        }\n    }\n\n    public function indexAction()\n    {\n        $this->view->param = $this->_getParam('switch');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/ImageController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass ImageController extends Zend_Controller_Action\n{\n    const DATE_FORMAT = 'D, d M Y H:i:s \\G\\M\\T';\n\n    /**\n     * @var string\n     */\n    private $path;\n\n    /**\n     * @var array\n     */\n    private $types = array(\n        'png',\n        'gif',\n        'tiff',\n        'bmp',\n    );\n\n    public function cacheAction()\n    {\n        $this->getResponse()->clearHeaders();\n        $this->getResponse()->setHeader('Cache-Control', sprintf('public, max-age=%d', 3600 * 24 * 30), true);\n        $this->getResponse()->setHeader('Pragma', 'cache', true);\n        $this->getResponse()->setHeader('Expires', gmdate(self::DATE_FORMAT, date_create('+30 days')->getTimestamp()), true);\n\n        try {\n            $this->_helper->service('image')->generateFromSrc($this->_getParam('src'));\n            $this->getResponse()->setHeader('Content-Type', $this->getContentType($this->getPath()), true);\n            $this->getResponse()->sendHeaders();\n            $this->getResponse()->setBody(file_get_contents($this->getPath()));\n        } catch (\\Exception $e) {\n            $this->getResponse()->clearHeaders();\n            $this->getResponse()->setHttpResponseCode(404);\n        }\n\n        $this->getResponse()->sendResponse();\n        exit;\n    }\n\n    /**\n     * Get image path\n     *\n     * @return string\n     */\n    private function getPath()\n    {\n        if ($this->path === null) {\n            $image = \\Zend_Registry::get('container')->getParameter('image');\n            $this->path = implode('/', array(\n                rtrim($image['cache_path'], '/'),\n                $this->_getParam('src'),\n            ));\n        }\n\n        return $this->path;\n    }\n\n    /**\n     * Get content type for given file\n     *\n     * @param string $path\n     * @return string\n     */\n    private function getContentType($path)\n    {\n        if (file_exists($path)) {\n            $info = getimagesize($path);\n            return $info['mime'];\n        }\n\n        foreach ($this->types as $type) {\n            if (preg_match(\"/\\.{$type}\\$/i\", $path)) {\n                return \"image/{$type}\";\n            }\n        }\n\n        return 'image/jpeg';\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/LegacyController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Legacy controller\n */\nclass LegacyController extends Zend_Controller_Action\n{\n    public function init()\n    {\n        $this->_helper->layout->disableLayout();\n    }\n\n    public function preDispatch()\n    {\n        if ($this->getRequest()->getParam('logout') === 'true') {\n            $this->_forward('logout', 'auth', 'default', array(\n                'url' => $this->getRequest()->getPathInfo(),\n            ));\n        }\n    }\n\n    public function indexAction()\n    {\n        global $controller;\n        $controller = $this;\n\t\n        require_once($GLOBALS['g_campsiteDir'].DIRECTORY_SEPARATOR.'include'.DIRECTORY_SEPARATOR.'campsite_constants.php');\n        require_once(CS_PATH_CONFIG.DIR_SEP.'install_conf.php');\n\n        $local_path = dirname(__FILE__) . '/include';\n        set_include_path($local_path . PATH_SEPARATOR . get_include_path());\n\n        require_once(CS_PATH_INCLUDES.DIR_SEP.'campsite_init.php');\n\n        // initializes the campsite object\n        $campsite = new CampSite();\n\n        // loads site configuration settings\n        $campsite->loadConfiguration(CS_PATH_CONFIG.DIR_SEP.'configuration.php');\n\n        // starts the session\n        $campsite->initSession();\n\n        // initiates the context\n        $campsite->init();\n\n        // dispatches campsite\n        $campsite->dispatch();\n\n        if (APPLICATION_ENV !== 'development' || APPLICATION_ENV !== 'dev') {\n            set_error_handler(create_function('', 'return true;'));\n        }\n\n        // renders the site\n        $campsite->render();\n\n        // triggers an event after displaying\n        $campsite->event('afterRender');\n    }\n\n    public function postDispatch()\n    {}\n}\n"
  },
  {
    "path": "newscoop/application/controllers/MyTopicsController.php",
    "content": "<?php\n/**\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nuse Newscoop\\Exception\\AuthenticationException;\n\n/**\n */\nclass MyTopicsController extends Zend_Controller_Action\n{\n    /** @var Newscoop\\Entity\\User */\n    private $user;\n\n    public function init()\n    {\n        $this->_helper->layout->disableLayout();\n        try {\n            $this->user = $this->_helper->service('user')->getCurrentUser();\n        } catch (AuthenticationException $e) {\n            $this->user = null;\n        }\n    }\n\n    public function preDispatch()\n    {\n        if (!$this->user && $this->getRequest()->getActionName() == 'index') {\n            $this->_forward('auth');\n        }\n    }\n\n    public function indexAction()\n    {\n        $this->view->user = new MetaUser($this->user);\n    }\n\n    public function authAction()\n    {\n        $this->_helper->redirector('index', 'auth');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/OmniboxController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Omnibox controller\n */\nclass OmniboxController extends Zend_Controller_Action\n{\n    /** @var Zend_Auth */\n    private $auth;\n\n    public function init()\n    {\n        $this->_helper->layout->disableLayout();\n        $this->auth = Zend_Auth::getInstance();\n    }\n\n    public function indexAction()\n    {\n        $this->_helper->viewRenderer->setViewSuffix('tpl');\n\t\t$this->view->gimme = $this->_getParam('gimme');\n    }\n\t\n    public function loginAction()\n    {\n        $this->getHelper('contextSwitch')->addActionContext('login', 'json')->initContext();\n\n        $translator = Zend_Registry::get('container')->getService('translator');\n        $request = $this->getRequest();\n        if ($request->isPost()) {\n            $params = $request->getParams();\n\n            $adapter = $this->_helper->service('auth.adapter');\n            $adapter->setEmail($params['email'])->setPassword($params['password']);\n            $result = $this->auth->authenticate($adapter);\n\n            if ($result->getCode() == Zend_Auth_Result::SUCCESS) {\n                $user = Zend_Registry::get('container')->getService('user')->getCurrentUser();\n                $metaUser = new \\MetaUser($user);\n                $width = array_key_exists(\"imageWidth\", $params) ? $params['imageWidth'] : 80;\n                $height = array_key_exists(\"imageHeight\", $params) ? $params['imageHeight'] : 80;\n                $specification = array_key_exists(\"imageSpecification\", $params) ? $params['imageSpecification'] : 'fit';\n\n                $this->view->userData = array(\n                    'realName' => $user->getRealName(),\n                    'username' => $user->getUsername(),\n                    'avatar' => $metaUser->image($width, $height, $specification)\n                );\n\n                $this->view->response = 'OK';\n            } else {\n                $this->view->response = $translator->trans('Login failed.');\n            }\n       }\n    }\n\n\tpublic function logoutAction()\n\t{\n\t\t$this->getHelper('contextSwitch')->addActionContext('logout', 'json')->initContext();\n\t\t\n\t\tif ($this->auth->hasIdentity()) {\n            $this->auth->clearIdentity();\n        }\n        $this->view->response = 'OK';\n\t}\n}\n"
  },
  {
    "path": "newscoop/application/controllers/RatingController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Rating controller\n */\n\nuse Newscoop\\Entity\\Rating;\n\nclass RatingController extends Zend_Controller_Action\n{\n    private $em;\n\n    public function init()\n    {\n        $this->em = \\Zend_Registry::get('container')->getService('em');\n    }\n    \n    public function saveAction()\n    {\n        $this->_helper->layout->disableLayout();\n        $params = $this->getRequest()->getParams();\n        \n        $translator = Zend_Registry::get('container')->getService('translator');\n        $errors = array();\n\n        $auth = Zend_Auth::getInstance();\n\n        if ($auth->getIdentity()) {\n            $userRepository = $this->em->getRepository('Newscoop\\Entity\\User');\n            $ratingRepository = $this->em->getRepository('Newscoop\\Entity\\Rating');\n            \n            $user = $userRepository->find($auth->getIdentity());\n\n            if ($ratingRepository->countBy(array('articleId' => $params['f_article_number'], 'userId' => $user->getId())) > 0) {\n                // update the existing rating\n                $rating = $ratingRepository->findOneBy(array('articleId' => $params['f_article_number'], 'userId' => $user->getId()));\n                $ratingRepository->update($rating, array('ratingScore' => $params['f_rating_score']));\n                $ratingRepository->flush();\n\n                $errors[] = $translator->trans('Your rating has been updated');\n            }\n\n        } else {\n            $errors[] = $translator->trans('You are not logged in.');\n        }\n\n        if (empty($errors)) {\n            $rating = new Rating();\n\n            $values = array(\n                'userId' => $user->getId(),\n                'articleId' => $params['f_article_number'],\n                'ratingScore' => $params['f_rating_score'],\n                'timeCreated' => new DateTime()\n            );\n\n            $ratingRepository->save($rating, $values);\n            $ratingRepository->flush();\n\n            $this->view->response = $this->getArticleRating($params['f_article_number']);\n\n        } else {\n            $errors = implode('<br>', $errors);\n            $this->view->response = array_merge($this->getArticleRating($params['f_article_number']), array('error' => $errors));\n        }\n\n        $this->_helper->json($this->view->response);\n    }\n\n    public function indexAction()\n    {\n        $this->view->param = $this->_getParam('switch');\n    }\n\n    public function showAction()\n    {\n        $this->_helper->layout->disableLayout();\n        $articleId = $this->_getParam('f_article_number');\n\n        $this->_helper->json($this->getArticleRating($articleId));\n    }\n\n    /**\n     * Get rating stats for a given article\n     *\n     * @param int $articleId\n     *\n     * @return array\n     */\n    protected function getArticleRating($articleId)\n    {\n        $ratingRepository = $this->em->getRepository('Newscoop\\Entity\\Rating');\n        $ratingScores = $ratingRepository->getArticleRating($articleId);\n\n        $rating = array(\n            'widget_id' => $articleId,\n            'number_votes' => 0,\n            'total_score' => 0,\n            'dec_avg' => 0,\n            'whole_avg' => 0\n        );\n\n        if (!empty($ratingScores)) {\n            $rating['widget_id'] = $articleId;\n            $rating['number_votes'] = (int) $ratingScores[0]['number_votes'];\n            $rating['total_score'] = (int) $ratingScores[0]['total_score'];\n            $rating['dec_avg'] = (float) round($ratingScores[0]['avg_score'], 2);\n            $rating['whole_avg'] = (int) round($ratingScores[0]['avg_score']);\n        }\n\n        return $rating;\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/RegisterController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Entity\\User;\nuse Newscoop\\EventDispatcher\\Events\\GenericEvent;\n\n/**\n */\nclass RegisterController extends Zend_Controller_Action\n{\n    public function init()\n    {\n        $this->_helper->contextSwitch\n            ->addActionContext('generate-username', 'json')\n            ->addActionContext('check-username', 'json')\n            ->addActionContext('check-email', 'json')\n            ->addActionContext('pending', 'json')\n            ->addActionContext('create-user', 'json')\n            ->initContext();\n\n        $this->auth = Zend_Auth::getInstance();\n    }\n\n    public function indexAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $form = new Application_Form_Register();\n        $form->setMethod('POST');\n\n        $request = $this->getRequest();\n        if ($request->isPost() && $form->isValid($request->getPost())) {\n            $values = $form->getValues();\n            $users = $this->_helper->service('user')->findBy(array(\n                'email' => $values['email'],\n            ));\n\n            if (count($users) > 0) {\n                $user = array_pop($users);\n            } else {\n                $publicationService = \\Zend_Registry::get('container')->getService('newscoop_newscoop.publication_service');\n                $user = $this->_helper->service('user')->createPending($values['email'], null, null, null, $publicationService->getPublication()->getId());\n            }\n\n            if (!$user->isPending()) {\n                $form->email->addError(sprintf($translator->trans('User with email %s is registered already.', array(), 'users'), $values['email']));\n            } else {\n                $this->_helper->service('email')->sendConfirmationToken($user);\n                $this->_helper->redirector('after');\n            }\n        }\n\n        $this->view->form = $form;\n    }\n\n    public function createUserAction()\n    {\n        $parameters = $this->getRequest()->getParams();\n\n        $user = $this->_helper->service('user')->findBy(array(\n            'email' => $parameters['email'],\n        ));\n\n        if ($user) {\n            echo '0';\n            exit;\n        } else {\n            $user = $this->_helper->service('user')->createPending($parameters['email'], $parameters['first_name'], $parameters['last_name'], $parameters['subscriber_id']);\n            $this->_helper->service('email')->sendConfirmationToken($user);\n            echo '1';\n            exit;\n        }\n    }\n\n    public function afterAction()\n    {\n    }\n\n    public function confirmAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $session = \\Zend_Registry::get('container')->getService('session');\n        $user = $this->getAuthUser();\n        $form = $this->_helper->form('confirm');\n        $form->setMethod('POST');\n        $form->setDefaults(array(\n            'first_name' => $user->getFirstName(),\n            'last_name' => $user->getLastName(),\n            'username' => $this->_helper->service('user')->generateUsername($user->getFirstName(), $user->getLastName()),\n        ));\n\n        if ($this->auth->hasIdentity()) {\n            $form->removeElement('password');\n            $form->removeElement('password_confirm');\n        }\n\n        $request = $this->getRequest();\n        if ($request->isPost() && $form->isValid($request->getPost())) {\n            $values = $form->getValues();\n\n            try {\n                if (!empty($values['image'])) {\n                    $imageInfo = array_pop($form->image->getFileInfo());\n                    $values['image'] = $this->_helper->service('image')->save($imageInfo);\n                }\n                $this->_helper->service('user')->savePending($values, $user);\n                $this->_helper->service('dispatcher')->dispatch('user.register', new GenericEvent($this, array(\n                    'user' => $user,\n                )));\n                $this->_helper->service('user.token')->invalidateTokens($user, 'email.confirm');\n                $auth = \\Zend_Auth::getInstance();\n                if ($auth->hasIdentity()) {\n                    $this->_helper->flashMessenger('User registered successfully.');\n                    if (isset($values['_target_path']) && !empty($values['_target_path'])) {\n                        $this->_helper->redirector->gotoUrl($values['_target_path']);\n                    }\n                    $this->_helper->redirector(null, null, 'default');\n                } else {\n                    $adapter = $this->_helper->service('auth.adapter');\n                    $adapter->setEmail($user->getEmail())->setPassword($values['password']);\n                    $auth->authenticate($adapter);\n                    $token = $this->_helper->service('user')->loginUser($user, 'frontend_area');\n                    $session->set('_security_frontend_area', serialize($token));\n                    $OAuthtoken = $this->_helper->service('user')->loginUser($user, 'oauth_authorize');\n                    $session->set('_security_oauth_authorize', serialize($OAuthtoken));\n                    if (isset($values['_target_path']) && !empty($values['_target_path'])) {\n                        $this->_helper->redirector->gotoUrl($values['_target_path']);\n                    }\n                    $this->_helper->redirector('index', 'dashboard', 'default', array('first' => 1));\n                }\n            } catch (InvalidArgumentException $e) {\n                $form->username->addError($translator->trans('Username is used. Please use another one.', array(), 'users'));\n            }\n        }\n\n        $this->view->form = $form;\n        $this->view->user = new \\MetaUser($user);\n        $this->view->social = $this->_getParam('social') ?: false;\n    }\n\n    public function generateUsernameAction()\n    {\n        $this->view->username = $this->_helper->service('user')\n            ->generateUsername($this->_getParam('first_name'), $this->_getParam('last_name'));\n    }\n\n    /**\n     * Test if username is available\n     */\n    public function checkUsernameAction()\n    {\n        $this->view->status = $this->_helper->service('user')\n            ->checkUsername($this->_getParam('username'));\n    }\n\n    /**\n     * Test if email is available\n     */\n    public function checkEmailAction()\n    {\n        $users = $this->_helper->service('user')->findBy(array(\n            'email' => $this->_getParam('email'),\n        ));\n\n        if (sizeof($users) > 0) {\n            $user = array_pop($users);\n            if (!$user->isPending()) {\n                $this->view->status = false;\n\n                return;\n            }\n        }\n\n        $this->view->status = true;\n    }\n\n    public function pendingAction()\n    {\n        if ($this->_getParam('email')) {\n            $user = $this->_helper->service('user')->findBy(array('email' => $this->_getParam('email')));\n\n            if ($user) {\n                $this->view->result = '0';\n            } else {\n                $user = $this->_helper->service('user')->createPending($this->_getParam('email'));\n                $this->_helper->service('email')->sendConfirmationToken($user);\n                $this->view->result = '1';\n            }\n        }\n\n        $this->view->result = '0';\n    }\n\n    /**\n     * Get user by token or auth\n     *\n     * @return Newscoop\\Entity\\User\n     */\n    private function getAuthUser()\n    {\n        if ($this->auth->hasIdentity()) {\n            $user = $this->_helper->service('user')->find($this->auth->getIdentity());\n        } else {\n            $user = $this->_helper->service('user')->find($this->_getParam('user'));\n        }\n\n        if (empty($user)) {\n            $this->_helper->flashMessenger(array('error', \"User not found\"));\n            $this->_helper->redirector(null, null, 'default');\n        }\n\n        if (!$user->isPending()) {\n            $this->_helper->flashMessenger(array('error', \"User has been activated\"));\n            $this->_helper->redirector(null, null, 'default');\n        }\n\n        if ($this->auth->hasIdentity()) {\n            return $user;\n        }\n\n        $token = $this->_getParam('token', false);\n        if (!$token && !$auth->hasIdentity()) {\n            $this->_helper->flashMessenger(array('error', \"No token provided\"));\n            $this->_helper->redirector(null, null, 'default');\n        }\n\n        if (!$this->_helper->service('user.token')->checkToken($user, $token, 'email.confirm')) {\n            $this->_helper->flashMessenger(array('error', \"Invalid token\"));\n            $this->_helper->redirector(null, null, 'default');\n        }\n\n        return $user;\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/SearchController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass SearchController extends Zend_Controller_Action\n{\n    public function indexAction()\n    {\n        if ($this->_getParam('language')) {\n            $gimme = CampTemplate::singleton()->context();\n            $gimme->language = MetaLanguage::createFromCode($this->_getParam('language'));\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/TopicController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Topics controller\n */\n\nclass TopicController extends Zend_Controller_Action\n{\n    public function articlesAction()\n    {\n        $em = \\Zend_Registry::get('container')->get('em');\n        $topicId = $this->_getParam('id');\n        $gimme = CampTemplate::singleton()->context();\n\n        $language = $em->getRepository('Newscoop\\Entity\\Language')\n            ->findOneByCode($this->_getParam('language'));\n        $query = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')\n            ->getSingleTopicQuery($topicId, $language->getCode());\n\n        $topic = $query->getOneOrNullResult();\n\n        if (!$topic) {\n            throw new \\Exception('We can\\'t find that topic');\n        }\n\n        $gimme->topic = new \\MetaTopic($topic->getId());\n        $this->view->topic = $gimme->topic;\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/UserController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Entity\\User;\n\n/**\n */\nclass UserController extends Zend_Controller_Action\n{\n    const LIMIT = 8;\n\n    /** @var Newscoop\\Services\\ListUserService */\n    private $service;\n\n    /** @var int */\n    private $page;\n\n    public function init()\n    {\n        $this->service = $this->_helper->service('user.list');\n\n        $this->_helper->contextSwitch()\n            ->addActionContext('send-email', 'json')\n            ->initContext();\n\n        $this->page = $this->_getParam('page', 1);\n        if ($this->page < 1) {\n            $this->page = 1;\n        }\n    }\n\n    public function indexAction()\n    {\n        $count = $this->service->getActiveUsers(true);\n        $users = $this->service->getActiveUsers(false, $this->page, self::LIMIT);\n\n        $this->setViewUsers($users);\n        $this->setViewPaginator($count, self::LIMIT);\n    }\n\n    public function searchAction()\n    {\n        $query = $this->_getParam('q');\n        $users = $this->service->findUsersBySearch($query);\n        $this->setViewUsers($users);\n        $this->setViewPaginator(0, self::LIMIT);\n        $this->render('index');\n    }\n\n    public function filterAction()\n    {\n        list($from, $to) = array_map('strtolower', explode('-', $this->_getParam('f', 'a-z')));\n        $letters = range($from, $to);\n        $count = $this->service->findUsersLastNameInRange($letters, true);\n        $users = $this->service->findUsersLastNameInRange($letters, false, $this->page, self::LIMIT);\n        $this->setViewUsers($users);\n        $this->setViewPaginator($count, self::LIMIT);\n        $this->render('index');\n    }\n\n    public function editorsAction()\n    {\n        $count = $this->service->getEditorsCount();\n        $users = $this->service->findEditors(self::LIMIT, ($this->page - 1) * self::LIMIT);\n        $this->setViewUsers($users);\n        $this->setViewPaginator($count, self::LIMIT);\n        $this->view->active = 'editors';\n        $this->render('index');\n    }\n\n    /**\n     * Set view users\n     *\n     * @param array $users\n     * @return void\n     */\n    private function setViewUsers($users)\n    {\n        $this->view->users = array_map(function($user) {\n            return new \\MetaUser($user);\n        }, $users);\n    }\n\n    /**\n     * Set view paginator\n     *\n     * @param int $count\n     * @param int $perPage\n     * @return void\n     */\n    private function setViewPaginator($count, $perPage)\n    {\n        $adapter = new Zend_Paginator_Adapter_Null($count);\n        $paginator = new Zend_Paginator($adapter);\n        Zend_Paginator::setDefaultScrollingStyle('Sliding');\n        $paginator->setItemCountPerPage($perPage);\n        $paginator->setCurrentPageNumber($this->page);\n        $this->view->paginator = $paginator->getPages();\n    }\n\n    public function profileAction()\n    {\n        $this->view->headLink()->appendStylesheet($this->view->baseUrl('/js/jquery/fancybox/jquery.fancybox-1.3.4.css'));\n\n        $this->view->headScript()->appendFile($this->view->baseUrl('/js/jquery/fancybox/jquery.fancybox-1.3.4.pack.js'));\n        $this->view->headScript()->appendFile($this->view->baseUrl('/public/js/user_profile.js'));\n\n        $user = $this->getUser($this->_getParam('username'));\n\n        $this->view->user = new MetaUser($user);\n        $this->view->profile = $user->getAttributes();\n    }\n\n    public function sendEmailAction()\n    {   \n        $translator = Zend_Registry::get('container')->getService('translator');\n        $to = $this->getUser($this->_getParam('username'));\n        if (!$to->getAttribute('email_public')) {\n            $this->view->error = $translator->trans(\"User has no public email.\");\n            return;\n        }\n\n        $from = $this->_helper->service('user')->getCurrentUser();\n        if (!$from) {\n            $this->view->message = $translator->trans(\"You have to be logged in to send an email.\");\n            return;\n        }\n\n        if ($to->getId() == $from->getId()) {\n            $this->view->message = $translator->trans(\"You can't send email to yourself.\");\n            return;\n        }\n\n        $form = new Application_Form_SendEmail();\n        $request = $this->getRequest();\n        if ($form->isValid($request->getParams())) {\n            $values = $form->getValues();\n            $this->_helper->service('email')->sendUserEmail($from->getEmail(), $to->getEmail(), $values['subject'], $values['message']);\n            $this->view->status = 1;\n        }\n    }\n\n    /**\n     * Get user by username\n     *\n     * @param string $username\n     * @return Newscoop\\Entity\\User\n     */\n    private function getUser($username)\n    {\n        if (empty($username)) {\n            $this->_helper->flashMessenger(array('error', \"User '$username' not found\"));\n            $this->_helper->redirector('index');\n        }\n\n        $user = $this->service->findOneBy(array(\n            'username' => $username,\n        ));\n\n        if (!$user || !$user->isActive() || !$user->isPublic()) {\n            $this->_helper->flashMessenger(array('error', \"User '$username' not found\"));\n            $this->_helper->redirector('index');\n        }\n\n        return $user;\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/helpers/Acl.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Entity\\User;\n\n/**\n * Acl action helper\n */\nclass Action_Helper_Acl extends Zend_Controller_Action_Helper_Abstract\n{\n    /** @var Newscoop\\Entity\\User */\n    private $user = NULL;\n\n    /**\n     * Init\n     *\n     * @return Zend_Acl\n     */\n    public function init()\n    {\n        return $this;\n    }\n\n    /**\n     * Get Acl\n     *\n     * @return Zend_Acl\n     */\n    public function getAcl(\\Zend_Acl_Role_Interface $role)\n    {\n        $aclResource = Zend_Registry::get('acl');\n        return $aclResource->getAcl($role);\n    }\n\n    /**\n     * Permission check\n     *\n     * @params string|NULL $resource\n     * @params string|NULL $action\n     * @params Newscoop\\Entity\\User|NULL $user\n     * @return bool\n     */\n    public function isAllowed($resource, $action = NULL, $user = NULL)\n    {\n        if ($user === NULL) {\n            $user = $this->getCurrentUser();\n        }\n\n        if ($resource !== NULL) {\n            $resource = strtolower($resource);\n        }\n\n        if ($action !== NULL) {\n            $action = strtolower($action);\n        }\n\n        return $this->getAcl($user)->isAllowed($user, $resource, $action);\n    }\n\n    /**\n     * Check permissions and redirect to error screen if not allowed\n     *\n     * @params string $resource\n     * @params string $action\n     * @return void\n     */\n    public function check($resource, $action)\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        if (!$this->isAllowed($resource, $action)) {\n            $redirector = $this->getActionController()->getHelper('redirector');\n            $redirector->gotoSimple('deny', 'error', 'admin', array(\n                'message' => $translator->trans('You are not allowed to $1 $2.', array('$1' => $action, '$2' => $resource), 'user_types'),\n            ));\n        }\n    }\n\n    /**\n     * Set current user\n     *\n     * @param Newscoop\\Entity\\User $user\n     * @return Action_Helper_Acl\n     */\n    public function setUser(User $user)\n    {\n        $this->user = $user;\n        return $this;\n    }\n\n    /**\n     * Get current user\n     *\n     * @return Newscoop\\Entity\\User\n     */\n    private function getCurrentUser()\n    {\n        if ($this->user === NULL) {\n            $this->setUser(Zend_Registry::get('user'));\n        }\n\n        return $this->user;\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/helpers/Article.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Article action helper\n */\nclass Action_Helper_Article extends Zend_Controller_Action_Helper_Abstract\n{\n    /**\n     * Get article edit link\n     *\n     * @param Article $article\n     * @return string\n     */\n    public function getEditLink($article)\n    {\n        $params = array(\n            'f_publication_id' => $article->getPublicationId(),\n            'f_issue_number' => $article->getIssueNumber(),\n            'f_section_number' => $article->getSectionNumber(),\n            'f_article_number' => $article->getArticleNumber(),\n            'f_language_id' => $article->getLanguageId(),\n            'f_language_selected' => $article->getLanguageId(),\n        );\n\n        $paramsStrings = array();\n        foreach ($params as $key => $val) {\n            $paramsStrings[] = \"$key=$val\";\n        }\n\n\t\treturn '/admin/articles/edit.php?' . implode('&', $paramsStrings);\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/helpers/Datatable.php",
    "content": "<?php\nuse Newscoop\\Entity\\Repository\\IDatatableSource,\n    Newscoop\\Entity\\Repository\\DatatableRepository;\n\n/**\n * Datatable helper\n */\nclass Action_Helper_Datatable extends Zend_Controller_Action_Helper_Abstract\n{\n    /** @var Newscoop\\Entity\\Repository\\IDatatableSource */\n    private $dataSource;\n\n    /** @var array */\n    private $cols;\n\n    /**\n     * For storing the keys index for cols array\n     *\n     * @var array\n     */\n    private $colsIndex;\n\n    /**\n     * @todo \"Anonymous functions are currently implemented using the Closure class. This is an implementation detail and should not be relied upon.\" - php.net\n     * @var Closure\n     */\n    private $handle;\n\n    /**\n     * @var array where are keept the options\n     */\n    private $iOptions;\n\n    /**\n     * @return Action_Helper_Datatable\n     */\n    public function init()\n    {\n        $request = $this->getRequest();\n\t\t$this->getActionController()->getHelper('contextSwitch')\n            ->addActionContext($request->getParam('action', 'table'), 'json')\n            ->initContext();\n\n        $view = $this->getActionController()->initView();\n        $this->iOptions = array(\n            'sAjaxSource' => $view->url(array(\n                'controller' => $request->getParam('controller'),\n                'action' => $request->getParam('action', 'index'),\n                'format' => 'json',\n            )) . '?format=json',\n            'bServerSide' => true,\n            'bJQueryUI' => true,\n            'bAutoWidth' => true,\n            'bSaveState' => true,\n            'iDisplayLength' => 25,\n            'bLengthChange' => true,\n            'sPaginationType' => 'full_numbers',\n            'bPaginate' => true,\n            'sDom' => '<\"H\"lfri>t<\"F\"ip>',\n            'aoColumnDefs' => array()\n        );\n\n        return $this;\n    }\n\n    /**\n     * Setter for options\n     *\n     * @param string $p_key\n     * @param mixed  $p_value\n     * @return Action_Helper_Datatable\n     */\n    public function setOption($p_key, $p_value)\n    {\n        $this->iOptions[$p_key] = $p_value;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Set Datasource\n     *\n     * @param Newscoop\\Datatable\\ISource $p_dataSource\n     * @return Action_Helper_Datatable\n     */\n    public function setDataSource($p_dataSource)\n    {\n        $this->dataSource = $p_dataSource;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Set entity\n     *\n     * @param string $entity\n     * @return Action_Helper_Datatable\n     */\n    public function setEntity($p_entity)\n    {\n        $em = $this->getActionController()\n            ->getHelper('entity')\n            ->getManager();\n\n        $this->dataSource = new DatatableRepository($em, (string) $p_entity);\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    private function buildColumnDefs()\n    {\n        foreach($this->colsIndex as $key => $value)\n        {\n            $this->iOptions['aoColumnDefs'][] = array( 'aTargets' => array($value));\n        }\n    }\n    /**\n     * Set table columns\n     *\n     * @param array $cols\n     * @return Action_Helper_Datatable\n     */\n    public function setCols(array $cols, array $sorting = array())\n    {\n        $this->cols = $cols;\n        $this->colsIndex = array_flip(array_keys($this->cols));\n        $this->buildColumnDefs();\n        $this->setSorting($sorting);\n       \n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Set initial sorting columns (aaSorting)\n     *\n     * @param array $initialSort\n     * @return Action_Helper_Datatable\n     */\n    public function setInitialSorting(array $initial_sort = array())\n    {\n        $aa_sort = array();\n        foreach ($initial_sort as $column_name => $direction) {\n            $aa_sort[] = array($this->colsIndex[$column_name], $direction);\n        }\n\n        $this->iOptions['aaSorting'] = $aa_sort;\n        // return this for chaining mechanism\n        return $this;\n    }\n    \n    /**\n     * Set searchable columns (bSearchable_col#)\n     *\n     * @param array $searchable\n     * @return Action_Helper_Datatable\n     */\n    public function setSearchable(array $searchable = array())\n    {\n        foreach ($searchable as $column_name => $boolean) {\n            $id = $this->colsIndex[$column_name];\n            \n            $this->iOptions[\"bSearchable_{$id}\"] = $boolean;\n        }\n    \n        // return this for chaining mechanism\n        return $this;\n    }\n\n\n    /**\n     * Set sorting columns\n     *\n     * @param array $nonsorting\n     * @return Action_Helper_Datatable\n     */\n    public function setSorting(array $p_sorting = array())\n    {\n        $this->setHeader('bSortable', $p_sorting);\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Set strip classes to use when rendering the table\n     * Usefull for odd and even class\n     *\n     * @param array $p_value\n     * @return Action_Helper_Datatable\n     */\n    public function setStripClasses(array $p_value = array())\n    {\n       $this->iOptions['asStripClasses'] = $p_value;\n        // return this for chaining mechanism\n        return $this;\n    }\n    /**\n     * Toggle automatic width\n     *\n     * @param bool $p_state null\n     * @return Action_Helper_Datatable\n     */\n    public function toggleAutomaticWidth($p_state = null)\n    {\n        if(!is_null($p_state))\n            $this->iOptions['bAutoWidth'] = $p_state;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Set custom widths\n     *\n     * @param array|bool $p_widths\n     * @return Action_Helper_Datatable\n     */\n    public function setWidths($p_widths = false)\n    {\n        $this->toggleAutomaticWidth(false);\n        $this->setHeader('sWidth', $p_widths);\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Set body properties\n     *\n     * @param string $p_columnProperty\n     * @param array $p_values\n     * @return Action_Helper_Datatable\n     */\n    public function setBody($p_columnProperty, array $p_values = array())\n    {\n        if(count($p_values))\n        {\n            foreach($p_values as $key => $value)\n            {\n                if(is_string($key))\n                    $key = $this->colsIndex[$key];\n                $this->iOptions['aoColumns'][$key][$p_columnProperty] = $value;\n            }\n        }\n        // return this for chaining mechanism\n        return $this;\n    }\n\n\n    /**\n     * Set visibility\n     *\n     * @param array|bool $p_value\n     * @return Action_Helper_Datatable\n     */\n    public function setVisible(array $p_values = array())\n    {\n        $this->setBody('bVisible', $p_values);\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Set custom widths\n     *\n     * @param array|bool $p_value\n     * @return Action_Helper_Datatable\n     */\n    public function setDataProp(array $p_values = array())\n    {\n        $this->setBody('mData', $p_values);\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Set header properties\n     *\n     * @param string $p_columnProperty\n     * @param array $p_values\n     * @return Action_Helper_Datatable\n     */\n    public function setHeader($p_columnProperty, array $p_values = array())\n    {\n        if(count($p_values))\n        {\n            foreach($p_values as $key => $value)\n            {\n                if(is_string($key))\n                    $key = $this->colsIndex[$key];\n                $this->iOptions['aoColumnDefs'][$key][$p_columnProperty] = $value;\n            }\n        }\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Set header style classes\n     *\n     * @param array $p_values\n     * @return Action_Helper_Datatable\n     */\n    public function setClasses(array $p_values = array())\n    {\n        $this->setHeader('sClass',$p_values);\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Set handle\n     *\n     * @param Closure $handle\n     * @return Action_Helper_Datatable\n     */\n    public function setHandle(Closure $handle)\n    {\n        $this->handle = $handle;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Dispatch table\n     *\n     * @return void\n     */\n    public function dispatch()\n    {\n        $view = $this->getActionController()->initView();\n        $params = $this->getRequest()->getParams();\n        if (empty($params['format'])) { // render table\n            $view->iOptions = $this->iOptions;\n            $view->cols = $this->cols;\n            return;\n        }\n\n        // get data\n        $rows = array();\n        $handle = $this->handle;\n\n        $data = $this->dataSource->getData($params, $this->cols);\n        foreach ($data as $entity) {\n            $rows[] = $handle($entity);\n        }\n\n        // set data\n        $view->iTotalRecords = $this->dataSource->getCount();\n        $view->iTotalDisplayRecords = $this->dataSource->getCount($params, $this->cols);\n        $view->aaData = $rows;\n        $view->sEcho = !empty($params['sEcho']) ? $params['sEcho'] : 0;\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/helpers/Em.php",
    "content": "<?php\n\nuse Doctrine\\ORM\\EntityManager;\n\n/**\n * Entity manager action helper\n */\nclass Action_Helper_Em extends Zend_Controller_Action_Helper_Abstract\n{\n    /** @var Doctrine\\ORM\\EntityManager */\n    private $em = NULL;\n\n    /**\n     * Init\n     */\n    public function init()\n    {\n        return $this->getEntityManager();\n    }\n\n    /**\n     * Set entity manager\n     *\n     * @param Doctrine\\ORM\\EntityManager\n     * @return Action_Helper_Em\n     */\n    public function setEntityManager(EntityManager $em)\n    {\n        $this->em = $em;\n        return $this;\n    }\n\n    /**\n     * Get entity manager\n     *\n     * @return Doctrine\\ORM\\EntityManager\n     */\n    public function getEntityManager()\n    {\n        if ($this->em === NULL) {\n            $controller = $this->getActionController();\n            $bootstrap = $controller->getInvokeArg('bootstrap');\n            $doctrine = $bootstrap->getResource('doctrine');\n            $this->setEntityManager($doctrine->getEntityManager());\n        }\n\n        return $this->em;\n    }\n\n    /**\n     * Get entity repository\n     *\n     * @params string $entity\n     * @return Doctrine\\ORM\\EntityRepository\n     */\n    public function getRepository($entity)\n    {\n        return $this->getEntityManager()->getRepository((string) $entity);\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/helpers/Entity.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Doctrine\\ORM\\EntityManager;\n\n/**\n * Entity action helper\n */\nclass Action_Helper_Entity extends Zend_Controller_Action_Helper_Abstract\n{\n    /** @var Doctrine\\ORM\\EntityManager */\n    private $em;\n\n    /**\n     * Init Entity manager\n     *\n     * @return Action_Helper_Entity\n     */\n    public function init()\n    {\n        $this->getManager();\n        return $this;\n    }\n\n    /**\n     * Set entity manager\n     *\n     * @param Doctrine\\ORM\\EntityManager\n     * @return Action_Helper_Entity\n     */\n    public function setManager(EntityManager $em)\n    {\n        $this->em = $em;\n        return $this;\n    }\n\n    /**\n     * Get entity manager\n     *\n     * @return Doctrine\\ORM\\EntityManager\n     */\n    public function getManager()\n    {\n        if ($this->em === NULL) {\n            $this->setManager(Zend_Registry::get('container')->getService('em'));\n        }\n\n        return $this->em;\n    }\n\n    /**\n     * Get entity repository\n     *\n     * @params mixed $entity\n     * @return Doctrine\\ORM\\EntityRepository\n     */\n    public function getRepository($entity)\n    {\n        return $this->em->getRepository($this->getClassName($entity));\n    }\n\n    /**\n     * Flush entity manager\n     *\n     * @return void\n     */\n    public function flushManager()\n    {\n        $this->em->flush();\n    }\n\n    /**\n     * Get entity by parameter\n     *\n     * @param mixed $entity\n     * @param string $key\n     * @param bool $throw\n     * @return object|NULL\n     */\n    public function get($entity, $key = 'id', $throw = TRUE)\n    {\n        $params = $this->getRequest()->getParams();\n        if (!isset($params[$key])) {\n            if ($throw) {\n                throw new InvalidArgumentException;\n            }\n\n            return NULL;\n        }\n\n        $match = $this->em->find($this->getClassName($entity), $params[$key]);\n        if (!$match) {\n            if ($throw) {\n                throw new InvalidArgumentException;\n            }\n\n            return NULL;\n        }\n\n        return $match;\n    }\n\n    /**\n     * Find entity\n     *\n     * @param string $entity\n     * @param mixed $key\n     * @return object\n     */\n    public function find($entity, $key)\n    {\n        return $this->em->find($entity, $key);\n    }\n\n    /**\n     * Direct strategy\n     *\n     * @param mixed $entity\n     * @param string $key\n     * @param bool $throw\n     * @return object|NULL\n     */\n    public function direct($entity, $key, $throw = TRUE)\n    {\n        return $this->get($entity, $key, $throw);\n    }\n\n    /**\n     * Get entity name\n     *\n     * @param mixed $entity\n     * @return string\n     */\n    private function getClassName($entity)\n    {\n        return is_object($entity) ?\n            get_class($entity) : (string) $entity;\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/helpers/Form.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Form action helper\n */\nclass Action_Helper_Form extends Zend_Controller_Action_Helper_Abstract\n{\n    const MASK_APP = 'Application_Form_%s';\n    const MASK_THEME = 'Theme_Form_%s';\n\n    /**\n     */\n    public function init()\n    {\n        $themesService = \\Zend_Registry::get('container')->getService('newscoop_newscoop.themes_service');\n        $this->basePath = $themesService->getThemePath();\n    }\n\n    /**\n     * Get form by given name\n     *\n     * @param  string    $name\n     * @return Zend_Form\n     */\n    public function direct($name)\n    {\n        $className = ucfirst($name);\n        $themeForm = APPLICATION_PATH . '/../themes/' . $this->basePath . 'forms/' . $className . '.php';\n        if (file_exists($themeForm)) {\n            include_once($themeForm);\n            $class = sprintf(self::MASK_THEME, $className);\n        } else {\n            $class = sprintf(self::MASK_APP, $className);\n        }\n\n        return new $class;\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/helpers/GenericDatatable.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Controller\\Action\\Helper\\Datatable\\ADatatable, Newscoop\\Controller\\Action\\Helper\\Datatable\\Adapter; //,   Newscoop\\Controller\\Action\\Helper\\Datatable\\Adapter\\Doctrine as DefaultAdapter\n\n\n/**\n * Datatable helper\n */\nclass Action_Helper_GenericDatatable extends ADatatable\n{\n\n    /**\n     * Script used for rendering\n     * @var string\n     */\n    public $viewPath = '_p/generic-datatable.phtml';\n\n    /**\n     * @var Zend_View\n     */\n    protected $_outputObject;\n\n    /**\n     * Inner flag for data mapping columns set/unset\n     * @var bool\n     */\n    protected $_hasDataMap = false;\n    \n    /**\n     * Init\n     *\n     * @return Action_Helper_GenericDatatable\n     */\n    public function init( Adapter\\IAdapter $p_adapter = null )\n    {\n        parent::init();\n        //$this->setAdapter( is_null( $p_adapter ) ? new DefaultAdapter() : $p_adapter )\n        //    ->setOutputObject( $this->getActionController()->view );\n        return $this;\n    }\n\n    public function dispatch( $p_params = null, $p_cols = null, $p_options = null )\n    {\n        $req = $this->getRequest();\n        if( !$this->_hasDataMap )\n            $this->setDataMap();\n        $this->_isDispatched = true;\n        if( $req->getParam( 'format' ) == 'json' ) {\n            $this->dispatchData( $p_params, $p_cols );\n            return false;\n        }\n        $this->dispatchMedatata( $p_params, $p_options );\n        return $this->_outputObject->render( $this->viewPath );\n    }\n\n    public function setParams( $p_params )\n    {\n        if( @is_array( $p_params ) ) \n        {\n            $sort = array();\n            foreach( $p_params as $k => $v ) \n            {\n                if( strpos( $k , 'iSortCol' ) !== false ) {\n                    $sort[ $v ] = $p_params[ str_replace( 'iSortCol', 'sSortDir', $k ) ];\n                }\n                if( strpos( $k, 'sSearch' ) !== false ) {\n                    $searchCol = ( $colIdxPosMark = strrpos( $k, '_' ) ) ? substr( $k, strrpos( $k, '_' )+1 ) : -1;\n                    $search[ $searchCol ] = $v;                    \n                }\n            }\n        }\n\n        parent::setParams(array(\n            'search' => isset($search) ? $search : NULL,\n            'sort'\t => isset($sort) ? $sort : NULL,\n        ));\n    }\n    \n    /**\n     * Set header properties\n     * @param string $p_columnProperty\n     * @param array $p_values\n     * @return Action_Helper_GenericDatatable\n     */\n    public function setHeader( $p_columnProperty, array $p_values = array() )\n    {\n        if( count( $p_values ) )\n        {\n            foreach( $p_values as $key => $value )\n            {\n                if( is_string( $key ) ) {\n                    $key = $this->_colsIndex[$key];\n                }\n                $this->_options['aoColumnDefs'][$key][$p_columnProperty] = $value;\n            }\n        }\n        return $this;\n    }\n    \n    /**\n\t * Set body properties\n\t *\n\t * @param string $p_columnProperty\n\t * @param array $p_values\n\t * @return Action_Helper_GenericDatatable\n\t */\n    public function setBody( $p_columnProperty, array $p_values = array() )\n    {\n        if( count( $p_values ) )\n        {\n            foreach( $p_values as $key => $value )\n            {\n                if( is_string( $key ) )\n                    $key = $this->_colsIndex[$key];\n                $this->_options['aoColumns'][$key][$p_columnProperty] = $value;\n            }\n        }\n        return $this;\n    }\n\n    /**\n     * N-a sti nimeni\n     */\n    public function buildColumnDefs()\n    {\n        foreach( $this->_colsIndex as $key => $value )\n        {\n            $this->_options['aoColumnDefs'][] = array( 'aTargets' => array( $value ) );\n        }\n        return $this;\n    }\n\n    /**\n     * Set header style classes\n     *\n     * @param array $p_values\n     * @return Action_Helper_GenericDatatable\n     */\n    public function setClasses( array $p_values = array() )\n    {\n        $this->setHeader( 'sClass', $p_values );\n        return $this;\n    }\n\n    /**\n     * Set sorting columns\n     *\n     * @param array $nonsorting\n     * @return Action_Helper_GenericDatatable\n     */\n    public function setSorting( array $p_sorting = array() )\n    {\n        $this->setHeader( 'bSortable', $p_sorting );\n        return $this;\n    }\n    \n\t/**\n\t * Set custom widths\n\t *\n\t * @param array|bool $p_widths\n\t * @return Action_Helper_GenericDatatable\n\t */\n    public function setWidths( $p_widths = false )\n    {\n        //$this->toggleAutomaticWidth( false );\n        $this->setHeader( 'sWidth', $p_widths );\n        return $this;\n    }\n    \n\t/**\n\t * Set data mapping\n\t *\n\t * @param array|bool $p_values\n\t * @return Action_Helper_GenericDatatable\n\t */\n    public function setDataMap( array $p_values = array() )\n    {\n        if( !count( $p_values ) ) {\n            foreach( $this->_colsIndex as $k => $v ) {\n                $p_values[$k] = null;\n            }\n        }\n        \n        $this->setBody( 'mData', $p_values );\n        $this->_hasDataMap = true;\n        \n        return $this;\n    }\n    \n    public function __toString()\n    {\n        return '';\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/helpers/Log.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Log action helper\n */\nclass Action_Helper_Log extends Zend_Controller_Action_Helper_Abstract\n{\n    /** @var Zend_Log */\n    private $logger = NULL;\n\n    /**\n     * Init Logger\n     *\n     * @return Zend_Log\n     */\n    public function init()\n    {\n        return $this->getLogger();\n    }\n\n    /**\n     * Set Logger\n     *\n     * @param Zend_Log\n     * @return Action_Helper_Log\n     */\n    public function setLogger(Zend_Log $logger)\n    {\n        $this->logger = $logger;\n        return $this;\n    }\n\n    /**\n     * Get Logger\n     *\n     * @return Zend_Log\n     */\n    public function getLogger()\n    {\n        if ($this->logger === NULL) {\n//            $controller = $this->getActionController();\n            $this->setLogger(Zend_Registry::get('log'));\n            /*\n            $bootstrap = $controller->getInvokeArg('bootstrap');\n            $this->setLogger($bootstrap->getResource('Log'));\n            */\n        }\n\n        return $this->logger;\n    }\n\n    /**\n     * Direct strategy\n     *\n     * @params string $message\n     * @params int $severity\n     * @return void\n     */\n    public function direct($message, $severity = Zend_Log::INFO, $extra = NULL)\n    {\n        $this->getLogger()->log((string) $message, (int) $severity, $extra);\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/helpers/Newsletter.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\MailChimp\\ListView;\nuse Newscoop\\MailChimp\\MemberView;\n\n/**\n * Newsletter Action Helper\n */\nclass Action_Helper_Newsletter extends Zend_Controller_Action_Helper_Abstract\n{\n    /**\n     */\n    public function initForm(Zend_Form $form, ListView $list, MemberView $member = null)\n    {\n        $newsletter = new Zend_Form_SubForm();\n        $newsletter->addElement('checkbox', 'subscriber', array(\n            'label' => 'I want to receive newsletter',\n        ));\n\n        foreach ($list->groups as $group) {\n            $type = $group['form_field'] == 'radio' ? 'radio' : 'multiCheckbox';\n            $newsletter->addElement($type, $group['name'], array(\n                'label' => $group['name'],\n                'multioptions' => $group['groups'],\n            ));\n        }\n\n        if ($member !== null) {\n            $newsletter->setDefaults(array_merge((array) $member, $member->groups));\n        }\n\n        $form->addSubForm($newsletter, 'newsletter');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/helpers/Plupload.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Plupload helper\n */\nclass Action_Helper_Plupload extends Zend_Controller_Action_Helper_Abstract\n{\n    /**\n     * @return Action_Helper_Plupload\n     */\n    public function init()\n    {\n        $request = $this->getRequest();\n        if ($request->getParam('plupload', false)) {\n            Plupload::OnMultiFileUpload(CS_TMP_TPL_DIR);\n        }\n        return $this;\n    }\n\n    /**\n     * @return array\n     */\n    public function direct()\n    {\n        return $this->getUploadedFiles();\n    }\n\n    /**\n     * Get uploaded files\n     *\n     * @return array\n     */\n    public function getUploadedFiles()\n    {\n        $request = $this->getRequest();\n        $count = (int) $request->getParam('uploader_count', 0);\n\n        $files = array();\n        if ($request->isPost() && $count) {\n            for ($i = 0; $i < $count; $i++) {\n                $tmpnameId = \"uploader_{$i}_tmpname\";\n                $nameId = \"uploader_{$i}_name\";\n                $statusId = \"uploader_{$i}_status\";\n                if ($request->getParam($statusId) == 'done') {\n                    $files[$request->getParam($nameId)] = CS_TMP_TPL_DIR . '/' . $request->getParam($tmpnameId);\n                }\n            }\n        }\n\n        return $files;\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/helpers/Service.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\EventDispatcher\\Events\\GenericEvent;\n\n/**\n * Service container action helper\n */\nclass Action_Helper_Service extends Zend_Controller_Action_Helper_Abstract\n{\n    /** @var Symfony\\Component\\DependencyInjection\\Container */\n    private $container;\n\n    /**\n     */\n    public function init()\n    {\n        $this->container = \\Zend_Registry::get('container');\n    }\n\n    /**\n     * Get service\n     *\n     * @param string $service\n     * @return mixed\n     */\n    public function getService($service)\n    {\n        if (!$this->container->hasService($service)) {\n            throw new InvalidArgumentException(\"Service '$service' not found\");\n        }\n\n        return $this->container->getService($service);\n    }\n\n    /**\n     * Direct get service\n     *\n     * @param string $service\n     * @return mixed\n     */\n    public function direct($service)\n    {\n        return $this->getService($service);\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/helpers/Sidebar.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Sidebar placeholder action helper\n */\nclass Action_Helper_Sidebar extends Zend_Controller_Action_Helper_Abstract\n{\n    const SIDEBAR = 'sidebar';\n\n    /**\n     * Add sidebar\n     *\n     * @param array $config\n     * @param bool $prepend\n     * @return void\n     */\n    public function addSidebar(array $config, $prepend = false)\n    {\n        // init\n        $controller = $this->getActionController();\n        $view = $controller->view;\n\n        if (!empty($config['resource'])) { // check acl\n            $acl = $controller->getHelper('acl');\n            if (!$acl->isAllowed($config['resource'], $config['privilege'])) {\n                return;\n            }\n        }\n\n        // get config\n        $params = $this->getRequest()->getParams();\n        $config = array_merge($params, $config);\n\n        ob_start();\n        echo !empty($config['label']) ? '<h3 class=\"label\">' . $config['label'] . \"</h3>\\n\" : '';\n        echo $view->action($config['action'], $config['controller'], $config['module'], $config);\n        $content = ob_get_clean();\n\n        $method = $prepend ? 'prepend' : 'append';\n        $view->placeholder(self::SIDEBAR)->$method($content);\n    }\n\n    /**\n     * Direct strategy\n     *\n     * @param array $config\n     * @param bool $prepend\n     * @return void\n     */\n    public function direct(array $config, $prepend = false)\n    {\n        $this->addSidebar($config, $prepend);\n    }\n}\n"
  },
  {
    "path": "newscoop/application/controllers/helpers/Smarty.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass Action_Helper_Smarty extends Zend_Controller_Action_Helper_Abstract\n{\n    /** @var array */\n    private $modules = array(\n        'default',\n    );\n\n    /**\n     */\n    public function preDispatch()\n    {\n        $themesService = \\Zend_Registry::get('container')->getService('newscoop_newscoop.themes_service');\n        $controller = $this->getActionController();\n        $GLOBALS['controller'] = $controller;\n\n        $request = $this->getRequest();\n\n        if ($request->getParam('language') == false) {\n            $locale = \\Zend_Controller_Front::getInstance()->getParam('locale');\n            if (!empty($locale)) {\n                $request->setParam('language', $locale);\n            }\n        }\n\n        $format = $request->getParam('format', null);\n        if (isset($format) && $format == \"json\") {\n            return;\n        }\n\n        if (!in_array($request->getParam('module', 'default'), $this->modules) || !array_key_exists('module', $request->getParams())) {\n            return;\n        }\n\n        $themePath = $themesService->getThemePath();\n        $controller->view = new Newscoop\\SmartyView();\n        $controller->view\n            ->addScriptPath(APPLICATION_PATH . '/views/scripts/')\n            ->addScriptPath(realpath(APPLICATION_PATH . \"/../themes/$themePath\"));\n\n        $controller->view->addPath(realpath(APPLICATION_PATH . \"/../themes/$themePath\"));\n\n        $controller->getHelper('viewRenderer')\n            ->setView($controller->view)\n            ->setViewScriptPathSpec(':controller_:action.:suffix')\n            ->setViewSuffix('tpl');\n\n        $controller->getHelper('layout')\n            ->disableLayout();\n\n        // reverse templates directory order\n        \\CampTemplate::singleton()->setTemplateDir(array_reverse(\\CampTemplate::singleton()->getTemplateDir()));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/forms/Confirm.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass Application_Form_Confirm extends Zend_Form\n{\n    public function init()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->addElement('text', 'first_name', array(\n            'label' => $translator->trans('First Name', array(), 'users').'*:',\n            'required' => true,\n            'filters' => array('stringTrim'),\n        ));\n        $this->getElement('first_name')->setOrder(1);\n\n        $this->addElement('text', 'last_name', array(\n            'label' => $translator->trans('Last Name', array(), 'users').'*:',\n            'required' => true,\n            'filters' => array('stringTrim'),\n        ));\n        $this->getElement('last_name')->setOrder(2);\n\n        $this->addElement('text', 'username', array(\n            'label' => $translator->trans('Username', array(), 'users').'*:',\n            'required' => true,\n            'filters' => array('stringTrim'),\n        ));\n        $this->getElement('username')->setOrder(3);\n\n        $this->addElement('file', 'image', array(\n            'label' => $translator->trans('Profile image', array(), 'users'),\n            'maxfilesize' => $this->getMaxFileSize(),\n            'validators' => array(\n                'isImage',\n            ),\n        ));\n        $this->getElement('username')->setOrder(4);\n\n        $this->addElement('password', 'password', array(\n            'label' => $translator->trans('Password').'*:',\n            'required' => true,\n            'filters' => array('stringTrim'),\n            'validators' => array(\n                array('stringLength', false, array(6, 80)),\n            ),\n        ));\n        $this->getElement('password')->setOrder(5);\n\n        $form = $this;\n        $this->addElement('password', 'password_confirm', array(\n            'label' => $translator->trans('Password Confirmation', array(), 'users').'*:',\n            'required' => true,\n            'filters' => array('stringTrim'),\n            'validators' => array(\n                new Zend_Validate_Callback(function ($value, $context) {\n                    return $value == $context['password'];\n                }),\n            ),\n            'errorMessages' => array($translator->trans(\"Password confirmation does not match your password.\", array(), 'users')),\n        ));\n        $this->getElement('password_confirm')->setOrder(6);\n\n        $this->addElement('checkbox', 'terms_of_use', array(\n            'label' => $translator->trans('Accepting terms of use', array(), 'users'),\n            'required' => true,\n            'validators' => array(\n                array('greaterThan', true, array('min' => 0)),\n            ),\n            'errorMessages' => array($translator->trans('You must accept the terms of use.', array(), 'users')),\n        ));\n\n        $this->getElement('terms_of_use')->setOrder(7);\n\n        $this->addElement('submit', 'submit', array(\n            'label' => $translator->trans('Login'),\n            'ignore' => true,\n        ));\n        $this->getElement('submit')->setOrder(8);\n\n        $this->addElement('hidden', '_target_path', array(\n            'decorators' => array('ViewHelper')\n        ));\n        $this->getElement('_target_path')->setOrder(9);\n    }\n\n    /**\n     * Get max file size\n     *\n     * @return int\n     */\n    public function getMaxFileSize()\n    {\n        $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n        $maxFileSize = $preferencesService->MaxProfileImageFileSize ?: ini_get('upload_max_filesize');\n\n        return camp_convert_bytes($maxFileSize);\n    }\n}\n"
  },
  {
    "path": "newscoop/application/forms/Contact.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass Application_Form_Contact extends Zend_Form\n{\n    public function init()\n    {\n        $this->addElement('text', 'first_name', array(\n            'label' => 'First Name',\n            'filters' => array('stringTrim'),\n        ));\n\n        $this->addElement('text', 'last_name', array(\n            'label' => 'Last Name',\n            'filters' => array('stringTrim'),\n        ));\n\n        $this->addElement('text', 'email', array(\n            'label' => 'Email',\n            'required' => true,\n            'filters' => array('stringTrim'),\n        ));\n\n        $this->addElement('select', 'subject', array(\n            'label' => 'Subject',\n            'registerInArrayValidator' => FALSE,\n        ));\n\n        $this->addElement('textarea', 'message', array(\n            'label' => 'Message',\n            'required' => true,\n        ));\n\n        $secretConfigFile = APPLICATION_PATH . '/configs/secret.ini';\n        if (file_exists($secretConfigFile)) {\n            $config = new \\Zend_Config_Ini($secretConfigFile, APPLICATION_ENV);\n            $this->addElement('captcha', 'captcha', array(\n                'label' => \"Please verify you're a human\",\n                'captcha' => array(\n                    'ReCaptcha',\n                ),\n            ));\n\n            $this->captcha->getCaptcha()->setPubkey($config->get('recaptcha')->get('public_key'));\n            $this->captcha->getCaptcha()->setPrivkey($config->get('recaptcha')->get('private_key'));\n        }\n\n        $this->addElement('submit', 'submit', array(\n            'label' => 'Send',\n            'ignore' => true,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/forms/Login.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass Application_Form_Login extends Zend_Form\n{\n    public function init()\n    {\n        $this->addElement('hidden', '_target_path', array(\n            'value' => $_SERVER['REQUEST_URI'],\n        ));\n\n        $this->addElement('text', 'email', array(\n            'label' => 'Email',\n            'required' => true,\n            'filters' => array(\n                'stringTrim',\n            ),\n        ));\n\n        $this->addElement('password', 'password', array(\n            'label' => 'Password',\n            'required' => true,\n            'filters' => array(\n                'stringTrim',\n            ),\n        ));\n\n        $this->addElement('submit', 'submit', array(\n            'label' => 'Sign In',\n            'ignore' => true,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/forms/PasswordRestore.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass Application_Form_PasswordRestore extends Zend_Form\n{\n    public function init()\n    {\n        $this->addElement('text', 'email', array(\n            'label' => 'E-mail',\n            'required' => true,\n            'filters' => array(\n                'stringTrim',\n            ),\n        ));\n\n        $this->addElement('submit', 'submit', array(\n            'label' => 'Restore password',\n            'ignore' => true,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/forms/PasswordRestorePassword.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass Application_Form_PasswordRestorePassword extends Zend_Form\n{\n    public function init()\n    {\n        $this->addElement('password', 'password', array(\n            'label' => 'Password',\n            'required' => true,\n            'filters' => array('stringTrim'),\n            'validators' => array(\n                array('stringLength', false, array(6, 80)),\n            ),\n        ));\n\n        $this->addElement('password', 'password_confirm', array(\n            'label' => 'Password Confirmation',\n            'required' => true,\n            'filters' => array('stringTrim'),\n            'validators' => array(\n                new Zend_Validate_Callback(function ($value, $context) {\n                    return $value == $context['password'];\n                }),\n            ),\n            'errorMessages' => array(\"Password confirmation does not match your password.\"),\n        ));\n\n        $this->addElement('submit', 'submit', array(\n            'label' => 'Set password',\n            'ignore' => true,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/forms/Profile.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Entity\\User;\n\n/**\n */\nclass Application_Form_Profile extends Zend_Form\n{\n    public function init()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->setAttrib('enctype', 'multipart/form-data');\n\n        $this->addElement('text', 'first_name', array(\n            'label' => $translator->trans('First Name', array(), 'users'),\n            'filters' => array('stringTrim'),\n        ));\n\n        $this->addElement('text', 'last_name', array(\n            'label' => $translator->trans('Last Name', array(), 'users'),\n            'filters' => array('stringTrim'),\n        ));\n\n        $this->addElement('text', 'username', array(\n            'label' => $translator->trans('Username', array(), 'users'),\n            'filters' => array('stringTrim'),\n            'required' => true,\n        ));\n\n        $this->addElement('password', 'password', array(\n            'label' => $translator->trans('Password'),\n        ));\n\n        $this->addElement('file', 'image', array(\n            'label' => $translator->trans('Profile image', array(), 'users'),\n        ));\n\n        $profile = new Zend_Form_SubForm();\n\n        $profile->addElement('radio', 'gender', array(\n            'label' => $translator->trans('Gender', array(), 'users'),\n            'multioptions' => array(\n                'male' => 'Male',\n                'female' => 'Female',\n            ),\n        ));\n\n        $profile->addElement('textarea', 'bio', array(\n            'label' => $translator->trans('About me', array(), 'users'),\n            'filters' => array('stringTrim'),\n            'cols' => 60,\n            'rows' => 4,\n        ));\n\n        $profile->addElement('text', 'birth_date', array(\n            'label' => $translator->trans('Date of birth', array(), 'users'),\n            'class' => 'date',\n            'filters' => array('stringTrim'),\n        ));\n\n        $profile->addElement('text', 'organisation', array(\n            'label' => $translator->trans('Organisation', array(), 'users'),\n            'filters' => array('stringTrim'),\n        ));\n\n        $profile->addElement('text', 'website', array(\n            'label' => $translator->trans('Website', array(), 'users'),\n            'filters' => array('stringTrim'),\n        ));\n\n        $profile->addElement('text', 'twitter', array(\n            'label' => $translator->trans('Twitter', array(), 'users'),\n            'filters' => array('stringTrim'),\n        ));\n\n        $profile->addElement('text', 'facebook', array(\n            'label' => $translator->trans('Facebook', array(), 'users'),\n            'filters' => array('stringTrim'),\n        ));\n\n        $profile->addElement('text', 'google', array(\n            'label' => $translator->trans('Google+', array(), 'users'),\n            'filters' => array('stringTrim'),\n        ));\n\n        $profile->addElement('text', 'geolocation', array(\n            'label' => $translator->trans('Geolocation', array(), 'users'),\n            'filters' => array('stringTrim'),\n        ));\n\n        $profile->addElement('checkbox', 'first_name_public', array(\n            'label' => $translator->trans('First Name Public', array(), 'users'),\n        ));\n\n        $profile->addElement('checkbox', 'last_name_public', array(\n            'label' => $translator->trans('Last Name Public', array(), 'users'),\n        ));\n\n        $profile->addElement('checkbox', 'email_public', array(\n            'label' => $translator->trans('Allow sending emails', array(), 'users'),\n        ));\n\n        $this->addSubForm($profile, 'attributes');\n\n        $this->addElement('submit', 'submit', array(\n            'label' => $translator->trans('Save profile', array(), 'users'),\n            'ignore' => true,\n        ));\n    }\n\n    public function setDefaultsFromEntity(User $user)\n    {\n        $defaults = array(\n            'first_name' => $user->getFirstName(),\n            'last_name' => $user->getLastName(),\n            'username' => $user->getUsername(),\n            'attributes' => array(),\n        );\n\n        $profile = $this->getSubForm('attributes');\n        foreach ($profile as $field) {\n            $defaults['attributes'][$field->getName()] = (string) $user->getAttribute($field->getName());\n        }\n\n        $this->setDefaults($defaults);\n    }\n\n    /**\n     * Get maximum file size in bytes\n     *\n     * @return int\n     */\n    public function getMaxFileSize()\n    {   \n        $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n        $maxFileSize = $preferencesService->MaxProfileImageFileSize;\n        if (!$maxFileSize) {\n            $maxFileSize = ini_get('upload_max_filesize');\n        }\n\n        return camp_convert_bytes($maxFileSize);\n    }\n}\n"
  },
  {
    "path": "newscoop/application/forms/Register.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass Application_Form_Register extends Zend_Form\n{\n    public function init()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->addElement('text', 'email', array(\n            'label' => $translator->trans('Email', array(), 'users'),\n            'required' => true,\n            'filters' => array(\n                'stringTrim',\n            ),\n            'validators' => array(\n                array('emailAddress', true, array('domain' => APPLICATION_ENV !== 'development')),\n            ),\n        ));\n\n        $this->addElement('checkbox', 'terms_of_use', array(\n            'label' => $translator->trans('Accepting terms of use', array(), 'users'),\n            'required' => true,\n            'validators' => array(\n                array('greaterThan', true, array('min' => 0)),\n            ),\n        ));\n\n\n        $this->addElement('submit', 'submit', array(\n            'label' => $translator->trans('Continue', array(), 'users'),\n            'ignore' => true,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/forms/SendEmail.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass Application_Form_SendEmail extends Zend_Form\n{\n    public function init()\n    {\n        $this->addElement('text', 'subject', array(\n            'label' => 'Subject',\n            'required' => true,\n            'filters' => array(\n                'stringTrim',\n            ),\n        ));\n\n        $this->addElement('textarea', 'message', array(\n            'label' => 'Message',\n            'required' => true,\n            'columns' => 60,\n            'rows' => 5,\n        ));\n\n        $this->addElement('submit', 'submit', array(\n            'label' => 'Send email',\n            'ignore' => true,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/forms/Social.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass Application_Form_Social extends Zend_Form\n{\n    public function init()\n    {\n        $this->addElement('text', 'first_name', array(\n            'label' => 'First Name',\n            'required' => true,\n            'filters' => array('stringTrim'),\n        ));\n\n        $this->addElement('text', 'last_name', array(\n            'label' => 'Last Name',\n            'required' => true,\n            'filters' => array('stringTrim'),\n        ));\n\n        $this->addElement('text', 'username', array(\n            'label' => 'Username',\n            'required' => true,\n            'filters' => array('stringTrim'),\n        ));\n\n        $this->addElement('text', 'email', array(\n            'label' => 'Email',\n            'required' => true,\n            'filters' => array('stringTrim'),\n            'validators' => array(\n                array('emailAddress'),\n            ),\n        ));\n\n        $this->addElement('submit', 'submit', array(\n            'label' => 'Register',\n            'ignore' => true,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/forms/Topics.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass Application_Form_Topics extends Zend_Form\n{\n    public function init()\n    {\n        $this->addElement('multiCheckbox', 'topics', array(\n            'required' => false,\n        ));\n\n        $this->addElement('multiCheckbox', 'selected', array(\n            'required' => false,\n        ));\n\n        $this->addElement('hidden', 'languageId', array(\n            'required' => true,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/layouts/scripts/admin.phtml",
    "content": "<!DOCTYPE html>\n<?php $translator = \\Zend_Registry::get('container')->getService('translator'); ?>\n<html lang=\"<?php echo $this->locale; ?>\" dir=\"ltr\">\n<head>\n    <meta charset=\"utf-8\" />\n    <meta name=\"robots\" content=\"noindex, nofollow\" />\n    <?php echo $this->headTitle(); ?>\n\n    <script>\n        // set vars\n        var popupFlash = false;\n        var website_url = '<?php echo $this->baseUrl(); ?>';\n        var g_admin_url = '<?php echo $this->baseUrl('admin'); ?>';\n        var g_admin_img = '<?php echo $this->baseUrl('admin-style/images'); ?>';\n        var g_security_token = '<?php echo SecurityToken::GetToken(); ?>';\n\n        var localizer = localizer || {\n            processing: '<?php echo $translator->trans('Processing...', array(), 'home'); ?>',\n            session_expired: '<?php echo $translator->trans('Session expired.', array(), 'home'); ?>',\n            please: '<?php echo $translator->trans('Please', array(), 'home'); ?>',\n            login: '<?php echo $translator->trans('login', array(), 'home'); ?>',\n            confirm: '<?php echo $translator->trans('Are you sure you want to', array(), 'home'); ?>',\n            connection_interrupted : '<?php echo $translator->trans('Connection interrupted', array(), 'home') ?>',\n            try_again_later : '<?php echo $translator->trans('try again later', array(), 'home') ?>'\n        };\n\n        <?php if (isset($_SERVER['HTTP_REFERER']) && strpos($_SERVER['HTTP_REFERER'], 'login.php') !== FALSE) { ?>\n        // close window after relogin\n        if (opener && !opener.closed && opener.setSecurityToken) {\n            opener.setSecurityToken(g_security_token);\n            opener.focus();\n            window.close();\n        }\n        <?php } ?>\n    </script>\n\n    <link rel=\"shortcut icon\" href=\"<?php echo $this->baseUrl('/admin-style/images/7773658c3ccbf03954b4dacb029b2229.ico'); ?>\" />\n\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/jquery-ui-1.8.6.custom.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/js/jquery/fancybox/jquery.fancybox-1.3.4.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/ColVis.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/admin_stylesheet_new.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/admin_stylesheet.css'); ?>?v=1.0\" />\n\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/action_buttons.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/content.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/fg.menu.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/form.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/layout.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/sidebar.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/widgets.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/zend_admin_stylesheet.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/lists.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/slideshow-list.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/pagination.css'); ?>\" />\n    <?php if (!$this->legacy) { ?>\n    <link rel=\"stylesheet\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/form.css'); ?>\" />\n    <link rel=\"stylesheet\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/layout.css'); ?>\" />\n    <link rel=\"stylesheet\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/content.css'); ?>\" />\n    <link rel=\"stylesheet\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/sidebar.css'); ?>\" />\n    <link rel=\"stylesheet\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/misc-pages.css'); ?>\" />\n    <?php\n        $headLink = $this->headLink();\n        if(!isset($headLink['table']))\n            $headLink->offsetSetStylesheet('table', $this->baseUrl('/admin-style/table.css'));\n        elseif(empty($headLink['table']))\n            unset($headLink['table']);\n        echo $headLink;\n    ?>\n    <?php } ?>\n    <link rel=\"stylesheet\" media=\"screen\" href=\"<?php echo $this->baseUrl('/js/plupload/js/jquery.plupload.queue/css/jquery.plupload.queue.css'); ?>\" />\n\t<!--[if IE 6]>\n\t<style type=\"text/css\">\n\t\t.fg-menu-ipod .fg-menu li { width: 95%; }\n\t\t.fg-menu-ipod .ui-widget-content { border:0; }\n\t</style> <![endif]-->\n\n    <script src=\"<?php echo $this->baseUrl('/js/jquery/jquery-1.7.1.min.js'); ?>\"></script>\n    <script src=\"<?php echo $this->baseUrl('/js/jquery/jquery-ui-1.8.6.custom.min.js'); ?>\"></script>\n    <script src=\"<?php echo $this->baseUrl('/js/jquery/i18n/jquery.ui.datepicker-' . $this->locale . '.js'); ?>\"></script>\n    <script src=\"<?php echo $this->baseUrl('/js/jquery/jquery-ui-timepicker-addon.min.js'); ?>\"></script>\n    <script src=\"<?php echo $this->baseUrl('/js/jquery/fg.menu.js'); ?>\"></script>\n    <script src=\"<?php echo $this->baseUrl('/js/jquery/jquery.cookie.js'); ?>\"></script>\n    <script src=\"<?php echo $this->baseUrl('/js/jquery/jquery.dataTables.min.js'); ?>\"></script>\n    <script src=\"<?php echo $this->baseUrl('/js/jquery/ColVis.min.js'); ?>\"></script>\n    <script src=\"<?php echo $this->baseUrl('/js/jquery/jquery.widgets.js'); ?>\"></script>\n    <script src=\"<?php echo $this->baseUrl('/js/jquery/fancybox/jquery.fancybox-1.3.4.pack.js'); ?>\"></script>\n    <script src=\"<?php echo $this->baseUrl('/js/admin.js'); ?>\"></script>\n    <?php\n        echo $this->headStyle();\n        echo $this->headScript();\n    ?>\n    <script><!--\n        $(function() {\n            <?php if ($this->locale != 'en') { ?>\n            // init datepicker\n            $.datepicker.setDefaults( $.datepicker.regional['<?php echo $this->locale; ?>'] );\n            <?php } ?>\n        });\n    //--></script>\n</head>\n<body id=\"<?php echo $this->placeholder('bodyId'); ?>\"<?php echo $this->placeholder('sidebar') != '' ? ' class=\"with-sidebar\"' : ''; ?>>\n<div class=\"meta-bar\">\n    <ul>\n        <li><a href=\"/admin/logout\"><?php echo $translator->trans('Logout'); ?></a></li>\n        <li><a href=\"<?php echo $this->url(array('controller' => 'application', 'action' => 'help')); ?>\"><?php echo $translator->trans('Help', array(), 'home'); ?></a></li>\n        <li><?php echo $translator->trans(\"Signed in: $1\", array('$1' => sprintf('<strong>%s %s</strong>', $this->currentUser->getFirstName(), $this->currentUser->getLastName())), 'home'); ?></li>\n    </ul>\n</div>\n\n<?php echo $this->render('admin_menu.phtml'); ?>\n\n<?php echo $this->legacy ? '' : '<h1>'.str_replace(' - Newscoop Admin', '', $this->placeholder('Zend_View_Helper_HeadTitle')).'</h1>'; ?>\n\n<?php if ($this->placeholder('sidebar') != '') { ?>\n<div class=\"content-sidebar\">\n<?php } ?>\n\n<?php if (!$this->legacy) { ?>\n<div class=\"content\">\n    <?php echo $this->layout()->content; ?>\n</div>\n<?php } else { ?>\n    <?php echo $this->layout()->content; ?>\n<?php } ?>\n\n<?php if ($this->placeholder('sidebar') != '') { ?>\n<div class=\"sidebar first\">\n<?php echo $this->placeholder('sidebar'); ?>\n</div>\n<?php } ?>\n\n<?php if ($this->placeholder('sidebar') != '') { ?>\n</div><!-- /.content-sidebar -->\n<?php } ?>\n\n<?php if (!empty($this->messages)) { ?>\n<script type=\"text/javascript\"><!--\n$(function() {\n    <?php foreach ($this->messages as $message) {\n        if (is_array($message)) {\n            list($type, $message) = array_values($message);\n        } else {\n            $type = 'highlight';\n        } ?>\n        flashMessage(<?php echo json_encode($message); ?>, <?php echo json_encode($type); ?>);\n    <?php } ?>\n});\n//--></script>\n<?php } ?>\n\n<?php if (!$this->legacy) {\n    camp_html_copyright_notice();\n} ?>\n\n<script type=\"text/javascript\"><!--\n    $(function() {\n        <?php if ($this->locale != 'en') { ?>\n        // init datepicker\n        $.datepicker.setDefaults($.datepicker.regional['<?php echo $this->locale; ?>']);\n        <?php } ?>\n    });\n//--></script>\n\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/application/layouts/scripts/admin_menu.phtml",
    "content": "<?php \n    $menuItem = \\Zend_Registry::get('container')->get('knp_menu.menu_provider')->get('main');\n    $breadcrumbsMenu = \\Zend_Registry::get('container')->get('knp_menu.menu_provider')->get('breadcrumb');\n    $menuRenderer = \\Zend_Registry::get('container')->get('knp_menu.renderer.list');\n    $manipulator = new \\Knp\\Menu\\Util\\MenuManipulator();\n    $breadcrumbsMenuArray =  $manipulator->getBreadcrumbsArray($breadcrumbsMenu);\n?>\n\n\n<div class=\"main-menu-bar\">\n    <div class=\"logo\"></div>\n<?php \n    echo $menuRenderer->render($menuItem, array('class' => 'navigation'));\n?>\n</div>\n\n<?php if (isset($this) && !$this->legacy) { ?>\n    <?php if (count($breadcrumbsMenuArray) > 1) {?>\n    <div class=\"breadcrumb-bar clearfix\">\n        <ul class=\"breadcrumbs clearfix\">\n        <?php\n            $i = 0;\n            foreach( $breadcrumbsMenuArray as $key => $menu) {\n                if ($menu['label'] != 'root') {\n                    if($i != count($breadcrumbsMenuArray)-1) {\n                        echo '<li class=\"separator\"><a href=\"'.$menu['uri'].'\">'.$menu['label'].'</a></li>';\n                    } else {\n                        echo '<li class=\"separator\">'.$menu['label'].'</li>';\n                    }\n                }\n                $i++;\n            }\n        ?>\n        </ul>\n    </div>\n    <?php } ?>\n<?php } ?>\n\n\n<script>\n$(document).ready(function() {\n    $('#menu-stat').fancybox();\n});\n</script>"
  },
  {
    "path": "newscoop/application/layouts/scripts/iframe.phtml",
    "content": "<!DOCTYPE html>\n<html>\n<head>\n    <meta charset=\"utf-8\" />\n    <?php echo $this->headTitle(); ?>\n    <?php $translator = \\Zend_Registry::get('container')->getService('translator'); ?>\n    <meta http-equiv=\"Expires\" content=\"now\" />\n\n    <script>\n        // set vars\n        var popupFlash = false;\n        var website_url = '<?php echo $this->baseUrl(); ?>';\n        var g_admin_url = '<?php echo $this->baseUrl('admin'); ?>';\n        var g_admin_img = '<?php echo $this->baseUrl('admin-style/images'); ?>';\n        var g_security_token = '<?php echo SecurityToken::GetToken(); ?>';\n\n        var localizer = localizer || {\n            processing: '<?php echo $translator->trans('Processing...', array(), 'home'); ?>',\n            session_expired: '<?php echo $translator->trans('Session expired.', array(), 'home'); ?>',\n            please: '<?php echo $translator->trans('Please', array(), 'home'); ?>',\n            login: '<?php echo $translator->trans('login', array(), 'home'); ?>',\n            confirm: '<?php echo $translator->trans('Are you sure you want to', array(), 'home'); ?>',\n            connection_interrupted : '<?php echo $translator->trans('Connection interrupted', array(), 'home') ?>',\n            try_again_later : '<?php echo $translator->trans('try again later', array(), 'home') ?>'\n        };\n    </script>\n\n    <link rel=\"shortcut icon\" href=\"<?php echo $this->baseUrl('/admin-style/images/7773658c3ccbf03954b4dacb029b2229.ico'); ?>\" />\n\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/jquery-ui-1.8.6.custom.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/js/jquery/fancybox/jquery.fancybox-1.3.4.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/ColVis.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/admin_stylesheet_new.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/admin_stylesheet.css'); ?>\" />\n\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/action_buttons.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/content.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/fg.menu.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/form.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/layout.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/sidebar.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/widgets.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/zend_admin_stylesheet.css'); ?>\" />\n    <?php if (!$this->legacy) { ?>\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/form.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/layout.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/content.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/sidebar.css'); ?>\" />\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/admin-style/misc-pages.css'); ?>\" />\n    <?php\n        $headLink = $this->headLink();\n        if(!isset($headLink['table']))\n            $headLink->offsetSetStylesheet('table', $this->baseUrl('/admin-style/table.css'));\n        elseif(empty($headLink['table']))\n            unset($headLink['table']);\n        echo $headLink;\n    ?>\n    <?php } ?>\n    <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"<?php echo $this->baseUrl('/js/plupload/js/jquery.plupload.queue/css/jquery.plupload.queue.css'); ?>\" />\n\t<!--[if IE 6]>\n\t<style type=\"text/css\">\n\t\t.fg-menu-ipod .fg-menu li { width: 95%; }\n\t\t.fg-menu-ipod .ui-widget-content { border:0; }\n\t</style> <![endif]-->\n\n    <script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('/js/jquery/jquery-1.7.1.min.js'); ?>\"></script>\n    <script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('/js/jquery/jquery-ui-1.8.6.custom.min.js'); ?>\"></script>\n    <script type=\"text/javasctipt\" src=\"<?php echo $this->baseUrl('/js/jquery/i18n/jquery.ui.datepicker-' . $this->locale . '.js'); ?>\"></script>\n    <script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('/js/jquery/jquery-ui-timepicker-addon.min.js'); ?>\"></script>\n    <script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('/js/jquery/fg.menu.js'); ?>\"></script>\n    <script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('/js/jquery/jquery.cookie.js'); ?>\"></script>\n    <script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('/js/jquery/jquery.dataTables.min.js'); ?>\"></script>\n    <script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('/js/jquery/ColVis.min.js'); ?>\"></script>\n    <script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('/js/jquery/jquery.widgets.js'); ?>\"></script>\n    <script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('/js/jquery/fancybox/jquery.fancybox-1.3.4.pack.js'); ?>\"></script>\n    <script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('/js/admin.js'); ?>\"></script>\n    <?php\n        echo $this->headStyle();\n        echo $this->headScript();\n    ?>\n    <script type=\"text/javascript\"><!--\n        $(function() {\n            <?php if ($this->locale != 'en') { ?>\n            // init datepicker\n            $.datepicker.setDefaults( $.datepicker.regional['<?php echo $this->locale; ?>'] );\n            <?php } ?>\n        });\n    //--></script>\n</head>\n    <body id=\"<?php echo $this->placeholder('bodyId'); ?>\" class=\"iframe <?php echo $this->placeholder('bodyClass'); ?>\">\n\n<div class=\"content\">\n    <?php echo $this->layout()->content; ?>\n</div>\n\n<?php if (!empty($this->messages)) { ?>\n<script type=\"text/javascript\"><!--\n$(function() {\n    <?php foreach ($this->messages as $message) {\n        if (is_array($message)) {\n            list($type, $message) = array_values($message);\n        } else {\n            $type = 'highlight';\n        } ?>\n        flashMessage(<?php echo json_encode($message); ?>, <?php echo json_encode($type); ?>);\n    <?php } ?>\n});\n//--></script>\n<?php } ?>\n\n<script type=\"text/javascript\"><!--\n    $(function() {\n        <?php if ($this->locale != 'en') { ?>\n        // init datepicker\n        $.datepicker.setDefaults($.datepicker.regional['<?php echo $this->locale; ?>']);\n        <?php } ?>\n    });\n//--></script>\n\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/application/layouts/scripts/modal.phtml",
    "content": "<!DOCTYPE html>\n<html>\n<head>\n    <meta charset=\"utf-8\" />\n    <title><?php echo strip_tags($this->placeholder('title')); ?></title>\n\n    <link rel=\"shortcut icon\" href=\"<?php echo $this->baseUrl('/admin-style/images/7773658c3ccbf03954b4dacb029b2229.ico'); ?>\" />\n\n    <link rel=\"stylesheet\" href=\"<?php echo $this->baseUrl('/admin-style/admin_stylesheet_new.css'); ?>\" />\n    <link rel=\"stylesheet\" href=\"<?php echo $this->baseUrl('/admin-style/admin_stylesheet.css'); ?>\" />\n    <link rel=\"stylesheet\" href=\"<?php echo $this->baseUrl('/admin-style/content.css'); ?>\" />\n    <link rel=\"stylesheet\" href=\"<?php echo $this->baseUrl('/admin-style/app.css'); ?>\" />\n    <link rel=\"stylesheet\" href=\"<?php echo $this->baseUrl('/admin-style/table.css'); ?>\" />\n    <link rel=\"stylesheet\" href=\"<?php echo $this->baseUrl('/admin-style/form.css'); ?>\" />\n    <link rel=\"stylesheet\" href=\"<?php echo $this->baseUrl('/admin-style/layout.css'); ?>\" />\n    <link rel=\"stylesheet\" href=\"<?php echo $this->baseUrl('/admin-style/pagination.css'); ?>\" />\n    <link rel=\"stylesheet\" href=\"<?php echo $this->baseUrl('/admin-style/buttons.css'); ?>\" />\n    <link rel=\"stylesheet\" href=\"<?php echo $this->baseUrl('/admin-style/lists.css'); ?>\" />\n    <link rel=\"stylesheet\" href=\"<?php echo $this->baseUrl('/admin-style/modal-window.css'); ?>\" />\n    <link rel=\"stylesheet\" href=\"<?php echo $this->baseUrl('/admin-style/slideshow-list.css'); ?>\" />\n    <link rel=\"stylesheet\" href=\"<?php echo $this->baseUrl('/admin-style/jquery-ui-1.8.6.custom.css'); ?>\" />\n    <link rel=\"stylesheet\" href=\"<?php echo $this->baseUrl('/admin-style/slideshow.css'); ?>\" />\n    <?php echo $this->headStyle(); ?>\n\n    <script type=\"text/javascript\" src=\"//ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js\"></script>\n    <script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('/js/admin.js'); ?>\"></script>\n    <script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('/js/underscore.js'); ?>\"></script>\n    <script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('/js/backbone.js'); ?>\"></script>\n    <?php echo $this->headScript(); ?>\n</head>\n<body id=\"next\" class=\"iframe expanded\">\n    <?php echo $this->layout()->content; ?>\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/application/modules/admin/Bootstrap.php",
    "content": "<?php\n\nclass Admin_Bootstrap extends Zend_Application_Module_Bootstrap\n{\n\n    /**\n     * @param Zend_View\n     */\n    protected $_view;\n\n    /**\n     * Legacy admin bootstrap\n     */\n    protected function _initNewscoop()\n    {\n        global $ADMIN, $g_user, $prefix, $Campsite;\n\n        defined('WWW_DIR')\n            || define('WWW_DIR', realpath(APPLICATION_PATH . '/../'));\n\n        defined('LIBS_DIR')\n            || define('LIBS_DIR', WWW_DIR . '/admin-files/libs');\n\n        $GLOBALS['g_campsiteDir'] = WWW_DIR;\n\n        require_once $GLOBALS['g_campsiteDir'] . DIRECTORY_SEPARATOR . 'include' . DIRECTORY_SEPARATOR . 'campsite_constants.php';\n        require_once CS_PATH_CONFIG . DIR_SEP . 'install_conf.php';\n\n        // goes to install process if configuration files does not exist yet\n        if (!file_exists(CS_PATH_CONFIG . DIR_SEP . 'configuration.php')\n            || !file_exists(CS_PATH_CONFIG . DIR_SEP . 'database_conf.php')) {\n            header('Location: '.$Campsite['SUBDIR'].'/install/');\n            exit;\n        }\n\n        require_once CS_PATH_CONFIG . DIR_SEP . 'database_conf.php';\n        require_once CS_PATH_SITE . DIR_SEP . 'include' . DIR_SEP . 'campsite_init.php';\n        require_once CS_PATH_SITE . DIR_SEP . 'classes' . DIR_SEP . 'CampTemplateCache.php';\n\n        // detect extended login/logout files\n        $prefix = file_exists(CS_PATH_SITE . DIR_SEP . 'admin-files' . DIR_SEP . 'ext_login.php') ? '/ext_' : '/';\n\n        require_once CS_PATH_SITE .'/admin-files/camp_html.php';\n        require_once CS_PATH_CLASSES . DIR_SEP . 'SecurityToken.php';\n\n        if (php_sapi_name() !== 'cli') {\n            set_error_handler(function ($p_number, $p_string, $p_file, $p_line) {\n                error_log(sprintf('Newscoop error: %s in %s:%d', $p_string, $p_file, $p_line));\n\n                global $Campsite;\n                require_once $Campsite['HTML_DIR'] . \"/admin-files/bugreporter/bug_handler_main.php\";\n                camp_bug_handler_main($p_number, $p_string, $p_file, $p_line);\n            }, error_reporting());\n        }\n\n        $resetCachePath = Zend_Registry::get('container')->getParameter('kernel.cache_dir').'/reset_cache';\n        if (file_exists($resetCachePath)) {\n            CampCache::singleton()->clear('user');\n            unlink($resetCachePath);\n        }\n    }\n\n    /**\n     * Init doctype & view - first function using it\n     */\n    protected function _initDoctype()\n    {\n        global $Campsite;\n\n        $this->bootstrap('view');\n        $view = $this->getResource('view');\n        Zend_Registry::set('view', $view);\n\n        // @todo http://framework.zend.com/manual/en/zend.application.available-resources.html\n        $view->doctype('HTML5');\n\n        // set help url\n        $view->helpUrl = $Campsite['site']['help_url'];\n\n        // set locale\n        $locale = isset($_COOKIE['TOL_Language']) ? $_COOKIE['TOL_Language'] : 'en';\n        $locale_fix = array(\n            'cz' => 'cs',\n        );\n        $view->locale = isset($locale_fix[$locale]) ? $locale_fix[$locale] : $locale;\n    }\n\n    /**\n     * Init page title\n     */\n    protected function _initHeadTitle()\n    {\n        global $Campsite;\n\n        $translator = Zend_Registry::get('container')->getService('translator');\n\n        $title = !empty($Campsite['site']['title']) ? htmlspecialchars($Campsite['site']['title']) : $translator->trans('Newscoop', array(), 'home') . $Campsite['VERSION'];\n\n        $view = $this->getResource('view');\n        $view->headTitle($title)\n            ->setSeparator(' - ');\n    }\n\n    /**\n     * Add flash messages to view if any\n     */\n    protected function _initFlashMessenger()\n    {\n        $flashMessenger = Zend_Controller_Action_HelperBroker::getStaticHelper('FlashMessenger');\n        if ($flashMessenger->hasMessages()) {\n            $view = $this->getResource('view');\n            $view->messages = $flashMessenger->getMessages();\n        }\n\n        //$view->getHelper( 'FlashMsg' )->setAdapter( Zend_Controller_Action_HelperBroker::getStaticHelper( 'FlashMessenger' ) );\n    }\n\n    /**\n     * Init view placeholders\n     */\n    protected function _initPlaceholders()\n    {\n        $this->bootstrap('view');\n        $this->_view = $view = $this->getResource('view');\n\n        // content title\n        $view->placeholder('title')\n            ->setPrefix('<h1>')\n            ->setPostfix('</h1>');\n\n        // content sidebar\n        // not using prefix/postfix to detect if is empty\n        $view->placeholder('sidebar')\n            ->setSeparator('</div><div class=\"sidebar\">' . \"\\n\");\n\n        Zend_Controller_Front::getInstance()->registerPlugin( new \\Newscoop\\Controller\\Plugin\\Js( $this->getOptions() ) );\n\n        $view->addHelperPath(APPLICATION_PATH . '/modules/admin/views/helpers', 'Admin_View_Helper');\n        $jsPlaceholder = $view->getHelper('JQueryReady');\n        $view->getHelper('JQueryUtils')->setPlaceholder($jsPlaceholder);\n\n    }\n\n    /**\n     * Init acl storage\n     */\n    protected function _initAclStorage()\n    {\n        $doctrine = Zend_Registry::get('container')->getService('doctrine');\n\n        $this->bootstrap('acl');\n        $acl = $this->getResource('acl');\n\n        $storage = new Newscoop\\Acl\\Storage($doctrine);\n        $acl->setStorage($storage);\n\n        Zend_Registry::set('acl', $acl);\n    }\n\n    protected function _initNewscoopViewHelpers()\n    {\n        $this->bootstrap('view');\n        $this->getResource('view')->registerHelper(Zend_Registry::get('container')->getService('view.helper.thumbnail'), 'thumbnail');\n        $this->getResource('view')->registerHelper(Zend_Registry::get('container')->getService('view.helper.rendition'), 'rendition');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/AclController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\nuse Newscoop\\Entity\\Acl\\Role;\nuse Newscoop\\Entity\\Acl\\Rule;\nuse Newscoop\\Entity\\User;\n\n/**\n * @Acl(ignore=\"1\")\n */\nclass Admin_AclController extends Zend_Controller_Action\n{\n    /** @var Resource_Acl */\n    private $acl;\n\n    /** @var Doctrine\\ORM\\EntityRepository */\n    private $ruleRepository;\n\n    /** @var string */\n    private $resource;\n\n    public function init()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        $this->ruleRepository = $this->_helper->entity->getRepository('Newscoop\\Entity\\Acl\\Rule');\n\n        $this->ruleTypes = array(\n            'allow' => $translator->trans('Allow', array(), 'user_types'),\n            'deny' => $translator->trans('Deny', array(), 'user_types'),\n        );\n\n        $this->groups = array(\n            'authoring' => $translator->trans('Authoring', array(), 'user_types'),\n            'structure' => $translator->trans('Structure', array(), 'user_types'),\n            'layout' => $translator->trans('Layout', array(), 'user_types'),\n            'users' => $translator->trans('Users'),\n            'system' => $translator->trans('System', array(), 'user_types'),\n            'plugins' => $translator->trans('Plugins'),\n        );\n\n        $this->resources = array(\n            'authoring' => array(\n                'article' => $translator->trans('Articles'),\n                'image' => $translator->trans('Images'),\n                'comment' => $translator->trans('Comments'),\n                'feedback' => $translator->trans('Feedback Messages', array(), 'user_types'),\n                'file' => $translator->trans('Files', array(), 'user_types'),\n                'editor' => $translator->trans('Rich-Text Editor Preferences', array(), 'user_types'),\n            ),\n            'structure' => array(\n                'publication' => $translator->trans('Publications'),\n                'issue' => $translator->trans('Issues'),\n                'section' => $translator->trans('Sections'),\n                'topic' => $translator->trans('Topics'),\n                'language' => $translator->trans('Languages'),\n                'playlist' => $translator->trans('Article Playlists', array(), 'user_types')\n            ),\n            'users' => array(\n                'user-group' => $translator->trans('User Groups', array(), 'user_types'),\n                'user' => $translator->trans('Staff'),\n                'author' => $translator->trans('Authors'),\n                'subscriber' => $translator->trans('Subscribers'),\n                'subscription' => $translator->trans('Subscriptions'),\n            ),\n            'layout' => array(\n                'theme' => $translator->trans('Themes'),\n                'template' => $translator->trans('Templates', array(), 'user_types'),\n                'article-type' => $translator->trans('Article Types', array(), 'user_types'),\n            ),\n            'system' => array(\n                'system-preferences' => $translator->trans('Global', array(), 'user_types'),\n                'indexer' => $translator->trans('Search Indexer', array(), 'user_types'),\n                'country' => $translator->trans('Countries'),\n                'log' => $translator->trans('Log', array(), 'user_types'),\n                'backup' => $translator->trans('Backup', array(), 'user_types'),\n                'cache' => $translator->trans('Cache', array(), 'user_types'),\n                'notification' => $translator->trans('Notification'),\n            ),\n            'plugins' => array(\n                'plugin' => $translator->trans('Plugins'),\n                'pluginpoll' => $translator->trans('Polls', array(), 'user_types'),\n                'plugin-recaptcha' => $translator->trans('ReCaptcha', array(), 'user_types'),\n                'plugin-soundcloud' => $translator->trans('Soundcloud', array(), 'user_types'),\n            ),\n        );\n\n        // i18n\n        $this->actions = array(\n            'add' => $translator->trans('add', array(), 'user_types'),\n            'admin' => $translator->trans('admin', array(), 'user_types'),\n            'attach' => $translator->trans('attach', array(), 'user_types'),\n            'clear' => $translator->trans('clear', array(), 'user_types'),\n            'delete' => $translator->trans('delete', array(), 'user_types'),\n            'edit' => $translator->trans('edit', array(), 'user_types'),\n            'enable' => $translator->trans('enable', array(), 'user_types'),\n            'get' => $translator->trans('get', array(), 'user_types'),\n            'guest' => $translator->trans('guest', array(), 'user_types'),\n            'manage' => $translator->trans('manage', array(), 'user_types'),\n            'moderate' => $translator->trans('moderate', array(), 'user_types'),\n            'moderate-comment' => $translator->trans('moderate', array(), 'user_types'),\n            'moderator' => $translator->trans('moderate', array(), 'user_types'),\n            'move' => $translator->trans('move', array(), 'user_types'),\n            'notify' => $translator->trans('notify', array(), 'user_types'),\n            'publish' => $translator->trans('publish', array(), 'user_types'),\n            'translate' => $translator->trans('translate', array(), 'user_types'),\n            'view' => $translator->trans('view', array(), 'user_types'),\n\n            // editor related\n            'bold' => $translator->trans('bold', array(), 'user_types'),\n            'charactermap' => $translator->trans('character map', array(), 'user_types'),\n            'copycutpaste' => $translator->trans('copy/cut/paste', array(), 'user_types'),\n            'enlarge' => $translator->trans('enlarge', array(), 'user_types'),\n            'findreplace' => $translator->trans('find/replace', array(), 'user_types'),\n            'fontcolor' => $translator->trans('font color', array(), 'user_types'),\n            'fontface' => $translator->trans('font face', array(), 'user_types'),\n            'fontsize' => $translator->trans('font size', array(), 'user_types'),\n            'horizontalrule' => $translator->trans('horizontal rule', array(), 'user_types'),\n            'image' => $translator->trans('image', array(), 'user_types'),\n            'indent' => $translator->trans('indent', array(), 'user_types'),\n            'italic' => $translator->trans('italic', array(), 'user_types'),\n            'link' => $translator->trans('link', array(), 'user_types'),\n            'listbullet' => $translator->trans('list bullet', array(), 'user_types'),\n            'listnumber' => $translator->trans('list number', array(), 'user_types'),\n            'sourceview' => $translator->trans('source view', array(), 'user_types'),\n            'spellcheckerenabled' => $translator->trans('spell checker enabled', array(), 'user_types'),\n            'statusbar' => $translator->trans('statusbar', array(), 'user_types'),\n            'strikethrough' => $translator->trans('strikethrough', array(), 'user_types'),\n            'subhead' => $translator->trans('subhead', array(), 'user_types'),\n            'subscript' => $translator->trans('subscript', array(), 'user_types'),\n            'superscript' => $translator->trans('superscript', array(), 'user_types'),\n            'table' => $translator->trans('table', array(), 'user_types'),\n            'textalignment' => $translator->trans('text alignment', array(), 'user_types'),\n            'textdirection' => $translator->trans('text direction', array(), 'user_types'),\n            'underline' => $translator->trans('underline', array(), 'user_types'),\n            'undoredo' => $translator->trans('undo/redo', array(), 'user_types'),\n        );\n\n        // register new plugins permissions\n        $pluginsService = \\Zend_Registry::get('container')->get('newscoop.plugins.service');\n        $collectedPermissionsData = $pluginsService->collectPermissions();\n        foreach ($collectedPermissionsData as $pluginLabel => $permissions) {\n            foreach ($permissions as $permissionKey => $permissionName) {\n                $pluginNameArray = explode('_', $permissionKey);\n                $this->resources['plugins'][$pluginNameArray[0] . '-' . $pluginNameArray[1]] = $pluginLabel;\n                break;\n            }\n        }\n\n        $this->_helper->contextSwitch()\n            ->addActionContext('edit', 'json')\n            ->initContext();\n\n        $this->acl = Zend_Registry::get('acl');\n\n        $this->resource = $this->_getParam('user', false) ? 'user' : 'user-group';\n    }\n\n    public function editAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        $role = $this->_getParam('user', false)\n            ? $this->_helper->entity->find('Newscoop\\Entity\\User', $this->_getParam('user'))\n            : $this->_helper->entity->find('Newscoop\\Entity\\User\\Group', $this->_getParam('group'));\n\n        if ($this->getRequest()->isPost()) {\n            $values = $this->getRequest()->getPost();\n            if ($this->isBlocker($values)) {\n                $this->view->error = $translator->trans(\"You cant deny yourself to manage $1\", array('$1' => $this->getResourceName($this->resource)), 'user_types');\n\n                return;\n            }\n\n            try {\n                $this->ruleRepository->save($values, $this->_getParam('user', false));\n            } catch (\\Exception $e) {\n                $this->view->error = $e->getMessage();\n            }\n\n            return;\n        }\n\n        $this->view->role = $role;\n        $this->view->groups = $this->groups;\n        $this->view->resources = $this->resources;\n        $this->view->actions = $this->acl->getResources();\n        $this->view->actionNames = $this->actions;\n        $this->view->acl = $this->getHelper('acl')->getAcl($role);\n    }\n\n    /**\n     * Test if adding rule would block current user to manage users/types\n     *\n     * @param  array $values\n     * @return bool\n     */\n    private function isBlocker(array $values)\n    {\n        $user = Zend_Registry::get('user');\n        $acl = $this->_helper->acl->getAcl($user);\n\n        if (in_array($values['role'], $acl->getRoles()) && $values['type'] == 'deny') {\n            $resource = empty($values['resource']) ? null : $values['resource'];\n            $action = empty($values['action']) ? null : $values['action'];\n            $acl->deny($values['role'], $resource, $action);\n\n            return !$acl->isAllowed($user, $this->resource, 'manage');\n        }\n\n        return False;\n    }\n\n    /**\n     * Get translated resource name\n     *\n     * @param  string $resource\n     * @return string\n     */\n    private function getResourceName($resource)\n    {\n        foreach ($this->resources as $resources) {\n            if (isset($resources[$resource])) {\n                return $resources[$resource];\n            }\n        }\n\n        return $resource;\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/ApplicationController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\nuse Newscoop\\Version;\n\n/**\n * @Acl(ignore=\"1\")\n */\nclass Admin_ApplicationController extends Zend_Controller_Action\n{\n    public function init(){}\n\n    public function indexAction()\n    {\n        $this->_forward('help');\n    }\n\n    public function helpAction()\n    {\n        $newscoop = new CampVersion;\n        $this->view->version = $newscoop->getVersion();\n        $this->view->api_version = Version::API_VERSION;\n        $this->view->date = $newscoop->getReleaseDate();\n    }\n}\n\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/AuthController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\n\n/**\n * @Acl(ignore=\"1\")\n */\nclass Admin_AuthController extends Zend_Controller_Action\n{\n    public function init(){}\n\n    public function logoutAction()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $auth = Zend_Auth::getInstance();\n        if ($auth->hasIdentity()) {\n            Article::UnlockByUser((int) $auth->getIdentity());\n            $auth->clearIdentity();\n            setcookie('NO_CACHE', 'NO', time()-3600, '/');\n            unset($_SESSION['statDisplayed']);\n        }\n\n        $this->_helper->FlashMessenger($translator->trans('You were logged out.', array(), 'users'));\n        $this->_helper->redirector('index', 'index');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/BlogController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\n\nrequire_once APPLICATION_PATH . '/../admin-files/libs/ArticleList/ArticleList.php';\n\n/**\n * Blog controller\n *\n * @Acl(ignore=1)\n */\nclass Admin_BlogController extends Zend_Controller_Action\n{\n    /** @var Newscoop\\Services\\BlogService */\n    private $blogService;\n\n    /** @var Newscoop\\Entity\\User */\n    private $user;\n\n    public function init()\n    {\n        $this->blogService = $this->_helper->service('blog');\n        $this->user = $this->_helper->service('user')->getCurrentUser();\n    }\n\n    public function preDispatch()\n    {\n        if (empty($this->user) || !$this->blogService->isBlogger($this->user)) {\n            $this->_helper->flashMessenger(array('error', \"You're not a blogger\"));\n            $this->_helper->redirector('index', 'index', 'admin');\n        }\n    }\n\n    public function indexAction()\n    {\n        $form = new Admin_Form_Blog();\n        $section = $this->blogService->getSection($this->user);\n\n        if (empty($section)) {\n            $this->_forward('nosection');\n            return;\n        }\n\n        $request = $this->getRequest();\n        if ($request->isPost() && $form->isValid($request->getPost())) {\n            $blog = $this->blogService->createBlog($form->title->getValue(), $section);\n            $this->_helper->flashMessenger(\"Article created\");\n            $this->_helper->redirector->gotoUrl($this->_helper->article->getEditLink($blog));\n        }\n\n        $blogConfig = \\Zend_Registry::get('container')->getParameter('blog');\n        $list = new ArticleList();\n        $list->setPublication($section->getPublicationId());\n        $list->setIssue($section->getIssueNumber());\n        $list->setSection($section->getSectionNumber());\n        $list->setLanguage($section->getLanguageId());\n        $list->setType($blogConfig['article_type']);\n\n        $this->view->list = $list;\n        $this->view->form = $form;\n    }\n\n    public function nosectionAction()\n    {\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/CommentAcceptanceController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @subpackage Subscriptions\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\nuse Newscoop\\Entity\\Comment\\Acceptance;\n\n/**\n * @Acl(resource=\"comment\", action=\"moderate\")\n */\nclass Admin_CommentAcceptanceController extends Zend_Controller_Action\n{\n    /**\n     * @var ICommentAcceptanceRepository\n     *\n     */\n    private $repository;\n\n    /**\n     *\n     * @var Admin_Form_Comment_Acceptance\n     */\n    private $form;\n\n\n    public function init()\n    {\n        // get comment repository\n        $this->repository = $this->_helper->entity->getRepository('Newscoop\\Entity\\Comment\\Acceptance');\n        $this->form = new Admin_Form_CommentAcceptance;\n        $this->form->setMethod('post');\n\n        return $this;\n    }\n\n    public function indexAction()\n    {\n        $this->_forward('table');\n    }\n\n    public function tableAction()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        $this->getHelper('contextSwitch')\n            ->addActionContext('table', 'json')\n            ->initContext();\n        $table = $this->getHelper('datatable');\n\n        $table->setDataSource($this->repository);\n        $table->setOption('oLanguage', array('oPaginate' => array(\n                'sFirst' => $translator->trans('First', array(), 'comments'),\n                'sLast' => $translator->trans('Last', array(), 'comments'),\n                'sNext' => $translator->trans('Next'),\n                'sPrevious' => $translator->trans('Previous'),\n            ),\n            'sZeroRecords' => $translator->trans('No records found.', array(), 'comments'),\n            'sSearch' => $translator->trans('Search'),\n            'sInfo' => $translator->trans('Showing _START_ to _END_ of _TOTAL_ entries', array(), 'comments'),\n            'sEmpty' => $translator->trans('No entries to show', array(), 'comments'),\n            'sInfoFiltered' => $translator->trans(' - filtering from _MAX_ records', array(), 'comments'),\n            'sLengthMenu' => $translator->trans('Display _MENU_ records', array(), 'comments'),\n            'sInfoEmpty' => '')\n        );\n        $table->setCols(array(\n            'id' => $translator->trans('ID', array(), 'comments'),\n            'for_column' => $translator->trans('For Column', array(), 'comments'),\n            'type' => $translator->trans('Type'),\n            'search' => $translator->trans('Search'),\n            'search_type'   => $translator->trans('Search Type', array(), 'comments'),\n            'edit' => $translator->trans('Edit'),\n            'delete' => $translator->trans('Delete')\n        ));\n\n        $view = $this->view;\n        $table->setHandle(function($acceptance) use ($view) {\n            $urlParam = array('acceptance' => $acceptance->getId());\n            return array(\n                $acceptance->getId(),\n                $acceptance->getForColumn(),\n                $acceptance->getType(),\n                $acceptance->getSearch(),\n                $acceptance->getSearchType(),\n                $view->linkEdit($urlParam),\n                $view->linkDelete($urlParam)\n            );\n        });\n\n        $table->dispatch();\n    }\n\n    /**\n     * Action for Adding a Acceptance Criteria\n     */\n    public function addAction()\n    {\n        $acceptance = new Acceptance;\n        $this->handleForm($this->form, $acceptance);\n\n        $this->view->form = $this->form;\n        $this->view->acceptance = $acceptance;\n    }\n\n    /**\n     * Action for Editing a Acceptance Criteria\n     */\n    public function editAction()\n    {\n        $params = $this->getRequest()->getParams();\n        if (!isset($params['acceptance'])) {\n            throw new InvalidArgumentException;\n        }\n        $acceptance = $this->repository->find($params['acceptance']);\n        if($acceptance)\n        {\n            $this->form->setFromEntity($acceptance);\n            $this->handleForm($this->form, $acceptance);\n            $this->view->form = $this->form;\n            $this->view->acceptance = $acceptance;\n        }\n    }\n\n    /**\n     * Action for Deleteing a Acceptance Criteria\n     */\n    public function deleteAction()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $params = $this->getRequest()->getParams();\n        if (!isset($params['acceptance'])) {\n            throw new InvalidArgumentException;\n        }\n        $acceptance = $this->repository->find($params['acceptance']);\n        if($acceptance)\n        {\n            $this->repository->delete($acceptance);\n            $this->repository->flush();\n\n            $this->_helper->flashMessenger($translator->trans('Acceptance $1 deleted.', array('$1' => $acceptance->getSearch()), 'comments'));\n            $this->_helper->redirector->gotoSimple('index');\n        }\n    }\n\n    /**\n     * Method for saving a Acceptance Criteria\n     *\n     * @param ZendForm $p_form\n     * @param IComment $p_acceptance\n     */\n    private function handleForm(Zend_Form $p_form, Acceptance $p_acceptance)\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        if ($this->getRequest()->isPost() && $p_form->isValid($_POST)) {\n            $values = $p_form->getValues();\n            $this->repository->save($p_acceptance, $values);\n            $this->repository->flush();\n            $this->_helper->flashMessenger($translator->trans('Acceptance $1 saved.', array('$1' => $p_acceptance->getSearch()), 'comments'));\n            $this->_helper->redirector->gotoSimple('index');\n        }\n    }\n\n}\n\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/CommentCommenterController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @subpackage Subscriptions\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\nuse Newscoop\\Entity\\Comment\\Commenter;\n\n/**\n * @Acl(resource=\"comment\", action=\"moderate\")\n */\nclass Admin_CommentCommenterController extends Zend_Controller_Action\n{\n\n    /**\n     * @var ICommenter\n     */\n    private $commenterRepository;\n\n    /**\n     * @var IAcceptance\n     */\n    private $acceptanceRepository;\n\n    /**\n     * @var IArticle\n     */\n    private $articleRepository;\n\n    /**\n     * @var Newscoop\\Entity\\Repository\\CommentRepository\n     */\n    private $commentRepository;\n\n    /**\n     * @var IPublication\n     */\n    private $publicationRepository;\n\n    /**\n     *\n     * @var Admin_Form_Commenter\n     */\n    private $form;\n\n\n    public function init()\n    {\n        // get commenter repository\n        $this->commenterRepository = $this->_helper->entity->getRepository('Newscoop\\Entity\\Comment\\Commenter');\n\n        // get acceptance repository\n        $this->acceptanceRepository = $this->_helper->entity->getRepository('Newscoop\\Entity\\Comment\\Acceptance');\n\n        // get article repository\n        $this->articleRepository = $this->_helper->entity->getRepository('Newscoop\\Entity\\Article');\n\n        // get publication repository\n        $this->publicationRepository = $this->_helper->entity->getRepository('Newscoop\\Entity\\Publication');\n\n        // get comment repository\n        $this->commentRepository = $this->_helper->entity->getRepository('Newscoop\\Entity\\Comment');\n\n        $this->getHelper('contextSwitch')->addActionContext('index', 'json')->initContext();\n        // set the default form for comment commenter and set method to post\n        $this->form = new Admin_Form_Commenter;\n        $this->form->setMethod('post');\n        return $this;\n\n    }\n\n    public function indexAction()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->getHelper('contextSwitch')->addActionContext('index', 'json')->initContext();\n        $table = $this->getHelper('datatable');\n\n        $table->setDataSource($this->commenterRepository);\n        $table->setOption('oLanguage', array('oPaginate' => array(\n                'sFirst' => $translator->trans('First', array(), 'comments'),\n                'sLast' => $translator->trans('Last', array(), 'comments'),\n                'sNext' => $translator->trans('Next'),\n                'sPrevious' => $translator->trans('Previous'),\n            ),\n            'sZeroRecords' => $translator->trans('No records found.', array(), 'comments'),\n            'sSearch' => $translator->trans('Search'),\n            'sInfo' => $translator->trans('Showing _START_ to _END_ of _TOTAL_ entries', array(), 'comments'),\n            'sEmpty' => $translator->trans('No entries to show', array(), 'comments'),\n            'sInfoFiltered' => $translator->trans(' - filtering from _MAX_ records', array(), 'comments'),\n            'sLengthMenu' => $translator->trans('Display _MENU_ records', array(), 'comments'),\n            'sInfoEmpty' => '')\n        );\n        $table->setCols(\n            array('time_created' => $translator->trans('Date Created', array(), 'comments'), 'name' => $translator->trans('Name'), 'user' => $translator->trans('Username', array(), 'comments'),\n                 'email' => $translator->trans('Email', array(), 'comments'), 'url' => $translator->trans('Website', array(), 'comments'), 'ip' => $translator->trans('Ip', array(), 'comments'), 'edit' => $translator->trans('Edit'),\n                 'ban' => $translator->trans('Ban', array(), 'comments'), 'delete' => $translator->trans('Delete')));\n\n        $view = $this->view;\n        $table->setHandle(function($commenter) use ($view)\n            {\n                $urlParam = array('commenter' => $commenter->getId());\n                return array($commenter->getTimeCreated()->format('Y-i-d H:i:s'), $commenter->getName(),\n                             $commenter->getUsername(), $commenter->getEmail(), $commenter->getUrl(),\n                             $commenter->getIp(), $view->linkEdit($urlParam), $view->linkBan($urlParam),\n                             $view->linkDelete($urlParam),);\n            });\n\n        $table->dispatch();\n    }\n\n    /**\n     * Action for Adding a Commenter\n     */\n    public function addAction()\n    {\n        $commenter = new Commenter;\n\n        $this->handleForm($this->form, $commenter);\n\n        $this->view->form = $this->form;\n        $this->view->commenter = $commenter;\n    }\n\n    /**\n     * Action for Editing a Commenter\n     */\n    public function editAction()\n    {\n        $params = $this->getRequest()->getParams();\n        if (!isset($params['commenter'])) {\n            throw new InvalidArgumentException;\n        }\n        $commenter = $this->commenterRepository->find($params['commenter']);\n        if ($commenter) {\n            $this->form->setFromEntity($commenter);\n            $this->handleForm($this->form, $commenter);\n            $this->view->form = $this->form;\n            $this->view->commenter = $commenter;\n        }\n    }\n\n    /**\n     * Action for Deleteing a Commenter\n     */\n    public function deleteAction()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $params = $this->getRequest()->getParams();\n        if (!isset($params['commenter'])) {\n            throw new InvalidArgumentException;\n        }\n        $commenter = $this->commenterRepository->find($params['commenter']);\n        if ($commenter) {\n            $this->commenterRepository->delete($commenter);\n            $this->commenterRepository->flush();\n            $this->_helper->flashMessenger($translator->trans('Commenter $1 deleted.', array('$1' => $commenter->getName()), 'comments'));\n            $this->_helper->redirector->gotoSimple('index');\n        }\n    }\n\n    public function toggleBanAction()\n    {\n        $params = $this->getRequest()->getParams();\n        if (!isset($params['commenter']) && (!isset($params['article']) || !isset($params['forum']))) {\n            throw new InvalidArgumentException;\n        }\n        if(isset($params['thread']) && isset($params['language']))\n            $publication = $this->articleRepository->find(array('number' => $params['thread'], 'language' => $params['language']))->getPublication();\n        if(isset($params['forum']))\n            $publication = $this->publicationRepository->find($params['forum']);\n\n        //$publication = null;\n        $commenter = $this->commenterRepository->find($params['commenter']);\n\n        if ($commenter->getUser() != null) {\n            $commenter->setName($commenter->getUser()->getUsername());\n        }\n\n        $form = new Admin_Form_Ban;\n        $this->handleBanForm($form, $commenter, $publication);\n        $form->setValues($commenter, $this->acceptanceRepository->isBanned($commenter, $publication));\n        $this->view->form = $form;\n    }\n\n    /**\n     * Method for saving a banned\n     *\n     * @param ZendForm $p_form\n     * @param Newscoop\\Entity\\Comment\\Commenter $p_commenter\n     */\n    private function handleBanForm(Admin_Form_Ban $p_form, $p_commenter, $p_publication)\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        if ($this->getRequest()->isPost() && $p_form->isValid($_POST)) {\n            if ($p_form->getSubmit()->isChecked()) {\n                $values = $p_form->getValues();\n                $this->acceptanceRepository->saveBanned($p_commenter, $p_publication, $values);\n                $this->acceptanceRepository->flush();\n                $this->_helper->flashMessenger($translator->trans('Ban for commenter $1 saved.', array('$1' => $p_commenter->getName()), 'comments'));\n                if ($p_form->getDeleteComments()->isChecked()) {\n                    $this->commenterRepository->delete($p_commenter, $p_form->getValues());\n                    $this->commenterRepository->flush();\n                }\n            }\n            $this->_helper->redirector->gotoSimple('index', 'comments');\n        }\n    }\n\n    /**\n     * Method for saving a commenter\n     *\n     * @param ZendForm $p_form\n     * @param ICommenter $p_commenter\n     */\n    private function handleForm(Zend_Form $p_form, $p_commenter)\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        if ($this->getRequest()->isPost() && $p_form->isValid($_POST)) {\n            $values = $p_form->getValues();\n            $values['ip'] = $this->getRequest()->getClientIp();\n            $values['time_created'] = new DateTime;\n            $this->commenterRepository->save($p_commenter, $values);\n            $this->commenterRepository->flush();\n            $this->_helper->flashMessenger($translator->trans('Commenter $1 saved.', array('$1' => $p_commenter->getName()), 'comments'));\n            $this->_helper->redirector->gotoSimple('index');\n        }\n    }\n\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/CommentController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @subpackage Subscriptions\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\nuse Newscoop\\Entity\\Comment;\nuse Newscoop\\EventDispatcher\\Events\\GenericEvent;\n\n/**\n * @Acl(resource=\"comment\", action=\"enable\")\n */\nclass Admin_CommentController extends Zend_Controller_Action\n{\n\n    /** @var Newscoop\\Entity\\Repository\\CommentRepository */\n    private $commentRepository;\n\n    /** @var Newscoop\\Entity\\Repository\\ArticleRepository */\n    private $articleRepository;\n\n    /** @var Newscoop\\Entity\\Repository\\LanguageRepository */\n    private $languageRepository;\n\n    /** @var Newscoop\\Entity\\Repository\\Comment\\AcceptanceRepository */\n    private $acceptanceRepository;\n\n    /** @var Admin_Form_Comment */\n    private $form;\n\n    /** @var Admin_Form_Comment_EditForm */\n    private $editForm;\n\n    public function init()\n    {\n\n        // get comment repository\n        $this->commentRepository = $this->_helper->entity->getRepository('Newscoop\\Entity\\Comment');\n\n        // get article repository\n        $this->articleRepository = $this->_helper->entity->getRepository('Newscoop\\Entity\\Article');\n\n        // get language repository\n        $this->languageRepository = $this->_helper->entity->getRepository('Newscoop\\Entity\\Language');\n\n        $this->form = new Admin_Form_Comment;\n\n        $this->editForm = new Admin_Form_Comment_EditForm;\n\n        return $this;\n    }\n\n    /**\n     *\n     */\n    public function addToArticleAction()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->getHelper('contextSwitch')->addActionContext('add-to-article', 'json')->initContext();\n        $comment = new Comment;\n        $request = $this->getRequest();\n\n        $values['user']         = Zend_Registry::get('user');\n        $values['name']         = $request->getParam('name');\n        $values['subject']      = $request->getParam('subject');\n        $values['message']      = $request->getParam('message');\n        $values['language']     = $request->getParam('language');\n        $values['thread']       = $request->getParam('article');\n        $values['ip']           = $request->getClientIp();\n        $values['status']       = 'approved';\n        $values['time_created'] = new DateTime;\n\n        if (!SecurityToken::isValid()) {\n            $this->view->status = 401;\n            $this->view->message = $translator->trans('Invalid security token!');\n            return;\n        }\n\n        try {\n            $comment = $this->commentRepository->save($comment, $values);\n            $this->commentRepository->flush();\n        } catch (Exception $e) {\n            $this->view->status = $e->getCode();\n            $this->view->message = $e->getMessage();\n            return;\n        }\n\n        $this->view->status = 200;\n        $this->view->message = \"succcesful\";\n        $this->view->comment = $comment->getId();\n    }\n\n    /**\n     * @Acl(action=\"edit\")\n     */\n    public function updateContentsAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->getHelper('contextSwitch')->addActionContext('update-contents', 'json')->initContext();\n        if (!SecurityToken::isValid()) {\n            $this->view->status = 401;\n            $this->view->message = $translator->trans('Invalid security token!');\n            return;\n        }\n\n        $subject = $this->getRequest()->getParam('subject');\n        $body = $this->getRequest()->getParam('body');\n        $id = $this->getRequest()->getParam('id');\n\n        $values = array(\n            'subject' => $subject,\n            'message' => $body\n        );\n\n        try {\n            $comment = $this->commentRepository->find($id);\n            $comment = $this->commentRepository->update($comment, $values);\n            $this->commentRepository->flush();\n        }\n        catch (Exception $e) {\n            $this->view->status = $e->getCode();\n            $this->view->message = $e->getMessage();\n            return;\n        }\n        $this->view->status = 200;\n        $this->view->message = \"succesful\";\n    }\n\n    /**\n     * @Acl(action=\"edit\")\n     */\n    public function editAction()\n    {\n        $this->editForm->setAction($this->_helper->url('update'));\n        $this->view->form = $this->editForm;\n    }\n\n    /**\n     * @Acl(action=\"edit\")\n     */\n    public function updateAction()\n    {\n        if (!$this->editForm->isValid($this->_getAllParams())) {\n            $return = array('status' => 101, 'message' => 'invalid', 'data' => $this->editForm->getMessages());\n            $this->_helper->json($return);\n        }\n\n        try {\n            $values = $this->editForm->getValues();\n            $comment = $this->commentRepository->find($values['id']);\n            $comment = $this->commentRepository->update($comment, $values);\n            $this->commentRepository->flush();\n        } catch (Exception $e) {\n            $return = array('status' => $e->getCode(), 'message' => $e->getMessage(), 'data' => array());\n            $this->_helper->json($return);\n        }\n\n        $return = array('status' => 100, 'message' => 'succesful', 'data' => array('comment' => $comment->getId()));\n        $this->_helper->json($return);\n    }\n\n    public function replyAction()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->getHelper('contextSwitch')->addActionContext('reply', 'json')->initContext();\n\n        if (!SecurityToken::isValid()) {\n            $this->view->status = 401;\n            $this->view->message = $translator->trans('Invalid security token!');\n            return;\n        }\n        $values = $this->getRequest()->getParams();\n        $comment = new Comment;\n        if ($this->getRequest()->isPost()) {\n            $values['user'] = Zend_Registry::get('user');\n            $values['time_created'] = new DateTime;\n            $values['ip'] = $this->getRequest()->getClientIp();\n            $values['status'] = 'approved';\n            try {\n                $comment = $this->commentRepository->save($comment, $values);\n                $this->commentRepository->flush();\n            } catch (Exception $e) {\n                $this->view->status = $e->getCode();\n                $this->view->message = $e->getMessage();\n                return;\n            }\n\n            $this->view->status = 200;\n            $this->view->message = \"succcesful\";\n            $this->view->comment = $comment->getId();\n        }\n        $this->view->comment = $comment;\n    }\n\n    public function addAction()\n    {\n        $comment = new Comment;\n\n        $this->handleForm($this->form, $comment);\n\n        $this->view->form = $this->form;\n        $this->view->comment = $comment;\n    }\n\n    /**\n     * @Acl(action=\"moderate\")\n     */\n    public function deleteArticleAction()\n    {\n        $article = $this->getRequest()->getParam('article');\n        $this->commentRepository->deleteArticle($article);\n        $this->commentRepository->flush();\n        $this->getHelper('viewRenderer')->setNoRender();\n    }\n\n    /**\n     * @Acl(action=\"moderate\")\n     */\n    public function statusArticleAction()\n    {\n        $article = $this->getRequest()->getParam('article');\n        $language = $this->getRequest()->getParam('language');\n        $this->commentRepository->setArticleStatus($article, $language, \"hidden\");\n        $this->commentRepository->flush();\n        $this->getHelper('viewRenderer')->setNoRender();\n    }\n\n    private function handleForm(Zend_Form $p_form, Comment $p_comment)\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        if ($this->getRequest()->isPost() && $p_form->isValid($_POST)) {\n            $values = $p_form->getValues();\n            $values['ip'] = $this->getRequest()->getClientIp();\n            $values['status'] = 'hidden';\n            $values['time_created'] = new DateTime;\n            $this->commentRepository->save($p_comment, $values);\n            $this->commentRepository->flush();\n            $this->_helper->flashMessenger($translator->trans('Comment $1 saved.', array('$1' => $p_comment->getSubject()), 'comments'));\n            $this->_helper->redirector->gotoSimple('index');\n        }\n    }\n\n\n\n}"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/ErrorController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\n\n/**\n * @Acl(ignore=\"1\")\n */\nclass Admin_ErrorController extends Zend_Controller_Action\n{\n\n    public function init()\n    {\n        /* Initialize action controller here */\n    }\n\n    public function indexAction()\n    {\n        // action body\n    }\n\n    public function denyAction()\n    {\n        $this->view->message = $this->getRequest()->getParam('message', '');\n    }\n}\n\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/FeedbackController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @subpackage Feedback\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\nuse Newscoop\\EventDispatcher\\Events\\GenericEvent;\nuse Newscoop\\Entity\\Feedback;\n\n/**\n * @Acl(resource=\"feedback\", action=\"manage\")\n */\nclass Admin_FeedbackController extends Zend_Controller_Action\n{\n\n    /** @var Newscoop\\Entity\\Repository\\FeedbackRepository */\n    private $feedbackRepository;\n\n    /** @var Admin_Form_Feedback */\n    //private $form;\n\n    /** @var Admin_Form_Feedback_EditForm */\n    //private $editForm;\n\n    public function init()\n    {\n        // get feedback repository\n        $this->feedbackRepository = $this->_helper->entity->getRepository('Newscoop\\Entity\\Feedback');\n\n        //$this->form = new Admin_Form_Comment;\n        //$this->editForm = new Admin_Form_Comment_EditForm;\n\n        return $this;\n    }\n\n    public function indexAction()\n    {\n        $this->_forward('table');\n    }\n\n    /**\n     * Action to make the table\n     */\n    public function tableAction()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->getHelper('contextSwitch')->addActionContext('table', 'json')->initContext();\n\n        $view = $this->view;\n        $table = $this->getHelper('datatable');\n        /* @var $table Action_Helper_Datatable */\n        $table->setDataSource($this->feedbackRepository);\n        $table->setOption('oLanguage', array('oPaginate' => array(\n                'sFirst' => $translator->trans('First', array(), 'comments'),\n                'sLast' => $translator->trans('Last', array(), 'comments'),\n                'sNext' => $translator->trans('Next'),\n                'sPrevious' => $translator->trans('Previous'),\n            ),\n            'sZeroRecords' => $translator->trans('No records found.', array(), 'comments'),\n            'sSearch' => $translator->trans('Search'),\n            'sInfo' => $translator->trans('Showing _START_ to _END_ of _TOTAL_ entries', array(), 'comments'),\n            'sEmpty' => $translator->trans('No entries to show', array(), 'comments'),\n            'sInfoFiltered' => $translator->trans(' - filtering from _MAX_ records', array(), 'comments'),\n            'sLengthMenu' => $translator->trans('Display _MENU_ records', array(), 'comments'),\n            'sInfoEmpty' => '')\n        );\n        $table->setCols(\n            array(\n                'id' => $view->toggleCheckbox(), 'user' => $translator->trans('User', array(), 'comments'),\n                'message' => $translator->trans('Date') . ' / ' . $translator->trans('Message', array(), 'comments'),\n                'url' => $translator->trans('Coming from', array(), 'comments')\n            ),\n            array('id' => false)\n        );\n\n        $table->setInitialSorting(array('id' => 'desc'));\n\n        $index = 1;\n        $acceptanceRepository = $this->_helper->entity->getRepository('Newscoop\\Entity\\Comment\\Acceptance');\n        $table->setHandle(function($feedback) use ($view, &$index, $acceptanceRepository)\n            {\n                $user = $feedback->getUser();\n                $url = $feedback->getUrl();\n                $message = $feedback->getMessage();\n                $publication = $feedback->getPublication();\n                $section = $feedback->getSection();\n                $article = $feedback->getArticle();\n                $translator = \\Zend_Registry::get('container')->getService('translator');\n                \n                if ($article) {\n                    $article_name = $article->getName();\n                    $article_url = $view->linkArticle($article);\n                }\n                else {\n                    $article_name = $translator->trans('None', array(), 'comments');\n                    $article_url = $view->baseUrl('admin/feedback');\n                }\n                \n                if ($section) {\n                    $section_name = $section->getName();\n                }\n                else {\n                    $section_name = $translator->trans('None', array(), 'comments');\n                }\n                \n                $attachment = array();\n\n                $attachment['type'] = $feedback->getAttachmentType();\n                $attachment['id'] = $feedback->getAttachmentId();\n\n                if ($attachment['type'] == 'image') {\n                    $image = new Image($attachment['id']);\n                    $attachment['name'] = $image->getImageFileName();\n                    $attachment['status'] = $image->getStatus();\n                    $attachment['thumbnail'] = $image->getThumbnailUrl();\n                    $attachment['approve_url'] = $view->url(array('action' => 'approve', 'type' => 'image', 'format' => 'json', 'id' => $attachment['id']));\n                }\n                if ($attachment['type'] == 'document') {\n                    $document = new Attachment($attachment['id']);\n                    $attachment['name'] = $document->getFileName();\n                    $attachment['status'] = $document->getStatus();\n                    $attachment['approve_url'] = $view->url(array('action' => 'approve', 'type' => 'document', 'format' => 'json', 'id' => $attachment['id']));\n                }\n\n                $banned = $acceptanceRepository->checkBanned(array('name' => $user->getName(), 'email' => '', 'ip' => ''), $publication);\n                if ($banned['name'] == true) {\n                    $banned = true;\n                } else {\n                    $banned = false;\n                }\n\n                $zendRouter = \\Zend_Registry::get('container')->getService('zend_router');\n                $userUrl = $zendRouter->assemble(array_merge(array(\n                    'module' => 'default',\n                    'controller' => 'user',\n                    'action' => 'profile',\n                )), 'default', true);\n\n                return array(\n                    'id' => $index++,\n                    'user' => array(\n                        'username' => strip_tags($user->getUsername()),\n                        'userUrl' => $userUrl.'/'.strip_tags($user->getUsername()),\n                        'name' => $user->getFirstName(),\n                        'email' => $user->getEmail(),\n                        'avatar' => (string)$view->getAvatar($user->getEmail(), array('img_size' => 50, 'default_img' => 'wavatar')),\n                        'banurl' => $view->url(array(\n                            'controller' => 'user',\n                            'action' => 'toggle-ban',\n                            'user' => $user->getId(),\n                            'publication' => $publication->getId()\n                        )),\n                        'is_banned' => $banned,\n                    ),\n                    'message' => array(\n                        'id' => $feedback->getId(),\n                        'created' => array(\n                            'date' => $feedback->getTimeCreated()->format('Y.m.d'),\n                            'time' => $feedback->getTimeCreated()->format('H:i:s')\n                        ),\n                        'message' => $feedback->getMessage(),\n                        'subject' => $feedback->getSubject(),\n                        'status' => $feedback->getStatus(),\n                        'attachmentType' => $feedback->getAttachmentType(),\n                        'action' => array(\n                            'reply' => $view->url(array(\n                                'action' => 'reply',\n                                'format' => 'json'\n                            ))\n                        ),\n                        'url' => $url,\n                        'publication' => $publication->getName(),\n                        'section' => $section_name,\n                        'article' => array(\n                            'name' => $article_name,\n                            'url' => $article_url\n                        )\n                    ),\n                    'attachment' => $attachment\n                );\n            });\n\n        $table->setOption('fnDrawCallback', 'datatableCallback.draw')\n                ->setOption('fnRowCallback', 'datatableCallback.row')\n                ->setOption('fnServerData', 'datatableCallback.addServerData')\n                ->setOption('fnInitComplete', 'datatableCallback.init')\n                ->setOption('sDom','<\"top\">lf<\"#actionExtender\">rit<\"bottom\"ip>')\n                ->setStripClasses()\n                ->toggleAutomaticWidth(false)\n                ->setDataProp(array('id' => null, 'user' => null, 'message' => null, 'url' => null))\n                ->setClasses(array('id' => 'commentId', 'user' => 'commentUser', 'message' => 'commentTimeCreated', 'url' => 'commentThread'));\n\n        try {\n            $table->dispatch();\n        } catch (Exception $e) {\n            throw new \\Exception($e->getMessage());\n        }\n        //$this->editForm->setSimpleDecorate()->setAction($this->_helper->url('update'));\n        //$this->view->editForm = $this->editForm;\n    }\n\n    /**\n     * Status action\n     */\n    public function setStatusAction()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->getHelper('contextSwitch')->addActionContext('set-status', 'json')->initContext();\n        if (!SecurityToken::isValid()) {\n            $this->view->status = 401;\n            $this->view->message = $translator->trans('Invalid security token!');\n            return;\n        }\n\n        $status = $this->getRequest()->getParam('status');\n        $feedbacks = $this->getRequest()->getParam('feedback');\n        if (!is_array($feedbacks)) {\n            $feedbacks = array($feedbacks);\n        }\n\n        try {\n            foreach ($feedbacks as $id) {\n                $feedback = $this->feedbackRepository->find($id);\n            }\n            $this->feedbackRepository->setStatus($feedbacks, $status);\n            $this->feedbackRepository->flush();\n        } catch (Exception $e) {\n            $this->view->status = $e->getCode();\n            $this->view->message = $e->getMessage();\n            return;\n        }\n        $this->view->status = 200;\n        $this->view->message = 'succcesful';\n    }\n\n    /**\n     * Reply action\n     */\n    public function replyAction()\n    {\n        $this->getHelper('contextSwitch')->addActionContext('reply', 'json')->initContext();\n\n        $auth = Zend_Auth::getInstance();\n        $user = new User($auth->getIdentity());\n        $fromEmail = $user->getEmail();\n\n        $feedbackId = $this->getRequest()->getParam('parent');\n        $subject = $this->getRequest()->getParam('subject');\n        $message = $this->getRequest()->getParam('message');\n\n        $feedback = $this->feedbackRepository->find($feedbackId);\n        $user = $feedback->getUser();\n        $toEmail = $user->getEmail();\n\n        /*\n        $configMail = array( 'auth' => 'login',\n                             'username' => 'user@gmail.com',\n                             'password' => 'password',\n                             'ssl' => 'ssl',\n                             'port' => 465\n        );\n        $mailTransport = new Zend_Mail_Transport_Smtp('smtp.gmail.com',$configMail);\n        */\n        $mail = new Zend_Mail('utf-8');\n        $mail->setSubject($subject);\n        $mail->setBodyText($message);\n        $mail->setFrom($fromEmail);\n        $mail->addTo($toEmail);\n        try {\n            $mail->send();\n            $this->view->status = 200;\n            $this->view->message = 'succcesful';\n        }\n        catch (Exception $e) {\n            $this->view->status = 200;\n            $this->view->message = 'succcesful?';\n        }\n    }\n\n    /**\n     * Approve action\n     */\n    public function approveAction()\n    {\n        $this->getHelper('contextSwitch')->addActionContext('approve', 'json')->initContext();\n\n        $parameters = $this->getRequest()->getParams();\n\n        if ($parameters['type'] == 'image') {\n            $image = new Image($parameters['id']);\n            $image->update(array('Status' => 'approved'));\n\n            $user_id = $image->getUploadingUserId();\n            $user = $this->_helper->service('user')->find($user_id);\n            $this->_helper->service->getService('dispatcher')\n                ->dispatch('image.approved', new GenericEvent($this, array(\n                    'user' => $user,\n                    'image_id' => $parameters['id']\n                )));\n        }\n        if ($parameters['type'] == 'document') {\n            $document = new Attachment($parameters['id']);\n            $document->update(array('Status' => 'approved'));\n\n            $user_id = $document->getUploadingUserId();\n            $user = $this->_helper->service('user')->find($user_id);\n            $this->_helper->service->getService('dispatcher')\n                ->dispatch('document.approved', new GenericEvent($this, array(\n                    'user' => $user,\n                    'document_id' => $parameters['id']\n                )));\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/ImageController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\nuse Newscoop\\Image\\Rendition;\n\nrequire_once($GLOBALS['g_campsiteDir']. '/classes/Plupload.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ImageSearch.php');\n\n/**\n * @Acl(ignore=True)\n */\nclass Admin_ImageController extends Zend_Controller_Action\n{\n    const LIMIT = 24;\n\n    protected $renditions = array();\n\n    public function init()\n    {\n        $this->renditions = $this->_helper->service('image.rendition')->getRenditions();\n\n        $this->_helper->contextSwitch()\n            ->addActionContext('edit', 'json')\n            ->addActionContext('set-rendition', 'json')\n            ->addActionContext('remove-rendition', 'json')\n            ->addActionContext('article-attach', 'json')\n            ->addActionContext('set-attach', 'json')\n            ->addActionContext('set-detach', 'json')\n            ->addActionContext('upload', 'json')\n            ->addActionContext('edit-image-data', 'json')\n            ->initContext();\n\n        $this->view->previewWidth = 120;\n        $this->view->previewHeight = 120;\n    }\n\n    public function articleAction()\n    {\n        $this->_helper->layout->setLayout('iframe');\n        $this->view->renditions = $this->renditions;\n        $this->view->images = $this->_helper->service('image')->findByArticle($this->_getParam('article_number'));\n        $this->view->articleRenditions = $this->_helper->service('image.rendition')->getArticleRenditions($this->_getParam('article_number'));\n    }\n\n    public function articleAttachAction()\n    {\n        $this->_helper->layout->setLayout('iframe');\n        Zend_View_Helper_PaginationControl::setDefaultViewPartial('paginator-hash.phtml');\n\n        $page = (int) $this->_getParam('page', 1);\n        if (1 > $page) {\n            $page = 1;\n        }\n\n        $search_paging = array(\n            'length' => self::LIMIT,\n            'offset' => ($page - 1) * self::LIMIT,\n        );\n\n        $term = $this->_getParam('term');\n        $em = \\Zend_Registry::get('container')->getService('em');\n        if (!empty($term)) {\n            $qb = $em->getRepository('Newscoop\\Image\\LocalImage')\n                ->createQueryBuilder('i');\n\n            $users = $qb->select('i.id', 'u.id', 'u.username')\n                ->leftJoin('i.user', 'u')\n                ->where($qb->expr()->like('u.username', $qb->expr()->literal('%'.$term.'%')))\n                ->groupBy('u.id')\n                ->setMaxResults(25)\n                ->getQuery()\n                ->getArrayResult();\n\n            echo json_encode(array('items' => $users));die;\n        }\n\n        $source_criteria = array('source' => array('local', 'feedback'));\n        $uploaderId = $this->_getParam('uploader', '');\n        $newsfeed = $this->_getParam('newsfeed', 0);\n\n        if ($newsfeed) {\n            $source_criteria = array();\n        }\n\n        $count = $this->_helper->service('image')->getCountBy(array());\n        $this->view->q = $this->_getParam('search', '');\n        if (is_array($this->view->q)) {\n            $this->view->q = $this->view->q[0];\n        }\n\n        $paginator = Zend_Paginator::factory($count);\n        $paginator->setItemCountPerPage(self::LIMIT);\n        $paginator->setCurrentPageNumber($page);\n        $paginator->setView($this->view);\n        $paginator->setDefaultScrollingStyle('Sliding');\n        $this->view->paginator = $paginator;\n\n        if (!empty($this->view->q)) {\n            $search_count = 0;\n            $this->view->images = $this->_helper->service('image.search')->find($this->view->q, $source_criteria, array('id' => 'desc'), $search_paging, $search_count);\n            $count = $search_count;\n        } else if (!empty($uploaderId)) {\n            $this->view->images = $this->_helper->service('image.search')->find($uploaderId, $source_criteria, array('id' => 'desc'), $search_paging);\n        } else {\n            $count = $this->_helper->service('image')->getCountBy($source_criteria);\n            $this->view->images = $this->_helper->service('image')->findBy($source_criteria, array('id' => 'desc'), self::LIMIT, ($paginator->getCurrentPageNumber() - 1) * self::LIMIT);\n        }\n\n        $this->view->newsfeed = false;\n        if ($newsfeed) {\n            $this->view->newsfeed = true;\n        }\n\n        $this->view->article = (int) $this->_getParam('article_number', 0);\n        $this->view->languageId = (int) $this->_getParam('language_id', 0);\n        $this->view->articleImages = $this->_helper->service('image')->findByArticle((int) $this->_getParam('article_number', 0));\n    }\n\n    public function setAttachAction()\n    {\n        $this->_helper->layout->disableLayout();\n\n        try {\n            $articleNumber = $this->_getParam('article_number');\n            $imageId = $this->_getParam('image_id');\n\n            //$image = $this->_helper->service('image')->find($imageId);\n            //$articleImage = $this->_helper->service('image')->addArticleImage($articleNumber, $image);\n\n            ArticleImage::AddImageToArticle($imageId, $articleNumber);\n\n            $this->view->articleImages = $this->_helper->service('image')->findByArticle($this->_getParam('article_number'));\n        } catch (\\InvalidArgumentException $e) {\n            $this->view->exception= $e->getMessage();\n        }\n    }\n\n    public function setDetachAction()\n    {\n        $this->_helper->layout->disableLayout();\n\n        try {\n            $articleNumber = $this->_getParam('article_number');\n            $imageId = $this->_getParam('image_id');\n            $languageId = $this->_getParam('image_id');\n\n            $article = new Article($languageId, $articleNumber);\n            $image = new Image($imageId);\n            $articleImage = new ArticleImage($articleNumber, $imageId);\n            $articleImage->delete();\n        } catch (\\InvalidArgumentException $e) {\n            $this->view->exception= $e->getMessage();\n        }\n    }\n\n    public function uploadAction()\n    {\n        $this->_helper->layout->disableLayout();\n\n        global $Campsite;\n\n        $files = Plupload::OnMultiFileUpload($Campsite['IMAGE_DIRECTORY']);\n        //var_dump($files);\n        die;\n    }\n\n    public function editImageDataAction()\n    {\n        if ($this->getRequest()->isPost()) {\n            $data = $this->_getParam('data');\n\n            if (is_array($data)) {\n                foreach ($data as $id => $values) {\n                    if (!empty($values['description']) || !empty($values['place']) || !empty($values['photographer'])) {\n                        $image = $this->_helper->service('image')->find($id);\n\n                        $image->setDescription($values['description']);\n                        $image->setPlace($values['place']);\n                        $image->setPhotographer($values['photographer']);\n                        if ($values['date'] && $values['date'] != '0000-00-00') {\n                            $image->setDate($values['date']);\n                        }\n                        else {\n                            $image->setDate(date('Y-m-d'));\n                        }\n                    }\n                }\n                $this->_helper->entity->flushManager();\n            }\n            $parameters = $this->getRequest()->getParams();\n            $next = $parameters['next'];\n            if ($next == 1) {\n                $this->_helper->redirector('article', 'image', 'admin', array(\n                    'article_number' => $this->_getParam('article_number')\n                ));\n            }\n        }\n\n        $this->view->article = $this->_getParam('article_number');\n        $this->view->languageId = $this->_getParam('language_id');\n\n        $this->_helper->layout->setLayout('iframe');\n\n        $images = array();\n        $articleImages = $this->_helper->service('image')->findByArticle($this->_getParam('article_number'));\n        foreach ($articleImages as $k => $articleImage) {\n            unset($exifDate);\n            unset($iptcDate);\n            unset($iptcPlace);\n            unset($iptcPhotographer);\n            unset($iptcDescription);\n\n            $image = $articleImage->getImage();\n            $allowedExtensions = array('jpg', 'jpeg', 'tiff', 'tif');\n            $imagePathParts = explode('.', $image->getPath());\n            $imageExtension = strtolower($imagePathParts[count($imagePathParts) - 1]);\n\n            if (in_array($imageExtension, $allowedExtensions)) {\n                $exif = @exif_read_data($image->getPath());\n                if (isset($exif['DateTime'])) {\n                    $exifDate = date('Y-m-d', strtotime($exif['DateTime']));\n                }\n\n                $size = getimagesize($image->getPath(), $info);\n                $iptc = array();\n                foreach ($info as $key => $value) {\n                    $iptc[$key] = iptcparse($value);\n                }\n                if (isset($iptc['APP13'])) {\n                    $iptc = $iptc['APP13'];\n                }\n                if (isset($iptc['2#055'])) {\n                    $iptcDate = $iptc['2#055'][0];\n                    $iptcDate = date('Y-m-d', strtotime($iptcDate));\n                }\n                if (isset($iptc['2#080'])) {\n                    $iptcPhotographer = $iptc['2#080'][0];\n                }\n                if (isset($iptc['2#120'])) {\n                    $iptcDescription = $iptc['2#120'][0];\n                }\n                if (isset($iptc['2#090']) || isset($iptc['2#092']) || isset($iptc['2#101'])) {\n                    $iptcPlace = array();\n                    if (isset($iptc['2#101'])) {\n                        $iptcPlace[] = $iptc['2#101'][0];\n                    }\n                    if (isset($iptc['2#090'])) {\n                        $iptcPlace[] = $iptc['2#090'][0];\n                    }\n                    if (isset($iptc['2#092'])) {\n                        $iptcPlace[] = $iptc['2#092'][0];\n                    }\n                    $iptcPlace = implode(', ', $iptcPlace);\n                }\n            }\n\n            if ($image->getDescription() == '') {\n                if (isset($iptcPhotographer)) {\n                    $image->setPhotographer($iptcPhotographer);\n                }\n                if (isset($iptcDescription)) {\n                    $image->setDescription($iptcDescription);\n                }\n                if (isset($iptcPlace)) {\n                    $image->setPlace($iptcPlace);\n                }\n                if (isset($exifDate)) {\n                    $image->setDate($exifDate);\n                }\n                if (isset($iptcDate)) {\n                    $image->setDate($iptcDate);\n                }\n\n                $images[] = $image;\n            } elseif ($this->_getParam('force_edit')) {\n\n                $images[] = $image;\n            }\n        }\n\n\n        $this->view->images = $images;\n    }\n\n    public function setRenditionAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->_helper->layout->disableLayout();\n\n        try {\n            $rendition = $this->_helper->service('image.rendition')->getRendition($this->_getParam('rendition'));\n            $image = $this->_helper->service('image')->getArticleImage($this->_getParam('article_number'), array_pop(explode('-', $this->_getParam('image'))));\n            $articleRendition = $this->_helper->service('image.rendition')->setArticleRendition($this->_getParam('article_number'), $rendition, $image->getImage());\n            $this->view->rendition = $this->view->rendition($rendition, $this->view->previewWidth, $this->view->previewHeight, $articleRendition);\n        } catch (\\InvalidArgumentException $e) {\n            $this->view->exception= sprintf($translator->trans('Sorry that image is too small. Image needs to be at least %dx%d.', array(), 'article_images'), $rendition->getWidth(), $rendition->getHeight());\n        }\n    }\n\n    public function removeRenditionAction()\n    {\n        $this->_helper->layout->disableLayout();\n        $this->_helper->service('image.rendition')->unsetArticleRendition($this->_getParam('article_number'), $this->_getParam('rendition'));\n        $rendition = $this->renditions[$this->_getParam('rendition')];\n        $renditions = $this->_helper->service('image.rendition')->getArticleRenditions($this->_getParam('article_number'));\n        $this->view->rendition = $this->view->rendition($rendition, $this->view->previewWidth, $this->view->previewHeight, $renditions[$rendition]);\n    }\n\n    public function editAction()\n    {\n        $this->_helper->layout->setLayout('iframe');\n        $rendition = $this->_helper->service('image.rendition')->getRendition($this->_getParam('rendition'));\n        $renditions = $this->_helper->service('image.rendition')->getArticleRenditions($this->_getParam('article_number'));\n        $image = $renditions[$rendition]->getImage();\n\n        if ($this->getRequest()->isPost()) {\n            $this->_helper->service('image.rendition')\n                ->setArticleRendition($this->_getParam('article_number'), $rendition, $image, $this->getRequest()->getPost('coords'));\n            $this->_helper->redirector('edit', 'image', 'admin', array(\n                'article_number' => $this->_getParam('article_number'),\n                'rendition' => $this->_getParam('rendition'),\n            ));\n        }\n\n        $this->view->rendition = $renditions[$rendition]->getRendition();\n        $this->view->image = $renditions[$rendition]->getImage();\n        $this->view->renditions = $this->renditions;\n        $this->view->articleRenditions = $this->_helper->service('image.rendition')->getArticleRenditions($this->_getParam('article_number'));\n    }\n\n    public function setDefaultImageAction()\n    {\n        $image = $this->_helper->service('image')->getArticleImage($this->_getParam('article_number'), $this->_getParam('default-image'));\n        $this->_helper->service('image')->setDefaultArticleImage($this->_getParam('article_number'), $image);\n        $this->_helper->redirector('article', 'image', 'admin', array(\n            'article_number' => $this->_getParam('article_number'),\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/LanguagesController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @subpackage Languages\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\nuse Newscoop\\Entity\\Language;\n\n/**\n * @Acl(resource=\"language\", action=\"manage\")\n */\nclass Admin_LanguagesController extends Zend_Controller_Action\n{\n    /** @var Newscoop\\Entity\\Repository\\LanguageRepository */\n    private $repository= NULL;\n\n    /**\n     * Init\n     *\n     * @return void\n     */\n    public function init()\n    {\n        $this->repository = $this->_helper->entity->getRepository('Newscoop\\Entity\\Language');\n    }\n\n    public function indexAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->view->languages = $this->repository->getLanguages();\n\n        $this->view->actions = array(\n            array(\n                'label' => $translator->trans('Add new Language', array(), 'languages'),\n                'module' => 'admin',\n                'controller' => 'languages',\n                'action' => 'add',\n                'resource' => 'language',\n                'privilege' => 'manage',\n            ),\n        );\n    }\n\n    public function addAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $this->_helper->acl->check('language', 'manage');\n\n        $form = new Admin_Form_Language;\n        $form->setMethod('post')->setAction('');\n\n        if ($this->getRequest()->isPost() && $form->isValid($_POST)) {\n            try {\n                $language = new Language;\n                $this->repository->save($language, $form->getValues());\n                $cacheService->clearNamespace('language');\n                $this->_helper->flashMessenger->addMessage($translator->trans('Language added.', array(), 'languages'));\n                $this->_helper->redirector('index');\n            } catch (Exception $e) {\n                $form->getElement('name')->addError($translator->trans('Name taken.', array(), 'languages'));\n            }\n        }\n\n        $this->view->form = $form;\n    }\n\n    public function editAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $language = $this->getLanguage();\n\n        $form = new Admin_Form_Language;\n        $form->setAction('')\n            ->setMethod('post')\n            ->setDefaultsFromEntity($language);\n\n        if ($this->getRequest()->isPost() && $form->isValid($_POST)) {\n            try {\n                $this->repository->save($language, $form->getValues());\n\n                $cacheService->clearNamespace('language');\n                $this->_helper->flashMessenger->addMessage($translator->trans('Language saved.', array(), 'languages'));\n                $this->_helper->redirector('edit', 'languages', 'admin', array('language' => $language->getId()));\n            } catch (InvalidArgumentException $e) {\n                $this->view->error = $e->getMessage();\n            }\n        }\n\n        $this->view->language = $language;\n        $this->view->form = $form;\n    }\n\n    /**\n     * @Acl(action=\"delete\")\n     */\n    public function deleteAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $this->_helper->acl->check('language', 'delete');\n\n        $language = $this->getLanguage();\n        if ($language->getCode() === 'en') {\n            $this->_helper->flashMessenger->addMessage($translator->trans('English language cannot be removed.', array(), 'languages'));\n            $this->_helper->redirector('index', 'languages', 'admin');\n        }\n\n        if ($this->repository->isUsed($language)) {\n            $this->_helper->flashMessenger->addMessage($translator->trans('Language is in use and cannot be removed.', array(), 'languages'));\n            $this->_helper->redirector('index', 'languages', 'admin');\n        }\n\n        $this->repository->delete($language->getId());\n        $cacheService->clearNamespace('language');\n        $this->_helper->flashMessenger->addMessage($translator->trans('Language removed.', array(), 'languages'));\n        $this->_helper->redirector('index', 'languages', 'admin');\n    }\n\n    /**\n     * Get language\n     *\n     * @return Newscoop\\Entity\\Language\n     */\n    private function getLanguage()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $id = (int) $this->getRequest()->getParam('language');\n        if (!$id) {\n            $this->_helper->flashMessenger(array('error', $translator->trans('Language id not specified', array(), 'languages')));\n            $this->_helper->redirector('index');\n        }\n\n        $language = $this->repository->findOneBy(array('id' => $id));\n        if (empty($language)) {\n            $this->_helper->flashMessenger->addMessage($translator->trans('Language not found.', array(), 'languages'));\n            $this->_helper->redirector('index');\n        }\n\n        return $language;\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/LegacyController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\n\n/**\n * @Acl(ignore=\"1\")\n */\nclass Admin_LegacyController extends Zend_Controller_Action\n{\n    public function indexAction()\n    {\n        global $controller, $Campsite, $ADMIN_DIR, $ADMIN, $g_user, $g_ado_db, $prefix;\n        $controller = $this;\n\n        $no_menu_scripts = array(\n            $prefix . 'login.php',\n            $prefix . 'logout.php',\n            '/issues/preview.php',\n            '/issues/empty.php',\n            '/ad_popup.php',\n            '/articles/preview.php',\n            '/articles/autopublish.php',\n            '/articles/autopublish_do_add.php',\n            '/articles/images/popup.php',\n            '/articles/images/view.php',\n            '/articles/files/popup.php',\n            '/articles/empty.php',\n            '/articles/post.php',\n            '/comments/ban.php',\n            '/comments/do_ban.php',\n            '/imagearchive/do_add.php',\n            '/users/authors_ajax/detail.php',\n            '/users/authors_ajax/grid.php',\n            '/articles/locations/popup.php',\n            '/articles/locations/preview.php',\n            '/articles/locations/search.php',\n            '/articles/locations/filter.php',\n            '/articles/context_box/popup.php',\n            '/articles/multidate/popup.php',\n        );\n\n        CampPlugin::ExtendNoMenuScripts($no_menu_scripts);\n\n        $request_uri = $_SERVER['REQUEST_URI'];\n        $call_script = substr($request_uri, strlen(\"/$ADMIN\"));\n\n        // Remove any GET parameters\n        if (($question_mark = strpos($call_script, '?')) !== false) {\n            $call_script = substr($call_script, 0, $question_mark);\n        }\n\n        // Remove all attempts to get at other parts of the file system\n        $call_script = str_replace('/../', '/', $call_script);\n        $GLOBALS['call_script'] = $call_script;\n\n        // detect extended login/logout files\n        if ($call_script == '/login.php') $call_script = $prefix . 'login.php';\n\n        $extension = '';\n        if (($extension_start = strrpos($call_script, '.')) !== false) {\n            $extension = strtolower(substr($call_script, $extension_start));\n        }\n\n        if (($extension == '.php') || ($extension == '')) {\n            // If its not a PHP file, assume its a directory.\n            if ($extension != '.php') {\n                // If its a directory\n                if (($call_script != '') && ($call_script[strlen($call_script)-1] != '/') ) {\n                    $call_script .= '/';\n                }\n                $call_script .= 'index.php';\n            }\n\n            $this->view->legacy = true;\n            $needs_menu = ! (in_array($call_script, $no_menu_scripts) || Input::Get('p_no_menu', 'boolean', false, true));\n            if (!$needs_menu) {\n                $this->_helper->layout->disableLayout();\n            }\n            // Verify the file exists\n            $path_name = $Campsite['HTML_DIR'] . \"/$ADMIN_DIR/$call_script\";\n\n            if (!file_exists($path_name)) {\n                foreach (CampPlugin::GetEnabled() as $CampPlugin) {\n                    $plugin_path_name = dirname(APPLICATION_PATH) . '/'.$CampPlugin->getBasePath().\"/$ADMIN_DIR/$call_script\";\n                    if (file_exists($plugin_path_name)) {\n                        $path_name = $plugin_path_name;\n\n                        // possible plugin include paths\n                        $include_paths = array(\n                            '/classes',\n                            '/template_engine/classes',\n                            '/template_engine/metaclasses',\n                        );\n\n                        // set include paths for plugin\n                        foreach ($include_paths as $path) {\n                            $path = dirname(APPLICATION_PATH) . '/' . $CampPlugin->getBasePath() . $path;\n                            if (file_exists($path)) {\n                                set_include_path(implode(PATH_SEPARATOR, array(\n                                    realpath($path),\n                                    get_include_path(),\n                                )));\n                            }\n                        }\n\n                        break;\n                    }\n                }\n\n                if (!file_exists($path_name)) {\n                    header(\"HTTP/1.1 404 Not found\");\n                    echo '<html><head><title>404 Not Found</title></head><body>';\n                    echo '<h1>Not Found</h1>';\n                    echo '<p>The requested URL ', $_SERVER['REQUEST_URI'], ' was not found on this server.</p>';\n                    echo '</body></html>';\n                    exit;\n                }\n            }\n\n            // render view\n            require_once $path_name;\n\n            return;\n\n        } elseif (file_exists($Campsite['HTML_DIR'] . \"/$ADMIN_DIR/$call_script\")) {\n            readfile($Campsite['HTML_DIR'] . \"/$ADMIN_DIR/$call_script\");\n            exit;\n        }\n\n        header(\"HTTP/1.1 404 Not found\");\n        exit;\n    }\n\n    public function postDispatch()\n    {\n        camp_html_clear_msgs(true);\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/LogController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\n\n/**\n */\nclass Admin_LogController extends Zend_Controller_Action\n{\n    /** @var Newscoop\\Services\\AuditService */\n    private $auditService;\n\n    public function init()\n    {\n        $this->auditService = $this->_helper->service('audit');\n    }\n\n    /**\n     * @Acl(action=\"view\")\n     */\n    public function indexAction()\n    {\n        $this->_helper->layout->setLayout('admin');\n        $this->view->form = $this->getForm()->setMethod('get')->setAction('');\n        \n        $criteria = array();\n        $orderBy = array('id' => 'desc');\n        $limit = 10;\n        $offset = 0;\n        \n        if ($this->view->form->isValid($this->getRequest()->getParams())) {\n            $resourceType = $this->getRequest()->getParam('resource_type', '');\n            $actionType = $this->getRequest()->getParam('action_type', '');\n            \n            $resourceTypes = $this->auditService->getResourceTypes();\n            $actionTypes = $this->auditService->getActionTypes();\n            \n            if ($resourceType != '') {\n                $criteria['resource_type'] = $resourceTypes[$resourceType];\n            }\n            if ($actionType != '') {\n                $criteria['action'] = $actionTypes[$actionType];\n            }\n            $offset = $this->getRequest()->getParam('offset', 0);\n        }\n        \n        $count = $this->auditService->countBy($criteria);\n        $this->view->events = $this->auditService->findBy($criteria, $orderBy, $limit, $offset);\n        \n        $this->view->pager = new SimplePager($count, $limit, 'offset', '?');\n    }\n\n    /**\n     * Get priority form\n     *\n     * @return \\Zend_Form\n     */\n    private function getForm()\n    {\n        $form = new Zend_Form;\n\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $resourceTypes = $this->auditService->getResourceTypes();\n        $actionTypes = $this->auditService->getActionTypes();\n        \n        $form->addElement('select', 'resource_type', array(\n            'multioptions' => array('' => $translator->trans('All')) + $resourceTypes,\n            'label' => $translator->trans('Resource Type:', array(), 'logs'),\n            'onChange' => 'this.form.submit();',\n        ));\n        \n        $form->addElement('select', 'action_type', array(\n            'multioptions' => array('' => $translator->trans('All')) + $actionTypes,\n            'label' => $translator->trans('Action Type:', array(), 'logs'),\n            'onChange' => 'this.form.submit();',\n        ));\n        \n        return $form;\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/MediaController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\n\n/**\n * @Acl(ignore=True)\n */\nclass Admin_MediaController extends Zend_Controller_Action\n{\n    const LIMIT = 8;\n\n    public function init()\n    {\n        Zend_View_Helper_PaginationControl::setDefaultViewPartial('paginator.phtml');\n\n        $this->_helper->contextSwitch\n            ->addActionContext('list-slideshows', 'json')\n            ->addActionContext('list-images', 'json')\n            ->initContext();\n    }\n\n    public function listImagesAction()\n    {\n        $this->_helper->layout->disableLayout();\n\n        $page = $this->_getParam('page', 1);\n        $count = $this->_getParam('q', false) ? 0 : $this->_helper->service('image')->getCountBy(array());\n        $paginator = Zend_Paginator::factory($count);\n        $paginator->setItemCountPerPage(self::LIMIT);\n        $paginator->setCurrentPageNumber($page);\n        $paginator->setView($this->view);\n        $paginator->setDefaultScrollingStyle('Sliding');\n\n        $this->view->paginator = $paginator;\n\n        if ($this->_getParam('q', false)) {\n            $this->view->images = $this->_helper->service('image.search')->find($this->_getParam('q'));\n        } else {\n            $this->view->images = $this->_helper->service('image')->findBy(array(), array('id' => 'desc'), self::LIMIT, ($paginator->getCurrentPageNumber() - 1) * self::LIMIT);\n        }\n    }\n\n    public function listSlideshowsAction()\n    {\n        $criteria = array();\n        $paginator = Zend_Paginator::factory($this->_helper->service('package')->getCountBy($criteria));\n        $paginator->setItemCountPerPage(25);\n        $paginator->setCurrentPageNumber($this->_getParam('page', 1));\n        $paginator->setView($this->view);\n        $paginator->setDefaultScrollingStyle('Sliding');\n        $this->view->paginator = $paginator;\n        $this->view->slideshows = $this->_helper->service('package')->findBy(\n            $criteria,\n            array('id' => 'desc'),\n            $paginator->getCurrentItemCount(),\n            ($paginator->getCurrentPageNumber() - 1) * $paginator->getItemCountPerPage()\n        );\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/MultidateController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\nuse Newscoop\\ArticleDatetime;\nuse Doctrine\\Common\\Util\\Debug;\n\n/**\n * @Acl(resource=\"article\", action=\"edit\")\n */\nclass Admin_MultidateController extends Zend_Controller_Action\n{\n    \n    /** @var variable set to a timestamp with 0 h and 0 m */\n    public $tz;\n    /** @var variable set to a timestamp with a distant future date */\n    public $distant;\n\n    public function init()\n    {\n        $this->tz = mktime(0, 0, 0, 1, 1, 98);\n        $current_year = date('Y');\n        $this->distant = mktime(0, 0, 0, 12, 31, $current_year + 10); // it must be at most 2037, on 32bit systems\n    }\n\n    /* --------------------------------------------------------------- */\n    \n    public function getDate($full)\n    {\n    \treturn date(\"Y-m-d\", $full);\n    }\n    \n    public function getTime($full)\n    {\n    \treturn date(\"H:i\",$full);\n    }\n\n    public function isAllDay($date)\n    {\n        if ( ($this->getTime( is_null($date->getStartTime()) ? $this->tz : $date->getStartTime()->getTimestamp() ) == '00:00') && ($date->endTime === null) ) {\n    \t\treturn true;\n    \t} else {\n    \t\treturn false;\n    \t}\n    }\n\n    \n    public function addAction() \n    {\t\n    \t$date_type = $this->_request->getParam('date-type');\n    \t$articleId = $this->_request->getParam('article-number');\n    \t$repo = $this->_helper->entity->getRepository('Newscoop\\Entity\\ArticleDatetime');\n    \t$multidateId = $this->_request->getParam('multidateId');\n    \t$multidateField = $this->_request->getParam('multidatefield');\n    \t$eventComment = $this->_request->getParam('event-comment');\n    \t\n        $timeSet = array();\n    \tif ($date_type == 'specific') {\n    \t\t//single date\n    \t\t$startDate = $this->_request->getParam('start-date-specific');\n    \t\t$startTime = $this->_request->getParam('start-time-specific');\n    \t\t$endTime = $this->_request->getParam('end-time-specific');\n    \t\t\n\n            $type = $this->_request->getParam('specific-radio');\n            switch($type) {\n                case 'start-only':\n                    $timeSet = array(\n                        'start_date' => $startDate,\n                        'end_date' => $startDate,\n                        'start_time' => $startTime,\n                    );\n                break;\n                case 'start-and-end':\n                    $timeSet = array(\n                        'start_date' => $startDate,\n                        'end_date' => $startDate,\n                        'start_time' => $startTime,\n                        'end_time' => $endTime,\n                    );\n                    break;\n            case 'all-day':\n                    $timeSet = array(\n                        'start_date' => $startDate,\n                        'end_date' => $startDate,\n                    );\n                    break;\n    \t\t}\n    \t\t\n            $timeSet = new ArticleDatetime($timeSet);\n\n    \t\tif ( $multidateId > 0) {\n                $repo->update( $multidateId, $timeSet, null, $multidateField, null, array('eventComment' => $eventComment) );\n    \t\t} else {\n                $repo->add($timeSet, $articleId, $multidateField, null, false, array('eventComment' => $eventComment) );\n    \t\t}\n    \t\t\n    \t\t\n    \t} else {\n    \t\t\n    \t\t$startDate = $this->_request->getParam('start-date-daterange');\n    \t\tif ($this->_request->getParam('cycle-ends') == 'never') {\n    \t\t\t$endDate = null;\n    \t\t} else {\n    \t\t\t$endDate = $this->_request->getParam('end-date-daterange');\n    \t\t}\n    \t\tif ($this->_request->getParam('daterange-all-day') == 1) {\n    \t\t\t$startTime = '00:00';\n    \t\t\t$endTime = null;\n    \t\t} else {\n    \t\t\t$startTime = $this->_request->getParam('start-time-daterange');\n            \t$endTime = $this->_request->getParam('end-time-daterange');\t\n    \t\t}\n    \t\t$recurring = $this->_request->getParam('repeats-cycle');\n            if (($endDate !== null) && ('weekly' == $recurring)) {\n                $start_week_day = date('w', date_timestamp_get(date_create($startDate)));\n                $end_week_day = date('w', date_timestamp_get(date_create($endDate)));\n                if ($start_week_day != $end_week_day) {\n                    $days_sub = (7 + $end_week_day - $start_week_day) % 7;\n                    $end_date_new = date_create($endDate);\n                    $sub_interval = new \\DateInterval('P'.$days_sub.'D');\n                    $end_date_new->sub($sub_interval);\n                    $endDate = date('Y-m-d', date_timestamp_get($end_date_new));\n                }\n            }\n            if (($endDate !== null) && ('monthly' == $recurring)) {\n                $start_month_day = date('j', date_timestamp_get(date_create($startDate)));\n                $orig_end_date = date_create($endDate);\n                $end_month_day = date('j', date_timestamp_get($orig_end_date));\n                if ($start_month_day != $end_month_day) {\n                    $end_month_month = date('n', date_timestamp_get($orig_end_date));\n                    $end_month_year = date('Y', date_timestamp_get($orig_end_date));\n\n                    if ($start_month_day < $end_month_day) {\n                        $end_month_day = $start_month_day;\n                    }\n                    else {\n                        $end_month_day = $start_month_day;\n                        while (true) {\n                            $end_month_month -= 1;\n                            if (0 == $end_month_month) {\n                                $end_month_month = 12;\n                                $end_month_year -= 1;\n                            }\n                            if (checkdate($end_month_month, $end_month_day, $end_month_year)) {\n                                break;\n                            }\n                        }\n                    }\n                    $new_end_date = mktime(0, 0, 0, $end_month_month, $end_month_day, $end_month_year);\n                    $endDate = date('Y-m-d', $new_end_date);\n                }\n            }\n\n            $timeSet = array(\n                'start_date' => $startDate,\n                'end_date' => $endDate,\n                'start_time' => $startTime,\n                'end_time' => $endTime,\n                'recurring' => $recurring,\n            );\n            $timeSet = new ArticleDatetime($timeSet);\n\n            if ( $multidateId > 0) {\n                $repo->update( $multidateId, $timeSet, null, $multidateField, null, array('eventComment' => $eventComment) );\n            } else {\n                $repo->add($timeSet, $articleId, $multidateField, null, false, array('eventComment' => $eventComment) );\n            }\n    \t}\n        echo json_encode(array('code' => 200));\n    \tdie();\n    }\n    \n      \n    \n    public function geteventAction() \n    {\n    \t$articleDateTimeId = $this->_request->getParam('id');\n        $repo = $this->_helper->entity->getRepository('Newscoop\\Entity\\ArticleDatetime');\n        $jsEvent = array();\n        $event = $repo->findDates((object) array('id' => \"$articleDateTimeId\"));\n        if (is_array($event) && isset($event[0]) && (!empty($event[0]))) {\n        \t$date = $event[0];\n        \t$jsEvent['id'] = $date->id;\n        \t$jsEvent['startDate'] = $this->getDate($date->getStartDate()->getTimestamp());\n        \t$jsEvent['startTime'] = $this->getTime(is_null($date->getStartTime()) ? $this->tz : $date->getStartTime()->getTimestamp());\n        \t\n\t        $endDate = $date->getEndDate();\n\t        if ( empty($endDate)) {\n\t        \t$jsEvent['endDate'] = null;\n\t        } else {\n\t        \t$jsEvent['endDate'] = $this->getDate($date->getEndDate()->getTimestamp());\n\t        }\n\t        $jsEvent['endTime'] = $this->getTime(is_null($date->getEndTime()) ? $this->tz : $date->getEndTime()->getTimestamp());\n\t        $jsEvent['allDay'] = $this->isAllDay($date);\n            $jsEvent['restOfDay'] = false;\n\t        $jsEvent['isRecurring'] = $date->getRecurring();\n            if ((!$jsEvent['isRecurring']) && (!$jsEvent['allDay'])) {\n                if (is_null($date->getEndTime())) {\n                    $jsEvent['restOfDay'] = true;\n                }\n            }\n        \tif ($jsEvent['endDate'] === null) {\n\t        \t$jsEvent['neverEnds'] = 1;\n\t        } else {\n\t        \t$jsEvent['neverEnds'] = 0;\n\t        }\n\n            $jsEvent['field_name'] = $date->getFieldName();\n            $jsEvent['event_comment'] = $date->getEventComment();\n        }\n\n        echo json_encode($jsEvent);\n        die();\n    }\n    \n    public function removeAction() \n    {\n    \t\n    \t\n    \t\n    \t$articleDateTimeId = $this->_request->getParam('id');\n    \t$repo = $this->_helper->entity->getRepository('Newscoop\\Entity\\ArticleDatetime');\n    \t\n    \t$repo->deleteById($articleDateTimeId);\n    \t\n    \techo json_encode(array('code' => 200));\n        die();\n    }\n\n\n    public function getdatesAction() \n    {\n\n        require_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\n        require_once($GLOBALS['g_campsiteDir'].'/classes/ArticleTypeField.php');\n\n        $field_ranks = array();\n        $field_infos = array();\n\n        $dark_blues = array('#4040ff', '#8040ff');\n        $yellow = '#ffff40';\n\n    \t\n    \t$articleId = $this->_request->getParam('articleId');\n    \t$languageId = $this->_request->getParam('languageId');\n\n        $article_obj = new \\Article($languageId, $articleId);\n        $article_type = $article_obj->getType();\n\n        $repo = $this->_helper->entity->getRepository('Newscoop\\Entity\\ArticleDatetime');\n        $return = array();\n        $dates = $repo->findDates((object) array('articleId' => \"$articleId\"));\n        foreach( $dates as $date) {\n\n            $recurring = $date->getRecurring();\n\n            $event_comment = $date->getEventComment();\n\n            $itemField = $date->getFieldName();\n            $itemColor = '#';\n            $itemRank = 0;\n            $itemHidden = false;\n\n            if (array_key_exists($itemField, $field_ranks)) {\n                $itemRank = $field_ranks[$itemField];\n            }\n            else {\n                $field_obj = new \\ArticleTypeField($article_type, $itemField);\n                $allItemRanks = $field_obj->getOrders();\n                foreach ($allItemRanks as $one_weight => $one_field) {\n                    $field_ranks[$one_field] = $one_weight;\n                    if ($one_field == $itemField) {\n                        $itemRank = $one_weight;\n                    }\n                }\n            }\n\n            if (array_key_exists($itemField, $field_infos)) {\n                $itemColor = $field_infos[$itemField]['background_color'];\n                $itemHidden = $field_infos[$itemField]['hidden_status'];\n            }\n            else {\n                $field_obj = new \\ArticleTypeField($article_type, $itemField);\n                $itemColor = $field_obj->getColor();\n                $itemHidden = $field_obj->isHidden();\n                $field_infos[$itemField] = array('background_color' => $itemColor, 'hidden_status' => $itemHidden);\n            }\n\n            if ($itemHidden) {\n                continue;\n            }\n\n        \tif (strlen($recurring) > 1) {\n        \t\t//daterange\n        \t\t$start = strtotime( $this->getDate($date->getStartDate()->getTimestamp()).' '.$this->getTime(is_null($date->getStartTime()) ? $this->tz : $date->getStartTime()->getTimestamp()) . ' UTC');\n        \t\t$end = strtotime( $this->getDate(is_null($date->getEndDate()) ? ($this->distant) : $date->getEndDate()->getTimestamp()).' '.$this->getTime(is_null($date->getEndTime()) ? ($this->tz + 86399) : $date->getEndTime()->getTimestamp()) . ' UTC');\n        \t\t$itemStart = $start;\n        \t\t$itemEnd = strtotime( $this->getDate($date->getStartDate()->getTimestamp()).' '.$this->getTime(is_null($date->getEndTime()) ? ($this->tz + 86399) : $date->getEndTime()->getTimestamp()) . ' UTC');\n        \t\t\n                $step = \"+1 day\";\n        \t\tswitch($recurring) {\n        \t\t\tcase 'weekly':\n        \t\t\t\t$step = \"+1 week\";\n        \t\t\t\tbreak;\n        \t\t\tcase 'monthly':\n        \t\t\t\t$step = \"+1 month\";\n        \t\t\t\tbreak;\n        \t\t}\n\n                while($itemStart <= $end) {\n                    $calDate = array();\n                    $calDate['id'] = $date->id;\n                    $calDate['title'] = $itemField;\n                    $calDate['start_utc'] = $itemStart;\n                    $calDate['start'] = gmdate('Y-m-d\\TH:i:s\\Z', $itemStart);\n                    $calDate['start_day'] = gmdate('m-d', $itemStart);\n                    $calDate['end_utc'] = $itemEnd;\n                    $calDate['end'] = gmdate('Y-m-d\\TH:i:s\\Z', $itemEnd);\n                    $calDate['allDay'] = $this->isAllDay($date);\n                    $calDate['field_name'] = $itemField;\n                    $calDate['backgroundColor'] = $itemColor;\n                    $calDate['textColor'] = '#000000';\n                    $calDate['event_comment'] = $event_comment;\n                    $calDate['weight'] = $itemRank;\n                    $return[] = $calDate;\n\n                    if ('+1 month' == $step) {\n                        $curr_start_year = date('Y', $itemStart);\n                        $curr_start_month = date('n', $itemStart);\n                        $curr_start_day = date('j', $itemStart);\n                        while (true) {\n                            $curr_start_month += 1;\n                            if (13 == $curr_start_month) {\n                                $curr_start_month = 1;\n                                $curr_start_year += 1;\n                            }\n                            if (checkdate($curr_start_month, $curr_start_day, $curr_start_year)) {\n                                $itemStart = mktime(date('G', $itemStart), 0 + ltrim(date('i', $itemStart), '0'), 0, $curr_start_month, $curr_start_day, $curr_start_year);\n                                $itemEnd = mktime(date('G', $itemEnd), 0 + ltrim(date('i', $itemEnd), '0'), 0, $curr_start_month, $curr_start_day, $curr_start_year);\n                                break;\n                            }\n                        }\n                    }\n                    else {\n                        $itemStart = strtotime($step, $itemStart);\n                        $itemEnd = strtotime($step, $itemEnd);\n                    }\n                }\n\n            } else {\n        \t\t//specific\n        \t\t$calDate = array();\n\t        \t$calDate['id'] = $date->id;\n                $calDate['title'] = $itemField;\n                $itemStart = strtotime( $this->getDate($date->getStartDate()->getTimestamp()).' '.$this->getTime( is_null($date->getStartTime()) ? $this->tz : $date->getStartTime()->getTimestamp() ) . ' UTC');\n\t        \t$calDate['start_utc'] = $itemStart;\n                $calDate['start'] = gmdate('Y-m-d\\TH:i:s\\Z', $itemStart);\n                $calDate['start_day'] = gmdate('m-d', $itemStart);\n\n\t        \t$endDate = $date->getEndDate();\n                // TODO: at this moment, specific dates without end dates are taken as single-date dates, even though they should be taken as never-ending continuous events\n                $itemEnd = 0;\n\t        \tif ( empty($endDate)) {\n\t        \t\t$itemEnd = strtotime( $this->getDate($date->getStartDate()->getTimestamp()).' '.$this->getTime(is_null($date->getEndTime()) ? ($this->tz + 86399) : $date->getEndTime()->getTimestamp()) . ' UTC');\n\t        \t} else {\n\t        \t\t$itemEnd = strtotime( $this->getDate($date->getEndDate()->getTimestamp()).' '.$this->getTime(is_null($date->getEndTime()) ? ($this->tz + 86399) : $date->getEndTime()->getTimestamp()) . ' UTC');\t\n\t        \t}\n                $calDate['end_utc'] = $itemEnd;\n                $calDate['end'] = gmdate('Y-m-d\\TH:i:s\\Z', $itemEnd);\n                $calDate['allDay'] = $this->isAllDay($date);\n                $calDate['restOfDay'] = false;\n                if (!$calDate['allDay']) {\n                    if (is_null($date->getEndTime())) {\n                        $calDate['restOfDay'] = true;\n                    }\n                }\n\n                $calDate['field_name'] = $itemField;\n                $calDate['backgroundColor'] = $itemColor;\n                $calDate['textColor'] = '#000000';\n                if (in_array($itemColor, $dark_blues)) {\n                    $calDate['textColor'] = $yellow;\n                }\n                $calDate['event_comment'] = $event_comment;\n                $calDate['weight'] = $itemRank;\n                $return[] = $calDate;\n            }\n        }\n\n        $res = usort($return, 'self::EventOrder');\n        echo json_encode($return);\n        die();\n    }\n\n    public static function EventOrder($a, $b) {\n        if (isset($a['start_day']) && isset($b['start_day'])) {\n            if ($a['start_day'] > $b['start_day']) {\n                return 1;\n            }\n            if ($a['start_day'] < $b['start_day']) {\n                return -1;\n            }\n        }\n\n        if (isset($a['weight']) && isset($b['weight'])) {\n            if ($a['weight'] > $b['weight']) {\n                return 1;\n            }\n            if ($a['weight'] < $b['weight']) {\n                return -1;\n            }\n        }\n\n        if (isset($a['start']) && isset($b['start'])) {\n            if ($a['start'] > $b['start']) {\n                return 1;\n            }\n            if ($a['start'] < $b['start']) {\n                return -1;\n            }\n        }\n\n        return 0;\n    }\n\n}\n\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/RenditionController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\n\n/**\n * @Acl(ignore=True)\n */\nclass Admin_RenditionController extends Zend_Controller_Action\n{\n    public function init(){}\n\n    public function indexAction()\n    {\n        $this->view->renditions = $this->_helper->service('image.rendition')->getRenditions();\n\n        $request = $this->getRequest();\n        if ($request->isPost()) {\n            $this->_helper->service('image.rendition')->setRenditionsLabels($this->getLabels());\n            $this->_helper->service('image.rendition')->setRenditionsOrder($request->getPost('order', array()));\n            $this->_helper->json(array());\n        }\n    }\n\n    private function getLabels()\n    {\n        $labels = array();\n        foreach ($this->getRequest()->getPost('labels', array()) as $label) {\n            $labels[$label['name']] = $label['value'];\n        }\n\n        return $labels;\n    }\n\n    public function reloadRenditionsAction()\n    {\n        if (!$this->getRequest()->isPost()) {\n            throw new \\Zend_Controller_Action_Exception('POST required', 405);\n        }\n\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->_helper->service('image.rendition')->reloadRenditions();\n        $this->_helper->flashMessenger($translator->trans('Renditions reloaded', array(), 'article_images'));\n        $this->_helper->redirector('index', 'rendition', 'admin');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/SlideshowController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nuse Newscoop\\Annotations\\Acl;\nuse Newscoop\\Image\\Rendition;\nuse Newscoop\\Package\\PackageService;\n\n/**\n * @Acl(ignore=True)\n */\nclass Admin_SlideshowController extends Zend_Controller_Action\n{\n    public function init()\n    {\n        $this->_helper->contextSwitch()\n            ->addActionContext('add-item', 'json')\n            ->addActionContext('add-multiple-items', 'json')\n            ->addActionContext('set-order', 'json')\n            ->addActionContext('remove-item', 'json')\n            ->addActionContext('index', 'json')\n            ->initContext();\n\n        $this->view->previewWidth = 100;\n        $this->view->previewHeight = 100;\n\n        $this->_helper->layout->setLayout('iframe');\n    }\n\n    public function boxAction()\n    {\n        $this->_helper->json($this->view->slideshowsJson($this->_helper->service('package')->findByArticle($this->_getParam('article_number'))));\n    }\n\n    public function createAction()\n    {\n        $form = new Admin_Form_SlideshowCreate();\n        $form->rendition->setMultiOptions($this->_helper->service('image.rendition')->getOptions());\n\n        $request = $this->getRequest();\n        $postParams = $request->getPost();\n\n        $image = isset($postParams['image']) ? $postParams['image'] : null;\n        $checkedImages = isset($postParams['checked-images']) ? $postParams['checked-images'] : array();\n\n        if ($request->isPost() && $form->isValid($postParams)) {\n            $values = $form->getValues();\n            $values['rendition'] = $this->_helper->service('image.rendition')->getRendition($values['rendition']);\n            $slideshow = $this->_helper->service('package')->save($values);\n            if ($this->_getParam('article_number', false)) {\n                $slideshows = $this->_helper->service('package')->findByArticle($this->_getParam('article_number'));\n                $slideshows[] = $slideshow;\n                $this->_helper->service('package')->saveArticle(array(\n                    'id' => $this->_getParam('article_number'),\n                    'slideshows' => array_map(function ($slideshow) { return array('id' => $slideshow->getId()); }, $slideshows),\n                ));\n            }\n\n            if (!empty($checkedImages)) {\n                foreach ($checkedImages as $key => $value) {\n                    try {\n                        $this->addItemToPackage($value, $slideshow);\n                    } catch (\\InvalidArgumentException $e) {\n                        continue;\n                    }\n                }\n            }\n\n            if (!is_null($image) && $image !== \"\") {\n                try {\n                    $item = explode('-', $image);\n                    $this->addItemToPackage(array_pop($item), $slideshow);\n                } catch (\\InvalidArgumentException $e) {}\n            }\n\n            $this->_helper->redirector('edit', 'slideshow', 'admin', array(\n                'article_number' => $this->_getParam('article_number'),\n                'slideshow' => $slideshow->getId(),\n            ));\n        }\n\n        $this->view->form = $form;\n        $this->view->images = $this->_helper->service('image')->findByArticle($this->_getParam('article_number'));\n    }\n\n    public function editAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $slideshow = $this->getSlideshow();\n        $form = new Admin_Form_Slideshow();\n        $form->setDefaultsFromEntity($slideshow);\n\n        $request = $this->getRequest();\n        if ($request->isPost() && $form->isValid($request->getPost())) {\n            try {\n                $this->_helper->service('package')->save($form->getValues(), $slideshow);\n            } catch (\\InvalidArgumentException $e) {\n                switch ($e->getCode()) {\n                    case PackageService::CODE_UNIQUE_SLUG:\n                        $form->slug->addError($translator->trans('Slug must be unique', array(), 'article_images'));\n                        break;\n                }\n            }\n        }\n\n        $this->view->form = $form;\n        $this->view->images = $this->_helper->service('image')->findByArticle($this->_getParam('article_number'));\n        $this->view->slideshow = $slideshow;\n    }\n\n    public function addItemAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $slideshow = $this->getSlideshow();\n        try {\n            $item = explode('-', $this->_getParam('image'));\n            $item = $this->addItemToPackage(array_pop($item), $slideshow);\n            $this->_helper->json(array(\n                'item' => $this->view->slideshowItem($item),\n            ));\n        } catch (\\InvalidArgumentException $e) {\n            $this->_helper->json(array(\n                'error_message' => sprintf($translator->trans('Sorry that image is too small. Image needs to be at least %dx%d.', array(), 'article_images'), $slideshow->getRendition()->getWidth(), $slideshow->getRendition()->getHeight()),\n            ));\n        }\n    }\n\n    public function addMultipleItemsAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $slideshow = $this->getSlideshow();\n        $items = array();\n\n        foreach ($this->_getParam('images') as $value) {\n            try {\n                $item = $this->addItemToPackage($value, $slideshow);\n            } catch (\\InvalidArgumentException $e) {\n                continue;\n            }\n\n            $items[] = $this->view->slideshowItem($item);\n        }\n\n        $this->orm->flush();\n        $this->_helper->json($items);\n    }\n\n    private function addItemToPackage($imageId, $slideshow)\n    {\n        $image = $this->_helper->service('image')->find($imageId);\n\n        return $this->_helper->service('package')->addItem($slideshow, $image);\n    }\n\n    public function addVideoItemAction()\n    {\n        $form = new Admin_Form_SlideshowVideoItem();\n        $form->setMethod('POST')->setAction($this->view->url(array(\n            'action' => 'add-video-item',\n        )));\n\n        $slideshow = null;\n        if ($this->_getParam('slideshow')) {\n            $slideshow = $this->getSlideshow();\n        }\n\n        if ($this->_getParam('slideshow_name') && !$slideshow) {\n            $values = array(\n                'rendition' => $this->_getParam('rendition'),\n                'headline' => $this->_getParam('slideshow_name'),\n            );\n            $values['rendition'] = $this->_helper->service('image.rendition')->getRendition($values['rendition']);\n            $slideshow = $this->_helper->service('package')->save($values);\n            if ($this->_getParam('article_number', false)) {\n                $slideshows = $this->_helper->service('package')->findByArticle($this->_getParam('article_number'));\n                $slideshows[] = $slideshow;\n                $this->_helper->service('package')->saveArticle(array(\n                    'id' => $this->_getParam('article_number'),\n                    'slideshows' => array_map(function ($slideshow) { return array('id' => $slideshow->getId()); }, $slideshows),\n                ));\n            }\n        }\n\n        $request = $this->getRequest();\n        if ($request->isPost() && $form->isValid($request->getPost())) {\n            $this->_helper->service('package')->addItem($slideshow, new \\Newscoop\\Package\\RemoteVideo($form->url->getValue()));\n            $this->_helper->redirector('edit', 'slideshow', 'admin', array(\n                'article_number' => $this->_getParam('article_number'),\n                'slideshow' => $slideshow->getId(),\n            ));\n        }\n\n        $this->view->form = $form;\n    }\n\n    public function removeItemAction()\n    {\n        $slideshow = $this->getSlideshow();\n        $this->_helper->service('package')->removeItem($slideshow, $this->_getParam('item'));\n    }\n\n    public function setOrderAction()\n    {\n        $slideshow = $this->getSlideshow();\n        $this->_helper->service('package')->setOrder($slideshow, $this->_getParam('order'));\n    }\n\n    public function editItemAction()\n    {\n        $slideshow = $this->getSlideshow();\n        $item = $this->_helper->service('package')->findItem($this->_getParam('item'));\n\n        $form = new Admin_Form_SlideshowItem();\n        $form->setMethod('POST');\n        $form->setDefaultsFromEntity($item);\n\n        $request = $this->getRequest();\n        if ($request->isPost() && $form->isValid($request->getPost())) {\n            $this->_helper->service('package')->saveItem($form->getValues(), $item);\n            $this->_helper->redirector('edit-item', 'slideshow', 'admin', array(\n                'article_number' => $this->_getParam('article_number'),\n                'slideshow' => $slideshow->getId(),\n                'item' => $item->getId(),\n            ));\n        }\n\n        $this->view->item = $item;\n        $this->view->form = $form;\n        $this->view->image = $item->getImage();\n        $this->view->rendition = $item->isImage() ? $item->getRendition() : $slideshow->getRendition();\n        $this->view->package = $slideshow;\n    }\n\n    /**\n     * Get slideshow by param\n     *\n     * @return Newscoop\\Package\\Package\n     */\n    private function getSlideshow()\n    {\n        return $this->_helper->service('package')->find($this->_getParam('slideshow'));\n    }\n\n    /**\n     * Set slideshow renditions\n     *\n     * @param  Zend_Form $form\n     * @return void\n     */\n    private function setSlideshowRenditions(\\Zend_Form $form)\n    {\n        $renditions = $this->_helper->service('image.rendition')->getOptions();\n        if (array_key_exists(self::SLIDESHOW_RENDITION, $renditions)) {\n            $renditions = array(\n                self::SLIDESHOW_RENDITION => $renditions[self::SLIDESHOW_RENDITION],\n            );\n        }\n\n        if (count($renditions) === 1) {\n            $form->removeElement('rendition');\n            $form->addElement('hidden', 'rendition', array(\n                'value' => array_pop(array_keys($renditions)),\n            ));\n        } else {\n            $form->rendition->setMultiOptions($renditions);\n        }\n    }\n\n    public function attachAction()\n    {\n        $this->_helper->layout->setLayout('modal');\n\n        $limit = 25;\n        if ($this->_getParam('format') === 'json') {\n            $this->_helper->json($this->view->slideshowsJson($this->_helper->service('package')->findBy(array(), array('id' => 'desc'), $limit, ($this->_getParam('page', 1) - 1) * $limit)));\n        }\n\n        $paginator = Zend_Paginator::factory($this->_helper->service('package')->getCountBy(array()));\n        $paginator->setItemCountPerPage($limit);\n        $paginator->setCurrentPageNumber(1);\n\n        $this->view->q = '';\n        if ($this->_getParam('q', false)) {\n            $this->view->slideshows = $this->_helper->service('package.search')->find($this->_getParam('q'));\n            $this->view->q = $this->_getParam('q');\n            $this->view->article_number = $this->_getParam('article_number');\n        } else {\n            $this->view->slideshows = $this->_helper->service('package')->findBy(array(), array('id' => 'desc'), $limit, 0);\n        }\n        $this->view->pages = $paginator->count();\n\n        $this->view->article = array(\n            'id' => $this->_getParam('article_number'),\n            'slideshows' => $this->view->slideshowsJson($this->_helper->service('package')->findByArticle($this->_getParam('article_number'))),\n        );\n    }\n\n    public function articleAction()\n    {\n        $request = \\Zend_Registry::get('container')->get('request');\n        $article = json_decode(utf8_encode($request->getContent()), true);\n        $this->_helper->service('package')->saveArticle($article);\n        $this->_helper->json(array());\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/SlideshowRestController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\nuse Newscoop\\Image\\Rendition;\nuse Newscoop\\Package\\PackageService;\n\n/**\n * @Acl(ignore=True)\n */\nclass Admin_SlideshowRestController extends Zend_Rest_Controller\n{\n    public function indexAction()\n    {\n        $limit = 25;\n        $this->_helper->json($this->view->slideshowsJson($this->_helper->service('package')->findBy(array(), array('id' => 'desc'), $limit, ($this->_getParam('page', 1) - 1) * $limit)));\n    }\n\n    public function getAction()\n    {\n    }\n\n    public function postAction()\n    {\n    }\n\n    public function putAction()\n    {\n    }\n\n    public function deleteAction()\n    {\n        try {\n            $this->_helper->service('package')->delete($this->_getParam('id'));\n            $this->_helper->json(array());\n        } catch (Exception $e) {\n            $this->_helper->json(array(\n                'exception' => array(\n                    'code' => $e->getCode(),\n                    'message' => $e->getMessage(),\n                ),\n            ));\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/StaffController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\nuse Newscoop\\Entity\\User\\Staff;\n\n/**\n * @Acl(resource=\"user\", action=\"manage\")\n */\nclass Admin_StaffController extends Zend_Controller_Action\n{\n    private $repository;\n\n    private $form;\n\n    /**\n     * Init\n     *\n     * @return void\n     */\n    public function init()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->repository = $this->_helper->entity->getRepository('Newscoop\\Entity\\User\\Staff');\n\n        $this->form = new Admin_Form_Staff($this->_helper->acl->isAllowed('user', 'manage'));\n        $this->form->setAction('')->setMethod('post');\n\n        if ($this->_helper->acl->isAllowed('user', 'manage')) { // set form user groups\n            $groups = array();\n            $groupRepository = $this->_helper->entity->getRepository('Newscoop\\Entity\\User\\Group');\n            foreach ($groupRepository->findAll() as $group) {\n                $groups[$group->getId()] = $group->getName();\n            }\n            $this->form->getElement('groups')->setMultioptions($groups);\n        }\n\n        // set form countries\n        $countries = array('' => $translator->trans('Select country', array(), 'user_subscriptions'));\n        foreach (Country::GetCountries(1) as $country) {\n            $countries[$country->getCode()] = $country->getName();\n        }\n        $this->form->getElement('country')->setMultioptions($countries);\n    }\n\n    public function indexAction()\n    {\n        $this->_forward('table');\n    }\n\n    public function addAction()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        try {\n            $staff = new Staff();\n            $this->handleForm($this->form, $staff);\n        } catch (PDOException $e) {\n            $this->form->getElement('username')->addError($translator->trans('That user name already exists, please choose a different login name.', array(), 'users'));\n        } catch (InvalidArgumentException $e) {\n            $field = $e->getMessage();\n            $this->form->getElement($field)->addError($translator->trans(\"That $1 already exists, please choose a different $2.\", array('$1' => $field, '$2' => $field), 'user_subscriptions'));\n        }\n\n        $this->view->form = $this->form;\n    }\n\n    /**\n     * @Acl(ignore=\"1\")\n     */\n    public function editAction()\n    {\n        $staff = $this->_helper->entity->get(new Staff, 'user');\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        // check permission\n        $auth = Zend_Auth::getInstance();\n        if ($staff->getId() != $auth->getIdentity()) { // check if user != current\n            $this->_helper->acl->check('user', 'manage');\n        }\n\n        try {\n            $this->form->setDefaultsFromEntity($staff);\n            $this->handleForm($this->form, $staff);\n        } catch (InvalidArgumentException $e) {\n            $field = $e->getMessage();\n            $this->form->getElement($field)->addError($translator->trans(\"That $1 already exists, please choose a different $2.\", array('$1' => $field, '$2' => $field), 'user_subscriptions'));\n        }\n\n        $this->view->form = $this->form;\n\n        $this->view->actions = array(\n            array(\n                'label' => $translator->trans('Permissions', array(), 'user_types'),\n                'module' => 'admin',\n                'controller' => 'staff',\n                'action' => 'edit-access',\n                'params' => array(\n                    'user' => $staff->getId(),\n                ),\n                'resource' => 'user',\n                'privilege' => 'manage',\n            ),\n        );\n    }\n\n    public function editAccessAction()\n    {\n//        $this->view->jQueryUtils()->token = 'sdfhgfgthrgesrefwrtgdtgsvet@#$RWESDFC@#4erws';\n\n        $staff = $this->_helper->entity(new Staff, 'user');\n        $this->view->staff = $staff;\n\n//        $this->view->jQueryReady( \"$.registry.set('another','test');\" );\n\n        $this->_helper->actionStack('edit', 'acl', 'admin', array(\n            'role' => $staff->getRoleId(),\n            'user' => $staff->getId(),\n        ));\n    }\n\n    /**\n     * @Acl(action=\"delete\")\n     */\n    public function deleteAction()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->_helper->acl->check('user', 'delete');\n\n        $staff = $this->_helper->entity->get(new Staff, 'user');\n\n        $permitted = Zend_Auth::getInstance()->getIdentity() != $staff->getId();\n        if ($permitted) {\n            $this->repository->delete($staff);\n\n            $this->_helper->entity->getManager()->flush();\n\n            $this->_helper->flashMessenger($translator->trans('Staff member deleted.'));\n            $this->_helper->redirector->gotoSimple('index');\n        }\n        else {\n            $this->_helper->flashMessenger($translator->trans('Self-delete is not permitted.')); // should be translateable\n            $this->_helper->redirector->gotoSimple('index');\n        }\n    }\n\n    public function tableAction()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $table = $this->getHelper('datatable');\n\n        $table->setEntity('Newscoop\\Entity\\User\\Staff');\n\n        $table->setCols(array(\n            'name' => $translator->trans('Full Name', array(), 'user_subscriptions'),\n            'username' => $translator->trans('Account Name', array(), 'user_subscriptions'),\n            'email' => $translator->trans('E-Mail', array(), 'user_subscriptions'),\n            'timeCreated' => $translator->trans('Creation Date', array(), 'user_subscriptions'),\n            $translator->trans('Delete'),\n        ));\n\n        $view = $this->view;\n        $table->setHandle(function(Staff $staff) use ($view) {\n            $editLink = sprintf('<a href=\"%s\" class=\"edit\" title=\"%s\">%s</a>',\n                $view->url(array(\n                    'action' => 'edit',\n                    'user' => $staff->getId(),\n                    'format' => NULL,\n                )),\n                $translator->trans('Edit staff member $1', array('$1' => $staff->getName())),\n                $staff->getName()\n            );\n\n            $deleteLink = sprintf('<a href=\"%s\" class=\"delete confirm\" title=\"%s\">%s</a>',\n                $view->url(array(\n                    'action' => 'delete',\n                    'user' => $staff->getId(),\n                    'format' => NULL,\n                )),\n                $translator->trans('Delete staff member $1', array('$1' => $staff->getName())),\n                $translator->trans('Delete')\n            );\n\n            return array(\n                $editLink,\n                $staff->getUsername(),\n                $staff->getEmail(),\n                $staff->getTimeCreated()->format('Y-m-d H:i:s'),\n                $deleteLink,\n            );\n        });\n\n        $table->dispatch();\n\n        $this->view->actions = array(\n            array(\n                'label' => $translator->trans('Add new staff member'),\n                'module' => 'admin',\n                'controller' => 'staff',\n                'action' => 'add',\n                'resource' => 'user',\n                'privilege' => 'manage',\n                'class' => 'add',\n            ),\n        );\n    }\n\n    private function handleForm(Zend_Form $form, Staff $staff)\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        if ($this->_request->isPost() && $form->isValid($this->_request->getPost())) {\n            try {\n                $this->repository->save($staff, $form->getValues());\n                $this->_helper->entity->getManager()->flush();\n            // TODO bad design, redirect should not be here.\n            } catch (\\PDOException $e) {\n                $this->_helper->flashMessenger(array(\n                \t'error',\n                    $translator->trans('Could not save user $1. Please make sure it does not already exist', array('$1' => $this->_request->getPost('username'))))\n                );\n                $this->_helper->redirector->gotoSimple('add', 'staff', 'admin');\n            } catch (\\InvalidArgumentException $e) {\n                if ($e->getMessage() == 'email') {\n                    $this->_helper->flashMessenger(array(\n                        'error',\n                        $translator->trans('Could not save user with e-mail address $1. Please make sure it does not already exist', array('$1' => $this->_request->getPost('email'))))\n                    );\n                }\n                $this->_helper->redirector->gotoSimple('add', 'staff', 'admin');\n            } catch (\\Exception $e) {\n                $this->_helper->flashMessenger(array('error', $translator->trans(\"Changing user type would prevent you to manage users. Aborted.\")));\n                $this->_helper->redirector->gotoSimple('edit', 'staff', 'admin', array(\n                    'user' => $staff->getId(),\n                ));\n            }\n\n            // add default widgets for new staff\n            if ($this->_getParam('action') == 'add') {\n                WidgetManager::SetDefaultWidgets($staff->getId());\n            }\n\n            $this->_helper->flashMessenger($translator->trans('Staff member saved.'));\n            $this->_helper->redirector->gotoSimple('edit', 'staff', 'admin', array(\n                'user' => $staff->getId(),\n            ));\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/SupportController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\n\n/**\n * @Acl(ignore=\"1\")\n */\nclass Admin_SupportController extends Zend_Controller_Action\n{\n    public function init(){}\n\n    public function indexAction()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n        $this->view->stats = $this->_helper->service('stat')->getAll();\n\n        // saving them here to retrieve later, because these are not available when run in cli\n        $preferencesService->set('support_stats_server', $this->view->stats['server']);\n        $preferencesService->set('support_stats_ip_address', $this->view->stats['ipAddress']);\n        $preferencesService->set('support_stats_ram_total', $this->view->stats['ramTotal']);\n\n        if ($this->getRequest()->isPost() && $this->_getParam('support_send') !== null) {\n            $values = $this->getRequest()->getPost();\n\n            try {\n                $askTime = new DateTime($values['stat_ask_time']);\n            } catch (Exception $e) {\n                $askTime = new DateTime('7 days');\n            }\n\n            $preferencesService->set('stat_ask_time', $askTime->getTimestamp());\n            $preferencesService->set('support_send', $values['support_send']);\n            $this->_helper->flashMessenger($translator->trans('Support settings saved.', array(), 'support'));\n            if ($this->_getParam('action') === 'popup') {\n                $this->_helper->redirector('index', '');\n            } else {\n                $this->_helper->redirector('index');\n            }\n        }\n\n        $this->view->support_send = $preferencesService->get('support_send');\n    }\n\n    public function popupAction()\n    {\n        $this->_helper->layout->setLayout('iframe');\n        $this->view->action = 'popup';\n        $this->_forward('index');\n    }\n\n    public function closeAction()\n    {\n        $_SESSION['statDisplayed'] = 1;\n        $this->_helper->json(array());\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/TemplateController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\nuse Newscoop\\Service\\IThemeManagementService;\nuse Newscoop\\Service\\Template;\nuse Newscoop\\Storage;\nuse Newscoop\\Service\\Resource\\ResourceId;\nuse Newscoop\\Service\\IThemeService;\n\n/**\n * @Acl(resource=\"template\", action=\"manage\")\n */\nclass Admin_TemplateController extends Zend_Controller_Action\n{\n    const SEPARATOR = ':'; // can't use / in url, thus replace with :\n\n    /** @var Newscoop\\Service\\Template */\n    private $service;\n\n    public function init()\n    {\n        $resource = new ResourceId(__CLASS__);\n        $themeService = $resource->getService(IThemeService::NAME);\n        /* @var $themeService Newscoop\\Service\\Implementation\\ThemeServiceLocalFileSystem */\n        $theme = $themeService->findById($this->_getParam('id'));\n        /* @var $theme Newscoop\\Entity\\Theme */\n        $this->view->themeId = $this->_getParam('id');\n\n        $path = $theme->getPath();\n        $fullPath = $themeService->toFullPath($theme);\n        $root = str_replace($path, '', $fullPath);\n\n        $storage = new Storage($fullPath);\n        $repository = $this->_helper->entity->getRepository('Newscoop\\Entity\\Template')\n            ->setBasePath($path);\n        $this->service = new Template($storage, $repository);\n        $this->service->setTheme($theme);\n\n        $this->_helper->contextSwitch\n            ->addActionContext('get-items', 'json')\n            ->addActionContext('cache-templates', 'json')\n            ->initContext();\n\n        $this->view->basePath = $path;\n    }\n\n    public function indexAction()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $resource = new ResourceId(__CLASS__);\n        $themeService = $resource->getService(IThemeService::NAME);\n\n        // item action form\n        $form = $this->getActionForm();\n        $form->setMethod('post');\n        $this->view->form = $form;\n\n        try {\n            // get items\n            $path = $this->parsePath();\n            $folders = $templates = array();\n            foreach ($this->service->listItems($path) as $item) {\n                $form->file->addMultioption($item->name, $item->name); // add possible files\n\n                if (!isset($item->size)) {\n                    $folders[] = $item;\n                    continue;\n                }\n\n                if ($item->name == $themeService->themeConfigFileName) {\n                    continue;\n                }\n\n                $templates[] = $item;\n            }\n        } catch (\\InvalidArgumentException $e) {\n            $this->_helper->flashMessenger(array('error', $e->getMessage()));\n            $this->_helper->redirector('index');\n        }\n\n        $this->view->folders = $folders;\n        $this->view->templates = $templates;\n\n        $request = $this->getRequest();\n        if ($request->isPost() && $form->isValid($_POST)) {\n            $values = $form->getValues();\n            $this->_forward($values['action']);\n            return;\n        }\n\n        // set current path\n        $this->view->path = $this->formatPath($path);\n\n        // get parents\n        $parents = explode('/', dirname($path));\n        $this->view->parent = implode(self::SEPARATOR, $parents);\n\n        // build breadcrubs for path\n        $pages = array($this->buildBreadcrumbs(explode('/', $path)));\n\n        $this->view->moveForm = $this->getMoveForm();\n        if ($path == '') {\n            $this->view->paths = $this->reqCachePaths; // don't move form here\n            $this->view->doCache = true;\n        }\n\n        $this->view->nav = new Zend_Navigation($pages);\n        $this->view->dateFormat = 'Y-m-d H:i';\n        $this->view->separator = self::SEPARATOR;\n\n        // redirect parameter in session\n        $nextUrl = new Zend_Session_Namespace('upload-next');\n\n        $nextUrl->setExpirationHops(7, 'next', true);\n        $nextUrl->next = $this->_request->getParams();\n\n        $this->view->actions = array(\n            array(\n                'label' => $translator->trans('Upload', array(), 'themes'),\n                'module' => 'admin',\n                'controller' => 'template',\n                'action' => 'upload',\n                'class' => 'upload',\n                'reset_params' => false\n            ),\n            array(\n                'label' => $translator->trans('Create folder', array(), 'themes'),\n                'uri' => '#create-folder',\n                'class' => 'add',\n            ),\n            array(\n                'label' => $translator->trans('Create file', array(), 'themes'),\n                'uri' => '#create-file',\n                'class' => 'add',\n            ),\n        );\n    }\n\n    public function getItemsAction()\n    {\n        $path = $this->parsePath();\n        $this->view->items = $this->service->listItems($path);\n    }\n\n    public function uploadAction()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        // get next redirect param\n        $nextRedirect = new Zend_Session_Namespace('upload-next');\n\n        $path = $this->parsePath($this->_getParam('path', ''));\n        $plupload = $this->getHelper('plupload');\n\n        $form = new Admin_Form_Upload;\n        $form->setMethod('post');\n        $form->getElement('submit')->setLabel($translator->trans('Done uploading', array(), 'themes'));\n\n        $request = $this->getRequest();\n        if ($request->isPost() && $form->isValid($request->getPost())) {\n\n            $files = $plupload->getUploadedFiles();\n            foreach ($files as $basename => $tmp) {\n                $this->service->storeItem(\"$path/$basename\", file_get_contents($tmp));\n            }\n            $this->_helper->flashMessenger($this->formatMessage(array_keys($files), $translator->trans('uploaded', array(), 'themes')));\n\n            // redirect by next parameter\n            if(!is_null($nextRedirect->next)) {\n                $this->_helper->redirector->gotoRouteAndExit($nextRedirect->next);\n            }\n            else {\n                $this->_helper->redirector->gotoSimple(\"index\", \"themes\", \"admin\");\n            }\n        }\n\n        // prelong next parameter\n        $nextRedirect->setExpirationHops(7, 'next', true);\n\n        $this->view->form = $form;\n        $this->view->path = $this->view->basePath . $path;\n        $this->view->isWritable = $this->service->isWritable($path);\n    }\n\n    public function editAction()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $key = $this->getKey();\n        $item = $this->service->fetchMetadata($key);\n        $this->view->item = $item;\n        $this->view->placeholder('title')\n            ->set($translator->trans(\"Edit template: $1\", array('$1' => $item->name), 'themes'));\n\n        switch ($item->type) {\n            case 'jpg':\n            case 'png':\n            case 'gif':\n                $this->_forward('edit-image');\n                break;\n\n            case 'css':\n            case 'txt':\n            case 'html':\n            case 'js':\n            case 'tpl':\n                $this->_forward('edit-template');\n                break;\n\n            default:\n                $this->_forward('edit-other');\n                break;\n        }\n\n        $form = new Admin_Form_ReplaceTemplate;\n        $form->setMethod('post')->setAttrib('enctype', 'multipart/form-data');\n\n        $request = $this->getRequest();\n        if ($request->isPost() && $request->getParam('file', false) && $form->isValid($request->getPost())) {\n            try {\n                $form->getValues(); // upload\n                $this->service->replaceItem($key, $form->file);\n\t            $this->_helper->flashMessenger($translator->trans(\"File $1 was replaced.\", array('$1' => basename($key)), 'themes'));\n            } catch (\\InvalidArgumentException $e) {\n                $this->_helper->flashMessenger(array('error', $e->getMessage()));\n            }\n\n            $this->_helper->redirector('edit', 'template', 'admin', array(\n                'path' => $this->_getParam('path'),\n                'file' => $this->_getParam('file'),\n                'next' => urlencode($this->_getParam('next')),\n                'id' => $this->_getParam('id'),\n            ));\n        }\n\n        $this->view->replaceForm = $form;\n    }\n\n    public function editTemplateAction()\n    {\n        $key = $this->getKey();\n\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $form = new Admin_Form_Template;\n        $form->setMethod('post');\n\n        $metadata = $this->service->fetchMetadata($key);\n        $form->setDefaults(array(\n            'content' => $this->service->fetchItem($key),\n            'cache_lifetime' => $metadata->type == 'tpl' ? $metadata->ttl : 0,\n        ));\n\n        $request = $this->getRequest();\n        if ($request->isPost() && $form->isValid($request->getPost())) {\n            $values = $form->getValues();\n            $this->service->storeItem($key, $values['content']);\n            if ($metadata->type == 'tpl') {\n                $this->service->storeMetadata($key, $values);\n                $this->_helper->entity->flushManager();\n            }\n\n            $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n            $cacheService->clearNamespace('template');\n\n            $this->_helper->flashMessenger($translator->trans(\"Template $1 $2.\", array('$1' => basename($key), '$2' => $translator->trans('updated', array(), 'themes')), 'themes'));\n            $this->_redirect(urldecode($this->_getParam('next')), array(\n                'prependBase' => false,\n            ));\n        }\n\n        $this->view->form = $form;\n    }\n\n    public function editImageAction()\n    {\n        $key = $this->getKey();\n        $this->view->item = $this->service->fetchMetadata($key);\n    }\n\n    public function editOtherAction()\n    {\n        // pass\n    }\n\n    public function moveAction()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $path = $this->parsePath();\n        $dest = $this->_getParam('name');\n        try {\n            $files = (array) $this->_getParam('file', array());\n            foreach ($files as $file) {\n                $s = $this->service->moveItem(\"$path/$file\", $dest);\n                $this->_helper->flashMessenger->addMessage($translator->trans(\"Template $1 $2.\", array('$1' => $file, '$2' => $translator->trans('moved', array(), 'themes')), 'themes'));\n            }\n        } catch (\\InvalidArgumentException $e) {\n            $this->_helper->flashMessenger->addMessage(array('error', $e->getMessage()));\n        }\n\n        $this->_redirect(urldecode($this->_getParam('next')), array(\n            'prependBase' => false,\n        ));\n    }\n\n    public function copyAction()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $path = $this->parsePath();\n        $file = $this->_getParam('file');\n        if (is_array($file)) {\n            $file = array_shift($file);\n        }\n\n        try {\n            $nameExt = pathinfo($this->_getParam('name'),PATHINFO_EXTENSION);\n            $name = $this->formatName($this->_getParam('name'), ($nameExt==''?pathinfo($file, PATHINFO_EXTENSION):null) );\n            $this->service->copyItem(\"$path/$file\", $name);\n\t\t    $this->_helper->flashMessenger($translator->trans(\"Template $1 was duplicated into $2.\", array('$1' => $file, '$2' => $name), 'themes'));\n        } catch (\\InvalidArgumentException $e) {\n            $this->_helper->flashMessenger(array('error', $e->getMessage()));\n        }\n\n        $this->_redirect(urldecode($this->_getParam('next')), array(\n            'prependBase' => false,\n        ));\n    }\n\n    public function renameAction()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $path = $this->parsePath();\n        $file = $this->_getParam('file');\n        if (is_array($file)) {\n            $file = array_shift($file);\n        }\n\n        try {\n            $name = $this->formatName($this->_getParam('name'), null);\n            $this->service->renameItem(\"$path/$file\", $name);\n            $this->clearCompiledTemplate(\"$path/$file\");\n\t\t    $this->_helper->flashMessenger($translator->trans(\"Template object $1 was renamed to $2.\", array('$1' => $file, '$2' => $name), 'themes'));\n        } catch (\\InvalidArgumentException $e) {\n            $this->_helper->flashMessenger(array('error', $e->getMessage()));\n        }\n\n        $this->_redirect(urldecode($this->_getParam('next')), array(\n            'prependBase' => false,\n        ));\n    }\n\n    /**\n     * @Acl(action=\"delete\")\n     */\n    public function deleteAction()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $path = $this->parsePath();\n        $files = $this->_getParam('file', array());\n        try {\n            foreach ((array) $files as $file) {\n                $key = \"$path/$file\";\n                $this->service->deleteItem($key);\n                $this->_helper->entity->flushManager();\n                $this->clearCompiledTemplate($key);\n\t\t\t    $this->_helper->flashMessenger($translator->trans(\"Template object $1 was deleted.\", array('$1' => $file), 'themes'));\n            }\n        } catch (\\InvalidArgumentException $e) {\n            $this->_helper->flashMessenger(array('error', $e->getMessage()));\n        }\n\n        $this->_redirect(urldecode($this->_getParam('next')), array(\n            'prependBase' => false,\n        ));\n    }\n\n    public function createFolderAction()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $path = $this->parsePath();\n        $name = $this->formatName($this->_getParam('name'));\n\n        try {\n            $this->service->createFolder(ltrim(\"$path/$name\", ' /'));\n\t\t    $this->_helper->flashMessenger($translator->trans(\"Directory $1 created.\", array('$1' => $name), 'themes'));\n        } catch (\\InvalidArgumentException $e) {\n\t        $this->_helper->flashMessenger(array('error', $e->getMessage()));\n        }\n\n        $this->_redirect(urldecode($this->_getParam('next')), array(\n            'prependBase' => false,\n        ));\n    }\n\n    public function createFileAction()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $path = $this->parsePath();\n        $name = $this->formatName($this->_getParam('name'));\n\n        try {\n            $this->service->createFile(ltrim(\"$path/$name\", ' /'));\n\t        $this->_helper->flashMessenger($translator->trans(\"New template $1 created.\", array('$1' => $name), 'themes'));\n        } catch (\\InvalidArgumentException $e) {\n            $this->_helper->flashMessenger(array('error', $e->getMessage()));\n        }\n\n        $this->_redirect(urldecode($this->_getParam('next')), array(\n            'prependBase' => false,\n        ));\n    }\n\n    public function cacheTemplatesAction()\n    {\n        $path = $this->parsePath();\n        $this->service->cacheTemplates($path);\n        $this->view->success = true;\n    }\n\n    /**\n     * Build pages tree for navigation\n     *\n     * @param string $path\n     * @return array\n     */\n    private function buildBreadcrumbs(array $pieces, $level = 0)\n    {\n        if ($level >= sizeof($pieces)) {\n            return array('uri' => '#');\n        }\n\n        return array(\n            'label' => $pieces[$level],\n            'module' => 'admin',\n            'controller' => $this->_getParam('controller'),\n            'action' => $this->_getParam('action'),\n            'params' => array(\n                'id' => $this->_getParam('id'),\n                'path' => implode(self::SEPARATOR, array_slice($pieces, 0, $level + 1)),\n            ),\n            'pages' => array(\n                $this->buildBreadcrumbs($pieces, $level + 1),\n            ),\n        );\n    }\n\n    /**\n     * Format path\n     *\n     * @param string $path\n     * @return string\n     */\n    private function formatPath($path)\n    {\n        return str_replace('/', self::SEPARATOR, ltrim($path, '/'));\n    }\n\n    /**\n     * Parse path\n     *\n     * @param string $path\n     * @return string\n     */\n    private function parsePath($path = NULL)\n    {\n        if ($path === NULL) {\n            $path = $this->_getParam('path', '');\n        }\n\n        return rtrim(str_replace(self::SEPARATOR, '/', $path), '/');\n    }\n\n    /**\n     * Get key\n     *\n     * @return string\n     */\n    private function getKey()\n    {\n        $path = $this->parsePath();\n        $file = $this->_getParam('file', '');\n        return trim(\"$path/$file\", '/');\n    }\n\n    /**\n     * Format message\n     *\n     * @param array|string $files\n     * @param string $action\n     * @return string\n     */\n    private function formatMessage($files, $action)\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $files = (array) $files;\n        $count = sizeof($files);\n        if ($count == 1) {\n            return $translator->trans(\"$1 $2\", array('$1' => current($files), '$2' => $action), 'themes');\n        }\n\n        return $translator->trans(\"$1 files $2\", array('$1' => $count, '$2' => $action), 'themes');\n    }\n\n    /**\n     * Format file name\n     *\n     * @param string $name\n     * @param string $ext\n     * @return string\n     */\n    private function formatName($name, $ext = '')\n    {\n        $name = strtr(basename($name), '?~#%*&|\"\\'\\\\/<>', '_____________');\n        if (!empty($ext)) {\n            $current = pathinfo($name, PATHINFO_EXTENSION);\n            if ($current != $ext) {\n                $name .= \".{$ext}\";\n            }\n        }\n\n        return $name;\n    }\n\n    /**\n     * Get action form\n     *\n     * @return Zend_Form\n     */\n    private function getActionForm()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $form = new Zend_Form;\n\n        $form->addElements( array\n        (\n            new Zend_Form_Element_Hash('csrf', array('decorators' => array( 'ViewHelper' )) ),\n            new Zend_Form_Element_Hidden('name', array('decorators' => array( 'ViewHelper' )) ),\n            new Zend_Form_Element_Select('multiaction', array\n            (\n            \t'multioptions' => array\n                (\n                \t'' => $translator->trans('Actions'),\n                \t'move' => $translator->trans('Move'),\n                \t'delete' => $translator->trans('Delete'),\n                ),\n                'decorators' => array( 'ViewHelper' )\n            )),\n            new Zend_Form_Element_Hidden('action', array\n            (\n            \t'required' => true,\n            \t'validators' => array\n                (\n                    array('inArray', true, array\n                    (\n                        array('copy', 'move', 'rename', 'delete', 'create-file', 'create-folder'),\n                    )),\n                ),\n                'decorators' => array( 'ViewHelper' )\n            )),\n            new Zend_Form_Element_MultiCheckbox('file')\n        ));\n\n        foreach( $form->getElements() as $elem ) {\n            $elem->removeDecorator( 'DtDdWrapper' )->removeDecorator( 'Label' );\n        }\n\n        return $form;\n    }\n\n    /**\n     * Get move form\n     *\n     * @return Zend_Form\n     */\n    private function getMoveForm()\n    {\n        $form = new Zend_Form;\n        $multioptionPaths = array();\n        foreach (($paths = $this->getPaths('')) as $v)\n            $multioptionPaths[$v] = $v;\n        $form->addElement('select', 'name', array(\n            'multioptions' => array('/' => '/') + $multioptionPaths,\n        ));\n\n        return $form;\n    }\n\n    private $reqCachePaths = array();\n\n    /**\n     * Get available paths starting from path\n     *\n     * @param string $path\n     * @return array\n     */\n    private function getPaths($path)\n    {\n        return ( $this->reqCachePaths = $this->service->listPaths($path) );\n    }\n\n    /**\n     * Clear compiled template\n     *\n     * @param string $filename\n     * @return void\n     */\n    private function clearCompiledTemplate($filename)\n    {\n        require_once APPLICATION_PATH . '/../template_engine/classes/CampTemplate.php';\n\n        try {\n\t\t    CampTemplate::singleton()->clearCompiledTemplate($filename);\n        } catch (Exception $e) { // ignore file not found\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/ThemesController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nuse Newscoop\\Annotations\\Acl;\nuse Newscoop\\Service\\Exception\\RemoveThemeException;\nuse Newscoop\\Entity\\OutputSettings;\nuse Newscoop\\Service\\IArticleTypeService;\nuse Newscoop\\Entity\\Resource;\nuse Newscoop\\Controller\\Action\\Helper\\Datatable\\Adapter\\Theme;\nuse Newscoop\\Service\\IPublicationService;\nuse Newscoop\\Service\\IThemeManagementService;\nuse Newscoop\\Service\\Resource\\ResourceId;\nuse Newscoop\\Service\\IThemeService;\nuse Newscoop\\Service\\IOutputService;\nuse Newscoop\\Service\\Exception\\DuplicateNameException;\nuse Newscoop\\Entity\\Output;\n\n/**\n * Themes Controller\n * @Acl(resource=\"theme\", action=\"manage\")\n */\nclass Admin_ThemesController extends Zend_Controller_Action\n{\n\n    /**\n     * No idea what this should be\n     * @var unknown_type\n     */\n    private $_repository;\n\n    /**\n     * @var Newscoop\\Services\\Resource\\ResourceId\n     */\n    private $_resourceId = null;\n\n    /**\n     * @var Newscoop\\Service\\IThemeManagementService\n     */\n    private $_themeService = null;\n\n    /**\n     * @var Newscoop\\Service\\IPublicationService\n     */\n    private $_publicationService = null;\n\n    /**\n     * @var Newscoop\\Service\\ThemeServiceLocalFileSystem\n     */\n    private $_themeFileService = null;\n\n    /**\n     * @var Newscoop\\Service\\IOutputService\n     */\n    private $_outputService = null;\n\n    /**\n     * @var Newscoop\\Service\\IArticleTypeService\n     */\n    private $_articleTypeService = null;\n\n    /**\n     * Provides the controller resource id.\n     *\n     * @return Newscoop\\Services\\Resource\\ResourceId\n     *                                               The controller resource id.\n     */\n    public function getResourceId()\n    {\n        if ($this->_resourceId === null) {\n            $this->_resourceId = new ResourceId(__CLASS__);\n        }\n\n        return $this->_resourceId;\n    }\n\n    /**\n     * Provides the theme service.\n     *\n     * @return Newscoop\\Service\\Implementation\\ThemeManagementServiceLocal\n     */\n    public function getThemeService()\n    {\n        if ($this->_themeService === null) {\n            $this->_themeService = $this->getResourceId()->getService(IThemeManagementService::NAME_1);\n        }\n\n        return $this->_themeService;\n    }\n\n    /**\n     * Provides the theme files service\n     *\n     * @return Newscoop\\Service\\Implementation\\ThemeServiceLocalFileSystem\n     *                                                                     The publication service to be used by this controller.\n     */\n    public function getThemeFileService()\n    {\n        if ($this->_themeFileService === null) {\n            $this->_themeFileService = $this->getResourceId()->getService(IThemeService::NAME);\n        }\n\n        return $this->_themeFileService;\n    }\n\n    /**\n     * Provides the ouput service.\n     *\n     * @return Newscoop\\Service\\IOutputService\n     *                                         The service service to be used by this controller.\n     */\n    public function getOutputService()\n    {\n        if ($this->_outputService === null) {\n            $this->_outputService = $this->getResourceId()->getService(IOutputService::NAME);\n        }\n\n        return $this->_outputService;\n    }\n\n    /**\n     * Provides the publication service\n     *\n     * @return Newscoop\\Service\\IPublicationService\n     *                                              The publication service to be used by this controller.\n     */\n    public function getPublicationService()\n    {\n        if ($this->_publicationService === null) {\n            $this->_publicationService = $this->getResourceId()->getService(IPublicationService::NAME);\n        }\n\n        return $this->_publicationService;\n    }\n\n    /**\n     * Provides the theme service.\n     *\n     * @return Newscoop\\Service\\Implementation\\ArticleTypeServiceDoctrine\n     */\n    public function getArticleTypeService()\n    {\n        if ($this->_articleTypeService === null) {\n            $this->_articleTypeService = $this->getResourceId()->getService(IArticleTypeService::NAME);\n        }\n\n        return $this->_articleTypeService;\n    }\n\n    public $instId = null;\n    public function init()\n    {\n        $this->getThemeService();\n\n        // TODO move this + callbacks from here to a higher level\n        if (!$this->_helper->contextSwitch->hasContext('adv')) {\n            $this->_helper->contextSwitch->addContext('adv', array(\n                'suffix' => 'adv',\n                'callbacks' => array(\n                    'init' => array( $this, 'initAdvContext' ),\n                    'post' => array( $this, 'postAdvContext' ),\n                ),\n            ));\n        }\n\n        // init ajax contexts.. actually json contexts\n        // TODO see why ajax context is not working\n        $this->_helper->contextSwitch\n            ->addActionContext('index', 'json')\n            ->addActionContext('assign-to-publication', 'json')\n            ->addActionContext('copy-to-available', 'json')\n            ->addActionContext('output-edit', 'json')\n            ->addActionContext('article-types-edit', 'json')\n            ->addActionContext('unassign', 'json')\n            ->addActionContext('wizard-theme-settings', 'adv')\n            ->addActionContext('wizard-theme-template-settings', 'adv')\n            ->addActionContext('wizard-theme-article-types', 'adv')\n            ->addActionContext('wizard-theme-files', 'adv')\n            ->initContext();\n    }\n\n    public function initAdvContext()\n    {\n        $this->_helper->layout()->enableLayout();\n    }\n\n    public function postAdvContext()\n    {\n    }\n\n    public function indexAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $datatableAdapter = new Theme($this->getThemeService());\n        // really wierd way to bind some filtering logic right here\n        // basically this is the column index we are going to look for filtering requests\n        $datatableAdapter->setPublicationFilterColumn(0);\n\n        $datatable = $this->_helper->genericDatatable;\n        /* @var $datatable Action_Helper_GenericDatatable */\n        $datatable->setAdapter($datatableAdapter)->setOutputObject($this->view);\n\n        $view = $this->view;\n        $datatable            // setting options for the datatable\n            ->setCols(array(\n                'image'        => '',\n                'name'         => $translator->trans('Theme name / version', array(), 'themes'),\n                'description'  => $translator->trans('Compatibility', array(), 'themes'),\n                'actions'      => '',\n            ))\n            ->buildColumnDefs()\n            ->setOptions(array(\n                'sAjaxSource' => $this->view->url(array( 'action' => 'index', 'format' => 'json')),\n                'sPaginationType' => 'full_numbers',\n                'bServerSide'    => true,\n                'bJQueryUI'      => true,\n                'bAutoWidth'     => false,\n                'sDom'             => 'tiprl',\n                'iDisplayLength' => 25,\n                'bLengthChange'  => false,\n                'fnRowCallback'     => \"newscoopDatatables.callbackRow\",\n                'fnDrawCallback' => \"newscoopDatatables.callbackDraw\",\n                'fnServerData'     => \"newscoopDatatables.callbackServerData\",\n                'oLanguage' => array(\n                    'oPaginate' => array(\n                        'sNext' => $translator->trans('Next'),\n                        'sLast' => $translator->trans('Last', array(), 'api'),\n                        'sPrevious' => $translator->trans('Previous'),\n                        'sFirst' => $translator->trans('First', array(), 'api'),\n                    ),\n                    'sZeroRecords' => $translator->trans('No records found.', array(), 'users'),\n                    'sSearch' => $translator->trans('Search'),\n                    'sInfo' => $translator->trans('Showing _START_ to _END_ of _TOTAL_ entries', array(), 'users'),\n                    'sEmpty' => $translator->trans('No entries to show', array(), 'users'),\n                    'sInfoFiltered' => $translator->trans(' - filtering from _MAX_ records', array(), 'users'),\n                    'sLengthMenu' => $translator->trans('Display _MENU_ records', array(), 'users'),\n                    'sInfoEmpty' => '',\n                ),\n            ))\n            ->setWidths(array( 'image' => 215, 'name' => 370, 'description' => 280, 'actions' => 315 ))\n            ->setRowHandler(function ($theme, $index = null) {\n                return array(\n                    \"id\" => $theme['id'],\n                    \"images\" => $theme['images'],\n                    \"title\" => htmlspecialchars($theme['title']),\n                    \"designer\" => htmlspecialchars($theme['designer']),\n                    \"version\" => htmlspecialchars($theme['version']),\n                    \"compat\" => htmlspecialchars($theme['subTitle']),\n                    \"text\" => htmlspecialchars($theme['description']),\n                    \"pubId\" => $theme['pubId'],\n                );\n            })\n            ->setParams($this->_request->getParams());\n\n        if (($this->view->mytable = $datatable->dispatch())) {\n            $this->view->publications  = $this->getPublicationService()->getEntities();\n            $this->view->themesPath    = $this->view->baseUrl('/themes');\n\n            $uploadForm    = new Admin_Form_Theme_Upload();\n            $uploadForm // set some specific stuff for this page\n                ->setAction($this->view->url(array( 'action' => 'upload' )))\n                ->addElement('hidden', 'format', array( 'value' => 'json', 'decorators' => array( 'ViewHelper' ) ))\n                ->getElement('submit-button')->clearDecorators()->addDecorator('ViewHelper')->setAttrib('style', 'display:none');\n            $this->view->uploadForm = $uploadForm;\n\n            $this->view->headScript()->appendFile($this->view->baseUrl(\"/js/jquery/doT.js\"));\n            $this->view->headLink(array(\n                'type'  => 'text/css',\n                'href'  => $this->view->baseUrl('/admin-style/themes_list.css'),\n                'media'    => 'screen',\n                'rel'    => 'stylesheet',\n            ));\n            $this->view->headLink(array(\n                'type'  => 'text/css',\n                'href'  => $this->view->baseUrl('/admin-style/action_buttons.css'),\n                'media'    => 'screen',\n                'rel'    => 'stylesheet',\n            ));\n            $this->view->headTitle($translator->trans('Theme management', array(), 'themes').' - Newscoop Admin', 'SET');\n        }\n    }\n\n    public function wizardThemeSettingsAction()\n    {\n        $theme = $this->getThemeService()->findById($this->_request->getParam('id'));\n        // setup the theme settings form\n        $themeForm = new Admin_Form_Theme();\n        $themeForm->setDefaults(array(\n            'name' => $theme->getName(),\n            'theme-version' => (string) $theme->getVersion(),\n            'required-version' => (string) $theme->getMinorNewscoopVersion(),\n        ));\n\n        $request = $this->getRequest();\n        if ($request->isPost() && $themeForm->isValid($request->getPost())) {\n            $values = $themeForm->getValues();\n            $theme->setName($values['name']);\n            $this->getThemeService()->updateTheme($theme);\n        }\n\n        $this->view->themeForm = $themeForm;\n    }\n\n    public function wizardThemePlaylistsAction()\n    {\n        $playlistsService = \\Zend_Registry::get('container')->getService('playlists');\n        $theme = $this->getThemeService()->findById($this->_request->getParam('id'));\n        $path = __DIR__.'/../../../../themes/'.$theme->getPath().'theme.xml';\n\n        $themePlaylists = $playlistsService->loadThemePlaylists($path);\n        $newThemePlaylists = $playlistsService->buildNewThemePlaylists($themePlaylists);\n\n        $this->view->themePlaylists = $newThemePlaylists;\n        $this->view->playlistsAreUpToDate = $playlistsService->checkIfThemePlaylistsAreUpToDate($theme, $this->view->themePlaylists);\n        $this->view->theme = $theme;\n    }\n\n    public function updatePlaylistsAction()\n    {\n        $playlistsService = \\Zend_Registry::get('container')->getService('playlists');\n        $theme = $this->getThemeService()->findById($this->_request->getParam('id'));\n        $path = __DIR__.'/../../../../themes/'.$theme->getPath().'theme.xml';\n\n        $themePlaylists = $playlistsService->loadThemePlaylists($path);\n        $playlistsService->updateThemePlaylists($theme, $themePlaylists);\n\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->_helper->flashMessenger($translator->trans('Theme playlists updated successfully.', array(), 'themes'));\n        $this->_helper->redirector->gotoUrl($this->_helper->url->url(array(\n            'action'     => 'advanced-theme-settings',\n            'controller' => 'themes',\n            'module'     => 'admin',\n            'id'         => $this->_request->getParam('id'),\n        ), null, true, false));\n    }\n\n    /**\n     * see Admin_ThemesController::outputEditAction()\n     */\n    public function wizardThemeTemplateSettingsAction()\n    {\n        $themeId = $this->_request->getParam('id');\n        $thmServ = $this->getThemeService();\n        $theme   = $thmServ->findById($themeId);\n        $outServ = $this->getOutputService();\n        foreach (($outputs = $outServ->getEntities()) as $k => $output) {\n            $outSets[] = $thmServ->findOutputSetting($theme, $output);\n        }\n\n        $this->view->jQueryUtils()\n            ->registerVar(\n                'load-output-settings-url',\n                $this->_helper->url->url(array(\n                    'action' => 'output-edit',\n                    'controller' => 'themes',\n                    'module' => 'admin',\n                    'themeid' => '$1',\n                    'outputid' => '$2',\n                ), null, true, false)\n            );\n        $this->view->theme          = $theme->toObject();\n        $this->view->outputs        = $outputs;\n        $this->view->outputSettings = $outSets;\n    }\n\n    public function wizardThemeArticleTypesAction()\n    {\n        $theme = $this->getThemeService()->findById($this->_request->getParam('id'));\n        $themeArticleTypes = $this->getThemeService()->getArticleTypes($theme);\n        $this->view->themeArticleTypes = $themeArticleTypes;\n        $articleTypes = array();\n        foreach ($this->getArticleTypeService()->findAllTypes() as $at) {\n            $atName = $at->getName();\n            $articleTypes[$atName] = array();\n            foreach ($this->getArticleTypeService()->findFields($at) as $atf) {\n                $articleTypes[$atName][] = $atf->getName();\n            }\n        }\n\n        $this->view->theme            = $theme->toObject();\n        $this->view->articleTypes     = (object) $articleTypes;\n        $this->view->articleTypeNames = array_keys($articleTypes);\n\n        $this->view->jQueryUtils()->registerVar('articleTypes', $articleTypes);\n        $this->view->jQueryUtils()->registerVar('themeArticleTypes', $themeArticleTypes);\n    }\n\n    public function wizardThemeFilesAction()\n    {\n    }\n\n    public function advancedThemeSettingsAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->view->themeId = ($themeId = $this->_request->getParam('id'));\n        $this->view->headLink(array(\n            'type'  => 'text/css',\n            'href'  => $this->view->baseUrl('/admin-style/common.css'),\n            'media'    => 'screen',\n            'rel'    => 'stylesheet',\n        ));\n\n        $params = $this->getRequest()->getParams();\n        $this->view->templatesParams = $params;\n\n        $themeMngService = $this->getThemeService();\n        /* @var $themeMngService Newscoop\\Service\\Implementation\\ThemeManagementServiceLocal */\n        $theme = $themeMngService->getById($themeId);\n        $this->view->headTitle($translator->trans('Theme management', array(), 'themes').': '.$this->view->escape($theme->getName()).' - Newscoop Admin', 'SET');\n        if (($publication = $themeMngService->getThemePublication($theme))) {\n            $this->view->headTitle($translator->trans('Theme management', array(), 'themes').': '.$this->view->escape($theme->getName()).\" - \".$this->view->escape($publication->getName()).' - Newscoop Admin', 'SET');\n        }\n    }\n\n    /**\n     *\n     * called by wizard template action\n     */\n    public function outputEditAction()\n    {\n        $thmServ    = $this->getThemeService();\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        // getting the theme entity\n        $themeId    = $this->_request->getParam('themeid');\n        $theme      = $thmServ->findById($themeId);\n\n        // getting selected output\n        $outputId   = $this->_request->getParam('outputid');\n        $output     = $this->getOutputService()->getById($outputId);\n        /* @var $settings Newscoop\\Entity\\Output */\n\n        $templates = array();\n        // getting all available templates\n        foreach ($thmServ->getTemplates($theme) as $tpl) {\n            /* @var $tpl Newscoop\\Entity\\Resource */\n            $templates[ $tpl->getPath() ] = $tpl->getName(); // couldn't get id cause it's null :) :) :)\n        }\n\n        // making the form\n        $outputForm = new Admin_Form_Theme_OutputSettings();\n        $outputForm->setAction($this->_helper->url('output-edit'));\n\n        // getting theme's output settings\n        $settings   = $thmServ->findOutputSetting($theme, $output);\n        /* @var $settings Newscoop\\Entity\\OutputSettings */\n\n        $settingVals = array(\n            \"frontpage\"      => null,\n            \"articlepage\" => null,\n            \"sectionpage\" => null,\n            \"errorpage\"      => null,\n            \"outputid\"      => $outputId,\n            \"themeid\"      => $themeId,\n        );\n        if ($settings instanceof  OutputSettings) {\n            $settingVals[\"frontpage\"]  = $settings->getFrontPage();\n            $settingVals[\"articlepage\"] = $settings->getArticlePage();\n            $settingVals[\"sectionpage\"] = $settings->getSectionPage();\n            $settingVals[\"errorpage\"]   = $settings->getErrorPage();\n        }\n        $outputForm->setValues($templates, $settingVals);\n\n        try { // @todo maybe implement this a little smarter, little less code?\n            if ($this->_request->isPost()) {\n                if ($outputForm->isValid($this->_request->getPost())) {\n                    $settings->setFrontPage(new Resource($outputForm->getValue('frontpage')));\n                    $settings->setSectionPage(new Resource($outputForm->getValue('sectionpage')));\n                    $settings->setArticlePage(new Resource($outputForm->getValue('articlepage')));\n                    $settings->setErrorPage(new Resource($outputForm->getValue('errorpage')));\n\n                    $this->getThemeService()->assignOutputSetting($settings, $theme);\n\n                    $msg = $translator->trans('Theme settings saved.', array(), 'themes');\n                    $this->view->success = $msg;\n                    $this->_helper->flashMessenger($msg);\n                } else {\n                    throw new \\Exception();\n                }\n            }\n        } catch (\\Exception $e) {\n            //            $this->_helper->flashMessenger( ( $this->view->error = $translator->trans( 'Saving settings failed.' ) ) );\n        }\n        $this->view->outputForm = $outputForm;\n\n        // disabling layout for ajax and hide the submit button\n        if ($this->_request->isXmlHttpRequest()) {\n            $this->_helper->layout->disableLayout();\n            $outputForm->getElement('submit')\n                ->clearDecorators()\n                ->setAttrib('style', 'display:none');\n        }\n    }\n\n    public function articleTypesEditAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $thmServ                = $this->getThemeService();\n\n        // getting the theme entity\n        $themeId                = $this->_request->getParam('id');\n        $theme                  = $thmServ->findById($themeId);\n\n        $updateArticleTypes     = array(); // for xml updating\n        $createArticleTypes     = array(); // for db updating\n\n        // process the request matching\n        $articleTypeIgnore      = $this->_request->getPost('articleTypeIgnore');\n        $articleTypeCreate      = $this->_request->getPost('articleTypeCreate');\n        $articleTypeFieldIgnore = $this->_request->getPost('articleTypeFieldIgnore');\n        $articleTypeFieldCreate = $this->_request->getPost('articleTypeFieldCreate');\n\n        $articleTypes           = $this->_request->getPost('articleTypes');\n        $articleTypeFields      = $this->_request->getPost('articleTypeFields');\n        $themeArticleTypeFields = $this->_request->getPost('themeArticleTypeFields', array());\n        $themeArticleTypes      = $this->_request->getPost('themeArticleTypes');\n\n        // complex logic for matching\n        foreach ($themeArticleTypeFields as $typeName => $fields) {\n            $updateArticleTypes[ $typeName ] = array( 'name' => '', 'ignore' => false, 'fields' => array() );\n\n            if (intval($articleTypeIgnore[ $typeName ]) == 0) { // replace type with new one\n                if (isset($articleTypes[ $typeName ])) { // type from db system to xml\n                    $updateArticleTypes[ $typeName ]['name'] = $articleTypes[ $typeName ];\n                }\n                if (intval($articleTypeCreate[ $typeName ]) == 1) { // create article type in the system\n                    $createArticleTypes[ $typeName ]['name'] =\n                        $updateArticleTypes[ $typeName ]['name'] = $typeName;\n                }\n            } else { // leave it as it is\n                $updateArticleTypes[ $typeName ] = array( 'name' => $typeName, 'ignore' => true, 'fields' => array() );\n            }\n\n            foreach ($fields as $fieldName) { // process fields, same as above\n                // need to pass article type value for matching with the system\n                if (intval($articleTypeFieldIgnore[ $typeName ][ $fieldName ]) == 0) {\n                    if (isset($articleTypeFields[ $typeName ][ $fieldName ])) {\n                        $updateArticleTypes[ $typeName ]['fields'][$fieldName] =\n                            array(\n                                'name' => $articleTypeFields[ $typeName ][ $fieldName ],\n                                'parentType' => $articleTypes[ $typeName ],\n                                'ignore' => false,\n                            );\n                    }\n                    if (intval($articleTypeFieldCreate[ $typeName ][ $fieldName ]) == 1) {\n                        $updateArticleTypes[ $typeName ]['fields'][$fieldName] =\n                            $createArticleTypes[ $typeName ]['fields'][] =\n                                array(\n                                    'name' => $fieldName,\n                                    'parentType' => $articleTypes[ $typeName ],\n                                    'ignore' => false,\n                                );\n                    }\n                } else {\n                    $updateArticleTypes[ $typeName ][ 'fields' ][$fieldName]\n                        = array( 'name' => $fieldName, 'parentType' => $articleTypes[ $typeName ], 'ignore' => true );\n                }\n            }\n        }\n\n        $artServ = $this->getArticleTypeService();\n        $themeArticleTypes = (array) $this->getThemeService()->getArticleTypes($theme);\n        foreach ($createArticleTypes as $typeName => $type) {\n            // TODO pass if not found in xml?\n            if (!isset($themeArticleTypes[$typeName])) {\n                unset($createArticleTypes[$typeName]);\n                continue;\n            }\n            if (isset($type['fields']) && is_array($type['fields'])) {\n                foreach ($type['fields'] as $k => $field) {\n                    $createArticleTypes[$typeName]['fields'][$k]['props']\n                        = (array) $themeArticleTypes[$typeName]->{$field['name']};\n                }\n            }\n        }\n\n        $artServ->createMany($createArticleTypes);\n\n        $this->view->response = $thmServ->assignArticleTypes($updateArticleTypes, $theme);\n\n        $this->_helper->flashMessenger($translator->trans('Theme settings updated.', array(), 'themes'));\n    }\n\n    public function deleteAction()\n    {\n        $this->_forward('unassign', null, null, array('p_forwardedFrom' => 'deleteAction'));\n    }\n\n    public function unassignAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $p_forwardedFrom = $this->_request->getParam('p_forwardedFrom');\n        if (($themeId = $this->_getParam('id', null))) {\n            try {\n                $theme = $this->getThemeService()->getById($themeId);\n                $playlistsService = \\Zend_Registry::get('container')->getService('playlists');\n                $themePlaylists = $playlistsService->loadThemePlaylists(__DIR__.'/../../../../themes/'.$theme->getPath().'theme.xml');\n                $playlistsService->removeThemeFromPlaylists($theme, $themePlaylists);\n\n                if ($p_forwardedFrom == 'deleteAction') {\n                    $themeIsAssigned = false;\n                    $themeName = $theme->getName();\n                    $em = \\Zend_Registry::get('container')->getService('em');\n                    $publications = $em->getRepository('Newscoop\\Entity\\Publication')->getPublications()->getResult();\n                    foreach ($publications as $publication) {\n                        foreach ($this->getThemeService()->getThemes($publication) as $th) {\n                            if (trim($th->getName()) === trim($themeName)) {\n                                $themeIsAssigned = true;\n                                break 2;\n                            }\n                        }\n                    }\n                    if ($themeIsAssigned) {\n                        throw new Exception('Theme is assigned and can not be deleted', 500);\n                    }\n                }\n\n                $this->getThemeService()->removeTheme($themeId);\n                $this->_helper->service('image.rendition')->reloadRenditions();\n\n                $this->view->status = true;\n                $this->view->response = $translator->trans(\"Unassign successful\", array(), 'themes');\n            } catch (RemoveThemeException $e) {\n                $this->view->status = false;\n                $this->view->response = $translator->trans(\"The theme can not be unassigned because it is in use by issues ($1) in this publication\", array('$1' => $e->getMessage()), 'themes');\n            } catch (Exception $e) {\n                $this->view->status = false;\n                if ($e->getCode() == 500) {\n                    $this->view->response = $translator->trans(\"Theme is assigned and can not be deleted\", array(), 'themes');\n                } else {\n                    $this->view->response = $translator->trans(\"Failed unassigning theme\", array(), 'themes');\n                }\n            }\n        }\n    }\n\n    public function uploadAction()\n    {\n        try {\n            $this->view->response = $this->getThemeService()->installTheme($_FILES['browse']['tmp_name']);\n        } catch (\\Exception $e) {\n            $this->view->response = false;\n        }\n        if ($this->_getParam('format') == 'json') {\n            $this->_helper->layout()->disableLayout();\n            $this->_helper->viewRenderer->setNoRender();\n            $vars = Zend_Json::encode($this->view->getVars());\n            $this->getResponse()->setBody($vars);\n        }\n    }\n\n    public function exportAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $erro_msg = $translator->trans('Theme export was not successful. Check please that the server is not out of disk space.', array(), 'themes');\n\n        $this->_helper->layout()->disableLayout();\n        $this->_helper->viewRenderer->setNoRender();\n        if (($themeId = $this->_getParam('id', null))) {\n            // it looks that a problem could happen here if the server is out of its disk space\n            try {\n                $exportPath = $this->getThemeService()\n                    ->exportTheme(($themeEntity = $this->getThemeService()->findById($themeId)), $erro_msg);\n                if (false === $exportPath) {\n                    die($erro_msg);\n                }\n\n                // the Content-Type header would be set wrongly at ContentType.php\n                $GLOBALS['header_content_type_set'] = true;\n\n                // Chrome complains when the Content-Disposition header is set by Zend.\n                $theme_name = trim(str_replace(array('\"', ' '), array('_', '_'), $themeEntity->getName()));\n                header('Content-Disposition: attachment; filename=\"'.$theme_name.'.zip\"');\n\n                $this->getResponse()\n                    ->setHeader('Content-type', 'application/zip')\n                    //->setHeader( 'Content-Disposition', 'attachment; filename=\"'.$themeEntity->getName().'.zip\"' )\n                    ->setHeader('Content-length', filesize($exportPath))\n                    ->setHeader('Cache-control', 'private');\n\n                if (!@readfile($exportPath)) {\n                    die($erro_msg);\n                }\n                $this->getResponse()->sendResponse();\n            } catch (Exception $exc) {\n                echo $erro_msg;\n            }\n        }\n    }\n\n    public function assignToPublicationAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        try {\n            $theme  = $this->getThemeService()->getById($this->_request->getParam('theme-id'));\n            $pub    = $this->getPublicationService()->findById($this->_request->getParam('pub-id'));\n\n            if ($this->getThemeService()->assignTheme($theme, $pub)) {\n                $this->_helper->service('image.rendition')->reloadRenditions();\n                $playlistsService = \\Zend_Registry::get('container')->getService('playlists');\n                $themePlaylists = $playlistsService->loadThemePlaylists(__DIR__.'/../../../../themes/'.$theme->getPath().'theme.xml');\n                $playlistsService->updateThemePlaylists($theme, $themePlaylists);\n                $this->view->response =  $translator->trans('Assigned successfully', array(), 'themes');\n            } else {\n                throw new Exception();\n            }\n        } catch (DuplicateNameException $e) {\n            $this->view->exception = array( \"code\" => $e->getCode(), \"message\" => $translator->trans('Duplicate assignment', array(), 'themes') );\n        } catch (\\Exception $e) {\n            $this->view->exception = array( \"code\" => $e->getCode(), \"message\" => $translator->trans('Something broke', array(), 'themes') );\n        }\n    }\n\n    public function copyToAvailableAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        try {\n            $theme = $this->getThemeService()->getById($this->_getParam('theme-id'));\n            $this->getThemeService()->copyToUnassigned($theme);\n            $this->view->response = $translator->trans('Copied successfully', array(), 'themes');\n        } catch (DuplicateNameException $e) {\n            $this->view->exception = array(\n                'code' => $e->getCode(),\n                'message' => $translator->trans('Duplicate assignment', array(), 'themes'),\n            );\n        } catch (\\Exception $e) {\n            $this->view->exception = array(\n                'code' => $e->getCode(),\n                'message' => $translator->trans('Something broke', array(), 'themes'),\n            );\n        }\n    }\n\n    public function installAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->_repository->install($this->_getParam('offset'));\n        $this->_helper->entity->flushManager();\n\n        $this->_helper->flashMessenger($translator->trans('Theme $1', array('$1' => $translator->trans('installed', array(), 'themes')), 'themes'));\n        $this->_helper->redirector('index');\n    }\n\n    public function uninstallAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->_repository->uninstall($this->_getParam('id'));\n        $this->_helper->entity->flushManager();\n\n        $this->_helper->flashMessenger($translator->trans('Theme $1', array('$1' => $translator->trans('deleted', array(), 'themes')), 'themes'));\n        $this->_helper->redirector('index');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/UserController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\nuse Newscoop\\Entity\\User;\n\n/**\n * User controller\n *\n * @Acl(action=\"manage\")\n */\nclass Admin_UserController extends Zend_Controller_Action\n{\n    const LIMIT = 25;\n\n    /** @var Newscoop\\Services\\UserService */\n    private $userService;\n\n    /** @var Newscoop\\Services\\UserTypeService */\n    private $userTypeService;\n\n    /**\n     */\n    public function init()\n    {\n        $this->userService = $this->_helper->service('user');\n        $this->userTypeService = $this->_helper->service('user_type');\n\n        Zend_View_Helper_PaginationControl::setDefaultViewPartial('paginator.phtml');\n\n    }\n\n    public function createAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $form = new Admin_Form_User();\n        $form->user_type->setMultioptions($this->userTypeService->getOptions());\n        $form->author->setMultioptions(array('' => $translator->trans('None', array(), 'users')) + $this->_helper->service('author')->getOptions());\n        $form->setDefaults(array(\n            'is_admin' => $this->_getParam('is_admin', 0),\n            'is_public' => $this->_getParam('is_public', 0),\n        ));\n\n        $request = $this->getRequest();\n        if ($request->isPost() && $form->isValid($request->getPost())) {\n            try {\n                $user = $this->userService->save($form->getValues());\n                $this->_helper->flashMessenger($translator->trans(\"User $1 created\", array('$1' => $user->getUsername()), 'users'));\n                $this->_helper->redirector('edit', 'user', 'admin', array(\n                    'user' => $user->getId(),\n                ));\n            } catch (\\InvalidArgumentException $e) {\n                switch ($e->getMessage()) {\n                    case 'username_conflict':\n                        $form->username->addError($translator->trans('Username is used already', array(), 'users'));\n                        break;\n\n                    case 'email_conflict':\n                        $form->email->addError($translator->trans('Email is used already', array(), 'users'));\n                        break;\n                }\n            }\n        }\n\n        $this->view->form = $form;\n    }\n\n    public function editAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $form = new Admin_Form_User();\n        $form->user_type->setMultioptions($this->userTypeService->getOptions());\n        $form->author->setMultioptions(array('' => $translator->trans('None', array(), 'users')) + $this->_helper->service('author')->getOptions());\n\n        $user = $this->getUser();\n        $form->setDefaultsFromEntity($user);\n\n        $request = $this->getRequest();\n        if ($request->isPost() && $form->isValid($request->getPost())) {\n            try {\n                $values = $form->getValues();\n\n                $values['attributes']['is_featured'] = $values['is_featured'];\n                $values['attributes']['is_verified'] = $values['is_verified'];\n                unset($values['is_featured']);\n                unset($values['is_verified']);\n\n                $this->userService->save($values, $user);\n\n                $cacheService = \\Zend_Registry::get('container')->get('newscoop.cache');\n                $cacheService->getCacheDriver()->deleteAll();\n\n                $this->_helper->flashMessenger($translator->trans(\"User saved\", array(), 'users'));\n                $this->_helper->redirector('edit', 'user', 'admin', array(\n                    'user' => $user->getId(),\n                ));\n            } catch (\\InvalidArgumentException $e) {\n                switch ($e->getMessage()) {\n                    case 'username_conflict':\n                        $form->username->addError($translator->trans('Username is used already', array(), 'users'));\n                        break;\n\n                    case 'email_conflict':\n                        $form->email->addError($translator->trans('Email is used already', array(), 'users'));\n                        break;\n                }\n            }\n        }\n\n        $requestSymfony = \\Zend_Registry::get('container')->getService('request');\n        $zendRouter = \\Zend_Registry::get('container')->getService('zend_router');\n        $publicationMetadata = $requestSymfony->attributes->get('_newscoop_publication_metadata');\n        $baseUrl = $requestSymfony->getScheme().'://'.$publicationMetadata['alias']['name'].$zendRouter->assemble(array('controller' => 'images'), 'default', true);\n        $this->view->form = $form;\n        $this->view->user = $user;\n        $this->view->image = $this->_helper->service('image')->getSrc('images/' . $user->getImage(), 80, 80, 'crop');\n        $this->view->baseImage = $baseUrl.'/'.$user->getImage();\n        $this->view->originalImage = $user->getImage();\n        $this->view->actions = array(\n            array(\n                'label' => $translator->trans('Edit geolocation', array(), 'users'),\n                'module' => 'admin',\n                'controller' => 'user',\n                'action' => 'geolocation',\n                'class' => 'iframe',\n                'params' => array(\n                    'user' => $user->getId()\n                ),\n            ),\n            array(\n                'label' => $translator->trans('Edit permissions', array(), 'users'),\n                'module' => 'admin',\n                'controller' => 'acl',\n                'action' => 'edit',\n                'params' => array(\n                    'user' => $user->getId(),\n                    'role' => $user->getRoleId(),\n                ),\n            ),\n        );\n    }\n\n    public function renameAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $user = $this->getUser()->render();\n        $form = new Admin_Form_RenameUser();\n        $form->setDefaults(array('username', $user->username));\n\n        $request = $this->getRequest();\n        if ($request->isPost() && $form->isValid($request->getPost())) {\n            $values = (object) $form->getValues();\n            $values->userId = $user->id;\n\n            try {\n                $this->_helper->service('user')->renameUser($values);\n                $this->_helper->flashMessenger->addMessage($translator->trans(\"User renamed.\", array(), 'users'));\n                $this->_helper->redirector('rename', 'user', 'admin', array(\n                    'user' => $user->id,\n                    'filter' => $this->_getParam('filter'),\n                ));\n            } catch (InvalidArgumentException $e) {\n                $form->username->addError($translator->trans(\"Username is used already\", array(), 'users'));\n            }\n        }\n\n        $this->view->form = $form;\n        $this->view->user = $user;\n    }\n\n    public function deleteAction()\n    {\n        $this->_helper->contextSwitch->addActionContext($this->_getParam('action'), 'json')->initContext();\n        try {\n            $user = $this->_helper->service('user')->find($this->_getParam('user', null));\n            $this->userService->delete($user);\n        } catch (Exception $e) {\n            $this->view->message = $e->getMessage();\n        }\n    }\n\n    public function profileAction()\n    {\n        $this->_helper->layout->setLayout('iframe');\n\n        $form = new Admin_Form_Profile();\n        $user = $this->getUser();\n        $this->addUserAttributesSubForm($form, $user);\n\n        $request = $this->getRequest();\n        if ($request->isPost() && $form->isValid($request->getPost())) {\n            $values = $form->getValues();\n\n            try {\n                if (!empty($values['image'])) {\n                    $imageInfo = array_pop($form->image->getFileInfo());\n                    $values['image'] = $this->_helper->service('image')->save($imageInfo);\n                    $this->view->image = $this->_helper->service('image')->getSrc($values['image'], $this->_getParam('width', 80), $this->_getParam('height', 80));\n                } else {\n                    unset($values['image']);\n                }\n                $this->_helper->service('user')->save($values, $user);\n                $this->view->close = true;\n            } catch (\\InvalidArgumentException $e) {\n                $form->image->addError($e->getMessage());\n            }\n        }\n\n        $this->view->form = $form;\n    }\n\n    public function geolocationAction()\n    {\n        $this->_helper->layout->setLayout('iframe');\n\n        $form = new Admin_Form_Geolocation();\n        $user = $this->getUser();\n        $form->setDefaultsFromEntity($user);\n\n        $request = $this->getRequest();\n        if ($request->isPost() && $form->isValid($request->getPost())) {\n            $values = $form->getValues();\n\n            try {\n                $values['attributes']['geolocation'] = $values['geolocation'];\n                unset($values['geolocation']);\n                $this->_helper->service('user')->save($values, $user);\n                $this->view->close = true;\n            } catch (\\InvalidArgumentException $e) {\n                $form->image->addError($e->getMessage());\n            }\n        }\n\n        $this->view->form = $form;\n    }\n\n    /**\n     * @Acl(ignore=true)\n     */\n    public function editPasswordAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $user = $this->_helper->service('user')->getCurrentUser();\n        $form = new Admin_Form_EditPassword();\n        $form->setMethod('POST');\n\n        $request = $this->getRequest();\n        if ($request->isPost() && $form->isValid($request->getPost())) {\n            $this->_helper->service('user')->save($form->getValues(), $user);\n            $this->_helper->flashMessenger($translator->trans('Password updated', array(), 'users'));\n            $this->_helper->redirector('edit-password', 'user', 'admin');\n        }\n\n        $this->view->form = $form;\n    }\n\n    /**\n     * Get user for given id\n     *\n     * @return Newscoop\\Entity\\User\n     */\n    protected function getUser()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $id = (int) $this->_getParam('user', false);\n        if (!$id) {\n            $this->_helper->flashMessenger(array('error', $translator->trans('User id not specified', array(), 'users')));\n            $this->_helper->redirector('index');\n        }\n\n        $user = $this->userService->find($id);\n        if (empty($user)) {\n            $this->_helper->flashMessenger(array('error', $translator->trans(\"User with id $1 not found\", array('$1' => $id), 'users')));\n            $this->_helper->redirector('index');\n        }\n\n        return $user;\n    }\n\n    public function toggleBanAction()\n    {\n        $parameters = $this->getRequest()->getParams();\n\n        $userRepository = $this->_helper->entity->getRepository('Newscoop\\Entity\\User');\n        $publicationRepository = $this->_helper->entity->getRepository('Newscoop\\Entity\\Publication');\n        $acceptanceRepository = $this->_helper->entity->getRepository('Newscoop\\Entity\\Comment\\Acceptance');\n\n        if (!isset($parameters['user']) && !isset($parameters['publication'])) {\n            throw new InvalidArgumentException;\n        }\n\n        $user = $userRepository->find($parameters['user']);\n        $publication = $publicationRepository->find($parameters['publication']);\n\n        $form = new Admin_Form_BanUser;\n        $this->handleBanForm($form, $user, $publication);\n\n        $banned = $acceptanceRepository->checkBanned(array('name' => $user->getName(), 'email' => $user->getEmail(), 'ip' => ''), $publication);\n\n        $form->setValues($user, $banned);\n        $this->view->form = $form;\n    }\n\n    public function sendConfirmEmailAction()\n    {\n        $this->_helper->contextSwitch->addActionContext($this->_getParam('action'), 'json')->initContext();\n        $user = $this->_helper->service('user')->find($this->_getParam('user', null));\n        if ($user && $user->isPending()) {\n            $this->_helper->service('email')->sendConfirmationToken($user);\n        }\n    }\n\n    /**\n     * Method for saving a banned\n     *\n     * @param ZendForm             $p_form\n     * @param Newscoop\\Entity\\User $p_user\n     */\n    private function handleBanForm(Admin_Form_BanUser $p_form, $p_user, $p_publication)\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        if ($this->getRequest()->isPost() && $p_form->isValid($_POST)) {\n            if ($p_form->getSubmit()->isChecked()) {\n                $parameters = $p_form->getValues();\n                $banValues = array();\n                $unbanValues = array();\n                if ($parameters['name'] == 1) $banValues['name'] = $p_user->getName();\n                else $unbanValues['name'] = $p_user->getName();\n                if ($parameters['email'] == 1) $banValues['email'] = $p_user->getEmail();\n                else $unbanValues['email'] = $p_user->getEmail();\n\n                $acceptanceRepository = $this->_helper->entity->getRepository('Newscoop\\Entity\\Comment\\Acceptance');\n                $acceptanceRepository->ban($p_publication, $banValues);\n                $acceptanceRepository->flush();\n                $acceptanceRepository->unban($p_publication, $unbanValues);\n                $acceptanceRepository->flush();\n\n                $this->_helper->flashMessenger($translator->trans('Ban for user $1 saved.', array('$1' => $p_user->getName()), 'users'));\n\n                if ($parameters['delete_messages'] == 1) {\n                    $feedbackRepository = $this->_helper->entity->getRepository('Newscoop\\Entity\\Feedback');\n                    $feedbacks = $feedbackRepository->getByUser($p_user->getId());\n\n                    $feedbackRepository->setStatus($feedbacks, 'deleted');\n                    $feedbackRepository->flush();\n                }\n            }\n            $this->_helper->redirector->gotoSimple('index', 'feedback');\n        }\n    }\n\n    /**\n     * Add user attributes subform to form\n     *\n     * @param  Zend_Form            $form\n     * @param  Newscoop\\Entity\\User $user\n     * @return void\n     */\n    private function addUserAttributesSubForm(Zend_Form $form, User $user)\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $subForm = new Zend_Form_SubForm();\n        $subForm->setLegend($translator->trans('User attributes', array(), 'users'));\n\n        foreach ($user->getRawAttributes() as $key => $val) {\n            $subForm->addElement('text', $key, array(\n                'label' => $key,\n            ));\n        }\n\n        $subForm->setDefaults($user->getAttributes());\n        $form->addSubForm($subForm, 'attributes');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/UserGroupController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\nuse Newscoop\\Entity\\User\\Group;\n\n/**\n * @Acl(action=\"manage\")\n */\nclass Admin_UserGroupController extends Zend_Controller_Action\n{\n    private $repository;\n\n    public function init()\n    {\n        $this->repository = $this->_helper->entity->getRepository('Newscoop\\Entity\\User\\Group');\n    }\n\n    public function indexAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->view->groups = $this->repository->findAll();\n\n        $this->_helper->sidebar(array(\n            'label' => $translator->trans('Add new user type'),\n            'controller' => 'user-group',\n            'action' => 'add',\n        ));\n    }\n\n    public function addAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $form = $this->getForm()->setMethod('post')->setAction('');\n        $group = new Group;\n\n        if ($this->getRequest()->isPost() && $form->isValid($_POST)) {\n            try {\n                $this->repository->save($group, $form->getValues());\n                $this->_helper->entity->getManager()->flush();\n\n                $this->_helper->flashMessenger->addMessage($translator->trans('User type added.', array(), 'user_types'));\n                $this->_helper->redirector('index');\n            } catch (Exception $e) {\n                $form->getElement('name')->addError($translator->trans('That type name already exists, please choose a different name.', array(), 'user_types'));\n            }\n        }\n\n        $this->view->form = $form;\n    }\n\n    public function editAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $form = $this->getForm();\n        $group = $this->_helper->entity('Newscoop\\Entity\\User\\Group', 'group');\n\n        $request = $this->getRequest();\n        if ($request->isPost() && $form->isValid($request->getPost()) && $form->name != $group->getName()) {\n            try {\n                $this->repository->save($group, $form->getValues());\n                $this->_helper->entity->flushManager();\n                $this->_helper->flashMessenger->addMessage($translator->trans('User type saved.', array(), 'user_types'));\n            } catch (Exception $e) {\n                $this->_helper->flashMessenger($translator->trans('That type name already exists, please choose a different name.', array(), 'user_types'));\n            }\n        }\n\n        $this->_helper->redirector('edit-access', 'user-group', 'admin', array(\n            'group' => $group->getId(),\n        ));\n    }\n\n    public function editAccessAction()\n    {\n        $group = $this->_helper->entity(new Group, 'group');\n        $this->view->group = $group;\n\n        $form = $this->getForm();\n        $form->setMethod('post');\n\n        $form->setAction($this->view->url(array(\n            'action' => 'edit',\n        )));\n\n        $form->setDefaults(array(\n            'name' => $group->getName(),\n        ));\n\n        $this->view->form = $form;\n\n        $this->_helper->actionStack('edit', 'acl', 'admin', array(\n            'role' => $group->getRoleId(),\n            'group' => $group->getId(),\n        ));\n    }\n\n    public function deleteAction()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $groupId = $this->getRequest()->getParam('group', 0);\n        $group = $this->repository->find($groupId);\n        $users = $group->getUsers();\n\n        if (count($users) == 0) {\n            $this->repository->delete($groupId);\n            $this->_helper->flashMessenger->addMessage($translator->trans('User type deleted.', array(), 'user_types'));\n        } else {\n            $this->_helper->flashMessenger->addMessage($translator->trans('Can not delete a user type with assigned users.', array(), 'user_types'));\n        }\n        $this->_helper->redirector('index');\n    }\n\n    /**\n     * Get group form\n     *\n     * @return Zend_Form\n     */\n    private function getForm()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $form = new Zend_Form;\n\n        $form->addElement('text', 'name', array(\n            'label' => $translator->trans('Name'),\n            'required' => true,\n        ));\n\n        $form->addElement('submit', 'submit', array(\n            'label' => $translator->trans('Save'),\n            'ignore' => true,\n        ));\n\n        return $form;\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/controllers/UserPointsController.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Annotations\\Acl;\n\n/**\n * UserPoints controller\n *\n * @Acl(resource=\"user-points\", action=\"manage\")\n */\nclass Admin_UserPointsController extends Zend_Controller_Action\n{\n    /** @var Newscoop\\Services\\UserPointsService */\n    private $userPointsService;\n\n    public function init()\n    {\n        $this->userPointsService = $this->_helper->service('user_points');\n    }\n\n    public function indexAction()\n    {\n        $all_actions = $this->userPointsService->findAll();\n        $form = new Admin_Form_UserPoints($all_actions);\n\n        $request = $this->getRequest();\n        if ($request->isPost() && $form->isValid($request->getPost())) {\n\n            $values = $form->getValues();\n            $this->userPointsService->updateEntries($values);\n        }\n\n        $this->view->form = $form;\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/Ban.php",
    "content": "<?php\n/**\n * Ban Commenter form\n */\nclass Admin_Form_Ban extends Zend_Form\n{\n\n    /**\n     * Getter for the submit button\n     *\n\t * @return Zend_Form_Element_Submit\n     */\n    public function getSubmit()\n    {\n        return $this->submit;\n    }\n\n    /**\n     * Getter for the delete comments\n     *\n\t * @return Zend_Form_Element_Checkbox\n     */\n    public function getDeleteComments()\n    {\n        return $this->delete_comments;\n    }\n\n    /**\n     * Getter for the ip checkbox\n     *\n\t * @return Zend_Form_Element_Checkbox\n     */\n    public function getElementIp()\n    {\n        return $this->ip;\n    }\n\n    /**\n     * Getter for the name checkbox\n     *\n\t * @return Zend_Form_Element_Checkbox\n     */\n    public function gettElementName()\n    {\n        return $this->name;\n    }\n\n    /**\n     * Getter for the email checkbox\n     *\n\t * @return Zend_Form_Element_Checkbox\n     */\n    public function gettElementEmail()\n    {\n        return $this->email;\n    }\n\n\n    public function init()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        $this->addElement('checkbox', 'name', array(\n            'label' => $translator->trans($translator->trans('Username').\":\"),\n            'required' => false,\n            'order' => 10,\n        ));\n\n        $this->addElement('checkbox', 'email', array(\n            'label' => $translator->trans($translator->trans('Email', array(), 'comments').\":\"),\n            'required' => false,\n            'order' => 20,\n        ));\n\n        $this->addElement('checkbox', 'ip', array(\n            'label' => $translator->trans($translator->trans('Ip', array(), 'comments').\":\"),\n            'required' => false,\n            'order' => 30,\n        ));\n\n\n        $this->addElement('checkbox', 'delete_comments', array(\n            'label' => $translator->trans($translator->trans('Delete all comments?', array(), 'comments').\":\"),\n            'required' => false,\n            'order' => 40,\n        ));\n\n        $this->addElement('submit', 'cancel', array(\n            'label' => $translator->trans('Cancel'),\n            'order' => 98,\n        ));\n\n        $this->addElement('submit', 'submit', array(\n            'label' => $translator->trans('Save'),\n            'order' => 99,\n        ));\n    }\n\n    /**\n     * Set values\n     *\n     * @param $commenter\n     * @param $values\n     */\n    public function setValues($p_commenter, $p_values)\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        /* @var $name Zend_Form_Element_CheckBox */\n        $this->name->setLabel($translator->trans('Username').\":\".strip_tags($p_commenter->getName()))\n                    ->setChecked($p_values['name']);\n\n        $this->email->setLabel($translator->trans('Email', array(), 'comments').\":\".$p_commenter->getEmail())\n                    ->setChecked($p_values['email']);\n\n        $this->ip->setLabel($translator->trans('Ip').\":\".$p_commenter->getIp())\n                 ->setChecked($p_values['ip']);\n    }\n\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/BanUser.php",
    "content": "<?php\n/**\n * Ban User form\n */\nclass Admin_Form_BanUser extends Zend_Form\n{\n\n    /**\n     * Getter for the submit button\n     *\n\t * @return Zend_Form_Element_Submit\n     */\n    public function getSubmit()\n    {\n        return $this->submit;\n    }\n\n    /**\n     * Getter for the delete comments\n     *\n\t * @return Zend_Form_Element_Checkbox\n     */\n    public function getDeleteMessages()\n    {\n        return $this->delete_messages;\n    }\n\n    /**\n     * Getter for the name checkbox\n     *\n\t * @return Zend_Form_Element_Checkbox\n     */\n    public function getElementName()\n    {\n        return $this->name;\n    }\n\n    /**\n     * Getter for the email checkbox\n     *\n\t * @return Zend_Form_Element_Checkbox\n     */\n    public function getElementEmail()\n    {\n        return $this->email;\n    }\n\n\n    public function init()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        \n        $this->addElement('checkbox', 'name', array(\n            'label' => $translator->trans($translator->trans('Name').\":\"),\n            'required' => false,\n            'order' => 10,\n        ));\n\n        $this->addElement('checkbox', 'email', array(\n            'label' => $translator->trans($translator->trans('Email').\":\"),\n            'required' => false,\n            'order' => 20,\n        ));\n\n        $this->addElement('checkbox', 'delete_messages', array(\n            'label' => $translator->trans('Delete feedback messages?', array(), 'feedback'),\n            'required' => false,\n            'order' => 40,\n        ));\n\n        $this->addElement('submit', 'cancel', array(\n            'label' => $translator->trans('Cancel'),\n            'order' => 98,\n        ));\n\n        $this->addElement('submit', 'submit', array(\n            'label' => $translator->trans('Save'),\n            'order' => 99,\n        ));\n    }\n\n    /**\n     * Set values\n     *\n     * @param $user\n     * @param $values\n     */\n    public function setValues($p_user, $p_values)\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        /* @var $name Zend_Form_Element_CheckBox */\n        $this->name->setLabel($translator->trans('Name').\":\".$p_user->getName())\n                    ->setChecked($p_values['name']);\n\n        $this->email->setLabel($translator->trans('Email').\":\".$p_user->getEmail())\n                    ->setChecked($p_values['email']);\n    }\n\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/Blog.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass Admin_Form_Blog extends Zend_Form\n{\n    /**\n     */\n    public function init()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->addElement('hash', 'csrf');\n\n        $this->addElement('text', 'title', array(\n            'label' => $translator->trans('Title', array(), 'api'),\n            'required' => TRUE,\n            'filters' => array(\n                'stringTrim',\n            ),\n        ));\n\n        $this->addElement('submit', 'submit', array(\n            'label' => $translator->trans('Create', array(), 'home'),\n            'ignore' => true,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/Comment/EditForm.php",
    "content": "<?php\n/**\n * @author Nistor Mihai\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nuse Newscoop\\Form;\n\nclass Admin_Form_Comment_EditForm extends Form\n{\n\n    public function init()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        /** Call the parent Newscoop\\Form init method for basic initialization */\n        parent::init();\n\n        /** Id of the comment */\n        $this->addElement('hidden', 'id',\n                array(\n            'label' => $translator->trans('Comment id', array(), 'comments'),\n            'required' => true,\n            'validators' => array(\n                array('NotEmpty', true),\n                array('Int', true)\n            ),\n        ));\n\n        /**\n         * Subject input\n         *      has a basic validatorfor the string length\n         */\n        $this->addElement('text', 'subject',\n                array(\n            'label' => $translator->trans('Subject'),\n            'required' => false,\n            'filters' => array(\n                'stringTrim',\n            ),\n            'validators' => array(\n                array('stringLength', false, array(1, 140)),\n            ),\n            'errorMessages' => array($translator->trans('Subject is not $1 characters long', array(\n                        '$1' => '1-140'), 'comments')),\n        ));\n\n        /** Message input */\n        $this->addElement('textarea', 'message',\n                array(\n            'label' => $translator->trans('Comment'),\n            'class' => 'comment',\n            'required' => false,\n        ));\n\n        /** Cancel button */\n        $this->addElement('reset', 'cancel',\n                array(\n            'label' => $translator->trans('Cancel'),\n            'class' => 'button edit-cancel'\n        ));\n\n        /** Save Button */\n        $this->addElement('submit', 'save',\n                array(\n            'label' => $translator->trans('Update comment', array(), 'comments'),\n            'class' => 'save-button-small update'\n        ));\n\n        /** Group buttons together */\n        $this->addDisplayGroup(array(\n            'cancel',\n            'save',\n                ), 'commenter',\n                array(\n            'class' => 'buttonBar'\n        ));\n    }\n\n}"
  },
  {
    "path": "newscoop/application/modules/admin/forms/Comment/ReplyForm.php",
    "content": "<?php\n\n/**\n * @author Nistor Mihai\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nuse Newscoop\\Form;\n\nclass Admin_Form_Comment_ReplyForm extends Form\n{\n\n    public function init()\n    {\n        /** Call the parent Newscoop\\Form init method for basic initialization */\n        parent::init();\n\n        /** Id of the comment */\n        $this->addElement('hidden', 'id',\n                array(\n            'label' => $translator->trans('Comment id', array(), 'comments'),\n            'required' => true,\n            'validators' => array(\n                array('NotEmpty', true),\n                array('Int', true)\n            ),\n        ));\n\n        /**\n         * Subject input\n         *      has a basic validatorfor the string length\n         */\n        $this->addElement('text', 'subject',\n                array(\n            'label' => $translator->trans('Subject'),\n            'required' => false,\n            'filters' => array(\n                'stringTrim',\n            ),\n            'validators' => array(\n                array('stringLength', false, array(1, 140)),\n            ),\n            'errorMessages' => array($translator->trans('Subject is not $1 characters long', array(\n                        '$1' => '1-140'), 'comments')),\n        ));\n\n        /** Message input */\n        $this->addElement('textarea', 'message',\n                array(\n            'label' => $translator->trans('Comment'),\n            'class' => 'comment',\n            'required' => false,\n        ));\n\n        /** Cancel button */\n        $this->addElement('reset', 'cancel',\n                array(\n            'label' => $translator->trans('Cancel'),\n            'class' => 'button edit-cancel'\n        ));\n\n        /** Reply Button */\n        $this->addElement('button', 'reply',\n                array(\n            'label' => $translator->trans('Reply', array(), 'comments'),\n            'class' => 'button edit-reply'\n        ));\n\n        /** Save Button */\n        $this->addElement('submit', 'save',\n                array(\n            'label' => $translator->trans('Update comment', array(), 'comments'),\n            'class' => 'save-button-small update'\n        ));\n\n        /** Group buttons together */\n        $this->addDisplayGroup(array(\n            'cancel',\n            'reply',\n            'save',\n                ), 'commenter',\n                array(\n            'class' => 'buttonBar'\n        ));\n    }\n\n}"
  },
  {
    "path": "newscoop/application/modules/admin/forms/Comment.php",
    "content": "<?php\n\n/**\n * User form\n */\nclass Admin_Form_Comment extends Zend_Form\n{\n    public function init()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->setMethod('post');\n        /*$user = new Zend_Form_Element_Select('user');\n        $user->setLabel($translator->trans('Username'))\n            ->setRequired(false)\n            ->setOrder(30);\n        $this->addElement($user);\n        */\n        $user = new Zend_Form_Element_Text('user');\n        $user->setLabel($translator->trans('User id', array(), 'comments'))\n            ->setRequired(false)\n            ->setOrder(30);\n        $this->addElement($user);\n\n        $this->addElement('text', 'name', array(\n            'label' => $translator->trans('Name'),\n            'required' => false,\n            'filters' => array(\n                'stringTrim',\n            ),\n            'validators' => array(\n                array('stringLength', false, array(1, 128)),\n            ),\n            'errorMessages' => array($translator->trans('Value is not $1 characters long', array('$1' => '1-128'), 'comments')),\n            'order' => 40,\n        ));\n\n        $this->addElement('text', 'email', array(\n            'label' => $translator->trans('E-mail', array(), 'comments'),\n            'required' => false,\n            'order' => 50,\n        ));\n\n        $this->addElement('text', 'url', array(\n            'label' => $translator->trans('Website', array(), 'comments'),\n            'required' => false,\n            'order' => 60,\n        ));\n\n\n        $this->addElement('text', 'parent', array(\n            'label' => $translator->trans('Parent', array(), 'comments'),\n            'required' => false,\n            'order' => 61,\n        ));\n\n        $this->addElement('text', 'subject', array(\n            'label' => $translator->trans('Subject'),\n            'required' => false,\n            'order' => 70,\n        ));\n\n        $this->addElement('textarea', 'message', array(\n            'label' => $translator->trans('Subject'),\n            'required' => false,\n            'order' => 80,\n        ));\n\n        $this->addDisplayGroup(array(\n            'user'\n        ), 'commentsUser', array(\n            'legend' => $translator->trans('Show comment user', array(), 'comments'),\n            'class' => 'toggle',\n            'order' => 35,\n        ));\n\n        $this->addDisplayGroup(array(\n            'parent'\n        ), 'comments_parent', array(\n            'legend' => $translator->trans('Show parent comment', array(), 'comments'),\n            'class' => 'toggle',\n            'order' =>67,\n        ));\n\n        $this->addDisplayGroup(array(\n            'name',\n            'email',\n            'url'\n        ), 'commentsUser_info', array(\n            'legend' => $translator->trans('Show comment user details', array(), 'comments'),\n            'class' => 'toggle',\n            'order' => 65,\n        ));\n\n        $this->addDisplayGroup(array(\n            'subject',\n            'message'\n        ), 'comment_info', array(\n            'legend' => $translator->trans('Show comment details', array(), 'comments'),\n            'class' => 'toggle',\n            'order' => 75,\n        ));\n\n        $this->addElement('submit', 'submit', array(\n            'label' => $translator->trans('Save'),\n            'order' => 99,\n        ));\n    }\n\n    /**\n     * Set default values by entity\n     *\n     * @param Newscoop\\Entity\\Commenter $commenter\n     * @return void\n     */\n    public function setFromEntity(Comments $comment)\n    {\n        $this->setDefaults(array(\n            'user' => $user->getUser(),\n            'name' => $user->getName(),\n            'email' => $user->getEmail(),\n            'url'   => $user->getUrl()\n        ));\n\n    }\n\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/CommentAcceptance.php",
    "content": "<?php\n/**\n * Commenter form\n */\nclass Admin_Form_CommentAcceptance extends Zend_Form\n{\n    public function init()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        $this->addElement('text', 'forum', array(\n            'label' => $translator->trans('Forum', array(), 'comments'),\n            'required' => false,\n            'order' => 0\n        ));\n\n        $type = new Zend_Form_Element_Select('type');\n        $type->setLabel($translator->trans('Type'))\n            ->setRequired(false)\n            ->setOrder(10)\n            ->setMultiOptions(array(\n                \"allow\" => \"Allow\",\n                \"deny\" => \"Deny\"\n            ))\n            ->addValidator('NotEmpty',true)\n            ->setValue('deny');\n        $this->addElement($type);\n\n        $for_column = new Zend_Form_Element_Select('for_column');\n        $for_column->setLabel($translator->trans('Column', array(), 'comments'))\n            ->setRequired(false)\n            ->setOrder(20)\n            ->setMultiOptions(array(\n                \"name\" => \"Name\",\n                \"email\" => \"Email\",\n                \"ip\"    => \"Ip\"\n            ))\n            ->addValidator('NotEmpty',true)\n            ->setValue('email');\n        $this->addElement($for_column);\n\n        $this->addElement('text', 'search', array(\n            'label' => $translator->trans('Search'),\n            'required' => false,\n            'filters' => array(\n                'stringTrim',\n            ),\n            'validators' => array(\n                array('stringLength', false, array(1, 255)),\n            ),\n            'errorMessages' => array($translator->trans('Value is not $1 characters long', array('$1' => '1-255'), 'comments')),\n            'order' => 30\n        ));\n\n        $searchType = new Zend_Form_Element_Select('search_type');\n        $searchType->setLabel($translator->trans('Search Type', array(), 'comments'))\n            ->setRequired(false)\n            ->setOrder(40)\n            ->setMultiOptions(array(\n                \"normal\" => \"normal\",\n                \"regex\" => \"regex\"\n            ));\n        $this->addElement($searchType);\n\n        $this->addElement('submit', 'submit', array(\n            'label' => $translator->trans('Save'),\n            'order' => 99,\n        ));\n\n    }\n\n    /**\n     * Set default values by entity\n     *\n     * @param $acceptance\n     * @return void\n     */\n    public function setFromEntity($acceptance)\n    {\n        $this->setDefaults(array(\n            'forum' => $acceptance->getForum()->getId(),\n            'type' => $acceptance->getType(),\n            'for_column' => $acceptance->getForColumn(),\n            'search'   => $acceptance->getSearch(),\n            'search_type'   => $acceptance->getSearchType(),\n        ));\n\n    }\n\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/Commenter.php",
    "content": "<?php\n/**\n * Commenter form\n */\nclass Admin_Form_Commenter extends Zend_Form\n{\n    public function init()\n    {\n        /*\n        $user = new Zend_Form_Element_Select('user');\n        $user->setLabel($translator->trans('Username'))\n            ->setRequired(true)\n            ->setOrder(30);\n        */\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $user = new Zend_Form_Element_Text('user');\n        $user->setLabel($translator->trans('User id', array(), 'comments'))\n            ->setRequired(false)\n            ->setOrder(30);\n        $this->addElement($user);\n\n        $this->addElement('text', 'name', array(\n            'label' => $translator->trans('Name'),\n            'required' => false,\n            'filters' => array(\n                'stringTrim',\n            ),\n            'validators' => array(\n                array('stringLength', false, array(1, 128)),\n            ),\n            'errorMessages' => array($translator->trans('Value is not $1 characters long', array('$1' => '1-128'), 'comments')),\n            'order' => 40,\n        ));\n\n        $this->addElement('text', 'email', array(\n            'label' => $translator->trans('E-mail', array(), 'comments'),\n            'required' => false,\n            'order' => 50,\n        ));\n\n        $this->addElement('text', 'url', array(\n            'label' => $translator->trans('Website', array(), 'comments'),\n            'required' => false,\n            'order' => 60,\n        ));\n\n        $this->addDisplayGroup(array(\n            'name',\n            'email',\n            'url'\n        ), 'commenter_info', array(\n            'legend' => $translator->trans('Show commenter details', array(), 'comments'),\n            'class' => 'toggle',\n            'order' => 70,\n        ));\n\n        $this->addDisplayGroup(array(\n            'user',\n        ), 'commenter', array(\n            'legend' => $translator->trans('Show commenter', array(), 'comments'),\n            'class' => 'toggle',\n            'order' => 20,\n        ));\n\n        $this->addElement('submit', 'submit', array(\n            'label' => $translator->trans('Save'),\n            'order' => 99,\n        ));\n    }\n\n    /**\n     * Set default values by entity\n     *\n     * @param $commenter\n     * @return void\n     */\n    public function setFromEntity($commenter)\n    {\n        $this->setDefaults(array(\n            'user' => $commenter->getUserId(),\n            'name' => $commenter->getName(),\n            'email' => $commenter->getEmail(),\n            'url'   => $commenter->getUrl()\n        ));\n\n    }\n\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/EditPassword.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass Admin_Form_EditPassword extends Zend_Form\n{\n    public function init()\n    {\n        $this->addElement('password', 'password', array(\n            'label' => 'Password',\n            'required' => true,\n            'filters' => array('stringTrim'),\n            'validators' => array(\n                array('stringLength', false, array(6, 80)),\n            ),\n        ));\n\n        $form = $this;\n        $this->addElement('password', 'password_confirm', array(\n            'label' => 'Password Confirmation',\n            'required' => true,\n            'filters' => array('stringTrim'),\n            'validators' => array(\n                new Zend_Validate_Callback(function ($value, $context) {\n                    return $value == $context['password'];\n                }),\n            ),\n            'errorMessages' => array(\"Password confirmation does not match your password.\"),\n        ));\n\n        $this->addElement('submit', 'submit', array(\n            'label' => 'Save',\n            'ignore' => true,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/Geolocation.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2015 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Entity\\User;\n\n/**\n */\nclass Admin_Form_Geolocation extends Zend_Form\n{\n    public function init()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        $this->setAttrib('id', 'edit-form');\n\n        $this->addElement('text', 'geolocation', array(\n            'label' => $translator->trans('Geolocation', array(), 'users'),\n            'filters' => array('stringTrim'),\n        ));\n\n        $this->addElement('submit', 'submit', array(\n            'label' => $translator->trans('Save'),\n            'ignore' => true,\n            'order' => 99,\n        ));\n    }\n\n    /**\n     * Set form defaults\n     *\n     * @param  Newscoop\\Entity\\User   $user\n     * @return Admin_Form_Geolocation\n     */\n    public function setDefaultsFromEntity(User $user)\n    {\n        return $this->setDefaults(array('geolocation' => $user->getAttribute('geolocation')));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/Language.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @subpackage Languages\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Entity\\Language;\n\n/**\n * Language form\n */\nclass Admin_Form_Language extends Zend_Form\n{\n    public function init()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        $this->addElement('text', 'name', array(\n            'required' => TRUE,\n            'label' => $translator->trans('Name'),\n        ));\n\n        $this->addElement('text', 'native_name', array(\n            'required' => TRUE,\n            'label' => $translator->trans('Native Name', array(), 'languages'),\n        ));\n\n        $this->addElement('text', 'code_page', array(\n            'required' => TRUE,\n            'label' => $translator->trans('Code Page', array(), 'languages'),\n        ));\n\n        $this->addElement('text', 'code', array(\n            'required' => TRUE,\n            'label' => $translator->trans('Code'),\n        ));\n\n        $this->addElement('text', 'RFC3066bis', array(\n            'required' => TRUE,\n            'label' => 'RFC3066bis ' . $translator->trans('Code'),\n        ));\n\n        $this->addElement('text', 'month1', array('label' => $translator->trans('January', array(), 'languages')));\n        $this->addElement('text', 'month2', array('label' => $translator->trans('February', array(), 'languages')));\n        $this->addElement('text', 'month3', array('label' => $translator->trans('March', array(), 'languages')));\n        $this->addElement('text', 'month4', array('label' => $translator->trans('April', array(), 'languages')));\n        $this->addElement('text', 'month5', array('label' => $translator->trans('May', array(), 'languages')));\n        $this->addElement('text', 'month6', array('label' => $translator->trans('June', array(), 'languages')));\n        $this->addElement('text', 'month7', array('label' => $translator->trans('July', array(), 'languages')));\n        $this->addElement('text', 'month8', array('label' => $translator->trans('August', array(), 'languages')));\n        $this->addElement('text', 'month9', array('label' => $translator->trans('September', array(), 'languages')));\n        $this->addElement('text', 'month10', array('label' => $translator->trans('October', array(), 'languages')));\n        $this->addElement('text', 'month11', array('label' => $translator->trans('November', array(), 'languages')));\n        $this->addElement('text', 'month12', array('label' => $translator->trans('December', array(), 'languages')));\n\n        $this->addDisplayGroup(array(\n            'month1',\n            'month2',\n            'month3',\n            'month4',\n            'month5',\n            'month6',\n            'month7',\n            'month8',\n            'month9',\n            'month10',\n            'month11',\n            'month12',\n        ), 'months_longname', array(\n            'legend' => $translator->trans('Edit month names', array(), 'languages'),\n            'class' => 'toggle',\n            'order' => 20,\n        ));\n\n        $this->addElement('text', 'short_month1', array('label' => $translator->trans('Jan', array(), 'languages')));\n        $this->addElement('text', 'short_month2', array('label' => $translator->trans('Feb', array(), 'languages')));\n        $this->addElement('text', 'short_month3', array('label' => $translator->trans('Mar', array(), 'languages')));\n        $this->addElement('text', 'short_month4', array('label' => $translator->trans('Apr', array(), 'languages')));\n        $this->addElement('text', 'short_month5', array('label' => $translator->trans('May', array(), 'languages')));\n        $this->addElement('text', 'short_month6', array('label' => $translator->trans('Jun', array(), 'languages')));\n        $this->addElement('text', 'short_month7', array('label' => $translator->trans('Jul', array(), 'languages')));\n        $this->addElement('text', 'short_month8', array('label' => $translator->trans('Aug', array(), 'languages')));\n        $this->addElement('text', 'short_month9', array('label' => $translator->trans('Sep', array(), 'languages')));\n        $this->addElement('text', 'short_month10', array('label' => $translator->trans('Oct', array(), 'languages')));\n        $this->addElement('text', 'short_month11', array('label' => $translator->trans('Nov', array(), 'languages')));\n        $this->addElement('text', 'short_month12', array('label' => $translator->trans('Dec', array(), 'languages')));\n\n        $this->addDisplayGroup(array(\n            'short_month1',\n            'short_month2',\n            'short_month3',\n            'short_month4',\n            'short_month5',\n            'short_month6',\n            'short_month7',\n            'short_month8',\n            'short_month9',\n            'short_month10',\n            'short_month11',\n            'short_month12',\n        ), 'months_shortname', array(\n            'legend' => $translator->trans('Edit short month names', array(), 'languages'),\n            'class' => 'toggle',\n            'order' => 40,\n        ));\n\n        $this->addElement('text', 'day1', array('label' => $translator->trans('Sunday', array(), 'languages')));\n        $this->addElement('text', 'day2', array('label' => $translator->trans('Monday', array(), 'languages')));\n        $this->addElement('text', 'day3', array('label' => $translator->trans('Tuesday', array(), 'languages')));\n        $this->addElement('text', 'day4', array('label' => $translator->trans('Wednesday', array(), 'languages')));\n        $this->addElement('text', 'day5', array('label' => $translator->trans('Thursday', array(), 'languages')));\n        $this->addElement('text', 'day6', array('label' => $translator->trans('Friday', array(), 'languages')));\n        $this->addElement('text', 'day7', array('label' => $translator->trans('Saturday', array(), 'languages')));\n\n        $this->addDisplayGroup(array(\n            'day1',\n            'day2',\n            'day3',\n            'day4',\n            'day5',\n            'day6',\n            'day7',\n        ), 'days_name', array(\n            'legend' => $translator->trans('Edit day names', array(), 'languages'),\n            'class' => 'toggle',\n            'order' => 60,\n        ));\n\n        $this->addElement('text', 'short_day1', array('label' => $translator->trans('Su', array(), 'languages')));\n        $this->addElement('text', 'short_day2', array('label' => $translator->trans('Mo', array(), 'languages')));\n        $this->addElement('text', 'short_day3', array('label' => $translator->trans('Tu', array(), 'languages')));\n        $this->addElement('text', 'short_day4', array('label' => $translator->trans('We', array(), 'languages')));\n        $this->addElement('text', 'short_day5', array('label' => $translator->trans('Th', array(), 'languages')));\n        $this->addElement('text', 'short_day6', array('label' => $translator->trans('Fr', array(), 'languages')));\n        $this->addElement('text', 'short_day7', array('label' => $translator->trans('Sa', array(), 'languages')));\n\n        $this->addDisplayGroup(array(\n            'short_day1',\n            'short_day2',\n            'short_day3',\n            'short_day4',\n            'short_day5',\n            'short_day6',\n            'short_day7',\n        ), 'days_shortname', array(\n            'legend' => $translator->trans('Edit short day names', array(), 'languages'),\n            'class' => 'toggle',\n            'order' => 70,\n        ));\n\n        $this->addElement('submit', 'submit', array(\n            'label' => $translator->trans('Save'),\n            'order' => 99,\n        ));\n    }\n\n    /**\n     * Set default values by entity\n     *\n     * @param Newscoop\\Entity\\Language $language\n     * @return void\n     */\n    public function setDefaultsFromEntity(Language $language)\n    {\n        $this->setDefaults(array(\n            'name' => $language->getName(),\n            'native_name' => $language->getNativeName(),\n            'code_page' => $language->getCodePage(),\n            'code' => $language->getCode(),\n            'RFC3066bis' => $language->getRFC3066bis(),\n            'month1' => $language->getMonth1(),\n            'month2' => $language->getMonth2(),\n            'month3' => $language->getMonth3(),\n            'month4' => $language->getMonth4(),\n            'month5' => $language->getMonth5(),\n            'month6' => $language->getMonth6(),\n            'month7' => $language->getMonth7(),\n            'month8' => $language->getMonth8(),\n            'month9' => $language->getMonth9(),\n            'month10' => $language->getMonth10(),\n            'month11' => $language->getMonth11(),\n            'month12' => $language->getMonth12(),\n            'short_month1' => $language->getShortMonth1(),\n            'short_month2' => $language->getShortMonth2(),\n            'short_month3' => $language->getShortMonth3(),\n            'short_month4' => $language->getShortMonth4(),\n            'short_month5' => $language->getShortMonth5(),\n            'short_month6' => $language->getShortMonth6(),\n            'short_month7' => $language->getShortMonth7(),\n            'short_month8' => $language->getShortMonth8(),\n            'short_month9' => $language->getShortMonth9(),\n            'short_month10' => $language->getShortMonth10(),\n            'short_month11' => $language->getShortMonth11(),\n            'short_month12' => $language->getShortMonth12(),\n            'day1' => $language->getDay1(),\n            'day2' => $language->getDay2(),\n            'day3' => $language->getDay3(),\n            'day4' => $language->getDay4(),\n            'day5' => $language->getDay5(),\n            'day6' => $language->getDay6(),\n            'day7' => $language->getDay7(),\n            'short_day1' => $language->getShortDay1(),\n            'short_day2' => $language->getShortDay2(),\n            'short_day3' => $language->getShortDay3(),\n            'short_day4' => $language->getShortDay4(),\n            'short_day5' => $language->getShortDay5(),\n            'short_day6' => $language->getShortDay6(),\n            'short_day7' => $language->getShortDay7(),\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/Profile.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass Admin_Form_Profile extends Zend_Form\n{\n    public function init()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        $this->setAttrib('enctype', 'multipart/form-data');\n\n        $this->addElement('file', 'image', array(\n            'label' => $translator->trans('Picture', array(), 'users'),\n        ));\n\n        $this->addElement('submit', 'submit', array(\n            'label' => 'Save',\n            'ignore' => true,\n            'order' => 99,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/RenameUser.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass Admin_Form_RenameUser extends Zend_Form\n{\n    /**\n     */\n    public function init()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        \n        $this->addElement('hash', 'csrf');\n\n        $this->addElement('text', 'username', array(\n            'label' => $translator->trans('Username', array(), 'users'),\n            'required' => true,\n            'filters' => array(\n                'stringTrim',\n            ),\n            'validators' => array(\n                array('stringLength', false, array(5, 80)),\n            ),\n        ));\n\n        $this->addElement('submit', 'submit', array(\n            'id' => 'save_button',\n            'label' => $translator->trans('Save'),\n            'ignore' => true,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/ReplaceTemplate.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass Admin_Form_ReplaceTemplate extends Zend_Form\n{\n    public function init()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        $this->addElement('file', 'file', array(\n            'required' => TRUE\n        ));\n\n        $this->addElement('reset', 'reset', array(\n            'label' => $translator->trans('Cancel')\n        ));\n\n        $this->addElement('submit', 'submit', array(\n            'label' => $translator->trans('Replace', array(), 'themes'),\n            'ignore' => TRUE\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/Slideshow.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass Admin_Form_Slideshow extends Zend_Form\n{\n    /**\n     */\n    public function init()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        $this->addElement('text', 'headline', array(\n            'label' => $translator->trans('Headline', array(), 'article_images'),\n            'required' => true,\n        ));\n\n        $this->addElement('text', 'slug', array(\n            'label' => $translator->trans('Slug', array(), 'article_images'),\n        ));\n\n        $this->addElement('text', 'description', array(\n            'label' => $translator->trans('Description'),\n        ));\n\n        $this->addElement('submit', 'submit', array(\n            'label' => $translator->trans('Save'),\n            'ignore' => true,\n        ));\n    }\n\n    /**\n     * Set defaults by given entity\n     *\n     * @param Newscoop\\Package\\Package $package\n     * @return Admin_Form_Slideshow\n     */\n    public function setDefaultsFromEntity(\\Newscoop\\Package\\Package $package)\n    {\n        $this->setDefaults(array(\n            'headline' => $package->getHeadline(),\n            'slug' => $package->getSlug(),\n        ));\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/SlideshowCreate.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass Admin_Form_SlideshowCreate extends Zend_Form\n{\n    /**\n     */\n    public function init()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        \n        $this->addElement('text', 'headline', array(\n            'label' => $translator->trans('Headline', array(), 'article_images'),\n            'required' => true,\n        ));\n\n        $this->addElement('select', 'rendition', array(\n            'label' => $translator->trans('Slideshow rendition', array(), 'article_images'),\n            'required' => true,\n        ));\n\n        $this->addElement('submit', 'submit', array(\n            'label' => $translator->trans('Create', array(), 'home'),\n            'ignore' => true,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/SlideshowItem.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass Admin_Form_SlideshowItem extends Zend_Form\n{\n    /**\n     */\n    public function init()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        \n        $this->addElement('hidden', 'coords');\n\n        $this->addElement('text', 'url', array(\n            'label' => $translator->trans('URL'),\n        ));\n\n        $this->addElement('text', 'caption', array(\n            'label' => $translator->trans('Caption', array(), 'article_images'),\n        ));\n    }\n\n    /**\n     * Set default for given entity\n     *\n     * @param Newscoop\\Package\\Item $item\n     * @return Admin_Form_SlideshowItem\n     */\n    public function setDefaultsFromEntity(\\Newscoop\\Package\\Item $item)\n    {\n        $this->setDefaults(array(\n            'caption' => $item->getCaption(),\n            'url' => $item->getVideoUrl(),\n        ));\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/SlideshowVideoItem.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass Admin_Form_SlideshowVideoItem extends Zend_Form\n{\n    /**\n     */\n    public function init()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        \n        $this->addElement('text', 'url', array(\n            'label' => $translator->trans('URL'),\n            'required' => true,\n        ));\n\n        $this->addElement('submit', 'submit', array(\n            'label' => $translator->trans('Add video', array(), 'article_images'),\n            'ignore' => true,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/Staff.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Entity\\User\\Staff;\n\n/**\n * User form\n */\nclass Admin_Form_Staff extends Admin_Form_User\n{\n    /** @var bool */\n    private $isAdmin = FALSE;\n\n    /**\n     * @param bool $isAdmin\n     */\n    public function __construct($isAdmin = TRUE)\n    {\n        $this->isAdmin = (bool) $isAdmin;\n\n        parent::__construct();\n    }\n\n    public function init()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        parent::init();\n\n        if (!$this->isAdmin) {\n            return;\n        }\n\n        $this->addElement('multiCheckbox', 'groups', array(\n            'label' => $translator->trans('User Type', array(), 'users'),\n            'order' => 61, // $this->getEelement('phone')->getOrder() + 1;\n        ));\n    }\n\n    /**\n     * Set staff groups\n     *\n     * @param Newscoop\\Entity\\User\\Staff $staff\n     * @return void\n     */\n    public function setDefaultsFromEntity(Staff $staff)\n    {\n        parent::setDefaultsFromEntity($staff);\n\n        if (!$this->isAdmin) {\n            return;\n        }\n\n        $groups = array();\n        foreach ($staff->getGroups() as $group) {\n            $groups[] = $group->getId();\n        }\n\n        $this->setDefaults(array(\n            'groups' => $groups,\n        ));\n\n        $this->getElement('groups')->setOrder(31); // $this->getElement('password_confirm')->getOrder() + 1\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/Support.php",
    "content": ""
  },
  {
    "path": "newscoop/application/modules/admin/forms/Template.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Entity\\Template;\n\n/**\n */\nclass Admin_Form_Template extends Zend_Form\n{\n    public function init()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        $this->addElement('hash', 'csrf');\n\n        $this->addElement('textarea', 'content', array(\n            'required' => TRUE,\n        ));\n\n        $this->addElement('text', 'cache_lifetime', array(\n            'class' => 'short'\n        ));\n\n        $this->addElement('button', 'geo_filtering', array(\n            'label' => '<span class=\"ui-icon-polygon\"></span>' . $translator->trans('Geo Filtering', array(), 'themes'),\n            'class' => 'geo_filtering_button',\n            'ignore' => TRUE,\n            'escape' => false,\n        ));\n\n        $this->addElement('submit', 'submit', array(\n            'label' => $translator->trans('Save'),\n            'ignore' => TRUE,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/Theme/OutputSettings.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nclass Admin_Form_Theme_OutputSettings extends Zend_Form\n{\n    public function init()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        \n        $this\n            ->setAttrib( \"autocomplete\", \"off\" )\n            ->setAction( '' )\n            ->setMethod( Zend_Form::METHOD_POST )\n            ->addElement( 'select', 'frontpage', array\n            (\n                'label'       => $translator->trans( 'Front page template' , array(), 'themes'),\n            \t'required'    => true,\n            ))\n            ->addElement( 'select', 'sectionpage', array\n            (\n    \t\t\t'label'       => $translator->trans( 'Section page template', array(), 'themes' ),\n            \t'required'    => true,\n            ))\n            ->addElement( 'select', 'articlepage', array\n            (\n    \t\t\t'label'       => $translator->trans( 'Article page template', array(), 'themes' ),\n            \t'required'    => true,\n            ))\n            ->addElement( 'select', 'errorpage', array\n            (\n    \t\t\t'label'       => $translator->trans( 'Error page template', array(), 'themes' ),\n            \t'required'    => true,\n            ))\n            ->addElement( 'hidden', 'outputid', array\n            (\n            \t'required'    => true,\n            ))\n            ->addElement( 'hidden', 'themeid', array\n            (\n            \t'required'    => true,\n            ))\n            ->addElement( 'submit', 'submit', array\n            (\n                'label'\t\t=> 'Save'\n            ) );\n\n        // take out those decorators for the hidden elements\n        foreach( array( $this->getElement( 'outputid' ), $this->getElement( 'themeid' ) ) as $elem ) {\n            $elem\n                ->removeDecorator( 'HtmlTag' )\n                ->removeDecorator( 'Label' )\n                ->removeDecorator( 'Error' )\n                ->removeDecorator( 'Description' );\n        }\n    }\n\n    /**\n     * Set values for the form elements\n     * @param array $defaults Default template files\n     * @param array $values Default input values\n     */\n    public function setValues( $defaults, $values = null )\n    {\n        foreach( $this->getElements() as $elem ) {\n        \t/* @var $elem Zend_Form_Element_Select */\n            if( $elem instanceof Zend_Form_Element_Select )\n            {\n                $elem->addMultiOptions( $defaults )->setValue( $values[ $elem->getName() ] );\n            }\n            elseif(isset($values[ $elem->getName() ]))\n            {\n                $elem->setValue( $values[ $elem->getName() ] );\n            }\n        }\n    }\n}"
  },
  {
    "path": "newscoop/application/modules/admin/forms/Theme/Upload.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nclass Admin_Form_Theme_Upload extends Zend_Form\n{\n    public function init()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        \n        $this->setAction( '' )\n            ->setMethod( Zend_Form::METHOD_POST )\n            ->addElement( 'file', 'browse', array\n            (\n                'label'       => $translator->trans( 'Browse for the theme' , array(), 'themes'),\n            \t'required'    => true,\n            ))\n            ->addElement( 'submit', 'submit-button', array\n            (\n                'label'\t\t=> 'Upload'\n            ) );\n    }\n}"
  },
  {
    "path": "newscoop/application/modules/admin/forms/Theme.php",
    "content": "<?php\n\nclass Admin_Form_Theme extends Zend_Form\n{\n    public function init()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        \n        $this->addElement('text', 'name', array(\n            'label' => $translator->trans('Theme name', array(), 'themes'),\n            'required' => True,\n        ));\n\n        $this->addElement('text', 'required-version', array(\n            'label' => $translator->trans('Required Newscoop version', array(), 'themes'),\n            'description' => $translator->trans( 'or higher' , array(), 'themes'),\n            'class' => 'small',\n            'readonly' => True,\n        ));\n\n        $this->addElement('text', 'theme-version', array(\n            'label' => $translator->trans( 'Theme version' , array(), 'themes'),\n            'class' => 'small',\n            'readonly' => True,\n        ));\n\n        $this->setAttrib('autocomplete', 'off');\n        $this->setAction('')->setMethod(Zend_Form::METHOD_POST);\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/Upload.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nclass Admin_Form_Upload extends Zend_Form\n{\n    public function init()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        \n        $this->addElement('hash', 'csrf');\n\n        $this->addElement('submit', 'submit', array(\n            'label' => $translator->trans('Upload', array(), 'themes'),\n            'ignore' => TRUE,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/User.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Entity\\User;\n\n/**\n */\nclass Admin_Form_User extends Zend_Form\n{\n    /**\n     */\n    public function init()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        $this->addElement('hash', 'csrf');\n\n        $this->addElement('text', 'first_name', array(\n            'label' => $translator->trans('First Name', array(), 'users'),\n            'filters' => array(\n                'stringTrim',\n            ),\n        ));\n\n        $this->addElement('text', 'last_name', array(\n            'label' => $translator->trans('Last Name', array(), 'users'),\n            'filters' => array(\n                'stringTrim',\n            ),\n        ));\n\n        $this->addElement('text', 'email', array(\n            'label' => $translator->trans('Email', array(), 'users'),\n            'required' => TRUE,\n            'filters' => array(\n                'stringTrim',\n            ),\n            'validators' => array(\n                'emailAddress',\n            ),\n        ));\n\n        $this->addElement('text', 'username', array(\n            'label' => $translator->trans('Username', array(), 'users'),\n            'required' => TRUE,\n            'filters' => array(\n                'stringTrim',\n            ),\n            'validators' => array(\n                array('stringLength', false, array(5, 80)),\n            ),\n        ));\n\n        $this->addElement('password', 'password', array(\n            'label' => $translator->trans('Password'),\n            'filters' => array(\n                'stringTrim',\n            ),\n            'validators' => array(\n                array('stringLength', false, array(6, 80)),\n            ),\n        ));\n\n        $this->addElement('checkbox', 'status', array(\n            'label' => $translator->trans('User account is active', array(), 'users'),\n        ));\n\n        $this->addElement('checkbox', 'is_admin', array(\n            'label' => $translator->trans('Allow user access to login to site backend', array(), 'users'),\n        ));\n\n        $this->addElement('checkbox', 'is_public', array(\n            'label' => $translator->trans(\"Allow users profile to be publicly displayed\", array(), 'users'),\n        ));\n\n        $this->addElement('checkbox', 'is_verified', array(\n            'label' => $translator->trans('User account is verified', array(), 'users'),\n        ));\n\n        $this->addElement('checkbox', 'is_featured', array(\n            'label' => $translator->trans('User account is highlighted as \"featured account\"', array(), 'users'),\n        ));\n\n        $profile = new Zend_Form_SubForm();\n\n        $profile->addElement('radio', 'gender', array(\n            'label' => $translator->trans('Gender', array(), 'users'),\n            'multioptions' => array(\n                'male' => 'Male',\n                'female' => 'Female',\n            ),\n        ));\n\n        $profile->addElement('textarea', 'bio', array(\n            'label' => $translator->trans('About me', array(), 'users'),\n            'filters' => array('stringTrim'),\n            'style' => 'width: 80%',\n            'rows' => 4,\n        ));\n\n        $profile->addElement('text', 'birth_date', array(\n            'label' => $translator->trans('Date of birth', array(), 'users'),\n            'class' => 'date',\n            'filters' => array('stringTrim'),\n        ));\n\n        $profile->addElement('text', 'organisation', array(\n            'label' => $translator->trans('Organisation', array(), 'users'),\n            'filters' => array('stringTrim'),\n        ));\n\n        $profile->addElement('text', 'website', array(\n            'label' => $translator->trans('Website', array(), 'users'),\n            'filters' => array('stringTrim'),\n        ));\n\n        $profile->addElement('text', 'twitter', array(\n            'label' => $translator->trans('Twitter', array(), 'users'),\n            'filters' => array('stringTrim'),\n        ));\n\n        $profile->addElement('text', 'facebook', array(\n            'label' => $translator->trans('Facebook', array(), 'users'),\n            'filters' => array('stringTrim'),\n        ));\n\n        $profile->addElement('text', 'google', array(\n            'label' => $translator->trans('Google+', array(), 'users'),\n            'filters' => array('stringTrim'),\n        ));\n\n        $profile->addElement('text', 'custom_attr_1', array(\n            'filters' => array('stringTrim'),\n            'placeholder' => $translator->trans('Custom attribute...', array(), 'users'),\n        ));\n\n        $profile->addElement('text', 'custom_attr_2', array(\n            'filters' => array('stringTrim'),\n            'placeholder' => $translator->trans('Custom attribute...', array(), 'users'),\n        ));\n\n        $profile->addElement('text', 'google', array(\n            'label' => $translator->trans('Google+', array(), 'users'),\n            'filters' => array('stringTrim'),\n        ));\n\n        $this->addSubForm($profile, 'attributes');\n\n        $this->addElement('multiCheckbox', 'user_type', array(\n            'label' => $translator->trans('User Type', array(), 'users'),\n        ));\n\n        $this->addElement('select', 'author', array(\n            'label' => $translator->trans('Author'),\n        ));\n\n        $this->addElement('submit', 'submit', array(\n            'label' => $translator->trans('Save'),\n            'ignore' => true,\n            'id' => 'save_button'\n        ));\n\n        $this->addDisplayGroup(array(\n            'csrf',\n            'first_name',\n            'last_name',\n            'email',\n            'username',\n            'password',\n            'status',\n            'is_admin',\n            'is_public',\n            'is_verified',\n            'is_featured',\n            'user_type',\n            'author'\n        ), 'adminSettings');\n\n        $this->addDisplayGroup(array(\n            'gender',\n            'bio',\n            'birth_date',\n            'organisation',\n            'website',\n            'twitter',\n            'facebook',\n            'google',\n            'submit'\n        ), 'attributes');\n    }\n\n    /**\n     * Set form defaults\n     *\n     * @param  Newscoop\\Entity\\User $user\n     * @return Admin_Form_User\n     */\n    public function setDefaultsFromEntity(User $user)\n    {\n        $defaults = array(\n            'first_name' => $user->getFirstName(),\n            'last_name' => $user->getLastName(),\n            'username' => $user->getUsername(),\n            'attributes' => array(),\n        );\n\n        $profile = $this->getSubForm('attributes');\n        foreach ($profile as $field) {\n            $defaults['attributes'][$field->getName()] = (string) $user->getAttribute($field->getName());\n        }\n\n        $types = array();\n        foreach ($user->getUserTypes() as $type) {\n            $types[] = $type->getId();\n        }\n\n        try {\n            $user->getAuthorId();\n        } catch (\\Doctrine\\ORM\\EntityNotFoundException $e) { // deleted author\n            $user->setAuthor(null);\n        }\n\n        $settings = array(\n            'first_name' => $user->getFirstName(),\n            'last_name' => $user->getLastName(),\n            'email' => $user->getEmail(),\n            'username' => $user->getUsername(),\n            'status' => $user->isActive(),\n            'is_admin' => $user->isAdmin(),\n            'is_public' => $user->isPublic(),\n            'is_verified' => $user->getAttribute('is_verified'),\n            'is_featured' => $user->getAttribute('is_featured'),\n            'user_type' => $types,\n            'author' => $user->getAuthorId(),\n        );\n\n        return $this->setDefaults(array_merge($settings, $defaults));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/UserCriteria.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Entity\\User;\n\n/**\n */\nclass Admin_Form_UserCriteria extends Zend_Form\n{\n    public function init()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        \n        $this->addElement('text', 'q');\n\n        $this->addElement('select', 'status', array(\n            'multioptions' => array(\n                User::STATUS_ACTIVE => $translator->trans('active', array(), 'users'),\n                User::STATUS_INACTIVE => $translator->trans('pending', array(), 'users'),\n                User::STATUS_DELETED => $translator->trans('deleted', array(), 'users'),\n            ),\n        ));\n\n        $this->addElement('select', 'groups', array(\n            'multioptions' => array(\n                null => $translator->trans('Any group', array(), 'users'),\n            ),\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/forms/UserPoints.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n\n/**\n */\nclass Admin_Form_UserPoints extends Zend_Form\n{\n    private $entities = array();\n\n    public function __construct($point_entities)\n    {\n        $this->entities = $point_entities;\n        parent::__construct();\n    }\n\n    public function init()\n    {\n        //$this->addElement('hash', 'csrf');\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        foreach ($this->entities as $entry) {\n\n            $this->addElement('text', $entry->getAction(), array(\n                'label' => $entry->getName(),\n                'value' => $entry->getPoints(),\n                'filters' => array(\n                    'stringTrim',\n                ),\n                'validators' => array(\n                    'int',\n                )\n            ));\n        }\n\n        $this->addElement('submit', 'submit', array(\n            'label' => $translator->trans('Save'),\n            'ignore' => TRUE,\n        ));\n\n    }\n}"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/Camelize.php",
    "content": "<?php\n\nclass Admin_View_Helper_Camelize extends Zend_View_Helper_Abstract\n{\n    /**\n     * Camelcase string\n     * @param string $string the string to camelize\n     * @param bool $lazy wether to make it lazyCamelCase or not\n     */\n    public function camelize( $string, $spacify = true, $lazy = false )\n    {\n        if( $spacify ) {\n            $repl = \"str_replace('_',' ',strtoupper('\\\\1'))\";\n        }\n        else {\n            $repl = \"strtoupper('\\\\2')\";\n        }\n        $ret = preg_replace(\"`(?<=[a-z0-9])(_([a-z0-9]))`e\", $repl, $string );\n        if( $lazy ) {\n            return lcfirst( $ret );\n        }\n        else {\n            return ucfirst( $ret );\n        }\n    }\n}"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/CommentAction.php",
    "content": "<?php\n/**\n * Render actions view helper\n */\nclass Admin_View_Helper_CommentAction extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render actions\n     *\n     * @param array $actions\n     * @return void\n     */\n    public function commentAction($comment)\n    {\n        $this->view->comment = $comment;\n        return $this->view->render('comment-action.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/CommentArticle.php",
    "content": "<?php\n/**\n * Render actions view helper\n */\nclass Admin_View_Helper_CommentArticle extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render actions\n     *\n     * @param array $actions\n     * @return void\n     */\n    public function commentArticle($article)\n    {\n        $this->view->article = $article;\n        return $this->view->render('comment-article.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/CommentCommenter.php",
    "content": "<?php\n\n/**\n * Render actions view helper\n */\nuse Newscoop\\Entity\\Comment\\Commenter;\n\nclass Admin_View_Helper_CommentCommenter extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render actions\n     *\n     * @param array $actions\n     * @return void\n     */\n    public function commentCommenter(Commenter $commenter)\n    {\n        $this->view->commenter = $commenter;\n        return $this->view->render('comment-commenter.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/CommentIndex.php",
    "content": "<?php\n/**\n * Render actions view helper\n */\nclass Admin_View_Helper_CommentIndex extends Zend_View_Helper_Abstract\n{\n    private $index = 1;\n    /**\n     * Render actions\n     *\n     * @param array $actions\n     * @return void\n     */\n    public function commentIndex($comment)\n    {\n        $this->view->comment = $comment;\n        $this->view->index = $this->index++;\n        return $this->view->render('comment-index.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/CommentMessage.php",
    "content": "<?php\n/**\n * Render actions view helper\n */\nclass Admin_View_Helper_CommentMessage extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render actions\n     *\n     * @param array $actions\n     * @return void\n     */\n    public function commentMessage($comment)\n    {\n        $this->view->comment = $comment;\n        return $this->view->render('comment-message.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/FlashMsg.php",
    "content": "<?php\n/**\n *\n * @author mihaibalaceanu\n * @version \n * \n */\n\nclass Admin_View_Helper_FlashMsg extends Zend_View_Helper_Abstract\n{\n\n\t/**\n\t * @var Zend_View_Interface \n\t */\n\tpublic $view;\n\n\t/**\n\t * @var Ext_Controller_Helper_FlashMessenger\n\t */\n\tprivate $_adapter \t= null;\n\t\n\t/**\n\t * @var array\n\t */\n\tprivate $_templates\t= array\n\t(\n\t\t'normal'\t=> '<span class=\"flash-message normal\">%s</span>',\n\t\t'error'\t\t=> '<span class=\"flash-message error\">%s</span>',\n\t\t'warn'\t\t=> '<span class=\"flash-message warn\">%s</span>',\n\t);\n\t\n\t/**\n\t * @var string\n\t */\n\tprivate $_closeButton = \"<a class='fr button-close' href='javascript:void(0)' onclick='$(this).parent(\\\"span\\\").fadeOut()'>x</a>\"; \n\t\n\t/**\n\t *  @param string \t$type \tnormal|current|both\n\t *  @param mixed\t$key\tif null all messages outputted\n\t */\n\tpublic function flashMsg( $type='normal', $key=null, $sticky=false )\n\t{  \n\t\tif( is_null( $this->_adapter ) ) return;\n\t\t$message \t= $outputMessages = array();\n\t\t$output\t\t= \"\"; \n\t\tswitch( $type )\n\t\t{\n\t\t\tcase 'normal'\t: $messages = $this->_adapter->getMessages(); break;\n\t\t\tcase 'current'\t: $messages = $this->_adapter->getCurrentMessages(); break;\n\t\t\tdefault\t\t\t: $messages = array_merge(\t$this->_adapter->getMessages(), $this->_adapter->getCurrentMessages() ); break;\n\t\t}\n\t\tif( !is_null($key) )\n\t\t{\n\t\t\tif( isset($messages[$key]) ) $outputMessages[] \t= $messages[$key];\n\t\t}\t\n\t\telse\n\t\t\t$outputMessages\t\t= $messages;\n\n\t\tforeach( $outputMessages as $msg )\n\t\t{\n\t\t\tif( is_object($msg) && isset($msg->type) )\n\t\t\t{\n\t\t\t\t$replaceMsg = $msg->message;\n\t\t\t\t$tpl\t\t= $this->_templates[$msg->type];\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\t$replaceMsg = $msg;\n\t\t\t\t$tpl\t\t= $this->_templates[0];\n\t\t\t}\n\t\t\t\t\n\t\t\t$output .= sprintf( $tpl, ( !$sticky ? $this->_closeButton : \"\" ) . $replaceMsg );\n\t\t}\n\t\t\n\t\treturn $output;\n\t}\n\n\t/**\n\t * Sets the view field \n\t * @param $view Zend_View_Interface\n\t */\n\tpublic function setView( Zend_View_Interface $view )\n\t{\n\t\t$this->view = $view;\n\t}\n\t\n\t/**\n\t *                         \n\t */\n\tpublic function setAdapter( $adapter )\n\t{\n\t\t$this->_adapter\t= $adapter;\n\t}\n}\n\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/FormatBytes.php",
    "content": "<?php\n\n/**\n * Format bytes helper\n */\nclass Admin_View_Helper_FormatBytes extends Zend_View_Helper_Abstract\n{\n    /** @var array */\n    private static $units = array('B&nbsp;', 'kB', 'MB', 'GB', 'TB');\n\n    /**\n     * Convert bytes to human readable format\n     *\n     * @param int $bytes\n     * @return string\n     */\n    public function formatBytes($bytes)\n    {\n        foreach (self::$units as $unit) {\n            if ($bytes < 100) {\n                return sprintf('%.2f %s', $bytes, $unit);\n            }\n\n            $bytes /= 1024;\n        }\n\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/GetAvatar.php",
    "content": "<?php\n/**\n * In the begining this was build for\n *         extending and getting the protected method from Gravatar _getAvatarUrl\n * But it can be used like a proxy helper to get the avatar link from different sources\n *\n */\nclass Zend_View_Helper_Gravatar extends Zend_View_Helper_HtmlElement\n{\n\n\t/**\n\t * URL to gravatar service\n\t */\n\tconst GRAVATAR_URL = 'http://www.gravatar.com/avatar';\n\t/**\n\t * Secure URL to gravatar service\n\t */\n\tconst GRAVATAR_URL_SECURE = 'https://secure.gravatar.com/avatar';\n\n\t/**\n\t * Gravatar rating\n\t */\n\tconst RATING_G  = 'g';\n\tconst RATING_PG = 'pg';\n\tconst RATING_R  = 'r';\n\tconst RATING_X  = 'x';\n\n\t/**\n\t * Default gravatar image value constants\n\t */\n\tconst DEFAULT_404       = '404';\n\tconst DEFAULT_MM        = 'mm';\n\tconst DEFAULT_IDENTICON = 'identicon';\n\tconst DEFAULT_MONSTERID = 'monsterid';\n\tconst DEFAULT_WAVATAR   = 'wavatar';\n\n\t/**\n\t * Options\n\t *\n\t * @var array\n\t */\n\tprotected $_options = array(\n    'img_size'    => 80,\n    'default_img' => self::DEFAULT_MM,\n    'rating'      => self::RATING_G,\n    'secure'      => null,\n\t);\n\n\t/**\n\t * Email Adress\n\t *\n\t * @var string\n\t */\n\tprotected $_email;\n\n\t/**\n\t * Attributes for HTML image tag\n\t *\n\t * @var array\n\t */\n\tprotected $_attribs;\n\n\t/**\n\t * Returns an avatar from gravatar's service.\n\t *\n\t * $options may include the following:\n\t * - 'img_size' int height of img to return\n\t * - 'default_img' string img to return if email adress has not found\n\t * - 'rating' string rating parameter for avatar\n\t * - 'secure' bool load from the SSL or Non-SSL location\n\t *\n\t * @see    http://pl.gravatar.com/site/implement/url\n\t * @see    http://pl.gravatar.com/site/implement/url More information about gravatar's service.\n\t * @param  string|null $email Email adress.\n\t * @param  null|array $options Options\n\t * @param  array $attribs Attributes for image tag (title, alt etc.)\n\t * @return Zend_View_Helper_Gravatar\n\t */\n\tpublic function gravatar($email = \"\", $options = array(), $attribs = array())\n\t{\n\t\t$this->setEmail($email);\n\t\t$this->setOptions($options);\n\t\t$this->setAttribs($attribs);\n\t\treturn $this;\n\t}\n\n\t/**\n\t * Configure state\n\t *\n\t * @param  array $options\n\t * @return Zend_View_Helper_Gravatar\n\t */\n\tpublic function setOptions(array $options)\n\t{\n\t\tforeach ($options as $key => $value) {\n\t\t\t$method = 'set' . str_replace(' ', '', ucwords(str_replace('_', ' ', $key)));\n\t\t\tif (method_exists($this, $method)) {\n\t\t\t\t$this->{$method}($value);\n\t\t\t}\n\t\t}\n\t\treturn $this;\n\t}\n\n\t/**\n\t * Get img size\n\t *\n\t * @return int The img size\n\t */\n\tpublic function getImgSize()\n\t{\n\t\treturn $this->_options['img_size'];\n\t}\n\n\t/**\n\t * Set img size in pixels\n\t *\n\t * @param int $imgSize Size of img must be between 1 and 512\n\t * @return Zend_View_Helper_Gravatar\n\t */\n\tpublic function setImgSize($imgSize)\n\t{\n\t\t$this->_options['img_size'] = (int) $imgSize;\n\t\treturn $this;\n\t}\n\n\t/**\n\t * Get default img\n\t *\n\t * @return string\n\t */\n\tpublic function getDefaultImg()\n\t{\n\t\treturn $this->_options['default_img'];\n\t}\n\n\t/**\n\t * Set default img\n\t *\n\t * Can be either an absolute URL to an image, or one of the DEFAULT_* constants\n\t *\n\t * @param string $defaultImg\n\t * @link http://pl.gravatar.com/site/implement/url More information about default image.\n\t * @return Zend_View_Helper_Gravatar\n\t */\n\tpublic function setDefaultImg($defaultImg)\n\t{\n\t\t$this->_options['default_img'] = urlencode($defaultImg);\n\t\treturn $this;\n\t}\n\n\t/**\n\t *  Set rating value\n\t *\n\t * Must be one of the RATING_* constants\n\t *\n\t * @param string $rating Value for rating. Allowed values are: g, px, r,x\n\t * @link http://pl.gravatar.com/site/implement/url More information about rating.\n\t * @throws Zend_View_Exception\n\t */\n\tpublic function setRating($rating)\n\t{\n\t\tswitch ($rating) {\n\t\t\tcase self::RATING_G:\n\t\t\tcase self::RATING_PG:\n\t\t\tcase self::RATING_R:\n\t\t\tcase self::RATING_X:\n\t\t\t\t$this->_options['rating'] = $rating;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\trequire_once 'Zend/View/Exception.php';\n\t\t\t\tthrow new Zend_View_Exception(sprintf(\n                'The rating value \"%s\" is not allowed',\n\t\t\t\t$rating\n\t\t\t\t));\n\t\t}\n\t\treturn $this;\n\t}\n\n\t/**\n\t * Get rating value\n\t *\n\t * @return string\n\t */\n\tpublic function getRating()\n\t{\n\t\treturn $this->_options['rating'];\n\t}\n\n\t/**\n\t * Set email adress\n\t *\n\t * @param string $email\n\t * @return Zend_View_Helper_Gravatar\n\t */\n\tpublic function setEmail( $email )\n\t{\n\t\t$this->_email = $email;\n\t\treturn $this;\n\t}\n\n\t/**\n\t * Get email adress\n\t *\n\t * @return string\n\t */\n\tpublic function getEmail()\n\t{\n\t\treturn $this->_email;\n\t}\n\n\t/**\n\t * Load from an SSL or No-SSL location?\n\t *\n\t * @param bool $flag\n\t * @return Zend_View_Helper_Gravatar\n\t */\n\tpublic function setSecure($flag)\n\t{\n\t\t$this->_options['secure'] = ($flag === null) ? null : (bool) $flag;\n\t\treturn $this;\n\t}\n\n\t/**\n\t * Get an SSL or a No-SSL location\n\t *\n\t * @return bool\n\t */\n\tpublic function getSecure()\n\t{\n\t\tif ($this->_options['secure'] === null) {\n\t\t\treturn (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off');\n\t\t}\n\t\treturn $this->_options['secure'];\n\t}\n\n\t/**\n\t * Get attribs of image\n\t *\n\t * Warning!\n\t * If you set src attrib, you get it, but this value will be overwritten in\n\t * protected method _setSrcAttribForImg(). And finally your get other src\n\t * value!\n\t *\n\t * @return array\n\t */\n\tpublic function getAttribs()\n\t{\n\t\treturn $this->_attribs;\n\t}\n\n\t/**\n\t * Set attribs for image tag\n\t *\n\t * Warning! You shouldn't set src attrib for image tag.\n\t * This attrib is overwritten in protected method _setSrcAttribForImg().\n\t * This method(_setSrcAttribForImg) is called in public method getImgTag().\n\n\t * @param array $attribs\n\t * @return Zend_View_Helper_Gravatar\n\t */\n\tpublic function setAttribs(array $attribs)\n\t{\n\t\t$this->_attribs = $attribs;\n\t\treturn $this;\n\t}\n\n\t/**\n\t * Get URL to gravatar's service.\n\t *\n\t * @return string URL\n\t */\n\tprotected function _getGravatarUrl()\n\t{\n\t\treturn ($this->getSecure() === false) ? self::GRAVATAR_URL : self::GRAVATAR_URL_SECURE;\n\t}\n\n\t/**\n\t * Get avatar url (including size, rating and default image oprions)\n\t *\n\t * @return string\n\t */\n\tprotected function _getAvatarUrl()\n\t{\n\t\t$src = $this->_getGravatarUrl()\n\t\t. '/'\n\t\t. md5($this->getEmail())\n\t\t. '?s='\n\t\t. $this->getImgSize()\n\t\t. '&d='\n\t\t. $this->getDefaultImg()\n\t\t. '&r='\n\t\t. $this->getRating();\n\t\treturn $src;\n\t}\n\n\t/**\n\t * Set src attrib for image.\n\t *\n\t * You shouldn't set a own url value!\n\t * It sets value, uses protected method _getAvatarUrl.\n\t *\n\t * If already exsist overwritten.\n\t */\n\tprotected function _setSrcAttribForImg()\n\t{\n\t\t$attribs        = $this->getAttribs();\n\t\t$attribs['src'] = $this->_getAvatarUrl();\n\t\t$this->setAttribs($attribs);\n\t}\n\n\t/**\n\t * Return valid image tag\n\t *\n\t * @return string\n\t */\n\tpublic function getImgTag()\n\t{\n\t\t$this->_setSrcAttribForImg();\n\t\t$html = '<img'\n\t\t. $this->_htmlAttribs($this->getAttribs())\n\t\t. $this->getClosingBracket();\n\n\t\treturn $html;\n\t}\n\n\t/**\n\t * Return valid image tag\n\t *\n\t * @return string\n\t */\n\tpublic function  __toString()\n\t{\n\t\treturn $this->getImgTag();\n\n\t}\n}\n\n\nclass Admin_View_Helper_GetAvatar extends Zend_View_Helper_Gravatar\n{\n\n\t/**\n\t * The main helper class witch is trigger back to gravatar method\n\t *\n\t * @param string $email\n\t * @param array $options\n\t * @return Zend_View_Helper_Gravatar\n\t */\n\tpublic function getAvatar($email = \"\", $options = array()) {\n\t\t$this->gravatar($email, $options);\n\t\t//parent::gravatar($email, $options);\n\t\treturn $this;\n\t}\n\n\t/**\n\t * Rewrite the __tostring class to get the avatar url\n\t *         this was thought as a little hack to acces the protected _getAvatarUrl Method\n\t *\n\t * @return string\n\t */\n\tpublic function __toString()\n\t{\n\t\treturn $this->_getAvatarUrl();\n\t}\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/ImageArchive.php",
    "content": "<?php\n\n/**\n * Image archive\n */\nclass Admin_View_Helper_ImageArchive extends Zend_View_Helper_Abstract\n{\n    /**\n     * Image archive\n     *\n     * @return string\n     */\n    public function imageArchive()\n    {\n        return $this->view->render('image/archive.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/ImageEditor.php",
    "content": "<?php\n\n/**\n * Image editor\n */\nclass Admin_View_Helper_ImageEditor extends Zend_View_Helper_Abstract\n{\n    /**\n     * Get image editor\n     *\n     * @param Newscoop\\Image\\Rendition $rendition\n     * @param Newscoop\\Image\\ImageInterface $image\n     * @return string\n     */\n    public function imageEditor(\\Newscoop\\Image\\Rendition $rendition, \\Newscoop\\Image\\ImageInterface $image)\n    {\n        $this->view->rendition = $rendition;\n        $this->view->image = $image;\n        return $this->view->render('image/editor.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/JQueryReady.php",
    "content": "<?php\n/**\n *\n * @package Newscoop\n * @author mihaibalaceanu\n * @uses Zend_Controller_Plugin_Abstract\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Doctrine\\DBAL\\Types\\BooleanType;\nclass Admin_View_Helper_JQueryReady extends Zend_View_Helper_Placeholder_Container_Standalone\n{\n\n    /**\n     * Registry key for placeholder\n     * @var string\n     */\n    protected $_regKey = 'Newscoop_View_Helper_JQueryReady';\n\n    /**\n     *\n     * the code formatting for document load ready around the scripts to be rendered\n     *\n     * @var string\n     */\n    protected $_scriptFormat = 'jQuery( function() { %s } )';\n\n    /**\n     * Override this cause we need some other escaping like json encode for variables\n     * @var bool\n     */\n    protected $_autoEscape = false;\n\n    /**\n     * This helper add a document.ready script type for jquery\n     * Retrieve placeholder for title element and optionally add new script\n     *\n     * @param  string $script\n     * @return Admin_View_Helper_JQueryReady\n     */\n    public function jQueryReady( $script = null )\n    {\n        if( is_string( $script ) ) {\n            $this->append( $script );\n        }\n        return $this;\n    }\n\n    /**\n     * Turn helper into string\n     *\n     * @return string\n     */\n    public function toString()\n    {\n        $output = '';\n        foreach( $this as $item ) {\n            $output .= $item;\n        }\n\n        $output = ( $this->_autoEscape ) ? $this->_escape( $output ) : $output;\n        return sprintf( $this->_scriptFormat, $output );\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/JQueryUtils.php",
    "content": "<?php\n/**\n *\n * @package Newscoop\n * @author mihaibalaceanu\n * @uses Zend_Controller_Plugin_Abstract\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nclass Admin_View_Helper_JQueryUtils\n{\n\n    /**\n     * Placeholder agregated object\n     * @var Admin_View_Helper_JQueryReady\n     */\n    protected $_placeholder = null;\n\n    /**\n     * @var array\n     */\n    private $_repo = array();\n\n    /**\n     * @return Admin_View_Helper_JQueryUtils\n     */\n    public function jQueryUtils()\n    {\n        return $this;\n    }\n\n    /**\n     * @param Admin_View_Helper_JQueryReady $placeholder\n     * @return Admin_View_Helper_JQueryUtils\n     */\n    public function setPlaceholder( $placeholder )\n    {\n        $this->_placeholder = $placeholder;\n    }\n\n    /**\n     * uses $.registry to store variables on namespace\n     * @param string $var switch to val if $var null\n     * @param string $val\n     */\n    public function registerVar( $var, $val=null, $placement=null )\n    {\n        !$var ? ( $this->_repo[] = $val ) : ( $this->_repo[ $var ] = $val );\n        switch( $placement )\n        {\n            case Zend_View_Helper_Placeholder_Container::PREPEND :\n                $placeMe = 'prepend';\n                break;\n            case Zend_View_Helper_Placeholder_Container::SET :\n                $placeMe = 'set';\n                break;\n            default :\n                $placeMe = 'append';\n        }\n        $this->_placeholder->$placeMe\n        (\n        \t\" jQuery.registry.set( '$var', \"\n        .   ( is_array($val) || is_object($val) ? json_encode( $val ) : ( is_string($val) ? \"'$val'\" : $val ) )\n        .\t\" ); \" );\n    }\n\n    /**\n     *\n     * @uses Admin_View_Helper_JQueryUtils::registerVar() with $placement null\n     * @param string $var\n     * @param string $val\n     */\n    public function  __set( $var, $val )\n    {\n        $this->registerVar( $var, $val );\n    }\n\n    /**\n     * get variable\n     * @param string $var\n     */\n    public function __get( $var )\n    {\n        return @$this->_repo[$var];\n    }\n\n    /**\n     * Turn helper into string\n     *\n     * @return string\n     */\n    public function __toString()\n    {\n        $x = '';\n        foreach( $this->_repo as $key => $val ) {\n            $x .= \" $key : $val ;\";\n        };\n        return $x;\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/Jsonified.php",
    "content": "<?php\n/**\n * Render actions view helper\n */\nclass Admin_View_Helper_Jsonified extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render actions\n     *\n     * @param array $p_inputs\n     * @param array $p_methods default empty array\n     * @return string\n     */\n    public function jsonified(array $p_input, array $p_methods = array())\n    {\n        if(count($p_methods))\n        {\n            $regex = '/\"('.implode($p_methods,'|').')\":\"([\\w\\-\\.]+)\"/i';\n            $replace = '\"$1\":$2';\n            return preg_replace($regex, $replace, json_encode($p_input));\n        }\n        else\n            return json_encode($p_input);\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/LinkArticle.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @subpackage Subscriptions\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n *\n *\n */\nuse Newscoop\\Entity\\Article;\n/**\n * Anchor for deleteing view helper\n */\nclass Admin_View_Helper_LinkArticle extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render actions\n     *\n     * @param array $actions\n     * @return void\n     */\n    public function linkArticle( Article $p_article)\n    {\n        $params = array(\n                    'f_publication_id'      => $p_article->getPublicationId(),\n                    'f_issue_number'        => $p_article->getIssueId(),\n                    'f_section_number'      => $p_article->getSectionId(),\n                    'f_article_number'      => $p_article->getId(),\n                    'f_language_id'         => $p_article->getLanguageId(),\n                    'f_language_selected'   => $p_article->getLanguageId(),\n                  );\n        return http_build_query($params);\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/LinkArticleObj.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @subpackage Subscriptions\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n *\n *\n */\n/**\n * Anchor for deleteing view helper\n */\nclass Admin_View_Helper_LinkArticleObj extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render actions\n     *\n     * @param array $actions\n     * @return void\n     */\n    public function linkArticleObj($p_article)\n    {\n        $params = array(\n\n                    'f_publication_id'      => $p_article->getPublicationId(),\n                    'f_issue_number'        => $p_article->getIssueNumber(),\n                    'f_section_number'      => $p_article->getSectionNumber(),\n                    'f_article_number'      => $p_article->getArticleNumber(),\n                    'f_language_id'         => $p_article->getLanguageId(),\n                    'f_language_selected'   => $p_article->getLanguageId(),\n                  );\n        return http_build_query($params);\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/LinkBan.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @subpackage Subscriptions\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n *\n *\n */\n\n/**\n * Anchor for deleteing view helper\n */\nclass Admin_View_Helper_LinkBan extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render actions\n     *\n     * @param array $actions\n     * @return void\n     */\n    public function linkBan( $p_url, $p_params = null)\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $params = array_merge(array(\n            'name'  => $translator->trans('Ban', array(), 'home'),\n            'title' => $translator->trans('Ban', array(), 'home'),\n            'class' => array('ban','confirm'),\n            'attributes' => array()\n        ),is_null($p_params)? array():$p_params);\n        //concatenating the class array into a class string\n        $params['class'] = implode(' ', $params['class']);\n        $this->view->urlOptions = array_merge(array('action' => 'toggle-ban', 'forum' => 2),$p_url);\n        foreach($params as $key => $value)\n            $this->view->$key = $value;\n        return $this->view->render('link-ban.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/LinkDelete.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @subpackage Subscriptions\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n *\n *\n */\n\n/**\n * Anchor for deleteing view helper\n */\nclass Admin_View_Helper_LinkDelete extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render actions\n     *\n     * @param array $actions\n     * @return void\n     */\n    public function linkDelete( $p_url, $p_params = null)\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $params = array_merge(array(\n            'name'  => $translator->trans('Delete'),\n            'title' => $translator->trans('Delete'),\n            'class' => array('delete','confirm'),\n            'attributes' => array()\n        ),is_null($p_params)? array():$p_params);\n        //concatenating the class array into a class string\n        $params['class'] = implode(' ', $params['class']);\n        $this->view->urlOptions = array_merge(array('action' => 'delete'),$p_url);\n        foreach($params as $key => $value)\n            $this->view->$key = $value;\n        return $this->view->render('link-delete.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/LinkEdit.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @subpackage Subscriptions\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n *\n *\n */\n\n/**\n * Anchor for deleteing view helper\n */\nclass Admin_View_Helper_LinkEdit extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render actions\n     *\n     * @param array $actions\n     * @return void\n     */\n    public function linkEdit( $p_url, $p_params = null)\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $params = array_merge(array(\n            'name'  => $translator->trans('Edit'),\n            'title' => $translator->trans('Edit'),\n            'class' => array('edit','confirm'),\n            'attributes' => array()\n        ),is_null($p_params)? array():$p_params);\n        //concatenating the class array into a class string\n        $params['class'] = implode(' ', $params['class']);\n        $this->view->urlOptions = array_merge(array('action' => 'edit'),$p_url);\n        foreach($params as $key => $value)\n            $this->view->$key = $value;\n        return $this->view->render('link-edit.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/MaxFileSize.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Get maximum upload file size\n */\nclass Admin_View_Helper_MaxFileSize extends Zend_View_Helper_Abstract\n{\n    /**\n     * Get maximum upload file size\n     *\n     * @return string\n     */\n    public function maxFileSize()\n    {   \n        $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n        $maxFileSize = $preferencesService->MaxUploadFileSize;\n        if (!$maxFileSize) {\n            $maxFileSize = ini_get('upload_max_filesize');\n        }\n\n        return strtolower((string) $maxFileSize) . 'b';\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/ModerateBodyComment.php",
    "content": "<?php\n\n/**\n * Render actions view helper\n */\nuse Newscoop\\Entity\\Comment;\n\nclass Admin_View_Helper_ModerateBodyComment extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render actions\n     *\n     * @param array $actions\n     * @return void\n     */\n    public function moderateBodyComment(Comment $comment)\n    {\n        $this->view->comment = $comment;\n        return $this->view->render('moderate-body-comment.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/ModerateSubjectComment.php",
    "content": "<?php\n\n/**\n * Render actions view helper\n */\nuse Newscoop\\Entity\\Comment;\n\nclass Admin_View_Helper_ModerateSubjectComment extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render actions\n     *\n     * @param array $actions\n     * @return void\n     */\n    public function moderateSubjectComment(Comment $comment)\n    {\n        $this->view->comment = $comment;\n        return $this->view->render('moderate-subject-comment.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/Plupload.php",
    "content": "<?php\n\n/**\n * Pluplad view helper\n */\nclass Admin_View_Helper_Plupload extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render Plupload script\n     *\n     * @param string $form\n     * @return void\n     */\n    public function plupload($form = '', array $config = array())\n    {\n        $this->view->plupload = (object) array_merge(array(\n            'form' => $form,\n            'url' => $this->view->url(array(\n                'plupload' => 1,\n            )),\n        ), $config);\n\n        echo $this->view->render('plupload.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/RenderActions.php",
    "content": "<?php\n\n/**\n * Render actions view helper\n */\nclass Admin_View_Helper_RenderActions extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render actions\n     *\n     * @param array|NULL $actions\n     * @return void\n     */\n    public function renderActions(array $actions = NULL)\n    {\n        if ($actions === NULL) {\n            $actions = $this->view->actions;\n        }\n\n        if (empty($actions)) {\n            return;\n        }\n\n        $navigation = new Zend_Navigation($actions);\n        $this->view->navigation()->menu()->setContainer($navigation);\n        echo $this->view->render('actions.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/RenderDatatable.php",
    "content": "<?php\n\n/**\n * Render Datatable view helper\n */\nclass Admin_View_Helper_RenderDatatable extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render datatable\n     *\n     * @param array|NULL $cols\n     * @return void\n     */\n    public function renderDatatable(array $cols = NULL)\n    {\n        if ($cols !== NULL) {\n            $this->view->cols = $cols;\n        }\n\n        echo $this->view->render('datatable.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/RenderDate.php",
    "content": "<?php\n\n/**\n * Render date view helper\n */\nclass Admin_View_Helper_RenderDate extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render date\n     *\n     * @param DateTime $date\n     * @return void\n     */\n    public function renderDate(\\DateTime $date)\n    {\n        echo '<time>';\n\n        $today = new \\DateTime('now');\n        if ($today->format('Y-m-d') === $date->format('Y-m-d')) {\n            echo $date->format('H:i');\n        } else if ($today->format('Y') === $date->format('Y')) {\n            echo $date->format('M d');\n        } else {\n            echo $date->format('M d Y');\n        }\n\n        echo '</time>';\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/RenderError.php",
    "content": "<?php\n\n/**\n * Render error view helper\n */\nclass Admin_View_Helper_RenderError extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render error message\n     *\n     * @param string $message\n     * @return void\n     */\n    public function renderError($error = NULL)\n    {\n        if ($error) {\n            $this->view->error = $error;\n        }\n\n        echo $this->view->render('error.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/RenderFilter.php",
    "content": "<?php\n\n/**\n * Render Filter view helper\n */\nclass Admin_View_Helper_RenderFilter extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render filter\n     *\n     * @param Zend_Form $filter\n     * @return void\n     */\n    public function renderFilter(Zend_Form $filter)\n    {\n        $filter->setAttrib('class', 'filter');\n        $this->view->filter = $filter;\n        echo $this->view->render('filter.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/RenderMessage.php",
    "content": "<?php\n\n/**\n * Render message view helper\n */\nclass Admin_View_Helper_RenderMessage extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render message\n     *\n     * @param string $message\n     * @return void\n     */\n    public function renderMessage($message, $type = 'info')\n    {\n        if (empty($message)) {\n            return;\n        }\n\n        $this->view->message = (string) $message;\n        $this->view->type = (string) $type;\n        echo $this->view->render('message.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/RenderNewsItem.php",
    "content": "<?php\n\n/**\n * Render NewsItem\n */\nclass Admin_View_Helper_RenderNewsItem extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render NewsItem\n     *\n     * @param Newscoop\\News\\NewsItem $item\n     * @return void\n     */\n    public function renderNewsItem(\\Newscoop\\News\\NewsItem $item)\n    {\n        $this->view->item = $item;\n        echo $this->view->render('news-item.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/RenderPackageItem.php",
    "content": "<?php\n\n/**\n * Render PackageItem\n */\nclass Admin_View_Helper_RenderPackageItem extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render PackageItem\n     *\n     * @param Newscoop\\News\\PackageItem $item\n     * @return void\n     */\n    public function renderPackageItem(\\Newscoop\\News\\PackageItem $item)\n    {\n        $this->view->item = $item;\n        echo $this->view->render('package-item.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/RenderPackageItemGroup.php",
    "content": "<?php\n\n/**\n * Render PackageItem Group\n */\nclass Admin_View_Helper_RenderPackageItemGroup extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render PackageItem Group\n     *\n     * @param Newscoop\\News\\Group $group\n     * @param Newscoop\\News\\PackageItem $item\n     * @return void\n     */\n    public function renderPackageItemGroup(\\Newscoop\\News\\Group $group, \\Newscoop\\News\\PackageItem $item)\n    {\n        $this->view->group = $group;\n        $this->view->item = $item;\n        echo $this->view->render('package-item-group.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/RenderPager.php",
    "content": "<?php\n\n/**\n * Render Pager view helper\n */\nclass Admin_View_Helper_RenderPager extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render paginator\n     *\n     * @param SimplePager $pager\n     * @return void\n     */\n    public function renderPager(SimplePager $pager)\n    {\n        $this->view->pager = $pager;\n        echo $this->view->render('pager.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/RenditionPreview.php",
    "content": "<?php\n\n/**\n * Rendition preview view helper\n */\nclass Admin_View_Helper_RenditionPreview extends Zend_View_Helper_Abstract\n{\n    /**\n     * Get rendition preview\n     *\n     * @param Newscoop\\Image\\Rendition $rendition\n     * @param int $width\n     * @param int $height\n     * @param Newscoop\\Image\\ImageInterface $image\n     * @return string\n     */\n    public function renditionPreview(\\Newscoop\\Image\\Rendition $rendition, $width, $height, \\Newscoop\\Image\\ImageInterface $image)\n    {\n        $this->view->rendition = $rendition;\n        $this->view->preview = $rendition->getPreview($width, $height);\n        $this->view->thumbnail = $this->view->preview->getThumbnail($image, Zend_Registry::get('container')->getService('image'));\n        $this->view->image = $image;\n        return $this->view->render('rendition/preview.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/Slideshow.php",
    "content": "<?php\n\n/**\n * Slideshow\n */\nclass Admin_View_Helper_Slideshow extends Zend_View_Helper_Abstract\n{\n    /**\n     * Get slideshow\n     *\n     * @param Newscoop\\Package\\Package $slideshow\n     * @return string\n     */\n    public function slideshow(\\Newscoop\\Package\\Package $slideshow)\n    {\n        $this->view->helperSlideshow = $slideshow;\n        return $this->view->render('slideshow/slideshow.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/SlideshowItem.php",
    "content": "<?php\n\n/**\n * Slideshow item view helper\n */\nclass Admin_View_Helper_SlideshowItem extends Zend_View_Helper_Abstract\n{\n    /**\n     * Get slideshow item\n     *\n     * @param Newscoop\\Package\\Item $item\n     * @return string\n     */\n    public function slideshowItem(\\Newscoop\\Package\\Item $item, $current = null)\n    {\n        $this->view->item = $item;\n        $this->view->current = $current;\n        return $this->view->render('slideshow/item.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/SlideshowItemPreview.php",
    "content": "<?php\n\n/**\n * Slideshow item preview\n */\nclass Admin_View_Helper_SlideshowItemPreview extends Zend_View_Helper_Abstract\n{\n    /**\n     * Get slideshow item preview\n     *\n     * @param Newscoop\\Package\\Item $item\n     * @return string\n     */\n    public function slideshowItemPreview(\\Newscoop\\Package\\Item $item)\n    {\n        $this->view->itemHelper = $item;\n        return $this->view->render('slideshow/item-preview.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/SlideshowsJson.php",
    "content": "<?php\n\n/**\n * Slideshows Json\n */\nclass Admin_View_Helper_SlideshowsJson extends Zend_View_Helper_Abstract\n{\n    /**\n     * Provides slideshows formated for json\n     *\n     * @param  array $slideshows\n     * @param  int   $width\n     * @param  int   $height\n     * @return array\n     */\n    public function SlideshowsJson(array $slideshows, $width = 150, $height = 150)\n    {\n        $view = $this->view;\n\n        return array_map(function ($slideshow) use ($width, $height, $view) {\n            return (object) array(\n                'id' => $slideshow->getId(),\n                'headline' => $view->escape($slideshow->getHeadline()),\n                'itemsCount' => $slideshow->getItemsCount(),\n                'slug' => $slideshow->getSlug(),\n                'items' => array_map(function ($item) use ($width, $height) {\n                    return (object) array(\n                        'caption' => $item->getCaption(),\n                        'thumbnail' => $item->getRendition()->getPreview($width, $height)->getThumbnail($item->getImage(), Zend_Registry::get('container')->getService('image')),\n                    );\n                }, array_filter($slideshow->getItems()->toArray(), function ($item) { return $item->isImage(); })),\n            );\n        }, $slideshows);\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/StringLimit.php",
    "content": "<?php\n/**\n * Render actions view helper\n */\nclass Admin_View_Helper_StringLimit extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render actions\n     *\n     * @param array $p_inputs\n     * @param array $p_methods default empty array\n     * @return arrat $\n     */\n    public function stringLimit($p_string, $p_limit = 140, $p_trailing = '...' )\n    {\n        $str = substr($p_string, 0, $p_limit);\n        if (strlen($p_string) > $p_limit) {\n            $str .= $p_trailing;\n        }\n        return $str;\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/ToggleCheckbox.php",
    "content": "<?php\n/**\n * Render actions view helper\n */\nclass Admin_View_Helper_ToggleCheckbox extends Zend_View_Helper_Abstract\n{\n    /**\n     * Render actions\n     *\n     * @param array $actions\n     * @return void\n     */\n    public function toggleCheckbox()\n    {\n        return $this->view->render('toggle-checkbox.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/helpers/VideoPreview.php",
    "content": "<?php\n\n/**\n * Video preview\n */\nclass Admin_View_Helper_VideoPreview extends Zend_View_Helper_Abstract\n{\n    /**\n     * Get video preview\n     *\n     * @param  string $url\n     * @param  int    $width\n     * @param  int    $height\n     * @return string\n     */\n    public function videoPreview($url, $width = 150, $height = 150)\n    {\n        $this->view->width = $width;\n        $this->view->height = $height;\n        $this->view->code = array_pop(explode('/', trim(str_replace('watch?v=', '', $url), '/')));\n        if (strpos($url, 'vimeo') !== false || is_numeric($url)) {\n            return $this->view->render('slideshow/vimeo-preview.phtml');\n        } else {\n            return $this->view->render('slideshow/youtube-preview.phtml');\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/_p/generic-datatable.phtml",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n?>\n<table class=\"datatable\" style=\"position: relative; width: 100%;\" cellspacing=\"0\" cellpadding=\"0\">\n\t<thead>\n\t\t<tr>\n            <?php foreach( $this->columns as $col ) : ?>\n    \t\t<th><?php echo $col; ?></th>\n            <?php endforeach; ?>\n\t\t</tr>\n\t</thead>\n\t<tbody>\n    \t<tr>\n        \t<td class=\"message\" colspan=\"<?php echo sizeof( $this->cols ); ?>\">\n        \t    <?php echo $translator->trans('Loading..', array(), 'api'); ?>\n        \t</td>\n    \t</tr>\n\t</tbody>\n</table>\n\n<script type=\"text/javascript\">\n$(function() \n{\n    var datatable = $( 'table.datatable' )\n        .wrap( $('<div />').addClass('table') )\n        .wrap( $('<div />').addClass('smartlist') )\n        .css\n        ({ \n           \tposition : 'relative',\n        \twidth\t : '100%'\n        })\n        .dataTable\n        (\n            <?php echo $this->jsonified( $this->options, array( 'fnRowCallback', 'fnDrawCallback', 'fnServerData') );?>\n        );\n\t$( document.body ).data( \"newscoop.themesDatatable\", datatable )\n});\n</script>\n\n\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/acl/edit.phtml",
    "content": "<?php \n$translator = \\Zend_Registry::get('container')->getService('translator');\nforeach ($this->groups as $group => $groupName) { ?>\n<div class=\"resource-group <?php echo $group; ?>\">\n    <h2><?php echo $groupName; ?></h2>\n\n    <?php foreach ($this->resources[$group] as $resource => $resourceName) {\n    if (!isset($this->actions[$resource])) { // skip empty\n        continue;\n    } ?>\n    <h3><?php echo $resourceName; ?></h3>\n    <ul class=\"resource <?php echo $resource; ?>\">\n        <li class=\"all\">\n            <input type=\"checkbox\" id=\"_<?php echo $resource; ?>_all\" class=\"toggle\" /> <label for=\"_<?php echo $resource; ?>_all\"><?php echo $translator->trans('Check all', array(), 'user_types'); ?></label>\n        </li>\n        <?php foreach ($this->actions[$resource] as $action) { ?>\n        <li class=\"<?php echo $this->acl->isAllowed($this->role, $resource, $action) ? '' : 'deny'; ?>\">\n            <input type=\"checkbox\" id=\"_<?php echo $resource, '_', $action; ?>\" name=\"<?php echo $resource; ?>\" value=\"<?php echo $action; ?>\" <?php echo $this->acl->isAllowed($this->role, $resource, $action) ? ' checked=\"checked\"' : ''; ?> />\n            <label for=\"_<?php echo $resource, '_', $action; ?>\"><?php echo isset($this->actionNames[$action]) ? $this->actionNames[$action] : $translator->trans($action, array(), 'user_types'); ?></label>\n        </li>\n        <?php } ?>\n    </ul>\n    <?php } ?>\n</div>\n<?php } ?>\n\n<script type=\"text/javascript\">\n$(function() {\n    // check/uncheck all items\n    $('input:checkbox.toggle').change(function() {\n        var checked = $(this).attr('checked');\n        var context = $(this).closest('ul');\n        $('input:checkbox', context).not('.toggle').each(function() {\n            $(this).attr('checked', checked != undefined);\n            $(this).change();\n        });\n    }).each(function() { // init\n        var context = $(this).closest('ul');\n        $(this).attr('checked', $('input:checkbox', context).not('.toggle').size() == $('input:checkbox:checked', context).not('.toggle').size());\n    });\n\n    $('.resource-group').each(function() {\n        $(this).accordion({\n            header: 'h3',\n            autoHeight: false\n        });\n    });\n\n    $('.resource input:checkbox').not('.toggle').change(function(e) {\n        e.preventDefault();\n\n        var input = $(this);\n        var type = this.checked ? 'allow' : 'deny';\n        var resource = input.attr('name');\n        var action = input.val();\n        var context = input.closest('ul');\n\n        if (type == 'deny') {\n            input.closest('li').addClass('deny');\n        } else {\n            input.closest('li').removeClass('deny');\n        }\n\n        $.post(\"<?php echo $this->url(array(\n            'module' => 'admin',\n            'controller' => 'acl',\n            'action' => 'edit',\n            'format' => 'json',\n        )); ?>\", {\n            'type': type,\n            'resource': resource,\n            'role': <?php echo $this->role->getRoleId(); ?>,\n            'action': action\n        }, function(data, textStatus, jqXHR) {\n            if (data.error) {\n                flashMessage(<?php echo json_encode($translator->trans('Error: ', array(), 'user_types')); ?> + data.error, 'error');\n                input.closest('li').removeClass('deny');\n            } else {\n                flashMessage(<?php echo json_encode($translator->trans('Permissions updated', array(), 'user_types')); ?>);\n            }\n        }, 'json');\n\n        // update check all checkbox on item change\n        $('input:checkbox.toggle', context).attr('checked', $('input:checkbox', context).not('.toggle').size() == $('input:checkbox:checked', context).not('.toggle').size());\n    });\n});\n</script>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/acl/form.phtml",
    "content": "<?php echo $this->form; ?>\n\n<script type=\"text/javascript\">\n$(function() {\n    // list actions per resource\n    var actions_default = $('select[name=action]').html();\n    $('select[name=resource]').change(function() {\n        var resource = $(this).val();\n        var actions = $('select[name=action]', $(this).closest('dl')).first();\n\n        // reset\n        actions.html(actions_default);\n\n        if (resource == '') { // show all\n            return;\n        }\n\n        // hide actions not used for resource\n        $.getJSON('<?php echo $this->url(array('action' => 'actions', 'controller' => 'acl', 'format' => 'json')); ?>', {\n            'resource': resource\n        }, function(data) {\n            $('option', actions).each(function() {\n                var option = $(this);\n                if (option.val() != '' && $.inArray(option.val(), data.actions) < 0) {\n                    option.detach();\n                }\n            });\n        });\n    });\n});\n</script>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/actions.phtml",
    "content": "<div class=\"actions\">\n    <?php echo $this->navigation()->menu()->render(); ?>\n</div>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/application/help.phtml",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans('Help', array(), 'help').' - Newscoop Admin', 'SET'); ?>\n\n<img src=\"<?php echo $this->baseUrl('/admin-style/images/newscoop_logo_big.png') ?>\" style=\"float:left;\">\n\n<dl class=\"metadata\">\n  <dt><?php echo $translator->trans('Version', array(), 'help'); ?>:</dt> <dd><?php echo $this->version; ?></dd>\n  <dt><?php echo $translator->trans('REST API Version', array(), 'help'); ?>:</dt> <dd><?php echo $this->api_version; ?> (<a href=\"/documentation/rest-api/\"><?php echo $translator->trans('Documentation', array(), 'help'); ?></a>)</dd>\n  <dt><?php echo $translator->trans('Release date', array(), 'help'); ?>:</dt> <dd><?php echo $this->date; ?></dd>\n</dl>\n\n<div class=\"clear\"></div>\n\n<ul class=\"help\">\n  <li><p><?php echo $translator->trans(\"Welcome to the Newscoop help page. Whether you're just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals\", array(), 'help'); ?><br /><a href=\"http://www.sourcefabric.org/en/newscoop/manuals\" target=\"_blank\">http://www.sourcefabric.org/en/newscoop/manuals</a></p></li>\n\n  <li><p><?php echo $translator->trans('Alternatively, you can ask a question in our forums at', array(), 'help'); ?> <a href=\"http://forum.sourcefabric.org/\" target=\"_blank\">http://forum.sourcefabric.org</a> <?php echo $translator->trans('or suggest improvements in our bug tracker at', array(), 'help'); ?> <a href=\"http://dev.sourcefabric.org/\" target=\"_blank\">http://dev.sourcefabric.org/</a>.</p></li>\n\n  <li><p><?php echo $translator->trans('To upgrade Newscoop please visit our website', array(), 'help'); ?> <a href=\"http://www.sourcefabric.org/en/newscoop/download/\" target=\"_blank\">http://www.sourcefabric.org/en/newscoop/download/</a>. <?php echo $translator->trans('Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.', array(), 'help'); ?> <?php echo $translator->trans('Talk to us today', array(), 'help'); ?> <a href=\"https://www.sourcefabric.org/en/home/contact/\" target=\"_blank\">https://www.sourcefabric.org/en/home/contact/</a> <?php echo $translator->trans('and help us support quality, independent journalism.', array(), 'help'); ?></p></li>\n\n  <li><p><?php echo $translator->trans('To support us in other ways, visit our Community page', array(), 'help'); ?> <a href=\"https://www.sourcefabric.org/en/home/help/\" target=\"_blank\">https://www.sourcefabric.org/en/home/help/</a>.</p></li>\n</ol>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/auth/login.phtml",
    "content": "<h1><?php $translator = \\Zend_Registry::get('container')->getService('translator'); echo $translator->trans('Login'); ?></h1>\n\n<?php $this->renderError(); ?>\n\n<?php echo $this->form->setAction('')->render(); ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/blog/index.phtml",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans('Blog management', array(), 'articles').' - Newscoop Admin', 'SET'); ?>\n\n<?php echo $this->form; ?>\n\n<?php $this->list->render(); ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/blog/nosection.phtml",
    "content": "<?php \n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans('Blog management', array(), 'articles').' - Newscoop Admin', 'SET'); ?>\n\n<p>You have no blog assigned to you. Please contact redaction to create blog for you.</p>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/comment/add.phtml",
    "content": "<h1><?php $translator = \\Zend_Registry::get('container')->getService('translator'); echo $translator->trans('Add new comment', array(), 'comments'); ?></h1>\n\n<?php echo $this->form; ?>"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/comment/edit.phtml",
    "content": "<h1>Composite Zend Form Elements</h1>\n<?php echo $this->form; ?>\n\n    <script type=\"text/javascript\" src=\"//ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js\"></script>\n\n<script type=\"text/javascript\">\n$(function()\n{\n    $(\"input\").blur(function()\n    {\n        var formElementId = $(this).parent().prev().find('label').attr('for');\n\n        doValidation(formElementId);\n    });\n});\nfunction doValidation(id)\n{\n    var url = '/index/validateform'\n    var data = {};\n    $(\"input\").each(function()\n    {\n        data[$(this).attr('name')] = $(this).val();\n    });\n    $.post(url,data,function(resp)\n    {\n        $(\"#\"+id).parent().find('.errors').remove();\n        $(\"#\"+id).parent().append(getErrorHtml(resp[id], id));\n    },'json');\n}\nfunction getErrorHtml(formErrors , id)\n{\n    var o = '<ul id=\"errors-'+id+'\" class=\"errors\">';\n    for(errorKey in formErrors)\n    {\n        o += '<li>' + formErrors[errorKey] + '</li>';\n    }\n    o += '</ul>';\n    return o;\n}\n\n</script>"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/comment/list.phtml",
    "content": "<?php print_r($this->result); ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/comment/set-status.phtml",
    "content": "\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/comment-acceptance/add.phtml",
    "content": "<h1><?php $translator = \\Zend_Registry::get('container')->getService('translator'); echo $translator->trans('Add new acceptance criteria', array(), 'comments'); ?></h1>\n\n<?php echo $this->form; ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/comment-acceptance/edit.phtml",
    "content": "<h1><?php $translator = \\Zend_Registry::get('container')->getService('translator'); echo $translator->trans('Edit acceptance criteria', array(), 'comments'); ?></h1>\n\n<?php echo $this->form; ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/comment-acceptance/table.phtml",
    "content": "<h2><?php echo $this->name; ?></h2>\n<h1><?php $translator = \\Zend_Registry::get('container')->getService('translator'); echo $translator->trans('Comment Acceptance', array(), 'comments'); ?></h1>\n\n<?php $this->renderDatatable(); ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/comment-commenter/add.phtml",
    "content": "<h1><?php $translator = \\Zend_Registry::get('container')->getService('translator'); \necho $translator->trans('Add new comment commenter', array(), 'comments'); ?></h1>\n\n<?php echo $this->form; ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/comment-commenter/edit.phtml",
    "content": "<h1><?php $translator = \\Zend_Registry::get('container')->getService('translator'); \necho $translator->trans('Change subscriber information', array(), 'comments'); ?></h1>\n\n<?php echo $this->form; ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/comment-commenter/index.phtml",
    "content": "<h2><?php echo $this->name; ?></h2>\n<h1><?php $translator = \\Zend_Registry::get('container')->getService('translator'); \necho $translator->trans('Commenter'); ?></h1>\n\n<?php $this->renderDatatable(); ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/comment-commenter/toggle-ban.phtml",
    "content": "<?php $translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans('User ban settings', array(), 'comments').' - Newscoop Admin', 'SET'); ?>\n\n<?php echo($translator->trans(\"Bans can be applied to a user's username, email address or IP address.\", array(), 'comments')); ?>\n\n<?php echo $this->form; ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/datatable.phtml",
    "content": "<?php $translator = \\Zend_Registry::get('container')->getService('translator'); ?>\n<table class=\"datatable\" cellspacing=\"0\" cellpadding=\"0\">\n<thead>\n<tr>\n    <?php foreach ($this->cols as $col) { ?>\n    <th><?php echo $col; ?></th>\n    <?php } ?>\n</tr>\n</thead>\n<tbody>\n<tr>\n    <td class=\"message\" colspan=\"<?php echo sizeof($this->cols); ?>\"><?php echo $translator->trans('Loading..', array(), 'api'); ?></td>\n</tr>\n</tbody>\n</table>\n<script type=\"text/javascript\">\nvar datatable;\n$(function() {\n    datatable = $('table.datatable')\n        .wrap($('<div />').addClass('table')).wrap($('<div />').addClass('smartlist'))\n        .css('position', 'relative').css('width', '100%')\n        .dataTable(\n            <?php echo $this->jsonified($this->iOptions, array('fnRowCallback', 'fnDrawCallback', 'fnServerData','fnInitComplete'));?>\n        );\n});\n</script>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/error/deny.phtml",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans('Access denied').' - Newscoop Admin', 'SET'); ?>\n\n<p><?php echo $this->escape($this->message); ?></p>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/error/index.phtml",
    "content": "<br /><br /><center>View script for controller <b>Error</b> and script/action name <b>index</b></center>"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/error.phtml",
    "content": "<?php if ($this->error) { ?>\n<div class=\"message error\">\n    <p><?php echo $this->error; ?></p>\n</div>\n<?php } ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/feedback/set-status.phtml",
    "content": "\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/feedback/table.phtml",
    "content": "<?php\n    /* @var Zend_View_Helper_HeadLink */\n    $headStyle = $this->headLink();\n    $headStyle->appendStylesheet($this->baseUrl('/admin-style/comments.css'));\n    $headStyle->offsetSetStylesheet('table', '');\n    $translator = \\Zend_Registry::get('container')->getService('translator');\n?>\n<?php $this->headScript()->appendFile($this->baseUrl('/js/jquery/doT.js')); ?>\n<?php $this->headScript()->appendFile($this->baseUrl('/js/jquery/jquery.ba-iff.js')); ?>\n<?php $this->headScript()->appendFile($this->baseUrl('/js/jquery/jquery.version.js')); ?>\n<?php $this->headScript()->appendFile($this->baseUrl('/js/jquery/feedback.js')); ?>\n\n<?php $this->headTitle($translator->trans('Feedback Messages', array(), 'feedback').' - Newscoop Admin', 'SET'); ?>\n<script>\n    function putGS(str) {\n        var msg = serverObj.translateObj[serverObj.languageObj.indexOf(str)]\n        for(i=1, counti=arguments.length; i<counti; i++) {\n            msg = msg.replace(new RegExp(\"\\\\$\"+i,\"g\"),arguments[i]);\n        }\n        return msg;\n    }\n    var serverObj = {};\n    serverObj.security = {};\n    serverObj.security = {<?php echo SecurityToken::JsParameter(); ?>};\n\n    serverObj.languageObj = [\n        'Search',\n        'Messages updated.',\n        'Messages deleted.',\n        'Messages status change to $1.',\n        'Message updated.',\n        'Message deleted.',\n        'Message status change to $1.',\n        'Change selected messages status',\n        'Actions',\n        'New',\n        'Processed',\n        'Starred',\n        'Deleted',\n        'Unable to reach Newscoop. Please check your internet connection.',\n        'You are about to permanently delete a message.',\n        'You are about to permanently delete multiple messages.',\n        'Are you sure you want to do it?'\n    ];\n    \n    serverObj.translateObj = [\n        '<?php echo $translator->trans('Search'); ?>',\n        '<?php echo $translator->trans('Messages updated.', array(), 'feedback'); ?>',\n        '<?php echo $translator->trans('Messages deleted.', array(), 'feedback'); ?>',\n        '<?php echo $translator->trans('Messages status change to $1.', array(), 'feedback'); ?>',\n        '<?php echo $translator->trans('Message updated.', array(), 'feedback'); ?>',\n        '<?php echo $translator->trans('Message deleted.', array(), 'feedback'); ?>',\n        '<?php echo $translator->trans('Message status change to $1.', array(), 'feedback'); ?>',\n        '<?php echo $translator->trans('Change selected messages status', array(), 'feedback'); ?>',\n        '<?php echo $translator->trans('Actions');?>',\n        '<?php echo $translator->trans('New'); ?>',\n        '<?php echo $translator->trans('Processed', array(), 'feedback'); ?>',\n        '<?php echo $translator->trans('Starred', array(), 'feedback'); ?>',\n        '<?php echo $translator->trans('Deleted', array(), 'feedback'); ?>',\n        '<?php echo $translator->trans('Unable to reach Newscoop. Please check your internet connection.', array(), 'feedback'); ?>',\n        <?php echo json_encode($translator->trans(\"You are about to permanently delete a message.\", array(), 'feedback')); ?>,\n        <?php echo json_encode($translator->trans(\"You are about to permanently delete multiple messages.\", array(), 'feedback')); ?>,\n        <?php echo json_encode($translator->trans(\"Are you sure you want to do it?\", array(), 'feedback')); ?>\n    ];\n</script>\n<table>\n  <tr>\n  </tr>\n</table>\n\n<script id=\"comment-tmpl\" type=\"text/html\">\n<td colspan=\"4\">\n  <table cellspacing=\"0\" cellpadding=\"0\" style=\"width:100%\">\n    <tbody>\n      <tr>\n        <td class=\"commentId sorting_1\">\n          <input type=\"checkbox\" name=\"index[]\" value=\"{{message.id}}\" class=\"table-checkbox\">\n          <span class=\"index\">{{id}}.</span>\n        </td>\n        <td class=\"commentUser\">\n          <div class=\"commentUserHolder\">\n            <div {% if (user.is_banned) %}class=\"user-blocked-avatar\"{% endif %}>\n              <img src=\"{{user.avatar}}\">\n            </div>\n            <p>\n            <p {% if (user.is_banned) %}class=\"user-blocked-avatar\"{% endif %}><a target=\"_blank\" href=\"{{user.userUrl}}\"><b>{{user.username}}</b></a></p>\n            <p>{{user.name}}</p>\n\n            <p><a href=\"mailto:{{user.email}}\">{{user.email}}</a></p>\n            <p><a href=\"{{user.banurl}}\" class=\"banUser\"><span><?php echo $translator->trans('Ban/Unban user', array(), 'feedback'); ?></span></a></p>\n            </p>\n          </div>\n        </td>\n        <td class=\"commentMessage\">\n          <div class=\"dateCommentHolder\">\n            <h4>\n              <span>{{message.created.date}} <?php echo $translator->trans('at', array(), 'feedback'); ?> {{message.created.time}}</span>\n              <span class=\"commentSubject\">{{message.subject}}</span>\n            </h4>\n            <p class=\"commentBody\">{{message.message}}</p>\n            {% if (attachment.type == 'image') %}\n\t\t\t\t<div style=\"border: 1px solid #000000; width: 100%; background-color: #ffffff; padding: 2px;\">\n\t\t\t\t<span style=\"background-color: #f0f0f0; display: block; padding: 2px; font-weight: bold;\"><?php echo $translator->trans('Attachment', array(), 'feedback'); ?></span>\n\t\t\t\t<img src=\"{{attachment.thumbnail}}\" style=\"margin: 4px; float: left; border: 1px solid #000000;\">\n\t\t\t\t<p>{{attachment.name}}</p>\n\t\t\t\t{% if (attachment.status == 'unapproved') %}\n\t\t\t\t\t<div class=\"approval\">\n\t\t\t\t\t<form action=\"{{attachment.approve_url}}\">\n\t\t\t\t\t\t<input type=\"hidden\" name=\"attachment_type\" value=\"{{attachment.type}}\" />\n\t\t\t\t\t\t<input type=\"hidden\" name=\"attachment_id\" value=\"{{attachment.id}}\" />\n\t\t\t\t\t\t<?php echo SecurityToken::FormParameter(); ?>\n\t\t\t\t\t\t<div class=\"buttonBar\">\n\t\t\t\t\t\t<input type=\"submit\" value=\"<?php echo $translator->trans('Approve', array(), 'feedback'); ?>\" class=\"button\">\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</form>\n\t\t\t\t\t</div>\n\t\t\t\t{% endif %}\n\t\t\t\t{% if (attachment.status == 'approved') %}\n\t\t\t\t\t<?php echo $translator->trans('Approved.', array(), 'feedback'); ?>\n\t\t\t\t{% endif %}\n\t\t\t\t<div style=\"clear: both;\"></div>\n\t\t\t\t</div>\n            {% endif %}\n            {% if (attachment.type == 'document') %}\n\t\t\t\t<div style=\"border: 1px solid #000000; width: 100%; background-color: #ffffff; padding: 2px;\">\n\t\t\t\t<span style=\"background-color: #f0f0f0; display: block; padding: 2px; font-weight: bold;\"><?php echo $translator->trans('Attachment', array(), 'feedback'); ?></span>\n\t\t\t\t<img src=\"<?php echo $this->baseUrl('/admin-style/images/pdf.png'); ?>\" style=\"width: 60px; margin: 4px; float: left; border: 1px solid #000000;\">\n\t\t\t\t<p>{{attachment.name}}</p>\n\t\t\t\t{% if (attachment.status == 'unapproved') %}\n\t\t\t\t\t<div class=\"approval\">\n\t\t\t\t\t<form action=\"{{attachment.approve_url}}\">\n\t\t\t\t\t\t<input type=\"hidden\" name=\"attachment_type\" value=\"{{attachment.type}}\" />\n\t\t\t\t\t\t<input type=\"hidden\" name=\"attachment_id\" value=\"{{attachment.id}}\" />\n\t\t\t\t\t\t<?php echo SecurityToken::FormParameter(); ?>\n\t\t\t\t\t\t<div class=\"buttonBar\">\n\t\t\t\t\t\t<input type=\"submit\" value=\"<?php echo $translator->trans('Approve', array(), 'feedback'); ?>\" class=\"button\">\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</form>\n\t\t\t\t\t</div>\n\t\t\t\t{% endif %}\n\t\t\t\t{% if (attachment.status == 'approved') %}\n\t\t\t\t\t<?php echo $translator->trans('Approved.', array(), 'feedback'); ?>\n\t\t\t\t{% endif %}\n\t\t\t\t<div style=\"clear: both;\"></div>\n\t\t\t\t</div>\n            {% endif %}\n            {% if (attachment.type == 'none') %}\n\t\t\t\t<div style=\"border: 1px solid #000000; width: 100%; background-color: #ffffff; padding: 2px;\">\n\t\t\t\t<span style=\"background-color: #f0f0f0; display: block; padding: 2px; font-weight: bold;\"><?php echo $translator->trans('No attachment', array(), 'feedback'); ?></span>\n\t\t\t\t<div style=\"clear: both;\"></div>\n\t\t\t\t</div>\n            {% endif %}\n          </div>\n\n          <div class=\"dateCommentHolderReply\">\n            <fieldset class=\"content-reply\" style=\"display:none;\">\n              <h3><?php echo $translator->trans('Reply to message', array(), 'feedback'); ?></h3>\n              <form action=\"{{message.action.reply}}\">\n              <input type=\"hidden\" name=\"parent\" value=\"{{message.id}}\" />\n              <?php echo SecurityToken::FormParameter(); ?>\n              <label><?php echo $translator->trans('Subject'); ?></label>\n              <input name=\"subject\" type=\"text\" class=\"input_text\">\n              <label><?php echo $translator->trans('Message', array(), 'feedback'); ?></label>\n              <textarea name=\"message\" class=\"input_text_area\"></textarea>\n              <div class=\"buttonBar\">\n                <input type=\"button\" value=\"<?php echo $translator->trans('Cancel'); ?>\" class=\"button reply-cancel\">\n                <input type=\"submit\" value=\"<?php echo $translator->trans('Submit'); ?>\" class=\"button\">\n              </div>\n              </form>\n            </fieldset>\n          </div>\n        </td>\n        <td>\n          <div class=\"commentArticleHolder\">\n            <p>\n\t\t\t\t<a href=\"{{ message.article.url }}\" class=\"articleLink\">{{ message.article.name }}</a>\n\t\t\t\t<br>\n\t\t\t\t<span>{{ message.publication }}; <b><?php echo $translator->trans('Section'); ?></b> {{ message.section }}</span>\n            </p>\n            <p><span>URL: <a href=\"{{ message.url }}\">{{message.url}}</a></span></p>\n          </div>\n        </td>\n      </tr>\n    </tbody>\n  </table>\n  <div class=\"commentBtns\">\n    <ul>\n      <li>\n        <input type=\"radio\" name=\"action_comment_{{message.id}}\" class=\"action new\" id=\"pending_{{message.id}}\" value=\"pending\"/>\n        <label for=\"pending_{{message.id}}\"><?php echo $translator->trans('New'); ?></label>\n        &nbsp;&nbsp;\n      </li>\n\n      <li>\n        <input type=\"radio\" name=\"action_comment_{{message.id}}\" class=\"action processed\" id=\"processed_{{message.id}}\" value=\"processed\"/>\n        <label for=\"processed_{{message.id}}\"><?php echo $translator->trans('Processed', array(), 'feedback'); ?></label>\n        &nbsp;&nbsp;\n      </li>\n      <li>\n        <input type=\"radio\" name=\"action_comment_{{message.id}}\" class=\"action starred\" id=\"starred_{{message.id}}\" value=\"starred\" style=\"height: auto\"/>\n        <label for=\"starred_{{message.id}}\"><?php echo $translator->trans('Star', array(), 'feedback'); ?></label>\n        &nbsp;&nbsp;\n      </li>\n\n\n      <li><a href=\"javascript:;\" class=\"actionButton action-reply\"><?php echo $translator->trans('Reply', array(), 'feedback'); ?></a></li>\n      <li><a href=\"javascript:;\" id=\"deleted_{{message.id}}\" class=\"actionButton action\"><?php echo $translator->trans('Delete'); ?></a></li>\n\n    </ul>\n  </div>\n</td>\n<td style=\"display: none;\"></td>\n<td style=\"display: none;\"></td>\n<td style=\"display: none;\"></td>\n</script>\n\n<div class=\"wrapper\">\n  <div class=\"ui-widget-content small-block block-shadow commentsHolder\">\n    <div class=\"padded clearfix inner-tabs\">\n      <div class=\"tabs\">\n        <div id=\"tabs-1\">\n          <div id=\"showComments\">\n            <fieldset><legend><?php echo $translator->trans('Show'); ?></legend>\n            <ul class=\"status_filter\">\n              <li class=\"published\" style=\"display: none;\">\n                <input type=\"checkbox\" id=\"show_published\" value=\"approved\"> <label for=\"show_published\"><?php echo $translator->trans('Published'); ?></label>\n              </li>\n              <li class=\"new\">\n                <input type=\"checkbox\" id=\"show_new\" value=\"pending\"> <label for=\"show_new\"><?php echo $translator->trans('New'); ?></label>\n              </li>\n              <li class=\"approved\">\n                <input type=\"checkbox\" id=\"show_processed\" value=\"processed\"> <label for=\"show_processed\"><?php echo $translator->trans('Processed', array(), 'feedback'); ?></label>\n              </li>\n              <li class=\"hidden\">\n                <input type=\"checkbox\" id=\"show_starred\" value=\"starred\"> <label for=\"show_starred\"><?php echo $translator->trans('Starred', array(), 'feedback'); ?></label>\n              </li>\n            </ul>\n            <br>\n            <ul class=\"attachment_filter\">\n              <li class=\"none\">\n                <input type=\"checkbox\" id=\"show_none\" value=\"none\"> <label for=\"show_none\"><?php echo $translator->trans('With no attachment', array(), 'feedback'); ?></label>\n              </li>\n              <li class=\"image\">\n                <input type=\"checkbox\" id=\"show_image\" value=\"image\"> <label for=\"show_image\"><?php echo $translator->trans('With image attachment', array(), 'feedback'); ?></label>\n              </li>\n              <li class=\"document\">\n                <input type=\"checkbox\" id=\"show_document\" value=\"document\"> <label for=\"show_document\"><?php echo $translator->trans('With document attachment', array(), 'feedback'); ?></label>\n              </li>\n            </ul>\n            </fieldset>\n          </div>\n          <?php $this->renderDatatable(); ?>\n        </div>\n      </div>\n    </div>\n  </div>\n</div>\n<div id=\"fancybox-tmp\"></div>\n<div id=\"fancybox-loading\">\n  <div></div>\n</div>\n<div id=\"fancybox-overlay\"></div>\n<div id=\"fancybox-wrap\">\n  <div id=\"fancybox-outer\">\n    <div class=\"fancybox-bg\" id=\"fancybox-bg-n\"></div>\n    <div class=\"fancybox-bg\" id=\"fancybox-bg-ne\"></div>\n    <div class=\"fancybox-bg\" id=\"fancybox-bg-e\"></div>\n    <div class=\"fancybox-bg\" id=\"fancybox-bg-se\"></div>\n    <div class=\"fancybox-bg\" id=\"fancybox-bg-s\"></div>\n    <div class=\"fancybox-bg\" id=\"fancybox-bg-sw\"></div>\n    <div class=\"fancybox-bg\" id=\"fancybox-bg-w\"></div>\n    <div class=\"fancybox-bg\" id=\"fancybox-bg-nw\"></div>\n    <div id=\"fancybox-content\"></div>\n    <a id=\"fancybox-close\"></a>\n    <div id=\"fancybox-title\"></div>\n    <a href=\"javascript:;\" id=\"fancybox-left\"><span class=\"fancy-ico\"\n      id=\"fancybox-left-ico\"></span></a><a href=\"javascript:;\"\n      id=\"fancybox-right\"><span class=\"fancy-ico\" id=\"fancybox-right-ico\"></span></a>\n  </div>\n</div>\n<div class=\"dialogPopup dialog-1\" title=\"<?php echo $translator->trans('Full article', array(), 'feedback');?>\"></div>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/filter.phtml",
    "content": "<div class=\"filter\">\n\t<?php echo $this->filter->render(); ?>\n</div>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/image/archive.phtml",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n?>\n<div id=\"image-search\">\n    <form method=\"GET\" action=\"<?php echo $this->url(array(\n        'controller' => 'media',\n        'action' => 'list-images',\n    )); ?>\">\n        <input type=\"text\" name=\"q\" placeholder=\"<?php echo $translator->trans('Search'); ?>\" /> <button class=\"button\"><?php echo $translator->trans('Search'); ?></button>\n    </form>\n</div>\n<div id=\"image-archive\"></div>\n<script>\n$(function() {\n    $('#image-archive').load('<?php echo $this->url(array(\n        'controller' => 'media',\n        'action' => 'list-images',\n    )); ?>', function() {\n        $('#image-archive li').draggable(draggableOptions);\n    });\n\n    $('#image-archive .paginationControl a').live('click', function(e) {\n        e.preventDefault();\n        $('#image-archive').load($(this).attr('href'), function() {\n            $('#image-archive li').draggable(draggableOptions);\n        });\n    });\n\n    $('#image-search form').submit(function(e) {\n        e.preventDefault();\n        $.get(this.action, $(this).serializeArray(), function(data, textStatus) {\n            $('#image-archive').html(data);\n            $('#image-archive li').draggable(draggableOptions);\n        });\n    });\n\n    $('#add-video form').submit(function(e) {\n        if ($('.slideshow-headline input').val() == \"\") {\n            return false;\n        } else {\n            $(this).append('<input type=\"hidden\" name=\"slideshow_name\" value=\"'+$('.slideshow-headline input').val()+'\" /> ');\n            $(this).append('<input type=\"hidden\" name=\"rendition\" value=\"'+$('.slideshow-headline select').val()+'\" /> ');\n        }\n    });\n});\n</script>\n</div>\n<div id=\"add-video\">\n    <form method=\"<?php echo $this->form->getMethod(); ?>\" action=\"<?php echo $this->url(array(\n    'action' => 'add-video-item',\n)); ?>\"><div class=\"add-video\">\n    <input type=\"text\" name=\"url\" title=\"<?php echo $translator->trans(\"Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)\", array(), 'article_images'); ?>\" placeholder=\"<?php echo $translator->trans('Video URL', array(), 'article_images'); ?>\" /> <button><?php echo $translator->trans('Add video', array(), 'article_images'); ?></button>\n</div></form>\n</div>\n\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/image/article-attach.phtml",
    "content": "\n<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n?>\n\n<?php $this->headLink()->appendStylesheet($this->baseUrl('/admin-style/image_management.css')); ?>\n<?php $this->headLink()->appendStylesheet($this->baseUrl('/js/plupload/js/jquery.plupload.queue/css/jquery.plupload.queue.css')); ?>\n<?php $this->headLink()->appendStylesheet($this->baseUrl('/admin-style/admin_stylesheet.css')); ?>\n<?php $this->headLink()->appendStylesheet($this->baseUrl('/js/select2/select2.css')); ?>\n<script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('/js/plupload/js/plupload.full.js'); ?>\"></script>\n<script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('/js/select2/select2.js'); ?>\"></script>\n<script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('/js/plupload/js/jquery.plupload.queue/jquery.plupload.queue.js'); ?>\"></script>\n\n<style type=\"text/css\">\n#error_holder > table {\n    border: 0px;\n}\n</style>\n\n<?php $this->placeholder('bodyId')->set('next'); ?>\n\n<div id=\"modal-top\">\n    <div class=\"toolbar fixed-top\">\n    <div class=\"save-button-bar\"></div>\n    <h1>\n        <?php echo $translator->trans(\"Attached images\", array(), 'article_images'); ?>\n        <span style=\"float: right;\">\n        <input id=\"tab_1_submit\" type=\"button\" value=\"<?php echo $translator->trans('Next: Upload and Edit Metadata', array(), 'article_images'); ?>\" class=\"save-button\" style=\"display: none;\" onClick=\"$('#upload_form').submit();\">\n        <input id=\"tab_2_submit\" type=\"button\" value=\"<?php echo $translator->trans('Next: Place Images', array(), 'article_images'); ?>\" class=\"save-button\" style=\"display: none;\" onClick=\"document.location = '<?php echo($this->url(array(\n            'module' => 'admin',\n            'controller' => 'image',\n            'action' => 'article',\n            'article_number' => $this->article,\n            'language_id' => $this->languageId,\n        ))); ?>';\">\n        </span>\n    </h1>\n    </div>\n</div>\n<div style=\"margin-top:40px;\">&nbsp;</div>\n<?php if(camp_html_has_msgs()) { ?>\n<div id=\"error_holder\" style=\"margin-left: 20px; margin-top: 0px;\">\n<?php camp_html_display_msgs(); ?>\n</div>\n<?php } ?>\n<?php if (!empty($this->articleImages)) { ?>\n\n<ul id=\"attached-thumbnails\" class=\"thumbnails\">\n    <?php foreach ($this->articleImages as $articleImage) { ?>\n    <li class=\"image-detach small\" id=\"attached-image-<?php echo $articleImage->getId(); ?>\" style=\"cursor: pointer;\">\n        <figure>\n            <div class=\"small\"><?php echo $this->thumbnail($articleImage, 75, 75, 'fit')->getImg($this); ?></div>\n            <figcaption><label for=\"default-<?php echo $articleImage->getId(); ?>\"><?php echo $articleImage->getWidth(), 'x', $articleImage->getHeight(); ?></label></figcaption>\n        </figure>\n        <span class=\"info\">&nbsp;</span>\n    </li>\n    <?php } ?>\n</ul>\n\n<?php } else { ?>\n<p style=\"margin-left: 8px\"><?php echo $translator->trans('No images attached to article.', array(), 'article_images'); ?></p>\n<?php } ?>\n\n<div id=\"tabs\">\n\t<ul>\n\t\t<li><a href=\"#tabs-1\"><?php echo $translator->trans(\"Add New Image\", array(), 'article_images'); ?></a></li>\n        <li><a href=\"#tabs-2\"><?php echo $translator->trans(\"Media Archive\", array(), 'article_images'); ?></a></li>\n\t</ul>\n\t<div id=\"tabs-1\">\n        <form id=\"upload_form\" method=\"POST\" action=\"<?php echo $this->baseUrl('/admin/media-archive/do_upload.php'); ?>\" enctype=\"multipart/form-data\">\n        <div style=\"margin: 8px;\">\n        </div>\n        <input type=\"hidden\" name=\"f_article_edit\" value=\"1\">\n        <input type=\"hidden\" name=\"f_language_id\" value=\"<?php echo($this->languageId); ?>\">\n        <input type=\"hidden\" name=\"f_article_number\" value=\"<?php echo($this->article); ?>\">\n        <?php echo SecurityToken::FormParameter(); ?>\n        <div id=\"uploader\" style=\"border: 0px;\"></div>\n        <div id=\"uploader_error\" style=\"border: 0px;\"></div>\n\n        <div class=\"plupload-addon-bottom clearfix\">\n          <div class=\"info\">\n            <?php echo $translator->trans('Specify image url if you want to load it.', array(), 'article_images'); ?>\n          </div>\n          <div class=\"inputs\">\n            <label for=\"form-url\"><?php echo $translator->trans('URL'); ?>:</label><input type=\"text\" class=\"input_text\" size=\"32\" name=\"f_image_url\" id=\"form-url\">\n          </div>\n        </div>\n\n        </form>\n        \n\t</div>\n\t<div id=\"tabs-2\">\n        \n        <div style=\"margin: 8px;\">\n        </div>\n        \n        <form id=\"search-form\" method=\"post\" action=\"<?php echo($this->url(array(\n            'module' => 'admin',\n            'controller' => 'image',\n            'action' => 'article-attach',\n            'article_number' => $this->article,\n            'language_id' => $this->languageId,\n        ))); ?>\">\n        <input id=\"search_input\" type=\"text\" placeholder=\"<?php echo($translator->trans('Search')); ?>\" name=\"q\" value=\"<?php if ($this->q) echo(htmlspecialchars($this->q, ENT_QUOTES, 'UTF-8')); ?>\">\n        <input type=\"checkbox\" <?php if ($this->newsfeed) { ?>value=\"on\" checked=\"checked\"<?php } else { ?> value=\"off\"<?php } ?> name=\"with_newsfeeds\" id=\"with_newsfeeds\"><label for=\"with_newsfeeds\"><?php echo($translator->trans('Display newsfeed images', array(), 'article_images')); ?></label>\n        </form>\n        <input type=\"hidden\" style=\"width: 300px\" name=\"uploaders\" id=\"uploaders\"/>\n        <form id=\"uploader-form\" method=\"post\" action=\"<?php echo($this->url(array(\n            'module' => 'admin',\n            'controller' => 'image',\n            'action' => 'article-attach',\n            'article_number' => $this->article,\n            'language_id' => $this->languageId,\n        ))); ?>\"></form>\n        <br>\n        <?php if (!empty($this->images)) { ?>\n        <div id=\"image-archive\">\n        <?php echo $this->paginator; ?>\n        </div>\n        \n        <ul id=\"thumbnails\" class=\"thumbnails\">\n            <?php foreach ($this->images as $image) { ?>\n            <li id=\"image-<?php echo $image->getId(); ?>\" class=\"image-attach\" style=\"cursor: pointer;\">\n                <figure>\n                    <div><?php echo $this->thumbnail($image, 150, 150, 'fit')->getImg($this); ?></div>\n                    <figcaption><label for=\"default-<?php echo $image->getId(); ?>\"><?php echo $image->getWidth(), 'x', $image->getHeight(); ?></label></figcaption>\n                </figure>\n                <span class=\"info\">&nbsp;</span>\n            </li>\n            <?php } ?>\n        </ul>\n\n        <?php } else { ?>\n        <p style=\"margin-left: 8px\"><?php echo $translator->trans('No images found.', array(), 'article_images'); ?></p>\n        <?php } ?>\n        \n\t</div>\n</div>\n\n<script>\n$(function() {\n    \n    $(\"input#uploaders\").select2({\n        minimumInputLength: 3,\n        placeholder: \"<?php echo $translator->trans('Filter by uploader...', array(), 'article_images'); ?>\",\n        id: function(uploader) { return uploader.id; },\n        ajax: {\n            url: '',\n            dataType: 'json',\n            data: function (term, page) { // page is the one-based page number tracked by Select2\n                return { term: term };\n            },\n            results: function (data, page) {\n                return { results: data.items };\n            }\n        },\n        formatResult: function(uploader) { return uploader.username; },\n        formatSelection: function(uploader) { return uploader.username; },\n    }).on(\"select2-selecting\", function(e) {\n        onUploaderSearch(e.val);\n    });\n\n    function onUploaderSearch(term) {\n        var searchUrl = $(\"#uploader-form\").attr('action');\n        searchUrl = searchUrl.replace(/\\/uploader\\/[^\\/]*/i, \"\");\n        searchUrl = searchUrl.replace(/\\/page\\/[\\d]*/i, \"/page/1\");\n        searchUrl = searchUrl.replace(/#media-archive/i, \"\");\n\n        var query_raw = '' + term;\n\n        if (\"\" != query_raw) {\n            var query_enc = encodeURIComponent(query_raw);\n            searchUrl += \"/uploader/\" + query_enc + \"/page/1\";\n        }\n\n        searchUrl += \"#media-archive\";\n        $(\"#uploader-form\").attr('action', searchUrl);\n        $(\"#uploader-form\").submit();\n    };\n    $(\"#tabs\").tabs();\n    if (document.location.hash == '#media-archive') {\n\t\t$(\"#tabs\").tabs('option', 'selected', 'tabs-2');\n        $('#tab_1_submit').hide();\n        $('#tab_2_submit').show();\n\t}\n    else {\n        $('#tab_1_submit').show();\n        $('#tab_2_submit').hide();\n    }\n    \n    $(\"#tabs\").tabs({\n        select: function(event, ui) {\n            if (ui.index == 0) {\n                $('#tab_1_submit').show();\n                $('#tab_2_submit').hide();\n                window.location.hash = '';\n            }\n            if (ui.index == 1) {\n                $('#tab_1_submit').hide();\n                $('#tab_2_submit').show();\n                window.location.hash = '#media-archive';\n            }\n        }\n    });\n    \n    var form = $('#upload_form');\n    var uploader = $('#uploader');\n\n    uploader.pluploadQueue({\n        runtimes : \"html5, html4\",\n        unique_names : true,\n        max_file_size: <?php echo json_encode($this->maxFileSize()); ?>,\n        chunk_size: '500kb',\n\n        url : '<?php echo($this->url(array(\n            'module' => 'admin',\n            'controller' => 'image',\n            'action' => 'upload',\n            'format' => 'json',\n        ))); ?>',\n\n        flash_swf_url: \"<?php echo $this->baseUrl('/js/plupload/js/plupload.flash.swf'); ?>\",\n        silverlight_xap_url: \"<?php echo $this->baseUrl('/js/plupload/js/plupload.silverlight.xap'); ?>\",\n        \n        filters: [{title: '<?php echo $translator->trans('Image Files: ', array(), 'article_images'); ?>', extensions: 'jpg,jpeg,gif,png'}]\n    });\n\n    // Client side form validation\n    $('#upload_form').submit(function(e) {\n        var uploader = $('#uploader').pluploadQueue();\n\n        // Files in queue upload them first\n        if ((0 < uploader.files.length) && ((uploader.total.uploaded + uploader.total.failed) != uploader.files.length)) {\n            // When all files are uploaded submit form\n            uploader.bind('StateChanged', function() {\n                if ((uploader.total.uploaded + uploader.total.failed) == uploader.files.length) {\n                    $('#upload_form').submit();\n                }\n            });\n            uploader.start();\n            if (e && e.preventDefault) {\n                e.preventDefault();\n            }\n            return false;\n        }\n\n        return true;\n    });\n});\n\n$('.image-attach').click(function() {\n    var imageId = $(this).attr('id').replace('image-', '');\n    \n    $.post(\"<?php echo $this->url(array(\n        'module' => 'admin',\n        'controller' => 'image',\n        'action' => 'set-attach',\n        'format' => 'json',\n    )); ?>\", {\n        'image_id': imageId,\n        'article_number': <?php echo($this->article); ?>\n    }, function (data, textStatus) {\n        if (data.exception != undefined) {\n            alert(data.exception);\n            return;\n        }\n\n        window.location.hash = '#media-archive';\n        window.location.reload();\n    }, 'json');\n});\n\n$('.image-attach').mouseover(function() {\n    $(this).find('.info').html('<?php echo $translator->trans(\"Attach\"); ?>');\n});\n\n$('.image-attach').mouseout(function() {\n    $(this).find('.info').html('&nbsp;');\n});\n\n$('.image-detach').click(function() {\n    var imageId = $(this).attr('id').replace('attached-image-', '');\n    \n    $.post(\"<?php echo $this->url(array(\n        'module' => 'admin',\n        'controller' => 'image',\n        'action' => 'set-detach',\n        'format' => 'json',\n    )); ?>\", {\n        'image_id': imageId,\n        'article_number': <?php echo($this->article); ?>,\n        'language_id': <?php echo($this->languageId); ?>\n    }, function (data, textStatus) {\n        if (data.exception != undefined) {\n            alert(data.exception);\n            return;\n        }\n\n        window.location.reload();\n    }, 'json');\n});\n\n$('.image-detach').mouseover(function() {\n    $(this).find('.info').html('<?php echo $translator->trans(\"Detach\", array(), 'article_images'); ?>');\n});\n\n$('.image-detach').mouseout(function() {\n    $(this).find('.info').html('&nbsp;');\n});\n\n$(function() {\n\n    var search_url_ini = $(\"#search-form\").attr('action');\n    search_url_ini = search_url_ini.replace(/\\/page\\/[\\d]*/i, \"/page/1\");\n    search_url_ini = search_url_ini.replace(/#media-archive/i, \"\");\n    search_url_ini += \"#media-archive\";\n\n    $(\"#search-form\").attr('action', search_url_ini);\n\n});\n\nwindow.search_functor = null;\nwindow.check_functor = null;\n\n$(function() {\n    window.last_input_search = '' + $(\"#search_input\").val();\n});\n\n$(\"#search_input\").focus(function() {\n    if (window.check_functor) {\n        return;\n    }\n\n    window.check_functor = setInterval(\"check_input_search();\", 500);\n});\n$(\"#search_input\").blur(function() {\n    if (!window.check_functor) {\n        return;\n    }\n\n    clearInterval(window.check_functor);\n    check_input_search();\n});\n\nfunction check_input_search() {\n\n    var current_input_search = '' + $(\"#search_input\").val();\n    if (current_input_search != window.last_input_search) {\n        window.last_input_search = current_input_search;\n        on_input_search();\n    }\n};\n\n$(\"#search_input\").keydown(function() {\n    check_input_search();\n});\n\n$(\"#search_input\").keyup(function() {\n    check_input_search();\n});\n\n$(\"#search_input\").mousedown(function() {\n    check_input_search();\n});\n\n$(\"#search_input\").mouseup(function() {\n    check_input_search();\n});\n\n$(\"#search_input\").change(function() {\n    check_input_search();\n});\n\non_input_search = function() {\n\n    var search_url = $(\"#search-form\").attr('action');\n    search_url = search_url.replace(/\\/search\\/[^\\/]*/i, \"\");\n    search_url = search_url.replace(/\\/page\\/[\\d]*/i, \"/page/1\");\n    search_url = search_url.replace(/#media-archive/i, \"\");\n\n    var query_raw = '' + $(\"#search_input\").val();\n\n    if (\"\" != query_raw) {\n        var query_enc = encodeURIComponent(query_raw);\n        search_url += \"/search/\" + query_enc;\n    }\n    \n    search_url += \"#media-archive\";\n\n    $(\"#search-form\").attr('action', search_url);\n\n    clearTimeout(window.window.search_functor);\n    window.search_functor = setTimeout(\"search_on_change();\", 1500);\n\n};\n\n$('#with_newsfeeds').click(function() {\n\n    var cur_url = window.location.href;\n    var new_url = cur_url.replace(/#.*/i, \"\");\n    new_url = new_url.replace(/\\/page\\/.*/i, \"\");\n    new_url = new_url.replace(/\\/newsfeed\\/.*/i, \"\");\n    new_url += \"/\"\n    new_url = new_url.replace(/\\/\\/$/, \"/\");\n<?php if (!$this->newsfeed) { ?>\n    new_url += \"newsfeed/1/\";\n<?php } ?>\n\n    new_url += \"#media-archive\";\n    window.location.href = new_url;\n});\n\nfunction search_on_change() {\n    var current_input_search = '' + $(\"#search_input\").val();\n    if (current_input_search != window.last_input_search) {\n        return;\n    }\n\n    $(\"#search-form\").submit();\n};\n\n</script>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/image/article.phtml",
    "content": "<?php \n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headLink()->appendStylesheet($this->baseUrl('/admin-style/image_management.css'));\n$this->headLink()->appendStylesheet($this->baseUrl('/admin-style/renditions.css'));\n$this->headLink()->appendStylesheet($this->baseUrl('/admin-style/modal-custom.css'));\n?>\n<?php $this->placeholder('bodyId')->set('next'); ?>\n\n<div id=\"modal-top\">\n    <div class=\"toolbar fixed-top\">\n    <div class=\"save-button-bar\"></div>\n    <h1>\n        <?php echo $translator->trans('Place Images', array(), 'article_images'); ?>\n        <span style=\"float: right;\">\n        <input type=\"button\" style=\"display: none;\" id=\"modal-close-btn\" value=\"<?php echo $translator->trans('Finish', array(), 'article_images'); ?>\" class=\"save-button\" onClick=\"parent.$.fancybox.close();\">\n        </span>\n    </h1>\n    </div>\n</div>\n\n<ul class=\"renditions\">\n    <?php foreach ($this->renditions as $rendition) { ?>\n    <li id=\"<?php echo $rendition->getName(); ?>\"><?php echo $this->rendition($rendition, $this->previewWidth, $this->previewHeight, $this->articleRenditions[$rendition]); ?></li>\n    <?php } ?>\n</ul>\n\n<h2><?php echo $translator->trans(\"Attached images\", array(), 'article_images'); ?>\n    <div class=\"inline\">\n        <button id=\"set-default\"><?php echo $translator->trans('Set selected as default image', array(), 'article_images'); ?></button>\n    </div>\n</h2>\n\n<?php if (!empty($this->images)) { ?>\n<form id=\"renditions-form\" action=\"<?php echo $this->url(array(\n    'module' => 'admin',\n    'controller' => 'image',\n    'action' => 'set-default-image',\n)); ?>\" method=\"POST\">\n<?php } ?>\n<ul id=\"attached-thumbnails\" class=\"thumbnails\">\n    <?php if (!empty($this->images)) {  ?>\n    <?php foreach ($this->images as $image) { ?>\n    <li id=\"image-<?php echo $image->getId(); ?>\">\n        <figure>\n            <div><?php echo $this->thumbnail($image, 120, 90, 'fit')->getImg($this); ?></div>\n            <input type=\"radio\" id=\"default-<?php echo $image->getId(); ?>\" name=\"default-image\" value=\"<?php echo $image->getId(); ?>\" <?php if ($image->isDefault()) { echo 'checked=\"checked\"'; } ?> title=\"<?php echo $translator->trans('Set as default', array(), 'article_images'); ?>\" />\n            <figcaption><label for=\"default-<?php echo $image->getId(); ?>\"><?php echo $image->getWidth(), 'x', $image->getHeight(); ?></label></figcaption>\n        </figure>\n    </li>\n    <?php } ?>\n    <?php } else { ?>\n        <p style=\"color: #fff; margin-top: 5%\"><?php echo $translator->trans('No images attached to article.', array(), 'article_images'); ?></p>\n    <?php } ?>\n</ul>\n<?php if (!empty($this->images)) { ?>\n</form>\n<?php }?>\n\n<script>\n$(function() {\n    if (parent.$('div.renditionsModal').length == 0) {\n        $('#modal-close-btn').show();\n    }\n\n    $('#set-default').click(function() {\n        $('form#renditions-form').submit();\n    })\n\n    $('.renditions li').droppable({\n        hoverClass: 'state-active',\n        drop: function(event, ui) {\n            var li = $(this);\n            $.post(\"<?php echo $this->url(array(\n                'module' => 'admin',\n                'controller' => 'image',\n                'action' => 'set-rendition',\n                'format' => 'json',\n            )); ?>\", {\n                'image': ui.draggable.attr('id'),\n                'rendition': li.attr('id')\n            }, function (data, textStatus) {\n                if (data.exception != undefined) {\n                    alert(data.exception);\n                    return;\n                }\n\n                li.html(data.rendition);\n            }, 'json');\n        }\n    });\n\n    $('.thumbnails li').draggable({\n        revert: true,\n        opacity: 0.8,\n        zIndex: 1000,\n        cursor: 'move'\n    });\n\n    $('.renditions .reset').live('click', function(e) {\n        e.preventDefault();\n        var li = $(this).closest('li');\n        $.post($(this).attr('href'), function(data, textStatus) {\n            li.html(data.rendition);\n        }, 'json');\n    });\n});\n</script>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/image/edit-image-data.phtml",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$preferencesService = \\Zend_Registry::get('container')->getService('preferences');\n$this->headLink()->appendStylesheet($this->baseUrl('/admin-style/image_management.css'));\n?>\n\n<?php $this->placeholder('bodyId')->set('next'); ?>\n\n<?php\n    // Load tinymce for richtext editor\n    require_once($GLOBALS['g_campsiteDir'].\"/admin-files/media-archive/editor_load_tinymce.php\");\n\n    $loadAsRichtext = array();\n?>\n\n<div id=\"modal-top\">\n    <div class=\"toolbar fixed-top\">\n    <div class=\"save-button-bar\"></div>\n    <h1>\n        <?php echo $translator->trans('Edit Image Data', array(), 'article_images'); ?>\n        <span style=\"float: right;\">\n        <input type=\"button\" value=\"<?php echo $translator->trans('Next: Place Images', array(), 'article_images'); ?>\" class=\"save-button\" onClick=\"$('#edit_image_data_next').val(1);$('#edit_image_data_form').submit();\">\n        </span>\n    </h1>\n    </div>\n</div>\n<div style=\"margin-top:40px;\">&nbsp;</div>\n\n<?php if (!empty($this->images)) { ?>\n\n<form id=\"edit_image_data_form\" method=\"post\" action=\"<?php echo($this->url(array(\n    'module' => 'admin',\n    'controller' => 'image',\n    'action' => 'edit-image-data'\n))); ?>\" onSubmit=\"<?php\n    if ($preferencesService->MediaRichTextCaptions  == 'Y') {\n        echo 'return validateTinyMCEEditors();';\n    }\n?>\">\n\n<input type=\"hidden\" name=\"article_number\" value=\"<?php echo($this->article); ?>\">\n<input type=\"hidden\" name=\"language_id\" value=\"<?php echo($this->languageId); ?>\">\n<input id=\"edit_image_data_next\" type=\"hidden\" name=\"next\" value=\"0\">\n\n<ul class=\"thumbnails\">\n    <?php foreach ($this->images as $image) { ?>\n    <li id=\"image-<?php echo $image->getId(); ?>\" style=\"width: 390px;\">\n        <figure>\n            <div><?php echo $this->thumbnail($image, 150, 150, 'fit')->getImg($this); ?></div>\n            <figcaption><label for=\"default-<?php echo $image->getId(); ?>\"><?php echo $image->getWidth(), ' x ', $image->getHeight(); ?></label></figcaption>\n        </figure>\n        <div class=\"image-data\">\n            <label for=\"\" style=\"font-size: 11px;\"><?php\n                echo $translator->trans('Description');\n                if ($preferencesService->MediaRichTextCaptions == 'Y' && $preferencesService->MediaCaptionLength > 0) {\n                    echo $translator->trans(' (max. $1 characters)', array('$1' => $preferencesService->MediaCaptionLength), 'media-archive');\n                }\n            ?>: <a style=\"float: right;\" href=\"javascript:useForAll('description', <?php echo $image->getId(); ?>);\"> <?php echo $translator->trans('Use for all', array(), 'article_images'); ?></a></label><br>\n\n            <?php\n                if ($preferencesService->MediaRichTextCaptions == 'Y') {\n\n                    $languageSelectedObj = new Language((int) camp_session_get('LoginLanguageId', 0));\n                    $editorLanguage = !empty($_COOKIE['TOL_Language']) ? $_COOKIE['TOL_Language'] : $languageSelectedObj->getCode();\n\n                    $loadAsRichtext[]   = 'image_description_'.$image->getId().'_tinymce';\n                    ?>\n                        <textarea name=\"data[<?php echo $image->getId(); ?>][description]\" id=\"image_description_<?php echo $image->getId(); ?>_tinymce\" rows=\"4\" class=\"image-description\" style=\"float:none; width:380px;\"><?php echo $image->getDescription(); ?></textarea>\n                    <?php\n                } else {\n                    ?>\n                        <input name=\"data[<?php echo $image->getId(); ?>][description]\" id=\"image_description_<?php echo $image->getId(); ?>\" class=\"image-description\" value=\"<?php echo htmlspecialchars(strip_tags($image->getDescription())); ?>\" style=\"float:none; width:380px;\" maxlength=\"<?php echo $preferencesService->MediaCaptionLength; ?>\"><br/>\n                    <?php\n                }\n            ?>\n\n            <label for=\"\" style=\"font-size: 11px;\"><?php echo($translator->trans('Location', array(), 'article_images')); ?>: <a style=\"float: right;\" href=\"javascript:useForAll('place', <?php echo $image->getId(); ?>);\"> <?php echo($translator->trans('Use for all', array(), 'article_images')); ?></a></label><br/>\n            <input name=\"data[<?php echo $image->getId(); ?>][place]\" id=\"image_place_<?php echo $image->getId(); ?>\" class=\"image-place\" value=\"<?php echo $image->getPlace(); ?>\" style=\"float:none; width:380px;\"><br/>\n\n            <label for=\"\" style=\"font-size: 11px;\"><?php echo($translator->trans('Photographer')); ?>: <a style=\"float: right;\" href=\"javascript:useForAll('photographer', <?php echo $image->getId(); ?>);\"> <?php echo($translator->trans('Use for all', array(), 'article_images')); ?></a></label><br>\n            <input name=\"data[<?php echo $image->getId(); ?>][photographer]\" id=\"image_photographer_<?php echo $image->getId(); ?>\" class=\"image-photographer\" value=\"<?php echo $image->getPhotographer(); ?>\" style=\"float:none; width:380px;\"><br/>\n\n            <input type=\"hidden\" name=\"data[<?php echo $image->getId(); ?>][date]\" id=\"image_date_<?php echo $image->getId(); ?>\" class=\"image-date\" value=\"<?php echo $image->getDate(); ?>\">\n        </div>\n    </li>\n    <?php } ?>\n</ul>\n\n</form>\n\n<?php\n    // Load tinymce once for all textareas\n    if (count($loadAsRichtext) > 0) {\n\n        $editorOptions  = array(\n            'max_chars' => $preferencesService->MediaCaptionLength,\n            'toolbar_length' => 16,\n        );\n\n        editor_load_tinymce($loadAsRichtext, $this->currentUser, $editorLanguage, $editorOptions);\n    }\n?>\n\n<script>\nfunction useForAll(field, id) {\n\n    if (field == 'description' && $('#image_' + field + '_' + id).length === 0) {\n        // Using tinyMCE for richttext captions\n        var textareaID      = $('textarea[name=\"data['+id+'][description]\"]').attr('id');\n        var contentToCopy   = tinyMCE.editors[textareaID].getContent();\n\n        var inst;\n        for (inst in tinyMCE.editors) {\n            if (tinyMCE.editors[inst].getContent) {\n                tinyMCE.editors[inst].setContent(contentToCopy);\n            }\n        }\n\n    } else {\n        // Default case\n        var className = 'image-' + field;\n        var value = $('#image_' + field + '_' + id).val();\n\n        $('.' + className).val(value);\n    }\n}\n</script>\n\n<?php } else { ?>\n    <script>\n        document.location = '<?php echo($this->url(array(\n            'module' => 'admin',\n            'controller' => 'image',\n            'action' => 'article',\n            'article_number' => $this->article,\n            'language_id' => $this->languageId,\n        ))); ?>';\n    </script>\n<?php } ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/image/edit.phtml",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headLink()->appendStylesheet($this->baseUrl('/admin-style/image_management.css'));\n$this->headLink()->appendStylesheet($this->baseUrl('/admin-style/renditions.css'));\n$this->headLink()->appendStylesheet($this->baseUrl('/admin-style/modal-custom.css'));\n?>\n<?php $this->placeholder('bodyId')->set('next'); ?>\n\n<div id=\"modal-top\">\n    <div class=\"toolbar fixed-top\">\n    <div class=\"save-button-bar\"></div>\n    <h1>\n        <?php echo $translator->trans('Edit images', array(), 'article_images'); ?>\n        <span style=\"float: right;\">\n        <a href=\"<?php echo $this->url(array(\n            'action' => 'article',\n            'rendition' => null,\n        )); ?>\" class=\"save-button\"><?php echo $translator->trans('Done editing', array(), 'article_images'); ?></a>\n        </span>\n    </h1>\n    </div>\n</div>\n\n<div class=\"editor-wrapper\">\n\n<form method=\"POST\">\n\n<div class=\"editarea\">\n    <div>\n        <?php echo $this->imageEditor($this->rendition, $this->image); ?>\n        <?php if ($this->rendition->isCrop()) { ?>\n        <button id=\"save-jcrop\" class=\"save-button\"><?php echo $translator->trans('Save'); ?></button>\n        <?php } ?>\n    </div>\n\n</div>\n\n</form>\n\n<?php $this->currentRendition = $this->rendition; ?>\n<ul class=\"renditions editor\">\n    <?php foreach ($this->renditions as $rendition) { ?>\n    <li<?php echo $rendition->getName() === $this->currentRendition->getName() ? ' class=\"active\"' : ''; ?>><?php echo $this->rendition($rendition, $this->previewWidth, $this->previewHeight, $this->articleRenditions[$rendition]); ?></li>\n    <?php } ?>\n</ul>\n</div>"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/image/editor.phtml",
    "content": "<?php \n$translator = \\Zend_Registry::get('container')->getService('translator'); \n$this->headLink()->appendStylesheet($this->baseUrl('/js/tapmodo-Jcrop-5e58bc9/css/jquery.Jcrop.css')); \n?>\n<?php $this->headScript()->appendFile($this->baseUrl('/js/tapmodo-Jcrop-5e58bc9/js/jquery.Jcrop.min.js')); ?>\n\n<h2><?php echo $this->escape(ucfirst($this->rendition->getName())); ?>: <?php echo array_shift(explode('_', $this->rendition->getSpecs())); ?> <?php echo $this->rendition->getWidth(), 'x',  $this->rendition->getHeight(); ?> <small>(<?php echo $translator->trans('original size:', array(), 'article_images'); ?> <?php echo $this->image->getWidth(), 'x', $this->image->getHeight(); ?>)</small></h2>\n\n<div id=\"editor\">\n    <?php echo $this->thumbnail($this->image->getPath(), $this->rendition->getWidth(), $this->rendition->getHeight(), $this->rendition->isCrop() ? 'fill' : $this->rendition->getSpecs())->getImg($this); ?>\n    <input id=\"image-editor-coords\" type=\"hidden\" name=\"coords\" value=\"\" />\n</div>\n\n<?php if ($this->rendition->isCrop()) { ?>\n<script>\n$(function() {\n    var jcrop;\n    $('#editor img').Jcrop({\n        bgColor: 'transparent',\n        aspectRatio: <?php echo $this->rendition->getAspectRatio(); ?>,\n        minSize: <?php echo json_encode($this->rendition->getMinSize($this->image)); ?>,\n        trueSize: <?php echo json_encode(array($this->image->getWidth(), $this->image->getHeight())); ?>,\n        boxWidth: 650,\n        onChange: function(c) {\n            $('#image-editor-coords').val([c.x, c.y, c.x2, c.y2].join('_'));\n        }\n    }, function() {\n        jcrop = this;\n        jcrop.setSelect(<?php echo json_encode($this->rendition->getSelectArea($this->image)); ?>);\n    });\n});\n</script>\n<?php } ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/image/rendition.phtml",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n?>\n<dl class=\"rendition\">\n    <dt>\n        <div class=\"preview\" style=\"width: <?php echo $this->preview->getWidth(); ?>px; height: <?php echo $this->preview->getHeight(); ?>px;\">\n            <?php if ($this->thumbnail !== null) { ?>\n            <a href=\"<?php echo $this->url(array(\n                'module' => 'admin',\n                'controller' => 'image',\n                'action' => 'edit',\n                'rendition' => $this->rendition->getName(),\n                'format' => null,\n            )); ?>\" title=\"<?php echo $this->escape($translator->trans(\"Edit $1\", array('$1' => $this->rendition->getName()), 'article_images')); ?>\"><?php echo $this->thumbnail->getImg($this); ?></a>\n            <?php } ?>\n        </div>\n    </dt>\n    <dd class=\"name\"><?php echo $this->escape($this->rendition->getLabel()); ?></dd>\n    <dd><small><?php $specs = explode('_', $this->rendition->getSpecs()); echo array_shift($specs); ?> <?php echo $this->rendition->getWidth(), 'x', $this->rendition->getHeight(); ?></small></dd>\n</dl>\n<?php if (!$this->isDefault) { ?>\n<a href=\"<?php echo $this->url(array(\n    'module' => 'admin',\n    'controller' => 'image',\n    'action' => 'remove-rendition',\n    'rendition' => $this->rendition->getName(),\n    'format' => 'json',\n)); ?>\" class=\"reset\"><?php echo $translator->trans('Use default', array(), 'article_images'); ?></a>\n<?php } ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/languages/add.phtml",
    "content": "<?php \n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans('Add Language', array(), 'languages').' - Newscoop Admin', 'SET'); \n?>\n\n<?php echo $this->form->render(); ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/languages/edit.phtml",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans('Edit language: $1', array('$1' => $this->escape($this->language->getName())), 'languages').' - Newscoop Admin', 'SET'); \n?>\n\n<?php $this->renderError(); ?>\n\n<?php echo $this->form->setAction($this->url())->setMethod('post')->render(); ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/languages/index.phtml",
    "content": "<?php \n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans('Languages').' - Newscoop Admin', 'SET'); \n?>\n\n<?php $this->renderActions(); ?>\n\n<?php if (empty($this->languages)) { // no languages\n    $this->renderMessage($translator->trans('No languages.'));\n    return;\n} ?>\n\n<table class=\"languages\">\n    <tr>\n        <th><?php echo $translator->trans('Language'); ?></th>\n        <th><?php echo $translator->trans('Native name', array(), 'languages'); ?></th>\n        <th><?php echo $translator->trans('Code'); ?></th>\n        <th><?php echo 'RFC3066bis '.$translator->trans('Code'); ?></th>\n        <th><?php echo $translator->trans('Delete'); ?></th>\n    </tr>\n    <?php foreach ($this->languages as $language) { ?>\n    <tr>\n        <td><a href=\"<?php echo $this->url(array('action' => 'edit', 'language' => $language->getId())); ?>\"><?php echo $this->escape($language->getName()); ?></a></td>\n        <td><?php echo $this->escape($language->getNativeName()); ?></td>\n        <td class=\"text\"><?php echo $this->escape($language->getCode()); ?></td>\n        <td class=\"text\"><?php echo $this->escape($language->getRFC3066bis()); ?></td>\n        <td>\n          <?php if ($language->getCode() !== 'en') { ?>\n          <a class=\"delete confirm\" href=\"<?php echo $this->url(array('action' => 'delete', 'language' => $language->getId())); ?>\"><?php echo $translator->trans('Delete'); ?></a>\n          <?php } ?>\n        </td>\n    </tr>\n    <?php } ?>\n</table>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/legacy/index.phtml",
    "content": "<?php // empty ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/link-ban.phtml",
    "content": "<a href=\"<?php echo $this->url($this->urlOptions); ?>\"\n    class=\"<?php echo $this->class; ?>\"\n    title=\"<?php echo $this->title; ?>\"\n    <?php foreach($this->attributes as $key => $value):?>\n        <?php echo $key; ?> = \"<?php echo $value; ?>\"\n    <?php endforeach;?>\n>\n    <?php echo $this->name; ?>\n </a>"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/link-delete.phtml",
    "content": "<a href=\"<?php echo $this->url($this->urlOptions); ?>\"\n    class=\"<?php echo $this->class; ?>\"\n    title=\"<?php echo $this->title; ?>\"\n    <?php foreach($this->attributes as $key => $value):?>\n        <?php echo $key; ?> = \"<?php echo $value; ?>\"\n    <?php endforeach;?>\n>\n    <?php echo $this->name; ?>\n </a>"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/link-edit.phtml",
    "content": "<a href=\"<?php echo $this->url($this->urlOptions); ?>\"\n    class=\"<?php echo $this->class; ?>\"\n    title=\"<?php echo $this->title; ?>\"\n    <?php foreach($this->attributes as $key => $value):?>\n        <?php echo $key; ?> = \"<?php echo $value; ?>\"\n    <?php endforeach;?>\n>\n    <?php echo $this->name; ?>\n </a>"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/log/index.phtml",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans('Logs').' - Newscoop Admin', 'SET');\n?>\n\n<?php $this->renderFilter($this->form); ?>\n\n<?php\nif (empty($this->events)) { // no logs\n    $this->renderMessage($translator->trans('No logs.', array(), 'logs'));\n    return;\n} ?>\n\n<?php $this->renderPager($this->pager); ?>\n\n<script>\n    function show(elementId) {\n        var element = document.getElementById(elementId);\n        element.style.display = 'inline';\n    }\n    function hide(elementId) {\n        var element = document.getElementById(elementId);\n        element.style.display = 'none';\n    }\n</script>\n\n<table class=\"logs\">\n    <caption><?php echo $translator->trans('Logs'); ?></caption>\n    <tr>\n        <th><?php echo $translator->trans('Date/Time'); ?></th>\n        <th><?php echo $translator->trans('Resource Type', array(), 'logs'); ?></th>\n        <th><?php echo $translator->trans('Action'); ?></th>\n        <th><?php echo $translator->trans('Resource', array(), 'logs'); ?></th>\n        <th><?php echo $translator->trans('Title', array(), 'logs'); ?></th>\n        <th><?php echo $translator->trans('Diff', array(), 'logs'); ?></th>\n        <th><?php echo $translator->trans('User', array(), 'logs'); ?></th>\n    </tr>\n    <?php $item_count = 0; ?>\n    <?php foreach ($this->events as $event) { ?>\n    <tr class=\"priority-info\">\n        <td><?php echo $event->getCreated()->format('Y-m-d H:i:s'); ?></td>\n        <td><?php echo $event->getResourceType(); ?></td>\n        <td><?php echo $event->getAction(); ?></td>\n        <td><?php\n            $resource_id = $event->getResourceId();\n            echo('<a id=\"res_id_show_'. $item_count .'\" style=\"display: inline;\" href=\"javascript:show(\\'res_id_hide_'. $item_count .'\\');hide(\\'res_id_show_'. $item_count .'\\');show(\\'res_id_'. $item_count .'\\');\">'. $translator->trans('show', array(), 'logs') .'</a>');\n            echo('<a id=\"res_id_hide_'. $item_count .'\" style=\"display: none;\" href=\"javascript:show(\\'res_id_show_'. $item_count .'\\');hide(\\'res_id_hide_'. $item_count .'\\');hide(\\'res_id_'. $item_count .'\\');\">'. $translator->trans('hide', array(), 'logs') .'</a>');\n            echo('<table id=\"res_id_'. $item_count .'\" style=\"display: none;\">');\n            if (is_array($resource_id)) {\n                foreach ($resource_id as $key => $value) {\n                    if(is_array($value)){\n                        $value = 'array';\n                    } else {\n                        $value = $value;\n                    }\n\n                    echo('<tr><td>'.$key.': </td><td>'.$value.'</td></tr>');\n                }\n            } else {\n                echo('<tr><td colspan=\"2\">'.$translator->trans('Broken data', array(), 'logs').'</td></tr>');\n            }\n            echo('</table>');\n        ?></td>\n        <td><?php echo $event->getResourceTitle(); ?></td>\n        <td><?php\n            $resource_diff = $event->getResourceDiff();\n            echo('<a id=\"res_diff_show_'. $item_count .'\" style=\"display: inline;\" href=\"javascript:show(\\'res_diff_hide_'. $item_count .'\\');hide(\\'res_diff_show_'. $item_count .'\\');show(\\'res_diff_'. $item_count .'\\');\">'. $translator->trans('show', array(), 'logs') .'</a>');\n            echo('<a id=\"res_diff_hide_'. $item_count .'\" style=\"display: none;\" href=\"javascript:show(\\'res_diff_show_'. $item_count .'\\');hide(\\'res_diff_hide_'. $item_count .'\\');hide(\\'res_diff_'. $item_count .'\\');\">'. $translator->trans('hide', array(), 'logs') .'</a>');\n            echo('<table id=\"res_diff_'. $item_count .'\" style=\"display: none;\">');\n            if (is_array($resource_diff)) {\n                foreach ($resource_diff as $key => $value) {\n                    if(is_array($value)){\n                        $value =  serialize($array);\n                    } else {\n                        $value = $value;\n                    }\n\n                    echo('<tr><td>'.$key.': </td><td>'. $value.'</td></tr>');\n                }\n            } else {\n                echo('<tr><td colspan=\"2\">'.$translator->trans('Broken data', array(), 'logs').'</td></tr>');\n            }\n            echo('</table>');\n        ?></td>\n        <td><?php if ($event->getUser()){ echo $event->getUser()->getUsername(); } ?></td>\n    </tr>\n    <?php $item_count = $item_count + 1; ?>\n    <?php } ?>\n</table>\n\n<?php $this->renderPager($this->pager); ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/media/list-images.phtml",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\necho $this->paginator; \n?>\n\n<?php if (!empty($this->images)) { ?>\n<ul class=\"thumbnails archive images\">\n    <?php foreach ($this->images as $image) { ?>\n    <li id=\"image-<?php echo $image->getId(); ?>\">\n        <figure>\n            <div><?php echo $this->thumbnail($image, 150, 150, 'fit')->getImg($this); ?></div>\n            <figcaption><?php echo $image->getDescription(); ?> (<?php echo $image->getWidth(), 'x', $image->getHeight(); ?>)</figcaption>\n        </figure>\n    </li>\n    <?php } ?>\n</ul>\n\n<?php } else { ?>\n<div class=\"info\"><?php echo $translator->trans('No images', array(), 'article_images'); ?></div>\n<?php } ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/media/list-slideshows.phtml",
    "content": "<a href=\"<?php echo $this->url(array(\n    'module' => 'admin',\n    'controller' => 'slideshow',\n    'action' => 'create',\n)); ?>\" class=\"create-slideshow\">+ Create slideshow</a>\n\n<ul class=\"slideshows\">\n    <?php foreach ($this->slideshows as $slideshow) { ?>\n    <li>\n        <a href=\"<?php echo $this->url(array(\n            'module' => 'admin',\n            'controller' => 'slideshow',\n            'action' => 'edit',\n            'slideshow' => $slideshow->getId(),\n        )); ?>\" class=\"edit\"><?php echo $this->escape($slideshow->getHeadline()); ?> <?php if ($slideshow->getSlug()) { ?><small>(#<?php echo $this->escape($slideshow->getSlug()); ?>)</small><?php } ?></a>\n        <div class=\"slideshow-preview\">\n            <?php foreach ($slideshow->getItems() as $item) { ?>\n            <?php echo $item->isImage() ? $this->renditionPreview($item->getRendition(), 75, 75, $item->getImage()) : $this->videoPreview($item->getVideoUrl()); ?>\n            <?php } ?>\n        </div>\n    </li>\n    <?php } ?>\n</ul>\n\n<script type=\"text/javascript\">\n$(function() {\n    $('.slideshows .edit').fancybox({\n        hideOnContentClick: false,\n        width: 1300,\n        height: 800,\n        type: 'iframe',\n        onClosed: function() {\n            parent.window.location = parent.window.location + '#slideshows';\n        }\n    });\n});\n</script>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/message.phtml",
    "content": "<div class=\"message <?php echo $this->type; ?>\">\n    <p><?php echo $this->message; ?></p>\n</div>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/news-item.phtml",
    "content": "<?php if ($this->item->getContentSet()->getInlineContent()) { ?>\n\n<div class=\"inline-content\">\n<?php echo nl2br($this->item->getContentSet()->getInlineContent()); ?>\n</div>\n\n<?php } else if ($thumbnail = $this->item->getContentSet()->getRemoteContent('rend:viewImage')) { ?>\n<div class=\"thumbnail\"><img src=\"<?php echo $this->item->getFeed()->getRemoteContentSrc($thumbnail); ?>\" width=\"<?php echo $thumbnail->getWidth(); ?>\" height=\"<?php echo $thumbnail->getHeight(); ?>\" alt=\"\" /></div>\n<div class=\"renditions\">\n<?php foreach ($this->item->getContentSet()->getRemoteContent() as $remoteContent) { ?>\n<?php if ($remoteContent->getRendition() === 'rend:baseImage') { ?>\n    <a href=\"<?php echo $this->item->getFeed()->getRemoteContentSrc($remoteContent); ?>\"><?php echo $remoteContent->getWidth(), 'x', $remoteContent->getHeight(); ?></a>\n<?php }} ?>\n</div>\n\n<?php } // remote content ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/package/item.phtml",
    "content": "<li id=\"item-<?php echo $this->item->getId(); ?>\">\n    <?php echo $this->action('rendition', 'image', 'admin', array(\n        'rendition' => $this->item->getRendition(),\n        'image' => $this->item->getImage(),\n        'width' => 100,\n        'height' => 100,\n    )); ?>\n\n    <a href=\"<?php echo $this->url(array(\n        'module' => 'admin',\n        'controller' => 'slideshow',\n        'action' => 'remove-item',\n        'item' => $this->item->getId(),\n    )); ?>\" class=\"remove\">Remove</a>\n</li>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/package-item-group.phtml",
    "content": "<?php echo $this->group->getRole(); ?>\n<ul>\n    <?php foreach ($this->group->getRefs() as $ref) { ?>\n    <li>\n        <?php if ($ref instanceof \\Newscoop\\News\\GroupRef) { ?>\n            <?php $this->renderPackageItemGroup($this->item->getGroupSet()->getGroup($ref), $this->item); ?>\n        <?php } else { ?>\n            <?php $item = $this->item->getFeed()->getItem($ref->getResidRef()); ?>\n            <?php echo $item->getContentMeta()->getHeadline(); ?>\n            <?php if ($item instanceof \\Newscoop\\News\\NewsItem && !$item->getContentSet()->getInlineContent() && $thumbnail = $item->getContentSet()->getRemoteContent('rend:thumbnail')) { ?>\n            <div class=\"thumbnail\"><img src=\"<?php echo $this->item->getFeed()->getRemoteContentSrc($thumbnail); ?>\" width=\"<?php echo $thumbnail->getWidth(); ?>\" height=\"<?php echo $thumbnail->getHeight(); ?>\" alt=\"\" /></div>\n            <?php } ?>\n        <?php } ?>\n    </li>\n    <?php } ?>\n</ul>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/package-item.phtml",
    "content": "<ul class=\"groups\">\n    <?php foreach ($this->item->getGroupSet()->getRootGroup()->getRefs() as $rootRef) { ?>\n    <li>\n        <?php $this->renderPackageItemGroup($this->item->getGroupSet()->getGroup($rootRef), $this->item); ?>\n    </li>\n    <?php } ?>\n</ul>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/pager.phtml",
    "content": "<div class=\"pager\">\n<?php echo $this->pager->render(); ?> &nbsp; <!-- fix layout -->\n</div>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/paginator-hash.phtml",
    "content": "<!--\nSee http://developer.yahoo.com/ypatterns/pattern.php?pattern=itempagination\n-->\n<?php $translator = \\Zend_Registry::get('container')->getService('translator'); ?>\n<?php if ($this->pageCount): ?>\n<div class=\"paginationControl\">\n \n<!-- First page link -->\n<?php if (isset($this->previous)): ?>\n  <a href=\"<?php echo $this->url(array('page' => $this->first)); ?>#media-archive\">\n    <?php echo $translator->trans('First', array(), 'home'); ?>\n  </a> |\n<?php else: ?>\n  <span class=\"disabled\"><?php echo $translator->trans('First', array(), 'home'); ?></span> |\n<?php endif; ?>\n \n<!-- Previous page link -->\n<?php if (isset($this->previous)): ?>\n  <a href=\"<?php echo $this->url(array('page' => $this->previous)); ?>#media-archive\">\n    &lt; <?php echo $translator->trans('Previous'); ?>\n  </a> |\n<?php else: ?>\n  <span class=\"disabled\">&lt; <?php echo $translator->trans('Previous'); ?></span> |\n<?php endif; ?>\n \n<!-- Next page link -->\n<?php if (isset($this->next)): ?>\n  <a href=\"<?php echo $this->url(array('page' => $this->next)); ?>#media-archive\">\n    <?php echo $translator->trans('Next'); ?> &gt;\n  </a> |\n<?php else: ?>\n  <span class=\"disabled\"><?php echo $translator->trans('Next'); ?> &gt;</span> |\n<?php endif; ?>\n \n<!-- Last page link -->\n<?php if (isset($this->next)): ?>\n  <a href=\"<?php echo $this->url(array('page' => $this->last)); ?>#media-archive\">\n    <?php echo $translator->trans('Last', array(), 'home'); ?>\n  </a>\n<?php else: ?>\n  <span class=\"disabled\"><?php echo $translator->trans('Last', array(), 'home'); ?></span>\n<?php endif; ?>\n \n</div>\n<?php endif; ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/paginator-template.phtml",
    "content": "<script type=\"text/template\" id=\"paginator-template\">\n<?php $translator = \\Zend_Registry::get('container')->getService('translator'); ?>\n<div class=\"paginationControl\">\n    <!-- Previous page link -->\n    <% if (prev) { %>\n    <a href=\"#\" class=\"first\"><?php echo $translator->trans('First', array(), 'home'); ?></a> |\n    <a href=\"#\" class=\"prev\">&lt; <?php echo $translator->trans('Previous'); ?></a> |\n    \n    <% } else { %>\n    <span class=\"disabled\"><?php echo $translator->trans('First', array(), 'home'); ?></span> |\n    <span class=\"disabled\">&lt; <?php echo $translator->trans('Previous'); ?></span> |\n    <% } %>\n \n    <!-- Next page link -->\n    <% if (next) { %>\n    <a href=\"#\" class=\"next\"><?php echo $translator->trans('Next'); ?> &gt; </a> |\n    <a href=\"#\" class=\"last\"><?php echo $translator->trans('Last', array(), 'home'); ?></a>\n\n    <% } else { %>\n    <span class=\"disabled\"><?php echo $translator->trans('Next'); ?> &gt;</span> |\n    <span class=\"disabled\"><?php echo $translator->trans('Last', array(), 'home'); ?></span>\n    <% } %>\n</div>\n</script>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/paginator.phtml",
    "content": "<!--\nSee http://developer.yahoo.com/ypatterns/pattern.php?pattern=itempagination\n-->\n<?php $translator = \\Zend_Registry::get('container')->getService('translator'); ?>\n<?php if ($this->pageCount): ?>\n<div class=\"paginationControl\">\n \n<!-- First page link -->\n<?php if (isset($this->previous)): ?>\n  <a href=\"<?php echo $this->url(array('page' => null)); ?>\">\n    <?php echo $translator->trans('First', array(), 'home'); ?>\n  </a> |\n<?php else: ?>\n  <span class=\"disabled\"><?php echo $translator->trans('First', array(), 'home'); ?></span> |\n<?php endif; ?>\n \n<!-- Previous page link -->\n<?php if (isset($this->previous)): ?>\n  <a href=\"<?php echo $this->url(array('page' => $this->previous > 1 ? $this->previous : null)); ?>\">\n    &lt; <?php echo $translator->trans('Previous'); ?>\n  </a> |\n<?php else: ?>\n  <span class=\"disabled\">&lt; <?php echo $translator->trans('Previous'); ?></span> |\n<?php endif; ?>\n \n<!-- Next page link -->\n<?php if (isset($this->next)): ?>\n  <a href=\"<?php echo $this->url(array('page' => $this->next)); ?>\">\n    <?php echo $translator->trans('Next'); ?> &gt;\n  </a> |\n<?php else: ?>\n  <span class=\"disabled\"><?php echo $translator->trans('Next'); ?> &gt;</span> |\n<?php endif; ?>\n \n<!-- Last page link -->\n<?php if (isset($this->next)): ?>\n  <a href=\"<?php echo $this->url(array('page' => $this->last)); ?>\">\n    <?php echo $translator->trans('Last', array(), 'home'); ?>\n  </a>\n<?php else: ?>\n  <span class=\"disabled\"><?php echo $translator->trans('Last', array(), 'home'); ?></span>\n<?php endif; ?>\n \n</div>\n<?php endif; ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/plupload.phtml",
    "content": "<script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('/js/plupload/js/plupload.full.js'); ?>\"></script>\n<script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('/js/plupload/js/jquery.plupload.queue/jquery.plupload.queue.js'); ?>\"></script>\n<?php $translator = \\Zend_Registry::get('container')->getService('translator'); ?>\n<script type=\"text/javascript\">\n$(function() {\n    var form = $('form<?php echo $this->plupload->form; ?>');\n    var uploader = $('#uploader');\n\n    if ($('dl.zend_form', form).size() > 0) {\n        var dd = $('<dd class=\"plupload\" />').prependTo($('dl.zend_form', form));\n        if (!uploader.size()) {\n            uploader = $('<div id=\"uploader\" />');\n        }\n        uploader.prependTo(dd);\n    }\n\n    uploader.pluploadQueue({\n        runtimes : \"html5, html4\",\n        unique_names : true,\n        max_file_size: <?php echo json_encode($this->maxFileSize()); ?>,\n        chunk_size: '500kb',\n\n        url : <?php echo json_encode($this->plupload->url); ?>,\n\n        flash_swf_url: \"<?php echo $this->baseUrl('/js/plupload/js/plupload.flash.swf'); ?>\",\n        silverlight_xap_url: \"<?php echo $this->baseUrl('/js/plupload/js/plupload.silverlight.xap'); ?>\",\n\n        <?php if (!empty($this->plupload->filters)) {\n            $first = true; ?>\n        filters: [\n            <?php foreach ($this->plupload->filters as $title => $extensions) {\n                if (!$first) {\n                    echo ',';\n                    $first = false;\n                }\n            ?>\n            {title: <?php echo json_encode($title); ?>, extensions : <?php echo json_encode($extensions); ?>}\n            <?php } ?>\n        ]\n        <?php } ?>\n    });\n\n    // Client side form validation\n    $('form<?php $this->plupload->form; ?>').submit(function(e) {\n        var uploader = $('#uploader').pluploadQueue();\n\n        // Files in queue upload them first\n        if ((0 < uploader.files.length) && ((uploader.total.uploaded + uploader.total.failed) != uploader.files.length)) {\n            // When all files are uploaded submit form\n            uploader.bind('StateChanged', function() {\n                if ((uploader.total.uploaded + uploader.total.failed) == uploader.files.length) {\n                    $('form<?php $this->plupload->form; ?>').submit();\n                }\n            });\n            uploader.start();\n            if (e && e.preventDefault) {\n                e.preventDefault();\n            }\n            return false;\n        }\n\n        // Validate number of uploaded files\n        if (uploader.total.uploaded == 0) {\n            // if no file, then at least url shall be provided (if some at that page)\n            var url_str = $.trim($('#form-url').val());\n            if ('' == url_str) {\n                alert(<?php echo json_encode($translator->trans('You must at least upload one file.', array(), 'home')); ?>);\n                if (e && e.preventDefault) {\n                    e.preventDefault();\n                }\n                return false;\n            }\n        }\n        return true;\n    });\n});\n\nplupload.addI18n({\n    'Select files' : '<?php echo $translator->trans('Select files', array(), 'home'); ?>',\n    'Add files to the upload queue and click the start button.' : '<?php echo $translator->trans('Add files to the upload queue and click the start button.', array(), 'home'); ?>',\n    'Filename' : '<?php echo $translator->trans('Filename', array(), 'home'); ?>',\n    'Status' : '<?php echo $translator->trans('Status'); ?>',\n    'Size' : '<?php echo $translator->trans('Size', array(), 'home'); ?>',\n    'Add files' : '<?php echo $translator->trans('Add files', array(), 'home'); ?>',\n    'Start upload' : '<?php echo $translator->trans('Start upload', array(), 'home'); ?>',\n    'Stop current upload' : '<?php echo $translator->trans('Stop current upload', array(), 'home'); ?>',\n    'Start uploading queue' : '<?php echo $translator->trans('Start uploading queue', array(), 'home'); ?>',\n    'Drag files here.' : '<?php echo $translator->trans('Drag files here.', array(), 'home'); ?>'\n});\n</script>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/rendition/index.phtml",
    "content": "<?php \n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans('Reload renditions', array(), 'article_images').' - Newscoop Admin', 'SET'); \n?>\n\n<?php if (count($this->renditions) === 0) {\necho '<p class=\"message\">', $translator->trans('No renditions defined.', array(), 'article_images'), '</p>';\nreturn;\n} ?>\n\n<form method=\"POST\" action=\"<?php echo $this->url(array(\n    'controller' => 'rendition',\n    'action' => 'reload-renditions',\n)); ?>\">\n    <button><?php echo $translator->trans('Reload renditions', array(), 'article_images'); ?></button>\n</form>\n\n<form id=\"rendition-list-form\" method=\"POST\">\n\n<ul id=\"rendition-list\">\n    <?php foreach ($this->renditions as $rendition) { ?>\n    <li id=\"<?php echo $rendition->getName(); ?>\"><input type=\"text\" name=\"<?php echo $this->escape($rendition->getName()); ?>\" value=\"<?php echo $rendition->getLabel(); ?>\" placeholder=\"<?php echo $this->escape($rendition->getName()); ?>\" /> <?php echo $this->escape($rendition->getName()); ?> <small><?php echo $rendition->getSpecs(); ?> <?php echo $rendition->getWidth(), 'x', $rendition->getHeight(); ?></small> \n    </li>\n    <?php } ?>\n</ul>\n\n<button><?php echo $translator->trans('Save'); ?></button>\n\n</form>\n\n<script type=\"text/javascript\">\n$(function() {\n    $('#rendition-list').sortable({cursor: 'move'});\n    $('#rendition-list-form').submit(function(e) {\n        e.preventDefault();\n        var form = $(this);\n        var button = form.find('button');\n        button.text(<?php echo json_encode($translator->trans('Saving...', array(), 'article_images')); ?>);\n        $.post(<?php echo json_encode($this->url(array(\n            'module' => 'admin',\n            'controller' => 'rendition',\n            'action' => 'index',\n        ))); ?>, {'order': $('#rendition-list').sortable('toArray'), 'labels': form.serializeArray()}, function(data, textStatus) {\n            button.text(<?php echo json_encode($translator->trans('Saved', array(), 'article_images')); ?>);\n            window.setTimeout(function() {\n                button.text(<?php echo json_encode($translator->trans('Save')); ?>);\n            }, 3000);\n        });\n    });\n});\n</script>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/rendition/preview.phtml",
    "content": "<div class=\"rendition-preview\">\n<?php if ($this->thumbnail !== null) {\n    echo $this->thumbnail->getImg($this);\n} ?>\n</div>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/slideshow/add-video-item.phtml",
    "content": "<?php echo $this->form; ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/slideshow/attach.phtml",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headScript()->appendFile($this->baseUrl('js/views/PaginatorView.js'));\n\n?>\n<div id=\"modal-top\">\n    <div class=\"toolbar fixed-top\" id=\"app\">\n    <h1><?php echo $translator->trans('Attach').'/'.$translator->trans('Detach').' '.$translator->trans('Slideshows', array(), 'articles'); ?>\n        <span style=\"float: right;\">\n          <button id=\"attach-slideshows-button\" class=\"prime\"><?php echo $translator->trans('Save'); ?></button>\n        </span>\n    </h1>\n    </div>\n</div>\n<h2 class=\"attached-slideshow\"><?php echo $translator->trans('Attached Slideshows', array(), 'article_images'); ?></h2>\n<section>\n    <ul id=\"article-slideshows\" class=\"slideshow attached\"></ul>\n</section>\n\n\n<section>\n    <div class=\"search-wrapper\">\n    <form method=\"post\" action=\"<?php echo($this->url(array(\n            'module' => 'admin',\n            'controller' => 'slideshow',\n            'action' => 'attach',\n    ))); ?>\">\n    <div class=\"search\">\n        <input type=\"text\" placeholder=\"<?php echo($translator->trans('Search')); ?>\" name=\"q\" value=\"<?php if ($this->q) echo $this->escape($this->q); ?>\">\n        <input type=\"submit\" value=\"<?php echo($translator->trans('Search')); ?>\">\n    </div>\n    </form>\n    <nav></nav>\n    </div>\n</section>\n\n<section>\n    <ul id=\"slideshow-list\" class=\"list-view grid slideshow-list\"></ul>\n</section>\n<script type=\"text/template\" id=\"slideshow-template\">\n<h3 class=\"title\"><%= headline.substring(0, 22) %><% if (headline.length > 22) { %>..<% } %></h3>\n<small>(<?php echo $translator->trans('Items: ', array(), 'article_images'); ?><%= itemsCount %>)</small>\n<div class=\"preview\">\n    <% if (!itemsCount) { %>\n    <span class=\"blank\"></span>\n    <% } else if (item) { %>\n    <img src=\"<?php echo $this->baseUrl('/images/cache/'); ?><%= item.thumbnail.src %>\" alt=\"\" />\n    <% } else { %>\n    <span class=\"video\"></span>\n    <% } %>\n</div>\n<span class=\"info\"></span>\n</script>\n<?php echo $this->render('paginator-template.phtml'); ?>\n\n<script type=\"text/javascript\">\n(function($) {\n    /**\n     * Slideshow model\n     */\n    var Slideshow = Backbone.Model.extend({\n        defaults: {\n            item: null,\n            attached: false\n        },\n\n        initialize: function() {\n            if (this.get('items')) {\n                this.set('item', this.get('items')[0]);\n            }\n        },\n\n        addToArticle: function(article) {\n            if (!article.get('slideshows').get(this.get('id'))) {\n                unlockSaveButton();\n                article.get('slideshows').add(this);\n            }\n        },\n\n        removeFromArticle: function(article) {\n            unlockSaveButton();\n            article.get('slideshows').remove(this.get('id'));\n        }\n    });\n\n    /**\n     * Slideshow collection\n     */\n    var SlideshowCollection = Backbone.Collection.extend({\n        model: Slideshow,\n        url: <?php echo json_encode($this->url(array('format' => 'json'))); ?>,\n        comparator: function(slideshow) {\n            return -1 * slideshow.get('id');\n        }\n    });\n\n    /**\n     * Article model\n     */\n    var Article = Backbone.Model.extend({\n        url: <?php echo json_encode($this->url(array('action' => 'article'))); ?>,\n\n        initialize: function(params) {\n            this.set('slideshows', new SlideshowCollection(this.get('slideshows')));\n        }\n    });\n\n    /**\n     * Slideshow view\n     */\n    var SlideshowView = Backbone.View.extend({\n        tagName: \"li\",\n\n        events: {\n            'click': 'action',\n            'mouseout': 'removeHint',\n            'mouseover': 'addHint'\n        },\n\n        initialize: function() {\n            this.model.bind('change', this.render, this);\n            this.template = _.template($('#slideshow-template').html());\n        },\n\n        render: function() {\n            $(this.el).html(this.template(this.model.toJSON()));\n            return this;\n        },\n\n        addHint: function() { // no-op\n            $(this.el).find('.info').text(this.hint ? this.hint : '');\n        },\n\n        removeHint: function() {\n            $(this.el).find('.info').text('');\n        }\n    });\n\n    var AddSlideshowView = SlideshowView.extend({\n        hint: <?php echo json_encode($translator->trans('Attach')); ?>,\n\n        action: function() {\n            this.model.addToArticle(window.article);\n        }\n    });\n\n    var RemoveSlideshowView = SlideshowView.extend({\n        hint: <?php echo json_encode($translator->trans('Detach', array(), 'article_images')); ?>,\n\n        action: function() {\n            this.model.removeFromArticle(window.article);\n        }\n    });\n\n    /**\n     * Slideshow list view\n     */\n    var SlideshowListView = Backbone.View.extend({\n        initialize: function() {\n            this.collection = this.options.collection;\n            this.collection.bind('reset', this.render, this);\n            this.collection.reset(this.options.slideshows);\n        },\n\n        render: function() {\n            $('#slideshow-list').empty();\n            this.collection.each(function(slideshow) {\n                var view = new AddSlideshowView({model: slideshow});\n                $('#slideshow-list').append(view.render().el);\n            });\n            return this;\n        }\n    });\n\n    /**\n     * Article slideshows view\n     */\n    var ArticleSlideshowsView = Backbone.View.extend({\n        initialize: function() {\n            this.collection = this.options.collection;\n            this.collection.bind('add', this.render, this);\n            this.collection.bind('remove', this.render, this);\n            this.render();\n        },\n\n        render: function() {\n            var list = $(this.el);\n            list.empty();\n            this.collection.each(function(slideshow) {\n                var view = new RemoveSlideshowView({model: slideshow});\n                list.append(view.render().el);\n            });\n\n            return this;\n        }\n    });\n\n    /**\n     * Article view\n     */\n    var ArticleView = Backbone.View.extend({\n        el: $('#app'),\n\n        events: {\n            'click #attach-slideshows-button': 'saveArticle'\n        },\n\n        initialize: function() {\n            this.article = this.options.article;\n            this.article.bind('sync', this.close, this);\n        },\n\n        saveArticle: function() {\n            this.article.save();\n            showFlashMessage(\"<?php echo $translator->trans('The article slideshows have been successfully updated, please close the window.', array(), 'articles'); ?>\");\n        },\n\n        close: function() {\n            $('#attach-slideshows-button').prop('disabled', true);\n            $('#attach-slideshows-button').addClass('btn-disabled');\n            if (parent.$.fancybox !== undefined) {\n                parent.$.fancybox.close();\n            }\n        }\n    });\n\n    var showFlashMessage = function (msg, type) {\n        if (parent.$.fancybox === undefined) {\n            flashMessage(msg, type);\n        }\n    };\n\n    var unlockSaveButton = function () {\n        $('#attach-slideshows-button').prop('disabled', false);\n        $('#attach-slideshows-button').removeClass('btn-disabled');\n    }\n\n    $(function() {\n        window.article = new Article(<?php echo json_encode($this->article); ?>);\n        var app = new ArticleView({article: article});\n        var slideshowCollection = new SlideshowCollection();\n        var paginatorView = new PaginatorView({pages: <?php echo $this->pages; ?>, collection: slideshowCollection, el: $('body > nav')});\n        var slideshowView = new SlideshowListView({collection: slideshowCollection, slideshows: <?php echo json_encode($this->slideshowsJson($this->slideshows)); ?>});\n        var articleSlideshowsView = new ArticleSlideshowsView({collection: article.get('slideshows'), el: $('#article-slideshows')});\n    });\n})(jQuery);\n</script>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/slideshow/create.phtml",
    "content": "<?php $this->headLink()->appendStylesheet($this->baseUrl('/admin-style/image_management.css')); ?>\n<?php $this->headLink()->appendStylesheet($this->baseUrl('/admin-style/slideshow.css')); ?>\n<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->placeholder('bodyId')->set('next');\n$this->placeholder('bodyClass')->set('iframe expanded');\n?>\n<div class=\"content\">\n<form id=\"edit_slideshow_form\" method=\"<?php echo $this->form->getMethod(); ?>\">\n<input type=\"hidden\" name=\"image\" id=\"imageId\">\n<div id=\"modal-top\">\n    <div class=\"toolbar fixed-top\">\n    <div class=\"save-button-bar\"></div>\n    <h1>\n        <?php echo $translator->trans('Create Slideshow', array(), 'article_images'); ?>\n        <span style=\"float: right;\">\n            <input type=\"submit\" style=\"margin: 0;\" value=\"<?php echo $translator->trans('Create'); ?>\" class=\"save-button\">\n        </span>\n    </h1>\n    </div>\n</div>\n<div class=\"slideshow-headline\">\n    <input type=\"text\" class=\"<?php echo $this->form->headline->hasErrors() ? ' error' : ''; ?>\" name=\"headline\" value=\"<?php echo $this->escape($this->form->headline->getValue()); ?>\" title=\"<?php echo $translator->trans('Slideshow headline', array(), 'article_images'); ?>\" placeholder=\"<?php echo $this->form->headline->hasErrors() ? implode(\", \", $this->form->headline->getMessages()) : $translator->trans('Slideshow name...', array(), 'article_images'); ?>\"/>\n     <?php echo $this->form->rendition->setDecorators(array(\n\t   'ViewHelper',\n\t   'Errors',\n\t   'Label'\n\t  )); ?>\n</div>\n\n<h2 class=\"slideshow-images\"><?php echo $translator->trans('Slideshow images', array(), 'article_images'); ?></h2>\n\n<ul id=\"slideshow-items\" class=\"slideshow\">\n\n</ul>\n\n<script>\n/**\n * Set order of items\n *\n * @return void\n */\nfunction setOrder() {\n    $.post(\"<?php echo $this->url(array(\n        'module' => 'admin',\n        'controller' => 'slideshow',\n        'action' => 'set-order',\n        'format' => 'json',\n    )); ?>\", {\n        order: $('#slideshow-items').sortable('toArray'),\n    }, function (data, textStatus) {\n    }, 'json');\n}\n\nvar draggableOptions = {\n    revert: true,\n    connectToSortable: 'ul.slideshow',\n    opacity: 0.8,\n    helper: 'clone',\n    cursor: 'move',\n    drag: function(event, ui)\n    {\n        if($('.slideshow-headline input').val() == '') {\n            return false;\n        }\n    },\n    stop: function(event, ui) {\n    \tif($('.slideshow-headline input').val() != '') {\n    \t\t$('#imageId').val(ui.helper.attr('id'));\n            $('#edit_slideshow_form').submit();\n        }\n    }\n};\n\n$(function() {\n    <?php if ($this->slideshow) { ?>\n    $('.thumbnails li').draggable('disabled');\n    <?php }  else { ?>\n    \t$('.slideshow-headline input').addClass('error');\n    \t$('.slideshow-headline input').attr('placeholder', '<?php echo $translator->trans(\"Value is required and can\\'t be empty\", array(), 'article_images'); ?>');\n    \t$('.slideshow-headline input').focus(function() {\n    \t\tif ($(this).val() == \"\") {\n\t\t\t\t$(this).addClass('error');\n\t\t\t} else {\n\t\t\t\t$(this).removeClass('error');\n\t\t\t}\n\t\t});\n\t\t$('.slideshow-headline input').blur( function() {\n\t\t\t\tif ($(this).val() !== \"\") {\n\t\t\t  \t\t$(this).removeClass('error');\n\t\t\t  \t} else {\n\t\t\t  \t\t$(this).addClass('error');\n\t\t\t  \t}\n\t\t\t});\n\t\t$('.thumbnails li').draggable(draggableOptions);\n    <?php } ?>\n\n\n    $('#select-image').tabs();\n\n    $('#add-sellected-to-gallery').click(function(){\n        $('#edit_slideshow_form').submit();\n    });\n\n    $('#select-all-images').live('click', function(e){\n        $('.thumbnails li figure input:checkbox[name=checked-images[]]').attr('checked', true);\n        $(this).attr('id', 'unselect-all-images');\n        $(this).text('<?php echo $translator->trans('Unselect all images', array(), 'article_images'); ?>')\n        e.preventDefault();\n    });\n\n    $('#unselect-all-images').live('click', function(e){\n        $('.thumbnails li figure input:checkbox[name=checked-images[]]').attr('checked', false);\n        $(this).attr('id', 'select-all-images');\n        $(this).text('<?php echo $translator->trans('Select all images', array(), 'article_images'); ?>');\n        e.preventDefault();\n    });\n\n    $('.expand-btn').click(function (){\n        $('body#next').toggleClass('expanded');\n    });\n});\n</script>\n\n\n<div class=\"expand-btn\"><?php echo $translator->trans('Add items to slideshow', array(), 'article_images'); ?></div>\n<div id=\"select-image\" class=\"tabs popup-tabs\">\n    <ul>\n        <?php if (!empty($this->images)) { ?><li><a href=\"#attached-images\"><?php echo $translator->trans('Attached images', array(), 'article_images'); ?></a></li><?php } ?>\n        <li><a href=\"#media-archive\"><?php echo $translator->trans('Media Archive', array(), 'article_images'); ?></a></li>\n        <li class=\"ui-state-default ui-corner-top\">\n            <a href=\"#add-video\"><?php echo $translator->trans('Add video', array(), 'article_images'); ?></a>\n        </li>\n    </ul>\n\n    <?php if (!empty($this->images)) { ?>\n    <div id=\"attached-images\">\n        <ul class=\"thumbnails\">\n            <?php foreach ($this->images as $image) { ?>\n            <li id=\"image-<?php echo $image->getId(); ?>\">\n                <figure>\n                    <center>\n                    <div><?php echo $this->thumbnail($image->getPath(), 150, 150, 'fit')->getImg($this); ?></div>\n                    </center>\n                    <input type=\"checkbox\" id=\"default-<?php echo $image->getId(); ?>\" name=\"checked-images[]\" value=\"<?php echo $image->getId(); ?>\" title=\"<?php echo $translator->trans('Mark image', array(), 'article_images'); ?>\" />\n                    <figcaption><label for=\"default-<?php echo $image->getId(); ?>\"><?php echo $image->getWidth(), 'x', $image->getHeight(); ?></label></figcaption>\n                </figure>\n            </li>\n            <?php } ?>\n        </ul>\n        <div class=\"add-images\">\n            <button id=\"add-sellected-to-gallery\" class=\"button\"><?php echo $translator->trans('Add selected images to slideshow', array(), 'article_images'); ?></button>\n            <button id=\"select-all-images\" class=\"button\"><?php echo $translator->trans('Select all images', array(), 'article_images'); ?></button>\n        </div>\n    </div>\n    <?php } ?>\n\n    <div id=\"media-archive\">\n        <?php echo $this->imageArchive(); ?>\n    </div>\n</div>\n</form>\n</div>"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/slideshow/edit-item.phtml",
    "content": "<?php\n$this->headLink()->appendStylesheet($this->baseUrl('/admin-style/image_management.css'));\n$this->headLink()->appendStylesheet($this->baseUrl('/admin-style/slideshow.css'));\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$preferencesService = \\Zend_Registry::get('container')->getService('preferences');\n// Load tinymce for richtext editor\nrequire_once($GLOBALS['g_campsiteDir'].\"/admin-files/media-archive/editor_load_tinymce.php\");\n?>\n\n<?php $this->placeholder('bodyId')->set('next'); $this->placeholder('bodyClass')->set('iframe'); ?>\n\n<form id=\"edit-form\" method=\"<?php echo $this->form->getMethod(); ?>\" onSubmit=\"<?php\n    if ($preferencesService->MediaRichTextCaptions == 'Y') {\n        echo 'return validateTinyMCEEditors();';\n    }\n?>\">\n<div id=\"modal-top\">\n    <div class=\"toolbar fixed-top\">\n    <div class=\"save-button-bar\"></div>\n    <h1>\n        <?php echo $translator->trans('Slideshow', array(), 'article_images'); ?> <small id=\"slideshow-rendition-info\"><?php echo $this->package->getRendition()->getInfo(); ?></small>\n            <span style=\"float: right;\">\n                <a href=\"<?php echo $this->url(array(\n                    'action' => 'edit',\n                    'item' => null,\n                    'format' => null\n                )); ?>\" class=\"save-button\"><?php echo $translator->trans('Done editing', array(), 'article_images'); ?></a>\n            </span>\n\n    </h1>\n    </div>\n</div>\n<div class=\"editor-wrapper\">\n<div <?php if ($this->item->isVideo()) { ?> style=\"padding-left: 55px;\" <?php } ?> class=\"editarea\">\n    <div>\n        <?php if ($this->item->isVideo()) { ?>\n        <h2>Video: <?php echo $this->item->getVideoUrl(); ?></h2>\n        <?php } ?>\n        <?php echo $this->item->isImage() ? $this->imageEditor($this->rendition, $this->image) : $this->videoPreview($this->item->getVideoUrl(), $this->rendition->getWidth(), $this->rendition->getHeight()); ?>\n        <?php if ($this->item->isVideo()) { ?>\n        <input type=\"text\" name=\"url\" value=\"<?php echo $this->escape($this->form->url->getValue()); ?>\" />\n        <?php } ?>\n        <?php\n            if ($preferencesService->MediaRichTextCaptions == 'Y') {\n\n                $languageSelectedObj = new Language((int) camp_session_get('LoginLanguageId', 0));\n                $editorLanguage = !empty($_COOKIE['TOL_Language']) ? $_COOKIE['TOL_Language'] : $languageSelectedObj->getCode();\n                $editorOptions  = array(\n                    'max_chars' => $preferencesService->MediaCaptionLength,\n                    'toolbar_length' => 24,\n                );\n                $fieldID = 'caption_'.$this->item->getId();\n\n                editor_load_tinymce($fieldID, $this->currentUser, $editorLanguage, $editorOptions);\n                ?>\n                    <textarea id=\"<?php echo $fieldID; ?>\" name=\"caption\" rows=\"5\" class=\"image-description\"><?php echo $this->form->caption->getValue(); ?></textarea>\n                <?php\n            } else {\n                ?>\n                    <input type=\"text\" name=\"caption\" value=\"<?php echo $this->escape(strip_tags($this->form->caption->getValue())); ?>\" placeholder=\"<?php echo $translator->trans('Add caption', array(), 'article_images'); ?>\" maxlength=\"<?php $preferencesService->MediaCaptionLength; ?>\" /><br />\n                <?php\n            }\n        ?>\n        <button class=\"save-button\"><?php echo $translator->trans('Save'); ?></button>\n    </div>\n\n    <?php if (($prev = $this->package->getPrev($this->item)) !== null) { ?>\n    <a href=\"<?php echo $this->url(array(\n        'item' => $this->package->getPrev($this->item)->getId(),\n    )); ?>\" class=\"prev\"><span></span><?php echo $translator->trans('Previous'); ?></a>\n    <?php } ?>\n\n    <?php if (($next = $this->package->getNext($this->item)) !== null) { ?>\n    <a href=\"<?php echo $this->url(array(\n        'item' => $next->getId(),\n    )); ?>\" class=\"next\"><span></span><?php echo $translator->trans('Next'); ?></a>\n    <?php } ?>\n\n</div>\n</form>\n<?php $this->currentItem = $this->item; ?>\n<ul class=\"slideshow editor\">\n    <?php foreach ($this->item->getPackageItems() as $item) { ?>\n    <?php echo $this->slideshowItem($item, $this->currentItem); ?>\n    <?php } ?>\n</ul>\n</div>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/slideshow/edit.phtml",
    "content": "<?php $this->headLink()->appendStylesheet($this->baseUrl('/admin-style/image_management.css')); ?>\n<?php $this->headLink()->appendStylesheet($this->baseUrl('/admin-style/slideshow.css')); ?>\n<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->placeholder('bodyId')->set('next');\n$this->placeholder('bodyClass')->set('iframe expanded');\n?>\n<div class=\"content\">\n<form id=\"edit_slideshow_form\" method=\"<?php echo $this->form->getMethod(); ?>\">\n<div id=\"modal-top\">\n    <div class=\"toolbar fixed-top\">\n    <div class=\"save-button-bar\"></div>\n    <h1>\n        <?php echo $translator->trans('Slideshow', array(), 'article_images'); ?> <small id=\"slideshow-rendition-info\"><?php echo $this->slideshow->getRendition()->getInfo(); ?></small>\n        <span style=\"float: right;\">\n            <input type=\"submit\" style=\"margin: 0; display: none;\" id=\"modal-close-btn\" value=\"<?php echo $translator->trans('Save and Close'); ?>\" class=\"save-button\" onClick=\"parent.$.fancybox.close();\">\n        </span>\n    </h1>\n    </div>\n</div>\n\n<div class=\"slideshow-headline\">\n    <input type=\"text\" class=\"<?php echo $this->form->headline->hasErrors() ? ' error' : ''; ?>\" name=\"headline\" value=\"<?php echo $this->escape($this->form->headline->getValue()); ?>\" title=\"<?php echo $this->form->headline->hasErrors() ? implode(\", \", $this->form->headline->getMessages()) : $translator->trans('Slideshow headline', array(), 'article_images'); ?>\" />\n     <button class=\"button\"><?php echo $translator->trans('Save headline', array(), 'article_images'); ?></button>\n</div>\n\n<h2 class=\"slideshow-images\"><?php echo $translator->trans('Slideshow images', array(), 'article_images'); ?></h2>\n\n<ul id=\"slideshow-items\" class=\"slideshow\">\n    <?php foreach ($this->slideshow->getItems() as $item) { ?>\n    <?php echo $this->slideshowItem($item); ?>\n    <?php } ?>\n</ul>\n\n<script>\n/**\n * Set order of items\n *\n * @return void\n */\nfunction setOrder() {\n    $.post(\"<?php echo $this->url(array(\n        'module' => 'admin',\n        'controller' => 'slideshow',\n        'action' => 'set-order',\n        'format' => 'json',\n    )); ?>\", {\n        order: $('#slideshow-items').sortable('toArray'),\n    }, function (data, textStatus) {\n    }, 'json');\n}\n\nvar draggableOptions = {\n    revert: true,\n    connectToSortable: 'ul.slideshow',\n    opacity: 0.8,\n    helper: 'clone',\n    cursor: 'move'\n};\n\n$(function() {\n    $('.slideshow').sortable({\n        placeholder: 'placeholder',\n        receive: function(event, ui) {\n            var imageId = ui.item.attr('id');\n            $.post(\"<?php echo $this->url(array(\n                'module' => 'admin',\n                'controller' => 'slideshow',\n                'action' => 'add-item',\n                'format' => 'json',\n            )); ?>\", {\n                image: imageId,\n            }, function (data, textStatus) {\n                if (data.error_message) {\n                    $('#slideshow-items #' + imageId).detach();\n                    alert(data.error_message);\n                    return;\n                }\n\n                $('#slideshow-items #' + imageId).replaceWith(data.item);\n                setOrder();\n            }, 'json');\n        },\n        update: setOrder,\n        cursor: 'move'\n    });\n\n    $('.thumbnails li').draggable(draggableOptions);\n\n    $('#slideshow-items .remove').live('click', function(e) {\n        e.preventDefault();\n        var link = $(this);\n        $.post(link.attr('href') + '?format=json', function (data, textStatus) {\n            link.closest('li').detach();\n        });\n    });\n\n    $('#select-image').tabs();\n\n    $('#add-sellected-to-gallery').click(function(){\n        var images = [];\n        $('.thumbnails li figure input:checkbox[name=checked-images[]]:checked').each(function(index, element){\n            images.push($(element).val());\n        });\n\n         // ping for connection\n        callServer('ping', [], function(json) {\n            flashMessage('<?php echo $translator->trans('Processing...', array(), 'home'); ?>');\n            $.post(\"<?php echo $this->url(array(\n                'module' => 'admin',\n                'controller' => 'slideshow',\n                'action' => 'add-multiple-items',\n                'format' => 'json',\n            )); ?>\", {\n                images: images\n            }, function() {\n                window.location.reload();\n            });\n\n            return false;\n        }); // /ping\n    })\n\n    $('#select-all-images').live('click', function(e){\n        $('.thumbnails li figure input:checkbox[name=checked-images[]]').attr('checked', true);\n        $(this).attr('id', 'unselect-all-images');\n        $(this).text('<?php echo $translator->trans('Unselect all images', array(), 'article_images'); ?>')\n        e.preventDefault();\n    });\n\n    $('#unselect-all-images').live('click', function(e){\n        $('.thumbnails li figure input:checkbox[name=checked-images[]]').attr('checked', false);\n        $(this).attr('id', 'select-all-images');\n        $(this).text('<?php echo $translator->trans('Select all images', array(), 'article_images'); ?>');\n        e.preventDefault();\n    });\n\n    $('.expand-btn').click(function (){\n        $('body#next').toggleClass('expanded');\n    });\n});\n</script>\n</form>\n\n<div class=\"expand-btn\"><?php echo $translator->trans('Add items to slideshow', array(), 'article_images'); ?></div>\n<div id=\"select-image\" class=\"tabs popup-tabs\">\n    <ul>\n        <?php if (!empty($this->images)) { ?><li><a href=\"#attached-images\"><?php echo $translator->trans('Attached images', array(), 'article_images'); ?></a></li><?php } ?>\n        <li><a href=\"#media-archive\"><?php echo $translator->trans('Media Archive', array(), 'article_images'); ?></a></li>\n        <li class=\"ui-state-default ui-corner-top\">\n            <a href=\"#add-video\"><?php echo $translator->trans('Add video', array(), 'article_images'); ?></a>\n        </li>\n    </ul>\n\n    <?php if (!empty($this->images)) { ?>\n    <div id=\"attached-images\">\n        <ul class=\"thumbnails\">\n            <?php foreach ($this->images as $image) { ?>\n            <li id=\"image-<?php echo $image->getId(); ?>\">\n                <figure>\n                    <div><?php echo $this->thumbnail($image->getPath(), 150, 150, 'fit')->getImg($this); ?></div>\n                    <input type=\"checkbox\" id=\"default-<?php echo $image->getId(); ?>\" name=\"checked-images[]\" value=\"<?php echo $image->getId(); ?>\" title=\"<?php echo $translator->trans('Mark image', array(), 'article_images'); ?>\" />\n                    <figcaption><label for=\"default-<?php echo $image->getId(); ?>\"><?php echo $image->getWidth(), 'x', $image->getHeight(); ?></label></figcaption>\n                </figure>\n            </li>\n            <?php } ?>\n        </ul>\n        <div class=\"add-images\">\n            <button id=\"add-sellected-to-gallery\" class=\"button\"><?php echo $translator->trans('Add selected images to slideshow', array(), 'article_images'); ?></button>\n            <button id=\"select-all-images\" class=\"button\"><?php echo $translator->trans('Select all images', array(), 'article_images'); ?></button>\n        </div>\n    </div>\n    <?php } ?>\n\n    <div id=\"media-archive\">\n        <?php echo $this->imageArchive(); ?>\n    </div>\n</div>\n</div>\n<script>\n    if (parent !== undefined && parent.$('div.renditionsModal').length == 0) {\n        $('#modal-close-btn').show();\n    }\n</script>"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/slideshow/item-preview.phtml",
    "content": "<figure>\n    <div><?php echo $this->itemHelper->isImage() ? $this->renditionPreview($this->itemHelper->getRendition(), 75, 75, $this->itemHelper->getImage()) : $this->videoPreview($this->itemHelper->getVideoUrl(), 75, 75); ?></div>\n</figure>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/slideshow/item.phtml",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$preferenceService = \\Zend_Registry::get('container')->getService('preferences');\n?>\n<li id=\"item-<?php echo $this->item->getId(); ?>\"<?php echo $this->current !== null && $this->current->getId() === $this->item->getId() ? ' class=\"active\"' : ''; ?>>\n    <a href=\"<?php echo $this->url(array(\n        'module' => 'admin',\n        'controller' => 'slideshow',\n        'action' => 'edit-item',\n        'slideshow' => $this->item->getPackageId(),\n        'item' => $this->item->getId(),\n    )); ?>\">\n        <figure>\n            <div><?php echo $this->item->isImage() ? $this->renditionPreview($this->item->getRendition(), 150, 150, $this->item->getImage()) : $this->videoPreview($this->item->getVideoUrl()); ?></div>\n            <figcaption><?php\n                if ($this->item->getCaption()) {\n                    if ($preferenceService->MediaRichTextCaptions == 'Y') {\n                        echo $this->item->getCaption();\n                    } else {\n                        echo $this->escape($this->item->getCaption());\n                    }\n                } else {\n                    echo $translator->trans('no caption', array(), 'article_images');\n                }\n                ?></figcaption>\n        </figure>\n    </a>\n    <a href=\"<?php echo $this->url(array(\n        'module' => 'admin',\n        'controller' => 'slideshow',\n        'action' => 'remove-item',\n        'slideshow' => $this->item->getPackageId(),\n        'item' => $this->item->getId(),\n    )); ?>\" class=\"remove\"><?php echo $translator->trans('Remove'); ?></a>\n</li>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/slideshow/slideshow.phtml",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n?>\n<dl class=\"slideshow-preview\">\n    <dt><?php echo $this->escape($this->helperSlideshow->getHeadline()); ?> (<?php echo $this->helperSlideshow->getItemsCount(), ' ',  $this->translate(array(\n        $translator->trans('Item', array(), 'article_images'),\n        $translator->trans('Items', array(), 'article_images'),\n        $this->helperSlideshow->getItemsCount(),\n    )); ?>)</dt>\n    <?php $counter = 0; ?>\n    <?php foreach ($this->helperSlideshow->getItems() as $item) { ?>\n    <dd<?php echo $counter++ === 0 ? ' class=\"first\"' : ''; ?>><?php echo $this->slideshowItemPreview($item); ?></dd>\n    <?php } ?>\n</dl>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/slideshow/vimeo-preview.phtml",
    "content": "<div class=\"video-preview\"><iframe src=\"http://player.vimeo.com/video/<?php echo $this->code; ?>?portrait=0&amp;color=ffffff\" width=\"<?php echo $this->width; ?>\" height=\"<?php echo $this->height; ?>\" frameborder=\"0\" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe></div>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/slideshow/youtube-preview.phtml",
    "content": "<div class=\"video-preview\"><iframe width=\"<?php echo $this->width; ?>\" height=\"<?php echo $this->height; ?>\" src=\"http://www.youtube.com/embed/<?php echo $this->code; ?>?rel=0\" frameborder=\"0\" allowfullscreen></iframe></div>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/slideshow-attach-template.phtml",
    "content": "<script type=\"text/template\" id=\"slideshow-template\">\n<h3><%= headline %></h3>\n<ul>\n    <% _.each(items, function(item) { %>\n    <li><img src=\"<?php echo $this->baseUrl('/images/cache/'); ?><%= item.thumbnail.src %>\" alt=\"<%= item.caption %>\" width=\"<%= item.thumbnail.width %>\" height=\"<%= item.thumbnail.height %>\" /></li>\n    <% }); %>\n</ul>\n</script>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/slideshow-box.phtml",
    "content": "<?php $translator = \\Zend_Registry::get('container')->getService('translator'); ?>\n<div id=\"slideshow-controls\">\n    <a class=\"ui-state-default icon-button right-floated\" href=\"<?php echo $this->url(array(\n        'module' => 'admin',\n        'controller' => 'slideshow',\n        'action' => 'create',\n        'article_number' => $this->articleNumber,\n    )); ?>\" id=\"create-slideshow\"><span class=\"ui-icon ui-icon-plusthick\"></span><?php echo $translator->trans('Create', array(), 'home'); ?></a>\n\n    <a class=\"ui-state-default icon-button right-floated\" href=\"<?php echo $this->url(array(\n        'module' => 'admin',\n        'controller' => 'slideshow',\n        'action' => 'attach',\n        'article_number' => $this->articleNumber,\n    )); ?>\" id=\"attach-slideshow\"><span class=\"ui-icon ui-icon-plusthick\"></span><?php echo $translator->trans('Attach/Detach', array(), 'home'); ?></a>\n</div>\n\n<div class=\"clear\"></div>\n<ul id=\"slideshow-list\" class=\"block-list\"></ul>\n\n<script type=\"text/template\" id=\"slideshow-template\">\n<a href=\"<?php echo $this->url(array(\n    'module' => 'admin',\n    'controller' => 'slideshow',\n    'action' => 'edit',\n    'article_number' => $this->articleNumber,\n)); ?>/slideshow/<%= id %>\" title=\"<?php echo $translator->trans('Edit'); ?> <%= headline %>\"><%= headline %></a>\n</script>\n<script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('/js/underscore.js'); ?>\"></script>\n<script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('/js/backbone.js'); ?>\"></script>\n<script type=\"text/javascript\">\n(function($) {\n    /**\n     * Slideshow model\n     */\n    var Slideshow = Backbone.Model.extend({\n    });\n\n    /**\n     * Slideshow collection\n     */\n    var SlideshowCollection = Backbone.Collection.extend({\n        model: Slideshow,\n        url: <?php echo json_encode($this->url(array('controller' => 'slideshow', 'action' => 'box', 'article_number' => $this->articleNumber, 'format' => 'json'))); ?>,\n        comparator: function(slideshow) {\n            return -1 * slideshow.get('id');\n        }\n    });\n\n    /**\n     * Slideshow view\n     */\n    var SlideshowView = Backbone.View.extend({\n        tagName: \"li\",\n\n        initialize: function() {\n            this.model.bind('change', this.render, this);\n            this.template = _.template($('#slideshow-template').html());\n        },\n\n        render: function() {\n            $(this.el).html(this.template(this.model.toJSON()));\n            $(this.el).find('a').fancybox({\n                hideOnContentClick: false,\n                width: 1300,\n                height: 800,\n                type: 'iframe',\n                onClosed: function() {\n                    slideshowCollection.fetch();\n                }\n            });\n            return this;\n        }\n    });\n\n    /**\n     * Slideshow list view\n     */\n    var SlideshowListView = Backbone.View.extend({\n        initialize: function() {\n            this.collection = this.options.collection;\n            this.collection.bind('reset', this.render, this);\n            this.collection.reset(this.options.slideshows);\n        },\n\n        render: function() {\n            $('#slideshow-list').empty();\n            this.collection.each(function(slideshow) {\n                var view = new SlideshowView({model: slideshow});\n                $('#slideshow-list').append(view.render().el);\n            });\n            return this;\n        }\n    });\n\n    /**\n     * Slideshow controls\n     */\n    var SlideshowControls = Backbone.View.extend({\n    });\n\n    $(function() {\n        window.slideshowCollection = new SlideshowCollection();\n        var slideshowView = new SlideshowListView({collection: slideshowCollection, slideshows: <?php echo json_encode($this->slideshowsJson($this->slideshows)); ?>});\n        $('#media-slideshows a').fancybox({\n            hideOnContentClick: false,\n            width: 1300,\n            height: 800,\n            type: 'iframe',\n            onClosed: function() {\n                slideshowCollection.fetch();\n            }\n        });\n    });\n})(jQuery);\n</script>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/slideshow-list.phtml",
    "content": "<?php if (!$this->articlePage) {\n    $this->headScript()->appendFile($this->baseUrl('js/underscore.js'));\n    $this->headScript()->appendFile($this->baseUrl('js/backbone.js'));\n}\n?>\n<?php $this->headScript()->appendFile($this->baseUrl('js/views/PaginatorView.js')); ?>\n<?php $translator = \\Zend_Registry::get('container')->getService('translator'); ?>\n<div id=\"slideshow-app\">\n    <div id=\"slideshow-paginator\"></div><br />\n    <a id=\"add-slideshow\" href=\"<?php echo $this->url(array('controller' => 'slideshow', 'action' => 'create')); ?>\" class=\"modal button\"><?php echo $translator->trans('Create slideshow', array(), 'home'); ?></a>\n</div>\n\n<ul id=\"slideshow-list\" class=\"list-view grid slideshow-list\"></ul>\n\n<script type=\"text/template\" id=\"slideshow-template\">\n<h3 class=\"title\"><a href=\"<?php echo $this->url(array('controller' => 'slideshow', 'action' => 'edit')); ?>/slideshow/<%= id %>\" class=\"edit\" title=\"<%= headline %>\"><%= headline.substr(0, 22) %><% if (headline.length > 22) { %>..<% } %></a></h3>\n<div class=\"preview\">\n    <% if (!itemsCount) { %>\n    <span class=\"blank\"></span>\n    <% } else if (item) { %>\n    <img src=\"<?php echo $this->baseUrl('/images/cache/'); ?><%= item.thumbnail.src %>\" alt=\"\" />\n    <% } else { %>\n    <span class=\"video\"></span>\n    <% } %>\n</div>\n<a href=\"#\" class=\"delete\"><?php echo $translator->trans('Delete'); ?></a>\n</script>\n<?php echo $this->render('paginator-template.phtml'); ?>\n\n<script type=\"text/javascript\">\n(function($) {\n    // don't cache slideshows list requests\n    $.ajaxSetup({ cache: false });\n\n    /**\n     * Slideshow model\n     */\n    var Slideshow = Backbone.Model.extend({\n        defaults: {\n            item: null\n        },\n\n        initialize: function() {\n            if (this.get('items')) {\n                this.set('item', this.get('items')[0]);\n            }\n        }\n    });\n\n    /**\n     * Slideshow collection\n     */\n    var SlideshowCollection = Backbone.Collection.extend({\n        url: <?php echo json_encode($this->url(array('module' => 'admin', 'controller' => 'slideshow-rest'), 'rest')); ?>,\n        model: Slideshow\n    });\n\n    /**\n     * Slideshow view\n     */\n    var SlideshowView = Backbone.View.extend({\n        tagName: \"li\",\n\n        events: {\n            'click .delete': 'delete',\n        },\n\n        initialize: function() {\n            this.model.bind('change', this.render, this);\n            this.template = _.template($('#slideshow-template').html());\n        },\n\n        render: function() {\n            $(this.el).html(this.template(this.model.toJSON()));\n            $(this.el).find('.title .edit').fancybox({\n                hideOnContentClick: false,\n                width: 1300,\n                height: 800,\n                type: 'iframe',\n                onClosed: function() {\n                    slideshowCollection.fetch();\n                }\n            });\n            return this;\n        },\n\n        delete: function(e) {\n            e.preventDefault();\n            if (confirm(<?php echo json_encode($translator->trans('Are you sure you want to delete slideshow?', array(), 'home')); ?>)) {\n                this.model.destroy();\n                this.remove();\n            }\n        }\n    });\n\n    /**\n     * Slideshow list view\n     */\n    var SlideshowListView = Backbone.View.extend({\n        initialize: function() {\n            this.collection = this.options.collection;\n            this.collection.bind('reset', this.render, this);\n            this.collection.bind('remove', this.handleRemove, this);\n            this.collection.reset(this.options.slideshows);\n        },\n\n        render: function() {\n            $('#slideshow-list').empty();\n            this.collection.each(function(slideshow) {\n                var view = new SlideshowView({model: slideshow});\n                $('#slideshow-list').append(view.render().el);\n            });\n            return this;\n        },\n\n        handleRemove: function() {\n            this.collection.fetch();\n        }\n    });\n\n    /**\n     * Controls\n     */\n    var AppView = Backbone.View.extend({\n        el: $('#slideshow-app'),\n        initialize: function() {\n            $(this.el).find('a').fancybox({\n                hideOnContentClick: false,\n                width: 1300,\n                height: 800,\n                type: 'iframe',\n                onClosed: function() {\n                    slideshowCollection.fetch();\n                }\n            });\n        }\n    });\n\n    $(function() {\n        window.slideshowCollection = new SlideshowCollection();\n        var paginator = new PaginatorView({pages: <?php echo $this->pages; ?>, collection: slideshowCollection, el: $('#slideshow-paginator')});\n        var view = new SlideshowListView({collection: slideshowCollection, slideshows: <?php echo json_encode($this->slideshows); ?>});\n        var app = new AppView();\n    });\n})(jQuery);\n</script>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/slideshow-template.phtml",
    "content": "<?php $translator = \\Zend_Registry::get('container')->getService('translator'); ?>\n<script type=\"text/template\" id=\"slideshow-template\">\n<h3><%= headline %></h3>\n<a href=\"#\" class=\"delete\"><?php echo $translator->trans('Delete'); ?></a>\n<ul>\n    <% _.each(items, function(item) { %>\n    <li><img src=\"<?php echo $this->baseUrl('/images/cache/'); ?><%= item.thumbnail.src %>\" alt=\"<%= item.caption %>\" width=\"<%= item.thumbnail.width %>\" height=\"<%= item.thumbnail.height %>\" /></li>\n    <% }); %>\n</ul>\n</script>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/staff/add.phtml",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans('Add new staff member').' - Newscoop Admin', 'SET'); \n?>\n\n<?php echo $this->form; ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/staff/edit-access.phtml",
    "content": "<?php echo $this->jQueryUtils() ?>\n<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans('Permissions: $1', $this->staff).' - Newscoop Admin', 'SET'); ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/staff/edit.phtml",
    "content": "<?php \n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans('Change user account information').' - Newscoop Admin', 'SET'); ?>\n\n<?php $this->renderActions(); ?>\n\n<?php echo $this->form; ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/staff/table.phtml",
    "content": "<?php \n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans('Staff management').' - Newscoop Admin', 'SET'); \n?>\n\n<?php $this->renderActions(); ?>\n\n<?php $this->renderDatatable(); ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/support/close.phtml",
    "content": ""
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/support/index.phtml",
    "content": "<?php \n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans('Support Feedback', array(), 'support').' - Newscoop Admin', 'SET'); ?>\n\n<dl class=\"zend_form\" style=\"width: auto;\">\n    <p>\n    <?php echo($translator->trans('Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.', array(), 'support')); ?>\n    <br><br>\n    <a id=\"feedback_show\" href=\"#\"><?php echo($translator->trans('Show feedback data to be sent', array(), 'support')); ?></a>\n    <a id=\"feedback_hide\" href=\"#\" style=\"display: none;\"><?php echo($translator->trans('Hide feedback data', array(), 'support')); ?></a>\n    <br>\n    \n    <div id=\"feedback_container\" style=\"display: none;\">\n        <fieldset>\n            <div id=\"feedback\" style=\"overflow: auto; height: 100px;\">\n                <table style=\"width: 100%;\">\n                <?php foreach ($this->stats as $key => $value) { ?>\n                <tr>\n                    <td><?php echo($key); ?></td>\n                    <td><?php echo($value); ?></td>\n                </tr>\n                <?php } ?>\n                </table>\n            </div>\n        </fieldset>\n    </div>\n    </p>\n    \n    <?php if (empty($this->action)) { ?>\n    <b><?php echo($translator->trans('Current status: ', array(), 'support')); ?></b>\n        <?php\n        if ($this->support_send) {\n            echo($translator->trans('You are sending daily statistics.', array(), 'support'));\n        } else {\n            echo($translator->trans('You are NOT sending daily statistics.', array(), 'support'));\n        } ?>\n    <?php } ?>\n\n    <p><i><?php echo $translator->trans('By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy', array(), 'support'); ?> <a target=\"_blank\" href=\"http://www.sourcefabric.org/en/about/policy/\">http://www.sourcefabric.org/en/about/policy/</a></i></p>\n    \n    <form method=\"post\" id=\"support_send_form\" action=\"<?php echo $this->url(array('controller' => 'support', 'action' => $this->action), 'admin'); ?>\">\n        <input type=\"hidden\" id=\"stat_ask_time\" name=\"stat_ask_time\" value=\"7 days\" />\n        <input type=\"hidden\" id=\"support_send\" name=\"support_send\" value=\"<?php echo($this->support_send); ?>\">\n        <input type=\"button\" style=\"font-size: 12px; float: right;\" class=\"save-button yes\" value=\"<?php echo $this->escape($translator->trans('Yes, help Newscoop', array(), 'support')); ?>\">\n        <input type=\"button\" style=\"font-size: 12px; float: right;\" class=\"save-button never\" value=\"<?php echo $this->escape($translator->trans(\"Do not remind me\", array(), 'support')); ?>\">\n        <input type=\"button\" style=\"font-size: 12px; float: right;\" class=\"save-button\" value=\"<?php echo $this->escape($translator->trans('Remind me in 1 week', array(), 'support')); ?>\">\n        <div style=\"clear: both;\"></div>\n    </form>\n\n    <script type=\"text/javascript\">\n    $(function() {\n        $('#feedback_show, #feedback_hide').click(function() {\n            $('#feedback_container').toggle();\n            $('#feedback_show').toggle();\n            $('#feedback_hide').toggle();\n        });\n\n        $('.save-button').click(function(e) {\n            $('#support_send').val($(e.target).hasClass('yes') ? 1 : 0);\n            if ($(e.target).hasClass('never')) {\n                $('#stat_ask_time').val('10 years');\n            }\n\n            $('#support_send_form').submit();\n        });\n    });\n    </script>\n</dl>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/template/edit-image.phtml",
    "content": "<div class=\"template ui-widget-content small-block block-shadow theme-edit\">\n    <?php echo $this->replaceForm->setAttrib('class', 'replace'); ?>\n\n    <div class=\"image\">\n        <img src=\"<?php echo $this->baseUrl('themes/' . $this->basePath . $this->item->key . '?time=' . time()); ?>\" alt=\"\" />\n    </div>\n</div>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/template/edit-other.phtml",
    "content": "<div class=\"template ui-widget-content small-block block-shadow theme-edit\">\n    <?php echo $this->replaceForm->setAttrib('class', 'replace'); ?>\n\n    <div style=\"clear:both\"></div>\n</div>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/template/edit-template.phtml",
    "content": "<?php\n$this->form->content->setAttrib('id', 'template-edit-area');\n?>\n\n<div class=\"template ui-widget-content small-block block-shadow theme-edit\">\n<form enctype=\"multipart/form-data\" method=\"post\" class=\"replace\" action=\"\" name=\"replaceForm\">\n<dl class=\"zend_form\">\n<dd>\n<fieldset id=\"fieldset-theme_replace\" class=\"toggle\">\n\t<legend>Replace existing template</legend>\n\t<dl>\n\t   <dd style=\"text-align: left;\">\n\t\t<p class=\"info-text\"> You can replace the existing template with a new one of your choice. Browse below for a new template on your local disc, and <em>Replace</em> to apply the change.</p>\n\n            <dl>\n\t            <?php echo $this->replaceForm->getElement('file'); ?>\n\t            <div class=\"save-button-bar\" style=\"display: block\">\n\t                <input type=\"button\" name=\"cancel\" id=\"cancel\" value=\"Cancel\" onClick=\"document.replaceForm.reset();return false\">\n\t                <input type=\"submit\" name=\"submit\" id=\"submit\" value=\"Replace\">\n\t            </div>\n            </dl>\n\n\t\t    </dd>\n\t    </dl>\n\t</fieldset>\n</dd>\n</dl>\n</form>\n\n<form enctype=\"application/x-www-form-urlencoded\" method=\"post\" action=\"\" name=\"editTemplate\">\n<dl class=\"zend_form\">\n    <?php echo $this->form->getElement('csrf'); ?>\n    <?php echo $this->form->getElement('content'); ?>\n    <fieldset id=\"fieldset-geo_filtering\" class=\"toggle\">\n    <legend>Geofiltering</legend>\n    <dl>\n        <?php echo $this->form->getElement('geo_filtering'); ?>\n    </dl>\n    </fieldset>\n\n    <fieldset id=\"fieldset-cache_lifetime\">\n    <legend>Cache lifetime</legend>\n    <dl>\n        <?php echo $this->form->getElement('cache_lifetime'); ?>\n    </dl>\n    </fieldset>\n    <?php echo $this->form->getElement('submit'); ?>\n</dl>\n</form>\n</div>\n\n<script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('/js/editarea/edit_area/edit_area_full.js'); ?>\"></script>\n<script type=\"text/javascript\">\n$(function() {\n\n    editAreaLoader.init({\n        id : \"template-edit-area\",\n        start_highlight: true,\n        allow_toggle: true,\n        toolbar: \"search, go_to_line, |, undo, redo, |, select_font, |, syntax_selection, highlight, reset_highlight, word_wrap, |, change_smooth_selection, fullscreen, |, help\",\n        syntax: \"smarty\",\n        syntax_selection_allow: \"css,html,js,php,smarty,xml\",\n        is_editable: \"true\",\n        replace_tab_by_spaces: 2,\n        min_height: 600\n    });\n\n});\n</script>\n\n<script type=\"text/javascript\">\n\nwindow.open_filter_popup = function () {\n\tvar url = \"<?php echo $this->baseUrl('/admin/articles/locations/filter.php'); ?>\";\n\tif ((!window.geo_filter_window) || (window.geo_filter_window.closed)) {\n\t\twindow.geo_filter_window = window.open(url, 'geo_filter','height=680,width=900');\n\t}\n\ttry {\n\t\tif (window.focus)\n\t\t{\n\t\t\tgeo_filter_window.focus();\n\t\t}\n\t} catch (e) {alert(e);}\n\n};\n\n$(function() {\n\t$('#geo_filtering').click(function() {\n\t\twindow.open_filter_popup();\n\t});\n});\n\n</script>\n\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/template/index.phtml",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n?>\n<div class=\"currentDirectory\">\n\n    <strong><?php echo $translator->trans('Current directory:', array(), 'themes'); ?></strong>\n\n    <?php if (empty($this->path)) : ?>\n        <?php echo $translator->trans('Templates', array(), 'themes'); ?>\n    <?php else : ?>\n        <a href=\"<?php echo $this->url(array( 'path' => NULL )); ?>\"><?php echo $translator->trans('Templates', array(), 'themes'); ?></a>\n        \t/\n        \t<?php echo $this->navigation()->breadcrumbs()\n                ->setContainer($this->nav)\n                ->setMinDepth(0)\n                ->setSeparator(' / ');\n            ?>\n    <?php endif; ?>\n</div>\n\n<?php $this->renderActions(); ?>\n\n<form id=\"actions-form\" action=\"<?php echo $this->url(array(\n    'controller' => 'template',\n    'action' => 'index',\n    'next' => urlencode($this->url()),\n)); ?>\" method=\"<?php echo $this->form->getMethod(); ?>\">\n\n<div style=\"border: 1px solid #CCCCCC;margin: 1em 0;padding: 8px;\">\n\n    <?php echo $this->form->csrf; ?>\n    <?php echo $this->form->action; ?>\n    <?php echo $this->form->name; ?>\n    <?php echo $this->form->multiaction; ?>\n\n    <?php if ($this->doCache) : ?>\n    <span id=\"template-caching-status\" style=\"float:right; text-align:right; width:680px; color:#BFBFBF\">\n    \t<?php echo $translator->trans('Caching templates in:', array(), 'themes') ?>\n    \t<strong></strong>\n    </span>\n\t<?php endif; ?>\n</div>\n\n<table class=\"themeTemplatesTable templates\">\n<thead>\n<tr>\n    <th class=\"id\"><input type=\"checkbox\" name=\"toggle\" class=\"all\" /></th>\n    <th><?php echo $translator->trans('File name', array(), 'themes'); ?></th>\n    <th><?php echo $translator->trans('Type'); ?></th>\n    <th class=\"size\"><?php echo $translator->trans('File size', array(), 'themes'); ?></th>\n    <th><?php echo $translator->trans('Cache Lifetime', array(), 'themes'); ?></th>\n    <th><?php echo $translator->trans('Last modified', array(), 'themes'); ?></th>\n    <th></th><!-- size in bytes for sorting -->\n    <th></th>\n</tr>\n\n<?php if (!empty($this->path)) : ?>\n<tr class=\"parent\">\n    <td colspan=\"9\"><a href=\"<?php echo $this->url(array(\n        'path' => $this->parent,\n        'file' => null,\n        'next' => null,\n    )); ?>\" class=\"upOneLevel\" title=\"<?php echo $translator->trans('Go to parent'); ?>\"><?php echo $translator->trans('Go to parent', array(), 'themes'); ?></a></td>\n</tr>\n<?php endif; ?>\n\n</thead>\n\n<tbody>\n<?php foreach ($this->folders as $folder) : ?>\n<tr class=\"collection\">\n    <td class=\"id\"><input type=\"checkbox\" name=\"file[]\" value=\"<?php echo $folder->name; ?>\" /></td>\n    <td><a href=\"<?php echo $this->url(array(\n        'path' => ltrim($this->path . $this->separator . $folder->name, $this->separator),\n        'file' => null,\n        'next' => null,\n    )); ?>\" class=\"folder\" title=\"<?php echo $translator->trans(\"Go to $1\", array('$1' => $folder->name), 'themes'); ?>\"><?php echo $folder->name; ?></a></td>\n    <td>dir</td>\n    <td></td>\n    <td></td>\n    <td></td>\n    <td>-1</td>\n\n    <td class=\"menu\"><ul class=\"actionDropDown\">\n        <li><a href=\"#\"><?php echo $translator->trans('Actions'); ?></a><ul>\n            <li><a href=\"#delete\" class=\"delete\"><?php echo $translator->trans('Delete'); ?></a></li>\n        </ul></li>\n    </ul></td>\n</tr>\n<?php endforeach; ?>\n\n<?php foreach ($this->templates as $file) : ?>\n<tr class=\"template\" file-name=\"<?php echo $file->name ?>\">\n    <td class=\"id\"><input type=\"checkbox\" name=\"file[]\" value=\"<?php echo $file->name; ?>\" /></td>\n    <td><a href=\"<?php echo $this->url(array(\n        'controller' => 'template',\n        'action' => 'edit',\n        'path' => $this->path,\n        'file' => $file->name,\n        'next' => urlencode($this->url()),\n    )); ?>\" class=\"file\" title=\"<?php echo $translator->trans(\"Edit $1\", array('$1' => $file->name), 'themes'); ?>\"><?php echo $file->name; ?></a></td>\n    <td><?php echo $file->type; ?></td>\n    <td class=\"size\"><?php echo $this->formatBytes($file->size); ?></td>\n    <td><?php echo isset($file->id) ? $file->ttl : ''; ?></td>\n    <td><?php echo date($this->dateFormat, $file->ctime); ?></td>\n    <td><?php echo $file->size; ?></td>\n\n    <td class=\"menu\"><ul class=\"actionDropDown\">\n        <li><a href=\"#\"><?php echo $translator->trans('Actions'); ?></a><ul>\n            <li><a href=\"#rename\" class=\"rename\">Rename</a></li>\n            <li><a href=\"#move\" class=\"duplicate\">Move</a></li>\n            <li><a href=\"#copy\" class=\"duplicate\">Copy</a></li>\n            <li><a href=\"#delete\" class=\"delete\">Delete</a></li>\n        </ul></li>\n    </ul></td>\n</tr>\n<?php endforeach; ?>\n</tbody>\n</table>\n\n</form>\n\n<div class=\"dialogPopup\" title=\"<?php echo $translator->trans('New name', array(), 'themes'); ?>\">\n    <input type=\"text\" name=\"name\" />\n    <?php echo $this->moveForm->name; ?>\n</div>\n\n<script type=\"text/javascript\">\n$(function() {\n    // actions\n\t$(\".actionDropDown li\").hover(function(){\n\t\t$(this).children(\"ul\").css(\"display\",\"block\");\n\t\t$(this).children(\"a\").addClass(\"active\");\n\t}, function() {\n\t\t$(this).children(\"ul\").css(\"display\",\"none\");\n\t\t$(this).children(\"a\").removeClass(\"active\");\n\t});\n\n\t$(\".actionDropDown li ul li\").hover(function(){\n\t\t$(this).children(\"ul\").css(\"display\",\"block\");\n\t\t}, function() {\n\t\t$(this).childer(\"ul\").css(\"display\",\"none\");\n\t});\n\n    // dialog\n\t$('.dialogPopup').dialog({\n\t\tautoOpen: false,\n\t\twidth: 400,\n\t\tresizable: false,\n\t\tmodal: true,\n\t\tposition:'center',\n\t\tbuttons: {\n            <?php echo json_encode($translator->trans('Save')); ?>: function() {\n                var name = $('[name=\"name\"]', $(this)).not(':hidden').val();\n                if (!name.length) {\n                    alert(<?php echo json_encode($translator->trans(\"Name cant be empty\")); ?>);\n                    return;\n                }\n\n                var form = $('#actions-form');\n                $('input[name=\"name\"]', form).val(name);\n                form.submit();\n\t\t\t},\n            <?php echo json_encode($translator->trans('Cancel')); ?>: function() {\n\t\t\t\t$(this).dialog(\"close\");\n\t\t\t}\n        }\n\t});\n\n    // table row action\n\t$('table.templates a[href^=\"#\"]').click(function() {\n        var form = $('#actions-form');\n        var table = $('table', form);\n        var action = $(this).attr('href').substr(1);\n\n        // set action\n        $('input[name=\"action\"]', form).val(action);\n\n        // uncheck files\n        $('tbody input:checkbox:checked', table).each(function() {\n            $(this).attr('checked', false);\n        });\n\n        // check current file\n        $('input:checkbox', $(this).closest('tr')).each(function() {\n            $(this).attr('checked', true);\n        });\n\n        form.trigger('submit', [$(this).parents('tr:eq(0)').attr('file-name')]);\n\t});\n\n    // datatable\n    $('table.templates').dataTable({\n        'aoColumnDefs': [\n            { 'bSortable': false, 'aTargets': [0, -1] },\n            { 'bVisible': false, 'aTargets': [-2] },\n            { 'iDataSort': [7], 'aTargets': [4] }\n        ],\n        'oLanguage': {\n            'sLoadingRecords': <?php echo json_encode($translator->trans('Directory is empty', array(), 'themes')); ?>,\n        },\n        'sDom': 't',\n        'bPaginate': false,\n        'bServerSide': false,\n        'bStateSave': true,\n        'bJQueryUI': true\n    });\n\n    // check/uncheck all items\n    $('thead input:checkbox').change(function() {\n        var checked = (typeof $(this).attr(\"checked\") === 'undefined') ? false : true;\n        var table = $(this).closest('table');\n        $('tbody input:checkbox', table).each(function() {\n            $(this).attr(\"checked\", checked);\n        });\n    });\n\n    // update check all checkbox on item change\n    $('tbody input:checkbox').change(function() {\n        var table = $(this).closest('table');\n        if ($('tbody input:checkbox', table).size() == $('tbody input:checkbox:checked', table).size()) { // all checked\n            $('thead input:checkbox', table).attr(\"checked\", true);\n        } else {\n            $('thead input:checkbox', table).attr(\"checked\", false);\n        }\n    });\n\n    // check item on line click\n    $('tbody td').click(function(e) {\n        if (e.target.type == 'checkbox' || e.target.href) {\n            return;\n        }\n\n        var checkbox = $('input:checkbox', $(this).closest('tr'));\n        checkbox.attr('checked', !checkbox.attr('checked'));\n        checkbox.change();\n    });\n\n    // create name dialog\n    $('.content .navigation a[href^=\"#create\"]').click(function() {\n        var action = $(this).attr('href').substr(1);\n        $('#actions-form input[name=\"action\"]').val(action);\n        $('#actions-form').submit();\n\t\treturn false;\n    });\n\n    // multiaction submit\n    $('select[name=\"multiaction\"]').change(function() {\n        if (!$(this).val().length) {\n            return;\n        }\n\n        if (!$('tbody input:checkbox:checked').size()) {\n            $(this).val('');\n            alert(<?php echo json_encode($translator->trans(\"You must select at least one template to perform an action.\", array(), 'themes')); ?>);\n            return;\n        }\n\n        var form = $(this).closest('form');\n        $('input[name=\"action\"]', form).val($(this).val());\n        form.submit();\n    });\n\n    // submit actions form - ask for name if needed\n    $('#actions-form').bind( 'submit', function(evt, fn) {\n        var action = $('input[name=\"action\"]', $(this)).val();\n        var name = $('input[name=\"name\"]', $(this)).val();\n\n        if (!action.length) {\n            return false;\n        }\n\n        if (action != 'delete' && !name.length) {\n            switch (action)\n            {\n            \tcase 'move' :\n            \t\t$('#ui-dialog-title-1').html(<?php echo json_encode($translator->trans('Choose destination', array(), 'themes')); ?>);\n                    $('.dialogPopup select').show();\n                    $('.dialogPopup input').hide();\n                   \tbreak;\n            \tcase 'rename' :\n            \t\t$('#ui-dialog-title-1').html(<?php echo json_encode($translator->trans('Rename file', array(), 'themes')); ?>);\n                    $('.dialogPopup select').hide();\n                    $('.dialogPopup input').show().val(fn);\n                \tbreak;\n            \tdefault :\n            \t\t$('#ui-dialog-title-1').html(<?php echo json_encode($translator->trans('Set new name to', array(), 'themes')); ?>+' '+fn);\n                \t$('.dialogPopup select').hide();\n                \t$('.dialogPopup input').show();\n                \tbreak;\n            }\n\n\t\t    $('.dialogPopup').dialog('open');\n            return false;\n        }\n    });\n\n    <?php if ($this->doCache) : ?>\n\tvar cachePathList = <?php echo Zend_Json::encode( array('/') + $this->paths ) ?>;\n\tfunction cacheTemplates()\n\t{\n\t\tvar path = cachePathList.shift();\n\t\tif ( typeof path == 'undefined' )\n\t\t{\n\t\t\t$('#template-caching-status').text('<?php echo $translator->trans('Caching templates finished', array(), 'themes') ?>');\n\t\t\treturn;\n\t\t}\n\t\t$('#template-caching-status strong').text(path);\n    \t$.ajax\n    \t({\n    \t\turl : '<?php echo $this->url( array( 'controller'=>'template', 'action'=>'cache-templates', 'module'=>'admin' ), 'default', true ) ?>',\n    \t\tdata : { 'format' : 'json', 'path' : path, 'id' : <?php echo $this->themeId ?> },\n    \t\tdataType : 'json',\n    \t\tsuccess : cacheTemplates,\n    \t\terror : cacheTemplates\n    \t});\n\t};\n\tcacheTemplates.call(this);\n\t<?php endif; ?>\n});\n</script>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/template/upload.phtml",
    "content": "<?php \n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans('Upload', array(), 'themes').' - Newscoop Admin', 'SET'); \n?>\n\n<?php if (!$this->isWritable) {\n    echo $this->renderError($translator->trans(\"$1 is not writable\", array('$1' => $this->path), 'themes'));\n    return;\n} ?>\n\n<?php echo $this->form; ?>\n\n<?php $this->plupload(); ?>\n\n<script type=\"text/javascript\">\n$(function() {\n    // get existing files for given path\n    var items = [];\n    $.getJSON('<?php echo $this->url(array(\n        'action' => 'get-items',\n        'format' => 'json',\n    )); ?>', function(data) {\n        items = data.items;\n    });\n\n    // ask for confirmation if file would override existing\n    uploader = $('#uploader').pluploadQueue();\n    uploader.bind('FilesAdded', function(up, files) {\n        for (i in files) {\n            var file = files[i];\n\n            if (file.size == 0) {\n            \talert(\"<?php echo $translator->trans(\"The file $1 is empty.\", array('$1' => '\" + file.name + \"'), 'themes'); ?>\");\n            \tuploader.removeFile(uploader.getFile(file.id));\n            }\n\n            for (j in items) {\n                var item = items[j];\n                if (item.name == file.name) { // conflict\n                    if (!item.id) { // dir\n                        alert(\"<?php echo $translator->trans(\"Cant override directory $1.\", array('$1' => '\" + item.name + \"'), 'themes'); ?>\");\n                        up.removeFile(file);\n                    } else if (!confirm(\"<?php echo $translator->trans(\"Do you want to override $1?\", array('$1' => '\" + file.name + \"'), 'themes'); ?>\")) {\n                        up.removeFile(file);\n                    }\n\n                    break;\n                }\n            }\n        }\n    });\n\tuploader.bind('Error', function(up, args) {\n\t\tif( console ) console.dir(args);\n\t});\n});\n</script>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/test/index.phtml",
    "content": "<b><?php echo $this->text; ?></b>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/test/test-api-follow.phtml",
    "content": "<h4><?php echo $this->url ?></h4>\n<ul>\n<?php if( is_array($this->result) || is_object($this->result) ) foreach( $this->result as $k => $res ) : ?>\n\t<li><?php echo $k ?> <?php echo $res ?></li>\n<?php endforeach; ?>\n</ul>"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/test/test-api.phtml",
    "content": "<h3>Resources available on the api</h3>\n<ul>\n<?php foreach( $this->resouces as $resource => $resouceValue ) : ?>\n\t<li>\n        <a href=\"<?php echo $this->baseUrl() ?>/admin/test/test-api-follow/url/<?php echo base64_encode($resouceValue['href']) ?>\">\n            <?php echo $resource ?>\n        </a>\n    </li>\n<?php endforeach; ?>\n</ul>\n\n<h3>Publications available on the api</h3>\n<form action=\"<?php echo $this->baseUrl() ?>/admin/test/test-api-del-pub/\" method=\"get\">\n<ul>\n<?php foreach( $this->publications as $k => $v ) : ?>\n\t<li>\n\t\t<a href=\"<?php echo (string) $v['href'] ?>\"><?php echo $k ?> <?php echo $v ?></a>\n\t\t<a href=\"<?php echo $this->baseUrl() ?>/admin/test/test-api-del-pub/id/<?php echo $v ?>\">delete</a>\n\t\t<input type=\"checkbox\" name=\"id[]\" value=\"<?php echo $v ?>\" />\n\t</li>\n<?php endforeach; ?>\n</ul>\n<button type=\"submit\">Delete</button>\n</form>\n\n<h3>Insert</h3>\n<?php echo $this->insert->href ?>\n\n<h3>Update</h3>\n<?php var_dump($this->update) ?>\n<?php var_dump($this->update2) ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/themes/advanced-theme-settings.phtml",
    "content": "<?php \n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headLink( array( 'type' => 'text/css', 'href' => $this->baseUrl('/admin-style/common.css'), 'media' => 'screen', 'rel'\t=> 'stylesheet' ) ); ?>\n\n<div class=\"ui-widget-content small-block block-shadow theme-settings\">\n\t<div class=\"padded clearfix inner-tabs\">\n\t\t<div class=\"tabs\">\n\t\t\t<ul>\n\t\t\t\t<li><a href=\"#tabs-1\">Theme settings</a></li>\n\t\t\t\t<li><a href=\"#tabs-2\">Theme templates</a></li>\n\t\t\t</ul>\n\t\t\t<div id=\"tabs-1\">\n\t\t\t\t<div class=\"clear\"></div>\n\n\t\t\t\t<?php echo $this->action( 'wizard-theme-settings', 'themes', 'admin', array( 'format' => 'adv', 'id' => $this->themeId ) ) ?>\n\t\t\t\t<?php echo $this->action( 'wizard-theme-playlists', 'themes', 'admin', array('id' => $this->themeId ) ) ?>\n\t\t\t\t<div class=\"themeSettingsTabs\">\n\n\t\t\t\t\t<?php echo $this->action( 'wizard-theme-template-settings', 'themes', 'admin', array( 'format' => 'adv', 'id' => $this->themeId ) ) ?>\n\n\t\t\t\t\t<?php echo $this->action( 'wizard-theme-article-types', 'themes', 'admin', array( 'format' => 'adv', 'id' => $this->themeId ) ) ?>\n\n\t\t\t\t\t<input type=\"button\" name=\"submit\" id=\"submit-settings-ctrl\" class=\"button themeSettingsBtn\" value=\"<?php echo $translator->trans( 'Save All' , array(), 'themes') ?>\" alt=\"<?php echo $translator->trans( 'Saving..' , array(), 'themes') ?>\">\n\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div id=\"tabs-2\">\n\n                <?php echo $this->action('index', 'template', 'admin', $this->templatesParams); ?>\n\n\t\t\t\t<div class=\"clear\"></div>\n\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/themes/index.phtml",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n?>\n<style type=\"text/css\" media=\"screen\">\n.themes-container {\n    padding: 10px 10px 30px 10px;\n    border: 1px solid #ccc;\n    background-color: #FFF;\n    font-size: 12px;\n}\n</style>\n<div class=\"themes-container\">\n<div class=\"actions\">\n    <ul class=\"navigation\">\n        <!-- li><a class=\"add\" href=\"#\" id=\"create\">Create theme</a></li -->\n        <li><a class=\"upload\" href=\"#\" id=\"upload\"><?php echo $translator->trans('Import theme', array(), 'themes') ?></a></li>\n        <!-- li><a class=\"download\" href=\"#\" id=\"download\">Download theme</a></li -->\n        <!-- li><a class=\"duplicate\" href=\"#\" id=\"duplicate\">Duplicate theme</a></li -->\n    </ul>\n</div>\n\n<div class=\"ui-widget-content small-block themesListHolder\">\n\t<div class=\"tabs ui-tabs ui-widget ui-widget-content ui-corner-all\">\n    \t<ul class=\"themesListTabsBtns ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all\">\n        \t<li class=\"ui-state-default ui-corner-top ui-tabs-selected ui-state-active\">\n        \t\t<a href=\"javascript:void(0)\"><?php echo $translator->trans('Available themes', array(), 'themes') ?></a>\n        \t</li>\n        \t<?php foreach( $this->publications as $pub ) : ?>\n        \t\t<li class=\"ui-state-default ui-corner-top\">\n        \t\t    <a href=\"javascript:void(0)\" pub-id=\"<?php echo $pub->getId(); ?>\"><?php echo $this->escape($pub->getName()); ?></a>\n        \t\t</li>\n        \t<?php endforeach; ?>\n\t\t</ul>\n        <div id=\"tabs-1\">\n\n            <?php echo $this->mytable; ?>\n\n\t\t</div>\n\t</div>\n</div>\n</div>\n<script type=\"text/javascript\">\n$(function() {\n    $('.themesListHolder .ui-tabs .ui-widget-header li').hover(function() {\n        $(this).addClass('ui-state-hover');\n    }, function() {\n        $(this).removeClass('ui-state-hover');\n    });\n});\n</script>\n\n<script id=\"popupTmpl\" type=\"text/x-jQuery-tmpl\" title=\"<?php echo $translator->trans( 'Import theme' , array(), 'themes') ?>\">\n\t<div class=\"message-holder\">\n\t\t<div class=\"upload-error\" style=\"display:none\"><?php echo $translator->trans( 'Import failed!' , array(), 'themes') ?></div>\n\t\t<div class=\"upload-success\" style=\"display:none\"><?php echo $translator->trans( 'Import succeeded!' , array(), 'themes') ?></div>\n\t</div>\n\t<?php echo $this->uploadForm->setAttrib( 'target', 'upload-frame' ); ?>\n\t<iframe frameborder=\"0\" name=\"upload-frame\" id=\"upload-frame\" width=\"0\" height=\"0\"></iframe>\n</script>\n\n<script id=\"confirmDeleteTmpl\" type=\"text/x-jQuery-tmpl\" title=\"<?php echo $translator->trans( 'Delete theme' , array(), 'themes') ?>\">\n\t<div class=\"message-holder\">\n\t\t<div class=\"delete-message\"> </div>\n\t</div>\n\t<?php echo $translator->trans( 'Are you sure you want to delete this theme?' , array(), 'themes') ?>\n</script>\n\n<script id=\"confirmUnassignTmpl\" type=\"text/x-jQuery-tmpl\" title=\"<?php echo $translator->trans( 'Unassign theme' , array(), 'themes') ?>\">\n    <div class=\"message-holder\">\n        <div class=\"unassign-message\"> </div>\n        <?php echo $translator->trans( 'Are you sure you want to unassign this theme?' , array(), 'themes') ?>\n    </div>\n</script>\n\n<?php /* do not change this _0 here.. again */ ?>\n<script id=\"datatableTmpl_0\" type=\"text/x-jQuery-tmpl\">\n\t<ul class=\"themesListTabs ui-tabs ui-widget ui-corner-all\">\n\t\t{% for( i in images ) %}\n\t\t<li class=\"imageItem ui-tabs-panel ui-widget-content ui-corner-bottom\n\t\t\t{% if( i > 0 ) %} ui-tabs-hide {% endif %}\" id=\"themesListTabD\">\n            <a id=\"example1\" rel=\"theme_{{id}}\" href=\"<?php echo $this->themesPath ?>/{{images[i]}}\">\n\t\t\t\t<img src=\"<?php echo $this->themesPath ?>/{{images[i]}}\" alt=\"{{images[i]}}\" />\n\t\t\t</a>\n\t\t</li>\n\t\t{% endfor %}\n\t</ul>\n</script>\n\n<script id=\"datatableTmpl_1\" type=\"text/x-jQuery-tmpl\">\n\t<div class=\"themesListTabs ui-tabs\">\n\t\t<h3>{{title}} <span>// <?php echo $translator->trans( 'version' , array(), 'themes') ?> {{version}}</span></h3>\n        <p><i><b><?php echo $translator->trans( 'Design' , array(), 'themes') ?>:</b> {{designer}}</i></p>\n\t\t<ul class=\"imageCtrls ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all\">\n            <li class=\"ui-state-default ui-corner-top ui-tabs-selected ui-state-active\">\n                <a href=\"javascript:void(0)\" rel=\"theme_{{id}}_b\" title=\"<?php echo $translator->trans('Issue page', array(), 'themes'); ?>\">\n                    <?php echo $translator->trans( 'Issue page' , array(), 'themes') ?>\n\t\t\t\t\t<span><?php echo $translator->trans( 'Click to enlarge' , array(), 'themes') ?></span>\n\t\t\t\t</a>\n\t\t\t</li>\n            <li class=\"ui-state-default ui-corner-top\">\n                <a href=\"javascript:void(0)\" rel=\"theme_{{id}}_b\" title=\"<?php echo $translator->trans('Section page', array(), 'themes'); ?>\">\n\t\t\t\t\t<?php echo $translator->trans('Section page'); ?>\n\t\t\t\t\t<span><?php echo $translator->trans( 'Click to enlarge' , array(), 'themes') ?></span>\n\t\t\t\t</a>\n\t\t\t</li>\n        \t<li class=\"ui-state-default ui-corner-top\">\n                <a href=\"javascript:void(0)\" rel=\"theme_{{id}}_b\" title=\"<?php echo $translator->trans('Article page', array(), 'themes'); ?>\">\n                    <?php echo $translator->trans( 'Article page' , array(), 'themes') ?>\n\t\t\t\t\t<span><?php echo $translator->trans( 'Click to enlarge' , array(), 'themes') ?></span>\n\t\t\t\t</a>\n\t\t\t</li>\n    \t</ul>\n\t</div>\n</script>\n\n<script id=\"datatableTmpl_2\" type=\"text/x-jQuery-tmpl\">\n\t<div>\n\t\t<span class=\"compatibilityTitle\">{{compat}}</span>\n\t\t<i>{{text}}</i>\n\t</div>\n</script>\n\n<script id=\"datatableTmpl_3\" type=\"text/x-jQuery-tmpl\">\n\t<div class=\"actionMessage\"></div>\n\t<ul class=\"actionDropDown\">\n    \t<li>\n        \t<a href=\"#\"><?php echo $translator->trans( 'Actions' ) ?></a>\n\t\t\t<ul class=\"block-shadow\">\n\t\t\t\t<li>\n\t\t\t\t\t<a href=\"#\" class=\"add\"><span><?php echo $translator->trans( 'Add to publication' , array(), 'themes') ?></span></a>\n\t\t\t\t\t<ul class=\"block-shadow actions-publications\">\n\t\t\t\t\t\t<?php foreach( $this->publications as $pub ) : ?>\n\t\t\t\t\t\t<li>\n        \t\t    \t\t<a href=\"<?php echo $this->url( array\n        \t\t    \t\t(\n        \t\t    \t\t\t'action'     => 'assign-to-publication',\n        \t\t    \t\t\t'controller' => 'themes',\n        \t\t    \t\t    'module'     => 'admin',\n        \t\t    \t\t    'pub-id'     => $pub->getId(),\n        \t\t    \t\t    'theme-id'\t => '{{id}}'\n        \t\t    \t\t), null, null, false )?>\"\n\t\t\t\t\t\t\tpub-id=\"<?php echo $pub->getId(); ?>\" class=\"assign-ctrl\"><?php echo $this->escape($pub->getName()); ?></a>\n        \t\t\t\t</li>\n        \t            <?php endforeach; ?>\n\t\t\t\t\t\t<li class=\"copy-to-avail-themes\" style=\"display:none\">\n        \t\t    \t\t<a href=\"<?php echo $this->url( array\n        \t\t    \t\t(\n        \t\t    \t\t\t'action'     => 'copy-to-available',\n        \t\t    \t\t\t'controller' => 'themes',\n        \t\t    \t\t    'module'     => 'admin',\n        \t\t    \t\t    'theme-id'\t => '{{id}}'\n        \t\t    \t\t), null, null, false )?>\"><?php echo $translator->trans( 'Copy to available themes' , array(), 'themes'); ?></a>\n        \t\t\t\t</li>\n\t\t\t\t\t</ul>\n\t\t\t\t</li>\n\t\t\t\t<li>\n\t\t\t\t\t<a href=\"<?php echo $this->url( array\n    \t\t\t\t    (\n    \t\t\t\t    \t'action'     => 'unassign',\n    \t\t\t\t    \t'controller' => 'themes',\n    \t\t\t\t    \t'module'     => 'admin',\n    \t\t\t\t    \t'id'         => '{{id}}'\n    \t\t\t\t    ), null, null, false )  ?>\" class=\"unassign\" style=\"display:none\">\n\t\t\t\t\t\t<?php echo $translator->trans( 'Unassign' , array(), 'themes') ?>\n\t\t\t\t\t</a>\n\t\t\t\t</li>\n\t\t\t\t<li>\n\t\t\t\t\t<a href=\"<?php echo $this->url( array\n    \t\t\t\t    (\n    \t\t\t\t    \t'action'     => 'advanced-theme-settings',\n    \t\t\t\t    \t'controller' => 'themes',\n    \t\t\t\t    \t'module'     => 'admin',\n    \t\t\t\t    \t'id'         => '{{id}}'\n    \t\t\t\t    ), null, null, false )  ?>\" class=\"edit\">\n\t\t\t\t\t\t<?php echo $translator->trans( 'Edit' ) ?>\n\t\t\t\t\t</a>\n\t\t\t\t</li>\n\t\t\t\t<li>\n\t\t\t\t\t<a href=\"<?php echo $this->url( array\n    \t\t\t\t    (\n    \t\t\t\t    \t'action'     => 'export',\n    \t\t\t\t    \t'controller' => 'themes',\n    \t\t\t\t    \t'module'     => 'admin',\n    \t\t\t\t    \t'id'         => '{{id}}'\n    \t\t\t\t    ), null, null, false )  ?>\" class=\"download\">\n\t\t\t\t\t\t<?php echo $translator->trans( 'Export' , array(), 'themes') ?> (<?php echo $translator->trans( 'zip' , array(), 'themes') ?>)\n\t\t\t\t\t</a>\n\t\t\t\t</li>\n            \t<li>\n\t\t\t\t\t<a href=\"<?php echo $this->url( array\n    \t\t\t\t    (\n    \t\t\t\t    \t'action'     => 'delete',\n    \t\t\t\t    \t'controller' => 'themes',\n    \t\t\t\t    \t'module'     => 'admin',\n    \t\t\t\t    \t'id'         => '{{id}}'\n    \t\t\t\t    ), null, null, false )  ?>\" class=\"delete\">\n\t\t\t\t\t\t<?php echo $translator->trans( 'Delete' ) ?>\n\t\t\t\t\t</a>\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t</li>\n\t</ul>\n</script>\n\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/themes/output-edit.phtml",
    "content": "<?php echo $this->outputForm ?> \n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/themes/wizard-theme-article-types.adv.phtml",
    "content": "<div class=\"articleTypes\">\n<form id=\"\" method=\"post\"\n\taction=\"<?php echo $this->url(array( 'action' => 'article-types-edit', 'controller' => 'themes', 'module' => 'admin' )) ?>\">\n\n<?php echo $this->formHidden( 'themeId', $this->theme->id, array( 'id' => null ) ) ?>\n\n<fieldset>\n\n\t<legend>Match article types</legend>\n\t<div class=\"themeArticleType\">\n        <h4>Theme article types</h4>\n        <?php $allCount = 0; ?>\n        <?php foreach ( $this->themeArticleTypes as $typeName => $typeFields ) : ?>\n        \t<span>\n        \t    <?php echo $typeName ?>\n        \t\t<?php echo $this->formHidden( 'themeArticleTypes[]', $typeName, array( 'id' => null ) ) ?>\n        \t</span>\n        \t<ul>\n        \t<?php foreach ( $typeFields as $fieldName => $fieldProps ) : ?>\n    \t\t\t<li>\n    \t\t\t    <?php echo $this->camelize($fieldName) ?> (<?php echo $fieldProps->type ?> <?php echo $fieldProps->length ?>)\n    \t\t\t    <?php echo $this->formHidden( \"themeArticleTypeFields[$typeName][]\", $fieldName, array( 'id' => null ) ) ?>\n    \t\t\t</li>\n        \t<?php $allCount++; ?>\n        \t<?php endforeach; ?>\n        \t</ul>\n       \t<?php $allCount++; ?>\n        <?php endforeach; ?>\n   </div>\n\n   <div class=\"matchWithExisting\">\n\t\t<h4>Match with existing</h4>\n        <ul>\n        \t<?php foreach( $this->themeArticleTypes as $articleTypeName => $typeFields ) : ?>\n        \t<li>\n        \t\t<div>\n        \t\t\t<?php echo $this->formCheckbox( \"articleTypeIgnore[$articleTypeName]\" ) ?>\n        \t\t\t<?php echo $this->formLabel( \"articleTypeIgnore[$articleTypeName]\", \"Do Nothing\") ?>\n        \t\t</div>\n            \t<div>\n            \t\t<?php echo $this->formCheckbox( \"articleTypeCreate[$articleTypeName]\" ) ?>\n        \t\t\t<?php echo $this->formLabel( \"articleTypeCreate[$articleTypeName]\", \"Create article type\") ?>\n            \t</div>\n            \t<select class=\"input_select articleType\" name=\"articleTypes[<?php echo $articleTypeName ?>]\">\n    \t\t\t<?php foreach( $this->articleTypeNames as $atn ) : ?>\n\t\t\t\t\t<option value=\"<?php echo $atn ?>\"\n\t\t\t\t\t\t<?php if( $this->camelize( $atn ) == $this->camelize( $articleTypeName ) ) : // strtolower( str_replace( \"_\", \" \", $atn ) ) == strtolower( $articleTypeName ) ?>\n\t\t\t\t\t\t\tselected=\"selected\"\n\t\t\t\t\t\t<?php endif; ?>>\n\t\t\t\t\t\t<?php echo $atn ?></option>\n\t\t\t\t<?php endforeach; ?>\n            \t</select>\n            \t<ul>\n            \t\t<?php foreach( $typeFields as $typeFieldName =>  $typeFields ) : ?>\n            \t\t<li class=\"withPadding\">\n                \t\t<div>\n                \t\t\t<?php echo $this->formCheckbox( \"articleTypeFieldIgnore[$articleTypeName][$typeFieldName]\" ) ?>\n                \t\t\t<?php echo $this->formLabel( \"articleTypeFieldIgnore[$articleTypeName][$typeFieldName]\", \"Do Nothing\") ?>\n                \t\t</div>\n                    \t<div>\n                    \t\t<?php echo $this->formCheckbox( \"articleTypeFieldCreate[$articleTypeName][$typeFieldName]\" ) ?>\n                \t\t\t<?php echo $this->formLabel( \"articleTypeFieldCreate[$articleTypeName][$typeFieldName]\", \"Create field type\") ?>\n                    \t</div>\n                \t\t<select class=\"input_select articleTypeFields\" name=\"articleTypeFields[<?php echo $articleTypeName ?>][<?php echo $typeFieldName ?>]\">\n\n                \t\t</select>\n                \t</li>\n                \t<?php endforeach; ?>\n            \t</ul>\n            </li>\n        \t<?php endforeach; ?>\n        </ul>\n\t</div>\n\n</fieldset>\n\n</form>\n</div>"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/themes/wizard-theme-article-types.phtml",
    "content": ""
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/themes/wizard-theme-files.adv.phtml",
    "content": "<ul class=\"currentDirectory\">\n\t\t\t\t\t<li>Current directory:</li>\n\t\t\t\t\t<li>/</li>\n\t\t\t\t</ul>\n\t\t\t\t<fieldset class=\"themeTemplatesActionHolder\">\n\t\t\t\t\t<select\tclass=\"input_select\">\n\t\t\t\t\t\t<option>Actions</option>\n\t\t\t\t\t\t<option>1</option>\n\t\t\t\t\t\t<option>1</option>\n\t\t\t\t\t</select>\n\t\t\t\t</fieldset>\n\n\t\t\t\t<div class=\"dataTables_wrapper\">\n\t\t\t\t\t<div class=\"fg-toolbar ui-toolbar ui-widget-header ui-corner-tl ui-corner-tr ui-helper-clearfix\">\n\t\t\t\t\t\t<!--<div id=\"gridx_filter\" class=\"dataTables_filter\"></div>-->\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<table cellspacing=\"0\" cellpadding=\"0\" class=\"datatable themeTemplatesTable\" id=\"gridx\" style=\"width: 100%; margin: 0pt;\">\n\n\t\t\t\t\t\t<colgroup>\n                    \t\t<col width=\"20px\">\n                    \t\t<col width=\"264px\">\n                    \t\t<col width=\"60px\">\n                    \t\t<col width=\"80px\">\n                    \t\t<col width=\"160px\">\n                    \t\t<col width=\"120px\">\n                    \t\t<col width=\"100px\">\n                    \t</colgroup>\n                    \t<thead>\n                    \t\t<tr>\n                    \t\t\t<th class=\"ui-state-default\">\n                    \t\t\t<div class=\"DataTables_sort_wrapper\"><input type=\"checkbox\"> <span></span></div>\n                    \t\t\t</th>\n                    \t\t\t<th class=\"name ui-state-default\">\n                    \t\t\t<div class=\"DataTables_sort_wrapper\">Name<span\n                    \t\t\t\tclass=\"css_right ui-icon ui-icon-carat-2-n-s\"></span></div>\n                    \t\t\t</th>\n                    \t\t\t<th class=\"ui-state-default\">\n                    \t\t\t<div class=\"DataTables_sort_wrapper\">ID<span\n                    \t\t\t\tclass=\"css_right ui-icon ui-icon-carat-2-n-s\"></span></div>\n                    \t\t\t</th>\n                    \t\t\t<th class=\"ui-state-default\">\n                    \t\t\t<div class=\"DataTables_sort_wrapper\">Type<span\n                    \t\t\t\tclass=\"css_right ui-icon ui-icon-carat-2-n-s\"></span></div>\n                    \t\t\t</th>\n                    \t\t\t<th class=\"ui-state-default flag\">\n                    \t\t\t<div class=\"DataTables_sort_wrapper\">Cache lifetime, sec.<span\n                    \t\t\t\tclass=\"css_right ui-icon ui-icon-carat-2-n-s\"></span></div>\n                    \t\t\t</th>\n                    \t\t\t<th class=\"ui-state-default flag\">\n                    \t\t\t<div class=\"DataTables_sort_wrapper\">Date modified<span\n                    \t\t\t\tclass=\"css_right ui-icon ui-icon-carat-2-n-s\"></span></div>\n                    \t\t\t</th>\n                    \t\t\t<th class=\"ui-state-default flag\">\n                    \t\t\t<div class=\"DataTables_sort_wrapper\">Action<span></span></div>\n                    \t\t\t</th>\n                    \t\t</tr>\n                    \t</thead>\n                    \t<tbody>\n                    \t\t<tr class=\"odd controls\">\n                    \t\t\t<td colspan=\"7\"><a href=\"#\" class=\"upOneLevel\">up one level </a></td>\n                    \t\t</tr>\n                    \t\t<tr class=\"odd\">\n                    \t\t\t<td><input type=\"checkbox\"></td>\n                    \t\t\t<td><a href=\"#\" class=\"folder\">_css</a></td>\n                    \t\t\t<td>&nbsp;</td>\n                    \t\t\t<td>dir</td>\n                    \t\t\t<td align=\"center\">&nbsp;</td>\n                    \t\t\t<td>&nbsp;</td>\n                    \t\t\t<td>\n                    \t\t\t<ul class=\"actionDropDown\">\n                    \t\t\t\t<li><a href=\"#\">Actions</a>\n                    \t\t\t\t<ul>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"newFolder\">New folder</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"newTemplate\">New template</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"rename\">Rename</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"duplicate\">Duplicate</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"delete\">Delete</a></li>\n                    \t\t\t\t</ul>\n                    \t\t\t\t</li>\n                    \t\t\t</ul>\n                    \t\t\t</td>\n                    \t\t</tr>\n                    \t\t<tr class=\"even\">\n                    \t\t\t<td><input type=\"checkbox\"></td>\n                    \t\t\t<td><a href=\"#\" class=\"folder\">_img</a></td>\n                    \t\t\t<td>&nbsp;</td>\n                    \t\t\t<td>dir</td>\n                    \t\t\t<td align=\"center\">&nbsp;</td>\n                    \t\t\t<td>&nbsp;</td>\n                    \t\t\t<td>\n                    \t\t\t<ul class=\"actionDropDown\">\n                    \t\t\t\t<li><a href=\"#\">Actions</a>\n                    \t\t\t\t<ul>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"newFolder\">New folder</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"newTemplate\">New template</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"rename\">Rename</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"duplicate\">Duplicate</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"delete\">Delete</a></li>\n                    \t\t\t\t</ul>\n                    \t\t\t\t</li>\n                    \t\t\t</ul>\n                    \t\t\t</td>\n                    \t\t</tr>\n                    \t\t<tr class=\"odd\">\n                    \t\t\t<td><input type=\"checkbox\"></td>\n                    \t\t\t<td><a href=\"#\" class=\"folder\">_tpl</a></td>\n                    \t\t\t<td>&nbsp;</td>\n                    \t\t\t<td>dir</td>\n                    \t\t\t<td align=\"center\">&nbsp;</td>\n                    \t\t\t<td>&nbsp;</td>\n                    \t\t\t<td>\n                    \t\t\t<ul class=\"actionDropDown\">\n                    \t\t\t\t<li><a href=\"#\">Actions</a>\n                    \t\t\t\t<ul>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"newFolder\">New folder</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"newTemplate\">New template</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"rename\">Rename</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"duplicate\">Duplicate</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"delete\">Delete</a></li>\n                    \t\t\t\t</ul>\n                    \t\t\t\t</li>\n                    \t\t\t</ul>\n                    \t\t\t</td>\n                    \t\t</tr>\n                    \t\t<tr class=\"even\">\n                    \t\t\t<td><input type=\"checkbox\"></td>\n                    \t\t\t<td><a href=\"#\" class=\"file\">issue.tpl</a></td>\n                    \t\t\t<td>1128</td>\n                    \t\t\t<td>template</td>\n                    \t\t\t<td align=\"center\">0</td>\n                    \t\t\t<td align=\"right\">28.04.2011</td>\n                    \t\t\t<td>\n                    \t\t\t<ul class=\"actionDropDown\">\n                    \t\t\t\t<li><a href=\"#\">Actions</a>\n                    \t\t\t\t<ul>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"newFolder\">New folder</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"newTemplate\">New template</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"rename\">Rename</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"duplicate\">Duplicate</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"delete\">Delete</a></li>\n                    \t\t\t\t</ul>\n                    \t\t\t\t</li>\n                    \t\t\t</ul>\n                    \t\t\t</td>\n                    \t\t</tr>\n                    \t\t<tr class=\"odd\">\n                    \t\t\t<td><input type=\"checkbox\"></td>\n                    \t\t\t<td><a href=\"#\" class=\"file\">section.tpl</a></td>\n                    \t\t\t<td>1129</td>\n                    \t\t\t<td>template</td>\n                    \t\t\t<td align=\"center\">0</td>\n                    \t\t\t<td align=\"right\">28.04.2011</td>\n                    \t\t\t<td>\n                    \t\t\t<ul class=\"actionDropDown\">\n                    \t\t\t\t<li><a href=\"#\">Actions</a>\n                    \t\t\t\t<ul>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"newFolder\">New folder</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"newTemplate\">New template</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"rename\">Rename</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"duplicate\">Duplicate</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"delete\">Delete</a></li>\n                    \t\t\t\t</ul>\n                    \t\t\t\t</li>\n                    \t\t\t</ul>\n                    \t\t\t</td>\n                    \t\t</tr>\n                    \t\t<tr class=\"even\">\n                    \t\t\t<td><input type=\"checkbox\"></td>\n                    \t\t\t<td><a href=\"#\" class=\"file\">article.tpl</a></td>\n                    \t\t\t<td>1130</td>\n                    \t\t\t<td>template</td>\n                    \t\t\t<td align=\"center\">0</td>\n                    \t\t\t<td align=\"right\">28.04.2011</td>\n                    \t\t\t<td>\n                    \t\t\t<ul class=\"actionDropDown\">\n                    \t\t\t\t<li><a href=\"#\">Actions</a>\n                    \t\t\t\t<ul>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"newFolder\">New folder</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"newTemplate\">New template</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"rename\">Rename</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"duplicate\">Duplicate</a></li>\n                    \t\t\t\t\t<li><a href=\"#\" class=\"delete\">Delete</a></li>\n                    \t\t\t\t</ul>\n                    \t\t\t\t</li>\n                    \t\t\t</ul>\n                    \t\t\t</td>\n                    \t\t</tr>\n                    \t</tbody>\n\t\t\t\t\t</table>\n\t\t\t\t</div>"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/themes/wizard-theme-playlists.phtml",
    "content": "<?php \n$translator = \\Zend_Registry::get('container')->getService('translator');\n?>\n<div class=\"playlists\">\n    <form id=\"\" method=\"post\" action=\"<?php echo $this->url(array( 'action' => 'update-playlists', 'controller' => 'themes', 'module' => 'admin', 'id' => $this->theme->getId() )) ?>\">\n        <fieldset>\n            <legend><?php echo $translator->trans('Theme playlists', array(), 'themes') ?></legend>\n            <?php if (count($this->themePlaylists) > 0)  { ?>\n                <?php if ($this->playlistsAreUpToDate == false) { ?>\n                <div style=\"padding: 5px; border: 1px solid #ccc; background-color: red; color: #fff; margin-bottom: 10px;\">\n                    <div style=\"float:left; padding: 5px;\"><?php echo $translator->trans('Cached informations about theme playlists are not up to date!', array(), 'themes') ?></div>\n                    <input style=\"float:right;\" type=\"submit\" name=\"submit\" id=\"update-theme-playlists\" class=\"button themePlaylistsBtn\" value=\"<?php echo $translator->trans( 'Update cached data' , array(), 'themes') ?>\">\n                    <div style=\"clear:both\"></div>\n                </div>\n                <?php } ?>\n                <?php foreach($this->themePlaylists as $key => $themePlaylist) { ?>\n                    <div class=\"playlist\" style=\"border: 1px solid #cccccc;padding: 10px; margin-bottom: 7px;\">\n                        <div class=\"playlist-header\" style=\"width: 400px\">\n                            <h4 style=\"margin-bottom: 10px;margin-top: 0px; font-weight: normal;\"><?php echo $translator->trans('Playlist name', array(), 'themes') ?>: <span style=\"font-weight: bold;\"><?php echo $key ?></span></h4>\n                        </div>\n                        <div style=\"clear: both\"></div>\n                        <div>\n                            <label><?php echo $translator->trans('Assigned templates', array(), 'themes') ?>: </label>\n                            <?php if (count($themePlaylist['templates']) > 0){ ?>\n                                <?php $iterator = 1; ?>\n                                <?php foreach($themePlaylist['templates'] as $template) { ?>\n                                    <span style=\"font-weight: bold;\"><?php echo $template ?><?php if ($iterator < count($themePlaylist['templates'])){?>,<?php } ?></span>\n                                    <?php $iterator++; ?>\n                                <?php } ?>\n                            <?php } ?>\n                        </div>\n                    </div>\n                <?php } ?>\n            <?php } else {\n                $twig = \\Zend_Registry::get('container')->getService('newscoop_newscoop.twig.newscoop_extension');\n                echo $twig->renderTip($translator->trans(\"Below code should be placed into theme.xml (between 'theme' nodes) file to make it work. This file is located in every theme's main directory.\", array(), 'themes'), '\n<articlesLists> <!-- main section -->\n  <list name=\"FrontPage\"> <!-- single playlist declaration -->\n    <template file=\"article.tpl\" /> <!-- single template file assigned to playlist declaration -->\n  </list>\n  <list name=\"Second Playlist\">\n    <template file=\"issue.tpl\" />\n    <template file=\"front.tpl\" />\n  </list>\n</articlesLists>').'<br>';\n                echo $translator->trans(\"The theme's configuration file does not contain information about the list of used featured articles.\", array(), 'themes');\n             } ?>\n        </fieldset>\n    </form>\n</div>\n<script>\n    $('.coverMessage').toggle();\n</script>"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/themes/wizard-theme-settings.adv.phtml",
    "content": "<fieldset class=\"versionHolder\">\n\t\t\t\n    <?php echo $this->themeForm ?>\n\t\t\t\t\n</fieldset>"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/themes/wizard-theme-settings.phtml",
    "content": ""
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/themes/wizard-theme-template-settings.adv.phtml",
    "content": "<a href=\"#\" class=\"addNewOutput\" style=\"display:none\">Add new output</a>\n<ul class=\"themeSettingsTabsNav\" style=\"display:none\">\n    <?php foreach( $this->outputs as $k => $out ) : ?>\n\t\t<li>\n\t\t\t<a  theme-id=\"<?php echo $this->theme->id ?>\"\n\t\t\t\toutput-id=\"<?php echo $out->getId() ?>\"\n\t\t\t\thref=\"#themeSettingsTab<?php echo $k+1 ?>\">\n\t\t\t    <?php echo $out->getName() ?>\n\t\t\t</a>\n\t\t</li>\n    <?php endforeach; ?>\n</ul>\n<div id=\"themeSettingsTab\" class=\"ui-tabs-panel ui-widget-content ui-corner-bottom\">\n\t<fieldset class=\"templateSettings\">\n\t\t<legend>Template settings</legend>\n\n\t\t<!-- load from output-edit action -->\n\t\t<div class=\"form-container\">Loading...</div>\n\n\t</fieldset>\n</div>"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/themes/wizard-theme-template-settings.phtml",
    "content": ""
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/toggle-checkbox.phtml",
    "content": "<input class=\"toggle-checkbox\" type=\"checkbox\">\n<script type=\"text/javascript\">\n$('.toggle-checkbox').click(function(){\n    if($(this).is(':checked'))\n        $('.table-checkbox').attr('checked','checked');\n    else\n    \t$('.table-checkbox').removeAttr('checked');\n});\n</script>"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/user/create.phtml",
    "content": "<?php \n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans('Create new account', array(), 'users').' - Newscoop Admin', 'SET'); \n?>\n\n<div class=\"form-div-container\">\n<form id=\"edit-form\" enctype=\"application/x-www-form-urlencoded\" action=\"\" method=\"post\">\n<dl class=\"zend_form\" style=\"width: 99%;\">\n <div class=\"form-div left-box\"><?php echo $this->form->getDisplayGroup('adminSettings'); ?></div>\n <div class=\"form-div right-box\">\n    <?php echo $this->form->getSubForm('attributes'); ?>\n    <?php echo $this->form->submit->setAttrib('style', 'float:right;'); ?>\n    </div>\n <br style=\"clear: left;\" />\n</dl>\n</form>\n</div>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/user/edit-password.phtml",
    "content": "<?php \n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans(\"Edit your password\", array(), 'users').' - Newscoop Admin', 'SET'); ?>\n\n<?php echo $this->form; ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/user/edit.phtml",
    "content": "<?php \n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans(\"Edit user $1\", array('$1' => $this->user->getUsername()), 'users').' - Newscoop Admin', 'SET'); ?>\n\n<div class=\"form-div-container\">\n<form id=\"edit-form\" enctype=\"application/x-www-form-urlencoded\" action=\"\" method=\"post\">\n<dl class=\"zend_form\" style=\"width: 99%;\">\n <div class=\"form-div left-box\"><?php echo $this->form->getDisplayGroup('adminSettings'); ?></div>\n <div class=\"form-div right-box\">\n    <dd id=\"attributes-element\">\n        <fieldset id=\"fieldset-attributes\">\n        <dl>\n            <?php $this->renderActions(); ?>\n            <?php if ($this->user->isPublic()) { ?>\n            <div class=\"edit-image\">\n                <a href=\"<?php echo $this->url(array(\n                    'module' => 'admin',\n                    'controller' => 'user',\n                    'action' => 'profile',\n                    'user' => $this->user->getId(),\n                )); ?>\" class=\"iframe\"><img src=\"<?php echo $this->originalImage ? $this->url(array('src' => $this->image), 'image', false, false) : $this->baseUrl('admin-style/NoPicture.gif'); ?>\" width=\"80\" height=\"80\" /><br /><?php echo $translator->trans('Edit profile', array(), 'users'); ?></a>\n            </div>\n            <?php } ?>\n        </dl>\n        </fieldset>\n    </dd>\n    <?php echo $this->form->getSubForm('attributes'); ?>\n    <?php echo $this->form->submit->setAttrib('style', 'float:right;'); ?>\n    </div>\n <br style=\"clear: left;\" />\n</dl>\n</form>\n</div>\n\n\n<div id=\"user-image\" style=\"display:none\">\n    <img id=\"original-image\" src=\"<?php echo $this->url(array('src' => '../'.$this->originalImage), 'image', false, false); ?>\" width=\"100%\" height=\"100%\"/><br>\n    <label><b><?php echo $translator->trans(\"URL\"); ?>: </b></label><br>\n    <input onclick=\"this.select();\" class=\"input_text\" value=\"<?php echo $this->baseImage ?>\" style=\"width:99%\"type=\"text\"/>\n</div>\n\n<script>\n$(function() {\n    $(\"a#user-image-btn\").fancybox({\n        'onStart': function() { $(\"#user-image\").css(\"display\",\"block\"); },\n        'onClosed': function() { $(\"#user-image\").css(\"display\",\"none\"); }\n    });\n });\n$('.content a.iframe').fancybox({\n    hideOnContentClick: false,\n    width: 900,\n    height: 600,\n    'onClosed':function () {\n        setTimeout(function() {\n            window.location.reload();\n        }, 500);\n    },\n});\n<?php if ($this->user->isPublic() && $this->originalImage) { ?>\n$('.content .actions .navigation').append('<li><a href=\"#user-image\" id=\"user-image-btn\"><?php echo $translator->trans(\"User image (full-size)\", array(), 'users'); ?></a></li>');\n<?php } ?>\n$('#edit-form').submit(function() {\n    $('#save_button').attr('disabled', 'disabled');\n});\n</script>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/user/geolocation.phtml",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n?>\n<style type=\"text/css\" media=\"screen\">\n    #location-search {\n        margin-top: 5px;\n    }\n</style>\n<script src=\"/js/jquery/jquery-1.7.1.min.js\"></script>\n<form id=\"edit-form\" enctype=\"application/x-www-form-urlencoded\" action=\"\" method=\"post\">\n<dl class=\"zend_form\" style=\"width: 99%;\">\n<dd id=\"attributes-element\">\n        <center>\n        <fieldset id=\"fieldset-attributes\">\n        <dl><?php echo $this->form->geolocation; ?>\n            <input type=\"text\" id=\"address\" value=\"\" placeholder=\"<?php echo $translator->trans('Search for place or coordinate', array(), 'geolocation'); ?>\" class=\"search\" />\n            <button type=\"button\" id=\"location-search\" class=\"button\"> <?php echo $translator->trans('Search'); ?></button>\n            <button type=\"button\" id=\"remove-geolocation\" class=\"button\"> <?php echo $translator->trans('Deselect', array(), 'geolocation'); ?></button>\n            <p id=\"geolocation-message\"><p>\n\n            <div id=\"map_canvas\" class=\"map-holder\" style=\"width:690px; height:395px\"></div>\n        </dl>\n        </fieldset>\n        <?php echo $this->form->submit; ?>\n        </center>\n    </dd>\n</dl></form>\n<?php if (!empty($this->close)) { ?>\n<script>\nparent.$.fancybox.close();\nparent.flashMessage(<?php echo json_encode($translator->trans(\"Profile saved.\", array(), 'users')); ?>);\n</script>\n<?php } ?>\n<script src=\"//maps.googleapis.com/maps/api/js?sensor=false&callback=initialize\" type=\"text/javascript\" charset=\"utf-8\"></script>\n<script>\nvar geocoder;\nvar map;\nvar marker;\n\nfunction initialize() {\n    var latLng = new google.maps.LatLng(50.0833, 14.4167);\n    var myOptions = {\n        zoom: 12,\n        center: latLng,\n        mapTypeId: google.maps.MapTypeId.ROADMAP,\n        streetViewControl: false,\n        mapTypeControl: false\n    }\n\n    map = new google.maps.Map(document.getElementById(\"map_canvas\"), myOptions);\n    geocoder = new google.maps.Geocoder();\n\n    var geolocation = document.getElementById('geolocation').value;\n    var markerPosition = map.getCenter();\n    if (geolocation) {\n        var lat = geolocation.split(\",\")[0];\n        var lng = geolocation.split(\",\")[1];\n        var latLng = new google.maps.LatLng(lat, lng);\n\n        markerPosition = latLng;\n        map.panTo(latLng);\n    }\n\n    marker = new google.maps.Marker({\n        position: markerPosition,\n        map: map,\n        draggable: true,\n        visible: document.getElementById('geolocation').value.length > 0\n    });\n\n    google.maps.event.addListener(marker, 'position_changed', function() {\n        marker.setVisible(true);\n        var latLng = marker.getPosition();\n        document.getElementById(\"geolocation\").value = latLng.lat() + ', ' + latLng.lng();\n    });\n}\n\n$(document).ready(function() {\n    $('#location-search').click(function() {\n        var address = $('#address').attr('value');\n        geocoder.geocode( { 'address': address}, function(results, status) {\n            if (status == google.maps.GeocoderStatus.OK) {\n                map.setCenter(results[0].geometry.location);\n                marker.setPosition(results[0].geometry.location);\n            } else {\n                $(\"#geolocation-message\").css({'background': '#EB5C5C', 'color': '#343434', 'width': '388px', 'padding': '5px 12px', 'margin': '5px 26px'});\n                $(\"#geolocation-message\").html(\"<?php echo $translator->trans('Sorry, that place was not found. Check your spelling or search again.', array(), 'geolocation') ?>\");\n                $(\"#geolocation-message\").slideDown(200);\n                setTimeout(function(){$(\"#geolocation-message\").slideUp();}, 5000);\n            }\n        });\n\n        return false;\n    });\n\n    $('#geolocation').hide();\n\n    $('#remove-geolocation').click(function() {\n        $('#geolocation').val('');\n        marker.setVisible(false);\n    });\n});\n</script>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/user/index.phtml",
    "content": "<?php \n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->placeholder('title')->captureStart(); \n?>\n<?php echo $translator->trans('Users'); ?>\n<?php $this->placeholder('title')->captureEnd(); ?>\n<?php echo $this->renderActions(); ?>\n<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" class=\"display\" id=\"userDataTable\" style=\"max-width:1300px\">\n    <thead>\n        <tr>\n            <th rowspan=\"2\"><?php echo $translator->trans('Username', array(), 'users'); ?></th>\n            <th rowspan=\"2\"><?php echo $translator->trans('First Name', array(), 'users'); ?></th>\n            <th rowspan=\"2\"><?php echo $translator->trans('Last Name', array(), 'users'); ?></th>\n            <th rowspan=\"2\"><?php echo $translator->trans('Email', array(), 'users'); ?></th>\n            <th></th>\n            <th></th>\n            <th rowspan=\"2\"><?php echo $translator->trans('Created', array(), 'articles'); ?></th>\n            <th rowspan=\"2\"><?php echo $translator->trans('Updated'); ?></th>\n            <th></th>\n            <th rowspan=\"2\"><?php echo $translator->trans('Options'); ?></th>\n        </tr>\n        <tr>\n            <th><?php echo $translator->trans('User Type', array(), 'users'); ?></th>\n            <th><?php echo $translator->trans('Status'); ?></th>\n            <th><?php echo $translator->trans('Verified'); ?></th>\n        </tr>\n    </thead>\n    <tbody>\n        \n    </tbody>\n    <tfoot>\n        <tr>\n            <th><?php echo $translator->trans('Username', array(), 'users'); ?></th>\n            <th><?php echo $translator->trans('First Name', array(), 'users'); ?></th>\n            <th><?php echo $translator->trans('Last Name', array(), 'users'); ?></th>\n            <th><?php echo $translator->trans('Email', array(), 'users'); ?></th>\n            <th><?php echo $translator->trans('User Type'); ?></th>\n            <th><?php echo $translator->trans('Status'); ?></th>\n            <th><?php echo $translator->trans('Created'); ?></th>\n            <th><?php echo $translator->trans('Updated'); ?></th>\n            <th><?php echo $translator->trans('Verified'); ?></th>\n            <th><?php echo $translator->trans('Options'); ?></th>\n        </tr>\n    </tfoot>\n</table>\n\n<script type=\"text/html\" id=\"user-active-template\">\n<div class=\"inline-actions\">\n    <a href=\"#delete\" class=\"delete\" title=\"<?php echo $translator->trans('delete user', array(), 'users'); ?> <%= user.escape('username') %>\"><?php echo $translator->trans('Delete'); ?></a>\n</div>\n<a href=\"<%= user.getLink('edit') %>\" class=\"edit\" title=\"<?php echo $translator->trans('edit user', array(), 'users'); ?> <%= user.escape('username') %>\"><%= user.escape('username') %>\n<% if (user.get('is_verified')) { %><abbr title=\"<?php echo $translator->trans('Verified profile', array(), 'users'); ?>\" class=\"verified\">V</abbr><% } %>\n</a>\n<a href=\"mailto:<%= user.get('email') %>\" class=\"mailto\" title=\"<?php echo $translator->trans('Send email to user:', array(), 'users'); ?> <%= user.escape('username') %>\"><%= user.get('email') %></a>\n<span class=\"created\"><%= user.get('created') %></span>\n</script>\n\n<script type=\"text/html\" id=\"user-inactive-template\">\n<div class=\"inline-actions\">\n    <a href=\"#token\" class=\"token\" title=\"<?php echo $translator->trans('send confirmation email', array(), 'users'); ?>\"><?php echo $translator->trans('Send confirm email', array(), 'users'); ?></a> |\n    <a href=\"#delete\" class=\"delete\" title=\"<?php echo $translator->trans('delete user', array(), 'users'); ?> <%= user.escape('username') %>\"><?php echo $translator->trans('Delete'); ?></a>\n</div>\n<a class=\"edit\"><%= user.escape('username') %></a>\n<span class=\"agent\"><abbr title=\"<%= user.escape('http_user_agent') %>\"><%= user.get('http_user_agent') %></abbr></span>\n<a href=\"mailto:<%= user.get('email') %>\" class=\"mailto\"><%= user.get('email') %></a>\n<span class=\"created\"><%= user.get('created') %></span>\n</script>\n\n<script type=\"text/html\" id=\"user-deleted-template\">\n<a class=\"edit\" href=\"<%= user.getLink('rename') %>\"><%= user.escape('username') %></a>\n<a class=\"mailto\">&nbsp;</a>\n<span class=\"created\"><%= user.get('created') %> - <%= user.get('updated') %></span>\n</script>\n\n<script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('js/underscore.js'); ?>\"></script>\n<script type=\"text/javascript\" src=\"<?php echo $this->baseUrl('js/backbone.js'); ?>\"></script>\n<script type=\"text/javascript\">\n(function($) {\n/*\n * Function: fnGetColumnData\n * Purpose:  Return an array of table values from a particular column.\n * Returns:  array string: 1d data array \n * Inputs:   object:oSettings - dataTable settings object. This is always the last argument past to the function\n *           int:iColumn - the id of the column to extract the data from\n *           bool:bUnique - optional - if set to false duplicated values are not filtered out\n *           bool:bFiltered - optional - if set to false all the table data is used (not only the filtered)\n *           bool:bIgnoreEmpty - optional - if set to false empty values are not filtered from the result array\n * Author:   Benedikt Forchhammer <b.forchhammer /AT\\ mind2.de>\n */\n$.fn.dataTableExt.oApi.fnGetColumnData = function ( oSettings, iColumn, bUnique, bFiltered, bIgnoreEmpty ) {\n    // check that we have a column id\n    if ( typeof iColumn == \"undefined\" ) return new Array();\n    \n    // by default we only wany unique data\n    if ( typeof bUnique == \"undefined\" ) bUnique = true;\n    \n    // by default we do want to only look at filtered data\n    if ( typeof bFiltered == \"undefined\" ) bFiltered = true;\n    \n    // by default we do not wany to include empty values\n    if ( typeof bIgnoreEmpty == \"undefined\" ) bIgnoreEmpty = true;\n    \n    // list of rows which we're going to loop through\n    var aiRows;\n    \n    // use only filtered rows\n    if (bFiltered == true) aiRows = oSettings.aiDisplay; \n    // use all rows\n    else aiRows = oSettings.aiDisplayMaster; // all row numbers\n\n    // set up data array    \n    var asResultData = new Array();\n    \n    for (var i=0,c=aiRows.length; i<c; i++) {\n        iRow = aiRows[i];\n        var aData = this.fnGetData(iRow);\n        var sValue = aData[iColumn];\n        \n        // ignore empty values?\n        if (bIgnoreEmpty == true && sValue.length == 0) continue;\n\n        // ignore unique values?\n        else if (bUnique == true && jQuery.inArray(sValue, asResultData) > -1) continue;\n        \n        // else push the value onto the result data array\n        else asResultData.push(sValue);\n    }\n    \n    return asResultData;\n}}(jQuery));\n\n\nfunction fnCreateSelect( aData )\n{\n    var r='<select><option value=\"\">Show All</option>', i, iLen=aData.length;\n    for ( i=0 ; i<iLen ; i++ )\n    {\n        r += '<option value=\"'+aData[i]+'\">'+aData[i]+'</option>';\n    }\n    return r+'</select>';\n}\n\n$(function() {\n    window.translate = <?php echo json_encode(array(\n        'No users found.' => $translator->trans('No users found.', array(), 'users'),\n        'Are you sure you want to {action}?' => $translator->trans('Are you sure you want to {action}?', array(), 'users'),\n        'New confirmation email was sent to user.' => $translator->trans('New confirmation email was sent to user.', array(), 'users'),\n        'User was deleted.' => $translator->trans('User was deleted.', array(), 'users'),\n    )); ?>;\n\n    $('#userDataTable').hide(); // hide the table so it doesn't look jaggy\n    var oTable = $('#userDataTable').dataTable( {\n        'oLanguage': {\n            'oPaginate': {\n                'sNext': '<?php echo $translator->trans('Next'); ?>',\n                'sLast': '<?php echo $translator->trans('Last', array(), 'api'); ?>',\n                'sPrevious': '<?php echo $translator->trans('Previous'); ?>',\n                'sFirst': '<?php echo $translator->trans('First', array(), 'api'); ?>'\n            },\n            'sZeroRecords': '<?php echo $translator->trans('No records found.', array(), 'users'); ?>',\n            'sSearch': '<?php echo $translator->trans('Search'); ?>:',\n            'sInfo': '<?php echo $translator->trans('Showing _START_ to _END_ of _TOTAL_ entries', array(), 'users'); ?>',\n            'sEmpty': '<?php echo $translator->trans('No entries to show', array(), 'users'); ?>',\n            'sInfoFiltered': '<?php echo $translator->trans(' - filtering from _MAX_ records', array(), 'users'); ?>',\n            'sLengthMenu': '<?php echo $translator->trans('Display _MENU_ records', array(), 'users'); ?>',\n            'sInfoEmpty': '',\n        },\n        // \"bServerSide\": true,\n        \"bProcessing\": true,\n        \"bAutoWidth\": true,\n        \"sPaginationType\": \"full_numbers\",\n        \"bPaging\": true,\n        // ***\n        // * This requires 1.9.0 as minimium\n        // * This allows for styling (or something similar) based on COLUMN content.\n        // ***\n        // \"aoColumnDefs\": [ {\n        //   \"aTargets\": [4],\n        //   \"fnCreatedCell\": function (nTd, sData, oData, iRow, iCol) {\n        //     if (typeof sData == 'string') {\n        //         if ( sData.indexOf(\"Admin\") !== -1) {\n        //           $(nTd).parent().css('font-weight', 'bold');\n        //         }\n        //     }\n        //   }\n        // } ],\n        'bJQueryUI': true,\n        \"sDom\": 'RCf<\"clear\">rtilp',\n        \"oColVis\": {\n            \"aiExclude\": [ 0 ]\n        },\n        \"sAjaxSource\": <?php echo json_encode($this->url(array('action' => 'table', 'format' => 'json'))); ?>,\n        \"fnServerData\": function ( sSource, aoData, fnCallback ) {\n            $.getJSON( sSource, aoData, function (json) { \n                var aaData = [];\n                var totalRecords = json['users'].length;\n                json['users'].forEach(function(user) {\n                    var newUser = [];\n                    for (var key in user) {\n                        if (key != 'id') {\n                            var string = user[key];\n                            if (key == 'u') {\n                                string = '<a href=\"user/edit/user/'+user['id']+'\">'+ user['u'] + '</a>';\n                            }\n                            if (key == 'g') {\n                                string = user[key].join(' / ');\n                            }\n                            if (key == 'e') {\n                                string = '<a href=\"mailto:'+user['e']+'\">'+user['e']+'</a>';\n                            }\n                            newUser.push(string);\n                            if (key == 've') {\n                                var optionsUrl = '<a class=\"jsonDelete\" href=\"user/delete/user/'+user['id']+'\"><?php echo $translator->trans('Delete'); ?></a>, <a href=\"user/rename/user/'+user['id']+'\"><?php echo $translator->trans('users.table.actions.rename', array(), 'users'); ?></a>';\n                                if (user['ve'] == 'No') {\n                                    optionsUrl += ', <a class=\"jsonConfirm\" href=\"user/send-confirm-email/user/'+user['id']+'\"><?php echo $translator->trans('Confirm'); ?></a>';\n                                }\n                                newUser.push(optionsUrl);\n                            }\n                        }\n                    }\n                    aaData.push(newUser);\n                });\n                var newData = [];\n                newData.aaData = aaData;\n                newData.iTotalRecords = totalRecords;\n                fnCallback(newData);\n                setTimeout( function () {\n                    $(\"thead th\").each( function ( i ) {\n                        if (i == 4) {\n                            var columnData = oTable.fnGetColumnData(i);\n                            var xArr = [];\n                            columnData.forEach(function(x) {\n                                x.split(' / ').forEach(function (xRole) {\n                                    if ($.inArray(xRole, xArr) === -1) {\n                                        xArr.push(xRole);\n                                    }\n                                });\n                            });\n                            this.innerHTML = fnCreateSelect( xArr );\n                        } else if (i == 5 || i == 8) {\n                            this.innerHTML = fnCreateSelect( oTable.fnGetColumnData(i) );\n                        }\n                        $('select', this).change( function () {\n                            oTable.fnFilter( $(this).val() , i, false, false, false, false );\n                        } );\n                    } );\n                    oTable.fnFilter( 'Active' , 5, false, false, false, false );\n                    oTable.fnSetColumnVis( 5, false );\n                    oTable.fnSetColumnVis( 6, false );\n                    oTable.fnSetColumnVis( 7, false );\n                    oTable.fnSetColumnVis( 8, false );\n                    $('#userDataTable').show();\n                }, 0 );\n            });\n        }\n    } );\n});\n\n$(document).ready(function(){\n    $('#userDataTable .jsonDelete').live('click', function(event){\n        var dataTableCell = $(this).parent();\n        var dataTableRow = dataTableCell.parent().get(0);\n        event.preventDefault();\n        $.getJSON($(this).attr('href'), {'format': 'json'}, function(data, textStatus, jqXHR) {\n            if (data.message) {\n                flashMessage(data.message, 'error');\n                return false;\n            }\n\n            $('#userDataTable').dataTable().fnUpdate( \"Deleted\", dataTableRow, 5 );\n            flashMessage(window.translate['User was deleted.']);\n        });\n    });\n\n    $('#userDataTable .jsonConfirm').live('click', function(event){\n        event.preventDefault();\n        $.getJSON($(this).attr('href'), {'format': 'json'}, function(data, textStatus, jqXHR) {\n            if (data.message) {\n                flashMessage(data.message, 'error');\n                return false;\n            }\n\n            flashMessage(window.translate['New confirmation email was sent to user.']);\n        });\n    });\n});\n</script>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/user/list-inactive.phtml",
    "content": "<div class=\"controls\">\n    <?php echo $this->paginator; ?>\n</div>\n\n<ul class=\"users\">\n    <?php foreach ($this->users as $user) { ?>\n    <li>\n        <a href=\"<?php echo $this->url(array(\n            'action' => 'rename',\n            'user' => $user->getId(),\n        )); ?>\" class=\"edit\"><?php echo $user->getUsername(); ?></a>\n        <a class=\"mailto\">&nbsp;</a>\n        <span class=\"created\"><?php echo $user->getCreated()->format('d.m.Y H:i'); ?> - <?php echo $user->getUpdated()->format('d.m.Y H:i'); ?></span>\n    </li>\n    <?php } ?>\n</ul>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/user/profile.phtml",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\necho $this->form; \n?>\n\n<?php if (!empty($this->close)) { ?>\n<script>\n<?php if (!empty($this->image)) { ?>\nparent.$('.edit-image img').attr('src', <?php echo json_encode($this->image); ?>);\n<?php } ?>\nparent.$.fancybox.close();\nparent.flashMessage(<?php echo json_encode($translator->trans(\"Profile saved.\", array(), 'users')); ?>);\n</script>\n<?php } ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/user/rename.phtml",
    "content": "<?php \n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans(\"Rename user $1\", array('$1' => $this->user->username), 'users').' - Newscoop Admin', 'SET'); \n?>\n\n<?php echo $this->form->setAttrib('id', 'edit-form'); ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/user/toggle-ban.phtml",
    "content": "<?php \n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans('Comment ban settings', array(), 'users').' - Newscoop Admin', 'SET'); ?>\n\n<?php echo $this->form; ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/user-group/add.phtml",
    "content": "<?php \n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans('Add new user type').' - Newscoop Admin', 'SET'); ?>\n\n<?php echo $this->form; ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/user-group/edit-access.phtml",
    "content": "<?php\n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans('Permissions:', array(), 'user_types').' - Newscoop Admin', 'SET');\n$this->placeholder('title')->captureStart(); ?>\n<?php echo $translator->trans('Permissions:', array(), 'user_types'); ?>\n<form action=\"<?php echo $this->url(array(\n    'action' => 'edit',\n)); ?>\" method=\"POST\">\n<dl class=\"zend_form inline\">\n    <?php echo $this->form->name; ?> <?php echo $this->form->submit; ?>\n</dl>\n</form>\n<?php $this->placeholder('title')->captureEnd(); ?>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/user-group/index.phtml",
    "content": "<?php \n$translator = \\Zend_Registry::get('container')->getService('translator');\n$this->headTitle($translator->trans('User types', array(), 'user_types').' - Newscoop Admin', 'SET'); \n?>\n\n<?php\nif (empty($this->groups)) {\n    $this->renderMessage($translator->trans('No user types.', array(), 'user_types'));\n    return;\n}\n?>\n\n<ul class=\"edit user-types\">\n    <?php foreach ($this->groups as $group) { ?>\n    <li>\n        <a class=\"icon delete confirm\" href=\"<?php echo $this->url(array(\n            'action' => 'delete',\n            'group' => $group->getId(),\n        )); ?>\" title=\"<?php echo $translator->trans('Delete user type $1', array('$1' => $this->escape($group->getName())), 'user_types'); ?>\"><?php echo $translator->trans('Delete'); ?></a>\n        <a class=\"edit\" href=\"<?php echo $this->url(array(\n            'action' => 'edit-access',\n            'group' => $group->getId(),\n        )); ?>\" title=\"<?php echo $translator->trans('Edit user type $1', array('$1' => $this->escape($group->getName())), 'user_type'); ?>\"><?php echo $this->escape($group->getName()); ?></a>\n    </li>\n    <?php } ?>\n</ul>\n"
  },
  {
    "path": "newscoop/application/modules/admin/views/scripts/user-points/index.phtml",
    "content": "<?php echo $this->form; ?>"
  },
  {
    "path": "newscoop/application/phpunit.bootstrap.php",
    "content": "<?php\n// Define path to application directory\ndefine('APPLICATION_PATH', __DIR__ . '/../application');\n\nrequire_once __DIR__.'/autoload.php';\n"
  },
  {
    "path": "newscoop/application/phpunit.xml.dist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n\n<!-- http://www.phpunit.de/manual/current/en/appendixes.configuration.html -->\n<phpunit\n    backupGlobals               = \"false\"\n    backupStaticAttributes      = \"false\"\n    colors                      = \"true\"\n    convertErrorsToExceptions   = \"true\"\n    convertNoticesToExceptions  = \"true\"\n    convertWarningsToExceptions = \"true\"\n    processIsolation            = \"false\"\n    stopOnFailure               = \"false\"\n    syntaxCheck                 = \"false\"\n    bootstrap                   = \"phpunit.bootstrap.php\" >\n\n    <testsuites>\n        <testsuite name=\"Gimme Test Suite\">\n            <directory>../src/*/*Bundle/Tests</directory>\n        </testsuite>\n    </testsuites>\n\n    <!--\n    <php>\n        <server name=\"KERNEL_DIR\" value=\"/path/to/your/app/\" />\n    </php>\n    -->\n    <php>\n        <server name=\"KERNEL_DIR\" value=\"/path/to/your/app/\" />\n    </php>\n\n    <filter>\n        <whitelist>\n            <directory>../src</directory>\n            <exclude>\n                <directory>../src/*/*Bundle/Resources</directory>\n                <directory>../src/*/*Bundle/Tests</directory>\n                <directory>../src/*/Bundle/*Bundle/Resources</directory>\n                <directory>../src/*/Bundle/*Bundle/Tests</directory>\n            </exclude>\n        </whitelist>\n    </filter>\n\n</phpunit>"
  },
  {
    "path": "newscoop/application/plugins/Acl.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Acl controller plugin\n */\nclass Application_Plugin_Acl extends Zend_Controller_Plugin_Abstract\n{\n    /** @var array */\n    private $modules = array();\n\n    /** @var array */\n    private $ignore = array();\n\n    /**\n     * @param array $config\n     */\n    public function __construct(array $config)\n    {\n        $this->modules = $config['modules'];\n        $this->ignore = $config['ignore'];\n    }\n\n    /**\n     * @param Zend_Controller_Request_Abstract $request\n     * @return void\n     */\n    public function preDispatch(Zend_Controller_Request_Abstract $request)\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        if (!in_array($request->getModuleName(), $this->modules)) {\n            return;\n        }\n\n        if (!Zend_Auth::getInstance()->hasIdentity()) {\n            return;\n        }\n\n        $resource = $request->getControllerName();\n        $action = $request->getActionName();\n\n        $user= Zend_Registry::get('container')->getService('user')->getCurrentUser();\n        $blogService = Zend_Registry::get('container')->getService('blog');\n        if ($blogService->isBlogger($user)) {\n            // f_article_edit condition should be removed once file upload is moved to a final place where bloggers can access.\n            if (!$blogService->isAllowed($request, $user) && !isset($_REQUEST['f_article_edit'])) {\n                $request->setModuleName('admin')\n                    ->setControllerName('blog')\n                    ->setActionName('index')\n                    ->setDispatched(false);\n                return;\n            }\n        }\n\n        if (in_array($resource, $this->ignore)) {\n            return; // ignore\n        }\n\n        if (!\\SaaS::singleton()->hasPrivilege($resource, $action)) {\n            $redirector = Zend_Controller_Action_HelperBroker::getStaticHelper('redirector');\n\t\t\t/* @var $redirector Zend_Controller_Action_Helper_Redirector */\n\t\t\t$redirector->direct(\"index\", \"index\", \"admin\");\n\t\t}\n\n        $acl = Zend_Registry::get('acl');\n        list($resource, $action) = $acl->getAccess($request->getControllerName(), $request->getActionName());\n\n        if (empty($resource) || empty($action)) {\n            return; // ignored by annotation\n        }\n        \n        if ($acl->isAllowed(Zend_Registry::get('user'), $resource, $action)) {\n            return; // passed\n        }\n\n        // display not allowed\n        $request->setModuleName('admin')\n            ->setControllerName('error')\n            ->setActionName('deny')\n            ->setParam('message', $translator->trans('You are not allowed to $1 $2.', array(\n                    '$1' => $action ? $action : $translator->trans('handle', array(), 'user_types'),\n                    '$2' => $resource ? $resource : $translator->trans('any resource', array(), 'user_types')), 'user_types'))\n            ->setDispatched(false);\n    }\n}\n"
  },
  {
    "path": "newscoop/application/plugins/Auth.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Auth controller plugin\n */\nclass Application_Plugin_Auth extends Zend_Controller_Plugin_Abstract\n{\n    /** @var array */\n    private $modules = array();\n\n    /** @var array */\n    private $ignore = array();\n\n    /**\n     * @param array $config\n     */\n    public function __construct(array $config)\n    {\n        $this->modules = $config['modules'];\n        $this->ignore = $config['ignore'];\n    }\n\n    /**\n     * @param Zend_Controller_Request_Abstract $request\n     * @return void\n     */\n    public function preDispatch(Zend_Controller_Request_Abstract $request)\n    {\n        $this->setSessionLifeTime();\n\n        if (!in_array($request->getModuleName(), $this->modules)) {\n            return;\n        }\n\n        if (Zend_Auth::getInstance()->hasIdentity()) {\n            $user = Zend_Registry::get('container')->getService('user')->getCurrentUser();\n\n            if (!$user->isAdmin()) { // can't go into admin\n                $redirector = Zend_Controller_Action_HelperBroker::getStaticHelper('redirector');\n                $redirector->direct('index', 'index', 'default');\n            }\n\n            // set user for application\n            $GLOBALS['g_user'] = $user;\n            Zend_Registry::set('user', $user);\n\n            // set view user\n            $view = Zend_Registry::get('view');\n            $view->currentUser = $user;\n\n            // set view navigation acl\n            $acl = Zend_Registry::get('acl')->getAcl($user);\n            /* @var $acl Zend_Acl */\n\n            $view->navigation()->setAcl($acl);\n            $view->navigation()->setRole($user);\n            return;\n        }\n    }\n\n    /**\n     * Set session lifetime\n     *\n     * @return void\n     */\n    private function setSessionLifetime()\n    {\n        $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n        if ($preferencesService->SiteSessionLifeTime > 0) {\n            $session = new Zend_Session_Namespace(Zend_Auth::getInstance()->getStorage()->getNamespace());\n            $session->setExpirationSeconds($preferencesService->SiteSessionLifeTime);\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/application/plugins/Bootstrap.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\n/**\n * Bootstrap controller plugin\n */\nclass Application_Plugin_Bootstrap extends Zend_Controller_Plugin_Abstract\n{\n    /** @var array */\n    private $options = array();\n\n    /**\n     * @param array $options\n     */\n    public function __construct(array $options)\n    {\n        $this->options = $options;\n    }\n\n    /**\n     * Register plugins by settings\n     */\n    public function dispatchLoopStartup(Zend_Controller_Request_Abstract $request)\n    {\n        $front = Zend_Controller_Front::getInstance();\n        $module = $request->getModuleName();\n\n        $plugins = isset($this->options[$module]['plugins'])\n            ? $this->options[$module]['plugins'] : array();\n\n        foreach ($plugins as $plugin => $options) {\n            $reflection = new ReflectionClass('Application_Plugin_' . ucfirst($plugin));\n            if ($reflection->hasMethod('__construct')) {\n                $instance = $reflection->newInstanceArgs((array) $options);\n            } else {\n                $instance = $reflection->newInstance();\n            }\n\n            $front->registerPlugin($instance);\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/application/plugins/CampPluginAutoload.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Camp plugin autoload\n */\nclass Application_Plugin_CampPluginAutoload extends Zend_Controller_Plugin_Abstract\n{\n    /**\n     * Add registered plugins paths to include path\n     */\n    public function dispatchLoopStartup()\n    {\n     /*   $includePaths = array(\n            'classes',\n            'template_engine/classes',\n            'template_engine/metaclasses',\n        );\n\n        // add plugins to path\n        foreach (CampPlugin::GetPluginsInfo(true) as $info) {\n            $name = $info['name'];\n            foreach ($includePaths as $path) {\n                $includePath = APPLICATION_PATH . \"/../plugins/$name/$path\";\n                $realpath = realpath($includePath);\n                if ($realpath) {\n                    set_include_path(implode(PATH_SEPARATOR, array(\n                        get_include_path(),\n                        $realpath,\n                    )));\n                }\n            }\n        }*/\n    }\n}\n"
  },
  {
    "path": "newscoop/application/plugins/ContentType.php",
    "content": "<?php\n\nclass Application_Plugin_ContentType extends Zend_Controller_Plugin_Abstract\n{\n    public function dispatchLoopShutdown()\n    {\n        $request = $this->getRequest();\n        $response = $this->getResponse();\n\n        // a workaround for wrongly set header here, when already being set (at theme export)\n        $header_set = false;\n        if (isset($GLOBALS['header_content_type_set']) && $GLOBALS['header_content_type_set']) {\n            $header_set = true;\n        }\n\n        // When no Content-Type has been set, set the default text/html; charset=utf-8\n        if (!$header_set) {\n            $response->setHeader('Content-Type', 'text/html; charset=utf-8');\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/application/plugins/Upgrade.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Upgrade plugin\n */\nclass Application_Plugin_Upgrade extends Zend_Controller_Plugin_Abstract\n{\n    /**\n     * Register plugins by settings\n     */\n    public function dispatchLoopStartup(Zend_Controller_Request_Abstract $request)\n    {\n        $module = $request->getModuleName();\n\n        if (!file_exists(APPLICATION_PATH . '/../conf/upgrading.php')) {\n            return;\n        }\n\n        switch ($module) {\n            case 'admin':\n                $this->printMessage(\"Site is down for upgrade. Please initiate upgrade process.\");\n                break;\n\n            default:\n                $this->printMessage(\"The website you are trying to view is currently down for maintenance.<br>Normal service will resume shortly.\");\n                break;\n        }\n    }\n\n    /**\n     * Print message\n     *\n     * @param string $message\n     * @return void\n     */\n    private function printMessage($message)\n    {\n        header('Expires: Thu, 01 Jan 1970 00:00:00 GMT');\n        header('Cache-Control: no-store, no-cache, must-revalidate');\n\n        $year = _(date(\"Y\"));\n        $template = <<<EOF\n<!doctype html>\n<html lang=\"en\">\n<head>\n    <meta charset=\"UTF-8\">\n    <title>Newscoop - upgrade message</title>\n\n    <style type=\"text/css\">\n        body {\n            background-color:#fafafa;\n            font: 12px/20px Arial, Helvetica, sans-serif;\n            color: #696969;\n            padding-top: 70px;\n        }\n        .pageWrapper {\n            width:460px;\n            margin:0 auto;\n            padding: 15px;\n            overflow: hidden;\n        }\n        .content {\n            background: #f8f8f8;\n            background: -webkit-linear-gradient(#f8f8f8 0%, #f2f2f2 100%);\n            background: -moz-linear-gradient(#f8f8f8 0%, #f2f2f2 100%);\n            background: -o-linear-gradient(#f8f8f8 0%, #f2f2f2 100%);\n            background: linear-gradient(#f8f8f8 0%, #f2f2f2 100%);\n            border: 1px solid #e4e4e4;\n            padding: 16px;\n        }\n        .footer {\n            clear:both;\n            padding: 5px 0 0;\n            text-align: center;\n            margin-top: 4px;\n            font-size: 11px;\n            color: #666;\n            line-height: 16px;\n        }\n        .logo {\n            text-align: center;\n            margin: 10px 0 30px 0;\n        }\n        a { color: #007fb3; text-decoration:none; }\n        a:hover { text-decoration:underline; }\n        h2 { \n            background: #f6f6f6;\n            background: -webkit-linear-gradient(#fafafa 0%, #f6f6f6 100%);\n            background: -moz-linear-gradient(#fafafa 0%, #f6f6f6 100%);\n            background: -o-linear-gradient(#fafafa 0%, #f6f6f6 100%);\n            background: linear-gradient(#fafafa 0%, #f6f6f6 100%);\n            border:1px solid #afafaf;\n            border-top-color:#FFF;\n            border-left-color:#e5e5e5;\n            border-right-color:#e5e5e5;\n            margin:0 0 10px 0;\n            padding:8px 10px;\n            font-size:15px;\n            color:#444;\n            text-align:left;\n            -moz-box-shadow: 0 2px 2px rgba(0,0,0,.10);\n            -webkit-box-shadow: 0 2px 2px rgba(0,0,0,.10);\n            box-shadow: 0 2px 2px rgba(0,0,0,.10); \n        }\n        p {\n            margin: 0 0 10px 0;\n        }\n    </style>\n</head>\n<body>  \n<div class=\"pageWrapper\">\n    <div class=\"content\">\n        <div class=\"logo\"><img src=\"data:image/gif;base64,R0lGODlh6gBEAMQQAAB/sz2dxHq61LjX5Obu8Q+Gt5nJ3B+Ou9bm7cff6S6Vv1yrzKjQ4E2kyInB2Gyz0P///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4wLWMwNjAgNjEuMTM0Nzc3LCAyMDEwLzAyLzEyLTE3OjMyOjAwICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IFdpbmRvd3MiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MTA1ODM0QzIxRkRDMTFFMEIzRjE5NEE2RUM3QkJEN0EiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MTA1ODM0QzMxRkRDMTFFMEIzRjE5NEE2RUM3QkJEN0EiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoxMDU4MzRDMDFGREMxMUUwQjNGMTk0QTZFQzdCQkQ3QSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDoxMDU4MzRDMTFGREMxMUUwQjNGMTk0QTZFQzdCQkQ3QSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PgH//v38+/r5+Pf29fTz8vHw7+7t7Ovq6ejn5uXk4+Lh4N/e3dzb2tnY19bV1NPS0dDPzs3My8rJyMfGxcTDwsHAv769vLu6ubi3trW0s7KxsK+urayrqqmop6alpKOioaCfnp2cm5qZmJeWlZSTkpGQj46NjIuKiYiHhoWEg4KBgH9+fXx7enl4d3Z1dHNycXBvbm1sa2ppaGdmZWRjYmFgX15dXFtaWVhXVlVUU1JRUE9OTUxLSklIR0ZFRENCQUA/Pj08Ozo5ODc2NTQzMjEwLy4tLCsqKSgnJiUkIyIhIB8eHRwbGhkYFxYVFBMSERAPDg0MCwoJCAcGBQQDAgEAACH5BAEAABAALAAAAADqAEQAAAX/ICSOZGmeaKqubOu+cCzPMTHQeK7vfO//LYKhAQAUFgmgcslsOp1CYnFaPDgQz6x2y20ypNTwtGHoms/o9IixKIjf4WNSTa/baWw3fC+2Yu+AgYFtfIV7ZASCiotdBA4KhpFiRzeMlpdLCQ8Hkp1FC5ihojxsnpGVo6mqMEKQpm8Bq7KzLQibr1SotLu8JKWvsb3Cw62eusPIu7Z6fMErAtDRcykG0dDJ2E7Me8cofSsBYdnjQAaGBy5vAirhVOTvPGB7ZS1vBX8n7VPw/DQI5y/ggEKhr0i/gzAcGKJXD043EQUBIJzIghMfdAHhKCAojqJHEwkWwuDDkETEjyhH/ywohDEjnAKJSpxUkaCaAAPTuCBgAM3BQxQDHEBjgI9F0KFFV+zs+XPFAKY/tr0p2XDPAxMzTRAQIBXAAQYlQlLJCSGMA5lUro5IELFIg6YIVvahWiLuGwV0SxiwSOVIUhECqMTiGmfdDnMXZYQJwLdI0qwkEjQWsyCmiMYlB4QZOCIMWBGIrVoeYaArFQWjSZsek1oEgbZ96QaeosDV3dYx5E1VLJjBYrTuwq6m0oCE3E8kZk9pCUEzlZjOC6EmEZrPdOqRNpYgYJtkCeXZc/xLzHtKrIifIXYcQWDygQABpJ4FfZqEbgCWwWuHEFFBgO4AVDYCAsP9tlYnao3wgP8k9yRnimEzKLRHAemNJBgE4y1nGWQQgAfAfBAQcJwRMWVYhGVdpSePYSYCMM0AFiUogm4BJCGEVKhE1ICNDkiFT3RFFGBAImxt5uBinzEQEUw0TEbFAn+lcyEEC1IBIYeNQThCQSA2VolYYUC4TSVAOuMaXnUZuNY29LRoJgS+PalSGMdEhI+HnI2gG4gwgLkYWTEYSMA2DfK3XnNhtBZnEc6MaJiEBvopkQhAMrkCpEV0o5AV+YUBaEEFjLBNcSUA+eEIHp4waH0yjFhFhTSoWR0ApEKmn6rrLQpAMK7uA0F1zrR4QF72UcFcZFgZewKmLiJKRV6jonqocdO6QKj/ljmoCQGAN0AmTwHwhRvuegT0dRkcSThKgpMFPADouea9EK0Jpt4w67sF7ZfqCbM2hUJ1D+AW65SUhrERZLAVgkp3CZg44lmN5aRrGMOaEKZLRWArQovr7GtClb52WG3BucTQTgBRZkuwCK46gPArqIAMgAHVDcBMA+VOEapeF+V0sZRTaCzCxR5/t17RJJjKJwv/KOAvDtpiSCiAJsG8xpMyEwDGV8SdMACAnnVmJcYACF3W2EhLG5zIa5f6swsMEMtD1GzvUXW8gdJm20aYyrN00vcFGdPbLBA+INEjU3l04qbKfQbdEDjZtjzHtpDwVZKOtYIjYM/X2JsqzOs2/xVgMYsvq3UbxC+dgUA+8aEeppyCh1N8ZtrOLTAwb0GVU5pavst66uwUeTVGauqTmuCq7I+vfPcbSRvuGrGmThFT4HmyJ2AJugZjugkEFqBl7MnqLPYU2UMgKYhph7hN72pAjqHdJBCaFHcAKPDuGy0xWwRdNstfasq0sajh71UikNTxSIa+OWnueY5RG/GUFwYZ2UF+ioPekXRGjxulJTX34Uz1AJAUmTmNPd3hjI7+wAAAXSkMDfhDacLwozi0STcLpF2NEngf5jUPb6oyzXYKZDAT+K8k3wDOaR7QAKkwJHN72I/6EFSCwMGhKLQrhAUv6LwS+C95IxihPf6Suf+iRCR9B5QOzwxRALLMSiOpSaN3NpgdgcWviyUA2wl0V4gACOx9RiOdqhJGm9a8MQ7vOuRpcCPH3QQSfVG04x2BCBQxoMAud3GcPBY4vBNRA2xGEIDAEhC4dtmRlPxzXIckF8MTpGovhUkJAXgSDaKYAQE2EYBPgkBLaDxtQL10wLtQkAChDMWOHnvKUFLCTC60r5nQzMIzo0nNJUyzmtjswTWzyU0cbLOb4ITBN8NJzmckrpzoTKc618nOdsJjAEQowI5IEBdOKECUCYSPSXbIFnEhwRfhkOcc+imuHRqgoAGgh5ICoKWDiusB+HhAQZ8In2koyQjzdGcKqvclqWj/xzkkyFQng/QHZjVohDegnWGkwBzaWaotanFOJWbVRo2iYCXFwd9AwnGAG0ioDCAV2w2Cysd1rKoyAbyKc3wygKYmIjBOa+oA/sCMaQTGe0X4TDjWYZedydR9tCKAZAJk0xOsRAFYIMAfcsYQIhQnqEMDwFBVZ6irIAY6BsDCV40GOs3I81SA2ZVrsqoewwT1q3H6wwDyWlZ6jQEVzukUOuB6trnKdbFuOMtVvfYJaDAkMAeIxh8W1ACFOAO00IDESwPU1ICSLKVeaSwLGMAXPzoLOxKhrEirN53NOpZgHqoEJITpSeQBIEFtocdXfSvbFVxUsJQNTKh0K1dnMYZE3IEFnbOYatX8STUR4zGAcz4D1abOhh48bQeIlivY5qZgGhKaHwDSs5JYOGetuzVIeEWgENzZ4LUmYC5/KZPdLZWtsBBYSUsQW9z/ulc9A4mTCCAxHbHMJ2MDxs9tExxb+Z7lNbHdq4PeRIT3/KfDvm3PgQ21DucoV6Q5U0s8H/yrIvgHOXAKkisOEJMqHcAiAwnqfjN4AD2ABaUiexNh5ZuELFZiq+rByF59rIe/NZa26LMMlt1SlAfowZQkM3BLvFyFF4sBtmaK7Ag4oVkkGdiw/3MWKgjjFSubIQQAOw==\" border=\"0\" alt=\"Newscoop logo\">\n        </div>\n        <h2>$message</h2>\n    </div>\n    <div class=\"footer\">\n        <a href=\"http://newscoop.sourcefabric.org/\" target=\"_blank\">\n            Newscoop</a>, the open content management system for professional journalists.\n         <br>\n            ©&nbsp;$year&nbsp;<a href=\"http://www.sourcefabric.org\" target=\"_blank\">Sourcefabric z.ú.</a>&nbsp;Newscoop       is distributed under GNU GPL v.3    \n    </div>\n</div>\n</body>\n</html>\nEOF;\n        echo $template;\n        exit;\n    }\n}\n"
  },
  {
    "path": "newscoop/application/views/scripts/auth_index.tpl",
    "content": "{{extends file=\"layout.tpl\"}}\n\n{{block content}}\n<h1>{{ $view->translate('Sign in') }}</h1>\n\n{{ if !empty($error) }}\n<p style=\"color: #c00;\"><strong>{{ $error }}</strong></p>\n{{ /if }}\n\n{{ $form }}\n\n<ul class=\"links\">\n    <li><a href=\"{{ $view->url(['action' => 'password-restore'], 'default') }}\">{{ $view->translate('Restore password') }}</a></li>\n</ul>\n\n<h3>{{ $view->translate(\"Sign via\") }}</h3>\n<ul class=\"social\">\n    <li><a href=\"{{ $view->url(['action' => 'social', 'provider' => 'Facebook']) }}\">Facebook</a></li>\n</ul>\n\n{{/block}}\n"
  },
  {
    "path": "newscoop/application/views/scripts/auth_password-restore-after.tpl",
    "content": "{{extends file=\"layout.tpl\"}}\n\n{{block content}}\n<h1>{{ $view->translate('Restore password') }}</h1>\n\n<p>Email with instructions was sent to your email address.</p>\n\n{{/block}}\n"
  },
  {
    "path": "newscoop/application/views/scripts/auth_password-restore-finish.tpl",
    "content": "{{extends file=\"layout.tpl\"}}\n\n{{block content}}\n\n<h1>{{ $view->translate('Set your password') }}</h1>\n\n{{ $form }}\n\n{{/block}}\n"
  },
  {
    "path": "newscoop/application/views/scripts/auth_password-restore.tpl",
    "content": "{{extends file=\"layout.tpl\"}}\n\n{{block content}}\n<h1>{{ $view->translate('Restore password') }}</h1>\n\n{{ $form }}\n{{/block}}\n"
  },
  {
    "path": "newscoop/application/views/scripts/author_profile.tpl",
    "content": "{{extends file=\"layout.tpl\"}}\n\n{{block content}}\n<h1>{{ $author->name }}</h1>\n{{/block}}\n"
  },
  {
    "path": "newscoop/application/views/scripts/comments/index.phtml",
    "content": "comments index\n\n<?php echo $this->param; ?>\n"
  },
  {
    "path": "newscoop/application/views/scripts/dashboard_index.tpl",
    "content": "{{extends file=\"layout.tpl\"}}\n\n{{block content}}\n\n<script>\nfunction afterRegistration() {\n    location.reload();\n}\n</script>\n\n\n<h1>Welcome {{ $user->name }}</h1>\n\n<div class=\"user-image\">\n    <img src=\"{{ $user->image() }}\" title=\"User image\" />\n</div>\n\n<h2>Edit profile</h2>\n\n{{ $form }}\n\n{{/block}}\n"
  },
  {
    "path": "newscoop/application/views/scripts/email_comment-notify.tpl",
    "content": "{{ dynamic }}\nNew comment from {{ $username }}: {{ $comment->getSubject()|escape }}<br />\n{{ $comment->getMessage()|escape }}<br /><br />\n<a href=\"{{ $publication }}{{ $articleLink }}\">Go to Article</a><br />\n<a href=\"{{ $publication }}{{ $articleLink }}#comment-{{ $comment->getId() }}\">Go to Comment</a><br />\n{{ set_placeholder subject=\"New comment\" }}\n{{ /dynamic }}\n"
  },
  {
    "path": "newscoop/application/views/scripts/email_confirm.tpl",
    "content": "Hello,\n\nplease confirm your e-mail address by clicking on the link below:\n\nhttp://{{ $site }}{{ $view->url(['user' => $user->identifier, 'token' => $token], 'confirm-email') }}\n\nThanks!\n{{ set_placeholder subject=sprintf(\"E-mail confirmation at %s\", $site) }}\n"
  },
  {
    "path": "newscoop/application/views/scripts/email_password-restore.tpl",
    "content": "Hello,\n\nreset your password by clicking on the link below:\n\nhttp://{{ $site }}{{ $view->url(['controller' => 'auth', 'action' => 'password-restore-finish', 'user' => $user->identifier, 'token' => $token], 'default') }}\n\nThanks!\n{{ set_placeholder subject=sprintf(\"Restore password at %s\", $site) }}\n"
  },
  {
    "path": "newscoop/application/views/scripts/error/error.phtml",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\n<head>\n  <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\n  <title>Newscoop</title>\n</head>\n<body>\n  <?php $translator = \\Zend_Registry::get('container')->getService('translator'); ?>\n  <h1><?php echo $translator->trans('An error occurred', array(), 'bug_reporting'); ?></h1>\n  <h2><?php echo $this->message ?></h2>\n\n  <?php if (isset($this->exception)): ?>\n\n  <h3><?php echo $translator->trans('Exception information:', array(), 'bug_reporting'); ?></h3>\n  <p>\n  \t\t<b>Type:</b> <?php echo get_class( $this->exception ) ?>\n  \t\t<br />\n  \t\t<b>Code:</b> <?php echo $this->exception->getCode() ?>\n  \t\t<br />\n      <b>Message:</b> <?php echo $this->exception->getMessage() ?>\n      <br />\n      <b>File:</b> <?php echo $this->exception->getFile() ?> <b>:</b> <?php echo $this->exception->getLine() ?>\n  </p>\n\n  <h3><?php echo $translator->trans('Stack trace:', array(), 'bug_reporting'); ?></h3>\n  <pre><?php echo $this->exception->getTraceAsString() ?>\n  </pre>\n\n  <h3><?php echo $translator->trans('Request Parameters:', array(), 'bug_reporting'); ?></h3>\n  <pre><?php echo var_export($this->request->getParams(), true) ?>\n  </pre>\n  <?php endif ?>\n\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/application/views/scripts/error_error.tpl",
    "content": "{{extends file=\"layout.tpl\"}}\n\n{{block content}}\n{{ dynamic }}\n<div class=\"span error-page\">\n<h1>Hey, this is error!</h1>\n\n<h2>Error: {{ $message }}</h2>\n\n{{ if isset($exception) }}\n    <h3>Exception information</h3>\n    <p>\n        <b>Type:</b> {{ get_class($exception) }}\n        <br />\n        <b>Code:</b> {{ $exception->getCode() }}\n        <br />\n        <b>Message:</b> {{ $exception->getMessage() }}\n        <br />\n        <b>File:</b> {{ $exception->getFile() }} <b>:</b> {{ $exception->getLine() }}\n    </p>\n\n    <h3>Stack trace</h3>\n    <pre>{{ $exception->getTraceAsString() }}</pre>\n\n    <h3>Request Parameters</h3>\n    <pre>{{ ladybug_dump($request) }}</pre>\n{{ /if }}\n</div>\n{{ /dynamic }}\n{{/block}}\n"
  },
  {
    "path": "newscoop/application/views/scripts/layout.tpl",
    "content": "<!DOCTYPE html>\n<html>\n<head>\n    <meta charset=\"utf-8\">\n    <title>{{block title}}Newcoop{{/block}}</title>\n\n    {{block style}}\n        {{if isset($view) }}\n            {{ $view->headLink() }}\n        {{/if }}\n    {{/block}}\n\n    {{block script}}\n        {{if isset($view) }}\n            {{ $view->headScript() }}\n        {{/if }}\n    {{/block}}\n</head>\n<body>\n    <div class=\"header\">\n        {{block header}}Newscoop{{/block}}\n        <div class=\"nav\">\n            <ul>\n                <li><a href=\"{{ $view->url(['controller' => 'index', 'action' => 'index'], 'default') }}\">Home</a></li>\n                <li><a href=\"{{ $view->url(['controller' => 'user', 'action' => 'index'], 'default') }}\">Users</a></li>\n                <li><a href=\"{{ $view->url(['controller' => 'register', 'action' => 'index'], 'default') }}\">Register</a></li>\n                <li><a href=\"{{ $view->url(['controller' => 'auth', 'action' => 'index'], 'default') }}\">Sign in</a></li>\n            </ul>\n        </div>\n    </div>\n\n    <div class=\"content\">\n    {{block content}}{{/block}}\n    </div>\n\n    <div class=\"footer\">\n    {{block footer}}\n    &copy; {{ $smarty.now|camp_date_format:\"%Y\" }} Sourcefabric o.p.s.\n    {{/block}}\n    </div>\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/application/views/scripts/legacy/index.phtml",
    "content": ""
  },
  {
    "path": "newscoop/application/views/scripts/legacy_index.tpl",
    "content": ""
  },
  {
    "path": "newscoop/application/views/scripts/omnibox_index.tpl",
    "content": "<link rel=\"stylesheet\" href=\"{{ $view->baseUrl('/public/css/omnibox.css') }}\" type=\"text/css\" media=\"screen\" />\n<div id=\"ob_wrapper\">\n<script type=\"text/javascript\" src=\"{{ $view->baseUrl('/js/plupload/js/plupload.full.js') }}\"></script>\n<div id=\"ob_main\" style=\"display: none;\">\n\t<div id=\"ob_message_wrapper\" style=\"display: none;\">\n\t\t<div id=\"ob_message_close\" style=\"display: none;\" class=\"right\"><a href=\"javascript:omnibox.hideMessage();omnibox.setMessage('');\"><img src=\"{{ $view->baseUrl('/public/css/img/close-button.png') }}\"></a></div>\n\t\t<div id=\"ob_message\" style=\"display: none;\"></div>\n\t\t<div class=\"clear\"></div>\n\t</div>\n\t<div class=\"clear\"></div>\n\t{{ if $gimme->user->logged_in }}\t\t\n\t\t{{ if $gimme->article->number && $gimme->article->comments_locked == 0 && $gimme->article->comments_enabled == 1}}\n\t\t\t<div class=\"top_title\">{{ $view->translate('My comment') }} / {{ $view->translate('Send message to the editorial team') }}</div>\n\t\t\t<div class=\"top_user\">\n\t\t\t\t{{ $view->translate('You are logged in as %s', $gimme->user->name) }}<br><a href=\"#\" onClick=\"omnibox.logout();\">{{ $view->translate('Logout') }}</a><br>\n\t\t\t</div>\n\t\t\t<div class=\"clear\"></div>\n\t\t\t\n\t\t\t<div style=\"display: inline;\" id=\"ob_input\">\n\n\t\t\t<div class=\"radio_container\">\n\t\t\t\t<input type=\"radio\" name=\"ob_comment_feedback\" id=\"ob_comment\" onClick=\"omnibox.switchCommentFeedback();\" checked=\"checked\">\n\t\t\t\t<label for=\"ob_comment\" style=\"float: none;\">{{ $view->translate('Comment on article') }}</label>\n\t\t\t</div>\n\t\t\t\n\t\t\t<div class=\"radio_container\">\n\t\t\t\t<input type=\"radio\" name=\"ob_comment_feedback\" id=\"ob_feedback\" onClick=\"omnibox.switchCommentFeedback();\">\n\t\t\t\t<label for=\"ob_feedback\" style=\"float: none;\">{{ $view->translate('Send message to the editorial team (is not published)') }}</label>\n\t\t\t</div>\n            \n            <div class=\"clear\"></div>\n\t\t\t\n\t\t\t<div id=\"ob_comment_text_container\" class=\"text_container\" style=\"display: inline;\">\n\t\t\t\t<label for=\"ob_comment_subject\" style=\"float: none;\">{{ $view->translate('Subject') }}</label>\n\t\t\t\t<input type=\"text\" id=\"ob_comment_subject\" value=\"\" onKeyPress=\"if (event.keyCode == 13) omnibox.sendComment();\"><br>\n\t\t\t\t<label for=\"ob_comment_text\" style=\"float: none;\">{{ $view->translate('Comment') }}</label>\n\t\t\t\t<textarea name=\"ob_comment_text\" id=\"ob_comment_text\"></textarea><br>\n\t\t\t\t<input type=\"button\" class=\"send_button\" value=\"{{ $view->translate('Publish') }}\" onClick=\"omnibox.sendComment();\">\n\t\t\t</div>\n\t\t\t\n\t\t\t<div id=\"ob_feedback_text_container\" class=\"text_container\" style=\"display: none;\">\n\t\t\t\t<label for=\"ob_feedback_subject\" style=\"float: none;\">{{ $view->translate('Subject') }}</label>\n\t\t\t\t<input type=\"text\" id=\"ob_feedback_subject\" value=\"\" onKeyPress=\"if (event.keyCode == 13) omnibox.sendFeedback();\"><br>\n\t\t\t\t<label for=\"ob_feedback_text\" style=\"float: none;\">{{ $view->translate('Message') }}</label>\n\t\t\t\t<textarea name=\"ob_feedback_text\" id=\"ob_feedback_text\"></textarea><br>\n\t\t\t\t<span id=\"ob_file_upload_container\"></span>\n\t\t\t\t<span id=\"ob_file_info\"></span>\n\t\t\t\t<input type=\"button\" class=\"send_button\" value=\"{{ $view->translate('Send') }}\" onClick=\"omnibox.sendFeedback();\"><br>\n\t\t\t\t<div class=\"clear\"></div>\n\t\t\t\t<span id=\"ob_file_type\">{{ $view->translate('Possible formats: pictures (jpg, png, gif), documents (pdf)') }}</span>\n\t\t\t</div>\n\t\t\t<div class=\"clear\"></div>\n\t\t\t\n\t\t\t</div>\n\t\t{{ else }}\n\t\t\t<div class=\"top_title\">{{ $view->translate('Send message to the editorial team') }}</div>\n\t\t\t<div class=\"top_user\">\n\t\t\t\t{{ $view->translate('Registered as') }} {{ $gimme->user->name }}<br><a href=\"#\" onClick=\"omnibox.logout();\">{{ $view->translate('Logout') }}</a><br>\n\t\t\t</div>\n\t\t\t<div class=\"clear\"></div>\n\t\t\t\n\t\t\t<div style=\"display: inline;\" id=\"ob_input\">\n\t\t\t\n\t\t\t<div id=\"ob_feedback_text_container\" class=\"text_container\">\n\t\t\t\t<label for=\"ob_feedback_subject\" style=\"float: none;\">{{ $view->translate('Subject') }}</label>\n\t\t\t\t<input type=\"text\" id=\"ob_feedback_subject\" value=\"\" onKeyPress=\"if (event.keyCode == 13) omnibox.sendFeedback();\"><br>\n\t\t\t\t<label for=\"ob_feedback_text\" style=\"float: none;\">{{ $view->translate('Message') }}</label>\n\t\t\t\t<textarea name=\"ob_feedback_text\" id=\"ob_feedback_text\"></textarea><br>\n\t\t\t\t<span id=\"ob_file_upload_container\"></span>\n\t\t\t\t<span id=\"ob_file_info\"></span>\n\t\t\t\t<input type=\"button\" class=\"send_button\" value=\"{{ $view->translate('Send') }}\" onClick=\"omnibox.sendFeedback();\"><br>\n\t\t\t\t<div class=\"clear\"></div>\n\t\t\t\t<span id=\"ob_file_type\">{{ $view->translate('Possible formats: pictures (jpg, png, gif), documents (pdf)') }}</span>\n\t\t\t</div>\n\t\t\t<div class=\"clear\"></div>\n\t\t\t\n\t\t\t</div>\n\t\t{{ /if }}\n\t\t\n\t{{ else }}\n\t\t<div class=\"top_title\">{{ $view->translate('Login') }}</div>\n\t\t<div class=\"clear\"></div>\n\t\t<div class=\"text_container left half\">\n\t\t\t{{ $view->translate('You have to be registered in order to comment on articles and send messages directly to the editorial team. Please login or create a free user account.') }}\n\t\t\t<br><a href=\"\">{{ $view->translate('login_link_text') }}</a>\n\t\t</div>\n\t\t<div class=\"text_container right half\">\n                        <div class=\"login_label\">{{ $view->translate('E-Mail') }}</div>\n\t\t\t<input type=\"text\" id=\"ob_email\" name=\"ob_email\" class=\"small right\" onKeyPress=\"if (event.keyCode == 13) omnibox.login();\"><br>\n\t\t\t<div class=\"clear\"></div>\n                        <div class=\"login_label\">{{ $view->translate('Password') }}</div>\n                        <div class=\"clear\"></div>\n\t\t\t<input type=\"password\" id=\"ob_password\" name=\"ob_password\" class=\"small right\" onKeyPress=\"if (event.keyCode == 13) omnibox.login();\"><br>\n\t\t\t<div class=\"clear\"></div>\n\t\t\t<input type=\"button\" class=\"login_button right\" value=\"{{ $view->translate('Login') }}\" onClick=\"omnibox.login();\">\n\t\t\t<a class=\"register_link right\" href=\"{{ $view->baseUrl('/register') }}\">{{ $view->translate('Register') }}</a>\n            <a class=\"register_link right\" href=\"{{ $view->baseUrl('/auth/password-restore ') }}\">{{ $view->translate('Forgot password') }}</a>\n\t\t</div>\n\t\t\n\t\t<div class=\"clear\"></div>\n\t{{ /if }}\n</div>\n\n<div id=\"ob_handle\" style=\"\">\n<a href=\"javascript:omnibox.showHide();\">\n<img id=\"ob_handle_image\" src=\"{{ $view->baseUrl('/public/css/img/green-triangle.png') }}\">\n</a>\n</div>\n\n</div>\n<script type=\"text/javascript\" src=\"{{ $view->baseUrl('/js/omnibox.js') }}\"></script>\n<script>\nomnibox.setBaseUrl('{{ $view->baseUrl() }}');\nomnibox.initialize();\n{{ if $gimme->article->number && $gimme->article->comments_locked == 0 && $gimme->article->comments_enabled == 1}}\n\tomnibox.setType('comment');\n{{ else }}\n\tomnibox.setType('feedback');\n{{ /if }}\nomnibox.setTranslation('attach_file', '{{ $view->translate(\"Attach file\") }}');\nomnibox.setTranslation('feedback_content_empty', '{{ $view->translate(\"Feedback content is not filled in.\") }}');\nomnibox.setTranslation('login_failed', '{{ $view->translate(\"Login failed.\") }}');\nomnibox.setTranslation('login_successful', '{{ $view->translate(\"Login successful. Please wait...\") }}');\nomnibox.setTranslation('logout_successful', '{{ $view->translate(\"Logout successful. Please wait...\") }}');\nomnibox.setTranslation('banned_feedback', '{{ $view->translate(\"You have been banned from writing feedbacks.\") }}');\nomnibox.setTranslation('not_logged_in', '{{ $view->translate(\"You are not logged in.\") }}');\nomnibox.setTranslation('feedback_file_sent', '{{ $view->translate(\"File is uploaded and your message is sent.\") }}');\nomnibox.setTranslation('feedback_sent', '{{ $view->translate(\"Your message is sent.\") }}');\nomnibox.setTranslation('error_header', '{{ $view->translate(\"Following errors have been found:\") }}');\nomnibox.setTranslation('banned_comment', '{{ $view->translate(\"You have been banned from writing comments.\") }}');\nomnibox.setTranslation('comment_subject_empty', '{{ $view->translate(\"The comment subject was not filled in.\") }}');\nomnibox.setTranslation('comment_content_empty', '{{ $view->translate(\"The comment content was not filled in.\") }}');\n\nomnibox.setUploadUrl('{{ $view->baseUrl(\"/feedback/upload/?format=json\") }}');\nomnibox.setFlashRuntime('{{ $view->baseUrl('/js/plupload/js/plupload.flash.swf') }}');\nomnibox.setSilverlightRuntime('{{ $view->baseUrl('/js/plupload/js/plupload.silverlight.xap') }}');\nomnibox.setLanguage('{{ $gimme->language->number }}');\nomnibox.setPublication('{{ $gimme->publication->identifier }}');\nomnibox.setSection('{{ $gimme->section->id }}');\nomnibox.setArticle('{{ $gimme->article->number }}');\n</script>\n"
  },
  {
    "path": "newscoop/application/views/scripts/paginator_control.tpl",
    "content": "<ul class=\"paginator\">\n    {{if isset($paginator->previous)}}\n    <li><a href=\"{{ $view->url(['page' => $paginator->previous]) }}\">previous</a></li>\n    {{else}}\n    <li>previous</li>\n    {{/if}}\n\n    {{foreach $paginator->pagesInRange as $page}}\n    {{if $paginator->current eq $page}}\n    <li class=\"current\"><a href=\"{{ $view->url(['page' => $page]) }}\">{{ $page }}</a></li>\n    {{else}}\n    <li><a href=\"{{ $view->url(['page' => $page]) }}\">{{ $page }}</a></li>\n    {{/if}}   \n    {{/foreach}}\n\n    {{if isset($paginator->next)}}\n    <li><a href=\"{{ $view->url(['page' => $paginator->next]) }}\">next</a></li>\n    {{else}}\n    <li>next</li>\n    {{/if}}\n</ul>\n"
  },
  {
    "path": "newscoop/application/views/scripts/register_after.tpl",
    "content": "{{extends file=\"layout.tpl\"}}\n\n{{block title}}Register yourself{{/block}}\n\n{{block content}}\n<h2>Confirmation has been sent.</h2>\n\n<p>Follow the steps you will find in your email.</p>\n\n<p>Thanks for registering.</p>\n{{/block}}\n"
  },
  {
    "path": "newscoop/application/views/scripts/register_confirm.tpl",
    "content": "{{extends file=\"layout.tpl\"}}\n\n{{block title}}Registration confirm{{/block}}\n\n{{block content}}\n<h2>Please fill your data</h2>\n\n{{ $form }}\n\n<script type=\"text/javascript\">\n$('#first_name, #last_name').keyup(function() {\n    $.post('{{ $view->url(['controller' => 'register', 'action' => 'generate-username'], 'default') }}?format=json', {\n        'first_name': $('#first_name').val(),\n        'last_name': $('#last_name').val()\n    }, function (data) {\n        $('#username').val(data.username).css('color', 'green');\n    }, 'json');\n});\n\n$('#username').change(function() {\n    $.post('{{ $view->url(['controller' => 'register', 'action' => 'check-username'], 'default') }}?format=json', {\n        'username': $(this).val()\n    }, function (data) {\n        if (data.status) {\n            $('#username').css('color', 'green');\n        } else {\n            $('#username').css('color', 'red');\n        }\n    }, 'json');\n}).keyup(function() {\n    $(this).change();\n});\n</script>\n{{/block}}\n"
  },
  {
    "path": "newscoop/application/views/scripts/register_index.tpl",
    "content": "{{extends file=\"layout.tpl\"}}\n\n{{block content}}\n<h1>Register</h1>\n\n{{ $form }}\n\n<script type=\"text/javascript\">\n$('#email').change(function() {\n    $.post('{{ $view->url(['controller' => 'register', 'action' => 'check-email'], 'default') }}?format=json', {\n        'email': $(this).val()\n    }, function (data) {\n        if (data.status) {\n            $('#email').css('color', 'green');\n        } else {\n            $('#email').css('color', 'red');\n        }\n    }, 'json');\n}).keyup(function() {\n    $(this).change();\n});\n</script>\n{{/block}}\n"
  },
  {
    "path": "newscoop/application/views/scripts/register_pending.tpl",
    "content": "{{ $result }}"
  },
  {
    "path": "newscoop/application/views/scripts/register_social.tpl",
    "content": "{{extends file=\"layout.tpl\"}}\n\n{{block content}}\n\n<h1>Hello, {{ $name }}</h1>\n\n<p>You're here for the first time. Please fill in your data to finish registration.</p>\n\n{{ if !empty($error) }}\n<p style=\"color: #c00;\"><strong>{{ $error }}</strong></p>\n{{ /if }}\n\n{{ $form }}\n\n{{/block}}\n"
  },
  {
    "path": "newscoop/application/views/scripts/search_index.tpl",
    "content": "{{extends file=\"layout.tpl\"}}\n\n{{block content}}\n<h1>Search results</h1>\n\n{{ list_search_results_solr qf=\"title^5 deck^3 full_text\" start=$smarty.get.start|default:0  }}\n  {{ if $gimme->current_list->at_beginning }}\n  <ul>\n  {{ /if }}\n    <li class=\"{{ cycle values=\"odd,even\" }}\">\n      <article>\n        <h2 class=\"title\"><a href=\"{{ uri options=\"article\" }}\">{{ $gimme->article->title|escape }}</a></h2>\n        <h5 class=\"author\">{{ list_article_authors }}{{ $gimme->author->name|escape }}{{ /list_article_authors }}</h5>\n        <p>{{ $gimme->article->deck|strip_tags|truncate:200:\"...\":false }}</p>\n      </article>\n    </li>\n  {{ if $gimme->current_list->at_end }}\n  </ul>\n  {{ /if }}\n{{ /list_search_results_solr }}\n\n{{/block}}\n"
  },
  {
    "path": "newscoop/application/views/scripts/topic_articles.tpl",
    "content": "{{extends file=\"layout.tpl\"}}\n\n\n{{block content}}\n  <h1>Topic: {{ $view->topic->name }}</h1>\n{{/block}}"
  },
  {
    "path": "newscoop/application/views/scripts/user_index.tpl",
    "content": "{{extends file=\"layout.tpl\"}}\n\n{{block content}}\n\n<div>\n    <form method=\"GET\" action=\"{{ $view->url(['controller' => 'user', 'action' => 'search'], 'default', true) }}\">\n        <input type=\"text\" name=\"q\"></input>\n        <input type=\"submit\" value=\"search\"></input>\n    </form>\n</div>\n\n<h1>Users index</h1>\n\n<ul class=\"tabs\">\n    <li><a href=\"{{ $view->url(['controller' => 'user', 'action' => 'index'], 'default', true) }}\">Active</a></li>\n    <li><a href=\"{{ $view->url(['controller' => 'user', 'action' => 'filter', 'f' => 'a-z'], 'default', true) }}\">All</a></li>\n    <li><a href=\"{{ $view->url(['controller' => 'user', 'action' => 'filter', 'f' => 'a-d'], 'default', true) }}\">A-D</a></li>\n    <li><a href=\"{{ $view->url(['controller' => 'user', 'action' => 'filter', 'f' => 'e-k'], 'default', true) }}\">E-K</a></li>\n    <li><a href=\"{{ $view->url(['controller' => 'user', 'action' => 'filter', 'f' => 'l-p'], 'default', true) }}\">L-P</a></li>\n    <li><a href=\"{{ $view->url(['controller' => 'user', 'action' => 'filter', 'f' => 'q-t'], 'default', true) }}\">Q-T</a></li>\n    <li><a href=\"{{ $view->url(['controller' => 'user', 'action' => 'filter', 'f' => 'u-z'], 'default', true) }}\">U-Z</a></li>\n    <li><a href=\"{{ $view->url(['controller' => 'user', 'action' => 'editors'], 'default', true) }}\">Editors</a></li>\n</ul>\n\n<ul class=\"users\">\n    {{ foreach $users as $user }}\n    <li>\n        <h3>{{ $user->uname }}</h3>\n        {{ if $user->image }}\n        <img src=\"{{ $user->image }}\" />\n        {{ /if }}\n        <hr />\n    </li>\n    {{ /foreach }}\n</ul>\n\n{{include file='paginator_control.tpl'}}\n\n<div class=\"community_ticker\">\n{{ list_community_feeds length=5 }}<p>{{ $gimme->community_feed->created }} {{ $gimme->community_feed->message }}<p>{{ /list_community_feeds }}\n</div>\n\n{{/block}}\n"
  },
  {
    "path": "newscoop/application/views/scripts/user_profile.tpl",
    "content": "{{extends file=\"layout.tpl\"}}\n\n{{block content}}\n<h1>{{ $user->name }}</h1>\n\n<ul class=\"links\">\n    {{ if $user->logged_in }}\n    <li><a href=\"{{ $view->url(['controller' => 'dashboard', 'action' => 'index'], 'default') }}\">Edit profile</a>.</li>\n    {{ /if }}\n    <li>Go to <a href=\"{{ $view->url(['controller' => 'user', 'action' => 'index'], 'default') }}\">User index</a>.</li>\n</ul>\n\n{{ if $user->image() }}\n<img src=\"{{ $user->image(30, 30) }}\" alt=\"{{ $user->name }}\" />\n{{ /if }}\n\n<p>{{ $user->first_name }} {{ $user->last_name }}</p>\n<p><em>member from {{ $user->created }}</em></p>\n\n<p>posts No.: {{ $user->posts_count }}</p>\n\n<dl class=\"profile\">\n    {{ foreach $profile as $label => $value }}\n    {{ if !empty($value) }}\n    <dt>{{ $label }}</dt>\n    <dd>{{ $value|default:\"n/a\" }}</dd>\n    {{ /if }}\n    {{ /foreach }}\n</dl>\n\n{{ list_user_comments user=$user->identifier length=10 order=\"bydate desc\" }}\n    <p>{{ $gimme->user_comment->submit_date }}</p>\n    <p>{{ $gimme->user_comment->subject }}</p>\n    <p>{{ $gimme->user_comment->content }}</p>\n    <p><a href=\"{{ $gimme->user_comment->article->url }}\">{{ $gimme->user_comment->article->name }}</a></p>\n{{ /list_user_comments }}\n\n{{ assign var=i value=1 }}\n{{ list_images user=$user->identifier order=\"byLastUpdate desc\"}}\n    {{ if $i <= 10 }}\n        <a class=\"user_uploaded_pics\" rel=\"user_pics\" href=\"{{ uri options=\"image\" }}\"><img src=\"{{ uri options=\"image width 50 height 50\" }}\" alt=\"\"/></a>\n    {{ else }}\n        <a class=\"user_uploaded_pics\" rel=\"user_pics\" href=\"{{ uri options=\"image\" }}\"></a>\n    {{ /if }}\n\n    {{ $i = $i + 1 }}\n{{ /list_images }}\n\n{{/block}}\n"
  },
  {
    "path": "newscoop/application.php",
    "content": "<?php\nrequire_once __DIR__ . '/constants.php';\nrequire_once __DIR__ . '/vendor/autoload.php';\nrequire_once __DIR__ . '/application/bootstrap.php.cache';\nrequire_once __DIR__ . '/application/AppKernel.php';\n\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException;\n\n/**\n * THIS FILE IS STIL THERE FOR LEGACY (NOT BASED ON INDEX.PHP) FILES\n * IT'S COPYIED FROM INDEX.PHP\n */\n\n/**\n * Create Symfony kernel\n */\nif (APPLICATION_ENV === 'production') {\n    $kernel = new AppKernel('prod', false);\n} else if (APPLICATION_ENV === 'development' || APPLICATION_ENV === 'dev') {\n    $kernel = new AppKernel('dev', true);\n} else {\n    $kernel = new AppKernel(APPLICATION_ENV, true);\n}\n\n$kernel->loadClassCache();\n$request = Request::createFromGlobals();\n\n\n$response = $kernel->handle($request, \\Symfony\\Component\\HttpKernel\\HttpKernelInterface::MASTER_REQUEST, false);\n$response->send();\n$kernel->terminate($request, $response);\n"
  },
  {
    "path": "newscoop/bin/.htaccess",
    "content": "Order Deny,Allow\nDeny from All\n"
  },
  {
    "path": "newscoop/bin/UpdateApplicationVersionCurrentVersion.php",
    "content": "<?php\n/*\n * This file is part of the project RMT\n *\n * Copyright (c) 2013, Liip AG, http://www.liip.ch\n *\n * For the full copyright and license information, please view the LICENSE\n * file that was distributed with this source code.\n */\n\nuse Liip\\RMT\\Information\\InformationRequest;\nuse Liip\\RMT\\Context;\n\n/**\n * Class UpdateApplicationVersionCurrentVersion\n *\n * Custom pre-release action for updating the version number in the application\n */\nclass UpdateApplicationVersionCurrentVersion extends \\Liip\\RMT\\Action\\BaseAction\n{\n    public function getTitle() {\n        return \"Application version update\";\n    }\n\n    public function execute()\n    {\n        // Output for devs\n        $newVersion = Context::getParam('new-version');\n\n        // newscoop/library/Newscoop/Version.php\n        $appFile = realpath(__DIR__.'/../library/Newscoop/Version.php');\n        Context::get('output')->writeln(\"New version [<yellow>$newVersion</yellow>] udpated into $appFile: \");\n        $fileContent = file_get_contents($appFile);\n        $fileContent = preg_replace('/(.*const VERSION = .*;)/', \"    const VERSION = '$newVersion';\", $fileContent);\n        file_put_contents($appFile, $fileContent);\n\n        // newscoop/template_engine/classes/CampVersion.php\n        $appFile = realpath(__DIR__.'/../template_engine/classes/CampVersion.php');\n        Context::get('output')->writeln(\"New version [<yellow>$newVersion</yellow>] udpated into $appFile: \");\n        $fileContent = file_get_contents($appFile);\n        $fileContent = preg_replace('/(.*private \\$m_release = .*;)/', '    private $m_release = \\''.$newVersion.'\\';', $fileContent);\n        $fileContent = preg_replace('/(.*private \\$m_releaseDate = .*;)/', '    private $m_releaseDate = \\''.date('Y-m-d').'\\';', $fileContent);\n        $fileContent = preg_replace('/(.*private \\$m_copyrightYear = .*;)/', '    private $m_copyrightYear = '.date('Y').';', $fileContent);\n        file_put_contents($appFile, $fileContent);\n\n        $this->confirmSuccess();\n    }\n}\n"
  },
  {
    "path": "newscoop/bin/cli_script_lib.php",
    "content": "<?php\n\n/**\n * Execute a command in the shell.\n *\n * @param string $p_cmd\n * @param string $p_errMsg - default empty\n * @param boolean $p_printOutput - default true\n * @param boolean $p_silent - default false\n */\nfunction camp_exec_command($p_cmd, $p_errMsg = \"\",\n                           $p_printOutput = true, $p_silent = false)\n{\n    $p_cmd .= \" 2> /dev/null\";\n    @exec($p_cmd, $output, $result);\n    if ($result != 0) {\n        if ($p_silent) {\n            exit(1);\n        }\n        if (!$p_printOutput) {\n            $output = array();\n        }\n        if ($p_errMsg != \"\") {\n            $my_output[] = $p_errMsg;\n            $output = array_merge($my_output, $output);\n        }\n        camp_exit_with_error($output);\n    }\n} // fn camp_exec_command\n\n/**\n * So that it also works on windows in the future...\n *\n * @return string\n */\nfunction camp_readline()\n{\n    if (!isset($GLOBALS['stdin'])) {\n        $GLOBALS['stdin'] = fopen(\"php://stdin\", \"r\");\n    }\n    $in = fgets($GLOBALS['stdin'], 4094); // Maximum windows buffer size\n\n    return $in;\n} // fn camp_readline\n\n/**\n * @return boolean\n */\nfunction camp_is_empty_dir($p_dirName)\n{\n    $cnt = 0;\n    if (is_dir($p_dirName) ) {\n        $files = opendir($p_dirName);\n        while ($file = @readdir($files)) {\n            $cnt++;\n            if ($cnt > 2) {\n                return false;\n            }\n        }\n\n        return true;\n    }\n\n    return false;\n} // fn camp_is_empty_dir\n\n/**\n *\n */\nfunction camp_read_files($p_startDir = '.')\n{\n    $files = array();\n    if (is_dir($p_startDir)) {\n        $fh = opendir($p_startDir);\n        while (($file = readdir($fh)) !== false) {\n            // loop through the files, skipping . and .., and\n            // recursing if necessary\n            if (strcmp($file, '.') == 0 || strcmp($file, '..') == 0) {\n                continue;\n            }\n            $filePath = $p_startDir . '/' . $file;\n            if (is_dir($filePath)) {\n                $files = array_merge($files, camp_read_files($filePath));\n            } else {\n                array_push($files, $filePath);\n            }\n        }\n        closedir($fh);\n    } else {\n        // false if the function was called with an invalid\n        // non-directory argument\n        $files = false;\n    }\n\n    return $files;\n} // fn camp_read_files\n\n/**\n * Remove the specified directory and everything underneath it.\n *\n * @param string $p_dirName\n * @param string $p_msg\n * @param array $p_skip\n *      Array of files or directories to preserve\n * @return void\n */\nfunction camp_remove_dir($p_dirName, $p_msg = \"\", $p_skip = array())\n{\n    $p_dirName = str_replace('//', '/', $p_dirName);\n    $dirBaseName = trim($p_dirName, '/');\n    if ($p_dirName == \"/\" || $dirBaseName == ''\n    || $dirBaseName == '.' || $dirBaseName == '..'\n    || (strpos($dirBaseName, '/') === false && $p_dirName[0] == '/')) {\n        camp_exit_with_error(\"camp_remove_dir: Bad directory name '$p_dirName'.\");\n    }\n    if (empty($p_msg)) {\n        $p_msg = \"Unable to remove directory '$p_dirName'\";\n    }\n\n    $removeDir = true;\n    if (strrpos($p_dirName, '*') == (strlen($p_dirName) - 1)) {\n        $p_dirName = substr($p_dirName, 0, strlen($p_dirName) - 1);\n        $removeDir = false;\n    }\n    $p_dirName = rtrim($p_dirName, '/');\n\n    $dirContent = scandir($p_dirName);\n    if ($dirContent === false) {\n        camp_exit_with_error(\"Unable to read the content of the directory '$p_dirName'.\");\n    }\n    foreach ($dirContent as $file) {\n        if (in_array($file, $p_skip)) {\n                continue;\n        }\n        if ($file == '.' || $file == '..') {\n            continue;\n        }\n        $filePath = \"$p_dirName/$file\";\n        if (is_dir($filePath)) {\n            camp_remove_dir($filePath);\n            continue;\n        }\n        if (!unlink($filePath)) {\n            camp_exit_with_error(\"Unable to delete the file '$filePath'.\");\n        }\n    }\n    if ($removeDir) {\n        rmdir($p_dirName);\n    }\n} // fn camp_remove_dir\n\n/**\n * Recursively copy the given directory or file to the given\n * destination.\n *\n * @param string $p_src\n * @param string $p_dest\n * @param string $p_msg\n * @return void\n */\nfunction camp_copy_files($p_src, $p_dest, $p_msg = \"\")\n{\n    if ($p_msg == \"\") {\n        $p_msg = \"Unable to copy file/dir $p_src to $p_dest.\";\n    }\n    $command = \"cp -RL $p_src $p_dest\";\n    camp_exec_command($command, $p_msg);\n} // fn camp_copy_files\n\n/**\n * Rename the given file so it has a time stamp embedded in its name.\n * If there is an error, a message will be placed in the $p_output\n * variable.\n *\n * @param string $p_filePath\n * @param string $p_output\n * @return boolean\n */\nfunction camp_backup_file($p_filePath, &$p_output)\n{\n    if (!is_file($p_filePath)) {\n        $p_output = \"File $p_filePath does not exist.\";\n\n        return 1;\n    }\n    $dir_name = dirname($p_filePath);\n    if (!($file_stat = @stat($p_filePath))) {\n        $p_output = \"Unable to read file $p_filePath data.\";\n\n        return 1;\n    }\n    $file_name = basename($p_filePath);\n    $extension = pathinfo($p_filePath, PATHINFO_EXTENSION);\n    $change_time = strftime(\"%Y-%m-%d-%H\", $file_stat['ctime']);\n    $new_name = \"$base_name-$change_time$extension\";\n\n    if (is_file(\"$dir_name/$new_name\")) {\n        return 0;\n    }\n\n    if (!rename($p_filePath, \"$dir_name/$new_name\")) {\n        $p_output = \"Unable to rename file $p_filePath\";\n\n        return 1;\n    }\n\n    return 0;\n} // fn camp_backup_file\n\n/**\n * Tar the given source file/dir into the given destination directory and\n * give it the name $p_fileName.  If there is an error, return an error\n * message in the $p_output variable.\n *\n * @param mixed $p_sourceFile\n * @param string $p_destDir\n * @param string $p_fileName\n * @param string $p_output\n * @return int\n */\nfunction camp_archive_file($p_sourceFile, $p_destDir, $p_fileName, &$p_output)\n{\n    $output_file_name = \"$p_destDir/$p_fileName.tar.gz\";\n    $fileStr = escapeshellarg(basename($p_sourceFile));\n    $source_dir = dirname($p_sourceFile);\n    $currentDir = getcwd();\n    chdir($source_dir);\n    $cmd = \"tar czhf \" . escapeshellarg($output_file_name) . \" $fileStr 2>&1 >/dev/null\";\n    @exec($cmd, $p_output, $result);\n    // remove false tar.gz file if partially created\n    if ($result) {\n        // catch problems for if the file is not there\n        try {\n            @unlink($output_file_name);\n        } catch (Exception $exc) {}\n    }\n    chdir($currentDir);\n\n    return $result;\n} // fn camp_archive_file\n\n/**\n * Dump the given database into the file $p_destFile.  If there is an\n * error, it will be returned in $p_output.\n *\n * @param string $p_dbName\n * @param string $p_destFile\n * @param string $p_output\n * @return int\n */\nfunction camp_backup_database($p_dbName, $p_destFile, &$p_output,\n                              $p_customParams = array(), $p_omitGeoNames = true)\n{\n    global $Campsite;\n\n    $user = $Campsite['DATABASE_USER'];\n    $password = $Campsite['DATABASE_PASSWORD'];\n    $cmd = \"%s --add-drop-table -c -Q --extended-insert --user=$user --host=\"\n        . $Campsite['DATABASE_SERVER_ADDRESS']\n        . \" --port=\" . $Campsite['DATABASE_SERVER_PORT'];\n    if ($password != \"\") {\n        $cmd .= \" --password=$password\";\n    }\n    if ($p_omitGeoNames) {\n        $cmd .= ' --ignore-table=' . $p_dbName . '.CityNames --ignore-table=' . $p_dbName . '.CityLocations';\n    }\n    $cmd .= ' ' . implode(' ', $p_customParams);\n    $cmd .= \" $p_dbName > $p_destFile\";\n    $p_output = array();\n    @exec( sprintf( $cmd, 'mysqldump' ), $p_output, $result);\n    if ($result !== 0) { //one more try with full path for mother russia\n        $newCmd = exec( 'which mysqldump' );\n        if ( trim( $newCmd ) != '' ) {\n            @exec( sprintf( $cmd, $newCmd ), $p_output, $result );\n        }\n    }\n    switch ($result) {\n        case 1\t:\n        case 2\t: $error = \"General error\"; break;\n        case 126 :\t$error = \"Command invoked cannot be executed. Permission problem or command is not an executable\"; break;\n        case 127 : $error = \"'mysqldump' Command not found. Possible problem with \\$PATH or a typo\"; break;\n        case 128 : $error =\t\"Invalid argument to exit\"; break;\n        default : $error = false;\n    }\n    $additionalFile = $Campsite['CAMPSITE_DIR'] . '/bin/mysql-dump-ext.sql';\n    if (file_exists($additionalFile)) {\n        @exec('cat ' . $additionalFile . '>>' .$p_destFile, $p_output, $result);\n    }\n\n    if (!$error) {\n        return $result;\n    } else {\n       return $error;\n    }\n} // fn camp_backup_database\n\n/**\n * Print out the given message and exit the program with an error code.\n *\n * @param string $p_errorStr\n * @return void\n */\nfunction camp_exit_with_error($p_errorStr)\n{\n    if (function_exists('__exit_cleanup')) {\n        __exit_cleanup();\n    }\n    if (is_array($p_errorStr)) {\n        $p_errorStr = implode(\"\\n\", $p_errorStr);\n    }\n    echo \"\\nERROR!\\n$p_errorStr\\n\";\n    exit(1);\n} // fn camp_exit_with_error\n\n/**\n * Connect to the MySQL database.\n *\n * @param string $p_dbName\n * @return void\n */\nfunction camp_connect_to_database($p_dbName = \"\")\n{\n    global $Campsite;\n\n    $db_user = $Campsite['DATABASE_USER'];\n    $db_password = $Campsite['DATABASE_PASSWORD'];\n    $res = mysql_connect($Campsite['DATABASE_SERVER_ADDRESS'] . \":\"\n        . $Campsite['DATABASE_SERVER_PORT'], $db_user, $db_password);\n    if (!$res) {\n        camp_exit_with_error(\"Unable to connect to the database server.\");\n    }\n\n    if ($p_dbName != \"\" && !mysql_select_db($p_dbName)) {\n        camp_exit_with_error(\"Unable to select database '$p_dbName'.\");\n    }\n    mysql_query(\"SET NAMES 'utf8'\");\n} // fn camp_connect_to_database\n\n/**\n * Return TRUE if the database contains no data.\n *\n * @param string $db_name\n * @return boolean\n */\nfunction camp_is_empty_database($p_dbName)\n{\n    if (!mysql_select_db($p_dbName)) {\n        camp_exit_with_error(\"camp_is_empty_database: can't select the database\");\n    }\n    if (!($res = mysql_query(\"show tables\"))) {\n        camp_exit_with_error(\"camp_is_empty_database: can't read tables\");\n    }\n\n    return (mysql_num_rows($res) == 0);\n} // fn camp_is_empty_database\n\n/**\n * Drop all tables in the given database.\n *\n * @param string $p_dbName\n * @return void\n */\nfunction camp_clean_database($p_dbName)\n{\n    $preserve_tables = array_map('strtolower', array('CityNames', 'CityLocations'));\n\n    if (!mysql_select_db($p_dbName)) {\n        camp_exit_with_error(\"camp_clean_database: can't select the database\");\n    }\n    if (!($res = mysql_query(\"show tables\"))) {\n        camp_exit_with_error(\"Can not clean the database: can't read tables\");\n    }\n    while ($row = mysql_fetch_row($res)) {\n        $table_name = $row[0];\n        if (in_array(strtolower($table_name), $preserve_tables)) {\n            continue;\n        }\n\n        mysql_query(\"drop table `\" . mysql_escape_string($table_name) . \"`\");\n    }\n} // fn camp_clean_database\n\n/**\n * Return TRUE if the database exists.\n *\n * @param string $p_dbName\n * @return boolean\n */\nfunction camp_database_exists($p_dbName)\n{\n    global $g_ado_db;\n\n    return $g_ado_db->hasDatabase($p_dbName);\n} // fn camp_database_exists\n\n/**\n * Converts the current database to UTF-8 encoding.\n * @param $p_log_file\n * @return bool - true if success\n */\nfunction camp_utf8_convert($p_log_file = null, &$p_skipped = array())\n{\n    global $Campsite;\n\n    // Whether logging or not\n    $do_log = (!empty($p_log_file)) ? true : false;\n    if ($do_log) {\n        if (!file_exists($p_log_file) || !is_writable($p_log_file)) {\n            $do_log = false;\n\n            return \"Log file is missing or not writable!\";\n        }\n    }\n\n    // Sets the character set for the database\n    $sql = 'ALTER DATABASE `' . $Campsite['DATABASE_NAME'] . '` CHARACTER SET utf8';\n    if (!($res = mysql_query($sql))) {\n        return \"Unable to convert database character set to utf8.\";\n    }\n    if ($do_log) {\n        $log_text = $sql . \"\\n\";\n    }\n\n    // Sets the character set for the client\n    $sql = 'SET character_set_client = utf8';\n    if (!($res = mysql_query($sql))) {\n        return \"Unable to convert the client character set to utf8.\";\n    }\n    if ($do_log) {\n        $log_text .= $sql . \"\\n\";\n    }\n\n    // Deletes data from ArticleIndex and KeywordIndex tables to fix duplicate values\n    $sql = 'DELETE FROM `' . $Campsite['DATABASE_NAME'] . '`.ArticleIndex';\n    if (!($res = mysql_query($sql))) {\n        return \"Unable to remove article index data.\";\n    } elseif ($do_log) {\n        $log_text .= $sql . \"\\n\";\n    }\n\n    $sql = 'DELETE FROM `' . $Campsite['DATABASE_NAME'] . '`.KeywordIndex';\n    if (!($res = mysql_query($sql))) {\n        return \"Unable to remove keyword index data.\";\n    } elseif ($do_log) {\n        $log_text .= $sql . \"\\n\";\n    }\n\n    $sql = 'UPDATE `' . $Campsite['DATABASE_NAME'] . \"`.Articles SET IsIndexed = 'N'\";\n    if (!($res = mysql_query($sql))) {\n        return \"Unable to update article table data.\";\n    } elseif ($do_log) {\n        $log_text .= $sql . \"\\n\";\n    }\n\n    // Builds ALTER TABLE sql queries for all database tables\n    $sql = \"SELECT CONCAT('ALTER TABLE `', table_schema, '`.`', \\n\"\n         . \"  table_name, '` CONVERT TO CHARACTER SET utf8') \\n\"\n         . \"FROM information_schema.tables \\n\"\n         . \"WHERE table_schema = '\" . mysql_real_escape_string($Campsite['DATABASE_NAME']) . \"'\";\n    $sqlSentences = array();\n    $res = mysql_query($sql);\n    while ($row = mysql_fetch_row($res)) {\n        $sqlSentences[] = $row[0];\n    }\n\n    foreach ($sqlSentences as $sentence) {\n        if (!($res = mysql_query($sentence))) {\n            return \"Unable to convert data to UTF-8 on query:\\n$sentence\";\n        } elseif ($do_log) {\n            $log_text .= $sentence . \"\\n\";\n        }\n    }\n\n    $sql = \"SELECT table_name, column_name, \\n\"\n         . \"  REPLACE(column_type, 'binary', 'char') AS column_type, \\n\"\n         . \"is_nullable, column_default \\n\"\n         . \"FROM information_schema.columns \\n\"\n         . \"WHERE table_schema = '\" . mysql_real_escape_string($Campsite['DATABASE_NAME']) . \"' \\n\"\n         . \"  AND data_type LIKE 'varbinary%'\";\n    $res = mysql_query($sql);\n    while ($row = mysql_fetch_array($res, MYSQL_ASSOC)) {\n        $table_name = $row['table_name'];\n        $column_name = $row['column_name'];\n        $column_type = $row['column_type'];\n        $is_nullable = strtolower($row['is_nullable']) != 'no';\n        $nullDefinition = $is_nullable ? '' : 'NOT NULL';\n        $column_default = is_null($row['column_default']) ? 'NULL' : \"'\" . $row['column_default'] . \"'\";\n        $sql = \"ALTER TABLE `$table_name` MODIFY `$column_name` \\n\"\n             . \"  $column_type $nullDefinition DEFAULT $column_default\";\n        if (!mysql_query($sql)) {\n            if ($table_name == 'Articles' && $column_name == 'Name') {\n                return \"Unable to convert data to UTF-8 on query:\\n$sql\";\n            }\n            $p_skipped[] = $sql;\n        } elseif ($do_log) {\n            $log_text .= $sql . \"\\n\";\n        }\n    }\n\n    // Writes Log file\n    if ($do_log) {\n        if (@file_put_contents($p_log_file, $log_text) === false) {\n            return \"Couldn't write Log file.\";\n        }\n    }\n\n    return true;\n} // fn camp_utf8_convert\n\n/**\n * Sets the encoding to UTF8 for the given encoding in the SQL\n * dump file.\n * @param $p_inDumpFile - source dump file full path\n * @param $p_outDumpFile - destination dump file full path\n * @param $p_fromEncoding - encoding from which to convert to UTF8\n * @return bool - true if successful\n */\nfunction camp_change_dump_encoding($p_inDumpFile, $p_outDumpFile,\n                                   $p_fromEncoding)\n{\n    $inFile = fopen($p_inDumpFile, \"r\");\n    if (!$inFile) {\n        camp_exit_with_error(\"Unable to open the source dump file $p_inDumpFile!\");\n    }\n    $outFile = fopen($p_outDumpFile, 'w');\n    if (!$outFile) {\n        camp_exit_with_error(\"Unable to open the destination dump file $p_outDumpFile!\");\n    }\n    while (!feof($inFile)) {\n        $line = fgets($inFile);\n        $pattern = \"/SET\\s+NAMES\\s+[']?${p_fromEncoding}[']?([^_])/i\";\n        $replacement = 'SET NAMES utf8${1}';\n        $line = preg_replace($pattern, $replacement, $line);\n        $pattern = \"/CHARSET\\s*=\\s*[']?${p_fromEncoding}[']?([^_])/i\";\n        $replacement = 'CHARSET=utf8${1}';\n        $line = preg_replace($pattern, $replacement, $line);\n        if (fputs($outFile, $line) === false) {\n            camp_exit_with_error(\"Unable to write the dump file $p_outDumpFile!\");\n        }\n    }\n    fclose($inFile);\n    fclose($outFile);\n\n    return true;\n}\n\n/**\n * Returns the server default character set.\n * @return string or false if error\n */\nfunction camp_get_server_charset()\n{\n    $sql = \"SHOW VARIABLES LIKE 'character_set_server'\";\n    $res = mysql_query($sql);\n    $row = mysql_fetch_array($res, MYSQL_ASSOC);\n    if (!$row) {\n        return false;\n    }\n\n    return $row['Value'];\n}\n\n/**\n * Returns true if the given charset was valid.\n * @param $p_charset\n * @return bool\n */\nfunction camp_valid_charset($p_charset)\n{\n    $sql = \"SHOW CHARACTER SET LIKE '$p_charset'\";\n    $res = mysql_query($sql);\n    $row = mysql_fetch_array($res, MYSQL_ASSOC);\n    if (!$row) {\n        return false;\n    }\n\n    return true;\n}\n\n/**\n * Returns an array of all the database server charsets.\n * @return array\n */\nfunction camp_get_all_charsets()\n{\n    $charsets = array();\n    $sql = \"SHOW CHARACTER SET\";\n    $res = mysql_query($sql);\n    while ($row = mysql_fetch_array($res, MYSQL_ASSOC)) {\n        $charsets[$row['Charset']] = $row['Description'];\n    }\n\n    return $charsets;\n}\n\n/**\n * Restores the Campsite database from the given dump file.\n * @param $p_sqlFile - dump file\n * @return bool - true on success\n */\nfunction camp_restore_database($p_sqlFile, $p_silent = false)\n{\n    global $Campsite;\n\n     $cmd = \"%s -u \" . $Campsite['DATABASE_USER'] . \" --host=\"\n    . $Campsite['DATABASE_SERVER_ADDRESS'] . \" --port=\"\n    . $Campsite['DATABASE_SERVER_PORT']\n    . ' --default-character-set=utf8';\n    if ($Campsite['DATABASE_PASSWORD'] != \"\") {\n        $cmd .= \" --password=\\\"\" . $Campsite['DATABASE_PASSWORD'] . \"\\\"\";\n    }\n    $cmd .= ' ' . $Campsite['DATABASE_NAME'] . \" < $p_sqlFile\";\n\n    $cmdpath = 'mysql';\n    exec( sprintf( $cmd, $cmdpath ), $o, $r );\n    if ($r !== 0) {\n        $testcmd = exec( \"which $cmdpath\" );\n        if ( trim( $testcmd ) != '' ) {\n            $cmdpath = exec( sprintf( $cmd, $testcmd ) );\n        }\n    }\n\n    camp_exec_command( sprintf( $cmd, 'mysql' ), \"Unable to import database. (Command: $cmd)\",\n                      true, $p_silent);\n\n    return true;\n}\n\nfunction camp_search_db_rolls($roll_base_dir, $last_db_roll)\n{\n    $rolls = array(); // roll_name => roll_path\n\n    $roll_dir_names = scandir($roll_base_dir);\n    if (empty($roll_dir_names)) {\n        return $rolls;\n    }\n\n    $avoid_starts = array('.', '_');\n\n    $some_top_files = false;\n    foreach ($roll_dir_names as $one_rol_dir) {\n        $cur_rol_path = $roll_base_dir . DIRECTORY_SEPARATOR . $one_rol_dir;\n        if (is_file($cur_rol_path) && ('sql' == pathinfo($cur_rol_path, PATHINFO_EXTENSION))) {\n            $some_top_files = true;\n        }\n\n        if ((!is_dir($cur_rol_path)) || (in_array(substr($one_rol_dir, 0, 1), $avoid_starts))) {\n            continue;\n        }\n\n        if ((!empty($last_db_roll)) && ($one_rol_dir <= $last_db_roll)) {\n            continue;\n        }\n\n        $rolls[$one_rol_dir] = $cur_rol_path;\n    }\n\n    ksort($rolls);\n\n    if (empty($last_db_roll)) {\n        if ($some_top_files) {\n            $rolls = array_merge(array('.' => $roll_base_dir), $rolls);\n        }\n    }\n\n    return $rolls;\n\n} // fn camp_search_db_rolls\n\n/**\n * Compares versions of Newscoop for upgrades\n * 3.1.0 before 3.1.x, 3.5.2 before 3.5.11\n * @param $p_version1\n * @param $p_version2\n * @return int\n */\nfunction camp_version_compare($p_version1, $p_version2)\n{\n    $version1 = \"\" . $p_version1;\n    $version2 = \"\" . $p_version2;\n\n    $ver1_arr = explode(\".\", $version1);\n    $ver2_arr = explode(\".\", $version2);\n    $ver1_len = count($ver1_arr);\n    $ver2_len = count($ver2_arr);\n\n    $ver_len = $ver1_len;\n    if ($ver2_len < $ver_len) {$ver_len = $ver2_len;}\n\n    for ($ind = 0; $ind < $ver_len; $ind++) {\n        if ($ver1_arr[$ind] < $ver2_arr[$ind]) {return -1;}\n        if ($ver1_arr[$ind] > $ver2_arr[$ind]) {return 1;}\n    }\n\n    if ($ver1_len < $ver2_len) {return -1;}\n    if ($ver1_len > $ver2_len) {return 1;}\n\n    return 0;\n} // fn camp_version_compare\n\n/**\n * Flushes output buffer.\n * @param $flush - boolean\n * @return void\n */\nfunction flush_output($flush)\n{\n    if ($flush) {\n        echo '<span></span>';\n        flush();\n    }\n}\n\n// auxiliary functions from CampInstallationBase.php, put here to not dor 'require' on all that files there\n\n/**\n * Prepares commands out of sql files, for upgrades\n * @param $p_sqlFileName - name of sql file\n * @return array - the split file\n */\nfunction camp_split_sql($p_sqlFileName)\n{\n    $sqlFile_raw = null;\n    if (!($sqlFile_raw = file($p_sqlFileName))) {\n        return false;\n    }\n\n    $sqlFile_arr = array();\n    foreach ($sqlFile_raw as $one_row) {\n        $one_row = trim($one_row);\n        if (0 === strpos($one_row, \"--\")) {continue;}\n        if (0 === strpos($one_row, \"#\")) {continue;}\n        if (\"\" == $one_row) {continue;}\n\n        $one_row_arr = explode(\"--\", $one_row);\n        $one_row = $one_row_arr[0];\n\n        // we need to end 'system php ...' commands with semicolons\n        $one_row_arr = array();\n        foreach (explode(\" \", $one_row) as $one_row_token) {\n            $one_row_token = trim($one_row_token);\n            if (\"\" == $one_row_token) {continue;}\n            $one_row_arr[] = $one_row_token;\n        }\n        if (3 <= count($one_row_arr)) {\n            if (\"system php\" == implode(\" \", array_map(\"strtolower\", array_slice($one_row_arr, 0, 2))) ) {\n                if ((strlen($one_row) - 1) != strrpos($one_row, \";\")) {\n                    $one_row .= \";\";\n                }\n            }\n        }\n\n        $sqlFile_arr[] = $one_row;\n    }\n\n    $sqlContent = implode(\"\\n\", $sqlFile_arr);\n\n    $buffer = array ();\n    $return = array ();\n    $inString = false;\n\n    for ($i = 0; $i < strlen($sqlContent) - 1; $i ++) {\n        if ($sqlContent[$i] == \";\" && !$inString) {\n            $return[] = substr($sqlContent, 0, $i);\n            $sqlContent = substr($sqlContent, $i +1);\n            $i = 0;\n        }\n\n        if ($inString && ($sqlContent[$i] == $inString)\n                && $buffer[1] != \"\\\\\") {\n            $inString = false;\n        } elseif (!$inString && ($sqlContent[$i] == '\"'\n                                 || $sqlContent[$i] == \"'\")\n                      && (!isset ($buffer[0]) || $buffer[0] != \"\\\\\")) {\n            $inString = $sqlContent[$i];\n        }\n        if (isset($buffer[1])) {\n            $buffer[0] = $buffer[1];\n        }\n\n        $buffer[1] = $sqlContent[$i];\n    }\n\n    if (!empty($sqlContent)) {\n        $return[] = $sqlContent;\n    }\n\n    return $return;\n} // fn camp_split_sql\n\n/**\n *\n */\nfunction camp_import_dbfile($db_server, $db_username, $db_userpass, $db_database, $p_sqlFile, &$errorQueries)\n{\n\n    $db_conn = camp_connect_to_adodb($db_server, $db_username, $db_userpass, $db_database);\n\n    $queries = camp_split_sql($p_sqlFile);\n    if (!$queries) {return false;}\n\n    $errors = 0;\n    $errorQueries = array();\n    foreach ($queries as $query) {\n        $query = trim($query);\n        if (!empty($query) && ($query{0} != '#') && (0 !== strpos($query, \"--\"))) {\n\n            if (0 !== strpos(strtolower($query), \"system\")) {\n                if ($db_conn->Execute($query) === false) {\n                    $errors++;\n                    $errorQueries[] = $query;\n                    $errorQueries[] = $db_conn->ErrorMsg();\n                }\n                continue;\n            }\n\n            // if it started via the system command\n            $command_parts = array();\n            foreach (explode(\" \", $query) as $query_part) {\n                $query_part = trim($query_part);\n                if (\"\" != $query_part) {\n                    $command_parts[] = $query_part;\n                }\n            }\n\n            $command_script = \"\";\n            $command_known = false;\n            if (3 == count($command_parts)) {\n                if (\"php\" == strtolower($command_parts[1])) {\n                    $command_known = true;\n                    $command_script = trim($command_parts[2], \";\");\n                }\n            }\n            if (!$command_known) {\n                $errors++;\n                $errorQueries[] = $query;\n                continue;\n            }\n\n            $command_path = dirname($p_sqlFile);\n            $command_path = camp_combine_paths($command_path, $command_script);\n\n            // we had some problems on wrongly initialized db connectors for the executed php files, thus doing this (re)openning\n            camp_connect_to_adodb($db_server, $db_username, $db_userpass, $db_database);\n\n            require_once($command_path);\n        }\n    }\n\n    // keep connection for plugin upgrade\n    camp_connect_to_adodb($db_server, $db_username, $db_userpass, $db_database);\n\n    return $errors;\n} // fn camp_import_dbfile\n\n/**\n * Puts together two paths, usually an absolute one (directory), plus a relative one (filename)\n * @param $p_dirFirst\n * @param $p_dirSecond\n * @return string\n */\nfunction camp_combine_paths($p_dirFirst, $p_dirSecond)\n{\n    if (0 === strpos(strtolower($p_dirSecond), \"/\")) {\n        return $p_dirSecond;\n    }\n\n    if (0 === strpos(strtolower($p_dirSecond), \"./\")) {\n        $p_dirSecond = substr($p_dirSecond, 2);\n\n        return $p_dirFirst . DIRECTORY_SEPARATOR . $p_dirSecond;\n    }\n\n    while (0 === strpos(strtolower($p_dirSecond), \"../\")) {\n        $p_dirFirst = dirname($p_dirFirst);\n        $p_dirSecond = substr($p_dirSecond, 3);\n    }\n\n    return $p_dirFirst . DIRECTORY_SEPARATOR . $p_dirSecond;\n} // fn camp_combine_paths\n\n/**\n * Connects to the specified DB\n * @param $db_host\n * @param $db_username\n * @param $db_userpass\n * @param $db_database\n * @return mixed\n */\nfunction camp_connect_to_adodb($db_host, $db_username, $db_userpass, $db_database = \"\")\n{\n    if (isset($GLOBALS['g_ado_db']) && $GLOBALS['g_ado_db']->isConnected()) {\n        return $GLOBALS['g_ado_db'];\n    }\n\n    $db_conn = ADONewConnection('mysql');\n    $db_conn->SetFetchMode(ADODB_FETCH_ASSOC);\n\n    @$db_conn->Connect($db_host, $db_username, $db_userpass);\n    if (!$db_conn->isConnected()) {\n        return null;\n    }\n\n    if (\"\" != $db_database) {\n        $selectDb = $db_conn->SelectDB($db_database);\n        if (!$selectDb) {\n            return null;\n        }\n\n        $db_conn->Execute(\"SET NAMES 'utf8'\");\n    }\n\n    $GLOBALS['g_ado_db'] = $db_conn;\n\n    return $db_conn;\n} // fn camp_connect_to_adodb\n\nfunction camp_readable_size($p_bytes)\n{\n    $show_size = 0 + $p_bytes;\n    $size_units = 'TiB';\n\n    $unit_names = array('B', 'KiB', 'MiB', 'GiB');\n    foreach ($unit_names as $cur_unit) {\n        if ($show_size < 1024) {\n            $size_units = $cur_unit;\n            break;\n        }\n        $show_size = $show_size / 1024;\n    }\n\n    return number_format($show_size, 2) . ' ' . $size_units;\n}\n\nfunction camp_geodata_loaded($g_conn)\n{\n    $queryStr_loc = 'SELECT count(*) AS cnt FROM CityLocations';\n    $queryStr_nam = 'SELECT count(*) AS cnt FROM CityNames';\n\n    $got_data = true;\n    foreach (array($queryStr_loc, $queryStr_nam) as $one_query) {\n        $rows = $g_conn->GetAll($one_query);\n        foreach ((array) $rows as $row) {\n            if (0 == $row['cnt']) {\n                $got_data = false;\n                break;\n            }\n        }\n    }\n\n    return $got_data;\n}\n\nfunction camp_load_geodata($p_mysqlCmd, $p_dbConf)\n{\n    if (!file_exists($p_mysqlCmd)) {\n        return false;\n    }\n\n    if ((!is_file($p_mysqlCmd)) && (!is_link($p_mysqlCmd))) {\n        return false;\n    }\n\n    if (!is_executable($p_mysqlCmd)) {\n        return false;\n    }\n\n    $last_wd = getcwd();\n    $work_wd = $GLOBALS['g_campsiteDir'].DIRECTORY_SEPARATOR.'install'.DIRECTORY_SEPARATOR.'sql';\n    chdir($work_wd);\n\n    $dbAccess = $p_dbConf;\n\n    $db_host = $dbAccess['host'];\n    $db_port = $dbAccess['port'];\n    $db_user = $dbAccess['user'];\n    $db_pass = $dbAccess['pass'];\n    $db_name = $dbAccess['name'];\n\n    $access_params = '';\n    $access_params .= ' -h ' . escapeshellarg($db_host);\n    if (!empty($db_port)) {\n        $access_params .= ' -P ' . escapeshellarg('' . $db_port);\n    }\n    $access_params .= ' -u ' . escapeshellarg($db_user);\n    if (!empty($db_pass)) {\n        $access_params .= ' -p' . escapeshellarg($db_pass);\n    }\n    $access_params .= ' -D ' . escapeshellarg($db_name);\n    $cmd_string = escapeshellcmd($p_mysqlCmd) . $access_params . ' --local-infile=1 < ' . 'geonames.sql';\n    $cmd_output = array();\n    $cmd_retval = 0;\n    exec($cmd_string, $cmd_output, $cmd_retval);\n\n    chdir($last_wd);\n\n    if (!empty($cmd_retval)) {\n        return false;\n    }\n\n    return true;\n}\n\nfunction camp_upgrade_database($p_dbName, $p_silent = false, $p_showRolls = false)\n{\n    global $Campsite;\n\n    $campsite_dir = $Campsite['CAMPSITE_DIR'];\n    $etc_dir = $Campsite['ETC_DIR'];\n\n    if (!camp_database_exists($p_dbName)) {\n        return \"Can't upgrade database $p_dbName: it doesn't exist\";\n    }\n\n    $lockFileName = __FILE__;\n    $lockFile = fopen($lockFileName, \"r\");\n    if ($lockFile === false) {\n        return \"Unable to create single process lock control!\";\n    }\n    if (!flock($lockFile, LOCK_EX | LOCK_NB)) { // do an exclusive lock\n\n        return \"The upgrade process is already running.\";\n    }\n\n    $old_version = ''; // what version was imported before running the upgrade\n    $old_roll = ''; // what roll was imported before running the upgrade\n    if (!($res = camp_detect_database_version($p_dbName, $old_version, $old_roll)) == 0) {\n        flock($lockFile, LOCK_UN); // release the lock\n\n        return $res;\n    }\n    $last_db_version = $old_version; // keeping the last imported version throughout the upgrade process\n    $last_db_roll = $old_roll; // keeping the last imported roll throughout the upgrade process\n\n    $db_host = $Campsite['DATABASE_SERVER_ADDRESS'];\n    $db_port = $Campsite['DATABASE_SERVER_PORT'];\n    $db_username = $Campsite['DATABASE_USER'];\n    $db_userpass = $Campsite['DATABASE_PASSWORD'];\n    $db_database = $p_dbName;\n\n    $first = true;\n    $skipped = array();\n    $versions = array_map('basename', glob($campsite_dir . '/install/Resources/sql/upgrade/[2-9].[0-9]*'));\n    usort($versions, 'camp_version_compare');\n\n    if (-1 == camp_version_compare($old_version, '3.5.x')) {\n        return \"Can not upgrade from version older than 3.5.\\nUpgrade into Newscoop 3.5 first.\\n\";\n    }\n\n    // the $db_version, $db_roll are for keeping the last imported db changes\n    // when $db_version is lesser then 3.5.x, we do not support upgrade\n    // for $db_version 3.5.x and greater, the rolls can be:\n    //     ''    ... no changes from the $db_version yet applied => apply both main and all the roll updates\n    //     '.'   ... just the main changes applied => apply just all the roll updates\n    //     roll  ... applied the main changes, plus rolls upto the given roll => apply roll updates greater then the current roll\n    // it is supposed that from 3.6.x on, we will not use db change sets in the $db_version directory itslef\n    // when (in the upgrade cycle) going to a greater version, roll is set to '', since all changes there have to be applied\n\n    foreach ($versions as $index=>$db_version) {\n        //if ($old_version > $db_version) {\n        //    continue;\n        //}\n        if (-1 == camp_version_compare($db_version, $old_version)) {\n            continue;\n        }\n\n        $last_db_version = $db_version;\n        $last_db_roll = '';\n\n        $cur_old_roll = ''; // the roll of the running version that was imported before the upgrade ($old_roll or '')\n        if ($first) {\n            $last_db_roll = $old_roll;\n            $cur_old_roll = $old_roll;\n            if (!$p_silent) {\n                $db_ver_roll_info = \"$db_version\";\n                if (!in_array($old_roll, array('', '.'))) {\n                    $db_ver_roll_info .= \", roll $old_roll\";\n                }\n                echo \"\\n\\t* Upgrading the database from version $db_ver_roll_info...\";\n            }\n            if ($old_version < '3.4.x') {\n                $res = camp_utf8_convert(null, $skipped);\n                if ($res !== true) {\n                    flock($lockFile, LOCK_UN); // release the lock\n\n                    return $res;\n                }\n            }\n            $first = false;\n        }\n        $output = array();\n\n        $upgrade_base_dir = $campsite_dir . \"/install/Resources/sql/upgrade/$db_version/\";\n        $rolls = camp_search_db_rolls($upgrade_base_dir, $cur_old_roll);\n\n        $db_conf_file = $etc_dir . '/database_conf.php';\n        $install_conf_file = $etc_dir . \"/install_conf.php\";\n\n        // run upgrade scripts\n        $sql_scripts = array(\"tables.sql\", \"data-required.sql\", \"data-optional.sql\", \"tables-post.sql\");\n        foreach ($rolls as $upgrade_dir_roll => $upgrade_dir_path) {\n            $upgrade_dir = $upgrade_dir_path . DIRECTORY_SEPARATOR;\n            $last_db_roll = $upgrade_dir_roll;\n            if ($p_showRolls || (!$p_silent)) {\n                echo \"\\n<pre>\\t\\t * importing database roll $last_db_version / $last_db_roll</pre>\\n\";\n            }\n            foreach ($sql_scripts as $index=>$script) {\n                if (!is_file($upgrade_dir . $script)) {\n                    continue;\n                }\n                $error_queries = array();\n                $sq_file = $upgrade_dir . $script;\n                $err_count = camp_import_dbfile($db_host . \":\" . $db_port, $db_username, $db_userpass, $db_database, $sq_file, $error_queries);\n\n                if ($err_count && ($script != \"data-optional.sql\")) {\n                    flock($lockFile, LOCK_UN); // release the lock\n\n                    return \"$script ($db_version) errors on:\\n\" . implode(\"\\n\", $error_queries);\n                }\n            }\n\n            $res = camp_save_database_version($p_dbName, $last_db_version, $last_db_roll);\n            if (0 !== $res) {\n                echo $res;\n            }\n        }\n    }\n    if (!$p_silent) {\n        echo \"done.\\n\";\n    }\n\n    if (count($skipped) > 0 && !$p_silent) {\n        echo \"\nEncountered non-critical errors while converting data to UTF-8 encoding!\nThe following database queries were unsuccessful because after conversion\ntext values become case insensitive. Words written in different case were\nunique before the conversion; after the conversion they are identical,\nbreaking some constraints in the database.\n\nThe upgrade script can not fix these issues automatically!\n\nYou can continue to use the data as is and manually fix these issues\nlater. The table fields that were not converted will not support case\ninsensitive searches.\n\nPlease save the following list of skipped queries:\\n\";\n        foreach ($skipped as $query) {\n            echo \"$query;\\n\";\n        }\n        echo \"-- end of queries list --\\n\";\n    }\n\n    //$res = camp_save_database_version($p_dbName, $last_db_version, $last_db_roll);\n    //if (0 !== $res) {\n    //    echo $res;\n    //}\n\n    flock($lockFile, LOCK_UN); // release the lock\n\n    return 0;\n} // fn camp_upgrade_database\n\nfunction camp_save_database_version($p_db, $version, $roll)\n{\n    $version = str_replace(array('\"', '\\''), array('_', '_'), $version);\n    $roll = str_replace(array('\"', '\\''), array('_', '_'), $roll);\n\n    $ins_db_version = 'INSERT INTO Versions (ver_name, ver_value) VALUES (\"last_db_version\", \"' . $version . '\") ON DUPLICATE KEY UPDATE ver_value = \"' . $version . '\"';\n    $ins_db_roll = 'INSERT INTO Versions (ver_name, ver_value) VALUES (\"last_db_roll\", \"' . $roll . '\") ON DUPLICATE KEY UPDATE ver_value = \"' . $roll . '\"';\n\n    if (is_object($p_db)) {\n        $p_db->Execute($ins_db_version);\n        $p_db->Execute($ins_db_roll);\n\n        return true;\n    }\n\n    global $g_ado_db;\n    $g_ado_db->executeUpdate($ins_db_version);\n    $g_ado_db->executeUpdate($ins_db_roll);\n\n    return 0;\n}\n\n/**\n * Find out which version is the given database.\n *\n * @param string $p_dbName\n * @param string $version\n *\n * @return mixed\n */\nfunction camp_detect_database_version($p_dbName, &$version, &$roll = '')\n{\n    global $g_ado_db;\n    $version = '';\n\n    if (!$g_ado_db->hasDatabase($p_dbName)) {\n        return \"Can't select the database $p_dbName\";\n    }\n\n    if ($g_ado_db->hasTable('Versions')) {\n        $got_versions = 0;\n\n        try {\n            $sel_db_version = 'SELECT ver_value FROM Versions WHERE ver_name = \"last_db_version\"';\n            $version = $g_ado_db->getOne($sel_db_version);\n            if (!empty($version)) {\n                $got_versions += 1;\n            }\n        } catch (Exception $e) {\n            return \"Unable to query the database $p_dbName\";\n        }\n\n        try {\n            $sel_db_roll = 'SELECT ver_value FROM Versions WHERE ver_name = \"last_db_roll\"';\n            $roll = $g_ado_db->getOne($sel_db_roll);\n            if (!empty($roll)) {\n                $got_versions += 1;\n            }\n        } catch (Exception $e) {\n            return \"Unable to query the database $p_dbName\";\n        }\n\n        if (2 == $got_versions) {\n            return 0;\n        }\n    }\n\n    $roll = '';\n\n    if (!$res = mysql_query(\"SHOW TABLES\")) {\n        return \"Unable to query the database $p_dbName\";\n    }\n\n    $version = \"2.0.x\";\n    $row = mysql_fetch_row($res);\n    if (in_array(strtolower($row[0]), array_map(\"strtolower\", array(\"ArticleTopics\", \"Topics\")))) {\n        $version = $version < \"2.1.x\" ? \"2.1.x\" : $version;\n    }\n    if (in_array(strtolower($row[0]), array_map(\"strtolower\", array(\"URLTypes\", \"TemplateTypes\", \"Templates\", \"Aliases\",\n                                \"ArticlePublish\", \"IssuePublish\", \"ArticleImages\")))) {\n        $version = \"2.2.x\";\n\n        $res2 = mysql_query(\"DESC Articles PublishDate\");\n        if (is_resource($res2) && mysql_num_rows($res2) > 0) {\n            $version = \"2.3.x\";\n        }\n\n        $res2 = mysql_query(\"SHOW TABLES LIKE 'Attachments'\");\n        if (is_resource($res2) && mysql_num_rows($res2) > 0) {\n            $version = \"2.4.x\";\n        }\n\n        $res2 = mysql_query(\"DESC SubsSections IdLanguage\");\n        if (is_resource($res2) && mysql_num_rows($res2) > 0) {\n            $version = \"2.5.x\";\n        }\n\n        if (!$res2 = mysql_query(\"SHOW TABLES LIKE 'ArticleTypeMetadata'\")) {\n            return \"Unable to query the database $p_dbName\";\n        }\n        if (mysql_num_rows($res2) > 0) {\n            // check for phorum_users old table\n            $chkPhorumUsers = mysql_query( \"SHOW TABLES LIKE '%phorum_users%'\" );\n            if ( is_resource($chkPhorumUsers) && mysql_num_rows($chkPhorumUsers) > 0 ) {\n                $version = \"2.6.0\";\n                if (!$res2 = mysql_query(\"SHOW COLUMNS FROM ArticleTypeMetadata LIKE 'type_name'\")) {\n                    return \"Unable to query the database $p_dbName\";\n                }\n                $row = mysql_fetch_array($res2, MYSQL_ASSOC);\n                if (!is_null($row) && strstr($row['Type'], '166') != '') {\n                    $version = \"2.6.1\";\n                } else {\n                    return 0;\n                }\n\n                $res2 = mysql_query(\"SHOW COLUMNS FROM phorum_users LIKE 'fk_campsite_user_id'\");\n                if (is_resource($res2) && mysql_num_rows($res2) > 0) {\n                    $version = \"2.6.2\";\n                } else {\n                    return 0;\n                }\n\n                $res2 = mysql_query(\"SELECT * FROM Events WHERE Id = 171\");\n                if (is_resource($res2) && mysql_num_rows($res2) > 0) {\n                    $version = \"2.6.3\";\n                } else {\n                    return 0;\n                }\n                $res2 = mysql_query(\"SELECT * FROM UserConfig \"\n                                    . \"WHERE varname = 'ExternalSubscriptionManagement'\");\n                if (is_resource($res2) && mysql_num_rows($res2) > 0) {\n                    $version = \"2.6.4\";\n                }\n                $res2 = mysql_query(\"SELECT * from phorum_users WHERE fk_campsite_user_id IS NULL\");\n                if (is_resource($res2) && mysql_num_rows($res2) == 0) {\n                    $version = \"2.6.x\";\n                }\n            }\n        }\n        if (!$res2 = mysql_query(\"SHOW TABLES LIKE '%Audioclip%'\")) {\n            return \"Unable to query the database $p_dbName\";\n        }\n        if (mysql_num_rows($res2) > 0) {\n            $version = \"2.7.x\";\n        }\n        if (!$res2 = mysql_query(\"SHOW TABLES LIKE 'liveuser_users'\")) {\n            return \"Unable to query the database $p_dbName\";\n        }\n        if (mysql_num_rows($res2) > 0) {\n            if (!$res2 = mysql_query(\"SELECT * FROM liveuser_users \"\n                                     . \"WHERE fk_user_type = 1\")) {\n                return \"Unable to query the database $p_dbName\";\n            }\n            if (is_resource($res2) && mysql_num_rows($res2) > 0) {\n                $version = \"3.0.x\";\n            }\n        }\n        if (!$res2 = mysql_query(\"SHOW TABLES LIKE 'ObjectTypes'\")) {\n            return \"Unable to query the database $p_dbName\";\n        }\n        if (mysql_num_rows($res2) > 0) {\n            $version = \"3.1.0\";\n            if (!$res2 = mysql_query(\"SHOW INDEX FROM ArticleIndex\")) {\n                return \"Unable to query the database $p_dbName\";\n            }\n            while ($row = mysql_fetch_array($res2, MYSQL_ASSOC)) {\n                if (strtolower($row['Key_name']) == 'article_keyword_idx') {\n                    $version = \"3.1.2\";\n                    break;\n                }\n            }\n        }\n        if (!$res2 = mysql_query(\"SHOW TABLES LIKE 'RequestStats'\")) {\n            return \"Unable to query the database $p_dbName\";\n        }\n        if (mysql_num_rows($res2) > 0) {\n            $version = \"3.2.x\";\n        }\n        if (!$res2 = mysql_query(\"SHOW TABLES LIKE 'SystemPreferences'\")) {\n            return \"Unable to query the database $p_dbName\";\n        }\n        if (mysql_num_rows($res2) > 0) {\n            if (!$res2 = mysql_query(\"SELECT * FROM SystemPreferences \"\n            . \"WHERE varname = 'CacheEngine'\")) {\n                return \"Unable to query the database $p_dbName\";\n            }\n            if (mysql_num_rows($res2) > 0) {\n                $version = \"3.3.x\";\n            }\n        }\n        if (!$res2 = mysql_query(\"SHOW COLUMNS FROM Languages LIKE 'ShortMonth1'\")) {\n            return \"Unable to query the database $p_dbName\";\n        }\n        if (mysql_num_rows($res2) > 0) {\n            $version = \"3.4.x\";\n        }\n        if (!$res2 = mysql_query(\"SHOW TABLES LIKE 'Cache'\")) {\n            return \"Unable to query the database $p_dbName\";\n        }\n        if (mysql_num_rows($res2) > 0) {\n            $version = \"3.5.x\";\n        }\n\n        if (!$res2 = mysql_query(\"SHOW TABLES LIKE 'output'\")) {\n            return \"Unable to query the database $p_dbName\";\n        }\n        if (mysql_num_rows($res2) > 0) {\n            //$version = \"3.6.x\";\n            $version = \"3.5.x\";\n            $roll = '.';\n        }\n    }\n\n    return 0;\n} // fn camp_detect_database_version\n"
  },
  {
    "path": "newscoop/bin/events-notifier",
    "content": "#!/usr/bin/env php\n<?php\nsystem(__DIR__ . '/../application/console newscoop:notifier:events');\n"
  },
  {
    "path": "newscoop/bin/newscoop-autopublish",
    "content": "#!/usr/bin/env php\n<?php\nsystem(__DIR__ . '/../application/console newscoop:autopublish');\n"
  },
  {
    "path": "newscoop/bin/newscoop-backup",
    "content": "#!/usr/bin/env php\n<?php\n\nuse Symfony\\Component\\Filesystem\\Exception\\IOException;\nuse Symfony\\Component\\Filesystem\\Filesystem;\nuse Newscoop\\Services\\FilesystemService;\n\nrequire_once dirname(__FILE__) . '/newscoop_bootstrap.php';\n\nif (empty($GLOBALS['argv']) && empty($options)) {\n\techo \"\\n\";\n\techo \"Can't read command line arguments\\n\";\n\techo \"\\n\";\n\texit(1);\n}\n\n$ETC_DIR = $CAMPSITE_DIR . '/conf';\n\nrequire_once(\"cli_script_lib.php\");\n\nif (!FilesystemService::isReadable(\"$ETC_DIR/install_conf.php\")) {\n\texit(1);\n}\n\n// include install_conf.php file\nrequire_once(\"$ETC_DIR/install_conf.php\");\n\nif (empty($options)) {\n    $flush = false;\n} else {\n    $GLOBALS['argv'] = $options;\n    $flush = true;\n}\n$help = false;\n$silent = false;\n$default_dir = false;\n$skip_static = false;\nfor ($i = 0; ; $i++) {\n\tif (!isset($GLOBALS['argv'][$i])) {\n\t\tbreak;\n\t}\n\t$arg = trim($GLOBALS['argv'][$i]);\n    $help |= ($arg == \"--help\");\n\t$silent |= ($arg == \"--silent\");\n\t$default_dir |= ($arg == \"--default-dir\");\n\t$skip_static |= ($arg == \"--skip-static\");\n}\n\nif (!$silent) {\n\techo \"\\n\";\n\techo \"Newscoop Backup Utility\\n\";\n\techo \"-----------------------\\n\";\n\tflush_output($flush);\n}\n\n$usage =\n\"  Usage:\n  newscoop-backup [--silent] [--default-dir]\n\n  This script will backup all of your website data needed to re-create\n  your site from scratch, except for the Newscoop software itself.\n  Later, if you want to restore from a backup file, use the script\n  'newscoop-restore'.\n\n  Parameters:\n    --help\n        Show this help and exit.\n\n    --silent\n        Don't display any messages on success.\n\n    --default-dir:\n        Save the backup archive in the backup default directory:\n            $CAMPSITE_DIR/backup/\n        By default the backup file is saved in the current directory.\n\n    --skip-static\n        Don't backup any static files (images/files/pdf/etc).\n\n  See also:\n      newscoop-restore\n\n\";\n\nif (empty($ETC_DIR) || $help == true) {\n\techo $usage;\n\texit(1);\n}\n\nif (!is_file(\"$ETC_DIR/database_conf.php\")) {\n\techo \"\\n\";\n\techo \"Database configuration file is missing!\\n\";\n\techo \"\\n\";\n\texit(1);\n}\nrequire_once(\"$ETC_DIR/database_conf.php\");\n$html_dir = $CAMPSITE_DIR;\n\n$timestampStr = date(\"Y-m-d-H-i-s\");\n$backupDirName = 'backup-newscoop-'.$timestampStr;\n\nif ($default_dir) {\n\t$adviceOnError = \"Please run this script as '\".$Campsite['APACHE_USER'].\"' or as 'root'.\";\n\t$backupDirFullPath = $CAMPSITE_DIR . \"/backup/$backupDirName\";\n\tcamp_exec_command(\"mkdir -p \" . escapeshellarg($backupDirFullPath),\n\t\t\t\t \"Unable to create the default backup directory.\\n$adviceOnError\", !$silent);\n} else {\n\t$adviceOnError = \"You may not have the right to write to the current directory.\\n\"\n\t\t\t\t\t. \"Please set the current directory to a location where you have\\n\"\n\t\t\t\t\t. \"the right to write.\";\n\t$backupDirFullPath = getcwd().\"/\".$backupDirName;\n}\n\nif (!$silent) {\n\techo \"Backup script version: \".$Campsite[\"VERSION\"].\"\\n\";\n\techo \"Backing up newscoop\\n\";\n\tflush_output($flush);\n}\n\nif (!file_exists($backupDirFullPath)) {\n  try {\n    $filesystem = new Filesystem();\n    $filesystem->mkdir($backupDirFullPath);\n  } catch(IOException $e) {\n    throw new IOException($adviceOnError);\n  }\n}\n\n$tmpVersion = preg_split('/ /', $Campsite[\"VERSION\"]);\n$tmpVersion = $tmpVersion[0];\n$cmd = \"touch $backupDirFullPath/BACKUP-VERSION-$tmpVersion\";\ncamp_exec_command($cmd, \"Couldn't write VERSION file.\");\n\n// backup the database\nif (!$silent) {\n\t$free_space = disk_free_space($backupDirFullPath);\n\techo '\nAvailable disk space is <b>' . camp_readable_size($free_space) . '.</b>\nThe actual necessary space depends mostly on size of your database and multimedia files.\nIf the backup does not succeed, try to create more free space, please.\n\n';\n\techo \" * Backing up the database...\";\n\n\tflush_output($flush);\n}\n\n$db_file_name = \"$backupDirFullPath/\".$Campsite['DATABASE_NAME'].'-database.sql';\n\nif (is_file($db_file_name) && (camp_backup_file($db_file_name, $output) != 0)) {\n\t// remove the abandoned dir, but the error string shall be on the original issue\n\tcamp_remove_dir($backupDirFullPath, \"\");\n\tcamp_exit_with_error($silent ? \"\" : array(\"Unable to create temporary archive.\", $adviceOnError));\n}\nif ( ( $error = camp_backup_database($Campsite['DATABASE_NAME'], $db_file_name, $output) ) !== 0) {\n\t// remove the abandoned dir, but the error string shall be on the original issue\n\tcamp_remove_dir($backupDirFullPath, \"\");\n\tcamp_exit_with_error($silent ? \"\" : array(\"Unable to create temporary archive.\", $error));\n}\nif (!$silent) {\n\techo \"done.\\n\";\n}\n\nif (!$silent) {\n\techo \" * Backing up the themes...\";\n\tflush_output($flush);\n}\ncamp_copy_files(\"$html_dir/themes\", $backupDirFullPath);\nif (!$silent) {\n\techo \"done.\\n\";\n}\n\nif (!$skip_static) {\n\tif (!$silent) {\n\t\techo \" * Backing up images...\";\n\t\tflush_output($flush);\n\t}\n\tcamp_copy_files(\"$html_dir/images\", $backupDirFullPath, \"Unable to copy file/dir $html_dir/images to $backupDirFullPath. Please create the folder images/ or use the --skip-static option.\");\n\tif (!$silent) {\n\t\techo \"done.\\n\";\n\t}\n\n\tif (!$silent) {\n\t\techo \" * Backing up file attachments...\";\n\t\tflush_output($flush);\n\t}\n\n\tcamp_copy_files(\"$html_dir/public/files\", $backupDirFullPath, \"Unable to copy file/dir $html_dir/public/file to $backupDirFullPath. Please create the folder public/files/ or use the --skip-static option.\");\n\tif (!$silent) {\n\t\techo \"done.\\n\";\n\t}\n\n\tif (!$silent) {\n\t    echo \" * Backing up videos...\";\n\t    flush_output($flush);\n\t}\n\n\tcamp_copy_files(\"$html_dir/public/videos\", $backupDirFullPath, \"Unable to copy file/dir $html_dir/public/video to $backupDirFullPath. Please create the folder public/video/ or use the --skip-static option.\");\n\tif (!$silent) {\n\t    echo \"done.\\n\";\n\t}\n\n\tif (!$silent) {\n\t    echo \" * Backing up PDFs...\";\n\t    flush_output($flush);\n\t}\n\tcamp_copy_files(\"$html_dir/public/pdf\", $backupDirFullPath, \"Unable to copy file/dir $html_dir/public/pdf to $backupDirFullPath. Please create the folder public/pdf/ or use the --skip-static option.\");\n\tif (!$silent) {\n\t    echo \"done.\\n\";\n\t}\n}\n\nif (!$silent) {\n\techo \" * Backing up configuration files...\";\n\tflush_output($flush);\n}\n\ncamp_copy_files(\"$ETC_DIR\", $backupDirFullPath);\nif (!$silent) {\n\techo \"done.\\n\";\n}\n\nif (!$silent) {\n\techo \" * Creating tarball...\";\n\tflush_output($flush);\n}\n\nif (camp_archive_file($backupDirFullPath, dirname($backupDirFullPath), $backupDirName, $output) != 0) {\n\techo \"\\n\" . implode(\"\\n\", $output) . \"\\n\";\n\t// remove the abandoned dir, but the error string shall be on the original issue\n\tcamp_remove_dir($backupDirFullPath, \"\");\n\tcamp_exit_with_error($silent ? \"\" : array(\"Unable to create temporary archive.\", $adviceOnError));\n}\n\nif (!$silent) {\n\techo \"done.\\n\";\n}\n\nif (!$silent) {\n\techo \" * Cleaning up...\";\n\tflush_output($flush);\n}\ncamp_remove_dir($backupDirFullPath, \"Unable to remove temporary directory $backupDirFullPath\");\nif (!$silent) {\n\techo \"done.\\n\";\n}\n\nif (!$silent) {\n\techo \"\\nBackup saved to file:\\n  $backupDirFullPath.tar.gz\\n\\n\";\n}\n"
  },
  {
    "path": "newscoop/bin/newscoop-indexer",
    "content": "#!/usr/bin/env php\n<?php\nsystem(__DIR__ . '/../application/console newscoop:indexer:run');\n"
  },
  {
    "path": "newscoop/bin/newscoop-restore",
    "content": "#!/usr/bin/env php\n<?php\n\nuse Symfony\\Component\\Filesystem\\Filesystem;\nuse Newscoop\\Services\\FilesystemService;\nuse Symfony\\Component\\Process\\Process;\nuse Symfony\\Component\\Process\\PhpExecutableFinder;\n\nrequire_once dirname(__FILE__) . '/newscoop_bootstrap.php';\nrequire_once $CAMPSITE_DIR . '/classes/CampPlugin.php';\n\nif( isset($GLOBAL['argv']) && !is_array($GLOBALS['argv']) && empty($options)) {\n    echo \"Can't read command line arguments\\n\";\n    exit(1);\n}\n\nrequire_once(\"cli_script_lib.php\");\n\n$ETC_DIR = $CAMPSITE_DIR . '/conf';\n// fill in HTTP_HOST to avoid notices in campsite_constants.php\n$_SERVER['HTTP_HOST'] = '';\n\nif (empty($options)) {\n    $options = getopt(\"d:b:t:efc:slh\");\n    $flush = false;\n} else {\n    $flush = true;\n}\n\n// prevent flush to fix conflict with zend session\n$flush = false;\n\n// define the cleanup function\nfunction __exit_cleanup()\n{\n    global $tempDirName;\n\n    if (!empty($tempDirName)) {\n        camp_remove_dir($tempDirName);\n    }\n}\n\n\necho \"\\nNewscoop Restore Utility\\n\";\necho \"------------------------\\n\";\nflush_output($flush);\n$usage =\n\"  Usage:\n  newscoop-restore -b <backup_file> [-t <destination_database_name>] \\\n                   [-e] [-f] [-c <charset>]|[-s]\n  newscoop-restore -l\n  newscoop-restore -h\n\n  This script will replace existing data installation with that in the\n  backup file.  You must run this script from a directory that you\n  have write access to because this script needs to create a temporary\n  directory.  Note that your backup database and files will automatically\n  be upgraded if they are older than the currently installed version\n  of Newscoop.\n\n  Note: For multiple installations of Newscoop on a single server, you\n  must run this script from the installation directory where you want to\n  restore the data.  For example, if you have installed Newscoop\n  in two locations: /var/www/ns1 and /var/www/ns2, and you want to\n  restore the data for the 'foo' installation, you must run\n  /var/www/ns1/bin/newscoop-restore,\n  and NOT /var/www/ns2/bin/newscoop-restore.\n\n  Parameters:\n    -b <backup_file>\n        The tarball created by the 'newscoop-backup' script.\n        Give the full or relative path to the file.\n\n    [-t <destination_database_name>]\n        If this is specified, the script will use the database name\n        specified instead of the one specified in the backup file.\n        This is useful for site-to-site transfer of a website, that is,\n        moving your website from one server to another.\n\n    [-e]\n        Use the existing configuration files instead of the ones in the\n        backup file. In other words, the existing config files in the\n        current installation will not be replaced. This parameter takes\n        precedence over -t parameter. E.g.: the database name will be\n        read from the existing database configuration file, not from the\n        -t option.\n\n    [-c <charset>]\n        Convert the database data from <charset> to UTF-8.\n\n    [-s]\n        Convert the database data from the database server character set\n        to UTF-8.\n\n    [-l]\n        List all available charsets and exit.\n\n    [-f]\n        Dont prompt, assume 'yes' to questions.\n\n    [-h]\n        Show this help and exit.\n\n  See also:\n      newscoop-backup\n\n\";\n\n// display help if -h parameter was supplied\nif (isset($options['h'])) {\n    echo $usage;\n    exit(0);\n}\n\n// initialize options variables from command line parameters\n$archive_file = isset($options['b']) ? $options['b'] : null;\n$useExistingConfig = isset($options['e']);\n$doPrompt = !isset($options['f']);\n$destDbSpecified = isset($options['t']);\n$destDbName = isset($options['t']) ? $options['t'] : \"\";\n$convertToUTF = isset($options['c']) || isset($options['s']);\n\n// verify if the command line parameters were valid\nif ((empty($archive_file) && !in_array('l', array_keys($options))) || ($destDbSpecified && empty($destDbName))\n|| (isset($options['c']) && empty($options['c']))) {\n    echo $usage;\n    camp_exit_with_error(\"Invalid parameters; please read the usage description above.\");\n}\n\n\n// include the utils library\nrequire_once(\"cli_script_lib.php\");\n\n// include the install configuration script\nif (!FilesystemService::isReadable(\"$ETC_DIR/install_conf.php\")) {\n    camp_exit_with_error(\"Unable to read the install configuration file!\");\n}\n// include install configuration file\nrequire_once(\"$ETC_DIR/install_conf.php\");\n\nif ($useExistingConfig || isset($options['l'])) {\n    if (!file_exists($ETC_DIR.'/database_conf.php')) {\n        echo \"ERROR! File 'database_conf.php' does not exist. Is Newscoop installed?\\n\\n\";\n        exit(1);\n    }\n    if (!is_writable($ETC_DIR.'/database_conf.php')) {\n        echo \"ERROR! File 'database_conf.php' is not writable by this script.\\n\\n\";\n        exit(1);\n    }\n}\n\n\n// display the list of available character sets if the option -l was supplied\nif (isset($options['l'])) {\n    require_once(\"$ETC_DIR/database_conf.php\");\n    camp_connect_to_database();\n    echo \"The list of available charsets:\\n\";\n    $charsetsList = camp_get_all_charsets();\n    foreach ($charsetsList as $charsetName=>$charsetDescription) {\n        echo \"- $charsetName: $charsetDescription\\n\";\n    }\n    exit(0);\n}\n\n\nif (!file_exists($archive_file)) {\n    camp_exit_with_error(\"The backup file you specified does not exist.\");\n}\n\nif (!is_writable(getcwd())) {\n    camp_exit_with_error(\"You do not have permissions to the currect directory.\");\n}\n\n// If convert to UTF-8 verify if the source character set was valid.\nif ($convertToUTF) {\n    require_once(\"$ETC_DIR/database_conf.php\");\n    camp_connect_to_database();\n    $fromCharset = isset($options['c']) ? $options['c'] : camp_get_server_charset();\n    if (!camp_valid_charset($fromCharset)) {\n        camp_exit_with_error(\"Invalid charset '$fromCharset'!\");\n    }\n    if ($doPrompt) {\n        echo \"\\nWARNING! The conversion to UTF-8 may break your database content!\\n\";\n        echo \"If you broke your database content it can not be recovered unless\\n\";\n        echo \"you restore the database from a backup!\\n\\n\";\n        echo \"Do you want to continue the conversion now? (y/N): \";\n        if (strtolower(trim(camp_readline())) != 'y') {\n            echo \"Restore operation aborted by the user!\\n\";\n            exit(1);\n        }\n    }\n    mysql_close();\n}\n\n\n/*\n * Start the restore operation.\n */\n\n$adviceOnError = \"Please run this script as '\" . $Campsite['APACHE_USER'] . \"' or as 'root'.\";\n\n//\n// Get the name of the directory that will be untarred.\n//\necho \" * Initializing...\\n\";\nflush_output($flush);\n$archiveExtension = pathinfo($archive_file, PATHINFO_EXTENSION);\nif ($archiveExtension == \"gz\") {\n    $tarGzOption = \"z\";\n} else {\n    $tarGzOption = \"\";\n}\n\n$backupDir = $Campsite['CAMPSITE_DIR'] . DIR_SEP . 'backup' . DIR_SEP;\n$tarDirOption = ' -C ' . escapeshellarg($backupDir);\n\n$isNewBackupFormat = true;\n$cmd = \"tar tf$tarGzOption \" . escapeshellarg($archive_file).\" | grep sql\";\nexec($cmd, $output);\nif (count($output) == 0) {\n    $isNewBackupFormat = false;\n    $cmd = \"tar tf$tarGzOption \" . escapeshellarg($archive_file);\n    exec($cmd, $output);\n    if (count($output) == 0) {\n        camp_exit_with_error(\"Invalid backup file.\");\n    }\n    echo \"   * Old backup file detected (pre-2.6.0)\\n\";\n}\n$output = array_pop($output);\nif ($isNewBackupFormat) {\n    $parts = preg_split('/\\//', $output);\n    $tempDirName = array_shift($parts);\n} else {\n    $tempDirName = \"backup-temp-\".date(\"Y-m-d-H-i-s\");\n}\n\n// having the tmp directory inside the backup directory\n$tempDirName = $backupDir . $tempDirName;\n\necho \"   * Temp directory: $tempDirName\\n\";\necho \"   * Initialization done.\\n\";\nflush_output($flush);\nif (file_exists($tempDirName)) {\n    echo \"\\nThis script needs to create a temporary directory named '$tempDirName',\\n\";\n    echo \"but the directory already exists.  Please delete the existing directory or move it out of the way.\\n\\n\";\n    exit(1);\n}\n\n//\n// Untar the backup\n//\necho \" * Extracting files into temp directory...\";\nflush_output($flush);\nif ($isNewBackupFormat) {\n    $cmd = \"tar xf$tarGzOption \" . escapeshellarg($archive_file) . $tarDirOption;\n    camp_exec_command($cmd, $adviceOnError);\n} else {\n    $filesystem = new Filesystem();\n    $filesystem->mkdir($tempDirName);\n\n    $currentDir = getcwd();\n    chdir($tempDirName);\n    $cmd = \"tar xf$tarGzOption \" . escapeshellarg(\"../\".$archive_file) . \" &> /dev/null\";\n    camp_exec_command($cmd, $adviceOnError);\n    chdir($currentDir);\n}\n\nif (!file_exists($tempDirName)) {\n    echo \"ERROR! Could not extract archive.\\n\\n\";\n    exit(1);\n}\n\n//\n// Get the original database name from the extracted files.\n//\n$database_dump_file = glob(\"$tempDirName/*-database*\");\nif (sizeof($database_dump_file) != 1) {\n    camp_exit_with_error(\"Archive $archive_file is invalid.\");\n}\n$db_file_name = basename($database_dump_file[0]);\n$origDbName = substr($db_file_name, 0, strrpos($db_file_name, '-'));\n\n\n// If old backup format, extract the tar files inside the tar file.\nif (!$isNewBackupFormat) {\n    $packages = glob(\"$tempDirName/$origInstanceName-*.tar.gz\");\n    foreach ($packages as $index => $package) {\n        $package_name = basename($package);\n        if ($package == \"\") {\n            continue;\n        }\n        $currentDir = getcwd();\n        chdir($tempDirName);\n        camp_exec_command(\"tar xzf \" . escapeshellarg($package_name), $adviceOnError);\n        chdir($currentDir);\n    }\n}\necho \"done.\\n\";\nflush_output($flush);\n\n//\n// Get the version from the backup archive.\n//\n$backup_version_file = glob(\"$tempDirName/BACKUP-VERSION*\");\nif (sizeof($backup_version_file) != 1) {\n    camp_exit_with_error(\"Archive $archive_file is invalid.\");\n}\n$bversion_file_name = basename($backup_version_file[0]);\n$backupVersion = (int)substr($bversion_file_name, strlen('BACKUP-VERSION-'), 1);\n\nif ($useExistingConfig) {\n    $includeFile = \"$ETC_DIR/database_conf.php\";\n} else {\n    if ($backupVersion < 3) {\n        $includeFile = \"$tempDirName/$origDbName/database_conf.php\";\n    } else {\n        $includeFile = \"$tempDirName/conf/database_conf.php\";\n    }\n}\n\n// Check if the database configuration file exists.\nif (!file_exists($includeFile)) {\n    echo \"\\nThe database configuration file '$includeFile' does not exist.\\n\";\n    echo \"It is likely because Newscoop is not properly installed.\\n\";\n    echo \"Please run the Web installer and try restoring from the backup after that.\\n\\n\";\n    echo \" * Cleaning up...\";\n    camp_remove_dir($tempDirName);\n    echo \"done.\\n\\n\";\n    exit(1);\n}\n\n\n// Check if configuration file is readable.\nif (!FilesystemService::isReadable($includeFile)) {\n    echo \" * Cleaning up...\";\n    camp_remove_dir($tempDirName);\n    echo \"done.\\n\\n\";\n    exit(1);\n}\nrequire($includeFile);\n\nif ($destDbSpecified) {\n    $Campsite['DATABASE_NAME'] = $destDbName;\n} elseif ($useExistingConfig) {\n    $destDbName = $Campsite['DATABASE_NAME'];\n} else {\n    $destDbName = $origDbName;\n}\ncamp_connect_to_database();\n\necho \" * Backup database name is '$origDbName'.\\n\";\necho \" * Destination database name (to be replaced) is '$destDbName'.\\n\";\nflush_output($flush);\n\n//\n// Restore the backup files\n//\nif ($backupVersion < 3) {\n    if (!camp_is_empty_dir(\"$tempDirName/look\")) {\n        $templatesSrcDir = \"$tempDirName/look\";\n        $packageTemplatesDirName = 'look';\n    } else {\n        $templatesSrcDir = null;\n    }\n    $configSrcDir = \"$tempDirName/$origDbName/database_conf.php\";\n} else {\n    $templatesSrcDir = \"$tempDirName/templates\";\n    $themesSrcDir = \"$tempDirName/themes\";\n    $packageTemplatesDirName = 'templates';\n    $packageThemesDirName = 'themes';\n    $configSrcDir = \"$tempDirName/conf/database_conf.php\";\n}\n\n$fileSrcDir = \"$tempDirName/files/.\";\n$imagesSrcDir = \"$tempDirName/images/.\";\n$videosSrcDir = \"$tempDirName/videos/.\";\n$pdfSrcDir = \"$tempDirName/pdf/.\";\n$configDestDir = $ETC_DIR;\n$filesDestDir = $CAMPSITE_DIR.'/public/files';\n$imagesDestDir = $CAMPSITE_DIR.'/images';\n$videosDestDir = $CAMPSITE_DIR.'/public/videos';\n$templatesDirName = 'templates'; // keep for gimme template upgrade\n$themesDirName = 'themes'; // keep for gimme theme upgrade\n$templatesDestDir = $CAMPSITE_DIR.'/'.$templatesDirName;\n$themesDestDir = $CAMPSITE_DIR.'/'.$themesDirName;\n$compiledTemplatesDir = $CAMPSITE_DIR.'/cache';\n$pdfDir = $CAMPSITE_DIR.'/public/pdf';\n$destination = $CAMPSITE_DIR . '/public';\n\n$destDirs = array(\"$CAMPSITE_DIR/themes\", $imagesDestDir, $filesDestDir,\n    $compiledTemplatesDir, $pdfDir, $videosDestDir);\n\nforeach ($destDirs as $dir) {\n    if (!file_exists($dir)) {\n        echo \"ERROR! Directory $dir does not exist. Is Newscoop installed?\\n\\n\";\n        exit(1);\n    }\n    if (!is_writable($dir)) {\n        echo \"ERROR! Directory $dir is not writable by this script.\\n\\n\";\n        exit(1);\n    }\n}\n\nif ($doPrompt) {\n    // Clear out all files currently residing in these directories\n    echo \"\\n All files in the following directories will be deleted.\\n\";\n    echo \" (The backup files will be copied to these locations)\\n\";\n    foreach ($destDirs as $dir) {\n        echo \"    \".$dir.\"\\n\";\n    }\n    $answer = \"dummy_value\";\n    while (!in_array($answer, array('y','n', ''))) {\n        echo \" Are you sure you want to continue? (y/N) \";\n        $answer = camp_readline();\n        $answer = strtolower(trim($answer));\n    }\n    if ($answer == 'n' || $answer == '') {\n        echo \"\\n Restore cancelled.\\n\";\n        echo \" * Cleaning up...\";\n        flush_output($flush);\n        camp_remove_dir($tempDirName);\n        echo \"done.\\n\\n\";\n        exit(0);\n    }\n}\n\n//\n// Remove all existing files...\n//\nforeach ($destDirs as $dir) {\n    echo \" * Removing files in \" . realpath($dir) . \"...\";\n    flush_output($flush);\n    if ($dir == $templatesDestDir) {\n        camp_remove_dir($dir.\"/*\", '', array('system_templates'));\n    } else if ($dir == $themesDestDir) {\n        camp_remove_dir($dir.\"/*\", '', array('system_templates'));\n    } else {\n        camp_remove_dir($dir.\"/*\");\n    }\n    echo \"done.\\n\";\n}\n\n\necho \" * Recreating cache...\";\n$env = 'prod';\nif (defined('APPLICATION_ENV') && (APPLICATION_ENV === 'development' || APPLICATION_ENV === 'dev')) {\n    $env = 'dev';\n}\n\n$newscoopConsole = escapeshellarg(__DIR__ . '/../application/console');\n$phpFinder = new PhpExecutableFinder();\n$phpPath = $phpFinder->find();\nif (!$phpPath) {\n    throw new \\RuntimeException('The php executable could not be found, add it to your PATH environment variable and try again');\n}\n\n$php = escapeshellarg($phpPath);\n$process = new Process(\"$php $newscoopConsole cache:clear --no-optional-warmers --env=$env\");\n$process->run();\nif (!$process->isSuccessful()) {\n    throw new \\RuntimeException($process->getErrorOutput());\n}\necho \"done.\\n\";\n\n//\n// Restore files from backup...\n//\nif (is_dir($templatesSrcDir)) {\n    echo \" * Restoring templates...\";\n    flush_output($flush);\n    if (!is_null($templatesSrcDir)) {\n        camp_copy_files($templatesSrcDir, $CAMPSITE_DIR);\n        if ($packageTemplatesDirName != $templatesDirName) {\n            camp_remove_dir($templatesDestDir);\n            rename($CAMPSITE_DIR.'/'.$packageTemplatesDirName, $templatesDestDir);\n        }\n    }\n    echo \"done.\\n\";\n}\n\necho \" * Restoring themes...\";\nflush_output($flush);\nif (!is_null($themesSrcDir) && file_exists($themesSrcDir)) {\n    camp_copy_files($themesSrcDir, $CAMPSITE_DIR);\n    if ($packageThemesDirName != $themesDirName) {\n        camp_remove_dir($themesDestDir);\n        rename($CAMPSITE_DIR.'/'.$packageThemesDirName, $themesDestDir);\n    }\n}\necho \"done.\\n\";\n\necho \" * Restoring images...\";\nflush_output($flush);\nif (is_dir($imagesSrcDir)) {\n    camp_copy_files($imagesSrcDir, $imagesDestDir);\n}\necho \"done.\\n\";\n\necho \" * Restoring videos...\";\nflush_output($flush);\nif (is_dir($videosSrcDir)) {\n    camp_copy_files($videosSrcDir, $videosDestDir);\n}\necho \"done.\\n\";\n\necho \" * Restoring file attachments...\";\nflush_output($flush);\nif (is_dir($fileSrcDir)) {\n    camp_copy_files($fileSrcDir, $filesDestDir);\n}\necho \"done.\\n\";\n//flush_output($flush);\n\necho \" * Restoring PDFs...\";\nflush_output($flush);\nif (is_dir($pdfSrcDir)) {\n    camp_copy_files($pdfSrcDir, $pdfDir);\n}\n\necho \"done.\\n\";\nflush_output($flush);\n\nif (!$useExistingConfig) {\n    if ($backupVersion < 3) {\n        echo \" * Restoring configuration...\";\n        $configFile = @file_get_contents(\"$ETC_DIR/database_conf.php\");\n        $newConfigFile = camp_migrate_config_file($configFile);\n        @file_put_contents(\"$ETC_DIR/database_conf.php\", $newConfigFile);\n    } else {\n        camp_copy_files($configSrcDir, $CAMPSITE_DIR);\n    }\n    echo \"done.\\n\";\n}\n\n//\n// Converting template files if necessary\n//\nif ($backupVersion < 3) {\n    echo \" * Converting templates from 2.x versions...\";\n    flush_output($flush);\n    require_once($CAMPSITE_DIR.'/classes/TemplateConverter.php');\n    $template_files = camp_read_files($CAMPSITE_DIR.'/templates');\n    $converter = new TemplateConverter();\n    foreach($template_files as $template_file) {\n        $converter->read($template_file);\n        $converter->parse();\n        $converter->write();\n    }\n    echo \"done.\\n\";\n}\n\n//\n// Restore the database...\n//\necho \" * Restoring the database $destDbName...\";\nflush_output($flush);\nif (camp_database_exists($destDbName)) {\n    camp_clean_database($destDbName);\n} else {\n    if (!mysql_query(\"CREATE DATABASE `$destDbName` CHARACTER SET utf8\")) {\n        camp_exit_with_error(\"Can't create database $destDbName\");\n    }\n}\n\n$sqlFile = \"$tempDirName/$origDbName-database.sql\";\ncamp_restore_database($sqlFile);\n$cmd = \"mysql -u \" . $Campsite['DATABASE_USER'] . \" --host=\"\n    . $Campsite['DATABASE_SERVER_ADDRESS'] . \" --port=\"\n    . $Campsite['DATABASE_SERVER_PORT']\n    . ' --default-character-set=utf8';\necho \"done.\\n\";\nflush_output($flush);\n\n// If database version is minor than 2.6.0 we do nothing but exit the\n// script as we only care about upgrading newer Newscoops.\ncamp_detect_database_version($destDbName, $dbVersion);\n\nif ($dbVersion < '2.6.0') {\n    echo \"\\n You must upgrade to Newscoop 2.6 or 2.7 first, after that\";\n    echo \"\\n run this script again to upgrade to 3.0.\\n\\n\";\n    echo \" * Cleaning up...\";\n    camp_clean_database($destDbName);\n    @mysql_query(\"DROP DATABASE `$destDbName`\");\n    camp_remove_dir($tempDirName);\n    echo \"done.\\n\\n\";\n    exit(1);\n}\n\n// Upgrade the database\necho \" * Upgrading the database (if necessary)...\";\nflush_output($flush);\n$res = camp_upgrade_database($destDbName);\nif ($res !== 0) {\n    camp_exit_with_error($res);\n}\n\n// replace $campsite by $gimme\necho \" * Upgrading templates...\";\nflush_output($flush);\nrequire_once($CAMPSITE_DIR.'/classes/TemplateConverterNewscoop.php');\n$template_files = camp_read_files($CAMPSITE_DIR.'/themes');\n$converter = new TemplateConverterNewscoop();\nforeach($template_files as $template_file) {\n    $converter->read($template_file);\n    $converter->parse();\n    $converter->write();\n}\necho \"done.\\n\";\n\n//if( $res === 0 )\n//{\n\n\tif ($convertToUTF) {\n\t    echo \" * Converting the database from '$fromCharset' to 'UTF-8'...\\n\";\n\n\t    $dumpFile = \"$tempDirName/$destDbName-database-$fromCharset.sql\";\n\t    if (camp_backup_database($destDbName, $dumpFile, $output,\n\t    array(\"--default-character-set=$fromCharset\")) != 0) {\n\t        camp_exit_with_error(\"Unable to backup the database $destDbName\\n\"\n\t        . implode(\"\\n\", $output));\n\t    }\n\t    $outDumpFile = \"$tempDirName/$destDbName-database-utf8.sql\";\n\t    camp_change_dump_encoding($dumpFile, $outDumpFile, $fromCharset);\n\t    camp_restore_database($outDumpFile);\n\t    unlink($dumpFile);\n\t    unlink($outDumpFile);\n\n\t    echo \"   done.\\n\";\n\t}\n//}\n\n// upgrade plugins\necho \" * Updating plugins (if necessary)...\";\n@CampPlugin::OnUpgrade();\n@CampPlugin::OnAfterUpgrade();\necho \"   done.\\n\";\n\n//\n// Remove the temp dir.\n//\necho \" * Cleaning up...\";\nflush_output($flush);\ncamp_remove_dir($tempDirName);\n\n$file = $CAMPSITE_DIR . '/system_preferences.php';\nif (file_exists($file)) {\n    unlink($file);\n}\n\necho \"done.\\n\\n\";\n\nif ($useExistingConfig || $destDbSpecified) {\n    echo\n\"Note: If you are doing a site-to-site transfer you may have to fix the\naliases in your publications before the frontend will work.  An alias\nis the base URL for your publication. To change an alias, login to the\nadministration interface and go to the publication configure screen.\\n\\n\";\n}\necho \"IMPORTANT!\\n\";\necho \"You must restart the apache server for the changes to take effect!\\n\";\n\n"
  },
  {
    "path": "newscoop/bin/newscoop-statistics",
    "content": "#!/usr/bin/env php\n<?php\nsystem(__DIR__ . '/../application/console newscoop:statistics:clean-old');\n"
  },
  {
    "path": "newscoop/bin/newscoop-stats",
    "content": "#!/usr/bin/env php\n<?php\nsystem(__DIR__ . '/../application/console newscoop:stats:send');\n"
  },
  {
    "path": "newscoop/bin/newscoop-utf8-converter",
    "content": "#!/usr/bin/env php\n<?php\n\nuse Newscoop\\Services\\FilesystemService;\n\nif (!is_array($GLOBALS['argv'])) {\n    echo \"\\n\";\n    echo \"Can't read command line arguments\\n\";\n    echo \"\\n\";\n    exit(1);\n}\n\nrequire_once dirname(__FILE__) . '/newscoop_bootstrap.php';\n\n$ETC_DIR = $CAMPSITE_DIR . '/conf';\n\nrequire_once(\"cli_script_lib.php\");\n\nif (!FilesystemService::isReadable(\"$ETC_DIR/install_conf.php\")) {\n    exit(1);\n}\n\n// include install_conf.php file\nrequire_once(\"$ETC_DIR/install_conf.php\");\n\n$usage =\n\"  Usage:\n  newscoop-utf8-converter [--help] [--log] [--silent] [--force] \\\n                          --charset=[from_charset]|--default_charset\n\n  This script will convert all of your website character and text\n  data in database to utf8 character set.\n\n  Parameters:\n    --help\n        Show this help and exit.\n\n    --log=LOG_FILE\n        Records the sql queries in the specified file.\n\n    --silent\n        Don't display any messages on success.\n\n    --force\n        Dont prompt, assume 'yes' to questions.\n\n    --charset=[from_charset]\n        Specify the character set from which to convert to UTF8.\n\n    --default-charset\n        Convert from the database server character set to UTF8.\n\n    --list-charsets\n        List all available charsets and exit.\n\n  See also:\n      newscoop-backup\n      newscoop-restore\n\n\";\n\n\n$silent = false;\n$force = false;\n$listCharsets = false;\n$charset = null;\n$useDefaultCharset = false;\n\n// gets the arguments from command line, if any\nfor ($i = 1; isset($GLOBALS['argv'][$i]); $i++) {\n    $option = explode('=', $GLOBALS['argv'][$i]);\n    switch ($option[0]) {\n        case '--log':\n            $log_file = !empty($option[1]) ? rtrim($option[1], '/') : '';\n            if (empty($log_file)) {\n                echo \"Error: Log file not specified!\\n\\n\";\n                echo $usage;\n                exit(1);\n            }\n            break;\n        case '--silent':\n            $silent = true;\n            break;\n        case '--force':\n            $force = true;\n            break;\n        case '--charset':\n            $charset = $option[1];\n            break;\n        case '--default-charset':\n            $useDefaultCharset = true;\n            break;\n        case '--list-charsets':\n            $listCharsets = true;\n            break;\n        case '--help':\n            echo $usage;\n            exit(0);\n        default:\n            echo \"Error: Invalid option '\" . $option[0] . \"'!\\n\\n\";\n            echo $usage;\n            exit(1);\n    }\n}\n\nif (!$silent) {\n    echo \"\\n\";\n    echo \"Newscoop UTF8 Converter Utility\\n\";\n    echo \"-------------------------------\\n\";\n}\n\nif (!is_file(\"$ETC_DIR/database_conf.php\")) {\n    if (!$silent) {\n        camp_exit_with_error(\"Database configuration file is missing!\");\n    }\n    exit(1);\n}\nrequire_once(\"$ETC_DIR/database_conf.php\");\ncamp_connect_to_database();\n\nif ($listCharsets) {\n    echo \"The list of available charsets:\\n\";\n    $charsetsList = camp_get_all_charsets();\n    foreach ($charsetsList as $charsetName=>$charsetDescription) {\n        echo \"- $charsetName: $charsetDescription\\n\";\n    }\n    exit(0);\n}\n\nif ($useDefaultCharset) {\n    $charset = camp_get_server_charset();\n}\nif (empty($charset)) {\n    if (!$silent) {\n        camp_exit_with_error('Please specify the charset!');\n    }\n    exit(1);\n}\nif (!camp_valid_charset($charset)) {\n    if (!$silent) {\n        camp_exit_with_error(\"Invalid charset '$charset'!\");\n    }\n    exit(1);\n}\n\nif (!$force) {\n    if ($silent) {\n        exit(1);\n    }\n    echo \"\\nWARNING! The conversion to UTF-8 may break your database content!\\n\";\n    echo \"If you broke your database content it can not be recovered unless\\n\";\n    echo \"you restore the database from a backup!\\n\\n\";\n    echo \"It is strongly recommended that you back up your Newscoop instance\\n\";\n    echo \"before performing the conversion!\\n\\n\";\n    echo \"Do you want to continue the conversion now? (y/N): \";\n    if (strtolower(trim(camp_readline())) != 'y') {\n        echo \"Conversion aborted by the user!\\n\";\n        exit(1);\n    }\n}\n\nif (empty($ETC_DIR)) {\n    if (!$silent) {\n        echo $usage;\n    }\n    exit(1);\n}\n\nif (!$silent) {\n    echo \"UTF8 Converter script version: \".$Campsite[\"VERSION\"].\"\\n\";\n    echo \"Converting the database from '$charset' to 'UTF-8'...\\n\";\n}\n\n$dumpFile = $Campsite['DATABASE_NAME'].\"-database-$charset.sql\";\ncamp_backup_database($Campsite['DATABASE_NAME'], $dumpFile, $output,\n                     array(\"--default-character-set=$charset\"));\n$outDumpFile = $Campsite['DATABASE_NAME'].'-database-utf8.sql';\ncamp_change_dump_encoding($dumpFile, $outDumpFile, $charset);\ncamp_restore_database($outDumpFile, $silent);\n$skipped = array();\n$res = camp_utf8_convert(null, $skipped);\nif ($res !== true) {\n    camp_exit_with_error($res);\n}\nunlink($dumpFile);\nunlink($outDumpFile);\n\nif (!$silent && count($skipped) > 0) {\n    echo \"\nEncountered non-critical errors while converting data to UTF-8 encoding!\nThe following database queries were unsuccessful because after conversion\ntext values become case insensitive. Words written in different case were\nunique before the conversion; after the conversion they are identical,\nbreaking some constraints in the database.\n\nThe upgrade script can not fix these issues automatically!\n\nYou can continue to use the data as is and manually fix these issues\nlater. The table fields that were not converted will not support case\ninsensitive searches.\n\nPlease save the following list of skipped queries:\\n\";\n    foreach ($skipped as $query) {\n        echo \"$query;\\n\";\n    }\n    echo \"-- end of queries list --\\n\";\n}\n\nif (!$silent) {\n    echo \"done.\\n\\n\";\n    echo \"IMPORTANT!\\n\";\n    echo \"You must restart the apache server for the changes to take effect!\\n\";\n}\n\nexit(0);\n\n"
  },
  {
    "path": "newscoop/bin/newscoop_bootstrap.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nif (empty($options)) {\n    register_shutdown_function('ns_cli_shutdown');\n}\nelse {\n    if (!in_array('--keep-session', $options, true)) {\n        register_shutdown_function('ns_cli_shutdown');\n    }\n}\n\nif (!defined('APPLICATION_PATH')) {\n    ob_start();\n    require_once __DIR__ . '/../application.php';\n    $req = ob_get_clean();\n}\n\n// check if script is included\nif (!empty($GLOBALS['g_campsiteDir'])) {\n    $CAMPSITE_DIR = $GLOBALS['g_campsiteDir'];\n    if (!defined('WWW_DIR')) {\n        define('WWW_DIR', $GLOBALS['g_campsiteDir']);\n    }\n    return;\n}\n\n// set\nset_document_root();\n\n\n/**\n * Set document root\n * @return void\n */\nfunction set_document_root()\n{\n    global $CAMPSITE_DIR;\n\n    // get document root via -d switch\n    $document_root = dirname(dirname(__FILE__));\n    for ($i = 1; $i < $_SERVER['argc'] - 1; $i++) {\n        if ($_SERVER['argv'][$i] == '-d') {\n            $document_root = $_SERVER['argv'][$i + 1];\n            break;\n        }\n    }\n\n    // check if document_root exists\n    if (!is_dir($document_root)) {\n        $file = basename($_SERVER['argv'][0]);\n        echo \"$file error: Directory '$document_root' does not exist.\\n\";\n        echo \"Please provide valid Newscoop document_root path via: $file -d path\\n\";\n        exit(1);\n    }\n\n    // set global variables, constants\n    $GLOBALS['g_campsiteDir'] = $CAMPSITE_DIR = realpath($document_root);\n    if (!defined('WWW_DIR')) {\n        define('WWW_DIR', $GLOBALS['g_campsiteDir']);\n    }\n}\n\nfunction ns_cli_shutdown()\n{\n    $sessionId = session_id();\n    if (!empty($sessionId)) {\n        session_destroy();\n    }\n}\n\n"
  },
  {
    "path": "newscoop/bin/post-install.sh",
    "content": "#!/bin/sh\necho 'Setting directory modes'\nchmod -R 777 cache/\nchmod 777 public/videos/\nchmod 777 .\nchmod 777 conf/\nchmod -R 777 themes/\nchmod 777 plugins/\nchmod 777 backup/\nchmod 777 images/\nchmod 777 images/thumbnails/\nchmod 777 public/files/\nchmod 777 log/\nchmod 777 library/Proxy\n"
  },
  {
    "path": "newscoop/bin/subscription-notifier",
    "content": "#!/usr/bin/env php\n<?php\nsystem(__DIR__ . '/../application/console newscoop:notifier:subscriptions');\n"
  },
  {
    "path": "newscoop/bin/webcode_generate_all.sh",
    "content": "#!/bin/sh\n\necho \"Clears all webcodes first, then generates webcodes for all articles with autorestart on errors.\"\necho \"Starting in 5 seconds. Press ^C to cancel.\"\n\nsleep 5\n\nphp application/console webcode:generate --only-clear\n\nuntil php application/console webcode:generate; do\n    echo \"Webcode generation stopped on error with code $?. Automatically restarting...\" >&2\n    sleep 2\ndone\n\necho \"Webcode generation done.\"\n\nexit 0\n"
  },
  {
    "path": "newscoop/cache/.gitignore",
    "content": "*\n\n!.gitignore\n!.htaccess"
  },
  {
    "path": "newscoop/cache/.htaccess",
    "content": "Deny from all\n"
  },
  {
    "path": "newscoop/classes/Alias.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbObjectArray.php');\n\n/**\n * @package Campsite\n */\nclass Alias extends DatabaseObject {\n\tvar $m_dbTableName = 'Aliases';\n\tvar $m_keyColumnNames = array('Id');\n\tvar $m_keyIsAutoIncrement = true;\n\tvar $m_columnNames = array('Id', 'Name', 'IdPublication');\n\n\t/**\n\t * Constructor.\n\t * @param int $p_id\n\t */\n\tpublic function Alias($p_idOrName = null)\n\t{\n\t\tparent::DatabaseObject($this->m_columnNames);\n\t\tif (is_numeric($p_idOrName)) {\n    \t\t$this->m_data['Id'] = $p_idOrName;\n\t\t\t$this->fetch();\n\t\t} elseif (!empty($p_idOrName)) {\n\t\t\t$this->m_keyColumnNames = array('Name');\n\t\t\t$this->m_data['Name'] = $p_idOrName;\n\t\t\t$this->fetch();\n\t\t\t$this->m_keyColumnNames = array('Id');\n\t\t}\n\t} // constructor\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getId()\n\t{\n\t\treturn $this->m_data['Id'];\n\t} // fn getId\n\n\n\t/**\n\t * @return string\n\t */\n\tpublic function getName()\n\t{\n\t\treturn $this->m_data['Name'];\n\t} // fn getName\n\n\n\t/**\n\t * Wrapper around DatabaseObject::setProperty\n\t *\n\t * @see classes/DatabaseObject#setProperty($p_dbColumnName, $p_value, $p_commit, $p_isSql)\n\t */\n    public function setProperty($p_dbColumnName, $p_value, $p_commit = true, $p_isSql = false)\n    {\n        if ($p_dbColumnName == 'Name') {\n            $this->m_keyColumnNames = array('Name');\n            $this->resetCache();\n            $this->m_keyColumnNames = array('Id');\n        }\n        return parent::setProperty($p_dbColumnName, $p_value);\n    } // fn setProperty\n\n\n\t/**\n\t *\n\t */\n\tpublic function setName($p_name)\n\t{\n\t    return $this->setProperty('Name', $p_name);\n\t} // fn setName\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getPublicationId()\n\t{\n\t\treturn $this->m_data['IdPublication'];\n\t} // fn getPublicationId\n\n\n\t/**\n\t * @param int $p_value\n\t * @return boolean\n\t */\n\tpublic function setPublicationId($p_value)\n\t{\n\t\treturn $this->setProperty('IdPublication', $p_value);\n\t} // fn setPublicationId\n\n\n\t/**\n\t * Get all the aliases that match the given criteria.\n\t *\n\t * @param int $p_id\n\t * @param int $p_publicationId\n\t * @param string $p_name\n\t * @return array\n\t */\n\tpublic static function GetAliases($p_id = null, $p_publicationId = null, $p_name = null)\n\t{\n\t\t$contraints = array();\n\t\tif (!is_null($p_publicationId)) {\n\t\t\t$contraints[] = array(\"IdPublication\", $p_publicationId);\n\t\t}\n\t\tif (!is_null($p_name)) {\n\t\t\t$contraints[] = array(\"Name\", $p_name);\n\t\t}\n\t\tif (!is_null($p_id)) {\n\t\t\t$contraints[] = array(\"Id\", $p_id);\n\t\t}\n\t\treturn DatabaseObject::Search('Alias', $contraints);\n\t} // fn GetAliases\n\n} // class Alias\n\n?>"
  },
  {
    "path": "newscoop/classes/Article.php",
    "content": "<?php\n/**\n * @package Newscoop\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbObjectArray.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleData.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/CampCacheList.php');\n\n/**\n * @package Campsite\n */\nclass Article extends DatabaseObject\n{\n    /**\n     * The column names used for the primary key.\n     * @var array\n     */\n    public $m_keyColumnNames = array('Number',\n                                  'IdLanguage');\n\n    public $m_dbTableName = 'Articles';\n\n    public $m_columnNames = array(\n        // int - Publication ID\n        'IdPublication',\n\n        // int -Issue ID\n        'NrIssue',\n\n        // int - Section ID\n        'NrSection',\n\n        // int - Article ID\n        'Number',\n\n        // int - Language ID,\n        'IdLanguage',\n\n        // string - Article Type\n        'Type',\n\n        // int - User ID of user who manages the article in Campsite\n        'IdUser',\n\n        // string - The title of the article.\n        'Name',\n\n        // string\n        // Whether the article is on the front page or not.\n          // This is represented as 'N' or 'Y'.\n        'OnFrontPage',\n\n        /**\n         * Whether or not the article is on the section or not.\n         * This is represented as 'N' or 'Y'.\n         * @var string\n         */\n        'OnSection',\n        'Published',\n        'PublishDate',\n        'UploadDate',\n        'Keywords',\n        'Public',\n        'IsIndexed',\n        'LockUser',\n        'LockTime',\n        'ShortName',\n        'ArticleOrder',\n        'comments_enabled',\n        'comments_locked',\n        'time_updated',\n        'object_id',\n        'rating_enabled',\n        'section_id',\n        'issue_id'\n    );\n\n    public $m_languageName = null;\n\n    public $m_cacheUpdate = false;\n\n    public $m_published;\n\n    private static $s_defaultOrder = array(array('field'=>'byPublication', 'dir'=>'ASC'),\n                                           array('field'=>'byIssue', 'dir'=>'DESC'),\n                                           array('field'=>'bySection', 'dir'=>'ASC'),\n                                           array('field'=>'bySectionOrder', 'dir'=>'ASC'));\n\n    private static $s_regularParameters = array('idpublication'=>'Articles.IdPublication',\n                                                'publication'=>'Articles.IdPublication',\n                                                'nrissue'=>'Articles.NrIssue',\n                                                'issue'=>'Articles.NrIssue',\n                                                'nrsection'=>'Articles.NrSection',\n                                                'section'=>'Articles.NrSection',\n                                                'idlanguage'=>'Articles.IdLanguage',\n                                                'name'=>'Articles.Name',\n                                                'number'=>'Articles.Number',\n                                                'upload_date'=>'DATE(Articles.UploadDate)',\n                                                'publish_date'=>'DATE(Articles.PublishDate)',\n                                                'publish_datetime' => 'Articles.PublishDate',\n                                                'type'=>'Articles.Type',\n                                                'keyword'=>'Articles.Keywords',\n                                                'onfrontpage'=>'Articles.OnFrontPage',\n                                                'onsection'=>'Articles.OnSection',\n                                                'public'=>'Articles.Public',\n                                                'published'=>'Articles.Published',\n                                                'workflow_status'=>'Articles.Published',\n                                                'issue_published'=>'Issues.Published',\n                                                'reads'=>'RequestObjects.request_count',\n                                                'iduser' => 'Articles.IdUser',\n                                            );\n\n    /**\n     * Construct by passing in the primary key to access the article in\n     * the database.\n     *\n     * @param int $p_languageId\n     * @param int $p_articleNumber\n     *                             Not required when creating an article.\n     */\n    public function Article($p_languageId = null, $p_articleNumber = null)\n    {\n        parent::__construct($this->m_columnNames);\n        $this->m_data['IdLanguage'] = $p_languageId;\n        $this->m_data['Number'] = $p_articleNumber;\n        if ($this->keyValuesExist()) {\n            $this->fetch();\n        }\n        $this->m_published = $this->isPublished();\n    } // constructor\n\n    /**\n     * On article update destructor calls the template cache update process.\n     */\n    public function __destruct()\n    {\n        if ($this->m_cacheUpdate && CampTemplateCache::factory()) {\n            CampTemplateCache::factory()->update(array(\n                'language' => $this->getLanguageId(),\n                'publication' => $this->getPublicationId(),\n                'issue' => $this->getIssueNumber(),\n                'section' => $this->getSectionNumber(),\n                'article' => $this->getArticleNumber(),\n            ), !($this->isPublished() || $this->m_published));\n        }\n    }\n\n    /**\n     * Set the given column name to the given value.\n     * The object's internal variable will also be updated.\n     * If the value hasnt changed, the database will not be updated.\n     * Note: You cannot set $p_commit to FALSE and $p_isSql to TRUE\n     * at the same time.\n     *\n     * @param string $p_dbColumnName\n     *                               The name of the column that is to be updated.\n     *\n     * @param string $p_value\n     *                        The value to set.\n     *\n     * @param boolean $p_commit\n     *                          If set to true, the value will be written to the database immediately.\n     *                          If set to false, the value will not be written to the database.\n     *                          Default is true.\n     *\n     * @param boolean $p_isSql\n     *                         Set this to TRUE if p_value consists of SQL commands.\n     *                         There is no way to know what the result of the command is,\n     *                         so we will need to refetch the value from the database in\n     *                         order to update the internal variable's value.\n     *\n     * @return boolean\n     *                 TRUE on success, FALSE on error.\n     */\n    public function setProperty($p_dbColumnName, $p_value, $p_commit = true, $p_isSql = false)\n    {\n        $ignoreFields = array('LockUser', 'LockTime', 'IsIndexed', 'time_updated');\n        if (!in_array($p_dbColumnName, $ignoreFields)) {\n            $this->m_cacheUpdate = true;\n        }\n        $status = parent::setProperty($p_dbColumnName, $p_value, $p_commit, $p_isSql);\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('article');\n\n        return $status;\n    }\n\n    /**\n     * Fetch a single record from the database for the given key.\n     *\n     * @param array $p_recordSet\n     *                           If the record has already been fetched and we just need to\n     *                           assign the data to the object's internal member variable.\n     *\n     * @return boolean\n     *                 TRUE on success, FALSE on failure\n     */\n    public function fetch($p_recordSet = null, $p_forceExists = false)\n    {\n        $res = parent::fetch($p_recordSet);\n        if ($this->exists()) {\n            settype($this->m_data['IdPublication'], 'integer');\n            settype($this->m_data['NrIssue'], 'integer');\n            settype($this->m_data['NrSection'], 'integer');\n            settype($this->m_data['IdLanguage'], 'integer');\n            settype($this->m_data['Number'], 'integer');\n            settype($this->m_data['IdUser'], 'integer');\n            settype($this->m_data['LockUser'], 'integer');\n            settype($this->m_data['ArticleOrder'], 'integer');\n        }\n\n        return $res;\n    }\n\n    /**\n     * Check if an article with the same name exists in the translation destination\n     *\n     * @param string $p_translation_title\n     *                                       the desired title for the translated article\n     * @param int    $p_translation_language\n     *                                       the id of the translation language\n     *\n     * @return boolean\n     *                 TRUE if an article with the same name exists, FALSE otherwise\n     */\n    public function translationTitleExists($p_translation_title, $p_translation_language)\n    {\n        global $g_ado_db;\n\n        $idPublication =  $this->m_data['IdPublication'];\n        $nrIssue = $this->m_data['NrIssue'];\n        $nrSection = $this->m_data['NrSection'];\n\n\n        $where = \" WHERE IdPublication = $idPublication AND NrIssue = $nrIssue\"\n                    . \" AND NrSection = $nrSection\"\n                    . \" AND IdLanguage = $p_translation_language\"\n                    . \" AND Name = '$p_translation_title'\";\n\n        $queryStr = \"SELECT Number FROM Articles$where\";\n\n        $articleNumber = $g_ado_db->GetOne($queryStr);\n\n        if ($articleNumber > 0) {\n            return true;\n        } else {\n            return false;\n        }\n    }\n\n\n    /**\n     * A way for internal functions to call the superclass create function.\n     * @param array $p_values\n     */\n    public function __create($p_values = null) { return parent::create($p_values); }\n\n\n    /**\n     * Create an article in the database.  Use the SET functions to\n     * change individual values.\n     *\n     * If you would like to \"place\" the article using the publication ID,\n     * issue number, and section number, you can only do so if all three\n     * of these parameters are present.  Otherwise, the article will remain\n      * unplaced.\n     *\n     * @param  string $p_articleType\n     * @param  string $p_name\n     * @param  int    $p_publicationId\n     * @param  int    $p_issueNumber\n     * @param  int    $p_sectionNumber\n     * @return void\n     */\n    public function create($p_articleType = null, $p_name = null, $p_publicationId = null, $p_issueNumber = null, $p_sectionNumber = null)\n    {\n        global $g_ado_db;\n\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->m_data['Number'] = $this->__generateArticleNumber();\n        $this->m_data['ArticleOrder'] = $this->m_data['Number'];\n\n        // Create the record\n        $values = array();\n        if (!is_null($p_name)) {\n            $values['Name'] = $p_name;\n        }\n        // Only categorize the article if all three arguments:\n        // $p_publicationId, $p_issueNumber, and $p_sectionNumber\n        // are present.\n        if (is_numeric($p_publicationId)\n            && is_numeric($p_issueNumber)\n            && is_numeric($p_sectionNumber)\n            && ($p_publicationId > 0)\n            && ($p_issueNumber > 0)\n            && ($p_sectionNumber > 0) )\n        {\n            $issueObj = new Issue($p_publicationId, $this->m_data['IdLanguage'], $p_issueNumber);\n            $sectionObj = new Section($p_publicationId, $p_issueNumber, $this->m_data['IdLanguage'], $p_sectionNumber);\n\n            $values['NrIssue'] = (int) $p_issueNumber;\n            $values['NrSection'] = (int) $p_sectionNumber;\n\n            // for internall relations in entity we need also to keep sectionId and issueId\n            $values['issue_id'] = $issueObj->getIssueId();\n            $values['section_id'] = $sectionObj->getSectionId();\n        }\n        $values['ShortName'] = $this->m_data['Number'];\n        $values['Type'] = $p_articleType;\n        $values['Public'] = 'Y';\n        $values['IdPublication'] = (int) $p_publicationId;\n\n        if (!is_null($p_publicationId) && $p_publicationId > 0) {\n            $where = \" WHERE IdPublication = $p_publicationId AND NrIssue = $p_issueNumber\"\n                    . \" and NrSection = $p_sectionNumber\";\n        } else {\n            $where = '';\n        }\n\n        // compute article order number\n        $queryStr = \"SELECT MIN(ArticleOrder) AS min FROM Articles$where\";\n        $articleOrder = $g_ado_db->GetOne($queryStr);\n        if (is_null($articleOrder) || !isset($values['NrSection'])) {\n            $articleOrder = $this->m_data['Number'];\n        } else {\n            $increment = $articleOrder > 0 ? 1 : 2;\n            $queryStr = \"UPDATE Articles SET ArticleOrder = ArticleOrder + $increment $where\";\n            $g_ado_db->Execute($queryStr);\n            $articleOrder = 1;\n        }\n        $values['ArticleOrder'] = $articleOrder;\n\n        $success = parent::create($values);\n        if (!$success) {\n            return;\n        }\n        $this->fetch();\n        $this->setProperty('UploadDate', 'NOW()', true, true);\n\n        // Insert an entry into the article type table.\n        $articleData = new ArticleData($this->m_data['Type'],\n            $this->m_data['Number'],\n            $this->m_data['IdLanguage']);\n        $articleData->create();\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('article');\n\n        Log::ArticleMessage($this, $translator->trans('Article created.', array(), 'api'), null, 31, TRUE);\n    } // fn create\n\n    /**\n     * Create a unique identifier for an article.\n     * @access private\n     */\n    public function __generateArticleNumber()\n    {\n        global $g_ado_db;\n\n        $queryStr = 'UPDATE AutoId SET ArticleId=LAST_INSERT_ID(ArticleId + 1)';\n        $g_ado_db->Execute($queryStr);\n\n        return $g_ado_db->insert_id() ?: 1;\n    } // fn __generateArticleNumber\n\n    /**\n     * Create a copy of this article.\n     *\n     * @param int   $p_destPublicationId -\n     *                                   The destination publication ID.\n     * @param int   $p_destIssueNumber   -\n     *                                   The destination issue number.\n     * @param int   $p_destSectionNumber -\n     *                                   The destination section number.\n     * @param int   $p_userId            -\n     *                                   The user creating the copy.  If null, keep the same user ID as the original.\n     * @param mixed $p_copyTranslations  -\n     *                                   If false (default), only this article will be copied.\n     *                                   If true, all translations will be copied.\n     *                                   If an array is passed, the translations given will be copied.\n     *                                   Any translations that do not exist will be ignored.\n     *\n     * @return Article\n     *                 If $p_copyTranslations is TRUE or an array, return an array of newly created articles.\n     *                 If $p_copyTranslations is FALSE, return the new Article.\n     */\n    public function copy($p_destPublicationId = 0, $p_destIssueNumber = 0,\n                         $p_destSectionNumber = 0, $p_userId = null,\n                         $p_copyTranslations = false)\n    {\n        global $g_ado_db;\n\n        // It is an optimization to put these here because in most cases\n        // you dont need these files.\n        require_once($GLOBALS['g_campsiteDir'].'/classes/ArticleImage.php');\n        require_once($GLOBALS['g_campsiteDir'].'/classes/ArticleTopic.php');\n        require_once($GLOBALS['g_campsiteDir'].'/classes/ArticleAttachment.php');\n\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $copyArticles = array();\n        if ($p_copyTranslations) {\n            // Get all translations for this article\n            $copyArticles = $this->getTranslations();\n\n            // Remove any translations that are not requested to be translated.\n            if (is_array($p_copyTranslations)) {\n                $tmpArray = array();\n\n                foreach ($copyArticles as $tmpArticle) {\n                    if (in_array($tmpArticle->m_data['IdLanguage'], $p_copyTranslations)) {\n                        $tmpArray[] = $tmpArticle;\n                    }\n                }\n                $copyArticles = $tmpArray;\n            }\n        } else {\n            $copyArticles[] = $this;\n        }\n\n        // If there are no articles to be copied return empty array\n        if (count($copyArticles) === 0) {\n            return $copyArticles;\n        }\n\n        $newArticleNumber = $this->__generateArticleNumber();\n\n        // geo-map copying\n        if (0 < count($copyArticles)) {\n            $map_user_id = $p_userId;\n            if (is_null($map_user_id)) {\n                $map_user_id = $this->m_data['IdUser'];\n            }\n\n            $map_artilce_src = (int)$this->m_data['Number'];\n            $map_artilce_dest = (int)$newArticleNumber;\n            $map_translations = array();\n            foreach ($copyArticles as $copyMe) {\n                $map_translations[] = (int)$copyMe->m_data['IdLanguage'];\n            }\n            Geo_Map::OnArticleCopy($map_artilce_src, $map_artilce_dest, $map_translations, $map_user_id);\n        }\n\n        $articleOrder = null;\n        $logtext = '';\n        $newArticles = array();\n        foreach ($copyArticles as $copyMe) {\n            // Construct the duplicate article object.\n            $articleCopy = new Article();\n            $articleCopy->m_data['IdPublication'] = (int) $p_destPublicationId;\n            $articleCopy->m_data['NrIssue'] = (int) $p_destIssueNumber;\n            $articleCopy->m_data['NrSection'] = (int) $p_destSectionNumber;\n            $articleCopy->m_data['IdLanguage'] = (int) $copyMe->m_data['IdLanguage'];\n            $articleCopy->m_data['Number'] = (int) $newArticleNumber;\n            $values = array();\n            // Copy some attributes\n            $values['ShortName'] = $newArticleNumber;\n            $values['Type'] = $copyMe->m_data['Type'];\n            $values['OnFrontPage'] = $copyMe->m_data['OnFrontPage'];\n            $values['OnSection'] = $copyMe->m_data['OnSection'];\n            $values['Public'] = $copyMe->m_data['Public'];\n            $values['ArticleOrder'] = $articleOrder;\n            $values['Keywords'] = $copyMe->m_data['Keywords'];\n            // Change some attributes\n            $values['Published'] = 'N';\n            $values['IsIndexed'] = 'N';\n\n            if (!is_null($p_userId)) {\n                $values['IdUser'] = $p_userId;\n            } else {\n                $values['IdUser'] = $copyMe->m_data['IdUser'];\n            }\n            $values['Name'] = $articleCopy->getUniqueName($copyMe->m_data['Name']);\n\n            // for internall relations in entity we need also to keep sectionId and issueId\n            $issueObj = new Issue($articleCopy->m_data['IdPublication'], $articleCopy->m_data['IdLanguage'], $articleCopy->m_data['NrIssue']);\n            $sectionObj = new Section($articleCopy->m_data['IdPublication'], $articleCopy->m_data['NrIssue'], $articleCopy->m_data['IdLanguage'], $articleCopy->m_data['NrSection']);\n            $values['issue_id'] = $issueObj->getIssueId();\n            $values['section_id'] = $sectionObj->getSectionId();\n\n            $articleCopy->__create($values);\n            $articleCopy->setProperty('UploadDate', 'NOW()', true, true);\n            $articleCopy->setProperty('LockUser', 'NULL', true, true);\n            $articleCopy->setProperty('LockTime', 'NULL', true, true);\n            if (is_null($articleOrder)) {\n                $g_ado_db->Execute('LOCK TABLES Articles WRITE');\n                $articleOrder = $g_ado_db->GetOne('SELECT MAX(ArticleOrder) + 1 FROM Articles');\n                $articleCopy->setProperty('ArticleOrder', $articleOrder);\n                $g_ado_db->Execute('UNLOCK TABLES');\n            }\n\n            // Insert an entry into the article type table.\n            $newArticleData = new ArticleData($articleCopy->m_data['Type'],\n                $articleCopy->m_data['Number'],\n                $articleCopy->m_data['IdLanguage']);\n            $newArticleData->create();\n            $origArticleData = $copyMe->getArticleData();\n            $origArticleData->copyToExistingRecord($articleCopy->m_data['Number']);\n\n            // Copy image pointers\n            ArticleImage::OnArticleCopy($copyMe->m_data['Number'], $articleCopy->m_data['Number']);\n\n            // Copy topic pointers\n            ArticleTopic::OnArticleCopy($copyMe->m_data['Number'], $articleCopy->m_data['Number']);\n\n            // Copy file pointers\n            ArticleAttachment::OnArticleCopy($copyMe->m_data['Number'], $articleCopy->m_data['Number']);\n\n            // Copy author pointers\n            ArticleAuthor::OnArticleCopy($copyMe->m_data['Number'], $articleCopy->m_data['Number']);\n\n            // Copy related articles\n            ContextBoxArticle::OnArticleCopy($copyMe->m_data['Number'], $articleCopy->m_data['Number']);\n\n            // Position the new article at the beginning of the section\n            $articleCopy->positionAbsolute(1);\n\n            $newArticles[] = $articleCopy;\n            $languageObj = new Language($copyMe->getLanguageId());\n            $logtext .= $translator->trans('Article copied to Article $4 (publication $5, issue $6, section $7).', array(\n                '$4' => $articleCopy->getArticleNumber(), '$5' => $articleCopy->getPublicationId(),\n                '$6' => $articleCopy->getIssueNumber(), '$7' =>$articleCopy->getSectionNumber()), 'api');\n        }\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('article');\n\n        Log::ArticleMessage($copyMe, $logtext, null, 155);\n        if ($p_copyTranslations) {\n            return $newArticles;\n        } else {\n          return array_pop($newArticles);\n        }\n    } // fn copy\n\n\n    /**\n     * This is a convenience function to move an article from\n     * one section to another.\n     *\n     * @param int $p_destPublicationId -\n     *                                 The destination publication ID.\n     * @param int $p_destIssueNumber   -\n     *                                 The destination issue number.\n     * @param int $p_destSectionNumber -\n     *                                 The destination section number.\n     *\n     * @return boolean\n     */\n    public function move($p_destPublicationId = 0, $p_destIssueNumber = 0,\n                         $p_destSectionNumber = 0)\n    {\n        global $g_ado_db;\n\n        $columns = array();\n        if ($this->m_data[\"IdPublication\"] != $p_destPublicationId) {\n            $columns[\"IdPublication\"] = (int) $p_destPublicationId;\n        }\n\n        // update section and issue allways - as even if number will be this same, real section (id) can be changed.\n        $issueObj = new Issue($p_destPublicationId, $this->m_data['IdLanguage'], $p_destIssueNumber);\n        $columns[\"NrIssue\"] = (int) $p_destIssueNumber;\n        // for internall relations in entity we need also to keep issueId\n        $columns['issue_id'] = $issueObj->getIssueId();\n\n        $sectionObj = new Section($p_destPublicationId, $p_destIssueNumber, $this->m_data['IdLanguage'], $p_destSectionNumber);\n        $columns[\"NrSection\"] = (int) $p_destSectionNumber;\n        // for internall relations in entity we need also to keep sectionId\n        $columns['section_id'] = $sectionObj->getSectionId();\n\n        $success = false;\n        if (count($columns) > 0) {\n            try {\n                $success = $this->update($columns);\n            } catch (\\Exception $e) {\n                $success = false;\n            }\n\n            if ($success) {\n                $this->setWorkflowStatus($this->getWorkflowStatus());\n                $g_ado_db->Execute('LOCK TABLES Articles WRITE');\n                $articleOrder = $g_ado_db->GetOne('SELECT MAX(ArticleOrder) + 1 FROM Articles');\n                $this->setProperty('ArticleOrder', $articleOrder);\n                $g_ado_db->Execute('UNLOCK TABLES');\n                $this->positionAbsolute(1);\n            } else {\n                $translator = \\Zend_Registry::get('container')->getService('translator');\n                $logtext = $translator->trans('Article \"$1\" not processed', array('$1' => $this->getTitle()), 'api');\n                Log::ArticleMessage($this, $logtext);\n            }\n        }\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('article');\n\n        return $success;\n    } // fn move\n\n\n    /**\n     * Return a unique name based on this article's name.\n     * The name returned will have the form \"original_article_name (duplicate #)\"\n     * @return string\n     */\n    public function getUniqueName($p_currentName)\n    {\n        global $g_ado_db;\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $origNewName = $g_ado_db->escape($p_currentName) . \" (\".$translator->trans(\"Duplicate\");\n        $newName = $origNewName .\") 1\";\n\n        $query = 'SELECT `Name` FROM `Articles` WHERE `Name` LIKE \"'.substr($newName, 0, -1).'%\" ORDER BY `Name` DESC LIMIT 1;';\n        $result = $g_ado_db->GetOne($query);\n        if (!empty($result)) {\n            $num = substr($result, -1);\n            $num = intval($num)+1;\n            $newName = substr($result, 0, -2) . ' '.$num;\n        }\n\n        return $newName;\n    } // fn getUniqueName\n\n    /**\n     * Return the avg article rating\n     * @return float\n     */\n    public function getRating()\n    {\n        global $g_ado_db;\n        $rating = $g_ado_db->GetOne('SELECT AVG(rating_score) FROM rating WHERE article_number = ' . $this->m_data['Number']);\n\n        if ($rating > 0) {\n            return number_format($rating, 1);\n        } else {\n            return 0;\n        }\n    }\n\n    /**\n     * Create a copy of the article, but make it a translation\n     * of the current one.\n     *\n     * @param  int     $p_languageId\n     * @param  int     $p_userId\n     * @param  string  $p_name\n     * @return Article\n     */\n    public function createTranslation($p_languageId, $p_userId, $p_name)\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        // Construct the duplicate article object.\n        $articleCopy = new Article();\n        $articleCopy->m_data['IdPublication'] = $this->m_data['IdPublication'];\n        $articleCopy->m_data['NrIssue'] = $this->m_data['NrIssue'];\n        $articleCopy->m_data['NrSection'] = $this->m_data['NrSection'];\n        $articleCopy->m_data['IdLanguage'] = $p_languageId;\n        $articleCopy->m_data['Number'] = $this->m_data['Number'];\n        $values = array();\n        // Copy some attributes\n        $values['ShortName'] = $this->m_data['ShortName'];\n        $values['Type'] = $this->m_data['Type'];\n        $values['OnFrontPage'] = $this->m_data['OnFrontPage'];\n        $values['OnSection'] = $this->m_data['OnFrontPage'];\n        $values['Public'] = $this->m_data['Public'];\n        $values['ArticleOrder'] = $this->m_data['ArticleOrder'];\n        $values['comments_enabled'] = $this->m_data['comments_enabled'];\n        $values['comments_locked'] = $this->m_data['comments_locked'];\n        $values['rating_enabled'] = $this->m_data['rating_enabled'];\n        // Change some attributes\n        $values['Name'] = $p_name;\n        $values['Published'] = 'N';\n        $values['IsIndexed'] = 'N';\n        $values['IdUser'] = $p_userId;\n\n        // for internall relations in entity we need also to keep sectionId and issueId\n        $issueObj = new Issue($this->m_data['IdPublication'], $p_languageId, $this->m_data['NrIssue']);\n        $sectionObj = new Section($this->m_data['IdPublication'], $this->m_data['NrIssue'], $p_languageId, $this->m_data['NrSection']);\n        $values['issue_id'] = $issueObj->getIssueId();\n        $values['section_id'] = $sectionObj->getSectionId();\n\n        // Create the record\n        $success = $articleCopy->__create($values);\n        if (!$success) {\n            return false;\n        }\n\n        $articleCopy->setProperty('UploadDate', 'NOW()', true, true);\n        $articleCopy->setProperty('LockUser', 'NULL', true, true);\n        $articleCopy->setProperty('LockTime', 'NULL', true, true);\n\n        // Insert an entry into the article type table.\n        $articleCopyData = new ArticleData($articleCopy->m_data['Type'],\n            $articleCopy->m_data['Number'], $articleCopy->m_data['IdLanguage']);\n        $articleCopyData->create();\n\n        $origArticleData = $this->getArticleData();\n        $origArticleData->copyToExistingRecord($articleCopy->getArticleNumber(), $p_languageId);\n\n        $logtext = $translator->trans('Article translated to $4 ($5)', array(\n            '$4' => $articleCopy->getTitle(), '$5' => $articleCopy->getLanguageName()), 'api');\n        Log::ArticleMessage($this, $logtext, null, 31);\n\n        // geo-map processing\n        Geo_Map::OnCreateTranslation($this->m_data['Number'], $this->m_data['IdLanguage'], $p_languageId);\n\n        return $articleCopy;\n    } // fn createTranslation\n\n    /**\n     * Delete article from database.  This will\n     * only delete one specific translation of the article.\n     *\n     * @return boolean\n     */\n    public function delete()\n    {\n        // It is an optimization to put these here because in most cases\n        // you dont need these files.\n        require_once($GLOBALS['g_campsiteDir'].'/classes/ArticleImage.php');\n        require_once($GLOBALS['g_campsiteDir'].'/classes/ArticleTopic.php');\n        require_once($GLOBALS['g_campsiteDir'].'/classes/ArticleIndex.php');\n        require_once($GLOBALS['g_campsiteDir'].'/classes/ArticleAttachment.php');\n        require_once($GLOBALS['g_campsiteDir'].'/classes/ArticlePublish.php');\n        // Delete scheduled publishing\n        ArticlePublish::OnArticleDelete($this->m_data['Number'], $this->m_data['IdLanguage']);\n\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        // Delete Article Comments\n        // @todo change this with DOCTRINE2 CASCADE DELETE\n        $em = Zend_Registry::get('container')->getService('em');\n        $repository = $em->getRepository('Newscoop\\Entity\\Comment');\n        $repository->deleteArticle($this->m_data['Number'], $this->m_data['IdLanguage']);\n        $repository = $em->getRepository('Newscoop\\Entity\\ArticleDatetime');\n        $repository->deleteByArticle($this->m_data['Number']);\n        $em->flush();\n\n        // is this the last translation?\n        if (count($this->getLanguages()) <= 1) {\n            // Delete image pointers\n            ArticleImage::OnArticleDelete($this->m_data['Number']);\n\n            // Delete topics pointers\n            ArticleTopic::OnArticleDelete($this->m_data['Number']);\n\n            // Delete file pointers\n            ArticleAttachment::OnArticleDelete($this->m_data['Number']);\n\n            // Delete related articles\n            ContextBox::OnArticleDelete($this->m_data['Number']);\n\n            ContextBoxArticle::OnArticleDelete($this->m_data['Number']);\n\n            // Delete the article from playlists\n            $em = Zend_Registry::get('container')->getService('em');\n            $repository = $em->getRepository('Newscoop\\Entity\\PlaylistArticle');\n            $repository->deleteArticle($this->m_data['Number'], $this->m_data['IdLanguage']);\n            $em->flush();\n\n            // Delete indexes\n            ArticleIndex::OnArticleDelete($this->getPublicationId(), $this->getIssueNumber(),\n                $this->getSectionNumber(), $this->getLanguageId(), $this->getArticleNumber());\n        }\n\n        // geo-map processing\n        // is this the last translation?\n        if (count($this->getLanguages()) <= 1) {\n            // unlink the article-map pointers\n            Geo_Map::OnArticleDelete($this->m_data['Number']);\n        } else {\n            // removing non-last translation of the map poi contents\n            Geo_Map::OnLanguageDelete($this->m_data['Number'], $this->m_data['IdLanguage']);\n        }\n\n        // Delete row from article type table.\n        $articleData = new ArticleData($this->m_data['Type'],\n            $this->m_data['Number'],\n            $this->m_data['IdLanguage']);\n        $articleData->delete();\n\n        // Delete webcode\n        $em = Zend_Registry::get('container')->getService('em');\n        $article = $em->getRepository('Newscoop\\Entity\\Article')\n            ->findOneBy(array(\n                'number' => $this->getArticleNumber(),\n                'language' => $this->getLanguageId(),\n            ));\n\n        $webcode = $article->getWebcodeEntity();\n\n        if (null !== $webcode) {\n            try {\n                $em->remove($webcode);\n                $em->flush();\n            } catch(\\Exception $e) {}\n        }\n\n        $em->detach($article);\n\n        $tmpObj = clone $this; // for log\n        // Delete row from Articles table.\n        $deleted = parent::delete();\n\n        if ($deleted) {\n            $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n            $cacheService->clearNamespace('article');\n            Log::ArticleMessage($tmpObj, $translator->trans('Article deleted.', array(), 'api'), null, 32);\n        }\n        $this->m_cacheUpdate = true;\n\n        return $deleted;\n    } // fn delete\n\n    /**\n     * Get the time the article was locked.\n     *\n     * @return string\n     *                In the form of YYYY-MM-DD HH:MM:SS\n     */\n    public function getLockTime()\n    {\n        return $this->m_data['LockTime'];\n    } // fn getLockTime\n\n    /**\n     * Return TRUE if the article is locked, FALSE if it isnt.\n     * @return boolean\n     */\n    public function isLocked()\n    {\n        if ( ($this->m_data['LockUser'] == null) && ($this->m_data['LockTime'] == null) ) {\n            return false;\n        } else {\n            return true;\n        }\n    } // fn isLocked\n\n    /**\n     * Lock or unlock the article.\n     *\n     * Locking the article requires the user ID parameter.\n     *\n     * @param  boolean $p_lock\n     * @param  int     $p_userId\n     * @return void\n     */\n    public function setIsLocked($p_lock, $p_userId = null)\n    {\n        // Check parameters\n        if ($p_lock && !is_numeric($p_userId)) {\n            return;\n        }\n\n        // Don't change the article timestamp when the\n        // article is locked.\n        $lastModified = $this->m_data['time_updated'];\n        if ($p_lock) {\n            $this->setProperty('LockUser', $p_userId);\n            $this->setProperty('LockTime', 'NOW()', true, true);\n        } else {\n            $this->setProperty('LockUser', 'NULL', true, true);\n            $this->setProperty('LockTime', 'NULL', true, true);\n        }\n\n        $this->setProperty('time_updated', $lastModified, true);\n    } // fn setIsLocked\n\n\n    /**\n     * Return an array of Language objects, one for each\n     * language the article is written in.\n     *\n     * @param  boolean $p_excludeCurrent\n     *                                   If true, exclude the current language from the list.\n     * @param  array   $p_order\n     *                                   The array of order directives in the format:\n     *                                   array('field'=>field_name, 'dir'=>order_direction)\n     *                                   field_name can take one of the following values:\n     *                                   bynumber, byname, byenglish_name, bycode\n     *                                   order_direction can take one of the following values:\n     *                                   asc, desc\n     * @return array\n     */\n    public function getLanguages($p_excludeCurrent = false, array $p_order = array(),\n    $p_published = false)\n    {\n        if (!$this->exists()) {\n            return array();\n        }\n        $tmpLanguage = new Language();\n        $columnNames = $tmpLanguage->getColumnNames(true);\n         $queryStr = 'SELECT '.implode(',', $columnNames).' FROM Articles, Languages '\n                     .' WHERE Articles.IdLanguage = Languages.Id'\n                    .' AND IdPublication = ' . $this->m_data['IdPublication']\n                     .' AND NrIssue = ' . $this->m_data['NrIssue']\n                     .' AND NrSection = ' . $this->m_data['NrSection']\n                     .' AND Number = ' . $this->m_data['Number'];\n        if ($p_excludeCurrent) {\n            $queryStr .= ' AND Languages.Id != ' . $this->m_data['IdLanguage'];\n         }\n         if ($p_published) {\n             $queryStr .= \" AND Articles.Published = 'Y'\";\n         }\n        $order = Article::ProcessLanguageListOrder($p_order);\n        $sqlOrder = array();\n        foreach ($order as $orderDesc) {\n            $sqlOrder[] = $orderDesc['field'] . ' ' . $orderDesc['dir'];\n        }\n         if (count($sqlOrder) > 0) {\n             $queryStr .= ' ORDER BY ' . implode(', ', $sqlOrder);\n         }\n         $languages = DbObjectArray::Create('Language', $queryStr);\n\n        return $languages;\n    } // fn getLanguages\n\n\n    /**\n     * Return an array of Article objects, one for each\n     * type of language the article is written in.\n     *\n     * @param int $p_articleNumber\n     *                             Optional. Use this if you call this function statically.\n     *\n     * @return array\n     */\n    public function getTranslations($p_articleNumber = null)\n    {\n        if (!is_null($p_articleNumber)) {\n            $articleNumber = $p_articleNumber;\n        } elseif (isset($this)) {\n            $articleNumber = $this->m_data['Number'];\n        } else {\n            return array();\n        }\n         $queryStr = 'SELECT * FROM Articles '\n                     .\" WHERE Number=$articleNumber\";\n         $articles = DbObjectArray::Create('Article', $queryStr);\n\n        return $articles;\n    } // fn getTranslations\n\n\n    /**\n     * A simple way to get the name of the language the article is\n     * written in.  The value is cached in case there are multiple\n     * calls to this function.\n     *\n     * @return string\n     */\n    public function getLanguageName()\n    {\n        if (is_null($this->m_languageName)) {\n            $language = new Language($this->m_data['IdLanguage']);\n            $this->m_languageName = $language->getNativeName();\n        }\n\n        return $this->m_languageName;\n    } // fn getLanguageName\n\n\n    /**\n     * Get the section that this article is in.\n     * @return object\n     */\n    public function getSection()\n    {\n        $section = new Section($this->getPublicationId(), $this->getIssueNumber(),\n        $this->getLanguageId(), $this->getSectionNumber());\n        if (!$section->exists()) {\n            $params = array(\n                new ComparisonOperation('idpublication', new Operator('is', 'integer'), $this->getPublicationId()),\n                new ComparisonOperation('idlanguage', new Operator('is', 'integer'), $this->getLanguageId()),\n                new ComparisonOperation('number', new Operator('is', 'integer'), $this->getSectionNumber()),\n            );\n\n            if ($this->getIssueNumber()) {\n                $params[] = new ComparisonOperation('nrissue', new Operator('is', 'integer'), $this->getIssueNumber());\n            }\n\n            $sections = Section::GetList($params, null, 0, 1, $count = 0);\n            if (!empty($sections)) {\n                return $sections[0];\n            }\n        }\n\n        return $section;\n    } // fn getSection\n\n\n    /**\n     * Change the article's position in the order sequence\n     * relative to its current position.\n     *\n     * @param string $p_direction -\n     *                            Can be \"up\" or \"down\".  \"Up\" means towards the beginning of the list,\n     *                            and \"down\" means towards the end of the list.\n     *\n     * @param int $p_spacesToMove -\n     *                            The number of spaces to move the article.\n     *\n     * @return boolean\n     */\n    public function positionRelative($p_direction, $p_spacesToMove = 1)\n    {\n        global $g_ado_db;\n\n        CampCache::singleton()->clear('user');\n        $this->fetch();\n\n        $g_ado_db->Execute('LOCK TABLES Articles WRITE');\n\n        // Get the article that is in the final position where this\n        // article will be moved to.\n        $compareOperator = ($p_direction == 'up') ? '<' : '>';\n        $order = ($p_direction == 'up') ? 'desc' : 'asc';\n        $queryStr = 'SELECT DISTINCT(Number), ArticleOrder FROM Articles '\n                    .' WHERE IdPublication='.$this->m_data['IdPublication']\n                    .' AND NrIssue='.$this->m_data['NrIssue']\n                    .' AND NrSection='.$this->m_data['NrSection']\n                    .' AND ArticleOrder '.$compareOperator.' '.$this->m_data['ArticleOrder']\n                    .' ORDER BY ArticleOrder ' . $order\n                     .' LIMIT '.($p_spacesToMove-1).', 1';\n        $destRow = $g_ado_db->GetRow($queryStr);\n        if (!$destRow) {\n            // Special case: there was a bug when you duplicated articles that\n            // caused them to have the same order number.  So we check here if\n            // there are any articles that match the order number of the current\n            // article.  The end result will be that this article will have\n            // a different order number than all the articles it used to share it\n            // with.  However, the other articles will still have the same\n            // order number, which means that the article may appear to 'jump'\n            // across multiple articles.\n            $queryStr = 'SELECT DISTINCT(Number), ArticleOrder FROM Articles '\n                        .' WHERE IdPublication='.$this->m_data['IdPublication']\n                        .' AND NrIssue='.$this->m_data['NrIssue']\n                        .' AND NrSection='.$this->m_data['NrSection']\n                        .' AND ArticleOrder='.$this->m_data['ArticleOrder']\n                         .' LIMIT '.($p_spacesToMove-1).', 1';\n            $destRow = $g_ado_db->GetRow($queryStr);\n            if (!$destRow) {\n                $g_ado_db->Execute('UNLOCK TABLES');\n\n                return false;\n            }\n        }\n        // Shift all articles one space between the source and destination article.\n        $operator = ($p_direction == 'up') ? '+' : '-';\n        $minArticleOrder = min($destRow['ArticleOrder'], $this->m_data['ArticleOrder']);\n        $maxArticleOrder = max($destRow['ArticleOrder'], $this->m_data['ArticleOrder']);\n        $queryStr2 = 'UPDATE Articles SET ArticleOrder = ArticleOrder '.$operator.' 1 '\n                    .' WHERE IdPublication = '. $this->m_data['IdPublication']\n                    .' AND NrIssue = ' . $this->m_data['NrIssue']\n                    .' AND NrSection = ' . $this->m_data['NrSection']\n                     .' AND ArticleOrder >= '.$minArticleOrder\n                     .' AND ArticleOrder <= '.$maxArticleOrder;\n        $g_ado_db->Execute($queryStr2);\n\n        // Change position of this article to the destination position.\n        $queryStr3 = 'UPDATE Articles SET ArticleOrder = ' . $destRow['ArticleOrder']\n                    .' WHERE IdPublication = '. $this->m_data['IdPublication']\n                    .' AND NrIssue = ' . $this->m_data['NrIssue']\n                    .' AND NrSection = ' . $this->m_data['NrSection']\n                     .' AND Number = ' . $this->m_data['Number'];\n        $g_ado_db->Execute($queryStr3);\n\n        $g_ado_db->Execute('UNLOCK TABLES');\n\n        CampCache::singleton()->clear('user');\n        $this->m_cacheUpdate = true;\n\n        // Re-fetch this article to get the updated article order.\n        $this->fetch();\n\n        return true;\n    } // fn positionRelative\n\n    /**\n     * Move the article to the given position (i.e. reorder the article).\n     * @param  int     $p_moveToPosition\n     * @return boolean\n     */\n    public function positionAbsolute($p_moveToPosition = 1)\n    {\n        global $g_ado_db;\n\n        CampCache::singleton()->clear('user');\n        $this->fetch();\n\n        $g_ado_db->Execute('LOCK TABLES Articles WRITE');\n\n        // Get the article that is in the location we are moving\n        // this one to.\n        $queryStr = 'SELECT Number, IdLanguage, ArticleOrder FROM Articles '\n                    .' WHERE IdPublication='.$this->m_data['IdPublication']\n                    .' AND NrIssue='.$this->m_data['NrIssue']\n                    .' AND NrSection='.$this->m_data['NrSection']\n                     .' ORDER BY ArticleOrder ASC LIMIT '.($p_moveToPosition - 1).', 1';\n        $destRow = $g_ado_db->GetRow($queryStr);\n        if (!$destRow) {\n            $g_ado_db->Execute('UNLOCK TABLES');\n\n            return false;\n        }\n        if ($destRow['ArticleOrder'] == $this->m_data['ArticleOrder']) {\n            $g_ado_db->Execute('UNLOCK TABLES');\n\n            // Move the destination down one.\n            $destArticle = new Article($destRow['IdLanguage'], $destRow['Number']);\n            $destArticle->positionRelative(\"down\", 1);\n\n            return true;\n        }\n        if ($destRow['ArticleOrder'] > $this->m_data['ArticleOrder']) {\n            $operator = '-';\n        } else {\n            $operator = '+';\n        }\n        // Reorder all the other articles in this section\n        $minArticleOrder = min($destRow['ArticleOrder'], $this->m_data['ArticleOrder']);\n        $maxArticleOrder = max($destRow['ArticleOrder'], $this->m_data['ArticleOrder']);\n        $queryStr = 'UPDATE Articles '\n                    .' SET ArticleOrder = ArticleOrder '.$operator.' 1 '\n                    .' WHERE IdPublication='.$this->m_data['IdPublication']\n                    .' AND NrIssue='.$this->m_data['NrIssue']\n                    .' AND NrSection='.$this->m_data['NrSection']\n                     .' AND ArticleOrder >= '.$minArticleOrder\n                     .' AND ArticleOrder <= '.$maxArticleOrder;\n        $g_ado_db->Execute($queryStr);\n\n        // Reposition this article.\n        $queryStr = 'UPDATE Articles '\n                    .' SET ArticleOrder='.$destRow['ArticleOrder']\n                    .' WHERE IdPublication='.$this->m_data['IdPublication']\n                    .' AND NrIssue='.$this->m_data['NrIssue']\n                    .' AND NrSection='.$this->m_data['NrSection']\n                     .' AND Number='.$this->m_data['Number'];\n        $g_ado_db->Execute($queryStr);\n\n        $g_ado_db->Execute('UNLOCK TABLES');\n\n        CampCache::singleton()->clear('user');\n        $this->m_cacheUpdate = true;\n\n        $this->fetch();\n\n        return true;\n    } // fn positionAbsolute\n\n    /**\n     * Return true if the given user has permission to modify the content of this article.\n     *\n     * 1) Publishers can always edit.\n     * 2) Users who have the ChangeArticle right can edit as long as the\n     *    article is not published.  i.e. they can edit ALL articles that are\n     *    new or submitted.\n     * 3) The user created the article and the article is in the \"New\" state.\n     *\n     * @return boolean\n     */\n    public function userCanModify($p_user)\n    {\n        $userCreatedArticle = ($this->m_data['IdUser'] == $p_user->getUserId());\n        $articleIsNew = ($this->m_data['Published'] == 'N');\n        $articleIsNotPublished = (($this->m_data['Published'] == 'N') || ($this->m_data['Published'] == 'S'));\n        if (\n                ( $p_user->hasPermission('Publish') && $p_user->hasPermission('ChangeArticle') )\n                || ( $p_user->hasPermission('ChangeArticle') && $articleIsNotPublished )\n                || ($userCreatedArticle && $articleIsNew))\n            {\n            return true;\n        } else {\n            return false;\n        }\n    } // fn userCanModify\n\n    /**\n     * Get the name of the dynamic article type table.\n     *\n     * @return string\n     */\n    public function getArticleTypeTableName()\n    {\n        return 'X'.$this->m_data['Type'];\n    } // fn getArticleTypeTableName\n\n    /**\n     * Get the publication ID of the publication that contains this article.\n     * @return int\n     */\n    public function getPublicationId()\n    {\n        if (isset($this->m_data['IdPublication'])) {\n            return (int) $this->m_data['IdPublication'];\n        }\n\n        return 0;\n    } // fn getPublicationId\n\n    /**\n     * Set the publication ID.\n     *\n     * @param  int     $p_value\n     * @return boolean\n     */\n    public function setPublicationId($p_value)\n    {\n        if (is_numeric($p_value)) {\n            return $this->setProperty('IdPublication', (int) $p_value);\n        } else {\n            return false;\n        }\n    } // fn setPublicationId\n\n    /**\n     * Get the issue that the article resides within.\n     *\n     * @return int\n     */\n    public function getIssueNumber()\n    {\n        if (isset($this->m_data['NrIssue'])) {\n            return (int) $this->m_data['NrIssue'];\n        }\n\n        return 0;\n    } // fn getIssueNumber\n\n    /**\n     * Set the issue number.\n     *\n     * @param  int     $p_value\n     * @return boolean\n     */\n    public function setIssueNumber($p_value)\n    {\n        if (is_numeric($p_value)) {\n            return $this->setProperty('NrIssue', (int) $p_value);\n        } else {\n            return false;\n        }\n    } // fn setIssueNumber\n\n    /**\n     * Get the section number that contains this article.\n     *\n     * @return int\n     */\n    public function getSectionNumber()\n    {\n        if (isset($this->m_data['NrSection'])) {\n            return (int) $this->m_data['NrSection'];\n        }\n\n        return 0;\n    } // fn getSectionNumber\n\n    /**\n     * Set the section number.\n     *\n     * @param  int     $p_value\n     * @return boolean\n     */\n    public function setSectionNumber($p_value)\n    {\n        if (is_numeric($p_value)) {\n            return $this->setProperty('NrSection', (int) $p_value);\n        } else {\n            return false;\n        }\n    } // fn setSectionNumber\n\n    /**\n     * Return the language the article was written in.\n     *\n     * @return int\n     */\n    public function getLanguageId()\n    {\n        if (isset($this->m_data['IdLanguage'])) {\n            return (int) $this->m_data['IdLanguage'];\n        }\n\n        return 0;\n    } // fn getLanguageId\n\n    /**\n     * Return the article number.  The article number is\n     * not necessarily unique.  Articles that have been translated into\n     * multiple languages all have the same article number.\n     * Therefore to uniquely identify an article you need both\n     * the article number and the language ID.\n     *\n     * @return int\n     */\n    public function getArticleNumber()\n    {\n        if (isset($this->m_data['Number'])) {\n            return (int) $this->m_data['Number'];\n        }\n\n        return 0;\n    } // fn getArticleNumber\n\n    /**\n     * Get the title of the article.\n     *\n     * @return string\n     */\n    public function getTitle()\n    {\n        return $this->m_data['Name'];\n    } // fn getTitle\n\n    /**\n     * Alias for getTitle().\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->m_data['Name'];\n    } // fn getName\n\n    /**\n     * Set the title of the article.\n     *\n     * @param string $p_title\n     *\n     * @return void\n     */\n    public function setTitle($p_title)\n    {\n        return parent::setProperty('Name', $p_title);\n    } // fn setTitle\n\n    /**\n     * Get the article type.\n     * @return string\n     */\n    public function getType()\n    {\n        return $this->m_data['Type'];\n    } // fn getType\n\n    /**\n     * Get the logged in language's translation of the article type.\n     * @return string\n     */\n    public function getTranslateType($p_languageId = null)\n    {\n        $type = $this->getType();\n        $typeObj = new ArticleType($type);\n\n        return $typeObj->getDisplayName($p_languageId);\n    }\n\n\n    /**\n     * Return the user ID of the user who created this article.\n     * @return int\n     */\n    public function getCreatorId()\n    {\n        return (int) $this->m_data['IdUser'];\n    } // fn getCreatorId\n\n\n    /**\n     * Set the user ID of the user who created this article.\n     *\n     * @param  int     $p_value\n     * @return boolean\n     */\n    public function setCreatorId($p_value)\n    {\n        return parent::setProperty('IdUser', (int) $p_value);\n    } // fn setCreatorId\n\n\n    /**\n     * Set the ID of the author who wrote this article.\n     *\n     * @param  int     $p_value\n     * @param  int     $order\n     * @return boolean\n     */\n    public function setAuthor(Author $p_author, $order = 0)\n    {\n        $defaultAuthorType = $p_author->setType();\n        // Links the author to the article\n        $articleAuthorObj = new ArticleAuthor($this->getArticleNumber(),\n                                              $this->getLanguageId(),\n                                              $p_author->getId(), $defaultAuthorType, (int) $order);\n        if (!$articleAuthorObj->exists()) {\n            $articleAuthorObj->create();\n        }\n    } // fn setAuthor\n\n\n    /**\n     * Return an integer representing the order of the article\n     * within the section.  Note that these numbers are not sequential\n     * and can only be compared with the other articles in the section.\n     *\n     * @return int\n     */\n    public function getOrder()\n    {\n        return $this->m_data['ArticleOrder'];\n    } // fn getOrder\n\n\n    /**\n     * Return true if the article will appear on the front page.\n     *\n     * @return boolean\n     */\n    public function onFrontPage()\n    {\n        return ($this->m_data['OnFrontPage'] == 'Y');\n    } // fn onFrontPage\n\n\n    /**\n     * Set whether the article should appear on the front page.\n     *\n     * @param  boolean $p_value\n     * @return boolean\n     */\n    public function setOnFrontPage($p_value)\n    {\n        return parent::setProperty('OnFrontPage', $p_value?'Y':'N');\n    } // fn setOnFrontPage\n\n\n    /**\n     * Return TRUE if this article will appear on the section page.\n     *\n     * @return boolean\n     */\n    public function onSectionPage()\n    {\n        return ($this->m_data['OnSection'] == 'Y');\n    } // fn onSectionPage\n\n\n    /**\n     * Set whether the article will appear on the section page.\n     * @param  boolean $p_value\n     * @return boolean\n     */\n    public function setOnSectionPage($p_value)\n    {\n        return parent::setProperty('OnSection', $p_value?'Y':'N');\n    } // fn setOnSectionPage\n\n\n    /**\n     * Return the current workflow state of the article:\n     *   'Y' = \"Published\"\n     *   'S' = \"Submitted\"\n     *   'N' = \"New\"\n     *\n     * @return string\n     *                Can be 'Y', 'S', or 'N'.\n     */\n    public function getWorkflowStatus()\n    {\n        return $this->m_data['Published'];\n    } // fn getWorkflowStatus\n\n\n    /**\n     * Return a human-readable string for the status of the workflow.\n     * This can be called statically or as a member function.\n     * If called statically, you must pass in a parameter.\n     *\n     * @param  string $p_value\n     * @return string\n     */\n    public function getWorkflowDisplayString($p_value = null)\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        if (is_null($p_value)) {\n            $p_value = $this->m_data['Published'];\n        }\n        if ( ($p_value != 'Y') && ($p_value != 'S') && ($p_value != 'N') && $p_value != 'M') {\n            return '';\n        }\n        switch ($p_value) {\n        case 'Y':\n            return $translator->trans(\"Published\");\n        case 'M':\n            return $translator->trans('Publish with issue');\n        case 'S':\n            return $translator->trans(\"Submitted\");\n        case 'N':\n            return $translator->trans(\"New\");\n        }\n    } // fn getWorkflowDisplayString\n\n\n    /**\n     * Set the workflow state of the article.\n     *     'Y' = 'Published'\n     *     'S' = 'Submitted'\n     *     'N' = 'New'\n     *\n     * @param  string  $p_value\n     * @return boolean\n     */\n    public function setWorkflowStatus($p_value)\n    {\n        require_once($GLOBALS['g_campsiteDir'].'/classes/ArticleIndex.php');\n\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $em = \\Zend_Registry::get('container')->getService('em');\n        $p_value = strtoupper($p_value);\n        if ( ($p_value != 'Y') && ($p_value != 'S') && ($p_value != 'N') && ($p_value != 'M')) {\n            return false;\n        }\n\n        // If the article is being published\n        if ( ($this->getWorkflowStatus() != 'Y') && ($p_value == 'Y') ) {\n            $this->setProperty('PublishDate', 'NOW()', true, true);\n\n            // send out an article.published event\n            self::dispatchEvent(\"article.published\", $this);\n            self::dispatchEvent(\"article.publish\", $this, array(\n                'number' => $this->getArticleNumber(),\n                'language' => $this->getLanguageId(),\n            ));\n\n            // dispatch blog.published\n            $blogConfig = \\Zend_Registry::get('container')->getParameter('blog');\n            if ($this->getType() == $blogConfig['article_type']) {\n                self::dispatchEvent('blog.published', $this, array(\n                    'number' => $this->getArticleNumber(),\n                    'language' => $this->getLanguageId(),\n                ));\n            }\n\n            $article_images = ArticleImage::GetImagesByArticleNumber($this->getArticleNumber());\n            foreach ($article_images as $article_image) {\n                $image = $article_image->getImage();\n                $user_id = (int) $image->getUploadingUserId();\n                //send out an image.published event\n                self::dispatchEvent(\"image.published\", $this, array(\"user\" => $user_id));\n            }\n        }\n        // Unlock the article if it changes status.\n        if ( $this->getWorkflowStatus() != $p_value ) {\n            $this->setIsLocked(false);\n        }\n\n        if ($p_value == 'Y' || $p_value == 'M') {\n            $issueObj = new Issue($this->getPublicationId(), $this->getLanguageId(),\n            $this->getIssueNumber());\n            if (!$issueObj->exists()) {\n                return false;\n            }\n            $p_value = $issueObj->isPublished() ? 'Y' : 'M';\n        }\n\n        $oldStatus = $this->getWorkflowStatus();\n\n        if (!parent::setProperty('Published', $p_value)) {\n            return false;\n        }\n\n        $language = $em->getRepository('Newscoop\\Entity\\Language')->findOneById($this->getLanguageId());\n        $authors = $em->getRepository('Newscoop\\Entity\\ArticleAuthor')->getArticleAuthors($this->getArticleNumber(), $language->getCode())->getArrayResult();\n        foreach ($authors as $author) {\n            self::dispatchEvent(\"user.set_points\", $this, array('authorId' => $author['fk_author_id']));\n        }\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('article');\n\n        $logtext = $translator->trans('Article status changed from $1 to $2.', array(\n            '$1' => $this->getWorkflowDisplayString($oldStatus), '$2' => $this->getWorkflowDisplayString($p_value)), 'api');\n\n        Log::ArticleMessage($this, $logtext, null, 35);\n\n        return true;\n    } // fn setWorkflowStatus\n\n\n    /**\n     * Get the date the article was published.\n     * @return string\n     */\n    public function getPublishDate()\n    {\n        return $this->m_data['PublishDate'];\n    } // fn getPublishDate\n\n\n    /**\n     * Set the date the article was published, parameter must be in the\n     * form YYYY-MM-DD.\n     * @param  string  $p_value\n     * @return boolean\n     */\n    public function setPublishDate($p_value)\n    {\n        return $this->setProperty('PublishDate', $p_value);\n    } // fn setPublishDate\n\n\n    /**\n     * Return the date the article was created in the\n     * form YYYY-MM-DD HH:MM:SS.\n     *\n     * @return string\n     */\n    public function getCreationDate()\n    {\n        return $this->m_data['UploadDate'];\n    } // fn getCreationDate\n\n\n    /**\n     * Set the date the article was created, parameter must be in the\n     * form YYYY-MM-DD.\n     * @param  string  $p_value\n     * @return boolean\n     */\n    public function setCreationDate($p_value)\n    {\n        return $this->setProperty('UploadDate', $p_value);\n    } // fn setCreationDate\n\n\n    /**\n     * Return the date the article was last modified in the\n     * form YYYY-MM-DD HH:MM:SS.\n     *\n     * @return string\n     */\n    public function getLastModified()\n    {\n        // Deal with the differences between MySQL 4\n        // and MySQL 5.\n        if (strpos($this->m_data['time_updated'], \"-\") === false) {\n            $t = $this->m_data['time_updated'];\n            $str = substr($t, 0, 4).'-'.substr($t, 4, 2)\n                   .'-'.substr($t, 6, 2).' '.substr($t, 8, 2)\n                   .':'.substr($t, 10, 2).':'.substr($t, 12);\n\n            return $str;\n        } else {\n            return $this->m_data['time_updated'];\n        }\n    } // fn getLastModified\n\n\n    /**\n     * @return string\n     */\n    public function getKeywords()\n    {\n        $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n        $keywords = $this->m_data['Keywords'];\n        $keywordSeparator = $preferencesService->KeywordSeparator;\n\n        return str_replace(\",\", $keywordSeparator, $keywords);\n    } // fn getKeywords\n\n\n    public function getReads()\n    {\n        if (!$this->exists()) {\n            return null;\n        }\n        if (empty($this->m_data['object_id'])) {\n            return 0;\n        }\n        $requestObject = new RequestObject($this->m_data['object_id']);\n\n        return $requestObject->getRequestCount();\n    }\n\n\n    /**\n     * @param  string  $p_value\n     * @return boolean\n     */\n    public function setKeywords($p_value)\n    {\n        $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n        $keywordsSeparator = $preferencesService->KeywordSeparator;\n        $p_value = str_replace($keywordsSeparator, \",\", $p_value);\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('article');\n\n        return parent::setProperty('Keywords', $p_value);\n    } // fn setKeywords\n\n\n    /**\n     * Return TRUE if this article was published.\n     *\n     * @return boolean\n     */\n    public function isPublished()\n    {\n        return (isset($this->m_data['Published']) && $this->m_data['Published'] == 'Y');\n    } // fn isPublic\n\n\n    /**\n     * Return TRUE if this article is viewable by non-subscribers.\n     *\n     * @return boolean\n     */\n    public function isPublic()\n    {\n        return ($this->m_data['Public'] == 'Y');\n    } // fn isPublic\n\n\n    /**\n     * Set whether this article is viewable by non-subscribers.\n     *\n     * @param  boolean $p_value\n     * @return boolean\n     */\n    public function setIsPublic($p_value)\n    {\n        return parent::setProperty('Public', $p_value?'Y':'N');\n    } // fn setIsPublic\n\n\n    /**\n     * @return boolean\n     */\n    public function isIndexed()\n    {\n        return ($this->m_data['IsIndexed'] == 'Y');\n    } // fn isIndexed\n\n\n    /**\n     * @param boolean value\n     */\n    public function setIsIndexed($p_value)\n    {\n        return parent::setProperty('IsIndexed', $p_value?'Y':'N');\n    } // fn setIsIndexed\n\n\n    /**\n     * Return the user ID of the user who has locked the article.\n     * @return int\n     */\n    public function getLockedByUser()\n    {\n        return $this->m_data['LockUser'];\n    } // fn getLockedByUser\n\n\n    /**\n     * Get the URL name for this article.\n     *\n     * @return string\n     */\n    public function getUrlName()\n    {\n        return $this->m_data['ShortName'];\n    } // fn getUrlName\n\n\n    public function getSEOURLEnd(array $seoFields, $languageId)\n    {\n        $urlEnd = '';\n        foreach ($seoFields as $field => $value) {\n            switch ($field) {\n                case 'name':\n                    if ($text = trim($this->getName())) {\n                        $urlEnd .= $urlEnd ? '-' . $text : $text;\n                    }\n                    break;\n                case 'keywords':\n                    if ($text = trim($this->getKeywords())) {\n                        $urlEnd .= $urlEnd ? '-' . $text : $text;\n                    }\n                    break;\n                case 'topics':\n                    $articleTopics = ArticleTopic::GetArticleTopics($this->getArticleNumber());\n                    foreach ($articleTopics as $topic) {\n                        $urlEnd .= $urlEnd ? '-' . $topic->getName($languageId) : $topic->getName($languageId);\n                    }\n                    break;\n            }\n        }\n        $urlEnd = preg_replace('/[\\\\\\\\,\\/\\.\\?\"\\+&%:#]/', '', trim($urlEnd));\n        if (strlen($urlEnd) > 0) {\n            $urlEnd = str_replace(' ', '-', $urlEnd) . '.htm';\n        }\n\n        return $urlEnd;\n    }\n\n\n    /**\n     * @param string value\n     */\n    public function setUrlName($p_value)\n    {\n        return parent::setProperty('ShortName', $p_value);\n    } // fn setUrlName\n\n\n    /**\n     * Return the ArticleData object for this article.\n     *\n     * @return ArticleData\n     */\n    public function getArticleData()\n    {\n        return new ArticleData($this->m_data['Type'],\n            $this->m_data['Number'],\n            $this->m_data['IdLanguage']);\n    } // fn getArticleData\n\n\n    /**\n     * Return TRUE if comments have been activated.\n     *\n     * @return boolean\n     */\n    public function commentsEnabled()\n    {\n        return $this->m_data['comments_enabled'];\n    } // fn commentsEnabled\n\n    /**\n     * Set whether comments are enabled for this article.\n     *\n     * @param  boolean $p_value\n     * @return boolean\n     */\n    public function setCommentsEnabled($p_value)\n    {\n        $p_value = $p_value ? '1' : '0';\n\n        return $this->setProperty('comments_enabled', $p_value);\n    } // fn setCommentsEnabled\n\n    /**\n     * Return TRUE if rating has been activated.\n     *\n     * @return boolean\n     */\n    public function ratingEnabled()\n    {\n        return $this->m_data['rating_enabled'];\n    } // fn ratingEnabled\n\n    /**\n     * Set whether rating is enabled for this article.\n     *\n     * @param  boolean $p_value\n     * @return boolean\n     */\n    public function setRatingEnabled($p_value)\n    {\n        $p_value = $p_value ? '1' : '0';\n\n        return $this->setProperty('rating_enabled', $p_value);\n    } // fn setRatingEnabled\n\n    /**\n     * Return TRUE if comments are locked for this article.\n     * This means that comments cannot be added.\n     *\n     * @return boolean\n     */\n    public function commentsLocked()\n    {\n        return $this->m_data['comments_locked'];\n    } // fn commentsLocked\n\n\n    /**\n     * Set whether comments are locked for this article.\n     * If TRUE, this means that comments cannot be added to\n     * the article.\n     *\n     * @param  boolean $p_value\n     * @return boolean\n     */\n    public function setCommentsLocked($p_value)\n    {\n        $p_value = $p_value ? '1' : '0';\n\n        return $this->setProperty('comments_locked', $p_value);\n    } // fn setCommentsLocked\n\n\n    /**\n     * @return GeoMap\n     */\n    public function getMap()\n    {\n        return Geo_Map::GetMapByArticle($this->getArticleNumber());\n    }\n\n    /*****************************************************************/\n    /** Static Functions                                             */\n    /*****************************************************************/\n\n\n    /**\n     * Set the article workflow on issue status change. Articles to be\n     * published with the issue will be published on article publish.\n     * Published articles are set to \"publish with issue\" on issue\n     * unpublish.\n     *\n     * @param int $p_publicationId\n     * @param int $p_languageId\n     * @param int $p_issueNo\n     * @param int $p_publish\n     */\n    public static function OnIssuePublish($p_publicationId, $p_languageId,\n    $p_issueNo, $p_publish = true)\n    {\n        global $g_ado_db;\n\n        settype($p_publicationId, 'integer');\n        settype($p_languageId, 'integer');\n        settype($p_issueNo, 'integer');\n\n        $issueObj = new Issue($p_publicationId, $p_languageId, $p_issueNo);\n        if (!$issueObj->exists()) {\n            return false;\n        }\n\n        if (($issueObj->isPublished() && $p_publish)\n        || (!$issueObj->isPublished() && !$p_publish)) {\n            return false;\n        }\n\n        $fromState = $p_publish ? 'M' : 'Y';\n        $toState = $p_publish ? 'Y' : 'M';\n\n        $sql = \"UPDATE Articles SET Published = '$toState', PublishDate = NOW() WHERE \"\n        . \"IdPublication = $p_publicationId AND IdLanguage = $p_languageId\"\n        . \" AND NrIssue = $p_issueNo AND Published = '$fromState'\";\n        $res = $g_ado_db->Execute($sql);\n\n        CampCache::singleton()->clear('user');\n        if (CampTemplateCache::factory()) {\n            CampTemplateCache::factory()->update(array(\n                'language' => $p_languageId,\n                'publication' => $p_publicationId,\n                'issue' => $p_issueNo,\n                'section' => null,\n                'article' => null,\n            ));\n        }\n\n        return $res;\n    }\n\n\n    /**\n     * Return an Article object having the given number\n     * in the given publication, issue, section, language.\n     *\n     * @param int $p_articleNr\n     *                             The article number\n     * @param int $p_publicationId\n     *                             The publication identifier\n     * @param int $p_issueNr\n     *                             The issue number\n     * @param int $p_sectionNr\n     *                             The section number\n     * @param int $p_languageId\n     *                             The language identifier\n     *\n     * @return object|null\n     *                     An article object on success, null on failure\n     */\n    public static function GetByNumber($p_articleNr, $p_publicationId, $p_issueNr,\n                                       $p_sectionNr, $p_languageId)\n    {\n        global $g_ado_db;\n\n        $queryStr = 'SELECT * FROM Articles '\n            .'WHERE IdPublication='.$p_publicationId\n            .' AND NrIssue='.$p_issueNr\n            .' AND NrSection='.$p_sectionNr\n            .' AND IdLanguage='.$p_languageId\n            .' AND Number='.$p_articleNr;\n        $result = DbObjectArray::Create('Article', $queryStr);\n\n        return (is_array($result) && sizeof($result)) ? $result[0] : null;\n    } // fn GetByNumber\n\n\n    /**\n     * Return an array of article having the given name\n     * in the given publication / issue / section / language.\n     *\n     * @param string $p_name\n     * @param int    $p_publicationId\n     * @param int    $p_issueId\n     * @param int    $p_sectionId\n     * @param int    $p_languageId\n     *\n     * @return array\n     */\n    public static function GetByName($p_name, $p_publicationId = null, $p_issueId = null,\n                                     $p_sectionId = null, $p_languageId = null, $p_skipCache = false)\n    {\n        global $g_ado_db;\n        $queryStr = 'SELECT * FROM Articles';\n        $whereClause = array();\n        if (!is_null($p_publicationId)) {\n            $whereClause[] = \"IdPublication=$p_publicationId\";\n        }\n        if (!is_null($p_issueId)) {\n            $whereClause[] = \"NrIssue=$p_issueId\";\n        }\n        if (!is_null($p_sectionId)) {\n            $whereClause[] = \"NrSection=$p_sectionId\";\n        }\n        if (!is_null($p_languageId)) {\n            $whereClause[] = \"IdLanguage=$p_languageId\";\n        }\n        $whereClause[] = \"Name=\" . $g_ado_db->escape($p_name);\n        if (count($whereClause) > 0) {\n            $queryStr .= ' WHERE ' . implode(' AND ', $whereClause);\n        }\n\n        if (!$p_skipCache && CampCache::IsEnabled()) {\n            $paramsArray['get_by_name_where_clause'] = serialize($whereClause);\n            $cacheListObj = new CampCacheList($paramsArray, __METHOD__);\n            $articlesList = $cacheListObj->fetchFromCache();\n            if ($articlesList !== false && is_array($articlesList)) {\n                return $articlesList;\n            }\n        }\n\n        $articlesList = DbObjectArray::Create(\"Article\", $queryStr);\n\n        // stores articles list in cache\n        if (!$p_skipCache && CampCache::IsEnabled()) {\n            $cacheListObj->storeInCache($articlesList);\n        }\n\n        return $articlesList;\n    } // fn GetByName\n\n\n    /**\n     * Return the number of unique (language-independant) articles\n     * according to the given parameters.\n     * @param  int $p_publicationId\n     * @param  int $p_issueId\n     * @param  int $p_sectionId\n     * @return int\n     */\n    public static function GetNumUniqueArticles($p_publicationId = null, $p_issueId = null,\n                                                $p_sectionId = null)\n    {\n        global $g_ado_db;\n        $queryStr = 'SELECT COUNT(DISTINCT(Number)) FROM Articles';\n        $whereClause = array();\n        if (!is_null($p_publicationId)) {\n            $whereClause[] = \"IdPublication=$p_publicationId\";\n        }\n        if (!is_null($p_issueId)) {\n            $whereClause[] = \"NrIssue=$p_issueId\";\n        }\n        if (!is_null($p_sectionId)) {\n            $whereClause[] = \"NrSection=$p_sectionId\";\n        }\n        if (count($whereClause) > 0) {\n            $queryStr .= ' WHERE ' . implode(' AND ', $whereClause);\n        }\n        $result = $g_ado_db->GetOne($queryStr);\n\n        return $result;\n    } // fn GetNumUniqueArticles\n\n\n    /**\n     * Return an array of (array(Articles), int) where\n     * the array of articles are those written by the given user,\n     * within the given range, and the int is the total number of\n     * articles written by the user.\n     *\n     * @param int $p_userId\n     * @param int $p_start\n     * @param int $p_upperLimit\n     *\n     * @return array\n     */\n    public static function GetArticlesByUser($p_userId, $p_start = 0, $p_upperLimit = 20)\n    {\n        global $g_ado_db;\n        $queryStr = 'SELECT * FROM Articles '\n                    .\" WHERE IdUser=$p_userId\"\n                    .' ORDER BY Number DESC, IdLanguage '\n                    .\" LIMIT $p_start, $p_upperLimit\";\n        $query = $g_ado_db->Execute($queryStr);\n        $articles = array();\n        while ($row = $query->FetchRow()) {\n            $tmpArticle = new Article();\n            $tmpArticle->fetch($row);\n            $articles[] = $tmpArticle;\n        }\n        $queryStr = 'SELECT COUNT(*) FROM Articles '\n                    .\" WHERE IdUser=$p_userId\"\n                    .' ORDER BY Number DESC, IdLanguage ';\n        $totalArticles = $g_ado_db->GetOne($queryStr);\n\n        return array($articles, $totalArticles);\n    } // fn GetArticlesByUser\n\n\n    /**\n     * Get a list of submitted articles.\n     * Return an array of two elements: (array(Articles), int).\n     * The first element is an array of submitted articles.\n     * The second element is the total number of submitted articles.\n     *\n     * @param  int   $p_start\n     * @param  int   $p_upperLimit\n     * @return array\n     */\n    public static function GetSubmittedArticles($p_start = 0, $p_upperLimit = 20)\n    {\n        global $g_ado_db;\n        $tmpArticle = new Article();\n        $columnNames = $tmpArticle->getColumnNames(true);\n        $queryStr = 'SELECT '.implode(\", \", $columnNames)\n                    .' FROM Articles '\n                    .\" WHERE Published = 'S' \"\n                    .' ORDER BY Number DESC, IdLanguage '\n                    .\" LIMIT $p_start, $p_upperLimit\";\n        $query = $g_ado_db->Execute($queryStr);\n        $articles = array();\n        if ($query != false) {\n            while ($row = $query->FetchRow()) {\n                $tmpArticle = new Article();\n            $tmpArticle->fetch($row);\n            $articles[] = $tmpArticle;\n            }\n        }\n        $queryStr = 'SELECT COUNT(*) FROM Articles'\n                    .\" WHERE Published = 'S' \"\n                    .' ORDER BY Number DESC, IdLanguage ';\n        $totalArticles = $g_ado_db->GetOne($queryStr);\n\n        return array($articles, $totalArticles);\n    } // fn GetSubmittedArticles\n\n\n    /**\n     * Get the articles that have no publication/issue/section.\n     *\n     * @param  int   $p_start\n     * @param  int   $p_maxRows\n     * @return array\n     *                         An array of two elements:\n     *                         An array of articles and the total number of articles.\n     */\n    public static function GetUnplacedArticles($p_start = 0, $p_maxRows = 20)\n    {\n        global $g_ado_db;\n        $tmpArticle = new Article();\n        $columnNames = $tmpArticle->getColumnNames(true);\n        $queryStr = 'SELECT '.implode(\", \", $columnNames)\n        .' FROM Articles '\n        .\" WHERE IdPublication=0 AND NrIssue=0 AND NrSection=0 \"\n        .' ORDER BY Number DESC, IdLanguage '\n        .\" LIMIT $p_start, $p_maxRows\";\n        $query = $g_ado_db->Execute($queryStr);\n        $articles = array();\n        if ($query != false) {\n            while ($row = $query->FetchRow()) {\n                $tmpArticle = new Article();\n                $tmpArticle->fetch($row);\n                $articles[] = $tmpArticle;\n            }\n        }\n        $queryStr = 'SELECT COUNT(*) FROM Articles'\n        .\" WHERE IdPublication=0 AND NrIssue=0 AND NrSection=0 \";\n        $totalArticles = $g_ado_db->GetOne($queryStr);\n\n        return array($articles, $totalArticles);\n    } // fn GetUnplacedArticles\n\n\n    /**\n     * Get the list of all languages that articles have been written in.\n     * @return array\n     */\n    public static function GetAllLanguages()\n    {\n        $tmpLanguage = new Language();\n        $languageColumns = $tmpLanguage->getColumnNames(true);\n        $languageColumns = implode(\",\", $languageColumns);\n         $queryStr = 'SELECT DISTINCT(IdLanguage), '.$languageColumns\n                     .' FROM Articles, Languages '\n                     .' WHERE Articles.IdLanguage = Languages.Id';\n         $languages = DbObjectArray::Create('Language', $queryStr);\n\n        return $languages;\n    } // fn GetAllLanguages\n\n    /**\n     * Get a list of articles.  You can be as specific or as general as you\n     * like with the parameters: e.g. specifying only p_publication will get\n     * you all the articles in a particular publication.  Specifying all\n     * parameters will get you all the articles in a particular section with\n     * the given language.\n     *\n     * @param int $p_publicationId -\n     *                             The publication ID.\n     *\n     * @param int $p_issueNumber -\n     *                           The issue number.\n     *\n     * @param int $p_sectionNumber -\n     *                             The section number.\n     *\n     * @param int $p_languageId -\n     *                          The language ID.\n     *\n     * @param array $p_sqlOptions\n     *\n     * @param boolean $p_countOnly\n     *\n     * @return array\n     *               Return an array of Article objects with indexes in sequential order\n     *               starting from zero.\n     */\n    public static function GetArticles($p_publicationId = null, $p_issueNumber = null,\n                                       $p_sectionNumber = null, $p_languageId = null,\n                                       $p_sqlOptions = null, $p_countOnly = false,\n                                       $p_whereOptions = null)\n    {\n        global $g_ado_db;\n\n        $whereClause = array();\n        if (!is_null($p_publicationId)) {\n            $whereClause[] = \"IdPublication=$p_publicationId\";\n        }\n        if (!is_null($p_issueNumber)) {\n            $whereClause[] = \"NrIssue=$p_issueNumber\";\n        }\n        if (!is_null($p_sectionNumber)) {\n            $whereClause[] = \"NrSection=$p_sectionNumber\";\n        }\n        if (!is_null($p_languageId)) {\n            $whereClause[] = \"IdLanguage=$p_languageId\";\n        }\n        if (!is_null($p_whereOptions) && is_array($p_whereOptions)) {\n            foreach ($p_whereOptions as $key => $value) {\n                $whereClause[] = $value;\n            }\n        }\n\n        $selectStr = \"*\";\n        if ($p_countOnly) {\n            $selectStr = \"COUNT(*)\";\n        }\n        $queryStr = \"SELECT $selectStr FROM Articles\";\n\n        // Add the WHERE clause.\n        if ((count($whereClause) > 0)) {\n            $queryStr .= ' WHERE (' . implode(' AND ', $whereClause) .')';\n        }\n\n        if ($p_countOnly) {\n            $count = $g_ado_db->GetOne($queryStr);\n\n            return $count;\n        } else {\n            if (is_null($p_sqlOptions)) {\n                $p_sqlOptions = array();\n            }\n            if (!isset($p_sqlOptions['ORDER BY'])) {\n                $p_sqlOptions['ORDER BY'] = array(\"ArticleOrder\" => \"ASC\",\n                                                  \"Number\" => \"DESC\");\n            }\n            $queryStr = DatabaseObject::ProcessOptions($queryStr, $p_sqlOptions);\n            $articles = DbObjectArray::Create('Article', $queryStr);\n\n            return $articles;\n        }\n    } // fn GetArticles\n\n\n    /**\n     * Get a list of articles.  You can be as specific or as general as you\n     * like with the parameters: e.g. specifying only p_publication will get\n     * you all the articles in a particular publication.  Specifying all\n     * parameters will get you all the articles in a particular section with\n     * the given language.\n     *\n     * This function differs from GetArticles in that any LIMIT set\n     * in $p_sqlOptions will be interpreted as the number of articles to\n     * return regardless of how many times an article has been translated.\n     * E.g. an article translated three times would be counted as one\n     * article, but counted as three articles in GetArticles().\n     *\n     * @param int $p_publicationId -\n     *                             The publication ID.\n     *\n     * @param int $p_issueNumber -\n     *                           The issue number.\n     *\n     * @param int $p_sectionNumber -\n     *                             The section number.\n     *\n     * @param int $p_languageId -\n     *                          The language ID.\n     *\n     * @param int $p_preferredLanguage -\n     *                                 If specified, list the articles in this language before others.\n     *\n     * @param array $p_sqlOptions\n     *\n     * @param boolean $p_countOnly\n     *                             Whether to run just the number of articles that match the\n     *                             search criteria.\n     *\n     * @return array\n     *               Return an array of Article objects.\n     */\n    public static function GetArticlesGrouped($p_publicationId = null,\n                                              $p_issueNumber = null,\n                                              $p_sectionNumber = null,\n                                              $p_languageId = null,\n                                              $p_preferredLanguage = null,\n                                              $p_sqlOptions = null,\n                                              $p_countOnly = false)\n    {\n        global $g_ado_db;\n\n        // Constraints\n        $whereClause = array();\n        if (!is_null($p_publicationId)) {\n            $whereClause[] = \"IdPublication=$p_publicationId\";\n        }\n        if (!is_null($p_issueNumber)) {\n            $whereClause[] = \"NrIssue=$p_issueNumber\";\n        }\n        if (!is_null($p_sectionNumber)) {\n            $whereClause[] = \"NrSection=$p_sectionNumber\";\n        }\n        if (!is_null($p_languageId)) {\n            $whereClause[] = \"IdLanguage=$p_languageId\";\n        }\n\n        $selectStr = \"DISTINCT(Number)\";\n        if ($p_countOnly) {\n            $selectStr = \"COUNT(DISTINCT(Number))\";\n        }\n        // Get the list of unique article numbers\n        $queryStr1 = \"SELECT $selectStr FROM Articles \";\n        if (count($whereClause) > 0) {\n            $queryStr1 .= ' WHERE '. implode(' AND ', $whereClause);\n        }\n\n        if ($p_countOnly) {\n            $count = $g_ado_db->GetOne($queryStr1);\n\n            return $count;\n        }\n\n        if (is_null($p_sqlOptions)) {\n            $p_sqlOptions = array();\n        }\n        if (!isset($p_sqlOptions['ORDER BY'])) {\n            $p_sqlOptions['ORDER BY'] = array(\"ArticleOrder\" => \"ASC\",\n                                              \"Number\"=> \"DESC\");\n        }\n        $queryStr1 = DatabaseObject::ProcessOptions($queryStr1, $p_sqlOptions);\n        $uniqueArticleNumbers = $g_ado_db->GetCol($queryStr1);\n\n        // Get the articles\n        $queryStr2 = 'SELECT *';\n        // This causes the preferred language to be listed first.\n        if (!is_null($p_preferredLanguage)) {\n            $queryStr2 .= \", abs($p_preferredLanguage - CAST(IdLanguage AS SIGNED)) as LanguageOrder \";\n        }\n        $queryStr2 .= ' FROM Articles';\n\n        $uniqueRowsClause = '';\n        if (count($uniqueArticleNumbers) > 0) {\n            $uniqueRowsClause = '(Number=' .implode(' OR Number=', $uniqueArticleNumbers).')';\n        }\n\n        // Add the WHERE clause.\n        if ((count($whereClause) > 0) || ($uniqueRowsClause != '')) {\n            $queryStr2 .= ' WHERE ';\n            if (count($whereClause) > 0) {\n                $queryStr2 .= '(' . implode(' AND ', $whereClause) .')';\n            }\n            if ($uniqueRowsClause != '') {\n                if (count($whereClause) > 0) {\n                    $queryStr2 .= ' AND ';\n                }\n                $queryStr2 .= $uniqueRowsClause;\n            }\n        }\n\n        // ORDER BY clause\n        if (!is_null($p_preferredLanguage)) {\n            $p_sqlOptions['ORDER BY']['LanguageOrder'] = \"ASC\";\n            $p_sqlOptions['ORDER BY']['IdLanguage'] = \"ASC\";\n        }\n        unset($p_sqlOptions['LIMIT']);\n        $queryStr2 = DatabaseObject::ProcessOptions($queryStr2, $p_sqlOptions);\n        $articles = DbObjectArray::Create('Article', $queryStr2);\n\n        return $articles;\n    } // fn GetUniqueArticles\n\n\n    /**\n     * Return the number of articles of the given type.\n     * @param  string $p_type\n     *                        Article Type\n     * @return int\n     */\n    public static function GetNumArticlesOfType($p_type)\n    {\n        $articleType = new ArticleType($p_type);\n        if (!$articleType->exists()) {\n            return false;\n        }\n\n        return $articleType->getNumArticles();\n    } // fn GetNumArticlesOfType\n\n\n    /**\n     * Return an array of article objects of a certain type.\n     *\n     * @param string p_type\n     *\n     * @return array\n     */\n    public static function GetArticlesOfType($p_type)\n    {\n        global $g_ado_db;\n        $sql = \"SELECT * FROM Articles WHERE Type = \" . $g_ado_db->escape($p_type);\n        $articles = DbObjectArray::Create('Article', $sql);\n\n        return $articles;\n    } // fn GetArticlesOfType\n\n\n    /**\n     * Get the $p_max number of the most recently published articles.\n     * @param  int   $p_max\n     * @return array\n     */\n    public static function GetRecentArticles($p_max)\n    {\n        $queryStr = \"SELECT * FROM Articles \"\n                   .\" WHERE Published='Y'\"\n                   .\" ORDER BY PublishDate DESC\"\n                   .\" LIMIT $p_max\";\n        $result = DbObjectArray::Create('Article', $queryStr);\n\n        return $result;\n    } // fn GetRecentArticles\n\n\n    /**\n     * Get the $p_max number of the most recently modified articles.\n     * @param  int   $p_max\n     * @return array\n     */\n    public static function GetRecentlyModifiedArticles($p_max)\n    {\n        $queryStr = \"SELECT * FROM Articles \"\n                   .\" ORDER BY time_updated DESC\"\n                   .\" LIMIT $p_max\";\n        $result = DbObjectArray::Create('Article', $queryStr);\n\n        return $result;\n    } // fn GetRecentlyModifiedArticles\n\n\n    /**\n     * @param int $p_publicationId\n     *\n     * @param int $p_languageId\n     *\n     *\n     * @return mixed\n     *               array of issue publication dates\n     *               null if query does not match any issue\n     */\n    public static function GetPublicationDates($p_publicationId,\n                           $p_languageId,\n                           $p_skipCache = false)\n    {\n        global $g_ado_db;\n        $queryStr = 'SELECT Number FROM Articles '\n            . 'WHERE IdPublication = ' . $p_publicationId . ' AND '\n            . 'IdLanguage = ' . $p_languageId . \" AND Published = 'Y' \"\n            . 'GROUP BY PublishDate ORDER BY PublishDate';\n        $rows = $g_ado_db->GetAll($queryStr);\n\n        $dates = array();\n        if (is_array($rows)) {\n            foreach ($rows as $row) {\n            $tmpObj = new Article($p_languageId, $row['Number']);\n            if ($tmpObj->exists()) {\n                $dates[] = $tmpObj->getPublishDate();\n            }\n            }\n        }\n        if (empty($dates)) {\n            return null;\n        }\n\n        return array_unique($dates);\n    } // fn GetPublicationDates\n\n\n    /**\n     * Unlock all articles by the given user.\n     * @param  int  $p_userId\n     * @return void\n     */\n    public static function UnlockByUser($p_userId)\n    {\n        global $g_ado_db;\n        $queryStr = 'UPDATE Articles SET LockUser= NULL, LockTime= NULL, time_updated=time_updated'\n                    .\" WHERE LockUser=$p_userId\";\n        $g_ado_db->Execute($queryStr);\n    } // fn UnlockByUser\n\n\n    /**\n     * Returns an articles list based on the given parameters.\n     *\n     * @param array   $p_parameters\n     *                              An array of ComparisonOperation objects\n     * @param string  $p_order\n     *                              An array of columns and directions to order by\n     * @param integer $p_start\n     *                              The record number to start the list\n     * @param integer $p_limit\n     *                              The offset. How many records from $p_start will be retrieved.\n     * @param integer $p_count\n     *                              The total count of the elements; this count is computed without\n     *                              applying the start ($p_start) and limit parameters ($p_limit)\n     *\n     * @return array $articlesList\n     *               An array of Article objects\n     */\n    public static function GetList(array $p_parameters, $p_order = null,\n                                   $p_start = 0, $p_limit = 0, &$p_count, $p_skipCache = false, $returnObjs = true)\n    {\n        global $g_ado_db;\n\n        if (!$p_skipCache && CampCache::IsEnabled()) {\n            $paramsArray['parameters'] = serialize($p_parameters);\n            $paramsArray['order'] = (is_null($p_order)) ? 'null' : $p_order;\n            $paramsArray['start'] = $p_start;\n            $paramsArray['limit'] = $p_limit;\n            $cacheListObj = new CampCacheList($paramsArray, __METHOD__);\n            $articlesList = $cacheListObj->fetchFromCache();\n            if ($articlesList !== false && is_array($articlesList)) {\n                return $articlesList;\n            }\n        }\n\n        $matchAllTopics = false;\n        $hasTopics = array();\n        $hasNotTopics = array();\n        $selectClauseObj = new SQLSelectClause();\n        $otherTables = array();\n\n        // sets the name of the table for the this database object\n        $tmpArticle = new Article();\n        $articleTable = $tmpArticle->getDbTableName();\n        $selectClauseObj->setTable($articleTable);\n        unset($tmpArticle);\n\n        $languageId = null;\n\n        $em = Zend_Registry::get('container')->getService('em');\n        $repository = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic');\n\n        // parses the given parameters in order to build the WHERE part of\n        // the SQL SELECT sentence\n\n        foreach ($p_parameters as $param) {\n            $comparisonOperation = self::ProcessListParameters($param, $otherTables);\n            $leftOperand = strtolower($comparisonOperation['left']);\n            if ($leftOperand == 'idlanguage' && $comparisonOperation['symbol'] == '=') {\n                $languageId = $comparisonOperation['right'];\n            }\n\n            if (array_key_exists($leftOperand, Article::$s_regularParameters)) {\n                // regular article field, having a direct correspondent in the\n                // Article table fields\n\n                if ($comparisonOperation['symbol'] == 'IN') {\n                    $rightOperand = $comparisonOperation['right'];\n                } else {\n                    $rightOperand = $g_ado_db->escape($comparisonOperation['right']);\n                }\n\n                $whereCondition = Article::$s_regularParameters[$leftOperand]\n                    . ' ' . $comparisonOperation['symbol']\n                    . \" \" . $rightOperand . \" \";\n                if ($leftOperand == 'reads'\n                && strstr($comparisonOperation['symbol'], '=') !== false\n                && $comparisonOperation['right'] == 0) {\n                    $selectClauseObj->addConditionalWhere($whereCondition);\n                    $isNullCond = Article::$s_regularParameters[$leftOperand]\n                                . ' IS NULL';\n                    $selectClauseObj->addConditionalWhere($isNullCond);\n                } elseif ($leftOperand == 'type' && $comparisonOperation['symbol'] == '=') {\n                    $selectClauseObj->addConditionalWhere($whereCondition);\n                } elseif ($leftOperand == 'workflow_status'\n                && isset($comparisonOperation['pending'])) {\n                    $selectClauseObj->addConditionalWhere('Articles.NrIssue = 0');\n                    $selectClauseObj->addConditionalWhere('Articles.NrSection = 0');\n                    $selectClauseObj->addWhere($whereCondition);\n                } else {\n                    $selectClauseObj->addWhere($whereCondition);\n                }\n            } elseif ($leftOperand == 'matchalltopics') {\n                // set the matchAllTopics flag\n                $matchAllTopics = true;\n            } elseif ($leftOperand == 'topic') {\n                // add the topic to the list of match/do not match topics depending\n                // on the operator\n                $topic = $repository->getTopicByIdOrName($comparisonOperation['right'])->getOneOrNullResult();\n                if ($topic) {\n                    $topicIds = array();\n                    foreach($topic->getChildren() as $child) {\n                        $topicIds[] = $child->getId();\n                    }\n\n                    $topicIds[] = $comparisonOperation['right'];\n                    if ($comparisonOperation['symbol'] == '=') {\n                        $hasTopics[] = $topicIds;\n                    } else {\n                        $hasNotTopics[] = $topicIds;\n                    }\n                }\n            } elseif ($leftOperand == 'topic_strict') {\n                $topic = $repository->getTopicByIdOrName($comparisonOperation['right'])->getOneOrNullResult();\n                if ($topic) {\n                    $topicIds[] = $comparisonOperation['right'];\n                    if ($comparisonOperation['symbol'] == '=') {\n                        $hasTopics[] = $topicIds;\n                    } else {\n                        $hasNotTopics[] = $topicIds;\n                    }\n                }\n            } elseif ($leftOperand == 'author') {\n                $otherTables['ArticleAuthors'] = array('__JOIN' => ',');\n                $author = Author::ReadName($comparisonOperation['right']);\n                $symbol = $comparisonOperation['symbol'];\n                $valModifier = strtolower($symbol) == 'like' ? '%' : '';\n\n                $firstName = trim(trim($g_ado_db->escape($author['first_name']), \"'\"));\n                $lastName = trim(trim($g_ado_db->escape($author['last_name']), \"'\"));\n\n                $authors = $g_ado_db->GetAll(\"\n                    SELECT Authors.id\n                    FROM Authors\n                    WHERE CONCAT(Authors.first_name, ' ', Authors.last_name) $symbol\n                         '$valModifier$firstName $lastName$valModifier'\n                \");\n\n                $authorsIds = array();\n                foreach ($authors as $author) {\n                    $authorsIds[] = $author['id'];\n                }\n\n                $whereCondition = \"ArticleAuthors.fk_author_id IN (\".implode(',', $authorsIds).\")\";\n                $selectClauseObj->addWhere($whereCondition);\n                $selectClauseObj->addWhere('Articles.Number = ArticleAuthors.fk_article_number');\n                $selectClauseObj->addWhere('Articles.IdLanguage = ArticleAuthors.fk_language_id');\n            } elseif ($leftOperand == 'search_phrase') {\n                $searchQuery = ArticleIndex::SearchQuery($comparisonOperation['right'], $comparisonOperation['symbol']);\n                if (!empty($searchQuery)) {\n                    $otherTables[\"($searchQuery)\"] = array('__TABLE_ALIAS'=>'search',\n                                                           '__JOIN'=>'INNER JOIN',\n                                                           'Number'=>'NrArticle',\n                                                           'IdLanguage'=>'IdLanguage');\n                }\n            } elseif ($leftOperand == 'location') {\n                $num = '[-+]?[0-9]+(?:\\.[0-9]+)?';\n                if (preg_match(\"/($num) ($num), ($num) ($num)/\",\n                    trim($comparisonOperation['right']), $matches)) {\n                    $queryLocation = Geo_Map::GetGeoSearchSQLQuery(array(\n                        array(\n                            'latitude' => $matches[1],\n                            'longitude' => $matches[2],\n                        ), array(\n                            'latitude' => $matches[3],\n                            'longitude' => $matches[4],\n                        ),\n                    ));\n                    $selectClauseObj->addWhere(\"Articles.Number IN ($queryLocation)\");\n                }\n            } elseif ($leftOperand == 'insection') {\n                $selectClauseObj->addWhere(\"Articles.NrSection IN \" . $comparisonOperation['right']);\n            } elseif ($leftOperand == 'complex_date') {\n                /* @var $param ComparisonOperation */\n                $fieldName = key(($roper = $param->getRightOperand()));\n                $searchValues = array();\n                foreach ( explode(\",\", current($roper)) as $values) {\n                    list($key, $value) = explode(\":\", $values, 2);\n                    $searchValues[preg_replace(\"`(?<=[a-z])(_([a-z]))`e\",\"strtoupper('\\\\2')\",trim($key))] = trim($value);\n                }\n                $repo = Zend_Registry::get('container')->getService('em')->getRepository('Newscoop\\Entity\\ArticleDatetime');\n                /* @var $repo \\Newscoop\\Entity\\Repository\\ArticleRepository */\n                $searchValues['fieldName'] = $fieldName;\n                $sqlQuery = $repo->findDates((object) $searchValues, true)->getFindDatesSQL('dt.articleId');\n                if (!is_null($sqlQuery)) {\n                    $whereCondition = \"Articles.Number IN (\\n$sqlQuery)\";\n                    $selectClauseObj->addWhere($whereCondition);\n                }\n            } else {\n                // custom article field; has a correspondence in the X[type]\n                // table fields\n                $sqlQuery = self::ProcessCustomField($comparisonOperation, $languageId);\n                if (!is_null($sqlQuery)) {\n                    $whereCondition = \"Articles.Number IN (\\n$sqlQuery        )\";\n                    $selectClauseObj->addWhere($whereCondition);\n                }\n            }\n        }\n\n        if (count($hasTopics) > 0 || count($hasNotTopics) > 0) {\n            $typeAttributes = ArticleTypeField::FetchFields(null, null, 'topic', false,\n            false, false, true, $p_skipCache);\n        }\n        if (count($hasTopics) > 0) {\n            if ($matchAllTopics) {\n                foreach ($hasTopics as $topicId) {\n                    $sqlQuery = Article::BuildTopicSelectClause($topicId, $typeAttributes);\n                    $whereCondition = \"Articles.Number IN (\\n$sqlQuery        )\";\n                    $selectClauseObj->addWhere($whereCondition);\n                }\n            } else {\n                $sqlQuery = Article::BuildTopicSelectClause($hasTopics, $typeAttributes);\n                $whereCondition = \"Articles.Number IN (\\n$sqlQuery        )\";\n                $selectClauseObj->addWhere($whereCondition);\n            }\n        }\n        if (count($hasNotTopics) > 0) {\n            $sqlQuery = Article::BuildTopicSelectClause($hasNotTopics, $typeAttributes);\n            $whereCondition = \"Articles.Number NOT IN (\\n$sqlQuery        )\";\n            $selectClauseObj->addWhere($whereCondition);\n        }\n\n        // create the count clause object\n        $countClauseObj = clone $selectClauseObj;\n\n        if (!is_array($p_order)) {\n            $p_order = array();\n        }\n\n        // sets the ORDER BY condition\n        $p_order = array_merge($p_order, Article::$s_defaultOrder);\n        $order = Article::ProcessListOrder($p_order, $otherTables, $otherWhereConditions);\n        foreach ($order as $orderDesc) {\n            $orderColumn = $orderDesc['field'];\n            $orderDirection = $orderDesc['dir'];\n            $selectClauseObj->addOrderBy($orderColumn . ' ' . $orderDirection);\n        }\n        if (count($otherTables) > 0) {\n            foreach ($otherTables as $table=>$fields) {\n                $joinType = 'LEFT JOIN';\n                if (isset($fields['__JOIN'])) {\n                    $joinType = $fields['__JOIN'];\n                }\n                if (isset($fields['__TABLE_ALIAS'])) {\n                    $tableAlias = $fields['__TABLE_ALIAS'];\n                    $tableJoin = \"\\n    $joinType $table AS $tableAlias \\n\";\n                } else {\n                    $tableAlias = $table;\n                    $tableJoin = \"\\n    $joinType $tableAlias \\n\";\n                }\n                $firstCondition = true;\n                foreach ($fields as $parent=>$child) {\n                    if ($parent == '__TABLE_ALIAS' || $parent == '__JOIN') {\n                        continue;\n                    }\n                    $condOperator = $firstCondition ? ' ON ' : 'AND ';\n                    if ($parent == '__CONST') {\n                        $constTable = $child['table'];\n                        $constField = $child['field'];\n                        $value = $child['value'];\n                        $negate = isset($child['negate']) ? $child['negate'] : false;\n                        if (is_null($value)) {\n                            $operator = $negate ? 'IS NOT' : 'IS';\n                            $value = 'NULL';\n                        } else {\n                            $operator = $negate ? '!=' : '=';\n                            $value = $g_ado_db->escape($value);\n                        }\n                        $tableJoin .= \"        $condOperator`$constTable`.`$constField` $operator $value\\n\";\n                    } else {\n                        $tableJoin .= \"        $condOperator`$articleTable`.`$parent` = `$tableAlias`.`$child`\\n\";\n                    }\n                    $firstCondition = false;\n                }\n                $selectClauseObj->addJoin($tableJoin);\n                $countClauseObj->addJoin($tableJoin);\n            }\n        }\n        // other where conditions needed for certain order options\n        foreach ($otherWhereConditions as $whereCondition) {\n            $selectClauseObj->addWhere($whereCondition);\n            $countClauseObj->addWhere($whereCondition);\n        }\n\n        // gets the column list to be retrieved for the database table\n        $selectClauseObj->addColumn('Articles.Number');\n        $selectClauseObj->addColumn('Articles.IdLanguage');\n        $countClauseObj->addColumn('COUNT(*)');\n\n        // sets the LIMIT start and offset values\n        $selectClauseObj->setLimit($p_start, $p_limit);\n\n        // builds the SQL query\n        $selectQuery = $selectClauseObj->buildQuery();\n        $countQuery = $countClauseObj->buildQuery();\n\n        // runs the SQL query\n        $articles = $g_ado_db->GetAll($selectQuery);\n        if (is_array($articles)) {\n            $p_count = $g_ado_db->GetOne($countQuery);\n\n            // builds the array of Article objects\n            $articlesList = array();\n            foreach ($articles as $article) {\n                if ($returnObjs) {\n                    $articlesList[] = new Article($article['IdLanguage'], $article['Number']);\n                } else {\n                    $articlesList[] = array('language_id'=>$article['IdLanguage'], 'number'=>$article['Number']);\n                }\n            }\n        } else {\n            $articlesList = array();\n            $p_count = 0;\n        }\n\n        // stores articles list in cache\n        if (!$p_skipCache && CampCache::IsEnabled()) {\n            $cacheListObj->storeInCache($articlesList);\n        }\n\n        return $articlesList;\n    } // fn GetList\n\n    /**\n     * Get total articles count in db.\n     *\n     * @return int\n     */\n    public static function GetTotalCount()\n    {\n        global $g_ado_db;\n\n        $sql = 'SELECT COUNT(*) FROM Articles';\n\n        return $g_ado_db->GetOne($sql);\n    }\n\n    private static function ProcessCustomField(array $p_comparisonOperation, $p_languageId = null)\n    {\n        global $g_ado_db;\n\n        $fieldName = $p_comparisonOperation['left'];\n        $fieldParts = preg_split('/\\./', $fieldName);\n        if (count($fieldParts) > 1) {\n            $fieldName = $fieldParts[1];\n            $articleType = $fieldParts[0];\n            $field = new ArticleTypeField($articleType, $fieldName);\n            if (!$field->exists()) {\n                return null;\n            }\n            $fields = array($field);\n        } else {\n            $articleType = null;\n            $fields = ArticleTypeField::FetchFields($fieldName, $articleType,\n            null, false, false, false, true, true);\n            if (count($fields) == 0) {\n                return null;\n            }\n        }\n        $queries = array();\n        foreach ($fields as $fieldObj) {\n            $query = '        SELECT NrArticle FROM `X' . $fieldObj->getArticleType()\n                   . '` WHERE ' . $fieldObj->getName() . ' '\n                   . $p_comparisonOperation['symbol']\n                   . \" \" . $g_ado_db->escape($p_comparisonOperation['right']);\n            if (!is_null($p_languageId)) {\n                $query .= \" AND IdLanguage = \" . $g_ado_db->escape($p_languageId);\n            }\n            $query .= \"\\n\";\n            $queries[] = $query;\n        }\n        if (count($queries) == 0) {\n            return null;\n        }\n\n        return implode(\"        union\\n\", $queries);\n    }\n\n\n    /**\n     *\n     */\n    private static function ProcessListParameters($p_param, array &$p_otherTables = array())\n    {\n        $conditionOperation = array();\n\n        $leftOperand = strtolower($p_param->getLeftOperand());\n        $conditionOperation['left'] = $leftOperand;\n        switch ($leftOperand) {\n        case 'keyword':\n            $conditionOperation['symbol'] = 'LIKE';\n            $conditionOperation['right'] = $p_param->getRightOperand().'%';\n            break;\n        case 'onfrontpage':\n            $conditionOperation['right'] = ($p_param->getRightOperand() == 1) ? 'Y' : 'N';\n            break;\n        case 'onsection':\n            $conditionOperation['right'] = ($p_param->getRightOperand() == 1) ? 'Y' : 'N';\n            break;\n        case 'public':\n            $conditionOperation['right'] = ($p_param->getRightOperand() == 1) ? 'Y' : 'N';\n            break;\n        case 'matchalltopics':\n            $conditionOperation['symbol'] = '=';\n            $conditionOperation['right'] = 'true';\n            break;\n        case 'topic':\n            $conditionOperation['right'] = (string) $p_param->getRightOperand();\n            break;\n        case 'published':\n            if (strtolower($p_param->getRightOperand()) == 'true') {\n                $conditionOperation['symbol'] = '=';\n                $conditionOperation['right'] =  'Y';\n            }\n            break;\n        case 'workflow_status':\n            $conditionOperation['symbol'] = '=';\n            switch (strtolower($p_param->getRightOperand())) {\n            case 'pending':\n                $conditionOperation['pending'] = true;\n            case 'new':\n                $conditionOperation['right'] = 'N';\n                break;\n            case 'published':\n                $conditionOperation['right'] = 'Y';\n                break;\n            case 'submitted':\n                $conditionOperation['right'] = 'S';\n                break;\n            case 'withissue':\n                $conditionOperation['right'] = 'M';\n                break;\n            }\n            break;\n        case 'issue_published':\n            $p_otherTables['Issues'] = array('IdPublication'=>'IdPublication',\n            'NrIssue'=>'Number', 'IdLanguage'=>'IdLanguage');\n            $conditionOperation['symbol'] = '=';\n            $conditionOperation['right'] = 'Y';\n            break;\n\n        case 'insection':\n            $conditionOperation = array(\n                'left' => 'insection',\n                'symbol' => 'IN',\n                'right' => '(' . implode(',', array_map('intval', explode('|', $p_param->getRightOperand()))) . ')',\n            );\n            break;\n\n        case 'reads':\n            $p_otherTables['RequestObjects'] = array('object_id'=>'object_id');\n        default:\n            $conditionOperation['right'] = (string) $p_param->getRightOperand();\n            break;\n        }\n\n        if (!isset($conditionOperation['symbol'])) {\n            $operatorObj = $p_param->getOperator();\n            $conditionOperation['symbol'] = $operatorObj->getSymbol('sql');\n        }\n\n        return $conditionOperation;\n    } // fn ProcessListParameters\n\n\n    /**\n     * Returns a select query for obtaining the articles that have the given topics\n     *\n     * @param  array  $p_TopicIds\n     * @param  array  $p_typeAttributes\n     * @param  bool   $p_negate\n     * @return string\n     */\n    private static function BuildTopicSelectClause(array $p_TopicIds,\n                                                   array $p_typeAttributes,\n                                                   $p_negate = false)\n    {\n        $topicIds = array();\n        foreach ($p_TopicIds as $topicId) {\n            if (is_array($topicId)) {\n                $topicIds = array_merge($topicIds, $topicId);\n            } else {\n                $topicIds[] = $topicId;\n            }\n        }\n        $notCondition = $p_negate ? ' NOT' : '';\n        if (!$p_negate) {\n            $selectClause = '        SELECT NrArticle FROM ArticleTopics WHERE TopicId'\n                          . ' IN (' . implode(', ', $topicIds) . \")\\n\";\n        } else {\n            $selectClause = \"        SELECT a.Number\\n\"\n                          . \"        FROM Articles AS a LEFT JOIN ArticleTopics AS at\\n\"\n                          . \"          ON a.Number = at.NrArticle\\n\"\n                          . \"        WHERE TopicId IS NULL OR TopicId NOT IN (\"\n                          . implode(', ', $topicIds) . \")\\n\";\n        }\n        foreach ($p_typeAttributes as $typeAttribute) {\n            $selectClause .= \"        UNION\\n\"\n                          . \"        SELECT NrArticle FROM `X\" . $typeAttribute->getArticleType() . '`'\n                          . \" WHERE \" . $typeAttribute->getName()\n                          . \"$notCondition IN (\" . implode(', ', $topicIds) . \")\\n\";\n        }\n\n        return $selectClause;\n    }\n\n\n    /**\n     * Performs a search against the article content using the given\n     * keywords. Returns the list of articles matching the given criteria.\n     *\n     * @param  string $p_searchPhrase\n     * @param  string $p_fieldName    - may be 'title' or 'author'\n     * @param  bool   $p_matchAll     - true if all keyword have to match\n     * @param  array  $p_constraints\n     * @param  array  $p_order\n     * @param  int    $p_start        - return results starting from the given order number\n     * @param  int    $p_limit        - return at most $p_limit rows\n     * @param  int    $p_count        - sets $p_count to the total number of rows in the search\n     * @param  bool   $p_countOnly    - if true returns only the total number of rows\n     * @return array\n     */\n    public static function SearchByKeyword($p_searchPhrase,\n                                           $p_matchAll = false,\n                                           array $p_constraints = array(),\n                                           array $p_order = array(),\n                                           $p_start = 0,\n                                           $p_limit = 0,\n                                           &$p_count,\n                                           $p_countOnly = false)\n    {\n        global $g_ado_db;\n\n        $selectClauseObj = new SQLSelectClause();\n\n        // set tables and joins between tables\n        $selectClauseObj->setTable('Articles');\n\n        if ($p_matchAll) {\n            $p_searchPhrase = '__match_all ' . $p_searchPhrase;\n        }\n        $searchQuery = ArticleIndex::SearchQuery($p_searchPhrase);\n        if (empty($searchQuery)) {\n            $p_count = 0;\n\n            return array();\n        }\n        $selectClauseObj->addJoin(\"INNER JOIN ($searchQuery) AS search ON Articles.Number = search.NrArticle\"\n        . \" AND Articles.IdLanguage = search.IdLanguage\");\n\n        $joinTables = array();\n        // set other constraints\n        foreach ($p_constraints as $constraint) {\n            $leftOperand = $constraint->getLeftOperand();\n            $operandAttributes = explode('.', $leftOperand);\n            if (count($operandAttributes) == 2) {\n                $table = trim($operandAttributes[0]);\n                if (strtolower($table) != 'articles') {\n                    $joinTables[] = $table;\n                }\n            }\n            $symbol = $constraint->getOperator()->getSymbol('sql');\n            $rightOperand = $g_ado_db->escape($constraint->getRightOperand());\n            $selectClauseObj->addWhere(\"$leftOperand $symbol $rightOperand\");\n        }\n        foreach ($joinTables as $table) {\n            $selectClauseObj->addJoin(\"LEFT JOIN $table ON Articles.Number = $table.NrArticle\");\n        }\n\n        // create the count clause object\n        $countClauseObj = clone $selectClauseObj;\n\n        // set the columns for the select clause\n        $selectClauseObj->addColumn('Articles.Number');\n        $selectClauseObj->addColumn('Articles.IdLanguage');\n\n        // set the order for the select clause\n        $p_order = count($p_order) > 0 ? $p_order : Article::$s_defaultOrder;\n        $order = Article::ProcessListOrder($p_order);\n        foreach ($order as $orderDesc) {\n            $orderField = $orderDesc['field'];\n            $orderDirection = $orderDesc['dir'];\n            $selectClauseObj->addOrderBy($orderField . ' ' . $orderDirection);\n        }\n\n        // sets the LIMIT start and offset values\n        $selectClauseObj->setLimit($p_start, $p_limit);\n\n        // set the column for the count clause\n        $countClauseObj->addColumn('COUNT(*)');\n\n        $articlesList = array();\n        if (!$p_countOnly) {\n            $selectQuery = $selectClauseObj->buildQuery();\n            $articles = $g_ado_db->GetAll($selectQuery);\n            foreach ($articles as $article) {\n                $articlesList[] = array('language_id'=>$article['IdLanguage'], 'number'=>$article['Number']);\n            }\n        }\n        $countQuery = $countClauseObj->buildQuery();\n        $p_count = $g_ado_db->GetOne($countQuery);\n\n        return $articlesList;\n    }\n\n\n    /**\n     * Processes an order directive coming from template tags.\n     *\n     * @param array $p_order\n     *                       The array of order directives in the format:\n     *                       array('field'=>field_name, 'dir'=>order_direction)\n     *                       field_name can take one of the following values:\n     *                       bynumber, byname, bydate, bycreationdate, bypublishdate,\n     *                       bypublication, byissue, bysection, bylanguage, bysectionorder,\n     *                       bypopularity, bycomments\n     *                       order_direction can take one of the following values:\n     *                       asc, desc\n     *\n     * @return array\n     *               The array containing processed values of the condition\n     */\n    private static function ProcessListOrder(array $p_order, array &$p_otherTables = array(),\n    &$p_whereConditions = array())\n    {\n        if (!is_array($p_whereConditions)) {\n            $p_whereConditions = array();\n        }\n        $order = array();\n        foreach ($p_order as $orderDesc) {\n            $field = $orderDesc['field'];\n            $direction = $orderDesc['dir'];\n            $dbField = null;\n            switch (strtolower($field)) {\n                case 'bynumber':\n                    $dbField = 'Articles.Number';\n                    break;\n                case 'byname':\n                    $dbField = 'Articles.Name';\n                    break;\n                case 'bydate':\n                case 'bycreationdate':\n                    $dbField = 'Articles.UploadDate';\n                    break;\n                case 'bypublishdate':\n                    $dbField = 'Articles.PublishDate';\n                    break;\n                case 'bylastupdate':\n                    $dbField = 'Articles.time_updated';\n                    break;\n                case 'bypublication':\n                    $dbField = 'Articles.IdPublication';\n                    break;\n                case 'bystatus':\n                    $dbField = 'Articles.Published';\n                    break;\n                case 'byissue':\n                    $dbField = 'Articles.NrIssue';\n                    break;\n                case 'bysection':\n                    $dbField = 'Articles.NrSection';\n                    break;\n                case 'bylanguage':\n                    $dbField = 'Articles.IdLanguage';\n                    break;\n                case 'bysectionorder':\n                    $dbField = 'Articles.ArticleOrder';\n                    break;\n                case 'bypopularity':\n                    $dbField = 'RequestObjects.request_count';\n                    $p_otherTables['RequestObjects'] = array('object_id'=>'object_id');\n                    break;\n                case 'bykeywords':\n                    $dbField = 'Articles.Keywords';\n                    break;\n                case 'bycomments':\n                    //@todo change this with DOCTRINE2 when refactor\n                    $dbField = 'comments_counter.comments_count';\n                    $joinTable = \"(SELECT COUNT(*) AS comments_count, `fk_thread_id` AS `fk_article_number`, fk_language_id \\n\"\n                               . \"    FROM `comment` `c` \\n\"\n                               . \"    WHERE c.status = 0 \\n\"\n                               . '    GROUP BY fk_thread_id, fk_language_id)';\n                    $p_otherTables[$joinTable] = array('__TABLE_ALIAS'=>'comments_counter',\n                                                       'Number'=>'fk_article_number',\n                                                       'IdLanguage'=>'fk_language_id');\n                    break;\n                case 'bylastcomment':\n                    //@todo change this with DOCTRINE2 when refactor\n                    $dbField = 'comment_ids.last_comment_id';\n                    $joinTable = \"(SELECT MAX(id) AS last_comment_id, `fk_thread_id` AS `fk_article_number`, fk_language_id \\n\"\n                               . \"    FROM comment c \\n\"\n                               . \"    WHERE c.status = 0 \\n\"\n                               . \"    GROUP BY fk_thread_id, fk_language_id)\";\n                    $p_otherTables[$joinTable] =  array('__TABLE_ALIAS'=>'comment_ids',\n                                                        'Number'=>'fk_article_number',\n                                                        'IdLanguage'=>'fk_language_id');\n                    $p_whereConditions[] = \"`comment_ids`.`last_comment_id` IS NOT NULL\";\n                    break;\n                case 'byauthor':\n                    //@todo change this with DOCTRINE2 when refactor\n                    $dbField = 'article_authors.last_name';\n                    $joinTable = \"(SELECT CONCAT_WS(' ', a.last_name, a.first_name) AS name, a.last_name AS last_name, aa.fk_article_number, aa.fk_language_id \\n\"\n                               . \"    FROM ArticleAuthors aa, Authors a \\n\"\n                               . \"    WHERE aa.fk_author_id = a.id \\n\"\n                               . \"    AND aa.fk_type_id = 1 \\n\"\n                               . \"    AND (aa.order = 1 OR aa.order IS NULL) \\n\"\n                               . \"    ORDER BY aa.order ASC \\n\"\n                               . \"    )\"; // Only sort by first author\n                    $p_otherTables[$joinTable] =  array('__TABLE_ALIAS'=>'article_authors',\n                                                        'Number'=>'fk_article_number',\n                                                        'IdLanguage'=>'fk_language_id');\n                    $p_whereConditions[] = \"`article_authors`.`name` IS NOT NULL\";\n                    break;\n                default: // 'bycustom.ci/cs/num.Frep_news_paid.0\n                    $field_parts = self::CheckCustomOrder($field);\n                    if (!$field_parts['status']) {\n                        break;\n                    }\n\n                    $dbField = self::GetCustomOrder($field_parts['field_type'], null, $field_parts['field_name'], $field_parts['default_value']);\n                    break;\n            }\n            if (!is_null($dbField)) {\n                $direction = !empty($direction) ? $direction : 'asc';\n                $order[] = array('field'=>$dbField, 'dir'=>$direction);\n            }\n        }\n\n        return $order;\n    }\n\n    public static function CheckCustomOrder($p_field)\n    {\n        $res = array('status' => false, 'field_type' => '', 'field_name' => '', 'default_value' => null);\n\n        $field_parts = explode('.', $p_field);\n        if (4 != count($field_parts)) {\n            return $res;\n        }\n\n        if ('bycustom' != strtolower($field_parts[0])) {\n            return $res;\n        }\n\n        if (!in_array(strtolower($field_parts[1]), array('ci', 'cs', 'num'))) {\n            return $res;\n        }\n\n        if ('' == trim($field_parts[2])) {\n            return $res;\n        }\n\n        $res['status'] = true;\n        $res['field_type'] = strtolower($field_parts[1]);\n        $res['field_name'] = trim($field_parts[2]);\n        $res['default_value'] = $field_parts[3];\n\n        return $res;\n    }\n\n    /**\n     * Processes an order directive on custom data fields.\n     *\n     * @param string $p_fieldName\n     * @param string $p_defaultValue\n     *\n     * @return string\n     *                The string containing processed values of the condition\n     */\n    private static function GetCustomOrder($p_fieldType, $p_articleType, $p_fieldName, $p_defaultValue)\n    {\n        $p_fieldType = strtolower($p_fieldType);\n        if (!in_array($p_fieldType, array('ci', 'cs', 'num'))) {\n            $p_fieldType = 'ci';\n        }\n\n        $queries = array();\n\n        // all possible custom fields are taken alike for constraints\n        $fields = ArticleTypeField::FetchFields($p_fieldName, $p_articleType, null, false, false, false, true, true);\n\n        if (!empty($fields)) {\n            foreach ($fields as $fieldObj) {\n                $art_type = 'X' . $fieldObj->getArticleType();\n\n                $query = '        SELECT ' . $art_type . '.' . $fieldObj->getName() . ' FROM ' . $art_type . ' '\n                        . 'WHERE ' . $art_type . '.NrArticle = Articles.Number '\n                        . 'AND ' . $art_type . '.IdLanguage = Articles.IdLanguage';\n                $queries[] = $query;\n            }\n        }\n        if (empty($queries)) {\n            $queries[] = 'SELECT 1';\n        }\n        $queries_str = implode(\"       union\\n\", $queries);\n\n        $res_query = '';\n\n        if ('num' == $p_fieldType) {\n            $p_defaultValue = 0 + $p_defaultValue;\n            // if no table/row is find, the default value is used, this is done numerically\n            $res_query = '(SELECT 0 + COALESCE((' . $queries_str . '), ' . $p_defaultValue . '))';\n        } elseif ('cs' == $p_fieldType) {\n            // <p> tag is removed, since it can be the initial tag at text area fields\n            $p_defaultValue = str_replace('\\'', '\\'\\'', $p_defaultValue);\n            // if no table/row is find, the default value is used, this is done case sensitive\n            $res_query = '(SELECT REPLACE(COALESCE((' . $queries_str . '), \\'' . $p_defaultValue . '\\'), \"<p>\", \"\"))';\n        } else { // 'ci'\n            // <p> tag is removed, since it can be the initial tag at text area fields\n            $p_defaultValue = strtolower(str_replace('\\'', '\\'\\'', $p_defaultValue));\n            // if no table/row is find, the default value is used, this is done case insensitive\n            $res_query = '(SELECT REPLACE(LOWER(CONVERT(COALESCE((' . $queries_str . '), \\'' . $p_defaultValue . '\\') USING utf8)), \"<p>\", \"\"))';\n        }\n\n        return $res_query;\n    }\n\n    /**\n     * Performs a search against the given article field using the given\n     * keywords. Returns the list of articles matching the given criteria.\n     *\n     * @param  array  $p_keywords\n     * @param  string $p_fieldName   - may be 'title' or 'author'\n     * @param  bool   $p_matchAll    - true if all keyword have to match\n     * @param  array  $p_constraints\n     * @param  array  $p_order\n     * @param  int    $p_start       - return results starting from the given order number\n     * @param  int    $p_limit       - return at most $p_limit rows\n     * @param  int    $p_count       - sets $p_count to the total number of rows in the search\n     * @param  bool   $p_countOnly   - if true returns only the total number of rows\n     * @return array\n     */\n    public static function SearchByField(array $p_keywords,\n                                         $p_fieldName,\n                                         $p_matchAll = false,\n                                         array $p_constraints = array(),\n                                         array $p_order = array(),\n                                         $p_start = 0,\n                                         $p_limit = 0,\n                                         &$p_count,\n                                         $p_countOnly = false)\n    {\n        global $g_ado_db;\n\n        static $searchFields = array(\n                'title'=>array('table_fields'=>array('Name'),\n                               'table'=>'Articles'),\n                'author'=>array('table_fields'=>array('first_name', 'last_name'),\n                                'table'=>'ArticleAuthors',\n                                'join_fields'=>array('Number'=>'fk_article_number')));\n\n        $fieldName = strtolower($p_fieldName);\n        if (!array_key_exists($fieldName, $searchFields)) {\n            return false;\n        }\n\n        $selectClauseObj = new SQLSelectClause();\n\n        // set tables and joins between tables\n        $selectClauseObj->setTable('Articles');\n\n        $joinTable = $searchFields[$fieldName]['table'];\n        if ($joinTable != 'Articles') {\n            $selectClauseObj->addTableFrom($joinTable);\n            foreach ($searchFields[$fieldName]['join_fields'] as\n                       $leftJoinField=>$rightJoinField) {\n                $selectClauseObj->addWhere(\"`Articles`.`$leftJoinField` = \"\n                                           . \"`$joinTable`.`$rightJoinField`\");\n            }\n            if ($fieldName == 'author') {\n                $joinTable = 'Authors';\n                $selectClauseObj->addTableFrom($joinTable);\n                $selectClauseObj->addWhere(\"`ArticleAuthors`.`fk_author_id` = \"\n                                           . \"`$joinTable`.`id`\");\n            }\n        }\n\n        foreach ($searchFields[$fieldName]['table_fields'] as $matchField) {\n            $matchFields[] = \"`$joinTable`.`$matchField`\";\n        }\n        $matchCond = 'MATCH (' . implode(', ', $matchFields) . \") AGAINST ('\";\n        foreach ($p_keywords as $keyword) {\n            $matchCond .= ($p_matchAll ? '+' : '') . trim($g_ado_db->escape($keyword), \"'\") . ' ';\n        }\n        $matchCond .= \"' IN BOOLEAN MODE)\";\n        $selectClauseObj->addWhere($matchCond);\n\n        $joinTables = array();\n        // set other constraints\n        foreach ($p_constraints as $constraint) {\n            $leftOperand = $constraint->getLeftOperand();\n            $operandAttributes = explode('.', $leftOperand);\n            if (count($operandAttributes) == 2) {\n                $table = trim($operandAttributes[0]);\n                if (strtolower($table) != 'articles') {\n                    $joinTables[] = $table;\n                }\n            }\n            $symbol = $constraint->getOperator()->getSymbol('sql');\n            $rightOperand = $g_ado_db->escape($constraint->getRightOperand());\n            $selectClauseObj->addWhere(\"$leftOperand $symbol $rightOperand\");\n        }\n        foreach ($joinTables as $table) {\n            $selectClauseObj->addJoin(\"LEFT JOIN $table ON Articles.Number = $table.NrArticle\");\n        }\n\n        // create the count clause object\n        $countClauseObj = clone $selectClauseObj;\n\n        // set the columns for the select clause\n        $selectClauseObj->addColumn('Articles.Number');\n        $selectClauseObj->addColumn('Articles.IdLanguage');\n        $selectClauseObj->addColumn($matchCond . ' AS score');\n\n        // set the order for the select clause\n        $p_order = count($p_order) > 0 ? $p_order : Article::$s_defaultOrder;\n        $order = Article::ProcessListOrder($p_order);\n        $selectClauseObj->addOrderBy('score DESC');\n        foreach ($order as $orderDesc) {\n            $orderField = $orderDesc['field'];\n            $orderDirection = $orderDesc['dir'];\n            $selectClauseObj->addOrderBy($orderField . ' ' . $orderDirection);\n        }\n\n        // sets the LIMIT start and offset values\n        $selectClauseObj->setLimit($p_start, $p_limit);\n\n        // set the column for the count clause\n        $countClauseObj->addColumn('COUNT(*)');\n\n        $articlesList = array();\n        if (!$p_countOnly) {\n            $selectQuery = $selectClauseObj->buildQuery();\n            $articles = $g_ado_db->GetAll($selectQuery);\n            foreach ($articles as $article) {\n                $articlesList[] = array('language_id'=>$article['IdLanguage'], 'number'=>$article['Number']);\n            }\n        }\n        $countQuery = $countClauseObj->buildQuery();\n        $p_count = $g_ado_db->GetOne($countQuery);\n\n        return $articlesList;\n    }\n\n\n\n    /**\n     * Processes an order directive for the article translations list.\n     *\n     * @param array $p_order\n     *                       The array of order directives in the format:\n     *                       array('field'=>field_name, 'dir'=>order_direction)\n     *                       field_name can take one of the following values:\n     *                       bynumber, byname, byenglish_name, bycode\n     *                       order_direction can take one of the following values:\n     *                       asc, desc\n     *\n     * @return array\n     *               The array containing processed values of the condition\n     */\n    private static function ProcessLanguageListOrder(array $p_order)\n    {\n        $order = array();\n        foreach ($p_order as $orderDesc) {\n            $field = $orderDesc['field'];\n            $direction = $orderDesc['dir'];\n            $dbField = null;\n            switch (strtolower($field)) {\n                case 'bynumber':\n                    $dbField = 'Languages.Id';\n                    break;\n                case 'byname':\n                    $dbField = 'Languages.OrigName';\n                    break;\n                case 'byenglish_name':\n                    $dbField = 'Languages.Name';\n                    break;\n                case 'bycode':\n                    $dbField = 'Languages.Code';\n                    break;\n            }\n            if (!is_null($dbField)) {\n                $direction = !empty($direction) ? $direction : 'asc';\n            }\n            $order[] = array('field'=>$dbField, 'dir'=>$direction);\n        }\n\n        return $order;\n    }\n\n    /**\n     * Get article webcode\n     *\n     * @return string\n     */\n    public function getWebcode()\n    {\n        $em = Zend_Registry::get('container')->getService('em');\n        $article = $em->getRepository('Newscoop\\Entity\\Article')->find(array(\n            'number' => $this->getArticleNumber(),\n            'language' => $this->getLanguageId(),\n        ));\n\n        return Zend_Registry::get('container')->getService('webcode')->getArticleWebcode($article);\n    }\n}\n"
  },
  {
    "path": "newscoop/classes/ArticleAttachment.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/SQLSelectClause.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Attachment.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/CampCacheList.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/classes/CampTemplate.php');\n\n/**\n * @package Campsite\n */\nclass ArticleAttachment extends DatabaseObject {\n\tvar $m_keyColumnNames = array('fk_article_number', 'fk_attachment_id');\n\tvar $m_dbTableName = 'ArticleAttachments';\n\tvar $m_columnNames = array('fk_article_number', 'fk_attachment_id');\n\n\t/**\n\t * The article attachment table links together articles with Attachments.\n\t *\n\t * @param int $p_articleNumber\n\t * @param int $p_attachmentId\n\t * @return ArticleAttachment\n\t */\n\tpublic function ArticleAttachment($p_articleNumber = null, $p_attachmentId = null)\n\t{\n\t\tif (is_numeric($p_articleNumber)) {\n\t\t\t$this->m_data['fk_article_number'] = $p_articleNumber;\n\t\t}\n\t\tif (is_numeric($p_attachmentId)) {\n\t\t\t$this->m_data['fk_attachment_id'] = $p_attachmentId;\n\t\t}\n\t} // constructor\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getAttachmentId()\n\t{\n\t\treturn $this->m_data['fk_attachment_id'];\n\t} // fn getAttachmentId\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getArticleNumber()\n\t{\n\t\treturn $this->m_data['fk_article_number'];\n\t} // fn getArticleNumber\n\n\n\t/**\n\t * Link the given file with the given article.\n\t *\n\t * @param int $p_attachmentId\n\t * @param int $p_articleNumber\n\t *\n\t * @return void\n\t */\n\tpublic static function AddFileToArticle($p_attachmentId, $p_articleNumber)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$queryStr = 'INSERT IGNORE INTO ArticleAttachments(fk_article_number, fk_attachment_id)'\n\t\t\t\t\t.' VALUES('.$p_articleNumber.', '.$p_attachmentId.')';\n\t\t$g_ado_db->Execute($queryStr);\n\t} // fn AddFileToArticle\n\n\n\t/**\n\t * Get all the attachments that belong to this article.\n\t * @param int $p_articleNumber\n\t * @param int $p_languageId\n\t * @return array\n\t */\n\tpublic static function GetAttachmentsByArticleNumber($p_articleNumber, $p_languageId = null)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$tmpObj = new Attachment();\n\t\t$columnNames = implode(',', $tmpObj->getColumnNames());\n\n\t\tif (is_null($p_languageId)) {\n\t\t\t$langConstraint = \"FALSE\";\n\t\t} else {\n\t\t\t$langConstraint = \"Attachments.fk_language_id = \" . $g_ado_db->escape($p_languageId);\n\t\t}\n\t\t$queryStr = 'SELECT '.$columnNames\n\t\t\t\t\t.' FROM Attachments, ArticleAttachments'\n\t\t\t\t\t.' WHERE ArticleAttachments.fk_article_number = ' . $g_ado_db->escape($p_articleNumber)\n\t\t\t\t\t.' AND ArticleAttachments.fk_attachment_id=Attachments.id'\n\t\t\t\t\t.\" AND (Attachments.fk_language_id IS NULL OR $langConstraint)\"\n\t\t\t\t\t.' ORDER BY Attachments.time_created asc, Attachments.file_name asc';\n\t\t$rows = $g_ado_db->GetAll($queryStr);\n\t\t$returnArray = array();\n\t\tif (is_array($rows)) {\n\t\t\tforeach ($rows as $row) {\n\t\t\t\t$tmpAttachment = new Attachment();\n\t\t\t\t$tmpAttachment->fetch($row);\n\t\t\t\t$returnArray[] = $tmpAttachment;\n\t\t\t}\n\t\t}\n\t\treturn $returnArray;\n\t} // fn GetAttachmentsByArticleNumber\n\n\n\t/**\n\t * This is called when an attachment is deleted.\n\t * It will disassociate the file from all articles.\n\t *\n\t * @param int $p_attachmentId\n\t * @return void\n\t */\n\tpublic static function OnAttachmentDelete($p_attachmentId)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$queryStr = \"DELETE FROM ArticleAttachments WHERE fk_attachment_id=$p_attachmentId\";\n\t\t$g_ado_db->Execute($queryStr);\n\t} // fn OnAttachmentDelete\n\n\n\t/**\n\t * Remove attachment pointers for the given article.\n\t * @param int $p_articleNumber\n\t * @return void\n\t */\n\tpublic static function OnArticleDelete($p_articleNumber)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$queryStr = 'DELETE FROM ArticleAttachments'\n\t\t\t\t\t.\" WHERE fk_article_number='\".$p_articleNumber.\"'\";\n\t\t$g_ado_db->Execute($queryStr);\n\t} // fn OnArticleDelete\n\n\n\t/**\n\t * Copy all the pointers for the given article.\n\t * @param int $p_srcArticleNumber\n\t * @param int $p_destArticleNumber\n\t * @return void\n\t */\n\tpublic static function OnArticleCopy($p_srcArticleNumber, $p_destArticleNumber)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$queryStr = 'SELECT fk_attachment_id FROM ArticleAttachments WHERE fk_article_number='.$p_srcArticleNumber;\n\t\t$rows = $g_ado_db->GetAll($queryStr);\n\t\tforeach ($rows as $row) {\n\t\t\t$queryStr = 'INSERT IGNORE INTO ArticleAttachments(fk_article_number, fk_attachment_id)'\n\t\t\t\t\t\t.\" VALUES($p_destArticleNumber, \".$row['fk_attachment_id'].\")\";\n\t\t\t$g_ado_db->Execute($queryStr);\n\t\t}\n\t} // fn OnArticleCopy\n\n\n\t/**\n\t * Remove the linkage between the given attachment and the given article.\n\t *\n\t * @param int $p_attachmentId\n\t * @param int $p_articleNumber\n\t *\n\t * @return void\n\t */\n\tpublic static function RemoveAttachmentFromArticle($p_attachmentId, $p_articleNumber)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$queryStr = 'DELETE FROM ArticleAttachments'\n\t\t\t\t\t.' WHERE fk_article_number='.$p_articleNumber\n\t\t\t\t\t.' AND fk_attachment_id='.$p_attachmentId\n\t\t\t\t\t.' LIMIT 1';\n\t\t$g_ado_db->Execute($queryStr);\n\t} // fn RemoveAttachmentFromArticle\n\n    /**\n     * Returns an article attachments list based on the given parameters.\n     *\n     * @param array $p_parameters\n     *    An array of ComparisonOperation objects\n     * @param string $p_order\n     *    An array of columns and directions to order by\n     * @param integer $p_start\n     *    The record number to start the list\n     * @param integer $p_limit\n     *    The offset. How many records from $p_start will be retrieved.\n     * @param integer $p_count\n     *    The total count of the elements; this count is computed without\n     *    applying the start ($p_start) and limit parameters ($p_limit)\n     *\n     * @return array $articleAttachmentsList\n     *    An array of Attachment objects\n     */\n    public static function GetList(array $p_parameters, $p_order = null,\n                                   $p_start = 0, $p_limit = 0, &$p_count, $p_skipCache = false)\n    {\n        global $g_ado_db;\n\n        if (!$p_skipCache && CampCache::IsEnabled()) {\n        \t$paramsArray['parameters'] = serialize($p_parameters);\n        \t$paramsArray['order'] = (is_null($p_order)) ? 'null' : $p_order;\n        \t$paramsArray['start'] = $p_start;\n        \t$paramsArray['limit'] = $p_limit;\n        \t$cacheListObj = new CampCacheList($paramsArray, __METHOD__);\n        \t$articleAttachmentsList = $cacheListObj->fetchFromCache();\n        \tif ($articleAttachmentsList !== false\n        \t&& is_array($articleAttachmentsList)) {\n        \t\treturn $articleAttachmentsList;\n        \t}\n        }\n\n        $hasArticleNr = false;\n        $selectClauseObj = new SQLSelectClause();\n        $countClauseObj = new SQLSelectClause();\n\n        // sets the where conditions\n        foreach ($p_parameters as $param) {\n            $comparisonOperation = self::ProcessParameters($param);\n            if (sizeof($comparisonOperation) < 1) {\n                break;\n            }\n\n            if (strpos($comparisonOperation['left'], 'fk_article_number')) {\n                $whereCondition = $g_ado_db->escapeOperation($comparisonOperation);\n                $hasArticleNr = true;\n            } elseif (strpos($comparisonOperation['left'], 'fk_language_id')) {\n                $whereCondition = '('.$comparisonOperation['left'].' IS NULL OR '\n                    .$comparisonOperation['left'].\" = \"\n                    .$g_ado_db->escape($comparisonOperation['right']).\")\";\n            } else {\n                $whereCondition = $g_ado_db->escapeOperation($comparisonOperation);\n            }\n            $selectClauseObj->addWhere($whereCondition);\n            $countClauseObj->addWhere($whereCondition);\n        }\n\n        // validates whether article number was given\n        if ($hasArticleNr === false) {\n            CampTemplate::singleton()->trigger_error('missed parameter Article '\n                .'Number in statement list_article_attachments');\n            return;\n        }\n\n        // sets the columns to be fetched\n        $tmpAttachment = new Attachment();\n\t\t$columnNames = $tmpAttachment->getColumnNames(true);\n        foreach ($columnNames as $columnName) {\n            $selectClauseObj->addColumn($columnName);\n        }\n        $countClauseObj->addColumn('COUNT(*)');\n\n        // sets the main table for the query\n        $selectClauseObj->setTable($tmpAttachment->getDbTableName());\n        $countClauseObj->setTable($tmpAttachment->getDbTableName());\n        unset($tmpAttachment);\n\n        // adds the ArticleAttachments join and condition to the query\n        $selectClauseObj->addTableFrom('ArticleAttachments');\n        $selectClauseObj->addWhere('ArticleAttachments.fk_attachment_id = Attachments.id');\n        $countClauseObj->addTableFrom('ArticleAttachments');\n        $countClauseObj->addWhere('ArticleAttachments.fk_attachment_id = Attachments.id');\n\n        if (!is_array($p_order)) {\n            $p_order = array();\n        }\n\n        // sets the order condition if any\n        foreach ($p_order as $orderColumn => $orderDirection) {\n            $selectClauseObj->addOrderBy($orderColumn . ' ' . $orderDirection);\n        }\n\n        // sets the limit\n        $selectClauseObj->setLimit($p_start, $p_limit);\n\n        // builds the query and executes it\n        $selectQuery = $selectClauseObj->buildQuery();\n        $attachments = $g_ado_db->GetAll($selectQuery);\n        if (is_array($attachments)) {\n        \t$countQuery = $countClauseObj->buildQuery();\n        \t$p_count = $g_ado_db->GetOne($countQuery);\n\n        \t// builds the array of attachment objects\n        \t$articleAttachmentsList = array();\n        \tforeach ($attachments as $attachment) {\n        \t\t$attchObj = new Attachment($attachment['id']);\n        \t\tif ($attchObj->exists()) {\n        \t\t\t$articleAttachmentsList[] = $attchObj;\n        \t\t}\n        \t}\n        } else {\n        \t$articleAttachmentsList = array();\n        \t$p_count = 0;\n        }\n        if (!$p_skipCache && CampCache::IsEnabled()) {\n        \t$cacheListObj->storeInCache($articleAttachmentsList);\n        }\n\n        return $articleAttachmentsList;\n    } // fn GetList\n\n\n    /**\n     * Processes a parameter (condition) coming from template tags.\n     *\n     * @param array $p_param\n     *      The array of parameters\n     *\n     * @return array $comparisonOperation\n     *      The array containing processed values of the condition\n     */\n    private static function ProcessParameters($p_param)\n    {\n        $comparisonOperation = array();\n\n        switch (strtolower($p_param->getLeftOperand())) {\n        case 'article_number':\n            $comparisonOperation['left'] = 'ArticleAttachments.fk_article_number';\n            $comparisonOperation['right'] = (int) $p_param->getRightOperand();\n            break;\n        case 'language_id':\n            $comparisonOperation['left'] = 'Attachments.fk_language_id';\n            $comparisonOperation['right'] = (int) $p_param->getRightOperand();\n            break;\n        case 'status':\n            $comparisonOperation['right'] = strtolower($p_param->getRightOperand());\n            if ($comparisonOperation['right'] == 'approved'\n            || $comparisonOperation['right'] == 'unapproved') {\n                $comparisonOperation['left'] = 'Attachments.Status';\n            }\n            break;\n        }\n\n        if (isset($comparisonOperation['left'])) {\n            $operatorObj = $p_param->getOperator();\n            $comparisonOperation['symbol'] = $operatorObj->getSymbol('sql');\n        }\n\n        return $comparisonOperation;\n    } // fn ProcessParameters\n\n} // class ArticleAttachment\n\n?>\n"
  },
  {
    "path": "newscoop/classes/ArticleAuthor.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/SQLSelectClause.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Author.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/AuthorType.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/CampCacheList.php');\n\n\n/**\n * @package Campsite\n */\nclass ArticleAuthor extends DatabaseObject\n{\n    const TABLE = 'ArticleAuthors';\n\n    /**\n     * @var string\n     */\n    public $m_dbTableName = self::TABLE;\n\n    /**\n     * @var array\n     */\n    public $m_keyColumnNames = array('fk_article_number',\n                                     'fk_language_id',\n                                     'fk_author_id',\n                                     'fk_type_id',\n                                     'order');\n\n    /**\n     * @var array\n     */\n    public $m_columnNames = array('fk_article_number',\n                                  'fk_language_id',\n                                  'fk_author_id',\n                                  'fk_type_id',\n                                  'order');\n\n    /**\n     * @var AuthorType\n     */\n    private $m_type = NULL;\n\n\n    /**\n     * The ArticleAuthors table links together articles with authors.\n     *\n     * @param int $p_articleNumber\n     * @param int $p_languageId\n     * @param int $p_authorId\n     * @param int $p_typeId\n     */\n    public function __construct($p_articleNumber = null, $p_languageId = null, $p_authorId = null, $p_typeId = null, $p_order = null)\n    {\n        $this->setColumnNames($this->m_columnNames);\n        if (is_numeric($p_articleNumber)) {\n            $this->m_data['fk_article_number'] = $p_articleNumber;\n        }\n        if (is_numeric($p_languageId)) {\n            $this->m_data['fk_language_id'] = $p_languageId;\n        }\n        if (is_numeric($p_authorId)) {\n            $this->m_data['fk_author_id'] = $p_authorId;\n        }\n        if (is_numeric($p_typeId)) {\n            $this->m_data['fk_type_id'] = $p_typeId;\n        }\n        if (is_numeric($p_order)) {\n            $this->m_data['order'] = $p_order;\n        }\n        if (!is_null($p_articleNumber) && !is_null($p_languageId)\n                && !is_null($p_authorId) && !is_null($p_typeId)) {\n            $this->fetch();\n        }\n    }\n\n    /**\n     * @return int\n     */\n    public function getArticleNumber()\n    {\n        return (int) $this->m_data['fk_article_number'];\n    }\n\n    /**\n     * @return int\n     */\n    public function getLanguageId()\n    {\n        return (int) $this->m_data['fk_language_id'];\n    }\n\n\n    /**\n     * @return int\n     */\n    public function getAuthorId()\n    {\n        return (int) $this->m_data['fk_author_id'];\n    }\n\n    /**\n     * @return int\n     */\n    public function getTypeId()\n    {\n        return (int) $this->m_data['fk_type_id'];\n    }\n\n    /**\n     * @return AuthorType\n     */\n    public function getType()\n    {\n        if (is_null($this->m_type)) {\n            $this->m_type = new AuthorType((int) $this->m_data['fk_type_id']);\n        }\n        return $this->m_type;\n    }\n\n    /**\n     * @param int $p_authorId\n     * @return array\n     */\n    public static function GetArticlesByAuthor($p_authorId)\n    {\n        global $g_ado_db;\n\n        $queryStr = 'SELECT fk_article_number, fk_language_id, fk_type_id\n                     FROM ' . self::TABLE . '\n                     WHERE fk_author_id = '. (int) $p_authorId;\n        $rows = $g_ado_db->GetAll($queryStr);\n\n        $returnArray = array();\n        foreach ((array) $rows as $row) {\n            $article = new Article((int) $row['fk_language_id'], (int) $row['fk_article_number']);\n            $type = new AuthorType((int) $row['fk_type_id']);\n            $returnArray[] = array('article' => $article, 'type' => $type);\n        }\n        return $returnArray;\n    }\n\n    /**\n     * Get all the authors that wrote this article.\n     *\n     * @param int $p_articleNumber\n     * @param int $p_languageId\n     * @return array $returnArray\n     *      An array of Author objects\n     */\n    public static function GetAuthorsByArticle($p_articleNumber, $p_languageId = NULL)\n    {\n        global $g_ado_db;\n\n        if (is_null($p_languageId)) {\n            $langConstraint = \"FALSE\";\n        } else {\n            $langConstraint = \"aa.fk_language_id = $p_languageId\";\n        }\n\n        $queryStr = 'SELECT aa.fk_author_id, aa.fk_type_id\n                     FROM ' . self::TABLE . ' AS aa\n                     JOIN ' . AuthorType::TABLE . ' AS at\n                     WHERE aa.fk_article_number = '. (int) $p_articleNumber . '\n                     AND (aa.fk_language_id IS NULL OR ' . $langConstraint .')\n                     AND aa.fk_type_id = at.id\n                     ORDER BY `order`';\n        $rows = $g_ado_db->GetAll($queryStr);\n        $returnArray = array();\n        if (is_array($rows)) {\n            foreach ($rows as $row) {\n                $author = new Author($row['fk_author_id'], $row['fk_type_id']);\n                if ($author->exists()) {\n                \t$returnArray[] = $author;\n                }\n            }\n        }\n\n\t\treturn $returnArray;\n    }\n\n    /**\n     * Copy all the pointers for the given article.\n     *\n     * @param int $p_srcArticleNumber\n     * @param int $p_destArticleNumber\n     * @return void\n     */\n    public static function OnArticleCopy($p_srcArticleNumber, $p_destArticleNumber)\n    {\n        global $g_ado_db;\n\n        $queryStr = 'SELECT fk_language_id, fk_author_id, fk_type_id\n                     FROM ' . self::TABLE . '\n                     WHERE fk_article_number = ' . (int) $p_srcArticleNumber;\n        $rows = $g_ado_db->GetAll($queryStr);\n        foreach ($rows as $row) {\n            $tmpArticleAuthorObj = new ArticleAuthor($p_destArticleNumber,\n                $row['fk_language_id'], $row['fk_author_id'], $row['fk_type_id']);\n            if (!$tmpArticleAuthorObj->exists()) {\n                $tmpArticleAuthorObj->create();\n            }\n        }\n    }\n\n    /**\n     * Remove author pointers for the given article.\n     *\n     * @param int $p_articleNumber\n     * @return void\n     */\n    public static function OnArticleDelete($p_articleNumber)\n    {\n        global $g_ado_db;\n\n        $queryStr = 'DELETE FROM ' . self::TABLE . '\n            WHERE fk_article_number = ' . (int) $p_articleNumber;\n        $g_ado_db->Execute($queryStr);\n    }\n\n    /**\n     * @param int $p_id\n     * @return void\n     */\n    public static function OnArticleLanguageDelete($p_articleNumber, $p_languageId)\n    {\n        global $g_ado_db;\n\n        $queryStr = 'DELETE FROM ' . self::TABLE . '\n            WHERE fk_article_number = ' . (int) $p_articleNumber . '\n            AND fk_language_id = ' . (int) $p_languageId;\n        $g_ado_db->Execute($queryStr);\n    }\n\n    /**\n     * Remove article pointers for the given author.\n     * @param int $p_id\n     * @return void\n     */\n    public static function OnAuthorDelete($p_authorId)\n    {\n        global $g_ado_db;\n\n        $queryStr = 'DELETE FROM ' . self::TABLE . '\n            WHERE fk_author_id = ' . (int) $p_authorId;\n        $g_ado_db->Execute($queryStr);\n    }\n\n    /**\n     * Remove author pointers for the given author type.\n     *\n     * @param int $p_authorTypeId\n     * @return void\n     */\n    public static function OnAuthorTypeDelete($p_authorTypeId)\n    {\n        global $g_ado_db;\n\n        $queryStr = 'DELETE FROM ' . self::TABLE . '\n            WHERE fk_type_id = ' . (int) $p_authorTypeId;\n        $g_ado_db->Execute($queryStr);\n    }\n\n    /**\n     * @return array\n     */\n    public static function GetArticleAuthorList($p_articleNumber, $p_languageId)\n    {\n        global $g_ado_db;\n\n        $sql = 'SELECT Authors.first_name, Authors.last_name, ArticleAuthors.fk_type_id\n                FROM ' . Author::TABLE . ' JOIN ' . self::TABLE . '\n                ON Authors.id = fk_author_id\n                WHERE fk_language_id = ' . (int) $p_languageId . '\n                AND fk_article_number = ' . (int) $p_articleNumber;\n        return $g_ado_db->Execute($sql);\n    }\n\n    /**\n     * Returns an article authors list based on the given parameters.\n     *\n     * @param array $p_parameters\n     *    An array of ComparisonOperation objects\n     * @param string $p_order\n     *    An array of columns and directions to order by\n     * @param integer $p_start\n     *    The record number to start the list\n     * @param integer $p_limit\n     *    The offset. How many records from $p_start will be retrieved.\n     * @param integer $p_count\n     *    The total count of the elements; this count is computed without\n     *    applying the start ($p_start) and limit parameters ($p_limit)\n     *\n     * @return array $articleAuthorsList\n     *    An array of Author objects\n     */\n    public static function GetList(array $p_parameters, $p_order = null,\n                                   $p_start = 0, $p_limit = 0, &$p_count, $p_skipCache = false)\n    {\n        global $g_ado_db;\n        \n        if (!$p_skipCache && CampCache::IsEnabled()) {\n        \t$paramsArray['parameters'] = serialize($p_parameters);\n        \t$paramsArray['order'] = (is_null($p_order)) ? 'order' : $p_order;\n        \t$paramsArray['start'] = $p_start;\n        \t$paramsArray['limit'] = $p_limit;\n        \t$cacheListObj = new CampCacheList($paramsArray, __METHOD__);\n        \t$articleAuthorsList = $cacheListObj->fetchFromCache();\n        \tif ($articleAuthorsList !== false && is_array($articleAuthorsList)) {\n        \t\treturn $articleAuthorsList;\n        \t}\n        }\n\n        $hasArticleNr = false;\n        $selectClauseObj = new SQLSelectClause();\n        $countClauseObj = new SQLSelectClause();\n\n        // sets the where conditions\n        foreach ($p_parameters as $param) {\n\n            if ($param->getLeftOperand() == 'type') {\n                $whereCondition = 'fk_type_id '.$param->getOperator()->getSymbol().' (SELECT id FROM '.AuthorType::TABLE.' WHERE type=\"'.str_replace(\"'\", \"\", $param->getRightOperand()).'\")';\n                $selectClauseObj->addWhere($whereCondition);\n                $countClauseObj->addWhere($whereCondition);\n            }\n\n            if ($param->getLeftOperand() == 'id') {\n                $whereCondition = 'fk_author_id '.$param->getOperator()->getSymbol().' '.$param->getRightOperand();\n                $selectClauseObj->addWhere($whereCondition);\n                $countClauseObj->addWhere($whereCondition);\n            }\n\n            $comparisonOperation = self::ProcessListParameters($param);\n            if (sizeof($comparisonOperation) < 1) {\n                break;\n            }\n\n            switch (key($comparisonOperation)) {\n            case 'fk_article_number':\n                $whereCondition = 'fk_article_number = '\n                    .$comparisonOperation['fk_article_number'];\n                $hasArticleNr = true;\n                break;\n            case 'fk_language_id':\n                $whereCondition = '(fk_language_id IS NULL OR '\n                    .'fk_language_id = '.$comparisonOperation['fk_language_id'].')';\n                break;\n            }\n\n            $selectClauseObj->addWhere($whereCondition);\n            $countClauseObj->addWhere($whereCondition);\n        }\n\n        // validates whether article number was given\n        if ($hasArticleNr === false) {\n            CampTemplate::singleton()->trigger_error(\"missed parameter Article Number in statement list_article_authors\");\n        }\n\n        // sets the base table ArticleAuthors and the column to be fetched\n        $tmpArticleAuthor = new ArticleAuthor();\n        $selectClauseObj->setTable($tmpArticleAuthor->getDbTableName());\n        $selectClauseObj->addJoin('JOIN ' . Author::TABLE . ' ON fk_author_id = id');\n        $selectClauseObj->addColumn('fk_author_id');\n        $selectClauseObj->addColumn('fk_type_id');\n        $countClauseObj->setTable($tmpArticleAuthor->getDbTableName());\n        $countClauseObj->addColumn('COUNT(*)');\n        unset($tmpArticleAuthor);\n\n        if (!is_array($p_order)) {\n            $p_order = array();\n        }\n\n        $order = self::ProcessListOrder($p_order);\n        // sets the order condition if any\n        foreach ($order as $orderDesc) {\n            $orderField = $orderDesc['field'];\n            $orderDirection = $orderDesc['dir'];\n            $selectClauseObj->addOrderBy($orderField . ' ' . $orderDirection);\n        }\n\n        // sets the limit\n        $selectClauseObj->setLimit($p_start, $p_limit);\n\n        // builds the query and executes it\n        $selectQuery = $selectClauseObj->buildQuery();\n        $authors = $g_ado_db->GetAll($selectQuery);\n        if (is_array($authors)) {\n        \t$countQuery = $countClauseObj->buildQuery();\n        \t$p_count = $g_ado_db->GetOne($countQuery);\n\n        \t// builds the array of attachment objects\n        \t$authorsList = array();\n        \tforeach ($authors as $author) {\n        \t\t$authorObj = new Author($author['fk_author_id'], $author['fk_type_id']);\n        \t\tif ($authorObj->exists()) {\n        \t\t\t$authorsList[] = $authorObj;\n        \t\t}\n        \t}\n        } else {\n        \t$authorsList = array();\n        \t$p_count = 0;\n        }\n        if (!$p_skipCache && CampCache::IsEnabled()) {\n        \t$cacheListObj->storeInCache($authorsList);\n        }\n\n        return $authorsList;\n    }\n\n    /**\n     * Processes a paremeter (condition) coming from template tags.\n     *\n     * @param array $p_param\n     *      The array of parameters\n     * @return array $parameter\n     *      The array containing processed values of the condition\n     */\n    private static function ProcessListParameters($p_param)\n    {\n        $parameter = array();\n\n        switch (strtolower($p_param->getLeftOperand())) {\n        case 'article':\n            $parameter['fk_article_number'] = (int) $p_param->getRightOperand();\n            break;\n        case 'language':\n            $parameter['fk_language_id'] = (int) $p_param->getRightOperand();\n            break;\n        }\n\n        return $parameter;\n    }\n    \n    /**\n     * Processes an order directive coming from template tags.\n     *\n     * @param array $p_order\n     *      The array of order directives\n     *\n     * @return array\n     *      The array containing processed values of the condition\n     */\n    private static function ProcessListOrder(array $p_order)\n    {\n        $order = array();\n        if (empty($p_order)) {\n            $p_order = array(array('field' => 'default', 'dir' => 'asc'));\n        }\n        foreach ($p_order as $orderDesc) {\n            $dbField = null;\n            $field = $orderDesc['field'];\n            $direction = $orderDesc['dir'];\n            switch (strtolower($field)) {\n            case 'default':\n                $dbField = '`order`';\n                break;\n            case 'byfirstname':\n                $dbField = 'first_name';\n                break;\n            case 'bylastname':\n                $dbField = 'last_name';\n                break;\n            }\n            if (!is_null($dbField)) {\n                $direction = !empty($direction) ? $direction : 'asc';\n                $order[] = array('field'=>$dbField, 'dir'=>$direction);\n            }\n        }\n        return $order;\n    }\n\n    public static function BuildAuthorIdsQuery(array $p_names) {\n        $authors_query = false;\n        $author_names = array();\n\n        foreach ($p_names as $one_name) {\n            $one_name = str_replace('\"', '\"\"', trim($one_name));\n            if (0 < strlen($one_name)) {\n                $author_names[] = $one_name;\n            }\n        }\n\n        if (0 < count($author_names)) {\n            $authors_str = '\"' . implode('\", \"', $author_names) . '\"';\n            $authors_query = \"SELECT DISTINCT id FROM Authors WHERE trim(concat(first_name, \\\" \\\", last_name)) IN ($authors_str) OR trim(concat(last_name, \\\" \\\", first_name) IN ($authors_str))\";\n        }\n\n        return $authors_query;\n    } // fn BuildAuthorIdsQuery\n\n}\n"
  },
  {
    "path": "newscoop/classes/ArticleData.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once $GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php';\nrequire_once $GLOBALS['g_campsiteDir'].'/classes/ArticleTypeField.php';\nrequire_once $GLOBALS['g_campsiteDir'].'/classes/ArticleType.php';\n\n/**\n * @package Campsite\n */\nclass ArticleData extends DatabaseObject\n{\n    public $m_columnNames = array('NrArticle', 'IdLanguage');\n    public $m_keyColumnNames = array('NrArticle', 'IdLanguage');\n    public $m_dbTableName;\n    public $m_articleTypeName;\n\n    /**\n     * An article type is a dynamic table that is created for an article\n     * to allow different publications to display their content in different\n     * ways.\n     *\n     * @param string $p_articleType\n     * @param int    $p_articleNumber\n     * @param int    $p_languageId\n     */\n    public function ArticleData($p_articleType, $p_articleNumber, $p_languageId)\n    {\n        $this->m_articleTypeName = $p_articleType;\n        $this->m_dbTableName = 'X'.$p_articleType;\n        if (empty($this->m_articleTypeName)) {\n            return;\n        }\n        // Get user-defined values.\n        $dbColumns = $this->getUserDefinedColumns(true);\n        foreach ($dbColumns as $columnMetaData) {\n            $this->m_columnNames[] = $columnMetaData->getName();\n        }\n        parent::DatabaseObject($this->m_columnNames);\n        $this->m_data['NrArticle'] = $p_articleNumber;\n        $this->m_data['IdLanguage'] = $p_languageId;\n        if ($this->keyValuesExist()) {\n            $this->fetch();\n        }\n    } // constructor\n\n\n    public function getFieldValue($p_property, $p_forceFetchFromDatabase = false)\n    {\n        $dbColumnName = 'F'.$p_property;\n\n        return parent::getProperty($dbColumnName, $p_forceFetchFromDatabase);\n    }\n\n    /**\n     * Gets the translation for a given language; default language is the\n     * session language.  If no translation is set for that language, we\n     * return the dbTableName.\n     *\n     * @param int p_lang\n     *\n     * @return string\n     */\n    public function getDisplayName($p_lang = 0)\n    {\n        if (!$p_lang) {\n            $lang = camp_session_get('LoginLanguageId', 1);\n        } else {\n            $lang = $p_lang;\n        }\n        $aObj = new ArticleType($this->m_articleTypeName);\n        $translations = $aObj->getTranslations();\n        if (!isset($translations[$lang])) {\n            return substr($aObj->getTableName(), 1);\n        }\n\n        return $translations[$lang];\n    } // fn getDisplayName\n\n\n    public function setProperty($p_dbColumnName, $p_value, $p_commit = true, $p_isSql = false)\n    {\n        if (!in_array($p_dbColumnName, $this->m_columnNames)) {\n            return false;\n        }\n        $articleField = new ArticleTypeField($this->m_articleTypeName, substr($p_dbColumnName, 1));\n        if ($articleField->getType() == ArticleTypeField::TYPE_BODY) {\n            // Replace <span class=\"subhead\"> ... </span> with <!** Title> ... <!** EndTitle>\n            $text = preg_replace_callback(\"/(<\\s*span[^>]*class\\s*=\\s*[\\\"']campsite_subhead[\\\"'][^>]*>|<\\s*span|<\\s*\\/\\s*span\\s*>)/i\",\n            array('ArticleData', \"TransformSubheads\"), $p_value);\n\n            // Replace <a href=\"campsite_internal_link?IdPublication=1&...\" ...> ... </a>\n            // with <!** Link Internal IdPublication=1&...> ... <!** EndLink>\n            $text = preg_replace_callback(\"/(<\\s*a\\s*(((href\\s*=\\s*[\\\"'](\\\\/campsite\\\\/)?campsite_internal_link[?][\\w&=;]*[\\\"'])|(\\w+\\s*=\\s*['\\\"][_\\w]*['\\\"]))+[\\s]*)*[\\s\\w\\\"']*>)|(<\\s*\\/a\\s*>)/i\",\n            array('ArticleData', \"TransformInternalLinks\"), $text);\n\n            // Replace <img id=\"..\" src=\"..\" alt=\"..\" title=\"..\" align=\"..\">\n            // with <!** Image [image_template_id] align=\"..\" alt=\"..\" sub=\"..\">\n            $idAttr = \"(id\\s*=\\s*\\\"[^\\\"]*\\\")\";\n            $srcAttr = \"(src\\s*=\\s*\\\"[^\\\"]*\\\")\";\n            $altAttr = \"(alt\\s*=\\s*\\\"[^\\\"]*\\\")\";\n            $subAttr = \"(title\\s*=\\s*\\\"[^\\\"]*\\\")\";\n            $alignAttr = \"(align\\s*=\\s*\\\"[^\\\"]*\\\")\";\n            $widthAttr = \"(width\\s*=\\s*\\\"[^\\\"]*\\\")\";\n            $heightAttr = \"(height\\s*=\\s*\\\"[^\\\"]*\\\")\";\n            $otherAttr = \"(\\w+\\s*=\\s*\\\"[^\\\"]*\\\")*\";\n            $pattern = \"/<\\s*img\\s*$idAttr\\s*(($srcAttr|$altAttr|$subAttr|$alignAttr|$widthAttr|$heightAttr|$otherAttr)\\s*)*\\/>/i\";\n            $p_value = preg_replace_callback($pattern, array($this, \"transformImageTags\"), $text);\n\n            // Replace snippets div holder with snippets tag\n            // Replace <div data-snippet-id=\"$1\" class=\"camp_snippet\">Snippet $1</div>\n            // with <-- Snippet 1 -->\n            $pattern = \"/<div\\s*class=\\\"camp_snippet\\\"\\s*(?:data-snippet-id=\\\"([\\d*])\\\")>([\\w*]+)* ([\\d*]+)<\\/div>/i\";\n            $p_value = preg_replace($pattern, \"<-- Snippet $1 -->\", $p_value);\n        }\n        if ($articleField->getType() == ArticleTypeField::TYPE_SWITCH) {\n            if (is_string($p_value)) {\n                return parent::setProperty($p_dbColumnName, (int) ($p_value == 'on'), $p_commit);\n            } elseif (is_int($p_value)) {\n                return parent::setProperty($p_dbColumnName, $p_value, $p_commit);\n            }\n        }\n\n        return parent::setProperty($p_dbColumnName, $p_value, $p_commit, $p_isSql);\n    }\n\n    /**\n     * Copy the row in the database.\n     * @param  int  $p_destArticleNumber\n     * @return void\n     */\n    public function copy($p_destArticleNumber)\n    {\n        global $g_ado_db;\n        $tmpData = $this->m_data;\n        unset($tmpData['NrArticle']);\n        foreach ($tmpData as $key => $data) {\n            $tmpData[$key] = \"'\".$data.\"'\";\n        }\n\n        $queryStr = 'INSERT IGNORE INTO '.$this->m_dbTableName\n            .'(NrArticle,'.implode(',', array_keys($this->m_columnNames)).')'\n            .' VALUES ('.$p_destArticleNumber.','.implode(',', $tmpData).')';\n        $g_ado_db->Execute($queryStr);\n    } // fn copy\n\n\n    /**\n     * Return an array of ArticleTypeField objects.\n     *\n     * @param p_showAll boolean\n     *\n     * @return array\n     */\n    public function getUserDefinedColumns($p_showAll = false, $p_skipCache = false)\n    {\n        if (empty($this->m_articleTypeName)) {\n            return array();\n        }\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array(\n            'article_type_user_defined_columns',\n            $this->m_articleTypeName,\n            $p_showAll\n        ), 'article_type');\n\n        if ($cacheService->contains($cacheKey) && !$p_skipCache) {\n            return $cacheService->fetch($cacheKey);\n        } else {\n            $articleTypeObject = new ArticleType($this->m_articleTypeName);\n            $definedColumns = $articleTypeObject->getUserDefinedColumns(null, $p_showAll, $p_skipCache);\n            $cacheService->save($cacheKey, $definedColumns);\n        }\n\n        return $definedColumns;\n    }\n\n    /**\n     * Copy the row in the database.\n     * @param  int  $p_destArticleNumber\n     * @param  int  $p_destLanguageId\n     * @return void\n     */\n    public function copyToExistingRecord($p_destArticleNumber, $p_destLanguageId = null)\n    {\n        global $g_ado_db;\n        $tmpData = $this->m_data;\n        unset($tmpData['NrArticle']);\n        unset($tmpData['IdLanguage']);\n        $setQuery = array();\n        foreach ($tmpData as $key => $data) {\n            $setQuery[] = $g_ado_db->escapeKeyVal($key, $data);\n        }\n        $queryStr = 'UPDATE '.$this->m_dbTableName.' SET '.implode(',', $setQuery)\n                .\" WHERE NrArticle=$p_destArticleNumber \";\n        if (!is_null($p_destLanguageId)) {\n            $queryStr .= \" AND IdLanguage=\".$p_destLanguageId;\n        } else {\n            $queryStr .= \" AND IdLanguage=\".$this->m_data['IdLanguage'];\n        }\n        $g_ado_db->Execute($queryStr);\n    } // fn copyToExistingRecord\n\n\n    public static function TransformSubheads($match)\n    {\n        static $spanCounter = -1;\n\n        // This matches '<span class=\"campsite_subhead\">'\n        if (preg_match(\"/<\\s*span[^>]*class\\s*=\\s*[\\\"']campsite_subhead[\\\"'][^>]*>/i\", $match[0])) {\n            $spanCounter = 1;\n\n            return \"<!** Title>\";\n        }\n        // This matches '<span'\n        elseif (($spanCounter >= 0) && preg_match(\"/<\\s*span/i\", $match[0])) {\n            $spanCounter += 1;\n        }\n        // This matches '</span>'\n        elseif (($spanCounter >= 0) && preg_match(\"/<\\s*\\/\\s*span\\s*>/i\", $match[0])) {\n            $spanCounter -= 1;\n        }\n        if ($spanCounter == 0) {\n            $spanCounter = -1;\n\n            return \"<!** EndTitle>\";\n        }\n\n        return $match[0];\n    } // fn TransformSubheads\n\n\n    /**\n     * This function is a callback for preg_replace_callback().\n     * It will replace <a href=\"campsite_internal_link?...\">...</a>\n     * with <!** Link Internal ...> ... <!** EndLink>\n     * @param array p_match\n     * @return string\n     */\n    public static function TransformInternalLinks($p_match)\n    {\n        static $internalLinkCounter = 0;\n        static $internalLinkStartTag = 0;\n\n        // This matches anchor links\n        $anchorStartRegex = \"/<\\s*a\\s*(name\\s*=\\s*[\\\"']\\w+[\\\"'])+[\\s]*>/i\";\n        if (preg_match($anchorStartRegex, $p_match[0])) {\n            // Leave the HTML tag as is\n            return $p_match[0];\n        }\n\n        // This matches '<a href=\"campsite_internal_link?IdPublication=1&...\" ...>'\n        $internalLinkStartRegex = \"/<\\s*a\\s*(((href\\s*=\\s*[\\\"'](\\\\/campsite\\\\/)?campsite_internal_link[?][\\w&=;]*[\\\"'])|(\\w+\\s*=\\s*['\\\"][_\\w]*['\\\"]))[\\s]*)*[\\s\\w\\\"']*>/i\";\n\n        // This matches '</a>'\n        $internalLinkEndRegex = \"/<\\s*\\/a\\s*>/i\";\n\n        if (preg_match($internalLinkEndRegex, $p_match[0])) {\n            // Check if we are closing an internal link\n            if ($internalLinkCounter > 0) {\n                $internalLinkCounter = 0;\n                // Make sure the starting link was not blank (a blank\n                // indicates it was a link to no where)\n                if ($internalLinkStartTag != \"\") {\n                    // Replace the HTML tag with a template tag\n                    $retval = \"<!** EndLink>\";\n                    $internalLinkStartTag = \"\";\n\n                    return $retval;\n                } else {\n                    // The starting link was blank, so we return blank for the\n                    // ending link.\n                    return \"\";\n                }\n            } else {\n                // Leave the HTML tag as is (for external links).\n                return '</a>';\n            }\n        } elseif (preg_match($internalLinkStartRegex, $p_match[0])) {\n            // Get the URL\n            preg_match(\"/href\\s*=\\s*[\\\"'](\\\\/campsite\\\\/)?(campsite_internal_link[?][\\w&=;]*)[\\\"']/i\", $p_match[0], $url);\n            $url = isset($url[2]) ? $url[2] : '';\n            $parsedUrl = parse_url($url);\n            $parsedUrl = str_replace(\"&amp;\", \"&\", $parsedUrl);\n\n            $retval = \"\";\n            // It's possible that there isnt a query string - in which case\n            // its a link to no where, so we remove it ($retval is empty\n            // string).\n            if (isset($parsedUrl[\"query\"])) {\n                // Get the target, if there is one\n                preg_match(\"/target\\s*=\\s*[\\\"']([_\\w]*)[\\\"']/i\", $p_match[0], $target);\n                $target = isset($target[1]) ? $target[1] : null;\n\n                // Replace the HTML tag with a template tag\n                $retval = \"<!** Link Internal \".$parsedUrl[\"query\"];\n                if (!is_null($target)) {\n                    $retval .= \" TARGET \".$target;\n                }\n                $retval .= \">\";\n            }\n\n            // Mark that we are now inside an internal link.\n            $internalLinkCounter = 1;\n            // Remember the starting link tag\n            $internalLinkStartTag = $retval;\n\n            return $retval;\n        }\n    } // fn TransformInternalLinks\n\n\n    /**\n     * This function is a callback for preg_replace_callback().\n     * It will replace <img src=\"http://[hostname]/[image_dir]/cms-image-000000001.jpg\" align=\"center\" alt=\"alternate text\" sub=\"caption text\" id=\"5\">\n     * with <!** Image [image_template_id] align=CENTER alt=\"alternate text\" sub=\"caption text\">\n     * @param array p_match\n     * @return string\n     */\n    public function transformImageTags($p_match)\n    {\n        array_shift($p_match);\n        $attrs = array();\n        foreach ($p_match as $attr) {\n            $attr = explode('=', $attr);\n            if (isset($attr[0]) && !empty($attr[0])) {\n                $attrName = trim(strtolower($attr[0]));\n                if (isset($attr[1]) && count($attr) > 2) {\n                    $attrValue = implode('=', array_slice($attr, 1));\n                } else {\n                    $attrValue = isset($attr[1]) ? $attr[1] : '';\n                }\n                // Strip out the quotes\n                $attrValue = str_replace('\"', '', $attrValue);\n                $attrs[$attrName] = $attrValue;\n            }\n        }\n\n        if (!isset($attrs['id'])) {\n            return '';\n        } else {\n            if (strpos($attrs['id'], '_')) {\n                list($templateId, $imageRatio) = explode('_', $attrs['id']);\n            } else {\n                $templateId = $attrs['id'];\n            }\n            $articleImage = new ArticleImage($this->m_data['NrArticle'], null, $templateId);\n            if (!$articleImage->exists()) {\n                return '';\n            }\n        }\n        $alignTag = '';\n        if (isset($attrs['align'])) {\n            $alignTag = 'align=\"'.$attrs['align'].'\"';\n        }\n        $altTag = '';\n        if (isset($attrs['alt']) && strlen($attrs['alt']) > 0) {\n            $altTag = 'alt=\"'.$attrs['alt'].'\"';\n        }\n        $captionTag = '';\n        if (isset($attrs['title']) && strlen($attrs['title']) > 0) {\n            $captionTag = 'sub=\"'.$attrs['title'].'\"';\n        }\n        if (isset($attrs['width']) && strlen($attrs['width']) > 0) {\n            $widthTag = 'width=\"'.$attrs['width'].'\"';\n        }\n        if (isset($attrs['height']) && strlen($attrs['height']) > 0) {\n            $heightTag = 'height=\"'.$attrs['height'].'\"';\n        }\n        $ratioTag = '';\n        if (isset($imageRatio) && ($imageRatio > 0 && $imageRatio < 100)) {\n            $ratioTag = 'ratio=\"'.$imageRatio.'\"';\n        }\n        $imageTag = \"<!** Image $templateId $alignTag $altTag $captionTag $widthTag $heightTag $ratioTag>\";\n\n        return $imageTag;\n    } // fn TransformImageTags\n} // class ArticleData\n;\n"
  },
  {
    "path": "newscoop/classes/ArticleImage.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/SQLSelectClause.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Image.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/CampCacheList.php');\n\n/**\n * @package Campsite\n */\nclass ArticleImage extends DatabaseObject {\n\tvar $m_keyColumnNames = array('NrArticle','IdImage');\n\tvar $m_dbTableName = 'ArticleImages';\n\tvar $m_columnNames = array('NrArticle', 'IdImage', 'Number', 'id');\n\tvar $m_image = null;\n\n    private static $s_defaultOrder = array(array('field'=>'default', 'dir'=>'ASC'));\n\n\t/**\n\t * The ArticleImage table links together Articles with Images.\n\t *\n\t * @param int $p_articleNumber\n\t * @param int $p_imageId\n\t * @param int $p_templateId\n\t * @return ArticleImage\n\t */\n\tpublic function ArticleImage($p_articleNumber = null, $p_imageId = null,\n\t                             $p_templateId = null)\n\t{\n\t\tif (!is_null($p_articleNumber) && !is_null($p_imageId)) {\n\t\t\t$this->m_data['NrArticle'] = $p_articleNumber;\n\t\t\t$this->m_data['IdImage'] = $p_imageId;\n\t\t\t$this->fetch();\n\t\t} elseif (!is_null($p_articleNumber) && !is_null($p_templateId)) {\n\t\t\t$this->m_data['NrArticle'] = $p_articleNumber;\n\t\t\t$this->m_data['Number'] = $p_templateId;\n\t\t\t$this->m_keyColumnNames = array('NrArticle', 'Number');\n\t\t\t$this->fetch();\n\t\t\t$this->m_keyColumnNames = array('NrArticle', 'IdImage');\n\t\t}\n\t} // constructor\n\n\n    /**\n     * Wrapper around DatabaseObject::setProperty\n     *\n     * @see classes/DatabaseObject#setProperty($p_dbColumnName, $p_value, $p_commit, $p_isSql)\n     */\n    public function setProperty($p_dbColumnName, $p_value, $p_commit = true, $p_isSql = false)\n    {\n        if ($p_dbColumnName == 'Number') {\n            $this->m_keyColumnNames = array('NrArticle', 'Number');\n            $this->resetCache();\n            $this->m_keyColumnNames = array('NrArticle', 'IdImage');\n        }\n        return parent::setProperty($p_dbColumnName, $p_value);\n    } // fn setProperty\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getImageId()\n\t{\n\t\tif (in_array('IdImage', array_keys($this->m_data))) return $this->m_data['IdImage'];\n\t\telse return false;\n\t} // fn getImageId\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getImageArticleIndex()\n\t{\n\t    return $this->m_data['Number'];\n\t}\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getArticleNumber()\n\t{\n\t\treturn $this->m_data['NrArticle'];\n\t} // fn getArticleNumber\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getTemplateId()\n\t{\n\t\treturn $this->m_data['Number'];\n\t} // fn getTemplateId\n\n\n\t/**\n\t * Return an Image object.\n\t */\n\tpublic function getImage()\n\t{\n\t\tif (is_object($this->m_image)) {\n\t\t\treturn $this->m_image;\n\t\t} else {\n\t\t\treturn new Image($this->m_data['IdImage']);\n\t\t}\n\t} // fn getImage\n\n\n    /**\n     * This call will only work for entries that already exist.\n     *\n     * @param int $p_templateId\n     *\n     * @return boolean\n     */\n    public function setTemplateId($p_templateId)\n    {\n        return $this->setProperty('Number', $p_templateId);\n    } // fn setTemplateId\n\n\n    /**\n     * Remove the linkage between the given image and the given article and remove\n     * the image tags from the article text.\n     *\n     * @return boolean\n     */\n    public function delete()\n    {\n        if (!$this->exists()) {\n            return false;\n        }\n\n        $p_imageId = $this->m_data['IdImage'];\n        $p_articleNumber = $this->m_data['Number'];\n\n        ArticleImage::RemoveImageTagsFromArticleText($this->getArticleNumber(), $this->getTemplateId());\n        $image_id = $this->getImageId();\n        $article_number = $this->getArticleNumber();\n        $result = parent::delete();\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('article_image');\n\n        return $result;\n    }\n\n\n\t/**\n\t * Get a free Template ID.\n\t * @param int $p_articleNumber\n\t */\n\tpublic static function GetUnusedTemplateId($p_articleNumber)\n\t{\n\t\tglobal $g_ado_db;\n\t\t// Get the highest template ID and add one.\n\t\t$queryStr = \"SELECT MAX(Number)+1 FROM ArticleImages WHERE NrArticle=$p_articleNumber\";\n\t\t$templateId = $g_ado_db->GetOne($queryStr);\n\t\tif (!$templateId) {\n\t\t\t$templateId = 1;\n\t\t}\n\t\treturn $templateId;\n\t} // fn GetUnusedTemplateId\n\n\n\t/**\n\t * Return true if article already is using the given template ID, false otherwise.\n\t *\n\t * @param int $p_articleNumber\n\t * @param int $p_templateId\n\t *\n\t * @return boolean\n\t */\n\tpublic static function TemplateIdInUse($p_articleNumber, $p_templateId)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$queryStr = \"SELECT Number FROM ArticleImages\"\n\t\t\t\t\t.\" WHERE NrArticle=$p_articleNumber AND Number=$p_templateId\";\n\t\t$value = $g_ado_db->GetOne($queryStr);\n\t\tif ($value !== false) {\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t} // fn TemplateIdInUse\n\n\n\t/**\n\t * Get all the images that belong to this article.\n\t *\n\t * @param int $p_articleNumber\n\t * \t\tThe specific article you want the images from.\n\t * @param boolean $p_countOnly\n\t * \t\tOnly return the number of images in the article.\n\t * @return mixed\n\t * \t\tReturn either an array or an int.\n\t */\n\tpublic static function GetImagesByArticleNumber($p_articleNumber, $p_countOnly = false)\n\t{\n\t\tglobal $g_ado_db;\n\n\t\tif ($p_countOnly) {\n\t\t\t$selectStr = \"COUNT(*)\";\n\t\t} else {\n\t\t\t$tmpImage = new Image();\n            $selectStr = implode(',', array_map(function($column) {\n                return 'Images.' . $column;\n            }, $tmpImage->getColumnNames()));\n\t\t\t$selectStr .= ', ArticleImages.Number, ArticleImages.NrArticle, ArticleImages.IdImage';\n\t\t}\n\t\t$queryStr = 'SELECT '.$selectStr\n\t\t\t\t\t.' FROM Images, ArticleImages'\n\t\t\t\t\t.' WHERE ArticleImages.NrArticle='.$p_articleNumber\n\t\t\t\t\t.' AND ArticleImages.IdImage=Images.Id'\n\t\t\t\t\t.' ORDER BY ArticleImages.Number';\n\t\tif ($p_countOnly) {\n\t\t\treturn $g_ado_db->GetOne($queryStr);\n\t\t} else {\n\t\t\t$rows = $g_ado_db->GetAll($queryStr);\n\t\t\t$returnArray = array();\n\t\t\tif (is_array($rows)) {\n\t\t\t\tforeach ($rows as $row) {\n\t\t\t\t\t$tmpArticleImage = new ArticleImage();\n\t\t\t\t\t$tmpArticleImage->fetch($row);\n\t\t\t\t\t$tmpArticleImage->m_image = new Image();\n\t\t\t\t\t$tmpArticleImage->m_image->fetch($row);\n\t\t\t\t\t$returnArray[] = $tmpArticleImage;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $returnArray;\n\t\t}\n\t} // fn GetImagesByArticleNumber\n\n\t/**\n\t * Link the given image with the given article.  The template ID\n\t * is the image's position in the template.\n\t *\n\t * @param int $p_imageId\n\t * @param int $p_articleNumber\n\t * @param int $p_templateId\n\t *\t\tOptional.  If not specified, this will be the next highest number\n\t *\t\tof the existing values.\n\t *\n\t * @return void\n\t */\n\tpublic static function AddImageToArticle($p_imageId, $p_articleNumber,\n\t                                         $p_templateId = null)\n\t{\n\t\tglobal $g_ado_db;\n\t\tif (is_null($p_templateId)) {\n\t\t\t$p_templateId = ArticleImage::GetUnusedTemplateId($p_articleNumber);\n\t\t}\n\t\t$queryStr = 'INSERT IGNORE INTO ArticleImages(NrArticle, IdImage, Number)'\n\t\t\t\t\t.' VALUES('.$p_articleNumber.', '.$p_imageId.', '.$p_templateId.')';\n\t\t$g_ado_db->Execute($queryStr);\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('article_image');\n\t}\n\n\n\t/**\n\t * Remove the image tags in the article text.\n\t *\n\t * @param int $p_imageId\n\t * @param int $p_articleNumber\n\t * @param int $p_templateId\n\t * @return void\n\t */\n\tpublic static function RemoveImageTagsFromArticleText($p_articleNumber, $p_templateId)\n\t{\n\t\t// Get all the articles\n\t\t$articles = Article::getTranslations($p_articleNumber);\n\n\t\t// The REGEX\n\t\t$altAttr = '(alt\\s*=\\s*(\"[^\"]*\"|[^\\s]*))';\n\t\t$alignAttr = '(align\\s*=\\s*(\"[^\"]*\"|[^\\s]*))';\n\t\t$subAttr = '(sub\\s*=\\s*(\"[^\"]*\"|[^\\s]*))';\n\t\t$otherAttr = '(\\w+\\s*=\\s*(\"[^\"]*\"|[^\\s]*))*';\n\t\t$matchString = \"/<!\\*\\*\\s*Image\\s*$p_templateId\\s*(($altAttr|$alignAttr|$subAttr|$otherAttr)\\s*)*>/i\";\n\n\t\t// Replace the article tag in each one with the empty string\n\t\tforeach ($articles as $article) {\n\t\t\t$articleData = $article->getArticleData();\n\t\t\t$dbColumns = $articleData->getUserDefinedColumns();\n\t\t\tforeach ($dbColumns as $dbColumn) {\n\t\t\t\t$originalText = $articleData->getProperty($dbColumn->getName());\n\t\t\t\t$newText = preg_replace($matchString, '', $originalText);\n\t\t\t\tif ($originalText != $newText) {\n\t\t\t\t\t$articleData->setProperty($dbColumn->getName(), $newText);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t} // fn RemoveImageTagsFromArticleText\n\n\n\t/**\n\t * This is called when an image is deleted.\n\t * It will disassociate the image from all articles.\n\t *\n\t * @param int $p_imageId\n\t * @return void\n\t */\n\tpublic static function OnImageDelete($p_imageId)\n\t{\n\t\tglobal $g_ado_db;\n\t\t// Get the articles that use this image.\n\t\t$queryStr = \"SELECT * FROM ArticleImages WHERE IdImage=$p_imageId\";\n\t\t$rows = $g_ado_db->GetAll($queryStr);\n\t\tif (is_array($rows)) {\n\t\t\tforeach ($rows as $row) {\n\t\t\t\tArticleImage::RemoveImageTagsFromArticleText($row['NrArticle'], $row['Number']);\n\t\t\t}\n\t\t\t$queryStr = \"DELETE FROM ArticleImages WHERE IdImage=$p_imageId\";\n\t\t\t$g_ado_db->Execute($queryStr);\n\n            $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n            $cacheService->clearNamespace('article_image');\n\t\t}\n\t} // fn OnImageDelete\n\n\n\t/**\n\t * Remove image pointers for the given article.\n\t * @param int $p_articleNumber\n\t * @return void\n\t */\n\tpublic static function OnArticleDelete($p_articleNumber)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$queryStr = 'DELETE FROM ArticleImages'\n\t\t\t\t\t.\" WHERE NrArticle='\".$p_articleNumber.\"'\";\n\t\t$g_ado_db->Execute($queryStr);\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('article_image');\n\t}\n\n\n\t/**\n\t * Copy all the pointers for the given article.\n\t * @param int $p_srcArticleNumber\n\t * @param int $p_destArticleNumber\n\t * @return void\n\t */\n\tpublic static function OnArticleCopy($p_srcArticleNumber, $p_destArticleNumber)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$queryStr = 'SELECT * FROM ArticleImages WHERE NrArticle='.$p_srcArticleNumber;\n\t\t$rows = $g_ado_db->GetAll($queryStr);\n\t\tforeach ($rows as $row) {\n\t\t\t$queryStr = 'INSERT IGNORE INTO ArticleImages(NrArticle, IdImage, Number)'\n\t\t\t\t\t\t.\" VALUES($p_destArticleNumber, \".$row['IdImage'].\",\".$row['Number'].\")\";\n\t\t\t$g_ado_db->Execute($queryStr);\n\t\t}\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('article_image');\n\t}\n\n\n\t/**\n\t * Return an array of Article objects, all the articles\n\t * which use this image.\n\t *\n\t * @return array\n\t */\n\tpublic static function GetArticlesThatUseImage($p_imageId)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$article = new Article();\n\t\t$columnNames = $article->getColumnNames();\n\t\t$columnQuery = array();\n\t\tforeach ($columnNames as $columnName) {\n\t\t\t$columnQuery[] = 'Articles.'.$columnName;\n\t\t}\n\t\t$columnQuery = implode(',', $columnQuery);\n\t\t$queryStr = 'SELECT '.$columnQuery.' FROM Articles, ArticleImages '\n\t\t\t\t\t.' WHERE ArticleImages.IdImage='.$p_imageId\n\t\t\t\t\t.' AND ArticleImages.NrArticle=Articles.Number'\n\t\t\t\t\t.' ORDER BY Articles.Number, Articles.IdLanguage';\n\t\t$rows = $g_ado_db->GetAll($queryStr);\n\t\t$articles = array();\n\t\tif (is_array($rows)) {\n\t\t\tforeach ($rows as $row) {\n\t\t\t\t$tmpArticle = new Article();\n\t\t\t\t$tmpArticle->fetch($row);\n\t\t\t\t$articles[] = $tmpArticle;\n\t\t\t}\n\t\t}\n\t\treturn $articles;\n\t} // fn GetArticlesThatUseImage\n\n\n    /**\n     * Returns an article images list based on the given parameters.\n     *\n     * @param array $p_parameters\n     *    An array of ComparisonOperation objects\n     * @param string $p_order\n     *    An array of columns and directions to order by\n     * @param integer $p_start\n     *    The record number to start the list\n     * @param integer $p_limit\n     *    The offset. How many records from $p_start will be retrieved.\n     * @param integer $p_count\n     *    The total count of the elements; this count is computed without\n     *    applying the start ($p_start) and limit parameters ($p_limit)\n     *\n     * @return array $articleImagesList\n     *    An array of Image objects\n     */\n    public static function GetList(array $p_parameters, array $p_order = array(), $p_start = 0, $p_limit = 0, &$p_count, $p_skipCache = false)\n    {\n        global $g_ado_db;\n\n        if (!$p_skipCache) {\n        \t$paramsArray['parameters'] = serialize($p_parameters);\n        \t$paramsArray['order'] = (is_null($p_order)) ? 'null' : serialize($p_order);\n        \t$paramsArray['start'] = $p_start;\n        \t$paramsArray['limit'] = $p_limit;\n        \t$paramsArray['method'] = __METHOD__;\n        \t$cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n\t        $cacheKey = $cacheService->getCacheKey($paramsArray, 'article');\n\t        if ($cacheService->contains($cacheKey)) {\n\t            $articleImagesList = $cacheService->fetch($cacheKey);\n\t            if ($articleImagesList !== false && is_array($articleImagesList)) {\n\t        \t\treturn $articleImagesList;\n\t        \t}\n\t        }\n        }\n\n        $hasArticleNr = false;\n        $selectClauseObj = new SQLSelectClause();\n        $countClauseObj = new SQLSelectClause();\n\n        // sets the where conditions\n        foreach ($p_parameters as $param) {\n            $comparisonOperation = self::ProcessListParameters($param);\n            if (sizeof($comparisonOperation) < 3) {\n                break;\n            }\n\n            if (strpos($comparisonOperation['left'], 'NrArticle')) {\n                $hasArticleNr = true;\n            }\n            $whereCondition = $g_ado_db->escapeOperation($comparisonOperation);\n            $selectClauseObj->addWhere($whereCondition);\n            $countClauseObj->addWhere($whereCondition);\n        }\n\n        // validates whether article number was given\n        if ($hasArticleNr === false) {\n            CampTemplate::singleton()->trigger_error('Missing parameter Article '\n                .'Number in statement list_article_images');\n            return;\n        }\n\n        // sets the columns to be fetched\n        $tmpImage = new Image();\n\t\t$columnNames = $tmpImage->getColumnNames(true);\n        foreach ($columnNames as $columnName) {\n            $selectClauseObj->addColumn($columnName);\n        }\n        $countClauseObj->addColumn('COUNT(*)');\n\n        // sets the base table Attachment\n        $selectClauseObj->setTable($tmpImage->getDbTableName());\n        $countClauseObj->setTable($tmpImage->getDbTableName());\n        unset($tmpImage);\n\n        // adds the ArticleImages join and condition to the query\n        $selectClauseObj->addTableFrom('ArticleImages');\n        $selectClauseObj->addWhere('ArticleImages.IdImage = Images.Id');\n        $countClauseObj->addTableFrom('ArticleImages');\n        $countClauseObj->addWhere('ArticleImages.IdImage = Images.Id');\n\n        // sets the ORDER BY condition\n        $p_order = array_merge($p_order, self::$s_defaultOrder);\n        $order = self::ProcessListOrder($p_order);\n        foreach ($order as $orderDesc) {\n            $orderColumn = $orderDesc['field'];\n            $orderDirection = $orderDesc['dir'];\n            $selectClauseObj->addOrderBy($orderColumn . ' ' . $orderDirection);\n        }\n\n        // sets the limit\n        $selectClauseObj->setLimit($p_start, $p_limit);\n\n        // builds the query executes it\n        $selectQuery = $selectClauseObj->buildQuery();\n        $images = $g_ado_db->GetAll($selectQuery);\n        if (is_array($images)) {\n        \t$countQuery = $countClauseObj->buildQuery();\n        \t$p_count = $g_ado_db->GetOne($countQuery);\n\n        \t// builds the array of image objects\n        \t$articleImagesList = array();\n        \tforeach ($images as $image) {\n        \t\t$imgObj = new Image($image['Id']);\n        \t\tif ($imgObj->exists()) {\n        \t\t\t$articleImagesList[] = $imgObj;\n        \t\t}\n        \t}\n        } else {\n        \t$articleImagesList = array();\n        \t$p_count = 0;\n        }\n\n        if (!$p_skipCache) {\n        \t$cacheService->save($cacheKey, $articleImagesList);\n        }\n\n        return $articleImagesList;\n    }\n\n\n    /**\n     * Processes a paremeter (condition) coming from template tags.\n     *\n     * @param array $p_param\n     *      The array of parameters\n     *\n     * @return array $comparisonOperation;\n     *      The array containing processed values of the condition\n     */\n    private static function ProcessListParameters($p_param)\n    {\n        $comparisonOperation = array();\n\n        switch (strtolower($p_param->getLeftOperand())) {\n        case 'nrarticle':\n            $comparisonOperation['left'] = 'ArticleImages.NrArticle';\n            $comparisonOperation['right'] = (int) $p_param->getRightOperand();\n            break;\n        case 'status':\n            $comparisonOperation['right'] = strtolower($p_param->getRightOperand());\n            if ($comparisonOperation['right'] == 'approved'\n            || $comparisonOperation['right'] == 'unapproved') {\n                $comparisonOperation['left'] = 'Images.Status';\n            }\n            break;\n        }\n\n        if (isset($comparisonOperation)) {\n            $operatorObj = $p_param->getOperator();\n            $comparisonOperation['symbol'] = $operatorObj->getSymbol('sql');\n        }\n\n        return $comparisonOperation;\n    } // fn ProcessListParameters\n\n\n    /**\n     * Processes an order directive coming from template tags.\n     *\n     * @param array $p_order\n     *      The array of order directives in the format:\n     *      array('field'=>field_name, 'dir'=>order_direction)\n     *      field_name can take one of the following values:\n     *        bynumber, byname, bydate, bycreationdate, bypublishdate,\n     *        bypublication, byissue, bysection, bylanguage, bysectionorder,\n     *        bypopularity, bycomments\n     *      order_direction can take one of the following values:\n     *        asc, desc\n     *\n     * @return array\n     *      The array containing processed values of the condition\n     */\n    private static function ProcessListOrder(array $p_order)\n    {\n        $order = array();\n        foreach ($p_order as $orderDesc) {\n            $field = $orderDesc['field'];\n            $direction = $orderDesc['dir'];\n            $dbField = null;\n            switch (strtolower($field)) {\n            \tcase 'default':\n                case 'bynumber':\n                    $dbField = 'ArticleImages.Number';\n                    break;\n                case 'bydescription':\n                    $dbField = 'Images.Description';\n                    break;\n                case 'byphotographer':\n                    $dbField = 'Images.Photographer';\n                    break;\n                case 'bydate':\n                    $dbField = 'Images.Date';\n                    break;\n                case 'bylastupdate':\n                \t$dbField = 'Images.LastModified';\n                \tbreak;\n            }\n            if (!is_null($dbField)) {\n                $direction = !empty($direction) ? $direction : 'asc';\n                $order[] = array('field'=>$dbField, 'dir'=>$direction);\n            }\n        }\n        return $order;\n    }\n\n} // class ArticleImages\n\n?>\n"
  },
  {
    "path": "newscoop/classes/ArticleIndex.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once $GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php';\nrequire_once $GLOBALS['g_campsiteDir'].'/include/campsite_init.php';\n\n/**\n * @package Campsite\n */\nclass ArticleIndex extends DatabaseObject\n{\n    var $m_keyColumnNames = array(\n        'IdPublication',\n        'IdLanguage',\n        'IdKeyword',\n        'NrIssue',\n        'NrSection',\n        'NrArticle', );\n    public $m_dbTableName = 'ArticleIndex';\n    var $m_columnNames = array(\n        'IdPublication',\n        'IdLanguage',\n        'IdKeyword',\n        'NrIssue',\n        'NrSection',\n        'NrArticle', );\n\n    public function ArticleIndex()\n    {\n        parent::DatabaseObject($this->m_columnNames);\n    } // constructor\n\n\n    /**\n     * @return int\n     */\n    public function getArticleNumber()\n    {\n        return $this->m_data['NrArticle'];\n    } // fn getArticleNumber\n\n\n    public static function SearchQuery($p_searchPhrase, $p_symbol = null)\n    {\n        global $g_ado_db;\n\n        $p_searchPhrase = trim($p_searchPhrase);\n        if (empty($p_searchPhrase)) {\n            return;\n        }\n\n        $matchAll = false;\n\n        $keywords = preg_split('/[\\s,.-]/', $p_searchPhrase);\n        if (isset($keywords[0]) && strtolower($keywords[0]) == '__match_all') {\n            $matchAll = true;\n            array_shift($keywords);\n        }\n\n        $keywords = array_diff($keywords, array(\"\", \"\"));\n        $sKeys = array();\n        foreach ($keywords as $keyword) {\n            if (strlen($keyword) > 2) {\n                $sKeys[] = $keyword;\n            }\n        }\n        $keywords = $sKeys;\n        if (count($keywords) < 1) {\n            return;\n        }\n\n        // specifically match webcode (first one)\n        $webcodeMatches = preg_grep(\"`^\\s*[\\+@]`\", $keywords);\n        if (count($webcodeMatches)) {\n            $wcode = ltrim(current($webcodeMatches), '@+');\n            $za = Zend_Registry::get('container')->getService('webcode')->findArticleByWebcode($wcode);\n            $article_no = $za->getId();\n            if (is_numeric($article_no)) {\n                $selectKeywordClauseObj = new SQLSelectClause();\n                $selectKeywordClauseObj->addColumn('DISTINCT AI1.NrArticle');\n                $selectKeywordClauseObj->addColumn('AI1.IdLanguage');\n                $selectKeywordClauseObj->setTable('ArticleIndex AS AI1');\n                $selectKeywordClauseObj->addConditionalWhere(\"AI1.NrArticle = '$article_no'\");\n            }\n        }\n        // set search keywords\n        elseif ($matchAll && count($keywords) > 1) {\n            $selectKeywordClauseObj = new SQLSelectClause();\n            $selectKeywordClauseObj->addColumn('DISTINCT AI1.NrArticle');\n            $selectKeywordClauseObj->addColumn('AI1.IdLanguage');\n            $selectKeywordClauseObj->setTable('ArticleIndex AS AI1');\n            $selectKeywordClauseObj->addJoin('LEFT JOIN KeywordIndex AS KI1 ON AI1.IdKeyword = KI1.Id');\n            for ($tableIndex = 2; $tableIndex <= count($keywords); $tableIndex++) {\n                $selectKeywordClauseObj->addJoin(\"LEFT JOIN ArticleIndex AS AI$tableIndex \"\n                    .\"ON AI1.NrArticle = AI$tableIndex.NrArticle \"\n                    .\"AND AI1.IdLanguage = AI$tableIndex.IdLanguage\");\n                $selectKeywordClauseObj->addJoin(\"LEFT JOIN KeywordIndex AS KI$tableIndex \"\n                    .\"ON AI$tableIndex.IdKeyword = KI$tableIndex.Id\");\n            }\n\n            $tableIndex = 1;\n            foreach ($keywords as $keyword) {\n                $keywordConstraint = 'KI'.$tableIndex.'.Keyword = '.$g_ado_db->escape($keyword);\n                $selectKeywordClauseObj->addWhere($keywordConstraint);\n                $tableIndex++;\n            }\n        } else {\n            $selectKeywordClauseObj = new SQLSelectClause();\n            $selectKeywordClauseObj->addColumn('DISTINCT AI1.NrArticle');\n            $selectKeywordClauseObj->addColumn('AI1.IdLanguage');\n            $selectKeywordClauseObj->setTable('ArticleIndex AS AI1');\n            $selectKeywordClauseObj->addJoin('LEFT JOIN KeywordIndex AS KI1 ON AI1.IdKeyword = KI1.Id');\n\n            foreach ($keywords as $keyword) {\n                if (strtolower($p_symbol) == 'like') {\n                    $keywordConstraint = 'KI1.Keyword LIKE '.$g_ado_db->escape($keyword.'%');\n                } else {\n                    $keywordConstraint = 'KI1.Keyword = '.$g_ado_db->escape($keyword);\n                }\n                $selectKeywordClauseObj->addConditionalWhere($keywordConstraint);\n            }\n        }\n\n        return $selectKeywordClauseObj->buildQuery();\n    }\n\n    /**\n     * Remove index pointers for the given article.\n     * @param  int  $p_publicationId\n     * @param  int  $p_issueId\n     * @param  int  $p_sectionId\n     * @param  int  $p_languageId\n     * @param  int  $p_articleNumber\n     * @return void\n     */\n    public static function OnArticleDelete($p_publicationId, $p_issueId,\n                                           $p_sectionId, $p_languageId, $p_articleNumber)\n    {\n        global $g_ado_db;\n        $queryStr = 'DELETE FROM ArticleIndex'\n                    .\" WHERE IdPublication=$p_publicationId \"\n                    .\" AND NrIssue=$p_issueId \"\n                    .\" AND NrSection=$p_sectionId \"\n                    .\" AND NrArticle=$p_articleNumber \"\n                    .\" AND IdLanguage=$p_languageId\";\n        $g_ado_db->Execute($queryStr);\n    } // fn OnArticleDelete\n\n\n    public static function RunIndexer($p_timeLimit = null, $p_articlesLimit = null,\n    $p_lastModifiedFirst = true)\n    {\n        global $g_ado_db;\n\n        $startTime = microtime(true);\n\n        $rowsLimit = 0;\n        if (!is_null($p_timeLimit)) {\n            $rowsLimit = (int) $p_timeLimit * 5;\n        }\n        if (!is_null($p_articlesLimit)) {\n            $rowsLimit = $rowsLimit > 0 ? min($rowsLimit, $p_articlesLimit) : $p_articlesLimit;\n        }\n\n        $lockFile = fopen(__DIR__.'/../cache/newscoop-indexer.lock', \"w+\");\n        if ($lockFile === false) {\n            return new PEAR_Error(\"Unable to create single process lock control!\");\n        }\n        if (!flock($lockFile, LOCK_EX | LOCK_NB)) { // do an exclusive lock\n            return new PEAR_Error(\"Another indexer process is already running!\");\n        }\n\n        try {\n            if ($p_lastModifiedFirst) {\n                $order = 'time_updated DESC';\n            } else {\n                $order = 'Number ASC';\n            }\n            $limit = $rowsLimit > 0 ? \"LIMIT 0, $rowsLimit\" : null;\n            // selects articles not yet indexed\n            $sql_query = 'SELECT art.IdPublication, art.NrIssue, art.NrSection, art.Number, '\n            .\"art.IdLanguage, art.Type, art.Keywords, art.Name \\n\"\n            .\"FROM Articles as art \\n\"\n            .\"WHERE art.IsIndexed = 'N' ORDER BY $order $limit\";\n            $sql_result = $g_ado_db->GetAll($sql_query);\n            if ($sql_result === false) {\n                throw new Exception('Error selecting articles not yet indexed');\n            }\n\n            $sql = \"SELECT COUNT(*) FROM Articles WHERE IsIndexed = 'N'\";\n            $total_art = $g_ado_db->GetOne($sql);\n\n            $nr_art = 0;\n            $nr_new = 0;\n            $nr_word = 0;\n            $word_cache_hits = 0;\n            $articleWordsBatch = array();\n            $wordInsertQueries = 0;\n\n            $existing_words = array();\n            foreach ($sql_result as $row) {\n                $sql = \"SELECT GROUP_CONCAT(CONCAT_WS(' ', first_name, last_name) SEPARATOR ', ')\"\n                .\"FROM Authors AS au, ArticleAuthors AS aa \"\n                .\"WHERE au.id = aa.fk_author_id AND aa.fk_article_number = \".(int) $row['Number']\n                .\" AND aa.fk_language_id = \".(int) $row['IdLanguage'];\n                $article['AuthorName'] = $g_ado_db->GetOne($sql);\n\n                $article['IdPublication'] = ($row['IdPublication']) ? (int) $row['IdPublication'] : 0;\n                $article['NrIssue'] = ($row['NrIssue']) ? (int) $row['NrIssue'] : 0;\n                $article['NrSection'] = ($row['NrSection']) ? (int) $row['NrSection'] : 0;\n                $article['Number'] = ($row['Number']) ? (int) $row['Number'] : 0;\n                $article['IdLanguage'] = ($row['IdLanguage']) ? (int) $row['IdLanguage'] : 0;\n                $article['Type'] = ($row['Type']) ? $row['Type'] : '';\n                $article['Keywords'] = ($row['Keywords']) ? $row['Keywords'] : '';\n                $article['Name'] = ($row['Name']) ? $row['Name'] : '';\n\n                // deletes from index\n                $sql_query = 'DELETE FROM ArticleIndex '\n                .'WHERE IdPublication = '.$article['IdPublication']\n                .' AND IdLanguage = '.$article['IdLanguage']\n                .' AND NrIssue = '.$article['NrIssue']\n                .' AND NrSection = '.$article['NrSection']\n                .' AND NrArticle = '.$article['Number'];\n                if (!$g_ado_db->Execute($sql_query)) {\n                    throw new Exception('Error deleting the old article index');\n                }\n\n                $nr_art++;\n\n                $keywordsHash = array();\n                self::BuildKeywordsList($article, $keywordsHash);\n\n                foreach ($keywordsHash as $keyword => $isSet) {\n                    if (empty($keyword)) {\n                        continue;\n                    }\n\n                    $nr_word++;\n\n                    if (isset($existing_words[$keyword])) {\n                        $kwd_id = $existing_words[$keyword];\n                        $word_cache_hits++;\n                    } else {\n                        $sql_query = 'SELECT Id FROM KeywordIndex '\n                        .'WHERE Keyword = '.$g_ado_db->escape($keyword);\n                        $kwd_id = 0 + $g_ado_db->GetOne($sql_query);\n                        $existing_words[$keyword] = $kwd_id;\n                    }\n                    if ($kwd_id == 0) {\n                        $sql_query = 'SELECT MAX(Id) AS Id FROM KeywordIndex';\n                        $last_kwd_id = 0 + $g_ado_db->GetOne($sql_query);\n                        $kwd_id = $last_kwd_id + 1;\n\n                        // inserts in keyword list\n                        $sql_query = 'INSERT IGNORE INTO KeywordIndex '\n                        .'SET Keyword = '.$g_ado_db->escape($keyword).', '\n                        .\"Id = $kwd_id\";\n                        if (!$g_ado_db->Execute($sql_query)) {\n                            throw new Exception('Error adding keyword');\n                        }\n                        $existing_words[$keyword] = $kwd_id;\n\n                        $nr_new++;\n                    }\n\n                    if (!self::BatchAddArticleWord($articleWordsBatch, $article, $kwd_id, $wordInsertQueries)) {\n                        throw new Exception('Error adding article to index');\n                    }\n                }\n                self::RunArticleWordBatch($articleWordsBatch, $wordInsertQueries);\n\n                unset($article['Name']);\n                unset($article['Keywords']);\n                unset($article['Type']);\n\n                $sql_query = \"UPDATE Articles SET IsIndexed = 'Y' \"\n                .'WHERE IdPublication = '.$article['IdPublication']\n                .' AND NrIssue = '.$article['NrIssue']\n                .' AND NrSection = '.$article['NrSection']\n                .' AND Number = '.$article['Number']\n                .' AND IdLanguage = '.$article['IdLanguage'];\n                if (!$g_ado_db->Execute($sql_query)) {\n                    throw new Exception('Error updating the article');\n                }\n\n                if ($p_articlesLimit > 0 && $nr_art >= $p_articlesLimit) {\n                    break;\n                }\n\n                $runTime = microtime(true) - $startTime;\n                $articleTime = $runTime / $nr_art;\n                if ($p_timeLimit > 0 && $runTime >= ($p_timeLimit - $articleTime)) {\n                    break;\n                }\n            }\n        } catch (Exception $ex) {\n            flock($lockFile, LOCK_UN); // release the lock\n            return new PEAR_Error($ex->getMessage().': '.$g_ado_db->ErrorMsg());\n        }\n\n        flock($lockFile, LOCK_UN); // release the lock\n        $totalTime = microtime(true) - $startTime;\n        $articleTime = $nr_art > 0 ? $totalTime / $nr_art : 0;\n\n        return array('articles' => $nr_art, 'words' => $nr_word, 'new words' => $nr_new,\n        'total articles' => $total_art, 'total time' => $totalTime, 'article time' => $articleTime,\n        'word cache hits' => $word_cache_hits, 'word insert queries' => $wordInsertQueries, );\n    } // fn RunIndexer\n\n    private static function BatchAddArticleWord(array &$p_batch, array $p_article,\n    $p_keywordId, &$p_queries, $p_force = false)\n    {\n        $articleWordSQL = '('.(int) $p_article['IdPublication']\n        .', '.(int) $p_article['IdLanguage']\n        .', '.(int) $p_keywordId\n        .', '.(int) $p_article['NrIssue']\n        .', '.(int) $p_article['NrSection']\n        .', '.(int) $p_article['Number'].')';\n\n        $p_batch[] = $articleWordSQL;\n\n        if (count($p_batch) > 200 || $p_force) {\n            return self::RunArticleWordBatch($p_batch, $p_queries);\n        }\n\n        return true;\n    }\n\n    private static function RunArticleWordBatch(array &$p_batch, &$p_queries)\n    {\n        global $g_ado_db;\n\n        if (count($p_batch) == 0) {\n            return true;\n        }\n\n        $p_queries++;\n        $values = implode(', ', $p_batch);\n        $p_batch = array();\n        $sql = 'INSERT IGNORE INTO ArticleIndex (IdPublication, IdLanguage, '\n        .\"IdKeyword, NrIssue, NrSection, NrArticle) VALUES $values\";\n\n        return $g_ado_db->Execute($sql);\n    }\n\n    private static function BuildKeywordsList($p_article, array &$p_keywordsHash)\n    {\n        global $g_ado_db;\n\n        self::ParseKeywords($p_keywordsHash, $p_article['Keywords'], false);\n        self::ParseKeywords($p_keywordsHash, $p_article['Name'], false);\n        self::ParseKeywords($p_keywordsHash, $p_article['AuthorName'], false);\n\n        if (empty($p_article['Type'])) {\n            return;\n        }\n\n        $sql_query = 'SELECT * FROM X'.$p_article['Type']\n        .' WHERE NrArticle = '.$p_article['Number']\n        .' AND IdLanguage = '.$p_article['IdLanguage'];\n        $sql_result = $g_ado_db->GetAll($sql_query);\n        if ($sql_result === false) {\n            return new PEAR_Error('Error reading article data: '.$g_ado_db->ErrorMsg());\n        }\n\n        foreach ($sql_result as $row) {\n            foreach ($row as $field => $value) {\n                if (substr($field, 0, 1) == 'F' && !empty($value)) {\n                    self::ParseKeywords($p_keywordsHash, $value);\n                }\n            }\n        }\n    } // fn BuildKeywordsList\n\n\n    public static function ParseKeywords(array &$p_keywordsHash, $p_kwd, $p_isHTML = true)\n    {\n        // table of characters that may be part of words (marked by 1)\n        static $t = array(\n        /*             0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 */\n        /*  00-19  */  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n        /*  20-39  */  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1,\n        /*  40-59  */  0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0,\n        /*  60-79  */  0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n        /*  80-99  */  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 1,\n        /* 100-119 */  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n        /* 120-139 */  1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n        /* 140-159 */  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n        /* 160-179 */  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n        /* 180-199 */  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1,\n        /* 200-219 */  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n        /* 220-239 */  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,\n        /* 240-255 */  1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n        );\n\n        // characters that may be part of words but can not make works by themselves\n        static $nonWordForming = array(36, 39, 45, 64, 95);\n\n        if (empty($p_kwd)) {\n            return false;\n        }\n\n        $inHTMLTag = 0;\n        $kwd_l = strlen($p_kwd);\n        $q = $p_kwd;\n        $x = 0;\n        $l = 0;\n        while ($x < $kwd_l) {\n            $w_l = 0;\n            $charCount = 0;\n            $validWord = false;\n            $splitPoints = array(0);\n\n            while ($x < $kwd_l && $t[ord($q[$x])]) {\n                $char = $q[$x];\n                if ($p_isHTML) {\n                    self::SetHtmlTag($inHTMLTag, $char);\n                }\n                if ($inHTMLTag) {\n                    // do not process HTML tags\n                    $x++;\n                    $w_l++;\n                    continue;\n                }\n                $charOrd = ord($char);\n                // increment the letter count if an ASCII character\n                // or start of UTF-8 sequence\n                if ($charOrd < 128 || ($charOrd >= 194 && $charOrd <= 223)\n                || ($charOrd >= 224 && $charOrd <= 239)\n                || ($charOrd >= 240 && $charOrd <= 244)) {\n                    $charCount++;\n                }\n                if (array_search(ord($char), $nonWordForming) === false\n                && (ord($char) < 128 || ord($char) > 191)) {\n                    $validWord = true;\n                }\n                if (array_search(ord($char), $nonWordForming) !== false) {\n                    $splitPoints[] = $w_l;\n                }\n                $x++;\n                $w_l++;\n            }\n\n            if ($w_l > 1 && $validWord) {\n                if ($inHTMLTag) {\n                    continue;\n                }\n                $splitPoints[] = $w_l;\n                $word = substr($q, $l, $w_l);\n                if (is_numeric($word) && $word < 100) {\n                    continue;\n                }\n                if ($charCount > 1) {\n                    self::AddKeyword($p_keywordsHash, $word);\n                } else {\n                    continue;\n                }\n                for ($i = 0; $i < (count($splitPoints) - 1); $i++) {\n                    $splitStart = $i == 0 ? $splitPoints[0] : $splitPoints[$i] + 1;\n                    $partLen = $splitPoints[$i+1] - $splitStart;\n                    if ($partLen > 1) {\n                        self::AddKeyword($p_keywordsHash, substr($word, $splitStart, $partLen));\n                    }\n                }\n            } else {\n                $l = $x;\n                while ($l < $kwd_l && !$t[ord(substr($q, $l, 1))]) {\n                    if ($p_isHTML) {\n                        self::SetHtmlTag($inHTMLTag, $q[$l]);\n                    }\n                    $l++;\n                }\n                $x = $l;\n            }\n        }\n    } // fn ParseKeywords\n\n\n    public static function AddKeyword(array &$p_keywordsHash, $p_kwd)\n    {\n        $p_kwd = trim($p_kwd);\n        if (!isset($p_keywordsHash[$p_kwd])) {\n            $p_keywordsHash[$p_kwd] = false;\n        } else {\n            $p_keywordsHash[$p_kwd] = true;\n        }\n    } // fn AddKeyword\n\n\n    public static function SetHtmlTag(&$p_inHTMLTag, $p_char)\n    {\n        if ($p_char == '<') {\n            $p_inHTMLTag++;\n        }\n        if ($p_char == '>') {\n            $p_inHTMLTag = $p_inHTMLTag > 0 ? $p_inHTMLTag - 1 : 0;\n        }\n    } // fn SetHtmlTag\n} // class ArticleIndex\n;\n"
  },
  {
    "path": "newscoop/classes/ArticlePublish.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbObjectArray.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/include/campsite_init.php');\n\n/**\n * @package Campsite\n */\nclass ArticlePublish extends DatabaseObject {\n\tvar $m_keyColumnNames = array('id');\n\tvar $m_dbTableName = 'ArticlePublish';\n\tvar $m_keyIsAutoIncrement = true;\n\tvar $m_columnNames = array('id',\n\t\t\t\t\t\t\t   'fk_article_number',\n\t\t\t\t\t\t\t   'fk_language_id',\n\t\t\t\t\t\t\t   'time_action',\n\t\t\t\t\t\t\t   'publish_action',\n\t\t\t\t\t\t\t   'publish_on_front_page',\n\t\t\t\t\t\t\t   'publish_on_section_page',\n\t\t\t\t\t\t\t   'is_completed');\n\n\t/**\n\t * This table delays an article's publish time to a later date.\n\t *\n\t * @param int $p_id\n\t */\n\tpublic function ArticlePublish($p_id = null)\n\t{\n\t\tparent::DatabaseObject($this->m_columnNames);\n\t\t$this->m_data['id'] = $p_id;\n\t\tif ($this->keyValuesExist()) {\n\t\t\t$this->fetch();\n\t\t}\n\t} // constructor\n\n\n\tpublic function delete()\n\t{\n\t    $articleNumber = $this->getArticleNumber();\n\t    $deleted = parent::delete();\n\t    return $deleted;\n\t} // fn delete\n\n\n\t/**\n\t * Get the unique ID that identifies this action.\n\t * @return int\n\t */\n\tpublic function getArticlePublishId()\n\t{\n\t\treturn $this->m_data['id'];\n\t} // fn getArticlePublishId\n\n\n\t/**\n\t * Return the article number associated with this action.\n\t * @return int\n\t */\n\tpublic function getArticleNumber()\n\t{\n\t    return $this->m_data['fk_article_number'];\n\t} // fn getArticleNumber\n\n\n\t/**\n\t * Set the Article number.\n\t * @param int $p_value\n\t * @return boolean\n\t */\n\tpublic function setArticleNumber($p_value)\n\t{\n\t\treturn $this->setProperty('fk_article_number', $p_value);\n\t} // fn setArticleNumber\n\n\n\t/**\n\t * Return the language ID of the article.\n\t * @return int\n\t */\n\tpublic function getLanguageId()\n\t{\n\t    return $this->m_data['fk_language_id'];\n\t} // fn getLanguageId\n\n\n\t/**\n\t * Set the language ID.\n\t * @param int $p_value\n\t * @return boolean\n\t */\n\tpublic function setLanguageId($p_value)\n\t{\n\t\treturn $this->setProperty('fk_language_id', $p_value);\n\t} // fn setLanguageId\n\n\n\t/**\n\t * Get the published state to switch to when the \"publish time\" arrives:\n\t * NULL for no action, 'P' for Publish, or 'U' for Unpublish.\n\t * @return mixed\n\t */\n\tpublic function getPublishAction()\n\t{\n\t\treturn $this->m_data['publish_action'];\n\t} // fn getPublishAction\n\n\n\t/**\n\t * Set the published state to switch to when the \"publish time\" arrives:\n\t * NULL for no action, 'P' for Publish, or 'U' for Unpublish.\n\t * @return void\n\t */\n\tpublic function setPublishAction($p_value)\n\t{\n\t\t$p_value = strtoupper($p_value);\n\t\tif ( ($p_value == 'P') || ($p_value == 'U') ) {\n\t\t\t$this->setProperty('publish_action', $p_value);\n\t\t} elseif (is_null($p_value)) {\n\t\t\t$this->setProperty('publish_action', 'NULL', true, true);\n\t\t}\n\t} // fn setPublishAction\n\n\n\t/**\n\t * Get the front page state to switch to when the \"publish time\" arrives.\n\t * This can be NULL for no action, 'S' for Show, or 'R' for Remove.\n\t * @return mixed\n\t */\n\tpublic function getFrontPageAction()\n\t{\n\t\treturn $this->m_data['publish_on_front_page'];\n\t} // fn getFrontPageAction\n\n\n\t/**\n\t * Set the front page state to switch to when the \"publish time\" arrives.\n\t * This can be NULL for no action, 'S' for Show, or 'R' for Remove.\n\t * @return mixed\n\t */\n\tpublic function setFrontPageAction($p_value)\n\t{\n\t\t$p_value = strtoupper($p_value);\n\t\tif ( ($p_value == 'S') || ($p_value == 'R') ) {\n\t\t\t$this->setProperty('publish_on_front_page', $p_value);\n\t\t} elseif (is_null($p_value)) {\n\t\t\t$this->setProperty('publish_on_front_page', 'NULL', true, true);\n\t\t}\n\t} // fn setFrontPageAction\n\n\n\t/**\n\t * Get the section page state to switch to when the \"publish time\" arrives.\n\t * This can be NULL for no action, 'S' for Show, or 'R' for Remove.\n\t * @return mixed\n\t */\n\tpublic function getSectionPageAction()\n\t{\n\t\treturn $this->m_data['publish_on_section_page'];\n\t} // fn getSectionPageAction\n\n\n\t/**\n\t * Set the section page state to switch to when the \"publish time\" arrives.\n\t * This can be NULL for no action, 'S' for Show, or 'R' for Remove.\n\t * @return mixed\n\t */\n\tpublic function setSectionPageAction($p_value)\n\t{\n\t\t$p_value = strtoupper($p_value);\n\t\tif ( ($p_value == 'S') || ($p_value == 'R') ) {\n\t\t\t$this->setProperty('publish_on_section_page', $p_value);\n\t\t} elseif (is_null($p_value)) {\n\t\t\t$this->setProperty('publish_on_section_page', 'NULL', true, true);\n\t\t}\n\t} // fn setSectionPageAction\n\n\n\t/**\n\t * Get the time the event is scheduled to happen.\n\t * @return string\n\t */\n\tpublic function getActionTime()\n\t{\n\t\treturn $this->m_data['time_action'];\n\t} // fn getActionTime\n\n\n\t/**\n\t * Set the time when the action(s) should be taken.\n\t * The parameter given should be in the form \"YYYY-MM-DD HH:MM:SS\".\n\t * @param string $p_value\n\t * @return boolean\n\t */\n\tpublic function setActionTime($p_value)\n\t{\n\t\treturn $this->setProperty('time_action', $p_value);\n\t} // fn setActionTime\n\n\n\t/**\n\t * Mark that this action has been completed.\n\t * @return void\n\t */\n\tpublic function setCompleted()\n\t{\n\t    $this->setProperty('is_completed', 'Y');\n\t} // fn setCompleted\n\n\n\t/**\n\t * Execute the action, and mark the action as completed.\n\t * @return void\n\t */\n\tpublic function doAction()\n\t{\n\t\t$publishAction = $this->getPublishAction();\n\t\t$frontPageAction = $this->getFrontPageAction();\n\t\t$sectionPageAction = $this->getSectionPageAction();\n        $article = new Article($this->m_data['fk_language_id'], $this->m_data['fk_article_number']);\n\t\tif ($publishAction == 'P') {\n\t\t    $article->setWorkflowStatus('Y');\n\t\t}\n\t\tif ($publishAction == 'U') {\n            $article->setWorkflowStatus('S');\n\t\t}\n\t\tif ($frontPageAction == 'S') {\n\t\t    $article->setOnFrontPage(true);\n\t\t}\n\t\tif ($frontPageAction == 'R') {\n\t\t    $article->setOnFrontPage(false);\n\t\t}\n\t\tif ($sectionPageAction == 'S') {\n\t\t    $article->setOnSectionPage(true);\n\t\t}\n\t\tif ($sectionPageAction == 'R') {\n\t\t    $article->setOnSectionPage(false);\n\t\t}\n\t\t$this->setCompleted();\n\t} // fn doAction\n\n\n\t/**\n\t * Get all the events that will change the article's state.\n\t * Returns an array of ArticlePublish objects.\n\t *\n\t * @param int $p_articleNumber\n\t * @param int $p_languageId\n\t * @param boolean $p_onlyFutureEvents\n\t * @return array\n\t */\n\tpublic static function GetArticleEvents($p_articleNumber, $p_languageId = null,\n\t                                        $p_onlyFutureEvents = false)\n\t{\n\t\t$queryStr = 'SELECT * FROM ArticlePublish '\n\t\t\t\t\t.\" WHERE fk_article_number=$p_articleNumber\";\n\t\tif (!is_null($p_languageId)) {\n\t\t\t$queryStr .= \" AND fk_language_id=$p_languageId \";\n\t\t}\n\t\tif ($p_onlyFutureEvents) {\n\t    \t$datetime = strftime(\"%Y-%m-%d %H:%M:00\");\n            $queryStr .= \" AND time_action >= '\" . $datetime . \"'\"\n                    \t. \" AND is_completed != 'Y'\";\n\t\t}\n\n\t\t$queryStr .= ' ORDER BY time_action ASC ';\n\t\t$result = DbObjectArray::Create('ArticlePublish', $queryStr);\n\t\treturn $result;\n\t} // fn GetArticleEvents\n\n\n\t/**\n\t * Get all the actions that currently need to be performed.\n\t * @return array\n\t */\n\tpublic static function GetPendingActions()\n\t{\n\t    $datetime = strftime(\"%Y-%m-%d %H:%M:00\");\n        $queryStr = \"SELECT * FROM ArticlePublish, Articles \"\n        \t\t\t. \" WHERE ArticlePublish.fk_article_number=Articles.Number\"\n                    . \" AND ArticlePublish.time_action <= '$datetime'\"\n                    . \" AND ArticlePublish.is_completed != 'Y'\"\n                    . \" AND Articles.Published != 'N'\"\n                    . \" ORDER BY ArticlePublish.time_action ASC\";\n        $result = DbObjectArray::Create('ArticlePublish', $queryStr);\n        return $result;\n\t} // fn GetPendingActions\n\n\n\t/**\n\t * Return TRUE if there are actions scheduled in the future.\n\t * @param int $p_articleNumber\n\t * @param int $p_languageId\n\t * @return boolean\n\t */\n\tpublic static function ArticleHasFutureActions($p_articleNumber, $p_languageId)\n\t{\n\t    global $g_ado_db;\n\t    $datetime = strftime(\"%Y-%m-%d %H:%M:00\");\n        $queryStr = \"SELECT COUNT(*) FROM ArticlePublish, Articles \"\n                    . \" WHERE ArticlePublish.fk_article_number=$p_articleNumber\"\n                    . \" AND ArticlePublish.fk_language_id=$p_languageId\"\n                    . \" AND ArticlePublish.fk_article_number=Articles.Number\"\n                    . \" AND ArticlePublish.time_action > '$datetime'\"\n                    . \" AND ArticlePublish.is_completed != 'Y'\"\n                    . \" AND Articles.Published != 'N'\"\n                    . \" ORDER BY ArticlePublish.time_action ASC\";\n        $result = $g_ado_db->GetOne($queryStr);\n        return ($result > 0);\n\t} // fn ArticleHasFutureActions\n\n\n\t/**\n\t * Execute all pending actions.\n\t * @return void\n\t */\n\tpublic static function DoPendingActions()\n\t{\n        $actions = ArticlePublish::GetPendingActions();\n    \tforeach ($actions as $articlePublishObj) {\n    \t    $articlePublishObj->doAction();\n    \t}\n        if (count($actions) > 0) {\n            CampCache::singleton()->clear('user');\n        }\n        return count($actions);\n\t} // fn DoPendingActions\n\n\n\t/**\n\t * For now, this is mostly a hack to get the home page working.\n\t * The raw array is returned.\n\t *\n\t * @param int $p_limit\n\t * @return array\n\t */\n\tpublic static function GetFutureActions($p_limit)\n\t{\n\t    global $g_ado_db;\n\t    $datetime = strftime(\"%Y-%m-%d %H:%M:00\");\n\t    $dummyArticle = new Article();\n\t    $columnNames = $dummyArticle->getColumnNames(true);\n        $queryStr = \"SELECT id, time_action, publish_action, publish_on_front_page, publish_on_section_page,\"\n                    . implode(\",\", $columnNames). \" FROM Articles, ArticlePublish \"\n                    . \" WHERE ArticlePublish.time_action >= '\" . $datetime . \"'\"\n                    . \" AND ArticlePublish.is_completed != 'Y'\"\n                    . \" AND Articles.Published != 'N'\"\n                    . \" AND Articles.Number=ArticlePublish.fk_article_number \"\n                    . \" AND Articles.IdLanguage=ArticlePublish.fk_language_id \"\n                    . \" ORDER BY time_action DESC\"\n                    . \" LIMIT $p_limit\";\n\t\t$rows = $g_ado_db->GetAll($queryStr);\n\t\t$addKeys = array();\n\t\tif ($rows && (count($rows) > 0)) {\n    \t\tforeach ($rows as $row) {\n    \t\t    $row[\"ObjectType\"] = \"article\";\n    \t\t    $addKeys[$row['time_action']] = $row;\n    \t\t}\n\t\t}\n        return $addKeys;\n\t} // fn GetFutureActions\n\n\n\t/**\n\t * This will be called whenever an article is deleted.\n\t *\n\t * @param int $p_articleNumber\n\t * @param int $p_languageId\n\t * @return void\n\t */\n\tpublic static function OnArticleDelete($p_articleNumber, $p_languageId)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$queryStr = 'DELETE FROM ArticlePublish '\n\t\t\t\t\t.\" WHERE fk_article_number=$p_articleNumber\"\n\t\t\t\t\t.\" AND fk_language_id=$p_languageId \";\n\t\t$g_ado_db->Execute($queryStr);\n\t} // fn OnArticleDelete\n\n} // class ArticlePublish\n\n?>"
  },
  {
    "path": "newscoop/classes/ArticleTopic.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/SQLSelectClause.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/CampCacheList.php');\n\nuse Newscoop\\NewscoopBundle\\Entity\\Topic;\n\n/**\n * @package Campsite\n */\nclass ArticleTopic extends DatabaseObject\n{\n    public $m_keyColumnNames = array('NrArticle','TopicId');\n    public $m_dbTableName = 'ArticleTopics';\n    public $m_columnNames = array('NrArticle', 'TopicId');\n\n    public function ArticleTopic()\n    {\n        parent::DatabaseObject($this->m_columnNames);\n    } // constructor\n\n    /**\n     * @return int\n     */\n    public function getTopicId()\n    {\n        return $this->m_data['TopicId'];\n    } // fn getTopicId\n\n    /**\n     * @return int\n     */\n    public function getArticleNumber()\n    {\n        return $this->m_data['NrArticle'];\n    } // fn getArticleNumber\n\n    /**\n     * Link a topic to an article.\n     * @param  int  $p_topicId\n     * @param  int  $p_articleNumber\n     * @return void\n     */\n    public static function AddTopicToArticle($p_topicId, $p_articleNumber)\n    {\n        global $g_ado_db;\n        $queryStr = 'INSERT IGNORE INTO ArticleTopics(NrArticle, TopicId)'\n                    .' VALUES('.$p_articleNumber.', '.$p_topicId.')';\n        $g_ado_db->Execute($queryStr);\n    } // fn AddTopicToArticle\n\n    /**\n     * Unlink a topic from an article.\n     * @param  int  $p_topicId\n     * @param  int  $p_articleNumber\n     * @return void\n     */\n    public static function RemoveTopicFromArticle($p_topicId, $p_articleNumber)\n    {\n        global $g_ado_db;\n        $queryStr = \"DELETE FROM ArticleTopics WHERE NrArticle=$p_articleNumber AND TopicId=$p_topicId\";\n        $g_ado_db->Execute($queryStr);\n    } // fn RemoveTopicFromArticle\n\n    /**\n     * Unlink a topic from all articles.\n     * @param  int  $p_topicId\n     * @return void\n     */\n    public static function RemoveTopicFromArticles($p_topicId)\n    {\n        global $g_ado_db;\n        $queryStr = \"DELETE FROM ArticleTopics WHERE TopicId=$p_topicId\";\n        $g_ado_db->Execute($queryStr);\n    } // fn RemoveTopicFromArticles\n\n    /**\n     * Remove topic pointers for the given article.\n     * @param  int  $p_articleNumber\n     * @return void\n     */\n    public static function OnArticleDelete($p_articleNumber)\n    {\n        global $g_ado_db;\n        $queryStr = 'DELETE FROM ArticleTopics'\n                    .\" WHERE NrArticle='\".$p_articleNumber.\"'\";\n        $g_ado_db->Execute($queryStr);\n    } // fn OnArticleDelete\n\n    /**\n     * Copy the topic pointers\n     * @param  int  $p_srcArticleNumber\n     * @param  int  $p_destArticleNumber\n     * @return void\n     */\n    public static function OnArticleCopy($p_srcArticleNumber, $p_destArticleNumber)\n    {\n        global $g_ado_db;\n        $queryStr = 'SELECT * FROM ArticleTopics WHERE NrArticle='.$p_srcArticleNumber;\n        $rows = $g_ado_db->GetAll($queryStr);\n        foreach ($rows as $row) {\n            $queryStr = 'INSERT IGNORE INTO ArticleTopics(NrArticle, TopicId)'\n                        .\" VALUES($p_destArticleNumber, \".$row['TopicId'].\")\";\n            $g_ado_db->Execute($queryStr);\n        }\n    } // fn OnArticleCopy\n\n    /**\n     * Get the topics for the given article.\n     *\n     * @param int     $p_articleNumber\n     *                                 Retrieve the topics for this article.\n     * @param boolean $p_countOnly\n     *                                 Only get the number of topics attached to the article.\n     *\n     * @return mixed\n     *               Return an array or an int.\n     */\n    public static function GetArticleTopics($p_articleNumber, $p_countOnly = false)\n    {\n        global $g_ado_db;\n        $selectStr = \"*\";\n        if ($p_countOnly) {\n            $selectStr = \"COUNT(*)\";\n        }\n        $queryStr = \"SELECT $selectStr FROM ArticleTopics \"\n                    .\" WHERE NrArticle = $p_articleNumber\"\n                    .' ORDER BY TopicId';\n        if ($p_countOnly) {\n            return $g_ado_db->GetOne($queryStr);\n        } else {\n            $rows = $g_ado_db->GetAll($queryStr);\n            $topics = array();\n            $em = \\Zend_Registry::get('container')->getService('em');\n            foreach ($rows as $row) {\n                $topics[] = $em->getReference('Newscoop\\NewscoopBundle\\Entity\\Topic', $row['TopicId']);\n            }\n\n            return $topics;\n        }\n    } // fn GetArticleTopics\n\n    /**\n     * Get the Articles that have the given Topic.\n     * @param  int   $p_topicId\n     * @return array\n     */\n    public static function GetArticlesWithTopic($p_topicId)\n    {\n        global $g_ado_db;\n\n        $articleIds = array();\n        $queryStr = \"SELECT NrArticle FROM ArticleTopics WHERE Topicid = $p_topicId\";\n        $rows = $g_ado_db->GetAll($queryStr);\n        if (is_array($rows)) {\n            foreach ($rows as $row) {\n                $articleIds[] = $row['NrArticle'];\n            }\n        }\n\n        $queryStr = 'SELECT DISTINCT(ArticleType) FROM TopicFields';\n        $rows = $g_ado_db->GetAll($queryStr);\n        foreach ($rows as $row) {\n            $queryStr = \"SELECT FieldName FROM TopicFields WHERE ArticleType = '\"\n                        . $row['ArticleType'] . \"'\";\n            $rows2 = $g_ado_db->GetAll($queryStr);\n            if (!is_array($rows2) || sizeof($rows2) == 0) {\n                continue;\n            }\n            $columns = '';\n            foreach ($rows2 as $row2) {\n                $columns .= \" OR F\" . $row2['FieldName'] . \" = $p_topicId\";\n            }\n            $columns = substr($columns, 3);\n            $queryStr = \"SELECT DISTINCT(NrArticle) FROM X\" . $row['ArticleType']\n                        . \" WHERE $columns\";\n            $rows2 = $g_ado_db->GetAll($queryStr);\n            if (!is_array($rows2)) {\n                continue;\n            }\n            foreach ($rows2 as $row2) {\n                foreach ($row2 as $fieldName=>$value) {\n                    $articleIds[] = $value;\n                }\n            }\n        }\n\n        if (sizeof($articleIds) == 0) {\n            return null;\n        }\n\n        $articleIds = array_unique($articleIds);\n        $tmpArticle = new Article();\n        $columnNames = implode(',', $tmpArticle->getColumnNames(true));\n        $queryStr = \"SELECT $columnNames FROM Articles WHERE Number IN (\"\n                    . implode(', ', $articleIds) . \")\";\n\n        return DbObjectArray::Create('Article', $queryStr);\n    } // fn GetArticlesWithTopic\n\n    /**\n     * Returns an article topics list based on the given parameters.\n     *\n     * @param array   $p_parameters\n     *                              An array of ComparisonOperation objects\n     * @param string  $p_order\n     *                              An array of columns and directions to order by\n     * @param integer $p_start\n     *                              The record number to start the list\n     * @param integer $p_limit\n     *                              The offset. How many records from $p_start will be retrieved.\n     * @param integer $p_count\n     *                              The total count of the elements; this count is computed without\n     *                              applying the start ($p_start) and limit parameters ($p_limit)\n     *\n     * @return array $articleTopicsList\n     *               An array of Topic objects\n     */\n    public static function GetList(array $p_parameters, $p_order = null,\n                                   $p_start = 0, $p_limit = 0, &$p_count, $p_skipCache = false)\n    {\n        global $g_ado_db;\n\n        if (!$p_skipCache && CampCache::IsEnabled()) {\n            $paramsArray['parameters'] = serialize($p_parameters);\n            $paramsArray['order'] = (is_null($p_order)) ? 'null' : $p_order;\n            $paramsArray['start'] = $p_start;\n            $paramsArray['limit'] = $p_limit;\n            $cacheListObj = new CampCacheList($paramsArray, __METHOD__);\n            $articleTopicsList = $cacheListObj->fetchFromCache();\n            if ($articleTopicsList !== false\n            && is_array($articleTopicsList)) {\n                return $articleTopicsList;\n            }\n        }\n\n        $selectClauseObj = new SQLSelectClause();\n        $countClauseObj = new SQLSelectClause();\n        $rootTopicIds = array();\n        // processes the parameters\n        $hasArticleNr = false;\n        foreach ($p_parameters as $parameter) {\n            $comparisonOperation = self::ProcessListParameters($parameter);\n            if (sizeof($comparisonOperation) < 1) {\n                break;\n            }\n\n            if (strpos($comparisonOperation['left'], 'NrArticle') !== false) {\n                $hasArticleNr = true;\n            }\n\n            if (strpos($comparisonOperation['left'], 'RootTopic') !== false) {\n                $rootTopicIds[] = (int) $comparisonOperation['right'];\n                continue;\n            }\n\n            $whereCondition = $g_ado_db->escapeOperation($comparisonOperation);\n            $selectClauseObj->addWhere($whereCondition);\n            $countClauseObj->addWhere($whereCondition);\n        }\n\n        // validates whether article number was given\n        if ($hasArticleNr === false) {\n            CampTemplate::singleton()->trigger_error(\"missed parameter Article Number in statement list_article_topics\");\n\n            return array();\n        }\n\n        if (count($rootTopicIds) > 0) {\n            $subtopicsQuery = self::buildSubtopicsArray($rootTopicIds);\n            if (!empty($subtopicsQuery)) {\n                $whereCondition = 'TopicId IN ('.implode(',', $subtopicsQuery).')';\n                $selectClauseObj->addWhere($whereCondition);\n                $countClauseObj->addWhere($whereCondition);\n            }\n        }\n\n        // sets the main table and columns to be fetched\n        $tmpArticleTopic = new ArticleTopic();\n        $selectClauseObj->setTable($tmpArticleTopic->getDbTableName());\n        $selectClauseObj->addColumn('TopicId');\n        $countClauseObj->setTable($tmpArticleTopic->getDbTableName());\n        $countClauseObj->addColumn('COUNT(*)');\n        unset($tmpArticleTopic);\n\n        if (!is_array($p_order)) {\n            $p_order = array();\n        }\n\n        // sets the order condition if any\n        foreach ($p_order as $orderColumn => $orderDirection) {\n            $selectClauseObj->addOrderBy($orderColumn . ' ' . $orderDirection);\n        }\n\n        // sets the limit\n        $selectClauseObj->setLimit($p_start, $p_limit);\n\n        // builds the query and executes it\n        $selectQuery = $selectClauseObj->buildQuery();\n\n        $topics = $g_ado_db->GetAll($selectQuery);\n        if (is_array($topics)) {\n            $countQuery = $countClauseObj->buildQuery();\n            $p_count = $g_ado_db->GetOne($countQuery);\n\n            // builds the array of topic objects\n            $articleTopicsList = array();\n            foreach ($topics as $topic) {\n                $articleTopicsList[] = $topic['TopicId'];\n            }\n        } else {\n            $articleTopicsList = array();\n            $p_count = 0;\n        }\n        if (!$p_skipCache && CampCache::IsEnabled()) {\n            $cacheListObj->storeInCache($articleTopicsList);\n        }\n\n        return $articleTopicsList;\n    } // fn GetList\n\n    /**\n     * Retrieves the subtopics of the given parent.\n     *\n     * @param  integer         $p_parentId - parent topic identifier\n     *\n     * @return array\n     */\n    private static function buildSubtopicsArray($p_parentIds = 0)\n    {\n        $p_parentIds = is_array($p_parentIds)? $p_parentIds: array($p_parentIds);\n        $em = \\Zend_Registry::get('container')->getService('em');\n        $childrenIds = array();\n        foreach ($p_parentIds as $p_parentId) {\n            $topic = $em->getReference('Newscoop\\NewscoopBundle\\Entity\\Topic', $p_parentId);\n            if ($topic) {\n                $children = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')->childrenWithTranslations($topic);\n                foreach ((array) $children->getArrayResult() as $key => $value) {\n                    $childrenIds[] = $value['id'];\n                }\n            }\n        }\n\n        return $childrenIds;\n    }\n\n    /**\n     * Processes a paremeter (condition) coming from template tags.\n     *\n     * @param array $p_param\n     *                       The array of parameters\n     *\n     * @return array $comparisonOperation;\n     *               The array containing processed values of the condition\n     */\n    private static function ProcessListParameters($p_param)\n    {\n        $comparisonOperation = array();\n\n        switch (strtolower($p_param->getLeftOperand())) {\n        case 'nrarticle':\n            $comparisonOperation['left'] = 'NrArticle';\n            $comparisonOperation['right'] = (int) $p_param->getRightOperand();\n            break;\n        case 'roottopic':\n            $comparisonOperation['left'] = 'RootTopic';\n            $comparisonOperation['right'] = (int) $p_param->getRightOperand();\n            break;\n        }\n\n        $operatorObj = $p_param->getOperator();\n        $comparisonOperation['symbol'] = $operatorObj->getSymbol('sql');\n\n        return $comparisonOperation;\n    } // fn ProcessListParameters\n\n} // class ArticleTopic\n"
  },
  {
    "path": "newscoop/classes/ArticleType.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleTypeField.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Translation.php');\n\n/**\n * @package Campsite\n */\nclass ArticleType {\n\tprivate $m_columnNames = array();\n\tprivate $m_dbTableName;\n\n\t/**\n\t * Stores the article type name.\n\t * @var string\n\t */\n\tprivate $m_name;\n\n\t/**\n\t * Stores an ArticleTypeField object\n\t * @var ArticleTypeField\n\t */\n\tprivate $m_metadata = null;\n\tprivate $m_dbColumns = array();\n\tprivate $m_publicFields = array();\n\n\t/**\n\t * An article type is a dynamic table that is created for an article\n\t * to allow different publications to display their content in different\n\t * ways.\n\t *\n\t * @param string $p_articleType\n\t */\n\tpublic function ArticleType($p_articleType)\n\t{\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('ArticleTypeField', $p_articleType), 'article_type');\n        if ($cacheService->contains($cacheKey)) {\n            $this->m_metadata = $cacheService->fetch($cacheKey);\n        } else {\n            $this->m_metadata = new ArticleTypeField($p_articleType, 'NULL');\n            $cacheService->save($cacheKey, $this->m_metadata);\n        }\n        \n\t\t$this->m_name = $this->m_metadata->getArticleType();\n        $this->m_dbTableName = 'X' . $this->m_name;\n\n        if ($this->m_metadata->exists()) {\n        \t// Get user-defined values.\n        \t$this->getUserDefinedColumns();\n        \tforeach ($this->m_dbColumns as $columnMetaData) {\n        \t\t$this->m_columnNames[] = $columnMetaData->getName();\n        \t}\n        }\n\t} // constructor\n\n\n\t/**\n\t * Create a new Article Type.  Creates a new table in the database.\n\t * @return boolean\n\t */\n\tpublic function create()\n\t{\n\t\tglobal $g_ado_db;\n\n\t\tif (strlen($this->m_dbTableName) <= 1) {\n\t\t\treturn false;\n\t\t}\n\t\t$queryStr = 'DROP TABLE IF EXISTS `'.$this->m_dbTableName.'`';\n\t\t$g_ado_db->Execute($queryStr);\n\n\t\t$queryStr = \"CREATE TABLE `\".$this->m_dbTableName.\"` (\\n\"\n                  . \"    NrArticle INT NOT NULL,\\n\"\n                  . \"    IdLanguage INT NOT NULL,\\n\"\n                  . \"    PRIMARY KEY(NrArticle, IdLanguage)\\n\"\n                  . \") DEFAULT CHARSET=utf8\";\n\t\t$success = $g_ado_db->Execute($queryStr);\n\n\t\tif ($success) {\n\t\t\t$metadata = new ArticleTypeField($this->getTypeName(), 'NULL');\n\t\t\t$success = $metadata->create(null);\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\n\t\tif ($success) {\n\t\t\tCampCache::singleton()->clear('user');\n\t\t} else {\n\t\t\t$queryStr = \"DROP TABLE `\" . $this->m_dbTableName . \"`\";\n\t\t\t$result = $g_ado_db->Execute($queryStr);\n\t\t}\n\n\t\treturn $success;\n\t} // fn create\n\n\n\t/**\n\t * Return TRUE if the Article Type exists.\n\t * @return boolean\n\t */\n\tpublic function exists()\n\t{\n\t\treturn $this->m_metadata->exists();\n\t} // fn exists\n\n\n\t/**\n\t * Delete the article type. This will delete the entire table\n\t * in the database. Not recommended unless there is no article\n\t * data in the table.\n\t */\n\tpublic function delete()\n\t{\n\t\tglobal $g_ado_db;\n\n\t\t$translation = new Translation(null, $this->m_metadata->getPhraseId());\n\t\t$translation->deletePhrase();\n\n\t\tforeach ($this->m_dbColumns as $field) {\n\t\t\t$field->delete();\n\t\t}\n        $this->m_metadata->delete();\n\n\t\t$queryStr = \"DROP TABLE `\" . $this->m_dbTableName . \"`\";\n\t\t$success = $g_ado_db->Execute($queryStr);\n\t\tCampCache::singleton()->clear('user');\n\t} // fn delete\n\n\n\t/**\n\t * Rename the article type. This will move the entire table in the\n\t * database and update ArticleTypeMetadata. Usually, one wants to\n\t * just rename the Display Name, which is done via SetDisplayName\n\t *\n\t * @param $p_newName\n\t */\n\tpublic function rename($p_newName)\n\t{\n\t\tglobal $g_ado_db;\n\n\t\tif (!ArticleType::isValidFieldName($p_newName)) {\n\t\t\treturn false;\n\t\t}\n\t\t$metadata = new ArticleTypeField($p_newName, 'NULL');\n\t\tif ($metadata->exists()) {\n\t\t\treturn false;\n\t\t}\n\n\t\t$oldName = $this->m_name;\n\t\t$oldNameEsc = $g_ado_db->escape($this->m_name);\n\t\t$newNameEsc = $g_ado_db->escape($p_newName);\n\n\t\t$queryStr = \"RENAME TABLE `\" . $this->m_dbTableName . \"` TO `X$p_newName`\";\n\t\t$success = $g_ado_db->Execute($queryStr);\n\t\tif ($success) {\n\t\t\t$queryStr = \"UPDATE ArticleTypeMetadata SET type_name = $newNameEsc \"\n\t\t\t. \"WHERE type_name = $oldNameEsc\";\n\t\t\t$success = $g_ado_db->Execute($queryStr);\n\t\t}\n        if ($success) {\n            $queryStr = \"UPDATE Articles SET Type = $newNameEsc WHERE Type = $oldNameEsc\";\n            $success = $g_ado_db->Execute($queryStr);\n        }\n\t\tif ($success) {\n            $this->m_name = $p_newName;\n            $this->m_dbTableName = 'X'. $p_newName;\n\t\t} else {\n            $queryStr = \"RENAME TABLE `X$p_newName` TO `\" . $this->m_dbTableName . \"`\";\n            $g_ado_db->Execute($queryStr);\n\t\t\t$queryStr = \"UPDATE ArticleTypeMetadata SET type_name = '$oldName' \"\n            . \"WHERE type_name = $newNameEsc\";\n            $g_ado_db->Execute($queryStr);\n            $queryStr = \"UPDATE Articles SET Type = '$oldName' WHERE Type = $newNameEsc\";\n            $g_ado_db->Execute($queryStr);\n\t\t}\n\t\treturn $success;\n\t} // fn rename\n\n\n\t/**\n\t* A quick lookup to see if the current language was already translated\n\t* for this article type: used by delete and update in setName.\n\t* Returns 0 if no translation or the phrase_id if there is one.\n\t*\n\t* @param int p_languageId\n\t*\n\t* @return 0 or phrase_id\n\t**/\n\tpublic function translationExists($p_languageId)\n\t{\n\t\tif ($this->m_metadata->getPhraseId() != -1) {\n\t\t\t$translation = new Translation($p_languageId, $this->m_metadata->getPhraseId());\n\t\t\tif ($translation->exists()) {\n\t\t\t\treturn $translation->getPhraseId();\n\t\t\t}\n\t\t}\n\t\treturn 0;\n\t} // fn translationExists\n\n\n\t/**\n\t * Set the type name for the given language. A new entry in\n\t * the database will be created if the language does not exist.\n\t *\n\t * @param int $p_languageId\n\t * @param string $p_value\n\t *\n\t * @return boolean\n\t */\n\tpublic function setName($p_languageId, $p_value)\n\t{\n\t\tglobal $g_ado_db;\n\t\tif (!is_numeric($p_languageId) || $p_languageId == 0) {\n\t\t\treturn false;\n\t\t}\n\n\t\t$changed = $this->m_metadata->setName($p_languageId, $p_value);\n\n\t\treturn $changed;\n\t} // fn setName\n\n\n\t/**\n\t * Returns the phrase id of the AT.\n\t *\n\t * @return -1 or integer\n\t */\n\tpublic function getPhraseId()\n\t{\n\t\treturn $this->m_metadata->getPhraseId();\n\t} // fn getPhraseId\n\n\n\t/**\n\t * Parses m_metadata for phrase_ids and returns an array of language_id => translation_text\n\t *\n\t * @return array\n\t */\n\tpublic function getTranslations()\n\t{\n\t\treturn Translation::GetTranslations($this->getPhraseId());\n\t} // fn getTranslations\n\n\n\t/**\n\t * @return string\n\t */\n\tpublic function getTypeName()\n\t{\n\t\treturn $this->m_name;\n\t} // fn getTypeName\n\n\n\t/**\n\t * @return string\n\t */\n\tpublic function getTableName()\n\t{\n\t\treturn $this->m_dbTableName;\n\t} // fn getTableName\n\n\n\t/**\n\t* Return an associative array of the metadata in ArticleFieldMetadata.\n\t*\n\t* @return array\n\t**/\n\tpublic function getMetadata()\n\t{\n\t\treturn $this->m_metadata->getMetadata();\n\t} // fn getMetadata\n\n\n\t/**\n\t * Return an array of ArticleTypeField objects.\n\t *\n\t * @return array\n\t */\n\tpublic function getUserDefinedColumns($p_fieldName = null, $p_selectHidden = true, $p_skipCache = false)\n\t{\n\t\tif (is_null($p_fieldName)) {\n\t\t\tif ($p_skipCache || empty($this->m_dbColumns)) {\n\t\t\t\t$this->m_dbColumns = ArticleTypeField::FetchFields(null, $this->m_name, 'NULL',\n\t\t\t\tfalse, false, true, true, $p_skipCache);\n\t\t\t\t$this->m_publicFields = array();\n\t\t\t\tforeach ($this->m_dbColumns as $field) {\n\t\t\t\t\tif (!$field->isHidden()) {\n\t\t\t\t\t\t$this->m_publicFields[] = $field;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $p_selectHidden ? $this->m_dbColumns : $this->m_publicFields;\n\t\t}\n\t\treturn ArticleTypeField::FetchFields($p_fieldName, $this->m_name, 'NULL',\n\t\tfalse, false, true, $p_selectHidden, $p_skipCache);\n\t} // fn getUserDefinedColumns\n\n\n\t/**\n\t * Static function.  Returns TRUE if the given name\n\t * is valid as an article type name.\n\t *\n\t * @param string $p_name\n\t * @return boolean\n\t */\n\tpublic static function IsValidFieldName($p_name)\n\t{\n\t\tif (empty($p_name)) {\n\t\t\treturn false;\n\t\t}\n\t\t$hasLetter = false;\n\t\tfor ($i = 0; $i < strlen($p_name); $i++) {\n\t\t\t$c = $p_name[$i];\n\t\t\t$isLetter = ($c >= 'A' && $c <= 'Z') || ($c >= 'a' && $c <= 'z');\n\t\t\t$hasLetter = $hasLetter || $isLetter;\n\t\t\t$valid = $isLetter || $c == '_';\n\t\t\tif (!$valid) {\n\t\t\t  return false;\n\t\t\t}\n\t\t}\n\t\treturn true && $hasLetter;\n\t} // fn IsValidFieldName\n\n\n\t/**\n\t * Get all article types that currently exist.\n\t * Returns an array of strings.\n\t *\n\t * @param boolean $p_includeHidden\n\t *\n\t * @return array\n\t */\n\tpublic static function GetArticleTypes($p_includeHidden = false)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$queryStr = \"SELECT type_name FROM ArticleTypeMetadata WHERE field_name = 'NULL'\";\n\t\tif (!$p_includeHidden) {\n\t\t    $queryStr .= \" AND is_hidden = 0\";\n\t\t}\n\t\t$res = $g_ado_db->GetAll($queryStr);\n\t\tif (!$res) {\n\t\t\treturn array();\n\t\t}\n\t\t$finalNames = array();\n\t\tforeach ($res as $v) {\n\t\t\t$finalNames[] = $v['type_name'];\n\t\t}\n\t\treturn $finalNames;\n\t} // fn GetArticleTypes\n\n\n\t/**\n\t * Sets whether the article type should be visible\n\t * or hidden.\n\t *\n\t * @param string p_status (hide|show)\n\t */\n\tpublic function setStatus($p_status)\n\t{\n\t\treturn $this->m_metadata->setStatus($p_status);\n\t} // fn setStatus\n\n\n\t/**\n\t * Returns 'hidden' if the article type should not be visible,\n\t * and 'shown' if it should be.\n\t *\n\t * @return string (shown|hidden)\n\t */\n\tpublic function getStatus()\n\t{\n\t\treturn $this->m_metadata->getStatus();\n\t} // fn getStatus\n\n\n\t/**\n\t * Return TRUE if comments are enabled for this article type.\n\t *\n\t * @return boolean\n\t */\n\tpublic function commentsEnabled()\n\t{\n\t\treturn $this->m_metadata->getProperty('comments_enabled');\n\t} // fn commentsEnabled\n\n\t/**\n     * Gets the maximum size of a article type\n\t * @return int\n\t */\n\tpublic function getMaxSize()\n\t{\n\t\treturn $this->m_metadata->getProperty('max_size');\n\t} // fn getMaxSize\n\n\t/**\n\t * Return TRUE if comments are enabled for this article type.\n\t *\n\t * @param boolean $p_value\n\t */\n\tpublic function setCommentsEnabled($p_value)\n\t{\n\t\t$p_value = $p_value ? '1' : '0';\n\t\treturn $this->m_metadata->setProperty('comments_enabled', $p_value);\n\t} // fn setCommentsEnabled\n\n\n\t/**\n\t * Gets the language code of the current translation language; or none\n\t * if there is no translation.\n\t *\n\t * @param int p_lang\n\t *\n\t * @return string\n\t */\n\tpublic function getDisplayNameLanguageCode($p_lang = 0)\n\t{\n\t\treturn $this->m_metadata->getDisplayNameLanguageCode($p_lang);\n\t} // fn getDisplayNameLanguageCode\n\n\n\t/**\n\t * Gets the translation for a given language; default language is the\n\t * session language.  If no translation is set for that language, we\n\t * return the dbTableName.\n     *\n\t * @param int p_lang\n\t *\n\t * @return string\n\t */\n\tpublic function getDisplayName($p_lang = 0)\n\t{\n\t\t$displayName = $this->m_metadata->getDisplayName($p_lang);\n\t\tif ($displayName == 'NULL') {\n\t\t\treturn $this->m_name;\n\t\t}\n\t\treturn $displayName;\n\t} // fn getDisplayName\n\n    /**\n     * Returns whether articles of this type should be filtered out by default at listings.\n     *\n     * @return bool\n     **/\n    public function getFilterStatus()\n    {\n        return $this->m_metadata->getFilter();\n    }\n\n    /**\n     * Action for setting article type filtering.\n     *\n     * @return bool\n     **/\n    public static function SetTypeFilter($p_article_type, $p_filter_value)\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $p_filter_value = (bool) trim('' . $p_filter_value);\n\n        $field = new ArticleTypeField($p_article_type, 'NULL');\n\n        if (!$field->exists()) {\n            return $translator->trans('No such article type', array(), 'api');\n        }\n\n        $res = $field->setFilter($p_filter_value);\n        if (!$res) {\n            return $translator->trans('Filter not saved', array(), 'api');\n        }\n        return $translator->trans('Filter saved', array(), 'api');\n    }\n\n\t/**\n\t * Returns the number of articles associated with this type.\n\t *\n\t * @return int\n\t **/\n\tpublic function getNumArticles()\n\t{\n\t\tglobal $g_ado_db;\n        $sql = \"SELECT COUNT(*) FROM `\". $this->m_dbTableName .\"`, Articles WHERE `\"\n               . $this->m_dbTableName . \"`.NrArticle = Articles.Number AND `\"\n               . $this->m_dbTableName . \"`.IdLanguage = Articles.IdLanguage\";\n\t\treturn $g_ado_db->GetOne($sql);\n\t} // fn getNumArticles\n\n\n    /**\n     *\n     * For the preview of merge; this grabs an array of the article numbers\n     * for calculating next, previous and current.\n     *\n     * @return array\n     */\n    public function getArticlesArray()\n    {\n        global $g_ado_db;\n        $sql = \"SELECT NrArticle FROM `\". $this->m_dbTableName .\"`, Articles WHERE `\"\n               . $this->m_dbTableName . \"`.NrArticle = Articles.Number AND `\"\n               . $this->m_dbTableName . \"`.IdLanguage = Articles.IdLanguage\";\n        $rows = $g_ado_db->GetAll($sql);\n        $returnArray = array();\n        foreach ($rows as $row) {\n            $returnArray[] = $row['NrArticle'];\n        }\n        return $returnArray;\n    }\n\n\n    /**\n     * Creates a preview table of PreviewNTablename, where N is a unique integer.\n     *\n     * @param string p_table\n     * @return string a tablename\n     */\n    public function __getPreviewTableName($p_table)\n    {\n        $res = 1;\n        $append = 0;\n        while ($res) {\n    \t\t$append++;\n            $sql = \"DESC XPreview$append$p_table\";\n    \t\t$res = $g_ado_db->GetOne($sql);\n        }\n        $dest = 'Preview'. $append . $p_table;\n        $sql = \"CREATE TABLE X$dest LIKE X$p_table\";\n        $res = $g_ado_db->Execute($sql);\n        if (!$res) return 0;\n        $sql = \"SELECT * FROM ArticleTypeMetadata WHERE type_name='$p_table'\";\n        $rows = $g_ado_db->GetAll($sql);\n        if (!count($rows)) return 0;\n        foreach ($rows as $row) {\n            $keys = array();\n            $values = array();\n            foreach ($row as $k => $v) {\n                $keys[] = $k;\n                if ($k == 'type_name') $v = $dest;\n                if (!is_numeric($v)) $values[] = \"'$v'\";\n                else $values[] = $v;\n            }\n            $keysString = implode(',', $keys);\n            $valuesString = implode(',', $values);\n            $sql = \"INSERT INTO ArticleTypeMetadata ($keysString) VALUES ($valuesString)\";\n            $res = $g_ado_db->Execute($sql);\n            if (!$res) return 0;\n        }\n        return 'Preview'. $dest;\n    } // fn __getPreviewTableName\n\n\n    /**\n     * Returns an ArticleData object of the first found article of this type.\n     * If no article was found create an empty one.\n     *\n     * @return object\n     */\n    public function getPreviewArticleData()\n    {\n        global $g_ado_db;\n        $sql = \"SELECT \" . $this->m_dbTableName . \".* FROM \"\n               . $this->m_dbTableName .\", Articles WHERE \"\n               . $this->m_dbTableName . \".NrArticle = Articles.Number AND \"\n               . $this->m_dbTableName . \".IdLanguage = Articles.IdLanguage LIMIT 1\";\n        $row = $g_ado_db->GetRow($sql);\n        if (!$row) {\n            $destArticleData = new ArticleData($this->m_name, Article::__generateArticleNumber(), 1);\n        } else {\n            $destArticleData = new ArticleData($this->m_name, $row['NrArticle'], $row['IdLanguage']);\n        }\n        return $destArticleData;\n    }\n\n\n    /**\n     * Does the merge or a preview of the merge.\n     * The p_rules array is an associative array with the key being the DESTINATION fieldname\n     * and the values being the SOURCE fieldname (without Fs).\n     * E.g.\n     * $p_rules = array('a' => 'a', 'b' => 'title', 'd' => 'body');\n     *\n     * p_rules is verified elsewhere (see article_types/merge3.php).\n     *\n     * If we are doing an actual merge, all that happens is that we rename the Type in Articles\n     * from SrcType to DestType and run the merge (p_rules) on the XSrcTable entries and move\n     * them over to XDestType.  Merged articles have the same ArticleNumber as their originals.\n     *\n\t * @param string p_src\n\t * @param string p_dest\n\t * @param array p_rules\n\t *\n\t * @return boolean\n\t **/\n\tpublic function merge($p_src, $p_dest, $p_rules)\n\t{\n\t\tglobal $g_ado_db;\n\t    // non-preview mode, the actual merge\n        // all that needs to be done is to copy entries from Xsrc to Xdest\n        // and then reassign the type in the Articles table\n\t    $sql = \"SELECT * FROM X$p_src\";\n\t    $rows = $g_ado_db->GetAll($sql);\n\t    if (!count($rows)) {\n\t    \treturn 0;\n\t    }\n\t    foreach ($rows as $row) {\n\t    \t$articleObj = new Article($row['IdLanguage'], $row['NrArticle']);\n\t    \t$articleObj->resetCache();\n\t    \tunset($articleObj);\n            $fields = array();\n            $values = array();\n            foreach ($p_rules as $destC => $srcC) {\n                $fields[] = 'F'. $destC;\n                if ($srcC == 'NULL') $values[] = \"''\";\n                else if (is_numeric($row['F'. $srcC])) $values[] = $row['F'. $srcC];\n                else $values[] = $g_ado_db->escape($row['F'. $srcC]);\n            }\n            $fields[] = 'NrArticle';\n            $values[] = $row['NrArticle'];\n            $fields[] = 'IdLanguage';\n            $values[] = $row['IdLanguage'];\n            $fieldsString = implode(',', $fields);\n            $valuesString = implode(',', $values);\n            $sql = \"INSERT IGNORE INTO X$p_dest ($fieldsString) VALUES ($valuesString)\";\n\t\t    if (!$g_ado_db->Execute($sql)) {\n\t\t    \treturn 0;\n\t\t    }\n\t    }\n\n        $sql = \"UPDATE Articles SET Type='$p_dest' WHERE Type='$p_src'\";\n        if (!$g_ado_db->Execute($sql)) {\n        \treturn 0;\n        }\n\n        $sql = \"DELETE FROM X$p_src\";\n        $g_ado_db->Execute($sql);\n        CampCache::singleton()->clear('user');\n\n\t    return 1;\n\t} // fn merge\n} // class ArticleType\n\n?>\n"
  },
  {
    "path": "newscoop/classes/ArticleTypeField.php",
    "content": "<?php\n/**\n * @package Campsite\n */\nuse Newscoop\\ArticleDatetime as ArticleDatetime;\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/CampCacheList.php');\n\n/**\n * @package Campsite\n */\nclass ArticleTypeField extends DatabaseObject\n{\n    const TYPE_TEXT = 'text';\n    const TYPE_LONGTEXT = 'longtext';\n    const TYPE_BODY = 'body';\n    const TYPE_DATE = 'date';\n    const TYPE_COMPLEX_DATE = 'complex_date';\n    const TYPE_TOPIC = 'topic';\n    const TYPE_SWITCH = 'switch';\n    const TYPE_NUMERIC = 'numeric';\n\n    const NUMERIC_DEFAULT_DIGITS = 65;\n    const NUMERIC_DEFAULT_PRECISION = 2;\n\n    const BODY_ROWS_SMALL = 250;\n    const BODY_ROWS_MEDIUM = 500;\n    const BODY_ROWS_LARGE = 750;\n\n    public $m_dbTableName = 'ArticleTypeMetadata';\n    public $m_keyColumnNames = array('type_name', 'field_name');\n    public $m_columnNames = array(\n        'type_name',\n        'field_name',\n        'field_weight',\n        'is_hidden',\n        'comments_enabled',\n        'fk_phrase_id',\n        'field_type',\n        'field_type_param',\n        'is_content_field',\n        'show_in_editor',\n        'max_size');\n    private $m_rootTopicId = null;\n    private $m_precision = null;\n    private $m_editorSize = null;\n    private $m_colorValue = null;\n    private $m_filterOut = null;\n\n    public function __construct($p_articleTypeName = null, $p_fieldName = null)\n    {\n        $this->m_data['type_name'] = $p_articleTypeName;\n        $this->m_data['field_name'] = $p_fieldName;\n        if ($this->keyValuesExist()) {\n            $this->fetch();\n        }\n    } // constructor\n\n    /**\n     * Returns the article type name.\n     *\n     * @return string\n     */\n    public function getArticleType()\n    {\n        return $this->m_data['type_name'];\n    } // fn getArticleType\n\n    /**\n     * Rename the article type field.\n     *\n     * @param string p_newName\n     *\n     */\n    public function rename($p_newName)\n    {\n        global $g_ado_db;\n        if (!$this->exists() || !ArticleType::isValidFieldName($p_newName)) {\n            return 0;\n        }\n\n        $types = self::DatabaseTypes(null, $this->m_precision);\n        $oldFieldName = $this->m_data['field_name'];\n\n        $queryStr = \"ALTER TABLE `X\". $this->m_data['type_name'].\"` CHANGE COLUMN `\"\n        . $this->getName() .\"` `F$p_newName` \". $types[$this->getType()];\n        $success = $g_ado_db->Execute($queryStr);\n\n        if ($success) {\n            if ($this->getType() == self::TYPE_TOPIC) {\n                $query = \"UPDATE TopicFields SET FieldName = \" . $g_ado_db->escape($p_newName)\n                . \" WHERE RootTopicId = \" . $this->getTopicTypeRootElement();\n                $g_ado_db->Execute($query);\n            }\n\n            $fieldName = $this->m_data['field_name'];\n            $this->setProperty('field_name', $p_newName);\n\n            if ($this->getType() == self::TYPE_COMPLEX_DATE) {\n                $em = Zend_Registry::get('container')->getService('em');\n                $repo = $em->getRepository('Newscoop\\Entity\\ArticleDatetime');\n                $repo->renameField($this->m_data['type_name'], array('old' => $oldFieldName, 'new' => $p_newName));\n            }\n        }\n    } // fn rename\n\n    /**\n     * Fetch a single record from the database for the given key.\n     *\n     * @param array $p_recordSet\n     *                           If the record has already been fetched and we just need to\n     *                           assign the data to the object's internal member variable.\n     *\n     * @return boolean\n     *                 TRUE on success, FALSE on failure\n     */\n    public function fetch($p_recordSet = null, $p_forceExists = false)\n    {\n        $success = parent::fetch($p_recordSet);\n        if ($success && $this->getType() == self::TYPE_NUMERIC) {\n            $params = explode('=', $this->m_data['field_type_param']);\n            if (isset($params[0]) && $params[0] == 'precision') {\n                $this->m_precision = (int) $params[1];\n            }\n        }\n        if ($success && $this->getType() == self::TYPE_BODY) {\n            $params = explode('=', $this->m_data['field_type_param']);\n            if (isset($params[0]) && $params[0] == 'editor_size') {\n                $this->m_editorSize = (int) $params[1];\n            }\n        }\n        if ($success && $this->getType() == self::TYPE_COMPLEX_DATE) {\n            $params = explode(';', $this->m_data['field_type_param']);\n                        foreach ($params as $one_param) {\n                            $one_param_parts = explode('=', $one_param);\n                if (isset($one_param_parts[1]) && $one_param_parts[0] == 'color') {\n                    $this->m_colorValue = '' . $one_param_parts[1];\n                }\n            }\n        }\n        if ($success && (!$this->getType())) {\n            $params = explode(';', $this->m_data['field_type_param']);\n            foreach ($params as $one_param) {\n                $one_param_parts = explode('=', $one_param);\n                if (isset($one_param_parts[1]) && $one_param_parts[0] == 'filter') {\n                    $this->m_filterOut = (bool) ('' . $one_param_parts[1]);\n                }\n            }\n        }\n\n        return $success;\n    }\n\n        public function setColor($p_color)\n        {\n            $this->m_colorValue = '' . $p_color;\n            if ($this->getType() == self::TYPE_COMPLEX_DATE) {\n                $this->setProperty('field_type_param', 'color=' . $this->m_colorValue);\n\n                return true;\n            }\n\n            return false;\n        }\n\n        public static function getDefaultColor()\n        {\n            return '#f0a040';\n        }\n\n        public function getColor()\n        {\n            $default_color = self::getDefaultColor();\n            $color = '' . $this->m_colorValue;\n            if (empty($color)) {\n                $color = $default_color;\n            }\n\n            return $color;\n        }\n\n        public static function SetFieldColor($p_article_type, $p_field_name, $p_color_value)\n        {\n            $p_color_value = trim(strtolower('' . $p_color_value));\n\n            $translator = \\Zend_Registry::get('container')->getService('translator');\n            $is_color = false;\n            if (7 == strlen($p_color_value)) {\n                if (preg_match('/^#[0-9a-f]{6}$/', $p_color_value)) {\n                    $is_color = true;\n                }\n            }\n            if (!$is_color) {\n                return $translator->trans('Not a color', array(), 'api');\n            }\n\n            $field = new ArticleTypeField($p_article_type, $p_field_name);\n            if (!$field->exists()) {\n                return $translator->trans('No such field', array(), 'api');\n            }\n\n            $res = $field->setColor($p_color_value);\n            if (!$res) {\n                return $translator->trans('Color not saved', array(), 'api');\n            }\n\n            return $translator->trans('Color saved', array(), 'api');\n        }\n\n    /**\n     * Sets whether articles of this type should be filtered out by default at listings.\n     *\n     * @return bool\n     **/\n    public function setFilter($p_filter)\n    {\n        $this->m_filterOut = (bool) ('' . $p_filter);\n        if (!$this->getType()) {\n            $filter_db_value = (int) $this->m_filterOut;\n            $this->setProperty('field_type_param', 'filter=' . $filter_db_value);\n\n            return true;\n        }\n\n        return false;\n    }\n\n    /**\n     * Returns whether articles of this type should be filtered out by default at listings.\n     *\n     * @return bool\n     **/\n    public function getFilter()\n    {\n        $filter = (bool) $this->m_filterOut;\n        if (empty($filter)) {\n            $filter = false;\n        }\n\n        return $filter;\n    }\n\n    /**\n     * Create a column in the table.\n     * @param string $p_type\n     *                       Can be one of: 'text', 'date', 'body', 'switch', 'numeric'.\n     */\n    public function create($p_type = null, array $p_params = array())\n    {\n        global $g_ado_db;\n\n        $p_type = strtolower($p_type);\n        $numericPrecision = isset($p_params['precision']) ? $p_params['precision'] : null;\n        $types = self::DatabaseTypes(null, $numericPrecision);\n        if ($this->getPrintName() != 'NULL' && !array_key_exists($p_type, $types)) {\n            return false;\n        }\n\n        if ($p_type == self::TYPE_TOPIC && $this->getPrintName() != 'NULL') {\n            if (!isset($p_params['root_topic_id']) && !is_numeric($p_params['root_topic_id'])) {\n                return false;\n            }\n            $rootTopicId = (int) $p_params['root_topic_id'];\n            $queryStr2 = \"INSERT INTO TopicFields (ArticleType, FieldName, RootTopicId) \"\n            . \"VALUES (\".$g_ado_db->escape($this->m_data['type_name']) . \", \"\n            . $g_ado_db->escape($this->m_data['field_name']) . \", '$rootTopicId')\";\n            if (!$g_ado_db->Execute($queryStr2)) {\n                return false;\n            }\n        }\n\n        if ($this->getPrintName() != 'NULL') {\n            $queryStr = \"ALTER TABLE `X\" . $this->m_data['type_name'] . \"` ADD COLUMN `\"\n            . $this->getName() . '` ' . $types[$p_type];\n            $success = $g_ado_db->Execute($queryStr);\n        }\n        if ($this->getPrintName() == 'NULL' || $success) {\n            $data = array();\n            if ($this->getPrintName() != 'NULL') {\n                if ($p_type == self::TYPE_BODY && isset($p_params['is_content'])) {\n                    $data['is_content_field'] = (int) $p_params['is_content'];\n                }\n                if ($p_type == self::TYPE_BODY && isset($p_params['editor_size'])) {\n                    $data['field_type_param'] = 'editor_size=' . $p_params['editor_size'];\n                }\n                if ($p_type == self::TYPE_NUMERIC && isset($p_params['precision'])) {\n                    $data['field_type_param'] = 'precision=' . (int) $p_params['precision'];\n                }\n                if ($p_type == self::TYPE_TEXT && isset($p_params['maxsize'])) {\n                    $data['max_size'] = (int) $p_params['maxsize'];\n                }\n                $data['show_in_editor'] = (int) $p_params['show_in_editor'];\n                $data['field_type'] = $p_type;\n                $data['field_weight'] = $this->getNextOrder();\n            }\n            $success = parent::create($data);\n        }\n\n        if ($success) {\n            if ($p_type == self::TYPE_COMPLEX_DATE && isset($p_params['event_color'])) {\n                $success = $this->setColor($p_params['event_color']);\n            }\n        }\n\n        if ($success) {\n            CampCache::singleton()->clear('user');\n        }\n\n        return $success;\n    } // fn create\n\n\n    /**\n     * Returns an array of types compatible with the given field type.\n     * @return array\n     */\n    public static function TypesConvertibleTo($p_type)\n    {\n        switch ($p_type) {\n            case self::TYPE_BODY:\n                return array(self::TYPE_LONGTEXT, self::TYPE_TEXT, self::TYPE_DATE, self::TYPE_TOPIC, self::TYPE_SWITCH, self::TYPE_NUMERIC);\n            case self::TYPE_TEXT:\n                return array(self::TYPE_LONGTEXT, self::TYPE_DATE, self::TYPE_TOPIC, self::TYPE_SWITCH, self::TYPE_NUMERIC);\n            case self::TYPE_LONGTEXT:\n                return array(self::TYPE_DATE, self::TYPE_TOPIC, self::TYPE_SWITCH, self::TYPE_NUMERIC, self::TYPE_BODY);\n            case self::TYPE_DATE:\n                return array();\n            case self::TYPE_TOPIC:\n                return array();\n            case self::TYPE_SWITCH:\n                return array();\n            case self::TYPE_NUMERIC:\n                return array();\n            case self::TYPE_COMPLEX_DATE:\n                return array();\n        }\n\n        return false;\n    }\n\n\n    public static function TypesConvertibleFrom($p_type)\n    {\n        $allTypes = self::DatabaseTypes();\n        if (!array_key_exists($p_type, $allTypes)) {\n            return false;\n        }\n        $convertibleFromTypes = array();\n        foreach ($allTypes as $typeName=>$sqlDesc) {\n            if (array_search($p_type, self::TypesConvertibleTo($typeName)) !== false) {\n                $convertibleFromTypes[] = $typeName;\n            }\n        }\n\n        return $convertibleFromTypes;\n    }\n\n\n    public function getConvertibleFromTypes()\n    {\n        return self::TypesConvertibleTo($this->getType());\n    }\n\n\n    public function getConvertibleToTypes()\n    {\n        return self::TypesConvertibleFrom($this->getType());\n    }\n\n\n    /**\n     * Returns true if the given type can be converted to the current field type.\n     * @param $p_type\n     * @return boolean\n     */\n    public function isConvertibleFrom($p_type)\n    {\n        if (is_object($p_type) && get_class($p_type) == __CLASS__) {\n            if ($this->getType() == 'topic' && $p_type->getType() == 'topic') {\n                return $this->getTopicTypeRootElement() == $p_type->getTopicTypeRootElement();\n            }\n            $p_type = $p_type->getType();\n        }\n\n        return ($this->getType() == $p_type && $p_type != 'topic')\n        || array_search($p_type, $this->getConvertibleFromTypes()) !== false;\n    }\n\n\n    public function isConvertibleTo($p_type)\n    {\n        return array_search($p_type, $this->getConvertibleToTypes());\n    }\n\n\n    /**\n     * Changes the type of the field\n     *\n     * @param string p_type (text|date|body|topic|switch|numeric)\n     */\n    public function setType($p_type)\n    {\n        global $g_ado_db;\n\n        $p_type = strtolower($p_type);\n        $types = self::DatabaseTypes();\n        if (!array_key_exists($p_type, $types)) {\n            return false;\n        }\n        if ($this->getType() == $p_type) {\n            return true;\n        }\n\n        if ($this->getType() == self::TYPE_TOPIC) {\n            $queryStr = \"DELETE FROM TopicFields WHERE ArticleType = \"\n            . $g_ado_db->escape($this->m_data['type_name'])\n            .\" AND FieldName = \". $g_ado_db->escape($this->m_data['field_name']);\n            if (!$g_ado_db->Execute($queryStr)) {\n                return false;\n            }\n        }\n        $queryStr = \"ALTER TABLE `X\" . $this->m_data['type_name'] . \"` MODIFY `\"\n        . $this->getName() . '` ' . $types[$p_type];\n        $success = $g_ado_db->Execute($queryStr);\n        if ($success) {\n            $this->setProperty('field_type_param', null);\n            $success = $this->setProperty('field_type', $p_type);\n            $this->m_rootTopicId = null;\n        }\n\n        return $success;\n    } // fn setType\n\n\n    /**\n     * Deletes the current article type field.\n     */\n    public function delete()\n    {\n        global $g_ado_db;\n\n        if (!$this->exists()) {\n            return false;\n        }\n\n        $oldFieldName = $this->m_data['field_name'];\n        $typeName = $this->m_data['type_name'];\n        $typeType = $this->getType();\n\n        $orders = $this->getOrders();\n\n        $translation = new Translation(null, $this->getPhraseId());\n        $translation->deletePhrase();\n\n        $success = false;\n        if ($this->getPrintName() != 'NULL') {\n            $queryStr = \"ALTER TABLE `X\" . $this->m_data['type_name']\n            . \"` DROP COLUMN `\" . $this->getName() . \"`\";\n            $success = $g_ado_db->Execute($queryStr);\n        }\n\n        if ($success || $this->getPrintName() == 'NULL') {\n            $myType = $this->getType();\n            if ($myType == self::TYPE_TOPIC) {\n                $queryStr = \"DELETE FROM TopicFields WHERE ArticleType = \"\n                . $g_ado_db->escape($this->m_data['type_name']) . \" and FieldName = \"\n                . $g_ado_db->escape($this->m_data['field_name']);\n                $g_ado_db->Execute($queryStr);\n                $this->m_rootTopicId = null;\n            }\n            $fieldName = $this->m_data['field_name'];\n            $success = parent::delete();\n        }\n\n        if ($success) {\n            if ($typeType == self::TYPE_COMPLEX_DATE) {\n                $em = Zend_Registry::get('container')->getService('em');\n                $repo = $em->getRepository('Newscoop\\Entity\\ArticleDatetime');\n                $repo->deleteField($typeName, array('old' => $oldFieldName));\n            }\n        }\n\n        // reorder\n        if ($success) {\n            $newOrders = array();\n            foreach ($orders as $k => $v) {\n                if (array_key_exists('field_name', $this->m_data)) {\n                    if ($v != $this->m_data['field_name']) $newOrders[] = $v;\n                }\n\n            }\n            $newOrders = array_reverse($newOrders);\n            $this->setOrders($newOrders);\n            CampCache::singleton()->clear('user');\n        }\n\n        return $success;\n    } // fn delete\n\n\n    /**\n     * @return string\n     */\n    public function getName()\n    {\n        return 'F'.$this->m_data['field_name'];\n    } // fn getName\n\n    /**\n     * Gets the maximum size of a article type\n     * @return int\n     */\n    public function getMaxSize()\n    {\n        return $this->m_data['max_size'];\n    } // fn getMaxSize\n\n    /**\n     * @return string\n     */\n    public function getPrintName()\n    {\n        return $this->m_data['field_name'];\n    } // fn getPrintName\n\n\n    /**\n     * @return string\n     */\n    public function getType()\n    {\n        return $this->m_data['field_type'];\n    } // fn getType\n\n\n    public function getGenericType()\n    {\n        switch ($this->getType()) {\n            case self::TYPE_BODY:\n            case self::TYPE_TEXT:\n            case self::TYPE_LONGTEXT:\n                return 'string';\n            case self::TYPE_DATE:\n                return 'date';\n            case self::TYPE_NUMERIC:\n                return 'integer';\n            case self::TYPE_SWITCH:\n                return 'switch';\n            case self::TYPE_TOPIC:\n                return 'topic';\n        }\n\n        return null;\n    }\n\n\n    /**\n     * @return string\n     */\n    public function getTopicTypeRootElement()\n    {\n        global $g_ado_db;\n\n        if ($this->getType() == self::TYPE_TOPIC && is_null($this->m_rootTopicId)) {\n            $queryStr = \"SELECT RootTopicId FROM TopicFields WHERE ArticleType = \"\n            . $g_ado_db->escape($this->getArticleType()) . \" and FieldName = \"\n            . $g_ado_db->escape($this->getPrintName());\n            $this->m_rootTopicId = $g_ado_db->GetOne($queryStr);\n        }\n\n        return $this->m_rootTopicId;\n    }\n\n\n    /**\n     * Get a human-readable representation of the column type.\n     * @return string\n     */\n    public static function VerboseTypeName($p_typeName, $p_languageId = 1, $p_rootTopicId = null)\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $translator->trans('Invalid security token!', array(), 'api');\n        switch ($p_typeName) {\n        case self::TYPE_BODY:\n            return $translator->trans('Multi-line Text with WYSIWYG', array(), 'api');\n        case self::TYPE_TEXT:\n            return $translator->trans('Single-line Text', array(), 'api');\n        case self::TYPE_LONGTEXT:\n            return $translator->trans('Multi-line Text', array(), 'api');\n        case self::TYPE_DATE:\n            return $translator->trans('Date');\n        case self::TYPE_TOPIC:\n            if (is_null($p_rootTopicId)) {\n                return $translator->trans('Topic');\n            }\n\n            $em = \\Zend_Registry::get('container')->getService('em');\n            $repository = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic');\n            $locale = $em->getReference(\"Newscoop\\Entity\\Language\", $p_languageId)->getCode();\n            $topic = $repository->getTopicByIdOrName($p_rootTopicId, $locale)->getArrayResult();\n\n            return $translator->trans('Topic') . ' (' . $topic[0]['title'] . ')';\n            break;\n        case self::TYPE_SWITCH:\n            return $translator->trans('Switch', array(), 'api');\n        case self::TYPE_NUMERIC:\n            return $translator->trans('Numeric', array(), 'api');\n        case self::TYPE_COMPLEX_DATE:\n            return $translator->trans('Complex Date', array(), 'api');\n        default:\n            return $translator->trans(\"unknown\", array(), 'api');\n        }\n    } // fn VerboseTypeName\n\n\n    public function getVerboseTypeName($p_languageId = 1)\n    {\n        $rootTopicId = $this->getType() == self::TYPE_TOPIC ? $this->getTopicTypeRootElement() : null;\n\n        return self::VerboseTypeName($this->getType(), $p_languageId, $rootTopicId);\n    }\n\n\n    /**\n     * Gets the language code of the current translation language; or none\n     * if there is no translation.\n     *\n     * @param int p_lang\n     *\n     * @return string\n     */\n    public function getDisplayNameLanguageCode($p_lang = 0)\n    {\n        if (!$p_lang) {\n            $lang = camp_session_get('LoginLanguageId', 1);\n        } else {\n            $lang = $p_lang;\n        }\n        $languageObj = new Language($lang);\n        $translations = $this->getTranslations();\n        if (!isset($translations[$lang])) {\n            return '';\n        }\n\n        return '('. $languageObj->getCode() .')';\n    } // fn getDisplayNameLanguageCode\n\n\n        /**\n         * Gets the translation for a given language; default language is the\n         * session language.  If no translation is set for that language, we\n         * return the dbTableName.\n         *\n         * @param int p_lang\n         *\n         * @return string\n         */\n        public function getDisplayName($p_lang = 0)\n        {\n            $lang = (!$p_lang) ? camp_session_get('LoginLanguageId', 1) : $p_lang;\n            $translations = $this->getTranslations();\n\n            if (!isset($translations[$lang])) {\n                return $this->getPrintName();\n            }\n\n            return $translations[$lang];\n        } // fn getDisplayName\n\n\n    /**\n     * Returns the is_hidden status of a field.  Returns 'hidden' or 'shown'.\n     *\n     * @return string (shown|hidden)\n     */\n    public function getStatus()\n    {\n        if ($this->m_data['is_hidden']) {\n            return 'hidden';\n        } else {\n            return 'shown';\n        }\n    } // fn getStatus\n\n\n    /**\n     * @param string p_status (hide|show)\n     */\n    public function setStatus($p_status)\n    {\n        if ($p_status == 'show') {\n            $hidden = 0;\n        } elseif ($p_status == 'hide') {\n            $hidden = 1;\n        } else {\n            return null;\n        }\n\n        return $this->setProperty('is_hidden', $hidden);\n    } // fn setStatus\n\n\n    /**\n     * Return an associative array of the metadata in ArticleFieldMetadata.\n     *\n     * @return array\n     */\n    public function getMetadata()\n    {\n        return $this->m_data;\n    } // fn getMetadata\n\n\n    /**\n     * @return -1 OR int\n     */\n    public function getPhraseId()\n    {\n        if (isset($this->m_data['fk_phrase_id'])) {\n            return $this->m_data['fk_phrase_id'];\n        }\n\n        return -1;\n    } // fn getPhraseId()\n\n\n    /**\n     * Returns an array of translation strings for the field name.\n     * @return array\n     */\n    public function getTranslations()\n    {\n        $return = array();\n        $tmp = Translation::getTranslations($this->getPhraseId());\n        foreach ($tmp as $k => $v) {\n            $return[$k] = $v;\n        }\n\n        return $return;\n    } // fn getTransltions\n\n\n    /**\n     * Returns true if the current field is hidden.\n     * @return boolean\n     */\n    public function isHidden()\n    {\n        return $this->m_data['is_hidden'];\n    }\n\n\n    /**\n     * Returns true if the current field is a content field.\n     * @return boolean\n     */\n    public function isContent()\n    {\n        return $this->m_data['is_content_field'];\n    }\n\n\n\n    /**\n     * Sets the content flag. Returns true on success, false otherwise.\n     * @param $p_isContent\n     * @return boolean\n     */\n    public function setIsContent($p_isContent)\n    {\n        return $this->setProperty('is_content_field', (int) $p_isContent);\n    }\n\n\n    /**\n     * Returns int for where to show the field\n     * @return int\n     */\n    public function showInEditor()\n    {\n        return $this->m_data['show_in_editor'];\n    }\n\n\n\n    /**\n     * Sets the int for where to show the field\n     * @param $p_showInEditor\n     * @return int\n     */\n    public function setShowInEditor($p_showInEditor)\n    {\n        return $this->setProperty('show_in_editor', (int) $p_showInEditor);\n    }\n\n\n    /**\n     * Quick lookup to see if the current language is already translated for this article type: used by delete and update in setName\n     * returns 0 if no translation or the phrase_id if there is one.\n     *\n     * @param int p_languageId\n     *\n     * @return 0 or phrase id (int)\n     */\n    public function translationExists($p_languageId)\n    {\n        if (!isset($this->m_data['fk_phrase_id'])) {\n            return false;\n        }\n        $translation = new Translation($p_languageId, $this->m_data['fk_phrase_id']);\n\n        return $translation->exists();\n    } // fn translationExists\n\n\n    /**\n     * Set the type name for the given language.  A new entry in\n     * the database will be created if the language did not exist.\n     *\n     * @param int    $p_languageId\n     * @param string $p_value\n     *\n     * @return boolean\n     */\n    public function setName($p_languageId, $p_value)\n    {\n        global $g_ado_db;\n        if (!is_numeric($p_languageId)) {\n            return false;\n        }\n        // if the string is empty, nuke it\n        if (!is_string($p_value) || $p_value == '') {\n            if ($phrase_id = $this->translationExists($p_languageId)) {\n                $trans = new Translation($p_languageId, $phrase_id);\n                $trans->delete();\n                $changed = true;\n            } else {\n                $changed = false;\n            }\n        } else {\n            $description = new Translation($p_languageId, $this->getProperty('fk_phrase_id'));\n            if ($description->exists()) {\n                $changed = $description->setText($p_value);\n            } else {\n                $changed = $description->create($p_value);\n                if ($changed && is_null($this->getProperty('fk_phrase_id'))) {\n                    $this->setProperty('fk_phrase_id', $description->getPhraseId());\n                }\n            }\n        }\n\n        return $changed;\n    } // fn setName\n\n\n    /**\n     * Returns the highest weight + 1 or 0 for the starter\n     *\n     * @return int\n     */\n    public function getNextOrder()\n    {\n        global $g_ado_db;\n        $queryStr = \"SELECT field_weight FROM `\" . $this->m_dbTableName\n        . \"` WHERE type_name = \" . $g_ado_db->escape($this->m_data['type_name'])\n        . \" AND field_name != 'NULL' ORDER BY field_weight DESC\";\n        $field_weight = $g_ado_db->GetOne($queryStr);\n        if (!is_null($field_weight)) {\n            $next = $field_weight + 1;\n        } else {\n            $next = 1;\n        }\n\n        return $next;\n    } // fn getNextOrder\n\n\n    /**\n     * Get the ordering of all fields; initially, a field has a field_weight\n     * of NULL when it is created.  if we discover that a field has a field\n     * weight of NULL, we give it the MAX+1 field_weight.  Returns a NUMERIC\n     * array of ORDER => FIELDNAME.\n     *\n     * @return array\n     */\n    public function getOrders()\n    {\n        global $g_ado_db;\n\n        $queryStr = \"SELECT field_weight, field_name FROM `\" . $this->m_dbTableName\n        . \"` WHERE type_name = \" . $g_ado_db->escape($this->m_data['type_name'])\n        . \" AND field_name != 'NULL' ORDER BY field_weight DESC\";\n        $queryArray = $g_ado_db->GetAll($queryStr);\n        $orderArray = array();\n        foreach ($queryArray as $row => $values) {\n            if ($values['field_weight'] == NULL) {\n                $values['field_weight'] = $this->getNextOrder();\n            }\n            $orderArray[$values['field_weight']] = $values['field_name'];\n        }\n\n        return $orderArray;\n    } // fn getOrders\n\n\n    /**\n     * Saves the ordering of all the fields.  Accepts an NUMERIC array of\n     * ORDERRANK => FIELDNAME. (see getOrders)\n     *\n     * @param array orderArray\n     */\n    public function setOrders($orderArray)\n    {\n        global $g_ado_db;\n        foreach ($orderArray as $order => $field) {\n            $field = new ArticleTypeField($this->m_data['type_name'], $field);\n            if ($field->exists()) {\n                $field->setProperty('field_weight', $order);\n            }\n        }\n    } // fn setOrders\n\n\n    /**\n     * Reorders the current field; accepts either \"up\" or \"down\"\n     *\n     * @param string move (up|down)\n     */\n    public function reorder($move)\n    {\n        $orders = $this->getOrders();\n\n        $tmp = array_keys($orders, $this->m_data['field_name']);\n        if (count($tmp) == 0) {\n            return;\n        }\n        $pos = $tmp[0];\n\n        reset($orders);\n        list($max, $value) = each($orders);\n        end($orders);\n        list($min, $value) = each($orders);\n\n        if ($pos <= $min && $move == 'up') {\n            return;\n        }\n        if ($pos >= $max && $move == 'down') {\n            return;\n        }\n        if ($move == 'down') {\n            $tmp = $orders[$pos + 1];\n            $orders[$pos + 1] = $orders[$pos];\n            $orders[$pos] = $tmp;\n        }\n        if ($move == 'up') {\n            $tmp = $orders[$pos - 1];\n            $orders[$pos - 1] = $orders[$pos];\n            $orders[$pos] = $tmp;\n        }\n\n        $this->setOrders($orders);\n    } // fn reorder\n\n\n    /**\n     * Returns an array of fields from all article types that match\n     * the given conditions.\n     *\n     * @param $p_name\n     *         if specified returns fields with the given name\n     * @param $p_articleType\n     *         if specified returns fields of the given article type\n     * @param $p_dataType\n     *         if specified returns the fields having the given data type\n     *\n     * @return array\n     */\n    public static function FetchFields($p_name = null, $p_articleType = null,\n    $p_dataType = null, $p_negateName = false, $p_negateArticleType = false,\n    $p_negateDataType = false, $p_selectHidden = true, $p_skipCache = false)\n    {\n        global $g_ado_db;\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n\n        if (!$p_skipCache) {\n            $paramsArray['name'] = (is_null($p_name)) ? 'null' : $p_name;\n            $paramsArray['article_type'] = (is_null($p_articleType)) ? 'null' : $p_articleType;\n            $paramsArray['data_type'] = (is_null($p_dataType)) ? 'null' : $p_dataType;\n            $paramsArray['negate_name'] = ($p_negateName == false) ? 'false' : 'true';\n            $paramsArray['negate_article_type'] = ($p_negateArticleType == false) ? 'false' : 'true';\n            $paramsArray['negate_data_type'] = ($p_negateDataType == false) ? 'false' : 'true';\n            $paramsArray['select_hidden'] = ($p_selectHidden == false)? 'false' : 'true';\n            $paramsArray['method'] = __METHOD__;\n\n            $cacheKey = $cacheService->getCacheKey($paramsArray, 'article_type');\n            if ($cacheService->contains($cacheKey)) {\n                $articleTypeFieldsList = $cacheService->fetch($cacheKey);\n                if ($articleTypeFieldsList !== false && is_array($articleTypeFieldsList)) {\n                    return $articleTypeFieldsList;\n                }\n            }\n        }\n\n        $whereClauses = array();\n        if (isset($p_name)) {\n            $operator = $p_negateName ? '<>' : '=';\n            $whereClauses[] = \"field_name $operator \" . $g_ado_db->escape($p_name);\n        }\n        if (isset($p_articleType)) {\n            $operator = $p_negateArticleType ? '<>' : '=';\n            $whereClauses[] = \"type_name $operator \" . $g_ado_db->escape($p_articleType);\n        }\n        if (isset($p_dataType)) {\n            $operator = $p_negateDataType ? '<>' : '=';\n            $whereClauses[] = \"field_type $operator \" . $g_ado_db->escape($p_dataType);\n        }\n        if (!$p_selectHidden) {\n            $whereClauses[] = 'is_hidden = false';\n        }\n        $where = count($whereClauses) > 0 ? ' WHERE ' . implode(' and ', $whereClauses) : null;\n        $query = \"SELECT * FROM `ArticleTypeMetadata` $where ORDER BY type_name ASC, field_weight ASC\";\n        $rows = $g_ado_db->GetAll($query);\n\n        $fields = array();\n        foreach ($rows as $row) {\n            $field = new ArticleTypeField($row['type_name'], $row['field_name']);\n            if ($field->getPrintName() == '') {\n                $field->delete();\n                continue;\n            }\n            $fields[] = $field;\n        }\n\n        if (!$p_skipCache) {\n            $cacheService->save($cacheKey, $fields);\n        }\n\n        return $fields;\n    } // fn FetchFields\n\n\n    /**\n     * Returns an array of valid field data types.\n     * @return array\n     */\n    public static function DatabaseTypes($p_numericDigits = null, $p_numericPrecision = null)\n    {\n        global $g_ado_db;\n\n        $p_numericDigits = is_null($p_numericDigits) ? self::NUMERIC_DEFAULT_DIGITS : $p_numericDigits;\n        $p_numericPrecision = is_null($p_numericPrecision) ? self::NUMERIC_DEFAULT_PRECISION : $p_numericPrecision;\n        settype($p_numericDigits, 'integer');\n        settype($p_numericPrecision, 'integer');\n        $numericDef = \"NUMERIC($p_numericDigits, $p_numericPrecision) DEFAULT NULL\";\n\n        return array(\n            self::TYPE_TEXT => 'VARCHAR(255) DEFAULT NULL',\n            self::TYPE_LONGTEXT => $g_ado_db->getDriverName() === 'pdo_sqlite'\n                ? 'TEXT DEFAULT NULL'\n                : 'MEDIUMBLOB DEFAULT NULL',\n            self::TYPE_BODY => $g_ado_db->getDriverName() === 'pdo_sqlite'\n                ? 'TEXT DEFAULT NULL'\n                : 'MEDIUMBLOB DEFAULT NULL',\n            self::TYPE_DATE => 'DATE DEFAULT NULL',\n            self::TYPE_TOPIC => 'INTEGER DEFAULT NULL',\n            self::TYPE_SWITCH => \"BOOLEAN NOT NULL DEFAULT FALSE\",\n            self::TYPE_NUMERIC => $numericDef,\n            self::TYPE_COMPLEX_DATE => 'VARCHAR(255) DEFAULT NULL',\n        );\n    }\n} // class ArticleTypeField\n"
  },
  {
    "path": "newscoop/classes/Attachment.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Translation.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/include/mime_content_type.php');\n\n/**\n * @package Campsite\n */\nclass Attachment extends DatabaseObject {\n    var $m_keyColumnNames = array('id');\n    var $m_keyIsAutoIncrement = true;\n    var $m_dbTableName = 'Attachments';\n    var $m_columnNames = array(\n\t\t'id',\n\t\t'fk_language_id',\n\t\t'file_name',\n\t\t'extension',\n\t\t'content_disposition',\n\t\t'http_charset',\n\t\t'mime_type',\n\t\t'size_in_bytes',\n\t\t'fk_description_id',\n\t\t'fk_user_id',\n\t\t'last_modified',\n\t\t'time_created',\n\t\t'Source',\n\t\t'Status'\n\t);\n\n    public function Attachment($p_id = null)\n    {\n        if (!is_null($p_id)) {\n            $this->m_data['id'] = $p_id;\n            $this->fetch();\n        }\n    } // constructor\n\n\n    public function delete()\n    {\n        if (!$this->exists()) {\n            return false;\n        }\n        // Deleting the from from disk path is the most common place for\n        // something to go wrong, so we do that first.\n        $file = $this->getStorageLocation();\n        if (file_exists($file) && is_file($file)) {\n            unlink($file);\n        }\n\n        // Delete all the references to this image.\n        ArticleAttachment::OnAttachmentDelete($this->m_data['id']);\n        $tmpData = $this->m_data;\n\n        // Delete the record in the database\n        $success = parent::delete();\n\n        // Delete the description\n        Translation::deletePhrase($tmpData['fk_description_id']);\n\n        return $success;\n    } // fn delete\n\n\n    /**\n     * @return int\n     */\n    public function getAttachmentId()\n    {\n        return $this->m_data['id'];\n    } // fn getAttachmentId\n\n\n    /**\n     * If this attachment is language-specific, e.g. a PDF written\n     * in Serbian, this will return the language id of the attachment.\n     * Otherwise, it will return NULL.\n     *\n     * @return int\n     */\n    public function getLanguageId()\n    {\n        return (int) $this->m_data['fk_language_id'];\n    } // fn getLanguageId\n\n\n    /**\n     * @param int $p_value\n     * @return boolean\n     */\n    public function setLanguageId($p_value)\n    {\n        if (empty($p_value)) {\n            return $this->setProperty('fk_language_id', 'NULL', true, true);\n        } else {\n            return $this->setProperty('fk_language_id', $p_value);\n        }\n    } // fn setLanguageId\n\n\n    /**\n     * @return string\n     */\n    public function getFileName()\n    {\n        return $this->m_data['file_name'];\n    } // fn getFileName\n\n\n    /**\n     * Return the file name extension\n     *\n     * @return string\n     */\n    public function getExtension()\n    {\n        return $this->m_data['extension'];\n    } // fn getExtension\n\n\n    /**\n     * Return whether the \"content-disposition\" HTTP header should be set.\n     * This will return either NULL or the string \"attachment\".\n     *\n     * @return mixed\n     */\n    public function getContentDisposition()\n    {\n        return $this->m_data['content_disposition'];\n    } // fn getContentDisposition\n\n\n    /**\n     * Set the \"content-disposition\" HTTP header.\n     *\n     * @param mixed $p_value\n     * @return boolean\n     */\n    public function setContentDisposition($p_value)\n    {\n        if (!empty($p_value) && ($p_value != 'attachment')) {\n            return false;\n        }\n        if (empty($p_value)) {\n            return $this->setProperty('content_disposition', 'NULL', true, true);\n        } else {\n            return $this->setProperty('content_disposition', $p_value);\n        }\n    } // fn setContentDisposition\n\n\n    /**\n     * Return the CHARSET which should be set in the HTTP header sent\n     * to the downloader.\n     *\n     * @return string\n     */\n    public function getCharset()\n    {\n        return $this->m_data['http_charset'];\n    } // fn getCharset\n\n\n    /**\n     * Return the MIME type which should be set in the HTTP header\n     * to the downloader.\n     *\n     * @return string\n     */\n    public function getMimeType()\n    {\n        return $this->m_data['mime_type'];\n    } // fn getMimeType\n\n\n    /**\n     * Get the size of the file in bytes\n     *\n     * @return int\n     */\n    public function getSizeInBytes()\n    {\n        return $this->m_data['size_in_bytes'];\n    } // fn getSizeInBytes\n\n\n    /**\n     * Get the description ID which is an index into the Translations table.\n     *\n     * @return int\n     */\n    function getDescriptionId()\n    {\n        return $this->m_data['fk_description_id'];\n    } // fn getDescriptionId\n\n\n    /**\n     * Get the description in the given language.\n     * This is a convenience function that wraps the Translation::GetPhrase() function.\n     *\n     * @param int $p_languageId\n     * @return string\n     */\n    public function getDescription($p_languageId)\n    {\n        return Translation::GetPhrase($p_languageId, $this->m_data['fk_description_id']);\n    } // fn getDescription\n\n\n    /**\n     * Set the description in the given language.\n     *\n     * @param int $p_languageId\n     * @param string $p_text\n     */\n    public function setDescription($p_languageId, $p_text)\n    {\n        Translation::SetPhrase($p_languageId, $this->m_data['fk_description_id'], $p_text);\n    } // fn setDescription\n\n\n    public function getLastModified()\n    {\n        return $this->m_data['last_modified'];\n    } // fn getLastModified\n\n\n    public function getTimeCreated()\n    {\n        return $this->m_data['time_created'];\n    } // fn getTimeCreated\n\n\n    /**\n     * Return the full URL to the attached image.\n     * @return string\n     */\n    public function getAttachmentUrl()\n    {\n        global $Campsite;\n        $attachmentUrl = $Campsite['WEBSITE_URL'] . '/attachment/' . $this->m_data['id']\n            . '/' . $this->m_data['file_name'];\n            return $attachmentUrl;\n    } // fn getAttachmentUrl\n\n\n    /**\n     * Return the full URL to the attached image.\n     * @return string\n     */\n    public function getAttachmentUri()\n    {\n    \tglobal $Campsite;\n    \t$attachmentUri = '/attachment/' . $this->m_data['id']\n    \t. '/' . $this->m_data['file_name'];\n    \treturn $attachmentUri;\n    } // fn getAttachmentUri\n\n    /**\n     * @return string\n     */\n    public function getSource()\n    {\n        return $this->m_data['Source'];\n    } // fn getSource\n\n    /**\n     * @return int\n     */\n    public function getUploadingUserId()\n    {\n        return $this->m_data['fk_user_id'];\n    } // fn getUploadingUserId\n\n    /**\n     * @return string\n     */\n    public function getStatus()\n    {\n        return $this->m_data['Status'];\n    } // fn getSource\n\n\n    /**\n     * Get the full path to the storage location of the file on disk.\n     *\n     * @param string $p_fileExtension\n     * @return string\n     */\n    public function getStorageLocation()\n    {\n        global $Campsite;\n        if (isset($this->m_data['id'])) {\n\t\t\t$storageLocation = $Campsite['FILE_DIRECTORY']\n                           .\"/\".$this->getLevel1DirectoryName()\n                           .\"/\".$this->getLevel2DirectoryName()\n                           .\"/\".sprintf('%09d', $this->m_data['id']);\n\t\t}\n\t\telse {\n\t\t\t$storageLocation = $Campsite['FILE_DIRECTORY']\n                           .\"/\".$this->getLevel1DirectoryName()\n                           .\"/\".$this->getLevel2DirectoryName()\n                           .\"/\".sprintf('%09d', 0);\n\t\t}\n        if (isset($this->m_data['extension']) && !empty($this->m_data['extension'])) {\n            $storageLocation .= '.'.$this->m_data['extension'];\n        }\n        return $storageLocation;\n    } // fn getStorageLocation\n\n\n    public function getLevel1DirectoryName()\n    {\n        global $Campsite;\n        if (isset($this->m_data['id'])) $level1Dir = floor($this->m_data['id']/($Campsite['FILE_NUM_DIRS_LEVEL_1']*$Campsite['FILE_NUM_DIRS_LEVEL_2']));\n        else $level1Dir = 0;\n        $level1ZeroPad = strlen($Campsite['FILE_NUM_DIRS_LEVEL_1']);\n         return sprintf('%0'.$level1ZeroPad.'d', $level1Dir);\n    } // fn getLevel1DirectoryName\n\n\n    public function getLevel2DirectoryName()\n    {\n        global $Campsite;\n        if (isset($this->m_data['id'])) $level2Dir = ($this->m_data['id']/$Campsite['FILE_NUM_DIRS_LEVEL_2'])%$Campsite['FILE_NUM_DIRS_LEVEL_1'];\n        else $level2Dir = 0;\n        $level2ZeroPad = strlen($Campsite['FILE_NUM_DIRS_LEVEL_2']);\n        return sprintf('%0'.$level2ZeroPad.'d', $level2Dir);\n    } // fn getLevel2DirectoryName\n\n\n    public function makeDirectories()\n    {\n        // Make the directories if they dont exist\n        global $Campsite;\n        $level1 = $Campsite['FILE_DIRECTORY'].\"/\".$this->getLevel1DirectoryName();\n        if (!file_exists($level1)) {\n            mkdir($level1, 0755);\n        }\n        $level2 = $level1.\"/\".$this->getLevel2DirectoryName();\n        if (!file_exists($level2)) {\n            mkdir($level2, 0755);\n        }\n    } // fn makeDirectories\n\n    /**\n     * Return true if the attachment is being used by an article.\n     *\n     * @return boolean\n     */\n    public function inUse()\n    {\n        global $g_ado_db;\n\n        $queryStr = 'SELECT fk_article_number\n            FROM ArticleAttachments\n            INNER JOIN Articles ON fk_article_number = Number\n            WHERE fk_attachment_id = ' . (int) $this->getAttachmentId();\n\n        return (bool) $g_ado_db->GetOne($queryStr);\n    }\n\n    /**\n     * Return the ids of the file not edited yet.\n     *\n     * @return array\n     */\n    public static function GetUnedited($p_id)\n    {\n        $search = new Attachment();\n        return $search->Search('Attachment',array(array('fk_description_id','0'),array('fk_user_id',$p_id)));\n    }\n\n    /**\n     * This function should be called when an attachment is uploaded.  It will\n     * save the attachment to the appropriate place on the disk, and create a\n     * database entry for the file.\n     *\n     * @param array $p_fileVar\n     *     <pre>\n     * \t\tThe variable from the $_FILES array.  The array specifies the following:\n     *\t\t$a[\"name\"] = original name of the file.\n     * \t\t$a[\"type\"] = the MIME type of the file\n     *\t\t$a[\"tmp_name\"] = the temporary storage location on disk of the file\n     *\t\t$a[\"size\"] = size of the file, in bytes (not required)\n     *\t\t$a[\"error\"] = 0 (zero) if there was no error\n     *     </pre>\n     *\n     * @param array $p_attributes\n     *\t\tOptional attributes which are stored in the database.\n     *\t\tIndexes can be the following: 'content_disposition', 'fk_language_id', 'http_charset', 'fk_user_id'\n     *\n     * @param int $p_id\n     *\t\tIf the attachment already exists and we just want to update it, specify the\n     *\t\tcurrent ID here.\n     *\n     * @param bool $p_uploaded\n     *      If the attachment was uploaded with other mechanism (ex: plUploader)\n     *      this is set so that the single upload file from article functionality is still secured.\n     *\n     * @return mixed\n     *\t\tThe Attachment object that was created or updated.\n     *\t\tReturn a PEAR_Error on failure.\n     */\n    public static function OnFileUpload($p_fileVar, $p_attributes, $p_id = null, $p_uploaded = false)\n    {\n        if (!is_array($p_fileVar)) {\n            return null;\n        }\n\n        // Verify its a valid file.\n        $filesize = filesize($p_fileVar['tmp_name']);\n        if ($filesize === false) {\n            return new PEAR_Error(\"Attachment::OnFileUpload(): invalid parameters received.\");\n        }\n\n        // Are we updating or creating?\n         if (!is_null($p_id)) {\n             // Updating the attachment\n             $attachment = new Attachment($p_id);\n             $attachment->update($p_attributes);\n            // Remove the old file because\n            // the new file may have a different file extension.\n            if (file_exists($attachment->getStorageLocation())) {\n                unlink($attachment->getStorageLocation());\n            }\n        } else {\n            // Creating the attachment\n            $attachment = new Attachment();\n            $attachment->create($p_attributes);\n            $attachment->setProperty('time_created', 'NULL', true, true);\n        }\n        $attachment->setProperty('file_name', $p_fileVar['name'], false);\n        $attachment->setProperty('mime_type', $p_fileVar['type'], false);\n        $attachment->setProperty('size_in_bytes', $p_fileVar['size'], false);\n        $extension = \"\";\n        $fileParts = explode('.', $p_fileVar['name']);\n        if (count($fileParts) > 1) {\n            $extension = array_pop($fileParts);\n            $attachment->setProperty('extension', $extension, false);\n        }\n        $target = $attachment->getStorageLocation();\n        $attachment->makeDirectories();\n        ob_start();\n        var_dump(is_uploaded_file($p_fileVar['tmp_name']));\n        $dump = ob_get_clean();\n        /**\n         * for security reason\n         *  for file uploaded normal not with other mechanism (ex: plUploader)\n         *  we still need the move_uploaded_file functionality\n         */\n        if (!$p_uploaded && !move_uploaded_file($p_fileVar['tmp_name'], $target)) {\n            $attachment->delete();\n            return new PEAR_Error(camp_get_error_message(CAMP_ERROR_CREATE_FILE, $target), CAMP_ERROR_CREATE_FILE);\n        }\n        // if the file was uploaded with other mechanism (ex: plUploader) use rename(move) functionality\n        if ($p_uploaded && !rename($p_fileVar['tmp_name'], $target)) {\n            $attachment->delete();\n            return new PEAR_Error(camp_get_error_message(CAMP_ERROR_CREATE_FILE, $target), CAMP_ERROR_CREATE_FILE);\n        }\n        chmod($target, 0644);\n        $attachment->commit();\n        return $attachment;\n    } // fn OnFileUpload\n\n\n    /**\n     * Process multi-upload file.\n     *\n     * @param string $p_tmpFile\n     * @param string $p_newFile\n     * @param int $p_userId\n     *\n     * @return Image|NULL\n     */\n    public static function ProcessFile($p_tmpFile, $p_newFile, $p_userId = NULL, $p_attributes = NULL)\n    {\n        $tmp_attachment = new Attachment();\n        $tmp_name =  $tmp_attachment->getStorageLocation().\"/\". $p_tmpFile;\n        //$tmp_name = $GLOBALS['Campsite']['FILE_DIRECTORY'] . '/' . $p_tmpFile;\n        $file = array(\n            'name' => $p_newFile,\n            'tmp_name' => $tmp_name,\n            'type' => mime_content_type($tmp_name),\n            'size' => filesize($tmp_name),\n            'error' => 0,\n        );\n\n        $attributes = array(\n            'fk_user_id' => $p_userId,\n            'fk_description_id' => 0,\n            'Source' => 'local',\n            'Status' => 'approved'\n        );\n\n        if ($p_attributes != NULL && is_array($p_attributes)) {\n\t\t\tforeach ($p_attributes as $key => $value) {\n\t\t\t\t$attributes[$key] = $value;\n\t\t\t}\n\t\t}\n\n        try {\n            $image = self::OnFileUpload($file, $attributes, null, true);\n            return $image;\n        } catch (PEAR_Error $e) {\n            return NULL;\n        }\n\n    } // fn ProcessImage\n    \n    /**\n\t * @return int\n\t */\n\tpublic static function GetTotalAttachments()\n\t{\n\t\tglobal $g_ado_db;\n\t\t$queryStr = 'SHOW TABLE STATUS LIKE \"Attachments\"';\n\t\t$result = $g_ado_db->GetRow($queryStr);\n\t\treturn $result['Rows'];\n\t} // fn GetTotalAttachments\n\n} // class Attachment\n\n?>\n"
  },
  {
    "path": "newscoop/classes/Author.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbObjectArray.php');\n\n/**\n * @package Campsite\n */\nclass Author extends DatabaseObject\n{\n    const DEFAULT_TYPE = 'AUTHOR';\n    const TABLE = 'Authors';\n\n    public $m_dbTableName = self::TABLE;\n    public $m_keyColumnNames = array('id');\n    public $m_columnNames = array(\n        'id',\n        'first_name',\n        'last_name',\n        'email',\n        'skype',\n        'jabber',\n        'aim',\n        'image');\n    public $m_keyIsAutoIncrement = TRUE;\n    public $m_aliases = NULL;\n    private $m_type = NULL;\n\n    /**\n     * Constructor.\n     *\n     * @param int|string $p_idOrName\n     */\n    public function __construct($p_idOrName = null, $p_type = null)\n    {\n        parent::__construct($this->m_columnNames);\n        if (is_numeric($p_idOrName)) {\n            $this->m_data['id'] = (int) $p_idOrName;\n            $this->fetch();\n        } elseif (!empty($p_idOrName)) {\n            $name = self::ReadName((string) $p_idOrName);\n            $this->m_keyColumnNames = array('first_name', 'last_name');\n            $this->m_data['first_name'] = $name['first_name'];\n            $this->m_data['last_name'] = $name['last_name'];\n            $this->fetch();\n            $this->m_keyColumnNames = array('id');\n        }\n        if ($this->exists()) {\n            if (!is_null($p_type)) {\n                $this->m_type = new AuthorType($p_type);\n            }\n            $this->loadAliases();\n        } else {\n            $this->m_type = new AuthorType();\n        }\n    }\n\n    /**\n     * @return boolean\n     */\n    public function delete()\n    {\n        if (!$this->exists()) {\n            return false;\n        }\n\n        // Unlink articles\n        ArticleAuthor::OnAuthorDelete($this->getId());\n        // Unlink aliases\n        AuthorAlias::OnAuthorDelete($this->getId());\n        // Unlink authors\n        AuthorAssignedType::OnAuthorDelete($this->getId());\n        // Unlink biographies\n        AuthorBiography::OnAuthorDelete($this->getId());\n\n        // Save author data for logging purposes\n        $tmpData = $this->m_data;\n        // Delete row from Authors table.\n        $result = parent::delete();\n\n        return $result;\n    }\n\n    /**\n     * Wrapper around DatabaseObject::setProperty\n     * @see classes/DatabaseObject#setProperty($p_dbColumnName, $p_value, $p_commit, $p_isSql)\n     */\n    public function setProperty($p_dbColumnName, $p_value, $p_commit = true, $p_isSql = false)\n    {\n        if ($p_dbColumnName == 'first_name' || $p_dbColumnName == 'last_name') {\n            $this->m_keyColumnNames = array('first_name', 'last_name');\n            $this->resetCache();\n            $this->m_keyColumnNames = array('id');\n        }\n\n        return parent::setProperty($p_dbColumnName, $p_value);\n    }\n\n    /**\n     * @return int\n     */\n    public function getId()\n    {\n        return (int) $this->m_data['id'];\n    }\n\n    /**\n     * @return string\n     */\n    public function getName($p_format = '%_FIRST_NAME %_LAST_NAME')\n    {\n        $name = preg_replace(array('/%_FIRST_NAME/', '/%_LAST_NAME/'),\n            array($this->getFirstName(), $this->getLastName()), $p_format);\n\n        return trim($name);\n    }\n\n    /**\n     * @return string\n     */\n    public function getFirstName()\n    {\n        return (string) $this->m_data['first_name'];\n    }\n\n    /**\n     * @return string\n     */\n    public function getLastName()\n    {\n        return (string) $this->m_data['last_name'];\n    }\n\n    /**\n     * @return array\n     */\n    public function getAliases()\n    {\n        if (empty($this->m_aliases)) {\n            $this->loadAliases();\n        }\n\n        return $this->m_aliases;\n    }\n\n    /**\n     * @return string\n     */\n    public function getEmail()\n    {\n        return (string) $this->m_data['email'];\n    }\n\n    /**\n     * @return string\n     */\n    public function getSkype()\n    {\n        return (string) $this->m_data['skype'];\n    }\n\n    /**\n     * @return string\n     */\n    public function getJabber()\n    {\n        return (string) $this->m_data['jabber'];\n    }\n\n    /**\n     * @return string\n     */\n    public function getAim()\n    {\n        return (string) $this->m_data['aim'];\n    }\n\n    /**\n     * @return int\n     */\n    public function getImage()\n    {\n        return (int) $this->m_data['image'];\n    }\n\n    public function getAuthorType()\n    {\n        return $this->m_type;\n    }\n\n    /**\n     * TODO: return AuthorAssignedType::GetAuthorTypesByAuthor($this->getId());\n     *\n     * @return array\n     */\n    public function getType()\n    {\n        global $g_ado_db;\n\n        $sql = 'SELECT fk_type_id\n            FROM ' . AuthorAssignedType::TABLE . '\n            WHERE fk_author_id = ' . $this->getId();\n\n        return $g_ado_db->GetAll($sql);\n    }\n\n    /**\n     * TODO: Will be replaced by self.getType()\n     *\n     * @return array\n     */\n    public function getTypeWithNames()\n    {\n        global $g_ado_db;\n\n        $sql = 'SELECT fk_type_id, type\n            FROM ' . AuthorAssignedType::TABLE . '\n            JOIN AuthorTypes ON AuthorTypes.id = fk_type_id\n            WHERE fk_author_id = ' . $this->getId();\n\n        return $g_ado_db->GetAll($sql);\n    }\n\n    /**\n     * @param  string $p_name\n     * @return bool\n     */\n    public function setName($p_name)\n    {\n        $name = Author::ReadName($p_name);\n\n        return $this->setLastName($name['last_name'])\n            && $this->setFirstName($name['first_name']);\n    }\n\n    /**\n     * @param  string $p_name\n     * @return bool\n     */\n    public function setFirstName($p_name)\n    {\n        return $this->setProperty('first_name', $p_name);\n    }\n\n    /**\n     * @param  string $p_name\n     * @return bool\n     */\n    public function setLastName($p_name)\n    {\n        return $this->setProperty('last_name', $p_name);\n    }\n\n    /**\n     * @param  string $p_value\n     * @return bool\n     */\n    public function setEmail($p_value)\n    {\n        return $this->setProperty('email', $p_value);\n    }\n\n    /**\n     * @param  int  $p_typeId\n     * @return void\n     */\n    public function setType($p_typeId = NULL)\n    {\n        if (is_null($p_typeId)) {\n            $p_typeId = $this->__getDefaultType();\n        }\n        $assignedType = new AuthorAssignedType($this->getId(), (int) $p_typeId);\n        if (!$assignedType->exists()) {\n            $assignedType->create();\n        }\n\n        return (int) $assignedType->getAuthorTypeId();\n    }\n\n    private function __getDefaultType()\n    {\n        $types = AuthorType::GetAuthorTypes();\n        foreach ((array) $types as $type) {\n            if (strtoupper($type->getName()) === self::DEFAULT_TYPE) {\n                return $type->getId();\n            }\n        }\n\n        return (int) $types[0]->getId();\n    }\n\n    /**\n     * @param  string $p_value\n     * @return bool\n     */\n    public function setSkype($p_value)\n    {\n        return $this->setProperty('skype', $p_value);\n    }\n\n    /**\n     * @param  string $p_value\n     * @return bool\n     */\n    public function setJabber($p_value)\n    {\n        return $this->setProperty('jabber', $p_value);\n    }\n\n    /**\n     * @param  string $p_value\n     * @return bool\n     */\n    public function setAim($p_value)\n    {\n        return $this->setProperty('aim', $p_value);\n    }\n\n    /**\n     * @param int $p_value\n     *                     $return bool\n     */\n    public function setImage($p_value)\n    {\n        return $this->setProperty('image', (int) $p_value);\n    }\n\n    /**\n     * @param  array $p_authorBiography\n     * @return void\n     */\n    public function setBiography(array $p_biography)\n    {\n        if (empty($p_biography) || !isset($p_biography['language'])) {\n            return false;\n        }\n\n        $biographyObj = new AuthorBiography($this->getId(), $p_biography['language']);\n        if (isset($p_biography['biography'])) {\n            $biographyObj->setProperty('biography', $p_biography['biography'], false);\n        }\n        if (isset($p_biography['first_name']) && !empty($p_biography['first_name'])) {\n            $biographyObj->setProperty('first_name', $p_biography['first_name'], false);\n        }\n        if (isset($p_biography['last_name']) && !empty($p_biography['last_name'])) {\n            $biographyObj->setProperty('last_name', $p_biography['last_name'], false);\n        }\n        if ($biographyObj->exists()) {\n            $biographyObj->commit();\n        } else {\n            $biographyObj->create();\n        }\n    }\n\n    /**\n     * @param array $p_aliases\n     */\n    public function setAliases(array $p_aliases)\n    {\n        if (empty($p_aliases)) {\n            return false;\n        }\n\n        foreach ($p_aliases as $alias) {\n            if (empty($alias)) {\n                continue;\n            }\n            $aliasObj = new AuthorAlias($alias);\n            if ($aliasObj->exists() === false) {\n                $aliasObj->setAuthorId($this->getId(), false);\n                $aliasObj->create();\n            }\n        }\n    }\n\n    /**\n     * @return void\n     */\n    protected function loadAliases()\n    {\n        $this->m_aliases = AuthorAlias::GetAuthorAliases(null, $this->getId());\n    }\n\n    /**\n     * @return array\n     */\n    public static function GetAllExistingNames()\n    {\n        global $g_ado_db;\n\n        $queryStr = 'SELECT DISTINCT Name FROM ('\n            . '  SELECT TRIM(CONCAT(Name, \\' \\', last_name)) AS Name FROM liveuser_users'\n            . '  UNION'\n            . '  SELECT TRIM(CONCAT(first_name, \\' \\', last_name)) AS Name'\n            . '    FROM Authors'\n            . ') AS names ORDER BY Name ASC';\n        $authors = $g_ado_db->GetAll($queryStr);\n        $convertArray = create_function('&$value, $key',\n                                        '$value = $value[\"Name\"];');\n        array_walk($authors, $convertArray);\n\n        return $authors;\n    }\n\n    /**\n     * @return array\n     */\n    public static function GetAuthors()\n    {\n        $tmpAuthor = new Author();\n        $columns = implode(',', $tmpAuthor->getColumnNames(true));\n        $queryStr = \"SELECT $columns\n            FROM \" . self::TABLE . '\n            ORDER BY first_name';\n        $authors = DbObjectArray::Create('Author', $queryStr);\n\n        return $authors;\n    }\n\n    /**\n     * @param  string $p_name\n     * @return array\n     */\n    public static function ReadName($p_name)\n    {\n        $p_name = trim($p_name);\n        $firstName = NULL;\n        $lastName = NULL;\n\n        // check if name exists in DB\n        global $g_ado_db;\n\n        $sql = 'SELECT first_name, last_name\n            FROM Authors\n            WHERE TRIM(CONCAT_WS(\" \", first_name, last_name)) = :name\n        ';\n        $authors = $g_ado_db->GetAll($sql, array('name' => $p_name));\n\n        if (count($authors) > 0) {\n            $firstName = $authors[0]['first_name'];\n            $lastName = $authors[0]['last_name'];\n        } else {\n\n            preg_match('/([^,]+),([^,]+)/', $p_name, $matches);\n            if (count($matches) > 0) {\n                $lastName = trim($matches[1]);\n                $firstName = isset($matches[2]) ? trim($matches[2]) : '';\n            } else {\n                preg_match_all('/[^\\s]+/', $p_name, $matches);\n                if (isset($matches[0])) {\n                    $matches = $matches[0];\n                }\n                if (count($matches) > 1) {\n                    $lastName = array_pop($matches);\n                    $firstName = implode(' ', $matches);\n                }\n                if (count($matches) == 1) {\n                    $firstName = $matches[0];\n                }\n            }\n        }\n\n        // Important! Trim spaces and replace multiple ones by space\n        return array(\n            'first_name' => preg_replace('/\\s+/', ' ', trim($firstName)),\n            'last_name' => preg_replace('/\\s+/', ' ', trim($lastName))\n        );\n    }\n}\n"
  },
  {
    "path": "newscoop/classes/AuthorAlias.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbObjectArray.php');\n\n/**\n * @package Campsite\n */\nclass AuthorAlias extends DatabaseObject\n{\n    var $m_dbTableName = 'AuthorAliases';\n    var $m_keyColumnNames = array('id');\n    var $m_keyIsAutoIncrement = true;\n    var $m_columnNames = array('id', 'fk_author_id', 'alias');\n\n    /**\n     * Constructor.\n     *\n     * @param int $p_idOrName\n     */\n    public function __construct($p_idOrName = null)\n    {\n        parent::DatabaseObject($this->m_columnNames);\n        if (is_numeric($p_idOrName)) {\n            $this->m_data['id'] = $p_idOrName;\n            $this->fetch();\n        } elseif (!empty($p_idOrName)) {\n            $this->m_keyColumnNames = array('alias');\n            $this->m_data['alias'] = $p_idOrName;\n            $this->fetch();\n            $this->m_keyColumnNames = array('id');\n        }\n    } // fn constructor\n\n\n    /**\n     * Wrapper around DatabaseObject::setProperty\n     *\n     * @see classes/DatabaseObject#setProperty($p_dbColumnName, $p_value, $p_commit, $p_isSql)\n     */\n    public function setProperty($p_dbColumnName, $p_value, $p_commit = true, $p_isSql = false)\n    {\n        if ($p_dbColumnName == 'alias') {\n            $this->m_keyColumnNames = array('alias');\n            $this->resetCache();\n            $this->m_keyColumnNames = array('id');\n        }\n        return parent::setProperty($p_dbColumnName, $p_value);\n    } // fn setProperty\n\n\n    /**\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->m_data['id'];\n    } // fn getId\n\n\n    /**\n     * @return int\n     */\n    public function getAuthorId()\n    {\n        return $this->m_data['fk_author_id'];\n    } // fn getAuthorId\n\n\n    /**\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->m_data['alias'];\n    } // fn getName\n\n\n    /**\n     * @param int $p_value\n     * @return boolean\n     */\n    public function setAuthorId($p_value, $p_commit = true)\n    {\n        return parent::setProperty('fk_author_id', $p_value, $p_commit);\n    } // fn setAuthorId\n\n\n    /**\n     *\n     */\n    public function setName($p_name)\n    {\n        return $this->setProperty('alias', $p_name);\n    } // fn setName\n\n\n    /**\n     * Get all the author aliases that match the given criteria.\n     *\n     * @param int $p_id\n     * @param int $p_authorId\n     * @param string $p_name\n     * @return array\n     */\n    public static function GetAuthorAliases($p_id = null, $p_authorId = null, $p_name = null)\n    {\n        $constraints = array();\n        if (!is_null($p_authorId)) {\n            $constraints[] = array(\"fk_author_id\", $p_authorId);\n        }\n        if (!is_null($p_name)) {\n            $constraints[] = array(\"alias\", $p_name);\n        }\n        if (!is_null($p_id)) {\n            $constraints[] = array(\"id\", $p_id);\n        }\n        return DatabaseObject::Search('AuthorAlias', $constraints);\n    } // fn GetAuthorAliases\n\n\n    /**\n     * Remove alias pointers for the given author.\n     *\n     * @param int $p_authorId\n     * @return void\n     */\n    public static function OnAuthorDelete($p_authorId)\n    {\n        global $g_ado_db;\n\n        $queryStr = \"DELETE FROM AuthorAliases WHERE fk_author_id = $p_authorId\";\n        $g_ado_db->Execute($queryStr);\n    } // fn OnAuthorDelete\n\n    public static function BuildAuthorIdsQuery(array $p_aliases) {\n        $authors_query = false;\n        $author_aliases = array();\n\n        foreach ($p_aliases as $one_alias) {\n            $one_alias = str_replace('\"', '\"\"', trim($one_alias));\n            if (0 < strlen($one_alias)) {\n                $author_aliases[] = $one_alias;\n            }\n        }\n\n        if (0 < count($author_aliases)) {\n            $aliases_str = '\"' . implode('\", \"', $author_aliases) . '\"';\n            $authors_query = \"SELECT DISTINCT id FROM AuthorAliases WHERE trim(alias) IN ($aliases_str)\";\n\n        }\n\n        return $authors_query;\n    } // fn BuildAuthorIdsQuery\n\n} // class AuthorAlias\n\n?>\n"
  },
  {
    "path": "newscoop/classes/AuthorAssignedType.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Author.php');\n\n/**\n * @package Campsite\n */\nclass AuthorAssignedType extends DatabaseObject\n{\n    const TABLE = 'AuthorAssignedTypes';\n\n    public $m_dbTableName = self::TABLE;\n    public $m_keyColumnNames = array('fk_author_id', 'fk_type_id');\n    public $m_columnNames = array('fk_author_id', 'fk_type_id');\n\n    /**\n     * Constructor\n     *\n     * @param int $p_authorId\n     * @param int $p_authorTypeId\n     */\n    public function __construct($p_authorId = null, $p_authorTypeId = null)\n    {\n        if (is_numeric($p_authorId)) {\n            $this->m_data['fk_author_id'] = $p_authorId;\n        }\n        if (is_numeric($p_authorTypeId)) {\n            $this->m_data['fk_type_id'] = $p_authorTypeId;\n        }\n    }\n\n    /**\n     * @return int\n     */\n    public function getAuthorId()\n    {\n        return (int) $this->m_data['fk_author_id'];\n    }\n\n    /**\n     * @return int\n     */\n    public function getAuthorTypeId()\n    {\n        return (int) $this->m_data['fk_type_id'];\n    }\n\n    /**\n     * @param int $p_authorId\n     * @param int $p_authorTypeId\n     * @return void\n     */\n    public static function AddAuthorTypeToAuthor($p_authorId, $p_authorTypeId)\n    {\n        global $g_ado_db;\n\n        $queryStr = 'INSERT IGNORE INTO ' . self::TABLE . ' (fk_author_id, fk_type_id)\n            VALUES (' . (int) $p_authorId . ', ' . (int) $p_authorTypeId . ')';\n        $g_ado_db->Execute($queryStr);\n    }\n\n    /**\n     * @param int $p_authorId\n     */\n    public static function GetAuthorTypesByAuthor($p_authorId)\n    {\n        global $g_ado_db;\n\n        $queryStr = 'SELECT * FROM ' . self::TABLE . '\n            WHERE fk_author_id = ' . $p_authorId;\n        $query = $g_ado_db->Execute($queryStr);\n        $authorTypes = array();\n        while ($row = $query->FetchRow()) {\n            $tmpAuthorType = new AuthorType();\n            $tmpAuthorType->fetch($row);\n            $authorTypes[] = $tmpAuthorType;\n        }\n\n        return $authorTypes;\n    }\n\n    /**\n     * This is called when an author type is deleted.\n     * It will disassociate the author type from all authors.\n     *\n     * @param int $p_authorTypeId\n     * @return void\n     */\n    public static function OnAuthorTypeDelete($p_authorTypeId)\n    {\n        global $g_ado_db;\n\n        $queryStr = 'DELETE FROM ' . self::TABLE . '\n            WHERE fk_type_id = ' . (int) $p_authorTypeId;\n        $g_ado_db->Execute($queryStr);\n    }\n\n    /**\n     * Remove author type pointers for the given author.\n     *\n     * @param int $p_authorId\n     * @return void\n     */\n    public static function OnAuthorDelete($p_authorId)\n    {\n        global $g_ado_db;\n\n        $queryStr = 'DELETE FROM ' . self::TABLE . '\n            WHERE fk_author_id = ' . $p_authorId;\n        $g_ado_db->Execute($queryStr);\n    }\n\n    /**\n     * @param int $p_authorId\n     * @return void\n     */\n    public static function ResetAuthorAssignedTypes($p_authorId = null)\n    {\n        if (!is_null($p_authorId)) {\n            self::OnAuthorDelete($p_authorId);\n        } else {\n            $queryStr = 'DELETE FROM ' . self::TABLE;\n            $g_ado_db->Execute($queryStr);\n        }\n    }\n}"
  },
  {
    "path": "newscoop/classes/AuthorBiography.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbObjectArray.php');\n\n/**\n * @package Campsite\n */\nclass AuthorBiography extends DatabaseObject\n{\n    var $m_dbTableName = 'AuthorBiographies';\n    var $m_keyColumnNames = array('fk_author_id', 'fk_language_id');\n    var $m_columnNames = array('fk_author_id', 'fk_language_id',\n                               'biography', 'first_name', 'last_name');\n\n    /**\n     * Constructor.\n     *\n     * @param int $p_authorId\n     * @param int $p_languageId\n     */\n    public function __construct($p_authorId = null, $p_languageId = null)\n    {\n        if (is_numeric($p_authorId)) {\n            $this->m_data['fk_author_id'] = $p_authorId;\n        }\n\n        if (is_numeric($p_languageId)) {\n            $this->m_data['fk_language_id'] = $p_languageId;\n        }\n\n        // set keys\n        foreach ($this->m_columnNames as $key) {\n            if (!isset($this->m_data[$key])) {\n                $this->m_data[$key] = '';\n            }\n        }\n\n        if (!empty($p_authorId) && !empty($p_languageId)) {\n            $this->fetch();\n        }\n    } // fn constructor\n\n\n    /**\n     * @return int\n     */\n    public function getAuthorId()\n    {\n        return $this->m_data['fk_author_id'];\n    } // fn getAuthorId\n\n\n    /**\n     * @return int\n     */\n    public function getLanguageId()\n    {\n        return $this->m_data['fk_language_id'];\n    } // fn getLanguageId\n\n\n    /**\n     * @return string\n     */\n    public function getBiography()\n    {\n        return $this->m_data['biography'];\n    } // fn getBiography\n\n\n    /**\n     * @return string\n     */\n    public function getFirstName()\n    {\n        return $this->m_data['first_name'];\n    } // fn getFirstName\n\n\n    /**\n     * @return string\n     */\n    public function getLastName()\n    {\n        return $this->m_data['last_name'];\n    } // fn getLastName\n\n\n    /**\n     * Get the author biography.\n     * Biography is returned in the given language if exists.\n     * If not any specific language is given it returns all the available translations.\n     *\n     * @param int $p_authorId\n     * @param string $p_languageId\n     * @return array\n     */\n    public static function GetBiographies($p_authorId, $p_languageId = null)\n    {\n        $constraints = array();\n        if (!is_null($p_authorId)) {\n            $constraints[] = array(\"fk_author_id\", $p_authorId);\n        }\n        if (!is_null($p_languageId)) {\n            $constraints[] = array(\"fk_language_id\", $p_languageId);\n        }\n        return DatabaseObject::Search('AuthorBiographies', $constraints);\n    } // fn GetBiographies\n\n\n    /**\n     * Remove author biography pointers for the given author.\n     *\n     * @param int $p_authorId\n     * @return void\n     */\n    public static function OnAuthorDelete($p_authorId)\n    {\n        global $g_ado_db;\n\n        $queryStr = \"DELETE FROM AuthorBiographies WHERE fk_author_id = $p_authorId\";\n        $g_ado_db->Execute($queryStr);\n    } // fn OnAuthorDelete\n\n}\n"
  },
  {
    "path": "newscoop/classes/AuthorType.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\n\n/**\n * @package Campsite\n */\nclass AuthorType extends DatabaseObject\n{\n    const TABLE = 'AuthorTypes';\n\n    /**\n     * @var string\n     */\n    public $m_dbTableName = self::TABLE;\n\n    /**\n     * @var array\n     */\n    public $m_keyColumnNames = array('id');\n\n    /**\n     * @var array\n     */\n    public $m_columnNames = array('id', 'type');\n\n    /**\n     * @var bool\n     */\n    public $m_keyIsAutoIncrement = true;\n\n    /**\n     * @var bool\n     */\n    public $m_exists = false;\n\n    /**\n     * Constructor\n     *\n     * @param int $p_authorTypeId\n     *      (optional) The author type identifier\n     * @return void\n     */\n    public function __construct($p_authorTypeId = null)\n    {\n        parent::__construct($this->m_columnNames);\n        if (is_numeric($p_authorTypeId) && $p_authorTypeId > 0) {\n            $this->m_data['id'] = $p_authorTypeId;\n            if ($this->keyValuesExist()) {\n                $this->fetch();\n            }\n        }\n    }\n\n    /**\n     * @param string $p_name\n     * @return bool\n     */\n    public function create($p_name = null)\n    {\n        if (empty($p_name)) {\n            return false;\n        }\n        $columns['type'] = (string) $p_name;\n        $result = parent::create($columns);\n        return $result;\n    }\n\n    /**\n     * @return boolean\n     */\n    public function delete()\n    {\n        if (!$this->exists()) {\n            return false;\n        }\n\n        // Unlink articles\n        ArticleAuthor::OnAuthorTypeDelete($this->getId());\n        // Unlink authors\n        AuthorAssignedType::OnAuthorTypeDelete($this->getId());\n        // Delete this author type\n        $authorType = $this->getName();\n        $result = parent::delete();\n        return $result;\n    }\n\n    /**\n     * Get the id of the author type.\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return (int) $this->m_data['id'];\n    }\n\n    /**\n     * Get the name of the author type.\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        return (string) $this->m_data['type'];\n    }\n\n    /**\n     * Get the name of the author type.\n     *\n     * @param string $p_value\n     * @return string\n     */\n    public function setName($p_value)\n    {\n        if (!empty($p_value)) {\n            return $this->setProperty('type', (string) $p_value);\n        }\n    }\n\n    /**\n     * Get all the author types.\n     *\n     * @return array\n     *    An array of AuthorType objects.\n     */\n    public static function GetAuthorTypes()\n    {\n        global $g_ado_db;\n\n        $queryStr = 'SELECT id\n            FROM ' . self::TABLE . '\n            ORDER BY id';\n        $result = $g_ado_db->GetAll($queryStr);\n        if (!$result) {\n            return array();\n        }\n\n        $authorTypes = array();\n        foreach ($result as $authorType) {\n            $tmpAuthorType = new AuthorType($authorType['id']);\n            $authorTypes[] = $tmpAuthorType;\n        }\n        return $authorTypes;\n    }\n}\n"
  },
  {
    "path": "newscoop/classes/Browser.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/browser_detection.php';\n\n/**\n * Browser class\n */\nclass Browser\n{\n    /** @var array */\n    private static $browser = NULL;\n\n    /**\n     */\n    public function __construct()\n    {\n        if (self::$browser !== NULL) {\n            return;\n        }\n\n        self::$browser = browser_detection('full_assoc', '1');\n        self::$browser[self::$browser['browser_name']] = (float) self::$browser['browser_math_number'];\n\n        switch (self::$browser['browser_name']) {\n            case 'gecko': // add firefox alias\n                self::$browser['firefox'] = self::$browser['gecko'];\n                break;\n        }\n    }\n\n    /**\n     * Getter\n     *\n     * @param string $name\n     * @return mixed\n     */\n    public function __get($name)\n    {\n        // try getName function\n        $method = 'get' . ucfirst($name);\n        if (is_callable(array($this, $method))) {\n            return $this->$method();\n        }\n\n        // try browser info property\n        if (isset(self::$browser[$name])) {\n            return self::$browser[$name];\n        }\n\n        return False;\n    }\n\n    /**\n     * Get browser name\n     *\n     * @return string\n     */\n    public function __toString()\n    {\n        return self::$browser['browser_name'];\n    }\n\n    /**\n     * Get browser mobile flag\n     *\n     * @return bool\n     */\n    public function getMobile()\n    {\n        return !empty(self::$browser['mobile_test']);\n    }\n}\n"
  },
  {
    "path": "newscoop/classes/BugReporter.php",
    "content": "<?php\n/**\n * @package Newscoop\n */\n\n/**\n * BugReporter\n *\n * An object for sending captured error info to an HTTP server.\n *\n * An object for sending captured error info to an HTTP server.  In\n * particular this is made to work with the Trac plugin Autotrac, though\n * it would be quite simple to make another HTTP server to work with it.\n *\n * A simple way to use this object is to create an error handler to the\n * following function report_bug():\n *\n *     function report_bug ($p_number, $p_string, $p_file, $p_line)\n *     {\n *         $reporter = new BugReporter ($p_number, $p_string, $p_file, $p_line);\n *         $reporter->setServer (\"http://myserver.com/mydirectory\")\n *         $reporter->sendToServer();\n *     }\n *\n * The errors are always sent to the server URL plus the extension\n * \"/report\".  So the above example would POST the error variables to\n * http://myserver.com/mydirectory/newreport .  The error variables\n * POSTed are:\n *\n *     - f_backtrace\n *     - f_id\n *     - f_software\n *     - f_str\n *     - f_num\n *     - f_file\n *     - f_line\n *     - f_backtrace *     - f_description\n *     - f_email\n */\nclass BugReporter\n{\n    /**\n     * @param int    $p_number    The PHP error number.\n     * @param string $p_string    The error message.\n     * @param string $p_file      The file which encountered the error.\n     * @param int    $p_line      The line number of the file which encountered the error.\n     * @param string $p_software  The name of the software that encountered an error.\n     * @param int    $p_version   The version of the software that encountered an error.\n     * @param string $p_time      The date and time.  If left blank, it is the current date and time.\n     * @param mixed  $p_backtrace The stack trace.  This can be an array or string.\n     */\n    public function __construct($p_number, $p_string, $p_file, $p_line,\n                                $p_software, $p_version, $p_time = \"\", $p_backtrace = \"\")\n    {\n        $this->invalidParam = \"Invalid parameter value.\";\n\n        if (!is_string($p_software)) {\n            trigger_error($this->invalid_param);\n        }\n\n        if ($p_time == \"\") {\n            $p_time = date(\"r\");\n        }\n\n        if ($p_backtrace == \"\" || $p_backtrace == array()) {\n            $backtrace = debug_backtrace();\n\n            // --- We don't need the first 2 lines from the debug_backtrace() ---\n            $newBacktrace = array();\n            for ($aa = 2; $aa< sizeof($backtrace); $aa++) {\n                $newBacktrace[] = $backtrace[$aa];\n            }\n            if (sizeof($newBacktrace) > 0) {\n                $backtrace = $newBacktrace;\n            }\n        } else {\n            $backtrace = $p_backtrace;\n        }\n\n        $this->m_software = $p_software;\n        $this->m_version =  $p_version;\n        $this->m_num = (int) $p_number;\n        $this->m_str = $p_string;\n        $this->m_file = $p_file;\n        $this->m_line = (int) $p_line;\n        $this->m_backtrace = $this->__convertBacktraceArrayToString($backtrace);\n        $this->m_time = $p_time;\n    } // fn BugReporter\n\n\n    /**\n     * This changes the developers' default server.\n     *\n     * @param  string $p_server The URL of the new server.\n     * @return void\n     */\n    public function setServer($p_server)\n    {\n        $this->__server = $p_server;\n        $this->__ping = \"$p_server/ping\";\n        $this->__ft = \"$p_server/ft\";\n        $this->m_newReport = \"$p_server/newreport\";\n    } // fn setServer\n\n    /**\n     * Gets PHP version\n     *\n     * @return string php version\n     */\n    public function getPHPVersion()\n    {\n        return phpversion();\n    }\n\n    /**\n     * Gets OS info\n     *\n     * @return string OS info\n     */\n    public function getServerOS()\n    {\n        return php_uname();\n    }\n\n    /**\n     * Returns the current developers' server.\n     *\n     * @return string\n     *                The current server's URL.\n     */\n    public function getServer()\n    {\n        return $this->__server;\n    } // fn getServer\n\n\n    /**\n     * When pinging status is is set to false, pingServer() returns\n     * true without actually pinging the server.\n     *\n     * @return void\n     */\n    public function setPingStatus($p_pingingStatus)\n    {\n        if (!is_bool($p_pingingStatus)) {\n            trigger_error($this->invalidParam);\n        } else {\n            $this->m_disablePing = !($p_pingingStatus);\n        }\n    } // fn setPingStatus\n\n\n    /**\n     * @return The pinging status\n     */\n    public function getPingStatus()\n    {\n        return !$this->m_disablePing;\n    } // fn getPingStatus\n\n\n    /**\n     * Get form token to protect against CSRF attacks.\n     *\n     * @return mixed\n     *               String The form token\n     *               False If the no token was get.\n     */\n    public function getFormToken($p_client)\n    {\n        $code = $p_client->get($this->__ft);\n\n        $response = $p_client->currentResponse();\n        $responseBody = $response['body'];\n\n        if (strlen($responseBody) == 24 && $code == 200) {\n            return $responseBody;\n        } else {\n            return false;\n        }\n    } // fn getFormToken\n\n\n    /**\n     * Return the name of the error-file, not including the path.\n     *\n     * @return string\n     *                The name of the file, not including the path.\n     */\n    public function getFileWithoutPath()\n    {\n        if (preg_match(\"/\\/$/\", $this->m_file)) {\n            trigger_error($this->invalidParam);\n        }\n\n        return preg_replace(\"/.*\\/([^\\/]*)/\", \"$1\", $this->m_file);\n    } // fn getFileWithoutPath\n\n\n    /**\n     * Get the Error ID Code\n     *\n     * @return string the file's ID-code.\n     */\n    public function getId()\n    {\n        $id = \"$this->m_num:$this->m_software:$this->m_version:\".\n            $this->getFileWithoutPath().\":$this->m_line\";\n\n        $id = preg_replace('/\"/', \"'\", $id);\n\n        return $id;\n    } // fn getId\n\n\n    /**\n     * Get the backtrace string.\n     *\n     * @return string The traceback\n     */\n    public function getBacktraceString()\n    {\n        return $this->m_backtrace;\n    } // fn getBacktraceString\n\n\n    /**\n     * Get the name of the software the error occurred in.\n     *\n     * @return string The name of the software the error occurred in.\n     */\n    public function getSoftware()\n    {\n        return $this->m_software;\n    } // fn getSoftware\n\n\n    /**\n     * Get the version of the software the error occurred in.\n     *\n     * @return string The version of the software the error occurred in\n     */\n    public function getVersion()\n    {\n        return $this->m_version;\n    } // fn getVersion\n\n\n    /**\n     * Get the number of the error.\n     *\n     * @return int The error number\n     */\n    public function getErrorNum()\n    {\n        return $this->m_num;\n    } // fn getErrorNum\n\n\n    /**\n     * Get the error message\n     *\n     * @return The error-string\n     */\n    public function getStr()\n    {\n        return $this->m_str;\n    } // fn getStr\n\n\n    /**\n     * Get the time of the error.\n     *\n     * @return string The time at which the crash occurred\n     */\n    public function getTime()\n    {\n        return $this->m_time;\n    } // fn getTime\n\n\n    /**\n     * Get the name of the file in which the error occerrud.\n     *\n     * @return string The name of the file the crash occurred in.\n     */\n    public function getFile()\n    {\n        return $this->m_file;\n    } // fn getFile\n\n\n    /**\n     * Get the line number the error occurred in.\n     *\n     * @return int The line number the error occurred in.\n     */\n    public function getLine()\n    {\n        return $this->m_line;\n    } // fn getLine\n\n\n    /**\n     * Get the error reporter's email address\n     *\n     * @return int Get the email address of the user.\n     */\n    public function getEmail()\n    {\n        if (!isset($this->m_email)) {\n            $this->m_email = \"\";\n        }\n\n        return $this->m_email;\n    } // fn getEmail\n\n\n    /**\n     * Get the error reporter's description of the error.\n     *\n     * @return int Get the user's description of the error\n     */\n    public function getDescription()\n    {\n        if (!isset($this->m_description)) {\n            $this->m_description = \"\";\n        }\n\n        return $this->m_description;\n    } // fn getDescription\n\n\n    /**\n     * Get Manually set the backtrace string.\n     *\n     * @param string The traceback string\n     * @return void\n     */\n    public function setBacktraceString($p_backtrace)\n    {\n        $this->m_backtrace = $p_backtrace;\n    } // fn setBacktraceString\n\n\n    /**\n     * Manually set the software in which the error occurred.\n     *\n     * @param string Set the name of the software in which the error occurred.\n     * @return void\n     */\n    public function setSoftware($p_software)\n    {\n        $this->m_software = $p_software;\n    } // fn setSoftware\n\n    /**\n     * Manually set the software version of the error which occurred.\n     *\n     * @param string Set the version number of the software in which the error occurred.\n     * @return void\n     */\n    public function setVersion($p_version)\n    {\n        $this->m_version = $p_version;\n    } // fn setVersion\n\n\n    /**\n     * Manually set the number of the error which occurred.\n     *\n     * @param string Set the number of the error which just occurred.\n     * @return void\n     */\n    public function setErrorNum($p_errorNum)\n    {\n        $this->m_num = $p_errorNum;\n    } // fn setErrorNum\n\n\n    /**\n     * Manually set the message of the error which occurred.\n     *\n     * @param string Set the message for the error which just occurred\n     * @return void\n     */\n    public function setStr($p_str)\n    {\n        $this->m_str = $p_str;\n    } // fn setStr\n\n\n    /**\n     * Manually set the time at which the error occurred.\n     *\n     * @param string Set the time when the error occurred\n     * @return void\n     */\n    public function setTime($p_time)\n    {\n        $this->m_time = $p_time;\n    } // fn setTime\n\n\n    /**\n     * Manually set the file in which the error occurred.\n     *\n     * @param string Set the filename of the error which just occurred.\n     * @return void\n     */\n    public function setFile($p_file)\n    {\n        $this->m_file = $p_file;\n    } // fn setFile\n\n\n    /**\n     * Manually set the line number in which the error occurred.\n     *\n     * @param string Set the line number where the error occurred.\n     * @return void\n     */\n    public function setLine($p_line)\n    {\n        $this->m_line = $p_line;\n    } // fn setLine\n\n\n    /**\n     * Set the error reporter's email address.\n     *\n     * @param string Set the user's email.\n     * @return void\n     */\n    public function setEmail($p_email)\n    {\n        $this->m_email = $p_email;\n    } // fn setEmail\n\n\n    /**\n     * Set the reporter's description of the error\n     *\n     * @param string Set the user's description of the error\n     * @return void\n     */\n    public function setDescription($p_description)\n    {\n        $this->m_description = $p_description;\n    } // fn setDescription\n\n\n    /**\n     * Convert the backtrace array into a backtrace string.\n     *\n     * @param  array  $p_backtrace array The array to be converted.\n     * @return string The array as a string.\n     */\n    public function __convertBacktraceArrayToString($p_backtrace)\n    {\n        if (is_string($p_backtrace)) {\n            return $p_backtrace;\n        } elseif (is_array($p_backtrace)) {\n            $backtrace = \"\";\n\n            for ($aa = 0; $aa < sizeof($p_backtrace); $aa++) {\n                $backtraceCurrentLine = \"\";\n\n                // --- Get the Current the Backtrace line $aa (cbt) ---\n                $cbt = $p_backtrace[$aa];\n\n                $function = isset($cbt['function']) ? $cbt ['function'] : \"\";\n                $file = isset($cbt['file']) ? $cbt ['file'] : \"\";\n                $line = isset($cbt['line']) ? $cbt ['line'] : \"\";\n\n                $backtraceCurrentLine .= $function.\"() called at [\".$file.\":\".$line.\"]\\n\";\n\n                if (isset($cbt['class'])) {\n                    $backtraceCurrentLine = $cbt['class'].\"::\".$backtraceCurrentLine;\n                }\n                $backtrace .= $backtraceCurrentLine;\n            }\n\n            return $backtrace;\n        } else {\n            trigger_error($this->invalidParam);\n        }\n    } // fn __convertBacktraceArrayToString\n}\n"
  },
  {
    "path": "newscoop/classes/CampCache.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\nrequire_once(__DIR__ . '/../conf/install_conf.php');\nrequire_once 'cache/CacheEngine.php';\n\ndefine('CACHE_SERIAL_HEADER', \"<?php\\n/*\");\ndefine('CACHE_SERIAL_FOOTER', \"*/\\n?\".\">\");\n\n /**\n  * @package Campsite\n  * @deprecated from 4.3, removed in 4.4, use newscoop.cache service\n  */\nfinal class CampCache\n{\n    /**\n     * Stores the cache engine wrapper object.\n     * @var CacheEngine\n     */\n    private $m_cacheEngine = null;\n\n    /**\n     * The cache key for the current cache object.\n     *\n     * @var string\n     */\n    private $m_key = null;\n\n    /**\n     * A secret string to be used for hashing cache keys.\n     *\n     * @var string\n     */\n    private $m_secret = null;\n\n    /**\n     * Holds instance of the class.\n     *\n     * @var CampCache\n     */\n    private static $m_instance = null;\n\n    private static $m_enabled = null;\n\n    private static $m_storeRequests = 0;\n\n    private static $m_fetchRequests = 0;\n\n    private static $m_hits = 0;\n\n    private static $m_missKeys = array();\n\n    /**\n     * CampCache class constructor.\n     * @deprecated from 4.3, removed in 4.4, use newscoop.cache service\n     */\n    private function __construct($p_cacheEngine)\n    {\n        return;\n\n        global $Campsite;\n\n        if (empty($p_cacheEngine)) {\n            return;\n        }\n\n        $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n        $this->m_cacheEngine = CacheEngine::Factory($p_cacheEngine);\n        if (is_null($this->m_cacheEngine) || !$this->m_cacheEngine->isSupported()) {\n            self::$m_enabled = false;\n            $preferencesService->DBCacheEngine = '';\n\n            return;\n        } else {\n            self::$m_enabled = true;\n        }\n\n        if (isset($Campsite['CAMP_SECRET'])) {\n            $this->m_secret = $Campsite['CAMP_SECRET'];\n        } else {\n            $this->m_secret = $Campsite['DATABASE_USER']\n                .$Campsite['DATABASE_NAME']\n                .$Campsite['DATABASE_SERVER_ADDRESS']\n                .$Campsite['WWW_DIR'];\n        }\n    } // fn __construct\n\n    public static function initialized()\n    {\n        return !is_null(self::$m_instance);\n    }\n\n    /**\n     * Singleton function that returns the global class object.\n     *\n     * @return CampCache\n     */\n    public static function singleton()\n    {\n        if (is_null(self::$m_instance)) {\n            $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n            self::$m_instance = new CampCache($preferencesService->DBCacheEngine);\n        }\n\n        return self::$m_instance;\n    } // fn singleton\n\n    /**\n     * Alias for the store() method.\n     *\n     * An apc_add() method will be available in future releases of APC\n     * providing a different behave than apc_store(). This is basically\n     * why we implement this alias function.\n     *\n     * @param string\n     *    $p_key The cache key for the object\n     * @param mixed\n     *    $p_data The expected data to be cached\n     * @param int optional\n     *    $p_ttl The ttl for the object in cache\n     *\n     * @return boolean\n     *                 TRUE on success, FALSE on failure\n     */\n    public function add($p_key, $p_data, $p_ttl = 0)\n    {\n        return $this->store($p_key, $p_data, $p_ttl);\n    } // fn add\n\n    /**\n     * Fetch an object from cache.\n     *\n     * @param string\n     *    The cache key of the object\n     *\n     * @return mixed\n     *               The unserialized data.\n     */\n    public function fetch($p_key)\n    {\n        if (!self::$m_enabled) {\n            return false;\n        }\n        self::$m_fetchRequests ++;\n        $serial = $this->m_cacheEngine->fetchValue($this->genKey($p_key));\n        if ($serial !== false) {\n            self::$m_hits ++;\n        } else {\n            if (!isset(self::$m_missKeys[$p_key])) {\n                self::$m_missKeys[$p_key] = 1;\n            } else {\n                self::$m_missKeys[$p_key]++;\n            }\n\n            return false;\n        }\n\n        return $this->unserialize($serial);\n    } // fn fetch\n\n    /**\n     * Store the given data into cache.\n     *\n     * @param string\n     *    $p_key The cache key for the object\n     * @param mixed\n     *    $p_data The expected data to be cached\n     * @param int optional\n     *    $p_ttl The ttl for the object in cache\n     *\n     * @return boolean\n     *                 TRUE on success, FALSE on failure\n     */\n    public function store($p_key, $p_data, $p_ttl = 0)\n    {\n        if (!self::$m_enabled) {\n            return false;\n        }\n        self::$m_storeRequests ++;\n        $p_data = $this->serialize($p_data);\n\n        return $this->m_cacheEngine->storeValue($this->genKey($p_key), $p_data, $p_ttl);\n    } // fn fetch\n\n    /**\n     * Remove the object with given cache key from cache.\n     *\n     * @param string\n     *    $p_key The cache key for the object.\n     *\n     * @return boolean\n     *                 TRUE on success, FALSE on failure\n     */\n    public function delete($p_key)\n    {\n        if (!self::$m_enabled) {\n            return false;\n        }\n\n        return $this->m_cacheEngine->deleteValue($this->genKey($p_key));\n    } // fn delete\n\n    /**\n     * Clears the cache.\n     *\n     * @param string\n     *    $p_type If given is 'user', the user cache will be cleard,\n     *            otherwise the system cache (cached files) will be.\n     *\n     * @return boolean\n     *                 TRUE on success, FALSE on failure\n     */\n    public function clear($p_type = null)\n    {\n        if (!self::$m_enabled) {\n            return false;\n        }\n\n        if ($p_type == 'user') {\n            return $this->m_cacheEngine->clearValues();\n        } else {\n            return $this->m_cacheEngine->clearPages();\n        }\n    } // fn clear\n\n    /**\n     * Retrieves cache information and metadata from the cache store.\n     *\n     * @param string\n     *    $p_type If given is 'user', information about the user cache will\n     *            be returned, otherwise system cache information.\n     *\n     * @return mixed\n     *               array Cached data and metadata\n     *               boolean FALSE on failure\n     */\n    public function info($p_type = null)\n    {\n        if (!self::$m_enabled) {\n            return false;\n        }\n        $type = $p_type == 'user' ? CacheEngine::CACHE_VALUES_INFO : CacheEngine::CACHE_PAGES_INFO;\n\n        return $this->m_cacheEngine->getInfo($type);\n    } // fn info\n\n    /**\n     * Retrieves shared memory allocation information.\n     *\n     * @return mixed\n     *               array Shared memory allocation data\n     *               boolean FALSE on failure\n     */\n    public function meminfo()\n    {\n        if (!self::$m_enabled) {\n            return false;\n        }\n\n        return $this->m_cacheEngine->getMemInfo();\n    } // fn meminfo\n\n    /**\n     * Serializes the given data.\n     *\n     * @param mixed\n     *    $p_data The data to be serialized\n     *\n     * @return string\n     *                The serialized data\n     */\n    private function serialize($p_data)\n    {\n        return CACHE_SERIAL_HEADER.base64_encode(serialize($p_data)).CACHE_SERIAL_FOOTER;\n    } // fn serialize\n\n    /**\n     * Unserializes the given serialized data.\n     *\n     * @param string\n     *    $p_serial The serialized data\n     *\n     * @return mixed\n     *               The unserialized data\n     */\n    private function unserialize($p_serial)\n    {\n        return unserialize(base64_decode(substr($p_serial, strlen(CACHE_SERIAL_HEADER), -strlen(CACHE_SERIAL_FOOTER))));\n    } // fn unserialize\n\n    /**\n     * Generates the hash key for a cache object.\n     *\n     * @param string\n     *    $p_data The database object key to hashing\n     *\n     * @return string\n     *                The hash key\n     */\n    private function genKey($p_data)\n    {\n        if (function_exists('hash_hmac')) {\n            $this->m_key = hash_hmac('md5', $p_data, $this->m_secret);\n        } else {\n            $this->m_key = md5($p_data . $this->m_secret);\n        }\n\n        return $this->m_key;\n    } // fn genKey\n\n    public static function GetStoreRequests()\n    {\n        return self::$m_storeRequests;\n    }\n\n    public static function GetFetchRequests()\n    {\n        return self::$m_fetchRequests;\n    }\n\n    public static function GetHits()\n    {\n        return self::$m_hits;\n    }\n\n    public static function GetMissKeys()\n    {\n        return self::$m_missKeys;\n    }\n\n    /**\n     * Returns true if the given cache engine was supported\n     *\n     * @param $p_cacheEngine\n     * @return boolean\n     *                 TRUE on success, FALSE on failure\n     */\n    public static function IsSupported($p_cacheEngine = null)\n    {\n        if (empty($p_cacheEngine)) {\n            return false;\n        }\n        try {\n            if ($cacheEngine = CacheEngine::Factory($p_cacheEngine)) {\n                return true;\n            } else {\n                return false;\n            }\n        } catch (InvalidCacheEngine $ex) {\n            return false;\n        }\n    }\n\n    /**\n     * Returns true if the given cache engine was enabled\n     *\n     * @param $p_cacheEngine\n     * @return boolean\n     *                 TRUE on success, FALSE on failure\n     */\n    public static function IsEnabled($p_cacheEngine = null)\n    {\n        /**\n         * @deprecated from 4.3, removed in 4.4, use newscoop.cache service\n         */\n\n        return false;\n    }\n}\n"
  },
  {
    "path": "newscoop/classes/CampCacheList.php",
    "content": "<?php\n\nrequire_once(dirname(__FILE__).'/CampCache.php');\n\n/**\n * CampCacheList Class\n *\n * Simple class providing a standard interface to fetch and store\n * list of objects (articles, issues, sections, attachments, etc)\n * generated by static methods in several classes (e.g. Articles::GetList(),\n * ArticleTypeField::FetchFields()).\n */\nclass CampCacheList\n{\n    /**\n     * Cache key for the given list.\n     *\n     * @var string\n     */\n    private $m_cacheKey = null;\n\n    /**\n     * The name of the method generating the list.\n     *\n     * @var string\n     */\n    private $m_methodName = null;\n\n    /**\n     * Parameters passed to build the list with.\n     *\n     * @var array\n     */\n    private $m_parameters = array();\n\n    /**\n     * Default time to live in cache.\n     *\n     * @var int\n     */\n    protected $m_defaultTTL = 600;\n\n\n    /**\n     * Class constructor.\n     *\n     * @param array $p_parameters\n     * @param string $p_methodName\n     */\n    public function __construct(array $p_parameters, $p_methodName, $p_defaultTTL = null)\n    {\n        $this->m_methodName = $p_methodName;\n        $this->m_parameters = $p_parameters;\n        if (!is_null($p_defaultTTL)) {\n        \t$this->m_defaultTTL = $p_defaultTTL;\n        }\n    }\n\n\n    /**\n     * Fetch list with the given parameters from cache.\n     *\n     * @return mixed\n     *    array $list List of items found in cache\n     *    null List does not exist in cache\n     */\n    public function fetchFromCache()\n    {\n    \tif (CampCache::IsEnabled()) {\n    \t\t$list = CampCache::singleton()->fetch($this->getCacheKey());\n    \t\tif ($list !== false && is_array($list)) {\n    \t\t\treturn $list;\n    \t\t}\n    \t}\n\n    \treturn false;\n    }\n\n\n    /**\n     * Store the list of items in cache.\n     *\n     * @param array $p_list\n     *\n     * @return void\n     */\n    public function storeInCache(array $p_list)\n    {\n    \tif (CampCache::IsEnabled()) {\n    \t\tCampCache::singleton()->store($this->getCacheKey(), $p_list, $this->m_defaultTTL);\n    \t}\n    }\n\n\n    public function deleteFromCache()\n    {\n    \tif (CampCache::IsEnabled()) {\n    \t\tCampCache::singleton()->delete($this->getCacheKey());\n    \t}\n    }\n\n\n    /**\n     * Generate the cache key for the list based on parameters.\n     *\n     * @return string m_cacheKey\n     */\n    private function getCacheKey()\n    {\n    \tif (is_null($this->m_cacheKey)) {\n    \t\tforeach($this->m_parameters as $paramName => $paramValue) {\n    \t\t\tif (is_array($paramValue)) {\n    \t\t\t\t$this->m_parameters[$paramName] = serialize($paramValue);\n    \t\t\t}\n    \t\t}\n    \t\t$paramString = implode('_', $this->m_parameters);\n    \t\t$this->m_cacheKey = $this->m_methodName . '_' . $paramString;\n    \t}\n\n    \treturn $this->m_cacheKey;\n    }\n\n} // class CampCacheList\n\n?>"
  },
  {
    "path": "newscoop/classes/CampMail.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Sebastian Goebel <devel@yellowsunshine.de>\n * @copyright 2008 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\n\nrequire_once 'Mail.php';\nrequire_once 'Mail/mime.php';\n    \n\n/**\n * This class provides easy-to-use mail functionality\n *\n */\nclass CampMail\n{\n    /**\n     * Send an mime mail\n     * possibly only text or text + html.\n     *\n     * @param string or array  $recipients\n     * @param string $text\n     * @param string $html\n     * @param array $hdrs\n     */\n    static public function MailMime($recipients, $text=false, $html=false, $hdrs)\n    {\n        $crlf = \"\\n\";\n    \n        $mime = new Mail_mime($crlf);\n        \n        if (strlen($text)) {\n            $mime->setTXTBody($text);\n        }\n        \n        if (strlen($html)) {\n            $mime->setHTMLBody($html);\n        }\n        \n        $body = $mime->get(array('head_charset' => 'UTF-8', 'text_charset' => 'UTF-8', 'html_charset' => 'UTF-8'));\n        $hdrs = $mime->headers($hdrs);\n        \n        $mail = Mail::factory('mail');\n        \n        if (is_array($recipients)) {\n            foreach ($recipients as $recipient) {\n                $mail->send($recipient, $hdrs, $body);\n            }\n        } else {\n            $mail->send($recipients, $hdrs, $body);   \n        }\n    }\n    \n    /**\n     * Validate the syntax of an email address\n     *\n     * @param string $p_email\n     * @return boolean\n     */\n    static public function ValidateAddress($p_email)\n    {\n        if(eregi(\"^[a-z0-9]+([-_\\.]?[a-z0-9])+@[a-z0-9]+([-_\\.]?[a-z0-9])+\\.[a-z]{2,4}$\", $p_email)) {\n            return true;\n        }\n        return false;      \n    } \n}\n?>\n"
  },
  {
    "path": "newscoop/classes/CampPlugin.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Sebastian Goebel <devel@yellowsunshine.de>\n * @copyright 2007 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/DatabaseObject.php';\nrequire_once dirname(__FILE__) . '/../template_engine/metaclasses/MetaAction.php';\n\n/**\n * Class CampPlugin\n */\nclass CampPlugin extends DatabaseObject\n{\n\tconst CACHE_KEY_PLUGINS_LIST = 'campsite_plugins_list';\n\n\tconst CACHE_KEY_PLUGINS_ALL = 'campsite_plugins_all';\n\n    public $m_keyColumnNames = array('Name');\n\n    public $m_dbTableName = 'Plugins';\n\n    public $m_columnNames = array('Name', 'Version', 'Enabled');\n\n    static private $m_allPlugins = null;\n\n    static protected $m_pluginsInfo = null;\n\n    public function CampPlugin($p_name = null, $p_version = null, $enabled = null)\n    {\n        parent::DatabaseObject($this->m_columnNames);\n        $this->m_data['Name'] = $p_name;\n\n        if (!is_null($p_version)) {\n            $this->m_data['Version'] = $p_version;\n        }\n\n        if (!is_null($enabled)) {\n            $this->m_data['Enabled'] = $enabled;\n        }\n\n        if (!is_null($p_name) && is_null($enabled)) {\n            $this->fetch();\n        }\n    } // constructor\n\n    public function create($p_name = null, $p_version = null, $p_enabled = true)\n    {\n        // Create the record\n        $this->m_data['Name'] = $p_name;\n\n        $values = array(\n            'Version' => $p_version,\n            'Enabled' => $p_enabled ? 1 : 0\n        );\n\n\n        $success = parent::create($values);\n        if (!$success) {\n            return false;\n        }\n    }\n\n    static public function GetAll($p_reload = false)\n    {\n        if (!$p_reload && is_array(self::$m_allPlugins)) {\n        \treturn self::$m_allPlugins;\n        }\n\n        if (!$p_reload && CampCache::IsEnabled()) {\n            $cacheListObj = new CampCacheList(array(), self::CACHE_KEY_PLUGINS_ALL);\n            self::$m_allPlugins = $cacheListObj->fetchFromCache();\n            if (self::$m_allPlugins !== false && is_array(self::$m_allPlugins)) {\n                return self::$m_allPlugins;\n            }\n        }\n\n        self::$m_allPlugins = array();\n        $pluginService = \\Zend_Registry::get('container')->get('newscoop.plugins.service');\n        foreach ($pluginService->getAllAvailablePlugins() as $key => $plugin) {\n            self::$m_allPlugins[] = new CampPlugin($plugin->getName(), $plugin->getVersion(), $plugin->getEnabled());\n        }\n\n        if (!$p_reload && CampCache::IsEnabled()) {\n            $cacheListObj->storeInCache(self::$m_allPlugins);\n        }\n\n        return self::$m_allPlugins;\n    }\n\n    static public function GetEnabled($p_reload = false)\n    {\n        $plugins = array();\n\n        foreach (self::GetAll($p_reload) as $CampPlugin) {\n            if ($CampPlugin->isEnabled()) {\n                $plugins[] = $CampPlugin;\n            }\n        }\n        return $plugins;\n    }\n\n    public function getBasePath()\n    {\n        return CS_PLUGINS_DIR.DIR_SEP.$this->getName();\n    }\n\n    public function getName()\n    {\n        return $this->getProperty('Name');\n    }\n\n    public function getDbVersion()\n    {\n        return $this->getProperty('Version');\n    }\n\n\n    public function getFsVersion()\n    {\n        $info = self::GetPluginsInfo();\n        if (isset($info[$this->getName()]['version'])) {\n            return $info[$this->getName()]['version'];\n        }\n        return NULL;\n    }\n\n    public function isEnabled()\n    {\n        return $this->getProperty('Enabled') == 1 ? true : false;\n    }\n\n    static public function IsPluginEnabled($p_name, $p_version = null)\n    {\n        $plugin = new CampPlugin($p_name, $p_version);\n\n        return $plugin->isEnabled();\n    }\n\n    public function install()\n    {\n        $info = $this->getPluginInfo();\n        if (function_exists($info['install'])) {\n            call_user_func($info['install']);\n        }\n        MetaAction::DeleteActionsFromCache();\n        self::ClearPluginsInfo();\n    }\n\n    public function enable()\n    {\n        $this->setProperty('Enabled', 1);\n\n        $info = $this->getPluginInfo();\n        if (function_exists($info['enable'])) {\n            call_user_func($info['enable']);\n        }\n        MetaAction::DeleteActionsFromCache();\n        self::ClearPluginsInfo();\n    }\n\n    public function disable()\n    {\n        $this->setProperty('Enabled', 0);\n\n        $info = $this->getPluginInfo();\n        if (function_exists($info['disable'])) {\n            call_user_func($info['disable']);\n        }\n        MetaAction::DeleteActionsFromCache();\n        self::ClearPluginsInfo();\n    }\n\n    public function uninstall()\n    {\n        $info = $this->getPluginInfo();\n        if (function_exists($info['uninstall'])) {\n            call_user_func($info['uninstall']);\n        }\n\n        self::ClearPluginsInfo();\n\n        $this->delete();\n        MetaAction::DeleteActionsFromCache();\n        self::ClearPluginsInfo();\n    }\n\n    public function update($p_columns = NULL, $p_commit = true, $p_isSql = false)\n    {\n        $info = $this->getPluginInfo();\n        if (function_exists($info['update'])) {\n            call_user_func($info['update']);\n        }\n    }\n\n    /**\n     * Return a list or available or activated plugins.\n     * The method have to return an (empty) array.\n     *\n     * @param boolean $p_selectEnabled\n     * @param boolean $p_reload\n     * @return array\n     */\n    static public function GetPluginsInfo($p_selectEnabled = false, $p_reload = false)\n    {\n        $p_selectEnabled = $p_selectEnabled ? 'enabled' : 'available';\n\n        if ($p_reload) {\n            self::FetchFilePluginsInfo();\n        }\n\n        if (is_array(self::$m_pluginsInfo) && is_array(self::$m_pluginsInfo[$p_selectEnabled])) {\n            return self::$m_pluginsInfo[$p_selectEnabled];\n        } else {\n            if (self::FetchCachePluginsInfo() && is_array(self::$m_pluginsInfo[$p_selectEnabled])) {\n                return self::$m_pluginsInfo[$p_selectEnabled];\n            }\n            if (self::FetchFilePluginsInfo() && is_array(self::$m_pluginsInfo[$p_selectEnabled])) {\n                return self::$m_pluginsInfo[$p_selectEnabled];\n            }\n        }\n\n        self::$m_pluginsInfo = array('available' => array(), 'enabled' => array());\n        return array();\n    }\n\n    /**\n     * Fetch plugin infos from the %plugin.info files.\n     *\n     * @return boolen plugins were found\n     */\n    private static function FetchFilePluginsInfo()\n    {\n        if (!is_dir(CS_PATH_PLUGINS)) {\n            return false;\n        }\n\n        $pluginsInfo = array('available' => null, 'enabled' => array());\n\n        $enabledPluginsNames = array();\n        $enabledPlugins = self::GetEnabled();\n        foreach ($enabledPlugins as $plugin) {\n            $enabledPluginsNames[] = $plugin->getName();\n        }\n\n        foreach (glob(CS_PATH_PLUGINS . '/*/*.info.php') as $file) {\n            include $file;\n            $plugin = basename(dirname($file));\n            $pluginsInfo['available'][$plugin] = $info;\n            if (array_search($plugin, $enabledPluginsNames) !== false) {\n                $pluginsInfo['enabled'][$plugin] = $info;\n            }\n        }\n\n\t    self::$m_pluginsInfo = $pluginsInfo;\n        self::StoreCachePluginsInfo();\n\n        if (is_array($pluginsInfo['available'])) {\n\t\t\treturn true;\n        };\n        return false;\n    }\n\n    /**\n     * Fetch plugin infos from cache.\n     * The method have to validate if plugins still exists in filesystem.\n     *\n     * @return boolean plugins were found in cache\n     */\n    private static function FetchCachePluginsInfo()\n    {\n    \tif (CampCache::IsEnabled()) {\n    \t\t$pluginsInfo = CampCache::singleton()->fetch(self::CACHE_KEY_PLUGINS_LIST);\n    \t\tif ($pluginsInfo !== false && is_array($pluginsInfo['available'])) {\n    \t\t    foreach ($pluginsInfo['available'] as $entry => $info) {\n    \t\t        if (!file_exists(CS_PATH_PLUGINS.DIR_SEP.$entry.DIR_SEP.$entry.'.info.php')) {\n    \t\t            unset($pluginsInfo['available'][$entry]);\n    \t\t            unset($pluginsInfo['enabled'][$entry]);\n    \t\t        }\n    \t\t    }\n    \t\t\tself::$m_pluginsInfo = $pluginsInfo;\n    \t\t\treturn true;\n    \t\t}\n    \t}\n    \treturn false;\n    }\n\n\n    private static function StoreCachePluginsInfo()\n    {\n    \tif (CampCache::IsEnabled()) {\n            return CampCache::singleton()->add(self::CACHE_KEY_PLUGINS_LIST, self::$m_pluginsInfo);\n        }\n        return false;\n    }\n\n\n    private static function DeleteCachePluginsInfo()\n    {\n        if (CampCache::IsEnabled()) {\n        \t$cacheListObj = new CampCacheList(array(), self::CACHE_KEY_PLUGINS_ALL);\n        \t$cacheListObj->deleteFromCache();\n            return CampCache::singleton()->delete(self::CACHE_KEY_PLUGINS_LIST);\n        }\n        return false;\n    }\n\n\n    public static function ClearPluginsInfo()\n    {\n    \tself::DeleteCachePluginsInfo();\n        self::$m_pluginsInfo = null;\n        self::$m_allPlugins = null;\n    }\n\n\n    public function getPluginInfo($p_plugin_name = '')\n    {\n        if (!empty($p_plugin_name)) {\n            $name = $p_plugin_name;\n        } elseif (isset($this) && is_a($this, 'CampPlugin')) {\n            $name = $this->getName();\n        } else {\n            return false;\n        }\n\n        $infos = self::GetPluginsInfo();\n        $info = $infos[$name];\n\n        return $info;\n    }\n\n    static public function ExtendNoMenuScripts(&$p_no_menu_scripts)\n    {\n        foreach (self::GetPluginsInfo() as $info) {\n            if (is_array($info['no_menu_scripts']) && CampPlugin::IsPluginEnabled($info['name'])) {\n                $p_no_menu_scripts = array_merge($p_no_menu_scripts, $info['no_menu_scripts']);\n            }\n        }\n    }\n\n    static public function ExtractPackage($p_uploaded_package, &$p_log = null)\n    {\n        $plugin_name = false;\n\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        require_once('Archive/Tar.php');\n        $tar = new Archive_Tar($p_uploaded_package);\n\n\n        if (($file_list = $tar->ListContent()) == 0) {\n            $p_log = $translator->trans('The uploaded file format is unsupported.', array(), 'api');\n            return false;\n        } else {\n            foreach ($file_list as $v) {\n\n                if (preg_match('/[^\\/]+\\/([^.]+)\\.info\\.php/', $v['filename'], $matches)) {\n                    $plugin_name = $matches[1];\n                }\n\n                #$p_log .= sprintf(\"Name: %s  Size: %d   modtime: %s mode: %s<br>\", $v['filename'], $v['size'], $v['mtime'], $v['mode']);\n            }\n        }\n\n        if ($plugin_name === false) {\n            $p_log = $translator->trans('The uploaded archive does not contain an valid newscoop plugin.', array(), 'api');\n            return false;\n        }\n\n        $tar->extract(CS_PATH_PLUGINS);\n\n        self::ClearPluginsInfo();\n        CampPlugin::GetPluginsInfo(false, true);\n    }\n\n    /**\n     * @param string $p_filename\n     * @param string $p_area\n     * @deprecated\n     */\n    public static function PluginAdminHooks($p_filename, $p_area=null)\n    {\n        global $ADMIN, $ADMIN_DIR, $Campsite, $g_user;\n\n        $paths = array();\n\n        $filename = realpath($p_filename);\n        $admin_path = realpath(CS_PATH_SITE.DIR_SEP.$ADMIN_DIR);\n        $script = str_replace($admin_path, '', $filename);\n\n        foreach (self::GetEnabled() as $plugin) {\n            $filepath = realpath(dirname(APPLICATION_PATH).DIR_SEP.$plugin->getBasePath().DIR_SEP.'admin-files'.DIR_SEP.'include'.DIR_SEP.$script);\n            if (file_exists($filepath))  {\n                require_once $filepath;\n            }\n        }\n    }\n\n    /**\n     * Includes hooks for this filename from plugins\n     * @param string $filename\n     * @param array $vars\n     */\n    public static function adminHook($filename, $vars=array())\n    {\n        global $ADMIN, $ADMIN_DIR, $Campsite, $g_user;\n\n        $filename = realpath($filename);\n        $admin_path = realpath(CS_PATH_SITE.DIR_SEP.$ADMIN_DIR);\n        $script = str_replace($admin_path, '', $filename);\n\n        foreach (array_keys($vars) as $var => $val )\n            global $$var;\n        extract($vars);\n\n        foreach (self::GetEnabled() as $plugin) {\n            $filepath = realpath(dirname(APPLICATION_PATH).DIR_SEP.$plugin->getBasePath().DIR_SEP.'admin-files'.DIR_SEP.'include'.DIR_SEP.$script);\n            if (file_exists($filepath))  {\n                require_once $filepath;\n            }\n        }\n    }\n\n    public static function GetNeedsUpdate()\n    {\n        $upgradable = false;\n\n        foreach (self::GetEnabled(true) as $CampPlugin) {\n            if ($CampPlugin->getFsVersion() != $CampPlugin->getDbVersion()) {\n                $upgradable[$CampPlugin->getName()]  = array(\n                    'db' => $CampPlugin->getDbVersion(),\n                    'current' => $CampPlugin->getFsVersion()\n                );\n            }\n        }\n        return $upgradable;\n    }\n\n    /**\n     * Updates plugins if needed\n     * @return void\n     */\n    public static function OnUpgrade()\n    {\n        $plugins = self::GetNeedsUpdate();\n        if (!is_array($plugins) || empty($plugins)) {\n            return; // no plugin to update\n        }\n\n        // update\n        foreach ($plugins as $name => $info) {\n            $CampPlugin = new CampPlugin($name);\n            if (empty($info['current'])) {\n                continue;\n            }\n            $currentVersion = $CampPlugin->getFsVersion();\n            if ($CampPlugin->getDbVersion() != $currentVersion) {\n                $CampPlugin->delete();\n                $CampPlugin->create($name, $currentVersion);\n                $CampPlugin->update();\n            }\n        }\n\n    }\n\n    /**\n     * Updates plugins environment if needed\n     * @return void\n     */\n    public static function OnAfterUpgrade()\n    {\n        foreach (self::GetPluginsInfo() as $info) {\n            if (isset($info['upgrade'])) {\n                if (!isset($info['name'])) {\n                    continue;\n                }\n\n                $enabled = self::IsPluginEnabled($info['name']);\n\n                $upgrade_func_name = $info['upgrade'];\n                if (function_exists($upgrade_func_name)) {\n                    call_user_func($upgrade_func_name, $enabled);\n                }\n            }\n        }\n\n        // update autoload \n        exec('php '.$GLOBALS['g_campsiteDir'].'/scripts/newscoop.php autoload:update');\n    }\n}\n\n?>\n"
  },
  {
    "path": "newscoop/classes/CampTemplateCache.php",
    "content": "<?php\n\nclass CampTemplateCache\n{\n    /**\n     * Loads the handler specified by the given name.\n     * @param $p_handlerName\n     * @return object\n     */\n    public static function factory($p_handlerName = null, $p_path = null)\n    {\n        static $handlers;\n        $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n\n        if (!$p_handlerName) {\n            $p_handlerName = $preferencesService->TemplateCacheHandler;\n        }\n        if (!$p_handlerName) {\n            return null;\n        }\n        if (!empty($handlers[$p_handlerName])) {\n            return $handlers[$p_handlerName];\n        }\n        if (is_null($p_path)) {\n            $path = dirname(__FILE__) . DIR_SEP. 'cache';\n        } else {\n            $path = $p_path;\n        }\n        $filePath = \"$path/TemplateCacheHandler_$p_handlerName.php\";\n        if (file_exists($filePath)) {\n            require_once($filePath);\n            $className = \"TemplateCacheHandler_$p_handlerName\";\n            if (class_exists($className)) {\n                $handlerObj = new $className;\n                if ($handlerObj->isSupported()) {\n                    $handlers[$p_handlerName] = $handlerObj;\n\n                    return $handlerObj;\n                }\n            }\n        }\n\n        return null;\n    }\n\n    /**\n     * Returns an array of available handlers containing\n     * handler name -> info pairs.\n     * @param $p_path\n     * @return array\n     */\n    public static function availableHandlers($p_path = null)\n    {\n        if (is_null($p_path)) {\n            $path = dirname(__FILE__) . DIR_SEP. 'cache';\n        } else {\n            $path = $p_path;\n        }\n\n        $includeFiles = glob(realpath($path) . '/TemplateCacheHandler_*.php');\n        $handlers = array();\n        foreach ($includeFiles as $includeFile) {\n            if (preg_match('/TemplateCacheHandler_([^.]+)\\.php/', $includeFile, $matches) == 0) {\n                continue;\n            }\n            require_once $includeFile;\n            $handlerName = $matches[1];\n            $className = \"TemplateCacheHandler_$handlerName\";\n            if (class_exists($className)) {\n                $cacheHandler = new $className;\n                $handlers[$handlerName] = array(\n                    'is_supported'=>$cacheHandler->isSupported(),\n                    'file'=>\"$path/TemplateCacheHandler_$handlerName.php\",\n                    'description'=>$cacheHandler->description());\n            }\n        }\n\n        return $handlers;\n    }\n}\n"
  },
  {
    "path": "newscoop/classes/ContextBox.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbObjectArray.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ContextBoxArticle.php');\n/**\n * @package Campsite\n */\n\nClass ContextBox extends DatabaseObject\n{\n    var $m_dbTableName = 'context_boxes';\n    var $m_keyColumnNames = array('id');\n    var $m_keyIsAutoIncrement = true;\n    var $m_columnNames = array('id', 'fk_article_no');\n\n    public function __construct($p_id = null, $p_article_no = null)\n    {\n    \tparent::__construct($this->m_columnNames);\n        if (is_numeric($p_id) && $p_id > 0) {\n            $this->m_data['id'] = $p_id;\n            if ($this->keyValuesExist()) {\n                $this->fetch();\n            }\n        } else {\n\t        if(is_numeric($p_article_no) && $p_article_no > 0) {\n\t            $this->m_data['fk_article_no'] = $p_article_no;\n                $this->m_keyColumnNames = array('fk_article_no');\n                $this->fetch();\n\t            $this->m_keyColumnNames = array('id');\n\t        }\n        }\n        if(!$this->exists()) {\n        \t$this->create($p_article_no);\n        }\n    }\n\n    public function create($p_article_no = null)\n    {\n        if (empty($p_article_no)) {\n            return false;\n        }\n        $columns['fk_article_no'] = (int) $p_article_no;\n        $result = parent::create($columns);\n        return $result;\n    }\n\n    public function getId()\n    {\n    \treturn $this->m_data['id'];\n    }\n\n    public function getArticlesList()\n    {\n        return ContextBoxArticle::GetList(array('context_box' => $this->getId()), null, 0, 0, $p_count, FALSE);\n    }\n\n\n\t/**\n\t * Remove the context box for the given article.\n\t * @param int $articleNumber\n\t * @return void\n\t */\n    public static function OnArticleDelete($articleNumber)\n    {\n\t\tglobal $g_ado_db;\n\n\t\t$articleNumber = (int)$articleNumber;\n\t\tif ($articleNumber < 1) {\n\t\t    return;\n\t\t}\n\n\t\t$queryStr = 'SELECT * FROM context_boxes'\n\t\t. \" WHERE fk_article_no = '$articleNumber'\";\n\t\t$boxes = $g_ado_db->GetAll($queryStr);\n\t\tforeach ($boxes as $box) {\n\t\t    ContextBoxArticle::OnContextBoxDelete($box['id']);\n\t\t}\n\n\t\t$queryStr = 'DELETE FROM context_boxes'\n\t\t\t\t\t.\" WHERE fk_article_no = '$articleNumber'\";\n\t\t$g_ado_db->Execute($queryStr);\n    }\n}\n"
  },
  {
    "path": "newscoop/classes/ContextBoxArticle.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbObjectArray.php');\n/**\n * @package Campsite\n */\n\nclass ContextBoxArticle extends DatabaseObject\n{\n    var $m_dbTableName = 'context_articles';\n\n    var $m_keyColumnNames = array('fk_context_id', 'fk_article_no');\n\n    var $m_columnNames = array('fk_context_id', 'fk_article_no');\n\n    public function __construct($p_context_id = null, $fk_article_no = null) {\n        parent::__construct($this->m_columnNames);\n    }\n\n    public static function saveList($p_context_id, $p_article_no_array) {\n        self::removeList($p_context_id);\n        self::insertList($p_context_id, array_unique($p_article_no_array));\n    }\n\n    public static function removeList($p_context_id) {\n    \tGlobal $g_ado_db;\n        $queryStr = 'DELETE FROM context_articles'\n                    .' WHERE fk_context_id=' . intval($p_context_id);\n        $g_ado_db->executeUpdate($queryStr);\n        $wasDeleted = ($g_ado_db->affected_rows());\n        return $wasDeleted;\n    }\n\n    public static function insertList($p_context_id, $p_article_no_array) {\n    \tGlobal $g_ado_db;\n    \tforeach($p_article_no_array as $p_article_no) {\n            $sql = 'INSERT INTO context_articles (fk_context_id, fk_article_no)\n                    VALUES ('.intval($p_context_id).','.intval($p_article_no).')';\n            $g_ado_db->Execute($sql);\n    \t}\n    }\n\n\n    /**\n     * Gets an issues list based on the given parameters.\n     *\n     * @param integer $p_context_id\n     *    The Context Box Identifier\n     * @param string $p_order\n     *    An array of columns and directions to order by\n     * @param integer $p_start\n     *    The record number to start the list\n     * @param integer $p_limit\n     *    The offset. How many records from $p_start will be retrieved.\n     * @param integer $p_count\n     *    The total count of the elements; this count is computed without\n     *    applying the start ($p_start) and limit parameters ($p_limit)\n     *\n     * @return array $issuesList\n     *    An array of Issue objects\n     */\n    public static function GetList(array $params, $p_order = null,\n    $p_start = 0, $p_limit = 0, &$p_count, $p_skipCache = false)\n    {\n        global $g_ado_db;\n\n        if (!$p_skipCache && CampCache::IsEnabled()) {\n            $paramsArray['parameters'] = serialize($params);\n            $paramsArray['order'] = (is_null($p_order)) ? 'id' : $p_order;\n            $paramsArray['start'] = $p_start;\n            $paramsArray['limit'] = $p_limit;\n            $cacheListObj = new CampCacheList($paramsArray, __METHOD__);\n            $issuesList = $cacheListObj->fetchFromCache();\n            if ($issuesList !== false && is_array($issuesList)) {\n                return $issuesList;\n            }\n        }\n\n        if (isset($params['role']) && $params['role'] == 'child') {\n            $sql = 'SELECT DISTINCT b.fk_article_no FROM context_boxes b, Articles a0'\n                . ' WHERE a0.Number = b.fk_article_no AND '\n                . ' a0.Type = \"dossier\" AND '\n                . ' b.id IN (SELECT c.fk_context_id '\n                . '     FROM Articles a, context_articles c '\n                . '     WHERE c.fk_article_no = ' . $params['article']\n                . '     AND a.Number = c.fk_article_no)';\n            if (isset($params['published']) && $params['published'] == 'true') {\n                $sql .= ' AND a0.Published = \"Y\"';\n            }\n            $sql .= ' ORDER BY a0.PublishDate DESC';\n        } else {\n            if (isset($params['published']) && $params['published'] == 'true') {\n                $sql = 'SELECT DISTINCT b.fk_article_no FROM context_articles b, Articles a0'\n                . ' WHERE b.fk_context_id = ' . $params['context_box'] .' AND '\n                . ' b.fk_article_no = a0.Number AND '\n                . ' a0.Published = \"Y\"'\n                . ' ORDER BY b.id';\n            } else {\n                $sql = 'SELECT fk_article_no FROM context_articles'\n                . ' WHERE fk_context_id = ' . $params['context_box']\n                . ' ORDER BY id';\n            }\n        }\n        if ($p_limit > 0) {\n            $sql .= ' LIMIT ' . $p_limit;\n        }\n\n        $returnArray = array();\n        $rows = $g_ado_db->GetAll($sql);\n        if (is_array($rows)) {\n            foreach($rows as $row) {\n                $returnArray[] = $row['fk_article_no'];\n            }\n        }\n\n        $p_count = count($returnArray);\n\n        return $returnArray;\n    }\n\n    public static function OnArticleCopy($origArticle, $destArticle)\n    {\n\n        global $g_ado_db;\n\n        $contextBox = new ContextBox(null, $destArticle);\n        $sql = 'SELECT ca.fk_article_no as article_number\n           FROM context_boxes cb, context_articles ca\n           WHERE cb.id = ca.fk_context_id AND cb.fk_article_no = ' . $origArticle;\n        $rows = $g_ado_db->GetAll($sql);\n\n        foreach ($rows as $row) {\n            $sql = 'INSERT IGNORE INTO context_articles (fk_context_id, fk_article_no) '\n                . 'VALUES (' . $contextBox->getId() . ', ' . $row['article_number'] . ')';\n            $g_ado_db->Execute($sql);\n        }\n    }\n\n\t/**\n\t * Remove the article from any related articles list.\n\t * @param int $articleNumber\n\t * @return void\n\t */\n    public static function OnArticleDelete($articleNumber)\n    {\n\t\tglobal $g_ado_db;\n\n\t\t$articleNumber = (int)$articleNumber;\n\t\tif ($articleNumber < 1) {\n\t\t    return;\n\t\t}\n\n\t\t$queryStr = 'DELETE FROM context_articles'\n\t\t\t\t\t.\" WHERE fk_article_no = '$articleNumber'\";\n\t\t$g_ado_db->Execute($queryStr);\n    }\n\n\n\t/**\n\t * Remove the given context box articles.\n\t * @param int $contextBoxId\n\t * @return void\n\t */\n    public static function OnContextBoxDelete($contextBoxId)\n    {\n\t\tglobal $g_ado_db;\n\n\t\t$contextBoxId = (int)$contextBoxId;\n\t\tif ($contextBoxId < 1) {\n\t\t    return;\n\t\t}\n\n\t\t$queryStr = 'DELETE FROM context_articles'\n\t\t\t\t\t.\" WHERE fk_context_id = '$contextBoxId'\";\n\t\t$g_ado_db->Execute($queryStr);\n    }\n}\n"
  },
  {
    "path": "newscoop/classes/Country.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbObjectArray.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\n\n/**\n * @package Campsite\n */\nclass Country extends DatabaseObject {\n\tvar $m_dbTableName = 'Countries';\n\tvar $m_keyColumnNames = array('Code', 'IdLanguage');\n\tvar $m_keyIsAutoIncrement = false;\n\tvar $m_columnNames = array('Code', 'IdLanguage', 'Name');\n\n\t/**\n\t * Constructor.\n\t * @param string $p_code\n\t * @param int $p_languageId\n\t */\n\tpublic function Country($p_code = null, $p_languageId = null)\n\t{\n\t\tparent::DatabaseObject($this->m_columnNames);\n\t\t$this->m_data['Code'] = $p_code;\n\t\t$this->m_data['IdLanguage'] = $p_languageId;\n\t\tif ($this->keyValuesExist()) {\n\t\t\t$this->fetch();\n\t\t}\n\t} // constructor\n\n\n\tpublic function create($p_values = null)\n\t{\n\t\t$success = parent::create($p_values);\n\t\treturn $success;\n\t} // fn create\n\n\n\tpublic function delete()\n\t{\n\t    $tmpData = $this->m_data;\n\t\t$success = parent::delete();\n\t\treturn $success;\n\t} // fn delete\n\n\n\t/**\n\t * The unique ID of the language in the database.\n\t * @return int\n\t */\n\tpublic function getLanguageId()\n\t{\n\t\treturn $this->m_data['IdLanguage'];\n\t} // fn getLanguageId\n\n\n\t/**\n\t * Return the english name of this language.\n\t * @return string\n\t */\n\tpublic function getName()\n\t{\n\t\treturn $this->m_data['Name'];\n\t} // fn getName\n\n\n\t/**\n\t * Set the name of the country.\n\t * @param string $p_value\n\t * @return boolean\n\t */\n\tpublic function setName($p_value)\n\t{\n\t\t$oldValue = $this->m_data['Name'];\n\t\t$success = $this->setProperty('Name', $p_value);\n\t\treturn $success;\n\t} // fn setName\n\n\n\t/**\n\t * Get the two-letter code for this language.\n\t * @return string\n\t */\n\tpublic function getCode()\n\t{\n\t\treturn $this->m_data['Code'];\n\t} // fn getCode\n\n\n\t/**\n\t *\n\t */\n\tpublic static function GetNumCountries($p_languageId = null, $p_code = null,\n\t                                       $p_name = null)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$queryStr = \"SELECT COUNT(*) FROM Countries\";\n\t\t$constraints = array();\n\t\tif (!is_null($p_languageId)) {\n\t\t\t$constraints[] = array('IdLanguage', $p_languageId);\n\t\t}\n\t\tif (!is_null($p_code)) {\n\t\t\t$constraints[] = array('Code', $p_code);\n\t\t}\n\t\tif (!is_null($p_name)) {\n\t\t\t$constraints[] = array('Name', $p_name);\n\t\t}\n\t\tif (count($constraints) > 0) {\n\t\t\t$tmpArray = array();\n\t\t\tforeach ($constraints as $constraint) {\n\t\t\t\t$tmpArray[] = $constraint[0].\"='\".$constraint[1].\"'\";\n\t\t\t}\n\t\t\t$queryStr .= \" WHERE \".implode(\" AND \", $tmpArray);\n\t\t}\n\t\t$total = $g_ado_db->GetOne($queryStr);\n\t\treturn $total;\n\t} // fn GetNumCountries\n\n\n\t/**\n\t * @param int $p_languageId\n\t * @param string $p_code\n\t * @param string $p_name\n\t * @param array $p_sqlOptions\n\t * @return array\n\t */\n\tpublic static function GetCountries($p_languageId = null, $p_code = null,\n\t                                    $p_name = null, $p_sqlOptions = null)\n\t{\n\t\tif (is_null($p_sqlOptions)) {\n\t\t\t$p_sqlOptions = array();\n\t\t}\n\t\tif (!isset($p_sqlOptions['ORDER BY'])) {\n\t\t\t$p_sqlOptions['ORDER BY'] = array('Name', 'Code', 'IdLanguage');\n\t\t}\n\t\t$constraints = array();\n\t\tif (!is_null($p_languageId)) {\n\t\t\t$constraints[] = array('IdLanguage', (int) $p_languageId);\n\t\t}\n\t\tif (!is_null($p_code)) {\n\t\t\t$constraints[] = array('Code', $p_code);\n\t\t}\n\t\tif (!is_null($p_name)) {\n\t\t\t$constraints[] = array('Name', $p_name);\n\t\t}\n\t\treturn DatabaseObject::Search('Country', $constraints, $p_sqlOptions);\n\t} // fn GetCountries\n\n} // class Country\n\n?>\n"
  },
  {
    "path": "newscoop/classes/DatabaseObject.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\nrequire_once 'PEAR.php';\nrequire_once dirname(__FILE__) . '/../include/campsite_constants.php';\nrequire_once dirname(__FILE__) . '/DbObjectArray.php';\nrequire_once dirname(__FILE__) . '/CampCache.php';\nrequire_once dirname(__FILE__) . '/Exceptions.php';\nrequire_once dirname(__FILE__) . '/Log.php';\n\nuse \\Newscoop\\EventDispatcher\\EventDispatcher;\nuse \\Newscoop\\EventDispatcher\\Events\\GenericEvent;\n\n/**\n */\nclass DatabaseObject\n{\n\t/**\n\t * The name of the database table.\n\t * Redefine this in the subclass.\n\t * @var string\n\t */\n\tvar $m_dbTableName = '';\n\n\t/**\n\t * The names of the columns in the database table.\n\t * Redefine this in the subclass.\n\t * @var array\n\t */\n\tvar $m_columnNames = array();\n\n\t/**\n\t * The column names used for the key.\n\t * Redefine this in the subclass.\n\t * @var array\n\t */\n\tvar $m_keyColumnNames = array();\n\n\t/**\n\t * Whether or not the primary key is an auto-increment field.\n\t * @var boolean\n\t */\n\tvar $m_keyIsAutoIncrement = false;\n\n\t/**\n\t * An array of (ColumnName => Value).\n\t * @var array\n\t */\n\tvar $m_data = array();\n\n\t/**\n\t * TRUE if the object exists in the database, FALSE if not, NULL if unknown.\n\t * @var boolean\n\t */\n\tvar $m_exists = null;\n\n\t/**\n\t * If the key values of an object are changed, we need to remember the old\n\t * values in order to change to the new values.  This is the array of the\n\t * old values.\n\t * @var array\n\t */\n\tvar $m_oldKeyValues = array();\n\n    /** @var EventDispatcher */\n    protected static $eventDispatcher = null;\n\n    /** @var array */\n    protected static $resourceNames = array();\n\n\t/**\n\t * DatabaseObject represents a row in a database table.\n\t * This class is meant to be subclassed in order to implement a\n\t * specific table in the database.\n\t *\n\t * @param array $p_columnNames\n\t *\t\tThe column names of this table.  These are optional.\n\t *\n\t */\n\tpublic function DatabaseObject($p_columnNames = null)\n\t{\n\t    if (!is_null($p_columnNames)) {\n\t    \t$this->setColumnNames($p_columnNames);\n\t    }\n\t} // constructor\n\n\n    /**\n     * Returns true if the current object is the same type as the given\n     * object then has the same value.\n     * @param mix $p_otherObject\n     * @return boolean\n     */\n\tpublic function sameAs($p_otherObject)\n\t{\n\t\tif (get_class($this) != get_class($p_otherObject)\n\t\t|| $this->m_dbTableName != $p_otherObject->m_dbTableName) {\n\t\t\treturn false;\n\t\t}\n\t\tif (!$this->m_exists && !$p_otherObject->m_exists) {\n\t\t\treturn true;\n\t\t}\n\t\tforeach ($this->m_keyColumnNames as $keyColumnName) {\n\t\t\tif ($this->m_data[$keyColumnName] != $p_otherObject->m_data[$keyColumnName]) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\n\n\t/**\n\t * Return the column names used for the primary key.\n\t * @return array\n\t */\n\tpublic function getKeyColumnNames() { return $this->m_keyColumnNames; }\n\n\n\t/**\n\t * Return the column names of this table.\n\t *\n\t * @param boolean $p_withTablePrefix\n\t *\t\tSet to true if you want to prefix the column names with the table name.\n\t *\t\tDefault is false.\n\t *\n\t * @return array\n\t */\n\tpublic function getColumnNames($p_withTablePrefix = false)\n\t{\n\t\tif (!$p_withTablePrefix) {\n\t\t\treturn $this->m_columnNames;\n\t\t} else {\n\t\t\t$prefixNames = array();\n\t\t\tforeach ($this->m_columnNames as $columnName) {\n\t\t\t\t$prefixNames[] = $this->m_dbTableName.'.'.$columnName;\n\t\t\t}\n\t\t\treturn $prefixNames;\n\t\t}\n\t} // fn getColumnNames\n\n\n\t/**\n\t * Initialize the column names for this object.\n\t * All column values will be initialized to null.\n\t *\n\t * @param array $p_columnNames\n\t * \t\tThe column names in the database.\n\t *\n\t * @return void\n\t */\n\tpublic function setColumnNames($p_columnNames)\n\t{\n\t\tif (is_array($p_columnNames)) {\n\t\t\t$this->m_data = array_fill_keys($p_columnNames, null);\n\t\t}\n\t} // fn setColumnNames\n\n\n\t/**\n\t * Return the row as an array indexed by the column names.\n\t * @return array\n\t */\n\tpublic function getData() { return $this->m_data; }\n\n\n\t/**\n\t * Return the name of the database table.\n\t * @return string\n\t */\n\tpublic function getDbTableName() { return $this->m_dbTableName; }\n\n\n\t/**\n\t * Return the key as an array indexed by column names.\n\t * @return array\n\t */\n\tpublic function getKey()\n\t{\n\t\t$key = array();\n\t\tforeach ($this->m_keyColumnNames as $columnName) {\n\t\t\t$key[$columnName] = $this->m_data[$columnName];\n\t\t}\n\t\treturn $key;\n\t} // fn getKey\n\n\n\t/**\n\t * This function has two modes of operation:\n\t * You can change the columns used for the key values,\n\t * or you can change the key values themselves.\n\t * Changing key values is tricky because you have to remember the old\n\t * values in order to set the new values.\n\t *\n\t * @param array $p_columnNames\n\t *     <pre>\n\t *\t\tCan be either:\n\t *\t\t[0] => 'column name 1', [1] => 'column name 2', ...\n\t *\t\tor:\n\t *\t\t['column name 1'] => 'value', ['column name 2'] => 'value',...\n\t *     </pre>\n\t * @return void\n\t */\n\tpublic function setKey($p_columnNames)\n\t{\n\t\tif (is_array($p_columnNames)) {\n\t\t\tif (isset($p_columnNames[0])) {\n\t\t\t\t$this->m_keyColumnNames = array_values($p_columnNames);\n\t\t\t} else {\n\t\t\t\t$this->m_keyColumnNames = array_keys($p_columnNames);\n\t\t\t\tforeach ($this->m_keyColumnNames as $columnName) {\n\t\t\t\t\t$this->modifyKeyValue($columnName, $p_columnNames[$columnName]);\n\t\t\t\t}\n\t\t\t}\n\t\t} elseif (is_string($p_columnNames)) {\n\t\t\t$this->m_keyColumnNames = array($p_columnNames);\n\t\t}\n\t} // fn setKey\n\n\n\t/**\n\t * Remember the old value of the key.\n\t * @param string $p_columnName\n\t * @param string $p_value\n\t * @return void\n\t */\n\tpublic function modifyKeyValue($p_columnName, $p_value)\n\t{\n\t\tif (!isset($this->m_oldKeyValues[$p_columnName])) {\n\t\t\t$this->m_oldKeyValues[$p_columnName] = $this->m_data[$p_columnName];\n\t\t}\n\t\t$this->m_data[$p_columnName] = $p_value;\n\t} // fn modifyKeyValue\n\n\n\t/**\n\t * Fetch a single record from the database for the given key.\n\t *\n\t * @param array $p_recordSet\n\t *\t\tIf the record has already been fetched and we just need to\n\t * \t\tassign the data to the object's internal member variable.\n\t * @param bool $p_forceExists\n\t *\t\tprevents to check for the object existence in the database,\n\t * \t\ta performance thing for situations where we know it exists.\n\t *\n\t * @return boolean\n\t *\t\tTRUE on success, FALSE on failure\n\t */\n\tpublic function fetch($p_recordSet = null, $p_forceExists = false)\n\t{\n\t\t$g_ado_db = \\Zend_Registry::get('container')->get('doctrine.adodb');\n\n\t\tif (is_null($p_recordSet)) {\n\t\t\tif ($this->readFromCache() !== false) {\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\t$queryStr = 'SELECT ';\n\t\t\t$tmpColumnNames = array();\n\t\t\tforeach ($this->getColumnNames() as $columnName) {\n\t\t\t\t$tmpColumnNames[] = '`'.$columnName.'`';\n\t\t\t}\n\t\t\t$queryStr .= implode(', ', $tmpColumnNames);\n\t\t\t$queryStr .= ' FROM ' . $this->m_dbTableName;\n\t\t\t$queryStr .= ' WHERE ' . $this->getKeyWhereClause();\n\t\t\t$resultSet = $g_ado_db->GetRow($queryStr);\n\t\t\tif ($resultSet) {\n\t\t\t\tforeach ($this->getColumnNames() as $dbColumnName) {\n\t\t\t\t\t$this->m_data[$dbColumnName] = $resultSet[$dbColumnName];\n\t\t\t\t}\n\t\t\t\t$this->m_exists = true;\n\t\t\t} else {\n\t\t\t\t$this->m_exists = false;\n\t\t\t}\n\t\t} else {\n\t\t\tif ($this->readFromCache($p_recordSet) !== false) {\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t    // We were given a pre-fetched recordset.\n\t\t    $this->m_data = $p_recordSet;\n\t\t    // Make sure all columns have a value even if they arent in the dataset.\n\t\t\tforeach ($this->getColumnNames() as $dbColumnName) {\n\t\t\t\tif (!isset($p_recordSet[$dbColumnName])) {\n\t\t\t\t\t$this->m_data[$dbColumnName] = null;\n                }\n\t\t\t}\n            if ($p_forceExists) {\n                $this->m_exists = true;\n            } else {\n\t\t\t\t$this->m_exists = false;\n\t\t\t\tif ($this->keyValuesExist()) {\n\t\t\t\t\t$queryStr = 'SELECT * FROM ' . $this->m_dbTableName\n\t\t\t\t\t\t\t\t. ' WHERE ' . $this->getKeyWhereClause();\n\t\t\t\t\tif ($g_ado_db->GetRow($queryStr)) {\n\t\t\t\t\t\t$this->m_exists = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t// Reset old key values - we are now synced with the database.\n\t\t$this->m_oldKeyValues = array();\n\n\t\tif ($this->m_exists) {\n\t\t    // Write the object to cache\n\t\t    $this->writeCache();\n\t\t}\n\n\t\treturn $this->m_exists;\n\t} // fn fetch\n\n\n\t/**\n\t * Return true if the object exists in the database.\n\t *\n\t * @return boolean\n\t */\n\tpublic function exists()\n\t{\n\t\treturn !is_null($this->m_exists) && $this->m_exists;\n\t} // fn exists\n\n\n\t/**\n\t * Return a string for the primary key of the table.\n\t *\n\t * @return string\n\t */\n\tpublic function getKeyWhereClause()\n\t{\n\t    $g_ado_db = \\Zend_Registry::get('container')->get('doctrine.adodb');\n\n\t\t$whereParts = array();\n\t\tforeach ($this->m_keyColumnNames as $columnName) {\n            $value = isset($this->m_oldKeyValues[$columnName]) ? $this->m_oldKeyValues[$columnName]\n                : $this->m_data[$columnName];\n            $whereParts[] = $g_ado_db->escapeKeyVal($columnName, $value);\n\t\t}\n\n\t\treturn implode(' AND ', $whereParts);\n\t} // fn getKeyWhereClause\n\n\n\t/**\n\t * Return true if the object has all the values required\n\t * to fetch a unique record from the table.\n\t *\n\t * @return boolean\n\t */\n\tpublic function keyValuesExist($p_recordSet = null)\n\t{\n        $recordSet = is_null($p_recordSet) ? $this->m_data : $p_recordSet;\n\t    foreach ($this->m_keyColumnNames as $columnName) {\n\t\t\tif (!isset($recordSet[$columnName])\n\t\t\t|| is_null($recordSet[$columnName])) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t} // fn keyValuesExist\n\n\n\t/**\n\t * Create the record in the database for this object.\n\t * This will use the currently set index values for the key.\n\t * No other values are set unless they are passed in through\n\t * the $p_values parameter.\n\t *\n\t * @param array $p_values\n\t *\t\tExtra values to be set at create time, in the form of:\n\t *\t\t(DB Column Name) => (value)\n\t *\n\t * @return boolean\n\t *\t\tTRUE if the record was added, false if not.\n\t */\n\tpublic function create($p_values = null)\n\t{\n\t\t$g_ado_db = \\Zend_Registry::get('container')->get('doctrine.adodb');\n\n\t\t$queryStr = 'INSERT IGNORE INTO ' . $this->m_dbTableName;\n\n\t\t// Make sure we have the key required to create the row.\n\t\t// If auto-increment is set, the database will create the key for us.\n\t\t$columns = array();\n\t\tif ($this->keyValuesExist()) {\n\t\t\t// If the key values exist, use those.\n\t\t\t$columns = $this->getKey();\n\t\t\t$autoGenerated = false;\n\t\t} elseif (!$this->m_keyIsAutoIncrement) {\n\t\t\t// We dont have the key values and\n\t\t\t// the key is not an auto-increment value,\n\t\t\t// so we cant create the row.\n\t\t\treturn false;\n\t\t} else {\n\t\t\t$autoGenerated = true;\n\t\t}\n\n\t\t// Check if any columns values in the class are already set.\n\t\t// If so, automatically set these values when we create the row.\n\t\tforeach ($this->m_columnNames as $columnName) {\n\t\t\tif (!empty($this->m_data[$columnName])) {\n\t\t\t\t$columns[$columnName] = $g_ado_db->escape($this->m_data[$columnName]);\n\t\t\t}\n\t\t}\n\n\t\t// Optionally set some values when we create the row.\n\t\t// These override values that are preset in the class.\n\t\tif (!is_null($p_values)) {\n\t\t\t$parts = array();\n\t\t\tforeach ($p_values as $columnName => $value) {\n\t\t\t\tif (in_array($columnName, $this->m_columnNames)) {\n\t\t\t\t\t// Construct value string for the SET clause.\n\t\t\t\t\t$columns[$columnName] = $g_ado_db->escape($value);\n\t\t\t\t\t$this->m_data[$columnName] = $value;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (count($columns) > 0) {\n\t\t\t$queryStr .= '(`' . implode('`,`', array_keys($columns)) . '`)';\n\t\t} else {\n\t\t\t$queryStr .= '(' . implode('`,`', array_keys($columns)) . ')';\n\t\t}\n\t\t$queryStr .= ' VALUES ('.implode(',', array_values($columns)) .')';\n\n\t\t// Create the row.\n\t\t$g_ado_db->executeUpdate($queryStr);\n\t\t$success = ($g_ado_db->Affected_Rows() > 0);\n\t\t$this->m_exists = $success;\n\n\t\t// Fetch the row ID if it is auto-increment\n\t\tif ($this->m_keyIsAutoIncrement && $autoGenerated) {\n\t\t\t// There should only be one key column because\n\t\t\t// its an auto-increment key.\n\t\t\t$this->m_data[$this->m_keyColumnNames[0]] =\n\t\t\t\t$g_ado_db->Insert_ID();\n\t\t}\n\n        self::dispatchEvent(\"{$this->getResourceName()}.create\", $this, array(\n            'id' => $this->getKey(),\n            'diff' => $this->m_data,\n            'title' => method_exists($this, 'getName') ? $this->getName() : '',\n        ));\n\t\t$this->resetCache();\n\t\treturn $success;\n\t} // fn create\n\n\n\t/**\n\t * Delete the row from the database.\n\t *\n\t * @return boolean\n\t *\t\tTRUE if the record was deleted, false if not.\n\t */\n\tpublic function delete()\n\t{\n\t\t$g_ado_db = \\Zend_Registry::get('container')->get('doctrine.adodb');\n\n\t\t$queryStr = 'DELETE FROM ' . $this->m_dbTableName\n\t\t\t\t\t.' WHERE ' . $this->getKeyWhereClause()\n\t\t\t\t\t.' LIMIT 1';\n\t\t$g_ado_db->executeUpdate($queryStr);\n\t\t$wasDeleted = ($g_ado_db->Affected_Rows() > 0);\n\n\t\t// removes object from cache\n\t\tif (DatabaseObject::GetUseCache()) {\n\t\t    $cacheKey = $this->getCacheKey();\n\t\t    $cacheObj = CampCache::singleton();\n\t\t    $cacheObj->delete($cacheKey);\n\t\t}\n\n        self::dispatchEvent(\"{$this->getResourceName()}.delete\", $this, array(\n            'id' => $this->getKey(),\n            'diff' => $this->m_data,\n            'title' => method_exists($this, 'getName') ? $this->getName() : '',\n        ));\n\n\t\t// Always set \"exists\" to false because if a row wasnt\n\t\t// deleted it means it probably didnt exist in the first place.\n\t\t$this->m_exists = false;\n\t\t$this->m_data = array();\n\t\treturn $wasDeleted;\n\t} // fn delete\n\n\n\t/**\n\t * Return the data stored in the given column.\n\t *\n\t * @param string $p_dbColumnName\n\t *\n\t * @param boolean $p_forceFetchFromDatabase\n\t *\t\tGet the data from the database instead of cached value\n\t *\t\tthat is stored in the object.\n\t *\n\t * @return mixed\n\t *\t\tReturn a string if the property exists,\n\t *\t\tNULL if the value doesnt exist,\n\t *      or a PEAR_Error if $p_forceFetchFromDatabase is TRUE\n\t *      and there was a problem fetching the data.\n\t */\n\tpublic function getProperty($p_dbColumnName, $p_forceFetchFromDatabase = false)\n\t{\n\t\t$g_ado_db = \\Zend_Registry::get('container')->get('doctrine.adodb');\n\n        if (in_array($p_dbColumnName, $this->m_columnNames) === false\n                && !array_key_exists($p_dbColumnName, $this->m_data)) {\n            throw new InvalidPropertyException(get_class($this), $p_dbColumnName);\n        }\n\n\t\tif (isset($this->m_data[$p_dbColumnName])) {\n\t\t\tif ($p_forceFetchFromDatabase) {\n\t\t\t\tif ($this->keyValuesExist() && in_array($p_dbColumnName, $this->m_columnNames)) {\n\t\t\t\t\t$queryStr = 'SELECT '.$p_dbColumnName\n\t\t\t\t\t\t\t\t.' FROM '.$this->m_dbTableName\n\t\t\t\t\t\t\t\t.' WHERE '.$this->getKeyWhereClause();\n\t\t\t\t\t$this->m_data[$p_dbColumnName] = $g_ado_db->GetOne($queryStr);\n\t\t\t\t\t// Special case for key values\n\t\t\t\t\tif (in_array($p_dbColumnName, $this->m_oldKeyValues)) {\n\t\t\t\t\t\t// Key value is now synced with database.\n\t\t\t\t\t\tunset($this->m_oldKeyValues[$p_dbColumnName]);\n\t\t\t\t\t}\n\t\t\t\t\t// Remember that this row exists.\n\t\t\t\t\tif ($this->m_data[$p_dbColumnName] !== false) {\n\t\t\t\t\t\t$this->m_exists = true;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t    if (!$this->keyValuesExist()) {\n                        return new PEAR_Error('Key values do not exist - cannot fetch row.');\n\t\t\t\t    } else {\n\t\t\t\t        return new PEAR_Error('Column name does not exist - cannot fetch row.');\n\t\t\t\t    }\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $this->m_data[$p_dbColumnName];\n\t\t}\n\t\treturn null;\n\t} // fn getProperty\n\n\n\t/**\n\t * Set the given column name to the given value.\n\t * The object's internal variable will also be updated.\n\t * If the value hasnt changed, the database will not be updated.\n\t * Note: You cannot set $p_commit to FALSE and $p_isSql to TRUE\n\t * at the same time.\n\t *\n\t * @param string $p_dbColumnName\n\t *\t\tThe name of the column that is to be updated.\n\t *\n\t * @param string $p_value\n\t *\t\tThe value to set.\n\t *\n\t * @param boolean $p_commit\n\t *\t\tIf set to true, the value will be written to the database immediately.\n\t *\t\tIf set to false, the value will not be written to the database.\n\t *\t\tDefault is true.\n\t *\n\t * @param boolean $p_isSql\n\t *\t\tSet this to TRUE if p_value consists of SQL commands.\n\t *\t\tThere is no way to know what the result of the command is,\n\t *\t\tso we will need to refetch the value from the database in\n\t *\t\torder to update the internal variable's value.\n\t *\n\t * @return boolean\n\t *\t\tTRUE on success, FALSE on error.\n\t */\n\tpublic function setProperty($p_dbColumnName, $p_value, $p_commit = true, $p_isSql = false)\n\t{\n\t\t$g_ado_db = \\Zend_Registry::get('container')->get('doctrine.adodb');\n\n\t\t// If we are not committing, the value cannot be SQL.\n\t\tif (!$p_commit && $p_isSql) {\n\t\t\treturn false;\n\t\t}\n\t\t// Check that the value is a valid column name.\n\t\tif (!array_key_exists($p_dbColumnName, $this->m_data)) {\n\t\t\tif (in_array($p_dbColumnName, $this->m_columnNames)) {\n\t\t\t\t$this->m_data[$p_dbColumnName] = null;\n\t\t\t} else {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\t// If the value hasnt changed, dont update it.\n\t\tif ($p_value == $this->m_data[$p_dbColumnName] && !$p_isSql) {\n\t\t\treturn true;\n\t\t}\n\t\t// If we don't have the key to this row, we can't update it.\n\t\tif ($p_commit && !$this->keyValuesExist()) {\n\t\t\treturn false;\n\t\t}\n\t\t$isKeyColumn = in_array($p_dbColumnName, $this->m_keyColumnNames);\n\t\t// Special case if we are modifying a key value -\n\t\t// we need to remember the old key value if we are going to commit\n\t\t// later on.\n\t\tif (!$p_commit && $isKeyColumn) {\n\t\t\t// Remember the old value so we can tell the database which row\n\t\t\t// we are changing.\n\t\t\tif (!isset($this->m_oldKeyValues[$p_dbColumnName])) {\n\t\t\t\t$this->m_oldKeyValues[$p_dbColumnName] = $this->m_data[$p_dbColumnName];\n\t\t\t}\n\t\t}\n\t\t$success = true;\n\t\t// Commit value to the database if requested.\n\t\tif ($p_commit) {\n\t\t\t$value = $p_value;\n\t\t\tif (!$p_isSql) {\n\t\t\t\t$value = is_null($p_value) ? 'NULL' : $g_ado_db->escape($p_value);\n\t\t\t}\n\t\t\t$queryStr = 'UPDATE '.$this->m_dbTableName\n\t\t\t\t\t\t.' SET `'. $p_dbColumnName.'`='.$value\n\t\t\t\t\t\t.' WHERE '.$this->getKeyWhereClause()\n\t\t\t\t\t\t.' LIMIT 1';\n\t\t\ttry {\n\t\t\t\t$result = $g_ado_db->executeUpdate($queryStr);\n\t\t\t\t$success = ($result !== false && $g_ado_db->Affected_Rows() >= 0);\n\t\t\t} catch (\\Exception $e) {\n\t\t\t\tLog::Message(\"Exception thrown when executing update query \" . $queryStr . \" \" . $e->getMessage());\n\t\t\t\t$success = false;\n\t\t\t\t$result = false;\n\t\t\t}\n\n\t\t\tif ($result !== false) {\n\t\t\t\t$this->m_exists = true;\n\t\t\t\tif ($isKeyColumn && DatabaseObject::GetUseCache()) {\n\t\t\t\t\t$cacheKey = $this->getCacheKey();\n\t\t\t\t\t$cacheObj = CampCache::singleton();\n\t\t\t\t\t$cacheObj->delete($cacheKey);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n        $diff = array($p_dbColumnName => array(\n            $this->m_data[$p_dbColumnName],\n        ));\n\n\t\t// Store the value locally.\n\t\tif (!$p_isSql) {\n\t\t\t$this->m_data[$p_dbColumnName] = $p_value;\n\t\t} else {\n\t\t\t// Fetch the data from the database.  This is for the\n\t\t\t// case when the database execute some operation (e.g. 'DATE')\n\t\t\t// to create the new value.\n\t\t\t$queryStr = 'SELECT '.$p_dbColumnName\n\t\t\t\t\t\t.' FROM '.$this->m_dbTableName\n\t\t\t\t\t\t.' WHERE '.$this->getKeyWhereClause();\n\t\t\t$value = $g_ado_db->GetOne($queryStr);\n\t\t\tif ($value !== false) {\n\t\t\t\t$this->m_data[$p_dbColumnName] = $value;\n\t\t\t\t$this->m_exists = true;\n\t\t\t} else {\n\t\t\t\t$errorMsg = $g_ado_db->ErrorMsg();\n\t\t\t}\n\t\t}\n\n        $diff[$p_dbColumnName][] = $this->m_data[$p_dbColumnName];\n        self::dispatchEvent(\"{$this->getResourceName()}.update\", $this, array(\n            'id' => $this->getKey(),\n            'diff' => $diff,\n            'title' => method_exists($this, 'getName') ? $this->getName() : '',\n        ));\n\n        // Write the object to cache\n        if ($success !== false && $p_commit) {\n            $this->writeCache();\n        }\n\n\t\treturn $success;\n\t} // fn setProperty\n\n\n\t/**\n\t * Update the database row with the given values.\n\t *\n\t * @param array $p_columns\n\t *\t\tArray of (Column_Name => Value)\n\t *\n\t * @param boolean $p_commit\n\t *\t\tIf set to true, the value will be written to the database immediately.\n\t *\t\tIf set to false, the value will not be written to the database.\n\t *\t\tDefault is true.\n\t *\n\t * @param boolean $p_isSql\n\t *\t\tSet this to TRUE if the values of p_columns contains SQL commands.\n\t *\t\tThere is no way to know what the result of the command is,\n\t *\t\tso we will need to refetch the row from the database in\n\t *\t\torder to update the internal variable's value.\n\t *\n\t * @return boolean\n\t *\t\tReturn TRUE on success, FALSE on error.\n\t */\n\tpublic function update($p_columns = null, $p_commit = true, $p_isSql = false)\n\t{\n\t\t$g_ado_db = \\Zend_Registry::get('container')->get('doctrine.adodb');\n\n\t\t// Check input\n\t\tif (!is_array($p_columns)) {\n\t\t\treturn false;\n\t\t}\n\n        $diff = array();\n\n        $setColumns = array();\n        foreach ($p_columns as $columnName => $columnValue) {\n        \t// Set the value only if the column name exists.\n        \tif (array_key_exists($columnName, $this->m_data)) {\n\t        \t// Special case if we are setting a key value -\n\t        \t// if we are going to commit later, then we need to\n\t        \t// remember the old key values.\n\t        \tif (!$p_commit && in_array($columnName, $this->m_keyColumnNames)) {\n\t\t\t\t\t// Remember the old value so we can tell the database which row\n\t\t\t\t\t// we are changing.\n\t        \t\tif (!isset($this->m_oldKeyValues[$columnName])) {\n\t        \t\t\t$this->m_oldKeyValues[$columnName] = $this->m_data[$columnName];\n\t        \t\t}\n\t        \t}\n\t        \t// Only set the value if it is different from the\n\t        \t// current value.\n\t        \tif ($columnValue != $this->m_data[$columnName]) {\n    \t        \t$setColumns[] = $g_ado_db->escapeKeyVal($columnName, $columnValue);\n    \t        \tif (!$p_isSql) {\n                        $diff[$columnName] = array($this->m_data[$columnName], $columnValue);\n    \t        \t\t$this->m_data[$columnName] = $columnValue;\n    \t        \t}\n\t        \t}\n        \t}\n        }\n        $success = true;\n        if ($p_commit && (count($setColumns) > 0)) {\n\t        $queryStr = 'UPDATE ' . $this->m_dbTableName\n\t        \t\t\t.' SET '.implode(',', $setColumns)\n\t        \t\t\t.' WHERE ' . $this->getKeyWhereClause()\n\t        \t\t\t.' LIMIT 1';\n\t\t\ttry {\n\t\t\t\t$success = $g_ado_db->executeUpdate($queryStr);\n\t\t\t} catch (\\Exception $e) {\n\t\t\t\tLog::Message(\"Exception thrown when executing update query \" . $queryStr . \" \" . $e->getMessage());\n\t\t\t\t$success = false;\n\t\t\t}\n\n\t\t\tif ($success !== false) {\n\t\t\t\t$this->m_exists = true;\n\t\t\t}\n        }\n        if ($p_isSql && (count($setColumns) > 0)) {\n        \t$this->fetch();\n        \t$this->m_oldKeyValues = array();\n        }\n\n        // Write the object to cache\n        if ($success !== false) {\n            $this->writeCache();\n            self::dispatchEvent(\"{$this->getResourceName()}.update\", $this, array(\n                'id' => $this->getKey(),\n                'diff' => $diff,\n                'title' => method_exists($this, 'getName') ? $this->getName() : '',\n            ));\n        }\n\n\t\treturn $success;\n\t} // fn update\n\n\n\t/**\n\t * Commit the data stored in memory to the database.\n\t * This is useful if you make a bunch of setProperty() calls at once\n\t * and you dont want to update the database every time.  Instead you\n\t * can set all the variables without committing them, then call this function.\n\t *\n\t * @param array $p_ignoreColumns\n\t *\t\tSpecify column names to ignore when doing the commit.\n\t *\n\t * @return boolean\n\t *\t\tReturn TRUE if the database was updated, false otherwise.\n\t */\n\tpublic function commit($p_ignoreColumns = null)\n\t{\n\t\t$g_ado_db = \\Zend_Registry::get('container')->get('doctrine.adodb');\n\n        $setColumns = array();\n        foreach ($this->m_data as $columnName => $columnValue) {\n        \t$value = is_null($columnValue) ? 'NULL' : $g_ado_db->escape($columnValue);\n        \tif (is_null($p_ignoreColumns) || !in_array($columnName, $p_ignoreColumns)) {\n        \t\t$setColumns[] = $columnName.' = '.$value;\n        \t}\n        }\n\t\t$queryStr = 'UPDATE ' . $this->m_dbTableName\n\t        \t\t.' SET '.implode(',', $setColumns)\n\t        \t\t.' WHERE ' . $this->getKeyWhereClause()\n\t        \t\t.' LIMIT 1';\n        $result = $g_ado_db->executeUpdate($queryStr);\n\t\t$success = ($g_ado_db->Affected_Rows() >= 0);\n\t\tif ($result !== false) {\n\t\t\t$this->m_exists = true;\n\t\t}\n\n        // Write the object to cache\n        if ($success !== false) {\n            $this->writeCache();\n        }\n\n\t\treturn $success;\n\t} // fn commit\n\n\n\t/**\n\t * Do a simple search.\n\t *\n\t * @param array $p_columns\n\t *\t\tArray of arrays of two strings: column name and search value.\n\t * @param array $p_sqlOptions\n\t *\t\tSee ProcessOptions().\n\t *\n\t * @return array\n\t */\n\tpublic static function Search($p_className, $p_columns = null, $p_sqlOptions = null)\n\t{\n        $g_ado_db = \\Zend_Registry::get('container')->get('doctrine.adodb');\n\n\t\tif (!class_exists($p_className)) {\n\t\t\treturn array();\n\t\t}\n\n\t\t$tmpObj = new $p_className;\n\t\t$queryStr = \"SELECT * FROM \".$tmpObj->m_dbTableName;\n\t\tif (is_array($p_columns) && (count($p_columns) > 0)) {\n\t\t\t$contraints = array();\n\t\t\tforeach ($p_columns as $item) {\n\t\t\t\tif (count($item) == 2) {\n\t\t\t\t\tlist($columnName, $value) = $item;\n\t\t\t\t\t$contraints[] = $g_ado_db->escapeKeyVal($columnName, $value);\n\t\t\t\t}\n\t\t\t}\n\t\t\t$queryStr .= \" WHERE \".implode(\" AND \", $contraints);\n\t\t}\n\t\t$queryStr = DatabaseObject::ProcessOptions($queryStr, $p_sqlOptions);\n\t\t$dbObjects = DbObjectArray::Create($p_className, $queryStr);\n\t\treturn $dbObjects;\n\t} // fn search\n\n\n\t/**\n\t * Output the raw values of this object so that it displays nice in HTML.\n\t * @return void\n\t */\n\tpublic function dumpToHtml()\n\t{\n\t    echo \"<pre>\";\n\t    print_r($this->m_data);\n\t    echo \"</pre>\";\n\t} // fn dumpToHtml\n\n\n\t/**\n\t * This is used by subclasses to add extra SQL options to the end of a query.\n\t *\n\t * @param string $p_queryStr\n\t *\t\tThe current SQL query.\n\t *\n\t * @param array $p_sqlOptions\n\t *     <pre>\n\t *\t\tAvailable options:\n\t *\t\t'LIMIT' => [max_rows_to_fetch]\n\t *\t\t'LIMIT' => array('START'=>[Starting_index],'MAX_ROWS'=>[Max_rows_to_fetch]\n\t *\t\t'ORDER BY' => [column_name]\n\t *\t\t'ORDER BY' => array([column_name_1], [column_name_2], ...)\n\t *\t\t'ORDER BY' => array([column_name_1]=>[ASC|DESC], [column_name_2]=>[ASC|DESC], ...)\n\t *     </pre>\n\t *\n\t * @return string\n\t *\t\tOriginal SQL query with the options appended at the end.\n\t */\n\tpublic static function ProcessOptions($p_queryStr, $p_sqlOptions)\n\t{\n\t\tif (!is_null($p_sqlOptions)) {\n            if (isset($p_sqlOptions['GROUP BY'])) {\n                if (!is_array($p_sqlOptions['GROUP BY'])) {\n                    $p_queryStr .= \" \\nGROUP BY \".$p_sqlOptions['GROUP BY'];\n                } else {\n                    $p_queryStr .= \" \\nGROUP BY \";\n                    $tmpItems = array();\n                    foreach ($p_sqlOptions['GROUP BY'] as $key => $orderItem) {\n                        // We assume here that the column name is not numeric\n                        if (is_numeric($key)) {\n                            // Not using the ASC/DESC option\n                            $tmpItems[] = $orderItem;\n                        } else {\n                            $orderItem = strtoupper($orderItem);\n                            if (($orderItem == 'ASC') || ($orderItem == 'DESC')) {\n                                // Using the ASC/DESC option\n                                $tmpItems[] = $key.' '.$orderItem;\n                            }\n                        }\n                    }\n                    $p_queryStr .= implode(',', $tmpItems);\n                }\n            }\n\t\t\tif (isset($p_sqlOptions['HAVING'])) {\n\t\t\t\tif (!is_array($p_sqlOptions['HAVING'])) {\n\t\t\t\t\t$p_queryStr .= \" \\nHAVING \".$p_sqlOptions['HAVING'];\n\t\t\t\t} else {\n\t\t\t\t\t$p_queryStr .= \" \\nHAVING \" . implode(', ', $p_sqlOptions['HAVING']);\n\t\t\t\t}\n\t\t\t}\n            if (isset($p_sqlOptions['ORDER BY'])) {\n\t\t\t\tif (!is_array($p_sqlOptions['ORDER BY'])) {\n\t\t\t\t\t$p_queryStr .= \" \\nORDER BY \".$p_sqlOptions['ORDER BY'];\n\t\t\t\t} else {\n\t\t\t\t\t$p_queryStr .= \" \\nORDER BY \";\n\t\t\t\t\t$tmpItems = array();\n\t\t\t\t\tforeach ($p_sqlOptions['ORDER BY'] as $key => $orderItem) {\n\t\t\t\t\t\t// We assume here that the column name is not numeric\n\t\t\t\t\t\tif (is_numeric($key)) {\n\t\t\t\t\t\t\t// Not using the ASC/DESC option\n\t\t\t\t\t\t\t$tmpItems[] = $orderItem;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$orderItem = strtoupper($orderItem);\n\t\t\t\t\t\t\tif (($orderItem == 'ASC') || ($orderItem == 'DESC')) {\n\t\t\t\t\t\t\t\t// Using the ASC/DESC option\n\t\t\t\t\t\t\t\t$tmpItems[] = $key.' '.$orderItem;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t$p_queryStr .= implode(',', $tmpItems);\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (isset($p_sqlOptions['LIMIT'])) {\n\t\t\t\tif (is_array($p_sqlOptions['LIMIT'])) {\n\t\t\t\t\t$p_queryStr .= \" \\nLIMIT \".$p_sqlOptions['LIMIT']['START']\n\t\t\t\t\t\t.','.$p_sqlOptions['LIMIT']['MAX_ROWS'];\n\t\t\t\t} else {\n\t\t\t\t\t$p_queryStr .= \" \\nLIMIT \".$p_sqlOptions['LIMIT'];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn $p_queryStr;\n\t} // fn ProcessOptions\n\n\n\t/**\n\t * Initializes the current object from cache if it exists\n\t *\n\t * @param array $p_recordSet\n\t *\n\t * @return mixed\n     *    object The cached object on success\n     *    boolean FALSE if the object did not exist\n\t */\n\tpublic function readFromCache($p_recordSet = null)\n\t{\n\t\tif (!DatabaseObject::GetUseCache()) {\n\t\t\treturn false;\n\t\t}\n\n        $cacheKey = '';\n        if (!$this->keyValuesExist($p_recordSet)) {\n            return false;\n        }\n\n        $cacheKey = $this->getCacheKey($p_recordSet);\n        $cacheObj = CampCache::singleton();\n        $object = $cacheObj->fetch($cacheKey);\n\n\t\tif ($object === false) {\n\t\t\treturn false;\n\t\t}\n\n\t\t$this->duplicateObject($object);\n\n\t\treturn $this;\n\t}\n\n\n\t/**\n\t * Copies the given object\n\t *\n\t * @param object $p_source\n\t * @return object\n\t */\n\tpublic function duplicateObject($p_source)\n\t{\n\t\tforeach ($p_source as $key=>$value) {\n\t\t\t$this->$key = $value;\n\t\t}\n\n\t\treturn $this;\n\t}\n\n\n\t/**\n\t * Returns true if cache use was enabled\n\t *\n\t * @return bool\n\t */\n\tpublic function GetUseCache()\n\t{\n\t\treturn false;\n\t}\n\n\n\t/**\n\t * Sets cache enabled/disabled\n\t *\n\t * @param bool $p_useCache\n\t *\n\t * @return void\n\t */\n\tpublic function SetUseCache($p_useCache)\n\t{\n\t\treturn false;\n\t}\n\n\n\tpublic function resetCache()\n\t{\n        if (!DatabaseObject::GetUseCache() || !$this->m_exists) {\n            return false;\n        }\n\n        $cacheKey = $this->getCacheKey();\n        $cacheObj = CampCache::singleton();\n\n        return $cacheObj->delete($cacheKey);\n\t}\n\n\n\t/**\n\t * Writes the object to cache.\n\t *\n\t * @return bool\n     *    TRUE on success, FALSE on failure\n\t */\n\tpublic function writeCache()\n\t{\n\t\tif (!DatabaseObject::GetUseCache() || !$this->m_exists) {\n\t\t\treturn false;\n\t\t}\n\n        $cacheKey = $this->getCacheKey();\n        if ($cacheKey === false) {\n        \treturn false;\n        }\n        $cacheObj = CampCache::singleton();\n\n        return $cacheObj->add($cacheKey, $this);\n\t} // fn writeCache\n\n\n    /**\n     * Generates the cache key for the object.\n     *\n     * @param array optional\n     *    $p_recordSet The object data\n     */\n    public function getCacheKey($p_recordSet = null)\n    {\n\t\tif (is_array($p_recordSet)) {\n\t\t\t$recordSet = $p_recordSet;\n\t\t} else {\n\t\t\t$recordSet = $this->m_data;\n\t\t}\n\n\t\t$cacheKey = '';\n\t\tforeach ($this->m_keyColumnNames as $key) {\n\t\t\tif (!isset($recordSet[$key]) || is_null($recordSet[$key])) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t$cacheKey .= (strlen($cacheKey) < 1) ? '' : '_';\n            $cacheKey .= strtolower($recordSet[$key]);\n\t\t}\n\n        return $cacheKey.'_'.get_class($this);\n    } // fn getCacheKey\n\n\n    protected function lockTables(array $p_tables = array(), $p_write = true)\n    {\n    \t$g_ado_db = \\Zend_Registry::get('container')->get('doctrine.adodb');\n\n    \tif (count($p_tables) == 0) {\n    \t\treturn;\n    \t}\n    \t$mode = $p_write ? 'WRITE' : 'READ';\n    \t$lockQuery = 'LOCK TABLES ' . implode(', ', $p_tables) . \" $mode\";\n    \treturn $g_ado_db->Execute($lockQuery);\n    }\n\n\n    protected function unlockTables()\n    {\n    \t$g_ado_db = \\Zend_Registry::get('container')->get('doctrine.adodb');\n\n    \t$unlockQuery = 'UNLOCK TABLES';\n    \treturn $g_ado_db->Execute($unlockQuery);\n    }\n\n    /**\n     * Set event dispatcher.\n     *\n     * @param EventDispatcher $dispatcher\n     * @return void\n     */\n    public static function setEventDispatcher($dispatcher)\n    {\n        self::$eventDispatcher = $dispatcher;\n    }\n\n    /**\n     * Dispatch event.\n     *\n     * @param string $event\n     * @param string $subject\n     * @param array $params\n     */\n    protected static function dispatchEvent($event, $subject, $params = array())\n    {\n        if (empty(self::$eventDispatcher)) {\n            return;\n        }\n\n        self::$eventDispatcher->dispatch($event, new GenericEvent($subject, $params));\n    }\n\n    /**\n     * Set resource names.\n     *\n     * @param array $names\n     * @return void\n     */\n    public static function setResourceNames(array $names)\n    {\n        self::$resourceNames = $names;\n    }\n\n    /**\n     * Get resource name.\n     *\n     * @return string\n     */\n    protected function getResourceName()\n    {\n        return isset(self::$resourceNames[$this->m_dbTableName]) ? self::$resourceNames[$this->m_dbTableName] : $this->m_dbTableName;\n    }\n}"
  },
  {
    "path": "newscoop/classes/DbObjectArray.php",
    "content": "<?php\n\n/**\n * @package Campsite\n */\nclass DbObjectArray {\n\n\t/**\n\t * Create an array of DatabaseObjects.\n\t *\n\t * @param string $p_className\n\t *\t\tThe type of objects to create.  The class\n\t *\t\tmust be a decendant of DatabaseObject and\n\t *\t\thave a constructor that can take no parameters.\n\t *\n\t * @param string $p_queryStr\n\t *\t\tThe database query string that will fetch the\n\t *\t\trows from the database.\n\t *\n\t * @return array\n\t */\n\tpublic static function Create($p_className, $p_queryStr)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$retval = array();\n\t\t$rows = $g_ado_db->GetAll($p_queryStr);\n\t\tif (is_array($rows)) {\n\t\t\tforeach ($rows as $row) {\n\t\t\t\t$tmpObj = new $p_className();\n\t\t\t\t$tmpObj->fetch($row);\n\t\t\t\t$retval[] = $tmpObj;\n\t\t\t}\n\t\t}\n\t\treturn $retval;\n\t} // fn Create\n\n\n\t/**\n\t * Given an array of DatabaseObjects, return one column\n\t * of the data.\n\t *\n\t * @param array $p_array\n\t * @param string $p_columnName\n\t * @return array\n\t */\n\tpublic static function GetColumn($p_array, $p_columnName)\n\t{\n\t\t$column = array();\n\t\tif (is_array($p_array)) {\n\t\t\tforeach ($p_array as $dbObject) {\n\t\t\t\t$column[] = $dbObject->m_data[$p_columnName];\n\t\t\t}\n\t\t}\n\t\treturn $column;\n\t} // fn GetColumn\n\n\n\t/**\n\t * Given an array of DatabaseObjects, return the raw data\n\t * table as a two dimensional array.\n\t *\n\t * @param array $p_array\n\t * @return array\n\t */\n\tpublic static function GetTable($p_array)\n\t{\n\t\t$table = array();\n\t\tif (is_array($p_array)) {\n\t\t\tforeach ($p_array as $dbObject) {\n\t\t\t\t$table[] = $dbObject->m_data;\n\t\t\t}\n\t\t}\n\t\treturn $table;\n\t} // fn GetTable\n\n\n} // class DbObjectArray\n\n?>"
  },
  {
    "path": "newscoop/classes/DbReplication.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n\n/**\n * A simple class for Database Replication.\n * TODO: Add more replication functions.\n *\n * @package Campsite\n */\nclass DbReplication {\n\t/**\n\t * Remote (Online) db server connection details.\n\t */\n\tvar $m_rDbName = null;\n\tvar $m_rDbHost = null;\n\tvar $m_rDbUser = null;\n\tvar $m_rDbPass = null;\n\n\t/**\n\t * Constructor\n\t *\n\t * @return void\n\t */\n\tpublic function DbReplication() {}\n\n\t/**\n\t * Try to connect the resource based on supplied parameter.\n\t *\n\t * @param string (optional)\n     *      Host/Server alias [online | local]\n     *\n\t * @return boolean|PEAR_Error\n     *\n\t */\n\tpublic function connect($host = null)\n\t{\n\t\tglobal $Campsite;\n\t\tglobal $g_ado_db;\n\n\t\t$preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n\n\t\tif ($host == 'local') {\n\t\t\tif (isset($g_ado_db)\n\t\t\t\t&& $g_ado_db->host == $Campsite['DATABASE_SERVER_ADDRESS']) {\n\t\t\t\treturn true;\n\t\t\t} else {\n\t\t\t\t$g_ado_db = ADONewConnection('mysql');\n\t\t\t\t$g_ado_db->SetFetchMode(ADODB_FETCH_ASSOC);\n\t\t\t\tif ($g_ado_db->Connect($Campsite['DATABASE_SERVER_ADDRESS'],\n\t\t\t\t\t\t\t$Campsite['DATABASE_USER'],\n\t\t\t\t\t\t\t$Campsite['DATABASE_PASSWORD'],\n\t\t\t\t\t\t\t$Campsite['DATABASE_NAME'])) {\n\t\t\t\t\treturn true;\n\t\t\t\t} else {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t$g_ado_db_tmp = $g_ado_db;\n\n       \t$this->m_rDbName = $Campsite['DATABASE_NAME'];\n\t\t$this->m_rDbHost = $preferencesService->DBReplicationHost\n                           . $preferencesService->DBReplicationPort;\n\t\t$this->m_rDbUser = $preferencesService->DBReplicationUser;\n\t\t$this->m_rDbPass = $preferencesService->DBReplicationPass;\n\n\t\tif (isset($g_ado_db) && $g_ado_db->host == $this->m_rDbHost) {\n\t\t\treturn true;\n\t\t}\n\t\tif ($this->m_rDbHost == ':'\n\t\t\t\t|| is_null($this->m_rDbUser)\n\t\t\t\t|| is_null($this->m_rDbPass)) {\n\t\t\treturn false;\n\t\t}\n\t\t$g_ado_db = ADONewConnection('mysql');\n\t\t$g_ado_db->SetFetchMode(ADODB_FETCH_ASSOC);\n\t\tif ($g_ado_db->Connect($this->m_rDbHost,\n\t\t\t\t\t$this->m_rDbUser,\n\t\t\t\t\t$this->m_rDbPass,\n\t\t\t\t\t$this->m_rDbName) == false) {\n\t\t\t$g_ado_db = $g_ado_db_tmp;\n\t\t\treturn false;\n\t\t} else {\n\t\t\treturn true;\n\t\t}\n\t} // fn connect\n\n} // class DbReplication\n\n?>\n"
  },
  {
    "path": "newscoop/classes/Event.php",
    "content": "<?PHP\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbObjectArray.php');\n\n/**\n * @package Campsite\n */\nclass Event extends DatabaseObject {\n\tvar $m_keyColumnNames = array('Id', 'IdLanguage');\n\n\tvar $m_dbTableName = 'Events';\n\n\tvar $m_columnNames = array('Id', 'IdLanguage', 'Name', 'Notify');\n\n\tpublic function Event($p_id = null, $p_languageId = null)\n\t{\n\t\tparent::DatabaseObject($this->m_columnNames);\n\t\t$this->m_data['Id'] = $p_id;\n\t\t$this->m_data['IdLanguage'] = $p_languageId;\n\t\tif (!is_null($p_id) && !is_null($p_languageId)) {\n\t\t\t$this->fetch();\n\t\t}\n\t} // constructor\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getEventId()\n\t{\n\t\treturn $this->m_data['Id'];\n\t} // fn getEventId\n\n\n\t/**\n\t * @return string\n\t */\n\tpublic function getName()\n\t{\n\t\treturn $this->m_data['Name'];\n\t} // fn getName\n\n\n\t/**\n\t * @return array\n\t */\n\tpublic static function GetEvents()\n\t{\n\t\t$tmpEvent = new Event();\n\t\t$columns = implode(',', $tmpEvent->getColumnNames(true));\n\t\t$queryStr = \"SELECT $columns FROM Events ORDER BY Id\";\n\t\t$events = DbObjectArray::Create('Event', $queryStr);\n\t\treturn $events;\n\t} // fn GetEvents\n\n} // class Event\n\n?>"
  },
  {
    "path": "newscoop/classes/Exceptions.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\nfinal class InvalidPropertyException extends Exception {\n\tprivate $m_className = null;\n\n\tprivate $m_property = null;\n\n    public function __construct($p_className, $p_property)\n    {\n        parent::__construct(\"$p_property property is not available for the $p_className class\", 0);\n        $this->m_className = $p_className;\n        $this->m_property = $p_property;\n    } // fn __construct\n\n\n    public function getClassName()\n    {\n    \treturn $this->m_className;\n    }\n\n\n    public function getProperty()\n    {\n    \treturn $this->m_property;\n    }\n\n} // class InvalidPropertyException\n\n?>"
  },
  {
    "path": "newscoop/classes/Extension/Extension.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/../DatabaseObject.php';\n\n/**\n * Extension\n */\nclass Extension_Extension extends DatabaseObject\n{\n    const TABLE = 'Widget';\n\n    /** @var string */\n    public $m_dbTableName = self::TABLE;\n\n    /** @var array */\n    public $m_keyColumnNames = array('path', 'class');\n\n    /** @var array */\n    public $m_columnNames = array(\n        'id',\n        'path',\n        'class',\n    );\n\n    /** @var string */\n    private $interface = '';\n\n    /**\n     * @param string $interface\n     * @param string $class\n     * @param Extension_File $file\n     */\n    public function __construct($class, $path, $interface = '')\n    {\n        $this->interface = $interface;\n        $this->m_data = array(\n            'id' => NULL,\n            'class' => (string) $class,\n            'path' => (string) $path,\n        );\n    }\n\n    /**\n     * Get class name\n     * @return string\n     */\n    public function getClass()\n    {\n        return (string) $this->m_data['class'];\n    }\n\n    /**\n     * Get path\n     * @return string\n     */\n    public function getPath()\n    {\n        $cur_path = $this->m_data['path'];\n\n        if (0 === strpos($cur_path, WWW_DIR)) {\n            return $cur_path;\n        }\n\n        foreach (WidgetManager::ExtPath() as $path) {\n            if (file_exists($file = WWW_DIR . $path . $this->m_data['path'])) {\n                return $file;\n            }\n        }\n    }\n\n    /**\n     * Get id\n     * @return int\n     */\n    public function getId()\n    {\n        if ($this->m_data['id'] === NULL) {\n            $this->fetch();\n            if (empty($this->m_data['id'])) {\n                $this->create();\n                $this->fetch();\n            }\n        }\n        return (int) $this->m_data['id'];\n    }\n\n    /**\n     * Get instance\n     * @return IWidget|NULL\n     */\n    public function getInstance()\n    {\n        $file = $this->getPath();\n        if (!file_exists($file)) {\n            return NULL;\n        }\n\n        require_once $file;\n        $class = $this->getClass();\n        return new $class;\n    }\n\n    /**\n     * Has class interface?\n     * @param string $interface\n     * @return bool\n     */\n    public function hasInterface($interface)\n    {\n        return $interface === $this->interface;\n    }\n\n    /**\n     * Get Extension by id\n     * @param int $id\n     * @return Extension_Extension\n     */\n    public static function GetById($id)\n    {\n        global $g_ado_db;\n\n        $queryStr = 'SELECT *\n            FROM ' . self::TABLE . '\n            WHERE id = ' . ((int) $id);\n        $row = $g_ado_db->GetRow($queryStr);\n        return new self($row['class'], $row['path']);\n    }\n}\n"
  },
  {
    "path": "newscoop/classes/Extension/FeedWidget.php",
    "content": "<?php\n/**\n * @package Newscoop\n *\n * @copyright 2010, 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Base feed widget\n */\nabstract class FeedWidget extends Widget\n{\n    /**\n     * @var string\n     * @setting\n     * @label Title\n     */\n    protected $title = 'Feed reader';\n\n    /**\n     * @var string\n     * @setting\n     */\n    protected $url = '';\n\n    /**\n     * @var int\n     * @setting\n     */\n    protected $count = 5;\n\n    /** @var int */\n    protected $ttl = 900; // 15m\n\n    /**\n     * Render feeds\n     * @return void\n     */\n    public function render()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $even = false;\n        $count = $this->getCount();\n\n        try {\n            $url = $this->getUrl();\n            $items = $this->getItems($url);\n        } catch (Exception $e) {\n            echo '<p>', $translator->trans(\"Cant fetch news from $1\", array('$1' => $url), 'api'), '</p>';\n            return;\n        }\n\n        ob_start();\n        foreach ($this->getItems($this->getUrl()) as $item) {\n            if ($count <= 0) {\n                break;\n            } else {\n                $count--;\n            }\n\n            echo $even ? '<li class=\"even\">' : '<li>';\n            $even = !$even;\n\n            // add link\n            printf('<a href=\"%s\" title=\"%s\" target=\"_blank\">%s</a>',\n                $item->getLink(),\n                $item->getTitle(),\n                $item->getTitle());\n\n            if ($this->isFullscreen()) {\n                echo '<p>', $item->getDescription(), '</p>';\n            }\n\n            echo '</li>', \"\\n\";\n        }\n        $content = ob_get_clean();\n\n        if (empty($content)) {\n            echo '<p>', $translator->trans('No news available.', array(), 'api'), '</p>';\n            return;\n        }\n\n        echo '<ul class=\"rss\">', \"\\n\";\n        echo $content;\n        echo '</ul>', \"\\n\";\n    }\n\n    /**\n     * Get feed items from specified url\n     *\n     * @param string $p_url\n     * @return Iterator\n     */\n    private function getItems($p_url)\n    {\n        // get cache\n        $cache = Zend_Cache::factory('Core', 'File', array(\n            'lifetime' => 300,\n            'automatic_serialization' => true,\n        ), array(\n            'cache_dir' => APPLICATION_PATH . '/../cache',\n        ));\n\n        // set reader\n        Zend_Feed_Reader::setCache($cache);\n        Zend_Feed_Reader::useHttpConditionalGet();\n\n        // get feed\n        $feed = Zend_Feed_Reader::import($p_url);\n        return $feed;\n    }\n}\n"
  },
  {
    "path": "newscoop/classes/Extension/File.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/Extension.php';\n\n/**\n * Index item class\n */\nclass Extension_File\n{\n    /** @var string */\n    private $path;\n\n    /** @var string */\n    private $realpath;\n\n    /** @var string */\n    private $checksum = '';\n\n    /** @var array */\n    private $extensions = NULL;\n\n    /**\n     * @param string array $path\n     */\n    public function __construct($path)\n    {\n        $this->realpath = realpath($path);\n        if ($this->realpath === FALSE || !is_file($this->realpath)) {\n            throw new InvalidArgumentException(\"File '$this->path' not found.\");\n        }\n\n        foreach (WidgetManager::ExtPath() as $path) {\n            $filter = realpath(WWW_DIR . $path) . DIR_SEP;\n            $this->path = str_replace($filter, '', $this->realpath);\n        }\n    }\n\n    /**\n     * @return string\n     */\n    public function getChecksum()\n    {\n        if (empty($this->checksum)) {\n            $this->checksum = sha1_file($this->getPath());\n        }\n        return (string) $this->checksum;\n    }\n\n    /**\n     * Get extensions provided by file\n     * @param string $interface\n     * @return array of Extension_Extension\n     */\n    public function getExtensions()\n    {\n        if ($this->extensions === NULL) {\n            $this->extensions = $this->parse();\n        }\n        return $this->extensions;\n    }\n\n    /**\n     * @return string\n     */\n    public function getPath()\n    {\n        return (string) $this->path;\n    }\n\n    /**\n     * Find extensions implementing given interface within file\n     * @param string $interface\n     * @return array\n     */\n    public function find($interface)\n    {\n        $extensions = array();\n        foreach ($this->getExtensions() as $extension) {\n            if ($extension->hasInterface($interface)) {\n                $extensions[] = $extension;\n            }\n        }\n        return $extensions;\n    }\n    \n    /**\n     * Parse file for extensions\n     * @return array\n     */\n    private function parse()\n    {\n        $this->extensions = array();\n        $s = file_get_contents($this->realpath);\n        $tokens = token_get_all($s);\n        $tokens_size = sizeof($tokens);\n        for ($i = 0; $i < $tokens_size; $i++) {\n            if ($tokens[$i][0] != T_CLASS) {\n                continue;\n            }\n\n            require_once $this->realpath;\n            $class = $tokens[$i + 2][1];\n            $reflector = new ReflectionClass($class);\n            if (!$reflector->isInstantiable()) {\n                continue;\n            }\n\n            foreach ($reflector->getInterfaceNames() as $interface) {\n                $this->extensions[] = new Extension_Extension(\n                    $class, $this->path, $interface);\n            }\n        }\n\n        return $this->extensions;\n    }\n}\n"
  },
  {
    "path": "newscoop/classes/Extension/IWidget.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/IWidgetContext.php';\n \n/**\n * Widget interace\n */\ninterface IWidget\n{\n    /**\n     * Render widget\n     * @return void\n     */\n    public function render();\n}\n"
  },
  {
    "path": "newscoop/classes/Extension/IWidgetContext.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n \n/**\n * Widget context interface\n */\ninterface IWidgetContext\n{\n    /**\n     * @return string\n     */\n    public function getName();\n\n    /**\n     * Render context\n     * @return void\n     */\n    public function render();\n}\n"
  },
  {
    "path": "newscoop/classes/Extension/Index.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/File.php';\n\n/**\n * Extension Index\n */\nclass Extension_Index\n{\n    /** @var array */\n    private $dirs = array();\n\n    /**\n     * Add directory (or directories) to be indexed\n     * @param string|array $dirs\n     * @return Extension_Index\n     */\n    public function addDirectory($dirs)\n    {\n        foreach ((array) $dirs as $dir) {\n            $real = realpath($dir);\n            if ($real === FALSE) {\n                throw new InvalidArgumentException(\"Directory '$dir' not found.\");\n            } elseif (!in_array($dir, $this->dirs)) {\n                $this->dirs[] = $dir;\n            }\n        }\n        return $this;\n    }\n\n    /**\n     * Get directories\n     * @return array\n     */\n    public function getDirs()\n    {\n        return $this->dirs;\n    }\n\n    /**\n     * Scan directory for files\n     * @param string $pattern\n     * @return array\n     */\n    public function getFiles($pattern)\n    {\n        $files = array();\n        foreach ($this->dirs as $dir) {\n            foreach (glob(\"$dir/$pattern\") as $path) {\n                $files[] = $path;\n            }\n        }\n        return $files;\n    }\n\n    /**\n     * Find all implementatios of given interface\n     * @param string $interface\n     * @param string $pattern\n     * @return array\n     */\n    public function find($interface, $pattern = '*/*.php')\n    {\n        // index files\n        $extensions = array();\n        foreach ($this->getFiles($pattern) as $path) {\n            $file = new Extension_File($path);\n            $extensions = array_merge($extensions, $file->find($interface));\n        }\n        return $extensions;\n    }\n}\n"
  },
  {
    "path": "newscoop/classes/Extension/Widget.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/IWidget.php';\n \n/**\n * Widget interace\n */\nabstract class Widget implements IWidget\n{\n    const DEFAULT_VIEW = 'default';\n    const FULLSCREEN_VIEW = 'fullscreen';\n\n    /** @var CampCache */\n    private $cache = NULL;\n\n    /** @var string */\n    private $view = self::DEFAULT_VIEW;\n\n    /** @var array */\n    private $settings = NULL;\n\n    /** @var array */\n    private $annotations = NULL;\n\n    /** @var WidgetManagerDecorator */\n    private $manager = NULL;\n\n    /**\n     * Get cache object\n     * @return CampCache\n     */\n    public function getCache()\n    {\n        if ($this->cache === NULL) {\n            $this->cache = CampCache::singleton();\n        }\n        return $this->cache;\n    }\n\n    /**\n     * Set view\n     * @param string $view\n     * @return IWidget\n     */\n    final public function setView($view = self::DEFAULT_VIEW)\n    {\n        $this->view = (string) $view;\n        return $this;\n    }\n\n    /**\n     * Get view\n     * @return string\n     */\n    final public function getView()\n    {\n        return $this->view;\n    }\n\n    /**\n     * Get user\n     * @return User\n     */\n    final public function getUser()\n    {\n        global $g_user;\n        return $g_user;\n    }\n\n    /**\n     * Is view fullscreen?\n     * @return bool\n     */\n    final public function isFullscreen()\n    {\n        return $this->getView() == self::FULLSCREEN_VIEW;\n    }\n\n    /**\n     * Set widget settings\n     * @param array $settings\n     * @return IWidget\n     */\n    public function setSettings(array $settings = array())\n    {\n        $this->settings = $settings;\n    }\n\n    /**\n     * Get setting\n     * @param string $name\n     * return mixed\n     */\n    public function getSetting($name)\n    {\n        if ($this->settings === NULL) {\n            $this->settings = array();\n        }\n        return isset($this->settings[$name]) ? $this->settings[$name] : NULL;\n    }\n\n    /**\n     * Get annotation\n     * @param string $name\n     * return string\n     */\n    public function getAnnotation($name)\n    {\n        if ($this->annotations === NULL) {\n            $this->annotations = array();\n            $reflection = new ReflectionObject($this);\n            $doc = $reflection->getDocComment();\n            $matches = array();\n            if (preg_match_all('/@([a-zA-Z]+)([^*]+)\\*/', $doc, $matches)) {\n                for ($i = 0, $size = sizeof($matches[1]); $i < $size; $i++) {\n                    $this->annotations[$matches[1][$i]] = trim($matches[2][$i]);\n                }\n            }\n        }\n        return isset($this->annotations[$name]) ? $this->annotations[$name] : NULL;\n    }\n\n    /**\n     * Set widget manager\n     * @param WidgetManagerDecorator $manager\n     * @return IWidget\n     */\n    public function setManager(WidgetManagerDecorator $manager)\n    {\n        $this->manager = $manager;\n        return $this;\n    }\n\n    /**\n     * Get property value\n     * @param string $name\n     * @param array $arguments\n     * @return mixed\n     */\n    public function __call($name, $arguments) {\n        $matches = array();\n        if (!preg_match('/^get([A-Z][a-zA-Z0-9_-]+)$/', $name, $matches)) {\n            return NULL;\n        }\n\n        // extract name\n        $property = $matches[1];\n        $property[0] = strtolower($property[0]); // lowercase 1st\n\n        // get value from db\n        $value = $this->getSetting($property);\n\n        // get value from property\n        if (empty($value) && property_exists($this, $property)) {\n            $value = $this->$property;\n        }\n\n        // get value from annotation\n        if (empty($value)) {\n            $value = $this->getAnnotation($property);\n        }\n\n        // get value from ini file\n        if (empty($value)) {\n            $value = $this->manager->getMeta($property);\n        }\n\n        // return value\n        // TODO set type by property if exists\n        return $value;\n    }\n}\n"
  },
  {
    "path": "newscoop/classes/Extension/WidgetContext.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/IWidget.php';\nrequire_once dirname(__FILE__) . '/IWidgetContext.php';\nrequire_once dirname(__FILE__) . '/WidgetManager.php';\n\n/**\n * Widget Context\n */\nclass WidgetContext extends DatabaseObject implements IWidgetContext\n{\n    const TABLE = 'WidgetContext';\n\n    /** @var string */\n    public $m_dbTableName = self::TABLE;\n\n    /** @var string */\n    public $m_keyColumnNames = array('name');\n\n    /** @var array */\n    public $m_columnNames = array(\n        'id',\n        'name',\n    );\n\n    /** @var array of IWidget */\n    private $widgets = NULL;\n\n    /**\n     * @param string $name\n     */\n    public function __construct($name)\n    {\n        parent::__construct($this->m_columnNames);\n        $this->m_data['name'] = strtolower($name);\n        $this->fetch();\n        if (empty($this->m_data['id'])) { // store new context\n            $this->create(array(\n                'name' => $this->getName(),\n            ));\n            $this->fetch();\n        }\n    }\n\n    /**\n     * Get id\n     * @return int\n     */\n    public function getId()\n    {\n        return (int) $this->m_data['id'];\n    }\n\n    /**\n     * Get name\n     * @return string\n     */\n    public function getName()\n    {\n        return (string) $this->m_data['name'];\n    }\n\n    /**\n     * Set context widgets\n     * @param array $widgets\n     * @return bool\n     */\n    public function setWidgets(array $widgets = array())\n    {\n        foreach ($widgets as $order => $widgetId) {\n            $widget = new WidgetManagerDecorator($widgetId);\n            $widget->update(array(\n                'fk_widgetcontext_id' => $this->getId(),\n                'order' => $order,\n            ));\n        }\n        return TRUE;\n    }\n\n    /**\n     * Get context widgets\n     * @return array of IWidget\n     */\n    public function getWidgets()\n    {\n        if ($this->widgets === NULL) {\n            $this->widgets = WidgetManager::GetWidgetsByContext($this);\n        }\n        return $this->widgets;\n    }\n\n    /**\n     * Render context\n     * @return void\n     */\n    public function render()\n    {\n        $classes = array('context');\n\n        echo '<ul id=\"', $this->getName();\n        echo '\" class=\"', implode(' ', $classes), '\">', \"\\n\";\n        foreach ($this->getWidgets() as $widget) {\n            $widget->render();\n        }\n        echo '</ul>', \"\\n\";\n    }\n}\n"
  },
  {
    "path": "newscoop/classes/Extension/WidgetManager.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/IWidget.php';\nrequire_once dirname(__FILE__) . '/IWidgetContext.php';\nrequire_once dirname(__FILE__) . '/Widget.php';\nrequire_once dirname(__FILE__) . '/WidgetContext.php';\nrequire_once dirname(__FILE__) . '/WidgetRendererDecorator.php';\nrequire_once dirname(__FILE__) . '/Index.php';\nrequire_once dirname(__FILE__) . '/FeedWidget.php';\n\n/**\n * Widget Manager\n */\nclass WidgetManager\n{\n    const SETTING = 'WidgetsInstalled';\n\n    /** @var array */\n    private static $defaults = array(\n        'YourArticlesWidget',\n        'SourcefabricFeed',\n\n        'RecentlyModifiedArticlesWidget',\n        'SourcefabricNewsletter',\n\n        'SubmittedArticlesWidget',\n        'MapsGoogleGadget',\n\n        'RecentlyPublishedArticlesWidget',\n        'SearchWikipedia',\n\n        'MostPopularArticlesWidget',\n        'SourcefabricDevFeed',\n\n        'PendingArticlesWidget',\n    );\n\n    public static function ExtPath() {\n        $dirs = array();\n        $dirs[] = DIR_SEP . 'extensions' . DIR_SEP;\n        $pluginsManager = \\Zend_Registry::get('container')->getService('newscoop.plugins.manager');\n        $availablePlugins = $pluginsManager->getInstalledPlugins();\n        foreach ($availablePlugins as $plugin) {\n            $pluginPath = explode('\\\\', $plugin);\n            $directoryPath = __DIR__ . '/../../plugins/'.$pluginPath[0].'/'.$pluginPath[1].'/newscoopWidgets/';\n            if (file_exists($directoryPath)) {\n                $dirs[] = '/plugins/'.$pluginPath[0].'/'.$pluginPath[1].'/newscoopWidgets/';\n            }\n        }\n\n        return $dirs;\n    }\n\n    /**\n     * Get available widgets for user\n     * @param int|NULL $uid\n     * @return array of IWidget\n     */\n    public static function GetAvailable($uid = NULL)\n    {\n        global $g_user;\n\n        if ($uid === NULL) {\n            $uid = $g_user->getId();\n        }\n\n        // get all widget extensions\n        $index = new Extension_Index();\n        foreach (self::ExtPath() as $path) {\n            $index->addDirectory(WWW_DIR . $path);\n        }\n\n        $extensions = $index->find('IWidget');\n\n        // filter not-available (used)\n        $widgets = array();\n        foreach ($extensions as $extension) {\n            $widget = WidgetManagerDecorator::GetByExtension($extension);\n            if ($widget->isAvailable($uid)) {\n                $widgets[] = $widget;\n            }\n        }\n        return $widgets;\n    }\n\n    /**\n     * Get widgets by context.\n     * @param IWidgetContext $context\n     * @return array of IWidget\n     */\n    public static function GetWidgetsByContext(IWidgetContext $context)\n    {\n        global $g_user, $g_ado_db;\n\n        $queryStr = 'SELECT w.path, w.class, wcw.*\n            FROM ' . Extension_Extension::TABLE . ' w\n                INNER JOIN ' . WidgetManagerDecorator::TABLE . ' wcw\n                ON w.id = wcw.fk_widget_id\n            WHERE wcw.fk_user_id = ' . $g_user->getId() . '\n                AND wcw.fk_widgetcontext_id = ' . $context->getId() . '\n            ORDER BY `order`';\n        $rows = $g_ado_db->GetAll($queryStr);\n\n        $widgets = array();\n        if(is_array($rows)) {\n            foreach ($rows as $row) {\n                $widget = new WidgetRendererDecorator((array) $row);\n                if ($widget->getWidget() !== NULL) {\n                    $widgets[] = $widget;\n                }\n            }\n        }\n        return $widgets;\n    }\n\n    /**\n     * Add widget to user dashboard\n     * @param int $widgetId\n     * @param string|IWidgetContext $contextName\n     * @param int $uid\n     * @param int $order\n     * @return bool\n     */\n    public static function AddWidget($widgetId, $context, $uid = NULL, $order = NULL)\n    {\n        global $g_ado_db, $g_user;\n\n        // get context object\n        if (is_string($context)) {\n            $context = new WidgetContext($context);\n        }\n\n        // set uid\n        if (empty($uid)) {\n            $uid = $g_user->getId();\n        }\n\n        if ($order === NULL) {\n            // set order to be on top\n            $sql = 'SELECT MIN(`order`)\n                FROM ' . WidgetManagerDecorator::TABLE . '\n                WHERE fk_user_id = ' . (int) $uid . '\n                    AND fk_widgetcontext_id = ' . $context->getId();\n            $order = $g_ado_db->getOne($sql) - 1;\n        }\n\n        // generate uniq id\n        $id = 'w' . substr(sha1(uniqid() . $g_user->getId()), -12);\n\n        // add widget\n        $widget = new WidgetManagerDecorator(array(\n            'id' => $id,\n            'fk_widget_id' => (int) $widgetId,\n            'fk_widgetcontext_id' => $context->getId(),\n            'fk_user_id' => (int) $uid,\n            'order' => (int) $order,\n        ));\n        $widget->create();\n        return $id;\n    }\n\n    /**\n     * Set default widgets for g_user\n     * @param int $p_uid\n     * @return void\n     */\n    public static function SetDefaultWidgets($p_uid)\n    {\n        // contexts used on homepage\n        $contexts = array(\n            new WidgetContext('dashboard1'),\n            new WidgetContext('dashboard2'),\n        );\n\n        foreach (WidgetManager::GetAvailable($p_uid) as $widget) {\n            $extension = $widget->getExtension();\n            if (in_array($extension->getClass(), self::$defaults)) {\n                $order = (int) array_search($extension->getClass(), self::$defaults); // get order\n                $context = $contexts[$order % sizeof($contexts)]; // pick context\n                self::AddWidget($extension->getId(), $context, (int) $p_uid, $order);\n            }\n        }\n    }\n\n    /**\n     * Set default widgets for all existing users (called after install/upgrade)\n     * @return void\n     */\n    public static function SetDefaultWidgetsAll()\n    {   \n        $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n        // do only once\n        if ($preferencesService->get(self::SETTING) != NULL) {\n            return;\n        }\n\n        $preferencesService->set(self::SETTING, time());\n\n        // set widgets per user\n        $users = (array) $GLOBALS['controller']->getHelper('service')->getService('user')->findBy(array(\n            'is_admin' => 1,\n        ));\n\n        foreach ($users as $user) {\n            WidgetManager::SetDefaultWidgets($user->getUserId());\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/classes/Extension/WidgetManagerDecorator.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/../DatabaseObject.php';\nrequire_once dirname(__FILE__) . '/IWidget.php';\n\n/**\n * Widget manager decorator class\n */\nclass WidgetManagerDecorator extends DatabaseObject\n{\n    const TABLE = 'WidgetContext_Widget';\n\n    /** @var string */\n    public $m_dbTableName = self::TABLE;\n\n    /** @var array */\n    public $m_keyColumnNames = array('id', 'fk_user_id');\n\n    /** @var array */\n    public $m_columnNames = array(\n        'id',\n        'fk_widgetcontext_id',\n        'fk_widget_id',\n        'fk_user_id',\n        'order',\n        'settings',\n    );\n\n    /** @var IWidget */\n    protected $widget = NULL;\n\n    /** @var Extension_Extension */\n    private $extension = NULL;\n\n    /** @var array */\n    private $meta = NULL;\n\n    /** @var array */\n    private $settings = NULL;\n\n    /**\n     * @param IWidget $widget\n     * @param string|array $args\n     */\n    public function __construct($args = NULL)\n    {\n        global $g_user;\n\n        if (is_array($args)) {\n            $this->m_data = $args;\n            if (!empty($args['path']) && !empty($args['class'])) {\n                $this->extension = new Extension_Extension($args['class'], $args['path']);\n                $this->getWidget();\n            }\n        } else {\n            parent::__construct($this->m_columnNames);\n            $this->m_data['id'] = (string) $args;\n            $this->m_data['fk_user_id'] = $g_user->getId();\n        }\n    }\n\n    /**\n     * Get instance for extension\n     * @param Extension_Extension $extension\n     * @return IWidget\n     */\n    public static function GetByExtension(Extension_Extension $extension)\n    {\n        global $g_user;\n\n        // be able to render\n        $widget = new WidgetRendererDecorator(array(\n            'fk_user_id' => $g_user->getId(),\n            'fk_widget_id' => $extension->getId(),\n        ));\n\n        // set extension, widget\n        $widget->extension = $extension;\n        $widget->setWidget($extension->getInstance());\n        return $widget;\n    }\n\n    /**\n     * Get extension.\n     * @return Extension_Extension\n     */\n    public function getExtension()\n    {\n        return $this->extension;\n    }\n\n    /**\n     * Get widget id\n     * @return string\n     */\n    public function getId()\n    {\n        return (string) $this->m_data['id'];\n    }\n\n    /**\n     * Update data\n     * @param array $p_columns\n     * @return bool\n     */\n    public function update($p_columns = NULL, $p_commit = true, $p_isSql = false)\n    {\n        // encode settings\n        if (!empty($p_columns['settings'])) {\n            $p_columns['settings'] = json_encode($p_columns['settings']);\n        }\n\n        parent::update($p_columns);\n        return TRUE;\n    }\n\n    /**\n     * Get metadata\n     * @param string $key\n     * @return string\n     */\n    public function getMeta($key)\n    {\n        if ($this->meta === NULL) {\n            $this->meta = array();\n\n            // load ini\n            $dirname = dirname(realpath($this->extension->getPath()));\n            $inifile = $dirname . '/' . basename($dirname) . '.ini';\n            if (file_exists($inifile)) {\n                $this->meta = parse_ini_file($inifile);\n            }\n        }\n\n        return empty($this->meta[$key]) ? '' : (string) $this->meta[$key];\n    }\n\n    /**\n     * Get widget instance\n     */\n    public function getWidget()\n    {\n        if ($this->widget === NULL) {\n            if (!isset($this->extension)) {\n                if (empty($this->m_data['fk_widget_id'])) {\n                    $this->fetch();\n                }\n                $this->extension = Extension_Extension::GetById($this->m_data['fk_widget_id']);\n            }\n\n            $this->widget = $this->extension->getInstance();\n            if ($this->widget === NULL) {\n                return $this->widget;\n            }\n\n            $this->widget->setManager($this);\n            if (!empty($this->m_data['settings'])) {\n                $settings = json_decode($this->m_data['settings']);\n                $this->widget->setSettings((array) $settings);\n            }\n        }\n        return $this->widget;\n    }\n\n    /**\n     * Is available?\n     * @param int $uid\n     * @return bool\n     */\n    public function isAvailable($uid)\n    {\n        global $g_user, $g_ado_db;\n\n        if ($this->getWidget()->getAnnotation('multi') !== NULL) {\n            return TRUE;\n        }\n\n        // get used widgets per user\n        static $used = NULL;\n        if ($used === NULL) {\n            $queryStr = 'SELECT id, fk_widget_id\n                FROM ' . self::TABLE . '\n                WHERE fk_user_id = ' . ((int) $uid);\n            $rows = $g_ado_db->GetAll($queryStr);\n            if (!is_array($rows)) {\n                $rows = array();\n            }\n\n            $used = array();\n            foreach ($rows as $row) {\n                $used[$row['fk_widget_id']] = $row['id'];\n            }\n        }\n\n        // checkout if it's used\n        return empty($used[$this->getExtension()->getId()]);\n    }\n\n    /**\n     * Get widget setting\n     * @param string $p_setting\n     * @return mixed\n     */\n    public function getSetting($p_setting)\n    {\n        return $this->getWidget()->getSetting($p_setting);\n    }\n\n    /**\n     * Calls forwarded to widget\n     * @param string $name\n     * @param array $arguments\n     * @return mixed\n     */\n    public function __call($name, $arguments) {\n        $wdg = $this->getWidget();\n        if (!$wdg) {return null;}\n            return call_user_func_array(array($wdg, $name), $arguments);\n        }\n    }\n"
  },
  {
    "path": "newscoop/classes/Extension/WidgetRendererDecorator.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/Widget.php';\nrequire_once dirname(__FILE__) . '/WidgetManagerDecorator.php';\n\n/**\n * Widget renderer implementation\n */\nclass WidgetRendererDecorator extends WidgetManagerDecorator implements IWidget\n{\n    /**\n     * Render widget\n     * @param string $view\n     * @param bool $ajax\n     * @return void|string\n     */\n    public function render($view = Widget::DEFAULT_VIEW, $ajax = FALSE)\n    {\n        $this->getWidget(); // init\n\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        // set view if possible\n        if (method_exists($this->widget, 'setView')) {\n            $this->widget->setView($view);\n        }\n\n        if ($ajax) { // render content\n            // run beforeRender method\n            if (method_exists($this->widget, 'beforeRender')) {\n                $this->widget->beforeRender();\n            }\n\n            // get content\n            ob_start();\n            $this->widget->render();\n            $content = ob_get_clean();\n\n            return $content;\n        }\n\n        // get height from cookie\n        $height = 100;\n        $heights = isset($_COOKIE['widget_heights']) ? explode('&', $_COOKIE['widget_heights']) : array();\n        foreach ($heights as $param) {\n            if (empty($param)) {\n                break;\n            }\n\n            list($wid, $wheight) = explode('=', $param);\n            if ($this->getId() == $wid) {\n                $height = $wheight;\n                break;\n            }\n        }\n\n        // render widget placeholder\n        echo '<li id=\"', $this->getId(), '\" class=\"widget ui-dialog ui-widget-content ui-corner-all\">';\n        if ($this->widget->getTitle() !== NULL) {\n            echo '<div class=\"header ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix\">';\n            echo '<h3 class=\"ui-dialog-title\">', $this->widget->getTitle(), '</h3>';\n            echo '</div>';\n        }\n        echo '<div class=\"content\"><div class=\"scroll ui-dialog-content ui-widget-content\">', \"\\n\";\n        echo '<div class=\"loading\" style=\"height:', $height, 'px\"><p>', $translator->trans('Loading...', array(), 'api'), '</p></div>';\n        echo '</div></div>', \"\\n\";\n        echo '<div class=\"extra\">';\n        $this->renderMeta();\n        $this->renderSettings();\n        echo '</div>';\n        echo '</li>', \"\\n\";\n    }\n\n    /**\n     * Render widget metadata\n     * @return void\n     */\n    public function renderMeta()\n    {\n    \t/*\n    \t * $translator->trans('Author')\n    \t * $translator->trans('Version', array(), 'api')\n    \t * $translator->trans('Homepage', array(), 'api')\n    \t * $translator->trans('License', array(), 'api')\n    \t */\n        $meta = array(\n            'Author', 'Version', 'Homepage', 'License',\n        );\n\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        ob_start();\n        foreach ($meta as $key) {\n            $method = 'get' . $key;\n            $value = $this->getWidget()->$method();\n            if (empty($value)) {\n                continue;\n            }\n\n            echo '<dt>' . $translator->trans($key, array(), 'api') . ':</dt>' . \"\\n\";\n            echo '<dd>';\n            if (preg_match('#^http://#', $value)) { // generate link\n                $title = str_replace('http://', '', $value);\n                echo '<a href=\"', $value, '\" target=\"_blank\">';\n                echo $title, '</a>';\n            } else {\n                echo $value;\n            }\n            echo '</dd>', \"\\n\";\n        }\n        $content = ob_get_contents();\n        ob_end_clean();\n\n        if (!empty($content)) {\n            echo \"<dl class=\\\"meta\\\">\\n$content\\n</dl>\";\n        }\n    }\n\n    /**\n     * Render widget settings form\n     * @return void\n     */\n    public function renderSettings()\n    {   \n        ob_start();\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $reflection = new ReflectionObject($this->widget);\n        $filter = ReflectionProperty::IS_PUBLIC | ReflectionProperty::IS_PROTECTED;\n        foreach ($reflection->getProperties($filter) as $property) {\n            $doc = $property->getDocComment();\n            if (strpos($doc, '@setting') === FALSE) {\n                continue;\n            }\n\n            // get label\n            $matches = array();\n            if (preg_match('/@label ([^*]+)/', $doc, $matches)) {\n                $label = trim($matches[1]);\n            } else {\n                $label = $property->getName();\n            }\n\n            // generate id\n            $id = $reflection->getName() . '-' . $property->getName();\n            $id = strtolower($id);\n\n            // value getter\n            $method = 'get' . ucfirst($property->getName());\n\n            echo '<dl><dt>';\n            echo '<label for=\"', $id, '\">', rtrim($translator->trans($label, array(), 'extensions'), ' (*)'), '</label>';\n            echo '</dt><dd>';\n            printf('<input id=\"%s\" type=\"text\" name=\"%s\" value=\"%s\" maxlength=\"255\" />',\n                $id,\n                $property->getName(),\n                $this->widget->$method());\n            echo '</dd></dl>', \"\\n\";\n        }\n        $settings = ob_get_clean();\n\n        if (empty($settings)) {\n            return;\n        }\n\n        echo '<form class=\"settings\" action=\"\" method=\"\">';\n        echo '<fieldset>', $settings;\n        echo '<input type=\"submit\" value=\"', $translator->trans('Save'), '\" />';\n        echo '</fieldset>';\n        echo '</form>';\n    }\n}\n"
  },
  {
    "path": "newscoop/classes/FileTextSearch.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n\n/**\n * FileTextSearch provides flexible find and replace features\n * within files of a given path.\n *\n * Usage:\n * It is very easy to use, just look at the example below.\n * To only search for a pattern into the text file, do not\n * define any replacement key.\n *\n * Example:\n * $path = '/path/to/search';\n *\n * // create a class instance\n * $obj = new FileTextSearch();\n * // set the extensions to search files within\n * $obj = setExtensions(array('xml','xsl');\n * // add an extension whenever you need\n * $obj = addExtension('css');\n * // set the pattern to search for\n * $obj = setSearchKey('pattern');\n * // set the replace key if you want to replace matches with it\n * $obj = setReplacementKey('replace');\n * // finally run the search\n * $obj = findReplace($path);\n *\n * @package Campsite\n */\nclass FileTextSearch {\n    var $m_fileExtensions = array();\n    var $m_searchKey = '';\n    var $m_replacementKey = '';\n    var $m_caseSensitive = 0;\n    var $m_findAllExtensions = 1;\n    var $m_isReplaceEnabled = 0;\n    var $m_totalFound = 0;\n\n    /**\n     * Add a valid search extension.\n     * @param string $p_extension\n     */\n    public function addExtension($p_extension)\n    {\n        array_push($this->m_fileExtensions, $p_extension);\n        $this->m_findAllExtensions = 0;\n    } // fn addExtension\n\n\n    /**\n     * Sets extensions to search for.\n     * @param array $p_extensions\n     */\n    public function setExtensions($p_extensions = array())\n    {\n        $this->m_fileExtensions = $p_extensions;\n        if (count($this->m_fileExtensions) > 0) {\n            $this->m_findAllExtensions = 0;\n        }\n    } // fn setExtensions\n\n\n    /**\n     * Sets the pattern and case sensitivity.\n     * @param string $p_searchKey\n     * @param int $p_caseSensitive\n     */\n    public function setSearchKey($p_searchKey, $p_caseSensitive = 0)\n    {\n        $this->m_searchKey = $p_searchKey;\n        if ($p_caseSensitive == 1) {\n            $this->m_caseSensitive = 1;\n        }\n    } // fn setSearchKey\n\n\n    /**\n     * Sets the replacement to replace pattern with.\n     * @param string $p_replacementKey\n     */\n    public function setReplacementKey($p_replacementKey)\n    {\n        $this->m_replacementKey = $p_replacementKey;\n        $this->m_isReplaceEnabled = 1;\n    } // fn setReplacementKey\n\n\n    /**\n     * searchDirFiles() wrapper function.\n     * @param string $p_path\n     */\n    public function findReplace($p_path)\n    {\n        return $this->searchDirFiles($p_path);\n    } // fn findReplace\n\n\n    /**\n     * Runs recursively all into the path.\n     *\n     * @param string $p_path\n     *\n     * @return array\n     */\n    public function searchDirFiles($p_path)\n    {\n        $retval = array();\n        if (substr($p_path, -1) != \"/\") $p_path .= \"/\";\n        $d = @dir($p_path) or die(\"searchDirFiles: Failed opening directory $dir for reading\");\n        while (false !== ($entry = $d->read())) {\n            if ($entry[0] == '.') continue;\n            if (is_dir(\"$p_path$entry\")) {\n                if (is_readable(\"$p_path$entry/\")) {\n                    $retval = array_unique(array_merge($retval, $this->searchDirFiles(\"$p_path$entry/\")));\n                } else {\n                    if (!in_array(CAMP_ERROR_READ_DIR, $retval)) {\n                        $retval[] = CAMP_ERROR_READ_DIR;\n                    }\n                    break;\n                }\n            } elseif ($this->matchedExtension($entry)) {\n                if (is_readable(\"$p_path$entry\")) {\n                    if (filesize(\"$p_path$entry\")) {\n                        $r = $this->searchFileData(\"$p_path$entry\");\n                        if ($r != true) $retval[] = $r;\n                    }\n                } else {\n                    if (!in_array(CAMP_ERROR_READ_FILE, $retval)) {\n                        $retval[] = CAMP_ERROR_READ_FILE;\n                    }\n                    break;\n                }\n            }\n        }\n        $d->close();\n        return $retval;\n    } // fn searchDirFiles\n\n\n    /**\n     * Finds the extension for the given file.\n     * @param string $p_file\n     * @return mixed the extension on success or NULL on failure\n     */\n    public function findExtension($p_file)\n    {\n        return array_pop(explode('.', $p_file));\n    } // fn findExtension\n\n\n    /**\n     * Checks if a file extension is one the extensions\n     * we are going to search.\n     * @param string $p_file\n     * @return bool true on success or false on failure\n     */\n    public function matchedExtension($p_file)\n    {\n        if ($this->m_findAllExtensions) {\n            return true;\n        } elseif (count(array_keys($this->m_fileExtensions, $this->findExtension($p_file))) == 1) {\n            return true;\n        }\n        return false;\n    } // fn matchedExtension\n\n\n    /**\n     * Searches file data and replaces with given pattern.\n     * @param string $p_file\n     */\n    public function searchFileData($p_file)\n    {\n        if (!is_readable($p_file)) {\n            return CAMP_ERROR_READ_FILE;\n        }\n        $pattern = preg_quote($this->m_searchKey, '/');\n        if ($this->m_caseSensitive) {\n            $pattern = \"/$pattern/U\";\n        } else {\n            $pattern = \"/$pattern/Ui\";\n        }\n\n        $content = @file_get_contents($p_file);\n        $found = 0;\n        $found = preg_match_all($pattern, $content, $matches, PREG_PATTERN_ORDER);\n        $this->m_totalFound += $found;\n        if ($this->m_isReplaceEnabled && $this->m_replacementKey && $found) {\n            if (!is_writeable($p_file)) {\n                return CAMP_ERROR_WRITE_FILE;\n            }\n            $content = preg_replace($pattern, $this->m_replacementKey, $content);\n            $this->filePutContents($p_file, $content);\n        }\n        return true;\n    } // fn searchFileData\n\n\n    /**\n     * Puts data (after replacement) to given file.\n     * @param string $p_file\n     * @param mixed $p_data\n     * @return mixed\n     */\n    public function filePutContents($p_file, $p_data)\n    {\n        $handle = @fopen($p_file, 'w');\n        if ($handle === false) {\n            return false;\n        } else {\n            if (is_array($p_data)) $p_data = implode($p_data);\n            $bytes_written = fwrite($handle, $p_data);\n            fclose($handle);\n            return $bytes_written;\n        }\n    } // fn filePutContents\n\n} // class FileTextSearch\n?>"
  },
  {
    "path": "newscoop/classes/GeoLocation.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once dirname(__FILE__) . '/DatabaseObject.php';\nrequire_once dirname(__FILE__) . '/IGeoLocation.php';\nrequire_once dirname(__FILE__) . '/GeoMapLocationContent.php';\n\n/**\n * @package Campsite\n */\nclass Geo_Location extends DatabaseObject implements IGeoLocation\n{\n    const TABLE = 'Locations';\n\n    /**\n     * @var string\n     */\n    public $m_dbTableName = self::TABLE;\n\n    /**\n     * @var array\n     */\n    public $m_keyColumnNames = array('id');\n\n    /**\n     * @var array\n     */\n    public $m_columnNames = array(\n        'id',\n        'poi_location',\n        'poi_type',\n        'poi_type_style',\n        'poi_center',\n        'poi_radius',\n        'IdUser',\n        'time_updated',\n    );\n\n    /**\n     * @var bool\n     */\n    public $m_keyIsAutoIncrement = true;\n\n    /**\n     * @param mixed $arg\n     */\n    public function __construct($arg = NULL, $p_forceExists = false)\n    {\n        parent::__construct($this->m_columnNames);\n\n        if (is_numeric($arg)) {\n            $this->m_data['id'] = (int) $arg;\n            $this->fetch();\n        } else {\n            $this->fetch($arg, $p_forceExists);\n        }\n    }\n\n    /**\n     * Fetch a single record from the database for the given key.\n     *\n     * @param array $p_arg\n     *      If the record has already been fetched and we just need to\n     *      assign the data to the object's internal member variable.\n     *\n     * @return boolean\n     *      TRUE on success, FALSE on failure\n     */\n    public function fetch($arg = null, $p_forceExists = false)\n    {\n        global $g_ado_db;\n\n        if (is_array($arg)) {\n            return parent::fetch($arg, $p_forceExists);\n        }\n\n        if (!$this->keyValuesExist()) {\n            return false;\n        }\n        if ($this->readFromCache() !== false) {\n            return true;\n        }\n\n        $queryStr = 'SELECT *, X(poi_location) as latitude, Y(poi_location) as longitude\n                FROM ' . self::TABLE . '\n                WHERE id = ' . $this->getId();\n        $this->m_data = $g_ado_db->GetRow($queryStr);\n        $this->m_exists = count($this->m_data) > 0;\n\n        if ($this->m_exists) {\n            // Write the object to cache\n            $this->writeCache();\n        }\n\n        return $this->m_exists;\n    }\n\n    /**\n     * @return int\n     */\n    public function getId()\n    {\n        return (int) $this->m_data['id'];\n    }\n\n    /**\n     * Get latitude\n     * @return float\n     */\n    public function getLatitude()\n    {\n        return (float) $this->m_data['latitude'];\n    }\n\n    /**\n     * Get longitude\n     * @return float\n     */\n    public function getLongitude()\n    {\n        return (float) $this->m_data['longitude'];\n    }\n\n    /**\n     * @return\n     */\n    public function getPOILocation()\n    {\n        return $this->m_data['poi_location'];\n    }\n\n    /**\n     * @return string\n     */\n    public function getPOIType()\n    {\n        return (string) $this->m_data['poi_type'];\n    }\n\n    /**\n     * @return\n     */\n    public function getPOITypeStyle()\n    {\n        return (int) $this->m_data['poi_type_style'];\n    }\n\n    /**\n     * @return\n     */\n    public function getPOICenter()\n    {\n        return $this->m_data['poi_center'];\n    }\n\n    /**\n     * @return double\n     */\n    public function getPOIRadius()\n    {\n        return (double) $this->m_data['poi_radius'];\n    }\n\n    /**\n     * @return int\n     */\n    public function getUserId()\n    {\n        return (int) $this->m_data['IdUser'];\n    }\n\n    /**\n     * @return timestamp\n     */\n    public function getLastModified()\n    {\n        return $this->m_data['time_updated'];\n    }\n\n    /**\n     * Looks whether the location is llready at the database\n     * NOTE: the 'location' ('center') parameters should be array with points (a point) with lat/lon values\n     *\n     * @param array $p_location\n     * @param string $p_type\n     * @param int $p_style\n     * @param array $p_center\n     * @param int $p_radius\n     *\n     * @return int\n     */\n    public static function FindLocation($p_location, $p_type, $p_style, $p_center, $p_radius)\n    {\n        global $g_ado_db;\n\n        if ('point' != $p_type) {return null;}\n\n        $queryStr_point = 'SELECT id FROM ' . self::TABLE\n            . ' WHERE poi_location = GeomFromText(\\'POINT(%%poi_lat%% %%poi_lon%%)\\') AND poi_type = \"point\" ';\n        $queryStr_point .= \"AND poi_type_style = ? AND poi_center = PointFromText('POINT(%%cen_lat%% %%cen_lon%%)') AND poi_radius = ?\";\n\n        $loc_id = 0;\n\n        // here checking for points; nothing else yet\n        if ('point' == $p_type)\n        {\n            try\n            {\n                $loc_latitude = '' . $p_location[0]['latitude'];\n                $loc_longitude = '' . $p_location[0]['longitude'];\n                $cen_latitude = '' . $p_center['latitude'];\n                $cen_longitude = '' . $p_center['longitude'];\n\n                $correct_coords = true;\n                if (!is_numeric($loc_latitude)) {$correct_coords = false;}\n                if (!is_numeric($loc_longitude)) {$correct_coords = false;}\n                if (!is_numeric($cen_latitude)) {$correct_coords = false;}\n                if (!is_numeric($cen_longitude)) {$correct_coords = false;}\n                if (!$correct_coords) {return 0;}\n\n                $queryStr_point = str_replace('%%poi_lat%%', $loc_latitude, $queryStr_point);\n                $queryStr_point = str_replace('%%poi_lon%%', $loc_longitude, $queryStr_point);\n                $queryStr_point = str_replace('%%cen_lat%%', $cen_latitude, $queryStr_point);\n                $queryStr_point = str_replace('%%cen_lon%%', $cen_longitude, $queryStr_point);\n\n                $sql_params = array();\n\n                $sql_params[] = 0 + $p_style;\n                $sql_params[] = 0 + $p_radius;\n\n                $rows = $g_ado_db->GetAll($queryStr_point, $sql_params);\n                if (is_array($rows)) {\n                    foreach ($rows as $row) {\n                        $loc_id = $row['id'];\n                        if ($loc_id && (0 < $loc_id)) {break;}\n                    }\n                }\n            }\n            catch (Exception $exc)\n            {\n                return false;\n            }\n        }\n\n        return $loc_id;\n    } // fn FindLocation\n\n    /**\n     * Updates the location, the COW way\n     *\n     * @param int $p_mapId\n     * @param array $p_locations\n     *\n     * @return bool\n     */\n    public static function UpdateLocations($p_mapId, $p_locations)\n    {\n        global $g_ado_db;\n        global $g_user;\n\n/*\n    A)\n        1) given article_number, language_id, map_id, list of map_loc_id / new locations\n\n    B)\n        cycle:\n            1) read location_id (as old_loc_id) of the map_loc_id\n            2) insert new location with new positions\n            3) get the inserted id into new_loc_id\n            4) update maplocations into the new_loc_id for the map_loc_id\n            6) delete location of old_loc_id if none maplocation with a link into the old_loc_id\n\n*/\n\n        // ad B 1)\n        $queryStr_loc_id = 'SELECT fk_location_id AS loc FROM ' . Geo_MapLocation::TABLE . ' WHERE id = ?';\n        // ad B 2)\n        $queryStr_loc_in = 'INSERT INTO ' . self::TABLE . ' (poi_location, poi_type, poi_type_style, poi_center, poi_radius, IdUser) VALUES (';\n        $queryStr_loc_in .= \"GeomFromText('POINT(? ?)'), 'point', 0, PointFromText('POINT(? ?)'), 0, %%user_id%%\";\n        $queryStr_loc_in .= ')';\n        // ad B 4)\n        $queryStr_map_up = 'UPDATE ' . Geo_MapLocation::TABLE . ' SET fk_location_id = ? WHERE id = ?';\n        // ad B 6)\n        $queryStr_loc_rm = 'DELETE FROM ' . self::TABLE . ' WHERE id = ? AND NOT EXISTS (SELECT id FROM MapLocations WHERE fk_location_id = ?)';\n\n        // updating current POIs, inserting new POIs\n        foreach ($p_locations as $poi_obj)\n        {\n            $poi = get_object_vars($poi_obj);\n\n            // ad B 1)\n            $loc_old_id = null;\n            try\n            {\n                $maploc_sel_params = array();\n                $maploc_sel_params[] = $poi['id'];\n\n                $rows = $g_ado_db->GetAll($queryStr_loc_id, $maploc_sel_params);\n                if (is_array($rows)) {\n                    foreach ($rows as $row) {\n                        $loc_old_id = $row['loc'];\n                    }\n                }\n            }\n            catch (Exception $exc)\n            {\n                return false;\n            }\n\n            if (null === $loc_old_id) {continue;}\n\n            $loc_new_id = null;\n\n            $new_loc = array();\n            $new_loc[] = array('latitude' => $poi['latitude'], 'longitude' => $poi['longitude']);\n            $new_cen = array('latitude' => $poi['latitude'], 'longitude' => $poi['longitude']);\n            $new_style = 0;\n            $new_radius = 0;\n            $reuse_id = self::FindLocation($new_loc, 'point', $new_style, $new_cen, $new_radius);\n\n            if ($reuse_id && (0 < $reuse_id))\n            {\n                $loc_new_id = $reuse_id;\n            }\n            else\n            {\n                // ad B 2)\n                {\n                    $loc_in_params = array();\n                    $loc_in_params[] = $poi['latitude'];\n                    $loc_in_params[] = $poi['longitude'];\n                    $loc_in_params[] = $poi['latitude'];\n                    $loc_in_params[] = $poi['longitude'];\n\n                    $queryStr_loc_in = str_replace('%%user_id%%', $g_user->getUserId(), $queryStr_loc_in);\n\n                    $success = $g_ado_db->Execute($queryStr_loc_in, $loc_in_params);\n                }\n\n                // ad B 3)\n                // taking its ID for the next processing\n                $loc_new_id = $g_ado_db->Insert_ID();\n            }\n\n            // ad B 4)\n            {\n                $map_up_params = array();\n                $map_up_params[] = $loc_new_id;\n                $map_up_params[] = $poi['id'];\n\n                $success = $g_ado_db->Execute($queryStr_map_up, $map_up_params);\n            }\n\n            // ad B 6)\n            try\n            {\n                $loc_rm_params = array();\n                $loc_rm_params[] = $loc_old_id;\n                $loc_rm_params[] = $loc_old_id;\n\n                $success = $g_ado_db->Execute($queryStr_loc_rm, $loc_rm_params);\n            }\n            catch (Exception $exc)\n            {\n                return false;\n            }\n\n        }\n\n        return true;\n    } // fn UpdateLocations\n\n    /**\n     * Updates the point marker icon file name\n     *\n     * @param array $poi\n     *\n     * @return void\n     */\n    public static function UpdateIcon($poi)\n    {\n        global $g_ado_db;\n\n        $queryStr = 'UPDATE ' . Geo_MapLocation::TABLE . ' SET poi_style = ? WHERE id = ?';\n\n        $sql_params = array();\n        $sql_params[] = $poi['style'];\n        $sql_params[] = $poi['location_id'];\n\n        $success = $g_ado_db->Execute($queryStr, $sql_params);\n    } // fn UpdateIcon\n\n    /**\n     * Updates the point text content, the COW way\n     *\n     * @param int $p_mapId\n     * @param array $p_contents\n     *\n     * @return bool\n     */\n    public static function UpdateContents($p_mapId, $p_contents)\n    {\n        global $g_ado_db;\n\n        foreach ($p_contents as $poi_obj)\n        {\n            $poi = get_object_vars($poi_obj);\n\n            if ($poi['icon_changed'])\n            {\n                self::UpdateIcon($poi);\n            }\n            if ($poi['state_changed'])\n            {\n                Geo_MapLocationContent::UpdateState($poi);\n            }\n            if ($poi['image_changed'])\n            {\n                Geo_Multimedia::UpdateMedia($poi, 'image');\n            }\n            if ($poi['video_changed'])\n            {\n                Geo_Multimedia::UpdateMedia($poi, 'video');\n            }\n\n            if ($poi['text_changed'])\n            {\n                Geo_MapLocationContent::UpdateText($poi);\n            }\n\n        }\n\n        return true;\n    } // fn UpdateContents\n\n    /**\n     * Updates the point ordering at the map\n     * NB: p_indices are used for the newly inserted points from the ajax request\n     *\n     * @param int $p_mapId\n     * @param array $p_reorder\n     * @param array $p_indices\n     *\n     * @return bool\n     */\n    public static function UpdateOrder($p_mapId, $p_reorder, $p_indices)\n    {\n        global $g_ado_db;\n\n/*\n    A)\n        1) given article_number, language_id, map_id, list of content_ids with new contents\n\n    B)\n        cycle:\n            point order is shared between langages\n                1 a) read location_id of the content_id, if an old point\n                1 b) or get location_id from the new indices for new points\n                2) update rank on map_id/location_id\n\n*/\n\n        // ad B 2)\n        $queryStr_rnk_up = 'UPDATE ' . Geo_MapLocation::TABLE . ' SET rank = ? WHERE id = ?';\n\n        $rank = 0;\n        foreach ($p_reorder as $poi_obj)\n        {\n            $rank += 1;\n            $db_id = 0;\n\n            $poi = get_object_vars($poi_obj);\n\n            try\n            {\n                $state = $poi['state'];\n                if ('new' == $state)\n                {\n                    // ad B 1 b)\n                    $tmp_key = $poi['index'];\n                    $db_id = $p_indices[$tmp_key]['maploc'];\n                }\n                else\n                {\n                    //ad B 1 a)\n                    $db_id = 0 + $poi['location'];\n\n                }\n\n                // ad B 2)\n                {\n                    $rnk_up_params = array();\n                    $rnk_up_params[] = $rank;\n\n                    $rnk_up_params[] = $db_id;\n\n\n                    $success = $g_ado_db->Execute($queryStr_rnk_up, $rnk_up_params);\n                }\n            }\n            catch (Exception $exc)\n            {\n                return false;\n            }\n\n        }\n\n        return true;\n    } // fn UpdateOrder\n} // class Geo_Location\n\n"
  },
  {
    "path": "newscoop/classes/GeoMap.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\nrequire_once dirname(__FILE__) . '/DatabaseObject.php';\nrequire_once dirname(__FILE__) . '/Article.php';\nrequire_once dirname(__FILE__) . '/GeoLocation.php';\nrequire_once dirname(__FILE__) . '/GeoMapLocation.php';\nrequire_once dirname(__FILE__) . '/GeoMapLocationContent.php';\nrequire_once dirname(__FILE__) . '/GeoMultimedia.php';\nrequire_once dirname(__FILE__) . '/GeoPreferences.php';\nrequire_once dirname(__FILE__) . '/IGeoMap.php';\n\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/classes/ComparisonOperation.php');\n\n/**\n * @package Campsite\n */\nclass Geo_Map extends DatabaseObject implements IGeoMap\n{\n    const TABLE = 'Maps';\n\n    /**\n     * @var string\n     */\n    public $m_dbTableName = self::TABLE;\n\n    /**\n     * @var array\n     */\n    public $m_keyColumnNames = array('id');\n\n    /**\n     * @var array\n     */\n    public $m_columnNames = array(\n        'id', // int - Map ID\n        'fk_article_number', // int - link to the respective article\n        'MapRank', // int - rank of the map in the article\n        'MapUsage', // int - map enabled\n        'MapCenterLongitude', // real - initial map center\n        'MapCenterLatitude',\n        'MapDisplayResolution', // int - initial map resolution\n        'MapProvider', // string - the map to be used for readers\n        'MapWidth', // int - the map div size\n        'MapHeight',\n        'MapName', // string - the map name\n        'IdUser', // int - management related things\n        'time_updated' // timestamp\n    );\n\n    /**\n     * Constructor\n     *\n     * @param int $p_id\n     * @return Map\n     */\n    public function __construct($p_id = null)\n    {\n        if (is_numeric($p_id)) {\n            $this->m_data['id'] = $p_id;\n            $this->fetch();\n        }\n    }\n\n    /**\n     * @return int\n     */\n    public function getId()\n    {\n        return (int) $this->m_data['id'];\n    }\n\n    /**\n     * TODO: obsolete, use $this->getId() instead.\n     */\n    public function GetMapId()\n    {\n        return (int) $this->m_data['id'];\n    }\n\n    /**\n     * @return int\n     */\n    public function getArticleNumber()\n    {\n        return (int) $this->m_data['fk_article_number'];\n    }\n\n    /**\n     * @return double\n     */\n    public function getInitialCenterLongitude()\n    {\n        return (double) $this->m_data['MapCenterLongitude'];\n    }\n\n    /**\n     * @return double\n     */\n    public function getInitialCenterLatitude()\n    {\n        return (double) $this->m_data['MapCenterLatitude'];\n    }\n\n    /**\n     * @return int\n     */\n    public function getDisplayResolution()\n    {\n        return (int) $this->m_data['MapDisplayResolution'];\n    }\n\n    /**\n     * @return string\n     */\n    public function getMapProvider()\n    {\n        return (string) $this->m_data['MapProvider'];\n    }\n\n    /**\n     * @return array\n     */\n    public function getDimensions()\n    {\n        return array('width' => (int) $this->m_data['MapWidth'],\n            'height' => (int) $this->m_data['MapHeight']);\n    }\n\n    /**\n     * @return string\n     */\n    public function getName()\n    {\n        return (string) $this->m_data['MapName'];\n    }\n\n    /**\n     * @return User|NULL\n     */\n    public function getUser()\n    {\n        $userObj = new User($this->m_data['IdUser']);\n        return ($userObj->exists()) ? $userObj : NULL;\n    }\n\n    /**\n     * @return timestamp\n     */\n    public function getLastModified()\n    {\n        return $this->m_data['time_updated'];\n    }\n\n    /**\n     * @return boolean\n     */\n    public function isEnabled()\n    {\n        return (bool) ((int) $this->m_data['MapUsage']);\n    }\n\n    /**\n     * @return array of IGeoMapLocation\n     */\n    public function getLocations()\n    {\n        $locations = Geo_MapLocation::GetByMap($this);\n        return (array) $locations;\n    }\n\n    /**\n     * @param int $p_articleNumber\n     * @return Geo_Map\n     */\n    public static function GetMapByArticle($p_articleNumber)\n    {\n        global $g_ado_db;\n\n        $queryStr = 'SELECT id\n            FROM ' . self::TABLE . '\n            WHERE fk_article_number = ' . (int) $p_articleNumber . '\n            AND MapUsage = 1\n            ORDER BY MapRank, id';\n        $mapId = $g_ado_db->GetOne($queryStr);\n        $map = new self((int) $mapId);\n        return $map;\n    }\n\n\n    /**\n     * Gives map id of the article\n     *\n     * @param Article\n     * @return int\n     */\n    public static function GetArticleMapId($p_articleObj)\n    {\n        global $g_ado_db;\n\n        $article_number = $p_articleObj->getArticleNumber();\n        $map_id = self::GetMapIdByArticle($article_number);\n        return $map_id;\n    } // fn GetArticleMapId\n\n    /**\n     * @param int $p_articleNumber\n     * @return int $map_id\n     */\n    public static function GetMapIdByArticle($p_articleNumber)\n    {\n        global $g_ado_db;\n\n        $queryStr = 'SELECT id\n            FROM ' . self::TABLE . '\n            WHERE fk_article_number = ? AND MapUsage = 1\n            ORDER BY MapRank, id\n            LIMIT 1';\n        $map_id = null;\n        try {\n            $sql_params = array();\n            $sql_params[] = (int) $p_articleNumber;\n            $rows = $g_ado_db->GetAll($queryStr, $sql_params);\n            if (is_array($rows)) {\n                foreach ($rows as $row) {\n                    $map_id = (int) $row['id'];\n                }\n            }\n        } catch (Exception $exc) {\n            return null;\n        }\n        return $map_id;\n    } // fn GetMapIdByArticle\n\n    /**\n     * Gives array of article's maps, with usage flags.\n     *\n     * @param object Article\n     * @return array\n     */\n    public static function GetMapIdsByArticle($p_articleObj)\n    {\n        global $g_ado_db;\n\n        $article_number = $p_articleObj->getArticleNumber();\n        $queryStr = 'SELECT id, MapUsage AS usage\n            FROM ' . self::TABLE . '\n            WHERE fk_article_number = ?\n            ORDER BY MapRank, id';\n        $map_ids = array();\n        try {\n            $sql_params = array();\n            $sql_params[] = $article_number;\n            $rows = $g_ado_db->GetAll($queryStr, $sql_params);\n            if (is_array($rows)) {\n                foreach ($rows as $row) {\n                    $map_ids[] = array('id' => (int) $row['id'],\n                                       'usage' => (int) $row['usage']);\n                }\n            }\n        } catch (Exception $exc) {\n            return array();\n        }\n\n        return $map_ids;\n    } // fn GetMapIdsByArticle\n\n    /**\n     * Gives array of artilce's map's points: just point names (of the article object language) and usage flags.\n     *\n     * @param object Article\n     * @return array\n     */\n    public static function GetLocationsByArticle($p_articleObj)\n    {\n        global $g_ado_db;\n\n        $queryStr = 'SELECT lc.poi_name AS name, mll.poi_display AS display ';\n        $queryStr .= 'FROM Maps AS m INNER JOIN MapLocations AS ml ON ml.fk_map_id = m.id ';\n        $queryStr .= 'INNER JOIN MapLocationLanguages AS mll ON mll.fk_maplocation_id = ml.id ';\n        $queryStr .= 'INNER JOIN LocationContents AS lc ON lc.id = mll.fk_content_id ';\n        $queryStr .= 'WHERE m.fk_article_number = ? AND mll.fk_language_id = ? ORDER BY ml.rank, ml.id';\n\n        $article_number = $p_articleObj->getArticleNumber();\n        $language_id = $p_articleObj->getLanguageId();\n\n        $poi_names = array();\n\n        try\n        {\n            $sql_params = array();\n\n            $sql_params[] = $article_number;\n            $sql_params[] = $language_id;\n\n            $rows = $g_ado_db->GetAll($queryStr, $sql_params);\n            if (is_array($rows)) {\n                foreach ($rows as $row) {\n                    $poi_names[] = array('name' => $row['name'], 'display' => $row['display']);\n                }\n            }\n        }\n        catch (Exception $exc)\n        {\n            return array();\n        }\n\n        return $poi_names;\n    } // fn GetLocationsByArticle\n\n    /**\n     * Sets the article's map to be without an article link, to stay as a lone map.\n     *\n     * @param object Article\n     * @param int\n     * @return array\n     */\n    public static function UnlinkArticle($p_articleObj = null, $p_articleNumber = 0)\n    {\n        global $g_ado_db;\n\n        Geo_MapLocation::CleanFound();\n\n        $article_number = 0;\n\n        if ($p_articleObj)\n        {\n            $article_number = $p_articleObj->getArticleNumber();\n        }\n        else\n        {\n            $article_number = $p_articleNumber;\n        }\n        if ((!$article_number) || (0 == $article_number)) {return;}\n\n        $queryStr = 'UPDATE Maps SET fk_article_number = 0 WHERE fk_article_number = ?';\n\n        try\n        {\n            $sel_params = array();\n            $sel_params[] = $article_number;\n\n            $g_ado_db->Execute($queryStr, $sel_params);\n        }\n        catch (Exception $exc)\n        {\n            return false;\n        }\n\n        return true;\n    } // fn UnlinkArticle\n\n    /**\n     * This is called when the (last language of the) article is deleted\n     * Remove map pointers to the given article.\n     * After article removal (with all its languages), the map is preserved with just the last language.\n     *\n     * @param int $p_articleNumber\n     *\n     * @return void\n     */\n    public static function OnArticleDelete($p_articleNumber)\n    {\n        Geo_MapLocation::CleanFound();\n\n        return Geo_Map::UnlinkArticle(null, $p_articleNumber);\n    } // fn OnArticleDelete\n\n\n    /**\n     * This is called when a (non-last) language is deleted.\n     * It will remove the links on location contents, and the possible free contents.\n     * Finally left maps are just with the last language (that is not processed herein).\n     *\n     * @param int $p_articleNumber\n     * @param int $p_languageId\n     * @return void\n     */\n    public static function OnLanguageDelete($p_articleNumber, $p_languageId)\n    {\n        global $g_ado_db;\n\n        Geo_MapLocation::CleanFound();\n\n        $queryStr_sel = 'SELECT mll.id AS mll_id, mll.fk_content_id AS con_id FROM MapLocationLanguages AS mll ';\n        $queryStr_sel .= 'INNER JOIN MapLocations AS ml ON mll.fk_maplocation_id = ml.id ';\n        $queryStr_sel .= 'INNER JOIN Maps AS m ON m.id = ml.fk_map_id ';\n        $queryStr_sel .= 'WHERE m.fk_article_number = ? AND mll.fk_language_id = ?';\n\n        $list_fill = '%%id_list%%';\n        $queryStr_mll_del = 'DELETE FROM MapLocationLanguages WHERE id IN (%%id_list%%)';\n\n        $queryStr_con_del = 'DELETE FROM LocationContents WHERE id = ? AND NOT EXISTS (SELECT id FROM MapLocationLanguages WHERE fk_content_id = ?)';\n\n        $mll_ids = array();\n        $con_ids = array();\n\n        try\n        {\n            $sel_params = array();\n            $sel_params[] = $p_articleNumber;\n            $sel_params[] = $p_languageId;\n\n            $rows = $g_ado_db->GetAll($queryStr_sel, $sel_params);\n            if (is_array($rows)) {\n                foreach ($rows as $row) {\n                    $mll_ids[] = $row['mll_id'];\n                    $con_ids[] = $row['con_id'];\n                }\n            }\n        }\n        catch (Exception $exc)\n        {\n            return false;\n        }\n\n        if (0 == count($mll_ids)) {return true;}\n\n        $mll_string = implode(', ', $mll_ids);\n\n        try\n        {\n            $queryStr_mll_del = str_replace($list_fill, $mll_string, $queryStr_mll_del);\n\n            $g_ado_db->Execute($queryStr_mll_del);\n        }\n        catch (Exception $exc)\n        {\n            return false;\n        }\n\n        foreach ($con_ids as $con_id)\n        {\n            $del_params = array();\n            $del_params[] = $con_id;\n            $del_params[] = $con_id;\n\n            try\n            {\n                $g_ado_db->Execute($queryStr_con_del, $del_params);\n            }\n            catch (Exception $exc)\n            {\n                return false;\n            }\n        }\n\n        return true;\n    } // fn OnLanguageDelete\n\n\n    /**\n     * Deletes the map with all its points, translations, and other associated data.\n     * This does real removals, unlike the OnArticleDelete/UnlinkArticle methods.\n     *\n     * @return void\n     */\n    public function delete()\n    {\n        global $g_ado_db;\n\n        Geo_MapLocation::CleanFound();\n\n        $queryStr_sel = 'SELECT id FROM MapLocations WHERE fk_map_id = ?';\n\n        $queryStr_del = 'DELETE FROM Maps WHERE id = ?';\n\n        $ml_ids = array();\n        try\n        {\n            $sel_params = array();\n            $sel_params[] = $this->m_data['id'];\n\n            $rows = $g_ado_db->GetAll($queryStr_sel, $sel_params);\n            if (is_array($rows)) {\n                foreach ($rows as $row) {\n                    $ml_ids[] = array('location_id' => $row['id']);\n                }\n            }\n        }\n        catch (Exception $exc)\n        {\n            return false;\n        }\n\n        Geo_Map::RemovePoints($this->m_data['id'], $ml_ids);\n\n        try\n        {\n            $del_params = array();\n            $del_params[] = $this->m_data['id'];\n\n            $g_ado_db->Execute($queryStr_del, $del_params);\n        }\n        catch (Exception $exc)\n        {\n            return false;\n        }\n\n        return true;\n    } // fn delete\n\n\n    /**\n     * Copy all the map-related pointers for the given article.\n     *  - read and copy all links / basic data on:\n     *    - maps (Map table) with links into the given src article, set link into dest art no.\n     *    - points (MapLocation table) with links into read map ids, set link into new map ids\n     *    - text contents (MapLocationLanguages table) with links into read maploc ids and into the given languages\n     *    - multimedia (MapLocationMultimedia table) with links into read maploc ids\n     *\n     * @param int $p_srcArticleNumber\n     * @param int $p_destArticleNumber\n     * @param array $p_copyTranslations\n     * @return void\n     */\n    public static function OnArticleCopy($p_srcArticleNumber, $p_destArticleNumber, $p_copyTranslations, $p_userId = null)\n    {\n        global $g_ado_db;\n\n        Geo_MapLocation::CleanFound();\n\n        $list_fill = '%%id_list%%';\n        $lang_fill = '%%id_langs%%';\n\n        $map_columns = array('fk_article_number', 'MapRank', 'MapUsage', 'MapCenterLongitude', 'MapCenterLatitude', 'MapDisplayResolution', 'MapProvider', 'MapWidth', 'MapHeight', 'MapName', 'IdUser');\n        $map_colstr = implode(', ', $map_columns);\n        $map_colqms = implode(', ', str_split(str_repeat('?', count($map_columns))));\n        $queryStr_map_sel = \"SELECT id, $map_colstr FROM Maps WHERE fk_article_number = ?\";\n        $queryStr_map_ins = \"INSERT INTO Maps ($map_colstr) VALUES ($map_colqms)\";\n\n        $maploc_columns = array('fk_map_id', 'fk_location_id', 'poi_style', 'rank');\n        $maploc_colstr = implode(', ', $maploc_columns);\n        $maploc_colqms = implode(', ', str_split(str_repeat('?', count($maploc_columns))));\n        $queryStr_maploc_sel = \"SELECT id, $maploc_colstr FROM MapLocations WHERE fk_map_id IN (%%id_list%%)\";\n        $queryStr_maploc_ins = \"INSERT INTO MapLocations ($maploc_colstr) VALUES ($maploc_colqms)\";\n\n        $maploclan_columns = array('fk_maplocation_id', 'fk_language_id', 'fk_content_id', 'poi_display');\n        $maploclan_colstr = implode(', ', $maploclan_columns);\n        $maploclan_colqms = implode(', ', str_split(str_repeat('?', count($maploclan_columns))));\n        $queryStr_maploclan_sel = \"SELECT $maploclan_colstr FROM MapLocationLanguages WHERE fk_maplocation_id IN (%%id_list%%) AND fk_language_id IN (%%id_langs%%)\";\n        $queryStr_maploclan_ins = \"INSERT INTO MapLocationLanguages ($maploclan_colstr) VALUES ($maploclan_colqms)\";\n\n        $maplocmed_columns = array('fk_maplocation_id', 'fk_multimedia_id');\n        $maplocmed_colstr = implode(', ', $maplocmed_columns);\n        $maplocmed_colqms = implode(', ', str_split(str_repeat('?', count($maplocmed_columns))));\n        $queryStr_maplocmed_sel = \"SELECT $maplocmed_colstr FROM MapLocationMultimedia WHERE fk_maplocation_id IN (%%id_list%%)\";\n        $queryStr_maplocmed_ins = \"INSERT INTO MapLocationMultimedia ($maplocmed_colstr) VALUES ($maplocmed_colqms)\";\n\n        if (0 == count($p_copyTranslations)) {return;}\n        $lang_str = implode(', ', $p_copyTranslations);\n\n\n        $map_ids = array();\n\n        $map_sel_params = array();\n        $map_sel_params[] = $p_srcArticleNumber;\n        $rows = $g_ado_db->GetAll($queryStr_map_sel, $map_sel_params);\n        foreach ($rows as $row) {\n            $old_map_id = $row['id'];\n            $new_user_id = $p_userId;\n            if (is_null($new_user_id)) {$new_user_id = $row['IdUser'];}\n\n            $map_ins_params = array();\n            $map_ins_params[] = $p_destArticleNumber;\n            $map_ins_params[] = $row['MapRank'];\n            $map_ins_params[] = $row['MapUsage'];\n            $map_ins_params[] = $row['MapCenterLongitude'];\n            $map_ins_params[] = $row['MapCenterLatitude'];\n            $map_ins_params[] = $row['MapDisplayResolution'];\n            $map_ins_params[] = $row['MapProvider'];\n            $map_ins_params[] = $row['MapWidth'];\n            $map_ins_params[] = $row['MapHeight'];\n            $map_ins_params[] = $row['MapName'];\n            $map_ins_params[] = $new_user_id;\n\n            $success = $g_ado_db->Execute($queryStr_map_ins, $map_ins_params);\n            // taking the map ID\n            $new_map_id = $g_ado_db->Insert_ID();\n            $map_ids[$old_map_id] = $new_map_id;\n        }\n        if (0 == count($map_ids)) {return;}\n\n        $map_ids_str = implode(', ', array_keys($map_ids));\n\n\n        $queryStr_maploc_sel = str_replace($list_fill, $map_ids_str, $queryStr_maploc_sel);\n        $maploc_ids = array();\n\n        $maploc_sel_params = array();\n\n        $rows = $g_ado_db->GetAll($queryStr_maploc_sel, $maploc_sel_params);\n        foreach ($rows as $row) {\n            $old_maploc_id = $row['id'];\n            $old_map_id = $row['fk_map_id'];\n            $new_map_id = $map_ids[$old_map_id];\n\n            $maploc_ins_params = array();\n            $maploc_ins_params[] = $new_map_id;\n            $maploc_ins_params[] = $row['fk_location_id'];\n            $maploc_ins_params[] = $row['poi_style'];\n            $maploc_ins_params[] = $row['rank'];\n\n            $success = $g_ado_db->Execute($queryStr_maploc_ins, $maploc_ins_params);\n            // taking the map ID\n            $new_maploc_id = $g_ado_db->Insert_ID();\n            $maploc_ids[$old_maploc_id] = $new_maploc_id;\n        }\n        if (0 == count($maploc_ids)) {return;}\n\n        $maploc_ids_str = implode(', ', array_keys($maploc_ids));\n\n\n        $queryStr_maploclan_sel = str_replace($list_fill, $maploc_ids_str, $queryStr_maploclan_sel);\n        $queryStr_maploclan_sel = str_replace($lang_fill, $lang_str, $queryStr_maploclan_sel);\n        $maploclan_sel_params = array();\n\n        $rows = $g_ado_db->GetAll($queryStr_maploclan_sel, $maploclan_sel_params);\n        foreach ($rows as $row) {\n            $old_maploc_id = $row['fk_maplocation_id'];\n            $new_maploc_id = $maploc_ids[$old_maploc_id];\n\n            $maploclan_ins_params = array();\n            $maploclan_ins_params[] = $new_maploc_id;\n            $maploclan_ins_params[] = $row['fk_language_id'];\n            $maploclan_ins_params[] = $row['fk_content_id'];\n            $maploclan_ins_params[] = $row['poi_display'];\n\n            $success = $g_ado_db->Execute($queryStr_maploclan_ins, $maploclan_ins_params);\n        }\n\n\n        $queryStr_maplocmed_sel = str_replace($list_fill, $maploc_ids_str, $queryStr_maplocmed_sel);\n        $maplocmed_sel_params = array();\n\n        $rows = $g_ado_db->GetAll($queryStr_maplocmed_sel, $maplocmed_sel_params);\n        foreach ($rows as $row) {\n            $old_maploc_id = $row['fk_maplocation_id'];\n            $new_maploc_id = $maploc_ids[$old_maploc_id];\n\n            $maplocmed_ins_params = array();\n            $maplocmed_ins_params[] = $new_maploc_id;\n            $maplocmed_ins_params[] = $row['fk_multimedia_id'];\n\n            $success = $g_ado_db->Execute($queryStr_maplocmed_ins, $maplocmed_ins_params);\n        }\n\n\n    } // fn OnArticleCopy\n    /**\n\n     * Copy all the pointers for the given article.\n     * @param int $p_articleNumber\n     * @param int $p_srcLanguageId\n     * @param int $p_destLanguageId\n     * @return void\n     */\n    public static function OnCreateTranslation($p_articleNumber, $p_srcLanguageId, $p_destLanguageId)\n    {\n        global $g_ado_db;\n\n        Geo_MapLocation::CleanFound();\n\n        $queryStr_sel = 'SELECT mll.fk_maplocation_id AS ml_id, mll.fk_content_id AS con_id, mll.poi_display AS display ';\n        $queryStr_sel .= 'FROM Maps AS m INNER JOIN MapLocations AS ml ON ml.fk_map_id = m.id ';\n        $queryStr_sel .= 'INNER JOIN MapLocationLanguages AS mll ON mll.fk_maplocation_id = ml.id ';\n        $queryStr_sel .= 'WHERE m.fk_article_number = ? AND mll.fk_language_id = ?';\n\n        $queryStr_ins = 'INSERT INTO MapLocationLanguages (fk_maplocation_id, fk_language_id, fk_content_id, poi_display) ';\n        $queryStr_ins .= 'VALUES (?, ?, ?, ?)';\n\n        $poi_names = array();\n\n        try\n        {\n            $sel_params = array();\n            $sel_params[] = $p_articleNumber;\n            $sel_params[] = $p_srcLanguageId;\n\n            $rows = $g_ado_db->GetAll($queryStr_sel, $sel_params);\n            if (is_array($rows)) {\n                foreach ($rows as $row) {\n                    $ins_params = array();\n                    $ins_params[] = $row['ml_id'];\n                    $ins_params[] = (int) $p_destLanguageId;\n                    $ins_params[] = $row['con_id'];\n                    $ins_params[] = 0;\n\n                    $g_ado_db->Execute($queryStr_ins, $ins_params);\n                }\n            }\n        }\n        catch (Exception $exc)\n        {\n            return false;\n        }\n\n        return true;\n    } // fn OnCreateTranslation\n\n\n    // ajax processing handlers\n\n    /**\n     * Load map data\n     *\n     * @param int $p_mapId\n     * @param int $p_languageId\n     * @param int $p_articleNumber\n     *\n     * @return array\n     */\n    public static function LoadMapData($p_mapId, $p_languageId, $p_articleNumber, $p_preview = false, $p_textOnly = false)\n    {\n        $poi_count = 0;\n\n        $p_constraints = array();\n\n        $leftOperand = 'as_array';\n        $rightOperand = true;\n        $operator = new Operator('is', 'php');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $p_constraints[] = $constraint;\n\n        $leftOperand = 'active_only';\n        $rightOperand = $p_preview;\n        $operator = new Operator('is', 'php');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $p_constraints[] = $constraint;\n\n        $leftOperand = 'text_only';\n        $rightOperand = $p_textOnly;\n        $operator = new Operator('is', 'php');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $p_constraints[] = $constraint;\n\n        $leftOperand = 'language';\n        $rightOperand = $p_languageId;\n        $operator = new Operator('is', 'php');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $p_constraints[] = $constraint;\n\n        $leftOperand = 'map';\n        $rightOperand = $p_mapId;\n        $operator = new Operator('is', 'php');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $p_constraints[] = $constraint;\n\n        $pois = array();\n        $poi_objs = Geo_MapLocation::GetListExt($p_constraints, (array) null, 0, 0, $poi_count, false, $pois);\n        return array(\n            'pois' => $pois,\n            'map' => Geo_Map::ReadMapInfo('map', (int) $p_mapId),\n        );\n    } // fn LoadMapData\n\n    /**\n     * The main dispatcher for ajax based editing of maps\n     *\n     * @param int $p_mapId\n     * @param int $p_languageId\n     * @param int $p_articleNumber\n     * @param mixed $p_map\n     * @param mixed $p_remove\n     * @param mixed $p_insert\n     * @param mixed $p_locations\n     * @param mixed $p_contents\n     * @param mixed $p_order\n     *\n     * @return array\n     */\n    public static function StoreMapData($p_mapId, $p_languageId, $p_articleNumber, $p_map = '', $p_remove = '', $p_insert = '', $p_locations = '', $p_contents = '', $p_order = '')\n    {\n        Geo_MapLocation::CleanFound();\n\n        $security_problem = array('status' => '403', 'description' => 'Invalid security token!');\n        $unknown_request = array('status' => '404', 'description' => 'Unknown request!');\n        $data_wrong = array('status' => '404', 'description' => 'Wrong data.');\n\n\n        $status = true;\n\n        if ('' != $p_map)\n        {\n            $map_data = array();\n            try\n            {\n                $p_map = str_replace('%2B', '+', $p_map);\n                $p_map = str_replace('%2F', '/', $p_map);\n                $map_json = base64_decode($p_map);\n\n                $map_data = json_decode($map_json);\n            }\n            catch (Exception $exc)\n            {\n                $status = false;\n            }\n            if ($status)\n            {\n                $status = Geo_Map::UpdateMap($p_mapId, $p_articleNumber, $map_data);\n            }\n        }\n\n        if (!$status)\n        {\n            return $data_wrong;\n        }\n\n        if ('' != $p_remove)\n        {\n            $remove_data = array();\n            try\n            {\n                $p_remove = str_replace('%2B', '+', $p_remove);\n                $p_remove = str_replace('%2F', '/', $p_remove);\n                $remove_json = base64_decode($p_remove);\n                $remove_data = json_decode($remove_json);\n            }\n            catch (Exception $exc)\n            {\n                $status = false;\n            }\n            if ($status)\n            {\n                $status = Geo_Map::RemovePoints($p_mapId, $remove_data);\n            }\n        }\n\n        if (!$status)\n        {\n            return $data_wrong;\n        }\n\n        $new_ids = array();\n        if ('' != $p_insert)\n        {\n            $insert_data = array();\n            try\n            {\n                $p_insert = str_replace('%2B', '+', $p_insert);\n                $p_insert = str_replace('%2F', '/', $p_insert);\n                $insert_json = base64_decode($p_insert);\n\n                $insert_data = json_decode($insert_json);\n            }\n            catch (Exception $exc)\n            {\n                $status = false;\n            }\n            if ($status)\n            {\n                $status = Geo_Map::InsertPoints($p_mapId, $p_languageId, $p_articleNumber, $insert_data, $new_ids);\n\n            }\n        }\n\n\n        if (!$status)\n        {\n            return $data_wrong;\n        }\n\n\n        if ('' != $p_locations)\n        {\n            $locations_data = array();\n            try\n            {\n                $p_locations = str_replace('%2B', '+', $p_locations);\n                $p_locations = str_replace('%2F', '/', $p_locations);\n                $locations_json = base64_decode($p_locations);\n                $locations_data = json_decode($locations_json);\n            }\n            catch (Exception $exc)\n            {\n                $status = false;\n            }\n            if ($status)\n            {\n\n                $status = Geo_Location::UpdateLocations($p_mapId, $locations_data);\n            }\n        }\n\n        if (!$status)\n        {\n            return $data_wrong;\n        }\n\n\n        if ('' != $p_contents)\n        {\n            $contents_data = array();\n            try\n            {\n\n                $p_contents = str_replace('%2B', '+', $p_contents);\n                $p_contents = str_replace('%2F', '/', $p_contents);\n                $contents_json = base64_decode($p_contents);\n\n                $contents_data = json_decode($contents_json);\n            }\n            catch (Exception $exc)\n            {\n                $status = false;\n            }\n            if ($status)\n            {\n                $status = Geo_Location::UpdateContents($p_mapId, $contents_data);\n            }\n        }\n\n        if (!$status)\n        {\n            return $data_wrong;\n        }\n\n        if ('' != $p_order)\n        {\n            $order_data = array();\n            try\n            {\n                $p_order = str_replace('%2B', '+', $p_order);\n                $p_order = str_replace('%2F', '/', $p_order);\n                $order_json = base64_decode($p_order);\n                $order_data = json_decode($order_json);\n            }\n            catch (Exception $exc)\n            {\n                $status = false;\n            }\n            if ($status)\n            {\n                $status = Geo_Location::UpdateOrder($p_mapId, $order_data, $new_ids);\n            }\n        }\n\n        if (!$status)\n        {\n            return $data_wrong;\n        }\n\n        $geo_map_usage = Geo_Map::ReadMapInfo('map', $p_mapId);\n\n        $poi_count = 0;\n\n        $p_constraints = array();\n\n        $leftOperand = 'as_array';\n        $rightOperand = true;\n        $operator = new Operator('is', 'php');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $p_constraints[] = $constraint;\n\n        $leftOperand = 'preview';\n        $rightOperand = false;\n        $operator = new Operator('is', 'php');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $p_constraints[] = $constraint;\n\n        $leftOperand = 'text_only';\n        $rightOperand = false;\n        $operator = new Operator('is', 'php');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $p_constraints[] = $constraint;\n\n        $leftOperand = 'language';\n        $rightOperand = $p_languageId;\n        $operator = new Operator('is', 'php');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $p_constraints[] = $constraint;\n\n        $leftOperand = 'map';\n        $rightOperand = $p_mapId;\n        $operator = new Operator('is', 'php');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $p_constraints[] = $constraint;\n\n        $found_list = array();\n        $found_objs = Geo_MapLocation::GetListExt($p_constraints, (array) null, 0, 0, $poi_count, false, $found_list);\n\n        $res_array = array('status' => '200', 'pois' => $found_list, 'map' => $geo_map_usage);\n\n        return $res_array;\n    } // fn StoreMapData\n\n    // the functions for map editing are below\n\n    /**\n     * Provides general information on a map, specified by map id or article number\n     *\n     * @param string $p_type\n     * @param int $p_id\n     *\n     * @return array\n     */\n    public static function ReadMapInfo($p_type, $p_id)\n    {\n        global $g_ado_db;\n\n        $map_info = array();\n        $map_info['id'] = 0;\n\n        $queryStr_common = 'SELECT id, MapCenterLongitude AS lon, MapCenterLatitude AS lat, MapDisplayResolution AS res, MapProvider AS prov, MapWidth AS width, MapHeight AS height, MapName AS name ';\n        $queryStr_common .= 'FROM Maps ';\n\n        $queryStr_art = $queryStr_common;\n        $queryStr_art .= 'WHERE fk_article_number = ? AND MapUsage = 1 ORDER BY MapRank, id LIMIT 1';\n\n        $queryStr_map = $queryStr_common;\n        $queryStr_map .= 'WHERE id = ?';\n\n        $queryStr = '';\n        $sql_params = array();\n        $sql_params[] = $p_id;\n        if ('map' == $p_type)\n        {\n            $queryStr = $queryStr_map;\n        }\n        else\n        {\n            $queryStr = $queryStr_art;\n        }\n\n        try {\n            $rows = $g_ado_db->GetAll($queryStr, $sql_params);\n            if (is_array($rows)) {\n                foreach ($rows as $row) {\n                    $map_info = array();\n                    $map_info['id'] = $row['id'];\n                    $map_info['lon'] = $row['lon'];\n                    $map_info['lat'] = $row['lat'];\n                    $map_info['res'] = $row['res'];\n                    $map_info['prov'] = $row['prov'];\n                    $map_info['width'] = $row['width'];\n                    $map_info['height'] = $row['height'];\n                    $map_info['name'] = $row['name'];\n                }\n            }\n        }\n        catch (Exception $exc)\n        {\n            return false;\n        }\n\n        return $map_info;\n    } // fn ReadMapInfo\n\n\n    public static function ReadMultiMapInfo()\n    {\n        $geo_map_info = Geo_Preferences::GetMapInfo();\n        $map_data = $geo_map_info['json_obj'];\n\n        $map_info = array();\n        $map_info['id'] = 0;\n        $map_info['lon'] = $map_data['longitude'];\n        $map_info['lat'] = $map_data['latitude'];\n        $map_info['res'] = $map_data['resolution'];\n        $map_info['prov'] = $map_data['default'];\n        $map_info['width'] = $map_data['width'];\n        $map_info['height'] = $map_data['height'];\n        $map_info['name'] = 'Multimap';\n\n        return $map_info;\n    }\n\n    /**\n     * Gives languages used at the map text contents\n     *\n     * @param int $p_mapId\n     *\n     * @return array\n     */\n    public static function ReadLanguagesByMap($p_mapId)\n    {\n        global $g_ado_db;\n\n        $queryStr_langs = 'SELECT mll.fk_language_id AS lang FROM MapLocationLanguages AS mll ';\n        $queryStr_langs .= 'INNER JOIN MapLocations AS ml ON mll.fk_maplocation_id = ml.id ';\n        $queryStr_langs .= 'INNER JOIN Maps AS m ON ml.fk_map_id = m.id ';\n        $queryStr_langs .= 'WHERE m.id = ?';\n\n        $map_langs_arr = array();\n        {\n            $langs_params = array();\n            $langs_params[] = $p_mapId;\n\n            $rows = $g_ado_db->GetAll($queryStr_langs, $langs_params);\n            if (is_array($rows)) {\n                foreach ($rows as $row) {\n                    $map_langs_arr[] = $row['lang'];\n                }\n            }\n        }\n\n        return $map_langs_arr;\n    } // fn ReadLanguagesByMap\n\n    /**\n     * Gives languages used at the map's article\n     *\n     * @param int $p_articleNumber\n     *\n     * @return array\n     */\n    public static function ReadLanguagesByArticle($p_articleNumber)\n    {\n        global $g_ado_db;\n\n        $queryStr_langs = 'SELECT IdLanguage AS lang FROM Articles WHERE Number = ?';\n\n        $art_langs_arr = array();\n        {\n            $langs_params = array();\n            $langs_params[] = $p_articleNumber;\n\n            $rows = $g_ado_db->GetAll($queryStr_langs, $langs_params);\n            if (is_array($rows)) {\n                foreach ($rows as $row) {\n                    $art_langs_arr[] = $row['lang'];\n                }\n            }\n        }\n\n        return $art_langs_arr;\n    } // fn ReadLanguagesByArticle\n\n    /**\n     * Gives id of article's map id\n     *\n     * @param int $p_articleNumber\n     * @param int $p_rank\n     *\n     * @return int\n     */\n    public static function ReadMapId($p_articleNumber, $p_rank = 1)\n    {\n        global $g_ado_db;\n\n        // for testing whether the map was already created\n        $queryStr_map_id = 'SELECT id AS map FROM Maps WHERE fk_article_number = ? AND MapRank = ? ORDER BY id LIMIT 1';\n\n        $map_id = 0;\n\n        {\n            try\n            {\n                $map_id_params = array();\n                $map_id_params[] = $p_articleNumber;\n                $map_id_params[] = $p_rank;\n\n                $rows = $g_ado_db->GetAll($queryStr_map_id, $map_id_params);\n                if (is_array($rows)) {\n                    foreach ($rows as $row) {\n                        $map_id = $row['map'];\n                    }\n                }\n\n            }\n            catch (Exception $exc)\n            {\n                return false;\n            }\n\n        }\n\n        return $map_id;\n    } // fn ReadMapId\n\n    /**\n     * Updates the basic information on the map.\n     * If the p_mapId is not set, a new map is created (and the p_mapId is set then)\n     * on the p_articleNumber article.\n     *\n     * @param int $p_mapId\n     * @param int $p_articleNumber\n     * @param array $p_map\n     *\n     * @return int\n     */\n    public static function UpdateMap(&$p_mapId, $p_articleNumber = 0, $p_map)\n    {\n        global $g_ado_db;\n        global $g_user;\n\n        Geo_MapLocation::CleanFound();\n\n        if (is_object($p_map))\n        {\n            $p_map = get_object_vars($p_map);\n        }\n        // creating a new map, if the map does not exist yet\n        $queryStr_map_new = 'INSERT INTO Maps (MapCenterLongitude, MapCenterLatitude, MapDisplayResolution, MapProvider, MapWidth, MapHeight, MapName, MapRank, fk_article_number, IdUser) ';\n        $queryStr_map_new .= 'VALUES (?, ?, ?, ?, ?, ?, ?, 1, ?, %%user_id%%)';\n\n        // update the map, if it already exists\n        $queryStr_map_up = 'UPDATE Maps SET MapCenterLongitude = ?, MapCenterLatitude = ?, MapDisplayResolution = ?, MapProvider = ?, MapWidth = ?, MapHeight = ?, MapName = ? WHERE id = ?';\n\n\n        $map_val_params = array();\n        $map_val_params[] = $p_map['cen_lon'];\n        $map_val_params[] = $p_map['cen_lat'];\n        $map_val_params[] = $p_map['zoom'];\n        $map_val_params[] = $p_map['provider'];\n        $map_val_params[] = $p_map['width'];\n        $map_val_params[] = $p_map['height'];\n        $map_val_params[] = $p_map['name'];\n        if (0 == $p_mapId)\n        {\n            // the way for a new map\n            try\n            {\n                $map_val_params[] = $p_articleNumber;\n                // create the new map\n\n                // it has to be safe to use the user id directly\n                $queryStr_map_new = str_replace('%%user_id%%', $g_user->getUserId(), $queryStr_map_new);\n\n                $success = $g_ado_db->Execute($queryStr_map_new, $map_val_params);\n                // taking the map ID\n                $p_mapId = $g_ado_db->Insert_ID();\n            }\n            catch (Exception $exc)\n            {\n                return false;\n            }\n        }\n        else\n        {\n            // the way for an already existing map\n            try\n            {\n                $map_val_params[] = $p_mapId;\n                // update the map values\n                $success = $g_ado_db->Execute($queryStr_map_up, $map_val_params);\n            }\n            catch (Exception $exc)\n            {\n                return false;\n            }\n\n        }\n\n        return $p_mapId;\n    } // fn UpdateMap\n\n    /**\n     * Removes points (with locations and other contents) from the map.\n     *\n     * @param int $p_mapId\n     * @param array $p_removal\n     *\n     * @return bool\n     */\n    public static function RemovePoints($p_mapId, $p_removal)\n    {\n        global $g_ado_db;\n\n        Geo_MapLocation::CleanFound();\n\n/*\n    A)\n        1) provided: map_id, list of maploc_ids\n\n    B)\n        1) read all location_id from MapLocations where id=maploc_id;\n        2) read all content_id from MapLocationLanguages where maploc_id;\n        3) read all multimedia_id from MapLocationMultimedia where maploc_id;\n\n    C)\n            1) delete from MapLocations where there are: id=maploc_id\n            2) delete from MapLocationLanguages where there are: maploc_id\n            3) delete from MapLocationMultimedia where fk_maplocation_id=maploc_id\n    D)\n        cycle:\n            1) delete from Locations where there are: id=location_id, and there is no location_id at MapLocations\n            2) delete from LocationContents where there are: id=content_id and there is no content_id at MapLocationLanguages\n            2) delete from Multimedia where there are: id=multimedia_id and there is no multimedia_id at MapLocationMultimedia\n\n*/\n\n        $map_loc_ids = array();\n        foreach ($p_removal as $one_rem)\n        {\n            if (is_object($one_rem))\n            {\n                $one_rem = get_object_vars($one_rem);\n            }\n\n            $val_rem = $one_rem['location_id'];\n            if (is_numeric($val_rem))\n            {\n                $id_rem = 0 + $val_rem;\n                if (is_int($id_rem)) {$map_loc_ids[] = $id_rem;}\n            }\n        }\n        if (0 == count($map_loc_ids)) {return 0;}\n\n        $map_loc_list = implode(', ', $map_loc_ids);\n\n        $list_fill = '%%id_list%%';\n        // ad B 1)\n        $queryStr_maploc_sel = 'SELECT fk_location_id AS loc FROM MapLocations WHERE id IN (%%id_list%%)';\n        // ad B 2)\n        $queryStr_maploclan_sel = 'SELECT fk_content_id AS con FROM MapLocationLanguages WHERE fk_maplocation_id IN (%%id_list%%)';\n        // ad B 3)\n        $queryStr_maplocmed_sel = 'SELECT fk_multimedia_id AS med FROM MapLocationMultimedia WHERE fk_maplocation_id IN (%%id_list%%)';\n\n\n        // ad C 1)\n        $queryStr_maploc_del = 'DELETE FROM MapLocations WHERE id IN (%%id_list%%)';\n        // ad C 2)\n        $queryStr_maploclan_del = 'DELETE FROM MapLocationLanguages WHERE fk_maplocation_id IN (%%id_list%%)';\n        // ad C 3)\n        $queryStr_maplocmed_del = 'DELETE FROM MapLocationMultimedia WHERE fk_maplocation_id IN (%%id_list%%)';\n\n        // ad D 1)\n        $queryStr_locpos_del = 'DELETE FROM Locations WHERE id = ? AND NOT EXISTS (SELECT id FROM MapLocations WHERE fk_location_id = ?)';\n        // ad D 2)\n        $queryStr_loccon_del = 'DELETE FROM LocationContents WHERE id = ? AND NOT EXISTS (SELECT id FROM MapLocationLanguages WHERE fk_content_id = ?)';\n        // ad D 3)\n        $queryStr_locmed_del = 'DELETE FROM Multimedia WHERE id = ? AND NOT EXISTS (SELECT id FROM MapLocationMultimedia WHERE fk_multimedia_id = ?)';\n\n        // ad B1)\n        $location_ids = array();\n        try\n        {\n            $maploc_sel_params = array();\n\n            $queryStr_maploc_sel = str_replace($list_fill, $map_loc_list, $queryStr_maploc_sel);\n\n            $rows = $g_ado_db->GetAll($queryStr_maploc_sel, $maploc_sel_params);\n            if (is_array($rows)) {\n                foreach ($rows as $row) {\n                    $location_ids[] = $row['loc'];\n                }\n            }\n        }\n        catch (Exception $exc)\n        {\n            return false;\n        }\n\n        // ad B2)\n        $content_ids = array();\n        try\n        {\n            $maploclan_sel_params = array();\n\n            $queryStr_maploclan_sel = str_replace($list_fill, $map_loc_list, $queryStr_maploclan_sel);\n\n            $rows = $g_ado_db->GetAll($queryStr_maploclan_sel, $maploclan_sel_params);\n            if (is_array($rows)) {\n                foreach ($rows as $row) {\n                    $content_ids[] = $row['con'];\n                }\n            }\n        }\n        catch (Exception $exc)\n        {\n            return false;\n        }\n\n        // ad B3)\n        $media_ids = array();\n        try\n        {\n            $maplocmed_sel_params = array();\n\n            $queryStr_maplocmed_sel = str_replace($list_fill, $map_loc_list, $queryStr_maplocmed_sel);\n\n            $rows = $g_ado_db->GetAll($queryStr_maplocmed_sel, $maplocmed_sel_params);\n            if (is_array($rows)) {\n                foreach ($rows as $row) {\n                    $media_ids[] = $row['med'];\n                }\n            }\n        }\n        catch (Exception $exc)\n        {\n            return false;\n        }\n\n        // ad C 1)\n        try\n        {\n            $maploc_del_params = array();\n\n            $queryStr_maploc_del = str_replace($list_fill, $map_loc_list, $queryStr_maploc_del);\n\n            $success = $g_ado_db->Execute($queryStr_maploc_del, $maploc_del_params);\n        }\n        catch (Exception $exc)\n        {\n            return false;\n        }\n\n        // ad C 2)\n        try\n        {\n            $maploclan_del_params = array();\n\n            $queryStr_maploclan_del = str_replace($list_fill, $map_loc_list, $queryStr_maploclan_del);\n\n            $success = $g_ado_db->Execute($queryStr_maploclan_del, $maploclan_del_params);\n        }\n        catch (Exception $exc)\n        {\n            return false;\n        }\n\n        // ad C 3)\n        try\n        {\n            $maplocmed_del_params = array();\n\n            $queryStr_maplocmed_del = str_replace($list_fill, $map_loc_list, $queryStr_maplocmed_del);\n\n            $success = $g_ado_db->Execute($queryStr_maplocmed_del, $maplocmed_del_params);\n        }\n        catch (Exception $exc)\n        {\n            return false;\n        }\n\n        // ad D 1)\n        try\n        {\n            foreach ($location_ids as $one_loc)\n            {\n                $locpos_del_params = array();\n                $locpos_del_params[] = $one_loc;\n                $locpos_del_params[] = $one_loc;\n\n                $success = $g_ado_db->Execute($queryStr_locpos_del, $locpos_del_params);\n            }\n        }\n        catch (Exception $exc)\n        {\n            return false;\n        }\n\n        // ad D 2)\n        try\n        {\n            foreach ($content_ids as $one_con)\n            {\n                $loccon_del_params = array();\n                $loccon_del_params[] = $one_con;\n                $loccon_del_params[] = $one_con;\n\n                $success = $g_ado_db->Execute($queryStr_loccon_del, $loccon_del_params);\n            }\n        }\n        catch (Exception $exc)\n        {\n            return false;\n        }\n\n        // ad D 3)\n        try\n        {\n            foreach ($media_ids as $one_med)\n            {\n                $locmed_del_params = array();\n                $locmed_del_params[] = $one_med;\n                $locmed_del_params[] = $one_med;\n\n                $success = $g_ado_db->Execute($queryStr_locmed_del, $locmed_del_params);\n            }\n        }\n        catch (Exception $exc)\n        {\n            return false;\n        }\n\n        return true;\n\n    } // fn RemovePoints\n\n\n    /**\n     * Inserts points (with locations and other contents) into the map.\n     * NB: The result indices are used at the point order updating, since that order-updating\n     * would not know id's of the new points otherwise.\n     *\n     * @param int $p_mapId\n     * @param int $p_languageId\n     * @param int $p_articleNumber\n     * @param array $p_insertion\n     * @param array $p_indices\n     *\n     * @return array\n     */\n    public static function InsertPoints($p_mapId, $p_languageId, $p_articleNumber, $p_insertion, &$p_indices)\n    {\n        global $g_ado_db;\n        global $g_user;\n\n        Geo_MapLocation::CleanFound();\n\n        // this should not happen\n        if (0 == $p_mapId) {return array();}\n\n/*\n    A)\n        1) given article_number, language_id, map_id, list of new data\n        2) read languages of the article\n\n    B)\n        cycle:\n            1) insert into Locations the new position\n            2) get inserted id as location_id\n            3) insert into LocationContents the most of the new data,\n            4) get inserted id as content_id\n            5) insert into MapLocations (map_id, location_id, data:style, rank=0)\n            6) get inserted id as maplocation_id\n            7) insert into MapLocationLanguages (maplocation_id, language_id, content_id, data:display)\n            ad 7) this for all languages, with display=false for the other ones\n*/\n\n        // removed cause params are not properly processed atm\n        // ad B 3)\n        // ad B 5)\n        $queryStr_maploc = 'INSERT INTO MapLocations (fk_map_id, fk_location_id, poi_style, rank) ';\n        $queryStr_maploc .= 'VALUES (?, ?, ?, 0)';\n        // ad B 7)\n        $queryStr_maploclan = 'INSERT INTO MapLocationLanguages (fk_maplocation_id, fk_language_id, fk_content_id, poi_display) ';\n        $queryStr_maploclan .= 'VALUES (?, ?, ?, ?)';\n\n\n        if ($p_articleNumber)\n        {\n            $languages = Geo_Map::ReadLanguagesByArticle($p_articleNumber);\n        }\n        else\n        {\n            $languages = Geo_Map::ReadLanguagesByMap($p_mapId);\n        }\n\n        foreach ($p_insertion as $poi)\n        {\n            if (is_object($poi)) {$poi = get_object_vars($poi);}\n\n            {\n\n                $loc_id = null;\n\n                $new_loc = array();\n                $new_loc[] = array('latitude' => $poi['latitude'], 'longitude' => $poi['longitude']);\n                $new_cen = array('latitude' => $poi['latitude'], 'longitude' => $poi['longitude']);\n                $new_style = 0;\n                $new_radius = 0;\n                $reuse_id = Geo_Location::FindLocation($new_loc, 'point', $new_style, $new_cen, $new_radius);\n\n                if ($reuse_id && (0 < $reuse_id))\n                {\n                    $loc_id = $reuse_id;\n                }\n                else\n                {\n                    // ad B 1)\n                    $queryStr_loc_in = 'INSERT INTO Locations (poi_location, poi_type, poi_type_style, poi_center, poi_radius, IdUser) VALUES (';\n                    $queryStr_loc_in .= \"GeomFromText('POINT(\".$poi['latitude'].\" \".$poi['longitude'].\")'), 'point', 0, PointFromText('POINT(\".$poi['latitude'].\" \".$poi['longitude'].\")'), 0, %%user_id%%\";\n                    $queryStr_loc_in .= ')';\n\n\n                    // the POI itself insertion\n                    $queryStr_loc_in = str_replace('%%user_id%%', $g_user->getUserId(), $queryStr_loc_in);\n\n                    $success = $g_ado_db->Execute($queryStr_loc_in);\n                    // ad B 2)\n                    // taking its ID for the next processing\n                    $loc_id = $g_ado_db->Insert_ID();\n                }\n\n                // ad B 3/4)\n                $con_id = Geo_MapLocationContent::InsertContent($poi);\n\n                // ad B 5)\n                $maploc_params = array();\n                $maploc_params[] = $p_mapId;\n                $maploc_params[] = $loc_id;\n                $maploc_params[] = '' . $poi['style'];\n                // the map-point link insertion\n                $success = $g_ado_db->Execute($queryStr_maploc, $maploc_params);\n\n                // ad B 6)\n                $maploc_id = $g_ado_db->Insert_ID();\n\n                Geo_Multimedia::InsertMultimedia($maploc_id, $poi);\n\n                // ad B 7)\n\n                $maploclan_params = array();\n                $maploclan_params[] = $maploc_id;\n                $maploclan_params[] = 0 + $p_languageId;\n                $maploclan_params[] = $con_id;\n                $maploclan_params[] = 0 + $poi['display'];\n                // the map-point link insertion\n                $success = $g_ado_db->Execute($queryStr_maploclan, $maploclan_params);\n\n                $poi_index = $poi['index'];\n\n                $p_indices[$poi_index] = array('maploc' => $maploc_id);\n\n                // insert the POI content for the other article's languages\n                foreach ($languages as $one_lang)\n                {\n                    if ($one_lang == $p_languageId) {continue;}\n\n                    $maploclan_params[1] = $one_lang;\n                    $maploclan_params[3] = 0; // false; // display;\n\n                    $success = $g_ado_db->Execute($queryStr_maploclan, $maploclan_params);\n                }\n\n                // if a new POI, then that's all for it here\n                continue;\n            }\n\n        }\n\n        return $p_indices;\n    } // fn InsertPoints\n\n\n\n    // presentation functions\n\n    /**\n     * Gives the large map opener part of the header part for all the presentation maps\n     *\n     * @param string $p_mapSuffix\n     * @param int $p_widthLargeMap\n     * @param int $p_heightLargeMap\n     * @param string $p_labelLargeMap\n     * @param string $p_tagStringPrev\n     * @param string $p_tagStringBody\n     *\n     * @return string\n     */\n    private static function GetLargeMapOpener($p_mapSuffix, $p_widthLargeMap, $p_heightLargeMap, $p_labelLargeMap, $p_tagStringPrev, $p_tagStringBody)\n    {\n        global $Campsite;\n\n        $tag_string_fin = '';\n\n        $tag_string_fin .= '\n<script>\nwindow.map_win_popup = null;\nwindow.geo_open_large_map' . $p_mapSuffix . ' = function(params)\n{\n    window.deferred_poi_select = null;\n    var select_poi = null;\n    if (undefined !== params) {\n        if (undefined !== params[\"select_poi\"]) {\n            select_poi = params[\"select_poi\"];\n            window.deferred_poi_select = select_poi;\n        }\n    }\n\n    var already_focused = false;\n    try {\n        if (window.map_win_popup) {\n            if (\"' . $p_mapSuffix . '\" == window.map_win_popup.map_obj_specifier) {\n                setTimeout(\"try {window.map_win_popup.focus();} catch(e) {}\", 0);\n                if (null !== select_poi) {\n                    window.point_large_map_center' . $p_mapSuffix . '(select_poi, true);\n                }\n                already_focused = true;\n            }\n        }\n    } catch (e) {already_focused = false;}\n\n    if (window.map_win_popup && window.map_win_popup.closed) {\n        already_focused = false;\n    }\n\n    if (already_focused) {return;}\n\n    window.map_win_popup = window.open(\"\", \"map_win_popup\", \"width=' . $p_widthLargeMap . ', height=' . $p_heightLargeMap . ',directories=0,location=0,menubar=0,toolbar=0,resizable=1\");\n\n    window.map_win_popup.document.write(\"<!DOCTYPE HTML PUBLIC \\\"-//W3C//DTD XHTML 1.0 Transitional//EN\\\" \\\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\\\">\\n\");\n    window.map_win_popup.document.write(\"<html xmlns=\\\"http://www.w3.org/1999/xhtml\\\">\\n\");\n    window.map_win_popup.document.write(\"<head profile=\\\"http://gmpg.org/xfn/11\\\">\\n\");\n    window.map_win_popup.document.write(\"<title>' . $p_labelLargeMap . '</title>\\n\");\n    window.map_win_popup.document.write(\"<\" + \"script src=\\\"//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js\\\"><\" + \"/script>\\n\");\n    window.map_win_popup.document.write(\"\\n\");\n    window.map_win_popup.document.write(\"\\n\");\n';\n\n$header_part = '\n        <script type=\"text/javascript\">\n        window.set_map_popup_at_opener = function () {\n            if (window.opener && (undefined !== window.opener.map_win_popup) && (!window.opener.map_win_popup)) {\n                window.opener.map_win_popup = window;\n            }\n        };\n        setInterval (\"window.set_map_popup_at_opener();\", 1000);\n        //setInterval (\"window.set_map_popup_at_opener();\", 500);\n        </script>\n';\n\n        foreach (explode(\"\\n\", $header_part) as $tag_string_line) {\n            $tag_string_line = str_replace(\"\\\\\", \"\\\\\\\\\", trim($tag_string_line));\n            $tag_string_line = str_replace(\"\\\"\", \"\\\\\\\"\", trim($tag_string_line));\n            $tag_string_line = str_replace(\"<script\", \"<\\\" + \\\"script\", trim($tag_string_line));\n            $tag_string_line = str_replace(\"</script\", \"<\\\" + \\\"/script\", trim($tag_string_line));\n            $tag_string_fin .= 'window.map_win_popup.document.write(\"' . $tag_string_line . '\" + \"\\n\");' . \"\\n\";\n        }\n\n        $tag_string_fin .= '\n';\n\n        $tag_string_fin .= 'window.map_win_popup.document.write(\"<script type=\\\"text/javascript\\\">\" + \"\\n\")' . \"\\n\";\n        $tag_string_fin .= 'window.map_win_popup.document.write(\"window.map_prepared = false;\\n\");' . \"\\n\";\n        $tag_string_fin .= 'window.map_win_popup.document.write(\"window.map_popup_win = true;\\n\");' . \"\\n\";\n        $tag_string_fin .= 'window.map_win_popup.document.write(\"window.map_obj_specifier = \\\"' . $p_mapSuffix . '\\\";\\n\");' . \"\\n\";\n        $tag_string_fin .= 'window.map_win_popup.document.write(\"window.onunload = function () {window.map_obj_specifier = null; window.map_prepared = false;}\\n\");' . \"\\n\";\n\n        $tag_string_fin .= 'window.map_win_popup.document.write(\"window.deferred_action = function() {if (null !== window.opener.deferred_poi_select) {window.geo_object' . $p_mapSuffix . '.proc_subst_action({select_poi: window.opener.deferred_poi_select});}}\\n\");' . \"\\n\";\n\n        $tag_string_fin .= 'window.map_win_popup.document.write(\"<\" + \"/script>\" + \"\\n\");' . \"\\n\";\n\n        foreach (explode(\"\\n\", $p_tagStringPrev) as $tag_string_line) {\n            $tag_string_line = str_replace(\"\\\\\", \"\\\\\\\\\", trim($tag_string_line));\n            $tag_string_line = str_replace(\"\\\"\", \"\\\\\\\"\", trim($tag_string_line));\n            $tag_string_line = str_replace(\"<script\", \"<\\\" + \\\"script\", trim($tag_string_line));\n            $tag_string_line = str_replace(\"</script\", \"<\\\" + \\\"/script\", trim($tag_string_line));\n            $tag_string_fin .= 'window.map_win_popup.document.write(\"' . $tag_string_line . '\" + \"\\n\");' . \"\\n\";\n        }\n\n        $tag_string_fin .= \"\\n\";\n\n        $tag_string_fin .= 'window.map_win_popup.document.write(\"<script type=\\\"text/javascript\\\">\" + \"\\n\")' . \"\\n\";\n        $tag_string_fin .= 'window.map_win_popup.document.write(\"setInterval(\\\"geo_object' . $p_mapSuffix . '.try_size_updated();\\\", 1000);\\n\");' . \"\\n\";\n        $tag_string_fin .= 'window.map_win_popup.document.write(\"<\" + \"/script>\" + \"\\n\");' . \"\\n\";\n\n        $tag_string_fin .= '\n    window.map_win_popup.document.write(\"</head>\\n\");\n    window.map_win_popup.document.write(\"<body>\\n\");\n';\n\n        $tag_string_fin .= 'window.map_win_popup.document.write(\"<div id=\\\"map_body_holder\\\" class=\\\"geomap_body_holder\\\">\\n\");';\n        foreach (explode(\"\\n\", $p_tagStringBody) as $tag_string_line) {\n            $tag_string_line = str_replace(\"\\\\\", \"\\\\\\\\\", trim($tag_string_line));\n            $tag_string_line = str_replace(\"\\\"\", \"\\\\\\\"\", trim($tag_string_line));\n            $tag_string_line = str_replace(\"<script\", \"<\\\" + \\\"script\", trim($tag_string_line));\n            $tag_string_line = str_replace(\"</script\", \"<\\\" + \\\"/script\", trim($tag_string_line));\n            $tag_string_fin .= 'window.map_win_popup.document.write(\"' . $tag_string_line . '\" + \"\\n\");' . \"\\n\";\n        }\n        $tag_string_fin .= 'window.map_win_popup.document.write(\"</div>\\n\");';\n\n        $tag_string_fin .= '\n    window.map_win_popup.document.write(\"</body></html>\");\n    window.map_win_popup.document.close();\n}\n</script>\n';\n\n        return $tag_string_fin;\n    } // fn GetLargeMapOpener\n\n    /**\n     * Gives the header part for the map front end presentation\n     *\n     * @param int $p_articleNumber\n     * @param int $p_languageId\n     * @param int $p_mapWidth\n     * @param int $p_mapHeight\n     * @param array $p_options\n     *\n     * @return string\n     */\n    public static function GetMapTagHeader($p_articleNumber, $p_languageId, $p_mapWidth = 0, $p_mapHeight = 0, $p_options = null)\n    {\n        global $Campsite;\n        $tag_string = '';\n        $tag_string_top = '';\n        $tag_string_gv3_async = false;\n        $tag_string_ini = '';\n        $tag_string_mid = '';\n        $tag_string_fin = '';\n\n        $auto_focus = null;\n        $max_zoom = null;\n        $map_margin = null;\n        $load_common = true;\n        $width_dyn = false;\n        $height_dyn = false;\n\n        if (is_array($p_options)) {\n            if (array_key_exists('auto_focus', $p_options)) {\n                $auto_focus = $p_options['auto_focus'];\n            }\n            if (array_key_exists('max_zoom', $p_options)) {\n                $max_zoom = $p_options['max_zoom'];\n            }\n            if (array_key_exists('map_margin', $p_options)) {\n                $map_margin = $p_options['map_margin'];\n            }\n            if (array_key_exists('load_common', $p_options)) {\n                $load_common = $p_options['load_common'];\n            }\n            if (array_key_exists('width_dyn', $p_options)) {\n                $width_dyn = $p_options['width_dyn'];\n            }\n            if (array_key_exists('height_dyn', $p_options)) {\n                $height_dyn = $p_options['height_dyn'];\n            }\n        }\n\n        $large_map_on_click = false;\n        $open_large_map = false;\n        $width_large_map = 800;\n        $height_large_map = 600;\n        $label_large_map = '';\n        if (is_array($p_options)) {\n            if (array_key_exists('large_map_on_click', $p_options)) {\n                $large_map_on_click = $p_options['large_map_on_click'];\n            }\n            if (array_key_exists('large_map_open', $p_options)) {\n                $open_large_map = $p_options['large_map_open'];\n            }\n            if ($large_map_on_click && (!$open_large_map)) {\n                $open_large_map = true;\n            }\n            if (array_key_exists('large_map_width', $p_options)) {\n                $width_large_map_param = 0 + $p_options['large_map_width'];\n                if (0 < $width_large_map_param) {\n                    $width_large_map = $width_large_map_param;\n                }\n            }\n            if (array_key_exists('large_map_height', $p_options)) {\n                $height_large_map_param = 0 + $p_options['large_map_height'];\n                if (0 < $height_large_map_param) {\n                    $height_large_map = $height_large_map_param;\n                }\n            }\n        }\n\n        $f_article_number = $p_articleNumber;\n        $f_language_id = $p_languageId;\n\n        $map_suffix = '_' . $f_article_number . '_' . $f_language_id;\n\n        $cnf_html_dir = $Campsite['HTML_DIR'];\n        $cnf_website_url = $Campsite['WEBSITE_URL'];\n\n        $geo_map_usage = Geo_Map::ReadMapInfo('article', $f_article_number);\n        if (0 < $p_mapWidth) {\n            $geo_map_usage['width'] = $p_mapWidth;\n        }\n        if (0 < $p_mapHeight) {\n            $geo_map_usage['height'] = $p_mapHeight;\n        }\n        if ($geo_map_usage['name']) {\n            $label_large_map = $geo_map_usage['name'];\n        }\n\n        $geo_map_usage_json = '';\n        $geo_map_usage_json .= json_encode($geo_map_usage);\n\n        $geo_map_info = Geo_Preferences::GetMapInfo($cnf_html_dir, $cnf_website_url, $geo_map_usage['prov']);\n        $geo_map_incl = Geo_Preferences::PrepareMapIncludes($geo_map_info['incl_obj']);\n        $geo_map_incl_async_arr = $geo_map_info['incl_obj_async'];\n        $geo_map_incl_async_init = $geo_map_info['incl_gv3_init'];\n\n        $tag_string_gv3_async = $geo_map_info['incl_gv3'];\n        $geo_map_json = '';\n        $geo_map_json .= json_encode($geo_map_info['json_obj']);\n\n        $geo_icons_info = Geo_Preferences::GetIconsInfo($cnf_html_dir, $cnf_website_url);\n        $geo_icons_json = '';\n        $geo_icons_json .= json_encode($geo_icons_info['json_obj']);\n\n        $geo_popups_info = Geo_Preferences::GetPopupsInfo($cnf_html_dir, $cnf_website_url);\n        $geo_popups_json = '';\n        $geo_popups_json .= json_encode($geo_popups_info['json_obj']);\n\n        $geo_focus_info = Geo_Preferences::GetFocusInfo($cnf_html_dir, $cnf_website_url);\n        if (null !== $auto_focus)\n        {\n            $geo_focus_info['json_obj']['auto_focus'] = $auto_focus;\n        }\n        if (null !== $max_zoom)\n        {\n            $geo_focus_info['json_obj']['max_zoom'] = $max_zoom;\n        }\n        if (null !== $map_margin)\n        {\n            $geo_focus_info['json_obj']['border'] = $map_margin;\n        }\n        $geo_focus_json = '';\n        $geo_focus_json .= json_encode($geo_focus_info['json_obj']);\n        \n        $map_id = Geo_Map::GetMapIdByArticle($f_article_number);\n\n        $preview = true;\n        $poi_info = Geo_Map::LoadMapData($map_id, $f_language_id, $f_article_number, $preview);\n\n        $poi_info_json = json_encode($poi_info);\n\n        $geocodingdir = $Campsite['WEBSITE_URL'] . '/js/geocoding/';\n\n        // map-provider specific includes shall be taken for all maps, since those maps can use different map providers\n        $tag_string_top .= $geo_map_incl;\n        $tag_string_top .= \"\\n\";\n\n        $check_gv3 = 'false';\n        if ($tag_string_gv3_async) {\n            $check_gv3 = 'true';\n        }\n        $check_gv3_init = 'false';\n        if ('' != $geo_map_incl_async_init) {\n            $check_gv3_init = 'true';\n        }\n\n        $include_files_tags = '';\n        if (true) {\n\n            $include_files = Geo_Preferences::GetIncludeCSS($cnf_html_dir, $cnf_website_url);\n            $include_files_css = $include_files['css_files'];\n            foreach ($include_files_css as $css_file)\n            {\n                $include_files_tags .= \"<link rel=\\\"stylesheet\\\" type=\\\"text/css\\\" href=\\\"$css_file\\\" />\\n\";\n            }\n\n        }\n\n        $tag_string_ini .= $include_files_tags;\n\n        if (true) {\n\n            $tag_string_ini .= '\n\n    <script type=\"text/javascript\" src=\"' . $Campsite['WEBSITE_URL'] . '/js/geocoding/map_popups.js\"></script>\n    <script type=\"text/javascript\" src=\"' . $Campsite['WEBSITE_URL'] . '/js/geocoding/openlayers/OpenLayers.js\"></script>\n    <script type=\"text/javascript\" src=\"' . $Campsite['WEBSITE_URL'] . '/js/geocoding/openlayers/OLlocals.js\"></script>\n    <script type=\"text/javascript\" src=\"' . $Campsite['WEBSITE_URL'] . '/js/geocoding/map_preview.js\"></script>\n';\n\n        }\n\n        $tag_string_mid .= '\n<script type=\"text/javascript\">\n    window.map_prepared = false;\n\n';\n\n        if ('' != $geo_map_incl_async_init) {\n        $tag_string_mid .= '\nif (undefined === window.' . $geo_map_incl_async_init . ') {\n    window.' . $geo_map_incl_async_init . ' = function () {\n        window.gv3_maps_loaded = true;\n    };\n}\n';\n        }\n\n        $tag_string_mid .= '\n\n    geo_object'. $map_suffix .' = new geo_locations();\n\nwindow.center_large_map' . $map_suffix . ' = function () {\n    try {\n        if (window.map_win_popup && window.map_win_popup.map_prepared) {\n            if (\"' . $map_suffix . '\" == window.map_win_popup.map_obj_specifier) {\n                window.map_win_popup.geo_object' . $map_suffix . '.map_showview();\n            }\n        }\n    } catch (e) {}\n};\n\nwindow.point_large_map_center' . $map_suffix . ' = function (index, select) {\n    try {\n        if (window.map_win_popup && window.map_win_popup.map_prepared) {\n            if (\"' . $map_suffix . '\" == window.map_win_popup.map_obj_specifier) {\n                window.map_win_popup.geo_object' . $map_suffix . '.center_poi(index);\n                if (select) {\n                    window.map_win_popup.OpenLayers.HooksPopups.on_map_feature_select(window.map_win_popup.geo_object' . $map_suffix . ', index);\n                }\n            }\n        }\n    } catch (e) {}\n};\n\nwindow.geo_on_load_proc_check_async_map' . $map_suffix . ' = function()\n{\n\n    var async_loaded = true;\n    if (' . $check_gv3 . ') {\n        var loaded_gv3 = false;\n        if ((undefined !== window.google) && (undefined !== window.google.maps) && (undefined !== window.google.maps.event)) {\n            loaded_gv3 = true;\n        }\n\n        if (' . $check_gv3_init . ') {\n            if ((undefined === window.gv3_maps_loaded) || (!window.gv3_maps_loaded)) {\n                loaded_gv3 = false;\n            }\n        }\n\n        if (!loaded_gv3) {async_loaded = false;}\n    }\n\n    if (0 < window.count_to_async_load' . $map_suffix . ') {\n        async_loaded = false;\n    }\n\n    if (async_loaded) {\n        setTimeout(\"geo_on_load_proc_phase2_map' . $map_suffix . '();\", 250);\n        return;\n    }\n\n    setTimeout(\"geo_on_load_proc_check_async_map' . $map_suffix . '();\", 250);\n\n}\n\nvar geo_on_load_proc_map' . $map_suffix . ' = function()\n{\n    var map_obj = document.getElementById ? document.getElementById(\"geo_map_mapcanvas' . $map_suffix . '\") : null;\n    if (map_obj)\n    {\n        if (typeof(window.map_popup_win) == \"undefined\") {\n            map_obj.style.width = \"' . $geo_map_usage['width'] . ($width_dyn ? '%' : 'px') . '\";\n            map_obj.style.height = \"' . $geo_map_usage['height'] . ($height_dyn ? '%' : 'px') . '\";\n        } else {\n            // not setting the map size for the large map\n        }\n\n';\n\n    $dyn_size_params = array();\n    if ($width_dyn) {\n        $dyn_size_params['width'] = $geo_map_usage['width'];\n    }\n    if ($height_dyn) {\n        $dyn_size_params['height'] = $geo_map_usage['height'];\n    }\n    if (0 < count($dyn_size_params)) {\n        $tag_string_mid .= '\n        if (typeof(window.map_popup_win) == \"undefined\") {\n            geo_object' . $map_suffix . '.set_size_percentage(' . json_encode($dyn_size_params) . ');\n            setInterval(\"geo_object' . $map_suffix . '.try_size_updated();\", 1000);\n        }\n        ';\n    }\n\n    $article_spec_arr = array('language_id' => $f_language_id, 'article_number' => $f_article_number);\n    $article_spec = json_encode($article_spec_arr);\n\n    $tag_string_mid .= \"\\n\";\n    $tag_string_mid .= \"geo_object$map_suffix.set_article_spec($article_spec);\";\n    $tag_string_mid .= \"\\n\";\n    $tag_string_mid .= \"geo_object$map_suffix.set_auto_focus($geo_focus_json);\";\n    $tag_string_mid .= \"\\n\";\n    $tag_string_mid .= \"geo_object$map_suffix.set_map_info($geo_map_json);\";\n    $tag_string_mid .= \"\\n\";\n    $tag_string_mid .= \"geo_object$map_suffix.set_map_usage($geo_map_usage_json);\";\n    $tag_string_mid .= \"\\n\";\n    $tag_string_mid .= \"geo_object$map_suffix.set_icons_info($geo_icons_json);\";\n    $tag_string_mid .= \"\\n\";\n    $tag_string_mid .= \"geo_object$map_suffix.set_popups_info($geo_popups_json);\";\n    $tag_string_mid .= \"\\n\";\n    if ($large_map_on_click) {\n        $tag_string_mid .= \"if (typeof(window.map_popup_win) == \\\"undefined\\\") {\\n\";\n        $tag_string_mid .= \"    geo_object$map_suffix.set_action_subst(function(params) {\";\n        $tag_string_mid .= \"        \" . self::GetMapTagOpen($p_articleNumber, $p_languageId, \"open_form\") . \"(params);\\n\";\n        $tag_string_mid .= \"    });\\n\";\n        $tag_string_mid .= \"}\\n\";\n        $tag_string_mid .= \"\\n\";\n    }\n    $tag_string_mid .= \"if (typeof(window.map_popup_win) != \\\"undefined\\\") {\\n\";\n    $tag_string_mid .= \"    geo_object$map_suffix.set_map_large({width:$width_large_map,height:$height_large_map,map_holder:\\\"map_body_holder\\\"});\\n\";\n    $tag_string_mid .= \"}\\n\";\n    $tag_string_mid .= \"\\n\";\n\n        $tag_string_mid .= '\n\n        if (true && (typeof(window.map_popup_win) != \"undefined\")) {\n';\n\n        $tag_async_load_bunch = '';\n        $count_to_async_load = 0;\n        foreach ($geo_map_incl_async_arr as $one_async_scr) {\n            if (!empty($one_async_scr)) {\n                $count_to_async_load += 1;\n                $tag_async_load_bunch .= '$.getScript(\"' . $one_async_scr . '\", function() {window.count_to_async_load' . $map_suffix . ' -= 1;});';\n            }\n        }\n\n        $tag_string_mid .= '\n            window.count_to_async_load' . $map_suffix . ' = ' . $count_to_async_load . ';\n            window.gv3_maps_loaded = false;\n\n            ' . $tag_async_load_bunch . '\n\n            if (true) {\n                setTimeout(\"geo_on_load_proc_check_async_map' . $map_suffix . '();\", 250);\n                return;\n            }\n        }\n\n        setTimeout(\"geo_on_load_proc_phase2_map' . $map_suffix . '();\", 250);\n        return;\n    }\n};\n\nvar geo_on_load_proc_phase2_map' . $map_suffix . ' = function()\n{\n        var res_state = false;\n        try {\n            res_state = OpenLayers.Util.test_ready();\n        } catch (e) {res_state = false;}\n\n        if (!res_state)\n        {\n            setTimeout(\"geo_on_load_proc_phase2_map' . $map_suffix . '();\", 250);\n            return;\n        }\n\n        geo_object' . $map_suffix . '.main_openlayers_init(\"geo_map_mapcanvas' . $map_suffix. '\");\n        geo_object' . $map_suffix . '.got_load_data(' . $poi_info_json . ', true);\n\n        window.map_prepared = true;\n\n        if (undefined !== window.deferred_action) {\n            try {window.deferred_action();} catch (e) {}\n        }\n\n};\n\n    $(document).ready(function()\n    {\n        setTimeout(\"geo_on_load_proc_map' . $map_suffix . '();\", 0);\n    });\n</script>\n';\n\n        // should we provide js for large-map openning\n        if ($open_large_map) {\n\n            $tag_string_fin .= self::GetLargeMapOpener($map_suffix, $width_large_map, $height_large_map, $label_large_map, $tag_string_ini . $tag_string_mid, self::GetMapTagBody($p_articleNumber, $p_languageId, true));\n\n        }\n\n        $tag_string .= $tag_string_top;\n        if ($load_common) {\n            $tag_string .= $tag_string_ini;\n        }\n\n        return $tag_string . $tag_string_mid . $tag_string_fin;\n\n    } // fn GetMapTagHeader\n\n    /**\n     * Gives the body map-placement part for the map front end presentation\n     *\n     * @param int $p_articleNumber\n     * @param int $p_languageId\n     *\n     * @return string\n     */\n    public static function GetMapTagBody($p_articleNumber, $p_languageId, $p_largeMap = false)\n    {\n        global $Campsite;\n        $tag_string = '';\n\n        $f_article_number = $p_articleNumber;\n        $f_language_id = $p_languageId;\n\n        $map_suffix = '_' . $f_article_number . '_' . $f_language_id;\n\n        if ($p_largeMap) {\n            $tag_string .= \"<div id=\\\"geo_map_mapcanvas$map_suffix\\\" class=\\\"geo_map_mapcanvas_large\\\"></div>\\n\";\n        }\n        else {\n            $tag_string .= \"<div id=\\\"geo_map_mapcanvas$map_suffix\\\" class=\\\"geo_map_mapcanvas\\\"></div>\\n\";\n        }\n\n        return $tag_string;\n    } // fn GetMapTagBody\n\n    /**\n     * Gives the body open-large-map link part for the article-map front end presentation\n     *\n     * @param int $p_articleNumber\n     * @param int $p_languageId\n     *\n     * @return string\n     */\n    public static function GetMapTagOpen($p_articleNumber, $p_languageId, $p_specifier = null)\n    {\n        global $Campsite;\n        $tag_string = '';\n\n        $f_article_number = $p_articleNumber;\n        $f_language_id = $p_languageId;\n\n        $map_suffix = '_' . $f_article_number . '_' . $f_language_id;\n\n        if ('open_form' == $p_specifier) {\n            $tag_string .= \"geo_open_large_map$map_suffix\";\n        }\n        else {\n            $tag_string .= \"if (window.map_prepared) {geo_open_large_map$map_suffix();} \";\n        }\n\n        return $tag_string;\n    } // fn GetMapTagOpen\n\n    /**\n     * Gives the body map-centering (js call) part for the map front end presentation\n     *\n     * @param int $p_articleNumber\n     * @param int $p_languageId\n     *\n     * @return string\n     */\n    public static function GetMapTagCenter($p_articleNumber, $p_languageId)\n    {\n        global $Campsite;\n        $tag_string = '';\n\n        $f_article_number = $p_articleNumber;\n        $f_language_id = $p_languageId;\n\n        $map_suffix = '_' . $f_article_number . '_' . $f_language_id;\n\n        $tag_string .= 'if (window.map_prepared) {geo_object' . $map_suffix . '.map_showview();} ';\n        $tag_string .= 'window.center_large_map' . $map_suffix . '(); ';\n\n        return $tag_string;\n    } // fn GetMapTagCenter\n\n    /**\n     * Gives the body map-info and point-list part for the map front end presentation\n     *\n     * @param int $p_articleNumber\n     * @param int $p_languageId\n     *\n     * @return array\n     */\n    public static function GetMapTagListData($p_articleNumber, $p_languageId)\n    {\n        $f_article_number = (int) $p_articleNumber;\n        $f_language_id = (int) $p_languageId;\n        $map_suffix = '_' . $f_article_number . '_' . $f_language_id;\n        $map_id = Geo_Map::GetMapIdByArticle($f_article_number);\n        $preview = true;\n        $text_only = true;\n\n        $poi_info = Geo_Map::LoadMapData($map_id, $f_language_id, $f_article_number, $preview, $text_only);\n        $pind = 0;\n        foreach ($poi_info['pois'] as $rank => $poi) {\n            $cur_lon = $poi['longitude'];\n            $cur_lat = $poi['latitude'];\n            $center_poi = \"if (window.map_prepared) {geo_object$map_suffix.center_lonlat($cur_lon, $cur_lat);} point_large_map_center\" . $map_suffix . \"($pind, false);\";\n            $select_poi = \"if (window.map_prepared) {geo_object$map_suffix.select_poi($pind);} point_large_map_center\" . $map_suffix . \"($pind, true);\";\n            $poi_info['pois'][$rank]['center'] = $center_poi;\n            $poi_info['pois'][$rank]['open'] = $select_poi;\n            $pind += 1;\n        }\n        return (array) $poi_info;\n    } // fn GetMapTagListData\n\n    /**\n     * @param int $p_articleNumber\n     * @param int $p_languageId\n     * @return string\n     */\n    public static function GetMapTagList($p_articleNumber, $p_languageId)\n    {\n        $geo = self::GetMapTagListData((int) $p_articleNumber, (int) $p_languageId);\n        $map = $geo['map'];\n        $pois = $geo['pois'];\n\n        $icons_dir = Geo_Preferences::GetIconsWebDir();\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        $map_name = $map['name'];\n        $map_name = str_replace('&', '&amp;', $map_name);\n        $map_name = str_replace('<', '&lt;', $map_name);\n        $map_name = str_replace('>', '&gt;', $map_name);\n\n        $html = '\n            <div class=\"geomap_info\">\n              <dl class=\"geomap_map_name\">\n                <dt class=\"geomap_map_name_label\">' .\n                  $translator->trans('Map', array(), 'api') . ':\n                </dt>\n                <dd class=\"geomap_map_name_value\">' .\n                  $map_name . '\n                </dd>\n              </dl>\n            </div>\n            <div id=\"side_info\" class=\"geo_side_info\">';\n        $poiIdx = 0;\n        foreach ($pois as $poi) {\n            $poi_title = $poi['title'];\n            $poi_title = str_replace('&', '&amp;', $poi_title);\n            $poi_title = str_replace('<', '&lt;', $poi_title);\n            $poi_title = str_replace('>', '&gt;', $poi_title);\n            $poi_perex = $poi['perex'];\n            $poi_perex = str_replace('&', '&amp;', $poi_perex);\n            $poi_perex = str_replace('<', '&lt;', $poi_perex);\n            $poi_perex = str_replace('>', '&gt;', $poi_perex);\n\n            $poi_icon = $poi['style'];\n\n            $html .= '<div id=\"poi_seq_' . $poiIdx . '\">\n                <a class=\"geomap_poi_icon_link\" href=\"#\" onClick=\"' . $poi['open'] . ' return false;\"><img class=\"geomap_poi_icon\" src=\"' . $icons_dir . '/' . $poi_icon . '\" /></a>\n                <a class=\"geomap_poi_name\" href=\"#\" onClick=\"'\n                . $poi['open'] . ' return false;\">' . $poi_title . '</a>\n                <div class=\"geomap_poi_perex\">' . $poi_perex . '</div>\n                <div class=\"geomap_poi_center\">\n                    <a href=\"#\" onClick=\"' . $poi['center'] . ' return false;\">'\n                        . $translator->trans('Center', array(), 'api') . '\n                    </a>\n                </div>\n                <div class=\"geomap_poi_spacer\">&nbsp;</div>\n            </div>';\n            $poiIdx += 1;\n        }\n        $html .= '</div>';\n        return $html;\n    } // fn GetMapTagList\n\n    // multi-map functions\n\n    /**\n     * Gives the header part for the multi-map front end presentation\n     *\n     * @param int $p_languageId\n     * @param array $p_constarints\n     * @param array $p_options\n     * @param int $p_offset\n     * @param int $p_limit\n     * @param int $p_mapWidth\n     * @param int $p_mapHeight\n     * @param int $p_rank\n     *    The rank of the current multi-map, used to make unique ids\n     *\n     * @return string\n     */\n    public static function GetMultiMapTagHeader($p_languageId, $p_constraints, $p_options, $p_offset, $p_limit, $p_mapWidth, $p_mapHeight, $p_rank = 0)\n    {\n        global $Campsite;\n        $tag_string = '';\n        $tag_string_top = '';\n        $tag_string_gv3_async = false;\n        $tag_string_ini = '';\n        $tag_string_mid = '';\n        $tag_string_fin = '';\n\n        $points = null;\n\n        $pois_loaded = false;\n        $max_zoom = null;\n        $map_margin = null;\n        $load_common = true;\n        $area_points = null;\n        $area_points_empty_only = 'false';\n        $width_dyn = false;\n        $height_dyn = false;\n\n        if (is_array($p_options)) {\n            if (array_key_exists('pois_retrieved', $p_options)) {\n                $pois_loaded = $p_options['pois_retrieved'];\n            }\n            if (array_key_exists('max_zoom', $p_options)) {\n                $max_zoom = $p_options['max_zoom'];\n            }\n            if (array_key_exists('map_margin', $p_options)) {\n                $map_margin = $p_options['map_margin'];\n            }\n            if (array_key_exists('load_common', $p_options)) {\n                $load_common = $p_options['load_common'];\n            }\n            if (array_key_exists('area_points', $p_options)) {\n                $area_points = $p_options['area_points'];\n            }\n            if (array_key_exists('area_points_empty_only', $p_options)) {\n                if ($p_options['area_points_empty_only']) {\n                    $area_points_empty_only = 'true';\n                }\n            }\n            if (array_key_exists('width_dyn', $p_options)) {\n                $width_dyn = $p_options['width_dyn'];\n            }\n            if (array_key_exists('height_dyn', $p_options)) {\n                $height_dyn = $p_options['height_dyn'];\n            }\n        }\n\n        $large_map_on_click = false;\n        $open_large_map = false;\n        $width_large_map = 800;\n        $height_large_map = 600;\n        $label_large_map = '';\n        if (is_array($p_options)) {\n            if (array_key_exists('large_map_on_click', $p_options)) {\n                $large_map_on_click = $p_options['large_map_on_click'];\n            }\n            if (array_key_exists('large_map_open', $p_options)) {\n                $open_large_map = $p_options['large_map_open'];\n            }\n            if ($large_map_on_click && (!$open_large_map)) {\n                $open_large_map = true;\n            }\n            if (array_key_exists('large_map_width', $p_options)) {\n                $width_large_map_param = 0 + $p_options['large_map_width'];\n                if (0 < $width_large_map_param) {\n                    $width_large_map = $width_large_map_param;\n                }\n            }\n            if (array_key_exists('large_map_height', $p_options)) {\n                $height_large_map_param = 0 + $p_options['large_map_height'];\n                if (0 < $height_large_map_param) {\n                    $height_large_map = $height_large_map_param;\n                }\n            }\n            if (array_key_exists('large_map_label', $p_options)) {\n                $label_large_map_param = '' . $p_options['large_map_label'];\n                if ('' != $label_large_map_param) {\n                    $label_large_map = $label_large_map_param;\n                }\n            }\n        }\n\n        if (!$pois_loaded) {\n\n            $leftOperand = 'as_array';\n            $rightOperand = true;\n            $operator = new Operator('is', 'php');\n            $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n            $p_constraints[] = $constraint;\n    \n            $leftOperand = 'active_only';\n            $rightOperand = true;\n            $operator = new Operator('is', 'php');\n            $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n            $p_constraints[] = $constraint;\n    \n            $leftOperand = 'text_only';\n            $rightOperand = false;\n            $operator = new Operator('is', 'php');\n            $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n            $p_constraints[] = $constraint;\n    \n            $leftOperand = 'language';\n            $rightOperand = $p_languageId;\n            $operator = new Operator('is', 'php');\n            $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n            $p_constraints[] = $constraint;\n    \n            $leftOperand = 'constrained';\n            $rightOperand = true;\n            $operator = new Operator('is', 'php');\n            $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n            $p_constraints[] = $constraint;\n    \n            $poi_count = 0;\n            $points = array();\n            $point_objs = Geo_MapLocation::GetListExt($p_constraints, (array) null, $p_offset, $p_limit, $poi_count, false, $points);\n\n        }\n        else {\n\n            $points = $p_constraints;\n\n        }\n\n        $f_language_id = $p_languageId;\n\n        $map_suffix = '_' . 'multimap' . '_' . $f_language_id . '_' . $p_rank;\n\n        $cnf_html_dir = $Campsite['HTML_DIR'];\n        $cnf_website_url = $Campsite['WEBSITE_URL'];\n        \n        $geo_map_usage = Geo_Map::ReadMultiMapInfo();\n        if (0 < $p_mapWidth)\n        {\n            $geo_map_usage['width'] = $p_mapWidth;\n        }\n        if (0 < $p_mapHeight)\n        {\n            $geo_map_usage['height'] = $p_mapHeight;\n        }\n\n        $geo_map_usage_json = '';\n        $geo_map_usage_json .= json_encode($geo_map_usage);\n\n        $geo_map_info = Geo_Preferences::GetMapInfo($cnf_html_dir, $cnf_website_url, $geo_map_usage['prov']);\n        $geo_map_incl = Geo_Preferences::PrepareMapIncludes($geo_map_info['incl_obj']);\n        $geo_map_incl_async_arr = $geo_map_info['incl_obj_async'];\n        $geo_map_incl_async_init = $geo_map_info['incl_gv3_init'];\n\n        $tag_string_gv3_async = $geo_map_info['incl_gv3'];\n        $geo_map_json = '';\n        $geo_map_json .= json_encode($geo_map_info['json_obj']);\n\n        $geo_icons_info = Geo_Preferences::GetIconsInfo($cnf_html_dir, $cnf_website_url);\n        $geo_icons_json = '';\n        $geo_icons_json .= json_encode($geo_icons_info['json_obj']);\n        \n        $geo_popups_info = Geo_Preferences::GetPopupsInfo($cnf_html_dir, $cnf_website_url);\n        $geo_popups_json = '';\n        $geo_popups_json .= json_encode($geo_popups_info['json_obj']);\n\n        $geo_focus_info = Geo_Preferences::GetFocusInfo($cnf_html_dir, $cnf_website_url);\n\n        {\n            $geo_focus_info['json_obj']['auto_focus'] = true;\n        }\n        if (null !== $max_zoom)\n        {\n            $geo_focus_info['json_obj']['max_zoom'] = $max_zoom;\n        }\n        if (null !== $map_margin)\n        {\n            $geo_focus_info['json_obj']['border'] = $map_margin;\n        }\n        $geo_focus_json = '';\n        $geo_focus_json .= json_encode($geo_focus_info['json_obj']);\n        \n        $preview = true;\n        $poi_info = array('pois' => $points, 'map' => $geo_map_usage);\n        \n        $poi_info_json = json_encode($poi_info);\n        \n        $geocodingdir = $Campsite['WEBSITE_URL'] . '/js/geocoding/';\n\n        // map-provider specific includes shall be taken for all maps, since those maps can use different map providers\n        $tag_string_top .= $geo_map_incl;\n        $tag_string_top .= \"\\n\";\n\n        $check_gv3 = 'false';\n        if ($tag_string_gv3_async) {\n            $check_gv3 = 'true';\n        }\n        $check_gv3_init = 'false';\n        if ('' != $geo_map_incl_async_init) {\n            $check_gv3_init = 'true';\n        }\n\n        $include_files_tags = '';\n        if (true) {\n            $include_files = Geo_Preferences::GetIncludeCSS($cnf_html_dir, $cnf_website_url);\n            $include_files_css = $include_files['css_files'];\n            foreach ($include_files_css as $css_file)\n            {\n                $include_files_tags .= \"<link rel=\\\"stylesheet\\\" type=\\\"text/css\\\" href=\\\"$css_file\\\" />\\n\";\n            }\n        }\n\n        $tag_string_ini .= $include_files_tags;\n\n        if (true) {\n\n            $tag_string_ini .= '\n\n    <script type=\"text/javascript\" src=\"' . $Campsite['WEBSITE_URL'] . '/js/geocoding/map_popups.js\"></script>\n    <script type=\"text/javascript\" src=\"' . $Campsite['WEBSITE_URL'] . '/js/geocoding/openlayers/OpenLayers.js\"></script>\n    <script type=\"text/javascript\" src=\"' . $Campsite['WEBSITE_URL'] . '/js/geocoding/openlayers/OLlocals.js\"></script>\n    <script type=\"text/javascript\" src=\"' . $Campsite['WEBSITE_URL'] . '/js/geocoding/map_preview.js\"></script>\n\n';\n        }\n\n        $tag_string_mid .= '\n\n<script type=\"text/javascript\">\n    window.map_prepared = false;\n\n';\n\n        if ('' != $geo_map_incl_async_init) {\n        $tag_string_mid .= '\nif (undefined === window.' . $geo_map_incl_async_init . ') {\n    window.' . $geo_map_incl_async_init . ' = function () {\n        window.gv3_maps_loaded = true;\n    };\n}\n';\n        }\n\n        $tag_string_mid .= '\n\n    geo_object'. $map_suffix .' = new geo_locations();\n\nwindow.center_large_map' . $map_suffix . ' = function () {\n    try {\n        if (window.map_win_popup && window.map_win_popup.map_prepared) {\n            if (\"' . $map_suffix . '\" == window.map_win_popup.map_obj_specifier) {\n                window.map_win_popup.geo_object' . $map_suffix . '.map_showview();\n            }\n        }\n    } catch (e) {}\n};\n\nwindow.point_large_map_center' . $map_suffix . ' = function (index, select) {\n    try {\n        if (window.map_win_popup && window.map_win_popup.map_prepared) {\n            if (\"' . $map_suffix . '\" == window.map_win_popup.map_obj_specifier) {\n                window.map_win_popup.geo_object' . $map_suffix . '.center_poi(index);\n                if (select) {\n                    window.map_win_popup.OpenLayers.HooksPopups.on_map_feature_select(window.map_win_popup.geo_object' . $map_suffix . ', index);\n                }\n            }\n        }\n    } catch (e) {}\n};\n\nwindow.geo_on_load_proc_check_async_map' . $map_suffix . ' = function()\n{\n\n    var async_loaded = true;\n    if (' . $check_gv3 . ') {\n        var loaded_gv3 = false;\n        if ((undefined !== window.google) && (undefined !== window.google.maps) && (undefined !== window.google.maps.event)) {\n            loaded_gv3 = true;\n        }\n\n        if (' . $check_gv3_init . ') {\n            if ((undefined === window.gv3_maps_loaded) || (!window.gv3_maps_loaded)) {\n                loaded_gv3 = false;\n            }\n        }\n\n        if (!loaded_gv3) {async_loaded = false;}\n    }\n\n    if (0 < window.count_to_async_load' . $map_suffix . ') {\n        async_loaded = false;\n    }\n\n    if (async_loaded) {\n        setTimeout(\"geo_on_load_proc_phase2_map' . $map_suffix . '();\", 250);\n        return;\n    }\n\n    setTimeout(\"geo_on_load_proc_check_async_map' . $map_suffix . '();\", 250);\n\n}\n\nvar geo_on_load_proc_map' . $map_suffix . ' = function()\n{\n\n    var map_obj = document.getElementById ? document.getElementById(\"geo_map_mapcanvas' . $map_suffix . '\") : null;\n    if (map_obj)\n    {\n        if (typeof(window.map_popup_win) == \"undefined\") {\n            map_obj.style.width = \"' . $geo_map_usage['width'] . ($width_dyn ? '%' : 'px') . '\";\n            map_obj.style.height = \"' . $geo_map_usage['height'] . ($height_dyn ? '%' : 'px') . '\";\n        } else {\n            // not setting the map size for the large map\n        }\n';\n\n    $dyn_size_params = array();\n    if ($width_dyn) {\n        $dyn_size_params['width'] = $geo_map_usage['width'];\n    }\n    if ($height_dyn) {\n        $dyn_size_params['height'] = $geo_map_usage['height'];\n    }\n    if (0 < count($dyn_size_params)) {\n        $tag_string_mid .= '\n        if (typeof(window.map_popup_win) == \"undefined\") {\n            geo_object' . $map_suffix . '.set_size_percentage(' . json_encode($dyn_size_params) . ');\n            setInterval(\"geo_object' . $map_suffix . '.try_size_updated();\", 1000);\n        }\n        ';\n    }\n\n    $article_spec_arr = array('language_id' => $f_language_id, 'article_number' => 0);\n    $article_spec = json_encode($article_spec_arr);\n\n    $local_strings = array();\n    $translator = \\Zend_Registry::get('container')->getService('translator');\n\n\n    $local_strings['articles'] = $translator->trans('Articles');\n    $local_strings_json = json_encode($local_strings);\n\n    $tag_string_mid .= \"\\n\";\n    $tag_string_mid .= \"geo_object$map_suffix.set_article_spec($article_spec);\";\n    $tag_string_mid .= \"\\n\";\n    $tag_string_mid .= \"geo_object$map_suffix.set_auto_focus($geo_focus_json);\";\n    $tag_string_mid .= \"\\n\";\n    $tag_string_mid .= \"geo_object$map_suffix.set_map_info($geo_map_json);\";\n    $tag_string_mid .= \"\\n\";\n    $tag_string_mid .= \"geo_object$map_suffix.set_map_usage($geo_map_usage_json);\";\n    $tag_string_mid .= \"\\n\";\n    $tag_string_mid .= \"geo_object$map_suffix.set_icons_info($geo_icons_json);\";\n    $tag_string_mid .= \"\\n\";\n    $tag_string_mid .= \"geo_object$map_suffix.set_popups_info($geo_popups_json);\";\n    $tag_string_mid .= \"\\n\";\n    $tag_string_mid .= \"geo_object$map_suffix.set_display_strings($local_strings_json);\";\n    $tag_string_mid .= \"\\n\";\n\n    if ($area_points) {\n        $tag_string_mid .= \"geo_object$map_suffix.set_area_constraints($area_points, {\\\"empty_only\\\":$area_points_empty_only});\";\n        $tag_string_mid .= \"\\n\";\n    }\n\n    if ($large_map_on_click) {\n        $tag_string_mid .= \"if (typeof(window.map_popup_win) == \\\"undefined\\\") {\\n\";\n        $tag_string_mid .= \"    geo_object$map_suffix.set_action_subst(function(params) {\";\n        $tag_string_mid .= \"        \" . self::GetMultiMapTagOpen($p_languageId, $p_rank, \"open_form\") . \"(params);\\n\";\n        $tag_string_mid .= \"    });\\n\";\n        $tag_string_mid .= \"}\\n\";\n        $tag_string_mid .= \"\\n\";\n    }\n    $tag_string_mid .= \"if (typeof(window.map_popup_win) != \\\"undefined\\\") {\\n\";\n    $tag_string_mid .= \"    geo_object$map_suffix.set_map_large({width:$width_large_map,height:$height_large_map,map_holder:\\\"map_body_holder\\\"});\\n\";\n    $tag_string_mid .= \"}\\n\";\n    $tag_string_mid .= \"\\n\";\n\n        $tag_string_mid .= '\n\n        if (true && (typeof(window.map_popup_win) != \"undefined\")) {\n';\n\n        $tag_async_load_bunch = '';\n        $count_to_async_load = 0;\n        foreach ($geo_map_incl_async_arr as $one_async_scr) {\n            if (!empty($one_async_scr)) {\n                $count_to_async_load += 1;\n                $tag_async_load_bunch .= '$.getScript(\"' . $one_async_scr . '\", function() {window.count_to_async_load' . $map_suffix . ' -= 1;});';\n            }\n        }\n\n        $tag_string_mid .= '\n            window.count_to_async_load' . $map_suffix . ' = ' . $count_to_async_load . ';\n            window.gv3_maps_loaded = false;\n\n            ' . $tag_async_load_bunch . '\n\n            if (true) {\n                setTimeout(\"geo_on_load_proc_check_async_map' . $map_suffix . '();\", 250);\n                return;\n            }\n        }\n\n        setTimeout(\"geo_on_load_proc_phase2_map' . $map_suffix . '();\", 250);\n        return;\n    }\n};\n\nvar geo_on_load_proc_phase2_map' . $map_suffix . ' = function()\n{\n        var res_state = false;\n        try {\n            res_state = OpenLayers.Util.test_ready();\n        } catch (e) {res_state = false;}\n\n        if (!res_state)\n        {\n            setTimeout(\"geo_on_load_proc_phase2_map' . $map_suffix . '();\", 250);\n            return;\n        }\n\n        geo_object' . $map_suffix . '.main_openlayers_init(\"geo_map_mapcanvas' . $map_suffix. '\");\n        geo_object' . $map_suffix . '.got_load_data(' . $poi_info_json . ', true);\n\n        window.map_prepared = true;\n\n        if (undefined !== window.deferred_action) {\n            try {window.deferred_action();} catch (e) {}\n        }\n};\n\n    $(document).ready(function()\n    {\n        setTimeout(\"geo_on_load_proc_map' . $map_suffix . '();\", 0);\n    });\n</script>\n';\n\n        // should we provide js for large-map openning\n        if ($open_large_map) {\n\n            $tag_string_fin .= self::GetLargeMapOpener($map_suffix, $width_large_map, $height_large_map, $label_large_map, $tag_string_ini . $tag_string_mid, self::GetMultiMapTagBody($p_languageId, $p_rank, true));\n\n        }\n\n        $tag_string .= $tag_string_top;\n        if ($load_common) {\n            $tag_string .= $tag_string_ini;\n        }\n\n        return $tag_string . $tag_string_mid . $tag_string_fin;\n\n    } // fn GetMultiMapTagHeader\n\n    /**\n     * Gives the body map-placement part for the map front end presentation\n     *\n     * @param int $p_languageId\n     * @param int $p_rank\n     *    The rank of the current multi-map, used to make unique ids\n     *\n     * @return string\n     */\n    public static function GetMultiMapTagBody($p_languageId, $p_rank = 0, $p_largeMap = false)\n    {\n        global $Campsite;\n        $tag_string = '';\n\n        $f_language_id = $p_languageId;\n\n        $map_suffix = '_' . 'multimap' . '_' . $f_language_id . '_' . $p_rank;\n\n        if ($p_largeMap) {\n            $tag_string .= \"<div id=\\\"geo_map_mapcanvas$map_suffix\\\" class=\\\"geo_map_mapcanvas_large\\\"></div>\\n\";\n        }\n        else {\n            $tag_string .= \"<div id=\\\"geo_map_mapcanvas$map_suffix\\\" class=\\\"geo_map_mapcanvas\\\"></div>\\n\";\n        }\n\n        return $tag_string;\n    } // fn GetMultiMapTagBody\n\n    /**\n     * Gives the body open-large-map link part for the multi-map front end presentation\n     *\n     * @param int $p_languageId\n     * @param int $p_rank\n     *    The rank of the current multi-map, used to make unique ids\n     *\n     * @return string\n     */\n    public static function GetMultiMapTagOpen($p_languageId, $p_rank = 0, $p_specifier = null)\n    {\n        global $Campsite;\n        $tag_string = '';\n\n        $f_language_id = $p_languageId;\n\n        $map_suffix = '_' . 'multimap' . '_' . $f_language_id . '_' . $p_rank;\n\n        if ('open_form' == $p_specifier) {\n            $tag_string .= \"geo_open_large_map$map_suffix\";\n        }\n        else {\n            $tag_string .= \"if (window.map_prepared) {geo_open_large_map$map_suffix();} \";\n        }\n\n        return $tag_string;\n    } // fn GetMultiMapTagOpen\n\n    /**\n     * Gives the body map-centering (js call) part for the map front end presentation\n     *\n     * @param int $p_articleNumber\n     * @param int $p_languageId\n     *\n     * @return string\n     */\n    public static function GetMultiMapTagCenter($p_languageId, $p_rank = 0)\n    {\n        global $Campsite;\n        $tag_string = '';\n\n        $f_language_id = $p_languageId;\n\n        $map_suffix = '_' . 'multimap' . '_' . $f_language_id . '_' . $p_rank;\n\n        $tag_string .= 'if (window.map_prepared) {geo_object' . $map_suffix . '.map_showview();} ';\n        $tag_string .= 'window.center_large_map' . $map_suffix . '(); ';\n\n        return $tag_string;\n    } // fn GetMultiMapTagCenter\n\n    /**\n     * Gives the body map-info and point-list part for the map front end presentation\n     *\n     * @param int $p_languageId\n     * @param array $p_constraints\n     * @param array $p_options\n     * @param int $p_offset\n     * @param int $p_limit\n     * @param int $p_rank\n     *    The rank of the current multi-map, used to make unique ids\n     *\n     * @return array\n     */\n    public static function GetMultiMapTagListData($p_languageId, $p_constraints, $p_options, $p_offset, $p_limit, $p_rank = 0)\n    {\n        $f_language_id = (int) $p_languageId;\n        $map_suffix = '_' . 'multimap' . '_' . $f_language_id . '_' . $p_rank;\n        $preview = true;\n        $text_only = true;\n\n        $geo_map_usage = Geo_Map::ReadMultiMapInfo();\n\n        $points = null;\n\n        $pois_loaded = false;\n\n        if (is_array($p_options)) {\n            if (array_key_exists('pois_retrieved', $p_options)) {\n                $pois_loaded = $p_options['pois_retrieved'];\n            }\n        }\n\n        if (!$pois_loaded) {\n\n            $leftOperand = 'as_array';\n            $rightOperand = true;\n            $operator = new Operator('is', 'php');\n            $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n            $p_constraints[] = $constraint;\n    \n            $leftOperand = 'active_only';\n            $rightOperand = true;\n            $operator = new Operator('is', 'php');\n            $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n            $p_constraints[] = $constraint;\n    \n            $leftOperand = 'text_only';\n            $rightOperand = true;\n            $operator = new Operator('is', 'php');\n            $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n            $p_constraints[] = $constraint;\n    \n            $leftOperand = 'language';\n            $rightOperand = $p_languageId;\n            $operator = new Operator('is', 'php');\n            $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n            $p_constraints[] = $constraint;\n    \n            $leftOperand = 'constrained';\n            $rightOperand = true;\n            $operator = new Operator('is', 'php');\n            $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n            $p_constraints[] = $constraint;\n\n            $poi_count = 0;\n            $points = array();\n            $point_objs = Geo_MapLocation::GetListExt($p_constraints, (array) null, $p_offset, $p_limit, $poi_count, false, $points);\n\n        }\n        else {\n\n            $points = $p_constraints;\n\n        }\n\n        $poi_info = array('pois' => $points, 'map' => $geo_map_usage);\n\n        $pind = 0;\n        foreach ($poi_info['pois'] as $rank => $poi) {\n            $cur_lon = $poi['longitude'];\n            $cur_lat = $poi['latitude'];\n            $center_poi = \"if (window.map_prepared) {geo_object$map_suffix.center_lonlat($cur_lon, $cur_lat);} point_large_map_center\" . $map_suffix . \"($pind, false);\";\n            $select_poi = \"if (window.map_prepared) {geo_object$map_suffix.select_poi($pind);} point_large_map_center\" . $map_suffix . \"($pind, true);\";\n            $poi_info['pois'][$rank]['center'] = $center_poi;\n            $poi_info['pois'][$rank]['open'] = $select_poi;\n            $pind += 1;\n        }\n        return (array) $poi_info;\n    } // fn GetMultiMapTagListData\n\n    /**\n     * @param int $p_languageId\n     * @param array $p_constraints\n     * @param array $p_options\n     * @param string $p_label\n     * @param int $p_offset\n     * @param int $p_limit\n     * @param int $p_rank\n     *    The rank of the current multi-map, used to make unique ids\n     *\n     * @return string\n     */\n    public static function GetMultiMapTagList($p_languageId, $p_constraints, $p_options, $p_label, $p_offset, $p_limit, $p_rank = 0)\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $geo = self::GetMultiMapTagListData((int) $p_languageId, $p_constraints, $p_options, $p_offset, $p_limit, $p_rank);\n        $map = $geo['map'];\n        $pois = $geo['pois'];\n\n        $icons_dir = Geo_Preferences::GetIconsWebDir();\n\n        //$map_name = $map['name'];\n        $map_name = $p_label;\n        $map_name = str_replace('&', '&amp;', $map_name);\n        $map_name = str_replace('<', '&lt;', $map_name);\n        $map_name = str_replace('>', '&gt;', $map_name);\n\n        if (0 < strlen($map_name)) {\n            $html = '\n            <div class=\"geomap_info\">\n              <dl class=\"geomap_map_name\">\n                <dt class=\"geomap_map_name_label\">' .\n                  $translator->trans('Map', array(), 'api') . ':\n                </dt>\n                <dd class=\"geomap_map_name_value\">' .\n                  $map_name . '\n                </dd>\n              </dl>\n            </div>';\n        }\n\n        $html .= '\n            <div id=\"side_info\" class=\"geo_side_info\">';\n        $poiIdx = 0;\n        foreach ($pois as $poi) {\n            $poi_title = $poi['title'];\n            $poi_title = str_replace('&', '&amp;', $poi_title);\n            $poi_title = str_replace('<', '&lt;', $poi_title);\n            $poi_title = str_replace('>', '&gt;', $poi_title);\n            $poi_perex = $poi['perex'];\n            $poi_perex = str_replace('&', '&amp;', $poi_perex);\n            $poi_perex = str_replace('<', '&lt;', $poi_perex);\n            $poi_perex = str_replace('>', '&gt;', $poi_perex);\n\n            $poi_icon = $poi['style'];\n\n            $html .= '<div id=\"poi_seq_' . $poiIdx . '\">\n                <a class=\"geomap_poi_icon_link\" href=\"#\" onClick=\"' . $poi['open'] . ' return false;\"><img class=\"geomap_poi_icon\" src=\"' . $icons_dir . '/' . $poi_icon . '\" /></a>\n                <a class=\"geomap_poi_name\" href=\"#\" onClick=\"'\n                . $poi['open'] . ' return false;\">' . $poi_title . '</a>\n                <div class=\"geomap_poi_perex\">' . $poi_perex . '</div>\n                <div class=\"geomap_poi_center\">\n                    <a href=\"#\" onClick=\"' . $poi['center'] . ' return false;\">'\n                        . $translator->trans('Center', array(), 'api') . '\n                    </a>\n                </div>\n                <div class=\"geomap_poi_spacer\">&nbsp;</div>\n            </div>';\n            $poiIdx += 1;\n        }\n        $html .= '</div>';\n        return $html;\n    } // fn GetMultiMapTagList\n\n    // filter functions\n\n    /**\n     * Gives the name of the javascript object used for the map filtering\n     *\n     * @return string\n     */\n    public static function GetMapFilterObjName()\n    {\n        $map_suffix = '_filter';\n        return 'geo_object' . $map_suffix;\n    } // fn GetMapFilterObjName\n\n    /**\n     * Gives the header part for the map filtering\n     *\n     * @param int $p_mapWidth\n     * @param int $p_mapHeight\n     *\n     * @return string\n     */\n    public static function GetMapFilterHeader($p_mapWidth = 0, $p_mapHeight = 0)\n    {\n        global $Campsite;\n        $tag_string = '';\n\n        $map_suffix = '_filter';\n\n        $cnf_html_dir = $Campsite['HTML_DIR'];\n        $cnf_website_url = $Campsite['WEBSITE_URL'];\n\n        $geo_map_info = Geo_Preferences::GetMapInfo($cnf_html_dir, $cnf_website_url);\n        if (0 < $p_mapWidth)\n        {\n            $geo_map_info['width'] = $p_mapWidth;\n        }\n        if (0 < $p_mapHeight)\n        {\n            $geo_map_info['height'] = $p_mapHeight;\n        }\n\n        $geo_map_incl = Geo_Preferences::PrepareMapIncludes($geo_map_info['incl_obj']);\n        $geo_map_json = '';\n        $geo_map_json .= json_encode($geo_map_info['json_obj']);\n\n        $geocodingdir = $Campsite['WEBSITE_URL'] . '/js/geocoding/';\n\n\n        $tag_string .= $geo_map_incl;\n        $tag_string .= \"\\n\";\n\n        $tag_string .= '\n\n    <script type=\"text/javascript\" src=\"' . $Campsite['WEBSITE_URL'] . '/js/geocoding/openlayers/OpenLayers.js\"></script>\n    <script type=\"text/javascript\" src=\"' . $Campsite['WEBSITE_URL'] . '/js/geocoding/openlayers/OLlocals.js\"></script>\n    <script type=\"text/javascript\" src=\"' . $Campsite['WEBSITE_URL'] . '/js/geocoding/map_filter.js\"></script>\n\n<script type=\"text/javascript\">\n\n    geo_object'. $map_suffix .' = new geo_locations_filter();\n\nvar on_load_proc_filter = function()\n{\n    var res_state = false;\n    try {\n        res_state = OpenLayers.Util.test_ready();\n    } catch (e) {res_state = false;}\n\n    if (!res_state)\n    {\n        setTimeout(\"on_load_proc_filter();\", 250);\n        return;\n    }\n\n    var map_obj = document.getElementById ? document.getElementById(\"geo_map_mapcanvas' . $map_suffix . '\") : null;\n    if (map_obj)\n    {\n        map_obj.style.width = \"' . $geo_map_info['width'] . 'px\";\n        map_obj.style.height = \"' . $geo_map_info['height'] . 'px\";\n';\n    $translator = \\Zend_Registry::get('container')->getService('translator');\n    $loc_strings = json_encode(array(\n        'corners' => $translator->trans('vertices', array(), 'api'),\n        'pan_map' => $translator->trans('Pan Map', array(), 'api'),\n        'edit_polygon' => $translator->trans('Edit Polygon', array(), 'api'),\n        'create_polygon' => $translator->trans('Create Polygon', array(), 'api'),\n    ));\n    $img_dir = $Campsite['ADMIN_STYLE_URL'] . '/images/';\n\n    $tag_string .= \"\\n\";\n    $tag_string .= \"geo_object$map_suffix.set_map_info($geo_map_json);\";\n    $tag_string .= \"\\n\";\n    $tag_string .= \"geo_object$map_suffix.set_obj_name('geo_object$map_suffix');\";\n    $tag_string .= \"\\n\";\n    $tag_string .= \"geo_object$map_suffix.set_display_strings($loc_strings);\";\n    $tag_string .= \"\\n\";\n    $tag_string .= \"geo_object$map_suffix.set_img_dir('$img_dir');\";\n    $tag_string .= \"\\n\";\n\n    $tag_string .= '\n        geo_object' . $map_suffix . '.main_init(\"geo_map_mapcanvas' . $map_suffix. '\");\n\n    }\n};\n    $(document).ready(function()\n    {\n        on_load_proc_filter();\n    });\n</script>\n';\n\n        return $tag_string;\n\n    } // fn GetMapFilterHeader\n\n    /**\n     * Gives the body map-placement part for the map filtering\n     *\n     * @return string\n     */\n    public static function GetMapFilterBody()\n    {\n        global $Campsite;\n        $tag_string = '';\n\n        $map_suffix = '_filter';\n\n        $tag_string .= \"<div id=\\\"geo_map_mapcanvas$map_suffix\\\"></div>\\n\";\n\n        return $tag_string;\n    } // fn GetMapFilterBody\n\n    /**\n     * Gives the body map-centering (js call) part for the map filtering\n     *\n     * @return string\n     */\n    public static function GetMapFilterCenter()\n    {\n        global $Campsite;\n        $tag_string = '';\n\n        $map_suffix = '_filter';\n\n        $tag_string .= 'geo_object' . $map_suffix . '.map_showview();';\n\n        return $tag_string;\n    } // fn GetMapFilterCenter\n\n    // search functions\n\n    /**\n     * Gives the header part for the map front end search by map-based rectangle selection\n     * the optional p_bboxDivs array of divs for automatical setting of the box corners coordinates.\n     * The bounding-box corners are available by js calls too (see e.g. locations/search.php).\n     *\n     * @param int $p_mapWidth\n     * @param int $p_mapHeight\n     * @param mixed $p_bboxDivs\n     *\n     * @return string\n     */\n    public static function GetMapSearchHeader($p_mapWidth = 0, $p_mapHeight = 0, $p_bboxDivs = null)\n    {\n        global $Campsite;\n        $tag_string = '';\n\n        $map_suffix = '_search';\n\n        $cnf_html_dir = $Campsite['HTML_DIR'];\n        $cnf_website_url = $Campsite['WEBSITE_URL'];\n\n        $map_provider = Geo_Preferences::GetMapProviderDefault();\n        $geo_map_info = Geo_Preferences::GetMapInfo($cnf_html_dir, $cnf_website_url, $map_provider);\n        if (0 < $p_mapWidth)\n        {\n            $geo_map_info['width'] = $p_mapWidth;\n        }\n        if (0 < $p_mapHeight)\n        {\n            $geo_map_info['height'] = $p_mapHeight;\n        }\n\n        $geo_map_incl = Geo_Preferences::PrepareMapIncludes($geo_map_info['incl_obj']);\n        $geo_map_json = '';\n        $geo_map_json .= json_encode($geo_map_info['json_obj']);\n\n        $geo_icons_info = Geo_Preferences::GetSearchInfo($cnf_html_dir, $cnf_website_url);\n        $geo_icons_json = '';\n        $geo_icons_json .= json_encode($geo_icons_info['json_obj']);\n\n        $geocodingdir = $Campsite['WEBSITE_URL'] . '/js/geocoding/';\n\n\n        $tag_string .= $geo_map_incl;\n        $tag_string .= \"\\n\";\n\n        $tag_string .= '\n\n    <script type=\"text/javascript\" src=\"' . $Campsite['WEBSITE_URL'] . '/js/geocoding/map_popups.js\"></script>\n    <script type=\"text/javascript\" src=\"' . $Campsite['WEBSITE_URL'] . '/js/geocoding/openlayers/OpenLayers.js\"></script>\n    <script type=\"text/javascript\" src=\"' . $Campsite['WEBSITE_URL'] . '/js/geocoding/openlayers/OLlocals.js\"></script>\n    <script type=\"text/javascript\" src=\"' . $Campsite['WEBSITE_URL'] . '/js/geocoding/map_search.js\"></script>\n\n<script type=\"text/javascript\">\n\n    geo_object'. $map_suffix .' = new geo_locations();\n\nvar useSystemParameters = function()\n{\n';\n\n    $tag_string .= \"\\n\";\n    $tag_string .= \"geo_object$map_suffix.set_map_info($geo_map_json);\";\n    $tag_string .= \"\\n\";\n    $tag_string .= \"geo_object$map_suffix.set_icons_info($geo_icons_json);\";\n    $tag_string .= \"\\n\";\n\n        if ($p_bboxDivs)\n        {\n            $bbox_divs_json = '';\n            $bbox_divs_json .= json_encode($p_bboxDivs);\n\n            $tag_string .= \"geo_object$map_suffix.set_bbox_divs($bbox_divs_json);\";\n            $tag_string .= \"\\n\";\n\n        }\n\n        $tag_string .= '\n};\nvar on_load_proc = function()\n{\n\n    var map_obj = document.getElementById ? document.getElementById(\"geo_map_mapcanvas' . $map_suffix . '\") : null;\n    if (map_obj)\n    {\n        map_obj.style.width = \"' . $geo_map_info['width'] . 'px\";\n        map_obj.style.height = \"' . $geo_map_info['height'] . 'px\";\n\n        geo_main_selecting_locations(geo_object' . $map_suffix . ', \"' . $geocodingdir. '\", \"geo_map_mapcanvas' . $map_suffix. '\", \"map_sidedescs\", \"\", \"\", true);\n\n    }\n};\n    $(document).ready(function()\n    {\n        on_load_proc();\n    });\n</script>\n';\n\n        return $tag_string;\n\n    } // fn GetMapSearchHeader\n\n    /**\n     * Gives the body map-placement part for the map front end search by map-based rectangle selection\n     *\n     * @return string\n     */\n    public static function GetMapSearchBody()\n    {\n        global $Campsite;\n        $tag_string = '';\n\n        $map_suffix = '_search';\n\n        $tag_string .= \"<div id=\\\"geo_map_mapcanvas$map_suffix\\\"></div>\\n\";\n\n        return $tag_string;\n    } // fn GetMapSearchBody\n\n    /**\n     * Gives the body map-centering (js call) part for the map front end search by map-based rectangle selection\n     *\n     * @return string\n     */\n    public static function GetMapSearchCenter()\n    {\n        global $Campsite;\n        $tag_string = '';\n\n        $map_suffix = '_search';\n\n        $tag_string .= 'geo_object' . $map_suffix . '.map_showview();';\n\n        return $tag_string;\n    } // fn GetMapSearchCenter\n\n    /**\n     * Gives the SQL query for article searching via their point inside the box specified by the p_coordinates.\n     * The (two) corner lon/lat coordinates should go west to east.\n     *\n     * @param array $p_coordinates\n     *\n     * @return string\n     */\n    public static function GetGeoSearchSQLQuery($p_coordinates)\n    {\n        $queryStr = '';\n        $queryStr_1 = '';\n        $queryStr_2 = '';\n        $queryStr_end = '';\n\n        $queryStr .= 'SELECT DISTINCT m.fk_article_number AS Number FROM Maps AS m INNER JOIN MapLocations AS ml ON m.id = ml.fk_map_id INNER JOIN ';\n        $queryStr .= 'Locations AS l ON ml.fk_location_id = l.id WHERE ';\n\n        $cons_res = Geo_MapLocation::GetGeoSearchSQLCons($p_coordinates, 'rectangle', 'l');\n        if ($cons_res['error']) {return '';}\n\n        $queryStr .= $cons_res['cons'];\n\n        $queryStr_end .= 'AND m.fk_article_number != 0';\n        $queryStr .= $queryStr_end;\n\n        return $queryStr;\n\n    } // fn GetGeoSearchSQLQuery\n\n} // class Geo_Map\n\n"
  },
  {
    "path": "newscoop/classes/GeoMapLocation.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\nrequire_once dirname(__FILE__) . '/DatabaseObject.php';\nrequire_once dirname(__FILE__) . '/GeoLocation.php';\nrequire_once dirname(__FILE__) . '/GeoMultimedia.php';\nrequire_once dirname(__FILE__) . '/GeoMapLocationContent.php';\nrequire_once dirname(__FILE__) . '/GeoMapLocationLanguage.php';\nrequire_once dirname(__FILE__) . '/IGeoMap.php';\nrequire_once dirname(__FILE__) . '/IGeoMapLocation.php';\n\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/CampCacheList.php');\n\n/**\n */\nclass Geo_MapLocation extends DatabaseObject implements IGeoMapLocation\n{\n    const TABLE = 'MapLocations';\n\n    private static $s_found_maplocations_by_map = NULL;\n    private static $s_found_maplocations_list = NULL;\n    private static $s_found_maplocations_list_ext = NULL;\n\n    /** @var string */\n    public $m_dbTableName = self::TABLE;\n\n    /** @var array */\n    public $m_keyColumnNames = array('id');\n\n    /** @var array */\n    public $m_columnNames = array(\n        'id',\n        'fk_map_id',\n        'fk_location_id',\n        'poi_style',\n        'rank',\n    );\n\n    /** @var IGeoLocation */\n    private $location = NULL;\n\n    /** @var array of IGeoMapLocationContent */\n    private $contents = array();\n\n    /** @var array of IGeoMultimedia */\n    private $multimedia = NULL;\n\n    /** @var IGeoMapLocationLanguage */\n    private $languages = array();\n\n    /**\n     * @param mixed $arg\n     */\n    public function __construct($arg = NULL, $p_forceExists = false)\n    {\n\n        parent::__construct($this->m_columnNames);\n\n        if (is_array($arg)) {\n            $this->fetch($arg, $p_forceExists);\n        } else if (is_numeric($arg)) {\n            $this->m_data['id'] = (int) $arg;\n            $this->fetch();\n        }\n\n    }\n\n    /**\n     * Get id\n     * @return int\n     */\n    public function getId()\n    {\n        return (int) $this->m_data['id'];\n    }\n\n    /**\n     * Get latitude\n     * @return float\n     */\n    public function getLatitude()\n    {\n        return $this->getLocation()->getLatitude();\n    }\n\n    /**\n     * Get longitude\n     * @return float\n     */\n    public function getLongitude()\n    {\n        return $this->getLocation()->getLongitude();\n    }\n\n    /**\n     * Get content\n     * @param int $language\n     * @return IGeoMapLocationLanguage\n     */\n    public function getLanguage($language)\n    {\n        $language = (int) $language;\n        if (!isset($this->languages[$language])) {\n            $this->languages[$language] = new Geo_MapLocationLanguage($this, $language);\n        }\n        return $this->languages[$language];\n    }\n\n    public function setLanguage($p_languageId, IGeoMapLocationLanguage $p_languageObj)\n    {\n        if ((!$p_languageId) || (!$p_languageObj)) {return;}\n\n        $language = (int) $p_languageId;\n\n        $this->languages[$language] = $p_languageObj;\n    }\n\n\n    /**\n     * Get content\n     * @param int $language\n     * @return IGeoMapLocationContent\n     */\n    public function getContent($language)\n    {\n        $language = (int) $language;\n        if (!isset($this->contents[$language])) {\n            $this->contents[$language] = new Geo_MapLocationContent($this, $this->getLanguage($language));\n        }\n        return $this->contents[$language];\n    }\n\n    public function setContent($p_languageId, IGeoMapLocationContent $p_contentObj)\n    {\n        if ((!$p_languageId) || (!$p_contentObj)) {return;}\n\n        $language = (int) $p_languageId;\n\n        $this->contents[$language] = $p_contentObj;\n    }\n\n\n    /**\n     * Get location\n     * @return IGeoLocation\n     */\n    private function getLocation()\n    {\n        if ($this->location === NULL) {\n            $this->location = new Geo_Location($this->m_data['fk_location_id']);\n        }\n        return $this->location;\n    }\n\n    /**\n     * Get multimedia\n     * @return array of IGeoMultimedia\n     */\n    public function getMultimedia()\n    {\n        if ($this->multimedia === NULL) {\n            $this->multimedia = Geo_Multimedia::GetByMapLocation($this);\n        }\n        return $this->multimedia;\n    }\n\n    /**\n     * Point is displayable?\n     * @return bool\n     */\n    public function isEnabled($language)\n    {\n        $language = (int) $language;\n\n        return $this->getLanguage($language)->isEnabled();\n    }\n\n    public static function CleanFound()\n    {\n        self::$s_found_maplocations_by_map = NULL;\n        self::$s_found_maplocations_list = NULL;\n        self::$s_found_maplocations_list_ext = NULL;\n    }\n\n    /**\n     * Get locations by map\n     * @param IGeoMap\n     * @return array of IGeoMapLocation\n     */\n    public static function GetByMap(IGeoMap $map)\n    {\n        global $g_ado_db;\n\n        $list_spec = array(\n            'map_id' => $map->getId(),\n        );\n        $list_spec_str = serialize($list_spec);\n\n        if ((!empty(self::$s_found_maplocations_by_map)) && (isset(self::$s_found_maplocations_by_map[$list_spec_str]))) {\n            $list_res_data = self::$s_found_maplocations_by_map[$list_spec_str];\n            $list = $list_res_data['list'];\n            return $list;\n        }\n\n        $queryStr = 'SELECT ml.*, l.*, X(l.poi_location) as latitude, Y(l.poi_location) as longitude, ml.id as id\n            FROM ' . self::TABLE . ' ml\n                INNER JOIN ' . Geo_Location::TABLE . ' l\n                    ON ml.fk_location_id = l.id\n            WHERE ml.fk_map_id = ' . $map->getId() . '\n            ORDER BY ml.rank, ml.id';\n        $rows = $g_ado_db->GetAll($queryStr);\n\n        $mapLocations = array();\n        foreach ((array) $rows as $row) {\n            $mapLocation = new self($row);\n            $row['id'] = $row['fk_location_id'];\n            $mapLocation->location = new Geo_Location($row);\n            $mapLocations[] = $mapLocation;\n        }\n\n        if (empty(self::$s_found_maplocations_by_map)) {\n            self::$s_found_maplocations_by_map = array();\n        }\n        self::$s_found_maplocations_by_map[$list_spec_str] = array(\n            'list' => $mapLocations,\n        );\n\n        return $mapLocations;\n    }\n\n    /**\n     * Returns map locations list based on the given parameters.\n     *\n     * @param array $p_parameters\n     *    An array of ComparionOperation objects\n     * @param array $p_order\n     *    An array of columns and directions to order by\n     * @param integer $p_start\n     *    The record number to start the list\n     * @param integer $p_limit\n     *    The offset. How many records from $p_start will be retrieved.\n     *\n     * @return array of IGeoMapLocation\n     */\n    public static function GetList(array $p_parameters, array $p_order = array(),\n                                   $p_start = 0, $p_limit = 0, &$p_count, $p_skipCache = false)\n    {\n        global $g_ado_db;\n\n        $list_spec = array(\n            'params' => $p_parameters,\n            'order' => $p_order,\n            'start' => $p_start,\n            'limit' => $p_limit,\n            'skip_cache' => $p_skipCache,\n        );\n        $list_spec_str = serialize($list_spec);\n\n        if ((!$p_skipCache) && (!empty(self::$s_found_maplocations_list)) && (isset(self::$s_found_maplocations_list[$list_spec_str]))) {\n            $list_res_data = self::$s_found_maplocations_list[$list_spec_str];\n            $p_count = $list_res_data['count'];\n            $list = $list_res_data['list'];\n            return $list;\n        }\n\n        $selectClauseObj = new SQLSelectClause();\n        $countClauseObj = new SQLSelectClause();\n\n        // set columns\n        $tmpMapLoc = new self(NULL);\n        $tmpLoc = new Geo_Location(NULL);\n        $columnNames = array_merge($tmpMapLoc->getColumnNames(true),\n            array_diff($tmpLoc->getColumnNames(true), array('Locations.id')));\n        foreach ($columnNames as $columnName) {\n            $selectClauseObj->addColumn($columnName);\n        }\n        $selectClauseObj->addColumn('X(poi_location) as latitude');\n        $selectClauseObj->addColumn('Y(poi_location) as longitude');\n        $countClauseObj->addColumn('COUNT(*)');\n\n        // sets the base table\n        $selectClauseObj->setTable($tmpMapLoc->getDbTableName());\n        $selectClauseObj->addJoin(sprintf('INNER JOIN `%s` ON fk_location_id = %s.id',\n            $tmpLoc->getDbTableName(),\n            $tmpLoc->getDbTableName()));\n        $countClauseObj->setTable($tmpMapLoc->getDbTableName());\n        unset($tmpMapLoc);\n        unset($tmpLoc);\n\n        // process params\n        foreach ($p_parameters as $param) {\n            switch ($param->getLeftOperand()) {\n                case 'article':\n                    $searchQuery = sprintf('fk_map_id IN (SELECT id FROM %s WHERE fk_article_number = %d)',\n                        Geo_Map::TABLE,\n                        $param->getRightOperand());\n                    $selectClauseObj->addWhere($searchQuery);\n                    $countClauseObj->addWhere($searchQuery);\n                    break;\n            }\n        }\n\n        // set order by rank and id\n        $selectClauseObj->addOrderBy(self::TABLE . '.rank');\n        $selectClauseObj->addOrderBy(self::TABLE . '.id');\n\n        // sets the limit\n        $selectClauseObj->setLimit($p_start, $p_limit);\n\n        // builds the query and executes it\n        $selectQuery = $selectClauseObj->buildQuery();\n        $rows = $g_ado_db->GetAll($selectQuery);\n\n        $list = array();\n        $p_count = 0;\n        if (is_array($rows)) {\n            $countQuery = $countClauseObj->buildQuery();\n            $p_count = $g_ado_db->GetOne($countQuery);\n\n            foreach ($rows as $row) {\n                $map_loc = new self((array) $row, true);\n\n                $row['id'] = $row['fk_location_id'];\n                $map_loc->location = new Geo_Location($row, true);\n\n                $list[] = $map_loc;\n\n            }\n        }\n\n        if (empty(self::$s_found_maplocations_list)) {\n            self::$s_found_maplocations_list = array();\n        }\n        self::$s_found_maplocations_list[$list_spec_str] = array(\n            'count' => $p_count,\n            'list' => $list,\n        );\n\n        return $list;\n    }\n\n    /**\n     * Returns map locations list based on the given parameters.\n     *\n     * @param array $p_parameters\n     *    An array of ComparionOperation objects\n     * @param array $p_order\n     *    An array of columns and directions to order by\n     * @param integer $p_start\n     *    The record number to start the list\n     * @param integer $p_limit\n     *    The offset, how many records from $p_start will be retrieved\n     * @param integer $p_count\n     *    Total count of POIs without p_start/p_limit limitations\n     * @param bool $p_skipCache\n     *    Whether to skip caching\n     * @param array $p_rawData\n     *    The variable for returning read points as raw array, used for the JS processing\n     *\n     * @return array\n     */\n    public static function GetListExt(array $p_parameters, array $p_order = array(),\n                                   $p_start = 0, $p_limit = 0, &$p_count, $p_skipCache = false, &$p_rawData = null)\n    {\n        $p_count = 0;\n\n        if (!is_numeric($p_limit)) {$p_limit = 0;}\n        if (!is_numeric($p_start)) {$p_start = 0;}\n\n        $ps_saveArray = false;\n        if (!is_null($p_rawData)) {\n            $ps_saveArray = true;\n            $p_rawData = array();\n        }\n\n        $list_spec = array(\n            'params' => $p_parameters,\n            'order' => $p_order,\n            'start' => $p_start,\n            'limit' => $p_limit,\n            'skip_cache' => $p_skipCache,\n            'raw_data' => $p_rawData,\n        );\n        $list_spec_str = serialize($list_spec);\n\n        if ((!$p_skipCache) && (!empty(self::$s_found_maplocations_list_ext)) && (isset(self::$s_found_maplocations_list_ext[$list_spec_str]))) {\n            $list_res_data = self::$s_found_maplocations_list_ext[$list_spec_str];\n            $p_count = $list_res_data['count'];\n            $list_obj = $list_res_data['list_obj'];\n\n            if ($ps_saveArray) {\n                $p_rawData = $list_res_data['list_raw'];\n            }\n            return $list_obj;\n        }\n\n        $ps_mapId = 0;\n        $ps_languageId = 0;\n        $ps_preview = false;\n        // read all the info, mostly cached at the upstream\n        $ps_publicationId = 0;\n\n        $mc_mapCons = false;\n        $mc_article_types_yes = array();\n        $mc_article_types_no = array();\n        $mc_authors_yes = array();\n        $mc_authors_no = array();\n        $mc_users_yes = array();\n        $mc_users_no = array();\n        $mc_articles_yes = array();\n        $mc_articles_no = array();\n        $mc_issues = array();\n        $mc_sections = array();\n        $mc_section_names = array();\n        $mc_topics = array();\n        $mc_topic_names = array();\n        $mc_topics_matchall = false;\n        $mc_multimedia = array();\n        $mc_areas = array();\n        $mc_areas_matchall = false;\n        $mc_areas_exact = true;\n        $mc_dates = array();\n        $mc_icons = array();\n\n        // process params\n        foreach ($p_parameters as $param) {\n            switch ($param->getLeftOperand()) {\n                case 'constrained':\n                    $mc_mapCons = true;\n                case 'map':\n                    if (is_numeric($param->getRightOperand())) {\n                        $ps_mapId = $param->getRightOperand();\n                    }\n                    break;\n                case 'language':\n                    if (is_numeric($param->getRightOperand())) {\n                        $ps_languageId = 0 + $param->getRightOperand();\n                    }\n                    break;\n                case 'active_only':\n                case 'preview':\n                    $ps_preview = $param->getRightOperand();\n                    break;\n                case 'publication':\n                    $ps_publicationId = (int) $param->getRightOperand();\n                    break;\n                case 'article_type':\n                    $one_arttp_value = $param->getRightOperand();\n                    $one_arttp_type = $param->getOperator()->getName();\n                    if ('is' == $one_arttp_type) {\n                        $mc_article_types_yes[] = $one_arttp_value;\n                        $mc_mapCons = true;\n                    }\n                    if ('not' == $one_arttp_type) {\n                        $mc_article_types_no[] = $one_arttp_value;\n                        $mc_mapCons = true;\n                    }\n                    break;\n                case 'author':\n                    $one_user_value = $param->getRightOperand();\n                    $one_user_type = $param->getOperator()->getName();\n                    if ('is' == $one_user_type) {\n                        $mc_authors_yes[] = $one_user_value;\n                        $mc_mapCons = true;\n                    }\n                    if ('not' == $one_user_type) {\n                        $mc_authors_no[] = $one_user_value;\n                        $mc_mapCons = true;\n                    }\n                    break;\n                case 'article':\n                    $one_article_value = $param->getRightOperand();\n                    $one_article_type = $param->getOperator()->getName();\n                    if ('is' == $one_article_type) {\n                        $mc_articles_yes[] = $one_article_value;\n                        $mc_mapCons = true;\n                    }\n                    if ('not' == $one_article_type) {\n                        $mc_articles_no[] = $one_article_value;\n                        $mc_mapCons = true;\n                    }\n                    break;\n                case 'issue':\n                    $mc_issues[] = $param->getRightOperand();\n                    $mc_mapCons = true;\n                    break;\n                case 'section':\n                    $mc_sections[] = $param->getRightOperand();\n                    $mc_mapCons = true;\n                    break;\n                case 'section_name':\n                    $mc_section_names[] = $param->getRightOperand();\n                    $mc_mapCons = true;\n                    break;\n                case 'topic':\n                    $mc_topics[] = $param->getRightOperand();\n                    $mc_mapCons = true;\n                    break;\n                case 'topic_name':\n                    $mc_topic_names[] = $param->getRightOperand();\n                    $mc_mapCons = true;\n                    break;\n                case 'matchalltopics':\n                    $mc_topics_matchall = $param->getRightOperand();\n                    break;\n                case 'matchanytopic':\n                    $mc_topics_matchall = !$param->getRightOperand();\n                    break;\n                case 'multimedia':\n                    $mc_multimedia[] = $param->getRightOperand();\n                    $mc_mapCons = true;\n                    break;\n                case 'area':\n                    $mc_areas[] = json_decode($param->getRightOperand());\n                    $mc_mapCons = true;\n                    break;\n                case 'matchallareas':\n                    $mc_areas_matchall = $param->getRightOperand();\n                    break;\n                case 'matchanyarea':\n                    $mc_areas_matchall = !$param->getRightOperand();\n                    break;\n                case 'exactarea':\n                    $mc_areas_exact = $param->getRightOperand();\n                    break;\n                case 'date':\n                    $mc_dates[$param->getOperator()->getName()] = $param->getRightOperand();\n                    $mc_mapCons = true;\n                    break;\n                case 'icon':\n                    $mc_icons[] = $param->getRightOperand();\n                    $mc_mapCons = true;\n                    break;\n                default:\n                    break;\n            }\n        }\n        \n        // constrained maps ned to have set publication\n        if ($mc_mapCons && (!$ps_publicationId)) {\n            return array();\n        }\n\n        if ((!$ps_languageId) || (0 >= $ps_languageId)) {\n            $ps_languageId = $Context->language->number;\n        }\n\n\n        if ((!$ps_languageId) || (0 >= $ps_languageId)) {\n            return array();\n        }\n\n        if (!CampCache::IsEnabled()) {$p_skipCache = true;}\n\n        $ps_orders = array();\n        if ((!$p_order) || (!is_array($p_order)) || (0 == count($p_order))) {\n            if ($mc_mapCons) {\n                $ps_orders = array(array('a.Number' => 'DESC'), array('m.id' => 'DESC'));\n            }\n        } else {\n            $allowed_order_dirs = array('DESC' => true, 'ASC' => true);\n            foreach ($p_order as $one_order_column => $one_order_dir) {\n                $one_dir = strtoupper($one_order_dir);\n                if (!array_key_exists($one_dir, $allowed_order_dirs)) {continue;}\n                switch(strtolower($one_order_column)) {\n                    case 'article':\n                        if (!$mc_mapCons) {break;}\n                        $ps_orders[] = array('a.Number' => $one_dir);\n                        break;\n                    case 'map':\n                        $ps_orders[] = array('m.id' => $one_dir);\n                        break;\n                    case 'name':\n                        $ps_orders[] = array('c.poi_name' => $one_dir);\n                        break;\n                }\n            }\n        }\n\n        if (((0 == $ps_mapId) || (!$ps_mapId)) && (!$mc_mapCons)) {return array();}\n\n        $mc_limit = 0 + $p_limit;\n        if (0 > $mc_limit) {$mc_limit = 0;}\n\n        $mc_start = 0 + $p_start;\n        if (0 > $mc_start) {$mc_start = 0;}\n\n        $dataArray = array();\n        $objsArray = array();\n        $cachedData = null;\n\n        $paramsArray_arr = array();\n        $paramsArray_obj = array();\n\n        $cacheList_arr = null;\n        $cacheList_obj = null;\n\n        if (!$p_skipCache) {\n            $paramsArray_arr['as_array'] = true;\n            $paramsArray_arr['map_id'] = $ps_mapId;\n            $paramsArray_arr['publication_id'] = $ps_publicationId;\n            $paramsArray_arr['language_id'] = $ps_languageId;\n            $paramsArray_arr['preview'] = $ps_preview;\n    \n            $paramsArray_arr['map_cons'] = $mc_mapCons;\n            $paramsArray_arr['article_types_yes'] = $mc_article_types_yes;\n            $paramsArray_arr['article_types_no'] = $mc_article_types_no;\n            $paramsArray_arr['authors_yes'] = $mc_authors_yes;\n            $paramsArray_arr['authors_no'] = $mc_authors_no;\n            $paramsArray_arr['articles_yes'] = $mc_articles_yes;\n            $paramsArray_arr['articles_no'] = $mc_articles_no;\n            $paramsArray_arr['issues'] = $mc_issues;\n            $paramsArray_arr['sections'] = $mc_sections;\n            $paramsArray_arr['section_names'] = $mc_section_names;\n            $paramsArray_arr['topics'] = $mc_topics;\n            $paramsArray_arr['topic_names'] = $mc_topic_names;\n            $paramsArray_arr['topics_matchall'] = $mc_topics_matchall;\n            $paramsArray_arr['multimedia'] = $mc_multimedia;\n            $paramsArray_arr['areas'] = $mc_areas;\n            $paramsArray_arr['areas_matchall'] = $mc_areas_matchall;\n            $paramsArray_arr['areas_exact'] = $mc_areas_exact;\n            $paramsArray_arr['dates'] = $mc_dates;\n            $paramsArray_arr['icons'] = $mc_icons;\n\n            $paramsArray_arr['orders'] = $ps_orders;\n            $paramsArray_arr['limit'] = $mc_limit;\n            $paramsArray_arr['start'] = $mc_start;\n\n            $paramsArray_obj = $paramsArray_arr;\n            $paramsArray_obj['as_array'] = false;\n\n            $cacheList_arr = new CampCacheList($paramsArray_arr, __METHOD__);\n            $cacheList_obj = new CampCacheList($paramsArray_obj, __METHOD__);\n\n            if ($ps_saveArray) {\n                $cachedData = $cacheList_arr->fetchFromCache();\n                if ($cachedData !== false && is_array($cachedData)) {\n                    $p_count = $cachedData['count'];\n                    $p_rawData = $cachedData['data'];\n                }\n            }\n            {\n                $cachedData = $cacheList_obj->fetchFromCache();\n                if ($cachedData !== false && is_array($cachedData)) {\n                    $p_count = $cachedData['count'];\n                    return $cachedData['data'];\n                }\n            }\n\n        }\n\n        global $g_ado_db;\n\n        if (0 < count($mc_authors_yes)) {\n            $author_ids_req_names = ArticleAuthor::BuildAuthorIdsQuery($mc_authors_yes);\n            $author_ids_req_alias = AuthorAlias::BuildAuthorIdsQuery($mc_authors_yes);\n\n            if ($author_ids_req_names) {\n                $rows = $g_ado_db->GetAll($author_ids_req_names);\n                if (is_array($rows)) {\n                    foreach ($rows as $row) {\n                        $mc_users_yes[] = trim(strtolower($row['id']));\n                    }\n                }\n            }\n            if ($author_ids_req_alias) {\n                $rows = $g_ado_db->GetAll($author_ids_req_alias);\n                if (is_array($rows)) {\n                    foreach ($rows as $row) {\n                        $mc_users_yes[] = trim(strtolower($row['id']));\n                    }\n                }\n            }\n\n            if (0 == count($mc_users_yes)) {return array();}\n        }\n        if (0 < count($mc_authors_no)) {\n            $author_ids_req_names = ArticleAuthor::BuildAuthorIdsQuery($mc_authors_no);\n            $author_ids_req_alias = AuthorAlias::BuildAuthorIdsQuery($mc_authors_no);\n\n            if ($author_ids_req_names) {\n                $rows = $g_ado_db->GetAll($author_ids_req_names);\n                if (is_array($rows)) {\n                    foreach ($rows as $row) {\n                        $mc_users_no[] = trim(strtolower($row['id']));\n                    }\n                }\n            }\n            if ($author_ids_req_alias) {\n                $rows = $g_ado_db->GetAll($author_ids_req_alias);\n                if (is_array($rows)) {\n                    foreach ($rows as $row) {\n                        $mc_users_no[] = trim(strtolower($row['id']));\n                    }\n                }\n            }\n        }\n\n        if (0 < count($mc_section_names)) {\n            $section_ids_req_names = Section::BuildSectionIdsQuery($mc_section_names, $ps_publicationId);\n\n            if ($section_ids_req_names) {\n                $rows = $g_ado_db->GetAll($section_ids_req_names);\n                if (is_array($rows)) {\n                    foreach ($rows as $row) {\n                        $mc_sections[] = trim(strtolower($row['id']));\n                    }\n                }\n            }\n\n            if (0 == count($mc_sections)) {return array();}\n        }\n\n        if (0 < count($mc_topic_names)) {\n            $topic_ids_req_names = TopicName::BuildTopicIdsQuery($mc_topic_names);\n\n            if ($topic_ids_req_names) {\n                $rows = $g_ado_db->GetAll($topic_ids_req_names);\n                if (is_array($rows)) {\n                    foreach ($rows as $row) {\n                        $mc_topics[] = trim(strtolower($row['id']));\n                    }\n                }\n            }\n\n            if (0 == count($mc_topics)) {return array();}\n        }\n\n        $ps_orders = array();\n        if ((!$p_order) || (!is_array($p_order)) || (0 == count($p_order))) {\n            if ($mc_mapCons) {\n                $ps_orders = array(array('a.PublishDate' => 'DESC'), array('a.Number' => 'DESC'), array('m.id' => 'DESC'));\n            }\n        } else {\n            $allowed_order_dirs = array('DESC' => true, 'ASC' => true);\n            foreach ($p_order as $one_order_column => $one_order_dir) {\n                $one_dir = strtoupper($one_order_dir);\n                if (!array_key_exists($one_dir, $allowed_order_dirs)) {continue;}\n                switch(strtolower($one_order_column)) {\n                    case 'publish':\n                    case 'published':\n                        if (!$mc_mapCons) {break;}\n                        $ps_orders[] = array('a.PublishDate' => $one_dir);\n                        break;\n                    case 'article':\n                        if (!$mc_mapCons) {break;}\n                        $ps_orders[] = array('a.Number' => $one_dir);\n                        break;\n                    case 'map':\n                        $ps_orders[] = array('m.id' => $one_dir);\n                        break;\n                    case 'name':\n                        $ps_orders[] = array('c.poi_name' => $one_dir);\n                        break;\n                }\n            }\n        }\n\n        if (((0 == $ps_mapId) || (!$ps_mapId)) && (!$mc_mapCons)) {return array();}\n\n        $queryStr = '';\n        $queryStr_start = '';\n\n        $queryStr_start .= 'SELECT DISTINCT ml.id AS ml_id, mll.id as mll_id, ml.fk_location_id AS loc_id, mll.fk_content_id AS con_id, ';\n        $queryStr_start .= 'ml.poi_style AS poi_style, ml.rank AS rank, mll.poi_display AS poi_display, ';\n\n        // these few lines below are just for data for list-of-objects array\n        $queryStr_start .= 'l.poi_radius AS l_radius, l.IdUser AS l_user, l.time_updated AS l_updated, ';\n        if ($mc_mapCons)\n        {\n            $queryStr_start .= 'm.id AS m_id, m.IdUser AS m_user, m.fk_article_number AS art_number, GROUP_CONCAT(DISTINCT m.fk_article_number ORDER BY m.fk_article_number DESC) AS art_numbers, ';\n        }\n\n        $multimedia_def = \"CONCAT(mu.id, \\\"-\\\", mlmu.id)\";\n        if ($mc_mapCons) {\n            $multimedia_def = 'mu.id';\n        }\n\n        $queryStr_start .= \"(SELECT $multimedia_def FROM MapLocationMultimedia AS mlmu INNER JOIN Multimedia AS mu ON mlmu.fk_multimedia_id = mu.id WHERE mlmu.fk_maplocation_id = ml.id AND mu.media_type = 'image' ORDER BY mu.id LIMIT 1) AS image_mm, \";\n        $queryStr_start .= \"(SELECT $multimedia_def FROM MapLocationMultimedia AS mlmu INNER JOIN Multimedia AS mu ON mlmu.fk_multimedia_id = mu.id WHERE mlmu.fk_maplocation_id = ml.id AND mu.media_type = 'video' ORDER BY mu.id LIMIT 1) AS video_mm, \";\n\n        $queryStr_start .= 'c.IdUser AS c_user, c.time_updated AS c_updated, ';\n\n        $queryStr_start .= 'AsText(l.poi_location) AS loc, l.poi_type AS poi_type, l.poi_type_style AS poi_type_style, ';\n\n        $queryStr_start .= 'c.poi_name AS poi_name, c.poi_link AS poi_link, c.poi_perex AS poi_perex, ';\n        $queryStr_start .= 'c.poi_content_type AS poi_content_type, c.poi_content AS poi_content, c.poi_text AS poi_text ';\n\n        $queryStr .= 'FROM MapLocations AS ml INNER JOIN MapLocationLanguages AS mll ON ml.id = mll.fk_maplocation_id ';\n        $queryStr .= 'INNER JOIN Locations AS l ON l.id = ml.fk_location_id ';\n        $queryStr .= 'INNER JOIN LocationContents AS c ON c.id = mll.fk_content_id ';\n\n        $query_mcons = '';\n        $article_mcons = false;\n        $mc_filter_mm = false;\n        $mc_filter_image = false;\n        $mc_filter_video = false;\n\n        if ($mc_mapCons)\n        {\n            $queryStr .= 'INNER JOIN Maps AS m ON m.id = ml.fk_map_id ';\n            $queryStr .= 'INNER JOIN Articles AS a ON m.fk_article_number = a.Number ';\n            if ((0 < count($mc_users_yes)) || (0 < count($mc_users_no))) {\n                $queryStr .= 'INNER JOIN ArticleAuthors AS aa ON aa.fk_article_number = a.Number ';\n            }\n\n            $query_mcons = \"a.IdPublication = $ps_publicationId AND \";\n            $article_mcons = false;\n\n            foreach ($mc_multimedia as $one_multimedia) {\n                if ('any' == $one_multimedia) {$mc_filter_mm = true;}\n                if ('image' == $one_multimedia) {$mc_filter_image = true;}\n                if ('video' == $one_multimedia) {$mc_filter_video = true;}\n            }\n\n            if (0 < count($mc_users_yes)) {\n                $query_mcons .= 'aa.fk_author_id IN (' . implode(', ', $mc_users_yes) . ') AND ';\n                $article_mcons = true;\n            }\n            if (0 < count($mc_users_no)) {\n                $query_mcons .= 'aa.fk_author_id NOT IN (' . implode(', ', $mc_users_no) . ') AND ';\n                $article_mcons = true;\n            }\n\n            if (0 < count($mc_article_types_yes)) {\n                $mc_correct = true;\n                foreach ($mc_article_types_yes as $val) {\n                    if (false !== stripos($val, '\\'')) {$mc_correct = false; break;}\n                    if (false !== stripos($val, '\"')) {$mc_correct = false; break;}\n                }\n                if ($mc_correct) {\n                    $query_mcons .= 'a.Type IN (\\'' . implode('\\', \\'', $mc_article_types_yes) . '\\') AND ';\n                    $article_mcons = true;\n                }\n            }\n            if (0 < count($mc_article_types_no)) {\n                $mc_correct = true;\n                foreach ($mc_article_types_no as $val) {\n                    if (false !== stripos($val, '\\'')) {$mc_correct = false; break;}\n                    if (false !== stripos($val, '\"')) {$mc_correct = false; break;}\n                }\n                if ($mc_correct) {\n                    $query_mcons .= 'a.Type NOT IN (\\'' . implode('\\', \\'', $mc_article_types_no) . '\\') AND ';\n                    $article_mcons = true;\n                }\n            }\n\n            if (0 < count($mc_articles_yes)) {\n                $mc_correct = true;\n                foreach ($mc_articles_yes as $val) {\n                    if (!is_numeric($val)) {$mc_correct = false;}\n                }\n                if ($mc_correct) {\n                    $query_mcons .= 'a.Number IN (' . implode(', ', $mc_articles_yes) . ') AND ';\n                    $article_mcons = true;\n                }\n            }\n            if (0 < count($mc_articles_no)) {\n                $mc_correct = true;\n                foreach ($mc_articles_no as $val) {\n                    if (!is_numeric($val)) {$mc_correct = false;}\n                }\n                if ($mc_correct) {\n                    $query_mcons .= 'a.Number NOT IN (' . implode(', ', $mc_articles_no) . ') AND ';\n                    $article_mcons = true;\n                }\n            }\n\n            if (0 < count($mc_issues)) {\n                $mc_correct = true;\n                foreach ($mc_issues as $val) {\n                    if (!is_numeric($val)) {$mc_correct = false;}\n                }\n                if ($mc_correct) {\n                    $query_mcons .= 'a.NrIssue IN (' . implode(', ', $mc_issues) . ') AND ';\n                    $article_mcons = true;\n                }\n            }\n            if (0 < count($mc_sections)) {\n                $mc_correct = true;\n                foreach ($mc_sections as $val) {\n                    if (!is_numeric($val)) {$mc_correct = false;}\n                }\n                if ($mc_correct) {\n                    $query_mcons .= 'a.NrSection IN (' . implode(', ', $mc_sections) . ') AND ';\n                    $article_mcons = true;\n                }\n            }\n\n            foreach ($mc_dates as $one_date_type => $one_date_value_arr) {\n                if (0 == count($one_date_value_arr)) {continue;}\n\n                $one_date_value = $one_date_value_arr[0];\n                $one_date_value = trim($one_date_value);\n                $one_date_value = trim($one_date_value, \"\\\"'\");\n\n                $one_date_value = str_replace(\"'\", \"\\\"\", $one_date_value);\n                $one_date_usage = 'CAST(a.PublishDate AS DATE) ';\n                $one_date_known = false;\n                if ('smaller_equal' == $one_date_type) {$one_date_usage .= '<= '; $one_date_known = true;}\n                if ('smaller' == $one_date_type) {$one_date_usage .= '< '; $one_date_known = true;}\n                if ('greater_equal' == $one_date_type) {$one_date_usage .= '>= '; $one_date_known = true;}\n                if ('greater' == $one_date_type) {$one_date_usage .= '> '; $one_date_known = true;}\n                if ('is' == $one_date_type) {$one_date_usage .= '= '; $one_date_known = true;}\n                if ('not' == $one_date_type) {$one_date_usage .= '<> '; $one_date_known = true;}\n                if (!$one_date_known) {continue;}\n                $one_date_usage .= \"'$one_date_value' AND \";\n    \n                $query_mcons .= $one_date_usage;\n                $article_mcons = true;\n            }\n\n            $mc_icons_usage = array();\n            foreach ($mc_icons as $one_icon_value) {\n                $one_icon_value = str_replace(\"'\", \"\\\"\", $one_icon_value);\n                if (0 < strlen($one_icon_value)) {\n                    $mc_icons_usage[] = $one_icon_value;\n                }\n            }\n            if (0 < count($mc_icons_usage)) {\n                $query_mcons .= \"ml.poi_style IN ('\" . implode(\"', '\", $mc_icons_usage) . \"') AND \";\n                $article_mcons = true;\n            }\n\n            if (0 < count($mc_topics))\n            {\n                $mc_topics_list = array();\n\n                $mc_topics_conn = 'OR';\n                if ($mc_topics_matchall) {\n                    $mc_topics_conn = 'AND';\n                }\n\n                foreach ($mc_topics as $one_topic) {\n                    if (!is_numeric($one_topic)) {continue;}\n                    $mc_topics_list[] = 'EXISTS (SELECT at.TopicId FROM ArticleTopics AS at WHERE a.Number = at.NrArticle AND at.TopicId IN (' . Topic::BuildAllSubtopicsQuery($one_topic, false) . '))';\n                }\n\n                if (0 < count($mc_topics_list)) {\n                    $query_mcons .= '(' . implode(\" $mc_topics_conn \", $mc_topics_list) . ') AND ';\n                    $article_mcons = true;\n                }\n\n\n            }\n\n            $mc_areas_list = array();\n\n            $mc_areas_conn = 'OR';\n            if ($mc_areas_matchall) {\n                $mc_areas_conn = 'AND';\n            }\n\n            foreach ($mc_areas as $one_area) {\n                if (is_object($one_area)) {\n                    $one_area = get_object_vars($one_area);\n                }\n\n                $mc_rectangle = $one_area['rectangle'];\n                $mc_polygon = $one_area['polygon'];\n\n                if ($mc_rectangle && (2 == count($mc_rectangle))) {\n                    $area_cons_res = Geo_MapLocation::GetGeoSearchSQLCons($mc_rectangle, 'rectangle', 'l');\n                    if (!$area_cons_res['error']) {\n                        $mc_areas_list[] = $area_cons_res['cons'];\n                        $article_mcons = true;\n                    }    \n                }\n\n                if ($mc_polygon && (3 <= count($mc_polygon))) {\n                    $area_cons_res = Geo_MapLocation::GetGeoSearchSQLCons($mc_polygon, 'polygon', 'l');\n\n                    $area_cons_res_finer = null;\n                    if ($mc_areas_exact) {\n                        $area_cons_res_finer = Geo_MapLocation::GetGeoSearchPointInPolygon($mc_polygon, 'l');\n                    }\n\n                    if (!$area_cons_res['error']) {\n                        $one_area_cons = $area_cons_res['cons'];\n\n                        if ($mc_areas_exact && (!$area_cons_res_finer['error'])) {\n                            $one_area_cons = \"($one_area_cons AND \" . $area_cons_res_finer['cons'] . ')';\n                        }\n\n                        $mc_areas_list[] = $one_area_cons;\n                        $article_mcons = true;\n                    }\n                }\n            }\n\n            if (0 < count($mc_areas_list)) {\n                $query_mcons .= '(' . implode(\" $mc_areas_conn \", $mc_areas_list) . ') AND ';\n                $article_mcons = true;\n            }\n\n            $mmu_test_join = '%%mmu_test_join%%';\n            $mmu_test_spec = '%%mmu_test_spec%%';\n            $multimedia_test_common = \"EXISTS (SELECT mlmu.id FROM MapLocationMultimedia AS mlmu $mmu_test_join WHERE mlmu.fk_maplocation_id = ml.id $mmu_test_spec) AND \";\n\n            $multimedia_test_basic = $multimedia_test_common;\n            $multimedia_test_basic = str_replace($mmu_test_join, '', $multimedia_test_basic);\n            $multimedia_test_basic = str_replace($mmu_test_spec, '', $multimedia_test_basic);\n\n            $multimedia_test_spec = $multimedia_test_common;\n            $multimedia_test_spec = str_replace($mmu_test_join, 'INNER JOIN Multimedia AS mu ON mlmu.fk_multimedia_id = mu.id ', $multimedia_test_spec);\n\n            $multimedia_test_image = $multimedia_test_spec;\n            $multimedia_test_image = str_replace($mmu_test_spec, \"AND mu.media_type = 'image'\", $multimedia_test_image);\n            $multimedia_test_video = $multimedia_test_spec;\n            $multimedia_test_video = str_replace($mmu_test_spec, \"AND mu.media_type = 'video'\", $multimedia_test_video);\n\n            if ($mc_filter_image) {\n                $query_mcons .= $multimedia_test_image;\n                $article_mcons = true;\n            }\n            if ($mc_filter_video) {\n                $query_mcons .= $multimedia_test_video;\n                $article_mcons = true;\n            }\n            if ($mc_filter_mm) {\n                $query_mcons .= $multimedia_test_basic;\n                $article_mcons = true;\n           }\n\n            $queryStr .= 'WHERE ';\n\n            if ($article_mcons) {\n                $queryStr .= $query_mcons;\n            }\n\n            $queryStr .= \"a.Published = 'Y' AND a.IdLanguage = $ps_languageId \";\n\n        }\n        else\n        {\n\n            $queryStr .= \"WHERE ml.fk_map_id = $ps_mapId \";\n\n        }\n\n        $queryStr_mid = \"\";\n        $queryStr_mid .= \"AND mll.fk_language_id = $ps_languageId \";\n\n        if ($ps_preview)\n        {\n            $queryStr_mid .= \"AND mll.poi_display = 1 \";\n        }\n\n        if ($mc_mapCons)\n        {\n            $queryStr_mid .= 'GROUP BY ml.fk_location_id, mll.fk_content_id, ml.poi_style, mll.poi_display, image_mm, video_mm ';\n        }\n\n        $queryStr .= $queryStr_mid;\n\n        $queryStr = $queryStr_start . $queryStr;\n\n        $queryStr .= 'ORDER BY ';\n        foreach ($ps_orders as $one_order) {\n            foreach ($one_order as $cur_order_col => $cur_order_dir) {\n                $queryStr .= \"$cur_order_col $cur_order_dir, \";\n            }\n        }\n        $queryStr .= 'ml.rank, ml.id, mll.id';\n\n        $rows = $g_ado_db->GetAll($queryStr);\n        if (is_array($rows)) {\n            $p_count = count($rows);\n            if ($mc_limit) {\n                $rows = array_slice($rows, $mc_start, $mc_limit);\n            }\n            if ($mc_start && (!$mc_limit)) {\n                $rows = array_slice($rows, $mc_start);\n            }\n        }\n\n        $mm_objs = array();\n\n        if (is_array($rows)) {\n            foreach ($rows as $row) {\n                $tmp_loc = trim(strtolower($row['loc']));\n                $loc_matches = array();\n                if (!preg_match('/^point\\((?P<latitude>[\\d.-]+[eE]?[\\d.-]*)\\s(?P<longitude>[\\d.-]+[eE]?[\\d.-]*)\\)$/', $tmp_loc, $loc_matches)) {continue;}\n                $tmp_latitude = $loc_matches['latitude'];\n                $tmp_longitude = $loc_matches['longitude'];\n\n                $tmpPoint = array();\n                $tmpPoint['latitude'] = $tmp_latitude;\n                $tmpPoint['longitude'] = $tmp_longitude;\n\n                $tmpPoint['loc_id'] = $row['ml_id'];\n                $tmpPoint['con_id'] = $row['mll_id'];\n\n                $tmpPoint['style'] = $row['poi_style'];\n                $tmpPoint['rank'] = $row['rank'];\n                $tmpPoint['display'] = $row['poi_display'];\n\n                $tmpPoint['title'] = $row['poi_name'];\n                $tmpPoint['link'] = $row['poi_link'];\n\n                $tmpPoint['perex'] = $row['poi_perex'];\n                $tmpPoint['content_type'] = $row['poi_content_type'];\n                $tmpPoint['content'] = $row['poi_content'];\n                $tmpPoint['text'] = $row['poi_text'];\n\n                $tmpPoint['image_mm'] = 0;\n                $tmpPoint['image_src'] = '';\n                $tmpPoint['image_width'] = '';\n                $tmpPoint['image_height'] = '';\n\n                $tmp_image = null;\n                $tmp_video = null;\n\n                if ($row['image_mm']) {\n                    $multimedia_spec = $row['image_mm'];\n                    $multimedia_link = $multimedia_spec;\n\n                    // the dynamic maps (i.e. with mc_mapCons) have grouping by multimedia,\n                    // while article maps have all multimedia separated (and read with concat)\n                    if (!$mc_mapCons) {\n                        $multimedia_spec_arr = explode('-', $multimedia_spec);\n                        if (2 == count($multimedia_spec_arr)) {\n                            $multimedia_spec = 0 + $multimedia_spec_arr[0];\n                            $multimedia_link = 0 + $multimedia_spec_arr[1];\n                        }\n                    }\n\n                    $tmpPoint['image_mm'] = $multimedia_link;\n\n                    $tmp_image = new Geo_Multimedia($multimedia_spec);\n                    if ($tmp_image) {\n                        $tmpPoint['image_src'] = $tmp_image->getSrc();\n                        $tmpPoint['image_width'] = $tmp_image->getWidth();\n                        $tmpPoint['image_height'] = $tmp_image->getHeight();\n                    }\n                }\n\n                $tmpPoint['video_mm'] = 0;\n                $tmpPoint['video_id'] = '';\n                $tmpPoint['video_type'] = '';\n                $tmpPoint['video_width'] = '';\n                $tmpPoint['video_height'] = '';\n\n                if ($row['video_mm']) {\n                    $multimedia_spec = $row['video_mm'];\n                    $multimedia_link = $multimedia_spec;\n                    // the dynamic maps (i.e. with mc_mapCons) have grouping by multimedia,\n                    // while article maps have all multimedia separated (and read with concat)\n                    if (!$mc_mapCons) {\n                        $multimedia_spec_arr = explode('-', $multimedia_spec);\n                        if (2 == count($multimedia_spec_arr)) {\n                            $multimedia_spec = 0 + $multimedia_spec_arr[0];\n                            $multimedia_link = 0 + $multimedia_spec_arr[1];\n                        }\n                    }\n\n                    $tmpPoint['video_mm'] = $multimedia_link;\n\n                    $tmp_video = new Geo_Multimedia($multimedia_spec);\n                    if ($tmp_video) {\n                        $tmpPoint['video_id'] = $tmp_video->getSrc();\n                        $tmpPoint['video_type'] = $tmp_video->getSpec();\n                        $tmpPoint['video_width'] = $tmp_video->getWidth();\n                        $tmpPoint['video_height'] = $tmp_video->getHeight();\n                    }\n                }\n\n                if ($tmp_image || $tmp_video) {\n                    $mm_objs[$row['ml_id']] = array('image' => $tmp_image, 'video' => $tmp_video);\n                }\n\n                // for the list-of-objects array\n                $tmpPoint['map_id'] = $ps_mapId;\n                $tmpPoint['art_number'] = 0;\n                $tmpPoint['art_numbers'] = '';\n                if ($mc_mapCons) {\n                    $tmpPoint['map_id'] = $row['m_id'];\n                    $tmpPoint['art_number'] = $row['art_number'];\n                    $tmpPoint['art_numbers'] = $row['art_numbers'];\n                }\n                $tmpPoint['geo_id'] = $row['loc_id'];\n                $tmpPoint['geo_type'] = $row['poi_type'];\n                $tmpPoint['geo_style'] = $row['poi_type_style'];\n                $tmpPoint['geo_radius'] = $row['l_radius'];\n                $tmpPoint['geo_user'] = $row['l_user'];\n                $tmpPoint['geo_updated'] = $row['l_updated'];\n                $tmpPoint['txt_id'] = $row['con_id'];\n                $tmpPoint['txt_user'] = $row['c_user'];\n                $tmpPoint['txt_updated'] = $row['c_updated'];\n\n                $dataArray[] = $tmpPoint;\n\n            }\n        }\n\n        if (0 == count($dataArray)) {return array();}\n\n        $dataArray_tmp = $dataArray;\n        $objsArray = array();\n        $dataArray = array();\n\n        foreach ($dataArray_tmp as $one_poi)\n        {\n            {\n                $one_poi_source = array(\n                    'id' => $one_poi['loc_id'],\n                    'fk_map_id' => $one_poi['map_id'],\n                    'fk_location_id' => $one_poi['geo_id'],\n                    'poi_style' => $one_poi['style'],\n                    'rank' => $one_poi['rank'],\n                );\n                $one_poi_obj = new self($one_poi_source, true);\n    \n                $one_geo_source = array(\n                    'poi_location' => null,\n                    'poi_type' => $one_poi['geo_type'],\n                    'poi_type_style' => $one_poi['geo_style'],\n                    'poi_center' => null,\n                    'poi_radius' => $one_poi['geo_radius'],\n                    'IdUser' => $one_poi['geo_user'],\n                    'time_updated' => $one_poi['geo_updated'],\n                    'latitude' => $one_poi['latitude'],\n                    'longitude' => $one_poi['longitude'],\n                );\n                $one_poi_obj->location = new Geo_Location($one_geo_source, true);\n    \n                $one_lan_source = array(\n                    'id' => $one_poi['con_id'],\n                    'fk_maplocation_id' => $one_poi['loc_id'],\n                    'fk_language_id' => $ps_languageId,\n                    'fk_content_id' => $one_poi['txt_id'],\n                    'poi_display' => $one_poi['display'],\n                );\n                $one_poi_obj->setLanguage($ps_languageId, new Geo_MapLocationLanguage(NULL, 0, $one_lan_source, true));\n    \n                $one_txt_source = array(\n                    'id' => $one_poi['txt_id'],\n                    'poi_name' => $one_poi['title'],\n                    'poi_link' => $one_poi['link'],\n                    'poi_perex' => $one_poi['perex'],\n                    'poi_content_type' => $one_poi['content_type'],\n                    'poi_content' => $one_poi['content'],\n                    'poi_text' => $one_poi['text'],\n                    'IdUser' => $one_poi['txt_user'],\n                    'time_updated' => $one_poi['txt_updated'],\n                );\n                $one_poi_obj->setContent($ps_languageId, new Geo_MapLocationContent(NULL, NULL, $one_txt_source, true));\n\n                if(array_key_exists($one_poi['loc_id'], $mm_objs)) {\n                    $poi_mm = $mm_objs[$one_poi['loc_id']];\n                    $one_poi_obj->multimedia = array();\n                    foreach ($poi_mm as $one_mm) {\n                        if ($one_mm) {\n                            $one_poi_obj->multimedia[] = $one_mm;\n                        }\n                    }\n                }\n\n                $objsArray[] = $one_poi_obj;\n            }\n\n            if ((!$p_skipCache) || ($ps_saveArray)) {\n                $dataArray[] = $one_poi;\n            }\n        }\n\n        if ((!$p_skipCache) && CampCache::IsEnabled()) {\n            $cacheList_arr->storeInCache(array('count' => $p_count, 'data' => $dataArray));\n            $cacheList_obj->storeInCache(array('count' => $p_count, 'data' => $objsArray));\n        }\n\n        if (empty(self::$s_found_maplocations_list_ext)) {\n            self::$s_found_maplocations_list_ext = array();\n        }\n        self::$s_found_maplocations_list_ext[$list_spec_str] = array(\n            'count' => $p_count,\n            'list_raw' => $dataArray,\n            'list_obj' => $objsArray,\n        );\n\n        if ($ps_saveArray) {\n            $p_rawData = $dataArray;\n        }\n\n        return $objsArray;\n\n    } // fn GetListExt\n\n    /**\n     * Returns SQL query for limiting POIs on a given polygon\n     *\n     * @param mixed $p_coordinates\n     *    An array of coordinate lon/lat pairs\n     * @param string $p_polygonType\n     *    Polygon type: rectangle (two corners), or polygons with clockwise or counterclockwise corners\n     * @param string $p_tableAlias\n     *    Table prefix for the SQL query\n     *\n     * @return mixed\n     */\n    public static function GetGeoSearchSQLCons($p_coordinates, $p_polygonType = 'rectangle', $p_tableAlias = 'l')\n    {\n        if (is_object($p_coordinates)) {\n            $p_coordinates = get_object_vars($p_coordinates);\n        }\n\n        $queryCons = '';\n        $paramError = false;\n\n        if (!ctype_alnum($p_tableAlias)) {\n            $paramError = true;\n            return array('error' => true, 'cons' => '');\n        }\n\n        $p_polygonType = strtolower('' . $p_polygonType);\n        if (!array_key_exists($p_polygonType, array('rectangle' => 1, 'polygon' => 1))) {\n            $paramError = true;\n            return array('error' => true, 'cons' => '');\n        }\n\n        if ('rectangle' == $p_polygonType)\n        {\n            $queryCons_1 = '';\n            $queryCons_2 = '';\n\n            $queryCons_1 .= \"Intersects(GeomFromText('Polygon((%%x0%% %%y0%%,%%x0%% %%y1%%,%%x1%% %%y1%%,%%x1%% %%y0%%,%%x0%% %%y0%%))'),$p_tableAlias.poi_location) \";\n            $queryCons_2 .= \"(Intersects(GeomFromText('Polygon((%%x0%% %%y0%%,%%x0%% 180,%%x1%% 180,%%x1%% %%y0%%,%%x0%% %%y0%%))'),$p_tableAlias.poi_location) OR Intersects(GeomFromText('Polygon((%%x0%% -180,%%x0%% %%y1%%,%%x1%% %%y1%%,%%x1%% -180,%%x0%% -180))'),$p_tableAlias.poi_location)) \";\n    \n            $loc_left = $p_coordinates[0];\n            $loc_right = $p_coordinates[1];\n            if (is_object($loc_right)) {\n                $loc_right = get_object_vars($loc_right);\n            }\n            if (is_object($loc_left)) {\n                $loc_left = get_object_vars($loc_left);\n            }\n\n            $left_lon = '' . $loc_left['longitude'];\n            $left_lat = '' . $loc_left['latitude'];\n            $right_lon = '' . $loc_right['longitude'];\n            $right_lat = '' . $loc_right['latitude'];\n    \n            if (!is_numeric($left_lon)) {$left_lon = '0';}\n            if (!is_numeric($left_lat)) {$left_lat = '0';}\n            if (!is_numeric($right_lon)) {$right_lon = '0';}\n            if (!is_numeric($right_lat)) {$right_lat = '0';}\n    \n            $south_lat = $right_lat;\n            $north_lat = $left_lat;\n            if ($south_lat > $north_lat)\n            {\n                $south_lat = $left_lat;\n                $north_lat = $right_lat;\n            }\n    \n            $east_lon = $left_lon;\n            $west_lon = $right_lon;\n    \n            if ($east_lon > $west_lon)\n            {\n                $queryCons .= $queryCons_2;\n            }\n            else\n            {\n                $queryCons .= $queryCons_1;\n            }\n    \n            $queryCons = str_replace('%%y0%%', $east_lon, $queryCons);\n            $queryCons = str_replace('%%y1%%', $west_lon, $queryCons);\n            $queryCons = str_replace('%%x0%%', $south_lat, $queryCons);\n            $queryCons = str_replace('%%x1%%', $north_lat, $queryCons);\n\n        }\n\n        if ((0 < count($p_polygonType)) && ('polygon' == $p_polygonType))\n        {\n            $polygon_spec = '';\n\n            $ind_start = 0;\n            $ind_stop = count($p_coordinates) - 1;\n            $ind_step = 1;\n\n            $first_corner = $p_coordinates[$ind_start];\n            if (is_object($first_corner)) {\n                $first_corner = get_object_vars($first_corner);\n            }\n\n            $first_lon = $first_corner['longitude'];\n            $first_lat = $first_corner['latitude'];\n\n            for ($ind = $ind_start; ; $ind += $ind_step) {\n\n                $corner = $p_coordinates[$ind];\n                if (is_object($corner)) {\n                    $corner = get_object_vars($corner);\n                }\n\n                $one_lon = $corner['longitude'];\n                $one_lat = $corner['latitude'];\n                if ((!is_numeric($one_lon)) || (!is_numeric($one_lat))) {\n                    $paramError = true;\n                    break;\n                }\n\n                $polygon_spec .= \"$one_lat $one_lon,\";\n\n                if ($ind == $ind_stop) {break;}\n            }\n            $polygon_spec .= \"$first_lat $first_lon\";\n\n            $queryCons .= \"Intersects(GeomFromText('Polygon(($polygon_spec))'),$p_tableAlias.poi_location) \";\n\n        }\n\n        if ($paramError) {\n            return array('error' => true, 'cons' => '');\n        }\n\n        return array('error' => false, 'cons' => $queryCons);\n    } // fn GetGeoSearchSQLCons\n\n    /**\n     * Returns SQL query for limiting POIs on a given polygon by a previously defined stored function\n     *\n     * @param mixed $p_coordinates\n     *    An array of coordinate lon/lat pairs\n     * @param string $p_tableAlias\n     *    Table prefix for the SQL query\n     *\n     * @return mixed\n     */\n    public static function GetGeoSearchPointInPolygon($p_coordinates, $p_tableAlias = 'l')\n    {\n        if (is_object($p_coordinates)) {\n            $p_coordinates = get_object_vars($p_coordinates);\n        }\n\n        $paramError = false;\n\n        // reasonable limit is +/-180 (used as lat/lon in degrees), but let it work even for intentionally larger (say +-1000 spaced) polygons\n        $min_val = -9000;\n        $max_val = 9000;\n\n        $p_count = count($p_coordinates);\n        $sql_part = 'CheckPolygonPoint(' . $p_tableAlias . '.poi_location, 20, ' . $p_count . ', \"';\n\n        if (1000 < $p_count) {\n            $paramError = true;\n        }\n\n        if (!$paramError) {\n            foreach ($p_coordinates as $corner) {\n                if (is_object($corner)) {\n                    $corner = get_object_vars($corner);\n                }\n    \n                $one_lon = $corner['longitude'];\n                $one_lat = $corner['latitude'];\n                if ((!is_numeric($one_lon)) || (!is_numeric($one_lat))) {\n                    $paramError = true;\n                    break;\n                }\n    \n                $one_lon = 0 + $one_lon;\n                $one_lat = 0 + $one_lat;\n    \n                $correct = true;\n                if (($one_lon < $min_val) || ($one_lon > $max_val)) {\n                    $correct = false;\n                }\n                if (($one_lat < $min_val) || ($one_lat > $max_val)) {\n                    $correct = false;\n                }\n                if (!$correct) {\n                    $paramError = true;\n                    break;\n                }\n    \n                $lat_part = str_pad(trim(substr(sprintf('%1.13f', $one_lat), 0, 19)) . ',', 20, ' ');\n                $lon_part = str_pad(trim(substr(sprintf('%1.13f', $one_lon), 0, 19)) . ',', 20, ' ');\n    \n                $sql_part .= $lat_part . $lon_part;\n    \n            }\n        }\n\n        $sql_part .= '\")';\n\n        if ($paramError) {\n            $sql_part = '1';\n        }\n\n        return array('error' => $paramError, 'cons' => $sql_part);\n\n    } // fn GetGeoSearchPointInPolygon\n\n} // class Geo_MapLocation\n\n\n"
  },
  {
    "path": "newscoop/classes/GeoMapLocationContent.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\nrequire_once dirname(__FILE__) . '/DatabaseObject.php';\nrequire_once dirname(__FILE__) . '/GeoMapLocationLanguage.php';\nrequire_once dirname(__FILE__) . '/IGeoMapLocationContent.php';\n\n/**\n */\nclass Geo_MapLocationContent extends DatabaseObject implements IGeoMapLocationContent\n{\n    const TABLE = 'LocationContents';\n\n    /** @var string */\n    public $m_dbTableName = self::TABLE;\n\n    /** @var array */\n    public $m_keyColumnNames = array('id');\n\n    /** @var array */\n    public $m_columnNames = array(\n        'id',\n        'poi_name',\n        'poi_link',\n        'poi_perex',\n        'poi_content_type',\n        'poi_content',\n        'poi_text',\n        'IdUser',\n        'time_updated',\n    );\n\n\n    /**\n     * @param IGeoMapLocation $mapLocation\n     * @param int $languageId\n     */\n    public function __construct(IGeoMapLocation $mapLocation = NULL, IGeoMapLocationLanguage $locationLanguage = NULL, array $p_contentSource = NULL, $p_forceExists = false)\n    {\n        global $g_ado_db;\n\n        parent::__construct($this->m_columnNames);\n\n        if ($p_contentSource) {\n            $this->fetch($p_contentSource, $p_forceExists);\n            return;\n        }\n\n        if ($mapLocation === NULL || $locationLanguage == NULL) {\n            return;\n        }\n\n        if ($locationLanguage->exists()) {\n            $this->m_data['id'] = $locationLanguage->getContentId();\n            $this->fetch();\n        } else {\n            $this->m_data = array();\n            $this->m_exists = false;\n        }\n    }\n\n\n    /**\n     * Get content\n     * @return string\n     */\n    public function getContent()\n    {\n        return (string) $this->m_data['poi_content'];\n    } // fn getContent\n\n\n    /**\n     * Get text\n     * @return string\n     */\n    public function getText()\n    {\n        return (string) $this->m_data['poi_text'];\n    } // fn getText\n\n\n    /**\n     * Get name\n     * @return string\n     */\n    public function getName()\n    {\n        return (string) $this->m_data['poi_name'];\n    } // fn getName\n\n\n    /**\n     * Inserts text content of the poi\n     *\n     * @param array $poi\n     *\n     * @return int\n     */\n    public static function InsertContent($poi)\n    {\n        global $g_ado_db;\n        global $g_user;\n\n        $queryStr_con_in = 'INSERT INTO ' . self::TABLE . ' (';\n        $queryStr_con_in .= 'poi_name, poi_link, poi_perex, ';\n        $queryStr_con_in .= 'poi_content_type, poi_content, poi_text, IdUser';\n        $queryStr_con_in .= ') VALUES (';\n\n        $quest_marks = array();\n        for ($ind = 0; $ind < 6; $ind++) {$quest_marks[] = '?';}\n        $queryStr_con_in .= implode(', ', $quest_marks);\n\n        $queryStr_con_in .= ', %%user_id%%)';\n\n        $queryStr_con_sl = 'SELECT id FROM ' . self::TABLE . ' WHERE poi_name = ? AND poi_link = ? ';\n        $queryStr_con_sl .= 'AND poi_perex = ? AND poi_content_type = ? AND poi_content = ? AND poi_text = ? ';\n        $queryStr_con_sl .= 'ORDER BY id LIMIT 1';\n\n        // ad B 3)\n        $con_in_params = array();\n\n        $con_in_params[] = '' . $poi['name'];\n        $con_in_params[] = '' . $poi['link'];\n\n        $con_in_params[] = '' . $poi['perex'];\n        $con_in_params[] = 0 + $poi['content_type'];\n        $con_in_params[] = '' . $poi['content'];\n        $con_in_params[] = '' . $poi['text'];\n\n        $con_id = 0;\n\n        $rows = $g_ado_db->GetAll($queryStr_con_sl, $con_in_params);\n        if (is_array($rows)) {\n            foreach ($rows as $row) {\n                $con_id = $row['id'];\n            }\n        }\n\n        if ((!$con_id) || (0 == $con_id))\n        {\n            // insert the POI content on the used language\n            $queryStr_con_in = str_replace('%%user_id%%', $g_user->getUserId(), $queryStr_con_in);\n\n            $success = $g_ado_db->Execute($queryStr_con_in, $con_in_params);\n\n            // ad B 4)\n            $con_id = $g_ado_db->Insert_ID();\n        }\n\n        return $con_id;\n    } // fn InsertContent\n\n\n    /**\n     * Updates visibility state of the poi\n     *\n     * @param array $poi\n     *\n     * @return void\n     */\n    public static function UpdateState($poi)\n    {\n        global $g_ado_db;\n\n        $queryStr = 'UPDATE ' . Geo_MapLocationLanguage::TABLE . ' SET poi_display = ? WHERE id = ?';\n\n        $sql_params = array();\n        $sql_params[] = $poi['display'];\n        $sql_params[] = $poi['id'];\n\n        $success = $g_ado_db->Execute($queryStr, $sql_params);\n    } // fn UpdateState\n\n\n    /**\n     * Updates text content of the poi\n     *\n     * @param array $poi\n     *\n     * @return void\n     */\n    public static function UpdateText($poi)\n    {\n        global $g_ado_db;\n\n/*\n    A)\n        1) given article_number, language_id, map_id, list of map_loc_lan_id / new data\n\n    B)\n        cycle:\n            1) read content_id (as old_con_id) of the map_loc_lan_id\n            2) insert new content with new data\n            3) get the inserted id into new_con_id\n            4) update maplocationlanguages into the new_con_id for the map_loc_lan_id\n            6) delete content of old_con_id if none maplocationlanguage with a link into the old_con_id\n\n*/\n\n\n        // ad B 1)\n        $queryStr_con_id = 'SELECT fk_content_id AS con FROM ' . Geo_MapLocationLanguage::TABLE . ' WHERE id = ?';\n        // ad B 2)\n        // call InsertContent();\n        // ad B 4)\n        $queryStr_map_up = 'UPDATE ' . Geo_MapLocationLanguage::TABLE . ' SET fk_content_id = ? WHERE id = ?';\n        // ad B 6)\n        $queryStr_con_rm = 'DELETE FROM ' .  self::TABLE . ' WHERE id = ? AND NOT EXISTS (SELECT id FROM ' . Geo_MapLocationLanguage::TABLE . ' WHERE fk_content_id = ?)';\n\n        {\n            // ad B 1)\n            $con_old_id = null;\n            try\n            {\n                $mapcon_sel_params = array();\n\n                $mapcon_sel_params[] = $poi['id'];\n\n                $rows = $g_ado_db->GetAll($queryStr_con_id, $mapcon_sel_params);\n                if (is_array($rows)) {\n                    foreach ($rows as $row) {\n                        $con_old_id = $row['con'];\n                    }\n                }\n            }\n            catch (Exception $exc)\n            {\n                return false;\n            }\n\n            // ad B 2/3)\n            $con_new_id = self::InsertContent($poi);\n\n            // ad B 4)\n            {\n                $map_up_params = array();\n                $map_up_params[] = $con_new_id;\n\n                $map_up_params[] = $poi['id'];\n\n                $success = $g_ado_db->Execute($queryStr_map_up, $map_up_params);\n            }\n\n            // ad B 6)\n            try\n            {\n                $con_rm_params = array();\n                $con_rm_params[] = $con_old_id;\n                $con_rm_params[] = $con_old_id;\n\n                $success = $g_ado_db->Execute($queryStr_con_rm, $con_rm_params);\n            }\n            catch (Exception $exc)\n            {\n                return false;\n            }\n\n        }\n\n    } // fn UpdateText\n} // class Geo_MapLocationContent\n"
  },
  {
    "path": "newscoop/classes/GeoMapLocationLanguage.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\nrequire_once dirname(__FILE__) . '/DatabaseObject.php';\nrequire_once dirname(__FILE__) . '/IGeoMapLocationLanguage.php';\n\n/**\n */\nclass Geo_MapLocationLanguage extends DatabaseObject implements IGeoMapLocationLanguage\n{\n    const TABLE = 'MapLocationLanguages';\n\n    /** @var string */\n    public $m_dbTableName = self::TABLE;\n\n    /** @var array */\n    public $m_keyColumnNames = array('fk_maplocation_id', 'fk_language_id');\n\n    /** @var array */\n    public $m_columnNames = array(\n        'id',\n        'fk_maplocation_id',\n        'fk_language_id',\n        'fk_content_id',\n        'poi_display',\n    );\n\n\n    /**\n     * @param IGeoMapLocation $mapLocation\n     * @param int $languageId\n     */\n    public function __construct(IGeoMapLocation $mapLocation = NULL, $languageId = 0, array $p_languageSource = NULL, $p_forceExists = false)\n    {\n        global $g_ado_db;\n\n        parent::__construct($this->m_columnNames);\n\n        if ($p_languageSource) {\n            $this->fetch($p_languageSource, $p_forceExists);\n            return;\n        }\n\n        if ($mapLocation === NULL || $languageId < 1) {\n            return;\n        }\n        $this->m_data['fk_maplocation_id'] = $mapLocation->getId();\n        $this->m_data['fk_language_id'] = $languageId;\n\n        $this->fetch();\n    } // fn __construct\n\n\n    /**\n     * Return the location content identifier\n     * @return int\n     */\n    public function getContentId()\n    {\n        return $this->m_data['fk_content_id'];\n    } // fn getContentId\n\n\n    /**\n     * Point in this language is enabled?\n     * @return bool\n     */\n    public function isEnabled()\n    {\n        return (bool) ((int) $this->m_data['poi_display']);\n    } // fn isEnabled\n} // class Geo_MapLocationLanguage\n"
  },
  {
    "path": "newscoop/classes/GeoMultimedia.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\nrequire_once dirname(__FILE__) . '/DatabaseObject.php';\nrequire_once dirname(__FILE__) . '/IGeoMultimedia.php';\nrequire_once dirname(__FILE__) . '/IGeoMapLocation.php';\n\n/**\n * @package Campsite\n */\nclass Geo_Multimedia extends DatabaseObject implements IGeoMultimedia\n{\n    const TABLE = 'Multimedia';\n    const TABLE_JOIN = 'MapLocationMultimedia';\n\n    /** @var string */\n    public $m_dbTableName = self::TABLE;\n\n    /** @var array */\n    public $m_keyColumnNames = array('id');\n\n    /** @var array */\n    public $m_columnNames = array(\n        'id',\n        'media_type',\n        'media_spec',\n        'media_src',\n        'media_height',\n        'media_width',\n        'options',\n        'IdUser',\n    );\n\n\n    /**\n     * @param mixed $arg\n     */\n    public function __construct($arg = NULL)\n    {\n        parent::__construct($this->m_columnNames);\n\n        if (is_array($arg)) {\n            $this->fetch($arg);\n        } else if (is_numeric($arg)) {\n            $this->m_data['id'] = (int) $arg;\n            $this->fetch();\n        }\n    }\n\n    /**\n     * Get height\n     * @return int\n     */\n    public function getHeight()\n    {\n        return (int) $this->m_data['media_height'];\n    }\n\n    /**\n     * Get spec\n     * @return string\n     */\n    public function getSpec()\n    {\n        return (string) $this->m_data['media_spec'];\n    }\n\n    /**\n     * Get src\n     * @return string\n     */\n    public function getSrc()\n    {\n        return (string) $this->m_data['media_src'];\n    }\n\n    /**\n     * Get type\n     * @return string\n     */\n    public function getType()\n    {\n        return (string) $this->m_data['media_type'];\n    }\n\n    /**\n     * Get width\n     * @return int\n     */\n    public function getWidth()\n    {\n        return (int) $this->m_data['media_width'];\n    }\n\n    /**\n     * Get multimedia for map location\n     * @param IGeoMapLocation $p_mapLocation\n     * @return array of IGeoMultimedia\n     */\n    public static function GetByMapLocation(IGeoMapLocation $p_mapLocation)\n    {\n        global $g_ado_db;\n\n        $queryStr = 'SELECT m.*\n            FROM ' . self::TABLE . ' m\n                INNER JOIN ' . self::TABLE_JOIN . ' mlm\n                    ON m.id = mlm.fk_multimedia_id\n            WHERE mlm.fk_maplocation_id = ' . $p_mapLocation->getId();\n        $rows = $g_ado_db->GetAll($queryStr);\n\n        $items = array();\n        foreach ((array) $rows as $row) {\n            $items[] = new self((array) $row);\n        }\n        return $items;\n    } // fn GetByMapLocation\n\n    /**\n     * Inserts multimedia of a point\n     *\n     * @param int $ml_id\n     * @param array $poi\n     *\n     * @return void\n     */\n    public static function InsertMultimedia($ml_id, $poi)\n    {\n        global $g_ado_db;\n        global $g_user;\n\n        $queryStr_mm = 'INSERT INTO ' . self::TABLE . ' (';\n        $queryStr_mm .= 'media_type, media_spec, media_src, media_width, media_height, IdUser';\n        $queryStr_mm .= ') VALUES (';\n\n        $quest_marks = array();\n        for ($ind = 0; $ind < 5; $ind++) {$quest_marks[] = '?';}\n        $queryStr_mm .= implode(', ', $quest_marks);\n\n        $queryStr_mm .= ', %%user_id%%)';\n\n        $queryStr_loc_mm = 'INSERT INTO ' . self::TABLE_JOIN . ' (';\n        $queryStr_loc_mm .= 'fk_maplocation_id, fk_multimedia_id';\n        $queryStr_loc_mm .= ') VALUES (';\n        $queryStr_loc_mm .= '?, ?';\n        $queryStr_loc_mm .= ')';\n\n        if ('' != $poi['image_src'])\n        {\n            $mm_params = array();\n            $mm_params[] = 'image';\n            $mm_params[] = '';\n            $mm_params[] = '' . $poi['image_src'];\n            $mm_params[] = 0 + $poi['image_width'];\n            $mm_params[] = 0 + $poi['image_height'];\n\n\n            $mm_options = ''; // currently no options used\n            $reuse_id = Geo_Multimedia::FindMedia('image', '', $poi['image_src'], $poi['image_width'], $poi['image_height'], $mm_options);\n\n            $mm_id = 0;\n            if ($reuse_id && (0 < $reuse_id))\n            {\n                $mm_id = $reuse_id;\n            }\n            else\n            {\n                $queryStr_mm = str_replace('%%user_id%%', $g_user->getUserId(), $queryStr_mm);\n\n                $success = $g_ado_db->Execute($queryStr_mm, $mm_params);\n\n                $mm_id = $g_ado_db->Insert_ID();\n            }\n\n            $loc_mm_params = array();\n            $loc_mm_params[] = $ml_id;\n            $loc_mm_params[] = $mm_id;\n\n            $success = $g_ado_db->Execute($queryStr_loc_mm, $loc_mm_params);\n        }\n\n        if ('' != $poi['video_id'])\n        {\n            $mm_params = array();\n            $mm_params[] = 'video';\n            $mm_params[] = '' . $poi['video_type'];\n            $mm_params[] = '' . $poi['video_id'];\n            $mm_params[] = 0 + $poi['video_width'];\n            $mm_params[] = 0 + $poi['video_height'];\n\n            $mm_options = ''; // currently no options used\n            $reuse_id = Geo_Multimedia::FindMedia('video', $poi['video_type'], $poi['video_id'], $poi['video_width'], $poi['video_height'], $mm_options);\n\n            $mm_id = 0;\n            if ($reuse_id && (0 < $reuse_id))\n            {\n                $mm_id = $reuse_id;\n            }\n            else\n            {\n                $queryStr_mm = str_replace('%%user_id%%', $g_user->getUserId(), $queryStr_mm);\n\n                $success = $g_ado_db->Execute($queryStr_mm, $mm_params);\n\n                $mm_id = $g_ado_db->Insert_ID();\n            }\n\n            $loc_mm_params = array();\n            $loc_mm_params[] = $ml_id;\n            $loc_mm_params[] = $mm_id;\n\n            $success = $g_ado_db->Execute($queryStr_loc_mm, $loc_mm_params);\n        }\n    } // fn InsertMultimedia\n\n    /**\n     * Looks whether a media are already in the database, for the COW work\n     *\n     * @param string $p_type\n     * @param string $p_spec\n     * @param string $p_src\n     * @param int $p_width\n     * @param int $p_height\n     * @param string $p_options\n     *\n     * @return int\n     */\n    public static function FindMedia($p_type, $p_spec, $p_src, $p_width, $p_height, $p_options)\n    {\n        global $g_ado_db;\n\n        $queryStr = 'SELECT id FROM ' . self::TABLE . ' WHERE media_type = ? AND media_spec = ? AND media_src = ? AND media_width = ? AND media_height = ? AND options = ?';\n\n        $med_id = 0;\n        try\n        {\n            $sql_params = array();\n\n            $sql_params[] = '' . $p_type;\n            $sql_params[] = '' . $p_spec;\n            $sql_params[] = '' . $p_src;\n            $sql_params[] = 0 + $p_width;\n            $sql_params[] = 0 + $p_height;\n            $sql_params[] = '' . $p_options;\n\n            $rows = $g_ado_db->GetAll($queryStr, $sql_params);\n            if (is_array($rows)) {\n                foreach ($rows as $row) {\n                    $med_id = $row['id'];\n                }\n            }\n        }\n        catch (Exception $exc)\n        {\n            return false;\n        }\n\n        return $med_id;\n    } // fn FindMedia\n\n    /**\n     * Updates media associated to a point\n     *\n     * @param string $poi\n     * @param string $mm_type\n     *\n     * @return void\n     */\n    public static function UpdateMedia($poi, $mm_type)\n    {\n        global $g_ado_db;\n        global $g_user;\n\n/*\n    A)\n        1) given article_number, language_id, map_id, list of map_loc_lan_id / new data\n\n    B)\n        //cycle:\n            1) read multimedia_id (as old_med_id) of the map_loc_med_id\n            2) insert new multimedia with new data\n            3) get the inserted id into new_med_id\n            4) update maplocationmultimedia into the new_med_id for the map_loc_med_id\n            6) delete multimedia of old_med_id if none maplocationmultimedia with a link into the old_med_id\n\n*/\n\n        // ad B 1)\n        $queryStr_med_id = 'SELECT fk_multimedia_id AS med FROM ' . self::TABLE_JOIN . ' WHERE id = ?';\n        // ad B 2)\n\n        $queryStr_med_in = 'INSERT INTO ' . self::TABLE . ' (media_type, media_spec, media_src, media_width, media_height, IdUser) VALUES (';\n        $queryStr_med_in .= '?, ?, ?, ?, ?';\n        $queryStr_med_in .= ', %%user_id%%)';\n\n        // ad B 4)\n        $queryStr_map_up = 'UPDATE ' . self::TABLE_JOIN . ' SET fk_multimedia_id = ? WHERE id = ?';\n        $queryStr_map_in = 'INSERT INTO ' . self::TABLE_JOIN . ' (fk_maplocation_id, fk_multimedia_id) VALUES (?, ?)';\n        $queryStr_map_rm = 'DELETE FROM ' . self::TABLE_JOIN . ' WHERE id = ?';\n        // ad B 6)\n        $queryStr_med_rm = 'DELETE FROM ' . self::TABLE . ' WHERE id = ? AND NOT EXISTS (SELECT id FROM ' . self::TABLE_JOIN . ' WHERE fk_multimedia_id = ?)';\n\n        // ad B 1)\n\n        $mm_id = null;\n        $mm_spec = '';\n        $mm_src = '';\n        $mm_width = '';\n        $mm_height = '';\n        $mm_insert = false;\n        if ('image' == $mm_type)\n        {\n            $mm_id = $poi['image_mm'];\n            $mm_spec = '';\n            $mm_src = $poi['image_src'];\n            $mm_width = $poi['image_width'];\n            $mm_height = $poi['image_height'];\n            if ('' != $mm_src) {$mm_insert = true;}\n        }\n        if ('video' == $mm_type)\n        {\n            $mm_id = $poi['video_mm'];\n            $mm_spec = $poi['video_type'];\n            $mm_src = $poi['video_id'];\n            $mm_width = $poi['video_width'];\n            $mm_height = $poi['video_height'];\n            if ('' != $mm_src) {$mm_insert = true;}\n        }\n        if (null === $mm_id) {return;}\n\n        $med_old_id = null;\n        if ($mm_id)\n        {\n            try\n            {\n                $mapmed_sel_params = array();\n\n                $mapmed_sel_params[] = $mm_id;\n\n                $rows = $g_ado_db->GetAll($queryStr_med_id, $mapmed_sel_params);\n                if (is_array($rows)) {\n                    foreach ($rows as $row) {\n                        $med_old_id = $row['med'];\n                    }\n                }\n            }\n            catch (Exception $exc)\n            {\n                return false;\n            }\n\n            if (null === $med_old_id) {return;}\n        }\n\n        // ad B 2)\n\n        $med_new_id = 0;\n\n        // insert (and connect) just when there is something to insert\n        if ($mm_insert)\n        {\n            $mm_options = ''; // currently no options used\n            $reuse_id = Geo_Multimedia::FindMedia($mm_type, $mm_spec, $mm_src, $mm_width, $mm_height, $mm_options);\n\n            if ($reuse_id && (0 < $reuse_id))\n            {\n                $med_new_id = $reuse_id;\n            }\n            else\n            {\n                $med_ins_params = array();\n                $med_ins_params[] = '' . $mm_type;\n                $med_ins_params[] = '' . $mm_spec;\n                $med_ins_params[] = '' . $mm_src;\n                $med_ins_params[] = 0 + $mm_width;\n                $med_ins_params[] = 0 + $mm_height;\n\n                $queryStr_med_in = str_replace('%%user_id%%', $g_user->getUserId(), $queryStr_med_in);\n\n                $success = $g_ado_db->Execute($queryStr_med_in, $med_ins_params);\n\n                // ad B 3)\n                $med_new_id = $g_ado_db->Insert_ID();\n            }\n\n            // ad B 4) -- was no media for this connector, thus create a new one\n            if (null === $med_old_id)\n            {\n                $map_in_params = array();\n                $map_in_params[] = $poi['location_id'];\n                $map_in_params[] = $med_new_id;\n\n                $success = $g_ado_db->Execute($queryStr_map_in, $map_in_params);\n\n                return;\n            }\n            else // -- already had a media, thus just update the connector\n            {\n                $map_up_params = array();\n                $map_up_params[] = $med_new_id;\n                $map_up_params[] = $mm_id;\n\n                $success = $g_ado_db->Execute($queryStr_map_up, $map_up_params);\n            }\n        }\n        else // here: nothing to left connected, thus deleting the old connector if any\n        {\n            if ($mm_id) // if a connector was there\n            {\n                // ad B 4) deleting the old connector;\n                $map_rm_params = array();\n                $map_rm_params[] = $mm_id;\n\n                $success = $g_ado_db->Execute($queryStr_map_rm, $map_rm_params);\n            }\n        }\n\n        // ad B 6)\n        try\n        {\n            $med_rm_params = array();\n            $med_rm_params[] = $med_old_id;\n            $med_rm_params[] = $med_old_id;\n\n            $success = $g_ado_db->Execute($queryStr_med_rm, $med_rm_params);\n        }\n        catch (Exception $exc)\n        {\n            return false;\n        }\n\n\n    } // fn UpdateMedia\n\n} // class Geo_Multimedia\n"
  },
  {
    "path": "newscoop/classes/GeoNames.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\nrequire_once dirname(__FILE__) . '/DatabaseObject.php';\n\n/**\n * The geo names class is for search on data per request\n */\nclass Geo_Names extends DatabaseObject\n{\n    const LOCATIONS_LIMIT = 20;\n\n    /** @var array */\n    public $m_keyColumnNames = array('id');\n\n    /** @var string */\n    public $m_dbTableName = 'CityLocations cl INNER JOIN CityNames cs ON cl.id = cs.fk_citylocations_id';\n\n    /** @var array */\n    public $m_columnNames = array(\n        'id',\n        'city_type',\n        'population',\n        'position',\n        'elevation',\n        'country_code',\n        'time_zone',\n        'city_name',\n        'name_type',\n    );\n\n    /**\n     */\n    public function __construct()\n    {\n    }\n\n\n    public function FindCitiesByName($cityName, $countryCode = '')\n    {\n        $loc_found = array();\n        $rem_found = array();\n        $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n\n        if ($preferencesService->GeoSearchLocalGeonames) {\n            $loc_found = $this->FindCitiesByNameLocal($cityName, $countryCode);\n        }\n        if (!is_array($loc_found)) {\n            $loc_found = array();\n        }\n\n        if ($preferencesService->GeoSearchMapquestNominatim) {\n            $rem_found = $this->FindCitiesByNameRemote($cityName, $countryCode);\n        }\n        if (!is_array($rem_found)) {\n            $rem_found = array();\n        }\n\n        return array_merge($loc_found, $rem_found);\n    }\n\n    /**\n     * Finds cities on given name and country\n     *\n     * @param string $p_cityName\n     * @param string $p_countryCode\n     *\n     * @return array\n     */\n    public function FindCitiesByNameLocal($p_cityName, $p_countryCode = '')\n    {\n        global $g_ado_db;\n\n        $cityName_changed = str_replace(' ', '%', trim($p_cityName));\n        $is_exact = !strchr($p_cityName, '%');\n\n        $queryStr = 'SELECT DISTINCT id, city_name as name, country_code as country, population, X(position) AS latitude, Y(position) AS longitude\n            FROM ' . $this->m_dbTableName . ' WHERE city_name LIKE ?';\n\n        if (!empty($p_countryCode)) {\n            $queryStr .= ' AND cl.country_code = ?';\n        }\n\n        $sql_params = array(\n            $p_cityName,\n            $cityName_changed,\n            $cityName_changed . '%',\n            '%' . $cityName_changed . '%',\n        );\n        $queryStr .= ' GROUP BY id ORDER BY population DESC, id LIMIT 100';\n\n        $cities = array();\n        foreach ($sql_params as $param) {\n            $params = array($param);\n            if (!empty($p_countryCode)) {\n                $params[] = (string) $p_countryCode;\n            }\n            $rows = $g_ado_db->GetAll($queryStr, $params);\n\n            foreach ((array) $rows as $row) {\n                $one_town_info = (array) $row;\n                $one_town_info['provider'] = 'GN';\n                $one_town_info['copyright'] = 'Data © GeoNames.org, CC-BY';\n                $cities[] = $one_town_info;\n            }\n\n            if (!empty($cities)) {\n                break;\n            }\n        }\n\n        return $cities;\n    } // fn FindCitiesByName\n\n    /**\n     * Finds cities on given position\n     *\n     * @param string $p_longitude\n     * @param string $p_latitude\n     *\n     * @return array\n     */\n    public function FindCitiesByPosition($p_longitude, $p_latitude)\n    {\n        global $g_ado_db;\n\n        $lon = (float) $p_longitude;\n        $lat = (float) $p_latitude;\n        $used = array();\n        $cities = array();\n        for ($x = 0.04, $y = 0.08; $x <= 2.0; $x *= 2, $y *= 2) {\n            $queryStr = 'SELECT DISTINCT id, city_name as name, name_type, X(position) AS latitude, Y(position) AS longitude, population, country_code AS country\n                FROM ' . $this->m_dbTableName . \"\n                WHERE Contains(PolygonFromText('POLYGON((\";\n            $queryStr .= sprintf('%f %f, %f %f, %f %f, %f %f, %f %f',\n                $lat - $x, $lon - $y,\n                $lat + $x, $lon - $y,\n                $lat - $x, $lon + $y,\n                $lat + $x, $lon + $y,\n                $lat - $x, $lon - $y);\n            $queryStr .= \"))'), position) AND name_type = 'main'\n                ORDER BY population DESC, id LIMIT 100\";\n\n            $rows = $g_ado_db->GetAll($queryStr);\n            foreach ((array) $rows as $row) {\n                if (empty($used[$row['id']])) {\n                    $used[$row['id']] = true;\n                    $one_town_info = (array) $row;\n                    $one_town_info['provider'] = 'GN';\n                    $one_town_info['copyright'] = 'Data © GeoNames.org, CC-BY';\n                    $cities[] = $one_town_info;\n                }\n            }\n\n            if (sizeof($cities) >= self::LOCATIONS_LIMIT) {\n                return $cities;\n            }\n        }\n\n        return $cities;\n    } // fn FindCitiesByPosition\n\n    public function FindCitiesByNameRemote($streetAddress, $countryCode = '') {\n        $no_res = array();\n\n        $request_url = 'http://open.mapquestapi.com/nominatim/v1/search.php?format=json&q=';\n        //$request_url = 'http://nominatim.openstreetmap.org/search?format=json&q=';\n        $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n\n        $streetAddress = trim($streetAddress);\n        if (empty($streetAddress)) {\n            return $no_res;\n        }\n\n        $request_url .= urlencode($streetAddress);\n\n        $countryCode = trim($countryCode);\n        if (!empty($countryCode)) {\n            $request_url .=  '&countrycodes=' . urlencode($countryCode);\n        }\n\n        $geo_preferred_lang = $preferencesService->GeoSearchPreferredLanguage;\n        if (empty($geo_preferred_lang)) {\n            $geo_preferred_lang = 'en';\n        }\n\n        $request_url .= '&limit=40&accept-language=' . urlencode($geo_preferred_lang) . ';q=1,en;q=0.5&addressdetails=1';\n\n        $found_locations = null;\n        try {\n            $curlHandle = curl_init($request_url);\n\n            curl_setopt($curlHandle, CURLOPT_HTTPHEADER, array ('Accept: application/json'));\n            curl_setopt($curlHandle, CURLOPT_RETURNTRANSFER, true);\n            curl_setopt($curlHandle, CURLOPT_BINARYTRANSFER, true);\n            curl_setopt($curlHandle, CURLOPT_NOSIGNAL, true);\n            curl_setopt($curlHandle, CURLOPT_TIMEOUT_MS, 5000);\n\n            $response = curl_exec($curlHandle);\n            curl_close($curlHandle);\n\n            //$found_locations = json_decode($response, true, 512, JSON_BIGINT_AS_STRING);\n            $found_locations = json_decode($response, true);\n\n        }\n        catch (\\Exception $exc) {\n            $found_locations = null;\n        }\n\n        if (empty($found_locations) || (!is_array($found_locations))) {\n            return $no_res;\n        }\n\n        $res = array();\n        foreach ($found_locations as $one_loc) {\n            $cur_id = 0;\n            if (isset($one_loc['place_id'])) {\n                $cur_id = $one_loc['place_id'];\n            }\n\n            if ((!isset($one_loc['lat'])) || (!isset($one_loc['lon'])) || (!isset($one_loc['display_name']))) {\n                continue;\n            }\n            $cur_lat = $one_loc['lat'];\n            $cur_lon = $one_loc['lon'];\n\n            $cur_desc = $one_loc['display_name'];\n\n            $cur_name = '';\n            foreach(explode(',', $cur_desc) as $name_part) {\n                $name_part = trim($name_part);\n                if (empty($name_part)) {\n                    continue;\n                }\n                $cur_name = $name_part;\n                break;\n            }\n            if (isset($one_loc['address'])) {\n                $addr_name_parts = array();\n\n                $street_name_parts = array();\n                foreach(array('road', 'house_number') as $one_street_spec) {\n                    if (isset($one_loc['address']) && isset($one_loc['address'][$one_street_spec])) {\n                        $street_spec_part = trim($one_loc['address'][$one_street_spec]);\n                        if (!empty($street_spec_part)) {\n                            if (('road' == $one_street_spec) && is_numeric($street_spec_part)) {\n                                continue;\n                            }\n                            $street_name_parts[] = $street_spec_part;\n                        }\n                    }\n                }\n                if (!empty($street_name_parts)) {\n                    $addr_name_parts[] = implode(' ', $street_name_parts);\n                }\n\n                foreach(array('city', 'city_district', 'suburb', 'county', 'state') as $one_town_spec) {\n                    if (isset($one_loc['address']) && isset($one_loc['address'][$one_town_spec])) {\n                        $town_spec_part = trim($one_loc['address'][$one_town_spec]);\n                        if (!empty($town_spec_part)) {\n                            $addr_name_parts[] = $town_spec_part;\n                            break;\n                        }\n                    }\n                }\n\n                if (!empty($addr_name_parts)) {\n                    $cur_name = implode(', ', $addr_name_parts);\n                }\n            }\n\n            if ('' == $cur_name) {\n                continue;\n            }\n\n            $cur_country = '';\n            if (isset($one_loc['address']) && isset($one_loc['address']['country_code'])) {\n                $cur_country = trim($one_loc['address']['country_code']);\n            }\n            if (empty($cur_country)) {\n                $cur_country = 'un';\n            }\n\n            $cur_type = null;\n            if (isset($one_loc['type']) && (!empty($one_loc['type'])) && ('administrative' != $one_loc['type'])) {\n                $cur_type = $one_loc['type'];\n                if (isset($one_loc['address']) && isset($one_loc['address'][$cur_type]) && (!empty($one_loc['address'][$cur_type]))) {\n                    $cur_name = str_replace('_', ' ', $one_loc['type']) . ' ' . $one_loc['address'][$cur_type] . ', ' . $cur_name;\n                }\n            }\n\n            $res[] = array(\n                'id' => $cur_id,\n                'name' => $cur_name,\n                'country' => $cur_country,\n                'long_desc' => $cur_desc,\n                'population' => '',\n                'latitude' => $cur_lat,\n                'longitude' => $cur_lon,\n                'provider' => 'OSM',\n                'copyright' => 'Data © OpenStreetMap contributors, ODbL 1.0',\n                'type' => $cur_type,\n            );\n        }\n\n        return $res;\n    } // fn FindCitiesByNameRemote\n\n} // class Geo_Names\n"
  },
  {
    "path": "newscoop/classes/GeoPreferences.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n\n/**\n * @package Campsite\n */\nclass Geo_Preferences extends DatabaseObject {\n\n    /**\n     * Gets the default available map provider\n     *\n     * @return string\n     */\npublic static function GetMapProviderDefault()\n{   \n    $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n    $map_prov_default = $preferencesService->MapProviderDefault;\n    if (!$map_prov_default) {$map_prov_default = 'googlev3';}\n    else {$map_prov_default = strtolower($map_prov_default);}\n\n    $sys_pref_names = array('googlev3' => 'GoogleV3', 'osm' => 'OSM', 'mapquest' => 'MapQuest');\n\n    $provider_available = true;\n\n    $one_prov_usage = $preferencesService->MapProviderAvailable . ucfirst($sys_pref_names[$map_prov_default]);\n    if (!$one_prov_usage) {$provider_available = false;}\n    if (in_array(strtolower($one_prov_usage), array('0', 'false', 'no'))) {$provider_available = false;}\n\n    if (!$provider_available)\n    {\n        foreach ($sys_pref_names as $one_provider => $one_prov_name)\n        {\n            $one_prov_usage = $preferencesService->MapProviderAvailable . ucfirst($sys_pref_names[$one_prov_name]);\n\n            if (!$one_prov_usage) {continue;}\n            if (in_array(strtolower($one_prov_usage), array('0', 'false', 'no'))) {continue;}\n\n            $map_prov_default = $one_provider;\n            $provider_available = true;\n        }\n    }\n\n    if (!$provider_available)\n    {\n        $map_prov_default = 'googlev3';\n    }\n\n    return $map_prov_default;\n} // fn GetMapProviderDefault\n\n    /**\n     * Gets info on map view\n     *\n     * @param string $p_htmlDir\n     * @param string $p_websiteUrl\n     *\n     * @return array\n     */\npublic static function GetMapInfo($p_htmlDir = '', $p_websiteUrl = '', $p_mapProvider = '')\n{\n    global $Campsite;\n    $cnf_html_dir = $Campsite['HTML_DIR'];\n    $cnf_website_url = $Campsite['WEBSITE_URL'];\n    $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n\n    if ('' != $p_htmlDir) {$cnf_html_dir = $p_htmlDir;}\n    if ('' != $p_websiteUrl) {$cnf_website_url = $p_websiteUrl;}\n\n\n    $map_width = $preferencesService->MapViewWidthDefault;\n    if (!$map_width) {$map_width = 600;}\n    $map_height = $preferencesService->MapViewHeightDefault;\n    if (!$map_height) {$map_height = 400;}\n\n    $map_view_long = $preferencesService->MapCenterLongitudeDefault;\n    $map_view_lat = $preferencesService->MapCenterLatitudeDefault;\n    $map_view_resol = $preferencesService->MapDisplayResolutionDefault;\n\n    if (!$map_view_long) {$map_view_long = '14.424133';}\n    if (!$map_view_lat) {$map_view_lat = '50.089926';}\n    if (!$map_view_resol) {$map_view_resol = '4';}\n\n    $use_single_provider = false; // whether we already know which single map provider has to be used\n    if ('' != $p_mapProvider)\n    {\n        $use_single_provider = true;\n    }\n\n    $map_prov_default = '';\n    if ($use_single_provider)\n    {\n        $map_prov_default = $p_mapProvider;\n    }\n    else\n    {\n        $map_prov_default = $preferencesService->MapProviderDefault;\n        if (!$map_prov_default) {$map_prov_default = '';}\n        else {$map_prov_default = strtolower($map_prov_default);}\n    }\n\n    // we only have support for googlev3 and osm/mapquest for now\n    $map_prov_names_arr = array('googlev3', 'osm', 'mapquest');\n    if ($use_single_provider)\n    {\n        $map_prov_names_arr = array($p_mapProvider);\n    }\n\n    $map_prov_includes = array();\n    $map_prov_includes_async = array();\n    $map_prov_info_arr = array();\n    $map_prov_gv3_async = false;\n    $map_prov_gv3_async_method = '';\n\n    $known_providers = array('googlev3' => false, 'osm' => false);\n    $sys_pref_names = array('googlev3' => 'GoogleV3', 'osm' => 'OSM', 'mapquest' => 'MapQuest');\n    $usage_providers_count = 0;\n\n    $map_prov_first = '';\n    $map_prov_default_found = false;\n\n    foreach ($map_prov_names_arr as $one_prov_name)\n    {\n        if ('' == $one_prov_name) {continue;}\n\n        if (!$use_single_provider)\n        {\n            $one_prov_usage = $preferencesService->MapProviderAvailable . ucfirst($sys_pref_names[$one_prov_name]);\n\n            if (!$one_prov_usage) {continue;}\n            if (in_array(strtolower($one_prov_usage), array('0', 'false', 'no'))) {continue;}\n        }\n\n        $one_prov_include = '';\n        $one_prov_include_async = '';\n        if ('googlev3' == $one_prov_name)\n        {\n            $one_prov_include = 'https://maps.google.com/maps/api/js?v=3.9&sensor=false';\n            $one_prov_include_async = 'https://maps.google.com/maps/api/js?v=3.9&sensor=false&callback=initialize_gv3async';\n            $map_prov_gv3_async_method = 'initialize_gv3async';\n            $map_prov_gv3_async = true;\n        }\n\n        // up to now, we know how to deal with just a few map providers\n        $one_prov_label = strtolower($one_prov_name);\n        if (!in_array($one_prov_label, $map_prov_names_arr)) {continue;}\n\n        $known_providers[$one_prov_label] = true;\n        if ($one_prov_include && ('' != $one_prov_include))\n        {\n            $map_prov_includes[] = $one_prov_include;\n        }\n        if ($one_prov_include_async && ('' != $one_prov_include_async))\n        {\n            $map_prov_includes_async[] = $one_prov_include_async;\n        }\n\n        if ('' == $map_prov_first) {$map_prov_first = $one_prov_label;}\n        if ($one_prov_label == $map_prov_default) {$map_prov_default_found = true;}\n\n        $usage_providers_count += 1;\n    }\n\n    if (!$map_prov_default_found)\n    {\n        $map_prov_default = $map_prov_first;\n    }\n\n    // if nothing set to usage, use the all ones, with the default configuration\n    if (0 == $usage_providers_count)\n    {\n        foreach ($known_providers as $one_prov => $one_state)\n        {\n            $known_providers[$one_prov] = true;\n        }\n\n        $map_prov_default = 'googlev3';\n        $map_prov_includes[] = 'https://maps.google.com/maps/api/js?v=3.9&sensor=false';\n        $map_prov_includes_async[] = 'https://maps.google.com/maps/api/js?v=3.9&sensor=false&callback=initialize_gv3async';\n        $map_prov_gv3_async_method = 'initialize_gv3async';\n        $map_prov_gv3_async = true;\n\n    }\n\n    $providers_usage_arr = array();\n    foreach ($known_providers as $provider => $usage)\n    {\n        if ($usage) {$providers_usage_arr[] = $provider;}\n    }\n\n    $res_map_info = array();\n    $res_map_info['default'] = $map_prov_default;\n    $res_map_info['longitude'] = $map_view_long;\n    $res_map_info['latitude'] = $map_view_lat;\n    $res_map_info['resolution'] = $map_view_resol;\n    $res_map_info['providers'] = $providers_usage_arr;\n    $res_map_info['width'] = $map_width;\n    $res_map_info['height'] = $map_height;\n\n    return array('json_obj' => $res_map_info, 'incl_obj' => $map_prov_includes, 'incl_obj_async' => $map_prov_includes_async, 'incl_gv3' => $map_prov_gv3_async, 'incl_gv3_init' => $map_prov_gv3_async_method);\n} // fn GetMapInfo\n\n\n    /**\n     * Prepares js script include tags\n     *\n     * @param array $p_inclInfo\n     *\n     * @return string\n     */\npublic static function PrepareMapIncludes($p_inclInfo)\n{\n    $map_includes = '';\n    foreach ($p_inclInfo as $js_source)\n    {\n        $map_includes .= \"<script type=\\\"text/javascript\\\" src=\\\"$js_source\\\"></script>\\n\";\n    }\n\n    return $map_includes;\n} // fn PrepareMapIncludes\n\n    /**\n     * Gets info on marker icons\n     *\n     * @param string $p_htmlDir\n     * @param string $p_websiteUrl\n     *\n     * @return array\n     */\npublic static function GetIconsInfo($p_htmlDir, $p_websiteUrl)\n{\n    global $Campsite;\n    $cnf_html_dir = $Campsite['HTML_DIR'];\n    $cnf_website_url = $Campsite['WEBSITE_URL'];\n    $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n\n    if ('' != $p_htmlDir) {$cnf_html_dir = $p_htmlDir;}\n    if ('' != $p_websiteUrl) {$cnf_website_url = $p_websiteUrl;}\n\n    $no_arr = array('json_obj' => array('webdir' => '', 'default' => '', 'icons' => array()));\n\n    $use_icons = array();\n\n    $icons_subpath = $preferencesService->MapMarkerDirectory;\n    if (!$icons_subpath)\n    {\n        $icons_subpath = '/js/geocoding/markers';\n    }\n\n    $icons_subdir = $cnf_html_dir . $icons_subpath;\n\n    $icons_webdir = $cnf_website_url . $icons_subpath;\n    if (!is_dir($icons_subdir))\n    {\n        return $no_arr;\n    }\n\n    $icons_default_name = $preferencesService->MapMarkerSourceDefault;\n    if (!$icons_default_name) {$icons_default_name = '';}\n\n    $img_suffixes = array('png', 'gif', 'jpg', 'jpe', 'jpeg', 'svg', 'pbm', 'bmp', 'xpm', 'xbm', 'tif', 'tiff');\n    $offset_x_names = array('offsetx', 'offset_x', 'offset x', 'width offset');\n    $offset_y_names = array('offsety', 'offset_y', 'offset y', 'height offset');\n\n    $icons_first_name = '';\n    $icons_default_name_exists = false;\n\n    $icons_arr_unknown = array();\n    $icons_arr_unknown[] = 'special/unknown.png';\n\n    $icons_arr = array_merge($icons_arr_unknown, scandir($icons_subdir));\n\n    foreach ($icons_arr as $one_name)\n    {\n        $img_label_arr = explode('.', $one_name);\n        if (2 != count($img_label_arr)) {continue;} // we expect that regular image files shall be icon_name.suffix\n        $img_label = $img_label_arr[0] . ' (' . $img_label_arr[1] . ')';\n\n        $web_path = $icons_webdir . '/' . $one_name;\n        $one_path = $icons_subdir . '/' . $one_name;\n        if (is_file($one_path))\n        {\n            $one_name_parts = explode('.', $one_path);\n            $one_name_size = count($one_name_parts);\n            if (2 > $one_name_size) {continue;}\n            if (!in_array($one_name_parts[$one_name_size - 1], $img_suffixes)) {continue;}\n\n            $img_info = getimagesize($one_path);\n            if (!$img_info) {continue;}\n\n            $img_width_value = 0 + $img_info[0];\n            $img_height_value = 0 + $img_info[1];\n            $img_width = '' . $img_info[0];\n            $img_height = '' . $img_info[1];\n            $img_width_off = '-' . floor($img_info[0] / 2);\n            $img_height_off = '-' . ($img_info[1] - 0);\n\n            $one_name_parts[$one_name_size - 1] = 'ini';\n            $one_name_desc = implode('.', $one_name_parts);\n            $one_file_desc = fopen($one_name_desc, 'r');\n            if (!$one_file_desc)\n            {\n                $one_name_parts[$one_name_size - 1] = 'txt';\n                $one_name_desc = implode('.', $one_name_parts);\n                $one_file_desc = fopen($one_name_desc, 'r');\n            }\n\n            if ($one_file_desc)\n            {\n                while (true)\n                {\n                    $one_img_info = fgets($one_file_desc);\n                    if (!$one_img_info) {break;}\n\n                    $one_img_info = trim($one_img_info);\n                    if (0 == strlen($one_img_info)) {continue;}\n                    if ('#' == $one_img_info[0]) {continue;}\n\n                    $info_arr = explode(':', $one_img_info);\n                    if (2 > count($info_arr))\n                    {\n                        $info_arr = explode(',', $one_img_info);\n                    }\n                    if (2 > count($info_arr)) {continue;}\n\n                    $one_param = strtolower(trim($info_arr[0]));\n                    $one_value = trim($info_arr[1]);\n\n                    if (in_array($one_param, $offset_x_names))\n                    {\n                        if (is_numeric($one_value)) {$img_width_off = '' . ($one_value - $img_width_value);}\n                    }\n                    if (in_array($one_param, $offset_y_names))\n                    {\n                        if (is_numeric($one_value)) {$img_height_off = '' . ($one_value - $img_height_value);}\n                    }\n\n                }\n\n                fclose($one_file_desc);\n            }\n\n            $use_icons[] = array('label' => $img_label, 'name' => $one_name, 'path' => $web_path, 'width_off' => $img_width_off, 'height_off' => $img_height_off, 'width' => $img_width, 'height' => $img_height);\n\n            if ('' == $icons_first_name) {$icons_first_name = $one_name;}\n\n            if ($one_name == $icons_default_name) {$icons_default_name_exists = true;}\n        }\n    }\n\n    if (!$icons_default_name_exists)\n    {\n        if ('' != $icons_first_name) {$icons_default_name = $icons_first_name;}\n    }\n\n    $res_icons_info = array('webdir' => $icons_webdir, 'default' => $icons_default_name, 'icons' => $use_icons);\n    return array('json_obj' => $res_icons_info);\n} // fn GetIconsInfo\n\n\n    /**\n     * Gets info on the search map\n     *\n     * @param string $p_htmlDir\n     * @param string $p_websiteUrl\n     *\n     * @return string\n     */\npublic static function GetSearchInfo($p_htmlDir, $p_websiteUrl)\n{\n    global $Campsite;\n    $cnf_html_dir = $Campsite['HTML_DIR'];\n    $cnf_website_url = $Campsite['WEBSITE_URL'];\n\n    if ('' != $p_htmlDir) {$cnf_html_dir = $p_htmlDir;}\n    if ('' != $p_websiteUrl) {$cnf_website_url = $p_websiteUrl;}\n\n\n    $no_arr = array('json_obj' => array('webdir' => '', 'default' => '', 'icons' => array()));\n\n    $use_icons = array();\n\n    $icons_subpath = '/js/geocoding/search';\n    $icon_filename = 'search.png';\n\n    $icons_subdir = $cnf_html_dir . $icons_subpath;\n\n    $icons_webdir = $cnf_website_url . $icons_subpath;\n\n    $icons_default_name = 'search';\n    $search_icon = array(\n        'label' => 'search',\n        'name' => $icon_filename,\n        'path' => $icons_webdir . '/' . $icon_filename,\n        'width' => '200',\n        'height' => '150',\n        'width_off' => '-100',\n        'height_off' => '-75',\n    );\n\n    $use_icons[] = $search_icon;\n\n    $res_icons_info = array('webdir' => $icons_webdir, 'default' => $icons_default_name, 'icons' => $use_icons);\n    return array('json_obj' => $res_icons_info);\n} // fn GetSearchInfo\n\n\n    /**\n     * Gets info on popups\n     *\n     * @param string $p_htmlDir\n     * @param string $p_websiteUrl\n     *\n     * @return array\n     */\npublic static function GetPopupsInfo($p_htmlDir, $p_websiteUrl)\n{\n    global $Campsite;\n    $cnf_html_dir = $Campsite['HTML_DIR'];\n    $cnf_website_url = $Campsite['WEBSITE_URL'];\n    $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n\n    if ('' != $p_htmlDir) {$cnf_html_dir = $p_htmlDir;}\n    if ('' != $p_websiteUrl) {$cnf_website_url = $p_websiteUrl;}\n\n    $popup_width = $preferencesService->MapPopupWidthMin;\n    if (!$popup_width) {$popup_width = 300;}\n\n    $popup_height = $preferencesService->MapPopupHeightMin;\n    if (!$popup_height) {$popup_height = 200;}\n\n    $size_info = array('width' => $popup_width, 'height' => $popup_height);\n\n    $video_names_arr = array('YouTube', 'Vimeo', 'Flash');\n    $video_names_info = array();\n\n    $video_names_info['YouTube'] = array('width' => '320', 'height' => '240');\n    $video_names_info['Vimeo'] = array('width' => '320', 'height' => '180');\n    $video_names_info['Flash'] = array('width' => '320', 'height' => '240');\n\n    foreach ($video_names_arr as $one_video_label)\n    {\n        if ('' == $one_video_label) {continue;}\n\n        $video_width = $preferencesService->MapVideoWidth . ucfirst($one_video_label);\n        $video_height = $preferencesService->MapVideoHeight . ucfirst($one_video_label);\n\n        if ((!$video_width) && ('' == $video_width)) {continue;}\n        if ((!$video_height) && ('' == $video_height)) {continue;}\n\n        $video_names_info[$one_video_label]['width'] = $video_width;\n        $video_names_info[$one_video_label]['height'] = $video_height;\n\n    }\n\n    $youtube_src_default = '<object width=\"%%w%%\" height=\"%%h%%\"><param name=\"movie\" value=\"http://www.youtube.com/v/%%id%%\"></param><param name=\"wmode\" value=\"transparent\"></param><embed src=\"http://www.youtube.com/v/%%id%%\" type=\"application/x-shockwave-flash\" wmode=\"transparent\" width=\"%%w%%\" height=\"%%h%%\"></embed></object>';\n    $vimeo_src_default = '<object width=\"%%w%%\" height=\"%%h%%\"><param name=\"allowfullscreen\" value=\"true\" /><param name=\"allowscriptaccess\" value=\"always\" /><param name=\"movie\" value=\"http://www.vimeo.com/moogaloop.swf?clip_id=%%id%%&server=www.vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1\" /><embed src=\"http://www.vimeo.com/moogaloop.swf?clip_id=%%id%%&server=www.vimeo.com&show_title=1&show_byline=1&show_portrait=0&color=&fullscreen=1\" type=\"application/x-shockwave-flash\" allowfullscreen=\"true\" allowscriptaccess=\"always\" width=\"%%w%%\" height=\"%%h%%\"></object>';\n\n    $flash_src_default = '<object width=\"%%w%%\" height=\"%%h%%\"><param name=\"allowFullScreen\" value=\"true\"/><param name=\"wmode\" value=\"transparent\"/><param name=\"movie\" value=\"%%path%%%%id%%\"/><embed src=\"%%path%%%%id%%\" width=\"%%w%%\" height=\"%%h%%\" allowFullScreen=\"true\" type=\"application/x-shockwave-flash\" wmode=\"transparent\"/></object>';\n    $flv_src_default = '<object width=\"%%w%%\" height=\"%%h%%\"><param name=\"movie\" value=\"%%path%%player.swf\"></param><param name=\"flashvars\" value=\"src=%%path%%%%id%%&amp;poster=%%path%%%%ps%%&amp;controlBarAutoHide=true\"></param><param name=\"allowFullScreen\" value=\"true\"></param><param name=\"allowscriptaccess\" value=\"always\"></param><embed src=\"%%path%%player.swf\" type=\"application/x-shockwave-flash\" allowscriptaccess=\"always\" allowfullscreen=\"true\" width=\"%%w%%\" height=\"%%h%%\" flashvars=\"src=%%path%%%%id%%&amp;poster=%%path%%%%ps%%&amp;controlBarAutoHide=true\"></embed></object>';\n\n    $flash_server = '';\n    $flash_directory = '';\n    {\n        $flash_server_setting = $preferencesService->FlashServer;\n        $flash_directory_setting = $preferencesService->FlashDirectory;\n\n        // if not a flash server set, use the cs server\n        if ((!$flash_server_setting) || ('' == $flash_server_setting))\n        {\n            $flash_server = $cnf_website_url;\n            if ('/' != strrchr($flash_server, '/'))\n            {\n                $flash_server .= '/';\n            }\n        }\n        else // use the set server for the flash files\n        {\n            $flash_server = $flash_server_setting;\n        }\n\n        // if not flash directory set, just assure that the server/dir ends with a '/'\n        if ((!$flash_directory_setting) || ('' == $flash_directory_setting))\n        {\n            if ('/' == strrchr($flash_server, '/'))\n            {\n                $flash_directory = '';\n            }\n            else\n            {\n                $flash_directory = '/';\n            }\n        }\n        else\n        {\n            $flash_directory = $flash_directory_setting;\n        }\n\n        $flash_path = $flash_server. $flash_directory;\n        if ('/' != strrchr($flash_path, '/'))\n        {\n            $flash_path .= '/';\n        }\n\n        $cur_info = $video_names_info['YouTube'];\n        $video_names_usage[] = array('label' => 'YouTube', 'source' => $youtube_src_default, 'width' => $cur_info['width'], 'height' => $cur_info['height']);\n        $cur_info = $video_names_info['Vimeo'];\n        $video_names_usage[] = array('label' => 'Vimeo', 'source' => $vimeo_src_default, 'width' => $cur_info['width'], 'height' => $cur_info['height']);\n        $cur_info = $video_names_info['Flash'];\n\n        $video_names_usage[] = array('label' => 'Flash', 'source' => $flash_src_default, 'width' => $cur_info['width'], 'height' => $cur_info['height'], 'path' => $flash_path);\n        $cur_info = $video_names_info['Flash'];\n\n        $video_names_usage[] = array('label' => 'Flv', 'source' => $flv_src_default, 'width' => $cur_info['width'], 'height' => $cur_info['height'], 'path' => $flash_path);\n    }\n\n    $video_info = array('labels' => $video_names_usage);\n\n    $res_popups_info = array('width' => $size_info['width'], 'height' => $size_info['height'], 'video' => $video_info);\n    return array('json_obj' => $res_popups_info);\n} // fn GetPopupsInfo\n\n    /**\n     * Gets files available as marker icons\n     *\n     * @param string $p_htmlDir\n     * @param string $p_websiteUrl\n     *\n     * @return array\n     */\npublic static function GetIconsFiles($p_htmlDir = '', $p_websiteUrl = '')\n{\n    global $Campsite;\n    $cnf_html_dir = $Campsite['HTML_DIR'];\n    $cnf_website_url = $Campsite['WEBSITE_URL'];\n    $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n\n    if ('' != $p_htmlDir) {$cnf_html_dir = $p_htmlDir;}\n    if ('' != $p_websiteUrl) {$cnf_website_url = $p_websiteUrl;}\n\n    $no_arr = array();\n\n    $use_icons = array();\n\n    $icons_subpath = $preferencesService->MapMarkerDirectory;\n    if (!$icons_subpath)\n    {\n        $icons_subpath = '/js/geocoding/markers';\n    }\n\n    $icons_subdir = $cnf_html_dir . $icons_subpath;\n\n    $icons_webdir = $cnf_website_url . $icons_subpath;\n    if (!is_dir($icons_subdir))\n    {\n        return $no_arr;\n    }\n\n    $img_suffixes = array('png', 'gif', 'jpg', 'jpe', 'jpeg', 'svg', 'pbm', 'bmp', 'xpm', 'xbm', 'tif', 'tiff');\n\n    $icons_arr = scandir($icons_subdir);\n\n    foreach ($icons_arr as $one_name)\n    {\n        $img_label_arr = explode('.', $one_name);\n        if (2 != count($img_label_arr)) {continue;} // we expect that regular image files shall be icon_name.suffix\n        $img_label = $img_label_arr[0] . ' (' . $img_label_arr[1] . ')';\n\n        $web_path = $icons_webdir . '/' . $one_name;\n        $one_path = $icons_subdir . '/' . $one_name;\n        if (is_file($one_path))\n        {\n            $one_name_parts = explode('.', $one_path);\n            $one_name_size = count($one_name_parts);\n            if (2 > $one_name_size) {continue;}\n            if (!in_array($one_name_parts[$one_name_size - 1], $img_suffixes)) {continue;}\n\n            $img_info = getimagesize($one_path);\n            if (!$img_info) {continue;}\n\n            $use_icons[] = $one_name;\n\n        }\n    }\n\n    return $use_icons;\n\n} // fn GetIconsFiles\n\n    /**\n     * Gets info on map auto-focusing\n     *\n     * @param string $p_htmlDir\n     * @param string $p_websiteUrl\n     *\n     * @return array\n     */\npublic static function GetFocusInfo($p_htmlDir = '', $p_websiteUrl = '')\n{   \n    $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n    $focus_default = $preferencesService->MapAutoFocusDefault;\n    if (!$focus_default) {$focus_default = false;}\n    else {$focus_default = true;}\n\n    $focus_maxzoom = $preferencesService->MapAutoFocusMaxZoom;\n    if (!$focus_maxzoom) {$focus_maxzoom = 18;}\n\n    $focus_border = $preferencesService->MapAutoFocusBorder;\n    if (!$focus_border) {$focus_border = 100;}\n\n    $res_focus_info = array('auto_focus' => $focus_default, 'max_zoom' => $focus_maxzoom, 'border' => $focus_border);\n    return array('json_obj' => $res_focus_info);\n} // fn GetFocusInfo\n\n\n    /**\n     * Gets CSS file(s) to be included for map (pre)view\n     *\n     * @param string $p_htmlDir\n     * @param string $p_websiteUrl\n     *\n     * @return array\n     */\npublic static function GetIncludeCSS($p_htmlDir = '', $p_websiteUrl = '')\n{\n    global $Campsite;\n    $cnf_html_dir = $Campsite['HTML_DIR'];\n    $cnf_website_url = $Campsite['WEBSITE_URL'];\n    $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n\n    if ('' != $p_htmlDir) {$cnf_html_dir = $p_htmlDir;}\n    if ('' != $p_websiteUrl) {$cnf_website_url = $p_websiteUrl;}\n\n    $css_files = array();\n\n    $css_map_file = $preferencesService->MapAutoCSSFile;\n    if ($css_map_file)\n    {\n        $css_map_file = '' . $css_map_file;\n        if (0 < strlen($css_map_file))\n        {\n            if (0 != strpos($css_map_file, '/')) {$css_map_file = '/' . $css_map_file;}\n            $css_files[] = $p_websiteUrl . $css_map_file;\n        }\n    }\n\n    return array('css_files' => $css_files);\n} // fn GetIncludeCSS\n\n\n    /**\n     * Gets icons directory for map (pre)view\n     *\n     * @param string $p_htmlDir\n     * @param string $p_websiteUrl\n     *\n     * @return string\n     */\npublic static function GetIconsWebDir($p_htmlDir = '', $p_websiteUrl = '')\n{\n    global $Campsite;\n    $cnf_html_dir = $Campsite['HTML_DIR'];\n    $cnf_website_url = $Campsite['WEBSITE_URL'];\n    $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n\n    if ('' != $p_htmlDir) {$cnf_html_dir = $p_htmlDir;}\n    if ('' != $p_websiteUrl) {$cnf_website_url = $p_websiteUrl;}\n\n    $icons_subpath = $preferencesService->MapMarkerDirectory;\n    if (!$icons_subpath)\n    {\n        $icons_subpath = '/javascript/geocoding/markers';\n    }\n\n    $icons_webdir = $cnf_website_url . $icons_subpath;\n    return $icons_webdir;\n\n} // GetIconsWebDir\n\n    /**\n     * Gets translated strings for the geo-map templates\n     * This is used for having translated those strings, even when they are not used via this function\n     * Look at include/smarty/plugins/function.math.php for the usage\n     *\n     * @return array\n     */\npublic static function TemplateGeoStrings()\n{   \n    $translator = \\Zend_Registry::get('container')->getService('translator');\n    $show_original_map = $translator->trans('Show original map', array(), 'api');\n    $open_large_map = $translator->trans('Open large map', array(), 'api');\n    $map = $translator->trans('Map', array(), 'api');\n    $center = $translator->trans('Center', array(), 'api');\n\n    return array('show_original_map' => $show_original_map, 'open_large_map' => $open_large_map, 'map' => $map, 'center' => $center);\n\n} // fn TemplateGeoStrings\n\n} // class Geo_Preferences\n\n?>\n"
  },
  {
    "path": "newscoop/classes/IGeoLocation.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\n/**\n * Geo Location interface\n */\ninterface IGeoLocation\n{\n    /**\n     * Get location latitude\n     * @return float\n     */\n    public function getLatitude();\n    \n    /**\n     * Get location longitude\n     * @return float\n     */\n    public function getLongitude();\n}\n"
  },
  {
    "path": "newscoop/classes/IGeoMap.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\n/**\n * Geolocations Map interface\n */\ninterface IGeoMap\n{\n    /**\n     * Get map id\n     * @return int\n     */\n    public function getId();\n\n    /**\n     * Get map locations\n     * @return array of IGeoMapLocation\n     */\n    public function getLocations();\n}\n"
  },
  {
    "path": "newscoop/classes/IGeoMapLocation.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/IGeoLocation.php';\n\n/**\n * Geo Map Location interface\n */\ninterface IGeoMapLocation extends IGeoLocation\n{\n    /**\n     * Get id\n     * @return int\n     */\n    public function getId();\n\n    /**\n     * Get content\n     * @param int $language\n     * @return IGeoMapLocationContent\n     */\n    public function getContent($language);\n}\n"
  },
  {
    "path": "newscoop/classes/IGeoMapLocationContent.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\n/**\n * Geo Map Location Content interface\n */\ninterface IGeoMapLocationContent\n{\n    /**\n     * Get name\n     * @return string\n     */\n    public function getName();\n\n    /**\n     * Get content\n     * @return string\n     */\n    public function getContent();\n\n    /**\n     * Get plain text\n     * @return string\n     */\n    public function getText();\n}\n"
  },
  {
    "path": "newscoop/classes/IGeoMapLocationLanguage.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Holman Romero <holman.romero@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\n/**\n * Geo Map Location Language interface\n */\ninterface IGeoMapLocationLanguage\n{\n    /**\n     * Get location is enabled\n     * @return bool\n     */\n    public function isEnabled();\n}\n"
  },
  {
    "path": "newscoop/classes/IGeoMultimedia.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\n/**\n * Geo Multimedia interface\n */\ninterface IGeoMultimedia\n{\n    /**\n     * Get type\n     * @return string\n     */\n    public function getType();\n\n    /**\n     * Get spec\n     * @return string\n     */\n    public function getSpec();\n\n    /**\n     * Get src\n     * @return string\n     */\n    public function getSrc();\n\n    /**\n     * Get width\n     * @return int\n     */\n    public function getWidth();\n\n    /**\n     * Get height\n     * @return int\n     */\n    public function getHeight();\n\n}\n"
  },
  {
    "path": "newscoop/classes/IPAccess.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbObjectArray.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Section.php');\n\n/**\n * @package Campsite\n */\nclass IPAccess extends DatabaseObject {\n\tvar $m_dbTableName = 'SubsByIP';\n\tvar $m_keyColumnNames = array('IdUser', 'StartIP');\n\tvar $m_columnNames = array(\n\t\t'IdUser',\n\t\t'StartIP',\n\t\t'Addresses');\n\n\tprivate function __string2array($p_IPaddress)\n\t{\n\t\t$IPaddressArray = array();\n\t\t$IPaddressArray[] = strtok($p_IPaddress, '.');\n\t\tfor ($i = 1; $i < 4; $i++) {\n\t\t\t$IPaddressArray[] = strtok('.');\n\t\t}\n\t\treturn $IPaddressArray;\n\t}\n\n\tprivate function __array2int($p_IPAddressArray)\n\t{\n\t\tif (!is_array($p_IPAddressArray) || sizeof($p_IPAddressArray) < 4) {\n\t\t\treturn null;\n\t\t}\n\t\t$IPAddress = 0;\n\t\tfor ($i = 0; $i < 4; $i++) {\n\t\t\t$IPAddress += $p_IPAddressArray[$i] * pow(256, 3-$i);\n\t\t}\n\t\treturn $IPAddress;\n\t}\n\n\tprivate function __int2array($p_IPAddress)\n\t{\n\t\t$IPAddressArray = array();\n\t\tfor ($i = 3; $i >= 0; $i--) {\n\t\t\t$IPAddressArray[] = (int)($p_IPAddress / pow(256, $i));\n\t\t\t$p_IPAddress -= $IPAddressArray[3-$i] * pow(256, $i);\n\t\t}\n\t\treturn $IPAddressArray;\n\t}\n\n\tprivate function __array2string($p_IPAddressArray)\n\t{\n\t\tif (!is_array($p_IPAddressArray) || sizeof($p_IPAddressArray) < 4) {\n\t\t\treturn null;\n\t\t}\n\t\t$IPAddress = '';\n\t\tfor ($i = 0; $i < 4; $i++) {\n\t\t\t$IPAddress = \"$IPAddress.\".$p_IPAddressArray[$i];\n\t\t}\n\t\t$IPAddress = substr($IPAddress, 1);\n\t\treturn $IPAddress;\n\t}\n\n\t/**\n\t * IP based access has a start address and a number of addresses.\n\t * The IP access group is assigned to a reader.\n\t * @param int $p_userId\n\t * @param int $p_startIP\n\t * @param int $p_addresses\n\t */\n\tpublic function IPAccess($p_userId = null, $p_startIP = null, $p_addresses = null)\n\t{\n\t\tparent::DatabaseObject($this->m_columnNames);\n\t\t$this->m_data['IdUser'] = $p_userId;\n\t\t$startIP = null;\n\t\tif (!is_null($p_startIP)) {\n\t\t\t$startIP = $p_startIP;\n\t\t\tif (!is_array($startIP)) {\n\t\t\t\t$startIP = $this->__string2array($startIP);\n\t\t\t}\n\t\t\t$startIP = $this->__array2int($startIP);\n\t\t}\n\t\t$this->m_data['StartIP'] = $startIP;\n\t\t$this->m_data['Addresses'] = $p_addresses;\n\t\tif ($this->keyValuesExist()) {\n\t\t\t$this->fetch();\n\t\t}\n\t}\n\n\tpublic function create($p_userId = null, $p_startIP = null, $p_addresses = 1)\n\t{\n\t\t$startIP = null;\n\t\t$startIPstring = '';\n\t\tif (!is_null($p_startIP)) {\n\t\t\tif (!is_array($p_startIP)) {\n\t\t\t\t$startIP = $this->__string2array($p_startIP);\n\t\t\t\t$startIPstring = $p_startIP;\n\t\t\t} else {\n\t\t\t\t$startIPstring = $this->__array2string($p_startIP);\n\t\t\t}\n\t\t\t$startIP = $this->__array2int($p_startIP);\n\t\t}\n\t    $tmpValues = array('IdUser'=>$p_userId, 'StartIP'=>$startIP, 'Addresses'=>$p_addresses);\n\t    $result = parent::create($tmpValues);\n\t    return $result;\n\t}\n\n\tpublic function delete()\n\t{\n\t\t$startIPstring = $this->getStartIPstring();\n\t\t$addresses = $this->getAddresses();\n\t\t$result = parent::delete();\n\t\treturn $result;\n\t}\n\n\tpublic function getUserId()\n\t{\n\t\treturn $this->m_data['IdUser'];\n\t}\n\n\tpublic function getStartIP()\n\t{\n\t\treturn $this->m_data['StartIP'];\n\t}\n\n\tpublic function getStartIParray()\n\t{\n\t\treturn $this->__int2array($this->m_data['StartIP']);\n\t}\n\n\tpublic function getStartIPstring()\n\t{\n\t\treturn $this->__array2string($this->__int2array($this->m_data['StartIP']));\n\t}\n\n\tpublic function getAddresses()\n\t{\n\t\treturn $this->m_data['Addresses'];\n\t}\n\n\tpublic static function GetUserIPAccessList($p_userId)\n\t{\n\t\tglobal $g_ado_db;\n\n\t\t$queryStr = \"SELECT * FROM SubsByIP WHERE IdUser = $p_userId\";\n\t\t$rows = $g_ado_db->GetAll($queryStr);\n\t\t$IPAccessList = array();\n\t\tif (is_array($rows)) {\n\t\t\tforeach ($rows as $row) {\n\t\t\t\t$tmpObj = new IPAccess();\n\t\t\t\t$tmpObj->fetch($row);\n\t\t\t\t$IPAccessList[] = $tmpObj;\n\t\t\t}\n\t\t}\n\t\treturn $IPAccessList;\n\t}\n\n\tpublic static function GetUsersHavingIP($p_ipAddress)\n\t{\n        global $g_ado_db;\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('GetUsersHavingIP', $p_ipAddress), 'users');\n        if ($cacheService->contains($cacheKey)) {\n            $users = $cacheService->fetch($cacheKey);\n        } else {\n            $ipObj = new IPAccess();\n            $intIPAddress = $ipObj->__array2int($ipObj->__string2array($p_ipAddress));\n            $queryStr = \"SELECT DISTINCT(IdUser) FROM SubsByIP WHERE StartIP <= $intIPAddress \"\n            . \"AND $intIPAddress <= (StartIP + Addresses - 1)\";\n            $rows = (array) $g_ado_db->GetAll($queryStr);\n\n            if (empty($rows)) {\n                $cacheService->save($cacheKey, array());\n                return array();\n            }\n\n            $users = array();\n\t\t    foreach ($rows as $row) {\n                $users[] = $GLOBALS['controller']->getHelper('service')->getService('user')->find($row['IdUser']);\n\t\t    }\n            $cacheService->save($cacheKey, $users);\n        }\n\n\t\treturn $users;\n\t}\n}\n?>"
  },
  {
    "path": "newscoop/classes/Image.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbObjectArray.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\n\nuse Imagine\\Image\\Box;\n\n/**\n * @package Campsite\n */\nclass Image extends DatabaseObject\n{\n    public $m_keyColumnNames = array('Id');\n    public $m_keyIsAutoIncrement = true;\n    public $m_dbTableName = 'Images';\n    public $m_columnNames = array(\n        'Id',\n        'Description',\n        'Photographer',\n        'Place',\n        'Date',\n        'ContentType',\n        'Location',\n        'URL',\n        'ThumbnailFileName',\n        'ImageFileName',\n        'UploadedByUser',\n        'LastModified',\n        'TimeCreated',\n        'photographer_url',\n        'Source',\n        'Status'\n    );\n\n    private static $s_defaultOrder = array(array('field'=>'default', 'dir'=>'asc'));\n\n    /**\n     * An image is both the orginal image, plus a thumbnail image,\n     * plus metadata.\n     *\n     * @param int $p_imageId\n     */\n    public function __construct($p_imageId = null)\n    {\n        parent::DatabaseObject($this->m_columnNames);\n        $this->m_data['Id'] = $p_imageId;\n        if ($this->keyValuesExist()) {\n            $this->fetch();\n        }\n    } // constructor\n\n    /**\n     * Update the image data in the database.\n     *\n     * @param  array   $p_columns\n     * @param  boolean $p_commit\n     * @param  boolean $p_isSql\n     * @return boolean\n     */\n    public function update($p_columns = null, $p_commit = true, $p_isSql = false)\n    {\n        $success = parent::update($p_columns, $p_commit, $p_isSql);\n\n        return $success;\n    } // fn update\n\n    /**\n     * Delete the row from the database, all article references to this image,\n     * and the file(s) on disk.\n     *\n     * @return mixed\n     *               TRUE if the record was deleted,\n     *               return a PEAR_Error on failure.\n     */\n    public function delete()\n    {\n        require_once($GLOBALS['g_campsiteDir'].'/classes/ArticleImage.php');\n\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        $imageStorageService = Zend_Registry::get('container')->getService('image.update_storage');\n        if ($imageStorageService->isDeletable($this->getImageFileName())) {\n            // Deleting the images from disk is the most common place for\n            // something to go wrong, so we do that first.\n            $thumb = $this->getThumbnailStorageLocation();\n            $imageFile = $this->getImageStorageLocation();\n\n            if (file_exists($thumb) && !is_writable($thumb)) {\n                return new PEAR_Error(camp_get_error_message(CAMP_ERROR_DELETE_FILE, $thumb), CAMP_ERROR_DELETE_FILE);\n            }\n\n            if (file_exists($imageFile) && !is_writable($imageFile)) {\n                return new PEAR_Error(camp_get_error_message(CAMP_ERROR_DELETE_FILE, $imageFile), CAMP_ERROR_DELETE_FILE);\n            }\n\n            if (file_exists($imageFile) && !unlink($imageFile)) {\n                return new PEAR_Error(camp_get_error_message(CAMP_ERROR_DELETE_FILE, $imageFile), CAMP_ERROR_DELETE_FILE);\n            }\n\n            if (file_exists($thumb) && !unlink($thumb)) {\n                return new PEAR_Error(camp_get_error_message(CAMP_ERROR_DELETE_FILE, $thumb), CAMP_ERROR_DELETE_FILE);\n            }\n        }\n\n        // Delete all the references to this image.\n        ArticleImage::OnImageDelete($this->getImageId());\n\n        $imageId = $this->getImageId();\n        $imageDescription = $this->getDescription();\n\n        // @ticket CS-4225\n        $em = \\Zend_Registry::get('container')->getService('em');\n        $entity = $em->find('Newscoop\\Image\\LocalImage', $imageId);\n        $em->remove($entity);\n        $em->flush();\n\n        // Delete the record in the database\n        if (!parent::delete()) {\n            return new PEAR_Error($translator->trans(\"Could not delete record from the database.\", array(), 'api'));\n        }\n\n        return true;\n    } // fn delete\n\n    /**\n     * Commit current values to the database.\n     * The values \"TimeCreated\" and \"LastModified\" are ignored.\n     *\n     * @return boolean\n     *                 Return TRUE if the database was updated, false otherwise.\n     */\n    public function commit($p_ignoreColumns = NULL)\n    {\n        return parent::commit(array(\"TimeCreated\", \"LastModified\"));\n    } // fn commit\n\n    /**\n     * Return true if the image is being used by an article.\n     *\n     * @return boolean\n     */\n    public function inUse()\n    {\n        global $g_ado_db;\n        // It is in use only if there is an entry in both\n        // the ArticleImages table and the Articles table.\n        $queryStr = 'SELECT Articles.Number FROM Articles, ArticleImages '\n                    .' WHERE IdImage='.$this->getImageId()\n                    .' AND Articles.Number=ArticleImages.NrArticle';\n        if ($g_ado_db->GetOne($queryStr)) {\n            return true;\n        } else {\n            return false;\n        }\n    } // fn inUse\n\n    /**\n     * @return int\n     */\n    public function getImageId()\n    {\n        return $this->m_data['Id'];\n    } // fn getImageId\n\n    /**\n     * @return int\n     */\n    public function getImageFileName()\n    {\n        return $this->m_data['ImageFileName'];\n    } // fn getImageId\n\n    /**\n     * @return string\n     */\n    public function getDescription()\n    {\n        return $this->m_data['Description'];\n    } // fn getDescription\n\n    /**\n     * @return string\n     */\n    public function getPhotographer()\n    {\n        return strip_tags($this->m_data['Photographer']);\n    } // fn getPhotographer\n\n    /**\n     * Get photographer url\n     *\n     * @return string\n     */\n    public function getPhotographerUrl()\n    {\n        return (string) $this->m_data['photographer_url'];\n    }\n\n    /**\n     * @return string\n     */\n    public function getPlace()\n    {\n        return strip_tags($this->m_data['Place']);\n    } // fn getPlace\n\n    /**\n     * @return string\n     */\n    public function getDate()\n    {\n        return $this->m_data['Date'];\n    } // fn getDate\n\n    /**\n     * @return string\n     */\n    public function getLocation()\n    {\n        return strip_tags($this->m_data['Location']);\n    } // fn getLocation\n\n    /**\n     * Returns true if the image was stored locally\n     */\n    public function isLocal()\n    {\n        return (int) $this->m_data['Location'] == 'local';\n    } // fn isLocal\n\n    /**\n     * @return string\n     */\n    public function getUrl()\n    {\n        return $this->m_data['URL'];\n    } // fn getUrl\n\n    /**\n     * @return string\n     */\n    public function getContentType()\n    {\n        return $this->m_data['ContentType'];\n    } // fn getContentType\n\n    /**\n     * @return string\n     */\n    public function getType()\n    {\n        return substr($this->m_data['ContentType'], strlen('image/'));\n    } // fn getType\n\n    /**\n     * @return string\n     */\n    public function getSource()\n    {\n        return $this->m_data['Source'];\n    } // fn getSource\n\n    /**\n     * @return int\n     */\n    public function getUploadingUserId()\n    {\n        return $this->m_data['UploadedByUser'];\n    } // fn getUploadingUserId\n\n    /**\n     * @return string\n     */\n    public function getStatus()\n    {\n        return $this->m_data['Status'];\n    } // fn getSource\n\n    /**\n     * Return the full path to the image file.\n     * @return string\n     */\n    public function getImageStorageLocation()\n    {\n        global $Campsite;\n        if ($this->m_data['Location'] == 'local') {\n            return $Campsite['IMAGE_DIRECTORY'].$this->m_data['ImageFileName'];\n        } else {\n            return $this->m_data['URL'];\n        }\n    } // fn getImageStorageLocation\n\n    /**\n     * Return the full path to the thumbnail file.\n     * @return string\n     */\n    public function getThumbnailStorageLocation()\n    {\n        global $Campsite;\n\n        return $Campsite['THUMBNAIL_DIRECTORY'].$this->m_data['ThumbnailFileName'];\n    } // fn getThumbnailStorageLocation\n\n    /**\n     * Generate the full path to the thumbnail storage location on disk.\n     * @param  string $p_fileExtension\n     *                                 The file extension for the filename.\n     * @return string\n     */\n    public function generateThumbnailStorageLocation($p_fileExtension)\n    {\n        global $Campsite;\n        $thumbnailStorageLocation = $Campsite['THUMBNAIL_DIRECTORY']\n            .$Campsite['THUMBNAIL_PREFIX'].sprintf('%09d', $this->getImageId())\n            .'.'.$p_fileExtension;\n\n        return $thumbnailStorageLocation;\n    } // fn generateThumbnailStorageLocation\n\n    /**\n     * Generate the full path to the image storage location on disk.\n     * @param  string $p_fileExtension\n     *                                 The file extension for the filename.\n     * @return string\n     */\n    public function generateImageStorageLocation($p_fileExtension)\n    {\n        global $Campsite;\n        $imageStorageLocation = $Campsite['IMAGE_DIRECTORY']\n            .$Campsite['IMAGE_PREFIX'].sprintf('%09d', $this->getImageId())\n            .'.'.$p_fileExtension;\n\n        return $imageStorageLocation;\n    } // fn generateImageStorageLocation\n\n    /**\n     * Return the full URL to the image image.\n     * @return string\n     */\n    public function getImageUrl()\n    {\n        global $Campsite;\n        if ($this->m_data['Location'] == 'local') {\n            return $Campsite['IMAGE_BASE_URL'].$this->m_data['ImageFileName'];\n        } else {\n            return $this->m_data['URL'];\n        }\n    } // fn getImageUrl\n\n    public function fixMissingThumbnail()\n    {\n       global $Campsite;\n       if (!file_exists($Campsite['THUMBNAIL_DIRECTORY'].$this->m_data['ThumbnailFileName'])) {\n           $this->generateThumbnailFromImage();\n       }\n    }\n\n    /**\n     * Get the full URL to the thumbnail image.\n     * @return string\n     */\n    public function getThumbnailUrl()\n    {\n        global $Campsite;\n        $this->fixMissingThumbnail();\n\n        return $Campsite['THUMBNAIL_BASE_URL'].$this->m_data['ThumbnailFileName'];\n    } // fn getThumbnailUrl\n\n    /**\n     * Generate the thumbnail from the existing image.\n     *\n     * @return mixed\n     *               The Image object that was created or updated on success,\n     *               return error on error.\n     */\n    public function generateThumbnailFromImage()\n    {\n        global $Campsite;\n\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        // Verify its a valid image file.\n        $imageInfo = @getimagesize($this->getImageStorageLocation());\n        if ($imageInfo === false) {\n            return new PEAR_Error($translator->trans(\"The file uploaded is not an image.\", array(), 'api'));\n        }\n        $extension = Image::__ImageTypeToExtension($imageInfo[2]);\n\n        $thumbDir = $Campsite['THUMBNAIL_DIRECTORY'];\n        if (!file_exists($thumbDir) || !is_writable($thumbDir)) {\n            return FALSE;\n        }\n\n        $target = $this->generateImageStorageLocation($extension);\n        $thumbnail = $this->generateThumbnailStorageLocation($extension);\n\n        try {\n\n            $createMethodName = Image::__GetImageTypeCreateMethod($imageInfo[2]);\n            if (!isset($createMethodName)) {\n                throw new Exception($translator->trans(\"Image type $1 is not supported.\", array('$1' => image_type_to_mime_type($p_imageType)), 'api'));\n            }\n\n            $imageHandler = $createMethodName($target);\n            $thumbnailImage = Image::ResizeImage($imageHandler, $Campsite['THUMBNAIL_MAX_SIZE'], $Campsite['THUMBNAIL_MAX_SIZE']);\n            $thumbnailImage->save($thumbnail, array(\n                'format' => $extension,\n                'quality' => 90, //from 0 to 100\n            ));\n\n            self::chmod($thumbnail, 0644);\n        } catch (Exception $ex) {\n            if (file_exists($thumbnail)) {\n                @unlink($thumbnail);\n            }\n\n            return new PEAR_Error($ex->getMessage(), $ex->getCode());\n        }\n\n        return $thumbnailImage;\n    }\n\n    /**\n     * @return int\n     */\n    public static function GetMaxId()\n    {\n        global $g_ado_db;\n        $queryStr = 'SHOW TABLE STATUS LIKE \"Images\"';\n        $result = $g_ado_db->GetRow($queryStr);\n\n        return $result['Auto_increment'];\n    } // fn GetMaxId\n\n    /**\n     * @return int\n     */\n    public static function GetTotalImages()\n    {\n        global $g_ado_db;\n        $queryStr = 'SHOW TABLE STATUS LIKE \"Images\"';\n        $result = $g_ado_db->GetRow($queryStr);\n\n        return $result['Rows'];\n    } // fn GetTotalImages\n\n    private function __ImageTypeToExtension($p_imageType)\n    {\n        $extension = '';\n        switch ($p_imageType) {\n           case IMAGETYPE_GIF: $extension = 'gif'; break;\n           case IMAGETYPE_JPEG: $extension = 'jpg'; break;\n           case IMAGETYPE_PNG: $extension = 'png'; break;\n           case IMAGETYPE_SWF: $extension = 'swf'; break;\n           case IMAGETYPE_PSD: $extension = 'psd'; break;\n           case IMAGETYPE_BMP: $extension = 'bmp'; break;\n           case IMAGETYPE_TIFF_II: $extension = 'tiff'; break;\n           case IMAGETYPE_TIFF_MM: $extension = 'tiff'; break;\n           case IMAGETYPE_JPC: $extension = 'jpc'; break;\n           case IMAGETYPE_JP2: $extension = 'jp2'; break;\n           case IMAGETYPE_JPX: $extension = 'jpx'; break;\n           case IMAGETYPE_JB2: $extension = 'jb2'; break;\n           case IMAGETYPE_SWC: $extension = 'swc'; break;\n           case IMAGETYPE_IFF: $extension = 'aiff'; break;\n           case IMAGETYPE_WBMP: $extension = 'wbmp'; break;\n           case IMAGETYPE_XBM: $extension = 'xbm'; break;\n        }\n\n        return $extension;\n    }\n\n    private function __GetImageTypeCreateMethod($p_imageType)\n    {\n        $method = null;\n        switch ($p_imageType) {\n           case IMAGETYPE_GIF: $method = 'imagecreatefromgif'; break;\n           case IMAGETYPE_JPEG: $method = 'imagecreatefromjpeg'; break;\n           case IMAGETYPE_PNG: $method = 'imagecreatefrompng'; break;\n           case IMAGETYPE_SWF: $method = null; break;\n           case IMAGETYPE_PSD: $method = null; break;\n           case IMAGETYPE_BMP: $method = null; break;\n           case IMAGETYPE_TIFF_II: $method = null; break;\n           case IMAGETYPE_TIFF_MM: $method = null; break;\n           case IMAGETYPE_JPC: $method = null; break;\n           case IMAGETYPE_JP2: $method = null; break;\n           case IMAGETYPE_JPX: $method = null; break;\n           case IMAGETYPE_JB2: $method = null; break;\n           case IMAGETYPE_SWC: $method = null; break;\n           case IMAGETYPE_IFF: $method = null; break;\n           case IMAGETYPE_WBMP: $method = 'imagecreatefromwbmp'; break;\n           case IMAGETYPE_XBM: $method = 'imagecreatefromxbm'; break;\n        }\n\n        return $method;\n    }\n\n    /**\n     * This function should be called when an image is uploaded.  It will save\n     * the image to the appropriate place on the disk, create a thumbnail for it,\n     * and create a database entry for the file.\n     *\n     * @param array $p_fileVar\n     *                         <pre>\n     *                         The variable from the $_FILES array.  The array specifies the following:\n     *                         $a[\"name\"] = original name of the file.\n     *                         $a[\"type\"] = the MIME type of the file, e.g. image/gif\n     *                         $a[\"tmp_name\"] = the temporary storage location on disk of the file\n     *                         $a[\"size\"] = size of the file, in bytes (not required)\n     *                         $a[\"error\"] = 0 (zero) if there was no error\n     *                         </pre>\n     *\n     * @param array $p_attributes\n     *                            Optional attributes which are stored in the database.\n     *                            Indexes can be the following: 'Description', 'Photographer', 'Place', 'Date'\n     *\n     * @param int $p_userId\n     *                      The user who uploaded the file.\n     *\n     * @param int $p_id\n     *                  If the image already exists and we just want to update it, specify the\n     *                  current image ID here.\n     *\n     * @return mixed\n     *               The Image object that was created or updated on success,\n     *               return PEAR_Error on error.\n     */\n    public static function OnImageUpload($p_fileVar, $p_attributes,\n                                         $p_userId = null, $p_id = null,\n                                         $p_isLocalFile = false)\n    {\n        global $Campsite;\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        if (!is_array($p_fileVar)) {\n            return new PEAR_Error(\"Invalid arguments given to Image::OnImageUpload()\");\n        }\n\n        // Verify its a valid image file.\n        $imageInfo = @getimagesize($p_fileVar['tmp_name']);\n        if ($imageInfo === false) {\n            return new PEAR_Error($translator->trans(\"The file uploaded is not an image.\", array(), 'api'));\n        }\n        $extension = Image::__ImageTypeToExtension($imageInfo[2]);\n\n        // Check if image & thumbnail directories are writable.\n        $imageDir = $Campsite['IMAGE_DIRECTORY'];\n        $thumbDir = $Campsite['THUMBNAIL_DIRECTORY'];\n        if (!file_exists($imageDir) || !is_writable($imageDir)) {\n            return new PEAR_Error(camp_get_error_message(CAMP_ERROR_WRITE_DIR, $imageDir),\n                                  CAMP_ERROR_WRITE_DIR);\n        }\n        if (!file_exists($thumbDir) || !is_writable($thumbDir)) {\n            return new PEAR_Error(camp_get_error_message(CAMP_ERROR_WRITE_DIR, $thumbDir),\n                                  CAMP_ERROR_WRITE_DIR);\n        }\n\n        // Are we updating or creating?\n        if (!is_null($p_id)) {\n            // Updating the image\n            $image = new Image($p_id);\n            $image->update($p_attributes, false);\n            // Remove the old image & thumbnail because\n            // the new file may have a different file extension.\n            if (file_exists($image->getImageStorageLocation())) {\n                unlink($image->getImageStorageLocation());\n            }\n            if (file_exists($image->getThumbnailStorageLocation())) {\n                unlink($image->getThumbnailStorageLocation());\n            }\n        } else {\n            // Creating the image\n            $image = new Image();\n            $image->create($p_attributes);\n            $image->setProperty('TimeCreated', 'NULL', true, true);\n            $image->setProperty('LastModified', 'NULL', true, true);\n        }\n        $image->setProperty('Location', 'local', false);\n        // If we are using PHP version >= 4.3\n        if (isset($imageInfo['mime'])) {\n            $image->setProperty('ContentType', $imageInfo['mime'], false);\n        } else {\n            $image->setProperty('ContentType', $p_fileVar['type'], false);\n        }\n        if (!is_null($p_userId)) {\n            $image->setProperty('UploadedByUser', $p_userId, false);\n        }\n        if (!isset($p_attributes['Date'])) {\n            $image->setProperty('Date', 'NOW()', true, true);\n        }\n        $target = $image->generateImageStorageLocation($extension);\n        $thumbnail = $image->generateThumbnailStorageLocation($extension);\n        $image->setProperty('ImageFileName', basename($target), false);\n        $image->setProperty('ThumbnailFileName', basename($thumbnail), false);\n\n        try {\n            if ($p_isLocalFile) {\n                if (!copy($p_fileVar['tmp_name'], $target)) {\n                    throw new Exception(camp_get_error_message(CAMP_ERROR_CREATE_FILE, $target),\n                                        CAMP_ERROR_CREATE_FILE);\n                }\n            } else {\n                if (!rename($p_fileVar['tmp_name'], $target)) {\n                    throw new Exception(camp_get_error_message(CAMP_ERROR_CREATE_FILE, $target),\n                                        CAMP_ERROR_CREATE_FILE);\n                }\n            }\n\n            self::chmod($target, 0644);\n\n            $createMethodName = Image::__GetImageTypeCreateMethod($imageInfo[2]);\n            if (!isset($createMethodName)) {\n                throw new Exception($translator->trans(\"Image type $1 is not supported.\", array(\n                                    '$1' => image_type_to_mime_type($p_imageType)), 'api'));\n            }\n\n            $imageHandler = $createMethodName($target);\n            if (!$imageHandler) {\n                throw new Exception(camp_get_error_message(CAMP_ERROR_UPLOAD_FILE, $p_fileVar['name']), CAMP_ERROR_UPLOAD_FILE);\n            }\n\n            $thumbnailImage = Image::ResizeImage($imageHandler, $Campsite['THUMBNAIL_MAX_SIZE'], $Campsite['THUMBNAIL_MAX_SIZE']);\n            $thumbnailImage->save($thumbnail, array(\n                'format' => $extension,\n                'quality' => 90, //from 0 to 100\n            ));\n\n            self::chmod($thumbnail, 0644);\n        } catch (Exception $ex) {\n            if (file_exists($target)) {\n                @unlink($target);\n            }\n            if (file_exists($thumbnail)) {\n                @unlink($thumbnail);\n            }\n            if (is_null($p_id)) {\n                $image->delete();\n            }\n\n            return new PEAR_Error($ex->getMessage(), $ex->getCode());\n        }\n\n        $user = Zend_Registry::get('container')->getService('user')->getCurrentUser();\n        if ($user && $user->isAdmin()) {\n            $image->m_data['Status'] = 'approved';\n            $image->m_data['Source'] = 'local';\n        }\n\n        $image->commit();\n\n        return $image;\n    } // fn OnImageUpload\n\n    /**\n     * Saves the image refered by the resource handler to a file\n     *\n     * @param  resource $p_image\n     *                                  Image resource handler\n     * @param  string   $p_fileName\n     *                                  The full path of the file\n     * @param  int      $p_type\n     *                                  The image type\n     * @param  bool     $p_addExtension\n     *                                  If true it will add the proper extension to the file name.\n     * @return mixed\n     *                                 true if successful, PEAR_Error object in case of error\n     */\n    public static function SaveImageToFile($p_image, $p_fileName,\n                                           $p_imageType, $p_addExtension = true)\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $method = null;\n        switch ($p_imageType) {\n           case IMAGETYPE_GIF: $method = 'imagegif'; break;\n           case IMAGETYPE_JPEG: $method = 'imagejpeg'; break;\n           case IMAGETYPE_PNG: $method = 'imagepng'; break;\n           case IMAGETYPE_WBMP: $method = 'imagewbmp'; break;\n           case IMAGETYPE_XBM: $method = 'imagexbm'; break;\n        } // these are the supported image types\n        if ($method == null) {\n            return new PEAR_Error($translator->trans(\"Image type $1 is not supported.\", array(\n                                  '$1' => image_type_to_mime_type($p_imageType)), 'api'));\n        }\n        if (!$method($p_image, $p_fileName)) {\n            return new PEAR_Error(camp_get_error_message(CAMP_ERROR_CREATE_FILE, $p_fileName),\n                                  CAMP_ERROR_CREATE_FILE);\n        }\n\n        return true;\n    }\n\n    /**\n     * Resizes the given image\n     *\n     * @param  resource $image\n     *                               The image resource handler\n     * @param  int      $p_maxWidth\n     *                               The maximum width of the resized image\n     * @param  int      $p_maxHeight\n     *                               The maximum height of the resized image\n     * @param  bool     $keepRatio\n     *                               If true keep the image ratio\n     * @param  int      $type\n     *                               Image type\n     * @return int\n     *                              Return the new image resource handler.\n     */\n    public static function ResizeImage($image, $p_maxWidth, $p_maxHeight, $keepRatio = true, $type = IMAGETYPE_JPEG)\n    {\n        if (!isset($image) || empty($image)) {\n            throw new Exception('The image resource handler is not available.');\n        }\n\n        $origImageWidth = imagesx($image);\n        $origImageHeight = imagesy($image);\n        if ($origImageWidth <= 0 || $origImageHeight <= 0) {\n            throw new Exception(\"The file uploaded is not an image.\");\n        }\n\n        $p_maxWidth = is_numeric($p_maxWidth) ? (int) $p_maxWidth : 0;\n        $p_maxHeight = is_numeric($p_maxHeight) ? (int) $p_maxHeight : 0;\n        if ($p_maxWidth <= 0 || $p_maxHeight <= 0) {\n            throw new Exception(\"Invalid resize width/height.\");\n        }\n        if ($keepRatio) {\n            $ratioOrig = $origImageWidth / $origImageHeight;\n            $ratioNew = $p_maxWidth / $p_maxHeight;\n            if ($ratioNew > $ratioOrig) {\n                $newImageWidth = $p_maxHeight * $ratioOrig;\n                $newImageHeight = $p_maxHeight;\n            } else {\n                $newImageWidth = $p_maxWidth;\n                $newImageHeight = $p_maxWidth / $ratioOrig;\n            }\n        } else {\n            $newImageWidth = $p_maxWidth;\n            $newImageHeight = $p_maxHeight;\n        }\n\n        $image = new \\Imagine\\Gd\\Image($image);\n        $image->resize(new Box($newImageWidth, $newImageHeight));\n\n        return $image;\n    }\n\n    /**\n     * Get an array of Images uploaded by the user with $user_id.\n     *\n     * @param  int   $user_id\n     * @return array Image objects\n     */\n    public static function GetUploadedImagesForUser($user_id)\n    {\n        global $g_ado_db;\n        $images = array();\n\n        $queryStr = \"SELECT * FROM Images WHERE UploadedByUser=\" . $g_ado_db->escape($user_id);\n        $rows = $g_ado_db->GetAll($queryStr);\n\n        foreach ($rows as $row) {\n            $image = new Image();\n            $image->fetch($row);\n\n            $images[] = $image;\n        }\n\n        return $images;\n    }\n\n    /**\n     * Fetch an image object by matching the URL.\n     * @param  string $p_url\n     * @return Image\n     */\n    public static function GetByUrl($p_url)\n    {\n        global $g_ado_db;\n        $queryStr = \"SELECT * FROM Images WHERE URL=\" . $g_ado_db->escape($p_url);\n        $row = $g_ado_db->GetRow($queryStr);\n        $image = new Image();\n        $image->fetch($row);\n\n        return $image;\n    } // fn GetByUrl\n\n    /**\n     * Return an array that can be used in a template.\n     *\n     * @return array\n     */\n    public function toTemplate()\n    {\n        $template = array();\n        $template['id'] = $this->getImageId();\n        $template['description'] = $this->getDescription();\n        $template['photographer'] = $this->getPhotographer();\n        $template['place'] = $this->getPlace();\n        $template['date'] = $this->getDate();\n        $template['content_type'] = $this->getContentType();\n        $template['image_url'] = $this->getImageUrl();\n        $template['thumbnail_url'] = $this->getThumbnailUrl();\n        $template['photographer_url'] = $this->getPhotographerUrl();\n\n        return $template;\n    } // fn toTemplate\n\n    /**\n     * Returns an images list based on the given parameters.\n     *\n     * @param array   $p_parameters\n     *                              An array of ComparionOperation objects\n     * @param string  $p_order\n     *                              An array of columns and directions to order by\n     * @param integer $p_start\n     *                              The record number to start the list\n     * @param integer $p_limit\n     *                              The offset. How many records from $p_start will be retrieved.\n     *\n     * @return array $issueList\n     *               An array of Issue objects\n     */\n    public static function GetList(array $p_parameters, array $p_order = array(),\n                                   $p_start = 0, $p_limit = 0, &$p_count, $p_skipCache = false)\n    {\n        global $g_ado_db;\n\n        if (!$p_skipCache && CampCache::IsEnabled()) {\n            $paramsArray['parameters'] = serialize($p_parameters);\n            $paramsArray['order'] = (is_null($p_order)) ? 'null' : $p_order;\n            $paramsArray['start'] = $p_start;\n            $paramsArray['limit'] = $p_limit;\n            $cacheListObj = new CampCacheList($paramsArray, __METHOD__);\n            $imagesList = $cacheListObj->fetchFromCache();\n            if ($imagesList !== false && is_array($imagesList)) {\n                return $imagesList;\n            }\n        }\n\n        $selectClauseObj = new SQLSelectClause();\n        $countClauseObj = new SQLSelectClause();\n\n        // sets the where conditions\n        foreach ($p_parameters as $param) {\n            $comparisonOperation = self::ProcessListParameters($param);\n            if (sizeof($comparisonOperation) < 3) {\n                break;\n            }\n\n            if ($comparisonOperation['symbol'] == 'match') {\n                $whereCondition = 'MATCH(' . $comparisonOperation['left'] . \") AGAINST(\"\n                    . $g_ado_db->escape($comparisonOperation['right']) . \" IN BOOLEAN MODE)\";\n            } else {\n                $whereCondition = $g_ado_db->escapeOperation($comparisonOperation);\n            }\n            $selectClauseObj->addWhere($whereCondition);\n            $countClauseObj->addWhere($whereCondition);\n        }\n\n        // sets the columns to be fetched\n        $tmpImage = new Image();\n        $columnNames = $tmpImage->getColumnNames(true);\n        foreach ($columnNames as $columnName) {\n            $selectClauseObj->addColumn($columnName);\n        }\n        $countClauseObj->addColumn('COUNT(*)');\n\n        // sets the base table\n        $selectClauseObj->setTable($tmpImage->getDbTableName());\n        $countClauseObj->setTable($tmpImage->getDbTableName());\n        unset($tmpImage);\n\n        // sets the ORDER BY condition\n        $p_order = array_merge($p_order, self::$s_defaultOrder);\n        $order = self::ProcessListOrder($p_order);\n        foreach ($order as $orderDesc) {\n            $orderColumn = $orderDesc['field'];\n            $orderDirection = $orderDesc['dir'];\n            $selectClauseObj->addOrderBy($orderColumn . ' ' . $orderDirection);\n        }\n\n        // sets the limit\n        $selectClauseObj->setLimit($p_start, $p_limit);\n\n        // builds the query and executes it\n        $selectQuery = $selectClauseObj->buildQuery();\n\n        $images = $g_ado_db->GetAll($selectQuery);\n        if (is_array($images)) {\n            $countQuery = $countClauseObj->buildQuery();\n            $p_count = $g_ado_db->GetOne($countQuery);\n\n            // builds the array of image objects\n            $imagesList = array();\n            foreach ($images as $image) {\n                $imgObj = new Image($image['Id']);\n                if ($imgObj->exists()) {\n                    $imagesList[] = $imgObj;\n                }\n            }\n        } else {\n            $imagesList = array();\n            $p_count = 0;\n        }\n        if (!$p_skipCache && CampCache::IsEnabled()) {\n            $cacheListObj->storeInCache($imagesList);\n        }\n\n        return $imagesList;\n    } // fn GetList\n\n    /**\n     * Processes a parameter (condition) coming from template tags.\n     *\n     * @param array $p_param\n     *                       The array of parameters\n     *\n     * @return array $comparisonOperation;\n     *               The array containing processed values of the condition\n     */\n    private static function ProcessListParameters($p_param)\n    {\n        $comparisonOperation = array();\n        $comparisonOperation['right'] = $p_param->getRightOperand();\n\n        switch (strtolower($p_param->getLeftOperand())) {\n            case 'search':\n                $comparisonOperation['left'] = 'Images.Description, Images.Photographer, Images.Place';\n                break;\n            case 'description':\n                $comparisonOperation['left'] = 'Images.Description';\n                break;\n            case 'photographer':\n                $comparisonOperation['left'] = 'Images.Photographer';\n                break;\n            case 'place':\n                $comparisonOperation['left'] = 'Images.Place';\n                break;\n            case 'date':\n                $comparisonOperation['left'] = 'Images.Date';\n                break;\n            case 'local':\n                $comparisonOperation['left'] = 'Images.Location';\n                $comparisonOperation['right'] = 'local';\n                break;\n            case 'type':\n                $comparisonOperation['left'] = 'Images.ContentType';\n                $comparisonOperation['right'] = 'image/' . $p_param->getRightOperand();\n                break;\n            case 'last_modified':\n                $comparisonOperation['left'] = 'Images.LastModified';\n                break;\n            case 'status':\n                $comparisonOperation['right'] = strtolower($comparisonOperation['right']);\n                if ($comparisonOperation['right'] == 'approved'\n                || $comparisonOperation['right'] == 'unapproved') {\n                    $comparisonOperation['left'] = 'Images.Status';\n                }\n                break;\n            case 'user':\n                $comparisonOperation['left'] = 'Images.UploadedByUser';\n                break;\n            default:\n                return null;\n        }\n\n        $operatorObj = $p_param->getOperator();\n        $comparisonOperation['symbol'] = $operatorObj->getSymbol('sql');\n\n        return $comparisonOperation;\n    } // fn ProcessListParameters\n\n    /**\n     * Processes an order directive coming from template tags.\n     *\n     * @param array $p_order\n     *                       The array of order directives in the format:\n     *                       array('field'=>field_name, 'dir'=>order_direction)\n     *                       field_name can take one of the following values:\n     *                       bydescription, byphotographer, bydate, bylastdate\n     *                       order_direction can take one of the following values:\n     *                       asc, desc\n     *\n     * @return array\n     *               The array containing processed values of the condition\n     */\n    private static function ProcessListOrder(array $p_order)\n    {\n        $order = array();\n        foreach ($p_order as $orderDesc) {\n            $field = $orderDesc['field'];\n            $direction = $orderDesc['dir'];\n            $dbField = null;\n            switch (strtolower($field)) {\n                case 'default':\n                    $dbField = 'Images.Id';\n                    break;\n                case 'bydescription':\n                    $dbField = 'Images.Description';\n                    break;\n                case 'byphotographer':\n                    $dbField = 'Images.Photographer';\n                    break;\n                case 'bydate':\n                    $dbField = 'Images.Date';\n                    break;\n                case 'bylastupdate':\n                    $dbField = 'Images.LastModified';\n                    break;\n            }\n            if (!is_null($dbField)) {\n                $direction = !empty($direction) ? $direction : 'asc';\n                $order[] = array('field'=>$dbField, 'dir'=>$direction);\n            }\n        }\n\n        return $order;\n    }\n\n    /**\n     * Process multi-upload file.\n     *\n     * @param string $p_tmpFile\n     * @param string $p_newFile\n     * @param int    $p_userId\n     * @param int    $p_attributes\n     *\n     * @return Image|NULL\n     */\n    public static function ProcessFile($p_tmpFile, $p_newFile, $p_userId = NULL, $p_attributes = NULL)\n    {\n        $tmp_name = $GLOBALS['Campsite']['IMAGE_DIRECTORY'] . $p_tmpFile;\n        $image_ary = getimagesize($tmp_name);\n\n        $file = array(\n            'name' => $p_newFile,\n            'tmp_name' => $tmp_name,\n            'type' => $image_ary['mime'],\n            'size' => filesize($tmp_name),\n            'error' => 0,\n        );\n\n        $attributes = array(\n            'Description' => '',\n            'Photographer' => '',\n            'Place' => '',\n            'Date' => '',\n            'Source' => 'local',\n            'Status' => 'approved'\n        );\n\n        if ($p_attributes != NULL && is_array($p_attributes)) {\n            foreach ($p_attributes as $key => $value) {\n                $attributes[$key] = $value;\n            }\n        }\n\n        try {\n            $image = self::OnImageUpload($file, $attributes, $p_userId);\n\n            return $image;\n        } catch (PEAR_Error $e) {\n            return NULL;\n        }\n\n    } // fn ProcessImage\n\n    /**\n     * Chmod if user has rights\n     *\n     * @param  string $path\n     * @param  int    $mode\n     * @return void\n     */\n    private static function chmod($path, $mode)\n    {\n        if (posix_getuid() === fileowner($path)) {\n            chmod($path, $mode);\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/classes/ImageSearch.php",
    "content": "<?php\n\n/**\n * @package Campsite\n */\nclass ImageSearch {\n    var $m_isSearch;\n    var $m_orderBy;\n    var $m_orderDirection;\n    var $m_imageOffset;\n    var $m_searchString;\n    var $m_imageData;\n    var $m_numImagesFound;\n    var $m_orderQuery;\n    var $m_whereQuery;\n    var $m_itemsPerPage = 10;\n    var $m_whereGroups = array();\n\n    /**\n     * This class can search for images matching specific criteria.\n     * Give the search criteria in the contructor, then call the run()\n     * function to execute the search and get an array of the images found.\n     *\n     * @param string $p_searchString\n     *          The string to search for.\n     *\n     * @param string $p_orderBy\n     *      Which column to order the results by.\n     *      Can be one of [\"description\"|\"photographer\"|\"place\"|\"date\"|\n     *                     \"inuse\"|\"id\"|\"time_create\"|\"last_modified\"]\n     *\n     * @param string $p_orderDirection\n     *      Order by increasing or decreasing values.\n     *      Can be  [\"ASC\"|\"DESC\"]\n     *\n     * @param int $p_offset\n     *      Return results starting from the given offset.\n     *\n     * @param int $p_itemsPerPage\n     *      The number of results to return.\n     *\n     */\n    public function ImageSearch($p_searchString, $p_orderBy,\n                                $p_orderDirection = 'ASC', $p_offset = 0,\n                                $p_itemsPerPage = 0)\n    {\n        $this->m_orderBy = $p_orderBy;\n        $this->m_orderDirection = $p_orderDirection;\n        $this->m_imageOffset = $p_offset;\n        $this->m_searchString = $p_searchString;\n        if ($p_itemsPerPage > 0) {\n            $this->m_itemsPerPage = $p_itemsPerPage;\n        }\n\n        $whereGroups = array();\n\n        // \"Search by\" sql\n        $this->m_whereQuery = '';\n        if (!empty($this->m_searchString)) {\n            $this->m_whereGroups[] = '('.implode( array\n            (\n                \"Images.Description LIKE '%$this->m_searchString%'\"\n            ,   \"Images.Photographer LIKE '%$this->m_searchString%'\"\n            ,   \"Images.Place LIKE '%$this->m_searchString%'\"\n            ,   \"Images.Date LIKE '%$this->m_searchString%'\"\n            ,   \"Images.UploadedByUser LIKE '%$this->m_searchString%'\"\n            ), \" OR \" ).')';\n        }\n\n        // \"Order by\" sql\n        switch ($this->m_orderBy) {\n        case 'description':\n            $this->m_orderQuery .= 'ORDER BY Images.Description ';\n            break;\n        case 'photographer':\n            $this->m_orderQuery = 'ORDER BY Images.Photographer ';\n            break;\n        case 'place':\n            $this->m_orderQuery = 'ORDER BY Images.Place ';\n            break;\n        case 'date':\n            $this->m_orderQuery = 'ORDER BY Images.Date ';\n            break;\n        case 'inuse':\n            $this->m_orderQuery = 'ORDER BY inUse ';\n            break;\n        case 'time_created':\n            $this->m_orderQuery = 'ORDER BY TimeCreated ';\n            // Reverse the order direction because \"last modified ASC\"\n            // means that the last modified article should be on top.\n            // Since the last_modified field is a date, it has the\n            // opposite meaning when you are sorting.\n            if ($p_orderDirection == 'ASC') {\n                $this->m_orderDirection = 'DESC';\n            } else {\n                $this->m_orderDirection = 'ASC';\n            }\n            break;\n        case 'last_modified':\n            $this->m_orderQuery = 'ORDER BY LastModified ';\n            // Reverse the order direction because \"last modified ASC\"\n            // means that the last modified article should be on top.\n            // Since the last_modified field is a date, it has the\n            // opposite meaning when you are sorting.\n            if ($p_orderDirection == 'ASC') {\n                $this->m_orderDirection = 'DESC';\n            } else {\n                $this->m_orderDirection = 'ASC';\n            }\n            break;\n        case 'id':\n        default:\n            $this->m_orderQuery = 'ORDER BY Images.Id ';\n            if ($p_orderDirection == 'ASC') {\n                $this->m_orderDirection = 'DESC';\n            } else {\n                $this->m_orderDirection = 'ASC';\n            }\n            break;\n        }\n        if (!empty($this->m_orderQuery)) {\n            $this->m_orderQuery .= ' '.$this->m_orderDirection;\n        }\n    } // constructor\n\n\n    public function setFilter($col, $val, $out=false)\n    {\n        $this->m_whereGroups[] = $col.( $out ? \" <> \" : \" = \" ).\"'$val'\";\n    }\n\n    /**\n     * Execute the search and return the results.\n     *\n     * @return array\n     *      An array of Image objects.\n     */\n    public function run()\n    {\n        global $g_ado_db;\n        $tmpImage = new Image();\n        $columnNames = $tmpImage->getColumnNames(true);\n        $columnNames = implode(',', $columnNames);\n\n        $this->m_whereQuery = count($this->m_whereGroups) ? ' WHERE '.implode($this->m_whereGroups, ' AND ') : null;\n\n        $queryStr = 'SELECT '.$columnNames.', COUNT(ArticleImages.IdImage) AS inUse'\n                    .' FROM Images '\n                    .' LEFT JOIN ArticleImages On Images.Id=ArticleImages.IdImage'\n                    .' '.$this->m_whereQuery\n                    .' GROUP BY Images.Id'\n                    .\" $this->m_orderQuery LIMIT $this->m_imageOffset, \".$this->m_itemsPerPage;\n        $numImagesFoundQueryStr = 'SELECT COUNT(DISTINCT(Images.Id))'\n                    .' FROM Images '\n                    .' LEFT JOIN ArticleImages On Images.Id=ArticleImages.IdImage'\n                    .\" $this->m_whereQuery\";\n        $rows = $g_ado_db->GetAll($queryStr);\n        $this->m_numImagesFound = $g_ado_db->GetOne($numImagesFoundQueryStr);\n\n        $this->m_imageData = array();\n        if (is_array($rows)) {\n            // Get \"In Use\" information\n            $imageIds = array();\n            foreach ($rows as $row) {\n                $imageIds[$row['Id']] = '(IdImage='.$row['Id'].')';\n            }\n\n            if (count($imageIds) > 0) {\n                $imagesIdsQuery = \" AND (\".implode(' OR ', $imageIds).\")\";\n            } else {\n                $imagesIdsQuery = \"\";\n            } \n\n            $inUseQuery = \"SELECT ArticleImages.IdImage, COUNT(Articles.Number) as in_use \"\n                            .\" FROM Articles, ArticleImages \"\n                            .\" WHERE (Articles.Number=ArticleImages.NrArticle) \"\n                            . $imagesIdsQuery\n                            .\" GROUP By ArticleImages.IdImage\";\n            $tmpInUseArray = $g_ado_db->GetAll($inUseQuery);\n            $inUseArray = array();\n            // Make it an associative array for easy lookup in the next loop.\n            if (is_array($tmpInUseArray)) {\n                foreach ($tmpInUseArray as $inUseItem) {\n                    $inUseArray[$inUseItem['IdImage']] = $inUseItem['in_use'];\n                }\n            }\n            // Create image templates\n            foreach ($rows as $row) {\n                $tmpImage = new Image();\n                $tmpImage->fetch($row);\n                $template = $tmpImage->toTemplate();\n                $template['in_use'] = 0;\n                if (isset($inUseArray[$row['Id']])) {\n                    $template['in_use'] = $inUseArray[$row['Id']];\n                }\n\n                $imageSize = @getimagesize($tmpImage->getImageStorageLocation()) ? : array(0, 0);\n                $template['width'] = $imageSize[0];\n                $template['height'] = $imageSize[1];\n                $this->m_imageData[] = $template;\n            }\n        }\n        return $this->m_imageData;\n    } // fn run\n\n\n    /**\n     * Return the images that were found.\n     * @return array\n     */\n    public function getImages()\n    {\n        return $this->m_imageData;\n    } // fn getImages\n\n\n    /**\n     * Return the total number of images that match the search.\n     * Note that this may be different than the total number of\n     * images returned by run() or getImages() because that array\n     * is limited to the set \"images per page\".  The number returned\n     * by this function is the total number of images without that\n     * restriction.\n     *\n     * @return int\n     */\n    public function getNumImagesFound()\n    {\n        return $this->m_numImagesFound;\n    } // fn getNumImagesFound\n\n\n    /**\n     * The current value for the number of images shown per page.\n     * @return int\n     */\n    public function getImagesPerPage()\n    {\n        return $this->m_itemsPerPage;\n    } // fn getImagesPerPage\n\n\n    /**\n     * Set the max number of images to return from the run() function.\n     *\n     * @param int $p_value\n     *\n     * @return void\n     */\n    public function setImagesPerPage($p_value)\n    {\n        $this->m_itemsPerPage = $p_value;\n    } // fn setImagesPerPage\n\n} // class ImageSearch\n\n?>"
  },
  {
    "path": "newscoop/classes/Input.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * @var array $g_inputErrors Used to store error messages.\n */\nglobal $g_inputErrors;\n$g_inputErrors = array();\n\n\n/**\n * @package Campsite\n */\nclass Input {\n\t/**\n\t * Please see: {@link http://ca.php.net/manual/en/function.get-magic-quotes-gpc.php\n\t * this PHP.net page specifically the user note by php at kaiundina dot de},\n\t * for why this is so complicated.\n\t *\n\t * @param array $p_array\n\t * @return array\n\t */\n\tpublic static function CleanMagicQuotes($p_array)\n\t{\n\t   $gpcList = array();\n\n\t   foreach ($p_array as $key => $value) {\n\t       $decodedKey = stripslashes($key);\n\t       if (is_array($value)) {\n\t           $decodedValue = Input::CleanMagicQuotes($value);\n\t       } else {\n\t           $decodedValue = stripslashes($value);\n\t       }\n\t       $gpcList[$decodedKey] = $decodedValue;\n\t   }\n\t   return $gpcList;\n\t} // fn CleanMagicQuotes\n\n\n\t/**\n\t * Get an input value from the $_REQUEST array and check its type.\n\t * The default value is returned if the value is not defined in the\n\t * $_REQUEST array, or if the value does not match the required type.\n\t *\n\t * The type 'checkbox' is special - you cannot specify a default\n\t * value for this.  The return value will be TRUE or FALSE, but\n\t * you can change this by specifying 'numeric' as the 3rd parameter\n\t * in which case it will return '1' or '0'.\n\t *\n\t * Use Input::IsValid() to check if any errors were generated.\n\t *\n\t * @param string $p_varName\n\t *\t\tThe index into the $_REQUEST array.\n\t *\n\t * @param string $p_type\n\t *\t\tThe type of data expected; can be:\n\t * \t\t\"int\"\n\t * \t\t\"string\"\n\t *      \"array\"\n\t * \t\t\"checkbox\"\n\t * \t\t\"boolean\"\n\t *\n\t *      Default is 'string'.\n\t *\n\t * @param mixed $p_defaultValue\n\t * \t\tThe default value to return if the value is not defined in\n\t *      the $_REQUEST array, or if the value does not match\n\t *      the required type.\n\t *\n\t * @param boolean $p_errorsOk\n\t *\t\tSet to true to ignore any errors for this variable (i.e.\n\t *      Input::IsValid() will still return true even if there\n\t *      are errors for this varaible).\n\t *\n\t * @return mixed\n\t */\n\tpublic static function Get($p_varName, $p_type = 'string',\n\t                           $p_defaultValue = null, $p_errorsOk = false)\n\t{\n\t\tglobal $g_inputErrors;\n        $p_type = strtolower($p_type);\n\n        if ($p_type == 'checkbox') {\n            if (strtolower($p_defaultValue) != 'numeric') {\n                return isset($_REQUEST[$p_varName]);\n            } else {\n                return isset($_REQUEST[$p_varName]) ? '1' : '0';\n            }\n        }\n\t\tif (!isset($_REQUEST[$p_varName])) {\n\t\t\tif (!$p_errorsOk) {\n\t\t\t\t$g_inputErrors[$p_varName] = 'not set';\n\t\t\t}\n\t\t\treturn $p_defaultValue;\n\t\t}\n\t\t// Clean the slashes\n\t\tif (get_magic_quotes_gpc()) {\n\t\t\tif (is_array($_REQUEST[$p_varName])) {\n\t\t\t\t$_REQUEST[$p_varName] = Input::CleanMagicQuotes($_REQUEST[$p_varName]);\n\t\t\t} else {\n\t\t\t\t$_REQUEST[$p_varName] = stripslashes($_REQUEST[$p_varName]);\n\t\t\t}\n\t\t}\n\t\tswitch ($p_type) {\n\t\tcase 'boolean':\n\t\t\t$value = strtolower($_REQUEST[$p_varName]);\n\t\t\tif ( ($value == \"true\") || (is_numeric($value) && ($value > 0)) ) {\n\t\t\t\treturn true;\n\t\t\t} else {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tbreak;\n\t\tcase 'int':\n\t\t\tif (!is_numeric($_REQUEST[$p_varName])) {\n\t\t\t\tif (!$p_errorsOk) {\n\t\t\t\t\t$g_inputErrors[$p_varName] = 'Incorrect type.  Expected type '.$p_type\n\t\t\t\t\t\t.', but received type '.gettype($_REQUEST[$p_varName]).'.'\n\t\t\t\t\t\t.' Value is \"'.$_REQUEST[$p_varName].'\".';\n\t\t\t\t}\n\t\t\t\treturn (int)$p_defaultValue;\n\t\t\t}\n\t\t\tbreak;\n\t\tcase 'string':\n\t\t\tif (!is_string($_REQUEST[$p_varName])) {\n\t\t\t\tif (!$p_errorsOk) {\n\t\t\t\t\t$g_inputErrors[$p_varName] = 'Incorrect type.  Expected type '.$p_type\n\t\t\t\t\t\t.', but received type '.gettype($_REQUEST[$p_varName]).'.'\n\t\t\t\t\t\t.' Value is \"'.$_REQUEST[$p_varName].'\".';\n\t\t\t\t}\n\t\t\t\treturn $p_defaultValue;\n\t\t\t}\n\t\t\tbreak;\n\t\tcase 'array':\n\t\t\tif (!is_array($_REQUEST[$p_varName])) {\n\t\t\t\t// Create an array if it isnt one already.\n\t\t\t\t// Arrays are used with checkboxes and radio buttons.\n\t\t\t\t// The problem with them is that if there is only one\n\t\t\t\t// checkbox, the given value will not be an array.  So\n\t\t\t\t// we make it easy for the programmer by always returning\n\t\t\t\t// an array.\n\t\t\t\t$newArray = array();\n\t\t\t\t$newArray[] = $_REQUEST[$p_varName];\n\t\t\t\treturn $newArray;\n//\t\t\t\tif (!$p_errorsOk) {\n//\t\t\t\t\t$g_inputErrors[$p_varName] = 'Incorrect type.  Expected type '.$p_type\n//\t\t\t\t\t\t.', but received type '.gettype($_REQUEST[$p_varName]).'.'\n//\t\t\t\t\t\t.' Value is \"'.$_REQUEST[$p_varName].'\".';\n//\t\t\t\t}\n//\t\t\t\treturn $p_defaultValue;\n\t\t\t}\n\t\t}\n\t\treturn $_REQUEST[$p_varName];\n\t} // fn get\n\n\n\t/**\n\t * Get an input value from the $_REQUEST array and check its type.\n\t * This is a wrapper for Input::Get().\n\t */\n\tpublic static function GetVar($p_varName, $p_type = 'string',\n\t                              $p_defaultValue = null, $p_errorsOk = false)\n\t{\n        return Input::Get($p_varName, $p_type, $p_defaultValue, $p_errorsOk);\t                               \n\t}\n\n\n\t/**\n\t * Returns the method used to read the input data: GET, POST etc.\n\t *\n\t * @return string\n\t */\n\tpublic static function GetMethod()\n\t{\n\t    return $_SERVER['REQUEST_METHOD'];\n\t}\n\n\t\n\t/**\n\t * Return FALSE if any calls to Input::Get() resulted in an error.\n\t * @return boolean\n\t */\n\tpublic static function IsValid()\n\t{\n\t\tglobal $g_inputErrors;\n\t\tif (count($g_inputErrors) > 0) {\n\t\t\treturn false;\n\t\t} else {\n\t\t\treturn true;\n\t\t}\n\t} // fn isValid\n\n\n\t/**\n\t * Return a default error string.\n\t * @return string\n\t */\n\tpublic static function GetErrorString()\n\t{\n\t\tglobal $g_inputErrors;\n\t\tob_start();\n\t\tprint_r($g_inputErrors);\n\t\t$str = ob_get_clean();\n\t\treturn $str;\n\t} // fn GetErrorString\n\n} // class Input\n\n?>"
  },
  {
    "path": "newscoop/classes/Issue.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbObjectArray.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/SQLSelectClause.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Section.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/IssuePublish.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/CampCacheList.php');\n\nuse Newscoop\\Service\\Resource\\ResourceId;\nuse Newscoop\\Service\\IOutputSettingIssueService;\nuse Newscoop\\Service\\IIssueService;\nuse Newscoop\\Entity\\Output\\OutputSettingsIssue;\n/**\n * @package Campsite\n */\nclass Issue extends DatabaseObject {\n\tvar $m_dbTableName = 'Issues';\n\tvar $m_keyColumnNames = array('IdPublication', 'Number', 'IdLanguage');\n\tvar $m_columnNames = array(\n\t\t'id',\n\t\t'IdPublication',\n\t\t'Number',\n\t\t'IdLanguage',\n\t\t'Name',\n\t\t'PublicationDate',\n\t\t'Published',\n\t\t'IssueTplId',\n\t\t'SectionTplId',\n\t\t'ArticleTplId',\n\t\t'ShortName');\n\tvar $m_languageName = null;\n\n\t/**\n\t * A publication has Issues, Issues have Sections and Articles.\n\t * @param int $p_publicationId\n\t * @param int $p_languageId\n\t * @param int $p_issueNumber\n\t */\n\tpublic function Issue($p_publicationId = null, $p_languageId = null,\n\t$p_issueNumber = null)\n\t{\n\t\tparent::DatabaseObject($this->m_columnNames);\n\t\t$this->m_data['IdPublication'] = $p_publicationId;\n\t\t$this->m_data['IdLanguage'] = $p_languageId;\n\t\t$this->m_data['Number'] = $p_issueNumber;\n\t\tif ($this->keyValuesExist()) {\n\t\t\t$this->fetch();\n\t\t}\n\t} // constructor\n\n\n\t/**\n\t * Create an issue.\n\t * @param string $p_shortName\n\t * @param array $p_values\n\t * @return boolean\n\t */\n\tpublic function create($p_shortName = null, $p_values = null)\n\t{\n\t\t$tmpValues = array('ShortName' => $p_shortName);\n\t\tif (!is_null($p_values)) {\n\t\t\t$tmpValues = array_merge($p_values, $tmpValues);\n\t\t}\n\t\t$success = parent::create($tmpValues);\n\t\treturn $success;\n\t} // fn create\n\n\n\t/**\n\t * Delete the Issue, and optionally all sections and articles contained within it.\n\t * @param boolean $p_deleteSections\n\t * @param boolean $p_deleteArticles\n\t * @return int\n\t * \t\tReturn the number of articles deleted.\n\t */\n\tpublic function delete($p_deleteSections = true, $p_deleteArticles = true)\n\t{\n\t\tglobal $g_ado_db;\n\n\t\t// Delete all scheduled publishing events\n\t\tIssuePublish::OnIssueDelete($this->m_data['IdPublication'], $this->m_data['Number'], $this->m_data['IdLanguage']);\n\n\t\t$articlesDeleted = 0;\n\t\tif ($p_deleteSections) {\n\t\t\t$sections = Section::GetSections($this->m_data['IdPublication'], $this->m_data['Number'], $this->m_data['IdLanguage']);\n\t\t\tforeach ($sections as $section) {\n\t\t\t\t$articlesDeleted += $section->delete($p_deleteArticles);\n\t\t\t}\n\t\t}\n\n\t\t$tmpData = $this->m_data;\n\t\t$success = parent::delete();\n\t\tif ($success) {\n\t\t\t$outputSettingIssues = $this->getOutputSettingIssueService()->findByIssue($tmpData['id']);\n\t\t\tforeach($outputSettingIssues as $outputSet){\n\t\t\t\t$this->getOutputSettingIssueService()->delete($outputSet);\n\t\t\t}\n\t\t}\n\n\t\treturn $articlesDeleted;\n\t} // fn delete\n\n\n\t/**\n\t * Copy this issue and all sections.\n\t * @param int $p_destPublicationId\n\t * @param int $p_destIssueId\n\t * @param int $p_destLanguageId\n\t * @return Issue\n\t */\n\tprivate function __copy($p_destPublicationId, $p_destIssueId, $p_destLanguageId)\n\t{\n\t\tglobal $g_ado_db;\n\t\t// Copy the issue\n\t\t$newIssue = new Issue($p_destPublicationId, $p_destLanguageId, $p_destIssueId);\n\t\t$columns = array();\n\t\t$columns['Name'] = $g_ado_db->escape($this->getName());\n\t\t$columns['IssueTplId'] = $this->m_data['IssueTplId'];\n\t\t$columns['SectionTplId'] = $this->m_data['SectionTplId'];\n\t\t$columns['ArticleTplId'] = $this->m_data['ArticleTplId'];\n\t\t$created = $newIssue->create($p_destIssueId, $columns);\n\t\tif ($created) {\n\t\t\t// Copy the sections in the issue\n\t\t\t$sections = Section::GetSections($this->m_data['IdPublication'],\n\t\t\t$this->m_data['Number'],\n\t\t\t$this->m_data['IdLanguage']);\n\n\t\t\t$queryStr = \"SELECT id FROM Issues WHERE IdPublication=$p_destPublicationId AND Number=$p_destIssueId AND IdLanguage=$p_destLanguageId\";\n\t\t\t$issueId = $g_ado_db->GetOne($queryStr);\n\n\t\t\t$issue = $this->getIssueService()->findById($issueId);\n\t\t\t$outputSettings = $this->getOutputSettingIssueService()->findByIssue($this->getIssueId());\n\t\t\tforeach ($outputSettings as $outSet){\n\t\t\t\t$newOutSet = new OutputSettingsIssue();\n\t\t\t\t$outSet->copyTo($newOutSet);\n\t\t\t\t$newOutSet->setIssue($issue);\n\t\t\t\t$this->getOutputSettingIssueService()->insert($newOutSet);\n\t\t\t}\n\n\t\t\tforeach ($sections as $section) {\n\t\t\t\t$section->copy($p_destPublicationId, $p_destIssueId, $p_destLanguageId, null, false);\n\t\t\t}\n\t\t\treturn $newIssue;\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t} // fn __copy\n\n\n\t/**\n\t * Create a copy of this issue.  You can use this to:\n\t * 1) Translate an issue.  In this case do:\n\t *    $issue->copy(null, $issue->getIssueNumber(), $destinationLanguage);\n\t * 2) Duplicate all translations of an issue within a publication:\n\t *    $issue->copy();\n\t * 3) Copy an issue to another publication:\n\t *    $issue->copy($destinationPublication);\n\t * Note: All sections will be copied, but not the articles.\n\t *\n\t * @param int $p_destPublicationId\n\t *     (optional) Specify the destination publication.\n\t *     Default is this issue's publication ID.\n\t * @param int $p_destIssueId\n\t *     (optional) Specify the destination issue ID.\n\t *     If not specified, a new one will be generated.\n\t * @param int $p_destLanguageId\n\t *     (optional) Use this if you want the copy to be a translation of the current issue.\n\t *     Default is to copy all translations of this issue.\n\t * @return mixed\n\t *\t\tAn array of Issues, a single Issue, or null on error.\n\t */\n\tpublic function copy($p_destPublicationId = null, $p_destIssueId = null,\n\t$p_destLanguageId = null)\n\t{\n\t\tglobal $g_ado_db;\n\t\tif (is_null($p_destPublicationId)) {\n\t\t\t$p_destPublicationId = $this->m_data['IdPublication'];\n\t\t}\n\t\tif (is_null($p_destIssueId)) {\n\t\t\t$p_destIssueId = Issue::GetUnusedIssueId($this->m_data['IdPublication']);\n\t\t}\n\t\tif (is_null($p_destLanguageId)) {\n\t\t\t$queryStr = 'SELECT * FROM Issues '\n\t\t\t.' WHERE IdPublication='.$this->m_data['IdPublication']\n\t\t\t.' AND Number='.$this->m_data['Number'];\n\t\t\t$srcIssues = DbObjectArray::Create('Issue', $queryStr);\n\n\t\t\t// Copy all translations of this issue.\n\t\t\t$newIssues = array();\n\t\t\tforeach ($srcIssues as $issue) {\n\t\t\t\t$newIssues[] = $issue->__copy($p_destPublicationId, $p_destIssueId, $issue->getLanguageId());\n\t\t\t}\n\t\t\treturn $newIssues;\n\t\t} else {\n\t\t\t// Translate the issue.\n\t\t\treturn $this->__copy($p_destPublicationId, $p_destIssueId, $p_destLanguageId);\n\t\t}\n\t} // fn copy\n\n\t/**\n\t * Return the issue ID.\n\t * @return int\n\t */\n\tpublic function getIssueId()\n\t{\n\t\treturn $this->m_data['id'];\n\t} // fn getId\n\n\t/**\n\t * Return the publication ID of the publication that contains this issue.\n\t * @return int\n\t */\n\tpublic function getPublicationId()\n\t{\n\t\treturn $this->m_data['IdPublication'];\n\t} // fn getPublicationId\n\n\n\t/**\n\t * Return the language ID of the issue.\n\t * @return int\n\t */\n\tpublic function getLanguageId()\n\t{\n\t\treturn $this->m_data['IdLanguage'];\n\t} // fn getLanguageId\n\n\n\t/**\n\t * Changing an issue's language will change the section language as well.\n\t *\n\t * @param int $p_value\n\t */\n\tpublic function setLanguageId($p_value)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$sql = \"UPDATE Sections SET IdLanguage=$p_value\"\n\t\t.\" WHERE IdPublication=\".$this->m_data['IdPublication']\n\t\t.\" AND NrIssue=\".$this->m_data['Number']\n\t\t.\" AND IdLanguage=\".$this->m_data['IdLanguage'];\n\t\t$success = $g_ado_db->Execute($sql);\n\t\tif ($success) {\n\t\t\t$this->setProperty('IdLanguage', $p_value);\n\t\t}\n\t} // fn setLanguageId\n\n\n\t/**\n\t * A simple way to get the name of the language the article is\n\t * written in.  The value is cached in case there are multiple\n\t * calls to this function.\n\t *\n\t * @return string\n\t */\n\tpublic function getLanguageName()\n\t{\n\t\tif (is_null($this->m_languageName)) {\n\t\t\t$language = new Language($this->m_data['IdLanguage']);\n\t\t\t$this->m_languageName = $language->getNativeName();\n\t\t}\n\t\treturn $this->m_languageName;\n\t} // fn getLanguageName\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getIssueNumber()\n\t{\n\t\treturn $this->m_data['Number'];\n\t} // fn getIssueNumber\n\n\n\t/**\n\t * Get the name of the issue.\n\t * @return string\n\t */\n\tpublic function getName()\n\t{\n\t\treturn $this->m_data['Name'];\n\t} // fn getName\n\n\n\t/**\n\t * Set the name of the issue.\n\t * @param string\n\t * @return boolean\n\t */\n\tpublic function setName($p_value)\n\t{\n\t\treturn $this->setProperty('Name', $p_value);\n\t} // fn setName\n\n\n\t/**\n\t * Get the string used for the URL to this issue.\n\t * @return string\n\t */\n\tpublic function getUrlName()\n\t{\n\t\treturn $this->m_data['ShortName'];\n\t} // fn getUrlName\n\n\n\t/**\n\t * Set the string used in the URL to access this Issue.\n\t *\n\t * @return boolean\n\t */\n\tpublic function setUrlName($p_value)\n\t{\n\t\treturn $this->setProperty('ShortName', $p_value);\n\t} // fn setUrlName\n\n\n\t/**\n\t * Get the default template ID used for articles in this issue.\n\t * @deprecated\n\t * @return int\n\t */\n\tpublic function getArticleTemplateId()\n\t{\n\t\treturn $this->m_data['ArticleTplId'];\n\t} // fn getArticleTemplateId\n\n\n\t/**\n\t * Set the default template ID used for articles in this issue.\n\t *\n\t * @param int $p_value\n\t */\n\tpublic function setArticleTemplateId($p_value)\n\t{\n\t\tif (is_numeric($p_value)) {\n\t\t\treturn $this->setProperty('ArticleTplId', $p_value);\n\t\t}\n\t} // fn setArticleTemplateId\n\n\n\t/**\n\t * Get the default template ID used for sections in this issue.\n\t * @return int\n\t */\n\tpublic function getSectionTemplateId()\n\t{\n\t\treturn $this->m_data['SectionTplId'];\n\t} // fn getSectionTemplateId\n\n\n\t/**\n\t * Set the default template ID used for sections in this issue.\n\t *\n\t * @param int $p_value\n\t */\n\tpublic function setSectionTemplateId($p_value)\n\t{\n\t\tif (is_numeric($p_value)) {\n\t\t\treturn $this->setProperty('SectionTplId', $p_value);\n\t\t}\n\t} // fn setSectionTemplateId\n\n\n\t/**\n\t * Get the template ID used for this issue.\n\t * @return int\n\t */\n\tpublic function getIssueTemplateId()\n\t{\n\t\treturn $this->m_data['IssueTplId'];\n\t} // fn getIssueTemplateId\n\n\n\t/**\n\t * Set the template ID used for this issue.\n\t *\n\t * @param int $p_value\n\t */\n\tpublic function setIssueTemplateId($p_value)\n\t{\n\t\tif (is_numeric($p_value)) {\n\t\t\treturn $this->setProperty('IssueTplId', $p_value);\n\t\t}\n\t} // fn setIssueTemplateId\n\n\n\t/**\n\t * Returns true if the issue was published\n\t *\n\t * @return boolean\n\t */\n\tpublic function isPublished() {\n\t\treturn $this->m_data['Published'] == 'Y';\n\t}\n\n\n\t/**\n\t * Return the current state in the workflow:\n\t * 'Y' if the issue is published, 'N' if it is not published.\n\t *\n\t * @return string\n\t */\n\tpublic function getWorkflowStatus()\n\t{\n\t\treturn $this->m_data['Published'];\n\t} // fn getWorkflowStatus\n\n\n\t/**\n\t * Set the workflow state of the issue.\n\t *\n\t * @param string $p_value\n\t *\t\tCan be NULL, 'Y', 'N', TRUE, or FALSE.\n\t *\t\tIf set to NULL, the current value will be reversed.\n\t *\n\t * @return void\n\t */\n\tpublic function setWorkflowStatus($p_value = null)\n\t{\n\t\t$doPublish = null;\n\t\tif (is_null($p_value)) {\n\t\t\tif ($this->m_data['Published'] == 'Y') {\n\t\t\t\t$doPublish = false;\n\t\t\t} else {\n\t\t\t\t$doPublish = true;\n\t\t\t}\n\t\t} else {\n\t\t\tif (is_string($p_value)) {\n\t\t\t\t$p_value = strtoupper($p_value);\n\t\t\t}\n\t\t\tif (($this->m_data['Published'] == 'N') && (($p_value == 'Y') || ($p_value === true))) {\n\t\t\t\t$doPublish = true;\n\t\t\t} elseif (($this->m_data['Published'] == 'Y') && (($p_value == 'N') || ($p_value === false))) {\n\t\t\t\t$doPublish = false;\n\t\t\t}\n\t\t}\n\t\tif (!is_null($doPublish)) {\n\t\t\tArticle::OnIssuePublish($this->getPublicationId(), $this->getLanguageId(),\n\t\t\t$this->getIssueNumber(), $doPublish);\n\t\t\tif ($doPublish) {\n\t\t\t\t$this->setProperty('Published', 'Y', true);\n\t\t\t\t$this->setProperty('PublicationDate', 'NOW()', true, true);\n\t\t\t} else {\n\t\t\t\t$this->setProperty('Published', 'N', true);\n\t\t\t}\n\t\t}\n\t} // fn setWorkflowStatus\n\n\n\t/**\n\t * Get publication date in the form YYYY-MM-DD HH:MM:SS\n\t *\n\t * @return string\n\t */\n\tpublic function getPublicationDate()\n\t{\n\t\treturn $this->m_data['PublicationDate'];\n\t} // fn getPublicationDate\n\n\n\t/**\n\t * Set the publication date.  Given value should be in the form\n\t * YYYY-MM-DD HH:MM:SS.\n\t *\n\t * @param string $p_value\n\t */\n\tpublic function setPublicationDate($p_value)\n\t{\n\t\tif (is_string($p_value)) {\n\t\t\treturn $this->setProperty('PublicationDate', $p_value);\n\t\t}\n\t} // fn setPublicationDate\n\n\n\t/**\n\t * Get all the languages to which this issue has been translated.\n\t *\n\t * @param boolean $p_getUnusedLanguagesOnly\n\t * \t\tReverses the search and finds only those languages which this\n\t * \t\tissue has not been translated into.\n\t * @param boolean $p_excludeCurrent\n\t *      If true, exclude the current language from the list.\n\t * @param array $p_order\n\t *      The array of order directives in the format:\n\t *      array('field'=>field_name, 'dir'=>order_direction)\n\t *      field_name can take one of the following values:\n\t *        bynumber, byname, byenglish_name, bycode\n\t *      order_direction can take one of the following values:\n\t *        asc, desc\n\t * @param boolean $p_allIssues\n\t *      If true return all the languages in which all issues of the\n\t *      publication were translated.\n\t * @return array\n\t * \t\tReturn an array of Language objects.\n\t */\n\tpublic function getLanguages($p_getUnusedLanguagesOnly = false,\n\t$p_excludeCurrent = false, array $p_order = array(), $p_allIssues = false,\n\t$p_published = false)\n\t{\n\t\t$tmpLanguage = new Language();\n\t\t$columnNames = $tmpLanguage->getColumnNames(true);\n\t\tif ($p_getUnusedLanguagesOnly) {\n\t\t\t$queryStr = \"SELECT \".implode(',', $columnNames)\n\t\t\t.\" FROM Languages LEFT JOIN Issues \"\n\t\t\t.\" ON Issues.IdPublication = \".$this->m_data['IdPublication'];\n\t\t\tif (!$p_allIssues) {\n\t\t\t\t$queryStr .= \" AND Issues.Number = \".$this->m_data['Number'];\n\t\t\t}\n\t\t\tif ($p_published) {\n\t\t\t\t$queryStr .= \" AND Issues.Published = 'Y'\";\n\t\t\t}\n\t\t\t$queryStr .= \" AND Issues.IdLanguage = Languages.Id \"\n\t\t\t.\" WHERE Issues.IdPublication IS NULL\";\n\t\t} else {\n\t\t\t$queryStr = \"SELECT \".implode(',', $columnNames)\n\t\t\t.\" FROM Languages, Issues \"\n\t\t\t.\" WHERE Issues.IdPublication = \".$this->m_data['IdPublication'];\n\t\t\tif (!$p_allIssues) {\n\t\t\t\t$queryStr .= \" AND Issues.Number = \".$this->m_data['Number'];\n\t\t\t}\n\t\t\t$queryStr .= \" AND Issues.IdLanguage = Languages.Id \";\n\t\t\tif ($p_excludeCurrent) {\n\t\t\t\t$queryStr .= \" AND Languages.Id != \" . $this->m_data['IdLanguage'];\n\t\t\t}\n\t\t\tif ($p_published) {\n\t\t\t\t$queryStr .= \" AND Issues.Published = 'Y'\";\n\t\t\t}\n\t\t}\n\t\tlist($languagesKey) = $tmpLanguage->getKeyColumnNames();\n\t\t$queryStr .= \" GROUP BY $languagesKey\";\n\t\t$order = Issue::ProcessLanguageListOrder($p_order);\n\t\t$sqlOrder = array();\n                foreach ($order as $orderDesc) {\n\t\t\t$sqlOrder[] = $orderDesc['field'] . ' ' . $orderDesc['dir'];\n\t\t}\n\t\tif (count($sqlOrder) > 0) {\n\t\t\t$queryStr .= ' ORDER BY ' . implode(', ', $sqlOrder);\n\t\t}\n\t\t$languages = DbObjectArray::Create('Language', $queryStr);\n\t\treturn $languages;\n\t} // fn getLanguages\n\n\t/* --------------------------------------------------------------- */\n\n\t/** @var Newscoop\\Services\\Resource\\ResourceId */\n\tprivate $resourceId = null;\n\t/** @var Newscoop\\Service\\IOutputSettingIssueService */\n\tprivate $outputSettingIssueService = null;\n\t/** @var Newscoop\\Service\\IIssueService */\n    private $issueService = NULL;\n\n\t/**\n\t * Provides the controller resource id.\n\t *\n\t * @return Newscoop\\Services\\Resource\\ResourceId\n\t * \t\tThe controller resource id.\n\t */\n\tprotected function getResourceId()\n\t{\n\t\tif ($this->resourceId === NULL) {\n\t\t\t$this->resourceId = new ResourceId(__CLASS__);\n\t\t}\n\t\treturn $this->resourceId;\n\t}\n\n\t/**\n\t * Provides the Output setting issue service.\n\t *\n\t * @return Newscoop\\Service\\IOutputSettingIssueService\n\t * \t\tThe output setting issue service to be used by this controller.\n\t */\n\tprotected function getOutputSettingIssueService()\n\t{\n\t\tif ($this->outputSettingIssueService === NULL) {\n\t\t\t$this->outputSettingIssueService = $this->getResourceId()->getService(IOutputSettingIssueService::NAME);\n\t\t}\n\t\treturn $this->outputSettingIssueService;\n\t}\n\n\t/**\n     * Provides the Issue service.\n     *\n     * @return Newscoop\\Service\\IIssueService\n     * \t\tThe issue service to be used by this controller.\n     */\n    protected function getIssueService()\n    {\n        if ($this->issueService === NULL) {\n            $this->issueService = $this->getResourceId()->getService(IIssueService::NAME);\n        }\n        return $this->issueService;\n    }\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Get all the issues in the given publication as return them as an array\n\t * of Issue objects.\n\t *\n\t * @param int $p_publicationId\n\t * \t\tThe publication ID.\n\t *\n\t * @param int $p_languageId\n\t *\t\t(Optional) Only return issues with this language.\n\t *\n\t * @param int $p_issueId\n\t *\t\t(Optional) Only return issues with this Issue ID.\n\t *\n\t * @param string $p_urlName\n\t * \t\t(Optional) Only return issues that match this URL Name.\n\t *\n\t * @param int $p_preferredLanguage\n\t *\t\t(Optional) List this language before others.  This will override any 'ORDER BY' sql\n\t *\t\toptions you have.\n\t *\n\t * @param array $p_sqlOptions\n\t *\n\t * @return array\n\t */\n\tpublic static function GetIssues($p_publicationId = null,\n\t$p_languageId = null,\n\t$p_issueNumber = null,\n\t$p_urlName = null,\n\t$p_preferredLanguage = null,\n\t$p_publishedOnly = false,\n\t$p_sqlOptions = null, $p_skipCache = false)\n\t{\n\t\tglobal $g_ado_db;\n\n\t\tif (!$p_skipCache && CampCache::IsEnabled()) {\n\t\t\t$paramsArray['publication_id'] = (is_null($p_publicationId)) ? 'null' : $p_publicationId;\n\t\t\t$paramsArray['language_id'] = (is_null($p_languageId)) ? 'null' : $p_languageId;\n\t\t\t$paramsArray['issue_number'] = (is_null($p_issueNumber)) ? 'null' : $p_issueNumber;\n\t\t\t$paramsArray['url_name'] = (is_null($p_urlName)) ? 'null' : $p_urlName;\n\t\t\t$paramsArray['preferred_language'] = (is_null($p_preferredLanguage)) ? 'null' : $p_preferredLanguage;\n\t\t\t$paramsArray['published_only'] = $p_publishedOnly ? 'true' : 'false';\n\t\t\t$paramsArray['sql_options'] = (is_null($p_sqlOptions)) ? 'null' : $p_sqlOptions;\n\t\t\t$cacheListObj = new CampCacheList($paramsArray, __METHOD__);\n\t\t\t$issuesList = $cacheListObj->fetchFromCache();\n\t\t\tif ($issuesList !== false && is_array($issuesList)) {\n\t\t\t\treturn $issuesList;\n\t\t\t}\n\t\t}\n\n\t\t$tmpIssue = new Issue();\n\t\t$columnNames = $tmpIssue->getColumnNames(true);\n\t\t$queryStr = 'SELECT '.implode(',', $columnNames);\n\t\tif (!is_null($p_preferredLanguage)) {\n                        $queryStr .= \", ABS(CAST(IdLanguage AS SIGNED) - $p_preferredLanguage) as LanguageOrder\";\n\t\t\t$p_sqlOptions['ORDER BY'] = array('Number' => 'DESC', 'LanguageOrder' => 'ASC');\n\t\t}\n\t\t// We have to display the language name so oftern that we might\n\t\t// as well fetch it by default.\n\t\t$queryStr .= ', Languages.OrigName as LanguageName';\n\t\t$queryStr .= ' FROM Issues, Languages ';\n\t\t$whereClause = array();\n\t\t$whereClause[] = \"Issues.IdLanguage=Languages.Id\";\n\t\tif (!is_null($p_publicationId)) {\n\t\t\t$whereClause[] = \"Issues.IdPublication=$p_publicationId\";\n\t\t}\n\t\tif (!is_null($p_languageId)) {\n\t\t\t$whereClause[] = \"Issues.IdLanguage=$p_languageId\";\n\t\t}\n\t\tif (!is_null($p_issueNumber)) {\n\t\t\t$whereClause[] = \"Issues.Number=$p_issueNumber\";\n\t\t}\n\t\tif (!is_null($p_urlName)) {\n\t\t\t$whereClause[] = \"Issues.ShortName=\".$g_ado_db->escape($p_urlName);\n\t\t}\n\t\tif ($p_publishedOnly) {\n\t\t\t$whereClause[] = \"Issues.Published = 'Y'\";\n\t\t}\n\t\tif (count($whereClause) > 0) {\n\t\t\t$queryStr .= ' WHERE '.implode(' AND ', $whereClause);\n\t\t}\n\n\t\t$queryStr = DatabaseObject::ProcessOptions($queryStr, $p_sqlOptions);\n\t\t$issues = array();\n\t\t$rows = $g_ado_db->GetAll($queryStr);\n\t\tif (is_array($rows)) {\n\t\t\tforeach ($rows as $row) {\n\t\t\t\t$tmpObj = new Issue();\n\t\t\t\t$tmpObj->fetch($row);\n\t\t\t\t$tmpObj->m_languageName = $row['LanguageName'];\n\t\t\t\t$issues[] = $tmpObj;\n\t\t\t}\n\t\t}\n\t\tif (!$p_skipCache && CampCache::IsEnabled()) {\n\t\t\t$cacheListObj->storeInCache($issues);\n\t\t}\n\n\t\treturn $issues;\n\t} // fn GetIssues\n\n\n\t/**\n\t * Return the total number of issues in the database.\n\t *\n\t * @param int $p_publicationId\n\t *\t\tIf specified, return the total number of issues in the given publication.\n\t *\n\t * @return int\n\t */\n\tpublic static function GetNumIssues($p_publicationId = null)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$queryStr = 'SELECT COUNT(*) FROM Issues ';\n\t\tif (is_numeric($p_publicationId)) {\n\t\t\t$queryStr .= \" WHERE IdPublication=$p_publicationId\";\n\t\t}\n\t\t$total = $g_ado_db->GetOne($queryStr);\n\t\treturn $total;\n\t} // fn GetNumIssues\n\n\n\t/**\n\t * Return an issue number that is not in use.\n\t * @param int $p_publicationId\n\t * @return int\n\t */\n\tpublic static function GetUnusedIssueId($p_publicationId)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$queryStr = \"SELECT MAX(Number) + 1 FROM Issues \"\n\t\t.\" WHERE IdPublication=$p_publicationId\";\n\t\t$number = $g_ado_db->GetOne($queryStr);\n\t\treturn $number;\n\t} // fn GetUnusedIssueId\n\n\n\t/**\n\t * Returns the last published issue for the given publication / language.\n\t * Returns null if no issue was found.\n\t *\n\t * @param int $p_publicationId\n\t * @param int $p_languageId\n\t * @return mixed\n\t */\n\tpublic static function GetCurrentIssue($p_publicationId, $p_languageId = null)\n\t{\n\t\tglobal $g_ado_db;\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('current_issue', $p_publicationId, $p_languageId), 'issue');\n        if ($cacheService->contains($cacheKey)) {\n            $issue = $cacheService->fetch($cacheKey);\n        } else {\n            $queryStr = \"SELECT Number, IdLanguage FROM Issues WHERE Published = 'Y' AND \"\n            . \"IdPublication = $p_publicationId\";\n            if (!is_null($p_languageId)) {\n                $queryStr .= \" AND IdLanguage = $p_languageId\";\n            }\n            $queryStr .= \" ORDER BY Number DESC LIMIT 0, 1\";\n            $result = $g_ado_db->GetRow($queryStr);\n            if (empty($result)) {\n                return new Issue($p_publicationId,0,0); // type safety\n            }\n            $issue = new Issue($p_publicationId, $result['IdLanguage'], $result['Number']);\n            $cacheService->save($cacheKey, $issue);\n        }\n\n\t\treturn $issue;\n\t} // fn GetCurrentIssue\n\n\n\t/**\n\t * Return the last Issue created in this publication or NULL if there\n\t * are no previous issues.\n\t *\n\t * @param int $p_publicationId\n\t * @return Issue\n\t */\n\tpublic static function GetLastCreatedIssue($p_publicationId)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$queryStr = \"SELECT MAX(Number) FROM Issues WHERE IdPublication=$p_publicationId\";\n\t\t$maxIssueNumber = $g_ado_db->GetOne($queryStr);\n\t\tif (empty($maxIssueNumber)) {\n\t\t\treturn null;\n\t\t}\n\t\t$queryStr = \"SELECT IdLanguage FROM Issues WHERE IdPublication=$p_publicationId AND Number=$maxIssueNumber\";\n\t\t$idLanguage = $g_ado_db->GetOne($queryStr);\n\t\t$issue = new Issue($p_publicationId, $idLanguage, $maxIssueNumber);\n\t\treturn $issue;\n\t} // fn GetLastCreatedIssue\n\n\n\t/**\n\t * @param int $p_publicationId\n\t *\n\t * @param int $p_languageId\n\t *\n\t * @param int $p_skipCache\n\t *\n\t *\n\t * @return mixed\n\t *      array of issue publication dates\n\t *      null if query does not match any issue\n\t */\n\tpublic static function GetPublicationDates($p_publicationId,\n\t$p_languageId,\n\t$p_skipCache = false)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$queryStr = 'SELECT Number FROM Issues '\n\t\t. 'WHERE IdPublication = ' . $p_publicationId . ' AND '\n\t\t. 'IdLanguage = ' . $p_languageId . \" AND Published = 'Y'\";\n\t\t$rows = $g_ado_db->GetAll($queryStr);\n\n\t\t$dates = array();\n\t\tif (is_array($rows)) {\n\t\t\tforeach ($rows as $row) {\n\t\t\t\t$tmpObj = new Issue($p_publicationId, $p_languageId,\n\t\t\t\t$row['Number']);\n\t\t\t\tif ($tmpObj->exists()) {\n\t\t\t\t\t$dates[] = $tmpObj->getPublicationDate();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (empty($dates)) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn array_unique($dates);\n\t} // fn GetPublicationDates\n\n\n\t/**\n\t * Gets an issues list based on the given parameters.\n\t *\n\t * @param array $p_parameters\n\t *    An array of ComparisonOperation objects\n\t * @param string $p_order\n\t *    An array of columns and directions to order by\n\t * @param integer $p_start\n\t *    The record number to start the list\n\t * @param integer $p_limit\n\t *    The offset. How many records from $p_start will be retrieved.\n\t * @param integer $p_count\n\t *    The total count of the elements; this count is computed without\n\t *    applying the start ($p_start) and limit parameters ($p_limit)\n\t *\n\t * @return array $issuesList\n\t *    An array of Issue objects\n\t */\n\tpublic static function GetList(array $p_parameters, $p_order = null,\n\t$p_start = 0, $p_limit = 0, &$p_count, $p_skipCache = false, $returnObs = true)\n\t{\n\t\tglobal $g_ado_db;\n\n\t\tif (!$p_skipCache && CampCache::IsEnabled()) {\n\t\t\t$paramsArray['parameters'] = serialize($p_parameters);\n\t\t\t$paramsArray['order'] = (is_null($p_order)) ? 'null' : $p_order;\n\t\t\t$paramsArray['start'] = $p_start;\n\t\t\t$paramsArray['limit'] = $p_limit;\n\t\t\t$cacheListObj = new CampCacheList($paramsArray, __METHOD__);\n\t\t\t$issuesList = $cacheListObj->fetchFromCache();\n\t\t\tif ($issuesList !== false && is_array($issuesList)) {\n\t\t\t\treturn $issuesList;\n\t\t\t}\n\t\t}\n\n\t\t$hasPublicationId = false;\n\t\t$selectClauseObj = new SQLSelectClause();\n\t\t$countClauseObj = new SQLSelectClause();\n\n\t\t// sets the where conditions\n\t\tforeach ($p_parameters as $param) {\n\t\t\t$comparisonOperation = self::ProcessListParameters($param);\n\t\t\tif (empty($comparisonOperation)) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (strpos($comparisonOperation['left'], 'IdPublication') !== false) {\n\t\t\t\t$hasPublicationId = true;\n\t\t\t}\n\n            $whereCondition = $g_ado_db->escapeOperation($comparisonOperation);\n\t\t\t$selectClauseObj->addWhere($whereCondition);\n\t\t\t$countClauseObj->addWhere($whereCondition);\n\t\t}\n\n\t\t// validates whether publication identifier was given\n\t\tif ($hasPublicationId == false) {\n\t\t\tCampTemplate::singleton()->trigger_error('missed parameter Publication '\n\t\t\t.'Identifier in statement list_topics');\n\t\t\treturn;\n\t\t}\n\n\t\t// sets the columns to be fetched\n\t\t$tmpIssue = new Issue();\n\t\t$columnNames = $tmpIssue->getColumnNames(true);\n\t\tforeach ($columnNames as $columnName) {\n\t\t\t$selectClauseObj->addColumn($columnName);\n\t\t}\n\t\t$countClauseObj->addColumn('COUNT(*)');\n\n\t\t// sets the main table for the query\n\t\t$selectClauseObj->setTable($tmpIssue->getDbTableName());\n\t\t$countClauseObj->setTable($tmpIssue->getDbTableName());\n\t\tunset($tmpIssue);\n\n\t\tif (is_array($p_order)) {\n\t\t\t$order = Issue::ProcessListOrder($p_order);\n\t\t\t// sets the order condition if any\n\t\t\tforeach ($order as $orderDesc) {\n\t\t\t\t$orderField = $orderDesc['field'];\n\t\t\t\t$orderDirection = $orderDesc['dir'];\n\t\t\t\t$selectClauseObj->addOrderBy($orderField . ' ' . $orderDirection);\n\t\t\t}\n\t\t}\n\n\t\t$selectClauseObj->addGroupField('Number');\n\t\t$selectClauseObj->addGroupField('IdLanguage');\n\n\t\t// sets the limit\n\t\t$selectClauseObj->setLimit($p_start, $p_limit);\n\n\t\t// builds the query and executes it\n\t\t$selectQuery = $selectClauseObj->buildQuery();\n\t\t$countQuery = $countClauseObj->buildQuery();\n\t\t$issues = $g_ado_db->GetAll($selectQuery);\n\t\tif (is_array($issues)) {\n\t\t\t$p_count = $g_ado_db->GetOne($countQuery);\n\n\t\t\t// builds the array of issue objects\n\t\t\t$issuesList = array();\n\t\t\tforeach ($issues as $issue) {\n\t\t\t    if ($returnObs) {\n\t\t\t        $issuesList[] = new Issue($issue['IdPublication'], $issue['IdLanguage'], $issue['Number']);\n\t\t\t\t} else {\n\t\t\t\t    $issuesList[] = array('publication_id'=>$issue['IdPublication'],\n\t\t\t\t    'language_id'=>$issue['IdLanguage'], 'number'=>$issue['Number']);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\t$issuesList = array();\n\t\t\t$p_count = 0;\n\t\t}\n\t\tif (!$p_skipCache && CampCache::IsEnabled()) {\n\t\t\t$cacheListObj->storeInCache($issuesList);\n\t\t}\n\n\t\treturn $issuesList;\n\t} // fn GetList\n\n\n\t/**\n\t * Processes a paremeter (condition) coming from template tags.\n\t *\n\t * @param array $p_param\n\t *      The array of parameters\n\t *\n\t * @return array $comparisonOperation\n\t *      The array containing processed values of the condition\n\t */\n\tprivate static function ProcessListParameters($p_param)\n\t{\n\t\t$comparisonOperation = array();\n\n\t\tswitch (strtolower($p_param->getLeftOperand())) {\n\t\t\tcase 'year':\n\t\t\tcase 'publish_year':\n\t\t\t\t$comparisonOperation['left'] = 'YEAR(PublicationDate)';\n\t\t\t\tbreak;\n\t\t\tcase 'mon_nr':\n\t\t\tcase 'publish_month':\n\t\t\t\t$comparisonOperation['left'] = 'MONTH(PublicationDate)';\n\t\t\t\tbreak;\n\t\t\tcase 'mday':\n\t\t\tcase 'publish_mday':\n\t\t\t\t$comparisonOperation['left'] = 'DAYOFMONTH(PublicationDate)';\n\t\t\t\tbreak;\n\t\t\tcase 'yday':\n\t\t\t\t$comparisonOperation['left'] = 'DAYOFYEAR(PublicationDate)';\n\t\t\t\tbreak;\n\t\t\tcase 'wday':\n\t\t\t\t$comparisonOperation['left'] = 'DAYOFWEEK(PublicationDate)';\n\t\t\t\tbreak;\n\t\t\tcase 'hour':\n\t\t\t\t$comparisonOperation['left'] = 'HOUR(PublicationDate)';\n\t\t\t\tbreak;\n\t\t\tcase 'min':\n\t\t\t\t$comparisonOperation['left'] = 'MINUTE(PublicationDate)';\n\t\t\t\tbreak;\n\t\t\tcase 'sec':\n\t\t\t\t$comparisonOperation['left'] = 'SECOND(PublicationDate)';\n\t\t\t\tbreak;\n\t\t\tcase 'name':\n\t\t\t\t$comparisonOperation['left'] = 'Name';\n\t\t\t\tbreak;\n\t\t\tcase 'number':\n\t\t\t\t$comparisonOperation['left'] = 'Number';\n\t\t\t\tbreak;\n\t\t\tcase 'publish_date':\n\t\t\tcase 'publicationdate':\n\t\t\t\t$comparisonOperation['left'] = 'DATE(PublicationDate)';\n\t\t\t\tbreak;\n\t\t\tcase 'idpublication':\n\t\t\t\t$comparisonOperation['left'] = 'IdPublication';\n\t\t\t\tbreak;\n\t\t\tcase 'idlanguage':\n\t\t\t\t$comparisonOperation['left'] = 'IdLanguage';\n\t\t\t\tbreak;\n\t\t\tcase 'published':\n\t\t\t\tif (strtolower($p_param->getRightOperand()) == 'true') {\n\t\t\t\t\t$comparisonOperation['left'] = 'Published';\n\t\t\t\t\t$comparisonOperation['symbol'] = '=';\n\t\t\t\t\t$comparisonOperation['right'] =  'Y';\n\t\t\t\t\treturn $comparisonOperation;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\n\t\tif (isset($comparisonOperation['left'])) {\n\t\t\t$operatorObj = $p_param->getOperator();\n\t\t\t$comparisonOperation['right'] = $p_param->getRightOperand();\n\t\t\t$comparisonOperation['symbol'] = $operatorObj->getSymbol('sql');\n\t\t}\n\n\t\treturn $comparisonOperation;\n\t} // fn ProcessListParameters\n\n\n\t/**\n\t * Processes an order directive coming from template tags.\n\t *\n\t * @param array $p_order\n\t *      The array of order directives\n\t *\n\t * @return array\n\t *      The array containing processed values of the condition\n\t */\n\tprivate static function ProcessListOrder(array $p_order)\n\t{\n\t\t$order = array();\n\t\tforeach ($p_order as $orderDesc) {\n\t\t\t$field = $orderDesc['field'];\n\t\t\t$direction = $orderDesc['dir'];\n\t\t\t$dbField = null;\n\t\t\tswitch (strtolower($field)) {\n\t\t\t\tcase 'bynumber':\n\t\t\t\t\t$dbField = 'Number';\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'byname':\n\t\t\t\t\t$dbField = 'Name';\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'bydate':\n\t\t\t\tcase 'bycreationdate':\n\t\t\t\tcase 'bypublishdate':\n\t\t\t\t\t$dbField = 'PublicationDate';\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (!is_null($dbField)) {\n\t\t\t\t$direction = !empty($direction) ? $direction : 'asc';\n\t\t\t}\n\t\t\t$order[] = array('field'=>$dbField, 'dir'=>$direction);\n\t\t}\n\t\treturn $order;\n\t}\n\n\n\t/**\n\t * Processes an order directive for the issue translations list.\n\t *\n\t * @param array $p_order\n\t *      The array of order directives in the format:\n\t *      array('field'=>field_name, 'dir'=>order_direction)\n\t *      field_name can take one of the following values:\n\t *        bynumber, byname, byenglish_name, bycode\n\t *      order_direction can take one of the following values:\n\t *        asc, desc\n\t *\n\t * @return array\n\t *      The array containing processed values of the condition\n\t */\n\tprivate static function ProcessLanguageListOrder(array $p_order)\n\t{\n\t\t$order = array();\n\t\tforeach ($p_order as $orderDesc) {\n\t\t\t$field = $orderDesc['field'];\n\t\t\t$direction = $orderDesc['dir'];\n\t\t\t$dbField = null;\n\t\t\tswitch (strtolower($field)) {\n\t\t\t\tcase 'bynumber':\n\t\t\t\t\t$dbField = 'Languages.Id';\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'byname':\n\t\t\t\t\t$dbField = 'Languages.OrigName';\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'byenglish_name':\n\t\t\t\t\t$dbField = 'Languages.Name';\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'bycode':\n\t\t\t\t\t$dbField = 'Languages.Code';\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (!is_null($dbField)) {\n\t\t\t\t$direction = !empty($direction) ? $direction : 'asc';\n\t\t\t}\n\t\t\t$order[] = array('field'=>$dbField, 'dir'=>$direction);\n\t\t}\n\t\treturn $order;\n\t}\n\n} // class Issue\n\n?>\n"
  },
  {
    "path": "newscoop/classes/IssuePublish.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbObjectArray.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Issue.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/include/campsite_init.php');\n\n/**\n * @package Campsite\n */\nclass IssuePublish extends DatabaseObject {\n\tvar $m_keyColumnNames = array('id');\n\tvar $m_dbTableName = 'IssuePublish';\n\tvar $m_keyIsAutoIncrement = true;\n\tvar $m_columnNames = array('id',\n\t\t\t\t\t\t\t   'fk_publication_id',\n\t\t\t\t\t\t\t   'fk_issue_id',\n\t\t\t\t\t\t\t   'fk_language_id',\n\t\t\t\t\t\t\t   'time_action',\n\t\t\t\t\t\t\t   'publish_action',\n\t\t\t\t\t\t\t   'do_publish_articles',\n\t\t\t\t\t\t\t   'is_completed');\n\n\t/**\n\t * This table delays an issue's publish time to a later date.\n\t *\n\t * @param int $p_id\n\t */\n\tpublic function IssuePublish($p_id = null)\n\t{\n\t\tparent::DatabaseObject($this->m_columnNames);\n\t\t$this->m_data['id'] = $p_id;\n\t\tif ($this->keyValuesExist()) {\n\t\t\t$this->fetch();\n\t\t}\n\t} // constructor\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getEventId()\n\t{\n\t\treturn $this->m_data['id'];\n\t} // fn getEventId\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getPublicationId()\n\t{\n\t    return $this->m_data['fk_publication_id'];\n\t} // fn getPublicationId\n\n\n\t/**\n\t * Set the publication ID.\n\t *\n\t * @param int $p_value\n\t * @return boolean\n\t */\n\tpublic function setPublicationId($p_value)\n\t{\n\t\treturn $this->setProperty('fk_publication_id', $p_value);\n\t} // fn setPublicationId\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getIssueNumber()\n\t{\n\t    return $this->m_data['fk_issue_id'];\n\t} // fn getIssueNumber\n\n\n\t/**\n\t * Enter description here...\n\t *\n\t * @param int $p_value\n\t * @return boolean\n\t */\n\tpublic function setIssueNumber($p_value)\n\t{\n\t\treturn $this->setProperty('fk_issue_id', $p_value);\n\t} // fn setIssueNumber\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getLanguageId()\n\t{\n\t    return $this->m_data['fk_language_id'];\n\t} // fn getLanguageId\n\n\n\t/**\n\t * Set the language ID of the issue to publish.\n\t *\n\t * @param int $p_value\n\t * @return boolean\n\t */\n\tpublic function setLanguageId($p_value)\n\t{\n\t\treturn $this->setProperty('fk_language_id', $p_value);\n\t} // fn setLanguageId\n\n\n\t/**\n\t * Get the published state to switch to when the \"publish time\" arrives.\n\t * This can be NULL for no action, 'P' for Publish, or 'U' for Unpublish.\n\t * @return mixed\n\t */\n\tpublic function getPublishAction()\n\t{\n\t\treturn $this->m_data['publish_action'];\n\t} // fn getPublishAction\n\n\n\t/**\n\t * Set the published state to switch to when the \"publish time\" arrives:\n\t * 'P' for Publish, or 'U' for Unpublish.\n\t * @param string $p_value\n\t * @return void\n\t */\n\tpublic function setPublishAction($p_value)\n\t{\n\t\t$p_value = strtoupper($p_value);\n\t\tif ( ($p_value == 'P') || ($p_value == 'U') ) {\n\t\t\t$this->setProperty('publish_action', $p_value);\n\t\t}\n\t} // fn setPublishAction\n\n\n\t/**\n\t * Get whether to publish the articles when the \"publish time\" arrives.\n\t * This can be 'Y' for 'Yes', or 'N' for 'No'.\n\t * @return mixed\n\t */\n\tpublic function getPublishArticlesAction()\n\t{\n\t\treturn $this->m_data['do_publish_articles'];\n\t} // fn getPublishArticlesAction\n\n\n\t/**\n\t * Set the front page state to switch to when the \"publish time\" arrives:\n\t * 'Y' for Yes, or 'N' for No.\n\t * @param string $p_value\n\t * @return mixed\n\t */\n\tpublic function setPublishArticlesAction($p_value)\n\t{\n\t\t$p_value = strtoupper($p_value);\n\t\tif ( ($p_value == 'Y') || ($p_value == 'N') ) {\n\t\t\t$this->setProperty('do_publish_articles', $p_value);\n\t\t}\n\t} // fn setPublishArticlesAction\n\n\n\t/**\n\t * Get the time the event is scheduled to happen.\n\t * Will be returned in the format: YYYY-MM-DD HH:MM:SS\n\t *\n\t * @return string\n\t */\n\tpublic function getActionTime()\n\t{\n\t\treturn $this->m_data['time_action'];\n\t} // fn getActionTime\n\n\n\t/**\n\t * Set the time the action should be executed.\n\t *\n\t * @param string $p_value\n\t * \t\tMust be in the form YYYY-MM-DD HH:MM:SS\n\t *\n\t * @return boolean\n\t */\n\tpublic function setActionTime($p_value)\n\t{\n\t\treturn $this->setProperty('time_action', $p_value);\n\t} // fn setActionTime\n\n\n\t/**\n\t * Return true if the action has been carried out.\n\t *\n\t * @return boolean\n\t */\n\tpublic function isCompleted()\n\t{\n\t\treturn ($this->m_data['is_completed'] == 'Y');\n\t} // fn isCompleted\n\n\n\t/**\n\t * Mark that this action has been completed.\n\t * @return void\n\t */\n\tpublic function setCompleted()\n\t{\n\t    $this->setProperty('is_completed', 'Y');\n\t} // fn setCompleted\n\n\n\t/**\n\t * Execute the action.\n\t * @return void\n\t */\n\tpublic function doAction()\n\t{\n\t\t$publicationId = $this->m_data['fk_publication_id'];\n\t\t$issueId = $this->m_data['fk_issue_id'];\n\t\t$languageId = $this->m_data['fk_language_id'];\n\t\t$publishAction = $this->m_data['publish_action'];\n\t\t$publishArticlesAction = $this->m_data['do_publish_articles'];\n\n\t\t$articleState = ($publishAction == 'P') ? 'Y' : 'S';\n\t\tif ($publishArticlesAction == 'Y') {\n\t\t    $articles = Article::GetArticles(null, $issueId, null, $languageId);\n            foreach ($articles as $article) {\n                $article->setWorkflowStatus($articleState);\n            }\n\t\t}\n\t\t$issueState = ($publishAction == 'P') ? 'Y' : 'N';\n\t\t$issue = new Issue($publicationId, $languageId, $issueId);\n\t\t$issue->setWorkflowStatus($issueState);\n\t\t$this->setCompleted();\n\t} // fn doAction\n\n\n\t/**\n\t * Get all the events that will change the issue's state.\n\t * Returns an array of IssuePublish objects.\n\t *\n\t * @param int $p_publicationId\n\t * @param int $p_issueNumber\n\t * @param int $p_language\n\t * @param boolean $p_includeCompleted\n\t * @return array\n\t */\n\tpublic static function GetIssueEvents($p_publicationId, $p_issueNumber,\n\t                                      $p_languageId = null, $p_includeCompleted = true)\n\t{\n\t\t$queryStr = \"SELECT * FROM IssuePublish \"\n\t\t\t\t\t.\" WHERE fk_publication_id = $p_publicationId \"\n\t\t\t\t\t.\" AND fk_issue_id = $p_issueNumber \"\n\t\t\t\t\t.\" AND fk_language_id = $p_languageId \";\n\t\tif (!$p_includeCompleted) {\n\t\t\t$queryStr .= \" AND is_completed = 'N'\";\n\t\t}\n\t\t$queryStr .= \" ORDER BY time_action ASC\";\n\t\t$result = DbObjectArray::Create('IssuePublish', $queryStr);\n\t\treturn $result;\n\t} // fn GetIssueEvents\n\n\n\t/**\n\t * Get all the actions that currently need to be performed.\n\t * @return array\n\t */\n\tpublic static function GetPendingActions()\n\t{\n\t    $datetime = strftime(\"%Y-%m-%d %H:%M:00\");\n    \t$queryStr = \"SELECT * FROM IssuePublish \"\n    \t           . \" WHERE time_action <= '$datetime'\"\n                   . \" AND is_completed != 'Y'\"\n                   . \" ORDER BY time_action ASC\";\n        $result = DbObjectArray::Create('IssuePublish', $queryStr);\n        return $result;\n\t} // fn GetPendingActions\n\n\n\t/**\n\t * Execute all pending actions.\n\t * @return void\n\t */\n\tpublic static function DoPendingActions()\n\t{\n        $actions = IssuePublish::GetPendingActions();\n    \tforeach ($actions as $issuePublishObj) {\n    \t    $issuePublishObj->doAction();\n    \t}\n    \tif (count($actions) > 0) {\n    \t\tCampCache::singleton()->clear('user');\n    \t}\n        return count($actions);\n\t} // fn DoPendingActions\n\n\n\t/**\n\t * For now, this is mostly a hack to get the home page working.\n\t * The raw array is returned.\n\t *\n\t * @param int $p_limit\n\t * @return array\n\t */\n\tpublic static function GetFutureActions($p_limit)\n\t{\n\t    global $g_ado_db;\n\t    $datetime = strftime(\"%Y-%m-%d %H:%M:00\");\n\t    $dummyIssue = new Issue();\n\t    $columnNames = $dummyIssue->getColumnNames(true);\n        $queryStr = \"SELECT id, time_action, publish_action, do_publish_articles, \"\n                    . implode(\",\", $columnNames). \" FROM Issues, IssuePublish \"\n                    . \" WHERE time_action >= '\" . $datetime . \"'\"\n                    . \" AND is_completed != 'Y'\"\n                    . \" AND Issues.IdPublication=IssuePublish.fk_publication_id\"\n                    . \" AND Issues.Number=IssuePublish.fk_issue_id\"\n                    . \" AND Issues.IdLanguage=IssuePublish.fk_language_id \"\n                    . \" ORDER BY time_action DESC\"\n                    . \" LIMIT $p_limit\";\n        //echo $queryStr.\"<br>\";\n\t\t$rows = $g_ado_db->GetAll($queryStr);\n\t\t$addKeys = array();\n\t\tif ($rows && (count($rows) > 0)) {\n    \t\tforeach ($rows as $row) {\n    \t\t    $row[\"ObjectType\"] = \"issue\";\n    \t\t    $addKeys[$row['time_action']] = $row;\n    \t\t}\n\t\t}\n        return $addKeys;\n\t} // fn GetFutureActions\n\n\n\t/**\n\t * This should be called whenever an issue is deleted.\n\t *\n\t * @param int $p_issueNumber\n\t */\n\tpublic static function OnIssueDelete($p_publicationId, $p_issueNumber, $p_languageId)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$queryStr = \"DELETE FROM IssuePublish \"\n\t\t\t\t\t.\" WHERE fk_publication_id = $p_publicationId \"\n\t\t\t\t\t.\" AND fk_issue_id = $p_issueNumber \"\n\t\t\t\t\t.\" AND fk_language_id = $p_languageId \";\n\t\treturn $g_ado_db->Execute($queryStr);\n\t} // fn OnIssueDelete\n\n} // class IssuePublish\n\n?>"
  },
  {
    "path": "newscoop/classes/Language.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nglobal $ADMIN_DIR;\n\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbObjectArray.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\n\n/**\n * @package Campsite\n */\nclass Language extends DatabaseObject {\n\tvar $m_dbTableName = 'Languages';\n\tvar $m_keyColumnNames = array('Id');\n\tvar $m_keyIsAutoIncrement = true;\n\tvar $m_columnNames = array('Id', 'Name', 'CodePage', 'OrigName',\n\t    'Code', 'RFC3066bis', 'Month1', 'Month2', 'Month3', 'Month4', 'Month5',\n\t    'Month6', 'Month7', 'Month8', 'Month9', 'Month10', 'Month11',\n\t    'Month12', 'WDay1', 'WDay2', 'WDay3', 'WDay4', 'WDay5', 'WDay6',\n\t    'WDay7', 'ShortMonth1', 'ShortMonth2', 'ShortMonth3', 'ShortMonth4',\n\t    'ShortMonth5', 'ShortMonth6', 'ShortMonth7', 'ShortMonth8',\n\t    'ShortMonth9', 'ShortMonth10', 'ShortMonth11', 'ShortMonth12',\n\t    'ShortWDay1', 'ShortWDay2', 'ShortWDay3', 'ShortWDay4',\n\t    'ShortWDay5', 'ShortWDay6', 'ShortWDay7');\n\n\t/**\n\t * Constructor.\n\t * @param int $p_languageId\n\t */\n\tpublic function Language($p_languageId = null)\n\t{\n\t\tparent::DatabaseObject($this->m_columnNames);\n\t\tif (!is_null($p_languageId)) {\n\t\t\t$this->m_data['Id'] = $p_languageId;\n\t\t\t$this->fetch();\n\t\t}\n\t} // constructor\n\n\n\t/**\n\t * Create the language.  Creates the directory on disk to store the\n\t * translation files.\n\t *\n\t * @param array $p_values\n\t * @return mixed\n\t * \t\tReturn TRUE on success and PEAR_Error on failure.\n\t */\n\tpublic function create($p_values = null)\n\t{\n\t\t$success = parent::create($p_values);\n\t\tif ($success) {\n\t\t\tCampCache::singleton()->clear('user');\n\t\t}\n\n\t\treturn $success;\n\t} // fn create\n\n\n\t/**\n\t * Update the language.\n\t *\n\t * @param array $p_values\n\t * @param boolean $p_commit\n\t * @param boolean $p_isSql\n\t * @return boolean\n\t */\n\tpublic function update($p_values = null, $p_commit = true, $p_isSql = false)\n\t{\n\t\t$success = parent::update($p_values, $p_commit, $p_isSql);\n\t\tif (!$success) {\n\t\t\treturn false;\n\t\t}\n\t\tCampCache::singleton()->clear('user');\n\t\treturn $success;\n\t} // fn update\n\n\n\t/**\n\t * Delete the language, this will also delete the language files unless\n\t * the parameter specifies otherwise.\n\t *\n\t * @return boolean\n\t */\n\tpublic function delete($p_deleteLanguageFiles = true)\n\t{\n\t\tif (is_link($GLOBALS['g_campsiteDir'] . '/' . $this->getCode() . '.php')) {\n\t\t\tunlink($GLOBALS['g_campsiteDir'] . '/' . $this->getCode() . '.php');\n\t\t}\n\n\t\t$tmpData = $this->m_data;\n\t\t$success = parent::delete();\n\t\tif ($success) {\n            CampCache::singleton()->clear('user');\n\t\t}\n\t\treturn $success;\n\t} // fn delete\n\n\n\t/**\n\t * The unique ID of the language in the database.\n\t * @return int\n\t */\n\tpublic function getLanguageId()\n\t{\n\t\treturn $this->m_data['Id'];\n\t} // fn getLanguageId\n\n\n\t/**\n\t * Return the english name of this language.\n\t * @return string\n\t */\n\tpublic function getName()\n\t{\n\t\treturn $this->m_data['Name'];\n\t} // fn getName\n\n\n\t/**\n\t * Return the name of the language as written in the language itself.\n\t * @return string\n\t */\n\tpublic function getNativeName()\n\t{\n\t\treturn $this->m_data['OrigName'];\n\t} // fn get\n\n\n\t/**\n\t * Get the two-letter code for this language.\n\t * @return string\n\t */\n\tpublic function getCode()\n\t{\n\t\treturn $this->m_data['Code'];\n\t} // fn getCode\n\n\n    /**\n     * Get language and regional string for this language, based on\n     * RFC3066bis standard.\n     * @return string\n     */\n    public function getRFC3066bis()\n    {\n        return $this->m_data['RFC3066bis'];\n    } // fn getRFC3066bis\n\n\n\t/**\n\t * Get the page encoding for this language.\n\t * @return string\n\t */\n\tpublic function getCodePage()\n\t{\n\t    return $this->m_data['CodePage'];\n\t} // fn getCodePage\n\n\n\t/**\n\t * Return an array of Language objects based on the given contraints.\n\t *\n\t * @param int $p_id\n\t * @param string $p_languageCode\n\t * @param string $p_name\n\t * @param array $p_excludedLanguages\n\t * @param array $p_order\n\t * @return array\n\t */\n\tpublic static function GetLanguages($p_id = null, $p_languageCode = null,\n\t$p_name = null, array $p_excludedLanguages = array(), array $p_order = array(),\n\t$p_skipCache = false)\n\t{\n\t    global $g_ado_db;\n\n\t    if (!$p_skipCache && CampCache::IsEnabled()) {\n\t    \t$paramsArray['id'] = (is_null($p_id)) ? 'null' : $p_id;\n\t    \t$paramsArray['language_code'] = (is_null($p_languageCode)) ? 'null' : $p_languageCode;\n\t    \t$paramsArray['name'] = (is_null($p_name)) ? 'null' : $p_name;\n\t    \t$paramsArray['excluded_languages'] = $p_excludedLanguages;\n\t    \t$paramsArray['order'] = $p_order;\n\t    \t$cacheListObj = new CampCacheList($paramsArray, __METHOD__);\n\t    \t$languages = $cacheListObj->fetchFromCache();\n\t    \tif ($languages !== false && is_array($languages)) {\n\t    \t\treturn $languages;\n\t    \t}\n\t    }\n\n\t    $selectClauseObj = new SQLSelectClause();\n\t    $tmpLanguage = new Language();\n\t    $selectClauseObj->setTable($tmpLanguage->getDbTableName());\n\n\t    if (!is_null($p_id)) {\n\t    \t$selectClauseObj->addWhere($g_ado_db->escapeKeyVal('Id', (int)$p_id));\n\t    }\n\t    if (!is_null($p_languageCode)) {\n\t    \t$selectClauseObj->addWhere($g_ado_db->escapeKeyVal('Code', $p_languageCode));\n\t    }\n\t    if (!is_null($p_name)) {\n            $selectClauseObj->addWhere($g_ado_db->escapeKeyVal('Name', $p_name));\n\t    }\n\t    if (count($p_excludedLanguages) > 0) {\n\t    \t$excludedLanguages = array();\n\t    \tforeach ($p_excludedLanguages as $excludedLanguage) {\n\t    \t\t$excludedLanguages[] = (int)$excludedLanguage;\n\t    \t}\n\t    \t$selectClauseObj->addWhere(\"Id NOT IN (\" . implode(', ', $excludedLanguages) . \")\");\n\t    }\n\t    $order = Language::ProcessLanguageListOrder($p_order);\n\t    foreach ($order as $orderDesc) {\n\t        $selectClauseObj->addOrderBy($orderDesc['field'] . ' ' . $orderDesc['dir']);\n\t    }\n\t    $selectClause = $selectClauseObj->buildQuery();\n\t    $languages = DbObjectArray::Create('Language', $selectClause);\n\t    if (!$p_skipCache && CampCache::IsEnabled()) {\n\t        $cacheListObj->storeInCache($languages);\n\t    }\n\n\t    return $languages;\n\t} // fn GetLanguages\n\n\n    /**\n     * Processes an order directive for the issue translations list.\n     *\n     * @param array $p_order\n     *      The array of order directives in the format:\n     *      array('field'=>field_name, 'dir'=>order_direction)\n     *      field_name can take one of the following values:\n     *        bynumber, byname, byenglish_name, bycode\n     *      order_direction can take one of the following values:\n     *        asc, desc\n     *\n     * @return array\n     *      The array containing processed values of the condition\n     */\n    private static function ProcessLanguageListOrder(array $p_order)\n    {\n        $order = array();\n        foreach ($p_order as $orderDesc) {\n            $field = $orderDesc['field'];\n            $direction = $orderDesc['dir'];\n            $dbField = null;\n            switch (strtolower($field)) {\n                case 'bynumber':\n                    $dbField = 'Languages.Id';\n                    break;\n                case 'byname':\n                    $dbField = 'Languages.OrigName';\n                    break;\n                case 'byenglish_name':\n                    $dbField = 'Languages.Name';\n                    break;\n                case 'bycode':\n                    $dbField = 'Languages.Code';\n                    break;\n            }\n            if (!is_null($dbField)) {\n                $direction = !empty($direction) ? $direction : 'asc';\n            }\n            $order[] = array('field'=>$dbField, 'dir'=>$direction);\n        }\n        return $order;\n    }\n\n\n\t/**\n\t * Returns language id for the provided language code\n\t *\n\t */\n\tpublic static function GetLanguageIdByCode($p_languageCode)\n\t{\n\t    global $g_ado_db;\n\n        $queryStr = \"SELECT Id FROM Languages WHERE Code = ? LIMIT 1\";\n        $queryParams = array($p_languageCode);\n\n        $result = $g_ado_db->GetAll($queryStr, $queryParams);\n\n        if ((!$result) || (1 > count($result))) {return null;}\n\n        return $result[0]['Id'];\n    } // fn GetLanguageIdByCode\n\n    /**\n     * Returns language for the provided language code\n     */\n    public static function GetLanguageByCode($languageCode)\n    {\n        global $g_ado_db;\n\n        $queryStr = \"SELECT * FROM Languages WHERE Code = ? LIMIT 1\";\n        $queryParams = array($languageCode);\n\n        $result = $g_ado_db->GetAll($queryStr, $queryParams);\n\n        if ((!$result) || (1 > count($result))) {return null;}\n\n        return new Language($result[0]['Id']);\n    }\n\n    public static function Get6391List()\n    {\n        return array(\n            'ab' => \"Abkhaz\",\n            'aa' => \"Afar\",\n            'af' => \"Afrikaans\",\n            'ak' => \"Akan\",\n            'sq' => \"Albanian\",\n            'am' => \"Amharic\",\n            'ar' => \"Arabic\",\n            'an' => \"Aragonese\",\n            'hy' => \"Armenian\",\n            'as' => \"Assamese\",\n            'av' => \"Avaric\",\n            'ae' => \"Avestan\",\n            'ay' => \"Aymara\",\n            'az' => \"Azerbaijani\",\n            'bm' => \"Bambara\",\n            'ba' => \"Bashkir\",\n            'eu' => \"Basque\",\n            'be' => \"Belarusian\",\n            'bn' => \"Bengali\",\n            'bh' => \"Bihari\",\n            'bi' => \"Bislama\",\n            'bs' => \"Bosnian\",\n            'br' => \"Breton\",\n            'bg' => \"Bulgarian\",\n            'my' => \"Burmese\",\n            'ca' => \"Catalan\",\n            'ch' => \"Chamorro\",\n            'ce' => \"Chechen\",\n            'ny' => \"Chichewa\",\n            'zh' => \"Chinese\",\n            'cv' => \"Chuvash\",\n            'kw' => \"Cornish\",\n            'co' => \"Corsican\",\n            'cr' => \"Cree\",\n            'hr' => \"Croatian\",\n            'cs' => \"Czech\",\n            'da' => \"Danish\",\n            'dv' => \"Divehi\",\n            'nl' => \"Dutch\",\n            'dz' => \"Dzongkha\",\n            'en' => \"English\",\n            'eo' => \"Esperanto\",\n            'et' => \"Estonian\",\n            'ee' => \"Ewe\",\n            'fo' => \"Faroese\",\n            'fj' => \"Fijian\",\n            'fi' => \"Finnish\",\n            'fr' => \"French\",\n            'ff' => \"Fula\",\n            'gl' => \"Galician\",\n            'ka' => \"Georgian\",\n            'de' => \"German\",\n            'el' => \"Greek\",\n            'gn' => \"Guaraní\",\n            'gu' => \"Gujarati\",\n            'ht' => \"Haitian\",\n            'ha' => \"Hausa\",\n            'he' => \"Hebrew\",\n            'hz' => \"Herero\",\n            'hi' => \"Hindi\",\n            'ho' => \"Hiri Motu\",\n            'hu' => \"Hungarian\",\n            'ia' => \"Interlingua\",\n            'id' => \"Indonesian\",\n            'ie' => \"Interlingue\",\n            'ga' => \"Irish\",\n            'ig' => \"Igbo\",\n            'ik' => \"Inupiaq\",\n            'io' => \"Ido\",\n            'is' => \"Icelandic\",\n            'it' => \"Italian\",\n            'iu' => \"Inuktitut\",\n            'ja' => \"Japanese\",\n            'jv' => \"Javanese\",\n            'kl' => \"Kalaallisut\",\n            'kn' => \"Kannada\",\n            'kr' => \"Kanuri\",\n            'ks' => \"Kashmiri\",\n            'kk' => \"Kazakh\",\n            'km' => \"Khmer\",\n            'ki' => \"Kikuyu\",\n            'rw' => \"Kinyarwanda\",\n            'ky' => \"Kyrgyz\",\n            'kv' => \"Komi\",\n            'kg' => \"Kongo\",\n            'ko' => \"Korean\",\n            'ku' => \"Kurdish\",\n            'kj' => \"Kwanyama\",\n            'la' => \"Latin\",\n            'lb' => \"Luxembourgish\",\n            'lg' => \"Ganda\",\n            'li' => \"Limburgish\",\n            'ln' => \"Lingala\",\n            'lo' => \"Lao\",\n            'lt' => \"Lithuanian\",\n            'lu' => \"Luba-Katanga\",\n            'lv' => \"Latvian\",\n            'gv' => \"Manx\",\n            'mk' => \"Macedonian\",\n            'mg' => \"Malagasy\",\n            'ms' => \"Malay\",\n            'ml' => \"Malayalam\",\n            'mt' => \"Maltese\",\n            'mi' => \"Māori\",\n            'mr' => \"Marathi (Marāṭhī)\",\n            'mh' => \"Marshallese\",\n            'mn' => \"Mongolian\",\n            'na' => \"Nauru\",\n            'nv' => \"Navajo\",\n            'nb' => \"Norwegian Bokmål\",\n            'nd' => \"North Ndebele\",\n            'ne' => \"Nepali\",\n            'ng' => \"Ndonga\",\n            'nn' => \"Norwegian Nynorsk\",\n            'no' => \"Norwegian\",\n            'ii' => \"Nuosu\",\n            'nr' => \"South Ndebele\",\n            'oc' => \"Occitan\",\n            'oj' => \"Ojibwe\",\n            'cu' => \"Old Church Slavonic\",\n            'om' => \"Oromo\",\n            'or' => \"Oriya\",\n            'os' => \"Ossetian\",\n            'pa' => \"Panjabi\",\n            'pi' => \"Pāli\",\n            'fa' => \"Persian\",\n            'pl' => \"Polish\",\n            'ps' => \"Pashto\",\n            'pt' => \"Portuguese\",\n            'qu' => \"Quechua\",\n            'rm' => \"Romansh\",\n            'rn' => \"Kirundi\",\n            'ro' => \"Romanian\",\n            'ru' => \"Russian\",\n            'sa' => \"Sanskrit (Saṁskṛta)\",\n            'sc' => \"Sardinian\",\n            'sd' => \"Sindhi\",\n            'se' => \"Northern Sami\",\n            'sm' => \"Samoan\",\n            'sg' => \"Sango\",\n            'sr' => \"Serbian\",\n            'gd' => \"Scottish Gaelic\",\n            'sn' => \"Shona\",\n            'si' => \"Sinhala\",\n            'sk' => \"Slovak\",\n            'sl' => \"Slovene\",\n            'so' => \"Somali\",\n            'st' => \"Southern Sotho\",\n            'es' => \"Spanish\",\n            'su' => \"Sundanese\",\n            'sw' => \"Swahili\",\n            'ss' => \"Swati\",\n            'sv' => \"Swedish\",\n            'ta' => \"Tamil\",\n            'te' => \"Telugu\",\n            'tg' => \"Tajik\",\n            'th' => \"Thai\",\n            'ti' => \"Tigrinya\",\n            'bo' => \"Tibetan Standard\",\n            'tk' => \"Turkmen\",\n            'tl' => \"Tagalog\",\n            'tn' => \"Tswana\",\n            'to' => \"Tonga\",\n            'tr' => \"Turkish\",\n            'ts' => \"Tsonga\",\n            'tt' => \"Tatar\",\n            'tw' => \"Twi\",\n            'ty' => \"Tahitian\",\n            'ug' => \"Uighur\",\n            'uk' => \"Ukrainian\",\n            'ur' => \"Urdu\",\n            'uz' => \"Uzbek\",\n            've' => \"Venda\",\n            'vi' => \"Vietnamese\",\n            'vo' => \"Volapük\",\n            'wa' => \"Walloon\",\n            'cy' => \"Welsh\",\n            'wo' => \"Wolof\",\n            'fy' => \"Western Frisian\",\n            'xh' => \"Xhosa\",\n            'yi' => \"Yiddish\",\n            'yo' => \"Yoruba\",\n            'za' => \"Zhuang\",\n            'zu' => \"Zulu\",\n        );\n    } // fn Get6391List\n\n} // class Language"
  },
  {
    "path": "newscoop/classes/LiveUserMock.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Utils\\PermissionToAcl;\nuse Newscoop\\Doctrine\\AdoDbAdapter;\n\nrequire_once(dirname(dirname(__FILE__)) . '/library/Newscoop/Utils/PermissionToAcl.php');\n\nglobal $g_ado_db, $LiveUserAdmin;\n\n$LiveUserAdmin = new LiveUserMock($g_ado_db);\n\n/**\n * LiveUser mock object\n *  provides backward compatibility for plugins\n */\nclass LiveUserMock\n{\n    const RIGHTS = 'liveuser_rights';\n    const RULES = 'acl_rule';\n\n    /** @var ADOConnection */\n    private $db;\n\n    /**\n     * @param ADOConnection $db\n     */\n    public function __construct(AdoDbAdapter $db)\n    {\n        $this->db = $db;\n    }\n\n    /**\n     * Add dynamic right\n     *\n     * @param array $right\n     * @return void\n     */\n    public function addRight(array $right)\n    {\n        // get next id\n        $sql = 'SELECT MAX(right_id) FROM ' . self::RIGHTS;\n        $lastId = (int) $this->db->GetOne($sql);\n        $nextId = $lastId + 1;\n\n        $areaId = (int) $right['area_id'];\n        $permission = $this->db->escape($right['right_define_name']);\n\n        $sql = 'INSERT IGNORE\n                INTO ' . self::RIGHTS . \" (right_id, area_id, right_define_name)\n                VALUES ($nextId, $areaId, $permission)\";\n        $this->db->Execute($sql);\n    }\n\n    /**\n     * Get rights\n     *\n     * @param array $params\n     * @return array\n     */\n    public function getRights(array $params)\n    {\n        $permission = $params['filters']['right_define_name'];\n        $sql = 'SELECT right_id\n                FROM ' . self::RIGHTS . \"\n                WHERE right_define_name = \" . $this->db->escape($permission); \n        return $this->db->GetAll($sql);\n    }\n\n    /**\n     * Remove right\n     *\n     * @param array $params\n     * @return void\n     */\n    public function removeRight(array $params)\n    {\n        $rightId = (int) $params['right_id'];\n\n        // get permission\n        $sql = 'SELECT right_define_name\n                FROM ' . self::RIGHTS . \"\n                WHERE right_id = $rightId\";\n        $permission = $this->db->GetOne($sql);\n\n        // remove acl rules\n        try {\n            list($resource,) = PermissionToAcl::translate($permission);\n        } catch (\\InvalidArgumentException $e) {\n            return;\n        }\n\n        $sql = 'DELETE\n                FROM ' . self::RULES . \"\n                WHERE resource = '$resource'\";\n        $this->db->Execute($sql);\n\n        // remove right\n        $sql = 'DELETE\n                FROM ' . self::RIGHTS . \"\n                WHERE right_id = $rightId\";\n        $this->db->Execute($sql);\n    }\n}\n"
  },
  {
    "path": "newscoop/classes/Log.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\nrequire_once('DatabaseObject.php');\n\n/**\n * @package Campsite\n */\nclass Log extends DatabaseObject {\n\tvar $m_keyColumnNames = array('time_created', 'fk_event_id', 'text');\n\tvar $m_keyIsAutoIncrement = false;\n\tvar $m_dbTableName = 'Log';\n\tvar $m_columnNames = array(\n\t\t'time_created',\n\t\t'fk_event_id',\n\t\t'fk_user_id',\n\t\t'text',\n\t\t'user_ip');\n\n\n\t/**\n\t * This is a static function.\n\t * Write a message to the log table.\n\t *\n\t * @param string $p_text\n\t * @param string $p_userName\n\t * @param int $p_eventId\n\t *\n\t * @return void\n\t */\n\tpublic static function Message($p_text, $p_userId = null, $p_eventId = 0)\n\t{\n\t\tglobal $g_ado_db;\n        global $Campsite;\n\n        if (isset($Campsite) && is_array($Campsite) && array_key_exists('OMIT_LOGGING', $Campsite) && $Campsite['OMIT_LOGGING']) {\n            return;\n        }\n\n        if (empty($p_userId)) {\n\t\t\t$p_userId = 0;\n\n            $auth = \\Zend_Auth::getInstance();\n            if ($auth->hasIdentity()) {\n                $p_userId = $auth->getIdentity();\n            }\n\t\t}\n\n\t\tif (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {\n\t\t\t$userIP = $_SERVER['HTTP_X_FORWARDED_FOR'];\n\t\t} elseif (isset($_SERVER['REMOTE_ADDR'])) {\n\t\t\t$userIP = $_SERVER['REMOTE_ADDR'];\n\t\t} else {\n\t\t\t$userIP = '';\n\t\t}\n\n        $ip_ary = explode('/', (string) $userIP);\n        $userIP = substr($ip_ary[0], 0, 39); // IPv6\n\n        $queryStr = \"INSERT INTO Log (time_created, fk_event_id, fk_user_id, text, user_ip) VALUES\n                    (NOW(), {$p_eventId}, {$p_userId}, \" . $g_ado_db->escape($p_text) . \", \" . $g_ado_db->escape($userIP) . \")\";\n\t\t$g_ado_db->Execute($queryStr);\n\t} // fn Message\n\n\n    /**\n     * Log article related event.\n     *\n     * @param Article $p_article\n     * @param string $p_text\n     * @param int $p_userId\n     * @param int $p_eventId\n     * @param bool $p_short\n     *\n     * @return void\n     */\n    public static function ArticleMessage(Article $p_article, $p_text, $p_userId = NULL, $p_eventId = 0, $p_short = FALSE)\n    {\n        ob_start();\n\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        echo $translator->trans('Article'), ': ', $p_article->getTitle();\n\n        if (!$p_short) { // add publication, issue, section\n            echo ' (';\n            echo $translator->trans('Publication'), ': ', $p_article->getPublicationId();\n            echo ', ';\n            echo $translator->trans('Issue'), ': ', $p_article->getIssueNumber();\n            echo ', ';\n            echo $translator->trans('Section'), ': ', $p_article->getSectionNumber();\n            echo \")\\n\";\n        }\n\n        // generate url\n        $url = ShortURL::GetURL($p_article->getPublicationId(),\n            $p_article->getLanguageId(),\n            $p_article->getIssueNumber(),\n            $p_article->getSectionNumber(),\n            $p_article->getArticleNumber());\n        if (strpos($url, 'http') !== FALSE) { // no url for deleted\n            echo $translator->trans('Article URL', array(), 'api'), ': ', $url, \"\\n\";\n        }\n\n        echo $translator->trans('Article Number', array(), 'api'), ': ', $p_article->getArticleNumber(), \"\\n\";\n        echo $translator->trans('Language'), ': ', $p_article->getLanguageName(), \"\\n\";\n\n        echo \"\\n\";\n        echo $translator->trans('Action') . ': ', $p_text;\n\n        $message = ob_get_clean();\n        self::Message(substr($message, 0, 254), $p_userId, $p_eventId);\n    }\n\n\n\t/**\n\t * Get the time the log message was created.\n\t * @return string\n\t */\n\tpublic function getTimeStamp()\n\t{\n\t\treturn $this->m_data['time_created'];\n\t} // fn getTimeStamp\n\n\n\t/**\n\t * Return the log message.\n\t * @return string\n\t */\n\tpublic function getText()\n\t{\n\t\treturn $this->m_data['text'];\n\t} // fn getText\n\n\n\t/**\n\t * Get the event ID which cooresponds to an entry in the \"Events\" table.\n\t * @return int\n\t */\n\tpublic function getEventId()\n\t{\n\t\treturn $this->m_data['fk_event_id'];\n\t} // fn getEventId\n\n\n\tpublic function getClientIP()\n\t{\n\t    return $this->m_data['user_ip_addr'];\n\t}\n\n\n\t/**\n\t * Return the number of log lines.\n\t * @param int $p_eventId\n\t * @return int\n\t */\n\tpublic static function GetNumLogs($p_eventId = null)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$queryStr = 'SELECT COUNT(*) FROM Log';\n\t\tif (!is_null($p_eventId)) {\n\t\t\t$queryStr .= \" WHERE fk_event_id=$p_eventId\";\n\t\t}\n\t\t$total = $g_ado_db->GetOne($queryStr);\n\t\treturn $total;\n\t} // fn GetNumLogs\n\n\n\t/**\n\t * Get the logs.\n\t *\n\t * @param int $p_eventId\n\t * @param array $p_sqlOptions\n\t *\n\t * @return array\n\t */\n\tpublic static function GetLogs($p_eventId = null, $p_sqlOptions = null)\n\t{\n\t\tif (is_null($p_sqlOptions) || !isset($p_sqlOptions['ORDER BY'])) {\n\t\t\t$p_sqlOptions['ORDER BY'] = array('time_created' => 'DESC');\n\t\t}\n\t\t$tmpLog = new Log();\n\t\t$columns = $tmpLog->getColumnNames(true);\n\t\t$queryStr = \"SELECT \".implode(\", \", $columns)\n\t\t    .\", INET_NTOA(Log.user_ip) AS user_ip_addr\"\n\t\t    .\", liveuser_users.Name as full_name\"\n\t\t    .\", liveuser_users.UName as user_name\"\n\t\t    .\" FROM Log\"\n\t\t    .\" LEFT JOIN liveuser_users\"\n\t\t    .\" ON Log.fk_user_id = liveuser_users.Id\";\n\t\tif (!is_null($p_eventId)) {\n\t\t\t$queryStr .= \" WHERE Log.fk_event_id=$p_eventId\";\n\t\t}\n\t\t$queryStr = DatabaseObject::ProcessOptions($queryStr, $p_sqlOptions);\n\t\t$logLines = DbObjectArray::Create('Log', $queryStr);\n\t\treturn $logLines;\n\t} // fn GetLogs\n\n} // class Log\n\n?>\n"
  },
  {
    "path": "newscoop/classes/LoginAttempts.php",
    "content": "<?php\r\n/**\r\n * @package Campsite\r\n */\r\n\r\n/**\r\n * Includes\r\n */\r\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\r\n\r\nclass LoginAttempts {\r\n\r\n\t/**\r\n\t * Delete IP records older than 12 hours from the database.\r\n\t * @return void\r\n\t */\r\n\tpublic static function DeleteOldLoginAttempts()\r\n\t{\r\n\t\tglobal $g_ado_db;\r\n\t\t$now = time();\r\n\t\t// Records are kept for 12 hours.\r\n\t\t$diff = $now - 43200;\r\n        $queryStr = \"DELETE FROM FailedLoginAttempts WHERE time_of_attempt <=\".$diff;\r\n\t    $g_ado_db->Execute($queryStr);\r\n\t} // fn DeleteOldLoginAttempts\r\n\r\n\r\n\t/**\r\n\t * Insert IP record to the database which has a failed login attempt.\r\n\t *\r\n\t * @return void\r\n\t */\r\n\tpublic static function RecordLoginAttempt()\r\n\t{\r\n\t\tglobal $g_ado_db;\r\n\t\t$now = time();\r\n\t\t$userIp = getenv('REMOTE_ADDR');\r\n\t\t$queryStr = \"INSERT INTO FailedLoginAttempts (ip_address,time_of_attempt) VALUES('\".$userIp.\"','\".$now.\"')\";\r\n\t\t$g_ado_db->Execute($queryStr);\r\n\t } // fn RecordLoginAttempt\r\n\r\n\r\n\t/**\r\n     * Checks if failed login attempts exceeds the number of\r\n     * failed login attempts saved in the System Preferences.\r\n     *\r\n\t * @return boolean\r\n\t */\r\n\tpublic static function MaxLoginAttemptsExceeded()\r\n\t{\r\n\t\tglobal $g_ado_db;\r\n\t\t$userIp = getenv('REMOTE_ADDR');\r\n\t\t$preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\r\n\t\t$maxFailuresAllowed = $preferencesService->LoginFailedAttemptsNum;\r\n\t\tif (is_null($maxFailuresAllowed)) {\r\n\t\t\t$maxFailuresAllowed = 3;\r\n\t\t}\r\n\t\t$queryStr = \"SELECT COUNT(*) FROM FailedLoginAttempts WHERE ip_address='\".$userIp.\"'\";\r\n\t\t$ip_num = $g_ado_db->GetOne($queryStr);\r\n\r\n\t\tif ($ip_num >= $maxFailuresAllowed) {\r\n\t\t\treturn true;\r\n\t\t} else {\r\n\t\t\treturn false;\r\n\t\t}\r\n\t} // fn MaxLoginAttemptsExceeded\r\n\r\n\r\n\t/**\r\n\t * Resets the login counter by clearing all IP records\r\n     * from the failed login attempt database after a sucessful login.\r\n     *\r\n\t * @return void\r\n\t */\r\n\tpublic static function ClearLoginAttemptsForIp()\r\n\t{\r\n\t\tglobal $g_ado_db;\r\n\t\t$ip = getenv('REMOTE_ADDR');\r\n\t\t$queryStr = \"DELETE FROM FailedLoginAttempts WHERE ip_address='\".$ip.\"';\";\r\n\t\t$g_ado_db->Execute($queryStr);\r\n\t} // fn ClearLoginAttemptsForIp\r\n\r\n} // class Captcha\r\n?>"
  },
  {
    "path": "newscoop/classes/ModuleConfiguration.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n\nfunction addslashes_walk(&$p_item, $p_key, $p_userData = null)\n{\n\t$p_item = str_replace(\"\\\\\", \"\\\\\\\\\", $p_item);\n\t$p_item = str_replace(\"'\", \"\\\\'\", $p_item);\n\treturn true;\n}\n\nclass ModuleConfiguration\n{\n\tvar $m_moduleName;\n\tvar $m_directory;\n\tvar $m_variables;\n\tvar $m_variablesList;\n\n\tpublic function ModuleConfiguration($module_name = \"\", $directory = \"\")\n\t{\n\t\tif ($module_name != \"\")\n\t\t\treturn $this->read($module_name, $directory);\n\t}\n\n\t/**\n\t * Return configuration file name of a given module\n\t *\n\t * @param string $p_moduleName\n\t *\n\t * @return string or false in case of error\n\t */\n\tpublic function configurationFileName($p_moduleName = \"\")\n\t{\n\t\t$p_moduleName = $p_moduleName != \"\" ? $p_moduleName : $this->m_moduleName;\n\t\tif (!ModuleConfiguration::validModuleName($p_moduleName))\n\t\t\treturn false;\n\n\t\treturn $p_moduleName . \"_conf.php\";\n\t}\n\n\t/**\n\t * Return configuration file path of a given module, directory\n\t *\n\t * @param string $p_moduleName\n\t * @param string $p_directory\n\t *\n\t * @return string or false in case of error\n\t */\n\tpublic function configurationFilePath($p_moduleName = \"\", $p_directory = \"\")\n\t{\n\t\t$p_moduleName = $p_moduleName != \"\" ? $p_moduleName : $this->m_moduleName;\n\t\tif (!ModuleConfiguration::validModuleName($p_moduleName))\n\t\t\treturn false;\n\t\t$p_directory = $p_directory != \"\" ? $p_directory : $this->m_directory;\n\n\t\tif ($p_directory != \"\" && $p_directory[strlen($p_directory)-1] != \"/\")\n\t\t\t$p_directory .= \"/\";\n\t\t$p_directory .= ModuleConfiguration::configurationFileName($p_moduleName);\n\t\treturn $p_directory;\n\t}\n\n\t/**\n\t * Read the configuration file corresponding to a specific module\n\t *\n\t * @param string $p_moduleName\n\t * @param string $p_directory\n\t *\n\t * @return 0 or string in case of error\n\t */\n\tpublic function read($p_moduleName, $p_directory)\n\t{\n\t\tglobal $Campsite, $CampsiteVars;\n\n\t\tif (!ModuleConfiguration::validModuleName($p_moduleName))\n\t\t\treturn \"Invalid module name\";\n\n\t\t// compute the configuration file path and include the file\n\t\t$file_path = ModuleConfiguration::configurationFilePath($p_moduleName, $p_directory);\n\t\tif (!file_exists($file_path))\n\t\t\treturn \"Invalid configuration file path or module name\";\n\t\tinclude($file_path);\n\n\t\t// verify if the configuration file was correct\n\t\tif (!is_array($CampsiteVars) || !is_array($CampsiteVars[$p_moduleName]))\n\t\t\treturn \"Invalid configuration file format: variable list missing\";\n\t\tif (!is_array($Campsite))\n\t\t\treturn \"Invalid configuration file format: variables missing\";\n\n\t\t// initialize internal variables\n\t\t$this->m_moduleName = $p_moduleName;\n\t\t$this->m_directory = trim($p_directory);\n\t\t$this->m_variablesList = $CampsiteVars[$p_moduleName];\n\t\tforeach ($this->m_variablesList as $key=>$var_name)\n\t\t\t$this->m_variables[$var_name] = $Campsite[$var_name];\n\n\t\treturn 0;\n\t}\n\n\t/**\n\t * Create a module configuration object for a given module name and array of variables\n\t *\n\t * @param string $p_moduleName\n\t * @param array $p_variables\n\t *\n\t * @return 0 or string in case of error\n\t */\n\tpublic function create($p_moduleName, $p_variables)\n\t{\n\t\tif (!ModuleConfiguration::validModuleName($p_moduleName))\n\t\t\treturn \"Invalid module name\";\n\n\t\t$this->m_moduleName = $p_moduleName;\n\t\t$this->m_variables = $p_variables;\n\t\t$this->m_variablesList = array_keys($p_variables);\n\t\treturn 0;\n\t}\n\n\t/**\n\t * Save the configuration file corresponding to module object\n\t *\n\t * @param string $p_destDirectory\n\t *\n\t * @return 0 or string in case of error\n\t */\n\tpublic function save($p_destDirectory = \"\")\n\t{\n\t\t// check if the object was initialized correctly\n\t\tif (!ModuleConfiguration::validModuleName($this->m_moduleName))\n\t\t\treturn \"Invalid module name\";\n\t\tif (!is_array($this->m_variablesList) || !is_array($this->m_variables))\n\t\t\treturn \"Variables not initialized\";\n\n\t\t$moduleName = $this->m_moduleName;\n\t\t$directory = $p_destDirectory != \"\" ? $p_destDirectory : $this->m_directory;\n\n\t\t// compute the configuration file path and create the file\n\t\t$variablesList = $this->m_variablesList;\n\t\tarray_walk($variablesList, 'addslashes_walk');\n\t\t$file_path = ModuleConfiguration::configurationFilePath($moduleName, $directory);\n\t\tif (!$file = @fopen($file_path, \"w+\"))\n\t\t\treturn \"Unable to create configuration file \\\"$file_path\\\"\";\n\t\tfputs($file, \"<?php\\n\\n\");\n\t\tforeach($this->m_variables as $var_name=>$value)\n\t\t\tfputs($file, \"\\$Campsite['\" . addslashes($var_name) . \"'] = '\"\n\t\t\t\t. addslashes($value) . \"';\\n\");\n\t\tfputs($file, \"\\n\\$CampsiteVars['\" . addslashes($moduleName) . \"'] = array('\"\n\t\t      . implode(\"', '\", $variablesList) . \"');\\n\\n?>\");\n\t\tfclose($file);\n\t\treturn 0;\n\t}\n\n\t/**\n\t * Return the module name\n\t *\n\t * @return string\n\t */\n\tpublic function moduleName()\n\t{\n\t\treturn $this->m_moduleName;\n\t}\n\n\t/**\n\t * Return the variables list as array\n\t *\n\t * @return array or false in case of error\n\t */\n\tpublic function variablesList()\n\t{\n\t\tif (!is_array($this->m_variables) || !is_array($this->m_variablesList))\n\t\t\treturn false;\n\t\tif (!is_array($this->m_variablesList))\n\t\t\treturn false;\n\t\treturn $this->m_variablesList;\n\t}\n\n\t/**\n\t * Return the value of a given variable\n\t *\n\t * @param string $p_variableName\n\t *\n\t * @return string or false in case of error\n\t */\n\tpublic function valueOf($p_variableName)\n\t{\n\t\tif (!is_array($this->m_variables) || !is_array($this->m_variablesList))\n\t\t\treturn false;\n\t\tif (!in_array($p_variableName, $this->m_variablesList))\n\t\t\treturn false;\n\t\treturn $this->m_variables[$p_variableName];\n\t}\n\n\t/**\n\t * Set the value of a given variable\n\t *\n\t * @param string $p_variableName\n\t * @param string $p_value\n\t *\n\t * @return bool\n\t */\n\tpublic function setValueOf($p_variableName, $p_value)\n\t{\n\t\tif (!is_array($this->m_variables) || !is_array($this->m_variablesList))\n\t\t\treturn false;\n\t\tif (!in_array($p_variableName, $this->m_variablesList))\n\t\t\treturn false;\n\t\t$this->m_variables[$p_variableName] = $p_value;\n\t\treturn true;\n\t}\n\n\t/**\n\t * Return the true if the module name was valid\n\t *\n\t * @param string $p_moduleName\n\t *\n\t * @return bool\n\t */\n\tpublic function validModuleName(&$p_moduleName)\n\t{\n\t\t$p_moduleName = trim(strtolower($p_moduleName));\n\t\tif ($p_moduleName == \"\")\n\t\t\treturn false;\n\t\t$invalid_chars = array(\"/\");\n\t\tfor ($i = 0; $i < strlen($p_moduleName); $i++)\n\t\t\tif (in_array($p_moduleName[$i], $invalid_chars) || $p_moduleName[$i] < \" \")\n\t\t\t\treturn false;\n\t\treturn true;\n\t}\n}\n\n?>"
  },
  {
    "path": "newscoop/classes/ObjectType.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Translation.php');\n\n/**\n * @package Campsite\n */\nclass ObjectType extends DatabaseObject {\n\tvar $m_keyColumnNames = array('id');\n\tvar $m_keyIsAutoIncrement = true;\n\tvar $m_dbTableName = 'ObjectTypes';\n\tvar $m_columnNames = array('id',\n\t\t\t\t\t\t\t   'name');\n\n\tpublic function __construct($p_idOrName = null)\n\t{\n        if (!is_null($p_idOrName)) {\n            if (is_numeric($p_idOrName)) {\n                $this->m_data['id'] = $p_idOrName;\n\t\t    } else {\n\t\t        $this->m_data['name'] = $p_idOrName;\n\t\t        $this->m_keyColumnNames = array('name');\n\t\t    }\n            $this->fetch();\n        }\n\t} // constructor\n\n\n    /**\n     * Wrapper around DatabaseObject::setProperty\n     * @see classes/DatabaseObject#setProperty($p_dbColumnName, $p_value, $p_commit, $p_isSql)\n     */\n    public function setProperty($p_dbColumnName, $p_value, $p_commit = true, $p_isSql = false)\n    {\n        if ($p_dbColumnName == 'name') {\n            $this->m_keyColumnNames = array('name');\n            $this->resetCache();\n            $this->m_keyColumnNames = array('id');\n        }\n        return parent::setProperty($p_dbColumnName, $p_value);\n    }\n\n\n\tpublic function delete()\n\t{\n\t\tif (!$this->exists()) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Delete the description\n\t\tTranslation::deletePhrase($this->m_data['fk_description_id']);\n\n\t\t// Delete the record in the database\n\t\treturn parent::delete();\n\t} // fn delete\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getObjectTypeId()\n\t{\n\t\treturn $this->m_data['id'];\n\t} // fn getObjectTypeId\n\n\n\t/**\n\t * @return string\n\t */\n\tpublic function getName()\n\t{\n\t\treturn $this->m_data['name'];\n\t} // fn getName\n\n\n\t/**\n\t * Get the description ID which is an index into the Translations table.\n\t *\n\t * @return int\n\t */\n\tfunction getDescriptionId()\n\t{\n\t\treturn $this->m_data['fk_description_id'];\n\t} // fn getDescriptionId\n\n\n\t/**\n\t * Get the description in the given language.\n\t * This is a convenience function that wraps the Translation::GetPhrase() function.\n\t *\n\t * @param int $p_languageId\n\t * @return string\n\t */\n\tpublic function getDescription($p_languageId)\n\t{\n\t\treturn Translation::GetPhrase($p_languageId, $this->m_data['fk_description_id']);\n\t} // fn getDescription\n\n\n\t/**\n\t * Set the description in the given language.\n\t *\n\t * @param int $p_languageId\n\t * @param string $p_text\n\t */\n\tpublic function setDescription($p_languageId, $p_text)\n\t{\n\t\tTranslation::SetPhrase($p_languageId, $this->m_data['fk_description_id'], $p_text);\n\t} // fn setDescription\n\n} // class ObjectType\n\n?>"
  },
  {
    "path": "newscoop/classes/Plupload.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\nclass Plupload\n{\n    /**\n     * Handle multi file upload.\n     *\n     * @param string $p_path\n     *\n     * @return void\n     */\n    public static function OnMultiFileUpload($p_path)\n    {\n        // HTTP headers for no cache etc\n        header('Content-type: text/plain; charset=UTF-8');\n        header(\"Expires: Mon, 26 Jul 1997 05:00:00 GMT\");\n        header(\"Last-Modified: \" . gmdate(\"D, d M Y H:i:s\") . \" GMT\");\n        header(\"Cache-Control: no-store, no-cache, must-revalidate\");\n        header(\"Cache-Control: post-check=0, pre-check=0\", false);\n        header(\"Pragma: no-cache\");\n\n        // Settings\n        $targetDir = $p_path;\n        $cleanupTargetDir = false;\n        $maxFileAge = 60 * 60;\n\n        // 5 minutes execution time\n        @set_time_limit(5 * 60);\n\n        // Get parameters\n        $chunk = isset($_REQUEST[\"chunk\"]) ? $_REQUEST[\"chunk\"] : 0;\n        $chunks = isset($_REQUEST[\"chunks\"]) ? $_REQUEST[\"chunks\"] : 0;\n        $fileName = isset($_REQUEST[\"name\"]) ? $_REQUEST[\"name\"] : '';\n\n        // Clean the fileName for security reasons\n        $fileName = preg_replace('/[^\\w\\._]+/', '', $fileName);\n\n        // Create target dir\n        if (!file_exists($targetDir)) {\n            @mkdir($targetDir);\n        }\n\n        // Remove old temp files\n        if (is_dir($targetDir) && ($dir = opendir($targetDir))) {\n            while (($file = readdir($dir)) !== false) {\n                $filePath = $targetDir . DIR_SEP . $file;\n\n                // Remove temp files if they are older than the max age\n                if (preg_match('/\\\\.tmp$/', $file) && (filemtime($filePath) < time() - $maxFileAge)) {\n                    @unlink($filePath);\n                }\n            }\n            closedir($dir);\n        } else {\n            die('{\"jsonrpc\" : \"2.0\", \"error\" : {\"code\": 100, \"message\": \"Failed to open temp directory.\"}, \"id\" : \"id\"}');\n        }\n\n        // Look for the content type header\n        if (isset($_SERVER[\"HTTP_CONTENT_TYPE\"])) {\n            $contentType = $_SERVER[\"HTTP_CONTENT_TYPE\"];\n        }\n\n        if (isset($_SERVER[\"CONTENT_TYPE\"])) {\n            $contentType = $_SERVER[\"CONTENT_TYPE\"];\n        }\n\n        if (strpos($contentType, \"multipart\") !== false) {\n            if (isset($_FILES['file']['tmp_name']) && is_uploaded_file($_FILES['file']['tmp_name'])) {\n                // Open temp file\n                $out = fopen($targetDir . DIR_SEP . $fileName, $chunk == 0 ? \"wb\" : \"ab\");\n                if ($out) {\n                    // Read binary input stream and append it to temp file\n                    $in = fopen($_FILES['file']['tmp_name'], \"rb\");\n                    if ($in) {\n                        while ($buff = fread($in, 4096)) {\n                            fwrite($out, $buff);\n                        }\n                    } else {\n                        die('{\"jsonrpc\" : \"2.0\", \"error\" : {\"code\": 101, \"message\": \"Failed to open input stream.\"}, \"id\" : \"id\"}');\n                    }\n                    fclose($out);\n                    unlink($_FILES['file']['tmp_name']);\n                } else {\n                    die('{\"jsonrpc\" : \"2.0\", \"error\" : {\"code\": 102, \"message\": \"Failed to open output stream.\"}, \"id\" : \"id\"}');\n                }\n            } else {\n                die('{\"jsonrpc\" : \"2.0\", \"error\" : {\"code\": 103, \"message\": \"Failed to move uploaded file.\"}, \"id\" : \"id\"}');\n            }\n        } else {\n            // Open temp file\n            $out = fopen($targetDir . DIR_SEP . $fileName, $chunk == 0 ? \"wb\" : \"ab\");\n            if ($out) {\n                // Read binary input stream and append it to temp file\n                $in = fopen(\"php://input\", \"rb\");\n                if ($in) {\n                    while ($buff = fread($in, 4096)) {\n                        fwrite($out, $buff);\n                    }\n                } else {\n                    die('{\"jsonrpc\" : \"2.0\", \"error\" : {\"code\": 101, \"message\": \"Failed to open input stream.\"}, \"id\" : \"id\"}');\n                }\n\n                fclose($out);\n            } else {\n                die('{\"jsonrpc\" : \"2.0\", \"error\" : {\"code\": 102, \"message\": \"Failed to open output stream.\"}, \"id\" : \"id\"}');\n            }\n        }\n\n        // Return JSON-RPC response\n        die('{\"jsonrpc\" : \"2.0\", \"result\" : null, \"id\" : \"id\"}');\n    } // fn OnMultiFileUpload\n    \n    /**\n     * Handle multi file upload without dying.\n     *\n     * @param string $p_path\n     *\n     * @return void\n     */\n    public static function OnMultiFileUploadCustom($p_path)\n    {\n        /*\n        // HTTP headers for no cache etc\n        header('Content-type: text/plain; charset=UTF-8');\n        header(\"Expires: Mon, 26 Jul 1997 05:00:00 GMT\");\n        header(\"Last-Modified: \" . gmdate(\"D, d M Y H:i:s\") . \" GMT\");\n        header(\"Cache-Control: no-store, no-cache, must-revalidate\");\n        header(\"Cache-Control: post-check=0, pre-check=0\", false);\n        header(\"Pragma: no-cache\");\n        */\n\n        // Settings\n        $targetDir = $p_path;\n        $cleanupTargetDir = false;\n        $maxFileAge = 60 * 60;\n\n        // 5 minutes execution time\n        @set_time_limit(5 * 60);\n\n        // Get parameters\n        $chunk = isset($_REQUEST[\"chunk\"]) ? $_REQUEST[\"chunk\"] : 0;\n        $chunks = isset($_REQUEST[\"chunks\"]) ? $_REQUEST[\"chunks\"] : 0;\n        $fileName = isset($_REQUEST[\"name\"]) ? $_REQUEST[\"name\"] : '';\n\n        // Clean the fileName for security reasons\n        $fileName = preg_replace('/[^\\w\\._]+/', '', $fileName);\n\n        // Create target dir\n        if (!file_exists($targetDir)) {\n            @mkdir($targetDir);\n        }\n\n        // Remove old temp files\n        if (is_dir($targetDir) && ($dir = opendir($targetDir))) {\n            while (($file = readdir($dir)) !== false) {\n                $filePath = $targetDir . DIR_SEP . $file;\n\n                // Remove temp files if they are older than the max age\n                if (preg_match('/\\\\.tmp$/', $file) && (filemtime($filePath) < time() - $maxFileAge)) {\n                    @unlink($filePath);\n                }\n            }\n            closedir($dir);\n        } else {\n            //die('{\"jsonrpc\" : \"2.0\", \"error\" : {\"code\": 100, \"message\": \"Failed to open temp directory.\"}, \"id\" : \"id\"}');\n            return(array('result' => false, 'message' => 'Failed to open temp directory.'));\n        }\n\n        // Look for the content type header\n        if (isset($_SERVER[\"HTTP_CONTENT_TYPE\"])) {\n            $contentType = $_SERVER[\"HTTP_CONTENT_TYPE\"];\n        }\n\n        if (isset($_SERVER[\"CONTENT_TYPE\"])) {\n            $contentType = $_SERVER[\"CONTENT_TYPE\"];\n        }\n\n        if (strpos($contentType, \"multipart\") !== false) {\n            if (isset($_FILES['file']['tmp_name']) && is_uploaded_file($_FILES['file']['tmp_name'])) {\n                // Open temp file\n                $out = fopen($targetDir . DIR_SEP . $fileName, $chunk == 0 ? \"wb\" : \"ab\");\n                if ($out) {\n                    // Read binary input stream and append it to temp file\n                    $in = fopen($_FILES['file']['tmp_name'], \"rb\");\n                    if ($in) {\n                        while ($buff = fread($in, 4096)) {\n                            fwrite($out, $buff);\n                        }\n                    } else {\n                        //die('{\"jsonrpc\" : \"2.0\", \"error\" : {\"code\": 101, \"message\": \"Failed to open input stream.\"}, \"id\" : \"id\"}');\n                        return(array('result' => false, 'message' => 'Failed to open input stream.'));\n                    }\n                    fclose($out);\n                    unlink($_FILES['file']['tmp_name']);\n                } else {\n                    //die('{\"jsonrpc\" : \"2.0\", \"error\" : {\"code\": 102, \"message\": \"Failed to open output stream.\"}, \"id\" : \"id\"}');\n                    return(array('result' => false, 'message' => 'Failed to open output stream.'));\n                }\n            } else {\n                //die('{\"jsonrpc\" : \"2.0\", \"error\" : {\"code\": 103, \"message\": \"Failed to move uploaded file.\"}, \"id\" : \"id\"}');\n                return(array('result' => false, 'message' => 'Failed to move uploaded file.'));\n            }\n        } else {\n            // Open temp file\n            $out = fopen($targetDir . DIR_SEP . $fileName, $chunk == 0 ? \"wb\" : \"ab\");\n            if ($out) {\n                // Read binary input stream and append it to temp file\n                $in = fopen(\"php://input\", \"rb\");\n                if ($in) {\n                    while ($buff = fread($in, 4096)) {\n                        fwrite($out, $buff);\n                    }\n                } else {\n                    //die('{\"jsonrpc\" : \"2.0\", \"error\" : {\"code\": 101, \"message\": \"Failed to open input stream.\"}, \"id\" : \"id\"}');\n                    return(array('result' => false, 'message' => 'Failed to open input stream.'));\n                }\n\n                fclose($out);\n            } else {\n                //die('{\"jsonrpc\" : \"2.0\", \"error\" : {\"code\": 102, \"message\": \"Failed to open output stream.\"}, \"id\" : \"id\"}');\n                return(array('result' => false, 'message' => 'Failed to open output stream.'));\n            }\n        }\n\n        // Return JSON-RPC response\n        //die('{\"jsonrpc\" : \"2.0\", \"result\" : null, \"id\" : \"id\"}');\n        return(array('result' => true, 'message' => 'Succeeded.'));\n    } // fn OnMultiFileUpload\n}\n"
  },
  {
    "path": "newscoop/classes/Publication.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbObjectArray.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\n\n/**\n * @package Campsite\n */\nclass Publication extends DatabaseObject {\n\tvar $m_dbTableName = 'Publications';\n\tvar $m_keyColumnNames = array('Id');\n\tvar $m_keyIsAutoIncrement = true;\n\tvar $m_columnNames = array('Id',\n\t                           'Name',\n\t                           'IdDefaultLanguage',\n\t                           'IdDefaultAlias',\n\t                           'IdURLType',\n\t                           'fk_forum_id',\n\t                           'comments_enabled',\n\t                           'comments_article_default_enabled',\n\t                           'comments_subscribers_moderated',\n\t                           'comments_public_moderated',\n\t                           'comments_captcha_enabled',\n\t                           'comments_spam_blocking_enabled',\n\t\t\t\t\t\t\t   'url_error_tpl_id',\n                               'seo',\n\t                           'comments_public_enabled',\n                               'comments_moderator_to',\n\t                           'comments_moderator_from',\n                               'meta_title',\n                               'meta_keywords',\n                               'meta_description'\n\t                           );\n\n\t/**\n\t * A publication represents a magazine or newspaper.\n\t *\n\t * This class is mainly responsible for specifying\n\t * publication-wide configuration parameters.\n\t *\n\t * @param int $p_publicationId\n\t */\n\tpublic function Publication($p_publicationId = null)\n\t{\n\t\tparent::DatabaseObject($this->m_columnNames);\n\t\t$this->m_data['Id'] = $p_publicationId;\n\t\tif ($this->keyValuesExist()) {\n\t\t\t$this->fetch();\n\t\t}\n\t} // constructor\n\n\n\t/**\n\t * Create the publication.\n\t *\n\t * This is a wrapper around DatabaseObject::create(),\n\t * but also logs a message and notifies the Parser.\n\t *\n\t * @param array $p_values\n\t * @return boolean\n\t */\n\tpublic function create($p_values = null)\n\t{\n\t\t$created = parent::create($p_values);\n\t\treturn $created;\n\t} // fn create\n\n\n\t/**\n\t * Update the specified columns in the publication.\n\t *\n\t * A wrapper around the DatabaseObject::update(),\n\t * but this function logs a message after the update is complete\n\t * and notifies the Parser about the change.\n\t *\n\t * @param array $p_columns\n\t * @param boolean $p_commit\n\t * @param boolean $p_isSql\n\t * @return boolean\n\t */\n\tpublic function update($p_columns = null, $p_commit = true, $p_isSql = false)\n\t{\n\t\t$updated = parent::update($p_columns, $p_commit, $p_isSql);\n\t\treturn $updated;\n\t} // fn update\n\n\n\t/**\n\t * Delete the publication and all of its aliases.\n\t *\n\t * @return boolean\n\t */\n\tpublic function delete()\n\t{\n\t\t$aliases = Alias::GetAliases(null, $this->m_data['Id']);\n\t\tif ($aliases && (count($aliases) > 0)) {\n\t\t\tforeach ($aliases as $alias) {\n\t\t\t\t$alias->delete();\n\t\t\t}\n\t\t}\n\t\t$tmpData = $this->m_data;\n\t\t$deleted = parent::delete();\n\t\treturn $deleted;\n\t} // fn delete\n\n\n\t/**\n\t * Get the unique ID for this publication.\n\t *\n\t * @return int\n\t */\n\tpublic function getPublicationId()\n\t{\n\t\treturn $this->m_data['Id'];\n\t} // fn getPublicationId\n\n\n\t/**\n\t * Get the name of this publication.\n\t *\n\t * @return string\n\t */\n\tpublic function getName()\n\t{\n\t\treturn $this->m_data['Name'];\n\t} // fn getName\n\n\n\t/**\n\t * Get the default language for this publication.\n\t *\n\t * @return int\n\t */\n\tpublic function getLanguageId()\n\t{\n\t\treturn $this->m_data['IdDefaultLanguage'];\n\t} // fn getLanguageId\n\n\n\t/**\n\t * @return string\n\t */\n\tpublic function getTimeUnit()\n\t{\n\t\treturn $this->m_data['TimeUnit'];\n\t} // fn getTimeUnit\n\n\n\t/**\n\t * Returns the publication subscription time unit name.\n\t *\n\t * @param int $p_languageId\n\t * @return string\n\t */\n\tpublic function getTimeUnitName($p_languageId = null)\n\t{\n\t    $languageId = is_null($p_languageId) ? $this->m_data['IdDefaultLanguage'] : $p_languageId;\n\t    $timeUnit = new TimeUnit($this->m_data['TimeUnit'], $languageId);\n\t    if (!$timeUnit->exists()) {\n\t        $timeUnit = new TimeUnit($this->m_data['TimeUnit'], 1);\n\t    }\n\t    return $timeUnit->getName();\n\t}\n\n\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getDefaultAliasId()\n\t{\n\t\treturn $this->m_data['IdDefaultAlias'];\n\t} // fn getDefaultAliasId\n\n\n\t/**\n\t * Get the default language for this publication.\n\t *\n\t * @return int\n\t */\n\tpublic function getDefaultLanguageId()\n\t{\n\t\treturn $this->m_data['IdDefaultLanguage'];\n\t} // fn getDefaultLanguageId\n\n\n\t/**\n\t * Get the URL type for this publication.\n\t * This returns a key to the URLTypes table, but\n\t * currently there are only two URL types:\n\t * \"short names\" and \"template path\".\n\t *\n\t * @return int\n\t */\n\tpublic function getUrlTypeId()\n\t{\n\t\treturn $this->m_data['IdURLType'];\n\t} // fn getUrlTypeId\n\n\n\t/**\n\t * @return float\n\t */\n\tpublic function getUnitCost()\n\t{\n\t\treturn $this->m_data['UnitCost'];\n\t} // fn getUnitCost\n\n\n\t/**\n\t * @return float\n\t */\n\tpublic function getUnitCostAllLang()\n\t{\n\t\treturn $this->m_data['UnitCostAllLang'];\n\t} // fn getUnitCost\n\n\n\t/**\n\t * @return string\n\t */\n\tpublic function getCurrency()\n\t{\n\t\treturn $this->m_data['Currency'];\n\t} // fn getCurrency\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getPaidTime()\n\t{\n\t\treturn $this->m_data['PaidTime'];\n\t} // fn getPaidTime\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getTrialTime()\n\t{\n\t\treturn $this->m_data['TrialTime'];\n\t} // fn getTrialTime\n\n\n\t/**\n\t * Return the forum associated with this publication.\n\t *\n\t * @return int\n\t */\n\tpublic function getForumId()\n\t{\n\t    return $this->m_data['fk_forum_id'];\n\t} // fn getForumId\n\n\t/**\n     * Return the SEO params.\n     *\n     * @return int\n     */\n    public function getSeo()\n    {\n        return (array) @unserialize($this->m_data['seo']);\n    } // fn getSeo\n\n\n\tpublic function setForumId($p_value)\n\t{\n\t    return $this->setProperty('fk_forum_id', $p_value);\n\t} // fn setForumId\n\n\n\t/**\n\t * Alias for getCommentsEnabled\n\t *\n\t * @return boolean\n\t */\n\tpublic function commentsEnabled()\n\t{\n\t    return $this->getCommentsEnabled();\n\t} // commentsEnabled\n\n    /**\n     * Return TRUE if comments are enabled for this publication.\n     *\n     * @return boolean\n     */\n    public function getCommentsEnabled()\n    {\n        return $this->m_data['comments_enabled'];\n    } // commentsEnabled\n\n\t/**\n\t * Set whether comments are enabled for this publication.\n\t *\n\t * @param boolean $p_value\n\t * @return boolean\n\t */\n\tpublic function setCommentsEnabled($p_value)\n\t{\n\t    $p_value = $p_value ? '1' : '0';\n\t    return $this->setProperty('comments_enabled', $p_value);\n\t} // fn setCommentsEnabled\n\n\t/**\n\t * Return TRUE if comments will default to enabled in the\n\t * article edit screen.\n\t *\n\t * @return boolean\n\t */\n\tpublic function commentsArticleDefaultEnabled()\n\t{\n\t    return $this->m_data['comments_article_default_enabled'];\n\t} // fn commentsArticleDefaultEnabled\n\n\n\t/**\n\t * Set whether comments will default to enabled in the\n\t * article edit screen.\n\t *\n\t * @param boolean $p_value\n\t * @return boolean\n\t */\n\tpublic function setCommentsArticleDefaultEnabled($p_value)\n\t{\n\t    $p_value = $p_value ? '1' : '0';\n\t    return $this->setProperty('comments_article_default_enabled', $p_value);\n\t} // fn setCommentsArticleDefaultEnabled\n\n\n\t/**\n\t * Return TRUE if comments made by subscribers are moderated.\n\t *\n\t * @return boolean\n\t */\n\tpublic function commentsSubscribersModerated()\n\t{\n\t    return $this->m_data['comments_subscribers_moderated'];\n\t} // fn commentsSubscribersModerated\n\n\n\t/**\n\t * Set whether subscriber comments are moderated.\n\t *\n\t * @param boolean $p_value\n\t * @return boolean\n\t */\n\tpublic function setCommentsSubscribersModerated($p_value)\n\t{\n\t    $p_value = $p_value ? '1' : '0';\n\t    return $this->setProperty('comments_subscribers_moderated', $p_value);\n\t} // fn setCommentsSubscribersModerated\n\n\n\t/**\n\t * Get whether comments made by the public are moderated.\n\t *\n\t * @return boolean\n\t */\n\tpublic function commentsPublicModerated()\n\t{\n\t    return $this->m_data['comments_public_moderated'];\n\t} // fn commentsPublicModerated\n\n\n\t/**\n\t * Set whether public comments are moderated.\n\t *\n\t * @param boolean $p_value\n\t * @return boolean\n\t */\n    public function setCommentsPublicModerated($p_value)\n    {\n\t    $p_value = $p_value ? '1' : '0';\n        return $this->setProperty('comments_public_moderated', $p_value);\n    } // fn setCommentsPublicModerated\n\n\n    /**\n     * Return TRUE if a CAPTCHA is used to block comment spam when a\n     * user is posting.\n     *\n     * @return boolean\n     */\n    public function isCaptchaEnabled()\n    {\n    \treturn $this->m_data['comments_captcha_enabled'];\n    } // fn isCaptchaEnabled\n\n\n    /**\n     * Set whether a CAPTCHA should be used to block comment spam when\n     * a user is posting.\n     *\n     * @param boolean $p_value\n     * @return boolean\n     */\n    public function setCaptchaEnabled($p_value)\n    {\n\t    $p_value = $p_value ? '1' : '0';\n        return $this->setProperty('comments_captcha_enabled', $p_value);\n    } // fn setCaptchaEnabled\n\n\n    /**\n     * Return TRUE if comments are checked if they are SPAM before they\n     * are accepted.\n     *\n     * @return boolean\n     */\n    public function isSpamBlockingEnabled()\n    {\n    \treturn $this->m_data['comments_spam_blocking_enabled'];\n    } // fn isSpamBlockingEnabled\n\n\n    /**\n     * Set whether to check comments for SPAM before posting them.\n     *\n     * @param boolean $p_value\n     * @return boolean\n     */\n    public function setSpamBlockingEnabled($p_value)\n    {\n\t    $p_value = $p_value ? '1' : '0';\n        return $this->setProperty('comments_spam_blocking_enabled', $p_value);\n    } // fn setSpamBlockingEnabled\n\n    /**\n     * Alias for getPublicComments\n     *\n     * @return bool\n     */\n    public function publicComments() {\n        return $this->getPublicComments();\n    }\n\n    /**\n     * Return true if comments can be posted by unknown readers.\n     *\n     * @return bool\n     */\n    public function getPublicComments() {\n        return $this->m_data['comments_public_enabled'];\n    }\n\n\n    /**\n     * Set a flag that controls whether an unknown user may post comments.\n     *\n     * @param boolean $isOn\n     * @return boolean\n     */\n    public function setPublicComments($p_value) {\n        $p_value = $p_value ? '1' : '0';\n        return $this->setProperty('comments_public_enabled', $p_value);\n    }\n\n    /**\n     * Get moderator email address for this publication.\n     *\n     * @return string\n     */\n    public function getCommentsModeratorTo()\n    {\n        return $this->m_data['comments_moderator_to'];\n    }\n\n    /**\n     * Set moderator email adddress to which info email is send.\n     *\n     * @param string $p_value\n     * @return boolean\n     */\n    public function setCommentsModeratorTo($p_value)\n    {\n        return $this->setProperty('comments_moderator_to', $p_value);\n    }\n\n    /**\n     * Get from which address moderator receives the info email.\n     *\n     * @return string\n     */\n    public function getCommentsModeratorFrom()\n    {\n        return $this->m_data['comments_moderator_from'];\n    }\n\n    /**\n     * Set from which address moderator receives the info email.\n     *\n     * @param string $p_value\n     * @return boolean\n     */\n    public function setCommentsModeratorFrom($p_value)\n    {\n        return $this->setProperty('comments_moderator_from', $p_value);\n    }\n\n\t/**\n\t * Return all languages used in the publication as an array of\n\t * Language objects.\n\t *\n     * @param integer $p_excludeLanguageId\n     *      If greater than 0, exclude the language with the given\n     *      identifier from the list.\n     * @param array $p_order\n     *      The array of order directives in the format:\n     *      array('field'=>field_name, 'dir'=>order_direction)\n     *      field_name can take one of the following values:\n     *        bynumber, byname, byenglish_name, bycode\n     *      order_direction can take one of the following values:\n     *        asc, desc\n\t * @return array\n\t */\n\tpublic function getLanguages($p_excludeLanguageId = null,\n\tarray $p_order = array(), $p_published = false)\n\t{\n\t\t$queryStr = 'SELECT Languages.* FROM Issues LEFT JOIN Languages '\n\t\t          . 'ON Issues.IdLanguage = Languages.Id WHERE '\n\t\t          . 'Issues.IdPublication = ' . $this->getPublicationId();\n        if ($p_excludeLanguageId > 0) {\n        \t$queryStr .= ' AND Languages.Id != ' . $p_excludeLanguageId;\n        }\n        if ($p_published) {\n            $queryStr .= \" AND Issues.Published = 'Y'\";\n        }\n        $queryStr .= ' GROUP BY Languages.Id';\n        $order = Publication::ProcessLanguageListOrder($p_order);\n        $sqlOrder = array();\n        foreach ($order as $orderDesc) {\n            $sqlOrder[] = $orderDesc['field'] . ' ' . $orderDesc['dir'];\n        }\n        if (count($sqlOrder) > 0) {\n            $queryStr .= ' ORDER BY ' . implode(', ', $sqlOrder);\n        }\n\t\t$languages = DbObjectArray::Create('Language', $queryStr);\n\t\treturn $languages;\n\t}\n\n\n\t/**\n\t * Return the total number of publications.\n\t *\n\t * @return int\n\t */\n\tpublic static function GetNumPublications()\n\t{\n\t    global $g_ado_db;\n\t    $queryStr = \"SELECT COUNT(*) FROM Publications\";\n\t    return $g_ado_db->GetOne($queryStr);\n\t} // fn GetNumPublications\n\n\n\t/**\n\t * Return all publications as an array of Publication objects.\n\t *\n\t * @param string $p_name\n\t * @param int $p_aliasId\n\t * @param array $p_sqlOptions\n\t *\n\t * @return array\n\t */\n\tpublic static function GetPublications($p_name = null, $p_aliasId = null,\n\t                                       $p_sqlOptions = null)\n\t{\n        global $g_ado_db;\n\n\t    if (is_null($p_sqlOptions)) {\n\t        $p_sqlOptions = array();\n\t    }\n\t    if (!isset($p_sqlOptions[\"ORDER BY\"])) {\n\t        $p_sqlOptions[\"ORDER BY\"] = array(\"Name\" => \"ASC\");\n\t    }\n\t    $tmpPub = new Publication();\n\t    $columns = $tmpPub->getColumnNames(true);\n\t\t$queryStr = 'SELECT '.implode(',', $columns)\n\t\t            .', Aliases.Name as Alias'\n\t\t            .', URLTypes.Name as URLType'\n\t\t            .', Languages.OrigName as NativeName'\n\t\t            .' FROM Publications, Languages, Aliases, URLTypes'\n\t\t            .' WHERE Publications.IdDefaultAlias = Aliases.Id '\n\t\t            .' AND Publications.IdURLType = URLTypes.Id '\n\t\t            .' AND Publications.IdDefaultLanguage = Languages.Id ';\n\t\tif (is_string($p_name)) {\n\t\t\t$queryStr .= \" AND Publications.Name=\".$g_ado_db->escape($p_name);\n\t\t}\n\t\tif (is_numeric($p_aliasId)) {\n\t\t\t$queryStr .= \" AND Publications.IdDefaultAlias=$p_aliasId\";\n\t\t}\n        $queryStr = DatabaseObject::ProcessOptions($queryStr, $p_sqlOptions);\n\t\t$publications = DbObjectArray::Create('Publication', $queryStr);\n\t\treturn $publications;\n\t} // fn getPublications\n\n\n    /**\n     * Processes an order directive for the issue translations list.\n     *\n     * @param array $p_order\n     *      The array of order directives in the format:\n     *      array('field'=>field_name, 'dir'=>order_direction)\n     *      field_name can take one of the following values:\n     *        bynumber, byname, byenglish_name, bycode\n     *      order_direction can take one of the following values:\n     *        asc, desc\n     *\n     * @return array\n     *      The array containing processed values of the condition\n     */\n    private static function ProcessLanguageListOrder(array $p_order)\n    {\n        $order = array();\n        foreach ($p_order as $orderDesc) {\n            $field = $orderDesc['field'];\n            $direction = $orderDesc['dir'];\n            $dbField = null;\n            switch (strtolower($field)) {\n                case 'bynumber':\n                    $dbField = 'Languages.Id';\n                    break;\n                case 'byname':\n                    $dbField = 'Languages.OrigName';\n                    break;\n                case 'byenglish_name':\n                    $dbField = 'Languages.Name';\n                    break;\n                case 'bycode':\n                    $dbField = 'Languages.Code';\n                    break;\n            }\n            if (!is_null($dbField)) {\n                $direction = !empty($direction) ? $direction : 'asc';\n            }\n            $order[] = array('field'=>$dbField, 'dir'=>$direction);\n        }\n        return $order;\n    }\n\n} // class Publication\n?>\n"
  },
  {
    "path": "newscoop/classes/Request.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\n\n/**\n * @package Campsite\n */\nclass Request extends DatabaseObject {\n\tvar $m_keyColumnNames = array('session_id', 'object_id');\n\tvar $m_keyIsAutoIncrement = false;\n\tvar $m_dbTableName = 'Requests';\n\tvar $m_columnNames = array('session_id',\n                               'object_id',\n\t                           'last_stats_update');\n\n\tpublic function __construct($p_sessionId = null, $p_objectId = null)\n\t{\n        if (!is_null($p_sessionId) && !is_null($p_objectId)) {\n            $this->m_data['session_id'] = $p_sessionId;\n            $this->m_data['object_id'] = $p_objectId;\n            $this->fetch();\n        }\n\t} // constructor\n\n\n\t/**\n\t * @return string\n\t */\n\tpublic function getSessionId()\n\t{\n\t\treturn $this->m_data['session_id'];\n\t} // fn getSessionId\n\n\n    /**\n     * @return integer\n     */\n    public function getObjectId()\n    {\n        return $this->m_data['object_id'];\n    } // fn getObjectId\n\n\n    public function setLastStatsUpdate($p_time = null)\n    {\n    \tif (empty($p_time)) {\n    \t\t$p_time = date('Y-m-d G:i:s');\n    \t}\n    \treturn $this->setProperty('last_stats_update', $p_time);\n    }\n\n\n    public function getLastStatsUpdate()\n    {\n    \treturn $this->m_data['last_stats_update'];\n    }\n\n\n    public function isInStats()\n    {\n        $lastUpdateTime = strtotime($this->getLastStatsUpdate());\n        return $lastUpdateTime != 0;\n//    \t$currentTime = date('Y-m-d G');\n//    \t$lastUpdateTime = date('Y-m-d G', strtotime($this->getLastStatsUpdate()));\n//    \treturn $currentTime == $lastUpdateTime;\n    }\n} // class Request\n\n?>"
  },
  {
    "path": "newscoop/classes/RequestObject.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once(dirname(__FILE__) . '/DatabaseObject.php');\n\n/**\n * @package Campsite\n */\nclass RequestObject extends DatabaseObject {\n\tvar $m_keyColumnNames = array('object_id');\n\tvar $m_keyIsAutoIncrement = true;\n\tvar $m_dbTableName = 'RequestObjects';\n\tvar $m_columnNames = array('object_id',\n\t                           'object_type_id',\n\t                           'request_count');\n\n\tpublic function __construct($p_objectId = null)\n\t{\n        if (!is_null($p_objectId) && !empty($p_objectId)) {\n            $this->m_data['object_id'] = $p_objectId;\n            $this->fetch();\n        }\n\t} // constructor\n\n\n    /**\n     * @return integer\n     */\n    public function getObjectId()\n    {\n        return $this->m_data['object_id'];\n    } // fn getObjectId\n\n\n    /**\n     * @return integer\n     */\n    public function getObjectTypeId()\n    {\n        return $this->m_data['object_type_id'];\n    } // fn getObjectTypeId\n\n\n    public function getRequestCount()\n    {\n        if( isset($this->m_data['request_count']) )\n    \t    return $this->m_data['request_count'];\n        else\n            return 0;\n    }\n\n\n    public function updateRequestCount()\n    {\n        global $g_ado_db;\n    \t\n        if (!$this->exists()) {\n    \t\treturn false;\n    \t}\n    \t$objectRequestCount = RequestStats::GetObjectRequestCount($this->getObjectId());\n    \treturn $this->setProperty('request_count', $objectRequestCount);\n    }\n} // class RequestObject\n\n?>\n"
  },
  {
    "path": "newscoop/classes/RequestStats.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/RequestObject.php');\n\n/**\n * @package Campsite\n */\nclass RequestStats extends DatabaseObject {\n\tvar $m_keyColumnNames = array('object_id', 'date', 'hour');\n\tvar $m_keyIsAutoIncrement = false;\n\tvar $m_dbTableName = 'RequestStats';\n\tvar $m_columnNames = array('object_id',\n\t                           'date',\n\t                           'hour',\n\t                           'request_count');\n\n\tpublic function __construct($p_objectId = null, $p_date = 'now',\n\t                            $p_hour = null)\n\t{\n        if (!empty($p_objectId) && !empty($p_date)) {\n            $this->m_data['object_id'] = $p_objectId;\n            if (!strtotime($p_date)) {\n            \treturn;\n            }\n            $this->m_data['date'] = date('Y-m-d', strtotime($p_date));\n            if (empty($p_hour)) {\n            \t$date = getdate(strtotime($p_date));\n            \t$p_hour = $date['hours'];\n            }\n            $this->m_data['hour'] = $p_hour;\n            $this->fetch();\n        }\n\t} // constructor\n\n\n    /**\n     * @return integer\n     */\n    public function getObjectId()\n    {\n        return $this->m_data['object_id'];\n    } // fn getObjectId\n\n\n    /**\n     * @return integer\n     */\n    public function getDate()\n    {\n        return $this->m_data['date'];\n    } // fn getDate\n\n\n    /**\n     * @return integer\n     */\n    public function getHour()\n    {\n        return $this->m_data['hour'];\n    } // fn getHour\n\n\n    /**\n     * @return integer\n     */\n    public function getRequestCount()\n    {\n        return $this->m_data['request_count'];\n    } // fn getRequestCount\n\n\n    public static function GetObjectRequestCount($p_objectId)\n    {\n    \tglobal $g_ado_db;\n    \t$p_objectId = 0 + $p_objectId;\n    \t$sql = \"SELECT SUM(request_count) FROM RequestStats \"\n    \t     . \"WHERE object_id = $p_objectId\";\n    \treturn $g_ado_db->GetOne($sql);\n    }\n\n\n    /**\n     * @return integer\n     */\n    public function incrementRequestCount($p_count = 1)\n    {\n        global $g_ado_db;\n        $p_count = 0 + $p_count;\n        $sql = 'UPDATE ' . $this->m_dbTableName . ' '\n             . \"SET request_count = LAST_INSERT_ID(request_count + $p_count) \"\n             . \"WHERE object_id = \" . $g_ado_db->escape($this->m_data['object_id'])\n             . \"  AND date = \" . $g_ado_db->escape($this->m_data['date'])\n             . \"  AND hour = \" . $g_ado_db->escape($this->m_data['hour']);\n        $success = $g_ado_db->Execute($sql);\n        if ($success === false) {\n        \treturn false;\n        }\n\n        $this->m_data['request_count'] = $g_ado_db->GetOne(\"SELECT LAST_INSERT_ID()\");\n        // Write the object to cache\n        $this->writeCache();\n\n        $requestObject = new RequestObject($this->m_data['object_id']);\n        $requestObject->updateRequestCount();\n        return $this->m_data['request_count'];\n    }\n\n} // class RequestStats\n\n?>\n"
  },
  {
    "path": "newscoop/classes/SQLSelectClause.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Holman Romero <holman.romero@gmail.com>\n * @author Sebastian Goebel <devel@yellowsunshine.de>\n * @copyright 2008 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\n\ndefine ('SQL_COLUMNS', \"SELECT %s\");\ndefine ('SQL_FROM', \"FROM %s\");\ndefine ('SQL_WHERE', \"WHERE %s\");\ndefine ('SQL_GROUP_BY', \"GROUP BY %s\");\ndefine ('SQL_HAVING', \"HAVING %s\");\ndefine ('SQL_ORDER_BY', \"ORDER BY %s\");\ndefine ('SQL_LIMIT', \"LIMIT %d, %d\");\ndefine ('SQL_DISTINCT', 'DISTINCT(%s)');\n\n/**\n * Class SQLSelectClause\n */\nclass SQLSelectClause {\n    /**\n     * The name of the base table.\n     *\n     * @var string\n     */\n    private $m_table = null;\n\n    /**\n     * The columns to be retrieved.\n     *\n     * @var array\n     */\n    private $m_columns = null;\n\n    /**\n     *\n     * @var array\n     */\n    private $m_from = null;\n\n    /**\n     * The tables the query will request from.\n     *\n     * @var array\n     */\n    private $m_joins = null;\n\n    /**\n     * The query conditions.\n     *\n     * @var array\n     */\n    private $m_where = null;\n\n    /**\n     * Conditional where clauses (separated by 'OR' operator)\n     *\n     * @var array\n     */\n    private $m_conditionalWhere = null;\n\n    /**\n     * Fields we want to group the result by.\n     *\n     * @var array\n     */\n    private $m_group = null;\n\n    /**\n     * Having conditions\n     * @var array\n     */\n    private $m_having = null;\n\n    /**\n     * The columns list and directions to order by.\n     *\n     * @var array\n     */\n    private $m_orderBy = null;\n\n    /**\n     * The record number to start selecting.\n     *\n     * @var integer\n     */\n    private $m_limitStart = null;\n\n    /**\n     * The offset.\n     *\n     * @var integer\n     */\n    private $m_limitOffset = null;\n\n    /**\n     * The DISTINCT mode.\n     *\n     * @var string\n     */\n    private $m_distinctMode = false;\n\n    /**\n     * The column which fetched DISTINCT.\n     *\n     * @var string\n     */\n    private $m_distinctColumn = null;\n\n    /**\n     *\n     * @var integer\n     */\n    private $m_indentCount = 0;\n\n    /**\n     *\n     * @var string\n     */\n    private $m_indentWidth = 4;\n\n\n    /**\n     * Class constructor\n     */\n    public function __construct($p_indent = 0)\n    {\n        $this->m_columns = array();\n        $this->m_from = array();\n        $this->m_joins = array();\n        $this->m_where = array();\n        $this->m_orderBy = array();\n        $this->m_limitStart = 0;\n        $this->m_limitOffset = 0;\n        $this->m_indentCount = $p_indent;\n    } // fn __construct\n\n\n    /**\n     * Adds a column to be fetched by the query.\n     *\n     * @param string $p_column\n     *      The name of the column\n     *\n     * @return void\n     */\n    public function addColumn($p_column)\n    {\n        $this->m_columns[] = $p_column;\n    } // fn addColumn\n\n\n    /**\n     * Adds a table to the FROM part of the query.\n     *\n     * @param string $p_table\n     *      The name of the table\n     *\n     * @return void\n     */\n    public function addTableFrom($p_table)\n    {\n        $this->m_from[] = $p_table;\n    }\n\n\n    /**\n     * Adds a table join to the query.\n     *\n     * @param string $p_join\n     *      The full join string including the ON condition\n     *\n     * @return void\n     */\n    public function addJoin($p_join)\n    {\n        $this->m_joins[] = $p_join;\n    } // fn addJoin\n\n\n    /**\n     * Adds a WHERE condition to the query.\n     *\n     * @param string $p_condition\n     *      The comparison operation\n     *\n     * @return void\n     */\n    public function addWhere($p_condition)\n    {\n        $this->m_where[] = $p_condition;\n    } // fn addWhere\n\n\n    /**\n     * Adds a conditional WHERE condition to the query (using 'OR' operator)\n     *\n     * @param string $p_condition\n     *      The comparison operation\n     *\n     * @return void\n     */\n    public function addConditionalWhere($p_condition)\n    {\n        $this->m_conditionalWhere[] = $p_condition;\n    } // fn addConditionalWhere\n\n\n    /**\n     * Add group field\n     *\n     * @param $p_field\n     */\n    public function addGroupField($p_field)\n    {\n        $this->m_group[] = $p_field;\n    } // fn addGroupField\n\n\n    /**\n     * Add HAVING condition\n     *\n     * @param $p_condition\n     */\n    public function addHaving($p_condition)\n    {\n    \t$this->m_having[] = $p_condition;\n    } // fn addHaving\n\n\n    /**\n     * Adds an ORDER BY condition to the query.\n     *\n     * @param string $p_order\n     *      The column and the direction of the order condition\n     *\n     * @return void\n     */\n    public function addOrderBy($p_order)\n    {\n        $this->m_orderBy[] = $p_order;\n    } // fn addOrderBy\n\n\n    /**\n     * Sets the name of the main table in the query.\n     *\n     * @param string $p_table\n     *      The name of the table\n     *\n     * @return void\n     */\n    public function setTable($p_table)\n    {\n        $this->m_table = $p_table;\n    } // fn setTable\n\n\n    /**\n     * Sets the LIMIT of the query.\n     *\n     * @param integer $p_start\n     *      The number where the query will start to fetch data\n     * @param integer $p_offset\n     *      The number of rows to be fetched\n     *\n     * @return void\n     */\n    public function setLimit($p_start = 0, $p_offset = 0)\n    {\n        $this->m_limitStart = $p_start;\n        $this->m_limitOffset = $p_offset;\n    } // fn setLimit\n\n\n    /**\n     * Sets all or specific column(s) to be fetched DISTINCT.\n     *\n     * @param string $p_column\n     *      The column which have to fetched distinct\n     *\n     * @return void\n     */\n    public function setDistinct($p_column = null)\n    {\n        $this->m_distinctMode = true;\n        $this->m_distinctColumn = $p_column;\n    } // fn setDistinct\n\n\n    /**\n     * Builds the SQL query from the object attributes.\n     *\n     * @return string $sql\n     *      The full SQL query\n     */\n    public function buildQuery()\n    {\n        $sql = '';\n        $columns = $this->buildColumns();\n        $from = $this->buildFrom();\n        $sql = sprintf(SQL_COLUMNS, $columns);\n        $sql .= \"\\n\" . $this->indent() . sprintf(SQL_FROM, $from);\n\n        $where = $this->buildWhere();\n        if (strlen($where)) {\n            $sql .= \"\\n\" . $this->indent() . sprintf(SQL_WHERE, $where);\n        }\n\n        $groupBy = $this->buildGroupBy();\n        if (!empty($groupBy)) {\n            $sql .= \"\\n\" . $this->indent() . sprintf(SQL_GROUP_BY, $groupBy);\n        }\n\n        $having = $this->buildHaving();\n        if (!empty($having)) {\n            $sql .= \"\\n\" . $this->indent() . sprintf(SQL_HAVING, $having);\n        }\n\n        if (count($this->m_orderBy) > 0) {\n            $orderBy = $this->buildOrderBy();\n            $sql .= \"\\n\" . $this->indent() . sprintf(SQL_ORDER_BY, $orderBy);\n        }\n\n        if (!empty($this->m_limitOffset)) {\n            $sql .= \"\\n\" . $this->indent() . sprintf(SQL_LIMIT, $this->m_limitStart, $this->m_limitOffset);\n        }\n\n        return $sql;\n    } // fn buildQuery\n\n\n    /**\n     * Returns whether there is FROM tables other than the main query table.\n     *\n     * @return boolean\n     *      true on success, false on failure\n     */\n    private function hasFrom()\n    {\n        return (count($this->m_from) > 0);\n    } // fn hasFrom\n\n\n    /**\n     * Returns whether there is table joins.\n     *\n     * @return boolean\n     *    true on success, false on failure\n     */\n    private function hasJoins()\n    {\n        return (count($this->m_joins) > 0);\n    } // fn hasJoins\n\n\n    /**\n     * Returns the indentation string\n     *\n     * @return string\n     */\n    private function indent($p_inner = 0)\n    {\n    \treturn str_pad('', ($this->m_indentCount + $p_inner) * $this->m_indentWidth);\n    }\n\n\n    /**\n     * Builds the list of columns to be retrieved by the query.\n     *\n     * @return string $columns\n     *      The list of columns\n     */\n    private function buildColumns()\n    {\n        $columns = '';\n\n        if ($this->hasFrom() || $this->hasJoins()) {\n            if (sizeof($this->m_columns) == 0) {\n                $columns = $this->m_table.'*';\n            }\n        } else {\n            if (sizeof($this->m_columns) == 0) {\n                $columns = '*';\n            }\n        }\n\n        if (!empty($columns) && $this->m_distinctMode) {\n            $columns = sprintf(SQL_DISTINCT, $columns);\n        }\n\n        if (empty($columns)) {\n            foreach ($this->m_columns as $column) {\n                if ($this->m_distinctMode === true && $this->m_distinctColumn === $column) {\n                    $columns .= sprintf(SQL_DISTINCT, $column).', ';\n                } else {\n                    $columns .=  $column.', ';\n                }\n            }\n            $columns = substr($columns, 0, -2);\n        }\n\n        return $columns;\n    } // fn buildColumns\n\n\n    /**\n     * Builds the FORM part of the query based on the main table\n     * and whether there is some table to join with.\n     *\n     * @return string\n     *    $from The string containing the FORM part of the query\n     */\n    private function buildFrom()\n    {\n        $from = $this->m_table;\n\n        if ($this->hasFrom()) {\n            $from .= \",\\n\" . $this->indent(1);\n            $from .= implode (\",\\n\" . $this->indent(1), $this->m_from);\n        } elseif ($this->hasJoins()) {\n            foreach ($this->m_joins as $join) {\n                $from .= \"\\n\".$this->indent(1).$join;\n            }\n        }\n\n        return $from;\n    } // fn buildFrom\n\n\n    /**\n     * Builds the list of WHERE conditions.\n     *\n     * @return string\n     *      The string of conditions\n     */\n    private function buildWhere()\n    {\n        $conditionalWhere = null;\n        if (is_array($this->m_conditionalWhere)) {\n            $conditionalWhere = implode(\"\\n\" . $this->indent(2) . \"OR \", $this->m_conditionalWhere);\n        }\n        $where = null;\n        if (is_array($this->m_where)) {\n            $where = implode(\"\\n\" . $this->indent(1) . \"AND \", $this->m_where);\n        }\n        if (empty($conditionalWhere) && empty($where)) {\n            return null;\n        }\n        if (empty($where)) {\n            return $conditionalWhere;\n        }\n        if (!empty($conditionalWhere)) {\n            $where .= \"\\n\" . $this->indent(1) . \"AND (\" . $conditionalWhere . \")\";\n        }\n        return $where;\n    } // fn buildWhere\n\n\n    /**\n     * Builds the GROUP BY clause.\n     *\n     * @return string\n     */\n    private function buildGroupBy()\n    {\n        if (!is_array($this->m_group) || count($this->m_group) == 0) {\n            return null;\n        }\n        return implode(', ', $this->m_group);\n    } // fn buildGroupBy\n\n\n    /**\n     * Builds the HAVING clause.\n     *\n     * @return string\n     */\n    private function buildHaving()\n    {\n    \tif (!is_array($this->m_having) || count($this->m_having) == 0) {\n    \t\treturn null;\n    \t}\n    \treturn implode(' AND ', $this->m_having);\n    } // fn buildHaving\n\n\n    /**\n     * Builds the ORDER BY conditions.\n     *\n     * @return string\n     *      The string of ORDER BY conditions\n     */\n    private function buildOrderBy()\n    {\n        return implode (\",\\n    \", $this->m_orderBy);\n    } // fn buildOrderBy\n\n} // class SQLSelectClause\n\n?>\n"
  },
  {
    "path": "newscoop/classes/SaaS.php",
    "content": "<?php\n\n\n/**\n * @package Campsite\n */\nclass SaaS\n{\n    // Hold an instance of the class\n    private static $instance;\n\n    private static $saasConfig = array();\n\n    // A private constructor; prevents direct creation of object\n    private function __construct()\n    {\n        if ( file_exists( $GLOBALS['g_campsiteDir'] . '/conf/saas_config.php' )) {\n            require_once($GLOBALS['g_campsiteDir'] . '/conf/saas_config.php');\n        } else {\n        \tself::$saasConfig = array();\n        }\n\n    }\n\n    // The singleton method\n    public static function singleton()\n    {\n        if (!isset(self::$instance)) {\n            $c = __CLASS__;\n            self::$instance = new $c;\n        }\n\n        return self::$instance;\n    }\n\n    /**\n     * Return true if the user has the permission specified.\n     *\n     * @param string $p_permissionString\n     *\n     * @return boolean\n     */\n    public function hasPermission($p_permissionString)\n    {\n        if (array_key_exists('permissions', self::$saasConfig)) {\n            $permissions = self::$saasConfig['permissions'];\n        } else {\n            $permissions = array();\n        }\n\n        if (!in_array($p_permissionString, $permissions)) {\n            return TRUE;\n        } else {\n            return FALSE;\n        }\n    }\n\n    /**\n     * Return TRUE if the resource->action is granted by Saas\n     *\n     * @param string $p_resourceName\n     *\n     * @param string $p_privilegeName\n     *\n     * @return boolean\n     */\n    public function hasPrivilege($p_resourceName = null, $p_privilegeName)\n    {\n        //for the plugins the action is something like manage.php and we only need the 'manage' part\n        if (count($p_privilegeNameArray = explode('.', $p_privilegeName))) {\n            $p_privilegeName = $p_privilegeNameArray[0];\n        }\n\n        $hasPrivilege = TRUE;\n        if (array_key_exists('privileges', self::$saasConfig)) {\n            $privileges = self::$saasConfig['privileges'];\n        } else {\n            $privileges = array();\n        }\n\n        foreach ($privileges as $privilege) {\n            if ($privilege['resource'] == $p_resourceName) {\n                if ( ($privilege['privilege'] == $p_privilegeName) || ($privilege['privilege'] == '*') ) {\n                    $hasPrivilege = FALSE;\n                    continue;\n                }\n            }\n        }\n        return $hasPrivilege;\n    }\n\n    /**\n     * Return array of allowed resource -> action combinations\n     *\n     * @param string $p_resourceName\n     *\n     * @param string $p_privilegeName\n     *\n     * @return array\n     */\n    public function filterPrivileges($p_resourceName = null, $p_privilegeName = null)\n    {\n        $returnArray = array();\n        if (array_key_exists('privileges', $this->saasConfig)) {\n            $privileges = self::$saasConfig['privileges'];\n        } else {\n            $privileges = array();\n        }\n\n        if (is_array($p_privilegeName)) {\n            foreach ($p_privilegeName as $p_name) {\n                $found = FALSE;\n                foreach ($privileges as $privilege) {\n                    if ($privilege['resource'] == $p_resourceName) {\n                        if ( ($privilege['privilege'] == $p_name) || ($privilege['privilege'] == '*') ) {\n                            $found = TRUE;\n                            continue;\n                        }\n                    }\n                }\n                if (!$found) {\n                    $returnArray[] = $p_name;\n                }\n            }\n        }\n        return $returnArray;\n    }\n\n    // Prevent users to clone the instance\n    public function __clone()\n    {\n        trigger_error('Clone is not allowed.', E_USER_ERROR);\n    }\n\n}\n"
  },
  {
    "path": "newscoop/classes/Section.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbObjectArray.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/SQLSelectClause.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/CampCacheList.php');\n\nuse Newscoop\\Service\\Resource\\ResourceId;\nuse Newscoop\\Service\\IOutputSettingSectionService;\nuse Newscoop\\Service\\ISectionService;\n\n/**\n * @package Campsite\n */\nclass Section extends DatabaseObject\n{\n    public $m_dbTableName = 'Sections';\n    public $m_keyColumnNames = array(\n        'IdPublication',\n        'NrIssue',\n        'IdLanguage',\n        'Number');\n    public $m_columnNames = array(\n        'id',\n        'IdPublication',\n        'NrIssue',\n        'IdLanguage',\n        'Number',\n        'Name',\n        'ShortName',\n        'Description',\n        'SectionTplId',\n        'ArticleTplId');\n    public $m_languageName = null;\n\n    /**\n     * A section is a part of an issue.\n     * @param int $p_publicationId\n     * @param int $p_issueNumber\n     * @param int $p_languageId\n     * @param int $p_sectionNumber\n     */\n    public function Section($p_publicationId = null, $p_issueNumber = null,\n                            $p_languageId = null, $p_sectionNumber = null)\n    {\n        parent::DatabaseObject($this->m_columnNames);\n        $this->m_data['IdPublication'] = $p_publicationId;\n        $this->m_data['NrIssue'] = $p_issueNumber;\n        $this->m_data['IdLanguage'] = $p_languageId;\n        $this->m_data['Number'] = $p_sectionNumber;\n        if ($this->keyValuesExist()) {\n            $this->fetch();\n        }\n    } // fn Section\n\n    /**\n     * Create a new Section.\n     * @param string $p_name\n     * @param string $p_shortName\n     */\n    public function create($p_name = null, $p_shortName = null, $p_columns = null)\n    {\n        if (!is_array($p_columns)) {\n            $p_columns = array();\n        }\n        $p_columns['Name'] = $p_name;\n        $p_columns['ShortName'] = $p_shortName;\n        $success = parent::create($p_columns);\n        if ($success) {\n            global $g_ado_db;\n            $sql = \"UPDATE `Sections` s\".\n            \" JOIN `Issues` AS i ON i.`IdPublication` = s.`IdPublication` AND i.`Number` = s.`NrIssue` AND i.`IdLanguage` = s.`IdLanguage`\".\n            \" SET `fk_issue_id` = i.`id` WHERE \".\n            \" s.`IdPublication` = \".$this->m_data['IdPublication'].\n            \" AND s.`NrIssue` = \".$this->m_data['NrIssue'].\n            \" AND s.`Number` = \".$this->m_data['Number'].\n            \" AND s.`IdLanguage` = \".$this->m_data['IdLanguage'];\n            $g_ado_db->Execute($sql);\n        }\n\n        return $success;\n    } // fn create\n\n    /**\n     * Copy the section to the given issue.  The issue can be the same as\n     * the current issue.  All articles will be copied to the new section.\n     *\n     * @param  int     $p_destPublicationId\n     *                                        The destination publication ID.\n     * @param  int     $p_destIssueNumber\n     *                                        The destination issue ID.\n     * @param  int     $p_destIssueLanguageId\n     *                                        (optional) The destination issue language ID.  If not given,\n     *                                        it will use the language ID of this section.\n     * @param  int     $p_destSectionNumber\n     *                                        (optional) The destination section ID.  If not given, a new\n     *                                        section will be created.\n     * @param  boolean $p_copyArticles\n     *                                        (optional) If set to true, all articles will be copied to the\n     *                                        destination section.\n     * @return Section\n     *                                       The new Section object.\n     */\n    public function copy($p_destPublicationId, $p_destIssueNumber,\n                         $p_destIssueLanguageId = null,$p_destSectionNumber = null,\n                         $p_copyArticles = true)\n    {\n        if (is_null($p_destIssueLanguageId)) {\n            $p_destIssueLanguageId = $this->m_data['IdLanguage'];\n        }\n        if (is_null($p_destSectionNumber)) {\n            $p_destSectionNumber = $this->m_data['Number'];\n        }\n        $dstSectionObj = new Section($p_destPublicationId,\n                    $p_destIssueNumber,\n                    $p_destIssueLanguageId,\n                    $p_destSectionNumber);\n        // If source issue and destination issue are the same\n        if ( ($this->m_data['IdPublication'] == $p_destPublicationId)\n            && ($this->m_data['NrIssue'] == $p_destIssueNumber)\n            && ($this->m_data['IdLanguage'] == $p_destIssueLanguageId) ) {\n            $shortName = $p_destSectionNumber;\n            $sectionName = $this->getName() . \" (duplicate)\";\n        } else {\n            $shortName = $this->getUrlName();\n            $sectionName = $this->getName();\n        }\n        $dstSectionCols = array();\n        $dstSectionCols['SectionTplId'] = $this->m_data['SectionTplId'];\n        $dstSectionCols['ArticleTplId'] = $this->m_data['ArticleTplId'];\n\n        // Create the section if it doesnt exist yet.\n        if (!$dstSectionObj->exists()) {\n            $dstSectionObj->create($sectionName, $shortName, $dstSectionCols);\n        }\n\n        // Copy all the articles.\n        if ($p_copyArticles) {\n            $srcSectionArticles = Article::GetArticles($this->m_data['IdPublication'],\n                            $this->m_data['NrIssue'],\n                            $this->m_data['Number']);\n            $copiedArticles = array();\n            foreach ($srcSectionArticles as $articleObj) {\n                if (!in_array($articleObj->getArticleNumber(), $copiedArticles)) {\n                    $tmpCopiedArticles = $articleObj->copy($p_destPublicationId,\n                    $p_destIssueNumber, $p_destSectionNumber, null, true);\n                    $copiedArticles[] = $articleObj->getArticleNumber();\n                }\n            }\n        }\n\n        return $dstSectionObj;\n    } // fn copy\n\n    /**\n     * Delete the section, and optionally the articles.  If you are\n     * deleting the articles, the default is to only delete the articles\n     * with the same language as this section.  If you want to delete\n     * all article translations, set the second parameter to TRUE.\n     *\n     * @param  boolean $p_deleteArticles\n     * @param  boolean $p_deleteArticleTranslations\n     * @return int\n     *                                             Return the number of articles deleted.\n     */\n    public function delete($p_deleteArticles = false, $p_deleteArticleTranslations = false)\n    {\n        $numArticlesDeleted = 0;\n        if ($p_deleteArticles) {\n            $languageId = null;\n            if (!$p_deleteArticleTranslations) {\n                $languageId = $this->m_data['IdLanguage'];\n            }\n            $articles = Article::GetArticles($this->m_data['IdPublication'],\n                        $this->m_data['NrIssue'],\n                        $this->m_data['Number'],\n                        $languageId);\n            $numArticlesDeleted = count($articles);\n            foreach ($articles as $deleteMe) {\n                $deleteMe->delete();\n            }\n        }\n        $tmpData = $this->m_data;\n        $success = parent::delete();\n        if ($success) {\n            $outputSettingSections = $this->getOutputSettingSectionService()->findBySection($tmpData['id']);\n            foreach ($outputSettingSections as $outputSet) {\n                $this->getOutputSettingSectionService()->delete($outputSet);\n            }\n        }\n\n        return $numArticlesDeleted;\n    } // fn delete\n\n    /* --------------------------------------------------------------- */\n\n    /** @var Newscoop\\Services\\Resource\\ResourceId */\n    private $resourceId = null;\n    /** @var Newscoop\\Service\\IOutputSettingSectionService */\n    private $outputSettingSectionService = null;\n    /** @var Newscoop\\Service\\ISectionService */\n    private $sectionService = NULL;\n\n    /**\n     * Provides the controller resource id.\n     *\n     * @return Newscoop\\Services\\Resource\\ResourceId\n     *                                               The controller resource id.\n     */\n    protected function getResourceId()\n    {\n        if ($this->resourceId === NULL) {\n            $this->resourceId = new ResourceId(__CLASS__);\n        }\n\n        return $this->resourceId;\n    }\n\n    /**\n     * Provides the Output setting section service.\n     *\n     * @return Newscoop\\Service\\IOutputSettingSectionService\n     *                                                       The output setting section service to be used by this controller.\n     */\n    protected function getOutputSettingSectionService()\n    {\n        if ($this->outputSettingSectionService === NULL) {\n            $this->outputSettingSectionService = $this->getResourceId()->getService(IOutputSettingSectionService::NAME);\n        }\n\n        return $this->outputSettingSectionService;\n    }\n\n    /**\n     * Provides the Section service.\n     *\n     * @return Newscoop\\Service\\ISectionService\n     *                                          The section service to be used by this controller.\n     */\n    protected function getSectionService()\n    {\n        if ($this->sectionService === NULL) {\n            $this->sectionService = $this->getResourceId()->getService(ISectionService::NAME);\n        }\n\n        return $this->sectionService;\n    }\n\n    /**\n     * Return the section ID.\n     * @return int\n     */\n    public function getSectionId()\n    {\n        return $this->m_data['id'];\n    } // fn getId\n\n    /**\n     * @return int\n     */\n    public function getPublicationId()\n    {\n        return $this->m_data['IdPublication'];\n    } // fn getPublicationId\n\n    /**\n     * @return int\n     */\n    public function getIssueNumber()\n    {\n        return $this->m_data['NrIssue'];\n    } // fn getIssueNumber\n\n    /**\n     * @return int\n     */\n    public function getLanguageId()\n    {\n        return $this->m_data['IdLanguage'];\n    } // fn getLanguageId\n\n    /**\n     * A simple way to get the name of the language the article is\n     * written in.  The value is cached in case there are multiple\n     * calls to this function.\n     *\n     * @return string\n     */\n    public function getLanguageName()\n    {\n        if (is_null($this->m_languageName)) {\n            $language = new Language($this->m_data['IdLanguage']);\n            $this->m_languageName = $language->getNativeName();\n        }\n\n        return $this->m_languageName;\n    } // fn getLanguageName\n\n    /**\n     * @return int\n     */\n    public function getSectionNumber()\n    {\n        return $this->m_data['Number'];\n    } // fn getSectionNumber\n\n    /**\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->m_data['Name'];\n    } // fn getName\n\n    /**\n     * @param  string  $p_value\n     * @return boolean\n     */\n    public function setName($p_value)\n    {\n        return $this->setProperty('Name', $p_value);\n    } // fn setName\n\n    /**\n     * @return string\n     */\n    public function getDescription()\n    {\n        return $this->m_data['Description'];\n    } // fn getDescription\n\n    /**\n     * @param  string  $p_value\n     * @return boolean\n     */\n    public function setDescription($p_value)\n    {\n        return $this->setProperty('Description', $p_value);\n    } // fn setDescription\n\n    /**\n     * @return string\n     */\n    public function getUrlName()\n    {\n        return $this->m_data['ShortName'];\n    } // fn getUrlName\n\n    /**\n     * @param string $p_name\n     */\n    public function setUrlName($p_name)\n    {\n        return $this->setProperty('ShortName', $p_name);\n    } // fn setUrlName\n\n    /**\n     * @deprecated\n     * @return int\n     */\n    public function getArticleTemplateId()\n    {\n        return $this->m_data['ArticleTplId'];\n    } // fn getArticleTemplateId\n\n    /**\n     * @param  int     $p_value\n     * @return boolean\n     */\n    public function setArticleTemplateId($p_value)\n    {\n        return $this->setProperty('ArticleTplId', $p_value);\n    } // fn setArticleTemplateId\n\n    /**\n     * @return int\n     */\n    public function getSectionTemplateId()\n    {\n        return $this->m_data['SectionTplId'];\n    } // fn getSectionTemplateId\n\n    /**\n     * @param  int     $p_value\n     * @return boolean\n     */\n    public function setSectionTemplateId($p_value)\n    {\n        return $this->setProperty('SectionTplId', $p_value);\n    } // fn setSectionTemplateId\n\n    /**\n     * Return an array of sections in the given issue.\n     * @param int $p_publicationId\n     *                             (Optional) Only return sections in this publication.\n     *\n     * @param int $p_issueNumber\n     *                           (Optional) Only return sections in this issue.\n     *\n     * @param int $p_languageId\n     *                          (Optional) Only return sections that have this language ID.\n     *\n     * @param string $p_urlName\n     *                          (Optional) Only return sections that have this URL name.\n     *\n     * @param string $p_sectionName\n     *                              (Optional) Only return sections that have this name.\n     *\n     * @param array $p_sqlOptions\n     *                            (Optional) Additional options.  See DatabaseObject::ProcessOptions().\n     *\n     * @return array\n     */\n    public static function GetSections($p_publicationId = null, $p_issueNumber = null,\n                                       $p_languageId = null, $p_urlName = null,\n                                       $p_sectionName = null, $p_sqlOptions = null, $p_skipCache = false)\n    {\n        if (!$p_skipCache && CampCache::IsEnabled()) {\n            $paramsArray['publication_id'] = (is_null($p_publicationId)) ? 'null' : $p_publicationId;\n            $paramsArray['issue_number'] = (is_null($p_issueNumber)) ? 'null' : $p_issueNumber;\n            $paramsArray['language_id'] = (is_null($p_languageId)) ? 'null' : $p_languageId;\n            $paramsArray['url_name'] = (is_null($p_urlName)) ? 'null' : $p_urlName;\n            $paramsArray['section_name'] = (is_null($p_sectionName)) ? 'null' : $p_sectionName;\n            $paramsArray['sql_options'] = (is_null($p_sqlOptions)) ? 'null' : $p_sqlOptions;\n            $cacheListObj = new CampCacheList($paramsArray, __METHOD__);\n            $sectionsList = $cacheListObj->fetchFromCache();\n            if ($sectionsList !== false && is_array($sectionsList)) {\n                return $sectionsList;\n            }\n        }\n\n        $constraints = array();\n        if (!is_null($p_publicationId)) {\n            $constraints[] = array(\"IdPublication\", $p_publicationId);\n        }\n        if (!is_null($p_issueNumber)) {\n            $constraints[] = array(\"NrIssue\", $p_issueNumber);\n        }\n        if (!is_null($p_languageId)) {\n            $constraints[] = array(\"IdLanguage\", $p_languageId);\n        }\n        if (!is_null($p_urlName)) {\n            $constraints[] = array(\"ShortName\", $p_urlName);\n        }\n        if (!is_null($p_sectionName)) {\n            $constraints[] = array(\"Name\", $p_sectionName);\n        }\n        $sectionsList = DatabaseObject::Search('Section', $constraints, $p_sqlOptions);\n        if (!$p_skipCache && CampCache::IsEnabled()) {\n            $cacheListObj->storeInCache($sectionsList);\n        }\n\n        return $sectionsList;\n    } // fn GetSections\n\n    /**\n     * Return an array of arrays indexed by \"id\" and \"name\".\n     * @return array\n     */\n    public static function GetUniqueSections($p_publicationId, $p_byLanguage = false)\n    {\n        global $g_ado_db;\n        $queryStr = \"SELECT Number as id, s.Name as name, s.IdLanguage, l.Name as LangName \"\n                    .\" FROM Sections AS s LEFT JOIN Languages AS l ON s.IdLanguage = l.Id\"\n                    .\" WHERE s.IdPublication = $p_publicationId\"\n                    .\" GROUP BY s.Number\";\n        if ($p_byLanguage) {\n            $queryStr .= \", s.IdLanguage\";\n        }\n\n        return $g_ado_db->GetAll($queryStr);\n    } // fn GetSectionNames\n\n    /**\n     * Return the total number of sections according to the given values.\n     * @param  int $p_publicationId\n     * @param  int $p_issueNumber\n     * @param  int $p_languageId\n     * @return int\n     */\n    public static function GetTotalSections($p_publicationId = null,\n                                            $p_issueNumber = null,\n                                            $p_languageId = null)\n    {\n        global $g_ado_db;\n        $queryStr = 'SELECT COUNT(*) FROM Sections';\n        $whereClause = array();\n        if (!is_null($p_publicationId)) {\n            $whereClause[] = \"IdPublication=$p_publicationId\";\n        }\n        if (!is_null($p_issueNumber)) {\n            $whereClause[] = \"NrIssue=$p_issueNumber\";\n        }\n        if (!is_null($p_languageId)) {\n            $whereClause[] = \"IdLanguage=$p_languageId\";\n        }\n        if (count($whereClause) > 0) {\n            $queryStr .= ' WHERE '.implode(' AND ', $whereClause);\n        }\n        $total = $g_ado_db->GetOne($queryStr);\n\n        return $total;\n    } // fn GetTotalSections\n\n    public static function GetNumUniqueSections($p_publicationId, $p_byLanguage = true)\n    {\n        global $g_ado_db;\n        $queryStr = \"SELECT * FROM Sections WHERE IdPublication = $p_publicationId\"\n                .\" GROUP BY Number\";\n        if ($p_byLanguage) {\n            $queryStr .= ', IdLanguage';\n        }\n        $result = $g_ado_db->Execute($queryStr);\n\n        return $result->RowCount();\n    }\n\n    /**\n     * Return a section number that is not in use.\n     * @param  int $p_publicationId\n     * @param  int $p_issueNumber\n     * @param  int $p_languageId\n     * @return int\n     */\n    public static function GetUnusedSectionNumber($p_publicationId, $p_issueNumber)\n    {\n        global $g_ado_db;\n        $queryStr = \"SELECT MAX(Number) + 1 FROM Sections \"\n                    .\" WHERE IdPublication=$p_publicationId \"\n                    .\" AND NrIssue=$p_issueNumber\";\n        $number = 0 + $g_ado_db->GetOne($queryStr);\n        if ($number <= 0) {\n            $number++;\n        }\n\n        return $number;\n    } // fn GetUnusedSectionNumber\n\n    /**\n     * Returns a sections list based on the given parameters.\n     *\n     * @param array   $p_parameters\n     *                              An array of ComparisonOperation objects\n     * @param string  $p_order\n     *                              An array of columns and directions to order by\n     * @param integer $p_start\n     *                              The record number to start the list\n     * @param integer $p_limit\n     *                              The offset. How many records from $p_start will be retrieved.\n     *\n     * @return array $sectionsList\n     *               An array of Section objects\n     */\n    public static function GetList(array $p_parameters, $p_order = null,\n                                   $p_start = 0, $p_limit = 0, &$p_count, $p_skipCache = false)\n    {\n        global $g_ado_db;\n\n        if (!$p_skipCache && CampCache::IsEnabled()) {\n            $paramsArray['parameters'] = serialize($p_parameters);\n            $paramsArray['order'] = (is_null($p_order)) ? 'null' : $p_order;\n            $paramsArray['start'] = $p_start;\n            $paramsArray['limit'] = $p_limit;\n            $cacheListObj = new CampCacheList($paramsArray, __METHOD__);\n            $sectionsList = $cacheListObj->fetchFromCache();\n            if ($sectionsList !== false && is_array($sectionsList)) {\n                return $sectionsList;\n            }\n        }\n\n        $hasPublicationId = false;\n        $selectClauseObj = new SQLSelectClause();\n        $countClauseObj = new SQLSelectClause();\n\n        // sets the where conditions\n        foreach ($p_parameters as $param) {\n            $comparisonOperation = self::ProcessListParameters($param);\n            if (empty($comparisonOperation)) {\n                break;\n            }\n            if (strpos($comparisonOperation['left'], 'IdPublication') !== false) {\n                $hasPublicationId = true;\n            }\n\n            $whereCondition = $g_ado_db->escapeOperation($comparisonOperation);\n            $selectClauseObj->addWhere($whereCondition);\n            $countClauseObj->addWhere($whereCondition);\n        }\n\n        // validates whether publication identifier was given\n        if ($hasPublicationId == false) {\n            CampTemplate::singleton()->trigger_error('missed parameter Publication '\n                .'Identifier in statement list_sections');\n\n            return;\n        }\n\n        // sets the columns to be fetched\n        $tmpSection = new Section();\n        $columnNames = $tmpSection->getColumnNames(true);\n        foreach ($columnNames as $columnName) {\n            $selectClauseObj->addColumn($columnName);\n        }\n        $countClauseObj->addColumn('COUNT(*)');\n\n        // sets the main table for the query\n        $selectClauseObj->setTable($tmpSection->getDbTableName());\n        $countClauseObj->setTable($tmpSection->getDbTableName());\n        unset($tmpSection);\n\n        if (!is_array($p_order)) {\n            $p_order = array();\n        }\n\n        // sets the order condition if any\n        foreach ($p_order as $orderColumn => $orderDirection) {\n            $selectClauseObj->addOrderBy($orderColumn . ' ' . $orderDirection);\n        }\n\n        $selectClauseObj->addGroupField('Number');\n        $selectClauseObj->addGroupField('IdLanguage');\n\n        // sets the limit\n        $selectClauseObj->setLimit($p_start, $p_limit);\n\n        // builds the query and executes it\n        $selectQuery = $selectClauseObj->buildQuery();\n        $countQuery = $countClauseObj->buildQuery();\n        $sections = $g_ado_db->GetAll($selectQuery);\n        if (is_array($sections)) {\n            $p_count = $g_ado_db->GetOne($countQuery);\n\n            // builds the array of section objects\n            $sectionsList = array();\n            foreach ($sections as $section) {\n                $secObj = new Section($section['IdPublication'],\n                $section['NrIssue'],\n                $section['IdLanguage'],\n                $section['Number']);\n                if ($secObj->exists()) {\n                    $sectionsList[] = $secObj;\n                }\n            }\n        } else {\n            $sectionsList = array();\n            $p_count = 0;\n        }\n        if (!$p_skipCache && CampCache::IsEnabled()) {\n            $cacheListObj->storeInCache($sectionsList);\n        }\n\n        return $sectionsList;\n    } // fn GetList\n\n    /**\n     * Processes a paremeter (condition) coming from template tags.\n     *\n     * @param array $p_param\n     *                       The array of parameters\n     *\n     * @return array $comparisonOperation\n     *               The array containing processed values of the condition\n     */\n    private static function ProcessListParameters($p_param)\n    {\n        $comparisonOperation = array();\n\n        switch (strtolower($p_param->getLeftOperand())) {\n        case 'name':\n            $comparisonOperation['left'] = 'Name';\n            break;\n        case 'number':\n            $comparisonOperation['left'] = 'Number';\n            break;\n        case 'idpublication':\n            $comparisonOperation['left'] = 'IdPublication';\n            break;\n        case 'nrissue':\n            $comparisonOperation['left'] = 'NrIssue';\n            break;\n        case 'idlanguage':\n            $comparisonOperation['left'] = 'IdLanguage';\n            break;\n        }\n\n        if (isset($comparisonOperation['left'])) {\n            $operatorObj = $p_param->getOperator();\n            $comparisonOperation['symbol'] = $operatorObj->getSymbol('sql');\n            $comparisonOperation['right'] = $p_param->getRightOperand();\n        }\n\n        return $comparisonOperation;\n    } // fn ProcessListParameters\n\n    public static function BuildSectionIdsQuery(array $p_shortNames, int $p_publication = NULL)\n    {\n        $sections_query = false;\n        $section_names = array();\n\n        foreach ($p_shortNames as $one_name) {\n            $one_name = str_replace('\"', '\"\"', trim($one_name));\n            if (0 < strlen($one_name)) {\n                $section_names[] = $one_name;\n            }\n        }\n\n        $pub_cons = \"\";\n        if ($p_publication && (is_numeric($p_publication))) {$pub_cons .= \" AND IdPublication = $p_publication\";}\n\n        if (0 < count($section_names)) {\n            $names_str = '\"' . implode('\", \"', $section_names) . '\"';\n            $sections_query = \"SELECT Number AS id FROM Sections WHERE trim(ShortName) IN ($names_str)\" . $pub_cons;\n\n        }\n\n        return $sections_query;\n    } // fn BuildSectionIdsQuery\n\n} // class Section\n"
  },
  {
    "path": "newscoop/classes/SecurityToken.php",
    "content": "<?php\n\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/classes/CampSession.php');\n\n\nclass SecurityToken\n{\n\t/**\n\t * Campsite security token used in forms and URLs\n\t */\n\tconst SECURITY_TOKEN = 'security_token';\n\n\n\tpublic static function GetToken()\n\t{\n\t\treturn CampSession::singleton()->getToken();\n\t}\n\n\n\tpublic static function URLParameter()\n\t{\n\t\treturn urlencode(self::SECURITY_TOKEN) . '=' . urlencode(CampSession::singleton()->getToken());\n\t}\n\n    /**\n     * Formats the javascript object\n     *\n     * @return string\n     */\n\tpublic static function JsParameter()\n\t{\n        return '\"'.self::SECURITY_TOKEN . '\": \"'. CampSession::singleton()->getToken() . '\"';\n\t}\n\n    /**\n     * Get the security key\n     *\n     * @return string\n     */\n\tpublic static function KeyParameter()\n\t{\n\t    return self::SECURITY_TOKEN;\n\t}\n\n\t/**\n\t * Get the security value\n\t *\n\t * @return string\n\t */\n\tpublic static function ValueParameter()\n    {\n        return CampSession::singleton()->getToken();\n    }\n\n\tpublic static function FormParameter()\n\t{\n\t\treturn '<input type=\"hidden\" name=\"' . self::SECURITY_TOKEN . '\" '\n\t\t. 'value=\"' . htmlspecialchars(CampSession::singleton()->getToken()) . '\" />';\n\t}\n\n\tpublic static function isValid()\n\t{\n\t\treturn CampSession::singleton()->getToken()\n\t\t=== Input::Get(self::SECURITY_TOKEN, 'string', null, true);\n\t}\n}\n\n?>"
  },
  {
    "path": "newscoop/classes/ServerRequest.php",
    "content": "<?php\n\n/**\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n *\n * @link http://www.sourcefabric.org\n */\nrequire_once dirname(__FILE__).'/User.php';\nrequire_once dirname(__FILE__).'/SecurityToken.php';\n\n/**\n * Server request class.\n */\nclass ServerRequest\n{\n    const ERROR_NOT_CALLABLE = 1;\n    // note that the value of the ERROR_SECURITY_TOKEN constant is used at the /js/admin.js file too!\n    const ERROR_SECURITY_TOKEN = 2;\n    const ERROR_PERMISSION = 3;\n\n    /** @var callback */\n    private $callback = null;\n\n    /** @var string */\n    private $callable_name = '';\n\n    /** @var array */\n    private $args = array();\n\n    /** @var array */\n    private $rules = array();\n\n    /**\n     * @param callback $callback\n     * @param array    $args\n     */\n    public function __construct($callback, $args = array())\n    {\n        $this->callback = $callback;\n        $this->args = (array) $args;\n\n        // check if callable\n        if (!is_callable($this->callback, false, $this->callable_name)) {\n            throw new InvalidArgumentException(\n                \"Callback {$this->callable_name} is not callable.\",\n                self::ERROR_NOT_CALLABLE\n            );\n        }\n    }\n\n    /**\n     * Allow certain callback.\n     *\n     * @param string $callable_name\n     * @param string $permissions_required\n     *\n     * @return ServerRequest\n     */\n    public function allow($callable_name, $permission_required = '')\n    {\n        $this->rules[(string) $callable_name] = (string) $permission_required;\n\n        return $this;\n    }\n\n    /**\n     * Execute callback.\n     *\n     * @return mixed\n     */\n    public function execute()\n    {\n        // token check\n        if (!$this->checkToken()) {\n            throw new InvalidArgumentException(\n                'Invalid security token.',\n                self::ERROR_SECURITY_TOKEN\n            );\n        }\n\n        // authorisation check\n        if (!$this->checkPermission()) {\n            throw new LogicException(\n                'Access denied.',\n                self::ERROR_PERMISSION\n            );\n        }\n\n        // function\n        if (function_exists($this->callable_name)) {\n            return call_user_func_array($this->callable_name, $this->args);\n        }\n\n        list($class, $method) = explode('::', $this->callable_name);\n        $methodRef = new ReflectionMethod($class, $method);\n\n        // static method\n        if ($methodRef->isStatic()) {\n            return call_user_func_array($this->callable_name, $this->args);\n        }\n\n        // object method - create object instance\n        $classRef = new ReflectionClass($class);\n        $cargsNum = $classRef->getConstructor()\n            ->getNumberOfParameters();\n        $cargs = array_slice($this->args, 0, $cargsNum);\n        $instance = $classRef->newInstanceArgs($cargs);\n\n        // call instance method\n        $args = array_slice($this->args, $cargsNum);\n\n        return $methodRef->invokeArgs($instance, $args);\n    }\n\n    /**\n     * Check permission.\n     *\n     * @return bool\n     */\n    public function checkPermission()\n    {\n        global $g_user;\n\n        if (!isset($this->rules[$this->callable_name])) {\n            return false;\n        }\n\n        $permission = $this->rules[$this->callable_name];\n        if (!empty($permission) && !$g_user->hasPermission($permission)) {\n            return false;\n        }\n\n        return true;\n    }\n\n    /**\n     * Check token.\n     *\n     * @return bool\n     */\n    public function checkToken()\n    {\n        return SecurityToken::isValid();\n    }\n}\n"
  },
  {
    "path": "newscoop/classes/Session.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\n\n/**\n * @package Campsite\n */\nclass Session extends DatabaseObject {\n\tvar $m_keyColumnNames = array('id');\n\tvar $m_keyIsAutoIncrement = false;\n\tvar $m_dbTableName = 'Sessions';\n\tvar $m_columnNames = array('id',\n\t\t\t\t\t\t\t   'start_time',\n\t                           'user_id');\n\n\tpublic function __construct($p_id = null)\n\t{\n        if (!is_null($p_id)) {\n            $this->m_data['id'] = $p_id;\n            $this->fetch();\n        }\n\t} // constructor\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getStartTime()\n\t{\n\t\treturn $this->m_data['start_time'];\n\t} // fn getStartTime\n\n\n\tpublic function getUserId() {\n\t    return $this->m_data['user_id'];\n\t}\n} // class Session\n\n?>"
  },
  {
    "path": "newscoop/classes/SessionRequest.php",
    "content": "<?php\n\nclass SessionIdNotSet extends Exception {\n    public function __construct() {\n        parent::__construct('The session identifier was not set.', null);\n    }\n}\n\nclass ObjectIdNotSet extends Exception {\n    public function __construct() {\n        parent::__construct('The object identifier was not set.', null);\n    }\n}\n\nclass ObjectTypeIdNotSet extends Exception {\n    public function __construct() {\n        parent::__construct('The object type identifier was not specified for the new object.', null);\n    }\n}\n\nclass InvalidUserId extends Exception {\n    public function __construct() {\n        parent::__construct('The specified user identifier does not match the session user identifier.', null);\n    }\n}\n\nclass SessionRequest {\n    public static function Create($p_sessionId, &$p_objectId, $p_objectTypeId = null, $p_userId = null, $p_updateStats = false) {\n        if (empty($p_sessionId)) {\n            throw new SessionIdNotSet();\n        }\n\n        $session = new Session($p_sessionId);\n        if (!$session->exists()) {\n            $sessionParams = array('start_time'=>strftime(\"%Y-%m-%d %T\"));\n            if (!empty($p_userId)) {\n                $sessionParams['user_id'] = $p_userId;\n            }\n            $session->create($sessionParams);\n        }\n        $sessionUserId = $session->getUserId();\n        if (!empty($p_userId) && !empty($sessionUserId) && $sessionUserId != $p_userId) {\n            throw new InvalidUserId();\n        }\n\n        $requestObject = new RequestObject($p_objectId);\n        if (!$requestObject->exists()) {\n            if (empty($p_objectTypeId)) {\n                throw new ObjectTypeIdNotSet();\n            }\n            $requestObject->create(array('object_type_id'=>$p_objectTypeId));\n            $p_objectId = $requestObject->getObjectId();\n        } elseif (empty($p_objectId)) {\n            throw new ObjectIdNotSet();\n        }\n\n        if ($p_updateStats) {\n            self::UpdateStats($p_sessionId, $p_objectId);\n        }\n    } // fn Create\n\n    /**\n     * Writes the statistics (when article read).\n     *\n     * @param int $p_sessionId\n     *      used for not writing the stats multiple times\n     * @param int $p_objectId\n     *      the article object whose stats shall be updated\n     * @return bool\n     */\n    public static function UpdateStats($p_sessionId, $p_objectId) {\n        if ((!$p_sessionId) || (!$p_objectId)) {\n            return false;\n        }\n\n        $request = new Request($p_sessionId, $p_objectId);\n        if (!$request->exists()) {\n            $request->create();\n        }\n\n        if (!$request->isInStats()) {\n            $requestStats = new RequestStats($p_objectId);\n            if (!$requestStats->exists()) {\n                $requestStats->create();\n            }\n            $requestStats->incrementRequestCount();\n            $request->setLastStatsUpdate();\n\n            return true;\n        }\n\n        return false;\n    } // fn UpdateStats\n\n}\n\n?>"
  },
  {
    "path": "newscoop/classes/ShortURL.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Issue.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Section.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\n\nclass ShortURL\n{\n    public static function GetURL($publicationId, $languageId = null, $issueNo = null, $sectionNo = null, $articleNo = null)\n    {\n        $publicationService = \\Zend_Registry::get('container')->getService('newscoop.publication_service');\n\n        if ($publicationService->getPublication()) {\n            if ($publicationService->getPublication()->getId() == $publicationId) {\n                $publication = $publicationService->getPublication();\n            } else {\n                $em = \\Zend_Registry::get('container')->getService('em');\n                $publication = $em->getRepository('Newscoop\\Entity\\Publication')->findOneById($publicationId);\n\n                if (!$publication) {\n                    throw new \\Exception('Publication does not exist.');\n                }\n            }\n        } else {\n            $em = \\Zend_Registry::get('container')->getService('em');\n            $publication = $em->getRepository('Newscoop\\Entity\\Publication')->findOneById($publicationId);\n\n            if (!$publication) {\n                throw new \\Exception('Publication does not exist.');\n            }\n        }\n\n        if (!isset($languageId)) {\n            $languageId = $publication->getDefaultLanguage()->getId();\n        }\n\n        $uri = ShortURL::GetURI($publicationId, $languageId, $issueNo, $sectionNo, $articleNo);\n\n        if (!is_string($uri) && PEAR::isError($uri)) {\n            return $uri;\n        }\n\n        if (isset($_SERVER['HTTPS'])) {\n            $scheme = $_SERVER['HTTPS'] == 'on' ? 'https://' : 'http://';\n        } else {\n            $scheme = $_SERVER['SERVER_PORT'] == 443 ? 'https://' : 'http://';\n        }\n\n        return $scheme . $publication->getDefaultAlias()->getName() . $uri;\n    }\n\n    public static function GetURI($p_publicationId, $p_languageId, $p_issueNo = null, $p_sectionNo = null, $p_articleNo = null)\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n        $languageObj = new Language($p_languageId);\n        if (!$languageObj->exists()) {\n            return new PEAR_Error($translator->trans('Language does not exist.'));\n        }\n        $uri = '/' . $languageObj->getCode() . '/';\n        if (!is_null($p_issueNo) && is_null($p_articleNo)) {\n            $issueObj = new Issue($p_publicationId, $p_languageId, $p_issueNo);\n            if (!$issueObj->exists()) {\n                return new PEAR_Error($translator->trans('Issue does not exist.'));\n            }\n            $uri .= $issueObj->getUrlName() . '/';\n        }\n        if (!is_null($p_sectionNo) && is_null($p_articleNo)) {\n            $sectionObj = new Section($p_publicationId, $p_issueNo, $p_languageId, $p_sectionNo);\n            if (!$sectionObj->exists()) {\n                return new PEAR_Error($translator->trans('Section does not exist.'));\n            }\n            $uri .= $sectionObj->getUrlName() . '/';\n        }\n        if (!is_null($p_articleNo)) {\n            $articleObj = new Article($p_languageId, $p_articleNo);\n\n            if (!$articleObj->exists()) {\n                return new PEAR_Error($translator->trans('Article does not exist.'));\n            }\n            $issueObj = new Issue($p_publicationId, $p_languageId, $articleObj->getIssueNumber());\n            $sectionObj = new Section($p_publicationId, $articleObj->getIssueNumber(), $p_languageId,\n            $articleObj->getSectionNumber());\n            $uri .= $issueObj->getUrlName() . '/';\n            $uri .= $sectionObj->getUrlName() . '/';\n            $uri .= $articleObj->getUrlName() . '/';\n        }\n        return $uri;\n    }\n}\n\n?>\n"
  },
  {
    "path": "newscoop/classes/SimplePager.php",
    "content": "<?php\nclass SimplePager\n{\n\tvar $m_offsets;\n\tvar $m_urls = array();\n\tvar $m_selectedPageNumber = null;\n\tvar $m_offset = null;\n\tvar $m_renderedStr = null;\n\tvar $m_numPages = 0;\n\n\t/**\n\t * SimplePager, unlike the PEAR Pager class, is a pager made to work\n\t * with template-like layouts. The constructor sets up the variables\n\t * you need to render the links, and you can render them\n\t * however you like.  There is a default render function for\n\t * reference.\n\t *\n\t * @param int $p_totalItems\n\t * \t\tTotal number of items.\n\t *\n\t * @param int $p_itemsPerPage\n\t * \t\tNumber of items to display per page.\n\t *\n\t * @param string $p_offsetVarName\n\t * \t\tThe name of the REQUEST variable which holds the order number\n\t * \t\tof the first item on the selected page.\n\t *\n\t * @param string $p_baseUrl\n\t * \t\tThe url to which we attach the offset variable name.\n\t *\n\t * @param boolean $p_useSessions\n\t * \t\tSet to TRUE if you want the offset item number to be stored in\n\t * \t\tthe session so that the user will return to their previous\n\t * \t\tposition in the pager when they leave the screen and come back\n\t * \t\tto it.\n\t */\n\tpublic function SimplePager($p_totalItems, $p_itemsPerPage, $p_offsetVarName,\n\t                            $p_baseUrl, $p_useSessions = true, $p_width = 10)\n\t{\n\t    global $_REQUEST;\n\n\t\t$this->m_urls[\"links\"] = array();\n\t\tif ($p_totalItems < 0) {\n\t\t\t$p_totalItems = 0;\n\t\t}\n\t\tif ($p_itemsPerPage < 1) {\n\t\t\t$p_itemsPerPage = 1;\n\t\t}\n\n\t\t// Get the current page number.\n\t\tif ($p_useSessions) {\n\t\t\t$this->m_offset = camp_session_get($p_offsetVarName, 0);\n\t\t} else {\n\t\t\t$this->m_offset = isset($_REQUEST[$p_offsetVarName]) ? $_REQUEST[$p_offsetVarName] : 0;\n\t\t}\n\t\tif ($this->m_offset < 0) {\n\t\t\t$this->m_offset = 0;\n\t\t} elseif ( ($this->m_offset) > $p_totalItems) {\n\t\t    // If the offset is past the total number of items,\n\t\t    // reset it.\n\t\t    $this->m_offset = 0;\n\t\t    if ($p_useSessions) {\n\t\t        camp_session_set($p_offsetVarName, 0);\n\t\t    }\n\t\t}\n\n\t\t// Only generate pager if there is more than one page of information.\n\t\tif ($p_totalItems > $p_itemsPerPage) {\n\n\t\t\t// Generate the offsets into the list.\n\t\t\t$remainder = $p_totalItems % $p_itemsPerPage;\n\t\t\tif ($remainder == 0) {\n\t\t\t\t$this->m_offsets = SimplePager::_range(0, $p_totalItems-1, $p_itemsPerPage);\n\t\t\t} else {\n\t\t\t\t$this->m_offsets = SimplePager::_range(0, $p_totalItems, $p_itemsPerPage);\n\t\t\t}\n\n\t\t\t$this->m_numPages = count($this->m_offsets);\n\t\t\t$this->m_selectedPageNumber = floor($this->m_offset/$p_itemsPerPage)+1;\n\n\t\t\tif ($p_width > $this->m_numPages) {\n\t\t\t\t$p_width = $this->m_numPages;\n\t\t\t}\n\n\t\t\t// Generate the numbered links\n\t\t\tif ($this->m_selectedPageNumber < ($p_width/2 + 1)) {\n\t\t\t\t$begin = 0;\n\t\t\t\t$end = $p_width;\n\t\t\t} else if ($this->m_selectedPageNumber > ($this->m_numPages - ($p_width/2))) {\n\t\t\t\t$begin = $this->m_numPages - $p_width;\n\t\t\t\t$end = $this->m_numPages;\n\t\t\t} else {\n\t\t\t\t$begin = $this->m_selectedPageNumber - ceil($p_width/2) - 1;\n\t\t\t\t$end = $this->m_selectedPageNumber + ceil($p_width/2);\n\t\t\t}\n\t\t\tfor ($index = $begin; $index < $end; $index++) {\n\t\t\t\t$this->m_urls[\"links\"][$index+1] = $p_baseUrl.\"$p_offsetVarName=\".$this->m_offsets[$index];\n\t\t\t}\n\n\t\t\t// Generate special links.\n\t\t\tif ($this->m_selectedPageNumber > 1) {\n    \t\t\t$this->m_urls[\"first\"] = $p_baseUrl.\"$p_offsetVarName=\".$this->m_offsets[0];\n\t       \t\t$this->m_urls[\"previous\"] = $p_baseUrl.\"$p_offsetVarName=\".$this->m_offsets[max(0, $this->m_selectedPageNumber-2)];\n\t\t\t}\n\t       \tif ($this->m_selectedPageNumber > 10) {\n\t\t\t\t$this->m_urls[\"previous_10_pages\"] = $p_baseUrl.\"$p_offsetVarName=\".$this->m_offsets[max(0, $this->m_selectedPageNumber-11)];\n\t\t\t}\n\t\t\tif ($this->m_selectedPageNumber > 100) {\n\t\t\t\t$this->m_urls[\"previous_100_pages\"] = $p_baseUrl.\"$p_offsetVarName=\".$this->m_offsets[max(0, $this->m_selectedPageNumber-101)];\n\t\t\t}\n\t\t\tif ( ($this->m_numPages > $this->m_selectedPageNumber)) {\n    \t\t\t$this->m_urls[\"next\"] = $p_baseUrl.\"$p_offsetVarName=\".$this->m_offsets[min($this->m_numPages-1, $this->m_selectedPageNumber)];\n\t\t\t}\n    \t\tif ( ($this->m_numPages - $this->m_selectedPageNumber) > 9) {\n\t\t\t\t$this->m_urls[\"next_10_pages\"] = $p_baseUrl.\"$p_offsetVarName=\".$this->m_offsets[min($this->m_numPages-1, $this->m_selectedPageNumber+9)];\n\t\t\t}\n\t\t\tif ( ($this->m_numPages - $this->m_selectedPageNumber) > 99) {\n\t\t\t\t$this->m_urls[\"next_100_pages\"] = $p_baseUrl.\"$p_offsetVarName=\".$this->m_offsets[min($this->m_numPages-1, $this->m_selectedPageNumber+99)];\n\t\t\t}\n\t\t\tif ( ($this->m_numPages > $this->m_selectedPageNumber)) {\n    \t\t\t$this->m_urls[\"last\"] = $p_baseUrl.\"$p_offsetVarName=\".$this->m_offsets[$this->m_numPages-1];\n\t\t\t}\n\t\t}\n\t} // constructor\n\n\n\t/**\n\t * Default way to render the links.  Feel free to come up with your own way.\n\t * @return string\n\t */\n\tpublic function render()\n\t{\t\n\t\t$translator = \\Zend_Registry::get('container')->getService('translator');\n\t\tif ($this->m_renderedStr !== null) {\n\t\t\treturn $this->m_renderedStr;\n\t\t}\n\t\t$this->m_renderedStr = \"\";\n\t\tif (count($this->m_urls[\"links\"]) > 1) {\n\t\t\tif (isset($this->m_urls[\"first\"])) {\n    \t\t    $this->m_renderedStr .= \"<a href=\\\"\".$this->m_urls[\"first\"].\"\\\">\".$translator->trans(\"First\", array(), 'api').\"</a> | \";\n\t\t\t}\n    \t\tif (isset($this->m_urls[\"previous_100_pages\"])) {\n\t\t\t\t$this->m_renderedStr .= \"<a href=\\\"\".$this->m_urls[\"previous_100_pages\"].\"\\\">\".$translator->trans(\"Previous\").\" 100</a> | \";\n\t\t\t}\n\t\t\tif (isset($this->m_urls[\"previous_10_pages\"])) {\n\t\t\t\t$this->m_renderedStr .= \"<a href=\\\"\".$this->m_urls[\"previous_10_pages\"].\"\\\">\".$translator->trans(\"Previous\").\" 10</a> | \";\n\t\t\t}\n\t\t\tif (isset($this->m_urls[\"previous\"])) {\n    \t\t\t$this->m_renderedStr .= \"<a href=\\\"\".$this->m_urls[\"previous\"].\"\\\">\".$translator->trans(\"Previous\").\"</a> | \";\n\t\t\t}\n    \t\tforeach ($this->m_urls[\"links\"] as $number => $url) {\n\t\t\t\tif ($number == $this->m_selectedPageNumber) {\n\t\t\t\t\t$this->m_renderedStr .= \"<strong>$number</strong> | \";\n\t\t\t\t} else {\n\t\t\t\t\t$this->m_renderedStr .= \"<a href=\\\"\".$url.\"\\\">$number</a> | \";\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (isset($this->m_urls[\"next\"])) {\n\t\t\t    $this->m_renderedStr .= \"<a href=\\\"\".$this->m_urls[\"next\"].\"\\\">\".$translator->trans(\"Next\").\"</a> | \";\n\t\t\t}\n\t\t\tif (isset($this->m_urls[\"next_10_pages\"])) {\n\t\t\t\t$this->m_renderedStr .= \"<a href=\\\"\".$this->m_urls[\"next_10_pages\"].\"\\\">\".$translator->trans(\"Next\").\" 10</a> | \";\n\t\t\t}\n\t\t\tif (isset($this->m_urls[\"next_100_pages\"])) {\n\t\t\t\t$this->m_renderedStr .= \"<a href=\\\"\".$this->m_urls[\"next_100_pages\"].\"\\\">\".$translator->trans(\"Next\").\" 100</a> | \";\n\t\t\t}\n\t\t\tif (isset($this->m_urls[\"last\"])) {\n    \t\t\t$this->m_renderedStr .= \"<a href=\\\"\".$this->m_urls[\"last\"].\"\\\">\".$translator->trans(\"Last\", array(), 'api').\"</a>\";\n\t\t\t}\n\t\t}\n\t\treturn $this->m_renderedStr;\n\t} // fn render\n\n\n\t/**\n\t * Create an array of integers starting at $p_num1\n\t * and ending at $p_num2 (inclusive), going up by a\n\t * value of $p_step each time.\n\t *\n\t * @param int $p_num1\n\t * @param int $p_num2\n\t * @param int $p_step\n\t * @return array\n\t */\n\tpublic function _range($p_num1, $p_num2, $p_step = 1)\n\t{\n\t\t$temp = array();\n\t   \tfor($i = $p_num1; $i <= $p_num2; $i += $p_step) {\n\t    \t$temp[] = $i;\n\t   \t}\n\t   \treturn $temp;\n\t} // fn _range\n\n} // class SimplePager\n\n?>\n"
  },
  {
    "path": "newscoop/classes/Statistics.php",
    "content": "<?php\n\n/**\n * Class Statistics\n *\n * Statistics for article read requests.\n */\nclass Statistics {\n\n    /**\n     * Process the statistics for the request.\n     *\n     * @param bool $p_statsOnly\n     *      Is this request just for statistics.\n     * @return bool\n     */\n    public static function ProcessStats(&$p_statsOnly)\n    {\n        global $Campsite;\n\n        $p_statsOnly = false;\n        $output_html = ' ';\n\n        //looking whether the request is of form used for statistics, i.e.\n        //http(s)://newscoop_domain/(newscoop_dir/)_statistics(/...)(?...)\n\n        $path_request_parts = explode('?', $_SERVER['REQUEST_URI']);\n        $path_request = strtolower($path_request_parts[0]);\n        if (('' == $path_request) || ('/' != $path_request[strlen($path_request)-1])) {\n            $path_request .= '/';\n        }\n\n        $campsite_subdir = substr($_SERVER['SCRIPT_NAME'], 0, strrpos($_SERVER['SCRIPT_NAME'], '/', -2));\n\n        // the path prefix that should be considered when checking the statistics directory\n        // it is an empty string for domain based installations\n        $stat_start = strtolower($campsite_subdir);\n        if (('' == $stat_start) || ('/' != $stat_start[strlen($stat_start)-1])) {\n            $stat_start .= '/';\n        }\n\n        // the path (as of request_uri) that is for the statistics part\n        $stat_start .= '_statistics/';\n        $stat_start_len = strlen($stat_start);\n        // if request_uri starts with the statistics path, it is just for the statistics things\n        if (substr($path_request, 0, $stat_start_len) == $stat_start) {\n            $p_statsOnly = true;\n        }\n        // if not on statistics, just return and let run the standard newscoop processing\n        if (!$p_statsOnly) {\n            return true;\n        }\n\n        // taking the statistics specification part of the request uri\n        $stat_info = substr($path_request, $stat_start_len);\n\n        $stat_info_arr = array();\n        foreach (explode('/', $stat_info) as $one_part) {\n            $one_part = trim($one_part);\n            // here we take that '0' is not valid id for any db object\n            if (!empty($one_part)) {\n                $stat_info_arr[] = $one_part;\n            }\n        }\n\n        $art_read_action = false;\n\n        // for now, the only known action is to update statistics on article readering, i.e. for\n        // uri path of form (/newscoop_path)/statistics/reader/article/object_id/?...\n        if (3 <= count($stat_info_arr)) {\n            if (('reader' == $stat_info_arr[0]) && (is_numeric($stat_info_arr[1]))) {\n                $art_read_action =  true;\n            }\n        }\n\n        if (!$art_read_action) {\n            return false;\n        }\n\n        // if the article was read by a user (incl. an anonymous one)\n        if ($art_read_action) {\n            $object_type_id = (int) $stat_info_arr[1];\n            $object_id = (int) $stat_info_arr[2];\n\n            $correct = self::WriteStats($object_type_id, $object_id);\n            if (!$correct) {\n                return false;\n            }\n        } // end of the stats action on article reading\n\n        // the output string for stats only requests; nothing for now\n        echo $output_html;\n\n        // whether the stats processing was correct\n        // the return value not used actually anywhere now\n        return true;\n    } // fn ProcessStats\n \n    /**\n     * Writes the statistics for the request.\n     * This works according to SessionRequest::Create, just done directly to avoid Zend usage\n     * to make it as fast as possible. Note that it contains some apparently nonsensical processing\n     * that should be probably avoided, but it was at the original workflow and this is just a copy.\n     * I suppose that it would really like to have some workflow simplification.\n     *\n     * @param int $p_type\n     *      type_id of article or, for future, other types\n     * @param int $p_specifier\n     *      object_id of the read article\n     * @return bool\n     */\n    public static function WriteStats($p_type, $p_specifier)\n    {\n        // The main input info is object_type (e.g. article) and object_id (unique specifier)\n        // as for now, it shall be artycle_type and object_id of an article\n        // Note that the p_specifier shall be unique within all the type domains,\n        // while the current state is that the object_ids are taken unique just within articles.\n        // We shall think on it if trying to put other types (e.g. sections, issues) into stats.\n\n        $object_type_id = 0 + $p_type;\n        $object_id = 0 + $p_specifier;\n\n        // taking db access info\n        global $Campsite;\n        if (empty($Campsite)) {\n            $Campsite = array('db' => array());\n        }\n\n        $newscoop_path = dirname(dirname(__FILE__));\n        require_once($newscoop_path . '/conf/database_conf.php');\n\n        $dbAccess = $Campsite['db'];\n\n        $db_host = $dbAccess['host'];\n        $db_port = $dbAccess['port'];\n        $db_user = $dbAccess['user'];\n        $db_pwd = $dbAccess['pass'];\n        $db_name = $dbAccess['name'];\n\n        $session_name = session_name();\n        if(session_id() == '') {\n            session_start($session_name);\n            $session_id = session_id();\n        } else {\n            $session_id = session_id();\n        }\n        \n\n        // sql commands used along the workflow\n        $sqlSessionSel = 'SELECT user_id FROM Sessions WHERE id = :session_id';\n        $sqlSessionIns = 'INSERT INTO Sessions (id, start_time) VALUES (:session_id, :start_time)';\n\n        $sqlRequestObjectSel = 'SELECT object_id FROM RequestObjects WHERE object_id = :object_id';\n        $sqlRequestObjectIns = 'INSERT INTO RequestObjects (object_id, object_type_id) VALUES (:object_id, :object_type_id)';\n        $sqlRequestObjectUpd = 'UPDATE RequestObjects SET request_count = (request_count + 1) WHERE object_id = :object_id';\n\n        $sqlRequestSel = 'SELECT last_stats_update FROM Requests WHERE (session_id, object_id) = (:session_id, :object_id) LIMIT 1';\n        $sqlRequestIns = 'INSERT INTO Requests (session_id, object_id, last_stats_update) VALUES (:session_id, :object_id, :last_stats_update)';\n\n        // it looks that this table was used just for having daily/hourly statistics,\n        // but can not see where it is used now; was it finally abandoned?\n        $sqlRequestStatSel = 'SELECT request_count FROM RequestStats WHERE (object_id, date, hour) = (:object_id, :date, :hour)';\n        $sqlRequestStatIns = 'INSERT INTO RequestStats (object_id, date, hour, request_count) VALUES (:object_id, :date, :hour, 1)';\n        $sqlRequestStatUpd = 'UPDATE RequestStats SET request_count = (request_count + 1) WHERE (object_id, date, hour) = (:object_id, :date, :hour)';\n\n        // openning the db connection\n        $dbh = null;\n        $sth = null;\n\n        try {\n            $dbh = new PDO(\n                \"mysql:host=$db_host;port=$db_port;dbname=$db_name\", \n                \"$db_user\",\n                \"$db_pwd\",\n                array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8')\n            );\n        }\n        catch (Exception $exc) {\n            return false;\n        }\n\n        // the old processing read/created session info first\n        // it looks to me that we do not need this here, may be to abandon this at a refactoring\n        try {\n            $user_id = null;\n            $session_exists = false;\n\n            $sth = $dbh->prepare($sqlSessionSel);\n            $sth->bindValue(':session_id', (string) $session_id, PDO::PARAM_STR);\n\n            $res = $sth->execute();\n            if (!$res) {\n                return false;\n            }\n\n            while ($row = $sth->fetch(PDO::FETCH_ASSOC)) {\n                $user_id = $row['user_id'];\n                $session_exists = true;\n            }\n\n            $sth = null;\n\n            if (!$session_exists) {\n                $sth = $dbh->prepare($sqlSessionIns);\n                $sth->bindValue(':session_id', (string) $session_id, PDO::PARAM_STR);\n                $sth->bindValue(':start_time', (string) strftime(\"%Y-%m-%d %T\"), PDO::PARAM_STR);\n\n                $res = $sth->execute();\n                if (!$res) {\n                    return false;\n                }\n\n                $sth = null;\n            }\n\n        }\n        catch (Exception $exc) {\n            return false;\n        }\n\n        // we read the stats info from RequestObjects and create empty one, if none there\n        // note that RequestObjects and RequestStats contain apparently duplicated info,\n        // it shall be rationalized at some refactoring\n\n        try {\n            $request_object_exists = false;\n\n            $sth = $dbh->prepare($sqlRequestObjectSel);\n            $sth->bindValue(':object_id', (string) $object_id, PDO::PARAM_INT);\n\n            $res = $sth->execute();\n            if (!$res) {\n                return false;\n            }\n\n            while ($row = $sth->fetch(PDO::FETCH_ASSOC)) {\n                $request_object_exists = true;\n            }\n\n            $sth = null;\n\n            if (!$request_object_exists) {\n                $sth = $dbh->prepare($sqlRequestObjectIns);\n                $sth->bindValue(':object_id', (string) $object_id, PDO::PARAM_INT);\n                $sth->bindValue(':object_type_id', (string) $object_type_id, PDO::PARAM_INT);\n\n                $res = $sth->execute();\n                if (!$res) {\n                    return false;\n                }\n\n                $sth = null;\n            }\n\n        }\n        catch (Exception $exc) {\n            return false;\n        }\n\n        // does the user already read this article\n        // in a distant past the page-reads were taken per user (i.e. session_id) and hour,\n        // for the current (and past) workflow a user (i.e. seesion_id) can be taken just once,\n        // i.e. either the row (on session_id and object_id) does exists or not at all\n\n        $last_stats_update = null;\n\n        try {\n            $sth = $dbh->prepare($sqlRequestSel);\n            $sth->bindValue(':session_id', (string) $session_id, PDO::PARAM_STR);\n            $sth->bindValue(':object_id', (string) $object_id, PDO::PARAM_INT);\n\n            $res = $sth->execute();\n            if (!$res) {\n                return false;\n            }\n\n            while ($row = $sth->fetch(PDO::FETCH_ASSOC)) {\n                $last_stats_update = $row['last_stats_update'];\n            }\n\n            $sth = null;\n        }\n        catch (Exception $exc) {\n            return false;\n        }\n\n        // stop here if already read that\n        if (!empty($last_stats_update)) {\n            return true;\n        }\n\n        $last_stats_update = date('Y-m-d G:i:s');\n        $current_date = date('Y-m-d');\n        $current_hour = 0 + date('H');\n\n        // save that the user has read the article\n        try {\n            $sth = $dbh->prepare($sqlRequestIns);\n            $sth->bindValue(':session_id', (string) $session_id, PDO::PARAM_STR);\n            $sth->bindValue(':object_id', (string) $object_id, PDO::PARAM_INT);\n            $sth->bindValue(':last_stats_update', (string) $last_stats_update, PDO::PARAM_STR);\n\n            $res = $sth->execute();\n            if (!$res) {\n                return false;\n            }\n\n            $sth = null;\n        }\n        catch (Exception $exc) {\n            return false;\n        }\n\n        $request_count_update = false;\n\n        // how many has read this article this hour\n        try {\n            $sth = $dbh->prepare($sqlRequestStatSel);\n            $sth->bindValue(':object_id', (string) $object_id, PDO::PARAM_INT);\n            $sth->bindValue(':date', (string) $current_date, PDO::PARAM_STR);\n            $sth->bindValue(':hour', (string) $current_hour, PDO::PARAM_INT);\n\n            $res = $sth->execute();\n            if (!$res) {\n                return false;\n            }\n\n            while ($row = $sth->fetch(PDO::FETCH_ASSOC)) {\n                $request_count_update = true;\n            }\n\n            $sth = null;\n        }\n        catch (Exception $exc) {\n            return false;\n        }\n\n        // save the (increased) count of read access\n        // both into RequestStats and RequestObjects\n        try {\n            if ($request_count_update) {\n                $sth = $dbh->prepare($sqlRequestStatUpd);\n            } else {\n                $sth = $dbh->prepare($sqlRequestStatIns);\n            }\n            $sth->bindValue(':object_id', (string) $object_id, PDO::PARAM_INT);\n            $sth->bindValue(':date', (string) $current_date, PDO::PARAM_STR);\n            $sth->bindValue(':hour', (string) $current_hour, PDO::PARAM_INT);\n\n            $res = $sth->execute();\n            if (!$res) {\n                return false;\n            }\n\n            $sth = null;\n\n            $sth = $dbh->prepare($sqlRequestObjectUpd);\n            $sth->bindValue(':object_id', (string) $object_id, PDO::PARAM_INT);\n\n            $res = $sth->execute();\n            if (!$res) {\n                return false;\n            }\n\n            $sth = null;\n\n        }\n        catch (Exception $exc) {\n            return false;\n        }\n\n        return true;\n\n    } // WriteStats\n\n    /**\n     * Prepares JavaScript trigger for statistics requests\n     *\n     * @param int $p_params\n     *      specs to distinguish the request, js variables and functions\n     * @return string\n     */\n    public static function JavaScriptTrigger($p_params)\n    {\n        global $Campsite;\n\n        if (!isset($p_params['name_spec'])) {\n            return '';\n        }\n        if (!isset($p_params['object_type_id'])) {\n            return '';\n        }\n        if (!isset($p_params['request_object_id'])) {\n            return '';\n        }\n        if (!isset($p_params['count_automatically'])) {\n            $p_params['count_automatically'] = true;\n        }\n\n        $name_spec = $p_params['name_spec'];\n        $object_type_id = $p_params['object_type_id'];\n        $request_object_id = $p_params['request_object_id'];\n\n        $stat_web_url = $Campsite['WEBSITE_URL'];\n        if ('/' != $stat_web_url[strlen($stat_web_url)-1]) {\n            $stat_web_url .= '/';\n        }\n\n        $runStats = '';\n        if ($p_params['count_automatically'] == true) {\n            $runStats = 'stats_submit' . $name_spec . '();';\n        }\n\n        $trigger = '\n            <script type=\"text/javascript\">\n            <!--\n            var stats_getHTTPObject' . $name_spec . ' = function () {\n                var xhr = false;\n                if (window.XMLHttpRequest) {\n                    xhr = new XMLHttpRequest();\n                } else if (window.ActiveXObject) {\n                    try {\n                        xhr = new ActiveXObject(\"Msxml2.XMLHTTP\");\n                    } catch(e) {\n                        try {\n                            xhr = new ActiveXObject(\"Microsoft.XMLHTTP\");\n                        } catch(e) {\n                            xhr = false;\n                        }\n                    }\n                }\n                return xhr;\n            };\n\n            var stats_submit' . $name_spec . ' = function () {\n                if (undefined !== window.statistics_request_sent_' . $name_spec . ') {\n                    return;\n                }\n                window.statistics_request_sent_' . $name_spec . ' = true;\n\n                var stats_request = stats_getHTTPObject' . $name_spec . '();\n                stats_request.onreadystatechange = function() {};\n\n                var read_date = new Date();\n                var read_path = \"_statistics/reader/' . $object_type_id . '/\";\n                var request_randomizer = \"\" + read_date.getTime() + Math.random();\n                var stats_url = \"' . $stat_web_url . '\" + read_path + \"' . $request_object_id . '/\";\n                try {\n                    stats_request.open(\"GET\", stats_url + \"?randomizer=\" + request_randomizer, true);\n                    stats_request.send(null);\n                    /* not everybody has jquery installed\n                    $.ajax({\n                        url: stats_url,\n                        data: {randomizer: request_randomizer},\n                        success: function() {}\n                    });\n                    */\n                } catch (e) {}\n            };\n            '.$runStats.'\n            -->\n            </script>\n        ';\n\n        return $trigger;\n    } // JavaScriptTrigger\n\n} // class Statistics\n\n"
  },
  {
    "path": "newscoop/classes/Subscription.php",
    "content": "<?PHP\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\n\nclass Subscription extends DatabaseObject\n{\n\tvar $m_dbTableName = 'Subscriptions';\n\tvar $m_keyColumnNames = array('Id');\n\tvar $m_keyIsAutoIncrement = true;\n\tvar $m_columnNames = array(\n\t\t'Id',\n\t\t'IdUser',\n\t\t'IdPublication',\n\t\t'Active',\n\t\t'ToPay',\n\t\t'Currency',\n\t\t'Type');\n\n\n\t/**\n\t * A user's subscription to a publication.\n\t *\n\t * @param int $p_id\n\t * @return Subscription\n\t */\n\tpublic function Subscription($p_id = null)\n\t{\n\t\tparent::DatabaseObject($this->m_columnNames);\n\t\t$this->m_data['Id'] = $p_id;\n\t\tif (!is_null($p_id)) {\n\t\t\t$this->fetch();\n\t\t}\n\t} // constructor\n\n\n\t/**\n\t * Delete this subscription and all cooresponding section subscriptions.\n\t *\n\t * @return boolean\n\t */\n\tpublic function delete()\n\t{\n\t\tglobal $g_ado_db;\n\t    $queryStr = \"DELETE FROM SubsSections WHERE IdSubscription=\".$this->m_data['Id'];\n\t    $g_ado_db->Execute($queryStr);\n        $deleted = parent::delete();\n\t    return $deleted;\n\t} // fn delete\n\n\n\t/**\n\t * Unique ID for this subscription.\n\t *\n\t * @return int\n\t */\n\tpublic function getSubscriptionId()\n\t{\n\t\treturn $this->m_data['Id'];\n\t} // fn getSubscriptionId\n\n\n\t/**\n\t * The user who is subscribed.\n\t *\n\t * @return int\n\t */\n\tpublic function getUserId()\n\t{\n\t\treturn $this->m_data['IdUser'];\n\t} // fn getUserId\n\n\n\t/**\n\t * The publication to which the user is subscribed.\n\t *\n\t * @return int\n\t */\n\tpublic function getPublicationId()\n\t{\n\t\treturn $this->m_data['IdPublication'];\n\t} // fn getPublicationId\n\n\n\t/**\n\t * @return float\n\t */\n\tpublic function getToPay()\n\t{\n\t\treturn $this->m_data['ToPay'];\n\t} // fn getToPay\n\n\n\t/**\n\t * @param float $p_value\n\t * @return boolean\n\t */\n\tpublic function setToPay($p_value)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$success = $this->setProperty('ToPay', $p_value);\n\t\tif ($success && ( ($p_value == '0') || ($p_value == 0) ) ) {\n\t\t\t$queryStr =\"UPDATE SubsSections SET PaidDays=Days WHERE IdSubscription=\".$this->m_data['Id'];\n\t\t\t$g_ado_db->Execute($queryStr);\n\t\t}\n\t\treturn $success;\n\t} // fn setToPay\n\n\n\t/**\n\t * @return string\n\t */\n\tpublic function getCurrency()\n\t{\n\t\treturn $this->m_data['Currency'];\n\t} // fn getCurrency\n\n\n\t/**\n\t * Returns 'T' for Trial subscription or 'P' for paid subscription.\n\t *\n\t * @return string\n\t */\n\tpublic function getType()\n\t{\n\t\treturn $this->m_data['Type'];\n\t} // fn getType\n\n\n\t/**\n\t * Return TRUE if the subscription is active.\n\t *\n\t * @return boolean\n\t */\n\tpublic function isActive()\n\t{\n\t\t$active = $this->m_data['Active'];\n\t\tif ($active == 'Y') {\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t} // fn isActive\n\n\n\t/**\n\t * Set whether the subscription is active.\n\t *\n\t * @param boolean $p_value\n\t * @return boolean\n\t */\n\tpublic function setIsActive($p_value)\n\t{\n\t\tif ($p_value) {\n\t\t\treturn $this->setProperty('Active', 'Y');\n\t\t} else {\n\t\t\treturn $this->setProperty('Active', 'N');\n\t\t}\n\t} // fn setIsActive\n\n\n\t/**\n\t * Return the number of subscriptions in the given publication.\n\t *\n\t * @param int $p_publicationId\n\t * @param int $p_userId\n\t * @return int\n\t */\n\tpublic static function GetNumSubscriptions($p_publicationId = null, $p_userId = null)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$queryStr = \"SELECT COUNT(*) FROM Subscriptions\";\n\t\t$constraints = array();\n\t\tif (!is_null($p_publicationId)) {\n\t\t\t$constraints[] = array('IdPublication', $p_publicationId);\n\t\t}\n\t\tif (!is_null($p_userId)) {\n\t\t\t$constraints[] = array('IdUser', $p_userId);\n\t\t}\n\t\tif (count($constraints) > 0) {\n\t\t\t$tmpArray = array();\n\t\t\tforeach ($constraints as $constraint) {\n\t\t\t\t$tmpArray[] = $constraint[0].\"='\".$constraint[1].\"'\";\n\t\t\t}\n\t\t\t$queryStr .= \" WHERE \".implode(\" AND \", $tmpArray);\n\t\t}\n\t\t$total = $g_ado_db->GetOne($queryStr);\n\t\treturn $total;\n\t} // fn GetNumSubscriptions\n\n\n\t/**\n\t * Fetch the subscription objects that match the search criteria.\n\t *\n\t * @param int $p_publicationId\n\t * @param int $p_userId\n\t * @param array $p_sqlOptions\n\t * @return array\n\t */\n\tpublic static function GetSubscriptions($p_publicationId = null,\n\t                                        $p_userId = null, $p_sqlOptions = null)\n\t{\n\t\t$constraints = array();\n\t\tif (!is_null($p_publicationId)) {\n\t\t\t$constraints[] = array('IdPublication', $p_publicationId);\n\t\t}\n\t\tif (!is_null($p_userId)) {\n\t\t\t$constraints[] = array('IdUser', $p_userId);\n\t\t}\n\t\treturn DatabaseObject::Search('Subscription', $constraints, $p_sqlOptions);\n\t} // fn GetSubscriptions\n\n\n\t/**\n\t * Delete all the subscriptions to this section.\n\t *\n\t * @param int $p_publicationId\n\t * @param int $p_sectionId\n\t * @return int\n\t *     The number of subscriptions deleted.\n\t */\n    public static function DeleteSubscriptionsInSection($p_publicationId, $p_sectionId)\n    {\n        global $g_ado_db;\n    \t$query = \"SELECT Id FROM Subscriptions WHERE IdPublication = \" . $p_publicationId;\n    \t$subscriberIds = $g_ado_db->GetCol($query);\n    \t$numSubscriberIds = count($subscriberIds);\n    \tif ($numSubscriberIds <= 0) {\n    \t\treturn 0;\n    \t}\n\t\t$delQuery = \"DELETE FROM SubsSections \"\n\t\t\t\t\t.\" WHERE IdSubscription IN (\".implode(\",\", $subscriberIds).\")\"\n\t\t     \t\t.\" AND SectionNumber = \" . $p_sectionId;\n\t\t$g_ado_db->Execute($delQuery);\n    \treturn $numSubscriberIds;\n    } // fn DeleteSubscriptionsInSection\n\n\n    /**\n     * Add the given section to all subscriptions.  Return the number of\n     * subscriptions affected.\n     *\n     * @param int $p_publicationId\n     * @param int $p_sectionId\n     * @return int\n     */\n    public static function AddSectionToAllSubscriptions($p_publicationId, $p_sectionId)\n    {\n        global $g_ado_db;\n    \t// Retrieve the default trial and paid time of the subscriptions\n    \t$query = 'SELECT TimeUnit, TrialTime, PaidTime FROM Publications WHERE Id = '\n    \t         . $p_publicationId;\n    \t$rows = $g_ado_db->GetAll($query);\n    \tif (count($rows) < 0) {\n    \t\treturn -1;\n    \t}\n    \tif (count($rows) == 0) {\n    \t\treturn 0;\n    \t}\n    \t$row = $rows[0];\n\n    \t// Convert the time into a number of days\n    \tswitch ($row['TimeUnit']){\n    \tcase 'D':\n    \t\t$trialDays = $row['TrialTime'];\n    \t\t$paidDays = $row['PaidTime'];\n    \t\tbreak;\n    \tcase 'W':\n    \t\t$trialDays = $row['TrialTime'] * 7;\n    \t\t$paidDays = $row['PaidTime'] * 7;\n    \t\tbreak;\n    \tcase 'M':\n    \t\t$trialDays = $row['TrialTime'] * 30;\n    \t\t$paidDays = $row['PaidTime'] * 30;\n    \t\tbreak;\n    \tcase 'Y':\n    \t\t$trialDays = $row['TrialTime'] * 365;\n    \t\t$paidDays = $row['PaidTime'] * 365;\n    \t\tbreak;\n    \t}\n\n    \t$defaultDays['T'] = $defaultPaidDays['T'] = $trialDays;\n    \t$defaultDays['P'] = $defaultPaidDays['P'] = $paidDays;\n\n    \t// Read active subscriptions for the given publication\n    \t$subs_query = 'SELECT Subscriptions.Id, Subscriptions.Type, SubsSections.StartDate,'\n    \t     .' SubsSections.Days, SubsSections.PaidDays '\n    \t     .' FROM Subscriptions '\n    \t     .' LEFT JOIN SubsSections ON Subscriptions.Id = SubsSections.IdSubscription '\n    \t     .' WHERE Subscriptions.IdPublication = ' . $p_publicationId\n    \t     .' AND Subscriptions.Active = \\'Y\\' '\n    \t     .' GROUP BY SubsSections.IdSubscription'\n    \t     .' ORDER BY Subscriptions.Id ASC';\n    \t$rows = $g_ado_db->GetAll($subs_query);\n    \t$subscriptionCount = 0;\n    \tforeach ($rows as $row) {\n\t\t    // If the subscriber is not currently subscribed to any sections\n\t\t\tif ($row['StartDate'] == '') {\n\t\t\t\t$startDate = 'NOW()';\n\t\t\t\t$days = $defaultDays[$row['Type']];\n\t\t\t\t$paidDays = $defaultPaidDays[$row['Type']];\n\t\t\t} else {\n\t\t\t\t$startDate = \"'\" . $row['StartDate'] . \"'\";\n\t\t\t}\n\n\t\t\t$query = 'INSERT INTO SubsSections '\n\t\t\t         .' SET IdSubscription = ' . $row['Id']\n\t\t\t         .', SectionNumber = ' . $p_sectionId\n\t\t\t         .', StartDate = ' . $startDate\n\t\t\t         .', Days = ' . $row['Days']\n\t\t\t         .', PaidDays = ' . $row['PaidDays'];\n\t\t\t$g_ado_db->Execute($query);\n\t\t\t$subscriptionCount++;\n    \t} // foreach\n\n    \treturn $subscriptionCount;\n    } // fn AddSectionToAllSubscriptions\n\n} // class Subscription\n?>"
  },
  {
    "path": "newscoop/classes/SubscriptionDefaultTime.php",
    "content": "<?PHP\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbObjectArray.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Publication.php');\n\nclass SubscriptionDefaultTime extends DatabaseObject\n{\n\tvar $m_dbTableName = 'SubsDefTime';\n\tvar $m_keyColumnNames = array('CountryCode', 'IdPublication');\n\tvar $m_columnNames = array(\n\t\t'CountryCode',\n\t\t'IdPublication',\n\t\t'TrialTime',\n\t\t'PaidTime'\n\t\t);\n\n  \tpublic function SubscriptionDefaultTime($p_countryCode = null, $p_publicationId = null)\n  \t{\n  \t\tparent::DatabaseObject($this->m_columnNames);\n  \t\t$this->m_data['CountryCode'] = $p_countryCode;\n  \t\t$this->m_data['IdPublication'] = $p_publicationId;\n  \t\tif ($this->keyValuesExist()) {\n  \t\t\t$this->fetch();\n  \t\t}\n  \t} // constructor\n\n\n  \t/**\n  \t * @param array $p_values\n  \t * @return boolean\n  \t */\n  \tpublic function create($p_values = null)\n  \t{\n  \t\t$success = parent::create($p_values);\n  \t\t$publicationObj = new Publication($this->m_data['IdPublication']);\n\t\treturn $success;\n  \t} // fn create\n\n\n  \t/**\n  \t * @return string\n  \t */\n  \tpublic function getCountryCode()\n  \t{\n  \t\treturn $this->m_data['CountryCode'];\n  \t} // fn getCountryCode\n\n\n  \t/**\n  \t * @return int\n  \t */\n  \tpublic function getPublicationId()\n  \t{\n  \t\treturn $this->m_data['IdPublication'];\n  \t} // fn getPublicationId\n\n\n  \t/**\n  \t * @return int\n  \t */\n  \tpublic function getTrialTime()\n  \t{\n  \t\treturn $this->m_data['TrialTime'];\n  \t} // fn getTrialTime\n\n\n  \t/**\n  \t * @param int $p_value\n  \t */\n  \tpublic function setTrialTime($p_value)\n  \t{\n  \t\treturn $this->setProperty('TrialTime', $p_value);\n  \t} // fn setTrialTime\n\n\n  \t/**\n  \t * @return int\n  \t */\n  \tpublic function getPaidTime()\n  \t{\n  \t\treturn $this->m_data['PaidTime'];\n  \t} // fn getPaidTime\n\n\n  \t/**\n  \t * @param int $p_value\n  \t */\n  \tpublic function setPaidTime($p_value)\n  \t{\n  \t\treturn $this->setProperty('PaidTime', $p_value);\n  \t} // fn setPaidTime\n\n\n  \tpublic static function GetSubscriptionDefaultTimes($p_countryCode = null,\n  \t                                                   $p_publicationId = null)\n  \t{\n  \t\t$constraints = array();\n  \t\tif (!is_null($p_countryCode)) {\n  \t\t\t$constraints[] = array('CountryCode', $p_countryCode);\n  \t\t}\n  \t\tif (!is_null($p_publicationId)) {\n  \t\t\t$constraints[] = array('IdPublication', $p_publicationId);\n  \t\t}\n  \t\treturn DatabaseObject::Search('SubscriptionDefaultTime', $constraints);\n  \t}\n\n} // class SubscriptionDefaultTime\n?>"
  },
  {
    "path": "newscoop/classes/SubscriptionSection.php",
    "content": "<?PHP\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\n\nclass SubscriptionSection extends DatabaseObject\n{\n\tvar $m_dbTableName = 'SubsSections';\n\tvar $m_keyColumnNames = array('IdSubscription', 'SectionNumber', 'IdLanguage');\n\tvar $m_columnNames = array(\n\t\t'IdSubscription',\n\t\t'SectionNumber',\n\t\t'IdLanguage',\n\t\t'StartDate',\n\t\t'Days',\n\t\t'PaidDays',\n\t\t'NoticeSent');\n\n\n\t/**\n\t * Subscribers can be subscribed to individual sections of a publication.\n\t *\n\t * @param int $p_subscriptionId\n\t * @param int $p_sectionNumber\n\t * @param int $p_languageId\n\t * @return SubscriptionSection\n\t */\n\tpublic function SubscriptionSection($p_subscriptionId = null,\n\t                                    $p_sectionNumber = null,\n\t                                    $p_languageId = null)\n\t{\n\t\tparent::DatabaseObject($this->m_columnNames);\n\t\t$this->m_data['IdSubscription'] = $p_subscriptionId;\n\t\t$this->m_data['SectionNumber'] = $p_sectionNumber;\n\t\t$this->m_data['IdLanguage'] = $p_languageId;\n\t\tif ($this->keyValuesExist()) {\n\t\t\t$this->fetch();\n\t\t}\n\t} // constructor\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getSubscriptionId()\n\t{\n\t\treturn $this->m_data['IdSubscription'];\n\t} // fn getSubscriptionId\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getSectionNumber()\n\t{\n\t\treturn $this->m_data['SectionNumber'];\n\t} // fn getSectionNumber\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getLanguageId()\n\t{\n\t\treturn $this->m_data['IdLanguage'];\n\t} // fn getSubscriptionId\n\n\n\t/**\n\t * Return the starting date in the form YYYY-MM-DD.\n\t *\n\t * @return string\n\t */\n\tpublic function getStartDate()\n\t{\n\t\treturn $this->m_data['StartDate'];\n\t} // fn getStartDate\n\n\n\tpublic function getExpirationDate() {\n\t    $startDate = new \\DateTime(isset($this->m_data['StartDate']) ? $this->m_data['StartDate'] : 'now');\n\t    $timeSpan = new \\DateInterval('P' . $this->m_data['Days'] . 'D');\n        return $startDate->add($timeSpan);\n\t}\n\n\n\t/**\n\t * Set the start date, must be in the form YYYY-MM-DD.\n\t *\n\t * @param string $p_value\n\t * @return boolean\n\t */\n\tpublic function setStartDate($p_value)\n\t{\n\t\treturn $this->setProperty('StartDate', $p_value);\n\t} // fn setStartDate\n\n\n\t/**\n\t * The length of the subscription in days.\n\t *\n\t * @return int\n\t */\n\tpublic function getDays()\n\t{\n\t\treturn $this->m_data['Days'];\n\t} // fn getDays\n\n\n\t/**\n\t * Set length of the subscription in days.\n\t *\n\t * @param int $p_value\n\t * @return boolean\n\t */\n\tpublic function setDays($p_value)\n\t{\n\t\treturn $this->setProperty('Days', $p_value);\n\t}\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getPaidDays()\n\t{\n\t\treturn $this->m_data['PaidDays'];\n\t} // fn getPaidDays\n\n\n\t/**\n\t * @param int $p_value\n\t * @return boolean\n\t */\n\tpublic function setPaidDays($p_value)\n\t{\n\t\treturn $this->setProperty('PaidDays', $p_value);\n\t} // fn setPaidDays\n\n\n\t/**\n\t * @return boolean\n\t */\n\tpublic function noticeSent()\n\t{\n\t\t$sent = $this->m_data['NoticeSent'];\n\t\tif ($sent == 'Y') {\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t} // fn noticeSent\n\n\n\t/**\n\t *\n\t * @param int $p_subscriptionId\n\t * @param int $p_publicationId\n\t * @param int $p_languageId\n\t * @param array $p_values\n\t * @return boolean\n\t */\n\tpublic static function AddSubscriberToPublication($p_subscriptionId,\n\t                                                  $p_publicationId,\n\t                                                  $p_languageId,\n\t                                                  $p_values = null)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$created = true;\n\t\t$queryStr = \"SELECT DISTINCT Number FROM Sections where IdPublication=$p_publicationId\";\n\t\t$sectionIds = $g_ado_db->GetCol($queryStr);\n\t\tforeach ($sectionIds as $sectionId) {\n\t\t\t$subscriptionSection = new SubscriptionSection($p_subscriptionId, $sectionId, $p_languageId);\n\t\t\t$created &= $subscriptionSection->create($p_values);\n\t\t}\n\t\treturn $created;\n\t} // fn AddSubscriberToPublication\n\n\n\t/**\n\t * Return an array of SubscriptionSection objects matching the\n\t * search criteria.\n\t *\n\t * @param int $p_subscriptionId\n\t * @param int $p_sectionId\n\t * @param int $p_languageId\n\t * @return array\n\t */\n\tpublic static function GetSubscriptionSections($p_subscriptionId,\n\t                                               $p_sectionId = null,\n\t                                               $p_languageId = null)\n\t{\n\t\t$queryStr = \"SELECT SubsSections.*, Sections.Name, Subscriptions.Type, \"\n\t\t\t.\"Languages.Name as LangName, Languages.OrigName as LangOrigName\"\n\t\t\t.\" FROM Subscriptions, Sections, SubsSections LEFT JOIN Languages \"\n\t\t\t.\" ON SubsSections.IdLanguage = Languages.Id \"\n\t\t\t.\" WHERE Subscriptions.Id = $p_subscriptionId \"\n\t\t\t.\" AND Subscriptions.Id = SubsSections.IdSubscription \"\n\t\t\t.\" AND Subscriptions.IdPublication = Sections.IdPublication \"\n\t\t\t.\" AND SubsSections.SectionNumber = Sections.Number \";\n\t\tif (!is_null($p_sectionId)) {\n\t\t\t$queryStr .= \" AND SubsSections.SectionNumber = $p_sectionId\";\n\t\t}\n\t\tif (!is_null($p_languageId)) {\n\t\t\t$queryStr .= \" AND SubsSections.IdLanguage = $p_languageId\";\n\t\t}\n\t\t$queryStr .= \" GROUP BY SectionNumber, IdLanguage ORDER BY SectionNumber, LangName\";\n\t\t$sections = DbObjectArray::Create('SubscriptionSection', $queryStr);\n\t\treturn $sections;\n\t} // fn GetSubscriptionSections\n\n\n\t/**\n\t * Return the number of sections matching the search criteria.\n\t *\n\t * @param int $p_subscriptionId\n\t * @param int $p_sectionId\n\t * @param int $p_languageId\n\t * @return int\n\t */\n\tpublic static function GetNumSections($p_subscriptionId, $p_sectionId = null,\n\t                                      $p_languageId = null)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$queryStr = \"SELECT count(*) FROM SubsSections WHERE IdSubscription = $p_subscriptionId\";\n\t\tif (!is_null($p_sectionId)) {\n\t\t\tif (is_array($p_sectionId)) {\n\t\t\t\t$queryStr .= \" AND SectionNumber IN (\" . implode(\", \", $p_sectionId) . \")\";\n\t\t\t} else {\n\t\t\t\t$queryStr .= \" AND SectionNumber = $p_sectionId\";\n\t\t\t}\n\t\t}\n\t\tif (!is_null($p_languageId)) {\n\t\t\tif (is_array($p_languageId)) {\n\t\t\t\t$queryStr .= \" AND IdLanguage IN (\" . implode(\", \", $p_languageId) . \")\";\n\t\t\t} else {\n\t\t\t\t$queryStr .= \" AND IdLanguage = $p_languageId\";\n\t\t\t}\n\t\t} else {\n\t\t\t$queryStr .= \" AND IdLanguage != 0\";\n\t\t}\n\t\t$total = $g_ado_db->GetOne($queryStr);\n\t\treturn $total;\n\t} // fn GetNumSections\n\n} // class SubscriptionSection\n?>\n"
  },
  {
    "path": "newscoop/classes/Template.php",
    "content": "<?php\nrequire_once('DatabaseObject.php');\nrequire_once('DbObjectArray.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\n\n/**\n * @Annotation()\n */\nclass Template extends DatabaseObject {\n    var $m_dbTableName = 'Templates';\n    var $m_keyColumnNames = array('Id');\n    var $m_keyIsAutoIncrement = true;\n    var $m_columnNames = array('Id', 'Name', 'Type', 'Level', 'CacheLifetime');\n\n    /**\n     * A template is an HTML file with Campsite parser tags inside.\n     *\n     * @param mixed p_templateIdOrName\n     * \t\tGive the template ID or the template name relative\n     * \t\tto the template base directory.\n     *\n     */\n    public function Template($p_templateIdOrName = null)\n    {\n        parent::DatabaseObject($this->m_columnNames);\n        if (is_numeric($p_templateIdOrName)) {\n            $this->m_data['Id'] = $p_templateIdOrName;\n        } elseif (is_string($p_templateIdOrName)) {\n            $this->m_data['Name'] = $p_templateIdOrName;\n            $this->m_keyColumnNames = array('Name');\n        }\n        if ($this->keyValuesExist()) {\n            $this->fetch();\n        }\n    } // constructor\n\n\n    /**\n     * Wrapper around DatabaseObject::setProperty\n     * @see classes/DatabaseObject#setProperty($p_dbColumnName, $p_value, $p_commit, $p_isSql)\n     */\n    public function setProperty($p_dbColumnName, $p_value, $p_commit = true, $p_isSql = false)\n    {\n        if ($p_dbColumnName == 'Name') {\n            $this->m_keyColumnNames = array('Name');\n            $this->resetCache();\n            $this->m_keyColumnNames = array('Id');\n        }\n        return parent::setProperty($p_dbColumnName, $p_value);\n    }\n\n\n    /**\n     * Return TRUE if the file exists.\n     *\n     * @return boolean\n     */\n    public function fileExists()\n    {\n        global $Campsite;\n\n        if (!self::IsValidPath(dirname($this->m_data['Name']))) {\n            return false;\n        }\n        if (!is_file($Campsite['TEMPLATE_DIRECTORY'].\"/\".$this->m_data['Name'])) {\n            return false;\n        }\n        return true;\n    } // fn fileExists\n\n\n    /**\n     * @return int\n     */\n    public function getTemplateId()\n    {\n        return $this->m_data['Id'];\n    } // fn getTemplateId\n\n\n    /**\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->m_data['Name'];\n    } // fn getName\n\n\n    /**\n     * @return int\n     */\n    public function getType()\n    {\n        return $this->m_data['Type'];\n    } // fn  getType\n\n\n    /**\n     * @return int\n     */\n    public function getLevel()\n    {\n        return $this->m_data['Level'];\n    } // fn getLevel\n\n\n    /**\n     * @return int\n     */\n    public function getCacheLifetime()\n    {\n        return $this->m_data['CacheLifetime'];\n    } // fn getCacheLifetime\n\n    /**\n     * @return boolean\n     */\n    public function setCacheLifetime($p_lifetime = 0)\n    {\n        return $this->setProperty('CacheLifetime', $p_lifetime, true);\n    } // fn setCacheLifetime\n\n    /**\n     * @return string\n     */\n    public function getAbsoluteUrl()\n    {\n        global $Campsite;\n        return $Campsite['TEMPLATE_BASE_URL'].$this->m_data['Name'];\n    } // fn getAbsoluteUrl\n\n\n    /**\n     * @param string $p_path\n     * @return string\n     */\n    public static function GetContents($p_path)\n    {\n        if (file_exists($p_path)) {\n            $contents = file_get_contents($p_path);\n        } else {\n            $contents = \"\";\n        }\n        return $contents;\n    } // fn GetContents\n\n\n    /**\n     * Returns true if the template path is valid.\n     *\n     * @param string $p_path\n     * @param boolenan $p_checkIfExists\n     * @return bool\n     */\n    public static function IsValidPath($p_path, $p_checkIfExists=true)\n    {\n        global $Campsite;\n\n        foreach (explode(\"/\", $p_path) as $index=>$dir) {\n            if ($dir == \"..\") {\n                return false;\n            }\n        }\n\n        if ($p_checkIfExists &&\n              !is_dir($Campsite['TEMPLATE_DIRECTORY'] .\"/$p_path\") &&\n              !is_file($Campsite['TEMPLATE_DIRECTORY'] .\"/$p_path\") &&\n              !is_link($Campsite['TEMPLATE_DIRECTORY'] .\"/$p_path\")) {\n            return false;\n        }\n        return true;\n    } // fn IsValidPath\n\n\n    /**\n     * Returns TRUE if the template is being used in an Issue or Section.\n     * @return boolean\n     */\n    public static function InUse($p_templateName)\n    {\n        global $Campsite;\n        global $g_ado_db;\n\n        $p_templateName = ltrim($p_templateName, '/');\n\n        $queryStr = \"SELECT * FROM Templates WHERE Name = '$p_templateName'\";\n        $row = $g_ado_db->GetRow($queryStr);\n        if (!$row) {\n            return false;\n        }\n        $id = $row['Id'];\n\n        $queryStr = \"SELECT COUNT(*) FROM Issues \"\n                    .\" WHERE IssueTplId = \" . $id\n                     .\" OR SectionTplId = \" . $id\n                     .\" OR ArticleTplId = \" . $id;\n        $numMatches = $g_ado_db->GetOne($queryStr);\n        if ($numMatches > 0) {\n            return true;\n        }\n\n        $queryStr = \"SELECT COUNT(*) FROM Sections \"\n                    .\" WHERE SectionTplId = \" . $id\n                     .\" OR ArticleTplId = \" . $id;\n        $numMatches = $g_ado_db->GetOne($queryStr);\n        if ($numMatches > 0) {\n            return true;\n        }\n\n        $tplFindObj = new FileTextSearch();\n        $tplFindObj->setExtensions(array('tpl','css'));\n        $tplFindObj->setSearchKey($p_templateName);\n        $result = $tplFindObj->findReplace($Campsite['TEMPLATE_DIRECTORY']);\n        if (is_array($result) && sizeof($result) > 0) {\n                return $result[0];\n        }\n\n        if (pathinfo($p_templateName, PATHINFO_EXTENSION) == 'tpl') {\n            $p_templateName = ' ' . $p_templateName;\n        }\n        $tplFindObj->setSearchKey($p_templateName);\n        $result = $tplFindObj->findReplace($Campsite['TEMPLATE_DIRECTORY']);\n        if (is_array($result) && sizeof($result) > 0) {\n                return $result[0];\n        }\n        if ($tplFindObj->m_totalFound > 0) {\n            return true;\n        }\n\n        return false;\n    } // fn InUse\n\n\n    /**\n     * Get the relative path to the given file in the template directory.\n     * @return string\n     */\n    public static function GetPath($p_path, $p_filename)\n    {\n        $lookDir = \"/look\";\n\n        $p_path = str_replace(\"//\", \"/\", $p_path);\n\n        // Remove any path that occurs before the 'look' dir.\n        $p_path = strstr($p_path, $lookDir);\n\n        // Remove the 'look' dir if it occurs at the beginning of the string.\n        if (strncmp($p_path, $lookDir, strlen($lookDir)) == 0) {\n            $p_path = substr($p_path, strlen($lookDir));\n        }\n\n        // Remove beginning and trailing slashes\n        if ($p_path[0] == '/') {\n            $p_path = substr($p_path, 1);\n        }\n        if ($p_path[strlen($p_path) - 1] == '/') {\n            $p_path = substr($p_path, 0, strlen($p_path) - 1);\n        }\n\n        $p_filename = str_replace(\"//\", \"/\", $p_filename);\n\n        // Remove beginning slash\n        if ($p_filename[0] == '/') {\n            $p_filename = substr($p_filename, 1);\n        }\n\n        if (!empty($p_path)) {\n            $templatePath = $p_path . \"/\" . $p_filename;\n        } else {\n            $templatePath = $p_filename;\n        }\n        return $templatePath;\n    } // fn GetPath\n\n\n    /**\n     * Return the full path to the file.\n     *\n     * @param string $p_path\n     * \t\tPath of the file starting from the base template directory.\n     * @param string $p_filename\n     * @return string\n     */\n    public static function GetFullPath($p_path, $p_filename)\n    {\n        global $Campsite;\n        $fileFullPath = $Campsite['TEMPLATE_DIRECTORY'].$p_path.\"/\".$p_filename;\n        return $fileFullPath;\n    } // fn GetFullPath\n\n\n    /**\n     * Update the Name field for a template on Renaming/Moving.\n     *\n     * It is called before any UpdateStatus() when renaming/moving\n     * a template to avoid a new Id is set for the changed template.\n     *\n     * @param string $p_tplOrig\n     *\t\tThe original template Name\n     * @param string $p_tplNew\n     *\t\tThe new template Name\n     * @return mixed\n     */\n    public static function UpdateOnChange($p_tplOrig, $p_tplNew)\n    {\n        global $Campsite;\n        global $g_ado_db;\n\n        // Remove beginning slashes\n        $p_tplOrig = ltrim($p_tplOrig, '/');\n        $p_tplNew = ltrim($p_tplNew, '/');\n\n        if (is_file($Campsite['TEMPLATE_DIRECTORY'].\"/\".$p_tplNew)) {\n            $sql = \"SELECT * FROM Templates WHERE Name = '$p_tplOrig'\";\n            $row = $g_ado_db->GetRow($sql);\n            if (!$row) {\n                return false;\n            }\n            $id = $row['Id'];\n            $sql = \"UPDATE Templates SET Name = '$p_tplNew' WHERE Id = '$id'\";\n            $g_ado_db->Execute($sql);\n        }\n    } // fn UpdateOnChange\n\n\n    /**\n     * Sync the database with the filesystem.\n     * @return void\n     */\n    public static function UpdateStatus()\n    {\n        global $Campsite;\n        global $g_ado_db;\n\n        // check if each template record in the database has the corresponding file\n        $templates = self::GetAllTemplates(null, false);\n        foreach ($templates as $index=>$template) {\n            if (!$template->fileExists()) {\n                $g_ado_db->Execute(\"DELETE FROM Templates WHERE Id = \"\n                    . $template->m_data['Id']);\n            }\n        }\n\n        // insert new templates\n        // TODO there's some bug here maybe, you get a notice on this line cause that key is undefined\n        $rootDir = @$Campsite['TEMPLATE_DIRECTORY'];\n        $dirs[] = $rootDir;\n        while (($currDir = array_pop($dirs)) != \"\") {\n            if (!is_readable($currDir)) {\n                continue;\n            }\n            if (!$dirHandle = opendir($currDir)) {\n                continue;\n            }\n\n            while ($file = readdir($dirHandle)) {\n                $fullPath = $currDir . '/' . $file;\n                    if (!is_readable($fullPath)) {\n                        continue;\n                }\n                if ($file == \".\" || $file == \"..\") {\n                    continue;\n                }\n\n                $fileType = filetype($fullPath);\n                if ($fileType == \"dir\") {\n                    $dirs[] = $fullPath;\n                    continue;\n                }\n\n                if ($fileType != \"file\") { // ignore special files and links\n                    continue;\n                }\n\n                $relPath = substr($fullPath, strlen($rootDir) + 1);\n                $level = $relPath == \"\" ? 0 : substr_count($relPath, \"/\");\n                $sql = \"SELECT count(*) AS nr FROM Templates WHERE Name = '\" . $relPath . \"'\";\n                $existingTemplates = $g_ado_db->GetOne($sql);\n                if ($existingTemplates == 0) {\n                    $ending = substr($file, strlen($file) - 4);\n                    if ($ending != \".tpl\") { // ignore files that are not templates (end in .tpl)\n                        $sql = \"SELECT Id FROM TemplateTypes WHERE Name = 'nontpl'\";\n                        $nonTplTypeId = $g_ado_db->GetOne($sql);\n                        $sql = \"INSERT IGNORE INTO Templates (Name, Type, Level) \"\n                                    . \"VALUES('$relPath', \"\n                                        . \"$nonTplTypeId, \"\n                                        . \"$level)\";\n                    } else {\n                        $sql = \"INSERT IGNORE INTO Templates (Name, Level) \"\n                                    . \"VALUES('$relPath', \"\n                                        . \"$level)\";\n                    }\n                    $g_ado_db->Execute($sql);\n                }\n            }\n        }\n    } // fn UpdateStatus\n\n\n    /**\n     * Call this to upload a template file.  Note: Template::UpdateStatus()\n     * will be called automatically for you if this is successful.\n     *\n     * @param string $p_fileVarName\n     * \t\tName of the variable in the $_FILES global variable.\n     * @param string $p_charset\n     * \t\tDesired character set of the file.\n     * @param string $p_baseUpload\n     * \t\tDirectory path to add to the base template directory.\n     * @param string $p_desiredName\n     * \t\tDesired name of the file.\n     *\n     * @return mixed\n     * \t\tTRUE on success, PEAR_Error on failure.\n     */\n    public static function OnUpload($f_fileVarName, $p_baseUpload,\n                                    $p_desiredName = null, $p_charset = null)\n    {\n        global $Campsite;\n        $p_baseUpload = $Campsite['TEMPLATE_DIRECTORY'].$p_baseUpload;\n\n        if (!isset($_FILES[$f_fileVarName]) || !isset($_FILES[$f_fileVarName]['name'])) {\n            return new PEAR_Error(\"Invalid parameters given to Template::OnUpload()\");\n        }\n\n        if (is_null($p_desiredName)) {\n            $fileName = $_FILES[$f_fileVarName]['name'];\n        } else {\n            $fileName = $p_desiredName;\n        }\n\n        // remove existing file if one exists\n        $newname = $p_baseUpload . DIR_SEP . $fileName;\n        if (file_exists($newname) && !is_dir($newname)) {\n            if (!unlink($newname)) {\n                return new PEAR_Error(camp_get_error_message(CAMP_ERROR_DELETE_FILE, $newname), CAMP_ERROR_DELETE_FILE);\n            }\n        }\n\n        $fType = $_FILES[$f_fileVarName]['type'];\n        if (!is_null($p_charset)) {\n            // original file, destination file, file type, file charset\n            $success = self::ChangeCharset($_FILES[$f_fileVarName]['tmp_name'], $newname, $fType, $p_charset);\n        } else {\n            $success = move_uploaded_file($_FILES[$f_fileVarName]['tmp_name'], $newname);\n            if (!$success) {\n                return new PEAR_Error(camp_get_error_message(CAMP_ERROR_CREATE_FILE, $newname), CAMP_ERROR_CREATE_FILE);\n            }\n        }\n\n        if ($success) {\n            self::UpdateStatus();\n        }\n        return $success;\n    } // fn OnUpload\n\n\n    /**\n     * @param p_tmpFile\n     * @param p_newFile\n     * @param p_charset\n     *\n     * @return\n     */\n    public static function ProcessFile($p_tmpFile, $p_newFile, $p_charset = null)\n    {\n        // remove existing file if one exists\n        if (file_exists($p_newFile) && !is_dir($p_newFile)) {\n            if (!unlink($p_newFile)) {\n                return new PEAR_Error(camp_get_error_message(CAMP_ERROR_DELETE_FILE, $p_newFile), CAMP_ERROR_DELETE_FILE);\n            }\n        }\n\n        $fileName = basename($p_newFile);\n        $fileType = @mime_content_type($p_tmpFile);\n        if (!empty($p_charset)) {\n            if (strncmp($fileType, 'text', 4) == 0) {\n                $success = self::ChangeCharset($p_tmpFile, $p_newFile, $fileType, $p_charset);\n            } else {\n                $success = rename($p_tmpFile, $p_newFile);\n            }\n            if (PEAR::isError($success) || !$success) {\n                return $success;\n            }\n        } else {\n            $success = rename($p_tmpFile, $p_newFile);\n            if (!$success) {\n                return new PEAR_Error(camp_get_error_message(CAMP_ERROR_CREATE_FILE, $fileName), CAMP_ERROR_CREATE_FILE);\n            }\n        }\n\n        self::UpdateStatus();\n\n        return true;\n    } // fn ProcessFile\n\n\n    /**\n     * @param p_oFile\n     * @param p_dFile\n     * @param p_type\n     * @param p_charset\n     *\n     * @return\n     */\n    public static function ChangeCharset($p_oFile, $p_dFile, $p_type, $p_charset)\n    {\n        if (strncmp($p_type, 'text', 4) == 0) {\n            $origFile = $p_dFile . '.orig';\n            $success = rename($p_oFile, $origFile);\n            if ($success) {\n                $command = 'iconv -f ' . escapeshellarg($p_charset) . ' -t UTF-8 '\n                    . escapeshellarg($origFile) . ' > ' . escapeshellarg($p_dFile);\n                system($command, $status);\n                if ($status == 0) {\n                    $success = unlink($origFile);\n                } else {\n                    $success = false;\n                    unlink($p_dFile);\n                    return new PEAR_Error(\"Unable to convert the character set of the file.\");\n                }\n            } else {\n                return new PEAR_Error(camp_get_error_message(CAMP_ERROR_CREATE_FILE, $origFile), CAMP_ERROR_CREATE_FILE);\n            }\n        }\n\n        return $success;\n    } // fn ChangeCharset\n\n\n    /**\n     * @param array $p_sqlOptions\n     * @param boolean $p_update\n     * @param boolean $p_useFilter\n     *\t\tfilter templates matching setting in SystemPreferences\n     * @param boolean $p_strict\n     *      if true, retrieves only template (tpl) files\n     *\n     * @return array\n     */\n    public static function GetAllTemplates($p_sqlOptions = null, $p_update = true, $p_useFilter = false,\n                                           $p_strict = false)\n    {\n        if ($p_update) {\n            self::UpdateStatus();\n        }\n        $queryStr = 'SELECT * FROM Templates';\n\n        if ($p_strict) {\n            $queryStr .= ' WHERE Type < 5';\n        }\n        if ($p_useFilter && $rexeg = self::GetTemplateFilterRegex(true)) {\n            $queryStr .= ($p_strict == false) ? ' WHERE ' : ' AND ';\n            $queryStr .= 'Name NOT REGEXP \"'.self::GetTemplateFilterRegex(true).'\"';\n        }\n\n        if (!is_null($p_sqlOptions)) {\n            $queryStr = DatabaseObject::ProcessOptions($queryStr, $p_sqlOptions);\n        } else {\n            $queryStr .= ' ORDER BY Level ASC, Name ASC';\n        }\n        $templates = DbObjectArray::Create('Template', $queryStr);\n        return $templates;\n    } // fn GetAllTemplates\n\n\n    /**\n     * Returns an array containing the directories tree for the given path.\n     *\n     * @param array $p_folders\n     * @return array $p_folders\n     */\n    public static function GetAllFolders($p_folders)\n    {\n        global $Campsite;\n\n        $path = $Campsite['TEMPLATE_DIRECTORY'] . '/';\n        if ($dirHandle = opendir($path)) {\n            $i = 0;\n            while (($file = readdir($dirHandle)) !== false) {\n                if ($file != '.' && $file != '..' && is_dir($path . $file)) {\n                    $i++;\n                    $p_folders[$i] = $path . $file;\n                }\n            }\n        }\n        closedir($dirHandle);\n\n        $i = count($p_folders);\n        foreach ($p_folders as $folder) {\n            if ($subDirHandle = opendir($folder)) {\n                while (($file = readdir($subDirHandle)) !== false) {\n                    $pathTo = $folder. '/' . $file;\n                    if ($file != '.' && $file != '..' &&\n                            is_dir($pathTo) &&\n                            !in_array($pathTo, $p_folders)) {\n                        $i++;\n                        $p_folders[$i] = $pathTo;\n                        $p_folders = self::GetAllFolders($p_folders);\n                    }\n                }\n            }\n            closedir($subDirHandle);\n        }\n        sort($p_folders);\n        return $p_folders;\n    } // fn GetAllFolders\n\n\n    /**\n     * Deletes a template file.\n     * It does not take care on database info upgrade because\n     * it trusts of the cool Template::UpdateStatus() function.\n     *\n     * @return mixed\n     */\n    public function delete() {\n        global $g_user;\n\n        $rootDir = '/';\n        if ($this->exists()) {\n            $Path = dirname($rootDir . $this->getName());\n            $Name = basename($this->getName());\n            $fileFullPath = $this->getFullPath($Path, $Name);\n            if (!self::InUse($this->getName())) {\n                if (unlink($fileFullPath)) {\n                    return true;\n                }\n            }\n        }\n        return false;\n    } // fn delete\n\n\n    /**\n     * Moves a template from current folder to destination folder.\n     * It does not take care on database info upgrade because\n     * it trusts of the cool Template::UpdateStatus() function.\n     *\n     * @param string $p_current_folder\n     * @param string $p_destination_folder\n     * @return bool true on succes or false on failure\n     */\n    public function move($p_current_folder, $p_destination_folder) {\n        global $Campsite;\n        global $g_user;\n\n        if (self::IsValidPath($p_current_folder) &&\n            self::IsValidPath($p_destination_folder)) {\n            $currentFolder = ($p_current_folder == '/') ? '' : $p_current_folder;\n            $destinationFolder = ($p_destination_folder == '/') ? '' : $p_destination_folder;\n            $currentFullPath = $Campsite['TEMPLATE_DIRECTORY']\n                        . $currentFolder\n                        . '/' . basename($this->getName());\n            $destinationFullPath = $Campsite['TEMPLATE_DIRECTORY']\n                        . $destinationFolder\n                        . '/' . basename($this->getName());\n            if (rename($currentFullPath, $destinationFullPath)) {\n                return true;\n            }\n        }\n        return false;\n    } // fn move\n\n\n    /**\n     * Return an regular expression to filter template lists\n     *\n     * @param boolean $p_sql indicates usage for sql query\n     * @return string\n     */\n    static public function GetTemplateFilterRegex($p_sql = false) {\n        $filters = array();\n        $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n\n        if ($filterStr = $preferencesService->TemplateFilter) {\n          foreach (explode(',', $filterStr) as $filter) {\n\n\n\n\n               if ($p_sql) {\n                  $filter = preg_quote(trim($filter), '/');       // quote the filter\n                  $filter = str_replace('\\\\', '\\\\\\\\', $filter);\n                  $filter = str_replace('\\\\*', '.*', $filter);    // * becomes .*\n                  $filter = str_replace('\\\\?', '.', $filter);     //  becomes .\n                  $filter1 = \"(^$filter$)\";\n                  $filters[] = $filter1;\n                  $filter2 = \"(/$filter$)\";\n                  $filters[] = $filter2;\n                  $filter1 = \"(^$filter/)\";\n                  $filters[] = $filter1;\n                  $filter2 = \"(/$filter/)\";\n                  $filters[] = $filter2;\n              } else {\n                  $filter = preg_quote(trim($filter), '/');   // quote the filter\n                  $filter = str_replace('\\\\*', '.*', $filter); // * becomes .*\n                  $filter = str_replace('\\\\?', '.', $filter);     //  becomes .\n                  $filter = \"(^$filter$)\";\n                  $filters[] = $filter;\n              }\n          }\n        }\n        $filterRegex = implode('|', $filters);\n\n        return $filterRegex;\n    }\n\n} // class Template\n\n?>\n"
  },
  {
    "path": "newscoop/classes/TemplateConverter.php",
    "content": "<?php\n/**\n * @package Newscoop\n *\n * @author Holman Romero <holman.romero@gmail.com>\n * @copyright 2008 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\n\n$_docRoot = dirname(dirname(__FILE__));\nrequire_once('PEAR.php');\nrequire_once($_docRoot.'/classes/TemplateConverterHelper.php');\n\ndefine('CS_OPEN_TAG', '{{');\ndefine('CS_CLOSE_TAG', '}}');\n\n\n/**\n * Class TemplateConverter\n */\nclass TemplateConverter\n{\n    /**\n     * @var string\n     */\n    private $m_templateFileName = null;\n\n    /**\n     * @var string\n     */\n    private $m_templatePathDirectory = null;\n\n    /**\n     * @var string\n     */\n    private $m_templateDirectory = null;\n\n    /**\n     * @var string\n     */\n    protected $m_templateOriginalContent = null;\n\n    /**\n     * @var string\n     */\n    protected $m_templateContent = null;\n\n    /**\n     * @var array\n     */\n    private $m_oldTags = array();\n\n\n    /**\n     * Class constructor\n     */\n    public function __construct() {}\n\n\n    /**\n     * Reads the original template file content.\n     *\n     * @param string $p_filePath\n     *      Full path to the template file\n     *\n     * @return boolean\n     *      True on success, false on failure\n     */\n    public function read($p_filePath)\n    {\n        if (!file_exists($p_filePath)) {\n            return false;\n        }\n\n        if (strtolower(substr($p_filePath, -4)) != '.tpl'\n        && strtolower(substr($p_filePath, -4)) != '.htm'\n        && strtolower(substr($p_filePath, -5)) != '.html'\n        ) {\n            return false;\n        }\n\n        // sets the template full path directory and template file name\n        $this->m_templatePathDirectory = dirname($p_filePath);\n        $this->m_templateFileName = basename($p_filePath);\n        // sets the relative template directory, if any\n        $tplDirPos = strpos($this->m_templatePathDirectory, 'templates/');\n        $tplDirLength = strlen('templates/');\n        if ($tplDirPos && $tplDir = substr($this->m_templatePathDirectory, $tplDirPos + $tplDirLength)) {\n            $this->m_templateDirectory = $tplDir;\n        } else {\n            $this->m_templateDirectory = null;\n        }\n\n        // reads the template file content\n        if (!($this->m_templateOriginalContent = @file_get_contents($p_filePath))) {\n            return false;\n        }\n\n        return true;\n    } // fn read\n\n\n    /**\n     * Parses the original template file and replaces old syntax with new one.\n     *\n     * @return bool\n     */\n    public function parse()\n    {\n        // gets all the tags from the original template file\n        $pattern = '/<!\\*\\*\\s*([^>]+)>/';\n        $this->m_oldTags = $this->getAllTagsFromTemplate($pattern);\n        if ($this->m_oldTags == false || sizeof($this->m_oldTags) == 0) {\n            return false;\n        }\n\n        // sets the tags content (without delimeters)\n        $oldTagsContent = $this->m_oldTags[1];\n        // inits patterns and replacements arrays\n        $patternsArray = array();\n        $replacementsArray = array();\n        foreach($oldTagsContent as $oldTagContent) {\n            // gets single words from tag content (options string)\n            $optArray = $this->parseOptionsString($oldTagContent);\n            // finds out new tag syntax based on given tag content\n            $newTagContent = $this->getNewTagContent($optArray, $oldTagContent);\n            if (is_null($newTagContent)) {\n                continue;\n            }\n\n            // sets pattern and replacement strings\n            $pattern = '/<!\\*\\*\\s*'.@preg_quote($oldTagContent).'\\s*>/';\n            if ($newTagContent == 'DISCARD_SENTENCE') {\n                $replacement = '';\n            } else {\n                $replacement = CS_OPEN_TAG.' '.$newTagContent.' '.CS_CLOSE_TAG;\n            }\n            $patternsArray[] = $pattern;\n            $replacementsArray[] = $replacement;\n        }\n\n        // sets pattern and replacement for get_img script\n        $patternsArray[] = \"/cgi-bin\\/get_img/\";\n        $replacementsArray[] = \"get_img.php\";\n\n        // replaces all patterns with corresponding replacements\n        $this->m_templateContent = @preg_replace($patternsArray,\n                                                 $replacementsArray,\n                                                 $this->m_templateOriginalContent);\n\n        // replaces templates path properly\n        $pattern = '/\\/look\\/(.*?)[^\"\\']+/';\n        $oldTplTags = $this->getAllTagsFromTemplate($pattern);\n        if ($oldTplTags == false || sizeof($oldTplTags) == 0) {\n            return false;\n        }\n        foreach($oldTplTags[0] as $oldTplTag) {\n            if (!empty($oldTplTag)) {\n                //$pattern = '/(.*?)[^\\.tpl]$/';\n                $pattern = '/\\.tpl/';\n                preg_match($pattern, $oldTplTag, $m);\n                if (is_array($m) && !empty($m[0])) {\n                    $replacement = '/tpl/';\n                } else {\n                    $replacement = '/templates/';\n                }\n                $pattern = '/\\/look\\//';\n                $this->m_templateContent = @preg_replace($pattern,\n                                                         $replacement,\n                                                         $this->m_templateContent,\n                                                         1);\n            }\n        }\n\n        return true;\n    } // fn parse\n\n\n    /**\n     * Writes the new template syntax to the output file.\n     * Output file might be either the given as parameter or the original file.\n     *\n     * @param string $p_templateFileName\n     *      File name for the template after conversion,\n     *      default is the original template file name\n     *\n     * @return boolean\n     *      True on success, false on failure\n     */\n    public function write($p_templateFileName = null)\n    {\n        // sets the output file to write to\n        if (!is_null($p_templateFileName)) {\n            $output = $this->m_templatePathDirectory.'/'.$p_templateFileName;\n        } else {\n            $output = $this->m_templatePathDirectory.'/'.$this->m_templateFileName;\n        }\n\n\n        if ((file_exists($output) && !is_writable($output))\n                 || !is_writable($this->m_templatePathDirectory)) {\n            return new PEAR_Error('Could not write template file');\n        }\n\n        if (@file_put_contents($output, $this->m_templateContent) == false) {\n            return new PEAR_Error('Could not write template file');\n        }\n\n        return true;\n    } // fn write\n\n\n    /**\n     * Gets all the tags from the source template.\n     *\n     * @return array $matches\n     */\n    private function getAllTagsFromTemplate($p_pattern)\n    {\n        preg_match_all($p_pattern, $this->m_templateOriginalContent, $matches);\n        return $matches;\n    } // fn getAllTagsFromTemplate\n\n\n    /**\n     * Parses the options string and returns an array of words.\n     *\n     * @param string $p_optionsString\n     *\n     * @return array\n     */\n    private function parseOptionsString($p_optionsString)\n    {\n        if (empty($p_optionsString)) {\n            return array();\n        }\n\n        $words = array();\n        $escaped = false;\n        $lastWord = '';\n        $quotedString = '';\n        $isOpenQuote = false;\n        foreach (str_split($p_optionsString) as $char) {\n            if ($char == '\"' && !$isOpenQuote) {\n                $isOpenQuote = true;\n                $quotedString .= $char;\n            } elseif (strlen($quotedString) > 0) {\n                $quotedString .= $char;\n                if ($char == '\"') {\n                    $words[] = trim(trim($quotedString, '\"'));\n                    $quotedString = '';\n                    $isOpenQuote = false;\n                }\n            } else {\n                if (preg_match('/[\\s]/', $char) && !$escaped) {\n                    if (!empty($lastWord)) {\n                        $words[] = $lastWord;\n                        $lastWord = '';\n                    }\n                } elseif ($char == \"\\\\\" && !$escaped) {\n                    $escaped = true;\n                } else {\n                    $lastWord .= $char;\n                    $escaped = false;\n                }\n            }\n        }\n        if (strlen($lastWord) > 0) {\n            $words[] = $lastWord;\n        }\n\n        return $words;\n    } // fn parseOptionsString\n\n\n    /**\n     * @param array $p_optArray\n     */\n    private function getNewTagContent($p_optArray, $p_oldTagContent = null)\n    {\n        if (!is_array($p_optArray) || sizeof($p_optArray) < 1) {\n            return;\n        }\n\n        $newTag = '';\n        $p_optArray[0] = strtolower($p_optArray[0]);\n\n        if ($p_optArray[0] == 'list'|| $p_optArray[0] == 'foremptylist'\n                || strpos($p_optArray[0], 'endlist') !== false) {\n            $newTag = TemplateConverterListObject::GetNewTagContent($p_optArray);\n        } elseif ($p_optArray[0] == 'if' || $p_optArray[0] == 'endif') {\n            $newTag = TemplateConverterIfBlock::GetNewTagContent($p_optArray);\n        } else {\n            if (in_array($p_optArray[0], array('uri','uripath','url','urlparameters'))) {\n                $newTag = TemplateConverterHelper::GetNewTagContent($p_optArray);\n            } else {\n                return TemplateConverterHelper::GetNewTagContent($p_optArray, $this->m_templateDirectory);\n            }\n        }\n\n        if (strlen($newTag) > 0) {\n            $pattern = '/<!\\*\\*\\s*'.@preg_quote($p_oldTagContent).'\\s*>/';\n            $replacement = CS_OPEN_TAG.' '.$newTag.' '.CS_CLOSE_TAG;\n            $this->m_templateOriginalContent = @preg_replace($pattern,\n                                                             $replacement,\n                                                             $this->m_templateOriginalContent,\n                                                             1);\n            return null;\n        }\n\n        return false;\n    } // fn getNewTagContent\n\n} // class TemplateConverter\n\n?>\n"
  },
  {
    "path": "newscoop/classes/TemplateConverterHelper.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Holman Romero <holman.romero@gmail.com>\n * @copyright 2008 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\n\n$_docRoot = dirname(dirname(__FILE__));\nrequire_once($_docRoot.'/classes/TemplateConverterListObject.php');\nrequire_once($_docRoot.'/classes/TemplateConverterIfBlock.php');\n\ndefine('CS_OBJECT', '$campsite');\n\n\n/**\n * Class TemplateConverterHelper\n */\nclass TemplateConverterHelper\n{\n    /**\n     * @var array\n     */\n    private static $m_exceptions = array(\n        'article' => array(\n            'date' => array(\n                'attribute' => 'date'),\n            'type' => array(\n                'attribute' => 'type_name'),\n            'mon_nr' => array(\n                'attribute' => 'mon'),\n            'wday_nr' => array(\n                'attribute' => 'wday'),\n            'upload_date' => array(\n                'attribute' => 'creation_date'),\n            'uploaddate' => array(\n                'attribute' => 'creation_date'),\n            'publishdate' => array(\n                'attribute' => 'publish_date')\n            ),\n        'articlecomment' => array(\n            'readeremail' => array(\n                'new_object' => 'comment',\n                'attribute' => 'reader_email'),\n            'readeremailobfuscated' => array(\n                'new_object' => 'comment',\n                'attribute' => 'reader_email|obfuscate_email'),\n            'submitdate' => array(\n                'new_object' => 'comment',\n                'attribute' => 'submit_date'),\n            'readeremailpreview' => array(\n                'new_object' => 'preview_comment_action',\n                'attribute' => 'reader_email'),\n            'readeremailpreviewobfuscated' => array(\n                'new_object' => 'preview_comment_action',\n                'attribute' => 'reader_email|obfuscate_email'),\n            'subjectpreview' => array(\n                'new_object' => 'preview_comment_action',\n                'attribute' => 'subject'),\n            'contentpreview' => array(\n                'new_object' => 'preview_comment_action',\n                'attribute' => 'content'),\n            'count' => array(\n                'new_object' => 'article',\n                'attribute' => 'comment_count'),\n            'submiterror' => array(\n                'new_object' => 'submit_comment_action',\n                'attribute' => 'error_message'),\n            'submiterrorno' => array(\n                'new_object' => 'submit_comment_action',\n                'attribute' => 'error_code')\n            ),\n        'articleattachment' => array(\n            'extension' => array(\n                'new_object' => 'attachment',\n                'attribute' => 'extension'),\n            'description' => array(\n                'new_object' => 'attachment',\n                'attribute' => 'description'),\n            'filename' => array(\n                'new_object' => 'attachment',\n                'attribute' => 'file_name'),\n            'mimetype' => array(\n                'new_object' => 'attachment',\n                'attribute' => 'mime_type'),\n            'sizeb' => array(\n                'new_object' => 'attachment',\n                'attribute' => 'size_b'),\n            'sizekb' => array(\n                'new_object' => 'attachment',\n                'attribute' => 'size_kb'),\n            'sizemb' => array(\n                'new_object' => 'attachment',\n                'attribute' => 'size_mb')\n            ),\n        'audioattachment' => array(\n            'tracknum' => array(\n                'new_object' => 'audioclip',\n                'attribute' => 'track_no'),\n            'disknum' => array(\n                'new_object' => 'audioclip',\n                'attribute' => 'disk_no')\n            ),\n        'image' => array(\n            'number' => array(\n                'attribute' => 'article_index'),\n            'mon_nr' => array(\n                'attribute' => 'mon'),\n            'wday_nr' => array(\n                'attribute' => 'wday')\n            ),\n        'issue' => array(\n            'date' => array(\n                'attribute' => 'date'),\n            'mon_nr' => array(\n                'attribute' => 'mon'),\n            'wday_nr' => array(\n                'attribute' => 'wday'),\n            'iscurrent' => array(\n                'attribute' => 'is_current')\n            ),\n        'language' => array(\n            'englname' => array (\n                'attribute' => 'english_name')\n            ),\n        'login' => array(\n            'error' => array(\n                'new_object' => 'login_action',\n                'attribute' => 'error_message')\n            ),\n        'search' => array(\n            'error' => array(\n                'new_object' => 'search_articles_action',\n                'attribute' => 'error_message'),\n            'keywords' => array(\n                'new_object' => 'search_articles_action',\n                'attribute' => 'search_keywords')\n            ),\n        'subscription' => array(\n            'expdate' => array(\n                'new_object' => 'user->subscription',\n                'attribute' => 'expiration_date'),\n            'unit' => array(\n                'new_object' => 'publication',\n                'attribute' => 'subscription_time_unit'),\n            'unitcost' => array(\n                'new_object' => 'publication',\n                'attribute' => 'subscription_unit_cost'),\n            'currency' => array(\n                'new_object' => 'publication',\n                'attribute' => 'subscription_currency'),\n            'trialtime' => array(\n                'new_object' => 'publication',\n                'attribute' => 'subscription_trial_time'),\n            'paidtime' => array(\n                'new_object' => 'publication',\n                'attribute' => 'subscription_paid_time'),\n            'error' => array(\n                'new_object' => 'edit_subscription_action',\n                'attribute' => 'error_message')\n            ),\n        'user' => array(\n            'straddress' => array (\n                'attribute' => 'str_address'),\n            'phone2' => array(\n                'attribute' => 'second_phone'),\n            'postalcode' => array(\n                'attribute' => 'postal_code'),\n            'addok' => array(\n                'attribute' => 'add_ok'),\n            'modifyok' => array(\n                'attribute' => 'modify_ok'),\n            'adderror' => array(\n                'new_object' => 'edit_user_action',\n                'attribute' => 'error_message'),\n            'modifyerror' => array(\n                'new_object' => 'edit_user_action',\n                'attribute' => 'error_message')\n            )\n        );\n\n    /**\n     * @var array\n     */\n    private static $m_envObjects = array(\n        'language','publication','issue','section','article',\n        'topic','articlecomment'\n        );\n\n    /**\n     * @var array\n     */\n    private static $m_printEx = array(\n        'articleattachment' => 'attachment',\n        'articlecomment' => 'comment',\n        'audioattachment' => 'audioclip'\n        );\n\n    /**\n     * @var array\n     */\n    private static $m_urXFuncs = array(\n        'uri','uripath','url','urlparameters','formparameters');\n\n    /**\n     * @var array\n     */\n    private static $m_simpleForms = array('login','search','user');\n\n    /**\n     * @var array\n     */\n    private static $m_endForms = array(\n        'endarticlecomment','endlogin','endsearch', 'endsubscription','enduser'\n        );\n\n    /**\n     * @var array\n     */\n    private static $m_operators = array(\n        'is' => '==',\n        'not' => '!=',\n        'greater' => '>',\n        'greater_equal' => '>=',\n        'smaller' => '<',\n        'smaller_equal' => '<='\n        );\n\n    /**\n     * @var string\n     */\n    private static $m_withArticleType = '';\n\n    /**\n     * @var string\n     */\n    private static $m_withBodyField = '';\n\n\n    /**\n     *\n     */\n    public static function GetWithArticletype()\n    {\n        return self::$m_withArticleType;\n    } // fn GetWithArticleType\n\n\n    /**\n     *\n     */\n    public static function GetWithBodyField()\n    {\n        return self::$m_withBodyField;\n    } // fn GetWithBodyField\n\n\n    /**\n     * @param array $p_optArray\n     */\n    public static function GetNewTagContent($p_optArray, $p_tplPath = null)\n    {\n        if (!is_array($p_optArray) || sizeof($p_optArray) < 1) {\n            continue;\n        }\n\n        $newTag = '';\n        $p_optArray[0] = strtolower($p_optArray[0]);\n\n        // <!** Print statement ... > to {{ $campsite->statement ... }}\n        if ($p_optArray[0] == 'print') {\n            return self::BuildPrintStatement($p_optArray);\n        }\n\n        // Environmental Objects\n        // <!** Publication name ... > to {{ set_publication name= ... }}\n        // <!** Issue off ... > to {{ unset_issue }}\n        if (in_array($p_optArray[0], self::$m_envObjects)) {\n            return self::BuildEnvironmentalStatement($p_optArray);\n        }\n\n        // URI and URL Functions\n        // <!** URI> to {{ uri }}\n        // <!** URLParameters section> to {{ urlparameters options=\"section\" }}\n        if (in_array($p_optArray[0], self::$m_urXFuncs)) {\n            return self::BuildUrxStatement($p_optArray);\n        }\n\n        // User, Search and Login Forms\n        // <!** Search do-search.tpl Go>\n        // to\n        // {{ search_form template=\"do-search.tpl\" submit_button=\"Go\" }}\n        if (in_array($p_optArray[0], self::$m_simpleForms)) {\n            return self::BuildSimpleFormStatement($p_optArray);\n        }\n\n        // Article Comment Form\n        // <!** ArticleCommentForm ArtCommForm.tpl Send Preview>\n        // to\n        // {{ article_comment_form template=\"ArtCommForm.tpl\"\n        //    submit_button=\"Send\" preview_button=\"Preview\" }}\n        if ($p_optArray[0] == 'articlecommentform') {\n            return self::BuildArticleCommentFormStatement($p_optArray);\n        }\n\n        // Subscription Comment Form\n        // <!** Subscription by_section do-subsc.tpl Subscribe>\n        // to\n        // {{ subscription_form type=\"by_section\" template=\"do-subsc.tpl\"\n        //    submit_button=\"Subscribe\" }}\n        if ($p_optArray[0] == 'subscription') {\n            return self::BuildSubscriptionFormStatement($p_optArray);\n        }\n\n        // End forms\n        // <!** EndSearch> to {{ /search_form }}\n        if (in_array($p_optArray[0], self::$m_endForms)) {\n            return self::BuildEndFormStatement($p_optArray);\n        }\n\n        // Edit form fields\n        // <!** Edit Login uname>\n        // <!** Edit Search keywords>\n        if ($p_optArray[0] == 'edit') {\n            return self::BuildEditStatement($p_optArray);\n        }\n\n        // Select form fields\n        // <!** Select Login RememberLogin>\n        // to\n        // {{ camp_select object=\"login\" attribute=\"rememberlogin\" }}\n        //\n        // <!** Select User gender male female>\n        // to\n        // {{ camp_select object=\"user\" attribute=\"gender\" male_name=\"M\" female_name=\"M\" }}\n        if ($p_optArray[0] == 'select') {\n            return self::BuildSelectStatement($p_optArray);\n        }\n\n        // HTML Encoding\n        // <!** HTMLEncoding> to {{ enable_html_encoding }}\n        // <!** HTMLEncoding off> to {{ disable_html_encoding }}\n        if ($p_optArray[0] == 'htmlencoding') {\n            return self::BuildHTMLEncodingStatement($p_optArray);\n        }\n\n        if ($p_optArray[0] == 'with' || $p_optArray[0] == 'endwith') {\n            return self::BuildWithStatement($p_optArray);\n        }\n\n        switch ($p_optArray[0]) {\n        // <!** Date ... > to {{ $smarty.now|camp_date_format:\" ... \" }}\n        case 'date':\n            $newTag = '$smarty.now|camp_date_format:\"' . $p_optArray[1] . '\"';\n            break;\n        // <!** include header.tpl> to {{ include file=\"header.tpl\" }}\n        // <!** include article.tpl> to {{ include file=\"news/article.tpl\" }}\n        case 'include':\n            $filePath = (!is_null($p_tplPath)) ? $p_tplPath.'/'.$p_optArray[1]\n                : $p_optArray[1];\n            $newTag = 'include file=\"' . $filePath . '\"';\n            break;\n        // <!** local> to {{ local }}\n        case 'local':\n            $newTag = 'local';\n            break;\n        // <!** endLocal> to {{ /local }}\n        case 'endlocal':\n            $newTag = '/local';\n            break;\n        // <!** else> to {{ /else }}\n        case 'else':\n            $newTag = 'else';\n            break;\n        }\n        \n        return $newTag;\n    } // fn GetNewTagContent\n\n\n    /**\n     * @param array $p_optArray\n     *\n     * @return string $newTag\n     */\n    public static function BuildPrintStatement($p_optArray)\n    {\n        $newTag = CS_OBJECT;\n        $object = strtolower($p_optArray[1]);\n        if (array_key_exists($object, self::$m_exceptions)\n                && array_key_exists(strtolower($p_optArray[2]), self::$m_exceptions[$object])) {\n            $e = self::$m_exceptions[$object][strtolower($p_optArray[2])];\n            $newTag .= (isset($e['new_object'])) ? '->'.$e['new_object'] : '->'.strtolower($p_optArray[1]);\n            $newTag .= (isset($e['attribute'])) ? '->'.$e['attribute'] : '';\n            if ($e['attribute'] == 'date' || $e['attribute'] == 'creation_date'\n                    || $e['attribute'] == 'publish_date') {\n                $newTag.= (isset($p_optArray[3])) ? '|camp_date_format:\"'.$p_optArray[3].'\"' : '';\n            }\n        } elseif ($object == 'captcha') {\n            $newTag = 'captcha_image_link';\n        } else {\n            for($i = 1; $i < sizeof($p_optArray); $i++) {\n                if (array_key_exists(strtolower($p_optArray[$i]), self::$m_printEx)) {\n                    $p_optArray[$i] = self::$m_printEx[strtolower($p_optArray[$i])];\n                }\n                if ($object == 'article' && $i > 2 && $i == (sizeof($p_optArray) - 1)\n                && strstr($p_optArray[$i], '%') !== false) {\n                    // date/time format string\n                    $newTag .= '|camp_date_format:\"'.$p_optArray[$i].'\"';\n                } elseif ($p_optArray[$i] == 'image' && is_numeric($p_optArray[$i+1])) {\n                    $newTag .= '->article->' . strtolower($p_optArray[$i]) . $p_optArray[$i+1];\n                    $i += 1;\n                } elseif ($object == 'article'\n                && strtolower($p_optArray[$i]) == 'firstparagraph') {\n                    $newTag .= '->first_paragraph';\n                } else {\n                    $newTag .= '->' . strtolower($p_optArray[$i]);\n                }\n            }\n        }\n        \n        return $newTag;    \n    } // fn BuildPrintStatement\n\n\n    /**\n     * @param array $p_optArray\n     *\n     * @return string $newTag\n     */\n    public static function BuildEnvironmentalStatement($p_optArray)\n    {\n        if (strtolower($p_optArray[1]) == 'off') {\n            if ($p_optArray[0] == 'articlecomment') {\n                $p_optArray[0] = 'comment';\n            }\n            $newTag = 'unset_' . $p_optArray[0];\n        } else {\n            if (strtolower($p_optArray[1]) == 'current') {\n                $newTag = 'set_current_'.$p_optArray[0];\n            } elseif (strtolower($p_optArray[1]) == 'default') {\n                $newTag = 'set_default_'.$p_optArray[0];\n            } else {\n                $newTag = 'set_' . $p_optArray[0];\n                if ($p_optArray[0] == 'language') {\n                    $newTag.= ' name=\"' . strtolower($p_optArray[1]) . '\"';\n                } else {\n                    if (preg_match('/ /', $p_optArray[1])) {\n                        $p_optArray[1] = '\"'.$p_optArray[1].'\"';\n                    }\n                    $newTag.= (isset($p_optArray[1])) ? ' ' . $p_optArray[1] : '';\n                    $newTag.= (isset($p_optArray[2])) ? '=\"' . $p_optArray[2] . '\"' : '';\n                }\n            }\n        }\n\n        return $newTag;\n    } // fn BuildEnvironmentalStatement\n\n\n    /**\n     * @param array $p_optArray\n     *\n     * @return string $newTag\n     */\n    public static function BuildUrxStatement($p_optArray)\n    {\n        $newTag = $p_optArray[0];\n        $ifBlockStack = TemplateConverterIfBlock::GetIfBlockStack();\n        $ifBlockStackSize = sizeof($ifBlockStack);\n        if ($ifBlockStackSize > 0) {\n            $option = '';\n            $idx = $ifBlockStackSize - 1;\n            switch($ifBlockStack[$idx]->getIfBlock()) {\n            case 'nextitems':\n                $option = 'next_items'; break;\n            case 'previous_items':\n                $option = 'previous_items'; break;\n            case 'nextsubtitles':\n                $withField = self::GetWithBodyField();\n                $option = 'next_subtitle';\n                $option.= (strlen($withField) > 0) ? ' '.$withField : '';\n                break;\n            case 'prevsubtitles':\n                $withField = self::GetWithBodyField();\n                $option = 'previous_subtitle';\n                $option.= (strlen($withField) > 0) ? ' '.$withField : '';\n                break;\n            }\n            $newTag.= (strlen($option) > 0) ? ' options=\"'.$option.'\"' : '';\n        }\n\n        if (sizeof($p_optArray) > 1) {\n            $newTag.= ' options=\"';\n            for ($x = 1; $x < sizeof($p_optArray); $x++) {\n                $newTag.= ($x > 1) ? ' ' : '';\n                $newTag.= strtolower($p_optArray[$x]);\n            }\n            $newTag.= '\"';\n        }\n\n        return $newTag;\n    } // fn BuildUrxStatement\n\n\n    /**\n     * @param array $p_optArray\n     *\n     * @return string $newTag\n     */\n    public static function BuildSimpleFormStatement($p_optArray)\n    {\n        $newTag = $p_optArray[0] . '_form';\n        if ($p_optArray[0] == 'user') {\n            $tmpArr = array();\n            $tmpArr[0] = $p_optArray[0];\n            for ($i = 1; $i < sizeof($p_optArray); $i++) {\n                if (isset($p_optArray[$i+1])) {\n                    $tmpArr[$i] = $p_optArray[$i+1];\n                }\n            }\n            $p_optArray = $tmpArr;\n        }\n        $newTag.= (isset($p_optArray[1])) ? ' template=\"' . $p_optArray[1] . '\"' : '';\n        $newTag.= (isset($p_optArray[2])) ? ' submit_button=\"' . $p_optArray[2] . '\"' : '';\n        $newTag.= (isset($p_optArray[3])) ? ' html_code=\"' . $p_optArray[3] . '\"' : '';\n\n        return $newTag;\n    } // fn BuildSimpleFormStatement\n\n\n    /**\n     * @param array $p_optArray\n     *\n     * @return string $newTag\n     */\n    public static function BuildArticleCommentFormStatement($p_optArray)\n    {\n        $newTag = 'article_comment_form';\n        $newTag.= (isset($p_optArray[1])) ? ' template=\"'.$p_optArray[1].'\"' : '';\n        $newTag.= (isset($p_optArray[2])) ? ' submit_button=\"'.$p_optArray[2].'\"' : '';\n        $newTag.= (isset($p_optArray[3])) ? ' preview_button=\"'.$p_optArray[3].'\"' : '';\n\n        return $newTag;\n    } // fn BuildArticleCommentFormStatement\n\n\n    /**\n     * @param array $p_optArray\n     *\n     * @return string $newTag\n     */\n    public static function BuildSubscriptionFormStatement($p_optArray)\n    {\n        $newTag = 'subscription_form';\n        $newTag.= (isset($p_optArray[1])) ? ' type=\"'.$p_optArray[1].'\"' : '';\n        $newTag.= (isset($p_optArray[2])) ? ' template=\"'.$p_optArray[2].'\"' : '';\n        $newTag.= (isset($p_optArray[3])) ? ' submit_button=\"'.$p_optArray[3].'\"' : '';\n        $newTag.= (isset($p_optArray[4])) ? ' total_field=\"'.$p_optArray[4].'\"' : '';\n        $newTag.= (isset($p_optArray[5])) ? ' evaluated_field=\"'.$p_optArray[5].'\"' : '';\n\n        return $newTag;\n    } // fn BuildArticleCommentFormStatement\n\n\n    /**\n     * @param array $p_optArray\n     *\n     * @return string $newTag\n     */\n    public static function BuildEndFormStatement($p_optArray)\n    {\n        $newTag = '/' . substr($p_optArray[0], 3) . '_form';\n        return $newTag;\n    } // fn BuildEndFormStatement\n\n\n    /**\n     * @param array $p_optArray\n     *\n     * @return string $newTag\n     */\n    public static function BuildEditStatement($p_optArray)\n    {\n        $newTag = 'camp_edit';\n        $newTag.= (isset($p_optArray[1])) ? ' object=\"'.strtolower($p_optArray[1]).'\"' : '';\n        $newTag.= (isset($p_optArray[2])) ? ' attribute=\"'.strtolower($p_optArray[2]).'\"' : '';\n        if (isset($p_optArray[3])) {\n            if (is_integer($p_optArray[3])) {\n                $newTag.= ' size=\"'.$p_optArray[3].'\"';\n            } elseif (strtolower($p_optArray[3]) == 'html') {\n                $newTag.= ' html_code=\"';\n                $newTag.= (isset($p_optArray[4])) ? $p_optArray[4].'\"' : '\"';\n            }\n        }\n\n        return $newTag;\n    } // fn BuildEditStatement\n\n\n    /**\n     * @param array $p_optArray\n     *\n     * @return string $newTag\n     */\n    public static function BuildSelectStatement($p_optArray)\n    {\n        $newTag = 'camp_select';\n        $newTag.= (isset($p_optArray[1])) ? ' object=\"'.strtolower($p_optArray[1]).'\"' : '';\n        $newTag.= (isset($p_optArray[2])) ? ' attribute=\"'.strtolower($p_optArray[2]).'\"' : '';\n        if (strtolower($p_optArray[2]) == 'gender') {\n            $newTag.= (isset($p_optArray[3])) ? ' male_name=\"'.strtolower($p_optArray[3]).'\"' : '';\n            $newTag.= (isset($p_optArray[4])) ? ' female_name=\"'.strtolower($p_optArray[4]).'\"' : '';\n        }\n\n        return $newTag;\n    } // fn BuildSelectStatement\n\n\n    /**\n     * @param array $p_optArray\n     *\n     * @return string $newTag\n     */\n    public static function BuildHTMLEncodingStatement($p_optArray)\n    {\n        if (isset($p_optArray[1]) && strtolower($p_optArray[1]) == 'off') {\n            $newTag = 'disable_html_encoding';\n        } else {\n            $newTag = 'enable_html_encoding';\n        }\n\n        return $newTag;\n    } // fn BuildHTMLEncodingStatement\n\n\n    /**\n     * @param array $p_optArray\n     *\n     * @return string $newTag\n     */\n    public static function BuildWithStatement($p_optArray)\n    {\n        if ($p_optArray[0] == 'with') {\n            if (isset($p_optArray[1])) {\n                self::$m_withArticleType = strtolower($p_optArray[1]);\n            }\n            if (isset($p_optArray[2])) {\n                self::$m_withBodyField = strtolower($p_optArray[2]);\n            }\n        } elseif ($p_optArray[0] == 'endwith') {\n            self::$m_withArticleType = '';\n            self::$m_withBodyField = '';\n        }\n        $newTag = 'DISCARD_SENTENCE';\n\n        return $newTag;\n    } // fn BuildWithStatement\n\n} // class TemplateConverterHelper\n\n?>"
  },
  {
    "path": "newscoop/classes/TemplateConverterIfBlock.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Holman Romero <holman.romero@gmail.com>\n * @copyright 2008 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\n\n$_docRoot = dirname(dirname(__FILE__));\nrequire_once($_docRoot.'/classes/TemplateConverterHelper.php');\n\n\n/**\n * Class TemplateConverterIfBlock\n */\nclass TemplateConverterIfBlock\n{\n    /**\n     * @var array\n     */\n    private $m_objects = array(\n        'article' => array(\n            'defined' => 'defined',\n            'has_keyword' => 'has_keyword',\n            'name' => 'name',\n            'number' => 'number',\n            'translated_to' => 'translated_to',\n            'type' => array(\n                'attribute' => 'type_name'),\n            'upload_date' => 'upload_date',\n            'hasattachments' => array(\n                'attribute' => 'has_attachments'),\n            'haskeyword' => array(\n                'attribute' => 'has_keyword'),\n            'onfrontpage' => array(\n                'attribute' => 'on_front_page'),\n            'onsection' => array(\n                'attribute' => 'on_section_page'),\n            'public' => array(\n                'attribute' => 'is_public'),\n            ),\n        'articleattachment' => array(\n            'extension' => array(\n                'new_object' => 'attachment'),\n            'description' => array(\n                'new_object' => 'attachment'),\n            'filename' => array(\n                'new_object' => 'attachment',\n                'attribute' => 'file_name'),\n            'mimetype' => array(\n                'new_object' => 'attachment',\n                'attribute' => 'mime_type'),\n            'sizeb' => array(\n                'new_object' => 'attachment',\n                'attribute' => 'size_b'),\n            'sizekb' => array(\n                'new_object' => 'attachment',\n                'attribute' => 'size_kb'),\n            'sizemb' => array(\n                'new_object' => 'attachment',\n                'attribute' => 'size_mb'),\n            ),\n        'articlecomment' => array(\n            'captchaenabled' => array(\n                'new_object' => 'publication',\n                'attribute' => 'captcha_enabled'),\n            'defined' => array(\n                'new_object' => 'comment',\n                'attribute' => 'defined'),\n            'enabled' => array(\n                'new_object' => 'article',\n                'attribute' => 'comments_enabled'),\n            'preview' => array(\n                'new_object' => 'preview_comment_action',\n                'attribute' => 'defined'),\n            'publicallowed' => array(\n                'new_object' => 'publication',\n                'attribute' => 'public_comments'),\n            'publicmoderated' => array(\n                'new_object' => 'publication',\n                'attribute' => 'moderated_comments'),\n            'rejected' => array(\n                'new_object' => 'submit_comment_action',\n                'attribute' => 'rejected'),\n            'submitted' => array(\n                'new_object' => 'submit_comment_action',\n                'attribute' => 'defined'),\n            'submiterror' => array(\n                'new_object' => 'submit_comment_action',\n                'attribute' => 'is_error'),\n            'subscribersmoderated' => array(\n                'new_object' => 'publication',\n                'attribute' => 'moderated_comments')\n            ),\n        'audioattachment' => array(\n            'title' => array(\n                'new_object' => 'audioclip'),\n            'creator' => array(\n                'new_object' => 'audioclip'),\n            'genre' => array(\n                'new_object' => 'audioclip'),\n            'length' => array(\n                'new_object' => 'audioclip'),\n            'year' => array(\n                'new_object' => 'audioclip'),\n            'bitrate' => array(\n                'new_object' => 'audioclip'),\n            'samplerate' => array(\n                'new_object' => 'audioclip'),\n            'album' => array(\n                'new_object' => 'audioclip'),\n            'description' => array(\n                'new_object' => 'audioclip'),\n            'format' => array(\n                'new_object' => 'audioclip'),\n            'label' => array(\n                'new_object' => 'audioclip'),\n            'composer' => array(\n                'new_object' => 'audioclip'),\n            'channels' => array(\n                'new_object' => 'audioclip'),\n            'rating' => array(\n                'new_object' => 'audioclip'),\n            'tracknum' => array(\n                'new_object' => 'audioclip',\n                'attribute' => 'track_no'),\n            'disknum' => array(\n                'new_object' => 'audioclip',\n                'attribute' => 'disk_no'),\n            'lyrics' => array(\n                'new_object' => 'audioclip'),\n            'copyright' => array(\n                'new_object' => 'audioclip')\n            ),\n        'image' => array(),\n        'issue' => array(\n            'defined' => 'defined',\n            'name' => 'name',\n            'number' => 'number',\n            'publish_date' => 'publish_date',\n            'iscurrent' => array(\n                'attribute' => 'is_current')\n            ),\n        'language' => array(\n            'code' => 'code',\n            'defined' => 'defined',\n            'name' => 'name',\n            'number' => 'number',\n            'englname' => array(\n                'attribute' => 'english_name')\n            ),\n        'list' => array(\n            'column' => array(\n                'new_object' => 'current_list'),\n            'index' => array(\n                'new_object' => 'current_list'),\n            'row' => array(\n                'new_object' => 'current_list'),\n            'end' => array(\n                'new_object' => 'current_list',\n                'attribute' => 'at_end'),\n            'start' => array(\n                'new_object' => 'current_list',\n                'attribute' => 'at_beginning')\n            ),\n        'login' => array(\n            'action' => array(\n                'new_object' => 'login_action',\n                'attribute' => 'defined'),\n            'error' => array(\n                'new_object' => 'login_action',\n                'attribute' => 'is_error'),\n            'ok' => array(\n                'new_object' => 'login_action')\n            ),\n        'publication' => array(\n            'defined' => 'defined',\n            'identifier' => 'identifier',\n            'name' => 'name'\n            ),\n        'search' => array(\n            'action' => array(\n                'new_object' => 'search_articles_action',\n                'attribute' => 'defined'),\n            'error' => array(\n                'new_object' => 'search_articles_action',\n                'attribute' => 'is_error'),\n            'ok' => array(\n                'new_object' => 'search_articles_action')\n            ),\n        'section' => array(\n            'defined' => 'defined',\n            'name' => 'name',\n            'number' => 'number'\n            ),\n        'subscription' => array(\n            'ok' => array(\n                'new_object' => 'edit_subscription_action'),\n            'error' => array(\n                'new_object' => 'edit_subscription_action',\n                'attribute' => 'is_error'),\n            'trial' => array(\n                'new_object' => 'edit_subscription_action',\n                'attribute' => 'is_trial'),\n            'paid' => array(\n                'new_object' => 'edit_subscription_action',\n                'attribute' => 'is_paid'),\n            'action' => array(\n                'new_object' => 'edit_subscription_action',\n                'attribute' => 'defined')\n            ),\n        'subtitle' => array(\n            'number' => 'number'),\n        'topic' => array(\n            'name' => 'name'),\n        'user' => array(\n            'defined' => 'defined',\n            'addaction' => array(\n                'new_object' => 'edit_user_action',\n                'attribute' => 'defined'),\n            'adderror' => array(\n                'new_object' => 'edit_user_action',\n                'attribute' => 'is_error'),\n            'addok' => array(\n                'new_object' => 'edit_user_action',\n                'attribute' => 'ok'),\n            'isblockedfromcomments' => array(\n                'attribute' => 'is_blocked_from_comments'),\n            'loggedin' => array(\n                'attribute' => 'logged_in'),\n            'modifyaction' => array(\n                'new_object' => 'edit_user_action',\n                'attribute' => 'defined'),\n            'modifyerror' => array(\n                'new_object' => 'edit_user_action',\n                'attribute' => 'is_error'),\n            'modifyok' => array(\n                'new_object' => 'edit_user_action',\n                'attribute' => 'ok')\n            )\n        );\n\n    /**\n     * @var array\n     */\n    private $m_sentences = array(\n        'allowed' => array(\n            'new_object' => 'article',\n            'attribute' => 'content_accessible'),\n        'currentsubtitle' => array(\n            'new_object' => 'subtitle',\n            'attribute' => 'number',\n            'condition' => ' == $campsite->article->#field_name#->subtitle_number'),\n        'nextitems' => array(\n            'new_object' => 'current_list',\n            'attribute' => 'has_next_elements'),\n        'nextsubtitles' => array(\n            'new_object' => 'article',\n            'attribute' => 'type->#type_name#->field->has_next_subtitles'),\n        'previousitems' => array(\n            'new_object' => 'current_list',\n            'attribute' => 'has_previous_elements'),\n        'prevsubtitles' => array(\n            'new_object' => 'article',\n            'attribute' => 'type->#type_name#->field->has_previous_subtitles')\n        );\n\n    /**\n     * @var string\n     */\n    private $m_ifBlock = '';\n\n    /**\n     * @var string\n     */\n    private $m_ifBlockStr = '';\n\n    /**\n     * @var string\n     */\n    private $m_endIfBlock = '';\n\n    /**\n     * @var array\n     */\n    private static $m_ifBlockStack = array();\n\n    /**\n     * @var array\n     */\n    private $m_operators = array(\n        'is' => '==',\n        'not' => '!=',\n        'greater' => '>',\n        'greater_equal' => '>=',\n        'smaller' => '<',\n        'smaller_equal' => '<='\n        );\n\n\n    /**\n     * @param array $p_optArray\n     */\n    public function __construct($p_optArray)\n    {\n        if (!is_array($p_optArray) || sizeof($p_optArray) < 1) {\n            return false;\n        }\n\n        $this->parse($p_optArray);\n    } // fn __construct\n\n\n    /**\n     * @param array $p_optArray\n     */\n    private function parse($p_optArray)\n    {\n        if (isset($p_optArray[1]) && strtolower($p_optArray[1]) == 'not') {\n            $condType = true;\n            $idx = 2;\n        } else {\n            $condType = false;\n            $idx = 1;\n        }\n\n        if (!isset($p_optArray[$idx])) {\n            return;\n        }\n\n        $sentence = array_key_exists(strtolower($p_optArray[$idx]), $this->m_sentences) ? strtolower($p_optArray[$idx]) : '';\n        $object = array_key_exists(strtolower($p_optArray[$idx]), $this->m_objects) ? strtolower($p_optArray[$idx]) : '';\n\n        $ifBlockStr = '';\n        $openBracket = false;\n        if (strlen($sentence) > 0) {\n            $this->m_ifBlock = $sentence;\n            if ($sentence == 'nextsubtitles' || $sentence == 'prevsubtitles') {\n                if (TemplateConverterHelper::GetWithArticleType() != '') {\n                    $this->m_sentences[$sentence]['attribute'] = preg_replace('/#type_name#/', TemplateConverterHelper::GetWithArticleType(), $this->m_sentences[$sentence]['attribute']);\n                }\n            } elseif($sentence == 'currentsubtitle') {\n                if (TemplateConverterHelper::GetWithBodyField() != '') {\n                    $this->m_sentences[$sentence]['condition'] = preg_replace('/#field_name#/', TemplateConverterHelper::GetWithBodyField(), $this->m_sentences[$sentence]['condition']);\n                }\n            }\n\n            $ifBlockStr.= '->'.$this->m_sentences[$sentence]['new_object'];\n            $ifBlockStr.= '->'.$this->m_sentences[$sentence]['attribute'];\n            if (isset($this->m_sentences[$sentence]['condition'])) {\n                $ifBlockStr.= $this->m_sentences[$sentence]['condition'];\n            }\n            $idx++;\n        }\n\n        if (strlen($object) > 0) {\n            $objectIdx = $idx;\n            $idx++;\n            $attribute = (isset($p_optArray[$idx])) ? strtolower($p_optArray[$idx]) : '';\n            if ($attribute == 'fromstart') {\n                $ifBlockStr.= '->default_'.$object.' == '.CS_OBJECT.'->'.$object;\n            } else {\n                if (array_key_exists($attribute, $this->m_objects[$object])) {\n                    if (is_array($this->m_objects[$object][$attribute])) {\n                        $ifBlockStr.= (isset($this->m_objects[$object][$attribute]['new_object'])) ? '->'.$this->m_objects[$object][$attribute]['new_object'] : '->'.$object;\n                        $ifBlockStr.= (isset($this->m_objects[$object][$attribute]['attribute'])) ? '->'.$this->m_objects[$object][$attribute]['attribute'] : '->'.$attribute;\n                    } else {\n                        $ifBlockStr.= '->'.$object.'->'.$attribute;\n                    }\n                } else {\n                    if ($object == 'image' && is_numeric($attribute)) {\n                        $ifBlockStr.= '->article->has_image('.$attribute.')';\n                    } else {\n                        $numElements = sizeof($p_optArray);\n                        if (isset($p_optArray[$numElements - 2]) && array_key_exists($p_optArray[$numElements - 2], $this->m_operators)) {\n                            $operatorIdx = $numElements - 2;\n                            if ($operatorIdx > $objectIdx) {\n                                $numIdentifiers = $operatorIdx - $objectIdx;\n                                if ($numIdentifiers == 3) {\n                                    $type = $attribute;\n                                    $attribute = $p_optArray[$idx+1];\n                                    $ifBlockStr.= '->'.$object.'->type->'.$type.'->'.$attribute;\n                                    $idx++;\n                                } elseif ($numIdentifiers == 2) {\n                                    $ifBlockStr.= '->'.$object.'->'.$attribute;\n                                }\n                            }\n\n                        } else {\n                            $ifBlockStr.= '->'.$object.'->'.$attribute;\n                        }\n                    }\n                }\n            }\n\n            $idx++;\n            //\n            $operator = (isset($p_optArray[$idx]) && array_key_exists(strtolower($p_optArray[$idx]), $this->m_operators)) ? $this->m_operators[strtolower($p_optArray[$idx])] : '';\n            if (strlen($operator) > 0) {\n                $ifBlockStr.= ' '.$operator;\n                $idx++;\n            } elseif ($object == 'list' && ($attribute == 'row'\n                                                || $attribute == 'column'\n                                                || $attribute == 'index')) {\n                $p_optArray[$idx] = isset($p_optArray[$idx]) ? strtolower($p_optArray[$idx]) : '';\n                if (isset($p_optArray[$idx]) && ($p_optArray[$idx] == 'odd' || $p_optArray[$idx] == 'even')) {\n                    $ifBlockStr.= ' is '.$p_optArray[$idx];\n                    $idx++;\n                } elseif(isset($p_optArray[$idx])) {\n                    $ifBlockStr.= ' == '.$p_optArray[$idx++];\n                    for ($i = $idx; $i < sizeof($p_optArray); $i++) {\n                        $ifBlockStr.= ' || '.CS_OBJECT.'->current_list->'.$attribute.' == '.$p_optArray[$i];\n                        $idx++;\n                    }\n                    if ($condType == true) {\n                        $ifBlockStr.= ')';\n                        $openBracket = true;\n                    }\n                }\n            }\n\n            //\n            $value = (isset($p_optArray[$idx])) ? $p_optArray[$idx] : null;\n            if (isset($p_optArray[$idx])) {\n                if (!empty($p_optArray[$idx])) {\n                    $value = $p_optArray[$idx];\n                } else {\n                    $value = '\"\"';\n                }\n            }\n            if (!is_null($value)) {\n                if ($value == '\"\"') $value = '';\n                $value = (is_numeric($value)) ? $value : '\"'.$value.'\"';\n                $ifBlockStr.= (strlen($operator) <= 0) ? ' == '.$value : ' '.$value;\n                $idx++;\n            }\n        }\n\n        for ($x = $idx; $x < sizeof($p_optArray); $x++) {\n            $ifBlockStr.= ' '.$p_optArray[$x];\n        }\n\n        if (strlen($ifBlockStr) > 0) {\n            $this->m_ifBlockStr = ($condType == true) ? 'if ! ' : 'if ';\n            if ($openBracket == true) {\n                $this->m_ifBlockStr.= '(';\n            }\n            $this->m_ifBlockStr.= CS_OBJECT . $ifBlockStr;\n        }\n\n        if (!empty($this->m_ifBlockStr)) {\n            $this->m_endIfBlock = '/if';\n        }\n    } // fn parse\n\n\n    /**\n     *\n     */\n    public function getEndIfBlock()\n    {\n        return $this->m_endIfBlock;\n    } // fn getEndIfBlock\n\n\n    /**\n     *\n     */\n    public function getIfBlock()\n    {\n        return $this->m_ifBlock;\n    } // fn getIfBlockString\n\n\n    /**\n     *\n     */\n    public function getIfBlockString()\n    {\n        return $this->m_ifBlockStr;\n    } // fn getIfBlockString\n\n\n    /**\n     *\n     */\n    public function GetNewTagContent($p_optArray)\n    {\n        $newTag = '';\n        $maxIndex = sizeof(self::$m_ifBlockStack) ? sizeof(self::$m_ifBlockStack) - 1 : 0;\n        if ($p_optArray[0] == 'if') {\n            self::$m_ifBlockStack[] = new TemplateConverterIfBlock($p_optArray);\n            $maxIndex = sizeof(self::$m_ifBlockStack) ? sizeof(self::$m_ifBlockStack) - 1 : 0;\n            $newTag = self::$m_ifBlockStack[$maxIndex]->getIfBlockString();\n        } elseif (strpos($p_optArray[0], 'endif') !== false) {\n            if (isset(self::$m_ifBlockStack[$maxIndex])\n                    && is_object(self::$m_ifBlockStack[$maxIndex])) {\n                $newTag = self::$m_ifBlockStack[$maxIndex]->getEndIfBlock();\n                array_pop(self::$m_ifBlockStack);\n            }\n        }\n\n        return $newTag;\n    } // fn GetNewTagContent\n\n\n    public static function GetIfBlockStack()\n    {\n        return self::$m_ifBlockStack;\n    } // fn GetIfBlockStack\n\n} // class TemplateConverterIfBlock\n\n?>"
  },
  {
    "path": "newscoop/classes/TemplateConverterListObject.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Holman Romero <holman.romero@gmail.com>\n * @copyright 2008 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\n\n\n/**\n * Class TemplateConverterListObject\n */\nclass TemplateConverterListObject\n{\n    /**\n     * @var array\n     */\n    private $m_listTypes = array('article' => 'articles',\n                                 'articleattachment' => 'article_attachments',\n                                 'articlecomment' => 'article_comments',\n                                 'articleimage' => 'article_images',\n                                 'articletopic' => 'article_topics',\n                                 'issue' => 'issues',\n                                 'searchresult' => 'search_results',\n                                 'section' => 'sections',\n                                 'subtopic' => 'subtopics',\n                                 'subtitle' => 'subtitles');\n\n    /**\n     * @var string\n     */\n    private $m_list = '';\n\n    /**\n     * @var string\n     */\n    private $m_length = '';\n\n    /**\n     * @var string\n     */\n    private $m_columns = '';\n\n    /**\n     * @var string\n     */\n    private $m_constraints = '';\n\n    /**\n     * @var string\n     */\n    private $m_order = '';\n\n    /**\n     * @var string\n     */\n    private $m_language = '';\n\n    /**\n     * @var string\n     */\n    private $m_endList = '';\n\n\n    /**\n     * @param array $p_optArray\n     */\n    public function __construct($p_optArray)\n    {\n        if (!is_array($p_optArray) || sizeof($p_optArray) < 1) {\n            return false;\n        }\n\n        $this->parse($p_optArray);\n    } // fn __construct\n\n\n    /**\n     * @param array $p_optArray\n     */\n    private function parse($p_optArray)\n    {\n        $listTypeFound = false;\n        $orderFound = false;\n        $constraints = '';\n        $order = '';\n        for ($i = 1; $i < sizeof($p_optArray); $i++) {\n            if (strtolower($p_optArray[$i]) == 'length') {\n                $this->m_length = 'length=\"'.$p_optArray[++$i].'\"';\n                continue;\n            }\n            if (strtolower($p_optArray[$i]) == 'columns') {\n                $this->m_columns = 'columns=\"'.$p_optArray[++$i].'\"';\n                continue;\n            }\n            if (!$listTypeFound\n                    && array_key_exists(strtolower($p_optArray[$i]), $this->m_listTypes)) {\n                $this->m_list = 'list_'.$this->m_listTypes[strtolower($p_optArray[$i])];\n                $this->m_endList = '/list_'.$this->m_listTypes[strtolower($p_optArray[$i])];\n                $listTypeFound = true;\n                continue;\n            }\n            if ($listTypeFound && $this->m_list == 'list_article_attachments') {\n                if (strtolower($p_optArray[$i]) == 'forcurrentlanguage') {\n                    $this->m_language = 'language=\"current\"';\n                    continue;\n                } elseif (strtolower($p_optArray[$i]) == 'foralllanguages') {\n                    $this->m_language = 'language=\"all\"';\n                    continue;\n                }\n            }\n            if (!$orderFound && strtolower($p_optArray[$i]) != 'order') {\n                $constraints.= $p_optArray[$i].' ';\n            } else {\n                if (strtolower($p_optArray[$i]) != 'order') {\n                    $order.= $p_optArray[$i].' ';\n                }\n                $orderFound = true;\n            }\n        }\n\n        if (strlen($constraints) > 0) {\n            $this->m_constraints = 'constraints=\"'.trim($constraints).'\"';\n        }\n        if (strlen($order) > 0) {\n            $this->m_order = 'order=\"'.trim($order).'\"';\n        }\n    } // fn parse\n\n\n    /**\n     *\n     */\n    public function getEndList()\n    {\n        return $this->m_endList;\n    } // fn getEndList\n\n\n    /**\n     *\n     */\n    public function getListString()\n    {\n        $list = $this->m_list;\n        $list.= (strlen($this->m_length)) ? ' '.$this->m_length : '';\n        $list.= (strlen($this->m_columns)) ? ' '.$this->m_columns : '';\n        $list.= (strlen($this->m_constraints)) ? ' '.$this->m_constraints : '';\n        $list.= (strlen($this->m_order)) ? ' '.$this->m_order : '';\n        $list.= (strlen($this->m_language)) ? ' '.$this->m_language : '';\n\n        return $list;\n    } // fn getListString\n\n\n    /**\n     * @param string $p_endString\n     *      The end list string\n     * @param boolean $p_overwrite\n     *      True to overwrite the current end list value, default value false\n     */\n    public function setEndList($p_endString, $p_overwrite = false)\n    {\n        if (strlen($this->m_endList) > 0 && !$p_overwrite) {\n            $this->m_endList = $p_endString.$this->m_endList;\n        } else {\n            $this->m_endList = $p_endString;\n        }\n    } // fn setEndList\n\n\n    /**\n     *\n     */\n    public static function GetNewTagContent($p_optArray)\n    {\n        static $listObj;\n\n        if (empty($listObj)) {\n            $listObj = array();\n        }\n\n        $newTag = '';\n        $maxIndex = sizeof($listObj) ? sizeof($listObj) - 1 : 0;\n        if ($p_optArray[0] == 'list') {\n            $listObj[] = new TemplateConverterListObject($p_optArray);\n            $maxIndex = sizeof($listObj) ? sizeof($listObj) - 1 : 0;\n            $newTag = $listObj[$maxIndex]->getListString();\n        } elseif ($p_optArray[0] == 'foremptylist') {\n            if (isset($listObj[$maxIndex]) && is_object($listObj[$maxIndex])) {\n                $newTag = $listObj[$maxIndex]->getEndList() . \" }}\\n\";\n                $newTag.= '{{ if '.CS_OBJECT.'->prev_list_empty';\n                $endEmptyString = '/if';\n                $listObj[$maxIndex]->setEndList($endEmptyString, true);\n            }\n        } elseif (strpos($p_optArray[0], 'endlist') !== false) {\n            if (isset($listObj[$maxIndex]) && is_object($listObj[$maxIndex])) {\n                $newTag = $listObj[$maxIndex]->getEndList();\n                array_pop($listObj);\n            }\n        }\n\n        return $newTag;\n    } // fn GetNewTagContent\n\n} // class TemplateConverterListObject\n\n?>"
  },
  {
    "path": "newscoop/classes/TemplateConverterNewscoop.php",
    "content": "<?php\n/**\n * @package Newscoop\n *\n * @author Mugur Rus <mugur.rus@sourcefabric.org>\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\n\n$_docRoot = dirname(dirname(__FILE__));\nrequire_once($_docRoot.'/classes/TemplateConverter.php');\n\n/**\n * Class TemplateConverterNewscoop\n */\nclass TemplateConverterNewscoop extends TemplateConverter\n{\n    /**\n     * Parses the original template file and replaces old syntax with new one.\n     *\n     * @return bool\n     */\n    public function parse()\n    {\n    \t$this->m_templateContent = str_replace('$campsite->', '$gimme->', $this->m_templateOriginalContent);\n    }\n}\n\n?>\n"
  },
  {
    "path": "newscoop/classes/TimeUnit.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbObjectArray.php');\n\n/**\n * @package Campsite\n */\nclass TimeUnit extends DatabaseObject {\n\tvar $m_dbTableName = 'TimeUnits';\n\tvar $m_keyColumnNames = array('Unit', 'IdLanguage');\n\tvar $m_keyIsAutoIncrement = false;\n\tvar $m_columnNames = array('Unit', 'IdLanguage', 'Name');\n\n\t/**\n\t * @param string $p_unit\n\t * @param int $p_languageId\n\t */\n\tpublic function TimeUnit($p_unit = null, $p_languageId = null)\n\t{\n\t\tparent::DatabaseObject($this->m_columnNames);\n\t\t$this->m_data['Unit'] = $p_unit;\n\t\t$this->m_data['IdLanguage'] = 1;\n\t\tif (!is_null($p_languageId)) {\n\t\t\t$this->m_data['IdLanguage'] = $p_languageId;\n\t\t}\n\t\tif ($this->keyValuesExist()) {\n\t\t\t$this->fetch();\n\t\t}\n\t} // constructor\n\n\n\tpublic static function SetTimeUnit($p_unit, $p_languageId, $p_name)\n\t{\n\t\t$timeUnit = new TimeUnit($p_unit, $p_languageId);\n\t\tif ($timeUnit->exists()) {\n\t\t\t$timeUnit->setProperty('Name', $p_name);\n\t\t} else {\n\t\t\t$timeUnit->create(array('Name' => $p_name));\n\t\t}\n\t} // fn SetTimeUnit\n\n\n\t/**\n\t * @return string\n\t */\n\tpublic function getUnit()\n\t{\n\t\treturn $this->m_data['Unit'];\n\t} // fn getUnit\n\n\n\t/**\n\t * @return string\n\t */\n\tpublic function getName()\n\t{\n\t\treturn $this->m_data['Name'];\n\t} // fn getName\n\n\n\t/**\n\t * @return int\n\t */\n\tpublic function getLanguageId()\n\t{\n\t\treturn $this->m_data['IdLanguage'];\n\t} // fn getLanguageId\n\n\n\t/**\n\t * Return an array of all time units.\n\t * @return array\n\t */\n\tpublic static function GetTimeUnits($p_languageCode)\n\t{\n\t\t$queryStr = \"SELECT TimeUnits.Unit, TimeUnits.Name \"\n\t\t\t\t\t.\" FROM TimeUnits, Languages \"\n\t\t\t\t\t.\" WHERE TimeUnits.IdLanguage = Languages.Id \"\n\t\t\t\t\t.\" AND Languages.Code = '$p_languageCode'\"\n\t\t\t\t\t.\" ORDER BY TimeUnits.Unit ASC\";\n\t\t$timeUnits = DbObjectArray::Create('TimeUnit', $queryStr);\n\t\tif (count($timeUnits) == 0) {\n\t\t\t$queryStr = \"SELECT TimeUnits.Unit, TimeUnits.Name \"\n\t\t\t\t\t\t.\" FROM TimeUnits, Languages \"\n\t\t\t\t\t\t.\" WHERE TimeUnits.IdLanguage = Languages.Id \"\n\t\t\t\t\t\t.\" AND Languages.Code = 'en'\"\n\t\t\t\t\t\t.\" ORDER BY TimeUnits.Unit ASC\";\n\t\t\t$timeUnits = DbObjectArray::Create('TimeUnit', $queryStr);\n\t\t}\n\t\treturn $timeUnits;\n\t} // fn GetTimeUnits\n\n\n} // class TimeUnit\n\n?>"
  },
  {
    "path": "newscoop/classes/Translation.php",
    "content": "<?php\n\nclass Translation extends DatabaseObject {\n\tvar $m_dbTableName = 'Translations';\n\tvar $m_keyColumnNames = array('phrase_id', 'fk_language_id');\n\tvar $m_keyIsAutoIncrement = false;\n\tvar $m_columnNames = array('phrase_id',\n\t                           'fk_language_id',\n\t                           'translation_text');\n\n\tpublic function Translation($p_languageId = null, $p_phraseId = null)\n\t{\n\t\tif (is_numeric($p_phraseId)) {\n\t\t\t$this->m_data['phrase_id'] = $p_phraseId;\n\t\t}\n\t\tif  (is_numeric($p_languageId)) {\n\t\t\t$this->m_data['fk_language_id'] = $p_languageId;\n\t\t}\n\t\tif ($this->keyValuesExist()) {\n\t\t\t$this->fetch();\n\t\t}\n\t} // constructor\n\n\n\t/**\n\t * Create a translation of a phrase.  If the phrase ID is set in the\n\t * constructor, we assume that the phrase already exists and we are\n\t * just creating a translation, and not a new phrase.\n\t *\n\t * @param string $p_text\n\t * \t\tOptional. The translation text.\n\t * @return boolean\n\t */\n\tpublic function create($p_text = null)\n\t{\n\t\tif (!isset($this->m_data['phrase_id'])) {\n\t\t\t$this->m_data['phrase_id'] = Translation::__GeneratePhraseId();\n\t\t}\n\n\t\treturn parent::create(array(\"translation_text\" => $p_text));\n\t} // fn create\n\n\n\t/**\n\t * Delete the phrase and all of its translations.\n\t * This can be called statically or as a member function.\n\t * If called statically, you must give it an argument.\n\t */\n\tpublic function deletePhrase($p_phraseId = null)\n\t{\n\t\tglobal $g_ado_db;\n\t\tif (is_null($p_phraseId)) {\n\t\t\t$p_phraseId = $this->m_data['phrase_id'];\n\t\t\t$this->m_exists = false;\n\t\t}\n\t\t$sql = \"DELETE FROM Translations WHERE phrase_id = \" . (int)$p_phraseId;\n\t\t$g_ado_db->Execute($sql);\n\t} // fn deletePhrase\n\n\t/**\n\t* Create a unique identifier for a phrase.\n\t* @access private\n\t*/\n\tprivate function __GeneratePhraseId()\n\t{\n\t\tglobal $g_ado_db;\n\n\t\t$queryStr = 'UPDATE AutoId SET translation_phrase_id=LAST_INSERT_ID(translation_phrase_id + 1)';\n\t\t$g_ado_db->executeUpdate($queryStr);\n\t\tif ($g_ado_db->affected_rows() <= 0) {\n\t\t\treturn 0;\n\t\t}\n\n\t\treturn (int)$g_ado_db->insert_id();\n\t}\n\n\t/**\n\t * Get the phrase ID.\n\t *\n\t * @return int\n\t */\n\tpublic function getPhraseId()\n\t{\n\t\treturn $this->m_data['phrase_id'];\n\t} // fn getPhraseId\n\n\n\t/**\n\t * Get the language ID.\n\t *\n\t * @return int\n\t */\n\tpublic function getLanguageId()\n\t{\n\t\treturn $this->m_data['fk_language_id'];\n\t} // fn getLanguageId\n\n\n\t/**\n\t * Get the text.\n\t *\n\t * @return string\n\t */\n\tpublic function getText()\n\t{\n\t\treturn $this->m_data['translation_text'];\n\t} // fn getText\n\n\n\t/**\n\t * Set the translation text.\n\t *\n\t * @param string $p_value\n\t * @return boolean\n\t */\n\tpublic function setText($p_value)\n\t{\n\t\treturn $this->setProperty('translation_text', $p_value);\n\t} // fn setText\n\n\n\t/**\n\t * A convenience function to just grab a translation.\n\t *\n\t * @param int $p_phraseId\n\t * @param int $p_languageId\n\t */\n\tpublic static function GetPhrase($p_languageId, $p_phraseId)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$sql = \"SELECT translation_text FROM Translations\"\n\t\t\t   .\" WHERE phrase_id=\".$p_phraseId\n\t\t\t   .\" AND fk_language_id=\".$p_languageId;\n\t\treturn $g_ado_db->GetOne($sql);\n\t} // fn GetPhrase\n\n\n\t/**\n\t * Enter description here...\n\t *\n\t * @param int $p_phraseId\n\t * @param int $p_languageId\n\t * @param string $p_text\n\t */\n\tpublic static function SetPhrase($p_languageId, $p_phraseId, $p_text)\n\t{\n\t\tif (!is_numeric($p_languageId) || !is_numeric($p_phraseId) || !is_string($p_text)) {\n\t\t\treturn false;\n\t\t}\n\t\t$translation = new Translation($p_languageId, $p_phraseId);\n\t\tif ($translation->exists()) {\n\t\t\treturn $translation->setText($p_text);\n\t\t} else {\n\t\t\treturn $translation->create($p_text);\n\t\t}\n\t} // fn SetPhrase\n\n\n\t/**\n\t * Return an array of phrases indexed by language ID.\n\t *\n\t * @param int $p_phraseId\n\t * @param array $p_sqlOptions\n\t * @return array\n\t */\n\tpublic static function GetTranslations($p_phraseId, $p_sqlOptions = null)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$phrases = array();\n\t\tif (!is_numeric($p_phraseId)) {\n\t\t\treturn $phrases;\n\t\t}\n\t\t$sql = \"SELECT fk_language_id, translation_text FROM Translations WHERE phrase_id = $p_phraseId\";\n\t\t$rows = $g_ado_db->GetAll($sql);\n\t\tif (is_array($rows)) {\n\t\t\tforeach ($rows as $row) {\n\t\t\t\t$phrases[$row['fk_language_id']] = $row['translation_text'];\n\t\t\t}\n\t\t}\n\t\treturn $phrases;\n\t} // fn GetTranslations\n\n} // class Translation\n?>"
  },
  {
    "path": "newscoop/classes/UrlType.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DbObjectArray.php');\n\n/**\n * @package Campsite\n */\nclass UrlType extends DatabaseObject {\n\tvar $m_dbTableName = 'URLTypes';\n\tvar $m_keyColumnNames = array('Id');\n\tvar $m_keyIsAutoIncrement = true;\n\tvar $m_columnNames = array('Id', 'Name', 'Description');\n\n\t/**\n\t * Constructor.\n\t * @param int $p_id\n\t */\n\tpublic function UrlType($p_id = null)\n\t{\n\t\tparent::DatabaseObject($this->m_columnNames);\n\t\tif (!is_null($p_id)) {\n    \t\t$this->m_data['Id'] = $p_id;\n\t\t\t$this->fetch();\n\t\t}\n\t} // constructor\n\n\n\t/**\n\t * Return an array of all URL types.\n\t * @return array\n\t */\n\tpublic static function GetUrlTypes()\n\t{\n\t\t$queryStr = 'SELECT * FROM URLTypes';\n\t\t$urlTypes = DbObjectArray::Create('UrlType', $queryStr);\n\t\treturn $urlTypes;\n\t} // fn GetUrlTypes\n\n\n\t/**\n\t * The unique ID of the URLType.\n\t * @return int\n\t */\n\tpublic function getId()\n\t{\n\t\treturn $this->m_data['Id'];\n\t} // fn getId\n\n\n\t/**\n\t * Return the name of this URLType.\n\t * @return string\n\t */\n\tpublic function getName()\n\t{\t\n\t\t$translator = \\Zend_Registry::get('container')->getService('translator');\n\t\t$name = $this->m_data['Name'];\n\t\tswitch ($name) {\n\t\t\tcase \"short names\":\n\t\t\t\treturn $translator->trans(\"short names\", array(), 'api');\n\t\t\tcase \"template path\":\n\t\t\t\treturn $translator->trans(\"template path\", array(), 'api');\n\t\t\tdefault:\n\t\t\t\treturn \"\";\n\t\t}\n\t} // fn getName\n\n\n\t/**\n\t * Return the description of the URL Type.\n\t * @return string\n\t */\n\tpublic function getDescription()\n\t{\n\t\treturn $this->m_data['Description'];\n\t} // fn getDescription\n\n\n\tpublic static function GetByName($p_name)\n\t{\n\t\tglobal $g_ado_db;\n\t\t$sql = \"SELECT * FROM URLTypes WHERE Name=\".$g_ado_db->escape($p_name);\n\t\t$row = $g_ado_db->GetRow($sql);\n\t\tif ($row && is_array($row)) {\n\t\t\t$urlType = new UrlType();\n\t\t\t$urlType->fetch($row);\n\t\t\treturn $urlType;\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t} // fn GetByName\n\n} // class UrlType\n\n?>\n"
  },
  {
    "path": "newscoop/classes/User.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/UserType.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\n\n\n/**\n * @package Campsite\n */\nclass User extends DatabaseObject {\n    var $m_dbTableName = 'liveuser_users';\n    var $m_keyColumnNames = array('Id');\n    var $m_keyIsAutoIncrement = true;\n    var $m_config = array();\n    var $m_columnNames = array(\n        'Id',\n        'KeyId',\n        'Name',\n        'UName',\n        'Password',\n        'EMail',\n        'Reader',\n        'fk_user_type',\n        'City',\n        'StrAddress',\n        'State',\n        'CountryCode',\n        'Phone',\n        'Fax',\n        'Contact',\n        'Phone2',\n        'Title',\n        'Gender',\n        'Age',\n        'PostalCode',\n        'Employer',\n        'EmployerType',\n        'Position',\n        'Interests',\n        'How',\n        'Languages',\n        'Improvements',\n        'Pref1',\n        'Pref2',\n        'Pref3',\n        'Pref4',\n        'Field1',\n        'Field2',\n        'Field3',\n        'Field4',\n        'Field5',\n        'Text1',\n        'Text2',\n        'Text3',\n        'time_updated',\n        'time_created',\n        'lastLogin',\n        'isActive',\n        'password_reset_token',\n        'is_admin',\n        'last_name',\n    );\n\n    private static $m_defaultConfig = array();\n\n    /**\n     * A user of the system is a frontend reader or a 'admin' user, meaning\n     * they have login rights to the backend.\n     *\n     * @param int $p_userId\n     */\n    public function User($p_userId = null)\n    {\n        parent::DatabaseObject($this->m_columnNames);\n        if (is_numeric($p_userId) && ($p_userId > 0)) {\n            $this->m_data['Id'] = $p_userId;\n            if ($this->keyValuesExist()) {\n                $this->fetch();\n            }\n        }\n    } // constructor\n\n\n    /**\n     * Creates a new user.\n     *\n     * @param array\n     *    $p_values The user data\n     *\n     * @param bool\n     *    TRUE on success, FALSE on failure\n     */\n    public function create($p_values = null)\n    {\n        global $controller;\n\n\n\n        if (is_array($p_values)) {\n            $p_values['time_created'] = strftime(\"%Y-%m-%d %H:%M:%S\", time());\n        }\n\n        $map = array(\n            'UName' => 'username',\n            'Name'  => 'name',\n            'EMail' => 'email',\n            'passwd' => 'password',\n        );\n\n        foreach ($p_values as $key => $value) {\n            if (isset($map[$key])) {\n                $values[$map[$key]] = $value;\n            } else {\n                $values[$key] = $value;\n            }\n        }\n\n\n        $values['perm_type'] = 1;\n\n        try {\n            $user = new Newscoop\\Entity\\User();\n            $repository = $controller->getHelper('entity')->getRepository('Newscoop\\Entity\\User');\n            $repository->save($user, $values);\n            $controller->getHelper('entity')->flushManager();\n            return $user->getId();\n        } catch (\\Exception $e) {\n            return false;\n        }\n    } // fn create\n\n\n    /**\n     * Deletes the user.\n     * This will delete all config values and subscriptions of the user.\n     *\n     * @return boolean\n     */\n    public function delete()\n    {\n        global $g_ado_db, $LiveUserAdmin;\n\n        if ($this->exists()) {\n        \t$res = $g_ado_db->Execute(\"SELECT Id FROM Subscriptions WHERE IdUser = \".$this->m_data['Id']);\n        \twhile ($row = $res->FetchRow()) {\n        \t\t$g_ado_db->Execute(\"DELETE FROM SubsSections WHERE IdSubscription=\".$row['Id']);\n        \t}\n        \t$g_ado_db->Execute(\"DELETE FROM Subscriptions WHERE IdUser=\".$this->m_data['Id']);\n        \t$g_ado_db->Execute(\"DELETE FROM SubsByIP WHERE IdUser=\".$this->m_data['Id']);\n            $params = array('filters' => array('auth_user_id' => $this->m_liveUserData['auth_user_id']));\n            $permData = $LiveUserAdmin->perm->getUsers($params);\n            if (!is_array($permData) || sizeof($permData) < 1) {\n                return false;\n            }\n            if ($LiveUserAdmin->removeUser($permData[0]['perm_user_id'])) {\n                return true;\n            }\n        }\n\n        return false;\n    } // fn delete\n\n\n    /**\n     * Get the user from the database.\n     *\n     * @param array $p_recordSet\n     *\n     * @return void\n     */\n    public function fetch($p_recordSet = null, $p_forceExists = false)\n    {\n        global $g_ado_db;\n\n        $success = parent::fetch($p_recordSet);\n        if ($success) {\n            $this->m_exists = true;\n        }\n    } // fn fetch\n\n\n    /**\n     * Fetch the user by given username\n     *\n     * @param string\n     *    $username The user name\n     * @param bool\n     *    $adminOnly Whether we want to be sure to get only an admin user\n     *\n     * @return mixed\n     *    null No one user found\n     *    object User object\n     */\n    public static function FetchUserByName($username, $adminOnly = false)\n    {\n        global $g_ado_db;\n\n        $queryStr = 'SELECT * FROM liveuser_users WHERE UName = ?';\n        $inputArray[] = $username;\n        if ($p_adminOnly) {\n            $queryStr .= ' AND Reader = ?';\n            $inputArray[] = 'N';\n        }\n\n        $row = $g_ado_db->GetRow($queryStr, $inputArray);\n        if ($row) {\n            $user = new User();\n            $user->fetch($row);\n\n            return $user;\n        }\n\n        return null;\n    }\n\n\n    /**\n     * Fetch the user by given email\n     *\n     * @param string\n     *    $email The email\n     * @param bool\n     *    $adminOnly Whether we want to be sure to get only an admin user\n     *\n     * @return mixed\n     *    null No one user found\n     *    object User object\n     */\n    public static function FetchUserByEmail($email, $adminOnly = true)\n    {\n        global $g_ado_db;\n\n        $queryStr = 'SELECT * FROM liveuser_users WHERE EMail = \"'.$email.'\"';\n        if ($adminOnly) {\n            $queryStr .= ' AND Reader = \"N\"';\n        }\n\n        $row = $g_ado_db->GetRow($queryStr);\n        if ($row) {\n            $user = new User();\n            $user->fetch($row);\n\n            return $user;\n        }\n\n        return null;\n    }\n\n\n    /**\n     * Return the user type if there is one, or null if not.\n     *\n     * @return string\n     */\n    public function getUserType()\n    {\n        return $this->m_data['fk_user_type'];\n    } // fn getUserType\n\n\n    /**\n     * Set the user to the given user type.\n     *\n     * @param string $p_userType\n     *\n     * @return void\n     */\n    public function setUserType($p_userTypeId)\n    {\n        global $g_ado_db, $LiveUserAdmin;\n\n        if (!$this->exists() || !is_numeric($p_userTypeId)) {\n            return;\n        }\n\n        // if current user type is the same as p_userTypeId, do nothing\n        if ($this->getUserType() == $p_userTypeId) {\n            return;\n        }\n\n        // fetch the given user type\n        $userType = new UserType($p_userTypeId);\n        if ($userType->exists()) {\n            // delete permissions at user level if any\n            $queryStr = 'DELETE FROM liveuser_userrights '\n                       .'WHERE perm_user_id = '.$this->getPermUserId();\n            $g_ado_db->Execute($queryStr);\n            // current user type is different than p_userTypeId\n            if ($this->getUserType() != $p_userTypeId) {\n                $filter = array('group_id' => $this->getUserType(),\n                                'perm_user_id' => $this->getPermUserId());\n                $LiveUserAdmin->perm->removeUserFromGroup($filter);\n            }\n            // add this user to the given user type\n            $data = array('group_id' => $p_userTypeId,\n                          'perm_user_id' => $this->getPermUserId());\n            $LiveUserAdmin->perm->addUserToGroup($data);\n\n            // update the user type in the user table\n            $this->setProperty('fk_user_type', $p_userTypeId);\n            $this->fetch();\n        }\n    } // fn setUserType\n\n\n    /**\n     * @return int\n     */\n    public function getUserId()\n    {\n        return $this->m_data['Id'];\n    } // fn getUserId\n\n\n    /**\n     * Get the user identifier.\n     *\n     * @return int\n     *\n     * TODO: This could be an alias of getUserId() since both of them\n     *       refer to the same data.\n     */\n    public function getAuthUserId()\n    {\n        return $this->m_liveUserData['auth_user_id'];\n    } // fn getAuthUserId\n\n\n    /**\n     * Get the user identifier for the permissions configuration.\n     *\n     * @return int\n     */\n    public function getPermUserId()\n    {\n        return $this->m_liveUserData['perm_user_id'];\n    } // fn getPermUserId\n\n\n    /**\n     * Get unique login key for this user - login key is only good for the\n     * time the user is logged in.\n     *\n     * @return int\n     */\n    public function getKeyId()\n    {\n        return $this->m_data['KeyId'];\n    } // fn getKeyId\n\n\n    /**\n     * Get the real name of the user.\n     *\n     * @return string\n     */\n    public function getRealName()\n    {\n        return $this->m_data['Name'];\n    } // fn getRealName\n\n    /**\n     * Get the last name of the user.\n     *\n     * @return string\n     */\n    public function getLastName()\n    {\n        return $this->m_data['last_name'];\n    }\n\n    /**\n     * Get the login name of the user.\n     *\n     * @return string\n     */\n    public function getUserName()\n    {\n        return $this->m_data['UName'];\n    } // fn getUserName\n\n\n    /**\n     * Get the encrypted password.\n     *\n     * @return string\n     */\n    public function getPassword()\n    {\n        return $this->m_data['Password'];\n    } // fn getPassword\n\n\n    /**\n     * Get the email address of the user.\n     *\n     * @return string\n     */\n    public function getEmail()\n    {\n        return $this->m_data['EMail'];\n    } // fn getEmail\n\n\n    public function getPasswordResetToken()\n    {\n        return $this->m_data['password_reset_token'];\n    }\n\n\n    /**\n     * Return the value of the given variable name.\n     * If the variable name does not exist, return null.\n     *\n     * @param string $p_varName\n     *\n     * @return mixed\n     */\n    public function getConfigValue($p_varName)\n    {\n        if (isset($this->m_config[$p_varName])) {\n            return $this->m_config[$p_varName];\n        } else {\n            return null;\n        }\n    } // fn getConfigValue\n\n\n    /**\n     * Set the user variable to the given value.\n     * If the variable does not exist, it will be created.\n     *\n     * @param string $p_varName\n     * @param mixed $p_value\n     *\n     * @return void\n     *\n     * TODO: Check it out. It is unused so far.\n     */\n    public function setConfigValue($p_varName, $p_value)\n    {\n\t\tglobal $LiveUser, $LiveUserAdmin;\n\n        if (!$this->exists() || empty($p_varName) || !is_string($p_varName)) {\n            return;\n        }\n\n        // get the id for the given right name\n        $filter = array('filters' => array('right_define_name' => $p_varName));\n        $right = $LiveUserAdmin->perm->getRights($filter);\n        if (!is_array($right) || sizeof($right) < 1) {\n            return;\n        }\n\n        if (strtolower($p_varName) == \"reader\") {\n            // special case for the \"Reader\" property\n            $this->setProperty(\"Reader\", $p_value);\n        } else {\n            // check for user type\n            $oldType = UserType::GetUserTypeFromConfig($this->m_config);\n            if (!empty($oldType)) { // must set all not to delete permissions #2364\n                $permissions = $oldType->m_config;\n                $permissions[$p_varName] = $p_value;\n                $this->updatePermissions($permissions);\n                return;\n            }\n\n            $rightId = $right[0]['right_id'];\n            $params = array('right_id' => $rightId,\n                            'perm_user_id' => $this->getPermUserId());\n            if (isset($this->m_config[$p_varName])) {\n                if (!$p_value) {\n                    $LiveUserAdmin->perm->revokeUserRight($params);\n                }\n            } elseif ($p_value) {\n                $LiveUserAdmin->perm->grantUserRight($params);\n            }\n            // update the auth and perm user data to reload changes\n            $LiveUser->updateProperty(true, true);\n\n            // Figure out the new User Type for the user.\n            $userType = UserType::GetUserTypeFromConfig($this->m_config);\n            if ($userType) {\n                $this->setProperty('fk_user_type', $userType->getName());\n            } else {\n                $this->setProperty('fk_user_type', 'NULL', true, true);\n            }\n        }\n    } // fn setConfigValue\n\n\n    /**\n     * Get the user config variables in the form array(\"varname\" => \"value\").\n     *\n     * @return array\n     */\n    public function getConfig()\n    {\n        return $this->m_config;\n    } // fn getConfig\n\n\n    /**\n     * Get the default config for all users.\n     *\n     * @return array\n     */\n    public static function GetDefaultConfig()\n    {\n        global $g_ado_db;\n        static $pluginConfig;\n\n        // loads rights default config from database\n        $queryStr = 'SELECT right_define_name FROM liveuser_rights';\n        $rights = $g_ado_db->GetAll($queryStr);\n        if (!is_array($rights) || sizeof($rights) <= 0) {\n            $rights = array();\n        }\n        foreach ($rights as $right) {\n            self::$m_defaultConfig[$right['right_define_name']] = 'N';\n        }\n\n        if (empty($pluginConfig)) {\n            $pluginConfig = true;\n            foreach (CampPlugin::GetPluginsInfo(true) as $info) {\n            \tself::$m_defaultConfig += $info['userDefaultConfig'];\n            }\n        }\n        return self::$m_defaultConfig;\n    } // fn GetDefaultConfig\n\n\n    /**\n     * Return true if the user has the permission specified.\n     *\n     * @param string $p_permissionString\n     *\n     * @return boolean\n     */\n    public function hasPermission($p_permissionString)\n    {\n        return array_key_exists($p_permissionString, $this->m_config);\n    } // fn hasPermission\n\n\n    /**\n     * Set the specified permission enabled or disabled.\n     *\n     * @param string $p_permissionString\n     * @param boolean $p_value\n     *\n     * @return void\n     */\n    public function setPermission($p_permissionString, $p_value)\n    {\n        $this->setConfigValue($p_permissionString, $p_value);\n    } // fn setPermission\n\n\n    /**\n     * Updates the permissions for the user.\n     *\n     * @param array\n     *    $p_permissions The list of permissions\n     *\n     * @return bool\n     */\n    public function updatePermissions($p_permissions)\n    {\n        global $LiveUserAdmin;\n\n\tif (!is_array($p_permissions) || sizeof($p_permissions) == 0) {\n\t    return false;\n\t}\n\n\t$permissions = array();\n        // generate an array of granted permissions\n        foreach ($p_permissions as $permission => $value) {\n            if ($value) {\n                $permissions[$permission] = $value;\n            }\n        }\n        // find out whether the given config matches an specific user type\n        $userType = UserType::GetUserTypeFromConfig($permissions);\n        if ($userType) {\n            $this->setUserType($userType->getId());\n            $this->setProperty('fk_user_type', $userType->getId());\n        } else {\n            foreach ($p_permissions as $permission => $value) {\n                $filter = array('filters' => array('right_define_name' => $permission));\n                $right = $LiveUserAdmin->perm->getRights($filter);\n\t\tif (!is_array($right) || sizeof($right) == 0) {\n\t\t    continue;\n\t\t}\n                $params = array('right_id' => $right[0]['right_id'],\n                                'perm_user_id' => $this->getPermUserId());\n                // revoke or grant the given right\n                if (isset($this->m_config[$permission])) {\n                    if (!$value) {\n                        $LiveUserAdmin->perm->revokeUserRight($params);\n                        unset($this->m_config[$permission]);\n                    }\n                }\n                if ($value) {\n                    $LiveUserAdmin->perm->grantUserRight($params);\n                }\n            }\n            // remove this user from current user type if any\n            $filter = array('group_id' => $this->getUserType(),\n                            'perm_user_id' => $this->getPermUserId());\n            $LiveUserAdmin->perm->removeUserFromGroup($filter);\n            $this->setProperty('fk_user_type', 'NULL', true, true);\n        }\n    } // fn updatePermissions\n\n\n    /**\n     * Return TRUE if this user is an administrator.\n     *\n     * @return boolean\n     */\n    public function isAdmin()\n    {\n        return !empty($this->m_data['is_admin']);\n    } // fn isAdmin\n\n\n    /**\n     * Check if the password is a valid password in the old format.\n     *\n     * @return boolean\n     */\n    public function isValidOldPassword($p_password)\n    {\n        global $g_ado_db;\n\n        $queryStr = \"SELECT PASSWORD(\".$g_ado_db->escape($p_password).\") AS old_password_1, \"\n                    .\" OLD_PASSWORD(\".$g_ado_db->escape($p_password).\") AS old_password_2\"\n                    .\" FROM liveuser_users \"\n                    .\" WHERE Id = '\".$this->m_data['Id'].\"' \";\n        if (!($row = $g_ado_db->GetRow($queryStr))) {\n            return false;\n        }\n        // Check if the given password matches the one in the database\n        if (($this->m_data['Password'] == $row['old_password_1'])\n                || ($this->m_data['Password'] == $row['old_password_2'] ) ) {\n            return true;\n        }\n        return false;\n    } // fn isValidOldPassword\n\n\n    /**\n     * Return TRUE if the given password matches the one in the database.\n     *\n     * @param string\n     *    $p_password\n     * @param boolean\n     *    $p_isEncrypted Set to true if the password is already encrypted\n     *                   in SHA1 format.\n     *\n     * @return boolean\n     */\n    public function isValidPassword($p_password, $p_isEncrypted = false)\n    {\n        global $g_ado_db;\n\n        if (!$p_isEncrypted) {\n            $queryStr = \"SELECT SHA1(\".$g_ado_db->escape($p_password).\") as encrypted_password \"\n                       .\"FROM liveuser_users \"\n                       .\"WHERE Id = '\".$this->m_data['Id'].\"' \";\n            $encryptedPassword = $g_ado_db->GetOne($queryStr);\n            return ($encryptedPassword == $this->getPassword());\n        }\n        return ($p_password == $this->m_data['Password']);\n    } // fn isValidPassword\n\n    const SALT_LENGTH = 12;\n\tprivate function _hashPass($p_pass, $p_salt = null)\n\t{\n\t\tif( is_null($p_salt) ) {\n        \t$salt = substr(md5(uniqid(openssl_random_pseudo_bytes(self::SALT_LENGTH), true)), 0, self::SALT_LENGTH);\n\t\t} else {\n\t\t\t$salt = substr($salt, 0, self::SALT_LENGTH);\n\t\t}\n    \treturn $salt.sha1($salt.$p_pass);\n\t}\n\n    /**\n     * @param string $p_password\n     *\n     * @return void\n     */\n    public function setPassword($p_password, $p_commit = true)\n    {\n        global $g_ado_db;\n\n        $queryStr = \"SELECT SHA1(\".$g_ado_db->escape($p_password).\") AS PWD\";\n        $row = $g_ado_db->GetRow($queryStr);\n        $this->setProperty('Password', $row['PWD'], $p_commit);\n        $this->setProperty('password_reset_token','');\n    }  // fn setPassword\n\n    /**\n     * Generates token\n     *\n     * @return void\n     */\n    public function setPasswordResetToken()\n    {\n        $this->setProperty('password_reset_token', sha1(uniqid('', TRUE)) . (string) time());\n    }\n\n\n    /**\n     * Initialize the per-session login key. This makes sure the user can only\n     * login from one location at a time.\n     *\n     * @return void\n     */\n    public function initLoginKey()\n    {\n        // Generate the Key ID\n        $this->setProperty('KeyId', 'RAND()*1000000000+RAND()*1000000+RAND()*1000', true, true);\n    } // fn initLoginKey\n\n\n    /**\n     * Return true if the user name exists.\n     *\n     * @param string $p_userName\n     *\n     * @return boolean\n     */\n    public static function UserNameExists($p_userName)\n    {\n        global $g_ado_db;\n\n        $sql = \"SELECT UName FROM liveuser_users \"\n              .\"WHERE UName=\".$g_ado_db->escape($p_userName);\n        if ($g_ado_db->GetOne($sql)) {\n            return true;\n        } else {\n            return false;\n        }\n    } // fn UserNameExists\n\n\n    /**\n     * Return wheather a user exists with the given e-mail address.\n     *\n     * @param string\n     *    $p_email The e-mail address to look for\n     * @param string\n     *    $p_userName (optional) The user name\n     *\n     * @return boolean\n     *    TRUE if the e-mail address already exists, otherwise FALSE\n     */\n    public static function EmailExists($p_email, $p_userName = null)\n    {\n        global $g_ado_db;\n\n        $sql = \"SELECT UName, EMail FROM liveuser_users \"\n              .\"WHERE EMail = \".$g_ado_db->escape($p_email);\n        $row = $g_ado_db->GetOne($sql);\n        if (!$row) {\n            return false;\n        }\n        if (!is_null($p_userName)) {\n            if ($row['UName'] == $p_userName) {\n                return false;\n            }\n        }\n\n        return true;\n    } // fn EmailExists\n\n\n    /**\n     * Get all users matching the given parameters.\n     *\n     * @param boolean $p_onlyAdmin\n     * @param string $p_userType\n     *\n     * @return array\n     */\n    public static function GetUsers($p_onlyAdmin = true, $p_userType = null)\n    {\n        global $g_ado_db;\n\n        $constraints = array();\n        if ($p_onlyAdmin) {\n            $constraints[] = \"Reader='N'\";\n        }\n        if (!is_null($p_userType)) {\n            $constraints[] = \"fk_user_type='\".$p_userType.\"'\";\n        }\n        if (count($constraints) > 0) {\n            $whereStr = \" WHERE \".implode(\" AND \", $constraints);\n        }\n        $sql = \"SELECT * FROM liveuser_users \" . $whereStr;\n        return DbObjectArray::Create(\"User\", $sql);\n    } // fn GetUsers\n\n} // class User\n\n?>\n"
  },
  {
    "path": "newscoop/classes/UserType.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/DatabaseObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Log.php');\n\n/**\n * @package Campsite\n */\nclass UserType extends DatabaseObject\n{\n    const TABLE = 'liveuser_groups';\n\n    public $m_dbTableName = self::TABLE;\n    public $m_keyColumnNames = array('group_id');\n    public $m_keyIsAutoIncrement = false;\n    public $m_config = array();\n    public $m_columnNames = array(\n        'group_id',\n        'group_type',\n        'group_define_name',\n        'role_id',\n    );\n    public $m_exists = false;\n\n    /**\n     * Constructor\n     *\n     * @param string\n     *    $p_userTypeId (optional) The user type identifier\n     *\n     * @return void\n     */\n    public function UserType($p_userTypeId = null)\n    {\n        parent::DatabaseObject($this->m_columnNames);\n        if (is_numeric($p_userTypeId) && $p_userTypeId > 0) {\n            $this->m_data['group_id'] = $p_userTypeId;\n            if ($this->keyValuesExist()) {\n                $this->fetch();\n            }\n        }\n    } // constructor\n\n    /**\n     * Whether the user type exists or not\n     *\n     * @return bool\n     *              $this->m_exists TRUE on success, FALSE on failure\n     */\n    public function exists()\n    {\n        return $this->m_exists;\n    } // fn exists\n\n    /**\n     * Create the new UserType with the config variables given.\n     * If a config variable is not set, the default value will be used.\n     *\n     * @param array\n     *    $p_configVars The privileges list to be granted\n     *\n     * @return bool\n     *              TRUE on success, FALSE on failure\n     */\n    public function create($p_name = null, $p_configVars = array())\n    {\n        global $LiveUserAdmin;\n\n        $success = false;\n        if (empty($p_name) || !is_string($p_name)) {\n            return $success;\n        }\n\n        // create the user type via LiveUser_Admin API\n        $data = array('group_define_name' => $p_name);\n        $uTypeId = $LiveUserAdmin->perm->addGroup($data);\n        if ($uTypeId) {\n            $success = true;\n            $this->m_data['group_id'] = $uTypeId;\n\n            // user successfully created, then grant the checked rights\n            $defaultConfig = User::GetDefaultConfig();\n            if (sizeof($p_configVars)) {\n                foreach ($p_configVars as $varname => $value) {\n                    if (array_key_exists($varname, $defaultConfig)) {\n                        $filter = array('filters' => array('right_define_name' => $varname));\n                        $right = $LiveUserAdmin->perm->getRights($filter);\n                        $data = array('right_id' => $right[0]['right_id'],\n                                      'group_id' => $this->m_data['group_id']);\n                        $LiveUserAdmin->perm->grantGroupRight($data);\n                    }\n                }\n            }\n        }\n        // fetch user type data if it was successfully created\n        $this->fetch();\n\n        return $success;\n    } // fn create\n\n    /**\n     * Delete the user type.\n     *\n     * @return bool\n     *              TRUE on success, FALSE on failure\n     */\n    public function delete()\n    {\n        global $LiveUserAdmin;\n\n        $filter = array('group_id' => $this->m_data['group_id']);\n        if ($LiveUserAdmin->perm->removeGroup($filter)) {\n            $this->m_exists = false;\n\n            return true;\n        }\n\n        return false;\n    } // fn delete\n\n    /**\n     * Get the id of this user type.\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->m_data['group_id'];\n    } // gn getId\n\n    /**\n     * Get the name of this user type.\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->m_data['group_define_name'];\n    } // fn getName\n\n    /**\n     * Return the value of the given variable name.\n     * If the variable name does not exist, return null.\n     *\n     * @param  string $p_varName\n     * @return mixed\n     */\n    public function getValue($p_varName)\n    {\n        if (isset($this->m_config[$p_varName])) {\n            return $this->m_config[$p_varName];\n        } else {\n            return null;\n        }\n    } // fn getValue\n\n    /**\n     * Set the default config value for the given variable.\n     * This creates the new config variable if it didn't exist.\n     *\n     * @param string $p_varName\n     * @param mixed  $p_value\n     *\n     * @return void\n     */\n    public function setValue($p_varName, $p_value)\n    {\n        global $g_ado_db;\n\n        // translate to resource/action\n        require_once dirname(__FILE__) . '/../library/Newscoop/Utils/PermissionToAcl.php';\n\n        try {\n            list($resource, $action) = Newscoop\\Utils\\PermissionToAcl::translate($p_varName);\n        } catch (\\InvalidArgumentException $e) {\n            return;\n        }\n\n        // get type\n        $type = $p_value ? 'allow' : 'deny';\n\n        // get role id\n        $role = (int) $this->m_data['role_id'];\n\n        // store\n        $sql = \"INSERT IGNORE\n                INTO acl_rule (`type`, `role_id`, `resource`, `action`)\n                VALUES ('$type', $role, '$resource', '$action')\";\n        $g_ado_db->Execute($sql);\n    } // fn setValue\n\n\n    /**\n     * Return an array of config values in the form array(\"varname\" => \"value\");\n     *\n     * @return array\n     */\n    public function getConfig()\n    {\n        return $this->m_config;\n    } // fn getConfig\n\n\n    /**\n     * Return true if the user type has the permission specified.\n     *\n     * @param string $p_permissionString\n     *\n     * @return boolean\n     */\n    public function hasPermission($p_permissionString)\n    {\n        return array_key_exists($p_permissionString, $this->m_config);\n    } // fn hasPermission\n\n\n    /**\n     * Set the specified permission.\n     *\n     * @param string\n     *    $p_permissionString\n     * @param boolean\n     *    $p_permissionValue\n     *\n     */\n    public function setPermission($p_permissionString, $p_permissionValue)\n    {\n        $this->setValue($p_permissionString, $p_permissionValue);\n    } // fn setPermission\n\n\n    /**\n     * Get the user type that matches the given name.\n     *\n     * @param string\n     *    $p_name The name of the user type\n     *\n     * @return mixed\n     *               null If the user type does not exists or any error\n     *               UserType object\n     */\n    public static function GetByName($p_name)\n    {\n        global $LiveUserAdmin;\n\n        if (empty($p_name)) {\n            return null;\n        }\n\n        $p_name = addslashes($p_name);\n        $filter = array('filters' => array('group_define_name' => $p_name));\n        $data = $LiveUserAdmin->perm->getGroups($filter);\n        if (!is_array($data) || sizeof($data) < 1) {\n            $uTypeId = null;\n        } else {\n            $uTypeId = $data[0]['group_id'];\n        }\n        $userType = new UserType($uTypeId);\n\n        return $userType;\n    } // fn GetByName\n\n\n    /**\n     * Get the user type that matches the given config variables.\n     *\n     * @param array\n     *    $p_configVars An array of permissions variables\n     *\n     * @return mixed\n     *               bool False The config passed does not match any user type\n     *               object $userType The user type object matching\n     */\n    public static function GetUserTypeFromConfig($p_configVars)\n    {\n        global $LiveUserAdmin;\n\n        if (!is_array($p_configVars) || (count($p_configVars) == 0) ) {\n            return false;\n        }\n\n        $configVarsSize = sizeof($p_configVars);\n        $userTypes = UserType::GetUserTypes();\n        foreach ($userTypes as $userType) {\n            $uTypeConfigSize = sizeof($userType->m_config);\n            if ($configVarsSize > $uTypeConfigSize) {\n                $diff = array_diff_key($p_configVars, $userType->m_config);\n            } else {\n                $diff = array_diff_key($userType->m_config, $p_configVars);\n            }\n            if (sizeof($diff) == 0) {\n                return $userType;\n            }\n        }\n\n        return false;\n    } // fn GetUserTypeFromConfig\n\n\n    /**\n     * Get all the user types with the exception of those with\n     * the Reader permission.\n     *\n     * @return array\n     *               An array of UserType objects.\n     */\n    public static function GetUserTypes()\n    {\n        global $LiveUserAdmin;\n\n        $userTypes = array();\n        $res = $LiveUserAdmin->perm->getGroups();\n        foreach ($res as $userType) {\n            $tmpUserType = new UserType($userType['group_id']);\n            $userTypes[] = $tmpUserType;\n        }\n\n        return $userTypes;\n    } // fn GetUserTypes\n\n} // class UserType\n"
  },
  {
    "path": "newscoop/classes/XR_CcClient.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n\n/**\n *  Array with methods description\n *\n *  Each element has method name as key and contains four subfields:\n *  <ul>\n *   <li>m</li> full method name (include optional prefix)\n *   <li>p</li> array of input parameter names\n *   <li>t</li> array of input parameter types\n *   <li>r</li> array of result element names (not used there at present)\n *   <li>e</li> array of error codes/messages (not used there at present)\n *  </ul>\n */\n$mdefs = array(\n    \"xr_getVersion\" => array(\n        'm'=>'locstor.getVersion',\n        'p'=>array(),\n        't'=>array(),\n        'r'=>array('version'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower layer'\n        )\n    ),\n    \"xr_authenticate\" => array(\n        'm'=>'locstor.authenticate',\n        'p'=>array('login'/*string*/, 'pass'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('authenticate'/*bool*/),\n        'e'=>array(\n            '2000'=>'Bad parameters',\n            '2001'=>'Invalid argument format',\n            '2005'=>'Database error'\n        )\n    ),\n    \"xr_login\" => array(\n        'm'=>'locstor.login',\n        'p'=>array('login'/*string*/, 'pass'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('sessid'/*string*/),\n        'e'=>array(\n            '2001'=>'invalid argument format',\n            '2002'=>'missing login argument',\n            '2003'=>'missing password argument',\n            '2004'=>'the authentication server reported an error',\n            '802' =>'incorrect username or password'\n        )\n    ),\n    \"xr_logout\" => array(\n        'm'=>'locstor.logout',\n        'p'=>array('sessid'/*string*/),\n        't'=>array('string'),\n        'r'=>array('status'/*bool*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '803'=>'logout failed - not logged'\n        )\n     ),\n    \"xr_storeAudioClipOpen\" => array(\n        'm'=>'locstor.storeAudioClipOpen',\n        'p'=>array('sessid'/*string*/, 'gunid'/*string*/, 'metadata'/*string*/, 'fname'/*string*/, 'chsum'/*string*/),\n        't'=>array('string', 'string', 'string', 'string', 'string'),\n        'r'=>array('url'/*string*/, 'token'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_storeAudioClipClose\" => array(\n        'm'=>'locstor.storeAudioClipClose',\n        'p'=>array('sessid'/*string*/, 'token'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('gunid'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_storeWebstream\" => array(\n        'm'=>'locstor.storeWebstream',\n        'p'=>array('sessid'/*string*/, 'gunid'/*string*/, 'metadata'/*string*/, 'fname'/*string*/, 'url'/*string*/),\n        't'=>array('string', 'string', 'string', 'string', 'string'),\n        'r'=>array('gunid'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_accessRawAudioData\" => array(\n        'm'=>'locstor.accessRawAudioData',\n        'p'=>array('sessid'/*string*/, 'gunid'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('url'/*string*/, 'token'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_releaseRawAudioData\" => array(\n        'm'=>array('locstor.releaseRawAudioData'),\n        'p'=>array('token'/*string*/),\n        't'=>array('string'),\n        'r'=>array('status'/*bool*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_downloadRawAudioDataOpen\" => array(\n        'm'=>'locstor.downloadRawAudioDataOpen',\n        'p'=>array('sessid'/*string*/, 'gunid'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('url'/*string*/, 'token'/*string*/, 'chsum'/*string*/, 'size'/*int*/, 'filename'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later',\n            '847'=>'invalid gunid'\n        )\n    ),\n    \"xr_downloadRawAudioDataClose\" => array(\n        'm'=>'locstor.downloadRawAudioDataClose',\n        'p'=>array('sessid'/*string*/, 'token'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('gunid'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_downloadMetadataOpen\" => array(\n        'm'=>'locstor.downloadMetadataOpen',\n        'p'=>array('sessid'/*string*/, 'gunid'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('url'/*string*/, 'token'/*string*/, 'chsum'/*string*/, 'filename'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_downloadMetadataClose\" => array(\n        'm'=>'locstor.downloadMetadataClose',\n        'p'=>array('sessid'/*string*/, 'token'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('gunid'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_deleteAudioClip\" => array(\n        'm'=>'locstor.deleteAudioClip',\n        'p'=>array('sessid'/*string*/, 'gunid'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('status'/*bool*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_createPlaylist\" => array(\n        'm'=>'locstor.createPlaylist',\n        'p'=>array('sessid'/*string*/, 'plid'/*string*/, 'fname'/*string*/),\n        't'=>array('string', 'string', 'string'),\n        'r'=>array('plid'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_editPlaylist\" => array(\n        'm'=>'locstor.editPlaylist',\n        'p'=>array('sessid'/*string*/, 'plid'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('url'/*string*/, 'token'/*string*/, 'chsum'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_savePlaylist\" => array(\n        'm'=>'locstor.savePlaylist',\n        'p'=>array('sessid'/*string*/, 'token'/*string*/, 'newPlaylist'/*string*/),\n        't'=>array('string', 'string', 'string'),\n        'r'=>array('plid'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_revertEditedPlaylist\" => array(\n        'm'=>'locstor.revertEditedPlaylist',\n        'p'=>array('sessid'/*string*/, 'token'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('plid'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_deletePlaylist\" => array(\n        'm'=>'locstor.deletePlaylist',\n        'p'=>array('sessid'/*string*/, 'plid'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('status'/*bool*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_accessPlaylist\" => array(\n        'm'=>'locstor.accessPlaylist',\n        'p'=>array('sessid'/*string*/, 'plid'/*string*/, 'recursive'/*bool*/),\n        't'=>array('string', 'string', 'bool'),\n        'r'=>array('url'/*string*/, 'token'/*sring*/, 'chsum'/*string*/, 'content'/*array*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later',\n            '847'=>'invalid plid'\n        )\n    ),\n    \"xr_releasePlaylist\" => array(\n        'm'=>'locstor.releasePlaylist',\n        'p'=>array('token'/*string*/, 'recursive'/*bool*/),\n        't'=>array('string', 'bool'),\n        'r'=>array('plid'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_existsPlaylist\" => array(\n        'm'=>'locstor.existsPlaylist',\n        'p'=>array('sessid'/*string*/, 'plid'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('exists'/*bool*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_playlistIsAvailable\" => array(\n        'm'=>'locstor.playlistIsAvailable',\n        'p'=>array('sessid'/*string*/, 'plid'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('available'/*bool*/, 'ownerid'/*int*/, 'ownerlogin'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_exportPlaylistOpen\" => array(\n        'm'=>'locstor.exportPlaylistOpen',\n        'p'=>array('sessid'/*string*/, 'plids'/*array*/, 'type'/*string*/, 'standalone'/*bool*/),\n        't'=>array('string', 'array', 'string', 'bool'),\n        'r'=>array('url'/*string*/, 'token'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_exportPlaylistClose\" => array(\n        'm'=>'locstor.exportPlaylistClose',\n        'p'=>array('token'/*string*/),\n        't'=>array('string'),\n        'r'=>array('status'/*bool*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_importPlaylistOpen\" => array(\n        'm'=>'locstor.importPlaylistOpen',\n        'p'=>array('sessid'/*string*/, 'chsum'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('url'/*string*/, 'token'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_importPlaylistClose\" => array(\n        'm'=>'locstor.importPlaylistClose',\n        'p'=>array('token'/*string*/),\n        't'=>array('string'),\n        'r'=>array('gunid'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_renderPlaylistToFileOpen\" => array(\n        'm'=>'locstor.renderPlaylistToFileOpen',\n        'p'=>array('sessid'/*string*/, 'plid'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('token'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_renderPlaylistToFileCheck\" => array(\n        'm'=>'locstor.renderPlaylistToFileCheck',\n        'p'=>array('token'/*string*/),\n        't'=>array('string'),\n        'r'=>array('status'/*string*/, 'url'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_renderPlaylistToFileClose\" => array(\n        'm'=>'locstor.renderPlaylistToFileClose',\n        'p'=>array('token'/*string*/),\n        't'=>array('string'),\n        'r'=>array('status'/*bool*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_renderPlaylistToStorageOpen\" => array(\n        'm'=>'locstor.renderPlaylistToStorageOpen',\n        'p'=>array('sessid'/*string*/, 'plid'/*string*/),\n        't'=>array('string','string'),\n        'r'=>array('token'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_renderPlaylistToStorageCheck\" => array(\n        'm'=>'locstor.renderPlaylistToStorageCheck',\n        'p'=>array('token'/*string*/),\n        't'=>array('string'),\n        'r'=>array('status'/*string*/, 'gunid'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_renderPlaylistToRSSOpen\" => array(\n        'm'=>'locstor.renderPlaylistToRSSOpen',\n        'p'=>array('sessid'/*string*/, 'plid'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('token'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_renderPlaylistToRSSCheck\" => array(\n        'm'=>'locstor.renderPlaylistToRSSCheck',\n        'p'=>array('token'/*string*/),\n        't'=>array('string'),\n        'r'=>array('status'/*string*/, 'url'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_renderPlaylistToRSSClose\" => array(\n        'm'=>'locstor.renderPlaylistToRSSClose',\n        'p'=>array('token'/*string*/),\n        't'=>array('string'),\n        'r'=>array('status'/*bool*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_createBackupOpen\" => array(\n        'm'=>'locstor.createBackupOpen',\n        'p'=>array('sessid'/*string*/, 'criteria'/*struct*/),\n        't'=>array('string', 'struct'),\n        'r'=>array('token'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_createBackupCheck\" => array(\n        'm'=>'locstor.createBackupCheck',\n        'p'=>array('token'/*string*/),\n        't'=>array('string'),\n        'r'=>array('status'/*string*/, 'url'/*string*/, 'metafile'/*string*/, 'faultString'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_createBackupList\" => array(\n        'm'=>'locstor.createBackupList',\n        'p'=>array('stat'/*string*/),\n        't'=>array('string'),\n        'r'=>array('status'/*string*/, 'url'/*string*/, 'metafile'/*string*/, 'faultString'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_createBackupClose\" => array(\n        'm'=>'locstor.createBackupClose',\n        'p'=>array('token'/*string*/),\n        't'=>array('string'),\n        'r'=>array('status'/*bool*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_restoreBackupOpen\" => array(\n        'm'=>'locstor.restoreBackupOpen',\n        'p'=>array('sessid'/*string*/, 'filename'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('token'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_restoreBackupCheck\" => array(\n        'm'=>'locstor.restoreBackupCheck',\n        'p'=>array('token'/*string*/),\n        't'=>array('string'),\n        'r'=>array('status'/*array*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_restoreBackupClose\" => array(\n        'm'=>'locstor.restoreBackupClose',\n        'p'=>array('token'/*string*/),\n        't'=>array('string'),\n        'r'=>array('status'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_existsAudioClip\" => array(\n        'm'=>'locstor.existsAudioClip',\n        'p'=>array('sessid'/*string*/, 'gunid'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('exists'/*bool*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_getAudioClip\" => array(\n        'm'=>'locstor.getAudioClip',\n        'p'=>array('sessid'/*string*/, 'gunid'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('metadata'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_updateAudioClipMetadata\" => array(\n        'm'=>'locstor.updateAudioClipMetadata',\n        'p'=>array('sessid'/*string*/, 'gunid'/*string*/, 'metadata'/*string*/),\n        't'=>array('string', 'string', 'string'),\n        'r'=>array('status'/*bool*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_searchMetadata\" => array(\n        'm'=>'locstor.searchMetadata',\n        'p'=>array('sessid'/*string*/, 'criteria'/*array*/),\n        't'=>array('string', 'array'),\n        'r'=>array('cnt'/*int*/, 'results'/*array*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_browseCategory\" => array(\n        'm'=>'locstor.browseCategory',\n        'p'=>array('sessid'/*string*/, 'category'/*string*/, 'criteria'/*array*/),\n        't'=>array('string', 'string', 'array'),\n        'r'=>array('results'/*array*/, 'cnt'/*int*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later'\n        )\n    ),\n    \"xr_loadPref\" => array(\n        'm'=>'locstor.loadPref',\n        'p'=>array('sessid'/*string*/, 'key'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('value'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later',\n            '848'=>'invalid session id',\n            '849'=>'invalid preference key'\n        )\n    ),\n    \"xr_savePref\" => array(\n        'm'=>'locstor.savePref',\n        'p'=>array('sessid'/*string*/, 'key'/*string*/, 'value'/*string*/),\n        't'=>array('string', 'string', 'string'),\n        'r'=>array('status'/*bool*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later',\n            '848'=>'invalid session id'\n        )\n    ),\n    \"xr_delPref\" => array(\n        'm'=>'locstor.delPref',\n        'p'=>array('sessid'/*string*/, 'key'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('status'/*bool*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later',\n            '848'=>'invalid session id',\n            '849'=>'invalid preference key'\n        )\n    ),\n    \"xr_loadGroupPref\" => array(\n        'm'=>'locstor.loadGroupPref',\n        'p'=>array('sessid'/*string*/, 'group'/*string*/, 'key'/*string*/),\n        't'=>array('string', 'string', 'string'),\n        'r'=>array('value'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later',\n            '820'=>'invalid group name',\n            '848'=>'invalid session id',\n            '849'=>'invalid preference key'\n        )\n    ),\n    \"xr_saveGroupPref\" => array(\n        'm'=>'locstor.saveGroupPref',\n        'p'=>array('sessid'/*string*/, 'group'/*string*/, 'key'/*string*/, 'value'/*string*/),\n        't'=>array('string', 'string', 'string', 'string'),\n        'r'=>array('status'/*bool*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later',\n            '820'=>'invalid group name',\n            '848'=>'invalid session id'\n        )\n    ),\n    \"xr_getTransportInfo\" => array(\n        'm'=>'locstor.getTransportInfo',\n        'p'=>array('trtok'/*string*/),\n        't'=>array('string'),\n        'r'=>array('trtype'/*string*/, 'direction'/*string*/, 'state'/*string*/, 'expectedsize'/*int*/, 'realsize'/*int*/, 'expectedchsum'/*string*/, 'realchsum'/*string*/, 'title'/*string*/, 'errmsg'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later',\n            '848'=>'invalid session id',\n            '872'=>'invalid transport token'\n        )\n    ),\n    \"xr_turnOnOffTransports\" => array(\n        'm'=>'locstor.turnOnOffTransports',\n        'p'=>array('sessid'/*string*/, 'onOff'/*bool*/),\n        't'=>array('string', 'bool'),\n        'r'=>array('state'/*bool*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later',\n            '848'=>'invalid session id',\n            '872'=>'invalid transport token'\n        )\n    ),\n    \"xr_doTransportAction\" => array(\n        'm'=>'locstor.doTransportAction',\n        'p'=>array('sessid'/*string*/, 'trtok'/*string*/, 'action'/*string*/),\n        't'=>array('string', 'string', 'string'),\n        'r'=>array('state'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later',\n            '848'=>'invalid session id',\n            '872'=>'invalid transport token'\n        )\n    ),\n    \"xr_uploadFile2Hub\" => array(\n        'm'=>'locstor.uploadFile2Hub',\n        'p'=>array('sessid'/*string*/, 'filePath'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('trtok'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later',\n            '848'=>'invalid session id',\n            '872'=>'invalid transport token'\n        )\n    ),\n    \"xr_getHubInitiatedTransfers\" => array(\n        'm'=>'locstor.getHubInitiatedTransfers',\n        'p'=>array('sessid'/*string*/),\n        't'=>array('string'),\n        'r'=>array(array('trtok'/*string*/)),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later',\n            '848'=>'invalid session id',\n            '872'=>'invalid transport token'\n        )\n    ),\n    \"xr_startHubInitiatedTransfer\" => array(\n        'm'=>'locstor.startHubInitiatedTransfer',\n        'p'=>array('trtok'/*string*/),\n        't'=>array('string'),\n        'r'=>array('trtok'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later',\n            '848'=>'invalid session id',\n            '872'=>'invalid transport token'\n        )\n    ),\n    \"xr_upload2Hub\" => array(\n        'm'=>'locstor.upload2Hub',\n        'p'=>array('sessid'/*string*/, 'gunid'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('trtok'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later',\n            '848'=>'invalid session id',\n            '872'=>'invalid transport token'\n        )\n    ),\n    \"xr_downloadFromHub\" => array(\n        'm'=>'locstor.downloadFromHub',\n        'p'=>array('sessid'/*string*/, 'gunid'/*string*/),\n        't'=>array('string', 'string'),\n        'r'=>array('trtok'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later',\n            '848'=>'invalid session id',\n            '872'=>'invalid transport token'\n        )\n    ),\n    \"xr_globalSearch\" => array(\n        'm'=>'locstor.globalSearch',\n        'p'=>array('sessid'/*string*/, 'criteria'/*array*/),\n        't'=>array('string', 'array'),\n        'r'=>array('trtok'/*string*/),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later',\n            '848'=>'invalid session id',\n            '872'=>'invalid transport token'\n        )\n    ),\n    \"xr_getSearchResults\" => array(\n        'm'=>'locstor.getSearchResults',\n        'p'=>array('trtok'/*string*/),\n        't'=>array('string'),\n        'r'=>array(array('gunid'/*string*/, 'type'/*string*/, 'title'/*string*/, 'creator'/*string*/, 'length'/*string*/)),\n        'e'=>array(\n            '3'=>'incorrect parameters',\n            '801'=>'bad params',\n            '805'=>'message from lower later',\n            '848'=>'invalid session id',\n            '872'=>'invalid transport token'\n        )\n    )\n);\n\n\n/**\n * XR_CcClient provides a XML RPC client for the Campcaster\n * XML RPC API.\n *\n * @package Campsite\n */\nclass XR_CcClient {\n    /**\n     *  Array with methods description\n     */\n    var $mdefs = array();\n    /**\n     *  XMLRPC client object reference\n     */\n    var $client = NULL;\n    /**\n     *  Verbosity flag\n     */\n    var $verbose = FALSE;\n    /**\n     *  XMLRPC debug flag\n     */\n    var $debug = 0;\n\n\n    /**\n     *  Constructor - pelase DON'T CALL IT, use factory method instead\n     *\n     *  @param mdefs array, hash array with methods description\n     *  @param debug int, XMLRPC debug flag\n     *  @param verbose boolean, verbosity flag\n     *\n     *  @return this\n     */\n    public function XR_CcClient ($mdefs, $debug=0, $verbose=FALSE)\n    {\n        $this->mdefs = $mdefs;\n        $this->debug = $debug;\n        $this->verbose = $verbose;\n        $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n\n        $serverPath = \"http://\"\n            . $preferencesService->CampcasterHostName . \":\"\n            . $preferencesService->CampcasterHostPort\n            . $preferencesService->CampcasterXRPCPath\n            . $preferencesService->CampcasterXRPCFile;\n\n        if($this->verbose) echo \"serverPath: $serverPath\\n\";\n        $url = parse_url($serverPath);\n        if ($url === false) {\n        \t$this->client = null;\n        } else {\n\t        $this->client = new XML_RPC_Client($url['path'], $url['host'], $url['port']);\n        }\n    } // constructor\n\n\n    /**\n     *  Factory, create object instance\n     *\n     *  In fact it doesn't create instance of XR_CcClient, but\n     *  dynamically extend this class with set of methods based on $mdefs array\n     *  (using eval function) and instantiate resulting class\n     *  XR_CcClientCore instead.\n     *  Each new method in this subclass accepts parameters according to $mdefs\n     *  array, call wrapper callMethod(methodname, parameters) and return its\n     *  result.\n     *\n     *  @param mdefs array, hash array with methods description\n     *  @param debug int, XMLRPC debug flag\n     *  @param verbose boolean, verbosity flag\n     *\n     *  @return object, created object instance\n     */\n    public static function &Factory($mdefs, $debug=0, $verbose=FALSE)\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\n    \tif (class_exists('XR_CcClientCore')) {\n    \t\t$xrc = new XR_CcClientCore($mdefs, $debug, $verbose);\n    \t\treturn $xrc;\n    \t}\n    \tif (!is_array($mdefs)) {\n    \t\t$result = new PEAR_Error(\"Invalid methods definition in XML-RCP client.\");\n    \t\treturn $result;\n    \t}\n        $f = '';\n        foreach ($mdefs as $fn=>$farr) {\n            $f .=\n                '    function '.$fn.'(){'.\"\\n\".\n                '        $pars = func_get_args();'.\"\\n\".\n                '        $r = $this->callMethod(\"'.$fn.'\", $pars);'.\"\\n\".\n                '        return $r;'.\"\\n\".\n                '    }'.\"\\n\";\n        }\n        $e =\n            \"class XR_CcClientCore extends XR_CcClient {\\n\".\n            \"$f\\n\".\n            \"}\\n\";\n        $r = eval($e);\n        if ($r === FALSE) {\n            $result = new PEAR_Error($translator->trans(\"There was a problem trying to execute the XML RPC function.\", array(), 'api'));\n        \treturn $result;\n        }\n        $xrc = new XR_CcClientCore($mdefs, $debug, $verbose);\n        if (is_null($xrc->client)) {\n        \t$result = new PEAR_Error($translator->trans(\"The Campcaster server configuration is invalid.\", array(), 'api'));\n        \treturn $result;\n        }\n        return $xrc;\n    } // fn factory\n\n\n    /**\n     *  XMLRPC methods wrapper\n     *  Encode XMLRPC request message, send it, receive and decode response.\n     *\n     *  @param method string, method name\n     *  @param gettedPars array, returned by func_get_args() in called method\n     *\n     *  @return array, PHP hash with response\n     */\n    public function callMethod($method, $gettedPars)\n    {\n        $parr = array();\n        $XML_RPC_val = new XML_RPC_Value;\n        foreach($this->mdefs[$method]['p'] as $i=>$p){\n            $parr[$p] = new XML_RPC_Value;\n            if ($this->mdefs[$method]['t'][$i] == 'array') {\n                $parr[$p] = XML_RPC_encode($gettedPars[$i]);\n            } else {\n                $parr[$p]->addScalar($gettedPars[$i], $this->mdefs[$method]['t'][$i]);\n            }\n        }\n        $XML_RPC_val->addStruct($parr);\n        $fullmethod = $this->mdefs[$method]['m'];\n        $msg = new XML_RPC_Message($fullmethod, array($XML_RPC_val));\n        if($this->verbose){\n            echo \"parr:\\n\";\n            var_dump($parr);\n            echo \"message:\\n\";\n            echo $msg->serialize().\"\\n\";\n        }\n        $this->client->setDebug($this->debug);\n        $res = $this->client->send($msg);\n        if(!$res) {\n            return $this->client->errstr;\n        }\n        if($res->faultCode() > 0) {\n            return PEAR::raiseError(\n                \"XR_CcClient::$method:\".$res->faultString().\" \".\n                $res->faultCode().\"\\n\", $res->faultCode(),\n                PEAR_ERROR_RETURN\n            );\n        }\n        if($this->verbose){\n            echo \"result:\\n\";\n            echo $res->serialize();\n        }\n        $val = $res->value();\n        $resp = XML_RPC_decode($res->value());\n\n        return $resp;\n    } // fn callMethod\n\n\n    /**\n     * Test whether the Campcaster server is reachable or not\n     * Uses xr_getVersion() to check communication and xr_loadPref\n     * to validate the session id\n     *\n     * @param void/string\n     *      void to check communication\n     *      $sessid the session id to validate\n     *\n     * @return boolean|PEAR_Error\n     *      TRUE on success, PEAR_Error on failure\n     */\n    public function ping($sessid = null)\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $resp = $this->xr_loadPref($sessid, 'stationName');\n        if (is_string($resp) && $resp == 'Connection refused') {\n            $resp = new PEAR_Error('Connection refused');\n        }\n        if (PEAR::isError($resp)) {\n\t        if ($resp->getMessage() == 'Connection refused') {\n    \t        return new PEAR_Error($translator->trans(\"Communication error: \".$this->client->errstr, array(), 'api'));\n        \t}\n            if ($resp->getCode() == 805 || $resp->getCode() == 804) {\n                return $resp;\n            }\n        }\n        return true;\n    } // fn ping\n\n} // class XR_CcClient\n\n?>\n"
  },
  {
    "path": "newscoop/classes/browser_detection.php",
    "content": "<?php\n/*\nScript Name: Full Featured PHP Browser/OS detection\nAuthor: Harald Hope, Website: http://techpatterns.com/\nScript Source URI: http://techpatterns.com/downloads/php_browser_detection.php\nVersion 5.3.17\nCopyright (C) July 10 2011\n\nSpecial thanks to alanjstr for cleaning up the code, especially on function get_item_version(),\nwhich he improved greatly. Also to Tapio Markula, for his initial inspiration of creating a \nuseable php browser detector. Also to silver Harloe for his ideas about using associative arrays\nto both return and use as main return handler.\n\nThis program is free software; you can redistribute it and/or modify it under\nthe terms of the GNU General Public License as published by the Free Software\nFoundation; either version 3 of the License, or (at your option) any later version.\n\nThis program is distributed in the hope that it will be useful, but WITHOUT\nANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS\nFOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n\nGet the full text of the GPL here: http://www.gnu.org/licenses/gpl.txt\n\nCoding conventions:\nhttp://cvs.sourceforge.net/viewcvs.py/phpbb/phpBB2/docs/codingstandards.htm?rev=1.3\n\n******************************************\nThis is currently set to accept these primary parameters, although you can add as many as you want:\nNote: all string data is returned as LOWER CASE, so make sure to keep that in mind when testing.\nNOTE: as 5.3.0 some of these names have been changed to be more human readable. The old names will\nstill work, and it is noted where this change has happened like this: [deprecated: moz_version].\nThis change will will NOT break your existing programming or browser detection function calls.\n******************************************\n1. browser_math_number - [deprecated: math_number] returns basic version number, for math\n   comparison, ie. 1.2rel2a becomes 1.2\n2. browser_name - returns the full browser name string, if available, otherwise returns ''\n   (information not available)\n2. browser_number - [deprecated: number] returns the browser version number, if available,\n   otherwise returns '' (information not available)\n3. browser_working [deprecated: browser] - returns the working shorthand browser name: \n   ie, op, moz, konq, saf, ns4, webkit, and some others. If not shorthand, it will probably just\n   return the full browser name, like lynx\n4. dom - returns true/false if it is a basic dom browser, ie >= 5, opera >= 5, all new mozillas,\n   safaris, konquerors\n5. ie_version - tests to see what general IE it is.\n   Possible return values:\n     ie9x - all new msie 9 or greater - note that if in compat mode, 7,8,9 all show as 7\n     ie7x - all new msie 7 or greater\n     ie5x - msie 5 and 6, not mac\n     ieMac - msie 5.x mac release\n     ie4 - msie 4\n     old - pre msie 4\n6. full - returns this array, listed by array index number: \n     0 - $browser_working\n     1 - $browser_number\n     2 - $ie_version\n     3 - $b_dom_browser\n     4 - $b_safe_browser\n     5 - $os_type\n     6 - $os_number\n     7 - $browser_name\n     8 - $ua_type\n     9 - $browser_math_number\n     10 - $a_moz_data\n     11 - $a_webkit_data\n     12 - $mobile_test (null or string value)\n     13 - $a_mobile_data (null or array of mobile data)\n     14 - $true_ie_number\n     15 - $run_time\n   Note that moz/webkit_data are arrays which could contain null data, so always test first before\n   assuming the moz/webkit arrays contain any data, ie, if moz or if webkit, then...\n7. full_assoc - returns all relevant browser information in an associative array, same as above\n   only with string indexes instead of numeric:\n     'browser_working' => $browser_working,\n     'browser_number' => $browser_number,\n     'ie_version' => $ie_version,\n     'dom' => $b_dom_browser,\n     'safe' => $b_safe_browser,\n     'os' => $os_type,\n     'os_number' => $os_number,\n     'browser_name_' => $browser_name,\n     'ua_type' => $ua_type,\n     'browser_math_number' => $browser_math_number,\n     'moz_data' => $a_moz_data,\n     'webkit_data' => $a_webkit_data,\n     'mobile_test' => $mobile_test,\n     'mobile_data' => $a_mobile_data,\n     'true_ie_number' => $true_ie_number\n     'run_time' => $run_time\n8. mobile_test - returns a string of various mobile id methods, from device to os to browser. \n   If string is not null, should be a mobile. Also see 16, 'ua_type', which will be 'mobile' \n   if handheld.\n9. mobile_data - returns an array of data about mobiles. Note the browser/os number data is very\n   unreliable so don't count on that. No blackberry version handling done explicitly.\n   Make sure to test if this is an array because if it's not mobile it will be null, not an array\n   listed by array index number: \n     0 - $mobile_device \n     1 - $mobile_browser\n     2 - $mobile_browser_number\n     3 - $mobile_os\n     4 - $mobile_os_number\n     5 - $mobile_server\n     6 - $mobile_server_number\n     7 - $mobile_device_number (this was added so has to be end of list to not break existing code)\n    Note: $mobile_browser only returns if a specifically mobile browser is detected, like minimo.\n    Same for mobile os, with the exception of linux. Otherwise the standard script os/browser data\n    is used. $mobile_server is a handheld service like docomo, novarro-vision, etc. Sometimes the\n    string will contain no other usable data than this to determine if it's handheld or not.\n10. moz_data [deprecated: moz_version] - returns array of mozilla / gecko information\n    Return Array listed by index number:\n      0 - $moz_type [moz version - the specific brand name that is, eg: firefox)\n      1 - $moz_number - the full version number of $moz_type (eg: for firefox: 3.6+2b)\n      2 - $moz_rv - the Mozilla rv version number, math comparison version. This tells you what\n          gecko engine is running in the browser (eg rv: 1.8)\n      3 - $moz_rv_full - rv number (for full rv, including alpha and beta versions: 1.8.1-b3)\n      4 - $moz_release_date - release date of the browser\n11. os - returns which os is being used - win, nt, mac, OR iphone, blackberry, palmos, palmsource, \n    symbian, beos, os2, amiga, webtv, linux, unix. \n12. os_number - returns windows versions, 95, 98, ce, me, nt: 4; 5 [windows 2000]; \n    5.1 [windows xp]; 5.2 [Server 2003]; 6.0 [Windows Vista], 6.1 [Windows 7].\n    Only win, nt, mac, iphone return os numbers (mac/iphone return 10 if OS X.)\n    OR returns linux distro/unix release name, otherwise returns null\n13. run_time - the time it takes this script to execute from start to point of returning value\n    Requires PHP 5 or greater. Returns time in seconds to 8 decimal places: 0.00245687 \n    Run time does not count the time used by PHP to include/parse the file initially. That total\n    time is about 5-10x longer. Because subsequent script run throughs go VERY fast, you will see\n    the seconds go from something like 0.00115204 for first time, to something like 0.00004005\n    for second and more runs. \n14. safe - returns true/false, you can determine what makes the browser be safe lower down,\n    currently it's set for ns4 and pre version 1 mozillas not being safe, plus all older browsers\n15. true_ie_number - [deprecated: true_msie_version] returns the true version of msie running,\n    ignoring the compat mode version.\n    Note that php will turn 7.0 to 8 when adding 1, so keep that in mind in your tests. 7.1 \n    will become 8.1 as expected, however. This test currently only tests for 7.x -> 8.x\n    FYI: in PHP, 7.0 == 7 is true but 7.0 === 7 is NOT true.\n    If this is null but set, then it is NOT running in compatibility mode.\n16. ua_type [deprecated: type] - returns one of the following: \n      bot (web bot)\n      bro (normal browser)\n      bbro (simple browser)\n      mobile (handheld)\n      dow (downloading agent)\n      lib (http library)\n17. webkit_data - [deprecated: webkit_version] returns array of webkit data.\n    Return Array listed by index number:\n      0 - $webkit_type [webkit version name (Eg. chrome)]\n      1 - $webkit_type_number [webkit version number (Eg. Chrome's: 1.2)]\n      2 - $browser_number [the actual webkit version number (Eg. Webkit's: 436)]\n******************************************\nOptional second script parameter, to turn off features if not required. These would be the second\nargument used in the function call if used, like: browser_detection( 'full', '1' );\nTest Exclusions - switches to turn off various tests, useful if you want to optimize execution\nand don't need the test data type excluded.\n******************************************\n1 - turn off os tests\n2 - turn off mobile tests\n3 - turn off mobile and os tests\n******************************************\nOptional third script parameter, pass the script externally derived UA strings, for testing/\nprocessing purposes. Idea from Rui Teixeira \nNote: include a blank second arg when you use the 3rd parameter if the second is not set:  \nexample: browser_detection( 'full', '', $test_string_data ) \nUsing third parameter sets $b_repeat to false in other words, if you use this parameter, the script\nwill do the full processing on the UA string, then switch $b_repeat back to true at the end.\n\nHowever, be aware that all requests to the script after the last testing value is sent will\nuse the previous testing value, NOT the actual UA string, so make sure to handle that in your\nprogramming if you require the true UA data to be processed after the final testing value is sent\nby resetting that data with the true UA value.\n*******************************************/\n\n// main script, uses two other functions, get_os_data() and get_item_version() as needed\n// Optional $test_excludes is either null or one of the above values\n\nfunction browser_detection( $which_test, $test_excludes='', $external_ua_string='' ) \n{\n\t/*\n\tuncomment the global variable declaration if you want the variables to be available on \n\ta global level throughout your php page, make sure that php is configured to support \n\tthe use of globals first!\n\tUse of globals should be avoided however, and they are not necessary with this script\n\t/*\n\t/*\n\tglobal $a_full_assoc_data, $a_mobile_data, $a_moz_data, $a_webkit_data, $b_dom_browser, $b_repeat, $b_safe_browser, $browser_name, $browser_number, $browser_math_number, $browser_user_agent, $browser_working, $ie_version, $mobile_test, $moz_number, $moz_rv, $moz_rv_full, $moz_release_date, $moz_type, $os_number, $os_type, $true_ie_number, $ua_type, $webkit_type, $webkit_type_number;\n\t*/\n\tscript_time(); // set script timer to start timing\n\n\tstatic $a_full_assoc_data, $a_mobile_data, $a_moz_data, $a_webkit_data, $b_dom_browser, $b_repeat, $b_safe_browser, $browser_name, $browser_number, $browser_math_number, $browser_user_agent, $browser_working, $ie_version, $mobile_test, $moz_number, $moz_rv, $moz_rv_full, $moz_release_date, $moz_type, $os_number, $os_type, $true_ie_number, $ua_type, $webkit_type, $webkit_type_number;\n\t\n\t// switch off the optimization for external ua string testing.\n\tif ( $external_ua_string )\n\t{\n\t\t$b_repeat = false;\n\t}\n\t\n\t/*\n\tthis makes the test only run once no matter how many times you call it since \n\tall the variables are filled on the first run through, it's only a matter of \n\treturning the the right ones\n\t*/\n\tif ( !$b_repeat )\n\t{\n\t\t//initialize all variables with default values to prevent error\n\t\t$a_browser_math_number = '';\n\t\t$a_full_assoc_data = '';\n\t\t$a_full_data = '';\n\t\t$a_mobile_data = '';\n\t\t$a_moz_data = '';\n\t\t$a_os_data = '';\n\t\t$a_unhandled_browser = '';\n\t\t$a_webkit_data = '';\n\t\t$b_dom_browser = false;\n\t\t$b_os_test = true;\n\t\t$b_mobile_test = true;\n\t\t$b_safe_browser = false;\n\t\t$b_success = false;// boolean for if browser found in main test\n\t\t$browser_math_number = '';\n\t\t$browser_temp = '';\n\t\t$browser_working = '';\n\t\t$browser_number = '';\n\t\t$ie_version = '';\n\t\t$mobile_test = '';\n\t\t$moz_release_date = '';\n\t\t$moz_rv = '';\n\t\t$moz_rv_full = '';\n\t\t$moz_type = '';\n\t\t$moz_number = '';\n\t\t$os_number = '';\n\t\t$os_type = '';\n\t\t$run_time = '';\n\t\t$true_ie_number = '';\n\t\t$ua_type = 'bot';// default to bot since you never know with bots\n\t\t$webkit_type = '';\n\t\t$webkit_type_number = '';\n\n\t\t// set the excludes if required\n\t\tif ( $test_excludes )\n\t\t{\n\t\t\tswitch ( $test_excludes )\n\t\t\t{\n\t\t\t\tcase '1':\n\t\t\t\t\t$b_os_test = false;\n\t\t\t\t\tbreak;\n\t\t\t\tcase '2':\n\t\t\t\t\t$b_mobile_test = false;\n\t\t\t\t\tbreak;\n\t\t\t\tcase '3':\n\t\t\t\t\t$b_os_test = false;\n\t\t\t\t\t$b_mobile_test = false;\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tdie( 'Error: bad $test_excludes parameter 2 used: ' . $test_excludes );\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\t/*\n\t\tmake navigator user agent string lower case to make sure all versions get caught\n\t\tisset protects against blank user agent failure. tolower also lets the script use\n\t\tstrstr instead of stristr, which drops overhead slightly.\n\t\t*/\n\t\tif ( $external_ua_string )\n\t\t{\n\t\t\t$browser_user_agent = strtolower( $external_ua_string );\n\t\t}\n\t\telseif ( isset( $_SERVER['HTTP_USER_AGENT'] ) )\n\t\t{\n\t\t\t$browser_user_agent = strtolower( $_SERVER['HTTP_USER_AGENT'] );\n\t\t}\n\t\telse\n\t\t{\n\t\t\t$browser_user_agent = '';\n\t\t}\n\n\t\t/*\n\t\tpack the browser type array, in this order\n\t\tthe order is important, because opera must be tested first, then omniweb [which has safari\n\t\tdata in string], same for konqueror, then safari, then gecko, since safari navigator user\n\t\tagent id's with 'gecko' in string.\n\t\tNote that $b_dom_browser is set for all  modern dom browsers, this gives you a default to use.\n\n\t\tarray[0] = id string for useragent, array[1] is if dom capable, array[2] is working name \n\t\tfor browser, array[3] identifies navigator useragent type\n\n\t\tNote: all browser strings are in lower case to match the strtolower output, this avoids\n\t\tpossible detection errors\n\n\t\tNote: These are the navigator user agent types:\n\t\tbro - modern, css supporting browser.\n\t\tbbro - basic browser, text only, table only, defective css implementation\n\t\tbot - search type spider\n\t\tdow - known download agent\n\t\tlib - standard http libraries\n\t\tmobile - handheld or mobile browser, set using $mobile_test\n\t\t*/\n\t\t// known browsers, list will be updated routinely, check back now and then\n\t\t$a_browser_types = array(\n\t\t\tarray( 'opera', true, 'op', 'bro' ),\n\t\t\tarray( 'msie', true, 'ie', 'bro' ),\n\t\t\t// webkit before gecko because some webkit ua strings say: like gecko\n\t\t\tarray( 'webkit', true, 'webkit', 'bro' ),\n\t\t\t// konq will be using webkit soon\n\t\t\tarray( 'konqueror', true, 'konq', 'bro' ),\n\t\t\t// covers Netscape 6-7, K-Meleon, Most linux versions, uses moz array below\n\t\t\tarray( 'gecko', true, 'moz', 'bro' ),\n\t\t\tarray( 'netpositive', false, 'netp', 'bbro' ),// beos browser\n\t\t\tarray( 'lynx', false, 'lynx', 'bbro' ), // command line browser\n\t\t\tarray( 'elinks ', false, 'elinks', 'bbro' ), // new version of links\n\t\t\tarray( 'elinks', false, 'elinks', 'bbro' ), // alternate id for it\n\t\t\tarray( 'links2', false, 'links2', 'bbro' ), // alternate links version\n\t\t\tarray( 'links ', false, 'links', 'bbro' ), // old name for links\n\t\t\tarray( 'links', false, 'links', 'bbro' ), // alternate id for it\n\t\t\tarray( 'w3m', false, 'w3m', 'bbro' ), // open source browser, more features than lynx/links\n\t\t\tarray( 'webtv', false, 'webtv', 'bbro' ),// junk ms webtv\n\t\t\tarray( 'amaya', false, 'amaya', 'bbro' ),// w3c browser\n\t\t\tarray( 'dillo', false, 'dillo', 'bbro' ),// linux browser, basic table support\n\t\t\tarray( 'ibrowse', false, 'ibrowse', 'bbro' ),// amiga browser\n\t\t\tarray( 'icab', false, 'icab', 'bro' ),// mac browser\n\t\t\tarray( 'crazy browser', true, 'ie', 'bro' ),// uses ie rendering engine\n\t\n\t\t\t// search engine spider bots:\n\t\t\tarray( 'bingbot', false, 'bing', 'bot' ),// bing \n\t\t\tarray( 'exabot', false, 'exabot', 'bot' ),// exabot\n\t\t\tarray( 'googlebot', false, 'google', 'bot' ),// google\n\t\t\tarray( 'google web preview', false, 'googlewp', 'bot' ),// google preview \n\t\t\tarray( 'mediapartners-google', false, 'adsense', 'bot' ),// google adsense\n\t\t\tarray( 'yahoo-verticalcrawler', false, 'yahoo', 'bot' ),// old yahoo bot\n\t\t\tarray( 'yahoo! slurp', false, 'yahoo', 'bot' ), // new yahoo bot\n\t\t\tarray( 'yahoo-mm', false, 'yahoomm', 'bot' ), // gets Yahoo-MMCrawler and Yahoo-MMAudVid bots\n\t\t\tarray( 'inktomi', false, 'inktomi', 'bot' ), // inktomi bot\n\t\t\tarray( 'slurp', false, 'inktomi', 'bot' ), // inktomi bot\n\t\t\tarray( 'fast-webcrawler', false, 'fast', 'bot' ),// Fast AllTheWeb\n\t\t\tarray( 'msnbot', false, 'msn', 'bot' ),// msn search\n\t\t\tarray( 'ask jeeves', false, 'ask', 'bot' ), //jeeves/teoma\n\t\t\tarray( 'teoma', false, 'ask', 'bot' ),//jeeves teoma\n\t\t\tarray( 'scooter', false, 'scooter', 'bot' ),// altavista\n\t\t\tarray( 'openbot', false, 'openbot', 'bot' ),// openbot, from taiwan\n\t\t\tarray( 'ia_archiver', false, 'ia_archiver', 'bot' ),// ia archiver\n\t\t\tarray( 'zyborg', false, 'looksmart', 'bot' ),// looksmart\n\t\t\tarray( 'almaden', false, 'ibm', 'bot' ),// ibm almaden web crawler\n\t\t\tarray( 'baiduspider', false, 'baidu', 'bot' ),// Baiduspider asian search spider\n\t\t\tarray( 'psbot', false, 'psbot', 'bot' ),// psbot image crawler\n\t\t\tarray( 'gigabot', false, 'gigabot', 'bot' ),// gigabot crawler\n\t\t\tarray( 'naverbot', false, 'naverbot', 'bot' ),// naverbot crawler, bad bot, block\n\t\t\tarray( 'surveybot', false, 'surveybot', 'bot' ),//\n\t\t\tarray( 'boitho.com-dc', false, 'boitho', 'bot' ),//norwegian search engine\n\t\t\tarray( 'objectssearch', false, 'objectsearch', 'bot' ),// open source search engine\n\t\t\tarray( 'answerbus', false, 'answerbus', 'bot' ),// http://www.answerbus.com/, web questions\n\t\t\tarray( 'sohu-search', false, 'sohu', 'bot' ),// chinese media company, search component\n\t\t\tarray( 'iltrovatore-setaccio', false, 'il-set', 'bot' ),\n\t\n\t\t\t// various http utility libaries\n\t\t\tarray( 'w3c_validator', false, 'w3c', 'lib' ), // uses libperl, make first\n\t\t\tarray( 'wdg_validator', false, 'wdg', 'lib' ), //\n\t\t\tarray( 'libwww-perl', false, 'libwww-perl', 'lib' ),\n\t\t\tarray( 'jakarta commons-httpclient', false, 'jakarta', 'lib' ),\n\t\t\tarray( 'python-urllib', false, 'python-urllib', 'lib' ),\n\t\n\t\t\t// download apps\n\t\t\tarray( 'getright', false, 'getright', 'dow' ),\n\t\t\tarray( 'wget', false, 'wget', 'dow' ),// open source downloader, obeys robots.txt\n\t\n\t\t\t// netscape 4 and earlier tests, put last so spiders don't get caught\n\t\t\tarray( 'mozilla/4.', false, 'ns', 'bbro' ),\n\t\t\tarray( 'mozilla/3.', false, 'ns', 'bbro' ),\n\t\t\tarray( 'mozilla/2.', false, 'ns', 'bbro' )\n\t\t);\n\t\n\t\t//array( '', false ); // browser array template\n\n\t\t/*\n\t\tmoz types array\n\t\tnote the order, netscape6 must come before netscape, which  is how netscape 7 id's itself.\n\t\trv comes last in case it is plain old mozilla. firefox/netscape/seamonkey need to be later\n\t\tThanks to: http://www.zytrax.com/tech/web/firefox-history.html\n\t\t*/\n\t\t$a_moz_types = array( 'bonecho', 'camino', 'epiphany', 'firebird', 'flock', 'galeon', 'iceape', 'icecat', 'k-meleon', 'minimo', 'multizilla', 'phoenix', 'songbird', 'swiftfox', 'seamonkey', 'shadowfox', 'shiretoko', 'iceweasel', 'firefox', 'minefield', 'netscape6', 'netscape', 'rv' );\n\n\t\t/*\n\t\twebkit types, this is going to expand over time as webkit browsers spread\n\t\tkonqueror is probably going to move to webkit, so this is preparing for that\n\t\tIt will now default to khtml. gtklauncher is the temp id for epiphany, might\n\t\tchange. Defaults to applewebkit, and will all show the webkit number.\n\t\t*/\n\t\t$a_webkit_types = array( 'arora', 'chrome', 'epiphany', 'gtklauncher', 'icab', 'konqueror', 'maxthon',  'midori', 'omniweb', 'rekonq', 'safari', 'shiira', 'uzbl', 'applewebkit', 'webkit' );\n\n\t\t/*\n\t\trun through the browser_types array, break if you hit a match, if no match, assume old browser\n\t\tor non dom browser, assigns false value to $b_success.\n\t\t*/\n\t\t$i_count = count( $a_browser_types );\n\t\tfor ( $i = 0; $i < $i_count; $i++ )\n\t\t{\n\t\t\t//unpacks browser array, assigns to variables, need to not assign til found in string\n\t\t\t$browser_temp = $a_browser_types[$i][0];// text string to id browser from array\n\n\t\t\tif ( strstr( $browser_user_agent, $browser_temp ) )\n\t\t\t{\n\t\t\t\t/*\n\t\t\t\tit defaults to true, will become false below if needed\n\t\t\t\tthis keeps it easier to keep track of what is safe, only\n\t\t\t\texplicit false assignment will make it false.\n\t\t\t\t*/\n\t\t\t\t$b_safe_browser = true;\n\t\t\t\t$browser_name = $browser_temp;// text string to id browser from array\n\n\t\t\t\t// assign values based on match of user agent string\n\t\t\t\t$b_dom_browser = $a_browser_types[$i][1];// hardcoded dom support from array\n\t\t\t\t$browser_working = $a_browser_types[$i][2];// working name for browser\n\t\t\t\t$ua_type = $a_browser_types[$i][3];// sets whether bot or browser\n\n\t\t\t\tswitch ( $browser_working )\n\t\t\t\t{\n\t\t\t\t\t// this is modified quite a bit, now will return proper netscape version number\n\t\t\t\t\t// check your implementation to make sure it works\n\t\t\t\t\tcase 'ns':\n\t\t\t\t\t\t$b_safe_browser = false;\n\t\t\t\t\t\t$browser_number = get_item_version( $browser_user_agent, 'mozilla' );\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'moz':\n\t\t\t\t\t\t/*\n\t\t\t\t\t\tnote: The 'rv' test is not absolute since the rv number is very different on\n\t\t\t\t\t\tdifferent versions, for example Galean doesn't use the same rv version as Mozilla,\n\t\t\t\t\t\tneither do later Netscapes, like 7.x. For more on this, read the full mozilla\n\t\t\t\t\t\tnumbering conventions here: http://www.mozilla.org/releases/cvstags.html\n\t\t\t\t\t\t*/\n\t\t\t\t\t\t// this will return alpha and beta version numbers, if present\n\t\t\t\t\t\t$moz_rv_full = get_item_version( $browser_user_agent, 'rv' );\n\t\t\t\t\t\t// this slices them back off for math comparisons\n\t\t\t\t\t\t$moz_rv = substr( $moz_rv_full, 0, 3 );\n\n\t\t\t\t\t\t// this is to pull out specific mozilla versions, firebird, netscape etc..\n\t\t\t\t\t\t$j_count = count( $a_moz_types );\n\t\t\t\t\t\tfor ( $j = 0; $j < $j_count; $j++ )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tif ( strstr( $browser_user_agent, $a_moz_types[$j] ) )\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t$moz_type = $a_moz_types[$j];\n\t\t\t\t\t\t\t\t$moz_number = get_item_version( $browser_user_agent, $moz_type );\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t/*\n\t\t\t\t\t\tthis is necesary to protect against false id'ed moz'es and new moz'es.\n\t\t\t\t\t\tthis corrects for galeon, or any other moz browser without an rv number\n\t\t\t\t\t\t*/\n\t\t\t\t\t\tif ( !$moz_rv )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t// you can use this if you are running php >= 4.2\n\t\t\t\t\t\t\tif ( function_exists( 'floatval' ) )\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t$moz_rv = floatval( $moz_number );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t$moz_rv = substr( $moz_number, 0, 3 );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$moz_rv_full = $moz_number;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// this corrects the version name in case it went to the default 'rv' for the test\n\t\t\t\t\t\tif ( $moz_type == 'rv' )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t$moz_type = 'mozilla';\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t//the moz version will be taken from the rv number, see notes above for rv problems\n\t\t\t\t\t\t$browser_number = $moz_rv;\n\t\t\t\t\t\t// gets the actual release date, necessary if you need to do functionality tests\n\t\t\t\t\t\tget_set_count( 'set', 0 );\n\t\t\t\t\t\t$moz_release_date = get_item_version( $browser_user_agent, 'gecko/' );\n\t\t\t\t\t\t/*\n\t\t\t\t\t\tTest for mozilla 0.9.x / netscape 6.x\n\t\t\t\t\t\ttest your javascript/CSS to see if it works in these mozilla releases, if it\n\t\t\t\t\t\tdoes, just default it to: $b_safe_browser = true;\n\t\t\t\t\t\t*/\n\t\t\t\t\t\tif ( ( $moz_release_date < 20020400 ) || ( $moz_rv < 1 ) )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t$b_safe_browser = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'ie':\n\t\t\t\t\t\t/*\n\t\t\t\t\t\tnote we're adding in the trident/ search to return only first instance in case\n\t\t\t\t\t\tof msie 8, and we're triggering the  break last condition in the test, as well\n\t\t\t\t\t\tas the test for a second search string, trident/\n\t\t\t\t\t\tSample: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/6.0)\n\t\t\t\t\t\t*/\n\t\t\t\t\t\t$browser_number = get_item_version( $browser_user_agent, $browser_name, true, 'trident/' );\n\t\t\t\t\t\t// construct the proper real number if it's in compat mode and msie 10\n\t\t\t\t\t\tif ( strstr( $browser_number, '7.' ) )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tif ( strstr( $browser_user_agent, 'trident/7' ) )\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t// note that 7.0 becomes 11 when adding 4, but if it's 7.1 it will be 11.1\n\t\t\t\t\t\t\t\t$true_ie_number = $browser_number + 4;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\telseif ( strstr( $browser_user_agent, 'trident/6' ) )\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t// note that 7.0 becomes 10 when adding 3, but if it's 7.1 it will be 10.1\n\t\t\t\t\t\t\t\t$true_ie_number = $browser_number + 3;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// construct the proper real number if it's in compat mode and msie 8.0/9.0\n\t\t\t\t\t\t\telseif ( strstr( $browser_user_agent, 'trident/5' ) )\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t// note that 7.0 becomes 9 when adding 2, but if it's 7.1 it will be 9.1\n\t\t\t\t\t\t\t\t$true_ie_number = $browser_number + 2;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\telseif ( strstr( $browser_user_agent, 'trident/4' ) )\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t// note that 7.0 becomes 8 when adding 1, but if it's 7.1 it will be 8.1\n\t\t\t\t\t\t\t\t$true_ie_number = $browser_number + 1;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// the 9 series is finally standards compatible, html 5 etc, so worth a new id\n\t\t\t\t\t\tif ( $browser_number >= 9 )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t$ie_version = 'ie9x';\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// 7/8 were not yet quite to standards levels but getting there\n\t\t\t\t\t\telseif ( $browser_number >= 7 )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t$ie_version = 'ie7x';\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// then test for IE 5x mac, that's the most problematic IE out there\n\t\t\t\t\t\telseif ( strstr( $browser_user_agent, 'mac') )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t$ie_version = 'ieMac';\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// ie 5/6 are both very weak in standards compliance\n\t\t\t\t\t\telseif ( $browser_number >= 5 )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t$ie_version = 'ie5x';\n\t\t\t\t\t\t}\n\t\t\t\t\t\telseif ( ( $browser_number > 3 ) && ( $browser_number < 5 ) )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t$b_dom_browser = false;\n\t\t\t\t\t\t\t$ie_version = 'ie4';\n\t\t\t\t\t\t\t// this depends on what you're using the script for, make sure this fits your needs\n\t\t\t\t\t\t\t$b_safe_browser = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t$ie_version = 'old';\n\t\t\t\t\t\t\t$b_dom_browser = false;\n\t\t\t\t\t\t\t$b_safe_browser = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'op':\n\t\t\t\t\t\t$browser_number = get_item_version( $browser_user_agent, $browser_name );\n\t\t\t\t\t\t// opera is leaving version at 9.80 (or xx) for 10.x - see this for explanation\n\t\t\t\t\t\t// http://dev.opera.com/articles/view/opera-ua-string-changes/\n\t\t\t\t\t\tif ( strstr( $browser_number, '9.' ) && strstr( $browser_user_agent, 'version/' ) )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tget_set_count( 'set', 0 );\n\t\t\t\t\t\t\t$browser_number = get_item_version( $browser_user_agent, 'version/' );\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t\tif ( $browser_number < 5 )// opera 4 wasn't very useable.\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t$b_safe_browser = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t/*\n\t\t\t\t\tnote: webkit returns always the webkit version number, not the specific user\n\t\t\t\t\tagent version, ie, webkit 583, not chrome 0.3\n\t\t\t\t\t*/\n\t\t\t\t\tcase 'webkit':\n\t\t\t\t\t\t// note that this is the Webkit version number\n\t\t\t\t\t\t$browser_number = get_item_version( $browser_user_agent, $browser_name );\n\t\t\t\t\t\t// this is to pull out specific webkit versions, safari, google-chrome etc..\n\t\t\t\t\t\t$j_count = count( $a_webkit_types );\n\t\t\t\t\t\tfor ( $j = 0; $j < $j_count; $j++ )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tif ( strstr( $browser_user_agent, $a_webkit_types[$j] ) )\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t$webkit_type = $a_webkit_types[$j];\n\t\t\t\t\t\t\t\t/*\n\t\t\t\t\t\t\t\tand this is the webkit type version number, like: chrome 1.2\n\t\t\t\t\t\t\t\tif omni web, we want the count 2, not default 1\n\t\t\t\t\t\t\t\t*/\n\t\t\t\t\t\t\t\tif ( $webkit_type == 'omniweb' )\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tget_set_count( 'set', 2 );\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$webkit_type_number = get_item_version( $browser_user_agent, $webkit_type );\n\t\t\t\t\t\t\t\t// epiphany hack\n\t\t\t\t\t\t\t\tif ( $a_webkit_types[$j] == 'gtklauncher' )\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t$browser_name = 'epiphany';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t$browser_name = $a_webkit_types[$j];\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\t$browser_number = get_item_version( $browser_user_agent, $browser_name );\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t// the browser was id'ed\n\t\t\t\t$b_success = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\t\n\t\t//assigns defaults if the browser was not found in the loop test\n\t\tif ( !$b_success )\n\t\t{\n\t\t\t/*\n\t\t\tthis will return the first part of the browser string if the above id's failed\n\t\t\tusually the first part of the browser string has the navigator useragent name/version in it.\n\t\t\tThis will usually correctly id the browser and the browser number if it didn't get\n\t\t\tcaught by the above routine.\n\t\t\tIf you want a '' to do a if browser == '' type test, just comment out all lines below\n\t\t\texcept for the last line, and uncomment the last line. If you want undefined values,\n\t\t\tthe browser_name is '', you can always test for that\n\t\t\t*/\n\t\t\t// delete this part if you want an unknown browser returned\n\t\t\t$browser_name = substr( $browser_user_agent, 0, strcspn( $browser_user_agent , '();') );\n\t\t\t// this extracts just the browser name from the string, if something usable was found\n\t\t\tif ( $browser_name && preg_match( '/[^0-9][a-z]*-*\\ *[a-z]*\\ *[a-z]*/', $browser_name, $a_unhandled_browser ) )\n\t\t\t{\n\t\t\t\t$browser_name = $a_unhandled_browser[0];\n\t\t\t\t\n\t\t\t\tif ( $browser_name == 'blackberry' )\n\t\t\t\t{\n\t\t\t\t\tget_set_count( 'set', 0 );\n\t\t\t\t}\n\t\t\t\t$browser_number = get_item_version( $browser_user_agent, $browser_name );\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\t$browser_name = 'NA';\n\t\t\t\t$browser_number = 'NA';\n\t\t\t}\n\n\t\t\t// then uncomment this part\n\t\t\t//$browser_name = '';//deletes the last array item in case the browser was not a match\n\t\t}\n\t\t// get os data, mac os x test requires browser/version information, this is a change from older scripts\n\t\tif ( $b_os_test )\n\t\t{\n\t\t\t$a_os_data = get_os_data( $browser_user_agent, $browser_working, $browser_number );\n\t\t\t$os_type = $a_os_data[0];// os name, abbreviated\n\t\t\t$os_number = $a_os_data[1];// os number or version if available\n\t\t}\n\t\t/*\n\t\tthis ends the run through once if clause, set the boolean\n\t\tto true so the function won't retest everything\n\t\t*/\n\t\t$b_repeat = true;\n\t\t/*\n\t\tpulls out primary version number from more complex string, like 7.5a,\n\t\tuse this for numeric version comparison\n\t\t*/\n\t\tif ( $browser_number && preg_match( '/[0-9]*\\.*[0-9]*/', $browser_number, $a_browser_math_number ) )\n\t\t{ \n\t\t\t$browser_math_number = $a_browser_math_number[0];\n\t\t\t//print_r($a_browser_math_number);\n\t\t}\n\t\tif ( $b_mobile_test )\n\t\t{\n\t\t\t$mobile_test = check_is_mobile( $browser_user_agent );\n\t\t\tif ( $mobile_test )\n\t\t\t{\n\t\t\t\t$a_mobile_data = get_mobile_data( $browser_user_agent );\n\t\t\t\t$ua_type = 'mobile';\n\t\t\t}\n\t\t}\n\t}\n\t//$browser_number = $_SERVER[\"REMOTE_ADDR\"];\n\t/*\n\tThis is where you return values based on what parameter you used to call the function\n\t$which_test is the passed parameter in the initial browser_detection('os') for example returns\n\tthe os version only.\n\t\n\tUpdate deprecated parameter names to new names\n\t*/\n\tswitch ( $which_test )\n\t{\n\t\tcase 'math_number':\n\t\t\t$which_test = 'browser_math_number';\n\t\t\tbreak;\n\t\tcase 'number':\n\t\t\t$which_test = 'browser_number';\n\t\t\tbreak;\n\t\tcase 'browser':\n\t\t\t$which_test = 'browser_working';\n\t\t\tbreak;\n\t\tcase 'moz_version':\n\t\t\t$which_test = 'moz_data';\n\t\t\tbreak;\n\t\tcase 'true_msie_version':\n\t\t\t$which_test = 'true_ie_number';\n\t\t\tbreak;\n\t\tcase 'type':\n\t\t\t$which_test = 'ua_type';\n\t\t\tbreak;\n\t\tcase 'webkit_version':\n\t\t\t$which_test = 'webkit_data';\n\t\t\tbreak;\n\t}\n\t/*\n\tassemble these first so they can be included in full return data, using static variables\n\tNote that there's no need to keep repacking these every time the script is called\n\t*/\n\tif ( !$a_moz_data )\n\t{\n\t\t$a_moz_data = array( $moz_type, $moz_number, $moz_rv, $moz_rv_full, $moz_release_date );\n\t}\n\tif ( !$a_webkit_data )\n\t{\n\t\t$a_webkit_data = array( $webkit_type, $webkit_type_number, $browser_number );\n\t}\n\t$run_time = script_time();\n\t// then pack the primary data array\n\tif ( !$a_full_assoc_data )\n\t{\n\t\t$a_full_assoc_data = array(\n\t\t\t'browser_working' => $browser_working,\n\t\t\t'browser_number' => $browser_number,\n\t\t\t'ie_version' => $ie_version,\n\t\t\t'dom' => $b_dom_browser,\n\t\t\t'safe' => $b_safe_browser,\n\t\t\t'os' => $os_type,\n\t\t\t'os_number' => $os_number,\n\t\t\t'browser_name' => $browser_name,\n\t\t\t'ua_type' => $ua_type,\n\t\t\t'browser_math_number' => $browser_math_number,\n\t\t\t'moz_data' => $a_moz_data,\n\t\t\t'webkit_data' => $a_webkit_data,\n\t\t\t'mobile_test' => $mobile_test,\n\t\t\t'mobile_data' => $a_mobile_data,\n\t\t\t'true_ie_number' => $true_ie_number,\n\t\t\t'run_time' => $run_time\n\t\t);\n\t}\n\t// return parameters, either full data arrays, or by associative array index key\n\tswitch ( $which_test )\n\t{\n\t\t// returns all relevant browser information in an array with standard numberic indexes\n\t\tcase 'full':\n\t\t\t$a_full_data = array( \n\t\t\t\t$browser_working, \n\t\t\t\t$browser_number, \n\t\t\t\t$ie_version, \n\t\t\t\t$b_dom_browser, \n\t\t\t\t$b_safe_browser, \n\t\t\t\t$os_type, \n\t\t\t\t$os_number, \n\t\t\t\t$browser_name, \n\t\t\t\t$ua_type, \n\t\t\t\t$browser_math_number, \n\t\t\t\t$a_moz_data, \n\t\t\t\t$a_webkit_data, \n\t\t\t\t$mobile_test, \n\t\t\t\t$a_mobile_data, \n\t\t\t\t$true_ie_number,\n\t\t\t\t$run_time\n\t\t\t);\n\t\t\t// print_r( $a_full_data );\n\t\t\treturn $a_full_data;\n\t\t\tbreak;\n\t\t// returns all relevant browser information in an associative array\n\t\tcase 'full_assoc':\n\t\t\treturn $a_full_assoc_data;\n\t\t\tbreak;\n\t\tdefault:\n\t\t\t# check to see if the data is available, otherwise it's user typo of unsupported option\n\t\t\tif ( isset( $a_full_assoc_data[$which_test] ) ) \n\t\t\t{\n\t\t\t\treturn $a_full_assoc_data[$which_test];\n\t\t\t}\n\t\t\telse \n\t\t\t{\n\t\t\t\tdie( \"You passed the browser detector an unsupported option for parameter 1: \" . $which_test );\n\t\t\t}\n\t\t\tbreak;\n\t}\n}\n\n// gets which os from the browser string\nfunction get_os_data ( $pv_browser_string, $pv_browser_name, $pv_version_number  )\n{\n\t// initialize variables\n\t$os_working_type = '';\n\t$os_working_number = '';\n\t/*\n\tpacks the os array. Use this order since some navigator user agents will put 'macintosh' \n\tin the navigator user agent string which would make the nt test register true\n\t*/\n\t$a_mac = array( 'intel mac', 'ppc mac', 'mac68k' );// this is not used currently\n\t// same logic, check in order to catch the os's in order, last is always default item\n\t$a_unix_types = array( 'dragonfly', 'freebsd', 'openbsd', 'netbsd', 'bsd', 'unixware', 'solaris', 'sunos', 'sun4', 'sun5', 'suni86', 'sun', 'irix5', 'irix6', 'irix', 'hpux9', 'hpux10', 'hpux11', 'hpux', 'hp-ux', 'aix1', 'aix2', 'aix3', 'aix4', 'aix5', 'aix', 'sco', 'unixware', 'mpras', 'reliant', 'dec', 'sinix', 'unix' );\n\t// only sometimes will you get a linux distro to id itself...\n\t$a_linux_distros = array( 'ubuntu', 'kubuntu', 'xubuntu', 'mepis', 'xandros', 'linspire', 'winspire', 'jolicloud', 'sidux', 'kanotix', 'debian', 'opensuse', 'suse', 'fedora', 'redhat', 'slackware', 'slax', 'mandrake', 'mandriva', 'gentoo', 'sabayon', 'linux' );\n\t$a_linux_process = array ( 'i386', 'i586', 'i686' );// not use currently\n\t// note, order of os very important in os array, you will get failed ids if changed\n\t$a_os_types = array( 'android', 'blackberry', 'iphone', 'palmos', 'palmsource', 'symbian', 'beos', 'os2', 'amiga', 'webtv', 'mac', 'nt', 'win', $a_unix_types, $a_linux_distros );\n\t\n\t//os tester\n\t$i_count = count( $a_os_types );\n\tfor ( $i = 0; $i < $i_count; $i++ )\n\t{\n\t\t// unpacks os array, assigns to variable $a_os_working\n\t\t$os_working_data = $a_os_types[$i];\n\t\t/*\n\t\tassign os to global os variable, os flag true on success\n\t\t!strstr($pv_browser_string, \"linux\" ) corrects a linux detection bug\n\t\t*/\n\t\tif ( !is_array( $os_working_data ) && strstr( $pv_browser_string, $os_working_data ) && !strstr( $pv_browser_string, \"linux\" ) )\n\t\t{\n\t\t\t$os_working_type = $os_working_data;\n\t\t\t\n\t\t\tswitch ( $os_working_type )\n\t\t\t{\n\t\t\t\t// most windows now uses: NT X.Y syntax\n\t\t\t\tcase 'nt':\n\t\t\t\t\tif ( strstr( $pv_browser_string, 'nt 6.1' ) )// windows 7\n\t\t\t\t\t{\n\t\t\t\t\t\t$os_working_number = 6.1;\n\t\t\t\t\t}\n\t\t\t\t\telseif ( strstr( $pv_browser_string, 'nt 6.0' ) )// windows vista/server 2008\n\t\t\t\t\t{\n\t\t\t\t\t\t$os_working_number = 6.0;\n\t\t\t\t\t}\n\t\t\t\t\telseif ( strstr( $pv_browser_string, 'nt 5.2' ) )// windows server 2003\n\t\t\t\t\t{\n\t\t\t\t\t\t$os_working_number = 5.2;\n\t\t\t\t\t}\n\t\t\t\t\telseif ( strstr( $pv_browser_string, 'nt 5.1' ) || strstr( $pv_browser_string, 'xp' ) )// windows xp\n\t\t\t\t\t{\n\t\t\t\t\t\t$os_working_number = 5.1;//\n\t\t\t\t\t}\n\t\t\t\t\telseif ( strstr( $pv_browser_string, 'nt 5' ) || strstr( $pv_browser_string, '2000' ) )// windows 2000\n\t\t\t\t\t{\n\t\t\t\t\t\t$os_working_number = 5.0;\n\t\t\t\t\t}\n\t\t\t\t\telseif ( strstr( $pv_browser_string, 'nt 4' ) )// nt 4\n\t\t\t\t\t{\n\t\t\t\t\t\t$os_working_number = 4;\n\t\t\t\t\t}\n\t\t\t\t\telseif ( strstr( $pv_browser_string, 'nt 3' ) )// nt 4\n\t\t\t\t\t{\n\t\t\t\t\t\t$os_working_number = 3;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'win':\n\t\t\t\t\tif ( strstr( $pv_browser_string, 'vista' ) )// windows vista, for opera ID\n\t\t\t\t\t{\n\t\t\t\t\t\t$os_working_number = 6.0;\n\t\t\t\t\t\t$os_working_type = 'nt';\n\t\t\t\t\t}\n\t\t\t\t\telseif ( strstr( $pv_browser_string, 'xp' ) )// windows xp, for opera ID\n\t\t\t\t\t{\n\t\t\t\t\t\t$os_working_number = 5.1;\n\t\t\t\t\t\t$os_working_type = 'nt';\n\t\t\t\t\t}\n\t\t\t\t\telseif ( strstr( $pv_browser_string, '2003' ) )// windows server 2003, for opera ID\n\t\t\t\t\t{\n\t\t\t\t\t\t$os_working_number = 5.2;\n\t\t\t\t\t\t$os_working_type = 'nt';\n\t\t\t\t\t}\n\t\t\t\t\telseif ( strstr( $pv_browser_string, 'windows ce' ) )// windows CE\n\t\t\t\t\t{\n\t\t\t\t\t\t$os_working_number = 'ce';\n\t\t\t\t\t\t$os_working_type = 'nt';\n\t\t\t\t\t}\n\t\t\t\t\telseif ( strstr( $pv_browser_string, '95' ) )\n\t\t\t\t\t{\n\t\t\t\t\t\t$os_working_number = '95';\n\t\t\t\t\t}\n\t\t\t\t\telseif ( ( strstr( $pv_browser_string, '9x 4.9' ) ) || ( strstr( $pv_browser_string, ' me' ) ) )\n\t\t\t\t\t{\n\t\t\t\t\t\t$os_working_number = 'me';\n\t\t\t\t\t}\n\t\t\t\t\telseif ( strstr( $pv_browser_string, '98' ) )\n\t\t\t\t\t{\n\t\t\t\t\t\t$os_working_number = '98';\n\t\t\t\t\t}\n\t\t\t\t\telseif ( strstr( $pv_browser_string, '2000' ) )// windows 2000, for opera ID\n\t\t\t\t\t{\n\t\t\t\t\t\t$os_working_number = 5.0;\n\t\t\t\t\t\t$os_working_type = 'nt';\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'mac':\n\t\t\t\t\tif ( strstr( $pv_browser_string, 'os x' ) )\n\t\t\t\t\t{\n\t\t\t\t\t\t// if it doesn't have a version number, it is os x;\n\t\t\t\t\t\tif ( strstr( $pv_browser_string, 'os x ' ) )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t// numbers are like: 10_2.4, others 10.2.4\n\t\t\t\t\t\t\t$os_working_number = str_replace( '_', '.', get_item_version( $pv_browser_string, 'os x' ) );\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t$os_working_number = 10;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t/*\n\t\t\t\t\tthis is a crude test for os x, since safari, camino, ie 5.2, & moz >= rv 1.3\n\t\t\t\t\tare only made for os x\n\t\t\t\t\t*/\n\t\t\t\t\telseif ( ( $pv_browser_name == 'saf' ) || ( $pv_browser_name == 'cam' ) ||\n\t\t\t\t\t\t( ( $pv_browser_name == 'moz' ) && ( $pv_version_number >= 1.3 ) ) ||\n\t\t\t\t\t\t( ( $pv_browser_name == 'ie' ) && ( $pv_version_number >= 5.2 ) ) )\n\t\t\t\t\t{\n\t\t\t\t\t\t$os_working_number = 10;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'iphone':\n\t\t\t\t\t$os_working_number = 10;\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\t/*\n\t\tcheck that it's an array, check it's the second to last item\n\t\tin the main os array, the unix one that is\n\t\t*/\n\t\telseif ( is_array( $os_working_data ) && ( $i == ( $i_count - 2 ) ) )\n\t\t{\n\t\t\t$j_count = count($os_working_data);\n\t\t\tfor ($j = 0; $j < $j_count; $j++)\n\t\t\t{\n\t\t\t\tif ( strstr( $pv_browser_string, $os_working_data[$j] ) )\n\t\t\t\t{\n\t\t\t\t\t$os_working_type = 'unix'; //if the os is in the unix array, it's unix, obviously...\n\t\t\t\t\t$os_working_number = ( $os_working_data[$j] != 'unix' ) ? $os_working_data[$j] : '';// assign sub unix version from the unix array\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t/*\n\t\tcheck that it's an array, check it's the last item\n\t\tin the main os array, the linux one that is\n\t\t*/\n\t\telseif ( is_array( $os_working_data ) && ( $i == ( $i_count - 1 ) ) )\n\t\t{\n\t\t\t$j_count = count($os_working_data);\n\t\t\tfor ($j = 0; $j < $j_count; $j++)\n\t\t\t{\n\t\t\t\tif ( strstr( $pv_browser_string, $os_working_data[$j] ) )\n\t\t\t\t{\n\t\t\t\t\t$os_working_type = 'lin';\n\t\t\t\t\t// assign linux distro from the linux array, there's a default\n\t\t\t\t\t//search for 'lin', if it's that, set version to ''\n\t\t\t\t\t$os_working_number = ( $os_working_data[$j] != 'linux' ) ? $os_working_data[$j] : '';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t// pack the os data array for return to main function\n\t$a_os_data = array( $os_working_type, $os_working_number );\n\n\treturn $a_os_data;\n}\n\n/* \nFunction Info:\nfunction returns browser number, gecko rv number, or gecko release date\nfunction get_item_version( $browser_user_agent, $search_string, $substring_length )\n$pv_extra_search='' allows us to set an additional search/exit loop parameter, but we\nonly want this running when needed \n*/\nfunction get_item_version( $pv_browser_user_agent, $pv_search_string, $pv_b_break_last='', $pv_extra_search='' )\n{\n\t// 12 is the longest that will be required, handles release dates: 20020323; 0.8.0+\n\t$substring_length = 15;\n\t$start_pos = 0; // set $start_pos to 0 for first iteration\n\t//initialize browser number, will return '' if not found\n\t$string_working_number = '';\n\t/* \n\tuse the passed parameter for $pv_search_string\n\tstart the substring slice right after these moz search strings\n\tthere are some cases of double msie id's, first in string and then with then number\n\t$start_pos = 0;\n\tthis test covers you for multiple occurrences of string, only with ie though\n\twith for example google bot you want the first occurance returned, since that's where the\n\tnumbering happens \n\t*/\n\tfor ( $i = 0; $i < 4; $i++ )\n\t{\n\t\t//start the search after the first string occurrence\n\t\tif ( strpos( $pv_browser_user_agent, $pv_search_string, $start_pos ) !== false )\n\t\t{\n\t\t\t// update start position if position found\n\t\t\t$start_pos = strpos( $pv_browser_user_agent, $pv_search_string, $start_pos ) + strlen( $pv_search_string );\n\t\t\t/*\n\t\t\tmsie (and maybe other userAgents requires special handling because some apps inject \n\t\t\ta second msie, usually at the beginning, custom modes allow breaking at first instance\n\t\t\tif $pv_b_break_last $pv_extra_search conditions exist. Since we only want this test\n\t\t\tto run if and only if we need it, it's triggered by caller passing these values.\n\t\t\t*/\n\t\t\tif ( !$pv_b_break_last || ( $pv_extra_search && strstr( $pv_browser_user_agent, $pv_extra_search ) ) ) \n\t\t\t{\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\telse\n\t\t{\n\t\t\tbreak;\n\t\t}\n\t}\n\t/*\n\tHandles things like extra omniweb/v456, gecko/, blackberry9700\n\talso corrects for the omniweb 'v'\n\t*/\n\t$start_pos += get_set_count( 'get' );\n\t$string_working_number = substr( $pv_browser_user_agent, $start_pos, $substring_length );\n\n\t// Find the space, ;, or parentheses that ends the number\n\t$string_working_number = substr( $string_working_number, 0, strcspn($string_working_number, ' );/') );\n\n\t//make sure the returned value is actually the id number and not a string\n\t// otherwise return ''\n\t// strcspn( $string_working_number, '0123456789.') == strlen( $string_working_number)\n\t//\tif ( preg_match(\"/\\\\d/\", $string_working_number) == 0 )\n \tif ( !is_numeric( substr( $string_working_number, 0, 1 ) ) )\n\t{\n\t\t$string_working_number = '';\n\t}\n\t//$string_working_number = strrpos( $pv_browser_user_agent, $pv_search_string );\n\treturn $string_working_number;\n}\n\nfunction get_set_count( $pv_type, $pv_value='' )\n{\n\tstatic $slice_increment;\n\t$return_value = '';\n\tswitch ( $pv_type )\n\t{\n\t\tcase 'get':\n\t\t\t// set if unset, ie, first use. note that empty and isset are not good tests here\n\t\t\tif ( is_null( $slice_increment ) )\n\t\t\t{\n\t\t\t\t$slice_increment = 1;\n\t\t\t}\n\t\t\t$return_value = $slice_increment;\n\t\t\t$slice_increment = 1; // reset to default\n\t\t\treturn $return_value;\n\t\t\tbreak;\n\t\tcase 'set':\n\t\t\t$slice_increment = $pv_value;\n\t\t\tbreak;\n\t}\n}\n\n/*\nSpecial ID notes:\nNovarra-Vision is a Content Transformation Server (CTS)\n*/\nfunction check_is_mobile( $pv_browser_user_agent )\n{\n\t$mobile_working_test = '';\n\t/*\n\tthese will search for basic mobile hints, this should catch most of them, first check\n\tknown hand held device os, then check device names, then mobile browser names\n\tThis list is almost the same but not exactly as the 4 arrays in function below\n\t*/\n\t$a_mobile_search = array( \n\t/*\n\tMake sure to use only data here that always will be a mobile, so this list is not\n\tidentical to the list of get_mobile_data\n\t*/\n\t// os\n\t'android', 'epoc', 'linux armv', 'palmos', 'palmsource', 'windows ce', 'windows phone os', 'symbianos', 'symbian os', 'symbian', 'webos', \n\t// devices - ipod before iphone or fails\n\t'benq', 'blackberry', 'danger hiptop', 'ddipocket', ' droid', 'ipad', 'ipod', 'iphone', 'kindle', 'lge-cx', 'lge-lx', 'lge-mx', 'lge vx', 'lge ', 'lge-', 'lg;lx', 'nintendo wii', 'nokia', 'palm', 'pdxgw', 'playstation', 'sagem', 'samsung', 'sec-sgh', 'sharp', 'sonyericsson', 'sprint', 'zune', 'j-phone', 'n410', 'mot 24', 'mot-', 'htc-', 'htc_', 'htc ', 'sec-', 'sie-m', 'sie-s', 'spv ', 'vodaphone', 'smartphone', 'armv', 'midp', 'mobilephone',\n\t// browsers\n\t'avantgo', 'blazer', 'elaine', 'eudoraweb', 'iemobile',  'minimo', 'mobile safari', 'mobileexplorer', 'opera mobi', 'opera mini', 'netfront', 'opwv', 'polaris', 'semc-browser', 'up.browser', 'webpro', 'wms pie', 'xiino', \n\t// services - astel out of business\n\t'astel',  'docomo',  'novarra-vision', 'portalmmm', 'reqwirelessweb', 'vodafone'\n\t);\n\n\t// then do basic mobile type search, this uses data from: get_mobile_data()\n\t$j_count = count( $a_mobile_search );\n\tfor ($j = 0; $j < $j_count; $j++)\n\t{\n\t\tif ( strstr( $pv_browser_user_agent, $a_mobile_search[$j] ) )\n\t\t{\n\t\t\t$mobile_working_test = $a_mobile_search[$j];\n\t\t\tbreak;\n\t\t}\n\t}\n\t\n\treturn $mobile_working_test;\n}\n\n/*\nthanks to this page: http://www.zytrax.com/tech/web/mobile_ids.html\nfor data used here\n*/\nfunction get_mobile_data( $pv_browser_user_agent )\n{\n\t$mobile_browser = '';\n\t$mobile_browser_number = '';\n\t$mobile_device = '';\n\t$mobile_device_number = '';\n\t$mobile_os = ''; // will usually be null, sorry\n\t$mobile_os_number = '';\n\t$mobile_server = '';\n\t$mobile_server_number = '';\n\t\n\t// browsers, show it as a handheld, but is not the os\n\t$a_mobile_browser = array( 'avantgo', 'blazer', 'elaine', 'eudoraweb', 'iemobile',  'minimo', 'mobile safari', 'mobileexplorer', 'opera mobi', 'opera mini', 'netfront', 'opwv', 'polaris', 'semc-browser', 'up.browser', 'webpro', 'wms pie', 'xiino' );\n\t/*\n\tThis goes from easiest to detect to hardest, so don't use this for output unless you\n\tclean it up more is my advice.\n\tSpecial Notes: do not include milestone in general mobile type test above, it's too generic\n\t*/\n\t$a_mobile_device = array( 'benq', 'blackberry', 'danger hiptop', 'ddipocket', ' droid', 'htc_dream', 'htc espresso', 'htc hero', 'htc halo', 'htc huangshan', 'htc legend', 'htc liberty', 'htc paradise', 'htc supersonic', 'htc tattoo', 'ipad', 'ipod', 'iphone', 'kindle', 'lge-cx', 'lge-lx', 'lge-mx', 'lge vx', 'lg;lx', 'nintendo wii', 'nokia', 'palm', 'pdxgw', 'playstation', 'sagem', 'samsung', 'sec-sgh', 'sharp', 'sonyericsson', 'sprint', 'zunehd', 'zune', 'j-phone', 'milestone', 'n410', 'mot 24', 'mot-', 'htc-', 'htc_',  'htc ', 'lge ', 'lge-', 'sec-', 'sie-m', 'sie-s', 'spv ', 'smartphone', 'armv', 'midp', 'mobilephone' );\n\t/*\n\tnote: linux alone can't be searched for, and almost all linux devices are armv types\n\tipad 'cpu os' is how the real os number is handled\n\t*/\n\t$a_mobile_os = array( 'android', 'epoc', 'cpu os', 'iphone os', 'palmos', 'palmsource', 'windows phone os', 'windows ce', 'symbianos', 'symbian os', 'symbian', 'webos', 'linux armv'  );\n\t\n\t// sometimes there is just no other id for the unit that the CTS type service/server\n\t$a_mobile_server = array( 'astel', 'docomo', 'novarra-vision', 'portalmmm', 'reqwirelessweb', 'vodafone' );\n\n\t$k_count = count( $a_mobile_browser );\n\tfor ( $k = 0; $k < $k_count; $k++ )\n\t{\n\t\tif ( strstr( $pv_browser_user_agent, $a_mobile_browser[$k] ) )\n\t\t{\n\t\t\t$mobile_browser = $a_mobile_browser[$k];\n\t\t\t// this may or may not work, highly unreliable because mobile ua strings are random\n\t\t\t$mobile_browser_number = get_item_version( $pv_browser_user_agent, $mobile_browser );\n\t\t\tbreak;\n\t\t}\n\t}\n\t$k_count = count( $a_mobile_device );\n\tfor ( $k = 0; $k < $k_count; $k++ )\n\t{\n\t\tif ( strstr( $pv_browser_user_agent, $a_mobile_device[$k] ) )\n\t\t{\n\t\t\t$mobile_device = trim ( $a_mobile_device[$k], '-_' ); // but not space trims yet\n\t\t\tif ( $mobile_device == 'blackberry' )\n\t\t\t{\n\t\t\t\tget_set_count( 'set', 0 );\n\t\t\t}\n\t\t\t$mobile_device_number = get_item_version( $pv_browser_user_agent, $mobile_device );\n\t\t\t$mobile_device = trim( $mobile_device ); // some of the id search strings have white space\n\t\t\tbreak;\n\t\t}\n\t}\n\t$k_count = count( $a_mobile_os );\n\tfor ( $k = 0; $k < $k_count; $k++ )\n\t{\n\t\tif ( strstr( $pv_browser_user_agent, $a_mobile_os[$k] ) )\n\t\t{\n\t\t\t$mobile_os = $a_mobile_os[$k];\n\t\t\t// this may or may not work, highly unreliable\n\t\t\t$mobile_os_number = str_replace( '_', '.', get_item_version( $pv_browser_user_agent, $mobile_os ) );\n\t\t\tbreak;\n\t\t}\n\t}\n\t$k_count = count( $a_mobile_server );\n\tfor ( $k = 0; $k < $k_count; $k++ )\n\t{\n\t\tif ( strstr( $pv_browser_user_agent, $a_mobile_server[$k] ) )\n\t\t{\n\t\t\t$mobile_server = $a_mobile_server[$k];\n\t\t\t// this may or may not work, highly unreliable\n\t\t\t$mobile_server_number = get_item_version( $pv_browser_user_agent, $mobile_server );\n\t\t\tbreak;\n\t\t}\n\t}\n\t// just for cases where we know it's a mobile device already\n\tif ( !$mobile_os && ( $mobile_browser || $mobile_device || $mobile_server ) && strstr( $pv_browser_user_agent, 'linux' ) )\n\t{\n\t\t$mobile_os = 'linux';\n\t\t$mobile_os_number = get_item_version( $pv_browser_user_agent, 'linux' );\n\t}\n\n\t$a_mobile_data = array( $mobile_device, $mobile_browser, $mobile_browser_number, $mobile_os, $mobile_os_number, $mobile_server, $mobile_server_number, $mobile_device_number );\n\treturn $a_mobile_data;\n}\n\n// track total script execution time\nfunction script_time() \n{\n\tstatic $script_time;\n\t$elapsed_time = '';\n\t/* \n\tnote that microtime(true) requires php 5 or greater for microtime(true)\n\t*/\n\tif ( sprintf(\"%01.1f\", phpversion() ) >= 5 ) {\n\t\tif ( is_null( $script_time) ) {\n\t\t\t$script_time = microtime(true);\n\t\t}\n\t\telse {\n\t\t\t// note: (string)$var is same as strval($var)\n\t\t\t// $elapsed_time = (string)( microtime(true) - $script_time );\n\t\t\t$elapsed_time = ( microtime(true) - $script_time );\n\t\t\t$elapsed_time = sprintf(\"%01.8f\", $elapsed_time );\n\t\t\t$script_time = NULL; // can't unset a static variable\n\t\t\treturn $elapsed_time;\n\t\t}\n\t}\n}\n\n/*\nHere are some navigator.userAgent strings so you can see where the data comes from\nUserAgent Data:\nMozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; User-agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; http://bsalsa.com) ; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.5.30729; .NET CLR 3.0.30618)\nMozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.0.7) Gecko/2009021910 Firefox/3.0.7 (.NET CLR 3.5.30729)\nMozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.5) Gecko/20031007 Firebird/0.7\nMozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:0.9.4) Gecko/20011128 Netscape6/6.2.1\nUzbl (Webkit 1.1.17) (GNU/Linux i686 [i686]) (Commit 1958b52d41cba96956dc1995660de49525ed1047)\n*/\n?>"
  },
  {
    "path": "newscoop/classes/cache/CacheEngine.php",
    "content": "<?php\n\nclass InvalidCacheEngine extends Exception\n{\n}\n\nclass UnsupportedCacheEngine extends Exception\n{\n}\n\nclass UnsupportedCacheOperation extends Exception\n{\n}\n\nabstract class CacheEngine\n{\n    const CACHE_VALUES_INFO = 1;\n    const CACHE_PAGES_INFO = 2;\n\n\n    abstract public function getName();\n\n    /**\n     * Inserts the value identified by the given key in the cache.\n     * Returns false if the key already existed and does not\n     * overwrite the existing key.\n     * @param $p_key\n     * @param $p_value\n     * @return boolean\n     */\n    abstract public function addValue($p_key, $p_value, $p_ttl = 0);\n\n    /**\n     * Stores the value identified by the given key in the cache.\n     * Returns true on success, false on failure.\n     * @param $p_key\n     * @param $p_value\n     * @return boolean\n     */\n    abstract public function storeValue($p_key, $p_value, $p_ttl = 0);\n\n    /**\n     * Returns true if a value identified by the given key was\n     * stored in the cache.\n     * @param $key\n     * @return mixed\n     */\n    abstract public function hasValueKey($p_key);\n\n    /**\n     * Fetches the value identified by the given key from the cache.\n     * @param $key\n     * @return mixed\n     */\n    abstract public function fetchValue($p_key);\n\n    /**\n     * Delete the value identified by the given key from the cache.\n     * @param $key\n     * @return void\n     */\n    abstract public function deleteValue($p_key);\n\n    /**\n     * Deletes the values stored in the cache.\n     * @return void\n     */\n    abstract public function clearValues();\n\n    /**\n     * Stores the current page under the given key (identifier).\n     * Returns true on success, false on failure.\n     * @param $p_key\n     * @param $p_value\n     * @return boolean\n     */\n    abstract public function storePage($p_key, $p_value, $p_ttl = 0);\n\n    /**\n     * Delete the page identified by the given key from the cache.\n     * @param $key\n     * @return void\n     */\n    abstract public function deletePage($p_key);\n\n    /**\n     * Deletes the pages stored in the cache.\n     * @return void\n     */\n    abstract public function clearPages();\n\n    /**\n     * Deletes the expired values and pages stored in the cache.\n     * @return void\n     */\n    abstract public function garbageCollector();\n\n    /**\n     * Returns true if the page caching was supported, false otherwise.\n     * @return boolean\n     */\n    abstract public function pageCachingSupported();\n\n    /**\n     * Returns true if the engine was supported in PHP, false otherwise.\n     * @return boolean\n     */\n    abstract public function isSupported();\n\n    /**\n     * Returns a short description of the cache engine.\n     * @return string\n     */\n    abstract public function description();\n\n    /**\n     * Returns an array of cached data; false if invalid type.\n     * @param $p_type\n     * @return array\n     */\n    abstract public function getInfo($p_type = self::CACHE_VALUES_INFO);\n\n    /**\n     * Returns an array of shared memory data\n     * @return array\n     */\n    abstract public function getMemInfo();\n\n    /**\n     * Loads the engine specified by the given name.\n     * @param $p_engineName\n     * @return boolean\n     */\n    public static function Factory($p_engineName, $p_path = null)\n    {\n        if (is_null($p_path)) {\n            $path = dirname(__FILE__);\n        } else {\n            $path = $p_path;\n        }\n        $filePath = \"$path/CacheEngine_$p_engineName.php\";\n        if (!file_exists($filePath)) {\n            throw new InvalidCacheEngine($p_engineName);\n        }\n        require_once($filePath);\n        $className = \"CacheEngine_$p_engineName\";\n        if (!class_exists($className)) {\n            throw new InvalidCacheEngine($p_engineName);\n        }\n        $cacheObj = new $className;\n        if ($cacheObj->isSupported()) {\n            return $cacheObj;\n        }\n        return null;\n    }\n\n    /**\n     * Returns an array of available engines containing\n     * engine name -> info pairs.\n     * @param $p_path\n     * @return array\n     */\n    public static function AvailableEngines($p_path = null)\n    {\n        if (is_null($p_path)) {\n            $path = dirname(__FILE__);\n        } else {\n            $path = $p_path;\n        }\n\n        $includeFiles = glob(realpath($path) . '/CacheEngine_*.php');\n        $engines = array();\n        foreach ($includeFiles as $includeFile) {\n            if (preg_match('/CacheEngine_([^.]+)\\.php/', $includeFile, $matches) == 0) {\n                continue;\n            }\n\n            require_once($includeFile);\n            $engineName = $matches[1];\n            $className = \"CacheEngine_$engineName\";\n            if (class_exists($className)) {\n                $cacheEngine = new $className;\n                $engines[$engineName] = array(\n                    'is_supported'=>$cacheEngine->isSupported(),\n                    'page_caching_supported'=>$cacheEngine->pageCachingSupported(),\n                    'file'=>\"$path/CacheEngine_$engineName.php\",\n                    'description'=>$cacheEngine->description());\n            }\n        }\n        return $engines;\n    }\n} // class CacheEngine\n\n?>\n"
  },
  {
    "path": "newscoop/classes/cache/CacheEngine_APC.php",
    "content": "<?php\n\nrequire_once(dirname(__FILE__).'/CacheEngine.php');\n\nclass CacheEngine_APC extends CacheEngine\n{\n    private static $m_name = 'APC';\n\n    private static $m_description = \"The Alternative PHP Cache (APC)\n    is a free and open opcode cache for PHP. It was conceived of to\n    provide a free, open, and robust framework for caching and\n    optimizing PHP intermediate code.\";\n\n\n    public function getName()\n    {\n        return self::$m_name;\n    }\n\n\n    /**\n     * Inserts the value identified by the given key in the cache.\n     * Returns false if the key already existed and does not\n     * overwrite the existing key.\n     * @param $p_key\n     * @param $p_value\n     * @return boolean\n     */\n    public function addValue($p_key, $p_value, $p_ttl = 0)\n    {\n        return apc_add($p_key, $p_value, $p_ttl);\n    }\n\n\n    /**\n     * Stores the value identified by the given key in the cache.\n     * Returns true on success, false on failure.\n     * @param $p_key\n     * @param $p_value\n     * @return boolean\n     */\n    public function storeValue($p_key, $p_value, $p_ttl = 0)\n    {\n        apc_delete($p_key);\n        return apc_store($p_key, $p_value, $p_ttl);\n    }\n\n\n    /**\n     * Returns true if a value identified by the given key was\n     * stored in the cache.\n     * @param $key\n     * @return mixed\n     */\n    public function hasValueKey($p_key)\n    {\n        return apc_fetch($p_key) !== false;\n    }\n\n\n    /**\n     * Fetches the value identified by the given key from the cache.\n     * @param $key\n     * @return mixed\n     */\n    public function fetchValue($p_key)\n    {\n        return apc_fetch($p_key);\n    }\n\n\n    /**\n     * Delete the value identified by the given key from the cache.\n     * Returns true on success, false on failure.\n     * @param $key\n     * @return boolean\n     */\n    public function deleteValue($p_key)\n    {\n        return apc_delete($p_key);\n    }\n\n\n    /**\n     * Deletes the values stored in the cache.\n     * Returns true on success, false on failure.\n     * @return boolean\n     */\n    public function clearValues()\n    {\n        return apc_clear_cache('user');\n    }\n\n\n    /**\n     * Stores the current page under the given key (identifier).\n     * Returns true on success, false on failure.\n     * @param $p_key\n     * @param $p_value\n     * @return boolean\n     */\n    public function storePage($p_key, $p_value, $p_ttl = 0)\n    {\n        throw new UnsupportedCacheOperation('store page');\n    }\n\n\n    /**\n     * Delete the page identified by the given key from the cache.\n     * @param $key\n     * @return void\n     */\n    public function deletePage($p_key)\n    {\n        throw new UnsupportedCacheOperation('delete page');\n    }\n\n\n    /**\n     * Deletes the pages stored in the cache.\n     * @return void\n     */\n    public function clearPages()\n    {\n        return apc_clear_cache();\n    }\n\n\n    /**\n     * Deletes the expired values and pages stored in the cache.\n     * @return void\n     */\n    public function garbageCollector()\n    {\n    }\n\n\n    /**\n     * Returns true if the page caching was supported, false otherwise.\n     * @return boolean\n     */\n    public function pageCachingSupported()\n    {\n        return false;\n    }\n\n\n    /**\n     * Returns true if the engine was supported in PHP, false otherwise.\n     * @return boolean\n     */\n    public function isSupported()\n    {\n        return ini_get('apc.enabled') && function_exists('apc_store');\n    }\n\n\n    /**\n     * Returns a short description of the cache engine.\n     * @return string\n     */\n    public function description()\n    {\n        return self::$m_description;\n    }\n\n\n    /**\n     * Returns an array of cached data; false if invalid type.\n     * @param $p_type\n     * @return array\n     */\n    public function getInfo($p_type = self::CACHE_VALUES_INFO)\n    {\n        switch ($p_type) {\n            case self::CACHE_VALUES_INFO:\n                return apc_cache_info('user');\n            case self::CACHE_PAGES_INFO:\n                return apc_cache_info();\n            default:\n                return false;\n        }\n        return apc_cache_info();\n    }\n\n\n    /**\n     * Returns an array of shared memory data\n     * @return array\n     */\n    public function getMemInfo()\n    {\n        return apc_sma_info();\n    }\n} // class CacheEngine\n\n?>"
  },
  {
    "path": "newscoop/classes/cache/TemplateCacheHandler.php",
    "content": "<?php\n\nabstract class TemplateCacheHandler\n{\n    /**\n     * Returns true if the handler was supported in PHP, false otherwise.\n     * @return boolean\n     */\n    abstract public function isSupported();\n\n    /**\n     * Returns a short description of the cache handler.\n     * @return string\n     */\n    abstract public function description();\n\n    /**\n     * Smarty template cache handler implementation.\n     * @return boolean\n     */\n    abstract public function handler($action, &$cache_content, $tpl_file = null, $cache_id = null, $compile_id = null, $exp_time = null);\n\n    /**\n     * Clears template cache storage.\n     * @param $p_campsiteVector\n     * @return boolean\n     */\n    abstract public function clean();\n\n    /**\n     * Updates template cache storage by given campsite vector.\n     * @return boolean\n     */\n    abstract public function update($camspiteVector);\n}\n"
  },
  {
    "path": "newscoop/classes/cache/TemplateCacheHandler_DB.php",
    "content": "<?php\nrequire_once dirname(__FILE__) . DIR_SEP. 'TemplateCacheHandler.php';\n\nclass TemplateCacheHandler_DB extends TemplateCacheHandler\n{\n    private static $m_name = 'DB';\n    private static $m_description = \"It allows to store template cache in a database.\";\n    private $_ado_db;\n\n    public function TemplateCacheHandler_DB()\n    {\n        global $g_ado_db;\n        $this->_ado_db = $g_ado_db;\n    }\n\n    /**\n     * Returns true if the engine was supported in PHP, false otherwise.\n     * @return boolean\n     */\n    public function isSupported()\n    {\n        return true;\n    }\n\n    /**\n     * Clears template cache storage.\n     */\n    public function clean($tpl_file = null)\n    {\n        $cache_content = $smrty_obj = null;\n        self::handler('clean', $cache_content, $tpl_file);\n    }\n\n    /**\n     * Updates template cache storage by given campsite vector.\n     */\n    public function update($campsiteVector, $exactUpdate = false)\n    {\n        $queryStr = 'UPDATE Cache SET status = \"E\" WHERE ' . self::vectorToWhereString($campsiteVector);\n        $this->_ado_db->execute($queryStr);\n\n        if ($exactUpdate) return;\n\n        if (!empty($campsiteVector['language']) && !empty($campsiteVector['publication'])) {\n            $whereStr = \"language = {$campsiteVector['language']} AND \"\n            . \"publication = {$campsiteVector['publication']} AND \"\n            . ($campsiteVector['issue'] ? \"issue >= {$campsiteVector['issue']}\" : 'issue = 0') . ' AND ';\n\n            // clear language, publication, issue, section, null vector\n            if (isset($campsiteVector['section'])) {\n                $queryStr = 'UPDATE Cache SET status = \"E\" WHERE ' . $whereStr . \"section = {$campsiteVector['section']} AND \"\n                . 'article = 0';\n                $this->_ado_db->execute($queryStr);\n            }\n\n            // clear language, publication, issue, null, null vector\n            $queryStr = 'UPDATE Cache SET status = \"E\" WHERE ' . $whereStr . \"section = 0 AND article = 0\";\n            $this->_ado_db->execute($queryStr);\n\n            // clear language, publication, null, null, null vector\n            if (isset($campsiteVector['issue'])) {\n                $queryStr = 'UPDATE Cache SET status = \"E\" WHERE language = '. \"{$campsiteVector['language']} AND \"\n                . \"publication = {$campsiteVector['publication']} AND issue = 0 AND section = 0 AND article = 0\";\n                $this->_ado_db->execute($queryStr);\n            }\n\n            // clear language, null, null, null, null vector\n            if (isset($campsiteVector['issue'])) {\n                $queryStr = 'UPDATE Cache SET status = \"E\" WHERE language = '. \"{$campsiteVector['language']} AND \"\n                . 'publication = 0 AND issue = 0 AND section = 0 AND article = 0';\n                $this->_ado_db->execute($queryStr);\n            }\n\n            // clear null, null, null, null, null vector\n            if (isset($campsiteVector['issue'])) {\n                $queryStr = 'UPDATE Cache SET status = \"E\" WHERE language = 0 AND publication = 0 AND issue = 0 AND '\n                . 'section = 0 AND article = 0';\n                $this->_ado_db->execute($queryStr);\n            }\n        }\n\n        return;\n    }\n\n    /**\n     * Returns a short description of the cache engine.\n     * @return string\n     */\n    public function description()\n    {\n        return self::$m_description;\n    }\n\n    public function handler($action, &$cache_content, $tpl_file = null, $cache_id = null,\n        $compile_id = null, $exp_time = 0)\n    {\n        global $g_ado_db;\n        static $cacheParams = array();\n        $exp_time += time();\n        $tpl_file = md5($tpl_file).substr($tpl_file, -15);\n\n        $smarty = CampTemplate::singleton();        \n        $campsiteVector = $smarty->campsiteVector;\n\n        $return = false;\n        if ($action != 'clean') {\n            if (!isset($campsiteVector['params'])) {\n                $campsiteVector['params'] = null;\n            }\n        }\n\n        switch ($action) {\n            case 'read':\n                $whereStr = self::vectorToWhereString($campsiteVector) . \" AND template = '$tpl_file'\";\n\n                $cacheParams[$tpl_file] = array();\n                $cacheParams[$tpl_file]['where'] = $whereStr;\n\n                $queryStr = 'SELECT expired, content, status FROM Cache WHERE ' . $whereStr;\n\n                $result = $g_ado_db->GetRow($queryStr);\n                if ($result) {\n                    if ($result['expired'] > time()) {\n                        if ($result['status'] == 'E') {\n                            $queryStr = 'UPDATE Cache SET status = \"U\" WHERE ' . $whereStr\n                            . ' AND status = \"E\"';\n                            $g_ado_db->executeUpdate($queryStr);\n                            if ($g_ado_db->affected_rows() > 0) {\n                                $cacheParams[$tpl_file]['update'] = true;\n                                $return = false;\n                            } else {\n                                $cache_content = $result['content'];\n                                $return = $result['expired'];\n                            }\n                        } else {\n                            $cacheParams[$tpl_file]['cached'] = true;\n                            $cache_content = $result['content'];\n                            $return = $result['expired'];\n                        }\n                    } else {\n                        // clear expired cache\n                        $queryStr = 'DELETE FROM Cache WHERE expired <= ' . time();\n                        $g_ado_db->execute($queryStr);\n                        $return = false;\n                    }\n                }\n                break;\n\n            case 'write':\n                // in case template changing the old cached templates should be updated\n                if (isset($cacheParams[$tpl_file]['cached']) ) {\n                    $queryStr = 'UPDATE Cache SET status = \"E\" WHERE template = ' . \"'$tpl_file'\";\n                    $g_ado_db->execute($queryStr);\n                    $cacheParams[$tpl_file]['update'] = true;\n                }\n                if ($exp_time > time() + 1) {\n                    // update/insert new cached content\n                    if (isset($cacheParams[$tpl_file]['update'])) {\n                        $queryStr = 'UPDATE Cache SET status = null, expired = ' . $exp_time . ', '\n                        . \"content = '\" . addslashes($cache_content) . \"' WHERE \"\n                        . $cacheParams[$tpl_file]['where'];\n                    } else {\n                        $queryStr = 'INSERT IGNORE INTO Cache (' . implode(',', array_keys($campsiteVector))\n                        . ',template,expired,content) VALUES (';\n                        foreach ($campsiteVector as $key => $value) {\n                            $queryStr .= !isset($value) ? ($key == 'params' ? \"''\" : '0') . ','\n                            : ($key == 'params' ? \"'\" . addslashes($value) . \"'\" : $value) . ',';\n                        }\n                        $queryStr .= \"'$tpl_file',$exp_time,'\" . addslashes($cache_content) . \"')\";\n                    }\n                    unset($cacheParams[$tpl_file]);\n\n                    $g_ado_db->executeUpdate($queryStr);\n\n                    $return = $g_ado_db->affected_rows() > 0;\n                }\n                break;\n\n            case 'clean':\n                $queryStr = 'DELETE FROM Cache';\n                if ($tpl_file) {\n                    $queryStr .= \" WHERE template = '$tpl_file'\";\n                }\n                $g_ado_db->execute($queryStr);\n                $return = true;\n                break;\n\n            default:\n        }\n\n        return $return;\n    }\n\n    public static function vectorToWhereString($vector)\n    {\n        $output = null;\n        foreach ((array) $vector as $key => $value) {\n            if (isset($value)) {\n                $output .= $key . ' = ' . ($key == 'params' ? \"'\" . addslashes($value) . \"'\" : $value);\n            } else {\n                $output .= $key . ' = ' . ($key == 'params' ? \"''\" : '0');\n            }\n            $output .= ' AND ';\n        }\n        $output = substr($output, 0, strlen($output) - 4);\n\n        return $output;\n    }\n}\n"
  },
  {
    "path": "newscoop/composer.json",
    "content": "{\n    \"name\":\"sourcefabric\\/newscoop\",\n    \"description\":\"The open source CMS for news\",\n    \"keywords\":[\n        \"cms\",\n        \"journalism\",\n        \"publication\"\n    ],\n    \"homepage\":\"http:\\/\\/www.sourcefabric.org\\/en\\/newscoop\\/\",\n    \"version\": \"4.4.7\",\n    \"license\":\"GPL-3.0\",\n    \"authors\":[\n\n    ],\n    \"repositories\":[\n        {\n            \"type\":\"artifact\",\n            \"url\":\"plugins\\/private_plugins\"\n        }\n    ],\n    \"require\":{\n        \"php\":\">=5.3.3 <7.0\",\n        \"symfony\\/symfony\":\"2.5.*@dev\",\n        \"silex\\/silex\":\"1.2.*@dev\",\n        \"doctrine\\/orm\":\"2.4.6\",\n        \"doctrine\\/common\":\"2.4.1\",\n        \"doctrine\\/cache\": \"~1.5\",\n        \"doctrine\\/doctrine-bundle\":\"1.2.*\",\n        \"twig\\/extensions\":\"1.1.*\",\n        \"symfony\\/assetic-bundle\":\"2.4.*\",\n        \"symfony\\/swiftmailer-bundle\":\"2.3.*\",\n        \"symfony\\/monolog-bundle\":\"2.5.*\",\n        \"sensio\\/distribution-bundle\":\"~3.0\",\n        \"sensio\\/framework-extra-bundle\":\"~3.0\",\n        \"sensio\\/generator-bundle\":\"2.4.*@dev\",\n        \"incenteev\\/composer-parameter-handler\":\"~2.0\",\n        \"bombayworks\\/zendframework1\":\"1.11.*\",\n        \"friendsofsymfony\\/rest-bundle\":\"0.13.*@dev\",\n        \"kriswallsmith\\/buzz\":\">=0.7\",\n        \"knplabs\\/knp-paginator-bundle\":\"2.4.0\",\n        \"knplabs\\/knp-components\":\"1.2.4\",\n        \"jms\\/serializer-bundle\":\"0.13.0\",\n        \"jms\\/serializer\":\"0.16.0\",\n        \"hybridauth\\/hybridauth\":\"v2.4.1\",\n        \"smarty\\/smarty\":\"3.1.20 as 3.1.21\",\n        \"knplabs\\/knp-menu-bundle\":\"2.0.*@dev\",\n        \"knplabs\\/knp-menu\":\"2.0.1\",\n        \"friendsofsymfony\\/jsrouting-bundle\":\"~1.1\",\n        \"willdurand\\/js-translation-bundle\":\"2.2.0\",\n        \"recaptcha\\/php5\":\"v1.0.0\",\n        \"yzalis\\/crontab\":\"1.0.x-dev\",\n        \"imagine\\/imagine\":\"v0.5.0\",\n        \"symfony\\/twig-bridge\":\"~2.5\",\n        \"newscoop\\/recaptcha-bundle\":\"2.2\",\n        \"friendsofsymfony\\/oauth-server-bundle\":\"1.4.0\",\n        \"newscoop\\/plugins-installer\":\"~v0.2\",\n        \"nelmio\\/api-doc-bundle\":\"2.8.0\",\n        \"hellogerard\\/jobby\":\"v2.0.12\",\n        \"dflydev\\/doctrine-orm-service-provider\":\"1.0.4\",\n        \"pimple\\/pimple\":\"1.1.*@dev\",\n        \"raven\\/raven\":\"0.9.0\",\n        \"stof\\/doctrine-extensions-bundle\":\"1.2.*@dev\"\n    },\n    \"require-dev\":{\n        \"phpunit\\/phpunit\":\"~4.0\",\n        \"phpspec\\/phpspec\":\"2.0.*@dev\",\n        \"liip\\/rmt\":\"1.1.4\",\n        \"behat\\/behat\":\"2.5.1\",\n        \"behat\\/common-contexts\":\"1.2.*@dev\",\n        \"behat\\/mink\":\"1.5.*@stable\",\n        \"behat\\/mink-extension\":\"*\",\n        \"behat\\/mink-goutte-driver\":\"v1.0.9\",\n        \"behat\\/mink-selenium2-driver\":\"*\",\n        \"fzaninotto\\/faker\":\"1.5.*@dev\",\n        \"raulfraile\\/ladybug-bundle\":\"v1.0.6\"\n    },\n    \"autoload\":{\n        \"psr-0\":{\n            \"Newscoop\":[\n                \"src\",\n                \"library\"\n            ],\n            \"Resource\":\"library\",\n            \"Proxy\":\"library\"\n        },\n        \"classmap\":[\n            \"classes\",\n            \"template_engine\",\n            \"plugins\",\n            \"include\",\n            \"application\"\n        ]\n    },\n    \"include-path\":[\n        \"include\"\n    ],\n    \"scripts\":{\n        \"post-install-cmd\":[\n            \"Sensio\\\\Bundle\\\\DistributionBundle\\\\Composer\\\\ScriptHandler::buildBootstrap\"\n        ],\n        \"post-update-cmd\":[\n            \"Sensio\\\\Bundle\\\\DistributionBundle\\\\Composer\\\\ScriptHandler::buildBootstrap\"\n        ]\n    },\n    \"minimum-stability\":\"dev\",\n    \"config\":{\n        \"bin-dir\":\"vendor\\/bin\",\n        \"discard-changes\":true,\n        \"process-timeout\":3600\n    },\n    \"extra\":{\n        \"symfony-app-dir\":\"application\",\n        \"symfony-web-dir\":\"public\"\n    },\n    \"branch-alias\":{\n        \"dev-master\":\"2.3-dev\"\n    }\n}\n"
  },
  {
    "path": "newscoop/conf/install_conf.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Holman Romero <holman.romero@gmail.com>\n * @author Mugur Rus <mugur.rus@gmail.com>\n * @copyright 2008 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\n\nglobal $Campsite, $ADMIN;\n\n$Campsite['APACHE_USER'] = 'www-data';\n$Campsite['APACHE_GROUP'] = 'www-data';\n$Campsite['CAMPSITE_DIR'] = (array_key_exists('g_campsiteDir', $GLOBALS)) ? $GLOBALS['g_campsiteDir'] : dirname(dirname(__FILE__));\n$Campsite['ETC_DIR'] = $Campsite['CAMPSITE_DIR'].'/conf';\n$Campsite['BIN_DIR'] = $Campsite['CAMPSITE_DIR'].'/bin';\n$Campsite['WWW_DIR'] = $Campsite['CAMPSITE_DIR'];\n\n$Campsite['HTML_DIR'] = $Campsite['CAMPSITE_DIR'];\n\n$Campsite['SSL_SITE'] = FALSE;\nif (isset($_SERVER['HTTPS']) && ($_SERVER['HTTPS'] == 'on' || $_SERVER['HTTPS'] == 1)) {\n    $scheme = 'https://';\n    $Campsite['SSL_SITE'] = TRUE;\n} elseif (isset($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] == 443) {\n    $scheme = 'https://';\n    $Campsite['SSL_SITE'] = TRUE;\n} else {\n    $scheme = 'http://';\n}\n\nif (!isset($_SERVER['SERVER_PORT'])) {\n    $_SERVER['SERVER_PORT'] = 80;\n}\n$Campsite['HOSTNAME'] = isset($_SERVER['SERVER_NAME']) ? $_SERVER['SERVER_NAME'] : \"\";\nif (($_SERVER['SERVER_PORT'] != 80) && ($_SERVER['SERVER_PORT'] != 443)) {\n    $Campsite['HOSTNAME'] .= ':'.$_SERVER['SERVER_PORT'];\n}\n\n// tinymce plugins use php scripts in a greater depth\n$use_script_name = $_SERVER['SCRIPT_NAME'];\n$tinymce_start = strpos($_SERVER['SCRIPT_NAME'], '/js/tinymce/plugins');\nif (-1 < $tinymce_start) {\n    // we pretend that the \"/js\" is the actual script name,\n    // so that it is at the zero depth, alike other (real) scripts\n    $use_script_name = substr($_SERVER['SCRIPT_NAME'], 0, ($tinymce_start + 3));\n}\n$Campsite['SUBDIR'] = substr($use_script_name, 0, strrpos($use_script_name, '/', -2));\n\n$ADMIN = empty($Campsite['SUBDIR']) ? 'admin' : substr($Campsite['SUBDIR'], 1) . '/admin';\n$Campsite['ADMIN'] = $ADMIN;\n$Campsite['WEBSITE_URL'] = $scheme.$Campsite['HOSTNAME'].$Campsite['SUBDIR'];\nunset($scheme);\n\n\n$Campsite['IMAGE_DIRECTORY'] = $Campsite['HTML_DIR'].'/images/';\n$Campsite['IMAGE_BASE_URL'] = $Campsite['WEBSITE_URL'].'/images/';\n$Campsite['ADMIN_STYLE_URL'] = $Campsite['WEBSITE_URL'].'/admin-style';\n$Campsite['ADMIN_IMAGE_BASE_URL'] = $Campsite['WEBSITE_URL'].'/admin-style/images';\n$Campsite['IMAGE_PREFIX'] = 'cms-image-';\n$Campsite['IMAGEMAGICK_INSTALLED'] = true;\n$Campsite['THUMBNAIL_MAX_SIZE'] = 64;\n$Campsite['THUMBNAIL_COMMAND'] = 'convert -sample '\n    .$Campsite['THUMBNAIL_MAX_SIZE'].'x'.$Campsite['THUMBNAIL_MAX_SIZE'];\n$Campsite['THUMBNAIL_DIRECTORY'] = $Campsite['IMAGE_DIRECTORY'].'/thumbnails/';\n$Campsite['THUMBNAIL_BASE_URL'] = $Campsite['WEBSITE_URL'].'/images/thumbnails/';\n$Campsite['THUMBNAIL_PREFIX'] = 'cms-thumb-';\n$Campsite['FILE_BASE_URL'] = $Campsite['WEBSITE_URL'].'/public/files/';\n$Campsite['FILE_DIRECTORY'] = $Campsite['HTML_DIR'].'/public/files';\n$Campsite['FILE_NUM_DIRS_LEVEL_1'] = \"1000\";\n$Campsite['FILE_NUM_DIRS_LEVEL_2'] = \"1000\";\n$Campsite['TMP_DIRECTORY'] = '/tmp/';\n$Campsite['HELP_URL'] = 'http://www.sourcefabric.org/en/products/newscoop_support/';\n$Campsite['ABOUT_URL'] = 'http://www.sourcefabric.org/en/about/page/';\n$Campsite['SUPPORT_EMAIL'] = 'newscoop-bug@sourcefabric.org';\n$Campsite['DEBUG'] = true;\n\nrequire_once($Campsite['CAMPSITE_DIR'].'/template_engine/classes/CampVersion.php');\n$version = new CampVersion();\n$Campsite['VERSION'] = $version->getVersion();\n?>\n"
  },
  {
    "path": "newscoop/conf/saas_config_sample.php",
    "content": "<?php\n/*\n * configuration file for the Saas feature\n * to disable the Saas feature just rename the file to something other then saas_config.php\n *\n*/\n    $this->saasConfig = array(\n        'permissions' => array(\n        /*article types*/\n        'ManageArticleTypes',\n        'DeleteArticleTypes',\n\n        /*templates*/\n        'ManageTempl',\n        'DeleteTempl',\n        'ManageIssueTemplates',\n        'ManageSectionTemplates',\n\n        /*plugins*/\n        'plugin_manager',\n\n        /*plugin blog*/\n        'plugin_blog_moderator',\n        'plugin_blog_admin',\n\n        /*plugin poll*/\n        'plugin_poll',\n\n        /*plugin recaptcha*/\n        'plugin_recaptcha_admin',\n\n        /*plugin soundclound*/\n        'plugin_soundcloud_preferences',\n        'plugin_soundcloud_browser',\n        'plugin_soundcloud_upload',\n        'plugin_soundcloud_update',\n        'plugin_soundcloud_delete',\n\n\n        /*countries*/\n        'ManageCountries',\n        'DeleteCountries',\n\n        /*localizer*/\n        'ManageLocalizer',\n\n        /*subscriptions*/\n        'ManageSubscriptions',\n        'ManageSectionSubscriptions',\n\n        /*readers*/\n        'ManageReaders',\n\n        /*publications*/\n        //'ManagePub',\n        'AddPub',\n        'ManagePubInvalidUrlTemplate',\n        'DeletePub',\n        'ManagePublicationSubscriptions',\n\n        /*system preferences*/\n        'ManageSystemPreferences'\n\n    ),\n    'privileges' =>\n    array(\n        array('resource' => 'staff', 'privilege' => 'add'),\n        array('resource' => 'publication', 'privilege' => 'delete'),\n        array('resource' => 'template', 'privilege' => 'delete'),\n        array('resource' => 'template', 'privilege' => 'manage'),\n        array('resource' => 'template', 'privilege' => '*'),\n        array('resource' => 'themes', 'privilege' => '*'),\n        array('resource' => 'theme', 'privilege' => '*'),\n        array('resource' => 'subscriber', 'privilege' => 'manage'),\n        array('resource' => 'subscriber', 'privilege' => 'add'),\n        array('resource' => 'country', 'privilege' => 'manage'),\n        array('resource' => 'country', 'privilege' => 'delete'),\n        array('resource' => 'localizer', 'privilege' => 'manage'),\n        array('resource' => 'plugin', 'privilege' => 'manage'),\n        array('resource' => 'plugin-blog', 'privilege' => 'admin'),\n        array('resource' => 'plugin-recaptcha', 'privilege' => 'admin'),\n        array('resource' => 'plugin-blog', 'privilege' => 'moderator'),\n        array('resource' => 'plugin-recaptcha', 'privilege' => 'admin'),\n\n    )\n);\n"
  },
  {
    "path": "newscoop/constants.php",
    "content": "<?php\n\n// Define path to application directory\ndefined('APPLICATION_PATH') || define('APPLICATION_PATH', __DIR__ . '/application');\n\n// Define application environment\ndefined('APPLICATION_ENV') || define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));\n\n$GLOBALS['g_campsiteDir'] = realpath(APPLICATION_PATH . '/../');\n"
  },
  {
    "path": "newscoop/db_connect.php",
    "content": "<?php\n\nglobal $g_ado_db, $application;\n\n/**\n * Display error message and die.\n */\n$displayError = function () {\n    header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');\n    echo <<<EOT\n<div style=\"color:red;font-size:2em\">\n    <p>ERROR connecting to the MySQL server!</p>\n    <p>Please start the MySQL database server and verify if the connection\nconfiguration is valid.</p>\n</div>\nEOT;\n    exit(1);\n};\n\nif (empty($g_ado_db)) {\n    if (Zend_Registry::isRegistered('container')) {\n        $container = Zend_Registry::get('container');\n        $g_ado_db = $container->getService('doctrine.adodb');\n\n        if (!$g_ado_db->isConnected(true)) {\n            $displayError();\n        }\n    } else {\n        throw new \\Exception(\"Container is missing\", 1);\n    }\n}\n"
  },
  {
    "path": "newscoop/docs/INSTALL-ubuntu.md",
    "content": "# Newscoop Ubuntu 14.04 Install Guide [Advanced]\n\nThis guide will help you install the latest Newscoop version without any knowledge about Apache, MySQL, PHP or any other technologies.\n\n### Install LAMP stack\n\nA \"LAMP\" stack is a group of open source software that is typically installed together to enable a server to host dynamic websites and web apps. This term is actually an acronym which represents the Linux operating system, with the Apache web server. The site data is stored in a MySQL database, and dynamic content is processed by PHP.\n\n### Step 1 - Install Apache\n\n    sudo apt-get update\n    sudo apt-get install apache2\n\nSince we are using a sudo command, these operations get executed with root privileges. Later on it will ask you to provide regular user's password to confirm apt-get operations.\n\nAfterwards, your web server is installed.\n\nTo make sure if everything went fine you can go to:\n\n\thttp://localhost/\n\nYou should see Apache2 Default page as shown below.\n\n<img src=\"https://dl.dropboxusercontent.com/u/35759363/Newscoop%20images/Zrzut%20ekranu%202014-07-07%2016.19.29.png\" width=\"690\" height=\"590\">\n\nIf you can see this page then everything works as expected.\n\n### Step 2 - Install MySQL\n\n...\n\n\tsudo apt-get install mysql-server libapache2-mod-auth-mysql php5-mysql\n\n\nYou will be asked to enter MySQL \"root\" password:\n\n<img src=\"https://dl.dropboxusercontent.com/u/35759363/Newscoop%20images/Zrzut%20ekranu%202014-07-08%2010.18.04.png\" width=\"571\" height=\"444\">\n\nType strong one and hit `ENTER` button. It will ask you to confirm it:\n\n<img src=\"https://dl.dropboxusercontent.com/u/35759363/Newscoop%20images/Zrzut%20ekranu%202014-07-08%2010.19.50.png\" width=\"554\" height=\"439\">\n\nType the same password you typed in the step above and hit `ENTER` button. MySQL server is installed now.\n\nFirst, we need to tell MySQL to create its database directory structure where it will store its information. You can do this by typing:\n\n\tsudo mysql_install_db\n\nAfterwards, we want to run a simple security script that will remove some dangerous defaults and lock down access to our database system a little bit. Start the interactive script by running: (this step is optional but for better security it is recommended to run this script and follow instructions in it)\n\n\tsudo mysql_secure_installation\n\n### Step 3 - Install PHP\n...\n\n\tsudo apt-get install php5 libapache2-mod-php5 php5-mcrypt php5-intl php5-curl php5-gd curl\n\nYou will need to restart the Apache2 server afterwards so the configuration can refresh:\n\n\tsudo service apache2 restart\n\nBy default `www` folder will be owned by `root` we have to change this so `www-data` user can own it which is much safer and don't complicate things much.\n\n\tsudo chown -R www-data:www-data /var/www\n\nWe will also modify permissions and make sure that access is permitted to the general web directory.\n\n\tsudo chmod -R 755 /var/www\n\n### Install Git\n\n    sudo apt-get install git\n\n### Install Subversion\n\nSubversion is required to install Smarty bundle. Without subversion you will get an error: `Package could not be downloaded, sh: 1: svn: not found.` while installing Newscoop vendors. You won't be able to finish Newscoop installation properly.\n\n    sudo apt-get install subversion\n\n\n### Download/Clone Latest Newscoop Repository Files Using Git\n\nYou can get the development sources from our public repository at Github by doing only this:\n\n\tcd /var/www/\n\tgit clone https://github.com/sourcefabric/Newscoop.git\n\nThis will take some time depending on your internet connection speed. When cloning will successfully end, you will see a new folder called `Newscoop`(see image below)\n\n<img src=\"https://dl.dropboxusercontent.com/u/35759363/Newscoop%20images/Zrzut%20ekranu%202014-07-07%2017.47.28.png\" width=\"455\" height=\"120\">\n\n### Set up Virtual Host in Apache2 configuration\n\nThe term Virtual Host refers to the practice of running more than one web site (such as company1.example.com and company2.example.com) on a single machine. Virtual hosts can be \"IP-based\", meaning that you have a different IP address for every web site, or \"name-based\", meaning that you have multiple names running on each IP address. The fact that they are running on the same physical server is not apparent to the end user. - [Apache2 docs][vhosts]\n\nCreate the file `/etc/apache2/sites-available/newscoop.conf`\n\n\tsudo nano /etc/apache2/sites-available/newscoop.conf\n\nand copy in the information below.\n\n\t<VirtualHost *:80>\n\t\t\tDocumentRoot /var/www/Newscoop/newscoop\n\t\t\tServerName localhost\n\t\t\tServerAdmin foo@bar.org\n\t\t\t<Directory /var/www/Newscoop/newscoop>\n                \tAllowOverride All\n        \t</Directory>\n\t</VirtualHost>\n\nand then from the command line:\n\n\tsudo a2dissite 000-default\n\tsudo a2ensite newscoop\n\tsudo a2enmod rewrite\n\tsudo service apache2 restart\n\n\nGo to http://localhost and you will see Newscoop Installer\n\n<img src=\"https://dl.dropboxusercontent.com/u/35759363/Newscoop%20images/Zrzut%20ekranu%202014-07-08%2013.37.16.png\" width=\"570\" height=\"141\">\n\nFollow instructions in Installer to complete the installation.\n\n[vhosts]: http://httpd.apache.org/docs/2.2/vhosts/\n"
  },
  {
    "path": "newscoop/docs/README.md",
    "content": "# How Do I Install Newscoop?\n\n- [Newscoop Ubuntu 14.04 Install Guide][ubuntu]\n\n### Hardware Requirements\n\n- Dual core CPU recommended\n- 1 GB RAM minimum (with [swap][swap]), 2 GB recommended\n- 32 bit or 64 bit operating system\n- 512 MB minimum free disk space\n\n### Software Requirements\n\n- [MySQL 5.5.3+](http://dev.mysql.com/downloads/mysql)\n- [Symfony 2.3](http://symfony.com/download)\n- [PHP 5.3+](http://php.net/downloads.php)\n- [Exim4](http://www.exim.org/mirrors.html)\n\n### How Do I restore backup package from Newscoop 4.2.3/4.2.4 on 4.3?\n\n- [Restore guide][restore]\n\n[swap]: https://www.digitalocean.com/community/tutorials/how-to-add-swap-on-ubuntu-14-04\n[ubuntu]: https://github.com/sourcefabric/Newscoop/blob/v4.3/newscoop/docs/INSTALL-ubuntu.md\n[restore]: https://github.com/sourcefabric/Newscoop/blob/v4.3/newscoop/docs/UPGRADE_4_3.md#restoring-backup-package-from-newscoop-version-423424-on-43"
  },
  {
    "path": "newscoop/docs/UPGRADE_4_3.md",
    "content": "## Upgrading Newscoop version 4.2.3/4.2.4/4.3.x to 4.3.x\n\n**Important!** Remember to backup all your data before performing upgrade.\n\n1. Remove `newscoop/vendor` directory and its content from your current Newscoop instance (`sudo rm -rf newscoop/vendor`).\n2. Copy Newscoop 4.3.x files over the 4.2.3/4.2.4/4.3.x files (e.g. `sudo cp -r /home/user/Newscoop43/newscoop/ /var/www/newscoop/`).\n3. Run `upgrade.php` script. (Go to `http://www.example.com/upgrade.php`)\n4. Check if there are any instructions to follow in the output of upgrade script. If so, then follow the steps.\n5. When it is done, clear the cache folder: `sudo rm -rf cache/*`.\n6. Run `php composer.phar dump-autoload --optimize` command in `../newscoop/` directory - this will autoload new classes.\n7. Run `php application/console assets:install public/` command in `../newscoop/` directory - it will install assets.\n8. Run `php scripts/fixer.php` script in `../newscoop/` directory - it will fix files permissions. (optional, run it when you don't know how to manage files permissions)\n9. Clear the cache folder for the last time: `sudo rm -rf cache/*`.\n10. You are done!\n\nAbove steps are required to upgrade Newscoop 4.2.3/4.2.4/4.3.x to 4.3.x.\n\nWe also recommend to update all the legacy plugins: `debate`, `poll`, `soundcloud`, `recaptcha`, because they will not be compatible with Newscoop 4.3.x anymore.\n\n## Updating Newscoop legacy plugins\n\nHow to do this?\n\n* Make a backup of `newscoop/plugins/` directory.\n* Remove old versions of the legacy plugins: `sudo rm -rf newscoop/plugins/debate newscoop/plugins/poll newscoop/plugins/soundcloud newscoop/plugins/recaptcha`.\n* Download the fixed package of legacy plugins from [here][3].\n* Extract archive and copy it to `newscoop/plugins/` directory.\n* Execute `php composer.phar dump-autoload —-optimize` in Newscoop root folder.\n* Clear the cache folder: `sudo rm -rf cache/*`\n\n## Restoring backup package from Newscoop version 4.2.3/4.2.4 on 4.3.x\n\nFor a backup/restore use the [\"Backup/Restore utility\"][4] which can be found in the Newscoop Admin Panel.\n\nIf your current 4.2.3/4.2.4 instance contained old legacy plugins (`debate`, `poll`, `soundcloud`, `recaptcha`) and you created a backup, you will have to update these plugins after the restore process in version 4.3.x of Newscoop.\n\nThis is required because more adjustments have been done to make the legacy plugins compatible with Newscoop 4.3.x.\n\nHow to install old legacy plugins?:\n\n* Download the fixed package of legacy plugins from [here][3].\n* Extract archive and copy it to `newscoop/plugins/` directory.\n* Go to newscoop root folder (`../newscoop/`) and execute `php composer.phar dump-autoload —-optimize`\n* Clear the cache folder: `sudo rm -rf cache/*`\n\n## Break Changes for old plugins:\n\n#### CampInstallationBaseHelper is removed.\nIf your plugin use CampInstallationBaseHelper::ImportDB() function to import sql files - replace it with:\n```\n$databaseConnection = \\Zend_Registry::get('container')->get('database_connection');\n$installerDatabaseService = new \\Newscoop\\Installer\\Services\\DatabaseService(\\Zend_Registry::get('container')->get('logger'));\n$installerDatabaseService->importDB('path to sql', $databaseConnection);\n```\nIf you use standard Sourcefabric plugins like debate, pool etc. then please use new (fixed) versions from our sourceforge/github.\n\n\n## Newscoop core api changes\n\n#### System preferences changes:\nSystem preferences are now implemented as an service.\n\nUsage:\n```\n//in non Symfony2 classes\n$preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n\n//in Symfony2 classes\n$preferencesService = $this->container->get('system_preferences_service');\n\n//get options\n$preferencesService->get('SiteOnline');\n//or\n$preferencesService->SiteOnline;\n\n//set options\n$preferencesService->set('SiteOnline', 'Y');\n//or\n$preferencesService->SiteOnline = 'Y';\n```\n\n\n## New translation system:\nRemoved Localizer feature. Replaced with new Symfony2 translation concept.\nAdded event listener to load old plugins translations from directory ```../newscoop/newscoop/plugins/```\nTranslations files are located in ```../newscoop/newscoop/src/Newscoop/NewscoopBundle/Resources/translations``` directory\n\n\n**Usage in templates:**\n\nold translation tags usage:\n```\n{{ #search# }}\n```\n\nnew translation tags usage:\n```\n{{ 'search'|translate:'translation_domain' }}\n```\n* ```search``` - given text to translate\n* ```translation_domain``` - name of translation file, for ex. if our translation file name is ```custodian.en.yml``` then the translation domain is custodian and translation strings will be loaded from that file, if translation domain isn't set (```{{ 'search'|translate }}``` then default translation domain is used: ```theme_translation```.\n\nTranslation domains allow you to split translations to many files, ex. ```users.en.yml```, ```front.en.yml``` etc.\n\nHow to use it with global variables?\n```\n{{ assign var=\"welcome\" value=\"{{ 'welcome'|translate }}\" }}\nand call it: {{ $welcome }}\n```\n\nNew translation directory inside themes: ```theme_name/translations```\n\n**Usage for developers:**\n\nin Twig files:\n```\n{{ 'newscoop.recover.password'|trans({'%variableName%': variableName}, 'home') }}\n```\nwhere:\n* ```home``` - translation domain (e.g. home.en.yml file)\n* ```variableName``` - parameter to be displayed in translated string\n\nin Controllers:\n```\n//Symfony2 controllers translator container\n$translator = $this->get('translator');\n \n//non Symfony2 controllers\n$translator = \\Zend_Registry::get('container')->getService('translator');\n \n//translating string\n$translator->trans('newscoop.preferences.error.cache',\n    array('%cache%' => $cache_engine), 'system_pref'\n));\n```\nwhere:\n* ```array('%cache%' => $cache_engine)```  - parameter to be displayed in translated string\n* ```system_pref``` - translation domain (e.g. system_pref.en.yml file)\n\nYaml file structure example:\n```\nhome.en.yml file\nnewscoop:\n  recover:\n    password: \"Password recovery for %variableName%\"\n```\n\nMore information about Symfony2 translations can be found [here][2]\n\n## Publication override by request parameter\nAdded possibility to override publication name via request parameters:\nImplementation:\n```\nif ($request->query->has('__publication_alias_name') || $request->request->has('__publication_alias_name')) {\n    $publication = $request->get('__publication_alias_name');\n}\n```\nUsage:\n\nSend ```__publication_alias_name``` parameter with publication name in request.\n\n## A new way to manage background jobs:\n\nIn Newscoop 4.3 we have introduced a new way to handle cron jobs management. We have 7 Newscoop internal cron jobs listed below, to help organize content.\n\nCron jobs:\n\n* ```Autopublish``` - Autopublish pending issues and articles\n* ```Indexer``` - Runs Newscoop Indexer - articles indexing\n* ```Subscriptions``` notifications - Send Newscoop subscriptions notifications\n* ```Events notifications``` - Send Newscoop events notifications\n* ```Statistics clean``` - Remove old statistics from Newscoop database\n* ```Send statistics``` - Send Newscoop stats to Sourcefabric\n* ```Users garbage``` - Remove obsolete pending users data\n\nPreviously these all cron jobs were installed in cron tab during the Newscoop installation, every job were inserted into cron tab which means we had to manage all 7 jobs via cron tab config file manually.\n\nIn 4.3 we did it in a bit diffrent way, much more flexible and better. From now on we care only about one master cron job which is added to cron tab during the Newscoop installation process and all other jobs are being added to this master job which runs them all.\n\nThis cron job can be invoked manually like that:\n```\nphp application/console scheduler:run\n```\nWhen Newscoop 4.3 will be installed sucessfully, this job will run every minute, firing all other 7 cron jobs which will run at their configured schedule time.\nAll cron jobs can be now managed by Newscoop backend in System Preferences where you will be able to disable/enable specified job:\n\nTo register your custom cron job you simply have to use newscoop.scheduler service:\n```\n$schedulerService = $this->get(\"newscoop.scheduler\");\n$schedulerService->registerJob(\"My custom job\", array(\n       'command' => $appDirectory.' custom:job',\n       'schedule' => '* * * * *',\n));\n```\n\nSecond parameter of ```registerJob``` method is array of parameters:\n\nFull list of parameters:\n* ```string``` ```command```  - The job to run (either a shell command or anonymous PHP function)\n* ```string``` ```schedule``` - Crontab schedule format (`man -s 5 crontab`)\n* ```boolean``` ```enabled``` - Run this job at scheduled times\n* ```boolean``` ```debug``` - Send `scheduler` internal messages to 'debug.log'\n* ```string``` ```dateFormat``` - Format for dates on scheduler log messages\n* ```string``` ```output``` - Redirect `stdout` and `stderr` to this file\n* ```string``` ```runOnHost``` - Run jobs only on this hostname\n* ```string``` ```environment``` - Development environment for this job\n* ```string``` ```runAs``` - Run as this user, if crontab user has `sudo` privileges\n\n## Other changes\n\n* New design for System preferences tab\n* Backend menu:\n * Changed menu to fit Bootstrap 3\n* Password Recovery:\n *  Implemented new admin password recovery\n* Topic management:\n * topic search starts from 3 characters\n * implemented as an service\n * add new topic on \"enter\" hit in Article Edit Screen\n * More can be found here: [Topic Management][1]\n* Widget called `Google gadget` has been removed\n\n[1]: https://wiki.sourcefabric.org/display/WOBS/Topic+Management\n[2]: http://symfony.com/doc/current/book/translation.html\n[3]: https://github.com/newscoop/newscoop-legacy-plugins\n[4]: http://sourcefabric.booktype.pro/newscoop-43-for-journalists-and-editors/backup-and-upgrade/\n"
  },
  {
    "path": "newscoop/docs/UPGRADE_4_4.md",
    "content": "## Upgrading Newscoop version 4.3.x/4.4.x to 4.4.x\n\n**Important!** Remember to backup all your data before performing upgrade.\n\n**Note:**\n\nIf you are using [update package](https://dev-blog.sourcefabric.org/en/blogs/newscoop/19/Newscoop-releases-changes.htm) to upgrade Newscoop, please skip step 1.\n\n1. Remove `newscoop/vendor` directory and its content from your current Newscoop instance (`sudo rm -rf newscoop/vendor`).\n2. Copy Newscoop 4.4.x files over the 4.3.x/4.4.x files (e.g. `sudo cp -r /home/user/Newscoop44/newscoop/ /var/www/newscoop/`).\n3. Run `upgrade.php` script. (Go to `http://www.example.com/upgrade.php`)\n4. Check if there are any instructions to follow in the output of upgrade script. If so, then follow the steps.\n5. When it is done, clear the cache folder: `sudo rm -rf cache/*`.\n6. Run `php composer.phar dump-autoload --optimize --no-dev` command in `../newscoop/` directory - this will autoload new classes.\n7. Run `php application/console assets:install public/` command in `../newscoop/` directory - it will install assets.\n8. Run `php scripts/fixer.php` script in `../newscoop/` directory - it will fix files permissions. (optional, run it when you don't know how to manage files permissions)\n9. Clear the cache folder for the last time: `sudo rm -rf cache/*`.\n10. You are done!\n\nAbove steps are required to upgrade Newscoop 4.3.x/4.4.x to 4.4.x.\n\nWe also recommend to update all the legacy plugins: `debate`, `poll`, `soundcloud`, `recaptcha`. [How-to][1].\n\n[1]: https://github.com/sourcefabric/Newscoop/blob/master/newscoop/docs/UPGRADE_4_3.md#updating-newscoop-legacy-plugins\n"
  },
  {
    "path": "newscoop/docs/UPGRADE_BELOW_4_2_3.md",
    "content": "UPGRADE (applies for versions below 4.2.3)\n=======\n\n### Warning! Backup your site before performing the upgrade!\nIt is always safe to Backup your files before performing an upgrade! Please make a Backup of your files and database first.\n\n### Upgrading from Newscoop 3.5.x:\n\nUpgrading from version older than 3.5.0 is not supported anymore. If you had an older version you need to upgrade to Newscoop 4.1.2 first and then upgrade to 4.2.\n\n### Upgrading from Newscoop 4.1.x to Newscoop 4.2\n#### Find your Newscoop dir\n\nFirst we change to your `Newscoop directory`, this depends per server but usually is `/var/www/newscoop/`\n```\ncd `NewscoopDirectory`\n```\n\n#### Vendors\n\nBefore upgrading (which will replace some files) we must remove all files and directories from the `vendor` directory:\n\n```\nrm -rf vendor/*\n```\n\nIf you forget about this before upgrading don't worry. You can remove it after upgrading the files and then run: \n\n```\n# ONLY IF YOU FORGOT THE PREVIOUS STEP\nphp composer.phar install\n```\n\n#### Writable directories\n\nThe following files have to be read/writable by the `upgrade.php` script in order to upgrade Newscoop automatically.\n\n\n```\nchmod -R 777 files/\nchmod -R 777 videos/\n```\n\n*If this produces a `chmod: changing permissions of [snip]` error, try it as `root`*\n\nThe following files have to be removed.\n\n```\nrm -rf application/configs/application.ini-dist\nrm -rf library/Newscoop/News\nrm -rf library/Newscoop/Entity/Subscription.php \nrm -rf library/Newscoop/Entity/SubscriptionSection.php\nrm -rf library/Newscoop/Services/EventDispatcherService.php\nrm -rf library/Newscoop/DoctrineEventDispatcherProxy.php\nrm -rf library/Newscoop/Entity/Repository/User/SubscriberRepository.php\nrm -rf library/Resource/Doctrine.php\nrm -rf application/modules/admin/controllers/TestController.php\nrm -rf application/controllers/ArticleofthedayController.php\nrm -rf library/Newscoop/Entity/User/Subscriber.php\nrm -rf library/Newscoop/Entity/Entity.php\nrm -rf .disable_upgrade\nrm -rf README.txt\nrm -rf .travis.yml\nrm -rf UPGRADE.txt\nrm -rf library/Newscoop/Entity/Proxy\nrm -rf library/fabpot-dependency-injection-07ff9ba\nrm -rf library/fabpot-event-dispatcher-782a5ef\nrm -rf library/smarty3\nrm -rf docs/\n```\n\n#### Clearing the `Cache`\n\nNow we should not forget to clear the `cache`\n\n```\nrm -rf cache/*\n```\n\n#### Actual unpacking of files\nNow we have to unpack the upgrade over your old one. Place the `Newscoop 4.2` `ZIP` or `TAR.GZ` one directory higher then your `Newscoop directory`. This will usually be `/var/www/`. Once this file is there you can do the following.\n\nFirst we change to the directory above your `Newscoop directory`.\n\n```\ncd ..\n```\n\nIf you have the `ZIP`\n\n```\nunzip -oq newscoop-4.2.zip\n```\n\nIf you have the `TAR.GZ`\n\n```\ntar -xzf newscoop-4.2.tar.gz\n```\n\n##### Setting permissions\nNow in order to have everything work correctly we need to set some permissions. This can be done easily now:\n\n\n```\ncd newscoop/\nsh bin/post-install.sh\n```\n\n#### Run the `upgrade.php` script\nNow we point our browser to our `Newscoop Web Site` and type `/upgrade.php` behind the URL. This will automatically run the required Scripts and Database Upgrades required for 4.2.\n\nOnce this process is complete, congratulations! You're now on Newscoop 4.2!\n\n### Release notes.\nSome custom parameters defined in application.ini file can cause problems. Read more about migration on https://wiki.sourcefabric.org/display/CS/Changes+in+config+files.\n"
  },
  {
    "path": "newscoop/extensions/article-lists/ArticleDiagramsWidget.php",
    "content": "<?php\n/**\n * @package Newscoop\n *\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\n/**\n * @title Articles diagrams\n * @description Render diagrams for articles statistics\n */\nclass ArticleDiagramsWidget extends Widget\n{\n    /** @setting */\n    protected $article_type = \"news\";\n\n    /** @setting */\n    protected $api_prefix = \"api\";\n\n\n    public function render()\n    {\n        include_once dirname(__FILE__) . '/diagrams.phtml';\n    }\n}\n"
  },
  {
    "path": "newscoop/extensions/article-lists/ArticlesWidget.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once LIBS_DIR . '/ArticleList/ArticleList.php';\n\n/**\n * Articles widget base class\n */\nabstract class ArticlesWidget extends Widget\n{\n    const LIMIT = 20; // articles limit\n\n    protected $title = NULL;\n\n    protected $items = array();\n\n    public function render()\n    {\n        $articlelist = new ArticleList(TRUE);\n        $articlelist->setItems($this->items);\n        if (!$this->isFullscreen()) {\n            $articlelist->setHidden('Comments');\n            $articlelist->setHidden('Reads');\n            $articlelist->setHidden('UseMap');\n            $articlelist->setHidden('Locations');\n            $articlelist->setHidden('CreateDate');\n            $articlelist->setHidden('PublishDate');\n        }\n\n        require_once dirname(__FILE__) . '/PendingArticlesWidget.php';\n        if ($this instanceof PendingArticlesWidget) {\n            $articlelist->setHidden('Preview');\n        }\n\n        $articlelist->render();\n    }\n}\n"
  },
  {
    "path": "newscoop/extensions/article-lists/MostPopularArticlesWidget.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/ArticlesWidget.php';\n\n/**\n * @title Most Popular Articles\n */\nclass MostPopularArticlesWidget extends ArticlesWidget\n{\n    public function __construct()\n    {  \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->title = $translator->trans('Most Popular Articles', array(), 'extensions');\n    }\n\n    public function beforeRender()\n    {\n        $this->items = Article::GetList(array(\n            new ComparisonOperation('published', new Operator('is'), 'true'),\n            new ComparisonOperation('reads', new Operator('greater'), '0'),\n            ), array(\n                array(\n                    'field' => 'bypopularity',\n                    'dir' => 'desc',\n                )\n            ), 0, self::LIMIT, $count = 0);\n    }\n\n    public function render()\n    {\n        $articlelist = new ArticleList(TRUE);\n        $articlelist->setItems($this->items);\n        $articlelist->setOrderBy('Reads', 'desc');\n        if (!$this->isFullscreen()) {\n            $articlelist->setHidden('Status');\n            $articlelist->setHidden('Comments');\n            $articlelist->setHidden('UseMap');\n            $articlelist->setHidden('Locations');\n            $articlelist->setHidden('PublishDate');\n        }\n        $articlelist->render();\n    }\n}\n"
  },
  {
    "path": "newscoop/extensions/article-lists/PendingArticlesWidget.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/ArticlesWidget.php';\n\n/**\n * @title Pending Articles\n */\nclass PendingArticlesWidget extends ArticlesWidget\n{\n    public function __construct()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->title = $translator->trans('Pending Articles', array(), 'extensions');\n    }\n\n    public function beforeRender()\n    {\n        $this->items = Article::GetUnplacedArticles();\n    }\n}\n"
  },
  {
    "path": "newscoop/extensions/article-lists/RecentlyModifiedArticlesWidget.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/ArticlesWidget.php';\n\n/**\n * @title Recently Modified Articles\n */\nclass RecentlyModifiedArticlesWidget extends ArticlesWidget\n{\n    /** @setting */\n    protected $count = 20;\n\n    public function __construct()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->title = $translator->trans('Recently Modified Articles', array(), 'extensions');\n    }\n\n    public function beforeRender()\n    {\n        $this->items = Article::GetRecentlyModifiedArticles(self::LIMIT);\n    }\n}\n"
  },
  {
    "path": "newscoop/extensions/article-lists/RecentlyPublishedArticlesWidget.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/ArticlesWidget.php';\n\n/**\n * @title Recently Published Articles\n */\nclass RecentlyPublishedArticlesWidget extends ArticlesWidget\n{\n    /** @setting */\n    protected $count = 20;\n\n    public function __construct()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->title = $translator->trans('Recently Published Articles', array(), 'extensions');\n    }\n\n    public function beforeRender()\n    {\n        $articlesParams = array(new ComparisonOperation('published', new Operator('is'), 'true'));\n        $count = 0;\n\n        foreach((array) \\ArticleType::GetArticleTypes(true) as $one_art_type_name) {\n            $one_art_type = new \\ArticleType($one_art_type_name);\n            if ($one_art_type->getFilterStatus()) {\n                $articlesParams[] = new ComparisonOperation('type', new Operator('not', 'string'), $one_art_type->getTypeName());\n            }\n        }\n\n        $articlesOrders = array(\n                array(\n                    'field' => 'bypublishdate',\n                    'dir' => 'desc',\n                )\n        );\n\n        $this->items = Article::GetList($articlesParams, $articlesOrders, 0, self::LIMIT, $count);\n    }\n}\n"
  },
  {
    "path": "newscoop/extensions/article-lists/SubmittedArticlesWidget.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/ArticlesWidget.php';\n\n/**\n * @title Submitted Articles\n */\nclass SubmittedArticlesWidget extends ArticlesWidget\n{\n    public function __construct()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->title = $translator->trans('Submitted Articles', array(), 'extensions');\n    }\n\n    public function beforeRender()\n    {\n        $this->items = Article::GetSubmittedArticles();\n    }\n\n    public function render()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        if ($this->getUser()->hasPermission('ChangeArticle') || $this->getUser()->hasPermission('Publish')) {\n            parent::render();\n        } else {\n            echo '<p>', $translator->trans('Access Denied', array(), 'extensions'), '</p>';\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/extensions/article-lists/YourArticlesWidget.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/ArticlesWidget.php';\n\n/**\n * @title Your Articles\n */\nclass YourArticlesWidget extends ArticlesWidget\n{\n    public function __construct()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->title = $translator->trans('Your Articles', array(), 'extensions');\n    }\n\n    public function beforeRender()\n    {\n        $this->items = Article::GetArticlesByUser($this->getUser()->getId());\n    }\n}\n"
  },
  {
    "path": "newscoop/extensions/article-lists/article-lists.ini",
    "content": "author = \"Sourcefabric z.ú.\"\ndescription = \"Admin articles widgets.\"\nhomepage = \"http://www.sourcefabric.org\"\nversion = \"1.0\"\nlicense = \"GPLv3\"\n"
  },
  {
    "path": "newscoop/extensions/article-lists/diagrams.phtml",
    "content": "<?php\r\n$translator = \\Zend_Registry::get('container')->getService('translator');\r\n$view = $GLOBALS['controller']->view; ?>\r\n<script type=\"text/javascript\" src=\"<?php echo $view->baseUrl('/js/newscoop_rest_api.js'); ?>\"></script>\r\n<script type=\"text/javascript\" src=\"<?php echo $view->baseUrl('/js/raphael-min.js'); ?>\"></script>\r\n<script type=\"text/javascript\" src=\"<?php echo $view->baseUrl('/js/morris.min.js'); ?>\"></script>\r\n<script type=\"text/javascript\">\r\n  var api = new NewscoopRestApi(<?php echo json_encode($view->serverUrl($view->baseUrl('/'.$this->getSetting('api_prefix')))); ?>);\r\n\r\n  api.getResource('/articles', {'type': '<?php echo $this->getSetting('article_type') ?>'})\r\n    .setItemsPerPage(20)\r\n    .setOrder({'published': 'desc'})\r\n    .makeRequest(function(res){\r\n      var data = [];\r\n      var articles = [];\r\n      var maxReads = 1; // fix for division by 0\r\n\r\n      $('.diagrams .data').html('<ul></ul>');\r\n\r\n      for (var i = res.items.length - 1; i >= 0; i--) {\r\n        maxReads += parseInt(res.items[i].reads);\r\n      };\r\n\r\n      for (var i = res.items.length - 1; i >= 0; i--) {\r\n        articles.push(res.items[i]);\r\n      };\r\n      articles.sort(function(a, b) {return a['reads'] - b['reads']});\r\n\r\n      for (var i = articles.length - 1; i >= 0; i--) {\r\n        var reads = Math.round((parseInt(articles[i].reads)/maxReads)*100);\r\n        data.push({value: reads, label: articles[i].title});\r\n        $('.diagrams .data ul').append('<li class=\"singleArticle\">'+reads +'% - '+ articles[i].title+'</li>');\r\n      };\r\n\r\n      Morris.Donut({\r\n        element: 'article_reads_graph',\r\n        data: data,\r\n        formatter: function (x) { return x + \"%\"}\r\n      });\r\n    });\r\n</script>\r\n\r\n<div class=\"ui-widget-content\" style=\"padding-left: 8px; padding-top: 8px; border: none\">\r\n  <h3><?php echo $translator->trans('Latest 20 articles by popularity', array(), 'extensions'); ?></h3>\r\n  <div class=\"diagrams\">\r\n    <div id=\"article_reads_graph\" style=\"float:left; margin-right: 10px; width: 55%; height: 320px;\"></div>\r\n    <div class=\"data\" style=\"float:left; width: 43%; font-size: 13px;\"><?php echo $translator->trans('Loading...'); ?></div>\r\n  <div>\r\n</div> \r\n"
  },
  {
    "path": "newscoop/extensions/feed-reader/FeedReader.php",
    "content": "<?php\n/**\n * @multi\n */\nclass FeedReader extends FeedWidget\n{\n    /**\n     * @setting\n     * @label Title\n     */\n    protected $title = 'Feed reader';\n\n    /**\n     * @setting\n     * @label Feed url\n     */\n    protected $url = '';\n\n    /**\n     * @setting\n     * @label Number\n     */\n    protected $count = 5;\n\n    public function __construct()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->title = $translator->trans('Feed reader', array(), 'extensions');\n    }\n}\n"
  },
  {
    "path": "newscoop/extensions/feed-reader/feed-reader.ini",
    "content": "name = \"Feed reader\"\nversion = \"1.0\"\nauthor = \"Sourcefabric z.ú.\"\nhomepage = \"http://www.sourcefabric.org/\"\ndescription = \"Universal feed reader.\"\nlicense = \"GPLv3\"\n"
  },
  {
    "path": "newscoop/extensions/hello-world/HelloWorld.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\n/**\n * @title Hello World!\n * @author Sourcefabric z.ú.\n * @description Widget sample.\n * @homepage http://www.sourcefabric.org\n * @version 1.0\n * @license GPLv3\n */\nclass HelloWorld extends Widget\n{\n    public function __construct()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->title = $translator->trans('Hello World!', array(), 'extensions');\n    }\n\n    public function render()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        echo '<p>', $this->$translator->trans('Hello world!', array(), 'extensions'), '</p>';\n    }\n}\n"
  },
  {
    "path": "newscoop/extensions/media-archive/ImageListWidget.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once LIBS_DIR . '/ImageList/ImageList.php';\n\n/**\n * Image list widget\n * @title Images\n */\nclass ImageListWidget extends Widget\n{\n    public function __construct()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->title = $translator->trans('Images');\n    }\n\n    public function render()\n    {\n        $list = new ImageList;\n\n        $list->setHidden('Id');\n        if (!$this->isFullscreen()) {\n            $list->setHidden('TimeCreated');\n            $list->setHidden('LastModified');\n            $list->setHidden('InUse');\n        }\n\n        $list->render();\n    }\n}\n"
  },
  {
    "path": "newscoop/extensions/media-archive/MediaListWidget.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\nrequire_once LIBS_DIR . '/MediaList/MediaList.php';\n\n/**\n * Media list widget\n * @title Media files\n */\nclass MediaListWidget extends Widget\n{\n    public function __construct()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->title = $translator->trans('Files');\n    }\n\n    public function render()\n    {\n        $list = new MediaList;\n        $list->setHidden('id');\n        $list->setHidden('content_disposition');\n        $list->setHidden('InUse');\n        $list->render();\n    }\n}\n"
  },
  {
    "path": "newscoop/extensions/media-archive/media-archive.ini",
    "content": "author = \"Sourcefabric z.ú.\"\ndescription = \"Media archive widgets.\"\nhomepage = \"http://www.sourcefabric.org\"\nversion = \"1.0\"\nlicense = \"GPLv3\"\n"
  },
  {
    "path": "newscoop/extensions/sourcefabric/SourcefabricDevFeed.php",
    "content": "<?php\n/**\n * @title Sourcefabric.org dev feed reader\n */\nclass SourcefabricDevFeed extends FeedWidget\n{\n    protected $title = 'Sourcefabric.org blog reader';\n\n    protected $url = 'http://feeds.feedburner.com/sourcefabric';\n\n    /**\n     * @setting\n     * @label Number\n     */\n    protected $count = 5;\n\n    public function __construct()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->title = $translator->trans('Sourcefabric.org blog reader', array(), 'extensions');\n    }\n}\n"
  },
  {
    "path": "newscoop/extensions/sourcefabric/SourcefabricFeed.php",
    "content": "<?php\n/**\n * @title Sourcefabric.org feed reader\n */\nclass SourcefabricFeed extends FeedWidget\n{\n    protected $title = 'Sourcefabric.org News reader';\n\n    protected $url = 'http://feeds.feedburner.com/sourcefabric';\n\n    /**\n     * @setting\n     * @label Number\n     */\n    protected $count = 5;\n\n    public function __construct()\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->title = $translator->trans('Sourcefabric.org News reader', array(), 'extensions');\n    }\n}\n"
  },
  {
    "path": "newscoop/extensions/sourcefabric/SourcefabricNewsletter.php",
    "content": "<?php\n/**\n * @title Sourcefabric.org newsletter subscription\n */\nclass SourcefabricNewsletter extends Widget\n{\n    public function __construct()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->title = $translator->trans('Sourcefabric.org newsletter subscription', array(), 'extensions');\n    }\n\n    public function render()\n    {\n        include_once dirname(__FILE__) . '/newsletterbox.phtml';\n    }\n}\n"
  },
  {
    "path": "newscoop/extensions/sourcefabric/newsletterbox.phtml",
    "content": "<div id=\"mc_embed_signup\" class=\"ui-widget-content\" style=\"width: 360px; padding-left: 8px; padding-top: 8px; border: none\">\n\n<h3>Get Sourcefabric newsletter:</h3> \n \n<form action=\"http://sourcefabric.us2.list-manage.com/subscribe/post?u=6b1ad01fc31dc6604968e6439&amp;id=f5447a7ef4\" method=\"post\" id=\"mc-embedded-subscribe-form\" name=\"mc-embedded-subscribe-form\" class=\"validate\" target=\"_blank\"> \n\n<fieldset class=\"plain\">\n    <ul>\n        <li>\n            <label for=\"mce-EMAIL\">Your Email Address</label>\n            <input type=\"text\" value=\"\" name=\"EMAIL\" class=\"required email default-value\" id=\"mce-EMAIL\" /> \n        </li>\n        <li>\n            <label class=\"input-group-label\">Email Format</label>\n            <input type=\"radio\" value=\"html\" name=\"EMAILTYPE\" id=\"mce-EMAILTYPE-0\" class=\"input_radio\" /><label for=\"mce-EMAILTYPE-0\" class=\"inline-style left-floated\">html</label>\n            <input type=\"radio\" value=\"text\" name=\"EMAILTYPE\" id=\"mce-EMAILTYPE-1\" class=\"input_radio\" style=\"margin-left: 13px\" /><label for=\"mce-EMAILTYPE-1\" class=\"inline-style left-floated\">text</label>\n            <input type=\"radio\" value=\"mobile\" name=\"EMAILTYPE\" id=\"mce-EMAILTYPE-2\" class=\"input_radio\" style=\"margin-left: 13px\" /><label for=\"mce-EMAILTYPE-2\" class=\"inline-style left-floated\">mobile</label>\n        </li>\n        <li>\n            <label for=\"privacy-check\" id=\"privacy-check-label\">\n                <span class=\"input\"><input type=\"checkbox\" name=\"privacy\" id=\"privacy-check\"></span>\n                I agree to the <a href=\"http://www.sourcefabric.org/en/about/policy/\" target=\"_blank\">Privacy Policy</a> \n            </label> \n        </li>\n        <li>\n            <input type=\"submit\" value=\"Subscribe\" name=\"subscribe\" id=\"mc-embedded-subscribe\" class=\"mc_btn\" />\n        </li>\n    </ul>\n</fieldset>\n\n</form> \n\n</div>\n"
  },
  {
    "path": "newscoop/extensions/sourcefabric/sourcefabric.ini",
    "content": "name = \"Sourcefabric.org Widgets\"\nversion = \"1.0\"\nauthor = \"Sourcefabric z.ú.\"\nhomepage = \"http://www.sourcefabric.org/\"\ndescription = \"Latest news from sourcefabric.org\"\nlicense = \"GPLv3\"\n"
  },
  {
    "path": "newscoop/extensions/wikipedia/SearchWikipedia.php",
    "content": "<?php\n/**\n * @package Newscoop\n *\n * @author Petr Jasek <petr.jasek@sourcefabric.org>\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @link http://www.sourcefabric.org\n */\n\n/**\n * @author Sourcefabric z.ú.\n * @description Wikipedia search.\n * @homepage http://www.sourcefabric.org\n * @version 1.0\n * @license GPLv3\n */\nclass SearchWikipedia extends Widget\n{\n    protected $title;\n\n    public function __construct()\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->title = $translator->trans('Wikipedia Search', array(), 'extensions');\n    }\n\n    public function render()\n    {\n        include_once dirname(__FILE__) . '/search.phtml';\n    }\n}\n"
  },
  {
    "path": "newscoop/extensions/wikipedia/search.phtml",
    "content": "<?php $translator = \\Zend_Registry::get('container')->getService('translator'); ?>\n<form action=\"http://en.wikipedia.org/wiki/Special:Search\" method=\"GET\" target=\"_blank\">\n<fieldset class=\"wikipedia\">\n    <input type=\"text\" class=\"search\" name=\"search\" value=\"\" />\n    <input type=\"submit\" value=\"<?php echo $translator->trans('Go', array(), 'extensions'); ?>\" />\n</fieldset>\n</form>\n"
  },
  {
    "path": "newscoop/htaccess.dist",
    "content": "# There might be no access to apache config, set options here\nDirectoryIndex index.php index.html\nOptions -Indexes +FollowSymLinks -MultiViews\n\nAddType video/ogg .ogm\nAddType video/ogg .ogv\nAddType audio/ogg .ogg\nAddType video/mp4 .mp4\nAddType video/webm .webm\n\nAddType application/vnd.ms-fontobject    .eot\nAddType application/x-font-opentype      .otf\nAddType image/svg+xml                    .svg\nAddType application/x-font-ttf           .ttf\nAddType application/font-woff            .woff\n\n# Options might not allowed here, use Rewrite rules instead\n<IfModule mod_rewrite.c>\n    RewriteEngine On\n\n    RewriteCond %{REQUEST_URI} /+images/+cache/\n    RewriteCond %{REQUEST_FILENAME} !-f\n    RewriteRule . index.php [L]\n\n    RewriteRule ^bundles/(.*)$ public/bundles/$1\n\n    RewriteCond %{REQUEST_URI} !\\.php$\n    RewriteCond %{REQUEST_URI} !\\.html$\n    RewriteCond %{REQUEST_URI} !\\.css$\n    RewriteCond %{REQUEST_URI} !\\.woff$\n    RewriteCond %{REQUEST_URI} !\\.ttf$\n    RewriteCond %{REQUEST_URI} !\\.svg$\n    RewriteCond %{REQUEST_URI} !\\.otf$\n    RewriteCond %{REQUEST_URI} !\\.eot$\n    RewriteCond %{REQUEST_URI} !\\.js$\n    RewriteCond %{REQUEST_URI} !\\.ico$\n    RewriteCond %{REQUEST_URI} !/+admin/\n    RewriteCond %{REQUEST_URI} !/+install/\n    RewriteCond %{REQUEST_URI} !/+robots.txt$\n    RewriteCond %{REQUEST_URI} !/+crossdomain.xml$\n    RewriteCond %{REQUEST_URI} !/plugins/([^/]*)?/+js/\n    RewriteCond %{REQUEST_URI} !/plugins/([^/]*)?/+css/\n    RewriteCond %{REQUEST_URI} !/plugins/([^/]*)?/+images/\n    RewriteCond %{REQUEST_URI} !^/js/\n    RewriteCond %{REQUEST_URI} !/plugins/([^/]*)?/\\.php$\n    RewriteCond %{REQUEST_URI} !/+themes/\n    RewriteCond %{REQUEST_URI} !/public/+videos/\n    RewriteCond %{REQUEST_URI} !/public/+pdf/\n    RewriteCond %{REQUEST_URI} !^/images/\n    RewriteCond %{REQUEST_URI} !/+images/+cache/\n    RewriteCond %{REQUEST_FILENAME} !-f\n    RewriteRule . index.php [L]\n\n    RewriteCond %{REQUEST_URI} .tpl$\n    RewriteRule . index.php [L]\n\n    RewriteCond %{REQUEST_URI} /+admin$|/+admin/+.*|/+admin-files/\n    RewriteRule . admin.php [L]\n</IfModule>\n\n# Uncomment it for gui backup/restore process\n# NOTE: It can be incompatible on some shared hosting\n#php_value output_buffering Off\n\n# Uncomment for large file uploads with docker\n# containers (to install private plugins) for example\n#php_value upload_max_filesize 100M\n#php_value post_max_size 100M\n"
  },
  {
    "path": "newscoop/images/.gitignore",
    "content": "*\n\n!.gitignore\n!thumbnails/"
  },
  {
    "path": "newscoop/include/Archive/Tar.php",
    "content": "<?php\n/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */\n\n/**\n * File::CSV\n *\n * PHP versions 4 and 5\n *\n * Copyright (c) 1997-2008,\n * Vincent Blavet <vincent@phpconcept.net>\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions are met:\n *\n *     * Redistributions of source code must retain the above copyright notice,\n *       this list of conditions and the following disclaimer.\n *     * Redistributions in binary form must reproduce the above copyright\n *       notice, this list of conditions and the following disclaimer in the\n *       documentation and/or other materials provided with the distribution.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE\n * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\n * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\n * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\n * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,\n * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n *\n * @category    File_Formats\n * @package     Archive_Tar\n * @author      Vincent Blavet <vincent@phpconcept.net>\n * @copyright   1997-2008 The Authors\n * @license     http://www.opensource.org/licenses/bsd-license.php New BSD License\n * @version     CVS: $Id: Tar.php 295988 2010-03-09 08:39:37Z mrook $\n * @link        http://pear.php.net/package/Archive_Tar\n */\n\nrequire_once 'PEAR.php';\n\n\ndefine ('ARCHIVE_TAR_ATT_SEPARATOR', 90001);\ndefine ('ARCHIVE_TAR_END_BLOCK', pack(\"a512\", ''));\n\n/**\n* Creates a (compressed) Tar archive\n*\n* @author   Vincent Blavet <vincent@phpconcept.net>\n* @version  $Revision: 295988 $\n* @license  http://www.opensource.org/licenses/bsd-license.php New BSD License\n* @package  Archive_Tar\n*/\nclass Archive_Tar extends PEAR\n{\n    /**\n    * @var string Name of the Tar\n    */\n    var $_tarname='';\n\n    /**\n    * @var boolean if true, the Tar file will be gzipped\n    */\n    var $_compress=false;\n\n    /**\n    * @var string Type of compression : 'none', 'gz' or 'bz2'\n    */\n    var $_compress_type='none';\n\n    /**\n    * @var string Explode separator\n    */\n    var $_separator=' ';\n\n    /**\n    * @var file descriptor\n    */\n    var $_file=0;\n\n    /**\n    * @var string Local Tar name of a remote Tar (http:// or ftp://)\n    */\n    var $_temp_tarname='';\n\n    /**\n    * @var string regular expression for ignoring files or directories\n    */\n    var $_ignore_regexp='';\n\n    // {{{ constructor\n    /**\n    * Archive_Tar Class constructor. This flavour of the constructor only\n    * declare a new Archive_Tar object, identifying it by the name of the\n    * tar file.\n    * If the compress argument is set the tar will be read or created as a\n    * gzip or bz2 compressed TAR file.\n    *\n    * @param    string  $p_tarname  The name of the tar archive to create\n    * @param    string  $p_compress can be null, 'gz' or 'bz2'. This\n    *                   parameter indicates if gzip or bz2 compression\n    *                   is required.  For compatibility reason the\n    *                   boolean value 'true' means 'gz'.\n    * @access public\n    */\n    function Archive_Tar($p_tarname, $p_compress = null)\n    {\n        $this->PEAR();\n        $this->_compress = false;\n        $this->_compress_type = 'none';\n        if (($p_compress === null) || ($p_compress == '')) {\n            if (@file_exists($p_tarname)) {\n                if ($fp = @fopen($p_tarname, \"rb\")) {\n                    // look for gzip magic cookie\n                    $data = fread($fp, 2);\n                    fclose($fp);\n                    if ($data == \"\\37\\213\") {\n                        $this->_compress = true;\n                        $this->_compress_type = 'gz';\n                    // No sure it's enought for a magic code ....\n                    } elseif ($data == \"BZ\") {\n                        $this->_compress = true;\n                        $this->_compress_type = 'bz2';\n                    }\n                }\n            } else {\n                // probably a remote file or some file accessible\n                // through a stream interface\n                if (substr($p_tarname, -2) == 'gz') {\n                    $this->_compress = true;\n                    $this->_compress_type = 'gz';\n                } elseif ((substr($p_tarname, -3) == 'bz2') ||\n                          (substr($p_tarname, -2) == 'bz')) {\n                    $this->_compress = true;\n                    $this->_compress_type = 'bz2';\n                }\n            }\n        } else {\n            if (($p_compress === true) || ($p_compress == 'gz')) {\n                $this->_compress = true;\n                $this->_compress_type = 'gz';\n            } else if ($p_compress == 'bz2') {\n                $this->_compress = true;\n                $this->_compress_type = 'bz2';\n            } else {\n                $this->_error(\"Unsupported compression type '$p_compress'\\n\".\n                    \"Supported types are 'gz' and 'bz2'.\\n\");\n                return false;\n            }\n        }\n        $this->_tarname = $p_tarname;\n        if ($this->_compress) { // assert zlib or bz2 extension support\n            if ($this->_compress_type == 'gz')\n                $extname = 'zlib';\n            else if ($this->_compress_type == 'bz2')\n                $extname = 'bz2';\n\n            if (!extension_loaded($extname)) {\n                PEAR::loadExtension($extname);\n            }\n            if (!extension_loaded($extname)) {\n                $this->_error(\"The extension '$extname' couldn't be found.\\n\".\n                    \"Please make sure your version of PHP was built \".\n                    \"with '$extname' support.\\n\");\n                return false;\n            }\n        }\n    }\n    // }}}\n\n    // {{{ destructor\n    function _Archive_Tar()\n    {\n        $this->_close();\n        // ----- Look for a local copy to delete\n        if ($this->_temp_tarname != '')\n            @unlink($this->_temp_tarname);\n        $this->_PEAR();\n    }\n    // }}}\n\n    // {{{ create()\n    /**\n    * This method creates the archive file and add the files / directories\n    * that are listed in $p_filelist.\n    * If a file with the same name exist and is writable, it is replaced\n    * by the new tar.\n    * The method return false and a PEAR error text.\n    * The $p_filelist parameter can be an array of string, each string\n    * representing a filename or a directory name with their path if\n    * needed. It can also be a single string with names separated by a\n    * single blank.\n    * For each directory added in the archive, the files and\n    * sub-directories are also added.\n    * See also createModify() method for more details.\n    *\n    * @param array  $p_filelist An array of filenames and directory names, or a\n\t*                           single string with names separated by a single\n\t*                           blank space.\n    * @return                   true on success, false on error.\n    * @see createModify()\n    * @access public\n    */\n    function create($p_filelist)\n    {\n        return $this->createModify($p_filelist, '', '');\n    }\n    // }}}\n\n    // {{{ add()\n    /**\n    * This method add the files / directories that are listed in $p_filelist in\n    * the archive. If the archive does not exist it is created.\n    * The method return false and a PEAR error text.\n    * The files and directories listed are only added at the end of the archive,\n    * even if a file with the same name is already archived.\n    * See also createModify() method for more details.\n    *\n    * @param array  $p_filelist An array of filenames and directory names, or a\n\t*                           single string with names separated by a single\n\t*                           blank space.\n    * @return                   true on success, false on error.\n    * @see createModify()\n    * @access public\n    */\n    function add($p_filelist)\n    {\n        return $this->addModify($p_filelist, '', '');\n    }\n    // }}}\n\n    // {{{ extract()\n    function extract($p_path='')\n    {\n        return $this->extractModify($p_path, '');\n    }\n    // }}}\n\n    // {{{ listContent()\n    function listContent()\n    {\n        $v_list_detail = array();\n\n        if ($this->_openRead()) {\n            if (!$this->_extractList('', $v_list_detail, \"list\", '', '')) {\n                unset($v_list_detail);\n                $v_list_detail = 0;\n            }\n            $this->_close();\n        }\n\n        return $v_list_detail;\n    }\n    // }}}\n\n    // {{{ createModify()\n    /**\n    * This method creates the archive file and add the files / directories\n    * that are listed in $p_filelist.\n    * If the file already exists and is writable, it is replaced by the\n    * new tar. It is a create and not an add. If the file exists and is\n    * read-only or is a directory it is not replaced. The method return\n    * false and a PEAR error text.\n    * The $p_filelist parameter can be an array of string, each string\n    * representing a filename or a directory name with their path if\n    * needed. It can also be a single string with names separated by a\n    * single blank.\n    * The path indicated in $p_remove_dir will be removed from the\n    * memorized path of each file / directory listed when this path\n    * exists. By default nothing is removed (empty path '')\n    * The path indicated in $p_add_dir will be added at the beginning of\n    * the memorized path of each file / directory listed. However it can\n    * be set to empty ''. The adding of a path is done after the removing\n    * of path.\n    * The path add/remove ability enables the user to prepare an archive\n    * for extraction in a different path than the origin files are.\n    * See also addModify() method for file adding properties.\n    *\n    * @param array  $p_filelist     An array of filenames and directory names,\n\t*                               or a single string with names separated by\n\t*                               a single blank space.\n    * @param string $p_add_dir      A string which contains a path to be added\n\t*                               to the memorized path of each element in\n\t*                               the list.\n    * @param string $p_remove_dir   A string which contains a path to be\n\t*                               removed from the memorized path of each\n\t*                               element in the list, when relevant.\n    * @return boolean               true on success, false on error.\n    * @access public\n    * @see addModify()\n    */\n    function createModify($p_filelist, $p_add_dir, $p_remove_dir='')\n    {\n        $v_result = true;\n\n        if (!$this->_openWrite())\n            return false;\n\n        if ($p_filelist != '') {\n            if (is_array($p_filelist))\n                $v_list = $p_filelist;\n            elseif (is_string($p_filelist))\n                $v_list = explode($this->_separator, $p_filelist);\n            else {\n                $this->_cleanFile();\n                $this->_error('Invalid file list');\n                return false;\n            }\n\n            $v_result = $this->_addList($v_list, $p_add_dir, $p_remove_dir);\n        }\n\n        if ($v_result) {\n            $this->_writeFooter();\n            $this->_close();\n        } else\n            $this->_cleanFile();\n\n        return $v_result;\n    }\n    // }}}\n\n    // {{{ addModify()\n    /**\n    * This method add the files / directories listed in $p_filelist at the\n    * end of the existing archive. If the archive does not yet exists it\n    * is created.\n    * The $p_filelist parameter can be an array of string, each string\n    * representing a filename or a directory name with their path if\n    * needed. It can also be a single string with names separated by a\n    * single blank.\n    * The path indicated in $p_remove_dir will be removed from the\n    * memorized path of each file / directory listed when this path\n    * exists. By default nothing is removed (empty path '')\n    * The path indicated in $p_add_dir will be added at the beginning of\n    * the memorized path of each file / directory listed. However it can\n    * be set to empty ''. The adding of a path is done after the removing\n    * of path.\n    * The path add/remove ability enables the user to prepare an archive\n    * for extraction in a different path than the origin files are.\n    * If a file/dir is already in the archive it will only be added at the\n    * end of the archive. There is no update of the existing archived\n    * file/dir. However while extracting the archive, the last file will\n    * replace the first one. This results in a none optimization of the\n    * archive size.\n    * If a file/dir does not exist the file/dir is ignored. However an\n    * error text is send to PEAR error.\n    * If a file/dir is not readable the file/dir is ignored. However an\n    * error text is send to PEAR error.\n    *\n    * @param array      $p_filelist     An array of filenames and directory\n\t*                                   names, or a single string with names\n\t*                                   separated by a single blank space.\n    * @param string     $p_add_dir      A string which contains a path to be\n\t*                                   added to the memorized path of each\n\t*                                   element in the list.\n    * @param string     $p_remove_dir   A string which contains a path to be\n\t*                                   removed from the memorized path of\n\t*                                   each element in the list, when\n    *                                   relevant.\n    * @return                           true on success, false on error.\n    * @access public\n    */\n    function addModify($p_filelist, $p_add_dir, $p_remove_dir='')\n    {\n        $v_result = true;\n\n        if (!$this->_isArchive())\n            $v_result = $this->createModify($p_filelist, $p_add_dir,\n\t\t\t                                $p_remove_dir);\n        else {\n            if (is_array($p_filelist))\n                $v_list = $p_filelist;\n            elseif (is_string($p_filelist))\n                $v_list = explode($this->_separator, $p_filelist);\n            else {\n                $this->_error('Invalid file list');\n                return false;\n            }\n\n            $v_result = $this->_append($v_list, $p_add_dir, $p_remove_dir);\n        }\n\n        return $v_result;\n    }\n    // }}}\n\n    // {{{ addString()\n    /**\n    * This method add a single string as a file at the\n    * end of the existing archive. If the archive does not yet exists it\n    * is created.\n    *\n    * @param string     $p_filename     A string which contains the full\n\t*                                   filename path that will be associated\n\t*                                   with the string.\n    * @param string     $p_string       The content of the file added in\n\t*                                   the archive.\n    * @return                           true on success, false on error.\n    * @access public\n    */\n    function addString($p_filename, $p_string)\n    {\n        $v_result = true;\n\n        if (!$this->_isArchive()) {\n            if (!$this->_openWrite()) {\n                return false;\n            }\n            $this->_close();\n        }\n\n        if (!$this->_openAppend())\n            return false;\n\n        // Need to check the get back to the temporary file ? ....\n        $v_result = $this->_addString($p_filename, $p_string);\n\n        $this->_writeFooter();\n\n        $this->_close();\n\n        return $v_result;\n    }\n    // }}}\n\n    // {{{ extractModify()\n    /**\n    * This method extract all the content of the archive in the directory\n    * indicated by $p_path. When relevant the memorized path of the\n    * files/dir can be modified by removing the $p_remove_path path at the\n    * beginning of the file/dir path.\n    * While extracting a file, if the directory path does not exists it is\n    * created.\n    * While extracting a file, if the file already exists it is replaced\n    * without looking for last modification date.\n    * While extracting a file, if the file already exists and is write\n    * protected, the extraction is aborted.\n    * While extracting a file, if a directory with the same name already\n    * exists, the extraction is aborted.\n    * While extracting a directory, if a file with the same name already\n    * exists, the extraction is aborted.\n    * While extracting a file/directory if the destination directory exist\n    * and is write protected, or does not exist but can not be created,\n    * the extraction is aborted.\n    * If after extraction an extracted file does not show the correct\n    * stored file size, the extraction is aborted.\n    * When the extraction is aborted, a PEAR error text is set and false\n    * is returned. However the result can be a partial extraction that may\n    * need to be manually cleaned.\n    *\n    * @param string $p_path         The path of the directory where the\n\t*                               files/dir need to by extracted.\n    * @param string $p_remove_path  Part of the memorized path that can be\n\t*                               removed if present at the beginning of\n\t*                               the file/dir path.\n    * @return boolean               true on success, false on error.\n    * @access public\n    * @see extractList()\n    */\n    function extractModify($p_path, $p_remove_path)\n    {\n        $v_result = true;\n        $v_list_detail = array();\n\n        if ($v_result = $this->_openRead()) {\n            $v_result = $this->_extractList($p_path, $v_list_detail,\n\t\t\t                                \"complete\", 0, $p_remove_path);\n            $this->_close();\n        }\n\n        return $v_result;\n    }\n    // }}}\n\n    // {{{ extractInString()\n    /**\n    * This method extract from the archive one file identified by $p_filename.\n    * The return value is a string with the file content, or NULL on error.\n    * @param string $p_filename     The path of the file to extract in a string.\n    * @return                       a string with the file content or NULL.\n    * @access public\n    */\n    function extractInString($p_filename)\n    {\n        if ($this->_openRead()) {\n            $v_result = $this->_extractInString($p_filename);\n            $this->_close();\n        } else {\n            $v_result = NULL;\n        }\n\n        return $v_result;\n    }\n    // }}}\n\n    // {{{ extractList()\n    /**\n    * This method extract from the archive only the files indicated in the\n    * $p_filelist. These files are extracted in the current directory or\n    * in the directory indicated by the optional $p_path parameter.\n    * If indicated the $p_remove_path can be used in the same way as it is\n    * used in extractModify() method.\n    * @param array  $p_filelist     An array of filenames and directory names,\n\t*                               or a single string with names separated\n\t*                               by a single blank space.\n    * @param string $p_path         The path of the directory where the\n\t*                               files/dir need to by extracted.\n    * @param string $p_remove_path  Part of the memorized path that can be\n\t*                               removed if present at the beginning of\n\t*                               the file/dir path.\n    * @return                       true on success, false on error.\n    * @access public\n    * @see extractModify()\n    */\n    function extractList($p_filelist, $p_path='', $p_remove_path='')\n    {\n        $v_result = true;\n        $v_list_detail = array();\n\n        if (is_array($p_filelist))\n            $v_list = $p_filelist;\n        elseif (is_string($p_filelist))\n            $v_list = explode($this->_separator, $p_filelist);\n        else {\n            $this->_error('Invalid string list');\n            return false;\n        }\n\n        if ($v_result = $this->_openRead()) {\n            $v_result = $this->_extractList($p_path, $v_list_detail, \"partial\",\n\t\t\t                                $v_list, $p_remove_path);\n            $this->_close();\n        }\n\n        return $v_result;\n    }\n    // }}}\n\n    // {{{ setAttribute()\n    /**\n    * This method set specific attributes of the archive. It uses a variable\n    * list of parameters, in the format attribute code + attribute values :\n    * $arch->setAttribute(ARCHIVE_TAR_ATT_SEPARATOR, ',');\n    * @param mixed $argv            variable list of attributes and values\n    * @return                       true on success, false on error.\n    * @access public\n    */\n    function setAttribute()\n    {\n        $v_result = true;\n\n        // ----- Get the number of variable list of arguments\n        if (($v_size = func_num_args()) == 0) {\n            return true;\n        }\n\n        // ----- Get the arguments\n        $v_att_list = &func_get_args();\n\n        // ----- Read the attributes\n        $i=0;\n        while ($i<$v_size) {\n\n            // ----- Look for next option\n            switch ($v_att_list[$i]) {\n                // ----- Look for options that request a string value\n                case ARCHIVE_TAR_ATT_SEPARATOR :\n                    // ----- Check the number of parameters\n                    if (($i+1) >= $v_size) {\n                        $this->_error('Invalid number of parameters for '\n\t\t\t\t\t\t              .'attribute ARCHIVE_TAR_ATT_SEPARATOR');\n                        return false;\n                    }\n\n                    // ----- Get the value\n                    $this->_separator = $v_att_list[$i+1];\n                    $i++;\n                break;\n\n                default :\n                    $this->_error('Unknow attribute code '.$v_att_list[$i].'');\n                    return false;\n            }\n\n            // ----- Next attribute\n            $i++;\n        }\n\n        return $v_result;\n    }\n    // }}}\n\n    // {{{ setIgnoreRegexp()\n    /**\n    * This method sets the regular expression for ignoring files and directories\n    * at import, for example:\n    * $arch->setIgnoreRegexp(\"#CVS|\\.svn#\");\n    * @param string $regexp         regular expression defining which files or directories to ignore\n    * @access public\n    */\n    function setIgnoreRegexp($regexp)\n    {\n    \t$this->_ignore_regexp = $regexp;\n    }\n    // }}}\n\n    // {{{ setIgnoreList()\n    /**\n    * This method sets the regular expression for ignoring all files and directories\n    * matching the filenames in the array list at import, for example:\n    * $arch->setIgnoreList(array('CVS', '.svn', 'bin/tool'));\n    * @param array $list         a list of file or directory names to ignore\n    * @access public\n    */\n    function setIgnoreList($list)\n    {\n    \t$regexp = str_replace(array('#', '.', '^', '$'), array('\\#', '\\.', '\\^', '\\$'), $list);\n    \t$regexp = '#/'.join('$|/', $list).'#';\n    \t$this->setIgnoreRegexp($regexp);\n    }\n    // }}}\n\n    // {{{ _error()\n    function _error($p_message)\n    {\n        // ----- To be completed\n        $this->raiseError($p_message);\n    }\n    // }}}\n\n    // {{{ _warning()\n    function _warning($p_message)\n    {\n        // ----- To be completed\n        $this->raiseError($p_message);\n    }\n    // }}}\n\n    // {{{ _isArchive()\n    function _isArchive($p_filename=NULL)\n    {\n        if ($p_filename == NULL) {\n            $p_filename = $this->_tarname;\n        }\n        clearstatcache();\n        return @is_file($p_filename) && !@is_link($p_filename);\n    }\n    // }}}\n\n    // {{{ _openWrite()\n    function _openWrite()\n    {\n        if ($this->_compress_type == 'gz')\n            $this->_file = @gzopen($this->_tarname, \"wb9\");\n        else if ($this->_compress_type == 'bz2')\n            $this->_file = @bzopen($this->_tarname, \"w\");\n        else if ($this->_compress_type == 'none')\n            $this->_file = @fopen($this->_tarname, \"wb\");\n        else\n            $this->_error('Unknown or missing compression type ('\n\t\t\t              .$this->_compress_type.')');\n\n        if ($this->_file == 0) {\n            $this->_error('Unable to open in write mode \\''\n\t\t\t              .$this->_tarname.'\\'');\n            return false;\n        }\n\n        return true;\n    }\n    // }}}\n\n    // {{{ _openRead()\n    function _openRead()\n    {\n        if (strtolower(substr($this->_tarname, 0, 7)) == 'http://') {\n\n          // ----- Look if a local copy need to be done\n          if ($this->_temp_tarname == '') {\n              $this->_temp_tarname = uniqid('tar').'.tmp';\n              if (!$v_file_from = @fopen($this->_tarname, 'rb')) {\n                $this->_error('Unable to open in read mode \\''\n\t\t\t\t              .$this->_tarname.'\\'');\n                $this->_temp_tarname = '';\n                return false;\n              }\n              if (!$v_file_to = @fopen($this->_temp_tarname, 'wb')) {\n                $this->_error('Unable to open in write mode \\''\n\t\t\t\t              .$this->_temp_tarname.'\\'');\n                $this->_temp_tarname = '';\n                return false;\n              }\n              while ($v_data = @fread($v_file_from, 1024))\n                  @fwrite($v_file_to, $v_data);\n              @fclose($v_file_from);\n              @fclose($v_file_to);\n          }\n\n          // ----- File to open if the local copy\n          $v_filename = $this->_temp_tarname;\n\n        } else\n          // ----- File to open if the normal Tar file\n          $v_filename = $this->_tarname;\n\n        if ($this->_compress_type == 'gz')\n            $this->_file = @gzopen($v_filename, \"rb\");\n        else if ($this->_compress_type == 'bz2')\n            $this->_file = @bzopen($v_filename, \"r\");\n        else if ($this->_compress_type == 'none')\n            $this->_file = @fopen($v_filename, \"rb\");\n        else\n            $this->_error('Unknown or missing compression type ('\n\t\t\t              .$this->_compress_type.')');\n\n        if ($this->_file == 0) {\n            $this->_error('Unable to open in read mode \\''.$v_filename.'\\'');\n            return false;\n        }\n\n        return true;\n    }\n    // }}}\n\n    // {{{ _openReadWrite()\n    function _openReadWrite()\n    {\n        if ($this->_compress_type == 'gz')\n            $this->_file = @gzopen($this->_tarname, \"r+b\");\n        else if ($this->_compress_type == 'bz2') {\n            $this->_error('Unable to open bz2 in read/write mode \\''\n\t\t\t              .$this->_tarname.'\\' (limitation of bz2 extension)');\n            return false;\n        } else if ($this->_compress_type == 'none')\n            $this->_file = @fopen($this->_tarname, \"r+b\");\n        else\n            $this->_error('Unknown or missing compression type ('\n\t\t\t              .$this->_compress_type.')');\n\n        if ($this->_file == 0) {\n            $this->_error('Unable to open in read/write mode \\''\n\t\t\t              .$this->_tarname.'\\'');\n            return false;\n        }\n\n        return true;\n    }\n    // }}}\n\n    // {{{ _close()\n    function _close()\n    {\n        //if (isset($this->_file)) {\n        if (is_resource($this->_file)) {\n            if ($this->_compress_type == 'gz')\n                @gzclose($this->_file);\n            else if ($this->_compress_type == 'bz2')\n                @bzclose($this->_file);\n            else if ($this->_compress_type == 'none')\n                @fclose($this->_file);\n            else\n                $this->_error('Unknown or missing compression type ('\n\t\t\t\t              .$this->_compress_type.')');\n\n            $this->_file = 0;\n        }\n\n        // ----- Look if a local copy need to be erase\n        // Note that it might be interesting to keep the url for a time : ToDo\n        if ($this->_temp_tarname != '') {\n            @unlink($this->_temp_tarname);\n            $this->_temp_tarname = '';\n        }\n\n        return true;\n    }\n    // }}}\n\n    // {{{ _cleanFile()\n    function _cleanFile()\n    {\n        $this->_close();\n\n        // ----- Look for a local copy\n        if ($this->_temp_tarname != '') {\n            // ----- Remove the local copy but not the remote tarname\n            @unlink($this->_temp_tarname);\n            $this->_temp_tarname = '';\n        } else {\n            // ----- Remove the local tarname file\n            @unlink($this->_tarname);\n        }\n        $this->_tarname = '';\n\n        return true;\n    }\n    // }}}\n\n    // {{{ _writeBlock()\n    function _writeBlock($p_binary_data, $p_len=null)\n    {\n      if (is_resource($this->_file)) {\n          if ($p_len === null) {\n              if ($this->_compress_type == 'gz')\n                  @gzputs($this->_file, $p_binary_data);\n              else if ($this->_compress_type == 'bz2')\n                  @bzwrite($this->_file, $p_binary_data);\n              else if ($this->_compress_type == 'none')\n                  @fputs($this->_file, $p_binary_data);\n              else\n                  $this->_error('Unknown or missing compression type ('\n\t\t\t\t                .$this->_compress_type.')');\n          } else {\n              if ($this->_compress_type == 'gz')\n                  @gzputs($this->_file, $p_binary_data, $p_len);\n              else if ($this->_compress_type == 'bz2')\n                  @bzwrite($this->_file, $p_binary_data, $p_len);\n              else if ($this->_compress_type == 'none')\n                  @fputs($this->_file, $p_binary_data, $p_len);\n              else\n                  $this->_error('Unknown or missing compression type ('\n\t\t\t\t                .$this->_compress_type.')');\n\n          }\n      }\n      return true;\n    }\n    // }}}\n\n    // {{{ _readBlock()\n    function _readBlock()\n    {\n      $v_block = null;\n      if (is_resource($this->_file)) {\n          if ($this->_compress_type == 'gz')\n              $v_block = @gzread($this->_file, 512);\n          else if ($this->_compress_type == 'bz2')\n              $v_block = @bzread($this->_file, 512);\n          else if ($this->_compress_type == 'none')\n              $v_block = @fread($this->_file, 512);\n          else\n              $this->_error('Unknown or missing compression type ('\n\t\t\t                .$this->_compress_type.')');\n      }\n      return $v_block;\n    }\n    // }}}\n\n    // {{{ _jumpBlock()\n    function _jumpBlock($p_len=null)\n    {\n      if (is_resource($this->_file)) {\n          if ($p_len === null)\n              $p_len = 1;\n\n          if ($this->_compress_type == 'gz') {\n              @gzseek($this->_file, gztell($this->_file)+($p_len*512));\n          }\n          else if ($this->_compress_type == 'bz2') {\n              // ----- Replace missing bztell() and bzseek()\n              for ($i=0; $i<$p_len; $i++)\n                  $this->_readBlock();\n          } else if ($this->_compress_type == 'none')\n              @fseek($this->_file, $p_len*512, SEEK_CUR);\n          else\n              $this->_error('Unknown or missing compression type ('\n\t\t\t                .$this->_compress_type.')');\n\n      }\n      return true;\n    }\n    // }}}\n\n    // {{{ _writeFooter()\n    function _writeFooter()\n    {\n      if (is_resource($this->_file)) {\n          // ----- Write the last 0 filled block for end of archive\n          $v_binary_data = pack('a1024', '');\n          $this->_writeBlock($v_binary_data);\n      }\n      return true;\n    }\n    // }}}\n\n    // {{{ _addList()\n    function _addList($p_list, $p_add_dir, $p_remove_dir)\n    {\n      $v_result=true;\n      $v_header = array();\n\n      // ----- Remove potential windows directory separator\n      $p_add_dir = $this->_translateWinPath($p_add_dir);\n      $p_remove_dir = $this->_translateWinPath($p_remove_dir, false);\n\n      if (!$this->_file) {\n          $this->_error('Invalid file descriptor');\n          return false;\n      }\n\n      if (sizeof($p_list) == 0)\n          return true;\n\n      foreach ($p_list as $v_filename) {\n          if (!$v_result) {\n              break;\n          }\n\n        // ----- Skip the current tar name\n        if ($v_filename == $this->_tarname)\n            continue;\n\n        if ($v_filename == '')\n            continue;\n\n       \t// ----- ignore files and directories matching the ignore regular expression\n       \tif ($this->_ignore_regexp && preg_match($this->_ignore_regexp, '/'.$v_filename)) {\n            $this->_warning(\"File '$v_filename' ignored\");\n       \t    continue;\n       \t}\n\n        if (!file_exists($v_filename)) {\n            $this->_warning(\"File '$v_filename' does not exist\");\n            continue;\n        }\n\n        // ----- Add the file or directory header\n        if (!$this->_addFile($v_filename, $v_header, $p_add_dir, $p_remove_dir))\n            return false;\n\n        if (@is_dir($v_filename) && !@is_link($v_filename)) {\n            if (!($p_hdir = opendir($v_filename))) {\n                $this->_warning(\"Directory '$v_filename' can not be read\");\n                continue;\n            }\n            while (false !== ($p_hitem = readdir($p_hdir))) {\n                if (($p_hitem != '.') && ($p_hitem != '..')) {\n                    if ($v_filename != \".\")\n                        $p_temp_list[0] = $v_filename.'/'.$p_hitem;\n                    else\n                        $p_temp_list[0] = $p_hitem;\n\n                    $v_result = $this->_addList($p_temp_list,\n\t\t\t\t\t                            $p_add_dir,\n\t\t\t\t\t\t\t\t\t\t\t\t$p_remove_dir);\n                }\n            }\n\n            unset($p_temp_list);\n            unset($p_hdir);\n            unset($p_hitem);\n        }\n      }\n\n      return $v_result;\n    }\n    // }}}\n\n    // {{{ _addFile()\n    function _addFile($p_filename, &$p_header, $p_add_dir, $p_remove_dir)\n    {\n      if (!$this->_file) {\n          $this->_error('Invalid file descriptor');\n          return false;\n      }\n\n      if ($p_filename == '') {\n          $this->_error('Invalid file name');\n          return false;\n      }\n\n      // ----- Calculate the stored filename\n      $p_filename = $this->_translateWinPath($p_filename, false);;\n      $v_stored_filename = $p_filename;\n      if (strcmp($p_filename, $p_remove_dir) == 0) {\n          return true;\n      }\n      if ($p_remove_dir != '') {\n          if (substr($p_remove_dir, -1) != '/')\n              $p_remove_dir .= '/';\n\n          if (substr($p_filename, 0, strlen($p_remove_dir)) == $p_remove_dir)\n              $v_stored_filename = substr($p_filename, strlen($p_remove_dir));\n      }\n      $v_stored_filename = $this->_translateWinPath($v_stored_filename);\n      if ($p_add_dir != '') {\n          if (substr($p_add_dir, -1) == '/')\n              $v_stored_filename = $p_add_dir.$v_stored_filename;\n          else\n              $v_stored_filename = $p_add_dir.'/'.$v_stored_filename;\n      }\n\n      $v_stored_filename = $this->_pathReduction($v_stored_filename);\n\n      if ($this->_isArchive($p_filename)) {\n          if (($v_file = @fopen($p_filename, \"rb\")) == 0) {\n              $this->_warning(\"Unable to open file '\".$p_filename\n\t\t\t                  .\"' in binary read mode\");\n              return true;\n          }\n\n          if (!$this->_writeHeader($p_filename, $v_stored_filename))\n              return false;\n\n          while (($v_buffer = fread($v_file, 512)) != '') {\n              $v_binary_data = pack(\"a512\", \"$v_buffer\");\n              $this->_writeBlock($v_binary_data);\n          }\n\n          fclose($v_file);\n\n      } else {\n          // ----- Only header for dir\n          if (!$this->_writeHeader($p_filename, $v_stored_filename))\n              return false;\n      }\n\n      return true;\n    }\n    // }}}\n\n    // {{{ _addString()\n    function _addString($p_filename, $p_string)\n    {\n      if (!$this->_file) {\n          $this->_error('Invalid file descriptor');\n          return false;\n      }\n\n      if ($p_filename == '') {\n          $this->_error('Invalid file name');\n          return false;\n      }\n\n      // ----- Calculate the stored filename\n      $p_filename = $this->_translateWinPath($p_filename, false);;\n\n      if (!$this->_writeHeaderBlock($p_filename, strlen($p_string),\n\t                                  time(), 384, \"\", 0, 0))\n          return false;\n\n      $i=0;\n      while (($v_buffer = substr($p_string, (($i++)*512), 512)) != '') {\n          $v_binary_data = pack(\"a512\", $v_buffer);\n          $this->_writeBlock($v_binary_data);\n      }\n\n      return true;\n    }\n    // }}}\n\n    // {{{ _writeHeader()\n    function _writeHeader($p_filename, $p_stored_filename)\n    {\n        if ($p_stored_filename == '')\n            $p_stored_filename = $p_filename;\n        $v_reduce_filename = $this->_pathReduction($p_stored_filename);\n\n        if (strlen($v_reduce_filename) > 99) {\n          if (!$this->_writeLongHeader($v_reduce_filename))\n            return false;\n        }\n\n        $v_info = lstat($p_filename);\n        $v_uid = sprintf(\"%07s\", DecOct($v_info[4]));\n        $v_gid = sprintf(\"%07s\", DecOct($v_info[5]));\n        $v_perms = sprintf(\"%07s\", DecOct($v_info['mode'] & 000777));\n\n        $v_mtime = sprintf(\"%011s\", DecOct($v_info['mtime']));\n\n        $v_linkname = '';\n\n        if (@is_link($p_filename)) {\n          $v_typeflag = '2';\n          $v_linkname = readlink($p_filename);\n          $v_size = sprintf(\"%011s\", DecOct(0));\n        } elseif (@is_dir($p_filename)) {\n          $v_typeflag = \"5\";\n          $v_size = sprintf(\"%011s\", DecOct(0));\n        } else {\n          $v_typeflag = '0';\n          clearstatcache();\n          $v_size = sprintf(\"%011s\", DecOct($v_info['size']));\n        }\n\n        $v_magic = 'ustar ';\n\n        $v_version = ' ';\n        \n        if (function_exists('posix_getpwuid'))\n        {\n          $userinfo = posix_getpwuid($v_info[4]);\n          $groupinfo = posix_getgrgid($v_info[5]);\n          \n          $v_uname = $userinfo['name'];\n          $v_gname = $groupinfo['name'];\n        }\n        else\n        {\n          $v_uname = '';\n          $v_gname = '';\n        }\n\n        $v_devmajor = '';\n\n        $v_devminor = '';\n\n        $v_prefix = '';\n\n        $v_binary_data_first = pack(\"a100a8a8a8a12a12\",\n\t\t                            $v_reduce_filename, $v_perms, $v_uid,\n\t\t\t\t\t\t\t\t\t$v_gid, $v_size, $v_mtime);\n        $v_binary_data_last = pack(\"a1a100a6a2a32a32a8a8a155a12\",\n\t\t                           $v_typeflag, $v_linkname, $v_magic,\n\t\t\t\t\t\t\t\t   $v_version, $v_uname, $v_gname,\n\t\t\t\t\t\t\t\t   $v_devmajor, $v_devminor, $v_prefix, '');\n\n        // ----- Calculate the checksum\n        $v_checksum = 0;\n        // ..... First part of the header\n        for ($i=0; $i<148; $i++)\n            $v_checksum += ord(substr($v_binary_data_first,$i,1));\n        // ..... Ignore the checksum value and replace it by ' ' (space)\n        for ($i=148; $i<156; $i++)\n            $v_checksum += ord(' ');\n        // ..... Last part of the header\n        for ($i=156, $j=0; $i<512; $i++, $j++)\n            $v_checksum += ord(substr($v_binary_data_last,$j,1));\n\n        // ----- Write the first 148 bytes of the header in the archive\n        $this->_writeBlock($v_binary_data_first, 148);\n\n        // ----- Write the calculated checksum\n        $v_checksum = sprintf(\"%06s \", DecOct($v_checksum));\n        $v_binary_data = pack(\"a8\", $v_checksum);\n        $this->_writeBlock($v_binary_data, 8);\n\n        // ----- Write the last 356 bytes of the header in the archive\n        $this->_writeBlock($v_binary_data_last, 356);\n\n        return true;\n    }\n    // }}}\n\n    // {{{ _writeHeaderBlock()\n    function _writeHeaderBlock($p_filename, $p_size, $p_mtime=0, $p_perms=0,\n\t                           $p_type='', $p_uid=0, $p_gid=0)\n    {\n        $p_filename = $this->_pathReduction($p_filename);\n\n        if (strlen($p_filename) > 99) {\n          if (!$this->_writeLongHeader($p_filename))\n            return false;\n        }\n\n        if ($p_type == \"5\") {\n          $v_size = sprintf(\"%011s\", DecOct(0));\n        } else {\n          $v_size = sprintf(\"%011s\", DecOct($p_size));\n        }\n\n        $v_uid = sprintf(\"%07s\", DecOct($p_uid));\n        $v_gid = sprintf(\"%07s\", DecOct($p_gid));\n        $v_perms = sprintf(\"%07s\", DecOct($p_perms & 000777));\n\n        $v_mtime = sprintf(\"%11s\", DecOct($p_mtime));\n\n        $v_linkname = '';\n\n        $v_magic = 'ustar ';\n\n        $v_version = ' ';\n\n        if (function_exists('posix_getpwuid'))\n        {\n          $userinfo = posix_getpwuid($p_uid);\n          $groupinfo = posix_getgrgid($p_gid);\n          \n          $v_uname = $userinfo['name'];\n          $v_gname = $groupinfo['name'];\n        }\n        else\n        {\n          $v_uname = '';\n          $v_gname = '';\n        }\n        \n        $v_devmajor = '';\n\n        $v_devminor = '';\n\n        $v_prefix = '';\n\n        $v_binary_data_first = pack(\"a100a8a8a8a12A12\",\n\t\t                            $p_filename, $v_perms, $v_uid, $v_gid,\n\t\t\t\t\t\t\t\t\t$v_size, $v_mtime);\n        $v_binary_data_last = pack(\"a1a100a6a2a32a32a8a8a155a12\",\n\t\t                           $p_type, $v_linkname, $v_magic,\n\t\t\t\t\t\t\t\t   $v_version, $v_uname, $v_gname,\n\t\t\t\t\t\t\t\t   $v_devmajor, $v_devminor, $v_prefix, '');\n\n        // ----- Calculate the checksum\n        $v_checksum = 0;\n        // ..... First part of the header\n        for ($i=0; $i<148; $i++)\n            $v_checksum += ord(substr($v_binary_data_first,$i,1));\n        // ..... Ignore the checksum value and replace it by ' ' (space)\n        for ($i=148; $i<156; $i++)\n            $v_checksum += ord(' ');\n        // ..... Last part of the header\n        for ($i=156, $j=0; $i<512; $i++, $j++)\n            $v_checksum += ord(substr($v_binary_data_last,$j,1));\n\n        // ----- Write the first 148 bytes of the header in the archive\n        $this->_writeBlock($v_binary_data_first, 148);\n\n        // ----- Write the calculated checksum\n        $v_checksum = sprintf(\"%06s \", DecOct($v_checksum));\n        $v_binary_data = pack(\"a8\", $v_checksum);\n        $this->_writeBlock($v_binary_data, 8);\n\n        // ----- Write the last 356 bytes of the header in the archive\n        $this->_writeBlock($v_binary_data_last, 356);\n\n        return true;\n    }\n    // }}}\n\n    // {{{ _writeLongHeader()\n    function _writeLongHeader($p_filename)\n    {\n        $v_size = sprintf(\"%11s \", DecOct(strlen($p_filename)));\n\n        $v_typeflag = 'L';\n\n        $v_linkname = '';\n\n        $v_magic = '';\n\n        $v_version = '';\n\n        $v_uname = '';\n\n        $v_gname = '';\n\n        $v_devmajor = '';\n\n        $v_devminor = '';\n\n        $v_prefix = '';\n\n        $v_binary_data_first = pack(\"a100a8a8a8a12a12\",\n\t\t                            '././@LongLink', 0, 0, 0, $v_size, 0);\n        $v_binary_data_last = pack(\"a1a100a6a2a32a32a8a8a155a12\",\n\t\t                           $v_typeflag, $v_linkname, $v_magic,\n\t\t\t\t\t\t\t\t   $v_version, $v_uname, $v_gname,\n\t\t\t\t\t\t\t\t   $v_devmajor, $v_devminor, $v_prefix, '');\n\n        // ----- Calculate the checksum\n        $v_checksum = 0;\n        // ..... First part of the header\n        for ($i=0; $i<148; $i++)\n            $v_checksum += ord(substr($v_binary_data_first,$i,1));\n        // ..... Ignore the checksum value and replace it by ' ' (space)\n        for ($i=148; $i<156; $i++)\n            $v_checksum += ord(' ');\n        // ..... Last part of the header\n        for ($i=156, $j=0; $i<512; $i++, $j++)\n            $v_checksum += ord(substr($v_binary_data_last,$j,1));\n\n        // ----- Write the first 148 bytes of the header in the archive\n        $this->_writeBlock($v_binary_data_first, 148);\n\n        // ----- Write the calculated checksum\n        $v_checksum = sprintf(\"%06s \", DecOct($v_checksum));\n        $v_binary_data = pack(\"a8\", $v_checksum);\n        $this->_writeBlock($v_binary_data, 8);\n\n        // ----- Write the last 356 bytes of the header in the archive\n        $this->_writeBlock($v_binary_data_last, 356);\n\n        // ----- Write the filename as content of the block\n        $i=0;\n        while (($v_buffer = substr($p_filename, (($i++)*512), 512)) != '') {\n            $v_binary_data = pack(\"a512\", \"$v_buffer\");\n            $this->_writeBlock($v_binary_data);\n        }\n\n        return true;\n    }\n    // }}}\n\n    // {{{ _readHeader()\n    function _readHeader($v_binary_data, &$v_header)\n    {\n        if (strlen($v_binary_data)==0) {\n            $v_header['filename'] = '';\n            return true;\n        }\n\n        if (strlen($v_binary_data) != 512) {\n            $v_header['filename'] = '';\n            $this->_error('Invalid block size : '.strlen($v_binary_data));\n            return false;\n        }\n\n        if (!is_array($v_header)) {\n            $v_header = array();\n        }\n        // ----- Calculate the checksum\n        $v_checksum = 0;\n        // ..... First part of the header\n        for ($i=0; $i<148; $i++)\n            $v_checksum+=ord(substr($v_binary_data,$i,1));\n        // ..... Ignore the checksum value and replace it by ' ' (space)\n        for ($i=148; $i<156; $i++)\n            $v_checksum += ord(' ');\n        // ..... Last part of the header\n        for ($i=156; $i<512; $i++)\n           $v_checksum+=ord(substr($v_binary_data,$i,1));\n\n        $v_data = unpack(\"a100filename/a8mode/a8uid/a8gid/a12size/a12mtime/\"\n\t\t                 .\"a8checksum/a1typeflag/a100link/a6magic/a2version/\"\n\t\t\t\t\t\t .\"a32uname/a32gname/a8devmajor/a8devminor\",\n\t\t\t\t\t\t $v_binary_data);\n\n        // ----- Extract the checksum\n        $v_header['checksum'] = OctDec(trim($v_data['checksum']));\n        if ($v_header['checksum'] != $v_checksum) {\n            $v_header['filename'] = '';\n\n            // ----- Look for last block (empty block)\n            if (($v_checksum == 256) && ($v_header['checksum'] == 0))\n                return true;\n\n            $this->_error('Invalid checksum for file \"'.$v_data['filename']\n\t\t\t              .'\" : '.$v_checksum.' calculated, '\n\t\t\t\t\t\t  .$v_header['checksum'].' expected');\n            return false;\n        }\n\n        // ----- Extract the properties\n        $v_header['filename'] = $v_data['filename'];\n        if ($this->_maliciousFilename($v_header['filename'])) {\n            $this->_error('Malicious .tar detected, file \"' . $v_header['filename'] .\n                '\" will not install in desired directory tree');\n            return false;\n        }\n        $v_header['mode'] = OctDec(trim($v_data['mode']));\n        $v_header['uid'] = OctDec(trim($v_data['uid']));\n        $v_header['gid'] = OctDec(trim($v_data['gid']));\n        $v_header['size'] = OctDec(trim($v_data['size']));\n        $v_header['mtime'] = OctDec(trim($v_data['mtime']));\n        if (($v_header['typeflag'] = $v_data['typeflag']) == \"5\") {\n          $v_header['size'] = 0;\n        }\n        $v_header['link'] = trim($v_data['link']);\n        /* ----- All these fields are removed form the header because\n\t\tthey do not carry interesting info\n        $v_header[magic] = trim($v_data[magic]);\n        $v_header[version] = trim($v_data[version]);\n        $v_header[uname] = trim($v_data[uname]);\n        $v_header[gname] = trim($v_data[gname]);\n        $v_header[devmajor] = trim($v_data[devmajor]);\n        $v_header[devminor] = trim($v_data[devminor]);\n        */\n\n        return true;\n    }\n    // }}}\n\n    // {{{ _maliciousFilename()\n    /**\n     * Detect and report a malicious file name\n     *\n     * @param string $file\n     * @return bool\n     * @access private\n     */\n    function _maliciousFilename($file)\n    {\n        if (strpos($file, '/../') !== false) {\n            return true;\n        }\n        if (strpos($file, '../') === 0) {\n            return true;\n        }\n        return false;\n    }\n    // }}}\n\n    // {{{ _readLongHeader()\n    function _readLongHeader(&$v_header)\n    {\n      $v_filename = '';\n      $n = floor($v_header['size']/512);\n      for ($i=0; $i<$n; $i++) {\n        $v_content = $this->_readBlock();\n        $v_filename .= $v_content;\n      }\n      if (($v_header['size'] % 512) != 0) {\n        $v_content = $this->_readBlock();\n        $v_filename .= trim($v_content);\n      }\n\n      // ----- Read the next header\n      $v_binary_data = $this->_readBlock();\n\n      if (!$this->_readHeader($v_binary_data, $v_header))\n        return false;\n\n      $v_filename = trim($v_filename);\n      $v_header['filename'] = $v_filename;\n        if ($this->_maliciousFilename($v_filename)) {\n            $this->_error('Malicious .tar detected, file \"' . $v_filename .\n                '\" will not install in desired directory tree');\n            return false;\n      }\n\n      return true;\n    }\n    // }}}\n\n    // {{{ _extractInString()\n    /**\n    * This method extract from the archive one file identified by $p_filename.\n    * The return value is a string with the file content, or NULL on error.\n    * @param string $p_filename     The path of the file to extract in a string.\n    * @return                       a string with the file content or NULL.\n    * @access private\n    */\n    function _extractInString($p_filename)\n    {\n        $v_result_str = \"\";\n\n        While (strlen($v_binary_data = $this->_readBlock()) != 0)\n        {\n          if (!$this->_readHeader($v_binary_data, $v_header))\n            return NULL;\n\n          if ($v_header['filename'] == '')\n            continue;\n\n          // ----- Look for long filename\n          if ($v_header['typeflag'] == 'L') {\n            if (!$this->_readLongHeader($v_header))\n              return NULL;\n          }\n\n          if ($v_header['filename'] == $p_filename) {\n              if ($v_header['typeflag'] == \"5\") {\n                  $this->_error('Unable to extract in string a directory '\n\t\t\t\t                .'entry {'.$v_header['filename'].'}');\n                  return NULL;\n              } else {\n                  $n = floor($v_header['size']/512);\n                  for ($i=0; $i<$n; $i++) {\n                      $v_result_str .= $this->_readBlock();\n                  }\n                  if (($v_header['size'] % 512) != 0) {\n                      $v_content = $this->_readBlock();\n                      $v_result_str .= substr($v_content, 0,\n\t\t\t\t\t                          ($v_header['size'] % 512));\n                  }\n                  return $v_result_str;\n              }\n          } else {\n              $this->_jumpBlock(ceil(($v_header['size']/512)));\n          }\n        }\n\n        return NULL;\n    }\n    // }}}\n\n    // {{{ _extractList()\n    function _extractList($p_path, &$p_list_detail, $p_mode,\n\t                      $p_file_list, $p_remove_path)\n    {\n    $v_result=true;\n    $v_nb = 0;\n    $v_extract_all = true;\n    $v_listing = false;\n\n    $p_path = $this->_translateWinPath($p_path, false);\n    if ($p_path == '' || (substr($p_path, 0, 1) != '/'\n\t    && substr($p_path, 0, 3) != \"../\" && !strpos($p_path, ':'))) {\n      $p_path = \"./\".$p_path;\n    }\n    $p_remove_path = $this->_translateWinPath($p_remove_path);\n\n    // ----- Look for path to remove format (should end by /)\n    if (($p_remove_path != '') && (substr($p_remove_path, -1) != '/'))\n      $p_remove_path .= '/';\n    $p_remove_path_size = strlen($p_remove_path);\n\n    switch ($p_mode) {\n      case \"complete\" :\n        $v_extract_all = TRUE;\n        $v_listing = FALSE;\n      break;\n      case \"partial\" :\n          $v_extract_all = FALSE;\n          $v_listing = FALSE;\n      break;\n      case \"list\" :\n          $v_extract_all = FALSE;\n          $v_listing = TRUE;\n      break;\n      default :\n        $this->_error('Invalid extract mode ('.$p_mode.')');\n        return false;\n    }\n\n    clearstatcache();\n\n    while (strlen($v_binary_data = $this->_readBlock()) != 0)\n    {\n      $v_extract_file = FALSE;\n      $v_extraction_stopped = 0;\n\n      if (!$this->_readHeader($v_binary_data, $v_header))\n        return false;\n\n      if ($v_header['filename'] == '') {\n        continue;\n      }\n\n      // ----- Look for long filename\n      if ($v_header['typeflag'] == 'L') {\n        if (!$this->_readLongHeader($v_header))\n          return false;\n      }\n\n      if ((!$v_extract_all) && (is_array($p_file_list))) {\n        // ----- By default no unzip if the file is not found\n        $v_extract_file = false;\n\n        for ($i=0; $i<sizeof($p_file_list); $i++) {\n          // ----- Look if it is a directory\n          if (substr($p_file_list[$i], -1) == '/') {\n            // ----- Look if the directory is in the filename path\n            if ((strlen($v_header['filename']) > strlen($p_file_list[$i]))\n\t\t\t    && (substr($v_header['filename'], 0, strlen($p_file_list[$i]))\n\t\t\t\t    == $p_file_list[$i])) {\n              $v_extract_file = TRUE;\n              break;\n            }\n          }\n\n          // ----- It is a file, so compare the file names\n          elseif ($p_file_list[$i] == $v_header['filename']) {\n            $v_extract_file = TRUE;\n            break;\n          }\n        }\n      } else {\n        $v_extract_file = TRUE;\n      }\n\n      // ----- Look if this file need to be extracted\n      if (($v_extract_file) && (!$v_listing))\n      {\n        if (($p_remove_path != '')\n            && (substr($v_header['filename'], 0, $p_remove_path_size)\n\t\t\t    == $p_remove_path))\n          $v_header['filename'] = substr($v_header['filename'],\n\t\t                                 $p_remove_path_size);\n        if (($p_path != './') && ($p_path != '/')) {\n          while (substr($p_path, -1) == '/')\n            $p_path = substr($p_path, 0, strlen($p_path)-1);\n\n          if (substr($v_header['filename'], 0, 1) == '/')\n              $v_header['filename'] = $p_path.$v_header['filename'];\n          else\n            $v_header['filename'] = $p_path.'/'.$v_header['filename'];\n        }\n        if (file_exists($v_header['filename'])) {\n          if (   (@is_dir($v_header['filename']))\n\t\t      && ($v_header['typeflag'] == '')) {\n            $this->_error('File '.$v_header['filename']\n\t\t\t              .' already exists as a directory');\n            return false;\n          }\n          if (   ($this->_isArchive($v_header['filename']))\n\t\t      && ($v_header['typeflag'] == \"5\")) {\n            $this->_error('Directory '.$v_header['filename']\n\t\t\t              .' already exists as a file');\n            return false;\n          }\n          if (!is_writeable($v_header['filename'])) {\n            $this->_error('File '.$v_header['filename']\n\t\t\t              .' already exists and is write protected');\n            return false;\n          }\n          if (filemtime($v_header['filename']) > $v_header['mtime']) {\n            // To be completed : An error or silent no replace ?\n          }\n        }\n\n        // ----- Check the directory availability and create it if necessary\n        elseif (($v_result\n\t\t         = $this->_dirCheck(($v_header['typeflag'] == \"5\"\n\t\t\t\t                    ?$v_header['filename']\n\t\t\t\t\t\t\t\t\t:dirname($v_header['filename'])))) != 1) {\n            $this->_error('Unable to create path for '.$v_header['filename']);\n            return false;\n        }\n\n        if ($v_extract_file) {\n          if ($v_header['typeflag'] == \"5\") {\n            if (!@file_exists($v_header['filename'])) {\n                if (!@mkdir($v_header['filename'], 0777)) {\n                    $this->_error('Unable to create directory {'\n\t\t\t\t\t              .$v_header['filename'].'}');\n                    return false;\n                }\n            }\n          } elseif ($v_header['typeflag'] == \"2\") {\n              if (@file_exists($v_header['filename'])) {\n                  @unlink($v_header['filename']);\n              }\n              if (!@symlink($v_header['link'], $v_header['filename'])) {\n                  $this->_error('Unable to extract symbolic link {'\n                                .$v_header['filename'].'}');\n                  return false;\n              }\n          } else {\n              if (($v_dest_file = @fopen($v_header['filename'], \"wb\")) == 0) {\n                  $this->_error('Error while opening {'.$v_header['filename']\n\t\t\t\t                .'} in write binary mode');\n                  return false;\n              } else {\n                  $n = floor($v_header['size']/512);\n                  for ($i=0; $i<$n; $i++) {\n                      $v_content = $this->_readBlock();\n                      fwrite($v_dest_file, $v_content, 512);\n                  }\n            if (($v_header['size'] % 512) != 0) {\n              $v_content = $this->_readBlock();\n              fwrite($v_dest_file, $v_content, ($v_header['size'] % 512));\n            }\n\n            @fclose($v_dest_file);\n\n            // ----- Change the file mode, mtime\n            @touch($v_header['filename'], $v_header['mtime']);\n            if ($v_header['mode'] & 0111) {\n                // make file executable, obey umask\n                $mode = fileperms($v_header['filename']) | (~umask() & 0111);\n                @chmod($v_header['filename'], $mode);\n            }\n          }\n\n          // ----- Check the file size\n          clearstatcache();\n          if (filesize($v_header['filename']) != $v_header['size']) {\n              $this->_error('Extracted file '.$v_header['filename']\n\t\t\t                .' does not have the correct file size \\''\n\t\t\t\t\t\t\t.filesize($v_header['filename'])\n\t\t\t\t\t\t\t.'\\' ('.$v_header['size']\n\t\t\t\t\t\t\t.' expected). Archive may be corrupted.');\n              return false;\n          }\n          }\n        } else {\n          $this->_jumpBlock(ceil(($v_header['size']/512)));\n        }\n      } else {\n          $this->_jumpBlock(ceil(($v_header['size']/512)));\n      }\n\n      /* TBC : Seems to be unused ...\n      if ($this->_compress)\n        $v_end_of_file = @gzeof($this->_file);\n      else\n        $v_end_of_file = @feof($this->_file);\n        */\n\n      if ($v_listing || $v_extract_file || $v_extraction_stopped) {\n        // ----- Log extracted files\n        if (($v_file_dir = dirname($v_header['filename']))\n\t\t    == $v_header['filename'])\n          $v_file_dir = '';\n        if ((substr($v_header['filename'], 0, 1) == '/') && ($v_file_dir == ''))\n          $v_file_dir = '/';\n\n        $p_list_detail[$v_nb++] = $v_header;\n        if (is_array($p_file_list) && (count($p_list_detail) == count($p_file_list))) {\n            return true;\n        }\n      }\n    }\n\n        return true;\n    }\n    // }}}\n\n    // {{{ _openAppend()\n    function _openAppend()\n    {\n        if (filesize($this->_tarname) == 0)\n          return $this->_openWrite();\n\n        if ($this->_compress) {\n            $this->_close();\n\n            if (!@rename($this->_tarname, $this->_tarname.\".tmp\")) {\n                $this->_error('Error while renaming \\''.$this->_tarname\n\t\t\t\t              .'\\' to temporary file \\''.$this->_tarname\n\t\t\t\t\t\t\t  .'.tmp\\'');\n                return false;\n            }\n\n            if ($this->_compress_type == 'gz')\n                $v_temp_tar = @gzopen($this->_tarname.\".tmp\", \"rb\");\n            elseif ($this->_compress_type == 'bz2')\n                $v_temp_tar = @bzopen($this->_tarname.\".tmp\", \"r\");\n\n            if ($v_temp_tar == 0) {\n                $this->_error('Unable to open file \\''.$this->_tarname\n\t\t\t\t              .'.tmp\\' in binary read mode');\n                @rename($this->_tarname.\".tmp\", $this->_tarname);\n                return false;\n            }\n\n            if (!$this->_openWrite()) {\n                @rename($this->_tarname.\".tmp\", $this->_tarname);\n                return false;\n            }\n\n            if ($this->_compress_type == 'gz') {\n                while (!@gzeof($v_temp_tar)) {\n                    $v_buffer = @gzread($v_temp_tar, 512);\n                    if ($v_buffer == ARCHIVE_TAR_END_BLOCK) {\n                        // do not copy end blocks, we will re-make them\n                        // after appending\n                        continue;\n                    }\n                    $v_binary_data = pack(\"a512\", $v_buffer);\n                    $this->_writeBlock($v_binary_data);\n                }\n\n                @gzclose($v_temp_tar);\n            }\n            elseif ($this->_compress_type == 'bz2') {\n                while (strlen($v_buffer = @bzread($v_temp_tar, 512)) > 0) {\n                    if ($v_buffer == ARCHIVE_TAR_END_BLOCK) {\n                        continue;\n                    }\n                    $v_binary_data = pack(\"a512\", $v_buffer);\n                    $this->_writeBlock($v_binary_data);\n                }\n\n                @bzclose($v_temp_tar);\n            }\n\n            if (!@unlink($this->_tarname.\".tmp\")) {\n                $this->_error('Error while deleting temporary file \\''\n\t\t\t\t              .$this->_tarname.'.tmp\\'');\n            }\n\n        } else {\n            // ----- For not compressed tar, just add files before the last\n\t\t\t//       one or two 512 bytes block\n            if (!$this->_openReadWrite())\n               return false;\n\n            clearstatcache();\n            $v_size = filesize($this->_tarname);\n\n            // We might have zero, one or two end blocks.\n            // The standard is two, but we should try to handle\n            // other cases.\n            fseek($this->_file, $v_size - 1024);\n            if (fread($this->_file, 512) == ARCHIVE_TAR_END_BLOCK) {\n                fseek($this->_file, $v_size - 1024);\n            }\n            elseif (fread($this->_file, 512) == ARCHIVE_TAR_END_BLOCK) {\n                fseek($this->_file, $v_size - 512);\n            }\n        }\n\n        return true;\n    }\n    // }}}\n\n    // {{{ _append()\n    function _append($p_filelist, $p_add_dir='', $p_remove_dir='')\n    {\n        if (!$this->_openAppend())\n            return false;\n\n        if ($this->_addList($p_filelist, $p_add_dir, $p_remove_dir))\n           $this->_writeFooter();\n\n        $this->_close();\n\n        return true;\n    }\n    // }}}\n\n    // {{{ _dirCheck()\n\n    /**\n     * Check if a directory exists and create it (including parent\n     * dirs) if not.\n     *\n     * @param string $p_dir directory to check\n     *\n     * @return bool TRUE if the directory exists or was created\n     */\n    function _dirCheck($p_dir)\n    {\n        clearstatcache();\n        if ((@is_dir($p_dir)) || ($p_dir == ''))\n            return true;\n\n        $p_parent_dir = dirname($p_dir);\n\n        if (($p_parent_dir != $p_dir) &&\n            ($p_parent_dir != '') &&\n            (!$this->_dirCheck($p_parent_dir)))\n             return false;\n\n        if (!@mkdir($p_dir, 0777)) {\n            $this->_error(\"Unable to create directory '$p_dir'\");\n            return false;\n        }\n\n        return true;\n    }\n\n    // }}}\n\n    // {{{ _pathReduction()\n\n    /**\n     * Compress path by changing for example \"/dir/foo/../bar\" to \"/dir/bar\",\n     * rand emove double slashes.\n     *\n     * @param string $p_dir path to reduce\n     *\n     * @return string reduced path\n     *\n     * @access private\n     *\n     */\n    function _pathReduction($p_dir)\n    {\n        $v_result = '';\n\n        // ----- Look for not empty path\n        if ($p_dir != '') {\n            // ----- Explode path by directory names\n            $v_list = explode('/', $p_dir);\n\n            // ----- Study directories from last to first\n            for ($i=sizeof($v_list)-1; $i>=0; $i--) {\n                // ----- Look for current path\n                if ($v_list[$i] == \".\") {\n                    // ----- Ignore this directory\n                    // Should be the first $i=0, but no check is done\n                }\n                else if ($v_list[$i] == \"..\") {\n                    // ----- Ignore it and ignore the $i-1\n                    $i--;\n                }\n                else if (   ($v_list[$i] == '')\n\t\t\t\t         && ($i!=(sizeof($v_list)-1))\n\t\t\t\t\t\t && ($i!=0)) {\n                    // ----- Ignore only the double '//' in path,\n                    // but not the first and last /\n                } else {\n                    $v_result = $v_list[$i].($i!=(sizeof($v_list)-1)?'/'\n\t\t\t\t\t            .$v_result:'');\n                }\n            }\n        }\n        $v_result = strtr($v_result, '\\\\', '/');\n        return $v_result;\n    }\n\n    // }}}\n\n    // {{{ _translateWinPath()\n    function _translateWinPath($p_path, $p_remove_disk_letter=true)\n    {\n      if (defined('OS_WINDOWS') && OS_WINDOWS) {\n          // ----- Look for potential disk letter\n          if (   ($p_remove_disk_letter)\n\t\t      && (($v_position = strpos($p_path, ':')) != false)) {\n              $p_path = substr($p_path, $v_position+1);\n          }\n          // ----- Change potential windows directory separator\n          if ((strpos($p_path, '\\\\') > 0) || (substr($p_path, 0,1) == '\\\\')) {\n              $p_path = strtr($p_path, '\\\\', '/');\n          }\n      }\n      return $p_path;\n    }\n    // }}}\n\n}\n?>\n"
  },
  {
    "path": "newscoop/include/Console/Getopt.php",
    "content": "<?php\n/* vim: set expandtab tabstop=4 shiftwidth=4: */\n// +----------------------------------------------------------------------+\n// | PHP Version 5                                                        |\n// +----------------------------------------------------------------------+\n// | Copyright (c) 1997-2004 The PHP Group                                |\n// +----------------------------------------------------------------------+\n// | This source file is subject to version 3.0 of the PHP license,       |\n// | that is bundled with this package in the file LICENSE, and is        |\n// | available through the world-wide-web at the following url:           |\n// | http://www.php.net/license/3_0.txt.                                  |\n// | If you did not receive a copy of the PHP license and are unable to   |\n// | obtain it through the world-wide-web, please send a note to          |\n// | license@php.net so we can mail you a copy immediately.               |\n// +----------------------------------------------------------------------+\n// | Author: Andrei Zmievski <andrei@php.net>                             |\n// +----------------------------------------------------------------------+\n//\n// $Id: Getopt.php,v 1.4 2007/06/12 14:58:56 cellog Exp $\n\nrequire_once 'PEAR.php';\n\n/**\n * Command-line options parsing class.\n *\n * @author Andrei Zmievski <andrei@php.net>\n *\n */\nclass Console_Getopt {\n    /**\n     * Parses the command-line options.\n     *\n     * The first parameter to this function should be the list of command-line\n     * arguments without the leading reference to the running program.\n     *\n     * The second parameter is a string of allowed short options. Each of the\n     * option letters can be followed by a colon ':' to specify that the option\n     * requires an argument, or a double colon '::' to specify that the option\n     * takes an optional argument.\n     *\n     * The third argument is an optional array of allowed long options. The\n     * leading '--' should not be included in the option name. Options that\n     * require an argument should be followed by '=', and options that take an\n     * option argument should be followed by '=='.\n     *\n     * The return value is an array of two elements: the list of parsed\n     * options and the list of non-option command-line arguments. Each entry in\n     * the list of parsed options is a pair of elements - the first one\n     * specifies the option, and the second one specifies the option argument,\n     * if there was one.\n     *\n     * Long and short options can be mixed.\n     *\n     * Most of the semantics of this function are based on GNU getopt_long().\n     *\n     * @param array  $args           an array of command-line arguments\n     * @param string $short_options  specifies the list of allowed short options\n     * @param array  $long_options   specifies the list of allowed long options\n     *\n     * @return array two-element array containing the list of parsed options and\n     * the non-option arguments\n     *\n     * @access public\n     *\n     */\n    function getopt2($args, $short_options, $long_options = null)\n    {\n        return Console_Getopt::doGetopt(2, $args, $short_options, $long_options);\n    }\n\n    /**\n     * This function expects $args to start with the script name (POSIX-style).\n     * Preserved for backwards compatibility.\n     * @see getopt2()\n     */    \n    function getopt($args, $short_options, $long_options = null)\n    {\n        return Console_Getopt::doGetopt(1, $args, $short_options, $long_options);\n    }\n\n    /**\n     * The actual implementation of the argument parsing code.\n     */\n    function doGetopt($version, $args, $short_options, $long_options = null)\n    {\n        // in case you pass directly readPHPArgv() as the first arg\n        if (PEAR::isError($args)) {\n            return $args;\n        }\n        if (empty($args)) {\n            return array(array(), array());\n        }\n        $opts     = array();\n        $non_opts = array();\n\n        settype($args, 'array');\n\n        if ($long_options) {\n            sort($long_options);\n        }\n\n        /*\n         * Preserve backwards compatibility with callers that relied on\n         * erroneous POSIX fix.\n         */\n        if ($version < 2) {\n            if (isset($args[0]{0}) && $args[0]{0} != '-') {\n                array_shift($args);\n            }\n        }\n\n        reset($args);\n        while (list($i, $arg) = each($args)) {\n\n            /* The special element '--' means explicit end of\n               options. Treat the rest of the arguments as non-options\n               and end the loop. */\n            if ($arg == '--') {\n                $non_opts = array_merge($non_opts, array_slice($args, $i + 1));\n                break;\n            }\n\n            if ($arg{0} != '-' || (strlen($arg) > 1 && $arg{1} == '-' && !$long_options)) {\n                $non_opts = array_merge($non_opts, array_slice($args, $i));\n                break;\n            } elseif (strlen($arg) > 1 && $arg{1} == '-') {\n                $error = Console_Getopt::_parseLongOption(substr($arg, 2), $long_options, $opts, $args);\n                if (PEAR::isError($error))\n                    return $error;\n            } elseif ($arg == '-') {\n                // - is stdin\n                $non_opts = array_merge($non_opts, array_slice($args, $i));\n                break;\n            } else {\n                $error = Console_Getopt::_parseShortOption(substr($arg, 1), $short_options, $opts, $args);\n                if (PEAR::isError($error))\n                    return $error;\n            }\n        }\n\n        return array($opts, $non_opts);\n    }\n\n    /**\n     * @access private\n     *\n     */\n    function _parseShortOption($arg, $short_options, &$opts, &$args)\n    {\n        for ($i = 0; $i < strlen($arg); $i++) {\n            $opt = $arg{$i};\n            $opt_arg = null;\n\n            /* Try to find the short option in the specifier string. */\n            if (($spec = strstr($short_options, $opt)) === false || $arg{$i} == ':')\n            {\n                return PEAR::raiseError(\"Console_Getopt: unrecognized option -- $opt\");\n            }\n\n            if (strlen($spec) > 1 && $spec{1} == ':') {\n                if (strlen($spec) > 2 && $spec{2} == ':') {\n                    if ($i + 1 < strlen($arg)) {\n                        /* Option takes an optional argument. Use the remainder of\n                           the arg string if there is anything left. */\n                        $opts[] = array($opt, substr($arg, $i + 1));\n                        break;\n                    }\n                } else {\n                    /* Option requires an argument. Use the remainder of the arg\n                       string if there is anything left. */\n                    if ($i + 1 < strlen($arg)) {\n                        $opts[] = array($opt,  substr($arg, $i + 1));\n                        break;\n                    } else if (list(, $opt_arg) = each($args)) {\n                        /* Else use the next argument. */;\n                        if (Console_Getopt::_isShortOpt($opt_arg) || Console_Getopt::_isLongOpt($opt_arg)) {\n                            return PEAR::raiseError(\"Console_Getopt: option requires an argument -- $opt\");\n                        }\n                    } else {\n                        return PEAR::raiseError(\"Console_Getopt: option requires an argument -- $opt\");\n                    }\n                }\n            }\n\n            $opts[] = array($opt, $opt_arg);\n        }\n    }\n\n    /**\n     * @access private\n     *\n     */\n    function _isShortOpt($arg)\n    {\n        return strlen($arg) == 2 && $arg[0] == '-' && preg_match('/[a-zA-Z]/', $arg[1]);\n    }\n\n    /**\n     * @access private\n     *\n     */\n    function _isLongOpt($arg)\n    {\n        return strlen($arg) > 2 && $arg[0] == '-' && $arg[1] == '-' &&\n            preg_match('/[a-zA-Z]+$/', substr($arg, 2));\n    }\n\n    /**\n     * @access private\n     *\n     */\n    function _parseLongOption($arg, $long_options, &$opts, &$args)\n    {\n        @list($opt, $opt_arg) = explode('=', $arg, 2);\n        $opt_len = strlen($opt);\n\n        for ($i = 0; $i < count($long_options); $i++) {\n            $long_opt  = $long_options[$i];\n            $opt_start = substr($long_opt, 0, $opt_len);\n            $long_opt_name = str_replace('=', '', $long_opt);\n\n            /* Option doesn't match. Go on to the next one. */\n            if ($long_opt_name != $opt) {\n                continue;\n            }\n\n            $opt_rest  = substr($long_opt, $opt_len);\n\n            /* Check that the options uniquely matches one of the allowed\n               options. */\n            if ($i + 1 < count($long_options)) {\n                $next_option_rest = substr($long_options[$i + 1], $opt_len);\n            } else {\n                $next_option_rest = '';\n            }\n            if ($opt_rest != '' && $opt{0} != '=' &&\n                $i + 1 < count($long_options) &&\n                $opt == substr($long_options[$i+1], 0, $opt_len) &&\n                $next_option_rest != '' &&\n                $next_option_rest{0} != '=') {\n                return PEAR::raiseError(\"Console_Getopt: option --$opt is ambiguous\");\n            }\n\n            if (substr($long_opt, -1) == '=') {\n                if (substr($long_opt, -2) != '==') {\n                    /* Long option requires an argument.\n                       Take the next argument if one wasn't specified. */;\n                    if (!strlen($opt_arg) && !(list(, $opt_arg) = each($args))) {\n                        return PEAR::raiseError(\"Console_Getopt: option --$opt requires an argument\");\n                    }\n                    if (Console_Getopt::_isShortOpt($opt_arg) || Console_Getopt::_isLongOpt($opt_arg)) {\n                        return PEAR::raiseError(\"Console_Getopt: option requires an argument --$opt\");\n                    }\n                }\n            } else if ($opt_arg) {\n                return PEAR::raiseError(\"Console_Getopt: option --$opt doesn't allow an argument\");\n            }\n\n            $opts[] = array('--' . $opt, $opt_arg);\n            return;\n        }\n\n        return PEAR::raiseError(\"Console_Getopt: unrecognized option --$opt\");\n    }\n\n    /**\n    * Safely read the $argv PHP array across different PHP configurations.\n    * Will take care on register_globals and register_argc_argv ini directives\n    *\n    * @access public\n    * @return mixed the $argv PHP array or PEAR error if not registered\n    */\n    function readPHPArgv()\n    {\n        global $argv;\n        if (!is_array($argv)) {\n            if (!@is_array($_SERVER['argv'])) {\n                if (!@is_array($GLOBALS['HTTP_SERVER_VARS']['argv'])) {\n                    return PEAR::raiseError(\"Console_Getopt: Could not read cmd args (register_argc_argv=Off?)\");\n                }\n                return $GLOBALS['HTTP_SERVER_VARS']['argv'];\n            }\n            return $_SERVER['argv'];\n        }\n        return $argv;\n    }\n\n}\n\n?>\n"
  },
  {
    "path": "newscoop/include/Date/Calc.php",
    "content": "<?php\r\n/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4 foldmethod=marker: */\r\n\r\n// {{{ Header\r\n\r\n/**\r\n * Calculates, manipulates and retrieves dates\r\n *\r\n * It does not rely on 32-bit system time stamps, so it works dates\r\n * before 1970 and after 2038.\r\n *\r\n * PHP versions 4 and 5\r\n *\r\n * LICENSE:\r\n *\r\n * Copyright (c) 1999-2006 Monte Ohrt, Pierre-Alain Joye, Daniel Convissor\r\n * All rights reserved.\r\n *\r\n * Redistribution and use in source and binary forms, with or without\r\n * modification, are permitted under the terms of the BSD License.\r\n *\r\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\r\n * \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\r\n * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS\r\n * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE\r\n * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,\r\n * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,\r\n * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\r\n * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\r\n * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT\r\n * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN\r\n * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE\r\n * POSSIBILITY OF SUCH DAMAGE.\r\n *\r\n * @category   Date and Time\r\n * @package    Date\r\n * @author     Monte Ohrt <monte@ispi.net>\r\n * @author     Pierre-Alain Joye <pajoye@php.net>\r\n * @author     Daniel Convissor <danielc@php.net>\r\n * @copyright  1999-2006 Monte Ohrt, Pierre-Alain Joye, Daniel Convissor\r\n * @license    http://www.opensource.org/licenses/bsd-license.php\r\n *             BSD License\r\n * @version    CVS: $Id: Calc.php,v 1.35 2006/11/21 23:01:13 firman Exp $\r\n * @link       http://pear.php.net/package/Date\r\n * @since      File available since Release 1.2\r\n */\r\n\r\n// }}}\r\n\r\nif (!defined('DATE_CALC_BEGIN_WEEKDAY')) {\r\n    /**\r\n     * Defines what day starts the week\r\n     *\r\n     * Monday (1) is the international standard.\r\n     * Redefine this to 0 if you want weeks to begin on Sunday.\r\n     */\r\n    define('DATE_CALC_BEGIN_WEEKDAY', 1);\r\n}\r\n\r\nif (!defined('DATE_CALC_FORMAT')) {\r\n    /**\r\n     * The default value for each method's $format parameter\r\n     *\r\n     * The default is '%Y%m%d'.  To override this default, define\r\n     * this constant before including Calc.php.\r\n     *\r\n     * @since Constant available since Release 1.4.4\r\n     */\r\n    define('DATE_CALC_FORMAT', '%Y%m%d');\r\n}\r\n\r\n// {{{ Class: Date_Calc\r\n\r\n/**\r\n * Calculates, manipulates and retrieves dates\r\n *\r\n * It does not rely on 32-bit system time stamps, so it works dates\r\n * before 1970 and after 2038.\r\n *\r\n * @author     Monte Ohrt <monte@ispi.net>\r\n * @author     Daniel Convissor <danielc@php.net>\r\n * @copyright  1999-2006 Monte Ohrt, Pierre-Alain Joye, Daniel Convissor\r\n * @license    http://www.opensource.org/licenses/bsd-license.php\r\n *             BSD License\r\n * @version    Release: 1.4.7\r\n * @link       http://pear.php.net/package/Date\r\n * @since      Class available since Release 1.2\r\n */\r\nclass Date_Calc\r\n{\r\n    // {{{ dateFormat()\r\n\r\n    /**\r\n     * Formats the date in the given format, much like strfmt()\r\n     *\r\n     * This function is used to alleviate the problem with 32-bit numbers for\r\n     * dates pre 1970 or post 2038, as strfmt() has on most systems.\r\n     * Most of the formatting options are compatible.\r\n     *\r\n     * Formatting options:\r\n     * <pre>\r\n     * %a   abbreviated weekday name (Sun, Mon, Tue)\r\n     * %A   full weekday name (Sunday, Monday, Tuesday)\r\n     * %b   abbreviated month name (Jan, Feb, Mar)\r\n     * %B   full month name (January, February, March)\r\n     * %d   day of month (range 00 to 31)\r\n     * %e   day of month, single digit (range 0 to 31)\r\n     * %E   number of days since unspecified epoch (integer)\r\n     *        (%E is useful for passing a date in a URL as\r\n     *        an integer value. Then simply use\r\n     *        daysToDate() to convert back to a date.)\r\n     * %j   day of year (range 001 to 366)\r\n     * %m   month as decimal number (range 1 to 12)\r\n     * %n   newline character (\\n)\r\n     * %t   tab character (\\t)\r\n     * %w   weekday as decimal (0 = Sunday)\r\n     * %U   week number of current year, first sunday as first week\r\n     * %y   year as decimal (range 00 to 99)\r\n     * %Y   year as decimal including century (range 0000 to 9999)\r\n     * %%   literal '%'\r\n     * </pre>\r\n     *\r\n     * @param int    $day     the day of the month\r\n     * @param int    $month   the month\r\n     * @param int    $year    the year.  Use the complete year instead of the\r\n     *                         abbreviated version.  E.g. use 2005, not 05.\r\n     *                         Do not add leading 0's for years prior to 1000.\r\n     * @param string $format  the format string\r\n     *\r\n     * @return string  the date in the desired format\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function dateFormat($day, $month, $year, $format)\r\n    {\r\n        if (!Date_Calc::isValidDate($day, $month, $year)) {\r\n            $year  = Date_Calc::dateNow('%Y');\r\n            $month = Date_Calc::dateNow('%m');\r\n            $day   = Date_Calc::dateNow('%d');\r\n        }\r\n\r\n        $output = '';\r\n\r\n        for ($strpos = 0; $strpos < strlen($format); $strpos++) {\r\n            $char = substr($format, $strpos, 1);\r\n            if ($char == '%') {\r\n                $nextchar = substr($format, $strpos + 1, 1);\r\n                switch($nextchar) {\r\n                    case 'a':\r\n                        $output .= Date_Calc::getWeekdayAbbrname($day, $month, $year);\r\n                        break;\r\n                    case 'A':\r\n                        $output .= Date_Calc::getWeekdayFullname($day, $month, $year);\r\n                        break;\r\n                    case 'b':\r\n                        $output .= Date_Calc::getMonthAbbrname($month);\r\n                        break;\r\n                    case 'B':\r\n                        $output .= Date_Calc::getMonthFullname($month);\r\n                        break;\r\n                    case 'd':\r\n                        $output .= sprintf('%02d', $day);\r\n                        break;\r\n                    case 'e':\r\n                        $output .= $day;\r\n                        break;\r\n                    case 'E':\r\n                        $output .= Date_Calc::dateToDays($day, $month, $year);\r\n                        break;\r\n                    case 'j':\r\n                        $output .= Date_Calc::julianDate($day, $month, $year);\r\n                        break;\r\n                    case 'm':\r\n                        $output .= sprintf('%02d', $month);\r\n                        break;\r\n                    case 'n':\r\n                        $output .= \"\\n\";\r\n                        break;\r\n                    case 't':\r\n                        $output .= \"\\t\";\r\n                        break;\r\n                    case 'w':\r\n                        $output .= Date_Calc::dayOfWeek($day, $month, $year);\r\n                        break;\r\n                    case 'U':\r\n                        $output .= Date_Calc::weekOfYear($day, $month, $year);\r\n                        break;\r\n                    case 'y':\r\n                        $output .= substr($year, 2, 2);\r\n                        break;\r\n                    case 'Y':\r\n                        $output .= $year;\r\n                        break;\r\n                    case '%':\r\n                        $output .= '%';\r\n                        break;\r\n                    default:\r\n                        $output .= $char.$nextchar;\r\n                }\r\n                $strpos++;\r\n            } else {\r\n                $output .= $char;\r\n            }\r\n        }\r\n        return $output;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ defaultCentury()\r\n\r\n    /**\r\n     * Turns a two digit year into a four digit year\r\n     *\r\n     * From '51 to '99 is in the 1900's, otherwise it's in the 2000's.\r\n     *\r\n     * @param int    $year    the 2 digit year\r\n     *\r\n     * @return string  the 4 digit year\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function defaultCentury($year)\r\n    {\r\n        if (strlen($year) == 1) {\r\n            $year = '0' . $year;\r\n        }\r\n        if ($year > 50) {\r\n            return '19' . $year;\r\n        } else {\r\n            return '20' . $year;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ dateToDays()\r\n\r\n    /**\r\n     * Converts a date to number of days since a distant unspecified epoch\r\n     *\r\n     * @param int    $day     the day of the month\r\n     * @param int    $month   the month\r\n     * @param int    $year    the year.  Use the complete year instead of the\r\n     *                         abbreviated version.  E.g. use 2005, not 05.\r\n     *                         Do not add leading 0's for years prior to 1000.\r\n     *\r\n     * @return integer  the number of days since the Date_Calc epoch\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function dateToDays($day, $month, $year)\r\n    {\r\n        $century = (int)substr($year, 0, 2);\r\n        $year = (int)substr($year, 2, 2);\r\n        if ($month > 2) {\r\n            $month -= 3;\r\n        } else {\r\n            $month += 9;\r\n            if ($year) {\r\n                $year--;\r\n            } else {\r\n                $year = 99;\r\n                $century --;\r\n            }\r\n        }\r\n\r\n        return (floor((146097 * $century) / 4 ) +\r\n                floor((1461 * $year) / 4 ) +\r\n                floor((153 * $month + 2) / 5 ) +\r\n                $day + 1721119);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ daysToDate()\r\n\r\n    /**\r\n     * Converts number of days to a distant unspecified epoch\r\n     *\r\n     * @param int    $days    the number of days since the Date_Calc epoch\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return string  the date in the desired format\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function daysToDate($days, $format = DATE_CALC_FORMAT)\r\n    {\r\n        $days   -= 1721119;\r\n        $century = floor((4 * $days - 1) / 146097);\r\n        $days    = floor(4 * $days - 1 - 146097 * $century);\r\n        $day     = floor($days / 4);\r\n\r\n        $year    = floor((4 * $day +  3) / 1461);\r\n        $day     = floor(4 * $day +  3 - 1461 * $year);\r\n        $day     = floor(($day +  4) / 4);\r\n\r\n        $month   = floor((5 * $day - 3) / 153);\r\n        $day     = floor(5 * $day - 3 - 153 * $month);\r\n        $day     = floor(($day +  5) /  5);\r\n\r\n        if ($month < 10) {\r\n            $month +=3;\r\n        } else {\r\n            $month -=9;\r\n            if ($year++ == 99) {\r\n                $year = 0;\r\n                $century++;\r\n            }\r\n        }\r\n\r\n        $century = sprintf('%02d', $century);\r\n        $year    = sprintf('%02d', $year);\r\n        return Date_Calc::dateFormat($day, $month, $century . $year, $format);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ gregorianToISO()\r\n\r\n    /**\r\n     * Converts from Gregorian Year-Month-Day to ISO Year-WeekNumber-WeekDay\r\n     *\r\n     * Uses ISO 8601 definitions.  Algorithm by Rick McCarty, 1999 at\r\n     * http://personal.ecu.edu/mccartyr/ISOwdALG.txt .\r\n     * Transcribed to PHP by Jesus M. Castagnetto.\r\n     *\r\n     * @param int    $day     the day of the month\r\n     * @param int    $month   the month\r\n     * @param int    $year    the year.  Use the complete year instead of the\r\n     *                         abbreviated version.  E.g. use 2005, not 05.\r\n     *                         Do not add leading 0's for years prior to 1000.\r\n     *\r\n     * @return string  the date in ISO Year-WeekNumber-WeekDay format\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function gregorianToISO($day, $month, $year)\r\n    {\r\n        $mnth = array (0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334);\r\n        $y_isleap = Date_Calc::isLeapYear($year);\r\n        $y_1_isleap = Date_Calc::isLeapYear($year - 1);\r\n        $day_of_year_number = $day + $mnth[$month - 1];\r\n        if ($y_isleap && $month > 2) {\r\n            $day_of_year_number++;\r\n        }\r\n        // find Jan 1 weekday (monday = 1, sunday = 7)\r\n        $yy = ($year - 1) % 100;\r\n        $c = ($year - 1) - $yy;\r\n        $g = $yy + intval($yy / 4);\r\n        $jan1_weekday = 1 + intval((((($c / 100) % 4) * 5) + $g) % 7);\r\n        // weekday for year-month-day\r\n        $h = $day_of_year_number + ($jan1_weekday - 1);\r\n        $weekday = 1 + intval(($h - 1) % 7);\r\n        // find if Y M D falls in YearNumber Y-1, WeekNumber 52 or\r\n        if ($day_of_year_number <= (8 - $jan1_weekday) && $jan1_weekday > 4){\r\n            $yearnumber = $year - 1;\r\n            if ($jan1_weekday == 5 || ($jan1_weekday == 6 && $y_1_isleap)) {\r\n                $weeknumber = 53;\r\n            } else {\r\n                $weeknumber = 52;\r\n            }\r\n        } else {\r\n            $yearnumber = $year;\r\n        }\r\n        // find if Y M D falls in YearNumber Y+1, WeekNumber 1\r\n        if ($yearnumber == $year) {\r\n            if ($y_isleap) {\r\n                $i = 366;\r\n            } else {\r\n                $i = 365;\r\n            }\r\n            if (($i - $day_of_year_number) < (4 - $weekday)) {\r\n                $yearnumber++;\r\n                $weeknumber = 1;\r\n            }\r\n        }\r\n        // find if Y M D falls in YearNumber Y, WeekNumber 1 through 53\r\n        if ($yearnumber == $year) {\r\n            $j = $day_of_year_number + (7 - $weekday) + ($jan1_weekday - 1);\r\n            $weeknumber = intval($j / 7);\r\n            if ($jan1_weekday > 4) {\r\n                $weeknumber--;\r\n            }\r\n        }\r\n        // put it all together\r\n        if ($weeknumber < 10) {\r\n            $weeknumber = '0'.$weeknumber;\r\n        }\r\n        return $yearnumber . '-' . $weeknumber . '-' . $weekday;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ dateSeason()\r\n\r\n    /**\r\n     * Determines julian date of the given season\r\n     *\r\n     * Adapted from previous work in Java by James Mark Hamilton.\r\n     *\r\n     * @param string $season  the season to get the date for: VERNALEQUINOX,\r\n     *                         SUMMERSOLSTICE, AUTUMNALEQUINOX,\r\n     *                         or WINTERSOLSTICE\r\n     * @param string $year    the year in four digit format.  Must be between\r\n     *                         -1000BC and 3000AD.\r\n     *\r\n     * @return float  the julian date the season starts on\r\n     *\r\n     * @author James Mark Hamilton <mhamilton@qwest.net>\r\n     * @author Robert Butler <rob@maxwellcreek.org>\r\n     * @access public\r\n     * @static\r\n     */\r\n    function dateSeason($season, $year = 0)\r\n    {\r\n        if ($year == '') {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (($year >= -1000) && ($year <= 1000)) {\r\n            $y = $year / 1000.0;\r\n            switch ($season) {\r\n                case 'VERNALEQUINOX':\r\n                    $juliandate = (((((((-0.00071 * $y) - 0.00111) * $y) + 0.06134) * $y) + 365242.1374) * $y) + 1721139.29189;\r\n                    break;\r\n                case 'SUMMERSOLSTICE':\r\n                    $juliandate = (((((((0.00025 * $y) + 0.00907) * $y) - 0.05323) * $y) + 365241.72562) * $y) + 1721233.25401;\r\n                    break;\r\n                case 'AUTUMNALEQUINOX':\r\n                    $juliandate = (((((((0.00074 * $y) - 0.00297) * $y) - 0.11677) * $y) + 365242.49558) * $y) + 1721325.70455;\r\n                    break;\r\n                case 'WINTERSOLSTICE':\r\n                default:\r\n                    $juliandate = (((((((-0.00006 * $y) - 0.00933) * $y) - 0.00769) * $y) + 365242.88257) * $y) + 1721414.39987;\r\n            }\r\n        } elseif (($year > 1000) && ($year <= 3000)) {\r\n            $y = ($year - 2000) / 1000;\r\n            switch ($season) {\r\n                case 'VERNALEQUINOX':\r\n                    $juliandate = (((((((-0.00057 * $y) - 0.00411) * $y) + 0.05169) * $y) + 365242.37404) * $y) + 2451623.80984;\r\n                    break;\r\n                case 'SUMMERSOLSTICE':\r\n                    $juliandate = (((((((-0.0003 * $y) + 0.00888) * $y) + 0.00325) * $y) + 365241.62603) * $y) + 2451716.56767;\r\n                    break;\r\n                case 'AUTUMNALEQUINOX':\r\n                    $juliandate = (((((((0.00078 * $y) + 0.00337) * $y) - 0.11575) * $y) + 365242.01767) * $y) + 2451810.21715;\r\n                    break;\r\n                case 'WINTERSOLSTICE':\r\n                default:\r\n                    $juliandate = (((((((0.00032 * $y) - 0.00823) * $y) - 0.06223) * $y) + 365242.74049) * $y) + 2451900.05952;\r\n            }\r\n        }\r\n        return $juliandate;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ dateNow()\r\n\r\n    /**\r\n     * Returns the current local date\r\n     *\r\n     * NOTE: This function retrieves the local date using strftime(),\r\n     * which may or may not be 32-bit safe on your system.\r\n     *\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return string  the current date in the specified format\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function dateNow($format = DATE_CALC_FORMAT)\r\n    {\r\n        return strftime($format, time());\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getYear()\r\n\r\n    /**\r\n     * Returns the current local year in format CCYY\r\n     *\r\n     * @return string  the current year in four digit format\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function getYear()\r\n    {\r\n        return Date_Calc::dateNow('%Y');\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getMonth()\r\n\r\n    /**\r\n     * Returns the current local month in format MM\r\n     *\r\n     * @return string  the current month in two digit format\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function getMonth()\r\n    {\r\n        return Date_Calc::dateNow('%m');\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getDay()\r\n\r\n    /**\r\n     * Returns the current local day in format DD\r\n     *\r\n     * @return string  the current day of the month in two digit format\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function getDay()\r\n    {\r\n        return Date_Calc::dateNow('%d');\r\n    }\r\n\r\n    // }}}\r\n    // {{{ julianDate()\r\n\r\n    /**\r\n     * Returns number of days since 31 December of year before given date\r\n     *\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     *\r\n     * @return int  the julian date for the date\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function julianDate($day = 0, $month = 0, $year = 0)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if (empty($day)) {\r\n            $day = Date_Calc::dateNow('%d');\r\n        }\r\n        $days = array(0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334);\r\n        $julian = ($days[$month - 1] + $day);\r\n        if ($month > 2 && Date_Calc::isLeapYear($year)) {\r\n            $julian++;\r\n        }\r\n        return $julian;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getWeekdayFullname()\r\n\r\n    /**\r\n     * Returns the full weekday name for the given date\r\n     *\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     *\r\n     * @return string  the full name of the day of the week\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function getWeekdayFullname($day = 0, $month = 0, $year = 0)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if (empty($day)) {\r\n            $day = Date_Calc::dateNow('%d');\r\n        }\r\n        $weekday_names = Date_Calc::getWeekDays();\r\n        $weekday = Date_Calc::dayOfWeek($day, $month, $year);\r\n        return $weekday_names[$weekday];\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getWeekdayAbbrname()\r\n\r\n    /**\r\n     * Returns the abbreviated weekday name for the given date\r\n     *\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     * @param int    $length  the length of abbreviation\r\n     *\r\n     * @return string  the abbreviated name of the day of the week\r\n     *\r\n     * @access public\r\n     * @static\r\n     * @see Date_Calc::getWeekdayFullname()\r\n     */\r\n    function getWeekdayAbbrname($day = 0, $month = 0, $year = 0, $length = 3)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if (empty($day)) {\r\n            $day = Date_Calc::dateNow('%d');\r\n        }\r\n        return substr(Date_Calc::getWeekdayFullname($day, $month, $year),\r\n                      0, $length);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getMonthFullname()\r\n\r\n    /**\r\n     * Returns the full month name for the given month\r\n     *\r\n     * @param int    $month   the month\r\n     *\r\n     * @return string  the full name of the month\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function getMonthFullname($month)\r\n    {\r\n        $month = (int)$month;\r\n        if (empty($month)) {\r\n            $month = (int)Date_Calc::dateNow('%m');\r\n        }\r\n        $month_names = Date_Calc::getMonthNames();\r\n        return $month_names[$month];\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getMonthAbbrname()\r\n\r\n    /**\r\n     * Returns the abbreviated month name for the given month\r\n     *\r\n     * @param int    $month   the month\r\n     * @param int    $length  the length of abbreviation\r\n     *\r\n     * @return string  the abbreviated name of the month\r\n     *\r\n     * @access public\r\n     * @static\r\n     * @see Date_Calc::getMonthFullname\r\n     */\r\n    function getMonthAbbrname($month, $length = 3)\r\n    {\r\n        $month = (int)$month;\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        return substr(Date_Calc::getMonthFullname($month), 0, $length);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getMonthFromFullname()\r\n\r\n    /**\r\n     * Returns the numeric month from the month name or an abreviation\r\n     *\r\n     * Both August and Aug would return 8.\r\n     *\r\n     * @param string $month  the name of the month to examine.\r\n     *                        Case insensitive.\r\n     *\r\n     * @return integer  the month's number\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function getMonthFromFullName($month)\r\n    {\r\n        $month = strtolower($month);\r\n        $months = Date_Calc::getMonthNames();\r\n        while(list($id, $name) = each($months)) {\r\n            if (ereg($month, strtolower($name))) {\r\n                return $id;\r\n            }\r\n        }\r\n        return 0;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getMonthNames()\r\n\r\n    /**\r\n     * Returns an array of month names\r\n     *\r\n     * Used to take advantage of the setlocale function to return\r\n     * language specific month names.\r\n     *\r\n     * TODO: cache values to some global array to avoid preformace\r\n     * hits when called more than once.\r\n     *\r\n     * @returns array  an array of month names\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function getMonthNames()\r\n    {\r\n        $months = array();\r\n        for ($i = 1; $i < 13; $i++) {\r\n            $months[$i] = strftime('%B', mktime(0, 0, 0, $i, 1, 2001));\r\n        }\r\n        return $months;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getWeekDays()\r\n\r\n    /**\r\n     * Returns an array of week days\r\n     *\r\n     * Used to take advantage of the setlocale function to\r\n     * return language specific week days.\r\n     *\r\n     * TODO: cache values to some global array to avoid preformace\r\n     * hits when called more than once.\r\n     *\r\n     * @returns array  an array of week day names\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function getWeekDays()\r\n    {\r\n        $weekdays = array();\r\n        for ($i = 0; $i < 7; $i++) {\r\n            $weekdays[$i] = strftime('%A', mktime(0, 0, 0, 1, $i, 2001));\r\n        }\r\n        return $weekdays;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ dayOfWeek()\r\n\r\n    /**\r\n     * Returns day of week for given date (0 = Sunday)\r\n     *\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     *\r\n     * @return int  the number of the day in the week\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function dayOfWeek($day = 0, $month = 0, $year = 0)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if (empty($day)) {\r\n            $day = Date_Calc::dateNow('%d');\r\n        }\r\n        if ($month > 2) {\r\n            $month -= 2;\r\n        } else {\r\n            $month += 10;\r\n            $year--;\r\n        }\r\n\r\n        $day = (floor((13 * $month - 1) / 5) +\r\n                $day + ($year % 100) +\r\n                floor(($year % 100) / 4) +\r\n                floor(($year / 100) / 4) - 2 *\r\n                floor($year / 100) + 77);\r\n\r\n        $weekday_number = $day - 7 * floor($day / 7);\r\n        return $weekday_number;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ weekOfYear()\r\n\r\n    /**\r\n     * Returns week of the year, first Sunday is first day of first week\r\n     *\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     *\r\n     * @return int  the number of the week in the year\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function weekOfYear($day = 0, $month = 0, $year = 0)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if (empty($day)) {\r\n            $day = Date_Calc::dateNow('%d');\r\n        }\r\n        $iso    = Date_Calc::gregorianToISO($day, $month, $year);\r\n        $parts  = explode('-', $iso);\r\n        $week_number = intval($parts[1]);\r\n        return $week_number;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ quarterOfYear()\r\n\r\n    /**\r\n     * Returns quarter of the year for given date\r\n     *\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     *\r\n     * @return int  the number of the quarter in the year\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function quarterOfYear($day = 0, $month = 0, $year = 0)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if (empty($day)) {\r\n            $day = Date_Calc::dateNow('%d');\r\n        }\r\n        $year_quarter = intval(($month - 1) / 3 + 1);\r\n        return $year_quarter;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ daysInMonth()\r\n\r\n    /**\r\n     * Find the number of days in the given month\r\n     *\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     *\r\n     * @return int  the number of days the month has\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function daysInMonth($month = 0, $year = 0)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n\r\n        if ($year == 1582 && $month == 10) {\r\n            return 21;  // October 1582 only had 1st-4th and 15th-31st\r\n        }\r\n\r\n        if ($month == 2) {\r\n            if (Date_Calc::isLeapYear($year)) {\r\n                return 29;\r\n             } else {\r\n                return 28;\r\n            }\r\n        } elseif ($month == 4 or $month == 6 or $month == 9 or $month == 11) {\r\n            return 30;\r\n        } else {\r\n            return 31;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ weeksInMonth()\r\n\r\n    /**\r\n     * Returns the number of rows on a calendar month\r\n     *\r\n     * Useful for determining the number of rows when displaying a typical\r\n     * month calendar.\r\n     *\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     *\r\n     * @return int  the number of weeks the month has\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function weeksInMonth($month = 0, $year = 0)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        $FDOM = Date_Calc::firstOfMonthWeekday($month, $year);\r\n        if (DATE_CALC_BEGIN_WEEKDAY==1 && $FDOM==0) {\r\n            $first_week_days = 7 - $FDOM + DATE_CALC_BEGIN_WEEKDAY;\r\n            $weeks = 1;\r\n        } elseif (DATE_CALC_BEGIN_WEEKDAY==0 && $FDOM == 6) {\r\n            $first_week_days = 7 - $FDOM + DATE_CALC_BEGIN_WEEKDAY;\r\n            $weeks = 1;\r\n        } else {\r\n            $first_week_days = DATE_CALC_BEGIN_WEEKDAY - $FDOM;\r\n            $weeks = 0;\r\n        }\r\n        $first_week_days %= 7;\r\n        return ceil((Date_Calc::daysInMonth($month, $year)\r\n                     - $first_week_days) / 7) + $weeks;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getCalendarWeek()\r\n\r\n    /**\r\n     * Return an array with days in week\r\n     *\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return array $week[$weekday]\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function getCalendarWeek($day = 0, $month = 0, $year = 0,\r\n                             $format = DATE_CALC_FORMAT)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if (empty($day)) {\r\n            $day = Date_Calc::dateNow('%d');\r\n        }\r\n\r\n        $week_array = array();\r\n\r\n        // date for the column of week\r\n\r\n        $curr_day = Date_Calc::beginOfWeek($day, $month, $year,'%E');\r\n\r\n        for ($counter = 0; $counter <= 6; $counter++) {\r\n            $week_array[$counter] = Date_Calc::daysToDate($curr_day, $format);\r\n            $curr_day++;\r\n        }\r\n        return $week_array;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getCalendarMonth()\r\n\r\n    /**\r\n     * Return a set of arrays to construct a calendar month for the given date\r\n     *\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return array $month[$row][$col]\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function getCalendarMonth($month = 0, $year = 0,\r\n                              $format = DATE_CALC_FORMAT)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n\r\n        $month_array = array();\r\n\r\n        // date for the first row, first column of calendar month\r\n        if (DATE_CALC_BEGIN_WEEKDAY == 1) {\r\n            if (Date_Calc::firstOfMonthWeekday($month, $year) == 0) {\r\n                $curr_day = Date_Calc::dateToDays('01', $month, $year) - 6;\r\n            } else {\r\n                $curr_day = Date_Calc::dateToDays('01', $month, $year)\r\n                    - Date_Calc::firstOfMonthWeekday($month, $year) + 1;\r\n            }\r\n        } else {\r\n            $curr_day = (Date_Calc::dateToDays('01', $month, $year)\r\n                - Date_Calc::firstOfMonthWeekday($month, $year));\r\n        }\r\n\r\n        // number of days in this month\r\n        $daysInMonth = Date_Calc::daysInMonth($month, $year);\r\n\r\n        $weeksInMonth = Date_Calc::weeksInMonth($month, $year);\r\n        for ($row_counter = 0; $row_counter < $weeksInMonth; $row_counter++) {\r\n            for ($column_counter = 0; $column_counter <= 6; $column_counter++) {\r\n                $month_array[$row_counter][$column_counter] =\r\n                        Date_Calc::daysToDate($curr_day , $format);\r\n                $curr_day++;\r\n            }\r\n        }\r\n\r\n        return $month_array;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getCalendarYear()\r\n\r\n    /**\r\n     * Return a set of arrays to construct a calendar year for the given date\r\n     *\r\n     * @param int    $year    the year in four digit format, default current local year\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return array $year[$month][$row][$col]\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function getCalendarYear($year = 0, $format = DATE_CALC_FORMAT)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n\r\n        $year_array = array();\r\n\r\n        for ($curr_month = 0; $curr_month <= 11; $curr_month++) {\r\n            $year_array[$curr_month] =\r\n                    Date_Calc::getCalendarMonth($curr_month + 1,\r\n                                                $year, $format);\r\n        }\r\n\r\n        return $year_array;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ prevDay()\r\n\r\n    /**\r\n     * Returns date of day before given date\r\n     *\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return string  the date in the desired format\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function prevDay($day = 0, $month = 0, $year = 0,\r\n                     $format = DATE_CALC_FORMAT)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if (empty($day)) {\r\n            $day = Date_Calc::dateNow('%d');\r\n        }\r\n        $days = Date_Calc::dateToDays($day, $month, $year);\r\n        return Date_Calc::daysToDate($days - 1, $format);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ nextDay()\r\n\r\n    /**\r\n     * Returns date of day after given date\r\n     *\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return string  the date in the desired format\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function nextDay($day = 0, $month = 0, $year = 0,\r\n                     $format = DATE_CALC_FORMAT)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if (empty($day)) {\r\n            $day = Date_Calc::dateNow('%d');\r\n        }\r\n        $days = Date_Calc::dateToDays($day, $month, $year);\r\n        return Date_Calc::daysToDate($days + 1, $format);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ prevWeekday()\r\n\r\n    /**\r\n     * Returns date of the previous weekday, skipping from Monday to Friday\r\n     *\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return string  the date in the desired format\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function prevWeekday($day = 0, $month = 0, $year = 0,\r\n                         $format = DATE_CALC_FORMAT)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if (empty($day)) {\r\n            $day = Date_Calc::dateNow('%d');\r\n        }\r\n        $days = Date_Calc::dateToDays($day, $month, $year);\r\n        if (Date_Calc::dayOfWeek($day, $month, $year) == 1) {\r\n            $days -= 3;\r\n        } elseif (Date_Calc::dayOfWeek($day, $month, $year) == 0) {\r\n            $days -= 2;\r\n        } else {\r\n            $days -= 1;\r\n        }\r\n        return Date_Calc::daysToDate($days, $format);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ nextWeekday()\r\n\r\n    /**\r\n     * Returns date of the next weekday of given date, skipping from\r\n     * Friday to Monday\r\n     *\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return string  the date in the desired format\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function nextWeekday($day = 0, $month = 0, $year = 0,\r\n                         $format = DATE_CALC_FORMAT)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if (empty($day)) {\r\n            $day = Date_Calc::dateNow('%d');\r\n        }\r\n        $days = Date_Calc::dateToDays($day, $month, $year);\r\n        if (Date_Calc::dayOfWeek($day, $month, $year) == 5) {\r\n            $days += 3;\r\n        } elseif (Date_Calc::dayOfWeek($day, $month, $year) == 6) {\r\n            $days += 2;\r\n        } else {\r\n            $days += 1;\r\n        }\r\n        return Date_Calc::daysToDate($days, $format);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ prevDayOfWeek()\r\n\r\n    /**\r\n     * Returns date of the previous specific day of the week\r\n     * from the given date\r\n     *\r\n     * @param int day of week, 0=Sunday\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     * @param bool   $onOrBefore  if true and days are same, returns current day\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return string  the date in the desired format\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function prevDayOfWeek($dow, $day = 0, $month = 0, $year = 0,\r\n                           $format = DATE_CALC_FORMAT, $onOrBefore = false)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if (empty($day)) {\r\n            $day = Date_Calc::dateNow('%d');\r\n        }\r\n        $days = Date_Calc::dateToDays($day, $month, $year);\r\n        $curr_weekday = Date_Calc::dayOfWeek($day, $month, $year);\r\n        if ($curr_weekday == $dow) {\r\n            if (!$onOrBefore) {\r\n                $days -= 7;\r\n            }\r\n        } elseif ($curr_weekday < $dow) {\r\n            $days -= 7 - ($dow - $curr_weekday);\r\n        } else {\r\n            $days -= $curr_weekday - $dow;\r\n        }\r\n        return Date_Calc::daysToDate($days, $format);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ nextDayOfWeek()\r\n\r\n    /**\r\n     * Returns date of the next specific day of the week\r\n     * from the given date\r\n     *\r\n     * @param int    $dow     the day of the week (0 = Sunday)\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     * @param bool   $onOrAfter  if true and days are same, returns current day\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return string  the date in the desired format\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function nextDayOfWeek($dow, $day = 0, $month = 0, $year = 0,\r\n                           $format = DATE_CALC_FORMAT, $onOrAfter = false)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if (empty($day)) {\r\n            $day = Date_Calc::dateNow('%d');\r\n        }\r\n\r\n        $days = Date_Calc::dateToDays($day, $month, $year);\r\n        $curr_weekday = Date_Calc::dayOfWeek($day, $month, $year);\r\n\r\n        if ($curr_weekday == $dow) {\r\n            if (!$onOrAfter) {\r\n                $days += 7;\r\n            }\r\n        } elseif ($curr_weekday > $dow) {\r\n            $days += 7 - ($curr_weekday - $dow);\r\n        } else {\r\n            $days += $dow - $curr_weekday;\r\n        }\r\n\r\n        return Date_Calc::daysToDate($days, $format);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ prevDayOfWeekOnOrBefore()\r\n\r\n    /**\r\n     * Returns date of the previous specific day of the week\r\n     * on or before the given date\r\n     *\r\n     * @param int    $dow     the day of the week (0 = Sunday)\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return string  the date in the desired format\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function prevDayOfWeekOnOrBefore($dow, $day = 0, $month = 0, $year = 0,\r\n                                     $format = DATE_CALC_FORMAT)\r\n    {\r\n        return Date_Calc::prevDayOfWeek($dow, $day, $month, $year, $format,\r\n                                        true);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ nextDayOfWeekOnOrAfter()\r\n\r\n    /**\r\n     * Returns date of the next specific day of the week\r\n     * on or after the given date\r\n     *\r\n     * @param int    $dow     the day of the week (0 = Sunday)\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return string  the date in the desired format\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function nextDayOfWeekOnOrAfter($dow, $day = 0, $month = 0, $year = 0,\r\n                                    $format = DATE_CALC_FORMAT)\r\n    {\r\n        return Date_Calc::nextDayOfWeek($dow, $day, $month, $year, $format,\r\n                                        true);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ beginOfWeek()\r\n\r\n    /**\r\n     * Find the month day of the beginning of week for given date,\r\n     * using DATE_CALC_BEGIN_WEEKDAY\r\n     *\r\n     * Can return weekday of prev month.\r\n     *\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return string  the date in the desired format\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function beginOfWeek($day = 0, $month = 0, $year = 0,\r\n                         $format = DATE_CALC_FORMAT)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if (empty($day)) {\r\n            $day = Date_Calc::dateNow('%d');\r\n        }\r\n        $this_weekday = Date_Calc::dayOfWeek($day, $month, $year);\r\n        $interval = (7 - DATE_CALC_BEGIN_WEEKDAY + $this_weekday) % 7;\r\n        return Date_Calc::daysToDate(Date_Calc::dateToDays($day, $month, $year)\r\n                                     - $interval, $format);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ endOfWeek()\r\n\r\n    /**\r\n     * Find the month day of the end of week for given date,\r\n     * using DATE_CALC_BEGIN_WEEKDAY\r\n     *\r\n     * Can return weekday of following month.\r\n     *\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return string  the date in the desired format\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function endOfWeek($day = 0, $month = 0, $year = 0,\r\n                       $format = DATE_CALC_FORMAT)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if (empty($day)) {\r\n            $day = Date_Calc::dateNow('%d');\r\n        }\r\n        $this_weekday = Date_Calc::dayOfWeek($day, $month, $year);\r\n        $interval = (6 + DATE_CALC_BEGIN_WEEKDAY - $this_weekday) % 7;\r\n        return Date_Calc::daysToDate(Date_Calc::dateToDays($day, $month, $year)\r\n                                     + $interval, $format);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ beginOfPrevWeek()\r\n\r\n    /**\r\n     * Find the month day of the beginning of week before given date,\r\n     * using DATE_CALC_BEGIN_WEEKDAY\r\n     *\r\n     * Can return weekday of prev month.\r\n     *\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return string  the date in the desired format\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function beginOfPrevWeek($day = 0, $month = 0, $year = 0,\r\n                             $format = DATE_CALC_FORMAT)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if (empty($day)) {\r\n            $day = Date_Calc::dateNow('%d');\r\n        }\r\n\r\n        $date = Date_Calc::daysToDate(Date_Calc::dateToDays($day-7,\r\n                                                            $month,\r\n                                                            $year),\r\n                                      '%Y%m%d');\r\n\r\n        $prev_week_year  = substr($date, 0, 4);\r\n        $prev_week_month = substr($date, 4, 2);\r\n        $prev_week_day   = substr($date, 6, 2);\r\n\r\n        return Date_Calc::beginOfWeek($prev_week_day, $prev_week_month,\r\n                                      $prev_week_year, $format);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ beginOfNextWeek()\r\n\r\n    /**\r\n     * Find the month day of the beginning of week after given date,\r\n     * using DATE_CALC_BEGIN_WEEKDAY\r\n     *\r\n     * Can return weekday of prev month.\r\n     *\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return string  the date in the desired format\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function beginOfNextWeek($day = 0, $month = 0, $year = 0,\r\n                             $format = DATE_CALC_FORMAT)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if (empty($day)) {\r\n            $day = Date_Calc::dateNow('%d');\r\n        }\r\n\r\n        $date = Date_Calc::daysToDate(Date_Calc::dateToDays($day + 7,\r\n                                                            $month,\r\n                                                            $year),\r\n                                      '%Y%m%d');\r\n\r\n        $next_week_year  = substr($date, 0, 4);\r\n        $next_week_month = substr($date, 4, 2);\r\n        $next_week_day   = substr($date, 6, 2);\r\n\r\n        return Date_Calc::beginOfWeek($next_week_day, $next_week_month,\r\n                                      $next_week_year, $format);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ beginOfMonth()\r\n\r\n    /**\r\n     * Return date of first day of month of given date\r\n     *\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return string  the date in the desired format\r\n     *\r\n     * @access public\r\n     * @static\r\n     * @see Date_Calc::beginOfMonthBySpan()\r\n     * @deprecated Method deprecated in Release 1.4.4\r\n     */\r\n    function beginOfMonth($month = 0, $year = 0, $format = DATE_CALC_FORMAT)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        return Date_Calc::dateFormat('01', $month, $year, $format);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ beginOfPrevMonth()\r\n\r\n    /**\r\n     * Returns date of the first day of previous month of given date\r\n     *\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return string  the date in the desired format\r\n     *\r\n     * @access public\r\n     * @static\r\n     * @see Date_Calc::beginOfMonthBySpan()\r\n     * @deprecated Method deprecated in Release 1.4.4\r\n     */\r\n    function beginOfPrevMonth($day = 0, $month = 0, $year = 0,\r\n                              $format = DATE_CALC_FORMAT)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if (empty($day)) {\r\n            $day = Date_Calc::dateNow('%d');\r\n        }\r\n        if ($month > 1) {\r\n            $month--;\r\n            $day = 1;\r\n        } else {\r\n            $year--;\r\n            $month = 12;\r\n            $day   = 1;\r\n        }\r\n        return Date_Calc::dateFormat($day, $month, $year, $format);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ endOfPrevMonth()\r\n\r\n    /**\r\n     * Returns date of the last day of previous month for given date\r\n     *\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return string  the date in the desired format\r\n     *\r\n     * @access public\r\n     * @static\r\n     * @see Date_Calc::endOfMonthBySpan()\r\n     * @deprecated Method deprecated in Release 1.4.4\r\n     */\r\n    function endOfPrevMonth($day = 0, $month = 0, $year = 0,\r\n                            $format = DATE_CALC_FORMAT)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if (empty($day)) {\r\n            $day = Date_Calc::dateNow('%d');\r\n        }\r\n        if ($month > 1) {\r\n            $month--;\r\n        } else {\r\n            $year--;\r\n            $month = 12;\r\n        }\r\n        $day = Date_Calc::daysInMonth($month, $year);\r\n        return Date_Calc::dateFormat($day, $month, $year, $format);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ beginOfNextMonth()\r\n\r\n    /**\r\n     * Returns date of begin of next month of given date\r\n     *\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return string  the date in the desired format\r\n     *\r\n     * @access public\r\n     * @static\r\n     * @see Date_Calc::beginOfMonthBySpan()\r\n     * @deprecated Method deprecated in Release 1.4.4\r\n     */\r\n    function beginOfNextMonth($day = 0, $month = 0, $year = 0,\r\n                              $format = DATE_CALC_FORMAT)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if (empty($day)) {\r\n            $day = Date_Calc::dateNow('%d');\r\n        }\r\n        if ($month < 12) {\r\n            $month++;\r\n            $day = 1;\r\n        } else {\r\n            $year++;\r\n            $month = 1;\r\n            $day = 1;\r\n        }\r\n        return Date_Calc::dateFormat($day, $month, $year, $format);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ endOfNextMonth()\r\n\r\n    /**\r\n     * Returns date of the last day of next month of given date\r\n     *\r\n     * @param int    $day     the day of the month, default is current local day\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return string  the date in the desired format\r\n     *\r\n     * @access public\r\n     * @static\r\n     * @see Date_Calc::endOfMonthBySpan()\r\n     * @deprecated Method deprecated in Release 1.4.4\r\n     */\r\n    function endOfNextMonth($day = 0, $month = 0, $year = 0,\r\n                            $format = DATE_CALC_FORMAT)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if (empty($day)) {\r\n            $day = Date_Calc::dateNow('%d');\r\n        }\r\n        if ($month < 12) {\r\n            $month++;\r\n        } else {\r\n            $year++;\r\n            $month = 1;\r\n        }\r\n        $day = Date_Calc::daysInMonth($month, $year);\r\n        return Date_Calc::dateFormat($day, $month, $year, $format);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ beginOfMonthBySpan()\r\n\r\n    /**\r\n     * Returns date of the first day of the month in the number of months\r\n     * from the given date\r\n     *\r\n     * @param int    $months  the number of months from the date provided.\r\n     *                         Positive numbers go into the future.\r\n     *                         Negative numbers go into the past.\r\n     *                         0 is the month presented in $month.\r\n     * @param string $month   the month, default is current local month\r\n     * @param string $year    the year in four digit format, default is the\r\n     *                         current local year\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return string  the date in the desired format\r\n     *\r\n     * @access public\r\n     * @static\r\n     * @since  Method available since Release 1.4.4\r\n     */\r\n    function beginOfMonthBySpan($months = 0, $month = 0, $year = 0,\r\n                                $format = DATE_CALC_FORMAT)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if ($months > 0) {\r\n            // future month\r\n            $tmp_mo = $month + $months;\r\n            $month  = $tmp_mo % 12;\r\n            if ($month == 0) {\r\n                $month = 12;\r\n                $year = $year + floor(($tmp_mo - 1) / 12);\r\n            } else {\r\n                $year = $year + floor($tmp_mo / 12);\r\n            }\r\n        } else {\r\n            // past or present month\r\n            $tmp_mo = $month + $months;\r\n            if ($tmp_mo > 0) {\r\n                // same year\r\n                $month = $tmp_mo;\r\n            } elseif ($tmp_mo == 0) {\r\n                // prior dec\r\n                $month = 12;\r\n                $year--;\r\n            } else {\r\n                // some time in a prior year\r\n                $month = 12 + ($tmp_mo % 12);\r\n                $year  = $year + floor($tmp_mo / 12);\r\n            }\r\n        }\r\n        return Date_Calc::dateFormat(1, $month, $year, $format);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ endOfMonthBySpan()\r\n\r\n    /**\r\n     * Returns date of the last day of the month in the number of months\r\n     * from the given date\r\n     *\r\n     * @param int    $months  the number of months from the date provided.\r\n     *                         Positive numbers go into the future.\r\n     *                         Negative numbers go into the past.\r\n     *                         0 is the month presented in $month.\r\n     * @param string $month   the month, default is current local month\r\n     * @param string $year    the year in four digit format, default is the\r\n     *                         current local year\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return string  the date in the desired format\r\n     *\r\n     * @access public\r\n     * @static\r\n     * @since  Method available since Release 1.4.4\r\n     */\r\n    function endOfMonthBySpan($months = 0, $month = 0, $year = 0,\r\n                              $format = DATE_CALC_FORMAT)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        if ($months > 0) {\r\n            // future month\r\n            $tmp_mo = $month + $months;\r\n            $month  = $tmp_mo % 12;\r\n            if ($month == 0) {\r\n                $month = 12;\r\n                $year = $year + floor(($tmp_mo - 1) / 12);\r\n            } else {\r\n                $year = $year + floor($tmp_mo / 12);\r\n            }\r\n        } else {\r\n            // past or present month\r\n            $tmp_mo = $month + $months;\r\n            if ($tmp_mo > 0) {\r\n                // same year\r\n                $month = $tmp_mo;\r\n            } elseif ($tmp_mo == 0) {\r\n                // prior dec\r\n                $month = 12;\r\n                $year--;\r\n            } else {\r\n                // some time in a prior year\r\n                $month = 12 + ($tmp_mo % 12);\r\n                $year  = $year + floor($tmp_mo / 12);\r\n            }\r\n        }\r\n        return Date_Calc::dateFormat(Date_Calc::daysInMonth($month, $year),\r\n                                     $month, $year, $format);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ firstOfMonthWeekday()\r\n\r\n    /**\r\n     * Find the day of the week for the first of the month of given date\r\n     *\r\n     * @param int    $month   the month, default is current local month\r\n     * @param int    $year    the year in four digit format, default is current local year\r\n     *\r\n     * @return int number of weekday for the first day, 0=Sunday\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function firstOfMonthWeekday($month = 0, $year = 0)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (empty($month)) {\r\n            $month = Date_Calc::dateNow('%m');\r\n        }\r\n        return Date_Calc::dayOfWeek('01', $month, $year);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ NWeekdayOfMonth()\r\n\r\n    /**\r\n     * Calculates the date of the Nth weekday of the month,\r\n     * such as the second Saturday of January 2000\r\n     *\r\n     * @param int    $week    the number of the week to get\r\n     *                         (1 = first, etc.  Also can be 'last'.)\r\n     * @param int    $dow     the day of the week (0 = Sunday)\r\n     * @param int    $month   the month\r\n     * @param int    $year    the year.  Use the complete year instead of the\r\n     *                         abbreviated version.  E.g. use 2005, not 05.\r\n     *                         Do not add leading 0's for years prior to 1000.\r\n     * @param string $format  the string indicating how to format the output\r\n     *\r\n     * @return string  the date in the desired format\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function NWeekdayOfMonth($week, $dow, $month, $year,\r\n                             $format = DATE_CALC_FORMAT)\r\n    {\r\n        if (is_numeric($week)) {\r\n            $DOW1day = ($week - 1) * 7 + 1;\r\n            $DOW1    = Date_Calc::dayOfWeek($DOW1day, $month, $year);\r\n            $wdate   = ($week - 1) * 7 + 1 + (7 + $dow - $DOW1) % 7;\r\n            if ($wdate > Date_Calc::daysInMonth($month, $year)) {\r\n                return -1;\r\n            } else {\r\n                return Date_Calc::dateFormat($wdate, $month, $year, $format);\r\n            }\r\n        } elseif ($week == 'last' && $dow < 7) {\r\n            $lastday = Date_Calc::daysInMonth($month, $year);\r\n            $lastdow = Date_Calc::dayOfWeek($lastday, $month, $year);\r\n            $diff    = $dow - $lastdow;\r\n            if ($diff > 0) {\r\n                return Date_Calc::dateFormat($lastday - (7 - $diff), $month,\r\n                                             $year, $format);\r\n            } else {\r\n                return Date_Calc::dateFormat($lastday + $diff, $month,\r\n                                             $year, $format);\r\n            }\r\n        } else {\r\n            return -1;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ isValidDate()\r\n\r\n    /**\r\n     * Returns true for valid date, false for invalid date\r\n     *\r\n     * @param int    $day     the day of the month\r\n     * @param int    $month   the month\r\n     * @param int    $year    the year.  Use the complete year instead of the\r\n     *                         abbreviated version.  E.g. use 2005, not 05.\r\n     *                         Do not add leading 0's for years prior to 1000.\r\n     *\r\n     * @return boolean\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function isValidDate($day, $month, $year)\r\n    {\r\n        if ($year < 0 || $year > 9999) {\r\n            return false;\r\n        }\r\n        if (!checkdate($month, $day, $year)) {\r\n            return false;\r\n        }\r\n        return true;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ isLeapYear()\r\n\r\n    /**\r\n     * Returns true for a leap year, else false\r\n     *\r\n     * @param int    $year    the year.  Use the complete year instead of the\r\n     *                         abbreviated version.  E.g. use 2005, not 05.\r\n     *                         Do not add leading 0's for years prior to 1000.\r\n     *\r\n     * @return boolean\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function isLeapYear($year = 0)\r\n    {\r\n        if (empty($year)) {\r\n            $year = Date_Calc::dateNow('%Y');\r\n        }\r\n        if (preg_match('/\\D/', $year)) {\r\n            return false;\r\n        }\r\n        if ($year < 1000) {\r\n            return false;\r\n        }\r\n        if ($year < 1582) {\r\n            // pre Gregorio XIII - 1582\r\n            return ($year % 4 == 0);\r\n        } else {\r\n            // post Gregorio XIII - 1582\r\n            return (($year % 4 == 0) && ($year % 100 != 0)) || ($year % 400 == 0);\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ isFutureDate()\r\n\r\n    /**\r\n     * Determines if given date is a future date from now\r\n     *\r\n     * @param int    $day     the day of the month\r\n     * @param int    $month   the month\r\n     * @param int    $year    the year.  Use the complete year instead of the\r\n     *                         abbreviated version.  E.g. use 2005, not 05.\r\n     *                         Do not add leading 0's for years prior to 1000.\r\n     *\r\n     * @return boolean\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function isFutureDate($day, $month, $year)\r\n    {\r\n        $this_year  = Date_Calc::dateNow('%Y');\r\n        $this_month = Date_Calc::dateNow('%m');\r\n        $this_day   = Date_Calc::dateNow('%d');\r\n\r\n        if ($year > $this_year) {\r\n            return true;\r\n        } elseif ($year == $this_year) {\r\n            if ($month > $this_month) {\r\n                return true;\r\n            } elseif ($month == $this_month) {\r\n                if ($day > $this_day) {\r\n                    return true;\r\n                }\r\n            }\r\n        }\r\n        return false;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ isPastDate()\r\n\r\n    /**\r\n     * Determines if given date is a past date from now\r\n     *\r\n     * @param int    $day     the day of the month\r\n     * @param int    $month   the month\r\n     * @param int    $year    the year.  Use the complete year instead of the\r\n     *                         abbreviated version.  E.g. use 2005, not 05.\r\n     *                         Do not add leading 0's for years prior to 1000.\r\n     *\r\n     * @return boolean\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function isPastDate($day, $month, $year)\r\n    {\r\n        $this_year  = Date_Calc::dateNow('%Y');\r\n        $this_month = Date_Calc::dateNow('%m');\r\n        $this_day   = Date_Calc::dateNow('%d');\r\n\r\n        if ($year < $this_year) {\r\n            return true;\r\n        } elseif ($year == $this_year) {\r\n            if ($month < $this_month) {\r\n                return true;\r\n            } elseif ($month == $this_month) {\r\n                if ($day < $this_day) {\r\n                    return true;\r\n                }\r\n            }\r\n        }\r\n        return false;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ dateDiff()\r\n\r\n    /**\r\n     * Returns number of days between two given dates\r\n     *\r\n     * @param int    $day1    the day of the month\r\n     * @param int    $month1  the month\r\n     * @param int    $year1   the year.  Use the complete year instead of the\r\n     *                         abbreviated version.  E.g. use 2005, not 05.\r\n     *                         Do not add leading 0's for years prior to 1000.\r\n     * @param int    $day2    the day of the month\r\n     * @param int    $month2  the month\r\n     * @param int    $year2   the year.  Use the complete year instead of the\r\n     *                         abbreviated version.  E.g. use 2005, not 05.\r\n     *                         Do not add leading 0's for years prior to 1000.\r\n     *\r\n     * @return int  the absolute number of days between the two dates.\r\n     *               If an error occurs, -1 is returned.\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function dateDiff($day1, $month1, $year1, $day2, $month2, $year2)\r\n    {\r\n        if (!Date_Calc::isValidDate($day1, $month1, $year1)) {\r\n            return -1;\r\n        }\r\n        if (!Date_Calc::isValidDate($day2, $month2, $year2)) {\r\n            return -1;\r\n        }\r\n        return abs(Date_Calc::dateToDays($day1, $month1, $year1)\r\n                   - Date_Calc::dateToDays($day2, $month2, $year2));\r\n    }\r\n\r\n    // }}}\r\n    // {{{ compareDates()\r\n\r\n    /**\r\n     * Compares two dates\r\n     *\r\n     * @param int    $day1    the day of the month\r\n     * @param int    $month1  the month\r\n     * @param int    $year1   the year.  Use the complete year instead of the\r\n     *                         abbreviated version.  E.g. use 2005, not 05.\r\n     *                         Do not add leading 0's for years prior to 1000.\r\n     * @param int    $day2    the day of the month\r\n     * @param int    $month2  the month\r\n     * @param int    $year2   the year.  Use the complete year instead of the\r\n     *                         abbreviated version.  E.g. use 2005, not 05.\r\n     *                         Do not add leading 0's for years prior to 1000.\r\n     *\r\n     * @return int  0 if the dates are equal. 1 if date 1 is later, -1 if\r\n     *               date 1 is earlier.\r\n     *\r\n     * @access public\r\n     * @static\r\n     */\r\n    function compareDates($day1, $month1, $year1, $day2, $month2, $year2)\r\n    {\r\n        $ndays1 = Date_Calc::dateToDays($day1, $month1, $year1);\r\n        $ndays2 = Date_Calc::dateToDays($day2, $month2, $year2);\r\n        if ($ndays1 == $ndays2) {\r\n            return 0;\r\n        }\r\n        return ($ndays1 > $ndays2) ? 1 : -1;\r\n    }\r\n\r\n    // }}}\r\n}\r\n\r\n// }}}\r\n\r\n/*\r\n * Local variables:\r\n * mode: php\r\n * tab-width: 4\r\n * c-basic-offset: 4\r\n * c-hanging-comment-ender-p: nil\r\n * End:\r\n */\r\n?>"
  },
  {
    "path": "newscoop/include/Date/Human.php",
    "content": "<?php\r\n/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4 foldmethod=marker: */\r\n\r\n// {{{ Header\r\n\r\n/**\r\n * Class to convert date strings between Gregorian and Human calendar formats\r\n *\r\n * The Human Calendar format has been proposed by Scott Flansburg and can be\r\n * explained as follows:\r\n *  The year is made up of 13 months\r\n *  Each month has 28 days\r\n *  Counting of months starts from 0 (zero) so the months will run from 0 to 12\r\n *  New Years day (00) is a monthless day\r\n *  Note: Leap Years are not yet accounted for in the Human Calendar system\r\n *\r\n * PHP versions 4 and 5\r\n *\r\n * LICENSE:\r\n *\r\n * Copyright (c) 1997-2006 Allan Kent\r\n * All rights reserved.\r\n *\r\n * Redistribution and use in source and binary forms, with or without\r\n * modification, are permitted under the terms of the BSD License.\r\n *\r\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\r\n * \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\r\n * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS\r\n * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE\r\n * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,\r\n * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,\r\n * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\r\n * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\r\n * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT\r\n * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN\r\n * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE\r\n * POSSIBILITY OF SUCH DAMAGE.\r\n *\r\n * @category   Date and Time\r\n * @package    Date\r\n * @author     Allan Kent <allan@lodestone.co.za>\r\n * @copyright  1997-2006 Allan Kent\r\n * @license    http://www.opensource.org/licenses/bsd-license.php\r\n *             BSD License\r\n * @version    CVS: $Id: Human.php,v 1.6 2006/11/21 17:38:15 firman Exp $\r\n * @link       http://pear.php.net/package/Date\r\n * @since      File available since Release 1.3\r\n */\r\n\r\n// }}}\r\n// {{{ Class: Date_Human\r\n\r\n/**\r\n * Class to convert date strings between Gregorian and Human calendar formats\r\n *\r\n * The Human Calendar format has been proposed by Scott Flansburg and can be\r\n * explained as follows:\r\n *  The year is made up of 13 months\r\n *  Each month has 28 days\r\n *  Counting of months starts from 0 (zero) so the months will run from 0 to 12\r\n *  New Years day (00) is a monthless day\r\n *  Note: Leap Years are not yet accounted for in the Human Calendar system\r\n *\r\n * @author     Allan Kent <allan@lodestone.co.za>\r\n * @copyright  1997-2005 Allan Kent\r\n * @license    http://www.opensource.org/licenses/bsd-license.php\r\n *             BSD License\r\n * @version    Release: 1.4.7\r\n * @link       http://pear.php.net/package/Date\r\n * @since      Class available since Release 1.3\r\n */\r\nclass Date_Human\r\n{\r\n    // {{{ gregorianToHuman()\r\n\r\n    /**\r\n     * Returns an associative array containing the converted date information\r\n     * in 'Human Calendar' format.\r\n     *\r\n     * @param int day in DD format, default current local day\r\n     * @param int month in MM format, default current local month\r\n     * @param int year in CCYY format, default to current local year\r\n     *\r\n     * @access public\r\n     *\r\n     * @return associative array(\r\n     *               hdom,       // Human Day Of Month, starting at 1\r\n     *               hdow,       // Human Day Of Week, starting at 1\r\n     *               hwom,       // Human Week of Month, starting at 1\r\n     *               hwoy,       // Human Week of Year, starting at 1\r\n     *               hmoy,       // Human Month of Year, starting at 0\r\n     *               )\r\n     *\r\n     * If the day is New Years Day, the function will return\r\n     * \"hdom\" =>  0\r\n     * \"hdow\" =>  0\r\n     * \"hwom\" =>  0\r\n     * \"hwoy\" =>  0\r\n     * \"hmoy\" => -1\r\n     *  Since 0 is a valid month number under the Human Calendar, I have left\r\n     *  the month as -1 for New Years Day.\r\n     */\r\n    function gregorianToHuman($day=0, $month=0, $year=0)\r\n    {\r\n        /*\r\n         * Check to see if any of the arguments are empty\r\n         * If they are then populate the $dateinfo array\r\n         * Then check to see which arguments are empty and fill\r\n         * those with the current date info\r\n         */\r\n        if ((empty($day) || (empty($month)) || empty($year))) {\r\n            $dateinfo = getdate(time());\r\n        }\r\n        if (empty($day)) {\r\n            $day = $dateinfo[\"mday\"];\r\n        }\r\n        if (empty($month)) {\r\n            $month = $dateinfo[\"mon\"];\r\n        }\r\n        if (empty($year)) {\r\n            $year = $dateinfo[\"year\"];\r\n        }\r\n        /*\r\n         * We need to know how many days into the year we are\r\n         */\r\n        $dateinfo = getdate(mktime(0, 0, 0, $month, $day, $year));\r\n        $dayofyear = $dateinfo[\"yday\"];\r\n        /*\r\n         * Human Calendar starts at 0 for months and the first day of the year\r\n         * is designated 00, so we need to start our day of the year at 0 for\r\n         * these calculations.\r\n         * Also, the day of the month is calculated with a modulus of 28.\r\n         * Because a day is 28 days, the last day of the month would have a\r\n         * remainder of 0 and not 28 as it should be.  Decrementing $dayofyear\r\n         * gets around this.\r\n         */\r\n        $dayofyear--;\r\n        /*\r\n         * 28 days in a month...\r\n         */\r\n        $humanMonthOfYear = floor($dayofyear / 28);\r\n        /*\r\n         * If we are in the first month then the day of the month is $dayofyear\r\n         * else we need to find the modulus of 28.\r\n         */\r\n        if ($humanMonthOfYear == 0) {\r\n            $humanDayOfMonth = $dayofyear;\r\n        } else {\r\n            $humanDayOfMonth = ($dayofyear) % 28;\r\n        }\r\n        /*\r\n         * Day of the week is modulus 7\r\n         */\r\n        $humanDayOfWeek = $dayofyear % 7;\r\n        /*\r\n         * We can now increment $dayofyear back to it's correct value for\r\n         * the remainder of the calculations\r\n         */\r\n        $dayofyear++;\r\n        /*\r\n         * $humanDayOfMonth needs to be incremented now - recall that we fudged\r\n         * it a bit by decrementing $dayofyear earlier\r\n         * Same goes for $humanDayOfWeek\r\n         */\r\n        $humanDayOfMonth++;\r\n        $humanDayOfWeek++;\r\n        /*\r\n         * Week of the month is day of the month divided by 7, rounded up\r\n         * Same for week of the year, but use $dayofyear instead $humanDayOfMonth\r\n         */\r\n        $humanWeekOfMonth = ceil($humanDayOfMonth / 7);\r\n        $humanWeekOfYear = ceil($dayofyear / 7);\r\n        /*\r\n         * Return an associative array of the values\r\n         */\r\n        return array(\r\n                     \"hdom\" => $humanDayOfMonth,\r\n                     \"hdow\" => $humanDayOfWeek,\r\n                     \"hwom\" => $humanWeekOfMonth,\r\n                     \"hwoy\" => $humanWeekOfYear,\r\n                     \"hmoy\" => $humanMonthOfYear );\r\n    }\r\n\r\n    // }}}\r\n    // {{{ humanToGregorian()\r\n\r\n    /**\r\n     * Returns unix timestamp for a given Human Calendar date\r\n     *\r\n     * @param int day in DD format\r\n     * @param int month in MM format\r\n     * @param int year in CCYY format, default to current local year\r\n     *\r\n     * @access public\r\n     *\r\n     * @return int unix timestamp of date\r\n     */\r\n    function humanToGregorian($day, $month, $year=0)\r\n    {\r\n        /*\r\n         * Check to see if the year has been passed through.\r\n         * If not get current year\r\n         */\r\n        if (empty($year)) {\r\n            $dateinfo = getdate(time());\r\n            $year = $dateinfo[\"year\"];\r\n        }\r\n        /*\r\n         * We need to get the day of the year that we are currently at so that\r\n         * we can work out the Gregorian Month and day\r\n         */\r\n        $DayOfYear = $month * 28;\r\n        $DayOfYear += $day;\r\n        /*\r\n         * Human Calendar starts at 0, so we need to increment $DayOfYear\r\n         * to take into account the day 00\r\n         */\r\n        $DayOfYear++;\r\n        /*\r\n         * the mktime() function will correctly calculate the date for out of\r\n         * range values, so putting $DayOfYear instead of the day of the month\r\n         * will work fine.\r\n         */\r\n        $GregorianTimeStamp = mktime(0, 0, 0, 1, $DayOfYear, $year);\r\n        return $GregorianTimeStamp;\r\n    }\r\n\r\n    // }}}\r\n}\r\n\r\n// }}}\r\n\r\n/*\r\n * Local variables:\r\n * mode: php\r\n * tab-width: 4\r\n * c-basic-offset: 4\r\n * c-hanging-comment-ender-p: nil\r\n * End:\r\n */\r\n?>"
  },
  {
    "path": "newscoop/include/Date/Span.php",
    "content": "<?php\r\n/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4 foldmethod=marker: */\r\n\r\n// {{{ Header\r\n\r\n/**\r\n * Generic time span handling class for PEAR\r\n *\r\n * PHP versions 4 and 5\r\n *\r\n * LICENSE:\r\n *\r\n * Copyright (c) 1997-2005 Leandro Lucarella, Pierre-Alain Joye\r\n * All rights reserved.\r\n *\r\n * Redistribution and use in source and binary forms, with or without\r\n * modification, are permitted under the terms of the BSD License.\r\n *\r\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\r\n * \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\r\n * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS\r\n * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE\r\n * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,\r\n * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,\r\n * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\r\n * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\r\n * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT\r\n * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN\r\n * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE\r\n * POSSIBILITY OF SUCH DAMAGE.\r\n *\r\n * @category   Date and Time\r\n * @package    Date\r\n * @author     Leandro Lucarella <llucax@php.net>\r\n * @author     Pierre-Alain Joye <pajoye@php.net>\r\n * @copyright  1997-2006 Leandro Lucarella, Pierre-Alain Joye\r\n * @license    http://www.opensource.org/licenses/bsd-license.php\r\n *             BSD License\r\n * @version    CVS: $Id: Span.php,v 1.9 2006/11/21 17:38:15 firman Exp $\r\n * @link       http://pear.php.net/package/Date\r\n * @since      File available since Release 1.4\r\n */\r\n\r\n// }}}\r\n// {{{ Includes\r\n\r\n/**\r\n * Get the Date class\r\n */\r\nrequire_once 'Date.php';\r\n\r\n/**\r\n * Get the Date_Calc class\r\n */\r\nrequire_once 'Date/Calc.php';\r\n\r\n// }}}\r\n// {{{ Constants\r\n\r\n/**\r\n * Non Numeric Separated Values (NNSV) Input Format.\r\n *\r\n * Input format guessed from something like this:\r\n * days<sep>hours<sep>minutes<sep>seconds\r\n * Where <sep> is any quantity of non numeric chars. If no values are\r\n * given, time span is set to zero, if one value is given, it's used for\r\n * hours, if two values are given it's used for hours and minutes and if\r\n * three values are given, it's used for hours, minutes and seconds.<br>\r\n * Examples:<br>\r\n * ''                   -> 0, 0, 0, 0 (days, hours, minutes, seconds)<br>\r\n * '12'                 -> 0, 12, 0, 0\r\n * '12.30'              -> 0, 12, 30, 0<br>\r\n * '12:30:18'           -> 0, 12, 30, 18<br>\r\n * '3-12-30-18'         -> 3, 12, 30, 18<br>\r\n * '3 days, 12-30-18'   -> 3, 12, 30, 18<br>\r\n * '12:30 with 18 secs' -> 0, 12, 30, 18<br>\r\n *\r\n * @const int\r\n */\r\ndefine('DATE_SPAN_INPUT_FORMAT_NNSV', 1);\r\n\r\n// }}}\r\n// {{{ Global Variables\r\n\r\n/**\r\n * Default time format when converting to a string.\r\n *\r\n * @global string\r\n */\r\n$GLOBALS['_DATE_SPAN_FORMAT']  = '%C';\r\n\r\n/**\r\n * Default time format when converting from a string.\r\n *\r\n * @global mixed\r\n */\r\n$GLOBALS['_DATE_SPAN_INPUT_FORMAT'] = DATE_SPAN_INPUT_FORMAT_NNSV;\r\n\r\n// }}}\r\n// {{{ Class: Date_Span\r\n\r\n/**\r\n * Generic time span handling class for PEAR\r\n *\r\n * @author     Leandro Lucarella <llucax@php.net>\r\n * @author     Pierre-Alain Joye <pajoye@php.net>\r\n * @copyright  1997-2006 Leandro Lucarella, Pierre-Alain Joye\r\n * @license    http://www.opensource.org/licenses/bsd-license.php\r\n *             BSD License\r\n * @version    Release: 1.4.7\r\n * @link       http://pear.php.net/package/Date\r\n * @since      Class available since Release 1.4\r\n */\r\nclass Date_Span\r\n{\r\n    // {{{ Properties\r\n\r\n    /**\r\n     * @var int\r\n     */\r\n    var $day;\r\n\r\n    /**\r\n     * @var int\r\n     */\r\n    var $hour;\r\n\r\n    /**\r\n     * @var int\r\n     */\r\n    var $minute;\r\n\r\n    /**\r\n     * @var int\r\n     */\r\n    var $second;\r\n\r\n    // }}}\r\n    // {{{ Constructor\r\n\r\n    /**\r\n     * Constructor.\r\n     *\r\n     * Creates the time span object calling the set() method.\r\n     *\r\n     * @param  mixed $time   Time span expression.\r\n     * @param  mixed $format Format string to set it from a string or the\r\n     *                       second date set it from a date diff.\r\n     *\r\n     * @see    set()\r\n     * @access public\r\n     */\r\n    function Date_Span($time = 0, $format = null)\r\n    {\r\n        $this->set($time, $format);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ set()\r\n\r\n    /**\r\n     * Set the time span to a new value in a 'smart' way.\r\n     *\r\n     * Sets the time span depending on the argument types, calling\r\n     * to the appropriate setFromXxx() method.\r\n     *\r\n     * @param  mixed $time   Time span expression.\r\n     * @param  mixed $format Format string to set it from a string or the\r\n     *                       second date set it from a date diff.\r\n     *\r\n     * @return bool  true on success.\r\n     *\r\n     * @see    setFromObject()\r\n     * @see    setFromArray()\r\n     * @see    setFromString()\r\n     * @see    setFromSeconds()\r\n     * @see    setFromDateDiff()\r\n     * @access public\r\n     */\r\n    function set($time = 0, $format = null)\r\n    {\r\n        if (is_a($time, 'date_span')) {\r\n            return $this->copy($time);\r\n        } elseif (is_a($time, 'date') and is_a($format, 'date')) {\r\n            return $this->setFromDateDiff($time, $format);\r\n        } elseif (is_array($time)) {\r\n            return $this->setFromArray($time);\r\n        } elseif (is_string($time)) {\r\n            return $this->setFromString($time, $format);\r\n        } elseif (is_int($time)) {\r\n            return $this->setFromSeconds($time);\r\n        } else {\r\n            return $this->setFromSeconds(0);\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ setFromArray()\r\n\r\n    /**\r\n     * Set the time span from an array.\r\n     *\r\n     * Set the time span from an array. Any value can be a float (but it\r\n     * has no sense in seconds), for example array(23.5, 20, 0) is\r\n     * interpreted as 23 hours, .5*60 + 20 = 50 minutes and 0 seconds.\r\n     *\r\n     * @param  array $time Items are counted from right to left. First\r\n     *                     item is for seconds, second for minutes, third\r\n     *                     for hours and fourth for days. If there are\r\n     *                     less items than 4, zero (0) is assumed for the\r\n     *                     absent values.\r\n     *\r\n     * @return bool  True on success.\r\n     *\r\n     * @access public\r\n     */\r\n    function setFromArray($time)\r\n    {\r\n        if (!is_array($time)) {\r\n            return false;\r\n        }\r\n        $tmp1 = new Date_Span;\r\n        if (!$tmp1->setFromSeconds(@array_pop($time))) {\r\n            return false;\r\n        }\r\n        $tmp2 = new Date_Span;\r\n        if (!$tmp2->setFromMinutes(@array_pop($time))) {\r\n            return false;\r\n        }\r\n        $tmp1->add($tmp2);\r\n        if (!$tmp2->setFromHours(@array_pop($time))) {\r\n            return false;\r\n        }\r\n        $tmp1->add($tmp2);\r\n        if (!$tmp2->setFromDays(@array_pop($time))) {\r\n            return false;\r\n        }\r\n        $tmp1->add($tmp2);\r\n        return $this->copy($tmp1);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ setFromString()\r\n\r\n    /**\r\n     * Set the time span from a string based on an input format.\r\n     *\r\n     * Set the time span from a string based on an input format. This is\r\n     * some like a mix of format() method and sscanf() PHP function. The\r\n     * error checking and validation of this function is very primitive,\r\n     * so you should be carefull when using it with unknown $time strings.\r\n     * With this method you are assigning day, hour, minute and second\r\n     * values, and the last values are used. This means that if you use\r\n     * something like setFromString('10, 20', '%H, %h') your time span\r\n     * would be 20 hours long. Allways remember that this method set\r\n     * <b>all</b> the values, so if you had a $time span 30 minutes long\r\n     * and you make $time->setFromString('20 hours', '%H hours'), $time\r\n     * span would be 20 hours long (and not 20 hours and 30 minutes).\r\n     * Input format options:<br>\r\n     *  <code>%C</code> Days with time, same as \"%D, %H:%M:%S\".<br>\r\n     *  <code>%d</code> Total days as a float number\r\n     *                  (2 days, 12 hours = 2.5 days).<br>\r\n     *  <code>%D</code> Days as a decimal number.<br>\r\n     *  <code>%e</code> Total hours as a float number\r\n     *                  (1 day, 2 hours, 30 minutes = 26.5 hours).<br>\r\n     *  <code>%f</code> Total minutes as a float number\r\n     *                  (2 minutes, 30 seconds = 2.5 minutes).<br>\r\n     *  <code>%g</code> Total seconds as a decimal number\r\n     *                  (2 minutes, 30 seconds = 90 seconds).<br>\r\n     *  <code>%h</code> Hours as decimal number.<br>\r\n     *  <code>%H</code> Hours as decimal number limited to 2 digits.<br>\r\n     *  <code>%m</code> Minutes as a decimal number.<br>\r\n     *  <code>%M</code> Minutes as a decimal number limited to 2 digits.<br>\r\n     *  <code>%n</code> Newline character (\\n).<br>\r\n     *  <code>%p</code> Either 'am' or 'pm' depending on the time. If 'pm'\r\n     *                  is detected it adds 12 hours to the resulting time\r\n     *                  span (without any checks). This is case\r\n     *                  insensitive.<br>\r\n     *  <code>%r</code> Time in am/pm notation, same as \"%H:%M:%S %p\".<br>\r\n     *  <code>%R</code> Time in 24-hour notation, same as \"%H:%M\".<br>\r\n     *  <code>%s</code> Seconds as a decimal number.<br>\r\n     *  <code>%S</code> Seconds as a decimal number limited to 2 digits.<br>\r\n     *  <code>%t</code> Tab character (\\t).<br>\r\n     *  <code>%T</code> Current time equivalent, same as \"%H:%M:%S\".<br>\r\n     *  <code>%%</code> Literal '%'.<br>\r\n     *\r\n     * @param  string $time   String from where to get the time span\r\n     *                        information.\r\n     * @param  string $format Format string.\r\n     *\r\n     * @return bool   True on success.\r\n     *\r\n     * @access public\r\n     */\r\n    function setFromString($time, $format = null)\r\n    {\r\n        if (is_null($format)) {\r\n            $format = $GLOBALS['_DATE_SPAN_INPUT_FORMAT'];\r\n        }\r\n        // If format is a string, it parses the string format.\r\n        if (is_string($format)) {\r\n            $str = '';\r\n            $vars = array();\r\n            $pm = 'am';\r\n            $day = $hour = $minute = $second = 0;\r\n            for ($i = 0; $i < strlen($format); $i++) {\r\n                $char = $format{$i};\r\n                if ($char == '%') {\r\n                    $nextchar = $format{++$i};\r\n                    switch ($nextchar) {\r\n                        case 'c':\r\n                            $str .= '%d, %d:%d:%d';\r\n                            array_push(\r\n                                $vars, 'day', 'hour', 'minute', 'second');\r\n                            break;\r\n                        case 'C':\r\n                            $str .= '%d, %2d:%2d:%2d';\r\n                            array_push(\r\n                                $vars, 'day', 'hour', 'minute', 'second');\r\n                            break;\r\n                        case 'd':\r\n                            $str .= '%f';\r\n                            array_push($vars, 'day');\r\n                            break;\r\n                        case 'D':\r\n                            $str .= '%d';\r\n                            array_push($vars, 'day');\r\n                            break;\r\n                        case 'e':\r\n                            $str .= '%f';\r\n                            array_push($vars, 'hour');\r\n                            break;\r\n                        case 'f':\r\n                            $str .= '%f';\r\n                            array_push($vars, 'minute');\r\n                            break;\r\n                        case 'g':\r\n                            $str .= '%f';\r\n                            array_push($vars, 'second');\r\n                            break;\r\n                        case 'h':\r\n                            $str .= '%d';\r\n                            array_push($vars, 'hour');\r\n                            break;\r\n                        case 'H':\r\n                            $str .= '%2d';\r\n                            array_push($vars, 'hour');\r\n                            break;\r\n                        case 'm':\r\n                            $str .= '%d';\r\n                            array_push($vars, 'minute');\r\n                            break;\r\n                        case 'M':\r\n                            $str .= '%2d';\r\n                            array_push($vars, 'minute');\r\n                            break;\r\n                        case 'n':\r\n                            $str .= \"\\n\";\r\n                            break;\r\n                        case 'p':\r\n                            $str .= '%2s';\r\n                            array_push($vars, 'pm');\r\n                            break;\r\n                        case 'r':\r\n                            $str .= '%2d:%2d:%2d %2s';\r\n                            array_push(\r\n                                $vars, 'hour', 'minute', 'second', 'pm');\r\n                            break;\r\n                        case 'R':\r\n                            $str .= '%2d:%2d';\r\n                            array_push($vars, 'hour', 'minute');\r\n                            break;\r\n                        case 's':\r\n                            $str .= '%d';\r\n                            array_push($vars, 'second');\r\n                            break;\r\n                        case 'S':\r\n                            $str .= '%2d';\r\n                            array_push($vars, 'second');\r\n                            break;\r\n                        case 't':\r\n                            $str .= \"\\t\";\r\n                            break;\r\n                        case 'T':\r\n                            $str .= '%2d:%2d:%2d';\r\n                            array_push($vars, 'hour', 'minute', 'second');\r\n                            break;\r\n                        case '%':\r\n                            $str .= \"%\";\r\n                            break;\r\n                        default:\r\n                            $str .= $char . $nextchar;\r\n                    }\r\n                } else {\r\n                    $str .= $char;\r\n                }\r\n            }\r\n            $vals = sscanf($time, $str);\r\n            foreach ($vals as $i => $val) {\r\n                if (is_null($val)) {\r\n                    return false;\r\n                }\r\n                $$vars[$i] = $val;\r\n            }\r\n            if (strcasecmp($pm, 'pm') == 0) {\r\n                $hour += 12;\r\n            } elseif (strcasecmp($pm, 'am') != 0) {\r\n                return false;\r\n            }\r\n            $this->setFromArray(array($day, $hour, $minute, $second));\r\n        // If format is a integer, it uses a predefined format\r\n        // detection method.\r\n        } elseif (is_integer($format)) {\r\n            switch ($format) {\r\n                case DATE_SPAN_INPUT_FORMAT_NNSV:\r\n                    $time = preg_split('/\\D+/', $time);\r\n                    switch (count($time)) {\r\n                        case 0:\r\n                            return $this->setFromArray(\r\n                                array(0, 0, 0, 0));\r\n                        case 1:\r\n                            return $this->setFromArray(\r\n                                array(0, $time[0], 0, 0));\r\n                        case 2:\r\n                            return $this->setFromArray(\r\n                                array(0, $time[0], $time[1], 0));\r\n                        case 3:\r\n                            return $this->setFromArray(\r\n                                array(0, $time[0], $time[1], $time[2]));\r\n                        default:\r\n                            return $this->setFromArray($time);\r\n                    }\r\n                    break;\r\n            }\r\n        }\r\n        return false;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ setFromSeconds()\r\n\r\n    /**\r\n     * Set the time span from a total number of seconds.\r\n     *\r\n     * @param  int  $seconds Total number of seconds.\r\n     *\r\n     * @return bool True on success.\r\n     *\r\n     * @access public\r\n     */\r\n    function setFromSeconds($seconds)\r\n    {\r\n        if ($seconds < 0) {\r\n            return false;\r\n        }\r\n        $sec  = intval($seconds);\r\n        $min  = floor($sec / 60);\r\n        $hour = floor($min / 60);\r\n        $day  = intval(floor($hour / 24));\r\n        $this->second = $sec % 60;\r\n        $this->minute = $min % 60;\r\n        $this->hour   = $hour % 24;\r\n        $this->day    = $day;\r\n        return true;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ setFromMinutes()\r\n\r\n    /**\r\n     * Set the time span from a total number of minutes.\r\n     *\r\n     * @param  float $minutes Total number of minutes.\r\n     *\r\n     * @return bool  True on success.\r\n     *\r\n     * @access public\r\n     */\r\n    function setFromMinutes($minutes)\r\n    {\r\n        return $this->setFromSeconds(round($minutes * 60));\r\n    }\r\n\r\n    // }}}\r\n    // {{{ setFromHours()\r\n\r\n    /**\r\n     * Set the time span from a total number of hours.\r\n     *\r\n     * @param  float $hours Total number of hours.\r\n     *\r\n     * @return bool  True on success.\r\n     *\r\n     * @access public\r\n     */\r\n    function setFromHours($hours)\r\n    {\r\n        return $this->setFromSeconds(round($hours * 3600));\r\n    }\r\n\r\n    // }}}\r\n    // {{{ setFromDays()\r\n\r\n    /**\r\n     * Set the time span from a total number of days.\r\n     *\r\n     * @param  float $days Total number of days.\r\n     *\r\n     * @return bool  True on success.\r\n     *\r\n     * @access public\r\n     */\r\n    function setFromDays($days)\r\n    {\r\n        return $this->setFromSeconds(round($days * 86400));\r\n    }\r\n\r\n    // }}}\r\n    // {{{ setFromDateDiff()\r\n\r\n    /**\r\n     * Set the span from the elapsed time between two dates.\r\n     *\r\n     * Set the span from the elapsed time between two dates. The time span\r\n     * is allways positive, so the date's order is not important.\r\n     *\r\n     * @param  object Date $date1 First Date.\r\n     * @param  object Date $date2 Second Date.\r\n     *\r\n     * @return bool  True on success.\r\n     *\r\n     * @access public\r\n     */\r\n    function setFromDateDiff($date1, $date2)\r\n    {\r\n        if (!is_a($date1, 'date') or !is_a($date2, 'date')) {\r\n            return false;\r\n        }\r\n        $date1->toUTC();\r\n        $date2->toUTC();\r\n        if ($date1->after($date2)) {\r\n            list($date1, $date2) = array($date2, $date1);\r\n        }\r\n        $days = Date_Calc::dateDiff(\r\n            $date1->getDay(), $date1->getMonth(), $date1->getYear(),\r\n            $date2->getDay(), $date2->getMonth(), $date2->getYear()\r\n        );\r\n        $hours = $date2->getHour() - $date1->getHour();\r\n        $mins  = $date2->getMinute() - $date1->getMinute();\r\n        $secs  = $date2->getSecond() - $date1->getSecond();\r\n        $this->setFromSeconds(\r\n            $days * 86400 + $hours * 3600 + $mins * 60 + $secs\r\n        );\r\n        return true;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ copy()\r\n\r\n    /**\r\n     * Set the time span from another time object.\r\n     *\r\n     * @param  object Date_Span $time Source time span object.\r\n     *\r\n     * @return bool   True on success.\r\n     *\r\n     * @access public\r\n     */\r\n    function copy($time)\r\n    {\r\n        if (is_a($time, 'date_span')) {\r\n            $this->second = $time->second;\r\n            $this->minute = $time->minute;\r\n            $this->hour   = $time->hour;\r\n            $this->day    = $time->day;\r\n            return true;\r\n        } else {\r\n            return false;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ format()\r\n\r\n    /**\r\n     * Time span pretty printing (similar to Date::format()).\r\n     *\r\n     * Formats the time span in the given format, similar to\r\n     * strftime() and Date::format().<br>\r\n     * <br>\r\n     * Formatting options:<br>\r\n     *  <code>%C</code> Days with time, same as \"%D, %H:%M:%S\".<br>\r\n     *  <code>%d</code> Total days as a float number\r\n     *                  (2 days, 12 hours = 2.5 days).<br>\r\n     *  <code>%D</code> Days as a decimal number.<br>\r\n     *  <code>%e</code> Total hours as a float number\r\n     *                  (1 day, 2 hours, 30 minutes = 26.5 hours).<br>\r\n     *  <code>%E</code> Total hours as a decimal number\r\n     *                  (1 day, 2 hours, 40 minutes = 26 hours).<br>\r\n     *  <code>%f</code> Total minutes as a float number\r\n     *                  (2 minutes, 30 seconds = 2.5 minutes).<br>\r\n     *  <code>%F</code> Total minutes as a decimal number\r\n     *                  (1 hour, 2 minutes, 40 seconds = 62 minutes).<br>\r\n     *  <code>%g</code> Total seconds as a decimal number\r\n     *                  (2 minutes, 30 seconds = 90 seconds).<br>\r\n     *  <code>%h</code> Hours as decimal number (0 to 23).<br>\r\n     *  <code>%H</code> Hours as decimal number (00 to 23).<br>\r\n     *  <code>%i</code> Hours as decimal number on 12-hour clock\r\n     *                  (1 to 12).<br>\r\n     *  <code>%I</code> Hours as decimal number on 12-hour clock\r\n     *                  (01 to 12).<br>\r\n     *  <code>%m</code> Minutes as a decimal number (0 to 59).<br>\r\n     *  <code>%M</code> Minutes as a decimal number (00 to 59).<br>\r\n     *  <code>%n</code> Newline character (\\n).<br>\r\n     *  <code>%p</code> Either 'am' or 'pm' depending on the time.<br>\r\n     *  <code>%P</code> Either 'AM' or 'PM' depending on the time.<br>\r\n     *  <code>%r</code> Time in am/pm notation, same as \"%I:%M:%S %p\".<br>\r\n     *  <code>%R</code> Time in 24-hour notation, same as \"%H:%M\".<br>\r\n     *  <code>%s</code> Seconds as a decimal number (0 to 59).<br>\r\n     *  <code>%S</code> Seconds as a decimal number (00 to 59).<br>\r\n     *  <code>%t</code> Tab character (\\t).<br>\r\n     *  <code>%T</code> Current time equivalent, same as \"%H:%M:%S\".<br>\r\n     *  <code>%%</code> Literal '%'.<br>\r\n     *\r\n     * @param  string $format The format string for returned time span.\r\n     *\r\n     * @return string The time span in specified format.\r\n     *\r\n     * @access public\r\n     */\r\n    function format($format = null)\r\n    {\r\n        if (is_null($format)) {\r\n            $format = $GLOBALS['_DATE_SPAN_FORMAT'];\r\n        }\r\n        $output = '';\r\n        for ($i = 0; $i < strlen($format); $i++) {\r\n            $char = $format{$i};\r\n            if ($char == '%') {\r\n                $nextchar = $format{++$i};\r\n                switch ($nextchar) {\r\n                    case 'C':\r\n                        $output .= sprintf(\r\n                            '%d, %02d:%02d:%02d',\r\n                            $this->day,\r\n                            $this->hour,\r\n                            $this->minute,\r\n                            $this->second\r\n                        );\r\n                        break;\r\n                    case 'd':\r\n                        $output .= $this->toDays();\r\n                        break;\r\n                    case 'D':\r\n                        $output .= $this->day;\r\n                        break;\r\n                    case 'e':\r\n                        $output .= $this->toHours();\r\n                        break;\r\n                    case 'E':\r\n                        $output .= floor($this->toHours());\r\n                        break;\r\n                    case 'f':\r\n                        $output .= $this->toMinutes();\r\n                        break;\r\n                    case 'F':\r\n                        $output .= floor($this->toMinutes());\r\n                        break;\r\n                    case 'g':\r\n                        $output .= $this->toSeconds();\r\n                        break;\r\n                    case 'h':\r\n                        $output .= $this->hour;\r\n                        break;\r\n                    case 'H':\r\n                        $output .= sprintf('%02d', $this->hour);\r\n                        break;\r\n                    case 'i':\r\n                        $hour =\r\n                            ($this->hour + 1) > 12 ?\r\n                            $this->hour - 12 :\r\n                            $this->hour;\r\n                        $output .= ($hour == 0) ? 12 : $hour;\r\n                        break;\r\n                    case 'I':\r\n                        $hour =\r\n                            ($this->hour + 1) > 12 ?\r\n                            $this->hour - 12 :\r\n                            $this->hour;\r\n                        $output .= sprintf('%02d', $hour==0 ? 12 : $hour);\r\n                        break;\r\n                    case 'm':\r\n                        $output .= $this->minute;\r\n                        break;\r\n                    case 'M':\r\n                        $output .= sprintf('%02d',$this->minute);\r\n                        break;\r\n                    case 'n':\r\n                        $output .= \"\\n\";\r\n                        break;\r\n                    case 'p':\r\n                        $output .= $this->hour >= 12 ? 'pm' : 'am';\r\n                        break;\r\n                    case 'P':\r\n                        $output .= $this->hour >= 12 ? 'PM' : 'AM';\r\n                        break;\r\n                    case 'r':\r\n                        $hour =\r\n                            ($this->hour + 1) > 12 ?\r\n                            $this->hour - 12 :\r\n                            $this->hour;\r\n                        $output .= sprintf(\r\n                            '%02d:%02d:%02d %s',\r\n                            $hour==0 ?  12 : $hour,\r\n                            $this->minute,\r\n                            $this->second,\r\n                            $this->hour >= 12 ? 'pm' : 'am'\r\n                        );\r\n                        break;\r\n                    case 'R':\r\n                        $output .= sprintf(\r\n                            '%02d:%02d', $this->hour, $this->minute\r\n                        );\r\n                        break;\r\n                    case 's':\r\n                        $output .= $this->second;\r\n                        break;\r\n                    case 'S':\r\n                        $output .= sprintf('%02d', $this->second);\r\n                        break;\r\n                    case 't':\r\n                        $output .= \"\\t\";\r\n                        break;\r\n                    case 'T':\r\n                        $output .= sprintf(\r\n                            '%02d:%02d:%02d',\r\n                            $this->hour, $this->minute, $this->second\r\n                        );\r\n                        break;\r\n                    case '%':\r\n                        $output .= \"%\";\r\n                        break;\r\n                    default:\r\n                        $output .= $char . $nextchar;\r\n                }\r\n            } else {\r\n                $output .= $char;\r\n            }\r\n        }\r\n        return $output;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ toSeconds()\r\n\r\n    /**\r\n     * Convert time span to seconds.\r\n     *\r\n     * @return int Time span as an integer number of seconds.\r\n     *\r\n     * @access public\r\n     */\r\n    function toSeconds()\r\n    {\r\n        return $this->day * 86400 + $this->hour * 3600 +\r\n            $this->minute * 60 + $this->second;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ toMinutes()\r\n\r\n    /**\r\n     * Convert time span to minutes.\r\n     *\r\n     * @return float Time span as a decimal number of minutes.\r\n     *\r\n     * @access public\r\n     */\r\n    function toMinutes()\r\n    {\r\n        return $this->day * 1440 + $this->hour * 60 + $this->minute +\r\n            $this->second / 60;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ toHours()\r\n\r\n    /**\r\n     * Convert time span to hours.\r\n     *\r\n     * @return float Time span as a decimal number of hours.\r\n     *\r\n     * @access public\r\n     */\r\n    function toHours()\r\n    {\r\n        return $this->day * 24 + $this->hour + $this->minute / 60 +\r\n            $this->second / 3600;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ toDays()\r\n\r\n    /**\r\n     * Convert time span to days.\r\n     *\r\n     * @return float Time span as a decimal number of days.\r\n     *\r\n     * @access public\r\n     */\r\n    function toDays()\r\n    {\r\n        return $this->day + $this->hour / 24 + $this->minute / 1440 +\r\n            $this->second / 86400;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ add()\r\n\r\n    /**\r\n     * Adds a time span.\r\n     *\r\n     * @param  object Date_Span $time Time span to add.\r\n     *\r\n     * @access public\r\n     */\r\n    function add($time)\r\n    {\r\n        return $this->setFromSeconds(\r\n            $this->toSeconds() + $time->toSeconds()\r\n        );\r\n    }\r\n\r\n    // }}}\r\n    // {{{ substract()\r\n\r\n    /**\r\n     * Subtracts a time span.\r\n     *\r\n     * Subtracts a time span. If the time span to subtract is larger\r\n     * than the original, the result is zero (there's no sense in\r\n     * negative time spans).\r\n     *\r\n     * @param  object Date_Span $time Time span to subtract.\r\n     *\r\n     * @access public\r\n     */\r\n    function subtract($time)\r\n    {\r\n        $sub = $this->toSeconds() - $time->toSeconds();\r\n        if ($sub < 0) {\r\n            $this->setFromSeconds(0);\r\n        } else {\r\n            $this->setFromSeconds($sub);\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ equal()\r\n\r\n    /**\r\n     * Tells if time span is equal to $time.\r\n     *\r\n     * @param  object Date_Span $time Time span to compare to.\r\n     *\r\n     * @return bool   True if the time spans are equal.\r\n     *\r\n     * @access public\r\n     */\r\n    function equal($time)\r\n    {\r\n        return $this->toSeconds() == $time->toSeconds();\r\n    }\r\n\r\n    // }}}\r\n    // {{{ greaterEqual()\r\n\r\n    /**\r\n     * Tells if this time span is greater or equal than $time.\r\n     *\r\n     * @param  object Date_Span $time Time span to compare to.\r\n     *\r\n     * @return bool   True if this time span is greater or equal than $time.\r\n     *\r\n     * @access public\r\n     */\r\n    function greaterEqual($time)\r\n    {\r\n        return $this->toSeconds() >= $time->toSeconds();\r\n    }\r\n\r\n    // }}}\r\n    // {{{ lowerEqual()\r\n\r\n    /**\r\n     * Tells if this time span is lower or equal than $time.\r\n     *\r\n     * @param  object Date_Span $time Time span to compare to.\r\n     *\r\n     * @return bool   True if this time span is lower or equal than $time.\r\n     *\r\n     * @access public\r\n     */\r\n    function lowerEqual($time)\r\n    {\r\n        return $this->toSeconds() <= $time->toSeconds();\r\n    }\r\n\r\n    // }}}\r\n    // {{{ greater()\r\n\r\n    /**\r\n     * Tells if this time span is greater than $time.\r\n     *\r\n     * @param  object Date_Span $time Time span to compare to.\r\n     *\r\n     * @return bool   True if this time span is greater than $time.\r\n     *\r\n     * @access public\r\n     */\r\n    function greater($time)\r\n    {\r\n        return $this->toSeconds() > $time->toSeconds();\r\n    }\r\n\r\n    // }}}\r\n    // {{{ lower()\r\n\r\n    /**\r\n     * Tells if this time span is lower than $time.\r\n     *\r\n     * @param  object Date_Span $time Time span to compare to.\r\n     *\r\n     * @return bool   True if this time span is lower than $time.\r\n     *\r\n     * @access public\r\n     */\r\n    function lower($time)\r\n    {\r\n        return $this->toSeconds() < $time->toSeconds();\r\n    }\r\n\r\n    // }}}\r\n    // {{{ compare()\r\n\r\n    /**\r\n     * Compares two time spans.\r\n     *\r\n     * Compares two time spans. Suitable for use in sorting functions.\r\n     *\r\n     * @param  object Date_Span $time1 The first time span.\r\n     * @param  object Date_Span $time2 The second time span.\r\n     *\r\n     * @return int    0 if the time spans are equal, -1 if time1 is lower\r\n     *                than time2, 1 if time1 is greater than time2.\r\n     *\r\n     * @static\r\n     * @access public\r\n     */\r\n    function compare($time1, $time2)\r\n    {\r\n        if ($time1->equal($time2)) {\r\n            return 0;\r\n        } elseif ($time1->lower($time2)) {\r\n            return -1;\r\n        } else {\r\n            return 1;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ isEmpty()\r\n\r\n    /**\r\n     * Tells if the time span is empty (zero length).\r\n     *\r\n     * @return bool True is it's empty.\r\n     */\r\n    function isEmpty()\r\n    {\r\n        return !$this->day && !$this->hour && !$this->minute && !$this->second;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ setDefaultInputFormat()\r\n\r\n    /**\r\n     * Set the default input format.\r\n     *\r\n     * @param  mixed $format New default input format.\r\n     *\r\n     * @return mixed Previous default input format.\r\n     *\r\n     * @static\r\n     */\r\n    function setDefaultInputFormat($format)\r\n    {\r\n        $old = $GLOBALS['_DATE_SPAN_INPUT_FORMAT'];\r\n        $GLOBALS['_DATE_SPAN_INPUT_FORMAT'] = $format;\r\n        return $old;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getDefaultInputFormat()\r\n\r\n    /**\r\n     * Get the default input format.\r\n     *\r\n     * @return mixed Default input format.\r\n     *\r\n     * @static\r\n     */\r\n    function getDefaultInputFormat()\r\n    {\r\n        return $GLOBALS['_DATE_SPAN_INPUT_FORMAT'];\r\n    }\r\n\r\n    // }}}\r\n    // {{{ setDefaultFormat()\r\n\r\n    /**\r\n     * Set the default format.\r\n     *\r\n     * @param  mixed $format New default format.\r\n     *\r\n     * @return mixed Previous default format.\r\n     *\r\n     * @static\r\n     */\r\n    function setDefaultFormat($format)\r\n    {\r\n        $old = $GLOBALS['_DATE_SPAN_FORMAT'];\r\n        $GLOBALS['_DATE_SPAN_FORMAT'] = $format;\r\n        return $old;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getDefaultFormat()\r\n\r\n    /**\r\n     * Get the default format.\r\n     *\r\n     * @return mixed Default format.\r\n     *\r\n     * @static\r\n     */\r\n    function getDefaultFormat()\r\n    {\r\n        return $GLOBALS['_DATE_SPAN_FORMAT'];\r\n    }\r\n\r\n    // }}}\r\n    // {{{ __clone()\r\n\r\n    /**\r\n     * Returns a copy of the object (workarround for PHP5 forward compatibility).\r\n     *\r\n     * @return object Date_Span Copy of the object.\r\n     */\r\n    function __clone() {\r\n        $c = get_class($this);\r\n        $s = new $c;\r\n        $s->day    = $this->day;\r\n        $s->hour   = $this->hour;\r\n        $s->minute = $this->minute;\r\n        $s->second = $this->second;\r\n        return $s;\r\n    }\r\n\r\n    // }}}\r\n}\r\n\r\n// }}}\r\n\r\n/*\r\n * Local variables:\r\n * mode: php\r\n * tab-width: 4\r\n * c-basic-offset: 4\r\n * c-hanging-comment-ender-p: nil\r\n * End:\r\n */\r\n?>"
  },
  {
    "path": "newscoop/include/Date/TimeZone.php",
    "content": "<?php\r\n/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4 foldmethod=marker: */\r\n\r\n// {{{ Header\r\n\r\n/**\r\n * TimeZone representation class, along with time zone information data\r\n *\r\n * PHP versions 4 and 5\r\n *\r\n * LICENSE:\r\n *\r\n * Copyright (c) 1997-2006 Baba Buehler, Pierre-Alain Joye\r\n * All rights reserved.\r\n *\r\n * Redistribution and use in source and binary forms, with or without\r\n * modification, are permitted under the terms of the BSD License.\r\n *\r\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\r\n * \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\r\n * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS\r\n * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE\r\n * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,\r\n * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,\r\n * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\r\n * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\r\n * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT\r\n * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN\r\n * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE\r\n * POSSIBILITY OF SUCH DAMAGE.\r\n *\r\n * @category   Date and Time\r\n * @package    Date\r\n * @author     Baba Buehler <baba@babaz.com>\r\n * @author     Pierre-Alain Joye <pajoye@php.net>\r\n * @copyright  1997-2006 Baba Buehler, Pierre-Alain Joye\r\n * @license    http://www.opensource.org/licenses/bsd-license.php\r\n *             BSD License\r\n * @version    CVS: $Id: TimeZone.php,v 1.14 2006/11/22 01:03:12 firman Exp $\r\n * @link       http://pear.php.net/package/Date\r\n */\r\n\r\n// }}}\r\n// {{{ Class: Date_TimeZone\r\n\r\n/**\r\n * TimeZone representation class, along with time zone information data\r\n *\r\n * The default timezone is set from the first valid timezone id found\r\n * in one of the following places, in this order:\r\n *   + global $_DATE_TIMEZONE_DEFAULT\r\n *   + system environment variable PHP_TZ\r\n *   + system environment variable TZ\r\n *   + the result of date('T')\r\n *\r\n * If no valid timezone id is found, the default timezone is set to 'UTC'.\r\n * You may also manually set the default timezone by passing a valid id to\r\n * Date_TimeZone::setDefault().\r\n *\r\n * This class includes time zone data (from zoneinfo) in the form of a\r\n * global array, $_DATE_TIMEZONE_DATA.\r\n *\r\n * @author     Baba Buehler <baba@babaz.com>\r\n * @copyright  1997-2006 Baba Buehler, Pierre-Alain Joye\r\n * @license    http://www.opensource.org/licenses/bsd-license.php\r\n *             BSD License\r\n * @version    Release: 1.4.7\r\n * @link       http://pear.php.net/package/Date\r\n */\r\nclass Date_TimeZone\r\n{\r\n    // {{{ Properties\r\n\r\n    /**\r\n     * Time Zone ID of this time zone\r\n     * @var string\r\n     */\r\n    var $id;\r\n\r\n    /**\r\n     * Long Name of this time zone (ie Central Standard Time)\r\n     * @var string\r\n     */\r\n    var $longname;\r\n\r\n    /**\r\n     * Short Name of this time zone (ie CST)\r\n     * @var string\r\n     */\r\n    var $shortname;\r\n\r\n    /**\r\n     * true if this time zone observes daylight savings time\r\n     * @var boolean\r\n     */\r\n    var $hasdst;\r\n\r\n    /**\r\n     * DST Long Name of this time zone\r\n     * @var string\r\n     */\r\n    var $dstlongname;\r\n\r\n    /**\r\n     * DST Short Name of this timezone\r\n     * @var string\r\n     */\r\n    var $dstshortname;\r\n\r\n    /**\r\n     * offset, in milliseconds, of this timezone\r\n     * @var int\r\n     */\r\n    var $offset;\r\n\r\n    /**\r\n     * System Default Time Zone\r\n     * @var object Date_TimeZone\r\n     */\r\n    var $default;\r\n\r\n    // }}}\r\n    // {{{ Constructor\r\n\r\n    /**\r\n     * Constructor\r\n     *\r\n     * Creates a new Date::TimeZone object, representing the time zone\r\n     * specified in $id.  If the supplied ID is invalid, the created\r\n     * time zone is UTC.\r\n     *\r\n     * @access public\r\n     * @param string $id the time zone id\r\n     * @return object Date_TimeZone the new Date_TimeZone object\r\n     */\r\n    function Date_TimeZone($id)\r\n    {\r\n        $_DATE_TIMEZONE_DATA =& $GLOBALS['_DATE_TIMEZONE_DATA'];\r\n        if(Date_TimeZone::isValidID($id)) {\r\n            $this->id = $id;\r\n            $this->longname = $_DATE_TIMEZONE_DATA[$id]['longname'];\r\n            $this->shortname = $_DATE_TIMEZONE_DATA[$id]['shortname'];\r\n            $this->offset = $_DATE_TIMEZONE_DATA[$id]['offset'];\r\n            if($_DATE_TIMEZONE_DATA[$id]['hasdst']) {\r\n                $this->hasdst = true;\r\n                $this->dstlongname = $_DATE_TIMEZONE_DATA[$id]['dstlongname'];\r\n                $this->dstshortname = $_DATE_TIMEZONE_DATA[$id]['dstshortname'];\r\n            } else {\r\n                $this->hasdst = false;\r\n                $this->dstlongname = $this->longname;\r\n                $this->dstshortname = $this->shortname;\r\n            }\r\n        } else {\r\n            $this->id = 'UTC';\r\n            $this->longname = $_DATE_TIMEZONE_DATA[$this->id]['longname'];\r\n            $this->shortname = $_DATE_TIMEZONE_DATA[$this->id]['shortname'];\r\n            $this->hasdst = $_DATE_TIMEZONE_DATA[$this->id]['hasdst'];\r\n            $this->offset = $_DATE_TIMEZONE_DATA[$this->id]['offset'];\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getDefault()\r\n\r\n    /**\r\n     * Return a TimeZone object representing the system default time zone\r\n     *\r\n     * Return a TimeZone object representing the system default time zone,\r\n     * which is initialized during the loading of TimeZone.php.\r\n     *\r\n     * @access public\r\n     * @return object Date_TimeZone the default time zone\r\n     */\r\n    function getDefault()\r\n    {\r\n        return new Date_TimeZone($GLOBALS['_DATE_TIMEZONE_DEFAULT']);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ setDefault()\r\n\r\n    /**\r\n     * Sets the system default time zone to the time zone in $id\r\n     *\r\n     * Sets the system default time zone to the time zone in $id\r\n     *\r\n     * @access public\r\n     * @param string $id the time zone id to use\r\n     */\r\n    function setDefault($id)\r\n    {\r\n        if(Date_TimeZone::isValidID($id)) {\r\n            $GLOBALS['_DATE_TIMEZONE_DEFAULT'] = $id;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ isValidID()\r\n\r\n    /**\r\n     * Tests if given id is represented in the $_DATE_TIMEZONE_DATA time zone data\r\n     *\r\n     * Tests if given id is represented in the $_DATE_TIMEZONE_DATA time zone data\r\n     *\r\n     * @access public\r\n     * @param string $id the id to test\r\n     * @return boolean true if the supplied ID is valid\r\n     */\r\n    function isValidID($id)\r\n    {\r\n        if(isset($GLOBALS['_DATE_TIMEZONE_DATA'][$id])) {\r\n            return true;\r\n        } else {\r\n            return false;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ isEqual()\r\n\r\n    /**\r\n     * Is this time zone equal to another\r\n     *\r\n     * Tests to see if this time zone is equal (ids match)\r\n     * to a given Date_TimeZone object.\r\n     *\r\n     * @access public\r\n     * @param object Date_TimeZone $tz the timezone to test\r\n     * @return boolean true if this time zone is equal to the supplied time zone\r\n     */\r\n    function isEqual($tz)\r\n    {\r\n        if(strcasecmp($this->id, $tz->id) == 0) {\r\n            return true;\r\n        } else {\r\n            return false;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ isEquivalent()\r\n\r\n    /**\r\n     * Is this time zone equivalent to another\r\n     *\r\n     * Tests to see if this time zone is equivalent to\r\n     * a given time zone object.  Equivalence in this context\r\n     * is defined by the two time zones having an equal raw\r\n     * offset and an equal setting of \"hasdst\".  This is not true\r\n     * equivalence, as the two time zones may have different rules\r\n     * for the observance of DST, but this implementation does not\r\n     * know DST rules.\r\n     *\r\n     * @access public\r\n     * @param object Date_TimeZone $tz the timezone object to test\r\n     * @return boolean true if this time zone is equivalent to the supplied time zone\r\n     */\r\n    function isEquivalent($tz)\r\n    {\r\n        if($this->offset == $tz->offset && $this->hasdst == $tz->hasdst) {\r\n            return true;\r\n        } else {\r\n            return false;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ hasDaylightTime()\r\n\r\n    /**\r\n     * Returns true if this zone observes daylight savings time\r\n     *\r\n     * Returns true if this zone observes daylight savings time\r\n     *\r\n     * @access public\r\n     * @return boolean true if this time zone has DST\r\n     */\r\n    function hasDaylightTime()\r\n    {\r\n        return $this->hasdst;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ inDaylightTime()\r\n\r\n    /**\r\n     * Is the given date/time in DST for this time zone\r\n     *\r\n     * Attempts to determine if a given Date object represents a date/time\r\n     * that is in DST for this time zone.  WARNINGS: this basically attempts to\r\n     * \"trick\" the system into telling us if we're in DST for a given time zone.\r\n     * This uses putenv() which may not work in safe mode, and relies on unix time\r\n     * which is only valid for dates from 1970 to ~2038.  This relies on the\r\n     * underlying OS calls, so it may not work on Windows or on a system where\r\n     * zoneinfo is not installed or configured properly.\r\n     *\r\n     * @access public\r\n     * @param object Date $date the date/time to test\r\n     * @return boolean true if this date is in DST for this time zone\r\n     */\r\n    function inDaylightTime($date)\r\n    {\r\n        $env_tz = '';\r\n        if(isset($_ENV['TZ']) && getenv('TZ')) {\r\n            $env_tz = getenv('TZ');\r\n        }\r\n\r\n        putenv('TZ=' . $this->id);\r\n        $ltime = localtime($date->getTime(), true);\r\n        if ($env_tz != '') {\r\n            putenv('TZ=' . $env_tz);\r\n        }\r\n        return $ltime['tm_isdst'];\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getDSTSavings()\r\n\r\n    /**\r\n     * Get the DST offset for this time zone\r\n     *\r\n     * Returns the DST offset of this time zone, in milliseconds,\r\n     * if the zone observes DST, zero otherwise.  Currently the\r\n     * DST offset is hard-coded to one hour.\r\n     *\r\n     * @access public\r\n     * @return int the DST offset, in milliseconds or zero if the zone does not observe DST\r\n     */\r\n    function getDSTSavings()\r\n    {\r\n        if($this->hasdst) {\r\n            return 3600000;\r\n        } else {\r\n            return 0;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getOffset()\r\n\r\n    /**\r\n     * Get the DST-corrected offset to UTC for the given date\r\n     *\r\n     * Attempts to get the offset to UTC for a given date/time, taking into\r\n     * account daylight savings time, if the time zone observes it and if\r\n     * it is in effect.  Please see the WARNINGS on Date::TimeZone::inDaylightTime().\r\n     *\r\n     *\r\n     * @access public\r\n     * @param object Date $date the Date to test\r\n     * @return int the corrected offset to UTC in milliseconds\r\n     */\r\n    function getOffset($date)\r\n    {\r\n        if($this->inDaylightTime($date)) {\r\n            return $this->offset + $this->getDSTSavings();\r\n        } else {\r\n            return $this->offset;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getAvailableIDs()\r\n\r\n    /**\r\n     * Returns the list of valid time zone id strings\r\n     *\r\n     * Returns the list of valid time zone id strings\r\n     *\r\n     * @access public\r\n     * @return mixed an array of strings with the valid time zone IDs\r\n     */\r\n    function getAvailableIDs()\r\n    {\r\n        return array_keys($GLOBALS['_DATE_TIMEZONE_DATA']);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getID()\r\n\r\n    /**\r\n     * Returns the id for this time zone\r\n     *\r\n     * Returns the time zone id  for this time zone, i.e. \"America/Chicago\"\r\n     *\r\n     * @access public\r\n     * @return string the id\r\n     */\r\n    function getID()\r\n    {\r\n        return $this->id;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getLongName()\r\n\r\n    /**\r\n     * Returns the long name for this time zone\r\n     *\r\n     * Returns the long name for this time zone,\r\n     * i.e. \"Central Standard Time\"\r\n     *\r\n     * @access public\r\n     * @return string the long name\r\n     */\r\n    function getLongName()\r\n    {\r\n        return $this->longname;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getShortName()\r\n\r\n    /**\r\n     * Returns the short name for this time zone\r\n     *\r\n     * Returns the short name for this time zone, i.e. \"CST\"\r\n     *\r\n     * @access public\r\n     * @return string the short name\r\n     */\r\n    function getShortName()\r\n    {\r\n        return $this->shortname;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getDSTLongName()\r\n\r\n    /**\r\n     * Returns the DST long name for this time zone\r\n     *\r\n     * Returns the DST long name for this time zone, i.e. \"Central Daylight Time\"\r\n     *\r\n     * @access public\r\n     * @return string the daylight savings time long name\r\n     */\r\n    function getDSTLongName()\r\n    {\r\n        return $this->dstlongname;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getDSTShortName()\r\n\r\n    /**\r\n     * Returns the DST short name for this time zone\r\n     *\r\n     * Returns the DST short name for this time zone, i.e. \"CDT\"\r\n     *\r\n     * @access public\r\n     * @return string the daylight savings time short name\r\n     */\r\n    function getDSTShortName()\r\n    {\r\n        return $this->dstshortname;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getRawOffset()\r\n\r\n    /**\r\n     * Returns the raw (non-DST-corrected) offset from UTC/GMT for this time zone\r\n     *\r\n     * Returns the raw (non-DST-corrected) offset from UTC/GMT for this time zone\r\n     *\r\n     * @access public\r\n     * @return int the offset, in milliseconds\r\n     */\r\n    function getRawOffset()\r\n    {\r\n        return $this->offset;\r\n    }\r\n\r\n    // }}}\r\n}\r\n\r\n// }}}\r\n\r\n/**\r\n * Time Zone Data offset is in miliseconds\r\n *\r\n * @global array $GLOBALS['_DATE_TIMEZONE_DATA']\r\n */\r\n$GLOBALS['_DATE_TIMEZONE_DATA'] = array(\r\n    'Etc/GMT+12' => array(\r\n        'offset' => -43200000,\r\n        'longname' => 'GMT-12:00',\r\n        'shortname' => 'GMT-12:00',\r\n        'hasdst' => false ),\r\n    'Etc/GMT+11' => array(\r\n        'offset' => -39600000,\r\n        'longname' => 'GMT-11:00',\r\n        'shortname' => 'GMT-11:00',\r\n        'hasdst' => false ),\r\n    'MIT' => array(\r\n        'offset' => -39600000,\r\n        'longname' => 'West Samoa Time',\r\n        'shortname' => 'WST',\r\n        'hasdst' => false ),\r\n    'Pacific/Apia' => array(\r\n        'offset' => -39600000,\r\n        'longname' => 'West Samoa Time',\r\n        'shortname' => 'WST',\r\n        'hasdst' => false ),\r\n    'Pacific/Midway' => array(\r\n        'offset' => -39600000,\r\n        'longname' => 'Samoa Standard Time',\r\n        'shortname' => 'SST',\r\n        'hasdst' => false ),\r\n    'Pacific/Niue' => array(\r\n        'offset' => -39600000,\r\n        'longname' => 'Niue Time',\r\n        'shortname' => 'NUT',\r\n        'hasdst' => false ),\r\n    'Pacific/Pago_Pago' => array(\r\n        'offset' => -39600000,\r\n        'longname' => 'Samoa Standard Time',\r\n        'shortname' => 'SST',\r\n        'hasdst' => false ),\r\n    'Pacific/Samoa' => array(\r\n        'offset' => -39600000,\r\n        'longname' => 'Samoa Standard Time',\r\n        'shortname' => 'SST',\r\n        'hasdst' => false ),\r\n    'US/Samoa' => array(\r\n        'offset' => -39600000,\r\n        'longname' => 'Samoa Standard Time',\r\n        'shortname' => 'SST',\r\n        'hasdst' => false ),\r\n    'America/Adak' => array(\r\n        'offset' => -36000000,\r\n        'longname' => 'Hawaii-Aleutian Standard Time',\r\n        'shortname' => 'HAST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Hawaii-Aleutian Daylight Time',\r\n        'dstshortname' => 'HADT' ),\r\n    'America/Atka' => array(\r\n        'offset' => -36000000,\r\n        'longname' => 'Hawaii-Aleutian Standard Time',\r\n        'shortname' => 'HAST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Hawaii-Aleutian Daylight Time',\r\n        'dstshortname' => 'HADT' ),\r\n    'Etc/GMT+10' => array(\r\n        'offset' => -36000000,\r\n        'longname' => 'GMT-10:00',\r\n        'shortname' => 'GMT-10:00',\r\n        'hasdst' => false ),\r\n    'HST' => array(\r\n        'offset' => -36000000,\r\n        'longname' => 'Hawaii Standard Time',\r\n        'shortname' => 'HST',\r\n        'hasdst' => false ),\r\n    'Pacific/Fakaofo' => array(\r\n        'offset' => -36000000,\r\n        'longname' => 'Tokelau Time',\r\n        'shortname' => 'TKT',\r\n        'hasdst' => false ),\r\n    'Pacific/Honolulu' => array(\r\n        'offset' => -36000000,\r\n        'longname' => 'Hawaii Standard Time',\r\n        'shortname' => 'HST',\r\n        'hasdst' => false ),\r\n    'Pacific/Johnston' => array(\r\n        'offset' => -36000000,\r\n        'longname' => 'Hawaii Standard Time',\r\n        'shortname' => 'HST',\r\n        'hasdst' => false ),\r\n    'Pacific/Rarotonga' => array(\r\n        'offset' => -36000000,\r\n        'longname' => 'Cook Is. Time',\r\n        'shortname' => 'CKT',\r\n        'hasdst' => false ),\r\n    'Pacific/Tahiti' => array(\r\n        'offset' => -36000000,\r\n        'longname' => 'Tahiti Time',\r\n        'shortname' => 'TAHT',\r\n        'hasdst' => false ),\r\n    'SystemV/HST10' => array(\r\n        'offset' => -36000000,\r\n        'longname' => 'Hawaii Standard Time',\r\n        'shortname' => 'HST',\r\n        'hasdst' => false ),\r\n    'US/Aleutian' => array(\r\n        'offset' => -36000000,\r\n        'longname' => 'Hawaii-Aleutian Standard Time',\r\n        'shortname' => 'HAST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Hawaii-Aleutian Daylight Time',\r\n        'dstshortname' => 'HADT' ),\r\n    'US/Hawaii' => array(\r\n        'offset' => -36000000,\r\n        'longname' => 'Hawaii Standard Time',\r\n        'shortname' => 'HST',\r\n        'hasdst' => false ),\r\n    'Pacific/Marquesas' => array(\r\n        'offset' => -34200000,\r\n        'longname' => 'Marquesas Time',\r\n        'shortname' => 'MART',\r\n        'hasdst' => false ),\r\n    'AST' => array(\r\n        'offset' => -32400000,\r\n        'longname' => 'Alaska Standard Time',\r\n        'shortname' => 'AKST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Alaska Daylight Time',\r\n        'dstshortname' => 'AKDT' ),\r\n    'America/Anchorage' => array(\r\n        'offset' => -32400000,\r\n        'longname' => 'Alaska Standard Time',\r\n        'shortname' => 'AKST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Alaska Daylight Time',\r\n        'dstshortname' => 'AKDT' ),\r\n    'America/Juneau' => array(\r\n        'offset' => -32400000,\r\n        'longname' => 'Alaska Standard Time',\r\n        'shortname' => 'AKST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Alaska Daylight Time',\r\n        'dstshortname' => 'AKDT' ),\r\n    'America/Nome' => array(\r\n        'offset' => -32400000,\r\n        'longname' => 'Alaska Standard Time',\r\n        'shortname' => 'AKST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Alaska Daylight Time',\r\n        'dstshortname' => 'AKDT' ),\r\n    'America/Yakutat' => array(\r\n        'offset' => -32400000,\r\n        'longname' => 'Alaska Standard Time',\r\n        'shortname' => 'AKST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Alaska Daylight Time',\r\n        'dstshortname' => 'AKDT' ),\r\n    'Etc/GMT+9' => array(\r\n        'offset' => -32400000,\r\n        'longname' => 'GMT-09:00',\r\n        'shortname' => 'GMT-09:00',\r\n        'hasdst' => false ),\r\n    'Pacific/Gambier' => array(\r\n        'offset' => -32400000,\r\n        'longname' => 'Gambier Time',\r\n        'shortname' => 'GAMT',\r\n        'hasdst' => false ),\r\n    'SystemV/YST9' => array(\r\n        'offset' => -32400000,\r\n        'longname' => 'Gambier Time',\r\n        'shortname' => 'GAMT',\r\n        'hasdst' => false ),\r\n    'SystemV/YST9YDT' => array(\r\n        'offset' => -32400000,\r\n        'longname' => 'Alaska Standard Time',\r\n        'shortname' => 'AKST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Alaska Daylight Time',\r\n        'dstshortname' => 'AKDT' ),\r\n    'US/Alaska' => array(\r\n        'offset' => -32400000,\r\n        'longname' => 'Alaska Standard Time',\r\n        'shortname' => 'AKST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Alaska Daylight Time',\r\n        'dstshortname' => 'AKDT' ),\r\n    'America/Dawson' => array(\r\n        'offset' => -28800000,\r\n        'longname' => 'Pacific Standard Time',\r\n        'shortname' => 'PST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Pacific Daylight Time',\r\n        'dstshortname' => 'PDT' ),\r\n    'America/Ensenada' => array(\r\n        'offset' => -28800000,\r\n        'longname' => 'Pacific Standard Time',\r\n        'shortname' => 'PST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Pacific Daylight Time',\r\n        'dstshortname' => 'PDT' ),\r\n    'America/Los_Angeles' => array(\r\n        'offset' => -28800000,\r\n        'longname' => 'Pacific Standard Time',\r\n        'shortname' => 'PST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Pacific Daylight Time',\r\n        'dstshortname' => 'PDT' ),\r\n    'America/Tijuana' => array(\r\n        'offset' => -28800000,\r\n        'longname' => 'Pacific Standard Time',\r\n        'shortname' => 'PST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Pacific Daylight Time',\r\n        'dstshortname' => 'PDT' ),\r\n    'America/Vancouver' => array(\r\n        'offset' => -28800000,\r\n        'longname' => 'Pacific Standard Time',\r\n        'shortname' => 'PST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Pacific Daylight Time',\r\n        'dstshortname' => 'PDT' ),\r\n    'America/Whitehorse' => array(\r\n        'offset' => -28800000,\r\n        'longname' => 'Pacific Standard Time',\r\n        'shortname' => 'PST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Pacific Daylight Time',\r\n        'dstshortname' => 'PDT' ),\r\n    'Canada/Pacific' => array(\r\n        'offset' => -28800000,\r\n        'longname' => 'Pacific Standard Time',\r\n        'shortname' => 'PST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Pacific Daylight Time',\r\n        'dstshortname' => 'PDT' ),\r\n    'Canada/Yukon' => array(\r\n        'offset' => -28800000,\r\n        'longname' => 'Pacific Standard Time',\r\n        'shortname' => 'PST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Pacific Daylight Time',\r\n        'dstshortname' => 'PDT' ),\r\n    'Etc/GMT+8' => array(\r\n        'offset' => -28800000,\r\n        'longname' => 'GMT-08:00',\r\n        'shortname' => 'GMT-08:00',\r\n        'hasdst' => false ),\r\n    'Mexico/BajaNorte' => array(\r\n        'offset' => -28800000,\r\n        'longname' => 'Pacific Standard Time',\r\n        'shortname' => 'PST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Pacific Daylight Time',\r\n        'dstshortname' => 'PDT' ),\r\n    'PST' => array(\r\n        'offset' => -28800000,\r\n        'longname' => 'Pacific Standard Time',\r\n        'shortname' => 'PST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Pacific Daylight Time',\r\n        'dstshortname' => 'PDT' ),\r\n    'PST8PDT' => array(\r\n        'offset' => -28800000,\r\n        'longname' => 'Pacific Standard Time',\r\n        'shortname' => 'PST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Pacific Daylight Time',\r\n        'dstshortname' => 'PDT' ),\r\n    'Pacific/Pitcairn' => array(\r\n        'offset' => -28800000,\r\n        'longname' => 'Pitcairn Standard Time',\r\n        'shortname' => 'PST',\r\n        'hasdst' => false ),\r\n    'SystemV/PST8' => array(\r\n        'offset' => -28800000,\r\n        'longname' => 'Pitcairn Standard Time',\r\n        'shortname' => 'PST',\r\n        'hasdst' => false ),\r\n    'SystemV/PST8PDT' => array(\r\n        'offset' => -28800000,\r\n        'longname' => 'Pacific Standard Time',\r\n        'shortname' => 'PST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Pacific Daylight Time',\r\n        'dstshortname' => 'PDT' ),\r\n    'US/Pacific' => array(\r\n        'offset' => -28800000,\r\n        'longname' => 'Pacific Standard Time',\r\n        'shortname' => 'PST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Pacific Daylight Time',\r\n        'dstshortname' => 'PDT' ),\r\n    'US/Pacific-New' => array(\r\n        'offset' => -28800000,\r\n        'longname' => 'Pacific Standard Time',\r\n        'shortname' => 'PST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Pacific Daylight Time',\r\n        'dstshortname' => 'PDT' ),\r\n    'America/Boise' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Mountain Daylight Time',\r\n        'dstshortname' => 'MDT' ),\r\n    'America/Cambridge_Bay' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Mountain Daylight Time',\r\n        'dstshortname' => 'MDT' ),\r\n    'America/Chihuahua' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Mountain Daylight Time',\r\n        'dstshortname' => 'MDT' ),\r\n    'America/Dawson_Creek' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => false ),\r\n    'America/Denver' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Mountain Daylight Time',\r\n        'dstshortname' => 'MDT' ),\r\n    'America/Edmonton' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Mountain Daylight Time',\r\n        'dstshortname' => 'MDT' ),\r\n    'America/Hermosillo' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => false ),\r\n    'America/Inuvik' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Mountain Daylight Time',\r\n        'dstshortname' => 'MDT' ),\r\n    'America/Mazatlan' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Mountain Daylight Time',\r\n        'dstshortname' => 'MDT' ),\r\n    'America/Phoenix' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => false ),\r\n    'America/Shiprock' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Mountain Daylight Time',\r\n        'dstshortname' => 'MDT' ),\r\n    'America/Yellowknife' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Mountain Daylight Time',\r\n        'dstshortname' => 'MDT' ),\r\n    'Canada/Mountain' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Mountain Daylight Time',\r\n        'dstshortname' => 'MDT' ),\r\n    'Etc/GMT+7' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'GMT-07:00',\r\n        'shortname' => 'GMT-07:00',\r\n        'hasdst' => false ),\r\n    'MST' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Mountain Daylight Time',\r\n        'dstshortname' => 'MDT' ),\r\n    'MST7MDT' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Mountain Daylight Time',\r\n        'dstshortname' => 'MDT' ),\r\n    'Mexico/BajaSur' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Mountain Daylight Time',\r\n        'dstshortname' => 'MDT' ),\r\n    'Navajo' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Mountain Daylight Time',\r\n        'dstshortname' => 'MDT' ),\r\n    'PNT' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => false ),\r\n    'SystemV/MST7' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => false ),\r\n    'SystemV/MST7MDT' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Mountain Daylight Time',\r\n        'dstshortname' => 'MDT' ),\r\n    'US/Arizona' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => false ),\r\n    'US/Mountain' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Mountain Daylight Time',\r\n        'dstshortname' => 'MDT' ),\r\n    'America/Belize' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'America/Cancun' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central Daylight Time',\r\n        'dstshortname' => 'CDT' ),\r\n    'America/Chicago' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central Daylight Time',\r\n        'dstshortname' => 'CDT' ),\r\n    'America/Costa_Rica' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'America/El_Salvador' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'America/Guatemala' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'America/Managua' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'America/Menominee' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central Daylight Time',\r\n        'dstshortname' => 'CDT' ),\r\n    'America/Merida' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central Daylight Time',\r\n        'dstshortname' => 'CDT' ),\r\n    'America/Mexico_City' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'America/Monterrey' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central Daylight Time',\r\n        'dstshortname' => 'CDT' ),\r\n    'America/North_Dakota/Center' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central Daylight Time',\r\n        'dstshortname' => 'CDT' ),\r\n    'America/Rainy_River' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central Daylight Time',\r\n        'dstshortname' => 'CDT' ),\r\n    'America/Rankin_Inlet' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Daylight Time',\r\n        'dstshortname' => 'EDT' ),\r\n    'America/Regina' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'America/Swift_Current' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'America/Tegucigalpa' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'America/Winnipeg' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central Daylight Time',\r\n        'dstshortname' => 'CDT' ),\r\n    'CST' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central Daylight Time',\r\n        'dstshortname' => 'CDT' ),\r\n    'CST6CDT' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central Daylight Time',\r\n        'dstshortname' => 'CDT' ),\r\n    'Canada/Central' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central Daylight Time',\r\n        'dstshortname' => 'CDT' ),\r\n    'Canada/East-Saskatchewan' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'Canada/Saskatchewan' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'Chile/EasterIsland' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Easter Is. Time',\r\n        'shortname' => 'EAST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Easter Is. Summer Time',\r\n        'dstshortname' => 'EASST' ),\r\n    'Etc/GMT+6' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'GMT-06:00',\r\n        'shortname' => 'GMT-06:00',\r\n        'hasdst' => false ),\r\n    'Mexico/General' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'Pacific/Easter' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Easter Is. Time',\r\n        'shortname' => 'EAST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Easter Is. Summer Time',\r\n        'dstshortname' => 'EASST' ),\r\n    'Pacific/Galapagos' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Galapagos Time',\r\n        'shortname' => 'GALT',\r\n        'hasdst' => false ),\r\n    'SystemV/CST6' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'SystemV/CST6CDT' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central Daylight Time',\r\n        'dstshortname' => 'CDT' ),\r\n    'US/Central' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central Daylight Time',\r\n        'dstshortname' => 'CDT' ),\r\n    'America/Bogota' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Colombia Time',\r\n        'shortname' => 'COT',\r\n        'hasdst' => false ),\r\n    'America/Cayman' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => false ),\r\n    'America/Detroit' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Daylight Time',\r\n        'dstshortname' => 'EDT' ),\r\n    'America/Eirunepe' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Acre Time',\r\n        'shortname' => 'ACT',\r\n        'hasdst' => false ),\r\n    'America/Fort_Wayne' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => false ),\r\n    'America/Grand_Turk' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Daylight Time',\r\n        'dstshortname' => 'EDT' ),\r\n    'America/Guayaquil' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Ecuador Time',\r\n        'shortname' => 'ECT',\r\n        'hasdst' => false ),\r\n    'America/Havana' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central Daylight Time',\r\n        'dstshortname' => 'CDT' ),\r\n    'America/Indiana/Indianapolis' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => false ),\r\n    'America/Indiana/Knox' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => false ),\r\n    'America/Indiana/Marengo' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => false ),\r\n    'America/Indiana/Vevay' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => false ),\r\n    'America/Indianapolis' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => false ),\r\n    'America/Iqaluit' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Daylight Time',\r\n        'dstshortname' => 'EDT' ),\r\n    'America/Jamaica' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => false ),\r\n    'America/Kentucky/Louisville' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Daylight Time',\r\n        'dstshortname' => 'EDT' ),\r\n    'America/Kentucky/Monticello' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Daylight Time',\r\n        'dstshortname' => 'EDT' ),\r\n    'America/Knox_IN' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => false ),\r\n    'America/Lima' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Peru Time',\r\n        'shortname' => 'PET',\r\n        'hasdst' => false ),\r\n    'America/Louisville' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Daylight Time',\r\n        'dstshortname' => 'EDT' ),\r\n    'America/Montreal' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Daylight Time',\r\n        'dstshortname' => 'EDT' ),\r\n    'America/Nassau' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Daylight Time',\r\n        'dstshortname' => 'EDT' ),\r\n    'America/New_York' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Daylight Time',\r\n        'dstshortname' => 'EDT' ),\r\n    'America/Nipigon' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Daylight Time',\r\n        'dstshortname' => 'EDT' ),\r\n    'America/Panama' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => false ),\r\n    'America/Pangnirtung' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Daylight Time',\r\n        'dstshortname' => 'EDT' ),\r\n    'America/Port-au-Prince' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => false ),\r\n    'America/Porto_Acre' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Acre Time',\r\n        'shortname' => 'ACT',\r\n        'hasdst' => false ),\r\n    'America/Rio_Branco' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Acre Time',\r\n        'shortname' => 'ACT',\r\n        'hasdst' => false ),\r\n    'America/Thunder_Bay' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Daylight Time',\r\n        'dstshortname' => 'EDT' ),\r\n    'Brazil/Acre' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Acre Time',\r\n        'shortname' => 'ACT',\r\n        'hasdst' => false ),\r\n    'Canada/Eastern' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Daylight Time',\r\n        'dstshortname' => 'EDT' ),\r\n    'Cuba' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central Daylight Time',\r\n        'dstshortname' => 'CDT' ),\r\n    'EST' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Daylight Time',\r\n        'dstshortname' => 'EDT' ),\r\n    'EST5EDT' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Daylight Time',\r\n        'dstshortname' => 'EDT' ),\r\n    'Etc/GMT+5' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'GMT-05:00',\r\n        'shortname' => 'GMT-05:00',\r\n        'hasdst' => false ),\r\n    'IET' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => false ),\r\n    'Jamaica' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => false ),\r\n    'SystemV/EST5' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => false ),\r\n    'SystemV/EST5EDT' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Daylight Time',\r\n        'dstshortname' => 'EDT' ),\r\n    'US/East-Indiana' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => false ),\r\n    'US/Eastern' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Daylight Time',\r\n        'dstshortname' => 'EDT' ),\r\n    'US/Indiana-Starke' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => false ),\r\n    'US/Michigan' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Daylight Time',\r\n        'dstshortname' => 'EDT' ),\r\n    'America/Anguilla' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'America/Antigua' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'America/Aruba' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'America/Asuncion' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Paraguay Time',\r\n        'shortname' => 'PYT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Paraguay Summer Time',\r\n        'dstshortname' => 'PYST' ),\r\n    'America/Barbados' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'America/Boa_Vista' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Amazon Standard Time',\r\n        'shortname' => 'AMT',\r\n        'hasdst' => false ),\r\n    'America/Caracas' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Venezuela Time',\r\n        'shortname' => 'VET',\r\n        'hasdst' => false ),\r\n    'America/Cuiaba' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Amazon Standard Time',\r\n        'shortname' => 'AMT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Amazon Summer Time',\r\n        'dstshortname' => 'AMST' ),\r\n    'America/Curacao' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'America/Dominica' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'America/Glace_Bay' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Atlantic Daylight Time',\r\n        'dstshortname' => 'ADT' ),\r\n    'America/Goose_Bay' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Atlantic Daylight Time',\r\n        'dstshortname' => 'ADT' ),\r\n    'America/Grenada' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'America/Guadeloupe' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'America/Guyana' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Guyana Time',\r\n        'shortname' => 'GYT',\r\n        'hasdst' => false ),\r\n    'America/Halifax' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Atlantic Daylight Time',\r\n        'dstshortname' => 'ADT' ),\r\n    'America/La_Paz' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Bolivia Time',\r\n        'shortname' => 'BOT',\r\n        'hasdst' => false ),\r\n    'America/Manaus' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Amazon Standard Time',\r\n        'shortname' => 'AMT',\r\n        'hasdst' => false ),\r\n    'America/Martinique' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'America/Montserrat' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'America/Port_of_Spain' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'America/Porto_Velho' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Amazon Standard Time',\r\n        'shortname' => 'AMT',\r\n        'hasdst' => false ),\r\n    'America/Puerto_Rico' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'America/Santiago' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Chile Time',\r\n        'shortname' => 'CLT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Chile Summer Time',\r\n        'dstshortname' => 'CLST' ),\r\n    'America/Santo_Domingo' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'America/St_Kitts' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'America/St_Lucia' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'America/St_Thomas' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'America/St_Vincent' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'America/Thule' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'America/Tortola' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'America/Virgin' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'Antarctica/Palmer' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Chile Time',\r\n        'shortname' => 'CLT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Chile Summer Time',\r\n        'dstshortname' => 'CLST' ),\r\n    'Atlantic/Bermuda' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Atlantic Daylight Time',\r\n        'dstshortname' => 'ADT' ),\r\n    'Atlantic/Stanley' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Falkland Is. Time',\r\n        'shortname' => 'FKT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Falkland Is. Summer Time',\r\n        'dstshortname' => 'FKST' ),\r\n    'Brazil/West' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Amazon Standard Time',\r\n        'shortname' => 'AMT',\r\n        'hasdst' => false ),\r\n    'Canada/Atlantic' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Atlantic Daylight Time',\r\n        'dstshortname' => 'ADT' ),\r\n    'Chile/Continental' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Chile Time',\r\n        'shortname' => 'CLT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Chile Summer Time',\r\n        'dstshortname' => 'CLST' ),\r\n    'Etc/GMT+4' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'GMT-04:00',\r\n        'shortname' => 'GMT-04:00',\r\n        'hasdst' => false ),\r\n    'PRT' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'SystemV/AST4' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'SystemV/AST4ADT' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Atlantic Daylight Time',\r\n        'dstshortname' => 'ADT' ),\r\n    'America/St_Johns' => array(\r\n        'offset' => -12600000,\r\n        'longname' => 'Newfoundland Standard Time',\r\n        'shortname' => 'NST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Newfoundland Daylight Time',\r\n        'dstshortname' => 'NDT' ),\r\n    'CNT' => array(\r\n        'offset' => -12600000,\r\n        'longname' => 'Newfoundland Standard Time',\r\n        'shortname' => 'NST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Newfoundland Daylight Time',\r\n        'dstshortname' => 'NDT' ),\r\n    'Canada/Newfoundland' => array(\r\n        'offset' => -12600000,\r\n        'longname' => 'Newfoundland Standard Time',\r\n        'shortname' => 'NST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Newfoundland Daylight Time',\r\n        'dstshortname' => 'NDT' ),\r\n    'AGT' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Argentine Time',\r\n        'shortname' => 'ART',\r\n        'hasdst' => false ),\r\n    'America/Araguaina' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Brazil Time',\r\n        'shortname' => 'BRT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Brazil Summer Time',\r\n        'dstshortname' => 'BRST' ),\r\n    'America/Belem' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Brazil Time',\r\n        'shortname' => 'BRT',\r\n        'hasdst' => false ),\r\n    'America/Buenos_Aires' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Argentine Time',\r\n        'shortname' => 'ART',\r\n        'hasdst' => false ),\r\n    'America/Catamarca' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Argentine Time',\r\n        'shortname' => 'ART',\r\n        'hasdst' => false ),\r\n    'America/Cayenne' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'French Guiana Time',\r\n        'shortname' => 'GFT',\r\n        'hasdst' => false ),\r\n    'America/Cordoba' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Argentine Time',\r\n        'shortname' => 'ART',\r\n        'hasdst' => false ),\r\n    'America/Fortaleza' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Brazil Time',\r\n        'shortname' => 'BRT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Brazil Summer Time',\r\n        'dstshortname' => 'BRST' ),\r\n    'America/Godthab' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Western Greenland Time',\r\n        'shortname' => 'WGT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Western Greenland Summer Time',\r\n        'dstshortname' => 'WGST' ),\r\n    'America/Jujuy' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Argentine Time',\r\n        'shortname' => 'ART',\r\n        'hasdst' => false ),\r\n    'America/Maceio' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Brazil Time',\r\n        'shortname' => 'BRT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Brazil Summer Time',\r\n        'dstshortname' => 'BRST' ),\r\n    'America/Mendoza' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Argentine Time',\r\n        'shortname' => 'ART',\r\n        'hasdst' => false ),\r\n    'America/Miquelon' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Pierre & Miquelon Standard Time',\r\n        'shortname' => 'PMST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Pierre & Miquelon Daylight Time',\r\n        'dstshortname' => 'PMDT' ),\r\n    'America/Montevideo' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Uruguay Time',\r\n        'shortname' => 'UYT',\r\n        'hasdst' => false ),\r\n    'America/Paramaribo' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Suriname Time',\r\n        'shortname' => 'SRT',\r\n        'hasdst' => false ),\r\n    'America/Recife' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Brazil Time',\r\n        'shortname' => 'BRT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Brazil Summer Time',\r\n        'dstshortname' => 'BRST' ),\r\n    'America/Rosario' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Argentine Time',\r\n        'shortname' => 'ART',\r\n        'hasdst' => false ),\r\n    'America/Sao_Paulo' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Brazil Time',\r\n        'shortname' => 'BRT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Brazil Summer Time',\r\n        'dstshortname' => 'BRST' ),\r\n    'BET' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Brazil Time',\r\n        'shortname' => 'BRT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Brazil Summer Time',\r\n        'dstshortname' => 'BRST' ),\r\n    'Brazil/East' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Brazil Time',\r\n        'shortname' => 'BRT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Brazil Summer Time',\r\n        'dstshortname' => 'BRST' ),\r\n    'Etc/GMT+3' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'GMT-03:00',\r\n        'shortname' => 'GMT-03:00',\r\n        'hasdst' => false ),\r\n    'America/Noronha' => array(\r\n        'offset' => -7200000,\r\n        'longname' => 'Fernando de Noronha Time',\r\n        'shortname' => 'FNT',\r\n        'hasdst' => false ),\r\n    'Atlantic/South_Georgia' => array(\r\n        'offset' => -7200000,\r\n        'longname' => 'South Georgia Standard Time',\r\n        'shortname' => 'GST',\r\n        'hasdst' => false ),\r\n    'Brazil/DeNoronha' => array(\r\n        'offset' => -7200000,\r\n        'longname' => 'Fernando de Noronha Time',\r\n        'shortname' => 'FNT',\r\n        'hasdst' => false ),\r\n    'Etc/GMT+2' => array(\r\n        'offset' => -7200000,\r\n        'longname' => 'GMT-02:00',\r\n        'shortname' => 'GMT-02:00',\r\n        'hasdst' => false ),\r\n    'America/Scoresbysund' => array(\r\n        'offset' => -3600000,\r\n        'longname' => 'Eastern Greenland Time',\r\n        'shortname' => 'EGT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Greenland Summer Time',\r\n        'dstshortname' => 'EGST' ),\r\n    'Atlantic/Azores' => array(\r\n        'offset' => -3600000,\r\n        'longname' => 'Azores Time',\r\n        'shortname' => 'AZOT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Azores Summer Time',\r\n        'dstshortname' => 'AZOST' ),\r\n    'Atlantic/Cape_Verde' => array(\r\n        'offset' => -3600000,\r\n        'longname' => 'Cape Verde Time',\r\n        'shortname' => 'CVT',\r\n        'hasdst' => false ),\r\n    'Etc/GMT+1' => array(\r\n        'offset' => -3600000,\r\n        'longname' => 'GMT-01:00',\r\n        'shortname' => 'GMT-01:00',\r\n        'hasdst' => false ),\r\n    'Africa/Abidjan' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => false ),\r\n    'Africa/Accra' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => false ),\r\n    'Africa/Bamako' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => false ),\r\n    'Africa/Banjul' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => false ),\r\n    'Africa/Bissau' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => false ),\r\n    'Africa/Casablanca' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Western European Time',\r\n        'shortname' => 'WET',\r\n        'hasdst' => false ),\r\n    'Africa/Conakry' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => false ),\r\n    'Africa/Dakar' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => false ),\r\n    'Africa/El_Aaiun' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Western European Time',\r\n        'shortname' => 'WET',\r\n        'hasdst' => false ),\r\n    'Africa/Freetown' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => false ),\r\n    'Africa/Lome' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => false ),\r\n    'Africa/Monrovia' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => false ),\r\n    'Africa/Nouakchott' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => false ),\r\n    'Africa/Ouagadougou' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => false ),\r\n    'Africa/Sao_Tome' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => false ),\r\n    'Africa/Timbuktu' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => false ),\r\n    'America/Danmarkshavn' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => false ),\r\n    'Atlantic/Canary' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Western European Time',\r\n        'shortname' => 'WET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Western European Summer Time',\r\n        'dstshortname' => 'WEST' ),\r\n    'Atlantic/Faeroe' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Western European Time',\r\n        'shortname' => 'WET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Western European Summer Time',\r\n        'dstshortname' => 'WEST' ),\r\n    'Atlantic/Madeira' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Western European Time',\r\n        'shortname' => 'WET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Western European Summer Time',\r\n        'dstshortname' => 'WEST' ),\r\n    'Atlantic/Reykjavik' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => false ),\r\n    'Atlantic/St_Helena' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => false ),\r\n    'Eire' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Irish Summer Time',\r\n        'dstshortname' => 'IST' ),\r\n    'Etc/GMT' => array(\r\n        'offset' => 0,\r\n        'longname' => 'GMT+00:00',\r\n        'shortname' => 'GMT+00:00',\r\n        'hasdst' => false ),\r\n    'Etc/GMT+0' => array(\r\n        'offset' => 0,\r\n        'longname' => 'GMT+00:00',\r\n        'shortname' => 'GMT+00:00',\r\n        'hasdst' => false ),\r\n    'Etc/GMT-0' => array(\r\n        'offset' => 0,\r\n        'longname' => 'GMT+00:00',\r\n        'shortname' => 'GMT+00:00',\r\n        'hasdst' => false ),\r\n    'Etc/GMT0' => array(\r\n        'offset' => 0,\r\n        'longname' => 'GMT+00:00',\r\n        'shortname' => 'GMT+00:00',\r\n        'hasdst' => false ),\r\n    'Etc/Greenwich' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => false ),\r\n    'Etc/UCT' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Coordinated Universal Time',\r\n        'shortname' => 'UTC',\r\n        'hasdst' => false ),\r\n    'Etc/UTC' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Coordinated Universal Time',\r\n        'shortname' => 'UTC',\r\n        'hasdst' => false ),\r\n    'Etc/Universal' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Coordinated Universal Time',\r\n        'shortname' => 'UTC',\r\n        'hasdst' => false ),\r\n    'Etc/Zulu' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Coordinated Universal Time',\r\n        'shortname' => 'UTC',\r\n        'hasdst' => false ),\r\n    'Europe/Belfast' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'British Summer Time',\r\n        'dstshortname' => 'BST' ),\r\n    'Europe/Dublin' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Irish Summer Time',\r\n        'dstshortname' => 'IST' ),\r\n    'Europe/Lisbon' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Western European Time',\r\n        'shortname' => 'WET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Western European Summer Time',\r\n        'dstshortname' => 'WEST' ),\r\n    'Europe/London' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'British Summer Time',\r\n        'dstshortname' => 'BST' ),\r\n    'GB' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'British Summer Time',\r\n        'dstshortname' => 'BST' ),\r\n    'GB-Eire' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'British Summer Time',\r\n        'dstshortname' => 'BST' ),\r\n    'GMT' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => false ),\r\n    'GMT0' => array(\r\n        'offset' => 0,\r\n        'longname' => 'GMT+00:00',\r\n        'shortname' => 'GMT+00:00',\r\n        'hasdst' => false ),\r\n    'Greenwich' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => false ),\r\n    'Iceland' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => false ),\r\n    'Portugal' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Western European Time',\r\n        'shortname' => 'WET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Western European Summer Time',\r\n        'dstshortname' => 'WEST' ),\r\n    'UCT' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Coordinated Universal Time',\r\n        'shortname' => 'UTC',\r\n        'hasdst' => false ),\r\n    'UTC' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Coordinated Universal Time',\r\n        'shortname' => 'UTC',\r\n        'hasdst' => false ),\r\n    'Universal' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Coordinated Universal Time',\r\n        'shortname' => 'UTC',\r\n        'hasdst' => false ),\r\n    'WET' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Western European Time',\r\n        'shortname' => 'WET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Western European Summer Time',\r\n        'dstshortname' => 'WEST' ),\r\n    'Zulu' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Coordinated Universal Time',\r\n        'shortname' => 'UTC',\r\n        'hasdst' => false ),\r\n    'Africa/Algiers' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => false ),\r\n    'Africa/Bangui' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Western African Time',\r\n        'shortname' => 'WAT',\r\n        'hasdst' => false ),\r\n    'Africa/Brazzaville' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Western African Time',\r\n        'shortname' => 'WAT',\r\n        'hasdst' => false ),\r\n    'Africa/Ceuta' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Africa/Douala' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Western African Time',\r\n        'shortname' => 'WAT',\r\n        'hasdst' => false ),\r\n    'Africa/Kinshasa' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Western African Time',\r\n        'shortname' => 'WAT',\r\n        'hasdst' => false ),\r\n    'Africa/Lagos' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Western African Time',\r\n        'shortname' => 'WAT',\r\n        'hasdst' => false ),\r\n    'Africa/Libreville' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Western African Time',\r\n        'shortname' => 'WAT',\r\n        'hasdst' => false ),\r\n    'Africa/Luanda' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Western African Time',\r\n        'shortname' => 'WAT',\r\n        'hasdst' => false ),\r\n    'Africa/Malabo' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Western African Time',\r\n        'shortname' => 'WAT',\r\n        'hasdst' => false ),\r\n    'Africa/Ndjamena' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Western African Time',\r\n        'shortname' => 'WAT',\r\n        'hasdst' => false ),\r\n    'Africa/Niamey' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Western African Time',\r\n        'shortname' => 'WAT',\r\n        'hasdst' => false ),\r\n    'Africa/Porto-Novo' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Western African Time',\r\n        'shortname' => 'WAT',\r\n        'hasdst' => false ),\r\n    'Africa/Tunis' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => false ),\r\n    'Africa/Windhoek' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Western African Time',\r\n        'shortname' => 'WAT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Western African Summer Time',\r\n        'dstshortname' => 'WAST' ),\r\n    'Arctic/Longyearbyen' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Atlantic/Jan_Mayen' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Eastern Greenland Time',\r\n        'shortname' => 'EGT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Greenland Summer Time',\r\n        'dstshortname' => 'EGST' ),\r\n    'CET' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'CEST' => array(\r\n        'offset' => 3600000,\r\n        'longname' => \"Central European Time\",\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => \"Central European Summer Time\",\r\n        'dstshortname' => 'CEST' ),\r\n    'ECT' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Etc/GMT-1' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'GMT+01:00',\r\n        'shortname' => 'GMT+01:00',\r\n        'hasdst' => false ),\r\n    'Europe/Amsterdam' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Andorra' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Belgrade' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Berlin' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Bratislava' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Brussels' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Budapest' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Copenhagen' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Gibraltar' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Ljubljana' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Luxembourg' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Madrid' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Malta' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Monaco' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Oslo' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Paris' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Prague' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Rome' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/San_Marino' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Sarajevo' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Skopje' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Stockholm' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Tirane' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Vaduz' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Vatican' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Vienna' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Warsaw' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Zagreb' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Europe/Zurich' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'MET' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Middle Europe Time',\r\n        'shortname' => 'MET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Middle Europe Summer Time',\r\n        'dstshortname' => 'MEST' ),\r\n    'Poland' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'ART' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Africa/Blantyre' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Central African Time',\r\n        'shortname' => 'CAT',\r\n        'hasdst' => false ),\r\n    'Africa/Bujumbura' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Central African Time',\r\n        'shortname' => 'CAT',\r\n        'hasdst' => false ),\r\n    'Africa/Cairo' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Africa/Gaborone' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Central African Time',\r\n        'shortname' => 'CAT',\r\n        'hasdst' => false ),\r\n    'Africa/Harare' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Central African Time',\r\n        'shortname' => 'CAT',\r\n        'hasdst' => false ),\r\n    'Africa/Johannesburg' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'South Africa Standard Time',\r\n        'shortname' => 'SAST',\r\n        'hasdst' => false ),\r\n    'Africa/Kigali' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Central African Time',\r\n        'shortname' => 'CAT',\r\n        'hasdst' => false ),\r\n    'Africa/Lubumbashi' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Central African Time',\r\n        'shortname' => 'CAT',\r\n        'hasdst' => false ),\r\n    'Africa/Lusaka' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Central African Time',\r\n        'shortname' => 'CAT',\r\n        'hasdst' => false ),\r\n    'Africa/Maputo' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Central African Time',\r\n        'shortname' => 'CAT',\r\n        'hasdst' => false ),\r\n    'Africa/Maseru' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'South Africa Standard Time',\r\n        'shortname' => 'SAST',\r\n        'hasdst' => false ),\r\n    'Africa/Mbabane' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'South Africa Standard Time',\r\n        'shortname' => 'SAST',\r\n        'hasdst' => false ),\r\n    'Africa/Tripoli' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => false ),\r\n    'Asia/Amman' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Asia/Beirut' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Asia/Damascus' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Asia/Gaza' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Asia/Istanbul' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Asia/Jerusalem' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Israel Standard Time',\r\n        'shortname' => 'IST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Israel Daylight Time',\r\n        'dstshortname' => 'IDT' ),\r\n    'Asia/Nicosia' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Asia/Tel_Aviv' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Israel Standard Time',\r\n        'shortname' => 'IST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Israel Daylight Time',\r\n        'dstshortname' => 'IDT' ),\r\n    'CAT' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Central African Time',\r\n        'shortname' => 'CAT',\r\n        'hasdst' => false ),\r\n    'EET' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Egypt' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Etc/GMT-2' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'GMT+02:00',\r\n        'shortname' => 'GMT+02:00',\r\n        'hasdst' => false ),\r\n    'Europe/Athens' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Europe/Bucharest' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Europe/Chisinau' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Europe/Helsinki' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Europe/Istanbul' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Europe/Kaliningrad' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Europe/Kiev' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Europe/Minsk' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Europe/Nicosia' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Europe/Riga' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Europe/Simferopol' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Europe/Sofia' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Europe/Tallinn' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => false ),\r\n    'Europe/Tiraspol' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Europe/Uzhgorod' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Europe/Vilnius' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => false ),\r\n    'Europe/Zaporozhye' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Israel' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Israel Standard Time',\r\n        'shortname' => 'IST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Israel Daylight Time',\r\n        'dstshortname' => 'IDT' ),\r\n    'Libya' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => false ),\r\n    'Turkey' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Africa/Addis_Ababa' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Eastern African Time',\r\n        'shortname' => 'EAT',\r\n        'hasdst' => false ),\r\n    'Africa/Asmera' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Eastern African Time',\r\n        'shortname' => 'EAT',\r\n        'hasdst' => false ),\r\n    'Africa/Dar_es_Salaam' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Eastern African Time',\r\n        'shortname' => 'EAT',\r\n        'hasdst' => false ),\r\n    'Africa/Djibouti' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Eastern African Time',\r\n        'shortname' => 'EAT',\r\n        'hasdst' => false ),\r\n    'Africa/Kampala' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Eastern African Time',\r\n        'shortname' => 'EAT',\r\n        'hasdst' => false ),\r\n    'Africa/Khartoum' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Eastern African Time',\r\n        'shortname' => 'EAT',\r\n        'hasdst' => false ),\r\n    'Africa/Mogadishu' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Eastern African Time',\r\n        'shortname' => 'EAT',\r\n        'hasdst' => false ),\r\n    'Africa/Nairobi' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Eastern African Time',\r\n        'shortname' => 'EAT',\r\n        'hasdst' => false ),\r\n    'Antarctica/Syowa' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Syowa Time',\r\n        'shortname' => 'SYOT',\r\n        'hasdst' => false ),\r\n    'Asia/Aden' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Arabia Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'Asia/Baghdad' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Arabia Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Arabia Daylight Time',\r\n        'dstshortname' => 'ADT' ),\r\n    'Asia/Bahrain' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Arabia Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'Asia/Kuwait' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Arabia Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'Asia/Qatar' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Arabia Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'Asia/Riyadh' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Arabia Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'EAT' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Eastern African Time',\r\n        'shortname' => 'EAT',\r\n        'hasdst' => false ),\r\n    'Etc/GMT-3' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'GMT+03:00',\r\n        'shortname' => 'GMT+03:00',\r\n        'hasdst' => false ),\r\n    'Europe/Moscow' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Moscow Standard Time',\r\n        'shortname' => 'MSK',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Moscow Daylight Time',\r\n        'dstshortname' => 'MSD' ),\r\n    'Indian/Antananarivo' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Eastern African Time',\r\n        'shortname' => 'EAT',\r\n        'hasdst' => false ),\r\n    'Indian/Comoro' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Eastern African Time',\r\n        'shortname' => 'EAT',\r\n        'hasdst' => false ),\r\n    'Indian/Mayotte' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Eastern African Time',\r\n        'shortname' => 'EAT',\r\n        'hasdst' => false ),\r\n    'W-SU' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Moscow Standard Time',\r\n        'shortname' => 'MSK',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Moscow Daylight Time',\r\n        'dstshortname' => 'MSD' ),\r\n    'Asia/Riyadh87' => array(\r\n        'offset' => 11224000,\r\n        'longname' => 'GMT+03:07',\r\n        'shortname' => 'GMT+03:07',\r\n        'hasdst' => false ),\r\n    'Asia/Riyadh88' => array(\r\n        'offset' => 11224000,\r\n        'longname' => 'GMT+03:07',\r\n        'shortname' => 'GMT+03:07',\r\n        'hasdst' => false ),\r\n    'Asia/Riyadh89' => array(\r\n        'offset' => 11224000,\r\n        'longname' => 'GMT+03:07',\r\n        'shortname' => 'GMT+03:07',\r\n        'hasdst' => false ),\r\n    'Mideast/Riyadh87' => array(\r\n        'offset' => 11224000,\r\n        'longname' => 'GMT+03:07',\r\n        'shortname' => 'GMT+03:07',\r\n        'hasdst' => false ),\r\n    'Mideast/Riyadh88' => array(\r\n        'offset' => 11224000,\r\n        'longname' => 'GMT+03:07',\r\n        'shortname' => 'GMT+03:07',\r\n        'hasdst' => false ),\r\n    'Mideast/Riyadh89' => array(\r\n        'offset' => 11224000,\r\n        'longname' => 'GMT+03:07',\r\n        'shortname' => 'GMT+03:07',\r\n        'hasdst' => false ),\r\n    'Asia/Tehran' => array(\r\n        'offset' => 12600000,\r\n        'longname' => 'Iran Time',\r\n        'shortname' => 'IRT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Iran Sumer Time',\r\n        'dstshortname' => 'IRST' ),\r\n    'Iran' => array(\r\n        'offset' => 12600000,\r\n        'longname' => 'Iran Time',\r\n        'shortname' => 'IRT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Iran Sumer Time',\r\n        'dstshortname' => 'IRST' ),\r\n    'Asia/Aqtau' => array(\r\n        'offset' => 14400000,\r\n        'longname' => 'Aqtau Time',\r\n        'shortname' => 'AQTT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Aqtau Summer Time',\r\n        'dstshortname' => 'AQTST' ),\r\n    'Asia/Baku' => array(\r\n        'offset' => 14400000,\r\n        'longname' => 'Azerbaijan Time',\r\n        'shortname' => 'AZT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Azerbaijan Summer Time',\r\n        'dstshortname' => 'AZST' ),\r\n    'Asia/Dubai' => array(\r\n        'offset' => 14400000,\r\n        'longname' => 'Gulf Standard Time',\r\n        'shortname' => 'GST',\r\n        'hasdst' => false ),\r\n    'Asia/Muscat' => array(\r\n        'offset' => 14400000,\r\n        'longname' => 'Gulf Standard Time',\r\n        'shortname' => 'GST',\r\n        'hasdst' => false ),\r\n    'Asia/Tbilisi' => array(\r\n        'offset' => 14400000,\r\n        'longname' => 'Georgia Time',\r\n        'shortname' => 'GET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Georgia Summer Time',\r\n        'dstshortname' => 'GEST' ),\r\n    'Asia/Yerevan' => array(\r\n        'offset' => 14400000,\r\n        'longname' => 'Armenia Time',\r\n        'shortname' => 'AMT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Armenia Summer Time',\r\n        'dstshortname' => 'AMST' ),\r\n    'Etc/GMT-4' => array(\r\n        'offset' => 14400000,\r\n        'longname' => 'GMT+04:00',\r\n        'shortname' => 'GMT+04:00',\r\n        'hasdst' => false ),\r\n    'Europe/Samara' => array(\r\n        'offset' => 14400000,\r\n        'longname' => 'Samara Time',\r\n        'shortname' => 'SAMT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Samara Summer Time',\r\n        'dstshortname' => 'SAMST' ),\r\n    'Indian/Mahe' => array(\r\n        'offset' => 14400000,\r\n        'longname' => 'Seychelles Time',\r\n        'shortname' => 'SCT',\r\n        'hasdst' => false ),\r\n    'Indian/Mauritius' => array(\r\n        'offset' => 14400000,\r\n        'longname' => 'Mauritius Time',\r\n        'shortname' => 'MUT',\r\n        'hasdst' => false ),\r\n    'Indian/Reunion' => array(\r\n        'offset' => 14400000,\r\n        'longname' => 'Reunion Time',\r\n        'shortname' => 'RET',\r\n        'hasdst' => false ),\r\n    'NET' => array(\r\n        'offset' => 14400000,\r\n        'longname' => 'Armenia Time',\r\n        'shortname' => 'AMT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Armenia Summer Time',\r\n        'dstshortname' => 'AMST' ),\r\n    'Asia/Kabul' => array(\r\n        'offset' => 16200000,\r\n        'longname' => 'Afghanistan Time',\r\n        'shortname' => 'AFT',\r\n        'hasdst' => false ),\r\n    'Asia/Aqtobe' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'Aqtobe Time',\r\n        'shortname' => 'AQTT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Aqtobe Summer Time',\r\n        'dstshortname' => 'AQTST' ),\r\n    'Asia/Ashgabat' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'Turkmenistan Time',\r\n        'shortname' => 'TMT',\r\n        'hasdst' => false ),\r\n    'Asia/Ashkhabad' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'Turkmenistan Time',\r\n        'shortname' => 'TMT',\r\n        'hasdst' => false ),\r\n    'Asia/Bishkek' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'Kirgizstan Time',\r\n        'shortname' => 'KGT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Kirgizstan Summer Time',\r\n        'dstshortname' => 'KGST' ),\r\n    'Asia/Dushanbe' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'Tajikistan Time',\r\n        'shortname' => 'TJT',\r\n        'hasdst' => false ),\r\n    'Asia/Karachi' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'Pakistan Time',\r\n        'shortname' => 'PKT',\r\n        'hasdst' => false ),\r\n    'Asia/Samarkand' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'Turkmenistan Time',\r\n        'shortname' => 'TMT',\r\n        'hasdst' => false ),\r\n    'Asia/Tashkent' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'Uzbekistan Time',\r\n        'shortname' => 'UZT',\r\n        'hasdst' => false ),\r\n    'Asia/Yekaterinburg' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'Yekaterinburg Time',\r\n        'shortname' => 'YEKT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Yekaterinburg Summer Time',\r\n        'dstshortname' => 'YEKST' ),\r\n    'Etc/GMT-5' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'GMT+05:00',\r\n        'shortname' => 'GMT+05:00',\r\n        'hasdst' => false ),\r\n    'Indian/Kerguelen' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'French Southern & Antarctic Lands Time',\r\n        'shortname' => 'TFT',\r\n        'hasdst' => false ),\r\n    'Indian/Maldives' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'Maldives Time',\r\n        'shortname' => 'MVT',\r\n        'hasdst' => false ),\r\n    'PLT' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'Pakistan Time',\r\n        'shortname' => 'PKT',\r\n        'hasdst' => false ),\r\n    'Asia/Calcutta' => array(\r\n        'offset' => 19800000,\r\n        'longname' => 'India Standard Time',\r\n        'shortname' => 'IST',\r\n        'hasdst' => false ),\r\n    'IST' => array(\r\n        'offset' => 19800000,\r\n        'longname' => 'India Standard Time',\r\n        'shortname' => 'IST',\r\n        'hasdst' => false ),\r\n    'Asia/Katmandu' => array(\r\n        'offset' => 20700000,\r\n        'longname' => 'Nepal Time',\r\n        'shortname' => 'NPT',\r\n        'hasdst' => false ),\r\n    'Antarctica/Mawson' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'Mawson Time',\r\n        'shortname' => 'MAWT',\r\n        'hasdst' => false ),\r\n    'Antarctica/Vostok' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'Vostok time',\r\n        'shortname' => 'VOST',\r\n        'hasdst' => false ),\r\n    'Asia/Almaty' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'Alma-Ata Time',\r\n        'shortname' => 'ALMT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Alma-Ata Summer Time',\r\n        'dstshortname' => 'ALMST' ),\r\n    'Asia/Colombo' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'Sri Lanka Time',\r\n        'shortname' => 'LKT',\r\n        'hasdst' => false ),\r\n    'Asia/Dacca' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'Bangladesh Time',\r\n        'shortname' => 'BDT',\r\n        'hasdst' => false ),\r\n    'Asia/Dhaka' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'Bangladesh Time',\r\n        'shortname' => 'BDT',\r\n        'hasdst' => false ),\r\n    'Asia/Novosibirsk' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'Novosibirsk Time',\r\n        'shortname' => 'NOVT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Novosibirsk Summer Time',\r\n        'dstshortname' => 'NOVST' ),\r\n    'Asia/Omsk' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'Omsk Time',\r\n        'shortname' => 'OMST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Omsk Summer Time',\r\n        'dstshortname' => 'OMSST' ),\r\n    'Asia/Thimbu' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'Bhutan Time',\r\n        'shortname' => 'BTT',\r\n        'hasdst' => false ),\r\n    'Asia/Thimphu' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'Bhutan Time',\r\n        'shortname' => 'BTT',\r\n        'hasdst' => false ),\r\n    'BDT' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'Bangladesh Time',\r\n        'shortname' => 'BDT',\r\n        'hasdst' => false ),\r\n    'Etc/GMT-6' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'GMT+06:00',\r\n        'shortname' => 'GMT+06:00',\r\n        'hasdst' => false ),\r\n    'Indian/Chagos' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'Indian Ocean Territory Time',\r\n        'shortname' => 'IOT',\r\n        'hasdst' => false ),\r\n    'Asia/Rangoon' => array(\r\n        'offset' => 23400000,\r\n        'longname' => 'Myanmar Time',\r\n        'shortname' => 'MMT',\r\n        'hasdst' => false ),\r\n    'Indian/Cocos' => array(\r\n        'offset' => 23400000,\r\n        'longname' => 'Cocos Islands Time',\r\n        'shortname' => 'CCT',\r\n        'hasdst' => false ),\r\n    'Antarctica/Davis' => array(\r\n        'offset' => 25200000,\r\n        'longname' => 'Davis Time',\r\n        'shortname' => 'DAVT',\r\n        'hasdst' => false ),\r\n    'Asia/Bangkok' => array(\r\n        'offset' => 25200000,\r\n        'longname' => 'Indochina Time',\r\n        'shortname' => 'ICT',\r\n        'hasdst' => false ),\r\n    'Asia/Hovd' => array(\r\n        'offset' => 25200000,\r\n        'longname' => 'Hovd Time',\r\n        'shortname' => 'HOVT',\r\n        'hasdst' => false ),\r\n    'Asia/Jakarta' => array(\r\n        'offset' => 25200000,\r\n        'longname' => 'West Indonesia Time',\r\n        'shortname' => 'WIT',\r\n        'hasdst' => false ),\r\n    'Asia/Krasnoyarsk' => array(\r\n        'offset' => 25200000,\r\n        'longname' => 'Krasnoyarsk Time',\r\n        'shortname' => 'KRAT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Krasnoyarsk Summer Time',\r\n        'dstshortname' => 'KRAST' ),\r\n    'Asia/Phnom_Penh' => array(\r\n        'offset' => 25200000,\r\n        'longname' => 'Indochina Time',\r\n        'shortname' => 'ICT',\r\n        'hasdst' => false ),\r\n    'Asia/Pontianak' => array(\r\n        'offset' => 25200000,\r\n        'longname' => 'West Indonesia Time',\r\n        'shortname' => 'WIT',\r\n        'hasdst' => false ),\r\n    'Asia/Saigon' => array(\r\n        'offset' => 25200000,\r\n        'longname' => 'Indochina Time',\r\n        'shortname' => 'ICT',\r\n        'hasdst' => false ),\r\n    'Asia/Vientiane' => array(\r\n        'offset' => 25200000,\r\n        'longname' => 'Indochina Time',\r\n        'shortname' => 'ICT',\r\n        'hasdst' => false ),\r\n    'Etc/GMT-7' => array(\r\n        'offset' => 25200000,\r\n        'longname' => 'GMT+07:00',\r\n        'shortname' => 'GMT+07:00',\r\n        'hasdst' => false ),\r\n    'Indian/Christmas' => array(\r\n        'offset' => 25200000,\r\n        'longname' => 'Christmas Island Time',\r\n        'shortname' => 'CXT',\r\n        'hasdst' => false ),\r\n    'VST' => array(\r\n        'offset' => 25200000,\r\n        'longname' => 'Indochina Time',\r\n        'shortname' => 'ICT',\r\n        'hasdst' => false ),\r\n    'Antarctica/Casey' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Western Standard Time (Australia)',\r\n        'shortname' => 'WST',\r\n        'hasdst' => false ),\r\n    'Asia/Brunei' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Brunei Time',\r\n        'shortname' => 'BNT',\r\n        'hasdst' => false ),\r\n    'Asia/Chongqing' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'China Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'Asia/Chungking' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'China Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'Asia/Harbin' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'China Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'Asia/Hong_Kong' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Hong Kong Time',\r\n        'shortname' => 'HKT',\r\n        'hasdst' => false ),\r\n    'Asia/Irkutsk' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Irkutsk Time',\r\n        'shortname' => 'IRKT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Irkutsk Summer Time',\r\n        'dstshortname' => 'IRKST' ),\r\n    'Asia/Kashgar' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'China Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'Asia/Kuala_Lumpur' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Malaysia Time',\r\n        'shortname' => 'MYT',\r\n        'hasdst' => false ),\r\n    'Asia/Kuching' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Malaysia Time',\r\n        'shortname' => 'MYT',\r\n        'hasdst' => false ),\r\n    'Asia/Macao' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'China Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'Asia/Manila' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Philippines Time',\r\n        'shortname' => 'PHT',\r\n        'hasdst' => false ),\r\n    'Asia/Shanghai' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'China Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'Asia/Singapore' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Singapore Time',\r\n        'shortname' => 'SGT',\r\n        'hasdst' => false ),\r\n    'Asia/Taipei' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'China Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'Asia/Ujung_Pandang' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Central Indonesia Time',\r\n        'shortname' => 'CIT',\r\n        'hasdst' => false ),\r\n    'Asia/Ulaanbaatar' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Ulaanbaatar Time',\r\n        'shortname' => 'ULAT',\r\n        'hasdst' => false ),\r\n    'Asia/Ulan_Bator' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Ulaanbaatar Time',\r\n        'shortname' => 'ULAT',\r\n        'hasdst' => false ),\r\n    'Asia/Urumqi' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'China Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'Australia/Perth' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Western Standard Time (Australia)',\r\n        'shortname' => 'WST',\r\n        'hasdst' => false ),\r\n    'Australia/West' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Western Standard Time (Australia)',\r\n        'shortname' => 'WST',\r\n        'hasdst' => false ),\r\n    'CTT' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'China Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'Etc/GMT-8' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'GMT+08:00',\r\n        'shortname' => 'GMT+08:00',\r\n        'hasdst' => false ),\r\n    'Hongkong' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Hong Kong Time',\r\n        'shortname' => 'HKT',\r\n        'hasdst' => false ),\r\n    'PRC' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'China Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'Singapore' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Singapore Time',\r\n        'shortname' => 'SGT',\r\n        'hasdst' => false ),\r\n    'Asia/Choibalsan' => array(\r\n        'offset' => 32400000,\r\n        'longname' => 'Choibalsan Time',\r\n        'shortname' => 'CHOT',\r\n        'hasdst' => false ),\r\n    'Asia/Dili' => array(\r\n        'offset' => 32400000,\r\n        'longname' => 'East Timor Time',\r\n        'shortname' => 'TPT',\r\n        'hasdst' => false ),\r\n    'Asia/Jayapura' => array(\r\n        'offset' => 32400000,\r\n        'longname' => 'East Indonesia Time',\r\n        'shortname' => 'EIT',\r\n        'hasdst' => false ),\r\n    'Asia/Pyongyang' => array(\r\n        'offset' => 32400000,\r\n        'longname' => 'Korea Standard Time',\r\n        'shortname' => 'KST',\r\n        'hasdst' => false ),\r\n    'Asia/Seoul' => array(\r\n        'offset' => 32400000,\r\n        'longname' => 'Korea Standard Time',\r\n        'shortname' => 'KST',\r\n        'hasdst' => false ),\r\n    'Asia/Tokyo' => array(\r\n        'offset' => 32400000,\r\n        'longname' => 'Japan Standard Time',\r\n        'shortname' => 'JST',\r\n        'hasdst' => false ),\r\n    'Asia/Yakutsk' => array(\r\n        'offset' => 32400000,\r\n        'longname' => 'Yakutsk Time',\r\n        'shortname' => 'YAKT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Yaktsk Summer Time',\r\n        'dstshortname' => 'YAKST' ),\r\n    'Etc/GMT-9' => array(\r\n        'offset' => 32400000,\r\n        'longname' => 'GMT+09:00',\r\n        'shortname' => 'GMT+09:00',\r\n        'hasdst' => false ),\r\n    'JST' => array(\r\n        'offset' => 32400000,\r\n        'longname' => 'Japan Standard Time',\r\n        'shortname' => 'JST',\r\n        'hasdst' => false ),\r\n    'Japan' => array(\r\n        'offset' => 32400000,\r\n        'longname' => 'Japan Standard Time',\r\n        'shortname' => 'JST',\r\n        'hasdst' => false ),\r\n    'Pacific/Palau' => array(\r\n        'offset' => 32400000,\r\n        'longname' => 'Palau Time',\r\n        'shortname' => 'PWT',\r\n        'hasdst' => false ),\r\n    'ROK' => array(\r\n        'offset' => 32400000,\r\n        'longname' => 'Korea Standard Time',\r\n        'shortname' => 'KST',\r\n        'hasdst' => false ),\r\n    'ACT' => array(\r\n        'offset' => 34200000,\r\n        'longname' => 'Central Standard Time (Northern Territory)',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'Australia/Adelaide' => array(\r\n        'offset' => 34200000,\r\n        'longname' => 'Central Standard Time (South Australia)',\r\n        'shortname' => 'CST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central Summer Time (South Australia)',\r\n        'dstshortname' => 'CST' ),\r\n    'Australia/Broken_Hill' => array(\r\n        'offset' => 34200000,\r\n        'longname' => 'Central Standard Time (South Australia/New South Wales)',\r\n        'shortname' => 'CST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central Summer Time (South Australia/New South Wales)',\r\n        'dstshortname' => 'CST' ),\r\n    'Australia/Darwin' => array(\r\n        'offset' => 34200000,\r\n        'longname' => 'Central Standard Time (Northern Territory)',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'Australia/North' => array(\r\n        'offset' => 34200000,\r\n        'longname' => 'Central Standard Time (Northern Territory)',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'Australia/South' => array(\r\n        'offset' => 34200000,\r\n        'longname' => 'Central Standard Time (South Australia)',\r\n        'shortname' => 'CST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central Summer Time (South Australia)',\r\n        'dstshortname' => 'CST' ),\r\n    'Australia/Yancowinna' => array(\r\n        'offset' => 34200000,\r\n        'longname' => 'Central Standard Time (South Australia/New South Wales)',\r\n        'shortname' => 'CST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central Summer Time (South Australia/New South Wales)',\r\n        'dstshortname' => 'CST' ),\r\n    'AET' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Eastern Standard Time (New South Wales)',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Summer Time (New South Wales)',\r\n        'dstshortname' => 'EST' ),\r\n    'Antarctica/DumontDUrville' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Dumont-d\\'Urville Time',\r\n        'shortname' => 'DDUT',\r\n        'hasdst' => false ),\r\n    'Asia/Sakhalin' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Sakhalin Time',\r\n        'shortname' => 'SAKT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Sakhalin Summer Time',\r\n        'dstshortname' => 'SAKST' ),\r\n    'Asia/Vladivostok' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Vladivostok Time',\r\n        'shortname' => 'VLAT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Vladivostok Summer Time',\r\n        'dstshortname' => 'VLAST' ),\r\n    'Australia/ACT' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Eastern Standard Time (New South Wales)',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Summer Time (New South Wales)',\r\n        'dstshortname' => 'EST' ),\r\n    'Australia/Brisbane' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Eastern Standard Time (Queensland)',\r\n        'shortname' => 'EST',\r\n        'hasdst' => false ),\r\n    'Australia/Canberra' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Eastern Standard Time (New South Wales)',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Summer Time (New South Wales)',\r\n        'dstshortname' => 'EST' ),\r\n    'Australia/Hobart' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Eastern Standard Time (Tasmania)',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Summer Time (Tasmania)',\r\n        'dstshortname' => 'EST' ),\r\n    'Australia/Lindeman' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Eastern Standard Time (Queensland)',\r\n        'shortname' => 'EST',\r\n        'hasdst' => false ),\r\n    'Australia/Melbourne' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Eastern Standard Time (Victoria)',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Summer Time (Victoria)',\r\n        'dstshortname' => 'EST' ),\r\n    'Australia/NSW' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Eastern Standard Time (New South Wales)',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Summer Time (New South Wales)',\r\n        'dstshortname' => 'EST' ),\r\n    'Australia/Queensland' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Eastern Standard Time (Queensland)',\r\n        'shortname' => 'EST',\r\n        'hasdst' => false ),\r\n    'Australia/Sydney' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Eastern Standard Time (New South Wales)',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Summer Time (New South Wales)',\r\n        'dstshortname' => 'EST' ),\r\n    'Australia/Tasmania' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Eastern Standard Time (Tasmania)',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Summer Time (Tasmania)',\r\n        'dstshortname' => 'EST' ),\r\n    'Australia/Victoria' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Eastern Standard Time (Victoria)',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Summer Time (Victoria)',\r\n        'dstshortname' => 'EST' ),\r\n    'Etc/GMT-10' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'GMT+10:00',\r\n        'shortname' => 'GMT+10:00',\r\n        'hasdst' => false ),\r\n    'Pacific/Guam' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Chamorro Standard Time',\r\n        'shortname' => 'ChST',\r\n        'hasdst' => false ),\r\n    'Pacific/Port_Moresby' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Papua New Guinea Time',\r\n        'shortname' => 'PGT',\r\n        'hasdst' => false ),\r\n    'Pacific/Saipan' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Chamorro Standard Time',\r\n        'shortname' => 'ChST',\r\n        'hasdst' => false ),\r\n    'Pacific/Truk' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Truk Time',\r\n        'shortname' => 'TRUT',\r\n        'hasdst' => false ),\r\n    'Pacific/Yap' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Yap Time',\r\n        'shortname' => 'YAPT',\r\n        'hasdst' => false ),\r\n    'Australia/LHI' => array(\r\n        'offset' => 37800000,\r\n        'longname' => 'Load Howe Standard Time',\r\n        'shortname' => 'LHST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Load Howe Summer Time',\r\n        'dstshortname' => 'LHST' ),\r\n    'Australia/Lord_Howe' => array(\r\n        'offset' => 37800000,\r\n        'longname' => 'Load Howe Standard Time',\r\n        'shortname' => 'LHST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Load Howe Summer Time',\r\n        'dstshortname' => 'LHST' ),\r\n    'Asia/Magadan' => array(\r\n        'offset' => 39600000,\r\n        'longname' => 'Magadan Time',\r\n        'shortname' => 'MAGT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Magadan Summer Time',\r\n        'dstshortname' => 'MAGST' ),\r\n    'Etc/GMT-11' => array(\r\n        'offset' => 39600000,\r\n        'longname' => 'GMT+11:00',\r\n        'shortname' => 'GMT+11:00',\r\n        'hasdst' => false ),\r\n    'Pacific/Efate' => array(\r\n        'offset' => 39600000,\r\n        'longname' => 'Vanuatu Time',\r\n        'shortname' => 'VUT',\r\n        'hasdst' => false ),\r\n    'Pacific/Guadalcanal' => array(\r\n        'offset' => 39600000,\r\n        'longname' => 'Solomon Is. Time',\r\n        'shortname' => 'SBT',\r\n        'hasdst' => false ),\r\n    'Pacific/Kosrae' => array(\r\n        'offset' => 39600000,\r\n        'longname' => 'Kosrae Time',\r\n        'shortname' => 'KOST',\r\n        'hasdst' => false ),\r\n    'Pacific/Noumea' => array(\r\n        'offset' => 39600000,\r\n        'longname' => 'New Caledonia Time',\r\n        'shortname' => 'NCT',\r\n        'hasdst' => false ),\r\n    'Pacific/Ponape' => array(\r\n        'offset' => 39600000,\r\n        'longname' => 'Ponape Time',\r\n        'shortname' => 'PONT',\r\n        'hasdst' => false ),\r\n    'SST' => array(\r\n        'offset' => 39600000,\r\n        'longname' => 'Solomon Is. Time',\r\n        'shortname' => 'SBT',\r\n        'hasdst' => false ),\r\n    'Pacific/Norfolk' => array(\r\n        'offset' => 41400000,\r\n        'longname' => 'Norfolk Time',\r\n        'shortname' => 'NFT',\r\n        'hasdst' => false ),\r\n    'Antarctica/McMurdo' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'New Zealand Standard Time',\r\n        'shortname' => 'NZST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'New Zealand Daylight Time',\r\n        'dstshortname' => 'NZDT' ),\r\n    'Antarctica/South_Pole' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'New Zealand Standard Time',\r\n        'shortname' => 'NZST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'New Zealand Daylight Time',\r\n        'dstshortname' => 'NZDT' ),\r\n    'Asia/Anadyr' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'Anadyr Time',\r\n        'shortname' => 'ANAT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Anadyr Summer Time',\r\n        'dstshortname' => 'ANAST' ),\r\n    'Asia/Kamchatka' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'Petropavlovsk-Kamchatski Time',\r\n        'shortname' => 'PETT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Petropavlovsk-Kamchatski Summer Time',\r\n        'dstshortname' => 'PETST' ),\r\n    'Etc/GMT-12' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'GMT+12:00',\r\n        'shortname' => 'GMT+12:00',\r\n        'hasdst' => false ),\r\n    'Kwajalein' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'Marshall Islands Time',\r\n        'shortname' => 'MHT',\r\n        'hasdst' => false ),\r\n    'NST' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'New Zealand Standard Time',\r\n        'shortname' => 'NZST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'New Zealand Daylight Time',\r\n        'dstshortname' => 'NZDT' ),\r\n    'NZ' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'New Zealand Standard Time',\r\n        'shortname' => 'NZST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'New Zealand Daylight Time',\r\n        'dstshortname' => 'NZDT' ),\r\n    'Pacific/Auckland' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'New Zealand Standard Time',\r\n        'shortname' => 'NZST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'New Zealand Daylight Time',\r\n        'dstshortname' => 'NZDT' ),\r\n    'Pacific/Fiji' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'Fiji Time',\r\n        'shortname' => 'FJT',\r\n        'hasdst' => false ),\r\n    'Pacific/Funafuti' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'Tuvalu Time',\r\n        'shortname' => 'TVT',\r\n        'hasdst' => false ),\r\n    'Pacific/Kwajalein' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'Marshall Islands Time',\r\n        'shortname' => 'MHT',\r\n        'hasdst' => false ),\r\n    'Pacific/Majuro' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'Marshall Islands Time',\r\n        'shortname' => 'MHT',\r\n        'hasdst' => false ),\r\n    'Pacific/Nauru' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'Nauru Time',\r\n        'shortname' => 'NRT',\r\n        'hasdst' => false ),\r\n    'Pacific/Tarawa' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'Gilbert Is. Time',\r\n        'shortname' => 'GILT',\r\n        'hasdst' => false ),\r\n    'Pacific/Wake' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'Wake Time',\r\n        'shortname' => 'WAKT',\r\n        'hasdst' => false ),\r\n    'Pacific/Wallis' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'Wallis & Futuna Time',\r\n        'shortname' => 'WFT',\r\n        'hasdst' => false ),\r\n    'NZ-CHAT' => array(\r\n        'offset' => 45900000,\r\n        'longname' => 'Chatham Standard Time',\r\n        'shortname' => 'CHAST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Chatham Daylight Time',\r\n        'dstshortname' => 'CHADT' ),\r\n    'Pacific/Chatham' => array(\r\n        'offset' => 45900000,\r\n        'longname' => 'Chatham Standard Time',\r\n        'shortname' => 'CHAST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Chatham Daylight Time',\r\n        'dstshortname' => 'CHADT' ),\r\n    'Etc/GMT-13' => array(\r\n        'offset' => 46800000,\r\n        'longname' => 'GMT+13:00',\r\n        'shortname' => 'GMT+13:00',\r\n        'hasdst' => false ),\r\n    'Pacific/Enderbury' => array(\r\n        'offset' => 46800000,\r\n        'longname' => 'Phoenix Is. Time',\r\n        'shortname' => 'PHOT',\r\n        'hasdst' => false ),\r\n    'Pacific/Tongatapu' => array(\r\n        'offset' => 46800000,\r\n        'longname' => 'Tonga Time',\r\n        'shortname' => 'TOT',\r\n        'hasdst' => false ),\r\n    'Etc/GMT-14' => array(\r\n        'offset' => 50400000,\r\n        'longname' => 'GMT+14:00',\r\n        'shortname' => 'GMT+14:00',\r\n        'hasdst' => false ),\r\n    'Pacific/Kiritimati' => array(\r\n        'offset' => 50400000,\r\n        'longname' => 'Line Is. Time',\r\n        'shortname' => 'LINT',\r\n        'hasdst' => false ),\r\n    'GMT-12:00' => array(\r\n        'offset' => -43200000,\r\n        'longname' => 'GMT-12:00',\r\n        'shortname' => 'GMT-12:00',\r\n        'hasdst' => false ),\r\n    'GMT-11:00' => array(\r\n        'offset' => -39600000,\r\n        'longname' => 'GMT-11:00',\r\n        'shortname' => 'GMT-11:00',\r\n        'hasdst' => false ),\r\n    'West Samoa Time' => array(\r\n        'offset' => -39600000,\r\n        'longname' => 'West Samoa Time',\r\n        'shortname' => 'WST',\r\n        'hasdst' => false ),\r\n    'Samoa Standard Time' => array(\r\n        'offset' => -39600000,\r\n        'longname' => 'Samoa Standard Time',\r\n        'shortname' => 'SST',\r\n        'hasdst' => false ),\r\n    'Niue Time' => array(\r\n        'offset' => -39600000,\r\n        'longname' => 'Niue Time',\r\n        'shortname' => 'NUT',\r\n        'hasdst' => false ),\r\n    'Hawaii-Aleutian Standard Time' => array(\r\n        'offset' => -36000000,\r\n        'longname' => 'Hawaii-Aleutian Standard Time',\r\n        'shortname' => 'HAST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Hawaii-Aleutian Daylight Time',\r\n        'dstshortname' => 'HADT' ),\r\n    'GMT-10:00' => array(\r\n        'offset' => -36000000,\r\n        'longname' => 'GMT-10:00',\r\n        'shortname' => 'GMT-10:00',\r\n        'hasdst' => false ),\r\n    'Hawaii Standard Time' => array(\r\n        'offset' => -36000000,\r\n        'longname' => 'Hawaii Standard Time',\r\n        'shortname' => 'HST',\r\n        'hasdst' => false ),\r\n    'Tokelau Time' => array(\r\n        'offset' => -36000000,\r\n        'longname' => 'Tokelau Time',\r\n        'shortname' => 'TKT',\r\n        'hasdst' => false ),\r\n    'Cook Is. Time' => array(\r\n        'offset' => -36000000,\r\n        'longname' => 'Cook Is. Time',\r\n        'shortname' => 'CKT',\r\n        'hasdst' => false ),\r\n    'Tahiti Time' => array(\r\n        'offset' => -36000000,\r\n        'longname' => 'Tahiti Time',\r\n        'shortname' => 'TAHT',\r\n        'hasdst' => false ),\r\n    'Marquesas Time' => array(\r\n        'offset' => -34200000,\r\n        'longname' => 'Marquesas Time',\r\n        'shortname' => 'MART',\r\n        'hasdst' => false ),\r\n    'Alaska Standard Time' => array(\r\n        'offset' => -32400000,\r\n        'longname' => 'Alaska Standard Time',\r\n        'shortname' => 'AKST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Alaska Daylight Time',\r\n        'dstshortname' => 'AKDT' ),\r\n    'GMT-09:00' => array(\r\n        'offset' => -32400000,\r\n        'longname' => 'GMT-09:00',\r\n        'shortname' => 'GMT-09:00',\r\n        'hasdst' => false ),\r\n    'Gambier Time' => array(\r\n        'offset' => -32400000,\r\n        'longname' => 'Gambier Time',\r\n        'shortname' => 'GAMT',\r\n        'hasdst' => false ),\r\n    'Pacific Standard Time' => array(\r\n        'offset' => -28800000,\r\n        'longname' => 'Pacific Standard Time',\r\n        'shortname' => 'PST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Pacific Daylight Time',\r\n        'dstshortname' => 'PDT' ),\r\n    'GMT-08:00' => array(\r\n        'offset' => -28800000,\r\n        'longname' => 'GMT-08:00',\r\n        'shortname' => 'GMT-08:00',\r\n        'hasdst' => false ),\r\n    'Pitcairn Standard Time' => array(\r\n        'offset' => -28800000,\r\n        'longname' => 'Pitcairn Standard Time',\r\n        'shortname' => 'PST',\r\n        'hasdst' => false ),\r\n    'Mountain Standard Time' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'Mountain Standard Time',\r\n        'shortname' => 'MST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Mountain Daylight Time',\r\n        'dstshortname' => 'MDT' ),\r\n    'GMT-07:00' => array(\r\n        'offset' => -25200000,\r\n        'longname' => 'GMT-07:00',\r\n        'shortname' => 'GMT-07:00',\r\n        'hasdst' => false ),\r\n    'Central Standard Time' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Central Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central Daylight Time',\r\n        'dstshortname' => 'CDT' ),\r\n    'Eastern Standard Time' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Eastern Standard Time',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Daylight Time',\r\n        'dstshortname' => 'EDT' ),\r\n    'Easter Is. Time' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Easter Is. Time',\r\n        'shortname' => 'EAST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Easter Is. Summer Time',\r\n        'dstshortname' => 'EASST' ),\r\n    'GMT-06:00' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'GMT-06:00',\r\n        'shortname' => 'GMT-06:00',\r\n        'hasdst' => false ),\r\n    'Galapagos Time' => array(\r\n        'offset' => -21600000,\r\n        'longname' => 'Galapagos Time',\r\n        'shortname' => 'GALT',\r\n        'hasdst' => false ),\r\n    'Colombia Time' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Colombia Time',\r\n        'shortname' => 'COT',\r\n        'hasdst' => false ),\r\n    'Acre Time' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Acre Time',\r\n        'shortname' => 'ACT',\r\n        'hasdst' => false ),\r\n    'Ecuador Time' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Ecuador Time',\r\n        'shortname' => 'ECT',\r\n        'hasdst' => false ),\r\n    'Peru Time' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'Peru Time',\r\n        'shortname' => 'PET',\r\n        'hasdst' => false ),\r\n    'GMT-05:00' => array(\r\n        'offset' => -18000000,\r\n        'longname' => 'GMT-05:00',\r\n        'shortname' => 'GMT-05:00',\r\n        'hasdst' => false ),\r\n    'Atlantic Standard Time' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Atlantic Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Atlantic Daylight Time',\r\n        'dstshortname' => 'ADT' ),\r\n    'Paraguay Time' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Paraguay Time',\r\n        'shortname' => 'PYT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Paraguay Summer Time',\r\n        'dstshortname' => 'PYST' ),\r\n    'Amazon Standard Time' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Amazon Standard Time',\r\n        'shortname' => 'AMT',\r\n        'hasdst' => false ),\r\n    'Venezuela Time' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Venezuela Time',\r\n        'shortname' => 'VET',\r\n        'hasdst' => false ),\r\n    'Guyana Time' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Guyana Time',\r\n        'shortname' => 'GYT',\r\n        'hasdst' => false ),\r\n    'Bolivia Time' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Bolivia Time',\r\n        'shortname' => 'BOT',\r\n        'hasdst' => false ),\r\n    'Chile Time' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Chile Time',\r\n        'shortname' => 'CLT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Chile Summer Time',\r\n        'dstshortname' => 'CLST' ),\r\n    'Falkland Is. Time' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'Falkland Is. Time',\r\n        'shortname' => 'FKT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Falkland Is. Summer Time',\r\n        'dstshortname' => 'FKST' ),\r\n    'GMT-04:00' => array(\r\n        'offset' => -14400000,\r\n        'longname' => 'GMT-04:00',\r\n        'shortname' => 'GMT-04:00',\r\n        'hasdst' => false ),\r\n    'Newfoundland Standard Time' => array(\r\n        'offset' => -12600000,\r\n        'longname' => 'Newfoundland Standard Time',\r\n        'shortname' => 'NST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Newfoundland Daylight Time',\r\n        'dstshortname' => 'NDT' ),\r\n    'Argentine Time' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Argentine Time',\r\n        'shortname' => 'ART',\r\n        'hasdst' => false ),\r\n    'Brazil Time' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Brazil Time',\r\n        'shortname' => 'BRT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Brazil Summer Time',\r\n        'dstshortname' => 'BRST' ),\r\n    'French Guiana Time' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'French Guiana Time',\r\n        'shortname' => 'GFT',\r\n        'hasdst' => false ),\r\n    'Western Greenland Time' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Western Greenland Time',\r\n        'shortname' => 'WGT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Western Greenland Summer Time',\r\n        'dstshortname' => 'WGST' ),\r\n    'Pierre & Miquelon Standard Time' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Pierre & Miquelon Standard Time',\r\n        'shortname' => 'PMST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Pierre & Miquelon Daylight Time',\r\n        'dstshortname' => 'PMDT' ),\r\n    'Uruguay Time' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Uruguay Time',\r\n        'shortname' => 'UYT',\r\n        'hasdst' => false ),\r\n    'Suriname Time' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'Suriname Time',\r\n        'shortname' => 'SRT',\r\n        'hasdst' => false ),\r\n    'GMT-03:00' => array(\r\n        'offset' => -10800000,\r\n        'longname' => 'GMT-03:00',\r\n        'shortname' => 'GMT-03:00',\r\n        'hasdst' => false ),\r\n    'Fernando de Noronha Time' => array(\r\n        'offset' => -7200000,\r\n        'longname' => 'Fernando de Noronha Time',\r\n        'shortname' => 'FNT',\r\n        'hasdst' => false ),\r\n    'South Georgia Standard Time' => array(\r\n        'offset' => -7200000,\r\n        'longname' => 'South Georgia Standard Time',\r\n        'shortname' => 'GST',\r\n        'hasdst' => false ),\r\n    'GMT-02:00' => array(\r\n        'offset' => -7200000,\r\n        'longname' => 'GMT-02:00',\r\n        'shortname' => 'GMT-02:00',\r\n        'hasdst' => false ),\r\n    'Eastern Greenland Time' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Eastern Greenland Time',\r\n        'shortname' => 'EGT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Greenland Summer Time',\r\n        'dstshortname' => 'EGST' ),\r\n    'Azores Time' => array(\r\n        'offset' => -3600000,\r\n        'longname' => 'Azores Time',\r\n        'shortname' => 'AZOT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Azores Summer Time',\r\n        'dstshortname' => 'AZOST' ),\r\n    'Cape Verde Time' => array(\r\n        'offset' => -3600000,\r\n        'longname' => 'Cape Verde Time',\r\n        'shortname' => 'CVT',\r\n        'hasdst' => false ),\r\n    'GMT-01:00' => array(\r\n        'offset' => -3600000,\r\n        'longname' => 'GMT-01:00',\r\n        'shortname' => 'GMT-01:00',\r\n        'hasdst' => false ),\r\n    'Greenwich Mean Time' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Greenwich Mean Time',\r\n        'shortname' => 'GMT',\r\n        'hasdst' => false ),\r\n    'Western European Time' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Western European Time',\r\n        'shortname' => 'WET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Western European Summer Time',\r\n        'dstshortname' => 'WEST' ),\r\n    'GMT+00:00' => array(\r\n        'offset' => 0,\r\n        'longname' => 'GMT+00:00',\r\n        'shortname' => 'GMT+00:00',\r\n        'hasdst' => false ),\r\n    'Coordinated Universal Time' => array(\r\n        'offset' => 0,\r\n        'longname' => 'Coordinated Universal Time',\r\n        'shortname' => 'UTC',\r\n        'hasdst' => false ),\r\n    'Central European Time' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Central European Time',\r\n        'shortname' => 'CET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central European Summer Time',\r\n        'dstshortname' => 'CEST' ),\r\n    'Western African Time' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Western African Time',\r\n        'shortname' => 'WAT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Western African Summer Time',\r\n        'dstshortname' => 'WAST' ),\r\n    'GMT+01:00' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'GMT+01:00',\r\n        'shortname' => 'GMT+01:00',\r\n        'hasdst' => false ),\r\n    'Middle Europe Time' => array(\r\n        'offset' => 3600000,\r\n        'longname' => 'Middle Europe Time',\r\n        'shortname' => 'MET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Middle Europe Summer Time',\r\n        'dstshortname' => 'MEST' ),\r\n    'Eastern European Time' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Eastern European Time',\r\n        'shortname' => 'EET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern European Summer Time',\r\n        'dstshortname' => 'EEST' ),\r\n    'Central African Time' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Central African Time',\r\n        'shortname' => 'CAT',\r\n        'hasdst' => false ),\r\n    'South Africa Standard Time' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'South Africa Standard Time',\r\n        'shortname' => 'SAST',\r\n        'hasdst' => false ),\r\n    'Israel Standard Time' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'Israel Standard Time',\r\n        'shortname' => 'IST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Israel Daylight Time',\r\n        'dstshortname' => 'IDT' ),\r\n    'GMT+02:00' => array(\r\n        'offset' => 7200000,\r\n        'longname' => 'GMT+02:00',\r\n        'shortname' => 'GMT+02:00',\r\n        'hasdst' => false ),\r\n    'Eastern African Time' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Eastern African Time',\r\n        'shortname' => 'EAT',\r\n        'hasdst' => false ),\r\n    'Syowa Time' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Syowa Time',\r\n        'shortname' => 'SYOT',\r\n        'hasdst' => false ),\r\n    'Arabia Standard Time' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Arabia Standard Time',\r\n        'shortname' => 'AST',\r\n        'hasdst' => false ),\r\n    'GMT+03:00' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'GMT+03:00',\r\n        'shortname' => 'GMT+03:00',\r\n        'hasdst' => false ),\r\n    'Moscow Standard Time' => array(\r\n        'offset' => 10800000,\r\n        'longname' => 'Moscow Standard Time',\r\n        'shortname' => 'MSK',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Moscow Daylight Time',\r\n        'dstshortname' => 'MSD' ),\r\n    'GMT+03:07' => array(\r\n        'offset' => 11224000,\r\n        'longname' => 'GMT+03:07',\r\n        'shortname' => 'GMT+03:07',\r\n        'hasdst' => false ),\r\n    'Iran Time' => array(\r\n        'offset' => 12600000,\r\n        'longname' => 'Iran Time',\r\n        'shortname' => 'IRT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Iran Sumer Time',\r\n        'dstshortname' => 'IRST' ),\r\n    'Aqtau Time' => array(\r\n        'offset' => 14400000,\r\n        'longname' => 'Aqtau Time',\r\n        'shortname' => 'AQTT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Aqtau Summer Time',\r\n        'dstshortname' => 'AQTST' ),\r\n    'Azerbaijan Time' => array(\r\n        'offset' => 14400000,\r\n        'longname' => 'Azerbaijan Time',\r\n        'shortname' => 'AZT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Azerbaijan Summer Time',\r\n        'dstshortname' => 'AZST' ),\r\n    'Gulf Standard Time' => array(\r\n        'offset' => 14400000,\r\n        'longname' => 'Gulf Standard Time',\r\n        'shortname' => 'GST',\r\n        'hasdst' => false ),\r\n    'Georgia Time' => array(\r\n        'offset' => 14400000,\r\n        'longname' => 'Georgia Time',\r\n        'shortname' => 'GET',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Georgia Summer Time',\r\n        'dstshortname' => 'GEST' ),\r\n    'Armenia Time' => array(\r\n        'offset' => 14400000,\r\n        'longname' => 'Armenia Time',\r\n        'shortname' => 'AMT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Armenia Summer Time',\r\n        'dstshortname' => 'AMST' ),\r\n    'GMT+04:00' => array(\r\n        'offset' => 14400000,\r\n        'longname' => 'GMT+04:00',\r\n        'shortname' => 'GMT+04:00',\r\n        'hasdst' => false ),\r\n    'Samara Time' => array(\r\n        'offset' => 14400000,\r\n        'longname' => 'Samara Time',\r\n        'shortname' => 'SAMT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Samara Summer Time',\r\n        'dstshortname' => 'SAMST' ),\r\n    'Seychelles Time' => array(\r\n        'offset' => 14400000,\r\n        'longname' => 'Seychelles Time',\r\n        'shortname' => 'SCT',\r\n        'hasdst' => false ),\r\n    'Mauritius Time' => array(\r\n        'offset' => 14400000,\r\n        'longname' => 'Mauritius Time',\r\n        'shortname' => 'MUT',\r\n        'hasdst' => false ),\r\n    'Reunion Time' => array(\r\n        'offset' => 14400000,\r\n        'longname' => 'Reunion Time',\r\n        'shortname' => 'RET',\r\n        'hasdst' => false ),\r\n    'Afghanistan Time' => array(\r\n        'offset' => 16200000,\r\n        'longname' => 'Afghanistan Time',\r\n        'shortname' => 'AFT',\r\n        'hasdst' => false ),\r\n    'Aqtobe Time' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'Aqtobe Time',\r\n        'shortname' => 'AQTT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Aqtobe Summer Time',\r\n        'dstshortname' => 'AQTST' ),\r\n    'Turkmenistan Time' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'Turkmenistan Time',\r\n        'shortname' => 'TMT',\r\n        'hasdst' => false ),\r\n    'Kirgizstan Time' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'Kirgizstan Time',\r\n        'shortname' => 'KGT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Kirgizstan Summer Time',\r\n        'dstshortname' => 'KGST' ),\r\n    'Tajikistan Time' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'Tajikistan Time',\r\n        'shortname' => 'TJT',\r\n        'hasdst' => false ),\r\n    'Pakistan Time' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'Pakistan Time',\r\n        'shortname' => 'PKT',\r\n        'hasdst' => false ),\r\n    'Uzbekistan Time' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'Uzbekistan Time',\r\n        'shortname' => 'UZT',\r\n        'hasdst' => false ),\r\n    'Yekaterinburg Time' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'Yekaterinburg Time',\r\n        'shortname' => 'YEKT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Yekaterinburg Summer Time',\r\n        'dstshortname' => 'YEKST' ),\r\n    'GMT+05:00' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'GMT+05:00',\r\n        'shortname' => 'GMT+05:00',\r\n        'hasdst' => false ),\r\n    'French Southern & Antarctic Lands Time' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'French Southern & Antarctic Lands Time',\r\n        'shortname' => 'TFT',\r\n        'hasdst' => false ),\r\n    'Maldives Time' => array(\r\n        'offset' => 18000000,\r\n        'longname' => 'Maldives Time',\r\n        'shortname' => 'MVT',\r\n        'hasdst' => false ),\r\n    'India Standard Time' => array(\r\n        'offset' => 19800000,\r\n        'longname' => 'India Standard Time',\r\n        'shortname' => 'IST',\r\n        'hasdst' => false ),\r\n    'Nepal Time' => array(\r\n        'offset' => 20700000,\r\n        'longname' => 'Nepal Time',\r\n        'shortname' => 'NPT',\r\n        'hasdst' => false ),\r\n    'Mawson Time' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'Mawson Time',\r\n        'shortname' => 'MAWT',\r\n        'hasdst' => false ),\r\n    'Vostok time' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'Vostok time',\r\n        'shortname' => 'VOST',\r\n        'hasdst' => false ),\r\n    'Alma-Ata Time' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'Alma-Ata Time',\r\n        'shortname' => 'ALMT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Alma-Ata Summer Time',\r\n        'dstshortname' => 'ALMST' ),\r\n    'Sri Lanka Time' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'Sri Lanka Time',\r\n        'shortname' => 'LKT',\r\n        'hasdst' => false ),\r\n    'Bangladesh Time' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'Bangladesh Time',\r\n        'shortname' => 'BDT',\r\n        'hasdst' => false ),\r\n    'Novosibirsk Time' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'Novosibirsk Time',\r\n        'shortname' => 'NOVT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Novosibirsk Summer Time',\r\n        'dstshortname' => 'NOVST' ),\r\n    'Omsk Time' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'Omsk Time',\r\n        'shortname' => 'OMST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Omsk Summer Time',\r\n        'dstshortname' => 'OMSST' ),\r\n    'Bhutan Time' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'Bhutan Time',\r\n        'shortname' => 'BTT',\r\n        'hasdst' => false ),\r\n    'GMT+06:00' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'GMT+06:00',\r\n        'shortname' => 'GMT+06:00',\r\n        'hasdst' => false ),\r\n    'Indian Ocean Territory Time' => array(\r\n        'offset' => 21600000,\r\n        'longname' => 'Indian Ocean Territory Time',\r\n        'shortname' => 'IOT',\r\n        'hasdst' => false ),\r\n    'Myanmar Time' => array(\r\n        'offset' => 23400000,\r\n        'longname' => 'Myanmar Time',\r\n        'shortname' => 'MMT',\r\n        'hasdst' => false ),\r\n    'Cocos Islands Time' => array(\r\n        'offset' => 23400000,\r\n        'longname' => 'Cocos Islands Time',\r\n        'shortname' => 'CCT',\r\n        'hasdst' => false ),\r\n    'Davis Time' => array(\r\n        'offset' => 25200000,\r\n        'longname' => 'Davis Time',\r\n        'shortname' => 'DAVT',\r\n        'hasdst' => false ),\r\n    'Indochina Time' => array(\r\n        'offset' => 25200000,\r\n        'longname' => 'Indochina Time',\r\n        'shortname' => 'ICT',\r\n        'hasdst' => false ),\r\n    'Hovd Time' => array(\r\n        'offset' => 25200000,\r\n        'longname' => 'Hovd Time',\r\n        'shortname' => 'HOVT',\r\n        'hasdst' => false ),\r\n    'West Indonesia Time' => array(\r\n        'offset' => 25200000,\r\n        'longname' => 'West Indonesia Time',\r\n        'shortname' => 'WIT',\r\n        'hasdst' => false ),\r\n    'Krasnoyarsk Time' => array(\r\n        'offset' => 25200000,\r\n        'longname' => 'Krasnoyarsk Time',\r\n        'shortname' => 'KRAT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Krasnoyarsk Summer Time',\r\n        'dstshortname' => 'KRAST' ),\r\n    'GMT+07:00' => array(\r\n        'offset' => 25200000,\r\n        'longname' => 'GMT+07:00',\r\n        'shortname' => 'GMT+07:00',\r\n        'hasdst' => false ),\r\n    'Christmas Island Time' => array(\r\n        'offset' => 25200000,\r\n        'longname' => 'Christmas Island Time',\r\n        'shortname' => 'CXT',\r\n        'hasdst' => false ),\r\n    'Western Standard Time (Australia)' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Western Standard Time (Australia)',\r\n        'shortname' => 'WST',\r\n        'hasdst' => false ),\r\n    'Brunei Time' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Brunei Time',\r\n        'shortname' => 'BNT',\r\n        'hasdst' => false ),\r\n    'China Standard Time' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'China Standard Time',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'Hong Kong Time' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Hong Kong Time',\r\n        'shortname' => 'HKT',\r\n        'hasdst' => false ),\r\n    'Irkutsk Time' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Irkutsk Time',\r\n        'shortname' => 'IRKT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Irkutsk Summer Time',\r\n        'dstshortname' => 'IRKST' ),\r\n    'Malaysia Time' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Malaysia Time',\r\n        'shortname' => 'MYT',\r\n        'hasdst' => false ),\r\n    'Philippines Time' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Philippines Time',\r\n        'shortname' => 'PHT',\r\n        'hasdst' => false ),\r\n    'Singapore Time' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Singapore Time',\r\n        'shortname' => 'SGT',\r\n        'hasdst' => false ),\r\n    'Central Indonesia Time' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Central Indonesia Time',\r\n        'shortname' => 'CIT',\r\n        'hasdst' => false ),\r\n    'Ulaanbaatar Time' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'Ulaanbaatar Time',\r\n        'shortname' => 'ULAT',\r\n        'hasdst' => false ),\r\n    'GMT+08:00' => array(\r\n        'offset' => 28800000,\r\n        'longname' => 'GMT+08:00',\r\n        'shortname' => 'GMT+08:00',\r\n        'hasdst' => false ),\r\n    'Choibalsan Time' => array(\r\n        'offset' => 32400000,\r\n        'longname' => 'Choibalsan Time',\r\n        'shortname' => 'CHOT',\r\n        'hasdst' => false ),\r\n    'East Timor Time' => array(\r\n        'offset' => 32400000,\r\n        'longname' => 'East Timor Time',\r\n        'shortname' => 'TPT',\r\n        'hasdst' => false ),\r\n    'East Indonesia Time' => array(\r\n        'offset' => 32400000,\r\n        'longname' => 'East Indonesia Time',\r\n        'shortname' => 'EIT',\r\n        'hasdst' => false ),\r\n    'Korea Standard Time' => array(\r\n        'offset' => 32400000,\r\n        'longname' => 'Korea Standard Time',\r\n        'shortname' => 'KST',\r\n        'hasdst' => false ),\r\n    'Japan Standard Time' => array(\r\n        'offset' => 32400000,\r\n        'longname' => 'Japan Standard Time',\r\n        'shortname' => 'JST',\r\n        'hasdst' => false ),\r\n    'Yakutsk Time' => array(\r\n        'offset' => 32400000,\r\n        'longname' => 'Yakutsk Time',\r\n        'shortname' => 'YAKT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Yaktsk Summer Time',\r\n        'dstshortname' => 'YAKST' ),\r\n    'GMT+09:00' => array(\r\n        'offset' => 32400000,\r\n        'longname' => 'GMT+09:00',\r\n        'shortname' => 'GMT+09:00',\r\n        'hasdst' => false ),\r\n    'Palau Time' => array(\r\n        'offset' => 32400000,\r\n        'longname' => 'Palau Time',\r\n        'shortname' => 'PWT',\r\n        'hasdst' => false ),\r\n    'Central Standard Time (Northern Territory)' => array(\r\n        'offset' => 34200000,\r\n        'longname' => 'Central Standard Time (Northern Territory)',\r\n        'shortname' => 'CST',\r\n        'hasdst' => false ),\r\n    'Central Standard Time (South Australia)' => array(\r\n        'offset' => 34200000,\r\n        'longname' => 'Central Standard Time (South Australia)',\r\n        'shortname' => 'CST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central Summer Time (South Australia)',\r\n        'dstshortname' => 'CST' ),\r\n    'Central Standard Time (South Australia/New South Wales)' => array(\r\n        'offset' => 34200000,\r\n        'longname' => 'Central Standard Time (South Australia/New South Wales)',\r\n        'shortname' => 'CST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Central Summer Time (South Australia/New South Wales)',\r\n        'dstshortname' => 'CST' ),\r\n    'Eastern Standard Time (New South Wales)' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Eastern Standard Time (New South Wales)',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Summer Time (New South Wales)',\r\n        'dstshortname' => 'EST' ),\r\n    'Dumont-d\\'Urville Time' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Dumont-d\\'Urville Time',\r\n        'shortname' => 'DDUT',\r\n        'hasdst' => false ),\r\n    'Sakhalin Time' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Sakhalin Time',\r\n        'shortname' => 'SAKT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Sakhalin Summer Time',\r\n        'dstshortname' => 'SAKST' ),\r\n    'Vladivostok Time' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Vladivostok Time',\r\n        'shortname' => 'VLAT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Vladivostok Summer Time',\r\n        'dstshortname' => 'VLAST' ),\r\n    'Eastern Standard Time (Queensland)' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Eastern Standard Time (Queensland)',\r\n        'shortname' => 'EST',\r\n        'hasdst' => false ),\r\n    'Eastern Standard Time (Tasmania)' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Eastern Standard Time (Tasmania)',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Summer Time (Tasmania)',\r\n        'dstshortname' => 'EST' ),\r\n    'Eastern Standard Time (Victoria)' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Eastern Standard Time (Victoria)',\r\n        'shortname' => 'EST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Eastern Summer Time (Victoria)',\r\n        'dstshortname' => 'EST' ),\r\n    'GMT+10:00' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'GMT+10:00',\r\n        'shortname' => 'GMT+10:00',\r\n        'hasdst' => false ),\r\n    'Chamorro Standard Time' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Chamorro Standard Time',\r\n        'shortname' => 'ChST',\r\n        'hasdst' => false ),\r\n    'Papua New Guinea Time' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Papua New Guinea Time',\r\n        'shortname' => 'PGT',\r\n        'hasdst' => false ),\r\n    'Truk Time' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Truk Time',\r\n        'shortname' => 'TRUT',\r\n        'hasdst' => false ),\r\n    'Yap Time' => array(\r\n        'offset' => 36000000,\r\n        'longname' => 'Yap Time',\r\n        'shortname' => 'YAPT',\r\n        'hasdst' => false ),\r\n    'Load Howe Standard Time' => array(\r\n        'offset' => 37800000,\r\n        'longname' => 'Load Howe Standard Time',\r\n        'shortname' => 'LHST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Load Howe Summer Time',\r\n        'dstshortname' => 'LHST' ),\r\n    'Magadan Time' => array(\r\n        'offset' => 39600000,\r\n        'longname' => 'Magadan Time',\r\n        'shortname' => 'MAGT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Magadan Summer Time',\r\n        'dstshortname' => 'MAGST' ),\r\n    'GMT+11:00' => array(\r\n        'offset' => 39600000,\r\n        'longname' => 'GMT+11:00',\r\n        'shortname' => 'GMT+11:00',\r\n        'hasdst' => false ),\r\n    'Vanuatu Time' => array(\r\n        'offset' => 39600000,\r\n        'longname' => 'Vanuatu Time',\r\n        'shortname' => 'VUT',\r\n        'hasdst' => false ),\r\n    'Solomon Is. Time' => array(\r\n        'offset' => 39600000,\r\n        'longname' => 'Solomon Is. Time',\r\n        'shortname' => 'SBT',\r\n        'hasdst' => false ),\r\n    'Kosrae Time' => array(\r\n        'offset' => 39600000,\r\n        'longname' => 'Kosrae Time',\r\n        'shortname' => 'KOST',\r\n        'hasdst' => false ),\r\n    'New Caledonia Time' => array(\r\n        'offset' => 39600000,\r\n        'longname' => 'New Caledonia Time',\r\n        'shortname' => 'NCT',\r\n        'hasdst' => false ),\r\n    'Ponape Time' => array(\r\n        'offset' => 39600000,\r\n        'longname' => 'Ponape Time',\r\n        'shortname' => 'PONT',\r\n        'hasdst' => false ),\r\n    'Norfolk Time' => array(\r\n        'offset' => 41400000,\r\n        'longname' => 'Norfolk Time',\r\n        'shortname' => 'NFT',\r\n        'hasdst' => false ),\r\n    'New Zealand Standard Time' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'New Zealand Standard Time',\r\n        'shortname' => 'NZST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'New Zealand Daylight Time',\r\n        'dstshortname' => 'NZDT' ),\r\n    'Anadyr Time' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'Anadyr Time',\r\n        'shortname' => 'ANAT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Anadyr Summer Time',\r\n        'dstshortname' => 'ANAST' ),\r\n    'Petropavlovsk-Kamchatski Time' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'Petropavlovsk-Kamchatski Time',\r\n        'shortname' => 'PETT',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Petropavlovsk-Kamchatski Summer Time',\r\n        'dstshortname' => 'PETST' ),\r\n    'GMT+12:00' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'GMT+12:00',\r\n        'shortname' => 'GMT+12:00',\r\n        'hasdst' => false ),\r\n    'Marshall Islands Time' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'Marshall Islands Time',\r\n        'shortname' => 'MHT',\r\n        'hasdst' => false ),\r\n    'Fiji Time' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'Fiji Time',\r\n        'shortname' => 'FJT',\r\n        'hasdst' => false ),\r\n    'Tuvalu Time' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'Tuvalu Time',\r\n        'shortname' => 'TVT',\r\n        'hasdst' => false ),\r\n    'Nauru Time' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'Nauru Time',\r\n        'shortname' => 'NRT',\r\n        'hasdst' => false ),\r\n    'Gilbert Is. Time' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'Gilbert Is. Time',\r\n        'shortname' => 'GILT',\r\n        'hasdst' => false ),\r\n    'Wake Time' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'Wake Time',\r\n        'shortname' => 'WAKT',\r\n        'hasdst' => false ),\r\n    'Wallis & Futuna Time' => array(\r\n        'offset' => 43200000,\r\n        'longname' => 'Wallis & Futuna Time',\r\n        'shortname' => 'WFT',\r\n        'hasdst' => false ),\r\n    'Chatham Standard Time' => array(\r\n        'offset' => 45900000,\r\n        'longname' => 'Chatham Standard Time',\r\n        'shortname' => 'CHAST',\r\n        'hasdst' => true,\r\n        'dstlongname' => 'Chatham Daylight Time',\r\n        'dstshortname' => 'CHADT' ),\r\n    'GMT+13:00' => array(\r\n        'offset' => 46800000,\r\n        'longname' => 'GMT+13:00',\r\n        'shortname' => 'GMT+13:00',\r\n        'hasdst' => false ),\r\n    'Phoenix Is. Time' => array(\r\n        'offset' => 46800000,\r\n        'longname' => 'Phoenix Is. Time',\r\n        'shortname' => 'PHOT',\r\n        'hasdst' => false ),\r\n    'Tonga Time' => array(\r\n        'offset' => 46800000,\r\n        'longname' => 'Tonga Time',\r\n        'shortname' => 'TOT',\r\n        'hasdst' => false ),\r\n    'GMT+14:00' => array(\r\n        'offset' => 50400000,\r\n        'longname' => 'GMT+14:00',\r\n        'shortname' => 'GMT+14:00',\r\n        'hasdst' => false ),\r\n    'Line Is. Time' => array(\r\n        'offset' => 50400000,\r\n        'longname' => 'Line Is. Time',\r\n        'shortname' => 'LINT',\r\n        'hasdst' => false ),\r\n);\r\n\r\n/**\r\n * Initialize default timezone\r\n *\r\n * First try _DATE_TIMEZONE_DEFAULT global, then PHP_TZ environment var,\r\n * then TZ environment var\r\n */\r\nif(isset($GLOBALS['_DATE_TIMEZONE_DEFAULT'])\r\n   && Date_TimeZone::isValidID($GLOBALS['_DATE_TIMEZONE_DEFAULT']))\r\n{\r\n    Date_TimeZone::setDefault($GLOBALS['_DATE_TIMEZONE_DEFAULT']);\r\n} elseif (getenv('PHP_TZ') && Date_TimeZone::isValidID(getenv('PHP_TZ'))) {\r\n    Date_TimeZone::setDefault(getenv('PHP_TZ'));\r\n} elseif (getenv('TZ') && Date_TimeZone::isValidID(getenv('TZ'))) {\r\n    Date_TimeZone::setDefault(getenv('TZ'));\r\n} elseif (Date_TimeZone::isValidID(date('T'))) {\r\n    Date_TimeZone::setDefault(date('T'));\r\n} else {\r\n    Date_TimeZone::setDefault('UTC');\r\n}\r\n\r\n/*\r\n * Local variables:\r\n * mode: php\r\n * tab-width: 4\r\n * c-basic-offset: 4\r\n * c-hanging-comment-ender-p: nil\r\n * End:\r\n */\r\n?>"
  },
  {
    "path": "newscoop/include/Date.php",
    "content": "<?php\r\n/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4 foldmethod=marker: */\r\n\r\n// {{{ Header\r\n\r\n/**\r\n * Generic date handling class for PEAR\r\n *\r\n * Generic date handling class for PEAR.  Attempts to be time zone aware\r\n * through the Date::TimeZone class.  Supports several operations from\r\n * Date::Calc on Date objects.\r\n *\r\n * PHP versions 4 and 5\r\n *\r\n * LICENSE:\r\n *\r\n * Copyright (c) 1997-2006 Baba Buehler, Pierre-Alain Joye\r\n * All rights reserved.\r\n *\r\n * Redistribution and use in source and binary forms, with or without\r\n * modification, are permitted under the terms of the BSD License.\r\n *\r\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\r\n * \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\r\n * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS\r\n * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE\r\n * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,\r\n * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,\r\n * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\r\n * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\r\n * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT\r\n * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN\r\n * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE\r\n * POSSIBILITY OF SUCH DAMAGE.\r\n *\r\n * @category   Date and Time\r\n * @package    Date\r\n * @author     Baba Buehler <baba@babaz.com>\r\n * @author     Pierre-Alain Joye <pajoye@php.net>\r\n * @author     Firman Wandayandi <firman@php.net>\r\n * @copyright  1997-2006 Baba Buehler, Pierre-Alain Joye\r\n * @license    http://www.opensource.org/licenses/bsd-license.php\r\n *             BSD License\r\n * @version    CVS: $Id: Date.php,v 1.41 2006/11/22 00:28:03 firman Exp $\r\n * @link       http://pear.php.net/package/Date\r\n */\r\n\r\n// }}}\r\n\r\n// {{{ Includes\r\n\r\n/**\r\n * Load Date_TimeZone.\r\n */\r\nrequire_once 'Date/TimeZone.php';\r\n\r\n/**\r\n * Load Date_Calc.\r\n */\r\nrequire_once 'Date/Calc.php';\r\n\r\n/**\r\n * Load Date_Span.\r\n */\r\nrequire_once 'Date/Span.php';\r\n\r\n// }}}\r\n// {{{ Constants\r\n\r\n// {{{ Output formats Pass this to getDate().\r\n\r\n/**\r\n * \"YYYY-MM-DD HH:MM:SS\"\r\n */\r\ndefine('DATE_FORMAT_ISO', 1);\r\n\r\n/**\r\n * \"YYYYMMSSTHHMMSS(Z|(+/-)HHMM)?\"\r\n */\r\ndefine('DATE_FORMAT_ISO_BASIC', 2);\r\n\r\n/**\r\n * \"YYYY-MM-SSTHH:MM:SS(Z|(+/-)HH:MM)?\"\r\n */\r\ndefine('DATE_FORMAT_ISO_EXTENDED', 3);\r\n\r\n/**\r\n * \"YYYY-MM-SSTHH:MM:SS(.S*)?(Z|(+/-)HH:MM)?\"\r\n */\r\ndefine('DATE_FORMAT_ISO_EXTENDED_MICROTIME', 6);\r\n\r\n/**\r\n * \"YYYYMMDDHHMMSS\"\r\n */\r\ndefine('DATE_FORMAT_TIMESTAMP', 4);\r\n\r\n/**\r\n * long int, seconds since the unix epoch\r\n */\r\ndefine('DATE_FORMAT_UNIXTIME', 5);\r\n\r\n// }}}\r\n\r\n// }}}\r\n// {{{ Class: Date\r\n\r\n/**\r\n * Generic date handling class for PEAR\r\n *\r\n * Generic date handling class for PEAR.  Attempts to be time zone aware\r\n * through the Date::TimeZone class.  Supports several operations from\r\n * Date::Calc on Date objects.\r\n *\r\n * @author     Baba Buehler <baba@babaz.com>\r\n * @author     Pierre-Alain Joye <pajoye@php.net>\r\n * @author     Firman Wandayandi <firman@php.net>\r\n * @copyright  1997-2006 Baba Buehler, Pierre-Alain Joye\r\n * @license    http://www.opensource.org/licenses/bsd-license.php\r\n *             BSD License\r\n * @version    Release: 1.4.7\r\n * @link       http://pear.php.net/package/Date\r\n */\r\nclass Date\r\n{\r\n    // {{{ Properties\r\n\r\n    /**\r\n     * the year\r\n     * @var int\r\n     */\r\n    var $year;\r\n\r\n    /**\r\n     * the month\r\n     * @var int\r\n     */\r\n    var $month;\r\n\r\n    /**\r\n     * the day\r\n     * @var int\r\n     */\r\n    var $day;\r\n\r\n    /**\r\n     * the hour\r\n     * @var int\r\n     */\r\n    var $hour;\r\n\r\n    /**\r\n     * the minute\r\n     * @var int\r\n     */\r\n    var $minute;\r\n\r\n    /**\r\n     * the second\r\n     * @var int\r\n     */\r\n    var $second;\r\n\r\n    /**\r\n     * the parts of a second\r\n     * @var float\r\n     */\r\n    var $partsecond;\r\n\r\n    /**\r\n     * timezone for this date\r\n     * @var object Date_TimeZone\r\n     */\r\n    var $tz;\r\n\r\n    /**\r\n     * define the default weekday abbreviation length\r\n     * used by ::format()\r\n     * @var int\r\n     */\r\n    var $getWeekdayAbbrnameLength = 3;\r\n\r\n    // }}}\r\n    // {{{ Constructor\r\n\r\n    /**\r\n     * Constructor\r\n     *\r\n     * Creates a new Date Object initialized to the current date/time in the\r\n     * system-default timezone by default.  A date optionally\r\n     * passed in may be in the ISO 8601, TIMESTAMP or UNIXTIME format,\r\n     * or another Date object.  If no date is passed, the current date/time\r\n     * is used.\r\n     *\r\n     * @access public\r\n     * @see setDate()\r\n     * @param mixed $date optional - date/time to initialize\r\n     * @return object Date the new Date object\r\n     */\r\n    function Date($date = null)\r\n    {\r\n        $this->tz = Date_TimeZone::getDefault();\r\n        if (is_null($date)) {\r\n            $this->setDate(date(\"Y-m-d H:i:s\"));\r\n        } elseif (is_a($date, 'Date')) {\r\n            $this->copy($date);\r\n        } else {\r\n            $this->setDate($date);\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ setDate()\r\n\r\n    /**\r\n     * Set the fields of a Date object based on the input date and format\r\n     *\r\n     * Set the fields of a Date object based on the input date and format,\r\n     * which is specified by the DATE_FORMAT_* constants.\r\n     *\r\n     * @access public\r\n     * @param string $date input date\r\n     * @param int $format Optional format constant (DATE_FORMAT_*) of the input date.\r\n     *                    This parameter isn't really needed anymore, but you could\r\n     *                    use it to force DATE_FORMAT_UNIXTIME.\r\n     */\r\n    function setDate($date, $format = DATE_FORMAT_ISO)\r\n    {\r\n        if (\r\n            preg_match('/^(\\d{4})-?(\\d{2})-?(\\d{2})([T\\s]?(\\d{2}):?(\\d{2}):?(\\d{2})(\\.\\d+)?(Z|[\\+\\-]\\d{2}:?\\d{2})?)?$/i', $date, $regs)\r\n            && $format != DATE_FORMAT_UNIXTIME) {\r\n            // DATE_FORMAT_ISO, ISO_BASIC, ISO_EXTENDED, and TIMESTAMP\r\n            // These formats are extremely close to each other.  This regex\r\n            // is very loose and accepts almost any butchered format you could\r\n            // throw at it.  e.g. 2003-10-07 19:45:15 and 2003-10071945:15\r\n            // are the same thing in the eyes of this regex, even though the\r\n            // latter is not a valid ISO 8601 date.\r\n            $this->year       = $regs[1];\r\n            $this->month      = $regs[2];\r\n            $this->day        = $regs[3];\r\n            $this->hour       = isset($regs[5])?$regs[5]:0;\r\n            $this->minute     = isset($regs[6])?$regs[6]:0;\r\n            $this->second     = isset($regs[7])?$regs[7]:0;\r\n            $this->partsecond = isset($regs[8])?(float)$regs[8]:(float)0;\r\n\r\n            // if an offset is defined, convert time to UTC\r\n            // Date currently can't set a timezone only by offset,\r\n            // so it has to store it as UTC\r\n            if (isset($regs[9])) {\r\n                $this->toUTCbyOffset($regs[9]);\r\n            }\r\n        } elseif (is_numeric($date)) {\r\n            // UNIXTIME\r\n            $this->setDate(date(\"Y-m-d H:i:s\", $date));\r\n        } else {\r\n            // unknown format\r\n            $this->year       = 0;\r\n            $this->month      = 1;\r\n            $this->day        = 1;\r\n            $this->hour       = 0;\r\n            $this->minute     = 0;\r\n            $this->second     = 0;\r\n            $this->partsecond = (float)0;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getDate()\r\n\r\n    /**\r\n     * Get a string (or other) representation of this date\r\n     *\r\n     * Get a string (or other) representation of this date in the\r\n     * format specified by the DATE_FORMAT_* constants.\r\n     *\r\n     * @access public\r\n     * @param int $format format constant (DATE_FORMAT_*) of the output date\r\n     * @return string the date in the requested format\r\n     */\r\n    function getDate($format = DATE_FORMAT_ISO)\r\n    {\r\n        switch ($format) {\r\n        case DATE_FORMAT_ISO:\r\n            return $this->format(\"%Y-%m-%d %T\");\r\n            break;\r\n        case DATE_FORMAT_ISO_BASIC:\r\n            $format = \"%Y%m%dT%H%M%S\";\r\n            if ($this->tz->getID() == 'UTC') {\r\n                $format .= \"Z\";\r\n            }\r\n            return $this->format($format);\r\n            break;\r\n        case DATE_FORMAT_ISO_EXTENDED:\r\n            $format = \"%Y-%m-%dT%H:%M:%S\";\r\n            if ($this->tz->getID() == 'UTC') {\r\n                $format .= \"Z\";\r\n            }\r\n            return $this->format($format);\r\n            break;\r\n        case DATE_FORMAT_ISO_EXTENDED_MICROTIME:\r\n            $format = \"%Y-%m-%dT%H:%M:%s\";\r\n            if ($this->tz->getID() == 'UTC') {\r\n                $format .= \"Z\";\r\n            }\r\n            return $this->format($format);\r\n            break;\r\n        case DATE_FORMAT_TIMESTAMP:\r\n            return $this->format(\"%Y%m%d%H%M%S\");\r\n            break;\r\n        case DATE_FORMAT_UNIXTIME:\r\n            return mktime($this->hour, $this->minute, $this->second, $this->month, $this->day, $this->year);\r\n            break;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ copy()\r\n\r\n    /**\r\n     * Copy values from another Date object\r\n     *\r\n     * Makes this Date a copy of another Date object.\r\n     *\r\n     * @access public\r\n     * @param object Date $date Date to copy from\r\n     */\r\n    function copy($date)\r\n    {\r\n        $this->year = $date->year;\r\n        $this->month = $date->month;\r\n        $this->day = $date->day;\r\n        $this->hour = $date->hour;\r\n        $this->minute = $date->minute;\r\n        $this->second = $date->second;\r\n        $this->tz = $date->tz;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ format()\r\n\r\n    /**\r\n     *  Date pretty printing, similar to strftime()\r\n     *\r\n     *  Formats the date in the given format, much like\r\n     *  strftime().  Most strftime() options are supported.<br><br>\r\n     *\r\n     *  formatting options:<br><br>\r\n     *\r\n     *  <code>%a  </code>  abbreviated weekday name (Sun, Mon, Tue) <br>\r\n     *  <code>%A  </code>  full weekday name (Sunday, Monday, Tuesday) <br>\r\n     *  <code>%b  </code>  abbreviated month name (Jan, Feb, Mar) <br>\r\n     *  <code>%B  </code>  full month name (January, February, March) <br>\r\n     *  <code>%C  </code>  century number (the year divided by 100 and truncated to an integer, range 00 to 99) <br>\r\n     *  <code>%d  </code>  day of month (range 00 to 31) <br>\r\n     *  <code>%D  </code>  same as \"%m/%d/%y\" <br>\r\n     *  <code>%e  </code>  day of month, single digit (range 0 to 31) <br>\r\n     *  <code>%E  </code>  number of days since unspecified epoch (integer, Date_Calc::dateToDays()) <br>\r\n     *  <code>%H  </code>  hour as decimal number (00 to 23) <br>\r\n     *  <code>%I  </code>  hour as decimal number on 12-hour clock (01 to 12) <br>\r\n     *  <code>%j  </code>  day of year (range 001 to 366) <br>\r\n     *  <code>%m  </code>  month as decimal number (range 01 to 12) <br>\r\n     *  <code>%M  </code>  minute as a decimal number (00 to 59) <br>\r\n     *  <code>%n  </code>  newline character (\\n) <br>\r\n     *  <code>%O  </code>  dst-corrected timezone offset expressed as \"+/-HH:MM\" <br>\r\n     *  <code>%o  </code>  raw timezone offset expressed as \"+/-HH:MM\" <br>\r\n     *  <code>%p  </code>  either 'am' or 'pm' depending on the time <br>\r\n     *  <code>%P  </code>  either 'AM' or 'PM' depending on the time <br>\r\n     *  <code>%r  </code>  time in am/pm notation, same as \"%I:%M:%S %p\" <br>\r\n     *  <code>%R  </code>  time in 24-hour notation, same as \"%H:%M\" <br>\r\n     *  <code>%s  </code>  seconds including the decimal representation smaller than one second <br>\r\n     *  <code>%S  </code>  seconds as a decimal number (00 to 59) <br>\r\n     *  <code>%t  </code>  tab character (\\t) <br>\r\n     *  <code>%T  </code>  current time, same as \"%H:%M:%S\" <br>\r\n     *  <code>%w  </code>  weekday as decimal (0 = Sunday) <br>\r\n     *  <code>%U  </code>  week number of current year, first sunday as first week <br>\r\n     *  <code>%y  </code>  year as decimal (range 00 to 99) <br>\r\n     *  <code>%Y  </code>  year as decimal including century (range 0000 to 9999) <br>\r\n     *  <code>%%  </code>  literal '%' <br>\r\n     * <br>\r\n     *\r\n     * @access public\r\n     * @param string format the format string for returned date/time\r\n     * @return string date/time in given format\r\n     */\r\n    function format($format)\r\n    {\r\n        $output = \"\";\r\n\r\n        for($strpos = 0; $strpos < strlen($format); $strpos++) {\r\n            $char = substr($format,$strpos,1);\r\n            if ($char == \"%\") {\r\n                $nextchar = substr($format,$strpos + 1,1);\r\n                switch ($nextchar) {\r\n                case \"a\":\r\n                    $output .= Date_Calc::getWeekdayAbbrname($this->day,$this->month,$this->year, $this->getWeekdayAbbrnameLength);\r\n                    break;\r\n                case \"A\":\r\n                    $output .= Date_Calc::getWeekdayFullname($this->day,$this->month,$this->year);\r\n                    break;\r\n                case \"b\":\r\n                    $output .= Date_Calc::getMonthAbbrname($this->month);\r\n                    break;\r\n                case \"B\":\r\n                    $output .= Date_Calc::getMonthFullname($this->month);\r\n                    break;\r\n                case \"C\":\r\n                    $output .= sprintf(\"%02d\",intval($this->year/100));\r\n                    break;\r\n                case \"d\":\r\n                    $output .= sprintf(\"%02d\",$this->day);\r\n                    break;\r\n                case \"D\":\r\n                    $output .= sprintf(\"%02d/%02d/%02d\",$this->month,$this->day,$this->year);\r\n                    break;\r\n                case \"e\":\r\n                    $output .= $this->day * 1; // get rid of leading zero\r\n                    break;\r\n                case \"E\":\r\n                    $output .= Date_Calc::dateToDays($this->day,$this->month,$this->year);\r\n                    break;\r\n                case \"H\":\r\n                    $output .= sprintf(\"%02d\", $this->hour);\r\n                    break;\r\n                case 'h':\r\n                    $output .= sprintf(\"%d\", $this->hour);\r\n                    break;\r\n                case \"I\":\r\n                    $hour = ($this->hour + 1) > 12 ? $this->hour - 12 : $this->hour;\r\n                    $output .= sprintf(\"%02d\", $hour==0 ? 12 : $hour);\r\n                    break;\r\n                case \"i\":\r\n                    $hour = ($this->hour + 1) > 12 ? $this->hour - 12 : $this->hour;\r\n                    $output .= sprintf(\"%d\", $hour==0 ? 12 : $hour);\r\n                    break;\r\n                case \"j\":\r\n                    $output .= Date_Calc::julianDate($this->day,$this->month,$this->year);\r\n                    break;\r\n                case \"m\":\r\n                    $output .= sprintf(\"%02d\",$this->month);\r\n                    break;\r\n                case \"M\":\r\n                    $output .= sprintf(\"%02d\",$this->minute);\r\n                    break;\r\n                case \"n\":\r\n                    $output .= \"\\n\";\r\n                    break;\r\n                case \"O\":\r\n                    $offms = $this->tz->getOffset($this);\r\n                    $direction = $offms >= 0 ? \"+\" : \"-\";\r\n                    $offmins = abs($offms) / 1000 / 60;\r\n                    $hours = $offmins / 60;\r\n                    $minutes = $offmins % 60;\r\n                    $output .= sprintf(\"%s%02d:%02d\", $direction, $hours, $minutes);\r\n                    break;\r\n                case \"o\":\r\n                    $offms = $this->tz->getRawOffset($this);\r\n                    $direction = $offms >= 0 ? \"+\" : \"-\";\r\n                    $offmins = abs($offms) / 1000 / 60;\r\n                    $hours = $offmins / 60;\r\n                    $minutes = $offmins % 60;\r\n                    $output .= sprintf(\"%s%02d:%02d\", $direction, $hours, $minutes);\r\n                    break;\r\n                case \"p\":\r\n                    $output .= $this->hour >= 12 ? \"pm\" : \"am\";\r\n                    break;\r\n                case \"P\":\r\n                    $output .= $this->hour >= 12 ? \"PM\" : \"AM\";\r\n                    break;\r\n                case \"r\":\r\n                    $hour = ($this->hour + 1) > 12 ? $this->hour - 12 : $this->hour;\r\n                    $output .= sprintf(\"%02d:%02d:%02d %s\", $hour==0 ?  12 : $hour, $this->minute, $this->second, $this->hour >= 12 ? \"PM\" : \"AM\");\r\n                    break;\r\n                case \"R\":\r\n                    $output .= sprintf(\"%02d:%02d\", $this->hour, $this->minute);\r\n                    break;\r\n                case \"s\":\r\n                    $output .= str_replace(',', '.', sprintf(\"%09f\", (float)((float)$this->second + $this->partsecond)));\r\n                    break;\r\n                case \"S\":\r\n                    $output .= sprintf(\"%02d\", $this->second);\r\n                    break;\r\n                case \"t\":\r\n                    $output .= \"\\t\";\r\n                    break;\r\n                case \"T\":\r\n                    $output .= sprintf(\"%02d:%02d:%02d\", $this->hour, $this->minute, $this->second);\r\n                    break;\r\n                case \"w\":\r\n                    $output .= Date_Calc::dayOfWeek($this->day,$this->month,$this->year);\r\n                    break;\r\n                case \"U\":\r\n                    $output .= Date_Calc::weekOfYear($this->day,$this->month,$this->year);\r\n                    break;\r\n                case \"y\":\r\n                    $output .= substr($this->year,2,2);\r\n                    break;\r\n                case \"Y\":\r\n                    $output .= $this->year;\r\n                    break;\r\n                case \"Z\":\r\n                    $output .= $this->tz->inDaylightTime($this) ? $this->tz->getDSTShortName() : $this->tz->getShortName();\r\n                    break;\r\n                case \"%\":\r\n                    $output .= \"%\";\r\n                    break;\r\n                default:\r\n                    $output .= $char.$nextchar;\r\n                }\r\n                $strpos++;\r\n            } else {\r\n                $output .= $char;\r\n            }\r\n        }\r\n        return $output;\r\n\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getTime()\r\n\r\n    /**\r\n     * Get this date/time in Unix time() format\r\n     *\r\n     * Get a representation of this date in Unix time() format.  This may only be\r\n     * valid for dates from 1970 to ~2038.\r\n     *\r\n     * @access public\r\n     * @return int number of seconds since the unix epoch\r\n     */\r\n    function getTime()\r\n    {\r\n        return $this->getDate(DATE_FORMAT_UNIXTIME);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ setTZ()\r\n\r\n    /**\r\n     * Sets the time zone of this Date\r\n     *\r\n     * Sets the time zone of this date with the given\r\n     * Date_TimeZone object.  Does not alter the date/time,\r\n     * only assigns a new time zone.  For conversion, use\r\n     * convertTZ().\r\n     *\r\n     * @access public\r\n     * @param object Date_TimeZone $tz the Date_TimeZone object to use, if called\r\n     * with a paramater that is not a Date_TimeZone object, will fall through to\r\n     * setTZbyID().\r\n     */\r\n    function setTZ($tz)\r\n    {\r\n        if(is_a($tz, 'Date_Timezone')) {\r\n            $this->tz = $tz;\r\n        } else {\r\n            $this->setTZbyID($tz);\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ setTZbyID()\r\n\r\n    /**\r\n     * Sets the time zone of this date with the given time zone id\r\n     *\r\n     * Sets the time zone of this date with the given\r\n     * time zone id, or to the system default if the\r\n     * given id is invalid. Does not alter the date/time,\r\n     * only assigns a new time zone.  For conversion, use\r\n     * convertTZ().\r\n     *\r\n     * @access public\r\n     * @param string id a time zone id\r\n     */\r\n    function setTZbyID($id)\r\n    {\r\n        if (Date_TimeZone::isValidID($id)) {\r\n            $this->tz = new Date_TimeZone($id);\r\n        } else {\r\n            $this->tz = Date_TimeZone::getDefault();\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ inDaylightTime()\r\n\r\n    /**\r\n     * Tests if this date/time is in DST\r\n     *\r\n     * Returns true if daylight savings time is in effect for\r\n     * this date in this date's time zone.  See Date_TimeZone::inDaylightTime()\r\n     * for compatability information.\r\n     *\r\n     * @access public\r\n     * @return boolean true if DST is in effect for this date\r\n     */\r\n    function inDaylightTime()\r\n    {\r\n        return $this->tz->inDaylightTime($this);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ toUTC()\r\n\r\n    /**\r\n     * Converts this date to UTC and sets this date's timezone to UTC\r\n     *\r\n     * Converts this date to UTC and sets this date's timezone to UTC\r\n     *\r\n     * @access public\r\n     */\r\n    function toUTC()\r\n    {\r\n        if ($this->tz->getOffset($this) > 0) {\r\n            $this->subtractSeconds(intval($this->tz->getOffset($this) / 1000));\r\n        } else {\r\n            $this->addSeconds(intval(abs($this->tz->getOffset($this)) / 1000));\r\n        }\r\n        $this->tz = new Date_TimeZone('UTC');\r\n    }\r\n\r\n    // }}}\r\n    // {{{ convertTZ()\r\n\r\n    /**\r\n     * Converts this date to a new time zone\r\n     *\r\n     * Converts this date to a new time zone.\r\n     * WARNING: This may not work correctly if your system does not allow\r\n     * putenv() or if localtime() does not work in your environment.  See\r\n     * Date::TimeZone::inDaylightTime() for more information.\r\n     *\r\n     * @access public\r\n     * @param object Date_TimeZone $tz the Date::TimeZone object for the conversion time zone\r\n     */\r\n    function convertTZ($tz)\r\n    {\r\n        // convert to UTC\r\n        if ($this->tz->getOffset($this) > 0) {\r\n            $this->subtractSeconds(intval(abs($this->tz->getOffset($this)) / 1000));\r\n        } else {\r\n            $this->addSeconds(intval(abs($this->tz->getOffset($this)) / 1000));\r\n        }\r\n        // convert UTC to new timezone\r\n        if ($tz->getOffset($this) > 0) {\r\n            $this->addSeconds(intval(abs($tz->getOffset($this)) / 1000));\r\n        } else {\r\n            $this->subtractSeconds(intval(abs($tz->getOffset($this)) / 1000));\r\n        }\r\n        $this->tz = $tz;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ convertTZbyID()\r\n\r\n    /**\r\n     * Converts this date to a new time zone, given a valid time zone ID\r\n     *\r\n     * Converts this date to a new time zone, given a valid time zone ID\r\n     * WARNING: This may not work correctly if your system does not allow\r\n     * putenv() or if localtime() does not work in your environment.  See\r\n     * Date::TimeZone::inDaylightTime() for more information.\r\n     *\r\n     * @access public\r\n     * @param string id a time zone id\r\n     */\r\n    function convertTZbyID($id)\r\n    {\r\n       if (Date_TimeZone::isValidID($id)) {\r\n          $tz = new Date_TimeZone($id);\r\n       } else {\r\n          $tz = Date_TimeZone::getDefault();\r\n       }\r\n       $this->convertTZ($tz);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ toUTCbyOffset()\r\n\r\n    function toUTCbyOffset($offset)\r\n    {\r\n        if ($offset == \"Z\" || $offset == \"+00:00\" || $offset == \"+0000\") {\r\n            $this->toUTC();\r\n            return true;\r\n        }\r\n\r\n        if (preg_match('/([\\+\\-])(\\d{2}):?(\\d{2})/', $offset, $regs)) {\r\n            // convert offset to seconds\r\n            $hours  = (int) isset($regs[2])?$regs[2]:0;\r\n            $mins   = (int) isset($regs[3])?$regs[3]:0;\r\n            $offset = ($hours * 3600) + ($mins * 60);\r\n\r\n            if (isset($regs[1]) && $regs[1] == \"-\") {\r\n                $offset *= -1;\r\n            }\r\n\r\n            if ($offset > 0) {\r\n                $this->subtractSeconds(intval($offset));\r\n            } else {\r\n                $this->addSeconds(intval(abs($offset)));\r\n            }\r\n\r\n            $this->tz = new Date_TimeZone('UTC');\r\n            return true;\r\n        }\r\n\r\n        return false;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ addSeconds()\r\n\r\n    /**\r\n     * Adds a given number of seconds to the date\r\n     *\r\n     * Adds a given number of seconds to the date\r\n     *\r\n     * @access public\r\n     * @param int $sec the number of seconds to add\r\n     */\r\n    function addSeconds($sec)\r\n    {\r\n        settype($sec, 'int');\r\n\r\n        // Negative value given.\r\n        if ($sec < 0) {\r\n            $this->subtractSeconds(abs($sec));\r\n            return;\r\n        }\r\n\r\n        $this->addSpan(new Date_Span($sec));\r\n    }\r\n\r\n    // }}}\r\n    // {{{ addSpan()\r\n\r\n    /**\r\n     * Adds a time span to the date\r\n     *\r\n     * Adds a time span to the date\r\n     *\r\n     * @access public\r\n     * @param object Date_Span $span the time span to add\r\n     */\r\n    function addSpan($span)\r\n    {\r\n        if (!is_a($span, 'Date_Span')) {\r\n            return;\r\n        }\r\n\r\n        $this->second += $span->second;\r\n        if ($this->second >= 60) {\r\n            $this->minute++;\r\n            $this->second -= 60;\r\n        }\r\n\r\n        $this->minute += $span->minute;\r\n        if ($this->minute >= 60) {\r\n            $this->hour++;\r\n            if ($this->hour >= 24) {\r\n                list($this->year, $this->month, $this->day) =\r\n                    sscanf(Date_Calc::nextDay($this->day, $this->month, $this->year), \"%04s%02s%02s\");\r\n                $this->hour -= 24;\r\n            }\r\n            $this->minute -= 60;\r\n        }\r\n\r\n        $this->hour += $span->hour;\r\n        if ($this->hour >= 24) {\r\n            list($this->year, $this->month, $this->day) =\r\n                sscanf(Date_Calc::nextDay($this->day, $this->month, $this->year), \"%04s%02s%02s\");\r\n            $this->hour -= 24;\r\n        }\r\n\r\n        $d = Date_Calc::dateToDays($this->day, $this->month, $this->year);\r\n        $d += $span->day;\r\n\r\n        list($this->year, $this->month, $this->day) =\r\n            sscanf(Date_Calc::daysToDate($d), \"%04s%02s%02s\");\r\n        $this->year  = intval($this->year);\r\n        $this->month = intval($this->month);\r\n        $this->day   = intval($this->day);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ subtractSeconds()\r\n\r\n    /**\r\n     * Subtracts a given number of seconds from the date\r\n     *\r\n     * Subtracts a given number of seconds from the date\r\n     *\r\n     * @access public\r\n     * @param int $sec the number of seconds to subtract\r\n     */\r\n    function subtractSeconds($sec)\r\n    {\r\n        settype($sec, 'int');\r\n\r\n        // Negative value given.\r\n        if ($sec < 0) {\r\n            $this->addSeconds(abs($sec));\r\n            return;\r\n        }\r\n\r\n        $this->subtractSpan(new Date_Span($sec));\r\n    }\r\n\r\n    // }}}\r\n    // {{{ subtractSpan()\r\n\r\n    /**\r\n     * Subtracts a time span to the date\r\n     *\r\n     * Subtracts a time span to the date\r\n     *\r\n     * @access public\r\n     * @param object Date_Span $span the time span to subtract\r\n     */\r\n    function subtractSpan($span)\r\n    {\r\n        if (!is_a($span, 'Date_Span')) {\r\n            return;\r\n        }\r\n        if ($span->isEmpty()) {\r\n            return;\r\n        }\r\n\r\n        $this->second -= $span->second;\r\n        if ($this->second < 0) {\r\n            $this->minute--;\r\n            $this->second += 60;\r\n        }\r\n\r\n        $this->minute -= $span->minute;\r\n        if ($this->minute < 0) {\r\n            $this->hour--;\r\n            if ($this->hour < 0) {\r\n                list($this->year, $this->month, $this->day) =\r\n                    sscanf(Date_Calc::prevDay($this->day, $this->month, $this->year), \"%04s%02s%02s\");\r\n                $this->hour += 24;\r\n            }\r\n            $this->minute += 60;\r\n        }\r\n\r\n        $this->hour -= $span->hour;\r\n        if ($this->hour < 0) {\r\n            list($this->year, $this->month, $this->day) =\r\n                sscanf(Date_Calc::prevDay($this->day, $this->month, $this->year), \"%04s%02s%02s\");\r\n            $this->hour += 24;\r\n        }\r\n\r\n        $d = Date_Calc::dateToDays($this->day, $this->month, $this->year);\r\n        $d -= $span->day;\r\n\r\n        list($this->year, $this->month, $this->day) =\r\n            sscanf(Date_Calc::daysToDate($d), \"%04s%02s%02s\");\r\n        $this->year  = intval($this->year);\r\n        $this->month = intval($this->month);\r\n        $this->day   = intval($this->day);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ compare()\r\n\r\n    /**\r\n     * Compares two dates\r\n     *\r\n     * Compares two dates.  Suitable for use\r\n     * in sorting functions.\r\n     *\r\n     * @access public\r\n     * @param object Date $d1 the first date\r\n     * @param object Date $d2 the second date\r\n     * @return int 0 if the dates are equal, -1 if d1 is before d2, 1 if d1 is after d2\r\n     */\r\n    function compare($d1, $d2)\r\n    {\r\n        $d1->convertTZ(new Date_TimeZone('UTC'));\r\n        $d2->convertTZ(new Date_TimeZone('UTC'));\r\n        $days1 = Date_Calc::dateToDays($d1->day, $d1->month, $d1->year);\r\n        $days2 = Date_Calc::dateToDays($d2->day, $d2->month, $d2->year);\r\n        if ($days1 < $days2) return -1;\r\n        if ($days1 > $days2) return 1;\r\n        if ($d1->hour < $d2->hour) return -1;\r\n        if ($d1->hour > $d2->hour) return 1;\r\n        if ($d1->minute < $d2->minute) return -1;\r\n        if ($d1->minute > $d2->minute) return 1;\r\n        if ($d1->second < $d2->second) return -1;\r\n        if ($d1->second > $d2->second) return 1;\r\n        return 0;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ before()\r\n\r\n    /**\r\n     * Test if this date/time is before a certain date/time\r\n     *\r\n     * Test if this date/time is before a certain date/time\r\n     *\r\n     * @access public\r\n     * @param object Date $when the date to test against\r\n     * @return boolean true if this date is before $when\r\n     */\r\n    function before($when)\r\n    {\r\n        if (Date::compare($this,$when) == -1) {\r\n            return true;\r\n        } else {\r\n            return false;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ after()\r\n\r\n    /**\r\n     * Test if this date/time is after a certian date/time\r\n     *\r\n     * Test if this date/time is after a certian date/time\r\n     *\r\n     * @access public\r\n     * @param object Date $when the date to test against\r\n     * @return boolean true if this date is after $when\r\n     */\r\n    function after($when)\r\n    {\r\n        if (Date::compare($this,$when) == 1) {\r\n            return true;\r\n        } else {\r\n            return false;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ equals()\r\n\r\n    /**\r\n     * Test if this date/time is exactly equal to a certian date/time\r\n     *\r\n     * Test if this date/time is exactly equal to a certian date/time\r\n     *\r\n     * @access public\r\n     * @param object Date $when the date to test against\r\n     * @return boolean true if this date is exactly equal to $when\r\n     */\r\n    function equals($when)\r\n    {\r\n        if (Date::compare($this,$when) == 0) {\r\n            return true;\r\n        } else {\r\n            return false;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ isFuture()\r\n\r\n    /**\r\n     * Determine if this date is in the future\r\n     *\r\n     * Determine if this date is in the future\r\n     *\r\n     * @access public\r\n     * @return boolean true if this date is in the future\r\n     */\r\n    function isFuture()\r\n    {\r\n        $now = new Date();\r\n        if ($this->after($now)) {\r\n            return true;\r\n        } else {\r\n            return false;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ isPast()\r\n\r\n    /**\r\n     * Determine if this date is in the past\r\n     *\r\n     * Determine if this date is in the past\r\n     *\r\n     * @access public\r\n     * @return boolean true if this date is in the past\r\n     */\r\n    function isPast()\r\n    {\r\n        $now = new Date();\r\n        if ($this->before($now)) {\r\n            return true;\r\n        } else {\r\n            return false;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ isLeapYear()\r\n\r\n    /**\r\n     * Determine if the year in this date is a leap year\r\n     *\r\n     * Determine if the year in this date is a leap year\r\n     *\r\n     * @access public\r\n     * @return boolean true if this year is a leap year\r\n     */\r\n    function isLeapYear()\r\n    {\r\n        return Date_Calc::isLeapYear($this->year);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getJulianDate()\r\n\r\n    /**\r\n     * Get the Julian date for this date\r\n     *\r\n     * Get the Julian date for this date\r\n     *\r\n     * @access public\r\n     * @return int the Julian date\r\n     */\r\n    function getJulianDate()\r\n    {\r\n        return Date_Calc::julianDate($this->day, $this->month, $this->year);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getDayOfWeek()\r\n\r\n    /**\r\n     * Gets the day of the week for this date\r\n     *\r\n     * Gets the day of the week for this date (0=Sunday)\r\n     *\r\n     * @access public\r\n     * @return int the day of the week (0=Sunday)\r\n     */\r\n    function getDayOfWeek()\r\n    {\r\n        return Date_Calc::dayOfWeek($this->day, $this->month, $this->year);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getWeekOfYear()\r\n\r\n    /**\r\n     * Gets the week of the year for this date\r\n     *\r\n     * Gets the week of the year for this date\r\n     *\r\n     * @access public\r\n     * @return int the week of the year\r\n     */\r\n    function getWeekOfYear()\r\n    {\r\n        return Date_Calc::weekOfYear($this->day, $this->month, $this->year);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getQuarterOfYear()\r\n\r\n    /**\r\n     * Gets the quarter of the year for this date\r\n     *\r\n     * Gets the quarter of the year for this date\r\n     *\r\n     * @access public\r\n     * @return int the quarter of the year (1-4)\r\n     */\r\n    function getQuarterOfYear()\r\n    {\r\n        return Date_Calc::quarterOfYear($this->day, $this->month, $this->year);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getDaysInMonth()\r\n\r\n    /**\r\n     * Gets number of days in the month for this date\r\n     *\r\n     * Gets number of days in the month for this date\r\n     *\r\n     * @access public\r\n     * @return int number of days in this month\r\n     */\r\n    function getDaysInMonth()\r\n    {\r\n        return Date_Calc::daysInMonth($this->month, $this->year);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getWeeksInMonth()\r\n\r\n    /**\r\n     * Gets the number of weeks in the month for this date\r\n     *\r\n     * Gets the number of weeks in the month for this date\r\n     *\r\n     * @access public\r\n     * @return int number of weeks in this month\r\n     */\r\n    function getWeeksInMonth()\r\n    {\r\n        return Date_Calc::weeksInMonth($this->month, $this->year);\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getDayName()\r\n\r\n    /**\r\n     * Gets the full name or abbriviated name of this weekday\r\n     *\r\n     * Gets the full name or abbriviated name of this weekday\r\n     *\r\n     * @access public\r\n     * @param boolean $abbr abbrivate the name\r\n     * @return string name of this day\r\n     */\r\n    function getDayName($abbr = false, $length = 3)\r\n    {\r\n        if ($abbr) {\r\n            return Date_Calc::getWeekdayAbbrname($this->day, $this->month, $this->year, $length);\r\n        } else {\r\n            return Date_Calc::getWeekdayFullname($this->day, $this->month, $this->year);\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getMonthName()\r\n\r\n    /**\r\n     * Gets the full name or abbriviated name of this month\r\n     *\r\n     * Gets the full name or abbriviated name of this month\r\n     *\r\n     * @access public\r\n     * @param boolean $abbr abbrivate the name\r\n     * @return string name of this month\r\n     */\r\n    function getMonthName($abbr = false)\r\n    {\r\n        if ($abbr) {\r\n            return Date_Calc::getMonthAbbrname($this->month);\r\n        } else {\r\n            return Date_Calc::getMonthFullname($this->month);\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getNextDay()\r\n\r\n    /**\r\n     * Get a Date object for the day after this one\r\n     *\r\n     * Get a Date object for the day after this one.\r\n     * The time of the returned Date object is the same as this time.\r\n     *\r\n     * @access public\r\n     * @return object Date Date representing the next day\r\n     */\r\n    function getNextDay()\r\n    {\r\n        $day = Date_Calc::nextDay($this->day, $this->month, $this->year, \"%Y-%m-%d\");\r\n        $date = sprintf(\"%s %02d:%02d:%02d\", $day, $this->hour, $this->minute, $this->second);\r\n        $newDate = new Date();\r\n        $newDate->setDate($date);\r\n        return $newDate;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getPrevDay()\r\n\r\n    /**\r\n     * Get a Date object for the day before this one\r\n     *\r\n     * Get a Date object for the day before this one.\r\n     * The time of the returned Date object is the same as this time.\r\n     *\r\n     * @access public\r\n     * @return object Date Date representing the previous day\r\n     */\r\n    function getPrevDay()\r\n    {\r\n        $day = Date_Calc::prevDay($this->day, $this->month, $this->year, \"%Y-%m-%d\");\r\n        $date = sprintf(\"%s %02d:%02d:%02d\", $day, $this->hour, $this->minute, $this->second);\r\n        $newDate = new Date();\r\n        $newDate->setDate($date);\r\n        return $newDate;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getNextWeekday()\r\n\r\n    /**\r\n     * Get a Date object for the weekday after this one\r\n     *\r\n     * Get a Date object for the weekday after this one.\r\n     * The time of the returned Date object is the same as this time.\r\n     *\r\n     * @access public\r\n     * @return object Date Date representing the next weekday\r\n     */\r\n    function getNextWeekday()\r\n    {\r\n        $day = Date_Calc::nextWeekday($this->day, $this->month, $this->year, \"%Y-%m-%d\");\r\n        $date = sprintf(\"%s %02d:%02d:%02d\", $day, $this->hour, $this->minute, $this->second);\r\n        $newDate = new Date();\r\n        $newDate->setDate($date);\r\n        return $newDate;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getPrevWeekday()\r\n\r\n    /**\r\n     * Get a Date object for the weekday before this one\r\n     *\r\n     * Get a Date object for the weekday before this one.\r\n     * The time of the returned Date object is the same as this time.\r\n     *\r\n     * @access public\r\n     * @return object Date Date representing the previous weekday\r\n     */\r\n    function getPrevWeekday()\r\n    {\r\n        $day = Date_Calc::prevWeekday($this->day, $this->month, $this->year, \"%Y-%m-%d\");\r\n        $date = sprintf(\"%s %02d:%02d:%02d\", $day, $this->hour, $this->minute, $this->second);\r\n        $newDate = new Date();\r\n        $newDate->setDate($date);\r\n        return $newDate;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getYear()\r\n\r\n    /**\r\n     * Returns the year field of the date object\r\n     *\r\n     * Returns the year field of the date object\r\n     *\r\n     * @access public\r\n     * @return int the year\r\n     */\r\n    function getYear()\r\n    {\r\n        return (int)$this->year;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getMonth()\r\n\r\n    /**\r\n     * Returns the month field of the date object\r\n     *\r\n     * Returns the month field of the date object\r\n     *\r\n     * @access public\r\n     * @return int the month\r\n     */\r\n    function getMonth()\r\n    {\r\n        return (int)$this->month;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getDay()\r\n\r\n    /**\r\n     * Returns the day field of the date object\r\n     *\r\n     * Returns the day field of the date object\r\n     *\r\n     * @access public\r\n     * @return int the day\r\n     */\r\n    function getDay()\r\n    {\r\n        return (int)$this->day;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getHour()\r\n\r\n    /**\r\n     * Returns the hour field of the date object\r\n     *\r\n     * Returns the hour field of the date object\r\n     *\r\n     * @access public\r\n     * @return int the hour\r\n     */\r\n    function getHour()\r\n    {\r\n        return $this->hour;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getMinute()\r\n\r\n    /**\r\n     * Returns the minute field of the date object\r\n     *\r\n     * Returns the minute field of the date object\r\n     *\r\n     * @access public\r\n     * @return int the minute\r\n     */\r\n    function getMinute()\r\n    {\r\n        return $this->minute;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ getSecond()\r\n\r\n    /**\r\n     * Returns the second field of the date object\r\n     *\r\n     * Returns the second field of the date object\r\n     *\r\n     * @access public\r\n     * @return int the second\r\n     */\r\n    function getSecond()\r\n    {\r\n         return $this->second;\r\n    }\r\n\r\n    // }}}\r\n    // {{{ setYear()\r\n\r\n    /**\r\n     * Set the year field of the date object\r\n     *\r\n     * Set the year field of the date object, invalid years (not 0-9999) are set to 0.\r\n     *\r\n     * @access public\r\n     * @param int $y the year\r\n     */\r\n    function setYear($y)\r\n    {\r\n        if ($y < 0 || $y > 9999) {\r\n            $this->year = 0;\r\n        } else {\r\n            $this->year = $y;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ setMonth()\r\n\r\n    /**\r\n     * Set the month field of the date object\r\n     *\r\n     * Set the month field of the date object, invalid months (not 1-12) are set to 1.\r\n     *\r\n     * @access public\r\n     * @param int $m the month\r\n     */\r\n    function setMonth($m)\r\n    {\r\n        if ($m < 1 || $m > 12) {\r\n            $this->month = 1;\r\n        } else {\r\n            $this->month = $m;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ setDay()\r\n\r\n    /**\r\n     * Set the day field of the date object\r\n     *\r\n     * Set the day field of the date object, invalid days (not 1-31) are set to 1.\r\n     *\r\n     * @access public\r\n     * @param int $d the day\r\n     */\r\n    function setDay($d)\r\n    {\r\n        if ($d > 31 || $d < 1) {\r\n            $this->day = 1;\r\n        } else {\r\n            $this->day = $d;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ setHour()\r\n\r\n    /**\r\n     * Set the hour field of the date object\r\n     *\r\n     * Set the hour field of the date object in 24-hour format.\r\n     * Invalid hours (not 0-23) are set to 0.\r\n     *\r\n     * @access public\r\n     * @param int $h the hour\r\n     */\r\n    function setHour($h)\r\n    {\r\n        if ($h > 23 || $h < 0) {\r\n            $this->hour = 0;\r\n        } else {\r\n            $this->hour = $h;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ setMinute()\r\n\r\n    /**\r\n     * Set the minute field of the date object\r\n     *\r\n     * Set the minute field of the date object, invalid minutes (not 0-59) are set to 0.\r\n     *\r\n     * @access public\r\n     * @param int $m the minute\r\n     */\r\n    function setMinute($m)\r\n    {\r\n        if ($m > 59 || $m < 0) {\r\n            $this->minute = 0;\r\n        } else {\r\n            $this->minute = $m;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n    // {{{ setSecond()\r\n\r\n    /**\r\n     * Set the second field of the date object\r\n     *\r\n     * Set the second field of the date object, invalid seconds (not 0-59) are set to 0.\r\n     *\r\n     * @access public\r\n     * @param int $s the second\r\n     */\r\n    function setSecond($s) {\r\n        if ($s > 59 || $s < 0) {\r\n            $this->second = 0;\r\n        } else {\r\n            $this->second = $s;\r\n        }\r\n    }\r\n\r\n    // }}}\r\n}\r\n\r\n// }}}\r\n\r\n/*\r\n * Local variables:\r\n * mode: php\r\n * tab-width: 4\r\n * c-basic-offset: 4\r\n * c-hanging-comment-ender-p: nil\r\n * End:\r\n */\r\n?>"
  },
  {
    "path": "newscoop/include/Event/Dispatcher.php",
    "content": "<?php\n// +-----------------------------------------------------------------------+\n// | Copyright (c) 2005, Bertrand Mansion                                  |\n// | All rights reserved.                                                  |\n// |                                                                       |\n// | Redistribution and use in source and binary forms, with or without    |\n// | modification, are permitted provided that the following conditions    |\n// | are met:                                                              |\n// |                                                                       |\n// | o Redistributions of source code must retain the above copyright      |\n// |   notice, this list of conditions and the following disclaimer.       |\n// | o Redistributions in binary form must reproduce the above copyright   |\n// |   notice, this list of conditions and the following disclaimer in the |\n// |   documentation and/or other materials provided with the distribution.|\n// | o The names of the authors may not be used to endorse or promote      |\n// |   products derived from this software without specific prior written  |\n// |   permission.                                                         |\n// |                                                                       |\n// | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS   |\n// | \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT     |\n// | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |\n// | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT  |\n// | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |\n// | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT      |\n// | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |\n// | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |\n// | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT   |\n// | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |\n// | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.  |\n// |                                                                       |\n// +-----------------------------------------------------------------------+\n// | Author: Bertrand Mansion <bmansion@mamasam.com>                       |\n// |         Stephan Schmidt <schst@php.net>                               |\n// +-----------------------------------------------------------------------+\n//\n// $Id: Dispatcher.php 284686 2009-07-24 05:22:17Z clockwerx $\n\nrequire_once 'Event/Notification.php';\n\n/**\n * Pseudo 'static property' for Notification object\n * @global array $GLOBALS[\"_Event_Dispatcher\"]\n */\n$GLOBALS['_Event_Dispatcher'] = array(\n                                  'NotificationClass' => 'Event_Notification'\n                                     );\n\n/**\n * Registers a global observer\n */\ndefine('EVENT_DISPATCHER_GLOBAL', '');\n\n/**\n * Dispatch notifications using PHP callbacks\n *\n * The Event_Dispatcher acts acts as a notification dispatch table.\n * It is used to notify other objects of interesting things, if\n * they meet certain criteria. This information is encapsulated\n * in {@link Event_Notification} objects. Client objects register\n * themselves with the Event_Dispatcher as observers of specific\n * notifications posted by other objects. When an event occurs,\n * an object posts an appropriate notification to the Event_Dispatcher.\n * The Event_Dispatcher dispatches a message to each\n * registered observer, passing the notification as the sole argument.\n *\n * The Event_Dispatcher is actually a combination of three design\n * patterns: the Singleton, {@link http://c2.com/cgi/wiki?MediatorPattern Mediator},\n * and Observer patterns. The idea behind Event_Dispatcher is borrowed from\n * {@link http://developer.apple.com/documentation/Cocoa/Conceptual/Notifications/index.html Apple's Cocoa framework}.\n *\n * @category   Event\n * @package    Event_Dispatcher\n * @author     Bertrand Mansion <bmansion@mamasam.com>\n * @author     Stephan Schmidt <schst@php.net>\n * @copyright  1997-2005 The PHP Group\n * @license    http://www.opensource.org/licenses/bsd-license.php BSD License\n * @version    Release: @package_version@\n * @link       http://pear.php.net/package/Event_Dispatcher\n */\nclass Event_Dispatcher\n{\n    /**\n     * Registered observer callbacks\n     * @var array\n     * @access private\n     */\n    public $_ro = array();\n\n    /**\n     * Pending notifications\n     * @var array\n     * @access private\n     */\n    public $_pending = array();\n\n    /**\n     * Nested observers\n     * @var array\n     * @access private\n     */\n    public $_nestedDispatchers = array();\n\n    /**\n     * Name of the dispatcher\n     * @var string\n     * @access private\n     */\n    public $_name = null;\n\n    /**\n     * Class used for notifications\n     * @var string\n     * @access private\n     */\n    public $_notificationClass = null;\n\n    /**\n     * PHP5 constructor\n     *\n     * Please use {@link getInstance()} instead.\n     *\n     * @access  private\n     * @param   string      Name of the notification dispatcher.\n     */\n    public function __construct($name)\n    {\n        $this->_name = $name;\n        $this->_notificationClass = $GLOBALS['_Event_Dispatcher']['NotificationClass'];\n    }\n\n    /**\n     * PHP4 constructor\n     *\n     * Please use {@link getInstance()} instead.\n     *\n     * @access  private\n     * @param   string      Name of the notification dispatcher.\n     */\n    public function Event_Dispatcher($name)\n    {\n        Event_Dispatcher::__construct($name);\n    }\n\n    /**\n     * Returns a notification dispatcher singleton\n     *\n     * There is usually no need to have more than one notification\n     * center for an application so this is the recommended way\n     * to get a Event_Dispatcher object.\n     *\n     * @param string    Name of the notification dispatcher.\n     *                  The default notification dispatcher is named __default.\n     *\n     * @return object Event_Dispatcher\n     */\n    function &getInstance($name = '__default')\n    {\n        static $dispatchers = array();\n\n        if (!isset($dispatchers[$name])) {\n            $dispatchers[$name] = new Event_Dispatcher($name);\n        }\n\n        return $dispatchers[$name];\n    }\n\n    /**\n     * Registers an observer callback\n     *\n     * This method registers a {@link http://www.php.net/manual/en/language.pseudo-types.php#language.types.callback callback}\n     * which is called when the notification corresponding to the\n     * criteria given at registration time is posted.\n     * The criteria are the notification name and eventually the\n     * class of the object posted with the notification.\n     *\n     * If there are any pending notifications corresponding to the criteria\n     * given here, the callback will be called straight away.\n     *\n     * If the notification name is empty, the observer will receive all the\n     * posted notifications. Same goes for the class name.\n     *\n     * @access  public\n     * @param   mixed       A PHP callback\n     * @param   string      Expected notification name, serves as a filter\n     * @param   string      Expected contained object class, serves as a filter\n     * @return void\n     */\n    public function addObserver($callback, $nName = EVENT_DISPATCHER_GLOBAL, $class = null)\n    {\n        if (is_array($callback)) {\n            if (is_object($callback[0])) {\n                // Note : PHP4 does not allow correct object comparison so\n                // only the class name is used for registration checks.\n                $reg = get_class($callback[0]).'::'.$callback[1];\n            } else {\n                $reg = $callback[0].'::'.$callback[1];\n            }\n        } else {\n            $reg = $callback;\n        }\n\n        $this->_ro[$nName][$reg] = array(\n                                    'callback' => $callback,\n                                    'class'    => $class\n                                    );\n\n        // Post eventual pending notifications for this observer\n        if (isset($this->_pending[$nName])) {\n            foreach (array_keys($this->_pending[$nName]) as $k) {\n                $notification =& $this->_pending[$nName][$k];\n                if (!$notification->isNotificationCancelled()) {\n                    $objClass = get_class($notification->getNotificationObject());\n                    if (empty($class) || strcasecmp($class, $objClass) == 0) {\n                        call_user_func_array($callback, array(&$notification));\n                        $notification->increaseNotificationCount();\n                    }\n                }\n            }\n        }\n    }\n\n    /**\n     * Creates and posts a notification object\n     *\n     * The purpose of the optional associated object is generally to pass\n     * the object posting the notification to the observers, so that the\n     * observers can query the posting object for more information about\n     * the event.\n     *\n     * Notifications are by default added to a pending notification list.\n     * This way, if an observer is not registered by the time they are\n     * posted, it will still be notified when it is added as an observer.\n     * This behaviour can be turned off in order to make sure that only\n     * the registered observers will be notified.\n     *\n     * The info array serves as a container for any kind of useful\n     * information. It is added to the notification object and posted along.\n     *\n     * @access  public\n     * @param   object      Notification associated object\n     * @param   string      Notification name\n     * @param   array       Optional user information\n     * @param   bool        Whether the notification is pending\n     * @param   bool        Whether you want the notification to bubble up\n     * @return object The notification object\n     */\n    function &post(&$object, $nName, $info = array(), $pending = true, $bubble = true)\n    {\n        $notification =& new $this->_notificationClass($object, $nName, $info);\n\n        return $this->postNotification($notification, $pending, $bubble);\n    }\n\n    /**\n     * Posts the {@link Event_Notification} object\n     *\n     * @access  public\n     * @param   object      The Notification object\n     * @param   bool        Whether to post the notification immediately\n     * @param   bool        Whether you want the notification to bubble up\n     * @see Event_Dispatcher::post()\n     * @return object The notification object\n     */\n    function &postNotification(&$notification, $pending = true, $bubble = true)\n    {\n        $nName = $notification->getNotificationName();\n        if ($pending === true) {\n            $this->_pending[$nName][] =& $notification;\n        }\n        $objClass = get_class($notification->getNotificationObject());\n\n        // Find the registered observers\n        if (isset($this->_ro[$nName])) {\n            foreach (array_keys($this->_ro[$nName]) as $k) {\n                $rObserver =& $this->_ro[$nName][$k];\n                if ($notification->isNotificationCancelled()) {\n                    return $notification;\n                }\n                if (empty($rObserver['class']) ||\n                    strcasecmp($rObserver['class'], $objClass) == 0) {\n                    call_user_func_array($rObserver['callback'], array(&$notification));\n                    $notification->increaseNotificationCount();\n                }\n            }\n        }\n\n        // Notify globally registered observers\n        if (isset($this->_ro[EVENT_DISPATCHER_GLOBAL])) {\n            foreach (array_keys($this->_ro[EVENT_DISPATCHER_GLOBAL]) as $k) {\n                $rObserver =& $this->_ro[EVENT_DISPATCHER_GLOBAL][$k];\n                if ($notification->isNotificationCancelled()) {\n                    return $notification;\n                }\n                if (empty($rObserver['class']) ||\n                    strcasecmp($rObserver['class'], $objClass) == 0) {\n                    call_user_func_array($rObserver['callback'], array(&$notification));\n                    $notification->increaseNotificationCount();\n                }\n            }\n        }\n\n        if ($bubble === false) {\n            return $notification;\n        }\n\n        // Notify in nested dispatchers\n        foreach (array_keys($this->_nestedDispatchers) as $nested) {\n            $notification =& $this->_nestedDispatchers[$nested]->postNotification($notification, $pending);\n        }\n\n        return $notification;\n    }\n\n    /**\n     * Removes a registered observer that correspond to the given criteria\n     *\n     * @access  public\n     * @param   mixed       A PHP callback\n     * @param   string      Notification name\n     * @param   string      Contained object class\n     * @return bool True if an observer was removed, false otherwise\n     */\n    public function removeObserver($callback, $nName = EVENT_DISPATCHER_GLOBAL, $class = null)\n    {\n        if (is_array($callback)) {\n            if (is_object($callback[0])) {\n                $reg = get_class($callback[0]).'::'.$callback[1];\n            } else {\n                $reg = $callback[0].'::'.$callback[1];\n            }\n        } else {\n            $reg = $callback;\n        }\n\n        $removed = false;\n        if (isset($this->_ro[$nName][$reg])) {\n            if (!empty($class)) {\n                if (strcasecmp($this->_ro[$nName][$reg]['class'], $class) == 0) {\n                    unset($this->_ro[$nName][$reg]);\n                    $removed = true;\n                }\n            } else {\n                unset($this->_ro[$nName][$reg]);\n                $removed = true;\n            }\n        }\n\n        if (isset($this->_ro[$nName]) && count($this->_ro[$nName]) == 0) {\n            unset($this->_ro[$nName]);\n        }\n\n        return $removed;\n    }\n\n   /**\n    * Check, whether the specified observer has been registered with the\n    * dispatcher\n    *\n     * @access  public\n     * @param   mixed       A PHP callback\n     * @param   string      Notification name\n     * @param   string      Contained object class\n     * @return bool True if the observer has been registered, false otherwise\n    */\n    public function observerRegistered($callback, $nName = EVENT_DISPATCHER_GLOBAL, $class = null)\n    {\n        if (is_array($callback)) {\n            if (is_object($callback[0])) {\n                $reg = get_class($callback[0]).'::'.$callback[1];\n            } else {\n                $reg = $callback[0].'::'.$callback[1];\n            }\n        } else {\n            $reg = $callback;\n        }\n\n        if (!isset($this->_ro[$nName][$reg])) {\n            return false;\n        }\n        if (empty($class)) {\n            return true;\n        }\n        if (strcasecmp($this->_ro[$nName][$reg]['class'], $class) == 0) {\n            return true;\n        }\n\n        return false;\n    }\n\n   /**\n    * Get all observers, that have been registered for a notification\n    *\n     * @access  public\n     * @param   string      Notification name\n     * @param   string      Contained object class\n     * @return array List of all observers\n    */\n    public function getObservers($nName = EVENT_DISPATCHER_GLOBAL, $class = null)\n    {\n        $observers = array();\n        if (!isset($this->_ro[$nName])) {\n            return $observers;\n        }\n        foreach ($this->_ro[$nName] as $reg => $observer) {\n            if ($class == null || $observer['class'] == null ||  strcasecmp($observer['class'], $class) == 0) {\n                $observers[] = $reg;\n            }\n        }\n\n        return $observers;\n    }\n\n    /**\n     * Get the name of the dispatcher.\n     *\n     * The name is the unique identifier of a dispatcher.\n     *\n     * @access   public\n     * @return string name of the dispatcher\n     */\n    public function getName()\n    {\n        return $this->_name;\n    }\n\n    /**\n     * add a new nested dispatcher\n     *\n     * Notifications will be broadcasted to this dispatcher as well, which\n     * allows you to create event bubbling.\n     *\n     * @access   public\n     * @param    Event_Dispatcher    The nested dispatcher\n     */\n    public function addNestedDispatcher(&$dispatcher)\n    {\n        $name = $dispatcher->getName();\n        $this->_nestedDispatchers[$name] =& $dispatcher;\n    }\n\n   /**\n    * remove a nested dispatcher\n    *\n    * @access   public\n    * @param    Event_Dispatcher    Dispatcher to remove\n    * @return   boolean\n    */\n    public function removeNestedDispatcher($dispatcher)\n    {\n        if (is_object($dispatcher)) {\n            $dispatcher = $dispatcher->getName();\n        }\n        if (!isset($this->_nestedDispatchers[$dispatcher])) {\n            return false;\n        }\n        unset($this->_nestedDispatchers[$dispatcher]);\n\n        return true;\n    }\n\n    /**\n     * Changes the class used for notifications\n     *\n     * You may call this method on an object to change it for a single\n     * dispatcher or statically, to set the default for all dispatchers\n     * that will be created.\n     *\n     * @access   public\n     * @param    string     name of the notification class\n     * @return boolean\n     */\n    public function setNotificationClass($class)\n    {\n        if (isset($this) && is_a($this, 'Event_Dispatcher')) {\n            $this->_notificationClass = $class;\n\n            return true;\n        }\n        $GLOBALS['_Event_Dispatcher']['NotificationClass'] = $class;\n\n        return true;\n    }\n\n}\n"
  },
  {
    "path": "newscoop/include/Event/Notification.php",
    "content": "<?php\n// +-----------------------------------------------------------------------+\n// | Copyright (c) 2005, Bertrand Mansion                                  |\n// | All rights reserved.                                                  |\n// |                                                                       |\n// | Redistribution and use in source and binary forms, with or without    |\n// | modification, are permitted provided that the following conditions    |\n// | are met:                                                              |\n// |                                                                       |\n// | o Redistributions of source code must retain the above copyright      |\n// |   notice, this list of conditions and the following disclaimer.       |\n// | o Redistributions in binary form must reproduce the above copyright   |\n// |   notice, this list of conditions and the following disclaimer in the |\n// |   documentation and/or other materials provided with the distribution.|\n// | o The names of the authors may not be used to endorse or promote      |\n// |   products derived from this software without specific prior written  |\n// |   permission.                                                         |\n// |                                                                       |\n// | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS   |\n// | \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT     |\n// | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |\n// | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT  |\n// | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |\n// | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT      |\n// | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |\n// | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |\n// | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT   |\n// | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |\n// | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.  |\n// |                                                                       |\n// +-----------------------------------------------------------------------+\n// | Author: Bertrand Mansion <bmansion@mamasam.com>                       |\n// |         Stephan Schmidt <schst@php.net>                               |\n// +-----------------------------------------------------------------------+\n//\n// $Id: Notification.php 284686 2009-07-24 05:22:17Z clockwerx $\n\n/**\n * Default state of the notification\n */\ndefine('EVENT_NOTIFICATION_STATE_DEFAULT', 0);\n\n/**\n * Notification has been cancelled\n */\ndefine('EVENT_NOTIFICATION_STATE_CANCELLED', 1);\n\n/**\n * A Notification object\n *\n * The Notification object can be easily subclassed and serves as a container\n * for the information about the notification. It holds an object which is \n * usually a reference to the object that posted the notification,\n * a notification name used to identify the notification and some user\n * information which can be anything you need.\n * \n * @category   Event\n * @package    Event_Dispatcher\n * @author     Bertrand Mansion <bmansion@mamasam.com>\n * @author     Stephan Schmidt <schst@php.net>\n * @copyright  1997-2005 The PHP Group\n * @license    http://www.opensource.org/licenses/bsd-license.php BSD License\n * @version    Release: @package_version@\n * @link       http://pear.php.net/package/Event_Dispatcher\n */\nclass Event_Notification\n{\n    /**\n     * name of the notofication\n     * @var string\n     * @access private\n     */\n    var $_notificationName;\n    \n    /**\n     * object of interesed (the sender of the notification, in most cases)\n     * @var object\n     * @access private\n     */\n    var $_notificationObject;\n    \n    /**\n     * additional information about the notification\n     * @var mixed\n     * @access private\n     */\n    var $_notificationInfo = array();\n\n    /**\n     * state of the notification\n     *\n     * This may be:\n     * - EVENT_NOTIFICATION_STATE_DEFAULT\n     * - EVENT_NOTIFICATION_STATE_CANCELLED\n     *\n     * @var integer\n     * @access private\n     */\n    var $_notificationState = EVENT_NOTIFICATION_STATE_DEFAULT;\n    \n    /**\n     * amount of observers that received this notification\n     * @var mixed\n     * @access private\n     */\n    var $_notificationCount = 0;\n\n    /**\n     * Constructor\n     *\n     * @access  public\n     * @param   object      The object of interest for the notification,\n     *                      usually is the posting object\n     * @param   string      Notification name\n     * @param   array       Free information array\n     */\n    function Event_Notification(&$object, $name, $info = array())\n    {\n        $this->_notificationObject =& $object;\n        $this->_notificationName   = $name;\n        $this->_notificationInfo   = $info;\n    }\n\n    /**\n     * Returns the notification name\n     * @return  string Notification name\n     */\n    function getNotificationName()\n    {\n        return $this->_notificationName;\n    }\n\n    /**\n     * Returns the contained object\n     * @return  object Contained object\n     */\n    function &getNotificationObject()\n    {\n        return $this->_notificationObject;\n    }\n\n    /**\n     * Returns the user info array\n     * @return  array user info\n     */\n    function getNotificationInfo()\n    {\n        return $this->_notificationInfo;    \n    }\n\n   /**\n    * Increase the internal count\n    *\n    * @access   public\n    */\n    function increaseNotificationCount()\n    {\n        ++$this->_notificationCount;\n    }\n    \n   /**\n    * Get the number of posted notifications\n    *\n    * @access   public\n    * @return   int\n    */\n    function getNotificationCount()\n    {\n        return $this->_notificationCount;\n    }\n    \n   /**\n    * Cancel the notification\n    *\n    * @access   public\n    * @return   void\n    */\n    function cancelNotification()\n    {\n        $this->_notificationState = EVENT_NOTIFICATION_STATE_CANCELLED;\n    }\n\n   /**\n    * Checks whether the notification has been cancelled\n    *\n    * @access   public\n    * @return   boolean\n    */\n    function isNotificationCancelled()\n    {\n        return ($this->_notificationState === EVENT_NOTIFICATION_STATE_CANCELLED);\n    }\n}\n?>"
  },
  {
    "path": "newscoop/include/File/CSV.php",
    "content": "<?php\r\n/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */\r\n\r\n/**\r\n * File::CSV\r\n *\r\n * PHP versions 4 and 5\r\n *\r\n * LICENSE: This source file is subject to version 3.0 of the PHP license\r\n * that is available through the world-wide-web at the following URI:\r\n * http://www.php.net/license/3_0.txt.  If you did not receive a copy of\r\n * the PHP License and are unable to obtain it through the web, please\r\n * send a note to license@php.net so we can mail you a copy immediately.\r\n *\r\n * @category    File\r\n * @package     File\r\n * @author      Tomas V.V.Cox <cox@idecnet.com>\r\n * @author      Helgi ormar <dufuz@php.net>\r\n * @copyright   2004-2005 The Authors\r\n * @license     http://www.php.net/license/3_0.txt  PHP License 3.0\r\n * @version     CVS: $Id: CSV.php,v 1.41 2007/05/20 12:25:14 dufuz Exp $\r\n * @link        http://pear.php.net/package/File\r\n */\r\n\r\nrequire_once 'PEAR.php';\r\nrequire_once 'File.php';\r\n\r\n/**\r\n* File class for handling CSV files (Comma Separated Values), a common format\r\n* for exchanging data.\r\n*\r\n* TODO:\r\n*  - Usage example and Doc\r\n*  - Use getPointer() in discoverFormat\r\n*  - Add a line counter for being able to output better error reports\r\n*  - Store the last error in GLOBALS and add File_CSV::getLastError()\r\n*\r\n* Wish:\r\n*  - Other methods like readAll(), writeAll(), numFields(), numRows()\r\n*  - Try to detect if a CSV has header or not in discoverFormat() (not possible with CSV)\r\n*\r\n* Known Bugs:\r\n* (they has been analyzed but for the moment the impact in the speed for\r\n*  properly handle this uncommon cases is too high and won't be supported)\r\n*  - A field which is composed only by a single quoted separator (ie -> ;\";\";)\r\n*    is not handled properly\r\n*  - When there is exactly one field minus than the expected number and there\r\n*    is a field with a separator inside, the parser will throw the \"wrong count\" error\r\n*\r\n* Info about CSV and links to other sources\r\n* http://www.shaftek.org/publications/drafts/mime-csv/draft-shafranovich-mime-csv-00.html#appendix\r\n*\r\n* @author Tomas V.V.Cox <cox@idecnet.com>\r\n* @author Helgi ormar <dufuz@php.net>\r\n* @package File\r\n*/\r\nclass File_CSV\r\n{\r\n    /**\r\n    * This raiseError method works in a different way. It will always return\r\n    * false (an error occurred) but it will call PEAR::raiseError() before\r\n    * it. If no default PEAR global handler is set, will trigger an error.\r\n    *\r\n    * @param string $error The error message\r\n    * @return bool always false\r\n    */\r\n    function raiseError($error)\r\n    {\r\n        // If a default PEAR Error handler is not set trigger the error\r\n        // XXX Add a PEAR::isSetHandler() method?\r\n        if ($GLOBALS['_PEAR_default_error_mode'] == PEAR_ERROR_RETURN) {\r\n            PEAR::raiseError($error, null, PEAR_ERROR_TRIGGER, E_USER_WARNING);\r\n        } else {\r\n            PEAR::raiseError($error);\r\n        }\r\n        return false;\r\n    }\r\n\r\n    /**\r\n    * Checks the configuration given by the user\r\n    *\r\n    * @access private\r\n    * @param string &$error The error will be written here if any\r\n    * @param array  &$conf  The configuration assoc array\r\n    * @return string error    Returns a error message\r\n    */\r\n    function _conf(&$error, &$conf)\r\n    {\r\n        // check conf\r\n        if (!is_array($conf)) {\r\n            return $error = 'Invalid configuration';\r\n        }\r\n\r\n        if (!isset($conf['fields']) || !(int)$conf['fields']) {\r\n            return $error = 'The number of fields must be numeric (the \"fields\" key)';\r\n        }\r\n\r\n        if (isset($conf['sep'])) {\r\n            if (strlen($conf['sep']) != 1) {\r\n                return $error = 'Separator can only be one char';\r\n            }\r\n        } elseif ($conf['fields'] > 1) {\r\n            return $error = 'Missing separator (the \"sep\" key)';\r\n        }\r\n\r\n        if (isset($conf['quote'])) {\r\n            if (strlen($conf['quote']) != 1) {\r\n                return $error = 'The quote char must be one char (the \"quote\" key)';\r\n            }\r\n        } else {\r\n            $conf['quote'] = null;\r\n        }\r\n\r\n        if (!isset($conf['crlf'])) {\r\n            $conf['crlf'] = \"\\n\";\r\n        }\r\n\r\n        if (!isset($conf['eol2unix'])) {\r\n            $conf['eol2unix'] = true;\r\n        }\r\n    }\r\n\r\n    /**\r\n    * Return or create the file descriptor associated with a file\r\n    *\r\n    * @param string $file The name of the file\r\n    * @param array  &$conf The configuration\r\n    * @param string $mode The open node (ex: FILE_MODE_READ or FILE_MODE_WRITE)\r\n    * @param boolean $reset if passed as true and resource for the file exists\r\n    *                       than the file pointer will be moved to the beginning\r\n    *\r\n    * @return mixed A file resource or false\r\n    */\r\n    function getPointer($file, &$conf, $mode = FILE_MODE_READ, $reset = false)\r\n    {\r\n        static $resources = array();\r\n        static $config;\r\n        if (isset($resources[$file][$mode])) {\r\n            $conf = $config;\r\n            if ($reset) {\r\n                fseek($resources[$file][$mode], 0);\r\n            }\r\n            return $resources[$file][$mode];\r\n        }\r\n        File_CSV::_conf($error, $conf);\r\n        if ($error) {\r\n            return File_CSV::raiseError($error);\r\n        }\r\n        $config = $conf;\r\n        PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\r\n        $fp = File::_getFilePointer($file, $mode);\r\n        PEAR::popErrorHandling();\r\n        if (PEAR::isError($fp)) {\r\n            return File_CSV::raiseError($fp);\r\n        }\r\n        $resources[$file][$mode] = $fp;\r\n        return $fp;\r\n    }\r\n\r\n    /**\r\n    * Unquote data\r\n    *\r\n    * @param string $field The data to unquote\r\n    * @param string $quote The quote char\r\n    * @return string the unquoted data\r\n    */\r\n    function unquote($field, $quote)\r\n    {\r\n        // Trim first the string.\r\n        $field = trim($field);\r\n        $quote = trim($quote);\r\n\r\n        // Incase null fields (form: ;;)\r\n        if (!strlen($field)) {\r\n            return $field;\r\n        }\r\n\r\n        // excel compat\r\n        if ($field[0] == '=' && $field[1] == '\"') {\r\n            $field = str_replace('=\"', '\"', $field);\r\n        }\r\n\r\n        $field_len = strlen($field);\r\n        if ($quote && $field[0] == $quote && $field[$field_len - 1] == $quote) {\r\n            // Get rid of escaping quotes\r\n            $new = $prev = $c = '';\r\n            for ($i = 0; $i < $field_len; ++$i) {\r\n                $prev = $c;\r\n                $c = $field[$i];\r\n                // Deal with escaping quotes\r\n                if ($c == $quote && $prev == $quote) {\r\n                    $c = '';\r\n                }\r\n\r\n                $new .= $c;\r\n            }\r\n            $field = substr($new, 1, -1);\r\n        }\r\n\r\n        return $field;\r\n    }\r\n\r\n    /**\r\n    * Reads a row of data as an array from a CSV file. It's able to\r\n    * read memo fields with multiline data.\r\n    *\r\n    * @param string $file   The filename where to write the data\r\n    * @param array  &$conf   The configuration of the dest CSV\r\n    *\r\n    * @return mixed Array with the data read or false on error/no more data\r\n    */\r\n    function readQuoted($file, &$conf)\r\n    {\r\n        if (!$fp = File_CSV::getPointer($file, $conf, FILE_MODE_READ)) {\r\n            return false;\r\n        }\r\n\r\n        $buff = $old = $prev = $c = '';\r\n        $ret  = array();\r\n        $i = 1;\r\n        $in_quote = false;\r\n        $quote = $conf['quote'];\r\n        $f     = $conf['fields'];\r\n        $sep   = $conf['sep'];\r\n        while (false !== $ch = fgetc($fp)) {\r\n            $old  = $prev;\r\n            $prev = $c;\r\n            $c    = $ch;\r\n\r\n            // Common case\r\n            if ($c != $quote && $c != $sep && $c != \"\\n\" && $c != \"\\r\") {\r\n                $buff .= $c;\r\n                continue;\r\n            }\r\n\r\n            // Start quote.\r\n            if (\r\n                $in_quote === false &&\r\n                $quote && $c == $quote &&\r\n                (\r\n                 $prev == $sep || $prev == \"\\n\" || $prev === null ||\r\n                 $prev == \"\\r\" || $prev == '' || $prev == ' '\r\n                 || $prev == '=' //excel compat\r\n                )\r\n            ) {\r\n                $in_quote = true;\r\n                // excel compat, removing the = part but only if we are in a quote\r\n                if ($prev == '=') {\r\n                    $buff{strlen($buff) - 1} = '';\r\n                }\r\n            }\r\n\r\n            if ($in_quote) {\r\n\r\n                // When does the quote end, make sure it's not double quoted\r\n                if ($c == $sep && $prev == $quote && $old != $quote) {\r\n                    $in_quote = false;\r\n                } elseif ($c == $sep && $buff == $quote.$quote) {\r\n                    // In case we are dealing with double quote but empty value\r\n                    $in_quote = false;\r\n                } elseif ($c == \"\\n\" || $c == \"\\r\") {\r\n                    $sub = ($prev == \"\\r\") ? 2 : 1;\r\n                    $buff_len = strlen($buff);\r\n                    if (\r\n                        $buff_len >= $sub &&\r\n                        $buff[$buff_len - $sub] == $quote\r\n                    ) {\r\n                        $in_quote = false;\r\n                    }\r\n                }\r\n            }\r\n\r\n            if (!$in_quote && ($c == $sep || $c == \"\\n\" || $c == \"\\r\") && $prev != '') {\r\n                // More fields than expected\r\n                if ($c == $sep && (count($ret) + 1) == $f) {\r\n                    // Seek the pointer into linebreak character.\r\n                    while (true) {\r\n                        $c = fgetc($fp);\r\n                        if  ($c == \"\\n\" || $c == \"\\r\" || $c == '') {\r\n                            break;\r\n                        }\r\n                    }\r\n\r\n                    // Insert last field value.\r\n                    $ret[] = File_CSV::unquote($buff, $quote);\r\n                    return $ret;\r\n                }\r\n\r\n                // Less fields than expected\r\n                if (($c == \"\\n\" || $c == \"\\r\") && $i != $f) {\r\n                    // Insert last field value.\r\n                    $ret[] = File_CSV::unquote($buff, $quote);\r\n                    if (count($ret) == 1 && empty($ret[0])) {\r\n                        return array();\r\n                    }\r\n\r\n                    // Pair the array elements to fields count. - inserting empty values\r\n                    $ret_count = count($ret);\r\n                    $sum = ($f - 1) - ($ret_count - 1);\r\n                    $data = array_merge($ret, array_fill($ret_count, $sum, ''));\r\n                    return $data;\r\n                }\r\n\r\n                if ($prev == \"\\r\") {\r\n                    $buff = substr($buff, 0, -1);\r\n                }\r\n\r\n                // Convert EOL character to Unix EOL (LF).\r\n                if ($conf['eol2unix']) {\r\n                    $buff = preg_replace('/(\\r\\n|\\r)$/', \"\\n\", $buff);\r\n                }\r\n\r\n                $ret[] = File_CSV::unquote($buff, $quote);\r\n                if (count($ret) == $f) {\r\n                    return $ret;\r\n                }\r\n                $buff = '';\r\n                ++$i;\r\n                continue;\r\n            }\r\n            $buff .= $c;\r\n        }\r\n\r\n        /* If it's the end of the file and we still have something in buffer\r\n         * then we process it since files can have no CL/FR at the end\r\n         */\r\n        $feof = feof($fp);\r\n        if ($feof && !in_array($buff, array(\"\\r\", \"\\n\", \"\\r\\n\")) && strlen($buff) > 0) {\r\n            $ret[] = File_CSV::unquote($buff, $quote);\r\n            if (count($ret) == $f) {\r\n                return $ret;\r\n            }\r\n        }\r\n\r\n        return !$feof ? $ret : false;\r\n    }\r\n\r\n    /**\r\n    * Reads a \"row\" from a CSV file and return it as an array\r\n    *\r\n    * @param string $file The CSV file\r\n    * @param array  &$conf The configuration of the dest CSV\r\n    *\r\n    * @return mixed Array or false\r\n    */\r\n    function read($file, &$conf)\r\n    {\r\n        static $headers = array();\r\n        if (!$fp = File_CSV::getPointer($file, $conf, FILE_MODE_READ)) {\r\n            return false;\r\n        }\r\n\r\n        // The size is limited to 4K\r\n        if (!$line = fgets($fp, 4096)) {\r\n            return false;\r\n        }\r\n\r\n        $fields = $conf['fields'] == 1 ? array($line) : explode($conf['sep'], $line);\r\n\r\n        $nl = array(\"\\n\", \"\\r\", \"\\r\\n\");\r\n        if (in_array($fields[count($fields) - 1], $nl)) {\r\n            array_pop($fields);\r\n        }\r\n\r\n        $field_count = count($fields);\r\n        $last =& $fields[$field_count - 1];\r\n        $len = strlen($last);\r\n        if (\r\n            $field_count != $conf['fields'] ||\r\n            $conf['quote'] &&\r\n            (\r\n             $len !== 0 && $last[$len - 1] == \"\\n\"\r\n             &&\r\n                (\r\n                    ($last[0] == $conf['quote']\r\n                    && $last[strlen(rtrim($last)) - 1] != $conf['quote'])\r\n                    ||\r\n                    // excel support\r\n                    ($last[0] == '=' && $last[1] == $conf['quote'])\r\n                    ||\r\n                    // if the row has spaces before the quote\r\n                    preg_match('|^\\s+'.preg_quote($conf['quote']) .'|Ums', $last, $match)\r\n                )\r\n            )\r\n            // XXX perhaps there is a separator inside a quoted field\r\n            //preg_match(\"|{$conf['quote']}.*{$conf['sep']}.*{$conf['quote']}|U\", $line)\r\n        ) {\r\n            fseek($fp, -1 * strlen($line), SEEK_CUR);\r\n            return File_CSV::readQuoted($file, $conf);\r\n        } else {\r\n            foreach ($fields as $k => $v) {\r\n                $fields[$k] = File_CSV::unquote($v, $conf['quote']);\r\n            }\r\n        }\r\n\r\n        if (isset($conf['header']) && empty($headers)) {\r\n            // read the first row and assign to $headers\r\n            $headers = $fields;\r\n            return $headers;\r\n        }\r\n\r\n        if ($field_count != $conf['fields']) {\r\n            File_CSV::raiseError(\"Read wrong fields number count: '\". $field_count .\r\n                                  \"' expected \".$conf['fields']);\r\n            return true;\r\n        }\r\n\r\n        if (!empty($headers)) {\r\n            $tmp = array();\r\n            foreach ($fields as $k => $v) {\r\n                $tmp[$headers[$k]] = $v;\r\n            }\r\n            $fields = $tmp;\r\n        }\r\n\r\n        return $fields;\r\n    }\r\n\r\n    /**\r\n    * Internal use only, will be removed in the future\r\n    *\r\n    * @param string $str The string to debug\r\n    * @access private\r\n    */\r\n    function _dbgBuff($str)\r\n    {\r\n        if (strpos($str, \"\\r\") !== false) {\r\n            $str = str_replace(\"\\r\", \"_r_\", $str);\r\n        }\r\n        if (strpos($str, \"\\n\") !== false) {\r\n            $str = str_replace(\"\\n\", \"_n_\", $str);\r\n        }\r\n        if (strpos($str, \"\\t\") !== false) {\r\n            $str = str_replace(\"\\t\", \"_t_\", $str);\r\n        }\r\n        if ($str === null) {\r\n            $str = '_NULL_';\r\n        }\r\n        if ($str === '') {\r\n            $str = 'Empty string';\r\n        }\r\n        echo \"buff: ($str)\\n\";\r\n    }\r\n\r\n    /**\r\n    * Writes a struc (array) in a file as CSV\r\n    *\r\n    * @param string $file   The filename where to write the data\r\n    * @param array  $fields Ordered array with the data\r\n    * @param array  &$conf   The configuration of the dest CSV\r\n    *\r\n    * @return bool True on success false otherwise\r\n    */\r\n    function write($file, $fields, &$conf)\r\n    {\r\n        if (!$fp = File_CSV::getPointer($file, $conf, FILE_MODE_WRITE)) {\r\n            return false;\r\n        }\r\n\r\n        $field_count = count($fields);\r\n        if ($field_count != $conf['fields']) {\r\n            File_CSV::raiseError(\"Wrong fields number count: '\". $field_count .\r\n                                  \"' expected \".$conf['fields']);\r\n            return true;\r\n        }\r\n\r\n        $write = '';\r\n        for ($i = 0; $i < $field_count; ++$i) {\r\n            // only quote if the field contains a sep\r\n            if (!is_numeric($fields[$i]) && $conf['quote']\r\n                && isset($conf['sep']) && strpos($fields[$i], $conf['sep'])\r\n            ) {\r\n                $write .= $conf['quote'] . $fields[$i] . $conf['quote'];\r\n            } else {\r\n                $write .= $fields[$i];\r\n            }\r\n\r\n            $write .= ($i < ($field_count - 1)) ? $conf['sep']: $conf['crlf'];\r\n        }\r\n\r\n        if (!fwrite($fp, $write, strlen($write))) {\r\n            return File_CSV::raiseError('Can not write to file');\r\n        }\r\n\r\n        return true;\r\n    }\r\n\r\n    /**\r\n    * Discover the format of a CSV file (the number of fields, the separator\r\n    * and if it quote string fields)\r\n    *\r\n    * @param string the CSV file name\r\n    * @param array extra separators that should be checked for.\r\n    * @return mixed Assoc array or false\r\n    */\r\n    function discoverFormat($file, $extraSeps = array())\r\n    {\r\n        if (!$fp = @fopen($file, 'rb')) {\r\n            return File_CSV::raiseError(\"Could not open file: $file\");\r\n        }\r\n\r\n        // Set auto detect line ending for Mac EOL support\r\n        $oldini = ini_get('auto_detect_line_endings');\r\n        if ($oldini != '1') {\r\n            ini_set('auto_detect_line_endings', '1');\r\n        }\r\n\r\n        // Take the first 30 lines and store the number of ocurrences\r\n        // for each separator in each line\r\n        $lines = '';\r\n        for ($i = 0; $i < 30 && $line = fgets($fp, 4096); $i++) {\r\n            $lines .= $line;\r\n        }\r\n        fclose($fp);\r\n\r\n        if ($oldini != '1') {\r\n            ini_set('auto_detect_line_endings', $oldini);\r\n        }\r\n\r\n        $seps = array(\"\\t\", ';', ':', ',');\r\n        $seps = array_merge($seps, $extraSeps);\r\n        $matches = array();\r\n        $quotes = '\"\\'';\r\n        \r\n\t    $lines = str_replace('\"\"', '', $lines);\r\n        while ($lines != ($newLines = preg_replace('|(([\"\\'])[^\"]*(\\2))|', '\\2_\\2', $lines))){\r\n            $lines = $newLines;\r\n        }\r\n\r\n        $eol   = strpos($lines, \"\\r\") ? \"\\r\" : \"\\n\";\r\n        $lines = explode($eol, $lines);\r\n        foreach ($lines as $line) {\r\n            $orgLine = $line;\r\n            foreach ($seps as $sep) {\r\n                $line = preg_replace(\"|^[^$quotes$sep]*$sep*([$quotes][^$quotes]*[$quotes])|sm\", '_', $orgLine);\r\n                // Find all seps that are within qoutes\r\n                ///FIXME ... counts legitimit lines as bad ones\r\n\r\n                 // In case there's a whitespace infront the field\r\n                $regex = '|\\s*?';\r\n                 // Match the first quote (optional), also optionally match = since it's excel stuff\r\n                $regex.= \"(?:\\=?[$quotes])\";\r\n                $regex.= '(.*';\r\n                // Don't match a sep if we are inside a quote\r\n                // also don't accept the sep if it has a quote on the either side\r\n                ///FIXME has to be possible if we are inside a quote! (tests fail because of this)\r\n                $regex.= \"(?:[^$quotes])$sep(?:[^$quotes])\";\r\n                $regex.= '.*)';\r\n                // Close quote (if it's present) and the sep (optional, could be end of line)\r\n                $regex.= \"(?:[$quotes](?:$sep?))|Ums\";\r\n                preg_match_all($regex, $line, $match);\r\n                // Finding all seps, within quotes or not\r\n                $sep_count = substr_count($line, $sep);\r\n                // Real count\r\n                $matches[$sep][] = $sep_count - count($match[0]);\r\n            }\r\n        }\r\n\r\n        $final = array();\r\n        // Group the results by amount of equal ocurrences\r\n        foreach ($matches as $sep => $res) {\r\n            $times = array();\r\n            $times[0] = 0;\r\n            foreach ($res as $k => $num) {\r\n                if ($num > 0) {\r\n                    $times[$num] = (isset($times[$num])) ? $times[$num] + 1 : 1;\r\n                }\r\n            }\r\n            arsort($times);\r\n\r\n            // Use max fields count.\r\n            $fields[$sep] = max(array_flip($times));\r\n            $amount[$sep] = $times[key($times)];\r\n        }\r\n\r\n        arsort($amount);\r\n        $sep = key($amount);\r\n\r\n        $conf['fields'] = $fields[$sep] + 1;\r\n        $conf['sep']    = $sep;\r\n\r\n        // Test if there are fields with quotes around in the first 30 lines\r\n        $quote  = null;\r\n\r\n        $string = implode('', $lines);\r\n        foreach (array('\"', '\\'') as $q) {\r\n            if (preg_match_all(\"|$sep(?:\\s*?)(\\=?[$q]).*([$q])$sep|Us\", $string, $match)) {\r\n                if ($match[1][0] == $match[2][0]) {\r\n                    $quote = $match[1][0];\r\n                    break;\r\n                }\r\n            }\r\n\r\n            if (\r\n                preg_match_all(\"|^(\\=?[$q]).*([$q])$sep{0,1}|Ums\", $string, $match)\r\n                || preg_match_all(\"|(\\=?[$q]).*([$q])$sep\\s$|Ums\", $string, $match)\r\n            ) {\r\n                if ($match[1][0] == $match[2][0]) {\r\n                    $quote = $match[1][0];\r\n                    break;\r\n                }\r\n            }\r\n        }\r\n\r\n        $conf['quote'] = $quote;\r\n        return $conf;\r\n    }\r\n\r\n    /**\r\n     * Front to call getPointer and moving the resource to the\r\n     * beginning of the file\r\n     * Reset it if you like.\r\n     *\r\n     * @param string $file The name of the file\r\n     * @param array  &$conf The configuration\r\n     * @param string $mode The open node (ex: FILE_MODE_READ or FILE_MODE_WRITE)\r\n     *\r\n     * @return boolean true on success false on failure\r\n     */\r\n    function resetPointer($file, &$conf, $mode)\r\n    {\r\n        if (!File_CSV::getPointer($file, $conf, $mode, true)) {\r\n            return false;\r\n        }\r\n\r\n        return true;\r\n    }\r\n}"
  },
  {
    "path": "newscoop/include/File/Find.php",
    "content": "<?php\n//\n// +----------------------------------------------------------------------+\n// | PHP Version 4                                                        |\n// +----------------------------------------------------------------------+\n// | Copyright (c) 1997-2005 The PHP Group                                |\n// +----------------------------------------------------------------------+\n// | This source file is subject to version 2.02 of the PHP license,      |\n// | that is bundled with this package in the file LICENSE, and is        |\n// | available at through the world-wide-web at                           |\n// | http://www.php.net/license/2_02.txt.                                 |\n// | If you did not receive a copy of the PHP license and are unable to   |\n// | obtain it through the world-wide-web, please send a note to          |\n// | license@php.net so we can mail you a copy immediately.               |\n// +----------------------------------------------------------------------+\n// | Author: Sterling Hughes <sterling@php.net>                           |\n// +----------------------------------------------------------------------+\n//\n// $Id: Find.php 304090 2010-10-05 14:07:34Z clockwerx $\n//\n\nrequire_once 'PEAR.php';\n\ndefine('FILE_FIND_VERSION', '@package_version@');\n\n// to debug uncomment this string\n// define('FILE_FIND_DEBUG', '');\n\n/**\n*  Commonly needed functions searching directory trees\n*\n* @access public\n* @version $Id: Find.php 304090 2010-10-05 14:07:34Z clockwerx $\n* @package File\n* @author Sterling Hughes <sterling@php.net>\n*/\nclass File_Find\n{\n    /**\n     * internal dir-list\n     * @var array\n     */\n    var $_dirs = array();\n\n    /**\n     * directory separator\n     * @var string\n     */\n    var $dirsep = \"/\";\n\n    /**\n     * found files\n     * @var array\n     */\n    var $files = array();\n\n    /**\n     * found dirs\n     * @var array\n     */\n    var $directories = array();\n\n    /**\n     * Search specified directory to find matches for specified pattern\n     *\n     * @param string $pattern a string containing the pattern to search\n     * the directory for.\n     *\n     * @param string $dirpath a string containing the directory path\n     * to search.\n     *\n     * @param string $pattern_type a string containing the type of\n     * pattern matching functions to use (can either be 'php',\n     * 'perl' or 'shell').\n     *\n     * @return array containing all of the files and directories\n     * matching the pattern or null if no matches\n     *\n     * @author Sterling Hughes <sterling@php.net>\n     * @access public\n     * @static\n     */\n    function &glob($pattern, $dirpath, $pattern_type = 'php')\n    {\n        $dh = @opendir($dirpath);\n\n        if (!$dh) {\n            $pe = PEAR::raiseError(\"Cannot open directory $dirpath\");\n            return $pe;\n        }\n\n        $match_function = File_Find::_determineRegex($pattern, $pattern_type);\n        $matches = array();\n\n        // empty string cannot be specified for 'php' and 'perl' pattern\n        if ($pattern || ($pattern_type != 'php' && $pattern_type != 'perl')) {\n            while (false !== ($entry = @readdir($dh))) {\n                if ($match_function($pattern, $entry) &&\n                    $entry != '.' && $entry != '..') {\n                    $matches[] = $entry;\n                }\n            }\n        }\n\n        @closedir($dh);\n\n        if (0 == count($matches)) {\n            $matches = null;\n        }\n\n        sort($matches);\n\n        return $matches ;\n    }\n\n    /**\n     * Map the directory tree given by the directory_path parameter.\n     *\n     * @param string $directory contains the directory path that you\n     * want to map.\n     *\n     * @return array a two element array, the first element containing a list\n     * of all the directories, the second element containing a list of all the\n     * files.\n     *\n     * @author Sterling Hughes <sterling@php.net>\n     * @access public\n     */\n    function &maptree($directory)\n    {\n\n        /* if called statically */\n        if (!isset($this)  || !is_a($this, \"File_Find\")) {\n            $obj = &new File_Find();\n            return $obj->maptree($directory);\n        }\n      \n        /* clear the results just in case */\n        $this->files       = array();\n        $this->directories = array();\n\n        /* strip out trailing slashes */\n        $directory = preg_replace('![\\\\\\\\/]+$!', '', $directory);\n\n        $this->_dirs = array($directory);\n\n        while (count($this->_dirs)) {\n            $dir = array_pop($this->_dirs);\n            File_Find::_build($dir, $this->dirsep);\n            array_push($this->directories, $dir);\n        }\n\n        sort($this->directories);\n        sort($this->files);\n\n        $retval = array($this->directories, $this->files);\n        return $retval;\n\n    }\n\n    /**\n     * Map the directory tree given by the directory parameter.\n     *\n     * @param string $directory contains the directory path that you\n     * want to map.\n     * @param integer $maxrecursion maximun number of folders to recursive \n     * map\n     *\n     * @return array a multidimensional array containing all subdirectories\n     * and their files. For example:\n     *\n     * Array\n     * (\n     *    [0] => file_1.php\n     *    [1] => file_2.php\n     *    [subdirname] => Array\n     *       (\n     *          [0] => file_1.php\n     *       )\n     * )\n     *\n     * @author Mika Tuupola <tuupola@appelsiini.net>\n     * @access public\n     * @static\n     */\n    function &mapTreeMultiple($directory, $maxrecursion = 0, $count = 0)\n    {   \n        $retval = array();\n\n        $count++;\n\n        /* strip trailing slashes */\n        $directory = preg_replace('![\\\\\\\\/]+$!', '', $directory);\n        \n        if (is_readable($directory)) {\n            $dh = opendir($directory);\n            while (false !== ($entry = @readdir($dh))) {\n                if ($entry != '.' && $entry != '..') {\n                     array_push($retval, $entry);\n                }\n            }\n            closedir($dh);\n        }\n\n        sort($retval);\n\n        while (list($key, $val) = each($retval)) {\n            $path = $directory . \"/\" . $val;\n      \n            if (!is_array($val) && is_dir($path)) {\n                unset($retval[$key]);\n                if ($maxrecursion == 0 || $count < $maxrecursion) {\n                    $retval[$val] = &File_Find::mapTreeMultiple($path, \n                                    $maxrecursion, $count);\n                }\n            }\n        }\n\n        return $retval;\n    }\n\n    /**\n     * Search the specified directory tree with the specified pattern.  Return\n     * an array containing all matching files (no directories included).\n     *\n     * @param string $pattern the pattern to match every file with.\n     *\n     * @param string $directory the directory tree to search in.\n     *\n     * @param string $type the type of regular expression support to use, either\n     * 'php', 'perl' or 'shell'.\n     *\n     * @param bool $fullpath whether the regex should be matched against the\n     * full path or only against the filename\n     *\n     * @param string $match can be either 'files', 'dirs' or 'both' to specify\n     * the kind of list to return\n     *\n     * @return array a list of files matching the pattern parameter in the the\n     * directory path specified by the directory parameter\n     *\n     * @author Sterling Hughes <sterling@php.net>\n     * @access public\n     * @static\n     */\n    function &search($pattern, $directory, $type = 'php', $fullpath = true, $match = 'files')\n    {\n\n        $matches = array();\n        list ($directories,$files)  = File_Find::maptree($directory);\n        switch($match) {\n            case 'directories': \n                $data = $directories; \n                break;\n            case 'both': \n                $data = array_merge($directories, $files); \n                break;\n            case 'files':\n            default:\n                $data = $files;\n        }\n        unset($files, $directories);\n\n        $match_function = File_Find::_determineRegex($pattern, $type);\n\n        reset($data);\n        // check if empty string given (ok for 'shell' method, but bad for others)\n        if ($pattern || ($type != 'php' && $type != 'perl')) {\n            while (list(,$entry) = each($data)) {\n                if ($match_function($pattern, \n                                    $fullpath ? $entry : basename($entry))) {\n                    $matches[] = $entry;\n                } \n            }\n        }\n\n        sort($matches);\n\n        return $matches;\n    }\n\n    /**\n     * Determine whether or not a variable is a PEAR error\n     *\n     * @param object PEAR_Error $var the variable to test.\n     *\n     * @return boolean returns true if the variable is a PEAR error, otherwise\n     * it returns false.\n     * @access public\n     */\n    function isError(&$var)\n    {\n        return PEAR::isError($var);\n    }\n\n    /**\n     * internal function to build singular directory trees, used by\n     * File_Find::maptree()\n     *\n     * @param string $directory name of the directory to read\n     * @param string $separator directory separator\n     * @return void\n     */\n    function _build($directory, $separator = \"/\")\n    {\n\n        $dh = @opendir($directory);\n\n        if (!$dh) {\n            $pe = PEAR::raiseError(\"Cannot open directory\");\n            return $pe;\n        }\n\n        while (false !== ($entry = @readdir($dh))) {\n            if ($entry != '.' && $entry != '..') {\n\n                $entry = $directory.$separator.$entry;\n\n                if (is_dir($entry)) {\n                    array_push($this->_dirs, $entry);\n                } else {\n                    array_push($this->files, $entry);\n                }\n            }\n        }\n\n        @closedir($dh);\n    }\n\n    /**\n     * internal function to determine the type of regular expression to\n     * use, implemented by File_Find::glob() and File_Find::search()\n     *\n     * @param string $type given RegExp type\n     * @return string kind of function ( \"eregi\", \"ereg\" or \"preg_match\") ;\n     *\n     */\n    function _determineRegex($pattern, $type)\n    {\n        if (!strcasecmp($type, 'shell')) {\n            $match_function = 'File_Find_match_shell';\n        } else if (!strcasecmp($type, 'perl')) {\n            $match_function = 'preg_match';\n        } else if (!strcasecmp(substr($pattern, -2), '/i')) {\n            $match_function = 'eregi';\n        } else {\n            $match_function = 'ereg';\n        }\n        return $match_function;\n    }\n\n}\n\n/**\n* Package method to match via 'shell' pattern. Provided in global\n* scope, because it should be called like 'preg_match' and 'eregi'\n* and can be easily copied into other packages\n*\n* @author techtonik <techtonik@php.net>\n* @return mixed bool on success and PEAR_Error on failure\n*/ \nfunction File_Find_match_shell($pattern, $filename)\n{\n    // {{{ convert pattern to positive and negative regexps\n        $positive = $pattern;\n        $negation = substr_count($pattern, \"|\");\n\n        if ($negation > 1) {\n            PEAR::raiseError(\"Mask string contains errors!\");\n            return FALSE;\n        } elseif ($negation) {\n            list($positive, $negative) = explode(\"|\", $pattern);\n            if (strlen($negative) == 0) {\n                PEAR::raiseError(\"File-mask string contains errors!\");\n                return FALSE;\n            }\n        }\n\n       $positive = _File_Find_match_shell_get_pattern($positive);\n       if ($negation) {\n           $negative = _File_Find_match_shell_get_pattern($negative);\n       }\n    // }}} convert end \n\n\n    if (defined(\"FILE_FIND_DEBUG\")) {\n        print(\"Method: $type\\nPattern: $pattern\\n Converted pattern:\");\n        print_r($positive);\n        if (isset($negative)) print_r($negative);\n    }\n\n    if (!preg_match($positive, $filename)) {\n        return FALSE;\n    } else {\n        if (isset($negative) \n              && preg_match($negative, $filename)) {\n            return FALSE;\n        } else {\n            return TRUE;\n        }\n    }\n}\n\n/**\n* function used by File_Find_match_shell to convert 'shell' mask\n* into pcre regexp. Some of the rules (see testcases for more): \n*  escaping all special chars and replacing \n*    . with \\.\n*    * with .*\n*    ? with .{1}\n*    also adding ^ and $ as the pattern matches whole filename\n*\n* @author techtonik <techtonik@php.net>\n* @return string pcre regexp for preg_match\n*/ \nfunction _File_Find_match_shell_get_pattern($mask) {\n    // get array of several masks (if any) delimited by comma\n    // do not touch commas in char class\n    $premasks = preg_split(\"|(\\[[^\\]]+\\])|\", $mask, -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY );\n    if (defined(\"FILE_FIND_DEBUG\")) {\n        print(\"\\nPremask: \");\n        print_r($premasks);\n    }\n    $pi = 0;\n    foreach($premasks as $pm) {\n        if (!isset($masks[$pi])) $masks[$pi] = \"\";\n        if ($pm{0} == '[' && $pm{strlen($pm)-1} == ']') {\n            // strip commas from character class\n            $masks[$pi] .= str_replace(\",\", \"\", $pm);\n        } else {\n            $tarr = explode(\",\", $pm);\n            if (sizeof($tarr) == 1) {\n                $masks[$pi] .= $pm;\n            } else {\n                foreach ($tarr as $te) {\n                    $masks[$pi++] .= $te;\n                    $masks[$pi] = \"\";\n                }\n                unset($masks[$pi--]);\n            }\n        }\n    }\n\n    // if empty string given return *.* pattern\n    if (strlen($mask) == 0) return \"!^.*$!\";\n\n    // convert to preg regexp\n    $regexmask = implode(\"|\", $masks);\n    if (defined(\"FILE_FIND_DEBUG\")) {\n        print(\"regexMask step one(implode): $regexmask\");\n    }\n    $regexmask = addcslashes($regexmask, '^$}!{)(\\/.+');\n    if (defined(\"FILE_FIND_DEBUG\")) {\n        print(\"\\nregexMask step two(addcslashes): $regexmask\");\n    }\n    $regexmask = preg_replace(\"!(\\*|\\?)!\", \".$1\", $regexmask);\n    if (defined(\"FILE_FIND_DEBUG\")) {\n        print(\"\\nregexMask step three(* ? -> .* .?): $regexmask\");\n    }\n    // a special case '*.' at the end means that there is no extension\n    $regexmask = preg_replace(\"!\\.\\*\\\\\\.(\\||$)!\", \"[^\\.]*$1\", $regexmask);\n    // it is impossible to have dot at the end of filename\n    $regexmask = preg_replace(\"!\\\\\\.(\\||$)!\", \"$1\", $regexmask);\n    // and .* at the end also means that there could be nothing at all\n    //   (i.e. no dot at the end also)\n    $regexmask = preg_replace(\"!\\\\\\.\\.\\*(\\||$)!\", \"(\\\\\\\\..*)?$1\", $regexmask);\n    if (defined(\"FILE_FIND_DEBUG\")) {\n        print(\"\\nregexMask step two and half(*.$ \\\\..*$ .$ -> [^.]*$ .?.* $): $regexmask\");\n    }\n    // if no extension supplied - add .* to match partially from filename start\n    if (strpos($regexmask, \"\\\\.\") === FALSE) $regexmask .= \".*\";\n\n    // file mask match whole name - adding restrictions\n    $regexmask = preg_replace(\"!(\\|)!\", '^'.\"$1\".'$', $regexmask);\n    $regexmask = '^'.$regexmask.'$';\n    if (defined(\"FILE_FIND_DEBUG\")) {\n        print(\"\\nregexMask step three(^ and $ to match whole name): $regexmask\");\n    }\n    // wrap regex into ! since all ! are already escaped\n    $regexmask = \"!$regexmask!i\";\n    if (defined(\"FILE_FIND_DEBUG\")) {\n        print(\"\\nWrapped regex: $regexmask\\n\");\n    }\n    return $regexmask;\n}\n\n/*\n * Local variables:\n * tab-width: 4\n * c-basic-offset: 4\n * End:\n */\n\n?>\n"
  },
  {
    "path": "newscoop/include/File/Util.php",
    "content": "<?php\r\n/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */\r\n\r\n/**\r\n * File::Util\r\n *\r\n * PHP versions 4 and 5\r\n *\r\n * LICENSE: This source file is subject to version 3.0 of the PHP license\r\n * that is available through the world-wide-web at the following URI:\r\n * http://www.php.net/license/3_0.txt.  If you did not receive a copy of\r\n * the PHP License and are unable to obtain it through the web, please\r\n * send a note to license@php.net so we can mail you a copy immediately.\r\n *\r\n * @category    File\r\n * @package     File\r\n * @author      Michael Wallner <mike@php.net>\r\n * @copyright   2004-2005 Michael Wallner\r\n * @license     http://www.php.net/license/3_0.txt  PHP License 3.0\r\n * @version     CVS: $Id: Util.php,v 1.25 2007/02/20 14:19:08 mike Exp $\r\n * @link        http://pear.php.net/package/File\r\n */\r\n\r\n/**#@+\r\n * Sorting Constants\r\n */\r\ndefine('FILE_SORT_NONE',    0);\r\ndefine('FILE_SORT_REVERSE', 1);\r\ndefine('FILE_SORT_NAME',    2);\r\ndefine('FILE_SORT_SIZE',    4);\r\ndefine('FILE_SORT_DATE',    8);\r\ndefine('FILE_SORT_RANDOM',  16);\r\n/**#@-*/\r\n\r\n/**#@+\r\n * Listing Constants\r\n */\r\ndefine('FILE_LIST_FILES',   1);\r\ndefine('FILE_LIST_DIRS',    2);\r\ndefine('FILE_LIST_DOTS',    4);\r\ndefine('FILE_LIST_ALL',     FILE_LIST_FILES | FILE_LIST_DIRS | FILE_LIST_DOTS);\r\n/**#@-*/\r\n\r\n/**\r\n * @ignore\r\n */\r\ndefine('FILE_WIN32', defined('OS_WINDOWS') ? OS_WINDOWS : !strncasecmp(PHP_OS, 'win', 3));\r\n\r\n/**\r\n * File_Util\r\n *\r\n * File and directory utility functions.\r\n *\r\n * @access  public\r\n * @static\r\n */\r\nclass File_Util\r\n{\r\n    /**\r\n     * Returns a string path built from the array $pathParts. Where a join\r\n     * occurs multiple separators are removed. Joins using the optional\r\n     * separator, defaulting to the PHP DIRECTORY_SEPARATOR constant.\r\n     *\r\n     * @static\r\n     * @access  public\r\n     * @param   array   $parts Array containing the parts to be joined\r\n     * @param   string  $separator The directory seperator\r\n     */\r\n    function buildPath($parts, $separator = DIRECTORY_SEPARATOR)\r\n    {\r\n        $qs = '/^'. preg_quote($separator, '/') .'+$/';\r\n        for ($i = 0, $c = count($parts); $i < $c; $i++) {\r\n            if (!strlen($parts[$i]) || preg_match($qs, $parts[$i])) {\r\n                unset($parts[$i]);\r\n            } elseif (0 == $i) {\r\n                $parts[$i] = rtrim($parts[$i], $separator);\r\n            } elseif ($c - 1 == $i) {\r\n                $parts[$i] = ltrim($parts[$i], $separator);\r\n            } else {\r\n                $parts[$i] = trim($parts[$i], $separator);\r\n            }\r\n        }\r\n        return implode($separator, $parts);\r\n    }\r\n\r\n    /**\r\n     * Returns a path without leading / or C:\\. If this is not\r\n     * present the path is returned as is.\r\n     *\r\n     * @static\r\n     * @access  public\r\n     * @param   string  $path The path to be processed\r\n     * @return  string  The processed path or the path as is\r\n     */\r\n    function skipRoot($path)\r\n    {\r\n        if (File_Util::isAbsolute($path)) {\r\n            if (FILE_WIN32) {\r\n                return substr($path, $path{3} == '\\\\' ? 4 : 3);\r\n            }\r\n            return ltrim($path, '/');\r\n        }\r\n        return $path;\r\n    }\r\n\r\n    /**\r\n     * Returns the temp directory according to either the TMP, TMPDIR, or\r\n     * TEMP env variables. If these are not set it will also check for the\r\n     * existence of /tmp, %WINDIR%\\temp\r\n     *\r\n     * @static\r\n     * @access  public\r\n     * @return  string  The system tmp directory\r\n     */\r\n    function tmpDir()\r\n    {\r\n        if (FILE_WIN32) {\r\n            if (isset($_ENV['TEMP'])) {\r\n                return $_ENV['TEMP'];\r\n            }\r\n            if (isset($_ENV['TMP'])) {\r\n                return $_ENV['TMP'];\r\n            }\r\n            if (isset($_ENV['windir'])) {\r\n                return $_ENV['windir'] . '\\\\temp';\r\n            }\r\n            if (isset($_ENV['SystemRoot'])) {\r\n                return $_ENV['SystemRoot'] . '\\\\temp';\r\n            }\r\n            if (isset($_SERVER['TEMP'])) {\r\n                return $_SERVER['TEMP'];\r\n            }\r\n            if (isset($_SERVER['TMP'])) {\r\n                return $_SERVER['TMP'];\r\n            }\r\n            if (isset($_SERVER['windir'])) {\r\n                return $_SERVER['windir'] . '\\\\temp';\r\n            }\r\n            if (isset($_SERVER['SystemRoot'])) {\r\n                return $_SERVER['SystemRoot'] . '\\\\temp';\r\n            }\r\n            return '\\temp';\r\n        }\r\n        if (isset($_ENV['TMPDIR'])) {\r\n            return $_ENV['TMPDIR'];\r\n        }\r\n        if (isset($_SERVER['TMPDIR'])) {\r\n            return $_SERVER['TMPDIR'];\r\n        }\r\n        return '/tmp';\r\n    }\r\n\r\n    /**\r\n     * Returns a temporary filename using tempnam() and File::tmpDir().\r\n     *\r\n     * @static\r\n     * @access  public\r\n     * @param   string  $dirname Optional directory name for the tmp file\r\n     * @return  string  Filename and path of the tmp file\r\n     */\r\n    function tmpFile($dirname = null)\r\n    {\r\n        if (!isset($dirname)) {\r\n            $dirname = File_Util::tmpDir();\r\n        }\r\n        return tempnam($dirname, 'temp.');\r\n    }\r\n\r\n    /**\r\n     * Returns boolean based on whether given path is absolute or not.\r\n     *\r\n     * @static\r\n     * @access  public\r\n     * @param   string  $path Given path\r\n     * @return  boolean True if the path is absolute, false if it is not\r\n     */\r\n    function isAbsolute($path)\r\n    {\r\n        if (preg_match('/(?:\\/|\\\\\\)\\.\\.(?=\\/|$)/', $path)) {\r\n            return false;\r\n        }\r\n        if (FILE_WIN32) {\r\n            return preg_match('/^[a-zA-Z]:(\\\\\\|\\/)/', $path);\r\n        }\r\n        return ($path{0} == '/') || ($path{0} == '~');\r\n    }\r\n\r\n    /**\r\n     * Checks for a file's existence, taking the current include path \r\n     * into consideration\r\n     * \r\n     * This method can be called statically\r\n     * (e.g., File_Util::isIncludable('config.php'))\r\n     *\r\n     * @param string $file\r\n     * @param string $sep the directory separator (optional)\r\n     * @return string the includable path\r\n     * @access public\r\n     * @static     \r\n     */\r\n    function isIncludable($file, $sep = DIRECTORY_SEPARATOR)\r\n    {\r\n        foreach ((array) explode(PATH_SEPARATOR, ini_get('include_path')) as $path) {\r\n            if (file_exists($path .= $sep . $file)) {\r\n                return $path;\r\n            }\r\n        }\r\n        if (file_exists($file)) {\r\n            return $file;\r\n        }\r\n        return NULL;\r\n    }\r\n    \r\n    /**\r\n     * Get path relative to another path\r\n     *\r\n     * @static\r\n     * @access  public\r\n     * @return  string\r\n     * @param   string  $path\r\n     * @param   string  $root\r\n     * @param   string  $separator\r\n     */\r\n    function relativePath($path, $root, $separator = DIRECTORY_SEPARATOR)\r\n    {\r\n        $path = File_Util::realpath($path, $separator);\r\n        $root = File_Util::realpath($root, $separator);\r\n        $dirs = explode($separator, $path);\r\n        $comp = explode($separator, $root);\r\n\r\n        if (FILE_WIN32) {\r\n            if (strcasecmp($dirs[0], $comp[0])) {\r\n                return $path;\r\n            }\r\n            unset($dirs[0], $comp[0]);\r\n        }\r\n\r\n        foreach ($comp as $i => $part) {\r\n            if (isset($dirs[$i]) && $part == $dirs[$i]) {\r\n                unset($dirs[$i], $comp[$i]);\r\n            } else {\r\n                break;\r\n            }\r\n        }\r\n\r\n        return str_repeat('..' . $separator, count($comp)) . implode($separator, $dirs);\r\n    }\r\n\r\n    /**\r\n     * Get real path (works with non-existant paths)\r\n     *\r\n     * @static\r\n     * @access  public\r\n     * @return  string\r\n     * @param   string  $path\r\n     * @param   string  $separator\r\n     */\r\n    function realPath($path, $separator = DIRECTORY_SEPARATOR)\r\n    {\r\n        if (!strlen($path)) {\r\n            return $separator;\r\n        }\r\n\r\n        $drive = '';\r\n        if (FILE_WIN32) {\r\n            $path = preg_replace('/[\\\\\\\\\\/]/', $separator, $path);\r\n            if (preg_match('/([a-zA-Z]\\:)(.*)/', $path, $matches)) {\r\n                $drive = $matches[1];\r\n                $path  = $matches[2];\r\n            } else {\r\n                $cwd   = getcwd();\r\n                $drive = substr($cwd, 0, 2);\r\n                if ($path{0} !== $separator{0}) {\r\n                    $path  = substr($cwd, 3) . $separator . $path;\r\n                }\r\n            }\r\n        } elseif ($path{0} !== $separator) {\r\n            $path = getcwd() . $separator . $path;\r\n        }\r\n\r\n        $dirStack = array();\r\n        foreach (explode($separator, $path) as $dir) {\r\n            if (strlen($dir) && $dir !== '.') {\r\n                if ($dir == '..') {\r\n                    array_pop($dirStack);\r\n                } else {\r\n                    $dirStack[] = $dir;\r\n                }\r\n            }\r\n        }\r\n\r\n        return $drive . $separator . implode($separator, $dirStack);\r\n    }\r\n\r\n    /**\r\n     * Check whether path is in root path\r\n     *\r\n     * @static\r\n     * @access  public\r\n     * @return  bool\r\n     * @param   string  $path\r\n     * @param   string  $root\r\n     */\r\n    function pathInRoot($path, $root)\r\n    {\r\n        static $realPaths = array();\r\n\r\n        if (!isset($realPaths[$root])) {\r\n            $realPaths[$root] = File_Util::realPath($root);\r\n        }\r\n\r\n        return false !== strstr(File_Util::realPath($path), $realPaths[$root]);\r\n    }\r\n\r\n    /**\r\n     * List Directory\r\n     *\r\n     * The final argument, $cb, is a callback that either evaluates to true or\r\n     * false and performs a filter operation, or it can also modify the\r\n     * directory/file names returned.  To achieve the latter effect use as\r\n     * follows:\r\n     *\r\n     * <code>\r\n     * <?php\r\n     * function uc(&$filename) {\r\n     *     $filename = strtoupper($filename);\r\n     *     return true;\r\n     * }\r\n     * $entries = File_Util::listDir('.', FILE_LIST_ALL, FILE_SORT_NONE, 'uc');\r\n     * foreach ($entries as $e) {\r\n     *     echo $e->name, \"\\n\";\r\n     * }\r\n     * ?>\r\n     * </code>\r\n     *\r\n     * @static\r\n     * @access  public\r\n     * @return  array\r\n     * @param   string  $path\r\n     * @param   int     $list\r\n     * @param   int     $sort\r\n     * @param   mixed   $cb\r\n     */\r\n    function listDir($path, $list = FILE_LIST_ALL, $sort = FILE_SORT_NONE, $cb = null)\r\n    {\r\n        if (!strlen($path) || !is_dir($path)) {\r\n            return null;\r\n        }\r\n\r\n        $entries = array();\r\n        for ($dir = dir($path); false !== $entry = $dir->read(); ) {\r\n            if ($list & FILE_LIST_DOTS || $entry{0} !== '.') {\r\n                $isRef = ($entry === '.' || $entry === '..');\r\n                $isDir = $isRef || is_dir($path .'/'. $entry);\r\n                if (    ((!$isDir && $list & FILE_LIST_FILES)   ||\r\n                         ($isDir  && $list & FILE_LIST_DIRS))   &&\r\n                        (!is_callable($cb) ||\r\n                            call_user_func_array($cb, array(&$entry)))) {\r\n                    $entries[] = (object) array(\r\n                        'name'  => $entry,\r\n                        'size'  => $isDir ? null : filesize($path .'/'. $entry),\r\n                        'date'  => filemtime($path .'/'. $entry),\r\n                    );\r\n                }\r\n            }\r\n        }\r\n        $dir->close();\r\n\r\n        if ($sort) {\r\n            $entries = File_Util::sortFiles($entries, $sort);\r\n        }\r\n\r\n        return $entries;\r\n    }\r\n\r\n    /**\r\n     * Sort Files\r\n     *\r\n     * @static\r\n     * @access  public\r\n     * @return  array\r\n     * @param   array   $files\r\n     * @param   int     $sort\r\n     */\r\n    function sortFiles($files, $sort)\r\n    {\r\n        if (!$files) {\r\n            return array();\r\n        }\r\n\r\n        if (!$sort) {\r\n            return $files;\r\n        }\r\n\r\n        if ($sort === 1) {\r\n            return array_reverse($files);\r\n        }\r\n\r\n        if ($sort & FILE_SORT_RANDOM) {\r\n            shuffle($files);\r\n            return $files;\r\n        }\r\n\r\n        $names = array();\r\n        $sizes = array();\r\n        $dates = array();\r\n\r\n        if ($sort & FILE_SORT_NAME) {\r\n            $r = &$names;\r\n        } elseif ($sort & FILE_SORT_DATE) {\r\n            $r = &$dates;\r\n        } elseif ($sort & FILE_SORT_SIZE) {\r\n            $r = &$sizes;\r\n        } else {\r\n            asort($files, SORT_REGULAR);\r\n            return $files;\r\n        }\r\n\r\n        $sortFlags = array(\r\n            FILE_SORT_NAME => SORT_STRING,\r\n            FILE_SORT_DATE => SORT_NUMERIC,\r\n            FILE_SORT_SIZE => SORT_NUMERIC,\r\n        );\r\n\r\n        foreach ($files as $file) {\r\n            $names[] = $file->name;\r\n            $sizes[] = $file->size;\r\n            $dates[] = $file->date;\r\n        }\r\n\r\n        if ($sort & FILE_SORT_REVERSE) {\r\n            arsort($r, $sortFlags[$sort & ~1]);\r\n        } else {\r\n            asort($r, $sortFlags[$sort]);\r\n        }\r\n\r\n        $result = array();\r\n        foreach ($r as $i => $f) {\r\n            $result[] = $files[$i];\r\n        }\r\n\r\n        return $result;\r\n    }\r\n\r\n    /**\r\n     * Switch File Extension\r\n     *\r\n     * @static\r\n     * @access  public\r\n     * @return  string|array\r\n     * @param   string|array    $filename\r\n     * @param   string          $to new file extension\r\n     * @param   string          $from change only files with this extension\r\n     * @param   bool            $reverse change only files not having $from extension\r\n     */\r\n    function switchExt($filename, $to, $from = null, $reverse = false)\r\n    {\r\n        if (is_array($filename)) {\r\n            foreach ($filename as $key => $file) {\r\n                $filename[$key] = File_Util::switchExt($file, $to, $from);\r\n            }\r\n            return $filename;\r\n        }\r\n\r\n        if ($len = strlen($from)) {\r\n            $ext = substr($filename, -$len - 1);\r\n            $cfn = FILE_WIN32 ? 'strcasecmp' : 'strcmp';\r\n            if (!$reverse == $cfn($ext, '.'. $from)) {\r\n                return $filename;\r\n            }\r\n            return substr($filename, 0, -$len - 1) .'.'. $to;\r\n        }\r\n\r\n        if ($pos = strpos($filename, '.')) {\r\n            return substr($filename, 0, $pos) .'.'. $to;\r\n        }\r\n\r\n        return $filename .'.'. $to;\r\n    }\r\n}\r\n\r\n?>\r\n"
  },
  {
    "path": "newscoop/include/File.php",
    "content": "<?php\r\n/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */\r\n\r\n/**\r\n * File\r\n *\r\n * PHP versions 4 and 5\r\n *\r\n * LICENSE: This source file is subject to version 3.0 of the PHP license\r\n * that is available through the world-wide-web at the following URI:\r\n * http://www.php.net/license/3_0.txt.  If you did not receive a copy of\r\n * the PHP License and are unable to obtain it through the web, please\r\n * send a note to license@php.net so we can mail you a copy immediately.\r\n *\r\n * @category    File\r\n * @package     File\r\n * @author      Richard Heyes <richard@php.net>\r\n * @author      Tal Peer <tal@php.net>\r\n * @author      Michael Wallner <mike@php.net>\r\n * @copyright   2002-2005 The Authors\r\n * @license     http://www.php.net/license/3_0.txt  PHP License 3.0\r\n * @version     CVS: $Id: File.php,v 1.38 2007/03/24 16:38:56 dufuz Exp $\r\n * @link        http://pear.php.net/package/File\r\n */\r\n\r\n/**\r\n * Requires PEAR\r\n */\r\nrequire_once 'PEAR.php';\r\n\r\n/**\r\n * The default number of bytes for reading\r\n */\r\nif (!defined('FILE_DEFAULT_READSIZE')) {\r\n    define('FILE_DEFAULT_READSIZE', 1024, true);\r\n}\r\n\r\n/**\r\n * The maximum number of bytes for reading lines\r\n */\r\nif (!defined('FILE_MAX_LINE_READSIZE')) {\r\n    define('FILE_MAX_LINE_READSIZE', 40960, true);\r\n}\r\n\r\n/**\r\n * Whether file locks should block\r\n */\r\nif (!defined('FILE_LOCKS_BLOCK')) {\r\n    define('FILE_LOCKS_BLOCK', true, true);\r\n}\r\n\r\n/**\r\n * Mode to use for reading from files\r\n */\r\ndefine('FILE_MODE_READ', 'rb', true);\r\n\r\n/**\r\n * Mode to use for truncating files, then writing\r\n */\r\ndefine('FILE_MODE_WRITE', 'wb', true);\r\n\r\n/**\r\n * Mode to use for appending to files\r\n */\r\ndefine('FILE_MODE_APPEND', 'ab', true);\r\n\r\n/**\r\n * Use this when a shared (read) lock is required\r\n */\r\ndefine('FILE_LOCK_SHARED', LOCK_SH | (FILE_LOCKS_BLOCK ? 0 : LOCK_NB), true);\r\n\r\n/**\r\n * Use this when an exclusive (write) lock is required\r\n */\r\ndefine('FILE_LOCK_EXCLUSIVE', LOCK_EX | (FILE_LOCKS_BLOCK ? 0 : LOCK_NB), true);\r\n\r\n/**\r\n * Class for handling files\r\n *\r\n * A class with common functions for writing,\r\n * reading and handling files and directories\r\n *\r\n * @author  Richard Heyes <richard@php.net>\r\n * @author  Tal Peer <tal@php.net>\r\n * @author  Michael Wallner <mike@php.net>\r\n * @access  public\r\n * @package File\r\n *\r\n * @static\r\n */\r\nclass File extends PEAR\r\n{\r\n    /**\r\n     * Destructor\r\n     *\r\n     * Unlocks any locked file pointers and closes all filepointers\r\n     *\r\n     * @access private\r\n     */\r\n    function _File()\r\n    {\r\n        File::closeAll();\r\n    }\r\n\r\n    /**\r\n     * Handles file pointers. If a file pointer needs to be opened,\r\n     * it will be. If it already exists (based on filename and mode)\r\n     * then the existing one will be returned.\r\n     *\r\n     * @access  private\r\n     * @param   string  $filename Filename to be used\r\n     * @param   string  $mode Mode to open the file in\r\n     * @param   mixed   $lock Type of lock to use\r\n     * @return  mixed   PEAR_Error on error or file pointer resource on success\r\n     */\r\n    function _getFilePointer($filename, $mode, $lock = false)\r\n    {\r\n        $filePointers = &PEAR::getStaticProperty('File', 'filePointers');\r\n\r\n        // Win32 is case-insensitive\r\n        if (OS_WINDOWS) {\r\n            $filename = strtolower($filename);\r\n        }\r\n\r\n        // check if file pointer already exists\r\n        if (!isset($filePointers[$filename][$mode]) ||\r\n            !is_resource($filePointers[$filename][$mode])) {\r\n\r\n            // check if we can open the file in the desired mode\r\n            switch ($mode)\r\n            {\r\n                case FILE_MODE_READ:\r\n                    if (!preg_match('/^.+(?<!file):\\/\\//i', $filename) &&\r\n                        !file_exists($filename)) {\r\n                        return PEAR::raiseError(\"File does not exist: $filename\");\r\n                    }\r\n                break;\r\n\r\n                case FILE_MODE_APPEND:\r\n                case FILE_MODE_WRITE:\r\n                    if (file_exists($filename)) {\r\n                        if (!is_writable($filename)) {\r\n                            return PEAR::raiseError(\"File is not writable: $filename\");\r\n                        }\r\n                    } elseif (!is_writable($dir = dirname($filename))) {\r\n                        return PEAR::raiseError(\"Cannot create file in directory: $dir\");\r\n                    }\r\n                break;\r\n\r\n                default:\r\n                    return PEAR::raiseError(\"Invalid access mode: $mode\");\r\n            }\r\n\r\n            // open file\r\n            $filePointers[$filename][$mode] = @fopen($filename, $mode);\r\n            if (!is_resource($filePointers[$filename][$mode])) {\r\n                return PEAR::raiseError('Failed to open file: ' . $filename);\r\n            }\r\n        }\r\n\r\n        // lock file\r\n        if ($lock) {\r\n            $lock = $mode == FILE_MODE_READ ? FILE_LOCK_SHARED : FILE_LOCK_EXCLUSIVE;\r\n            $locks = &PEAR::getStaticProperty('File', 'locks');\r\n            if (@flock($filePointers[$filename][$mode], $lock)) {\r\n                $locks[] = &$filePointers[$filename][$mode];\r\n            } elseif (FILE_LOCKS_BLOCK) {\r\n                return PEAR::raiseError(\"File already locked: $filename\");\r\n            } else {\r\n                return PEAR::raiseError(\"Could not lock file: $filename\");\r\n            }\r\n        }\r\n\r\n        return $filePointers[$filename][$mode];\r\n    }\r\n\r\n    /**\r\n     * Reads an entire file and returns it.\r\n     * Uses file_get_contents if available.\r\n     *\r\n     * @access  public\r\n     * @param   string  $filename Name of file to read from\r\n     * @param   mixed   $lock Type of lock to use\r\n     * @return  mixed   PEAR_Error if an error has occurred, or a string with the contents of the file\r\n     */\r\n    function readAll($filename, $lock = false)\r\n    {\r\n        if (false === $file = @file_get_contents($filename)) {\r\n            return PEAR::raiseError(\"Cannot read file: $filename\");\r\n        }\r\n        return $file;\r\n    }\r\n\r\n    /**\r\n     * Returns a specified number of bytes of a file.\r\n     * Defaults to FILE_DEFAULT_READSIZE.  If $size is 0, all file will be read.\r\n     *\r\n     * @access  public\r\n     * @param   string  $filename Name of file to read from\r\n     * @param   integer $size Bytes to read\r\n     * @param   mixed   $lock Type of lock to use\r\n     * @return  mixed   PEAR_Error on error or a string which contains the data read\r\n     *                  Will also return false upon EOF\r\n     */\r\n    function read($filename, $size = FILE_DEFAULT_READSIZE, $lock = false)\r\n    {\r\n        static $filePointers;\r\n\r\n        if ($size == 0) {\r\n            return File::readAll($filename, $lock);\r\n        }\r\n\r\n        if (!isset($filePointers[$filename]) ||\r\n            !is_resource($filePointers[$filename])) {\r\n            $fp = File::_getFilePointer($filename, FILE_MODE_READ, $lock);\r\n            if (PEAR::isError($fp)) {\r\n                return $fp;\r\n            }\r\n\r\n            $filePointers[$filename] = $fp;\r\n        } else {\r\n            $fp = $filePointers[$filename];\r\n        }\r\n\r\n        return !feof($fp) ? fread($fp, $size) : false;\r\n    }\r\n\r\n    /**\r\n     * Writes the given data to the given filename.\r\n     * Defaults to no lock, append mode.\r\n     *\r\n     * @access  public\r\n     * @param   string  $filename Name of file to write to\r\n     * @param   string  $data Data to write to file\r\n     * @param   string  $mode Mode to open file in\r\n     * @param   mixed   $lock Type of lock to use\r\n     * @return  mixed   PEAR_Error on error or number of bytes written to file.\r\n     */\r\n    function write($filename, $data, $mode = FILE_MODE_APPEND, $lock = false)\r\n    {\r\n        $fp = File::_getFilePointer($filename, $mode, $lock);\r\n        if (PEAR::isError($fp)) {\r\n            return $fp;\r\n        }\r\n\r\n        if (false === $bytes = @fwrite($fp, $data, strlen($data))) {\r\n            return PEAR::raiseError(\"Cannot write data: '$data' to file: '$filename'\");\r\n        }\r\n\r\n        return $bytes;\r\n    }\r\n\r\n    /**\r\n     * Reads and returns a single character from given filename\r\n     *\r\n     * @access  public\r\n     * @param   string  $filename Name of file to read from\r\n     * @param   mixed   $lock Type of lock to use\r\n     * @return  mixed   PEAR_Error on error or one character of the specified file\r\n     */\r\n    function readChar($filename, $lock = false)\r\n    {\r\n        return File::read($filename, 1, $lock);\r\n    }\r\n\r\n    /**\r\n     * Writes a single character to a file\r\n     *\r\n     * @access  public\r\n     * @param   string  $filename Name of file to write to\r\n     * @param   string  $char Character to write\r\n     * @param   string  $mode Mode to use when writing\r\n     * @param   mixed   $lock Type of lock to use\r\n     * @return  mixed   PEAR_Error on error, or 1 on success\r\n     */\r\n    function writeChar($filename, $char, $mode = FILE_MODE_APPEND, $lock = false)\r\n    {\r\n        $fp = File::_getFilePointer($filename, $mode, $lock);\r\n        if (PEAR::isError($fp)) {\r\n            return $fp;\r\n        }\r\n\r\n        if (false === @fwrite($fp, $char, 1)) {\r\n            return PEAR::raiseError(\"Cannot write data: '$data' to file: '$filename'\");\r\n        }\r\n\r\n        return 1;\r\n    }\r\n\r\n    /**\r\n     * Returns a line of the file (without trailing CRLF).\r\n     * Maximum read line length is FILE_MAX_LINE_READSIZE.\r\n     *\r\n     * @access  public\r\n     * @param   string  $filename Name of file to read from\r\n     * @param   boolean $lock Whether file should be locked\r\n     * @return  mixed   PEAR_Error on error or a string containing the line read from file\r\n     */\r\n    function readLine($filename, $lock = false)\r\n    {\r\n        static $filePointers; // Used to prevent unnecessary calls to _getFilePointer()\r\n\r\n        if (!isset($filePointers[$filename]) ||\r\n            !is_resource($filePointers[$filename])) {\r\n            $fp = File::_getFilePointer($filename, FILE_MODE_READ, $lock);\r\n            if (PEAR::isError($fp)) {\r\n                return $fp;\r\n            }\r\n\r\n            $filePointers[$filename] = $fp;\r\n        } else {\r\n            $fp = $filePointers[$filename];\r\n        }\r\n\r\n        if (feof($fp)) {\r\n            return false;\r\n        }\r\n\r\n        return rtrim(fgets($fp, FILE_MAX_LINE_READSIZE), \"\\r\\n\");\r\n    }\r\n\r\n    /**\r\n     * Writes a single line, appending a LF (by default)\r\n     *\r\n     * @access  public\r\n     * @param   string  $filename Name of file to write to\r\n     * @param   string  $line Line of data to be written to file\r\n     * @param   string  $mode Write mode, can be either FILE_MODE_WRITE or FILE_MODE_APPEND\r\n     * @param   string  $crlf The CRLF your system is using. UNIX = \\n Windows = \\r\\n Mac = \\r\r\n     * @param   mixed   $lock Whether to lock the file\r\n     * @return  mixed   PEAR_Error on error or number of bytes written to file (including appended crlf)\r\n     */\r\n    function writeLine($filename, $line, $mode = FILE_MODE_APPEND, $crlf = \"\\n\", $lock = false)\r\n    {\r\n        $fp = File::_getFilePointer($filename, $mode, $lock);\r\n        if (PEAR::isError($fp)) {\r\n            return $fp;\r\n        }\r\n\r\n        if (false === $bytes = fwrite($fp, $line . $crlf)) {\r\n            return PEAR::raiseError(\"Cannot write data: '$data' to file: '$file'\");\r\n        }\r\n\r\n        return $bytes;\r\n    }\r\n\r\n    /**\r\n     * This rewinds a filepointer to the start of a file\r\n     *\r\n     * @access  public\r\n     * @param   string  $filename The filename\r\n     * @param   string  $mode Mode the file was opened in\r\n     * @return  mixed   PEAR Error on error, true on success\r\n     */\r\n    function rewind($filename, $mode)\r\n    {\r\n        $fp = File::_getFilePointer($filename, $mode);\r\n        if (PEAR::isError($fp)) {\r\n            return $fp;\r\n        }\r\n\r\n        if (!@rewind($fp)) {\r\n            return PEAR::raiseError(\"Cannot rewind file: $filename\");\r\n        }\r\n\r\n        return true;\r\n    }\r\n\r\n    /**\r\n     * Closes all open file pointers\r\n     *\r\n     * @access  public\r\n     * @return  void\r\n     */\r\n    function closeAll()\r\n    {\r\n        $locks = &PEAR::getStaticProperty('File', 'locks');\r\n        $filePointers = &PEAR::getStaticProperty('File', 'filePointers');\r\n\r\n        // unlock files\r\n        for ($i = 0, $c = count($locks); $i < $c; $i++) {\r\n            is_resource($locks[$i]) and @flock($locks[$i], LOCK_UN);\r\n        }\r\n\r\n        // close files\r\n        if (!empty($filePointers)) {\r\n            foreach ($filePointers as $fname => $modes) {\r\n                foreach (array_keys($modes) as $mode) {\r\n                    if (is_resource($filePointers[$fname][$mode])) {\r\n                        @fclose($filePointers[$fname][$mode]);\r\n                    }\r\n                    unset($filePointers[$fname][$mode]);\r\n                }\r\n            }\r\n        }\r\n    }\r\n\r\n    /**\r\n     * This closes an open file pointer\r\n     *\r\n     * @access  public\r\n     * @param   string  $filename The filename that was opened\r\n     * @param   string  $mode Mode the file was opened in\r\n     * @return  mixed   PEAR Error on error, true otherwise\r\n     */\r\n    function close($filename, $mode)\r\n    {\r\n        $filePointers = &PEAR::getStaticProperty('File', 'filePointers');\r\n\r\n        if (OS_WINDOWS) {\r\n            $filename = strToLower($filename);\r\n        }\r\n\r\n        if (!isset($filePointers[$filename][$mode])) {\r\n            return true;\r\n        }\r\n\r\n        $fp = $filePointers[$filename][$mode];\r\n        unset($filePointers[$filename][$mode]);\r\n\r\n        if (is_resource($fp)) {\r\n            // unlock file\r\n            @flock($fp, LOCK_UN);\r\n            // close file\r\n            if (!@fclose($fp)) {\r\n                return PEAR::raiseError(\"Cannot close file: $filename\");\r\n            }\r\n        }\r\n\r\n        return true;\r\n    }\r\n\r\n    /**\r\n     * This unlocks a locked file pointer.\r\n     *\r\n     * @access  public\r\n     * @param   string  $filename The filename that was opened\r\n     * @param   string  $mode Mode the file was opened in\r\n     * @return  mixed   PEAR Error on error, true otherwise\r\n     */\r\n    function unlock($filename, $mode)\r\n    {\r\n        $fp = File::_getFilePointer($filename, $mode);\r\n        if (PEAR::isError($fp)) {\r\n            return $fp;\r\n        }\r\n\r\n        if (!@flock($fp, LOCK_UN)) {\r\n            return PEAR::raiseError(\"Cacnnot unlock file: $filename\");\r\n        }\r\n\r\n        return true;\r\n    }\r\n\r\n    /**\r\n     * @deprecated\r\n     */\r\n    function stripTrailingSeparators($path, $separator = DIRECTORY_SEPARATOR)\r\n    {\r\n        if ($path === $separator) {\r\n            return $path;\r\n        }\r\n        return rtrim($path, $separator);\r\n    }\r\n\r\n    /**\r\n     * @deprecated\r\n     */\r\n    function stripLeadingSeparators($path, $separator = DIRECTORY_SEPARATOR)\r\n    {\r\n        if ($path === $separator) {\r\n            return $path;\r\n        }\r\n        return ltrim($path, $separator);\r\n    }\r\n\r\n    /**\r\n     * @deprecated Use File_Util::buildPath() instead.\r\n     */\r\n    function buildPath($parts, $separator = DIRECTORY_SEPARATOR)\r\n    {\r\n        require_once 'File/Util.php';\r\n        return File_Util::buildPath($parts, $separator);\r\n    }\r\n\r\n    /**\r\n     * @deprecated Use File_Util::skipRoot() instead.\r\n     */\r\n    function skipRoot($path)\r\n    {\r\n        require_once 'File/Util.php';\r\n        return File_Util::skipRoot($path);\r\n    }\r\n\r\n    /**\r\n     * @deprecated Use File_Util::tmpDir() instead.\r\n     */\r\n    function getTempDir()\r\n    {\r\n        require_once 'File/Util.php';\r\n        return File_Util::tmpDir();\r\n    }\r\n\r\n    /**\r\n     * @deprecated Use File_Util::tmpFile() instead.\r\n     */\r\n    function getTempFile($dirname = null)\r\n    {\r\n        require_once 'File/Util.php';\r\n        return File_Util::tmpFile($dirname);\r\n    }\r\n\r\n    /**\r\n     * @deprecated Use File_Util::isAbsolute() instead.\r\n     */\r\n    function isAbsolute($path)\r\n    {\r\n        require_once 'File/Util.php';\r\n        return File_Util::isAbsolute($path);\r\n    }\r\n\r\n    /**\r\n     * @deprecated Use File_Util::relativePath() instead.\r\n     */\r\n    function relativePath($path, $root, $separator = DIRECTORY_SEPARATOR)\r\n    {\r\n        require_once 'File/Util.php';\r\n        return File_Util::relativePath($path, $root, $separator);\r\n    }\r\n\r\n    /**\r\n     * @deprecated Use File_Util::realpath() instead.\r\n     */\r\n    function realpath($path, $separator = DIRECTORY_SEPARATOR)\r\n    {\r\n        require_once 'File/Util.php';\r\n        return File_Util::realpath($path, $separator);\r\n    }\r\n}\r\n\r\nPEAR::registerShutdownFunc(array('File', '_File'));\r\n\r\n?>\r\n"
  },
  {
    "path": "newscoop/include/Mail/RFC822.php",
    "content": "<?php\n/**\n * RFC 822 Email address list validation Utility\n *\n * PHP versions 4 and 5\n *\n * LICENSE:\n *\n * Copyright (c) 2001-2010, Richard Heyes\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions\n * are met:\n *\n * o Redistributions of source code must retain the above copyright\n *   notice, this list of conditions and the following disclaimer.\n * o Redistributions in binary form must reproduce the above copyright\n *   notice, this list of conditions and the following disclaimer in the\n *   documentation and/or other materials provided with the distribution.\n * o The names of the authors may not be used to endorse or promote\n *   products derived from this software without specific prior written\n *   permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n * \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * @category    Mail\n * @package     Mail\n * @author      Richard Heyes <richard@phpguru.org>\n * @author      Chuck Hagenbuch <chuck@horde.org\n * @copyright   2001-2010 Richard Heyes\n * @license     http://opensource.org/licenses/bsd-license.php New BSD License\n * @version     CVS: $Id: RFC822.php 294749 2010-02-08 08:22:25Z clockwerx $\n * @link        http://pear.php.net/package/Mail/\n */\n\n/**\n * RFC 822 Email address list validation Utility\n *\n * What is it?\n *\n * This class will take an address string, and parse it into it's consituent\n * parts, be that either addresses, groups, or combinations. Nested groups\n * are not supported. The structure it returns is pretty straight forward,\n * and is similar to that provided by the imap_rfc822_parse_adrlist(). Use\n * print_r() to view the structure.\n *\n * How do I use it?\n *\n * $address_string = 'My Group: \"Richard\" <richard@localhost> (A comment), ted@example.com (Ted Bloggs), Barney;';\n * $structure = Mail_RFC822::parseAddressList($address_string, 'example.com', true)\n * print_r($structure);\n *\n * @author  Richard Heyes <richard@phpguru.org>\n * @author  Chuck Hagenbuch <chuck@horde.org>\n * @version $Revision: 294749 $\n * @license BSD\n * @package Mail\n */\nclass Mail_RFC822 {\n\n    /**\n     * The address being parsed by the RFC822 object.\n     * @var string $address\n     */\n    var $address = '';\n\n    /**\n     * The default domain to use for unqualified addresses.\n     * @var string $default_domain\n     */\n    var $default_domain = 'localhost';\n\n    /**\n     * Should we return a nested array showing groups, or flatten everything?\n     * @var boolean $nestGroups\n     */\n    var $nestGroups = true;\n\n    /**\n     * Whether or not to validate atoms for non-ascii characters.\n     * @var boolean $validate\n     */\n    var $validate = true;\n\n    /**\n     * The array of raw addresses built up as we parse.\n     * @var array $addresses\n     */\n    var $addresses = array();\n\n    /**\n     * The final array of parsed address information that we build up.\n     * @var array $structure\n     */\n    var $structure = array();\n\n    /**\n     * The current error message, if any.\n     * @var string $error\n     */\n    var $error = null;\n\n    /**\n     * An internal counter/pointer.\n     * @var integer $index\n     */\n    var $index = null;\n\n    /**\n     * The number of groups that have been found in the address list.\n     * @var integer $num_groups\n     * @access public\n     */\n    var $num_groups = 0;\n\n    /**\n     * A variable so that we can tell whether or not we're inside a\n     * Mail_RFC822 object.\n     * @var boolean $mailRFC822\n     */\n    var $mailRFC822 = true;\n\n    /**\n    * A limit after which processing stops\n    * @var int $limit\n    */\n    var $limit = null;\n\n    /**\n     * Sets up the object. The address must either be set here or when\n     * calling parseAddressList(). One or the other.\n     *\n     * @access public\n     * @param string  $address         The address(es) to validate.\n     * @param string  $default_domain  Default domain/host etc. If not supplied, will be set to localhost.\n     * @param boolean $nest_groups     Whether to return the structure with groups nested for easier viewing.\n     * @param boolean $validate        Whether to validate atoms. Turn this off if you need to run addresses through before encoding the personal names, for instance.\n     *\n     * @return object Mail_RFC822 A new Mail_RFC822 object.\n     */\n    function Mail_RFC822($address = null, $default_domain = null, $nest_groups = null, $validate = null, $limit = null)\n    {\n        if (isset($address))        $this->address        = $address;\n        if (isset($default_domain)) $this->default_domain = $default_domain;\n        if (isset($nest_groups))    $this->nestGroups     = $nest_groups;\n        if (isset($validate))       $this->validate       = $validate;\n        if (isset($limit))          $this->limit          = $limit;\n    }\n\n    /**\n     * Starts the whole process. The address must either be set here\n     * or when creating the object. One or the other.\n     *\n     * @access public\n     * @param string  $address         The address(es) to validate.\n     * @param string  $default_domain  Default domain/host etc.\n     * @param boolean $nest_groups     Whether to return the structure with groups nested for easier viewing.\n     * @param boolean $validate        Whether to validate atoms. Turn this off if you need to run addresses through before encoding the personal names, for instance.\n     *\n     * @return array A structured array of addresses.\n     */\n    function parseAddressList($address = null, $default_domain = null, $nest_groups = null, $validate = null, $limit = null)\n    {\n        if (!isset($this) || !isset($this->mailRFC822)) {\n            $obj = new Mail_RFC822($address, $default_domain, $nest_groups, $validate, $limit);\n            return $obj->parseAddressList();\n        }\n\n        if (isset($address))        $this->address        = $address;\n        if (isset($default_domain)) $this->default_domain = $default_domain;\n        if (isset($nest_groups))    $this->nestGroups     = $nest_groups;\n        if (isset($validate))       $this->validate       = $validate;\n        if (isset($limit))          $this->limit          = $limit;\n\n        $this->structure  = array();\n        $this->addresses  = array();\n        $this->error      = null;\n        $this->index      = null;\n\n        // Unfold any long lines in $this->address.\n        $this->address = preg_replace('/\\r?\\n/', \"\\r\\n\", $this->address);\n        $this->address = preg_replace('/\\r\\n(\\t| )+/', ' ', $this->address);\n\n        while ($this->address = $this->_splitAddresses($this->address));\n\n        if ($this->address === false || isset($this->error)) {\n            require_once 'PEAR.php';\n            return PEAR::raiseError($this->error);\n        }\n\n        // Validate each address individually.  If we encounter an invalid\n        // address, stop iterating and return an error immediately.\n        foreach ($this->addresses as $address) {\n            $valid = $this->_validateAddress($address);\n\n            if ($valid === false || isset($this->error)) {\n                require_once 'PEAR.php';\n                return PEAR::raiseError($this->error);\n            }\n\n            if (!$this->nestGroups) {\n                $this->structure = array_merge($this->structure, $valid);\n            } else {\n                $this->structure[] = $valid;\n            }\n        }\n\n        return $this->structure;\n    }\n\n    /**\n     * Splits an address into separate addresses.\n     *\n     * @access private\n     * @param string $address The addresses to split.\n     * @return boolean Success or failure.\n     */\n    function _splitAddresses($address)\n    {\n        if (!empty($this->limit) && count($this->addresses) == $this->limit) {\n            return '';\n        }\n\n        if ($this->_isGroup($address) && !isset($this->error)) {\n            $split_char = ';';\n            $is_group   = true;\n        } elseif (!isset($this->error)) {\n            $split_char = ',';\n            $is_group   = false;\n        } elseif (isset($this->error)) {\n            return false;\n        }\n\n        // Split the string based on the above ten or so lines.\n        $parts  = explode($split_char, $address);\n        $string = $this->_splitCheck($parts, $split_char);\n\n        // If a group...\n        if ($is_group) {\n            // If $string does not contain a colon outside of\n            // brackets/quotes etc then something's fubar.\n\n            // First check there's a colon at all:\n            if (strpos($string, ':') === false) {\n                $this->error = 'Invalid address: ' . $string;\n                return false;\n            }\n\n            // Now check it's outside of brackets/quotes:\n            if (!$this->_splitCheck(explode(':', $string), ':')) {\n                return false;\n            }\n\n            // We must have a group at this point, so increase the counter:\n            $this->num_groups++;\n        }\n\n        // $string now contains the first full address/group.\n        // Add to the addresses array.\n        $this->addresses[] = array(\n                                   'address' => trim($string),\n                                   'group'   => $is_group\n                                   );\n\n        // Remove the now stored address from the initial line, the +1\n        // is to account for the explode character.\n        $address = trim(substr($address, strlen($string) + 1));\n\n        // If the next char is a comma and this was a group, then\n        // there are more addresses, otherwise, if there are any more\n        // chars, then there is another address.\n        if ($is_group && substr($address, 0, 1) == ','){\n            $address = trim(substr($address, 1));\n            return $address;\n\n        } elseif (strlen($address) > 0) {\n            return $address;\n\n        } else {\n            return '';\n        }\n\n        // If you got here then something's off\n        return false;\n    }\n\n    /**\n     * Checks for a group at the start of the string.\n     *\n     * @access private\n     * @param string $address The address to check.\n     * @return boolean Whether or not there is a group at the start of the string.\n     */\n    function _isGroup($address)\n    {\n        // First comma not in quotes, angles or escaped:\n        $parts  = explode(',', $address);\n        $string = $this->_splitCheck($parts, ',');\n\n        // Now we have the first address, we can reliably check for a\n        // group by searching for a colon that's not escaped or in\n        // quotes or angle brackets.\n        if (count($parts = explode(':', $string)) > 1) {\n            $string2 = $this->_splitCheck($parts, ':');\n            return ($string2 !== $string);\n        } else {\n            return false;\n        }\n    }\n\n    /**\n     * A common function that will check an exploded string.\n     *\n     * @access private\n     * @param array $parts The exloded string.\n     * @param string $char  The char that was exploded on.\n     * @return mixed False if the string contains unclosed quotes/brackets, or the string on success.\n     */\n    function _splitCheck($parts, $char)\n    {\n        $string = $parts[0];\n\n        for ($i = 0; $i < count($parts); $i++) {\n            if ($this->_hasUnclosedQuotes($string)\n                || $this->_hasUnclosedBrackets($string, '<>')\n                || $this->_hasUnclosedBrackets($string, '[]')\n                || $this->_hasUnclosedBrackets($string, '()')\n                || substr($string, -1) == '\\\\') {\n                if (isset($parts[$i + 1])) {\n                    $string = $string . $char . $parts[$i + 1];\n                } else {\n                    $this->error = 'Invalid address spec. Unclosed bracket or quotes';\n                    return false;\n                }\n            } else {\n                $this->index = $i;\n                break;\n            }\n        }\n\n        return $string;\n    }\n\n    /**\n     * Checks if a string has unclosed quotes or not.\n     *\n     * @access private\n     * @param string $string  The string to check.\n     * @return boolean  True if there are unclosed quotes inside the string,\n     *                  false otherwise.\n     */\n    function _hasUnclosedQuotes($string)\n    {\n        $string = trim($string);\n        $iMax = strlen($string);\n        $in_quote = false;\n        $i = $slashes = 0;\n\n        for (; $i < $iMax; ++$i) {\n            switch ($string[$i]) {\n            case '\\\\':\n                ++$slashes;\n                break;\n\n            case '\"':\n                if ($slashes % 2 == 0) {\n                    $in_quote = !$in_quote;\n                }\n                // Fall through to default action below.\n\n            default:\n                $slashes = 0;\n                break;\n            }\n        }\n\n        return $in_quote;\n    }\n\n    /**\n     * Checks if a string has an unclosed brackets or not. IMPORTANT:\n     * This function handles both angle brackets and square brackets;\n     *\n     * @access private\n     * @param string $string The string to check.\n     * @param string $chars  The characters to check for.\n     * @return boolean True if there are unclosed brackets inside the string, false otherwise.\n     */\n    function _hasUnclosedBrackets($string, $chars)\n    {\n        $num_angle_start = substr_count($string, $chars[0]);\n        $num_angle_end   = substr_count($string, $chars[1]);\n\n        $this->_hasUnclosedBracketsSub($string, $num_angle_start, $chars[0]);\n        $this->_hasUnclosedBracketsSub($string, $num_angle_end, $chars[1]);\n\n        if ($num_angle_start < $num_angle_end) {\n            $this->error = 'Invalid address spec. Unmatched quote or bracket (' . $chars . ')';\n            return false;\n        } else {\n            return ($num_angle_start > $num_angle_end);\n        }\n    }\n\n    /**\n     * Sub function that is used only by hasUnclosedBrackets().\n     *\n     * @access private\n     * @param string $string The string to check.\n     * @param integer &$num    The number of occurences.\n     * @param string $char   The character to count.\n     * @return integer The number of occurences of $char in $string, adjusted for backslashes.\n     */\n    function _hasUnclosedBracketsSub($string, &$num, $char)\n    {\n        $parts = explode($char, $string);\n        for ($i = 0; $i < count($parts); $i++){\n            if (substr($parts[$i], -1) == '\\\\' || $this->_hasUnclosedQuotes($parts[$i]))\n                $num--;\n            if (isset($parts[$i + 1]))\n                $parts[$i + 1] = $parts[$i] . $char . $parts[$i + 1];\n        }\n\n        return $num;\n    }\n\n    /**\n     * Function to begin checking the address.\n     *\n     * @access private\n     * @param string $address The address to validate.\n     * @return mixed False on failure, or a structured array of address information on success.\n     */\n    function _validateAddress($address)\n    {\n        $is_group = false;\n        $addresses = array();\n\n        if ($address['group']) {\n            $is_group = true;\n\n            // Get the group part of the name\n            $parts     = explode(':', $address['address']);\n            $groupname = $this->_splitCheck($parts, ':');\n            $structure = array();\n\n            // And validate the group part of the name.\n            if (!$this->_validatePhrase($groupname)){\n                $this->error = 'Group name did not validate.';\n                return false;\n            } else {\n                // Don't include groups if we are not nesting\n                // them. This avoids returning invalid addresses.\n                if ($this->nestGroups) {\n                    $structure = new stdClass;\n                    $structure->groupname = $groupname;\n                }\n            }\n\n            $address['address'] = ltrim(substr($address['address'], strlen($groupname . ':')));\n        }\n\n        // If a group then split on comma and put into an array.\n        // Otherwise, Just put the whole address in an array.\n        if ($is_group) {\n            while (strlen($address['address']) > 0) {\n                $parts       = explode(',', $address['address']);\n                $addresses[] = $this->_splitCheck($parts, ',');\n                $address['address'] = trim(substr($address['address'], strlen(end($addresses) . ',')));\n            }\n        } else {\n            $addresses[] = $address['address'];\n        }\n\n        // Check that $addresses is set, if address like this:\n        // Groupname:;\n        // Then errors were appearing.\n        if (!count($addresses)){\n            $this->error = 'Empty group.';\n            return false;\n        }\n\n        // Trim the whitespace from all of the address strings.\n        array_map('trim', $addresses);\n\n        // Validate each mailbox.\n        // Format could be one of: name <geezer@domain.com>\n        //                         geezer@domain.com\n        //                         geezer\n        // ... or any other format valid by RFC 822.\n        for ($i = 0; $i < count($addresses); $i++) {\n            if (!$this->validateMailbox($addresses[$i])) {\n                if (empty($this->error)) {\n                    $this->error = 'Validation failed for: ' . $addresses[$i];\n                }\n                return false;\n            }\n        }\n\n        // Nested format\n        if ($this->nestGroups) {\n            if ($is_group) {\n                $structure->addresses = $addresses;\n            } else {\n                $structure = $addresses[0];\n            }\n\n        // Flat format\n        } else {\n            if ($is_group) {\n                $structure = array_merge($structure, $addresses);\n            } else {\n                $structure = $addresses;\n            }\n        }\n\n        return $structure;\n    }\n\n    /**\n     * Function to validate a phrase.\n     *\n     * @access private\n     * @param string $phrase The phrase to check.\n     * @return boolean Success or failure.\n     */\n    function _validatePhrase($phrase)\n    {\n        // Splits on one or more Tab or space.\n        $parts = preg_split('/[ \\\\x09]+/', $phrase, -1, PREG_SPLIT_NO_EMPTY);\n\n        $phrase_parts = array();\n        while (count($parts) > 0){\n            $phrase_parts[] = $this->_splitCheck($parts, ' ');\n            for ($i = 0; $i < $this->index + 1; $i++)\n                array_shift($parts);\n        }\n\n        foreach ($phrase_parts as $part) {\n            // If quoted string:\n            if (substr($part, 0, 1) == '\"') {\n                if (!$this->_validateQuotedString($part)) {\n                    return false;\n                }\n                continue;\n            }\n\n            // Otherwise it's an atom:\n            if (!$this->_validateAtom($part)) return false;\n        }\n\n        return true;\n    }\n\n    /**\n     * Function to validate an atom which from rfc822 is:\n     * atom = 1*<any CHAR except specials, SPACE and CTLs>\n     *\n     * If validation ($this->validate) has been turned off, then\n     * validateAtom() doesn't actually check anything. This is so that you\n     * can split a list of addresses up before encoding personal names\n     * (umlauts, etc.), for example.\n     *\n     * @access private\n     * @param string $atom The string to check.\n     * @return boolean Success or failure.\n     */\n    function _validateAtom($atom)\n    {\n        if (!$this->validate) {\n            // Validation has been turned off; assume the atom is okay.\n            return true;\n        }\n\n        // Check for any char from ASCII 0 - ASCII 127\n        if (!preg_match('/^[\\\\x00-\\\\x7E]+$/i', $atom, $matches)) {\n            return false;\n        }\n\n        // Check for specials:\n        if (preg_match('/[][()<>@,;\\\\:\". ]/', $atom)) {\n            return false;\n        }\n\n        // Check for control characters (ASCII 0-31):\n        if (preg_match('/[\\\\x00-\\\\x1F]+/', $atom)) {\n            return false;\n        }\n\n        return true;\n    }\n\n    /**\n     * Function to validate quoted string, which is:\n     * quoted-string = <\"> *(qtext/quoted-pair) <\">\n     *\n     * @access private\n     * @param string $qstring The string to check\n     * @return boolean Success or failure.\n     */\n    function _validateQuotedString($qstring)\n    {\n        // Leading and trailing \"\n        $qstring = substr($qstring, 1, -1);\n\n        // Perform check, removing quoted characters first.\n        return !preg_match('/[\\x0D\\\\\\\\\"]/', preg_replace('/\\\\\\\\./', '', $qstring));\n    }\n\n    /**\n     * Function to validate a mailbox, which is:\n     * mailbox =   addr-spec         ; simple address\n     *           / phrase route-addr ; name and route-addr\n     *\n     * @access public\n     * @param string &$mailbox The string to check.\n     * @return boolean Success or failure.\n     */\n    function validateMailbox(&$mailbox)\n    {\n        // A couple of defaults.\n        $phrase  = '';\n        $comment = '';\n        $comments = array();\n\n        // Catch any RFC822 comments and store them separately.\n        $_mailbox = $mailbox;\n        while (strlen(trim($_mailbox)) > 0) {\n            $parts = explode('(', $_mailbox);\n            $before_comment = $this->_splitCheck($parts, '(');\n            if ($before_comment != $_mailbox) {\n                // First char should be a (.\n                $comment    = substr(str_replace($before_comment, '', $_mailbox), 1);\n                $parts      = explode(')', $comment);\n                $comment    = $this->_splitCheck($parts, ')');\n                $comments[] = $comment;\n\n                // +2 is for the brackets\n                $_mailbox = substr($_mailbox, strpos($_mailbox, '('.$comment)+strlen($comment)+2);\n            } else {\n                break;\n            }\n        }\n\n        foreach ($comments as $comment) {\n            $mailbox = str_replace(\"($comment)\", '', $mailbox);\n        }\n\n        $mailbox = trim($mailbox);\n\n        // Check for name + route-addr\n        if (substr($mailbox, -1) == '>' && substr($mailbox, 0, 1) != '<') {\n            $parts  = explode('<', $mailbox);\n            $name   = $this->_splitCheck($parts, '<');\n\n            $phrase     = trim($name);\n            $route_addr = trim(substr($mailbox, strlen($name.'<'), -1));\n\n            if ($this->_validatePhrase($phrase) === false || ($route_addr = $this->_validateRouteAddr($route_addr)) === false) {\n                return false;\n            }\n\n        // Only got addr-spec\n        } else {\n            // First snip angle brackets if present.\n            if (substr($mailbox, 0, 1) == '<' && substr($mailbox, -1) == '>') {\n                $addr_spec = substr($mailbox, 1, -1);\n            } else {\n                $addr_spec = $mailbox;\n            }\n\n            if (($addr_spec = $this->_validateAddrSpec($addr_spec)) === false) {\n                return false;\n            }\n        }\n\n        // Construct the object that will be returned.\n        $mbox = new stdClass();\n\n        // Add the phrase (even if empty) and comments\n        $mbox->personal = $phrase;\n        $mbox->comment  = isset($comments) ? $comments : array();\n\n        if (isset($route_addr)) {\n            $mbox->mailbox = $route_addr['local_part'];\n            $mbox->host    = $route_addr['domain'];\n            $route_addr['adl'] !== '' ? $mbox->adl = $route_addr['adl'] : '';\n        } else {\n            $mbox->mailbox = $addr_spec['local_part'];\n            $mbox->host    = $addr_spec['domain'];\n        }\n\n        $mailbox = $mbox;\n        return true;\n    }\n\n    /**\n     * This function validates a route-addr which is:\n     * route-addr = \"<\" [route] addr-spec \">\"\n     *\n     * Angle brackets have already been removed at the point of\n     * getting to this function.\n     *\n     * @access private\n     * @param string $route_addr The string to check.\n     * @return mixed False on failure, or an array containing validated address/route information on success.\n     */\n    function _validateRouteAddr($route_addr)\n    {\n        // Check for colon.\n        if (strpos($route_addr, ':') !== false) {\n            $parts = explode(':', $route_addr);\n            $route = $this->_splitCheck($parts, ':');\n        } else {\n            $route = $route_addr;\n        }\n\n        // If $route is same as $route_addr then the colon was in\n        // quotes or brackets or, of course, non existent.\n        if ($route === $route_addr){\n            unset($route);\n            $addr_spec = $route_addr;\n            if (($addr_spec = $this->_validateAddrSpec($addr_spec)) === false) {\n                return false;\n            }\n        } else {\n            // Validate route part.\n            if (($route = $this->_validateRoute($route)) === false) {\n                return false;\n            }\n\n            $addr_spec = substr($route_addr, strlen($route . ':'));\n\n            // Validate addr-spec part.\n            if (($addr_spec = $this->_validateAddrSpec($addr_spec)) === false) {\n                return false;\n            }\n        }\n\n        if (isset($route)) {\n            $return['adl'] = $route;\n        } else {\n            $return['adl'] = '';\n        }\n\n        $return = array_merge($return, $addr_spec);\n        return $return;\n    }\n\n    /**\n     * Function to validate a route, which is:\n     * route = 1#(\"@\" domain) \":\"\n     *\n     * @access private\n     * @param string $route The string to check.\n     * @return mixed False on failure, or the validated $route on success.\n     */\n    function _validateRoute($route)\n    {\n        // Split on comma.\n        $domains = explode(',', trim($route));\n\n        foreach ($domains as $domain) {\n            $domain = str_replace('@', '', trim($domain));\n            if (!$this->_validateDomain($domain)) return false;\n        }\n\n        return $route;\n    }\n\n    /**\n     * Function to validate a domain, though this is not quite what\n     * you expect of a strict internet domain.\n     *\n     * domain = sub-domain *(\".\" sub-domain)\n     *\n     * @access private\n     * @param string $domain The string to check.\n     * @return mixed False on failure, or the validated domain on success.\n     */\n    function _validateDomain($domain)\n    {\n        // Note the different use of $subdomains and $sub_domains\n        $subdomains = explode('.', $domain);\n\n        while (count($subdomains) > 0) {\n            $sub_domains[] = $this->_splitCheck($subdomains, '.');\n            for ($i = 0; $i < $this->index + 1; $i++)\n                array_shift($subdomains);\n        }\n\n        foreach ($sub_domains as $sub_domain) {\n            if (!$this->_validateSubdomain(trim($sub_domain)))\n                return false;\n        }\n\n        // Managed to get here, so return input.\n        return $domain;\n    }\n\n    /**\n     * Function to validate a subdomain:\n     *   subdomain = domain-ref / domain-literal\n     *\n     * @access private\n     * @param string $subdomain The string to check.\n     * @return boolean Success or failure.\n     */\n    function _validateSubdomain($subdomain)\n    {\n        if (preg_match('|^\\[(.*)]$|', $subdomain, $arr)){\n            if (!$this->_validateDliteral($arr[1])) return false;\n        } else {\n            if (!$this->_validateAtom($subdomain)) return false;\n        }\n\n        // Got here, so return successful.\n        return true;\n    }\n\n    /**\n     * Function to validate a domain literal:\n     *   domain-literal =  \"[\" *(dtext / quoted-pair) \"]\"\n     *\n     * @access private\n     * @param string $dliteral The string to check.\n     * @return boolean Success or failure.\n     */\n    function _validateDliteral($dliteral)\n    {\n        return !preg_match('/(.)[][\\x0D\\\\\\\\]/', $dliteral, $matches) && $matches[1] != '\\\\';\n    }\n\n    /**\n     * Function to validate an addr-spec.\n     *\n     * addr-spec = local-part \"@\" domain\n     *\n     * @access private\n     * @param string $addr_spec The string to check.\n     * @return mixed False on failure, or the validated addr-spec on success.\n     */\n    function _validateAddrSpec($addr_spec)\n    {\n        $addr_spec = trim($addr_spec);\n\n        // Split on @ sign if there is one.\n        if (strpos($addr_spec, '@') !== false) {\n            $parts      = explode('@', $addr_spec);\n            $local_part = $this->_splitCheck($parts, '@');\n            $domain     = substr($addr_spec, strlen($local_part . '@'));\n\n        // No @ sign so assume the default domain.\n        } else {\n            $local_part = $addr_spec;\n            $domain     = $this->default_domain;\n        }\n\n        if (($local_part = $this->_validateLocalPart($local_part)) === false) return false;\n        if (($domain     = $this->_validateDomain($domain)) === false) return false;\n\n        // Got here so return successful.\n        return array('local_part' => $local_part, 'domain' => $domain);\n    }\n\n    /**\n     * Function to validate the local part of an address:\n     *   local-part = word *(\".\" word)\n     *\n     * @access private\n     * @param string $local_part\n     * @return mixed False on failure, or the validated local part on success.\n     */\n    function _validateLocalPart($local_part)\n    {\n        $parts = explode('.', $local_part);\n        $words = array();\n\n        // Split the local_part into words.\n        while (count($parts) > 0){\n            $words[] = $this->_splitCheck($parts, '.');\n            for ($i = 0; $i < $this->index + 1; $i++) {\n                array_shift($parts);\n            }\n        }\n\n        // Validate each word.\n        foreach ($words as $word) {\n            // If this word contains an unquoted space, it is invalid. (6.2.4)\n            if (strpos($word, ' ') && $word[0] !== '\"')\n            {\n                return false;\n            }\n\n            if ($this->_validatePhrase(trim($word)) === false) return false;\n        }\n\n        // Managed to get here, so return the input.\n        return $local_part;\n    }\n\n    /**\n     * Returns an approximate count of how many addresses are in the\n     * given string. This is APPROXIMATE as it only splits based on a\n     * comma which has no preceding backslash. Could be useful as\n     * large amounts of addresses will end up producing *large*\n     * structures when used with parseAddressList().\n     *\n     * @param  string $data Addresses to count\n     * @return int          Approximate count\n     */\n    function approximateCount($data)\n    {\n        return count(preg_split('/(?<!\\\\\\\\),/', $data));\n    }\n\n    /**\n     * This is a email validating function separate to the rest of the\n     * class. It simply validates whether an email is of the common\n     * internet form: <user>@<domain>. This can be sufficient for most\n     * people. Optional stricter mode can be utilised which restricts\n     * mailbox characters allowed to alphanumeric, full stop, hyphen\n     * and underscore.\n     *\n     * @param  string  $data   Address to check\n     * @param  boolean $strict Optional stricter mode\n     * @return mixed           False if it fails, an indexed array\n     *                         username/domain if it matches\n     */\n    function isValidInetAddress($data, $strict = false)\n    {\n        $regex = $strict ? '/^([.0-9a-z_+-]+)@(([0-9a-z-]+\\.)+[0-9a-z]{2,})$/i' : '/^([*+!.&#$|\\'\\\\%\\/0-9a-z^_`{}=?~:-]+)@(([0-9a-z-]+\\.)+[0-9a-z]{2,})$/i';\n        if (preg_match($regex, trim($data), $matches)) {\n            return array($matches[1], $matches[2]);\n        } else {\n            return false;\n        }\n    }\n\n}\n"
  },
  {
    "path": "newscoop/include/Mail/mail.php",
    "content": "<?php\n/**\n * internal PHP-mail() implementation of the PEAR Mail:: interface.\n *\n * PHP versions 4 and 5\n *\n * LICENSE:\n *\n * Copyright (c) 2010 Chuck Hagenbuch\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions\n * are met:\n *\n * o Redistributions of source code must retain the above copyright\n *   notice, this list of conditions and the following disclaimer.\n * o Redistributions in binary form must reproduce the above copyright\n *   notice, this list of conditions and the following disclaimer in the\n *   documentation and/or other materials provided with the distribution.\n * o The names of the authors may not be used to endorse or promote\n *   products derived from this software without specific prior written\n *   permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n * \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * @category    Mail\n * @package     Mail\n * @author      Chuck Hagenbuch <chuck@horde.org> \n * @copyright   2010 Chuck Hagenbuch\n * @license     http://opensource.org/licenses/bsd-license.php New BSD License\n * @version     CVS: $Id: mail.php 294747 2010-02-08 08:18:33Z clockwerx $\n * @link        http://pear.php.net/package/Mail/\n */\n\n/**\n * internal PHP-mail() implementation of the PEAR Mail:: interface.\n * @package Mail\n * @version $Revision: 294747 $\n */\nclass Mail_mail extends Mail {\n\n    /**\n     * Any arguments to pass to the mail() function.\n     * @var string\n     */\n    var $_params = '';\n\n    /**\n     * Constructor.\n     *\n     * Instantiates a new Mail_mail:: object based on the parameters\n     * passed in.\n     *\n     * @param array $params Extra arguments for the mail() function.\n     */\n    function Mail_mail($params = null)\n    {\n        // The other mail implementations accept parameters as arrays.\n        // In the interest of being consistent, explode an array into\n        // a string of parameter arguments.\n        if (is_array($params)) {\n            $this->_params = join(' ', $params);\n        } else {\n            $this->_params = $params;\n        }\n\n        /* Because the mail() function may pass headers as command\n         * line arguments, we can't guarantee the use of the standard\n         * \"\\r\\n\" separator.  Instead, we use the system's native line\n         * separator. */\n        if (defined('PHP_EOL')) {\n            $this->sep = PHP_EOL;\n        } else {\n            $this->sep = (strpos(PHP_OS, 'WIN') === false) ? \"\\n\" : \"\\r\\n\";\n        }\n    }\n\n    /**\n     * Implements Mail_mail::send() function using php's built-in mail()\n     * command.\n     *\n     * @param mixed $recipients Either a comma-seperated list of recipients\n     *              (RFC822 compliant), or an array of recipients,\n     *              each RFC822 valid. This may contain recipients not\n     *              specified in the headers, for Bcc:, resending\n     *              messages, etc.\n     *\n     * @param array $headers The array of headers to send with the mail, in an\n     *              associative array, where the array key is the\n     *              header name (ie, 'Subject'), and the array value\n     *              is the header value (ie, 'test'). The header\n     *              produced from those values would be 'Subject:\n     *              test'.\n     *\n     * @param string $body The full text of the message body, including any\n     *               Mime parts, etc.\n     *\n     * @return mixed Returns true on success, or a PEAR_Error\n     *               containing a descriptive error message on\n     *               failure.\n     *\n     * @access public\n     */\n    function send($recipients, $headers, $body)\n    {\n        if (!is_array($headers)) {\n            return PEAR::raiseError('$headers must be an array');\n        }\n\n        $result = $this->_sanitizeHeaders($headers);\n        if (is_a($result, 'PEAR_Error')) {\n            return $result;\n        }\n\n        // If we're passed an array of recipients, implode it.\n        if (is_array($recipients)) {\n            $recipients = implode(', ', $recipients);\n        }\n\n        // Get the Subject out of the headers array so that we can\n        // pass it as a seperate argument to mail().\n        $subject = '';\n        if (isset($headers['Subject'])) {\n            $subject = $headers['Subject'];\n            unset($headers['Subject']);\n        }\n\n        // Also remove the To: header.  The mail() function will add its own\n        // To: header based on the contents of $recipients.\n        unset($headers['To']);\n\n        // Flatten the headers out.\n        $headerElements = $this->prepareHeaders($headers);\n        if (is_a($headerElements, 'PEAR_Error')) {\n            return $headerElements;\n        }\n        list(, $text_headers) = $headerElements;\n\n        // We only use mail()'s optional fifth parameter if the additional\n        // parameters have been provided and we're not running in safe mode.\n        if (empty($this->_params) || ini_get('safe_mode')) {\n            $result = mail($recipients, $subject, $body, $text_headers);\n        } else {\n            $result = mail($recipients, $subject, $body, $text_headers,\n                           $this->_params);\n        }\n\n        // If the mail() function returned failure, we need to create a\n        // PEAR_Error object and return it instead of the boolean result.\n        if ($result === false) {\n            $result = PEAR::raiseError('mail() returned failure');\n        }\n\n        return $result;\n    }\n\n}\n"
  },
  {
    "path": "newscoop/include/Mail/mime.php",
    "content": "<?php\n/**\n * The Mail_Mime class is used to create MIME E-mail messages\n *\n * The Mail_Mime class provides an OO interface to create MIME\n * enabled email messages. This way you can create emails that\n * contain plain-text bodies, HTML bodies, attachments, inline\n * images and specific headers.\n *\n * Compatible with PHP versions 4 and 5\n *\n * LICENSE: This LICENSE is in the BSD license style.\n * Copyright (c) 2002-2003, Richard Heyes <richard@phpguru.org>\n * Copyright (c) 2003-2006, PEAR <pear-group@php.net>\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or\n * without modification, are permitted provided that the following\n * conditions are met:\n *\n * - Redistributions of source code must retain the above copyright\n *   notice, this list of conditions and the following disclaimer.\n * - Redistributions in binary form must reproduce the above copyright\n *   notice, this list of conditions and the following disclaimer in the\n *   documentation and/or other materials provided with the distribution.\n * - Neither the name of the authors, nor the names of its contributors \n *   may be used to endorse or promote products derived from this \n *   software without specific prior written permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n * THE POSSIBILITY OF SUCH DAMAGE.\n *\n * @category  Mail\n * @package   Mail_Mime\n * @author    Richard Heyes  <richard@phpguru.org>\n * @author    Tomas V.V. Cox <cox@idecnet.com>\n * @author    Cipriano Groenendal <cipri@php.net>\n * @author    Sean Coates <sean@php.net>\n * @author    Aleksander Machniak <alec@php.net>\n * @copyright 2003-2006 PEAR <pear-group@php.net>\n * @license   http://www.opensource.org/licenses/bsd-license.php BSD License\n * @version   CVS: $Id: mime.php 300942 2010-07-02 12:27:56Z alec $\n * @link      http://pear.php.net/package/Mail_mime\n *\n *            This class is based on HTML Mime Mail class from\n *            Richard Heyes <richard@phpguru.org> which was based also\n *            in the mime_mail.class by Tobias Ratschiller <tobias@dnet.it>\n *            and Sascha Schumann <sascha@schumann.cx>\n */\n\n\n/**\n * require PEAR\n *\n * This package depends on PEAR to raise errors.\n */\nrequire_once 'PEAR.php';\n\n/**\n * require Mail_mimePart\n *\n * Mail_mimePart contains the code required to\n * create all the different parts a mail can\n * consist of.\n */\nrequire_once 'Mail/mimePart.php';\n\n\n/**\n * The Mail_Mime class provides an OO interface to create MIME\n * enabled email messages. This way you can create emails that\n * contain plain-text bodies, HTML bodies, attachments, inline\n * images and specific headers.\n *\n * @category  Mail\n * @package   Mail_Mime\n * @author    Richard Heyes  <richard@phpguru.org>\n * @author    Tomas V.V. Cox <cox@idecnet.com>\n * @author    Cipriano Groenendal <cipri@php.net>\n * @author    Sean Coates <sean@php.net>\n * @copyright 2003-2006 PEAR <pear-group@php.net>\n * @license   http://www.opensource.org/licenses/bsd-license.php BSD License\n * @version   Release: @package_version@\n * @link      http://pear.php.net/package/Mail_mime\n */\nclass Mail_mime\n{\n    /**\n     * Contains the plain text part of the email\n     *\n     * @var string\n     * @access private\n     */\n    var $_txtbody;\n\n    /**\n     * Contains the html part of the email\n     *\n     * @var string\n     * @access private\n     */\n    var $_htmlbody;\n\n    /**\n     * list of the attached images\n     *\n     * @var array\n     * @access private\n     */\n    var $_html_images = array();\n\n    /**\n     * list of the attachements\n     *\n     * @var array\n     * @access private\n     */\n    var $_parts = array();\n\n    /**\n     * Headers for the mail\n     *\n     * @var array\n     * @access private\n     */\n    var $_headers = array();\n\n    /**\n     * Build parameters\n     *\n     * @var array\n     * @access private\n     */\n    var $_build_params = array(\n        // What encoding to use for the headers\n        // Options: quoted-printable or base64\n        'head_encoding' => 'quoted-printable',\n        // What encoding to use for plain text\n        // Options: 7bit, 8bit, base64, or quoted-printable\n        'text_encoding' => 'quoted-printable',\n        // What encoding to use for html\n        // Options: 7bit, 8bit, base64, or quoted-printable\n        'html_encoding' => 'quoted-printable',\n        // The character set to use for html\n        'html_charset'  => 'ISO-8859-1',\n        // The character set to use for text\n        'text_charset'  => 'ISO-8859-1',\n        // The character set to use for headers\n        'head_charset'  => 'ISO-8859-1',\n        // End-of-line sequence\n        'eol'           => \"\\r\\n\",\n        // Delay attachment files IO until building the message\n        'delay_file_io' => false\n    );\n\n    /**\n     * Constructor function\n     *\n     * @param mixed $params Build parameters that change the way the email\n     *                      is built. Should be an associative array.\n     *                      See $_build_params.\n     *\n     * @return void\n     * @access public\n     */\n    function Mail_mime($params = array())\n    {\n        // Backward-compatible EOL setting\n        if (is_string($params)) {\n            $this->_build_params['eol'] = $params;\n        } else if (defined('MAIL_MIME_CRLF') && !isset($params['eol'])) {\n            $this->_build_params['eol'] = MAIL_MIME_CRLF;\n        }\n\n        // Update build parameters\n        if (!empty($params) && is_array($params)) {\n            while (list($key, $value) = each($params)) {\n                $this->_build_params[$key] = $value;\n            }\n        }\n    }\n\n    /**\n     * Set build parameter value\n     *\n     * @param string $name  Parameter name\n     * @param string $value Parameter value\n     *\n     * @return void\n     * @access public\n     * @since 1.6.0\n     */\n    function setParam($name, $value)\n    {\n        $this->_build_params[$name] = $value;\n    }\n\n    /**\n     * Get build parameter value\n     *\n     * @param string $name Parameter name\n     *\n     * @return mixed Parameter value\n     * @access public\n     * @since 1.6.0\n     */\n    function getParam($name)\n    {\n        return isset($this->_build_params[$name]) ? $this->_build_params[$name] : null;\n    }\n\n    /**\n     * Accessor function to set the body text. Body text is used if\n     * it's not an html mail being sent or else is used to fill the\n     * text/plain part that emails clients who don't support\n     * html should show.\n     *\n     * @param string $data   Either a string or\n     *                       the file name with the contents\n     * @param bool   $isfile If true the first param should be treated\n     *                       as a file name, else as a string (default)\n     * @param bool   $append If true the text or file is appended to\n     *                       the existing body, else the old body is\n     *                       overwritten\n     *\n     * @return mixed         True on success or PEAR_Error object\n     * @access public\n     */\n    function setTXTBody($data, $isfile = false, $append = false)\n    {\n        if (!$isfile) {\n            if (!$append) {\n                $this->_txtbody = $data;\n            } else {\n                $this->_txtbody .= $data;\n            }\n        } else {\n            $cont = $this->_file2str($data);\n            if (PEAR::isError($cont)) {\n                return $cont;\n            }\n            if (!$append) {\n                $this->_txtbody = $cont;\n            } else {\n                $this->_txtbody .= $cont;\n            }\n        }\n        return true;\n    }\n\n    /**\n     * Get message text body\n     *\n     * @return string Text body\n     * @access public\n     * @since 1.6.0\n     */\n    function getTXTBody()\n    {\n        return $this->_txtbody;\n    }\n\n    /**\n     * Adds a html part to the mail.\n     *\n     * @param string $data   Either a string or the file name with the\n     *                       contents\n     * @param bool   $isfile A flag that determines whether $data is a\n     *                       filename, or a string(false, default)\n     *\n     * @return bool          True on success\n     * @access public\n     */\n    function setHTMLBody($data, $isfile = false)\n    {\n        if (!$isfile) {\n            $this->_htmlbody = $data;\n        } else {\n            $cont = $this->_file2str($data);\n            if (PEAR::isError($cont)) {\n                return $cont;\n            }\n            $this->_htmlbody = $cont;\n        }\n\n        return true;\n    }\n\n    /**\n     * Get message HTML body\n     *\n     * @return string HTML body\n     * @access public\n     * @since 1.6.0\n     */\n    function getHTMLBody()\n    {\n        return $this->_htmlbody;\n    }\n\n    /**\n     * Adds an image to the list of embedded images.\n     *\n     * @param string $file       The image file name OR image data itself\n     * @param string $c_type     The content type\n     * @param string $name       The filename of the image.\n     *                           Only used if $file is the image data.\n     * @param bool   $isfile     Whether $file is a filename or not.\n     *                           Defaults to true\n     * @param string $content_id Desired Content-ID of MIME part\n     *                           Defaults to generated unique ID\n     *\n     * @return bool          True on success\n     * @access public\n     */\n    function addHTMLImage($file,\n        $c_type='application/octet-stream',\n        $name = '',\n        $isfile = true,\n        $content_id = null\n    ) {\n        $bodyfile = null;\n\n        if ($isfile) {\n            // Don't load file into memory\n            if ($this->_build_params['delay_file_io']) {\n                $filedata = null;\n                $bodyfile = $file;\n            } else {\n                if (PEAR::isError($filedata = $this->_file2str($file))) {\n                    return $filedata;\n                }\n            }\n            $filename = ($name ? $name : $file);\n        } else {\n            $filedata = $file;\n            $filename = $name;\n        }\n\n        if (!$content_id) {\n            $content_id = md5(uniqid(time()));\n        }\n\n        $this->_html_images[] = array(\n            'body'      => $filedata,\n            'body_file' => $bodyfile,\n            'name'      => $filename,\n            'c_type'    => $c_type,\n            'cid'       => $content_id\n        );\n\n        return true;\n    }\n\n    /**\n     * Adds a file to the list of attachments.\n     *\n     * @param string $file        The file name of the file to attach\n     *                            OR the file contents itself\n     * @param string $c_type      The content type\n     * @param string $name        The filename of the attachment\n     *                            Only use if $file is the contents\n     * @param bool   $isfile      Whether $file is a filename or not\n     *                            Defaults to true\n     * @param string $encoding    The type of encoding to use.\n     *                            Defaults to base64.\n     *                            Possible values: 7bit, 8bit, base64, \n     *                            or quoted-printable.\n     * @param string $disposition The content-disposition of this file\n     *                            Defaults to attachment.\n     *                            Possible values: attachment, inline.\n     * @param string $charset     The character set used in the filename\n     *                            of this attachment.\n     * @param string $language    The language of the attachment\n     * @param string $location    The RFC 2557.4 location of the attachment\n     * @param string $n_encoding  Encoding for attachment name (Content-Type)\n     *                            By default filenames are encoded using RFC2231 method\n     *                            Here you can set RFC2047 encoding (quoted-printable\n     *                            or base64) instead\n     * @param string $f_encoding  Encoding for attachment filename (Content-Disposition)\n     *                            See $n_encoding description\n     * @param string $description Content-Description header\n     *\n     * @return mixed              True on success or PEAR_Error object\n     * @access public\n     */\n    function addAttachment($file,\n        $c_type      = 'application/octet-stream',\n        $name        = '',\n        $isfile      = true,\n        $encoding    = 'base64',\n        $disposition = 'attachment',\n        $charset     = '',\n        $language    = '',\n        $location    = '',\n        $n_encoding  = null,\n        $f_encoding  = null,\n        $description = ''\n    ) {\n        $bodyfile = null;\n\n        if ($isfile) {\n            // Don't load file into memory\n            if ($this->_build_params['delay_file_io']) {\n                $filedata = null;\n                $bodyfile = $file;\n            } else {\n                if (PEAR::isError($filedata = $this->_file2str($file))) {\n                    return $filedata;\n                }\n            }\n            // Force the name the user supplied, otherwise use $file\n            $filename = ($name ? $name : $file);\n        } else {\n            $filedata = $file;\n            $filename = $name;\n        }\n\n        if (!strlen($filename)) {\n            $msg = \"The supplied filename for the attachment can't be empty\";\n            $err = PEAR::raiseError($msg);\n            return $err;\n        }\n        $filename = $this->_basename($filename);\n\n        $this->_parts[] = array(\n            'body'        => $filedata,\n            'body_file'   => $bodyfile,\n            'name'        => $filename,\n            'c_type'      => $c_type,\n            'encoding'    => $encoding,\n            'charset'     => $charset,\n            'language'    => $language,\n            'location'    => $location,\n            'disposition' => $disposition,\n            'description' => $description,\n            'name_encoding'     => $n_encoding,\n            'filename_encoding' => $f_encoding\n        );\n\n        return true;\n    }\n\n    /**\n     * Get the contents of the given file name as string\n     *\n     * @param string $file_name Path of file to process\n     *\n     * @return string           Contents of $file_name\n     * @access private\n     */\n    function &_file2str($file_name)\n    {\n        // Check state of file and raise an error properly\n        if (!file_exists($file_name)) {\n            $err = PEAR::raiseError('File not found: ' . $file_name);\n            return $err;\n        }\n        if (!is_file($file_name)) {\n            $err = PEAR::raiseError('Not a regular file: ' . $file_name);\n            return $err;\n        }\n        if (!is_readable($file_name)) {\n            $err = PEAR::raiseError('File is not readable: ' . $file_name);\n            return $err;\n        }\n\n        // Temporarily reset magic_quotes_runtime and read file contents\n        if ($magic_quote_setting = get_magic_quotes_runtime()) {\n            @ini_set('magic_quotes_runtime', 0);\n        }\n        $cont = file_get_contents($file_name);\n        if ($magic_quote_setting) {\n            @ini_set('magic_quotes_runtime', $magic_quote_setting);\n        }\n\n        return $cont;\n    }\n\n    /**\n     * Adds a text subpart to the mimePart object and\n     * returns it during the build process.\n     *\n     * @param mixed  &$obj The object to add the part to, or\n     *                     null if a new object is to be created.\n     * @param string $text The text to add.\n     *\n     * @return object      The text mimePart object\n     * @access private\n     */\n    function &_addTextPart(&$obj, $text)\n    {\n        $params['content_type'] = 'text/plain';\n        $params['encoding']     = $this->_build_params['text_encoding'];\n        $params['charset']      = $this->_build_params['text_charset'];\n        $params['eol']          = $this->_build_params['eol'];\n\n        if (is_object($obj)) {\n            $ret = $obj->addSubpart($text, $params);\n            return $ret;\n        } else {\n            $ret = new Mail_mimePart($text, $params);\n            return $ret;\n        }\n    }\n\n    /**\n     * Adds a html subpart to the mimePart object and\n     * returns it during the build process.\n     *\n     * @param mixed &$obj The object to add the part to, or\n     *                    null if a new object is to be created.\n     *\n     * @return object     The html mimePart object\n     * @access private\n     */\n    function &_addHtmlPart(&$obj)\n    {\n        $params['content_type'] = 'text/html';\n        $params['encoding']     = $this->_build_params['html_encoding'];\n        $params['charset']      = $this->_build_params['html_charset'];\n        $params['eol']          = $this->_build_params['eol'];\n\n        if (is_object($obj)) {\n            $ret = $obj->addSubpart($this->_htmlbody, $params);\n            return $ret;\n        } else {\n            $ret = new Mail_mimePart($this->_htmlbody, $params);\n            return $ret;\n        }\n    }\n\n    /**\n     * Creates a new mimePart object, using multipart/mixed as\n     * the initial content-type and returns it during the\n     * build process.\n     *\n     * @return object The multipart/mixed mimePart object\n     * @access private\n     */\n    function &_addMixedPart()\n    {\n        $params                 = array();\n        $params['content_type'] = 'multipart/mixed';\n        $params['eol']          = $this->_build_params['eol'];\n\n        // Create empty multipart/mixed Mail_mimePart object to return\n        $ret = new Mail_mimePart('', $params);\n        return $ret;\n    }\n\n    /**\n     * Adds a multipart/alternative part to a mimePart\n     * object (or creates one), and returns it during\n     * the build process.\n     *\n     * @param mixed &$obj The object to add the part to, or\n     *                    null if a new object is to be created.\n     *\n     * @return object     The multipart/mixed mimePart object\n     * @access private\n     */\n    function &_addAlternativePart(&$obj)\n    {\n        $params['content_type'] = 'multipart/alternative';\n        $params['eol']          = $this->_build_params['eol'];\n\n        if (is_object($obj)) {\n            return $obj->addSubpart('', $params);\n        } else {\n            $ret = new Mail_mimePart('', $params);\n            return $ret;\n        }\n    }\n\n    /**\n     * Adds a multipart/related part to a mimePart\n     * object (or creates one), and returns it during\n     * the build process.\n     *\n     * @param mixed &$obj The object to add the part to, or\n     *                    null if a new object is to be created\n     *\n     * @return object     The multipart/mixed mimePart object\n     * @access private\n     */\n    function &_addRelatedPart(&$obj)\n    {\n        $params['content_type'] = 'multipart/related';\n        $params['eol']          = $this->_build_params['eol'];\n\n        if (is_object($obj)) {\n            return $obj->addSubpart('', $params);\n        } else {\n            $ret = new Mail_mimePart('', $params);\n            return $ret;\n        }\n    }\n\n    /**\n     * Adds an html image subpart to a mimePart object\n     * and returns it during the build process.\n     *\n     * @param object &$obj  The mimePart to add the image to\n     * @param array  $value The image information\n     *\n     * @return object       The image mimePart object\n     * @access private\n     */\n    function &_addHtmlImagePart(&$obj, $value)\n    {\n        $params['content_type'] = $value['c_type'];\n        $params['encoding']     = 'base64';\n        $params['disposition']  = 'inline';\n        $params['dfilename']    = $value['name'];\n        $params['cid']          = $value['cid'];\n        $params['body_file']    = $value['body_file'];\n        $params['eol']          = $this->_build_params['eol'];\n\n        if (!empty($value['name_encoding'])) {\n            $params['name_encoding'] = $value['name_encoding'];\n        }\n        if (!empty($value['filename_encoding'])) {\n            $params['filename_encoding'] = $value['filename_encoding'];\n        }\n\n        $ret = $obj->addSubpart($value['body'], $params);\n        return $ret;\n    }\n\n    /**\n     * Adds an attachment subpart to a mimePart object\n     * and returns it during the build process.\n     *\n     * @param object &$obj  The mimePart to add the image to\n     * @param array  $value The attachment information\n     *\n     * @return object       The image mimePart object\n     * @access private\n     */\n    function &_addAttachmentPart(&$obj, $value)\n    {\n        $params['eol']          = $this->_build_params['eol'];\n        $params['dfilename']    = $value['name'];\n        $params['encoding']     = $value['encoding'];\n        $params['content_type'] = $value['c_type'];\n        $params['body_file']    = $value['body_file'];\n        $params['disposition']  = isset($value['disposition']) ? \n                                  $value['disposition'] : 'attachment';\n        if ($value['charset']) {\n            $params['charset'] = $value['charset'];\n        }\n        if ($value['language']) {\n            $params['language'] = $value['language'];\n        }\n        if ($value['location']) {\n            $params['location'] = $value['location'];\n        }\n        if (!empty($value['name_encoding'])) {\n            $params['name_encoding'] = $value['name_encoding'];\n        }\n        if (!empty($value['filename_encoding'])) {\n            $params['filename_encoding'] = $value['filename_encoding'];\n        }\n        if (!empty($value['description'])) {\n            $params['description'] = $value['description'];\n        }\n\n        $ret = $obj->addSubpart($value['body'], $params);\n        return $ret;\n    }\n\n    /**\n     * Returns the complete e-mail, ready to send using an alternative\n     * mail delivery method. Note that only the mailpart that is made\n     * with Mail_Mime is created. This means that,\n     * YOU WILL HAVE NO TO: HEADERS UNLESS YOU SET IT YOURSELF \n     * using the $headers parameter!\n     * \n     * @param string $separation The separation between these two parts.\n     * @param array  $params     The Build parameters passed to the\n     *                           &get() function. See &get for more info.\n     * @param array  $headers    The extra headers that should be passed\n     *                           to the &headers() function.\n     *                           See that function for more info.\n     * @param bool   $overwrite  Overwrite the existing headers with new.\n     *\n     * @return mixed The complete e-mail or PEAR error object\n     * @access public\n     */\n    function getMessage($separation = null, $params = null, $headers = null,\n        $overwrite = false\n    ) {\n        if ($separation === null) {\n            $separation = $this->_build_params['eol'];\n        }\n\n        $body = $this->get($params);\n\n        if (PEAR::isError($body)) {\n            return $body;\n        }\n\n        $head = $this->txtHeaders($headers, $overwrite);\n        $mail = $head . $separation . $body;\n        return $mail;\n    }\n\n    /**\n     * Returns the complete e-mail body, ready to send using an alternative\n     * mail delivery method.\n     * \n     * @param array $params The Build parameters passed to the\n     *                      &get() function. See &get for more info.\n     *\n     * @return mixed The e-mail body or PEAR error object\n     * @access public\n     * @since 1.6.0\n     */\n    function getMessageBody($params = null)\n    {\n        return $this->get($params, null, true);\n    }\n\n    /**\n     * Writes (appends) the complete e-mail into file.\n     * \n     * @param string $filename  Output file location\n     * @param array  $params    The Build parameters passed to the\n     *                          &get() function. See &get for more info.\n     * @param array  $headers   The extra headers that should be passed\n     *                          to the &headers() function.\n     *                          See that function for more info.\n     * @param bool   $overwrite Overwrite the existing headers with new.\n     *\n     * @return mixed True or PEAR error object\n     * @access public\n     * @since 1.6.0\n     */\n    function saveMessage($filename, $params = null, $headers = null, $overwrite = false)\n    {\n        // Check state of file and raise an error properly\n        if (file_exists($filename) && !is_writable($filename)) {\n            $err = PEAR::raiseError('File is not writable: ' . $filename);\n            return $err;\n        }\n\n        // Temporarily reset magic_quotes_runtime and read file contents\n        if ($magic_quote_setting = get_magic_quotes_runtime()) {\n            @ini_set('magic_quotes_runtime', 0);\n        }\n\n        if (!($fh = fopen($filename, 'ab'))) {\n            $err = PEAR::raiseError('Unable to open file: ' . $filename);\n            return $err;\n        }\n\n        // Write message headers into file (skipping Content-* headers)\n        $head = $this->txtHeaders($headers, $overwrite, true);\n        if (fwrite($fh, $head) === false) {\n            $err = PEAR::raiseError('Error writing to file: ' . $filename);\n            return $err;\n        }\n\n        fclose($fh);\n\n        if ($magic_quote_setting) {\n            @ini_set('magic_quotes_runtime', $magic_quote_setting);\n        }\n\n        // Write the rest of the message into file\n        $res = $this->get($params, $filename);\n\n        return $res ? $res : true;\n    }\n\n    /**\n     * Writes (appends) the complete e-mail body into file.\n     * \n     * @param string $filename Output file location\n     * @param array  $params   The Build parameters passed to the\n     *                         &get() function. See &get for more info.\n     *\n     * @return mixed True or PEAR error object\n     * @access public\n     * @since 1.6.0\n     */\n    function saveMessageBody($filename, $params = null)\n    {\n        // Check state of file and raise an error properly\n        if (file_exists($filename) && !is_writable($filename)) {\n            $err = PEAR::raiseError('File is not writable: ' . $filename);\n            return $err;\n        }\n\n        // Temporarily reset magic_quotes_runtime and read file contents\n        if ($magic_quote_setting = get_magic_quotes_runtime()) {\n            @ini_set('magic_quotes_runtime', 0);\n        }\n\n        if (!($fh = fopen($filename, 'ab'))) {\n            $err = PEAR::raiseError('Unable to open file: ' . $filename);\n            return $err;\n        }\n\n        // Write the rest of the message into file\n        $res = $this->get($params, $filename, true);\n\n        return $res ? $res : true;\n    }\n\n    /**\n     * Builds the multipart message from the list ($this->_parts) and\n     * returns the mime content.\n     *\n     * @param array    $params    Build parameters that change the way the email\n     *                            is built. Should be associative. See $_build_params.\n     * @param resource $filename  Output file where to save the message instead of\n     *                            returning it\n     * @param boolean  $skip_head True if you want to return/save only the message\n     *                            without headers\n     *\n     * @return mixed The MIME message content string, null or PEAR error object\n     * @access public\n     */\n    function &get($params = null, $filename = null, $skip_head = false)\n    {\n        if (isset($params)) {\n            while (list($key, $value) = each($params)) {\n                $this->_build_params[$key] = $value;\n            }\n        }\n\n        if (isset($this->_headers['From'])) {\n            // Bug #11381: Illegal characters in domain ID\n            if (preg_match('#(@[0-9a-zA-Z\\-\\.]+)#', $this->_headers['From'], $matches)) {\n                $domainID = $matches[1];\n            } else {\n                $domainID = '@localhost';\n            }\n            foreach ($this->_html_images as $i => $img) {\n                $cid = $this->_html_images[$i]['cid']; \n                if (!preg_match('#'.preg_quote($domainID).'$#', $cid)) {\n                    $this->_html_images[$i]['cid'] = $cid . $domainID;\n                }\n            }\n        }\n\n        if (count($this->_html_images) && isset($this->_htmlbody)) {\n            foreach ($this->_html_images as $key => $value) {\n                $regex   = array();\n                $regex[] = '#(\\s)((?i)src|background|href(?-i))\\s*=\\s*([\"\\']?)' .\n                            preg_quote($value['name'], '#') . '\\3#';\n                $regex[] = '#(?i)url(?-i)\\(\\s*([\"\\']?)' .\n                            preg_quote($value['name'], '#') . '\\1\\s*\\)#';\n\n                $rep   = array();\n                $rep[] = '\\1\\2=\\3cid:' . $value['cid'] .'\\3';\n                $rep[] = 'url(\\1cid:' . $value['cid'] . '\\1)';\n\n                $this->_htmlbody = preg_replace($regex, $rep, $this->_htmlbody);\n                $this->_html_images[$key]['name']\n                    = $this->_basename($this->_html_images[$key]['name']);\n            }\n        }\n\n        $this->_checkParams();\n\n        $null        = null;\n        $attachments = count($this->_parts)                 ? true : false;\n        $html_images = count($this->_html_images)           ? true : false;\n        $html        = strlen($this->_htmlbody)             ? true : false;\n        $text        = (!$html && strlen($this->_txtbody))  ? true : false;\n\n        switch (true) {\n        case $text && !$attachments:\n            $message =& $this->_addTextPart($null, $this->_txtbody);\n            break;\n\n        case !$text && !$html && $attachments:\n            $message =& $this->_addMixedPart();\n            for ($i = 0; $i < count($this->_parts); $i++) {\n                $this->_addAttachmentPart($message, $this->_parts[$i]);\n            }\n            break;\n\n        case $text && $attachments:\n            $message =& $this->_addMixedPart();\n            $this->_addTextPart($message, $this->_txtbody);\n            for ($i = 0; $i < count($this->_parts); $i++) {\n                $this->_addAttachmentPart($message, $this->_parts[$i]);\n            }\n            break;\n\n        case $html && !$attachments && !$html_images:\n            if (isset($this->_txtbody)) {\n                $message =& $this->_addAlternativePart($null);\n                $this->_addTextPart($message, $this->_txtbody);\n                $this->_addHtmlPart($message);\n            } else {\n                $message =& $this->_addHtmlPart($null);\n            }\n            break;\n\n        case $html && !$attachments && $html_images:\n            // * Content-Type: multipart/alternative;\n            //    * text\n            //    * Content-Type: multipart/related;\n            //       * html\n            //       * image...\n            if (isset($this->_txtbody)) {\n                $message =& $this->_addAlternativePart($null);\n                $this->_addTextPart($message, $this->_txtbody);\n\n                $ht =& $this->_addRelatedPart($message);\n                $this->_addHtmlPart($ht);\n                for ($i = 0; $i < count($this->_html_images); $i++) {\n                    $this->_addHtmlImagePart($ht, $this->_html_images[$i]);\n                }\n            } else {\n                // * Content-Type: multipart/related;\n                //    * html\n                //    * image...\n                $message =& $this->_addRelatedPart($null);\n                $this->_addHtmlPart($message);\n                for ($i = 0; $i < count($this->_html_images); $i++) {\n                    $this->_addHtmlImagePart($message, $this->_html_images[$i]);\n                }\n            }\n            /*\n            // #13444, #9725: the code below was a non-RFC compliant hack\n            // * Content-Type: multipart/related;\n            //    * Content-Type: multipart/alternative;\n            //        * text\n            //        * html\n            //    * image...\n            $message =& $this->_addRelatedPart($null);\n            if (isset($this->_txtbody)) {\n                $alt =& $this->_addAlternativePart($message);\n                $this->_addTextPart($alt, $this->_txtbody);\n                $this->_addHtmlPart($alt);\n            } else {\n                $this->_addHtmlPart($message);\n            }\n            for ($i = 0; $i < count($this->_html_images); $i++) {\n                $this->_addHtmlImagePart($message, $this->_html_images[$i]);\n            }\n            */\n            break;\n\n        case $html && $attachments && !$html_images:\n            $message =& $this->_addMixedPart();\n            if (isset($this->_txtbody)) {\n                $alt =& $this->_addAlternativePart($message);\n                $this->_addTextPart($alt, $this->_txtbody);\n                $this->_addHtmlPart($alt);\n            } else {\n                $this->_addHtmlPart($message);\n            }\n            for ($i = 0; $i < count($this->_parts); $i++) {\n                $this->_addAttachmentPart($message, $this->_parts[$i]);\n            }\n            break;\n\n        case $html && $attachments && $html_images:\n            $message =& $this->_addMixedPart();\n            if (isset($this->_txtbody)) {\n                $alt =& $this->_addAlternativePart($message);\n                $this->_addTextPart($alt, $this->_txtbody);\n                $rel =& $this->_addRelatedPart($alt);\n            } else {\n                $rel =& $this->_addRelatedPart($message);\n            }\n            $this->_addHtmlPart($rel);\n            for ($i = 0; $i < count($this->_html_images); $i++) {\n                $this->_addHtmlImagePart($rel, $this->_html_images[$i]);\n            }\n            for ($i = 0; $i < count($this->_parts); $i++) {\n                $this->_addAttachmentPart($message, $this->_parts[$i]);\n            }\n            break;\n\n        }\n\n        if (!isset($message)) {\n            $ret = null;\n            return $ret;\n        }\n\n        // Use saved boundary\n        if (!empty($this->_build_params['boundary'])) {\n            $boundary = $this->_build_params['boundary'];\n        } else {\n            $boundary = null;\n        }\n\n        // Write output to file\n        if ($filename) {\n            // Append mimePart message headers and body into file\n            $headers = $message->encodeToFile($filename, $boundary, $skip_head);\n            if (PEAR::isError($headers)) {\n                return $headers;\n            }\n            $this->_headers = array_merge($this->_headers, $headers);\n            $ret = null;\n            return $ret;\n        } else {\n            $output = $message->encode($boundary, $skip_head);\n            if (PEAR::isError($output)) {\n                return $output;\n            }\n            $this->_headers = array_merge($this->_headers, $output['headers']);\n            $body = $output['body'];\n            return $body;\n        }\n    }\n\n    /**\n     * Returns an array with the headers needed to prepend to the email\n     * (MIME-Version and Content-Type). Format of argument is:\n     * $array['header-name'] = 'header-value';\n     *\n     * @param array $xtra_headers Assoc array with any extra headers (optional)\n     *                            (Don't set Content-Type for multipart messages here!)\n     * @param bool  $overwrite    Overwrite already existing headers.\n     * @param bool  $skip_content Don't return content headers: Content-Type,\n     *                            Content-Disposition and Content-Transfer-Encoding\n     * \n     * @return array              Assoc array with the mime headers\n     * @access public\n     */\n    function &headers($xtra_headers = null, $overwrite = false, $skip_content = false)\n    {\n        // Add mime version header\n        $headers['MIME-Version'] = '1.0';\n\n        // Content-Type and Content-Transfer-Encoding headers should already\n        // be present if get() was called, but we'll re-set them to make sure\n        // we got them when called before get() or something in the message\n        // has been changed after get() [#14780]\n        if (!$skip_content) {\n            $headers += $this->_contentHeaders();\n        }\n\n        if (!empty($xtra_headers)) {\n            $headers = array_merge($headers, $xtra_headers);\n        }\n\n        if ($overwrite) {\n            $this->_headers = array_merge($this->_headers, $headers);\n        } else {\n            $this->_headers = array_merge($headers, $this->_headers);\n        }\n\n        $headers = $this->_headers;\n\n        if ($skip_content) {\n            unset($headers['Content-Type']);\n            unset($headers['Content-Transfer-Encoding']);\n            unset($headers['Content-Disposition']);\n        } else if (!empty($this->_build_params['ctype'])) {\n            $headers['Content-Type'] = $this->_build_params['ctype'];\n        }\n\n        $encodedHeaders = $this->_encodeHeaders($headers);\n        return $encodedHeaders;\n    }\n\n    /**\n     * Get the text version of the headers\n     * (usefull if you want to use the PHP mail() function)\n     *\n     * @param array $xtra_headers Assoc array with any extra headers (optional)\n     *                            (Don't set Content-Type for multipart messages here!)\n     * @param bool  $overwrite    Overwrite the existing headers with new.\n     * @param bool  $skip_content Don't return content headers: Content-Type,\n     *                            Content-Disposition and Content-Transfer-Encoding\n     *\n     * @return string             Plain text headers\n     * @access public\n     */\n    function txtHeaders($xtra_headers = null, $overwrite = false, $skip_content = false)\n    {\n        $headers = $this->headers($xtra_headers, $overwrite, $skip_content);\n\n        // Place Received: headers at the beginning of the message\n        // Spam detectors often flag messages with it after the Subject: as spam\n        if (isset($headers['Received'])) {\n            $received = $headers['Received'];\n            unset($headers['Received']);\n            $headers = array('Received' => $received) + $headers;\n        }\n\n        $ret = '';\n        $eol = $this->_build_params['eol'];\n\n        foreach ($headers as $key => $val) {\n            if (is_array($val)) {\n                foreach ($val as $value) {\n                    $ret .= \"$key: $value\" . $eol;\n                }\n            } else {\n                $ret .= \"$key: $val\" . $eol;\n            }\n        }\n\n        return $ret;\n    }\n\n    /**\n     * Sets message Content-Type header.\n     * Use it to build messages with various content-types e.g. miltipart/raport\n     * not supported by _contentHeaders() function.\n     *\n     * @param string $type   Type name\n     * @param array  $params Hash array of header parameters\n     *\n     * @return void\n     * @access public\n     * @since 1.7.0\n     */\n    function setContentType($type, $params = array())\n    {\n        $header = $type;\n\n        $eol = !empty($this->_build_params['eol'])\n            ? $this->_build_params['eol'] : \"\\r\\n\";\n\n        // add parameters\n        $token_regexp = '#([^\\x21,\\x23-\\x27,\\x2A,\\x2B,\\x2D'\n            . ',\\x2E,\\x30-\\x39,\\x41-\\x5A,\\x5E-\\x7E])#';\n        if (is_array($params)) {\n            foreach ($params as $name => $value) {\n                if ($name == 'boundary') {\n                    $this->_build_params['boundary'] = $value;\n                }\n                if (!preg_match($token_regexp, $value)) {\n                    $header .= \";$eol $name=$value\";\n                } else {\n                    $value = addcslashes($value, '\\\\\"');\n                    $header .= \";$eol $name=\\\"$value\\\"\";\n                }\n            }\n        }\n\n        // add required boundary parameter if not defined\n        if (preg_match('/^multipart\\//i', $type)) {\n            if (empty($this->_build_params['boundary'])) {\n                $this->_build_params['boundary'] = '=_' . md5(rand() . microtime());\n            }\n\n            $header .= \";$eol boundary=\\\"\".$this->_build_params['boundary'].\"\\\"\";\n        }\n\n        $this->_build_params['ctype'] = $header;\n    }\n\n    /**\n     * Sets the Subject header\n     *\n     * @param string $subject String to set the subject to.\n     *\n     * @return void\n     * @access public\n     */\n    function setSubject($subject)\n    {\n        $this->_headers['Subject'] = $subject;\n    }\n\n    /**\n     * Set an email to the From (the sender) header\n     *\n     * @param string $email The email address to use\n     *\n     * @return void\n     * @access public\n     */\n    function setFrom($email)\n    {\n        $this->_headers['From'] = $email;\n    }\n\n    /**\n     * Add an email to the To header\n     * (multiple calls to this method are allowed)\n     *\n     * @param string $email The email direction to add\n     *\n     * @return void\n     * @access public\n     */\n    function addTo($email)\n    {\n        if (isset($this->_headers['To'])) {\n            $this->_headers['To'] .= \", $email\";\n        } else {\n            $this->_headers['To'] = $email;\n        }\n    }\n\n    /**\n     * Add an email to the Cc (carbon copy) header\n     * (multiple calls to this method are allowed)\n     *\n     * @param string $email The email direction to add\n     *\n     * @return void\n     * @access public\n     */\n    function addCc($email)\n    {\n        if (isset($this->_headers['Cc'])) {\n            $this->_headers['Cc'] .= \", $email\";\n        } else {\n            $this->_headers['Cc'] = $email;\n        }\n    }\n\n    /**\n     * Add an email to the Bcc (blank carbon copy) header\n     * (multiple calls to this method are allowed)\n     *\n     * @param string $email The email direction to add\n     *\n     * @return void\n     * @access public\n     */\n    function addBcc($email)\n    {\n        if (isset($this->_headers['Bcc'])) {\n            $this->_headers['Bcc'] .= \", $email\";\n        } else {\n            $this->_headers['Bcc'] = $email;\n        }\n    }\n\n    /**\n     * Since the PHP send function requires you to specify\n     * recipients (To: header) separately from the other\n     * headers, the To: header is not properly encoded.\n     * To fix this, you can use this public method to \n     * encode your recipients before sending to the send\n     * function\n     *\n     * @param string $recipients A comma-delimited list of recipients\n     *\n     * @return string            Encoded data\n     * @access public\n     */\n    function encodeRecipients($recipients)\n    {\n        $input = array(\"To\" => $recipients);\n        $retval = $this->_encodeHeaders($input);\n        return $retval[\"To\"] ;\n    }\n\n    /**\n     * Encodes headers as per RFC2047\n     *\n     * @param array $input  The header data to encode\n     * @param array $params Extra build parameters\n     *\n     * @return array        Encoded data\n     * @access private\n     */\n    function _encodeHeaders($input, $params = array())\n    {\n        $build_params = $this->_build_params;\n        while (list($key, $value) = each($params)) {\n            $build_params[$key] = $value;\n        }\n\n        foreach ($input as $hdr_name => $hdr_value) {\n            if (is_array($hdr_value)) {\n                foreach ($hdr_value as $idx => $value) {\n                    $input[$hdr_name][$idx] = $this->encodeHeader(\n                        $hdr_name, $value,\n                        $build_params['head_charset'], $build_params['head_encoding']\n                    );\n                }\n            } else {\n                $input[$hdr_name] = $this->encodeHeader(\n                    $hdr_name, $hdr_value,\n                    $build_params['head_charset'], $build_params['head_encoding']\n                );\n            }\n        }\n\n        return $input;\n    }\n\n    /**\n     * Encodes a header as per RFC2047\n     *\n     * @param string $name     The header name\n     * @param string $value    The header data to encode\n     * @param string $charset  Character set name\n     * @param string $encoding Encoding name (base64 or quoted-printable)\n     *\n     * @return string          Encoded header data (without a name)\n     * @access public\n     * @since 1.5.3\n     */\n    function encodeHeader($name, $value, $charset, $encoding)\n    {\n        return Mail_mimePart::encodeHeader(\n            $name, $value, $charset, $encoding, $this->_build_params['eol']\n        );\n    }\n\n    /**\n     * Get file's basename (locale independent) \n     *\n     * @param string $filename Filename\n     *\n     * @return string          Basename\n     * @access private\n     */\n    function _basename($filename)\n    {\n        // basename() is not unicode safe and locale dependent\n        if (stristr(PHP_OS, 'win') || stristr(PHP_OS, 'netware')) {\n            return preg_replace('/^.*[\\\\\\\\\\\\/]/', '', $filename);\n        } else {\n            return preg_replace('/^.*[\\/]/', '', $filename);\n        }\n    }\n\n    /**\n     * Get Content-Type and Content-Transfer-Encoding headers of the message\n     *\n     * @return array Headers array\n     * @access private\n     */\n    function _contentHeaders()\n    {\n        $attachments = count($this->_parts)                 ? true : false;\n        $html_images = count($this->_html_images)           ? true : false;\n        $html        = strlen($this->_htmlbody)             ? true : false;\n        $text        = (!$html && strlen($this->_txtbody))  ? true : false;\n        $headers     = array();\n\n        // See get()\n        switch (true) {\n        case $text && !$attachments:\n            $headers['Content-Type'] = 'text/plain';\n            break;\n\n        case !$text && !$html && $attachments:\n        case $text && $attachments:\n        case $html && $attachments && !$html_images:\n        case $html && $attachments && $html_images:\n            $headers['Content-Type'] = 'multipart/mixed';\n            break;\n\n        case $html && !$attachments && !$html_images && isset($this->_txtbody):\n        case $html && !$attachments && $html_images && isset($this->_txtbody):\n            $headers['Content-Type'] = 'multipart/alternative';\n            break;\n\n        case $html && !$attachments && !$html_images && !isset($this->_txtbody):\n            $headers['Content-Type'] = 'text/html';\n            break;\n\n        case $html && !$attachments && $html_images && !isset($this->_txtbody):\n            $headers['Content-Type'] = 'multipart/related';\n            break;\n\n        default:\n            return $headers;\n        }\n\n        $this->_checkParams();\n\n        $eol = !empty($this->_build_params['eol'])\n            ? $this->_build_params['eol'] : \"\\r\\n\";\n\n        if ($headers['Content-Type'] == 'text/plain') {\n            // single-part message: add charset and encoding\n            $headers['Content-Type']\n                .= \";$eol charset=\" . $this->_build_params['text_charset'];\n            $headers['Content-Transfer-Encoding']\n                = $this->_build_params['text_encoding'];\n        } else if ($headers['Content-Type'] == 'text/html') {\n            // single-part message: add charset and encoding\n            $headers['Content-Type']\n                .= \";$eol charset=\" . $this->_build_params['html_charset'];\n            $headers['Content-Transfer-Encoding']\n                = $this->_build_params['html_encoding'];\n        } else {\n            // multipart message: add charset and boundary\n            if (!empty($this->_build_params['boundary'])) {\n                $boundary = $this->_build_params['boundary'];\n            } else if (!empty($this->_headers['Content-Type'])\n                && preg_match('/boundary=\"([^\"]+)\"/', $this->_headers['Content-Type'], $m)\n            ) {\n                $boundary = $m[1];\n            } else {\n                $boundary = '=_' . md5(rand() . microtime());\n            }\n\n            $this->_build_params['boundary'] = $boundary;\n            $headers['Content-Type'] .= \";$eol boundary=\\\"$boundary\\\"\";\n        }\n\n        return $headers;\n    }\n\n    /**\n     * Validate and set build parameters\n     *\n     * @return void\n     * @access private\n     */\n    function _checkParams()\n    {\n        $encodings = array('7bit', '8bit', 'base64', 'quoted-printable');\n\n        $this->_build_params['text_encoding']\n            = strtolower($this->_build_params['text_encoding']);\n        $this->_build_params['html_encoding']\n            = strtolower($this->_build_params['html_encoding']);\n\n        if (!in_array($this->_build_params['text_encoding'], $encodings)) {\n            $this->_build_params['text_encoding'] = '7bit';\n        }\n        if (!in_array($this->_build_params['html_encoding'], $encodings)) {\n            $this->_build_params['html_encoding'] = '7bit';\n        }\n\n        // text body\n        if ($this->_build_params['text_encoding'] == '7bit'\n            && !preg_match('/ascii/i', $this->_build_params['text_charset'])\n            && preg_match('/[^\\x00-\\x7F]/', $this->_txtbody)\n        ) {\n            $this->_build_params['text_encoding'] = 'quoted-printable';\n        }\n        // html body\n        if ($this->_build_params['html_encoding'] == '7bit'\n            && !preg_match('/ascii/i', $this->_build_params['html_charset'])\n            && preg_match('/[^\\x00-\\x7F]/', $this->_htmlbody)\n        ) {\n            $this->_build_params['html_encoding'] = 'quoted-printable';\n        }\n    }\n\n} // End of class\n"
  },
  {
    "path": "newscoop/include/Mail/mimeDecode.php",
    "content": "<?php\n/**\n * The Mail_mimeDecode class is used to decode mail/mime messages\n *\n * This class will parse a raw mime email and return\n * the structure. Returned structure is similar to\n * that returned by imap_fetchstructure().\n *\n *  +----------------------------- IMPORTANT ------------------------------+\n *  | Usage of this class compared to native php extensions such as        |\n *  | mailparse or imap, is slow and may be feature deficient. If available|\n *  | you are STRONGLY recommended to use the php extensions.              |\n *  +----------------------------------------------------------------------+\n *\n * Compatible with PHP versions 4 and 5\n *\n * LICENSE: This LICENSE is in the BSD license style.\n * Copyright (c) 2002-2003, Richard Heyes <richard@phpguru.org>\n * Copyright (c) 2003-2006, PEAR <pear-group@php.net>\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or\n * without modification, are permitted provided that the following\n * conditions are met:\n *\n * - Redistributions of source code must retain the above copyright\n *   notice, this list of conditions and the following disclaimer.\n * - Redistributions in binary form must reproduce the above copyright\n *   notice, this list of conditions and the following disclaimer in the\n *   documentation and/or other materials provided with the distribution.\n * - Neither the name of the authors, nor the names of its contributors \n *   may be used to endorse or promote products derived from this \n *   software without specific prior written permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n * THE POSSIBILITY OF SUCH DAMAGE.\n *\n * @category   Mail\n * @package    Mail_Mime\n * @author     Richard Heyes  <richard@phpguru.org>\n * @author     George Schlossnagle <george@omniti.com>\n * @author     Cipriano Groenendal <cipri@php.net>\n * @author     Sean Coates <sean@php.net>\n * @copyright  2003-2006 PEAR <pear-group@php.net>\n * @license    http://www.opensource.org/licenses/bsd-license.php BSD License\n * @version    CVS: $Id: mimeDecode.php,v 1.48 2006/12/03 13:43:33 cipri Exp $\n * @link       http://pear.php.net/package/Mail_mime\n */\n\n\n/**\n * require PEAR\n *\n * This package depends on PEAR to raise errors.\n */\nrequire_once 'PEAR.php';\n\n\n/**\n * The Mail_mimeDecode class is used to decode mail/mime messages\n *\n * This class will parse a raw mime email and return the structure.\n * Returned structure is similar to that returned by imap_fetchstructure().\n *\n *  +----------------------------- IMPORTANT ------------------------------+\n *  | Usage of this class compared to native php extensions such as        |\n *  | mailparse or imap, is slow and may be feature deficient. If available|\n *  | you are STRONGLY recommended to use the php extensions.              |\n *  +----------------------------------------------------------------------+\n *\n * @category   Mail\n * @package    Mail_Mime\n * @author     Richard Heyes  <richard@phpguru.org>\n * @author     George Schlossnagle <george@omniti.com>\n * @author     Cipriano Groenendal <cipri@php.net>\n * @author     Sean Coates <sean@php.net>\n * @copyright  2003-2006 PEAR <pear-group@php.net>\n * @license    http://www.opensource.org/licenses/bsd-license.php BSD License\n * @version    Release: @package_version@\n * @link       http://pear.php.net/package/Mail_mime\n */\nclass Mail_mimeDecode extends PEAR\n{\n    /**\n     * The raw email to decode\n     *\n     * @var    string\n     * @access private\n     */\n    var $_input;\n\n    /**\n     * The header part of the input\n     *\n     * @var    string\n     * @access private\n     */\n    var $_header;\n\n    /**\n     * The body part of the input\n     *\n     * @var    string\n     * @access private\n     */\n    var $_body;\n\n    /**\n     * If an error occurs, this is used to store the message\n     *\n     * @var    string\n     * @access private\n     */\n    var $_error;\n\n    /**\n     * Flag to determine whether to include bodies in the\n     * returned object.\n     *\n     * @var    boolean\n     * @access private\n     */\n    var $_include_bodies;\n\n    /**\n     * Flag to determine whether to decode bodies\n     *\n     * @var    boolean\n     * @access private\n     */\n    var $_decode_bodies;\n\n    /**\n     * Flag to determine whether to decode headers\n     *\n     * @var    boolean\n     * @access private\n     */\n    var $_decode_headers;\n\n    /**\n     * Constructor.\n     *\n     * Sets up the object, initialise the variables, and splits and\n     * stores the header and body of the input.\n     *\n     * @param string The input to decode\n     * @access public\n     */\n    function Mail_mimeDecode($input)\n    {\n        list($header, $body)   = $this->_splitBodyHeader($input);\n\n        $this->_input          = $input;\n        $this->_header         = $header;\n        $this->_body           = $body;\n        $this->_decode_bodies  = false;\n        $this->_include_bodies = true;\n    }\n\n    /**\n     * Begins the decoding process. If called statically\n     * it will create an object and call the decode() method\n     * of it.\n     *\n     * @param array An array of various parameters that determine\n     *              various things:\n     *              include_bodies - Whether to include the body in the returned\n     *                               object.\n     *              decode_bodies  - Whether to decode the bodies\n     *                               of the parts. (Transfer encoding)\n     *              decode_headers - Whether to decode headers\n     *              input          - If called statically, this will be treated\n     *                               as the input\n     * @return object Decoded results\n     * @access public\n     */\n    function decode($params = null)\n    {\n        // determine if this method has been called statically\n        $isStatic = !(isset($this) && get_class($this) == __CLASS__);\n\n        // Have we been called statically?\n\t// If so, create an object and pass details to that.\n        if ($isStatic AND isset($params['input'])) {\n\n            $obj = new Mail_mimeDecode($params['input']);\n            $structure = $obj->decode($params);\n\n        // Called statically but no input\n        } elseif ($isStatic) {\n            return PEAR::raiseError('Called statically and no input given');\n\n        // Called via an object\n        } else {\n            $this->_include_bodies = isset($params['include_bodies']) ?\n\t                             $params['include_bodies'] : false;\n            $this->_decode_bodies  = isset($params['decode_bodies']) ?\n\t                             $params['decode_bodies']  : false;\n            $this->_decode_headers = isset($params['decode_headers']) ?\n\t                             $params['decode_headers'] : false;\n\n            $structure = $this->_decode($this->_header, $this->_body);\n            if ($structure === false) {\n                $structure = $this->raiseError($this->_error);\n            }\n        }\n\n        return $structure;\n    }\n\n    /**\n     * Performs the decoding. Decodes the body string passed to it\n     * If it finds certain content-types it will call itself in a\n     * recursive fashion\n     *\n     * @param string Header section\n     * @param string Body section\n     * @return object Results of decoding process\n     * @access private\n     */\n    function _decode($headers, $body, $default_ctype = 'text/plain')\n    {\n        $return = new stdClass;\n        $return->headers = array();\n        $headers = $this->_parseHeaders($headers);\n\n        foreach ($headers as $value) {\n            if (isset($return->headers[strtolower($value['name'])]) AND !is_array($return->headers[strtolower($value['name'])])) {\n                $return->headers[strtolower($value['name'])]   = array($return->headers[strtolower($value['name'])]);\n                $return->headers[strtolower($value['name'])][] = $value['value'];\n\n            } elseif (isset($return->headers[strtolower($value['name'])])) {\n                $return->headers[strtolower($value['name'])][] = $value['value'];\n\n            } else {\n                $return->headers[strtolower($value['name'])] = $value['value'];\n            }\n        }\n\n        reset($headers);\n        while (list($key, $value) = each($headers)) {\n            $headers[$key]['name'] = strtolower($headers[$key]['name']);\n            switch ($headers[$key]['name']) {\n\n                case 'content-type':\n                    $content_type = $this->_parseHeaderValue($headers[$key]['value']);\n\n                    if (preg_match('/([0-9a-z+.-]+)\\/([0-9a-z+.-]+)/i', $content_type['value'], $regs)) {\n                        $return->ctype_primary   = $regs[1];\n                        $return->ctype_secondary = $regs[2];\n                    }\n\n                    if (isset($content_type['other'])) {\n                        while (list($p_name, $p_value) = each($content_type['other'])) {\n                            $return->ctype_parameters[$p_name] = $p_value;\n                        }\n                    }\n                    break;\n\n                case 'content-disposition':\n                    $content_disposition = $this->_parseHeaderValue($headers[$key]['value']);\n                    $return->disposition   = $content_disposition['value'];\n                    if (isset($content_disposition['other'])) {\n                        while (list($p_name, $p_value) = each($content_disposition['other'])) {\n                            $return->d_parameters[$p_name] = $p_value;\n                        }\n                    }\n                    break;\n\n                case 'content-transfer-encoding':\n                    $content_transfer_encoding = $this->_parseHeaderValue($headers[$key]['value']);\n                    break;\n            }\n        }\n\n        if (isset($content_type)) {\n            switch (strtolower($content_type['value'])) {\n                case 'text/plain':\n                    $encoding = isset($content_transfer_encoding) ? $content_transfer_encoding['value'] : '7bit';\n                    $this->_include_bodies ? $return->body = ($this->_decode_bodies ? $this->_decodeBody($body, $encoding) : $body) : null;\n                    break;\n\n                case 'text/html':\n                    $encoding = isset($content_transfer_encoding) ? $content_transfer_encoding['value'] : '7bit';\n                    $this->_include_bodies ? $return->body = ($this->_decode_bodies ? $this->_decodeBody($body, $encoding) : $body) : null;\n                    break;\n\n                case 'multipart/parallel':\n                case 'multipart/appledouble': // Appledouble mail\n                case 'multipart/report': // RFC1892\n                case 'multipart/signed': // PGP\n                case 'multipart/digest':\n                case 'multipart/alternative':\n                case 'multipart/related':\n                case 'multipart/mixed':\n                    if(!isset($content_type['other']['boundary'])){\n                        $this->_error = 'No boundary found for ' . $content_type['value'] . ' part';\n                        return false;\n                    }\n\n                    $default_ctype = (strtolower($content_type['value']) === 'multipart/digest') ? 'message/rfc822' : 'text/plain';\n\n                    $parts = $this->_boundarySplit($body, $content_type['other']['boundary']);\n                    for ($i = 0; $i < count($parts); $i++) {\n                        list($part_header, $part_body) = $this->_splitBodyHeader($parts[$i]);\n                        $part = $this->_decode($part_header, $part_body, $default_ctype);\n                        if($part === false)\n                            $part = $this->raiseError($this->_error);\n                        $return->parts[] = $part;\n                    }\n                    break;\n\n                case 'message/rfc822':\n                    $obj = &new Mail_mimeDecode($body);\n                    $return->parts[] = $obj->decode(array('include_bodies' => $this->_include_bodies,\n\t\t\t\t\t                                      'decode_bodies'  => $this->_decode_bodies,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t  'decode_headers' => $this->_decode_headers));\n                    unset($obj);\n                    break;\n\n                default:\n                    if(!isset($content_transfer_encoding['value']))\n                        $content_transfer_encoding['value'] = '7bit';\n                    $this->_include_bodies ? $return->body = ($this->_decode_bodies ? $this->_decodeBody($body, $content_transfer_encoding['value']) : $body) : null;\n                    break;\n            }\n\n        } else {\n            $ctype = explode('/', $default_ctype);\n            $return->ctype_primary   = $ctype[0];\n            $return->ctype_secondary = $ctype[1];\n            $this->_include_bodies ? $return->body = ($this->_decode_bodies ? $this->_decodeBody($body) : $body) : null;\n        }\n\n        return $return;\n    }\n\n    /**\n     * Given the output of the above function, this will return an\n     * array of references to the parts, indexed by mime number.\n     *\n     * @param  object $structure   The structure to go through\n     * @param  string $mime_number Internal use only.\n     * @return array               Mime numbers\n     */\n    function &getMimeNumbers(&$structure, $no_refs = false, $mime_number = '', $prepend = '')\n    {\n        $return = array();\n        if (!empty($structure->parts)) {\n            if ($mime_number != '') {\n                $structure->mime_id = $prepend . $mime_number;\n                $return[$prepend . $mime_number] = &$structure;\n            }\n            for ($i = 0; $i < count($structure->parts); $i++) {\n\n            \n                if (!empty($structure->headers['content-type']) AND substr(strtolower($structure->headers['content-type']), 0, 8) == 'message/') {\n                    $prepend      = $prepend . $mime_number . '.';\n                    $_mime_number = '';\n                } else {\n                    $_mime_number = ($mime_number == '' ? $i + 1 : sprintf('%s.%s', $mime_number, $i + 1));\n                }\n\n                $arr = &Mail_mimeDecode::getMimeNumbers($structure->parts[$i], $no_refs, $_mime_number, $prepend);\n                foreach ($arr as $key => $val) {\n                    $no_refs ? $return[$key] = '' : $return[$key] = &$arr[$key];\n                }\n            }\n        } else {\n            if ($mime_number == '') {\n                $mime_number = '1';\n            }\n            $structure->mime_id = $prepend . $mime_number;\n            $no_refs ? $return[$prepend . $mime_number] = '' : $return[$prepend . $mime_number] = &$structure;\n        }\n        \n        return $return;\n    }\n\n    /**\n     * Given a string containing a header and body\n     * section, this function will split them (at the first\n     * blank line) and return them.\n     *\n     * @param string Input to split apart\n     * @return array Contains header and body section\n     * @access private\n     */\n    function _splitBodyHeader($input)\n    {\n        if (preg_match(\"/^(.*?)\\r?\\n\\r?\\n(.*)/s\", $input, $match)) {\n            return array($match[1], $match[2]);\n        }\n        $this->_error = 'Could not split header and body';\n        return false;\n    }\n\n    /**\n     * Parse headers given in $input and return\n     * as assoc array.\n     *\n     * @param string Headers to parse\n     * @return array Contains parsed headers\n     * @access private\n     */\n    function _parseHeaders($input)\n    {\n\n        if ($input !== '') {\n            // Unfold the input\n            $input   = preg_replace(\"/\\r?\\n/\", \"\\r\\n\", $input);\n            $input   = preg_replace(\"/\\r\\n(\\t| )+/\", ' ', $input);\n            $headers = explode(\"\\r\\n\", trim($input));\n\n            foreach ($headers as $value) {\n                $hdr_name = substr($value, 0, $pos = strpos($value, ':'));\n                $hdr_value = substr($value, $pos+1);\n                if($hdr_value[0] == ' ')\n                    $hdr_value = substr($hdr_value, 1);\n\n                $return[] = array(\n                                  'name'  => $hdr_name,\n                                  'value' => $this->_decode_headers ? $this->_decodeHeader($hdr_value) : $hdr_value\n                                 );\n            }\n        } else {\n            $return = array();\n        }\n\n        return $return;\n    }\n\n    /**\n     * Function to parse a header value,\n     * extract first part, and any secondary\n     * parts (after ;) This function is not as\n     * robust as it could be. Eg. header comments\n     * in the wrong place will probably break it.\n     *\n     * @param string Header value to parse\n     * @return array Contains parsed result\n     * @access private\n     */\n    function _parseHeaderValue($input)\n    {\n\n        if (($pos = strpos($input, ';')) !== false) {\n\n            $return['value'] = trim(substr($input, 0, $pos));\n            $input = trim(substr($input, $pos+1));\n\n            if (strlen($input) > 0) {\n\n                // This splits on a semi-colon, if there's no preceeding backslash\n                // Now works with quoted values; had to glue the \\; breaks in PHP\n                // the regex is already bordering on incomprehensible\n                $splitRegex = '/([^;\\'\"]*[\\'\"]([^\\'\"]*([^\\'\"]*)*)[\\'\"][^;\\'\"]*|([^;]+))(;|$)/';\n                preg_match_all($splitRegex, $input, $matches);\n                $parameters = array();\n                for ($i=0; $i<count($matches[0]); $i++) {\n                    $param = $matches[0][$i];\n                    while (substr($param, -2) == '\\;') {\n                        $param .= $matches[0][++$i];\n                    }\n                    $parameters[] = $param;\n                }\n\n                for ($i = 0; $i < count($parameters); $i++) {\n                    $param_name  = trim(substr($parameters[$i], 0, $pos = strpos($parameters[$i], '=')), \"'\\\";\\t\\\\ \");\n                    $param_value = trim(str_replace('\\;', ';', substr($parameters[$i], $pos + 1)), \"'\\\";\\t\\\\ \");\n                    if ($param_value[0] == '\"') {\n                        $param_value = substr($param_value, 1, -1);\n                    }\n                    $return['other'][$param_name] = $param_value;\n                    $return['other'][strtolower($param_name)] = $param_value;\n                }\n            }\n        } else {\n            $return['value'] = trim($input);\n        }\n\n        return $return;\n    }\n\n    /**\n     * This function splits the input based\n     * on the given boundary\n     *\n     * @param string Input to parse\n     * @return array Contains array of resulting mime parts\n     * @access private\n     */\n    function _boundarySplit($input, $boundary)\n    {\n        $parts = array();\n\n        $bs_possible = substr($boundary, 2, -2);\n        $bs_check = '\\\"' . $bs_possible . '\\\"';\n\n        if ($boundary == $bs_check) {\n            $boundary = $bs_possible;\n        }\n\n        $tmp = explode('--' . $boundary, $input);\n\n        for ($i = 1; $i < count($tmp) - 1; $i++) {\n            $parts[] = $tmp[$i];\n        }\n\n        return $parts;\n    }\n\n    /**\n     * Given a header, this function will decode it\n     * according to RFC2047. Probably not *exactly*\n     * conformant, but it does pass all the given\n     * examples (in RFC2047).\n     *\n     * @param string Input header value to decode\n     * @return string Decoded header value\n     * @access private\n     */\n    function _decodeHeader($input)\n    {\n        // Remove white space between encoded-words\n        $input = preg_replace('/(=\\?[^?]+\\?(q|b)\\?[^?]*\\?=)(\\s)+=\\?/i', '\\1=?', $input);\n\n        // For each encoded-word...\n        while (preg_match('/(=\\?([^?]+)\\?(q|b)\\?([^?]*)\\?=)/i', $input, $matches)) {\n\n            $encoded  = $matches[1];\n            $charset  = $matches[2];\n            $encoding = $matches[3];\n            $text     = $matches[4];\n\n            switch (strtolower($encoding)) {\n                case 'b':\n                    $text = base64_decode($text);\n                    break;\n\n                case 'q':\n                    $text = str_replace('_', ' ', $text);\n                    preg_match_all('/=([a-f0-9]{2})/i', $text, $matches);\n                    foreach($matches[1] as $value)\n                        $text = str_replace('='.$value, chr(hexdec($value)), $text);\n                    break;\n            }\n\n            $input = str_replace($encoded, $text, $input);\n        }\n\n        return $input;\n    }\n\n    /**\n     * Given a body string and an encoding type,\n     * this function will decode and return it.\n     *\n     * @param  string Input body to decode\n     * @param  string Encoding type to use.\n     * @return string Decoded body\n     * @access private\n     */\n    function _decodeBody($input, $encoding = '7bit')\n    {\n        switch (strtolower($encoding)) {\n            case '7bit':\n                return $input;\n                break;\n\n            case 'quoted-printable':\n                return $this->_quotedPrintableDecode($input);\n                break;\n\n            case 'base64':\n                return base64_decode($input);\n                break;\n\n            default:\n                return $input;\n        }\n    }\n\n    /**\n     * Given a quoted-printable string, this\n     * function will decode and return it.\n     *\n     * @param  string Input body to decode\n     * @return string Decoded body\n     * @access private\n     */\n    function _quotedPrintableDecode($input)\n    {\n        // Remove soft line breaks\n        $input = preg_replace(\"/=\\r?\\n/\", '', $input);\n\n        // Replace encoded characters\n\t\t$input = preg_replace('/=([a-f0-9]{2})/ie', \"chr(hexdec('\\\\1'))\", $input);\n\n        return $input;\n    }\n\n    /**\n     * Checks the input for uuencoded files and returns\n     * an array of them. Can be called statically, eg:\n     *\n     * $files =& Mail_mimeDecode::uudecode($some_text);\n     *\n     * It will check for the begin 666 ... end syntax\n     * however and won't just blindly decode whatever you\n     * pass it.\n     *\n     * @param  string Input body to look for attahcments in\n     * @return array  Decoded bodies, filenames and permissions\n     * @access public\n     * @author Unknown\n     */\n    function &uudecode($input)\n    {\n        // Find all uuencoded sections\n        preg_match_all(\"/begin ([0-7]{3}) (.+)\\r?\\n(.+)\\r?\\nend/Us\", $input, $matches);\n\n        for ($j = 0; $j < count($matches[3]); $j++) {\n\n            $str      = $matches[3][$j];\n            $filename = $matches[2][$j];\n            $fileperm = $matches[1][$j];\n\n            $file = '';\n            $str = preg_split(\"/\\r?\\n/\", trim($str));\n            $strlen = count($str);\n\n            for ($i = 0; $i < $strlen; $i++) {\n                $pos = 1;\n                $d = 0;\n                $len=(int)(((ord(substr($str[$i],0,1)) -32) - ' ') & 077);\n\n                while (($d + 3 <= $len) AND ($pos + 4 <= strlen($str[$i]))) {\n                    $c0 = (ord(substr($str[$i],$pos,1)) ^ 0x20);\n                    $c1 = (ord(substr($str[$i],$pos+1,1)) ^ 0x20);\n                    $c2 = (ord(substr($str[$i],$pos+2,1)) ^ 0x20);\n                    $c3 = (ord(substr($str[$i],$pos+3,1)) ^ 0x20);\n                    $file .= chr(((($c0 - ' ') & 077) << 2) | ((($c1 - ' ') & 077) >> 4));\n\n                    $file .= chr(((($c1 - ' ') & 077) << 4) | ((($c2 - ' ') & 077) >> 2));\n\n                    $file .= chr(((($c2 - ' ') & 077) << 6) |  (($c3 - ' ') & 077));\n\n                    $pos += 4;\n                    $d += 3;\n                }\n\n                if (($d + 2 <= $len) && ($pos + 3 <= strlen($str[$i]))) {\n                    $c0 = (ord(substr($str[$i],$pos,1)) ^ 0x20);\n                    $c1 = (ord(substr($str[$i],$pos+1,1)) ^ 0x20);\n                    $c2 = (ord(substr($str[$i],$pos+2,1)) ^ 0x20);\n                    $file .= chr(((($c0 - ' ') & 077) << 2) | ((($c1 - ' ') & 077) >> 4));\n\n                    $file .= chr(((($c1 - ' ') & 077) << 4) | ((($c2 - ' ') & 077) >> 2));\n\n                    $pos += 3;\n                    $d += 2;\n                }\n\n                if (($d + 1 <= $len) && ($pos + 2 <= strlen($str[$i]))) {\n                    $c0 = (ord(substr($str[$i],$pos,1)) ^ 0x20);\n                    $c1 = (ord(substr($str[$i],$pos+1,1)) ^ 0x20);\n                    $file .= chr(((($c0 - ' ') & 077) << 2) | ((($c1 - ' ') & 077) >> 4));\n\n                }\n            }\n            $files[] = array('filename' => $filename, 'fileperm' => $fileperm, 'filedata' => $file);\n        }\n\n        return $files;\n    }\n\n    /**\n     * getSendArray() returns the arguments required for Mail::send()\n     * used to build the arguments for a mail::send() call \n     *\n     * Usage:\n     * $mailtext = Full email (for example generated by a template)\n     * $decoder = new Mail_mimeDecode($mailtext);\n     * $parts =  $decoder->getSendArray();\n     * if (!PEAR::isError($parts) {\n     *     list($recipents,$headers,$body) = $parts;\n     *     $mail = Mail::factory('smtp');\n     *     $mail->send($recipents,$headers,$body);\n     * } else {\n     *     echo $parts->message;\n     * }\n     * @return mixed   array of recipeint, headers,body or Pear_Error\n     * @access public\n     * @author Alan Knowles <alan@akbkhome.com>\n     */\n    function getSendArray()\n    {\n        // prevent warning if this is not set\n        $this->_decode_headers = FALSE;\n        $headerlist =$this->_parseHeaders($this->_header);\n        $to = \"\";\n        if (!$headerlist) {\n            return $this->raiseError(\"Message did not contain headers\");\n        }\n        foreach($headerlist as $item) {\n            $header[$item['name']] = $item['value'];\n            switch (strtolower($item['name'])) {\n                case \"to\":\n                case \"cc\":\n                case \"bcc\":\n                    $to = \",\".$item['value'];\n                default:\n                   break;\n            }\n        }\n        if ($to == \"\") {\n            return $this->raiseError(\"Message did not contain any recipents\");\n        }\n        $to = substr($to,1);\n        return array($to,$header,$this->_body);\n    } \n\n    /**\n     * Returns a xml copy of the output of\n     * Mail_mimeDecode::decode. Pass the output in as the\n     * argument. This function can be called statically. Eg:\n     *\n     * $output = $obj->decode();\n     * $xml    = Mail_mimeDecode::getXML($output);\n     *\n     * The DTD used for this should have been in the package. Or\n     * alternatively you can get it from cvs, or here:\n     * http://www.phpguru.org/xmail/xmail.dtd.\n     *\n     * @param  object Input to convert to xml. This should be the\n     *                output of the Mail_mimeDecode::decode function\n     * @return string XML version of input\n     * @access public\n     */\n    function getXML($input)\n    {\n        $crlf    =  \"\\r\\n\";\n        $output  = '<?xml version=\\'1.0\\'?>' . $crlf .\n                   '<!DOCTYPE email SYSTEM \"http://www.phpguru.org/xmail/xmail.dtd\">' . $crlf .\n                   '<email>' . $crlf .\n                   Mail_mimeDecode::_getXML($input) .\n                   '</email>';\n\n        return $output;\n    }\n\n    /**\n     * Function that does the actual conversion to xml. Does a single\n     * mimepart at a time.\n     *\n     * @param  object  Input to convert to xml. This is a mimepart object.\n     *                 It may or may not contain subparts.\n     * @param  integer Number of tabs to indent\n     * @return string  XML version of input\n     * @access private\n     */\n    function _getXML($input, $indent = 1)\n    {\n        $htab    =  \"\\t\";\n        $crlf    =  \"\\r\\n\";\n        $output  =  '';\n        $headers = @(array)$input->headers;\n\n        foreach ($headers as $hdr_name => $hdr_value) {\n\n            // Multiple headers with this name\n            if (is_array($headers[$hdr_name])) {\n                for ($i = 0; $i < count($hdr_value); $i++) {\n                    $output .= Mail_mimeDecode::_getXML_helper($hdr_name, $hdr_value[$i], $indent);\n                }\n\n            // Only one header of this sort\n            } else {\n                $output .= Mail_mimeDecode::_getXML_helper($hdr_name, $hdr_value, $indent);\n            }\n        }\n\n        if (!empty($input->parts)) {\n            for ($i = 0; $i < count($input->parts); $i++) {\n                $output .= $crlf . str_repeat($htab, $indent) . '<mimepart>' . $crlf .\n                           Mail_mimeDecode::_getXML($input->parts[$i], $indent+1) .\n                           str_repeat($htab, $indent) . '</mimepart>' . $crlf;\n            }\n        } elseif (isset($input->body)) {\n            $output .= $crlf . str_repeat($htab, $indent) . '<body><![CDATA[' .\n                       $input->body . ']]></body>' . $crlf;\n        }\n\n        return $output;\n    }\n\n    /**\n     * Helper function to _getXML(). Returns xml of a header.\n     *\n     * @param  string  Name of header\n     * @param  string  Value of header\n     * @param  integer Number of tabs to indent\n     * @return string  XML version of input\n     * @access private\n     */\n    function _getXML_helper($hdr_name, $hdr_value, $indent)\n    {\n        $htab   = \"\\t\";\n        $crlf   = \"\\r\\n\";\n        $return = '';\n\n        $new_hdr_value = ($hdr_name != 'received') ? Mail_mimeDecode::_parseHeaderValue($hdr_value) : array('value' => $hdr_value);\n        $new_hdr_name  = str_replace(' ', '-', ucwords(str_replace('-', ' ', $hdr_name)));\n\n        // Sort out any parameters\n        if (!empty($new_hdr_value['other'])) {\n            foreach ($new_hdr_value['other'] as $paramname => $paramvalue) {\n                $params[] = str_repeat($htab, $indent) . $htab . '<parameter>' . $crlf .\n                            str_repeat($htab, $indent) . $htab . $htab . '<paramname>' . htmlspecialchars($paramname) . '</paramname>' . $crlf .\n                            str_repeat($htab, $indent) . $htab . $htab . '<paramvalue>' . htmlspecialchars($paramvalue) . '</paramvalue>' . $crlf .\n                            str_repeat($htab, $indent) . $htab . '</parameter>' . $crlf;\n            }\n\n            $params = implode('', $params);\n        } else {\n            $params = '';\n        }\n\n        $return = str_repeat($htab, $indent) . '<header>' . $crlf .\n                  str_repeat($htab, $indent) . $htab . '<headername>' . htmlspecialchars($new_hdr_name) . '</headername>' . $crlf .\n                  str_repeat($htab, $indent) . $htab . '<headervalue>' . htmlspecialchars($new_hdr_value['value']) . '</headervalue>' . $crlf .\n                  $params .\n                  str_repeat($htab, $indent) . '</header>' . $crlf;\n\n        return $return;\n    }\n\n} // End of class\n"
  },
  {
    "path": "newscoop/include/Mail/mimePart.php",
    "content": "<?php\n/**\n * The Mail_mimePart class is used to create MIME E-mail messages\n *\n * This class enables you to manipulate and build a mime email\n * from the ground up. The Mail_Mime class is a userfriendly api\n * to this class for people who aren't interested in the internals\n * of mime mail.\n * This class however allows full control over the email.\n *\n * Compatible with PHP versions 4 and 5\n *\n * LICENSE: This LICENSE is in the BSD license style.\n * Copyright (c) 2002-2003, Richard Heyes <richard@phpguru.org>\n * Copyright (c) 2003-2006, PEAR <pear-group@php.net>\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or\n * without modification, are permitted provided that the following\n * conditions are met:\n *\n * - Redistributions of source code must retain the above copyright\n *   notice, this list of conditions and the following disclaimer.\n * - Redistributions in binary form must reproduce the above copyright\n *   notice, this list of conditions and the following disclaimer in the\n *   documentation and/or other materials provided with the distribution.\n * - Neither the name of the authors, nor the names of its contributors \n *   may be used to endorse or promote products derived from this \n *   software without specific prior written permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n * THE POSSIBILITY OF SUCH DAMAGE.\n *\n * @category  Mail\n * @package   Mail_Mime\n * @author    Richard Heyes  <richard@phpguru.org>\n * @author    Cipriano Groenendal <cipri@php.net>\n * @author    Sean Coates <sean@php.net>\n * @author    Aleksander Machniak <alec@php.net>\n * @copyright 2003-2006 PEAR <pear-group@php.net>\n * @license   http://www.opensource.org/licenses/bsd-license.php BSD License\n * @version   CVS: $Id: mimePart.php 301061 2010-07-07 18:20:17Z alec $\n * @link      http://pear.php.net/package/Mail_mime\n */\n\n\n/**\n * The Mail_mimePart class is used to create MIME E-mail messages\n *\n * This class enables you to manipulate and build a mime email\n * from the ground up. The Mail_Mime class is a userfriendly api\n * to this class for people who aren't interested in the internals\n * of mime mail.\n * This class however allows full control over the email.\n *\n * @category  Mail\n * @package   Mail_Mime\n * @author    Richard Heyes  <richard@phpguru.org>\n * @author    Cipriano Groenendal <cipri@php.net>\n * @author    Sean Coates <sean@php.net>\n * @author    Aleksander Machniak <alec@php.net>\n * @copyright 2003-2006 PEAR <pear-group@php.net>\n * @license   http://www.opensource.org/licenses/bsd-license.php BSD License\n * @version   Release: @package_version@\n * @link      http://pear.php.net/package/Mail_mime\n */\nclass Mail_mimePart\n{\n    /**\n    * The encoding type of this part\n    *\n    * @var string\n    * @access private\n    */\n    var $_encoding;\n\n    /**\n    * An array of subparts\n    *\n    * @var array\n    * @access private\n    */\n    var $_subparts;\n\n    /**\n    * The output of this part after being built\n    *\n    * @var string\n    * @access private\n    */\n    var $_encoded;\n\n    /**\n    * Headers for this part\n    *\n    * @var array\n    * @access private\n    */\n    var $_headers;\n\n    /**\n    * The body of this part (not encoded)\n    *\n    * @var string\n    * @access private\n    */\n    var $_body;\n\n    /**\n    * The location of file with body of this part (not encoded)\n    *\n    * @var string\n    * @access private\n    */\n    var $_body_file;\n\n    /**\n    * The end-of-line sequence\n    *\n    * @var string\n    * @access private\n    */\n    var $_eol = \"\\r\\n\";\n\n    /**\n    * Constructor.\n    *\n    * Sets up the object.\n    *\n    * @param string $body   The body of the mime part if any.\n    * @param array  $params An associative array of optional parameters:\n    *     content_type      - The content type for this part eg multipart/mixed\n    *     encoding          - The encoding to use, 7bit, 8bit,\n    *                         base64, or quoted-printable\n    *     cid               - Content ID to apply\n    *     disposition       - Content disposition, inline or attachment\n    *     dfilename         - Filename parameter for content disposition\n    *     description       - Content description\n    *     charset           - Character set to use\n    *     name_encoding     - Encoding for attachment name (Content-Type)\n    *                         By default filenames are encoded using RFC2231\n    *                         Here you can set RFC2047 encoding (quoted-printable\n    *                         or base64) instead\n    *     filename_encoding - Encoding for attachment filename (Content-Disposition)\n    *                         See 'name_encoding'\n    *     eol               - End of line sequence. Default: \"\\r\\n\"\n    *     body_file         - Location of file with part's body (instead of $body)\n    *\n    * @access public\n    */\n    function Mail_mimePart($body = '', $params = array())\n    {\n        if (!empty($params['eol'])) {\n            $this->_eol = $params['eol'];\n        } else if (defined('MAIL_MIMEPART_CRLF')) { // backward-copat.\n            $this->_eol = MAIL_MIMEPART_CRLF;\n        }\n\n        $c_type = array();\n        $c_disp = array();\n        foreach ($params as $key => $value) {\n            switch ($key) {\n            case 'content_type':\n                $c_type['type'] = $value;\n                break;\n\n            case 'encoding':\n                $this->_encoding = $value;\n                $headers['Content-Transfer-Encoding'] = $value;\n                break;\n\n            case 'cid':\n                $headers['Content-ID'] = '<' . $value . '>';\n                break;\n\n            case 'disposition':\n                $c_disp['disp'] = $value;\n                break;\n\n            case 'dfilename':\n                $c_disp['filename'] = $value;\n                $c_type['name'] = $value;\n                break;\n\n            case 'description':\n                $headers['Content-Description'] = $value;\n                break;\n\n            case 'charset':\n                $c_type['charset'] = $value;\n                $c_disp['charset'] = $value;\n                break;\n\n            case 'language':\n                $c_type['language'] = $value;\n                $c_disp['language'] = $value;\n                break;\n\n            case 'location':\n                $headers['Content-Location'] = $value;\n                break;\n\n            case 'body_file':\n                $this->_body_file = $value;\n                break;\n            }\n        }\n\n        // Default content-type\n        if (empty($c_type['type'])) {\n            $c_type['type'] = 'text/plain';\n        }\n\n        // Content-Type\n        if (!empty($c_type['type'])) {\n            $headers['Content-Type'] = $c_type['type'];\n            if (!empty($c_type['charset'])) {\n                $charset = \"charset={$c_type['charset']}\";\n                // place charset parameter in the same line, if possible\n                if ((strlen($headers['Content-Type']) + strlen($charset) + 16) <= 76) {\n                    $headers['Content-Type'] .= '; ';\n                } else {\n                    $headers['Content-Type'] .= ';' . $this->_eol . ' ';\n                }\n                $headers['Content-Type'] .= $charset;\n            }\n            if (!empty($c_type['name'])) {\n                $headers['Content-Type'] .= ';' . $this->_eol;\n                $headers['Content-Type'] .= $this->_buildHeaderParam(\n                    'name', $c_type['name'],\n                    isset($c_type['charset']) ? $c_type['charset'] : 'US-ASCII',\n                    isset($c_type['language']) ? $c_type['language'] : null,\n                    isset($params['name_encoding']) ?  $params['name_encoding'] : null\n                );\n            }\n        }\n\n        // Content-Disposition\n        if (!empty($c_disp['disp'])) {\n            $headers['Content-Disposition'] = $c_disp['disp'];\n            if (!empty($c_disp['filename'])) {\n                $headers['Content-Disposition'] .= ';' . $this->_eol;\n                $headers['Content-Disposition'] .= $this->_buildHeaderParam(\n                    'filename', $c_disp['filename'],\n                    isset($c_disp['charset']) ? $c_disp['charset'] : 'US-ASCII',\n                    isset($c_disp['language']) ? $c_disp['language'] : null,\n                    isset($params['filename_encoding']) ?  $params['filename_encoding'] : null\n                );\n            }\n        }\n\n        if (!empty($headers['Content-Description'])) {\n            $headers['Content-Description'] = $this->encodeHeader(\n                'Content-Description', $headers['Content-Description'],\n                isset($c_type['charset']) ? $c_type['charset'] : 'US-ASCII',\n                isset($params['name_encoding']) ?  $params['name_encoding'] : 'quoted-printable',\n                $this->_eol\n            );\n        }\n\n        // Default encoding\n        if (!isset($this->_encoding)) {\n            $this->_encoding = '7bit';\n        }\n\n        // Assign stuff to member variables\n        $this->_encoded  = array();\n        $this->_headers  = $headers;\n        $this->_body     = $body;\n    }\n\n    /**\n     * Encodes and returns the email. Also stores\n     * it in the encoded member variable\n     *\n     * @param string $boundary Pre-defined boundary string\n     *\n     * @return An associative array containing two elements,\n     *         body and headers. The headers element is itself\n     *         an indexed array. On error returns PEAR error object.\n     * @access public\n     */\n    function encode($boundary=null)\n    {\n        $encoded =& $this->_encoded;\n\n        if (count($this->_subparts)) {\n            $boundary = $boundary ? $boundary : '=_' . md5(rand() . microtime());\n            $eol = $this->_eol;\n\n            $this->_headers['Content-Type'] .= \";$eol boundary=\\\"$boundary\\\"\";\n\n            $encoded['body'] = ''; \n\n            for ($i = 0; $i < count($this->_subparts); $i++) {\n                $encoded['body'] .= '--' . $boundary . $eol;\n                $tmp = $this->_subparts[$i]->encode();\n                if (PEAR::isError($tmp)) {\n                    return $tmp;\n                }\n                foreach ($tmp['headers'] as $key => $value) {\n                    $encoded['body'] .= $key . ': ' . $value . $eol;\n                }\n                $encoded['body'] .= $eol . $tmp['body'] . $eol;\n            }\n\n            $encoded['body'] .= '--' . $boundary . '--' . $eol;\n\n        } else if ($this->_body) {\n            $encoded['body'] = $this->_getEncodedData($this->_body, $this->_encoding);\n        } else if ($this->_body_file) {\n            // Temporarily reset magic_quotes_runtime for file reads and writes\n            if ($magic_quote_setting = get_magic_quotes_runtime()) {\n                @ini_set('magic_quotes_runtime', 0);\n            }\n            $body = $this->_getEncodedDataFromFile($this->_body_file, $this->_encoding);\n            if ($magic_quote_setting) {\n                @ini_set('magic_quotes_runtime', $magic_quote_setting);\n            }\n\n            if (PEAR::isError($body)) {\n                return $body;\n            }\n            $encoded['body'] = $body;\n        } else {\n            $encoded['body'] = '';\n        }\n\n        // Add headers to $encoded\n        $encoded['headers'] =& $this->_headers;\n\n        return $encoded;\n    }\n\n    /**\n     * Encodes and saves the email into file. File must exist.\n     * Data will be appended to the file.\n     *\n     * @param string  $filename  Output file location\n     * @param string  $boundary  Pre-defined boundary string\n     * @param boolean $skip_head True if you don't want to save headers\n     *\n     * @return array An associative array containing message headers\n     *               or PEAR error object\n     * @access public\n     * @since 1.6.0\n     */\n    function encodeToFile($filename, $boundary=null, $skip_head=false)\n    {\n        if (file_exists($filename) && !is_writable($filename)) {\n            $err = PEAR::raiseError('File is not writeable: ' . $filename);\n            return $err;\n        }\n\n        if (!($fh = fopen($filename, 'ab'))) {\n            $err = PEAR::raiseError('Unable to open file: ' . $filename);\n            return $err;\n        }\n\n        // Temporarily reset magic_quotes_runtime for file reads and writes\n        if ($magic_quote_setting = get_magic_quotes_runtime()) {\n            @ini_set('magic_quotes_runtime', 0);\n        }\n\n        $res = $this->_encodePartToFile($fh, $boundary, $skip_head);\n\n        fclose($fh);\n\n        if ($magic_quote_setting) {\n            @ini_set('magic_quotes_runtime', $magic_quote_setting);\n        }\n\n        return PEAR::isError($res) ? $res : $this->_headers;\n    }\n\n    /**\n     * Encodes given email part into file\n     *\n     * @param string  $fh        Output file handle\n     * @param string  $boundary  Pre-defined boundary string\n     * @param boolean $skip_head True if you don't want to save headers\n     *\n     * @return array True on sucess or PEAR error object\n     * @access private\n     */\n    function _encodePartToFile($fh, $boundary=null, $skip_head=false)\n    {\n        $eol = $this->_eol;\n\n        if (count($this->_subparts)) {\n            $boundary = $boundary ? $boundary : '=_' . md5(rand() . microtime());\n            $this->_headers['Content-Type'] .= \";$eol boundary=\\\"$boundary\\\"\";\n        }\n\n        if (!$skip_head) {\n            foreach ($this->_headers as $key => $value) {\n                fwrite($fh, $key . ': ' . $value . $eol);\n            }\n            $f_eol = $eol;\n        } else {\n            $f_eol = '';\n        }\n\n        if (count($this->_subparts)) {\n            for ($i = 0; $i < count($this->_subparts); $i++) {\n                fwrite($fh, $f_eol . '--' . $boundary . $eol);\n                $res = $this->_subparts[$i]->_encodePartToFile($fh);\n                if (PEAR::isError($res)) {\n                    return $res;\n                }\n                $f_eol = $eol;\n            }\n\n            fwrite($fh, $eol . '--' . $boundary . '--' . $eol);\n\n        } else if ($this->_body) {\n            fwrite($fh, $f_eol . $this->_getEncodedData($this->_body, $this->_encoding));\n        } else if ($this->_body_file) {\n            fwrite($fh, $f_eol);\n            $res = $this->_getEncodedDataFromFile(\n                $this->_body_file, $this->_encoding, $fh\n            );\n            if (PEAR::isError($res)) {\n                return $res;\n            }\n        }\n\n        return true;\n    }\n\n    /**\n     * Adds a subpart to current mime part and returns\n     * a reference to it\n     *\n     * @param string $body   The body of the subpart, if any.\n     * @param array  $params The parameters for the subpart, same\n     *                       as the $params argument for constructor.\n     *\n     * @return Mail_mimePart A reference to the part you just added. It is\n     *                       crucial if using multipart/* in your subparts that\n     *                       you use =& in your script when calling this function,\n     *                       otherwise you will not be able to add further subparts.\n     * @access public\n     */\n    function &addSubpart($body, $params)\n    {\n        $this->_subparts[] = new Mail_mimePart($body, $params);\n        return $this->_subparts[count($this->_subparts) - 1];\n    }\n\n    /**\n     * Returns encoded data based upon encoding passed to it\n     *\n     * @param string $data     The data to encode.\n     * @param string $encoding The encoding type to use, 7bit, base64,\n     *                         or quoted-printable.\n     *\n     * @return string\n     * @access private\n     */\n    function _getEncodedData($data, $encoding)\n    {\n        switch ($encoding) {\n        case 'quoted-printable':\n            return $this->_quotedPrintableEncode($data);\n            break;\n\n        case 'base64':\n            return rtrim(chunk_split(base64_encode($data), 76, $this->_eol));\n            break;\n\n        case '8bit':\n        case '7bit':\n        default:\n            return $data;\n        }\n    }\n\n    /**\n     * Returns encoded data based upon encoding passed to it\n     *\n     * @param string   $filename Data file location\n     * @param string   $encoding The encoding type to use, 7bit, base64,\n     *                           or quoted-printable.\n     * @param resource $fh       Output file handle. If set, data will be\n     *                           stored into it instead of returning it\n     *\n     * @return string Encoded data or PEAR error object\n     * @access private\n     */\n    function _getEncodedDataFromFile($filename, $encoding, $fh=null)\n    {\n        if (!is_readable($filename)) {\n            $err = PEAR::raiseError('Unable to read file: ' . $filename);\n            return $err;\n        }\n\n        if (!($fd = fopen($filename, 'rb'))) {\n            $err = PEAR::raiseError('Could not open file: ' . $filename);\n            return $err;\n        }\n\n        $data = '';\n\n        switch ($encoding) {\n        case 'quoted-printable':\n            while (!feof($fd)) {\n                $buffer = $this->_quotedPrintableEncode(fgets($fd));\n                if ($fh) {\n                    fwrite($fh, $buffer);\n                } else {\n                    $data .= $buffer;\n                }\n            }\n            break;\n\n        case 'base64':\n            while (!feof($fd)) {\n                // Should read in a multiple of 57 bytes so that\n                // the output is 76 bytes per line. Don't use big chunks\n                // because base64 encoding is memory expensive\n                $buffer = fread($fd, 57 * 9198); // ca. 0.5 MB\n                $buffer = base64_encode($buffer);\n                $buffer = chunk_split($buffer, 76, $this->_eol);\n                if (feof($fd)) {\n                    $buffer = rtrim($buffer);\n                }\n\n                if ($fh) {\n                    fwrite($fh, $buffer);\n                } else {\n                    $data .= $buffer;\n                }\n            }\n            break;\n\n        case '8bit':\n        case '7bit':\n        default:\n            while (!feof($fd)) {\n                $buffer = fread($fd, 1048576); // 1 MB\n                if ($fh) {\n                    fwrite($fh, $buffer);\n                } else {\n                    $data .= $buffer;\n                }\n            }\n        }\n\n        fclose($fd);\n\n        if (!$fh) {\n            return $data;\n        }\n    }\n\n    /**\n     * Encodes data to quoted-printable standard.\n     *\n     * @param string $input    The data to encode\n     * @param int    $line_max Optional max line length. Should\n     *                         not be more than 76 chars\n     *\n     * @return string Encoded data\n     *\n     * @access private\n     */\n    function _quotedPrintableEncode($input , $line_max = 76)\n    {\n        $eol = $this->_eol;\n        /*\n        // imap_8bit() is extremely fast, but doesn't handle properly some characters\n        if (function_exists('imap_8bit') && $line_max == 76) {\n            $input = preg_replace('/\\r?\\n/', \"\\r\\n\", $input);\n            $input = imap_8bit($input);\n            if ($eol != \"\\r\\n\") {\n                $input = str_replace(\"\\r\\n\", $eol, $input);\n            }\n            return $input;\n        }\n        */\n        $lines  = preg_split(\"/\\r?\\n/\", $input);\n        $escape = '=';\n        $output = '';\n\n        while (list($idx, $line) = each($lines)) {\n            $newline = '';\n            $i = 0;\n\n            while (isset($line[$i])) {\n                $char = $line[$i];\n                $dec  = ord($char);\n                $i++;\n\n                if (($dec == 32) && (!isset($line[$i]))) {\n                    // convert space at eol only\n                    $char = '=20';\n                } elseif ($dec == 9 && isset($line[$i])) {\n                    ; // Do nothing if a TAB is not on eol\n                } elseif (($dec == 61) || ($dec < 32) || ($dec > 126)) {\n                    $char = $escape . sprintf('%02X', $dec);\n                } elseif (($dec == 46) && (($newline == '')\n                    || ((strlen($newline) + strlen(\"=2E\")) >= $line_max))\n                ) {\n                    // Bug #9722: convert full-stop at bol,\n                    // some Windows servers need this, won't break anything (cipri)\n                    // Bug #11731: full-stop at bol also needs to be encoded\n                    // if this line would push us over the line_max limit.\n                    $char = '=2E';\n                }\n\n                // Note, when changing this line, also change the ($dec == 46)\n                // check line, as it mimics this line due to Bug #11731\n                // EOL is not counted\n                if ((strlen($newline) + strlen($char)) >= $line_max) {\n                    // soft line break; \" =\\r\\n\" is okay\n                    $output  .= $newline . $escape . $eol;\n                    $newline  = '';\n                }\n                $newline .= $char;\n            } // end of for\n            $output .= $newline . $eol;\n            unset($lines[$idx]);\n        }\n        // Don't want last crlf\n        $output = substr($output, 0, -1 * strlen($eol));\n        return $output;\n    }\n\n    /**\n     * Encodes the paramater of a header.\n     *\n     * @param string $name      The name of the header-parameter\n     * @param string $value     The value of the paramter\n     * @param string $charset   The characterset of $value\n     * @param string $language  The language used in $value\n     * @param string $encoding  Parameter encoding. If not set, parameter value\n     *                          is encoded according to RFC2231\n     * @param int    $maxLength The maximum length of a line. Defauls to 75\n     *\n     * @return string\n     *\n     * @access private\n     */\n    function _buildHeaderParam($name, $value, $charset=null, $language=null,\n        $encoding=null, $maxLength=75\n    ) {\n        // RFC 2045:\n        // value needs encoding if contains non-ASCII chars or is longer than 78 chars\n        if (!preg_match('#[^\\x20-\\x7E]#', $value)) {\n            $token_regexp = '#([^\\x21,\\x23-\\x27,\\x2A,\\x2B,\\x2D'\n                . ',\\x2E,\\x30-\\x39,\\x41-\\x5A,\\x5E-\\x7E])#';\n            if (!preg_match($token_regexp, $value)) {\n                // token\n                if (strlen($name) + strlen($value) + 3 <= $maxLength) {\n                    return \" {$name}={$value}\";\n                }\n            } else {\n                // quoted-string\n                $quoted = addcslashes($value, '\\\\\"');\n                if (strlen($name) + strlen($quoted) + 5 <= $maxLength) {\n                    return \" {$name}=\\\"{$quoted}\\\"\";\n                }\n            }\n        }\n\n        // RFC2047: use quoted-printable/base64 encoding\n        if ($encoding == 'quoted-printable' || $encoding == 'base64') {\n            return $this->_buildRFC2047Param($name, $value, $charset, $encoding);\n        }\n\n        // RFC2231:\n        $encValue = preg_replace_callback(\n            '/([^\\x21,\\x23,\\x24,\\x26,\\x2B,\\x2D,\\x2E,\\x30-\\x39,\\x41-\\x5A,\\x5E-\\x7E])/',\n            array($this, '_encodeReplaceCallback'), $value\n        );\n        $value = \"$charset'$language'$encValue\";\n\n        $header = \" {$name}*={$value}\";\n        if (strlen($header) <= $maxLength) {\n            return $header;\n        }\n\n        $preLength = strlen(\" {$name}*0*=\");\n        $maxLength = max(16, $maxLength - $preLength - 3);\n        $maxLengthReg = \"|(.{0,$maxLength}[^\\%][^\\%])|\";\n\n        $headers = array();\n        $headCount = 0;\n        while ($value) {\n            $matches = array();\n            $found = preg_match($maxLengthReg, $value, $matches);\n            if ($found) {\n                $headers[] = \" {$name}*{$headCount}*={$matches[0]}\";\n                $value = substr($value, strlen($matches[0]));\n            } else {\n                $headers[] = \" {$name}*{$headCount}*={$value}\";\n                $value = '';\n            }\n            $headCount++;\n        }\n\n        $headers = implode(';' . $this->_eol, $headers);\n        return $headers;\n    }\n\n    /**\n     * Encodes header parameter as per RFC2047 if needed\n     *\n     * @param string $name      The parameter name\n     * @param string $value     The parameter value\n     * @param string $charset   The parameter charset\n     * @param string $encoding  Encoding type (quoted-printable or base64)\n     * @param int    $maxLength Encoded parameter max length. Default: 76\n     *\n     * @return string Parameter line\n     * @access private\n     */\n    function _buildRFC2047Param($name, $value, $charset,\n        $encoding='quoted-printable', $maxLength=76\n    ) {\n        // WARNING: RFC 2047 says: \"An 'encoded-word' MUST NOT be used in\n        // parameter of a MIME Content-Type or Content-Disposition field\",\n        // but... it's supported by many clients/servers\n        $quoted = '';\n\n        if ($encoding == 'base64') {\n            $value = base64_encode($value);\n            $prefix = '=?' . $charset . '?B?';\n            $suffix = '?=';\n\n            // 2 x SPACE, 2 x '\"', '=', ';'\n            $add_len = strlen($prefix . $suffix) + strlen($name) + 6;\n            $len = $add_len + strlen($value);\n\n            while ($len > $maxLength) { \n                // We can cut base64-encoded string every 4 characters\n                $real_len = floor(($maxLength - $add_len) / 4) * 4;\n                $_quote = substr($value, 0, $real_len);\n                $value = substr($value, $real_len);\n\n                $quoted .= $prefix . $_quote . $suffix . $this->_eol . ' ';\n                $add_len = strlen($prefix . $suffix) + 4; // 2 x SPACE, '\"', ';'\n                $len = strlen($value) + $add_len;\n            }\n            $quoted .= $prefix . $value . $suffix;\n\n        } else {\n            // quoted-printable\n            $value = $this->encodeQP($value);\n            $prefix = '=?' . $charset . '?Q?';\n            $suffix = '?=';\n\n            // 2 x SPACE, 2 x '\"', '=', ';'\n            $add_len = strlen($prefix . $suffix) + strlen($name) + 6;\n            $len = $add_len + strlen($value);\n\n            while ($len > $maxLength) {\n                $length = $maxLength - $add_len;\n                // don't break any encoded letters\n                if (preg_match(\"/^(.{0,$length}[^\\=][^\\=])/\", $value, $matches)) {\n                    $_quote = $matches[1];\n                }\n\n                $quoted .= $prefix . $_quote . $suffix . $this->_eol . ' ';\n                $value = substr($value, strlen($_quote));\n                $add_len = strlen($prefix . $suffix) + 4; // 2 x SPACE, '\"', ';'\n                $len = strlen($value) + $add_len;\n            }\n\n            $quoted .= $prefix . $value . $suffix;\n        }\n\n        return \" {$name}=\\\"{$quoted}\\\"\";\n    }\n\n    /**\n     * Encodes a header as per RFC2047\n     *\n     * @param string $name     The header name\n     * @param string $value    The header data to encode\n     * @param string $charset  Character set name\n     * @param string $encoding Encoding name (base64 or quoted-printable)\n     * @param string $eol      End-of-line sequence. Default: \"\\r\\n\"\n     *\n     * @return string          Encoded header data (without a name)\n     * @access public\n     * @since 1.6.1\n     */\n    function encodeHeader($name, $value, $charset='ISO-8859-1',\n        $encoding='quoted-printable', $eol=\"\\r\\n\"\n    ) {\n        // Structured headers\n        $comma_headers = array(\n            'from', 'to', 'cc', 'bcc', 'sender', 'reply-to',\n            'resent-from', 'resent-to', 'resent-cc', 'resent-bcc',\n            'resent-sender', 'resent-reply-to',\n            'return-receipt-to', 'disposition-notification-to',\n        );\n        $other_headers = array(\n            'references', 'in-reply-to', 'message-id', 'resent-message-id',\n        );\n\n        $name = strtolower($name);\n\n        if (in_array($name, $comma_headers)) {\n            $separator = ',';\n        } else if (in_array($name, $other_headers)) {\n            $separator = ' ';\n        }\n\n        if (!$charset) {\n            $charset = 'ISO-8859-1';\n        }\n\n        // Structured header (make sure addr-spec inside is not encoded)\n        if (!empty($separator)) {\n            $parts = Mail_mimePart::_explodeQuotedString($separator, $value);\n            $value = '';\n\n            foreach ($parts as $part) {\n                $part = preg_replace('/\\r?\\n[\\s\\t]*/', $eol . ' ', $part);\n                $part = trim($part);\n\n                if (!$part) {\n                    continue;\n                }\n                if ($value) {\n                    $value .= $separator==',' ? $separator.' ' : ' ';\n                } else {\n                    $value = $name . ': ';\n                }\n\n                // let's find phrase (name) and/or addr-spec\n                if (preg_match('/^<\\S+@\\S+>$/', $part)) {\n                    $value .= $part;\n                } else if (preg_match('/^\\S+@\\S+$/', $part)) {\n                    // address without brackets and without name\n                    $value .= $part;\n                } else if (preg_match('/<*\\S+@\\S+>*$/', $part, $matches)) {\n                    // address with name (handle name)\n                    $address = $matches[0];\n                    $word = str_replace($address, '', $part);\n                    $word = trim($word);\n                    // check if phrase requires quoting\n                    if ($word) {\n                        // non-ASCII: require encoding\n                        if (preg_match('#([\\x80-\\xFF]){1}#', $word)) {\n                            if ($word[0] == '\"' && $word[strlen($word)-1] == '\"') {\n                                // de-quote quoted-string, encoding changes\n                                // string to atom\n                                $search = array(\"\\\\\\\"\", \"\\\\\\\\\");\n                                $replace = array(\"\\\"\", \"\\\\\");\n                                $word = str_replace($search, $replace, $word);\n                                $word = substr($word, 1, -1);\n                            }\n                            // find length of last line\n                            if (($pos = strrpos($value, $eol)) !== false) {\n                                $last_len = strlen($value) - $pos;\n                            } else {\n                                $last_len = strlen($value);\n                            }\n                            $word = Mail_mimePart::encodeHeaderValue(\n                                $word, $charset, $encoding, $last_len, $eol\n                            );\n                        } else if (($word[0] != '\"' || $word[strlen($word)-1] != '\"')\n                            && preg_match('/[\\(\\)\\<\\>\\\\\\.\\[\\]@,;:\"]/', $word)\n                        ) {\n                            // ASCII: quote string if needed\n                            $word = '\"'.addcslashes($word, '\\\\\"').'\"';\n                        }\n                    }\n                    $value .= $word.' '.$address;\n                } else {\n                    // addr-spec not found, don't encode (?)\n                    $value .= $part;\n                }\n\n                // RFC2822 recommends 78 characters limit, use 76 from RFC2047\n                $value = wordwrap($value, 76, $eol . ' ');\n            }\n\n            // remove header name prefix (there could be EOL too)\n            $value = preg_replace(\n                '/^'.$name.':('.preg_quote($eol, '/').')* /', '', $value\n            );\n\n        } else {\n            // Unstructured header\n            // non-ASCII: require encoding\n            if (preg_match('#([\\x80-\\xFF]){1}#', $value)) {\n                if ($value[0] == '\"' && $value[strlen($value)-1] == '\"') {\n                    // de-quote quoted-string, encoding changes\n                    // string to atom\n                    $search = array(\"\\\\\\\"\", \"\\\\\\\\\");\n                    $replace = array(\"\\\"\", \"\\\\\");\n                    $value = str_replace($search, $replace, $value);\n                    $value = substr($value, 1, -1);\n                }\n                $value = Mail_mimePart::encodeHeaderValue(\n                    $value, $charset, $encoding, strlen($name) + 2, $eol\n                );\n            } else if (strlen($name.': '.$value) > 78) {\n                // ASCII: check if header line isn't too long and use folding\n                $value = preg_replace('/\\r?\\n[\\s\\t]*/', $eol . ' ', $value);\n                $tmp = wordwrap($name.': '.$value, 78, $eol . ' ');\n                $value = preg_replace('/^'.$name.':\\s*/', '', $tmp);\n                // hard limit 998 (RFC2822)\n                $value = wordwrap($value, 998, $eol . ' ', true);\n            }\n        }\n\n        return $value;\n    }\n\n    /**\n     * Explode quoted string\n     *\n     * @param string $delimiter Delimiter expression string for preg_match()\n     * @param string $string    Input string\n     *\n     * @return array            String tokens array\n     * @access private\n     */\n    function _explodeQuotedString($delimiter, $string)\n    {\n        $result = array();\n        $strlen = strlen($string);\n\n        for ($q=$p=$i=0; $i < $strlen; $i++) {\n            if ($string[$i] == \"\\\"\"\n                && (empty($string[$i-1]) || $string[$i-1] != \"\\\\\")\n            ) {\n                $q = $q ? false : true;\n            } else if (!$q && preg_match(\"/$delimiter/\", $string[$i])) {\n                $result[] = substr($string, $p, $i - $p);\n                $p = $i + 1;\n            }\n        }\n\n        $result[] = substr($string, $p);\n        return $result;\n    }\n\n    /**\n     * Encodes a header value as per RFC2047\n     *\n     * @param string $value      The header data to encode\n     * @param string $charset    Character set name\n     * @param string $encoding   Encoding name (base64 or quoted-printable)\n     * @param int    $prefix_len Prefix length. Default: 0\n     * @param string $eol        End-of-line sequence. Default: \"\\r\\n\"\n     *\n     * @return string            Encoded header data\n     * @access public\n     * @since 1.6.1\n     */\n    function encodeHeaderValue($value, $charset, $encoding, $prefix_len=0, $eol=\"\\r\\n\")\n    {\n        // #17311: Use multibyte aware method (requires mbstring extension)\n        if ($result = Mail_mimePart::encodeMB($value, $charset, $encoding, $prefix_len, $eol)) {\n            return $result;\n        }\n\n        // Generate the header using the specified params and dynamicly\n        // determine the maximum length of such strings.\n        // 75 is the value specified in the RFC.\n        $encoding = $encoding == 'base64' ? 'B' : 'Q';\n        $prefix = '=?' . $charset . '?' . $encoding .'?';\n        $suffix = '?=';\n        $maxLength = 75 - strlen($prefix . $suffix);\n        $maxLength1stLine = $maxLength - $prefix_len;\n\n        if ($encoding == 'B') {\n            // Base64 encode the entire string\n            $value = base64_encode($value);\n\n            // We can cut base64 every 4 characters, so the real max\n            // we can get must be rounded down.\n            $maxLength = $maxLength - ($maxLength % 4);\n            $maxLength1stLine = $maxLength1stLine - ($maxLength1stLine % 4);\n\n            $cutpoint = $maxLength1stLine;\n            $output = '';\n\n            while ($value) {\n                // Split translated string at every $maxLength\n                $part = substr($value, 0, $cutpoint);\n                $value = substr($value, $cutpoint);\n                $cutpoint = $maxLength;\n                // RFC 2047 specifies that any split header should\n                // be seperated by a CRLF SPACE.\n                if ($output) {\n                    $output .= $eol . ' ';\n                }\n                $output .= $prefix . $part . $suffix;\n            }\n            $value = $output;\n        } else {\n            // quoted-printable encoding has been selected\n            $value = Mail_mimePart::encodeQP($value);\n\n            // This regexp will break QP-encoded text at every $maxLength\n            // but will not break any encoded letters.\n            $reg1st = \"|(.{0,$maxLength1stLine}[^\\=][^\\=])|\";\n            $reg2nd = \"|(.{0,$maxLength}[^\\=][^\\=])|\";\n\n            if (strlen($value) > $maxLength1stLine) {\n                // Begin with the regexp for the first line.\n                $reg = $reg1st;\n                $output = '';\n                while ($value) {\n                    // Split translated string at every $maxLength\n                    // But make sure not to break any translated chars.\n                    $found = preg_match($reg, $value, $matches);\n\n                    // After this first line, we need to use a different\n                    // regexp for the first line.\n                    $reg = $reg2nd;\n\n                    // Save the found part and encapsulate it in the\n                    // prefix & suffix. Then remove the part from the\n                    // $value_out variable.\n                    if ($found) {\n                        $part = $matches[0];\n                        $len = strlen($matches[0]);\n                        $value = substr($value, $len);\n                    } else {\n                        $part = $value;\n                        $value = '';\n                    }\n\n                    // RFC 2047 specifies that any split header should\n                    // be seperated by a CRLF SPACE\n                    if ($output) {\n                        $output .= $eol . ' ';\n                    }\n                    $output .= $prefix . $part . $suffix;\n                }\n                $value = $output;\n            } else {\n                $value = $prefix . $value . $suffix;\n            }\n        }\n\n        return $value;\n    }\n\n    /**\n     * Encodes the given string using quoted-printable\n     *\n     * @param string $str String to encode\n     *\n     * @return string     Encoded string\n     * @access public\n     * @since 1.6.0\n     */\n    function encodeQP($str)\n    {\n        // Bug #17226 RFC 2047 restricts some characters\n        // if the word is inside a phrase, permitted chars are only:\n        // ASCII letters, decimal digits, \"!\", \"*\", \"+\", \"-\", \"/\", \"=\", and \"_\"\n\n        // \"=\",  \"_\",  \"?\" must be encoded\n        $regexp = '/([\\x22-\\x29\\x2C\\x2E\\x3A-\\x40\\x5B-\\x60\\x7B-\\x7E\\x80-\\xFF])/';\n        $str = preg_replace_callback(\n            $regexp, array('Mail_mimePart', '_qpReplaceCallback'), $str\n        );\n\n        return str_replace(' ', '_', $str);\n    }\n\n    /**\n     * Encodes the given string using base64 or quoted-printable.\n     * This method makes sure that encoded-word represents an integral\n     * number of characters as per RFC2047.\n     *\n     * @param string $str        String to encode\n     * @param string $charset    Character set name\n     * @param string $encoding   Encoding name (base64 or quoted-printable)\n     * @param int    $prefix_len Prefix length. Default: 0\n     * @param string $eol        End-of-line sequence. Default: \"\\r\\n\"\n     *\n     * @return string     Encoded string\n     * @access public\n     * @since 1.8.0\n     */\n    function encodeMB($str, $charset, $encoding, $prefix_len=0, $eol=\"\\r\\n\")\n    {\n        if (!function_exists('mb_substr') || !function_exists('mb_strlen')) {\n            return;\n        }\n\n        $encoding = $encoding == 'base64' ? 'B' : 'Q';\n        // 75 is the value specified in the RFC\n        $prefix = '=?' . $charset . '?'.$encoding.'?';\n        $suffix = '?=';\n        $maxLength = 75 - strlen($prefix . $suffix);\n\n        // A multi-octet character may not be split across adjacent encoded-words\n        // So, we'll loop over each character\n        // mb_stlen() with wrong charset will generate a warning here and return null\n        $length      = mb_strlen($str, $charset);\n        $result      = '';\n        $line_length = $prefix_len;\n\n        if ($encoding == 'B') {\n            // base64\n            $start = 0;\n            $prev  = '';\n\n            for ($i=1; $i<=$length; $i++) {\n                // See #17311\n                $chunk = mb_substr($str, $start, $i-$start, $charset);\n                $chunk = base64_encode($chunk);\n                $chunk_len = strlen($chunk);\n\n                if ($line_length + $chunk_len == $maxLength || $i == $length) {\n                    if ($result) {\n                        $result .= \"\\n\";\n                    }\n                    $result .= $chunk;\n                    $line_length = 0;\n                    $start = $i;\n                } else if ($line_length + $chunk_len > $maxLength) {\n                    if ($result) {\n                        $result .= \"\\n\";\n                    }\n                    if ($prev) {\n                        $result .= $prev;\n                    }\n                    $line_length = 0;\n                    $start = $i - 1;\n                } else {\n                    $prev = $chunk;\n                }\n            }\n        } else {\n            // quoted-printable\n            // see encodeQP()\n            $regexp = '/([\\x22-\\x29\\x2C\\x2E\\x3A-\\x40\\x5B-\\x60\\x7B-\\x7E\\x80-\\xFF])/';\n\n            for ($i=0; $i<=$length; $i++) {\n                $char = mb_substr($str, $i, 1, $charset);\n                // RFC recommends underline (instead of =20) in place of the space\n                // that's one of the reasons why we're not using iconv_mime_encode()\n                if ($char == ' ') {\n                    $char = '_';\n                    $char_len = 1;\n                } else {\n                    $char = preg_replace_callback(\n                        $regexp, array('Mail_mimePart', '_qpReplaceCallback'), $char\n                    );\n                    $char_len = strlen($char);\n                }\n\n                if ($line_length + $char_len > $maxLength) {\n                    if ($result) {\n                        $result .= \"\\n\";\n                    }\n                    $line_length = 0;\n                }\n\n                $result      .= $char;\n                $line_length += $char_len;\n            }\n        }\n\n        if ($result) {\n            $result = $prefix\n                .str_replace(\"\\n\", $suffix.$eol.' '.$prefix, $result).$suffix;\n        }\n\n        return $result;\n    }\n\n    /**\n     * Callback function to replace extended characters (\\x80-xFF) with their\n     * ASCII values (RFC2047: quoted-printable)\n     *\n     * @param array $matches Preg_replace's matches array\n     *\n     * @return string        Encoded character string\n     * @access private\n     */\n    function _qpReplaceCallback($matches)\n    {\n        return sprintf('=%02X', ord($matches[1]));\n    }\n\n    /**\n     * Callback function to replace extended characters (\\x80-xFF) with their\n     * ASCII values (RFC2231)\n     *\n     * @param array $matches Preg_replace's matches array\n     *\n     * @return string        Encoded character string\n     * @access private\n     */\n    function _encodeReplaceCallback($matches)\n    {\n        return sprintf('%%%02X', ord($matches[1]));\n    }\n\n} // End of class\n"
  },
  {
    "path": "newscoop/include/Mail/mock.php",
    "content": "<?php\n/**\n * Mock implementation\n *\n * PHP versions 4 and 5\n *\n * LICENSE:\n *\n * Copyright (c) 2010 Chuck Hagenbuch\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions\n * are met:\n *\n * o Redistributions of source code must retain the above copyright\n *   notice, this list of conditions and the following disclaimer.\n * o Redistributions in binary form must reproduce the above copyright\n *   notice, this list of conditions and the following disclaimer in the\n *   documentation and/or other materials provided with the distribution.\n * o The names of the authors may not be used to endorse or promote\n *   products derived from this software without specific prior written\n *   permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n * \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * @category    Mail\n * @package     Mail\n * @author      Chuck Hagenbuch <chuck@horde.org> \n * @copyright   2010 Chuck Hagenbuch\n * @license     http://opensource.org/licenses/bsd-license.php New BSD License\n * @version     CVS: $Id: mock.php 294747 2010-02-08 08:18:33Z clockwerx $\n * @link        http://pear.php.net/package/Mail/\n */\n\n/**\n * Mock implementation of the PEAR Mail:: interface for testing.\n * @access public\n * @package Mail\n * @version $Revision: 294747 $\n */\nclass Mail_mock extends Mail {\n\n    /**\n     * Array of messages that have been sent with the mock.\n     *\n     * @var array\n     * @access public\n     */\n    var $sentMessages = array();\n\n    /**\n     * Callback before sending mail.\n     *\n     * @var callback\n     */\n    var $_preSendCallback;\n\n    /**\n     * Callback after sending mai.\n     *\n     * @var callback\n     */\n    var $_postSendCallback;\n\n    /**\n     * Constructor.\n     *\n     * Instantiates a new Mail_mock:: object based on the parameters\n     * passed in. It looks for the following parameters, both optional:\n     *     preSendCallback   Called before an email would be sent.\n     *     postSendCallback  Called after an email would have been sent.\n     *\n     * @param array Hash containing any parameters.\n     * @access public\n     */\n    function Mail_mock($params)\n    {\n        if (isset($params['preSendCallback']) &&\n            is_callable($params['preSendCallback'])) {\n            $this->_preSendCallback = $params['preSendCallback'];\n        }\n\n        if (isset($params['postSendCallback']) &&\n            is_callable($params['postSendCallback'])) {\n            $this->_postSendCallback = $params['postSendCallback'];\n        }\n    }\n\n    /**\n     * Implements Mail_mock::send() function. Silently discards all\n     * mail.\n     *\n     * @param mixed $recipients Either a comma-seperated list of recipients\n     *              (RFC822 compliant), or an array of recipients,\n     *              each RFC822 valid. This may contain recipients not\n     *              specified in the headers, for Bcc:, resending\n     *              messages, etc.\n     *\n     * @param array $headers The array of headers to send with the mail, in an\n     *              associative array, where the array key is the\n     *              header name (ie, 'Subject'), and the array value\n     *              is the header value (ie, 'test'). The header\n     *              produced from those values would be 'Subject:\n     *              test'.\n     *\n     * @param string $body The full text of the message body, including any\n     *               Mime parts, etc.\n     *\n     * @return mixed Returns true on success, or a PEAR_Error\n     *               containing a descriptive error message on\n     *               failure.\n     * @access public\n     */\n    function send($recipients, $headers, $body)\n    {\n        if ($this->_preSendCallback) {\n            call_user_func_array($this->_preSendCallback,\n                                 array(&$this, $recipients, $headers, $body));\n        }\n\n        $entry = array('recipients' => $recipients, 'headers' => $headers, 'body' => $body);\n        $this->sentMessages[] = $entry;\n\n        if ($this->_postSendCallback) {\n            call_user_func_array($this->_postSendCallback,\n                                 array(&$this, $recipients, $headers, $body));\n        }\n\n        return true;\n    }\n\n}\n"
  },
  {
    "path": "newscoop/include/Mail/null.php",
    "content": "<?php\n/**\n * Null implementation of the PEAR Mail interface\n *\n * PHP versions 4 and 5\n *\n * LICENSE:\n *\n * Copyright (c) 2010 Phil Kernick\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions\n * are met:\n *\n * o Redistributions of source code must retain the above copyright\n *   notice, this list of conditions and the following disclaimer.\n * o Redistributions in binary form must reproduce the above copyright\n *   notice, this list of conditions and the following disclaimer in the\n *   documentation and/or other materials provided with the distribution.\n * o The names of the authors may not be used to endorse or promote\n *   products derived from this software without specific prior written\n *   permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n * \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * @category    Mail\n * @package     Mail\n * @author      Phil Kernick <philk@rotfl.com.au>\n * @copyright   2010 Phil Kernick\n * @license     http://opensource.org/licenses/bsd-license.php New BSD License\n * @version     CVS: $Id: null.php 294747 2010-02-08 08:18:33Z clockwerx $\n * @link        http://pear.php.net/package/Mail/\n */\n\n/**\n * Null implementation of the PEAR Mail:: interface.\n * @access public\n * @package Mail\n * @version $Revision: 294747 $\n */\nclass Mail_null extends Mail {\n\n    /**\n     * Implements Mail_null::send() function. Silently discards all\n     * mail.\n     *\n     * @param mixed $recipients Either a comma-seperated list of recipients\n     *              (RFC822 compliant), or an array of recipients,\n     *              each RFC822 valid. This may contain recipients not\n     *              specified in the headers, for Bcc:, resending\n     *              messages, etc.\n     *\n     * @param array $headers The array of headers to send with the mail, in an\n     *              associative array, where the array key is the\n     *              header name (ie, 'Subject'), and the array value\n     *              is the header value (ie, 'test'). The header\n     *              produced from those values would be 'Subject:\n     *              test'.\n     *\n     * @param string $body The full text of the message body, including any\n     *               Mime parts, etc.\n     *\n     * @return mixed Returns true on success, or a PEAR_Error\n     *               containing a descriptive error message on\n     *               failure.\n     * @access public\n     */\n    function send($recipients, $headers, $body)\n    {\n        return true;\n    }\n\n}\n"
  },
  {
    "path": "newscoop/include/Mail/sendmail.php",
    "content": "<?php\n//\n// +----------------------------------------------------------------------+\n// | PHP Version 4                                                        |\n// +----------------------------------------------------------------------+\n// | Copyright (c) 1997-2003 The PHP Group                                |\n// +----------------------------------------------------------------------+\n// | This source file is subject to version 2.02 of the PHP license,      |\n// | that is bundled with this package in the file LICENSE, and is        |\n// | available at through the world-wide-web at                           |\n// | http://www.php.net/license/2_02.txt.                                 |\n// | If you did not receive a copy of the PHP license and are unable to   |\n// | obtain it through the world-wide-web, please send a note to          |\n// | license@php.net so we can mail you a copy immediately.               |\n// +----------------------------------------------------------------------+\n// | Author: Chuck Hagenbuch <chuck@horde.org>                            |\n// +----------------------------------------------------------------------+\n\n/**\n * Sendmail implementation of the PEAR Mail:: interface.\n * @access public\n * @package Mail\n * @version $Revision: 294744 $\n */\nclass Mail_sendmail extends Mail {\n\n    /**\n     * The location of the sendmail or sendmail wrapper binary on the\n     * filesystem.\n     * @var string\n     */\n    var $sendmail_path = '/usr/sbin/sendmail';\n\n    /**\n     * Any extra command-line parameters to pass to the sendmail or\n     * sendmail wrapper binary.\n     * @var string\n     */\n    var $sendmail_args = '-i';\n\n    /**\n     * Constructor.\n     *\n     * Instantiates a new Mail_sendmail:: object based on the parameters\n     * passed in. It looks for the following parameters:\n     *     sendmail_path    The location of the sendmail binary on the\n     *                      filesystem. Defaults to '/usr/sbin/sendmail'.\n     *\n     *     sendmail_args    Any extra parameters to pass to the sendmail\n     *                      or sendmail wrapper binary.\n     *\n     * If a parameter is present in the $params array, it replaces the\n     * default.\n     *\n     * @param array $params Hash containing any parameters different from the\n     *              defaults.\n     * @access public\n     */\n    function Mail_sendmail($params)\n    {\n        if (isset($params['sendmail_path'])) {\n            $this->sendmail_path = $params['sendmail_path'];\n        }\n        if (isset($params['sendmail_args'])) {\n            $this->sendmail_args = $params['sendmail_args'];\n        }\n\n        /*\n         * Because we need to pass message headers to the sendmail program on\n         * the commandline, we can't guarantee the use of the standard \"\\r\\n\"\n         * separator.  Instead, we use the system's native line separator.\n         */\n        if (defined('PHP_EOL')) {\n            $this->sep = PHP_EOL;\n        } else {\n            $this->sep = (strpos(PHP_OS, 'WIN') === false) ? \"\\n\" : \"\\r\\n\";\n        }\n    }\n\n    /**\n     * Implements Mail::send() function using the sendmail\n     * command-line binary.\n     *\n     * @param mixed $recipients Either a comma-seperated list of recipients\n     *              (RFC822 compliant), or an array of recipients,\n     *              each RFC822 valid. This may contain recipients not\n     *              specified in the headers, for Bcc:, resending\n     *              messages, etc.\n     *\n     * @param array $headers The array of headers to send with the mail, in an\n     *              associative array, where the array key is the\n     *              header name (ie, 'Subject'), and the array value\n     *              is the header value (ie, 'test'). The header\n     *              produced from those values would be 'Subject:\n     *              test'.\n     *\n     * @param string $body The full text of the message body, including any\n     *               Mime parts, etc.\n     *\n     * @return mixed Returns true on success, or a PEAR_Error\n     *               containing a descriptive error message on\n     *               failure.\n     * @access public\n     */\n    function send($recipients, $headers, $body)\n    {\n        if (!is_array($headers)) {\n            return PEAR::raiseError('$headers must be an array');\n        }\n\n        $result = $this->_sanitizeHeaders($headers);\n        if (is_a($result, 'PEAR_Error')) {\n            return $result;\n        }\n\n        $recipients = $this->parseRecipients($recipients);\n        if (is_a($recipients, 'PEAR_Error')) {\n            return $recipients;\n        }\n        $recipients = implode(' ', array_map('escapeshellarg', $recipients));\n\n        $headerElements = $this->prepareHeaders($headers);\n        if (is_a($headerElements, 'PEAR_Error')) {\n            return $headerElements;\n        }\n        list($from, $text_headers) = $headerElements;\n\n        /* Since few MTAs are going to allow this header to be forged\n         * unless it's in the MAIL FROM: exchange, we'll use\n         * Return-Path instead of From: if it's set. */\n        if (!empty($headers['Return-Path'])) {\n            $from = $headers['Return-Path'];\n        }\n\n        if (!isset($from)) {\n            return PEAR::raiseError('No from address given.');\n        } elseif (strpos($from, ' ') !== false ||\n                  strpos($from, ';') !== false ||\n                  strpos($from, '&') !== false ||\n                  strpos($from, '`') !== false) {\n            return PEAR::raiseError('From address specified with dangerous characters.');\n        }\n\n        $from = escapeshellarg($from); // Security bug #16200\n\n        $mail = @popen($this->sendmail_path . (!empty($this->sendmail_args) ? ' ' . $this->sendmail_args : '') . \" -f$from -- $recipients\", 'w');\n        if (!$mail) {\n            return PEAR::raiseError('Failed to open sendmail [' . $this->sendmail_path . '] for execution.');\n        }\n\n        // Write the headers following by two newlines: one to end the headers\n        // section and a second to separate the headers block from the body.\n        fputs($mail, $text_headers . $this->sep . $this->sep);\n\n        fputs($mail, $body);\n        $result = pclose($mail);\n        if (version_compare(phpversion(), '4.2.3') == -1) {\n            // With older php versions, we need to shift the pclose\n            // result to get the exit code.\n            $result = $result >> 8 & 0xFF;\n        }\n\n        if ($result != 0) {\n            return PEAR::raiseError('sendmail returned error code ' . $result,\n                                    $result);\n        }\n\n        return true;\n    }\n\n}\n"
  },
  {
    "path": "newscoop/include/Mail/smtp.php",
    "content": "<?php\n/**\n * SMTP implementation of the PEAR Mail interface. Requires the Net_SMTP class.\n *\n * PHP versions 4 and 5\n *\n * LICENSE:\n *\n * Copyright (c) 2010, Chuck Hagenbuch\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions\n * are met:\n *\n * o Redistributions of source code must retain the above copyright\n *   notice, this list of conditions and the following disclaimer.\n * o Redistributions in binary form must reproduce the above copyright\n *   notice, this list of conditions and the following disclaimer in the\n *   documentation and/or other materials provided with the distribution.\n * o The names of the authors may not be used to endorse or promote\n *   products derived from this software without specific prior written\n *   permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n * \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * @category    HTTP\n * @package     HTTP_Request\n * @author      Jon Parise <jon@php.net> \n * @author      Chuck Hagenbuch <chuck@horde.org>\n * @copyright   2010 Chuck Hagenbuch\n * @license     http://opensource.org/licenses/bsd-license.php New BSD License\n * @version     CVS: $Id: smtp.php 294747 2010-02-08 08:18:33Z clockwerx $\n * @link        http://pear.php.net/package/Mail/\n */\n\n/** Error: Failed to create a Net_SMTP object */\ndefine('PEAR_MAIL_SMTP_ERROR_CREATE', 10000);\n\n/** Error: Failed to connect to SMTP server */\ndefine('PEAR_MAIL_SMTP_ERROR_CONNECT', 10001);\n\n/** Error: SMTP authentication failure */\ndefine('PEAR_MAIL_SMTP_ERROR_AUTH', 10002);\n\n/** Error: No From: address has been provided */\ndefine('PEAR_MAIL_SMTP_ERROR_FROM', 10003);\n\n/** Error: Failed to set sender */\ndefine('PEAR_MAIL_SMTP_ERROR_SENDER', 10004);\n\n/** Error: Failed to add recipient */\ndefine('PEAR_MAIL_SMTP_ERROR_RECIPIENT', 10005);\n\n/** Error: Failed to send data */\ndefine('PEAR_MAIL_SMTP_ERROR_DATA', 10006);\n\n/**\n * SMTP implementation of the PEAR Mail interface. Requires the Net_SMTP class.\n * @access public\n * @package Mail\n * @version $Revision: 294747 $\n */\nclass Mail_smtp extends Mail {\n\n    /**\n     * SMTP connection object.\n     *\n     * @var object\n     * @access private\n     */\n    var $_smtp = null;\n\n    /**\n     * The list of service extension parameters to pass to the Net_SMTP\n     * mailFrom() command.\n     * @var array\n     */\n    var $_extparams = array();\n\n    /**\n     * The SMTP host to connect to.\n     * @var string\n     */\n    var $host = 'localhost';\n\n    /**\n     * The port the SMTP server is on.\n     * @var integer\n     */\n    var $port = 25;\n\n    /**\n     * Should SMTP authentication be used?\n     *\n     * This value may be set to true, false or the name of a specific\n     * authentication method.\n     *\n     * If the value is set to true, the Net_SMTP package will attempt to use\n     * the best authentication method advertised by the remote SMTP server.\n     *\n     * @var mixed\n     */\n    var $auth = false;\n\n    /**\n     * The username to use if the SMTP server requires authentication.\n     * @var string\n     */\n    var $username = '';\n\n    /**\n     * The password to use if the SMTP server requires authentication.\n     * @var string\n     */\n    var $password = '';\n\n    /**\n     * Hostname or domain that will be sent to the remote SMTP server in the\n     * HELO / EHLO message.\n     *\n     * @var string\n     */\n    var $localhost = 'localhost';\n\n    /**\n     * SMTP connection timeout value.  NULL indicates no timeout.\n     *\n     * @var integer\n     */\n    var $timeout = null;\n\n    /**\n     * Turn on Net_SMTP debugging?\n     *\n     * @var boolean $debug\n     */\n    var $debug = false;\n\n    /**\n     * Indicates whether or not the SMTP connection should persist over\n     * multiple calls to the send() method.\n     *\n     * @var boolean\n     */\n    var $persist = false;\n\n    /**\n     * Use SMTP command pipelining (specified in RFC 2920) if the SMTP server\n     * supports it. This speeds up delivery over high-latency connections. By\n     * default, use the default value supplied by Net_SMTP.\n     * @var bool\n     */\n    var $pipelining;\n\n    /**\n     * Constructor.\n     *\n     * Instantiates a new Mail_smtp:: object based on the parameters\n     * passed in. It looks for the following parameters:\n     *     host        The server to connect to. Defaults to localhost.\n     *     port        The port to connect to. Defaults to 25.\n     *     auth        SMTP authentication.  Defaults to none.\n     *     username    The username to use for SMTP auth. No default.\n     *     password    The password to use for SMTP auth. No default.\n     *     localhost   The local hostname / domain. Defaults to localhost.\n     *     timeout     The SMTP connection timeout. Defaults to none.\n     *     verp        Whether to use VERP or not. Defaults to false.\n     *                 DEPRECATED as of 1.2.0 (use setMailParams()).\n     *     debug       Activate SMTP debug mode? Defaults to false.\n     *     persist     Should the SMTP connection persist?\n     *     pipelining  Use SMTP command pipelining\n     *\n     * If a parameter is present in the $params array, it replaces the\n     * default.\n     *\n     * @param array Hash containing any parameters different from the\n     *              defaults.\n     * @access public\n     */\n    function Mail_smtp($params)\n    {\n        if (isset($params['host'])) $this->host = $params['host'];\n        if (isset($params['port'])) $this->port = $params['port'];\n        if (isset($params['auth'])) $this->auth = $params['auth'];\n        if (isset($params['username'])) $this->username = $params['username'];\n        if (isset($params['password'])) $this->password = $params['password'];\n        if (isset($params['localhost'])) $this->localhost = $params['localhost'];\n        if (isset($params['timeout'])) $this->timeout = $params['timeout'];\n        if (isset($params['debug'])) $this->debug = (bool)$params['debug'];\n        if (isset($params['persist'])) $this->persist = (bool)$params['persist'];\n        if (isset($params['pipelining'])) $this->pipelining = (bool)$params['pipelining'];\n\n        // Deprecated options\n        if (isset($params['verp'])) {\n            $this->addServiceExtensionParameter('XVERP', is_bool($params['verp']) ? null : $params['verp']);\n        }\n\n        register_shutdown_function(array(&$this, '_Mail_smtp'));\n    }\n\n    /**\n     * Destructor implementation to ensure that we disconnect from any\n     * potentially-alive persistent SMTP connections.\n     */\n    function _Mail_smtp()\n    {\n        $this->disconnect();\n    }\n\n    /**\n     * Implements Mail::send() function using SMTP.\n     *\n     * @param mixed $recipients Either a comma-seperated list of recipients\n     *              (RFC822 compliant), or an array of recipients,\n     *              each RFC822 valid. This may contain recipients not\n     *              specified in the headers, for Bcc:, resending\n     *              messages, etc.\n     *\n     * @param array $headers The array of headers to send with the mail, in an\n     *              associative array, where the array key is the\n     *              header name (e.g., 'Subject'), and the array value\n     *              is the header value (e.g., 'test'). The header\n     *              produced from those values would be 'Subject:\n     *              test'.\n     *\n     * @param string $body The full text of the message body, including any\n     *               MIME parts, etc.\n     *\n     * @return mixed Returns true on success, or a PEAR_Error\n     *               containing a descriptive error message on\n     *               failure.\n     * @access public\n     */\n    function send($recipients, $headers, $body)\n    {\n        /* If we don't already have an SMTP object, create one. */\n        $result = &$this->getSMTPObject();\n        if (PEAR::isError($result)) {\n            return $result;\n        }\n\n        if (!is_array($headers)) {\n            return PEAR::raiseError('$headers must be an array');\n        }\n\n        $this->_sanitizeHeaders($headers);\n\n        $headerElements = $this->prepareHeaders($headers);\n        if (is_a($headerElements, 'PEAR_Error')) {\n            $this->_smtp->rset();\n            return $headerElements;\n        }\n        list($from, $textHeaders) = $headerElements;\n\n        /* Since few MTAs are going to allow this header to be forged\n         * unless it's in the MAIL FROM: exchange, we'll use\n         * Return-Path instead of From: if it's set. */\n        if (!empty($headers['Return-Path'])) {\n            $from = $headers['Return-Path'];\n        }\n\n        if (!isset($from)) {\n            $this->_smtp->rset();\n            return PEAR::raiseError('No From: address has been provided',\n                                    PEAR_MAIL_SMTP_ERROR_FROM);\n        }\n\n        $params = null;\n        if (!empty($this->_extparams)) {\n            foreach ($this->_extparams as $key => $val) {\n                $params .= ' ' . $key . (is_null($val) ? '' : '=' . $val);\n            }\n        }\n        if (PEAR::isError($res = $this->_smtp->mailFrom($from, ltrim($params)))) {\n            $error = $this->_error(\"Failed to set sender: $from\", $res);\n            $this->_smtp->rset();\n            return PEAR::raiseError($error, PEAR_MAIL_SMTP_ERROR_SENDER);\n        }\n\n        $recipients = $this->parseRecipients($recipients);\n        if (is_a($recipients, 'PEAR_Error')) {\n            $this->_smtp->rset();\n            return $recipients;\n        }\n\n        foreach ($recipients as $recipient) {\n            $res = $this->_smtp->rcptTo($recipient);\n            if (is_a($res, 'PEAR_Error')) {\n                $error = $this->_error(\"Failed to add recipient: $recipient\", $res);\n                $this->_smtp->rset();\n                return PEAR::raiseError($error, PEAR_MAIL_SMTP_ERROR_RECIPIENT);\n            }\n        }\n\n        /* Send the message's headers and the body as SMTP data. */\n        $res = $this->_smtp->data($textHeaders . \"\\r\\n\\r\\n\" . $body);\n\t\tlist(,$args) = $this->_smtp->getResponse();\n\n\t\tif (preg_match(\"/Ok: queued as (.*)/\", $args, $queued)) {\n\t\t\t$this->queued_as = $queued[1];\n\t\t}\n\n\t\t/* we need the greeting; from it we can extract the authorative name of the mail server we've really connected to.\n\t\t * ideal if we're connecting to a round-robin of relay servers and need to track which exact one took the email */\n\t\t$this->greeting = $this->_smtp->getGreeting();\n\n        if (is_a($res, 'PEAR_Error')) {\n            $error = $this->_error('Failed to send data', $res);\n            $this->_smtp->rset();\n            return PEAR::raiseError($error, PEAR_MAIL_SMTP_ERROR_DATA);\n        }\n\n        /* If persistent connections are disabled, destroy our SMTP object. */\n        if ($this->persist === false) {\n            $this->disconnect();\n        }\n\n        return true;\n    }\n\n    /**\n     * Connect to the SMTP server by instantiating a Net_SMTP object.\n     *\n     * @return mixed Returns a reference to the Net_SMTP object on success, or\n     *               a PEAR_Error containing a descriptive error message on\n     *               failure.\n     *\n     * @since  1.2.0\n     * @access public\n     */\n    function &getSMTPObject()\n    {\n        if (is_object($this->_smtp) !== false) {\n            return $this->_smtp;\n        }\n\n        include_once 'Net/SMTP.php';\n        $this->_smtp = &new Net_SMTP($this->host,\n                                     $this->port,\n                                     $this->localhost);\n\n        /* If we still don't have an SMTP object at this point, fail. */\n        if (is_object($this->_smtp) === false) {\n            return PEAR::raiseError('Failed to create a Net_SMTP object',\n                                    PEAR_MAIL_SMTP_ERROR_CREATE);\n        }\n\n        /* Configure the SMTP connection. */\n        if ($this->debug) {\n            $this->_smtp->setDebug(true);\n        }\n\n        /* Attempt to connect to the configured SMTP server. */\n        if (PEAR::isError($res = $this->_smtp->connect($this->timeout))) {\n            $error = $this->_error('Failed to connect to ' .\n                                   $this->host . ':' . $this->port,\n                                   $res);\n            return PEAR::raiseError($error, PEAR_MAIL_SMTP_ERROR_CONNECT);\n        }\n\n        /* Attempt to authenticate if authentication has been enabled. */\n        if ($this->auth) {\n            $method = is_string($this->auth) ? $this->auth : '';\n\n            if (PEAR::isError($res = $this->_smtp->auth($this->username,\n                                                        $this->password,\n                                                        $method))) {\n                $error = $this->_error(\"$method authentication failure\",\n                                       $res);\n                $this->_smtp->rset();\n                return PEAR::raiseError($error, PEAR_MAIL_SMTP_ERROR_AUTH);\n            }\n        }\n\n        return $this->_smtp;\n    }\n\n    /**\n     * Add parameter associated with a SMTP service extension.\n     *\n     * @param string Extension keyword.\n     * @param string Any value the keyword needs.\n     *\n     * @since 1.2.0\n     * @access public\n     */\n    function addServiceExtensionParameter($keyword, $value = null)\n    {\n        $this->_extparams[$keyword] = $value;\n    }\n\n    /**\n     * Disconnect and destroy the current SMTP connection.\n     *\n     * @return boolean True if the SMTP connection no longer exists.\n     *\n     * @since  1.1.9\n     * @access public\n     */\n    function disconnect()\n    {\n        /* If we have an SMTP object, disconnect and destroy it. */\n        if (is_object($this->_smtp) && $this->_smtp->disconnect()) {\n            $this->_smtp = null;\n        }\n\n        /* We are disconnected if we no longer have an SMTP object. */\n        return ($this->_smtp === null);\n    }\n\n    /**\n     * Build a standardized string describing the current SMTP error.\n     *\n     * @param string $text  Custom string describing the error context.\n     * @param object $error Reference to the current PEAR_Error object.\n     *\n     * @return string       A string describing the current SMTP error.\n     *\n     * @since  1.1.7\n     * @access private\n     */\n    function _error($text, &$error)\n    {\n        /* Split the SMTP response into a code and a response string. */\n        list($code, $response) = $this->_smtp->getResponse();\n\n        /* Build our standardized error string. */\n        return $text\n            . ' [SMTP: ' . $error->getMessage()\n            . \" (code: $code, response: $response)]\";\n    }\n\n}\n"
  },
  {
    "path": "newscoop/include/Mail/smtpmx.php",
    "content": "<?PHP\n/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */\n\n/**\n * SMTP MX\n *\n * SMTP MX implementation of the PEAR Mail interface. Requires the Net_SMTP class.\n *\n * PHP versions 4 and 5\n *\n * LICENSE:\n *\n * Copyright (c) 2010, gERD Schaufelberger\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions\n * are met:\n *\n * o Redistributions of source code must retain the above copyright\n *   notice, this list of conditions and the following disclaimer.\n * o Redistributions in binary form must reproduce the above copyright\n *   notice, this list of conditions and the following disclaimer in the\n *   documentation and/or other materials provided with the distribution.\n * o The names of the authors may not be used to endorse or promote\n *   products derived from this software without specific prior written\n *   permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n * \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * @category   Mail\n * @package    Mail_smtpmx\n * @author     gERD Schaufelberger <gerd@php-tools.net>\n * @copyright  2010 gERD Schaufelberger\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: smtpmx.php 294747 2010-02-08 08:18:33Z clockwerx $\n * @link       http://pear.php.net/package/Mail/\n */\n\nrequire_once 'Net/SMTP.php';\n\n/**\n * SMTP MX implementation of the PEAR Mail interface. Requires the Net_SMTP class.\n *\n *\n * @access public\n * @author  gERD Schaufelberger <gerd@php-tools.net>\n * @package Mail\n * @version $Revision: 294747 $\n */\nclass Mail_smtpmx extends Mail {\n\n    /**\n     * SMTP connection object.\n     *\n     * @var object\n     * @access private\n     */\n    var $_smtp = null;\n\n    /**\n     * The port the SMTP server is on.\n     * @var integer\n     * @see getservicebyname()\n     */\n    var $port = 25;\n\n    /**\n     * Hostname or domain that will be sent to the remote SMTP server in the\n     * HELO / EHLO message.\n     *\n     * @var string\n     * @see posix_uname()\n     */\n    var $mailname = 'localhost';\n\n    /**\n     * SMTP connection timeout value.  NULL indicates no timeout.\n     *\n     * @var integer\n     */\n    var $timeout = 10;\n\n    /**\n     * use either PEAR:Net_DNS or getmxrr\n     *\n     * @var boolean\n     */\n    var $withNetDns = true;\n\n    /**\n     * PEAR:Net_DNS_Resolver\n     *\n     * @var object\n     */\n    var $resolver;\n\n    /**\n     * Whether to use VERP or not. If not a boolean, the string value\n     * will be used as the VERP separators.\n     *\n     * @var mixed boolean or string\n     */\n    var $verp = false;\n\n    /**\n     * Whether to use VRFY or not.\n     *\n     * @var boolean $vrfy\n     */\n    var $vrfy = false;\n\n    /**\n     * Switch to test mode - don't send emails for real\n     *\n     * @var boolean $debug\n     */\n    var $test = false;\n\n    /**\n     * Turn on Net_SMTP debugging?\n     *\n     * @var boolean $peardebug\n     */\n    var $debug = false;\n\n    /**\n     * internal error codes\n     *\n     * translate internal error identifier to PEAR-Error codes and human\n     * readable messages.\n     *\n     * @var boolean $debug\n     * @todo as I need unique error-codes to identify what exactly went wrond\n     *       I did not use intergers as it should be. Instead I added a \"namespace\"\n     *       for each code. This avoids conflicts with error codes from different\n     *       classes. How can I use unique error codes and stay conform with PEAR?\n     */\n    var $errorCode = array(\n        'not_connected' => array(\n            'code'  => 1,\n            'msg'   => 'Could not connect to any mail server ({HOST}) at port {PORT} to send mail to {RCPT}.'\n        ),\n        'failed_vrfy_rcpt' => array(\n            'code'  => 2,\n            'msg'   => 'Recipient \"{RCPT}\" could not be veryfied.'\n        ),\n        'failed_set_from' => array(\n            'code'  => 3,\n            'msg'   => 'Failed to set sender: {FROM}.'\n        ),\n        'failed_set_rcpt' => array(\n            'code'  => 4,\n            'msg'   => 'Failed to set recipient: {RCPT}.'\n        ),\n        'failed_send_data' => array(\n            'code'  => 5,\n            'msg'   => 'Failed to send mail to: {RCPT}.'\n        ),\n        'no_from' => array(\n            'code'  => 5,\n            'msg'   => 'No from address has be provided.'\n        ),\n        'send_data' => array(\n            'code'  => 7,\n            'msg'   => 'Failed to create Net_SMTP object.'\n        ),\n        'no_mx' => array(\n            'code'  => 8,\n            'msg'   => 'No MX-record for {RCPT} found.'\n        ),\n        'no_resolver' => array(\n            'code'  => 9,\n            'msg'   => 'Could not start resolver! Install PEAR:Net_DNS or switch off \"netdns\"'\n        ),\n        'failed_rset' => array(\n            'code'  => 10,\n            'msg'   => 'RSET command failed, SMTP-connection corrupt.'\n        ),\n    );\n\n    /**\n     * Constructor.\n     *\n     * Instantiates a new Mail_smtp:: object based on the parameters\n     * passed in. It looks for the following parameters:\n     *     mailname    The name of the local mail system (a valid hostname which matches the reverse lookup)\n     *     port        smtp-port - the default comes from getservicebyname() and should work fine\n     *     timeout     The SMTP connection timeout. Defaults to 30 seconds.\n     *     vrfy        Whether to use VRFY or not. Defaults to false.\n     *     verp        Whether to use VERP or not. Defaults to false.\n     *     test        Activate test mode? Defaults to false.\n     *     debug       Activate SMTP and Net_DNS debug mode? Defaults to false.\n     *     netdns      whether to use PEAR:Net_DNS or the PHP build in function getmxrr, default is true\n     *\n     * If a parameter is present in the $params array, it replaces the\n     * default.\n     *\n     * @access public\n     * @param array Hash containing any parameters different from the\n     *              defaults.\n     * @see _Mail_smtpmx()\n     */\n    function __construct($params)\n    {\n        if (isset($params['mailname'])) {\n            $this->mailname = $params['mailname'];\n        } else {\n            // try to find a valid mailname\n            if (function_exists('posix_uname')) {\n                $uname = posix_uname();\n                $this->mailname = $uname['nodename'];\n            }\n        }\n\n        // port number\n        if (isset($params['port'])) {\n            $this->_port = $params['port'];\n        } else {\n            $this->_port = getservbyname('smtp', 'tcp');\n        }\n\n        if (isset($params['timeout'])) $this->timeout = $params['timeout'];\n        if (isset($params['verp'])) $this->verp = $params['verp'];\n        if (isset($params['test'])) $this->test = $params['test'];\n        if (isset($params['peardebug'])) $this->test = $params['peardebug'];\n        if (isset($params['netdns'])) $this->withNetDns = $params['netdns'];\n    }\n\n    /**\n     * Constructor wrapper for PHP4\n     *\n     * @access public\n     * @param array Hash containing any parameters different from the defaults\n     * @see __construct()\n     */\n    function Mail_smtpmx($params)\n    {\n        $this->__construct($params);\n        register_shutdown_function(array(&$this, '__destruct'));\n    }\n\n    /**\n     * Destructor implementation to ensure that we disconnect from any\n     * potentially-alive persistent SMTP connections.\n     */\n    function __destruct()\n    {\n        if (is_object($this->_smtp)) {\n            $this->_smtp->disconnect();\n            $this->_smtp = null;\n        }\n    }\n\n    /**\n     * Implements Mail::send() function using SMTP direct delivery\n     *\n     * @access public\n     * @param mixed $recipients in RFC822 style or array\n     * @param array $headers The array of headers to send with the mail.\n     * @param string $body The full text of the message body,\n     * @return mixed Returns true on success, or a PEAR_Error\n     */\n    function send($recipients, $headers, $body)\n    {\n        if (!is_array($headers)) {\n            return PEAR::raiseError('$headers must be an array');\n        }\n\n        $result = $this->_sanitizeHeaders($headers);\n        if (is_a($result, 'PEAR_Error')) {\n            return $result;\n        }\n\n        // Prepare headers\n        $headerElements = $this->prepareHeaders($headers);\n        if (is_a($headerElements, 'PEAR_Error')) {\n            return $headerElements;\n        }\n        list($from, $textHeaders) = $headerElements;\n\n        // use 'Return-Path' if possible\n        if (!empty($headers['Return-Path'])) {\n            $from = $headers['Return-Path'];\n        }\n        if (!isset($from)) {\n            return $this->_raiseError('no_from');\n        }\n\n        // Prepare recipients\n        $recipients = $this->parseRecipients($recipients);\n        if (is_a($recipients, 'PEAR_Error')) {\n            return $recipients;\n        }\n\n        foreach ($recipients as $rcpt) {\n            list($user, $host) = explode('@', $rcpt);\n\n            $mx = $this->_getMx($host);\n            if (is_a($mx, 'PEAR_Error')) {\n                return $mx;\n            }\n\n            if (empty($mx)) {\n                $info = array('rcpt' => $rcpt);\n                return $this->_raiseError('no_mx', $info);\n            }\n\n            $connected = false;\n            foreach ($mx as $mserver => $mpriority) {\n                $this->_smtp = new Net_SMTP($mserver, $this->port, $this->mailname);\n\n                // configure the SMTP connection.\n                if ($this->debug) {\n                    $this->_smtp->setDebug(true);\n                }\n\n                // attempt to connect to the configured SMTP server.\n                $res = $this->_smtp->connect($this->timeout);\n                if (is_a($res, 'PEAR_Error')) {\n                    $this->_smtp = null;\n                    continue;\n                }\n\n                // connection established\n                if ($res) {\n                    $connected = true;\n                    break;\n                }\n            }\n\n            if (!$connected) {\n                $info = array(\n                    'host' => implode(', ', array_keys($mx)),\n                    'port' => $this->port,\n                    'rcpt' => $rcpt,\n                );\n                return $this->_raiseError('not_connected', $info);\n            }\n\n            // Verify recipient\n            if ($this->vrfy) {\n                $res = $this->_smtp->vrfy($rcpt);\n                if (is_a($res, 'PEAR_Error')) {\n                    $info = array('rcpt' => $rcpt);\n                    return $this->_raiseError('failed_vrfy_rcpt', $info);\n                }\n            }\n\n            // mail from:\n            $args['verp'] = $this->verp;\n            $res = $this->_smtp->mailFrom($from, $args);\n            if (is_a($res, 'PEAR_Error')) {\n                $info = array('from' => $from);\n                return $this->_raiseError('failed_set_from', $info);\n            }\n\n            // rcpt to:\n            $res = $this->_smtp->rcptTo($rcpt);\n            if (is_a($res, 'PEAR_Error')) {\n                $info = array('rcpt' => $rcpt);\n                return $this->_raiseError('failed_set_rcpt', $info);\n            }\n\n            // Don't send anything in test mode\n            if ($this->test) {\n                $result = $this->_smtp->rset();\n                $res = $this->_smtp->rset();\n                if (is_a($res, 'PEAR_Error')) {\n                    return $this->_raiseError('failed_rset');\n                }\n\n                $this->_smtp->disconnect();\n                $this->_smtp = null;\n                return true;\n            }\n\n            // Send data\n            $res = $this->_smtp->data(\"$textHeaders\\r\\n$body\");\n            if (is_a($res, 'PEAR_Error')) {\n                $info = array('rcpt' => $rcpt);\n                return $this->_raiseError('failed_send_data', $info);\n            }\n\n            $this->_smtp->disconnect();\n            $this->_smtp = null;\n        }\n\n        return true;\n    }\n\n    /**\n     * Recieve mx rexords for a spciefied host\n     *\n     * The MX records\n     *\n     * @access private\n     * @param string $host mail host\n     * @return mixed sorted\n     */\n    function _getMx($host)\n    {\n        $mx = array();\n\n        if ($this->withNetDns) {\n            $res = $this->_loadNetDns();\n            if (is_a($res, 'PEAR_Error')) {\n                return $res;\n            }\n\n            $response = $this->resolver->query($host, 'MX');\n            if (!$response) {\n                return false;\n            }\n\n            foreach ($response->answer as $rr) {\n                if ($rr->type == 'MX') {\n                    $mx[$rr->exchange] = $rr->preference;\n                }\n            }\n        } else {\n            $mxHost = array();\n            $mxWeight = array();\n\n            if (!getmxrr($host, $mxHost, $mxWeight)) {\n                return false;\n            }\n            for ($i = 0; $i < count($mxHost); ++$i) {\n                $mx[$mxHost[$i]] = $mxWeight[$i];\n            }\n        }\n\n        asort($mx);\n        return $mx;\n    }\n\n    /**\n     * initialize PEAR:Net_DNS_Resolver\n     *\n     * @access private\n     * @return boolean true on success\n     */\n    function _loadNetDns()\n    {\n        if (is_object($this->resolver)) {\n            return true;\n        }\n\n        if (!include_once 'Net/DNS.php') {\n            return $this->_raiseError('no_resolver');\n        }\n\n        $this->resolver = new Net_DNS_Resolver();\n        if ($this->debug) {\n            $this->resolver->test = 1;\n        }\n\n        return true;\n    }\n\n    /**\n     * raise standardized error\n     *\n     * include additional information in error message\n     *\n     * @access private\n     * @param string $id maps error ids to codes and message\n     * @param array $info optional information in associative array\n     * @see _errorCode\n     */\n    function _raiseError($id, $info = array())\n    {\n        $code = $this->errorCode[$id]['code'];\n        $msg = $this->errorCode[$id]['msg'];\n\n        // include info to messages\n        if (!empty($info)) {\n            $search = array();\n            $replace = array();\n\n            foreach ($info as $key => $value) {\n                array_push($search, '{' . strtoupper($key) . '}');\n                array_push($replace, $value);\n            }\n\n            $msg = str_replace($search, $replace, $msg);\n        }\n\n        return PEAR::raiseError($msg, $code);\n    }\n\n}\n"
  },
  {
    "path": "newscoop/include/Mail.php",
    "content": "<?php\n/**\n *  PEAR's Mail:: interface.\n *\n * PHP versions 4 and 5\n *\n * LICENSE:\n *\n * Copyright (c) 2002-2007, Richard Heyes\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions\n * are met:\n *\n * o Redistributions of source code must retain the above copyright\n *   notice, this list of conditions and the following disclaimer.\n * o Redistributions in binary form must reproduce the above copyright\n *   notice, this list of conditions and the following disclaimer in the\n *   documentation and/or other materials provided with the distribution.\n * o The names of the authors may not be used to endorse or promote\n *   products derived from this software without specific prior written\n *   permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n * \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * @category    Mail\n * @package     Mail\n * @author      Chuck Hagenbuch <chuck@horde.org>\n * @copyright   1997-2010 Chuck Hagenbuch\n * @license     http://opensource.org/licenses/bsd-license.php New BSD License\n * @version     CVS: $Id: Mail.php 294747 2010-02-08 08:18:33Z clockwerx $\n * @link        http://pear.php.net/package/Mail/\n */\n\nrequire_once 'PEAR.php';\n\n/**\n * PEAR's Mail:: interface. Defines the interface for implementing\n * mailers under the PEAR hierarchy, and provides supporting functions\n * useful in multiple mailer backends.\n *\n * @access public\n * @version $Revision: 294747 $\n * @package Mail\n */\nclass Mail\n{\n    /**\n     * Line terminator used for separating header lines.\n     * @var string\n     */\n    var $sep = \"\\r\\n\";\n\n    /**\n     * Provides an interface for generating Mail:: objects of various\n     * types\n     *\n     * @param string $driver The kind of Mail:: object to instantiate.\n     * @param array  $params The parameters to pass to the Mail:: object.\n     * @return object Mail a instance of the driver class or if fails a PEAR Error\n     * @access public\n     */\n    function &factory($driver, $params = array())\n    {\n        $driver = strtolower($driver);\n        @include_once 'Mail/' . $driver . '.php';\n        $class = 'Mail_' . $driver;\n        if (class_exists($class)) {\n            $mailer = new $class($params);\n            return $mailer;\n        } else {\n            return PEAR::raiseError('Unable to find class for driver ' . $driver);\n        }\n    }\n\n    /**\n     * Implements Mail::send() function using php's built-in mail()\n     * command.\n     *\n     * @param mixed $recipients Either a comma-seperated list of recipients\n     *              (RFC822 compliant), or an array of recipients,\n     *              each RFC822 valid. This may contain recipients not\n     *              specified in the headers, for Bcc:, resending\n     *              messages, etc.\n     *\n     * @param array $headers The array of headers to send with the mail, in an\n     *              associative array, where the array key is the\n     *              header name (ie, 'Subject'), and the array value\n     *              is the header value (ie, 'test'). The header\n     *              produced from those values would be 'Subject:\n     *              test'.\n     *\n     * @param string $body The full text of the message body, including any\n     *               Mime parts, etc.\n     *\n     * @return mixed Returns true on success, or a PEAR_Error\n     *               containing a descriptive error message on\n     *               failure.\n     *\n     * @access public\n     * @deprecated use Mail_mail::send instead\n     */\n    function send($recipients, $headers, $body)\n    {\n        if (!is_array($headers)) {\n            return PEAR::raiseError('$headers must be an array');\n        }\n\n        $result = $this->_sanitizeHeaders($headers);\n        if (is_a($result, 'PEAR_Error')) {\n            return $result;\n        }\n\n        // if we're passed an array of recipients, implode it.\n        if (is_array($recipients)) {\n            $recipients = implode(', ', $recipients);\n        }\n\n        // get the Subject out of the headers array so that we can\n        // pass it as a seperate argument to mail().\n        $subject = '';\n        if (isset($headers['Subject'])) {\n            $subject = $headers['Subject'];\n            unset($headers['Subject']);\n        }\n\n        // flatten the headers out.\n        list(, $text_headers) = Mail::prepareHeaders($headers);\n\n        return mail($recipients, $subject, $body, $text_headers);\n    }\n\n    /**\n     * Sanitize an array of mail headers by removing any additional header\n     * strings present in a legitimate header's value.  The goal of this\n     * filter is to prevent mail injection attacks.\n     *\n     * @param array $headers The associative array of headers to sanitize.\n     *\n     * @access private\n     */\n    function _sanitizeHeaders(&$headers)\n    {\n        foreach ($headers as $key => $value) {\n            $headers[$key] =\n                preg_replace('=((<CR>|<LF>|0x0A/%0A|0x0D/%0D|\\\\n|\\\\r)\\S).*=i',\n                             null, $value);\n        }\n    }\n\n    /**\n     * Take an array of mail headers and return a string containing\n     * text usable in sending a message.\n     *\n     * @param array $headers The array of headers to prepare, in an associative\n     *              array, where the array key is the header name (ie,\n     *              'Subject'), and the array value is the header\n     *              value (ie, 'test'). The header produced from those\n     *              values would be 'Subject: test'.\n     *\n     * @return mixed Returns false if it encounters a bad address,\n     *               otherwise returns an array containing two\n     *               elements: Any From: address found in the headers,\n     *               and the plain text version of the headers.\n     * @access private\n     */\n    function prepareHeaders($headers)\n    {\n        $lines = array();\n        $from = null;\n\n        foreach ($headers as $key => $value) {\n            if (strcasecmp($key, 'From') === 0) {\n                include_once 'Mail/RFC822.php';\n                $parser = new Mail_RFC822();\n                $addresses = $parser->parseAddressList($value, 'localhost', false);\n                if (is_a($addresses, 'PEAR_Error')) {\n                    return $addresses;\n                }\n\n                $from = $addresses[0]->mailbox . '@' . $addresses[0]->host;\n\n                // Reject envelope From: addresses with spaces.\n                if (strstr($from, ' ')) {\n                    return false;\n                }\n\n                $lines[] = $key . ': ' . $value;\n            } elseif (strcasecmp($key, 'Received') === 0) {\n                $received = array();\n                if (is_array($value)) {\n                    foreach ($value as $line) {\n                        $received[] = $key . ': ' . $line;\n                    }\n                }\n                else {\n                    $received[] = $key . ': ' . $value;\n                }\n                // Put Received: headers at the top.  Spam detectors often\n                // flag messages with Received: headers after the Subject:\n                // as spam.\n                $lines = array_merge($received, $lines);\n            } else {\n                // If $value is an array (i.e., a list of addresses), convert\n                // it to a comma-delimited string of its elements (addresses).\n                if (is_array($value)) {\n                    $value = implode(', ', $value);\n                }\n                $lines[] = $key . ': ' . $value;\n            }\n        }\n\n        return array($from, join($this->sep, $lines));\n    }\n\n    /**\n     * Take a set of recipients and parse them, returning an array of\n     * bare addresses (forward paths) that can be passed to sendmail\n     * or an smtp server with the rcpt to: command.\n     *\n     * @param mixed Either a comma-seperated list of recipients\n     *              (RFC822 compliant), or an array of recipients,\n     *              each RFC822 valid.\n     *\n     * @return mixed An array of forward paths (bare addresses) or a PEAR_Error\n     *               object if the address list could not be parsed.\n     * @access private\n     */\n    function parseRecipients($recipients)\n    {\n        include_once 'Mail/RFC822.php';\n\n        // if we're passed an array, assume addresses are valid and\n        // implode them before parsing.\n        if (is_array($recipients)) {\n            $recipients = implode(', ', $recipients);\n        }\n\n        // Parse recipients, leaving out all personal info. This is\n        // for smtp recipients, etc. All relevant personal information\n        // should already be in the headers.\n        $addresses = Mail_RFC822::parseAddressList($recipients, 'localhost', false);\n\n        // If parseAddressList() returned a PEAR_Error object, just return it.\n        if (is_a($addresses, 'PEAR_Error')) {\n            return $addresses;\n        }\n\n        $recipients = array();\n        if (is_array($addresses)) {\n            foreach ($addresses as $ob) {\n                $recipients[] = $ob->mailbox . '@' . $ob->host;\n            }\n        }\n\n        return $recipients;\n    }\n\n}\n"
  },
  {
    "path": "newscoop/include/Net/SMTP.php",
    "content": "<?php\n/* vim: set expandtab softtabstop=4 tabstop=4 shiftwidth=4: */\n// +----------------------------------------------------------------------+\n// | PHP Version 4                                                        |\n// +----------------------------------------------------------------------+\n// | Copyright (c) 1997-2003 The PHP Group                                |\n// +----------------------------------------------------------------------+\n// | This source file is subject to version 2.02 of the PHP license,      |\n// | that is bundled with this package in the file LICENSE, and is        |\n// | available at through the world-wide-web at                           |\n// | http://www.php.net/license/2_02.txt.                                 |\n// | If you did not receive a copy of the PHP license and are unable to   |\n// | obtain it through the world-wide-web, please send a note to          |\n// | license@php.net so we can mail you a copy immediately.               |\n// +----------------------------------------------------------------------+\n// | Authors: Chuck Hagenbuch <chuck@horde.org>                           |\n// |          Jon Parise <jon@php.net>                                    |\n// |          Damian Alejandro Fernandez Sosa <damlists@cnba.uba.ar>      |\n// +----------------------------------------------------------------------+\n//\n// $Id: SMTP.php 293948 2010-01-24 21:46:00Z jon $\n\nrequire_once 'PEAR.php';\nrequire_once 'Net/Socket.php';\n\n/**\n * Provides an implementation of the SMTP protocol using PEAR's\n * Net_Socket:: class.\n *\n * @package Net_SMTP\n * @author  Chuck Hagenbuch <chuck@horde.org>\n * @author  Jon Parise <jon@php.net>\n * @author  Damian Alejandro Fernandez Sosa <damlists@cnba.uba.ar>\n *\n * @example basic.php   A basic implementation of the Net_SMTP package.\n */\nclass Net_SMTP\n{\n    /**\n     * The server to connect to.\n     * @var string\n     * @access public\n     */\n    var $host = 'localhost';\n\n    /**\n     * The port to connect to.\n     * @var int\n     * @access public\n     */\n    var $port = 25;\n\n    /**\n     * The value to give when sending EHLO or HELO.\n     * @var string\n     * @access public\n     */\n    var $localhost = 'localhost';\n\n    /**\n     * List of supported authentication methods, in preferential order.\n     * @var array\n     * @access public\n     */\n    var $auth_methods = array('DIGEST-MD5', 'CRAM-MD5', 'LOGIN', 'PLAIN');\n\n    /**\n     * Use SMTP command pipelining (specified in RFC 2920) if the SMTP\n     * server supports it.\n     *\n     * When pipeling is enabled, rcptTo(), mailFrom(), sendFrom(),\n     * somlFrom() and samlFrom() do not wait for a response from the\n     * SMTP server but return immediately.\n     *\n     * @var bool\n     * @access public\n     */\n    var $pipelining = false;\n\n    /**\n     * Number of pipelined commands.\n     * @var int\n     * @access private\n     */\n    var $_pipelined_commands = 0;\n\n    /**\n     * Should debugging output be enabled?\n     * @var boolean\n     * @access private\n     */\n    var $_debug = false;\n\n    /**\n     * Debug output handler.\n     * @var callback\n     * @access private\n     */\n    var $_debug_handler = null;\n\n    /**\n     * The socket resource being used to connect to the SMTP server.\n     * @var resource\n     * @access private\n     */\n    var $_socket = null;\n\n    /**\n     * The most recent server response code.\n     * @var int\n     * @access private\n     */\n    var $_code = -1;\n\n    /**\n     * The most recent server response arguments.\n     * @var array\n     * @access private\n     */\n    var $_arguments = array();\n\n    /**\n     * Stores the SMTP server's greeting string.\n     * @var string\n     * @access private\n     */\n    var $_greeting = null;\n\n    /**\n     * Stores detected features of the SMTP server.\n     * @var array\n     * @access private\n     */\n    var $_esmtp = array();\n\n    /**\n     * Instantiates a new Net_SMTP object, overriding any defaults\n     * with parameters that are passed in.\n     *\n     * If you have SSL support in PHP, you can connect to a server\n     * over SSL using an 'ssl://' prefix:\n     *\n     *   // 465 is a common smtps port.\n     *   $smtp = new Net_SMTP('ssl://mail.host.com', 465);\n     *   $smtp->connect();\n     *\n     * @param string  $host       The server to connect to.\n     * @param integer $port       The port to connect to.\n     * @param string  $localhost  The value to give when sending EHLO or HELO.\n     * @param boolean $pipeling   Use SMTP command pipelining\n     *\n     * @access  public\n     * @since   1.0\n     */\n    function Net_SMTP($host = null, $port = null, $localhost = null, $pipelining = false)\n    {\n        if (isset($host)) {\n            $this->host = $host;\n        }\n        if (isset($port)) {\n            $this->port = $port;\n        }\n        if (isset($localhost)) {\n            $this->localhost = $localhost;\n        }\n        $this->pipelining = $pipelining;\n\n        $this->_socket = new Net_Socket();\n\n        /* Include the Auth_SASL package.  If the package is not\n         * available, we disable the authentication methods that\n         * depend upon it. */\n        if ((@include_once 'Auth/SASL.php') === false) {\n            $pos = array_search('DIGEST-MD5', $this->auth_methods);\n            unset($this->auth_methods[$pos]);\n            $pos = array_search('CRAM-MD5', $this->auth_methods);\n            unset($this->auth_methods[$pos]);\n        }\n    }\n\n    /**\n     * Set the value of the debugging flag.\n     *\n     * @param   boolean $debug      New value for the debugging flag.\n     *\n     * @access  public\n     * @since   1.1.0\n     */\n    function setDebug($debug, $handler = null)\n    {\n        $this->_debug = $debug;\n        $this->_debug_handler = $handler;\n    }\n\n    /**\n     * Write the given debug text to the current debug output handler.\n     *\n     * @param   string  $message    Debug mesage text.\n     *\n     * @access  private\n     * @since   1.3.3\n     */\n    function _debug($message)\n    {\n        if ($this->_debug) {\n            if ($this->_debug_handler) {\n                call_user_func_array($this->_debug_handler,\n                                     array(&$this, $message));\n            } else {\n                echo \"DEBUG: $message\\n\";\n            }\n        }\n    }\n\n    /**\n     * Send the given string of data to the server.\n     *\n     * @param   string  $data       The string of data to send.\n     *\n     * @return  mixed   True on success or a PEAR_Error object on failure.\n     *\n     * @access  private\n     * @since   1.1.0\n     */\n    function _send($data)\n    {\n        $this->_debug(\"Send: $data\");\n\n        $error = $this->_socket->write($data);\n        if ($error === false || PEAR::isError($error)) {\n            $msg = ($error) ? $error->getMessage() : \"unknown error\";\n            return PEAR::raiseError(\"Failed to write to socket: $msg\");\n        }\n\n        return true;\n    }\n\n    /**\n     * Send a command to the server with an optional string of\n     * arguments.  A carriage return / linefeed (CRLF) sequence will\n     * be appended to each command string before it is sent to the\n     * SMTP server - an error will be thrown if the command string\n     * already contains any newline characters. Use _send() for\n     * commands that must contain newlines.\n     *\n     * @param   string  $command    The SMTP command to send to the server.\n     * @param   string  $args       A string of optional arguments to append\n     *                              to the command.\n     *\n     * @return  mixed   The result of the _send() call.\n     *\n     * @access  private\n     * @since   1.1.0\n     */\n    function _put($command, $args = '')\n    {\n        if (!empty($args)) {\n            $command .= ' ' . $args;\n        }\n\n        if (strcspn($command, \"\\r\\n\") !== strlen($command)) {\n            return PEAR::raiseError('Commands cannot contain newlines');\n        }\n\n        return $this->_send($command . \"\\r\\n\");\n    }\n\n    /**\n     * Read a reply from the SMTP server.  The reply consists of a response\n     * code and a response message.\n     *\n     * @param   mixed   $valid      The set of valid response codes.  These\n     *                              may be specified as an array of integer\n     *                              values or as a single integer value.\n     * @param   bool    $later      Do not parse the response now, but wait\n     *                              until the last command in the pipelined\n     *                              command group\n     *\n     * @return  mixed   True if the server returned a valid response code or\n     *                  a PEAR_Error object is an error condition is reached.\n     *\n     * @access  private\n     * @since   1.1.0\n     *\n     * @see     getResponse\n     */\n    function _parseResponse($valid, $later = false)\n    {\n        $this->_code = -1;\n        $this->_arguments = array();\n\n        if ($later) {\n            $this->_pipelined_commands++;\n            return true;\n        }\n\n        for ($i = 0; $i <= $this->_pipelined_commands; $i++) {\n            while ($line = $this->_socket->readLine()) {\n                $this->_debug(\"Recv: $line\");\n\n                /* If we receive an empty line, the connection has been closed. */\n                if (empty($line)) {\n                    $this->disconnect();\n                    return PEAR::raiseError('Connection was unexpectedly closed');\n                }\n\n                /* Read the code and store the rest in the arguments array. */\n                $code = substr($line, 0, 3);\n                $this->_arguments[] = trim(substr($line, 4));\n\n                /* Check the syntax of the response code. */\n                if (is_numeric($code)) {\n                    $this->_code = (int)$code;\n                } else {\n                    $this->_code = -1;\n                    break;\n                }\n\n                /* If this is not a multiline response, we're done. */\n                if (substr($line, 3, 1) != '-') {\n                    break;\n                }\n            }\n        }\n\n        $this->_pipelined_commands = 0;\n\n        /* Compare the server's response code with the valid code/codes. */\n        if (is_int($valid) && ($this->_code === $valid)) {\n            return true;\n        } elseif (is_array($valid) && in_array($this->_code, $valid, true)) {\n            return true;\n        }\n\n        return PEAR::raiseError('Invalid response code received from server',\n                                $this->_code);\n    }\n\n    /**\n     * Return a 2-tuple containing the last response from the SMTP server.\n     *\n     * @return  array   A two-element array: the first element contains the\n     *                  response code as an integer and the second element\n     *                  contains the response's arguments as a string.\n     *\n     * @access  public\n     * @since   1.1.0\n     */\n    function getResponse()\n    {\n        return array($this->_code, join(\"\\n\", $this->_arguments));\n    }\n\n    /**\n     * Return the SMTP server's greeting string.\n     *\n     * @return  string  A string containing the greeting string, or null if a \n     *                  greeting has not been received.\n     *\n     * @access  public\n     * @since   1.3.3\n     */\n    function getGreeting()\n    {\n        return $this->_greeting;\n    }\n\n    /**\n     * Attempt to connect to the SMTP server.\n     *\n     * @param   int     $timeout    The timeout value (in seconds) for the\n     *                              socket connection.\n     * @param   bool    $persistent Should a persistent socket connection\n     *                              be used?\n     *\n     * @return mixed Returns a PEAR_Error with an error message on any\n     *               kind of failure, or true on success.\n     * @access public\n     * @since  1.0\n     */\n    function connect($timeout = null, $persistent = false)\n    {\n        $this->_greeting = null;\n        $result = $this->_socket->connect($this->host, $this->port,\n                                          $persistent, $timeout);\n        if (PEAR::isError($result)) {\n            return PEAR::raiseError('Failed to connect socket: ' .\n                                    $result->getMessage());\n        }\n\n        if (PEAR::isError($error = $this->_parseResponse(220))) {\n            return $error;\n        }\n\n        /* Extract and store a copy of the server's greeting string. */\n        list(, $this->_greeting) = $this->getResponse();\n\n        if (PEAR::isError($error = $this->_negotiate())) {\n            return $error;\n        }\n\n        return true;\n    }\n\n    /**\n     * Attempt to disconnect from the SMTP server.\n     *\n     * @return mixed Returns a PEAR_Error with an error message on any\n     *               kind of failure, or true on success.\n     * @access public\n     * @since  1.0\n     */\n    function disconnect()\n    {\n        if (PEAR::isError($error = $this->_put('QUIT'))) {\n            return $error;\n        }\n        if (PEAR::isError($error = $this->_parseResponse(221))) {\n            return $error;\n        }\n        if (PEAR::isError($error = $this->_socket->disconnect())) {\n            return PEAR::raiseError('Failed to disconnect socket: ' .\n                                    $error->getMessage());\n        }\n\n        return true;\n    }\n\n    /**\n     * Attempt to send the EHLO command and obtain a list of ESMTP\n     * extensions available, and failing that just send HELO.\n     *\n     * @return mixed Returns a PEAR_Error with an error message on any\n     *               kind of failure, or true on success.\n     *\n     * @access private\n     * @since  1.1.0\n     */\n    function _negotiate()\n    {\n        if (PEAR::isError($error = $this->_put('EHLO', $this->localhost))) {\n            return $error;\n        }\n\n        if (PEAR::isError($this->_parseResponse(250))) {\n            /* If we receive a 503 response, we're already authenticated. */\n            if ($this->_code === 503) {\n                return true;\n            }\n\n            /* If the EHLO failed, try the simpler HELO command. */\n            if (PEAR::isError($error = $this->_put('HELO', $this->localhost))) {\n                return $error;\n            }\n            if (PEAR::isError($this->_parseResponse(250))) {\n                return PEAR::raiseError('HELO was not accepted: ', $this->_code);\n            }\n\n            return true;\n        }\n\n        foreach ($this->_arguments as $argument) {\n            $verb = strtok($argument, ' ');\n            $arguments = substr($argument, strlen($verb) + 1,\n                                strlen($argument) - strlen($verb) - 1);\n            $this->_esmtp[$verb] = $arguments;\n        }\n\n        if (!isset($this->_esmtp['PIPELINING'])) {\n            $this->pipelining = false;\n        }\n\n        return true;\n    }\n\n    /**\n     * Returns the name of the best authentication method that the server\n     * has advertised.\n     *\n     * @return mixed    Returns a string containing the name of the best\n     *                  supported authentication method or a PEAR_Error object\n     *                  if a failure condition is encountered.\n     * @access private\n     * @since  1.1.0\n     */\n    function _getBestAuthMethod()\n    {\n        $available_methods = explode(' ', $this->_esmtp['AUTH']);\n\n        foreach ($this->auth_methods as $method) {\n            if (in_array($method, $available_methods)) {\n                return $method;\n            }\n        }\n\n        return PEAR::raiseError('No supported authentication methods');\n    }\n\n    /**\n     * Attempt to do SMTP authentication.\n     *\n     * @param string The userid to authenticate as.\n     * @param string The password to authenticate with.\n     * @param string The requested authentication method.  If none is\n     *               specified, the best supported method will be used.\n     * @param bool   Flag indicating whether or not TLS should be attempted.\n     *\n     * @return mixed Returns a PEAR_Error with an error message on any\n     *               kind of failure, or true on success.\n     * @access public\n     * @since  1.0\n     */\n    function auth($uid, $pwd , $method = '', $tls = true)\n    {\n        /* We can only attempt a TLS connection if one has been requested,\n         * we're running PHP 5.1.0 or later, have access to the OpenSSL \n         * extension, are connected to an SMTP server which supports the \n         * STARTTLS extension, and aren't already connected over a secure \n         * (SSL) socket connection. */\n        if ($tls && version_compare(PHP_VERSION, '5.1.0', '>=') &&\n            extension_loaded('openssl') && isset($this->_esmtp['STARTTLS']) &&\n            strncasecmp($this->host, 'ssl://', 6) !== 0) {\n            /* Start the TLS connection attempt. */\n            if (PEAR::isError($result = $this->_put('STARTTLS'))) {\n                return $result;\n            }\n            if (PEAR::isError($result = $this->_parseResponse(220))) {\n                return $result;\n            }\n            if (PEAR::isError($result = $this->_socket->enableCrypto(true, STREAM_CRYPTO_METHOD_TLS_CLIENT))) {\n                return $result;\n            } elseif ($result !== true) {\n                return PEAR::raiseError('STARTTLS failed');\n            }\n\n            /* Send EHLO again to recieve the AUTH string from the\n             * SMTP server. */\n            $this->_negotiate();\n        }\n\n        if (empty($this->_esmtp['AUTH'])) {\n            return PEAR::raiseError('SMTP server does not support authentication');\n        }\n\n        /* If no method has been specified, get the name of the best\n         * supported method advertised by the SMTP server. */\n        if (empty($method)) {\n            if (PEAR::isError($method = $this->_getBestAuthMethod())) {\n                /* Return the PEAR_Error object from _getBestAuthMethod(). */\n                return $method;\n            }\n        } else {\n            $method = strtoupper($method);\n            if (!in_array($method, $this->auth_methods)) {\n                return PEAR::raiseError(\"$method is not a supported authentication method\");\n            }\n        }\n\n        switch ($method) {\n        case 'DIGEST-MD5':\n            $result = $this->_authDigest_MD5($uid, $pwd);\n            break;\n\n        case 'CRAM-MD5':\n            $result = $this->_authCRAM_MD5($uid, $pwd);\n            break;\n\n        case 'LOGIN':\n            $result = $this->_authLogin($uid, $pwd);\n            break;\n\n        case 'PLAIN':\n            $result = $this->_authPlain($uid, $pwd);\n            break;\n\n        default:\n            $result = PEAR::raiseError(\"$method is not a supported authentication method\");\n            break;\n        }\n\n        /* If an error was encountered, return the PEAR_Error object. */\n        if (PEAR::isError($result)) {\n            return $result;\n        }\n\n        return true;\n    }\n\n    /**\n     * Authenticates the user using the DIGEST-MD5 method.\n     *\n     * @param string The userid to authenticate as.\n     * @param string The password to authenticate with.\n     *\n     * @return mixed Returns a PEAR_Error with an error message on any\n     *               kind of failure, or true on success.\n     * @access private\n     * @since  1.1.0\n     */\n    function _authDigest_MD5($uid, $pwd)\n    {\n        if (PEAR::isError($error = $this->_put('AUTH', 'DIGEST-MD5'))) {\n            return $error;\n        }\n        /* 334: Continue authentication request */\n        if (PEAR::isError($error = $this->_parseResponse(334))) {\n            /* 503: Error: already authenticated */\n            if ($this->_code === 503) {\n                return true;\n            }\n            return $error;\n        }\n\n        $challenge = base64_decode($this->_arguments[0]);\n        $digest = &Auth_SASL::factory('digestmd5');\n        $auth_str = base64_encode($digest->getResponse($uid, $pwd, $challenge,\n                                                       $this->host, \"smtp\"));\n\n        if (PEAR::isError($error = $this->_put($auth_str))) {\n            return $error;\n        }\n        /* 334: Continue authentication request */\n        if (PEAR::isError($error = $this->_parseResponse(334))) {\n            return $error;\n        }\n\n        /* We don't use the protocol's third step because SMTP doesn't\n         * allow subsequent authentication, so we just silently ignore\n         * it. */\n        if (PEAR::isError($error = $this->_put(''))) {\n            return $error;\n        }\n        /* 235: Authentication successful */\n        if (PEAR::isError($error = $this->_parseResponse(235))) {\n            return $error;\n        }\n    }\n\n    /**\n     * Authenticates the user using the CRAM-MD5 method.\n     *\n     * @param string The userid to authenticate as.\n     * @param string The password to authenticate with.\n     *\n     * @return mixed Returns a PEAR_Error with an error message on any\n     *               kind of failure, or true on success.\n     * @access private\n     * @since  1.1.0\n     */\n    function _authCRAM_MD5($uid, $pwd)\n    {\n        if (PEAR::isError($error = $this->_put('AUTH', 'CRAM-MD5'))) {\n            return $error;\n        }\n        /* 334: Continue authentication request */\n        if (PEAR::isError($error = $this->_parseResponse(334))) {\n            /* 503: Error: already authenticated */\n            if ($this->_code === 503) {\n                return true;\n            }\n            return $error;\n        }\n\n        $challenge = base64_decode($this->_arguments[0]);\n        $cram = &Auth_SASL::factory('crammd5');\n        $auth_str = base64_encode($cram->getResponse($uid, $pwd, $challenge));\n\n        if (PEAR::isError($error = $this->_put($auth_str))) {\n            return $error;\n        }\n\n        /* 235: Authentication successful */\n        if (PEAR::isError($error = $this->_parseResponse(235))) {\n            return $error;\n        }\n    }\n\n    /**\n     * Authenticates the user using the LOGIN method.\n     *\n     * @param string The userid to authenticate as.\n     * @param string The password to authenticate with.\n     *\n     * @return mixed Returns a PEAR_Error with an error message on any\n     *               kind of failure, or true on success.\n     * @access private\n     * @since  1.1.0\n     */\n    function _authLogin($uid, $pwd)\n    {\n        if (PEAR::isError($error = $this->_put('AUTH', 'LOGIN'))) {\n            return $error;\n        }\n        /* 334: Continue authentication request */\n        if (PEAR::isError($error = $this->_parseResponse(334))) {\n            /* 503: Error: already authenticated */\n            if ($this->_code === 503) {\n                return true;\n            }\n            return $error;\n        }\n\n        if (PEAR::isError($error = $this->_put(base64_encode($uid)))) {\n            return $error;\n        }\n        /* 334: Continue authentication request */\n        if (PEAR::isError($error = $this->_parseResponse(334))) {\n            return $error;\n        }\n\n        if (PEAR::isError($error = $this->_put(base64_encode($pwd)))) {\n            return $error;\n        }\n\n        /* 235: Authentication successful */\n        if (PEAR::isError($error = $this->_parseResponse(235))) {\n            return $error;\n        }\n\n        return true;\n    }\n\n    /**\n     * Authenticates the user using the PLAIN method.\n     *\n     * @param string The userid to authenticate as.\n     * @param string The password to authenticate with.\n     *\n     * @return mixed Returns a PEAR_Error with an error message on any\n     *               kind of failure, or true on success.\n     * @access private\n     * @since  1.1.0\n     */\n    function _authPlain($uid, $pwd)\n    {\n        if (PEAR::isError($error = $this->_put('AUTH', 'PLAIN'))) {\n            return $error;\n        }\n        /* 334: Continue authentication request */\n        if (PEAR::isError($error = $this->_parseResponse(334))) {\n            /* 503: Error: already authenticated */\n            if ($this->_code === 503) {\n                return true;\n            }\n            return $error;\n        }\n\n        $auth_str = base64_encode(chr(0) . $uid . chr(0) . $pwd);\n\n        if (PEAR::isError($error = $this->_put($auth_str))) {\n            return $error;\n        }\n\n        /* 235: Authentication successful */\n        if (PEAR::isError($error = $this->_parseResponse(235))) {\n            return $error;\n        }\n\n        return true;\n    }\n\n    /**\n     * Send the HELO command.\n     *\n     * @param string The domain name to say we are.\n     *\n     * @return mixed Returns a PEAR_Error with an error message on any\n     *               kind of failure, or true on success.\n     * @access public\n     * @since  1.0\n     */\n    function helo($domain)\n    {\n        if (PEAR::isError($error = $this->_put('HELO', $domain))) {\n            return $error;\n        }\n        if (PEAR::isError($error = $this->_parseResponse(250))) {\n            return $error;\n        }\n\n        return true;\n    }\n\n    /**\n     * Return the list of SMTP service extensions advertised by the server.\n     *\n     * @return array The list of SMTP service extensions.\n     * @access public\n     * @since 1.3\n     */\n    function getServiceExtensions()\n    {\n        return $this->_esmtp;\n    }\n\n    /**\n     * Send the MAIL FROM: command.\n     *\n     * @param string $sender    The sender (reverse path) to set.\n     * @param string $params    String containing additional MAIL parameters,\n     *                          such as the NOTIFY flags defined by RFC 1891\n     *                          or the VERP protocol.\n     *\n     *                          If $params is an array, only the 'verp' option\n     *                          is supported.  If 'verp' is true, the XVERP\n     *                          parameter is appended to the MAIL command.  If\n     *                          the 'verp' value is a string, the full\n     *                          XVERP=value parameter is appended.\n     *\n     * @return mixed Returns a PEAR_Error with an error message on any\n     *               kind of failure, or true on success.\n     * @access public\n     * @since  1.0\n     */\n    function mailFrom($sender, $params = null)\n    {\n        $args = \"FROM:<$sender>\";\n\n        /* Support the deprecated array form of $params. */\n        if (is_array($params) && isset($params['verp'])) {\n            /* XVERP */\n            if ($params['verp'] === true) {\n                $args .= ' XVERP';\n\n            /* XVERP=something */\n            } elseif (trim($params['verp'])) {\n                $args .= ' XVERP=' . $params['verp'];\n            }\n        } elseif (is_string($params)) {\n            $args .= ' ' . $params;\n        }\n\n        if (PEAR::isError($error = $this->_put('MAIL', $args))) {\n            return $error;\n        }\n        if (PEAR::isError($error = $this->_parseResponse(250, $this->pipelining))) {\n            return $error;\n        }\n\n        return true;\n    }\n\n    /**\n     * Send the RCPT TO: command.\n     *\n     * @param string $recipient The recipient (forward path) to add.\n     * @param string $params    String containing additional RCPT parameters,\n     *                          such as the NOTIFY flags defined by RFC 1891.\n     *\n     * @return mixed Returns a PEAR_Error with an error message on any\n     *               kind of failure, or true on success.\n     *\n     * @access public\n     * @since  1.0\n     */\n    function rcptTo($recipient, $params = null)\n    {\n        $args = \"TO:<$recipient>\";\n        if (is_string($params)) {\n            $args .= ' ' . $params;\n        }\n\n        if (PEAR::isError($error = $this->_put('RCPT', $args))) {\n            return $error;\n        }\n        if (PEAR::isError($error = $this->_parseResponse(array(250, 251), $this->pipelining))) {\n            return $error;\n        }\n\n        return true;\n    }\n\n    /**\n     * Quote the data so that it meets SMTP standards.\n     *\n     * This is provided as a separate public function to facilitate\n     * easier overloading for the cases where it is desirable to\n     * customize the quoting behavior.\n     *\n     * @param string $data  The message text to quote. The string must be passed\n     *                      by reference, and the text will be modified in place.\n     *\n     * @access public\n     * @since  1.2\n     */\n    function quotedata(&$data)\n    {\n        /* Change Unix (\\n) and Mac (\\r) linefeeds into\n         * Internet-standard CRLF (\\r\\n) linefeeds. */\n        $data = preg_replace(array('/(?<!\\r)\\n/','/\\r(?!\\n)/'), \"\\r\\n\", $data);\n\n        /* Because a single leading period (.) signifies an end to the\n         * data, legitimate leading periods need to be \"doubled\"\n         * (e.g. '..'). */\n        $data = str_replace(\"\\n.\", \"\\n..\", $data);\n    }\n\n    /**\n     * Send the DATA command.\n     *\n     * @param mixed $data     The message data, either as a string or an open\n     *                        file resource.\n     * @param string $headers The message headers.  If $headers is provided,\n     *                        $data is assumed to contain only body data.\n     *\n     * @return mixed Returns a PEAR_Error with an error message on any\n     *               kind of failure, or true on success.\n     * @access public\n     * @since  1.0\n     */\n    function data($data, $headers = null)\n    {\n        /* Verify that $data is a supported type. */\n        if (!is_string($data) && !is_resource($data)) {\n            return PEAR::raiseError('Expected a string or file resource');\n        }\n\n        /* RFC 1870, section 3, subsection 3 states \"a value of zero\n         * indicates that no fixed maximum message size is in force\".\n         * Furthermore, it says that if \"the parameter is omitted no\n         * information is conveyed about the server's fixed maximum\n         * message size\". */\n        if (isset($this->_esmtp['SIZE']) && ($this->_esmtp['SIZE'] > 0)) {\n            /* Start by considering the size of the optional headers string.  \n             * We also account for the addition 4 character \"\\r\\n\\r\\n\"\n             * separator sequence. */\n            $size = (is_null($headers)) ? 0 : strlen($headers) + 4;\n\n            if (is_resource($data)) {\n                $stat = fstat($data);\n                if ($stat === false) {\n                    return PEAR::raiseError('Failed to get file size');\n                }\n                $size += $stat['size'];\n            } else {\n                $size += strlen($data);\n            }\n\n            if ($size >= $this->_esmtp['SIZE']) {\n                $this->disconnect();\n                return PEAR::raiseError('Message size exceeds server limit');\n            }\n        }\n\n        /* Initiate the DATA command. */\n        if (PEAR::isError($error = $this->_put('DATA'))) {\n            return $error;\n        }\n        if (PEAR::isError($error = $this->_parseResponse(354))) {\n            return $error;\n        }\n\n        /* If we have a separate headers string, send it first. */\n        if (!is_null($headers)) {\n            $this->quotedata($headers);\n            if (PEAR::isError($result = $this->_send($headers . \"\\r\\n\\r\\n\"))) {\n                return $result;\n            }\n        }\n\n        /* Now we can send the message body data. */\n        if (is_resource($data)) {\n            /* Stream the contents of the file resource out over our socket \n             * connection, line by line.  Each line must be run through the \n             * quoting routine. */\n            while ($line = fgets($data, 1024)) {\n                $this->quotedata($line);\n                if (PEAR::isError($result = $this->_send($line))) {\n                    return $result;\n                }\n            }\n\n            /* Finally, send the DATA terminator sequence. */\n            if (PEAR::isError($result = $this->_send(\"\\r\\n.\\r\\n\"))) {\n                return $result;\n            }\n        } else {\n            /* Just send the entire quoted string followed by the DATA \n             * terminator. */\n            $this->quotedata($data);\n            if (PEAR::isError($result = $this->_send($data . \"\\r\\n.\\r\\n\"))) {\n                return $result;\n            }\n        }\n\n        /* Verify that the data was successfully received by the server. */\n        if (PEAR::isError($error = $this->_parseResponse(250, $this->pipelining))) {\n            return $error;\n        }\n\n        return true;\n    }\n\n    /**\n     * Send the SEND FROM: command.\n     *\n     * @param string The reverse path to send.\n     *\n     * @return mixed Returns a PEAR_Error with an error message on any\n     *               kind of failure, or true on success.\n     * @access public\n     * @since  1.2.6\n     */\n    function sendFrom($path)\n    {\n        if (PEAR::isError($error = $this->_put('SEND', \"FROM:<$path>\"))) {\n            return $error;\n        }\n        if (PEAR::isError($error = $this->_parseResponse(250, $this->pipelining))) {\n            return $error;\n        }\n\n        return true;\n    }\n\n    /**\n     * Backwards-compatibility wrapper for sendFrom().\n     *\n     * @param string The reverse path to send.\n     *\n     * @return mixed Returns a PEAR_Error with an error message on any\n     *               kind of failure, or true on success.\n     *\n     * @access      public\n     * @since       1.0\n     * @deprecated  1.2.6\n     */\n    function send_from($path)\n    {\n        return sendFrom($path);\n    }\n\n    /**\n     * Send the SOML FROM: command.\n     *\n     * @param string The reverse path to send.\n     *\n     * @return mixed Returns a PEAR_Error with an error message on any\n     *               kind of failure, or true on success.\n     * @access public\n     * @since  1.2.6\n     */\n    function somlFrom($path)\n    {\n        if (PEAR::isError($error = $this->_put('SOML', \"FROM:<$path>\"))) {\n            return $error;\n        }\n        if (PEAR::isError($error = $this->_parseResponse(250, $this->pipelining))) {\n            return $error;\n        }\n\n        return true;\n    }\n\n    /**\n     * Backwards-compatibility wrapper for somlFrom().\n     *\n     * @param string The reverse path to send.\n     *\n     * @return mixed Returns a PEAR_Error with an error message on any\n     *               kind of failure, or true on success.\n     *\n     * @access      public\n     * @since       1.0\n     * @deprecated  1.2.6\n     */\n    function soml_from($path)\n    {\n        return somlFrom($path);\n    }\n\n    /**\n     * Send the SAML FROM: command.\n     *\n     * @param string The reverse path to send.\n     *\n     * @return mixed Returns a PEAR_Error with an error message on any\n     *               kind of failure, or true on success.\n     * @access public\n     * @since  1.2.6\n     */\n    function samlFrom($path)\n    {\n        if (PEAR::isError($error = $this->_put('SAML', \"FROM:<$path>\"))) {\n            return $error;\n        }\n        if (PEAR::isError($error = $this->_parseResponse(250, $this->pipelining))) {\n            return $error;\n        }\n\n        return true;\n    }\n\n    /**\n     * Backwards-compatibility wrapper for samlFrom().\n     *\n     * @param string The reverse path to send.\n     *\n     * @return mixed Returns a PEAR_Error with an error message on any\n     *               kind of failure, or true on success.\n     *\n     * @access      public\n     * @since       1.0\n     * @deprecated  1.2.6\n     */\n    function saml_from($path)\n    {\n        return samlFrom($path);\n    }\n\n    /**\n     * Send the RSET command.\n     *\n     * @return mixed Returns a PEAR_Error with an error message on any\n     *               kind of failure, or true on success.\n     * @access public\n     * @since  1.0\n     */\n    function rset()\n    {\n        if (PEAR::isError($error = $this->_put('RSET'))) {\n            return $error;\n        }\n        if (PEAR::isError($error = $this->_parseResponse(250, $this->pipelining))) {\n            return $error;\n        }\n\n        return true;\n    }\n\n    /**\n     * Send the VRFY command.\n     *\n     * @param string The string to verify\n     *\n     * @return mixed Returns a PEAR_Error with an error message on any\n     *               kind of failure, or true on success.\n     * @access public\n     * @since  1.0\n     */\n    function vrfy($string)\n    {\n        /* Note: 251 is also a valid response code */\n        if (PEAR::isError($error = $this->_put('VRFY', $string))) {\n            return $error;\n        }\n        if (PEAR::isError($error = $this->_parseResponse(array(250, 252)))) {\n            return $error;\n        }\n\n        return true;\n    }\n\n    /**\n     * Send the NOOP command.\n     *\n     * @return mixed Returns a PEAR_Error with an error message on any\n     *               kind of failure, or true on success.\n     * @access public\n     * @since  1.0\n     */\n    function noop()\n    {\n        if (PEAR::isError($error = $this->_put('NOOP'))) {\n            return $error;\n        }\n        if (PEAR::isError($error = $this->_parseResponse(250))) {\n            return $error;\n        }\n\n        return true;\n    }\n\n    /**\n     * Backwards-compatibility method.  identifySender()'s functionality is\n     * now handled internally.\n     *\n     * @return  boolean     This method always return true.\n     *\n     * @access  public\n     * @since   1.0\n     */\n    function identifySender()\n    {\n        return true;\n    }\n\n}\n"
  },
  {
    "path": "newscoop/include/Net/Socket.php",
    "content": "<?php\n//\n// +----------------------------------------------------------------------+\n// | PHP Version 4                                                        |\n// +----------------------------------------------------------------------+\n// | Copyright (c) 1997-2003 The PHP Group                                |\n// +----------------------------------------------------------------------+\n// | This source file is subject to version 2.0 of the PHP license,       |\n// | that is bundled with this package in the file LICENSE, and is        |\n// | available at through the world-wide-web at                           |\n// | http://www.php.net/license/2_02.txt.                                 |\n// | If you did not receive a copy of the PHP license and are unable to   |\n// | obtain it through the world-wide-web, please send a note to          |\n// | license@php.net so we can mail you a copy immediately.               |\n// +----------------------------------------------------------------------+\n// | Authors: Stig Bakken <ssb@php.net>                                   |\n// |          Chuck Hagenbuch <chuck@horde.org>                           |\n// +----------------------------------------------------------------------+\n//\n// $Id: Socket.php,v 1.38 2008/02/15 18:24:17 chagenbu Exp $\n\nrequire_once 'PEAR.php';\n\ndefine('NET_SOCKET_READ',  1);\ndefine('NET_SOCKET_WRITE', 2);\ndefine('NET_SOCKET_ERROR', 4);\n\n/**\n * Generalized Socket class.\n *\n * @version 1.1\n * @author Stig Bakken <ssb@php.net>\n * @author Chuck Hagenbuch <chuck@horde.org>\n */\nclass Net_Socket extends PEAR {\n\n    /**\n     * Socket file pointer.\n     * @var resource $fp\n     */\n    var $fp = null;\n\n    /**\n     * Whether the socket is blocking. Defaults to true.\n     * @var boolean $blocking\n     */\n    var $blocking = true;\n\n    /**\n     * Whether the socket is persistent. Defaults to false.\n     * @var boolean $persistent\n     */\n    var $persistent = false;\n\n    /**\n     * The IP address to connect to.\n     * @var string $addr\n     */\n    var $addr = '';\n\n    /**\n     * The port number to connect to.\n     * @var integer $port\n     */\n    var $port = 0;\n\n    /**\n     * Number of seconds to wait on socket connections before assuming\n     * there's no more data. Defaults to no timeout.\n     * @var integer $timeout\n     */\n    var $timeout = false;\n\n    /**\n     * Number of bytes to read at a time in readLine() and\n     * readAll(). Defaults to 2048.\n     * @var integer $lineLength\n     */\n    var $lineLength = 2048;\n\n    /**\n     * Connect to the specified port. If called when the socket is\n     * already connected, it disconnects and connects again.\n     *\n     * @param string  $addr        IP address or host name.\n     * @param integer $port        TCP port number.\n     * @param boolean $persistent  (optional) Whether the connection is\n     *                             persistent (kept open between requests\n     *                             by the web server).\n     * @param integer $timeout     (optional) How long to wait for data.\n     * @param array   $options     See options for stream_context_create.\n     *\n     * @access public\n     *\n     * @return boolean | PEAR_Error  True on success or a PEAR_Error on failure.\n     */\n    function connect($addr, $port = 0, $persistent = null, $timeout = null, $options = null)\n    {\n        if (is_resource($this->fp)) {\n            @fclose($this->fp);\n            $this->fp = null;\n        }\n\n        if (!$addr) {\n            return $this->raiseError('$addr cannot be empty');\n        } elseif (strspn($addr, '.0123456789') == strlen($addr) ||\n                  strstr($addr, '/') !== false) {\n            $this->addr = $addr;\n        } else {\n            $this->addr = @gethostbyname($addr);\n        }\n\n        $this->port = $port % 65536;\n\n        if ($persistent !== null) {\n            $this->persistent = $persistent;\n        }\n\n        if ($timeout !== null) {\n            $this->timeout = $timeout;\n        }\n\n        $openfunc = $this->persistent ? 'pfsockopen' : 'fsockopen';\n        $errno = 0;\n        $errstr = '';\n        $old_track_errors = @ini_set('track_errors', 1);\n        if ($options && function_exists('stream_context_create')) {\n            if ($this->timeout) {\n                $timeout = $this->timeout;\n            } else {\n                $timeout = 0;\n            }\n            $context = stream_context_create($options);\n\n            // Since PHP 5 fsockopen doesn't allow context specification\n            if (function_exists('stream_socket_client')) {\n                $flags = $this->persistent ? STREAM_CLIENT_PERSISTENT : STREAM_CLIENT_CONNECT;\n                $addr = $this->addr . ':' . $this->port;\n                $fp = stream_socket_client($addr, $errno, $errstr, $timeout, $flags, $context);\n            } else {\n                $fp = @$openfunc($this->addr, $this->port, $errno, $errstr, $timeout, $context);\n            }\n        } else {\n            if ($this->timeout) {\n                $fp = @$openfunc($this->addr, $this->port, $errno, $errstr, $this->timeout);\n            } else {\n                $fp = @$openfunc($this->addr, $this->port, $errno, $errstr);\n            }\n        }\n\n        if (!$fp) {\n            if ($errno == 0 && isset($php_errormsg)) {\n                $errstr = $php_errormsg;\n            }\n            @ini_set('track_errors', $old_track_errors);\n            return $this->raiseError($errstr, $errno);\n        }\n\n        @ini_set('track_errors', $old_track_errors);\n        $this->fp = $fp;\n\n        return $this->setBlocking($this->blocking);\n    }\n\n    /**\n     * Disconnects from the peer, closes the socket.\n     *\n     * @access public\n     * @return mixed true on success or a PEAR_Error instance otherwise\n     */\n    function disconnect()\n    {\n        if (!is_resource($this->fp)) {\n            return $this->raiseError('not connected');\n        }\n\n        @fclose($this->fp);\n        $this->fp = null;\n        return true;\n    }\n\n    /**\n     * Find out if the socket is in blocking mode.\n     *\n     * @access public\n     * @return boolean  The current blocking mode.\n     */\n    function isBlocking()\n    {\n        return $this->blocking;\n    }\n\n    /**\n     * Sets whether the socket connection should be blocking or\n     * not. A read call to a non-blocking socket will return immediately\n     * if there is no data available, whereas it will block until there\n     * is data for blocking sockets.\n     *\n     * @param boolean $mode  True for blocking sockets, false for nonblocking.\n     * @access public\n     * @return mixed true on success or a PEAR_Error instance otherwise\n     */\n    function setBlocking($mode)\n    {\n        if (!is_resource($this->fp)) {\n            return $this->raiseError('not connected');\n        }\n\n        $this->blocking = $mode;\n        socket_set_blocking($this->fp, $this->blocking);\n        return true;\n    }\n\n    /**\n     * Sets the timeout value on socket descriptor,\n     * expressed in the sum of seconds and microseconds\n     *\n     * @param integer $seconds  Seconds.\n     * @param integer $microseconds  Microseconds.\n     * @access public\n     * @return mixed true on success or a PEAR_Error instance otherwise\n     */\n    function setTimeout($seconds, $microseconds)\n    {\n        if (!is_resource($this->fp)) {\n            return $this->raiseError('not connected');\n        }\n\n        return socket_set_timeout($this->fp, $seconds, $microseconds);\n    }\n\n    /**\n     * Sets the file buffering size on the stream.\n     * See php's stream_set_write_buffer for more information.\n     *\n     * @param integer $size     Write buffer size.\n     * @access public\n     * @return mixed on success or an PEAR_Error object otherwise\n     */\n    function setWriteBuffer($size)\n    {\n        if (!is_resource($this->fp)) {\n            return $this->raiseError('not connected');\n        }\n\n        $returned = stream_set_write_buffer($this->fp, $size);\n        if ($returned == 0) {\n            return true;\n        }\n        return $this->raiseError('Cannot set write buffer.');\n    }\n\n    /**\n     * Returns information about an existing socket resource.\n     * Currently returns four entries in the result array:\n     *\n     * <p>\n     * timed_out (bool) - The socket timed out waiting for data<br>\n     * blocked (bool) - The socket was blocked<br>\n     * eof (bool) - Indicates EOF event<br>\n     * unread_bytes (int) - Number of bytes left in the socket buffer<br>\n     * </p>\n     *\n     * @access public\n     * @return mixed Array containing information about existing socket resource or a PEAR_Error instance otherwise\n     */\n    function getStatus()\n    {\n        if (!is_resource($this->fp)) {\n            return $this->raiseError('not connected');\n        }\n\n        return socket_get_status($this->fp);\n    }\n\n    /**\n     * Get a specified line of data\n     *\n     * @access public\n     * @return $size bytes of data from the socket, or a PEAR_Error if\n     *         not connected.\n     */\n    function gets($size)\n    {\n        if (!is_resource($this->fp)) {\n            return $this->raiseError('not connected');\n        }\n\n        return @fgets($this->fp, $size);\n    }\n\n    /**\n     * Read a specified amount of data. This is guaranteed to return,\n     * and has the added benefit of getting everything in one fread()\n     * chunk; if you know the size of the data you're getting\n     * beforehand, this is definitely the way to go.\n     *\n     * @param integer $size  The number of bytes to read from the socket.\n     * @access public\n     * @return $size bytes of data from the socket, or a PEAR_Error if\n     *         not connected.\n     */\n    function read($size)\n    {\n        if (!is_resource($this->fp)) {\n            return $this->raiseError('not connected');\n        }\n\n        return @fread($this->fp, $size);\n    }\n\n    /**\n     * Write a specified amount of data.\n     *\n     * @param string  $data       Data to write.\n     * @param integer $blocksize  Amount of data to write at once.\n     *                            NULL means all at once.\n     *\n     * @access public\n     * @return mixed If the socket is not connected, returns an instance of PEAR_Error\n     *               If the write succeeds, returns the number of bytes written\n     *               If the write fails, returns false.\n     */\n    function write($data, $blocksize = null)\n    {\n        if (!is_resource($this->fp)) {\n            return $this->raiseError('not connected');\n        }\n\n        if (is_null($blocksize) && !OS_WINDOWS) {\n            return @fwrite($this->fp, $data);\n        } else {\n            if (is_null($blocksize)) {\n                $blocksize = 1024;\n            }\n\n            $pos = 0;\n            $size = strlen($data);\n            while ($pos < $size) {\n                $written = @fwrite($this->fp, substr($data, $pos, $blocksize));\n                if ($written === false) {\n                    return false;\n                }\n                $pos += $written;\n            }\n\n            return $pos;\n        }\n    }\n\n    /**\n     * Write a line of data to the socket, followed by a trailing \"\\r\\n\".\n     *\n     * @access public\n     * @return mixed fputs result, or an error\n     */\n    function writeLine($data)\n    {\n        if (!is_resource($this->fp)) {\n            return $this->raiseError('not connected');\n        }\n\n        return fwrite($this->fp, $data . \"\\r\\n\");\n    }\n\n    /**\n     * Tests for end-of-file on a socket descriptor.\n     *\n     * Also returns true if the socket is disconnected.\n     *\n     * @access public\n     * @return bool\n     */\n    function eof()\n    {\n        return (!is_resource($this->fp) || feof($this->fp));\n    }\n\n    /**\n     * Reads a byte of data\n     *\n     * @access public\n     * @return 1 byte of data from the socket, or a PEAR_Error if\n     *         not connected.\n     */\n    function readByte()\n    {\n        if (!is_resource($this->fp)) {\n            return $this->raiseError('not connected');\n        }\n\n        return ord(@fread($this->fp, 1));\n    }\n\n    /**\n     * Reads a word of data\n     *\n     * @access public\n     * @return 1 word of data from the socket, or a PEAR_Error if\n     *         not connected.\n     */\n    function readWord()\n    {\n        if (!is_resource($this->fp)) {\n            return $this->raiseError('not connected');\n        }\n\n        $buf = @fread($this->fp, 2);\n        return (ord($buf[0]) + (ord($buf[1]) << 8));\n    }\n\n    /**\n     * Reads an int of data\n     *\n     * @access public\n     * @return integer  1 int of data from the socket, or a PEAR_Error if\n     *                  not connected.\n     */\n    function readInt()\n    {\n        if (!is_resource($this->fp)) {\n            return $this->raiseError('not connected');\n        }\n\n        $buf = @fread($this->fp, 4);\n        return (ord($buf[0]) + (ord($buf[1]) << 8) +\n                (ord($buf[2]) << 16) + (ord($buf[3]) << 24));\n    }\n\n    /**\n     * Reads a zero-terminated string of data\n     *\n     * @access public\n     * @return string, or a PEAR_Error if\n     *         not connected.\n     */\n    function readString()\n    {\n        if (!is_resource($this->fp)) {\n            return $this->raiseError('not connected');\n        }\n\n        $string = '';\n        while (($char = @fread($this->fp, 1)) != \"\\x00\")  {\n            $string .= $char;\n        }\n        return $string;\n    }\n\n    /**\n     * Reads an IP Address and returns it in a dot formatted string\n     *\n     * @access public\n     * @return Dot formatted string, or a PEAR_Error if\n     *         not connected.\n     */\n    function readIPAddress()\n    {\n        if (!is_resource($this->fp)) {\n            return $this->raiseError('not connected');\n        }\n\n        $buf = @fread($this->fp, 4);\n        return sprintf('%d.%d.%d.%d', ord($buf[0]), ord($buf[1]),\n                       ord($buf[2]), ord($buf[3]));\n    }\n\n    /**\n     * Read until either the end of the socket or a newline, whichever\n     * comes first. Strips the trailing newline from the returned data.\n     *\n     * @access public\n     * @return All available data up to a newline, without that\n     *         newline, or until the end of the socket, or a PEAR_Error if\n     *         not connected.\n     */\n    function readLine()\n    {\n        if (!is_resource($this->fp)) {\n            return $this->raiseError('not connected');\n        }\n\n        $line = '';\n        $timeout = time() + $this->timeout;\n        while (!feof($this->fp) && (!$this->timeout || time() < $timeout)) {\n            $line .= @fgets($this->fp, $this->lineLength);\n            if (substr($line, -1) == \"\\n\") {\n                return rtrim($line, \"\\r\\n\");\n            }\n        }\n        return $line;\n    }\n\n    /**\n     * Read until the socket closes, or until there is no more data in\n     * the inner PHP buffer. If the inner buffer is empty, in blocking\n     * mode we wait for at least 1 byte of data. Therefore, in\n     * blocking mode, if there is no data at all to be read, this\n     * function will never exit (unless the socket is closed on the\n     * remote end).\n     *\n     * @access public\n     *\n     * @return string  All data until the socket closes, or a PEAR_Error if\n     *                 not connected.\n     */\n    function readAll()\n    {\n        if (!is_resource($this->fp)) {\n            return $this->raiseError('not connected');\n        }\n\n        $data = '';\n        while (!feof($this->fp)) {\n            $data .= @fread($this->fp, $this->lineLength);\n        }\n        return $data;\n    }\n\n    /**\n     * Runs the equivalent of the select() system call on the socket\n     * with a timeout specified by tv_sec and tv_usec.\n     *\n     * @param integer $state    Which of read/write/error to check for.\n     * @param integer $tv_sec   Number of seconds for timeout.\n     * @param integer $tv_usec  Number of microseconds for timeout.\n     *\n     * @access public\n     * @return False if select fails, integer describing which of read/write/error\n     *         are ready, or PEAR_Error if not connected.\n     */\n    function select($state, $tv_sec, $tv_usec = 0)\n    {\n        if (!is_resource($this->fp)) {\n            return $this->raiseError('not connected');\n        }\n\n        $read = null;\n        $write = null;\n        $except = null;\n        if ($state & NET_SOCKET_READ) {\n            $read[] = $this->fp;\n        }\n        if ($state & NET_SOCKET_WRITE) {\n            $write[] = $this->fp;\n        }\n        if ($state & NET_SOCKET_ERROR) {\n            $except[] = $this->fp;\n        }\n        if (false === ($sr = stream_select($read, $write, $except, $tv_sec, $tv_usec))) {\n            return false;\n        }\n\n        $result = 0;\n        if (count($read)) {\n            $result |= NET_SOCKET_READ;\n        }\n        if (count($write)) {\n            $result |= NET_SOCKET_WRITE;\n        }\n        if (count($except)) {\n            $result |= NET_SOCKET_ERROR;\n        }\n        return $result;\n    }\n\n    /**\n     * Turns encryption on/off on a connected socket.\n     *\n     * @param bool    $enabled  Set this parameter to true to enable encryption\n     *                          and false to disable encryption.\n     * @param integer $type     Type of encryption. See\n     *                          http://se.php.net/manual/en/function.stream-socket-enable-crypto.php for values.\n     *\n     * @access public\n     * @return false on error, true on success and 0 if there isn't enough data and the\n     *         user should try again (non-blocking sockets only). A PEAR_Error object\n     *         is returned if the socket is not connected\n     */\n    function enableCrypto($enabled, $type)\n    {\n        if (version_compare(phpversion(), \"5.1.0\", \">=\")) {\n            if (!is_resource($this->fp)) {\n                return $this->raiseError('not connected');\n            }\n            return @stream_socket_enable_crypto($this->fp, $enabled, $type);\n        } else {\n            return $this->raiseError('Net_Socket::enableCrypto() requires php version >= 5.1.0');\n        }\n    }\n\n}\n"
  },
  {
    "path": "newscoop/include/Net/URL.php",
    "content": "<?php\n// +-----------------------------------------------------------------------+\n// | Copyright (c) 2002-2004, Richard Heyes                                |\n// | All rights reserved.                                                  |\n// |                                                                       |\n// | Redistribution and use in source and binary forms, with or without    |\n// | modification, are permitted provided that the following conditions    |\n// | are met:                                                              |\n// |                                                                       |\n// | o Redistributions of source code must retain the above copyright      |\n// |   notice, this list of conditions and the following disclaimer.       |\n// | o Redistributions in binary form must reproduce the above copyright   |\n// |   notice, this list of conditions and the following disclaimer in the |\n// |   documentation and/or other materials provided with the distribution.|\n// | o The names of the authors may not be used to endorse or promote      |\n// |   products derived from this software without specific prior written  |\n// |   permission.                                                         |\n// |                                                                       |\n// | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS   |\n// | \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT     |\n// | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |\n// | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT  |\n// | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |\n// | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT      |\n// | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |\n// | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |\n// | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT   |\n// | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |\n// | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.  |\n// |                                                                       |\n// +-----------------------------------------------------------------------+\n// | Author: Richard Heyes <richard at php net>                            |\n// +-----------------------------------------------------------------------+\n//\n// $Id: URL.php,v 1.49 2007/06/28 14:43:07 davidc Exp $\n//\n// Net_URL Class\n\n\nclass Net_URL\n{\n    var $options = array('encode_query_keys' => false);\n    /**\n    * Full url\n    * @var string\n    */\n    var $url;\n\n    /**\n    * Protocol\n    * @var string\n    */\n    var $protocol;\n\n    /**\n    * Username\n    * @var string\n    */\n    var $username;\n\n    /**\n    * Password\n    * @var string\n    */\n    var $password;\n\n    /**\n    * Host\n    * @var string\n    */\n    var $host;\n\n    /**\n    * Port\n    * @var integer\n    */\n    var $port;\n\n    /**\n    * Path\n    * @var string\n    */\n    var $path;\n\n    /**\n    * Query string\n    * @var array\n    */\n    var $querystring;\n\n    /**\n    * Anchor\n    * @var string\n    */\n    var $anchor;\n\n    /**\n    * Whether to use []\n    * @var bool\n    */\n    var $useBrackets;\n\n    /**\n    * PHP4 Constructor\n    *\n    * @see __construct()\n    */\n    function Net_URL($url = null, $useBrackets = true)\n    {\n        $this->__construct($url, $useBrackets);\n    }\n\n    /**\n    * PHP5 Constructor\n    *\n    * Parses the given url and stores the various parts\n    * Defaults are used in certain cases\n    *\n    * @param string $url         Optional URL\n    * @param bool   $useBrackets Whether to use square brackets when\n    *                            multiple querystrings with the same name\n    *                            exist\n    */\n    function __construct($url = null, $useBrackets = true)\n    {\n        $this->url = $url;\n        $this->useBrackets = $useBrackets;\n\n        $this->initialize();\n    }\n\n    function initialize()\n    {\n        $HTTP_SERVER_VARS  = !empty($_SERVER) ? $_SERVER : $GLOBALS['HTTP_SERVER_VARS'];\n\n        $this->user        = '';\n        $this->pass        = '';\n        $this->host        = '';\n        $this->port        = 80;\n        $this->path        = '';\n        $this->querystring = array();\n        $this->anchor      = '';\n\n        // Only use defaults if not an absolute URL given\n        if (!preg_match('/^[a-z0-9]+:\\/\\//i', $this->url)) {\n            $this->protocol = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on' ? 'https' : 'http');\n\n            /**\n            * Figure out host/port\n            */\n            if (!empty($HTTP_SERVER_VARS['HTTP_HOST']) && \n                preg_match('/^(.*)(:([0-9]+))?$/U', $HTTP_SERVER_VARS['HTTP_HOST'], $matches)) \n            {\n                $host = $matches[1];\n                if (!empty($matches[3])) {\n                    $port = $matches[3];\n                } else {\n                    $port = $this->getStandardPort($this->protocol);\n                }\n            }\n\n            $this->user        = '';\n            $this->pass        = '';\n            $this->host        = !empty($host) ? $host : (isset($HTTP_SERVER_VARS['SERVER_NAME']) ? $HTTP_SERVER_VARS['SERVER_NAME'] : 'localhost');\n            $this->port        = !empty($port) ? $port : (isset($HTTP_SERVER_VARS['SERVER_PORT']) ? $HTTP_SERVER_VARS['SERVER_PORT'] : $this->getStandardPort($this->protocol));\n            $this->path        = !empty($HTTP_SERVER_VARS['PHP_SELF']) ? $HTTP_SERVER_VARS['PHP_SELF'] : '/';\n            $this->querystring = isset($HTTP_SERVER_VARS['QUERY_STRING']) ? $this->_parseRawQuerystring($HTTP_SERVER_VARS['QUERY_STRING']) : null;\n            $this->anchor      = '';\n        }\n\n        // Parse the url and store the various parts\n        if (!empty($this->url)) {\n            $urlinfo = parse_url($this->url);\n\n            // Default querystring\n            $this->querystring = array();\n\n            foreach ($urlinfo as $key => $value) {\n                switch ($key) {\n                    case 'scheme':\n                        $this->protocol = $value;\n                        $this->port     = $this->getStandardPort($value);\n                        break;\n\n                    case 'user':\n                    case 'pass':\n                    case 'host':\n                    case 'port':\n                        $this->$key = $value;\n                        break;\n\n                    case 'path':\n                        if ($value{0} == '/') {\n                            $this->path = $value;\n                        } else {\n                            $path = dirname($this->path) == DIRECTORY_SEPARATOR ? '' : dirname($this->path);\n                            $this->path = sprintf('%s/%s', $path, $value);\n                        }\n                        break;\n\n                    case 'query':\n                        $this->querystring = $this->_parseRawQueryString($value);\n                        break;\n\n                    case 'fragment':\n                        $this->anchor = $value;\n                        break;\n                }\n            }\n        }\n    }\n    /**\n    * Returns full url\n    *\n    * @return string Full url\n    * @access public\n    */\n    function getURL()\n    {\n        $querystring = $this->getQueryString();\n\n        $this->url = $this->protocol . '://'\n                   . $this->user . (!empty($this->pass) ? ':' : '')\n                   . $this->pass . (!empty($this->user) ? '@' : '')\n                   . $this->host . ($this->port == $this->getStandardPort($this->protocol) ? '' : ':' . $this->port)\n                   . $this->path\n                   . (!empty($querystring) ? '?' . $querystring : '')\n                   . (!empty($this->anchor) ? '#' . $this->anchor : '');\n\n        return $this->url;\n    }\n\n    /**\n    * Adds or updates a querystring item (URL parameter).\n    * Automatically encodes parameters with rawurlencode() if $preencoded\n    *  is false.\n    * You can pass an array to $value, it gets mapped via [] in the URL if\n    * $this->useBrackets is activated.\n    *\n    * @param  string $name       Name of item\n    * @param  string $value      Value of item\n    * @param  bool   $preencoded Whether value is urlencoded or not, default = not\n    * @access public\n    */\n    function addQueryString($name, $value, $preencoded = false)\n    {\n        if ($this->getOption('encode_query_keys')) {\n            $name = rawurlencode($name);\n        }\n\n        if ($preencoded) {\n            $this->querystring[$name] = $value;\n        } else {\n            $this->querystring[$name] = is_array($value) ? array_map('rawurlencode', $value): rawurlencode($value);\n        }\n    }\n\n    /**\n    * Removes a querystring item\n    *\n    * @param  string $name Name of item\n    * @access public\n    */\n    function removeQueryString($name)\n    {\n        if ($this->getOption('encode_query_keys')) {\n            $name = rawurlencode($name);\n        }\n\n        if (isset($this->querystring[$name])) {\n            unset($this->querystring[$name]);\n        }\n    }\n\n    /**\n    * Sets the querystring to literally what you supply\n    *\n    * @param  string $querystring The querystring data. Should be of the format foo=bar&x=y etc\n    * @access public\n    */\n    function addRawQueryString($querystring)\n    {\n        $this->querystring = $this->_parseRawQueryString($querystring);\n    }\n\n    /**\n    * Returns flat querystring\n    *\n    * @return string Querystring\n    * @access public\n    */\n    function getQueryString()\n    {\n        if (!empty($this->querystring)) {\n            foreach ($this->querystring as $name => $value) {\n                // Encode var name\n                $name = rawurlencode($name);\n\n                if (is_array($value)) {\n                    foreach ($value as $k => $v) {\n                        $querystring[] = $this->useBrackets ? sprintf('%s[%s]=%s', $name, $k, $v) : ($name . '=' . $v);\n                    }\n                } elseif (!is_null($value)) {\n                    $querystring[] = $name . '=' . $value;\n                } else {\n                    $querystring[] = $name;\n                }\n            }\n            $querystring = implode(ini_get('arg_separator.output'), $querystring);\n        } else {\n            $querystring = '';\n        }\n\n        return $querystring;\n    }\n\n    /**\n    * Parses raw querystring and returns an array of it\n    *\n    * @param  string  $querystring The querystring to parse\n    * @return array                An array of the querystring data\n    * @access private\n    */\n    function _parseRawQuerystring($querystring)\n    {\n        $parts  = preg_split('/[' . preg_quote(ini_get('arg_separator.input'), '/') . ']/', $querystring, -1, PREG_SPLIT_NO_EMPTY);\n        $return = array();\n\n        foreach ($parts as $part) {\n            if (strpos($part, '=') !== false) {\n                $value = substr($part, strpos($part, '=') + 1);\n                $key   = substr($part, 0, strpos($part, '='));\n            } else {\n                $value = null;\n                $key   = $part;\n            }\n\n            if (!$this->getOption('encode_query_keys')) {\n                $key = rawurldecode($key);\n            }\n\n            if (preg_match('#^(.*)\\[([0-9a-z_-]*)\\]#i', $key, $matches)) {\n                $key = $matches[1];\n                $idx = $matches[2];\n\n                // Ensure is an array\n                if (empty($return[$key]) || !is_array($return[$key])) {\n                    $return[$key] = array();\n                }\n\n                // Add data\n                if ($idx === '') {\n                    $return[$key][] = $value;\n                } else {\n                    $return[$key][$idx] = $value;\n                }\n            } elseif (!$this->useBrackets AND !empty($return[$key])) {\n                $return[$key]   = (array)$return[$key];\n                $return[$key][] = $value;\n            } else {\n                $return[$key] = $value;\n            }\n        }\n\n        return $return;\n    }\n\n    /**\n    * Resolves //, ../ and ./ from a path and returns\n    * the result. Eg:\n    *\n    * /foo/bar/../boo.php    => /foo/boo.php\n    * /foo/bar/../../boo.php => /boo.php\n    * /foo/bar/.././/boo.php => /foo/boo.php\n    *\n    * This method can also be called statically.\n    *\n    * @param  string $path URL path to resolve\n    * @return string      The result\n    */\n    function resolvePath($path)\n    {\n        $path = explode('/', str_replace('//', '/', $path));\n\n        for ($i=0; $i<count($path); $i++) {\n            if ($path[$i] == '.') {\n                unset($path[$i]);\n                $path = array_values($path);\n                $i--;\n\n            } elseif ($path[$i] == '..' AND ($i > 1 OR ($i == 1 AND $path[0] != '') ) ) {\n                unset($path[$i]);\n                unset($path[$i-1]);\n                $path = array_values($path);\n                $i -= 2;\n\n            } elseif ($path[$i] == '..' AND $i == 1 AND $path[0] == '') {\n                unset($path[$i]);\n                $path = array_values($path);\n                $i--;\n\n            } else {\n                continue;\n            }\n        }\n\n        return implode('/', $path);\n    }\n\n    /**\n    * Returns the standard port number for a protocol\n    *\n    * @param  string  $scheme The protocol to lookup\n    * @return integer         Port number or NULL if no scheme matches\n    *\n    * @author Philippe Jausions <Philippe.Jausions@11abacus.com>\n    */\n    function getStandardPort($scheme)\n    {\n        switch (strtolower($scheme)) {\n            case 'http':    return 80;\n            case 'https':   return 443;\n            case 'ftp':     return 21;\n            case 'imap':    return 143;\n            case 'imaps':   return 993;\n            case 'pop3':    return 110;\n            case 'pop3s':   return 995;\n            default:        return null;\n       }\n    }\n\n    /**\n    * Forces the URL to a particular protocol\n    *\n    * @param string  $protocol Protocol to force the URL to\n    * @param integer $port     Optional port (standard port is used by default)\n    */\n    function setProtocol($protocol, $port = null)\n    {\n        $this->protocol = $protocol;\n        $this->port     = is_null($port) ? $this->getStandardPort($protocol) : $port;\n    }\n\n    /**\n     * Set an option\n     *\n     * This function set an option\n     * to be used thorough the script.\n     *\n     * @access public\n     * @param  string $optionName  The optionname to set\n     * @param  string $value       The value of this option.\n     */\n    function setOption($optionName, $value)\n    {\n        if (!array_key_exists($optionName, $this->options)) {\n            return false;\n        }\n\n        $this->options[$optionName] = $value;\n        $this->initialize();\n    }\n\n    /**\n     * Get an option\n     *\n     * This function gets an option\n     * from the $this->options array\n     * and return it's value.\n     *\n     * @access public\n     * @param  string $opionName  The name of the option to retrieve\n     * @see    $this->options\n     */\n    function getOption($optionName)\n    {\n        if (!isset($this->options[$optionName])) {\n            return false;\n        }\n\n        return $this->options[$optionName];\n    }\n\n}\n?>\n"
  },
  {
    "path": "newscoop/include/OS/Guess.php",
    "content": "<?php\n/**\n * The OS_Guess class\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Gregory Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Guess.php 278521 2009-04-09 22:24:12Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since PEAR 0.1\n */\n\n// {{{ uname examples\n\n// php_uname() without args returns the same as 'uname -a', or a PHP-custom\n// string for Windows.\n// PHP versions prior to 4.3 return the uname of the host where PHP was built,\n// as of 4.3 it returns the uname of the host running the PHP code.\n//\n// PC RedHat Linux 7.1:\n// Linux host.example.com 2.4.2-2 #1 Sun Apr 8 20:41:30 EDT 2001 i686 unknown\n//\n// PC Debian Potato:\n// Linux host 2.4.17 #2 SMP Tue Feb 12 15:10:04 CET 2002 i686 unknown\n//\n// PC FreeBSD 3.3:\n// FreeBSD host.example.com 3.3-STABLE FreeBSD 3.3-STABLE #0: Mon Feb 21 00:42:31 CET 2000     root@example.com:/usr/src/sys/compile/CONFIG  i386\n//\n// PC FreeBSD 4.3:\n// FreeBSD host.example.com 4.3-RELEASE FreeBSD 4.3-RELEASE #1: Mon Jun 25 11:19:43 EDT 2001     root@example.com:/usr/src/sys/compile/CONFIG  i386\n//\n// PC FreeBSD 4.5:\n// FreeBSD host.example.com 4.5-STABLE FreeBSD 4.5-STABLE #0: Wed Feb  6 23:59:23 CET 2002     root@example.com:/usr/src/sys/compile/CONFIG  i386\n//\n// PC FreeBSD 4.5 w/uname from GNU shellutils:\n// FreeBSD host.example.com 4.5-STABLE FreeBSD 4.5-STABLE #0: Wed Feb  i386 unknown\n//\n// HP 9000/712 HP-UX 10:\n// HP-UX iq B.10.10 A 9000/712 2008429113 two-user license\n//\n// HP 9000/712 HP-UX 10 w/uname from GNU shellutils:\n// HP-UX host B.10.10 A 9000/712 unknown\n//\n// IBM RS6000/550 AIX 4.3:\n// AIX host 3 4 000003531C00\n//\n// AIX 4.3 w/uname from GNU shellutils:\n// AIX host 3 4 000003531C00 unknown\n//\n// SGI Onyx IRIX 6.5 w/uname from GNU shellutils:\n// IRIX64 host 6.5 01091820 IP19 mips\n//\n// SGI Onyx IRIX 6.5:\n// IRIX64 host 6.5 01091820 IP19\n//\n// SparcStation 20 Solaris 8 w/uname from GNU shellutils:\n// SunOS host.example.com 5.8 Generic_108528-12 sun4m sparc\n//\n// SparcStation 20 Solaris 8:\n// SunOS host.example.com 5.8 Generic_108528-12 sun4m sparc SUNW,SPARCstation-20\n//\n// Mac OS X (Darwin)\n// Darwin home-eden.local 7.5.0 Darwin Kernel Version 7.5.0: Thu Aug  5 19:26:16 PDT 2004; root:xnu/xnu-517.7.21.obj~3/RELEASE_PPC  Power Macintosh\n//\n// Mac OS X early versions\n//\n\n// }}}\n\n/* TODO:\n * - define endianness, to allow matchSignature(\"bigend\") etc.\n */\n\n/**\n * Retrieves information about the current operating system\n *\n * This class uses php_uname() to grok information about the current OS\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Gregory Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 0.1\n */\nclass OS_Guess\n{\n    var $sysname;\n    var $nodename;\n    var $cpu;\n    var $release;\n    var $extra;\n\n    function OS_Guess($uname = null)\n    {\n        list($this->sysname,\n             $this->release,\n             $this->cpu,\n             $this->extra,\n             $this->nodename) = $this->parseSignature($uname);\n    }\n\n    function parseSignature($uname = null)\n    {\n        static $sysmap = array(\n            'HP-UX' => 'hpux',\n            'IRIX64' => 'irix',\n        );\n        static $cpumap = array(\n            'i586' => 'i386',\n            'i686' => 'i386',\n            'ppc' => 'powerpc',\n        );\n        if ($uname === null) {\n            $uname = php_uname();\n        }\n        $parts = preg_split('/\\s+/', trim($uname));\n        $n = count($parts);\n\n        $release  = $machine = $cpu = '';\n        $sysname  = $parts[0];\n        $nodename = $parts[1];\n        $cpu      = $parts[$n-1];\n        $extra = '';\n        if ($cpu == 'unknown') {\n            $cpu = $parts[$n - 2];\n        }\n\n        switch ($sysname) {\n            case 'AIX' :\n                $release = \"$parts[3].$parts[2]\";\n                break;\n            case 'Windows' :\n                switch ($parts[1]) {\n                    case '95/98':\n                        $release = '9x';\n                        break;\n                    default:\n                        $release = $parts[1];\n                        break;\n                }\n                $cpu = 'i386';\n                break;\n            case 'Linux' :\n                $extra = $this->_detectGlibcVersion();\n                // use only the first two digits from the kernel version\n                $release = preg_replace('/^([0-9]+\\.[0-9]+).*/', '\\1', $parts[2]);\n                break;\n            case 'Mac' :\n                $sysname = 'darwin';\n                $nodename = $parts[2];\n                $release = $parts[3];\n                if ($cpu == 'Macintosh') {\n                    if ($parts[$n - 2] == 'Power') {\n                        $cpu = 'powerpc';\n                    }\n                }\n                break;\n            case 'Darwin' :\n                if ($cpu == 'Macintosh') {\n                    if ($parts[$n - 2] == 'Power') {\n                        $cpu = 'powerpc';\n                    }\n                }\n                $release = preg_replace('/^([0-9]+\\.[0-9]+).*/', '\\1', $parts[2]);\n                break;\n            default:\n                $release = preg_replace('/-.*/', '', $parts[2]);\n                break;\n        }\n\n        if (isset($sysmap[$sysname])) {\n            $sysname = $sysmap[$sysname];\n        } else {\n            $sysname = strtolower($sysname);\n        }\n        if (isset($cpumap[$cpu])) {\n            $cpu = $cpumap[$cpu];\n        }\n        return array($sysname, $release, $cpu, $extra, $nodename);\n    }\n\n    function _detectGlibcVersion()\n    {\n        static $glibc = false;\n        if ($glibc !== false) {\n            return $glibc; // no need to run this multiple times\n        }\n        $major = $minor = 0;\n        include_once \"System.php\";\n        // Use glibc's <features.h> header file to\n        // get major and minor version number:\n        if (@file_exists('/usr/include/features.h') &&\n              @is_readable('/usr/include/features.h')) {\n            if (!@file_exists('/usr/bin/cpp') || !@is_executable('/usr/bin/cpp')) {\n                $features_file = fopen('/usr/include/features.h', 'rb');\n                while (!feof($features_file)) {\n                    $line = fgets($features_file, 8192);\n                    if (!$line || (strpos($line, '#define') === false)) {\n                        continue;\n                    }\n                    if (strpos($line, '__GLIBC__')) {\n                        // major version number #define __GLIBC__ version\n                        $line = preg_split('/\\s+/', $line);\n                        $glibc_major = trim($line[2]);\n                        if (isset($glibc_minor)) {\n                            break;\n                        }\n                        continue;\n                    }\n\n                    if (strpos($line, '__GLIBC_MINOR__'))  {\n                        // got the minor version number\n                        // #define __GLIBC_MINOR__ version\n                        $line = preg_split('/\\s+/', $line);\n                        $glibc_minor = trim($line[2]);\n                        if (isset($glibc_major)) {\n                            break;\n                        }\n                        continue;\n                    }\n                }\n                fclose($features_file);\n                if (!isset($glibc_major) || !isset($glibc_minor)) {\n                    return $glibc = '';\n                }\n                return $glibc = 'glibc' . trim($glibc_major) . \".\" . trim($glibc_minor) ;\n            } // no cpp\n\n            $tmpfile = System::mktemp(\"glibctest\");\n            $fp = fopen($tmpfile, \"w\");\n            fwrite($fp, \"#include <features.h>\\n__GLIBC__ __GLIBC_MINOR__\\n\");\n            fclose($fp);\n            $cpp = popen(\"/usr/bin/cpp $tmpfile\", \"r\");\n            while ($line = fgets($cpp, 1024)) {\n                if ($line{0} == '#' || trim($line) == '') {\n                    continue;\n                }\n\n                if (list($major, $minor) = explode(' ', trim($line))) {\n                    break;\n                }\n            }\n            pclose($cpp);\n            unlink($tmpfile);\n        } // features.h\n\n        if (!($major && $minor) && @is_link('/lib/libc.so.6')) {\n            // Let's try reading the libc.so.6 symlink\n            if (preg_match('/^libc-(.*)\\.so$/', basename(readlink('/lib/libc.so.6')), $matches)) {\n                list($major, $minor) = explode('.', $matches[1]);\n            }\n        }\n\n        if (!($major && $minor)) {\n            return $glibc = '';\n        }\n\n        return $glibc = \"glibc{$major}.{$minor}\";\n    }\n\n    function getSignature()\n    {\n        if (empty($this->extra)) {\n            return \"{$this->sysname}-{$this->release}-{$this->cpu}\";\n        }\n        return \"{$this->sysname}-{$this->release}-{$this->cpu}-{$this->extra}\";\n    }\n\n    function getSysname()\n    {\n        return $this->sysname;\n    }\n\n    function getNodename()\n    {\n        return $this->nodename;\n    }\n\n    function getCpu()\n    {\n        return $this->cpu;\n    }\n\n    function getRelease()\n    {\n        return $this->release;\n    }\n\n    function getExtra()\n    {\n        return $this->extra;\n    }\n\n    function matchSignature($match)\n    {\n        $fragments = is_array($match) ? $match : explode('-', $match);\n        $n = count($fragments);\n        $matches = 0;\n        if ($n > 0) {\n            $matches += $this->_matchFragment($fragments[0], $this->sysname);\n        }\n        if ($n > 1) {\n            $matches += $this->_matchFragment($fragments[1], $this->release);\n        }\n        if ($n > 2) {\n            $matches += $this->_matchFragment($fragments[2], $this->cpu);\n        }\n        if ($n > 3) {\n            $matches += $this->_matchFragment($fragments[3], $this->extra);\n        }\n        return ($matches == $n);\n    }\n\n    function _matchFragment($fragment, $value)\n    {\n        if (strcspn($fragment, '*?') < strlen($fragment)) {\n            $reg = '/^' . str_replace(array('*', '?', '/'), array('.*', '.', '\\\\/'), $fragment) . '\\\\z/';\n            return preg_match($reg, $value);\n        }\n        return ($fragment == '*' || !strcasecmp($fragment, $value));\n    }\n\n}\n/*\n * Local Variables:\n * indent-tabs-mode: nil\n * c-basic-offset: 4\n * End:\n */"
  },
  {
    "path": "newscoop/include/PEAR/Autoloader.php",
    "content": "<?php\n/**\n * Class auto-loader\n *\n * PHP versions 4\n\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Autoloader.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/manual/en/core.ppm.php#core.ppm.pear-autoloader\n * @since      File available since Release 0.1\n * @deprecated File deprecated in Release 1.4.0a1\n */\n\n// /* vim: set expandtab tabstop=4 shiftwidth=4: */\n\nif (!extension_loaded(\"overload\")) {\n    // die hard without ext/overload\n    die(\"Rebuild PHP with the `overload' extension to use PEAR_Autoloader\");\n}\n\n/**\n * Include for PEAR_Error and PEAR classes\n */\nrequire_once \"PEAR.php\";\n\n/**\n * This class is for objects where you want to separate the code for\n * some methods into separate classes.  This is useful if you have a\n * class with not-frequently-used methods that contain lots of code\n * that you would like to avoid always parsing.\n *\n * The PEAR_Autoloader class provides autoloading and aggregation.\n * The autoloading lets you set up in which classes the separated\n * methods are found.  Aggregation is the technique used to import new\n * methods, an instance of each class providing separated methods is\n * stored and called every time the aggregated method is called.\n *\n * @category   pear\n * @package    PEAR\n * @author Stig Bakken <ssb@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/manual/en/core.ppm.php#core.ppm.pear-autoloader\n * @since      File available since Release 0.1\n * @deprecated File deprecated in Release 1.4.0a1\n */\nclass PEAR_Autoloader extends PEAR\n{\n    // {{{ properties\n\n    /**\n     * Map of methods and classes where they are defined\n     *\n     * @var array\n     *\n     * @access private\n     */\n    var $_autoload_map = array();\n\n    /**\n     * Map of methods and aggregate objects\n     *\n     * @var array\n     *\n     * @access private\n     */\n    var $_method_map = array();\n\n    // }}}\n    // {{{ addAutoload()\n\n    /**\n     * Add one or more autoload entries.\n     *\n     * @param string $method     which method to autoload\n     *\n     * @param string $classname  (optional) which class to find the method in.\n     *                           If the $method parameter is an array, this\n     *                           parameter may be omitted (and will be ignored\n     *                           if not), and the $method parameter will be\n     *                           treated as an associative array with method\n     *                           names as keys and class names as values.\n     *\n     * @return void\n     *\n     * @access public\n     */\n    function addAutoload($method, $classname = null)\n    {\n        if (is_array($method)) {\n            array_walk($method, create_function('$a,&$b', '$b = strtolower($b);'));\n            $this->_autoload_map = array_merge($this->_autoload_map, $method);\n        } else {\n            $this->_autoload_map[strtolower($method)] = $classname;\n        }\n    }\n\n    // }}}\n    // {{{ removeAutoload()\n\n    /**\n     * Remove an autoload entry.\n     *\n     * @param string $method  which method to remove the autoload entry for\n     *\n     * @return bool TRUE if an entry was removed, FALSE if not\n     *\n     * @access public\n     */\n    function removeAutoload($method)\n    {\n        $method = strtolower($method);\n        $ok = isset($this->_autoload_map[$method]);\n        unset($this->_autoload_map[$method]);\n        return $ok;\n    }\n\n    // }}}\n    // {{{ addAggregateObject()\n\n    /**\n     * Add an aggregate object to this object.  If the specified class\n     * is not defined, loading it will be attempted following PEAR's\n     * file naming scheme.  All the methods in the class will be\n     * aggregated, except private ones (name starting with an\n     * underscore) and constructors.\n     *\n     * @param string $classname  what class to instantiate for the object.\n     *\n     * @return void\n     *\n     * @access public\n     */\n    function addAggregateObject($classname)\n    {\n        $classname = strtolower($classname);\n        if (!class_exists($classname)) {\n            $include_file = preg_replace('/[^a-z0-9]/i', '_', $classname);\n            include_once $include_file;\n        }\n        $obj =& new $classname;\n        $methods = get_class_methods($classname);\n        foreach ($methods as $method) {\n            // don't import priviate methods and constructors\n            if ($method{0} != '_' && $method != $classname) {\n                $this->_method_map[$method] = $obj;\n            }\n        }\n    }\n\n    // }}}\n    // {{{ removeAggregateObject()\n\n    /**\n     * Remove an aggregate object.\n     *\n     * @param string $classname  the class of the object to remove\n     *\n     * @return bool  TRUE if an object was removed, FALSE if not\n     *\n     * @access public\n     */\n    function removeAggregateObject($classname)\n    {\n        $ok = false;\n        $classname = strtolower($classname);\n        reset($this->_method_map);\n        while (list($method, $obj) = each($this->_method_map)) {\n            if (is_a($obj, $classname)) {\n                unset($this->_method_map[$method]);\n                $ok = true;\n            }\n        }\n        return $ok;\n    }\n\n    // }}}\n    // {{{ __call()\n\n    /**\n     * Overloaded object call handler, called each time an\n     * undefined/aggregated method is invoked.  This method repeats\n     * the call in the right aggregate object and passes on the return\n     * value.\n     *\n     * @param string $method  which method that was called\n     *\n     * @param string $args    An array of the parameters passed in the\n     *                        original call\n     *\n     * @return mixed  The return value from the aggregated method, or a PEAR\n     *                error if the called method was unknown.\n     */\n    function __call($method, $args, &$retval)\n    {\n        $method = strtolower($method);\n        if (empty($this->_method_map[$method]) && isset($this->_autoload_map[$method])) {\n            $this->addAggregateObject($this->_autoload_map[$method]);\n        }\n        if (isset($this->_method_map[$method])) {\n            $retval = call_user_func_array(array($this->_method_map[$method], $method), $args);\n            return true;\n        }\n        return false;\n    }\n\n    // }}}\n}\n\noverload(\"PEAR_Autoloader\");\n\n?>\n"
  },
  {
    "path": "newscoop/include/PEAR/Builder.php",
    "content": "<?php\n/**\n * PEAR_Builder for building PHP extensions (PECL packages)\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Builder.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 0.1\n *\n * TODO: log output parameters in PECL command line\n * TODO: msdev path in configuration\n */\n\n/**\n * Needed for extending PEAR_Builder\n */\nrequire_once 'PEAR/Common.php';\nrequire_once 'PEAR/PackageFile.php';\n\n/**\n * Class to handle building (compiling) extensions.\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since PHP 4.0.2\n * @see        http://pear.php.net/manual/en/core.ppm.pear-builder.php\n */\nclass PEAR_Builder extends PEAR_Common\n{\n    var $php_api_version = 0;\n    var $zend_module_api_no = 0;\n    var $zend_extension_api_no = 0;\n\n    var $extensions_built = array();\n\n    /**\n     * @var string Used for reporting when it is not possible to pass function\n     *             via extra parameter, e.g. log, msdevCallback\n     */\n    var $current_callback = null;\n\n    // used for msdev builds\n    var $_lastline = null;\n    var $_firstline = null;\n\n    /**\n     * PEAR_Builder constructor.\n     *\n     * @param object $ui user interface object (instance of PEAR_Frontend_*)\n     *\n     * @access public\n     */\n    function PEAR_Builder(&$ui)\n    {\n        parent::PEAR_Common();\n        $this->setFrontendObject($ui);\n    }\n\n    /**\n     * Build an extension from source on windows.\n     * requires msdev\n     */\n    function _build_win32($descfile, $callback = null)\n    {\n        if (is_object($descfile)) {\n            $pkg = $descfile;\n            $descfile = $pkg->getPackageFile();\n        } else {\n            $pf = &new PEAR_PackageFile($this->config, $this->debug);\n            $pkg = &$pf->fromPackageFile($descfile, PEAR_VALIDATE_NORMAL);\n            if (PEAR::isError($pkg)) {\n                return $pkg;\n            }\n        }\n        $dir = dirname($descfile);\n        $old_cwd = getcwd();\n\n        if (!file_exists($dir) || !is_dir($dir) || !chdir($dir)) {\n            return $this->raiseError(\"could not chdir to $dir\");\n        }\n\n        // packages that were in a .tar have the packagefile in this directory\n        $vdir = $pkg->getPackage() . '-' . $pkg->getVersion();\n        if (file_exists($dir) && is_dir($vdir)) {\n            if (!chdir($vdir)) {\n                return $this->raiseError(\"could not chdir to \" . realpath($vdir));\n            }\n\n            $dir = getcwd();\n        }\n\n        $this->log(2, \"building in $dir\");\n\n        $dsp = $pkg->getPackage().'.dsp';\n        if (!file_exists(\"$dir/$dsp\")) {\n            return $this->raiseError(\"The DSP $dsp does not exist.\");\n        }\n        // XXX TODO: make release build type configurable\n        $command = 'msdev '.$dsp.' /MAKE \"'.$pkg->getPackage(). ' - Release\"';\n\n        $err = $this->_runCommand($command, array(&$this, 'msdevCallback'));\n        if (PEAR::isError($err)) {\n            return $err;\n        }\n\n        // figure out the build platform and type\n        $platform = 'Win32';\n        $buildtype = 'Release';\n        if (preg_match('/.*?'.$pkg->getPackage().'\\s-\\s(\\w+)\\s(.*?)-+/i',$this->_firstline,$matches)) {\n            $platform = $matches[1];\n            $buildtype = $matches[2];\n        }\n\n        if (preg_match('/(.*)?\\s-\\s(\\d+).*?(\\d+)/', $this->_lastline, $matches)) {\n            if ($matches[2]) {\n                // there were errors in the build\n                return $this->raiseError(\"There were errors during compilation.\");\n            }\n            $out = $matches[1];\n        } else {\n            return $this->raiseError(\"Did not understand the completion status returned from msdev.exe.\");\n        }\n\n        // msdev doesn't tell us the output directory :/\n        // open the dsp, find /out and use that directory\n        $dsptext = join(file($dsp),'');\n\n        // this regex depends on the build platform and type having been\n        // correctly identified above.\n        $regex ='/.*?!IF\\s+\"\\$\\(CFG\\)\"\\s+==\\s+(\"'.\n                    $pkg->getPackage().'\\s-\\s'.\n                    $platform.'\\s'.\n                    $buildtype.'\").*?'.\n                    '\\/out:\"(.*?)\"/is';\n\n        if ($dsptext && preg_match($regex, $dsptext, $matches)) {\n            // what we get back is a relative path to the output file itself.\n            $outfile = realpath($matches[2]);\n        } else {\n            return $this->raiseError(\"Could not retrieve output information from $dsp.\");\n        }\n        // realpath returns false if the file doesn't exist\n        if ($outfile && copy($outfile, \"$dir/$out\")) {\n            $outfile = \"$dir/$out\";\n        }\n\n        $built_files[] = array(\n            'file' => \"$outfile\",\n            'php_api' => $this->php_api_version,\n            'zend_mod_api' => $this->zend_module_api_no,\n            'zend_ext_api' => $this->zend_extension_api_no,\n            );\n\n        return $built_files;\n    }\n    // }}}\n\n    // {{{ msdevCallback()\n    function msdevCallback($what, $data)\n    {\n        if (!$this->_firstline)\n            $this->_firstline = $data;\n        $this->_lastline = $data;\n        call_user_func($this->current_callback, $what, $data);\n    }\n\n    /**\n     * @param string\n     * @param string\n     * @param array\n     * @access private\n     */\n    function _harvestInstDir($dest_prefix, $dirname, &$built_files)\n    {\n        $d = opendir($dirname);\n        if (!$d)\n            return false;\n\n        $ret = true;\n        while (($ent = readdir($d)) !== false) {\n            if ($ent{0} == '.')\n                continue;\n\n            $full = $dirname . DIRECTORY_SEPARATOR . $ent;\n            if (is_dir($full)) {\n                if (!$this->_harvestInstDir(\n                        $dest_prefix . DIRECTORY_SEPARATOR . $ent,\n                        $full, $built_files)) {\n                    $ret = false;\n                    break;\n                }\n            } else {\n                $dest = $dest_prefix . DIRECTORY_SEPARATOR . $ent;\n                $built_files[] = array(\n                        'file' => $full,\n                        'dest' => $dest,\n                        'php_api' => $this->php_api_version,\n                        'zend_mod_api' => $this->zend_module_api_no,\n                        'zend_ext_api' => $this->zend_extension_api_no,\n                        );\n            }\n        }\n        closedir($d);\n        return $ret;\n    }\n\n    /**\n     * Build an extension from source.  Runs \"phpize\" in the source\n     * directory, but compiles in a temporary directory\n     * (TMPDIR/pear-build-USER/PACKAGE-VERSION).\n     *\n     * @param string|PEAR_PackageFile_v* $descfile path to XML package description file, or\n     *               a PEAR_PackageFile object\n     *\n     * @param mixed $callback callback function used to report output,\n     * see PEAR_Builder::_runCommand for details\n     *\n     * @return array an array of associative arrays with built files,\n     * format:\n     * array( array( 'file' => '/path/to/ext.so',\n     *               'php_api' => YYYYMMDD,\n     *               'zend_mod_api' => YYYYMMDD,\n     *               'zend_ext_api' => YYYYMMDD ),\n     *        ... )\n     *\n     * @access public\n     *\n     * @see PEAR_Builder::_runCommand\n     */\n    function build($descfile, $callback = null)\n    {\n        if (preg_match('/(\\\\/|\\\\\\\\|^)([^\\\\/\\\\\\\\]+)?php(.+)?$/',\n                       $this->config->get('php_bin'), $matches)) {\n            if (isset($matches[2]) && strlen($matches[2]) &&\n                trim($matches[2]) != trim($this->config->get('php_prefix'))) {\n                $this->log(0, 'WARNING: php_bin ' . $this->config->get('php_bin') .\n                           ' appears to have a prefix ' . $matches[2] . ', but' .\n                           ' config variable php_prefix does not match');\n            }\n\n            if (isset($matches[3]) && strlen($matches[3]) &&\n                trim($matches[3]) != trim($this->config->get('php_suffix'))) {\n                $this->log(0, 'WARNING: php_bin ' . $this->config->get('php_bin') .\n                           ' appears to have a suffix ' . $matches[3] . ', but' .\n                           ' config variable php_suffix does not match');\n            }\n        }\n\n        $this->current_callback = $callback;\n        if (PEAR_OS == \"Windows\") {\n            return $this->_build_win32($descfile, $callback);\n        }\n\n        if (PEAR_OS != 'Unix') {\n            return $this->raiseError(\"building extensions not supported on this platform\");\n        }\n\n        if (is_object($descfile)) {\n            $pkg = $descfile;\n            $descfile = $pkg->getPackageFile();\n            if (is_a($pkg, 'PEAR_PackageFile_v1')) {\n                $dir = dirname($descfile);\n            } else {\n                $dir = $pkg->_config->get('temp_dir') . '/' . $pkg->getName();\n                // automatically delete at session end\n                $this->addTempFile($dir);\n            }\n        } else {\n            $pf = &new PEAR_PackageFile($this->config);\n            $pkg = &$pf->fromPackageFile($descfile, PEAR_VALIDATE_NORMAL);\n            if (PEAR::isError($pkg)) {\n                return $pkg;\n            }\n            $dir = dirname($descfile);\n        }\n\n        $old_cwd = getcwd();\n        if (!file_exists($dir) || !is_dir($dir) || !chdir($dir)) {\n            return $this->raiseError(\"could not chdir to $dir\");\n        }\n\n        $vdir = $pkg->getPackage() . '-' . $pkg->getVersion();\n        if (is_dir($vdir)) {\n            chdir($vdir);\n        }\n\n        $dir = getcwd();\n        $this->log(2, \"building in $dir\");\n        putenv('PATH=' . $this->config->get('bin_dir') . ':' . getenv('PATH'));\n        $err = $this->_runCommand($this->config->get('php_prefix')\n                                . \"phpize\" .\n                                $this->config->get('php_suffix'),\n                                array(&$this, 'phpizeCallback'));\n        if (PEAR::isError($err)) {\n            return $err;\n        }\n\n        if (!$err) {\n            return $this->raiseError(\"`phpize' failed\");\n        }\n\n        // {{{ start of interactive part\n        $configure_command = \"$dir/configure\";\n        $configure_options = $pkg->getConfigureOptions();\n        if ($configure_options) {\n            foreach ($configure_options as $o) {\n                $default = array_key_exists('default', $o) ? $o['default'] : null;\n                list($r) = $this->ui->userDialog('build',\n                                                 array($o['prompt']),\n                                                 array('text'),\n                                                 array($default));\n                if (substr($o['name'], 0, 5) == 'with-' &&\n                    ($r == 'yes' || $r == 'autodetect')) {\n                    $configure_command .= \" --$o[name]\";\n                } else {\n                    $configure_command .= \" --$o[name]=\".trim($r);\n                }\n            }\n        }\n        // }}} end of interactive part\n\n        // FIXME make configurable\n        if (!$user=getenv('USER')) {\n            $user='defaultuser';\n        }\n\n        $tmpdir = $this->config->get('temp_dir');\n        $build_basedir = System::mktemp(\" -t $tmpdir -d pear-build-$user\");\n        $build_dir = \"$build_basedir/$vdir\";\n        $inst_dir = \"$build_basedir/install-$vdir\";\n        $this->log(1, \"building in $build_dir\");\n        if (is_dir($build_dir)) {\n            System::rm(array('-rf', $build_dir));\n        }\n\n        if (!System::mkDir(array('-p', $build_dir))) {\n            return $this->raiseError(\"could not create build dir: $build_dir\");\n        }\n\n        $this->addTempFile($build_dir);\n        if (!System::mkDir(array('-p', $inst_dir))) {\n            return $this->raiseError(\"could not create temporary install dir: $inst_dir\");\n        }\n        $this->addTempFile($inst_dir);\n\n        $make_command = getenv('MAKE') ? getenv('MAKE') : 'make';\n\n        $to_run = array(\n            $configure_command,\n            $make_command,\n            \"$make_command INSTALL_ROOT=\\\"$inst_dir\\\" install\",\n            \"find \\\"$inst_dir\\\" | xargs ls -dils\"\n            );\n        if (!file_exists($build_dir) || !is_dir($build_dir) || !chdir($build_dir)) {\n            return $this->raiseError(\"could not chdir to $build_dir\");\n        }\n        putenv('PHP_PEAR_VERSION=1.9.1');\n        foreach ($to_run as $cmd) {\n            $err = $this->_runCommand($cmd, $callback);\n            if (PEAR::isError($err)) {\n                chdir($old_cwd);\n                return $err;\n            }\n            if (!$err) {\n                chdir($old_cwd);\n                return $this->raiseError(\"`$cmd' failed\");\n            }\n        }\n        if (!($dp = opendir(\"modules\"))) {\n            chdir($old_cwd);\n            return $this->raiseError(\"no `modules' directory found\");\n        }\n        $built_files = array();\n        $prefix = exec($this->config->get('php_prefix')\n                        . \"php-config\" .\n                       $this->config->get('php_suffix') . \" --prefix\");\n        $this->_harvestInstDir($prefix, $inst_dir . DIRECTORY_SEPARATOR . $prefix, $built_files);\n        chdir($old_cwd);\n        return $built_files;\n    }\n\n    /**\n     * Message callback function used when running the \"phpize\"\n     * program.  Extracts the API numbers used.  Ignores other message\n     * types than \"cmdoutput\".\n     *\n     * @param string $what the type of message\n     * @param mixed $data the message\n     *\n     * @return void\n     *\n     * @access public\n     */\n    function phpizeCallback($what, $data)\n    {\n        if ($what != 'cmdoutput') {\n            return;\n        }\n        $this->log(1, rtrim($data));\n        if (preg_match('/You should update your .aclocal.m4/', $data)) {\n            return;\n        }\n        $matches = array();\n        if (preg_match('/^\\s+(\\S[^:]+):\\s+(\\d{8})/', $data, $matches)) {\n            $member = preg_replace('/[^a-z]/', '_', strtolower($matches[1]));\n            $apino = (int)$matches[2];\n            if (isset($this->$member)) {\n                $this->$member = $apino;\n                //$msg = sprintf(\"%-22s : %d\", $matches[1], $apino);\n                //$this->log(1, $msg);\n            }\n        }\n    }\n\n    /**\n     * Run an external command, using a message callback to report\n     * output.  The command will be run through popen and output is\n     * reported for every line with a \"cmdoutput\" message with the\n     * line string, including newlines, as payload.\n     *\n     * @param string $command the command to run\n     *\n     * @param mixed $callback (optional) function to use as message\n     * callback\n     *\n     * @return bool whether the command was successful (exit code 0\n     * means success, any other means failure)\n     *\n     * @access private\n     */\n    function _runCommand($command, $callback = null)\n    {\n        $this->log(1, \"running: $command\");\n        $pp = popen(\"$command 2>&1\", \"r\");\n        if (!$pp) {\n            return $this->raiseError(\"failed to run `$command'\");\n        }\n        if ($callback && $callback[0]->debug == 1) {\n            $olddbg = $callback[0]->debug;\n            $callback[0]->debug = 2;\n        }\n\n        while ($line = fgets($pp, 1024)) {\n            if ($callback) {\n                call_user_func($callback, 'cmdoutput', $line);\n            } else {\n                $this->log(2, rtrim($line));\n            }\n        }\n        if ($callback && isset($olddbg)) {\n            $callback[0]->debug = $olddbg;\n        }\n\n        $exitcode = is_resource($pp) ? pclose($pp) : -1;\n        return ($exitcode == 0);\n    }\n\n    function log($level, $msg)\n    {\n        if ($this->current_callback) {\n            if ($this->debug >= $level) {\n                call_user_func($this->current_callback, 'output', $msg);\n            }\n            return;\n        }\n        return PEAR_Common::log($level, $msg);\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/ChannelFile/Parser.php",
    "content": "<?php\n/**\n * PEAR_ChannelFile_Parser for parsing channel.xml\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Parser.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n\n/**\n * base xml parser class\n */\nrequire_once 'PEAR/XMLParser.php';\nrequire_once 'PEAR/ChannelFile.php';\n/**\n * Parser for channel.xml\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_ChannelFile_Parser extends PEAR_XMLParser\n{\n    var $_config;\n    var $_logger;\n    var $_registry;\n\n    function setConfig(&$c)\n    {\n        $this->_config = &$c;\n        $this->_registry = &$c->getRegistry();\n    }\n\n    function setLogger(&$l)\n    {\n        $this->_logger = &$l;\n    }\n\n    function parse($data, $file)\n    {\n        if (PEAR::isError($err = parent::parse($data, $file))) {\n            return $err;\n        }\n\n        $ret = new PEAR_ChannelFile;\n        $ret->setConfig($this->_config);\n        if (isset($this->_logger)) {\n            $ret->setLogger($this->_logger);\n        }\n\n        $ret->fromArray($this->_unserializedData);\n        // make sure the filelist is in the easy to read format needed\n        $ret->flattenFilelist();\n        $ret->setPackagefile($file, $archive);\n        return $ret;\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/ChannelFile.php",
    "content": "<?php\n/**\n * PEAR_ChannelFile, the channel handling class\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: ChannelFile.php 286951 2009-08-09 14:41:22Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n\n/**\n * Needed for error handling\n */\nrequire_once 'PEAR/ErrorStack.php';\nrequire_once 'PEAR/XMLParser.php';\nrequire_once 'PEAR/Common.php';\n\n/**\n * Error code if the channel.xml <channel> tag does not contain a valid version\n */\ndefine('PEAR_CHANNELFILE_ERROR_NO_VERSION', 1);\n/**\n * Error code if the channel.xml <channel> tag version is not supported (version 1.0 is the only supported version,\n * currently\n */\ndefine('PEAR_CHANNELFILE_ERROR_INVALID_VERSION', 2);\n\n/**\n * Error code if parsing is attempted with no xml extension\n */\ndefine('PEAR_CHANNELFILE_ERROR_NO_XML_EXT', 3);\n\n/**\n * Error code if creating the xml parser resource fails\n */\ndefine('PEAR_CHANNELFILE_ERROR_CANT_MAKE_PARSER', 4);\n\n/**\n * Error code used for all sax xml parsing errors\n */\ndefine('PEAR_CHANNELFILE_ERROR_PARSER_ERROR', 5);\n\n/**#@+\n * Validation errors\n */\n/**\n * Error code when channel name is missing\n */\ndefine('PEAR_CHANNELFILE_ERROR_NO_NAME', 6);\n/**\n * Error code when channel name is invalid\n */\ndefine('PEAR_CHANNELFILE_ERROR_INVALID_NAME', 7);\n/**\n * Error code when channel summary is missing\n */\ndefine('PEAR_CHANNELFILE_ERROR_NO_SUMMARY', 8);\n/**\n * Error code when channel summary is multi-line\n */\ndefine('PEAR_CHANNELFILE_ERROR_MULTILINE_SUMMARY', 9);\n/**\n * Error code when channel server is missing for protocol\n */\ndefine('PEAR_CHANNELFILE_ERROR_NO_HOST', 10);\n/**\n * Error code when channel server is invalid for protocol\n */\ndefine('PEAR_CHANNELFILE_ERROR_INVALID_HOST', 11);\n/**\n * Error code when a mirror name is invalid\n */\ndefine('PEAR_CHANNELFILE_ERROR_INVALID_MIRROR', 21);\n/**\n * Error code when a mirror type is invalid\n */\ndefine('PEAR_CHANNELFILE_ERROR_INVALID_MIRRORTYPE', 22);\n/**\n * Error code when an attempt is made to generate xml, but the parsed content is invalid\n */\ndefine('PEAR_CHANNELFILE_ERROR_INVALID', 23);\n/**\n * Error code when an empty package name validate regex is passed in\n */\ndefine('PEAR_CHANNELFILE_ERROR_EMPTY_REGEX', 24);\n/**\n * Error code when a <function> tag has no version\n */\ndefine('PEAR_CHANNELFILE_ERROR_NO_FUNCTIONVERSION', 25);\n/**\n * Error code when a <function> tag has no name\n */\ndefine('PEAR_CHANNELFILE_ERROR_NO_FUNCTIONNAME', 26);\n/**\n * Error code when a <validatepackage> tag has no name\n */\ndefine('PEAR_CHANNELFILE_ERROR_NOVALIDATE_NAME', 27);\n/**\n * Error code when a <validatepackage> tag has no version attribute\n */\ndefine('PEAR_CHANNELFILE_ERROR_NOVALIDATE_VERSION', 28);\n/**\n * Error code when a mirror does not exist but is called for in one of the set*\n * methods.\n */\ndefine('PEAR_CHANNELFILE_ERROR_MIRROR_NOT_FOUND', 32);\n/**\n * Error code when a server port is not numeric\n */\ndefine('PEAR_CHANNELFILE_ERROR_INVALID_PORT', 33);\n/**\n * Error code when <static> contains no version attribute\n */\ndefine('PEAR_CHANNELFILE_ERROR_NO_STATICVERSION', 34);\n/**\n * Error code when <baseurl> contains no type attribute in a <rest> protocol definition\n */\ndefine('PEAR_CHANNELFILE_ERROR_NOBASEURLTYPE', 35);\n/**\n * Error code when a mirror is defined and the channel.xml represents the __uri pseudo-channel\n */\ndefine('PEAR_CHANNELFILE_URI_CANT_MIRROR', 36);\n/**\n * Error code when ssl attribute is present and is not \"yes\"\n */\ndefine('PEAR_CHANNELFILE_ERROR_INVALID_SSL', 37);\n/**#@-*/\n\n/**\n * Mirror types allowed.  Currently only internet servers are recognized.\n */\n$GLOBALS['_PEAR_CHANNELS_MIRROR_TYPES'] =  array('server');\n\n\n/**\n * The Channel handling class\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_ChannelFile\n{\n    /**\n     * @access private\n     * @var PEAR_ErrorStack\n     * @access private\n     */\n    var $_stack;\n\n    /**\n     * Supported channel.xml versions, for parsing\n     * @var array\n     * @access private\n     */\n    var $_supportedVersions = array('1.0');\n\n    /**\n     * Parsed channel information\n     * @var array\n     * @access private\n     */\n    var $_channelInfo;\n\n    /**\n     * index into the subchannels array, used for parsing xml\n     * @var int\n     * @access private\n     */\n    var $_subchannelIndex;\n\n    /**\n     * index into the mirrors array, used for parsing xml\n     * @var int\n     * @access private\n     */\n    var $_mirrorIndex;\n\n    /**\n     * Flag used to determine the validity of parsed content\n     * @var boolean\n     * @access private\n     */\n    var $_isValid = false;\n\n    function PEAR_ChannelFile()\n    {\n        $this->_stack = &new PEAR_ErrorStack('PEAR_ChannelFile');\n        $this->_stack->setErrorMessageTemplate($this->_getErrorMessage());\n        $this->_isValid = false;\n    }\n\n    /**\n     * @return array\n     * @access protected\n     */\n    function _getErrorMessage()\n    {\n        return\n            array(\n                PEAR_CHANNELFILE_ERROR_INVALID_VERSION =>\n                    'While parsing channel.xml, an invalid version number \"%version% was passed in, expecting one of %versions%',\n                PEAR_CHANNELFILE_ERROR_NO_VERSION =>\n                    'No version number found in <channel> tag',\n                PEAR_CHANNELFILE_ERROR_NO_XML_EXT =>\n                    '%error%',\n                PEAR_CHANNELFILE_ERROR_CANT_MAKE_PARSER =>\n                    'Unable to create XML parser',\n                PEAR_CHANNELFILE_ERROR_PARSER_ERROR =>\n                    '%error%',\n                PEAR_CHANNELFILE_ERROR_NO_NAME =>\n                    'Missing channel name',\n                PEAR_CHANNELFILE_ERROR_INVALID_NAME =>\n                    'Invalid channel %tag% \"%name%\"',\n                PEAR_CHANNELFILE_ERROR_NO_SUMMARY =>\n                    'Missing channel summary',\n                PEAR_CHANNELFILE_ERROR_MULTILINE_SUMMARY =>\n                    'Channel summary should be on one line, but is multi-line',\n                PEAR_CHANNELFILE_ERROR_NO_HOST =>\n                    'Missing channel server for %type% server',\n                PEAR_CHANNELFILE_ERROR_INVALID_HOST =>\n                    'Server name \"%server%\" is invalid for %type% server',\n                PEAR_CHANNELFILE_ERROR_INVALID_MIRROR =>\n                    'Invalid mirror name \"%name%\", mirror type %type%',\n                PEAR_CHANNELFILE_ERROR_INVALID_MIRRORTYPE =>\n                    'Invalid mirror type \"%type%\"',\n                PEAR_CHANNELFILE_ERROR_INVALID =>\n                    'Cannot generate xml, contents are invalid',\n                PEAR_CHANNELFILE_ERROR_EMPTY_REGEX =>\n                    'packagenameregex cannot be empty',\n                PEAR_CHANNELFILE_ERROR_NO_FUNCTIONVERSION =>\n                    '%parent% %protocol% function has no version',\n                PEAR_CHANNELFILE_ERROR_NO_FUNCTIONNAME =>\n                    '%parent% %protocol% function has no name',\n                PEAR_CHANNELFILE_ERROR_NOBASEURLTYPE =>\n                    '%parent% rest baseurl has no type',\n                PEAR_CHANNELFILE_ERROR_NOVALIDATE_NAME =>\n                    'Validation package has no name in <validatepackage> tag',\n                PEAR_CHANNELFILE_ERROR_NOVALIDATE_VERSION =>\n                    'Validation package \"%package%\" has no version',\n                PEAR_CHANNELFILE_ERROR_MIRROR_NOT_FOUND =>\n                    'Mirror \"%mirror%\" does not exist',\n                PEAR_CHANNELFILE_ERROR_INVALID_PORT =>\n                    'Port \"%port%\" must be numeric',\n                PEAR_CHANNELFILE_ERROR_NO_STATICVERSION =>\n                    '<static> tag must contain version attribute',\n                PEAR_CHANNELFILE_URI_CANT_MIRROR =>\n                    'The __uri pseudo-channel cannot have mirrors',\n                PEAR_CHANNELFILE_ERROR_INVALID_SSL =>\n                    '%server% has invalid ssl attribute \"%ssl%\" can only be yes or not present',\n            );\n    }\n\n    /**\n     * @param string contents of package.xml file\n     * @return bool success of parsing\n     */\n    function fromXmlString($data)\n    {\n        if (preg_match('/<channel\\s+version=\"([0-9]+\\.[0-9]+)\"/', $data, $channelversion)) {\n            if (!in_array($channelversion[1], $this->_supportedVersions)) {\n                $this->_stack->push(PEAR_CHANNELFILE_ERROR_INVALID_VERSION, 'error',\n                    array('version' => $channelversion[1]));\n                return false;\n            }\n            $parser = new PEAR_XMLParser;\n            $result = $parser->parse($data);\n            if ($result !== true) {\n                if ($result->getCode() == 1) {\n                    $this->_stack->push(PEAR_CHANNELFILE_ERROR_NO_XML_EXT, 'error',\n                        array('error' => $result->getMessage()));\n                } else {\n                    $this->_stack->push(PEAR_CHANNELFILE_ERROR_CANT_MAKE_PARSER, 'error');\n                }\n                return false;\n            }\n            $this->_channelInfo = $parser->getData();\n            return true;\n        } else {\n            $this->_stack->push(PEAR_CHANNELFILE_ERROR_NO_VERSION, 'error', array('xml' => $data));\n            return false;\n        }\n    }\n\n    /**\n     * @return array\n     */\n    function toArray()\n    {\n        if (!$this->_isValid && !$this->validate()) {\n            return false;\n        }\n        return $this->_channelInfo;\n    }\n\n    /**\n     * @param array\n     * @static\n     * @return PEAR_ChannelFile|false false if invalid\n     */\n    function &fromArray($data, $compatibility = false, $stackClass = 'PEAR_ErrorStack')\n    {\n        $a = new PEAR_ChannelFile($compatibility, $stackClass);\n        $a->_fromArray($data);\n        if (!$a->validate()) {\n            $a = false;\n            return $a;\n        }\n        return $a;\n    }\n\n    /**\n     * Unlike {@link fromArray()} this does not do any validation\n     * @param array\n     * @static\n     * @return PEAR_ChannelFile\n     */\n    function &fromArrayWithErrors($data, $compatibility = false,\n                                  $stackClass = 'PEAR_ErrorStack')\n    {\n        $a = new PEAR_ChannelFile($compatibility, $stackClass);\n        $a->_fromArray($data);\n        return $a;\n    }\n\n    /**\n     * @param array\n     * @access private\n     */\n    function _fromArray($data)\n    {\n        $this->_channelInfo = $data;\n    }\n\n    /**\n     * Wrapper to {@link PEAR_ErrorStack::getErrors()}\n     * @param boolean determines whether to purge the error stack after retrieving\n     * @return array\n     */\n    function getErrors($purge = false)\n    {\n        return $this->_stack->getErrors($purge);\n    }\n\n    /**\n     * Unindent given string (?)\n     *\n     * @param string $str The string that has to be unindented.\n     * @return string\n     * @access private\n     */\n    function _unIndent($str)\n    {\n        // remove leading newlines\n        $str = preg_replace('/^[\\r\\n]+/', '', $str);\n        // find whitespace at the beginning of the first line\n        $indent_len = strspn($str, \" \\t\");\n        $indent = substr($str, 0, $indent_len);\n        $data = '';\n        // remove the same amount of whitespace from following lines\n        foreach (explode(\"\\n\", $str) as $line) {\n            if (substr($line, 0, $indent_len) == $indent) {\n                $data .= substr($line, $indent_len) . \"\\n\";\n            }\n        }\n        return $data;\n    }\n\n    /**\n     * Parse a channel.xml file.  Expects the name of\n     * a channel xml file as input.\n     *\n     * @param string  $descfile  name of channel xml file\n     * @return bool success of parsing\n     */\n    function fromXmlFile($descfile)\n    {\n        if (!file_exists($descfile) || !is_file($descfile) || !is_readable($descfile) ||\n             (!$fp = fopen($descfile, 'r'))) {\n            require_once 'PEAR.php';\n            return PEAR::raiseError(\"Unable to open $descfile\");\n        }\n\n        // read the whole thing so we only get one cdata callback\n        // for each block of cdata\n        fclose($fp);\n        $data = file_get_contents($descfile);\n        return $this->fromXmlString($data);\n    }\n\n    /**\n     * Parse channel information from different sources\n     *\n     * This method is able to extract information about a channel\n     * from an .xml file or a string\n     *\n     * @access public\n     * @param  string Filename of the source or the source itself\n     * @return bool\n     */\n    function fromAny($info)\n    {\n        if (is_string($info) && file_exists($info) && strlen($info) < 255) {\n            $tmp = substr($info, -4);\n            if ($tmp == '.xml') {\n                $info = $this->fromXmlFile($info);\n            } else {\n                $fp = fopen($info, \"r\");\n                $test = fread($fp, 5);\n                fclose($fp);\n                if ($test == \"<?xml\") {\n                    $info = $this->fromXmlFile($info);\n                }\n            }\n            if (PEAR::isError($info)) {\n                require_once 'PEAR.php';\n                return PEAR::raiseError($info);\n            }\n        }\n        if (is_string($info)) {\n            $info = $this->fromXmlString($info);\n        }\n        return $info;\n    }\n\n    /**\n     * Return an XML document based on previous parsing and modifications\n     *\n     * @return string XML data\n     *\n     * @access public\n     */\n    function toXml()\n    {\n        if (!$this->_isValid && !$this->validate()) {\n            $this->_validateError(PEAR_CHANNELFILE_ERROR_INVALID);\n            return false;\n        }\n        if (!isset($this->_channelInfo['attribs']['version'])) {\n            $this->_channelInfo['attribs']['version'] = '1.0';\n        }\n        $channelInfo = $this->_channelInfo;\n        $ret = \"<?xml version=\\\"1.0\\\" encoding=\\\"ISO-8859-1\\\" ?>\\n\";\n        $ret .= \"<channel version=\\\"\" .\n            $channelInfo['attribs']['version'] . \"\\\" xmlns=\\\"http://pear.php.net/channel-1.0\\\"\n  xmlns:xsi=\\\"http://www.w3.org/2001/XMLSchema-instance\\\"\n  xsi:schemaLocation=\\\"http://pear.php.net/dtd/channel-\"\n            . $channelInfo['attribs']['version'] . \" http://pear.php.net/dtd/channel-\" .\n            $channelInfo['attribs']['version'] . \".xsd\\\">\n <name>$channelInfo[name]</name>\n <summary>\" . htmlspecialchars($channelInfo['summary']).\"</summary>\n\";\n        if (isset($channelInfo['suggestedalias'])) {\n            $ret .= ' <suggestedalias>' . $channelInfo['suggestedalias'] . \"</suggestedalias>\\n\";\n        }\n        if (isset($channelInfo['validatepackage'])) {\n            $ret .= ' <validatepackage version=\"' .\n                $channelInfo['validatepackage']['attribs']['version']. '\">' .\n                htmlspecialchars($channelInfo['validatepackage']['_content']) .\n                \"</validatepackage>\\n\";\n        }\n        $ret .= \" <servers>\\n\";\n        $ret .= '  <primary';\n        if (isset($channelInfo['servers']['primary']['attribs']['ssl'])) {\n            $ret .= ' ssl=\"' . $channelInfo['servers']['primary']['attribs']['ssl'] . '\"';\n        }\n        if (isset($channelInfo['servers']['primary']['attribs']['port'])) {\n            $ret .= ' port=\"' . $channelInfo['servers']['primary']['attribs']['port'] . '\"';\n        }\n        $ret .= \">\\n\";\n        if (isset($channelInfo['servers']['primary']['rest'])) {\n            $ret .= $this->_makeRestXml($channelInfo['servers']['primary']['rest'], '   ');\n        }\n        $ret .= \"  </primary>\\n\";\n        if (isset($channelInfo['servers']['mirror'])) {\n            $ret .= $this->_makeMirrorsXml($channelInfo);\n        }\n        $ret .= \" </servers>\\n\";\n        $ret .= \"</channel>\";\n        return str_replace(\"\\r\", \"\\n\", str_replace(\"\\r\\n\", \"\\n\", $ret));\n    }\n\n    /**\n     * Generate the <rest> tag\n     * @access private\n     */\n    function _makeRestXml($info, $indent)\n    {\n        $ret = $indent . \"<rest>\\n\";\n        if (isset($info['baseurl']) && !isset($info['baseurl'][0])) {\n            $info['baseurl'] = array($info['baseurl']);\n        }\n\n        if (isset($info['baseurl'])) {\n            foreach ($info['baseurl'] as $url) {\n                $ret .= \"$indent <baseurl type=\\\"\" . $url['attribs']['type'] . \"\\\"\";\n                $ret .= \">\" . $url['_content'] . \"</baseurl>\\n\";\n            }\n        }\n        $ret .= $indent . \"</rest>\\n\";\n        return $ret;\n    }\n\n    /**\n     * Generate the <mirrors> tag\n     * @access private\n     */\n    function _makeMirrorsXml($channelInfo)\n    {\n        $ret = \"\";\n        if (!isset($channelInfo['servers']['mirror'][0])) {\n            $channelInfo['servers']['mirror'] = array($channelInfo['servers']['mirror']);\n        }\n        foreach ($channelInfo['servers']['mirror'] as $mirror) {\n            $ret .= '  <mirror host=\"' . $mirror['attribs']['host'] . '\"';\n            if (isset($mirror['attribs']['port'])) {\n                $ret .= ' port=\"' . $mirror['attribs']['port'] . '\"';\n            }\n            if (isset($mirror['attribs']['ssl'])) {\n                $ret .= ' ssl=\"' . $mirror['attribs']['ssl'] . '\"';\n            }\n            $ret .= \">\\n\";\n            if (isset($mirror['rest'])) {\n                if (isset($mirror['rest'])) {\n                    $ret .= $this->_makeRestXml($mirror['rest'], '   ');\n                }\n                $ret .= \"  </mirror>\\n\";\n            } else {\n                $ret .= \"/>\\n\";\n            }\n        }\n        return $ret;\n    }\n\n    /**\n     * Generate the <functions> tag\n     * @access private\n     */\n    function _makeFunctionsXml($functions, $indent, $rest = false)\n    {\n        $ret = '';\n        if (!isset($functions[0])) {\n            $functions = array($functions);\n        }\n        foreach ($functions as $function) {\n            $ret .= \"$indent<function version=\\\"\" . $function['attribs']['version'] . \"\\\"\";\n            if ($rest) {\n                $ret .= ' uri=\"' . $function['attribs']['uri'] . '\"';\n            }\n            $ret .= \">\" . $function['_content'] . \"</function>\\n\";\n        }\n        return $ret;\n    }\n\n    /**\n     * Validation error.  Also marks the object contents as invalid\n     * @param error code\n     * @param array error information\n     * @access private\n     */\n    function _validateError($code, $params = array())\n    {\n        $this->_stack->push($code, 'error', $params);\n        $this->_isValid = false;\n    }\n\n    /**\n     * Validation warning.  Does not mark the object contents invalid.\n     * @param error code\n     * @param array error information\n     * @access private\n     */\n    function _validateWarning($code, $params = array())\n    {\n        $this->_stack->push($code, 'warning', $params);\n    }\n\n    /**\n     * Validate parsed file.\n     *\n     * @access public\n     * @return boolean\n     */\n    function validate()\n    {\n        $this->_isValid = true;\n        $info = $this->_channelInfo;\n        if (empty($info['name'])) {\n            $this->_validateError(PEAR_CHANNELFILE_ERROR_NO_NAME);\n        } elseif (!$this->validChannelServer($info['name'])) {\n            if ($info['name'] != '__uri') {\n                $this->_validateError(PEAR_CHANNELFILE_ERROR_INVALID_NAME, array('tag' => 'name',\n                    'name' => $info['name']));\n            }\n        }\n        if (empty($info['summary'])) {\n            $this->_validateError(PEAR_CHANNELFILE_ERROR_NO_SUMMARY);\n        } elseif (strpos(trim($info['summary']), \"\\n\") !== false) {\n            $this->_validateWarning(PEAR_CHANNELFILE_ERROR_MULTILINE_SUMMARY,\n                array('summary' => $info['summary']));\n        }\n        if (isset($info['suggestedalias'])) {\n            if (!$this->validChannelServer($info['suggestedalias'])) {\n                $this->_validateError(PEAR_CHANNELFILE_ERROR_INVALID_NAME,\n                    array('tag' => 'suggestedalias', 'name' =>$info['suggestedalias']));\n            }\n        }\n        if (isset($info['localalias'])) {\n            if (!$this->validChannelServer($info['localalias'])) {\n                $this->_validateError(PEAR_CHANNELFILE_ERROR_INVALID_NAME,\n                    array('tag' => 'localalias', 'name' =>$info['localalias']));\n            }\n        }\n        if (isset($info['validatepackage'])) {\n            if (!isset($info['validatepackage']['_content'])) {\n                $this->_validateError(PEAR_CHANNELFILE_ERROR_NOVALIDATE_NAME);\n            }\n            if (!isset($info['validatepackage']['attribs']['version'])) {\n                $content = isset($info['validatepackage']['_content']) ?\n                    $info['validatepackage']['_content'] :\n                    null;\n                $this->_validateError(PEAR_CHANNELFILE_ERROR_NOVALIDATE_VERSION,\n                    array('package' => $content));\n            }\n        }\n\n        if (isset($info['servers']['primary']['attribs'], $info['servers']['primary']['attribs']['port']) &&\n              !is_numeric($info['servers']['primary']['attribs']['port'])) {\n            $this->_validateError(PEAR_CHANNELFILE_ERROR_INVALID_PORT,\n                array('port' => $info['servers']['primary']['attribs']['port']));\n        }\n\n        if (isset($info['servers']['primary']['attribs'], $info['servers']['primary']['attribs']['ssl']) &&\n              $info['servers']['primary']['attribs']['ssl'] != 'yes') {\n            $this->_validateError(PEAR_CHANNELFILE_ERROR_INVALID_SSL,\n                array('ssl' => $info['servers']['primary']['attribs']['ssl'],\n                    'server' => $info['name']));\n        }\n\n        if (isset($info['servers']['primary']['rest']) &&\n              isset($info['servers']['primary']['rest']['baseurl'])) {\n            $this->_validateFunctions('rest', $info['servers']['primary']['rest']['baseurl']);\n        }\n        if (isset($info['servers']['mirror'])) {\n            if ($this->_channelInfo['name'] == '__uri') {\n                $this->_validateError(PEAR_CHANNELFILE_URI_CANT_MIRROR);\n            }\n            if (!isset($info['servers']['mirror'][0])) {\n                $info['servers']['mirror'] = array($info['servers']['mirror']);\n            }\n            foreach ($info['servers']['mirror'] as $mirror) {\n                if (!isset($mirror['attribs']['host'])) {\n                    $this->_validateError(PEAR_CHANNELFILE_ERROR_NO_HOST,\n                      array('type' => 'mirror'));\n                } elseif (!$this->validChannelServer($mirror['attribs']['host'])) {\n                    $this->_validateError(PEAR_CHANNELFILE_ERROR_INVALID_HOST,\n                        array('server' => $mirror['attribs']['host'], 'type' => 'mirror'));\n                }\n                if (isset($mirror['attribs']['ssl']) && $mirror['attribs']['ssl'] != 'yes') {\n                    $this->_validateError(PEAR_CHANNELFILE_ERROR_INVALID_SSL,\n                        array('ssl' => $info['ssl'], 'server' => $mirror['attribs']['host']));\n                }\n                if (isset($mirror['rest'])) {\n                    $this->_validateFunctions('rest', $mirror['rest']['baseurl'],\n                        $mirror['attribs']['host']);\n                }\n            }\n        }\n        return $this->_isValid;\n    }\n\n    /**\n     * @param string  rest - protocol name this function applies to\n     * @param array the functions\n     * @param string the name of the parent element (mirror name, for instance)\n     */\n    function _validateFunctions($protocol, $functions, $parent = '')\n    {\n        if (!isset($functions[0])) {\n            $functions = array($functions);\n        }\n\n        foreach ($functions as $function) {\n            if (!isset($function['_content']) || empty($function['_content'])) {\n                $this->_validateError(PEAR_CHANNELFILE_ERROR_NO_FUNCTIONNAME,\n                    array('parent' => $parent, 'protocol' => $protocol));\n            }\n\n            if ($protocol == 'rest') {\n                if (!isset($function['attribs']['type']) ||\n                      empty($function['attribs']['type'])) {\n                    $this->_validateError(PEAR_CHANNELFILE_ERROR_NOBASEURLTYPE,\n                        array('parent' => $parent, 'protocol' => $protocol));\n                }\n            } else {\n                if (!isset($function['attribs']['version']) ||\n                      empty($function['attribs']['version'])) {\n                    $this->_validateError(PEAR_CHANNELFILE_ERROR_NO_FUNCTIONVERSION,\n                        array('parent' => $parent, 'protocol' => $protocol));\n                }\n            }\n        }\n    }\n\n    /**\n     * Test whether a string contains a valid channel server.\n     * @param string $ver the package version to test\n     * @return bool\n     */\n    function validChannelServer($server)\n    {\n        if ($server == '__uri') {\n            return true;\n        }\n        return (bool) preg_match(PEAR_CHANNELS_SERVER_PREG, $server);\n    }\n\n    /**\n     * @return string|false\n     */\n    function getName()\n    {\n        if (isset($this->_channelInfo['name'])) {\n            return $this->_channelInfo['name'];\n        }\n\n        return false;\n    }\n\n    /**\n     * @return string|false\n     */\n    function getServer()\n    {\n        if (isset($this->_channelInfo['name'])) {\n            return $this->_channelInfo['name'];\n        }\n\n        return false;\n    }\n\n    /**\n     * @return int|80 port number to connect to\n     */\n    function getPort($mirror = false)\n    {\n        if ($mirror) {\n            if ($mir = $this->getMirror($mirror)) {\n                if (isset($mir['attribs']['port'])) {\n                    return $mir['attribs']['port'];\n                }\n\n                if ($this->getSSL($mirror)) {\n                    return 443;\n                }\n\n                return 80;\n            }\n\n            return false;\n        }\n\n        if (isset($this->_channelInfo['servers']['primary']['attribs']['port'])) {\n            return $this->_channelInfo['servers']['primary']['attribs']['port'];\n        }\n\n        if ($this->getSSL()) {\n            return 443;\n        }\n\n        return 80;\n    }\n\n    /**\n     * @return bool Determines whether secure sockets layer (SSL) is used to connect to this channel\n     */\n    function getSSL($mirror = false)\n    {\n        if ($mirror) {\n            if ($mir = $this->getMirror($mirror)) {\n                if (isset($mir['attribs']['ssl'])) {\n                    return true;\n                }\n\n                return false;\n            }\n\n            return false;\n        }\n\n        if (isset($this->_channelInfo['servers']['primary']['attribs']['ssl'])) {\n            return true;\n        }\n\n        return false;\n    }\n\n    /**\n     * @return string|false\n     */\n    function getSummary()\n    {\n        if (isset($this->_channelInfo['summary'])) {\n            return $this->_channelInfo['summary'];\n        }\n\n        return false;\n    }\n\n    /**\n     * @param string protocol type\n     * @param string Mirror name\n     * @return array|false\n     */\n    function getFunctions($protocol, $mirror = false)\n    {\n        if ($this->getName() == '__uri') {\n            return false;\n        }\n\n        $function = $protocol == 'rest' ? 'baseurl' : 'function';\n        if ($mirror) {\n            if ($mir = $this->getMirror($mirror)) {\n                if (isset($mir[$protocol][$function])) {\n                    return $mir[$protocol][$function];\n                }\n            }\n\n            return false;\n        }\n\n        if (isset($this->_channelInfo['servers']['primary'][$protocol][$function])) {\n            return $this->_channelInfo['servers']['primary'][$protocol][$function];\n        }\n\n        return false;\n    }\n\n    /**\n     * @param string Protocol type\n     * @param string Function name (null to return the\n     *               first protocol of the type requested)\n     * @param string Mirror name, if any\n     * @return array\n     */\n     function getFunction($type, $name = null, $mirror = false)\n     {\n        $protocols = $this->getFunctions($type, $mirror);\n        if (!$protocols) {\n            return false;\n        }\n\n        foreach ($protocols as $protocol) {\n            if ($name === null) {\n                return $protocol;\n            }\n\n            if ($protocol['_content'] != $name) {\n                continue;\n            }\n\n            return $protocol;\n        }\n\n        return false;\n     }\n\n    /**\n     * @param string protocol type\n     * @param string protocol name\n     * @param string version\n     * @param string mirror name\n     * @return boolean\n     */\n    function supports($type, $name = null, $mirror = false, $version = '1.0')\n    {\n        $protocols = $this->getFunctions($type, $mirror);\n        if (!$protocols) {\n            return false;\n        }\n\n        foreach ($protocols as $protocol) {\n            if ($protocol['attribs']['version'] != $version) {\n                continue;\n            }\n\n            if ($name === null) {\n                return true;\n            }\n\n            if ($protocol['_content'] != $name) {\n                continue;\n            }\n\n            return true;\n        }\n\n        return false;\n    }\n\n    /**\n     * Determines whether a channel supports Representational State Transfer (REST) protocols\n     * for retrieving channel information\n     * @param string\n     * @return bool\n     */\n    function supportsREST($mirror = false)\n    {\n        if ($mirror == $this->_channelInfo['name']) {\n            $mirror = false;\n        }\n\n        if ($mirror) {\n            if ($mir = $this->getMirror($mirror)) {\n                return isset($mir['rest']);\n            }\n\n            return false;\n        }\n\n        return isset($this->_channelInfo['servers']['primary']['rest']);\n    }\n\n    /**\n     * Get the URL to access a base resource.\n     *\n     * Hyperlinks in the returned xml will be used to retrieve the proper information\n     * needed.  This allows extreme extensibility and flexibility in implementation\n     * @param string Resource Type to retrieve\n     */\n    function getBaseURL($resourceType, $mirror = false)\n    {\n        if ($mirror == $this->_channelInfo['name']) {\n            $mirror = false;\n        }\n\n        if ($mirror) {\n            $mir = $this->getMirror($mirror);\n            if (!$mir) {\n                return false;\n            }\n\n            $rest = $mir['rest'];\n        } else {\n            $rest = $this->_channelInfo['servers']['primary']['rest'];\n        }\n\n        if (!isset($rest['baseurl'][0])) {\n            $rest['baseurl'] = array($rest['baseurl']);\n        }\n\n        foreach ($rest['baseurl'] as $baseurl) {\n            if (strtolower($baseurl['attribs']['type']) == strtolower($resourceType)) {\n                return $baseurl['_content'];\n            }\n        }\n\n        return false;\n    }\n\n    /**\n     * Since REST does not implement RPC, provide this as a logical wrapper around\n     * resetFunctions for REST\n     * @param string|false mirror name, if any\n     */\n    function resetREST($mirror = false)\n    {\n        return $this->resetFunctions('rest', $mirror);\n    }\n\n    /**\n     * Empty all protocol definitions\n     * @param string protocol type\n     * @param string|false mirror name, if any\n     */\n    function resetFunctions($type, $mirror = false)\n    {\n        if ($mirror) {\n            if (isset($this->_channelInfo['servers']['mirror'])) {\n                $mirrors = $this->_channelInfo['servers']['mirror'];\n                if (!isset($mirrors[0])) {\n                    $mirrors = array($mirrors);\n                }\n\n                foreach ($mirrors as $i => $mir) {\n                    if ($mir['attribs']['host'] == $mirror) {\n                        if (isset($this->_channelInfo['servers']['mirror'][$i][$type])) {\n                            unset($this->_channelInfo['servers']['mirror'][$i][$type]);\n                        }\n\n                        return true;\n                    }\n                }\n\n                return false;\n            }\n\n            return false;\n        }\n\n        if (isset($this->_channelInfo['servers']['primary'][$type])) {\n            unset($this->_channelInfo['servers']['primary'][$type]);\n        }\n\n        return true;\n    }\n\n    /**\n     * Set a channel's protocols to the protocols supported by pearweb\n     */\n    function setDefaultPEARProtocols($version = '1.0', $mirror = false)\n    {\n        switch ($version) {\n            case '1.0' :\n                $this->resetREST($mirror);\n\n                if (!isset($this->_channelInfo['servers'])) {\n                    $this->_channelInfo['servers'] = array('primary' =>\n                        array('rest' => array()));\n                } elseif (!isset($this->_channelInfo['servers']['primary'])) {\n                    $this->_channelInfo['servers']['primary'] = array('rest' => array());\n                }\n\n                return true;\n            break;\n            default :\n                return false;\n            break;\n        }\n    }\n\n    /**\n     * @return array\n     */\n    function getMirrors()\n    {\n        if (isset($this->_channelInfo['servers']['mirror'])) {\n            $mirrors = $this->_channelInfo['servers']['mirror'];\n            if (!isset($mirrors[0])) {\n                $mirrors = array($mirrors);\n            }\n\n            return $mirrors;\n        }\n\n        return array();\n    }\n\n    /**\n     * Get the unserialized XML representing a mirror\n     * @return array|false\n     */\n    function getMirror($server)\n    {\n        foreach ($this->getMirrors() as $mirror) {\n            if ($mirror['attribs']['host'] == $server) {\n                return $mirror;\n            }\n        }\n\n        return false;\n    }\n\n    /**\n     * @param string\n     * @return string|false\n     * @error PEAR_CHANNELFILE_ERROR_NO_NAME\n     * @error PEAR_CHANNELFILE_ERROR_INVALID_NAME\n     */\n    function setName($name)\n    {\n        return $this->setServer($name);\n    }\n\n    /**\n     * Set the socket number (port) that is used to connect to this channel\n     * @param integer\n     * @param string|false name of the mirror server, or false for the primary\n     */\n    function setPort($port, $mirror = false)\n    {\n        if ($mirror) {\n            if (!isset($this->_channelInfo['servers']['mirror'])) {\n                $this->_validateError(PEAR_CHANNELFILE_ERROR_MIRROR_NOT_FOUND,\n                    array('mirror' => $mirror));\n                return false;\n            }\n\n            if (isset($this->_channelInfo['servers']['mirror'][0])) {\n                foreach ($this->_channelInfo['servers']['mirror'] as $i => $mir) {\n                    if ($mirror == $mir['attribs']['host']) {\n                        $this->_channelInfo['servers']['mirror'][$i]['attribs']['port'] = $port;\n                        return true;\n                    }\n                }\n\n                return false;\n            } elseif ($this->_channelInfo['servers']['mirror']['attribs']['host'] == $mirror) {\n                $this->_channelInfo['servers']['mirror']['attribs']['port'] = $port;\n                $this->_isValid = false;\n                return true;\n            }\n        }\n\n        $this->_channelInfo['servers']['primary']['attribs']['port'] = $port;\n        $this->_isValid = false;\n        return true;\n    }\n\n    /**\n     * Set the socket number (port) that is used to connect to this channel\n     * @param bool Determines whether to turn on SSL support or turn it off\n     * @param string|false name of the mirror server, or false for the primary\n     */\n    function setSSL($ssl = true, $mirror = false)\n    {\n        if ($mirror) {\n            if (!isset($this->_channelInfo['servers']['mirror'])) {\n                $this->_validateError(PEAR_CHANNELFILE_ERROR_MIRROR_NOT_FOUND,\n                    array('mirror' => $mirror));\n                return false;\n            }\n\n            if (isset($this->_channelInfo['servers']['mirror'][0])) {\n                foreach ($this->_channelInfo['servers']['mirror'] as $i => $mir) {\n                    if ($mirror == $mir['attribs']['host']) {\n                        if (!$ssl) {\n                            if (isset($this->_channelInfo['servers']['mirror'][$i]\n                                  ['attribs']['ssl'])) {\n                                unset($this->_channelInfo['servers']['mirror'][$i]['attribs']['ssl']);\n                            }\n                        } else {\n                            $this->_channelInfo['servers']['mirror'][$i]['attribs']['ssl'] = 'yes';\n                        }\n\n                        return true;\n                    }\n                }\n\n                return false;\n            } elseif ($this->_channelInfo['servers']['mirror']['attribs']['host'] == $mirror) {\n                if (!$ssl) {\n                    if (isset($this->_channelInfo['servers']['mirror']['attribs']['ssl'])) {\n                        unset($this->_channelInfo['servers']['mirror']['attribs']['ssl']);\n                    }\n                } else {\n                    $this->_channelInfo['servers']['mirror']['attribs']['ssl'] = 'yes';\n                }\n\n                $this->_isValid = false;\n                return true;\n            }\n        }\n\n        if ($ssl) {\n            $this->_channelInfo['servers']['primary']['attribs']['ssl'] = 'yes';\n        } else {\n            if (isset($this->_channelInfo['servers']['primary']['attribs']['ssl'])) {\n                unset($this->_channelInfo['servers']['primary']['attribs']['ssl']);\n            }\n        }\n\n        $this->_isValid = false;\n        return true;\n    }\n\n    /**\n     * @param string\n     * @return string|false\n     * @error PEAR_CHANNELFILE_ERROR_NO_SERVER\n     * @error PEAR_CHANNELFILE_ERROR_INVALID_SERVER\n     */\n    function setServer($server, $mirror = false)\n    {\n        if (empty($server)) {\n            $this->_validateError(PEAR_CHANNELFILE_ERROR_NO_SERVER);\n            return false;\n        } elseif (!$this->validChannelServer($server)) {\n            $this->_validateError(PEAR_CHANNELFILE_ERROR_INVALID_NAME,\n                array('tag' => 'name', 'name' => $server));\n            return false;\n        }\n\n        if ($mirror) {\n            $found = false;\n            foreach ($this->_channelInfo['servers']['mirror'] as $i => $mir) {\n                if ($mirror == $mir['attribs']['host']) {\n                    $found = true;\n                    break;\n                }\n            }\n\n            if (!$found) {\n                $this->_validateError(PEAR_CHANNELFILE_ERROR_MIRROR_NOT_FOUND,\n                    array('mirror' => $mirror));\n                return false;\n            }\n\n            $this->_channelInfo['mirror'][$i]['attribs']['host'] = $server;\n            return true;\n        }\n\n        $this->_channelInfo['name'] = $server;\n        return true;\n    }\n\n    /**\n     * @param string\n     * @return boolean success\n     * @error PEAR_CHANNELFILE_ERROR_NO_SUMMARY\n     * @warning PEAR_CHANNELFILE_ERROR_MULTILINE_SUMMARY\n     */\n    function setSummary($summary)\n    {\n        if (empty($summary)) {\n            $this->_validateError(PEAR_CHANNELFILE_ERROR_NO_SUMMARY);\n            return false;\n        } elseif (strpos(trim($summary), \"\\n\") !== false) {\n            $this->_validateWarning(PEAR_CHANNELFILE_ERROR_MULTILINE_SUMMARY,\n                array('summary' => $summary));\n        }\n\n        $this->_channelInfo['summary'] = $summary;\n        return true;\n    }\n\n    /**\n     * @param string\n     * @param boolean determines whether the alias is in channel.xml or local\n     * @return boolean success\n     */\n    function setAlias($alias, $local = false)\n    {\n        if (!$this->validChannelServer($alias)) {\n            $this->_validateError(PEAR_CHANNELFILE_ERROR_INVALID_NAME,\n                array('tag' => 'suggestedalias', 'name' => $alias));\n            return false;\n        }\n\n        if ($local) {\n            $this->_channelInfo['localalias'] = $alias;\n        } else {\n            $this->_channelInfo['suggestedalias'] = $alias;\n        }\n\n        return true;\n    }\n\n    /**\n     * @return string\n     */\n    function getAlias()\n    {\n        if (isset($this->_channelInfo['localalias'])) {\n            return $this->_channelInfo['localalias'];\n        }\n        if (isset($this->_channelInfo['suggestedalias'])) {\n            return $this->_channelInfo['suggestedalias'];\n        }\n        if (isset($this->_channelInfo['name'])) {\n            return $this->_channelInfo['name'];\n        }\n        return '';\n    }\n\n    /**\n     * Set the package validation object if it differs from PEAR's default\n     * The class must be includeable via changing _ in the classname to path separator,\n     * but no checking of this is made.\n     * @param string|false pass in false to reset to the default packagename regex\n     * @return boolean success\n     */\n    function setValidationPackage($validateclass, $version)\n    {\n        if (empty($validateclass)) {\n            unset($this->_channelInfo['validatepackage']);\n        }\n        $this->_channelInfo['validatepackage'] = array('_content' => $validateclass);\n        $this->_channelInfo['validatepackage']['attribs'] = array('version' => $version);\n    }\n\n    /**\n     * Add a protocol to the provides section\n     * @param string protocol type\n     * @param string protocol version\n     * @param string protocol name, if any\n     * @param string mirror name, if this is a mirror's protocol\n     * @return bool\n     */\n    function addFunction($type, $version, $name = '', $mirror = false)\n    {\n        if ($mirror) {\n            return $this->addMirrorFunction($mirror, $type, $version, $name);\n        }\n\n        $set = array('attribs' => array('version' => $version), '_content' => $name);\n        if (!isset($this->_channelInfo['servers']['primary'][$type]['function'])) {\n            if (!isset($this->_channelInfo['servers'])) {\n                $this->_channelInfo['servers'] = array('primary' =>\n                    array($type => array()));\n            } elseif (!isset($this->_channelInfo['servers']['primary'])) {\n                $this->_channelInfo['servers']['primary'] = array($type => array());\n            }\n\n            $this->_channelInfo['servers']['primary'][$type]['function'] = $set;\n            $this->_isValid = false;\n            return true;\n        } elseif (!isset($this->_channelInfo['servers']['primary'][$type]['function'][0])) {\n            $this->_channelInfo['servers']['primary'][$type]['function'] = array(\n                $this->_channelInfo['servers']['primary'][$type]['function']);\n        }\n\n        $this->_channelInfo['servers']['primary'][$type]['function'][] = $set;\n        return true;\n    }\n    /**\n     * Add a protocol to a mirror's provides section\n     * @param string mirror name (server)\n     * @param string protocol type\n     * @param string protocol version\n     * @param string protocol name, if any\n     */\n    function addMirrorFunction($mirror, $type, $version, $name = '')\n    {\n        if (!isset($this->_channelInfo['servers']['mirror'])) {\n            $this->_validateError(PEAR_CHANNELFILE_ERROR_MIRROR_NOT_FOUND,\n                array('mirror' => $mirror));\n            return false;\n        }\n\n        $setmirror = false;\n        if (isset($this->_channelInfo['servers']['mirror'][0])) {\n            foreach ($this->_channelInfo['servers']['mirror'] as $i => $mir) {\n                if ($mirror == $mir['attribs']['host']) {\n                    $setmirror = &$this->_channelInfo['servers']['mirror'][$i];\n                    break;\n                }\n            }\n        } else {\n            if ($this->_channelInfo['servers']['mirror']['attribs']['host'] == $mirror) {\n                $setmirror = &$this->_channelInfo['servers']['mirror'];\n            }\n        }\n\n        if (!$setmirror) {\n            $this->_validateError(PEAR_CHANNELFILE_ERROR_MIRROR_NOT_FOUND,\n                array('mirror' => $mirror));\n            return false;\n        }\n\n        $set = array('attribs' => array('version' => $version), '_content' => $name);\n        if (!isset($setmirror[$type]['function'])) {\n            $setmirror[$type]['function'] = $set;\n            $this->_isValid = false;\n            return true;\n        } elseif (!isset($setmirror[$type]['function'][0])) {\n            $setmirror[$type]['function'] = array($setmirror[$type]['function']);\n        }\n\n        $setmirror[$type]['function'][] = $set;\n        $this->_isValid = false;\n        return true;\n    }\n\n    /**\n     * @param string Resource Type this url links to\n     * @param string URL\n     * @param string|false mirror name, if this is not a primary server REST base URL\n     */\n    function setBaseURL($resourceType, $url, $mirror = false)\n    {\n        if ($mirror) {\n            if (!isset($this->_channelInfo['servers']['mirror'])) {\n                $this->_validateError(PEAR_CHANNELFILE_ERROR_MIRROR_NOT_FOUND,\n                    array('mirror' => $mirror));\n                return false;\n            }\n\n            $setmirror = false;\n            if (isset($this->_channelInfo['servers']['mirror'][0])) {\n                foreach ($this->_channelInfo['servers']['mirror'] as $i => $mir) {\n                    if ($mirror == $mir['attribs']['host']) {\n                        $setmirror = &$this->_channelInfo['servers']['mirror'][$i];\n                        break;\n                    }\n                }\n            } else {\n                if ($this->_channelInfo['servers']['mirror']['attribs']['host'] == $mirror) {\n                    $setmirror = &$this->_channelInfo['servers']['mirror'];\n                }\n            }\n        } else {\n            $setmirror = &$this->_channelInfo['servers']['primary'];\n        }\n\n        $set = array('attribs' => array('type' => $resourceType), '_content' => $url);\n        if (!isset($setmirror['rest'])) {\n            $setmirror['rest'] = array();\n        }\n\n        if (!isset($setmirror['rest']['baseurl'])) {\n            $setmirror['rest']['baseurl'] = $set;\n            $this->_isValid = false;\n            return true;\n        } elseif (!isset($setmirror['rest']['baseurl'][0])) {\n            $setmirror['rest']['baseurl'] = array($setmirror['rest']['baseurl']);\n        }\n\n        foreach ($setmirror['rest']['baseurl'] as $i => $url) {\n            if ($url['attribs']['type'] == $resourceType) {\n                $this->_isValid = false;\n                $setmirror['rest']['baseurl'][$i] = $set;\n                return true;\n            }\n        }\n\n        $setmirror['rest']['baseurl'][] = $set;\n        $this->_isValid = false;\n        return true;\n    }\n\n    /**\n     * @param string mirror server\n     * @param int mirror http port\n     * @return boolean\n     */\n    function addMirror($server, $port = null)\n    {\n        if ($this->_channelInfo['name'] == '__uri') {\n            return false; // the __uri channel cannot have mirrors by definition\n        }\n\n        $set = array('attribs' => array('host' => $server));\n        if (is_numeric($port)) {\n            $set['attribs']['port'] = $port;\n        }\n\n        if (!isset($this->_channelInfo['servers']['mirror'])) {\n            $this->_channelInfo['servers']['mirror'] = $set;\n            return true;\n        }\n\n        if (!isset($this->_channelInfo['servers']['mirror'][0])) {\n            $this->_channelInfo['servers']['mirror'] =\n                array($this->_channelInfo['servers']['mirror']);\n        }\n\n        $this->_channelInfo['servers']['mirror'][] = $set;\n        return true;\n    }\n\n    /**\n     * Retrieve the name of the validation package for this channel\n     * @return string|false\n     */\n    function getValidationPackage()\n    {\n        if (!$this->_isValid && !$this->validate()) {\n            return false;\n        }\n\n        if (!isset($this->_channelInfo['validatepackage'])) {\n            return array('attribs' => array('version' => 'default'),\n                '_content' => 'PEAR_Validate');\n        }\n\n        return $this->_channelInfo['validatepackage'];\n    }\n\n    /**\n     * Retrieve the object that can be used for custom validation\n     * @param string|false the name of the package to validate.  If the package is\n     *                     the channel validation package, PEAR_Validate is returned\n     * @return PEAR_Validate|false false is returned if the validation package\n     *         cannot be located\n     */\n    function &getValidationObject($package = false)\n    {\n        if (!class_exists('PEAR_Validate')) {\n            require_once 'PEAR/Validate.php';\n        }\n\n        if (!$this->_isValid) {\n            if (!$this->validate()) {\n                $a = false;\n                return $a;\n            }\n        }\n\n        if (isset($this->_channelInfo['validatepackage'])) {\n            if ($package == $this->_channelInfo['validatepackage']) {\n                // channel validation packages are always validated by PEAR_Validate\n                $val = &new PEAR_Validate;\n                return $val;\n            }\n\n            if (!class_exists(str_replace('.', '_',\n                  $this->_channelInfo['validatepackage']['_content']))) {\n                if ($this->isIncludeable(str_replace('_', '/',\n                      $this->_channelInfo['validatepackage']['_content']) . '.php')) {\n                    include_once str_replace('_', '/',\n                        $this->_channelInfo['validatepackage']['_content']) . '.php';\n                    $vclass = str_replace('.', '_',\n                        $this->_channelInfo['validatepackage']['_content']);\n                    $val = &new $vclass;\n                } else {\n                    $a = false;\n                    return $a;\n                }\n            } else {\n                $vclass = str_replace('.', '_',\n                    $this->_channelInfo['validatepackage']['_content']);\n                $val = &new $vclass;\n            }\n        } else {\n            $val = &new PEAR_Validate;\n        }\n\n        return $val;\n    }\n\n    function isIncludeable($path)\n    {\n        $possibilities = explode(PATH_SEPARATOR, ini_get('include_path'));\n        foreach ($possibilities as $dir) {\n            if (file_exists($dir . DIRECTORY_SEPARATOR . $path)\n                  && is_readable($dir . DIRECTORY_SEPARATOR . $path)) {\n                return true;\n            }\n        }\n\n        return false;\n    }\n\n    /**\n     * This function is used by the channel updater and retrieves a value set by\n     * the registry, or the current time if it has not been set\n     * @return string\n     */\n    function lastModified()\n    {\n        if (isset($this->_channelInfo['_lastmodified'])) {\n            return $this->_channelInfo['_lastmodified'];\n        }\n\n        return time();\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/Command/Auth.php",
    "content": "<?php\n/**\n * PEAR_Command_Auth (login, logout commands)\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Auth.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 0.1\n * @deprecated since 1.8.0alpha1\n */\n\n/**\n * base class\n */\nrequire_once 'PEAR/Command/Channels.php';\n\n/**\n * PEAR commands for login/logout\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 0.1\n * @deprecated since 1.8.0alpha1\n */\nclass PEAR_Command_Auth extends PEAR_Command_Channels\n{\n    var $commands = array(\n        'login' => array(\n            'summary' => 'Connects and authenticates to remote server [Deprecated in favor of channel-login]',\n            'shortcut' => 'li',\n            'function' => 'doLogin',\n            'options' => array(),\n            'doc' => '<channel name>\nWARNING: This function is deprecated in favor of using channel-login\n\nLog in to a remote channel server.  If <channel name> is not supplied,\nthe default channel is used. To use remote functions in the installer\nthat require any kind of privileges, you need to log in first.  The\nusername and password you enter here will be stored in your per-user\nPEAR configuration (~/.pearrc on Unix-like systems).  After logging\nin, your username and password will be sent along in subsequent\noperations on the remote server.',\n            ),\n        'logout' => array(\n            'summary' => 'Logs out from the remote server [Deprecated in favor of channel-logout]',\n            'shortcut' => 'lo',\n            'function' => 'doLogout',\n            'options' => array(),\n            'doc' => '\nWARNING: This function is deprecated in favor of using channel-logout\n\nLogs out from the remote server.  This command does not actually\nconnect to the remote server, it only deletes the stored username and\npassword from your user configuration.',\n            )\n\n        );\n\n    /**\n     * PEAR_Command_Auth constructor.\n     *\n     * @access public\n     */\n    function PEAR_Command_Auth(&$ui, &$config)\n    {\n        parent::PEAR_Command_Channels($ui, $config);\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/Command/Auth.xml",
    "content": "<commands version=\"1.0\">\n <login>\n  <summary>Connects and authenticates to remote server [Deprecated in favor of channel-login]</summary>\n  <function>doLogin</function>\n  <shortcut>li</shortcut>\n  <options />\n  <doc>&lt;channel name&gt;\nWARNING: This function is deprecated in favor of using channel-login\n\nLog in to a remote channel server.  If &lt;channel name&gt; is not supplied,\nthe default channel is used. To use remote functions in the installer\nthat require any kind of privileges, you need to log in first.  The\nusername and password you enter here will be stored in your per-user\nPEAR configuration (~/.pearrc on Unix-like systems).  After logging\nin, your username and password will be sent along in subsequent\noperations on the remote server.</doc>\n </login>\n <logout>\n  <summary>Logs out from the remote server [Deprecated in favor of channel-logout]</summary>\n  <function>doLogout</function>\n  <shortcut>lo</shortcut>\n  <options />\n  <doc>\nWARNING: This function is deprecated in favor of using channel-logout\n\nLogs out from the remote server.  This command does not actually\nconnect to the remote server, it only deletes the stored username and\npassword from your user configuration.</doc>\n </logout>\n</commands>"
  },
  {
    "path": "newscoop/include/PEAR/Command/Build.php",
    "content": "<?php\n/**\n * PEAR_Command_Auth (build command)\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Tomas V.V.Cox <cox@idecnet.com>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Build.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 0.1\n */\n\n/**\n * base class\n */\nrequire_once 'PEAR/Command/Common.php';\n\n/**\n * PEAR commands for building extensions.\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Tomas V.V.Cox <cox@idecnet.com>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 0.1\n */\nclass PEAR_Command_Build extends PEAR_Command_Common\n{\n    var $commands = array(\n        'build' => array(\n            'summary' => 'Build an Extension From C Source',\n            'function' => 'doBuild',\n            'shortcut' => 'b',\n            'options' => array(),\n            'doc' => '[package.xml]\nBuilds one or more extensions contained in a package.'\n            ),\n        );\n\n    /**\n     * PEAR_Command_Build constructor.\n     *\n     * @access public\n     */\n    function PEAR_Command_Build(&$ui, &$config)\n    {\n        parent::PEAR_Command_Common($ui, $config);\n    }\n\n    function doBuild($command, $options, $params)\n    {\n        require_once 'PEAR/Builder.php';\n        if (sizeof($params) < 1) {\n            $params[0] = 'package.xml';\n        }\n\n        $builder = &new PEAR_Builder($this->ui);\n        $this->debug = $this->config->get('verbose');\n        $err = $builder->build($params[0], array(&$this, 'buildCallback'));\n        if (PEAR::isError($err)) {\n            return $err;\n        }\n\n        return true;\n    }\n\n    function buildCallback($what, $data)\n    {\n        if (($what == 'cmdoutput' && $this->debug > 1) ||\n            ($what == 'output' && $this->debug > 0)) {\n            $this->ui->outputData(rtrim($data), 'build');\n        }\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/Command/Build.xml",
    "content": "<commands version=\"1.0\">\n <build>\n  <summary>Build an Extension From C Source</summary>\n  <function>doBuild</function>\n  <shortcut>b</shortcut>\n  <options />\n  <doc>[package.xml]\nBuilds one or more extensions contained in a package.</doc>\n </build>\n</commands>"
  },
  {
    "path": "newscoop/include/PEAR/Command/Channels.php",
    "content": "<?php\n// /* vim: set expandtab tabstop=4 shiftwidth=4: */\n/**\n * PEAR_Command_Channels (list-channels, update-channels, channel-delete, channel-add,\n * channel-update, channel-info, channel-alias, channel-discover commands)\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Channels.php 287561 2009-08-21 22:42:58Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n\n/**\n * base class\n */\nrequire_once 'PEAR/Command/Common.php';\n\ndefine('PEAR_COMMAND_CHANNELS_CHANNEL_EXISTS', -500);\n\n/**\n * PEAR commands for managing channels.\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_Command_Channels extends PEAR_Command_Common\n{\n    var $commands = array(\n        'list-channels' => array(\n            'summary' => 'List Available Channels',\n            'function' => 'doList',\n            'shortcut' => 'lc',\n            'options' => array(),\n            'doc' => '\nList all available channels for installation.\n',\n            ),\n        'update-channels' => array(\n            'summary' => 'Update the Channel List',\n            'function' => 'doUpdateAll',\n            'shortcut' => 'uc',\n            'options' => array(),\n            'doc' => '\nList all installed packages in all channels.\n'\n            ),\n        'channel-delete' => array(\n            'summary' => 'Remove a Channel From the List',\n            'function' => 'doDelete',\n            'shortcut' => 'cde',\n            'options' => array(),\n            'doc' => '<channel name>\nDelete a channel from the registry.  You may not\nremove any channel that has installed packages.\n'\n            ),\n        'channel-add' => array(\n            'summary' => 'Add a Channel',\n            'function' => 'doAdd',\n            'shortcut' => 'ca',\n            'options' => array(),\n            'doc' => '<channel.xml>\nAdd a private channel to the channel list.  Note that all\npublic channels should be synced using \"update-channels\".\nParameter may be either a local file or remote URL to a\nchannel.xml.\n'\n            ),\n        'channel-update' => array(\n            'summary' => 'Update an Existing Channel',\n            'function' => 'doUpdate',\n            'shortcut' => 'cu',\n            'options' => array(\n                'force' => array(\n                    'shortopt' => 'f',\n                    'doc' => 'will force download of new channel.xml if an existing channel name is used',\n                    ),\n                'channel' => array(\n                    'shortopt' => 'c',\n                    'arg' => 'CHANNEL',\n                    'doc' => 'will force download of new channel.xml if an existing channel name is used',\n                    ),\n),\n            'doc' => '[<channel.xml>|<channel name>]\nUpdate a channel in the channel list directly.  Note that all\npublic channels can be synced using \"update-channels\".\nParameter may be a local or remote channel.xml, or the name of\nan existing channel.\n'\n            ),\n        'channel-info' => array(\n            'summary' => 'Retrieve Information on a Channel',\n            'function' => 'doInfo',\n            'shortcut' => 'ci',\n            'options' => array(),\n            'doc' => '<package>\nList the files in an installed package.\n'\n            ),\n        'channel-alias' => array(\n            'summary' => 'Specify an alias to a channel name',\n            'function' => 'doAlias',\n            'shortcut' => 'cha',\n            'options' => array(),\n            'doc' => '<channel> <alias>\nSpecify a specific alias to use for a channel name.\nThe alias may not be an existing channel name or\nalias.\n'\n            ),\n        'channel-discover' => array(\n            'summary' => 'Initialize a Channel from its server',\n            'function' => 'doDiscover',\n            'shortcut' => 'di',\n            'options' => array(),\n            'doc' => '[<channel.xml>|<channel name>]\nInitialize a channel from its server and create a local channel.xml.\nIf <channel name> is in the format \"<username>:<password>@<channel>\" then\n<username> and <password> will be set as the login username/password for\n<channel>. Use caution when passing the username/password in this way, as\nit may allow other users on your computer to briefly view your username/\npassword via the system\\'s process list.\n'\n            ),\n        'channel-login' => array(\n            'summary' => 'Connects and authenticates to remote channel server',\n            'shortcut' => 'cli',\n            'function' => 'doLogin',\n            'options' => array(),\n            'doc' => '<channel name>\nLog in to a remote channel server.  If <channel name> is not supplied,\nthe default channel is used. To use remote functions in the installer\nthat require any kind of privileges, you need to log in first.  The\nusername and password you enter here will be stored in your per-user\nPEAR configuration (~/.pearrc on Unix-like systems).  After logging\nin, your username and password will be sent along in subsequent\noperations on the remote server.',\n            ),\n        'channel-logout' => array(\n            'summary' => 'Logs out from the remote channel server',\n            'shortcut' => 'clo',\n            'function' => 'doLogout',\n            'options' => array(),\n            'doc' => '<channel name>\nLogs out from a remote channel server.  If <channel name> is not supplied,\nthe default channel is used. This command does not actually connect to the\nremote server, it only deletes the stored username and password from your user\nconfiguration.',\n            ),\n        );\n\n    /**\n     * PEAR_Command_Registry constructor.\n     *\n     * @access public\n     */\n    function PEAR_Command_Channels(&$ui, &$config)\n    {\n        parent::PEAR_Command_Common($ui, $config);\n    }\n\n    function _sortChannels($a, $b)\n    {\n        return strnatcasecmp($a->getName(), $b->getName());\n    }\n\n    function doList($command, $options, $params)\n    {\n        $reg = &$this->config->getRegistry();\n        $registered = $reg->getChannels();\n        usort($registered, array(&$this, '_sortchannels'));\n        $i = $j = 0;\n        $data = array(\n            'caption' => 'Registered Channels:',\n            'border' => true,\n            'headline' => array('Channel', 'Alias', 'Summary')\n            );\n        foreach ($registered as $channel) {\n            $data['data'][] = array($channel->getName(),\n                                    $channel->getAlias(),\n                                    $channel->getSummary());\n        }\n\n        if (count($registered) === 0) {\n            $data = '(no registered channels)';\n        }\n        $this->ui->outputData($data, $command);\n        return true;\n    }\n\n    function doUpdateAll($command, $options, $params)\n    {\n        $reg = &$this->config->getRegistry();\n        $channels = $reg->getChannels();\n\n        $success = true;\n        foreach ($channels as $channel) {\n            if ($channel->getName() != '__uri') {\n                PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n                $err = $this->doUpdate('channel-update',\n                                          $options,\n                                          array($channel->getName()));\n                if (PEAR::isError($err)) {\n                    $this->ui->outputData($err->getMessage(), $command);\n                    $success = false;\n                } else {\n                    $success &= $err;\n                }\n            }\n        }\n        return $success;\n    }\n\n    function doInfo($command, $options, $params)\n    {\n        if (count($params) !== 1) {\n            return $this->raiseError(\"No channel specified\");\n        }\n\n        $reg     = &$this->config->getRegistry();\n        $channel = strtolower($params[0]);\n        if ($reg->channelExists($channel)) {\n            $chan = $reg->getChannel($channel);\n            if (PEAR::isError($chan)) {\n                return $this->raiseError($chan);\n            }\n        } else {\n            if (strpos($channel, '://')) {\n                $downloader = &$this->getDownloader();\n                $tmpdir = $this->config->get('temp_dir');\n                PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n                $loc = $downloader->downloadHttp($channel, $this->ui, $tmpdir);\n                PEAR::staticPopErrorHandling();\n                if (PEAR::isError($loc)) {\n                    return $this->raiseError('Cannot open \"' . $channel .\n                        '\" (' . $loc->getMessage() . ')');\n                } else {\n                    $contents = implode('', file($loc));\n                }\n            } else {\n                if (!file_exists($params[0])) {\n                    return $this->raiseError('Unknown channel \"' . $channel . '\"');\n                }\n\n                $fp = fopen($params[0], 'r');\n                if (!$fp) {\n                    return $this->raiseError('Cannot open \"' . $params[0] . '\"');\n                }\n\n                $contents = '';\n                while (!feof($fp)) {\n                    $contents .= fread($fp, 1024);\n                }\n                fclose($fp);\n            }\n\n            if (!class_exists('PEAR_ChannelFile')) {\n                require_once 'PEAR/ChannelFile.php';\n            }\n\n            $chan = new PEAR_ChannelFile;\n            $chan->fromXmlString($contents);\n            $chan->validate();\n            if ($errs = $chan->getErrors(true)) {\n                foreach ($errs as $err) {\n                    $this->ui->outputData($err['level'] . ': ' . $err['message']);\n                }\n                return $this->raiseError('Channel file \"' . $params[0] . '\" is not valid');\n            }\n        }\n\n        if (!$chan) {\n            return $this->raiseError('Serious error: Channel \"' . $params[0] .\n                '\" has a corrupted registry entry');\n        }\n\n        $channel = $chan->getName();\n        $caption = 'Channel ' . $channel . ' Information:';\n        $data1 = array(\n            'caption' => $caption,\n            'border' => true);\n        $data1['data']['server'] = array('Name and Server', $chan->getName());\n        if ($chan->getAlias() != $chan->getName()) {\n            $data1['data']['alias'] = array('Alias', $chan->getAlias());\n        }\n\n        $data1['data']['summary'] = array('Summary', $chan->getSummary());\n        $validate = $chan->getValidationPackage();\n        $data1['data']['vpackage'] = array('Validation Package Name', $validate['_content']);\n        $data1['data']['vpackageversion'] =\n            array('Validation Package Version', $validate['attribs']['version']);\n        $d = array();\n        $d['main'] = $data1;\n\n        $data['data'] = array();\n        $data['caption'] = 'Server Capabilities';\n        $data['headline'] = array('Type', 'Version/REST type', 'Function Name/REST base');\n        if ($chan->supportsREST()) {\n            if ($chan->supportsREST()) {\n                $funcs = $chan->getFunctions('rest');\n                if (!isset($funcs[0])) {\n                    $funcs = array($funcs);\n                }\n                foreach ($funcs as $protocol) {\n                    $data['data'][] = array('rest', $protocol['attribs']['type'],\n                        $protocol['_content']);\n                }\n            }\n        } else {\n            $data['data'][] = array('No supported protocols');\n        }\n\n        $d['protocols'] = $data;\n        $data['data'] = array();\n        $mirrors = $chan->getMirrors();\n        if ($mirrors) {\n            $data['caption'] = 'Channel ' . $channel . ' Mirrors:';\n            unset($data['headline']);\n            foreach ($mirrors as $mirror) {\n                $data['data'][] = array($mirror['attribs']['host']);\n                $d['mirrors'] = $data;\n            }\n\n            foreach ($mirrors as $i => $mirror) {\n                $data['data'] = array();\n                $data['caption'] = 'Mirror ' . $mirror['attribs']['host'] . ' Capabilities';\n                $data['headline'] = array('Type', 'Version/REST type', 'Function Name/REST base');\n                if ($chan->supportsREST($mirror['attribs']['host'])) {\n                    if ($chan->supportsREST($mirror['attribs']['host'])) {\n                        $funcs = $chan->getFunctions('rest', $mirror['attribs']['host']);\n                        if (!isset($funcs[0])) {\n                            $funcs = array($funcs);\n                        }\n\n                        foreach ($funcs as $protocol) {\n                            $data['data'][] = array('rest', $protocol['attribs']['type'],\n                                $protocol['_content']);\n                        }\n                    }\n                } else {\n                    $data['data'][] = array('No supported protocols');\n                }\n                $d['mirrorprotocols' . $i] = $data;\n            }\n        }\n        $this->ui->outputData($d, 'channel-info');\n    }\n\n    // }}}\n\n    function doDelete($command, $options, $params)\n    {\n        if (count($params) !== 1) {\n            return $this->raiseError('channel-delete: no channel specified');\n        }\n\n        $reg = &$this->config->getRegistry();\n        if (!$reg->channelExists($params[0])) {\n            return $this->raiseError('channel-delete: channel \"' . $params[0] . '\" does not exist');\n        }\n\n        $channel = $reg->channelName($params[0]);\n        if ($channel == 'pear.php.net') {\n            return $this->raiseError('Cannot delete the pear.php.net channel');\n        }\n\n        if ($channel == 'pecl.php.net') {\n            return $this->raiseError('Cannot delete the pecl.php.net channel');\n        }\n\n        if ($channel == 'doc.php.net') {\n            return $this->raiseError('Cannot delete the doc.php.net channel');\n        }\n\n        if ($channel == '__uri') {\n            return $this->raiseError('Cannot delete the __uri pseudo-channel');\n        }\n\n        if (PEAR::isError($err = $reg->listPackages($channel))) {\n            return $err;\n        }\n\n        if (count($err)) {\n            return $this->raiseError('Channel \"' . $channel .\n                '\" has installed packages, cannot delete');\n        }\n\n        if (!$reg->deleteChannel($channel)) {\n            return $this->raiseError('Channel \"' . $channel . '\" deletion failed');\n        } else {\n            $this->config->deleteChannel($channel);\n            $this->ui->outputData('Channel \"' . $channel . '\" deleted', $command);\n        }\n    }\n\n    function doAdd($command, $options, $params)\n    {\n        if (count($params) !== 1) {\n            return $this->raiseError('channel-add: no channel file specified');\n        }\n\n        if (strpos($params[0], '://')) {\n            $downloader = &$this->getDownloader();\n            $tmpdir = $this->config->get('temp_dir');\n            if (!file_exists($tmpdir)) {\n                require_once 'System.php';\n                PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n                $err = System::mkdir(array('-p', $tmpdir));\n                PEAR::staticPopErrorHandling();\n                if (PEAR::isError($err)) {\n                    return $this->raiseError('channel-add: temp_dir does not exist: \"' .\n                        $tmpdir .\n                        '\" - You can change this location with \"pear config-set temp_dir\"');\n                }\n            }\n\n            if (!is_writable($tmpdir)) {\n                return $this->raiseError('channel-add: temp_dir is not writable: \"' .\n                    $tmpdir .\n                    '\" - You can change this location with \"pear config-set temp_dir\"');\n            }\n\n            PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n            $loc = $downloader->downloadHttp($params[0], $this->ui, $tmpdir, null, false);\n            PEAR::staticPopErrorHandling();\n            if (PEAR::isError($loc)) {\n                return $this->raiseError('channel-add: Cannot open \"' . $params[0] .\n                    '\" (' . $loc->getMessage() . ')');\n            }\n\n            list($loc, $lastmodified) = $loc;\n            $contents = implode('', file($loc));\n        } else {\n            $lastmodified = $fp = false;\n            if (file_exists($params[0])) {\n                $fp = fopen($params[0], 'r');\n            }\n\n            if (!$fp) {\n                return $this->raiseError('channel-add: cannot open \"' . $params[0] . '\"');\n            }\n\n            $contents = '';\n            while (!feof($fp)) {\n                $contents .= fread($fp, 1024);\n            }\n            fclose($fp);\n        }\n\n        if (!class_exists('PEAR_ChannelFile')) {\n            require_once 'PEAR/ChannelFile.php';\n        }\n\n        $channel = new PEAR_ChannelFile;\n        PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n        $result = $channel->fromXmlString($contents);\n        PEAR::staticPopErrorHandling();\n        if (!$result) {\n            $exit = false;\n            if (count($errors = $channel->getErrors(true))) {\n                foreach ($errors as $error) {\n                    $this->ui->outputData(ucfirst($error['level'] . ': ' . $error['message']));\n                    if (!$exit) {\n                        $exit = $error['level'] == 'error' ? true : false;\n                    }\n                }\n                if ($exit) {\n                    return $this->raiseError('channel-add: invalid channel.xml file');\n                }\n            }\n        }\n\n        $reg = &$this->config->getRegistry();\n        if ($reg->channelExists($channel->getName())) {\n            return $this->raiseError('channel-add: Channel \"' . $channel->getName() .\n                '\" exists, use channel-update to update entry', PEAR_COMMAND_CHANNELS_CHANNEL_EXISTS);\n        }\n\n        $ret = $reg->addChannel($channel, $lastmodified);\n        if (PEAR::isError($ret)) {\n            return $ret;\n        }\n\n        if (!$ret) {\n            return $this->raiseError('channel-add: adding Channel \"' . $channel->getName() .\n                '\" to registry failed');\n        }\n\n        $this->config->setChannels($reg->listChannels());\n        $this->config->writeConfigFile();\n        $this->ui->outputData('Adding Channel \"' . $channel->getName() . '\" succeeded', $command);\n    }\n\n    function doUpdate($command, $options, $params)\n    {\n        if (count($params) !== 1) {\n            return $this->raiseError(\"No channel file specified\");\n        }\n\n        $tmpdir = $this->config->get('temp_dir');\n        if (!file_exists($tmpdir)) {\n            require_once 'System.php';\n            PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n            $err = System::mkdir(array('-p', $tmpdir));\n            PEAR::staticPopErrorHandling();\n            if (PEAR::isError($err)) {\n                return $this->raiseError('channel-add: temp_dir does not exist: \"' .\n                    $tmpdir .\n                    '\" - You can change this location with \"pear config-set temp_dir\"');\n            }\n        }\n\n        if (!is_writable($tmpdir)) {\n            return $this->raiseError('channel-add: temp_dir is not writable: \"' .\n                $tmpdir .\n                '\" - You can change this location with \"pear config-set temp_dir\"');\n        }\n\n        $reg = &$this->config->getRegistry();\n        $lastmodified = false;\n        if ((!file_exists($params[0]) || is_dir($params[0]))\n              && $reg->channelExists(strtolower($params[0]))) {\n            $c = $reg->getChannel(strtolower($params[0]));\n            if (PEAR::isError($c)) {\n                return $this->raiseError($c);\n            }\n\n            $this->ui->outputData(\"Updating channel \\\"$params[0]\\\"\", $command);\n            $dl = &$this->getDownloader(array());\n            // if force is specified, use a timestamp of \"1\" to force retrieval\n            $lastmodified = isset($options['force']) ? false : $c->lastModified();\n            PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n            $contents = $dl->downloadHttp('http://' . $c->getName() . '/channel.xml',\n                $this->ui, $tmpdir, null, $lastmodified);\n            PEAR::staticPopErrorHandling();\n            if (PEAR::isError($contents)) {\n                // Attempt to fall back to https\n                $this->ui->outputData(\"Channel \\\"$params[0]\\\" is not responding over http://, failed with message: \" . $contents->getMessage());\n                $this->ui->outputData(\"Trying channel \\\"$params[0]\\\" over https:// instead\");\n                PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n                $contents = $dl->downloadHttp('https://' . $c->getName() . '/channel.xml',\n                    $this->ui, $tmpdir, null, $lastmodified);\n                PEAR::staticPopErrorHandling();\n                if (PEAR::isError($contents)) {\n                    return $this->raiseError('Cannot retrieve channel.xml for channel \"' .\n                        $c->getName() . '\" (' . $contents->getMessage() . ')');\n                }\n            }\n\n            list($contents, $lastmodified) = $contents;\n            if (!$contents) {\n                $this->ui->outputData(\"Channel \\\"$params[0]\\\" is up to date\");\n                return;\n            }\n\n            $contents = implode('', file($contents));\n            if (!class_exists('PEAR_ChannelFile')) {\n                require_once 'PEAR/ChannelFile.php';\n            }\n\n            $channel = new PEAR_ChannelFile;\n            $channel->fromXmlString($contents);\n            if (!$channel->getErrors()) {\n                // security check: is the downloaded file for the channel we got it from?\n                if (strtolower($channel->getName()) != strtolower($c->getName())) {\n                    if (!isset($options['force'])) {\n                        return $this->raiseError('ERROR: downloaded channel definition file' .\n                            ' for channel \"' . $channel->getName() . '\" from channel \"' .\n                            strtolower($c->getName()) . '\"');\n                    }\n\n                    $this->ui->log(0, 'WARNING: downloaded channel definition file' .\n                        ' for channel \"' . $channel->getName() . '\" from channel \"' .\n                        strtolower($c->getName()) . '\"');\n                }\n            }\n        } else {\n            if (strpos($params[0], '://')) {\n                $dl = &$this->getDownloader();\n                PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n                $loc = $dl->downloadHttp($params[0],\n                    $this->ui, $tmpdir, null, $lastmodified);\n                PEAR::staticPopErrorHandling();\n                if (PEAR::isError($loc)) {\n                    return $this->raiseError(\"Cannot open \" . $params[0] .\n                         ' (' . $loc->getMessage() . ')');\n                }\n\n                list($loc, $lastmodified) = $loc;\n                $contents = implode('', file($loc));\n            } else {\n                $fp = false;\n                if (file_exists($params[0])) {\n                    $fp = fopen($params[0], 'r');\n                }\n\n                if (!$fp) {\n                    return $this->raiseError(\"Cannot open \" . $params[0]);\n                }\n\n                $contents = '';\n                while (!feof($fp)) {\n                    $contents .= fread($fp, 1024);\n                }\n                fclose($fp);\n            }\n\n            if (!class_exists('PEAR_ChannelFile')) {\n                require_once 'PEAR/ChannelFile.php';\n            }\n\n            $channel = new PEAR_ChannelFile;\n            $channel->fromXmlString($contents);\n        }\n\n        $exit = false;\n        if (count($errors = $channel->getErrors(true))) {\n            foreach ($errors as $error) {\n                $this->ui->outputData(ucfirst($error['level'] . ': ' . $error['message']));\n                if (!$exit) {\n                    $exit = $error['level'] == 'error' ? true : false;\n                }\n            }\n            if ($exit) {\n                return $this->raiseError('Invalid channel.xml file');\n            }\n        }\n\n        if (!$reg->channelExists($channel->getName())) {\n            return $this->raiseError('Error: Channel \"' . $channel->getName() .\n                '\" does not exist, use channel-add to add an entry');\n        }\n\n        $ret = $reg->updateChannel($channel, $lastmodified);\n        if (PEAR::isError($ret)) {\n            return $ret;\n        }\n\n        if (!$ret) {\n            return $this->raiseError('Updating Channel \"' . $channel->getName() .\n                '\" in registry failed');\n        }\n\n        $this->config->setChannels($reg->listChannels());\n        $this->config->writeConfigFile();\n        $this->ui->outputData('Update of Channel \"' . $channel->getName() . '\" succeeded');\n    }\n\n    function &getDownloader()\n    {\n        if (!class_exists('PEAR_Downloader')) {\n            require_once 'PEAR/Downloader.php';\n        }\n        $a = new PEAR_Downloader($this->ui, array(), $this->config);\n        return $a;\n    }\n\n    function doAlias($command, $options, $params)\n    {\n        if (count($params) === 1) {\n            return $this->raiseError('No channel alias specified');\n        }\n\n        if (count($params) !== 2 || (!empty($params[1]) && $params[1]{0} == '-')) {\n            return $this->raiseError(\n                'Invalid format, correct is: channel-alias channel alias');\n        }\n\n        $reg = &$this->config->getRegistry();\n        if (!$reg->channelExists($params[0], true)) {\n            $extra = '';\n            if ($reg->isAlias($params[0])) {\n                $extra = ' (use \"channel-alias ' . $reg->channelName($params[0]) . ' ' .\n                    strtolower($params[1]) . '\")';\n            }\n\n            return $this->raiseError('\"' . $params[0] . '\" is not a valid channel' . $extra);\n        }\n\n        if ($reg->isAlias($params[1])) {\n            return $this->raiseError('Channel \"' . $reg->channelName($params[1]) . '\" is ' .\n                'already aliased to \"' . strtolower($params[1]) . '\", cannot re-alias');\n        }\n\n        $chan = &$reg->getChannel($params[0]);\n        if (PEAR::isError($chan)) {\n            return $this->raiseError('Corrupt registry?  Error retrieving channel \"' . $params[0] .\n                '\" information (' . $chan->getMessage() . ')');\n        }\n\n        // make it a local alias\n        if (!$chan->setAlias(strtolower($params[1]), true)) {\n            return $this->raiseError('Alias \"' . strtolower($params[1]) .\n                '\" is not a valid channel alias');\n        }\n\n        $reg->updateChannel($chan);\n        $this->ui->outputData('Channel \"' . $chan->getName() . '\" aliased successfully to \"' .\n            strtolower($params[1]) . '\"');\n    }\n\n    /**\n     * The channel-discover command\n     *\n     * @param string $command command name\n     * @param array  $options option_name => value\n     * @param array  $params  list of additional parameters.\n     *               $params[0] should contain a string with either:\n     *               - <channel name> or\n     *               - <username>:<password>@<channel name>\n     * @return null|PEAR_Error\n     */\n    function doDiscover($command, $options, $params)\n    {\n        if (count($params) !== 1) {\n            return $this->raiseError(\"No channel server specified\");\n        }\n\n        // Look for the possible input format \"<username>:<password>@<channel>\"\n        if (preg_match('/^(.+):(.+)@(.+)\\\\z/', $params[0], $matches)) {\n            $username = $matches[1];\n            $password = $matches[2];\n            $channel  = $matches[3];\n        } else {\n            $channel = $params[0];\n        }\n\n        $reg = &$this->config->getRegistry();\n        if ($reg->channelExists($channel)) {\n            if (!$reg->isAlias($channel)) {\n                return $this->raiseError(\"Channel \\\"$channel\\\" is already initialized\", PEAR_COMMAND_CHANNELS_CHANNEL_EXISTS);\n            }\n\n            return $this->raiseError(\"A channel alias named \\\"$channel\\\" \" .\n                'already exists, aliasing channel \"' . $reg->channelName($channel)\n                . '\"');\n        }\n\n        $this->pushErrorHandling(PEAR_ERROR_RETURN);\n        $err = $this->doAdd($command, $options, array('http://' . $channel . '/channel.xml'));\n        $this->popErrorHandling();\n        if (PEAR::isError($err)) {\n            if ($err->getCode() === PEAR_COMMAND_CHANNELS_CHANNEL_EXISTS) {\n                return $this->raiseError(\"Discovery of channel \\\"$channel\\\" failed (\" .\n                    $err->getMessage() . ')');\n            }\n            // Attempt fetch via https\n            $this->ui->outputData(\"Discovering channel $channel over http:// failed with message: \" . $err->getMessage());\n            $this->ui->outputData(\"Trying to discover channel $channel over https:// instead\");\n            $this->pushErrorHandling(PEAR_ERROR_RETURN);\n            $err = $this->doAdd($command, $options, array('https://' . $channel . '/channel.xml'));\n            $this->popErrorHandling();\n            if (PEAR::isError($err)) {\n                return $this->raiseError(\"Discovery of channel \\\"$channel\\\" failed (\" .\n                    $err->getMessage() . ')');\n            }\n        }\n\n        // Store username/password if they were given\n        // Arguably we should do a logintest on the channel here, but since\n        // that's awkward on a REST-based channel (even \"pear login\" doesn't\n        // do it for those), and XML-RPC is deprecated, it's fairly pointless.\n        if (isset($username)) {\n            $this->config->set('username', $username, 'user', $channel);\n            $this->config->set('password', $password, 'user', $channel);\n            $this->config->store();\n            $this->ui->outputData(\"Stored login for channel \\\"$channel\\\" using username \\\"$username\\\"\", $command);\n        }\n\n        $this->ui->outputData(\"Discovery of channel \\\"$channel\\\" succeeded\", $command);\n    }\n\n    /**\n     * Execute the 'login' command.\n     *\n     * @param string $command command name\n     * @param array $options option_name => value\n     * @param array $params list of additional parameters\n     *\n     * @return bool TRUE on success or\n     * a PEAR error on failure\n     *\n     * @access public\n     */\n    function doLogin($command, $options, $params)\n    {\n        $reg = &$this->config->getRegistry();\n\n        // If a parameter is supplied, use that as the channel to log in to\n        $channel = isset($params[0]) ? $params[0] : $this->config->get('default_channel');\n\n        $chan = $reg->getChannel($channel);\n        if (PEAR::isError($chan)) {\n            return $this->raiseError($chan);\n        }\n\n        $server   = $this->config->get('preferred_mirror', null, $channel);\n        $username = $this->config->get('username',         null, $channel);\n        if (empty($username)) {\n            $username = isset($_ENV['USER']) ? $_ENV['USER'] : null;\n        }\n        $this->ui->outputData(\"Logging in to $server.\", $command);\n\n        list($username, $password) = $this->ui->userDialog(\n            $command,\n            array('Username', 'Password'),\n            array('text',     'password'),\n            array($username,  '')\n            );\n        $username = trim($username);\n        $password = trim($password);\n\n        $ourfile = $this->config->getConfFile('user');\n        if (!$ourfile) {\n            $ourfile = $this->config->getConfFile('system');\n        }\n\n        $this->config->set('username', $username, 'user', $channel);\n        $this->config->set('password', $password, 'user', $channel);\n\n        if ($chan->supportsREST()) {\n            $ok = true;\n        }\n\n        if ($ok !== true) {\n            return $this->raiseError('Login failed!');\n        }\n\n        $this->ui->outputData(\"Logged in.\", $command);\n        // avoid changing any temporary settings changed with -d\n        $ourconfig = new PEAR_Config($ourfile, $ourfile);\n        $ourconfig->set('username', $username, 'user', $channel);\n        $ourconfig->set('password', $password, 'user', $channel);\n        $ourconfig->store();\n\n        return true;\n    }\n\n    /**\n     * Execute the 'logout' command.\n     *\n     * @param string $command command name\n     * @param array $options option_name => value\n     * @param array $params list of additional parameters\n     *\n     * @return bool TRUE on success or\n     * a PEAR error on failure\n     *\n     * @access public\n     */\n    function doLogout($command, $options, $params)\n    {\n        $reg     = &$this->config->getRegistry();\n\n        // If a parameter is supplied, use that as the channel to log in to\n        $channel = isset($params[0]) ? $params[0] : $this->config->get('default_channel');\n\n        $chan    = $reg->getChannel($channel);\n        if (PEAR::isError($chan)) {\n            return $this->raiseError($chan);\n        }\n\n        $server = $this->config->get('preferred_mirror', null, $channel);\n        $this->ui->outputData(\"Logging out from $server.\", $command);\n        $this->config->remove('username', 'user', $channel);\n        $this->config->remove('password', 'user', $channel);\n        $this->config->store();\n        return true;\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/Command/Channels.xml",
    "content": "<commands version=\"1.0\">\n <list-channels>\n  <summary>List Available Channels</summary>\n  <function>doList</function>\n  <shortcut>lc</shortcut>\n  <options />\n  <doc>\nList all available channels for installation.\n</doc>\n </list-channels>\n <update-channels>\n  <summary>Update the Channel List</summary>\n  <function>doUpdateAll</function>\n  <shortcut>uc</shortcut>\n  <options />\n  <doc>\nList all installed packages in all channels.\n</doc>\n </update-channels>\n <channel-delete>\n  <summary>Remove a Channel From the List</summary>\n  <function>doDelete</function>\n  <shortcut>cde</shortcut>\n  <options />\n  <doc>&lt;channel name&gt;\nDelete a channel from the registry.  You may not\nremove any channel that has installed packages.\n</doc>\n </channel-delete>\n <channel-add>\n  <summary>Add a Channel</summary>\n  <function>doAdd</function>\n  <shortcut>ca</shortcut>\n  <options />\n  <doc>&lt;channel.xml&gt;\nAdd a private channel to the channel list.  Note that all\npublic channels should be synced using &quot;update-channels&quot;.\nParameter may be either a local file or remote URL to a\nchannel.xml.\n</doc>\n </channel-add>\n <channel-update>\n  <summary>Update an Existing Channel</summary>\n  <function>doUpdate</function>\n  <shortcut>cu</shortcut>\n  <options>\n   <force>\n    <shortopt>f</shortopt>\n    <doc>will force download of new channel.xml if an existing channel name is used</doc>\n   </force>\n   <channel>\n    <shortopt>c</shortopt>\n    <doc>will force download of new channel.xml if an existing channel name is used</doc>\n    <arg>CHANNEL</arg>\n   </channel>\n  </options>\n  <doc>[&lt;channel.xml&gt;|&lt;channel name&gt;]\nUpdate a channel in the channel list directly.  Note that all\npublic channels can be synced using &quot;update-channels&quot;.\nParameter may be a local or remote channel.xml, or the name of\nan existing channel.\n</doc>\n </channel-update>\n <channel-info>\n  <summary>Retrieve Information on a Channel</summary>\n  <function>doInfo</function>\n  <shortcut>ci</shortcut>\n  <options />\n  <doc>&lt;package&gt;\nList the files in an installed package.\n</doc>\n </channel-info>\n <channel-alias>\n  <summary>Specify an alias to a channel name</summary>\n  <function>doAlias</function>\n  <shortcut>cha</shortcut>\n  <options />\n  <doc>&lt;channel&gt; &lt;alias&gt;\nSpecify a specific alias to use for a channel name.\nThe alias may not be an existing channel name or\nalias.\n</doc>\n </channel-alias>\n <channel-discover>\n  <summary>Initialize a Channel from its server</summary>\n  <function>doDiscover</function>\n  <shortcut>di</shortcut>\n  <options />\n  <doc>[&lt;channel.xml&gt;|&lt;channel name&gt;]\nInitialize a channel from its server and create a local channel.xml.\nIf &lt;channel name&gt; is in the format &quot;&lt;username&gt;:&lt;password&gt;@&lt;channel&gt;&quot; then\n&lt;username&gt; and &lt;password&gt; will be set as the login username/password for\n&lt;channel&gt;. Use caution when passing the username/password in this way, as\nit may allow other users on your computer to briefly view your username/\npassword via the system&#039;s process list.\n</doc>\n </channel-discover>\n <channel-login>\n  <summary>Connects and authenticates to remote channel server</summary>\n  <function>doLogin</function>\n  <shortcut>cli</shortcut>\n  <options />\n  <doc>&lt;channel name&gt;\nLog in to a remote channel server.  If &lt;channel name&gt; is not supplied,\nthe default channel is used. To use remote functions in the installer\nthat require any kind of privileges, you need to log in first.  The\nusername and password you enter here will be stored in your per-user\nPEAR configuration (~/.pearrc on Unix-like systems).  After logging\nin, your username and password will be sent along in subsequent\noperations on the remote server.</doc>\n </channel-login>\n <channel-logout>\n  <summary>Logs out from the remote channel server</summary>\n  <function>doLogout</function>\n  <shortcut>clo</shortcut>\n  <options />\n  <doc>&lt;channel name&gt;\nLogs out from a remote channel server.  If &lt;channel name&gt; is not supplied,\nthe default channel is used. This command does not actually connect to the\nremote server, it only deletes the stored username and password from your user\nconfiguration.</doc>\n </channel-logout>\n</commands>"
  },
  {
    "path": "newscoop/include/PEAR/Command/Common.php",
    "content": "<?php\n/**\n * PEAR_Command_Common base class\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Common.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 0.1\n */\n\n/**\n * base class\n */\nrequire_once 'PEAR.php';\n\n/**\n * PEAR commands base class\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 0.1\n */\nclass PEAR_Command_Common extends PEAR\n{\n    /**\n     * PEAR_Config object used to pass user system and configuration\n     * on when executing commands\n     *\n     * @var PEAR_Config\n     */\n    var $config;\n    /**\n     * @var PEAR_Registry\n     * @access protected\n     */\n    var $_registry;\n\n    /**\n     * User Interface object, for all interaction with the user.\n     * @var object\n     */\n    var $ui;\n\n    var $_deps_rel_trans = array(\n                                 'lt' => '<',\n                                 'le' => '<=',\n                                 'eq' => '=',\n                                 'ne' => '!=',\n                                 'gt' => '>',\n                                 'ge' => '>=',\n                                 'has' => '=='\n                                 );\n\n    var $_deps_type_trans = array(\n                                  'pkg' => 'package',\n                                  'ext' => 'extension',\n                                  'php' => 'PHP',\n                                  'prog' => 'external program',\n                                  'ldlib' => 'external library for linking',\n                                  'rtlib' => 'external runtime library',\n                                  'os' => 'operating system',\n                                  'websrv' => 'web server',\n                                  'sapi' => 'SAPI backend'\n                                  );\n\n    /**\n     * PEAR_Command_Common constructor.\n     *\n     * @access public\n     */\n    function PEAR_Command_Common(&$ui, &$config)\n    {\n        parent::PEAR();\n        $this->config = &$config;\n        $this->ui = &$ui;\n    }\n\n    /**\n     * Return a list of all the commands defined by this class.\n     * @return array list of commands\n     * @access public\n     */\n    function getCommands()\n    {\n        $ret = array();\n        foreach (array_keys($this->commands) as $command) {\n            $ret[$command] = $this->commands[$command]['summary'];\n        }\n\n        return $ret;\n    }\n\n    /**\n     * Return a list of all the command shortcuts defined by this class.\n     * @return array shortcut => command\n     * @access public\n     */\n    function getShortcuts()\n    {\n        $ret = array();\n        foreach (array_keys($this->commands) as $command) {\n            if (isset($this->commands[$command]['shortcut'])) {\n                $ret[$this->commands[$command]['shortcut']] = $command;\n            }\n        }\n\n        return $ret;\n    }\n\n    function getOptions($command)\n    {\n        $shortcuts = $this->getShortcuts();\n        if (isset($shortcuts[$command])) {\n            $command = $shortcuts[$command];\n        }\n\n        if (isset($this->commands[$command]) &&\n              isset($this->commands[$command]['options'])) {\n            return $this->commands[$command]['options'];\n        }\n\n        return null;\n    }\n\n    function getGetoptArgs($command, &$short_args, &$long_args)\n    {\n        $short_args = '';\n        $long_args = array();\n        if (empty($this->commands[$command]) || empty($this->commands[$command]['options'])) {\n            return;\n        }\n\n        reset($this->commands[$command]['options']);\n        while (list($option, $info) = each($this->commands[$command]['options'])) {\n            $larg = $sarg = '';\n            if (isset($info['arg'])) {\n                if ($info['arg']{0} == '(') {\n                    $larg = '==';\n                    $sarg = '::';\n                    $arg = substr($info['arg'], 1, -1);\n                } else {\n                    $larg = '=';\n                    $sarg = ':';\n                    $arg = $info['arg'];\n                }\n            }\n\n            if (isset($info['shortopt'])) {\n                $short_args .= $info['shortopt'] . $sarg;\n            }\n\n            $long_args[] = $option . $larg;\n        }\n    }\n\n    /**\n    * Returns the help message for the given command\n    *\n    * @param string $command The command\n    * @return mixed A fail string if the command does not have help or\n    *               a two elements array containing [0]=>help string,\n    *               [1]=> help string for the accepted cmd args\n    */\n    function getHelp($command)\n    {\n        $config = &PEAR_Config::singleton();\n        if (!isset($this->commands[$command])) {\n            return \"No such command \\\"$command\\\"\";\n        }\n\n        $help = null;\n        if (isset($this->commands[$command]['doc'])) {\n            $help = $this->commands[$command]['doc'];\n        }\n\n        if (empty($help)) {\n            // XXX (cox) Fallback to summary if there is no doc (show both?)\n            if (!isset($this->commands[$command]['summary'])) {\n                return \"No help for command \\\"$command\\\"\";\n            }\n            $help = $this->commands[$command]['summary'];\n        }\n\n        if (preg_match_all('/{config\\s+([^\\}]+)}/e', $help, $matches)) {\n            foreach($matches[0] as $k => $v) {\n                $help = preg_replace(\"/$v/\", $config->get($matches[1][$k]), $help);\n            }\n        }\n\n        return array($help, $this->getHelpArgs($command));\n    }\n\n    /**\n     * Returns the help for the accepted arguments of a command\n     *\n     * @param  string $command\n     * @return string The help string\n     */\n    function getHelpArgs($command)\n    {\n        if (isset($this->commands[$command]['options']) &&\n            count($this->commands[$command]['options']))\n        {\n            $help = \"Options:\\n\";\n            foreach ($this->commands[$command]['options'] as $k => $v) {\n                if (isset($v['arg'])) {\n                    if ($v['arg'][0] == '(') {\n                        $arg = substr($v['arg'], 1, -1);\n                        $sapp = \" [$arg]\";\n                        $lapp = \"[=$arg]\";\n                    } else {\n                        $sapp = \" $v[arg]\";\n                        $lapp = \"=$v[arg]\";\n                    }\n                } else {\n                    $sapp = $lapp = \"\";\n                }\n\n                if (isset($v['shortopt'])) {\n                    $s = $v['shortopt'];\n                    $help .= \"  -$s$sapp, --$k$lapp\\n\";\n                } else {\n                    $help .= \"  --$k$lapp\\n\";\n                }\n\n                $p = \"        \";\n                $doc = rtrim(str_replace(\"\\n\", \"\\n$p\", $v['doc']));\n                $help .= \"        $doc\\n\";\n            }\n\n            return $help;\n        }\n\n        return null;\n    }\n\n    function run($command, $options, $params)\n    {\n        if (empty($this->commands[$command]['function'])) {\n            // look for shortcuts\n            foreach (array_keys($this->commands) as $cmd) {\n                if (isset($this->commands[$cmd]['shortcut']) && $this->commands[$cmd]['shortcut'] == $command) {\n                    if (empty($this->commands[$cmd]['function'])) {\n                        return $this->raiseError(\"unknown command `$command'\");\n                    } else {\n                        $func = $this->commands[$cmd]['function'];\n                    }\n                    $command = $cmd;\n\n                    //$command = $this->commands[$cmd]['function'];\n                    break;\n                }\n            }\n        } else {\n            $func = $this->commands[$command]['function'];\n        }\n\n        return $this->$func($command, $options, $params);\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/Command/Config.php",
    "content": "<?php\n/**\n * PEAR_Command_Config (config-show, config-get, config-set, config-help, config-create commands)\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Config.php 287554 2009-08-21 21:16:25Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 0.1\n */\n\n/**\n * base class\n */\nrequire_once 'PEAR/Command/Common.php';\n\n/**\n * PEAR commands for managing configuration data.\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 0.1\n */\nclass PEAR_Command_Config extends PEAR_Command_Common\n{\n    var $commands = array(\n        'config-show' => array(\n            'summary' => 'Show All Settings',\n            'function' => 'doConfigShow',\n            'shortcut' => 'csh',\n            'options' => array(\n                'channel' => array(\n                    'shortopt' => 'c',\n                    'doc' => 'show configuration variables for another channel',\n                    'arg' => 'CHAN',\n                    ),\n),\n            'doc' => '[layer]\nDisplays all configuration values.  An optional argument\nmay be used to tell which configuration layer to display.  Valid\nconfiguration layers are \"user\", \"system\" and \"default\". To display\nconfigurations for different channels, set the default_channel\nconfiguration variable and run config-show again.\n',\n            ),\n        'config-get' => array(\n            'summary' => 'Show One Setting',\n            'function' => 'doConfigGet',\n            'shortcut' => 'cg',\n            'options' => array(\n                'channel' => array(\n                    'shortopt' => 'c',\n                    'doc' => 'show configuration variables for another channel',\n                    'arg' => 'CHAN',\n                    ),\n),\n            'doc' => '<parameter> [layer]\nDisplays the value of one configuration parameter.  The\nfirst argument is the name of the parameter, an optional second argument\nmay be used to tell which configuration layer to look in.  Valid configuration\nlayers are \"user\", \"system\" and \"default\".  If no layer is specified, a value\nwill be picked from the first layer that defines the parameter, in the order\njust specified.  The configuration value will be retrieved for the channel\nspecified by the default_channel configuration variable.\n',\n            ),\n        'config-set' => array(\n            'summary' => 'Change Setting',\n            'function' => 'doConfigSet',\n            'shortcut' => 'cs',\n            'options' => array(\n                'channel' => array(\n                    'shortopt' => 'c',\n                    'doc' => 'show configuration variables for another channel',\n                    'arg' => 'CHAN',\n                    ),\n),\n            'doc' => '<parameter> <value> [layer]\nSets the value of one configuration parameter.  The first argument is\nthe name of the parameter, the second argument is the new value.  Some\nparameters are subject to validation, and the command will fail with\nan error message if the new value does not make sense.  An optional\nthird argument may be used to specify in which layer to set the\nconfiguration parameter.  The default layer is \"user\".  The\nconfiguration value will be set for the current channel, which\nis controlled by the default_channel configuration variable.\n',\n            ),\n        'config-help' => array(\n            'summary' => 'Show Information About Setting',\n            'function' => 'doConfigHelp',\n            'shortcut' => 'ch',\n            'options' => array(),\n            'doc' => '[parameter]\nDisplays help for a configuration parameter.  Without arguments it\ndisplays help for all configuration parameters.\n',\n           ),\n        'config-create' => array(\n            'summary' => 'Create a Default configuration file',\n            'function' => 'doConfigCreate',\n            'shortcut' => 'coc',\n            'options' => array(\n                'windows' => array(\n                    'shortopt' => 'w',\n                    'doc' => 'create a config file for a windows install',\n                    ),\n            ),\n            'doc' => '<root path> <filename>\nCreate a default configuration file with all directory configuration\nvariables set to subdirectories of <root path>, and save it as <filename>.\nThis is useful especially for creating a configuration file for a remote\nPEAR installation (using the --remoteconfig option of install, upgrade,\nand uninstall).\n',\n            ),\n        );\n\n    /**\n     * PEAR_Command_Config constructor.\n     *\n     * @access public\n     */\n    function PEAR_Command_Config(&$ui, &$config)\n    {\n        parent::PEAR_Command_Common($ui, $config);\n    }\n\n    function doConfigShow($command, $options, $params)\n    {\n        $layer = null;\n        if (is_array($params)) {\n            $layer = isset($params[0]) ? $params[0] : null;\n        }\n\n        // $params[0] -> the layer\n        if ($error = $this->_checkLayer($layer)) {\n            return $this->raiseError(\"config-show:$error\");\n        }\n\n        $keys = $this->config->getKeys();\n        sort($keys);\n        $channel = isset($options['channel']) ? $options['channel'] :\n            $this->config->get('default_channel');\n        $reg = &$this->config->getRegistry();\n        if (!$reg->channelExists($channel)) {\n            return $this->raiseError('Channel \"' . $channel . '\" does not exist');\n        }\n\n        $channel = $reg->channelName($channel);\n        $data = array('caption' => 'Configuration (channel ' . $channel . '):');\n        foreach ($keys as $key) {\n            $type = $this->config->getType($key);\n            $value = $this->config->get($key, $layer, $channel);\n            if ($type == 'password' && $value) {\n                $value = '********';\n            }\n\n            if ($value === false) {\n                $value = 'false';\n            } elseif ($value === true) {\n                $value = 'true';\n            }\n\n            $data['data'][$this->config->getGroup($key)][] = array($this->config->getPrompt($key) , $key, $value);\n        }\n\n        foreach ($this->config->getLayers() as $layer) {\n            $data['data']['Config Files'][] = array(ucfirst($layer) . ' Configuration File', 'Filename' , $this->config->getConfFile($layer));\n        }\n\n        $this->ui->outputData($data, $command);\n        return true;\n    }\n\n    function doConfigGet($command, $options, $params)\n    {\n        $args_cnt = is_array($params) ? count($params) : 0;\n        switch ($args_cnt) {\n            case 1:\n                $config_key = $params[0];\n                $layer = null;\n                break;\n            case 2:\n                $config_key = $params[0];\n                $layer = $params[1];\n                if ($error = $this->_checkLayer($layer)) {\n                    return $this->raiseError(\"config-get:$error\");\n                }\n                break;\n            case 0:\n            default:\n                return $this->raiseError(\"config-get expects 1 or 2 parameters\");\n        }\n\n        $channel = isset($options['channel']) ? $options['channel'] : $this->config->get('default_channel');\n        $reg = &$this->config->getRegistry();\n        if (!$reg->channelExists($channel)) {\n            return $this->raiseError('Channel \"' . $channel . '\" does not exist');\n        }\n\n        $this->ui->outputData($this->config->get($config_key, $layer, $channel), $command);\n        return true;\n    }\n\n    function doConfigSet($command, $options, $params)\n    {\n        // $param[0] -> a parameter to set\n        // $param[1] -> the value for the parameter\n        // $param[2] -> the layer\n        $failmsg = '';\n        if (count($params) < 2 || count($params) > 3) {\n            $failmsg .= \"config-set expects 2 or 3 parameters\";\n            return PEAR::raiseError($failmsg);\n        }\n\n        if (isset($params[2]) && ($error = $this->_checkLayer($params[2]))) {\n            $failmsg .= $error;\n            return PEAR::raiseError(\"config-set:$failmsg\");\n        }\n\n        $channel = isset($options['channel']) ? $options['channel'] : $this->config->get('default_channel');\n        $reg = &$this->config->getRegistry();\n        if (!$reg->channelExists($channel)) {\n            return $this->raiseError('Channel \"' . $channel . '\" does not exist');\n        }\n\n        $channel = $reg->channelName($channel);\n        if ($params[0] == 'default_channel' && !$reg->channelExists($params[1])) {\n            return $this->raiseError('Channel \"' . $params[1] . '\" does not exist');\n        }\n\n        if ($params[0] == 'preferred_mirror'\n            && (\n                !$reg->mirrorExists($channel, $params[1]) &&\n                (!$reg->channelExists($params[1]) || $channel != $params[1])\n            )\n        ) {\n            $msg  = 'Channel Mirror \"' . $params[1] . '\" does not exist';\n            $msg .= ' in your registry for channel \"' . $channel . '\".';\n            $msg .= \"\\n\" . 'Attempt to run \"pear channel-update ' . $channel .'\"';\n            $msg .= ' if you believe this mirror should exist as you may';\n            $msg .= ' have outdated channel information.';\n            return $this->raiseError($msg);\n        }\n\n        if (count($params) == 2) {\n            array_push($params, 'user');\n            $layer = 'user';\n        } else {\n            $layer = $params[2];\n        }\n\n        array_push($params, $channel);\n        if (!call_user_func_array(array(&$this->config, 'set'), $params)) {\n            array_pop($params);\n            $failmsg = \"config-set (\" . implode(\", \", $params) . \") failed, channel $channel\";\n        } else {\n            $this->config->store($layer);\n        }\n\n        if ($failmsg) {\n            return $this->raiseError($failmsg);\n        }\n\n        $this->ui->outputData('config-set succeeded', $command);\n        return true;\n    }\n\n    function doConfigHelp($command, $options, $params)\n    {\n        if (empty($params)) {\n            $params = $this->config->getKeys();\n        }\n\n        $data['caption']  = \"Config help\" . ((count($params) == 1) ? \" for $params[0]\" : '');\n        $data['headline'] = array('Name', 'Type', 'Description');\n        $data['border']   = true;\n        foreach ($params as $name) {\n            $type = $this->config->getType($name);\n            $docs = $this->config->getDocs($name);\n            if ($type == 'set') {\n                $docs = rtrim($docs) . \"\\nValid set: \" .\n                    implode(' ', $this->config->getSetValues($name));\n            }\n\n            $data['data'][] = array($name, $type, $docs);\n        }\n\n        $this->ui->outputData($data, $command);\n    }\n\n    function doConfigCreate($command, $options, $params)\n    {\n        if (count($params) != 2) {\n            return PEAR::raiseError('config-create: must have 2 parameters, root path and ' .\n                'filename to save as');\n        }\n\n        $root = $params[0];\n        // Clean up the DIRECTORY_SEPARATOR mess\n        $ds2 = DIRECTORY_SEPARATOR . DIRECTORY_SEPARATOR;\n        $root = preg_replace(array('!\\\\\\\\+!', '!/+!', \"!$ds2+!\"),\n                             array('/', '/', '/'),\n                            $root);\n        if ($root{0} != '/') {\n            if (!isset($options['windows'])) {\n                return PEAR::raiseError('Root directory must be an absolute path beginning ' .\n                    'with \"/\", was: \"' . $root . '\"');\n            }\n\n            if (!preg_match('/^[A-Za-z]:/', $root)) {\n                return PEAR::raiseError('Root directory must be an absolute path beginning ' .\n                    'with \"\\\\\" or \"C:\\\\\", was: \"' . $root . '\"');\n            }\n        }\n\n        $windows = isset($options['windows']);\n        if ($windows) {\n            $root = str_replace('/', '\\\\', $root);\n        }\n\n        if (!file_exists($params[1]) && !@touch($params[1])) {\n            return PEAR::raiseError('Could not create \"' . $params[1] . '\"');\n        }\n\n        $params[1] = realpath($params[1]);\n        $config = &new PEAR_Config($params[1], '#no#system#config#', false, false);\n        if ($root{strlen($root) - 1} == '/') {\n            $root = substr($root, 0, strlen($root) - 1);\n        }\n\n        $config->noRegistry();\n        $config->set('php_dir', $windows ? \"$root\\\\pear\\\\php\" : \"$root/pear/php\", 'user');\n        $config->set('data_dir', $windows ? \"$root\\\\pear\\\\data\" : \"$root/pear/data\");\n        $config->set('www_dir', $windows ? \"$root\\\\pear\\\\www\" : \"$root/pear/www\");\n        $config->set('cfg_dir', $windows ? \"$root\\\\pear\\\\cfg\" : \"$root/pear/cfg\");\n        $config->set('ext_dir', $windows ? \"$root\\\\pear\\\\ext\" : \"$root/pear/ext\");\n        $config->set('doc_dir', $windows ? \"$root\\\\pear\\\\docs\" : \"$root/pear/docs\");\n        $config->set('test_dir', $windows ? \"$root\\\\pear\\\\tests\" : \"$root/pear/tests\");\n        $config->set('cache_dir', $windows ? \"$root\\\\pear\\\\cache\" : \"$root/pear/cache\");\n        $config->set('download_dir', $windows ? \"$root\\\\pear\\\\download\" : \"$root/pear/download\");\n        $config->set('temp_dir', $windows ? \"$root\\\\pear\\\\temp\" : \"$root/pear/temp\");\n        $config->set('bin_dir', $windows ? \"$root\\\\pear\" : \"$root/pear\");\n        $config->writeConfigFile();\n        $this->_showConfig($config);\n        $this->ui->outputData('Successfully created default configuration file \"' . $params[1] . '\"',\n            $command);\n    }\n\n    function _showConfig(&$config)\n    {\n        $params = array('user');\n        $keys = $config->getKeys();\n        sort($keys);\n        $channel = 'pear.php.net';\n        $data = array('caption' => 'Configuration (channel ' . $channel . '):');\n        foreach ($keys as $key) {\n            $type = $config->getType($key);\n            $value = $config->get($key, 'user', $channel);\n            if ($type == 'password' && $value) {\n                $value = '********';\n            }\n\n            if ($value === false) {\n                $value = 'false';\n            } elseif ($value === true) {\n                $value = 'true';\n            }\n            $data['data'][$config->getGroup($key)][] =\n                array($config->getPrompt($key) , $key, $value);\n        }\n\n        foreach ($config->getLayers() as $layer) {\n            $data['data']['Config Files'][] =\n                array(ucfirst($layer) . ' Configuration File', 'Filename' ,\n                    $config->getConfFile($layer));\n        }\n\n        $this->ui->outputData($data, 'config-show');\n        return true;\n    }\n\n    /**\n     * Checks if a layer is defined or not\n     *\n     * @param string $layer The layer to search for\n     * @return mixed False on no error or the error message\n     */\n    function _checkLayer($layer = null)\n    {\n        if (!empty($layer) && $layer != 'default') {\n            $layers = $this->config->getLayers();\n            if (!in_array($layer, $layers)) {\n                return \" only the layers: \\\"\" . implode('\" or \"', $layers) . \"\\\" are supported\";\n            }\n        }\n\n        return false;\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/Command/Config.xml",
    "content": "<commands version=\"1.0\">\n <config-show>\n  <summary>Show All Settings</summary>\n  <function>doConfigShow</function>\n  <shortcut>csh</shortcut>\n  <options>\n   <channel>\n    <shortopt>c</shortopt>\n    <doc>show configuration variables for another channel</doc>\n    <arg>CHAN</arg>\n   </channel>\n  </options>\n  <doc>[layer]\nDisplays all configuration values.  An optional argument\nmay be used to tell which configuration layer to display.  Valid\nconfiguration layers are &quot;user&quot;, &quot;system&quot; and &quot;default&quot;. To display\nconfigurations for different channels, set the default_channel\nconfiguration variable and run config-show again.\n</doc>\n </config-show>\n <config-get>\n  <summary>Show One Setting</summary>\n  <function>doConfigGet</function>\n  <shortcut>cg</shortcut>\n  <options>\n   <channel>\n    <shortopt>c</shortopt>\n    <doc>show configuration variables for another channel</doc>\n    <arg>CHAN</arg>\n   </channel>\n  </options>\n  <doc>&lt;parameter&gt; [layer]\nDisplays the value of one configuration parameter.  The\nfirst argument is the name of the parameter, an optional second argument\nmay be used to tell which configuration layer to look in.  Valid configuration\nlayers are &quot;user&quot;, &quot;system&quot; and &quot;default&quot;.  If no layer is specified, a value\nwill be picked from the first layer that defines the parameter, in the order\njust specified.  The configuration value will be retrieved for the channel\nspecified by the default_channel configuration variable.\n</doc>\n </config-get>\n <config-set>\n  <summary>Change Setting</summary>\n  <function>doConfigSet</function>\n  <shortcut>cs</shortcut>\n  <options>\n   <channel>\n    <shortopt>c</shortopt>\n    <doc>show configuration variables for another channel</doc>\n    <arg>CHAN</arg>\n   </channel>\n  </options>\n  <doc>&lt;parameter&gt; &lt;value&gt; [layer]\nSets the value of one configuration parameter.  The first argument is\nthe name of the parameter, the second argument is the new value.  Some\nparameters are subject to validation, and the command will fail with\nan error message if the new value does not make sense.  An optional\nthird argument may be used to specify in which layer to set the\nconfiguration parameter.  The default layer is &quot;user&quot;.  The\nconfiguration value will be set for the current channel, which\nis controlled by the default_channel configuration variable.\n</doc>\n </config-set>\n <config-help>\n  <summary>Show Information About Setting</summary>\n  <function>doConfigHelp</function>\n  <shortcut>ch</shortcut>\n  <options />\n  <doc>[parameter]\nDisplays help for a configuration parameter.  Without arguments it\ndisplays help for all configuration parameters.\n</doc>\n </config-help>\n <config-create>\n  <summary>Create a Default configuration file</summary>\n  <function>doConfigCreate</function>\n  <shortcut>coc</shortcut>\n  <options>\n   <windows>\n    <shortopt>w</shortopt>\n    <doc>create a config file for a windows install</doc>\n   </windows>\n  </options>\n  <doc>&lt;root path&gt; &lt;filename&gt;\nCreate a default configuration file with all directory configuration\nvariables set to subdirectories of &lt;root path&gt;, and save it as &lt;filename&gt;.\nThis is useful especially for creating a configuration file for a remote\nPEAR installation (using the --remoteconfig option of install, upgrade,\nand uninstall).\n</doc>\n </config-create>\n</commands>"
  },
  {
    "path": "newscoop/include/PEAR/Command/Install.php",
    "content": "<?php\n/**\n * PEAR_Command_Install (install, upgrade, upgrade-all, uninstall, bundle, run-scripts commands)\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Install.php 287477 2009-08-19 14:19:43Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 0.1\n */\n\n/**\n * base class\n */\nrequire_once 'PEAR/Command/Common.php';\n\n/**\n * PEAR commands for installation or deinstallation/upgrading of\n * packages.\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 0.1\n */\nclass PEAR_Command_Install extends PEAR_Command_Common\n{\n    // {{{ properties\n\n    var $commands = array(\n        'install' => array(\n            'summary' => 'Install Package',\n            'function' => 'doInstall',\n            'shortcut' => 'i',\n            'options' => array(\n                'force' => array(\n                    'shortopt' => 'f',\n                    'doc' => 'will overwrite newer installed packages',\n                    ),\n                'loose' => array(\n                    'shortopt' => 'l',\n                    'doc' => 'do not check for recommended dependency version',\n                    ),\n                'nodeps' => array(\n                    'shortopt' => 'n',\n                    'doc' => 'ignore dependencies, install anyway',\n                    ),\n                'register-only' => array(\n                    'shortopt' => 'r',\n                    'doc' => 'do not install files, only register the package as installed',\n                    ),\n                'soft' => array(\n                    'shortopt' => 's',\n                    'doc' => 'soft install, fail silently, or upgrade if already installed',\n                    ),\n                'nobuild' => array(\n                    'shortopt' => 'B',\n                    'doc' => 'don\\'t build C extensions',\n                    ),\n                'nocompress' => array(\n                    'shortopt' => 'Z',\n                    'doc' => 'request uncompressed files when downloading',\n                    ),\n                'installroot' => array(\n                    'shortopt' => 'R',\n                    'arg' => 'DIR',\n                    'doc' => 'root directory used when installing files (ala PHP\\'s INSTALL_ROOT), use packagingroot for RPM',\n                    ),\n                'packagingroot' => array(\n                    'shortopt' => 'P',\n                    'arg' => 'DIR',\n                    'doc' => 'root directory used when packaging files, like RPM packaging',\n                    ),\n                'ignore-errors' => array(\n                    'doc' => 'force install even if there were errors',\n                    ),\n                'alldeps' => array(\n                    'shortopt' => 'a',\n                    'doc' => 'install all required and optional dependencies',\n                    ),\n                'onlyreqdeps' => array(\n                    'shortopt' => 'o',\n                    'doc' => 'install all required dependencies',\n                    ),\n                'offline' => array(\n                    'shortopt' => 'O',\n                    'doc' => 'do not attempt to download any urls or contact channels',\n                    ),\n                'pretend' => array(\n                    'shortopt' => 'p',\n                    'doc' => 'Only list the packages that would be downloaded',\n                    ),\n                ),\n            'doc' => '[channel/]<package> ...\nInstalls one or more PEAR packages.  You can specify a package to\ninstall in four ways:\n\n\"Package-1.0.tgz\" : installs from a local file\n\n\"http://example.com/Package-1.0.tgz\" : installs from\nanywhere on the net.\n\n\"package.xml\" : installs the package described in\npackage.xml.  Useful for testing, or for wrapping a PEAR package in\nanother package manager such as RPM.\n\n\"Package[-version/state][.tar]\" : queries your default channel\\'s server\n({config master_server}) and downloads the newest package with\nthe preferred quality/state ({config preferred_state}).\n\nTo retrieve Package version 1.1, use \"Package-1.1,\" to retrieve\nPackage state beta, use \"Package-beta.\"  To retrieve an uncompressed\nfile, append .tar (make sure there is no file by the same name first)\n\nTo download a package from another channel, prefix with the channel name like\n\"channel/Package\"\n\nMore than one package may be specified at once.  It is ok to mix these\nfour ways of specifying packages.\n'),\n        'upgrade' => array(\n            'summary' => 'Upgrade Package',\n            'function' => 'doInstall',\n            'shortcut' => 'up',\n            'options' => array(\n                'channel' => array(\n                    'shortopt' => 'c',\n                    'doc' => 'upgrade packages from a specific channel',\n                    'arg' => 'CHAN',\n                    ),\n                'force' => array(\n                    'shortopt' => 'f',\n                    'doc' => 'overwrite newer installed packages',\n                    ),\n                'loose' => array(\n                    'shortopt' => 'l',\n                    'doc' => 'do not check for recommended dependency version',\n                    ),\n                'nodeps' => array(\n                    'shortopt' => 'n',\n                    'doc' => 'ignore dependencies, upgrade anyway',\n                    ),\n                'register-only' => array(\n                    'shortopt' => 'r',\n                    'doc' => 'do not install files, only register the package as upgraded',\n                    ),\n                'nobuild' => array(\n                    'shortopt' => 'B',\n                    'doc' => 'don\\'t build C extensions',\n                    ),\n                'nocompress' => array(\n                    'shortopt' => 'Z',\n                    'doc' => 'request uncompressed files when downloading',\n                    ),\n                'installroot' => array(\n                    'shortopt' => 'R',\n                    'arg' => 'DIR',\n                    'doc' => 'root directory used when installing files (ala PHP\\'s INSTALL_ROOT)',\n                    ),\n                'ignore-errors' => array(\n                    'doc' => 'force install even if there were errors',\n                    ),\n                'alldeps' => array(\n                    'shortopt' => 'a',\n                    'doc' => 'install all required and optional dependencies',\n                    ),\n                'onlyreqdeps' => array(\n                    'shortopt' => 'o',\n                    'doc' => 'install all required dependencies',\n                    ),\n                'offline' => array(\n                    'shortopt' => 'O',\n                    'doc' => 'do not attempt to download any urls or contact channels',\n                    ),\n                'pretend' => array(\n                    'shortopt' => 'p',\n                    'doc' => 'Only list the packages that would be downloaded',\n                    ),\n                ),\n            'doc' => '<package> ...\nUpgrades one or more PEAR packages.  See documentation for the\n\"install\" command for ways to specify a package.\n\nWhen upgrading, your package will be updated if the provided new\npackage has a higher version number (use the -f option if you need to\nupgrade anyway).\n\nMore than one package may be specified at once.\n'),\n        'upgrade-all' => array(\n            'summary' => 'Upgrade All Packages [Deprecated in favor of calling upgrade with no parameters]',\n            'function' => 'doUpgradeAll',\n            'shortcut' => 'ua',\n            'options' => array(\n                'channel' => array(\n                    'shortopt' => 'c',\n                    'doc' => 'upgrade packages from a specific channel',\n                    'arg' => 'CHAN',\n                    ),\n                'nodeps' => array(\n                    'shortopt' => 'n',\n                    'doc' => 'ignore dependencies, upgrade anyway',\n                    ),\n                'register-only' => array(\n                    'shortopt' => 'r',\n                    'doc' => 'do not install files, only register the package as upgraded',\n                    ),\n                'nobuild' => array(\n                    'shortopt' => 'B',\n                    'doc' => 'don\\'t build C extensions',\n                    ),\n                'nocompress' => array(\n                    'shortopt' => 'Z',\n                    'doc' => 'request uncompressed files when downloading',\n                    ),\n                'installroot' => array(\n                    'shortopt' => 'R',\n                    'arg' => 'DIR',\n                    'doc' => 'root directory used when installing files (ala PHP\\'s INSTALL_ROOT), use packagingroot for RPM',\n                    ),\n                'ignore-errors' => array(\n                    'doc' => 'force install even if there were errors',\n                    ),\n                'loose' => array(\n                    'doc' => 'do not check for recommended dependency version',\n                    ),\n                ),\n            'doc' => '\nWARNING: This function is deprecated in favor of using the upgrade command with no params\n\nUpgrades all packages that have a newer release available.  Upgrades are\ndone only if there is a release available of the state specified in\n\"preferred_state\" (currently {config preferred_state}), or a state considered\nmore stable.\n'),\n        'uninstall' => array(\n            'summary' => 'Un-install Package',\n            'function' => 'doUninstall',\n            'shortcut' => 'un',\n            'options' => array(\n                'nodeps' => array(\n                    'shortopt' => 'n',\n                    'doc' => 'ignore dependencies, uninstall anyway',\n                    ),\n                'register-only' => array(\n                    'shortopt' => 'r',\n                    'doc' => 'do not remove files, only register the packages as not installed',\n                    ),\n                'installroot' => array(\n                    'shortopt' => 'R',\n                    'arg' => 'DIR',\n                    'doc' => 'root directory used when installing files (ala PHP\\'s INSTALL_ROOT)',\n                    ),\n                'ignore-errors' => array(\n                    'doc' => 'force install even if there were errors',\n                    ),\n                'offline' => array(\n                    'shortopt' => 'O',\n                    'doc' => 'do not attempt to uninstall remotely',\n                    ),\n                ),\n            'doc' => '[channel/]<package> ...\nUninstalls one or more PEAR packages.  More than one package may be\nspecified at once.  Prefix with channel name to uninstall from a\nchannel not in your default channel ({config default_channel})\n'),\n        'bundle' => array(\n            'summary' => 'Unpacks a Pecl Package',\n            'function' => 'doBundle',\n            'shortcut' => 'bun',\n            'options' => array(\n                'destination' => array(\n                   'shortopt' => 'd',\n                    'arg' => 'DIR',\n                    'doc' => 'Optional destination directory for unpacking (defaults to current path or \"ext\" if exists)',\n                    ),\n                'force' => array(\n                    'shortopt' => 'f',\n                    'doc' => 'Force the unpacking even if there were errors in the package',\n                ),\n            ),\n            'doc' => '<package>\nUnpacks a Pecl Package into the selected location. It will download the\npackage if needed.\n'),\n        'run-scripts' => array(\n            'summary' => 'Run Post-Install Scripts bundled with a package',\n            'function' => 'doRunScripts',\n            'shortcut' => 'rs',\n            'options' => array(\n            ),\n            'doc' => '<package>\nRun post-installation scripts in package <package>, if any exist.\n'),\n    );\n\n    // }}}\n    // {{{ constructor\n\n    /**\n     * PEAR_Command_Install constructor.\n     *\n     * @access public\n     */\n    function PEAR_Command_Install(&$ui, &$config)\n    {\n        parent::PEAR_Command_Common($ui, $config);\n    }\n\n    // }}}\n\n    /**\n     * For unit testing purposes\n     */\n    function &getDownloader(&$ui, $options, &$config)\n    {\n        if (!class_exists('PEAR_Downloader')) {\n            require_once 'PEAR/Downloader.php';\n        }\n        $a = &new PEAR_Downloader($ui, $options, $config);\n        return $a;\n    }\n\n    /**\n     * For unit testing purposes\n     */\n    function &getInstaller(&$ui)\n    {\n        if (!class_exists('PEAR_Installer')) {\n            require_once 'PEAR/Installer.php';\n        }\n        $a = &new PEAR_Installer($ui);\n        return $a;\n    }\n\n    function enableExtension($binaries, $type)\n    {\n        if (!($phpini = $this->config->get('php_ini', null, 'pear.php.net'))) {\n            return PEAR::raiseError('configuration option \"php_ini\" is not set to php.ini location');\n        }\n        $ini = $this->_parseIni($phpini);\n        if (PEAR::isError($ini)) {\n            return $ini;\n        }\n        $line = 0;\n        if ($type == 'extsrc' || $type == 'extbin') {\n            $search = 'extensions';\n            $enable = 'extension';\n        } else {\n            $search = 'zend_extensions';\n            ob_start();\n            phpinfo(INFO_GENERAL);\n            $info = ob_get_contents();\n            ob_end_clean();\n            $debug = function_exists('leak') ? '_debug' : '';\n            $ts = preg_match('Thread Safety.+enabled', $info) ? '_ts' : '';\n            $enable = 'zend_extension' . $debug . $ts;\n        }\n        foreach ($ini[$search] as $line => $extension) {\n            if (in_array($extension, $binaries, true) || in_array(\n                  $ini['extension_dir'] . DIRECTORY_SEPARATOR . $extension, $binaries, true)) {\n                // already enabled - assume if one is, all are\n                return true;\n            }\n        }\n        if ($line) {\n            $newini = array_slice($ini['all'], 0, $line);\n        } else {\n            $newini = array();\n        }\n        foreach ($binaries as $binary) {\n            if ($ini['extension_dir']) {\n                $binary = basename($binary);\n            }\n            $newini[] = $enable . '=\"' . $binary . '\"' . (OS_UNIX ? \"\\n\" : \"\\r\\n\");\n        }\n        $newini = array_merge($newini, array_slice($ini['all'], $line));\n        $fp = @fopen($phpini, 'wb');\n        if (!$fp) {\n            return PEAR::raiseError('cannot open php.ini \"' . $phpini . '\" for writing');\n        }\n        foreach ($newini as $line) {\n            fwrite($fp, $line);\n        }\n        fclose($fp);\n        return true;\n    }\n\n    function disableExtension($binaries, $type)\n    {\n        if (!($phpini = $this->config->get('php_ini', null, 'pear.php.net'))) {\n            return PEAR::raiseError('configuration option \"php_ini\" is not set to php.ini location');\n        }\n        $ini = $this->_parseIni($phpini);\n        if (PEAR::isError($ini)) {\n            return $ini;\n        }\n        $line = 0;\n        if ($type == 'extsrc' || $type == 'extbin') {\n            $search = 'extensions';\n            $enable = 'extension';\n        } else {\n            $search = 'zend_extensions';\n            ob_start();\n            phpinfo(INFO_GENERAL);\n            $info = ob_get_contents();\n            ob_end_clean();\n            $debug = function_exists('leak') ? '_debug' : '';\n            $ts = preg_match('Thread Safety.+enabled', $info) ? '_ts' : '';\n            $enable = 'zend_extension' . $debug . $ts;\n        }\n        $found = false;\n        foreach ($ini[$search] as $line => $extension) {\n            if (in_array($extension, $binaries, true) || in_array(\n                  $ini['extension_dir'] . DIRECTORY_SEPARATOR . $extension, $binaries, true)) {\n                $found = true;\n                break;\n            }\n        }\n        if (!$found) {\n            // not enabled\n            return true;\n        }\n        $fp = @fopen($phpini, 'wb');\n        if (!$fp) {\n            return PEAR::raiseError('cannot open php.ini \"' . $phpini . '\" for writing');\n        }\n        if ($line) {\n            $newini = array_slice($ini['all'], 0, $line);\n            // delete the enable line\n            $newini = array_merge($newini, array_slice($ini['all'], $line + 1));\n        } else {\n            $newini = array_slice($ini['all'], 1);\n        }\n        foreach ($newini as $line) {\n            fwrite($fp, $line);\n        }\n        fclose($fp);\n        return true;\n    }\n\n    function _parseIni($filename)\n    {\n        if (!file_exists($filename)) {\n            return PEAR::raiseError('php.ini \"' . $filename . '\" does not exist');\n        }\n\n        if (filesize($filename) > 300000) {\n            return PEAR::raiseError('php.ini \"' . $filename . '\" is too large, aborting');\n        }\n\n        ob_start();\n        phpinfo(INFO_GENERAL);\n        $info = ob_get_contents();\n        ob_end_clean();\n        $debug = function_exists('leak') ? '_debug' : '';\n        $ts = preg_match('/Thread Safety.+enabled/', $info) ? '_ts' : '';\n        $zend_extension_line = 'zend_extension' . $debug . $ts;\n        $all = @file($filename);\n        if (!$all) {\n            return PEAR::raiseError('php.ini \"' . $filename .'\" could not be read');\n        }\n        $zend_extensions = $extensions = array();\n        // assume this is right, but pull from the php.ini if it is found\n        $extension_dir = ini_get('extension_dir');\n        foreach ($all as $linenum => $line) {\n            $line = trim($line);\n            if (!$line) {\n                continue;\n            }\n            if ($line[0] == ';') {\n                continue;\n            }\n            if (strtolower(substr($line, 0, 13)) == 'extension_dir') {\n                $line = trim(substr($line, 13));\n                if ($line[0] == '=') {\n                    $x = trim(substr($line, 1));\n                    $x = explode(';', $x);\n                    $extension_dir = str_replace('\"', '', array_shift($x));\n                    continue;\n                }\n            }\n            if (strtolower(substr($line, 0, 9)) == 'extension') {\n                $line = trim(substr($line, 9));\n                if ($line[0] == '=') {\n                    $x = trim(substr($line, 1));\n                    $x = explode(';', $x);\n                    $extensions[$linenum] = str_replace('\"', '', array_shift($x));\n                    continue;\n                }\n            }\n            if (strtolower(substr($line, 0, strlen($zend_extension_line))) ==\n                  $zend_extension_line) {\n                $line = trim(substr($line, strlen($zend_extension_line)));\n                if ($line[0] == '=') {\n                    $x = trim(substr($line, 1));\n                    $x = explode(';', $x);\n                    $zend_extensions[$linenum] = str_replace('\"', '', array_shift($x));\n                    continue;\n                }\n            }\n        }\n        return array(\n            'extensions' => $extensions,\n            'zend_extensions' => $zend_extensions,\n            'extension_dir' => $extension_dir,\n            'all' => $all,\n        );\n    }\n\n    // {{{ doInstall()\n\n    function doInstall($command, $options, $params)\n    {\n        if (!class_exists('PEAR_PackageFile')) {\n            require_once 'PEAR/PackageFile.php';\n        }\n\n        if (isset($options['installroot']) && isset($options['packagingroot'])) {\n            return $this->raiseError('ERROR: cannot use both --installroot and --packagingroot');\n        }\n\n        $reg = &$this->config->getRegistry();\n        $channel = isset($options['channel']) ? $options['channel'] : $this->config->get('default_channel');\n        if (!$reg->channelExists($channel)) {\n            return $this->raiseError('Channel \"' . $channel . '\" does not exist');\n        }\n\n        if (empty($this->installer)) {\n            $this->installer = &$this->getInstaller($this->ui);\n        }\n\n        if ($command == 'upgrade' || $command == 'upgrade-all') {\n            // If people run the upgrade command but pass nothing, emulate a upgrade-all\n            if ($command == 'upgrade' && empty($params)) {\n                return $this->doUpgradeAll($command, $options, $params);\n            }\n            $options['upgrade'] = true;\n        } else {\n            $packages = $params;\n        }\n\n        $instreg = &$reg; // instreg used to check if package is installed\n        if (isset($options['packagingroot']) && !isset($options['upgrade'])) {\n            $packrootphp_dir = $this->installer->_prependPath(\n                $this->config->get('php_dir', null, 'pear.php.net'),\n                $options['packagingroot']);\n            $instreg = new PEAR_Registry($packrootphp_dir); // other instreg!\n\n            if ($this->config->get('verbose') > 2) {\n                $this->ui->outputData('using package root: ' . $options['packagingroot']);\n            }\n        }\n\n        $abstractpackages = $otherpackages = array();\n        // parse params\n        PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n\n        foreach ($params as $param) {\n            if (strpos($param, 'http://') === 0) {\n                $otherpackages[] = $param;\n                continue;\n            }\n\n            if (strpos($param, 'channel://') === false && @file_exists($param)) {\n                if (isset($options['force'])) {\n                    $otherpackages[] = $param;\n                    continue;\n                }\n\n                $pkg = new PEAR_PackageFile($this->config);\n                $pf  = $pkg->fromAnyFile($param, PEAR_VALIDATE_DOWNLOADING);\n                if (PEAR::isError($pf)) {\n                    $otherpackages[] = $param;\n                    continue;\n                }\n\n                $exists   = $reg->packageExists($pf->getPackage(), $pf->getChannel());\n                $pversion = $reg->packageInfo($pf->getPackage(), 'version', $pf->getChannel());\n                $version_compare = version_compare($pf->getVersion(), $pversion, '<=');\n                if ($exists && $version_compare) {\n                    if ($this->config->get('verbose')) {\n                        $this->ui->outputData('Ignoring installed package ' .\n                            $reg->parsedPackageNameToString(\n                            array('package' => $pf->getPackage(),\n                                  'channel' => $pf->getChannel()), true));\n                    }\n                    continue;\n                }\n                $otherpackages[] = $param;\n                continue;\n            }\n\n            $e = $reg->parsePackageName($param, $channel);\n            if (PEAR::isError($e)) {\n                $otherpackages[] = $param;\n            } else {\n                $abstractpackages[] = $e;\n            }\n        }\n        PEAR::staticPopErrorHandling();\n\n        // if there are any local package .tgz or remote static url, we can't\n        // filter.  The filter only works for abstract packages\n        if (count($abstractpackages) && !isset($options['force'])) {\n            // when not being forced, only do necessary upgrades/installs\n            if (isset($options['upgrade'])) {\n                $abstractpackages = $this->_filterUptodatePackages($abstractpackages, $command);\n            } else {\n                $count = count($abstractpackages);\n                foreach ($abstractpackages as $i => $package) {\n                    if (isset($package['group'])) {\n                        // do not filter out install groups\n                        continue;\n                    }\n\n                    if ($instreg->packageExists($package['package'], $package['channel'])) {\n                        if ($count > 1) {\n                            if ($this->config->get('verbose')) {\n                                $this->ui->outputData('Ignoring installed package ' .\n                                    $reg->parsedPackageNameToString($package, true));\n                            }\n                            unset($abstractpackages[$i]);\n                        } elseif ($count === 1) {\n                            // Lets try to upgrade it since it's already installed\n                            $options['upgrade'] = true;\n                        }\n                    }\n                }\n            }\n            $abstractpackages =\n                array_map(array($reg, 'parsedPackageNameToString'), $abstractpackages);\n        } elseif (count($abstractpackages)) {\n            $abstractpackages =\n                array_map(array($reg, 'parsedPackageNameToString'), $abstractpackages);\n        }\n\n        $packages = array_merge($abstractpackages, $otherpackages);\n        if (!count($packages)) {\n            $c = '';\n            if (isset($options['channel'])){\n                $c .= ' in channel \"' . $options['channel'] . '\"';\n            }\n            $this->ui->outputData('Nothing to ' . $command . $c);\n            return true;\n        }\n\n        $this->downloader = &$this->getDownloader($this->ui, $options, $this->config);\n        $errors = $downloaded = $binaries = array();\n        $downloaded = &$this->downloader->download($packages);\n        if (PEAR::isError($downloaded)) {\n            return $this->raiseError($downloaded);\n        }\n\n        $errors = $this->downloader->getErrorMsgs();\n        if (count($errors)) {\n            $err = array();\n            $err['data'] = array();\n            foreach ($errors as $error) {\n                if ($error !== null) {\n                    $err['data'][] = array($error);\n                }\n            }\n\n            if (!empty($err['data'])) {\n                $err['headline'] = 'Install Errors';\n                $this->ui->outputData($err);\n            }\n\n            if (!count($downloaded)) {\n                return $this->raiseError(\"$command failed\");\n            }\n        }\n\n        $data = array(\n            'headline' => 'Packages that would be Installed'\n        );\n\n        if (isset($options['pretend'])) {\n            foreach ($downloaded as $package) {\n                $data['data'][] = array($reg->parsedPackageNameToString($package->getParsedPackage()));\n            }\n            $this->ui->outputData($data, 'pretend');\n            return true;\n        }\n\n        $this->installer->setOptions($options);\n        $this->installer->sortPackagesForInstall($downloaded);\n        if (PEAR::isError($err = $this->installer->setDownloadedPackages($downloaded))) {\n            $this->raiseError($err->getMessage());\n            return true;\n        }\n\n        $binaries = $extrainfo = array();\n        foreach ($downloaded as $param) {\n            PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n            $info = $this->installer->install($param, $options);\n            PEAR::staticPopErrorHandling();\n            if (PEAR::isError($info)) {\n                $oldinfo = $info;\n                $pkg = &$param->getPackageFile();\n                if ($info->getCode() != PEAR_INSTALLER_NOBINARY) {\n                    if (!($info = $pkg->installBinary($this->installer))) {\n                        $this->ui->outputData('ERROR: ' .$oldinfo->getMessage());\n                        continue;\n                    }\n\n                    // we just installed a different package than requested,\n                    // let's change the param and info so that the rest of this works\n                    $param = $info[0];\n                    $info  = $info[1];\n                }\n            }\n\n            if (!is_array($info)) {\n                return $this->raiseError(\"$command failed\");\n            }\n\n            if ($param->getPackageType() == 'extsrc' ||\n                  $param->getPackageType() == 'extbin' ||\n                  $param->getPackageType() == 'zendextsrc' ||\n                  $param->getPackageType() == 'zendextbin'\n            ) {\n                $pkg = &$param->getPackageFile();\n                if ($instbin = $pkg->getInstalledBinary()) {\n                    $instpkg = &$instreg->getPackage($instbin, $pkg->getChannel());\n                } else {\n                    $instpkg = &$instreg->getPackage($pkg->getPackage(), $pkg->getChannel());\n                }\n\n                foreach ($instpkg->getFilelist() as $name => $atts) {\n                    $pinfo = pathinfo($atts['installed_as']);\n                    if (!isset($pinfo['extension']) ||\n                          in_array($pinfo['extension'], array('c', 'h'))\n                    ) {\n                        continue; // make sure we don't match php_blah.h\n                    }\n\n                    if ((strpos($pinfo['basename'], 'php_') === 0 &&\n                          $pinfo['extension'] == 'dll') ||\n                          // most unices\n                          $pinfo['extension'] == 'so' ||\n                          // hp-ux\n                          $pinfo['extension'] == 'sl') {\n                        $binaries[] = array($atts['installed_as'], $pinfo);\n                        break;\n                    }\n                }\n\n                if (count($binaries)) {\n                    foreach ($binaries as $pinfo) {\n                        PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n                        $ret = $this->enableExtension(array($pinfo[0]), $param->getPackageType());\n                        PEAR::staticPopErrorHandling();\n                        if (PEAR::isError($ret)) {\n                            $extrainfo[] = $ret->getMessage();\n                            if ($param->getPackageType() == 'extsrc' ||\n                                  $param->getPackageType() == 'extbin') {\n                                $exttype = 'extension';\n                            } else {\n                                ob_start();\n                                phpinfo(INFO_GENERAL);\n                                $info = ob_get_contents();\n                                ob_end_clean();\n                                $debug = function_exists('leak') ? '_debug' : '';\n                                $ts = preg_match('Thread Safety.+enabled', $info) ? '_ts' : '';\n                                $exttype = 'zend_extension' . $debug . $ts;\n                            }\n                            $extrainfo[] = 'You should add \"' . $exttype . '=' .\n                                $pinfo[1]['basename'] . '\" to php.ini';\n                        } else {\n                            $extrainfo[] = 'Extension ' . $instpkg->getProvidesExtension() .\n                                ' enabled in php.ini';\n                        }\n                    }\n                }\n            }\n\n            if ($this->config->get('verbose') > 0) {\n                $chan = $param->getChannel();\n                $label = $reg->parsedPackageNameToString(\n                    array(\n                        'channel' => $chan,\n                        'package' => $param->getPackage(),\n                        'version' => $param->getVersion(),\n                    ));\n                $out = array('data' => \"$command ok: $label\");\n                if (isset($info['release_warnings'])) {\n                    $out['release_warnings'] = $info['release_warnings'];\n                }\n                $this->ui->outputData($out, $command);\n\n                if (!isset($options['register-only']) && !isset($options['offline'])) {\n                    if ($this->config->isDefinedLayer('ftp')) {\n                        PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n                        $info = $this->installer->ftpInstall($param);\n                        PEAR::staticPopErrorHandling();\n                        if (PEAR::isError($info)) {\n                            $this->ui->outputData($info->getMessage());\n                            $this->ui->outputData(\"remote install failed: $label\");\n                        } else {\n                            $this->ui->outputData(\"remote install ok: $label\");\n                        }\n                    }\n                }\n            }\n\n            $deps = $param->getDeps();\n            if ($deps) {\n                if (isset($deps['group'])) {\n                    $groups = $deps['group'];\n                    if (!isset($groups[0])) {\n                        $groups = array($groups);\n                    }\n\n                    foreach ($groups as $group) {\n                        if ($group['attribs']['name'] == 'default') {\n                            // default group is always installed, unless the user\n                            // explicitly chooses to install another group\n                            continue;\n                        }\n                        $extrainfo[] = $param->getPackage() . ': Optional feature ' .\n                            $group['attribs']['name'] . ' available (' .\n                            $group['attribs']['hint'] . ')';\n                    }\n\n                    $extrainfo[] = $param->getPackage() .\n                        ': To install optional features use \"pear install ' .\n                        $reg->parsedPackageNameToString(\n                            array('package' => $param->getPackage(),\n                                  'channel' => $param->getChannel()), true) .\n                              '#featurename\"';\n                }\n            }\n\n            $pkg = &$instreg->getPackage($param->getPackage(), $param->getChannel());\n            // $pkg may be NULL if install is a 'fake' install via --packagingroot\n            if (is_object($pkg)) {\n                $pkg->setConfig($this->config);\n                if ($list = $pkg->listPostinstallScripts()) {\n                    $pn = $reg->parsedPackageNameToString(array('channel' =>\n                       $param->getChannel(), 'package' => $param->getPackage()), true);\n                    $extrainfo[] = $pn . ' has post-install scripts:';\n                    foreach ($list as $file) {\n                        $extrainfo[] = $file;\n                    }\n                    $extrainfo[] = $param->getPackage() .\n                        ': Use \"pear run-scripts ' . $pn . '\" to finish setup.';\n                    $extrainfo[] = 'DO NOT RUN SCRIPTS FROM UNTRUSTED SOURCES';\n                }\n            }\n        }\n\n        if (count($extrainfo)) {\n            foreach ($extrainfo as $info) {\n                $this->ui->outputData($info);\n            }\n        }\n\n        return true;\n    }\n\n    // }}}\n    // {{{ doUpgradeAll()\n\n    function doUpgradeAll($command, $options, $params)\n    {\n        $reg = &$this->config->getRegistry();\n        $upgrade = array();\n\n        if (isset($options['channel'])) {\n            $channels = array($options['channel']);\n        } else {\n            $channels = $reg->listChannels();\n        }\n\n        foreach ($channels as $channel) {\n            if ($channel == '__uri') {\n                continue;\n            }\n\n            // parse name with channel\n            foreach ($reg->listPackages($channel) as $name) {\n                $upgrade[] = $reg->parsedPackageNameToString(array(\n                        'channel' => $channel,\n                        'package' => $name\n                    ));\n            }\n        }\n\n        $err = $this->doInstall($command, $options, $upgrade);\n        if (PEAR::isError($err)) {\n            $this->ui->outputData($err->getMessage(), $command);\n        }\n   }\n\n    // }}}\n    // {{{ doUninstall()\n\n    function doUninstall($command, $options, $params)\n    {\n        if (count($params) < 1) {\n            return $this->raiseError(\"Please supply the package(s) you want to uninstall\");\n        }\n\n        if (empty($this->installer)) {\n            $this->installer = &$this->getInstaller($this->ui);\n        }\n\n        if (isset($options['remoteconfig'])) {\n            $e = $this->config->readFTPConfigFile($options['remoteconfig']);\n            if (!PEAR::isError($e)) {\n                $this->installer->setConfig($this->config);\n            }\n        }\n\n        $reg = &$this->config->getRegistry();\n        $newparams = array();\n        $binaries = array();\n        $badparams = array();\n        foreach ($params as $pkg) {\n            $channel = $this->config->get('default_channel');\n            PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n            $parsed = $reg->parsePackageName($pkg, $channel);\n            PEAR::staticPopErrorHandling();\n            if (!$parsed || PEAR::isError($parsed)) {\n                $badparams[] = $pkg;\n                continue;\n            }\n            $package = $parsed['package'];\n            $channel = $parsed['channel'];\n            $info = &$reg->getPackage($package, $channel);\n            if ($info === null &&\n                 ($channel == 'pear.php.net' || $channel == 'pecl.php.net')) {\n                // make sure this isn't a package that has flipped from pear to pecl but\n                // used a package.xml 1.0\n                $testc = ($channel == 'pear.php.net') ? 'pecl.php.net' : 'pear.php.net';\n                $info = &$reg->getPackage($package, $testc);\n                if ($info !== null) {\n                    $channel = $testc;\n                }\n            }\n            if ($info === null) {\n                $badparams[] = $pkg;\n            } else {\n                $newparams[] = &$info;\n                // check for binary packages (this is an alias for those packages if so)\n                if ($installedbinary = $info->getInstalledBinary()) {\n                    $this->ui->log('adding binary package ' .\n                        $reg->parsedPackageNameToString(array('channel' => $channel,\n                            'package' => $installedbinary), true));\n                    $newparams[] = &$reg->getPackage($installedbinary, $channel);\n                }\n                // add the contents of a dependency group to the list of installed packages\n                if (isset($parsed['group'])) {\n                    $group = $info->getDependencyGroup($parsed['group']);\n                    if ($group) {\n                        $installed = $reg->getInstalledGroup($group);\n                        if ($installed) {\n                            foreach ($installed as $i => $p) {\n                                $newparams[] = &$installed[$i];\n                            }\n                        }\n                    }\n                }\n            }\n        }\n        $err = $this->installer->sortPackagesForUninstall($newparams);\n        if (PEAR::isError($err)) {\n            $this->ui->outputData($err->getMessage(), $command);\n            return true;\n        }\n        $params = $newparams;\n        // twist this to use it to check on whether dependent packages are also being uninstalled\n        // for circular dependencies like subpackages\n        $this->installer->setUninstallPackages($newparams);\n        $params = array_merge($params, $badparams);\n        $binaries = array();\n        foreach ($params as $pkg) {\n            $this->installer->pushErrorHandling(PEAR_ERROR_RETURN);\n            if ($err = $this->installer->uninstall($pkg, $options)) {\n                $this->installer->popErrorHandling();\n                if (PEAR::isError($err)) {\n                    $this->ui->outputData($err->getMessage(), $command);\n                    continue;\n                }\n                if ($pkg->getPackageType() == 'extsrc' ||\n                      $pkg->getPackageType() == 'extbin' ||\n                      $pkg->getPackageType() == 'zendextsrc' ||\n                      $pkg->getPackageType() == 'zendextbin') {\n                    if ($instbin = $pkg->getInstalledBinary()) {\n                        continue; // this will be uninstalled later\n                    }\n\n                    foreach ($pkg->getFilelist() as $name => $atts) {\n                        $pinfo = pathinfo($atts['installed_as']);\n                        if (!isset($pinfo['extension']) ||\n                              in_array($pinfo['extension'], array('c', 'h'))) {\n                            continue; // make sure we don't match php_blah.h\n                        }\n                        if ((strpos($pinfo['basename'], 'php_') === 0 &&\n                              $pinfo['extension'] == 'dll') ||\n                              // most unices\n                              $pinfo['extension'] == 'so' ||\n                              // hp-ux\n                              $pinfo['extension'] == 'sl') {\n                            $binaries[] = array($atts['installed_as'], $pinfo);\n                            break;\n                        }\n                    }\n                    if (count($binaries)) {\n                        foreach ($binaries as $pinfo) {\n                            PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n                            $ret = $this->disableExtension(array($pinfo[0]), $pkg->getPackageType());\n                            PEAR::staticPopErrorHandling();\n                            if (PEAR::isError($ret)) {\n                                $extrainfo[] = $ret->getMessage();\n                                if ($pkg->getPackageType() == 'extsrc' ||\n                                      $pkg->getPackageType() == 'extbin') {\n                                    $exttype = 'extension';\n                                } else {\n                                    ob_start();\n                                    phpinfo(INFO_GENERAL);\n                                    $info = ob_get_contents();\n                                    ob_end_clean();\n                                    $debug = function_exists('leak') ? '_debug' : '';\n                                    $ts = preg_match('Thread Safety.+enabled', $info) ? '_ts' : '';\n                                    $exttype = 'zend_extension' . $debug . $ts;\n                                }\n                                $this->ui->outputData('Unable to remove \"' . $exttype . '=' .\n                                    $pinfo[1]['basename'] . '\" from php.ini', $command);\n                            } else {\n                                $this->ui->outputData('Extension ' . $pkg->getProvidesExtension() .\n                                    ' disabled in php.ini', $command);\n                            }\n                        }\n                    }\n                }\n                $savepkg = $pkg;\n                if ($this->config->get('verbose') > 0) {\n                    if (is_object($pkg)) {\n                        $pkg = $reg->parsedPackageNameToString($pkg);\n                    }\n                    $this->ui->outputData(\"uninstall ok: $pkg\", $command);\n                }\n                if (!isset($options['offline']) && is_object($savepkg) &&\n                      defined('PEAR_REMOTEINSTALL_OK')) {\n                    if ($this->config->isDefinedLayer('ftp')) {\n                        $this->installer->pushErrorHandling(PEAR_ERROR_RETURN);\n                        $info = $this->installer->ftpUninstall($savepkg);\n                        $this->installer->popErrorHandling();\n                        if (PEAR::isError($info)) {\n                            $this->ui->outputData($info->getMessage());\n                            $this->ui->outputData(\"remote uninstall failed: $pkg\");\n                        } else {\n                            $this->ui->outputData(\"remote uninstall ok: $pkg\");\n                        }\n                    }\n                }\n            } else {\n                $this->installer->popErrorHandling();\n                if (!is_object($pkg)) {\n                    return $this->raiseError(\"uninstall failed: $pkg\");\n                }\n                $pkg = $reg->parsedPackageNameToString($pkg);\n            }\n        }\n\n        return true;\n    }\n\n    // }}}\n\n\n    // }}}\n    // {{{ doBundle()\n    /*\n    (cox) It just downloads and untars the package, does not do\n            any check that the PEAR_Installer::_installFile() does.\n    */\n\n    function doBundle($command, $options, $params)\n    {\n        $opts = array(\n            'force'        => true,\n            'nodeps'       => true,\n            'soft'         => true,\n            'downloadonly' => true\n        );\n        $downloader = &$this->getDownloader($this->ui, $opts, $this->config);\n        $reg = &$this->config->getRegistry();\n        if (count($params) < 1) {\n            return $this->raiseError(\"Please supply the package you want to bundle\");\n        }\n\n        if (isset($options['destination'])) {\n            if (!is_dir($options['destination'])) {\n                System::mkdir('-p ' . $options['destination']);\n            }\n            $dest = realpath($options['destination']);\n        } else {\n            $pwd  = getcwd();\n            $dir  = $pwd . DIRECTORY_SEPARATOR . 'ext';\n            $dest = is_dir($dir) ? $dir : $pwd;\n        }\n        PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n        $err = $downloader->setDownloadDir($dest);\n        PEAR::staticPopErrorHandling();\n        if (PEAR::isError($err)) {\n            return PEAR::raiseError('download directory \"' . $dest .\n                '\" is not writeable.');\n        }\n        $result = &$downloader->download(array($params[0]));\n        if (PEAR::isError($result)) {\n            return $result;\n        }\n        if (!isset($result[0])) {\n            return $this->raiseError('unable to unpack ' . $params[0]);\n        }\n        $pkgfile = &$result[0]->getPackageFile();\n        $pkgname = $pkgfile->getName();\n        $pkgversion = $pkgfile->getVersion();\n\n        // Unpacking -------------------------------------------------\n        $dest .= DIRECTORY_SEPARATOR . $pkgname;\n        $orig = $pkgname . '-' . $pkgversion;\n\n        $tar = &new Archive_Tar($pkgfile->getArchiveFile());\n        if (!$tar->extractModify($dest, $orig)) {\n            return $this->raiseError('unable to unpack ' . $pkgfile->getArchiveFile());\n        }\n        $this->ui->outputData(\"Package ready at '$dest'\");\n    // }}}\n    }\n\n    // }}}\n\n    function doRunScripts($command, $options, $params)\n    {\n        if (!isset($params[0])) {\n            return $this->raiseError('run-scripts expects 1 parameter: a package name');\n        }\n\n        $reg = &$this->config->getRegistry();\n        PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n        $parsed = $reg->parsePackageName($params[0], $this->config->get('default_channel'));\n        PEAR::staticPopErrorHandling();\n        if (PEAR::isError($parsed)) {\n            return $this->raiseError($parsed);\n        }\n\n        $package = &$reg->getPackage($parsed['package'], $parsed['channel']);\n        if (!is_object($package)) {\n            return $this->raiseError('Could not retrieve package \"' . $params[0] . '\" from registry');\n        }\n\n        $package->setConfig($this->config);\n        $package->runPostinstallScripts();\n        $this->ui->outputData('Install scripts complete', $command);\n        return true;\n    }\n\n    /**\n     * Given a list of packages, filter out those ones that are already up to date\n     *\n     * @param $packages: packages, in parsed array format !\n     * @return list of packages that can be upgraded\n     */\n    function _filterUptodatePackages($packages, $command)\n    {\n        $reg = &$this->config->getRegistry();\n        $latestReleases = array();\n\n        $ret = array();\n        foreach ($packages as $package) {\n            if (isset($package['group'])) {\n                $ret[] = $package;\n                continue;\n            }\n\n            $channel = $package['channel'];\n            $name    = $package['package'];\n            if (!$reg->packageExists($name, $channel)) {\n                $ret[] = $package;\n                continue;\n            }\n\n            if (!isset($latestReleases[$channel])) {\n                // fill in cache for this channel\n                $chan = &$reg->getChannel($channel);\n                if (PEAR::isError($chan)) {\n                    return $this->raiseError($chan);\n                }\n\n                $base2 = false;\n                $preferred_mirror = $this->config->get('preferred_mirror', null, $channel);\n                if ($chan->supportsREST($preferred_mirror) &&\n                    (\n                       //($base2 = $chan->getBaseURL('REST1.4', $preferred_mirror)) ||\n                       ($base  = $chan->getBaseURL('REST1.0', $preferred_mirror))\n                    )\n                ) {\n                    $dorest = true;\n                }\n\n                PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n                if (!isset($package['state'])) {\n                    $state = $this->config->get('preferred_state', null, $channel);\n                } else {\n                    $state = $package['state'];\n                }\n\n                if ($dorest) {\n                    if ($base2) {\n                        $rest = &$this->config->getREST('1.4', array());\n                        $base = $base2;\n                    } else {\n                        $rest = &$this->config->getREST('1.0', array());\n                    }\n\n                    $installed = array_flip($reg->listPackages($channel));\n                    $latest    = $rest->listLatestUpgrades($base, $state, $installed, $channel, $reg);\n                }\n\n                PEAR::staticPopErrorHandling();\n                if (PEAR::isError($latest)) {\n                    $this->ui->outputData('Error getting channel info from ' . $channel .\n                        ': ' . $latest->getMessage());\n                    continue;\n                }\n\n                $latestReleases[$channel] = array_change_key_case($latest);\n            }\n\n            // check package for latest release\n            $name_lower = strtolower($name);\n            if (isset($latestReleases[$channel][$name_lower])) {\n                // if not set, up to date\n                $inst_version    = $reg->packageInfo($name, 'version', $channel);\n                $channel_version = $latestReleases[$channel][$name_lower]['version'];\n                if (version_compare($channel_version, $inst_version, 'le')) {\n                    // installed version is up-to-date\n                    continue;\n                }\n\n                // maintain BC\n                if ($command == 'upgrade-all') {\n                    $this->ui->outputData(array('data' => 'Will upgrade ' .\n                        $reg->parsedPackageNameToString($package)), $command);\n                }\n                $ret[] = $package;\n            }\n        }\n\n        return $ret;\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/Command/Install.xml",
    "content": "<commands version=\"1.0\">\n <install>\n  <summary>Install Package</summary>\n  <function>doInstall</function>\n  <shortcut>i</shortcut>\n  <options>\n   <force>\n    <shortopt>f</shortopt>\n    <doc>will overwrite newer installed packages</doc>\n   </force>\n   <loose>\n    <shortopt>l</shortopt>\n    <doc>do not check for recommended dependency version</doc>\n   </loose>\n   <nodeps>\n    <shortopt>n</shortopt>\n    <doc>ignore dependencies, install anyway</doc>\n   </nodeps>\n   <register-only>\n    <shortopt>r</shortopt>\n    <doc>do not install files, only register the package as installed</doc>\n   </register-only>\n   <soft>\n    <shortopt>s</shortopt>\n    <doc>soft install, fail silently, or upgrade if already installed</doc>\n   </soft>\n   <nobuild>\n    <shortopt>B</shortopt>\n    <doc>don&#039;t build C extensions</doc>\n   </nobuild>\n   <nocompress>\n    <shortopt>Z</shortopt>\n    <doc>request uncompressed files when downloading</doc>\n   </nocompress>\n   <installroot>\n    <shortopt>R</shortopt>\n    <doc>root directory used when installing files (ala PHP&#039;s INSTALL_ROOT), use packagingroot for RPM</doc>\n    <arg>DIR</arg>\n   </installroot>\n   <packagingroot>\n    <shortopt>P</shortopt>\n    <doc>root directory used when packaging files, like RPM packaging</doc>\n    <arg>DIR</arg>\n   </packagingroot>\n   <ignore-errors>\n    <shortopt></shortopt>\n    <doc>force install even if there were errors</doc>\n   </ignore-errors>\n   <alldeps>\n    <shortopt>a</shortopt>\n    <doc>install all required and optional dependencies</doc>\n   </alldeps>\n   <onlyreqdeps>\n    <shortopt>o</shortopt>\n    <doc>install all required dependencies</doc>\n   </onlyreqdeps>\n   <offline>\n    <shortopt>O</shortopt>\n    <doc>do not attempt to download any urls or contact channels</doc>\n   </offline>\n   <pretend>\n    <shortopt>p</shortopt>\n    <doc>Only list the packages that would be downloaded</doc>\n   </pretend>\n  </options>\n  <doc>[channel/]&lt;package&gt; ...\nInstalls one or more PEAR packages.  You can specify a package to\ninstall in four ways:\n\n&quot;Package-1.0.tgz&quot; : installs from a local file\n\n&quot;http://example.com/Package-1.0.tgz&quot; : installs from\nanywhere on the net.\n\n&quot;package.xml&quot; : installs the package described in\npackage.xml.  Useful for testing, or for wrapping a PEAR package in\nanother package manager such as RPM.\n\n&quot;Package[-version/state][.tar]&quot; : queries your default channel&#039;s server\n({config master_server}) and downloads the newest package with\nthe preferred quality/state ({config preferred_state}).\n\nTo retrieve Package version 1.1, use &quot;Package-1.1,&quot; to retrieve\nPackage state beta, use &quot;Package-beta.&quot;  To retrieve an uncompressed\nfile, append .tar (make sure there is no file by the same name first)\n\nTo download a package from another channel, prefix with the channel name like\n&quot;channel/Package&quot;\n\nMore than one package may be specified at once.  It is ok to mix these\nfour ways of specifying packages.\n</doc>\n </install>\n <upgrade>\n  <summary>Upgrade Package</summary>\n  <function>doInstall</function>\n  <shortcut>up</shortcut>\n  <options>\n   <channel>\n    <shortopt>c</shortopt>\n    <doc>upgrade packages from a specific channel</doc>\n    <arg>CHAN</arg>\n   </channel>\n   <force>\n    <shortopt>f</shortopt>\n    <doc>overwrite newer installed packages</doc>\n   </force>\n   <loose>\n    <shortopt>l</shortopt>\n    <doc>do not check for recommended dependency version</doc>\n   </loose>\n   <nodeps>\n    <shortopt>n</shortopt>\n    <doc>ignore dependencies, upgrade anyway</doc>\n   </nodeps>\n   <register-only>\n    <shortopt>r</shortopt>\n    <doc>do not install files, only register the package as upgraded</doc>\n   </register-only>\n   <nobuild>\n    <shortopt>B</shortopt>\n    <doc>don&#039;t build C extensions</doc>\n   </nobuild>\n   <nocompress>\n    <shortopt>Z</shortopt>\n    <doc>request uncompressed files when downloading</doc>\n   </nocompress>\n   <installroot>\n    <shortopt>R</shortopt>\n    <doc>root directory used when installing files (ala PHP&#039;s INSTALL_ROOT)</doc>\n    <arg>DIR</arg>\n   </installroot>\n   <ignore-errors>\n    <shortopt></shortopt>\n    <doc>force install even if there were errors</doc>\n   </ignore-errors>\n   <alldeps>\n    <shortopt>a</shortopt>\n    <doc>install all required and optional dependencies</doc>\n   </alldeps>\n   <onlyreqdeps>\n    <shortopt>o</shortopt>\n    <doc>install all required dependencies</doc>\n   </onlyreqdeps>\n   <offline>\n    <shortopt>O</shortopt>\n    <doc>do not attempt to download any urls or contact channels</doc>\n   </offline>\n   <pretend>\n    <shortopt>p</shortopt>\n    <doc>Only list the packages that would be downloaded</doc>\n   </pretend>\n  </options>\n  <doc>&lt;package&gt; ...\nUpgrades one or more PEAR packages.  See documentation for the\n&quot;install&quot; command for ways to specify a package.\n\nWhen upgrading, your package will be updated if the provided new\npackage has a higher version number (use the -f option if you need to\nupgrade anyway).\n\nMore than one package may be specified at once.\n</doc>\n </upgrade>\n <upgrade-all>\n  <summary>Upgrade All Packages [Deprecated in favor of calling upgrade with no parameters]</summary>\n  <function>doUpgradeAll</function>\n  <shortcut>ua</shortcut>\n  <options>\n   <channel>\n    <shortopt>c</shortopt>\n    <doc>upgrade packages from a specific channel</doc>\n    <arg>CHAN</arg>\n   </channel>\n   <nodeps>\n    <shortopt>n</shortopt>\n    <doc>ignore dependencies, upgrade anyway</doc>\n   </nodeps>\n   <register-only>\n    <shortopt>r</shortopt>\n    <doc>do not install files, only register the package as upgraded</doc>\n   </register-only>\n   <nobuild>\n    <shortopt>B</shortopt>\n    <doc>don&#039;t build C extensions</doc>\n   </nobuild>\n   <nocompress>\n    <shortopt>Z</shortopt>\n    <doc>request uncompressed files when downloading</doc>\n   </nocompress>\n   <installroot>\n    <shortopt>R</shortopt>\n    <doc>root directory used when installing files (ala PHP&#039;s INSTALL_ROOT), use packagingroot for RPM</doc>\n    <arg>DIR</arg>\n   </installroot>\n   <ignore-errors>\n    <shortopt></shortopt>\n    <doc>force install even if there were errors</doc>\n   </ignore-errors>\n   <loose>\n    <shortopt></shortopt>\n    <doc>do not check for recommended dependency version</doc>\n   </loose>\n  </options>\n  <doc>\nWARNING: This function is deprecated in favor of using the upgrade command with no params\n\nUpgrades all packages that have a newer release available.  Upgrades are\ndone only if there is a release available of the state specified in\n&quot;preferred_state&quot; (currently {config preferred_state}), or a state considered\nmore stable.\n</doc>\n </upgrade-all>\n <uninstall>\n  <summary>Un-install Package</summary>\n  <function>doUninstall</function>\n  <shortcut>un</shortcut>\n  <options>\n   <nodeps>\n    <shortopt>n</shortopt>\n    <doc>ignore dependencies, uninstall anyway</doc>\n   </nodeps>\n   <register-only>\n    <shortopt>r</shortopt>\n    <doc>do not remove files, only register the packages as not installed</doc>\n   </register-only>\n   <installroot>\n    <shortopt>R</shortopt>\n    <doc>root directory used when installing files (ala PHP&#039;s INSTALL_ROOT)</doc>\n    <arg>DIR</arg>\n   </installroot>\n   <ignore-errors>\n    <shortopt></shortopt>\n    <doc>force install even if there were errors</doc>\n   </ignore-errors>\n   <offline>\n    <shortopt>O</shortopt>\n    <doc>do not attempt to uninstall remotely</doc>\n   </offline>\n  </options>\n  <doc>[channel/]&lt;package&gt; ...\nUninstalls one or more PEAR packages.  More than one package may be\nspecified at once.  Prefix with channel name to uninstall from a\nchannel not in your default channel ({config default_channel})\n</doc>\n </uninstall>\n <bundle>\n  <summary>Unpacks a Pecl Package</summary>\n  <function>doBundle</function>\n  <shortcut>bun</shortcut>\n  <options>\n   <destination>\n    <shortopt>d</shortopt>\n    <doc>Optional destination directory for unpacking (defaults to current path or &quot;ext&quot; if exists)</doc>\n    <arg>DIR</arg>\n   </destination>\n   <force>\n    <shortopt>f</shortopt>\n    <doc>Force the unpacking even if there were errors in the package</doc>\n   </force>\n  </options>\n  <doc>&lt;package&gt;\nUnpacks a Pecl Package into the selected location. It will download the\npackage if needed.\n</doc>\n </bundle>\n <run-scripts>\n  <summary>Run Post-Install Scripts bundled with a package</summary>\n  <function>doRunScripts</function>\n  <shortcut>rs</shortcut>\n  <options />\n  <doc>&lt;package&gt;\nRun post-installation scripts in package &lt;package&gt;, if any exist.\n</doc>\n </run-scripts>\n</commands>"
  },
  {
    "path": "newscoop/include/PEAR/Command/Mirror.php",
    "content": "<?php\n/**\n * PEAR_Command_Mirror (download-all command)\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Alexander Merz <alexmerz@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Mirror.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.2.0\n */\n\n/**\n * base class\n */\nrequire_once 'PEAR/Command/Common.php';\n\n/**\n * PEAR commands for providing file mirrors\n *\n * @category   pear\n * @package    PEAR\n * @author     Alexander Merz <alexmerz@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.2.0\n */\nclass PEAR_Command_Mirror extends PEAR_Command_Common\n{\n    var $commands = array(\n        'download-all' => array(\n            'summary' => 'Downloads each available package from the default channel',\n            'function' => 'doDownloadAll',\n            'shortcut' => 'da',\n            'options' => array(\n                'channel' =>\n                    array(\n                    'shortopt' => 'c',\n                    'doc' => 'specify a channel other than the default channel',\n                    'arg' => 'CHAN',\n                    ),\n                ),\n            'doc' => '\nRequests a list of available packages from the default channel ({config default_channel})\nand downloads them to current working directory.  Note: only\npackages within preferred_state ({config preferred_state}) will be downloaded'\n            ),\n        );\n\n    /**\n     * PEAR_Command_Mirror constructor.\n     *\n     * @access public\n     * @param object PEAR_Frontend a reference to an frontend\n     * @param object PEAR_Config a reference to the configuration data\n     */\n    function PEAR_Command_Mirror(&$ui, &$config)\n    {\n        parent::PEAR_Command_Common($ui, $config);\n    }\n\n    /**\n     * For unit-testing\n     */\n    function &factory($a)\n    {\n        $a = &PEAR_Command::factory($a, $this->config);\n        return $a;\n    }\n\n    /**\n    * retrieves a list of avaible Packages from master server\n    * and downloads them\n    *\n    * @access public\n    * @param string $command the command\n    * @param array $options the command options before the command\n    * @param array $params the stuff after the command name\n    * @return bool true if succesful\n    * @throw PEAR_Error\n    */\n    function doDownloadAll($command, $options, $params)\n    {\n        $savechannel = $this->config->get('default_channel');\n        $reg = &$this->config->getRegistry();\n        $channel = isset($options['channel']) ? $options['channel'] :\n            $this->config->get('default_channel');\n        if (!$reg->channelExists($channel)) {\n            $this->config->set('default_channel', $savechannel);\n            return $this->raiseError('Channel \"' . $channel . '\" does not exist');\n        }\n        $this->config->set('default_channel', $channel);\n\n        $this->ui->outputData('Using Channel ' . $this->config->get('default_channel'));\n        $chan = $reg->getChannel($channel);\n        if (PEAR::isError($chan)) {\n            return $this->raiseError($chan);\n        }\n\n        if ($chan->supportsREST($this->config->get('preferred_mirror')) &&\n              $base = $chan->getBaseURL('REST1.0', $this->config->get('preferred_mirror'))) {\n            $rest = &$this->config->getREST('1.0', array());\n            $remoteInfo = array_flip($rest->listPackages($base, $channel));\n        }\n\n        if (PEAR::isError($remoteInfo)) {\n            return $remoteInfo;\n        }\n\n        $cmd = &$this->factory(\"download\");\n        if (PEAR::isError($cmd)) {\n            return $cmd;\n        }\n\n        $this->ui->outputData('Using Preferred State of ' .\n            $this->config->get('preferred_state'));\n        $this->ui->outputData('Gathering release information, please wait...');\n\n        /**\n         * Error handling not necessary, because already done by\n         * the download command\n         */\n        PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n        $err = $cmd->run('download', array('downloadonly' => true), array_keys($remoteInfo));\n        PEAR::staticPopErrorHandling();\n        $this->config->set('default_channel', $savechannel);\n        if (PEAR::isError($err)) {\n            $this->ui->outputData($err->getMessage());\n        }\n\n        return true;\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/Command/Mirror.xml",
    "content": "<commands version=\"1.0\">\n <download-all>\n  <summary>Downloads each available package from the default channel</summary>\n  <function>doDownloadAll</function>\n  <shortcut>da</shortcut>\n  <options>\n   <channel>\n    <shortopt>c</shortopt>\n    <doc>specify a channel other than the default channel</doc>\n    <arg>CHAN</arg>\n   </channel>\n  </options>\n  <doc>\nRequests a list of available packages from the default channel ({config default_channel})\nand downloads them to current working directory.  Note: only\npackages within preferred_state ({config preferred_state}) will be downloaded</doc>\n </download-all>\n</commands>"
  },
  {
    "path": "newscoop/include/PEAR/Command/Package.php",
    "content": "<?php\n/**\n * PEAR_Command_Package (package, package-validate, cvsdiff, cvstag, package-dependencies,\n * sign, makerpm, convert commands)\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Martin Jansen <mj@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Package.php 288113 2009-09-06 21:11:55Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 0.1\n */\n\n/**\n * base class\n */\nrequire_once 'PEAR/Command/Common.php';\n\n/**\n * PEAR commands for login/logout\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Martin Jansen <mj@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 0.1\n */\n\nclass PEAR_Command_Package extends PEAR_Command_Common\n{\n    var $commands = array(\n        'package' => array(\n            'summary' => 'Build Package',\n            'function' => 'doPackage',\n            'shortcut' => 'p',\n            'options' => array(\n                'nocompress' => array(\n                    'shortopt' => 'Z',\n                    'doc' => 'Do not gzip the package file'\n                    ),\n                'showname' => array(\n                    'shortopt' => 'n',\n                    'doc' => 'Print the name of the packaged file.',\n                    ),\n                ),\n            'doc' => '[descfile] [descfile2]\nCreates a PEAR package from its description file (usually called\npackage.xml).  If a second packagefile is passed in, then\nthe packager will check to make sure that one is a package.xml\nversion 1.0, and the other is a package.xml version 2.0.  The\npackage.xml version 1.0 will be saved as \"package.xml\" in the archive,\nand the other as \"package2.xml\" in the archive\"\n'\n            ),\n        'package-validate' => array(\n            'summary' => 'Validate Package Consistency',\n            'function' => 'doPackageValidate',\n            'shortcut' => 'pv',\n            'options' => array(),\n            'doc' => '\n',\n            ),\n        'cvsdiff' => array(\n            'summary' => 'Run a \"cvs diff\" for all files in a package',\n            'function' => 'doCvsDiff',\n            'shortcut' => 'cd',\n            'options' => array(\n                'quiet' => array(\n                    'shortopt' => 'q',\n                    'doc' => 'Be quiet',\n                    ),\n                'reallyquiet' => array(\n                    'shortopt' => 'Q',\n                    'doc' => 'Be really quiet',\n                    ),\n                'date' => array(\n                    'shortopt' => 'D',\n                    'doc' => 'Diff against revision of DATE',\n                    'arg' => 'DATE',\n                    ),\n                'release' => array(\n                    'shortopt' => 'R',\n                    'doc' => 'Diff against tag for package release REL',\n                    'arg' => 'REL',\n                    ),\n                'revision' => array(\n                    'shortopt' => 'r',\n                    'doc' => 'Diff against revision REV',\n                    'arg' => 'REV',\n                    ),\n                'context' => array(\n                    'shortopt' => 'c',\n                    'doc' => 'Generate context diff',\n                    ),\n                'unified' => array(\n                    'shortopt' => 'u',\n                    'doc' => 'Generate unified diff',\n                    ),\n                'ignore-case' => array(\n                    'shortopt' => 'i',\n                    'doc' => 'Ignore case, consider upper- and lower-case letters equivalent',\n                    ),\n                'ignore-whitespace' => array(\n                    'shortopt' => 'b',\n                    'doc' => 'Ignore changes in amount of white space',\n                    ),\n                'ignore-blank-lines' => array(\n                    'shortopt' => 'B',\n                    'doc' => 'Ignore changes that insert or delete blank lines',\n                    ),\n                'brief' => array(\n                    'doc' => 'Report only whether the files differ, no details',\n                    ),\n                'dry-run' => array(\n                    'shortopt' => 'n',\n                    'doc' => 'Don\\'t do anything, just pretend',\n                    ),\n                ),\n            'doc' => '<package.xml>\nCompares all the files in a package.  Without any options, this\ncommand will compare the current code with the last checked-in code.\nUsing the -r or -R option you may compare the current code with that\nof a specific release.\n',\n            ),\n         'svntag' => array(\n             'summary' => 'Set SVN Release Tag',\n             'function' => 'doSvnTag',\n             'shortcut' => 'sv',\n             'options' => array(\n                 'quiet' => array(\n                     'shortopt' => 'q',\n                     'doc' => 'Be quiet',\n                     ),\n                 'slide' => array(\n                     'shortopt' => 'F',\n                     'doc' => 'Move (slide) tag if it exists',\n                     ),\n                 'delete' => array(\n                     'shortopt' => 'd',\n                     'doc' => 'Remove tag',\n                     ),\n                 'dry-run' => array(\n                     'shortopt' => 'n',\n                     'doc' => 'Don\\'t do anything, just pretend',\n                     ),\n                 ),\n             'doc' => '<package.xml> [files...]\n Sets a SVN tag on all files in a package.  Use this command after you have\n packaged a distribution tarball with the \"package\" command to tag what\n revisions of what files were in that release.  If need to fix something\n after running cvstag once, but before the tarball is released to the public,\n use the \"slide\" option to move the release tag.\n\n to include files (such as a second package.xml, or tests not included in the\n release), pass them as additional parameters.\n ',\n             ),\n        'cvstag' => array(\n            'summary' => 'Set CVS Release Tag',\n            'function' => 'doCvsTag',\n            'shortcut' => 'ct',\n            'options' => array(\n                'quiet' => array(\n                    'shortopt' => 'q',\n                    'doc' => 'Be quiet',\n                    ),\n                'reallyquiet' => array(\n                    'shortopt' => 'Q',\n                    'doc' => 'Be really quiet',\n                    ),\n                'slide' => array(\n                    'shortopt' => 'F',\n                    'doc' => 'Move (slide) tag if it exists',\n                    ),\n                'delete' => array(\n                    'shortopt' => 'd',\n                    'doc' => 'Remove tag',\n                    ),\n                'dry-run' => array(\n                    'shortopt' => 'n',\n                    'doc' => 'Don\\'t do anything, just pretend',\n                    ),\n                ),\n            'doc' => '<package.xml> [files...]\nSets a CVS tag on all files in a package.  Use this command after you have\npackaged a distribution tarball with the \"package\" command to tag what\nrevisions of what files were in that release.  If need to fix something\nafter running cvstag once, but before the tarball is released to the public,\nuse the \"slide\" option to move the release tag.\n\nto include files (such as a second package.xml, or tests not included in the\nrelease), pass them as additional parameters.\n',\n            ),\n        'package-dependencies' => array(\n            'summary' => 'Show package dependencies',\n            'function' => 'doPackageDependencies',\n            'shortcut' => 'pd',\n            'options' => array(),\n            'doc' => '<package-file> or <package.xml> or <install-package-name>\nList all dependencies the package has.\nCan take a tgz / tar file, package.xml or a package name of an installed package.'\n            ),\n        'sign' => array(\n            'summary' => 'Sign a package distribution file',\n            'function' => 'doSign',\n            'shortcut' => 'si',\n            'options' => array(\n                'verbose' => array(\n                    'shortopt' => 'v',\n                    'doc' => 'Display GnuPG output',\n                    ),\n            ),\n            'doc' => '<package-file>\nSigns a package distribution (.tar or .tgz) file with GnuPG.',\n            ),\n        'makerpm' => array(\n            'summary' => 'Builds an RPM spec file from a PEAR package',\n            'function' => 'doMakeRPM',\n            'shortcut' => 'rpm',\n            'options' => array(\n                'spec-template' => array(\n                    'shortopt' => 't',\n                    'arg' => 'FILE',\n                    'doc' => 'Use FILE as RPM spec file template'\n                    ),\n                'rpm-pkgname' => array(\n                    'shortopt' => 'p',\n                    'arg' => 'FORMAT',\n                    'doc' => 'Use FORMAT as format string for RPM package name, %s is replaced\nby the PEAR package name, defaults to \"PEAR::%s\".',\n                    ),\n                ),\n            'doc' => '<package-file>\n\nCreates an RPM .spec file for wrapping a PEAR package inside an RPM\npackage.  Intended to be used from the SPECS directory, with the PEAR\npackage tarball in the SOURCES directory:\n\n$ pear makerpm ../SOURCES/Net_Socket-1.0.tgz\nWrote RPM spec file PEAR::Net_Geo-1.0.spec\n$ rpm -bb PEAR::Net_Socket-1.0.spec\n...\nWrote: /usr/src/redhat/RPMS/i386/PEAR::Net_Socket-1.0-1.i386.rpm\n',\n            ),\n        'convert' => array(\n            'summary' => 'Convert a package.xml 1.0 to package.xml 2.0 format',\n            'function' => 'doConvert',\n            'shortcut' => 'c2',\n            'options' => array(\n                'flat' => array(\n                    'shortopt' => 'f',\n                    'doc' => 'do not beautify the filelist.',\n                    ),\n                ),\n            'doc' => '[descfile] [descfile2]\nConverts a package.xml in 1.0 format into a package.xml\nin 2.0 format.  The new file will be named package2.xml by default,\nand package.xml will be used as the old file by default.\nThis is not the most intelligent conversion, and should only be\nused for automated conversion or learning the format.\n'\n            ),\n        );\n\n    var $output;\n\n    /**\n     * PEAR_Command_Package constructor.\n     *\n     * @access public\n     */\n    function PEAR_Command_Package(&$ui, &$config)\n    {\n        parent::PEAR_Command_Common($ui, $config);\n    }\n\n    function _displayValidationResults($err, $warn, $strict = false)\n    {\n        foreach ($err as $e) {\n            $this->output .= \"Error: $e\\n\";\n        }\n        foreach ($warn as $w) {\n            $this->output .= \"Warning: $w\\n\";\n        }\n        $this->output .= sprintf('Validation: %d error(s), %d warning(s)'.\"\\n\",\n                                       sizeof($err), sizeof($warn));\n        if ($strict && count($err) > 0) {\n            $this->output .= \"Fix these errors and try again.\";\n            return false;\n        }\n        return true;\n    }\n\n    function &getPackager()\n    {\n        if (!class_exists('PEAR_Packager')) {\n            require_once 'PEAR/Packager.php';\n        }\n        $a = &new PEAR_Packager;\n        return $a;\n    }\n\n    function &getPackageFile($config, $debug = false)\n    {\n        if (!class_exists('PEAR_Common')) {\n            require_once 'PEAR/Common.php';\n        }\n        if (!class_exists('PEAR_PackageFile')) {\n            require_once 'PEAR/PackageFile.php';\n        }\n        $a = &new PEAR_PackageFile($config, $debug);\n        $common = new PEAR_Common;\n        $common->ui = $this->ui;\n        $a->setLogger($common);\n        return $a;\n    }\n\n    function doPackage($command, $options, $params)\n    {\n        $this->output = '';\n        $pkginfofile = isset($params[0]) ? $params[0] : 'package.xml';\n        $pkg2 = isset($params[1]) ? $params[1] : null;\n        if (!$pkg2 && !isset($params[0]) && file_exists('package2.xml')) {\n            $pkg2 = 'package2.xml';\n        }\n\n        $packager = &$this->getPackager();\n        $compress = empty($options['nocompress']) ? true : false;\n        $result   = $packager->package($pkginfofile, $compress, $pkg2);\n        if (PEAR::isError($result)) {\n            return $this->raiseError($result);\n        }\n\n        // Don't want output, only the package file name just created\n        if (isset($options['showname'])) {\n            $this->output = $result;\n        }\n\n        if ($this->output) {\n            $this->ui->outputData($this->output, $command);\n        }\n\n        return true;\n    }\n\n    function doPackageValidate($command, $options, $params)\n    {\n        $this->output = '';\n        if (count($params) < 1) {\n            $params[0] = 'package.xml';\n        }\n\n        $obj = &$this->getPackageFile($this->config, $this->_debug);\n        $obj->rawReturn();\n        PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n        $info = $obj->fromTgzFile($params[0], PEAR_VALIDATE_NORMAL);\n        if (PEAR::isError($info)) {\n            $info = $obj->fromPackageFile($params[0], PEAR_VALIDATE_NORMAL);\n        } else {\n            $archive = $info->getArchiveFile();\n            $tar = &new Archive_Tar($archive);\n            $tar->extract(dirname($info->getPackageFile()));\n            $info->setPackageFile(dirname($info->getPackageFile()) . DIRECTORY_SEPARATOR .\n                $info->getPackage() . '-' . $info->getVersion() . DIRECTORY_SEPARATOR .\n                basename($info->getPackageFile()));\n        }\n\n        PEAR::staticPopErrorHandling();\n        if (PEAR::isError($info)) {\n            return $this->raiseError($info);\n        }\n\n        $valid = false;\n        if ($info->getPackagexmlVersion() == '2.0') {\n            if ($valid = $info->validate(PEAR_VALIDATE_NORMAL)) {\n                $info->flattenFileList();\n                $valid = $info->validate(PEAR_VALIDATE_PACKAGING);\n            }\n        } else {\n            $valid = $info->validate(PEAR_VALIDATE_PACKAGING);\n        }\n\n        $err = $warn = array();\n        if ($errors = $info->getValidationWarnings()) {\n            foreach ($errors as $error) {\n                if ($error['level'] == 'warning') {\n                    $warn[] = $error['message'];\n                } else {\n                    $err[] = $error['message'];\n                }\n            }\n        }\n\n        $this->_displayValidationResults($err, $warn);\n        $this->ui->outputData($this->output, $command);\n        return true;\n    }\n\n    function doSvnTag($command, $options, $params)\n    {\n        $this->output = '';\n        $_cmd = $command;\n        if (count($params) < 1) {\n            $help = $this->getHelp($command);\n            return $this->raiseError(\"$command: missing parameter: $help[0]\");\n        }\n\n        $packageFile = realpath($params[0]);\n        $dir = dirname($packageFile);\n        $dir = substr($dir, strrpos($dir, '/') + 1);\n        $obj  = &$this->getPackageFile($this->config, $this->_debug);\n        $info = $obj->fromAnyFile($packageFile, PEAR_VALIDATE_NORMAL);\n        if (PEAR::isError($info)) {\n            return $this->raiseError($info);\n        }\n\n        $err = $warn = array();\n        if (!$info->validate()) {\n            foreach ($info->getValidationWarnings() as $error) {\n                if ($error['level'] == 'warning') {\n                    $warn[] = $error['message'];\n                } else {\n                    $err[] = $error['message'];\n                }\n            }\n        }\n\n        if (!$this->_displayValidationResults($err, $warn, true)) {\n            $this->ui->outputData($this->output, $command);\n            return $this->raiseError('SVN tag failed');\n        }\n\n        $version    = $info->getVersion();\n        $package    = $info->getName();\n        $svntag     = \"$package-$version\";\n\n        if (isset($options['delete'])) {\n            return $this->_svnRemoveTag($version, $package, $svntag, $packageFile, $options);\n        }\n\n        $path = $this->_svnFindPath($packageFile);\n\n        // Check if there are any modified files\n        $fp = popen('svn st --xml ' . dirname($packageFile), \"r\");\n        $out = '';\n        while ($line = fgets($fp, 1024)) {\n            $out .= rtrim($line).\"\\n\";\n        }\n        pclose($fp);\n\n        if (!isset($options['quiet']) && strpos($out, 'item=\"modified\"')) {\n            $params = array(array(\n                'name' => 'modified',\n                'type' => 'yesno',\n                'default' => 'no',\n                'prompt' => 'You have files in your SVN checkout (' . $path['from']  . ') that have been modified but not commited, do you still want to tag ' . $version . '?',\n            ));\n            $answers = $this->ui->confirmDialog($params);\n\n            if (!in_array($answers['modified'], array('y', 'yes', 'on', '1'))) {\n                return true;\n            }\n        }\n\n        if (isset($options['slide'])) {\n            $this->_svnRemoveTag($version, $package, $svntag, $packageFile, $options);\n        }\n\n        // Check if tag already exists\n        $releaseTag = $path['local']['base'] . 'tags/' . $svntag;\n        $existsCommand = 'svn ls ' . $path['base'] . 'tags/';\n\n        $fp = popen($existsCommand, \"r\");\n        $out = '';\n        while ($line = fgets($fp, 1024)) {\n            $out .= rtrim($line).\"\\n\";\n        }\n        pclose($fp);\n\n        if (in_array($svntag . '/', explode(\"\\n\", $out))) {\n            $this->ui->outputData($this->output, $command);\n            return $this->raiseError('SVN tag ' . $svntag . ' for ' . $package . ' already exists.');\n        } elseif (file_exists($path['local']['base'] . 'tags') === false) {\n            return $this->raiseError('Can not locate the tags directory at ' . $path['local']['base'] . 'tags');\n        } elseif (is_writeable($path['local']['base'] . 'tags') === false) {\n            return $this->raiseError('Can not write to the tag directory at ' . $path['local']['base'] . 'tags');\n        } else {\n            $makeCommand = 'svn mkdir ' . $releaseTag;\n            $this->output .= \"+ $makeCommand\\n\";\n            if (empty($options['dry-run'])) {\n                // We need to create the tag dir.\n                $fp = popen($makeCommand, \"r\");\n                $out = '';\n                while ($line = fgets($fp, 1024)) {\n                    $out .= rtrim($line).\"\\n\";\n                }\n                pclose($fp);\n                $this->output .= \"$out\\n\";\n            }\n        }\n\n        $command = 'svn';\n        if (isset($options['quiet'])) {\n            $command .= ' -q';\n        }\n\n        $command .= ' copy --parents ';\n\n        $dir   = dirname($packageFile);\n        $dir   = substr($dir, strrpos($dir, '/') + 1);\n        $files = array_keys($info->getFilelist());\n\n        array_shift($params);\n        if (count($params)) {\n            // add in additional files to be tagged (package files and such)\n            $files = array_merge($files, $params);\n        }\n\n        $commands = array();\n        foreach ($files as $file) {\n            if (!file_exists($file)) {\n                $file = $dir . DIRECTORY_SEPARATOR . $file;\n            }\n            $commands[] = $command . ' ' . escapeshellarg($file) . ' ' .\n                          escapeshellarg($releaseTag . DIRECTORY_SEPARATOR . $file);\n        }\n\n        $this->output .= implode(\"\\n\", $commands) . \"\\n\";\n        if (empty($options['dry-run'])) {\n            foreach ($commands as $command) {\n                $fp = popen($command, \"r\");\n                while ($line = fgets($fp, 1024)) {\n                    $this->output .= rtrim($line).\"\\n\";\n                }\n                pclose($fp);\n            }\n        }\n\n        $command = 'svn ci -m \"Tagging the ' . $version  . ' release\" ' . $releaseTag . \"\\n\";\n        $this->output .= \"+ $command\\n\";\n        if (empty($options['dry-run'])) {\n            $fp = popen($command, \"r\");\n            while ($line = fgets($fp, 1024)) {\n                $this->output .= rtrim($line).\"\\n\";\n            }\n            pclose($fp);\n        }\n\n        $this->ui->outputData($this->output, $_cmd);\n        return true;\n    }\n\n    function _svnFindPath($file)\n    {\n        $xml = '';\n        $command = \"svn info --xml $file\";\n        $fp = popen($command, \"r\");\n        while ($line = fgets($fp, 1024)) {\n            $xml .= rtrim($line).\"\\n\";\n        }\n        pclose($fp);\n        $url_tag = strpos($xml, '<url>');\n        $url = substr($xml, $url_tag + 5, strpos($xml, '</url>', $url_tag + 5) - ($url_tag + 5));\n\n        $path = array();\n        $path['from'] = substr($url, 0, strrpos($url, '/'));\n        $path['base'] = substr($path['from'], 0, strrpos($path['from'], '/') + 1);\n\n        // Figure out the local paths\n        $pos = strpos($file, '/trunk/');\n        if ($pos === false) {\n            $pos = strpos($file, '/branches/');\n        }\n        $path['local']['base'] = substr($file, 0, $pos + 1);\n\n        return $path;\n    }\n\n    function _svnRemoveTag($version, $package, $tag, $packageFile, $options)\n    {\n        $command = 'svn';\n\n        if (isset($options['quiet'])) {\n            $command .= ' -q';\n        }\n\n        $command .= ' remove';\n        $command .= ' -m \"Removing tag for the ' . $version  . ' release.\"';\n\n        $path = $this->_svnFindPath($packageFile);\n        $command .= ' ' . $path['base'] . 'tags/' . $tag;\n\n\n        if ($this->config->get('verbose') > 1) {\n            $this->output .= \"+ $command\\n\";\n        }\n\n        $this->output .= \"+ $command\\n\";\n        if (empty($options['dry-run'])) {\n            $fp = popen($command, \"r\");\n            while ($line = fgets($fp, 1024)) {\n                $this->output .= rtrim($line).\"\\n\";\n            }\n            pclose($fp);\n        }\n\n        $this->ui->outputData($this->output, $command);\n        return true;\n    }\n\n    function doCvsTag($command, $options, $params)\n    {\n        $this->output = '';\n        $_cmd = $command;\n        if (count($params) < 1) {\n            $help = $this->getHelp($command);\n            return $this->raiseError(\"$command: missing parameter: $help[0]\");\n        }\n\n        $packageFile = realpath($params[0]);\n        $obj  = &$this->getPackageFile($this->config, $this->_debug);\n        $info = $obj->fromAnyFile($packageFile, PEAR_VALIDATE_NORMAL);\n        if (PEAR::isError($info)) {\n            return $this->raiseError($info);\n        }\n\n        $err = $warn = array();\n        if (!$info->validate()) {\n            foreach ($info->getValidationWarnings() as $error) {\n                if ($error['level'] == 'warning') {\n                    $warn[] = $error['message'];\n                } else {\n                    $err[] = $error['message'];\n                }\n            }\n        }\n\n        if (!$this->_displayValidationResults($err, $warn, true)) {\n            $this->ui->outputData($this->output, $command);\n            return $this->raiseError('CVS tag failed');\n        }\n\n        $version    = $info->getVersion();\n        $cvsversion = preg_replace('/[^a-z0-9]/i', '_', $version);\n        $cvstag     = \"RELEASE_$cvsversion\";\n        $files      = array_keys($info->getFilelist());\n        $command = 'cvs';\n        if (isset($options['quiet'])) {\n            $command .= ' -q';\n        }\n\n        if (isset($options['reallyquiet'])) {\n            $command .= ' -Q';\n        }\n\n        $command .= ' tag';\n        if (isset($options['slide'])) {\n            $command .= ' -F';\n        }\n\n        if (isset($options['delete'])) {\n            $command .= ' -d';\n        }\n\n        $command .= ' ' . $cvstag . ' ' . escapeshellarg($params[0]);\n        array_shift($params);\n        if (count($params)) {\n            // add in additional files to be tagged\n            $files = array_merge($files, $params);\n        }\n\n        $dir = dirname($packageFile);\n        $dir = substr($dir, strrpos($dir, '/') + 1);\n        foreach ($files as $file) {\n            if (!file_exists($file)) {\n                $file = $dir . DIRECTORY_SEPARATOR . $file;\n            }\n            $command .= ' ' . escapeshellarg($file);\n        }\n\n        if ($this->config->get('verbose') > 1) {\n            $this->output .= \"+ $command\\n\";\n        }\n\n        $this->output .= \"+ $command\\n\";\n        if (empty($options['dry-run'])) {\n            $fp = popen($command, \"r\");\n            while ($line = fgets($fp, 1024)) {\n                $this->output .= rtrim($line).\"\\n\";\n            }\n            pclose($fp);\n        }\n\n        $this->ui->outputData($this->output, $_cmd);\n        return true;\n    }\n\n    function doCvsDiff($command, $options, $params)\n    {\n        $this->output = '';\n        if (sizeof($params) < 1) {\n            $help = $this->getHelp($command);\n            return $this->raiseError(\"$command: missing parameter: $help[0]\");\n        }\n\n        $file = realpath($params[0]);\n        $obj  = &$this->getPackageFile($this->config, $this->_debug);\n        $info = $obj->fromAnyFile($file, PEAR_VALIDATE_NORMAL);\n        if (PEAR::isError($info)) {\n            return $this->raiseError($info);\n        }\n\n        $err = $warn = array();\n        if (!$info->validate()) {\n            foreach ($info->getValidationWarnings() as $error) {\n                if ($error['level'] == 'warning') {\n                    $warn[] = $error['message'];\n                } else {\n                    $err[] = $error['message'];\n                }\n            }\n        }\n\n        if (!$this->_displayValidationResults($err, $warn, true)) {\n            $this->ui->outputData($this->output, $command);\n            return $this->raiseError('CVS diff failed');\n        }\n\n        $info1 = $info->getFilelist();\n        $files = $info1;\n        $cmd = \"cvs\";\n        if (isset($options['quiet'])) {\n            $cmd .= ' -q';\n            unset($options['quiet']);\n        }\n\n        if (isset($options['reallyquiet'])) {\n            $cmd .= ' -Q';\n            unset($options['reallyquiet']);\n        }\n\n        if (isset($options['release'])) {\n            $cvsversion = preg_replace('/[^a-z0-9]/i', '_', $options['release']);\n            $cvstag = \"RELEASE_$cvsversion\";\n            $options['revision'] = $cvstag;\n            unset($options['release']);\n        }\n\n        $execute = true;\n        if (isset($options['dry-run'])) {\n            $execute = false;\n            unset($options['dry-run']);\n        }\n\n        $cmd .= ' diff';\n        // the rest of the options are passed right on to \"cvs diff\"\n        foreach ($options as $option => $optarg) {\n            $arg = $short = false;\n            if (isset($this->commands[$command]['options'][$option])) {\n                $arg = $this->commands[$command]['options'][$option]['arg'];\n                $short = $this->commands[$command]['options'][$option]['shortopt'];\n            }\n            $cmd .= $short ? \" -$short\" : \" --$option\";\n            if ($arg && $optarg) {\n                $cmd .= ($short ? '' : '=') . escapeshellarg($optarg);\n            }\n        }\n\n        foreach ($files as $file) {\n            $cmd .= ' ' . escapeshellarg($file['name']);\n        }\n\n        if ($this->config->get('verbose') > 1) {\n            $this->output .= \"+ $cmd\\n\";\n        }\n\n        if ($execute) {\n            $fp = popen($cmd, \"r\");\n            while ($line = fgets($fp, 1024)) {\n                $this->output .= rtrim($line).\"\\n\";\n            }\n            pclose($fp);\n        }\n\n        $this->ui->outputData($this->output, $command);\n        return true;\n    }\n\n    function doPackageDependencies($command, $options, $params)\n    {\n        // $params[0] -> the PEAR package to list its information\n        if (count($params) !== 1) {\n            return $this->raiseError(\"bad parameter(s), try \\\"help $command\\\"\");\n        }\n\n        $obj = &$this->getPackageFile($this->config, $this->_debug);\n        if (is_file($params[0]) || strpos($params[0], '.xml') > 0) {\n           $info = $obj->fromAnyFile($params[0], PEAR_VALIDATE_NORMAL);\n        } else {\n            $reg  = $this->config->getRegistry();\n            $info = $obj->fromArray($reg->packageInfo($params[0]));\n        }\n\n        if (PEAR::isError($info)) {\n            return $this->raiseError($info);\n        }\n\n        $deps = $info->getDeps();\n        if (is_array($deps)) {\n            if ($info->getPackagexmlVersion() == '1.0') {\n                $data = array(\n                    'caption' => 'Dependencies for pear/' . $info->getPackage(),\n                    'border' => true,\n                    'headline' => array(\"Required?\", \"Type\", \"Name\", \"Relation\", \"Version\"),\n                    );\n\n                foreach ($deps as $d) {\n                    if (isset($d['optional'])) {\n                        if ($d['optional'] == 'yes') {\n                            $req = 'No';\n                        } else {\n                            $req = 'Yes';\n                        }\n                    } else {\n                        $req = 'Yes';\n                    }\n\n                    if (isset($this->_deps_rel_trans[$d['rel']])) {\n                        $rel = $this->_deps_rel_trans[$d['rel']];\n                    } else {\n                        $rel = $d['rel'];\n                    }\n\n                    if (isset($this->_deps_type_trans[$d['type']])) {\n                        $type = ucfirst($this->_deps_type_trans[$d['type']]);\n                    } else {\n                        $type = $d['type'];\n                    }\n\n                    if (isset($d['name'])) {\n                        $name = $d['name'];\n                    } else {\n                        $name = '';\n                    }\n\n                    if (isset($d['version'])) {\n                        $version = $d['version'];\n                    } else {\n                        $version = '';\n                    }\n\n                    $data['data'][] = array($req, $type, $name, $rel, $version);\n                }\n            } else { // package.xml 2.0 dependencies display\n                require_once 'PEAR/Dependency2.php';\n                $deps = $info->getDependencies();\n                $reg = &$this->config->getRegistry();\n                if (is_array($deps)) {\n                    $d = new PEAR_Dependency2($this->config, array(), '');\n                    $data = array(\n                        'caption' => 'Dependencies for ' . $info->getPackage(),\n                        'border' => true,\n                        'headline' => array(\"Required?\", \"Type\", \"Name\", 'Versioning', 'Group'),\n                        );\n                    foreach ($deps as $type => $subd) {\n                        $req = ($type == 'required') ? 'Yes' : 'No';\n                        if ($type == 'group') {\n                            $group = $subd['attribs']['name'];\n                        } else {\n                            $group = '';\n                        }\n\n                        if (!isset($subd[0])) {\n                            $subd = array($subd);\n                        }\n\n                        foreach ($subd as $groupa) {\n                            foreach ($groupa as $deptype => $depinfo) {\n                                if ($deptype == 'attribs') {\n                                    continue;\n                                }\n\n                                if ($deptype == 'pearinstaller') {\n                                    $deptype = 'pear Installer';\n                                }\n\n                                if (!isset($depinfo[0])) {\n                                    $depinfo = array($depinfo);\n                                }\n\n                                foreach ($depinfo as $inf) {\n                                    $name = '';\n                                    if (isset($inf['channel'])) {\n                                        $alias = $reg->channelAlias($inf['channel']);\n                                        if (!$alias) {\n                                            $alias = '(channel?) ' .$inf['channel'];\n                                        }\n                                        $name = $alias . '/';\n\n                                    }\n                                    if (isset($inf['name'])) {\n                                        $name .= $inf['name'];\n                                    } elseif (isset($inf['pattern'])) {\n                                        $name .= $inf['pattern'];\n                                    } else {\n                                        $name .= '';\n                                    }\n\n                                    if (isset($inf['uri'])) {\n                                        $name .= ' [' . $inf['uri'] .  ']';\n                                    }\n\n                                    if (isset($inf['conflicts'])) {\n                                        $ver = 'conflicts';\n                                    } else {\n                                        $ver = $d->_getExtraString($inf);\n                                    }\n\n                                    $data['data'][] = array($req, ucfirst($deptype), $name,\n                                        $ver, $group);\n                                }\n                            }\n                        }\n                    }\n                }\n            }\n\n            $this->ui->outputData($data, $command);\n            return true;\n        }\n\n        // Fallback\n        $this->ui->outputData(\"This package does not have any dependencies.\", $command);\n    }\n\n    function doSign($command, $options, $params)\n    {\n        // should move most of this code into PEAR_Packager\n        // so it'll be easy to implement \"pear package --sign\"\n        if (count($params) !== 1) {\n            return $this->raiseError(\"bad parameter(s), try \\\"help $command\\\"\");\n        }\n\n        require_once 'System.php';\n        require_once 'Archive/Tar.php';\n\n        if (!file_exists($params[0])) {\n            return $this->raiseError(\"file does not exist: $params[0]\");\n        }\n\n        $obj = $this->getPackageFile($this->config, $this->_debug);\n        $info = $obj->fromTgzFile($params[0], PEAR_VALIDATE_NORMAL);\n        if (PEAR::isError($info)) {\n            return $this->raiseError($info);\n        }\n\n        $tar = new Archive_Tar($params[0]);\n\n        $tmpdir = $this->config->get('temp_dir');\n        $tmpdir = System::mktemp(\" -t $tmpdir -d pearsign\");\n        if (!$tar->extractList('package2.xml package.xml package.sig', $tmpdir)) {\n            return $this->raiseError(\"failed to extract tar file\");\n        }\n\n        if (file_exists(\"$tmpdir/package.sig\")) {\n            return $this->raiseError(\"package already signed\");\n        }\n\n        $packagexml = 'package.xml';\n        if (file_exists(\"$tmpdir/package2.xml\")) {\n            $packagexml = 'package2.xml';\n        }\n\n        if (file_exists(\"$tmpdir/package.sig\")) {\n            unlink(\"$tmpdir/package.sig\");\n        }\n\n        if (!file_exists(\"$tmpdir/$packagexml\")) {\n            return $this->raiseError(\"Extracted file $tmpdir/$packagexml not found.\");\n        }\n\n        $input = $this->ui->userDialog($command,\n                                       array('GnuPG Passphrase'),\n                                       array('password'));\n        if (!isset($input[0])) {\n            //use empty passphrase\n            $input[0] = '';\n        }\n\n        $devnull = (isset($options['verbose'])) ? '' : ' 2>/dev/null';\n        $gpg = popen(\"gpg --batch --passphrase-fd 0 --armor --detach-sign --output $tmpdir/package.sig $tmpdir/$packagexml\" . $devnull, \"w\");\n        if (!$gpg) {\n            return $this->raiseError(\"gpg command failed\");\n        }\n\n        fwrite($gpg, \"$input[0]\\n\");\n        if (pclose($gpg) || !file_exists(\"$tmpdir/package.sig\")) {\n            return $this->raiseError(\"gpg sign failed\");\n        }\n\n        if (!$tar->addModify(\"$tmpdir/package.sig\", '', $tmpdir)) {\n            return $this->raiseError('failed adding signature to file');\n        }\n\n        $this->ui->outputData(\"Package signed.\", $command);\n        return true;\n    }\n\n    /**\n     * For unit testing purposes\n     */\n    function &getInstaller(&$ui)\n    {\n        if (!class_exists('PEAR_Installer')) {\n            require_once 'PEAR/Installer.php';\n        }\n        $a = &new PEAR_Installer($ui);\n        return $a;\n    }\n\n    /**\n     * For unit testing purposes\n     */\n    function &getCommandPackaging(&$ui, &$config)\n    {\n        if (!class_exists('PEAR_Command_Packaging')) {\n            if ($fp = @fopen('PEAR/Command/Packaging.php', 'r', true)) {\n                fclose($fp);\n                include_once 'PEAR/Command/Packaging.php';\n            }\n        }\n\n        if (class_exists('PEAR_Command_Packaging')) {\n            $a = &new PEAR_Command_Packaging($ui, $config);\n        } else {\n            $a = null;\n        }\n\n        return $a;\n    }\n\n    function doMakeRPM($command, $options, $params)\n    {\n\n        // Check to see if PEAR_Command_Packaging is installed, and\n        // transparently switch to use the \"make-rpm-spec\" command from it\n        // instead, if it does. Otherwise, continue to use the old version\n        // of \"makerpm\" supplied with this package (PEAR).\n        $packaging_cmd = $this->getCommandPackaging($this->ui, $this->config);\n        if ($packaging_cmd !== null) {\n            $this->ui->outputData('PEAR_Command_Packaging is installed; using '.\n                'newer \"make-rpm-spec\" command instead');\n            return $packaging_cmd->run('make-rpm-spec', $options, $params);\n        }\n\n        $this->ui->outputData('WARNING: \"pear makerpm\" is no longer available; an '.\n          'improved version is available via \"pear make-rpm-spec\", which '.\n          'is available by installing PEAR_Command_Packaging');\n        return true;\n    }\n\n    function doConvert($command, $options, $params)\n    {\n        $packagexml    = isset($params[0]) ? $params[0] : 'package.xml';\n        $newpackagexml = isset($params[1]) ? $params[1] : dirname($packagexml) .\n            DIRECTORY_SEPARATOR . 'package2.xml';\n        $pkg = &$this->getPackageFile($this->config, $this->_debug);\n        PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n        $pf = $pkg->fromPackageFile($packagexml, PEAR_VALIDATE_NORMAL);\n        PEAR::staticPopErrorHandling();\n        if (PEAR::isError($pf)) {\n            if (is_array($pf->getUserInfo())) {\n                foreach ($pf->getUserInfo() as $warning) {\n                    $this->ui->outputData($warning['message']);\n                }\n            }\n            return $this->raiseError($pf);\n        }\n\n        if (is_a($pf, 'PEAR_PackageFile_v2')) {\n            $this->ui->outputData($packagexml . ' is already a package.xml version 2.0');\n            return true;\n        }\n\n        $gen   = &$pf->getDefaultGenerator();\n        $newpf = &$gen->toV2();\n        $newpf->setPackagefile($newpackagexml);\n        $gen = &$newpf->getDefaultGenerator();\n        PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n        $state = (isset($options['flat']) ? PEAR_VALIDATE_PACKAGING : PEAR_VALIDATE_NORMAL);\n        $saved = $gen->toPackageFile(dirname($newpackagexml), $state, basename($newpackagexml));\n        PEAR::staticPopErrorHandling();\n        if (PEAR::isError($saved)) {\n            if (is_array($saved->getUserInfo())) {\n                foreach ($saved->getUserInfo() as $warning) {\n                    $this->ui->outputData($warning['message']);\n                }\n            }\n\n            $this->ui->outputData($saved->getMessage());\n            return true;\n        }\n\n        $this->ui->outputData('Wrote new version 2.0 package.xml to \"' . $saved . '\"');\n        return true;\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/Command/Package.xml",
    "content": "<commands version=\"1.0\">\n <package>\n  <summary>Build Package</summary>\n  <function>doPackage</function>\n  <shortcut>p</shortcut>\n  <options>\n   <nocompress>\n    <shortopt>Z</shortopt>\n    <doc>Do not gzip the package file</doc>\n   </nocompress>\n   <showname>\n    <shortopt>n</shortopt>\n    <doc>Print the name of the packaged file.</doc>\n   </showname>\n  </options>\n  <doc>[descfile] [descfile2]\nCreates a PEAR package from its description file (usually called\npackage.xml).  If a second packagefile is passed in, then\nthe packager will check to make sure that one is a package.xml\nversion 1.0, and the other is a package.xml version 2.0.  The\npackage.xml version 1.0 will be saved as &quot;package.xml&quot; in the archive,\nand the other as &quot;package2.xml&quot; in the archive&quot;\n</doc>\n </package>\n <package-validate>\n  <summary>Validate Package Consistency</summary>\n  <function>doPackageValidate</function>\n  <shortcut>pv</shortcut>\n  <options />\n  <doc>\n</doc>\n </package-validate>\n <cvsdiff>\n  <summary>Run a &quot;cvs diff&quot; for all files in a package</summary>\n  <function>doCvsDiff</function>\n  <shortcut>cd</shortcut>\n  <options>\n   <quiet>\n    <shortopt>q</shortopt>\n    <doc>Be quiet</doc>\n   </quiet>\n   <reallyquiet>\n    <shortopt>Q</shortopt>\n    <doc>Be really quiet</doc>\n   </reallyquiet>\n   <date>\n    <shortopt>D</shortopt>\n    <doc>Diff against revision of DATE</doc>\n    <arg>DATE</arg>\n   </date>\n   <release>\n    <shortopt>R</shortopt>\n    <doc>Diff against tag for package release REL</doc>\n    <arg>REL</arg>\n   </release>\n   <revision>\n    <shortopt>r</shortopt>\n    <doc>Diff against revision REV</doc>\n    <arg>REV</arg>\n   </revision>\n   <context>\n    <shortopt>c</shortopt>\n    <doc>Generate context diff</doc>\n   </context>\n   <unified>\n    <shortopt>u</shortopt>\n    <doc>Generate unified diff</doc>\n   </unified>\n   <ignore-case>\n    <shortopt>i</shortopt>\n    <doc>Ignore case, consider upper- and lower-case letters equivalent</doc>\n   </ignore-case>\n   <ignore-whitespace>\n    <shortopt>b</shortopt>\n    <doc>Ignore changes in amount of white space</doc>\n   </ignore-whitespace>\n   <ignore-blank-lines>\n    <shortopt>B</shortopt>\n    <doc>Ignore changes that insert or delete blank lines</doc>\n   </ignore-blank-lines>\n   <brief>\n    <shortopt></shortopt>\n    <doc>Report only whether the files differ, no details</doc>\n   </brief>\n   <dry-run>\n    <shortopt>n</shortopt>\n    <doc>Don&#039;t do anything, just pretend</doc>\n   </dry-run>\n  </options>\n  <doc>&lt;package.xml&gt;\nCompares all the files in a package.  Without any options, this\ncommand will compare the current code with the last checked-in code.\nUsing the -r or -R option you may compare the current code with that\nof a specific release.\n</doc>\n </cvsdiff>\n <svntag>\n  <summary>Set SVN Release Tag</summary>\n  <function>doSvnTag</function>\n  <shortcut>sv</shortcut>\n  <options>\n   <quiet>\n    <shortopt>q</shortopt>\n    <doc>Be quiet</doc>\n   </quiet>\n   <slide>\n    <shortopt>F</shortopt>\n    <doc>Move (slide) tag if it exists</doc>\n   </slide>\n   <delete>\n    <shortopt>d</shortopt>\n    <doc>Remove tag</doc>\n   </delete>\n   <dry-run>\n    <shortopt>n</shortopt>\n    <doc>Don&#039;t do anything, just pretend</doc>\n   </dry-run>\n  </options>\n  <doc>&lt;package.xml&gt; [files...]\n Sets a SVN tag on all files in a package.  Use this command after you have\n packaged a distribution tarball with the &quot;package&quot; command to tag what\n revisions of what files were in that release.  If need to fix something\n after running cvstag once, but before the tarball is released to the public,\n use the &quot;slide&quot; option to move the release tag.\n\n to include files (such as a second package.xml, or tests not included in the\n release), pass them as additional parameters.\n </doc>\n </svntag>\n <cvstag>\n  <summary>Set CVS Release Tag</summary>\n  <function>doCvsTag</function>\n  <shortcut>ct</shortcut>\n  <options>\n   <quiet>\n    <shortopt>q</shortopt>\n    <doc>Be quiet</doc>\n   </quiet>\n   <reallyquiet>\n    <shortopt>Q</shortopt>\n    <doc>Be really quiet</doc>\n   </reallyquiet>\n   <slide>\n    <shortopt>F</shortopt>\n    <doc>Move (slide) tag if it exists</doc>\n   </slide>\n   <delete>\n    <shortopt>d</shortopt>\n    <doc>Remove tag</doc>\n   </delete>\n   <dry-run>\n    <shortopt>n</shortopt>\n    <doc>Don&#039;t do anything, just pretend</doc>\n   </dry-run>\n  </options>\n  <doc>&lt;package.xml&gt; [files...]\nSets a CVS tag on all files in a package.  Use this command after you have\npackaged a distribution tarball with the &quot;package&quot; command to tag what\nrevisions of what files were in that release.  If need to fix something\nafter running cvstag once, but before the tarball is released to the public,\nuse the &quot;slide&quot; option to move the release tag.\n\nto include files (such as a second package.xml, or tests not included in the\nrelease), pass them as additional parameters.\n</doc>\n </cvstag>\n <package-dependencies>\n  <summary>Show package dependencies</summary>\n  <function>doPackageDependencies</function>\n  <shortcut>pd</shortcut>\n  <options />\n  <doc>&lt;package-file&gt; or &lt;package.xml&gt; or &lt;install-package-name&gt;\nList all dependencies the package has.\nCan take a tgz / tar file, package.xml or a package name of an installed package.</doc>\n </package-dependencies>\n <sign>\n  <summary>Sign a package distribution file</summary>\n  <function>doSign</function>\n  <shortcut>si</shortcut>\n  <options>\n   <verbose>\n    <shortopt>v</shortopt>\n    <doc>Display GnuPG output</doc>\n   </verbose>\n  </options>\n  <doc>&lt;package-file&gt;\nSigns a package distribution (.tar or .tgz) file with GnuPG.</doc>\n </sign>\n <makerpm>\n  <summary>Builds an RPM spec file from a PEAR package</summary>\n  <function>doMakeRPM</function>\n  <shortcut>rpm</shortcut>\n  <options>\n   <spec-template>\n    <shortopt>t</shortopt>\n    <doc>Use FILE as RPM spec file template</doc>\n    <arg>FILE</arg>\n   </spec-template>\n   <rpm-pkgname>\n    <shortopt>p</shortopt>\n    <doc>Use FORMAT as format string for RPM package name, %s is replaced\nby the PEAR package name, defaults to &quot;PEAR::%s&quot;.</doc>\n    <arg>FORMAT</arg>\n   </rpm-pkgname>\n  </options>\n  <doc>&lt;package-file&gt;\n\nCreates an RPM .spec file for wrapping a PEAR package inside an RPM\npackage.  Intended to be used from the SPECS directory, with the PEAR\npackage tarball in the SOURCES directory:\n\n$ pear makerpm ../SOURCES/Net_Socket-1.0.tgz\nWrote RPM spec file PEAR::Net_Geo-1.0.spec\n$ rpm -bb PEAR::Net_Socket-1.0.spec\n...\nWrote: /usr/src/redhat/RPMS/i386/PEAR::Net_Socket-1.0-1.i386.rpm\n</doc>\n </makerpm>\n <convert>\n  <summary>Convert a package.xml 1.0 to package.xml 2.0 format</summary>\n  <function>doConvert</function>\n  <shortcut>c2</shortcut>\n  <options>\n   <flat>\n    <shortopt>f</shortopt>\n    <doc>do not beautify the filelist.</doc>\n   </flat>\n  </options>\n  <doc>[descfile] [descfile2]\nConverts a package.xml in 1.0 format into a package.xml\nin 2.0 format.  The new file will be named package2.xml by default,\nand package.xml will be used as the old file by default.\nThis is not the most intelligent conversion, and should only be\nused for automated conversion or learning the format.\n</doc>\n </convert>\n</commands>"
  },
  {
    "path": "newscoop/include/PEAR/Command/Pickle.php",
    "content": "<?php\n/**\n * PEAR_Command_Pickle (pickle command)\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  2005-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Pickle.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.1\n */\n\n/**\n * base class\n */\nrequire_once 'PEAR/Command/Common.php';\n\n/**\n * PEAR commands for login/logout\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  2005-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.1\n */\n\nclass PEAR_Command_Pickle extends PEAR_Command_Common\n{\n    var $commands = array(\n        'pickle' => array(\n            'summary' => 'Build PECL Package',\n            'function' => 'doPackage',\n            'shortcut' => 'pi',\n            'options' => array(\n                'nocompress' => array(\n                    'shortopt' => 'Z',\n                    'doc' => 'Do not gzip the package file'\n                    ),\n                'showname' => array(\n                    'shortopt' => 'n',\n                    'doc' => 'Print the name of the packaged file.',\n                    ),\n                ),\n            'doc' => '[descfile]\nCreates a PECL package from its package2.xml file.\n\nAn automatic conversion will be made to a package.xml 1.0 and written out to\ndisk in the current directory as \"package.xml\".  Note that\nonly simple package.xml 2.0 will be converted.  package.xml 2.0 with:\n\n - dependency types other than required/optional PECL package/ext/php/pearinstaller\n - more than one extsrcrelease or zendextsrcrelease\n - zendextbinrelease, extbinrelease, phprelease, or bundle release type\n - dependency groups\n - ignore tags in release filelist\n - tasks other than replace\n - custom roles\n\nwill cause pickle to fail, and output an error message.  If your package2.xml\nuses any of these features, you are best off using PEAR_PackageFileManager to\ngenerate both package.xml.\n'\n            ),\n        );\n\n    /**\n     * PEAR_Command_Package constructor.\n     *\n     * @access public\n     */\n    function PEAR_Command_Pickle(&$ui, &$config)\n    {\n        parent::PEAR_Command_Common($ui, $config);\n    }\n\n    /**\n     * For unit-testing ease\n     *\n     * @return PEAR_Packager\n     */\n    function &getPackager()\n    {\n        if (!class_exists('PEAR_Packager')) {\n            require_once 'PEAR/Packager.php';\n        }\n\n        $a = &new PEAR_Packager;\n        return $a;\n    }\n\n    /**\n     * For unit-testing ease\n     *\n     * @param PEAR_Config $config\n     * @param bool $debug\n     * @param string|null $tmpdir\n     * @return PEAR_PackageFile\n     */\n    function &getPackageFile($config, $debug = false)\n    {\n        if (!class_exists('PEAR_Common')) {\n            require_once 'PEAR/Common.php';\n        }\n\n        if (!class_exists('PEAR_PackageFile')) {\n            require_once 'PEAR/PackageFile.php';\n        }\n\n        $a = &new PEAR_PackageFile($config, $debug);\n        $common = new PEAR_Common;\n        $common->ui = $this->ui;\n        $a->setLogger($common);\n        return $a;\n    }\n\n    function doPackage($command, $options, $params)\n    {\n        $this->output = '';\n        $pkginfofile = isset($params[0]) ? $params[0] : 'package2.xml';\n        $packager = &$this->getPackager();\n        if (PEAR::isError($err = $this->_convertPackage($pkginfofile))) {\n            return $err;\n        }\n\n        $compress = empty($options['nocompress']) ? true : false;\n        $result = $packager->package($pkginfofile, $compress, 'package.xml');\n        if (PEAR::isError($result)) {\n            return $this->raiseError($result);\n        }\n\n        // Don't want output, only the package file name just created\n        if (isset($options['showname'])) {\n            $this->ui->outputData($result, $command);\n        }\n\n        return true;\n    }\n\n    function _convertPackage($packagexml)\n    {\n        $pkg = &$this->getPackageFile($this->config);\n        $pf2 = &$pkg->fromPackageFile($packagexml, PEAR_VALIDATE_NORMAL);\n        if (!is_a($pf2, 'PEAR_PackageFile_v2')) {\n            return $this->raiseError('Cannot process \"' .\n                $packagexml . '\", is not a package.xml 2.0');\n        }\n\n        require_once 'PEAR/PackageFile/v1.php';\n        $pf = new PEAR_PackageFile_v1;\n        $pf->setConfig($this->config);\n        if ($pf2->getPackageType() != 'extsrc' && $pf2->getPackageType() != 'zendextsrc') {\n            return $this->raiseError('Cannot safely convert \"' . $packagexml .\n            '\", is not an extension source package.  Using a PEAR_PackageFileManager-based ' .\n            'script is an option');\n        }\n\n        if (is_array($pf2->getUsesRole())) {\n            return $this->raiseError('Cannot safely convert \"' . $packagexml .\n            '\", contains custom roles.  Using a PEAR_PackageFileManager-based script or ' .\n            'the convert command is an option');\n        }\n\n        if (is_array($pf2->getUsesTask())) {\n            return $this->raiseError('Cannot safely convert \"' . $packagexml .\n            '\", contains custom tasks.  Using a PEAR_PackageFileManager-based script or ' .\n            'the convert command is an option');\n        }\n\n        $deps = $pf2->getDependencies();\n        if (isset($deps['group'])) {\n            return $this->raiseError('Cannot safely convert \"' . $packagexml .\n            '\", contains dependency groups.  Using a PEAR_PackageFileManager-based script ' .\n            'or the convert command is an option');\n        }\n\n        if (isset($deps['required']['subpackage']) ||\n              isset($deps['optional']['subpackage'])) {\n            return $this->raiseError('Cannot safely convert \"' . $packagexml .\n            '\", contains subpackage dependencies.  Using a PEAR_PackageFileManager-based  '.\n            'script is an option');\n        }\n\n        if (isset($deps['required']['os'])) {\n            return $this->raiseError('Cannot safely convert \"' . $packagexml .\n            '\", contains os dependencies.  Using a PEAR_PackageFileManager-based  '.\n            'script is an option');\n        }\n\n        if (isset($deps['required']['arch'])) {\n            return $this->raiseError('Cannot safely convert \"' . $packagexml .\n            '\", contains arch dependencies.  Using a PEAR_PackageFileManager-based  '.\n            'script is an option');\n        }\n\n        $pf->setPackage($pf2->getPackage());\n        $pf->setSummary($pf2->getSummary());\n        $pf->setDescription($pf2->getDescription());\n        foreach ($pf2->getMaintainers() as $maintainer) {\n            $pf->addMaintainer($maintainer['role'], $maintainer['handle'],\n                $maintainer['name'], $maintainer['email']);\n        }\n\n        $pf->setVersion($pf2->getVersion());\n        $pf->setDate($pf2->getDate());\n        $pf->setLicense($pf2->getLicense());\n        $pf->setState($pf2->getState());\n        $pf->setNotes($pf2->getNotes());\n        $pf->addPhpDep($deps['required']['php']['min'], 'ge');\n        if (isset($deps['required']['php']['max'])) {\n            $pf->addPhpDep($deps['required']['php']['max'], 'le');\n        }\n\n        if (isset($deps['required']['package'])) {\n            if (!isset($deps['required']['package'][0])) {\n                $deps['required']['package'] = array($deps['required']['package']);\n            }\n\n            foreach ($deps['required']['package'] as $dep) {\n                if (!isset($dep['channel'])) {\n                    return $this->raiseError('Cannot safely convert \"' . $packagexml . '\"' .\n                    ' contains uri-based dependency on a package.  Using a ' .\n                    'PEAR_PackageFileManager-based script is an option');\n                }\n\n                if ($dep['channel'] != 'pear.php.net'\n                    && $dep['channel'] != 'pecl.php.net'\n                    && $dep['channel'] != 'doc.php.net') {\n                    return $this->raiseError('Cannot safely convert \"' . $packagexml . '\"' .\n                    ' contains dependency on a non-standard channel package.  Using a ' .\n                    'PEAR_PackageFileManager-based script is an option');\n                }\n\n                if (isset($dep['conflicts'])) {\n                    return $this->raiseError('Cannot safely convert \"' . $packagexml . '\"' .\n                    ' contains conflicts dependency.  Using a ' .\n                    'PEAR_PackageFileManager-based script is an option');\n                }\n\n                if (isset($dep['exclude'])) {\n                    $this->ui->outputData('WARNING: exclude tags are ignored in conversion');\n                }\n\n                if (isset($dep['min'])) {\n                    $pf->addPackageDep($dep['name'], $dep['min'], 'ge');\n                }\n\n                if (isset($dep['max'])) {\n                    $pf->addPackageDep($dep['name'], $dep['max'], 'le');\n                }\n            }\n        }\n\n        if (isset($deps['required']['extension'])) {\n            if (!isset($deps['required']['extension'][0])) {\n                $deps['required']['extension'] = array($deps['required']['extension']);\n            }\n\n            foreach ($deps['required']['extension'] as $dep) {\n                if (isset($dep['conflicts'])) {\n                    return $this->raiseError('Cannot safely convert \"' . $packagexml . '\"' .\n                    ' contains conflicts dependency.  Using a ' .\n                    'PEAR_PackageFileManager-based script is an option');\n                }\n\n                if (isset($dep['exclude'])) {\n                    $this->ui->outputData('WARNING: exclude tags are ignored in conversion');\n                }\n\n                if (isset($dep['min'])) {\n                    $pf->addExtensionDep($dep['name'], $dep['min'], 'ge');\n                }\n\n                if (isset($dep['max'])) {\n                    $pf->addExtensionDep($dep['name'], $dep['max'], 'le');\n                }\n            }\n        }\n\n        if (isset($deps['optional']['package'])) {\n            if (!isset($deps['optional']['package'][0])) {\n                $deps['optional']['package'] = array($deps['optional']['package']);\n            }\n\n            foreach ($deps['optional']['package'] as $dep) {\n                if (!isset($dep['channel'])) {\n                    return $this->raiseError('Cannot safely convert \"' . $packagexml . '\"' .\n                    ' contains uri-based dependency on a package.  Using a ' .\n                    'PEAR_PackageFileManager-based script is an option');\n                }\n\n                if ($dep['channel'] != 'pear.php.net'\n                    && $dep['channel'] != 'pecl.php.net'\n                    && $dep['channel'] != 'doc.php.net') {\n                    return $this->raiseError('Cannot safely convert \"' . $packagexml . '\"' .\n                    ' contains dependency on a non-standard channel package.  Using a ' .\n                    'PEAR_PackageFileManager-based script is an option');\n                }\n\n                if (isset($dep['exclude'])) {\n                    $this->ui->outputData('WARNING: exclude tags are ignored in conversion');\n                }\n\n                if (isset($dep['min'])) {\n                    $pf->addPackageDep($dep['name'], $dep['min'], 'ge', 'yes');\n                }\n\n                if (isset($dep['max'])) {\n                    $pf->addPackageDep($dep['name'], $dep['max'], 'le', 'yes');\n                }\n            }\n        }\n\n        if (isset($deps['optional']['extension'])) {\n            if (!isset($deps['optional']['extension'][0])) {\n                $deps['optional']['extension'] = array($deps['optional']['extension']);\n            }\n\n            foreach ($deps['optional']['extension'] as $dep) {\n                if (isset($dep['exclude'])) {\n                    $this->ui->outputData('WARNING: exclude tags are ignored in conversion');\n                }\n\n                if (isset($dep['min'])) {\n                    $pf->addExtensionDep($dep['name'], $dep['min'], 'ge', 'yes');\n                }\n\n                if (isset($dep['max'])) {\n                    $pf->addExtensionDep($dep['name'], $dep['max'], 'le', 'yes');\n                }\n            }\n        }\n\n        $contents = $pf2->getContents();\n        $release  = $pf2->getReleases();\n        if (isset($releases[0])) {\n            return $this->raiseError('Cannot safely process \"' . $packagexml . '\" contains '\n            . 'multiple extsrcrelease/zendextsrcrelease tags.  Using a PEAR_PackageFileManager-based script ' .\n            'or the convert command is an option');\n        }\n\n        if ($configoptions = $pf2->getConfigureOptions()) {\n            foreach ($configoptions as $option) {\n                $default = isset($option['default']) ? $option['default'] : false;\n                $pf->addConfigureOption($option['name'], $option['prompt'], $default);\n            }\n        }\n\n        if (isset($release['filelist']['ignore'])) {\n            return $this->raiseError('Cannot safely process \"' . $packagexml . '\" contains '\n            . 'ignore tags.  Using a PEAR_PackageFileManager-based script or the convert' .\n            ' command is an option');\n        }\n\n        if (isset($release['filelist']['install']) &&\n              !isset($release['filelist']['install'][0])) {\n            $release['filelist']['install'] = array($release['filelist']['install']);\n        }\n\n        if (isset($contents['dir']['attribs']['baseinstalldir'])) {\n            $baseinstalldir = $contents['dir']['attribs']['baseinstalldir'];\n        } else {\n            $baseinstalldir = false;\n        }\n\n        if (!isset($contents['dir']['file'][0])) {\n            $contents['dir']['file'] = array($contents['dir']['file']);\n        }\n\n        foreach ($contents['dir']['file'] as $file) {\n            if ($baseinstalldir && !isset($file['attribs']['baseinstalldir'])) {\n                $file['attribs']['baseinstalldir'] = $baseinstalldir;\n            }\n\n            $processFile = $file;\n            unset($processFile['attribs']);\n            if (count($processFile)) {\n                foreach ($processFile as $name => $task) {\n                    if ($name != $pf2->getTasksNs() . ':replace') {\n                        return $this->raiseError('Cannot safely process \"' . $packagexml .\n                        '\" contains tasks other than replace.  Using a ' .\n                        'PEAR_PackageFileManager-based script is an option.');\n                    }\n                    $file['attribs']['replace'][] = $task;\n                }\n            }\n\n            if (!in_array($file['attribs']['role'], PEAR_Common::getFileRoles())) {\n                return $this->raiseError('Cannot safely convert \"' . $packagexml .\n                '\", contains custom roles.  Using a PEAR_PackageFileManager-based script ' .\n                'or the convert command is an option');\n            }\n\n            if (isset($release['filelist']['install'])) {\n                foreach ($release['filelist']['install'] as $installas) {\n                    if ($installas['attribs']['name'] == $file['attribs']['name']) {\n                        $file['attribs']['install-as'] = $installas['attribs']['as'];\n                    }\n                }\n            }\n\n            $pf->addFile('/', $file['attribs']['name'], $file['attribs']);\n        }\n\n        if ($pf2->getChangeLog()) {\n            $this->ui->outputData('WARNING: changelog is not translated to package.xml ' .\n                '1.0, use PEAR_PackageFileManager-based script if you need changelog-' .\n                'translation for package.xml 1.0');\n        }\n\n        $gen = &$pf->getDefaultGenerator();\n        $gen->toPackageFile('.');\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/Command/Pickle.xml",
    "content": "<commands version=\"1.0\">\n <pickle>\n  <summary>Build PECL Package</summary>\n  <function>doPackage</function>\n  <shortcut>pi</shortcut>\n  <options>\n   <nocompress>\n    <shortopt>Z</shortopt>\n    <doc>Do not gzip the package file</doc>\n   </nocompress>\n   <showname>\n    <shortopt>n</shortopt>\n    <doc>Print the name of the packaged file.</doc>\n   </showname>\n  </options>\n  <doc>[descfile]\nCreates a PECL package from its package2.xml file.\n\nAn automatic conversion will be made to a package.xml 1.0 and written out to\ndisk in the current directory as &quot;package.xml&quot;.  Note that\nonly simple package.xml 2.0 will be converted.  package.xml 2.0 with:\n\n - dependency types other than required/optional PECL package/ext/php/pearinstaller\n - more than one extsrcrelease or zendextsrcrelease\n - zendextbinrelease, extbinrelease, phprelease, or bundle release type\n - dependency groups\n - ignore tags in release filelist\n - tasks other than replace\n - custom roles\n\nwill cause pickle to fail, and output an error message.  If your package2.xml\nuses any of these features, you are best off using PEAR_PackageFileManager to\ngenerate both package.xml.\n</doc>\n </pickle>\n</commands>"
  },
  {
    "path": "newscoop/include/PEAR/Command/Registry.php",
    "content": "<?php\n/**\n * PEAR_Command_Registry (list, list-files, shell-test, info commands)\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Registry.php 299146 2010-05-08 16:26:13Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 0.1\n */\n\n/**\n * base class\n */\nrequire_once 'PEAR/Command/Common.php';\n\n/**\n * PEAR commands for registry manipulation\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 0.1\n */\nclass PEAR_Command_Registry extends PEAR_Command_Common\n{\n    var $commands = array(\n        'list' => array(\n            'summary' => 'List Installed Packages In The Default Channel',\n            'function' => 'doList',\n            'shortcut' => 'l',\n            'options' => array(\n                'channel' => array(\n                    'shortopt' => 'c',\n                    'doc' => 'list installed packages from this channel',\n                    'arg' => 'CHAN',\n                    ),\n                'allchannels' => array(\n                    'shortopt' => 'a',\n                    'doc' => 'list installed packages from all channels',\n                    ),\n                'channelinfo' => array(\n                    'shortopt' => 'i',\n                    'doc' => 'output fully channel-aware data, even on failure',\n                    ),\n                ),\n            'doc' => '<package>\nIf invoked without parameters, this command lists the PEAR packages\ninstalled in your php_dir ({config php_dir}).  With a parameter, it\nlists the files in a package.\n',\n            ),\n        'list-files' => array(\n            'summary' => 'List Files In Installed Package',\n            'function' => 'doFileList',\n            'shortcut' => 'fl',\n            'options' => array(),\n            'doc' => '<package>\nList the files in an installed package.\n'\n            ),\n        'shell-test' => array(\n            'summary' => 'Shell Script Test',\n            'function' => 'doShellTest',\n            'shortcut' => 'st',\n            'options' => array(),\n            'doc' => '<package> [[relation] version]\nTests if a package is installed in the system. Will exit(1) if it is not.\n   <relation>   The version comparison operator. One of:\n                <, lt, <=, le, >, gt, >=, ge, ==, =, eq, !=, <>, ne\n   <version>    The version to compare with\n'),\n        'info' => array(\n            'summary'  => 'Display information about a package',\n            'function' => 'doInfo',\n            'shortcut' => 'in',\n            'options'  => array(),\n            'doc'      => '<package>\nDisplays information about a package. The package argument may be a\nlocal package file, an URL to a package file, or the name of an\ninstalled package.'\n            )\n        );\n\n    /**\n     * PEAR_Command_Registry constructor.\n     *\n     * @access public\n     */\n    function PEAR_Command_Registry(&$ui, &$config)\n    {\n        parent::PEAR_Command_Common($ui, $config);\n    }\n\n    function _sortinfo($a, $b)\n    {\n        $apackage = isset($a['package']) ? $a['package'] : $a['name'];\n        $bpackage = isset($b['package']) ? $b['package'] : $b['name'];\n        return strcmp($apackage, $bpackage);\n    }\n\n    function doList($command, $options, $params)\n    {\n        $reg = &$this->config->getRegistry();\n        $channelinfo = isset($options['channelinfo']);\n        if (isset($options['allchannels']) && !$channelinfo) {\n            return $this->doListAll($command, array(), $params);\n        }\n\n        if (isset($options['allchannels']) && $channelinfo) {\n            // allchannels with $channelinfo\n            unset($options['allchannels']);\n            $channels = $reg->getChannels();\n            $errors = array();\n            PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n            foreach ($channels as $channel) {\n                $options['channel'] = $channel->getName();\n                $ret = $this->doList($command, $options, $params);\n\n                if (PEAR::isError($ret)) {\n                    $errors[] = $ret;\n                }\n            }\n\n            PEAR::staticPopErrorHandling();\n            if (count($errors)) {\n                // for now, only give first error\n                return PEAR::raiseError($errors[0]);\n            }\n\n            return true;\n        }\n\n        if (count($params) === 1) {\n            return $this->doFileList($command, $options, $params);\n        }\n\n        if (isset($options['channel'])) {\n            if (!$reg->channelExists($options['channel'])) {\n                return $this->raiseError('Channel \"' . $options['channel'] .'\" does not exist');\n            }\n\n            $channel = $reg->channelName($options['channel']);\n        } else {\n            $channel = $this->config->get('default_channel');\n        }\n\n        $installed = $reg->packageInfo(null, null, $channel);\n        usort($installed, array(&$this, '_sortinfo'));\n\n        $data = array(\n            'caption' => 'Installed packages, channel ' .\n                $channel . ':',\n            'border' => true,\n            'headline' => array('Package', 'Version', 'State'),\n            'channel' => $channel,\n            );\n        if ($channelinfo) {\n            $data['headline'] = array('Channel', 'Package', 'Version', 'State');\n        }\n\n        if (count($installed) && !isset($data['data'])) {\n            $data['data'] = array();\n        }\n\n        foreach ($installed as $package) {\n            $pobj = $reg->getPackage(isset($package['package']) ?\n                                        $package['package'] : $package['name'], $channel);\n            if ($channelinfo) {\n                $packageinfo = array($pobj->getChannel(), $pobj->getPackage(), $pobj->getVersion(),\n                                    $pobj->getState() ? $pobj->getState() : null);\n            } else {\n                $packageinfo = array($pobj->getPackage(), $pobj->getVersion(),\n                                    $pobj->getState() ? $pobj->getState() : null);\n            }\n            $data['data'][] = $packageinfo;\n        }\n\n        if (count($installed) === 0) {\n            if (!$channelinfo) {\n                $data = '(no packages installed from channel ' . $channel . ')';\n            } else {\n                $data = array(\n                    'caption' => 'Installed packages, channel ' .\n                        $channel . ':',\n                    'border' => true,\n                    'channel' => $channel,\n                    'data' => array(array('(no packages installed)')),\n                );\n            }\n        }\n\n        $this->ui->outputData($data, $command);\n        return true;\n    }\n\n    function doListAll($command, $options, $params)\n    {\n        // This duplicate code is deprecated over\n        // list --channelinfo, which gives identical\n        // output for list and list --allchannels.\n        $reg = &$this->config->getRegistry();\n        $installed = $reg->packageInfo(null, null, null);\n        foreach ($installed as $channel => $packages) {\n            usort($packages, array($this, '_sortinfo'));\n            $data = array(\n                'caption'  => 'Installed packages, channel ' . $channel . ':',\n                'border'   => true,\n                'headline' => array('Package', 'Version', 'State'),\n                'channel'  => $channel\n            );\n\n            foreach ($packages as $package) {\n                $p = isset($package['package']) ? $package['package'] : $package['name'];\n                $pobj = $reg->getPackage($p, $channel);\n                $data['data'][] = array($pobj->getPackage(), $pobj->getVersion(),\n                                        $pobj->getState() ? $pobj->getState() : null);\n            }\n\n            // Adds a blank line after each section\n            $data['data'][] = array();\n\n            if (count($packages) === 0) {\n                $data = array(\n                    'caption' => 'Installed packages, channel ' . $channel . ':',\n                    'border' => true,\n                    'data' => array(array('(no packages installed)'), array()),\n                    'channel' => $channel\n                    );\n            }\n            $this->ui->outputData($data, $command);\n        }\n        return true;\n    }\n\n    function doFileList($command, $options, $params)\n    {\n        if (count($params) !== 1) {\n            return $this->raiseError('list-files expects 1 parameter');\n        }\n\n        $reg = &$this->config->getRegistry();\n        $fp = false;\n        if (!is_dir($params[0]) && (file_exists($params[0]) || $fp = @fopen($params[0], 'r'))) {\n            if ($fp) {\n                fclose($fp);\n            }\n\n            if (!class_exists('PEAR_PackageFile')) {\n                require_once 'PEAR/PackageFile.php';\n            }\n\n            $pkg = &new PEAR_PackageFile($this->config, $this->_debug);\n            PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n            $info = &$pkg->fromAnyFile($params[0], PEAR_VALIDATE_NORMAL);\n            PEAR::staticPopErrorHandling();\n            $headings = array('Package File', 'Install Path');\n            $installed = false;\n        } else {\n            PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n            $parsed = $reg->parsePackageName($params[0], $this->config->get('default_channel'));\n            PEAR::staticPopErrorHandling();\n            if (PEAR::isError($parsed)) {\n                return $this->raiseError($parsed);\n            }\n\n            $info = &$reg->getPackage($parsed['package'], $parsed['channel']);\n            $headings = array('Type', 'Install Path');\n            $installed = true;\n        }\n\n        if (PEAR::isError($info)) {\n            return $this->raiseError($info);\n        }\n\n        if ($info === null) {\n            return $this->raiseError(\"`$params[0]' not installed\");\n        }\n\n        $list = ($info->getPackagexmlVersion() == '1.0' || $installed) ?\n            $info->getFilelist() : $info->getContents();\n        if ($installed) {\n            $caption = 'Installed Files For ' . $params[0];\n        } else {\n            $caption = 'Contents of ' . basename($params[0]);\n        }\n\n        $data = array(\n            'caption' => $caption,\n            'border' => true,\n            'headline' => $headings);\n        if ($info->getPackagexmlVersion() == '1.0' || $installed) {\n            foreach ($list as $file => $att) {\n                if ($installed) {\n                    if (empty($att['installed_as'])) {\n                        continue;\n                    }\n                    $data['data'][] = array($att['role'], $att['installed_as']);\n                } else {\n                    if (isset($att['baseinstalldir']) && !in_array($att['role'],\n                          array('test', 'data', 'doc'))) {\n                        $dest = $att['baseinstalldir'] . DIRECTORY_SEPARATOR .\n                            $file;\n                    } else {\n                        $dest = $file;\n                    }\n                    switch ($att['role']) {\n                        case 'test':\n                        case 'data':\n                        case 'doc':\n                            $role = $att['role'];\n                            if ($role == 'test') {\n                                $role .= 's';\n                            }\n                            $dest = $this->config->get($role . '_dir') . DIRECTORY_SEPARATOR .\n                                $info->getPackage() . DIRECTORY_SEPARATOR . $dest;\n                            break;\n                        case 'php':\n                        default:\n                            $dest = $this->config->get('php_dir') . DIRECTORY_SEPARATOR .\n                                $dest;\n                    }\n                    $ds2 = DIRECTORY_SEPARATOR . DIRECTORY_SEPARATOR;\n                    $dest = preg_replace(array('!\\\\\\\\+!', '!/!', \"!$ds2+!\"),\n                                                    array(DIRECTORY_SEPARATOR,\n                                                          DIRECTORY_SEPARATOR,\n                                                          DIRECTORY_SEPARATOR),\n                                                    $dest);\n                    $file = preg_replace('!/+!', '/', $file);\n                    $data['data'][] = array($file, $dest);\n                }\n            }\n        } else { // package.xml 2.0, not installed\n            if (!isset($list['dir']['file'][0])) {\n                $list['dir']['file'] = array($list['dir']['file']);\n            }\n\n            foreach ($list['dir']['file'] as $att) {\n                $att = $att['attribs'];\n                $file = $att['name'];\n                $role = &PEAR_Installer_Role::factory($info, $att['role'], $this->config);\n                $role->setup($this, $info, $att, $file);\n                if (!$role->isInstallable()) {\n                    $dest = '(not installable)';\n                } else {\n                    $dest = $role->processInstallation($info, $att, $file, '');\n                    if (PEAR::isError($dest)) {\n                        $dest = '(Unknown role \"' . $att['role'] . ')';\n                    } else {\n                        list(,, $dest) = $dest;\n                    }\n                }\n                $data['data'][] = array($file, $dest);\n            }\n        }\n\n        $this->ui->outputData($data, $command);\n        return true;\n    }\n\n    function doShellTest($command, $options, $params)\n    {\n        if (count($params) < 1) {\n            return PEAR::raiseError('ERROR, usage: pear shell-test packagename [[relation] version]');\n        }\n\n        PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n        $reg = &$this->config->getRegistry();\n        $info = $reg->parsePackageName($params[0], $this->config->get('default_channel'));\n        if (PEAR::isError($info)) {\n            exit(1); // invalid package name\n        }\n\n        $package = $info['package'];\n        $channel = $info['channel'];\n        // \"pear shell-test Foo\"\n        if (!$reg->packageExists($package, $channel)) {\n            if ($channel == 'pecl.php.net') {\n                if ($reg->packageExists($package, 'pear.php.net')) {\n                    $channel = 'pear.php.net'; // magically change channels for extensions\n                }\n            }\n        }\n\n        if (count($params) === 1) {\n            if (!$reg->packageExists($package, $channel)) {\n                exit(1);\n            }\n            // \"pear shell-test Foo 1.0\"\n        } elseif (count($params) === 2) {\n            $v = $reg->packageInfo($package, 'version', $channel);\n            if (!$v || !version_compare(\"$v\", \"{$params[1]}\", \"ge\")) {\n                exit(1);\n            }\n            // \"pear shell-test Foo ge 1.0\"\n        } elseif (count($params) === 3) {\n            $v = $reg->packageInfo($package, 'version', $channel);\n            if (!$v || !version_compare(\"$v\", \"{$params[2]}\", $params[1])) {\n                exit(1);\n            }\n        } else {\n            PEAR::staticPopErrorHandling();\n            $this->raiseError(\"$command: expects 1 to 3 parameters\");\n            exit(1);\n        }\n    }\n\n    function doInfo($command, $options, $params)\n    {\n        if (count($params) !== 1) {\n            return $this->raiseError('pear info expects 1 parameter');\n        }\n\n        $info = $fp = false;\n        $reg = &$this->config->getRegistry();\n        if (is_file($params[0]) && !is_dir($params[0]) &&\n            (file_exists($params[0]) || $fp = @fopen($params[0], 'r'))\n        ) {\n            if ($fp) {\n                fclose($fp);\n            }\n\n            if (!class_exists('PEAR_PackageFile')) {\n                require_once 'PEAR/PackageFile.php';\n            }\n\n            $pkg = &new PEAR_PackageFile($this->config, $this->_debug);\n            PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n            $obj = &$pkg->fromAnyFile($params[0], PEAR_VALIDATE_NORMAL);\n            PEAR::staticPopErrorHandling();\n            if (PEAR::isError($obj)) {\n                $uinfo = $obj->getUserInfo();\n                if (is_array($uinfo)) {\n                    foreach ($uinfo as $message) {\n                        if (is_array($message)) {\n                            $message = $message['message'];\n                        }\n                        $this->ui->outputData($message);\n                    }\n                }\n\n                return $this->raiseError($obj);\n            }\n\n            if ($obj->getPackagexmlVersion() != '1.0') {\n                return $this->_doInfo2($command, $options, $params, $obj, false);\n            }\n\n            $info = $obj->toArray();\n        } else {\n            $parsed = $reg->parsePackageName($params[0], $this->config->get('default_channel'));\n            if (PEAR::isError($parsed)) {\n                return $this->raiseError($parsed);\n            }\n\n            $package = $parsed['package'];\n            $channel = $parsed['channel'];\n            $info = $reg->packageInfo($package, null, $channel);\n            if (isset($info['old'])) {\n                $obj = $reg->getPackage($package, $channel);\n                return $this->_doInfo2($command, $options, $params, $obj, true);\n            }\n        }\n\n        if (PEAR::isError($info)) {\n            return $info;\n        }\n\n        if (empty($info)) {\n            $this->raiseError(\"No information found for `$params[0]'\");\n            return;\n        }\n\n        unset($info['filelist']);\n        unset($info['dirtree']);\n        unset($info['changelog']);\n        if (isset($info['xsdversion'])) {\n            $info['package.xml version'] = $info['xsdversion'];\n            unset($info['xsdversion']);\n        }\n\n        if (isset($info['packagerversion'])) {\n            $info['packaged with PEAR version'] = $info['packagerversion'];\n            unset($info['packagerversion']);\n        }\n\n        $keys = array_keys($info);\n        $longtext = array('description', 'summary');\n        foreach ($keys as $key) {\n            if (is_array($info[$key])) {\n                switch ($key) {\n                    case 'maintainers': {\n                        $i = 0;\n                        $mstr = '';\n                        foreach ($info[$key] as $m) {\n                            if ($i++ > 0) {\n                                $mstr .= \"\\n\";\n                            }\n                            $mstr .= $m['name'] . \" <\";\n                            if (isset($m['email'])) {\n                                $mstr .= $m['email'];\n                            } else {\n                                $mstr .= $m['handle'] . '@php.net';\n                            }\n                            $mstr .= \"> ($m[role])\";\n                        }\n                        $info[$key] = $mstr;\n                        break;\n                    }\n                    case 'release_deps': {\n                        $i = 0;\n                        $dstr = '';\n                        foreach ($info[$key] as $d) {\n                            if (isset($this->_deps_rel_trans[$d['rel']])) {\n                                $rel = $this->_deps_rel_trans[$d['rel']];\n                            } else {\n                                $rel = $d['rel'];\n                            }\n                            if (isset($this->_deps_type_trans[$d['type']])) {\n                                $type = ucfirst($this->_deps_type_trans[$d['type']]);\n                            } else {\n                                $type = $d['type'];\n                            }\n                            if (isset($d['name'])) {\n                                $name = $d['name'] . ' ';\n                            } else {\n                                $name = '';\n                            }\n                            if (isset($d['version'])) {\n                                $version = $d['version'] . ' ';\n                            } else {\n                                $version = '';\n                            }\n                            if (isset($d['optional']) && $d['optional'] == 'yes') {\n                                $optional = ' (optional)';\n                            } else {\n                                $optional = '';\n                            }\n                            $dstr .= \"$type $name$rel $version$optional\\n\";\n                        }\n                        $info[$key] = $dstr;\n                        break;\n                    }\n                    case 'provides' : {\n                        $debug = $this->config->get('verbose');\n                        if ($debug < 2) {\n                            $pstr = 'Classes: ';\n                        } else {\n                            $pstr = '';\n                        }\n                        $i = 0;\n                        foreach ($info[$key] as $p) {\n                            if ($debug < 2 && $p['type'] != \"class\") {\n                                continue;\n                            }\n                            // Only print classes when verbosity mode is < 2\n                            if ($debug < 2) {\n                                if ($i++ > 0) {\n                                    $pstr .= \", \";\n                                }\n                                $pstr .= $p['name'];\n                            } else {\n                                if ($i++ > 0) {\n                                    $pstr .= \"\\n\";\n                                }\n                                $pstr .= ucfirst($p['type']) . \" \" . $p['name'];\n                                if (isset($p['explicit']) && $p['explicit'] == 1) {\n                                    $pstr .= \" (explicit)\";\n                                }\n                            }\n                        }\n                        $info[$key] = $pstr;\n                        break;\n                    }\n                    case 'configure_options' : {\n                        foreach ($info[$key] as $i => $p) {\n                            $info[$key][$i] = array_map(null, array_keys($p), array_values($p));\n                            $info[$key][$i] = array_map(create_function('$a',\n                                'return join(\" = \",$a);'), $info[$key][$i]);\n                            $info[$key][$i] = implode(', ', $info[$key][$i]);\n                        }\n                        $info[$key] = implode(\"\\n\", $info[$key]);\n                        break;\n                    }\n                    default: {\n                        $info[$key] = implode(\", \", $info[$key]);\n                        break;\n                    }\n                }\n            }\n\n            if ($key == '_lastmodified') {\n                $hdate = date('Y-m-d', $info[$key]);\n                unset($info[$key]);\n                $info['Last Modified'] = $hdate;\n            } elseif ($key == '_lastversion') {\n                $info['Previous Installed Version'] = $info[$key] ? $info[$key] : '- None -';\n                unset($info[$key]);\n            } else {\n                $info[$key] = trim($info[$key]);\n                if (in_array($key, $longtext)) {\n                    $info[$key] = preg_replace('/  +/', ' ', $info[$key]);\n                }\n            }\n        }\n\n        $caption = 'About ' . $info['package'] . '-' . $info['version'];\n        $data = array(\n            'caption' => $caption,\n            'border' => true);\n        foreach ($info as $key => $value) {\n            $key = ucwords(trim(str_replace('_', ' ', $key)));\n            $data['data'][] = array($key, $value);\n        }\n        $data['raw'] = $info;\n\n        $this->ui->outputData($data, 'package-info');\n    }\n\n    /**\n     * @access private\n     */\n    function _doInfo2($command, $options, $params, &$obj, $installed)\n    {\n        $reg = &$this->config->getRegistry();\n        $caption = 'About ' . $obj->getChannel() . '/' .$obj->getPackage() . '-' .\n            $obj->getVersion();\n        $data = array(\n            'caption' => $caption,\n            'border' => true);\n        switch ($obj->getPackageType()) {\n            case 'php' :\n                $release = 'PEAR-style PHP-based Package';\n            break;\n            case 'extsrc' :\n                $release = 'PECL-style PHP extension (source code)';\n            break;\n            case 'zendextsrc' :\n                $release = 'PECL-style Zend extension (source code)';\n            break;\n            case 'extbin' :\n                $release = 'PECL-style PHP extension (binary)';\n            break;\n            case 'zendextbin' :\n                $release = 'PECL-style Zend extension (binary)';\n            break;\n            case 'bundle' :\n                $release = 'Package bundle (collection of packages)';\n            break;\n        }\n        $extends = $obj->getExtends();\n        $extends = $extends ?\n            $obj->getPackage() . ' (extends ' . $extends . ')' : $obj->getPackage();\n        if ($src = $obj->getSourcePackage()) {\n            $extends .= ' (source package ' . $src['channel'] . '/' . $src['package'] . ')';\n        }\n\n        $info = array(\n            'Release Type' => $release,\n            'Name' => $extends,\n            'Channel' => $obj->getChannel(),\n            'Summary' => preg_replace('/  +/', ' ', $obj->getSummary()),\n            'Description' => preg_replace('/  +/', ' ', $obj->getDescription()),\n            );\n        $info['Maintainers'] = '';\n        foreach (array('lead', 'developer', 'contributor', 'helper') as $role) {\n            $leads = $obj->{\"get{$role}s\"}();\n            if (!$leads) {\n                continue;\n            }\n\n            if (isset($leads['active'])) {\n                $leads = array($leads);\n            }\n\n            foreach ($leads as $lead) {\n                if (!empty($info['Maintainers'])) {\n                    $info['Maintainers'] .= \"\\n\";\n                }\n\n                $active = $lead['active'] == 'no' ? ', inactive' : '';\n                $info['Maintainers'] .= $lead['name'] . ' <';\n                $info['Maintainers'] .= $lead['email'] . \"> ($role$active)\";\n            }\n        }\n\n        $info['Release Date'] = $obj->getDate();\n        if ($time = $obj->getTime()) {\n            $info['Release Date'] .= ' ' . $time;\n        }\n\n        $info['Release Version'] = $obj->getVersion() . ' (' . $obj->getState() . ')';\n        $info['API Version'] = $obj->getVersion('api') . ' (' . $obj->getState('api') . ')';\n        $info['License'] = $obj->getLicense();\n        $uri = $obj->getLicenseLocation();\n        if ($uri) {\n            if (isset($uri['uri'])) {\n                $info['License'] .= ' (' . $uri['uri'] . ')';\n            } else {\n                $extra = $obj->getInstalledLocation($info['filesource']);\n                if ($extra) {\n                    $info['License'] .= ' (' . $uri['filesource'] . ')';\n                }\n            }\n        }\n\n        $info['Release Notes'] = $obj->getNotes();\n        if ($compat = $obj->getCompatible()) {\n            if (!isset($compat[0])) {\n                $compat = array($compat);\n            }\n\n            $info['Compatible with'] = '';\n            foreach ($compat as $package) {\n                $info['Compatible with'] .= $package['channel'] . '/' . $package['name'] .\n                    \"\\nVersions >= \" . $package['min'] . ', <= ' . $package['max'];\n                if (isset($package['exclude'])) {\n                    if (is_array($package['exclude'])) {\n                        $package['exclude'] = implode(', ', $package['exclude']);\n                    }\n\n                    if (!isset($info['Not Compatible with'])) {\n                        $info['Not Compatible with'] = '';\n                    } else {\n                        $info['Not Compatible with'] .= \"\\n\";\n                    }\n                    $info['Not Compatible with'] .= $package['channel'] . '/' .\n                        $package['name'] . \"\\nVersions \" . $package['exclude'];\n                }\n            }\n        }\n\n        $usesrole = $obj->getUsesrole();\n        if ($usesrole) {\n            if (!isset($usesrole[0])) {\n                $usesrole = array($usesrole);\n            }\n\n            foreach ($usesrole as $roledata) {\n                if (isset($info['Uses Custom Roles'])) {\n                    $info['Uses Custom Roles'] .= \"\\n\";\n                } else {\n                    $info['Uses Custom Roles'] = '';\n                }\n\n                if (isset($roledata['package'])) {\n                    $rolepackage = $reg->parsedPackageNameToString($roledata, true);\n                } else {\n                    $rolepackage = $roledata['uri'];\n                }\n                $info['Uses Custom Roles'] .= $roledata['role'] . ' (' . $rolepackage . ')';\n            }\n        }\n\n        $usestask = $obj->getUsestask();\n        if ($usestask) {\n            if (!isset($usestask[0])) {\n                $usestask = array($usestask);\n            }\n\n            foreach ($usestask as $taskdata) {\n                if (isset($info['Uses Custom Tasks'])) {\n                    $info['Uses Custom Tasks'] .= \"\\n\";\n                } else {\n                    $info['Uses Custom Tasks'] = '';\n                }\n\n                if (isset($taskdata['package'])) {\n                    $taskpackage = $reg->parsedPackageNameToString($taskdata, true);\n                } else {\n                    $taskpackage = $taskdata['uri'];\n                }\n                $info['Uses Custom Tasks'] .= $taskdata['task'] . ' (' . $taskpackage . ')';\n            }\n        }\n\n        $deps = $obj->getDependencies();\n        $info['Required Dependencies'] = 'PHP version ' . $deps['required']['php']['min'];\n        if (isset($deps['required']['php']['max'])) {\n            $info['Required Dependencies'] .= '-' . $deps['required']['php']['max'] . \"\\n\";\n        } else {\n            $info['Required Dependencies'] .= \"\\n\";\n        }\n\n        if (isset($deps['required']['php']['exclude'])) {\n            if (!isset($info['Not Compatible with'])) {\n                $info['Not Compatible with'] = '';\n            } else {\n                $info['Not Compatible with'] .= \"\\n\";\n            }\n\n            if (is_array($deps['required']['php']['exclude'])) {\n                $deps['required']['php']['exclude'] =\n                    implode(', ', $deps['required']['php']['exclude']);\n            }\n            $info['Not Compatible with'] .= \"PHP versions\\n  \" .\n                $deps['required']['php']['exclude'];\n        }\n\n        $info['Required Dependencies'] .= 'PEAR installer version';\n        if (isset($deps['required']['pearinstaller']['max'])) {\n            $info['Required Dependencies'] .= 's ' .\n                $deps['required']['pearinstaller']['min'] . '-' .\n                $deps['required']['pearinstaller']['max'];\n        } else {\n            $info['Required Dependencies'] .= ' ' .\n                $deps['required']['pearinstaller']['min'] . ' or newer';\n        }\n\n        if (isset($deps['required']['pearinstaller']['exclude'])) {\n            if (!isset($info['Not Compatible with'])) {\n                $info['Not Compatible with'] = '';\n            } else {\n                $info['Not Compatible with'] .= \"\\n\";\n            }\n\n            if (is_array($deps['required']['pearinstaller']['exclude'])) {\n                $deps['required']['pearinstaller']['exclude'] =\n                    implode(', ', $deps['required']['pearinstaller']['exclude']);\n            }\n            $info['Not Compatible with'] .= \"PEAR installer\\n  Versions \" .\n                $deps['required']['pearinstaller']['exclude'];\n        }\n\n        foreach (array('Package', 'Extension') as $type) {\n            $index = strtolower($type);\n            if (isset($deps['required'][$index])) {\n                if (isset($deps['required'][$index]['name'])) {\n                    $deps['required'][$index] = array($deps['required'][$index]);\n                }\n\n                foreach ($deps['required'][$index] as $package) {\n                    if (isset($package['conflicts'])) {\n                        $infoindex = 'Not Compatible with';\n                        if (!isset($info['Not Compatible with'])) {\n                            $info['Not Compatible with'] = '';\n                        } else {\n                            $info['Not Compatible with'] .= \"\\n\";\n                        }\n                    } else {\n                        $infoindex = 'Required Dependencies';\n                        $info[$infoindex] .= \"\\n\";\n                    }\n\n                    if ($index == 'extension') {\n                        $name = $package['name'];\n                    } else {\n                        if (isset($package['channel'])) {\n                            $name = $package['channel'] . '/' . $package['name'];\n                        } else {\n                            $name = '__uri/' . $package['name'] . ' (static URI)';\n                        }\n                    }\n\n                    $info[$infoindex] .= \"$type $name\";\n                    if (isset($package['uri'])) {\n                        $info[$infoindex] .= \"\\n  Download URI: $package[uri]\";\n                        continue;\n                    }\n\n                    if (isset($package['max']) && isset($package['min'])) {\n                        $info[$infoindex] .= \" \\n  Versions \" .\n                            $package['min'] . '-' . $package['max'];\n                    } elseif (isset($package['min'])) {\n                        $info[$infoindex] .= \" \\n  Version \" .\n                            $package['min'] . ' or newer';\n                    } elseif (isset($package['max'])) {\n                        $info[$infoindex] .= \" \\n  Version \" .\n                            $package['max'] . ' or older';\n                    }\n\n                    if (isset($package['recommended'])) {\n                        $info[$infoindex] .= \"\\n  Recommended version: $package[recommended]\";\n                    }\n\n                    if (isset($package['exclude'])) {\n                        if (!isset($info['Not Compatible with'])) {\n                            $info['Not Compatible with'] = '';\n                        } else {\n                            $info['Not Compatible with'] .= \"\\n\";\n                        }\n\n                        if (is_array($package['exclude'])) {\n                            $package['exclude'] = implode(', ', $package['exclude']);\n                        }\n\n                        $package['package'] = $package['name']; // for parsedPackageNameToString\n                         if (isset($package['conflicts'])) {\n                            $info['Not Compatible with'] .= '=> except ';\n                        }\n                       $info['Not Compatible with'] .= 'Package ' .\n                            $reg->parsedPackageNameToString($package, true);\n                        $info['Not Compatible with'] .= \"\\n  Versions \" . $package['exclude'];\n                    }\n                }\n            }\n        }\n\n        if (isset($deps['required']['os'])) {\n            if (isset($deps['required']['os']['name'])) {\n                $dep['required']['os']['name'] = array($dep['required']['os']['name']);\n            }\n\n            foreach ($dep['required']['os'] as $os) {\n                if (isset($os['conflicts']) && $os['conflicts'] == 'yes') {\n                    if (!isset($info['Not Compatible with'])) {\n                        $info['Not Compatible with'] = '';\n                    } else {\n                        $info['Not Compatible with'] .= \"\\n\";\n                    }\n                    $info['Not Compatible with'] .= \"$os[name] Operating System\";\n                } else {\n                    $info['Required Dependencies'] .= \"\\n\";\n                    $info['Required Dependencies'] .= \"$os[name] Operating System\";\n                }\n            }\n        }\n\n        if (isset($deps['required']['arch'])) {\n            if (isset($deps['required']['arch']['pattern'])) {\n                $dep['required']['arch']['pattern'] = array($dep['required']['os']['pattern']);\n            }\n\n            foreach ($dep['required']['arch'] as $os) {\n                if (isset($os['conflicts']) && $os['conflicts'] == 'yes') {\n                    if (!isset($info['Not Compatible with'])) {\n                        $info['Not Compatible with'] = '';\n                    } else {\n                        $info['Not Compatible with'] .= \"\\n\";\n                    }\n                    $info['Not Compatible with'] .= \"OS/Arch matching pattern '/$os[pattern]/'\";\n                } else {\n                    $info['Required Dependencies'] .= \"\\n\";\n                    $info['Required Dependencies'] .= \"OS/Arch matching pattern '/$os[pattern]/'\";\n                }\n            }\n        }\n\n        if (isset($deps['optional'])) {\n            foreach (array('Package', 'Extension') as $type) {\n                $index = strtolower($type);\n                if (isset($deps['optional'][$index])) {\n                    if (isset($deps['optional'][$index]['name'])) {\n                        $deps['optional'][$index] = array($deps['optional'][$index]);\n                    }\n\n                    foreach ($deps['optional'][$index] as $package) {\n                        if (isset($package['conflicts']) && $package['conflicts'] == 'yes') {\n                            $infoindex = 'Not Compatible with';\n                            if (!isset($info['Not Compatible with'])) {\n                                $info['Not Compatible with'] = '';\n                            } else {\n                                $info['Not Compatible with'] .= \"\\n\";\n                            }\n                        } else {\n                            $infoindex = 'Optional Dependencies';\n                            if (!isset($info['Optional Dependencies'])) {\n                                $info['Optional Dependencies'] = '';\n                            } else {\n                                $info['Optional Dependencies'] .= \"\\n\";\n                            }\n                        }\n\n                        if ($index == 'extension') {\n                            $name = $package['name'];\n                        } else {\n                            if (isset($package['channel'])) {\n                                $name = $package['channel'] . '/' . $package['name'];\n                            } else {\n                                $name = '__uri/' . $package['name'] . ' (static URI)';\n                            }\n                        }\n\n                        $info[$infoindex] .= \"$type $name\";\n                        if (isset($package['uri'])) {\n                            $info[$infoindex] .= \"\\n  Download URI: $package[uri]\";\n                            continue;\n                        }\n\n                        if ($infoindex == 'Not Compatible with') {\n                            // conflicts is only used to say that all versions conflict\n                            continue;\n                        }\n\n                        if (isset($package['max']) && isset($package['min'])) {\n                            $info[$infoindex] .= \" \\n  Versions \" .\n                                $package['min'] . '-' . $package['max'];\n                        } elseif (isset($package['min'])) {\n                            $info[$infoindex] .= \" \\n  Version \" .\n                                $package['min'] . ' or newer';\n                        } elseif (isset($package['max'])) {\n                            $info[$infoindex] .= \" \\n  Version \" .\n                                $package['min'] . ' or older';\n                        }\n\n                        if (isset($package['recommended'])) {\n                            $info[$infoindex] .= \"\\n  Recommended version: $package[recommended]\";\n                        }\n\n                        if (isset($package['exclude'])) {\n                            if (!isset($info['Not Compatible with'])) {\n                                $info['Not Compatible with'] = '';\n                            } else {\n                                $info['Not Compatible with'] .= \"\\n\";\n                            }\n\n                            if (is_array($package['exclude'])) {\n                                $package['exclude'] = implode(', ', $package['exclude']);\n                            }\n\n                            $info['Not Compatible with'] .= \"Package $package\\n  Versions \" .\n                                $package['exclude'];\n                        }\n                    }\n                }\n            }\n        }\n\n        if (isset($deps['group'])) {\n            if (!isset($deps['group'][0])) {\n                $deps['group'] = array($deps['group']);\n            }\n\n            foreach ($deps['group'] as $group) {\n                $info['Dependency Group ' . $group['attribs']['name']] = $group['attribs']['hint'];\n                $groupindex = $group['attribs']['name'] . ' Contents';\n                $info[$groupindex] = '';\n                foreach (array('Package', 'Extension') as $type) {\n                    $index = strtolower($type);\n                    if (isset($group[$index])) {\n                        if (isset($group[$index]['name'])) {\n                            $group[$index] = array($group[$index]);\n                        }\n\n                        foreach ($group[$index] as $package) {\n                            if (!empty($info[$groupindex])) {\n                                $info[$groupindex] .= \"\\n\";\n                            }\n\n                            if ($index == 'extension') {\n                                $name = $package['name'];\n                            } else {\n                                if (isset($package['channel'])) {\n                                    $name = $package['channel'] . '/' . $package['name'];\n                                } else {\n                                    $name = '__uri/' . $package['name'] . ' (static URI)';\n                                }\n                            }\n\n                            if (isset($package['uri'])) {\n                                if (isset($package['conflicts']) && $package['conflicts'] == 'yes') {\n                                    $info[$groupindex] .= \"Not Compatible with $type $name\";\n                                } else {\n                                    $info[$groupindex] .= \"$type $name\";\n                                }\n\n                                $info[$groupindex] .= \"\\n  Download URI: $package[uri]\";\n                                continue;\n                            }\n\n                            if (isset($package['conflicts']) && $package['conflicts'] == 'yes') {\n                                $info[$groupindex] .= \"Not Compatible with $type $name\";\n                                continue;\n                            }\n\n                            $info[$groupindex] .= \"$type $name\";\n                            if (isset($package['max']) && isset($package['min'])) {\n                                $info[$groupindex] .= \" \\n  Versions \" .\n                                    $package['min'] . '-' . $package['max'];\n                            } elseif (isset($package['min'])) {\n                                $info[$groupindex] .= \" \\n  Version \" .\n                                    $package['min'] . ' or newer';\n                            } elseif (isset($package['max'])) {\n                                $info[$groupindex] .= \" \\n  Version \" .\n                                    $package['min'] . ' or older';\n                            }\n\n                            if (isset($package['recommended'])) {\n                                $info[$groupindex] .= \"\\n  Recommended version: $package[recommended]\";\n                            }\n\n                            if (isset($package['exclude'])) {\n                                if (!isset($info['Not Compatible with'])) {\n                                    $info['Not Compatible with'] = '';\n                                } else {\n                                    $info[$groupindex] .= \"Not Compatible with\\n\";\n                                }\n\n                                if (is_array($package['exclude'])) {\n                                    $package['exclude'] = implode(', ', $package['exclude']);\n                                }\n                                $info[$groupindex] .= \"  Package $package\\n  Versions \" .\n                                    $package['exclude'];\n                            }\n                        }\n                    }\n                }\n            }\n        }\n\n        if ($obj->getPackageType() == 'bundle') {\n            $info['Bundled Packages'] = '';\n            foreach ($obj->getBundledPackages() as $package) {\n                if (!empty($info['Bundled Packages'])) {\n                    $info['Bundled Packages'] .= \"\\n\";\n                }\n\n                if (isset($package['uri'])) {\n                    $info['Bundled Packages'] .= '__uri/' . $package['name'];\n                    $info['Bundled Packages'] .= \"\\n  (URI: $package[uri]\";\n                } else {\n                    $info['Bundled Packages'] .= $package['channel'] . '/' . $package['name'];\n                }\n            }\n        }\n\n        $info['package.xml version'] = '2.0';\n        if ($installed) {\n            if ($obj->getLastModified()) {\n                $info['Last Modified'] = date('Y-m-d H:i', $obj->getLastModified());\n            }\n\n            $v = $obj->getLastInstalledVersion();\n            $info['Previous Installed Version'] = $v ? $v : '- None -';\n        }\n\n        foreach ($info as $key => $value) {\n            $data['data'][] = array($key, $value);\n        }\n\n        $data['raw'] = $obj->getArray(); // no validation needed\n        $this->ui->outputData($data, 'package-info');\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/Command/Registry.xml",
    "content": "<commands version=\"1.0\">\n <list>\n  <summary>List Installed Packages In The Default Channel</summary>\n  <function>doList</function>\n  <shortcut>l</shortcut>\n  <options>\n   <channel>\n    <shortopt>c</shortopt>\n    <doc>list installed packages from this channel</doc>\n    <arg>CHAN</arg>\n   </channel>\n   <allchannels>\n    <shortopt>a</shortopt>\n    <doc>list installed packages from all channels</doc>\n   </allchannels>\n   <channelinfo>\n    <shortopt>i</shortopt>\n    <doc>output fully channel-aware data, even on failure</doc>\n   </channelinfo>\n  </options>\n  <doc>&lt;package&gt;\nIf invoked without parameters, this command lists the PEAR packages\ninstalled in your php_dir ({config php_dir}).  With a parameter, it\nlists the files in a package.\n</doc>\n </list>\n <list-files>\n  <summary>List Files In Installed Package</summary>\n  <function>doFileList</function>\n  <shortcut>fl</shortcut>\n  <options />\n  <doc>&lt;package&gt;\nList the files in an installed package.\n</doc>\n </list-files>\n <shell-test>\n  <summary>Shell Script Test</summary>\n  <function>doShellTest</function>\n  <shortcut>st</shortcut>\n  <options />\n  <doc>&lt;package&gt; [[relation] version]\nTests if a package is installed in the system. Will exit(1) if it is not.\n   &lt;relation&gt;   The version comparison operator. One of:\n                &lt;, lt, &lt;=, le, &gt;, gt, &gt;=, ge, ==, =, eq, !=, &lt;&gt;, ne\n   &lt;version&gt;    The version to compare with\n</doc>\n </shell-test>\n <info>\n  <summary>Display information about a package</summary>\n  <function>doInfo</function>\n  <shortcut>in</shortcut>\n  <options />\n  <doc>&lt;package&gt;\nDisplays information about a package. The package argument may be a\nlocal package file, an URL to a package file, or the name of an\ninstalled package.</doc>\n </info>\n</commands>"
  },
  {
    "path": "newscoop/include/PEAR/Command/Remote.php",
    "content": "<?php\n/**\n * PEAR_Command_Remote (remote-info, list-upgrades, remote-list, search, list-all, download,\n * clear-cache commands)\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Remote.php 287477 2009-08-19 14:19:43Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 0.1\n */\n\n/**\n * base class\n */\nrequire_once 'PEAR/Command/Common.php';\nrequire_once 'PEAR/REST.php';\n\n/**\n * PEAR commands for remote server querying\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 0.1\n */\nclass PEAR_Command_Remote extends PEAR_Command_Common\n{\n    var $commands = array(\n        'remote-info' => array(\n            'summary' => 'Information About Remote Packages',\n            'function' => 'doRemoteInfo',\n            'shortcut' => 'ri',\n            'options' => array(),\n            'doc' => '<package>\nGet details on a package from the server.',\n            ),\n        'list-upgrades' => array(\n            'summary' => 'List Available Upgrades',\n            'function' => 'doListUpgrades',\n            'shortcut' => 'lu',\n            'options' => array(\n                'channelinfo' => array(\n                    'shortopt' => 'i',\n                    'doc' => 'output fully channel-aware data, even on failure',\n                    ),\n            ),\n            'doc' => '[preferred_state]\nList releases on the server of packages you have installed where\na newer version is available with the same release state (stable etc.)\nor the state passed as the second parameter.'\n            ),\n        'remote-list' => array(\n            'summary' => 'List Remote Packages',\n            'function' => 'doRemoteList',\n            'shortcut' => 'rl',\n            'options' => array(\n                'channel' =>\n                    array(\n                    'shortopt' => 'c',\n                    'doc' => 'specify a channel other than the default channel',\n                    'arg' => 'CHAN',\n                    )\n                ),\n            'doc' => '\nLists the packages available on the configured server along with the\nlatest stable release of each package.',\n            ),\n        'search' => array(\n            'summary' => 'Search remote package database',\n            'function' => 'doSearch',\n            'shortcut' => 'sp',\n            'options' => array(\n                'channel' =>\n                    array(\n                    'shortopt' => 'c',\n                    'doc' => 'specify a channel other than the default channel',\n                    'arg' => 'CHAN',\n                    ),\n                'allchannels' => array(\n                    'shortopt' => 'a',\n                    'doc' => 'search packages from all known channels',\n                    ),\n                'channelinfo' => array(\n                    'shortopt' => 'i',\n                    'doc' => 'output fully channel-aware data, even on failure',\n                    ),\n                ),\n            'doc' => '[packagename] [packageinfo]\nLists all packages which match the search parameters.  The first\nparameter is a fragment of a packagename.  The default channel\nwill be used unless explicitly overridden.  The second parameter\nwill be used to match any portion of the summary/description',\n            ),\n        'list-all' => array(\n            'summary' => 'List All Packages',\n            'function' => 'doListAll',\n            'shortcut' => 'la',\n            'options' => array(\n                'channel' =>\n                    array(\n                    'shortopt' => 'c',\n                    'doc' => 'specify a channel other than the default channel',\n                    'arg' => 'CHAN',\n                    ),\n                'channelinfo' => array(\n                    'shortopt' => 'i',\n                    'doc' => 'output fully channel-aware data, even on failure',\n                    ),\n                ),\n            'doc' => '\nLists the packages available on the configured server along with the\nlatest stable release of each package.',\n            ),\n        'download' => array(\n            'summary' => 'Download Package',\n            'function' => 'doDownload',\n            'shortcut' => 'd',\n            'options' => array(\n                'nocompress' => array(\n                    'shortopt' => 'Z',\n                    'doc' => 'download an uncompressed (.tar) file',\n                    ),\n                ),\n            'doc' => '<package>...\nDownload package tarballs.  The files will be named as suggested by the\nserver, for example if you download the DB package and the latest stable\nversion of DB is 1.6.5, the downloaded file will be DB-1.6.5.tgz.',\n            ),\n        'clear-cache' => array(\n            'summary' => 'Clear Web Services Cache',\n            'function' => 'doClearCache',\n            'shortcut' => 'cc',\n            'options' => array(),\n            'doc' => '\nClear the REST cache. See also the cache_ttl configuration\nparameter.\n',\n            ),\n        );\n\n    /**\n     * PEAR_Command_Remote constructor.\n     *\n     * @access public\n     */\n    function PEAR_Command_Remote(&$ui, &$config)\n    {\n        parent::PEAR_Command_Common($ui, $config);\n    }\n\n    function _checkChannelForStatus($channel, $chan)\n    {\n        if (PEAR::isError($chan)) {\n            $this->raiseError($chan);\n        }\n        if (!is_a($chan, 'PEAR_ChannelFile')) {\n            return $this->raiseError('Internal corruption error: invalid channel \"' .\n                $channel . '\"');\n        }\n        $rest = new PEAR_REST($this->config);\n        PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n        $mirror = $this->config->get('preferred_mirror', null,\n                                     $channel);\n        $a = $rest->downloadHttp('http://' . $channel .\n            '/channel.xml', $chan->lastModified());\n        PEAR::staticPopErrorHandling();\n        if (!PEAR::isError($a) && $a) {\n            $this->ui->outputData('WARNING: channel \"' . $channel . '\" has ' .\n                'updated its protocols, use \"' . PEAR_RUNTYPE . ' channel-update ' . $channel .\n                '\" to update');\n        }\n    }\n\n    function doRemoteInfo($command, $options, $params)\n    {\n        if (sizeof($params) != 1) {\n            return $this->raiseError(\"$command expects one param: the remote package name\");\n        }\n        $savechannel = $channel = $this->config->get('default_channel');\n        $reg = &$this->config->getRegistry();\n        $package = $params[0];\n        $parsed = $reg->parsePackageName($package, $channel);\n        if (PEAR::isError($parsed)) {\n            return $this->raiseError('Invalid package name \"' . $package . '\"');\n        }\n\n        $channel = $parsed['channel'];\n        $this->config->set('default_channel', $channel);\n        $chan = $reg->getChannel($channel);\n        if (PEAR::isError($e = $this->_checkChannelForStatus($channel, $chan))) {\n            return $e;\n        }\n\n        $mirror = $this->config->get('preferred_mirror');\n        if ($chan->supportsREST($mirror) && $base = $chan->getBaseURL('REST1.0', $mirror)) {\n            $rest = &$this->config->getREST('1.0', array());\n            $info = $rest->packageInfo($base, $parsed['package'], $channel);\n        }\n\n        if (!isset($info)) {\n            return $this->raiseError('No supported protocol was found');\n        }\n\n        if (PEAR::isError($info)) {\n            $this->config->set('default_channel', $savechannel);\n            return $this->raiseError($info);\n        }\n\n        if (!isset($info['name'])) {\n            return $this->raiseError('No remote package \"' . $package . '\" was found');\n        }\n\n        $installed = $reg->packageInfo($info['name'], null, $channel);\n        $info['installed'] = $installed['version'] ? $installed['version'] : '- no -';\n        if (is_array($info['installed'])) {\n            $info['installed'] = $info['installed']['release'];\n        }\n\n        $this->ui->outputData($info, $command);\n        $this->config->set('default_channel', $savechannel);\n\n        return true;\n    }\n\n    function doRemoteList($command, $options, $params)\n    {\n        $savechannel = $channel = $this->config->get('default_channel');\n        $reg = &$this->config->getRegistry();\n        if (isset($options['channel'])) {\n            $channel = $options['channel'];\n            if (!$reg->channelExists($channel)) {\n                return $this->raiseError('Channel \"' . $channel . '\" does not exist');\n            }\n\n            $this->config->set('default_channel', $channel);\n        }\n\n        $chan = $reg->getChannel($channel);\n        if (PEAR::isError($e = $this->_checkChannelForStatus($channel, $chan))) {\n            return $e;\n        }\n\n        $list_options = false;\n        if ($this->config->get('preferred_state') == 'stable') {\n            $list_options = true;\n        }\n\n        $available = array();\n        if ($chan->supportsREST($this->config->get('preferred_mirror')) &&\n              $base = $chan->getBaseURL('REST1.1', $this->config->get('preferred_mirror'))\n        ) {\n            // use faster list-all if available\n            $rest = &$this->config->getREST('1.1', array());\n            $available = $rest->listAll($base, $list_options, true, false, false, $chan->getName());\n        } elseif ($chan->supportsREST($this->config->get('preferred_mirror')) &&\n              $base = $chan->getBaseURL('REST1.0', $this->config->get('preferred_mirror'))) {\n            $rest = &$this->config->getREST('1.0', array());\n            $available = $rest->listAll($base, $list_options, true, false, false, $chan->getName());\n        }\n\n        if (PEAR::isError($available)) {\n            $this->config->set('default_channel', $savechannel);\n            return $this->raiseError($available);\n        }\n\n        $i = $j = 0;\n        $data = array(\n            'caption' => 'Channel ' . $channel . ' Available packages:',\n            'border' => true,\n            'headline' => array('Package', 'Version'),\n            'channel' => $channel\n            );\n\n        if (count($available) == 0) {\n            $data = '(no packages available yet)';\n        } else {\n            foreach ($available as $name => $info) {\n                $version = (isset($info['stable']) && $info['stable']) ? $info['stable'] : '-n/a-';\n                $data['data'][] = array($name, $version);\n            }\n        }\n        $this->ui->outputData($data, $command);\n        $this->config->set('default_channel', $savechannel);\n        return true;\n    }\n\n    function doListAll($command, $options, $params)\n    {\n        $savechannel = $channel = $this->config->get('default_channel');\n        $reg = &$this->config->getRegistry();\n        if (isset($options['channel'])) {\n            $channel = $options['channel'];\n            if (!$reg->channelExists($channel)) {\n                return $this->raiseError(\"Channel \\\"$channel\\\" does not exist\");\n            }\n\n            $this->config->set('default_channel', $channel);\n        }\n\n        $list_options = false;\n        if ($this->config->get('preferred_state') == 'stable') {\n            $list_options = true;\n        }\n\n        $chan = $reg->getChannel($channel);\n        if (PEAR::isError($e = $this->_checkChannelForStatus($channel, $chan))) {\n            return $e;\n        }\n\n        if ($chan->supportsREST($this->config->get('preferred_mirror')) &&\n              $base = $chan->getBaseURL('REST1.1', $this->config->get('preferred_mirror'))) {\n            // use faster list-all if available\n            $rest = &$this->config->getREST('1.1', array());\n            $available = $rest->listAll($base, $list_options, false, false, false, $chan->getName());\n        } elseif ($chan->supportsREST($this->config->get('preferred_mirror')) &&\n              $base = $chan->getBaseURL('REST1.0', $this->config->get('preferred_mirror'))) {\n            $rest = &$this->config->getREST('1.0', array());\n            $available = $rest->listAll($base, $list_options, false, false, false, $chan->getName());\n        }\n\n        if (PEAR::isError($available)) {\n            $this->config->set('default_channel', $savechannel);\n            return $this->raiseError('The package list could not be fetched from the remote server. Please try again. (Debug info: \"' . $available->getMessage() . '\")');\n        }\n\n        $data = array(\n            'caption' => 'All packages [Channel ' . $channel . ']:',\n            'border' => true,\n            'headline' => array('Package', 'Latest', 'Local'),\n            'channel' => $channel,\n            );\n\n        if (isset($options['channelinfo'])) {\n            // add full channelinfo\n            $data['caption'] = 'Channel ' . $channel . ' All packages:';\n            $data['headline'] = array('Channel', 'Package', 'Latest', 'Local',\n                'Description', 'Dependencies');\n        }\n        $local_pkgs = $reg->listPackages($channel);\n\n        foreach ($available as $name => $info) {\n            $installed = $reg->packageInfo($name, null, $channel);\n            if (is_array($installed['version'])) {\n                $installed['version'] = $installed['version']['release'];\n            }\n            $desc = $info['summary'];\n            if (isset($params[$name])) {\n                $desc .= \"\\n\\n\".$info['description'];\n            }\n            if (isset($options['mode']))\n            {\n                if ($options['mode'] == 'installed' && !isset($installed['version'])) {\n                    continue;\n                }\n                if ($options['mode'] == 'notinstalled' && isset($installed['version'])) {\n                    continue;\n                }\n                if ($options['mode'] == 'upgrades'\n                      && (!isset($installed['version']) || version_compare($installed['version'],\n                      $info['stable'], '>='))) {\n                    continue;\n                }\n            }\n            $pos = array_search(strtolower($name), $local_pkgs);\n            if ($pos !== false) {\n                unset($local_pkgs[$pos]);\n            }\n\n            if (isset($info['stable']) && !$info['stable']) {\n                $info['stable'] = null;\n            }\n\n            if (isset($options['channelinfo'])) {\n                // add full channelinfo\n                if ($info['stable'] === $info['unstable']) {\n                    $state = $info['state'];\n                } else {\n                    $state = 'stable';\n                }\n                $latest = $info['stable'].' ('.$state.')';\n                $local = '';\n                if (isset($installed['version'])) {\n                    $inst_state = $reg->packageInfo($name, 'release_state', $channel);\n                    $local = $installed['version'].' ('.$inst_state.')';\n                }\n\n                $packageinfo = array(\n                    $channel,\n                    $name,\n                    $latest,\n                    $local,\n                    isset($desc) ? $desc : null,\n                    isset($info['deps']) ? $info['deps'] : null,\n                );\n            } else {\n                $packageinfo = array(\n                    $reg->channelAlias($channel) . '/' . $name,\n                    isset($info['stable']) ? $info['stable'] : null,\n                    isset($installed['version']) ? $installed['version'] : null,\n                    isset($desc) ? $desc : null,\n                    isset($info['deps']) ? $info['deps'] : null,\n                );\n            }\n            $data['data'][$info['category']][] = $packageinfo;\n        }\n\n        if (isset($options['mode']) && in_array($options['mode'], array('notinstalled', 'upgrades'))) {\n            $this->config->set('default_channel', $savechannel);\n            $this->ui->outputData($data, $command);\n            return true;\n        }\n\n        foreach ($local_pkgs as $name) {\n            $info = &$reg->getPackage($name, $channel);\n            $data['data']['Local'][] = array(\n                $reg->channelAlias($channel) . '/' . $info->getPackage(),\n                '',\n                $info->getVersion(),\n                $info->getSummary(),\n                $info->getDeps()\n                );\n        }\n\n        $this->config->set('default_channel', $savechannel);\n        $this->ui->outputData($data, $command);\n        return true;\n    }\n\n    function doSearch($command, $options, $params)\n    {\n        if ((!isset($params[0]) || empty($params[0]))\n            && (!isset($params[1]) || empty($params[1])))\n        {\n            return $this->raiseError('no valid search string supplied');\n        }\n\n        $channelinfo = isset($options['channelinfo']);\n        $reg = &$this->config->getRegistry();\n        if (isset($options['allchannels'])) {\n            // search all channels\n            unset($options['allchannels']);\n            $channels = $reg->getChannels();\n            $errors = array();\n            PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n            foreach ($channels as $channel) {\n                if ($channel->getName() != '__uri') {\n                    $options['channel'] = $channel->getName();\n                    $ret = $this->doSearch($command, $options, $params);\n                    if (PEAR::isError($ret)) {\n                        $errors[] = $ret;\n                    }\n                }\n            }\n\n            PEAR::staticPopErrorHandling();\n            if (count($errors) !== 0) {\n                // for now, only give first error\n                return PEAR::raiseError($errors[0]);\n            }\n\n            return true;\n        }\n\n        $savechannel = $channel = $this->config->get('default_channel');\n        $package = strtolower($params[0]);\n        $summary = isset($params[1]) ? $params[1] : false;\n        if (isset($options['channel'])) {\n            $reg = &$this->config->getRegistry();\n            $channel = $options['channel'];\n            if (!$reg->channelExists($channel)) {\n                return $this->raiseError('Channel \"' . $channel . '\" does not exist');\n            }\n\n            $this->config->set('default_channel', $channel);\n        }\n\n        $chan = $reg->getChannel($channel);\n        if (PEAR::isError($e = $this->_checkChannelForStatus($channel, $chan))) {\n            return $e;\n        }\n\n        if ($chan->supportsREST($this->config->get('preferred_mirror')) &&\n              $base = $chan->getBaseURL('REST1.0', $this->config->get('preferred_mirror'))) {\n            $rest = &$this->config->getREST('1.0', array());\n            $available = $rest->listAll($base, false, false, $package, $summary, $chan->getName());\n        }\n\n        if (PEAR::isError($available)) {\n            $this->config->set('default_channel', $savechannel);\n            return $this->raiseError($available);\n        }\n\n        if (!$available && !$channelinfo) {\n            // clean exit when not found, no error !\n            $data = 'no packages found that match pattern \"' . $package . '\", for channel '.$channel.'.';\n            $this->ui->outputData($data);\n            $this->config->set('default_channel', $channel);\n            return true;\n        }\n\n        if ($channelinfo) {\n            $data = array(\n                'caption' => 'Matched packages, channel ' . $channel . ':',\n                'border' => true,\n                'headline' => array('Channel', 'Package', 'Stable/(Latest)', 'Local'),\n                'channel' => $channel\n                );\n        } else {\n            $data = array(\n                'caption' => 'Matched packages, channel ' . $channel . ':',\n                'border' => true,\n                'headline' => array('Package', 'Stable/(Latest)', 'Local'),\n                'channel' => $channel\n                );\n        }\n\n        if (!$available && $channelinfo) {\n            unset($data['headline']);\n            $data['data'] = 'No packages found that match pattern \"' . $package . '\".';\n            $available = array();\n        }\n\n        foreach ($available as $name => $info) {\n            $installed = $reg->packageInfo($name, null, $channel);\n            $desc = $info['summary'];\n            if (isset($params[$name]))\n                $desc .= \"\\n\\n\".$info['description'];\n\n            if (!isset($info['stable']) || !$info['stable']) {\n                $version_remote = 'none';\n            } else {\n                if ($info['unstable']) {\n                    $version_remote = $info['unstable'];\n                } else {\n                    $version_remote = $info['stable'];\n                }\n                $version_remote .= ' ('.$info['state'].')';\n            }\n            $version = is_array($installed['version']) ? $installed['version']['release'] :\n                $installed['version'];\n            if ($channelinfo) {\n                $packageinfo = array(\n                    $channel,\n                    $name,\n                    $version_remote,\n                    $version,\n                    $desc,\n                );\n            } else {\n                $packageinfo = array(\n                    $name,\n                    $version_remote,\n                    $version,\n                    $desc,\n                );\n            }\n            $data['data'][$info['category']][] = $packageinfo;\n        }\n\n        $this->ui->outputData($data, $command);\n        $this->config->set('default_channel', $channel);\n        return true;\n    }\n\n    function &getDownloader($options)\n    {\n        if (!class_exists('PEAR_Downloader')) {\n            require_once 'PEAR/Downloader.php';\n        }\n        $a = &new PEAR_Downloader($this->ui, $options, $this->config);\n        return $a;\n    }\n\n    function doDownload($command, $options, $params)\n    {\n        // make certain that dependencies are ignored\n        $options['downloadonly'] = 1;\n\n        // eliminate error messages for preferred_state-related errors\n        /* TODO: Should be an option, but until now download does respect\n           prefered state */\n        /* $options['ignorepreferred_state'] = 1; */\n        // eliminate error messages for preferred_state-related errors\n\n        $downloader = &$this->getDownloader($options);\n        PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n        $e = $downloader->setDownloadDir(getcwd());\n        PEAR::staticPopErrorHandling();\n        if (PEAR::isError($e)) {\n            return $this->raiseError('Current directory is not writeable, cannot download');\n        }\n\n        $errors = array();\n        $downloaded = array();\n        $err = $downloader->download($params);\n        if (PEAR::isError($err)) {\n            return $err;\n        }\n\n        $errors = $downloader->getErrorMsgs();\n        if (count($errors)) {\n            foreach ($errors as $error) {\n                if ($error !== null) {\n                    $this->ui->outputData($error);\n                }\n            }\n\n            return $this->raiseError(\"$command failed\");\n        }\n\n        $downloaded = $downloader->getDownloadedPackages();\n        foreach ($downloaded as $pkg) {\n            $this->ui->outputData(\"File $pkg[file] downloaded\", $command);\n        }\n\n        return true;\n    }\n\n    function downloadCallback($msg, $params = null)\n    {\n        if ($msg == 'done') {\n            $this->bytes_downloaded = $params;\n        }\n    }\n\n    function doListUpgrades($command, $options, $params)\n    {\n        require_once 'PEAR/Common.php';\n        if (isset($params[0]) && !is_array(PEAR_Common::betterStates($params[0]))) {\n            return $this->raiseError($params[0] . ' is not a valid state (stable/beta/alpha/devel/etc.) try \"pear help list-upgrades\"');\n        }\n\n        $savechannel = $channel = $this->config->get('default_channel');\n        $reg = &$this->config->getRegistry();\n        foreach ($reg->listChannels() as $channel) {\n            $inst = array_flip($reg->listPackages($channel));\n            if (!count($inst)) {\n                continue;\n            }\n\n            if ($channel == '__uri') {\n                continue;\n            }\n\n            $this->config->set('default_channel', $channel);\n            $state = empty($params[0]) ? $this->config->get('preferred_state') : $params[0];\n\n            $caption = $channel . ' Available Upgrades';\n            $chan = $reg->getChannel($channel);\n            if (PEAR::isError($e = $this->_checkChannelForStatus($channel, $chan))) {\n                return $e;\n            }\n\n            $latest = array();\n            $base2  = false;\n            $preferred_mirror = $this->config->get('preferred_mirror');\n            if ($chan->supportsREST($preferred_mirror) &&\n                (\n                   //($base2 = $chan->getBaseURL('REST1.4', $preferred_mirror)) ||\n                   ($base  = $chan->getBaseURL('REST1.0', $preferred_mirror))\n                )\n\n            ) {\n                if ($base2) {\n                    $rest = &$this->config->getREST('1.4', array());\n                    $base = $base2;\n                } else {\n                    $rest = &$this->config->getREST('1.0', array());\n                }\n\n                if (empty($state) || $state == 'any') {\n                    $state = false;\n                } else {\n                    $caption .= ' (' . implode(', ', PEAR_Common::betterStates($state, true)) . ')';\n                }\n\n                PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n                $latest = $rest->listLatestUpgrades($base, $state, $inst, $channel, $reg);\n                PEAR::staticPopErrorHandling();\n            }\n\n            if (PEAR::isError($latest)) {\n                $this->ui->outputData($latest->getMessage());\n                continue;\n            }\n\n            $caption .= ':';\n            if (PEAR::isError($latest)) {\n                $this->config->set('default_channel', $savechannel);\n                return $latest;\n            }\n\n            $data = array(\n                'caption' => $caption,\n                'border' => 1,\n                'headline' => array('Channel', 'Package', 'Local', 'Remote', 'Size'),\n                'channel' => $channel\n                );\n\n            foreach ((array)$latest as $pkg => $info) {\n                $package = strtolower($pkg);\n                if (!isset($inst[$package])) {\n                    // skip packages we don't have installed\n                    continue;\n                }\n\n                extract($info);\n                $inst_version = $reg->packageInfo($package, 'version', $channel);\n                $inst_state   = $reg->packageInfo($package, 'release_state', $channel);\n                if (version_compare(\"$version\", \"$inst_version\", \"le\")) {\n                    // installed version is up-to-date\n                    continue;\n                }\n\n                if ($filesize >= 20480) {\n                    $filesize += 1024 - ($filesize % 1024);\n                    $fs = sprintf(\"%dkB\", $filesize / 1024);\n                } elseif ($filesize > 0) {\n                    $filesize += 103 - ($filesize % 103);\n                    $fs = sprintf(\"%.1fkB\", $filesize / 1024.0);\n                } else {\n                    $fs = \"  -\"; // XXX center instead\n                }\n\n                $data['data'][] = array($channel, $pkg, \"$inst_version ($inst_state)\", \"$version ($state)\", $fs);\n            }\n\n            if (isset($options['channelinfo'])) {\n                if (empty($data['data'])) {\n                    unset($data['headline']);\n                    if (count($inst) == 0) {\n                        $data['data'] = '(no packages installed)';\n                    } else {\n                        $data['data'] = '(no upgrades available)';\n                    }\n                }\n                $this->ui->outputData($data, $command);\n            } else {\n                if (empty($data['data'])) {\n                    $this->ui->outputData('Channel ' . $channel . ': No upgrades available');\n                } else {\n                    $this->ui->outputData($data, $command);\n                }\n            }\n        }\n\n        $this->config->set('default_channel', $savechannel);\n        return true;\n    }\n\n    function doClearCache($command, $options, $params)\n    {\n        $cache_dir = $this->config->get('cache_dir');\n        $verbose   = $this->config->get('verbose');\n        $output = '';\n        if (!file_exists($cache_dir) || !is_dir($cache_dir)) {\n            return $this->raiseError(\"$cache_dir does not exist or is not a directory\");\n        }\n\n        if (!($dp = @opendir($cache_dir))) {\n            return $this->raiseError(\"opendir($cache_dir) failed: $php_errormsg\");\n        }\n\n        if ($verbose >= 1) {\n            $output .= \"reading directory $cache_dir\\n\";\n        }\n\n        $num = 0;\n        while ($ent = readdir($dp)) {\n            if (preg_match('/rest.cache(file|id)\\\\z/', $ent)) {\n                $path = $cache_dir . DIRECTORY_SEPARATOR . $ent;\n                if (file_exists($path)) {\n                    $ok = @unlink($path);\n                } else {\n                    $ok = false;\n                    $php_errormsg = '';\n                }\n\n                if ($ok) {\n                    if ($verbose >= 2) {\n                        $output .= \"deleted $path\\n\";\n                    }\n                    $num++;\n                } elseif ($verbose >= 1) {\n                    $output .= \"failed to delete $path $php_errormsg\\n\";\n                }\n            }\n        }\n\n        closedir($dp);\n        if ($verbose >= 1) {\n            $output .= \"$num cache entries cleared\\n\";\n        }\n\n        $this->ui->outputData(rtrim($output), $command);\n        return $num;\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/Command/Remote.xml",
    "content": "<commands version=\"1.0\">\n <remote-info>\n  <summary>Information About Remote Packages</summary>\n  <function>doRemoteInfo</function>\n  <shortcut>ri</shortcut>\n  <options />\n  <doc>&lt;package&gt;\nGet details on a package from the server.</doc>\n </remote-info>\n <list-upgrades>\n  <summary>List Available Upgrades</summary>\n  <function>doListUpgrades</function>\n  <shortcut>lu</shortcut>\n  <options>\n   <channelinfo>\n    <shortopt>i</shortopt>\n    <doc>output fully channel-aware data, even on failure</doc>\n   </channelinfo>\n  </options>\n  <doc>[preferred_state]\nList releases on the server of packages you have installed where\na newer version is available with the same release state (stable etc.)\nor the state passed as the second parameter.</doc>\n </list-upgrades>\n <remote-list>\n  <summary>List Remote Packages</summary>\n  <function>doRemoteList</function>\n  <shortcut>rl</shortcut>\n  <options>\n   <channel>\n    <shortopt>c</shortopt>\n    <doc>specify a channel other than the default channel</doc>\n    <arg>CHAN</arg>\n   </channel>\n  </options>\n  <doc>\nLists the packages available on the configured server along with the\nlatest stable release of each package.</doc>\n </remote-list>\n <search>\n  <summary>Search remote package database</summary>\n  <function>doSearch</function>\n  <shortcut>sp</shortcut>\n  <options>\n   <channel>\n    <shortopt>c</shortopt>\n    <doc>specify a channel other than the default channel</doc>\n    <arg>CHAN</arg>\n   </channel>\n   <allchannels>\n    <shortopt>a</shortopt>\n    <doc>search packages from all known channels</doc>\n   </allchannels>\n   <channelinfo>\n    <shortopt>i</shortopt>\n    <doc>output fully channel-aware data, even on failure</doc>\n   </channelinfo>\n  </options>\n  <doc>[packagename] [packageinfo]\nLists all packages which match the search parameters.  The first\nparameter is a fragment of a packagename.  The default channel\nwill be used unless explicitly overridden.  The second parameter\nwill be used to match any portion of the summary/description</doc>\n </search>\n <list-all>\n  <summary>List All Packages</summary>\n  <function>doListAll</function>\n  <shortcut>la</shortcut>\n  <options>\n   <channel>\n    <shortopt>c</shortopt>\n    <doc>specify a channel other than the default channel</doc>\n    <arg>CHAN</arg>\n   </channel>\n   <channelinfo>\n    <shortopt>i</shortopt>\n    <doc>output fully channel-aware data, even on failure</doc>\n   </channelinfo>\n  </options>\n  <doc>\nLists the packages available on the configured server along with the\nlatest stable release of each package.</doc>\n </list-all>\n <download>\n  <summary>Download Package</summary>\n  <function>doDownload</function>\n  <shortcut>d</shortcut>\n  <options>\n   <nocompress>\n    <shortopt>Z</shortopt>\n    <doc>download an uncompressed (.tar) file</doc>\n   </nocompress>\n  </options>\n  <doc>&lt;package&gt;...\nDownload package tarballs.  The files will be named as suggested by the\nserver, for example if you download the DB package and the latest stable\nversion of DB is 1.6.5, the downloaded file will be DB-1.6.5.tgz.</doc>\n </download>\n <clear-cache>\n  <summary>Clear Web Services Cache</summary>\n  <function>doClearCache</function>\n  <shortcut>cc</shortcut>\n  <options />\n  <doc>\nClear the XML-RPC/REST cache.  See also the cache_ttl configuration\nparameter.\n</doc>\n </clear-cache>\n</commands>"
  },
  {
    "path": "newscoop/include/PEAR/Command/Test.php",
    "content": "<?php\n/**\n * PEAR_Command_Test (run-tests)\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Martin Jansen <mj@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Test.php 279072 2009-04-20 19:57:41Z cellog $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 0.1\n */\n\n/**\n * base class\n */\nrequire_once 'PEAR/Command/Common.php';\n\n/**\n * PEAR commands for login/logout\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Martin Jansen <mj@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 0.1\n */\n\nclass PEAR_Command_Test extends PEAR_Command_Common\n{\n    var $commands = array(\n        'run-tests' => array(\n            'summary' => 'Run Regression Tests',\n            'function' => 'doRunTests',\n            'shortcut' => 'rt',\n            'options' => array(\n                'recur' => array(\n                    'shortopt' => 'r',\n                    'doc' => 'Run tests in child directories, recursively.  4 dirs deep maximum',\n                ),\n                'ini' => array(\n                    'shortopt' => 'i',\n                    'doc' => 'actual string of settings to pass to php in format \" -d setting=blah\"',\n                    'arg' => 'SETTINGS'\n                ),\n                'realtimelog' => array(\n                    'shortopt' => 'l',\n                    'doc' => 'Log test runs/results as they are run',\n                ),\n                'quiet' => array(\n                    'shortopt' => 'q',\n                    'doc' => 'Only display detail for failed tests',\n                ),\n                'simple' => array(\n                    'shortopt' => 's',\n                    'doc' => 'Display simple output for all tests',\n                ),\n                'package' => array(\n                    'shortopt' => 'p',\n                    'doc' => 'Treat parameters as installed packages from which to run tests',\n                ),\n                'phpunit' => array(\n                    'shortopt' => 'u',\n                    'doc' => 'Search parameters for AllTests.php, and use that to run phpunit-based tests\nIf none is found, all .phpt tests will be tried instead.',\n                ),\n                'tapoutput' => array(\n                    'shortopt' => 't',\n                    'doc' => 'Output run-tests.log in TAP-compliant format',\n                ),\n                'cgi' => array(\n                    'shortopt' => 'c',\n                    'doc' => 'CGI php executable (needed for tests with POST/GET section)',\n                    'arg' => 'PHPCGI',\n                ),\n                'coverage' => array(\n                    'shortopt' => 'x',\n                    'doc'      => 'Generate a code coverage report (requires Xdebug 2.0.0+)',\n                ),\n            ),\n            'doc' => '[testfile|dir ...]\nRun regression tests with PHP\\'s regression testing script (run-tests.php).',\n            ),\n        );\n\n    var $output;\n\n    /**\n     * PEAR_Command_Test constructor.\n     *\n     * @access public\n     */\n    function PEAR_Command_Test(&$ui, &$config)\n    {\n        parent::PEAR_Command_Common($ui, $config);\n    }\n\n    function doRunTests($command, $options, $params)\n    {\n        if (isset($options['phpunit']) && isset($options['tapoutput'])) {\n            return $this->raiseError('ERROR: cannot use both --phpunit and --tapoutput at the same time');\n        }\n\n        require_once 'PEAR/Common.php';\n        require_once 'System.php';\n        $log = new PEAR_Common;\n        $log->ui = &$this->ui; // slightly hacky, but it will work\n        $tests = array();\n        $depth = isset($options['recur']) ? 14 : 1;\n\n        if (!count($params)) {\n            $params[] = '.';\n        }\n\n        if (isset($options['package'])) {\n            $oldparams = $params;\n            $params = array();\n            $reg = &$this->config->getRegistry();\n            foreach ($oldparams as $param) {\n                $pname = $reg->parsePackageName($param, $this->config->get('default_channel'));\n                if (PEAR::isError($pname)) {\n                    return $this->raiseError($pname);\n                }\n\n                $package = &$reg->getPackage($pname['package'], $pname['channel']);\n                if (!$package) {\n                    return PEAR::raiseError('Unknown package \"' .\n                        $reg->parsedPackageNameToString($pname) . '\"');\n                }\n\n                $filelist = $package->getFilelist();\n                foreach ($filelist as $name => $atts) {\n                    if (isset($atts['role']) && $atts['role'] != 'test') {\n                        continue;\n                    }\n\n                    if (isset($options['phpunit']) && preg_match('/AllTests\\.php\\\\z/i', $name)) {\n                        $params[] = $atts['installed_as'];\n                        continue;\n                    } elseif (!preg_match('/\\.phpt\\\\z/', $name)) {\n                        continue;\n                    }\n                    $params[] = $atts['installed_as'];\n                }\n            }\n        }\n\n        foreach ($params as $p) {\n            if (is_dir($p)) {\n                if (isset($options['phpunit'])) {\n                    $dir = System::find(array($p, '-type', 'f',\n                                                '-maxdepth', $depth,\n                                                '-name', 'AllTests.php'));\n                    if (count($dir)) {\n                        foreach ($dir as $p) {\n                            $p = realpath($p);\n                            if (!count($tests) ||\n                                  (count($tests) && strlen($p) < strlen($tests[0]))) {\n                                // this is in a higher-level directory, use this one instead.\n                                $tests = array($p);\n                            }\n                        }\n                    }\n                    continue;\n                }\n\n                $args  = array($p, '-type', 'f', '-name', '*.phpt');\n            } else {\n                if (isset($options['phpunit'])) {\n                    if (preg_match('/AllTests\\.php\\\\z/i', $p)) {\n                        $p = realpath($p);\n                        if (!count($tests) ||\n                              (count($tests) && strlen($p) < strlen($tests[0]))) {\n                            // this is in a higher-level directory, use this one instead.\n                            $tests = array($p);\n                        }\n                    }\n                    continue;\n                }\n\n                if (file_exists($p) && preg_match('/\\.phpt$/', $p)) {\n                    $tests[] = $p;\n                    continue;\n                }\n\n                if (!preg_match('/\\.phpt\\\\z/', $p)) {\n                    $p .= '.phpt';\n                }\n\n                $args  = array(dirname($p), '-type', 'f', '-name', $p);\n            }\n\n            if (!isset($options['recur'])) {\n                $args[] = '-maxdepth';\n                $args[] = 1;\n            }\n\n            $dir   = System::find($args);\n            $tests = array_merge($tests, $dir);\n        }\n\n        $ini_settings = '';\n        if (isset($options['ini'])) {\n            $ini_settings .= $options['ini'];\n        }\n\n        if (isset($_ENV['TEST_PHP_INCLUDE_PATH'])) {\n            $ini_settings .= \" -d include_path={$_ENV['TEST_PHP_INCLUDE_PATH']}\";\n        }\n\n        if ($ini_settings) {\n            $this->ui->outputData('Using INI settings: \"' . $ini_settings . '\"');\n        }\n\n        $skipped = $passed = $failed = array();\n        $tests_count = count($tests);\n        $this->ui->outputData('Running ' . $tests_count . ' tests', $command);\n        $start = time();\n        if (isset($options['realtimelog']) && file_exists('run-tests.log')) {\n            unlink('run-tests.log');\n        }\n\n        if (isset($options['tapoutput'])) {\n            $tap = '1..' . $tests_count . \"\\n\";\n        }\n\n        require_once 'PEAR/RunTest.php';\n        $run = new PEAR_RunTest($log, $options);\n        $run->tests_count = $tests_count;\n\n        if (isset($options['coverage']) && extension_loaded('xdebug')){\n            $run->xdebug_loaded = true;\n        } else {\n            $run->xdebug_loaded = false;\n        }\n\n        $j = $i = 1;\n        foreach ($tests as $t) {\n            if (isset($options['realtimelog'])) {\n                $fp = @fopen('run-tests.log', 'a');\n                if ($fp) {\n                    fwrite($fp, \"Running test [$i / $tests_count] $t...\");\n                    fclose($fp);\n                }\n            }\n            PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n            if (isset($options['phpunit'])) {\n                $result = $run->runPHPUnit($t, $ini_settings);\n            } else {\n                $result = $run->run($t, $ini_settings, $j);\n            }\n            PEAR::staticPopErrorHandling();\n            if (PEAR::isError($result)) {\n                $this->ui->log($result->getMessage());\n                continue;\n            }\n\n            if (isset($options['tapoutput'])) {\n                $tap .= $result[0] . ' ' . $i . $result[1] . \"\\n\";\n                continue;\n            }\n\n            if (isset($options['realtimelog'])) {\n                $fp = @fopen('run-tests.log', 'a');\n                if ($fp) {\n                    fwrite($fp, \"$result\\n\");\n                    fclose($fp);\n                }\n            }\n\n            if ($result == 'FAILED') {\n                $failed[] = $t;\n            }\n            if ($result == 'PASSED') {\n                $passed[] = $t;\n            }\n            if ($result == 'SKIPPED') {\n                $skipped[] = $t;\n            }\n\n            $j++;\n        }\n\n        $total = date('i:s', time() - $start);\n        if (isset($options['tapoutput'])) {\n            $fp = @fopen('run-tests.log', 'w');\n            if ($fp) {\n                fwrite($fp, $tap, strlen($tap));\n                fclose($fp);\n                $this->ui->outputData('wrote TAP-format log to \"' .realpath('run-tests.log') .\n                    '\"', $command);\n            }\n        } else {\n            if (count($failed)) {\n                $output = \"TOTAL TIME: $total\\n\";\n                $output .= count($passed) . \" PASSED TESTS\\n\";\n                $output .= count($skipped) . \" SKIPPED TESTS\\n\";\n                $output .= count($failed) . \" FAILED TESTS:\\n\";\n                foreach ($failed as $failure) {\n                    $output .= $failure . \"\\n\";\n                }\n\n                $mode = isset($options['realtimelog']) ? 'a' : 'w';\n                $fp   = @fopen('run-tests.log', $mode);\n\n                if ($fp) {\n                    fwrite($fp, $output, strlen($output));\n                    fclose($fp);\n                    $this->ui->outputData('wrote log to \"' . realpath('run-tests.log') . '\"', $command);\n                }\n            } elseif (file_exists('run-tests.log') && !is_dir('run-tests.log')) {\n                @unlink('run-tests.log');\n            }\n        }\n        $this->ui->outputData('TOTAL TIME: ' . $total);\n        $this->ui->outputData(count($passed) . ' PASSED TESTS', $command);\n        $this->ui->outputData(count($skipped) . ' SKIPPED TESTS', $command);\n        if (count($failed)) {\n            $this->ui->outputData(count($failed) . ' FAILED TESTS:', $command);\n            foreach ($failed as $failure) {\n                $this->ui->outputData($failure, $command);\n            }\n        }\n\n        return true;\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/Command/Test.xml",
    "content": "<commands version=\"1.0\">\n <run-tests>\n  <summary>Run Regression Tests</summary>\n  <function>doRunTests</function>\n  <shortcut>rt</shortcut>\n  <options>\n   <recur>\n    <shortopt>r</shortopt>\n    <doc>Run tests in child directories, recursively.  4 dirs deep maximum</doc>\n   </recur>\n   <ini>\n    <shortopt>i</shortopt>\n    <doc>actual string of settings to pass to php in format &quot; -d setting=blah&quot;</doc>\n    <arg>SETTINGS</arg>\n   </ini>\n   <realtimelog>\n    <shortopt>l</shortopt>\n    <doc>Log test runs/results as they are run</doc>\n   </realtimelog>\n   <quiet>\n    <shortopt>q</shortopt>\n    <doc>Only display detail for failed tests</doc>\n   </quiet>\n   <simple>\n    <shortopt>s</shortopt>\n    <doc>Display simple output for all tests</doc>\n   </simple>\n   <package>\n    <shortopt>p</shortopt>\n    <doc>Treat parameters as installed packages from which to run tests</doc>\n   </package>\n   <phpunit>\n    <shortopt>u</shortopt>\n    <doc>Search parameters for AllTests.php, and use that to run phpunit-based tests\nIf none is found, all .phpt tests will be tried instead.</doc>\n   </phpunit>\n   <tapoutput>\n    <shortopt>t</shortopt>\n    <doc>Output run-tests.log in TAP-compliant format</doc>\n   </tapoutput>\n   <cgi>\n    <shortopt>c</shortopt>\n    <doc>CGI php executable (needed for tests with POST/GET section)</doc>\n    <arg>PHPCGI</arg>\n   </cgi>\n   <coverage>\n    <shortopt>x</shortopt>\n    <doc>Generate a code coverage report (requires Xdebug 2.0.0+)</doc>\n   </coverage>\n  </options>\n  <doc>[testfile|dir ...]\nRun regression tests with PHP&#039;s regression testing script (run-tests.php).</doc>\n </run-tests>\n</commands>"
  },
  {
    "path": "newscoop/include/PEAR/Command.php",
    "content": "<?php\n/**\n * PEAR_Command, command pattern class\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Command.php 286494 2009-07-29 06:57:11Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 0.1\n */\n\n/**\n * Needed for error handling\n */\nrequire_once 'PEAR.php';\nrequire_once 'PEAR/Frontend.php';\nrequire_once 'PEAR/XMLParser.php';\n\n/**\n * List of commands and what classes they are implemented in.\n * @var array command => implementing class\n */\n$GLOBALS['_PEAR_Command_commandlist'] = array();\n\n/**\n * List of commands and their descriptions\n * @var array command => description\n */\n$GLOBALS['_PEAR_Command_commanddesc'] = array();\n\n/**\n * List of shortcuts to common commands.\n * @var array shortcut => command\n */\n$GLOBALS['_PEAR_Command_shortcuts'] = array();\n\n/**\n * Array of command objects\n * @var array class => object\n */\n$GLOBALS['_PEAR_Command_objects'] = array();\n\n/**\n * PEAR command class, a simple factory class for administrative\n * commands.\n *\n * How to implement command classes:\n *\n * - The class must be called PEAR_Command_Nnn, installed in the\n *   \"PEAR/Common\" subdir, with a method called getCommands() that\n *   returns an array of the commands implemented by the class (see\n *   PEAR/Command/Install.php for an example).\n *\n * - The class must implement a run() function that is called with three\n *   params:\n *\n *    (string) command name\n *    (array)  assoc array with options, freely defined by each\n *             command, for example:\n *             array('force' => true)\n *    (array)  list of the other parameters\n *\n *   The run() function returns a PEAR_CommandResponse object.  Use\n *   these methods to get information:\n *\n *    int getStatus()   Returns PEAR_COMMAND_(SUCCESS|FAILURE|PARTIAL)\n *                      *_PARTIAL means that you need to issue at least\n *                      one more command to complete the operation\n *                      (used for example for validation steps).\n *\n *    string getMessage()  Returns a message for the user.  Remember,\n *                         no HTML or other interface-specific markup.\n *\n *   If something unexpected happens, run() returns a PEAR error.\n *\n * - DON'T OUTPUT ANYTHING! Return text for output instead.\n *\n * - DON'T USE HTML! The text you return will be used from both Gtk,\n *   web and command-line interfaces, so for now, keep everything to\n *   plain text.\n *\n * - DON'T USE EXIT OR DIE! Always use pear errors.  From static\n *   classes do PEAR::raiseError(), from other classes do\n *   $this->raiseError().\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 0.1\n */\nclass PEAR_Command\n{\n    // {{{ factory()\n\n    /**\n     * Get the right object for executing a command.\n     *\n     * @param string $command The name of the command\n     * @param object $config  Instance of PEAR_Config object\n     *\n     * @return object the command object or a PEAR error\n     *\n     * @access public\n     * @static\n     */\n    function &factory($command, &$config)\n    {\n        if (empty($GLOBALS['_PEAR_Command_commandlist'])) {\n            PEAR_Command::registerCommands();\n        }\n        if (isset($GLOBALS['_PEAR_Command_shortcuts'][$command])) {\n            $command = $GLOBALS['_PEAR_Command_shortcuts'][$command];\n        }\n        if (!isset($GLOBALS['_PEAR_Command_commandlist'][$command])) {\n            $a = PEAR::raiseError(\"unknown command `$command'\");\n            return $a;\n        }\n        $class = $GLOBALS['_PEAR_Command_commandlist'][$command];\n        if (!class_exists($class)) {\n            require_once $GLOBALS['_PEAR_Command_objects'][$class];\n        }\n        if (!class_exists($class)) {\n            $a = PEAR::raiseError(\"unknown command `$command'\");\n            return $a;\n        }\n        $ui =& PEAR_Command::getFrontendObject();\n        $obj = &new $class($ui, $config);\n        return $obj;\n    }\n\n    // }}}\n    // {{{ & getObject()\n    function &getObject($command)\n    {\n        $class = $GLOBALS['_PEAR_Command_commandlist'][$command];\n        if (!class_exists($class)) {\n            require_once $GLOBALS['_PEAR_Command_objects'][$class];\n        }\n        if (!class_exists($class)) {\n            return PEAR::raiseError(\"unknown command `$command'\");\n        }\n        $ui =& PEAR_Command::getFrontendObject();\n        $config = &PEAR_Config::singleton();\n        $obj = &new $class($ui, $config);\n        return $obj;\n    }\n\n    // }}}\n    // {{{ & getFrontendObject()\n\n    /**\n     * Get instance of frontend object.\n     *\n     * @return object|PEAR_Error\n     * @static\n     */\n    function &getFrontendObject()\n    {\n        $a = &PEAR_Frontend::singleton();\n        return $a;\n    }\n\n    // }}}\n    // {{{ & setFrontendClass()\n\n    /**\n     * Load current frontend class.\n     *\n     * @param string $uiclass Name of class implementing the frontend\n     *\n     * @return object the frontend object, or a PEAR error\n     * @static\n     */\n    function &setFrontendClass($uiclass)\n    {\n        $a = &PEAR_Frontend::setFrontendClass($uiclass);\n        return $a;\n    }\n\n    // }}}\n    // {{{ setFrontendType()\n\n    /**\n     * Set current frontend.\n     *\n     * @param string $uitype Name of the frontend type (for example \"CLI\")\n     *\n     * @return object the frontend object, or a PEAR error\n     * @static\n     */\n    function setFrontendType($uitype)\n    {\n        $uiclass = 'PEAR_Frontend_' . $uitype;\n        return PEAR_Command::setFrontendClass($uiclass);\n    }\n\n    // }}}\n    // {{{ registerCommands()\n\n    /**\n     * Scan through the Command directory looking for classes\n     * and see what commands they implement.\n     *\n     * @param bool   (optional) if FALSE (default), the new list of\n     *               commands should replace the current one.  If TRUE,\n     *               new entries will be merged with old.\n     *\n     * @param string (optional) where (what directory) to look for\n     *               classes, defaults to the Command subdirectory of\n     *               the directory from where this file (__FILE__) is\n     *               included.\n     *\n     * @return bool TRUE on success, a PEAR error on failure\n     *\n     * @access public\n     * @static\n     */\n    function registerCommands($merge = false, $dir = null)\n    {\n        $parser = new PEAR_XMLParser;\n        if ($dir === null) {\n            $dir = dirname(__FILE__) . '/Command';\n        }\n        if (!is_dir($dir)) {\n            return PEAR::raiseError(\"registerCommands: opendir($dir) '$dir' does not exist or is not a directory\");\n        }\n        $dp = @opendir($dir);\n        if (empty($dp)) {\n            return PEAR::raiseError(\"registerCommands: opendir($dir) failed\");\n        }\n        if (!$merge) {\n            $GLOBALS['_PEAR_Command_commandlist'] = array();\n        }\n\n        while ($file = readdir($dp)) {\n            if ($file{0} == '.' || substr($file, -4) != '.xml') {\n                continue;\n            }\n\n            $f = substr($file, 0, -4);\n            $class = \"PEAR_Command_\" . $f;\n            // List of commands\n            if (empty($GLOBALS['_PEAR_Command_objects'][$class])) {\n                $GLOBALS['_PEAR_Command_objects'][$class] = \"$dir/\" . $f . '.php';\n            }\n\n            $parser->parse(file_get_contents(\"$dir/$file\"));\n            $implements = $parser->getData();\n            foreach ($implements as $command => $desc) {\n                if ($command == 'attribs') {\n                    continue;\n                }\n\n                if (isset($GLOBALS['_PEAR_Command_commandlist'][$command])) {\n                    return PEAR::raiseError('Command \"' . $command . '\" already registered in ' .\n                        'class \"' . $GLOBALS['_PEAR_Command_commandlist'][$command] . '\"');\n                }\n\n                $GLOBALS['_PEAR_Command_commandlist'][$command] = $class;\n                $GLOBALS['_PEAR_Command_commanddesc'][$command] = $desc['summary'];\n                if (isset($desc['shortcut'])) {\n                    $shortcut = $desc['shortcut'];\n                    if (isset($GLOBALS['_PEAR_Command_shortcuts'][$shortcut])) {\n                        return PEAR::raiseError('Command shortcut \"' . $shortcut . '\" already ' .\n                            'registered to command \"' . $command . '\" in class \"' .\n                            $GLOBALS['_PEAR_Command_commandlist'][$command] . '\"');\n                    }\n                    $GLOBALS['_PEAR_Command_shortcuts'][$shortcut] = $command;\n                }\n\n                if (isset($desc['options']) && $desc['options']) {\n                    foreach ($desc['options'] as $oname => $option) {\n                        if (isset($option['shortopt']) && strlen($option['shortopt']) > 1) {\n                            return PEAR::raiseError('Option \"' . $oname . '\" short option \"' .\n                                $option['shortopt'] . '\" must be ' .\n                                'only 1 character in Command \"' . $command . '\" in class \"' .\n                                $class . '\"');\n                        }\n                    }\n                }\n            }\n        }\n\n        ksort($GLOBALS['_PEAR_Command_shortcuts']);\n        ksort($GLOBALS['_PEAR_Command_commandlist']);\n        @closedir($dp);\n        return true;\n    }\n\n    // }}}\n    // {{{ getCommands()\n\n    /**\n     * Get the list of currently supported commands, and what\n     * classes implement them.\n     *\n     * @return array command => implementing class\n     *\n     * @access public\n     * @static\n     */\n    function getCommands()\n    {\n        if (empty($GLOBALS['_PEAR_Command_commandlist'])) {\n            PEAR_Command::registerCommands();\n        }\n        return $GLOBALS['_PEAR_Command_commandlist'];\n    }\n\n    // }}}\n    // {{{ getShortcuts()\n\n    /**\n     * Get the list of command shortcuts.\n     *\n     * @return array shortcut => command\n     *\n     * @access public\n     * @static\n     */\n    function getShortcuts()\n    {\n        if (empty($GLOBALS['_PEAR_Command_shortcuts'])) {\n            PEAR_Command::registerCommands();\n        }\n        return $GLOBALS['_PEAR_Command_shortcuts'];\n    }\n\n    // }}}\n    // {{{ getGetoptArgs()\n\n    /**\n     * Compiles arguments for getopt.\n     *\n     * @param string $command     command to get optstring for\n     * @param string $short_args  (reference) short getopt format\n     * @param array  $long_args   (reference) long getopt format\n     *\n     * @return void\n     *\n     * @access public\n     * @static\n     */\n    function getGetoptArgs($command, &$short_args, &$long_args)\n    {\n        if (empty($GLOBALS['_PEAR_Command_commandlist'])) {\n            PEAR_Command::registerCommands();\n        }\n        if (isset($GLOBALS['_PEAR_Command_shortcuts'][$command])) {\n            $command = $GLOBALS['_PEAR_Command_shortcuts'][$command];\n        }\n        if (!isset($GLOBALS['_PEAR_Command_commandlist'][$command])) {\n            return null;\n        }\n        $obj = &PEAR_Command::getObject($command);\n        return $obj->getGetoptArgs($command, $short_args, $long_args);\n    }\n\n    // }}}\n    // {{{ getDescription()\n\n    /**\n     * Get description for a command.\n     *\n     * @param  string $command Name of the command\n     *\n     * @return string command description\n     *\n     * @access public\n     * @static\n     */\n    function getDescription($command)\n    {\n        if (!isset($GLOBALS['_PEAR_Command_commanddesc'][$command])) {\n            return null;\n        }\n        return $GLOBALS['_PEAR_Command_commanddesc'][$command];\n    }\n\n    // }}}\n    // {{{ getHelp()\n\n    /**\n     * Get help for command.\n     *\n     * @param string $command Name of the command to return help for\n     *\n     * @access public\n     * @static\n     */\n    function getHelp($command)\n    {\n        $cmds = PEAR_Command::getCommands();\n        if (isset($GLOBALS['_PEAR_Command_shortcuts'][$command])) {\n            $command = $GLOBALS['_PEAR_Command_shortcuts'][$command];\n        }\n        if (isset($cmds[$command])) {\n            $obj = &PEAR_Command::getObject($command);\n            return $obj->getHelp($command);\n        }\n        return false;\n    }\n    // }}}\n}"
  },
  {
    "path": "newscoop/include/PEAR/Common.php",
    "content": "<?php\n/**\n * PEAR_Common, the base class for the PEAR Installer\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Tomas V. V. Cox <cox@idecnet.com>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Common.php 282969 2009-06-28 23:09:27Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 0.1.0\n * @deprecated File deprecated since Release 1.4.0a1\n */\n\n/**\n * Include error handling\n */\nrequire_once 'PEAR.php';\n\n/**\n * PEAR_Common error when an invalid PHP file is passed to PEAR_Common::analyzeSourceCode()\n */\ndefine('PEAR_COMMON_ERROR_INVALIDPHP', 1);\ndefine('_PEAR_COMMON_PACKAGE_NAME_PREG', '[A-Za-z][a-zA-Z0-9_]+');\ndefine('PEAR_COMMON_PACKAGE_NAME_PREG', '/^' . _PEAR_COMMON_PACKAGE_NAME_PREG . '\\\\z/');\n\n// this should allow: 1, 1.0, 1.0RC1, 1.0dev, 1.0dev123234234234, 1.0a1, 1.0b1, 1.0pl1\ndefine('_PEAR_COMMON_PACKAGE_VERSION_PREG', '\\d+(?:\\.\\d+)*(?:[a-zA-Z]+\\d*)?');\ndefine('PEAR_COMMON_PACKAGE_VERSION_PREG', '/^' . _PEAR_COMMON_PACKAGE_VERSION_PREG . '\\\\z/i');\n\n// XXX far from perfect :-)\ndefine('_PEAR_COMMON_PACKAGE_DOWNLOAD_PREG', '(' . _PEAR_COMMON_PACKAGE_NAME_PREG .\n    ')(-([.0-9a-zA-Z]+))?');\ndefine('PEAR_COMMON_PACKAGE_DOWNLOAD_PREG', '/^' . _PEAR_COMMON_PACKAGE_DOWNLOAD_PREG .\n    '\\\\z/');\n\ndefine('_PEAR_CHANNELS_NAME_PREG', '[A-Za-z][a-zA-Z0-9\\.]+');\ndefine('PEAR_CHANNELS_NAME_PREG', '/^' . _PEAR_CHANNELS_NAME_PREG . '\\\\z/');\n\n// this should allow any dns or IP address, plus a path - NO UNDERSCORES ALLOWED\ndefine('_PEAR_CHANNELS_SERVER_PREG', '[a-zA-Z0-9\\-]+(?:\\.[a-zA-Z0-9\\-]+)*(\\/[a-zA-Z0-9\\-]+)*');\ndefine('PEAR_CHANNELS_SERVER_PREG', '/^' . _PEAR_CHANNELS_SERVER_PREG . '\\\\z/i');\n\ndefine('_PEAR_CHANNELS_PACKAGE_PREG',  '(' ._PEAR_CHANNELS_SERVER_PREG . ')\\/('\n         . _PEAR_COMMON_PACKAGE_NAME_PREG . ')');\ndefine('PEAR_CHANNELS_PACKAGE_PREG', '/^' . _PEAR_CHANNELS_PACKAGE_PREG . '\\\\z/i');\n\ndefine('_PEAR_COMMON_CHANNEL_DOWNLOAD_PREG', '(' . _PEAR_CHANNELS_NAME_PREG . ')::('\n    . _PEAR_COMMON_PACKAGE_NAME_PREG . ')(-([.0-9a-zA-Z]+))?');\ndefine('PEAR_COMMON_CHANNEL_DOWNLOAD_PREG', '/^' . _PEAR_COMMON_CHANNEL_DOWNLOAD_PREG . '\\\\z/');\n\n/**\n * List of temporary files and directories registered by\n * PEAR_Common::addTempFile().\n * @var array\n */\n$GLOBALS['_PEAR_Common_tempfiles'] = array();\n\n/**\n * Valid maintainer roles\n * @var array\n */\n$GLOBALS['_PEAR_Common_maintainer_roles'] = array('lead','developer','contributor','helper');\n\n/**\n * Valid release states\n * @var array\n */\n$GLOBALS['_PEAR_Common_release_states'] = array('alpha','beta','stable','snapshot','devel');\n\n/**\n * Valid dependency types\n * @var array\n */\n$GLOBALS['_PEAR_Common_dependency_types'] = array('pkg','ext','php','prog','ldlib','rtlib','os','websrv','sapi');\n\n/**\n * Valid dependency relations\n * @var array\n */\n$GLOBALS['_PEAR_Common_dependency_relations'] = array('has','eq','lt','le','gt','ge','not', 'ne');\n\n/**\n * Valid file roles\n * @var array\n */\n$GLOBALS['_PEAR_Common_file_roles'] = array('php','ext','test','doc','data','src','script');\n\n/**\n * Valid replacement types\n * @var array\n */\n$GLOBALS['_PEAR_Common_replacement_types'] = array('php-const', 'pear-config', 'package-info');\n\n/**\n * Valid \"provide\" types\n * @var array\n */\n$GLOBALS['_PEAR_Common_provide_types'] = array('ext', 'prog', 'class', 'function', 'feature', 'api');\n\n/**\n * Valid \"provide\" types\n * @var array\n */\n$GLOBALS['_PEAR_Common_script_phases'] = array('pre-install', 'post-install', 'pre-uninstall', 'post-uninstall', 'pre-build', 'post-build', 'pre-configure', 'post-configure', 'pre-setup', 'post-setup');\n\n/**\n * Class providing common functionality for PEAR administration classes.\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Tomas V. V. Cox <cox@idecnet.com>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n * @deprecated This class will disappear, and its components will be spread\n *             into smaller classes, like the AT&T breakup, as of Release 1.4.0a1\n */\nclass PEAR_Common extends PEAR\n{\n    /**\n     * User Interface object (PEAR_Frontend_* class).  If null,\n     * the log() method uses print.\n     * @var object\n     */\n    var $ui = null;\n\n    /**\n     * Configuration object (PEAR_Config).\n     * @var PEAR_Config\n     */\n    var $config = null;\n\n    /** stack of elements, gives some sort of XML context */\n    var $element_stack = array();\n\n    /** name of currently parsed XML element */\n    var $current_element;\n\n    /** array of attributes of the currently parsed XML element */\n    var $current_attributes = array();\n\n    /** assoc with information about a package */\n    var $pkginfo = array();\n\n    var $current_path = null;\n\n    /**\n     * Flag variable used to mark a valid package file\n     * @var boolean\n     * @access private\n     */\n    var $_validPackageFile;\n\n    /**\n     * PEAR_Common constructor\n     *\n     * @access public\n     */\n    function PEAR_Common()\n    {\n        parent::PEAR();\n        $this->config = &PEAR_Config::singleton();\n        $this->debug = $this->config->get('verbose');\n    }\n\n    /**\n     * PEAR_Common destructor\n     *\n     * @access private\n     */\n    function _PEAR_Common()\n    {\n        // doesn't work due to bug #14744\n        //$tempfiles = $this->_tempfiles;\n        $tempfiles =& $GLOBALS['_PEAR_Common_tempfiles'];\n        while ($file = array_shift($tempfiles)) {\n            if (@is_dir($file)) {\n                if (!class_exists('System')) {\n                    require_once 'System.php';\n                }\n\n                System::rm(array('-rf', $file));\n            } elseif (file_exists($file)) {\n                unlink($file);\n            }\n        }\n    }\n\n    /**\n     * Register a temporary file or directory.  When the destructor is\n     * executed, all registered temporary files and directories are\n     * removed.\n     *\n     * @param string  $file  name of file or directory\n     *\n     * @return void\n     *\n     * @access public\n     */\n    function addTempFile($file)\n    {\n        if (!class_exists('PEAR_Frontend')) {\n            require_once 'PEAR/Frontend.php';\n        }\n        PEAR_Frontend::addTempFile($file);\n    }\n\n    /**\n     * Wrapper to System::mkDir(), creates a directory as well as\n     * any necessary parent directories.\n     *\n     * @param string  $dir  directory name\n     *\n     * @return bool TRUE on success, or a PEAR error\n     *\n     * @access public\n     */\n    function mkDirHier($dir)\n    {\n        // Only used in Installer - move it there ?\n        $this->log(2, \"+ create dir $dir\");\n        if (!class_exists('System')) {\n            require_once 'System.php';\n        }\n        return System::mkDir(array('-p', $dir));\n    }\n\n    /**\n     * Logging method.\n     *\n     * @param int    $level  log level (0 is quiet, higher is noisier)\n     * @param string $msg    message to write to the log\n     *\n     * @return void\n     *\n     * @access public\n     * @static\n     */\n    function log($level, $msg, $append_crlf = true)\n    {\n        if ($this->debug >= $level) {\n            if (!class_exists('PEAR_Frontend')) {\n                require_once 'PEAR/Frontend.php';\n            }\n\n            $ui = &PEAR_Frontend::singleton();\n            if (is_a($ui, 'PEAR_Frontend')) {\n                $ui->log($msg, $append_crlf);\n            } else {\n                print \"$msg\\n\";\n            }\n        }\n    }\n\n    /**\n     * Create and register a temporary directory.\n     *\n     * @param string $tmpdir (optional) Directory to use as tmpdir.\n     *                       Will use system defaults (for example\n     *                       /tmp or c:\\windows\\temp) if not specified\n     *\n     * @return string name of created directory\n     *\n     * @access public\n     */\n    function mkTempDir($tmpdir = '')\n    {\n        $topt = $tmpdir ? array('-t', $tmpdir) : array();\n        $topt = array_merge($topt, array('-d', 'pear'));\n        if (!class_exists('System')) {\n            require_once 'System.php';\n        }\n\n        if (!$tmpdir = System::mktemp($topt)) {\n            return false;\n        }\n\n        $this->addTempFile($tmpdir);\n        return $tmpdir;\n    }\n\n    /**\n     * Set object that represents the frontend to be used.\n     *\n     * @param  object Reference of the frontend object\n     * @return void\n     * @access public\n     */\n    function setFrontendObject(&$ui)\n    {\n        $this->ui = &$ui;\n    }\n\n    /**\n     * Return an array containing all of the states that are more stable than\n     * or equal to the passed in state\n     *\n     * @param string Release state\n     * @param boolean Determines whether to include $state in the list\n     * @return false|array False if $state is not a valid release state\n     */\n    function betterStates($state, $include = false)\n    {\n        static $states = array('snapshot', 'devel', 'alpha', 'beta', 'stable');\n        $i = array_search($state, $states);\n        if ($i === false) {\n            return false;\n        }\n        if ($include) {\n            $i--;\n        }\n        return array_slice($states, $i + 1);\n    }\n\n    /**\n     * Get the valid roles for a PEAR package maintainer\n     *\n     * @return array\n     * @static\n     */\n    function getUserRoles()\n    {\n        return $GLOBALS['_PEAR_Common_maintainer_roles'];\n    }\n\n    /**\n     * Get the valid package release states of packages\n     *\n     * @return array\n     * @static\n     */\n    function getReleaseStates()\n    {\n        return $GLOBALS['_PEAR_Common_release_states'];\n    }\n\n    /**\n     * Get the implemented dependency types (php, ext, pkg etc.)\n     *\n     * @return array\n     * @static\n     */\n    function getDependencyTypes()\n    {\n        return $GLOBALS['_PEAR_Common_dependency_types'];\n    }\n\n    /**\n     * Get the implemented dependency relations (has, lt, ge etc.)\n     *\n     * @return array\n     * @static\n     */\n    function getDependencyRelations()\n    {\n        return $GLOBALS['_PEAR_Common_dependency_relations'];\n    }\n\n    /**\n     * Get the implemented file roles\n     *\n     * @return array\n     * @static\n     */\n    function getFileRoles()\n    {\n        return $GLOBALS['_PEAR_Common_file_roles'];\n    }\n\n    /**\n     * Get the implemented file replacement types in\n     *\n     * @return array\n     * @static\n     */\n    function getReplacementTypes()\n    {\n        return $GLOBALS['_PEAR_Common_replacement_types'];\n    }\n\n    /**\n     * Get the implemented file replacement types in\n     *\n     * @return array\n     * @static\n     */\n    function getProvideTypes()\n    {\n        return $GLOBALS['_PEAR_Common_provide_types'];\n    }\n\n    /**\n     * Get the implemented file replacement types in\n     *\n     * @return array\n     * @static\n     */\n    function getScriptPhases()\n    {\n        return $GLOBALS['_PEAR_Common_script_phases'];\n    }\n\n    /**\n     * Test whether a string contains a valid package name.\n     *\n     * @param string $name the package name to test\n     *\n     * @return bool\n     *\n     * @access public\n     */\n    function validPackageName($name)\n    {\n        return (bool)preg_match(PEAR_COMMON_PACKAGE_NAME_PREG, $name);\n    }\n\n    /**\n     * Test whether a string contains a valid package version.\n     *\n     * @param string $ver the package version to test\n     *\n     * @return bool\n     *\n     * @access public\n     */\n    function validPackageVersion($ver)\n    {\n        return (bool)preg_match(PEAR_COMMON_PACKAGE_VERSION_PREG, $ver);\n    }\n\n    /**\n     * @param string $path relative or absolute include path\n     * @return boolean\n     * @static\n     */\n    function isIncludeable($path)\n    {\n        if (file_exists($path) && is_readable($path)) {\n            return true;\n        }\n\n        $ipath = explode(PATH_SEPARATOR, ini_get('include_path'));\n        foreach ($ipath as $include) {\n            $test = realpath($include . DIRECTORY_SEPARATOR . $path);\n            if (file_exists($test) && is_readable($test)) {\n                return true;\n            }\n        }\n\n        return false;\n    }\n\n    function _postProcessChecks($pf)\n    {\n        if (!PEAR::isError($pf)) {\n            return $this->_postProcessValidPackagexml($pf);\n        }\n\n        $errs = $pf->getUserinfo();\n        if (is_array($errs)) {\n            foreach ($errs as $error) {\n                $e = $this->raiseError($error['message'], $error['code'], null, null, $error);\n            }\n        }\n\n        return $pf;\n    }\n\n    /**\n     * Returns information about a package file.  Expects the name of\n     * a gzipped tar file as input.\n     *\n     * @param string  $file  name of .tgz file\n     *\n     * @return array  array with package information\n     *\n     * @access public\n     * @deprecated use PEAR_PackageFile->fromTgzFile() instead\n     *\n     */\n    function infoFromTgzFile($file)\n    {\n        $packagefile = &new PEAR_PackageFile($this->config);\n        $pf = &$packagefile->fromTgzFile($file, PEAR_VALIDATE_NORMAL);\n        return $this->_postProcessChecks($pf);\n    }\n\n    /**\n     * Returns information about a package file.  Expects the name of\n     * a package xml file as input.\n     *\n     * @param string  $descfile  name of package xml file\n     *\n     * @return array  array with package information\n     *\n     * @access public\n     * @deprecated use PEAR_PackageFile->fromPackageFile() instead\n     *\n     */\n    function infoFromDescriptionFile($descfile)\n    {\n        $packagefile = &new PEAR_PackageFile($this->config);\n        $pf = &$packagefile->fromPackageFile($descfile, PEAR_VALIDATE_NORMAL);\n        return $this->_postProcessChecks($pf);\n    }\n\n    /**\n     * Returns information about a package file.  Expects the contents\n     * of a package xml file as input.\n     *\n     * @param string  $data  contents of package.xml file\n     *\n     * @return array   array with package information\n     *\n     * @access public\n     * @deprecated use PEAR_PackageFile->fromXmlstring() instead\n     *\n     */\n    function infoFromString($data)\n    {\n        $packagefile = &new PEAR_PackageFile($this->config);\n        $pf = &$packagefile->fromXmlString($data, PEAR_VALIDATE_NORMAL, false);\n        return $this->_postProcessChecks($pf);\n    }\n\n    /**\n     * @param PEAR_PackageFile_v1|PEAR_PackageFile_v2\n     * @return array\n     */\n    function _postProcessValidPackagexml(&$pf)\n    {\n        if (!is_a($pf, 'PEAR_PackageFile_v2')) {\n            $this->pkginfo = $pf->toArray();\n            return $this->pkginfo;\n        }\n\n        // sort of make this into a package.xml 1.0-style array\n        // changelog is not converted to old format.\n        $arr = $pf->toArray(true);\n        $arr = array_merge($arr, $arr['old']);\n        unset($arr['old'], $arr['xsdversion'], $arr['contents'], $arr['compatible'],\n              $arr['channel'], $arr['uri'], $arr['dependencies'], $arr['phprelease'],\n              $arr['extsrcrelease'], $arr['zendextsrcrelease'], $arr['extbinrelease'],\n              $arr['zendextbinrelease'], $arr['bundle'], $arr['lead'], $arr['developer'],\n              $arr['helper'], $arr['contributor']);\n        $arr['filelist'] = $pf->getFilelist();\n        $this->pkginfo = $arr;\n        return $arr;\n    }\n\n    /**\n     * Returns package information from different sources\n     *\n     * This method is able to extract information about a package\n     * from a .tgz archive or from a XML package definition file.\n     *\n     * @access public\n     * @param  string Filename of the source ('package.xml', '<package>.tgz')\n     * @return string\n     * @deprecated use PEAR_PackageFile->fromAnyFile() instead\n     */\n    function infoFromAny($info)\n    {\n        if (is_string($info) && file_exists($info)) {\n            $packagefile = &new PEAR_PackageFile($this->config);\n            $pf = &$packagefile->fromAnyFile($info, PEAR_VALIDATE_NORMAL);\n            if (PEAR::isError($pf)) {\n                $errs = $pf->getUserinfo();\n                if (is_array($errs)) {\n                    foreach ($errs as $error) {\n                        $e = $this->raiseError($error['message'], $error['code'], null, null, $error);\n                    }\n                }\n\n                return $pf;\n            }\n\n            return $this->_postProcessValidPackagexml($pf);\n        }\n\n        return $info;\n    }\n\n    /**\n     * Return an XML document based on the package info (as returned\n     * by the PEAR_Common::infoFrom* methods).\n     *\n     * @param array  $pkginfo  package info\n     *\n     * @return string XML data\n     *\n     * @access public\n     * @deprecated use a PEAR_PackageFile_v* object's generator instead\n     */\n    function xmlFromInfo($pkginfo)\n    {\n        $config      = &PEAR_Config::singleton();\n        $packagefile = &new PEAR_PackageFile($config);\n        $pf = &$packagefile->fromArray($pkginfo);\n        $gen = &$pf->getDefaultGenerator();\n        return $gen->toXml(PEAR_VALIDATE_PACKAGING);\n    }\n\n    /**\n     * Validate XML package definition file.\n     *\n     * @param  string $info Filename of the package archive or of the\n     *                package definition file\n     * @param  array $errors Array that will contain the errors\n     * @param  array $warnings Array that will contain the warnings\n     * @param  string $dir_prefix (optional) directory where source files\n     *                may be found, or empty if they are not available\n     * @access public\n     * @return boolean\n     * @deprecated use the validation of PEAR_PackageFile objects\n     */\n    function validatePackageInfo($info, &$errors, &$warnings, $dir_prefix = '')\n    {\n        $config      = &PEAR_Config::singleton();\n        $packagefile = &new PEAR_PackageFile($config);\n        PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n        if (strpos($info, '<?xml') !== false) {\n            $pf = &$packagefile->fromXmlString($info, PEAR_VALIDATE_NORMAL, '');\n        } else {\n            $pf = &$packagefile->fromAnyFile($info, PEAR_VALIDATE_NORMAL);\n        }\n\n        PEAR::staticPopErrorHandling();\n        if (PEAR::isError($pf)) {\n            $errs = $pf->getUserinfo();\n            if (is_array($errs)) {\n                foreach ($errs as $error) {\n                    if ($error['level'] == 'error') {\n                        $errors[] = $error['message'];\n                    } else {\n                        $warnings[] = $error['message'];\n                    }\n                }\n            }\n\n            return false;\n        }\n\n        return true;\n    }\n\n    /**\n     * Build a \"provides\" array from data returned by\n     * analyzeSourceCode().  The format of the built array is like\n     * this:\n     *\n     *  array(\n     *    'class;MyClass' => 'array('type' => 'class', 'name' => 'MyClass'),\n     *    ...\n     *  )\n     *\n     *\n     * @param array $srcinfo array with information about a source file\n     * as returned by the analyzeSourceCode() method.\n     *\n     * @return void\n     *\n     * @access public\n     *\n     */\n    function buildProvidesArray($srcinfo)\n    {\n        $file = basename($srcinfo['source_file']);\n        $pn = '';\n        if (isset($this->_packageName)) {\n            $pn = $this->_packageName;\n        }\n\n        $pnl = strlen($pn);\n        foreach ($srcinfo['declared_classes'] as $class) {\n            $key = \"class;$class\";\n            if (isset($this->pkginfo['provides'][$key])) {\n                continue;\n            }\n\n            $this->pkginfo['provides'][$key] =\n                array('file'=> $file, 'type' => 'class', 'name' => $class);\n            if (isset($srcinfo['inheritance'][$class])) {\n                $this->pkginfo['provides'][$key]['extends'] =\n                    $srcinfo['inheritance'][$class];\n            }\n        }\n\n        foreach ($srcinfo['declared_methods'] as $class => $methods) {\n            foreach ($methods as $method) {\n                $function = \"$class::$method\";\n                $key = \"function;$function\";\n                if ($method{0} == '_' || !strcasecmp($method, $class) ||\n                    isset($this->pkginfo['provides'][$key])) {\n                    continue;\n                }\n\n                $this->pkginfo['provides'][$key] =\n                    array('file'=> $file, 'type' => 'function', 'name' => $function);\n            }\n        }\n\n        foreach ($srcinfo['declared_functions'] as $function) {\n            $key = \"function;$function\";\n            if ($function{0} == '_' || isset($this->pkginfo['provides'][$key])) {\n                continue;\n            }\n\n            if (!strstr($function, '::') && strncasecmp($function, $pn, $pnl)) {\n                $warnings[] = \"in1 \" . $file . \": function \\\"$function\\\" not prefixed with package name \\\"$pn\\\"\";\n            }\n\n            $this->pkginfo['provides'][$key] =\n                array('file'=> $file, 'type' => 'function', 'name' => $function);\n        }\n    }\n\n    /**\n     * Analyze the source code of the given PHP file\n     *\n     * @param  string Filename of the PHP file\n     * @return mixed\n     * @access public\n     */\n    function analyzeSourceCode($file)\n    {\n        if (!class_exists('PEAR_PackageFile_v2_Validator')) {\n            require_once 'PEAR/PackageFile/v2/Validator.php';\n        }\n\n        $a = new PEAR_PackageFile_v2_Validator;\n        return $a->analyzeSourceCode($file);\n    }\n\n    function detectDependencies($any, $status_callback = null)\n    {\n        if (!function_exists(\"token_get_all\")) {\n            return false;\n        }\n\n        if (PEAR::isError($info = $this->infoFromAny($any))) {\n            return $this->raiseError($info);\n        }\n\n        if (!is_array($info)) {\n            return false;\n        }\n\n        $deps = array();\n        $used_c = $decl_c = $decl_f = $decl_m = array();\n        foreach ($info['filelist'] as $file => $fa) {\n            $tmp = $this->analyzeSourceCode($file);\n            $used_c = @array_merge($used_c, $tmp['used_classes']);\n            $decl_c = @array_merge($decl_c, $tmp['declared_classes']);\n            $decl_f = @array_merge($decl_f, $tmp['declared_functions']);\n            $decl_m = @array_merge($decl_m, $tmp['declared_methods']);\n            $inheri = @array_merge($inheri, $tmp['inheritance']);\n        }\n\n        $used_c = array_unique($used_c);\n        $decl_c = array_unique($decl_c);\n        $undecl_c = array_diff($used_c, $decl_c);\n\n        return array('used_classes' => $used_c,\n                     'declared_classes' => $decl_c,\n                     'declared_methods' => $decl_m,\n                     'declared_functions' => $decl_f,\n                     'undeclared_classes' => $undecl_c,\n                     'inheritance' => $inheri,\n                     );\n    }\n\n    /**\n     * Download a file through HTTP.  Considers suggested file name in\n     * Content-disposition: header and can run a callback function for\n     * different events.  The callback will be called with two\n     * parameters: the callback type, and parameters.  The implemented\n     * callback types are:\n     *\n     *  'setup'       called at the very beginning, parameter is a UI object\n     *                that should be used for all output\n     *  'message'     the parameter is a string with an informational message\n     *  'saveas'      may be used to save with a different file name, the\n     *                parameter is the filename that is about to be used.\n     *                If a 'saveas' callback returns a non-empty string,\n     *                that file name will be used as the filename instead.\n     *                Note that $save_dir will not be affected by this, only\n     *                the basename of the file.\n     *  'start'       download is starting, parameter is number of bytes\n     *                that are expected, or -1 if unknown\n     *  'bytesread'   parameter is the number of bytes read so far\n     *  'done'        download is complete, parameter is the total number\n     *                of bytes read\n     *  'connfailed'  if the TCP connection fails, this callback is called\n     *                with array(host,port,errno,errmsg)\n     *  'writefailed' if writing to disk fails, this callback is called\n     *                with array(destfile,errmsg)\n     *\n     * If an HTTP proxy has been configured (http_proxy PEAR_Config\n     * setting), the proxy will be used.\n     *\n     * @param string  $url       the URL to download\n     * @param object  $ui        PEAR_Frontend_* instance\n     * @param object  $config    PEAR_Config instance\n     * @param string  $save_dir  (optional) directory to save file in\n     * @param mixed   $callback  (optional) function/method to call for status\n     *                           updates\n     *\n     * @return string  Returns the full path of the downloaded file or a PEAR\n     *                 error on failure.  If the error is caused by\n     *                 socket-related errors, the error object will\n     *                 have the fsockopen error code available through\n     *                 getCode().\n     *\n     * @access public\n     * @deprecated in favor of PEAR_Downloader::downloadHttp()\n     */\n    function downloadHttp($url, &$ui, $save_dir = '.', $callback = null)\n    {\n        if (!class_exists('PEAR_Downloader')) {\n            require_once 'PEAR/Downloader.php';\n        }\n        return PEAR_Downloader::downloadHttp($url, $ui, $save_dir, $callback);\n    }\n}\n\nrequire_once 'PEAR/Config.php';\nrequire_once 'PEAR/PackageFile.php';"
  },
  {
    "path": "newscoop/include/PEAR/Config.php",
    "content": "<?php\n/**\n * PEAR_Config, customized configuration handling for the PEAR Installer\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Config.php 286480 2009-07-29 02:50:02Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 0.1\n */\n\n/**\n * Required for error handling\n */\nrequire_once 'PEAR.php';\nrequire_once 'PEAR/Registry.php';\nrequire_once 'PEAR/Installer/Role.php';\nrequire_once 'System.php';\n\n/**\n * Last created PEAR_Config instance.\n * @var object\n */\n$GLOBALS['_PEAR_Config_instance'] = null;\nif (!defined('PEAR_INSTALL_DIR') || !PEAR_INSTALL_DIR) {\n    $PEAR_INSTALL_DIR = PHP_LIBDIR . DIRECTORY_SEPARATOR . 'pear';\n} else {\n    $PEAR_INSTALL_DIR = PEAR_INSTALL_DIR;\n}\n\n// Below we define constants with default values for all configuration\n// parameters except username/password.  All of them can have their\n// defaults set through environment variables.  The reason we use the\n// PHP_ prefix is for some security, PHP protects environment\n// variables starting with PHP_*.\n\n// default channel and preferred mirror is based on whether we are invoked through\n// the \"pear\" or the \"pecl\" command\nif (!defined('PEAR_RUNTYPE')) {\n    define('PEAR_RUNTYPE', 'pear');\n}\n\nif (PEAR_RUNTYPE == 'pear') {\n    define('PEAR_CONFIG_DEFAULT_CHANNEL', 'pear.php.net');\n} else {\n    define('PEAR_CONFIG_DEFAULT_CHANNEL', 'pecl.php.net');\n}\n\nif (getenv('PHP_PEAR_SYSCONF_DIR')) {\n    define('PEAR_CONFIG_SYSCONFDIR', getenv('PHP_PEAR_SYSCONF_DIR'));\n} elseif (getenv('SystemRoot')) {\n    define('PEAR_CONFIG_SYSCONFDIR', getenv('SystemRoot'));\n} else {\n    define('PEAR_CONFIG_SYSCONFDIR', PHP_SYSCONFDIR . '/pear');\n}\n\n// Default for master_server\nif (getenv('PHP_PEAR_MASTER_SERVER')) {\n    define('PEAR_CONFIG_DEFAULT_MASTER_SERVER', getenv('PHP_PEAR_MASTER_SERVER'));\n} else {\n    define('PEAR_CONFIG_DEFAULT_MASTER_SERVER', 'pear.php.net');\n}\n\n// Default for http_proxy\nif (getenv('PHP_PEAR_HTTP_PROXY')) {\n    define('PEAR_CONFIG_DEFAULT_HTTP_PROXY', getenv('PHP_PEAR_HTTP_PROXY'));\n} elseif (getenv('http_proxy')) {\n    define('PEAR_CONFIG_DEFAULT_HTTP_PROXY', getenv('http_proxy'));\n} else {\n    define('PEAR_CONFIG_DEFAULT_HTTP_PROXY', '');\n}\n\n// Default for php_dir\nif (getenv('PHP_PEAR_INSTALL_DIR')) {\n    define('PEAR_CONFIG_DEFAULT_PHP_DIR', getenv('PHP_PEAR_INSTALL_DIR'));\n} else {\n    if (@file_exists($PEAR_INSTALL_DIR) && is_dir($PEAR_INSTALL_DIR)) {\n        define('PEAR_CONFIG_DEFAULT_PHP_DIR', $PEAR_INSTALL_DIR);\n    } else {\n        define('PEAR_CONFIG_DEFAULT_PHP_DIR', $PEAR_INSTALL_DIR);\n    }\n}\n\n// Default for ext_dir\nif (getenv('PHP_PEAR_EXTENSION_DIR')) {\n    define('PEAR_CONFIG_DEFAULT_EXT_DIR', getenv('PHP_PEAR_EXTENSION_DIR'));\n} else {\n    if (ini_get('extension_dir')) {\n        define('PEAR_CONFIG_DEFAULT_EXT_DIR', ini_get('extension_dir'));\n    } elseif (defined('PEAR_EXTENSION_DIR') &&\n              file_exists(PEAR_EXTENSION_DIR) && is_dir(PEAR_EXTENSION_DIR)) {\n        define('PEAR_CONFIG_DEFAULT_EXT_DIR', PEAR_EXTENSION_DIR);\n    } elseif (defined('PHP_EXTENSION_DIR')) {\n        define('PEAR_CONFIG_DEFAULT_EXT_DIR', PHP_EXTENSION_DIR);\n    } else {\n        define('PEAR_CONFIG_DEFAULT_EXT_DIR', '.');\n    }\n}\n\n// Default for doc_dir\nif (getenv('PHP_PEAR_DOC_DIR')) {\n    define('PEAR_CONFIG_DEFAULT_DOC_DIR', getenv('PHP_PEAR_DOC_DIR'));\n} else {\n    define('PEAR_CONFIG_DEFAULT_DOC_DIR',\n           $PEAR_INSTALL_DIR.DIRECTORY_SEPARATOR.'docs');\n}\n\n// Default for bin_dir\nif (getenv('PHP_PEAR_BIN_DIR')) {\n    define('PEAR_CONFIG_DEFAULT_BIN_DIR', getenv('PHP_PEAR_BIN_DIR'));\n} else {\n    define('PEAR_CONFIG_DEFAULT_BIN_DIR', PHP_BINDIR);\n}\n\n// Default for data_dir\nif (getenv('PHP_PEAR_DATA_DIR')) {\n    define('PEAR_CONFIG_DEFAULT_DATA_DIR', getenv('PHP_PEAR_DATA_DIR'));\n} else {\n    define('PEAR_CONFIG_DEFAULT_DATA_DIR',\n           $PEAR_INSTALL_DIR.DIRECTORY_SEPARATOR.'data');\n}\n\n// Default for cfg_dir\nif (getenv('PHP_PEAR_CFG_DIR')) {\n    define('PEAR_CONFIG_DEFAULT_CFG_DIR', getenv('PHP_PEAR_CFG_DIR'));\n} else {\n    define('PEAR_CONFIG_DEFAULT_CFG_DIR',\n           $PEAR_INSTALL_DIR.DIRECTORY_SEPARATOR.'cfg');\n}\n\n// Default for www_dir\nif (getenv('PHP_PEAR_WWW_DIR')) {\n    define('PEAR_CONFIG_DEFAULT_WWW_DIR', getenv('PHP_PEAR_WWW_DIR'));\n} else {\n    define('PEAR_CONFIG_DEFAULT_WWW_DIR',\n           $PEAR_INSTALL_DIR.DIRECTORY_SEPARATOR.'www');\n}\n\n// Default for test_dir\nif (getenv('PHP_PEAR_TEST_DIR')) {\n    define('PEAR_CONFIG_DEFAULT_TEST_DIR', getenv('PHP_PEAR_TEST_DIR'));\n} else {\n    define('PEAR_CONFIG_DEFAULT_TEST_DIR',\n           $PEAR_INSTALL_DIR.DIRECTORY_SEPARATOR.'tests');\n}\n\n// Default for temp_dir\nif (getenv('PHP_PEAR_TEMP_DIR')) {\n    define('PEAR_CONFIG_DEFAULT_TEMP_DIR', getenv('PHP_PEAR_TEMP_DIR'));\n} else {\n    define('PEAR_CONFIG_DEFAULT_TEMP_DIR',\n           System::tmpdir() . DIRECTORY_SEPARATOR . 'pear' .\n           DIRECTORY_SEPARATOR . 'temp');\n}\n\n// Default for cache_dir\nif (getenv('PHP_PEAR_CACHE_DIR')) {\n    define('PEAR_CONFIG_DEFAULT_CACHE_DIR', getenv('PHP_PEAR_CACHE_DIR'));\n} else {\n    define('PEAR_CONFIG_DEFAULT_CACHE_DIR',\n           System::tmpdir() . DIRECTORY_SEPARATOR . 'pear' .\n           DIRECTORY_SEPARATOR . 'cache');\n}\n\n// Default for download_dir\nif (getenv('PHP_PEAR_DOWNLOAD_DIR')) {\n    define('PEAR_CONFIG_DEFAULT_DOWNLOAD_DIR', getenv('PHP_PEAR_DOWNLOAD_DIR'));\n} else {\n    define('PEAR_CONFIG_DEFAULT_DOWNLOAD_DIR',\n           System::tmpdir() . DIRECTORY_SEPARATOR . 'pear' .\n           DIRECTORY_SEPARATOR . 'download');\n}\n\n// Default for php_bin\nif (getenv('PHP_PEAR_PHP_BIN')) {\n    define('PEAR_CONFIG_DEFAULT_PHP_BIN', getenv('PHP_PEAR_PHP_BIN'));\n} else {\n    define('PEAR_CONFIG_DEFAULT_PHP_BIN', PEAR_CONFIG_DEFAULT_BIN_DIR.\n           DIRECTORY_SEPARATOR.'php'.(OS_WINDOWS ? '.exe' : ''));\n}\n\n// Default for verbose\nif (getenv('PHP_PEAR_VERBOSE')) {\n    define('PEAR_CONFIG_DEFAULT_VERBOSE', getenv('PHP_PEAR_VERBOSE'));\n} else {\n    define('PEAR_CONFIG_DEFAULT_VERBOSE', 1);\n}\n\n// Default for preferred_state\nif (getenv('PHP_PEAR_PREFERRED_STATE')) {\n    define('PEAR_CONFIG_DEFAULT_PREFERRED_STATE', getenv('PHP_PEAR_PREFERRED_STATE'));\n} else {\n    define('PEAR_CONFIG_DEFAULT_PREFERRED_STATE', 'stable');\n}\n\n// Default for umask\nif (getenv('PHP_PEAR_UMASK')) {\n    define('PEAR_CONFIG_DEFAULT_UMASK', getenv('PHP_PEAR_UMASK'));\n} else {\n    define('PEAR_CONFIG_DEFAULT_UMASK', decoct(umask()));\n}\n\n// Default for cache_ttl\nif (getenv('PHP_PEAR_CACHE_TTL')) {\n    define('PEAR_CONFIG_DEFAULT_CACHE_TTL', getenv('PHP_PEAR_CACHE_TTL'));\n} else {\n    define('PEAR_CONFIG_DEFAULT_CACHE_TTL', 3600);\n}\n\n// Default for sig_type\nif (getenv('PHP_PEAR_SIG_TYPE')) {\n    define('PEAR_CONFIG_DEFAULT_SIG_TYPE', getenv('PHP_PEAR_SIG_TYPE'));\n} else {\n    define('PEAR_CONFIG_DEFAULT_SIG_TYPE', 'gpg');\n}\n\n// Default for sig_bin\nif (getenv('PHP_PEAR_SIG_BIN')) {\n    define('PEAR_CONFIG_DEFAULT_SIG_BIN', getenv('PHP_PEAR_SIG_BIN'));\n} else {\n    define('PEAR_CONFIG_DEFAULT_SIG_BIN',\n           System::which(\n               'gpg', OS_WINDOWS ? 'c:\\gnupg\\gpg.exe' : '/usr/local/bin/gpg'));\n}\n\n// Default for sig_keydir\nif (getenv('PHP_PEAR_SIG_KEYDIR')) {\n    define('PEAR_CONFIG_DEFAULT_SIG_KEYDIR', getenv('PHP_PEAR_SIG_KEYDIR'));\n} else {\n    define('PEAR_CONFIG_DEFAULT_SIG_KEYDIR',\n           PEAR_CONFIG_SYSCONFDIR . DIRECTORY_SEPARATOR . 'pearkeys');\n}\n\n/**\n * This is a class for storing configuration data, keeping track of\n * which are system-defined, user-defined or defaulted.\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 0.1\n */\nclass PEAR_Config extends PEAR\n{\n    /**\n     * Array of config files used.\n     *\n     * @var array layer => config file\n     */\n    var $files = array(\n        'system' => '',\n        'user' => '',\n        );\n\n    var $layers = array();\n\n    /**\n     * Configuration data, two-dimensional array where the first\n     * dimension is the config layer ('user', 'system' and 'default'),\n     * and the second dimension is keyname => value.\n     *\n     * The order in the first dimension is important!  Earlier\n     * layers will shadow later ones when a config value is\n     * requested (if a 'user' value exists, it will be returned first,\n     * then 'system' and finally 'default').\n     *\n     * @var array layer => array(keyname => value, ...)\n     */\n    var $configuration = array(\n        'user' => array(),\n        'system' => array(),\n        'default' => array(),\n        );\n\n    /**\n     * Configuration values that can be set for a channel\n     *\n     * All other configuration values can only have a global value\n     * @var array\n     * @access private\n     */\n    var $_channelConfigInfo = array(\n        'php_dir', 'ext_dir', 'doc_dir', 'bin_dir', 'data_dir', 'cfg_dir',\n        'test_dir', 'www_dir', 'php_bin', 'php_prefix', 'php_suffix', 'username',\n        'password', 'verbose', 'preferred_state', 'umask', 'preferred_mirror', 'php_ini'\n        );\n\n    /**\n     * Channels that can be accessed\n     * @see setChannels()\n     * @var array\n     * @access private\n     */\n    var $_channels = array('pear.php.net', 'pecl.php.net', '__uri');\n\n    /**\n     * This variable is used to control the directory values returned\n     * @see setInstallRoot();\n     * @var string|false\n     * @access private\n     */\n    var $_installRoot = false;\n\n    /**\n     * If requested, this will always refer to the registry\n     * contained in php_dir\n     * @var PEAR_Registry\n     */\n    var $_registry = array();\n\n    /**\n     * @var array\n     * @access private\n     */\n    var $_regInitialized = array();\n\n    /**\n     * @var bool\n     * @access private\n     */\n    var $_noRegistry = false;\n\n    /**\n     * amount of errors found while parsing config\n     * @var integer\n     * @access private\n     */\n    var $_errorsFound = 0;\n    var $_lastError = null;\n\n    /**\n     * Information about the configuration data.  Stores the type,\n     * default value and a documentation string for each configuration\n     * value.\n     *\n     * @var array layer => array(infotype => value, ...)\n     */\n    var $configuration_info = array(\n        // Channels/Internet Access\n        'default_channel' => array(\n            'type' => 'string',\n            'default' => PEAR_CONFIG_DEFAULT_CHANNEL,\n            'doc' => 'the default channel to use for all non explicit commands',\n            'prompt' => 'Default Channel',\n            'group' => 'Internet Access',\n            ),\n        'preferred_mirror' => array(\n            'type' => 'string',\n            'default' => PEAR_CONFIG_DEFAULT_CHANNEL,\n            'doc' => 'the default server or mirror to use for channel actions',\n            'prompt' => 'Default Channel Mirror',\n            'group' => 'Internet Access',\n            ),\n        'remote_config' => array(\n            'type' => 'password',\n            'default' => '',\n            'doc' => 'ftp url of remote configuration file to use for synchronized install',\n            'prompt' => 'Remote Configuration File',\n            'group' => 'Internet Access',\n            ),\n        'auto_discover' => array(\n            'type' => 'integer',\n            'default' => 0,\n            'doc' => 'whether to automatically discover new channels',\n            'prompt' => 'Auto-discover new Channels',\n            'group' => 'Internet Access',\n            ),\n        // Internet Access\n        'master_server' => array(\n            'type' => 'string',\n            'default' => 'pear.php.net',\n            'doc' => 'name of the main PEAR server [NOT USED IN THIS VERSION]',\n            'prompt' => 'PEAR server [DEPRECATED]',\n            'group' => 'Internet Access',\n            ),\n        'http_proxy' => array(\n            'type' => 'string',\n            'default' => PEAR_CONFIG_DEFAULT_HTTP_PROXY,\n            'doc' => 'HTTP proxy (host:port) to use when downloading packages',\n            'prompt' => 'HTTP Proxy Server Address',\n            'group' => 'Internet Access',\n            ),\n        // File Locations\n        'php_dir' => array(\n            'type' => 'directory',\n            'default' => PEAR_CONFIG_DEFAULT_PHP_DIR,\n            'doc' => 'directory where .php files are installed',\n            'prompt' => 'PEAR directory',\n            'group' => 'File Locations',\n            ),\n        'ext_dir' => array(\n            'type' => 'directory',\n            'default' => PEAR_CONFIG_DEFAULT_EXT_DIR,\n            'doc' => 'directory where loadable extensions are installed',\n            'prompt' => 'PHP extension directory',\n            'group' => 'File Locations',\n            ),\n        'doc_dir' => array(\n            'type' => 'directory',\n            'default' => PEAR_CONFIG_DEFAULT_DOC_DIR,\n            'doc' => 'directory where documentation is installed',\n            'prompt' => 'PEAR documentation directory',\n            'group' => 'File Locations',\n            ),\n        'bin_dir' => array(\n            'type' => 'directory',\n            'default' => PEAR_CONFIG_DEFAULT_BIN_DIR,\n            'doc' => 'directory where executables are installed',\n            'prompt' => 'PEAR executables directory',\n            'group' => 'File Locations',\n            ),\n        'data_dir' => array(\n            'type' => 'directory',\n            'default' => PEAR_CONFIG_DEFAULT_DATA_DIR,\n            'doc' => 'directory where data files are installed',\n            'prompt' => 'PEAR data directory',\n            'group' => 'File Locations (Advanced)',\n            ),\n        'cfg_dir' => array(\n            'type' => 'directory',\n            'default' => PEAR_CONFIG_DEFAULT_CFG_DIR,\n            'doc' => 'directory where modifiable configuration files are installed',\n            'prompt' => 'PEAR configuration file directory',\n            'group' => 'File Locations (Advanced)',\n            ),\n        'www_dir' => array(\n            'type' => 'directory',\n            'default' => PEAR_CONFIG_DEFAULT_WWW_DIR,\n            'doc' => 'directory where www frontend files (html/js) are installed',\n            'prompt' => 'PEAR www files directory',\n            'group' => 'File Locations (Advanced)',\n            ),\n        'test_dir' => array(\n            'type' => 'directory',\n            'default' => PEAR_CONFIG_DEFAULT_TEST_DIR,\n            'doc' => 'directory where regression tests are installed',\n            'prompt' => 'PEAR test directory',\n            'group' => 'File Locations (Advanced)',\n            ),\n        'cache_dir' => array(\n            'type' => 'directory',\n            'default' => PEAR_CONFIG_DEFAULT_CACHE_DIR,\n            'doc' => 'directory which is used for web service cache',\n            'prompt' => 'PEAR Installer cache directory',\n            'group' => 'File Locations (Advanced)',\n            ),\n        'temp_dir' => array(\n            'type' => 'directory',\n            'default' => PEAR_CONFIG_DEFAULT_TEMP_DIR,\n            'doc' => 'directory which is used for all temp files',\n            'prompt' => 'PEAR Installer temp directory',\n            'group' => 'File Locations (Advanced)',\n            ),\n        'download_dir' => array(\n            'type' => 'directory',\n            'default' => PEAR_CONFIG_DEFAULT_DOWNLOAD_DIR,\n            'doc' => 'directory which is used for all downloaded files',\n            'prompt' => 'PEAR Installer download directory',\n            'group' => 'File Locations (Advanced)',\n            ),\n        'php_bin' => array(\n            'type' => 'file',\n            'default' => PEAR_CONFIG_DEFAULT_PHP_BIN,\n            'doc' => 'PHP CLI/CGI binary for executing scripts',\n            'prompt' => 'PHP CLI/CGI binary',\n            'group' => 'File Locations (Advanced)',\n            ),\n        'php_prefix' => array(\n            'type' => 'string',\n            'default' => '',\n            'doc' => '--program-prefix for php_bin\\'s ./configure, used for pecl installs',\n            'prompt' => '--program-prefix passed to PHP\\'s ./configure',\n            'group' => 'File Locations (Advanced)',\n            ),\n        'php_suffix' => array(\n            'type' => 'string',\n            'default' => '',\n            'doc' => '--program-suffix for php_bin\\'s ./configure, used for pecl installs',\n            'prompt' => '--program-suffix passed to PHP\\'s ./configure',\n            'group' => 'File Locations (Advanced)',\n            ),\n        'php_ini' => array(\n            'type' => 'file',\n            'default' => '',\n            'doc' => 'location of php.ini in which to enable PECL extensions on install',\n            'prompt' => 'php.ini location',\n            'group' => 'File Locations (Advanced)',\n            ),\n        // Maintainers\n        'username' => array(\n            'type' => 'string',\n            'default' => '',\n            'doc' => '(maintainers) your PEAR account name',\n            'prompt' => 'PEAR username (for maintainers)',\n            'group' => 'Maintainers',\n            ),\n        'password' => array(\n            'type' => 'password',\n            'default' => '',\n            'doc' => '(maintainers) your PEAR account password',\n            'prompt' => 'PEAR password (for maintainers)',\n            'group' => 'Maintainers',\n            ),\n        // Advanced\n        'verbose' => array(\n            'type' => 'integer',\n            'default' => PEAR_CONFIG_DEFAULT_VERBOSE,\n            'doc' => 'verbosity level\n0: really quiet\n1: somewhat quiet\n2: verbose\n3: debug',\n            'prompt' => 'Debug Log Level',\n            'group' => 'Advanced',\n            ),\n        'preferred_state' => array(\n            'type' => 'set',\n            'default' => PEAR_CONFIG_DEFAULT_PREFERRED_STATE,\n            'doc' => 'the installer will prefer releases with this state when installing packages without a version or state specified',\n            'valid_set' => array(\n                'stable', 'beta', 'alpha', 'devel', 'snapshot'),\n            'prompt' => 'Preferred Package State',\n            'group' => 'Advanced',\n            ),\n        'umask' => array(\n            'type' => 'mask',\n            'default' => PEAR_CONFIG_DEFAULT_UMASK,\n            'doc' => 'umask used when creating files (Unix-like systems only)',\n            'prompt' => 'Unix file mask',\n            'group' => 'Advanced',\n            ),\n        'cache_ttl' => array(\n            'type' => 'integer',\n            'default' => PEAR_CONFIG_DEFAULT_CACHE_TTL,\n            'doc' => 'amount of secs where the local cache is used and not updated',\n            'prompt' => 'Cache TimeToLive',\n            'group' => 'Advanced',\n            ),\n        'sig_type' => array(\n            'type' => 'set',\n            'default' => PEAR_CONFIG_DEFAULT_SIG_TYPE,\n            'doc' => 'which package signature mechanism to use',\n            'valid_set' => array('gpg'),\n            'prompt' => 'Package Signature Type',\n            'group' => 'Maintainers',\n            ),\n        'sig_bin' => array(\n            'type' => 'string',\n            'default' => PEAR_CONFIG_DEFAULT_SIG_BIN,\n            'doc' => 'which package signature mechanism to use',\n            'prompt' => 'Signature Handling Program',\n            'group' => 'Maintainers',\n            ),\n        'sig_keyid' => array(\n            'type' => 'string',\n            'default' => '',\n            'doc' => 'which key to use for signing with',\n            'prompt' => 'Signature Key Id',\n            'group' => 'Maintainers',\n            ),\n        'sig_keydir' => array(\n            'type' => 'directory',\n            'default' => PEAR_CONFIG_DEFAULT_SIG_KEYDIR,\n            'doc' => 'directory where signature keys are located',\n            'prompt' => 'Signature Key Directory',\n            'group' => 'Maintainers',\n            ),\n        // __channels is reserved - used for channel-specific configuration\n        );\n\n    /**\n     * Constructor.\n     *\n     * @param string file to read user-defined options from\n     * @param string file to read system-wide defaults from\n     * @param bool   determines whether a registry object \"follows\"\n     *               the value of php_dir (is automatically created\n     *               and moved when php_dir is changed)\n     * @param bool   if true, fails if configuration files cannot be loaded\n     *\n     * @access public\n     *\n     * @see PEAR_Config::singleton\n     */\n    function PEAR_Config($user_file = '', $system_file = '', $ftp_file = false,\n                         $strict = true)\n    {\n        $this->PEAR();\n        PEAR_Installer_Role::initializeConfig($this);\n        $sl = DIRECTORY_SEPARATOR;\n        if (empty($user_file)) {\n            if (OS_WINDOWS) {\n                $user_file = PEAR_CONFIG_SYSCONFDIR . $sl . 'pear.ini';\n            } else {\n                $user_file = getenv('HOME') . $sl . '.pearrc';\n            }\n        }\n\n        if (empty($system_file)) {\n            $system_file = PEAR_CONFIG_SYSCONFDIR . $sl;\n            if (OS_WINDOWS) {\n                $system_file .= 'pearsys.ini';\n            } else {\n                $system_file .= 'pear.conf';\n            }\n        }\n\n        $this->layers = array_keys($this->configuration);\n        $this->files['user']   = $user_file;\n        $this->files['system'] = $system_file;\n        if ($user_file && file_exists($user_file)) {\n            $this->pushErrorHandling(PEAR_ERROR_RETURN);\n            $this->readConfigFile($user_file, 'user', $strict);\n            $this->popErrorHandling();\n            if ($this->_errorsFound > 0) {\n                return;\n            }\n        }\n\n        if ($system_file && @file_exists($system_file)) {\n            $this->mergeConfigFile($system_file, false, 'system', $strict);\n            if ($this->_errorsFound > 0) {\n                return;\n            }\n\n        }\n\n        if (!$ftp_file) {\n            $ftp_file = $this->get('remote_config');\n        }\n\n        if ($ftp_file && defined('PEAR_REMOTEINSTALL_OK')) {\n            $this->readFTPConfigFile($ftp_file);\n        }\n\n        foreach ($this->configuration_info as $key => $info) {\n            $this->configuration['default'][$key] = $info['default'];\n        }\n\n        $this->_registry['default'] = &new PEAR_Registry($this->configuration['default']['php_dir']);\n        $this->_registry['default']->setConfig($this, false);\n        $this->_regInitialized['default'] = false;\n        //$GLOBALS['_PEAR_Config_instance'] = &$this;\n    }\n\n    /**\n     * Return the default locations of user and system configuration files\n     * @static\n     */\n    function getDefaultConfigFiles()\n    {\n        $sl = DIRECTORY_SEPARATOR;\n        if (OS_WINDOWS) {\n            return array(\n                'user'   => PEAR_CONFIG_SYSCONFDIR . $sl . 'pear.ini',\n                'system' =>  PEAR_CONFIG_SYSCONFDIR . $sl . 'pearsys.ini'\n            );\n        }\n\n        return array(\n            'user'   => getenv('HOME') . $sl . '.pearrc',\n            'system' => PEAR_CONFIG_SYSCONFDIR . $sl . 'pear.conf'\n        );\n    }\n\n    /**\n     * Static singleton method.  If you want to keep only one instance\n     * of this class in use, this method will give you a reference to\n     * the last created PEAR_Config object if one exists, or create a\n     * new object.\n     *\n     * @param string (optional) file to read user-defined options from\n     * @param string (optional) file to read system-wide defaults from\n     *\n     * @return object an existing or new PEAR_Config instance\n     *\n     * @access public\n     *\n     * @see PEAR_Config::PEAR_Config\n     */\n    function &singleton($user_file = '', $system_file = '', $strict = true)\n    {\n        if (is_object($GLOBALS['_PEAR_Config_instance'])) {\n            return $GLOBALS['_PEAR_Config_instance'];\n        }\n\n        $t_conf = &new PEAR_Config($user_file, $system_file, false, $strict);\n        if ($t_conf->_errorsFound > 0) {\n             return $t_conf->lastError;\n        }\n\n        $GLOBALS['_PEAR_Config_instance'] = &$t_conf;\n        return $GLOBALS['_PEAR_Config_instance'];\n    }\n\n    /**\n     * Determine whether any configuration files have been detected, and whether a\n     * registry object can be retrieved from this configuration.\n     * @return bool\n     * @since PEAR 1.4.0a1\n     */\n    function validConfiguration()\n    {\n        if ($this->isDefinedLayer('user') || $this->isDefinedLayer('system')) {\n            return true;\n        }\n\n        return false;\n    }\n\n    /**\n     * Reads configuration data from a file.  All existing values in\n     * the config layer are discarded and replaced with data from the\n     * file.\n     * @param string file to read from, if NULL or not specified, the\n     *               last-used file for the same layer (second param) is used\n     * @param string config layer to insert data into ('user' or 'system')\n     * @return bool TRUE on success or a PEAR error on failure\n     */\n    function readConfigFile($file = null, $layer = 'user', $strict = true)\n    {\n        if (empty($this->files[$layer])) {\n            return $this->raiseError(\"unknown config layer `$layer'\");\n        }\n\n        if ($file === null) {\n            $file = $this->files[$layer];\n        }\n\n        $data = $this->_readConfigDataFrom($file);\n        if (PEAR::isError($data)) {\n            if (!$strict) {\n                return true;\n            }\n\n            $this->_errorsFound++;\n            $this->lastError = $data;\n\n            return $data;\n        }\n\n        $this->files[$layer] = $file;\n        $this->_decodeInput($data);\n        $this->configuration[$layer] = $data;\n        $this->_setupChannels();\n        if (!$this->_noRegistry && ($phpdir = $this->get('php_dir', $layer, 'pear.php.net'))) {\n            $this->_registry[$layer] = &new PEAR_Registry($phpdir);\n            $this->_registry[$layer]->setConfig($this, false);\n            $this->_regInitialized[$layer] = false;\n        } else {\n            unset($this->_registry[$layer]);\n        }\n        return true;\n    }\n\n    /**\n     * @param string url to the remote config file, like ftp://www.example.com/pear/config.ini\n     * @return true|PEAR_Error\n     */\n    function readFTPConfigFile($path)\n    {\n        do { // poor man's try\n            if (!class_exists('PEAR_FTP')) {\n                if (!class_exists('PEAR_Common')) {\n                    require_once 'PEAR/Common.php';\n                }\n                if (PEAR_Common::isIncludeable('PEAR/FTP.php')) {\n                    require_once 'PEAR/FTP.php';\n                }\n            }\n\n            if (!class_exists('PEAR_FTP')) {\n                return PEAR::raiseError('PEAR_RemoteInstaller must be installed to use remote config');\n            }\n\n            $this->_ftp = &new PEAR_FTP;\n            $this->_ftp->pushErrorHandling(PEAR_ERROR_RETURN);\n            $e = $this->_ftp->init($path);\n            if (PEAR::isError($e)) {\n                $this->_ftp->popErrorHandling();\n                return $e;\n            }\n\n            $tmp = System::mktemp('-d');\n            PEAR_Common::addTempFile($tmp);\n            $e = $this->_ftp->get(basename($path), $tmp . DIRECTORY_SEPARATOR .\n                'pear.ini', false, FTP_BINARY);\n            if (PEAR::isError($e)) {\n                $this->_ftp->popErrorHandling();\n                return $e;\n            }\n\n            PEAR_Common::addTempFile($tmp . DIRECTORY_SEPARATOR . 'pear.ini');\n            $this->_ftp->disconnect();\n            $this->_ftp->popErrorHandling();\n            $this->files['ftp'] = $tmp . DIRECTORY_SEPARATOR . 'pear.ini';\n            $e = $this->readConfigFile(null, 'ftp');\n            if (PEAR::isError($e)) {\n                return $e;\n            }\n\n            $fail = array();\n            foreach ($this->configuration_info as $key => $val) {\n                if (in_array($this->getGroup($key),\n                      array('File Locations', 'File Locations (Advanced)')) &&\n                      $this->getType($key) == 'directory') {\n                    // any directory configs must be set for this to work\n                    if (!isset($this->configuration['ftp'][$key])) {\n                        $fail[] = $key;\n                    }\n                }\n            }\n\n            if (!count($fail)) {\n                return true;\n            }\n\n            $fail = '\"' . implode('\", \"', $fail) . '\"';\n            unset($this->files['ftp']);\n            unset($this->configuration['ftp']);\n            return PEAR::raiseError('ERROR: Ftp configuration file must set all ' .\n                'directory configuration variables.  These variables were not set: ' .\n                $fail);\n        } while (false); // poor man's catch\n        unset($this->files['ftp']);\n        return PEAR::raiseError('no remote host specified');\n    }\n\n    /**\n     * Reads the existing configurations and creates the _channels array from it\n     */\n    function _setupChannels()\n    {\n        $set = array_flip(array_values($this->_channels));\n        foreach ($this->configuration as $layer => $data) {\n            $i = 1000;\n            if (isset($data['__channels']) && is_array($data['__channels'])) {\n                foreach ($data['__channels'] as $channel => $info) {\n                    $set[$channel] = $i++;\n                }\n            }\n        }\n        $this->_channels = array_values(array_flip($set));\n        $this->setChannels($this->_channels);\n    }\n\n    function deleteChannel($channel)\n    {\n        $ch = strtolower($channel);\n        foreach ($this->configuration as $layer => $data) {\n            if (isset($data['__channels']) && isset($data['__channels'][$ch])) {\n                unset($this->configuration[$layer]['__channels'][$ch]);\n            }\n        }\n\n        $this->_channels = array_flip($this->_channels);\n        unset($this->_channels[$ch]);\n        $this->_channels = array_flip($this->_channels);\n    }\n\n    /**\n     * Merges data into a config layer from a file.  Does the same\n     * thing as readConfigFile, except it does not replace all\n     * existing values in the config layer.\n     * @param string file to read from\n     * @param bool whether to overwrite existing data (default TRUE)\n     * @param string config layer to insert data into ('user' or 'system')\n     * @param string if true, errors are returned if file opening fails\n     * @return bool TRUE on success or a PEAR error on failure\n     */\n    function mergeConfigFile($file, $override = true, $layer = 'user', $strict = true)\n    {\n        if (empty($this->files[$layer])) {\n            return $this->raiseError(\"unknown config layer `$layer'\");\n        }\n\n        if ($file === null) {\n            $file = $this->files[$layer];\n        }\n\n        $data = $this->_readConfigDataFrom($file);\n        if (PEAR::isError($data)) {\n            if (!$strict) {\n                return true;\n            }\n\n            $this->_errorsFound++;\n            $this->lastError = $data;\n\n            return $data;\n        }\n\n        $this->_decodeInput($data);\n        if ($override) {\n            $this->configuration[$layer] =\n                PEAR_Config::arrayMergeRecursive($this->configuration[$layer], $data);\n        } else {\n            $this->configuration[$layer] =\n                PEAR_Config::arrayMergeRecursive($data, $this->configuration[$layer]);\n        }\n\n        $this->_setupChannels();\n        if (!$this->_noRegistry && ($phpdir = $this->get('php_dir', $layer, 'pear.php.net'))) {\n            $this->_registry[$layer] = &new PEAR_Registry($phpdir);\n            $this->_registry[$layer]->setConfig($this, false);\n            $this->_regInitialized[$layer] = false;\n        } else {\n            unset($this->_registry[$layer]);\n        }\n        return true;\n    }\n\n    /**\n     * @param array\n     * @param array\n     * @return array\n     * @static\n     */\n    function arrayMergeRecursive($arr2, $arr1)\n    {\n        $ret = array();\n        foreach ($arr2 as $key => $data) {\n            if (!isset($arr1[$key])) {\n                $ret[$key] = $data;\n                unset($arr1[$key]);\n                continue;\n            }\n            if (is_array($data)) {\n                if (!is_array($arr1[$key])) {\n                    $ret[$key] = $arr1[$key];\n                    unset($arr1[$key]);\n                    continue;\n                }\n                $ret[$key] = PEAR_Config::arrayMergeRecursive($arr1[$key], $arr2[$key]);\n                unset($arr1[$key]);\n            }\n        }\n\n        return array_merge($ret, $arr1);\n    }\n\n    /**\n     * Writes data into a config layer from a file.\n     *\n     * @param string|null file to read from, or null for default\n     * @param string config layer to insert data into ('user' or\n     *               'system')\n     * @param string|null data to write to config file or null for internal data [DEPRECATED]\n     * @return bool TRUE on success or a PEAR error on failure\n     */\n    function writeConfigFile($file = null, $layer = 'user', $data = null)\n    {\n        $this->_lazyChannelSetup($layer);\n        if ($layer == 'both' || $layer == 'all') {\n            foreach ($this->files as $type => $file) {\n                $err = $this->writeConfigFile($file, $type, $data);\n                if (PEAR::isError($err)) {\n                    return $err;\n                }\n            }\n            return true;\n        }\n\n        if (empty($this->files[$layer])) {\n            return $this->raiseError(\"unknown config file type `$layer'\");\n        }\n\n        if ($file === null) {\n            $file = $this->files[$layer];\n        }\n\n        $data = ($data === null) ? $this->configuration[$layer] : $data;\n        $this->_encodeOutput($data);\n        $opt = array('-p', dirname($file));\n        if (!@System::mkDir($opt)) {\n            return $this->raiseError(\"could not create directory: \" . dirname($file));\n        }\n\n        if (file_exists($file) && is_file($file) && !is_writeable($file)) {\n            return $this->raiseError(\"no write access to $file!\");\n        }\n\n        $fp = @fopen($file, \"w\");\n        if (!$fp) {\n            return $this->raiseError(\"PEAR_Config::writeConfigFile fopen('$file','w') failed ($php_errormsg)\");\n        }\n\n        $contents = \"#PEAR_Config 0.9\\n\" . serialize($data);\n        if (!@fwrite($fp, $contents)) {\n            return $this->raiseError(\"PEAR_Config::writeConfigFile: fwrite failed ($php_errormsg)\");\n        }\n        return true;\n    }\n\n    /**\n     * Reads configuration data from a file and returns the parsed data\n     * in an array.\n     *\n     * @param string file to read from\n     * @return array configuration data or a PEAR error on failure\n     * @access private\n     */\n    function _readConfigDataFrom($file)\n    {\n        $fp = false;\n        if (file_exists($file)) {\n            $fp = @fopen($file, \"r\");\n        }\n\n        if (!$fp) {\n            return $this->raiseError(\"PEAR_Config::readConfigFile fopen('$file','r') failed\");\n        }\n\n        $size = filesize($file);\n        $rt = get_magic_quotes_runtime();\n        set_magic_quotes_runtime(0);\n        fclose($fp);\n        $contents = file_get_contents($file);\n        if (empty($contents)) {\n            return $this->raiseError('Configuration file \"' . $file . '\" is empty');\n        }\n\n        set_magic_quotes_runtime($rt);\n\n        $version = false;\n        if (preg_match('/^#PEAR_Config\\s+(\\S+)\\s+/si', $contents, $matches)) {\n            $version = $matches[1];\n            $contents = substr($contents, strlen($matches[0]));\n        } else {\n            // Museum config file\n            if (substr($contents,0,2) == 'a:') {\n                $version = '0.1';\n            }\n        }\n\n        if ($version && version_compare(\"$version\", '1', '<')) {\n            // no '@', it is possible that unserialize\n            // raises a notice but it seems to block IO to\n            // STDOUT if a '@' is used and a notice is raise\n            $data = unserialize($contents);\n\n            if (!is_array($data) && !$data) {\n                if ($contents == serialize(false)) {\n                    $data = array();\n                } else {\n                    $err = $this->raiseError(\"PEAR_Config: bad data in $file\");\n                    return $err;\n                }\n            }\n            if (!is_array($data)) {\n                if (strlen(trim($contents)) > 0) {\n                    $error = \"PEAR_Config: bad data in $file\";\n                    $err = $this->raiseError($error);\n                    return $err;\n                }\n\n                $data = array();\n            }\n        // add parsing of newer formats here...\n        } else {\n            $err = $this->raiseError(\"$file: unknown version `$version'\");\n            return $err;\n        }\n\n        return $data;\n    }\n\n    /**\n    * Gets the file used for storing the config for a layer\n    *\n    * @param string $layer 'user' or 'system'\n    */\n    function getConfFile($layer)\n    {\n        return $this->files[$layer];\n    }\n\n    /**\n     * @param string Configuration class name, used for detecting duplicate calls\n     * @param array information on a role as parsed from its xml file\n     * @return true|PEAR_Error\n     * @access private\n     */\n    function _addConfigVars($class, $vars)\n    {\n        static $called = array();\n        if (isset($called[$class])) {\n            return;\n        }\n\n        $called[$class] = 1;\n        if (count($vars) > 3) {\n            return $this->raiseError('Roles can only define 3 new config variables or less');\n        }\n\n        foreach ($vars as $name => $var) {\n            if (!is_array($var)) {\n                return $this->raiseError('Configuration information must be an array');\n            }\n\n            if (!isset($var['type'])) {\n                return $this->raiseError('Configuration information must contain a type');\n            } elseif (!in_array($var['type'],\n                    array('string', 'mask', 'password', 'directory', 'file', 'set'))) {\n                  return $this->raiseError(\n                      'Configuration type must be one of directory, file, string, ' .\n                      'mask, set, or password');\n            }\n            if (!isset($var['default'])) {\n                return $this->raiseError(\n                    'Configuration information must contain a default value (\"default\" index)');\n            }\n\n            if (is_array($var['default'])) {\n                $real_default = '';\n                foreach ($var['default'] as $config_var => $val) {\n                    if (strpos($config_var, 'text') === 0) {\n                        $real_default .= $val;\n                    } elseif (strpos($config_var, 'constant') === 0) {\n                        if (!defined($val)) {\n                            return $this->raiseError(\n                                'Unknown constant \"' . $val . '\" requested in ' .\n                                'default value for configuration variable \"' .\n                                $name . '\"');\n                        }\n\n                        $real_default .= constant($val);\n                    } elseif (isset($this->configuration_info[$config_var])) {\n                        $real_default .=\n                            $this->configuration_info[$config_var]['default'];\n                    } else {\n                        return $this->raiseError(\n                            'Unknown request for \"' . $config_var . '\" value in ' .\n                            'default value for configuration variable \"' .\n                            $name . '\"');\n                    }\n                }\n                $var['default'] = $real_default;\n            }\n\n            if ($var['type'] == 'integer') {\n                $var['default'] = (integer) $var['default'];\n            }\n\n            if (!isset($var['doc'])) {\n                return $this->raiseError(\n                    'Configuration information must contain a summary (\"doc\" index)');\n            }\n\n            if (!isset($var['prompt'])) {\n                return $this->raiseError(\n                    'Configuration information must contain a simple prompt (\"prompt\" index)');\n            }\n\n            if (!isset($var['group'])) {\n                return $this->raiseError(\n                    'Configuration information must contain a simple group (\"group\" index)');\n            }\n\n            if (isset($this->configuration_info[$name])) {\n                return $this->raiseError('Configuration variable \"' . $name .\n                    '\" already exists');\n            }\n\n            $this->configuration_info[$name] = $var;\n            // fix bug #7351: setting custom config variable in a channel fails\n            $this->_channelConfigInfo[] = $name;\n        }\n\n        return true;\n    }\n\n    /**\n     * Encodes/scrambles configuration data before writing to files.\n     * Currently, 'password' values will be base64-encoded as to avoid\n     * that people spot cleartext passwords by accident.\n     *\n     * @param array (reference) array to encode values in\n     * @return bool TRUE on success\n     * @access private\n     */\n    function _encodeOutput(&$data)\n    {\n        foreach ($data as $key => $value) {\n            if ($key == '__channels') {\n                foreach ($data['__channels'] as $channel => $blah) {\n                    $this->_encodeOutput($data['__channels'][$channel]);\n                }\n            }\n\n            if (!isset($this->configuration_info[$key])) {\n                continue;\n            }\n\n            $type = $this->configuration_info[$key]['type'];\n            switch ($type) {\n                // we base64-encode passwords so they are at least\n                // not shown in plain by accident\n                case 'password': {\n                    $data[$key] = base64_encode($data[$key]);\n                    break;\n                }\n                case 'mask': {\n                    $data[$key] = octdec($data[$key]);\n                    break;\n                }\n            }\n        }\n\n        return true;\n    }\n\n    /**\n     * Decodes/unscrambles configuration data after reading from files.\n     *\n     * @param array (reference) array to encode values in\n     * @return bool TRUE on success\n     * @access private\n     *\n     * @see PEAR_Config::_encodeOutput\n     */\n    function _decodeInput(&$data)\n    {\n        if (!is_array($data)) {\n            return true;\n        }\n\n        foreach ($data as $key => $value) {\n            if ($key == '__channels') {\n                foreach ($data['__channels'] as $channel => $blah) {\n                    $this->_decodeInput($data['__channels'][$channel]);\n                }\n            }\n\n            if (!isset($this->configuration_info[$key])) {\n                continue;\n            }\n\n            $type = $this->configuration_info[$key]['type'];\n            switch ($type) {\n                case 'password': {\n                    $data[$key] = base64_decode($data[$key]);\n                    break;\n                }\n                case 'mask': {\n                    $data[$key] = decoct($data[$key]);\n                    break;\n                }\n            }\n        }\n\n        return true;\n    }\n\n    /**\n     * Retrieve the default channel.\n     *\n     * On startup, channels are not initialized, so if the default channel is not\n     * pear.php.net, then initialize the config.\n     * @param string registry layer\n     * @return string|false\n     */\n    function getDefaultChannel($layer = null)\n    {\n        $ret = false;\n        if ($layer === null) {\n            foreach ($this->layers as $layer) {\n                if (isset($this->configuration[$layer]['default_channel'])) {\n                    $ret = $this->configuration[$layer]['default_channel'];\n                    break;\n                }\n            }\n        } elseif (isset($this->configuration[$layer]['default_channel'])) {\n            $ret = $this->configuration[$layer]['default_channel'];\n        }\n\n        if ($ret == 'pear.php.net' && defined('PEAR_RUNTYPE') && PEAR_RUNTYPE == 'pecl') {\n            $ret = 'pecl.php.net';\n        }\n\n        if ($ret) {\n            if ($ret != 'pear.php.net') {\n                $this->_lazyChannelSetup();\n            }\n\n            return $ret;\n        }\n\n        return PEAR_CONFIG_DEFAULT_CHANNEL;\n    }\n\n    /**\n     * Returns a configuration value, prioritizing layers as per the\n     * layers property.\n     *\n     * @param string config key\n     * @return mixed the config value, or NULL if not found\n     * @access public\n     */\n    function get($key, $layer = null, $channel = false)\n    {\n        if (!isset($this->configuration_info[$key])) {\n            return null;\n        }\n\n        if ($key == '__channels') {\n            return null;\n        }\n\n        if ($key == 'default_channel') {\n            return $this->getDefaultChannel($layer);\n        }\n\n        if (!$channel) {\n            $channel = $this->getDefaultChannel();\n        } elseif ($channel != 'pear.php.net') {\n            $this->_lazyChannelSetup();\n        }\n        $channel = strtolower($channel);\n\n        $test = (in_array($key, $this->_channelConfigInfo)) ?\n            $this->_getChannelValue($key, $layer, $channel) :\n            null;\n        if ($test !== null) {\n            if ($this->_installRoot) {\n                if (in_array($this->getGroup($key),\n                      array('File Locations', 'File Locations (Advanced)')) &&\n                      $this->getType($key) == 'directory') {\n                    return $this->_prependPath($test, $this->_installRoot);\n                }\n            }\n            return $test;\n        }\n\n        if ($layer === null) {\n            foreach ($this->layers as $layer) {\n                if (isset($this->configuration[$layer][$key])) {\n                    $test = $this->configuration[$layer][$key];\n                    if ($this->_installRoot) {\n                        if (in_array($this->getGroup($key),\n                              array('File Locations', 'File Locations (Advanced)')) &&\n                              $this->getType($key) == 'directory') {\n                            return $this->_prependPath($test, $this->_installRoot);\n                        }\n                    }\n\n                    if ($key == 'preferred_mirror') {\n                        $reg = &$this->getRegistry();\n                        if (is_object($reg)) {\n                            $chan = &$reg->getChannel($channel);\n                            if (PEAR::isError($chan)) {\n                                return $channel;\n                            }\n\n                            if (!$chan->getMirror($test) && $chan->getName() != $test) {\n                                return $channel; // mirror does not exist\n                            }\n                        }\n                    }\n                    return $test;\n                }\n            }\n        } elseif (isset($this->configuration[$layer][$key])) {\n            $test = $this->configuration[$layer][$key];\n            if ($this->_installRoot) {\n                if (in_array($this->getGroup($key),\n                      array('File Locations', 'File Locations (Advanced)')) &&\n                      $this->getType($key) == 'directory') {\n                    return $this->_prependPath($test, $this->_installRoot);\n                }\n            }\n\n            if ($key == 'preferred_mirror') {\n                $reg = &$this->getRegistry();\n                if (is_object($reg)) {\n                    $chan = &$reg->getChannel($channel);\n                    if (PEAR::isError($chan)) {\n                        return $channel;\n                    }\n\n                    if (!$chan->getMirror($test) && $chan->getName() != $test) {\n                        return $channel; // mirror does not exist\n                    }\n                }\n            }\n\n            return $test;\n        }\n\n        return null;\n    }\n\n    /**\n     * Returns a channel-specific configuration value, prioritizing layers as per the\n     * layers property.\n     *\n     * @param string config key\n     * @return mixed the config value, or NULL if not found\n     * @access private\n     */\n    function _getChannelValue($key, $layer, $channel)\n    {\n        if ($key == '__channels' || $channel == 'pear.php.net') {\n            return null;\n        }\n\n        $ret = null;\n        if ($layer === null) {\n            foreach ($this->layers as $ilayer) {\n                if (isset($this->configuration[$ilayer]['__channels'][$channel][$key])) {\n                    $ret = $this->configuration[$ilayer]['__channels'][$channel][$key];\n                    break;\n                }\n            }\n        } elseif (isset($this->configuration[$layer]['__channels'][$channel][$key])) {\n            $ret = $this->configuration[$layer]['__channels'][$channel][$key];\n        }\n\n        if ($key != 'preferred_mirror') {\n            return $ret;\n        }\n\n\n        if ($ret !== null) {\n            $reg = &$this->getRegistry($layer);\n            if (is_object($reg)) {\n                $chan = &$reg->getChannel($channel);\n                if (PEAR::isError($chan)) {\n                    return $channel;\n                }\n\n                if (!$chan->getMirror($ret) && $chan->getName() != $ret) {\n                    return $channel; // mirror does not exist\n                }\n            }\n\n            return $ret;\n        }\n\n        if ($channel != $this->getDefaultChannel($layer)) {\n            return $channel; // we must use the channel name as the preferred mirror\n                             // if the user has not chosen an alternate\n        }\n\n        return $this->getDefaultChannel($layer);\n    }\n\n    /**\n     * Set a config value in a specific layer (defaults to 'user').\n     * Enforces the types defined in the configuration_info array.  An\n     * integer config variable will be cast to int, and a set config\n     * variable will be validated against its legal values.\n     *\n     * @param string config key\n     * @param string config value\n     * @param string (optional) config layer\n     * @param string channel to set this value for, or null for global value\n     * @return bool TRUE on success, FALSE on failure\n     */\n    function set($key, $value, $layer = 'user', $channel = false)\n    {\n        if ($key == '__channels') {\n            return false;\n        }\n\n        if (!isset($this->configuration[$layer])) {\n            return false;\n        }\n\n        if ($key == 'default_channel') {\n            // can only set this value globally\n            $channel = 'pear.php.net';\n            if ($value != 'pear.php.net') {\n                $this->_lazyChannelSetup($layer);\n            }\n        }\n\n        if ($key == 'preferred_mirror') {\n            if ($channel == '__uri') {\n                return false; // can't set the __uri pseudo-channel's mirror\n            }\n\n            $reg = &$this->getRegistry($layer);\n            if (is_object($reg)) {\n                $chan = &$reg->getChannel($channel ? $channel : 'pear.php.net');\n                if (PEAR::isError($chan)) {\n                    return false;\n                }\n\n                if (!$chan->getMirror($value) && $chan->getName() != $value) {\n                    return false; // mirror does not exist\n                }\n            }\n        }\n\n        if (!isset($this->configuration_info[$key])) {\n            return false;\n        }\n\n        extract($this->configuration_info[$key]);\n        switch ($type) {\n            case 'integer':\n                $value = (int)$value;\n                break;\n            case 'set': {\n                // If a valid_set is specified, require the value to\n                // be in the set.  If there is no valid_set, accept\n                // any value.\n                if ($valid_set) {\n                    reset($valid_set);\n                    if ((key($valid_set) === 0 && !in_array($value, $valid_set)) ||\n                        (key($valid_set) !== 0 && empty($valid_set[$value])))\n                    {\n                        return false;\n                    }\n                }\n                break;\n            }\n        }\n\n        if (!$channel) {\n            $channel = $this->get('default_channel', null, 'pear.php.net');\n        }\n\n        if (!in_array($channel, $this->_channels)) {\n            $this->_lazyChannelSetup($layer);\n            $reg = &$this->getRegistry($layer);\n            if ($reg) {\n                $channel = $reg->channelName($channel);\n            }\n\n            if (!in_array($channel, $this->_channels)) {\n                return false;\n            }\n        }\n\n        if ($channel != 'pear.php.net') {\n            if (in_array($key, $this->_channelConfigInfo)) {\n                $this->configuration[$layer]['__channels'][$channel][$key] = $value;\n                return true;\n            }\n\n            return false;\n        }\n\n        if ($key == 'default_channel') {\n            if (!isset($reg)) {\n                $reg = &$this->getRegistry($layer);\n                if (!$reg) {\n                    $reg = &$this->getRegistry();\n                }\n            }\n\n            if ($reg) {\n                $value = $reg->channelName($value);\n            }\n\n            if (!$value) {\n                return false;\n            }\n        }\n\n        $this->configuration[$layer][$key] = $value;\n        if ($key == 'php_dir' && !$this->_noRegistry) {\n            if (!isset($this->_registry[$layer]) ||\n                  $value != $this->_registry[$layer]->install_dir) {\n                $this->_registry[$layer] = &new PEAR_Registry($value);\n                $this->_regInitialized[$layer] = false;\n                $this->_registry[$layer]->setConfig($this, false);\n            }\n        }\n\n        return true;\n    }\n\n    function _lazyChannelSetup($uselayer = false)\n    {\n        if ($this->_noRegistry) {\n            return;\n        }\n\n        $merge = false;\n        foreach ($this->_registry as $layer => $p) {\n            if ($uselayer && $uselayer != $layer) {\n                continue;\n            }\n\n            if (!$this->_regInitialized[$layer]) {\n                if ($layer == 'default' && isset($this->_registry['user']) ||\n                      isset($this->_registry['system'])) {\n                    // only use the default registry if there are no alternatives\n                    continue;\n                }\n\n                if (!is_object($this->_registry[$layer])) {\n                    if ($phpdir = $this->get('php_dir', $layer, 'pear.php.net')) {\n                        $this->_registry[$layer] = &new PEAR_Registry($phpdir);\n                        $this->_registry[$layer]->setConfig($this, false);\n                        $this->_regInitialized[$layer] = false;\n                    } else {\n                        unset($this->_registry[$layer]);\n                        return;\n                    }\n                }\n\n                $this->setChannels($this->_registry[$layer]->listChannels(), $merge);\n                $this->_regInitialized[$layer] = true;\n                $merge = true;\n            }\n        }\n    }\n\n    /**\n     * Set the list of channels.\n     *\n     * This should be set via a call to {@link PEAR_Registry::listChannels()}\n     * @param array\n     * @param bool\n     * @return bool success of operation\n     */\n    function setChannels($channels, $merge = false)\n    {\n        if (!is_array($channels)) {\n            return false;\n        }\n\n        if ($merge) {\n            $this->_channels = array_merge($this->_channels, $channels);\n        } else {\n            $this->_channels = $channels;\n        }\n\n        foreach ($channels as $channel) {\n            $channel = strtolower($channel);\n            if ($channel == 'pear.php.net') {\n                continue;\n            }\n\n            foreach ($this->layers as $layer) {\n                if (!isset($this->configuration[$layer]['__channels'])) {\n                    $this->configuration[$layer]['__channels'] = array();\n                }\n                if (!isset($this->configuration[$layer]['__channels'][$channel])\n                      || !is_array($this->configuration[$layer]['__channels'][$channel])) {\n                    $this->configuration[$layer]['__channels'][$channel] = array();\n                }\n            }\n        }\n\n        return true;\n    }\n\n    /**\n     * Get the type of a config value.\n     *\n     * @param string  config key\n     *\n     * @return string type, one of \"string\", \"integer\", \"file\",\n     * \"directory\", \"set\" or \"password\".\n     *\n     * @access public\n     *\n     */\n    function getType($key)\n    {\n        if (isset($this->configuration_info[$key])) {\n            return $this->configuration_info[$key]['type'];\n        }\n        return false;\n    }\n\n    /**\n     * Get the documentation for a config value.\n     *\n     * @param string  config key\n     * @return string documentation string\n     *\n     * @access public\n     *\n     */\n    function getDocs($key)\n    {\n        if (isset($this->configuration_info[$key])) {\n            return $this->configuration_info[$key]['doc'];\n        }\n\n        return false;\n    }\n\n    /**\n     * Get the short documentation for a config value.\n     *\n     * @param string  config key\n     * @return string short documentation string\n     *\n     * @access public\n     *\n     */\n    function getPrompt($key)\n    {\n        if (isset($this->configuration_info[$key])) {\n            return $this->configuration_info[$key]['prompt'];\n        }\n\n        return false;\n    }\n\n    /**\n     * Get the parameter group for a config key.\n     *\n     * @param string  config key\n     * @return string parameter group\n     *\n     * @access public\n     *\n     */\n    function getGroup($key)\n    {\n        if (isset($this->configuration_info[$key])) {\n            return $this->configuration_info[$key]['group'];\n        }\n\n        return false;\n    }\n\n    /**\n     * Get the list of parameter groups.\n     *\n     * @return array list of parameter groups\n     *\n     * @access public\n     *\n     */\n    function getGroups()\n    {\n        $tmp = array();\n        foreach ($this->configuration_info as $key => $info) {\n            $tmp[$info['group']] = 1;\n        }\n\n        return array_keys($tmp);\n    }\n\n    /**\n     * Get the list of the parameters in a group.\n     *\n     * @param string $group parameter group\n     * @return array list of parameters in $group\n     *\n     * @access public\n     *\n     */\n    function getGroupKeys($group)\n    {\n        $keys = array();\n        foreach ($this->configuration_info as $key => $info) {\n            if ($info['group'] == $group) {\n                $keys[] = $key;\n            }\n        }\n\n        return $keys;\n    }\n\n    /**\n     * Get the list of allowed set values for a config value.  Returns\n     * NULL for config values that are not sets.\n     *\n     * @param string  config key\n     * @return array enumerated array of set values, or NULL if the\n     *               config key is unknown or not a set\n     *\n     * @access public\n     *\n     */\n    function getSetValues($key)\n    {\n        if (isset($this->configuration_info[$key]) &&\n            isset($this->configuration_info[$key]['type']) &&\n            $this->configuration_info[$key]['type'] == 'set')\n        {\n            $valid_set = $this->configuration_info[$key]['valid_set'];\n            reset($valid_set);\n            if (key($valid_set) === 0) {\n                return $valid_set;\n            }\n\n            return array_keys($valid_set);\n        }\n\n        return null;\n    }\n\n    /**\n     * Get all the current config keys.\n     *\n     * @return array simple array of config keys\n     *\n     * @access public\n     */\n    function getKeys()\n    {\n        $keys = array();\n        foreach ($this->layers as $layer) {\n            $test = $this->configuration[$layer];\n            if (isset($test['__channels'])) {\n                foreach ($test['__channels'] as $channel => $configs) {\n                    $keys = array_merge($keys, $configs);\n                }\n            }\n\n            unset($test['__channels']);\n            $keys = array_merge($keys, $test);\n\n        }\n        return array_keys($keys);\n    }\n\n    /**\n     * Remove the a config key from a specific config layer.\n     *\n     * @param string config key\n     * @param string (optional) config layer\n     * @param string (optional) channel (defaults to default channel)\n     * @return bool TRUE on success, FALSE on failure\n     *\n     * @access public\n     */\n    function remove($key, $layer = 'user', $channel = null)\n    {\n        if ($channel === null) {\n            $channel = $this->getDefaultChannel();\n        }\n\n        if ($channel !== 'pear.php.net') {\n            if (isset($this->configuration[$layer]['__channels'][$channel][$key])) {\n                unset($this->configuration[$layer]['__channels'][$channel][$key]);\n                return true;\n            }\n        }\n\n        if (isset($this->configuration[$layer][$key])) {\n            unset($this->configuration[$layer][$key]);\n            return true;\n        }\n\n        return false;\n    }\n\n    /**\n     * Temporarily remove an entire config layer.  USE WITH CARE!\n     *\n     * @param string config key\n     * @param string (optional) config layer\n     * @return bool TRUE on success, FALSE on failure\n     *\n     * @access public\n     */\n    function removeLayer($layer)\n    {\n        if (isset($this->configuration[$layer])) {\n            $this->configuration[$layer] = array();\n            return true;\n        }\n\n        return false;\n    }\n\n    /**\n     * Stores configuration data in a layer.\n     *\n     * @param string config layer to store\n     * @return bool TRUE on success, or PEAR error on failure\n     *\n     * @access public\n     */\n    function store($layer = 'user', $data = null)\n    {\n        return $this->writeConfigFile(null, $layer, $data);\n    }\n\n    /**\n     * Tells what config layer that gets to define a key.\n     *\n     * @param string config key\n     * @param boolean return the defining channel\n     *\n     * @return string|array the config layer, or an empty string if not found.\n     *\n     *         if $returnchannel, the return is an array array('layer' => layername,\n     *         'channel' => channelname), or an empty string if not found\n     *\n     * @access public\n     */\n    function definedBy($key, $returnchannel = false)\n    {\n        foreach ($this->layers as $layer) {\n            $channel = $this->getDefaultChannel();\n            if ($channel !== 'pear.php.net') {\n                if (isset($this->configuration[$layer]['__channels'][$channel][$key])) {\n                    if ($returnchannel) {\n                        return array('layer' => $layer, 'channel' => $channel);\n                    }\n                    return $layer;\n                }\n            }\n\n            if (isset($this->configuration[$layer][$key])) {\n                if ($returnchannel) {\n                    return array('layer' => $layer, 'channel' => 'pear.php.net');\n                }\n                return $layer;\n            }\n        }\n\n        return '';\n    }\n\n    /**\n     * Tells whether a given key exists as a config value.\n     *\n     * @param string config key\n     * @return bool whether <config key> exists in this object\n     *\n     * @access public\n     */\n    function isDefined($key)\n    {\n        foreach ($this->layers as $layer) {\n            if (isset($this->configuration[$layer][$key])) {\n                return true;\n            }\n        }\n\n        return false;\n    }\n\n    /**\n     * Tells whether a given config layer exists.\n     *\n     * @param string config layer\n     * @return bool whether <config layer> exists in this object\n     *\n     * @access public\n     */\n    function isDefinedLayer($layer)\n    {\n        return isset($this->configuration[$layer]);\n    }\n\n    /**\n     * Returns the layers defined (except the 'default' one)\n     *\n     * @return array of the defined layers\n     */\n    function getLayers()\n    {\n        $cf = $this->configuration;\n        unset($cf['default']);\n        return array_keys($cf);\n    }\n\n    function apiVersion()\n    {\n        return '1.1';\n    }\n\n    /**\n     * @return PEAR_Registry\n     */\n    function &getRegistry($use = null)\n    {\n        $layer = $use === null ? 'user' : $use;\n        if (isset($this->_registry[$layer])) {\n            return $this->_registry[$layer];\n        } elseif ($use === null && isset($this->_registry['system'])) {\n            return $this->_registry['system'];\n        } elseif ($use === null && isset($this->_registry['default'])) {\n            return $this->_registry['default'];\n        } elseif ($use) {\n            $a = false;\n            return $a;\n        }\n\n        // only go here if null was passed in\n        echo \"CRITICAL ERROR: Registry could not be initialized from any value\";\n        exit(1);\n    }\n\n    /**\n     * This is to allow customization like the use of installroot\n     * @param PEAR_Registry\n     * @return bool\n     */\n    function setRegistry(&$reg, $layer = 'user')\n    {\n        if ($this->_noRegistry) {\n            return false;\n        }\n\n        if (!in_array($layer, array('user', 'system'))) {\n            return false;\n        }\n\n        $this->_registry[$layer] = &$reg;\n        if (is_object($reg)) {\n            $this->_registry[$layer]->setConfig($this, false);\n        }\n\n        return true;\n    }\n\n    function noRegistry()\n    {\n        $this->_noRegistry = true;\n    }\n\n    /**\n     * @return PEAR_REST\n     */\n    function &getREST($version, $options = array())\n    {\n        $version = str_replace('.', '', $version);\n        if (!class_exists($class = 'PEAR_REST_' . $version)) {\n            require_once 'PEAR/REST/' . $version . '.php';\n        }\n\n        $remote = &new $class($this, $options);\n        return $remote;\n    }\n\n    /**\n     * The ftp server is set in {@link readFTPConfigFile()}.  It exists only if a\n     * remote configuration file has been specified\n     * @return PEAR_FTP|false\n     */\n    function &getFTP()\n    {\n        if (isset($this->_ftp)) {\n            return $this->_ftp;\n        }\n\n        $a = false;\n        return $a;\n    }\n\n    function _prependPath($path, $prepend)\n    {\n        if (strlen($prepend) > 0) {\n            if (OS_WINDOWS && preg_match('/^[a-z]:/i', $path)) {\n                if (preg_match('/^[a-z]:/i', $prepend)) {\n                    $prepend = substr($prepend, 2);\n                } elseif ($prepend{0} != '\\\\') {\n                    $prepend = \"\\\\$prepend\";\n                }\n                $path = substr($path, 0, 2) . $prepend . substr($path, 2);\n            } else {\n                $path = $prepend . $path;\n            }\n        }\n        return $path;\n    }\n\n    /**\n     * @param string|false installation directory to prepend to all _dir variables, or false to\n     *                     disable\n     */\n    function setInstallRoot($root)\n    {\n        if (substr($root, -1) == DIRECTORY_SEPARATOR) {\n            $root = substr($root, 0, -1);\n        }\n        $old = $this->_installRoot;\n        $this->_installRoot = $root;\n        if (($old != $root) && !$this->_noRegistry) {\n            foreach (array_keys($this->_registry) as $layer) {\n                if ($layer == 'ftp' || !isset($this->_registry[$layer])) {\n                    continue;\n                }\n                $this->_registry[$layer] =\n                    &new PEAR_Registry($this->get('php_dir', $layer, 'pear.php.net'));\n                $this->_registry[$layer]->setConfig($this, false);\n                $this->_regInitialized[$layer] = false;\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/include/PEAR/Dependency2.php",
    "content": "<?php\n/**\n * PEAR_Dependency2, advanced dependency validation\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Dependency2.php 286494 2009-07-29 06:57:11Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n\n/**\n * Required for the PEAR_VALIDATE_* constants\n */\nrequire_once 'PEAR/Validate.php';\n\n/**\n * Dependency check for PEAR packages\n *\n * This class handles both version 1.0 and 2.0 dependencies\n * WARNING: *any* changes to this class must be duplicated in the\n * test_PEAR_Dependency2 class found in tests/PEAR_Dependency2/setup.php.inc,\n * or unit tests will not actually validate the changes\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_Dependency2\n{\n    /**\n     * One of the PEAR_VALIDATE_* states\n     * @see PEAR_VALIDATE_NORMAL\n     * @var integer\n     */\n    var $_state;\n\n    /**\n     * Command-line options to install/upgrade/uninstall commands\n     * @param array\n     */\n    var $_options;\n\n    /**\n     * @var OS_Guess\n     */\n    var $_os;\n\n    /**\n     * @var PEAR_Registry\n     */\n    var $_registry;\n\n    /**\n     * @var PEAR_Config\n     */\n    var $_config;\n\n    /**\n     * @var PEAR_DependencyDB\n     */\n    var $_dependencydb;\n\n    /**\n     * Output of PEAR_Registry::parsedPackageName()\n     * @var array\n     */\n    var $_currentPackage;\n\n    /**\n     * @param PEAR_Config\n     * @param array installation options\n     * @param array format of PEAR_Registry::parsedPackageName()\n     * @param int installation state (one of PEAR_VALIDATE_*)\n     */\n    function PEAR_Dependency2(&$config, $installoptions, $package,\n                              $state = PEAR_VALIDATE_INSTALLING)\n    {\n        $this->_config = &$config;\n        if (!class_exists('PEAR_DependencyDB')) {\n            require_once 'PEAR/DependencyDB.php';\n        }\n\n        if (isset($installoptions['packagingroot'])) {\n            // make sure depdb is in the right location\n            $config->setInstallRoot($installoptions['packagingroot']);\n        }\n\n        $this->_registry = &$config->getRegistry();\n        $this->_dependencydb = &PEAR_DependencyDB::singleton($config);\n        if (isset($installoptions['packagingroot'])) {\n            $config->setInstallRoot(false);\n        }\n\n        $this->_options = $installoptions;\n        $this->_state = $state;\n        if (!class_exists('OS_Guess')) {\n            require_once 'OS/Guess.php';\n        }\n\n        $this->_os = new OS_Guess;\n        $this->_currentPackage = $package;\n    }\n\n    function _getExtraString($dep)\n    {\n        $extra = ' (';\n        if (isset($dep['uri'])) {\n            return '';\n        }\n\n        if (isset($dep['recommended'])) {\n            $extra .= 'recommended version ' . $dep['recommended'];\n        } else {\n            if (isset($dep['min'])) {\n                $extra .= 'version >= ' . $dep['min'];\n            }\n\n            if (isset($dep['max'])) {\n                if ($extra != ' (') {\n                    $extra .= ', ';\n                }\n                $extra .= 'version <= ' . $dep['max'];\n            }\n\n            if (isset($dep['exclude'])) {\n                if (!is_array($dep['exclude'])) {\n                    $dep['exclude'] = array($dep['exclude']);\n                }\n\n                if ($extra != ' (') {\n                    $extra .= ', ';\n                }\n\n                $extra .= 'excluded versions: ';\n                foreach ($dep['exclude'] as $i => $exclude) {\n                    if ($i) {\n                        $extra .= ', ';\n                    }\n                    $extra .= $exclude;\n                }\n            }\n        }\n\n        $extra .= ')';\n        if ($extra == ' ()') {\n            $extra = '';\n        }\n\n        return $extra;\n    }\n\n    /**\n     * This makes unit-testing a heck of a lot easier\n     */\n    function getPHP_OS()\n    {\n        return PHP_OS;\n    }\n\n    /**\n     * This makes unit-testing a heck of a lot easier\n     */\n    function getsysname()\n    {\n        return $this->_os->getSysname();\n    }\n\n    /**\n     * Specify a dependency on an OS.  Use arch for detailed os/processor information\n     *\n     * There are two generic OS dependencies that will be the most common, unix and windows.\n     * Other options are linux, freebsd, darwin (OS X), sunos, irix, hpux, aix\n     */\n    function validateOsDependency($dep)\n    {\n        if ($this->_state != PEAR_VALIDATE_INSTALLING && $this->_state != PEAR_VALIDATE_DOWNLOADING) {\n            return true;\n        }\n\n        if ($dep['name'] == '*') {\n            return true;\n        }\n\n        $not = isset($dep['conflicts']) ? true : false;\n        switch (strtolower($dep['name'])) {\n            case 'windows' :\n                if ($not) {\n                    if (strtolower(substr($this->getPHP_OS(), 0, 3)) == 'win') {\n                        if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                            return $this->raiseError(\"Cannot install %s on Windows\");\n                        }\n\n                        return $this->warning(\"warning: Cannot install %s on Windows\");\n                    }\n                } else {\n                    if (strtolower(substr($this->getPHP_OS(), 0, 3)) != 'win') {\n                        if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                            return $this->raiseError(\"Can only install %s on Windows\");\n                        }\n\n                        return $this->warning(\"warning: Can only install %s on Windows\");\n                    }\n                }\n            break;\n            case 'unix' :\n                $unices = array('linux', 'freebsd', 'darwin', 'sunos', 'irix', 'hpux', 'aix');\n                if ($not) {\n                    if (in_array($this->getSysname(), $unices)) {\n                        if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                            return $this->raiseError(\"Cannot install %s on any Unix system\");\n                        }\n\n                        return $this->warning( \"warning: Cannot install %s on any Unix system\");\n                    }\n                } else {\n                    if (!in_array($this->getSysname(), $unices)) {\n                        if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                            return $this->raiseError(\"Can only install %s on a Unix system\");\n                        }\n\n                        return $this->warning(\"warning: Can only install %s on a Unix system\");\n                    }\n                }\n            break;\n            default :\n                if ($not) {\n                    if (strtolower($dep['name']) == strtolower($this->getSysname())) {\n                        if (!isset($this->_options['nodeps']) &&\n                              !isset($this->_options['force'])) {\n                            return $this->raiseError('Cannot install %s on ' . $dep['name'] .\n                                ' operating system');\n                        }\n\n                        return $this->warning('warning: Cannot install %s on ' .\n                            $dep['name'] . ' operating system');\n                    }\n                } else {\n                    if (strtolower($dep['name']) != strtolower($this->getSysname())) {\n                        if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                            return $this->raiseError('Cannot install %s on ' .\n                                $this->getSysname() .\n                                ' operating system, can only install on ' . $dep['name']);\n                        }\n\n                        return $this->warning('warning: Cannot install %s on ' .\n                            $this->getSysname() .\n                            ' operating system, can only install on ' . $dep['name']);\n                    }\n                }\n        }\n        return true;\n    }\n\n    /**\n     * This makes unit-testing a heck of a lot easier\n     */\n    function matchSignature($pattern)\n    {\n        return $this->_os->matchSignature($pattern);\n    }\n\n    /**\n     * Specify a complex dependency on an OS/processor/kernel version,\n     * Use OS for simple operating system dependency.\n     *\n     * This is the only dependency that accepts an eregable pattern.  The pattern\n     * will be matched against the php_uname() output parsed by OS_Guess\n     */\n    function validateArchDependency($dep)\n    {\n        if ($this->_state != PEAR_VALIDATE_INSTALLING) {\n            return true;\n        }\n\n        $not = isset($dep['conflicts']) ? true : false;\n        if (!$this->matchSignature($dep['pattern'])) {\n            if (!$not) {\n                if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                    return $this->raiseError('%s Architecture dependency failed, does not ' .\n                        'match \"' . $dep['pattern'] . '\"');\n                }\n\n                return $this->warning('warning: %s Architecture dependency failed, does ' .\n                    'not match \"' . $dep['pattern'] . '\"');\n            }\n\n            return true;\n        }\n\n        if ($not) {\n            if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                return $this->raiseError('%s Architecture dependency failed, required \"' .\n                    $dep['pattern'] . '\"');\n            }\n\n            return $this->warning('warning: %s Architecture dependency failed, ' .\n                'required \"' . $dep['pattern'] . '\"');\n        }\n\n        return true;\n    }\n\n    /**\n     * This makes unit-testing a heck of a lot easier\n     */\n    function extension_loaded($name)\n    {\n        return extension_loaded($name);\n    }\n\n    /**\n     * This makes unit-testing a heck of a lot easier\n     */\n    function phpversion($name = null)\n    {\n        if ($name !== null) {\n            return phpversion($name);\n        }\n\n        return phpversion();\n    }\n\n    function validateExtensionDependency($dep, $required = true)\n    {\n        if ($this->_state != PEAR_VALIDATE_INSTALLING &&\n              $this->_state != PEAR_VALIDATE_DOWNLOADING) {\n            return true;\n        }\n\n        $loaded = $this->extension_loaded($dep['name']);\n        $extra  = $this->_getExtraString($dep);\n        if (isset($dep['exclude'])) {\n            if (!is_array($dep['exclude'])) {\n                $dep['exclude'] = array($dep['exclude']);\n            }\n        }\n\n        if (!isset($dep['min']) && !isset($dep['max']) &&\n            !isset($dep['recommended']) && !isset($dep['exclude'])\n        ) {\n            if ($loaded) {\n                if (isset($dep['conflicts'])) {\n                    if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                        return $this->raiseError('%s conflicts with PHP extension \"' .\n                            $dep['name'] . '\"' . $extra);\n                    }\n\n                    return $this->warning('warning: %s conflicts with PHP extension \"' .\n                        $dep['name'] . '\"' . $extra);\n                }\n\n                return true;\n            }\n\n            if (isset($dep['conflicts'])) {\n                return true;\n            }\n\n            if ($required) {\n                if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                    return $this->raiseError('%s requires PHP extension \"' .\n                        $dep['name'] . '\"' . $extra);\n                }\n\n                return $this->warning('warning: %s requires PHP extension \"' .\n                    $dep['name'] . '\"' . $extra);\n            }\n\n            return $this->warning('%s can optionally use PHP extension \"' .\n                $dep['name'] . '\"' . $extra);\n        }\n\n        if (!$loaded) {\n            if (isset($dep['conflicts'])) {\n                return true;\n            }\n\n            if (!$required) {\n                return $this->warning('%s can optionally use PHP extension \"' .\n                    $dep['name'] . '\"' . $extra);\n            }\n\n            if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                return $this->raiseError('%s requires PHP extension \"' . $dep['name'] .\n                    '\"' . $extra);\n            }\n\n            return $this->warning('warning: %s requires PHP extension \"' . $dep['name'] .\n                    '\"' . $extra);\n        }\n\n        $version = (string) $this->phpversion($dep['name']);\n        if (empty($version)) {\n            $version = '0';\n        }\n\n        $fail = false;\n        if (isset($dep['min']) && !version_compare($version, $dep['min'], '>=')) {\n            $fail = true;\n        }\n\n        if (isset($dep['max']) && !version_compare($version, $dep['max'], '<=')) {\n            $fail = true;\n        }\n\n        if ($fail && !isset($dep['conflicts'])) {\n            if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                return $this->raiseError('%s requires PHP extension \"' . $dep['name'] .\n                    '\"' . $extra . ', installed version is ' . $version);\n            }\n\n            return $this->warning('warning: %s requires PHP extension \"' . $dep['name'] .\n                '\"' . $extra . ', installed version is ' . $version);\n        } elseif ((isset($dep['min']) || isset($dep['max'])) && !$fail && isset($dep['conflicts'])) {\n            if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                return $this->raiseError('%s conflicts with PHP extension \"' .\n                    $dep['name'] . '\"' . $extra . ', installed version is ' . $version);\n            }\n\n            return $this->warning('warning: %s conflicts with PHP extension \"' .\n                $dep['name'] . '\"' . $extra . ', installed version is ' . $version);\n        }\n\n        if (isset($dep['exclude'])) {\n            foreach ($dep['exclude'] as $exclude) {\n                if (version_compare($version, $exclude, '==')) {\n                    if (isset($dep['conflicts'])) {\n                        continue;\n                    }\n\n                    if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                        return $this->raiseError('%s is not compatible with PHP extension \"' .\n                            $dep['name'] . '\" version ' .\n                            $exclude);\n                    }\n\n                    return $this->warning('warning: %s is not compatible with PHP extension \"' .\n                        $dep['name'] . '\" version ' .\n                        $exclude);\n                } elseif (version_compare($version, $exclude, '!=') && isset($dep['conflicts'])) {\n                    if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                        return $this->raiseError('%s conflicts with PHP extension \"' .\n                            $dep['name'] . '\"' . $extra . ', installed version is ' . $version);\n                    }\n\n                    return $this->warning('warning: %s conflicts with PHP extension \"' .\n                        $dep['name'] . '\"' . $extra . ', installed version is ' . $version);\n                }\n            }\n        }\n\n        if (isset($dep['recommended'])) {\n            if (version_compare($version, $dep['recommended'], '==')) {\n                return true;\n            }\n\n            if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                return $this->raiseError('%s dependency: PHP extension ' . $dep['name'] .\n                    ' version \"' . $version . '\"' .\n                    ' is not the recommended version \"' . $dep['recommended'] .\n                    '\", but may be compatible, use --force to install');\n            }\n\n            return $this->warning('warning: %s dependency: PHP extension ' .\n                $dep['name'] . ' version \"' . $version . '\"' .\n                ' is not the recommended version \"' . $dep['recommended'].'\"');\n        }\n\n        return true;\n    }\n\n    function validatePhpDependency($dep)\n    {\n        if ($this->_state != PEAR_VALIDATE_INSTALLING &&\n              $this->_state != PEAR_VALIDATE_DOWNLOADING) {\n            return true;\n        }\n\n        $version = $this->phpversion();\n        $extra   = $this->_getExtraString($dep);\n        if (isset($dep['exclude'])) {\n            if (!is_array($dep['exclude'])) {\n                $dep['exclude'] = array($dep['exclude']);\n            }\n        }\n\n        if (isset($dep['min'])) {\n            if (!version_compare($version, $dep['min'], '>=')) {\n                if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                    return $this->raiseError('%s requires PHP' .\n                        $extra . ', installed version is ' . $version);\n                }\n\n                return $this->warning('warning: %s requires PHP' .\n                    $extra . ', installed version is ' . $version);\n            }\n        }\n\n        if (isset($dep['max'])) {\n            if (!version_compare($version, $dep['max'], '<=')) {\n                if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                    return $this->raiseError('%s requires PHP' .\n                        $extra . ', installed version is ' . $version);\n                }\n\n                return $this->warning('warning: %s requires PHP' .\n                    $extra . ', installed version is ' . $version);\n            }\n        }\n\n        if (isset($dep['exclude'])) {\n            foreach ($dep['exclude'] as $exclude) {\n                if (version_compare($version, $exclude, '==')) {\n                    if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                        return $this->raiseError('%s is not compatible with PHP version ' .\n                            $exclude);\n                    }\n\n                    return $this->warning(\n                        'warning: %s is not compatible with PHP version ' .\n                        $exclude);\n                }\n            }\n        }\n\n        return true;\n    }\n\n    /**\n     * This makes unit-testing a heck of a lot easier\n     */\n    function getPEARVersion()\n    {\n        return '1.9.1';\n    }\n\n    function validatePearinstallerDependency($dep)\n    {\n        $pearversion = $this->getPEARVersion();\n        $extra = $this->_getExtraString($dep);\n        if (isset($dep['exclude'])) {\n            if (!is_array($dep['exclude'])) {\n                $dep['exclude'] = array($dep['exclude']);\n            }\n        }\n\n        if (version_compare($pearversion, $dep['min'], '<')) {\n            if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                return $this->raiseError('%s requires PEAR Installer' . $extra .\n                    ', installed version is ' . $pearversion);\n            }\n\n            return $this->warning('warning: %s requires PEAR Installer' . $extra .\n                ', installed version is ' . $pearversion);\n        }\n\n        if (isset($dep['max'])) {\n            if (version_compare($pearversion, $dep['max'], '>')) {\n                if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                    return $this->raiseError('%s requires PEAR Installer' . $extra .\n                        ', installed version is ' . $pearversion);\n                }\n\n                return $this->warning('warning: %s requires PEAR Installer' . $extra .\n                    ', installed version is ' . $pearversion);\n            }\n        }\n\n        if (isset($dep['exclude'])) {\n            if (!isset($dep['exclude'][0])) {\n                $dep['exclude'] = array($dep['exclude']);\n            }\n\n            foreach ($dep['exclude'] as $exclude) {\n                if (version_compare($exclude, $pearversion, '==')) {\n                    if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                        return $this->raiseError('%s is not compatible with PEAR Installer ' .\n                            'version ' . $exclude);\n                    }\n\n                    return $this->warning('warning: %s is not compatible with PEAR ' .\n                        'Installer version ' . $exclude);\n                }\n            }\n        }\n\n        return true;\n    }\n\n    function validateSubpackageDependency($dep, $required, $params)\n    {\n        return $this->validatePackageDependency($dep, $required, $params);\n    }\n\n    /**\n     * @param array dependency information (2.0 format)\n     * @param boolean whether this is a required dependency\n     * @param array a list of downloaded packages to be installed, if any\n     * @param boolean if true, then deps on pear.php.net that fail will also check\n     *                against pecl.php.net packages to accomodate extensions that have\n     *                moved to pecl.php.net from pear.php.net\n     */\n    function validatePackageDependency($dep, $required, $params, $depv1 = false)\n    {\n        if ($this->_state != PEAR_VALIDATE_INSTALLING &&\n              $this->_state != PEAR_VALIDATE_DOWNLOADING) {\n            return true;\n        }\n\n        if (isset($dep['providesextension'])) {\n            if ($this->extension_loaded($dep['providesextension'])) {\n                $save = $dep;\n                $subdep = $dep;\n                $subdep['name'] = $subdep['providesextension'];\n                PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n                $ret = $this->validateExtensionDependency($subdep, $required);\n                PEAR::popErrorHandling();\n                if (!PEAR::isError($ret)) {\n                    return true;\n                }\n            }\n        }\n\n        if ($this->_state == PEAR_VALIDATE_INSTALLING) {\n            return $this->_validatePackageInstall($dep, $required, $depv1);\n        }\n\n        if ($this->_state == PEAR_VALIDATE_DOWNLOADING) {\n            return $this->_validatePackageDownload($dep, $required, $params, $depv1);\n        }\n    }\n\n    function _validatePackageDownload($dep, $required, $params, $depv1 = false)\n    {\n        $dep['package'] = $dep['name'];\n        if (isset($dep['uri'])) {\n            $dep['channel'] = '__uri';\n        }\n\n        $depname = $this->_registry->parsedPackageNameToString($dep, true);\n        $found = false;\n        foreach ($params as $param) {\n            if ($param->isEqual(\n                  array('package' => $dep['name'],\n                        'channel' => $dep['channel']))) {\n                $found = true;\n                break;\n            }\n\n            if ($depv1 && $dep['channel'] == 'pear.php.net') {\n                if ($param->isEqual(\n                  array('package' => $dep['name'],\n                        'channel' => 'pecl.php.net'))) {\n                    $found = true;\n                    break;\n                }\n            }\n        }\n\n        if (!$found && isset($dep['providesextension'])) {\n            foreach ($params as $param) {\n                if ($param->isExtension($dep['providesextension'])) {\n                    $found = true;\n                    break;\n                }\n            }\n        }\n\n        if ($found) {\n            $version = $param->getVersion();\n            $installed = false;\n            $downloaded = true;\n        } else {\n            if ($this->_registry->packageExists($dep['name'], $dep['channel'])) {\n                $installed = true;\n                $downloaded = false;\n                $version = $this->_registry->packageinfo($dep['name'], 'version',\n                    $dep['channel']);\n            } else {\n                if ($dep['channel'] == 'pecl.php.net' && $this->_registry->packageExists($dep['name'],\n                      'pear.php.net')) {\n                    $installed = true;\n                    $downloaded = false;\n                    $version = $this->_registry->packageinfo($dep['name'], 'version',\n                        'pear.php.net');\n                } else {\n                    $version = 'not installed or downloaded';\n                    $installed = false;\n                    $downloaded = false;\n                }\n            }\n        }\n\n        $extra = $this->_getExtraString($dep);\n        if (isset($dep['exclude']) && !is_array($dep['exclude'])) {\n            $dep['exclude'] = array($dep['exclude']);\n        }\n\n        if (!isset($dep['min']) && !isset($dep['max']) &&\n              !isset($dep['recommended']) && !isset($dep['exclude'])\n        ) {\n            if ($installed || $downloaded) {\n                $installed = $installed ? 'installed' : 'downloaded';\n                if (isset($dep['conflicts'])) {\n                    $rest = '';\n                    if ($version) {\n                        $rest = \", $installed version is \" . $version;\n                    }\n\n                    if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                        return $this->raiseError('%s conflicts with package \"' . $depname . '\"' . $extra . $rest);\n                    }\n\n                    return $this->warning('warning: %s conflicts with package \"' . $depname . '\"' . $extra . $rest);\n                }\n\n                return true;\n            }\n\n            if (isset($dep['conflicts'])) {\n                return true;\n            }\n\n            if ($required) {\n                if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                    return $this->raiseError('%s requires package \"' . $depname . '\"' . $extra);\n                }\n\n                return $this->warning('warning: %s requires package \"' . $depname . '\"' . $extra);\n            }\n\n            return $this->warning('%s can optionally use package \"' . $depname . '\"' . $extra);\n        }\n\n        if (!$installed && !$downloaded) {\n            if (isset($dep['conflicts'])) {\n                return true;\n            }\n\n            if ($required) {\n                if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                    return $this->raiseError('%s requires package \"' . $depname . '\"' . $extra);\n                }\n\n                return $this->warning('warning: %s requires package \"' . $depname . '\"' . $extra);\n            }\n\n            return $this->warning('%s can optionally use package \"' . $depname . '\"' . $extra);\n        }\n\n        $fail = false;\n        if (isset($dep['min']) && version_compare($version, $dep['min'], '<')) {\n            $fail = true;\n        }\n\n        if (isset($dep['max']) && version_compare($version, $dep['max'], '>')) {\n            $fail = true;\n        }\n\n        if ($fail && !isset($dep['conflicts'])) {\n            $installed = $installed ? 'installed' : 'downloaded';\n            $dep['package'] = $dep['name'];\n            $dep = $this->_registry->parsedPackageNameToString($dep, true);\n            if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                return $this->raiseError('%s requires package \"' . $depname . '\"' .\n                    $extra . \", $installed version is \" . $version);\n            }\n\n            return $this->warning('warning: %s requires package \"' . $depname . '\"' .\n                $extra . \", $installed version is \" . $version);\n        } elseif ((isset($dep['min']) || isset($dep['max'])) && !$fail &&\n              isset($dep['conflicts']) && !isset($dep['exclude'])) {\n            $installed = $installed ? 'installed' : 'downloaded';\n            if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                return $this->raiseError('%s conflicts with package \"' . $depname . '\"' . $extra .\n                    \", $installed version is \" . $version);\n            }\n\n            return $this->warning('warning: %s conflicts with package \"' . $depname . '\"' .\n                $extra . \", $installed version is \" . $version);\n        }\n\n        if (isset($dep['exclude'])) {\n            $installed = $installed ? 'installed' : 'downloaded';\n            foreach ($dep['exclude'] as $exclude) {\n                if (version_compare($version, $exclude, '==') && !isset($dep['conflicts'])) {\n                    if (!isset($this->_options['nodeps']) &&\n                          !isset($this->_options['force'])\n                    ) {\n                        return $this->raiseError('%s is not compatible with ' .\n                            $installed . ' package \"' .\n                            $depname . '\" version ' .\n                            $exclude);\n                    }\n\n                    return $this->warning('warning: %s is not compatible with ' .\n                        $installed . ' package \"' .\n                        $depname . '\" version ' .\n                        $exclude);\n                } elseif (version_compare($version, $exclude, '!=') && isset($dep['conflicts'])) {\n                    $installed = $installed ? 'installed' : 'downloaded';\n                    if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                        return $this->raiseError('%s conflicts with package \"' . $depname . '\"' .\n                            $extra . \", $installed version is \" . $version);\n                    }\n\n                    return $this->warning('warning: %s conflicts with package \"' . $depname . '\"' .\n                        $extra . \", $installed version is \" . $version);\n                }\n            }\n        }\n\n        if (isset($dep['recommended'])) {\n            $installed = $installed ? 'installed' : 'downloaded';\n            if (version_compare($version, $dep['recommended'], '==')) {\n                return true;\n            }\n\n            if (!$found && $installed) {\n                $param = $this->_registry->getPackage($dep['name'], $dep['channel']);\n            }\n\n            if ($param) {\n                $found = false;\n                foreach ($params as $parent) {\n                    if ($parent->isEqual($this->_currentPackage)) {\n                        $found = true;\n                        break;\n                    }\n                }\n\n                if ($found) {\n                    if ($param->isCompatible($parent)) {\n                        return true;\n                    }\n                } else { // this is for validPackage() calls\n                    $parent = $this->_registry->getPackage($this->_currentPackage['package'],\n                        $this->_currentPackage['channel']);\n                    if ($parent !== null && $param->isCompatible($parent)) {\n                        return true;\n                    }\n                }\n            }\n\n            if (!isset($this->_options['nodeps']) && !isset($this->_options['force']) &&\n                  !isset($this->_options['loose'])\n            ) {\n                return $this->raiseError('%s dependency package \"' . $depname .\n                    '\" ' . $installed . ' version ' . $version .\n                    ' is not the recommended version ' . $dep['recommended'] .\n                    ', but may be compatible, use --force to install');\n            }\n\n            return $this->warning('warning: %s dependency package \"' . $depname .\n                '\" ' . $installed . ' version ' . $version .\n                ' is not the recommended version ' . $dep['recommended']);\n        }\n\n        return true;\n    }\n\n    function _validatePackageInstall($dep, $required, $depv1 = false)\n    {\n        return $this->_validatePackageDownload($dep, $required, array(), $depv1);\n    }\n\n    /**\n     * Verify that uninstalling packages passed in to command line is OK.\n     *\n     * @param PEAR_Installer $dl\n     * @return PEAR_Error|true\n     */\n    function validatePackageUninstall(&$dl)\n    {\n        if (PEAR::isError($this->_dependencydb)) {\n            return $this->_dependencydb;\n        }\n\n        $params = array();\n        // construct an array of \"downloaded\" packages to fool the package dependency checker\n        // into using these to validate uninstalls of circular dependencies\n        $downloaded = &$dl->getUninstallPackages();\n        foreach ($downloaded as $i => $pf) {\n            if (!class_exists('PEAR_Downloader_Package')) {\n                require_once 'PEAR/Downloader/Package.php';\n            }\n            $dp = &new PEAR_Downloader_Package($dl);\n            $dp->setPackageFile($downloaded[$i]);\n            $params[$i] = &$dp;\n        }\n\n        // check cache\n        $memyselfandI = strtolower($this->_currentPackage['channel']) . '/' .\n            strtolower($this->_currentPackage['package']);\n        if (isset($dl->___uninstall_package_cache)) {\n            $badpackages = $dl->___uninstall_package_cache;\n            if (isset($badpackages[$memyselfandI]['warnings'])) {\n                foreach ($badpackages[$memyselfandI]['warnings'] as $warning) {\n                    $dl->log(0, $warning[0]);\n                }\n            }\n\n            if (isset($badpackages[$memyselfandI]['errors'])) {\n                foreach ($badpackages[$memyselfandI]['errors'] as $error) {\n                    if (is_array($error)) {\n                        $dl->log(0, $error[0]);\n                    } else {\n                        $dl->log(0, $error->getMessage());\n                    }\n                }\n\n                if (isset($this->_options['nodeps']) || isset($this->_options['force'])) {\n                    return $this->warning(\n                        'warning: %s should not be uninstalled, other installed packages depend ' .\n                        'on this package');\n                }\n\n                return $this->raiseError(\n                    '%s cannot be uninstalled, other installed packages depend on this package');\n            }\n\n            return true;\n        }\n\n        // first, list the immediate parents of each package to be uninstalled\n        $perpackagelist = array();\n        $allparents = array();\n        foreach ($params as $i => $param) {\n            $a = array(\n                'channel' => strtolower($param->getChannel()),\n                'package' => strtolower($param->getPackage())\n            );\n\n            $deps = $this->_dependencydb->getDependentPackages($a);\n            if ($deps) {\n                foreach ($deps as $d) {\n                    $pardeps = $this->_dependencydb->getDependencies($d);\n                    foreach ($pardeps as $dep) {\n                        if (strtolower($dep['dep']['channel']) == $a['channel'] &&\n                              strtolower($dep['dep']['name']) == $a['package']) {\n                            if (!isset($perpackagelist[$a['channel'] . '/' . $a['package']])) {\n                                $perpackagelist[$a['channel'] . '/' . $a['package']] = array();\n                            }\n                            $perpackagelist[$a['channel'] . '/' . $a['package']][]\n                                = array($d['channel'] . '/' . $d['package'], $dep);\n                            if (!isset($allparents[$d['channel'] . '/' . $d['package']])) {\n                                $allparents[$d['channel'] . '/' . $d['package']] = array();\n                            }\n                            if (!isset($allparents[$d['channel'] . '/' . $d['package']][$a['channel'] . '/' . $a['package']])) {\n                                $allparents[$d['channel'] . '/' . $d['package']][$a['channel'] . '/' . $a['package']] = array();\n                            }\n                            $allparents[$d['channel'] . '/' . $d['package']]\n                                       [$a['channel'] . '/' . $a['package']][]\n                                = array($d, $dep);\n                        }\n                    }\n                }\n            }\n        }\n\n        // next, remove any packages from the parents list that are not installed\n        $remove = array();\n        foreach ($allparents as $parent => $d1) {\n            foreach ($d1 as $d) {\n                if ($this->_registry->packageExists($d[0][0]['package'], $d[0][0]['channel'])) {\n                    continue;\n                }\n                $remove[$parent] = true;\n            }\n        }\n\n        // next remove any packages from the parents list that are not passed in for\n        // uninstallation\n        foreach ($allparents as $parent => $d1) {\n            foreach ($d1 as $d) {\n                foreach ($params as $param) {\n                    if (strtolower($param->getChannel()) == $d[0][0]['channel'] &&\n                          strtolower($param->getPackage()) == $d[0][0]['package']) {\n                        // found it\n                        continue 3;\n                    }\n                }\n                $remove[$parent] = true;\n            }\n        }\n\n        // remove all packages whose dependencies fail\n        // save which ones failed for error reporting\n        $badchildren = array();\n        do {\n            $fail = false;\n            foreach ($remove as $package => $unused) {\n                if (!isset($allparents[$package])) {\n                    continue;\n                }\n\n                foreach ($allparents[$package] as $kid => $d1) {\n                    foreach ($d1 as $depinfo) {\n                        if ($depinfo[1]['type'] != 'optional') {\n                            if (isset($badchildren[$kid])) {\n                                continue;\n                            }\n                            $badchildren[$kid] = true;\n                            $remove[$kid] = true;\n                            $fail = true;\n                            continue 2;\n                        }\n                    }\n                }\n                if ($fail) {\n                    // start over, we removed some children\n                    continue 2;\n                }\n            }\n        } while ($fail);\n\n        // next, construct the list of packages that can't be uninstalled\n        $badpackages = array();\n        $save = $this->_currentPackage;\n        foreach ($perpackagelist as $package => $packagedeps) {\n            foreach ($packagedeps as $parent) {\n                if (!isset($remove[$parent[0]])) {\n                    continue;\n                }\n\n                $packagename = $this->_registry->parsePackageName($parent[0]);\n                $packagename['channel'] = $this->_registry->channelAlias($packagename['channel']);\n                $pa = $this->_registry->getPackage($packagename['package'], $packagename['channel']);\n                $packagename['package'] = $pa->getPackage();\n                $this->_currentPackage = $packagename;\n                // parent is not present in uninstall list, make sure we can actually\n                // uninstall it (parent dep is optional)\n                $parentname['channel'] = $this->_registry->channelAlias($parent[1]['dep']['channel']);\n                $pa = $this->_registry->getPackage($parent[1]['dep']['name'], $parent[1]['dep']['channel']);\n                $parentname['package'] = $pa->getPackage();\n                $parent[1]['dep']['package'] = $parentname['package'];\n                $parent[1]['dep']['channel'] = $parentname['channel'];\n                if ($parent[1]['type'] == 'optional') {\n                    $test = $this->_validatePackageUninstall($parent[1]['dep'], false, $dl);\n                    if ($test !== true) {\n                        $badpackages[$package]['warnings'][] = $test;\n                    }\n                } else {\n                    $test = $this->_validatePackageUninstall($parent[1]['dep'], true, $dl);\n                    if ($test !== true) {\n                        $badpackages[$package]['errors'][] = $test;\n                    }\n                }\n            }\n        }\n\n        $this->_currentPackage          = $save;\n        $dl->___uninstall_package_cache = $badpackages;\n        if (isset($badpackages[$memyselfandI])) {\n            if (isset($badpackages[$memyselfandI]['warnings'])) {\n                foreach ($badpackages[$memyselfandI]['warnings'] as $warning) {\n                    $dl->log(0, $warning[0]);\n                }\n            }\n\n            if (isset($badpackages[$memyselfandI]['errors'])) {\n                foreach ($badpackages[$memyselfandI]['errors'] as $error) {\n                    if (is_array($error)) {\n                        $dl->log(0, $error[0]);\n                    } else {\n                        $dl->log(0, $error->getMessage());\n                    }\n                }\n\n                if (isset($this->_options['nodeps']) || isset($this->_options['force'])) {\n                    return $this->warning(\n                        'warning: %s should not be uninstalled, other installed packages depend ' .\n                        'on this package');\n                }\n\n                return $this->raiseError(\n                    '%s cannot be uninstalled, other installed packages depend on this package');\n            }\n        }\n\n        return true;\n    }\n\n    function _validatePackageUninstall($dep, $required, $dl)\n    {\n        $depname = $this->_registry->parsedPackageNameToString($dep, true);\n        $version = $this->_registry->packageinfo($dep['package'], 'version', $dep['channel']);\n        if (!$version) {\n            return true;\n        }\n\n        $extra = $this->_getExtraString($dep);\n        if (isset($dep['exclude']) && !is_array($dep['exclude'])) {\n            $dep['exclude'] = array($dep['exclude']);\n        }\n\n        if (isset($dep['conflicts'])) {\n            return true; // uninstall OK - these packages conflict (probably installed with --force)\n        }\n\n        if (!isset($dep['min']) && !isset($dep['max'])) {\n            if (!$required) {\n                return $this->warning('\"' . $depname . '\" can be optionally used by ' .\n                        'installed package %s' . $extra);\n            }\n\n            if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n                return $this->raiseError('\"' . $depname . '\" is required by ' .\n                    'installed package %s' . $extra);\n            }\n\n            return $this->warning('warning: \"' . $depname . '\" is required by ' .\n                'installed package %s' . $extra);\n        }\n\n        $fail = false;\n        if (isset($dep['min']) && version_compare($version, $dep['min'], '>=')) {\n            $fail = true;\n        }\n\n        if (isset($dep['max']) && version_compare($version, $dep['max'], '<=')) {\n            $fail = true;\n        }\n\n        // we re-use this variable, preserve the original value\n        $saverequired = $required;\n        if (!$required) {\n            return $this->warning($depname . $extra . ' can be optionally used by installed package' .\n                    ' \"%s\"');\n        }\n\n        if (!isset($this->_options['nodeps']) && !isset($this->_options['force'])) {\n            return $this->raiseError($depname . $extra . ' is required by installed package' .\n                ' \"%s\"');\n        }\n\n        return $this->raiseError('warning: ' . $depname . $extra .\n            ' is required by installed package \"%s\"');\n    }\n\n    /**\n     * validate a downloaded package against installed packages\n     *\n     * As of PEAR 1.4.3, this will only validate\n     *\n     * @param array|PEAR_Downloader_Package|PEAR_PackageFile_v1|PEAR_PackageFile_v2\n     *              $pkg package identifier (either\n     *                   array('package' => blah, 'channel' => blah) or an array with\n     *                   index 'info' referencing an object)\n     * @param PEAR_Downloader $dl\n     * @param array $params full list of packages to install\n     * @return true|PEAR_Error\n     */\n    function validatePackage($pkg, &$dl, $params = array())\n    {\n        if (is_array($pkg) && isset($pkg['info'])) {\n            $deps = $this->_dependencydb->getDependentPackageDependencies($pkg['info']);\n        } else {\n            $deps = $this->_dependencydb->getDependentPackageDependencies($pkg);\n        }\n\n        $fail = false;\n        if ($deps) {\n            if (!class_exists('PEAR_Downloader_Package')) {\n                require_once 'PEAR/Downloader/Package.php';\n            }\n\n            $dp = &new PEAR_Downloader_Package($dl);\n            if (is_object($pkg)) {\n                $dp->setPackageFile($pkg);\n            } else {\n                $dp->setDownloadURL($pkg);\n            }\n\n            PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n            foreach ($deps as $channel => $info) {\n                foreach ($info as $package => $ds) {\n                    foreach ($params as $packd) {\n                        if (strtolower($packd->getPackage()) == strtolower($package) &&\n                              $packd->getChannel() == $channel) {\n                            $dl->log(3, 'skipping installed package check of \"' .\n                                        $this->_registry->parsedPackageNameToString(\n                                            array('channel' => $channel, 'package' => $package),\n                                            true) .\n                                        '\", version \"' . $packd->getVersion() . '\" will be ' .\n                                        'downloaded and installed');\n                            continue 2; // jump to next package\n                        }\n                    }\n\n                    foreach ($ds as $d) {\n                        $checker = &new PEAR_Dependency2($this->_config, $this->_options,\n                            array('channel' => $channel, 'package' => $package), $this->_state);\n                        $dep = $d['dep'];\n                        $required = $d['type'] == 'required';\n                        $ret = $checker->_validatePackageDownload($dep, $required, array(&$dp));\n                        if (is_array($ret)) {\n                            $dl->log(0, $ret[0]);\n                        } elseif (PEAR::isError($ret)) {\n                            $dl->log(0, $ret->getMessage());\n                            $fail = true;\n                        }\n                    }\n                }\n            }\n            PEAR::popErrorHandling();\n        }\n\n        if ($fail) {\n            return $this->raiseError(\n                '%s cannot be installed, conflicts with installed packages');\n        }\n\n        return true;\n    }\n\n    /**\n     * validate a package.xml 1.0 dependency\n     */\n    function validateDependency1($dep, $params = array())\n    {\n        if (!isset($dep['optional'])) {\n            $dep['optional'] = 'no';\n        }\n\n        list($newdep, $type) = $this->normalizeDep($dep);\n        if (!$newdep) {\n            return $this->raiseError(\"Invalid Dependency\");\n        }\n\n        if (method_exists($this, \"validate{$type}Dependency\")) {\n            return $this->{\"validate{$type}Dependency\"}($newdep, $dep['optional'] == 'no',\n                $params, true);\n        }\n    }\n\n    /**\n     * Convert a 1.0 dep into a 2.0 dep\n     */\n    function normalizeDep($dep)\n    {\n        $types = array(\n            'pkg' => 'Package',\n            'ext' => 'Extension',\n            'os' => 'Os',\n            'php' => 'Php'\n        );\n\n        if (!isset($types[$dep['type']])) {\n            return array(false, false);\n        }\n\n        $type = $types[$dep['type']];\n\n        $newdep = array();\n        switch ($type) {\n            case 'Package' :\n                $newdep['channel'] = 'pear.php.net';\n            case 'Extension' :\n            case 'Os' :\n                $newdep['name'] = $dep['name'];\n            break;\n        }\n\n        $dep['rel'] = PEAR_Dependency2::signOperator($dep['rel']);\n        switch ($dep['rel']) {\n            case 'has' :\n                return array($newdep, $type);\n            break;\n            case 'not' :\n                $newdep['conflicts'] = true;\n            break;\n            case '>=' :\n            case '>' :\n                $newdep['min'] = $dep['version'];\n                if ($dep['rel'] == '>') {\n                    $newdep['exclude'] = $dep['version'];\n                }\n            break;\n            case '<=' :\n            case '<' :\n                $newdep['max'] = $dep['version'];\n                if ($dep['rel'] == '<') {\n                    $newdep['exclude'] = $dep['version'];\n                }\n            break;\n            case 'ne' :\n            case '!=' :\n                $newdep['min'] = '0';\n                $newdep['max'] = '100000';\n                $newdep['exclude'] = $dep['version'];\n            break;\n            case '==' :\n                $newdep['min'] = $dep['version'];\n                $newdep['max'] = $dep['version'];\n            break;\n        }\n        if ($type == 'Php') {\n            if (!isset($newdep['min'])) {\n                $newdep['min'] = '4.4.0';\n            }\n\n            if (!isset($newdep['max'])) {\n                $newdep['max'] = '6.0.0';\n            }\n        }\n        return array($newdep, $type);\n    }\n\n    /**\n     * Converts text comparing operators to them sign equivalents\n     *\n     * Example: 'ge' to '>='\n     *\n     * @access public\n     * @param  string Operator\n     * @return string Sign equivalent\n     */\n    function signOperator($operator)\n    {\n        switch($operator) {\n            case 'lt': return '<';\n            case 'le': return '<=';\n            case 'gt': return '>';\n            case 'ge': return '>=';\n            case 'eq': return '==';\n            case 'ne': return '!=';\n            default:\n                return $operator;\n        }\n    }\n\n    function raiseError($msg)\n    {\n        if (isset($this->_options['ignore-errors'])) {\n            return $this->warning($msg);\n        }\n\n        return PEAR::raiseError(sprintf($msg, $this->_registry->parsedPackageNameToString(\n            $this->_currentPackage, true)));\n    }\n\n    function warning($msg)\n    {\n        return array(sprintf($msg, $this->_registry->parsedPackageNameToString(\n            $this->_currentPackage, true)));\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/DependencyDB.php",
    "content": "<?php\n/**\n * PEAR_DependencyDB, advanced installed packages dependency database\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Tomas V. V. Cox <cox@idecnet.com>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: DependencyDB.php 286686 2009-08-02 17:38:57Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n\n/**\n * Needed for error handling\n */\nrequire_once 'PEAR.php';\nrequire_once 'PEAR/Config.php';\n\n$GLOBALS['_PEAR_DEPENDENCYDB_INSTANCE'] = array();\n/**\n * Track dependency relationships between installed packages\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @author     Tomas V.V.Cox <cox@idec.net.com>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_DependencyDB\n{\n    // {{{ properties\n\n    /**\n     * This is initialized by {@link setConfig()}\n     * @var PEAR_Config\n     * @access private\n     */\n    var $_config;\n    /**\n     * This is initialized by {@link setConfig()}\n     * @var PEAR_Registry\n     * @access private\n     */\n    var $_registry;\n    /**\n     * Filename of the dependency DB (usually .depdb)\n     * @var string\n     * @access private\n     */\n    var $_depdb = false;\n    /**\n     * File name of the lockfile (usually .depdblock)\n     * @var string\n     * @access private\n     */\n    var $_lockfile = false;\n    /**\n     * Open file resource for locking the lockfile\n     * @var resource|false\n     * @access private\n     */\n    var $_lockFp = false;\n    /**\n     * API version of this class, used to validate a file on-disk\n     * @var string\n     * @access private\n     */\n    var $_version = '1.0';\n    /**\n     * Cached dependency database file\n     * @var array|null\n     * @access private\n     */\n    var $_cache;\n\n    // }}}\n    // {{{ & singleton()\n\n    /**\n     * Get a raw dependency database.  Calls setConfig() and assertDepsDB()\n     * @param PEAR_Config\n     * @param string|false full path to the dependency database, or false to use default\n     * @return PEAR_DependencyDB|PEAR_Error\n     * @static\n     */\n    function &singleton(&$config, $depdb = false)\n    {\n        $phpdir = $config->get('php_dir', null, 'pear.php.net');\n        if (!isset($GLOBALS['_PEAR_DEPENDENCYDB_INSTANCE'][$phpdir])) {\n            $a = new PEAR_DependencyDB;\n            $GLOBALS['_PEAR_DEPENDENCYDB_INSTANCE'][$phpdir] = &$a;\n            $a->setConfig($config, $depdb);\n            $e = $a->assertDepsDB();\n            if (PEAR::isError($e)) {\n                return $e;\n            }\n        }\n\n        return $GLOBALS['_PEAR_DEPENDENCYDB_INSTANCE'][$phpdir];\n    }\n\n    /**\n     * Set up the registry/location of dependency DB\n     * @param PEAR_Config|false\n     * @param string|false full path to the dependency database, or false to use default\n     */\n    function setConfig(&$config, $depdb = false)\n    {\n        if (!$config) {\n            $this->_config = &PEAR_Config::singleton();\n        } else {\n            $this->_config = &$config;\n        }\n\n        $this->_registry = &$this->_config->getRegistry();\n        if (!$depdb) {\n            $this->_depdb = $this->_config->get('php_dir', null, 'pear.php.net') .\n                DIRECTORY_SEPARATOR . '.depdb';\n        } else {\n            $this->_depdb = $depdb;\n        }\n\n        $this->_lockfile = dirname($this->_depdb) . DIRECTORY_SEPARATOR . '.depdblock';\n    }\n    // }}}\n\n    function hasWriteAccess()\n    {\n        if (!file_exists($this->_depdb)) {\n            $dir = $this->_depdb;\n            while ($dir && $dir != '.') {\n                $dir = dirname($dir); // cd ..\n                if ($dir != '.' && file_exists($dir)) {\n                    if (is_writeable($dir)) {\n                        return true;\n                    }\n\n                    return false;\n                }\n            }\n\n            return false;\n        }\n\n        return is_writeable($this->_depdb);\n    }\n\n    // {{{ assertDepsDB()\n\n    /**\n     * Create the dependency database, if it doesn't exist.  Error if the database is\n     * newer than the code reading it.\n     * @return void|PEAR_Error\n     */\n    function assertDepsDB()\n    {\n        if (!is_file($this->_depdb)) {\n            $this->rebuildDB();\n            return;\n        }\n\n        $depdb = $this->_getDepDB();\n        // Datatype format has been changed, rebuild the Deps DB\n        if ($depdb['_version'] < $this->_version) {\n            $this->rebuildDB();\n        }\n\n        if ($depdb['_version']{0} > $this->_version{0}) {\n            return PEAR::raiseError('Dependency database is version ' .\n                $depdb['_version'] . ', and we are version ' .\n                $this->_version . ', cannot continue');\n        }\n    }\n\n    /**\n     * Get a list of installed packages that depend on this package\n     * @param PEAR_PackageFile_v1|PEAR_PackageFile_v2|array\n     * @return array|false\n     */\n    function getDependentPackages(&$pkg)\n    {\n        $data = $this->_getDepDB();\n        if (is_object($pkg)) {\n            $channel = strtolower($pkg->getChannel());\n            $package = strtolower($pkg->getPackage());\n        } else {\n            $channel = strtolower($pkg['channel']);\n            $package = strtolower($pkg['package']);\n        }\n\n        if (isset($data['packages'][$channel][$package])) {\n            return $data['packages'][$channel][$package];\n        }\n\n        return false;\n    }\n\n    /**\n     * Get a list of the actual dependencies of installed packages that depend on\n     * a package.\n     * @param PEAR_PackageFile_v1|PEAR_PackageFile_v2|array\n     * @return array|false\n     */\n    function getDependentPackageDependencies(&$pkg)\n    {\n        $data = $this->_getDepDB();\n        if (is_object($pkg)) {\n            $channel = strtolower($pkg->getChannel());\n            $package = strtolower($pkg->getPackage());\n        } else {\n            $channel = strtolower($pkg['channel']);\n            $package = strtolower($pkg['package']);\n        }\n\n        $depend = $this->getDependentPackages($pkg);\n        if (!$depend) {\n            return false;\n        }\n\n        $dependencies = array();\n        foreach ($depend as $info) {\n            $temp = $this->getDependencies($info);\n            foreach ($temp as $dep) {\n                if (\n                    isset($dep['dep'], $dep['dep']['channel'], $dep['dep']['name']) &&\n                    strtolower($dep['dep']['channel']) == $channel &&\n                    strtolower($dep['dep']['name']) == $package\n                ) {\n                    if (!isset($dependencies[$info['channel']])) {\n                        $dependencies[$info['channel']] = array();\n                    }\n\n                    if (!isset($dependencies[$info['channel']][$info['package']])) {\n                        $dependencies[$info['channel']][$info['package']] = array();\n                    }\n                    $dependencies[$info['channel']][$info['package']][] = $dep;\n                }\n            }\n        }\n\n        return $dependencies;\n    }\n\n    /**\n     * Get a list of dependencies of this installed package\n     * @param PEAR_PackageFile_v1|PEAR_PackageFile_v2|array\n     * @return array|false\n     */\n    function getDependencies(&$pkg)\n    {\n        if (is_object($pkg)) {\n            $channel = strtolower($pkg->getChannel());\n            $package = strtolower($pkg->getPackage());\n        } else {\n            $channel = strtolower($pkg['channel']);\n            $package = strtolower($pkg['package']);\n        }\n\n        $data = $this->_getDepDB();\n        if (isset($data['dependencies'][$channel][$package])) {\n            return $data['dependencies'][$channel][$package];\n        }\n\n        return false;\n    }\n\n    /**\n     * Determine whether $parent depends on $child, near or deep\n     * @param array|PEAR_PackageFile_v2|PEAR_PackageFile_v2\n     * @param array|PEAR_PackageFile_v2|PEAR_PackageFile_v2\n     */\n    function dependsOn($parent, $child)\n    {\n        $c = array();\n        $this->_getDepDB();\n        return $this->_dependsOn($parent, $child, $c);\n    }\n\n    function _dependsOn($parent, $child, &$checked)\n    {\n        if (is_object($parent)) {\n            $channel = strtolower($parent->getChannel());\n            $package = strtolower($parent->getPackage());\n        } else {\n            $channel = strtolower($parent['channel']);\n            $package = strtolower($parent['package']);\n        }\n\n        if (is_object($child)) {\n            $depchannel = strtolower($child->getChannel());\n            $deppackage = strtolower($child->getPackage());\n        } else {\n            $depchannel = strtolower($child['channel']);\n            $deppackage = strtolower($child['package']);\n        }\n\n        if (isset($checked[$channel][$package][$depchannel][$deppackage])) {\n            return false; // avoid endless recursion\n        }\n\n        $checked[$channel][$package][$depchannel][$deppackage] = true;\n        if (!isset($this->_cache['dependencies'][$channel][$package])) {\n            return false;\n        }\n\n        foreach ($this->_cache['dependencies'][$channel][$package] as $info) {\n            if (isset($info['dep']['uri'])) {\n                if (is_object($child)) {\n                    if ($info['dep']['uri'] == $child->getURI()) {\n                        return true;\n                    }\n                } elseif (isset($child['uri'])) {\n                    if ($info['dep']['uri'] == $child['uri']) {\n                        return true;\n                    }\n                }\n                return false;\n            }\n\n            if (strtolower($info['dep']['channel']) == $depchannel &&\n                  strtolower($info['dep']['name']) == $deppackage) {\n                return true;\n            }\n        }\n\n        foreach ($this->_cache['dependencies'][$channel][$package] as $info) {\n            if (isset($info['dep']['uri'])) {\n                if ($this->_dependsOn(array(\n                        'uri' => $info['dep']['uri'],\n                        'package' => $info['dep']['name']), $child, $checked)) {\n                    return true;\n                }\n            } else {\n                if ($this->_dependsOn(array(\n                        'channel' => $info['dep']['channel'],\n                        'package' => $info['dep']['name']), $child, $checked)) {\n                    return true;\n                }\n            }\n        }\n\n        return false;\n    }\n\n    /**\n     * Register dependencies of a package that is being installed or upgraded\n     * @param PEAR_PackageFile_v2|PEAR_PackageFile_v2\n     */\n    function installPackage(&$package)\n    {\n        $data = $this->_getDepDB();\n        unset($this->_cache);\n        $this->_setPackageDeps($data, $package);\n        $this->_writeDepDB($data);\n    }\n\n    /**\n     * Remove dependencies of a package that is being uninstalled, or upgraded.\n     *\n     * Upgraded packages first uninstall, then install\n     * @param PEAR_PackageFile_v1|PEAR_PackageFile_v2|array If an array, then it must have\n     *        indices 'channel' and 'package'\n     */\n    function uninstallPackage(&$pkg)\n    {\n        $data = $this->_getDepDB();\n        unset($this->_cache);\n        if (is_object($pkg)) {\n            $channel = strtolower($pkg->getChannel());\n            $package = strtolower($pkg->getPackage());\n        } else {\n            $channel = strtolower($pkg['channel']);\n            $package = strtolower($pkg['package']);\n        }\n\n        if (!isset($data['dependencies'][$channel][$package])) {\n            return true;\n        }\n\n        foreach ($data['dependencies'][$channel][$package] as $dep) {\n            $found      = false;\n            $depchannel = isset($dep['dep']['uri']) ? '__uri' : strtolower($dep['dep']['channel']);\n            $depname    = strtolower($dep['dep']['name']);\n            if (isset($data['packages'][$depchannel][$depname])) {\n                foreach ($data['packages'][$depchannel][$depname] as $i => $info) {\n                    if ($info['channel'] == $channel && $info['package'] == $package) {\n                        $found = true;\n                        break;\n                    }\n                }\n            }\n\n            if ($found) {\n                unset($data['packages'][$depchannel][$depname][$i]);\n                if (!count($data['packages'][$depchannel][$depname])) {\n                    unset($data['packages'][$depchannel][$depname]);\n                    if (!count($data['packages'][$depchannel])) {\n                        unset($data['packages'][$depchannel]);\n                    }\n                } else {\n                    $data['packages'][$depchannel][$depname] =\n                        array_values($data['packages'][$depchannel][$depname]);\n                }\n            }\n        }\n\n        unset($data['dependencies'][$channel][$package]);\n        if (!count($data['dependencies'][$channel])) {\n            unset($data['dependencies'][$channel]);\n        }\n\n        if (!count($data['dependencies'])) {\n            unset($data['dependencies']);\n        }\n\n        if (!count($data['packages'])) {\n            unset($data['packages']);\n        }\n\n        $this->_writeDepDB($data);\n    }\n\n    /**\n     * Rebuild the dependency DB by reading registry entries.\n     * @return true|PEAR_Error\n     */\n    function rebuildDB()\n    {\n        $depdb = array('_version' => $this->_version);\n        if (!$this->hasWriteAccess()) {\n            // allow startup for read-only with older Registry\n            return $depdb;\n        }\n\n        $packages = $this->_registry->listAllPackages();\n        if (PEAR::isError($packages)) {\n            return $packages;\n        }\n\n        foreach ($packages as $channel => $ps) {\n            foreach ($ps as $package) {\n                $package = $this->_registry->getPackage($package, $channel);\n                if (PEAR::isError($package)) {\n                    return $package;\n                }\n                $this->_setPackageDeps($depdb, $package);\n            }\n        }\n\n        $error = $this->_writeDepDB($depdb);\n        if (PEAR::isError($error)) {\n            return $error;\n        }\n\n        $this->_cache = $depdb;\n        return true;\n    }\n\n    /**\n     * Register usage of the dependency DB to prevent race conditions\n     * @param int one of the LOCK_* constants\n     * @return true|PEAR_Error\n     * @access private\n     */\n    function _lock($mode = LOCK_EX)\n    {\n        if (stristr(php_uname(), 'Windows 9')) {\n            return true;\n        }\n\n        if ($mode != LOCK_UN && is_resource($this->_lockFp)) {\n            // XXX does not check type of lock (LOCK_SH/LOCK_EX)\n            return true;\n        }\n\n        $open_mode = 'w';\n        // XXX People reported problems with LOCK_SH and 'w'\n        if ($mode === LOCK_SH) {\n            if (!file_exists($this->_lockfile)) {\n                touch($this->_lockfile);\n            } elseif (!is_file($this->_lockfile)) {\n                return PEAR::raiseError('could not create Dependency lock file, ' .\n                    'it exists and is not a regular file');\n            }\n            $open_mode = 'r';\n        }\n\n        if (!is_resource($this->_lockFp)) {\n            $this->_lockFp = @fopen($this->_lockfile, $open_mode);\n        }\n\n        if (!is_resource($this->_lockFp)) {\n            return PEAR::raiseError(\"could not create Dependency lock file\" .\n                                     (isset($php_errormsg) ? \": \" . $php_errormsg : \"\"));\n        }\n\n        if (!(int)flock($this->_lockFp, $mode)) {\n            switch ($mode) {\n                case LOCK_SH: $str = 'shared';    break;\n                case LOCK_EX: $str = 'exclusive'; break;\n                case LOCK_UN: $str = 'unlock';    break;\n                default:      $str = 'unknown';   break;\n            }\n\n            return PEAR::raiseError(\"could not acquire $str lock ($this->_lockfile)\");\n        }\n\n        return true;\n    }\n\n    /**\n     * Release usage of dependency DB\n     * @return true|PEAR_Error\n     * @access private\n     */\n    function _unlock()\n    {\n        $ret = $this->_lock(LOCK_UN);\n        if (is_resource($this->_lockFp)) {\n            fclose($this->_lockFp);\n        }\n        $this->_lockFp = null;\n        return $ret;\n    }\n\n    /**\n     * Load the dependency database from disk, or return the cache\n     * @return array|PEAR_Error\n     */\n    function _getDepDB()\n    {\n        if (!$this->hasWriteAccess()) {\n            return array('_version' => $this->_version);\n        }\n\n        if (isset($this->_cache)) {\n            return $this->_cache;\n        }\n\n        if (!$fp = fopen($this->_depdb, 'r')) {\n            $err = PEAR::raiseError(\"Could not open dependencies file `\".$this->_depdb.\"'\");\n            return $err;\n        }\n\n        $rt = get_magic_quotes_runtime();\n        set_magic_quotes_runtime(0);\n        clearstatcache();\n        fclose($fp);\n        $data = unserialize(file_get_contents($this->_depdb));\n        set_magic_quotes_runtime($rt);\n        $this->_cache = $data;\n        return $data;\n    }\n\n    /**\n     * Write out the dependency database to disk\n     * @param array the database\n     * @return true|PEAR_Error\n     * @access private\n     */\n    function _writeDepDB(&$deps)\n    {\n        if (PEAR::isError($e = $this->_lock(LOCK_EX))) {\n            return $e;\n        }\n\n        if (!$fp = fopen($this->_depdb, 'wb')) {\n            $this->_unlock();\n            return PEAR::raiseError(\"Could not open dependencies file `\".$this->_depdb.\"' for writing\");\n        }\n\n        $rt = get_magic_quotes_runtime();\n        set_magic_quotes_runtime(0);\n        fwrite($fp, serialize($deps));\n        set_magic_quotes_runtime($rt);\n        fclose($fp);\n        $this->_unlock();\n        $this->_cache = $deps;\n        return true;\n    }\n\n    /**\n     * Register all dependencies from a package in the dependencies database, in essence\n     * \"installing\" the package's dependency information\n     * @param array the database\n     * @param PEAR_PackageFile_v1|PEAR_PackageFile_v2\n     * @access private\n     */\n    function _setPackageDeps(&$data, &$pkg)\n    {\n        $pkg->setConfig($this->_config);\n        if ($pkg->getPackagexmlVersion() == '1.0') {\n            $gen = &$pkg->getDefaultGenerator();\n            $deps = $gen->dependenciesToV2();\n        } else {\n            $deps = $pkg->getDeps(true);\n        }\n\n        if (!$deps) {\n            return;\n        }\n\n        if (!is_array($data)) {\n            $data = array();\n        }\n\n        if (!isset($data['dependencies'])) {\n            $data['dependencies'] = array();\n        }\n\n        $channel = strtolower($pkg->getChannel());\n        $package = strtolower($pkg->getPackage());\n\n        if (!isset($data['dependencies'][$channel])) {\n            $data['dependencies'][$channel] = array();\n        }\n\n        $data['dependencies'][$channel][$package] = array();\n        if (isset($deps['required']['package'])) {\n            if (!isset($deps['required']['package'][0])) {\n                $deps['required']['package'] = array($deps['required']['package']);\n            }\n\n            foreach ($deps['required']['package'] as $dep) {\n                $this->_registerDep($data, $pkg, $dep, 'required');\n            }\n        }\n\n        if (isset($deps['optional']['package'])) {\n            if (!isset($deps['optional']['package'][0])) {\n                $deps['optional']['package'] = array($deps['optional']['package']);\n            }\n\n            foreach ($deps['optional']['package'] as $dep) {\n                $this->_registerDep($data, $pkg, $dep, 'optional');\n            }\n        }\n\n        if (isset($deps['required']['subpackage'])) {\n            if (!isset($deps['required']['subpackage'][0])) {\n                $deps['required']['subpackage'] = array($deps['required']['subpackage']);\n            }\n\n            foreach ($deps['required']['subpackage'] as $dep) {\n                $this->_registerDep($data, $pkg, $dep, 'required');\n            }\n        }\n\n        if (isset($deps['optional']['subpackage'])) {\n            if (!isset($deps['optional']['subpackage'][0])) {\n                $deps['optional']['subpackage'] = array($deps['optional']['subpackage']);\n            }\n\n            foreach ($deps['optional']['subpackage'] as $dep) {\n                $this->_registerDep($data, $pkg, $dep, 'optional');\n            }\n        }\n\n        if (isset($deps['group'])) {\n            if (!isset($deps['group'][0])) {\n                $deps['group'] = array($deps['group']);\n            }\n\n            foreach ($deps['group'] as $group) {\n                if (isset($group['package'])) {\n                    if (!isset($group['package'][0])) {\n                        $group['package'] = array($group['package']);\n                    }\n\n                    foreach ($group['package'] as $dep) {\n                        $this->_registerDep($data, $pkg, $dep, 'optional',\n                            $group['attribs']['name']);\n                    }\n                }\n\n                if (isset($group['subpackage'])) {\n                    if (!isset($group['subpackage'][0])) {\n                        $group['subpackage'] = array($group['subpackage']);\n                    }\n\n                    foreach ($group['subpackage'] as $dep) {\n                        $this->_registerDep($data, $pkg, $dep, 'optional',\n                            $group['attribs']['name']);\n                    }\n                }\n            }\n        }\n\n        if ($data['dependencies'][$channel][$package] == array()) {\n            unset($data['dependencies'][$channel][$package]);\n            if (!count($data['dependencies'][$channel])) {\n                unset($data['dependencies'][$channel]);\n            }\n        }\n    }\n\n    /**\n     * @param array the database\n     * @param PEAR_PackageFile_v1|PEAR_PackageFile_v2\n     * @param array the specific dependency\n     * @param required|optional whether this is a required or an optional dep\n     * @param string|false dependency group this dependency is from, or false for ordinary dep\n     */\n    function _registerDep(&$data, &$pkg, $dep, $type, $group = false)\n    {\n        $info = array(\n            'dep'   => $dep,\n            'type'  => $type,\n            'group' => $group\n        );\n\n        $dep  = array_map('strtolower', $dep);\n        $depchannel = isset($dep['channel']) ? $dep['channel'] : '__uri';\n        if (!isset($data['dependencies'])) {\n            $data['dependencies'] = array();\n        }\n\n        $channel = strtolower($pkg->getChannel());\n        $package = strtolower($pkg->getPackage());\n\n        if (!isset($data['dependencies'][$channel])) {\n            $data['dependencies'][$channel] = array();\n        }\n\n        if (!isset($data['dependencies'][$channel][$package])) {\n            $data['dependencies'][$channel][$package] = array();\n        }\n\n        $data['dependencies'][$channel][$package][] = $info;\n        if (isset($data['packages'][$depchannel][$dep['name']])) {\n            $found = false;\n            foreach ($data['packages'][$depchannel][$dep['name']] as $i => $p) {\n                if ($p['channel'] == $channel && $p['package'] == $package) {\n                    $found = true;\n                    break;\n                }\n            }\n        } else {\n            if (!isset($data['packages'])) {\n                $data['packages'] = array();\n            }\n\n            if (!isset($data['packages'][$depchannel])) {\n                $data['packages'][$depchannel] = array();\n            }\n\n            if (!isset($data['packages'][$depchannel][$dep['name']])) {\n                $data['packages'][$depchannel][$dep['name']] = array();\n            }\n\n            $found = false;\n        }\n\n        if (!$found) {\n            $data['packages'][$depchannel][$dep['name']][] = array(\n                'channel' => $channel,\n                'package' => $package\n            );\n        }\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/Downloader/Package.php",
    "content": "<?php\n/**\n * PEAR_Downloader_Package\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Package.php 287560 2009-08-21 22:36:18Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n\n/**\n * Error code when parameter initialization fails because no releases\n * exist within preferred_state, but releases do exist\n */\ndefine('PEAR_DOWNLOADER_PACKAGE_STATE', -1003);\n/**\n * Error code when parameter initialization fails because no releases\n * exist that will work with the existing PHP version\n */\ndefine('PEAR_DOWNLOADER_PACKAGE_PHPVERSION', -1004);\n\n/**\n * Coordinates download parameters and manages their dependencies\n * prior to downloading them.\n *\n * Input can come from three sources:\n *\n * - local files (archives or package.xml)\n * - remote files (downloadable urls)\n * - abstract package names\n *\n * The first two elements are handled cleanly by PEAR_PackageFile, but the third requires\n * accessing pearweb's xml-rpc interface to determine necessary dependencies, and the\n * format returned of dependencies is slightly different from that used in package.xml.\n *\n * This class hides the differences between these elements, and makes automatic\n * dependency resolution a piece of cake.  It also manages conflicts when\n * two classes depend on incompatible dependencies, or differing versions of the same\n * package dependency.  In addition, download will not be attempted if the php version is\n * not supported, PEAR installer version is not supported, or non-PECL extensions are not\n * installed.\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_Downloader_Package\n{\n    /**\n     * @var PEAR_Downloader\n     */\n    var $_downloader;\n    /**\n     * @var PEAR_Config\n     */\n    var $_config;\n    /**\n     * @var PEAR_Registry\n     */\n    var $_registry;\n    /**\n     * Used to implement packagingroot properly\n     * @var PEAR_Registry\n     */\n    var $_installRegistry;\n    /**\n     * @var PEAR_PackageFile_v1|PEAR_PackageFile|v2\n     */\n    var $_packagefile;\n    /**\n     * @var array\n     */\n    var $_parsedname;\n    /**\n     * @var array\n     */\n    var $_downloadURL;\n    /**\n     * @var array\n     */\n    var $_downloadDeps = array();\n    /**\n     * @var boolean\n     */\n    var $_valid = false;\n    /**\n     * @var boolean\n     */\n    var $_analyzed = false;\n    /**\n     * if this or a parent package was invoked with Package-state, this is set to the\n     * state variable.\n     *\n     * This allows temporary reassignment of preferred_state for a parent package and all of\n     * its dependencies.\n     * @var string|false\n     */\n    var $_explicitState = false;\n    /**\n     * If this package is invoked with Package#group, this variable will be true\n     */\n    var $_explicitGroup = false;\n    /**\n     * Package type local|url\n     * @var string\n     */\n    var $_type;\n    /**\n     * Contents of package.xml, if downloaded from a remote channel\n     * @var string|false\n     * @access private\n     */\n    var $_rawpackagefile;\n    /**\n     * @var boolean\n     * @access private\n     */\n    var $_validated = false;\n\n    /**\n     * @param PEAR_Downloader\n     */\n    function PEAR_Downloader_Package(&$downloader)\n    {\n        $this->_downloader = &$downloader;\n        $this->_config = &$this->_downloader->config;\n        $this->_registry = &$this->_config->getRegistry();\n        $options = $downloader->getOptions();\n        if (isset($options['packagingroot'])) {\n            $this->_config->setInstallRoot($options['packagingroot']);\n            $this->_installRegistry = &$this->_config->getRegistry();\n            $this->_config->setInstallRoot(false);\n        } else {\n            $this->_installRegistry = &$this->_registry;\n        }\n        $this->_valid = $this->_analyzed = false;\n    }\n\n    /**\n     * Parse the input and determine whether this is a local file, a remote uri, or an\n     * abstract package name.\n     *\n     * This is the heart of the PEAR_Downloader_Package(), and is used in\n     * {@link PEAR_Downloader::download()}\n     * @param string\n     * @return bool|PEAR_Error\n     */\n    function initialize($param)\n    {\n        $origErr = $this->_fromFile($param);\n        if ($this->_valid) {\n            return true;\n        }\n\n        $options = $this->_downloader->getOptions();\n        if (isset($options['offline'])) {\n            if (PEAR::isError($origErr) && !isset($options['soft'])) {\n                foreach ($origErr->getUserInfo() as $userInfo) {\n                    if (isset($userInfo['message'])) {\n                        $this->_downloader->log(0, $userInfo['message']);\n                    }\n                }\n\n                $this->_downloader->log(0, $origErr->getMessage());\n            }\n\n            return PEAR::raiseError('Cannot download non-local package \"' . $param . '\"');\n        }\n\n        $err = $this->_fromUrl($param);\n        if (PEAR::isError($err) || !$this->_valid) {\n            if ($this->_type == 'url') {\n                if (PEAR::isError($err) && !isset($options['soft'])) {\n                    $this->_downloader->log(0, $err->getMessage());\n                }\n\n                return PEAR::raiseError(\"Invalid or missing remote package file\");\n            }\n\n            $err = $this->_fromString($param);\n            if (PEAR::isError($err) || !$this->_valid) {\n                if (PEAR::isError($err) && $err->getCode() == PEAR_DOWNLOADER_PACKAGE_STATE) {\n                    return false; // instruct the downloader to silently skip\n                }\n\n                if (isset($this->_type) && $this->_type == 'local' && PEAR::isError($origErr)) {\n                    if (is_array($origErr->getUserInfo())) {\n                        foreach ($origErr->getUserInfo() as $err) {\n                            if (is_array($err)) {\n                                $err = $err['message'];\n                            }\n\n                            if (!isset($options['soft'])) {\n                                $this->_downloader->log(0, $err);\n                            }\n                        }\n                    }\n\n                    if (!isset($options['soft'])) {\n                        $this->_downloader->log(0, $origErr->getMessage());\n                    }\n\n                    if (is_array($param)) {\n                        $param = $this->_registry->parsedPackageNameToString($param, true);\n                    }\n\n                    if (!isset($options['soft'])) {\n                        $this->_downloader->log(2, \"Cannot initialize '$param', invalid or missing package file\");\n                    }\n\n                    // Passing no message back - already logged above\n                    return PEAR::raiseError();\n                }\n\n                if (PEAR::isError($err) && !isset($options['soft'])) {\n                    $this->_downloader->log(0, $err->getMessage());\n                }\n\n                if (is_array($param)) {\n                    $param = $this->_registry->parsedPackageNameToString($param, true);\n                }\n\n                if (!isset($options['soft'])) {\n                    $this->_downloader->log(2, \"Cannot initialize '$param', invalid or missing package file\");\n                }\n\n                // Passing no message back - already logged above\n                return PEAR::raiseError();\n            }\n        }\n\n        return true;\n    }\n\n    /**\n     * Retrieve any non-local packages\n     * @return PEAR_PackageFile_v1|PEAR_PackageFile_v2|PEAR_Error\n     */\n    function &download()\n    {\n        if (isset($this->_packagefile)) {\n            return $this->_packagefile;\n        }\n\n        if (isset($this->_downloadURL['url'])) {\n            $this->_isvalid = false;\n            $info = $this->getParsedPackage();\n            foreach ($info as $i => $p) {\n                $info[$i] = strtolower($p);\n            }\n\n            $err = $this->_fromUrl($this->_downloadURL['url'],\n                $this->_registry->parsedPackageNameToString($this->_parsedname, true));\n            $newinfo = $this->getParsedPackage();\n            foreach ($newinfo as $i => $p) {\n                $newinfo[$i] = strtolower($p);\n            }\n\n            if ($info != $newinfo) {\n                do {\n                    if ($info['channel'] == 'pecl.php.net' && $newinfo['channel'] == 'pear.php.net') {\n                        $info['channel'] = 'pear.php.net';\n                        if ($info == $newinfo) {\n                            // skip the channel check if a pecl package says it's a PEAR package\n                            break;\n                        }\n                    }\n                    if ($info['channel'] == 'pear.php.net' && $newinfo['channel'] == 'pecl.php.net') {\n                        $info['channel'] = 'pecl.php.net';\n                        if ($info == $newinfo) {\n                            // skip the channel check if a pecl package says it's a PEAR package\n                            break;\n                        }\n                    }\n\n                    return PEAR::raiseError('CRITICAL ERROR: We are ' .\n                        $this->_registry->parsedPackageNameToString($info) . ', but the file ' .\n                        'downloaded claims to be ' .\n                        $this->_registry->parsedPackageNameToString($this->getParsedPackage()));\n                } while (false);\n            }\n\n            if (PEAR::isError($err) || !$this->_valid) {\n                return $err;\n            }\n        }\n\n        $this->_type = 'local';\n        return $this->_packagefile;\n    }\n\n    function &getPackageFile()\n    {\n        return $this->_packagefile;\n    }\n\n    function &getDownloader()\n    {\n        return $this->_downloader;\n    }\n\n    function getType()\n    {\n        return $this->_type;\n    }\n\n    /**\n     * Like {@link initialize()}, but operates on a dependency\n     */\n    function fromDepURL($dep)\n    {\n        $this->_downloadURL = $dep;\n        if (isset($dep['uri'])) {\n            $options = $this->_downloader->getOptions();\n            if (!extension_loaded(\"zlib\") || isset($options['nocompress'])) {\n                $ext = '.tar';\n            } else {\n                $ext = '.tgz';\n            }\n\n            PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n            $err = $this->_fromUrl($dep['uri'] . $ext);\n            PEAR::popErrorHandling();\n            if (PEAR::isError($err)) {\n                if (!isset($options['soft'])) {\n                    $this->_downloader->log(0, $err->getMessage());\n                }\n\n                return PEAR::raiseError('Invalid uri dependency \"' . $dep['uri'] . $ext . '\", ' .\n                    'cannot download');\n            }\n        } else {\n            $this->_parsedname =\n                array(\n                    'package' => $dep['info']->getPackage(),\n                    'channel' => $dep['info']->getChannel(),\n                    'version' => $dep['version']\n                );\n            if (!isset($dep['nodefault'])) {\n                $this->_parsedname['group'] = 'default'; // download the default dependency group\n                $this->_explicitGroup = false;\n            }\n\n            $this->_rawpackagefile = $dep['raw'];\n        }\n    }\n\n    function detectDependencies($params)\n    {\n        $options = $this->_downloader->getOptions();\n        if (isset($options['downloadonly'])) {\n            return;\n        }\n\n        if (isset($options['offline'])) {\n            $this->_downloader->log(3, 'Skipping dependency download check, --offline specified');\n            return;\n        }\n\n        $pname = $this->getParsedPackage();\n        if (!$pname) {\n            return;\n        }\n\n        $deps = $this->getDeps();\n        if (!$deps) {\n            return;\n        }\n\n        if (isset($deps['required'])) { // package.xml 2.0\n            return $this->_detect2($deps, $pname, $options, $params);\n        }\n\n        return $this->_detect1($deps, $pname, $options, $params);\n    }\n\n    function setValidated()\n    {\n        $this->_validated = true;\n    }\n\n    function alreadyValidated()\n    {\n        return $this->_validated;\n    }\n\n    /**\n     * Remove packages to be downloaded that are already installed\n     * @param array of PEAR_Downloader_Package objects\n     * @static\n     */\n    function removeInstalled(&$params)\n    {\n        if (!isset($params[0])) {\n            return;\n        }\n\n        $options = $params[0]->_downloader->getOptions();\n        if (!isset($options['downloadonly'])) {\n            foreach ($params as $i => $param) {\n                $package = $param->getPackage();\n                $channel = $param->getChannel();\n                // remove self if already installed with this version\n                // this does not need any pecl magic - we only remove exact matches\n                if ($param->_installRegistry->packageExists($package, $channel)) {\n                    $packageVersion = $param->_installRegistry->packageInfo($package, 'version', $channel);\n                    if (version_compare($packageVersion, $param->getVersion(), '==')) {\n                        if (!isset($options['force'])) {\n                            $info = $param->getParsedPackage();\n                            unset($info['version']);\n                            unset($info['state']);\n                            if (!isset($options['soft'])) {\n                                $param->_downloader->log(1, 'Skipping package \"' .\n                                    $param->getShortName() .\n                                    '\", already installed as version ' . $packageVersion);\n                            }\n                            $params[$i] = false;\n                        }\n                    } elseif (!isset($options['force']) && !isset($options['upgrade']) &&\n                          !isset($options['soft'])) {\n                        $info = $param->getParsedPackage();\n                        $param->_downloader->log(1, 'Skipping package \"' .\n                            $param->getShortName() .\n                            '\", already installed as version ' . $packageVersion);\n                        $params[$i] = false;\n                    }\n                }\n            }\n        }\n\n        PEAR_Downloader_Package::removeDuplicates($params);\n    }\n\n    function _detect2($deps, $pname, $options, $params)\n    {\n        $this->_downloadDeps = array();\n        $groupnotfound = false;\n        foreach (array('package', 'subpackage') as $packagetype) {\n            // get required dependency group\n            if (isset($deps['required'][$packagetype])) {\n                if (isset($deps['required'][$packagetype][0])) {\n                    foreach ($deps['required'][$packagetype] as $dep) {\n                        if (isset($dep['conflicts'])) {\n                            // skip any package that this package conflicts with\n                            continue;\n                        }\n                        $ret = $this->_detect2Dep($dep, $pname, 'required', $params);\n                        if (is_array($ret)) {\n                            $this->_downloadDeps[] = $ret;\n                        } elseif (PEAR::isError($ret) && !isset($options['soft'])) {\n                            $this->_downloader->log(0, $ret->getMessage());\n                        }\n                    }\n                } else {\n                    $dep = $deps['required'][$packagetype];\n                    if (!isset($dep['conflicts'])) {\n                        // skip any package that this package conflicts with\n                        $ret = $this->_detect2Dep($dep, $pname, 'required', $params);\n                        if (is_array($ret)) {\n                            $this->_downloadDeps[] = $ret;\n                        } elseif (PEAR::isError($ret) && !isset($options['soft'])) {\n                            $this->_downloader->log(0, $ret->getMessage());\n                        }\n                    }\n                }\n            }\n\n            // get optional dependency group, if any\n            if (isset($deps['optional'][$packagetype])) {\n                $skipnames = array();\n                if (!isset($deps['optional'][$packagetype][0])) {\n                    $deps['optional'][$packagetype] = array($deps['optional'][$packagetype]);\n                }\n\n                foreach ($deps['optional'][$packagetype] as $dep) {\n                    $skip = false;\n                    if (!isset($options['alldeps'])) {\n                        $dep['package'] = $dep['name'];\n                        if (!isset($options['soft'])) {\n                            $this->_downloader->log(3, 'Notice: package \"' .\n                              $this->_registry->parsedPackageNameToString($this->getParsedPackage(),\n                                    true) . '\" optional dependency \"' .\n                                $this->_registry->parsedPackageNameToString(array('package' =>\n                                    $dep['name'], 'channel' => 'pear.php.net'), true) .\n                                '\" will not be automatically downloaded');\n                        }\n                        $skipnames[] = $this->_registry->parsedPackageNameToString($dep, true);\n                        $skip = true;\n                        unset($dep['package']);\n                    }\n\n                    $ret = $this->_detect2Dep($dep, $pname, 'optional', $params);\n                    if (PEAR::isError($ret) && !isset($options['soft'])) {\n                        $this->_downloader->log(0, $ret->getMessage());\n                    }\n\n                    if (!$ret) {\n                        $dep['package'] = $dep['name'];\n                        $skip = count($skipnames) ?\n                            $skipnames[count($skipnames) - 1] : '';\n                        if ($skip ==\n                              $this->_registry->parsedPackageNameToString($dep, true)) {\n                            array_pop($skipnames);\n                        }\n                    }\n\n                    if (!$skip && is_array($ret)) {\n                        $this->_downloadDeps[] = $ret;\n                    }\n                }\n\n                if (count($skipnames)) {\n                    if (!isset($options['soft'])) {\n                        $this->_downloader->log(1, 'Did not download optional dependencies: ' .\n                            implode(', ', $skipnames) .\n                            ', use --alldeps to download automatically');\n                    }\n                }\n            }\n\n            // get requested dependency group, if any\n            $groupname = $this->getGroup();\n            $explicit  = $this->_explicitGroup;\n            if (!$groupname) {\n                if (!$this->canDefault()) {\n                    continue;\n                }\n\n                $groupname = 'default'; // try the default dependency group\n            }\n\n            if ($groupnotfound) {\n                continue;\n            }\n\n            if (isset($deps['group'])) {\n                if (isset($deps['group']['attribs'])) {\n                    if (strtolower($deps['group']['attribs']['name']) == strtolower($groupname)) {\n                        $group = $deps['group'];\n                    } elseif ($explicit) {\n                        if (!isset($options['soft'])) {\n                            $this->_downloader->log(0, 'Warning: package \"' .\n                                $this->_registry->parsedPackageNameToString($pname, true) .\n                                '\" has no dependency ' . 'group named \"' . $groupname . '\"');\n                        }\n\n                        $groupnotfound = true;\n                        continue;\n                    }\n                } else {\n                    $found = false;\n                    foreach ($deps['group'] as $group) {\n                        if (strtolower($group['attribs']['name']) == strtolower($groupname)) {\n                            $found = true;\n                            break;\n                        }\n                    }\n\n                    if (!$found) {\n                        if ($explicit) {\n                            if (!isset($options['soft'])) {\n                                $this->_downloader->log(0, 'Warning: package \"' .\n                                    $this->_registry->parsedPackageNameToString($pname, true) .\n                                    '\" has no dependency ' . 'group named \"' . $groupname . '\"');\n                            }\n                        }\n\n                        $groupnotfound = true;\n                        continue;\n                    }\n                }\n            }\n\n            if (isset($group) && isset($group[$packagetype])) {\n                if (isset($group[$packagetype][0])) {\n                    foreach ($group[$packagetype] as $dep) {\n                        $ret = $this->_detect2Dep($dep, $pname, 'dependency group \"' .\n                            $group['attribs']['name'] . '\"', $params);\n                        if (is_array($ret)) {\n                            $this->_downloadDeps[] = $ret;\n                        } elseif (PEAR::isError($ret) && !isset($options['soft'])) {\n                            $this->_downloader->log(0, $ret->getMessage());\n                        }\n                    }\n                } else {\n                    $ret = $this->_detect2Dep($group[$packagetype], $pname,\n                        'dependency group \"' .\n                        $group['attribs']['name'] . '\"', $params);\n                    if (is_array($ret)) {\n                        $this->_downloadDeps[] = $ret;\n                    } elseif (PEAR::isError($ret) && !isset($options['soft'])) {\n                        $this->_downloader->log(0, $ret->getMessage());\n                    }\n                }\n            }\n        }\n    }\n\n    function _detect2Dep($dep, $pname, $group, $params)\n    {\n        if (isset($dep['conflicts'])) {\n            return true;\n        }\n\n        $options = $this->_downloader->getOptions();\n        if (isset($dep['uri'])) {\n            return array('uri' => $dep['uri'], 'dep' => $dep);;\n        }\n\n        $testdep = $dep;\n        $testdep['package'] = $dep['name'];\n        if (PEAR_Downloader_Package::willDownload($testdep, $params)) {\n            $dep['package'] = $dep['name'];\n            if (!isset($options['soft'])) {\n                $this->_downloader->log(2, $this->getShortName() . ': Skipping ' . $group .\n                    ' dependency \"' .\n                    $this->_registry->parsedPackageNameToString($dep, true) .\n                    '\", will be installed');\n            }\n            return false;\n        }\n\n        $options = $this->_downloader->getOptions();\n        PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n        if ($this->_explicitState) {\n            $pname['state'] = $this->_explicitState;\n        }\n\n        $url = $this->_downloader->_getDepPackageDownloadUrl($dep, $pname);\n        if (PEAR::isError($url)) {\n            PEAR::popErrorHandling();\n            return $url;\n        }\n\n        $dep['package'] = $dep['name'];\n        $ret = $this->_analyzeDownloadURL($url, 'dependency', $dep, $params, $group == 'optional' &&\n            !isset($options['alldeps']), true);\n        PEAR::popErrorHandling();\n        if (PEAR::isError($ret)) {\n            if (!isset($options['soft'])) {\n                $this->_downloader->log(0, $ret->getMessage());\n            }\n\n            return false;\n        }\n\n        // check to see if a dep is already installed and is the same or newer\n        if (!isset($dep['min']) && !isset($dep['max']) && !isset($dep['recommended'])) {\n            $oper = 'has';\n        } else {\n            $oper = 'gt';\n        }\n\n        // do not try to move this before getDepPackageDownloadURL\n        // we can't determine whether upgrade is necessary until we know what\n        // version would be downloaded\n        if (!isset($options['force']) && $this->isInstalled($ret, $oper)) {\n            $version = $this->_installRegistry->packageInfo($dep['name'], 'version', $dep['channel']);\n            $dep['package'] = $dep['name'];\n            if (!isset($options['soft'])) {\n                $this->_downloader->log(3, $this->getShortName() . ': Skipping ' . $group .\n                    ' dependency \"' .\n                $this->_registry->parsedPackageNameToString($dep, true) .\n                    '\" version ' . $url['version'] . ', already installed as version ' .\n                    $version);\n            }\n\n            return false;\n        }\n\n        if (isset($dep['nodefault'])) {\n            $ret['nodefault'] = true;\n        }\n\n        return $ret;\n    }\n\n    function _detect1($deps, $pname, $options, $params)\n    {\n        $this->_downloadDeps = array();\n        $skipnames = array();\n        foreach ($deps as $dep) {\n            $nodownload = false;\n            if (isset ($dep['type']) && $dep['type'] === 'pkg') {\n                $dep['channel'] = 'pear.php.net';\n                $dep['package'] = $dep['name'];\n                switch ($dep['rel']) {\n                    case 'not' :\n                        continue 2;\n                    case 'ge' :\n                    case 'eq' :\n                    case 'gt' :\n                    case 'has' :\n                        $group = (!isset($dep['optional']) || $dep['optional'] == 'no') ?\n                            'required' :\n                            'optional';\n                        if (PEAR_Downloader_Package::willDownload($dep, $params)) {\n                            $this->_downloader->log(2, $this->getShortName() . ': Skipping ' . $group\n                                . ' dependency \"' .\n                                $this->_registry->parsedPackageNameToString($dep, true) .\n                                '\", will be installed');\n                            continue 2;\n                        }\n                        $fakedp = new PEAR_PackageFile_v1;\n                        $fakedp->setPackage($dep['name']);\n                        // skip internet check if we are not upgrading (bug #5810)\n                        if (!isset($options['upgrade']) && $this->isInstalled(\n                              $fakedp, $dep['rel'])) {\n                            $this->_downloader->log(2, $this->getShortName() . ': Skipping ' . $group\n                                . ' dependency \"' .\n                                $this->_registry->parsedPackageNameToString($dep, true) .\n                                '\", is already installed');\n                            continue 2;\n                        }\n                }\n\n                PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n                if ($this->_explicitState) {\n                    $pname['state'] = $this->_explicitState;\n                }\n\n                $url = $this->_downloader->_getDepPackageDownloadUrl($dep, $pname);\n                $chan = 'pear.php.net';\n                if (PEAR::isError($url)) {\n                    // check to see if this is a pecl package that has jumped\n                    // from pear.php.net to pecl.php.net channel\n                    if (!class_exists('PEAR_Dependency2')) {\n                        require_once 'PEAR/Dependency2.php';\n                    }\n\n                    $newdep = PEAR_Dependency2::normalizeDep($dep);\n                    $newdep = $newdep[0];\n                    $newdep['channel'] = 'pecl.php.net';\n                    $chan = 'pecl.php.net';\n                    $url = $this->_downloader->_getDepPackageDownloadUrl($newdep, $pname);\n                    $obj = &$this->_installRegistry->getPackage($dep['name']);\n                    if (PEAR::isError($url)) {\n                        PEAR::popErrorHandling();\n                        if ($obj !== null && $this->isInstalled($obj, $dep['rel'])) {\n                            $group = (!isset($dep['optional']) || $dep['optional'] == 'no') ?\n                                'required' :\n                                'optional';\n                            $dep['package'] = $dep['name'];\n                            if (!isset($options['soft'])) {\n                                $this->_downloader->log(3, $this->getShortName() .\n                                    ': Skipping ' . $group . ' dependency \"' .\n                                    $this->_registry->parsedPackageNameToString($dep, true) .\n                                    '\", already installed as version ' . $obj->getVersion());\n                            }\n                            $skip = count($skipnames) ?\n                                $skipnames[count($skipnames) - 1] : '';\n                            if ($skip ==\n                                  $this->_registry->parsedPackageNameToString($dep, true)) {\n                                array_pop($skipnames);\n                            }\n                            continue;\n                        } else {\n                            if (isset($dep['optional']) && $dep['optional'] == 'yes') {\n                                $this->_downloader->log(2, $this->getShortName() .\n                                    ': Skipping optional dependency \"' .\n                                    $this->_registry->parsedPackageNameToString($dep, true) .\n                                    '\", no releases exist');\n                                continue;\n                            } else {\n                                return $url;\n                            }\n                        }\n                    }\n                }\n\n                PEAR::popErrorHandling();\n                if (!isset($options['alldeps'])) {\n                    if (isset($dep['optional']) && $dep['optional'] == 'yes') {\n                        if (!isset($options['soft'])) {\n                            $this->_downloader->log(3, 'Notice: package \"' .\n                                $this->getShortName() .\n                                '\" optional dependency \"' .\n                                $this->_registry->parsedPackageNameToString(\n                                    array('channel' => $chan, 'package' =>\n                                    $dep['name']), true) .\n                                '\" will not be automatically downloaded');\n                        }\n                        $skipnames[] = $this->_registry->parsedPackageNameToString(\n                                array('channel' => $chan, 'package' =>\n                                $dep['name']), true);\n                        $nodownload = true;\n                    }\n                }\n\n                if (!isset($options['alldeps']) && !isset($options['onlyreqdeps'])) {\n                    if (!isset($dep['optional']) || $dep['optional'] == 'no') {\n                        if (!isset($options['soft'])) {\n                            $this->_downloader->log(3, 'Notice: package \"' .\n                                $this->getShortName() .\n                                '\" required dependency \"' .\n                                $this->_registry->parsedPackageNameToString(\n                                    array('channel' => $chan, 'package' =>\n                                    $dep['name']), true) .\n                                '\" will not be automatically downloaded');\n                        }\n                        $skipnames[] = $this->_registry->parsedPackageNameToString(\n                                array('channel' => $chan, 'package' =>\n                                $dep['name']), true);\n                        $nodownload = true;\n                    }\n                }\n\n                // check to see if a dep is already installed\n                // do not try to move this before getDepPackageDownloadURL\n                // we can't determine whether upgrade is necessary until we know what\n                // version would be downloaded\n                if (!isset($options['force']) && $this->isInstalled(\n                        $url, $dep['rel'])) {\n                    $group = (!isset($dep['optional']) || $dep['optional'] == 'no') ?\n                        'required' :\n                        'optional';\n                    $dep['package'] = $dep['name'];\n                    if (isset($newdep)) {\n                        $version = $this->_installRegistry->packageInfo($newdep['name'], 'version', $newdep['channel']);\n                    } else {\n                        $version = $this->_installRegistry->packageInfo($dep['name'], 'version');\n                    }\n\n                    $dep['version'] = $url['version'];\n                    if (!isset($options['soft'])) {\n                        $this->_downloader->log(3, $this->getShortName() . ': Skipping ' . $group .\n                            ' dependency \"' .\n                            $this->_registry->parsedPackageNameToString($dep, true) .\n                            '\", already installed as version ' . $version);\n                    }\n\n                    $skip = count($skipnames) ?\n                        $skipnames[count($skipnames) - 1] : '';\n                    if ($skip ==\n                          $this->_registry->parsedPackageNameToString($dep, true)) {\n                        array_pop($skipnames);\n                    }\n\n                    continue;\n                }\n\n                if ($nodownload) {\n                    continue;\n                }\n\n                PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n                if (isset($newdep)) {\n                    $dep = $newdep;\n                }\n\n                $dep['package'] = $dep['name'];\n                $ret = $this->_analyzeDownloadURL($url, 'dependency', $dep, $params,\n                    isset($dep['optional']) && $dep['optional'] == 'yes' &&\n                    !isset($options['alldeps']), true);\n                PEAR::popErrorHandling();\n                if (PEAR::isError($ret)) {\n                    if (!isset($options['soft'])) {\n                        $this->_downloader->log(0, $ret->getMessage());\n                    }\n                    continue;\n                }\n\n                $this->_downloadDeps[] = $ret;\n            }\n        }\n\n        if (count($skipnames)) {\n            if (!isset($options['soft'])) {\n                $this->_downloader->log(1, 'Did not download dependencies: ' .\n                    implode(', ', $skipnames) .\n                    ', use --alldeps or --onlyreqdeps to download automatically');\n            }\n        }\n    }\n\n    function setDownloadURL($pkg)\n    {\n        $this->_downloadURL = $pkg;\n    }\n\n    /**\n     * Set the package.xml object for this downloaded package\n     *\n     * @param PEAR_PackageFile_v1|PEAR_PackageFile_v2 $pkg\n     */\n    function setPackageFile(&$pkg)\n    {\n        $this->_packagefile = &$pkg;\n    }\n\n    function getShortName()\n    {\n        return $this->_registry->parsedPackageNameToString(array('channel' => $this->getChannel(),\n            'package' => $this->getPackage()), true);\n    }\n\n    function getParsedPackage()\n    {\n        if (isset($this->_packagefile) || isset($this->_parsedname)) {\n            return array('channel' => $this->getChannel(),\n                'package' => $this->getPackage(),\n                'version' => $this->getVersion());\n        }\n\n        return false;\n    }\n\n    function getDownloadURL()\n    {\n        return $this->_downloadURL;\n    }\n\n    function canDefault()\n    {\n        if (isset($this->_downloadURL) && isset($this->_downloadURL['nodefault'])) {\n            return false;\n        }\n\n        return true;\n    }\n\n    function getPackage()\n    {\n        if (isset($this->_packagefile)) {\n            return $this->_packagefile->getPackage();\n        } elseif (isset($this->_downloadURL['info'])) {\n            return $this->_downloadURL['info']->getPackage();\n        }\n\n        return false;\n    }\n\n    /**\n     * @param PEAR_PackageFile_v1|PEAR_PackageFile_v2\n     */\n    function isSubpackage(&$pf)\n    {\n        if (isset($this->_packagefile)) {\n            return $this->_packagefile->isSubpackage($pf);\n        } elseif (isset($this->_downloadURL['info'])) {\n            return $this->_downloadURL['info']->isSubpackage($pf);\n        }\n\n        return false;\n    }\n\n    function getPackageType()\n    {\n        if (isset($this->_packagefile)) {\n            return $this->_packagefile->getPackageType();\n        } elseif (isset($this->_downloadURL['info'])) {\n            return $this->_downloadURL['info']->getPackageType();\n        }\n\n        return false;\n    }\n\n    function isBundle()\n    {\n        if (isset($this->_packagefile)) {\n            return $this->_packagefile->getPackageType() == 'bundle';\n        }\n\n        return false;\n    }\n\n    function getPackageXmlVersion()\n    {\n        if (isset($this->_packagefile)) {\n            return $this->_packagefile->getPackagexmlVersion();\n        } elseif (isset($this->_downloadURL['info'])) {\n            return $this->_downloadURL['info']->getPackagexmlVersion();\n        }\n\n        return '1.0';\n    }\n\n    function getChannel()\n    {\n        if (isset($this->_packagefile)) {\n            return $this->_packagefile->getChannel();\n        } elseif (isset($this->_downloadURL['info'])) {\n            return $this->_downloadURL['info']->getChannel();\n        }\n\n        return false;\n    }\n\n    function getURI()\n    {\n        if (isset($this->_packagefile)) {\n            return $this->_packagefile->getURI();\n        } elseif (isset($this->_downloadURL['info'])) {\n            return $this->_downloadURL['info']->getURI();\n        }\n\n        return false;\n    }\n\n    function getVersion()\n    {\n        if (isset($this->_packagefile)) {\n            return $this->_packagefile->getVersion();\n        } elseif (isset($this->_downloadURL['version'])) {\n            return $this->_downloadURL['version'];\n        }\n\n        return false;\n    }\n\n    function isCompatible($pf)\n    {\n        if (isset($this->_packagefile)) {\n            return $this->_packagefile->isCompatible($pf);\n        } elseif (isset($this->_downloadURL['info'])) {\n            return $this->_downloadURL['info']->isCompatible($pf);\n        }\n\n        return true;\n    }\n\n    function setGroup($group)\n    {\n        $this->_parsedname['group'] = $group;\n    }\n\n    function getGroup()\n    {\n        if (isset($this->_parsedname['group'])) {\n            return $this->_parsedname['group'];\n        }\n\n        return '';\n    }\n\n    function isExtension($name)\n    {\n        if (isset($this->_packagefile)) {\n            return $this->_packagefile->isExtension($name);\n        } elseif (isset($this->_downloadURL['info'])) {\n            if ($this->_downloadURL['info']->getPackagexmlVersion() == '2.0') {\n                return $this->_downloadURL['info']->getProvidesExtension() == $name;\n            }\n\n            return false;\n        }\n\n        return false;\n    }\n\n    function getDeps()\n    {\n        if (isset($this->_packagefile)) {\n            $ver = $this->_packagefile->getPackagexmlVersion();\n            if (version_compare($ver, '2.0', '>=')) {\n                return $this->_packagefile->getDeps(true);\n            }\n\n            return $this->_packagefile->getDeps();\n        } elseif (isset($this->_downloadURL['info'])) {\n            $ver = $this->_downloadURL['info']->getPackagexmlVersion();\n            if (version_compare($ver, '2.0', '>=')) {\n                return $this->_downloadURL['info']->getDeps(true);\n            }\n\n            return $this->_downloadURL['info']->getDeps();\n        }\n\n        return array();\n    }\n\n    /**\n     * @param array Parsed array from {@link PEAR_Registry::parsePackageName()} or a dependency\n     *                     returned from getDepDownloadURL()\n     */\n    function isEqual($param)\n    {\n        if (is_object($param)) {\n            $channel = $param->getChannel();\n            $package = $param->getPackage();\n            if ($param->getURI()) {\n                $param = array(\n                    'channel' => $param->getChannel(),\n                    'package' => $param->getPackage(),\n                    'version' => $param->getVersion(),\n                    'uri' => $param->getURI(),\n                );\n            } else {\n                $param = array(\n                    'channel' => $param->getChannel(),\n                    'package' => $param->getPackage(),\n                    'version' => $param->getVersion(),\n                );\n            }\n        } else {\n            if (isset($param['uri'])) {\n                if ($this->getChannel() != '__uri') {\n                    return false;\n                }\n                return $param['uri'] == $this->getURI();\n            }\n\n            $package = isset($param['package']) ? $param['package'] : $param['info']->getPackage();\n            $channel = isset($param['channel']) ? $param['channel'] : $param['info']->getChannel();\n            if (isset($param['rel'])) {\n                if (!class_exists('PEAR_Dependency2')) {\n                    require_once 'PEAR/Dependency2.php';\n                }\n\n                $newdep = PEAR_Dependency2::normalizeDep($param);\n                $newdep = $newdep[0];\n            } elseif (isset($param['min'])) {\n                $newdep = $param;\n            }\n        }\n\n        if (isset($newdep)) {\n            if (!isset($newdep['min'])) {\n                $newdep['min'] = '0';\n            }\n\n            if (!isset($newdep['max'])) {\n                $newdep['max'] = '100000000000000000000';\n            }\n\n            // use magic to support pecl packages suddenly jumping to the pecl channel\n            // we need to support both dependency possibilities\n            if ($channel == 'pear.php.net' && $this->getChannel() == 'pecl.php.net') {\n                if ($package == $this->getPackage()) {\n                    $channel = 'pecl.php.net';\n                }\n            }\n            if ($channel == 'pecl.php.net' && $this->getChannel() == 'pear.php.net') {\n                if ($package == $this->getPackage()) {\n                    $channel = 'pear.php.net';\n                }\n            }\n\n            return (strtolower($package) == strtolower($this->getPackage()) &&\n                $channel == $this->getChannel() &&\n                version_compare($newdep['min'], $this->getVersion(), '<=') &&\n                version_compare($newdep['max'], $this->getVersion(), '>='));\n        }\n\n        // use magic to support pecl packages suddenly jumping to the pecl channel\n        if ($channel == 'pecl.php.net' && $this->getChannel() == 'pear.php.net') {\n            if (strtolower($package) == strtolower($this->getPackage())) {\n                $channel = 'pear.php.net';\n            }\n        }\n\n        if (isset($param['version'])) {\n            return (strtolower($package) == strtolower($this->getPackage()) &&\n                $channel == $this->getChannel() &&\n                $param['version'] == $this->getVersion());\n        }\n\n        return strtolower($package) == strtolower($this->getPackage()) &&\n            $channel == $this->getChannel();\n    }\n\n    function isInstalled($dep, $oper = '==')\n    {\n        if (!$dep) {\n            return false;\n        }\n\n        if ($oper != 'ge' && $oper != 'gt' && $oper != 'has' && $oper != '==') {\n            return false;\n        }\n\n        if (is_object($dep)) {\n            $package = $dep->getPackage();\n            $channel = $dep->getChannel();\n            if ($dep->getURI()) {\n                $dep = array(\n                    'uri' => $dep->getURI(),\n                    'version' => $dep->getVersion(),\n                );\n            } else {\n                $dep = array(\n                    'version' => $dep->getVersion(),\n                );\n            }\n        } else {\n            if (isset($dep['uri'])) {\n                $channel = '__uri';\n                $package = $dep['dep']['name'];\n            } else {\n                $channel = $dep['info']->getChannel();\n                $package = $dep['info']->getPackage();\n            }\n        }\n\n        $options = $this->_downloader->getOptions();\n        $test    = $this->_installRegistry->packageExists($package, $channel);\n        if (!$test && $channel == 'pecl.php.net') {\n            // do magic to allow upgrading from old pecl packages to new ones\n            $test = $this->_installRegistry->packageExists($package, 'pear.php.net');\n            $channel = 'pear.php.net';\n        }\n\n        if ($test) {\n            if (isset($dep['uri'])) {\n                if ($this->_installRegistry->packageInfo($package, 'uri', '__uri') == $dep['uri']) {\n                    return true;\n                }\n            }\n\n            if (isset($options['upgrade'])) {\n                $packageVersion = $this->_installRegistry->packageInfo($package, 'version', $channel);\n                if (version_compare($packageVersion, $dep['version'], '>=')) {\n                    return true;\n                }\n\n                return false;\n            }\n\n            return true;\n        }\n\n        return false;\n    }\n\n    /**\n     * Detect duplicate package names with differing versions\n     *\n     * If a user requests to install Date 1.4.6 and Date 1.4.7,\n     * for instance, this is a logic error.  This method\n     * detects this situation.\n     *\n     * @param array $params array of PEAR_Downloader_Package objects\n     * @param array $errorparams empty array\n     * @return array array of stupid duplicated packages in PEAR_Downloader_Package obejcts\n     */\n    function detectStupidDuplicates($params, &$errorparams)\n    {\n        $existing = array();\n        foreach ($params as $i => $param) {\n            $package = $param->getPackage();\n            $channel = $param->getChannel();\n            $group   = $param->getGroup();\n            if (!isset($existing[$channel . '/' . $package])) {\n                $existing[$channel . '/' . $package] = array();\n            }\n\n            if (!isset($existing[$channel . '/' . $package][$group])) {\n                $existing[$channel . '/' . $package][$group] = array();\n            }\n\n            $existing[$channel . '/' . $package][$group][] = $i;\n        }\n\n        $indices = array();\n        foreach ($existing as $package => $groups) {\n            foreach ($groups as $group => $dupes) {\n                if (count($dupes) > 1) {\n                    $indices = $indices + $dupes;\n                }\n            }\n        }\n\n        $indices = array_unique($indices);\n        foreach ($indices as $index) {\n            $errorparams[] = $params[$index];\n        }\n\n        return count($errorparams);\n    }\n\n    /**\n     * @param array\n     * @param bool ignore install groups - for final removal of dupe packages\n     * @static\n     */\n    function removeDuplicates(&$params, $ignoreGroups = false)\n    {\n        $pnames = array();\n        foreach ($params as $i => $param) {\n            if (!$param) {\n                continue;\n            }\n\n            if ($param->getPackage()) {\n                $group = $ignoreGroups ? '' : $param->getGroup();\n                $pnames[$i] = $param->getChannel() . '/' .\n                    $param->getPackage() . '-' . $param->getVersion() . '#' . $group;\n            }\n        }\n\n        $pnames = array_unique($pnames);\n        $unset  = array_diff(array_keys($params), array_keys($pnames));\n        $testp  = array_flip($pnames);\n        foreach ($params as $i => $param) {\n            if (!$param) {\n                $unset[] = $i;\n                continue;\n            }\n\n            if (!is_a($param, 'PEAR_Downloader_Package')) {\n                $unset[] = $i;\n                continue;\n            }\n\n            $group = $ignoreGroups ? '' : $param->getGroup();\n            if (!isset($testp[$param->getChannel() . '/' . $param->getPackage() . '-' .\n                  $param->getVersion() . '#' . $group])) {\n                $unset[] = $i;\n            }\n        }\n\n        foreach ($unset as $i) {\n            unset($params[$i]);\n        }\n\n        $ret = array();\n        foreach ($params as $i => $param) {\n            $ret[] = &$params[$i];\n        }\n\n        $params = array();\n        foreach ($ret as $i => $param) {\n            $params[] = &$ret[$i];\n        }\n    }\n\n    function explicitState()\n    {\n        return $this->_explicitState;\n    }\n\n    function setExplicitState($s)\n    {\n        $this->_explicitState = $s;\n    }\n\n    /**\n     * @static\n     */\n    function mergeDependencies(&$params)\n    {\n        $bundles = $newparams = array();\n        foreach ($params as $i => $param) {\n            if (!$param->isBundle()) {\n                continue;\n            }\n\n            $bundles[] = $i;\n            $pf = &$param->getPackageFile();\n            $newdeps = array();\n            $contents = $pf->getBundledPackages();\n            if (!is_array($contents)) {\n                $contents = array($contents);\n            }\n\n            foreach ($contents as $file) {\n                $filecontents = $pf->getFileContents($file);\n                $dl = &$param->getDownloader();\n                $options = $dl->getOptions();\n                if (PEAR::isError($dir = $dl->getDownloadDir())) {\n                    return $dir;\n                }\n\n                $fp = @fopen($dir . DIRECTORY_SEPARATOR . $file, 'wb');\n                if (!$fp) {\n                    continue;\n                }\n\n                // FIXME do symlink check\n\n                fwrite($fp, $filecontents, strlen($filecontents));\n                fclose($fp);\n                if ($s = $params[$i]->explicitState()) {\n                    $obj->setExplicitState($s);\n                }\n\n                $obj = &new PEAR_Downloader_Package($params[$i]->getDownloader());\n                PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n                if (PEAR::isError($dir = $dl->getDownloadDir())) {\n                    PEAR::popErrorHandling();\n                    return $dir;\n                }\n\n                $e = $obj->_fromFile($a = $dir . DIRECTORY_SEPARATOR . $file);\n                PEAR::popErrorHandling();\n                if (PEAR::isError($e)) {\n                    if (!isset($options['soft'])) {\n                        $dl->log(0, $e->getMessage());\n                    }\n                    continue;\n                }\n\n                $j = &$obj;\n                if (!PEAR_Downloader_Package::willDownload($j,\n                      array_merge($params, $newparams)) && !$param->isInstalled($j)) {\n                    $newparams[] = &$j;\n                }\n            }\n        }\n\n        foreach ($bundles as $i) {\n            unset($params[$i]); // remove bundles - only their contents matter for installation\n        }\n\n        PEAR_Downloader_Package::removeDuplicates($params); // strip any unset indices\n        if (count($newparams)) { // add in bundled packages for install\n            foreach ($newparams as $i => $unused) {\n                $params[] = &$newparams[$i];\n            }\n            $newparams = array();\n        }\n\n        foreach ($params as $i => $param) {\n            $newdeps = array();\n            foreach ($param->_downloadDeps as $dep) {\n                $merge = array_merge($params, $newparams);\n                if (!PEAR_Downloader_Package::willDownload($dep, $merge)\n                    && !$param->isInstalled($dep)\n                ) {\n                    $newdeps[] = $dep;\n                } else {\n                    //var_dump($dep);\n                    // detect versioning conflicts here\n                }\n            }\n\n            // convert the dependencies into PEAR_Downloader_Package objects for the next time around\n            $params[$i]->_downloadDeps = array();\n            foreach ($newdeps as $dep) {\n                $obj = &new PEAR_Downloader_Package($params[$i]->getDownloader());\n                if ($s = $params[$i]->explicitState()) {\n                    $obj->setExplicitState($s);\n                }\n\n                PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n                $e = $obj->fromDepURL($dep);\n                PEAR::popErrorHandling();\n                if (PEAR::isError($e)) {\n                    if (!isset($options['soft'])) {\n                        $obj->_downloader->log(0, $e->getMessage());\n                    }\n                    continue;\n                }\n\n                $e = $obj->detectDependencies($params);\n                if (PEAR::isError($e)) {\n                    if (!isset($options['soft'])) {\n                        $obj->_downloader->log(0, $e->getMessage());\n                    }\n                }\n\n                $j = &$obj;\n                $newparams[] = &$j;\n            }\n        }\n\n        if (count($newparams)) {\n            foreach ($newparams as $i => $unused) {\n                $params[] = &$newparams[$i];\n            }\n            return true;\n        }\n\n        return false;\n    }\n\n\n    /**\n     * @static\n     */\n    function willDownload($param, $params)\n    {\n        if (!is_array($params)) {\n            return false;\n        }\n\n        foreach ($params as $obj) {\n            if ($obj->isEqual($param)) {\n                return true;\n            }\n        }\n\n        return false;\n    }\n\n    /**\n     * For simpler unit-testing\n     * @param PEAR_Config\n     * @param int\n     * @param string\n     */\n    function &getPackagefileObject(&$c, $d)\n    {\n        $a = &new PEAR_PackageFile($c, $d);\n        return $a;\n    }\n\n    /**\n     * This will retrieve from a local file if possible, and parse out\n     * a group name as well.  The original parameter will be modified to reflect this.\n     * @param string|array can be a parsed package name as well\n     * @access private\n     */\n    function _fromFile(&$param)\n    {\n        $saveparam = $param;\n        if (is_string($param)) {\n            if (!@file_exists($param)) {\n                $test = explode('#', $param);\n                $group = array_pop($test);\n                if (@file_exists(implode('#', $test))) {\n                    $this->setGroup($group);\n                    $param = implode('#', $test);\n                    $this->_explicitGroup = true;\n                }\n            }\n\n            if (@is_file($param)) {\n                $this->_type = 'local';\n                $options = $this->_downloader->getOptions();\n                $pkg = &$this->getPackagefileObject($this->_config, $this->_downloader->_debug);\n                PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n                $pf = &$pkg->fromAnyFile($param, PEAR_VALIDATE_INSTALLING);\n                PEAR::popErrorHandling();\n                if (PEAR::isError($pf)) {\n                    $this->_valid = false;\n                    $param = $saveparam;\n                    return $pf;\n                }\n                $this->_packagefile = &$pf;\n                if (!$this->getGroup()) {\n                    $this->setGroup('default'); // install the default dependency group\n                }\n                return $this->_valid = true;\n            }\n        }\n        $param = $saveparam;\n        return $this->_valid = false;\n    }\n\n    function _fromUrl($param, $saveparam = '')\n    {\n        if (!is_array($param) && (preg_match('#^(http|https|ftp)://#', $param))) {\n            $options = $this->_downloader->getOptions();\n            $this->_type = 'url';\n            $callback = $this->_downloader->ui ?\n                array(&$this->_downloader, '_downloadCallback') : null;\n            $this->_downloader->pushErrorHandling(PEAR_ERROR_RETURN);\n            if (PEAR::isError($dir = $this->_downloader->getDownloadDir())) {\n                $this->_downloader->popErrorHandling();\n                return $dir;\n            }\n\n            $this->_downloader->log(3, 'Downloading \"' . $param . '\"');\n            $file = $this->_downloader->downloadHttp($param, $this->_downloader->ui,\n                $dir, $callback, null, false, $this->getChannel());\n            $this->_downloader->popErrorHandling();\n            if (PEAR::isError($file)) {\n                if (!empty($saveparam)) {\n                    $saveparam = \", cannot download \\\"$saveparam\\\"\";\n                }\n                $err = PEAR::raiseError('Could not download from \"' . $param .\n                    '\"' . $saveparam . ' (' . $file->getMessage() . ')');\n                    return $err;\n            }\n\n            if ($this->_rawpackagefile) {\n                require_once 'Archive/Tar.php';\n                $tar = &new Archive_Tar($file);\n                $packagexml = $tar->extractInString('package2.xml');\n                if (!$packagexml) {\n                    $packagexml = $tar->extractInString('package.xml');\n                }\n\n                if (str_replace(array(\"\\n\", \"\\r\"), array('',''), $packagexml) !=\n                      str_replace(array(\"\\n\", \"\\r\"), array('',''), $this->_rawpackagefile)) {\n                    if ($this->getChannel() != 'pear.php.net') {\n                        return PEAR::raiseError('CRITICAL ERROR: package.xml downloaded does ' .\n                            'not match value returned from xml-rpc');\n                    }\n\n                    // be more lax for the existing PEAR packages that have not-ok\n                    // characters in their package.xml\n                    $this->_downloader->log(0, 'CRITICAL WARNING: The \"' .\n                        $this->getPackage() . '\" package has invalid characters in its ' .\n                        'package.xml.  The next version of PEAR may not be able to install ' .\n                        'this package for security reasons.  Please open a bug report at ' .\n                        'http://pear.php.net/package/' . $this->getPackage() . '/bugs');\n                }\n            }\n\n            // whew, download worked!\n            $pkg = &$this->getPackagefileObject($this->_config, $this->_downloader->debug);\n\n            PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n            $pf = &$pkg->fromAnyFile($file, PEAR_VALIDATE_INSTALLING);\n            PEAR::popErrorHandling();\n            if (PEAR::isError($pf)) {\n                if (is_array($pf->getUserInfo())) {\n                    foreach ($pf->getUserInfo() as $err) {\n                        if (is_array($err)) {\n                            $err = $err['message'];\n                        }\n\n                        if (!isset($options['soft'])) {\n                            $this->_downloader->log(0, \"Validation Error: $err\");\n                        }\n                    }\n                }\n\n                if (!isset($options['soft'])) {\n                    $this->_downloader->log(0, $pf->getMessage());\n                }\n\n                ///FIXME need to pass back some error code that we can use to match with to cancel all further operations\n                /// At least stop all deps of this package from being installed\n                $out = $saveparam ? $saveparam : $param;\n                $err = PEAR::raiseError('Download of \"' . $out . '\" succeeded, but it is not a valid package archive');\n                $this->_valid = false;\n                return $err;\n            }\n\n            $this->_packagefile = &$pf;\n            $this->setGroup('default'); // install the default dependency group\n            return $this->_valid = true;\n        }\n\n        return $this->_valid = false;\n    }\n\n    /**\n     *\n     * @param string|array pass in an array of format\n     *                     array(\n     *                      'package' => 'pname',\n     *                     ['channel' => 'channame',]\n     *                     ['version' => 'version',]\n     *                     ['state' => 'state',])\n     *                     or a string of format [channame/]pname[-version|-state]\n     */\n    function _fromString($param)\n    {\n        $options = $this->_downloader->getOptions();\n        $channel = $this->_config->get('default_channel');\n        PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n        $pname = $this->_registry->parsePackageName($param, $channel);\n        PEAR::popErrorHandling();\n        if (PEAR::isError($pname)) {\n            if ($pname->getCode() == 'invalid') {\n                $this->_valid = false;\n                return false;\n            }\n\n            if ($pname->getCode() == 'channel') {\n                $parsed = $pname->getUserInfo();\n                if ($this->_downloader->discover($parsed['channel'])) {\n                    if ($this->_config->get('auto_discover')) {\n                        PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n                        $pname = $this->_registry->parsePackageName($param, $channel);\n                        PEAR::popErrorHandling();\n                    } else {\n                        if (!isset($options['soft'])) {\n                            $this->_downloader->log(0, 'Channel \"' . $parsed['channel'] .\n                                '\" is not initialized, use ' .\n                                '\"pear channel-discover ' . $parsed['channel'] . '\" to initialize' .\n                                'or pear config-set auto_discover 1');\n                        }\n                    }\n                }\n\n                if (PEAR::isError($pname)) {\n                    if (!isset($options['soft'])) {\n                        $this->_downloader->log(0, $pname->getMessage());\n                    }\n\n                    if (is_array($param)) {\n                        $param = $this->_registry->parsedPackageNameToString($param);\n                    }\n\n                    $err = PEAR::raiseError('invalid package name/package file \"' . $param . '\"');\n                    $this->_valid = false;\n                    return $err;\n                }\n            } else {\n                if (!isset($options['soft'])) {\n                    $this->_downloader->log(0, $pname->getMessage());\n                }\n\n                $err = PEAR::raiseError('invalid package name/package file \"' . $param . '\"');\n                $this->_valid = false;\n                return $err;\n            }\n        }\n\n        if (!isset($this->_type)) {\n            $this->_type = 'rest';\n        }\n\n        $this->_parsedname    = $pname;\n        $this->_explicitState = isset($pname['state']) ? $pname['state'] : false;\n        $this->_explicitGroup = isset($pname['group']) ? true : false;\n\n        $info = $this->_downloader->_getPackageDownloadUrl($pname);\n        if (PEAR::isError($info)) {\n            if ($info->getCode() != -976 && $pname['channel'] == 'pear.php.net') {\n                // try pecl\n                $pname['channel'] = 'pecl.php.net';\n                if ($test = $this->_downloader->_getPackageDownloadUrl($pname)) {\n                    if (!PEAR::isError($test)) {\n                        $info = PEAR::raiseError($info->getMessage() . ' - package ' .\n                            $this->_registry->parsedPackageNameToString($pname, true) .\n                            ' can be installed with \"pecl install ' . $pname['package'] .\n                            '\"');\n                    } else {\n                        $pname['channel'] = 'pear.php.net';\n                    }\n                } else {\n                    $pname['channel'] = 'pear.php.net';\n                }\n            }\n\n            return $info;\n        }\n\n        $this->_rawpackagefile = $info['raw'];\n        $ret = $this->_analyzeDownloadURL($info, $param, $pname);\n        if (PEAR::isError($ret)) {\n            return $ret;\n        }\n\n        if ($ret) {\n            $this->_downloadURL = $ret;\n            return $this->_valid = (bool) $ret;\n        }\n    }\n\n    /**\n     * @param array output of package.getDownloadURL\n     * @param string|array|object information for detecting packages to be downloaded, and\n     *                            for errors\n     * @param array name information of the package\n     * @param array|null packages to be downloaded\n     * @param bool is this an optional dependency?\n     * @param bool is this any kind of dependency?\n     * @access private\n     */\n    function _analyzeDownloadURL($info, $param, $pname, $params = null, $optional = false,\n                                 $isdependency = false)\n    {\n        if (!is_string($param) && PEAR_Downloader_Package::willDownload($param, $params)) {\n            return false;\n        }\n\n        if ($info === false) {\n            $saveparam = !is_string($param) ? \", cannot download \\\"$param\\\"\" : '';\n\n            // no releases exist\n            return PEAR::raiseError('No releases for package \"' .\n                $this->_registry->parsedPackageNameToString($pname, true) . '\" exist' . $saveparam);\n        }\n\n        if (strtolower($info['info']->getChannel()) != strtolower($pname['channel'])) {\n            $err = false;\n            if ($pname['channel'] == 'pecl.php.net') {\n                if ($info['info']->getChannel() != 'pear.php.net') {\n                    $err = true;\n                }\n            } elseif ($info['info']->getChannel() == 'pecl.php.net') {\n                if ($pname['channel'] != 'pear.php.net') {\n                    $err = true;\n                }\n            } else {\n                $err = true;\n            }\n\n            if ($err) {\n                return PEAR::raiseError('SECURITY ERROR: package in channel \"' . $pname['channel'] .\n                    '\" retrieved another channel\\'s name for download! (\"' .\n                    $info['info']->getChannel() . '\")');\n            }\n        }\n\n        $preferred_state = $this->_config->get('preferred_state');\n        if (!isset($info['url'])) {\n            $package_version = $this->_registry->packageInfo($info['info']->getPackage(),\n            'version', $info['info']->getChannel());\n            if ($this->isInstalled($info)) {\n                if ($isdependency && version_compare($info['version'], $package_version, '<=')) {\n                    // ignore bogus errors of \"failed to download dependency\"\n                    // if it is already installed and the one that would be\n                    // downloaded is older or the same version (Bug #7219)\n                    return false;\n                }\n            }\n\n            if ($info['version'] === $package_version) {\n                if (!isset($options['soft'])) {\n                    $this->_downloader->log(1, 'WARNING: failed to download ' . $pname['channel'] .\n                        '/' . $pname['package'] . '-' . $package_version. ', additionally the suggested version' .\n                        ' (' . $package_version . ') is the same as the locally installed one.');\n                }\n\n                return false;\n            }\n\n            if (version_compare($info['version'], $package_version, '<=')) {\n                if (!isset($options['soft'])) {\n                    $this->_downloader->log(1, 'WARNING: failed to download ' . $pname['channel'] .\n                        '/' . $pname['package'] . '-' . $package_version . ', additionally the suggested version' .\n                        ' (' . $info['version'] . ') is a lower version than the locally installed one (' . $package_version . ').');\n                }\n\n                return false;\n            }\n\n            $instead =  ', will instead download version ' . $info['version'] .\n                        ', stability \"' . $info['info']->getState() . '\"';\n            // releases exist, but we failed to get any\n            if (isset($this->_downloader->_options['force'])) {\n                if (isset($pname['version'])) {\n                    $vs = ', version \"' . $pname['version'] . '\"';\n                } elseif (isset($pname['state'])) {\n                    $vs = ', stability \"' . $pname['state'] . '\"';\n                } elseif ($param == 'dependency') {\n                    if (!class_exists('PEAR_Common')) {\n                        require_once 'PEAR/Common.php';\n                    }\n\n                    if (!in_array($info['info']->getState(),\n                          PEAR_Common::betterStates($preferred_state, true))) {\n                        if ($optional) {\n                            // don't spit out confusing error message\n                            return $this->_downloader->_getPackageDownloadUrl(\n                                array('package' => $pname['package'],\n                                      'channel' => $pname['channel'],\n                                      'version' => $info['version']));\n                        }\n                        $vs = ' within preferred state \"' . $preferred_state .\n                            '\"';\n                    } else {\n                        if (!class_exists('PEAR_Dependency2')) {\n                            require_once 'PEAR/Dependency2.php';\n                        }\n\n                        if ($optional) {\n                            // don't spit out confusing error message\n                            return $this->_downloader->_getPackageDownloadUrl(\n                                array('package' => $pname['package'],\n                                      'channel' => $pname['channel'],\n                                      'version' => $info['version']));\n                        }\n                        $vs = PEAR_Dependency2::_getExtraString($pname);\n                        $instead = '';\n                    }\n                } else {\n                    $vs = ' within preferred state \"' . $preferred_state . '\"';\n                }\n\n                if (!isset($options['soft'])) {\n                    $this->_downloader->log(1, 'WARNING: failed to download ' . $pname['channel'] .\n                        '/' . $pname['package'] . $vs . $instead);\n                }\n\n                // download the latest release\n                return $this->_downloader->_getPackageDownloadUrl(\n                    array('package' => $pname['package'],\n                          'channel' => $pname['channel'],\n                          'version' => $info['version']));\n            } else {\n                if (isset($info['php']) && $info['php']) {\n                    $err = PEAR::raiseError('Failed to download ' .\n                        $this->_registry->parsedPackageNameToString(\n                            array('channel' => $pname['channel'],\n                                  'package' => $pname['package']),\n                                true) .\n                        ', latest release is version ' . $info['php']['v'] .\n                        ', but it requires PHP version \"' .\n                        $info['php']['m'] . '\", use \"' .\n                        $this->_registry->parsedPackageNameToString(\n                            array('channel' => $pname['channel'], 'package' => $pname['package'],\n                            'version' => $info['php']['v'])) . '\" to install',\n                            PEAR_DOWNLOADER_PACKAGE_PHPVERSION);\n                    return $err;\n                }\n\n                // construct helpful error message\n                if (isset($pname['version'])) {\n                    $vs = ', version \"' . $pname['version'] . '\"';\n                } elseif (isset($pname['state'])) {\n                    $vs = ', stability \"' . $pname['state'] . '\"';\n                } elseif ($param == 'dependency') {\n                    if (!class_exists('PEAR_Common')) {\n                        require_once 'PEAR/Common.php';\n                    }\n\n                    if (!in_array($info['info']->getState(),\n                          PEAR_Common::betterStates($preferred_state, true))) {\n                        if ($optional) {\n                            // don't spit out confusing error message, and don't die on\n                            // optional dep failure!\n                            return $this->_downloader->_getPackageDownloadUrl(\n                                array('package' => $pname['package'],\n                                      'channel' => $pname['channel'],\n                                      'version' => $info['version']));\n                        }\n                        $vs = ' within preferred state \"' . $preferred_state . '\"';\n                    } else {\n                        if (!class_exists('PEAR_Dependency2')) {\n                            require_once 'PEAR/Dependency2.php';\n                        }\n\n                        if ($optional) {\n                            // don't spit out confusing error message, and don't die on\n                            // optional dep failure!\n                            return $this->_downloader->_getPackageDownloadUrl(\n                                array('package' => $pname['package'],\n                                      'channel' => $pname['channel'],\n                                      'version' => $info['version']));\n                        }\n                        $vs = PEAR_Dependency2::_getExtraString($pname);\n                    }\n                } else {\n                    $vs = ' within preferred state \"' . $this->_downloader->config->get('preferred_state') . '\"';\n                }\n\n                $options = $this->_downloader->getOptions();\n                // this is only set by the \"download-all\" command\n                if (isset($options['ignorepreferred_state'])) {\n                    $err = PEAR::raiseError(\n                        'Failed to download ' . $this->_registry->parsedPackageNameToString(\n                            array('channel' => $pname['channel'], 'package' => $pname['package']),\n                                true)\n                         . $vs .\n                        ', latest release is version ' . $info['version'] .\n                        ', stability \"' . $info['info']->getState() . '\", use \"' .\n                        $this->_registry->parsedPackageNameToString(\n                            array('channel' => $pname['channel'], 'package' => $pname['package'],\n                            'version' => $info['version'])) . '\" to install',\n                            PEAR_DOWNLOADER_PACKAGE_STATE);\n                    return $err;\n                }\n\n                // Checks if the user has a package installed already and checks the release against\n                // the state against the installed package, this allows upgrades for packages\n                // with lower stability than the preferred_state\n                $stability = $this->_registry->packageInfo($pname['package'], 'stability', $pname['channel']);\n                if (!$this->isInstalled($info)\n                    || !in_array($info['info']->getState(), PEAR_Common::betterStates($stability['release'], true))\n                ) {\n                    $err = PEAR::raiseError(\n                        'Failed to download ' . $this->_registry->parsedPackageNameToString(\n                            array('channel' => $pname['channel'], 'package' => $pname['package']),\n                                true)\n                         . $vs .\n                        ', latest release is version ' . $info['version'] .\n                        ', stability \"' . $info['info']->getState() . '\", use \"' .\n                        $this->_registry->parsedPackageNameToString(\n                            array('channel' => $pname['channel'], 'package' => $pname['package'],\n                            'version' => $info['version'])) . '\" to install');\n                    return $err;\n                }\n            }\n        }\n\n        if (isset($info['deprecated']) && $info['deprecated']) {\n            $this->_downloader->log(0,\n                'WARNING: \"' .\n                    $this->_registry->parsedPackageNameToString(\n                            array('channel' => $info['info']->getChannel(),\n                                  'package' => $info['info']->getPackage()), true) .\n                '\" is deprecated in favor of \"' .\n                    $this->_registry->parsedPackageNameToString($info['deprecated'], true) .\n                '\"');\n        }\n\n        return $info;\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/Downloader.php",
    "content": "<?php\n/**\n * PEAR_Downloader, the PEAR Installer's download utility class\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @author     Stig Bakken <ssb@php.net>\n * @author     Tomas V. V. Cox <cox@idecnet.com>\n * @author     Martin Jansen <mj@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Downloader.php 296767 2010-03-25 00:58:33Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.3.0\n */\n\n/**\n * Needed for constants, extending\n */\nrequire_once 'PEAR/Common.php';\n\ndefine('PEAR_INSTALLER_OK',       1);\ndefine('PEAR_INSTALLER_FAILED',   0);\ndefine('PEAR_INSTALLER_SKIPPED', -1);\ndefine('PEAR_INSTALLER_ERROR_NO_PREF_STATE', 2);\n\n/**\n * Administration class used to download anything from the internet (PEAR Packages,\n * static URLs, xml files)\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @author     Stig Bakken <ssb@php.net>\n * @author     Tomas V. V. Cox <cox@idecnet.com>\n * @author     Martin Jansen <mj@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.3.0\n */\nclass PEAR_Downloader extends PEAR_Common\n{\n    /**\n     * @var PEAR_Registry\n     * @access private\n     */\n    var $_registry;\n\n    /**\n     * Preferred Installation State (snapshot, devel, alpha, beta, stable)\n     * @var string|null\n     * @access private\n     */\n    var $_preferredState;\n\n    /**\n     * Options from command-line passed to Install.\n     *\n     * Recognized options:<br />\n     *  - onlyreqdeps   : install all required dependencies as well\n     *  - alldeps       : install all dependencies, including optional\n     *  - installroot   : base relative path to install files in\n     *  - force         : force a download even if warnings would prevent it\n     *  - nocompress    : download uncompressed tarballs\n     * @see PEAR_Command_Install\n     * @access private\n     * @var array\n     */\n    var $_options;\n\n    /**\n     * Downloaded Packages after a call to download().\n     *\n     * Format of each entry:\n     *\n     * <code>\n     * array('pkg' => 'package_name', 'file' => '/path/to/local/file',\n     *    'info' => array() // parsed package.xml\n     * );\n     * </code>\n     * @access private\n     * @var array\n     */\n    var $_downloadedPackages = array();\n\n    /**\n     * Packages slated for download.\n     *\n     * This is used to prevent downloading a package more than once should it be a dependency\n     * for two packages to be installed.\n     * Format of each entry:\n     *\n     * <pre>\n     * array('package_name1' => parsed package.xml, 'package_name2' => parsed package.xml,\n     * );\n     * </pre>\n     * @access private\n     * @var array\n     */\n    var $_toDownload = array();\n\n    /**\n     * Array of every package installed, with names lower-cased.\n     *\n     * Format:\n     * <code>\n     * array('package1' => 0, 'package2' => 1, );\n     * </code>\n     * @var array\n     */\n    var $_installed = array();\n\n    /**\n     * @var array\n     * @access private\n     */\n    var $_errorStack = array();\n\n    /**\n     * @var boolean\n     * @access private\n     */\n    var $_internalDownload = false;\n\n    /**\n     * Temporary variable used in sorting packages by dependency in {@link sortPkgDeps()}\n     * @var array\n     * @access private\n     */\n    var $_packageSortTree;\n\n    /**\n     * Temporary directory, or configuration value where downloads will occur\n     * @var string\n     */\n    var $_downloadDir;\n\n    /**\n     * @param PEAR_Frontend_*\n     * @param array\n     * @param PEAR_Config\n     */\n    function PEAR_Downloader(&$ui, $options, &$config)\n    {\n        parent::PEAR_Common();\n        $this->_options = $options;\n        $this->config = &$config;\n        $this->_preferredState = $this->config->get('preferred_state');\n        $this->ui = &$ui;\n        if (!$this->_preferredState) {\n            // don't inadvertantly use a non-set preferred_state\n            $this->_preferredState = null;\n        }\n\n        if (isset($this->_options['installroot'])) {\n            $this->config->setInstallRoot($this->_options['installroot']);\n        }\n        $this->_registry = &$config->getRegistry();\n\n        if (isset($this->_options['alldeps']) || isset($this->_options['onlyreqdeps'])) {\n            $this->_installed = $this->_registry->listAllPackages();\n            foreach ($this->_installed as $key => $unused) {\n                if (!count($unused)) {\n                    continue;\n                }\n                $strtolower = create_function('$a','return strtolower($a);');\n                array_walk($this->_installed[$key], $strtolower);\n            }\n        }\n    }\n\n    /**\n     * Attempt to discover a channel's remote capabilities from\n     * its server name\n     * @param string\n     * @return boolean\n     */\n    function discover($channel)\n    {\n        $this->log(1, 'Attempting to discover channel \"' . $channel . '\"...');\n        PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n        $callback = $this->ui ? array(&$this, '_downloadCallback') : null;\n        if (!class_exists('System')) {\n            require_once 'System.php';\n        }\n\n        $tmpdir = $this->config->get('temp_dir');\n        $tmp = System::mktemp(\"-d -t $tmpdir\");\n        $a   = $this->downloadHttp('http://' . $channel . '/channel.xml', $this->ui, $tmp, $callback, false);\n        PEAR::popErrorHandling();\n        if (PEAR::isError($a)) {\n            // Attempt to fallback to https automatically.\n            PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n            $this->log(1, 'Attempting fallback to https instead of http on channel \"' . $channel . '\"...');\n            $a = $this->downloadHttp('https://' . $channel . '/channel.xml', $this->ui, $tmp, $callback, false);\n            PEAR::popErrorHandling();\n            if (PEAR::isError($a)) {\n                return false;\n            }\n        }\n\n        list($a, $lastmodified) = $a;\n        if (!class_exists('PEAR_ChannelFile')) {\n            require_once 'PEAR/ChannelFile.php';\n        }\n\n        $b = new PEAR_ChannelFile;\n        if ($b->fromXmlFile($a)) {\n            unlink($a);\n            if ($this->config->get('auto_discover')) {\n                $this->_registry->addChannel($b, $lastmodified);\n                $alias = $b->getName();\n                if ($b->getName() == $this->_registry->channelName($b->getAlias())) {\n                    $alias = $b->getAlias();\n                }\n\n                $this->log(1, 'Auto-discovered channel \"' . $channel .\n                    '\", alias \"' . $alias . '\", adding to registry');\n            }\n\n            return true;\n        }\n\n        unlink($a);\n        return false;\n    }\n\n    /**\n     * For simpler unit-testing\n     * @param PEAR_Downloader\n     * @return PEAR_Downloader_Package\n     */\n    function &newDownloaderPackage(&$t)\n    {\n        if (!class_exists('PEAR_Downloader_Package')) {\n            require_once 'PEAR/Downloader/Package.php';\n        }\n        $a = &new PEAR_Downloader_Package($t);\n        return $a;\n    }\n\n    /**\n     * For simpler unit-testing\n     * @param PEAR_Config\n     * @param array\n     * @param array\n     * @param int\n     */\n    function &getDependency2Object(&$c, $i, $p, $s)\n    {\n        if (!class_exists('PEAR_Dependency2')) {\n            require_once 'PEAR/Dependency2.php';\n        }\n        $z = &new PEAR_Dependency2($c, $i, $p, $s);\n        return $z;\n    }\n\n    function &download($params)\n    {\n        if (!count($params)) {\n            $a = array();\n            return $a;\n        }\n\n        if (!isset($this->_registry)) {\n            $this->_registry = &$this->config->getRegistry();\n        }\n\n        $channelschecked = array();\n        // convert all parameters into PEAR_Downloader_Package objects\n        foreach ($params as $i => $param) {\n            $params[$i] = &$this->newDownloaderPackage($this);\n            PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n            $err = $params[$i]->initialize($param);\n            PEAR::staticPopErrorHandling();\n            if (!$err) {\n                // skip parameters that were missed by preferred_state\n                continue;\n            }\n\n            if (PEAR::isError($err)) {\n                if (!isset($this->_options['soft']) && $err->getMessage() !== '') {\n                    $this->log(0, $err->getMessage());\n                }\n\n                $params[$i] = false;\n                if (is_object($param)) {\n                    $param = $param->getChannel() . '/' . $param->getPackage();\n                }\n\n                if (!isset($this->_options['soft'])) {\n                    $this->log(2, 'Package \"' . $param . '\" is not valid');\n                }\n\n                // Message logged above in a specific verbose mode, passing null to not show up on CLI\n                $this->pushError(null, PEAR_INSTALLER_SKIPPED);\n            } else {\n                do {\n                    if ($params[$i] && $params[$i]->getType() == 'local') {\n                        // bug #7090 skip channel.xml check for local packages\n                        break;\n                    }\n\n                    if ($params[$i] && !isset($channelschecked[$params[$i]->getChannel()]) &&\n                          !isset($this->_options['offline'])\n                    ) {\n                        $channelschecked[$params[$i]->getChannel()] = true;\n                        PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n                        if (!class_exists('System')) {\n                            require_once 'System.php';\n                        }\n\n                        $curchannel = &$this->_registry->getChannel($params[$i]->getChannel());\n                        if (PEAR::isError($curchannel)) {\n                            PEAR::staticPopErrorHandling();\n                            return $this->raiseError($curchannel);\n                        }\n\n                        if (PEAR::isError($dir = $this->getDownloadDir())) {\n                            PEAR::staticPopErrorHandling();\n                            break;\n                        }\n\n                        $mirror = $this->config->get('preferred_mirror', null, $params[$i]->getChannel());\n                        $url    = 'http://' . $mirror . '/channel.xml';\n                        $a = $this->downloadHttp($url, $this->ui, $dir, null, $curchannel->lastModified());\n\n                        PEAR::staticPopErrorHandling();\n                        if (PEAR::isError($a) || !$a) {\n                            // Attempt fallback to https automatically\n                            PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n                            $a = $this->downloadHttp('https://' . $mirror .\n                                '/channel.xml', $this->ui, $dir, null, $curchannel->lastModified());\n\n                            PEAR::staticPopErrorHandling();\n                            if (PEAR::isError($a) || !$a) {\n                                break;\n                            }\n                        }\n                        $this->log(0, 'WARNING: channel \"' . $params[$i]->getChannel() . '\" has ' .\n                            'updated its protocols, use \"' . PEAR_RUNTYPE . ' channel-update ' . $params[$i]->getChannel() .\n                            '\" to update');\n                    }\n                } while (false);\n\n                if ($params[$i] && !isset($this->_options['downloadonly'])) {\n                    if (isset($this->_options['packagingroot'])) {\n                        $checkdir = $this->_prependPath(\n                            $this->config->get('php_dir', null, $params[$i]->getChannel()),\n                            $this->_options['packagingroot']);\n                    } else {\n                        $checkdir = $this->config->get('php_dir',\n                            null, $params[$i]->getChannel());\n                    }\n\n                    while ($checkdir && $checkdir != '/' && !file_exists($checkdir)) {\n                        $checkdir = dirname($checkdir);\n                    }\n\n                    if ($checkdir == '.') {\n                        $checkdir = '/';\n                    }\n\n                    if (!is_writeable($checkdir)) {\n                        return PEAR::raiseError('Cannot install, php_dir for channel \"' .\n                            $params[$i]->getChannel() . '\" is not writeable by the current user');\n                    }\n                }\n            }\n        }\n\n        unset($channelschecked);\n        PEAR_Downloader_Package::removeDuplicates($params);\n        if (!count($params)) {\n            $a = array();\n            return $a;\n        }\n\n        if (!isset($this->_options['nodeps']) && !isset($this->_options['offline'])) {\n            $reverify = true;\n            while ($reverify) {\n                $reverify = false;\n                foreach ($params as $i => $param) {\n                    //PHP Bug 40768 / PEAR Bug #10944\n                    //Nested foreaches fail in PHP 5.2.1\n                    key($params);\n                    $ret = $params[$i]->detectDependencies($params);\n                    if (PEAR::isError($ret)) {\n                        $reverify = true;\n                        $params[$i] = false;\n                        PEAR_Downloader_Package::removeDuplicates($params);\n                        if (!isset($this->_options['soft'])) {\n                            $this->log(0, $ret->getMessage());\n                        }\n                        continue 2;\n                    }\n                }\n            }\n        }\n\n        if (isset($this->_options['offline'])) {\n            $this->log(3, 'Skipping dependency download check, --offline specified');\n        }\n\n        if (!count($params)) {\n            $a = array();\n            return $a;\n        }\n\n        while (PEAR_Downloader_Package::mergeDependencies($params));\n        PEAR_Downloader_Package::removeDuplicates($params, true);\n        $errorparams = array();\n        if (PEAR_Downloader_Package::detectStupidDuplicates($params, $errorparams)) {\n            if (count($errorparams)) {\n                foreach ($errorparams as $param) {\n                    $name = $this->_registry->parsedPackageNameToString($param->getParsedPackage());\n                    $this->pushError('Duplicate package ' . $name . ' found', PEAR_INSTALLER_FAILED);\n                }\n                $a = array();\n                return $a;\n            }\n        }\n\n        PEAR_Downloader_Package::removeInstalled($params);\n        if (!count($params)) {\n            $this->pushError('No valid packages found', PEAR_INSTALLER_FAILED);\n            $a = array();\n            return $a;\n        }\n\n        PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n        $err = $this->analyzeDependencies($params);\n        PEAR::popErrorHandling();\n        if (!count($params)) {\n            $this->pushError('No valid packages found', PEAR_INSTALLER_FAILED);\n            $a = array();\n            return $a;\n        }\n\n        $ret = array();\n        $newparams = array();\n        if (isset($this->_options['pretend'])) {\n            return $params;\n        }\n\n        $somefailed = false;\n        foreach ($params as $i => $package) {\n            PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n            $pf = &$params[$i]->download();\n            PEAR::staticPopErrorHandling();\n            if (PEAR::isError($pf)) {\n                if (!isset($this->_options['soft'])) {\n                    $this->log(1, $pf->getMessage());\n                    $this->log(0, 'Error: cannot download \"' .\n                        $this->_registry->parsedPackageNameToString($package->getParsedPackage(),\n                            true) .\n                        '\"');\n                }\n                $somefailed = true;\n                continue;\n            }\n\n            $newparams[] = &$params[$i];\n            $ret[] = array(\n                'file' => $pf->getArchiveFile(),\n                'info' => &$pf,\n                'pkg'  => $pf->getPackage()\n            );\n        }\n\n        if ($somefailed) {\n            // remove params that did not download successfully\n            PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n            $err = $this->analyzeDependencies($newparams, true);\n            PEAR::popErrorHandling();\n            if (!count($newparams)) {\n                $this->pushError('Download failed', PEAR_INSTALLER_FAILED);\n                $a = array();\n                return $a;\n            }\n        }\n\n        $this->_downloadedPackages = $ret;\n        return $newparams;\n    }\n\n    /**\n     * @param array all packages to be installed\n     */\n    function analyzeDependencies(&$params, $force = false)\n    {\n        if (isset($this->_options['downloadonly'])) {\n            return;\n        }\n\n        PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n        $redo  = true;\n        $reset = $hasfailed = $failed = false;\n        while ($redo) {\n            $redo = false;\n            foreach ($params as $i => $param) {\n                $deps = $param->getDeps();\n                if (!$deps) {\n                    $depchecker = &$this->getDependency2Object($this->config, $this->getOptions(),\n                        $param->getParsedPackage(), PEAR_VALIDATE_DOWNLOADING);\n                    $send = $param->getPackageFile();\n\n                    $installcheck = $depchecker->validatePackage($send, $this, $params);\n                    if (PEAR::isError($installcheck)) {\n                        if (!isset($this->_options['soft'])) {\n                            $this->log(0, $installcheck->getMessage());\n                        }\n                        $hasfailed  = true;\n                        $params[$i] = false;\n                        $reset      = true;\n                        $redo       = true;\n                        $failed     = false;\n                        PEAR_Downloader_Package::removeDuplicates($params);\n                        continue 2;\n                    }\n                    continue;\n                }\n\n                if (!$reset && $param->alreadyValidated() && !$force) {\n                    continue;\n                }\n\n                if (count($deps)) {\n                    $depchecker = &$this->getDependency2Object($this->config, $this->getOptions(),\n                        $param->getParsedPackage(), PEAR_VALIDATE_DOWNLOADING);\n                    $send = $param->getPackageFile();\n                    if ($send === null) {\n                        $send = $param->getDownloadURL();\n                    }\n\n                    $installcheck = $depchecker->validatePackage($send, $this, $params);\n                    if (PEAR::isError($installcheck)) {\n                        if (!isset($this->_options['soft'])) {\n                            $this->log(0, $installcheck->getMessage());\n                        }\n                        $hasfailed  = true;\n                        $params[$i] = false;\n                        $reset      = true;\n                        $redo       = true;\n                        $failed     = false;\n                        PEAR_Downloader_Package::removeDuplicates($params);\n                        continue 2;\n                    }\n\n                    $failed = false;\n                    if (isset($deps['required'])) {\n                        foreach ($deps['required'] as $type => $dep) {\n                            // note: Dependency2 will never return a PEAR_Error if ignore-errors\n                            // is specified, so soft is needed to turn off logging\n                            if (!isset($dep[0])) {\n                                if (PEAR::isError($e = $depchecker->{\"validate{$type}Dependency\"}($dep,\n                                      true, $params))) {\n                                    $failed = true;\n                                    if (!isset($this->_options['soft'])) {\n                                        $this->log(0, $e->getMessage());\n                                    }\n                                } elseif (is_array($e) && !$param->alreadyValidated()) {\n                                    if (!isset($this->_options['soft'])) {\n                                        $this->log(0, $e[0]);\n                                    }\n                                }\n                            } else {\n                                foreach ($dep as $d) {\n                                    if (PEAR::isError($e =\n                                          $depchecker->{\"validate{$type}Dependency\"}($d,\n                                          true, $params))) {\n                                        $failed = true;\n                                        if (!isset($this->_options['soft'])) {\n                                            $this->log(0, $e->getMessage());\n                                        }\n                                    } elseif (is_array($e) && !$param->alreadyValidated()) {\n                                        if (!isset($this->_options['soft'])) {\n                                            $this->log(0, $e[0]);\n                                        }\n                                    }\n                                }\n                            }\n                        }\n\n                        if (isset($deps['optional'])) {\n                            foreach ($deps['optional'] as $type => $dep) {\n                                if (!isset($dep[0])) {\n                                    if (PEAR::isError($e =\n                                          $depchecker->{\"validate{$type}Dependency\"}($dep,\n                                          false, $params))) {\n                                        $failed = true;\n                                        if (!isset($this->_options['soft'])) {\n                                            $this->log(0, $e->getMessage());\n                                        }\n                                    } elseif (is_array($e) && !$param->alreadyValidated()) {\n                                        if (!isset($this->_options['soft'])) {\n                                            $this->log(0, $e[0]);\n                                        }\n                                    }\n                                } else {\n                                    foreach ($dep as $d) {\n                                        if (PEAR::isError($e =\n                                              $depchecker->{\"validate{$type}Dependency\"}($d,\n                                              false, $params))) {\n                                            $failed = true;\n                                            if (!isset($this->_options['soft'])) {\n                                                $this->log(0, $e->getMessage());\n                                            }\n                                        } elseif (is_array($e) && !$param->alreadyValidated()) {\n                                            if (!isset($this->_options['soft'])) {\n                                                $this->log(0, $e[0]);\n                                            }\n                                        }\n                                    }\n                                }\n                            }\n                        }\n\n                        $groupname = $param->getGroup();\n                        if (isset($deps['group']) && $groupname) {\n                            if (!isset($deps['group'][0])) {\n                                $deps['group'] = array($deps['group']);\n                            }\n\n                            $found = false;\n                            foreach ($deps['group'] as $group) {\n                                if ($group['attribs']['name'] == $groupname) {\n                                    $found = true;\n                                    break;\n                                }\n                            }\n\n                            if ($found) {\n                                unset($group['attribs']);\n                                foreach ($group as $type => $dep) {\n                                    if (!isset($dep[0])) {\n                                        if (PEAR::isError($e =\n                                              $depchecker->{\"validate{$type}Dependency\"}($dep,\n                                              false, $params))) {\n                                            $failed = true;\n                                            if (!isset($this->_options['soft'])) {\n                                                $this->log(0, $e->getMessage());\n                                            }\n                                        } elseif (is_array($e) && !$param->alreadyValidated()) {\n                                            if (!isset($this->_options['soft'])) {\n                                                $this->log(0, $e[0]);\n                                            }\n                                        }\n                                    } else {\n                                        foreach ($dep as $d) {\n                                            if (PEAR::isError($e =\n                                                  $depchecker->{\"validate{$type}Dependency\"}($d,\n                                                  false, $params))) {\n                                                $failed = true;\n                                                if (!isset($this->_options['soft'])) {\n                                                    $this->log(0, $e->getMessage());\n                                                }\n                                            } elseif (is_array($e) && !$param->alreadyValidated()) {\n                                                if (!isset($this->_options['soft'])) {\n                                                    $this->log(0, $e[0]);\n                                                }\n                                            }\n                                        }\n                                    }\n                                }\n                            }\n                        }\n                    } else {\n                        foreach ($deps as $dep) {\n                            if (PEAR::isError($e = $depchecker->validateDependency1($dep, $params))) {\n                                $failed = true;\n                                if (!isset($this->_options['soft'])) {\n                                    $this->log(0, $e->getMessage());\n                                }\n                            } elseif (is_array($e) && !$param->alreadyValidated()) {\n                                if (!isset($this->_options['soft'])) {\n                                    $this->log(0, $e[0]);\n                                }\n                            }\n                        }\n                    }\n                    $params[$i]->setValidated();\n                }\n\n                if ($failed) {\n                    $hasfailed  = true;\n                    $params[$i] = false;\n                    $reset      = true;\n                    $redo       = true;\n                    $failed     = false;\n                    PEAR_Downloader_Package::removeDuplicates($params);\n                    continue 2;\n                }\n            }\n        }\n\n        PEAR::staticPopErrorHandling();\n        if ($hasfailed && (isset($this->_options['ignore-errors']) ||\n              isset($this->_options['nodeps']))) {\n            // this is probably not needed, but just in case\n            if (!isset($this->_options['soft'])) {\n                $this->log(0, 'WARNING: dependencies failed');\n            }\n        }\n    }\n\n    /**\n     * Retrieve the directory that downloads will happen in\n     * @access private\n     * @return string\n     */\n    function getDownloadDir()\n    {\n        if (isset($this->_downloadDir)) {\n            return $this->_downloadDir;\n        }\n\n        $downloaddir = $this->config->get('download_dir');\n        if (empty($downloaddir) || (is_dir($downloaddir) && !is_writable($downloaddir))) {\n            if  (is_dir($downloaddir) && !is_writable($downloaddir)) {\n                $this->log(0, 'WARNING: configuration download directory \"' . $downloaddir .\n                    '\" is not writeable.  Change download_dir config variable to ' .\n                    'a writeable dir to avoid this warning');\n            }\n\n            if (!class_exists('System')) {\n                require_once 'System.php';\n            }\n\n            if (PEAR::isError($downloaddir = System::mktemp('-d'))) {\n                return $downloaddir;\n            }\n            $this->log(3, '+ tmp dir created at ' . $downloaddir);\n        }\n\n        if (!is_writable($downloaddir)) {\n            if (PEAR::isError(System::mkdir(array('-p', $downloaddir))) ||\n                  !is_writable($downloaddir)) {\n                return PEAR::raiseError('download directory \"' . $downloaddir .\n                    '\" is not writeable.  Change download_dir config variable to ' .\n                    'a writeable dir');\n            }\n        }\n\n        return $this->_downloadDir = $downloaddir;\n    }\n\n    function setDownloadDir($dir)\n    {\n        if (!@is_writable($dir)) {\n            if (PEAR::isError(System::mkdir(array('-p', $dir)))) {\n                return PEAR::raiseError('download directory \"' . $dir .\n                    '\" is not writeable.  Change download_dir config variable to ' .\n                    'a writeable dir');\n            }\n        }\n        $this->_downloadDir = $dir;\n    }\n\n    function configSet($key, $value, $layer = 'user', $channel = false)\n    {\n        $this->config->set($key, $value, $layer, $channel);\n        $this->_preferredState = $this->config->get('preferred_state', null, $channel);\n        if (!$this->_preferredState) {\n            // don't inadvertantly use a non-set preferred_state\n            $this->_preferredState = null;\n        }\n    }\n\n    function setOptions($options)\n    {\n        $this->_options = $options;\n    }\n\n    function getOptions()\n    {\n        return $this->_options;\n    }\n\n\n    /**\n     * @param array output of {@link parsePackageName()}\n     * @access private\n     */\n    function _getPackageDownloadUrl($parr)\n    {\n        $curchannel = $this->config->get('default_channel');\n        $this->configSet('default_channel', $parr['channel']);\n        // getDownloadURL returns an array.  On error, it only contains information\n        // on the latest release as array(version, info).  On success it contains\n        // array(version, info, download url string)\n        $state = isset($parr['state']) ? $parr['state'] : $this->config->get('preferred_state');\n        if (!$this->_registry->channelExists($parr['channel'])) {\n            do {\n                if ($this->config->get('auto_discover') && $this->discover($parr['channel'])) {\n                    break;\n                }\n\n                $this->configSet('default_channel', $curchannel);\n                return PEAR::raiseError('Unknown remote channel: ' . $parr['channel']);\n            } while (false);\n        }\n\n        $chan = &$this->_registry->getChannel($parr['channel']);\n        if (PEAR::isError($chan)) {\n            return $chan;\n        }\n\n        PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n        $version   = $this->_registry->packageInfo($parr['package'], 'version', $parr['channel']);\n        $stability = $this->_registry->packageInfo($parr['package'], 'stability', $parr['channel']);\n        // package is installed - use the installed release stability level\n        if (!isset($parr['state']) && $stability !== null) {\n            $state = $stability['release'];\n        }\n        PEAR::staticPopErrorHandling();\n        $base2 = false;\n\n        $preferred_mirror = $this->config->get('preferred_mirror');\n        if (!$chan->supportsREST($preferred_mirror) ||\n              (\n               !($base2 = $chan->getBaseURL('REST1.3', $preferred_mirror))\n               &&\n               !($base = $chan->getBaseURL('REST1.0', $preferred_mirror))\n              )\n        ) {\n            return $this->raiseError($parr['channel'] . ' is using a unsupported protocol - This should never happen.');\n        }\n\n        if ($base2) {\n            $rest = &$this->config->getREST('1.3', $this->_options);\n            $base = $base2;\n        } else {\n            $rest = &$this->config->getREST('1.0', $this->_options);\n        }\n\n        $downloadVersion = false;\n        if (!isset($parr['version']) && !isset($parr['state']) && $version\n              && !PEAR::isError($version)\n              && !isset($this->_options['downloadonly'])\n        ) {\n            $downloadVersion = $version;\n        }\n\n        $url = $rest->getDownloadURL($base, $parr, $state, $downloadVersion, $chan->getName());\n        if (PEAR::isError($url)) {\n            $this->configSet('default_channel', $curchannel);\n            return $url;\n        }\n\n        if ($parr['channel'] != $curchannel) {\n            $this->configSet('default_channel', $curchannel);\n        }\n\n        if (!is_array($url)) {\n            return $url;\n        }\n\n        $url['raw'] = false; // no checking is necessary for REST\n        if (!is_array($url['info'])) {\n            return PEAR::raiseError('Invalid remote dependencies retrieved from REST - ' .\n                'this should never happen');\n        }\n\n        if (!isset($this->_options['force']) &&\n              !isset($this->_options['downloadonly']) &&\n              $version &&\n              !PEAR::isError($version) &&\n              !isset($parr['group'])\n        ) {\n            if (version_compare($version, $url['version'], '=')) {\n                return PEAR::raiseError($this->_registry->parsedPackageNameToString(\n                    $parr, true) . ' is already installed and is the same as the ' .\n                    'released version ' . $url['version'], -976);\n            }\n\n            if (version_compare($version, $url['version'], '>')) {\n                return PEAR::raiseError($this->_registry->parsedPackageNameToString(\n                    $parr, true) . ' is already installed and is newer than detected ' .\n                    'released version ' . $url['version'], -976);\n            }\n        }\n\n        if (isset($url['info']['required']) || $url['compatible']) {\n            require_once 'PEAR/PackageFile/v2.php';\n            $pf = new PEAR_PackageFile_v2;\n            $pf->setRawChannel($parr['channel']);\n            if ($url['compatible']) {\n                $pf->setRawCompatible($url['compatible']);\n            }\n        } else {\n            require_once 'PEAR/PackageFile/v1.php';\n            $pf = new PEAR_PackageFile_v1;\n        }\n\n        $pf->setRawPackage($url['package']);\n        $pf->setDeps($url['info']);\n        if ($url['compatible']) {\n            $pf->setCompatible($url['compatible']);\n        }\n\n        $pf->setRawState($url['stability']);\n        $url['info'] = &$pf;\n        if (!extension_loaded(\"zlib\") || isset($this->_options['nocompress'])) {\n            $ext = '.tar';\n        } else {\n            $ext = '.tgz';\n        }\n\n        if (is_array($url) && isset($url['url'])) {\n            $url['url'] .= $ext;\n        }\n\n        return $url;\n    }\n\n    /**\n     * @param array dependency array\n     * @access private\n     */\n    function _getDepPackageDownloadUrl($dep, $parr)\n    {\n        $xsdversion = isset($dep['rel']) ? '1.0' : '2.0';\n        $curchannel = $this->config->get('default_channel');\n        if (isset($dep['uri'])) {\n            $xsdversion = '2.0';\n            $chan = &$this->_registry->getChannel('__uri');\n            if (PEAR::isError($chan)) {\n                return $chan;\n            }\n\n            $version = $this->_registry->packageInfo($dep['name'], 'version', '__uri');\n            $this->configSet('default_channel', '__uri');\n        } else {\n            if (isset($dep['channel'])) {\n                $remotechannel = $dep['channel'];\n            } else {\n                $remotechannel = 'pear.php.net';\n            }\n\n            if (!$this->_registry->channelExists($remotechannel)) {\n                do {\n                    if ($this->config->get('auto_discover')) {\n                        if ($this->discover($remotechannel)) {\n                            break;\n                        }\n                    }\n                    return PEAR::raiseError('Unknown remote channel: ' . $remotechannel);\n                } while (false);\n            }\n\n            $chan = &$this->_registry->getChannel($remotechannel);\n            if (PEAR::isError($chan)) {\n                return $chan;\n            }\n\n            $version = $this->_registry->packageInfo($dep['name'], 'version', $remotechannel);\n            $this->configSet('default_channel', $remotechannel);\n        }\n\n        $state = isset($parr['state']) ? $parr['state'] : $this->config->get('preferred_state');\n        if (isset($parr['state']) && isset($parr['version'])) {\n            unset($parr['state']);\n        }\n\n        if (isset($dep['uri'])) {\n            $info = &$this->newDownloaderPackage($this);\n            PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n            $err = $info->initialize($dep);\n            PEAR::staticPopErrorHandling();\n            if (!$err) {\n                // skip parameters that were missed by preferred_state\n                return PEAR::raiseError('Cannot initialize dependency');\n            }\n\n            if (PEAR::isError($err)) {\n                if (!isset($this->_options['soft'])) {\n                    $this->log(0, $err->getMessage());\n                }\n\n                if (is_object($info)) {\n                    $param = $info->getChannel() . '/' . $info->getPackage();\n                }\n                return PEAR::raiseError('Package \"' . $param . '\" is not valid');\n            }\n            return $info;\n        } elseif ($chan->supportsREST($this->config->get('preferred_mirror'))\n              &&\n                (\n                  ($base2 = $chan->getBaseURL('REST1.3', $this->config->get('preferred_mirror')))\n                    ||\n                  ($base = $chan->getBaseURL('REST1.0', $this->config->get('preferred_mirror')))\n                )\n        ) {\n            if ($base2) {\n                $base = $base2;\n                $rest = &$this->config->getREST('1.3', $this->_options);\n            } else {\n                $rest = &$this->config->getREST('1.0', $this->_options);\n            }\n\n            $url = $rest->getDepDownloadURL($base, $xsdversion, $dep, $parr,\n                    $state, $version, $chan->getName());\n            if (PEAR::isError($url)) {\n                return $url;\n            }\n\n            if ($parr['channel'] != $curchannel) {\n                $this->configSet('default_channel', $curchannel);\n            }\n\n            if (!is_array($url)) {\n                return $url;\n            }\n\n            $url['raw'] = false; // no checking is necessary for REST\n            if (!is_array($url['info'])) {\n                return PEAR::raiseError('Invalid remote dependencies retrieved from REST - ' .\n                    'this should never happen');\n            }\n\n            if (isset($url['info']['required'])) {\n                if (!class_exists('PEAR_PackageFile_v2')) {\n                    require_once 'PEAR/PackageFile/v2.php';\n                }\n                $pf = new PEAR_PackageFile_v2;\n                $pf->setRawChannel($remotechannel);\n            } else {\n                if (!class_exists('PEAR_PackageFile_v1')) {\n                    require_once 'PEAR/PackageFile/v1.php';\n                }\n                $pf = new PEAR_PackageFile_v1;\n\n            }\n            $pf->setRawPackage($url['package']);\n            $pf->setDeps($url['info']);\n            if ($url['compatible']) {\n                $pf->setCompatible($url['compatible']);\n            }\n\n            $pf->setRawState($url['stability']);\n            $url['info'] = &$pf;\n            if (!extension_loaded(\"zlib\") || isset($this->_options['nocompress'])) {\n                $ext = '.tar';\n            } else {\n                $ext = '.tgz';\n            }\n\n            if (is_array($url) && isset($url['url'])) {\n                $url['url'] .= $ext;\n            }\n\n            return $url;\n        }\n\n        return $this->raiseError($parr['channel'] . ' is using a unsupported protocol - This should never happen.');\n    }\n\n    /**\n     * @deprecated in favor of _getPackageDownloadUrl\n     */\n    function getPackageDownloadUrl($package, $version = null, $channel = false)\n    {\n        if ($version) {\n            $package .= \"-$version\";\n        }\n        if ($this === null || $this->_registry === null) {\n            $package = \"http://pear.php.net/get/$package\";\n        } else {\n            $chan = $this->_registry->getChannel($channel);\n            if (PEAR::isError($chan)) {\n                return '';\n            }\n            $package = \"http://\" . $chan->getServer() . \"/get/$package\";\n        }\n        if (!extension_loaded(\"zlib\")) {\n            $package .= '?uncompress=yes';\n        }\n        return $package;\n    }\n\n    /**\n     * Retrieve a list of downloaded packages after a call to {@link download()}.\n     *\n     * Also resets the list of downloaded packages.\n     * @return array\n     */\n    function getDownloadedPackages()\n    {\n        $ret = $this->_downloadedPackages;\n        $this->_downloadedPackages = array();\n        $this->_toDownload = array();\n        return $ret;\n    }\n\n    function _downloadCallback($msg, $params = null)\n    {\n        switch ($msg) {\n            case 'saveas':\n                $this->log(1, \"downloading $params ...\");\n                break;\n            case 'done':\n                $this->log(1, '...done: ' . number_format($params, 0, '', ',') . ' bytes');\n                break;\n            case 'bytesread':\n                static $bytes;\n                if (empty($bytes)) {\n                    $bytes = 0;\n                }\n                if (!($bytes % 10240)) {\n                    $this->log(1, '.', false);\n                }\n                $bytes += $params;\n                break;\n            case 'start':\n                if($params[1] == -1) {\n                    $length = \"Unknown size\";\n                } else {\n                    $length = number_format($params[1], 0, '', ',').\" bytes\";\n                }\n                $this->log(1, \"Starting to download {$params[0]} ($length)\");\n                break;\n        }\n        if (method_exists($this->ui, '_downloadCallback'))\n            $this->ui->_downloadCallback($msg, $params);\n    }\n\n    function _prependPath($path, $prepend)\n    {\n        if (strlen($prepend) > 0) {\n            if (OS_WINDOWS && preg_match('/^[a-z]:/i', $path)) {\n                if (preg_match('/^[a-z]:/i', $prepend)) {\n                    $prepend = substr($prepend, 2);\n                } elseif ($prepend{0} != '\\\\') {\n                    $prepend = \"\\\\$prepend\";\n                }\n                $path = substr($path, 0, 2) . $prepend . substr($path, 2);\n            } else {\n                $path = $prepend . $path;\n            }\n        }\n        return $path;\n    }\n\n    /**\n     * @param string\n     * @param integer\n     */\n    function pushError($errmsg, $code = -1)\n    {\n        array_push($this->_errorStack, array($errmsg, $code));\n    }\n\n    function getErrorMsgs()\n    {\n        $msgs = array();\n        $errs = $this->_errorStack;\n        foreach ($errs as $err) {\n            $msgs[] = $err[0];\n        }\n        $this->_errorStack = array();\n        return $msgs;\n    }\n\n    /**\n     * for BC\n     *\n     * @deprecated\n     */\n    function sortPkgDeps(&$packages, $uninstall = false)\n    {\n        $uninstall ?\n            $this->sortPackagesForUninstall($packages) :\n            $this->sortPackagesForInstall($packages);\n    }\n\n    /**\n     * Sort a list of arrays of array(downloaded packagefilename) by dependency.\n     *\n     * This uses the topological sort method from graph theory, and the\n     * Structures_Graph package to properly sort dependencies for installation.\n     * @param array an array of downloaded PEAR_Downloader_Packages\n     * @return array array of array(packagefilename, package.xml contents)\n     */\n    function sortPackagesForInstall(&$packages)\n    {\n        require_once 'Structures/Graph.php';\n        require_once 'Structures/Graph/Node.php';\n        require_once 'Structures/Graph/Manipulator/TopologicalSorter.php';\n        $depgraph = new Structures_Graph(true);\n        $nodes = array();\n        $reg = &$this->config->getRegistry();\n        foreach ($packages as $i => $package) {\n            $pname = $reg->parsedPackageNameToString(\n                array(\n                    'channel' => $package->getChannel(),\n                    'package' => strtolower($package->getPackage()),\n                ));\n            $nodes[$pname] = new Structures_Graph_Node;\n            $nodes[$pname]->setData($packages[$i]);\n            $depgraph->addNode($nodes[$pname]);\n        }\n\n        $deplinks = array();\n        foreach ($nodes as $package => $node) {\n            $pf = &$node->getData();\n            $pdeps = $pf->getDeps(true);\n            if (!$pdeps) {\n                continue;\n            }\n\n            if ($pf->getPackagexmlVersion() == '1.0') {\n                foreach ($pdeps as $dep) {\n                    if ($dep['type'] != 'pkg' ||\n                          (isset($dep['optional']) && $dep['optional'] == 'yes')) {\n                        continue;\n                    }\n\n                    $dname = $reg->parsedPackageNameToString(\n                          array(\n                              'channel' => 'pear.php.net',\n                              'package' => strtolower($dep['name']),\n                          ));\n\n                    if (isset($nodes[$dname])) {\n                        if (!isset($deplinks[$dname])) {\n                            $deplinks[$dname] = array();\n                        }\n\n                        $deplinks[$dname][$package] = 1;\n                        // dependency is in installed packages\n                        continue;\n                    }\n\n                    $dname = $reg->parsedPackageNameToString(\n                          array(\n                              'channel' => 'pecl.php.net',\n                              'package' => strtolower($dep['name']),\n                          ));\n\n                    if (isset($nodes[$dname])) {\n                        if (!isset($deplinks[$dname])) {\n                            $deplinks[$dname] = array();\n                        }\n\n                        $deplinks[$dname][$package] = 1;\n                        // dependency is in installed packages\n                        continue;\n                    }\n                }\n            } else {\n                // the only ordering we care about is:\n                // 1) subpackages must be installed before packages that depend on them\n                // 2) required deps must be installed before packages that depend on them\n                if (isset($pdeps['required']['subpackage'])) {\n                    $t = $pdeps['required']['subpackage'];\n                    if (!isset($t[0])) {\n                        $t = array($t);\n                    }\n\n                    $this->_setupGraph($t, $reg, $deplinks, $nodes, $package);\n                }\n\n                if (isset($pdeps['group'])) {\n                    if (!isset($pdeps['group'][0])) {\n                        $pdeps['group'] = array($pdeps['group']);\n                    }\n\n                    foreach ($pdeps['group'] as $group) {\n                        if (isset($group['subpackage'])) {\n                            $t = $group['subpackage'];\n                            if (!isset($t[0])) {\n                                $t = array($t);\n                            }\n\n                            $this->_setupGraph($t, $reg, $deplinks, $nodes, $package);\n                        }\n                    }\n                }\n\n                if (isset($pdeps['optional']['subpackage'])) {\n                    $t = $pdeps['optional']['subpackage'];\n                    if (!isset($t[0])) {\n                        $t = array($t);\n                    }\n\n                    $this->_setupGraph($t, $reg, $deplinks, $nodes, $package);\n                }\n\n                if (isset($pdeps['required']['package'])) {\n                    $t = $pdeps['required']['package'];\n                    if (!isset($t[0])) {\n                        $t = array($t);\n                    }\n\n                    $this->_setupGraph($t, $reg, $deplinks, $nodes, $package);\n                }\n\n                if (isset($pdeps['group'])) {\n                    if (!isset($pdeps['group'][0])) {\n                        $pdeps['group'] = array($pdeps['group']);\n                    }\n\n                    foreach ($pdeps['group'] as $group) {\n                        if (isset($group['package'])) {\n                            $t = $group['package'];\n                            if (!isset($t[0])) {\n                                $t = array($t);\n                            }\n\n                            $this->_setupGraph($t, $reg, $deplinks, $nodes, $package);\n                        }\n                    }\n                }\n            }\n        }\n\n        $this->_detectDepCycle($deplinks);\n        foreach ($deplinks as $dependent => $parents) {\n            foreach ($parents as $parent => $unused) {\n                $nodes[$dependent]->connectTo($nodes[$parent]);\n            }\n        }\n\n        $installOrder = Structures_Graph_Manipulator_TopologicalSorter::sort($depgraph);\n        $ret = array();\n        for ($i = 0, $count = count($installOrder); $i < $count; $i++) {\n            foreach ($installOrder[$i] as $index => $sortedpackage) {\n                $data = &$installOrder[$i][$index]->getData();\n                $ret[] = &$nodes[$reg->parsedPackageNameToString(\n                          array(\n                              'channel' => $data->getChannel(),\n                              'package' => strtolower($data->getPackage()),\n                          ))]->getData();\n            }\n        }\n\n        $packages = $ret;\n        return;\n    }\n\n    /**\n     * Detect recursive links between dependencies and break the cycles\n     *\n     * @param array\n     * @access private\n     */\n    function _detectDepCycle(&$deplinks)\n    {\n        do {\n            $keepgoing = false;\n            foreach ($deplinks as $dep => $parents) {\n                foreach ($parents as $parent => $unused) {\n                    // reset the parent cycle detector\n                    $this->_testCycle(null, null, null);\n                    if ($this->_testCycle($dep, $deplinks, $parent)) {\n                        $keepgoing = true;\n                        unset($deplinks[$dep][$parent]);\n                        if (count($deplinks[$dep]) == 0) {\n                            unset($deplinks[$dep]);\n                        }\n\n                        continue 3;\n                    }\n                }\n            }\n        } while ($keepgoing);\n    }\n\n    function _testCycle($test, $deplinks, $dep)\n    {\n        static $visited = array();\n        if ($test === null) {\n            $visited = array();\n            return;\n        }\n\n        // this happens when a parent has a dep cycle on another dependency\n        // but the child is not part of the cycle\n        if (isset($visited[$dep])) {\n            return false;\n        }\n\n        $visited[$dep] = 1;\n        if ($test == $dep) {\n            return true;\n        }\n\n        if (isset($deplinks[$dep])) {\n            if (in_array($test, array_keys($deplinks[$dep]), true)) {\n                return true;\n            }\n\n            foreach ($deplinks[$dep] as $parent => $unused) {\n                if ($this->_testCycle($test, $deplinks, $parent)) {\n                    return true;\n                }\n            }\n        }\n\n        return false;\n    }\n\n    /**\n     * Set up the dependency for installation parsing\n     *\n     * @param array $t dependency information\n     * @param PEAR_Registry $reg\n     * @param array $deplinks list of dependency links already established\n     * @param array $nodes all existing package nodes\n     * @param string $package parent package name\n     * @access private\n     */\n    function _setupGraph($t, $reg, &$deplinks, &$nodes, $package)\n    {\n        foreach ($t as $dep) {\n            $depchannel = !isset($dep['channel']) ? '__uri': $dep['channel'];\n            $dname = $reg->parsedPackageNameToString(\n                  array(\n                      'channel' => $depchannel,\n                      'package' => strtolower($dep['name']),\n                  ));\n\n            if (isset($nodes[$dname])) {\n                if (!isset($deplinks[$dname])) {\n                    $deplinks[$dname] = array();\n                }\n                $deplinks[$dname][$package] = 1;\n            }\n        }\n    }\n\n    function _dependsOn($a, $b)\n    {\n        return $this->_checkDepTree(strtolower($a->getChannel()), strtolower($a->getPackage()), $b);\n    }\n\n    function _checkDepTree($channel, $package, $b, $checked = array())\n    {\n        $checked[$channel][$package] = true;\n        if (!isset($this->_depTree[$channel][$package])) {\n            return false;\n        }\n\n        if (isset($this->_depTree[$channel][$package][strtolower($b->getChannel())]\n              [strtolower($b->getPackage())])) {\n            return true;\n        }\n\n        foreach ($this->_depTree[$channel][$package] as $ch => $packages) {\n            foreach ($packages as $pa => $true) {\n                if ($this->_checkDepTree($ch, $pa, $b, $checked)) {\n                    return true;\n                }\n            }\n        }\n\n        return false;\n    }\n\n    function _sortInstall($a, $b)\n    {\n        if (!$a->getDeps() && !$b->getDeps()) {\n            return 0; // neither package has dependencies, order is insignificant\n        }\n        if ($a->getDeps() && !$b->getDeps()) {\n            return 1; // $a must be installed after $b because $a has dependencies\n        }\n        if (!$a->getDeps() && $b->getDeps()) {\n            return -1; // $b must be installed after $a because $b has dependencies\n        }\n        // both packages have dependencies\n        if ($this->_dependsOn($a, $b)) {\n            return 1;\n        }\n        if ($this->_dependsOn($b, $a)) {\n            return -1;\n        }\n        return 0;\n    }\n\n    /**\n     * Download a file through HTTP.  Considers suggested file name in\n     * Content-disposition: header and can run a callback function for\n     * different events.  The callback will be called with two\n     * parameters: the callback type, and parameters.  The implemented\n     * callback types are:\n     *\n     *  'setup'       called at the very beginning, parameter is a UI object\n     *                that should be used for all output\n     *  'message'     the parameter is a string with an informational message\n     *  'saveas'      may be used to save with a different file name, the\n     *                parameter is the filename that is about to be used.\n     *                If a 'saveas' callback returns a non-empty string,\n     *                that file name will be used as the filename instead.\n     *                Note that $save_dir will not be affected by this, only\n     *                the basename of the file.\n     *  'start'       download is starting, parameter is number of bytes\n     *                that are expected, or -1 if unknown\n     *  'bytesread'   parameter is the number of bytes read so far\n     *  'done'        download is complete, parameter is the total number\n     *                of bytes read\n     *  'connfailed'  if the TCP/SSL connection fails, this callback is called\n     *                with array(host,port,errno,errmsg)\n     *  'writefailed' if writing to disk fails, this callback is called\n     *                with array(destfile,errmsg)\n     *\n     * If an HTTP proxy has been configured (http_proxy PEAR_Config\n     * setting), the proxy will be used.\n     *\n     * @param string  $url       the URL to download\n     * @param object  $ui        PEAR_Frontend_* instance\n     * @param object  $config    PEAR_Config instance\n     * @param string  $save_dir  directory to save file in\n     * @param mixed   $callback  function/method to call for status\n     *                           updates\n     * @param false|string|array $lastmodified header values to check against for caching\n     *                           use false to return the header values from this download\n     * @param false|array $accept Accept headers to send\n     * @param false|string $channel Channel to use for retrieving authentication\n     * @return string|array  Returns the full path of the downloaded file or a PEAR\n     *                       error on failure.  If the error is caused by\n     *                       socket-related errors, the error object will\n     *                       have the fsockopen error code available through\n     *                       getCode().  If caching is requested, then return the header\n     *                       values.\n     *\n     * @access public\n     */\n    function downloadHttp($url, &$ui, $save_dir = '.', $callback = null, $lastmodified = null,\n                          $accept = false, $channel = false)\n    {\n        static $redirect = 0;\n        // always reset , so we are clean case of error\n        $wasredirect = $redirect;\n        $redirect = 0;\n        if ($callback) {\n            call_user_func($callback, 'setup', array(&$ui));\n        }\n\n        $info = parse_url($url);\n        if (!isset($info['scheme']) || !in_array($info['scheme'], array('http', 'https'))) {\n            return PEAR::raiseError('Cannot download non-http URL \"' . $url . '\"');\n        }\n\n        if (!isset($info['host'])) {\n            return PEAR::raiseError('Cannot download from non-URL \"' . $url . '\"');\n        }\n\n        $host = isset($info['host']) ? $info['host'] : null;\n        $port = isset($info['port']) ? $info['port'] : null;\n        $path = isset($info['path']) ? $info['path'] : null;\n\n        if (isset($this)) {\n            $config = &$this->config;\n        } else {\n            $config = &PEAR_Config::singleton();\n        }\n\n        $proxy_host = $proxy_port = $proxy_user = $proxy_pass = '';\n        if ($config->get('http_proxy') &&\n              $proxy = parse_url($config->get('http_proxy'))) {\n            $proxy_host = isset($proxy['host']) ? $proxy['host'] : null;\n            if (isset($proxy['scheme']) && $proxy['scheme'] == 'https') {\n                $proxy_host = 'ssl://' . $proxy_host;\n            }\n            $proxy_port = isset($proxy['port']) ? $proxy['port'] : 8080;\n            $proxy_user = isset($proxy['user']) ? urldecode($proxy['user']) : null;\n            $proxy_pass = isset($proxy['pass']) ? urldecode($proxy['pass']) : null;\n\n            if ($callback) {\n                call_user_func($callback, 'message', \"Using HTTP proxy $host:$port\");\n            }\n        }\n\n        if (empty($port)) {\n            $port = (isset($info['scheme']) && $info['scheme'] == 'https') ? 443 : 80;\n        }\n\n        $scheme = (isset($info['scheme']) && $info['scheme'] == 'https') ? 'https' : 'http';\n\n        if ($proxy_host != '') {\n            $fp = @fsockopen($proxy_host, $proxy_port, $errno, $errstr);\n            if (!$fp) {\n                if ($callback) {\n                    call_user_func($callback, 'connfailed', array($proxy_host, $proxy_port,\n                                                                  $errno, $errstr));\n                }\n                return PEAR::raiseError(\"Connection to `$proxy_host:$proxy_port' failed: $errstr\", $errno);\n            }\n\n            if ($lastmodified === false || $lastmodified) {\n                $request  = \"GET $url HTTP/1.1\\r\\n\";\n                $request .= \"Host: $host\\r\\n\";\n            } else {\n                $request  = \"GET $url HTTP/1.0\\r\\n\";\n                $request .= \"Host: $host\\r\\n\";\n            }\n        } else {\n            $network_host = $host;\n            if (isset($info['scheme']) && $info['scheme'] == 'https') {\n                $network_host = 'ssl://' . $host;\n            }\n\n            $fp = @fsockopen($network_host, $port, $errno, $errstr);\n            if (!$fp) {\n                if ($callback) {\n                    call_user_func($callback, 'connfailed', array($host, $port,\n                                                                  $errno, $errstr));\n                }\n                return PEAR::raiseError(\"Connection to `$host:$port' failed: $errstr\", $errno);\n            }\n\n            if ($lastmodified === false || $lastmodified) {\n                $request = \"GET $path HTTP/1.1\\r\\n\";\n                $request .= \"Host: $host\\r\\n\";\n            } else {\n                $request = \"GET $path HTTP/1.0\\r\\n\";\n                $request .= \"Host: $host\\r\\n\";\n            }\n        }\n\n        $ifmodifiedsince = '';\n        if (is_array($lastmodified)) {\n            if (isset($lastmodified['Last-Modified'])) {\n                $ifmodifiedsince = 'If-Modified-Since: ' . $lastmodified['Last-Modified'] . \"\\r\\n\";\n            }\n\n            if (isset($lastmodified['ETag'])) {\n                $ifmodifiedsince .= \"If-None-Match: $lastmodified[ETag]\\r\\n\";\n            }\n        } else {\n            $ifmodifiedsince = ($lastmodified ? \"If-Modified-Since: $lastmodified\\r\\n\" : '');\n        }\n\n        $request .= $ifmodifiedsince .\n            \"User-Agent: PEAR/1.9.1/PHP/\" . PHP_VERSION . \"\\r\\n\";\n\n        if (isset($this)) { // only pass in authentication for non-static calls\n            $username = $config->get('username', null, $channel);\n            $password = $config->get('password', null, $channel);\n            if ($username && $password) {\n                $tmp = base64_encode(\"$username:$password\");\n                $request .= \"Authorization: Basic $tmp\\r\\n\";\n            }\n        }\n\n        if ($proxy_host != '' && $proxy_user != '') {\n            $request .= 'Proxy-Authorization: Basic ' .\n                base64_encode($proxy_user . ':' . $proxy_pass) . \"\\r\\n\";\n        }\n\n        if ($accept) {\n            $request .= 'Accept: ' . implode(', ', $accept) . \"\\r\\n\";\n        }\n\n        $request .= \"Connection: close\\r\\n\";\n        $request .= \"\\r\\n\";\n        fwrite($fp, $request);\n        $headers = array();\n        $reply = 0;\n        while (trim($line = fgets($fp, 1024))) {\n            if (preg_match('/^([^:]+):\\s+(.*)\\s*\\\\z/', $line, $matches)) {\n                $headers[strtolower($matches[1])] = trim($matches[2]);\n            } elseif (preg_match('|^HTTP/1.[01] ([0-9]{3}) |', $line, $matches)) {\n                $reply = (int)$matches[1];\n                if ($reply == 304 && ($lastmodified || ($lastmodified === false))) {\n                    return false;\n                }\n\n                if (!in_array($reply, array(200, 301, 302, 303, 305, 307))) {\n                    return PEAR::raiseError(\"File $scheme://$host:$port$path not valid (received: $line)\");\n                }\n            }\n        }\n\n        if ($reply != 200) {\n            if (!isset($headers['location'])) {\n                return PEAR::raiseError(\"File $scheme://$host:$port$path not valid (redirected but no location)\");\n            }\n\n            if ($wasredirect > 4) {\n                return PEAR::raiseError(\"File $scheme://$host:$port$path not valid (redirection looped more than 5 times)\");\n            }\n\n            $redirect = $wasredirect + 1;\n            return $this->downloadHttp($headers['location'],\n                    $ui, $save_dir, $callback, $lastmodified, $accept);\n        }\n\n        if (isset($headers['content-disposition']) &&\n            preg_match('/\\sfilename=\\\"([^;]*\\S)\\\"\\s*(;|\\\\z)/', $headers['content-disposition'], $matches)) {\n            $save_as = basename($matches[1]);\n        } else {\n            $save_as = basename($url);\n        }\n\n        if ($callback) {\n            $tmp = call_user_func($callback, 'saveas', $save_as);\n            if ($tmp) {\n                $save_as = $tmp;\n            }\n        }\n\n        $dest_file = $save_dir . DIRECTORY_SEPARATOR . $save_as;\n        if (is_link($dest_file)) {\n            return PEAR::raiseError('SECURITY ERROR: Will not write to ' . $dest_file . ' as it is symlinked to ' . readlink($dest_file) . ' - Possible symlink attack');\n        }\n\n        if (!$wp = @fopen($dest_file, 'wb')) {\n            fclose($fp);\n            if ($callback) {\n                call_user_func($callback, 'writefailed', array($dest_file, $php_errormsg));\n            }\n            return PEAR::raiseError(\"could not open $dest_file for writing\");\n        }\n\n        $length = isset($headers['content-length']) ? $headers['content-length'] : -1;\n\n        $bytes = 0;\n        if ($callback) {\n            call_user_func($callback, 'start', array(basename($dest_file), $length));\n        }\n\n        while ($data = fread($fp, 1024)) {\n            $bytes += strlen($data);\n            if ($callback) {\n                call_user_func($callback, 'bytesread', $bytes);\n            }\n            if (!@fwrite($wp, $data)) {\n                fclose($fp);\n                if ($callback) {\n                    call_user_func($callback, 'writefailed', array($dest_file, $php_errormsg));\n                }\n                return PEAR::raiseError(\"$dest_file: write failed ($php_errormsg)\");\n            }\n        }\n\n        fclose($fp);\n        fclose($wp);\n        if ($callback) {\n            call_user_func($callback, 'done', $bytes);\n        }\n\n        if ($lastmodified === false || $lastmodified) {\n            if (isset($headers['etag'])) {\n                $lastmodified = array('ETag' => $headers['etag']);\n            }\n\n            if (isset($headers['last-modified'])) {\n                if (is_array($lastmodified)) {\n                    $lastmodified['Last-Modified'] = $headers['last-modified'];\n                } else {\n                    $lastmodified = $headers['last-modified'];\n                }\n            }\n            return array($dest_file, $lastmodified, $headers);\n        }\n        return $dest_file;\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/ErrorStack.php",
    "content": "<?php\n/**\n * Error Stack Implementation\n * \n * This is an incredibly simple implementation of a very complex error handling\n * facility.  It contains the ability\n * to track multiple errors from multiple packages simultaneously.  In addition,\n * it can track errors of many levels, save data along with the error, context\n * information such as the exact file, line number, class and function that\n * generated the error, and if necessary, it can raise a traditional PEAR_Error.\n * It has built-in support for PEAR::Log, to log errors as they occur\n * \n * Since version 0.2alpha, it is also possible to selectively ignore errors,\n * through the use of an error callback, see {@link pushCallback()}\n * \n * Since version 0.3alpha, it is possible to specify the exception class\n * returned from {@link push()}\n *\n * Since version PEAR1.3.2, ErrorStack no longer instantiates an exception class.  This can\n * still be done quite handily in an error callback or by manipulating the returned array\n * @category   Debugging\n * @package    PEAR_ErrorStack\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  2004-2008 Greg Beaver\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: ErrorStack.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR_ErrorStack\n */\n\n/**\n * Singleton storage\n * \n * Format:\n * <pre>\n * array(\n *  'package1' => PEAR_ErrorStack object,\n *  'package2' => PEAR_ErrorStack object,\n *  ...\n * )\n * </pre>\n * @access private\n * @global array $GLOBALS['_PEAR_ERRORSTACK_SINGLETON']\n */\n$GLOBALS['_PEAR_ERRORSTACK_SINGLETON'] = array();\n\n/**\n * Global error callback (default)\n * \n * This is only used if set to non-false.  * is the default callback for\n * all packages, whereas specific packages may set a default callback\n * for all instances, regardless of whether they are a singleton or not.\n *\n * To exclude non-singletons, only set the local callback for the singleton\n * @see PEAR_ErrorStack::setDefaultCallback()\n * @access private\n * @global array $GLOBALS['_PEAR_ERRORSTACK_DEFAULT_CALLBACK']\n */\n$GLOBALS['_PEAR_ERRORSTACK_DEFAULT_CALLBACK'] = array(\n    '*' => false,\n);\n\n/**\n * Global Log object (default)\n * \n * This is only used if set to non-false.  Use to set a default log object for\n * all stacks, regardless of instantiation order or location\n * @see PEAR_ErrorStack::setDefaultLogger()\n * @access private\n * @global array $GLOBALS['_PEAR_ERRORSTACK_DEFAULT_LOGGER']\n */\n$GLOBALS['_PEAR_ERRORSTACK_DEFAULT_LOGGER'] = false;\n\n/**\n * Global Overriding Callback\n * \n * This callback will override any error callbacks that specific loggers have set.\n * Use with EXTREME caution\n * @see PEAR_ErrorStack::staticPushCallback()\n * @access private\n * @global array $GLOBALS['_PEAR_ERRORSTACK_DEFAULT_LOGGER']\n */\n$GLOBALS['_PEAR_ERRORSTACK_OVERRIDE_CALLBACK'] = array();\n\n/**#@+\n * One of four possible return values from the error Callback\n * @see PEAR_ErrorStack::_errorCallback()\n */\n/**\n * If this is returned, then the error will be both pushed onto the stack\n * and logged.\n */\ndefine('PEAR_ERRORSTACK_PUSHANDLOG', 1);\n/**\n * If this is returned, then the error will only be pushed onto the stack,\n * and not logged.\n */\ndefine('PEAR_ERRORSTACK_PUSH', 2);\n/**\n * If this is returned, then the error will only be logged, but not pushed\n * onto the error stack.\n */\ndefine('PEAR_ERRORSTACK_LOG', 3);\n/**\n * If this is returned, then the error is completely ignored.\n */\ndefine('PEAR_ERRORSTACK_IGNORE', 4);\n/**\n * If this is returned, then the error is logged and die() is called.\n */\ndefine('PEAR_ERRORSTACK_DIE', 5);\n/**#@-*/\n\n/**\n * Error code for an attempt to instantiate a non-class as a PEAR_ErrorStack in\n * the singleton method.\n */\ndefine('PEAR_ERRORSTACK_ERR_NONCLASS', 1);\n\n/**\n * Error code for an attempt to pass an object into {@link PEAR_ErrorStack::getMessage()}\n * that has no __toString() method\n */\ndefine('PEAR_ERRORSTACK_ERR_OBJTOSTRING', 2);\n/**\n * Error Stack Implementation\n *\n * Usage:\n * <code>\n * // global error stack\n * $global_stack = &PEAR_ErrorStack::singleton('MyPackage');\n * // local error stack\n * $local_stack = new PEAR_ErrorStack('MyPackage');\n * </code>\n * @author     Greg Beaver <cellog@php.net>\n * @version    1.9.1\n * @package    PEAR_ErrorStack\n * @category   Debugging\n * @copyright  2004-2008 Greg Beaver\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: ErrorStack.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR_ErrorStack\n */\nclass PEAR_ErrorStack {\n    /**\n     * Errors are stored in the order that they are pushed on the stack.\n     * @since 0.4alpha Errors are no longer organized by error level.\n     * This renders pop() nearly unusable, and levels could be more easily\n     * handled in a callback anyway\n     * @var array\n     * @access private\n     */\n    var $_errors = array();\n\n    /**\n     * Storage of errors by level.\n     *\n     * Allows easy retrieval and deletion of only errors from a particular level\n     * @since PEAR 1.4.0dev\n     * @var array\n     * @access private\n     */\n    var $_errorsByLevel = array();\n\n    /**\n     * Package name this error stack represents\n     * @var string\n     * @access protected\n     */\n    var $_package;\n    \n    /**\n     * Determines whether a PEAR_Error is thrown upon every error addition\n     * @var boolean\n     * @access private\n     */\n    var $_compat = false;\n    \n    /**\n     * If set to a valid callback, this will be used to generate the error\n     * message from the error code, otherwise the message passed in will be\n     * used\n     * @var false|string|array\n     * @access private\n     */\n    var $_msgCallback = false;\n    \n    /**\n     * If set to a valid callback, this will be used to generate the error\n     * context for an error.  For PHP-related errors, this will be a file\n     * and line number as retrieved from debug_backtrace(), but can be\n     * customized for other purposes.  The error might actually be in a separate\n     * configuration file, or in a database query.\n     * @var false|string|array\n     * @access protected\n     */\n    var $_contextCallback = false;\n    \n    /**\n     * If set to a valid callback, this will be called every time an error\n     * is pushed onto the stack.  The return value will be used to determine\n     * whether to allow an error to be pushed or logged.\n     * \n     * The return value must be one an PEAR_ERRORSTACK_* constant\n     * @see PEAR_ERRORSTACK_PUSHANDLOG, PEAR_ERRORSTACK_PUSH, PEAR_ERRORSTACK_LOG\n     * @var false|string|array\n     * @access protected\n     */\n    var $_errorCallback = array();\n    \n    /**\n     * PEAR::Log object for logging errors\n     * @var false|Log\n     * @access protected\n     */\n    var $_logger = false;\n    \n    /**\n     * Error messages - designed to be overridden\n     * @var array\n     * @abstract\n     */\n    var $_errorMsgs = array();\n    \n    /**\n     * Set up a new error stack\n     * \n     * @param string   $package name of the package this error stack represents\n     * @param callback $msgCallback callback used for error message generation\n     * @param callback $contextCallback callback used for context generation,\n     *                 defaults to {@link getFileLine()}\n     * @param boolean  $throwPEAR_Error\n     */\n    function PEAR_ErrorStack($package, $msgCallback = false, $contextCallback = false,\n                         $throwPEAR_Error = false)\n    {\n        $this->_package = $package;\n        $this->setMessageCallback($msgCallback);\n        $this->setContextCallback($contextCallback);\n        $this->_compat = $throwPEAR_Error;\n    }\n    \n    /**\n     * Return a single error stack for this package.\n     * \n     * Note that all parameters are ignored if the stack for package $package\n     * has already been instantiated\n     * @param string   $package name of the package this error stack represents\n     * @param callback $msgCallback callback used for error message generation\n     * @param callback $contextCallback callback used for context generation,\n     *                 defaults to {@link getFileLine()}\n     * @param boolean  $throwPEAR_Error\n     * @param string   $stackClass class to instantiate\n     * @static\n     * @return PEAR_ErrorStack\n     */\n    function &singleton($package, $msgCallback = false, $contextCallback = false,\n                         $throwPEAR_Error = false, $stackClass = 'PEAR_ErrorStack')\n    {\n        if (isset($GLOBALS['_PEAR_ERRORSTACK_SINGLETON'][$package])) {\n            return $GLOBALS['_PEAR_ERRORSTACK_SINGLETON'][$package];\n        }\n        if (!class_exists($stackClass)) {\n            if (function_exists('debug_backtrace')) {\n                $trace = debug_backtrace();\n            }\n            PEAR_ErrorStack::staticPush('PEAR_ErrorStack', PEAR_ERRORSTACK_ERR_NONCLASS,\n                'exception', array('stackclass' => $stackClass),\n                'stack class \"%stackclass%\" is not a valid class name (should be like PEAR_ErrorStack)',\n                false, $trace);\n        }\n        $GLOBALS['_PEAR_ERRORSTACK_SINGLETON'][$package] =\n            new $stackClass($package, $msgCallback, $contextCallback, $throwPEAR_Error);\n\n        return $GLOBALS['_PEAR_ERRORSTACK_SINGLETON'][$package];\n    }\n\n    /**\n     * Internal error handler for PEAR_ErrorStack class\n     * \n     * Dies if the error is an exception (and would have died anyway)\n     * @access private\n     */\n    function _handleError($err)\n    {\n        if ($err['level'] == 'exception') {\n            $message = $err['message'];\n            if (isset($_SERVER['REQUEST_URI'])) {\n                echo '<br />';\n            } else {\n                echo \"\\n\";\n            }\n            var_dump($err['context']);\n            die($message);\n        }\n    }\n    \n    /**\n     * Set up a PEAR::Log object for all error stacks that don't have one\n     * @param Log $log \n     * @static\n     */\n    function setDefaultLogger(&$log)\n    {\n        if (is_object($log) && method_exists($log, 'log') ) {\n            $GLOBALS['_PEAR_ERRORSTACK_DEFAULT_LOGGER'] = &$log;\n        } elseif (is_callable($log)) {\n            $GLOBALS['_PEAR_ERRORSTACK_DEFAULT_LOGGER'] = &$log;\n\t}\n    }\n    \n    /**\n     * Set up a PEAR::Log object for this error stack\n     * @param Log $log \n     */\n    function setLogger(&$log)\n    {\n        if (is_object($log) && method_exists($log, 'log') ) {\n            $this->_logger = &$log;\n        } elseif (is_callable($log)) {\n            $this->_logger = &$log;\n        }\n    }\n    \n    /**\n     * Set an error code => error message mapping callback\n     * \n     * This method sets the callback that can be used to generate error\n     * messages for any instance\n     * @param array|string Callback function/method\n     */\n    function setMessageCallback($msgCallback)\n    {\n        if (!$msgCallback) {\n            $this->_msgCallback = array(&$this, 'getErrorMessage');\n        } else {\n            if (is_callable($msgCallback)) {\n                $this->_msgCallback = $msgCallback;\n            }\n        }\n    }\n    \n    /**\n     * Get an error code => error message mapping callback\n     * \n     * This method returns the current callback that can be used to generate error\n     * messages\n     * @return array|string|false Callback function/method or false if none\n     */\n    function getMessageCallback()\n    {\n        return $this->_msgCallback;\n    }\n    \n    /**\n     * Sets a default callback to be used by all error stacks\n     * \n     * This method sets the callback that can be used to generate error\n     * messages for a singleton\n     * @param array|string Callback function/method\n     * @param string Package name, or false for all packages\n     * @static\n     */\n    function setDefaultCallback($callback = false, $package = false)\n    {\n        if (!is_callable($callback)) {\n            $callback = false;\n        }\n        $package = $package ? $package : '*';\n        $GLOBALS['_PEAR_ERRORSTACK_DEFAULT_CALLBACK'][$package] = $callback;\n    }\n    \n    /**\n     * Set a callback that generates context information (location of error) for an error stack\n     * \n     * This method sets the callback that can be used to generate context\n     * information for an error.  Passing in NULL will disable context generation\n     * and remove the expensive call to debug_backtrace()\n     * @param array|string|null Callback function/method\n     */\n    function setContextCallback($contextCallback)\n    {\n        if ($contextCallback === null) {\n            return $this->_contextCallback = false;\n        }\n        if (!$contextCallback) {\n            $this->_contextCallback = array(&$this, 'getFileLine');\n        } else {\n            if (is_callable($contextCallback)) {\n                $this->_contextCallback = $contextCallback;\n            }\n        }\n    }\n    \n    /**\n     * Set an error Callback\n     * If set to a valid callback, this will be called every time an error\n     * is pushed onto the stack.  The return value will be used to determine\n     * whether to allow an error to be pushed or logged.\n     * \n     * The return value must be one of the ERRORSTACK_* constants.\n     * \n     * This functionality can be used to emulate PEAR's pushErrorHandling, and\n     * the PEAR_ERROR_CALLBACK mode, without affecting the integrity of\n     * the error stack or logging\n     * @see PEAR_ERRORSTACK_PUSHANDLOG, PEAR_ERRORSTACK_PUSH, PEAR_ERRORSTACK_LOG\n     * @see popCallback()\n     * @param string|array $cb\n     */\n    function pushCallback($cb)\n    {\n        array_push($this->_errorCallback, $cb);\n    }\n    \n    /**\n     * Remove a callback from the error callback stack\n     * @see pushCallback()\n     * @return array|string|false\n     */\n    function popCallback()\n    {\n        if (!count($this->_errorCallback)) {\n            return false;\n        }\n        return array_pop($this->_errorCallback);\n    }\n    \n    /**\n     * Set a temporary overriding error callback for every package error stack\n     *\n     * Use this to temporarily disable all existing callbacks (can be used\n     * to emulate the @ operator, for instance)\n     * @see PEAR_ERRORSTACK_PUSHANDLOG, PEAR_ERRORSTACK_PUSH, PEAR_ERRORSTACK_LOG\n     * @see staticPopCallback(), pushCallback()\n     * @param string|array $cb\n     * @static\n     */\n    function staticPushCallback($cb)\n    {\n        array_push($GLOBALS['_PEAR_ERRORSTACK_OVERRIDE_CALLBACK'], $cb);\n    }\n    \n    /**\n     * Remove a temporary overriding error callback\n     * @see staticPushCallback()\n     * @return array|string|false\n     * @static\n     */\n    function staticPopCallback()\n    {\n        $ret = array_pop($GLOBALS['_PEAR_ERRORSTACK_OVERRIDE_CALLBACK']);\n        if (!is_array($GLOBALS['_PEAR_ERRORSTACK_OVERRIDE_CALLBACK'])) {\n            $GLOBALS['_PEAR_ERRORSTACK_OVERRIDE_CALLBACK'] = array();\n        }\n        return $ret;\n    }\n    \n    /**\n     * Add an error to the stack\n     * \n     * If the message generator exists, it is called with 2 parameters.\n     *  - the current Error Stack object\n     *  - an array that is in the same format as an error.  Available indices\n     *    are 'code', 'package', 'time', 'params', 'level', and 'context'\n     * \n     * Next, if the error should contain context information, this is\n     * handled by the context grabbing method.\n     * Finally, the error is pushed onto the proper error stack\n     * @param int    $code      Package-specific error code\n     * @param string $level     Error level.  This is NOT spell-checked\n     * @param array  $params    associative array of error parameters\n     * @param string $msg       Error message, or a portion of it if the message\n     *                          is to be generated\n     * @param array  $repackage If this error re-packages an error pushed by\n     *                          another package, place the array returned from\n     *                          {@link pop()} in this parameter\n     * @param array  $backtrace Protected parameter: use this to pass in the\n     *                          {@link debug_backtrace()} that should be used\n     *                          to find error context\n     * @return PEAR_Error|array if compatibility mode is on, a PEAR_Error is also\n     * thrown.  If a PEAR_Error is returned, the userinfo\n     * property is set to the following array:\n     * \n     * <code>\n     * array(\n     *    'code' => $code,\n     *    'params' => $params,\n     *    'package' => $this->_package,\n     *    'level' => $level,\n     *    'time' => time(),\n     *    'context' => $context,\n     *    'message' => $msg,\n     * //['repackage' => $err] repackaged error array/Exception class\n     * );\n     * </code>\n     * \n     * Normally, the previous array is returned.\n     */\n    function push($code, $level = 'error', $params = array(), $msg = false,\n                  $repackage = false, $backtrace = false)\n    {\n        $context = false;\n        // grab error context\n        if ($this->_contextCallback) {\n            if (!$backtrace) {\n                $backtrace = debug_backtrace();\n            }\n            $context = call_user_func($this->_contextCallback, $code, $params, $backtrace);\n        }\n        \n        // save error\n        $time = explode(' ', microtime());\n        $time = $time[1] + $time[0];\n        $err = array(\n                'code' => $code,\n                'params' => $params,\n                'package' => $this->_package,\n                'level' => $level,\n                'time' => $time,\n                'context' => $context,\n                'message' => $msg,\n               );\n\n        if ($repackage) {\n            $err['repackage'] = $repackage;\n        }\n\n        // set up the error message, if necessary\n        if ($this->_msgCallback) {\n            $msg = call_user_func_array($this->_msgCallback,\n                                        array(&$this, $err));\n            $err['message'] = $msg;\n        }        \n        $push = $log = true;\n        $die = false;\n        // try the overriding callback first\n        $callback = $this->staticPopCallback();\n        if ($callback) {\n            $this->staticPushCallback($callback);\n        }\n        if (!is_callable($callback)) {\n            // try the local callback next\n            $callback = $this->popCallback();\n            if (is_callable($callback)) {\n                $this->pushCallback($callback);\n            } else {\n                // try the default callback\n                $callback = isset($GLOBALS['_PEAR_ERRORSTACK_DEFAULT_CALLBACK'][$this->_package]) ?\n                    $GLOBALS['_PEAR_ERRORSTACK_DEFAULT_CALLBACK'][$this->_package] :\n                    $GLOBALS['_PEAR_ERRORSTACK_DEFAULT_CALLBACK']['*'];\n            }\n        }\n        if (is_callable($callback)) {\n            switch(call_user_func($callback, $err)){\n            \tcase PEAR_ERRORSTACK_IGNORE: \n            \t\treturn $err;\n        \t\tbreak;\n            \tcase PEAR_ERRORSTACK_PUSH: \n            \t\t$log = false;\n        \t\tbreak;\n            \tcase PEAR_ERRORSTACK_LOG: \n            \t\t$push = false;\n        \t\tbreak;\n            \tcase PEAR_ERRORSTACK_DIE: \n            \t\t$die = true;\n        \t\tbreak;\n                // anything else returned has the same effect as pushandlog\n            }\n        }\n        if ($push) {\n            array_unshift($this->_errors, $err);\n            if (!isset($this->_errorsByLevel[$err['level']])) {\n                $this->_errorsByLevel[$err['level']] = array();\n            }\n            $this->_errorsByLevel[$err['level']][] = &$this->_errors[0];\n        }\n        if ($log) {\n            if ($this->_logger || $GLOBALS['_PEAR_ERRORSTACK_DEFAULT_LOGGER']) {\n                $this->_log($err);\n            }\n        }\n        if ($die) {\n            die();\n        }\n        if ($this->_compat && $push) {\n            return $this->raiseError($msg, $code, null, null, $err);\n        }\n        return $err;\n    }\n    \n    /**\n     * Static version of {@link push()}\n     * \n     * @param string $package   Package name this error belongs to\n     * @param int    $code      Package-specific error code\n     * @param string $level     Error level.  This is NOT spell-checked\n     * @param array  $params    associative array of error parameters\n     * @param string $msg       Error message, or a portion of it if the message\n     *                          is to be generated\n     * @param array  $repackage If this error re-packages an error pushed by\n     *                          another package, place the array returned from\n     *                          {@link pop()} in this parameter\n     * @param array  $backtrace Protected parameter: use this to pass in the\n     *                          {@link debug_backtrace()} that should be used\n     *                          to find error context\n     * @return PEAR_Error|array if compatibility mode is on, a PEAR_Error is also\n     *                          thrown.  see docs for {@link push()}\n     * @static\n     */\n    function staticPush($package, $code, $level = 'error', $params = array(),\n                        $msg = false, $repackage = false, $backtrace = false)\n    {\n        $s = &PEAR_ErrorStack::singleton($package);\n        if ($s->_contextCallback) {\n            if (!$backtrace) {\n                if (function_exists('debug_backtrace')) {\n                    $backtrace = debug_backtrace();\n                }\n            }\n        }\n        return $s->push($code, $level, $params, $msg, $repackage, $backtrace);\n    }\n    \n    /**\n     * Log an error using PEAR::Log\n     * @param array $err Error array\n     * @param array $levels Error level => Log constant map\n     * @access protected\n     */\n    function _log($err)\n    {\n        if ($this->_logger) {\n            $logger = &$this->_logger;\n        } else {\n            $logger = &$GLOBALS['_PEAR_ERRORSTACK_DEFAULT_LOGGER'];\n        }\n        if (is_a($logger, 'Log')) {\n            $levels = array(\n                'exception' => PEAR_LOG_CRIT,\n                'alert' => PEAR_LOG_ALERT,\n                'critical' => PEAR_LOG_CRIT,\n                'error' => PEAR_LOG_ERR,\n                'warning' => PEAR_LOG_WARNING,\n                'notice' => PEAR_LOG_NOTICE,\n                'info' => PEAR_LOG_INFO,\n                'debug' => PEAR_LOG_DEBUG);\n            if (isset($levels[$err['level']])) {\n                $level = $levels[$err['level']];\n            } else {\n                $level = PEAR_LOG_INFO;\n            }\n            $logger->log($err['message'], $level, $err);\n        } else { // support non-standard logs\n            call_user_func($logger, $err);\n        }\n    }\n\n    \n    /**\n     * Pop an error off of the error stack\n     * \n     * @return false|array\n     * @since 0.4alpha it is no longer possible to specify a specific error\n     * level to return - the last error pushed will be returned, instead\n     */\n    function pop()\n    {\n        $err = @array_shift($this->_errors);\n        if (!is_null($err)) {\n            @array_pop($this->_errorsByLevel[$err['level']]);\n            if (!count($this->_errorsByLevel[$err['level']])) {\n                unset($this->_errorsByLevel[$err['level']]);\n            }\n        }\n        return $err;\n    }\n\n    /**\n     * Pop an error off of the error stack, static method\n     *\n     * @param string package name\n     * @return boolean\n     * @since PEAR1.5.0a1\n     */\n    function staticPop($package)\n    {\n        if ($package) {\n            if (!isset($GLOBALS['_PEAR_ERRORSTACK_SINGLETON'][$package])) {\n                return false;\n            }\n            return $GLOBALS['_PEAR_ERRORSTACK_SINGLETON'][$package]->pop();\n        }\n    }\n\n    /**\n     * Determine whether there are any errors on the stack\n     * @param string|array Level name.  Use to determine if any errors\n     * of level (string), or levels (array) have been pushed\n     * @return boolean\n     */\n    function hasErrors($level = false)\n    {\n        if ($level) {\n            return isset($this->_errorsByLevel[$level]);\n        }\n        return count($this->_errors);\n    }\n    \n    /**\n     * Retrieve all errors since last purge\n     * \n     * @param boolean set in order to empty the error stack\n     * @param string level name, to return only errors of a particular severity\n     * @return array\n     */\n    function getErrors($purge = false, $level = false)\n    {\n        if (!$purge) {\n            if ($level) {\n                if (!isset($this->_errorsByLevel[$level])) {\n                    return array();\n                } else {\n                    return $this->_errorsByLevel[$level];\n                }\n            } else {\n                return $this->_errors;\n            }\n        }\n        if ($level) {\n            $ret = $this->_errorsByLevel[$level];\n            foreach ($this->_errorsByLevel[$level] as $i => $unused) {\n                // entries are references to the $_errors array\n                $this->_errorsByLevel[$level][$i] = false;\n            }\n            // array_filter removes all entries === false\n            $this->_errors = array_filter($this->_errors);\n            unset($this->_errorsByLevel[$level]);\n            return $ret;\n        }\n        $ret = $this->_errors;\n        $this->_errors = array();\n        $this->_errorsByLevel = array();\n        return $ret;\n    }\n    \n    /**\n     * Determine whether there are any errors on a single error stack, or on any error stack\n     *\n     * The optional parameter can be used to test the existence of any errors without the need of\n     * singleton instantiation\n     * @param string|false Package name to check for errors\n     * @param string Level name to check for a particular severity\n     * @return boolean\n     * @static\n     */\n    function staticHasErrors($package = false, $level = false)\n    {\n        if ($package) {\n            if (!isset($GLOBALS['_PEAR_ERRORSTACK_SINGLETON'][$package])) {\n                return false;\n            }\n            return $GLOBALS['_PEAR_ERRORSTACK_SINGLETON'][$package]->hasErrors($level);\n        }\n        foreach ($GLOBALS['_PEAR_ERRORSTACK_SINGLETON'] as $package => $obj) {\n            if ($obj->hasErrors($level)) {\n                return true;\n            }\n        }\n        return false;\n    }\n    \n    /**\n     * Get a list of all errors since last purge, organized by package\n     * @since PEAR 1.4.0dev BC break! $level is now in the place $merge used to be\n     * @param boolean $purge Set to purge the error stack of existing errors\n     * @param string  $level Set to a level name in order to retrieve only errors of a particular level\n     * @param boolean $merge Set to return a flat array, not organized by package\n     * @param array   $sortfunc Function used to sort a merged array - default\n     *        sorts by time, and should be good for most cases\n     * @static\n     * @return array \n     */\n    function staticGetErrors($purge = false, $level = false, $merge = false,\n                             $sortfunc = array('PEAR_ErrorStack', '_sortErrors'))\n    {\n        $ret = array();\n        if (!is_callable($sortfunc)) {\n            $sortfunc = array('PEAR_ErrorStack', '_sortErrors');\n        }\n        foreach ($GLOBALS['_PEAR_ERRORSTACK_SINGLETON'] as $package => $obj) {\n            $test = $GLOBALS['_PEAR_ERRORSTACK_SINGLETON'][$package]->getErrors($purge, $level);\n            if ($test) {\n                if ($merge) {\n                    $ret = array_merge($ret, $test);\n                } else {\n                    $ret[$package] = $test;\n                }\n            }\n        }\n        if ($merge) {\n            usort($ret, $sortfunc);\n        }\n        return $ret;\n    }\n    \n    /**\n     * Error sorting function, sorts by time\n     * @access private\n     */\n    function _sortErrors($a, $b)\n    {\n        if ($a['time'] == $b['time']) {\n            return 0;\n        }\n        if ($a['time'] < $b['time']) {\n            return 1;\n        }\n        return -1;\n    }\n\n    /**\n     * Standard file/line number/function/class context callback\n     *\n     * This function uses a backtrace generated from {@link debug_backtrace()}\n     * and so will not work at all in PHP < 4.3.0.  The frame should\n     * reference the frame that contains the source of the error.\n     * @return array|false either array('file' => file, 'line' => line,\n     *         'function' => function name, 'class' => class name) or\n     *         if this doesn't work, then false\n     * @param unused\n     * @param integer backtrace frame.\n     * @param array Results of debug_backtrace()\n     * @static\n     */\n    function getFileLine($code, $params, $backtrace = null)\n    {\n        if ($backtrace === null) {\n            return false;\n        }\n        $frame = 0;\n        $functionframe = 1;\n        if (!isset($backtrace[1])) {\n            $functionframe = 0;\n        } else {\n            while (isset($backtrace[$functionframe]['function']) &&\n                  $backtrace[$functionframe]['function'] == 'eval' &&\n                  isset($backtrace[$functionframe + 1])) {\n                $functionframe++;\n            }\n        }\n        if (isset($backtrace[$frame])) {\n            if (!isset($backtrace[$frame]['file'])) {\n                $frame++;\n            }\n            $funcbacktrace = $backtrace[$functionframe];\n            $filebacktrace = $backtrace[$frame];\n            $ret = array('file' => $filebacktrace['file'],\n                         'line' => $filebacktrace['line']);\n            // rearrange for eval'd code or create function errors\n            if (strpos($filebacktrace['file'], '(') && \n            \t  preg_match(';^(.*?)\\((\\d+)\\) : (.*?)\\\\z;', $filebacktrace['file'],\n                  $matches)) {\n                $ret['file'] = $matches[1];\n                $ret['line'] = $matches[2] + 0;\n            }\n            if (isset($funcbacktrace['function']) && isset($backtrace[1])) {\n                if ($funcbacktrace['function'] != 'eval') {\n                    if ($funcbacktrace['function'] == '__lambda_func') {\n                        $ret['function'] = 'create_function() code';\n                    } else {\n                        $ret['function'] = $funcbacktrace['function'];\n                    }\n                }\n            }\n            if (isset($funcbacktrace['class']) && isset($backtrace[1])) {\n                $ret['class'] = $funcbacktrace['class'];\n            }\n            return $ret;\n        }\n        return false;\n    }\n    \n    /**\n     * Standard error message generation callback\n     * \n     * This method may also be called by a custom error message generator\n     * to fill in template values from the params array, simply\n     * set the third parameter to the error message template string to use\n     * \n     * The special variable %__msg% is reserved: use it only to specify\n     * where a message passed in by the user should be placed in the template,\n     * like so:\n     * \n     * Error message: %msg% - internal error\n     * \n     * If the message passed like so:\n     * \n     * <code>\n     * $stack->push(ERROR_CODE, 'error', array(), 'server error 500');\n     * </code>\n     * \n     * The returned error message will be \"Error message: server error 500 -\n     * internal error\"\n     * @param PEAR_ErrorStack\n     * @param array\n     * @param string|false Pre-generated error message template\n     * @static\n     * @return string\n     */\n    function getErrorMessage(&$stack, $err, $template = false)\n    {\n        if ($template) {\n            $mainmsg = $template;\n        } else {\n            $mainmsg = $stack->getErrorMessageTemplate($err['code']);\n        }\n        $mainmsg = str_replace('%__msg%', $err['message'], $mainmsg);\n        if (is_array($err['params']) && count($err['params'])) {\n            foreach ($err['params'] as $name => $val) {\n                if (is_array($val)) {\n                    // @ is needed in case $val is a multi-dimensional array\n                    $val = @implode(', ', $val);\n                }\n                if (is_object($val)) {\n                    if (method_exists($val, '__toString')) {\n                        $val = $val->__toString();\n                    } else {\n                        PEAR_ErrorStack::staticPush('PEAR_ErrorStack', PEAR_ERRORSTACK_ERR_OBJTOSTRING,\n                            'warning', array('obj' => get_class($val)),\n                            'object %obj% passed into getErrorMessage, but has no __toString() method');\n                        $val = 'Object';\n                    }\n                }\n                $mainmsg = str_replace('%' . $name . '%', $val, $mainmsg);\n            }\n        }\n        return $mainmsg;\n    }\n    \n    /**\n     * Standard Error Message Template generator from code\n     * @return string\n     */\n    function getErrorMessageTemplate($code)\n    {\n        if (!isset($this->_errorMsgs[$code])) {\n            return '%__msg%';\n        }\n        return $this->_errorMsgs[$code];\n    }\n    \n    /**\n     * Set the Error Message Template array\n     * \n     * The array format must be:\n     * <pre>\n     * array(error code => 'message template',...)\n     * </pre>\n     * \n     * Error message parameters passed into {@link push()} will be used as input\n     * for the error message.  If the template is 'message %foo% was %bar%', and the\n     * parameters are array('foo' => 'one', 'bar' => 'six'), the error message returned will\n     * be 'message one was six'\n     * @return string\n     */\n    function setErrorMessageTemplate($template)\n    {\n        $this->_errorMsgs = $template;\n    }\n    \n    \n    /**\n     * emulate PEAR::raiseError()\n     * \n     * @return PEAR_Error\n     */\n    function raiseError()\n    {\n        require_once 'PEAR.php';\n        $args = func_get_args();\n        return call_user_func_array(array('PEAR', 'raiseError'), $args);\n    }\n}\n$stack = &PEAR_ErrorStack::singleton('PEAR_ErrorStack');\n$stack->pushCallback(array('PEAR_ErrorStack', '_handleError'));\n?>\n"
  },
  {
    "path": "newscoop/include/PEAR/Exception.php",
    "content": "<?php\n/* vim: set expandtab tabstop=4 shiftwidth=4 foldmethod=marker: */\n/**\n * PEAR_Exception\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Tomas V. V. Cox <cox@idecnet.com>\n * @author     Hans Lellelid <hans@velum.net>\n * @author     Bertrand Mansion <bmansion@mamasam.com>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Exception.php 296939 2010-03-27 16:24:43Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.3.3\n */\n\n\n/**\n * Base PEAR_Exception Class\n *\n * 1) Features:\n *\n * - Nestable exceptions (throw new PEAR_Exception($msg, $prev_exception))\n * - Definable triggers, shot when exceptions occur\n * - Pretty and informative error messages\n * - Added more context info available (like class, method or cause)\n * - cause can be a PEAR_Exception or an array of mixed\n *   PEAR_Exceptions/PEAR_ErrorStack warnings\n * - callbacks for specific exception classes and their children\n *\n * 2) Ideas:\n *\n * - Maybe a way to define a 'template' for the output\n *\n * 3) Inherited properties from PHP Exception Class:\n *\n * protected $message\n * protected $code\n * protected $line\n * protected $file\n * private   $trace\n *\n * 4) Inherited methods from PHP Exception Class:\n *\n * __clone\n * __construct\n * getMessage\n * getCode\n * getFile\n * getLine\n * getTraceSafe\n * getTraceSafeAsString\n * __toString\n *\n * 5) Usage example\n *\n * <code>\n *  require_once 'PEAR/Exception.php';\n *\n *  class Test {\n *     function foo() {\n *         throw new PEAR_Exception('Error Message', ERROR_CODE);\n *     }\n *  }\n *\n *  function myLogger($pear_exception) {\n *     echo $pear_exception->getMessage();\n *  }\n *  // each time a exception is thrown the 'myLogger' will be called\n *  // (its use is completely optional)\n *  PEAR_Exception::addObserver('myLogger');\n *  $test = new Test;\n *  try {\n *     $test->foo();\n *  } catch (PEAR_Exception $e) {\n *     print $e;\n *  }\n * </code>\n *\n * @category   pear\n * @package    PEAR\n * @author     Tomas V.V.Cox <cox@idecnet.com>\n * @author     Hans Lellelid <hans@velum.net>\n * @author     Bertrand Mansion <bmansion@mamasam.com>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.3.3\n *\n */\nclass PEAR_Exception extends Exception\n{\n    const OBSERVER_PRINT = -2;\n    const OBSERVER_TRIGGER = -4;\n    const OBSERVER_DIE = -8;\n    protected $cause;\n    private static $_observers = array();\n    private static $_uniqueid = 0;\n    private $_trace;\n\n    /**\n     * Supported signatures:\n     *  - PEAR_Exception(string $message);\n     *  - PEAR_Exception(string $message, int $code);\n     *  - PEAR_Exception(string $message, Exception $cause);\n     *  - PEAR_Exception(string $message, Exception $cause, int $code);\n     *  - PEAR_Exception(string $message, PEAR_Error $cause);\n     *  - PEAR_Exception(string $message, PEAR_Error $cause, int $code);\n     *  - PEAR_Exception(string $message, array $causes);\n     *  - PEAR_Exception(string $message, array $causes, int $code);\n     * @param string exception message\n     * @param int|Exception|PEAR_Error|array|null exception cause\n     * @param int|null exception code or null\n     */\n    public function __construct($message, $p2 = null, $p3 = null)\n    {\n        if (is_int($p2)) {\n            $code = $p2;\n            $this->cause = null;\n        } elseif (is_object($p2) || is_array($p2)) {\n            // using is_object allows both Exception and PEAR_Error\n            if (is_object($p2) && !($p2 instanceof Exception)) {\n                if (!class_exists('PEAR_Error') || !($p2 instanceof PEAR_Error)) {\n                    throw new PEAR_Exception('exception cause must be Exception, ' .\n                        'array, or PEAR_Error');\n                }\n            }\n            $code = $p3;\n            if (is_array($p2) && isset($p2['message'])) {\n                // fix potential problem of passing in a single warning\n                $p2 = array($p2);\n            }\n            $this->cause = $p2;\n        } else {\n            $code = null;\n            $this->cause = null;\n        }\n        parent::__construct($message, $code);\n        $this->signal();\n    }\n\n    /**\n     * @param mixed $callback  - A valid php callback, see php func is_callable()\n     *                         - A PEAR_Exception::OBSERVER_* constant\n     *                         - An array(const PEAR_Exception::OBSERVER_*,\n     *                           mixed $options)\n     * @param string $label    The name of the observer. Use this if you want\n     *                         to remove it later with removeObserver()\n     */\n    public static function addObserver($callback, $label = 'default')\n    {\n        self::$_observers[$label] = $callback;\n    }\n\n    public static function removeObserver($label = 'default')\n    {\n        unset(self::$_observers[$label]);\n    }\n\n    /**\n     * @return int unique identifier for an observer\n     */\n    public static function getUniqueId()\n    {\n        return self::$_uniqueid++;\n    }\n\n    private function signal()\n    {\n        foreach (self::$_observers as $func) {\n            if (is_callable($func)) {\n                call_user_func($func, $this);\n                continue;\n            }\n            settype($func, 'array');\n            switch ($func[0]) {\n                case self::OBSERVER_PRINT :\n                    $f = (isset($func[1])) ? $func[1] : '%s';\n                    printf($f, $this->getMessage());\n                    break;\n                case self::OBSERVER_TRIGGER :\n                    $f = (isset($func[1])) ? $func[1] : E_USER_NOTICE;\n                    trigger_error($this->getMessage(), $f);\n                    break;\n                case self::OBSERVER_DIE :\n                    $f = (isset($func[1])) ? $func[1] : '%s';\n                    die(printf($f, $this->getMessage()));\n                    break;\n                default:\n                    trigger_error('invalid observer type', E_USER_WARNING);\n            }\n        }\n    }\n\n    /**\n     * Return specific error information that can be used for more detailed\n     * error messages or translation.\n     *\n     * This method may be overridden in child exception classes in order\n     * to add functionality not present in PEAR_Exception and is a placeholder\n     * to define API\n     *\n     * The returned array must be an associative array of parameter => value like so:\n     * <pre>\n     * array('name' => $name, 'context' => array(...))\n     * </pre>\n     * @return array\n     */\n    public function getErrorData()\n    {\n        return array();\n    }\n\n    /**\n     * Returns the exception that caused this exception to be thrown\n     * @access public\n     * @return Exception|array The context of the exception\n     */\n    public function getCause()\n    {\n        return $this->cause;\n    }\n\n    /**\n     * Function must be public to call on caused exceptions\n     * @param array\n     */\n    public function getCauseMessage(&$causes)\n    {\n        $trace = $this->getTraceSafe();\n        $cause = array('class'   => get_class($this),\n                       'message' => $this->message,\n                       'file' => 'unknown',\n                       'line' => 'unknown');\n        if (isset($trace[0])) {\n            if (isset($trace[0]['file'])) {\n                $cause['file'] = $trace[0]['file'];\n                $cause['line'] = $trace[0]['line'];\n            }\n        }\n        $causes[] = $cause;\n        if ($this->cause instanceof PEAR_Exception) {\n            $this->cause->getCauseMessage($causes);\n        } elseif ($this->cause instanceof Exception) {\n            $causes[] = array('class'   => get_class($this->cause),\n                              'message' => $this->cause->getMessage(),\n                              'file' => $this->cause->getFile(),\n                              'line' => $this->cause->getLine());\n        } elseif (class_exists('PEAR_Error') && $this->cause instanceof PEAR_Error) {\n            $causes[] = array('class' => get_class($this->cause),\n                              'message' => $this->cause->getMessage(),\n                              'file' => 'unknown',\n                              'line' => 'unknown');\n        } elseif (is_array($this->cause)) {\n            foreach ($this->cause as $cause) {\n                if ($cause instanceof PEAR_Exception) {\n                    $cause->getCauseMessage($causes);\n                } elseif ($cause instanceof Exception) {\n                    $causes[] = array('class'   => get_class($cause),\n                                   'message' => $cause->getMessage(),\n                                   'file' => $cause->getFile(),\n                                   'line' => $cause->getLine());\n                } elseif (class_exists('PEAR_Error') && $cause instanceof PEAR_Error) {\n                    $causes[] = array('class' => get_class($cause),\n                                      'message' => $cause->getMessage(),\n                                      'file' => 'unknown',\n                                      'line' => 'unknown');\n                } elseif (is_array($cause) && isset($cause['message'])) {\n                    // PEAR_ErrorStack warning\n                    $causes[] = array(\n                        'class' => $cause['package'],\n                        'message' => $cause['message'],\n                        'file' => isset($cause['context']['file']) ?\n                                            $cause['context']['file'] :\n                                            'unknown',\n                        'line' => isset($cause['context']['line']) ?\n                                            $cause['context']['line'] :\n                                            'unknown',\n                    );\n                }\n            }\n        }\n    }\n\n    public function getTraceSafe()\n    {\n        if (!isset($this->_trace)) {\n            $this->_trace = $this->getTrace();\n            if (empty($this->_trace)) {\n                $backtrace = debug_backtrace();\n                $this->_trace = array($backtrace[count($backtrace)-1]);\n            }\n        }\n        return $this->_trace;\n    }\n\n    public function getErrorClass()\n    {\n        $trace = $this->getTraceSafe();\n        return $trace[0]['class'];\n    }\n\n    public function getErrorMethod()\n    {\n        $trace = $this->getTraceSafe();\n        return $trace[0]['function'];\n    }\n\n    public function __toString()\n    {\n        if (isset($_SERVER['REQUEST_URI'])) {\n            return $this->toHtml();\n        }\n        return $this->toText();\n    }\n\n    public function toHtml()\n    {\n        $trace = $this->getTraceSafe();\n        $causes = array();\n        $this->getCauseMessage($causes);\n        $html =  '<table style=\"border: 1px\" cellspacing=\"0\">' . \"\\n\";\n        foreach ($causes as $i => $cause) {\n            $html .= '<tr><td colspan=\"3\" style=\"background: #ff9999\">'\n               . str_repeat('-', $i) . ' <b>' . $cause['class'] . '</b>: '\n               . htmlspecialchars($cause['message']) . ' in <b>' . $cause['file'] . '</b> '\n               . 'on line <b>' . $cause['line'] . '</b>'\n               . \"</td></tr>\\n\";\n        }\n        $html .= '<tr><td colspan=\"3\" style=\"background-color: #aaaaaa; text-align: center; font-weight: bold;\">Exception trace</td></tr>' . \"\\n\"\n               . '<tr><td style=\"text-align: center; background: #cccccc; width:20px; font-weight: bold;\">#</td>'\n               . '<td style=\"text-align: center; background: #cccccc; font-weight: bold;\">Function</td>'\n               . '<td style=\"text-align: center; background: #cccccc; font-weight: bold;\">Location</td></tr>' . \"\\n\";\n\n        foreach ($trace as $k => $v) {\n            $html .= '<tr><td style=\"text-align: center;\">' . $k . '</td>'\n                   . '<td>';\n            if (!empty($v['class'])) {\n                $html .= $v['class'] . $v['type'];\n            }\n            $html .= $v['function'];\n            $args = array();\n            if (!empty($v['args'])) {\n                foreach ($v['args'] as $arg) {\n                    if (is_null($arg)) $args[] = 'null';\n                    elseif (is_array($arg)) $args[] = 'Array';\n                    elseif (is_object($arg)) $args[] = 'Object('.get_class($arg).')';\n                    elseif (is_bool($arg)) $args[] = $arg ? 'true' : 'false';\n                    elseif (is_int($arg) || is_double($arg)) $args[] = $arg;\n                    else {\n                        $arg = (string)$arg;\n                        $str = htmlspecialchars(substr($arg, 0, 16));\n                        if (strlen($arg) > 16) $str .= '&hellip;';\n                        $args[] = \"'\" . $str . \"'\";\n                    }\n                }\n            }\n            $html .= '(' . implode(', ',$args) . ')'\n                   . '</td>'\n                   . '<td>' . (isset($v['file']) ? $v['file'] : 'unknown')\n                   . ':' . (isset($v['line']) ? $v['line'] : 'unknown')\n                   . '</td></tr>' . \"\\n\";\n        }\n        $html .= '<tr><td style=\"text-align: center;\">' . ($k+1) . '</td>'\n               . '<td>{main}</td>'\n               . '<td>&nbsp;</td></tr>' . \"\\n\"\n               . '</table>';\n        return $html;\n    }\n\n    public function toText()\n    {\n        $causes = array();\n        $this->getCauseMessage($causes);\n        $causeMsg = '';\n        foreach ($causes as $i => $cause) {\n            $causeMsg .= str_repeat(' ', $i) . $cause['class'] . ': '\n                   . $cause['message'] . ' in ' . $cause['file']\n                   . ' on line ' . $cause['line'] . \"\\n\";\n        }\n        return $causeMsg . $this->getTraceAsString();\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/FixPHP5PEARWarnings.php",
    "content": "<?php\nif ($skipmsg) {\n    $a = &new $ec($code, $mode, $options, $userinfo);\n} else {\n    $a = &new $ec($message, $code, $mode, $options, $userinfo);\n}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/Frontend/CLI.php",
    "content": "<?php\n/**\n * PEAR_Frontend_CLI\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: CLI.php 296938 2010-03-27 16:16:25Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 0.1\n */\n/**\n * base class\n */\nrequire_once 'PEAR/Frontend.php';\n\n/**\n * Command-line Frontend for the PEAR Installer\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 0.1\n */\nclass PEAR_Frontend_CLI extends PEAR_Frontend\n{\n    /**\n     * What type of user interface this frontend is for.\n     * @var string\n     * @access public\n     */\n    var $type = 'CLI';\n    var $lp = ''; // line prefix\n\n    var $params = array();\n    var $term = array(\n        'bold'   => '',\n        'normal' => '',\n    );\n\n    function PEAR_Frontend_CLI()\n    {\n        parent::PEAR();\n        $term = getenv('TERM'); //(cox) $_ENV is empty for me in 4.1.1\n        if (function_exists('posix_isatty') && !posix_isatty(1)) {\n            // output is being redirected to a file or through a pipe\n        } elseif ($term) {\n            if (preg_match('/^(xterm|vt220|linux)/', $term)) {\n                $this->term['bold']   = sprintf(\"%c%c%c%c\", 27, 91, 49, 109);\n                $this->term['normal'] = sprintf(\"%c%c%c\", 27, 91, 109);\n            } elseif (preg_match('/^vt100/', $term)) {\n                $this->term['bold']   = sprintf(\"%c%c%c%c%c%c\", 27, 91, 49, 109, 0, 0);\n                $this->term['normal'] = sprintf(\"%c%c%c%c%c\", 27, 91, 109, 0, 0);\n            }\n        } elseif (OS_WINDOWS) {\n            // XXX add ANSI codes here\n        }\n    }\n\n    /**\n     * @param object PEAR_Error object\n     */\n    function displayError($e)\n    {\n        return $this->_displayLine($e->getMessage());\n    }\n\n    /**\n     * @param object PEAR_Error object\n     */\n    function displayFatalError($eobj)\n    {\n        $this->displayError($eobj);\n        if (class_exists('PEAR_Config')) {\n            $config = &PEAR_Config::singleton();\n            if ($config->get('verbose') > 5) {\n                if (function_exists('debug_print_backtrace')) {\n                    debug_print_backtrace();\n                    exit(1);\n                }\n\n                $raised = false;\n                foreach (debug_backtrace() as $i => $frame) {\n                    if (!$raised) {\n                        if (isset($frame['class'])\n                            && strtolower($frame['class']) == 'pear'\n                            && strtolower($frame['function']) == 'raiseerror'\n                        ) {\n                            $raised = true;\n                        } else {\n                            continue;\n                        }\n                    }\n\n                    $frame['class']    = !isset($frame['class'])    ? '' : $frame['class'];\n                    $frame['type']     = !isset($frame['type'])     ? '' : $frame['type'];\n                    $frame['function'] = !isset($frame['function']) ? '' : $frame['function'];\n                    $frame['line']     = !isset($frame['line'])     ? '' : $frame['line'];\n                    $this->_displayLine(\"#$i: $frame[class]$frame[type]$frame[function] $frame[line]\");\n                }\n            }\n        }\n\n        exit(1);\n    }\n\n    /**\n     * Instruct the runInstallScript method to skip a paramgroup that matches the\n     * id value passed in.\n     *\n     * This method is useful for dynamically configuring which sections of a post-install script\n     * will be run based on the user's setup, which is very useful for making flexible\n     * post-install scripts without losing the cross-Frontend ability to retrieve user input\n     * @param string\n     */\n    function skipParamgroup($id)\n    {\n        $this->_skipSections[$id] = true;\n    }\n\n    function runPostinstallScripts(&$scripts)\n    {\n        foreach ($scripts as $i => $script) {\n            $this->runInstallScript($scripts[$i]->_params, $scripts[$i]->_obj);\n        }\n    }\n\n    /**\n     * @param array $xml contents of postinstallscript tag\n     * @param object $script post-installation script\n     * @param string install|upgrade\n     */\n    function runInstallScript($xml, &$script)\n    {\n        $this->_skipSections = array();\n        if (!is_array($xml) || !isset($xml['paramgroup'])) {\n            $script->run(array(), '_default');\n            return;\n        }\n\n        $completedPhases = array();\n        if (!isset($xml['paramgroup'][0])) {\n            $xml['paramgroup'] = array($xml['paramgroup']);\n        }\n\n        foreach ($xml['paramgroup'] as $group) {\n            if (isset($this->_skipSections[$group['id']])) {\n                // the post-install script chose to skip this section dynamically\n                continue;\n            }\n\n            if (isset($group['name'])) {\n                $paramname = explode('::', $group['name']);\n                if ($lastgroup['id'] != $paramname[0]) {\n                    continue;\n                }\n\n                $group['name'] = $paramname[1];\n                if (!isset($answers)) {\n                    return;\n                }\n\n                if (isset($answers[$group['name']])) {\n                    switch ($group['conditiontype']) {\n                        case '=' :\n                            if ($answers[$group['name']] != $group['value']) {\n                                continue 2;\n                            }\n                        break;\n                        case '!=' :\n                            if ($answers[$group['name']] == $group['value']) {\n                                continue 2;\n                            }\n                        break;\n                        case 'preg_match' :\n                            if (!@preg_match('/' . $group['value'] . '/',\n                                  $answers[$group['name']])) {\n                                continue 2;\n                            }\n                        break;\n                        default :\n                        return;\n                    }\n                }\n            }\n\n            $lastgroup = $group;\n            if (isset($group['instructions'])) {\n                $this->_display($group['instructions']);\n            }\n\n            if (!isset($group['param'][0])) {\n                $group['param'] = array($group['param']);\n            }\n\n            if (isset($group['param'])) {\n                if (method_exists($script, 'postProcessPrompts')) {\n                    $prompts = $script->postProcessPrompts($group['param'], $group['id']);\n                    if (!is_array($prompts) || count($prompts) != count($group['param'])) {\n                        $this->outputData('postinstall', 'Error: post-install script did not ' .\n                            'return proper post-processed prompts');\n                        $prompts = $group['param'];\n                    } else {\n                        foreach ($prompts as $i => $var) {\n                            if (!is_array($var) || !isset($var['prompt']) ||\n                                  !isset($var['name']) ||\n                                  ($var['name'] != $group['param'][$i]['name']) ||\n                                  ($var['type'] != $group['param'][$i]['type'])\n                            ) {\n                                $this->outputData('postinstall', 'Error: post-install script ' .\n                                    'modified the variables or prompts, severe security risk. ' .\n                                    'Will instead use the defaults from the package.xml');\n                                $prompts = $group['param'];\n                            }\n                        }\n                    }\n\n                    $answers = $this->confirmDialog($prompts);\n                } else {\n                    $answers = $this->confirmDialog($group['param']);\n                }\n            }\n\n            if ((isset($answers) && $answers) || !isset($group['param'])) {\n                if (!isset($answers)) {\n                    $answers = array();\n                }\n\n                array_unshift($completedPhases, $group['id']);\n                if (!$script->run($answers, $group['id'])) {\n                    $script->run($completedPhases, '_undoOnError');\n                    return;\n                }\n            } else {\n                $script->run($completedPhases, '_undoOnError');\n                return;\n            }\n        }\n    }\n\n    /**\n     * Ask for user input, confirm the answers and continue until the user is satisfied\n     * @param array an array of arrays, format array('name' => 'paramname', 'prompt' =>\n     *              'text to display', 'type' => 'string'[, default => 'default value'])\n     * @return array\n     */\n    function confirmDialog($params)\n    {\n        $answers = $prompts = $types = array();\n        foreach ($params as $param) {\n            $prompts[$param['name']] = $param['prompt'];\n            $types[$param['name']]   = $param['type'];\n            $answers[$param['name']] = isset($param['default']) ? $param['default'] : '';\n        }\n\n        $tried = false;\n        do {\n            if ($tried) {\n                $i = 1;\n                foreach ($answers as $var => $value) {\n                    if (!strlen($value)) {\n                        echo $this->bold(\"* Enter an answer for #\" . $i . \": ({$prompts[$var]})\\n\");\n                    }\n                    $i++;\n                }\n            }\n\n            $answers = $this->userDialog('', $prompts, $types, $answers);\n            $tried   = true;\n        } while (is_array($answers) && count(array_filter($answers)) != count($prompts));\n\n        return $answers;\n    }\n\n    function userDialog($command, $prompts, $types = array(), $defaults = array(), $screensize = 20)\n    {\n        if (!is_array($prompts)) {\n            return array();\n        }\n\n        $testprompts = array_keys($prompts);\n        $result      = $defaults;\n\n        reset($prompts);\n        if (count($prompts) === 1) {\n            foreach ($prompts as $key => $prompt) {\n                $type    = $types[$key];\n                $default = @$defaults[$key];\n                print \"$prompt \";\n                if ($default) {\n                    print \"[$default] \";\n                }\n                print \": \";\n\n                $line         = fgets(STDIN, 2048);\n                $result[$key] =  ($default && trim($line) == '') ? $default : trim($line);\n            }\n\n            return $result;\n        }\n\n        $first_run = true;\n        while (true) {\n            $descLength = max(array_map('strlen', $prompts));\n            $descFormat = \"%-{$descLength}s\";\n            $last       = count($prompts);\n\n            $i = 0;\n            foreach ($prompts as $n => $var) {\n                $res = isset($result[$n]) ? $result[$n] : null;\n                printf(\"%2d. $descFormat : %s\\n\", ++$i, $prompts[$n], $res);\n            }\n            print \"\\n1-$last, 'all', 'abort', or Enter to continue: \";\n\n            $tmp = trim(fgets(STDIN, 1024));\n            if (empty($tmp)) {\n                break;\n            }\n\n            if ($tmp == 'abort') {\n                return false;\n            }\n\n            if (isset($testprompts[(int)$tmp - 1])) {\n                $var     = $testprompts[(int)$tmp - 1];\n                $desc    = $prompts[$var];\n                $current = @$result[$var];\n                print \"$desc [$current] : \";\n                $tmp = trim(fgets(STDIN, 1024));\n                if ($tmp !== '') {\n                    $result[$var] = $tmp;\n                }\n            } elseif ($tmp == 'all') {\n                foreach ($prompts as $var => $desc) {\n                    $current = $result[$var];\n                    print \"$desc [$current] : \";\n                    $tmp = trim(fgets(STDIN, 1024));\n                    if (trim($tmp) !== '') {\n                        $result[$var] = trim($tmp);\n                    }\n                }\n            }\n\n            $first_run = false;\n        }\n\n        return $result;\n    }\n\n    function userConfirm($prompt, $default = 'yes')\n    {\n        trigger_error(\"PEAR_Frontend_CLI::userConfirm not yet converted\", E_USER_ERROR);\n        static $positives = array('y', 'yes', 'on', '1');\n        static $negatives = array('n', 'no', 'off', '0');\n        print \"$this->lp$prompt [$default] : \";\n        $fp = fopen(\"php://stdin\", \"r\");\n        $line = fgets($fp, 2048);\n        fclose($fp);\n        $answer = strtolower(trim($line));\n        if (empty($answer)) {\n            $answer = $default;\n        }\n        if (in_array($answer, $positives)) {\n            return true;\n        }\n        if (in_array($answer, $negatives)) {\n            return false;\n        }\n        if (in_array($default, $positives)) {\n            return true;\n        }\n        return false;\n    }\n\n    function outputData($data, $command = '_default')\n    {\n        switch ($command) {\n            case 'channel-info':\n                foreach ($data as $type => $section) {\n                    if ($type == 'main') {\n                        $section['data'] = array_values($section['data']);\n                    }\n\n                    $this->outputData($section);\n                }\n                break;\n            case 'install':\n            case 'upgrade':\n            case 'upgrade-all':\n                if (isset($data['release_warnings'])) {\n                    $this->_displayLine('');\n                    $this->_startTable(array(\n                        'border' => false,\n                        'caption' => 'Release Warnings'\n                    ));\n                    $this->_tableRow(array($data['release_warnings']), null, array(1 => array('wrap' => 55)));\n                    $this->_endTable();\n                    $this->_displayLine('');\n                }\n\n                $this->_displayLine($data['data']);\n                break;\n            case 'search':\n                $this->_startTable($data);\n                if (isset($data['headline']) && is_array($data['headline'])) {\n                    $this->_tableRow($data['headline'], array('bold' => true), array(1 => array('wrap' => 55)));\n                }\n\n                foreach($data['data'] as $category) {\n                    foreach($category as $pkg) {\n                        $this->_tableRow($pkg, null, array(1 => array('wrap' => 55)));\n                    }\n                }\n\n                $this->_endTable();\n                break;\n            case 'list-all':\n                if (!isset($data['data'])) {\n                      $this->_displayLine('No packages in channel');\n                      break;\n                }\n\n                $this->_startTable($data);\n                if (isset($data['headline']) && is_array($data['headline'])) {\n                    $this->_tableRow($data['headline'], array('bold' => true), array(1 => array('wrap' => 55)));\n                }\n\n                foreach($data['data'] as $category) {\n                    foreach($category as $pkg) {\n                        unset($pkg[4], $pkg[5]);\n                        $this->_tableRow($pkg, null, array(1 => array('wrap' => 55)));\n                    }\n                }\n\n                $this->_endTable();\n                break;\n            case 'config-show':\n                $data['border'] = false;\n                $opts = array(\n                    0 => array('wrap' => 30),\n                    1 => array('wrap' => 20),\n                    2 => array('wrap' => 35)\n                );\n\n                $this->_startTable($data);\n                if (isset($data['headline']) && is_array($data['headline'])) {\n                    $this->_tableRow($data['headline'], array('bold' => true), $opts);\n                }\n\n                foreach ($data['data'] as $group) {\n                    foreach ($group as $value) {\n                        if ($value[2] == '') {\n                            $value[2] = \"<not set>\";\n                        }\n\n                        $this->_tableRow($value, null, $opts);\n                    }\n                }\n\n                $this->_endTable();\n                break;\n            case 'remote-info':\n                $d = $data;\n                $data = array(\n                    'caption' => 'Package details:',\n                    'border'  => false,\n                    'data'    => array(\n                        array(\"Latest\",      $data['stable']),\n                        array(\"Installed\",   $data['installed']),\n                        array(\"Package\",     $data['name']),\n                        array(\"License\",     $data['license']),\n                        array(\"Category\",    $data['category']),\n                        array(\"Summary\",     $data['summary']),\n                        array(\"Description\", $data['description']),\n                    ),\n                );\n\n                if (isset($d['deprecated']) && $d['deprecated']) {\n                    $conf = &PEAR_Config::singleton();\n                    $reg = $conf->getRegistry();\n                    $name = $reg->parsedPackageNameToString($d['deprecated'], true);\n                    $data['data'][] = array('Deprecated! use', $name);\n                }\n            default: {\n                if (is_array($data)) {\n                    $this->_startTable($data);\n                    $count = count($data['data'][0]);\n                    if ($count == 2) {\n                        $opts = array(0 => array('wrap' => 25),\n                                      1 => array('wrap' => 48)\n                        );\n                    } elseif ($count == 3) {\n                        $opts = array(0 => array('wrap' => 30),\n                                      1 => array('wrap' => 20),\n                                      2 => array('wrap' => 35)\n                        );\n                    } else {\n                        $opts = null;\n                    }\n                    if (isset($data['headline']) && is_array($data['headline'])) {\n                        $this->_tableRow($data['headline'],\n                                         array('bold' => true),\n                                         $opts);\n                    }\n\n                    if (is_array($data['data'])) {\n                        foreach($data['data'] as $row) {\n                            $this->_tableRow($row, null, $opts);\n                        }\n                    } else {\n                        $this->_tableRow(array($data['data']), null, $opts);\n                     }\n                    $this->_endTable();\n                } else {\n                    $this->_displayLine($data);\n                }\n            }\n        }\n    }\n\n    function log($text, $append_crlf = true)\n    {\n        if ($append_crlf) {\n            return $this->_displayLine($text);\n        }\n\n        return $this->_display($text);\n    }\n\n    function bold($text)\n    {\n        if (empty($this->term['bold'])) {\n            return strtoupper($text);\n        }\n\n        return $this->term['bold'] . $text . $this->term['normal'];\n    }\n\n    function _displayHeading($title)\n    {\n        print $this->lp.$this->bold($title).\"\\n\";\n        print $this->lp.str_repeat(\"=\", strlen($title)).\"\\n\";\n    }\n\n    function _startTable($params = array())\n    {\n        $params['table_data'] = array();\n        $params['widest']     = array();  // indexed by column\n        $params['highest']    = array(); // indexed by row\n        $params['ncols']      = 0;\n        $this->params         = $params;\n    }\n\n    function _tableRow($columns, $rowparams = array(), $colparams = array())\n    {\n        $highest = 1;\n        for ($i = 0; $i < count($columns); $i++) {\n            $col = &$columns[$i];\n            if (isset($colparams[$i]) && !empty($colparams[$i]['wrap'])) {\n                $col = wordwrap($col, $colparams[$i]['wrap']);\n            }\n\n            if (strpos($col, \"\\n\") !== false) {\n                $multiline = explode(\"\\n\", $col);\n                $w = 0;\n                foreach ($multiline as $n => $line) {\n                    $len = strlen($line);\n                    if ($len > $w) {\n                        $w = $len;\n                    }\n                }\n                $lines = count($multiline);\n            } else {\n                $w = strlen($col);\n            }\n\n            if (isset($this->params['widest'][$i])) {\n                if ($w > $this->params['widest'][$i]) {\n                    $this->params['widest'][$i] = $w;\n                }\n            } else {\n                $this->params['widest'][$i] = $w;\n            }\n\n            $tmp = count_chars($columns[$i], 1);\n            // handle unix, mac and windows formats\n            $lines = (isset($tmp[10]) ? $tmp[10] : (isset($tmp[13]) ? $tmp[13] : 0)) + 1;\n            if ($lines > $highest) {\n                $highest = $lines;\n            }\n        }\n\n        if (count($columns) > $this->params['ncols']) {\n            $this->params['ncols'] = count($columns);\n        }\n\n        $new_row = array(\n            'data'      => $columns,\n            'height'    => $highest,\n            'rowparams' => $rowparams,\n            'colparams' => $colparams,\n        );\n        $this->params['table_data'][] = $new_row;\n    }\n\n    function _endTable()\n    {\n        extract($this->params);\n        if (!empty($caption)) {\n            $this->_displayHeading($caption);\n        }\n\n        if (count($table_data) === 0) {\n            return;\n        }\n\n        if (!isset($width)) {\n            $width = $widest;\n        } else {\n            for ($i = 0; $i < $ncols; $i++) {\n                if (!isset($width[$i])) {\n                    $width[$i] = $widest[$i];\n                }\n            }\n        }\n\n        $border = false;\n        if (empty($border)) {\n            $cellstart  = '';\n            $cellend    = ' ';\n            $rowend     = '';\n            $padrowend  = false;\n            $borderline = '';\n        } else {\n            $cellstart  = '| ';\n            $cellend    = ' ';\n            $rowend     = '|';\n            $padrowend  = true;\n            $borderline = '+';\n            foreach ($width as $w) {\n                $borderline .= str_repeat('-', $w + strlen($cellstart) + strlen($cellend) - 1);\n                $borderline .= '+';\n            }\n        }\n\n        if ($borderline) {\n            $this->_displayLine($borderline);\n        }\n\n        for ($i = 0; $i < count($table_data); $i++) {\n            extract($table_data[$i]);\n            if (!is_array($rowparams)) {\n                $rowparams = array();\n            }\n\n            if (!is_array($colparams)) {\n                $colparams = array();\n            }\n\n            $rowlines = array();\n            if ($height > 1) {\n                for ($c = 0; $c < count($data); $c++) {\n                    $rowlines[$c] = preg_split('/(\\r?\\n|\\r)/', $data[$c]);\n                    if (count($rowlines[$c]) < $height) {\n                        $rowlines[$c] = array_pad($rowlines[$c], $height, '');\n                    }\n                }\n            } else {\n                for ($c = 0; $c < count($data); $c++) {\n                    $rowlines[$c] = array($data[$c]);\n                }\n            }\n\n            for ($r = 0; $r < $height; $r++) {\n                $rowtext = '';\n                for ($c = 0; $c < count($data); $c++) {\n                    if (isset($colparams[$c])) {\n                        $attribs = array_merge($rowparams, $colparams);\n                    } else {\n                        $attribs = $rowparams;\n                    }\n\n                    $w = isset($width[$c]) ? $width[$c] : 0;\n                    //$cell = $data[$c];\n                    $cell = $rowlines[$c][$r];\n                    $l = strlen($cell);\n                    if ($l > $w) {\n                        $cell = substr($cell, 0, $w);\n                    }\n\n                    if (isset($attribs['bold'])) {\n                        $cell = $this->bold($cell);\n                    }\n\n                    if ($l < $w) {\n                        // not using str_pad here because we may\n                        // add bold escape characters to $cell\n                        $cell .= str_repeat(' ', $w - $l);\n                    }\n\n                    $rowtext .= $cellstart . $cell . $cellend;\n                }\n\n                if (!$border) {\n                    $rowtext = rtrim($rowtext);\n                }\n\n                $rowtext .= $rowend;\n                $this->_displayLine($rowtext);\n            }\n        }\n\n        if ($borderline) {\n            $this->_displayLine($borderline);\n        }\n    }\n\n    function _displayLine($text)\n    {\n        print \"$this->lp$text\\n\";\n    }\n\n    function _display($text)\n    {\n        print $text;\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/Frontend.php",
    "content": "<?php\n/**\n * PEAR_Frontend, the singleton-based frontend for user input/output\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Frontend.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n\n/**\n * Include error handling\n */\n//require_once 'PEAR.php';\n\n/**\n * Which user interface class is being used.\n * @var string class name\n */\n$GLOBALS['_PEAR_FRONTEND_CLASS'] = 'PEAR_Frontend_CLI';\n\n/**\n * Instance of $_PEAR_Command_uiclass.\n * @var object\n */\n$GLOBALS['_PEAR_FRONTEND_SINGLETON'] = null;\n\n/**\n * Singleton-based frontend for PEAR user input/output\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_Frontend extends PEAR\n{\n    /**\n     * Retrieve the frontend object\n     * @return PEAR_Frontend_CLI|PEAR_Frontend_Web|PEAR_Frontend_Gtk\n     * @static\n     */\n    function &singleton($type = null)\n    {\n        if ($type === null) {\n            if (!isset($GLOBALS['_PEAR_FRONTEND_SINGLETON'])) {\n                $a = false;\n                return $a;\n            }\n            return $GLOBALS['_PEAR_FRONTEND_SINGLETON'];\n        }\n\n        $a = PEAR_Frontend::setFrontendClass($type);\n        return $a;\n    }\n\n    /**\n     * Set the frontend class that will be used by calls to {@link singleton()}\n     *\n     * Frontends are expected to conform to the PEAR naming standard of\n     * _ => DIRECTORY_SEPARATOR (PEAR_Frontend_CLI is in PEAR/Frontend/CLI.php)\n     * @param string $uiclass full class name\n     * @return PEAR_Frontend\n     * @static\n     */\n    function &setFrontendClass($uiclass)\n    {\n        if (is_object($GLOBALS['_PEAR_FRONTEND_SINGLETON']) &&\n              is_a($GLOBALS['_PEAR_FRONTEND_SINGLETON'], $uiclass)) {\n            return $GLOBALS['_PEAR_FRONTEND_SINGLETON'];\n        }\n\n        if (!class_exists($uiclass)) {\n            $file = str_replace('_', '/', $uiclass) . '.php';\n            if (PEAR_Frontend::isIncludeable($file)) {\n                include_once $file;\n            }\n        }\n\n        if (class_exists($uiclass)) {\n            $obj = &new $uiclass;\n            // quick test to see if this class implements a few of the most\n            // important frontend methods\n            if (is_a($obj, 'PEAR_Frontend')) {\n                $GLOBALS['_PEAR_FRONTEND_SINGLETON'] = &$obj;\n                $GLOBALS['_PEAR_FRONTEND_CLASS'] = $uiclass;\n                return $obj;\n            }\n\n            $err = PEAR::raiseError(\"not a frontend class: $uiclass\");\n            return $err;\n        }\n\n        $err = PEAR::raiseError(\"no such class: $uiclass\");\n        return $err;\n    }\n\n    /**\n     * Set the frontend class that will be used by calls to {@link singleton()}\n     *\n     * Frontends are expected to be a descendant of PEAR_Frontend\n     * @param PEAR_Frontend\n     * @return PEAR_Frontend\n     * @static\n     */\n    function &setFrontendObject($uiobject)\n    {\n        if (is_object($GLOBALS['_PEAR_FRONTEND_SINGLETON']) &&\n              is_a($GLOBALS['_PEAR_FRONTEND_SINGLETON'], get_class($uiobject))) {\n            return $GLOBALS['_PEAR_FRONTEND_SINGLETON'];\n        }\n\n        if (!is_a($uiobject, 'PEAR_Frontend')) {\n            $err = PEAR::raiseError('not a valid frontend class: (' .\n                get_class($uiobject) . ')');\n            return $err;\n        }\n\n        $GLOBALS['_PEAR_FRONTEND_SINGLETON'] = &$uiobject;\n        $GLOBALS['_PEAR_FRONTEND_CLASS'] = get_class($uiobject);\n        return $uiobject;\n    }\n\n    /**\n     * @param string $path relative or absolute include path\n     * @return boolean\n     * @static\n     */\n    function isIncludeable($path)\n    {\n        if (file_exists($path) && is_readable($path)) {\n            return true;\n        }\n\n        $fp = @fopen($path, 'r', true);\n        if ($fp) {\n            fclose($fp);\n            return true;\n        }\n\n        return false;\n    }\n\n    /**\n     * @param PEAR_Config\n     */\n    function setConfig(&$config)\n    {\n    }\n\n    /**\n     * This can be overridden to allow session-based temporary file management\n     *\n     * By default, all files are deleted at the end of a session.  The web installer\n     * needs to be able to sustain a list over many sessions in order to support\n     * user interaction with install scripts\n     */\n    function addTempFile($file)\n    {\n        $GLOBALS['_PEAR_Common_tempfiles'][] = $file;\n    }\n\n    /**\n     * Log an action\n     *\n     * @param string $msg the message to log\n     * @param boolean $append_crlf\n     * @return boolean true\n     * @abstract\n     */\n    function log($msg, $append_crlf = true)\n    {\n    }\n\n    /**\n     * Run a post-installation script\n     *\n     * @param array $scripts array of post-install scripts\n     * @abstract\n     */\n    function runPostinstallScripts(&$scripts)\n    {\n    }\n\n    /**\n     * Display human-friendly output formatted depending on the\n     * $command parameter.\n     *\n     * This should be able to handle basic output data with no command\n     * @param mixed  $data    data structure containing the information to display\n     * @param string $command command from which this method was called\n     * @abstract\n     */\n    function outputData($data, $command = '_default')\n    {\n    }\n\n    /**\n     * Display a modal form dialog and return the given input\n     *\n     * A frontend that requires multiple requests to retrieve and process\n     * data must take these needs into account, and implement the request\n     * handling code.\n     * @param string $command  command from which this method was called\n     * @param array  $prompts  associative array. keys are the input field names\n     *                         and values are the description\n     * @param array  $types    array of input field types (text, password,\n     *                         etc.) keys have to be the same like in $prompts\n     * @param array  $defaults array of default values. again keys have\n     *                         to be the same like in $prompts.  Do not depend\n     *                         on a default value being set.\n     * @return array input sent by the user\n     * @abstract\n     */\n    function userDialog($command, $prompts, $types = array(), $defaults = array())\n    {\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/Installer/Role/Cfg.php",
    "content": "<?php\n/**\n * PEAR_Installer_Role_Cfg\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  2007-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Cfg.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.7.0\n */\n\n/**\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  2007-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.7.0\n */\nclass PEAR_Installer_Role_Cfg extends PEAR_Installer_Role_Common\n{\n    /**\n     * @var PEAR_Installer\n     */\n    var $installer;\n\n    /**\n     * the md5 of the original file\n     *\n     * @var unknown_type\n     */\n    var $md5 = null;\n\n    /**\n     * Do any unusual setup here\n     * @param PEAR_Installer\n     * @param PEAR_PackageFile_v2\n     * @param array file attributes\n     * @param string file name\n     */\n    function setup(&$installer, $pkg, $atts, $file)\n    {\n        $this->installer = &$installer;\n        $reg = &$this->installer->config->getRegistry();\n        $package = $reg->getPackage($pkg->getPackage(), $pkg->getChannel());\n        if ($package) {\n            $filelist = $package->getFilelist();\n            if (isset($filelist[$file]) && isset($filelist[$file]['md5sum'])) {\n                $this->md5 = $filelist[$file]['md5sum'];\n            }\n        }\n    }\n\n    function processInstallation($pkg, $atts, $file, $tmp_path, $layer = null)\n    {\n        $test = parent::processInstallation($pkg, $atts, $file, $tmp_path, $layer);\n        if (@file_exists($test[2]) && @file_exists($test[3])) {\n            $md5 = md5_file($test[2]);\n            // configuration has already been installed, check for mods\n            if ($md5 !== $this->md5 && $md5 !== md5_file($test[3])) {\n                // configuration has been modified, so save our version as\n                // configfile-version\n                $old = $test[2];\n                $test[2] .= '.new-' . $pkg->getVersion();\n                // backup original and re-install it\n                PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n                $tmpcfg = $this->config->get('temp_dir');\n                $newloc = System::mkdir(array('-p', $tmpcfg));\n                if (!$newloc) {\n                    // try temp_dir\n                    $newloc = System::mktemp(array('-d'));\n                    if (!$newloc || PEAR::isError($newloc)) {\n                        PEAR::popErrorHandling();\n                        return PEAR::raiseError('Could not save existing configuration file '.\n                            $old . ', unable to install.  Please set temp_dir ' .\n                            'configuration variable to a writeable location and try again');\n                    }\n                } else {\n                    $newloc = $tmpcfg;\n                }\n\n                $temp_file = $newloc . DIRECTORY_SEPARATOR . uniqid('savefile');\n                if (!@copy($old, $temp_file)) {\n                    PEAR::popErrorHandling();\n                    return PEAR::raiseError('Could not save existing configuration file '.\n                        $old . ', unable to install.  Please set temp_dir ' .\n                        'configuration variable to a writeable location and try again');\n                }\n\n                PEAR::popErrorHandling();\n                $this->installer->log(0, \"WARNING: configuration file $old is being installed as $test[2], you should manually merge in changes to the existing configuration file\");\n                $this->installer->addFileOperation('rename', array($temp_file, $old, false));\n                $this->installer->addFileOperation('delete', array($temp_file));\n            }\n        }\n\n        return $test;\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/Installer/Role/Cfg.xml",
    "content": "<role version=\"1.0\">\n <releasetypes>php</releasetypes>\n <releasetypes>extsrc</releasetypes>\n <releasetypes>extbin</releasetypes>\n <releasetypes>zendextsrc</releasetypes>\n <releasetypes>zendextbin</releasetypes>\n <installable>1</installable>\n <locationconfig>cfg_dir</locationconfig>\n <honorsbaseinstall />\n <unusualbaseinstall>1</unusualbaseinstall>\n <phpfile />\n <executable />\n <phpextension />\n <config_vars />\n</role>"
  },
  {
    "path": "newscoop/include/PEAR/Installer/Role/Common.php",
    "content": "<?php\n/**\n * Base class for all installation roles.\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2006 The PHP Group\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Common.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n/**\n * Base class for all installation roles.\n *\n * This class allows extensibility of file roles.  Packages with complex\n * customization can now provide custom file roles along with the possibility of\n * adding configuration values to match.\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2006 The PHP Group\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_Installer_Role_Common\n{\n    /**\n     * @var PEAR_Config\n     * @access protected\n     */\n    var $config;\n\n    /**\n     * @param PEAR_Config\n     */\n    function PEAR_Installer_Role_Common(&$config)\n    {\n        $this->config = $config;\n    }\n\n    /**\n     * Retrieve configuration information about a file role from its XML info\n     *\n     * @param string $role Role Classname, as in \"PEAR_Installer_Role_Data\"\n     * @return array\n     */\n    function getInfo($role)\n    {\n        if (empty($GLOBALS['_PEAR_INSTALLER_ROLES'][$role])) {\n            return PEAR::raiseError('Unknown Role class: \"' . $role . '\"');\n        }\n        return $GLOBALS['_PEAR_INSTALLER_ROLES'][$role];\n    }\n\n    /**\n     * This is called for each file to set up the directories and files\n     * @param PEAR_PackageFile_v1|PEAR_PackageFile_v2\n     * @param array attributes from the <file> tag\n     * @param string file name\n     * @return array an array consisting of:\n     *\n     *    1 the original, pre-baseinstalldir installation directory\n     *    2 the final installation directory\n     *    3 the full path to the final location of the file\n     *    4 the location of the pre-installation file\n     */\n    function processInstallation($pkg, $atts, $file, $tmp_path, $layer = null)\n    {\n        $roleInfo = PEAR_Installer_Role_Common::getInfo('PEAR_Installer_Role_' . \n            ucfirst(str_replace('pear_installer_role_', '', strtolower(get_class($this)))));\n        if (PEAR::isError($roleInfo)) {\n            return $roleInfo;\n        }\n        if (!$roleInfo['locationconfig']) {\n            return false;\n        }\n        if ($roleInfo['honorsbaseinstall']) {\n            $dest_dir = $save_destdir = $this->config->get($roleInfo['locationconfig'], $layer,\n                $pkg->getChannel());\n            if (!empty($atts['baseinstalldir'])) {\n                $dest_dir .= DIRECTORY_SEPARATOR . $atts['baseinstalldir'];\n            }\n        } elseif ($roleInfo['unusualbaseinstall']) {\n            $dest_dir = $save_destdir = $this->config->get($roleInfo['locationconfig'],\n                    $layer, $pkg->getChannel()) . DIRECTORY_SEPARATOR . $pkg->getPackage();\n            if (!empty($atts['baseinstalldir'])) {\n                $dest_dir .= DIRECTORY_SEPARATOR . $atts['baseinstalldir'];\n            }\n        } else {\n            $dest_dir = $save_destdir = $this->config->get($roleInfo['locationconfig'],\n                    $layer, $pkg->getChannel()) . DIRECTORY_SEPARATOR . $pkg->getPackage();\n        }\n        if (dirname($file) != '.' && empty($atts['install-as'])) {\n            $dest_dir .= DIRECTORY_SEPARATOR . dirname($file);\n        }\n        if (empty($atts['install-as'])) {\n            $dest_file = $dest_dir . DIRECTORY_SEPARATOR . basename($file);\n        } else {\n            $dest_file = $dest_dir . DIRECTORY_SEPARATOR . $atts['install-as'];\n        }\n        $orig_file = $tmp_path . DIRECTORY_SEPARATOR . $file;\n\n        // Clean up the DIRECTORY_SEPARATOR mess\n        $ds2 = DIRECTORY_SEPARATOR . DIRECTORY_SEPARATOR;\n        \n        list($dest_dir, $dest_file, $orig_file) = preg_replace(array('!\\\\\\\\+!', '!/!', \"!$ds2+!\"),\n                                                    array(DIRECTORY_SEPARATOR, DIRECTORY_SEPARATOR,\n                                                          DIRECTORY_SEPARATOR),\n                                                    array($dest_dir, $dest_file, $orig_file));\n        return array($save_destdir, $dest_dir, $dest_file, $orig_file);\n    }\n\n    /**\n     * Get the name of the configuration variable that specifies the location of this file\n     * @return string|false\n     */\n    function getLocationConfig()\n    {\n        $roleInfo = PEAR_Installer_Role_Common::getInfo('PEAR_Installer_Role_' . \n            ucfirst(str_replace('pear_installer_role_', '', strtolower(get_class($this)))));\n        if (PEAR::isError($roleInfo)) {\n            return $roleInfo;\n        }\n        return $roleInfo['locationconfig'];\n    }\n\n    /**\n     * Do any unusual setup here\n     * @param PEAR_Installer\n     * @param PEAR_PackageFile_v2\n     * @param array file attributes\n     * @param string file name\n     */\n    function setup(&$installer, $pkg, $atts, $file)\n    {\n    }\n\n    function isExecutable()\n    {\n        $roleInfo = PEAR_Installer_Role_Common::getInfo('PEAR_Installer_Role_' . \n            ucfirst(str_replace('pear_installer_role_', '', strtolower(get_class($this)))));\n        if (PEAR::isError($roleInfo)) {\n            return $roleInfo;\n        }\n        return $roleInfo['executable'];\n    }\n\n    function isInstallable()\n    {\n        $roleInfo = PEAR_Installer_Role_Common::getInfo('PEAR_Installer_Role_' . \n            ucfirst(str_replace('pear_installer_role_', '', strtolower(get_class($this)))));\n        if (PEAR::isError($roleInfo)) {\n            return $roleInfo;\n        }\n        return $roleInfo['installable'];\n    }\n\n    function isExtension()\n    {\n        $roleInfo = PEAR_Installer_Role_Common::getInfo('PEAR_Installer_Role_' . \n            ucfirst(str_replace('pear_installer_role_', '', strtolower(get_class($this)))));\n        if (PEAR::isError($roleInfo)) {\n            return $roleInfo;\n        }\n        return $roleInfo['phpextension'];\n    }\n}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/Installer/Role/Data.php",
    "content": "<?php\n/**\n * PEAR_Installer_Role_Data\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Data.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n\n/**\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_Installer_Role_Data extends PEAR_Installer_Role_Common {}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/Installer/Role/Data.xml",
    "content": "<role version=\"1.0\">\n <releasetypes>php</releasetypes>\n <releasetypes>extsrc</releasetypes>\n <releasetypes>extbin</releasetypes>\n <releasetypes>zendextsrc</releasetypes>\n <releasetypes>zendextbin</releasetypes>\n <installable>1</installable>\n <locationconfig>data_dir</locationconfig>\n <honorsbaseinstall />\n <unusualbaseinstall />\n <phpfile />\n <executable />\n <phpextension />\n <config_vars />\n</role>"
  },
  {
    "path": "newscoop/include/PEAR/Installer/Role/Doc.php",
    "content": "<?php\n/**\n * PEAR_Installer_Role_Doc\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Doc.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n\n/**\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_Installer_Role_Doc extends PEAR_Installer_Role_Common {}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/Installer/Role/Doc.xml",
    "content": "<role version=\"1.0\">\n <releasetypes>php</releasetypes>\n <releasetypes>extsrc</releasetypes>\n <releasetypes>extbin</releasetypes>\n <releasetypes>zendextsrc</releasetypes>\n <releasetypes>zendextbin</releasetypes>\n <installable>1</installable>\n <locationconfig>doc_dir</locationconfig>\n <honorsbaseinstall />\n <unusualbaseinstall />\n <phpfile />\n <executable />\n <phpextension />\n <config_vars />\n</role>"
  },
  {
    "path": "newscoop/include/PEAR/Installer/Role/Ext.php",
    "content": "<?php\n/**\n * PEAR_Installer_Role_Ext\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Ext.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n\n/**\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_Installer_Role_Ext extends PEAR_Installer_Role_Common {}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/Installer/Role/Ext.xml",
    "content": "<role version=\"1.0\">\n <releasetypes>extbin</releasetypes>\n <releasetypes>zendextbin</releasetypes>\n <installable>1</installable>\n <locationconfig>ext_dir</locationconfig>\n <honorsbaseinstall>1</honorsbaseinstall>\n <unusualbaseinstall />\n <phpfile />\n <executable />\n <phpextension>1</phpextension>\n <config_vars />\n</role>"
  },
  {
    "path": "newscoop/include/PEAR/Installer/Role/Php.php",
    "content": "<?php\n/**\n * PEAR_Installer_Role_Php\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Php.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n\n/**\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_Installer_Role_Php extends PEAR_Installer_Role_Common {}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/Installer/Role/Php.xml",
    "content": "<role version=\"1.0\">\n <releasetypes>php</releasetypes>\n <releasetypes>extsrc</releasetypes>\n <releasetypes>extbin</releasetypes>\n <releasetypes>zendextsrc</releasetypes>\n <releasetypes>zendextbin</releasetypes>\n <installable>1</installable>\n <locationconfig>php_dir</locationconfig>\n <honorsbaseinstall>1</honorsbaseinstall>\n <unusualbaseinstall />\n <phpfile>1</phpfile>\n <executable />\n <phpextension />\n <config_vars />\n</role>"
  },
  {
    "path": "newscoop/include/PEAR/Installer/Role/Script.php",
    "content": "<?php\n/**\n * PEAR_Installer_Role_Script\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Script.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n\n/**\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_Installer_Role_Script extends PEAR_Installer_Role_Common {}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/Installer/Role/Script.xml",
    "content": "<role version=\"1.0\">\n <releasetypes>php</releasetypes>\n <releasetypes>extsrc</releasetypes>\n <releasetypes>extbin</releasetypes>\n <releasetypes>zendextsrc</releasetypes>\n <releasetypes>zendextbin</releasetypes>\n <installable>1</installable>\n <locationconfig>bin_dir</locationconfig>\n <honorsbaseinstall>1</honorsbaseinstall>\n <unusualbaseinstall />\n <phpfile />\n <executable>1</executable>\n <phpextension />\n <config_vars />\n</role>"
  },
  {
    "path": "newscoop/include/PEAR/Installer/Role/Src.php",
    "content": "<?php\n/**\n * PEAR_Installer_Role_Src\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Src.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n\n/**\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_Installer_Role_Src extends PEAR_Installer_Role_Common\n{\n    function setup(&$installer, $pkg, $atts, $file)\n    {\n        $installer->source_files++;\n    }\n}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/Installer/Role/Src.xml",
    "content": "<role version=\"1.0\">\n <releasetypes>extsrc</releasetypes>\n <releasetypes>zendextsrc</releasetypes>\n <installable>1</installable>\n <locationconfig>temp_dir</locationconfig>\n <honorsbaseinstall />\n <unusualbaseinstall />\n <phpfile />\n <executable />\n <phpextension />\n <config_vars />\n</role>"
  },
  {
    "path": "newscoop/include/PEAR/Installer/Role/Test.php",
    "content": "<?php\n/**\n * PEAR_Installer_Role_Test\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Test.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n\n/**\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_Installer_Role_Test extends PEAR_Installer_Role_Common {}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/Installer/Role/Test.xml",
    "content": "<role version=\"1.0\">\n <releasetypes>php</releasetypes>\n <releasetypes>extsrc</releasetypes>\n <releasetypes>extbin</releasetypes>\n <releasetypes>zendextsrc</releasetypes>\n <releasetypes>zendextbin</releasetypes>\n <installable>1</installable>\n <locationconfig>test_dir</locationconfig>\n <honorsbaseinstall />\n <unusualbaseinstall />\n <phpfile />\n <executable />\n <phpextension />\n <config_vars />\n</role>"
  },
  {
    "path": "newscoop/include/PEAR/Installer/Role/Www.php",
    "content": "<?php\n/**\n * PEAR_Installer_Role_Www\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  2007-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Www.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.7.0\n */\n\n/**\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  2007-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.7.0\n */\nclass PEAR_Installer_Role_Www extends PEAR_Installer_Role_Common {}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/Installer/Role/Www.xml",
    "content": "<role version=\"1.0\">\n <releasetypes>php</releasetypes>\n <releasetypes>extsrc</releasetypes>\n <releasetypes>extbin</releasetypes>\n <releasetypes>zendextsrc</releasetypes>\n <releasetypes>zendextbin</releasetypes>\n <installable>1</installable>\n <locationconfig>www_dir</locationconfig>\n <honorsbaseinstall>1</honorsbaseinstall>\n <unusualbaseinstall />\n <phpfile />\n <executable />\n <phpextension />\n <config_vars />\n</role>"
  },
  {
    "path": "newscoop/include/PEAR/Installer/Role.php",
    "content": "<?php\n/**\n * PEAR_Installer_Role\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Role.php 278552 2009-04-10 19:42:49Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n\n/**\n * base class for installer roles\n */\nrequire_once 'PEAR/Installer/Role/Common.php';\nrequire_once 'PEAR/XMLParser.php';\n/**\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_Installer_Role\n{\n    /**\n     * Set up any additional configuration variables that file roles require\n     *\n     * Never call this directly, it is called by the PEAR_Config constructor\n     * @param PEAR_Config\n     * @access private\n     * @static\n     */\n    function initializeConfig(&$config)\n    {\n        if (!isset($GLOBALS['_PEAR_INSTALLER_ROLES'])) {\n            PEAR_Installer_Role::registerRoles();\n        }\n\n        foreach ($GLOBALS['_PEAR_INSTALLER_ROLES'] as $class => $info) {\n            if (!$info['config_vars']) {\n                continue;\n            }\n\n            $config->_addConfigVars($class, $info['config_vars']);\n        }\n    }\n\n    /**\n     * @param PEAR_PackageFile_v2\n     * @param string role name\n     * @param PEAR_Config\n     * @return PEAR_Installer_Role_Common\n     * @static\n     */\n    function &factory($pkg, $role, &$config)\n    {\n        if (!isset($GLOBALS['_PEAR_INSTALLER_ROLES'])) {\n            PEAR_Installer_Role::registerRoles();\n        }\n\n        if (!in_array($role, PEAR_Installer_Role::getValidRoles($pkg->getPackageType()))) {\n            $a = false;\n            return $a;\n        }\n\n        $a = 'PEAR_Installer_Role_' . ucfirst($role);\n        if (!class_exists($a)) {\n            require_once str_replace('_', '/', $a) . '.php';\n        }\n\n        $b = new $a($config);\n        return $b;\n    }\n\n    /**\n     * Get a list of file roles that are valid for the particular release type.\n     *\n     * For instance, src files serve no purpose in regular php releases.\n     * @param string\n     * @param bool clear cache\n     * @return array\n     * @static\n     */\n    function getValidRoles($release, $clear = false)\n    {\n        if (!isset($GLOBALS['_PEAR_INSTALLER_ROLES'])) {\n            PEAR_Installer_Role::registerRoles();\n        }\n\n        static $ret = array();\n        if ($clear) {\n            $ret = array();\n        }\n\n        if (isset($ret[$release])) {\n            return $ret[$release];\n        }\n\n        $ret[$release] = array();\n        foreach ($GLOBALS['_PEAR_INSTALLER_ROLES'] as $role => $okreleases) {\n            if (in_array($release, $okreleases['releasetypes'])) {\n                $ret[$release][] = strtolower(str_replace('PEAR_Installer_Role_', '', $role));\n            }\n        }\n\n        return $ret[$release];\n    }\n\n    /**\n     * Get a list of roles that require their files to be installed\n     *\n     * Most roles must be installed, but src and package roles, for instance\n     * are pseudo-roles.  src files are compiled into a new extension.  Package\n     * roles are actually fully bundled releases of a package\n     * @param bool clear cache\n     * @return array\n     * @static\n     */\n    function getInstallableRoles($clear = false)\n    {\n        if (!isset($GLOBALS['_PEAR_INSTALLER_ROLES'])) {\n            PEAR_Installer_Role::registerRoles();\n        }\n\n        static $ret;\n        if ($clear) {\n            unset($ret);\n        }\n\n        if (isset($ret)) {\n            return $ret;\n        }\n\n        $ret = array();\n        foreach ($GLOBALS['_PEAR_INSTALLER_ROLES'] as $role => $okreleases) {\n            if ($okreleases['installable']) {\n                $ret[] = strtolower(str_replace('PEAR_Installer_Role_', '', $role));\n            }\n        }\n\n        return $ret;\n    }\n\n    /**\n     * Return an array of roles that are affected by the baseinstalldir attribute\n     *\n     * Most roles ignore this attribute, and instead install directly into:\n     * PackageName/filepath\n     * so a tests file tests/file.phpt is installed into PackageName/tests/filepath.php\n     * @param bool clear cache\n     * @return array\n     * @static\n     */\n    function getBaseinstallRoles($clear = false)\n    {\n        if (!isset($GLOBALS['_PEAR_INSTALLER_ROLES'])) {\n            PEAR_Installer_Role::registerRoles();\n        }\n\n        static $ret;\n        if ($clear) {\n            unset($ret);\n        }\n\n        if (isset($ret)) {\n            return $ret;\n        }\n\n        $ret = array();\n        foreach ($GLOBALS['_PEAR_INSTALLER_ROLES'] as $role => $okreleases) {\n            if ($okreleases['honorsbaseinstall']) {\n                $ret[] = strtolower(str_replace('PEAR_Installer_Role_', '', $role));\n            }\n        }\n\n        return $ret;\n    }\n\n    /**\n     * Return an array of file roles that should be analyzed for PHP content at package time,\n     * like the \"php\" role.\n     * @param bool clear cache\n     * @return array\n     * @static\n     */\n    function getPhpRoles($clear = false)\n    {\n        if (!isset($GLOBALS['_PEAR_INSTALLER_ROLES'])) {\n            PEAR_Installer_Role::registerRoles();\n        }\n\n        static $ret;\n        if ($clear) {\n            unset($ret);\n        }\n\n        if (isset($ret)) {\n            return $ret;\n        }\n\n        $ret = array();\n        foreach ($GLOBALS['_PEAR_INSTALLER_ROLES'] as $role => $okreleases) {\n            if ($okreleases['phpfile']) {\n                $ret[] = strtolower(str_replace('PEAR_Installer_Role_', '', $role));\n            }\n        }\n\n        return $ret;\n    }\n\n    /**\n     * Scan through the Command directory looking for classes\n     * and see what commands they implement.\n     * @param string which directory to look for classes, defaults to\n     *               the Installer/Roles subdirectory of\n     *               the directory from where this file (__FILE__) is\n     *               included.\n     *\n     * @return bool TRUE on success, a PEAR error on failure\n     * @access public\n     * @static\n     */\n    function registerRoles($dir = null)\n    {\n        $GLOBALS['_PEAR_INSTALLER_ROLES'] = array();\n        $parser = new PEAR_XMLParser;\n        if ($dir === null) {\n            $dir = dirname(__FILE__) . '/Role';\n        }\n\n        if (!file_exists($dir) || !is_dir($dir)) {\n            return PEAR::raiseError(\"registerRoles: opendir($dir) failed: does not exist/is not directory\");\n        }\n\n        $dp = @opendir($dir);\n        if (empty($dp)) {\n            return PEAR::raiseError(\"registerRoles: opendir($dir) failed: $php_errmsg\");\n        }\n\n        while ($entry = readdir($dp)) {\n            if ($entry{0} == '.' || substr($entry, -4) != '.xml') {\n                continue;\n            }\n\n            $class = \"PEAR_Installer_Role_\".substr($entry, 0, -4);\n            // List of roles\n            if (!isset($GLOBALS['_PEAR_INSTALLER_ROLES'][$class])) {\n                $file = \"$dir/$entry\";\n                $parser->parse(file_get_contents($file));\n                $data = $parser->getData();\n                if (!is_array($data['releasetypes'])) {\n                    $data['releasetypes'] = array($data['releasetypes']);\n                }\n\n                $GLOBALS['_PEAR_INSTALLER_ROLES'][$class] = $data;\n            }\n        }\n\n        closedir($dp);\n        ksort($GLOBALS['_PEAR_INSTALLER_ROLES']);\n        PEAR_Installer_Role::getBaseinstallRoles(true);\n        PEAR_Installer_Role::getInstallableRoles(true);\n        PEAR_Installer_Role::getPhpRoles(true);\n        PEAR_Installer_Role::getValidRoles('****', true);\n        return true;\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/Installer.php",
    "content": "<?php\n/**\n * PEAR_Installer\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Tomas V.V. Cox <cox@idecnet.com>\n * @author     Martin Jansen <mj@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Installer.php 287446 2009-08-18 11:45:05Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 0.1\n */\n\n/**\n * Used for installation groups in package.xml 2.0 and platform exceptions\n */\nrequire_once 'OS/Guess.php';\nrequire_once 'PEAR/Downloader.php';\n\ndefine('PEAR_INSTALLER_NOBINARY', -240);\n/**\n * Administration class used to install PEAR packages and maintain the\n * installed package database.\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Tomas V.V. Cox <cox@idecnet.com>\n * @author     Martin Jansen <mj@php.net>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 0.1\n */\nclass PEAR_Installer extends PEAR_Downloader\n{\n    // {{{ properties\n\n    /** name of the package directory, for example Foo-1.0\n     * @var string\n     */\n    var $pkgdir;\n\n    /** directory where PHP code files go\n     * @var string\n     */\n    var $phpdir;\n\n    /** directory where PHP extension files go\n     * @var string\n     */\n    var $extdir;\n\n    /** directory where documentation goes\n     * @var string\n     */\n    var $docdir;\n\n    /** installation root directory (ala PHP's INSTALL_ROOT or\n     * automake's DESTDIR\n     * @var string\n     */\n    var $installroot = '';\n\n    /** debug level\n     * @var int\n     */\n    var $debug = 1;\n\n    /** temporary directory\n     * @var string\n     */\n    var $tmpdir;\n\n    /**\n     * PEAR_Registry object used by the installer\n     * @var PEAR_Registry\n     */\n    var $registry;\n\n    /**\n     * array of PEAR_Downloader_Packages\n     * @var array\n     */\n    var $_downloadedPackages;\n\n    /** List of file transactions queued for an install/upgrade/uninstall.\n     *\n     *  Format:\n     *    array(\n     *      0 => array(\"rename => array(\"from-file\", \"to-file\")),\n     *      1 => array(\"delete\" => array(\"file-to-delete\")),\n     *      ...\n     *    )\n     *\n     * @var array\n     */\n    var $file_operations = array();\n\n    // }}}\n\n    // {{{ constructor\n\n    /**\n     * PEAR_Installer constructor.\n     *\n     * @param object $ui user interface object (instance of PEAR_Frontend_*)\n     *\n     * @access public\n     */\n    function PEAR_Installer(&$ui)\n    {\n        parent::PEAR_Common();\n        $this->setFrontendObject($ui);\n        $this->debug = $this->config->get('verbose');\n    }\n\n    function setOptions($options)\n    {\n        $this->_options = $options;\n    }\n\n    function setConfig(&$config)\n    {\n        $this->config    = &$config;\n        $this->_registry = &$config->getRegistry();\n    }\n\n    // }}}\n\n    function _removeBackups($files)\n    {\n        foreach ($files as $path) {\n            $this->addFileOperation('removebackup', array($path));\n        }\n    }\n\n    // {{{ _deletePackageFiles()\n\n    /**\n     * Delete a package's installed files, does not remove empty directories.\n     *\n     * @param string package name\n     * @param string channel name\n     * @param bool if true, then files are backed up first\n     * @return bool TRUE on success, or a PEAR error on failure\n     * @access protected\n     */\n    function _deletePackageFiles($package, $channel = false, $backup = false)\n    {\n        if (!$channel) {\n            $channel = 'pear.php.net';\n        }\n\n        if (!strlen($package)) {\n            return $this->raiseError(\"No package to uninstall given\");\n        }\n\n        if (strtolower($package) == 'pear' && $channel == 'pear.php.net') {\n            // to avoid race conditions, include all possible needed files\n            require_once 'PEAR/Task/Common.php';\n            require_once 'PEAR/Task/Replace.php';\n            require_once 'PEAR/Task/Unixeol.php';\n            require_once 'PEAR/Task/Windowseol.php';\n            require_once 'PEAR/PackageFile/v1.php';\n            require_once 'PEAR/PackageFile/v2.php';\n            require_once 'PEAR/PackageFile/Generator/v1.php';\n            require_once 'PEAR/PackageFile/Generator/v2.php';\n        }\n\n        $filelist = $this->_registry->packageInfo($package, 'filelist', $channel);\n        if ($filelist == null) {\n            return $this->raiseError(\"$channel/$package not installed\");\n        }\n\n        $ret = array();\n        foreach ($filelist as $file => $props) {\n            if (empty($props['installed_as'])) {\n                continue;\n            }\n\n            $path = $props['installed_as'];\n            if ($backup) {\n                $this->addFileOperation('backup', array($path));\n                $ret[] = $path;\n            }\n\n            $this->addFileOperation('delete', array($path));\n        }\n\n        if ($backup) {\n            return $ret;\n        }\n\n        return true;\n    }\n\n    // }}}\n    // {{{ _installFile()\n\n    /**\n     * @param string filename\n     * @param array attributes from <file> tag in package.xml\n     * @param string path to install the file in\n     * @param array options from command-line\n     * @access private\n     */\n    function _installFile($file, $atts, $tmp_path, $options)\n    {\n        // {{{ return if this file is meant for another platform\n        static $os;\n        if (!isset($this->_registry)) {\n            $this->_registry = &$this->config->getRegistry();\n        }\n\n        if (isset($atts['platform'])) {\n            if (empty($os)) {\n                $os = new OS_Guess();\n            }\n\n            if (strlen($atts['platform']) && $atts['platform']{0} == '!') {\n                $negate   = true;\n                $platform = substr($atts['platform'], 1);\n            } else {\n                $negate    = false;\n                $platform = $atts['platform'];\n            }\n\n            if ((bool) $os->matchSignature($platform) === $negate) {\n                $this->log(3, \"skipped $file (meant for $atts[platform], we are \".$os->getSignature().\")\");\n                return PEAR_INSTALLER_SKIPPED;\n            }\n        }\n        // }}}\n\n        $channel = $this->pkginfo->getChannel();\n        // {{{ assemble the destination paths\n        switch ($atts['role']) {\n            case 'src':\n            case 'extsrc':\n                $this->source_files++;\n                return;\n            case 'doc':\n            case 'data':\n            case 'test':\n                $dest_dir = $this->config->get($atts['role'] . '_dir', null, $channel) .\n                            DIRECTORY_SEPARATOR . $this->pkginfo->getPackage();\n                unset($atts['baseinstalldir']);\n                break;\n            case 'ext':\n            case 'php':\n                $dest_dir = $this->config->get($atts['role'] . '_dir', null, $channel);\n                break;\n            case 'script':\n                $dest_dir = $this->config->get('bin_dir', null, $channel);\n                break;\n            default:\n                return $this->raiseError(\"Invalid role `$atts[role]' for file $file\");\n        }\n\n        $save_destdir = $dest_dir;\n        if (!empty($atts['baseinstalldir'])) {\n            $dest_dir .= DIRECTORY_SEPARATOR . $atts['baseinstalldir'];\n        }\n\n        if (dirname($file) != '.' && empty($atts['install-as'])) {\n            $dest_dir .= DIRECTORY_SEPARATOR . dirname($file);\n        }\n\n        if (empty($atts['install-as'])) {\n            $dest_file = $dest_dir . DIRECTORY_SEPARATOR . basename($file);\n        } else {\n            $dest_file = $dest_dir . DIRECTORY_SEPARATOR . $atts['install-as'];\n        }\n        $orig_file = $tmp_path . DIRECTORY_SEPARATOR . $file;\n\n        // Clean up the DIRECTORY_SEPARATOR mess\n        $ds2 = DIRECTORY_SEPARATOR . DIRECTORY_SEPARATOR;\n        list($dest_file, $orig_file) = preg_replace(array('!\\\\\\\\+!', '!/!', \"!$ds2+!\"),\n                                                    array(DIRECTORY_SEPARATOR,\n                                                          DIRECTORY_SEPARATOR,\n                                                          DIRECTORY_SEPARATOR),\n                                                    array($dest_file, $orig_file));\n        $final_dest_file = $installed_as = $dest_file;\n        if (isset($this->_options['packagingroot'])) {\n            $installedas_dest_dir  = dirname($final_dest_file);\n            $installedas_dest_file = $dest_dir . DIRECTORY_SEPARATOR . '.tmp' . basename($final_dest_file);\n            $final_dest_file = $this->_prependPath($final_dest_file, $this->_options['packagingroot']);\n        } else {\n            $installedas_dest_dir  = dirname($final_dest_file);\n            $installedas_dest_file = $installedas_dest_dir . DIRECTORY_SEPARATOR . '.tmp' . basename($final_dest_file);\n        }\n\n        $dest_dir  = dirname($final_dest_file);\n        $dest_file = $dest_dir . DIRECTORY_SEPARATOR . '.tmp' . basename($final_dest_file);\n        if (preg_match('~/\\.\\.(/|\\\\z)|^\\.\\./~', str_replace('\\\\', '/', $dest_file))) {\n            return $this->raiseError(\"SECURITY ERROR: file $file (installed to $dest_file) contains parent directory reference ..\", PEAR_INSTALLER_FAILED);\n        }\n        // }}}\n\n        if (empty($this->_options['register-only']) &&\n              (!file_exists($dest_dir) || !is_dir($dest_dir))) {\n            if (!$this->mkDirHier($dest_dir)) {\n                return $this->raiseError(\"failed to mkdir $dest_dir\",\n                                         PEAR_INSTALLER_FAILED);\n            }\n            $this->log(3, \"+ mkdir $dest_dir\");\n        }\n\n        // pretty much nothing happens if we are only registering the install\n        if (empty($this->_options['register-only'])) {\n            if (empty($atts['replacements'])) {\n                if (!file_exists($orig_file)) {\n                    return $this->raiseError(\"file $orig_file does not exist\",\n                                             PEAR_INSTALLER_FAILED);\n                }\n\n                if (!@copy($orig_file, $dest_file)) {\n                    return $this->raiseError(\"failed to write $dest_file: $php_errormsg\",\n                                             PEAR_INSTALLER_FAILED);\n                }\n\n                $this->log(3, \"+ cp $orig_file $dest_file\");\n                if (isset($atts['md5sum'])) {\n                    $md5sum = md5_file($dest_file);\n                }\n            } else {\n                // {{{ file with replacements\n                if (!file_exists($orig_file)) {\n                    return $this->raiseError(\"file does not exist\",\n                                             PEAR_INSTALLER_FAILED);\n                }\n\n                $contents = file_get_contents($orig_file);\n                if ($contents === false) {\n                    $contents = '';\n                }\n\n                if (isset($atts['md5sum'])) {\n                    $md5sum = md5($contents);\n                }\n\n                $subst_from = $subst_to = array();\n                foreach ($atts['replacements'] as $a) {\n                    $to = '';\n                    if ($a['type'] == 'php-const') {\n                        if (preg_match('/^[a-z0-9_]+\\\\z/i', $a['to'])) {\n                            eval(\"\\$to = $a[to];\");\n                        } else {\n                            if (!isset($options['soft'])) {\n                                $this->log(0, \"invalid php-const replacement: $a[to]\");\n                            }\n                            continue;\n                        }\n                    } elseif ($a['type'] == 'pear-config') {\n                        if ($a['to'] == 'master_server') {\n                            $chan = $this->_registry->getChannel($channel);\n                            if (!PEAR::isError($chan)) {\n                                $to = $chan->getServer();\n                            } else {\n                                $to = $this->config->get($a['to'], null, $channel);\n                            }\n                        } else {\n                            $to = $this->config->get($a['to'], null, $channel);\n                        }\n                        if (is_null($to)) {\n                            if (!isset($options['soft'])) {\n                                $this->log(0, \"invalid pear-config replacement: $a[to]\");\n                            }\n                            continue;\n                        }\n                    } elseif ($a['type'] == 'package-info') {\n                        if ($t = $this->pkginfo->packageInfo($a['to'])) {\n                            $to = $t;\n                        } else {\n                            if (!isset($options['soft'])) {\n                                $this->log(0, \"invalid package-info replacement: $a[to]\");\n                            }\n                            continue;\n                        }\n                    }\n                    if (!is_null($to)) {\n                        $subst_from[] = $a['from'];\n                        $subst_to[] = $to;\n                    }\n                }\n\n                $this->log(3, \"doing \".sizeof($subst_from).\" substitution(s) for $final_dest_file\");\n                if (sizeof($subst_from)) {\n                    $contents = str_replace($subst_from, $subst_to, $contents);\n                }\n\n                $wp = @fopen($dest_file, \"wb\");\n                if (!is_resource($wp)) {\n                    return $this->raiseError(\"failed to create $dest_file: $php_errormsg\",\n                                             PEAR_INSTALLER_FAILED);\n                }\n\n                if (@fwrite($wp, $contents) === false) {\n                    return $this->raiseError(\"failed writing to $dest_file: $php_errormsg\",\n                                             PEAR_INSTALLER_FAILED);\n                }\n\n                fclose($wp);\n                // }}}\n            }\n\n            // {{{ check the md5\n            if (isset($md5sum)) {\n                if (strtolower($md5sum) === strtolower($atts['md5sum'])) {\n                    $this->log(2, \"md5sum ok: $final_dest_file\");\n                } else {\n                    if (empty($options['force'])) {\n                        // delete the file\n                        if (file_exists($dest_file)) {\n                            unlink($dest_file);\n                        }\n\n                        if (!isset($options['ignore-errors'])) {\n                            return $this->raiseError(\"bad md5sum for file $final_dest_file\",\n                                                 PEAR_INSTALLER_FAILED);\n                        }\n\n                        if (!isset($options['soft'])) {\n                            $this->log(0, \"warning : bad md5sum for file $final_dest_file\");\n                        }\n                    } else {\n                        if (!isset($options['soft'])) {\n                            $this->log(0, \"warning : bad md5sum for file $final_dest_file\");\n                        }\n                    }\n                }\n            }\n            // }}}\n            // {{{ set file permissions\n            if (!OS_WINDOWS) {\n                if ($atts['role'] == 'script') {\n                    $mode = 0777 & ~(int)octdec($this->config->get('umask'));\n                    $this->log(3, \"+ chmod +x $dest_file\");\n                } else {\n                    $mode = 0666 & ~(int)octdec($this->config->get('umask'));\n                }\n\n                if ($atts['role'] != 'src') {\n                    $this->addFileOperation(\"chmod\", array($mode, $dest_file));\n                    if (!@chmod($dest_file, $mode)) {\n                        if (!isset($options['soft'])) {\n                            $this->log(0, \"failed to change mode of $dest_file: $php_errormsg\");\n                        }\n                    }\n                }\n            }\n            // }}}\n\n            if ($atts['role'] == 'src') {\n                rename($dest_file, $final_dest_file);\n                $this->log(2, \"renamed source file $dest_file to $final_dest_file\");\n            } else {\n                $this->addFileOperation(\"rename\", array($dest_file, $final_dest_file,\n                    $atts['role'] == 'ext'));\n            }\n        }\n\n        // Store the full path where the file was installed for easy unistall\n        if ($atts['role'] != 'script') {\n            $loc = $this->config->get($atts['role'] . '_dir');\n        } else {\n            $loc = $this->config->get('bin_dir');\n        }\n\n        if ($atts['role'] != 'src') {\n            $this->addFileOperation(\"installed_as\", array($file, $installed_as,\n                                    $loc,\n                                    dirname(substr($installedas_dest_file, strlen($loc)))));\n        }\n\n        //$this->log(2, \"installed: $dest_file\");\n        return PEAR_INSTALLER_OK;\n    }\n\n    // }}}\n    // {{{ _installFile2()\n\n    /**\n     * @param PEAR_PackageFile_v1|PEAR_PackageFile_v2\n     * @param string filename\n     * @param array attributes from <file> tag in package.xml\n     * @param string path to install the file in\n     * @param array options from command-line\n     * @access private\n     */\n    function _installFile2(&$pkg, $file, &$real_atts, $tmp_path, $options)\n    {\n        $atts = $real_atts;\n        if (!isset($this->_registry)) {\n            $this->_registry = &$this->config->getRegistry();\n        }\n\n        $channel = $pkg->getChannel();\n        // {{{ assemble the destination paths\n        if (!in_array($atts['attribs']['role'],\n              PEAR_Installer_Role::getValidRoles($pkg->getPackageType()))) {\n            return $this->raiseError('Invalid role `' . $atts['attribs']['role'] .\n                    \"' for file $file\");\n        }\n\n        $role = &PEAR_Installer_Role::factory($pkg, $atts['attribs']['role'], $this->config);\n        $err  = $role->setup($this, $pkg, $atts['attribs'], $file);\n        if (PEAR::isError($err)) {\n            return $err;\n        }\n\n        if (!$role->isInstallable()) {\n            return;\n        }\n\n        $info = $role->processInstallation($pkg, $atts['attribs'], $file, $tmp_path);\n        if (PEAR::isError($info)) {\n            return $info;\n        }\n\n        list($save_destdir, $dest_dir, $dest_file, $orig_file) = $info;\n        if (preg_match('~/\\.\\.(/|\\\\z)|^\\.\\./~', str_replace('\\\\', '/', $dest_file))) {\n            return $this->raiseError(\"SECURITY ERROR: file $file (installed to $dest_file) contains parent directory reference ..\", PEAR_INSTALLER_FAILED);\n        }\n\n        $final_dest_file = $installed_as = $dest_file;\n        if (isset($this->_options['packagingroot'])) {\n            $final_dest_file = $this->_prependPath($final_dest_file,\n                $this->_options['packagingroot']);\n        }\n\n        $dest_dir  = dirname($final_dest_file);\n        $dest_file = $dest_dir . DIRECTORY_SEPARATOR . '.tmp' . basename($final_dest_file);\n        // }}}\n\n        if (empty($this->_options['register-only'])) {\n            if (!file_exists($dest_dir) || !is_dir($dest_dir)) {\n                if (!$this->mkDirHier($dest_dir)) {\n                    return $this->raiseError(\"failed to mkdir $dest_dir\",\n                                             PEAR_INSTALLER_FAILED);\n                }\n                $this->log(3, \"+ mkdir $dest_dir\");\n            }\n        }\n\n        $attribs = $atts['attribs'];\n        unset($atts['attribs']);\n        // pretty much nothing happens if we are only registering the install\n        if (empty($this->_options['register-only'])) {\n            if (!count($atts)) { // no tasks\n                if (!file_exists($orig_file)) {\n                    return $this->raiseError(\"file $orig_file does not exist\",\n                                             PEAR_INSTALLER_FAILED);\n                }\n\n                if (!@copy($orig_file, $dest_file)) {\n                    return $this->raiseError(\"failed to write $dest_file: $php_errormsg\",\n                                             PEAR_INSTALLER_FAILED);\n                }\n\n                $this->log(3, \"+ cp $orig_file $dest_file\");\n                if (isset($attribs['md5sum'])) {\n                    $md5sum = md5_file($dest_file);\n                }\n            } else { // file with tasks\n                if (!file_exists($orig_file)) {\n                    return $this->raiseError(\"file $orig_file does not exist\",\n                                             PEAR_INSTALLER_FAILED);\n                }\n\n                $contents = file_get_contents($orig_file);\n                if ($contents === false) {\n                    $contents = '';\n                }\n\n                if (isset($attribs['md5sum'])) {\n                    $md5sum = md5($contents);\n                }\n\n                foreach ($atts as $tag => $raw) {\n                    $tag = str_replace(array($pkg->getTasksNs() . ':', '-'), array('', '_'), $tag);\n                    $task = \"PEAR_Task_$tag\";\n                    $task = &new $task($this->config, $this, PEAR_TASK_INSTALL);\n                    if (!$task->isScript()) { // scripts are only handled after installation\n                        $task->init($raw, $attribs, $pkg->getLastInstalledVersion());\n                        $res = $task->startSession($pkg, $contents, $final_dest_file);\n                        if ($res === false) {\n                            continue; // skip this file\n                        }\n\n                        if (PEAR::isError($res)) {\n                            return $res;\n                        }\n\n                        $contents = $res; // save changes\n                    }\n\n                    $wp = @fopen($dest_file, \"wb\");\n                    if (!is_resource($wp)) {\n                        return $this->raiseError(\"failed to create $dest_file: $php_errormsg\",\n                                                 PEAR_INSTALLER_FAILED);\n                    }\n\n                    if (fwrite($wp, $contents) === false) {\n                        return $this->raiseError(\"failed writing to $dest_file: $php_errormsg\",\n                                                 PEAR_INSTALLER_FAILED);\n                    }\n\n                    fclose($wp);\n                }\n            }\n\n            // {{{ check the md5\n            if (isset($md5sum)) {\n                // Make sure the original md5 sum matches with expected\n                if (strtolower($md5sum) === strtolower($attribs['md5sum'])) {\n                    $this->log(2, \"md5sum ok: $final_dest_file\");\n\n                    if (isset($contents)) {\n                        // set md5 sum based on $content in case any tasks were run.\n                        $real_atts['attribs']['md5sum'] = md5($contents);\n                    }\n                } else {\n                    if (empty($options['force'])) {\n                        // delete the file\n                        if (file_exists($dest_file)) {\n                            unlink($dest_file);\n                        }\n\n                        if (!isset($options['ignore-errors'])) {\n                            return $this->raiseError(\"bad md5sum for file $final_dest_file\",\n                                                     PEAR_INSTALLER_FAILED);\n                        }\n\n                        if (!isset($options['soft'])) {\n                            $this->log(0, \"warning : bad md5sum for file $final_dest_file\");\n                        }\n                    } else {\n                        if (!isset($options['soft'])) {\n                            $this->log(0, \"warning : bad md5sum for file $final_dest_file\");\n                        }\n                    }\n                }\n            } else {\n                $real_atts['attribs']['md5sum'] = md5_file($dest_file);\n            }\n\n            // }}}\n            // {{{ set file permissions\n            if (!OS_WINDOWS) {\n                if ($role->isExecutable()) {\n                    $mode = 0777 & ~(int)octdec($this->config->get('umask'));\n                    $this->log(3, \"+ chmod +x $dest_file\");\n                } else {\n                    $mode = 0666 & ~(int)octdec($this->config->get('umask'));\n                }\n\n                if ($attribs['role'] != 'src') {\n                    $this->addFileOperation(\"chmod\", array($mode, $dest_file));\n                    if (!@chmod($dest_file, $mode)) {\n                        if (!isset($options['soft'])) {\n                            $this->log(0, \"failed to change mode of $dest_file: $php_errormsg\");\n                        }\n                    }\n                }\n            }\n            // }}}\n\n            if ($attribs['role'] == 'src') {\n                rename($dest_file, $final_dest_file);\n                $this->log(2, \"renamed source file $dest_file to $final_dest_file\");\n            } else {\n                $this->addFileOperation(\"rename\", array($dest_file, $final_dest_file, $role->isExtension()));\n            }\n        }\n\n        // Store the full path where the file was installed for easy uninstall\n        if ($attribs['role'] != 'src') {\n            $loc = $this->config->get($role->getLocationConfig(), null, $channel);\n            $this->addFileOperation('installed_as', array($file, $installed_as,\n                                $loc,\n                                dirname(substr($installed_as, strlen($loc)))));\n        }\n\n        //$this->log(2, \"installed: $dest_file\");\n        return PEAR_INSTALLER_OK;\n    }\n\n    // }}}\n    // {{{ addFileOperation()\n\n    /**\n     * Add a file operation to the current file transaction.\n     *\n     * @see startFileTransaction()\n     * @param string $type This can be one of:\n     *    - rename:  rename a file ($data has 3 values)\n     *    - backup:  backup an existing file ($data has 1 value)\n     *    - removebackup:  clean up backups created during install ($data has 1 value)\n     *    - chmod:   change permissions on a file ($data has 2 values)\n     *    - delete:  delete a file ($data has 1 value)\n     *    - rmdir:   delete a directory if empty ($data has 1 value)\n     *    - installed_as: mark a file as installed ($data has 4 values).\n     * @param array $data For all file operations, this array must contain the\n     *    full path to the file or directory that is being operated on.  For\n     *    the rename command, the first parameter must be the file to rename,\n     *    the second its new name, the third whether this is a PHP extension.\n     *\n     *    The installed_as operation contains 4 elements in this order:\n     *    1. Filename as listed in the filelist element from package.xml\n     *    2. Full path to the installed file\n     *    3. Full path from the php_dir configuration variable used in this\n     *       installation\n     *    4. Relative path from the php_dir that this file is installed in\n     */\n    function addFileOperation($type, $data)\n    {\n        if (!is_array($data)) {\n            return $this->raiseError('Internal Error: $data in addFileOperation'\n                . ' must be an array, was ' . gettype($data));\n        }\n\n        if ($type == 'chmod') {\n            $octmode = decoct($data[0]);\n            $this->log(3, \"adding to transaction: $type $octmode $data[1]\");\n        } else {\n            $this->log(3, \"adding to transaction: $type \" . implode(\" \", $data));\n        }\n        $this->file_operations[] = array($type, $data);\n    }\n\n    // }}}\n    // {{{ startFileTransaction()\n\n    function startFileTransaction($rollback_in_case = false)\n    {\n        if (count($this->file_operations) && $rollback_in_case) {\n            $this->rollbackFileTransaction();\n        }\n        $this->file_operations = array();\n    }\n\n    // }}}\n    // {{{ commitFileTransaction()\n\n    function commitFileTransaction()\n    {\n        $n = count($this->file_operations);\n        $this->log(2, \"about to commit $n file operations\");\n        // {{{ first, check permissions and such manually\n        $errors = array();\n        foreach ($this->file_operations as $tr) {\n            list($type, $data) = $tr;\n            switch ($type) {\n                case 'rename':\n                    if (!file_exists($data[0])) {\n                        $errors[] = \"cannot rename file $data[0], doesn't exist\";\n                    }\n\n                    // check that dest dir. is writable\n                    if (!is_writable(dirname($data[1]))) {\n                        $errors[] = \"permission denied ($type): $data[1]\";\n                    }\n                    break;\n                case 'chmod':\n                    // check that file is writable\n                    if (!is_writable($data[1])) {\n                        $errors[] = \"permission denied ($type): $data[1] \" . decoct($data[0]);\n                    }\n                    break;\n                case 'delete':\n                    if (!file_exists($data[0])) {\n                        $this->log(2, \"warning: file $data[0] doesn't exist, can't be deleted\");\n                    }\n                    // check that directory is writable\n                    if (file_exists($data[0])) {\n                        if (!is_writable(dirname($data[0]))) {\n                            $errors[] = \"permission denied ($type): $data[0]\";\n                        } else {\n                            // make sure the file to be deleted can be opened for writing\n                            $fp = false;\n                            if (!is_dir($data[0]) &&\n                                  (!is_writable($data[0]) || !($fp = @fopen($data[0], 'a')))) {\n                                $errors[] = \"permission denied ($type): $data[0]\";\n                            } elseif ($fp) {\n                                fclose($fp);\n                            }\n                        }\n                    }\n                    break;\n            }\n\n        }\n        // }}}\n        $m = count($errors);\n        if ($m > 0) {\n            foreach ($errors as $error) {\n                if (!isset($this->_options['soft'])) {\n                    $this->log(1, $error);\n                }\n            }\n\n            if (!isset($this->_options['ignore-errors'])) {\n                return false;\n            }\n        }\n\n        $this->_dirtree = array();\n        // {{{ really commit the transaction\n        foreach ($this->file_operations as $i => $tr) {\n            if (!$tr) {\n                // support removal of non-existing backups\n                continue;\n            }\n\n            list($type, $data) = $tr;\n            switch ($type) {\n                case 'backup':\n                    if (!file_exists($data[0])) {\n                        $this->file_operations[$i] = false;\n                        break;\n                    }\n\n                    if (!@copy($data[0], $data[0] . '.bak')) {\n                        $this->log(1, 'Could not copy ' . $data[0] . ' to ' . $data[0] .\n                            '.bak ' . $php_errormsg);\n                        return false;\n                    }\n                    $this->log(3, \"+ backup $data[0] to $data[0].bak\");\n                    break;\n                case 'removebackup':\n                    if (file_exists($data[0] . '.bak') && is_writable($data[0] . '.bak')) {\n                        unlink($data[0] . '.bak');\n                        $this->log(3, \"+ rm backup of $data[0] ($data[0].bak)\");\n                    }\n                    break;\n                case 'rename':\n                    $test = file_exists($data[1]) ? @unlink($data[1]) : null;\n                    if (!$test && file_exists($data[1])) {\n                        if ($data[2]) {\n                            $extra = ', this extension must be installed manually.  Rename to \"' .\n                                basename($data[1]) . '\"';\n                        } else {\n                            $extra = '';\n                        }\n\n                        if (!isset($this->_options['soft'])) {\n                            $this->log(1, 'Could not delete ' . $data[1] . ', cannot rename ' .\n                                $data[0] . $extra);\n                        }\n\n                        if (!isset($this->_options['ignore-errors'])) {\n                            return false;\n                        }\n                    }\n\n                    // permissions issues with rename - copy() is far superior\n                    $perms = @fileperms($data[0]);\n                    if (!@copy($data[0], $data[1])) {\n                        $this->log(1, 'Could not rename ' . $data[0] . ' to ' . $data[1] .\n                            ' ' . $php_errormsg);\n                        return false;\n                    }\n\n                    // copy over permissions, otherwise they are lost\n                    @chmod($data[1], $perms);\n                    @unlink($data[0]);\n                    $this->log(3, \"+ mv $data[0] $data[1]\");\n                    break;\n                case 'chmod':\n                    if (!@chmod($data[1], $data[0])) {\n                        $this->log(1, 'Could not chmod ' . $data[1] . ' to ' .\n                            decoct($data[0]) . ' ' . $php_errormsg);\n                        return false;\n                    }\n\n                    $octmode = decoct($data[0]);\n                    $this->log(3, \"+ chmod $octmode $data[1]\");\n                    break;\n                case 'delete':\n                    if (file_exists($data[0])) {\n                        if (!@unlink($data[0])) {\n                            $this->log(1, 'Could not delete ' . $data[0] . ' ' .\n                                $php_errormsg);\n                            return false;\n                        }\n                        $this->log(3, \"+ rm $data[0]\");\n                    }\n                    break;\n                case 'rmdir':\n                    if (file_exists($data[0])) {\n                        do {\n                            $testme = opendir($data[0]);\n                            while (false !== ($entry = readdir($testme))) {\n                                if ($entry == '.' || $entry == '..') {\n                                    continue;\n                                }\n                                closedir($testme);\n                                break 2; // this directory is not empty and can't be\n                                         // deleted\n                            }\n\n                            closedir($testme);\n                            if (!@rmdir($data[0])) {\n                                $this->log(1, 'Could not rmdir ' . $data[0] . ' ' .\n                                    $php_errormsg);\n                                return false;\n                            }\n                            $this->log(3, \"+ rmdir $data[0]\");\n                        } while (false);\n                    }\n                    break;\n                case 'installed_as':\n                    $this->pkginfo->setInstalledAs($data[0], $data[1]);\n                    if (!isset($this->_dirtree[dirname($data[1])])) {\n                        $this->_dirtree[dirname($data[1])] = true;\n                        $this->pkginfo->setDirtree(dirname($data[1]));\n\n                        while(!empty($data[3]) && dirname($data[3]) != $data[3] &&\n                                $data[3] != '/' && $data[3] != '\\\\') {\n                            $this->pkginfo->setDirtree($pp =\n                                $this->_prependPath($data[3], $data[2]));\n                            $this->_dirtree[$pp] = true;\n                            $data[3] = dirname($data[3]);\n                        }\n                    }\n                    break;\n            }\n        }\n        // }}}\n        $this->log(2, \"successfully committed $n file operations\");\n        $this->file_operations = array();\n        return true;\n    }\n\n    // }}}\n    // {{{ rollbackFileTransaction()\n\n    function rollbackFileTransaction()\n    {\n        $n = count($this->file_operations);\n        $this->log(2, \"rolling back $n file operations\");\n        foreach ($this->file_operations as $tr) {\n            list($type, $data) = $tr;\n            switch ($type) {\n                case 'backup':\n                    if (file_exists($data[0] . '.bak')) {\n                        if (file_exists($data[0] && is_writable($data[0]))) {\n                            unlink($data[0]);\n                        }\n                        @copy($data[0] . '.bak', $data[0]);\n                        $this->log(3, \"+ restore $data[0] from $data[0].bak\");\n                    }\n                    break;\n                case 'removebackup':\n                    if (file_exists($data[0] . '.bak') && is_writable($data[0] . '.bak')) {\n                        unlink($data[0] . '.bak');\n                        $this->log(3, \"+ rm backup of $data[0] ($data[0].bak)\");\n                    }\n                    break;\n                case 'rename':\n                    @unlink($data[0]);\n                    $this->log(3, \"+ rm $data[0]\");\n                    break;\n                case 'mkdir':\n                    @rmdir($data[0]);\n                    $this->log(3, \"+ rmdir $data[0]\");\n                    break;\n                case 'chmod':\n                    break;\n                case 'delete':\n                    break;\n                case 'installed_as':\n                    $this->pkginfo->setInstalledAs($data[0], false);\n                    break;\n            }\n        }\n        $this->pkginfo->resetDirtree();\n        $this->file_operations = array();\n    }\n\n    // }}}\n    // {{{ mkDirHier($dir)\n\n    function mkDirHier($dir)\n    {\n        $this->addFileOperation('mkdir', array($dir));\n        return parent::mkDirHier($dir);\n    }\n\n    // }}}\n    // {{{ download()\n\n    /**\n     * Download any files and their dependencies, if necessary\n     *\n     * @param array a mixed list of package names, local files, or package.xml\n     * @param PEAR_Config\n     * @param array options from the command line\n     * @param array this is the array that will be populated with packages to\n     *              install.  Format of each entry:\n     *\n     * <code>\n     * array('pkg' => 'package_name', 'file' => '/path/to/local/file',\n     *    'info' => array() // parsed package.xml\n     * );\n     * </code>\n     * @param array this will be populated with any error messages\n     * @param false private recursion variable\n     * @param false private recursion variable\n     * @param false private recursion variable\n     * @deprecated in favor of PEAR_Downloader\n     */\n    function download($packages, $options, &$config, &$installpackages,\n                      &$errors, $installed = false, $willinstall = false, $state = false)\n    {\n        // trickiness: initialize here\n        parent::PEAR_Downloader($this->ui, $options, $config);\n        $ret             = parent::download($packages);\n        $errors          = $this->getErrorMsgs();\n        $installpackages = $this->getDownloadedPackages();\n        trigger_error(\"PEAR Warning: PEAR_Installer::download() is deprecated \" .\n                      \"in favor of PEAR_Downloader class\", E_USER_WARNING);\n        return $ret;\n    }\n\n    // }}}\n    // {{{ _parsePackageXml()\n\n    function _parsePackageXml(&$descfile)\n    {\n        // Parse xml file -----------------------------------------------\n        $pkg = new PEAR_PackageFile($this->config, $this->debug);\n        PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n        $p = &$pkg->fromAnyFile($descfile, PEAR_VALIDATE_INSTALLING);\n        PEAR::staticPopErrorHandling();\n        if (PEAR::isError($p)) {\n            if (is_array($p->getUserInfo())) {\n                foreach ($p->getUserInfo() as $err) {\n                    $loglevel = $err['level'] == 'error' ? 0 : 1;\n                    if (!isset($this->_options['soft'])) {\n                        $this->log($loglevel, ucfirst($err['level']) . ': ' . $err['message']);\n                    }\n                }\n            }\n            return $this->raiseError('Installation failed: invalid package file');\n        }\n\n        $descfile = $p->getPackageFile();\n        return $p;\n    }\n\n    // }}}\n    /**\n     * Set the list of PEAR_Downloader_Package objects to allow more sane\n     * dependency validation\n     * @param array\n     */\n    function setDownloadedPackages(&$pkgs)\n    {\n        PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n        $err = $this->analyzeDependencies($pkgs);\n        PEAR::popErrorHandling();\n        if (PEAR::isError($err)) {\n            return $err;\n        }\n        $this->_downloadedPackages = &$pkgs;\n    }\n\n    /**\n     * Set the list of PEAR_Downloader_Package objects to allow more sane\n     * dependency validation\n     * @param array\n     */\n    function setUninstallPackages(&$pkgs)\n    {\n        $this->_downloadedPackages = &$pkgs;\n    }\n\n    function getInstallPackages()\n    {\n        return $this->_downloadedPackages;\n    }\n\n    // {{{ install()\n\n    /**\n     * Installs the files within the package file specified.\n     *\n     * @param string|PEAR_Downloader_Package $pkgfile path to the package file,\n     *        or a pre-initialized packagefile object\n     * @param array $options\n     * recognized options:\n     * - installroot   : optional prefix directory for installation\n     * - force         : force installation\n     * - register-only : update registry but don't install files\n     * - upgrade       : upgrade existing install\n     * - soft          : fail silently\n     * - nodeps        : ignore dependency conflicts/missing dependencies\n     * - alldeps       : install all dependencies\n     * - onlyreqdeps   : install only required dependencies\n     *\n     * @return array|PEAR_Error package info if successful\n     */\n    function install($pkgfile, $options = array())\n    {\n        $this->_options = $options;\n        $this->_registry = &$this->config->getRegistry();\n        if (is_object($pkgfile)) {\n            $dlpkg    = &$pkgfile;\n            $pkg      = $pkgfile->getPackageFile();\n            $pkgfile  = $pkg->getArchiveFile();\n            $descfile = $pkg->getPackageFile();\n        } else {\n            $descfile = $pkgfile;\n            $pkg      = $this->_parsePackageXml($descfile);\n            if (PEAR::isError($pkg)) {\n                return $pkg;\n            }\n        }\n\n        $tmpdir   = dirname($descfile);\n        if (realpath($descfile) != realpath($pkgfile)) {\n            // Use the temp_dir since $descfile can contain the download dir path\n            $tmpdir = $this->config->get('temp_dir', null, 'pear.php.net');\n            $tmpdir = System::mktemp(\"-d -t $tmpdir\");\n\n            $tar = new Archive_Tar($pkgfile);\n            if (!$tar->extract($tmpdir)) {\n                return $this->raiseError(\"unable to unpack $pkgfile\");\n            }\n        }\n\n        $pkgname = $pkg->getName();\n        $channel = $pkg->getChannel();\n        if (isset($this->_options['packagingroot'])) {\n            $regdir = $this->_prependPath(\n                $this->config->get('php_dir', null, 'pear.php.net'),\n                $this->_options['packagingroot']);\n\n            $packrootphp_dir = $this->_prependPath(\n                $this->config->get('php_dir', null, $channel),\n                $this->_options['packagingroot']);\n        }\n\n        if (isset($options['installroot'])) {\n            $this->config->setInstallRoot($options['installroot']);\n            $this->_registry = &$this->config->getRegistry();\n            $installregistry = &$this->_registry;\n            $this->installroot = ''; // all done automagically now\n            $php_dir = $this->config->get('php_dir', null, $channel);\n        } else {\n            $this->config->setInstallRoot(false);\n            $this->_registry = &$this->config->getRegistry();\n            if (isset($this->_options['packagingroot'])) {\n                $installregistry = &new PEAR_Registry($regdir);\n                if (!$installregistry->channelExists($channel, true)) {\n                    // we need to fake a channel-discover of this channel\n                    $chanobj = $this->_registry->getChannel($channel, true);\n                    $installregistry->addChannel($chanobj);\n                }\n                $php_dir = $packrootphp_dir;\n            } else {\n                $installregistry = &$this->_registry;\n                $php_dir = $this->config->get('php_dir', null, $channel);\n            }\n            $this->installroot = '';\n        }\n\n        // {{{ checks to do when not in \"force\" mode\n        if (empty($options['force']) &&\n              (file_exists($this->config->get('php_dir')) &&\n               is_dir($this->config->get('php_dir')))) {\n            $testp = $channel == 'pear.php.net' ? $pkgname : array($channel, $pkgname);\n            $instfilelist = $pkg->getInstallationFileList(true);\n            if (PEAR::isError($instfilelist)) {\n                return $instfilelist;\n            }\n\n            // ensure we have the most accurate registry\n            $installregistry->flushFileMap();\n            $test = $installregistry->checkFileMap($instfilelist, $testp, '1.1');\n            if (PEAR::isError($test)) {\n                return $test;\n            }\n\n            if (sizeof($test)) {\n                $pkgs = $this->getInstallPackages();\n                $found = false;\n                foreach ($pkgs as $param) {\n                    if ($pkg->isSubpackageOf($param)) {\n                        $found = true;\n                        break;\n                    }\n                }\n\n                if ($found) {\n                    // subpackages can conflict with earlier versions of parent packages\n                    $parentreg = $installregistry->packageInfo($param->getPackage(), null, $param->getChannel());\n                    $tmp = $test;\n                    foreach ($tmp as $file => $info) {\n                        if (is_array($info)) {\n                            if (strtolower($info[1]) == strtolower($param->getPackage()) &&\n                                  strtolower($info[0]) == strtolower($param->getChannel())\n                            ) {\n                                if (isset($parentreg['filelist'][$file])) {\n                                    unset($parentreg['filelist'][$file]);\n                                } else{\n                                    $pos     = strpos($file, '/');\n                                    $basedir = substr($file, 0, $pos);\n                                    $file2   = substr($file, $pos + 1);\n                                    if (isset($parentreg['filelist'][$file2]['baseinstalldir'])\n                                        && $parentreg['filelist'][$file2]['baseinstalldir'] === $basedir\n                                    ) {\n                                        unset($parentreg['filelist'][$file2]);\n                                    }\n                                }\n\n                                unset($test[$file]);\n                            }\n                        } else {\n                            if (strtolower($param->getChannel()) != 'pear.php.net') {\n                                continue;\n                            }\n\n                            if (strtolower($info) == strtolower($param->getPackage())) {\n                                if (isset($parentreg['filelist'][$file])) {\n                                    unset($parentreg['filelist'][$file]);\n                                } else{\n                                    $pos     = strpos($file, '/');\n                                    $basedir = substr($file, 0, $pos);\n                                    $file2   = substr($file, $pos + 1);\n                                    if (isset($parentreg['filelist'][$file2]['baseinstalldir'])\n                                        && $parentreg['filelist'][$file2]['baseinstalldir'] === $basedir\n                                    ) {\n                                        unset($parentreg['filelist'][$file2]);\n                                    }\n                                }\n\n                                unset($test[$file]);\n                            }\n                        }\n                    }\n\n                    $pfk = &new PEAR_PackageFile($this->config);\n                    $parentpkg = &$pfk->fromArray($parentreg);\n                    $installregistry->updatePackage2($parentpkg);\n                }\n\n                if ($param->getChannel() == 'pecl.php.net' && isset($options['upgrade'])) {\n                    $tmp = $test;\n                    foreach ($tmp as $file => $info) {\n                        if (is_string($info)) {\n                            // pear.php.net packages are always stored as strings\n                            if (strtolower($info) == strtolower($param->getPackage())) {\n                                // upgrading existing package\n                                unset($test[$file]);\n                            }\n                        }\n                    }\n                }\n\n                if (count($test)) {\n                    $msg = \"$channel/$pkgname: conflicting files found:\\n\";\n                    $longest = max(array_map(\"strlen\", array_keys($test)));\n                    $fmt = \"%${longest}s (%s)\\n\";\n                    foreach ($test as $file => $info) {\n                        if (!is_array($info)) {\n                            $info = array('pear.php.net', $info);\n                        }\n                        $info = $info[0] . '/' . $info[1];\n                        $msg .= sprintf($fmt, $file, $info);\n                    }\n\n                    if (!isset($options['ignore-errors'])) {\n                        return $this->raiseError($msg);\n                    }\n\n                    if (!isset($options['soft'])) {\n                        $this->log(0, \"WARNING: $msg\");\n                    }\n                }\n            }\n        }\n        // }}}\n\n        $this->startFileTransaction();\n\n        if (empty($options['upgrade']) && empty($options['soft'])) {\n            // checks to do only when installing new packages\n            if ($channel == 'pecl.php.net') {\n                $test = $installregistry->packageExists($pkgname, $channel);\n                if (!$test) {\n                    $test = $installregistry->packageExists($pkgname, 'pear.php.net');\n                }\n            } else {\n                $test = $installregistry->packageExists($pkgname, $channel);\n            }\n\n            if (empty($options['force']) && $test) {\n                return $this->raiseError(\"$channel/$pkgname is already installed\");\n            }\n        } else {\n            $usechannel = $channel;\n            if ($channel == 'pecl.php.net') {\n                $test = $installregistry->packageExists($pkgname, $channel);\n                if (!$test) {\n                    $test = $installregistry->packageExists($pkgname, 'pear.php.net');\n                    $usechannel = 'pear.php.net';\n                }\n            } else {\n                $test = $installregistry->packageExists($pkgname, $channel);\n            }\n\n            if ($test) {\n                $v1 = $installregistry->packageInfo($pkgname, 'version', $usechannel);\n                $v2 = $pkg->getVersion();\n                $cmp = version_compare(\"$v1\", \"$v2\", 'gt');\n                if (empty($options['force']) && !version_compare(\"$v2\", \"$v1\", 'gt')) {\n                    return $this->raiseError(\"upgrade to a newer version ($v2 is not newer than $v1)\");\n                }\n\n                if (empty($options['register-only'])) {\n                    // when upgrading, remove old release's files first:\n                    if (PEAR::isError($err = $this->_deletePackageFiles($pkgname, $usechannel,\n                          true))) {\n                        if (!isset($options['ignore-errors'])) {\n                            return $this->raiseError($err);\n                        }\n\n                        if (!isset($options['soft'])) {\n                            $this->log(0, 'WARNING: ' . $err->getMessage());\n                        }\n                    } else {\n                        $backedup = $err;\n                    }\n                }\n            }\n        }\n\n        // {{{ Copy files to dest dir ---------------------------------------\n\n        // info from the package it self we want to access from _installFile\n        $this->pkginfo = &$pkg;\n        // used to determine whether we should build any C code\n        $this->source_files = 0;\n\n        $savechannel = $this->config->get('default_channel');\n        if (empty($options['register-only']) && !is_dir($php_dir)) {\n            if (PEAR::isError(System::mkdir(array('-p'), $php_dir))) {\n                return $this->raiseError(\"no installation destination directory '$php_dir'\\n\");\n            }\n        }\n\n        if (substr($pkgfile, -4) != '.xml') {\n            $tmpdir .= DIRECTORY_SEPARATOR . $pkgname . '-' . $pkg->getVersion();\n        }\n\n        $this->configSet('default_channel', $channel);\n        // {{{ install files\n\n        $ver = $pkg->getPackagexmlVersion();\n        if (version_compare($ver, '2.0', '>=')) {\n            $filelist = $pkg->getInstallationFilelist();\n        } else {\n            $filelist = $pkg->getFileList();\n        }\n\n        if (PEAR::isError($filelist)) {\n            return $filelist;\n        }\n\n        $p = &$installregistry->getPackage($pkgname, $channel);\n        $dirtree = (empty($options['register-only']) && $p) ? $p->getDirTree() : false;\n\n        $pkg->resetFilelist();\n        $pkg->setLastInstalledVersion($installregistry->packageInfo($pkg->getPackage(),\n            'version', $pkg->getChannel()));\n        foreach ($filelist as $file => $atts) {\n            $this->expectError(PEAR_INSTALLER_FAILED);\n            if ($pkg->getPackagexmlVersion() == '1.0') {\n                $res = $this->_installFile($file, $atts, $tmpdir, $options);\n            } else {\n                $res = $this->_installFile2($pkg, $file, $atts, $tmpdir, $options);\n            }\n            $this->popExpect();\n\n            if (PEAR::isError($res)) {\n                if (empty($options['ignore-errors'])) {\n                    $this->rollbackFileTransaction();\n                    if ($res->getMessage() == \"file does not exist\") {\n                        $this->raiseError(\"file $file in package.xml does not exist\");\n                    }\n\n                    return $this->raiseError($res);\n                }\n\n                if (!isset($options['soft'])) {\n                    $this->log(0, \"Warning: \" . $res->getMessage());\n                }\n            }\n\n            $real = isset($atts['attribs']) ? $atts['attribs'] : $atts;\n            if ($res == PEAR_INSTALLER_OK && $real['role'] != 'src') {\n                // Register files that were installed\n                $pkg->installedFile($file, $atts);\n            }\n        }\n        // }}}\n\n        // {{{ compile and install source files\n        if ($this->source_files > 0 && empty($options['nobuild'])) {\n            if (PEAR::isError($err =\n                  $this->_compileSourceFiles($savechannel, $pkg))) {\n                return $err;\n            }\n        }\n        // }}}\n\n        if (isset($backedup)) {\n            $this->_removeBackups($backedup);\n        }\n\n        if (!$this->commitFileTransaction()) {\n            $this->rollbackFileTransaction();\n            $this->configSet('default_channel', $savechannel);\n            return $this->raiseError(\"commit failed\", PEAR_INSTALLER_FAILED);\n        }\n        // }}}\n\n        $ret          = false;\n        $installphase = 'install';\n        $oldversion   = false;\n        // {{{ Register that the package is installed -----------------------\n        if (empty($options['upgrade'])) {\n            // if 'force' is used, replace the info in registry\n            $usechannel = $channel;\n            if ($channel == 'pecl.php.net') {\n                $test = $installregistry->packageExists($pkgname, $channel);\n                if (!$test) {\n                    $test = $installregistry->packageExists($pkgname, 'pear.php.net');\n                    $usechannel = 'pear.php.net';\n                }\n            } else {\n                $test = $installregistry->packageExists($pkgname, $channel);\n            }\n\n            if (!empty($options['force']) && $test) {\n                $oldversion = $installregistry->packageInfo($pkgname, 'version', $usechannel);\n                $installregistry->deletePackage($pkgname, $usechannel);\n            }\n            $ret = $installregistry->addPackage2($pkg);\n        } else {\n            if ($dirtree) {\n                $this->startFileTransaction();\n                // attempt to delete empty directories\n                uksort($dirtree, array($this, '_sortDirs'));\n                foreach($dirtree as $dir => $notused) {\n                    $this->addFileOperation('rmdir', array($dir));\n                }\n                $this->commitFileTransaction();\n            }\n\n            $usechannel = $channel;\n            if ($channel == 'pecl.php.net') {\n                $test = $installregistry->packageExists($pkgname, $channel);\n                if (!$test) {\n                    $test = $installregistry->packageExists($pkgname, 'pear.php.net');\n                    $usechannel = 'pear.php.net';\n                }\n            } else {\n                $test = $installregistry->packageExists($pkgname, $channel);\n            }\n\n            // new: upgrade installs a package if it isn't installed\n            if (!$test) {\n                $ret = $installregistry->addPackage2($pkg);\n            } else {\n                if ($usechannel != $channel) {\n                    $installregistry->deletePackage($pkgname, $usechannel);\n                    $ret = $installregistry->addPackage2($pkg);\n                } else {\n                    $ret = $installregistry->updatePackage2($pkg);\n                }\n                $installphase = 'upgrade';\n            }\n        }\n\n        if (!$ret) {\n            $this->configSet('default_channel', $savechannel);\n            return $this->raiseError(\"Adding package $channel/$pkgname to registry failed\");\n        }\n        // }}}\n\n        $this->configSet('default_channel', $savechannel);\n        if (class_exists('PEAR_Task_Common')) { // this is auto-included if any tasks exist\n            if (PEAR_Task_Common::hasPostinstallTasks()) {\n                PEAR_Task_Common::runPostinstallTasks($installphase);\n            }\n        }\n\n        return $pkg->toArray(true);\n    }\n\n    // }}}\n\n    // {{{ _compileSourceFiles()\n    /**\n     * @param string\n     * @param PEAR_PackageFile_v1|PEAR_PackageFile_v2\n     */\n    function _compileSourceFiles($savechannel, &$filelist)\n    {\n        require_once 'PEAR/Builder.php';\n        $this->log(1, \"$this->source_files source files, building\");\n        $bob = &new PEAR_Builder($this->ui);\n        $bob->debug = $this->debug;\n        $built = $bob->build($filelist, array(&$this, '_buildCallback'));\n        if (PEAR::isError($built)) {\n            $this->rollbackFileTransaction();\n            $this->configSet('default_channel', $savechannel);\n            return $built;\n        }\n\n        $this->log(1, \"\\nBuild process completed successfully\");\n        foreach ($built as $ext) {\n            $bn = basename($ext['file']);\n            list($_ext_name, $_ext_suff) = explode('.', $bn);\n            if ($_ext_suff == '.so' || $_ext_suff == '.dll') {\n                if (extension_loaded($_ext_name)) {\n                    $this->raiseError(\"Extension '$_ext_name' already loaded. \" .\n                                      'Please unload it in your php.ini file ' .\n                                      'prior to install or upgrade');\n                }\n                $role = 'ext';\n            } else {\n                $role = 'src';\n            }\n\n            $dest = $ext['dest'];\n            $packagingroot = '';\n            if (isset($this->_options['packagingroot'])) {\n                $packagingroot = $this->_options['packagingroot'];\n            }\n\n            $copyto = $this->_prependPath($dest, $packagingroot);\n            $extra  = $copyto != $dest ? \" as '$copyto'\" : '';\n            $this->log(1, \"Installing '$dest'$extra\");\n\n            $copydir = dirname($copyto);\n            // pretty much nothing happens if we are only registering the install\n            if (empty($this->_options['register-only'])) {\n                if (!file_exists($copydir) || !is_dir($copydir)) {\n                    if (!$this->mkDirHier($copydir)) {\n                        return $this->raiseError(\"failed to mkdir $copydir\",\n                            PEAR_INSTALLER_FAILED);\n                    }\n\n                    $this->log(3, \"+ mkdir $copydir\");\n                }\n\n                if (!@copy($ext['file'], $copyto)) {\n                    return $this->raiseError(\"failed to write $copyto ($php_errormsg)\", PEAR_INSTALLER_FAILED);\n                }\n\n                $this->log(3, \"+ cp $ext[file] $copyto\");\n                $this->addFileOperation('rename', array($ext['file'], $copyto));\n                if (!OS_WINDOWS) {\n                    $mode = 0666 & ~(int)octdec($this->config->get('umask'));\n                    $this->addFileOperation('chmod', array($mode, $copyto));\n                    if (!@chmod($copyto, $mode)) {\n                        $this->log(0, \"failed to change mode of $copyto ($php_errormsg)\");\n                    }\n                }\n            }\n\n\n            $data = array(\n                'role'         => $role,\n                'name'         => $bn,\n                'installed_as' => $dest,\n                'php_api'      => $ext['php_api'],\n                'zend_mod_api' => $ext['zend_mod_api'],\n                'zend_ext_api' => $ext['zend_ext_api'],\n            );\n\n            if ($filelist->getPackageXmlVersion() == '1.0') {\n                $filelist->installedFile($bn, $data);\n            } else {\n                $filelist->installedFile($bn, array('attribs' => $data));\n            }\n        }\n    }\n\n    // }}}\n    function &getUninstallPackages()\n    {\n        return $this->_downloadedPackages;\n    }\n    // {{{ uninstall()\n\n    /**\n     * Uninstall a package\n     *\n     * This method removes all files installed by the application, and then\n     * removes any empty directories.\n     * @param string package name\n     * @param array Command-line options.  Possibilities include:\n     *\n     *              - installroot: base installation dir, if not the default\n     *              - register-only : update registry but don't remove files\n     *              - nodeps: do not process dependencies of other packages to ensure\n     *                        uninstallation does not break things\n     */\n    function uninstall($package, $options = array())\n    {\n        $installRoot = isset($options['installroot']) ? $options['installroot'] : '';\n        $this->config->setInstallRoot($installRoot);\n\n        $this->installroot = '';\n        $this->_registry = &$this->config->getRegistry();\n        if (is_object($package)) {\n            $channel = $package->getChannel();\n            $pkg     = $package;\n            $package = $pkg->getPackage();\n        } else {\n            $pkg = false;\n            $info = $this->_registry->parsePackageName($package,\n                $this->config->get('default_channel'));\n            $channel = $info['channel'];\n            $package = $info['package'];\n        }\n\n        $savechannel = $this->config->get('default_channel');\n        $this->configSet('default_channel', $channel);\n        if (!is_object($pkg)) {\n            $pkg = $this->_registry->getPackage($package, $channel);\n        }\n\n        if (!$pkg) {\n            $this->configSet('default_channel', $savechannel);\n            return $this->raiseError($this->_registry->parsedPackageNameToString(\n                array(\n                    'channel' => $channel,\n                    'package' => $package\n                ), true) . ' not installed');\n        }\n\n        if ($pkg->getInstalledBinary()) {\n            // this is just an alias for a binary package\n            return $this->_registry->deletePackage($package, $channel);\n        }\n\n        $filelist = $pkg->getFilelist();\n        PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n        if (!class_exists('PEAR_Dependency2')) {\n            require_once 'PEAR/Dependency2.php';\n        }\n\n        $depchecker = &new PEAR_Dependency2($this->config, $options,\n            array('channel' => $channel, 'package' => $package),\n            PEAR_VALIDATE_UNINSTALLING);\n        $e = $depchecker->validatePackageUninstall($this);\n        PEAR::staticPopErrorHandling();\n        if (PEAR::isError($e)) {\n            if (!isset($options['ignore-errors'])) {\n                return $this->raiseError($e);\n            }\n\n            if (!isset($options['soft'])) {\n                $this->log(0, 'WARNING: ' . $e->getMessage());\n            }\n        } elseif (is_array($e)) {\n            if (!isset($options['soft'])) {\n                $this->log(0, $e[0]);\n            }\n        }\n\n        $this->pkginfo = &$pkg;\n        // pretty much nothing happens if we are only registering the uninstall\n        if (empty($options['register-only'])) {\n            // {{{ Delete the files\n            $this->startFileTransaction();\n            PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n            if (PEAR::isError($err = $this->_deletePackageFiles($package, $channel))) {\n                PEAR::popErrorHandling();\n                $this->rollbackFileTransaction();\n                $this->configSet('default_channel', $savechannel);\n                if (!isset($options['ignore-errors'])) {\n                    return $this->raiseError($err);\n                }\n\n                if (!isset($options['soft'])) {\n                    $this->log(0, 'WARNING: ' . $err->getMessage());\n                }\n            } else {\n                PEAR::popErrorHandling();\n            }\n\n            if (!$this->commitFileTransaction()) {\n                $this->rollbackFileTransaction();\n                if (!isset($options['ignore-errors'])) {\n                    return $this->raiseError(\"uninstall failed\");\n                }\n\n                if (!isset($options['soft'])) {\n                    $this->log(0, 'WARNING: uninstall failed');\n                }\n            } else {\n                $this->startFileTransaction();\n                $dirtree = $pkg->getDirTree();\n                if ($dirtree === false) {\n                    $this->configSet('default_channel', $savechannel);\n                    return $this->_registry->deletePackage($package, $channel);\n                }\n\n                // attempt to delete empty directories\n                uksort($dirtree, array($this, '_sortDirs'));\n                foreach($dirtree as $dir => $notused) {\n                    $this->addFileOperation('rmdir', array($dir));\n                }\n\n                if (!$this->commitFileTransaction()) {\n                    $this->rollbackFileTransaction();\n                    if (!isset($options['ignore-errors'])) {\n                        return $this->raiseError(\"uninstall failed\");\n                    }\n\n                    if (!isset($options['soft'])) {\n                        $this->log(0, 'WARNING: uninstall failed');\n                    }\n                }\n            }\n            // }}}\n        }\n\n        $this->configSet('default_channel', $savechannel);\n        // Register that the package is no longer installed\n        return $this->_registry->deletePackage($package, $channel);\n    }\n\n    /**\n     * Sort a list of arrays of array(downloaded packagefilename) by dependency.\n     *\n     * It also removes duplicate dependencies\n     * @param array an array of PEAR_PackageFile_v[1/2] objects\n     * @return array|PEAR_Error array of array(packagefilename, package.xml contents)\n     */\n    function sortPackagesForUninstall(&$packages)\n    {\n        $this->_dependencyDB = &PEAR_DependencyDB::singleton($this->config);\n        if (PEAR::isError($this->_dependencyDB)) {\n            return $this->_dependencyDB;\n        }\n        usort($packages, array(&$this, '_sortUninstall'));\n    }\n\n    function _sortUninstall($a, $b)\n    {\n        if (!$a->getDeps() && !$b->getDeps()) {\n            return 0; // neither package has dependencies, order is insignificant\n        }\n        if ($a->getDeps() && !$b->getDeps()) {\n            return -1; // $a must be installed after $b because $a has dependencies\n        }\n        if (!$a->getDeps() && $b->getDeps()) {\n            return 1; // $b must be installed after $a because $b has dependencies\n        }\n        // both packages have dependencies\n        if ($this->_dependencyDB->dependsOn($a, $b)) {\n            return -1;\n        }\n        if ($this->_dependencyDB->dependsOn($b, $a)) {\n            return 1;\n        }\n        return 0;\n    }\n\n    // }}}\n    // {{{ _sortDirs()\n    function _sortDirs($a, $b)\n    {\n        if (strnatcmp($a, $b) == -1) return 1;\n        if (strnatcmp($a, $b) == 1) return -1;\n        return 0;\n    }\n\n    // }}}\n\n    // {{{ _buildCallback()\n\n    function _buildCallback($what, $data)\n    {\n        if (($what == 'cmdoutput' && $this->debug > 1) ||\n            ($what == 'output' && $this->debug > 0)) {\n            $this->ui->outputData(rtrim($data), 'build');\n        }\n    }\n\n    // }}}\n}"
  },
  {
    "path": "newscoop/include/PEAR/PackageFile/Generator/v1.php",
    "content": "<?php\n/**\n * package.xml generation class, package.xml version 1.0\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: v1.php 286494 2009-07-29 06:57:11Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n/**\n * needed for PEAR_VALIDATE_* constants\n */\nrequire_once 'PEAR/Validate.php';\nrequire_once 'System.php';\nrequire_once 'PEAR/PackageFile/v2.php';\n/**\n * This class converts a PEAR_PackageFile_v1 object into any output format.\n *\n * Supported output formats include array, XML string, and a PEAR_PackageFile_v2\n * object, for converting package.xml 1.0 into package.xml 2.0 with no sweat.\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_PackageFile_Generator_v1\n{\n    /**\n     * @var PEAR_PackageFile_v1\n     */\n    var $_packagefile;\n    function PEAR_PackageFile_Generator_v1(&$packagefile)\n    {\n        $this->_packagefile = &$packagefile;\n    }\n\n    function getPackagerVersion()\n    {\n        return '1.9.1';\n    }\n\n    /**\n     * @param PEAR_Packager\n     * @param bool if true, a .tgz is written, otherwise a .tar is written\n     * @param string|null directory in which to save the .tgz\n     * @return string|PEAR_Error location of package or error object\n     */\n    function toTgz(&$packager, $compress = true, $where = null)\n    {\n        require_once 'Archive/Tar.php';\n        if ($where === null) {\n            if (!($where = System::mktemp(array('-d')))) {\n                return PEAR::raiseError('PEAR_Packagefile_v1::toTgz: mktemp failed');\n            }\n        } elseif (!@System::mkDir(array('-p', $where))) {\n            return PEAR::raiseError('PEAR_Packagefile_v1::toTgz: \"' . $where . '\" could' .\n                ' not be created');\n        }\n        if (file_exists($where . DIRECTORY_SEPARATOR . 'package.xml') &&\n              !is_file($where . DIRECTORY_SEPARATOR . 'package.xml')) {\n            return PEAR::raiseError('PEAR_Packagefile_v1::toTgz: unable to save package.xml as' .\n                ' \"' . $where . DIRECTORY_SEPARATOR . 'package.xml\"');\n        }\n        if (!$this->_packagefile->validate(PEAR_VALIDATE_PACKAGING)) {\n            return PEAR::raiseError('PEAR_Packagefile_v1::toTgz: invalid package file');\n        }\n        $pkginfo = $this->_packagefile->getArray();\n        $ext = $compress ? '.tgz' : '.tar';\n        $pkgver = $pkginfo['package'] . '-' . $pkginfo['version'];\n        $dest_package = getcwd() . DIRECTORY_SEPARATOR . $pkgver . $ext;\n        if (file_exists(getcwd() . DIRECTORY_SEPARATOR . $pkgver . $ext) &&\n              !is_file(getcwd() . DIRECTORY_SEPARATOR . $pkgver . $ext)) {\n            return PEAR::raiseError('PEAR_Packagefile_v1::toTgz: cannot create tgz file \"' .\n                getcwd() . DIRECTORY_SEPARATOR . $pkgver . $ext . '\"');\n        }\n        if ($pkgfile = $this->_packagefile->getPackageFile()) {\n            $pkgdir = dirname(realpath($pkgfile));\n            $pkgfile = basename($pkgfile);\n        } else {\n            return PEAR::raiseError('PEAR_Packagefile_v1::toTgz: package file object must ' .\n                'be created from a real file');\n        }\n        // {{{ Create the package file list\n        $filelist = array();\n        $i = 0;\n\n        foreach ($this->_packagefile->getFilelist() as $fname => $atts) {\n            $file = $pkgdir . DIRECTORY_SEPARATOR . $fname;\n            if (!file_exists($file)) {\n                return PEAR::raiseError(\"File does not exist: $fname\");\n            } else {\n                $filelist[$i++] = $file;\n                if (!isset($atts['md5sum'])) {\n                    $this->_packagefile->setFileAttribute($fname, 'md5sum', md5_file($file));\n                }\n                $packager->log(2, \"Adding file $fname\");\n            }\n        }\n        // }}}\n        $packagexml = $this->toPackageFile($where, PEAR_VALIDATE_PACKAGING, 'package.xml', true);\n        if ($packagexml) {\n            $tar =& new Archive_Tar($dest_package, $compress);\n            $tar->setErrorHandling(PEAR_ERROR_RETURN); // XXX Don't print errors\n            // ----- Creates with the package.xml file\n            $ok = $tar->createModify(array($packagexml), '', $where);\n            if (PEAR::isError($ok)) {\n                return $ok;\n            } elseif (!$ok) {\n                return PEAR::raiseError('PEAR_Packagefile_v1::toTgz: tarball creation failed');\n            }\n            // ----- Add the content of the package\n            if (!$tar->addModify($filelist, $pkgver, $pkgdir)) {\n                return PEAR::raiseError('PEAR_Packagefile_v1::toTgz: tarball creation failed');\n            }\n            return $dest_package;\n        }\n    }\n\n    /**\n     * @param string|null directory to place the package.xml in, or null for a temporary dir\n     * @param int one of the PEAR_VALIDATE_* constants\n     * @param string name of the generated file\n     * @param bool if true, then no analysis will be performed on role=\"php\" files\n     * @return string|PEAR_Error path to the created file on success\n     */\n    function toPackageFile($where = null, $state = PEAR_VALIDATE_NORMAL, $name = 'package.xml',\n                           $nofilechecking = false)\n    {\n        if (!$this->_packagefile->validate($state, $nofilechecking)) {\n            return PEAR::raiseError('PEAR_Packagefile_v1::toPackageFile: invalid package.xml',\n                null, null, null, $this->_packagefile->getValidationWarnings());\n        }\n        if ($where === null) {\n            if (!($where = System::mktemp(array('-d')))) {\n                return PEAR::raiseError('PEAR_Packagefile_v1::toPackageFile: mktemp failed');\n            }\n        } elseif (!@System::mkDir(array('-p', $where))) {\n            return PEAR::raiseError('PEAR_Packagefile_v1::toPackageFile: \"' . $where . '\" could' .\n                ' not be created');\n        }\n        $newpkgfile = $where . DIRECTORY_SEPARATOR . $name;\n        $np = @fopen($newpkgfile, 'wb');\n        if (!$np) {\n            return PEAR::raiseError('PEAR_Packagefile_v1::toPackageFile: unable to save ' .\n               \"$name as $newpkgfile\");\n        }\n        fwrite($np, $this->toXml($state, true));\n        fclose($np);\n        return $newpkgfile;\n    }\n\n    /**\n     * fix both XML encoding to be UTF8, and replace standard XML entities < > \" & '\n     *\n     * @param string $string\n     * @return string\n     * @access private\n     */\n    function _fixXmlEncoding($string)\n    {\n        if (version_compare(phpversion(), '5.0.0', 'lt')) {\n            $string = utf8_encode($string);\n        }\n        return strtr($string, array(\n                                          '&'  => '&amp;',\n                                          '>'  => '&gt;',\n                                          '<'  => '&lt;',\n                                          '\"'  => '&quot;',\n                                          '\\'' => '&apos;' ));\n    }\n\n    /**\n     * Return an XML document based on the package info (as returned\n     * by the PEAR_Common::infoFrom* methods).\n     *\n     * @return string XML data\n     */\n    function toXml($state = PEAR_VALIDATE_NORMAL, $nofilevalidation = false)\n    {\n        $this->_packagefile->setDate(date('Y-m-d'));\n        if (!$this->_packagefile->validate($state, $nofilevalidation)) {\n            return false;\n        }\n        $pkginfo = $this->_packagefile->getArray();\n        static $maint_map = array(\n            \"handle\" => \"user\",\n            \"name\" => \"name\",\n            \"email\" => \"email\",\n            \"role\" => \"role\",\n            );\n        $ret = \"<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" ?>\\n\";\n        $ret .= \"<!DOCTYPE package SYSTEM \\\"http://pear.php.net/dtd/package-1.0\\\">\\n\";\n        $ret .= \"<package version=\\\"1.0\\\" packagerversion=\\\"1.9.1\\\">\\n\" .\n\" <name>$pkginfo[package]</name>\";\n        if (isset($pkginfo['extends'])) {\n            $ret .= \"\\n<extends>$pkginfo[extends]</extends>\";\n        }\n        $ret .=\n \"\\n <summary>\".$this->_fixXmlEncoding($pkginfo['summary']).\"</summary>\\n\" .\n\" <description>\".trim($this->_fixXmlEncoding($pkginfo['description'])).\"\\n </description>\\n\" .\n\" <maintainers>\\n\";\n        foreach ($pkginfo['maintainers'] as $maint) {\n            $ret .= \"  <maintainer>\\n\";\n            foreach ($maint_map as $idx => $elm) {\n                $ret .= \"   <$elm>\";\n                $ret .= $this->_fixXmlEncoding($maint[$idx]);\n                $ret .= \"</$elm>\\n\";\n            }\n            $ret .= \"  </maintainer>\\n\";\n        }\n        $ret .= \"  </maintainers>\\n\";\n        $ret .= $this->_makeReleaseXml($pkginfo, false, $state);\n        if (isset($pkginfo['changelog']) && count($pkginfo['changelog']) > 0) {\n            $ret .= \" <changelog>\\n\";\n            foreach ($pkginfo['changelog'] as $oldrelease) {\n                $ret .= $this->_makeReleaseXml($oldrelease, true);\n            }\n            $ret .= \" </changelog>\\n\";\n        }\n        $ret .= \"</package>\\n\";\n        return $ret;\n    }\n\n    // }}}\n    // {{{ _makeReleaseXml()\n\n    /**\n     * Generate part of an XML description with release information.\n     *\n     * @param array  $pkginfo    array with release information\n     * @param bool   $changelog  whether the result will be in a changelog element\n     *\n     * @return string XML data\n     *\n     * @access private\n     */\n    function _makeReleaseXml($pkginfo, $changelog = false, $state = PEAR_VALIDATE_NORMAL)\n    {\n        // XXX QUOTE ENTITIES IN PCDATA, OR EMBED IN CDATA BLOCKS!!\n        $indent = $changelog ? \"  \" : \"\";\n        $ret = \"$indent <release>\\n\";\n        if (!empty($pkginfo['version'])) {\n            $ret .= \"$indent  <version>$pkginfo[version]</version>\\n\";\n        }\n        if (!empty($pkginfo['release_date'])) {\n            $ret .= \"$indent  <date>$pkginfo[release_date]</date>\\n\";\n        }\n        if (!empty($pkginfo['release_license'])) {\n            $ret .= \"$indent  <license>$pkginfo[release_license]</license>\\n\";\n        }\n        if (!empty($pkginfo['release_state'])) {\n            $ret .= \"$indent  <state>$pkginfo[release_state]</state>\\n\";\n        }\n        if (!empty($pkginfo['release_notes'])) {\n            $ret .= \"$indent  <notes>\".trim($this->_fixXmlEncoding($pkginfo['release_notes']))\n            .\"\\n$indent  </notes>\\n\";\n        }\n        if (!empty($pkginfo['release_warnings'])) {\n            $ret .= \"$indent  <warnings>\".$this->_fixXmlEncoding($pkginfo['release_warnings']).\"</warnings>\\n\";\n        }\n        if (isset($pkginfo['release_deps']) && sizeof($pkginfo['release_deps']) > 0) {\n            $ret .= \"$indent  <deps>\\n\";\n            foreach ($pkginfo['release_deps'] as $dep) {\n                $ret .= \"$indent   <dep type=\\\"$dep[type]\\\" rel=\\\"$dep[rel]\\\"\";\n                if (isset($dep['version'])) {\n                    $ret .= \" version=\\\"$dep[version]\\\"\";\n                }\n                if (isset($dep['optional'])) {\n                    $ret .= \" optional=\\\"$dep[optional]\\\"\";\n                }\n                if (isset($dep['name'])) {\n                    $ret .= \">$dep[name]</dep>\\n\";\n                } else {\n                    $ret .= \"/>\\n\";\n                }\n            }\n            $ret .= \"$indent  </deps>\\n\";\n        }\n        if (isset($pkginfo['configure_options'])) {\n            $ret .= \"$indent  <configureoptions>\\n\";\n            foreach ($pkginfo['configure_options'] as $c) {\n                $ret .= \"$indent   <configureoption name=\\\"\".\n                    $this->_fixXmlEncoding($c['name']) . \"\\\"\";\n                if (isset($c['default'])) {\n                    $ret .= \" default=\\\"\" . $this->_fixXmlEncoding($c['default']) . \"\\\"\";\n                }\n                $ret .= \" prompt=\\\"\" . $this->_fixXmlEncoding($c['prompt']) . \"\\\"\";\n                $ret .= \"/>\\n\";\n            }\n            $ret .= \"$indent  </configureoptions>\\n\";\n        }\n        if (isset($pkginfo['provides'])) {\n            foreach ($pkginfo['provides'] as $key => $what) {\n                $ret .= \"$indent  <provides type=\\\"$what[type]\\\" \";\n                $ret .= \"name=\\\"$what[name]\\\" \";\n                if (isset($what['extends'])) {\n                    $ret .= \"extends=\\\"$what[extends]\\\" \";\n                }\n                $ret .= \"/>\\n\";\n            }\n        }\n        if (isset($pkginfo['filelist'])) {\n            $ret .= \"$indent  <filelist>\\n\";\n            if ($state ^ PEAR_VALIDATE_PACKAGING) {\n                $ret .= $this->recursiveXmlFilelist($pkginfo['filelist']);\n            } else {\n                foreach ($pkginfo['filelist'] as $file => $fa) {\n                    if (!isset($fa['role'])) {\n                        $fa['role'] = '';\n                    }\n                    $ret .= \"$indent   <file role=\\\"$fa[role]\\\"\";\n                    if (isset($fa['baseinstalldir'])) {\n                        $ret .= ' baseinstalldir=\"' .\n                            $this->_fixXmlEncoding($fa['baseinstalldir']) . '\"';\n                    }\n                    if (isset($fa['md5sum'])) {\n                        $ret .= \" md5sum=\\\"$fa[md5sum]\\\"\";\n                    }\n                    if (isset($fa['platform'])) {\n                        $ret .= \" platform=\\\"$fa[platform]\\\"\";\n                    }\n                    if (!empty($fa['install-as'])) {\n                        $ret .= ' install-as=\"' .\n                            $this->_fixXmlEncoding($fa['install-as']) . '\"';\n                    }\n                    $ret .= ' name=\"' . $this->_fixXmlEncoding($file) . '\"';\n                    if (empty($fa['replacements'])) {\n                        $ret .= \"/>\\n\";\n                    } else {\n                        $ret .= \">\\n\";\n                        foreach ($fa['replacements'] as $r) {\n                            $ret .= \"$indent    <replace\";\n                            foreach ($r as $k => $v) {\n                                $ret .= \" $k=\\\"\" . $this->_fixXmlEncoding($v) .'\"';\n                            }\n                            $ret .= \"/>\\n\";\n                        }\n                        $ret .= \"$indent   </file>\\n\";\n                    }\n                }\n            }\n            $ret .= \"$indent  </filelist>\\n\";\n        }\n        $ret .= \"$indent </release>\\n\";\n        return $ret;\n    }\n\n    /**\n     * @param array\n     * @access protected\n     */\n    function recursiveXmlFilelist($list)\n    {\n        $this->_dirs = array();\n        foreach ($list as $file => $attributes) {\n            $this->_addDir($this->_dirs, explode('/', dirname($file)), $file, $attributes);\n        }\n        return $this->_formatDir($this->_dirs);\n    }\n\n    /**\n     * @param array\n     * @param array\n     * @param string|null\n     * @param array|null\n     * @access private\n     */\n    function _addDir(&$dirs, $dir, $file = null, $attributes = null)\n    {\n        if ($dir == array() || $dir == array('.')) {\n            $dirs['files'][basename($file)] = $attributes;\n            return;\n        }\n        $curdir = array_shift($dir);\n        if (!isset($dirs['dirs'][$curdir])) {\n            $dirs['dirs'][$curdir] = array();\n        }\n        $this->_addDir($dirs['dirs'][$curdir], $dir, $file, $attributes);\n    }\n\n    /**\n     * @param array\n     * @param string\n     * @param string\n     * @access private\n     */\n    function _formatDir($dirs, $indent = '', $curdir = '')\n    {\n        $ret = '';\n        if (!count($dirs)) {\n            return '';\n        }\n        if (isset($dirs['dirs'])) {\n            uksort($dirs['dirs'], 'strnatcasecmp');\n            foreach ($dirs['dirs'] as $dir => $contents) {\n                $usedir = \"$curdir/$dir\";\n                $ret .= \"$indent   <dir name=\\\"$dir\\\">\\n\";\n                $ret .= $this->_formatDir($contents, \"$indent \", $usedir);\n                $ret .= \"$indent   </dir> <!-- $usedir -->\\n\";\n            }\n        }\n        if (isset($dirs['files'])) {\n            uksort($dirs['files'], 'strnatcasecmp');\n            foreach ($dirs['files'] as $file => $attribs) {\n                $ret .= $this->_formatFile($file, $attribs, $indent);\n            }\n        }\n        return $ret;\n    }\n\n    /**\n     * @param string\n     * @param array\n     * @param string\n     * @access private\n     */\n    function _formatFile($file, $attributes, $indent)\n    {\n        $ret = \"$indent   <file role=\\\"$attributes[role]\\\"\";\n        if (isset($attributes['baseinstalldir'])) {\n            $ret .= ' baseinstalldir=\"' .\n                $this->_fixXmlEncoding($attributes['baseinstalldir']) . '\"';\n        }\n        if (isset($attributes['md5sum'])) {\n            $ret .= \" md5sum=\\\"$attributes[md5sum]\\\"\";\n        }\n        if (isset($attributes['platform'])) {\n            $ret .= \" platform=\\\"$attributes[platform]\\\"\";\n        }\n        if (!empty($attributes['install-as'])) {\n            $ret .= ' install-as=\"' .\n                $this->_fixXmlEncoding($attributes['install-as']) . '\"';\n        }\n        $ret .= ' name=\"' . $this->_fixXmlEncoding($file) . '\"';\n        if (empty($attributes['replacements'])) {\n            $ret .= \"/>\\n\";\n        } else {\n            $ret .= \">\\n\";\n            foreach ($attributes['replacements'] as $r) {\n                $ret .= \"$indent    <replace\";\n                foreach ($r as $k => $v) {\n                    $ret .= \" $k=\\\"\" . $this->_fixXmlEncoding($v) .'\"';\n                }\n                $ret .= \"/>\\n\";\n            }\n            $ret .= \"$indent   </file>\\n\";\n        }\n        return $ret;\n    }\n\n    // {{{ _unIndent()\n\n    /**\n     * Unindent given string (?)\n     *\n     * @param string $str The string that has to be unindented.\n     * @return string\n     * @access private\n     */\n    function _unIndent($str)\n    {\n        // remove leading newlines\n        $str = preg_replace('/^[\\r\\n]+/', '', $str);\n        // find whitespace at the beginning of the first line\n        $indent_len = strspn($str, \" \\t\");\n        $indent = substr($str, 0, $indent_len);\n        $data = '';\n        // remove the same amount of whitespace from following lines\n        foreach (explode(\"\\n\", $str) as $line) {\n            if (substr($line, 0, $indent_len) == $indent) {\n                $data .= substr($line, $indent_len) . \"\\n\";\n            }\n        }\n        return $data;\n    }\n\n    /**\n     * @return array\n     */\n    function dependenciesToV2()\n    {\n        $arr = array();\n        $this->_convertDependencies2_0($arr);\n        return $arr['dependencies'];\n    }\n\n    /**\n     * Convert a package.xml version 1.0 into version 2.0\n     *\n     * Note that this does a basic conversion, to allow more advanced\n     * features like bundles and multiple releases\n     * @param string the classname to instantiate and return.  This must be\n     *               PEAR_PackageFile_v2 or a descendant\n     * @param boolean if true, only valid, deterministic package.xml 1.0 as defined by the\n     *                strictest parameters will be converted\n     * @return PEAR_PackageFile_v2|PEAR_Error\n     */\n    function &toV2($class = 'PEAR_PackageFile_v2', $strict = false)\n    {\n        if ($strict) {\n            if (!$this->_packagefile->validate()) {\n                $a = PEAR::raiseError('invalid package.xml version 1.0 cannot be converted' .\n                    ' to version 2.0', null, null, null,\n                    $this->_packagefile->getValidationWarnings(true));\n                return $a;\n            }\n        }\n\n        $arr = array(\n            'attribs' => array(\n                             'version' => '2.0',\n                             'xmlns' => 'http://pear.php.net/dtd/package-2.0',\n                             'xmlns:tasks' => 'http://pear.php.net/dtd/tasks-1.0',\n                             'xmlns:xsi' => 'http://www.w3.org/2001/XMLSchema-instance',\n                             'xsi:schemaLocation' => \"http://pear.php.net/dtd/tasks-1.0\\n\" .\n\"http://pear.php.net/dtd/tasks-1.0.xsd\\n\" .\n\"http://pear.php.net/dtd/package-2.0\\n\" .\n'http://pear.php.net/dtd/package-2.0.xsd',\n                         ),\n            'name' => $this->_packagefile->getPackage(),\n            'channel' => 'pear.php.net',\n        );\n        $arr['summary'] = $this->_packagefile->getSummary();\n        $arr['description'] = $this->_packagefile->getDescription();\n        $maintainers = $this->_packagefile->getMaintainers();\n        foreach ($maintainers as $maintainer) {\n            if ($maintainer['role'] != 'lead') {\n                continue;\n            }\n            $new = array(\n                'name' => $maintainer['name'],\n                'user' => $maintainer['handle'],\n                'email' => $maintainer['email'],\n                'active' => 'yes',\n            );\n            $arr['lead'][] = $new;\n        }\n\n        if (!isset($arr['lead'])) { // some people... you know?\n            $arr['lead'] = array(\n                'name' => 'unknown',\n                'user' => 'unknown',\n                'email' => 'noleadmaintainer@example.com',\n                'active' => 'no',\n            );\n        }\n\n        if (count($arr['lead']) == 1) {\n            $arr['lead'] = $arr['lead'][0];\n        }\n\n        foreach ($maintainers as $maintainer) {\n            if ($maintainer['role'] == 'lead') {\n                continue;\n            }\n            $new = array(\n                'name' => $maintainer['name'],\n                'user' => $maintainer['handle'],\n                'email' => $maintainer['email'],\n                'active' => 'yes',\n            );\n            $arr[$maintainer['role']][] = $new;\n        }\n\n        if (isset($arr['developer']) && count($arr['developer']) == 1) {\n            $arr['developer'] = $arr['developer'][0];\n        }\n\n        if (isset($arr['contributor']) && count($arr['contributor']) == 1) {\n            $arr['contributor'] = $arr['contributor'][0];\n        }\n\n        if (isset($arr['helper']) && count($arr['helper']) == 1) {\n            $arr['helper'] = $arr['helper'][0];\n        }\n\n        $arr['date'] = $this->_packagefile->getDate();\n        $arr['version'] =\n            array(\n                'release' => $this->_packagefile->getVersion(),\n                'api' => $this->_packagefile->getVersion(),\n            );\n        $arr['stability'] =\n            array(\n                'release' => $this->_packagefile->getState(),\n                'api' => $this->_packagefile->getState(),\n            );\n        $licensemap =\n            array(\n                'php' => 'http://www.php.net/license',\n                'php license' => 'http://www.php.net/license',\n                'lgpl' => 'http://www.gnu.org/copyleft/lesser.html',\n                'bsd' => 'http://www.opensource.org/licenses/bsd-license.php',\n                'bsd style' => 'http://www.opensource.org/licenses/bsd-license.php',\n                'bsd-style' => 'http://www.opensource.org/licenses/bsd-license.php',\n                'mit' => 'http://www.opensource.org/licenses/mit-license.php',\n                'gpl' => 'http://www.gnu.org/copyleft/gpl.html',\n                'apache' => 'http://www.opensource.org/licenses/apache2.0.php'\n            );\n\n        if (isset($licensemap[strtolower($this->_packagefile->getLicense())])) {\n            $arr['license'] = array(\n                'attribs' => array('uri' =>\n                    $licensemap[strtolower($this->_packagefile->getLicense())]),\n                '_content' => $this->_packagefile->getLicense()\n                );\n        } else {\n            // don't use bogus uri\n            $arr['license'] = $this->_packagefile->getLicense();\n        }\n\n        $arr['notes'] = $this->_packagefile->getNotes();\n        $temp = array();\n        $arr['contents'] = $this->_convertFilelist2_0($temp);\n        $this->_convertDependencies2_0($arr);\n        $release = ($this->_packagefile->getConfigureOptions() || $this->_isExtension) ?\n            'extsrcrelease' : 'phprelease';\n        if ($release == 'extsrcrelease') {\n            $arr['channel'] = 'pecl.php.net';\n            $arr['providesextension'] = $arr['name']; // assumption\n        }\n\n        $arr[$release] = array();\n        if ($this->_packagefile->getConfigureOptions()) {\n            $arr[$release]['configureoption'] = $this->_packagefile->getConfigureOptions();\n            foreach ($arr[$release]['configureoption'] as $i => $opt) {\n                $arr[$release]['configureoption'][$i] = array('attribs' => $opt);\n            }\n            if (count($arr[$release]['configureoption']) == 1) {\n                $arr[$release]['configureoption'] = $arr[$release]['configureoption'][0];\n            }\n        }\n\n        $this->_convertRelease2_0($arr[$release], $temp);\n        if ($release == 'extsrcrelease' && count($arr[$release]) > 1) {\n            // multiple extsrcrelease tags added in PEAR 1.4.1\n            $arr['dependencies']['required']['pearinstaller']['min'] = '1.4.1';\n        }\n\n        if ($cl = $this->_packagefile->getChangelog()) {\n            foreach ($cl as $release) {\n                $rel = array();\n                $rel['version'] =\n                    array(\n                        'release' => $release['version'],\n                        'api' => $release['version'],\n                    );\n                if (!isset($release['release_state'])) {\n                    $release['release_state'] = 'stable';\n                }\n\n                $rel['stability'] =\n                    array(\n                        'release' => $release['release_state'],\n                        'api' => $release['release_state'],\n                    );\n                if (isset($release['release_date'])) {\n                    $rel['date'] = $release['release_date'];\n                } else {\n                    $rel['date'] = date('Y-m-d');\n                }\n\n                if (isset($release['release_license'])) {\n                    if (isset($licensemap[strtolower($release['release_license'])])) {\n                        $uri = $licensemap[strtolower($release['release_license'])];\n                    } else {\n                        $uri = 'http://www.example.com';\n                    }\n                    $rel['license'] = array(\n                            'attribs' => array('uri' => $uri),\n                            '_content' => $release['release_license']\n                        );\n                } else {\n                    $rel['license'] = $arr['license'];\n                }\n\n                if (!isset($release['release_notes'])) {\n                    $release['release_notes'] = 'no release notes';\n                }\n\n                $rel['notes'] = $release['release_notes'];\n                $arr['changelog']['release'][] = $rel;\n            }\n        }\n\n        $ret = new $class;\n        $ret->setConfig($this->_packagefile->_config);\n        if (isset($this->_packagefile->_logger) && is_object($this->_packagefile->_logger)) {\n            $ret->setLogger($this->_packagefile->_logger);\n        }\n\n        $ret->fromArray($arr);\n        return $ret;\n    }\n\n    /**\n     * @param array\n     * @param bool\n     * @access private\n     */\n    function _convertDependencies2_0(&$release, $internal = false)\n    {\n        $peardep = array('pearinstaller' =>\n            array('min' => '1.4.0b1')); // this is a lot safer\n        $required = $optional = array();\n        $release['dependencies'] = array('required' => array());\n        if ($this->_packagefile->hasDeps()) {\n            foreach ($this->_packagefile->getDeps() as $dep) {\n                if (!isset($dep['optional']) || $dep['optional'] == 'no') {\n                    $required[] = $dep;\n                } else {\n                    $optional[] = $dep;\n                }\n            }\n            foreach (array('required', 'optional') as $arr) {\n                $deps = array();\n                foreach ($$arr as $dep) {\n                    // organize deps by dependency type and name\n                    if (!isset($deps[$dep['type']])) {\n                        $deps[$dep['type']] = array();\n                    }\n                    if (isset($dep['name'])) {\n                        $deps[$dep['type']][$dep['name']][] = $dep;\n                    } else {\n                        $deps[$dep['type']][] = $dep;\n                    }\n                }\n                do {\n                    if (isset($deps['php'])) {\n                        $php = array();\n                        if (count($deps['php']) > 1) {\n                            $php = $this->_processPhpDeps($deps['php']);\n                        } else {\n                            if (!isset($deps['php'][0])) {\n                                list($key, $blah) = each ($deps['php']); // stupid buggy versions\n                                $deps['php'] = array($blah[0]);\n                            }\n                            $php = $this->_processDep($deps['php'][0]);\n                            if (!$php) {\n                                break; // poor mans throw\n                            }\n                        }\n                        $release['dependencies'][$arr]['php'] = $php;\n                    }\n                } while (false);\n                do {\n                    if (isset($deps['pkg'])) {\n                        $pkg = array();\n                        $pkg = $this->_processMultipleDepsName($deps['pkg']);\n                        if (!$pkg) {\n                            break; // poor mans throw\n                        }\n                        $release['dependencies'][$arr]['package'] = $pkg;\n                    }\n                } while (false);\n                do {\n                    if (isset($deps['ext'])) {\n                        $pkg = array();\n                        $pkg = $this->_processMultipleDepsName($deps['ext']);\n                        $release['dependencies'][$arr]['extension'] = $pkg;\n                    }\n                } while (false);\n                // skip sapi - it's not supported so nobody will have used it\n                // skip os - it's not supported in 1.0\n            }\n        }\n        if (isset($release['dependencies']['required'])) {\n            $release['dependencies']['required'] =\n                array_merge($peardep, $release['dependencies']['required']);\n        } else {\n            $release['dependencies']['required'] = $peardep;\n        }\n        if (!isset($release['dependencies']['required']['php'])) {\n            $release['dependencies']['required']['php'] =\n                array('min' => '4.0.0');\n        }\n        $order = array();\n        $bewm = $release['dependencies']['required'];\n        $order['php'] = $bewm['php'];\n        $order['pearinstaller'] = $bewm['pearinstaller'];\n        isset($bewm['package']) ? $order['package'] = $bewm['package'] :0;\n        isset($bewm['extension']) ? $order['extension'] = $bewm['extension'] :0;\n        $release['dependencies']['required'] = $order;\n    }\n\n    /**\n     * @param array\n     * @access private\n     */\n    function _convertFilelist2_0(&$package)\n    {\n        $ret = array('dir' =>\n                    array(\n                        'attribs' => array('name' => '/'),\n                        'file' => array()\n                        )\n                    );\n        $package['platform'] =\n        $package['install-as'] = array();\n        $this->_isExtension = false;\n        foreach ($this->_packagefile->getFilelist() as $name => $file) {\n            $file['name'] = $name;\n            if (isset($file['role']) && $file['role'] == 'src') {\n                $this->_isExtension = true;\n            }\n            if (isset($file['replacements'])) {\n                $repl = $file['replacements'];\n                unset($file['replacements']);\n            } else {\n                unset($repl);\n            }\n            if (isset($file['install-as'])) {\n                $package['install-as'][$name] = $file['install-as'];\n                unset($file['install-as']);\n            }\n            if (isset($file['platform'])) {\n                $package['platform'][$name] = $file['platform'];\n                unset($file['platform']);\n            }\n            $file = array('attribs' => $file);\n            if (isset($repl)) {\n                foreach ($repl as $replace ) {\n                    $file['tasks:replace'][] = array('attribs' => $replace);\n                }\n                if (count($repl) == 1) {\n                    $file['tasks:replace'] = $file['tasks:replace'][0];\n                }\n            }\n            $ret['dir']['file'][] = $file;\n        }\n        return $ret;\n    }\n\n    /**\n     * Post-process special files with install-as/platform attributes and\n     * make the release tag.\n     *\n     * This complex method follows this work-flow to create the release tags:\n     *\n     * <pre>\n     * - if any install-as/platform exist, create a generic release and fill it with\n     *   o <install as=..> tags for <file name=... install-as=...>\n     *   o <install as=..> tags for <file name=... platform=!... install-as=..>\n     *   o <ignore> tags for <file name=... platform=...>\n     *   o <ignore> tags for <file name=... platform=... install-as=..>\n     * - create a release for each platform encountered and fill with\n     *   o <install as..> tags for <file name=... install-as=...>\n     *   o <install as..> tags for <file name=... platform=this platform install-as=..>\n     *   o <install as..> tags for <file name=... platform=!other platform install-as=..>\n     *   o <ignore> tags for <file name=... platform=!this platform>\n     *   o <ignore> tags for <file name=... platform=other platform>\n     *   o <ignore> tags for <file name=... platform=other platform install-as=..>\n     *   o <ignore> tags for <file name=... platform=!this platform install-as=..>\n     * </pre>\n     *\n     * It does this by accessing the $package parameter, which contains an array with\n     * indices:\n     *\n     *  - platform: mapping of file => OS the file should be installed on\n     *  - install-as: mapping of file => installed name\n     *  - osmap: mapping of OS => list of files that should be installed\n     *    on that OS\n     *  - notosmap: mapping of OS => list of files that should not be\n     *    installed on that OS\n     *\n     * @param array\n     * @param array\n     * @access private\n     */\n    function _convertRelease2_0(&$release, $package)\n    {\n        //- if any install-as/platform exist, create a generic release and fill it with\n        if (count($package['platform']) || count($package['install-as'])) {\n            $generic = array();\n            $genericIgnore = array();\n            foreach ($package['install-as'] as $file => $as) {\n                //o <install as=..> tags for <file name=... install-as=...>\n                if (!isset($package['platform'][$file])) {\n                    $generic[] = $file;\n                    continue;\n                }\n                //o <install as=..> tags for <file name=... platform=!... install-as=..>\n                if (isset($package['platform'][$file]) &&\n                      $package['platform'][$file]{0} == '!') {\n                    $generic[] = $file;\n                    continue;\n                }\n                //o <ignore> tags for <file name=... platform=... install-as=..>\n                if (isset($package['platform'][$file]) &&\n                      $package['platform'][$file]{0} != '!') {\n                    $genericIgnore[] = $file;\n                    continue;\n                }\n            }\n            foreach ($package['platform'] as $file => $platform) {\n                if (isset($package['install-as'][$file])) {\n                    continue;\n                }\n                if ($platform{0} != '!') {\n                    //o <ignore> tags for <file name=... platform=...>\n                    $genericIgnore[] = $file;\n                }\n            }\n            if (count($package['platform'])) {\n                $oses = $notplatform = $platform = array();\n                foreach ($package['platform'] as $file => $os) {\n                    // get a list of oses\n                    if ($os{0} == '!') {\n                        if (isset($oses[substr($os, 1)])) {\n                            continue;\n                        }\n                        $oses[substr($os, 1)] = count($oses);\n                    } else {\n                        if (isset($oses[$os])) {\n                            continue;\n                        }\n                        $oses[$os] = count($oses);\n                    }\n                }\n                //- create a release for each platform encountered and fill with\n                foreach ($oses as $os => $releaseNum) {\n                    $release[$releaseNum]['installconditions']['os']['name'] = $os;\n                    $release[$releaseNum]['filelist'] = array('install' => array(),\n                        'ignore' => array());\n                    foreach ($package['install-as'] as $file => $as) {\n                        //o <install as=..> tags for <file name=... install-as=...>\n                        if (!isset($package['platform'][$file])) {\n                            $release[$releaseNum]['filelist']['install'][] =\n                                array(\n                                    'attribs' => array(\n                                        'name' => $file,\n                                        'as' => $as,\n                                    ),\n                                );\n                            continue;\n                        }\n                        //o <install as..> tags for\n                        //  <file name=... platform=this platform install-as=..>\n                        if (isset($package['platform'][$file]) &&\n                              $package['platform'][$file] == $os) {\n                            $release[$releaseNum]['filelist']['install'][] =\n                                array(\n                                    'attribs' => array(\n                                        'name' => $file,\n                                        'as' => $as,\n                                    ),\n                                );\n                            continue;\n                        }\n                        //o <install as..> tags for\n                        //  <file name=... platform=!other platform install-as=..>\n                        if (isset($package['platform'][$file]) &&\n                              $package['platform'][$file] != \"!$os\" &&\n                              $package['platform'][$file]{0} == '!') {\n                            $release[$releaseNum]['filelist']['install'][] =\n                                array(\n                                    'attribs' => array(\n                                        'name' => $file,\n                                        'as' => $as,\n                                    ),\n                                );\n                            continue;\n                        }\n                        //o <ignore> tags for\n                        //  <file name=... platform=!this platform install-as=..>\n                        if (isset($package['platform'][$file]) &&\n                              $package['platform'][$file] == \"!$os\") {\n                            $release[$releaseNum]['filelist']['ignore'][] =\n                                array(\n                                    'attribs' => array(\n                                        'name' => $file,\n                                    ),\n                                );\n                            continue;\n                        }\n                        //o <ignore> tags for\n                        //  <file name=... platform=other platform install-as=..>\n                        if (isset($package['platform'][$file]) &&\n                              $package['platform'][$file]{0} != '!' &&\n                              $package['platform'][$file] != $os) {\n                            $release[$releaseNum]['filelist']['ignore'][] =\n                                array(\n                                    'attribs' => array(\n                                        'name' => $file,\n                                    ),\n                                );\n                            continue;\n                        }\n                    }\n                    foreach ($package['platform'] as $file => $platform) {\n                        if (isset($package['install-as'][$file])) {\n                            continue;\n                        }\n                        //o <ignore> tags for <file name=... platform=!this platform>\n                        if ($platform == \"!$os\") {\n                            $release[$releaseNum]['filelist']['ignore'][] =\n                                array(\n                                    'attribs' => array(\n                                        'name' => $file,\n                                    ),\n                                );\n                            continue;\n                        }\n                        //o <ignore> tags for <file name=... platform=other platform>\n                        if ($platform{0} != '!' && $platform != $os) {\n                            $release[$releaseNum]['filelist']['ignore'][] =\n                                array(\n                                    'attribs' => array(\n                                        'name' => $file,\n                                    ),\n                                );\n                        }\n                    }\n                    if (!count($release[$releaseNum]['filelist']['install'])) {\n                        unset($release[$releaseNum]['filelist']['install']);\n                    }\n                    if (!count($release[$releaseNum]['filelist']['ignore'])) {\n                        unset($release[$releaseNum]['filelist']['ignore']);\n                    }\n                }\n                if (count($generic) || count($genericIgnore)) {\n                    $release[count($oses)] = array();\n                    if (count($generic)) {\n                        foreach ($generic as $file) {\n                            if (isset($package['install-as'][$file])) {\n                                $installas = $package['install-as'][$file];\n                            } else {\n                                $installas = $file;\n                            }\n                            $release[count($oses)]['filelist']['install'][] =\n                                array(\n                                    'attribs' => array(\n                                        'name' => $file,\n                                        'as' => $installas,\n                                    )\n                                );\n                        }\n                    }\n                    if (count($genericIgnore)) {\n                        foreach ($genericIgnore as $file) {\n                            $release[count($oses)]['filelist']['ignore'][] =\n                                array(\n                                    'attribs' => array(\n                                        'name' => $file,\n                                    )\n                                );\n                        }\n                    }\n                }\n                // cleanup\n                foreach ($release as $i => $rel) {\n                    if (isset($rel['filelist']['install']) &&\n                          count($rel['filelist']['install']) == 1) {\n                        $release[$i]['filelist']['install'] =\n                            $release[$i]['filelist']['install'][0];\n                    }\n                    if (isset($rel['filelist']['ignore']) &&\n                          count($rel['filelist']['ignore']) == 1) {\n                        $release[$i]['filelist']['ignore'] =\n                            $release[$i]['filelist']['ignore'][0];\n                    }\n                }\n                if (count($release) == 1) {\n                    $release = $release[0];\n                }\n            } else {\n                // no platform atts, but some install-as atts\n                foreach ($package['install-as'] as $file => $value) {\n                    $release['filelist']['install'][] =\n                        array(\n                            'attribs' => array(\n                                'name' => $file,\n                                'as' => $value\n                            )\n                        );\n                }\n                if (count($release['filelist']['install']) == 1) {\n                    $release['filelist']['install'] = $release['filelist']['install'][0];\n                }\n            }\n        }\n    }\n\n    /**\n     * @param array\n     * @return array\n     * @access private\n     */\n    function _processDep($dep)\n    {\n        if ($dep['type'] == 'php') {\n            if ($dep['rel'] == 'has') {\n                // come on - everyone has php!\n                return false;\n            }\n        }\n        $php = array();\n        if ($dep['type'] != 'php') {\n            $php['name'] = $dep['name'];\n            if ($dep['type'] == 'pkg') {\n                $php['channel'] = 'pear.php.net';\n            }\n        }\n        switch ($dep['rel']) {\n            case 'gt' :\n                $php['min'] = $dep['version'];\n                $php['exclude'] = $dep['version'];\n            break;\n            case 'ge' :\n                if (!isset($dep['version'])) {\n                    if ($dep['type'] == 'php') {\n                        if (isset($dep['name'])) {\n                            $dep['version'] = $dep['name'];\n                        }\n                    }\n                }\n                $php['min'] = $dep['version'];\n            break;\n            case 'lt' :\n                $php['max'] = $dep['version'];\n                $php['exclude'] = $dep['version'];\n            break;\n            case 'le' :\n                $php['max'] = $dep['version'];\n            break;\n            case 'eq' :\n                $php['min'] = $dep['version'];\n                $php['max'] = $dep['version'];\n            break;\n            case 'ne' :\n                $php['exclude'] = $dep['version'];\n            break;\n            case 'not' :\n                $php['conflicts'] = 'yes';\n            break;\n        }\n        return $php;\n    }\n\n    /**\n     * @param array\n     * @return array\n     */\n    function _processPhpDeps($deps)\n    {\n        $test = array();\n        foreach ($deps as $dep) {\n            $test[] = $this->_processDep($dep);\n        }\n        $min = array();\n        $max = array();\n        foreach ($test as $dep) {\n            if (!$dep) {\n                continue;\n            }\n            if (isset($dep['min'])) {\n                $min[$dep['min']] = count($min);\n            }\n            if (isset($dep['max'])) {\n                $max[$dep['max']] = count($max);\n            }\n        }\n        if (count($min) > 0) {\n            uksort($min, 'version_compare');\n        }\n        if (count($max) > 0) {\n            uksort($max, 'version_compare');\n        }\n        if (count($min)) {\n            // get the highest minimum\n            $min = array_pop($a = array_flip($min));\n        } else {\n            $min = false;\n        }\n        if (count($max)) {\n            // get the lowest maximum\n            $max = array_shift($a = array_flip($max));\n        } else {\n            $max = false;\n        }\n        if ($min) {\n            $php['min'] = $min;\n        }\n        if ($max) {\n            $php['max'] = $max;\n        }\n        $exclude = array();\n        foreach ($test as $dep) {\n            if (!isset($dep['exclude'])) {\n                continue;\n            }\n            $exclude[] = $dep['exclude'];\n        }\n        if (count($exclude)) {\n            $php['exclude'] = $exclude;\n        }\n        return $php;\n    }\n\n    /**\n     * process multiple dependencies that have a name, like package deps\n     * @param array\n     * @return array\n     * @access private\n     */\n    function _processMultipleDepsName($deps)\n    {\n        $ret = $tests = array();\n        foreach ($deps as $name => $dep) {\n            foreach ($dep as $d) {\n                $tests[$name][] = $this->_processDep($d);\n            }\n        }\n\n        foreach ($tests as $name => $test) {\n            $max = $min = $php = array();\n            $php['name'] = $name;\n            foreach ($test as $dep) {\n                if (!$dep) {\n                    continue;\n                }\n                if (isset($dep['channel'])) {\n                    $php['channel'] = 'pear.php.net';\n                }\n                if (isset($dep['conflicts']) && $dep['conflicts'] == 'yes') {\n                    $php['conflicts'] = 'yes';\n                }\n                if (isset($dep['min'])) {\n                    $min[$dep['min']] = count($min);\n                }\n                if (isset($dep['max'])) {\n                    $max[$dep['max']] = count($max);\n                }\n            }\n            if (count($min) > 0) {\n                uksort($min, 'version_compare');\n            }\n            if (count($max) > 0) {\n                uksort($max, 'version_compare');\n            }\n            if (count($min)) {\n                // get the highest minimum\n                $min = array_pop($a = array_flip($min));\n            } else {\n                $min = false;\n            }\n            if (count($max)) {\n                // get the lowest maximum\n                $max = array_shift($a = array_flip($max));\n            } else {\n                $max = false;\n            }\n            if ($min) {\n                $php['min'] = $min;\n            }\n            if ($max) {\n                $php['max'] = $max;\n            }\n            $exclude = array();\n            foreach ($test as $dep) {\n                if (!isset($dep['exclude'])) {\n                    continue;\n                }\n                $exclude[] = $dep['exclude'];\n            }\n            if (count($exclude)) {\n                $php['exclude'] = $exclude;\n            }\n            $ret[] = $php;\n        }\n        return $ret;\n    }\n}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/PackageFile/Generator/v2.php",
    "content": "<?php\n/**\n * package.xml generation class, package.xml version 2.0\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @author     Stephan Schmidt (original XML_Serializer code)\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: v2.php 278907 2009-04-17 21:10:04Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n/**\n * file/dir manipulation routines\n */\nrequire_once 'System.php';\nrequire_once 'XML/Util.php';\n\n/**\n * This class converts a PEAR_PackageFile_v2 object into any output format.\n *\n * Supported output formats include array, XML string (using S. Schmidt's\n * XML_Serializer, slightly customized)\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @author     Stephan Schmidt (original XML_Serializer code)\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_PackageFile_Generator_v2\n{\n   /**\n    * default options for the serialization\n    * @access private\n    * @var array $_defaultOptions\n    */\n    var $_defaultOptions = array(\n        'indent'             => ' ',                    // string used for indentation\n        'linebreak'          => \"\\n\",                  // string used for newlines\n        'typeHints'          => false,                 // automatically add type hin attributes\n        'addDecl'            => true,                 // add an XML declaration\n        'defaultTagName'     => 'XML_Serializer_Tag',  // tag used for indexed arrays or invalid names\n        'classAsTagName'     => false,                 // use classname for objects in indexed arrays\n        'keyAttribute'       => '_originalKey',        // attribute where original key is stored\n        'typeAttribute'      => '_type',               // attribute for type (only if typeHints => true)\n        'classAttribute'     => '_class',              // attribute for class of objects (only if typeHints => true)\n        'scalarAsAttributes' => false,                 // scalar values (strings, ints,..) will be serialized as attribute\n        'prependAttributes'  => '',                    // prepend string for attributes\n        'indentAttributes'   => false,                 // indent the attributes, if set to '_auto', it will indent attributes so they all start at the same column\n        'mode'               => 'simplexml',             // use 'simplexml' to use parent name as tagname if transforming an indexed array\n        'addDoctype'         => false,                 // add a doctype declaration\n        'doctype'            => null,                  // supply a string or an array with id and uri ({@see XML_Util::getDoctypeDeclaration()}\n        'rootName'           => 'package',                  // name of the root tag\n        'rootAttributes'     => array(\n            'version' => '2.0',\n            'xmlns' => 'http://pear.php.net/dtd/package-2.0',\n            'xmlns:tasks' => 'http://pear.php.net/dtd/tasks-1.0',\n            'xmlns:xsi' => 'http://www.w3.org/2001/XMLSchema-instance',\n            'xsi:schemaLocation' => 'http://pear.php.net/dtd/tasks-1.0\nhttp://pear.php.net/dtd/tasks-1.0.xsd\nhttp://pear.php.net/dtd/package-2.0\nhttp://pear.php.net/dtd/package-2.0.xsd',\n        ),               // attributes of the root tag\n        'attributesArray'    => 'attribs',                  // all values in this key will be treated as attributes\n        'contentName'        => '_content',                   // this value will be used directly as content, instead of creating a new tag, may only be used in conjuction with attributesArray\n        'beautifyFilelist'   => false,\n        'encoding' => 'UTF-8',\n    );\n\n   /**\n    * options for the serialization\n    * @access private\n    * @var array $options\n    */\n    var $options = array();\n\n   /**\n    * current tag depth\n    * @var integer $_tagDepth\n    */\n    var $_tagDepth = 0;\n\n   /**\n    * serilialized representation of the data\n    * @var string $_serializedData\n    */\n    var $_serializedData = null;\n    /**\n     * @var PEAR_PackageFile_v2\n     */\n    var $_packagefile;\n    /**\n     * @param PEAR_PackageFile_v2\n     */\n    function PEAR_PackageFile_Generator_v2(&$packagefile)\n    {\n        $this->_packagefile = &$packagefile;\n        if (isset($this->_packagefile->encoding)) {\n            $this->_defaultOptions['encoding'] = $this->_packagefile->encoding;\n        }\n    }\n\n    /**\n     * @return string\n     */\n    function getPackagerVersion()\n    {\n        return '1.9.1';\n    }\n\n    /**\n     * @param PEAR_Packager\n     * @param bool generate a .tgz or a .tar\n     * @param string|null temporary directory to package in\n     */\n    function toTgz(&$packager, $compress = true, $where = null)\n    {\n        $a = null;\n        return $this->toTgz2($packager, $a, $compress, $where);\n    }\n\n    /**\n     * Package up both a package.xml and package2.xml for the same release\n     * @param PEAR_Packager\n     * @param PEAR_PackageFile_v1\n     * @param bool generate a .tgz or a .tar\n     * @param string|null temporary directory to package in\n     */\n    function toTgz2(&$packager, &$pf1, $compress = true, $where = null)\n    {\n        require_once 'Archive/Tar.php';\n        if (!$this->_packagefile->isEquivalent($pf1)) {\n            return PEAR::raiseError('PEAR_Packagefile_v2::toTgz: \"' .\n                basename($pf1->getPackageFile()) .\n                '\" is not equivalent to \"' . basename($this->_packagefile->getPackageFile())\n                . '\"');\n        }\n\n        if ($where === null) {\n            if (!($where = System::mktemp(array('-d')))) {\n                return PEAR::raiseError('PEAR_Packagefile_v2::toTgz: mktemp failed');\n            }\n        } elseif (!@System::mkDir(array('-p', $where))) {\n            return PEAR::raiseError('PEAR_Packagefile_v2::toTgz: \"' . $where . '\" could' .\n                ' not be created');\n        }\n\n        $file = $where . DIRECTORY_SEPARATOR . 'package.xml';\n        if (file_exists($file) && !is_file($file)) {\n            return PEAR::raiseError('PEAR_Packagefile_v2::toTgz: unable to save package.xml as' .\n                ' \"' . $file  .'\"');\n        }\n\n        if (!$this->_packagefile->validate(PEAR_VALIDATE_PACKAGING)) {\n            return PEAR::raiseError('PEAR_Packagefile_v2::toTgz: invalid package.xml');\n        }\n\n        $ext = $compress ? '.tgz' : '.tar';\n        $pkgver = $this->_packagefile->getPackage() . '-' . $this->_packagefile->getVersion();\n        $dest_package = getcwd() . DIRECTORY_SEPARATOR . $pkgver . $ext;\n        if (file_exists($dest_package) && !is_file($dest_package)) {\n            return PEAR::raiseError('PEAR_Packagefile_v2::toTgz: cannot create tgz file \"' .\n                $dest_package . '\"');\n        }\n\n        $pkgfile = $this->_packagefile->getPackageFile();\n        if (!$pkgfile) {\n            return PEAR::raiseError('PEAR_Packagefile_v2::toTgz: package file object must ' .\n                'be created from a real file');\n        }\n\n        $pkgdir  = dirname(realpath($pkgfile));\n        $pkgfile = basename($pkgfile);\n\n        // {{{ Create the package file list\n        $filelist = array();\n        $i = 0;\n        $this->_packagefile->flattenFilelist();\n        $contents = $this->_packagefile->getContents();\n        if (isset($contents['bundledpackage'])) { // bundles of packages\n            $contents = $contents['bundledpackage'];\n            if (!isset($contents[0])) {\n                $contents = array($contents);\n            }\n\n            $packageDir = $where;\n            foreach ($contents as $i => $package) {\n                $fname = $package;\n                $file = $pkgdir . DIRECTORY_SEPARATOR . $fname;\n                if (!file_exists($file)) {\n                    return $packager->raiseError(\"File does not exist: $fname\");\n                }\n\n                $tfile = $packageDir . DIRECTORY_SEPARATOR . $fname;\n                System::mkdir(array('-p', dirname($tfile)));\n                copy($file, $tfile);\n                $filelist[$i++] = $tfile;\n                $packager->log(2, \"Adding package $fname\");\n            }\n        } else { // normal packages\n            $contents = $contents['dir']['file'];\n            if (!isset($contents[0])) {\n                $contents = array($contents);\n            }\n\n            $packageDir = $where;\n            foreach ($contents as $i => $file) {\n                $fname = $file['attribs']['name'];\n                $atts = $file['attribs'];\n                $orig = $file;\n                $file = $pkgdir . DIRECTORY_SEPARATOR . $fname;\n                if (!file_exists($file)) {\n                    return $packager->raiseError(\"File does not exist: $fname\");\n                }\n\n                $origperms = fileperms($file);\n                $tfile = $packageDir . DIRECTORY_SEPARATOR . $fname;\n                unset($orig['attribs']);\n                if (count($orig)) { // file with tasks\n                    // run any package-time tasks\n                    $contents = file_get_contents($file);\n                    foreach ($orig as $tag => $raw) {\n                        $tag = str_replace(\n                            array($this->_packagefile->getTasksNs() . ':', '-'),\n                            array('', '_'), $tag);\n                        $task = \"PEAR_Task_$tag\";\n                        $task = &new $task($this->_packagefile->_config,\n                            $this->_packagefile->_logger,\n                            PEAR_TASK_PACKAGE);\n                        $task->init($raw, $atts, null);\n                        $res = $task->startSession($this->_packagefile, $contents, $tfile);\n                        if (!$res) {\n                            continue; // skip this task\n                        }\n\n                        if (PEAR::isError($res)) {\n                            return $res;\n                        }\n\n                        $contents = $res; // save changes\n                        System::mkdir(array('-p', dirname($tfile)));\n                        $wp = fopen($tfile, \"wb\");\n                        fwrite($wp, $contents);\n                        fclose($wp);\n                    }\n                }\n\n                if (!file_exists($tfile)) {\n                    System::mkdir(array('-p', dirname($tfile)));\n                    copy($file, $tfile);\n                }\n\n                chmod($tfile, $origperms);\n                $filelist[$i++] = $tfile;\n                $this->_packagefile->setFileAttribute($fname, 'md5sum', md5_file($tfile), $i - 1);\n                $packager->log(2, \"Adding file $fname\");\n            }\n        }\n            // }}}\n\n        $name       = $pf1 !== null ? 'package2.xml' : 'package.xml';\n        $packagexml = $this->toPackageFile($where, PEAR_VALIDATE_PACKAGING, $name);\n        if ($packagexml) {\n            $tar =& new Archive_Tar($dest_package, $compress);\n            $tar->setErrorHandling(PEAR_ERROR_RETURN); // XXX Don't print errors\n            // ----- Creates with the package.xml file\n            $ok = $tar->createModify(array($packagexml), '', $where);\n            if (PEAR::isError($ok)) {\n                return $packager->raiseError($ok);\n            } elseif (!$ok) {\n                return $packager->raiseError('PEAR_Packagefile_v2::toTgz(): adding ' . $name .\n                    ' failed');\n            }\n\n            // ----- Add the content of the package\n            if (!$tar->addModify($filelist, $pkgver, $where)) {\n                return $packager->raiseError(\n                    'PEAR_Packagefile_v2::toTgz(): tarball creation failed');\n            }\n\n            // add the package.xml version 1.0\n            if ($pf1 !== null) {\n                $pfgen = &$pf1->getDefaultGenerator();\n                $packagexml1 = $pfgen->toPackageFile($where, PEAR_VALIDATE_PACKAGING, 'package.xml', true);\n                if (!$tar->addModify(array($packagexml1), '', $where)) {\n                    return $packager->raiseError(\n                        'PEAR_Packagefile_v2::toTgz(): adding package.xml failed');\n                }\n            }\n\n            return $dest_package;\n        }\n    }\n\n    function toPackageFile($where = null, $state = PEAR_VALIDATE_NORMAL, $name = 'package.xml')\n    {\n        if (!$this->_packagefile->validate($state)) {\n            return PEAR::raiseError('PEAR_Packagefile_v2::toPackageFile: invalid package.xml',\n                null, null, null, $this->_packagefile->getValidationWarnings());\n        }\n\n        if ($where === null) {\n            if (!($where = System::mktemp(array('-d')))) {\n                return PEAR::raiseError('PEAR_Packagefile_v2::toPackageFile: mktemp failed');\n            }\n        } elseif (!@System::mkDir(array('-p', $where))) {\n            return PEAR::raiseError('PEAR_Packagefile_v2::toPackageFile: \"' . $where . '\" could' .\n                ' not be created');\n        }\n\n        $newpkgfile = $where . DIRECTORY_SEPARATOR . $name;\n        $np = @fopen($newpkgfile, 'wb');\n        if (!$np) {\n            return PEAR::raiseError('PEAR_Packagefile_v2::toPackageFile: unable to save ' .\n               \"$name as $newpkgfile\");\n        }\n        fwrite($np, $this->toXml($state));\n        fclose($np);\n        return $newpkgfile;\n    }\n\n    function &toV2()\n    {\n        return $this->_packagefile;\n    }\n\n    /**\n     * Return an XML document based on the package info (as returned\n     * by the PEAR_Common::infoFrom* methods).\n     *\n     * @return string XML data\n     */\n    function toXml($state = PEAR_VALIDATE_NORMAL, $options = array())\n    {\n        $this->_packagefile->setDate(date('Y-m-d'));\n        $this->_packagefile->setTime(date('H:i:s'));\n        if (!$this->_packagefile->validate($state)) {\n            return false;\n        }\n\n        if (is_array($options)) {\n            $this->options = array_merge($this->_defaultOptions, $options);\n        } else {\n            $this->options = $this->_defaultOptions;\n        }\n\n        $arr = $this->_packagefile->getArray();\n        if (isset($arr['filelist'])) {\n            unset($arr['filelist']);\n        }\n\n        if (isset($arr['_lastversion'])) {\n            unset($arr['_lastversion']);\n        }\n\n        // Fix the notes a little bit\n        if (isset($arr['notes'])) {\n            // This trims out the indenting, needs fixing\n            $arr['notes'] = \"\\n\" . trim($arr['notes']) . \"\\n\";\n        }\n\n        if (isset($arr['changelog']) && !empty($arr['changelog'])) {\n            // Fix for inconsistency how the array is filled depending on the changelog release amount\n            if (!isset($arr['changelog']['release'][0])) {\n                $release = $arr['changelog']['release'];\n                unset($arr['changelog']['release']);\n\n                $arr['changelog']['release']    = array();\n                $arr['changelog']['release'][0] = $release;\n            }\n\n            foreach (array_keys($arr['changelog']['release']) as $key) {\n                $c =& $arr['changelog']['release'][$key];\n                if (isset($c['notes'])) {\n                    // This trims out the indenting, needs fixing\n                    $c['notes'] = \"\\n\" . trim($c['notes']) . \"\\n\";\n                }\n            }\n        }\n\n        if ($state ^ PEAR_VALIDATE_PACKAGING && !isset($arr['bundle'])) {\n            $use = $this->_recursiveXmlFilelist($arr['contents']['dir']['file']);\n            unset($arr['contents']['dir']['file']);\n            if (isset($use['dir'])) {\n                $arr['contents']['dir']['dir'] = $use['dir'];\n            }\n            if (isset($use['file'])) {\n                $arr['contents']['dir']['file'] = $use['file'];\n            }\n            $this->options['beautifyFilelist'] = true;\n        }\n\n        $arr['attribs']['packagerversion'] = '1.9.1';\n        if ($this->serialize($arr, $options)) {\n            return $this->_serializedData . \"\\n\";\n        }\n\n        return false;\n    }\n\n\n    function _recursiveXmlFilelist($list)\n    {\n        $dirs = array();\n        if (isset($list['attribs'])) {\n            $file = $list['attribs']['name'];\n            unset($list['attribs']['name']);\n            $attributes = $list['attribs'];\n            $this->_addDir($dirs, explode('/', dirname($file)), $file, $attributes);\n        } else {\n            foreach ($list as $a) {\n                $file = $a['attribs']['name'];\n                $attributes = $a['attribs'];\n                unset($a['attribs']);\n                $this->_addDir($dirs, explode('/', dirname($file)), $file, $attributes, $a);\n            }\n        }\n        $this->_formatDir($dirs);\n        $this->_deFormat($dirs);\n        return $dirs;\n    }\n\n    function _addDir(&$dirs, $dir, $file = null, $attributes = null, $tasks = null)\n    {\n        if (!$tasks) {\n            $tasks = array();\n        }\n        if ($dir == array() || $dir == array('.')) {\n            $dirs['file'][basename($file)] = $tasks;\n            $attributes['name'] = basename($file);\n            $dirs['file'][basename($file)]['attribs'] = $attributes;\n            return;\n        }\n        $curdir = array_shift($dir);\n        if (!isset($dirs['dir'][$curdir])) {\n            $dirs['dir'][$curdir] = array();\n        }\n        $this->_addDir($dirs['dir'][$curdir], $dir, $file, $attributes, $tasks);\n    }\n\n    function _formatDir(&$dirs)\n    {\n        if (!count($dirs)) {\n            return array();\n        }\n        $newdirs = array();\n        if (isset($dirs['dir'])) {\n            $newdirs['dir'] = $dirs['dir'];\n        }\n        if (isset($dirs['file'])) {\n            $newdirs['file'] = $dirs['file'];\n        }\n        $dirs = $newdirs;\n        if (isset($dirs['dir'])) {\n            uksort($dirs['dir'], 'strnatcasecmp');\n            foreach ($dirs['dir'] as $dir => $contents) {\n                $this->_formatDir($dirs['dir'][$dir]);\n            }\n        }\n        if (isset($dirs['file'])) {\n            uksort($dirs['file'], 'strnatcasecmp');\n        };\n    }\n\n    function _deFormat(&$dirs)\n    {\n        if (!count($dirs)) {\n            return array();\n        }\n        $newdirs = array();\n        if (isset($dirs['dir'])) {\n            foreach ($dirs['dir'] as $dir => $contents) {\n                $newdir = array();\n                $newdir['attribs']['name'] = $dir;\n                $this->_deFormat($contents);\n                foreach ($contents as $tag => $val) {\n                    $newdir[$tag] = $val;\n                }\n                $newdirs['dir'][] = $newdir;\n            }\n            if (count($newdirs['dir']) == 1) {\n                $newdirs['dir'] = $newdirs['dir'][0];\n            }\n        }\n        if (isset($dirs['file'])) {\n            foreach ($dirs['file'] as $name => $file) {\n                $newdirs['file'][] = $file;\n            }\n            if (count($newdirs['file']) == 1) {\n                $newdirs['file'] = $newdirs['file'][0];\n            }\n        }\n        $dirs = $newdirs;\n    }\n\n    /**\n    * reset all options to default options\n    *\n    * @access   public\n    * @see      setOption(), XML_Unserializer()\n    */\n    function resetOptions()\n    {\n        $this->options = $this->_defaultOptions;\n    }\n\n   /**\n    * set an option\n    *\n    * You can use this method if you do not want to set all options in the constructor\n    *\n    * @access   public\n    * @see      resetOption(), XML_Serializer()\n    */\n    function setOption($name, $value)\n    {\n        $this->options[$name] = $value;\n    }\n\n   /**\n    * sets several options at once\n    *\n    * You can use this method if you do not want to set all options in the constructor\n    *\n    * @access   public\n    * @see      resetOption(), XML_Unserializer(), setOption()\n    */\n    function setOptions($options)\n    {\n        $this->options = array_merge($this->options, $options);\n    }\n\n   /**\n    * serialize data\n    *\n    * @access   public\n    * @param    mixed    $data data to serialize\n    * @return   boolean  true on success, pear error on failure\n    */\n    function serialize($data, $options = null)\n    {\n        // if options have been specified, use them instead\n        // of the previously defined ones\n        if (is_array($options)) {\n            $optionsBak = $this->options;\n            if (isset($options['overrideOptions']) && $options['overrideOptions'] == true) {\n                $this->options = array_merge($this->_defaultOptions, $options);\n            } else {\n                $this->options = array_merge($this->options, $options);\n            }\n        } else {\n            $optionsBak = null;\n        }\n\n        //  start depth is zero\n        $this->_tagDepth = 0;\n        $this->_serializedData = '';\n        // serialize an array\n        if (is_array($data)) {\n            $tagName = isset($this->options['rootName']) ? $this->options['rootName'] : 'array';\n            $this->_serializedData .= $this->_serializeArray($data, $tagName, $this->options['rootAttributes']);\n        }\n\n        // add doctype declaration\n        if ($this->options['addDoctype'] === true) {\n            $this->_serializedData = XML_Util::getDoctypeDeclaration($tagName, $this->options['doctype'])\n                                   . $this->options['linebreak']\n                                   . $this->_serializedData;\n        }\n\n        //  build xml declaration\n        if ($this->options['addDecl']) {\n            $atts = array();\n            $encoding = isset($this->options['encoding']) ? $this->options['encoding'] : null;\n            $this->_serializedData = XML_Util::getXMLDeclaration('1.0', $encoding)\n                                   . $this->options['linebreak']\n                                   . $this->_serializedData;\n        }\n\n\n        if ($optionsBak !== null) {\n            $this->options = $optionsBak;\n        }\n\n        return  true;\n    }\n\n   /**\n    * get the result of the serialization\n    *\n    * @access public\n    * @return string serialized XML\n    */\n    function getSerializedData()\n    {\n        if ($this->_serializedData === null) {\n            return  $this->raiseError('No serialized data available. Use XML_Serializer::serialize() first.', XML_SERIALIZER_ERROR_NO_SERIALIZATION);\n        }\n        return $this->_serializedData;\n    }\n\n   /**\n    * serialize any value\n    *\n    * This method checks for the type of the value and calls the appropriate method\n    *\n    * @access private\n    * @param  mixed     $value\n    * @param  string    $tagName\n    * @param  array     $attributes\n    * @return string\n    */\n    function _serializeValue($value, $tagName = null, $attributes = array())\n    {\n        if (is_array($value)) {\n            $xml = $this->_serializeArray($value, $tagName, $attributes);\n        } elseif (is_object($value)) {\n            $xml = $this->_serializeObject($value, $tagName);\n        } else {\n            $tag = array(\n                          'qname'      => $tagName,\n                          'attributes' => $attributes,\n                          'content'    => $value\n                        );\n            $xml = $this->_createXMLTag($tag);\n        }\n        return $xml;\n    }\n\n   /**\n    * serialize an array\n    *\n    * @access   private\n    * @param    array   $array       array to serialize\n    * @param    string  $tagName     name of the root tag\n    * @param    array   $attributes  attributes for the root tag\n    * @return   string  $string      serialized data\n    * @uses     XML_Util::isValidName() to check, whether key has to be substituted\n    */\n    function _serializeArray(&$array, $tagName = null, $attributes = array())\n    {\n        $_content = null;\n\n        /**\n         * check for special attributes\n         */\n        if ($this->options['attributesArray'] !== null) {\n            if (isset($array[$this->options['attributesArray']])) {\n                $attributes = $array[$this->options['attributesArray']];\n                unset($array[$this->options['attributesArray']]);\n            }\n            /**\n             * check for special content\n             */\n            if ($this->options['contentName'] !== null) {\n                if (isset($array[$this->options['contentName']])) {\n                    $_content = $array[$this->options['contentName']];\n                    unset($array[$this->options['contentName']]);\n                }\n            }\n        }\n\n        /*\n        * if mode is set to simpleXML, check whether\n        * the array is associative or indexed\n        */\n        if (is_array($array) && $this->options['mode'] == 'simplexml') {\n            $indexed = true;\n            if (!count($array)) {\n                $indexed = false;\n            }\n            foreach ($array as $key => $val) {\n                if (!is_int($key)) {\n                    $indexed = false;\n                    break;\n                }\n            }\n\n            if ($indexed && $this->options['mode'] == 'simplexml') {\n                $string = '';\n                foreach ($array as $key => $val) {\n                    if ($this->options['beautifyFilelist'] && $tagName == 'dir') {\n                        if (!isset($this->_curdir)) {\n                            $this->_curdir = '';\n                        }\n                        $savedir = $this->_curdir;\n                        if (isset($val['attribs'])) {\n                            if ($val['attribs']['name'] == '/') {\n                                $this->_curdir = '/';\n                            } else {\n                                if ($this->_curdir == '/') {\n                                    $this->_curdir = '';\n                                }\n                                $this->_curdir .= '/' . $val['attribs']['name'];\n                            }\n                        }\n                    }\n                    $string .= $this->_serializeValue( $val, $tagName, $attributes);\n                    if ($this->options['beautifyFilelist'] && $tagName == 'dir') {\n                        $string .= ' <!-- ' . $this->_curdir . ' -->';\n                        if (empty($savedir)) {\n                            unset($this->_curdir);\n                        } else {\n                            $this->_curdir = $savedir;\n                        }\n                    }\n\n                    $string .= $this->options['linebreak'];\n                    // do indentation\n                    if ($this->options['indent'] !== null && $this->_tagDepth > 0) {\n                        $string .= str_repeat($this->options['indent'], $this->_tagDepth);\n                    }\n                }\n                return rtrim($string);\n            }\n        }\n\n        if ($this->options['scalarAsAttributes'] === true) {\n            foreach ($array as $key => $value) {\n                if (is_scalar($value) && (XML_Util::isValidName($key) === true)) {\n                    unset($array[$key]);\n                    $attributes[$this->options['prependAttributes'].$key] = $value;\n                }\n            }\n        }\n\n        // check for empty array => create empty tag\n        if (empty($array)) {\n            $tag = array(\n                            'qname'      => $tagName,\n                            'content'    => $_content,\n                            'attributes' => $attributes\n                        );\n\n        } else {\n            $this->_tagDepth++;\n            $tmp = $this->options['linebreak'];\n            foreach ($array as $key => $value) {\n                // do indentation\n                if ($this->options['indent'] !== null && $this->_tagDepth > 0) {\n                    $tmp .= str_repeat($this->options['indent'], $this->_tagDepth);\n                }\n\n                // copy key\n                $origKey = $key;\n                // key cannot be used as tagname => use default tag\n                $valid = XML_Util::isValidName($key);\n                if (PEAR::isError($valid)) {\n                    if ($this->options['classAsTagName'] && is_object($value)) {\n                        $key = get_class($value);\n                    } else {\n                        $key = $this->options['defaultTagName'];\n                    }\n                }\n                $atts = array();\n                if ($this->options['typeHints'] === true) {\n                    $atts[$this->options['typeAttribute']] = gettype($value);\n                    if ($key !== $origKey) {\n                        $atts[$this->options['keyAttribute']] = (string)$origKey;\n                    }\n\n                }\n                if ($this->options['beautifyFilelist'] && $key == 'dir') {\n                    if (!isset($this->_curdir)) {\n                        $this->_curdir = '';\n                    }\n                    $savedir = $this->_curdir;\n                    if (isset($value['attribs'])) {\n                        if ($value['attribs']['name'] == '/') {\n                            $this->_curdir = '/';\n                        } else {\n                            $this->_curdir .= '/' . $value['attribs']['name'];\n                        }\n                    }\n                }\n\n                if (is_string($value) && $value && ($value{strlen($value) - 1} == \"\\n\")) {\n                    $value .= str_repeat($this->options['indent'], $this->_tagDepth);\n                }\n                $tmp .= $this->_createXMLTag(array(\n                                                    'qname'      => $key,\n                                                    'attributes' => $atts,\n                                                    'content'    => $value )\n                                            );\n                if ($this->options['beautifyFilelist'] && $key == 'dir') {\n                    if (isset($value['attribs'])) {\n                        $tmp .= ' <!-- ' . $this->_curdir . ' -->';\n                        if (empty($savedir)) {\n                            unset($this->_curdir);\n                        } else {\n                            $this->_curdir = $savedir;\n                        }\n                    }\n                }\n                $tmp .= $this->options['linebreak'];\n            }\n\n            $this->_tagDepth--;\n            if ($this->options['indent']!==null && $this->_tagDepth>0) {\n                $tmp .= str_repeat($this->options['indent'], $this->_tagDepth);\n            }\n\n            if (trim($tmp) === '') {\n                $tmp = null;\n            }\n\n            $tag = array(\n                'qname'      => $tagName,\n                'content'    => $tmp,\n                'attributes' => $attributes\n            );\n        }\n        if ($this->options['typeHints'] === true) {\n            if (!isset($tag['attributes'][$this->options['typeAttribute']])) {\n                $tag['attributes'][$this->options['typeAttribute']] = 'array';\n            }\n        }\n\n        $string = $this->_createXMLTag($tag, false);\n        return $string;\n    }\n\n   /**\n    * create a tag from an array\n    * this method awaits an array in the following format\n    * array(\n    *       'qname'        => $tagName,\n    *       'attributes'   => array(),\n    *       'content'      => $content,      // optional\n    *       'namespace'    => $namespace     // optional\n    *       'namespaceUri' => $namespaceUri  // optional\n    *   )\n    *\n    * @access   private\n    * @param    array   $tag tag definition\n    * @param    boolean $replaceEntities whether to replace XML entities in content or not\n    * @return   string  $string XML tag\n    */\n    function _createXMLTag($tag, $replaceEntities = true)\n    {\n        if ($this->options['indentAttributes'] !== false) {\n            $multiline = true;\n            $indent    = str_repeat($this->options['indent'], $this->_tagDepth);\n\n            if ($this->options['indentAttributes'] == '_auto') {\n                $indent .= str_repeat(' ', (strlen($tag['qname'])+2));\n\n            } else {\n                $indent .= $this->options['indentAttributes'];\n            }\n        } else {\n            $indent = $multiline = false;\n        }\n\n        if (is_array($tag['content'])) {\n            if (empty($tag['content'])) {\n                $tag['content'] = '';\n            }\n        } elseif(is_scalar($tag['content']) && (string)$tag['content'] == '') {\n            $tag['content'] = '';\n        }\n\n        if (is_scalar($tag['content']) || is_null($tag['content'])) {\n            if ($this->options['encoding'] == 'UTF-8' &&\n                  version_compare(phpversion(), '5.0.0', 'lt')\n            ) {\n                $tag['content'] = utf8_encode($tag['content']);\n            }\n\n            if ($replaceEntities === true) {\n                $replaceEntities = XML_UTIL_ENTITIES_XML;\n            }\n\n            $tag = XML_Util::createTagFromArray($tag, $replaceEntities, $multiline, $indent, $this->options['linebreak']);\n        } elseif (is_array($tag['content'])) {\n            $tag = $this->_serializeArray($tag['content'], $tag['qname'], $tag['attributes']);\n        } elseif (is_object($tag['content'])) {\n            $tag = $this->_serializeObject($tag['content'], $tag['qname'], $tag['attributes']);\n        } elseif (is_resource($tag['content'])) {\n            settype($tag['content'], 'string');\n            $tag = XML_Util::createTagFromArray($tag, $replaceEntities);\n        }\n        return  $tag;\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/PackageFile/Parser/v1.php",
    "content": "<?php\n/**\n * package.xml parsing class, package.xml version 1.0\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: v1.php 276385 2009-02-24 23:46:03Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n/**\n * package.xml abstraction class\n */\nrequire_once 'PEAR/PackageFile/v1.php';\n/**\n * Parser for package.xml version 1.0\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: @PEAR-VER@\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_PackageFile_Parser_v1\n{\n    var $_registry;\n    var $_config;\n    var $_logger;\n    /**\n     * BC hack to allow PEAR_Common::infoFromString() to sort of\n     * work with the version 2.0 format - there's no filelist though\n     * @param PEAR_PackageFile_v2\n     */\n    function fromV2($packagefile)\n    {\n        $info = $packagefile->getArray(true);\n        $ret = new PEAR_PackageFile_v1;\n        $ret->fromArray($info['old']);\n    }\n\n    function setConfig(&$c)\n    {\n        $this->_config = &$c;\n        $this->_registry = &$c->getRegistry();\n    }\n\n    function setLogger(&$l)\n    {\n        $this->_logger = &$l;\n    }\n\n    /**\n     * @param string contents of package.xml file, version 1.0\n     * @return bool success of parsing\n     */\n    function &parse($data, $file, $archive = false)\n    {\n        if (!extension_loaded('xml')) {\n            return PEAR::raiseError('Cannot create xml parser for parsing package.xml, no xml extension');\n        }\n        $xp = xml_parser_create();\n        if (!$xp) {\n            $a = &PEAR::raiseError('Cannot create xml parser for parsing package.xml');\n            return $a;\n        }\n        xml_set_object($xp, $this);\n        xml_set_element_handler($xp, '_element_start_1_0', '_element_end_1_0');\n        xml_set_character_data_handler($xp, '_pkginfo_cdata_1_0');\n        xml_parser_set_option($xp, XML_OPTION_CASE_FOLDING, false);\n\n        $this->element_stack = array();\n        $this->_packageInfo = array('provides' => array());\n        $this->current_element = false;\n        unset($this->dir_install);\n        $this->_packageInfo['filelist'] = array();\n        $this->filelist =& $this->_packageInfo['filelist'];\n        $this->dir_names = array();\n        $this->in_changelog = false;\n        $this->d_i = 0;\n        $this->cdata = '';\n        $this->_isValid = true;\n\n        if (!xml_parse($xp, $data, 1)) {\n            $code = xml_get_error_code($xp);\n            $line = xml_get_current_line_number($xp);\n            xml_parser_free($xp);\n            $a = &PEAR::raiseError(sprintf(\"XML error: %s at line %d\",\n                           $str = xml_error_string($code), $line), 2);\n            return $a;\n        }\n\n        xml_parser_free($xp);\n\n        $pf = new PEAR_PackageFile_v1;\n        $pf->setConfig($this->_config);\n        if (isset($this->_logger)) {\n            $pf->setLogger($this->_logger);\n        }\n        $pf->setPackagefile($file, $archive);\n        $pf->fromArray($this->_packageInfo);\n        return $pf;\n    }\n    // {{{ _unIndent()\n\n    /**\n     * Unindent given string\n     *\n     * @param string $str The string that has to be unindented.\n     * @return string\n     * @access private\n     */\n    function _unIndent($str)\n    {\n        // remove leading newlines\n        $str = preg_replace('/^[\\r\\n]+/', '', $str);\n        // find whitespace at the beginning of the first line\n        $indent_len = strspn($str, \" \\t\");\n        $indent = substr($str, 0, $indent_len);\n        $data = '';\n        // remove the same amount of whitespace from following lines\n        foreach (explode(\"\\n\", $str) as $line) {\n            if (substr($line, 0, $indent_len) == $indent) {\n                $data .= substr($line, $indent_len) . \"\\n\";\n            } elseif (trim(substr($line, 0, $indent_len))) {\n                $data .= ltrim($line);\n            }\n        }\n        return $data;\n    }\n\n    // Support for package DTD v1.0:\n    // {{{ _element_start_1_0()\n\n    /**\n     * XML parser callback for ending elements.  Used for version 1.0\n     * packages.\n     *\n     * @param resource  $xp    XML parser resource\n     * @param string    $name  name of ending element\n     *\n     * @return void\n     *\n     * @access private\n     */\n    function _element_start_1_0($xp, $name, $attribs)\n    {\n        array_push($this->element_stack, $name);\n        $this->current_element = $name;\n        $spos = sizeof($this->element_stack) - 2;\n        $this->prev_element = ($spos >= 0) ? $this->element_stack[$spos] : '';\n        $this->current_attributes = $attribs;\n        $this->cdata = '';\n        switch ($name) {\n            case 'dir':\n                if ($this->in_changelog) {\n                    break;\n                }\n                if (array_key_exists('name', $attribs) && $attribs['name'] != '/') {\n                    $attribs['name'] = preg_replace(array('!\\\\\\\\+!', '!/+!'), array('/', '/'),\n                        $attribs['name']);\n                    if (strrpos($attribs['name'], '/') === strlen($attribs['name']) - 1) {\n                        $attribs['name'] = substr($attribs['name'], 0,\n                            strlen($attribs['name']) - 1);\n                    }\n                    if (strpos($attribs['name'], '/') === 0) {\n                        $attribs['name'] = substr($attribs['name'], 1);\n                    }\n                    $this->dir_names[] = $attribs['name'];\n                }\n                if (isset($attribs['baseinstalldir'])) {\n                    $this->dir_install = $attribs['baseinstalldir'];\n                }\n                if (isset($attribs['role'])) {\n                    $this->dir_role = $attribs['role'];\n                }\n                break;\n            case 'file':\n                if ($this->in_changelog) {\n                    break;\n                }\n                if (isset($attribs['name'])) {\n                    $path = '';\n                    if (count($this->dir_names)) {\n                        foreach ($this->dir_names as $dir) {\n                            $path .= $dir . '/';\n                        }\n                    }\n                    $path .= preg_replace(array('!\\\\\\\\+!', '!/+!'), array('/', '/'),\n                        $attribs['name']);\n                    unset($attribs['name']);\n                    $this->current_path = $path;\n                    $this->filelist[$path] = $attribs;\n                    // Set the baseinstalldir only if the file don't have this attrib\n                    if (!isset($this->filelist[$path]['baseinstalldir']) &&\n                        isset($this->dir_install))\n                    {\n                        $this->filelist[$path]['baseinstalldir'] = $this->dir_install;\n                    }\n                    // Set the Role\n                    if (!isset($this->filelist[$path]['role']) && isset($this->dir_role)) {\n                        $this->filelist[$path]['role'] = $this->dir_role;\n                    }\n                }\n                break;\n            case 'replace':\n                if (!$this->in_changelog) {\n                    $this->filelist[$this->current_path]['replacements'][] = $attribs;\n                }\n                break;\n            case 'maintainers':\n                $this->_packageInfo['maintainers'] = array();\n                $this->m_i = 0; // maintainers array index\n                break;\n            case 'maintainer':\n                // compatibility check\n                if (!isset($this->_packageInfo['maintainers'])) {\n                    $this->_packageInfo['maintainers'] = array();\n                    $this->m_i = 0;\n                }\n                $this->_packageInfo['maintainers'][$this->m_i] = array();\n                $this->current_maintainer =& $this->_packageInfo['maintainers'][$this->m_i];\n                break;\n            case 'changelog':\n                $this->_packageInfo['changelog'] = array();\n                $this->c_i = 0; // changelog array index\n                $this->in_changelog = true;\n                break;\n            case 'release':\n                if ($this->in_changelog) {\n                    $this->_packageInfo['changelog'][$this->c_i] = array();\n                    $this->current_release = &$this->_packageInfo['changelog'][$this->c_i];\n                } else {\n                    $this->current_release = &$this->_packageInfo;\n                }\n                break;\n            case 'deps':\n                if (!$this->in_changelog) {\n                    $this->_packageInfo['release_deps'] = array();\n                }\n                break;\n            case 'dep':\n                // dependencies array index\n                if (!$this->in_changelog) {\n                    $this->d_i++;\n                    isset($attribs['type']) ? ($attribs['type'] = strtolower($attribs['type'])) : false;\n                    $this->_packageInfo['release_deps'][$this->d_i] = $attribs;\n                }\n                break;\n            case 'configureoptions':\n                if (!$this->in_changelog) {\n                    $this->_packageInfo['configure_options'] = array();\n                }\n                break;\n            case 'configureoption':\n                if (!$this->in_changelog) {\n                    $this->_packageInfo['configure_options'][] = $attribs;\n                }\n                break;\n            case 'provides':\n                if (empty($attribs['type']) || empty($attribs['name'])) {\n                    break;\n                }\n                $attribs['explicit'] = true;\n                $this->_packageInfo['provides'][\"$attribs[type];$attribs[name]\"] = $attribs;\n                break;\n            case 'package' :\n                if (isset($attribs['version'])) {\n                    $this->_packageInfo['xsdversion'] = trim($attribs['version']);\n                } else {\n                    $this->_packageInfo['xsdversion'] = '1.0';\n                }\n                if (isset($attribs['packagerversion'])) {\n                    $this->_packageInfo['packagerversion'] = $attribs['packagerversion'];\n                }\n                break;\n        }\n    }\n\n    // }}}\n    // {{{ _element_end_1_0()\n\n    /**\n     * XML parser callback for ending elements.  Used for version 1.0\n     * packages.\n     *\n     * @param resource  $xp    XML parser resource\n     * @param string    $name  name of ending element\n     *\n     * @return void\n     *\n     * @access private\n     */\n    function _element_end_1_0($xp, $name)\n    {\n        $data = trim($this->cdata);\n        switch ($name) {\n            case 'name':\n                switch ($this->prev_element) {\n                    case 'package':\n                        $this->_packageInfo['package'] = $data;\n                        break;\n                    case 'maintainer':\n                        $this->current_maintainer['name'] = $data;\n                        break;\n                }\n                break;\n            case 'extends' :\n                $this->_packageInfo['extends'] = $data;\n                break;\n            case 'summary':\n                $this->_packageInfo['summary'] = $data;\n                break;\n            case 'description':\n                $data = $this->_unIndent($this->cdata);\n                $this->_packageInfo['description'] = $data;\n                break;\n            case 'user':\n                $this->current_maintainer['handle'] = $data;\n                break;\n            case 'email':\n                $this->current_maintainer['email'] = $data;\n                break;\n            case 'role':\n                $this->current_maintainer['role'] = $data;\n                break;\n            case 'version':\n                if ($this->in_changelog) {\n                    $this->current_release['version'] = $data;\n                } else {\n                    $this->_packageInfo['version'] = $data;\n                }\n                break;\n            case 'date':\n                if ($this->in_changelog) {\n                    $this->current_release['release_date'] = $data;\n                } else {\n                    $this->_packageInfo['release_date'] = $data;\n                }\n                break;\n            case 'notes':\n                // try to \"de-indent\" release notes in case someone\n                // has been over-indenting their xml ;-)\n                // Trim only on the right side\n                $data = rtrim($this->_unIndent($this->cdata));\n                if ($this->in_changelog) {\n                    $this->current_release['release_notes'] = $data;\n                } else {\n                    $this->_packageInfo['release_notes'] = $data;\n                }\n                break;\n            case 'warnings':\n                if ($this->in_changelog) {\n                    $this->current_release['release_warnings'] = $data;\n                } else {\n                    $this->_packageInfo['release_warnings'] = $data;\n                }\n                break;\n            case 'state':\n                if ($this->in_changelog) {\n                    $this->current_release['release_state'] = $data;\n                } else {\n                    $this->_packageInfo['release_state'] = $data;\n                }\n                break;\n            case 'license':\n                if ($this->in_changelog) {\n                    $this->current_release['release_license'] = $data;\n                } else {\n                    $this->_packageInfo['release_license'] = $data;\n                }\n                break;\n            case 'dep':\n                if ($data && !$this->in_changelog) {\n                    $this->_packageInfo['release_deps'][$this->d_i]['name'] = $data;\n                }\n                break;\n            case 'dir':\n                if ($this->in_changelog) {\n                    break;\n                }\n                array_pop($this->dir_names);\n                break;\n            case 'file':\n                if ($this->in_changelog) {\n                    break;\n                }\n                if ($data) {\n                    $path = '';\n                    if (count($this->dir_names)) {\n                        foreach ($this->dir_names as $dir) {\n                            $path .= $dir . '/';\n                        }\n                    }\n                    $path .= $data;\n                    $this->filelist[$path] = $this->current_attributes;\n                    // Set the baseinstalldir only if the file don't have this attrib\n                    if (!isset($this->filelist[$path]['baseinstalldir']) &&\n                        isset($this->dir_install))\n                    {\n                        $this->filelist[$path]['baseinstalldir'] = $this->dir_install;\n                    }\n                    // Set the Role\n                    if (!isset($this->filelist[$path]['role']) && isset($this->dir_role)) {\n                        $this->filelist[$path]['role'] = $this->dir_role;\n                    }\n                }\n                break;\n            case 'maintainer':\n                if (empty($this->_packageInfo['maintainers'][$this->m_i]['role'])) {\n                    $this->_packageInfo['maintainers'][$this->m_i]['role'] = 'lead';\n                }\n                $this->m_i++;\n                break;\n            case 'release':\n                if ($this->in_changelog) {\n                    $this->c_i++;\n                }\n                break;\n            case 'changelog':\n                $this->in_changelog = false;\n                break;\n        }\n        array_pop($this->element_stack);\n        $spos = sizeof($this->element_stack) - 1;\n        $this->current_element = ($spos > 0) ? $this->element_stack[$spos] : '';\n        $this->cdata = '';\n    }\n\n    // }}}\n    // {{{ _pkginfo_cdata_1_0()\n\n    /**\n     * XML parser callback for character data.  Used for version 1.0\n     * packages.\n     *\n     * @param resource  $xp    XML parser resource\n     * @param string    $name  character data\n     *\n     * @return void\n     *\n     * @access private\n     */\n    function _pkginfo_cdata_1_0($xp, $data)\n    {\n        if (isset($this->cdata)) {\n            $this->cdata .= $data;\n        }\n    }\n\n    // }}}\n}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/PackageFile/Parser/v2.php",
    "content": "<?php\n/**\n * package.xml parsing class, package.xml version 2.0\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: v2.php 276385 2009-02-24 23:46:03Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n/**\n * base xml parser class\n */\nrequire_once 'PEAR/XMLParser.php';\nrequire_once 'PEAR/PackageFile/v2.php';\n/**\n * Parser for package.xml version 2.0\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: @PEAR-VER@\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_PackageFile_Parser_v2 extends PEAR_XMLParser\n{\n    var $_config;\n    var $_logger;\n    var $_registry;\n\n    function setConfig(&$c)\n    {\n        $this->_config = &$c;\n        $this->_registry = &$c->getRegistry();\n    }\n\n    function setLogger(&$l)\n    {\n        $this->_logger = &$l;\n    }\n    /**\n     * Unindent given string\n     *\n     * @param string $str The string that has to be unindented.\n     * @return string\n     * @access private\n     */\n    function _unIndent($str)\n    {\n        // remove leading newlines\n        $str = preg_replace('/^[\\r\\n]+/', '', $str);\n        // find whitespace at the beginning of the first line\n        $indent_len = strspn($str, \" \\t\");\n        $indent = substr($str, 0, $indent_len);\n        $data = '';\n        // remove the same amount of whitespace from following lines\n        foreach (explode(\"\\n\", $str) as $line) {\n            if (substr($line, 0, $indent_len) == $indent) {\n                $data .= substr($line, $indent_len) . \"\\n\";\n            } else {\n                $data .= $line . \"\\n\";\n            }\n        }\n        return $data;\n    }\n\n    /**\n     * post-process data\n     *\n     * @param string $data\n     * @param string $element element name\n     */\n    function postProcess($data, $element)\n    {\n        if ($element == 'notes') {\n            return trim($this->_unIndent($data));\n        }\n        return trim($data);\n    }\n\n    /**\n     * @param string\n     * @param string file name of the package.xml\n     * @param string|false name of the archive this package.xml came from, if any\n     * @param string class name to instantiate and return.  This must be PEAR_PackageFile_v2 or\n     *               a subclass\n     * @return PEAR_PackageFile_v2\n     */\n    function &parse($data, $file, $archive = false, $class = 'PEAR_PackageFile_v2')\n    {\n        if (PEAR::isError($err = parent::parse($data, $file))) {\n            return $err;\n        }\n\n        $ret = new $class;\n        $ret->encoding = $this->encoding;\n        $ret->setConfig($this->_config);\n        if (isset($this->_logger)) {\n            $ret->setLogger($this->_logger);\n        }\n\n        $ret->fromArray($this->_unserializedData);\n        $ret->setPackagefile($file, $archive);\n        return $ret;\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/PackageFile/v1.php",
    "content": "<?php\n/**\n * PEAR_PackageFile_v1, package.xml version 1.0\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: v1.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n/**\n * For error handling\n */\nrequire_once 'PEAR/ErrorStack.php';\n\n/**\n * Error code if parsing is attempted with no xml extension\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_XML_EXT', 3);\n\n/**\n * Error code if creating the xml parser resource fails\n */\ndefine('PEAR_PACKAGEFILE_ERROR_CANT_MAKE_PARSER', 4);\n\n/**\n * Error code used for all sax xml parsing errors\n */\ndefine('PEAR_PACKAGEFILE_ERROR_PARSER_ERROR', 5);\n\n/**\n * Error code used when there is no name\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_NAME', 6);\n\n/**\n * Error code when a package name is not valid\n */\ndefine('PEAR_PACKAGEFILE_ERROR_INVALID_NAME', 7);\n\n/**\n * Error code used when no summary is parsed\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_SUMMARY', 8);\n\n/**\n * Error code for summaries that are more than 1 line\n */\ndefine('PEAR_PACKAGEFILE_ERROR_MULTILINE_SUMMARY', 9);\n\n/**\n * Error code used when no description is present\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_DESCRIPTION', 10);\n\n/**\n * Error code used when no license is present\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_LICENSE', 11);\n\n/**\n * Error code used when a <version> version number is not present\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_VERSION', 12);\n\n/**\n * Error code used when a <version> version number is invalid\n */\ndefine('PEAR_PACKAGEFILE_ERROR_INVALID_VERSION', 13);\n\n/**\n * Error code when release state is missing\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_STATE', 14);\n\n/**\n * Error code when release state is invalid\n */\ndefine('PEAR_PACKAGEFILE_ERROR_INVALID_STATE', 15);\n\n/**\n * Error code when release state is missing\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_DATE', 16);\n\n/**\n * Error code when release state is invalid\n */\ndefine('PEAR_PACKAGEFILE_ERROR_INVALID_DATE', 17);\n\n/**\n * Error code when no release notes are found\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_NOTES', 18);\n\n/**\n * Error code when no maintainers are found\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_MAINTAINERS', 19);\n\n/**\n * Error code when a maintainer has no handle\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_MAINTHANDLE', 20);\n\n/**\n * Error code when a maintainer has no handle\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_MAINTROLE', 21);\n\n/**\n * Error code when a maintainer has no name\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_MAINTNAME', 22);\n\n/**\n * Error code when a maintainer has no email\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_MAINTEMAIL', 23);\n\n/**\n * Error code when a maintainer has no handle\n */\ndefine('PEAR_PACKAGEFILE_ERROR_INVALID_MAINTROLE', 24);\n\n/**\n * Error code when a dependency is not a PHP dependency, but has no name\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_DEPNAME', 25);\n\n/**\n * Error code when a dependency has no type (pkg, php, etc.)\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_DEPTYPE', 26);\n\n/**\n * Error code when a dependency has no relation (lt, ge, has, etc.)\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_DEPREL', 27);\n\n/**\n * Error code when a dependency is not a 'has' relation, but has no version\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_DEPVERSION', 28);\n\n/**\n * Error code when a dependency has an invalid relation\n */\ndefine('PEAR_PACKAGEFILE_ERROR_INVALID_DEPREL', 29);\n\n/**\n * Error code when a dependency has an invalid type\n */\ndefine('PEAR_PACKAGEFILE_ERROR_INVALID_DEPTYPE', 30);\n\n/**\n * Error code when a dependency has an invalid optional option\n */\ndefine('PEAR_PACKAGEFILE_ERROR_INVALID_DEPOPTIONAL', 31);\n\n/**\n * Error code when a dependency is a pkg dependency, and has an invalid package name\n */\ndefine('PEAR_PACKAGEFILE_ERROR_INVALID_DEPNAME', 32);\n\n/**\n * Error code when a dependency has a channel=\"foo\" attribute, and foo is not a registered channel\n */\ndefine('PEAR_PACKAGEFILE_ERROR_UNKNOWN_DEPCHANNEL', 33);\n\n/**\n * Error code when rel=\"has\" and version attribute is present.\n */\ndefine('PEAR_PACKAGEFILE_ERROR_DEPVERSION_IGNORED', 34);\n\n/**\n * Error code when type=\"php\" and dependency name is present\n */\ndefine('PEAR_PACKAGEFILE_ERROR_DEPNAME_IGNORED', 35);\n\n/**\n * Error code when a configure option has no name\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_CONFNAME', 36);\n\n/**\n * Error code when a configure option has no name\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_CONFPROMPT', 37);\n\n/**\n * Error code when a file in the filelist has an invalid role\n */\ndefine('PEAR_PACKAGEFILE_ERROR_INVALID_FILEROLE', 38);\n\n/**\n * Error code when a file in the filelist has no role\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_FILEROLE', 39);\n\n/**\n * Error code when analyzing a php source file that has parse errors\n */\ndefine('PEAR_PACKAGEFILE_ERROR_INVALID_PHPFILE', 40);\n\n/**\n * Error code when analyzing a php source file reveals a source element\n * without a package name prefix\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_PNAME_PREFIX', 41);\n\n/**\n * Error code when an unknown channel is specified\n */\ndefine('PEAR_PACKAGEFILE_ERROR_UNKNOWN_CHANNEL', 42);\n\n/**\n * Error code when no files are found in the filelist\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_FILES', 43);\n\n/**\n * Error code when a file is not valid php according to _analyzeSourceCode()\n */\ndefine('PEAR_PACKAGEFILE_ERROR_INVALID_FILE', 44);\n\n/**\n * Error code when the channel validator returns an error or warning\n */\ndefine('PEAR_PACKAGEFILE_ERROR_CHANNELVAL', 45);\n\n/**\n * Error code when a php5 package is packaged in php4 (analysis doesn't work)\n */\ndefine('PEAR_PACKAGEFILE_ERROR_PHP5', 46);\n\n/**\n * Error code when a file is listed in package.xml but does not exist\n */\ndefine('PEAR_PACKAGEFILE_ERROR_FILE_NOTFOUND', 47);\n\n/**\n * Error code when a <dep type=\"php\" rel=\"not\"... is encountered (use rel=\"ne\")\n */\ndefine('PEAR_PACKAGEFILE_PHP_NO_NOT', 48);\n\n/**\n * Error code when a package.xml contains non-ISO-8859-1 characters\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NON_ISO_CHARS', 49);\n\n/**\n * Error code when a dependency is not a 'has' relation, but has no version\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_DEPPHPVERSION', 50);\n\n/**\n * Error code when a package has no lead developer\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_LEAD', 51);\n\n/**\n * Error code when a filename begins with \".\"\n */\ndefine('PEAR_PACKAGEFILE_ERROR_INVALID_FILENAME', 52);\n/**\n * package.xml encapsulator\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_PackageFile_v1\n{\n    /**\n     * @access private\n     * @var PEAR_ErrorStack\n     * @access private\n     */\n    var $_stack;\n\n    /**\n     * A registry object, used to access the package name validation regex for non-standard channels\n     * @var PEAR_Registry\n     * @access private\n     */\n    var $_registry;\n\n    /**\n     * An object that contains a log method that matches PEAR_Common::log's signature\n     * @var object\n     * @access private\n     */\n    var $_logger;\n\n    /**\n     * Parsed package information\n     * @var array\n     * @access private\n     */\n    var $_packageInfo;\n\n    /**\n     * path to package.xml\n     * @var string\n     * @access private\n     */\n    var $_packageFile;\n\n    /**\n     * path to package .tgz or false if this is a local/extracted package.xml\n     * @var string\n     * @access private\n     */\n    var $_archiveFile;\n\n    /**\n     * @var int\n     * @access private\n     */\n    var $_isValid = 0;\n\n    /**\n     * Determines whether this packagefile was initialized only with partial package info\n     *\n     * If this package file was constructed via parsing REST, it will only contain\n     *\n     * - package name\n     * - channel name\n     * - dependencies \n     * @var boolean\n     * @access private\n     */\n    var $_incomplete = true;\n\n    /**\n     * @param bool determines whether to return a PEAR_Error object, or use the PEAR_ErrorStack\n     * @param string Name of Error Stack class to use.\n     */\n    function PEAR_PackageFile_v1()\n    {\n        $this->_stack = &new PEAR_ErrorStack('PEAR_PackageFile_v1');\n        $this->_stack->setErrorMessageTemplate($this->_getErrorMessage());\n        $this->_isValid = 0;\n    }\n\n    function installBinary($installer)\n    {\n        return false;\n    }\n\n    function isExtension($name)\n    {\n        return false;\n    }\n\n    function setConfig(&$config)\n    {\n        $this->_config = &$config;\n        $this->_registry = &$config->getRegistry();\n    }\n\n    function setRequestedGroup()\n    {\n        // placeholder\n    }\n\n    /**\n     * For saving in the registry.\n     *\n     * Set the last version that was installed\n     * @param string\n     */\n    function setLastInstalledVersion($version)\n    {\n        $this->_packageInfo['_lastversion'] = $version;\n    }\n\n    /**\n     * @return string|false\n     */\n    function getLastInstalledVersion()\n    {\n        if (isset($this->_packageInfo['_lastversion'])) {\n            return $this->_packageInfo['_lastversion'];\n        }\n        return false;\n    }\n\n    function getInstalledBinary()\n    {\n        return false;\n    }\n\n    function listPostinstallScripts()\n    {\n        return false;\n    }\n\n    function initPostinstallScripts()\n    {\n        return false;\n    }\n\n    function setLogger(&$logger)\n    {\n        if ($logger && (!is_object($logger) || !method_exists($logger, 'log'))) {\n            return PEAR::raiseError('Logger must be compatible with PEAR_Common::log');\n        }\n        $this->_logger = &$logger;\n    }\n\n    function setPackagefile($file, $archive = false)\n    {\n        $this->_packageFile = $file;\n        $this->_archiveFile = $archive ? $archive : $file;\n    }\n\n    function getPackageFile()\n    {\n        return isset($this->_packageFile) ? $this->_packageFile : false;\n    }\n\n    function getPackageType()\n    {\n        return 'php';\n    }\n\n    function getArchiveFile()\n    {\n        return $this->_archiveFile;\n    }\n\n    function packageInfo($field)\n    {\n        if (!is_string($field) || empty($field) ||\n            !isset($this->_packageInfo[$field])) {\n            return false;\n        }\n        return $this->_packageInfo[$field];\n    }\n\n    function setDirtree($path)\n    {\n        if (!isset($this->_packageInfo['dirtree'])) {\n            $this->_packageInfo['dirtree'] = array();\n        }\n        $this->_packageInfo['dirtree'][$path] = true;\n    }\n\n    function getDirtree()\n    {\n        if (isset($this->_packageInfo['dirtree']) && count($this->_packageInfo['dirtree'])) {\n            return $this->_packageInfo['dirtree'];\n        }\n        return false;\n    }\n\n    function resetDirtree()\n    {\n        unset($this->_packageInfo['dirtree']);\n    }\n\n    function fromArray($pinfo)\n    {\n        $this->_incomplete = false;\n        $this->_packageInfo = $pinfo;\n    }\n\n    function isIncomplete()\n    {\n        return $this->_incomplete;\n    }\n\n    function getChannel()\n    {\n        return 'pear.php.net';\n    }\n\n    function getUri()\n    {\n        return false;\n    }\n\n    function getTime()\n    {\n        return false;\n    }\n\n    function getExtends()\n    {\n        if (isset($this->_packageInfo['extends'])) {\n            return $this->_packageInfo['extends'];\n        }\n        return false;\n    }\n\n    /**\n     * @return array\n     */\n    function toArray()\n    {\n        if (!$this->validate(PEAR_VALIDATE_NORMAL)) {\n            return false;\n        }\n        return $this->getArray();\n    }\n\n    function getArray()\n    {\n        return $this->_packageInfo;\n    }\n\n    function getName()\n    {\n        return $this->getPackage();\n    }\n\n    function getPackage()\n    {\n        if (isset($this->_packageInfo['package'])) {\n            return $this->_packageInfo['package'];\n        }\n        return false;\n    }\n\n    /**\n     * WARNING - don't use this unless you know what you are doing\n     */\n    function setRawPackage($package)\n    {\n        $this->_packageInfo['package'] = $package;\n    }\n\n    function setPackage($package)\n    {\n        $this->_packageInfo['package'] = $package;\n        $this->_isValid = false;\n    }\n\n    function getVersion()\n    {\n        if (isset($this->_packageInfo['version'])) {\n            return $this->_packageInfo['version'];\n        }\n        return false;\n    }\n\n    function setVersion($version)\n    {\n        $this->_packageInfo['version'] = $version;\n        $this->_isValid = false;\n    }\n\n    function clearMaintainers()\n    {\n        unset($this->_packageInfo['maintainers']);\n    }\n\n    function getMaintainers()\n    {\n        if (isset($this->_packageInfo['maintainers'])) {\n            return $this->_packageInfo['maintainers'];\n        }\n        return false;\n    }\n\n    /**\n     * Adds a new maintainer - no checking of duplicates is performed, use\n     * updatemaintainer for that purpose.\n     */\n    function addMaintainer($role, $handle, $name, $email)\n    {\n        $this->_packageInfo['maintainers'][] =\n            array('handle' => $handle, 'role' => $role, 'email' => $email, 'name' => $name);\n        $this->_isValid = false;\n    }\n\n    function updateMaintainer($role, $handle, $name, $email)\n    {\n        $found = false;\n        if (!isset($this->_packageInfo['maintainers']) ||\n              !is_array($this->_packageInfo['maintainers'])) {\n            return $this->addMaintainer($role, $handle, $name, $email);\n        }\n        foreach ($this->_packageInfo['maintainers'] as $i => $maintainer) {\n            if ($maintainer['handle'] == $handle) {\n                $found = $i;\n                break;\n            }\n        }\n        if ($found !== false) {\n            unset($this->_packageInfo['maintainers'][$found]);\n            $this->_packageInfo['maintainers'] =\n                array_values($this->_packageInfo['maintainers']);\n        }\n        $this->addMaintainer($role, $handle, $name, $email);\n    }\n\n    function deleteMaintainer($handle)\n    {\n        $found = false;\n        foreach ($this->_packageInfo['maintainers'] as $i => $maintainer) {\n            if ($maintainer['handle'] == $handle) {\n                $found = $i;\n                break;\n            }\n        }\n        if ($found !== false) {\n            unset($this->_packageInfo['maintainers'][$found]);\n            $this->_packageInfo['maintainers'] =\n                array_values($this->_packageInfo['maintainers']);\n            return true;\n        }\n        return false;\n    }\n\n    function getState()\n    {\n        if (isset($this->_packageInfo['release_state'])) {\n            return $this->_packageInfo['release_state'];\n        }\n        return false;\n    }\n\n    function setRawState($state)\n    {\n        $this->_packageInfo['release_state'] = $state;\n    }\n\n    function setState($state)\n    {\n        $this->_packageInfo['release_state'] = $state;\n        $this->_isValid = false;\n    }\n\n    function getDate()\n    {\n        if (isset($this->_packageInfo['release_date'])) {\n            return $this->_packageInfo['release_date'];\n        }\n        return false;\n    }\n\n    function setDate($date)\n    {\n        $this->_packageInfo['release_date'] = $date;\n        $this->_isValid = false;\n    }\n\n    function getLicense()\n    {\n        if (isset($this->_packageInfo['release_license'])) {\n            return $this->_packageInfo['release_license'];\n        }\n        return false;\n    }\n\n    function setLicense($date)\n    {\n        $this->_packageInfo['release_license'] = $date;\n        $this->_isValid = false;\n    }\n\n    function getSummary()\n    {\n        if (isset($this->_packageInfo['summary'])) {\n            return $this->_packageInfo['summary'];\n        }\n        return false;\n    }\n\n    function setSummary($summary)\n    {\n        $this->_packageInfo['summary'] = $summary;\n        $this->_isValid = false;\n    }\n\n    function getDescription()\n    {\n        if (isset($this->_packageInfo['description'])) {\n            return $this->_packageInfo['description'];\n        }\n        return false;\n    }\n\n    function setDescription($desc)\n    {\n        $this->_packageInfo['description'] = $desc;\n        $this->_isValid = false;\n    }\n\n    function getNotes()\n    {\n        if (isset($this->_packageInfo['release_notes'])) {\n            return $this->_packageInfo['release_notes'];\n        }\n        return false;\n    }\n\n    function setNotes($notes)\n    {\n        $this->_packageInfo['release_notes'] = $notes;\n        $this->_isValid = false;\n    }\n\n    function getDeps()\n    {\n        if (isset($this->_packageInfo['release_deps'])) {\n            return $this->_packageInfo['release_deps'];\n        }\n        return false;\n    }\n\n    /**\n     * Reset dependencies prior to adding new ones\n     */\n    function clearDeps()\n    {\n        unset($this->_packageInfo['release_deps']);\n    }\n\n    function addPhpDep($version, $rel)\n    {\n        $this->_isValid = false;\n        $this->_packageInfo['release_deps'][] =\n            array('type' => 'php',\n                  'rel' => $rel,\n                  'version' => $version);\n    }\n\n    function addPackageDep($name, $version, $rel, $optional = 'no')\n    {\n        $this->_isValid = false;\n        $dep =\n            array('type' => 'pkg',\n                  'name' => $name,\n                  'rel' => $rel,\n                  'optional' => $optional);\n        if ($rel != 'has' && $rel != 'not') {\n            $dep['version'] = $version;\n        }\n        $this->_packageInfo['release_deps'][] = $dep;\n    }\n\n    function addExtensionDep($name, $version, $rel, $optional = 'no')\n    {\n        $this->_isValid = false;\n        $this->_packageInfo['release_deps'][] =\n            array('type' => 'ext',\n                  'name' => $name,\n                  'rel' => $rel,\n                  'version' => $version,\n                  'optional' => $optional);\n    }\n\n    /**\n     * WARNING - do not use this function directly unless you know what you're doing\n     */\n    function setDeps($deps)\n    {\n        $this->_packageInfo['release_deps'] = $deps;\n    }\n\n    function hasDeps()\n    {\n        return isset($this->_packageInfo['release_deps']) &&\n            count($this->_packageInfo['release_deps']);\n    }\n\n    function getDependencyGroup($group)\n    {\n        return false;\n    }\n\n    function isCompatible($pf)\n    {\n        return false;\n    }\n\n    function isSubpackageOf($p)\n    {\n        return $p->isSubpackage($this);\n    }\n\n    function isSubpackage($p)\n    {\n        return false;\n    }\n\n    function dependsOn($package, $channel)\n    {\n        if (strtolower($channel) != 'pear.php.net') {\n            return false;\n        }\n        if (!($deps = $this->getDeps())) {\n            return false;\n        }\n        foreach ($deps as $dep) {\n            if ($dep['type'] != 'pkg') {\n                continue;\n            }\n            if (strtolower($dep['name']) == strtolower($package)) {\n                return true;\n            }\n        }\n        return false;\n    }\n\n    function getConfigureOptions()\n    {\n        if (isset($this->_packageInfo['configure_options'])) {\n            return $this->_packageInfo['configure_options'];\n        }\n        return false;\n    }\n\n    function hasConfigureOptions()\n    {\n        return isset($this->_packageInfo['configure_options']) &&\n            count($this->_packageInfo['configure_options']);\n    }\n\n    function addConfigureOption($name, $prompt, $default = false)\n    {\n        $o = array('name' => $name, 'prompt' => $prompt);\n        if ($default !== false) {\n            $o['default'] = $default;\n        }\n        if (!isset($this->_packageInfo['configure_options'])) {\n            $this->_packageInfo['configure_options'] = array();\n        }\n        $this->_packageInfo['configure_options'][] = $o;\n    }\n\n    function clearConfigureOptions()\n    {\n        unset($this->_packageInfo['configure_options']);\n    }\n\n    function getProvides()\n    {\n        if (isset($this->_packageInfo['provides'])) {\n            return $this->_packageInfo['provides'];\n        }\n        return false;\n    }\n\n    function getProvidesExtension()\n    {\n        return false;\n    }\n\n    function addFile($dir, $file, $attrs)\n    {\n        $dir = preg_replace(array('!\\\\\\\\+!', '!/+!'), array('/', '/'), $dir);\n        if ($dir == '/' || $dir == '') {\n            $dir = '';\n        } else {\n            $dir .= '/';\n        }\n        $file = $dir . $file;\n        $file = preg_replace('![\\\\/]+!', '/', $file);\n        $this->_packageInfo['filelist'][$file] = $attrs;\n    }\n\n    function getInstallationFilelist()\n    {\n        return $this->getFilelist();\n    }\n\n    function getFilelist()\n    {\n        if (isset($this->_packageInfo['filelist'])) {\n            return $this->_packageInfo['filelist'];\n        }\n        return false;\n    }\n\n    function setFileAttribute($file, $attr, $value)\n    {\n        $this->_packageInfo['filelist'][$file][$attr] = $value;\n    }\n\n    function resetFilelist()\n    {\n        $this->_packageInfo['filelist'] = array();\n    }\n\n    function setInstalledAs($file, $path)\n    {\n        if ($path) {\n            return $this->_packageInfo['filelist'][$file]['installed_as'] = $path;\n        }\n        unset($this->_packageInfo['filelist'][$file]['installed_as']);\n    }\n\n    function installedFile($file, $atts)\n    {\n        if (isset($this->_packageInfo['filelist'][$file])) {\n            $this->_packageInfo['filelist'][$file] =\n                array_merge($this->_packageInfo['filelist'][$file], $atts);\n        } else {\n            $this->_packageInfo['filelist'][$file] = $atts;\n        }\n    }\n\n    function getChangelog()\n    {\n        if (isset($this->_packageInfo['changelog'])) {\n            return $this->_packageInfo['changelog'];\n        }\n        return false;\n    }\n\n    function getPackagexmlVersion()\n    {\n        return '1.0';\n    }\n\n    /**\n     * Wrapper to {@link PEAR_ErrorStack::getErrors()}\n     * @param boolean determines whether to purge the error stack after retrieving\n     * @return array\n     */\n    function getValidationWarnings($purge = true)\n    {\n        return $this->_stack->getErrors($purge);\n    }\n\n    // }}}\n    /**\n     * Validation error.  Also marks the object contents as invalid\n     * @param error code\n     * @param array error information\n     * @access private\n     */\n    function _validateError($code, $params = array())\n    {\n        $this->_stack->push($code, 'error', $params, false, false, debug_backtrace());\n        $this->_isValid = false;\n    }\n\n    /**\n     * Validation warning.  Does not mark the object contents invalid.\n     * @param error code\n     * @param array error information\n     * @access private\n     */\n    function _validateWarning($code, $params = array())\n    {\n        $this->_stack->push($code, 'warning', $params, false, false, debug_backtrace());\n    }\n\n    /**\n     * @param integer error code\n     * @access protected\n     */\n    function _getErrorMessage()\n    {\n        return array(\n                PEAR_PACKAGEFILE_ERROR_NO_NAME =>\n                    'Missing Package Name',\n                PEAR_PACKAGEFILE_ERROR_NO_SUMMARY =>\n                    'No summary found',\n                PEAR_PACKAGEFILE_ERROR_MULTILINE_SUMMARY =>\n                    'Summary should be on one line',\n                PEAR_PACKAGEFILE_ERROR_NO_DESCRIPTION =>\n                    'Missing description',\n                PEAR_PACKAGEFILE_ERROR_NO_LICENSE =>\n                    'Missing license',\n                PEAR_PACKAGEFILE_ERROR_NO_VERSION =>\n                    'No release version found',\n                PEAR_PACKAGEFILE_ERROR_NO_STATE =>\n                    'No release state found',\n                PEAR_PACKAGEFILE_ERROR_NO_DATE =>\n                    'No release date found',\n                PEAR_PACKAGEFILE_ERROR_NO_NOTES =>\n                    'No release notes found',\n                PEAR_PACKAGEFILE_ERROR_NO_LEAD =>\n                    'Package must have at least one lead maintainer',\n                PEAR_PACKAGEFILE_ERROR_NO_MAINTAINERS =>\n                    'No maintainers found, at least one must be defined',\n                PEAR_PACKAGEFILE_ERROR_NO_MAINTHANDLE =>\n                    'Maintainer %index% has no handle (user ID at channel server)',\n                PEAR_PACKAGEFILE_ERROR_NO_MAINTROLE =>\n                    'Maintainer %index% has no role',\n                PEAR_PACKAGEFILE_ERROR_NO_MAINTNAME =>\n                    'Maintainer %index% has no name',\n                PEAR_PACKAGEFILE_ERROR_NO_MAINTEMAIL =>\n                    'Maintainer %index% has no email',\n                PEAR_PACKAGEFILE_ERROR_NO_DEPNAME =>\n                    'Dependency %index% is not a php dependency, and has no name',\n                PEAR_PACKAGEFILE_ERROR_NO_DEPREL =>\n                    'Dependency %index% has no relation (rel)',\n                PEAR_PACKAGEFILE_ERROR_NO_DEPTYPE =>\n                    'Dependency %index% has no type',\n                PEAR_PACKAGEFILE_ERROR_DEPNAME_IGNORED =>\n                    'PHP Dependency %index% has a name attribute of \"%name%\" which will be' .\n                        ' ignored!',\n                PEAR_PACKAGEFILE_ERROR_NO_DEPVERSION =>\n                    'Dependency %index% is not a rel=\"has\" or rel=\"not\" dependency, ' .\n                        'and has no version',\n                PEAR_PACKAGEFILE_ERROR_NO_DEPPHPVERSION =>\n                    'Dependency %index% is a type=\"php\" dependency, ' .\n                        'and has no version',\n                PEAR_PACKAGEFILE_ERROR_DEPVERSION_IGNORED =>\n                    'Dependency %index% is a rel=\"%rel%\" dependency, versioning is ignored',\n                PEAR_PACKAGEFILE_ERROR_INVALID_DEPOPTIONAL =>\n                    'Dependency %index% has invalid optional value \"%opt%\", should be yes or no',\n                PEAR_PACKAGEFILE_PHP_NO_NOT =>\n                    'Dependency %index%: php dependencies cannot use \"not\" rel, use \"ne\"' .\n                        ' to exclude specific versions',\n                PEAR_PACKAGEFILE_ERROR_NO_CONFNAME =>\n                    'Configure Option %index% has no name',\n                PEAR_PACKAGEFILE_ERROR_NO_CONFPROMPT =>\n                    'Configure Option %index% has no prompt',\n                PEAR_PACKAGEFILE_ERROR_NO_FILES =>\n                    'No files in <filelist> section of package.xml',\n                PEAR_PACKAGEFILE_ERROR_NO_FILEROLE =>\n                    'File \"%file%\" has no role, expecting one of \"%roles%\"',\n                PEAR_PACKAGEFILE_ERROR_INVALID_FILEROLE =>\n                    'File \"%file%\" has invalid role \"%role%\", expecting one of \"%roles%\"',\n                PEAR_PACKAGEFILE_ERROR_INVALID_FILENAME =>\n                    'File \"%file%\" cannot start with \".\", cannot package or install',\n                PEAR_PACKAGEFILE_ERROR_INVALID_PHPFILE =>\n                    'Parser error: invalid PHP found in file \"%file%\"',\n                PEAR_PACKAGEFILE_ERROR_NO_PNAME_PREFIX =>\n                    'in %file%: %type% \"%name%\" not prefixed with package name \"%package%\"',\n                PEAR_PACKAGEFILE_ERROR_INVALID_FILE =>\n                    'Parser error: invalid PHP file \"%file%\"',\n                PEAR_PACKAGEFILE_ERROR_CHANNELVAL =>\n                    'Channel validator error: field \"%field%\" - %reason%',\n                PEAR_PACKAGEFILE_ERROR_PHP5 =>\n                    'Error, PHP5 token encountered in %file%, analysis should be in PHP5',\n                PEAR_PACKAGEFILE_ERROR_FILE_NOTFOUND =>\n                    'File \"%file%\" in package.xml does not exist',\n                PEAR_PACKAGEFILE_ERROR_NON_ISO_CHARS =>\n                    'Package.xml contains non-ISO-8859-1 characters, and may not validate',\n            );\n    }\n\n    /**\n     * Validate XML package definition file.\n     *\n     * @access public\n     * @return boolean\n     */\n    function validate($state = PEAR_VALIDATE_NORMAL, $nofilechecking = false)\n    {\n        if (($this->_isValid & $state) == $state) {\n            return true;\n        }\n        $this->_isValid = true;\n        $info = $this->_packageInfo;\n        if (empty($info['package'])) {\n            $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_NAME);\n            $this->_packageName = $pn = 'unknown';\n        } else {\n            $this->_packageName = $pn = $info['package'];\n        }\n\n        if (empty($info['summary'])) {\n            $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_SUMMARY);\n        } elseif (strpos(trim($info['summary']), \"\\n\") !== false) {\n            $this->_validateWarning(PEAR_PACKAGEFILE_ERROR_MULTILINE_SUMMARY,\n                array('summary' => $info['summary']));\n        }\n        if (empty($info['description'])) {\n            $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_DESCRIPTION);\n        }\n        if (empty($info['release_license'])) {\n            $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_LICENSE);\n        }\n        if (empty($info['version'])) {\n            $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_VERSION);\n        }\n        if (empty($info['release_state'])) {\n            $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_STATE);\n        }\n        if (empty($info['release_date'])) {\n            $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_DATE);\n        }\n        if (empty($info['release_notes'])) {\n            $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_NOTES);\n        }\n        if (empty($info['maintainers'])) {\n            $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_MAINTAINERS);\n        } else {\n            $haslead = false;\n            $i = 1;\n            foreach ($info['maintainers'] as $m) {\n                if (empty($m['handle'])) {\n                    $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_MAINTHANDLE,\n                        array('index' => $i));\n                }\n                if (empty($m['role'])) {\n                    $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_MAINTROLE,\n                        array('index' => $i, 'roles' => PEAR_Common::getUserRoles()));\n                } elseif ($m['role'] == 'lead') {\n                    $haslead = true;\n                }\n                if (empty($m['name'])) {\n                    $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_MAINTNAME,\n                        array('index' => $i));\n                }\n                if (empty($m['email'])) {\n                    $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_MAINTEMAIL,\n                        array('index' => $i));\n                }\n                $i++;\n            }\n            if (!$haslead) {\n                $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_LEAD);\n            }\n        }\n        if (!empty($info['release_deps'])) {\n            $i = 1;\n            foreach ($info['release_deps'] as $d) {\n                if (!isset($d['type']) || empty($d['type'])) {\n                    $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_DEPTYPE,\n                        array('index' => $i, 'types' => PEAR_Common::getDependencyTypes()));\n                    continue;\n                }\n                if (!isset($d['rel']) || empty($d['rel'])) {\n                    $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_DEPREL,\n                        array('index' => $i, 'rels' => PEAR_Common::getDependencyRelations()));\n                    continue;\n                }\n                if (!empty($d['optional'])) {\n                    if (!in_array($d['optional'], array('yes', 'no'))) {\n                        $this->_validateError(PEAR_PACKAGEFILE_ERROR_INVALID_DEPOPTIONAL,\n                            array('index' => $i, 'opt' => $d['optional']));\n                    }\n                }\n                if ($d['rel'] != 'has' && $d['rel'] != 'not' && empty($d['version'])) {\n                    $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_DEPVERSION,\n                        array('index' => $i));\n                } elseif (($d['rel'] == 'has' || $d['rel'] == 'not') && !empty($d['version'])) {\n                    $this->_validateWarning(PEAR_PACKAGEFILE_ERROR_DEPVERSION_IGNORED,\n                        array('index' => $i, 'rel' => $d['rel']));\n                }\n                if ($d['type'] == 'php' && !empty($d['name'])) {\n                    $this->_validateWarning(PEAR_PACKAGEFILE_ERROR_DEPNAME_IGNORED,\n                        array('index' => $i, 'name' => $d['name']));\n                } elseif ($d['type'] != 'php' && empty($d['name'])) {\n                    $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_DEPNAME,\n                        array('index' => $i));\n                }\n                if ($d['type'] == 'php' && empty($d['version'])) {\n                    $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_DEPPHPVERSION,\n                        array('index' => $i));\n                }\n                if (($d['rel'] == 'not') && ($d['type'] == 'php')) {\n                    $this->_validateError(PEAR_PACKAGEFILE_PHP_NO_NOT,\n                        array('index' => $i));\n                }\n                $i++;\n            }\n        }\n        if (!empty($info['configure_options'])) {\n            $i = 1;\n            foreach ($info['configure_options'] as $c) {\n                if (empty($c['name'])) {\n                    $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_CONFNAME,\n                        array('index' => $i));\n                }\n                if (empty($c['prompt'])) {\n                    $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_CONFPROMPT,\n                        array('index' => $i));\n                }\n                $i++;\n            }\n        }\n        if (empty($info['filelist'])) {\n            $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_FILES);\n            $errors[] = 'no files';\n        } else {\n            foreach ($info['filelist'] as $file => $fa) {\n                if (empty($fa['role'])) {\n                    $this->_validateError(PEAR_PACKAGEFILE_ERROR_NO_FILEROLE,\n                        array('file' => $file, 'roles' => PEAR_Common::getFileRoles()));\n                    continue;\n                } elseif (!in_array($fa['role'], PEAR_Common::getFileRoles())) {\n                    $this->_validateError(PEAR_PACKAGEFILE_ERROR_INVALID_FILEROLE,\n                        array('file' => $file, 'role' => $fa['role'], 'roles' => PEAR_Common::getFileRoles()));\n                }\n                if (preg_match('~/\\.\\.?(/|\\\\z)|^\\.\\.?/~', str_replace('\\\\', '/', $file))) {\n                    // file contains .. parent directory or . cur directory references\n                    $this->_validateError(PEAR_PACKAGEFILE_ERROR_INVALID_FILENAME,\n                        array('file' => $file));\n                }\n                if (isset($fa['install-as']) &&\n                      preg_match('~/\\.\\.?(/|\\\\z)|^\\.\\.?/~', \n                                 str_replace('\\\\', '/', $fa['install-as']))) {\n                    // install-as contains .. parent directory or . cur directory references\n                    $this->_validateError(PEAR_PACKAGEFILE_ERROR_INVALID_FILENAME,\n                        array('file' => $file . ' [installed as ' . $fa['install-as'] . ']'));\n                }\n                if (isset($fa['baseinstalldir']) &&\n                      preg_match('~/\\.\\.?(/|\\\\z)|^\\.\\.?/~', \n                                 str_replace('\\\\', '/', $fa['baseinstalldir']))) {\n                    // install-as contains .. parent directory or . cur directory references\n                    $this->_validateError(PEAR_PACKAGEFILE_ERROR_INVALID_FILENAME,\n                        array('file' => $file . ' [baseinstalldir ' . $fa['baseinstalldir'] . ']'));\n                }\n            }\n        }\n        if (isset($this->_registry) && $this->_isValid) {\n            $chan = $this->_registry->getChannel('pear.php.net');\n            if (PEAR::isError($chan)) {\n                $this->_validateError(PEAR_PACKAGEFILE_ERROR_CHANNELVAL, $chan->getMessage());\n                return $this->_isValid = 0;\n            }\n            $validator = $chan->getValidationObject();\n            $validator->setPackageFile($this);\n            $validator->validate($state);\n            $failures = $validator->getFailures();\n            foreach ($failures['errors'] as $error) {\n                $this->_validateError(PEAR_PACKAGEFILE_ERROR_CHANNELVAL, $error);\n            }\n            foreach ($failures['warnings'] as $warning) {\n                $this->_validateWarning(PEAR_PACKAGEFILE_ERROR_CHANNELVAL, $warning);\n            }\n        }\n        if ($this->_isValid && $state == PEAR_VALIDATE_PACKAGING && !$nofilechecking) {\n            if ($this->_analyzePhpFiles()) {\n                $this->_isValid = true;\n            }\n        }\n        if ($this->_isValid) {\n            return $this->_isValid = $state;\n        }\n        return $this->_isValid = 0;\n    }\n\n    function _analyzePhpFiles()\n    {\n        if (!$this->_isValid) {\n            return false;\n        }\n        if (!isset($this->_packageFile)) {\n            return false;\n        }\n        $dir_prefix = dirname($this->_packageFile);\n        $common = new PEAR_Common;\n        $log = isset($this->_logger) ? array(&$this->_logger, 'log') :\n            array($common, 'log');\n        $info = $this->getFilelist();\n        foreach ($info as $file => $fa) {\n            if (!file_exists($dir_prefix . DIRECTORY_SEPARATOR . $file)) {\n                $this->_validateError(PEAR_PACKAGEFILE_ERROR_FILE_NOTFOUND,\n                    array('file' => realpath($dir_prefix) . DIRECTORY_SEPARATOR . $file));\n                continue;\n            }\n            if ($fa['role'] == 'php' && $dir_prefix) {\n                call_user_func_array($log, array(1, \"Analyzing $file\"));\n                $srcinfo = $this->_analyzeSourceCode($dir_prefix . DIRECTORY_SEPARATOR . $file);\n                if ($srcinfo) {\n                    $this->_buildProvidesArray($srcinfo);\n                }\n            }\n        }\n        $this->_packageName = $pn = $this->getPackage();\n        $pnl = strlen($pn);\n        if (isset($this->_packageInfo['provides'])) {\n            foreach ((array) $this->_packageInfo['provides'] as $key => $what) {\n                if (isset($what['explicit'])) {\n                    // skip conformance checks if the provides entry is\n                    // specified in the package.xml file\n                    continue;\n                }\n                extract($what);\n                if ($type == 'class') {\n                    if (!strncasecmp($name, $pn, $pnl)) {\n                        continue;\n                    }\n                    $this->_validateWarning(PEAR_PACKAGEFILE_ERROR_NO_PNAME_PREFIX,\n                        array('file' => $file, 'type' => $type, 'name' => $name, 'package' => $pn));\n                } elseif ($type == 'function') {\n                    if (strstr($name, '::') || !strncasecmp($name, $pn, $pnl)) {\n                        continue;\n                    }\n                    $this->_validateWarning(PEAR_PACKAGEFILE_ERROR_NO_PNAME_PREFIX,\n                        array('file' => $file, 'type' => $type, 'name' => $name, 'package' => $pn));\n                }\n            }\n        }\n        return $this->_isValid;\n    }\n\n    /**\n     * Get the default xml generator object\n     *\n     * @return PEAR_PackageFile_Generator_v1\n     */\n    function &getDefaultGenerator()\n    {\n        if (!class_exists('PEAR_PackageFile_Generator_v1')) {\n            require_once 'PEAR/PackageFile/Generator/v1.php';\n        }\n        $a = &new PEAR_PackageFile_Generator_v1($this);\n        return $a;\n    }\n\n    /**\n     * Get the contents of a file listed within the package.xml\n     * @param string\n     * @return string\n     */\n    function getFileContents($file)\n    {\n        if ($this->_archiveFile == $this->_packageFile) { // unpacked\n            $dir = dirname($this->_packageFile);\n            $file = $dir . DIRECTORY_SEPARATOR . $file;\n            $file = str_replace(array('/', '\\\\'),\n                array(DIRECTORY_SEPARATOR, DIRECTORY_SEPARATOR), $file);\n            if (file_exists($file) && is_readable($file)) {\n                return implode('', file($file));\n            }\n        } else { // tgz\n            if (!class_exists('Archive_Tar')) {\n                require_once 'Archive/Tar.php';\n            }\n            $tar = &new Archive_Tar($this->_archiveFile);\n            $tar->pushErrorHandling(PEAR_ERROR_RETURN);\n            if ($file != 'package.xml' && $file != 'package2.xml') {\n                $file = $this->getPackage() . '-' . $this->getVersion() . '/' . $file;\n            }\n            $file = $tar->extractInString($file);\n            $tar->popErrorHandling();\n            if (PEAR::isError($file)) {\n                return PEAR::raiseError(\"Cannot locate file '$file' in archive\");\n            }\n            return $file;\n        }\n    }\n\n    // {{{ analyzeSourceCode()\n    /**\n     * Analyze the source code of the given PHP file\n     *\n     * @param  string Filename of the PHP file\n     * @return mixed\n     * @access private\n     */\n    function _analyzeSourceCode($file)\n    {\n        if (!function_exists(\"token_get_all\")) {\n            return false;\n        }\n        if (!defined('T_DOC_COMMENT')) {\n            define('T_DOC_COMMENT', T_COMMENT);\n        }\n        if (!defined('T_INTERFACE')) {\n            define('T_INTERFACE', -1);\n        }\n        if (!defined('T_IMPLEMENTS')) {\n            define('T_IMPLEMENTS', -1);\n        }\n        if (!$fp = @fopen($file, \"r\")) {\n            return false;\n        }\n        fclose($fp);\n        $contents = file_get_contents($file);\n        $tokens = token_get_all($contents);\n/*\n        for ($i = 0; $i < sizeof($tokens); $i++) {\n            @list($token, $data) = $tokens[$i];\n            if (is_string($token)) {\n                var_dump($token);\n            } else {\n                print token_name($token) . ' ';\n                var_dump(rtrim($data));\n            }\n        }\n*/\n        $look_for = 0;\n        $paren_level = 0;\n        $bracket_level = 0;\n        $brace_level = 0;\n        $lastphpdoc = '';\n        $current_class = '';\n        $current_interface = '';\n        $current_class_level = -1;\n        $current_function = '';\n        $current_function_level = -1;\n        $declared_classes = array();\n        $declared_interfaces = array();\n        $declared_functions = array();\n        $declared_methods = array();\n        $used_classes = array();\n        $used_functions = array();\n        $extends = array();\n        $implements = array();\n        $nodeps = array();\n        $inquote = false;\n        $interface = false;\n        for ($i = 0; $i < sizeof($tokens); $i++) {\n            if (is_array($tokens[$i])) {\n                list($token, $data) = $tokens[$i];\n            } else {\n                $token = $tokens[$i];\n                $data = '';\n            }\n            if ($inquote) {\n                if ($token != '\"' && $token != T_END_HEREDOC) {\n                    continue;\n                } else {\n                    $inquote = false;\n                    continue;\n                }\n            }\n            switch ($token) {\n                case T_WHITESPACE :\n                    continue;\n                case ';':\n                    if ($interface) {\n                        $current_function = '';\n                        $current_function_level = -1;\n                    }\n                    break;\n                case '\"':\n                case T_START_HEREDOC:\n                    $inquote = true;\n                    break;\n                case T_CURLY_OPEN:\n                case T_DOLLAR_OPEN_CURLY_BRACES:\n                case '{': $brace_level++; continue 2;\n                case '}':\n                    $brace_level--;\n                    if ($current_class_level == $brace_level) {\n                        $current_class = '';\n                        $current_class_level = -1;\n                    }\n                    if ($current_function_level == $brace_level) {\n                        $current_function = '';\n                        $current_function_level = -1;\n                    }\n                    continue 2;\n                case '[': $bracket_level++; continue 2;\n                case ']': $bracket_level--; continue 2;\n                case '(': $paren_level++;   continue 2;\n                case ')': $paren_level--;   continue 2;\n                case T_INTERFACE:\n                    $interface = true;\n                case T_CLASS:\n                    if (($current_class_level != -1) || ($current_function_level != -1)) {\n                        $this->_validateError(PEAR_PACKAGEFILE_ERROR_INVALID_PHPFILE,\n                            array('file' => $file));\n                        return false;\n                    }\n                case T_FUNCTION:\n                case T_NEW:\n                case T_EXTENDS:\n                case T_IMPLEMENTS:\n                    $look_for = $token;\n                    continue 2;\n                case T_STRING:\n                    if (version_compare(zend_version(), '2.0', '<')) {\n                        if (in_array(strtolower($data),\n                            array('public', 'private', 'protected', 'abstract',\n                                  'interface', 'implements', 'throw') \n                                 )) {\n                            $this->_validateWarning(PEAR_PACKAGEFILE_ERROR_PHP5,\n                                array($file));\n                        }\n                    }\n                    if ($look_for == T_CLASS) {\n                        $current_class = $data;\n                        $current_class_level = $brace_level;\n                        $declared_classes[] = $current_class;\n                    } elseif ($look_for == T_INTERFACE) {\n                        $current_interface = $data;\n                        $current_class_level = $brace_level;\n                        $declared_interfaces[] = $current_interface;\n                    } elseif ($look_for == T_IMPLEMENTS) {\n                        $implements[$current_class] = $data;\n                    } elseif ($look_for == T_EXTENDS) {\n                        $extends[$current_class] = $data;\n                    } elseif ($look_for == T_FUNCTION) {\n                        if ($current_class) {\n                            $current_function = \"$current_class::$data\";\n                            $declared_methods[$current_class][] = $data;\n                        } elseif ($current_interface) {\n                            $current_function = \"$current_interface::$data\";\n                            $declared_methods[$current_interface][] = $data;\n                        } else {\n                            $current_function = $data;\n                            $declared_functions[] = $current_function;\n                        }\n                        $current_function_level = $brace_level;\n                        $m = array();\n                    } elseif ($look_for == T_NEW) {\n                        $used_classes[$data] = true;\n                    }\n                    $look_for = 0;\n                    continue 2;\n                case T_VARIABLE:\n                    $look_for = 0;\n                    continue 2;\n                case T_DOC_COMMENT:\n                case T_COMMENT:\n                    if (preg_match('!^/\\*\\*\\s!', $data)) {\n                        $lastphpdoc = $data;\n                        if (preg_match_all('/@nodep\\s+(\\S+)/', $lastphpdoc, $m)) {\n                            $nodeps = array_merge($nodeps, $m[1]);\n                        }\n                    }\n                    continue 2;\n                case T_DOUBLE_COLON:\n                    if (!($tokens[$i - 1][0] == T_WHITESPACE || $tokens[$i - 1][0] == T_STRING)) {\n                        $this->_validateError(PEAR_PACKAGEFILE_ERROR_INVALID_PHPFILE,\n                            array('file' => $file));\n                        return false;\n                    }\n                    $class = $tokens[$i - 1][1];\n                    if (strtolower($class) != 'parent') {\n                        $used_classes[$class] = true;\n                    }\n                    continue 2;\n            }\n        }\n        return array(\n            \"source_file\" => $file,\n            \"declared_classes\" => $declared_classes,\n            \"declared_interfaces\" => $declared_interfaces,\n            \"declared_methods\" => $declared_methods,\n            \"declared_functions\" => $declared_functions,\n            \"used_classes\" => array_diff(array_keys($used_classes), $nodeps),\n            \"inheritance\" => $extends,\n            \"implements\" => $implements,\n            );\n    }\n\n    /**\n     * Build a \"provides\" array from data returned by\n     * analyzeSourceCode().  The format of the built array is like\n     * this:\n     *\n     *  array(\n     *    'class;MyClass' => 'array('type' => 'class', 'name' => 'MyClass'),\n     *    ...\n     *  )\n     *\n     *\n     * @param array $srcinfo array with information about a source file\n     * as returned by the analyzeSourceCode() method.\n     *\n     * @return void\n     *\n     * @access private\n     *\n     */\n    function _buildProvidesArray($srcinfo)\n    {\n        if (!$this->_isValid) {\n            return false;\n        }\n        $file = basename($srcinfo['source_file']);\n        $pn = $this->getPackage();\n        $pnl = strlen($pn);\n        foreach ($srcinfo['declared_classes'] as $class) {\n            $key = \"class;$class\";\n            if (isset($this->_packageInfo['provides'][$key])) {\n                continue;\n            }\n            $this->_packageInfo['provides'][$key] =\n                array('file'=> $file, 'type' => 'class', 'name' => $class);\n            if (isset($srcinfo['inheritance'][$class])) {\n                $this->_packageInfo['provides'][$key]['extends'] =\n                    $srcinfo['inheritance'][$class];\n            }\n        }\n        foreach ($srcinfo['declared_methods'] as $class => $methods) {\n            foreach ($methods as $method) {\n                $function = \"$class::$method\";\n                $key = \"function;$function\";\n                if ($method{0} == '_' || !strcasecmp($method, $class) ||\n                    isset($this->_packageInfo['provides'][$key])) {\n                    continue;\n                }\n                $this->_packageInfo['provides'][$key] =\n                    array('file'=> $file, 'type' => 'function', 'name' => $function);\n            }\n        }\n\n        foreach ($srcinfo['declared_functions'] as $function) {\n            $key = \"function;$function\";\n            if ($function{0} == '_' || isset($this->_packageInfo['provides'][$key])) {\n                continue;\n            }\n            if (!strstr($function, '::') && strncasecmp($function, $pn, $pnl)) {\n                $warnings[] = \"in1 \" . $file . \": function \\\"$function\\\" not prefixed with package name \\\"$pn\\\"\";\n            }\n            $this->_packageInfo['provides'][$key] =\n                array('file'=> $file, 'type' => 'function', 'name' => $function);\n        }\n    }\n\n    // }}}\n}\n?>\n"
  },
  {
    "path": "newscoop/include/PEAR/PackageFile/v2/Validator.php",
    "content": "<?php\n/**\n * PEAR_PackageFile_v2, package.xml version 2.0, read/write version\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Validator.php 277885 2009-03-27 19:29:31Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a8\n */\n/**\n * Private validation class used by PEAR_PackageFile_v2 - do not use directly, its\n * sole purpose is to split up the PEAR/PackageFile/v2.php file to make it smaller\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a8\n * @access private\n */\nclass PEAR_PackageFile_v2_Validator\n{\n    /**\n     * @var array\n     */\n    var $_packageInfo;\n    /**\n     * @var PEAR_PackageFile_v2\n     */\n    var $_pf;\n    /**\n     * @var PEAR_ErrorStack\n     */\n    var $_stack;\n    /**\n     * @var int\n     */\n    var $_isValid = 0;\n    /**\n     * @var int\n     */\n    var $_filesValid = 0;\n    /**\n     * @var int\n     */\n    var $_curState = 0;\n    /**\n     * @param PEAR_PackageFile_v2\n     * @param int\n     */\n    function validate(&$pf, $state = PEAR_VALIDATE_NORMAL)\n    {\n        $this->_pf = &$pf;\n        $this->_curState = $state;\n        $this->_packageInfo = $this->_pf->getArray();\n        $this->_isValid = $this->_pf->_isValid;\n        $this->_filesValid = $this->_pf->_filesValid;\n        $this->_stack = &$pf->_stack;\n        $this->_stack->getErrors(true);\n        if (($this->_isValid & $state) == $state) {\n            return true;\n        }\n        if (!isset($this->_packageInfo) || !is_array($this->_packageInfo)) {\n            return false;\n        }\n        if (!isset($this->_packageInfo['attribs']['version']) ||\n              ($this->_packageInfo['attribs']['version'] != '2.0' &&\n               $this->_packageInfo['attribs']['version'] != '2.1')\n        ) {\n            $this->_noPackageVersion();\n        }\n        $structure =\n        array(\n            'name',\n            'channel|uri',\n            '*extends', // can't be multiple, but this works fine\n            'summary',\n            'description',\n            '+lead', // these all need content checks\n            '*developer',\n            '*contributor',\n            '*helper',\n            'date',\n            '*time',\n            'version',\n            'stability',\n            'license->?uri->?filesource',\n            'notes',\n            'contents', //special validation needed\n            '*compatible',\n            'dependencies', //special validation needed\n            '*usesrole',\n            '*usestask', // reserve these for 1.4.0a1 to implement\n                         // this will allow a package.xml to gracefully say it\n                         // needs a certain package installed in order to implement a role or task\n            '*providesextension',\n            '*srcpackage|*srcuri',\n            '+phprelease|+extsrcrelease|+extbinrelease|' .\n                '+zendextsrcrelease|+zendextbinrelease|bundle', //special validation needed\n            '*changelog',\n        );\n        $test = $this->_packageInfo;\n        if (isset($test['dependencies']) &&\n              isset($test['dependencies']['required']) &&\n              isset($test['dependencies']['required']['pearinstaller']) &&\n              isset($test['dependencies']['required']['pearinstaller']['min']) &&\n              version_compare('1.9.1',\n                $test['dependencies']['required']['pearinstaller']['min'], '<')\n        ) {\n            $this->_pearVersionTooLow($test['dependencies']['required']['pearinstaller']['min']);\n            return false;\n        }\n        // ignore post-installation array fields\n        if (array_key_exists('filelist', $test)) {\n            unset($test['filelist']);\n        }\n        if (array_key_exists('_lastmodified', $test)) {\n            unset($test['_lastmodified']);\n        }\n        if (array_key_exists('#binarypackage', $test)) {\n            unset($test['#binarypackage']);\n        }\n        if (array_key_exists('old', $test)) {\n            unset($test['old']);\n        }\n        if (array_key_exists('_lastversion', $test)) {\n            unset($test['_lastversion']);\n        }\n        if (!$this->_stupidSchemaValidate($structure, $test, '<package>')) {\n            return false;\n        }\n        if (empty($this->_packageInfo['name'])) {\n            $this->_tagCannotBeEmpty('name');\n        }\n        $test = isset($this->_packageInfo['uri']) ? 'uri' :'channel';\n        if (empty($this->_packageInfo[$test])) {\n            $this->_tagCannotBeEmpty($test);\n        }\n        if (is_array($this->_packageInfo['license']) &&\n              (!isset($this->_packageInfo['license']['_content']) ||\n              empty($this->_packageInfo['license']['_content']))) {\n            $this->_tagCannotBeEmpty('license');\n        } elseif (empty($this->_packageInfo['license'])) {\n            $this->_tagCannotBeEmpty('license');\n        }\n        if (empty($this->_packageInfo['summary'])) {\n            $this->_tagCannotBeEmpty('summary');\n        }\n        if (empty($this->_packageInfo['description'])) {\n            $this->_tagCannotBeEmpty('description');\n        }\n        if (empty($this->_packageInfo['date'])) {\n            $this->_tagCannotBeEmpty('date');\n        }\n        if (empty($this->_packageInfo['notes'])) {\n            $this->_tagCannotBeEmpty('notes');\n        }\n        if (isset($this->_packageInfo['time']) && empty($this->_packageInfo['time'])) {\n            $this->_tagCannotBeEmpty('time');\n        }\n        if (isset($this->_packageInfo['dependencies'])) {\n            $this->_validateDependencies();\n        }\n        if (isset($this->_packageInfo['compatible'])) {\n            $this->_validateCompatible();\n        }\n        if (!isset($this->_packageInfo['bundle'])) {\n            if (empty($this->_packageInfo['contents'])) {\n                $this->_tagCannotBeEmpty('contents');\n            }\n            if (!isset($this->_packageInfo['contents']['dir'])) {\n                $this->_filelistMustContainDir('contents');\n                return false;\n            }\n            if (isset($this->_packageInfo['contents']['file'])) {\n                $this->_filelistCannotContainFile('contents');\n                return false;\n            }\n        }\n        $this->_validateMaintainers();\n        $this->_validateStabilityVersion();\n        $fail = false;\n        if (array_key_exists('usesrole', $this->_packageInfo)) {\n            $roles = $this->_packageInfo['usesrole'];\n            if (!is_array($roles) || !isset($roles[0])) {\n                $roles = array($roles);\n            }\n            foreach ($roles as $role) {\n                if (!isset($role['role'])) {\n                    $this->_usesroletaskMustHaveRoleTask('usesrole', 'role');\n                    $fail = true;\n                } else {\n                    if (!isset($role['channel'])) {\n                        if (!isset($role['uri'])) {\n                            $this->_usesroletaskMustHaveChannelOrUri($role['role'], 'usesrole');\n                            $fail = true;\n                        }\n                    } elseif (!isset($role['package'])) {\n                        $this->_usesroletaskMustHavePackage($role['role'], 'usesrole');\n                        $fail = true;\n                    }\n                }\n            }\n        }\n        if (array_key_exists('usestask', $this->_packageInfo)) {\n            $roles = $this->_packageInfo['usestask'];\n            if (!is_array($roles) || !isset($roles[0])) {\n                $roles = array($roles);\n            }\n            foreach ($roles as $role) {\n                if (!isset($role['task'])) {\n                    $this->_usesroletaskMustHaveRoleTask('usestask', 'task');\n                    $fail = true;\n                } else {\n                    if (!isset($role['channel'])) {\n                        if (!isset($role['uri'])) {\n                            $this->_usesroletaskMustHaveChannelOrUri($role['task'], 'usestask');\n                            $fail = true;\n                        }\n                    } elseif (!isset($role['package'])) {\n                        $this->_usesroletaskMustHavePackage($role['task'], 'usestask');\n                        $fail = true;\n                    }\n                }\n            }\n        }\n\n        if ($fail) {\n            return false;\n        }\n\n        $list = $this->_packageInfo['contents'];\n        if (isset($list['dir']) && is_array($list['dir']) && isset($list['dir'][0])) {\n            $this->_multipleToplevelDirNotAllowed();\n            return $this->_isValid = 0;\n        }\n\n        $this->_validateFilelist();\n        $this->_validateRelease();\n        if (!$this->_stack->hasErrors()) {\n            $chan = $this->_pf->_registry->getChannel($this->_pf->getChannel(), true);\n            if (PEAR::isError($chan)) {\n                $this->_unknownChannel($this->_pf->getChannel());\n            } else {\n                $valpack = $chan->getValidationPackage();\n                // for channel validator packages, always use the default PEAR validator.\n                // otherwise, they can't be installed or packaged\n                $validator = $chan->getValidationObject($this->_pf->getPackage());\n                if (!$validator) {\n                    $this->_stack->push(__FUNCTION__, 'error',\n                        array_merge(\n                            array('channel' => $chan->getName(),\n                                  'package' => $this->_pf->getPackage()),\n                              $valpack\n                            ),\n                        'package \"%channel%/%package%\" cannot be properly validated without ' .\n                        'validation package \"%channel%/%name%-%version%\"');\n                    return $this->_isValid = 0;\n                }\n                $validator->setPackageFile($this->_pf);\n                $validator->validate($state);\n                $failures = $validator->getFailures();\n                foreach ($failures['errors'] as $error) {\n                    $this->_stack->push(__FUNCTION__, 'error', $error,\n                        'Channel validator error: field \"%field%\" - %reason%');\n                }\n                foreach ($failures['warnings'] as $warning) {\n                    $this->_stack->push(__FUNCTION__, 'warning', $warning,\n                        'Channel validator warning: field \"%field%\" - %reason%');\n                }\n            }\n        }\n\n        $this->_pf->_isValid = $this->_isValid = !$this->_stack->hasErrors('error');\n        if ($this->_isValid && $state == PEAR_VALIDATE_PACKAGING && !$this->_filesValid) {\n            if ($this->_pf->getPackageType() == 'bundle') {\n                if ($this->_analyzeBundledPackages()) {\n                    $this->_filesValid = $this->_pf->_filesValid = true;\n                } else {\n                    $this->_pf->_isValid = $this->_isValid = 0;\n                }\n            } else {\n                if (!$this->_analyzePhpFiles()) {\n                    $this->_pf->_isValid = $this->_isValid = 0;\n                } else {\n                    $this->_filesValid = $this->_pf->_filesValid = true;\n                }\n            }\n        }\n\n        if ($this->_isValid) {\n            return $this->_pf->_isValid = $this->_isValid = $state;\n        }\n\n        return $this->_pf->_isValid = $this->_isValid = 0;\n    }\n\n    function _stupidSchemaValidate($structure, $xml, $root)\n    {\n        if (!is_array($xml)) {\n            $xml = array();\n        }\n        $keys = array_keys($xml);\n        reset($keys);\n        $key = current($keys);\n        while ($key == 'attribs' || $key == '_contents') {\n            $key = next($keys);\n        }\n        $unfoundtags = $optionaltags = array();\n        $ret = true;\n        $mismatch = false;\n        foreach ($structure as $struc) {\n            if ($key) {\n                $tag = $xml[$key];\n            }\n            $test = $this->_processStructure($struc);\n            if (isset($test['choices'])) {\n                $loose = true;\n                foreach ($test['choices'] as $choice) {\n                    if ($key == $choice['tag']) {\n                        $key = next($keys);\n                        while ($key == 'attribs' || $key == '_contents') {\n                            $key = next($keys);\n                        }\n                        $unfoundtags = $optionaltags = array();\n                        $mismatch = false;\n                        if ($key && $key != $choice['tag'] && isset($choice['multiple'])) {\n                            $unfoundtags[] = $choice['tag'];\n                            $optionaltags[] = $choice['tag'];\n                            if ($key) {\n                                $mismatch = true;\n                            }\n                        }\n                        $ret &= $this->_processAttribs($choice, $tag, $root);\n                        continue 2;\n                    } else {\n                        $unfoundtags[] = $choice['tag'];\n                        $mismatch = true;\n                    }\n                    if (!isset($choice['multiple']) || $choice['multiple'] != '*') {\n                        $loose = false;\n                    } else {\n                        $optionaltags[] = $choice['tag'];\n                    }\n                }\n                if (!$loose) {\n                    $this->_invalidTagOrder($unfoundtags, $key, $root);\n                    return false;\n                }\n            } else {\n                if ($key != $test['tag']) {\n                    if (isset($test['multiple']) && $test['multiple'] != '*') {\n                        $unfoundtags[] = $test['tag'];\n                        $this->_invalidTagOrder($unfoundtags, $key, $root);\n                        return false;\n                    } else {\n                        if ($key) {\n                            $mismatch = true;\n                        }\n                        $unfoundtags[] = $test['tag'];\n                        $optionaltags[] = $test['tag'];\n                    }\n                    if (!isset($test['multiple'])) {\n                        $this->_invalidTagOrder($unfoundtags, $key, $root);\n                        return false;\n                    }\n                    continue;\n                } else {\n                    $unfoundtags = $optionaltags = array();\n                    $mismatch = false;\n                }\n                $key = next($keys);\n                while ($key == 'attribs' || $key == '_contents') {\n                    $key = next($keys);\n                }\n                if ($key && $key != $test['tag'] && isset($test['multiple'])) {\n                    $unfoundtags[] = $test['tag'];\n                    $optionaltags[] = $test['tag'];\n                    $mismatch = true;\n                }\n                $ret &= $this->_processAttribs($test, $tag, $root);\n                continue;\n            }\n        }\n        if (!$mismatch && count($optionaltags)) {\n            // don't error out on any optional tags\n            $unfoundtags = array_diff($unfoundtags, $optionaltags);\n        }\n        if (count($unfoundtags)) {\n            $this->_invalidTagOrder($unfoundtags, $key, $root);\n        } elseif ($key) {\n            // unknown tags\n            $this->_invalidTagOrder('*no tags allowed here*', $key, $root);\n            while ($key = next($keys)) {\n                $this->_invalidTagOrder('*no tags allowed here*', $key, $root);\n            }\n        }\n        return $ret;\n    }\n\n    function _processAttribs($choice, $tag, $context)\n    {\n        if (isset($choice['attribs'])) {\n            if (!is_array($tag)) {\n                $tag = array($tag);\n            }\n            $tags = $tag;\n            if (!isset($tags[0])) {\n                $tags = array($tags);\n            }\n            $ret = true;\n            foreach ($tags as $i => $tag) {\n                if (!is_array($tag) || !isset($tag['attribs'])) {\n                    foreach ($choice['attribs'] as $attrib) {\n                        if ($attrib{0} != '?') {\n                            $ret &= $this->_tagHasNoAttribs($choice['tag'],\n                                $context);\n                            continue 2;\n                        }\n                    }\n                }\n                foreach ($choice['attribs'] as $attrib) {\n                    if ($attrib{0} != '?') {\n                        if (!isset($tag['attribs'][$attrib])) {\n                            $ret &= $this->_tagMissingAttribute($choice['tag'],\n                                $attrib, $context);\n                        }\n                    }\n                }\n            }\n            return $ret;\n        }\n        return true;\n    }\n\n    function _processStructure($key)\n    {\n        $ret = array();\n        if (count($pieces = explode('|', $key)) > 1) {\n            $ret['choices'] = array();\n            foreach ($pieces as $piece) {\n                $ret['choices'][] = $this->_processStructure($piece);\n            }\n            return $ret;\n        }\n        $multi = $key{0};\n        if ($multi == '+' || $multi == '*') {\n            $ret['multiple'] = $key{0};\n            $key = substr($key, 1);\n        }\n        if (count($attrs = explode('->', $key)) > 1) {\n            $ret['tag'] = array_shift($attrs);\n            $ret['attribs'] = $attrs;\n        } else {\n            $ret['tag'] = $key;\n        }\n        return $ret;\n    }\n\n    function _validateStabilityVersion()\n    {\n        $structure = array('release', 'api');\n        $a = $this->_stupidSchemaValidate($structure, $this->_packageInfo['version'], '<version>');\n        $a &= $this->_stupidSchemaValidate($structure, $this->_packageInfo['stability'], '<stability>');\n        if ($a) {\n            if (!preg_match('/^\\d+(?:\\.\\d+)*(?:[a-zA-Z]+\\d*)?\\\\z/',\n                  $this->_packageInfo['version']['release'])) {\n                $this->_invalidVersion('release', $this->_packageInfo['version']['release']);\n            }\n            if (!preg_match('/^\\d+(?:\\.\\d+)*(?:[a-zA-Z]+\\d*)?\\\\z/',\n                  $this->_packageInfo['version']['api'])) {\n                $this->_invalidVersion('api', $this->_packageInfo['version']['api']);\n            }\n            if (!in_array($this->_packageInfo['stability']['release'],\n                  array('snapshot', 'devel', 'alpha', 'beta', 'stable'))) {\n                $this->_invalidState('release', $this->_packageInfo['stability']['release']);\n            }\n            if (!in_array($this->_packageInfo['stability']['api'],\n                  array('devel', 'alpha', 'beta', 'stable'))) {\n                $this->_invalidState('api', $this->_packageInfo['stability']['api']);\n            }\n        }\n    }\n\n    function _validateMaintainers()\n    {\n        $structure =\n            array(\n                'name',\n                'user',\n                'email',\n                'active',\n            );\n        foreach (array('lead', 'developer', 'contributor', 'helper') as $type) {\n            if (!isset($this->_packageInfo[$type])) {\n                continue;\n            }\n            if (isset($this->_packageInfo[$type][0])) {\n                foreach ($this->_packageInfo[$type] as $lead) {\n                    $this->_stupidSchemaValidate($structure, $lead, '<' . $type . '>');\n                }\n            } else {\n                $this->_stupidSchemaValidate($structure, $this->_packageInfo[$type],\n                    '<' . $type . '>');\n            }\n        }\n    }\n\n    function _validatePhpDep($dep, $installcondition = false)\n    {\n        $structure = array(\n            'min',\n            '*max',\n            '*exclude',\n        );\n        $type = $installcondition ? '<installcondition><php>' : '<dependencies><required><php>';\n        $this->_stupidSchemaValidate($structure, $dep, $type);\n        if (isset($dep['min'])) {\n            if (!preg_match('/^\\d+(?:\\.\\d+)*(?:[a-zA-Z]+\\d*)?(?:-[a-zA-Z0-9]+)?\\\\z/',\n                  $dep['min'])) {\n                $this->_invalidVersion($type . '<min>', $dep['min']);\n            }\n        }\n        if (isset($dep['max'])) {\n            if (!preg_match('/^\\d+(?:\\.\\d+)*(?:[a-zA-Z]+\\d*)?(?:-[a-zA-Z0-9]+)?\\\\z/',\n                  $dep['max'])) {\n                $this->_invalidVersion($type . '<max>', $dep['max']);\n            }\n        }\n        if (isset($dep['exclude'])) {\n            if (!is_array($dep['exclude'])) {\n                $dep['exclude'] = array($dep['exclude']);\n            }\n            foreach ($dep['exclude'] as $exclude) {\n                if (!preg_match(\n                     '/^\\d+(?:\\.\\d+)*(?:[a-zA-Z]+\\d*)?(?:-[a-zA-Z0-9]+)?\\\\z/',\n                     $exclude)) {\n                    $this->_invalidVersion($type . '<exclude>', $exclude);\n                }\n            }\n        }\n    }\n\n    function _validatePearinstallerDep($dep)\n    {\n        $structure = array(\n            'min',\n            '*max',\n            '*recommended',\n            '*exclude',\n        );\n        $this->_stupidSchemaValidate($structure, $dep, '<dependencies><required><pearinstaller>');\n        if (isset($dep['min'])) {\n            if (!preg_match('/^\\d+(?:\\.\\d+)*(?:[a-zA-Z]+\\d*)?\\\\z/',\n                  $dep['min'])) {\n                $this->_invalidVersion('<dependencies><required><pearinstaller><min>',\n                    $dep['min']);\n            }\n        }\n        if (isset($dep['max'])) {\n            if (!preg_match('/^\\d+(?:\\.\\d+)*(?:[a-zA-Z]+\\d*)?\\\\z/',\n                  $dep['max'])) {\n                $this->_invalidVersion('<dependencies><required><pearinstaller><max>',\n                    $dep['max']);\n            }\n        }\n        if (isset($dep['recommended'])) {\n            if (!preg_match('/^\\d+(?:\\.\\d+)*(?:[a-zA-Z]+\\d*)?\\\\z/',\n                  $dep['recommended'])) {\n                $this->_invalidVersion('<dependencies><required><pearinstaller><recommended>',\n                    $dep['recommended']);\n            }\n        }\n        if (isset($dep['exclude'])) {\n            if (!is_array($dep['exclude'])) {\n                $dep['exclude'] = array($dep['exclude']);\n            }\n            foreach ($dep['exclude'] as $exclude) {\n                if (!preg_match('/^\\d+(?:\\.\\d+)*(?:[a-zA-Z]+\\d*)?\\\\z/',\n                      $exclude)) {\n                    $this->_invalidVersion('<dependencies><required><pearinstaller><exclude>',\n                        $exclude);\n                }\n            }\n        }\n    }\n\n    function _validatePackageDep($dep, $group, $type = '<package>')\n    {\n        if (isset($dep['uri'])) {\n            if (isset($dep['conflicts'])) {\n                $structure = array(\n                    'name',\n                    'uri',\n                    'conflicts',\n                    '*providesextension',\n                );\n            } else {\n                $structure = array(\n                    'name',\n                    'uri',\n                    '*providesextension',\n                );\n            }\n        } else {\n            if (isset($dep['conflicts'])) {\n                $structure = array(\n                    'name',\n                    'channel',\n                    '*min',\n                    '*max',\n                    '*exclude',\n                    'conflicts',\n                    '*providesextension',\n                );\n            } else {\n                $structure = array(\n                    'name',\n                    'channel',\n                    '*min',\n                    '*max',\n                    '*recommended',\n                    '*exclude',\n                    '*nodefault',\n                    '*providesextension',\n                );\n            }\n        }\n        if (isset($dep['name'])) {\n            $type .= '<name>' . $dep['name'] . '</name>';\n        }\n        $this->_stupidSchemaValidate($structure, $dep, '<dependencies>' . $group . $type);\n        if (isset($dep['uri']) && (isset($dep['min']) || isset($dep['max']) ||\n              isset($dep['recommended']) || isset($dep['exclude']))) {\n            $this->_uriDepsCannotHaveVersioning('<dependencies>' . $group . $type);\n        }\n        if (isset($dep['channel']) && strtolower($dep['channel']) == '__uri') {\n            $this->_DepchannelCannotBeUri('<dependencies>' . $group . $type);\n        }\n        if (isset($dep['min'])) {\n            if (!preg_match('/^\\d+(?:\\.\\d+)*(?:[a-zA-Z]+\\d*)?\\\\z/',\n                  $dep['min'])) {\n                $this->_invalidVersion('<dependencies>' . $group . $type . '<min>', $dep['min']);\n            }\n        }\n        if (isset($dep['max'])) {\n            if (!preg_match('/^\\d+(?:\\.\\d+)*(?:[a-zA-Z]+\\d*)?\\\\z/',\n                  $dep['max'])) {\n                $this->_invalidVersion('<dependencies>' . $group . $type . '<max>', $dep['max']);\n            }\n        }\n        if (isset($dep['recommended'])) {\n            if (!preg_match('/^\\d+(?:\\.\\d+)*(?:[a-zA-Z]+\\d*)?\\\\z/',\n                  $dep['recommended'])) {\n                $this->_invalidVersion('<dependencies>' . $group . $type . '<recommended>',\n                    $dep['recommended']);\n            }\n        }\n        if (isset($dep['exclude'])) {\n            if (!is_array($dep['exclude'])) {\n                $dep['exclude'] = array($dep['exclude']);\n            }\n            foreach ($dep['exclude'] as $exclude) {\n                if (!preg_match('/^\\d+(?:\\.\\d+)*(?:[a-zA-Z]+\\d*)?\\\\z/',\n                      $exclude)) {\n                    $this->_invalidVersion('<dependencies>' . $group . $type . '<exclude>',\n                        $exclude);\n                }\n            }\n        }\n    }\n\n    function _validateSubpackageDep($dep, $group)\n    {\n        $this->_validatePackageDep($dep, $group, '<subpackage>');\n        if (isset($dep['providesextension'])) {\n            $this->_subpackageCannotProvideExtension(isset($dep['name']) ? $dep['name'] : '');\n        }\n        if (isset($dep['conflicts'])) {\n            $this->_subpackagesCannotConflict(isset($dep['name']) ? $dep['name'] : '');\n        }\n    }\n\n    function _validateExtensionDep($dep, $group = false, $installcondition = false)\n    {\n        if (isset($dep['conflicts'])) {\n            $structure = array(\n                'name',\n                '*min',\n                '*max',\n                '*exclude',\n                'conflicts',\n            );\n        } else {\n            $structure = array(\n                'name',\n                '*min',\n                '*max',\n                '*recommended',\n                '*exclude',\n            );\n        }\n        if ($installcondition) {\n            $type = '<installcondition><extension>';\n        } else {\n            $type = '<dependencies>' . $group . '<extension>';\n        }\n        if (isset($dep['name'])) {\n            $type .= '<name>' . $dep['name'] . '</name>';\n        }\n        $this->_stupidSchemaValidate($structure, $dep, $type);\n        if (isset($dep['min'])) {\n            if (!preg_match('/^\\d+(?:\\.\\d+)*(?:[a-zA-Z]+\\d*)?\\\\z/',\n                  $dep['min'])) {\n                $this->_invalidVersion(substr($type, 1) . '<min', $dep['min']);\n            }\n        }\n        if (isset($dep['max'])) {\n            if (!preg_match('/^\\d+(?:\\.\\d+)*(?:[a-zA-Z]+\\d*)?\\\\z/',\n                  $dep['max'])) {\n                $this->_invalidVersion(substr($type, 1) . '<max', $dep['max']);\n            }\n        }\n        if (isset($dep['recommended'])) {\n            if (!preg_match('/^\\d+(?:\\.\\d+)*(?:[a-zA-Z]+\\d*)?\\\\z/',\n                  $dep['recommended'])) {\n                $this->_invalidVersion(substr($type, 1) . '<recommended', $dep['recommended']);\n            }\n        }\n        if (isset($dep['exclude'])) {\n            if (!is_array($dep['exclude'])) {\n                $dep['exclude'] = array($dep['exclude']);\n            }\n            foreach ($dep['exclude'] as $exclude) {\n                if (!preg_match('/^\\d+(?:\\.\\d+)*(?:[a-zA-Z]+\\d*)?\\\\z/',\n                      $exclude)) {\n                    $this->_invalidVersion(substr($type, 1) . '<exclude', $exclude);\n                }\n            }\n        }\n    }\n\n    function _validateOsDep($dep, $installcondition = false)\n    {\n        $structure = array(\n            'name',\n            '*conflicts',\n        );\n        $type = $installcondition ? '<installcondition><os>' : '<dependencies><required><os>';\n        if ($this->_stupidSchemaValidate($structure, $dep, $type)) {\n            if ($dep['name'] == '*') {\n                if (array_key_exists('conflicts', $dep)) {\n                    $this->_cannotConflictWithAllOs($type);\n                }\n            }\n        }\n    }\n\n    function _validateArchDep($dep, $installcondition = false)\n    {\n        $structure = array(\n            'pattern',\n            '*conflicts',\n        );\n        $type = $installcondition ? '<installcondition><arch>' : '<dependencies><required><arch>';\n        $this->_stupidSchemaValidate($structure, $dep, $type);\n    }\n\n    function _validateInstallConditions($cond, $release)\n    {\n        $structure = array(\n            '*php',\n            '*extension',\n            '*os',\n            '*arch',\n        );\n        if (!$this->_stupidSchemaValidate($structure,\n              $cond, $release)) {\n            return false;\n        }\n        foreach (array('php', 'extension', 'os', 'arch') as $type) {\n            if (isset($cond[$type])) {\n                $iter = $cond[$type];\n                if (!is_array($iter) || !isset($iter[0])) {\n                    $iter = array($iter);\n                }\n                foreach ($iter as $package) {\n                    if ($type == 'extension') {\n                        $this->{\"_validate{$type}Dep\"}($package, false, true);\n                    } else {\n                        $this->{\"_validate{$type}Dep\"}($package, true);\n                    }\n                }\n            }\n        }\n    }\n\n    function _validateDependencies()\n    {\n        $structure = array(\n            'required',\n            '*optional',\n            '*group->name->hint'\n        );\n        if (!$this->_stupidSchemaValidate($structure,\n              $this->_packageInfo['dependencies'], '<dependencies>')) {\n            return false;\n        }\n        foreach (array('required', 'optional') as $simpledep) {\n            if (isset($this->_packageInfo['dependencies'][$simpledep])) {\n                if ($simpledep == 'optional') {\n                    $structure = array(\n                        '*package',\n                        '*subpackage',\n                        '*extension',\n                    );\n                } else {\n                    $structure = array(\n                        'php',\n                        'pearinstaller',\n                        '*package',\n                        '*subpackage',\n                        '*extension',\n                        '*os',\n                        '*arch',\n                    );\n                }\n                if ($this->_stupidSchemaValidate($structure,\n                      $this->_packageInfo['dependencies'][$simpledep],\n                      \"<dependencies><$simpledep>\")) {\n                    foreach (array('package', 'subpackage', 'extension') as $type) {\n                        if (isset($this->_packageInfo['dependencies'][$simpledep][$type])) {\n                            $iter = $this->_packageInfo['dependencies'][$simpledep][$type];\n                            if (!isset($iter[0])) {\n                                $iter = array($iter);\n                            }\n                            foreach ($iter as $package) {\n                                if ($type != 'extension') {\n                                    if (isset($package['uri'])) {\n                                        if (isset($package['channel'])) {\n                                            $this->_UrlOrChannel($type,\n                                                $package['name']);\n                                        }\n                                    } else {\n                                        if (!isset($package['channel'])) {\n                                            $this->_NoChannel($type, $package['name']);\n                                        }\n                                    }\n                                }\n                                $this->{\"_validate{$type}Dep\"}($package, \"<$simpledep>\");\n                            }\n                        }\n                    }\n                    if ($simpledep == 'optional') {\n                        continue;\n                    }\n                    foreach (array('php', 'pearinstaller', 'os', 'arch') as $type) {\n                        if (isset($this->_packageInfo['dependencies'][$simpledep][$type])) {\n                            $iter = $this->_packageInfo['dependencies'][$simpledep][$type];\n                            if (!isset($iter[0])) {\n                                $iter = array($iter);\n                            }\n                            foreach ($iter as $package) {\n                                $this->{\"_validate{$type}Dep\"}($package);\n                            }\n                        }\n                    }\n                }\n            }\n        }\n        if (isset($this->_packageInfo['dependencies']['group'])) {\n            $groups = $this->_packageInfo['dependencies']['group'];\n            if (!isset($groups[0])) {\n                $groups = array($groups);\n            }\n            $structure = array(\n                '*package',\n                '*subpackage',\n                '*extension',\n            );\n            foreach ($groups as $group) {\n                if ($this->_stupidSchemaValidate($structure, $group, '<group>')) {\n                    if (!PEAR_Validate::validGroupName($group['attribs']['name'])) {\n                        $this->_invalidDepGroupName($group['attribs']['name']);\n                    }\n                    foreach (array('package', 'subpackage', 'extension') as $type) {\n                        if (isset($group[$type])) {\n                            $iter = $group[$type];\n                            if (!isset($iter[0])) {\n                                $iter = array($iter);\n                            }\n                            foreach ($iter as $package) {\n                                if ($type != 'extension') {\n                                    if (isset($package['uri'])) {\n                                        if (isset($package['channel'])) {\n                                            $this->_UrlOrChannelGroup($type,\n                                                $package['name'],\n                                                $group['name']);\n                                        }\n                                    } else {\n                                        if (!isset($package['channel'])) {\n                                            $this->_NoChannelGroup($type,\n                                                $package['name'],\n                                                $group['name']);\n                                        }\n                                    }\n                                }\n                                $this->{\"_validate{$type}Dep\"}($package, '<group name=\"' .\n                                    $group['attribs']['name'] . '\">');\n                            }\n                        }\n                    }\n                }\n            }\n        }\n    }\n\n    function _validateCompatible()\n    {\n        $compat = $this->_packageInfo['compatible'];\n        if (!isset($compat[0])) {\n            $compat = array($compat);\n        }\n        $required = array('name', 'channel', 'min', 'max', '*exclude');\n        foreach ($compat as $package) {\n            $type = '<compatible>';\n            if (is_array($package) && array_key_exists('name', $package)) {\n                $type .= '<name>' . $package['name'] . '</name>';\n            }\n            $this->_stupidSchemaValidate($required, $package, $type);\n            if (is_array($package) && array_key_exists('min', $package)) {\n                if (!preg_match('/^\\d+(?:\\.\\d+)*(?:[a-zA-Z]+\\d*)?\\\\z/',\n                      $package['min'])) {\n                    $this->_invalidVersion(substr($type, 1) . '<min', $package['min']);\n                }\n            }\n            if (is_array($package) && array_key_exists('max', $package)) {\n                if (!preg_match('/^\\d+(?:\\.\\d+)*(?:[a-zA-Z]+\\d*)?\\\\z/',\n                      $package['max'])) {\n                    $this->_invalidVersion(substr($type, 1) . '<max', $package['max']);\n                }\n            }\n            if (is_array($package) && array_key_exists('exclude', $package)) {\n                if (!is_array($package['exclude'])) {\n                    $package['exclude'] = array($package['exclude']);\n                }\n                foreach ($package['exclude'] as $exclude) {\n                    if (!preg_match('/^\\d+(?:\\.\\d+)*(?:[a-zA-Z]+\\d*)?\\\\z/',\n                          $exclude)) {\n                        $this->_invalidVersion(substr($type, 1) . '<exclude', $exclude);\n                    }\n                }\n            }\n        }\n    }\n\n    function _validateBundle($list)\n    {\n        if (!is_array($list) || !isset($list['bundledpackage'])) {\n            return $this->_NoBundledPackages();\n        }\n        if (!is_array($list['bundledpackage']) || !isset($list['bundledpackage'][0])) {\n            return $this->_AtLeast2BundledPackages();\n        }\n        foreach ($list['bundledpackage'] as $package) {\n            if (!is_string($package)) {\n                $this->_bundledPackagesMustBeFilename();\n            }\n        }\n    }\n\n    function _validateFilelist($list = false, $allowignore = false, $dirs = '')\n    {\n        $iscontents = false;\n        if (!$list) {\n            $iscontents = true;\n            $list = $this->_packageInfo['contents'];\n            if (isset($this->_packageInfo['bundle'])) {\n                return $this->_validateBundle($list);\n            }\n        }\n        if ($allowignore) {\n            $struc = array(\n                '*install->name->as',\n                '*ignore->name'\n            );\n        } else {\n            $struc = array(\n                '*dir->name->?baseinstalldir',\n                '*file->name->role->?baseinstalldir->?md5sum'\n            );\n            if (isset($list['dir']) && isset($list['file'])) {\n                // stave off validation errors without requiring a set order.\n                $_old = $list;\n                if (isset($list['attribs'])) {\n                    $list = array('attribs' => $_old['attribs']);\n                }\n                $list['dir'] = $_old['dir'];\n                $list['file'] = $_old['file'];\n            }\n        }\n        if (!isset($list['attribs']) || !isset($list['attribs']['name'])) {\n            $unknown = $allowignore ? '<filelist>' : '<dir name=\"*unknown*\">';\n            $dirname = $iscontents ? '<contents>' : $unknown;\n        } else {\n            $dirname = '<dir name=\"' . $list['attribs']['name'] . '\">';\n            if (preg_match('~/\\.\\.?(/|\\\\z)|^\\.\\.?/~',\n                          str_replace('\\\\', '/', $list['attribs']['name']))) {\n                // file contains .. parent directory or . cur directory\n                $this->_invalidDirName($list['attribs']['name']);\n            }\n        }\n        $res = $this->_stupidSchemaValidate($struc, $list, $dirname);\n        if ($allowignore && $res) {\n            $ignored_or_installed = array();\n            $this->_pf->getFilelist();\n            $fcontents = $this->_pf->getContents();\n            $filelist = array();\n            if (!isset($fcontents['dir']['file'][0])) {\n                $fcontents['dir']['file'] = array($fcontents['dir']['file']);\n            }\n            foreach ($fcontents['dir']['file'] as $file) {\n                $filelist[$file['attribs']['name']] = true;\n            }\n            if (isset($list['install'])) {\n                if (!isset($list['install'][0])) {\n                    $list['install'] = array($list['install']);\n                }\n                foreach ($list['install'] as $file) {\n                    if (!isset($filelist[$file['attribs']['name']])) {\n                        $this->_notInContents($file['attribs']['name'], 'install');\n                        continue;\n                    }\n                    if (array_key_exists($file['attribs']['name'], $ignored_or_installed)) {\n                        $this->_multipleInstallAs($file['attribs']['name']);\n                    }\n                    if (!isset($ignored_or_installed[$file['attribs']['name']])) {\n                        $ignored_or_installed[$file['attribs']['name']] = array();\n                    }\n                    $ignored_or_installed[$file['attribs']['name']][] = 1;\n                    if (preg_match('~/\\.\\.?(/|\\\\z)|^\\.\\.?/~',\n                                  str_replace('\\\\', '/', $file['attribs']['as']))) {\n                        // file contains .. parent directory or . cur directory references\n                        $this->_invalidFileInstallAs($file['attribs']['name'],\n                            $file['attribs']['as']);\n                    }\n                }\n            }\n            if (isset($list['ignore'])) {\n                if (!isset($list['ignore'][0])) {\n                    $list['ignore'] = array($list['ignore']);\n                }\n                foreach ($list['ignore'] as $file) {\n                    if (!isset($filelist[$file['attribs']['name']])) {\n                        $this->_notInContents($file['attribs']['name'], 'ignore');\n                        continue;\n                    }\n                    if (array_key_exists($file['attribs']['name'], $ignored_or_installed)) {\n                        $this->_ignoreAndInstallAs($file['attribs']['name']);\n                    }\n                }\n            }\n        }\n        if (!$allowignore && isset($list['file'])) {\n            if (is_string($list['file'])) {\n                $this->_oldStyleFileNotAllowed();\n                return false;\n            }\n            if (!isset($list['file'][0])) {\n                // single file\n                $list['file'] = array($list['file']);\n            }\n            foreach ($list['file'] as $i => $file)\n            {\n                if (isset($file['attribs']) && isset($file['attribs']['name'])) {\n                    if ($file['attribs']['name']{0} == '.' &&\n                          $file['attribs']['name']{1} == '/') {\n                        // name is something like \"./doc/whatever.txt\"\n                        $this->_invalidFileName($file['attribs']['name'], $dirname);\n                    }\n                    if (preg_match('~/\\.\\.?(/|\\\\z)|^\\.\\.?/~',\n                                  str_replace('\\\\', '/', $file['attribs']['name']))) {\n                        // file contains .. parent directory or . cur directory\n                        $this->_invalidFileName($file['attribs']['name'], $dirname);\n                    }\n                }\n                if (isset($file['attribs']) && isset($file['attribs']['role'])) {\n                    if (!$this->_validateRole($file['attribs']['role'])) {\n                        if (isset($this->_packageInfo['usesrole'])) {\n                            $roles = $this->_packageInfo['usesrole'];\n                            if (!isset($roles[0])) {\n                                $roles = array($roles);\n                            }\n                            foreach ($roles as $role) {\n                                if ($role['role'] = $file['attribs']['role']) {\n                                    $msg = 'This package contains role \"%role%\" and requires ' .\n                                        'package \"%package%\" to be used';\n                                    if (isset($role['uri'])) {\n                                        $params = array('role' => $role['role'],\n                                            'package' => $role['uri']);\n                                    } else {\n                                        $params = array('role' => $role['role'],\n                                            'package' => $this->_pf->_registry->\n                                            parsedPackageNameToString(array('package' =>\n                                                $role['package'], 'channel' => $role['channel']),\n                                                true));\n                                    }\n                                    $this->_stack->push('_mustInstallRole', 'error', $params, $msg);\n                                }\n                            }\n                        }\n                        $this->_invalidFileRole($file['attribs']['name'],\n                            $dirname, $file['attribs']['role']);\n                    }\n                }\n                if (!isset($file['attribs'])) {\n                    continue;\n                }\n                $save = $file['attribs'];\n                if ($dirs) {\n                    $save['name'] = $dirs . '/' . $save['name'];\n                }\n                unset($file['attribs']);\n                if (count($file) && $this->_curState != PEAR_VALIDATE_DOWNLOADING) { // has tasks\n                    foreach ($file as $task => $value) {\n                        if ($tagClass = $this->_pf->getTask($task)) {\n                            if (!is_array($value) || !isset($value[0])) {\n                                $value = array($value);\n                            }\n                            foreach ($value as $v) {\n                                $ret = call_user_func(array($tagClass, 'validateXml'),\n                                    $this->_pf, $v, $this->_pf->_config, $save);\n                                if (is_array($ret)) {\n                                    $this->_invalidTask($task, $ret, isset($save['name']) ?\n                                        $save['name'] : '');\n                                }\n                            }\n                        } else {\n                            if (isset($this->_packageInfo['usestask'])) {\n                                $roles = $this->_packageInfo['usestask'];\n                                if (!isset($roles[0])) {\n                                    $roles = array($roles);\n                                }\n                                foreach ($roles as $role) {\n                                    if ($role['task'] = $task) {\n                                        $msg = 'This package contains task \"%task%\" and requires ' .\n                                            'package \"%package%\" to be used';\n                                        if (isset($role['uri'])) {\n                                            $params = array('task' => $role['task'],\n                                                'package' => $role['uri']);\n                                        } else {\n                                            $params = array('task' => $role['task'],\n                                                'package' => $this->_pf->_registry->\n                                                parsedPackageNameToString(array('package' =>\n                                                    $role['package'], 'channel' => $role['channel']),\n                                                    true));\n                                        }\n                                        $this->_stack->push('_mustInstallTask', 'error',\n                                            $params, $msg);\n                                    }\n                                }\n                            }\n                            $this->_unknownTask($task, $save['name']);\n                        }\n                    }\n                }\n            }\n        }\n        if (isset($list['ignore'])) {\n            if (!$allowignore) {\n                $this->_ignoreNotAllowed('ignore');\n            }\n        }\n        if (isset($list['install'])) {\n            if (!$allowignore) {\n                $this->_ignoreNotAllowed('install');\n            }\n        }\n        if (isset($list['file'])) {\n            if ($allowignore) {\n                $this->_fileNotAllowed('file');\n            }\n        }\n        if (isset($list['dir'])) {\n            if ($allowignore) {\n                $this->_fileNotAllowed('dir');\n            } else {\n                if (!isset($list['dir'][0])) {\n                    $list['dir'] = array($list['dir']);\n                }\n                foreach ($list['dir'] as $dir) {\n                    if (isset($dir['attribs']) && isset($dir['attribs']['name'])) {\n                        if ($dir['attribs']['name'] == '/' ||\n                              !isset($this->_packageInfo['contents']['dir']['dir'])) {\n                            // always use nothing if the filelist has already been flattened\n                            $newdirs = '';\n                        } elseif ($dirs == '') {\n                            $newdirs = $dir['attribs']['name'];\n                        } else {\n                            $newdirs = $dirs . '/' . $dir['attribs']['name'];\n                        }\n                    } else {\n                        $newdirs = $dirs;\n                    }\n                    $this->_validateFilelist($dir, $allowignore, $newdirs);\n                }\n            }\n        }\n    }\n\n    function _validateRelease()\n    {\n        if (isset($this->_packageInfo['phprelease'])) {\n            $release = 'phprelease';\n            if (isset($this->_packageInfo['providesextension'])) {\n                $this->_cannotProvideExtension($release);\n            }\n            if (isset($this->_packageInfo['srcpackage']) || isset($this->_packageInfo['srcuri'])) {\n                $this->_cannotHaveSrcpackage($release);\n            }\n            $releases = $this->_packageInfo['phprelease'];\n            if (!is_array($releases)) {\n                return true;\n            }\n            if (!isset($releases[0])) {\n                $releases = array($releases);\n            }\n            foreach ($releases as $rel) {\n                $this->_stupidSchemaValidate(array(\n                    '*installconditions',\n                    '*filelist',\n                ), $rel, '<phprelease>');\n            }\n        }\n        foreach (array('', 'zend') as $prefix) {\n            $releasetype = $prefix . 'extsrcrelease';\n            if (isset($this->_packageInfo[$releasetype])) {\n                $release = $releasetype;\n                if (!isset($this->_packageInfo['providesextension'])) {\n                    $this->_mustProvideExtension($release);\n                }\n                if (isset($this->_packageInfo['srcpackage']) || isset($this->_packageInfo['srcuri'])) {\n                    $this->_cannotHaveSrcpackage($release);\n                }\n                $releases = $this->_packageInfo[$releasetype];\n                if (!is_array($releases)) {\n                    return true;\n                }\n                if (!isset($releases[0])) {\n                    $releases = array($releases);\n                }\n                foreach ($releases as $rel) {\n                    $this->_stupidSchemaValidate(array(\n                        '*installconditions',\n                        '*configureoption->name->prompt->?default',\n                        '*binarypackage',\n                        '*filelist',\n                    ), $rel, '<' . $releasetype . '>');\n                    if (isset($rel['binarypackage'])) {\n                        if (!is_array($rel['binarypackage']) || !isset($rel['binarypackage'][0])) {\n                            $rel['binarypackage'] = array($rel['binarypackage']);\n                        }\n                        foreach ($rel['binarypackage'] as $bin) {\n                            if (!is_string($bin)) {\n                                $this->_binaryPackageMustBePackagename();\n                            }\n                        }\n                    }\n                }\n            }\n            $releasetype = 'extbinrelease';\n            if (isset($this->_packageInfo[$releasetype])) {\n                $release = $releasetype;\n                if (!isset($this->_packageInfo['providesextension'])) {\n                    $this->_mustProvideExtension($release);\n                }\n                if (isset($this->_packageInfo['channel']) &&\n                      !isset($this->_packageInfo['srcpackage'])) {\n                    $this->_mustSrcPackage($release);\n                }\n                if (isset($this->_packageInfo['uri']) && !isset($this->_packageInfo['srcuri'])) {\n                    $this->_mustSrcuri($release);\n                }\n                $releases = $this->_packageInfo[$releasetype];\n                if (!is_array($releases)) {\n                    return true;\n                }\n                if (!isset($releases[0])) {\n                    $releases = array($releases);\n                }\n                foreach ($releases as $rel) {\n                    $this->_stupidSchemaValidate(array(\n                        '*installconditions',\n                        '*filelist',\n                    ), $rel, '<' . $releasetype . '>');\n                }\n            }\n        }\n        if (isset($this->_packageInfo['bundle'])) {\n            $release = 'bundle';\n            if (isset($this->_packageInfo['providesextension'])) {\n                $this->_cannotProvideExtension($release);\n            }\n            if (isset($this->_packageInfo['srcpackage']) || isset($this->_packageInfo['srcuri'])) {\n                $this->_cannotHaveSrcpackage($release);\n            }\n            $releases = $this->_packageInfo['bundle'];\n            if (!is_array($releases) || !isset($releases[0])) {\n                $releases = array($releases);\n            }\n            foreach ($releases as $rel) {\n                $this->_stupidSchemaValidate(array(\n                    '*installconditions',\n                    '*filelist',\n                ), $rel, '<bundle>');\n            }\n        }\n        foreach ($releases as $rel) {\n            if (is_array($rel) && array_key_exists('installconditions', $rel)) {\n                $this->_validateInstallConditions($rel['installconditions'],\n                    \"<$release><installconditions>\");\n            }\n            if (is_array($rel) && array_key_exists('filelist', $rel)) {\n                if ($rel['filelist']) {\n\n                    $this->_validateFilelist($rel['filelist'], true);\n                }\n            }\n        }\n    }\n\n    /**\n     * This is here to allow role extension through plugins\n     * @param string\n     */\n    function _validateRole($role)\n    {\n        return in_array($role, PEAR_Installer_Role::getValidRoles($this->_pf->getPackageType()));\n    }\n\n    function _pearVersionTooLow($version)\n    {\n        $this->_stack->push(__FUNCTION__, 'error',\n            array('version' => $version),\n            'This package.xml requires PEAR version %version% to parse properly, we are ' .\n            'version 1.9.1');\n    }\n\n    function _invalidTagOrder($oktags, $actual, $root)\n    {\n        $this->_stack->push(__FUNCTION__, 'error',\n            array('oktags' => $oktags, 'actual' => $actual, 'root' => $root),\n            'Invalid tag order in %root%, found <%actual%> expected one of \"%oktags%\"');\n    }\n\n    function _ignoreNotAllowed($type)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('type' => $type),\n            '<%type%> is not allowed inside global <contents>, only inside ' .\n            '<phprelease>/<extbinrelease>/<zendextbinrelease>, use <dir> and <file> only');\n    }\n\n    function _fileNotAllowed($type)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('type' => $type),\n            '<%type%> is not allowed inside release <filelist>, only inside ' .\n            '<contents>, use <ignore> and <install> only');\n    }\n\n    function _oldStyleFileNotAllowed()\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array(),\n            'Old-style <file>name</file> is not allowed.  Use' .\n            '<file name=\"name\" role=\"role\"/>');\n    }\n\n    function _tagMissingAttribute($tag, $attr, $context)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('tag' => $tag,\n            'attribute' => $attr, 'context' => $context),\n            'tag <%tag%> in context \"%context%\" has no attribute \"%attribute%\"');\n    }\n\n    function _tagHasNoAttribs($tag, $context)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('tag' => $tag,\n            'context' => $context),\n            'tag <%tag%> has no attributes in context \"%context%\"');\n    }\n\n    function _invalidInternalStructure()\n    {\n        $this->_stack->push(__FUNCTION__, 'exception', array(),\n            'internal array was not generated by compatible parser, or extreme parser error, cannot continue');\n    }\n\n    function _invalidFileRole($file, $dir, $role)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array(\n            'file' => $file, 'dir' => $dir, 'role' => $role,\n            'roles' => PEAR_Installer_Role::getValidRoles($this->_pf->getPackageType())),\n            'File \"%file%\" in directory \"%dir%\" has invalid role \"%role%\", should be one of %roles%');\n    }\n\n    function _invalidFileName($file, $dir)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array(\n            'file' => $file),\n            'File \"%file%\" in directory \"%dir%\" cannot begin with \"./\" or contain \"..\"');\n    }\n\n    function _invalidFileInstallAs($file, $as)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array(\n            'file' => $file, 'as' => $as),\n            'File \"%file%\" <install as=\"%as%\"/> cannot contain \"./\" or contain \"..\"');\n    }\n\n    function _invalidDirName($dir)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array(\n            'dir' => $file),\n            'Directory \"%dir%\" cannot begin with \"./\" or contain \"..\"');\n    }\n\n    function _filelistCannotContainFile($filelist)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('tag' => $filelist),\n            '<%tag%> can only contain <dir>, contains <file>.  Use ' .\n            '<dir name=\"/\"> as the first dir element');\n    }\n\n    function _filelistMustContainDir($filelist)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('tag' => $filelist),\n            '<%tag%> must contain <dir>.  Use <dir name=\"/\"> as the ' .\n            'first dir element');\n    }\n\n    function _tagCannotBeEmpty($tag)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('tag' => $tag),\n            '<%tag%> cannot be empty (<%tag%/>)');\n    }\n\n    function _UrlOrChannel($type, $name)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('type' => $type,\n            'name' => $name),\n            'Required dependency <%type%> \"%name%\" can have either url OR ' .\n            'channel attributes, and not both');\n    }\n\n    function _NoChannel($type, $name)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('type' => $type,\n            'name' => $name),\n            'Required dependency <%type%> \"%name%\" must have either url OR ' .\n            'channel attributes');\n    }\n\n    function _UrlOrChannelGroup($type, $name, $group)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('type' => $type,\n            'name' => $name, 'group' => $group),\n            'Group \"%group%\" dependency <%type%> \"%name%\" can have either url OR ' .\n            'channel attributes, and not both');\n    }\n\n    function _NoChannelGroup($type, $name, $group)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('type' => $type,\n            'name' => $name, 'group' => $group),\n            'Group \"%group%\" dependency <%type%> \"%name%\" must have either url OR ' .\n            'channel attributes');\n    }\n\n    function _unknownChannel($channel)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('channel' => $channel),\n            'Unknown channel \"%channel%\"');\n    }\n\n    function _noPackageVersion()\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array(),\n            'package.xml <package> tag has no version attribute, or version is not 2.0');\n    }\n\n    function _NoBundledPackages()\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array(),\n            'No <bundledpackage> tag was found in <contents>, required for bundle packages');\n    }\n\n    function _AtLeast2BundledPackages()\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array(),\n            'At least 2 packages must be bundled in a bundle package');\n    }\n\n    function _ChannelOrUri($name)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('name' => $name),\n            'Bundled package \"%name%\" can have either a uri or a channel, not both');\n    }\n\n    function _noChildTag($child, $tag)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('child' => $child, 'tag' => $tag),\n            'Tag <%tag%> is missing child tag <%child%>');\n    }\n\n    function _invalidVersion($type, $value)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('type' => $type, 'value' => $value),\n            'Version type <%type%> is not a valid version (%value%)');\n    }\n\n    function _invalidState($type, $value)\n    {\n        $states = array('stable', 'beta', 'alpha', 'devel');\n        if ($type != 'api') {\n            $states[] = 'snapshot';\n        }\n        if (strtolower($value) == 'rc') {\n            $this->_stack->push(__FUNCTION__, 'error',\n                array('version' => $this->_packageInfo['version']['release']),\n                'RC is not a state, it is a version postfix, try %version%RC1, stability beta');\n        }\n        $this->_stack->push(__FUNCTION__, 'error', array('type' => $type, 'value' => $value,\n            'types' => $states),\n            'Stability type <%type%> is not a valid stability (%value%), must be one of ' .\n            '%types%');\n    }\n\n    function _invalidTask($task, $ret, $file)\n    {\n        switch ($ret[0]) {\n            case PEAR_TASK_ERROR_MISSING_ATTRIB :\n                $info = array('attrib' => $ret[1], 'task' => $task, 'file' => $file);\n                $msg = 'task <%task%> is missing attribute \"%attrib%\" in file %file%';\n            break;\n            case PEAR_TASK_ERROR_NOATTRIBS :\n                $info = array('task' => $task, 'file' => $file);\n                $msg = 'task <%task%> has no attributes in file %file%';\n            break;\n            case PEAR_TASK_ERROR_WRONG_ATTRIB_VALUE :\n                $info = array('attrib' => $ret[1], 'values' => $ret[3],\n                    'was' => $ret[2], 'task' => $task, 'file' => $file);\n                $msg = 'task <%task%> attribute \"%attrib%\" has the wrong value \"%was%\" '.\n                    'in file %file%, expecting one of \"%values%\"';\n            break;\n            case PEAR_TASK_ERROR_INVALID :\n                $info = array('reason' => $ret[1], 'task' => $task, 'file' => $file);\n                $msg = 'task <%task%> in file %file% is invalid because of \"%reason%\"';\n            break;\n        }\n        $this->_stack->push(__FUNCTION__, 'error', $info, $msg);\n    }\n\n    function _unknownTask($task, $file)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('task' => $task, 'file' => $file),\n            'Unknown task \"%task%\" passed in file <file name=\"%file%\">');\n    }\n\n    function _subpackageCannotProvideExtension($name)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('name' => $name),\n            'Subpackage dependency \"%name%\" cannot use <providesextension>, ' .\n            'only package dependencies can use this tag');\n    }\n\n    function _subpackagesCannotConflict($name)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('name' => $name),\n            'Subpackage dependency \"%name%\" cannot use <conflicts/>, ' .\n            'only package dependencies can use this tag');\n    }\n\n    function _cannotProvideExtension($release)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('release' => $release),\n            '<%release%> packages cannot use <providesextension>, only extbinrelease, extsrcrelease, zendextsrcrelease, and zendextbinrelease can provide a PHP extension');\n    }\n\n    function _mustProvideExtension($release)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('release' => $release),\n            '<%release%> packages must use <providesextension> to indicate which PHP extension is provided');\n    }\n\n    function _cannotHaveSrcpackage($release)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('release' => $release),\n            '<%release%> packages cannot specify a source code package, only extension binaries may use the <srcpackage> tag');\n    }\n\n    function _mustSrcPackage($release)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('release' => $release),\n            '<extbinrelease>/<zendextbinrelease> packages must specify a source code package with <srcpackage>');\n    }\n\n    function _mustSrcuri($release)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('release' => $release),\n            '<extbinrelease>/<zendextbinrelease> packages must specify a source code package with <srcuri>');\n    }\n\n    function _uriDepsCannotHaveVersioning($type)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('type' => $type),\n            '%type%: dependencies with a <uri> tag cannot have any versioning information');\n    }\n\n    function _conflictingDepsCannotHaveVersioning($type)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('type' => $type),\n            '%type%: conflicting dependencies cannot have versioning info, use <exclude> to ' .\n            'exclude specific versions of a dependency');\n    }\n\n    function _DepchannelCannotBeUri($type)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('type' => $type),\n            '%type%: channel cannot be __uri, this is a pseudo-channel reserved for uri ' .\n            'dependencies only');\n    }\n\n    function _bundledPackagesMustBeFilename()\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array(),\n            '<bundledpackage> tags must contain only the filename of a package release ' .\n            'in the bundle');\n    }\n\n    function _binaryPackageMustBePackagename()\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array(),\n            '<binarypackage> tags must contain the name of a package that is ' .\n            'a compiled version of this extsrc/zendextsrc package');\n    }\n\n    function _fileNotFound($file)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('file' => $file),\n            'File \"%file%\" in package.xml does not exist');\n    }\n\n    function _notInContents($file, $tag)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('file' => $file, 'tag' => $tag),\n            '<%tag% name=\"%file%\"> is invalid, file is not in <contents>');\n    }\n\n    function _cannotValidateNoPathSet()\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array(),\n            'Cannot validate files, no path to package file is set (use setPackageFile())');\n    }\n\n    function _usesroletaskMustHaveChannelOrUri($role, $tag)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('role' => $role, 'tag' => $tag),\n            '<%tag%> for role \"%role%\" must contain either <uri>, or <channel> and <package>');\n    }\n\n    function _usesroletaskMustHavePackage($role, $tag)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('role' => $role, 'tag' => $tag),\n            '<%tag%> for role \"%role%\" must contain <package>');\n    }\n\n    function _usesroletaskMustHaveRoleTask($tag, $type)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('tag' => $tag, 'type' => $type),\n            '<%tag%> must contain <%type%> defining the %type% to be used');\n    }\n\n    function _cannotConflictWithAllOs($type)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('tag' => $tag),\n            '%tag% cannot conflict with all OSes');\n    }\n\n    function _invalidDepGroupName($name)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('name' => $name),\n            'Invalid dependency group name \"%name%\"');\n    }\n\n    function _multipleToplevelDirNotAllowed()\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array(),\n            'Multiple top-level <dir> tags are not allowed.  Enclose them ' .\n                'in a <dir name=\"/\">');\n    }\n\n    function _multipleInstallAs($file)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('file' => $file),\n            'Only one <install> tag is allowed for file \"%file%\"');\n    }\n\n    function _ignoreAndInstallAs($file)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('file' => $file),\n            'Cannot have both <ignore> and <install> tags for file \"%file%\"');\n    }\n\n    function _analyzeBundledPackages()\n    {\n        if (!$this->_isValid) {\n            return false;\n        }\n        if (!$this->_pf->getPackageType() == 'bundle') {\n            return false;\n        }\n        if (!isset($this->_pf->_packageFile)) {\n            return false;\n        }\n        $dir_prefix = dirname($this->_pf->_packageFile);\n        $common = new PEAR_Common;\n        $log = isset($this->_pf->_logger) ? array(&$this->_pf->_logger, 'log') :\n            array($common, 'log');\n        $info = $this->_pf->getContents();\n        $info = $info['bundledpackage'];\n        if (!is_array($info)) {\n            $info = array($info);\n        }\n        $pkg = &new PEAR_PackageFile($this->_pf->_config);\n        foreach ($info as $package) {\n            if (!file_exists($dir_prefix . DIRECTORY_SEPARATOR . $package)) {\n                $this->_fileNotFound($dir_prefix . DIRECTORY_SEPARATOR . $package);\n                $this->_isValid = 0;\n                continue;\n            }\n            call_user_func_array($log, array(1, \"Analyzing bundled package $package\"));\n            PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n            $ret = $pkg->fromAnyFile($dir_prefix . DIRECTORY_SEPARATOR . $package,\n                PEAR_VALIDATE_NORMAL);\n            PEAR::popErrorHandling();\n            if (PEAR::isError($ret)) {\n                call_user_func_array($log, array(0, \"ERROR: package $package is not a valid \" .\n                    'package'));\n                $inf = $ret->getUserInfo();\n                if (is_array($inf)) {\n                    foreach ($inf as $err) {\n                        call_user_func_array($log, array(1, $err['message']));\n                    }\n                }\n                return false;\n            }\n        }\n        return true;\n    }\n\n    function _analyzePhpFiles()\n    {\n        if (!$this->_isValid) {\n            return false;\n        }\n        if (!isset($this->_pf->_packageFile)) {\n            $this->_cannotValidateNoPathSet();\n            return false;\n        }\n        $dir_prefix = dirname($this->_pf->_packageFile);\n        $common = new PEAR_Common;\n        $log = isset($this->_pf->_logger) ? array(&$this->_pf->_logger, 'log') :\n            array(&$common, 'log');\n        $info = $this->_pf->getContents();\n        if (!$info || !isset($info['dir']['file'])) {\n            $this->_tagCannotBeEmpty('contents><dir');\n            return false;\n        }\n        $info = $info['dir']['file'];\n        if (isset($info['attribs'])) {\n            $info = array($info);\n        }\n        $provides = array();\n        foreach ($info as $fa) {\n            $fa = $fa['attribs'];\n            $file = $fa['name'];\n            if (!file_exists($dir_prefix . DIRECTORY_SEPARATOR . $file)) {\n                $this->_fileNotFound($dir_prefix . DIRECTORY_SEPARATOR . $file);\n                $this->_isValid = 0;\n                continue;\n            }\n            if (in_array($fa['role'], PEAR_Installer_Role::getPhpRoles()) && $dir_prefix) {\n                call_user_func_array($log, array(1, \"Analyzing $file\"));\n                $srcinfo = $this->analyzeSourceCode($dir_prefix . DIRECTORY_SEPARATOR . $file);\n                if ($srcinfo) {\n                    $provides = array_merge($provides, $this->_buildProvidesArray($srcinfo));\n                }\n            }\n        }\n        $this->_packageName = $pn = $this->_pf->getPackage();\n        $pnl = strlen($pn);\n        foreach ($provides as $key => $what) {\n            if (isset($what['explicit']) || !$what) {\n                // skip conformance checks if the provides entry is\n                // specified in the package.xml file\n                continue;\n            }\n            extract($what);\n            if ($type == 'class') {\n                if (!strncasecmp($name, $pn, $pnl)) {\n                    continue;\n                }\n                $this->_stack->push(__FUNCTION__, 'warning',\n                    array('file' => $file, 'type' => $type, 'name' => $name, 'package' => $pn),\n                    'in %file%: %type% \"%name%\" not prefixed with package name \"%package%\"');\n            } elseif ($type == 'function') {\n                if (strstr($name, '::') || !strncasecmp($name, $pn, $pnl)) {\n                    continue;\n                }\n                $this->_stack->push(__FUNCTION__, 'warning',\n                    array('file' => $file, 'type' => $type, 'name' => $name, 'package' => $pn),\n                    'in %file%: %type% \"%name%\" not prefixed with package name \"%package%\"');\n            }\n        }\n        return $this->_isValid;\n    }\n\n    /**\n     * Analyze the source code of the given PHP file\n     *\n     * @param  string Filename of the PHP file\n     * @param  boolean whether to analyze $file as the file contents\n     * @return mixed\n     */\n    function analyzeSourceCode($file, $string = false)\n    {\n        if (!function_exists(\"token_get_all\")) {\n            $this->_stack->push(__FUNCTION__, 'error', array('file' => $file),\n                'Parser error: token_get_all() function must exist to analyze source code, PHP may have been compiled with --disable-tokenizer');\n            return false;\n        }\n\n        if (!defined('T_DOC_COMMENT')) {\n            define('T_DOC_COMMENT', T_COMMENT);\n        }\n\n        if (!defined('T_INTERFACE')) {\n            define('T_INTERFACE', -1);\n        }\n\n        if (!defined('T_IMPLEMENTS')) {\n            define('T_IMPLEMENTS', -1);\n        }\n\n        if ($string) {\n            $contents = $file;\n        } else {\n            if (!$fp = @fopen($file, \"r\")) {\n                return false;\n            }\n            fclose($fp);\n            $contents = file_get_contents($file);\n        }\n\n        // Silence this function so we can catch PHP Warnings and show our own custom message\n        $tokens = @token_get_all($contents);\n        if (isset($php_errormsg)) {\n            if (isset($this->_stack)) {\n                $pn = $this->_pf->getPackage();\n                $this->_stack->push(__FUNCTION__, 'warning',\n                        array('file' => $file, 'package' => $pn),\n                        'in %file%: Could not process file for unkown reasons,' .\n                        ' possibly a PHP parse error in %file% from %package%');\n            }\n        }\n/*\n        for ($i = 0; $i < sizeof($tokens); $i++) {\n            @list($token, $data) = $tokens[$i];\n            if (is_string($token)) {\n                var_dump($token);\n            } else {\n                print token_name($token) . ' ';\n                var_dump(rtrim($data));\n            }\n        }\n*/\n        $look_for = 0;\n        $paren_level = 0;\n        $bracket_level = 0;\n        $brace_level = 0;\n        $lastphpdoc = '';\n        $current_class = '';\n        $current_interface = '';\n        $current_class_level = -1;\n        $current_function = '';\n        $current_function_level = -1;\n        $declared_classes = array();\n        $declared_interfaces = array();\n        $declared_functions = array();\n        $declared_methods = array();\n        $used_classes = array();\n        $used_functions = array();\n        $extends = array();\n        $implements = array();\n        $nodeps = array();\n        $inquote = false;\n        $interface = false;\n        for ($i = 0; $i < sizeof($tokens); $i++) {\n            if (is_array($tokens[$i])) {\n                list($token, $data) = $tokens[$i];\n            } else {\n                $token = $tokens[$i];\n                $data = '';\n            }\n\n            if ($inquote) {\n                if ($token != '\"' && $token != T_END_HEREDOC) {\n                    continue;\n                } else {\n                    $inquote = false;\n                    continue;\n                }\n            }\n\n            switch ($token) {\n                case T_WHITESPACE :\n                    continue;\n                case ';':\n                    if ($interface) {\n                        $current_function = '';\n                        $current_function_level = -1;\n                    }\n                    break;\n                case '\"':\n                case T_START_HEREDOC:\n                    $inquote = true;\n                    break;\n                case T_CURLY_OPEN:\n                case T_DOLLAR_OPEN_CURLY_BRACES:\n                case '{': $brace_level++; continue 2;\n                case '}':\n                    $brace_level--;\n                    if ($current_class_level == $brace_level) {\n                        $current_class = '';\n                        $current_class_level = -1;\n                    }\n                    if ($current_function_level == $brace_level) {\n                        $current_function = '';\n                        $current_function_level = -1;\n                    }\n                    continue 2;\n                case '[': $bracket_level++; continue 2;\n                case ']': $bracket_level--; continue 2;\n                case '(': $paren_level++;   continue 2;\n                case ')': $paren_level--;   continue 2;\n                case T_INTERFACE:\n                    $interface = true;\n                case T_CLASS:\n                    if (($current_class_level != -1) || ($current_function_level != -1)) {\n                        if (isset($this->_stack)) {\n                            $this->_stack->push(__FUNCTION__, 'error', array('file' => $file),\n                            'Parser error: invalid PHP found in file \"%file%\"');\n                        } else {\n                            PEAR::raiseError(\"Parser error: invalid PHP found in file \\\"$file\\\"\",\n                                PEAR_COMMON_ERROR_INVALIDPHP);\n                        }\n\n                        return false;\n                    }\n                case T_FUNCTION:\n                case T_NEW:\n                case T_EXTENDS:\n                case T_IMPLEMENTS:\n                    $look_for = $token;\n                    continue 2;\n                case T_STRING:\n                    if (version_compare(zend_version(), '2.0', '<')) {\n                        if (in_array(strtolower($data),\n                            array('public', 'private', 'protected', 'abstract',\n                                  'interface', 'implements', 'throw')\n                                 )\n                        ) {\n                            if (isset($this->_stack)) {\n                                $this->_stack->push(__FUNCTION__, 'warning', array(\n                                    'file' => $file),\n                                    'Error, PHP5 token encountered in %file%,' .\n                                    ' analysis should be in PHP5');\n                            } else {\n                                PEAR::raiseError('Error: PHP5 token encountered in ' . $file .\n                                    'packaging should be done in PHP 5');\n                                return false;\n                            }\n                        }\n                    }\n\n                    if ($look_for == T_CLASS) {\n                        $current_class = $data;\n                        $current_class_level = $brace_level;\n                        $declared_classes[] = $current_class;\n                    } elseif ($look_for == T_INTERFACE) {\n                        $current_interface = $data;\n                        $current_class_level = $brace_level;\n                        $declared_interfaces[] = $current_interface;\n                    } elseif ($look_for == T_IMPLEMENTS) {\n                        $implements[$current_class] = $data;\n                    } elseif ($look_for == T_EXTENDS) {\n                        $extends[$current_class] = $data;\n                    } elseif ($look_for == T_FUNCTION) {\n                        if ($current_class) {\n                            $current_function = \"$current_class::$data\";\n                            $declared_methods[$current_class][] = $data;\n                        } elseif ($current_interface) {\n                            $current_function = \"$current_interface::$data\";\n                            $declared_methods[$current_interface][] = $data;\n                        } else {\n                            $current_function = $data;\n                            $declared_functions[] = $current_function;\n                        }\n\n                        $current_function_level = $brace_level;\n                        $m = array();\n                    } elseif ($look_for == T_NEW) {\n                        $used_classes[$data] = true;\n                    }\n\n                    $look_for = 0;\n                    continue 2;\n                case T_VARIABLE:\n                    $look_for = 0;\n                    continue 2;\n                case T_DOC_COMMENT:\n                case T_COMMENT:\n                    if (preg_match('!^/\\*\\*\\s!', $data)) {\n                        $lastphpdoc = $data;\n                        if (preg_match_all('/@nodep\\s+(\\S+)/', $lastphpdoc, $m)) {\n                            $nodeps = array_merge($nodeps, $m[1]);\n                        }\n                    }\n                    continue 2;\n                case T_DOUBLE_COLON:\n                    if (!($tokens[$i - 1][0] == T_WHITESPACE || $tokens[$i - 1][0] == T_STRING)) {\n                        if (isset($this->_stack)) {\n                            $this->_stack->push(__FUNCTION__, 'warning', array('file' => $file),\n                                'Parser error: invalid PHP found in file \"%file%\"');\n                        } else {\n                            PEAR::raiseError(\"Parser error: invalid PHP found in file \\\"$file\\\"\",\n                                PEAR_COMMON_ERROR_INVALIDPHP);\n                        }\n\n                        return false;\n                    }\n\n                    $class = $tokens[$i - 1][1];\n                    if (strtolower($class) != 'parent') {\n                        $used_classes[$class] = true;\n                    }\n\n                    continue 2;\n            }\n        }\n\n        return array(\n            \"source_file\" => $file,\n            \"declared_classes\" => $declared_classes,\n            \"declared_interfaces\" => $declared_interfaces,\n            \"declared_methods\" => $declared_methods,\n            \"declared_functions\" => $declared_functions,\n            \"used_classes\" => array_diff(array_keys($used_classes), $nodeps),\n            \"inheritance\" => $extends,\n            \"implements\" => $implements,\n        );\n    }\n\n    /**\n     * Build a \"provides\" array from data returned by\n     * analyzeSourceCode().  The format of the built array is like\n     * this:\n     *\n     *  array(\n     *    'class;MyClass' => 'array('type' => 'class', 'name' => 'MyClass'),\n     *    ...\n     *  )\n     *\n     *\n     * @param array $srcinfo array with information about a source file\n     * as returned by the analyzeSourceCode() method.\n     *\n     * @return void\n     *\n     * @access private\n     *\n     */\n    function _buildProvidesArray($srcinfo)\n    {\n        if (!$this->_isValid) {\n            return array();\n        }\n\n        $providesret = array();\n        $file        = basename($srcinfo['source_file']);\n        $pn          = isset($this->_pf) ? $this->_pf->getPackage() : '';\n        $pnl         = strlen($pn);\n        foreach ($srcinfo['declared_classes'] as $class) {\n            $key = \"class;$class\";\n            if (isset($providesret[$key])) {\n                continue;\n            }\n\n            $providesret[$key] =\n                array('file'=> $file, 'type' => 'class', 'name' => $class);\n            if (isset($srcinfo['inheritance'][$class])) {\n                $providesret[$key]['extends'] =\n                    $srcinfo['inheritance'][$class];\n            }\n        }\n\n        foreach ($srcinfo['declared_methods'] as $class => $methods) {\n            foreach ($methods as $method) {\n                $function = \"$class::$method\";\n                $key = \"function;$function\";\n                if ($method{0} == '_' || !strcasecmp($method, $class) ||\n                    isset($providesret[$key])) {\n                    continue;\n                }\n\n                $providesret[$key] =\n                    array('file'=> $file, 'type' => 'function', 'name' => $function);\n            }\n        }\n\n        foreach ($srcinfo['declared_functions'] as $function) {\n            $key = \"function;$function\";\n            if ($function{0} == '_' || isset($providesret[$key])) {\n                continue;\n            }\n\n            if (!strstr($function, '::') && strncasecmp($function, $pn, $pnl)) {\n                $warnings[] = \"in1 \" . $file . \": function \\\"$function\\\" not prefixed with package name \\\"$pn\\\"\";\n            }\n\n            $providesret[$key] =\n                array('file'=> $file, 'type' => 'function', 'name' => $function);\n        }\n\n        return $providesret;\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/PackageFile/v2/rw.php",
    "content": "<?php\n/**\n * PEAR_PackageFile_v2, package.xml version 2.0, read/write version\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: rw.php 276385 2009-02-24 23:46:03Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a8\n */\n/**\n * For base class\n */\nrequire_once 'PEAR/PackageFile/v2.php';\n/**\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a8\n */\nclass PEAR_PackageFile_v2_rw extends PEAR_PackageFile_v2\n{\n    /**\n     * @param string Extension name\n     * @return bool success of operation\n     */\n    function setProvidesExtension($extension)\n    {\n        if (in_array($this->getPackageType(),\n              array('extsrc', 'extbin', 'zendextsrc', 'zendextbin'))) {\n            if (!isset($this->_packageInfo['providesextension'])) {\n                // ensure that the channel tag is set up in the right location\n                $this->_packageInfo = $this->_insertBefore($this->_packageInfo,\n                    array('usesrole', 'usestask', 'srcpackage', 'srcuri', 'phprelease',\n                    'extsrcrelease', 'extbinrelease', 'zendextsrcrelease', 'zendextbinrelease',\n                    'bundle', 'changelog'),\n                    $extension, 'providesextension');\n            }\n            $this->_packageInfo['providesextension'] = $extension;\n            return true;\n        }\n        return false;\n    }\n\n    function setPackage($package)\n    {\n        $this->_isValid = 0;\n        if (!isset($this->_packageInfo['attribs'])) {\n            $this->_packageInfo = array_merge(array('attribs' => array(\n                                 'version' => '2.0',\n                                 'xmlns' => 'http://pear.php.net/dtd/package-2.0',\n                                 'xmlns:tasks' => 'http://pear.php.net/dtd/tasks-1.0',\n                                 'xmlns:xsi' => 'http://www.w3.org/2001/XMLSchema-instance',\n                                 'xsi:schemaLocation' => 'http://pear.php.net/dtd/tasks-1.0\n    http://pear.php.net/dtd/tasks-1.0.xsd\n    http://pear.php.net/dtd/package-2.0\n    http://pear.php.net/dtd/package-2.0.xsd',\n                             )), $this->_packageInfo);\n        }\n        if (!isset($this->_packageInfo['name'])) {\n            return $this->_packageInfo = array_merge(array('name' => $package),\n                $this->_packageInfo);\n        }\n        $this->_packageInfo['name'] = $package;\n    }\n\n    /**\n     * set this as a package.xml version 2.1\n     * @access private\n     */\n    function _setPackageVersion2_1()\n    {\n        $info = array(\n                                 'version' => '2.1',\n                                 'xmlns' => 'http://pear.php.net/dtd/package-2.1',\n                                 'xmlns:tasks' => 'http://pear.php.net/dtd/tasks-1.0',\n                                 'xmlns:xsi' => 'http://www.w3.org/2001/XMLSchema-instance',\n                                 'xsi:schemaLocation' => 'http://pear.php.net/dtd/tasks-1.0\n    http://pear.php.net/dtd/tasks-1.0.xsd\n    http://pear.php.net/dtd/package-2.1\n    http://pear.php.net/dtd/package-2.1.xsd',\n                             );\n        if (!isset($this->_packageInfo['attribs'])) {\n            $this->_packageInfo = array_merge(array('attribs' => $info), $this->_packageInfo);\n        } else {\n            $this->_packageInfo['attribs'] = $info;\n        }\n    }\n\n    function setUri($uri)\n    {\n        unset($this->_packageInfo['channel']);\n        $this->_isValid = 0;\n        if (!isset($this->_packageInfo['uri'])) {\n            // ensure that the uri tag is set up in the right location\n            $this->_packageInfo = $this->_insertBefore($this->_packageInfo,\n                array('extends', 'summary', 'description', 'lead',\n                'developer', 'contributor', 'helper', 'date', 'time', 'version',\n                'stability', 'license', 'notes', 'contents', 'compatible',\n                'dependencies', 'providesextension', 'usesrole', 'usestask', 'srcpackage', 'srcuri',\n                'phprelease', 'extsrcrelease', 'zendextsrcrelease', 'zendextbinrelease',\n                'extbinrelease', 'bundle', 'changelog'), $uri, 'uri');\n        }\n        $this->_packageInfo['uri'] = $uri;\n    }\n\n    function setChannel($channel)\n    {\n        unset($this->_packageInfo['uri']);\n        $this->_isValid = 0;\n        if (!isset($this->_packageInfo['channel'])) {\n            // ensure that the channel tag is set up in the right location\n            $this->_packageInfo = $this->_insertBefore($this->_packageInfo,\n                array('extends', 'summary', 'description', 'lead',\n                'developer', 'contributor', 'helper', 'date', 'time', 'version',\n                'stability', 'license', 'notes', 'contents', 'compatible',\n                'dependencies', 'providesextension', 'usesrole', 'usestask', 'srcpackage', 'srcuri',\n                'phprelease', 'extsrcrelease', 'zendextsrcrelease', 'zendextbinrelease',\n                'extbinrelease', 'bundle', 'changelog'), $channel, 'channel');\n        }\n        $this->_packageInfo['channel'] = $channel;\n    }\n\n    function setExtends($extends)\n    {\n        $this->_isValid = 0;\n        if (!isset($this->_packageInfo['extends'])) {\n            // ensure that the extends tag is set up in the right location\n            $this->_packageInfo = $this->_insertBefore($this->_packageInfo,\n                array('summary', 'description', 'lead',\n                'developer', 'contributor', 'helper', 'date', 'time', 'version',\n                'stability', 'license', 'notes', 'contents', 'compatible',\n                'dependencies', 'providesextension', 'usesrole', 'usestask', 'srcpackage', 'srcuri',\n                'phprelease', 'extsrcrelease', 'zendextsrcrelease', 'zendextbinrelease',\n                'extbinrelease', 'bundle', 'changelog'), $extends, 'extends');\n        }\n        $this->_packageInfo['extends'] = $extends;\n    }\n\n    function setSummary($summary)\n    {\n        $this->_isValid = 0;\n        if (!isset($this->_packageInfo['summary'])) {\n            // ensure that the summary tag is set up in the right location\n            $this->_packageInfo = $this->_insertBefore($this->_packageInfo,\n                array('description', 'lead',\n                'developer', 'contributor', 'helper', 'date', 'time', 'version',\n                'stability', 'license', 'notes', 'contents', 'compatible',\n                'dependencies', 'providesextension', 'usesrole', 'usestask', 'srcpackage', 'srcuri',\n                'phprelease', 'extsrcrelease', 'zendextsrcrelease', 'zendextbinrelease',\n                'extbinrelease', 'bundle', 'changelog'), $summary, 'summary');\n        }\n        $this->_packageInfo['summary'] = $summary;\n    }\n\n    function setDescription($desc)\n    {\n        $this->_isValid = 0;\n        if (!isset($this->_packageInfo['description'])) {\n            // ensure that the description tag is set up in the right location\n            $this->_packageInfo = $this->_insertBefore($this->_packageInfo,\n                array('lead',\n                'developer', 'contributor', 'helper', 'date', 'time', 'version',\n                'stability', 'license', 'notes', 'contents', 'compatible',\n                'dependencies', 'providesextension', 'usesrole', 'usestask', 'srcpackage', 'srcuri',\n                'phprelease', 'extsrcrelease', 'zendextsrcrelease', 'zendextbinrelease',\n                'extbinrelease', 'bundle', 'changelog'), $desc, 'description');\n        }\n        $this->_packageInfo['description'] = $desc;\n    }\n\n    /**\n     * Adds a new maintainer - no checking of duplicates is performed, use\n     * updatemaintainer for that purpose.\n     */\n    function addMaintainer($role, $handle, $name, $email, $active = 'yes')\n    {\n        if (!in_array($role, array('lead', 'developer', 'contributor', 'helper'))) {\n            return false;\n        }\n        if (isset($this->_packageInfo[$role])) {\n            if (!isset($this->_packageInfo[$role][0])) {\n                $this->_packageInfo[$role] = array($this->_packageInfo[$role]);\n            }\n            $this->_packageInfo[$role][] =\n                array(\n                    'name' => $name,\n                    'user' => $handle,\n                    'email' => $email,\n                    'active' => $active,\n                );\n        } else {\n            $testarr = array('lead',\n                    'developer', 'contributor', 'helper', 'date', 'time', 'version',\n                    'stability', 'license', 'notes', 'contents', 'compatible',\n                    'dependencies', 'providesextension', 'usesrole', 'usestask',\n                    'srcpackage', 'srcuri', 'phprelease', 'extsrcrelease',\n                    'extbinrelease', 'zendextsrcrelease', 'zendextbinrelease', 'bundle', 'changelog');\n            foreach (array('lead', 'developer', 'contributor', 'helper') as $testrole) {\n                array_shift($testarr);\n                if ($role == $testrole) {\n                    break;\n                }\n            }\n            if (!isset($this->_packageInfo[$role])) {\n                // ensure that the extends tag is set up in the right location\n                $this->_packageInfo = $this->_insertBefore($this->_packageInfo, $testarr,\n                    array(), $role);\n            }\n            $this->_packageInfo[$role] =\n                array(\n                    'name' => $name,\n                    'user' => $handle,\n                    'email' => $email,\n                    'active' => $active,\n                );\n        }\n        $this->_isValid = 0;\n    }\n\n    function updateMaintainer($newrole, $handle, $name, $email, $active = 'yes')\n    {\n        $found = false;\n        foreach (array('lead', 'developer', 'contributor', 'helper') as $role) {\n            if (!isset($this->_packageInfo[$role])) {\n                continue;\n            }\n            $info = $this->_packageInfo[$role];\n            if (!isset($info[0])) {\n                if ($info['user'] == $handle) {\n                    $found = true;\n                    break;\n                }\n            }\n            foreach ($info as $i => $maintainer) {\n                if ($maintainer['user'] == $handle) {\n                    $found = $i;\n                    break 2;\n                }\n            }\n        }\n        if ($found === false) {\n            return $this->addMaintainer($newrole, $handle, $name, $email, $active);\n        }\n        if ($found !== false) {\n            if ($found === true) {\n                unset($this->_packageInfo[$role]);\n            } else {\n                unset($this->_packageInfo[$role][$found]);\n                $this->_packageInfo[$role] = array_values($this->_packageInfo[$role]);\n            }\n        }\n        $this->addMaintainer($newrole, $handle, $name, $email, $active);\n        $this->_isValid = 0;\n    }\n\n    function deleteMaintainer($handle)\n    {\n        $found = false;\n        foreach (array('lead', 'developer', 'contributor', 'helper') as $role) {\n            if (!isset($this->_packageInfo[$role])) {\n                continue;\n            }\n            if (!isset($this->_packageInfo[$role][0])) {\n                $this->_packageInfo[$role] = array($this->_packageInfo[$role]);\n            }\n            foreach ($this->_packageInfo[$role] as $i => $maintainer) {\n                if ($maintainer['user'] == $handle) {\n                    $found = $i;\n                    break;\n                }\n            }\n            if ($found !== false) {\n                unset($this->_packageInfo[$role][$found]);\n                if (!count($this->_packageInfo[$role]) && $role == 'lead') {\n                    $this->_isValid = 0;\n                }\n                if (!count($this->_packageInfo[$role])) {\n                    unset($this->_packageInfo[$role]);\n                    return true;\n                }\n                $this->_packageInfo[$role] =\n                    array_values($this->_packageInfo[$role]);\n                if (count($this->_packageInfo[$role]) == 1) {\n                    $this->_packageInfo[$role] = $this->_packageInfo[$role][0];\n                }\n                return true;\n            }\n            if (count($this->_packageInfo[$role]) == 1) {\n                $this->_packageInfo[$role] = $this->_packageInfo[$role][0];\n            }\n        }\n        return false;\n    }\n\n    function setReleaseVersion($version)\n    {\n        if (isset($this->_packageInfo['version']) &&\n              isset($this->_packageInfo['version']['release'])) {\n            unset($this->_packageInfo['version']['release']);\n        }\n        $this->_packageInfo = $this->_mergeTag($this->_packageInfo, $version, array(\n            'version' => array('stability', 'license', 'notes', 'contents', 'compatible',\n                'dependencies', 'providesextension', 'usesrole', 'usestask', 'srcpackage', 'srcuri',\n                'phprelease', 'extsrcrelease', 'zendextsrcrelease', 'zendextbinrelease',\n                'extbinrelease', 'bundle', 'changelog'),\n            'release' => array('api')));\n        $this->_isValid = 0;\n    }\n\n    function setAPIVersion($version)\n    {\n        if (isset($this->_packageInfo['version']) &&\n              isset($this->_packageInfo['version']['api'])) {\n            unset($this->_packageInfo['version']['api']);\n        }\n        $this->_packageInfo = $this->_mergeTag($this->_packageInfo, $version, array(\n            'version' => array('stability', 'license', 'notes', 'contents', 'compatible',\n                'dependencies', 'providesextension', 'usesrole', 'usestask', 'srcpackage', 'srcuri',\n                'phprelease', 'extsrcrelease', 'zendextsrcrelease', 'zendextbinrelease',\n                'extbinrelease', 'bundle', 'changelog'),\n            'api' => array()));\n        $this->_isValid = 0;\n    }\n\n    /**\n     * snapshot|devel|alpha|beta|stable\n     */\n    function setReleaseStability($state)\n    {\n        if (isset($this->_packageInfo['stability']) &&\n              isset($this->_packageInfo['stability']['release'])) {\n            unset($this->_packageInfo['stability']['release']);\n        }\n        $this->_packageInfo = $this->_mergeTag($this->_packageInfo, $state, array(\n            'stability' => array('license', 'notes', 'contents', 'compatible',\n                'dependencies', 'providesextension', 'usesrole', 'usestask', 'srcpackage', 'srcuri',\n                'phprelease', 'extsrcrelease', 'zendextsrcrelease', 'zendextbinrelease',\n                'extbinrelease', 'bundle', 'changelog'),\n            'release' => array('api')));\n        $this->_isValid = 0;\n    }\n\n    /**\n     * @param devel|alpha|beta|stable\n     */\n    function setAPIStability($state)\n    {\n        if (isset($this->_packageInfo['stability']) &&\n              isset($this->_packageInfo['stability']['api'])) {\n            unset($this->_packageInfo['stability']['api']);\n        }\n        $this->_packageInfo = $this->_mergeTag($this->_packageInfo, $state, array(\n            'stability' => array('license', 'notes', 'contents', 'compatible',\n                'dependencies', 'providesextension', 'usesrole', 'usestask', 'srcpackage', 'srcuri',\n                'phprelease', 'extsrcrelease', 'zendextsrcrelease', 'zendextbinrelease',\n                'extbinrelease', 'bundle', 'changelog'),\n            'api' => array()));\n        $this->_isValid = 0;\n    }\n\n    function setLicense($license, $uri = false, $filesource = false)\n    {\n        if (!isset($this->_packageInfo['license'])) {\n            // ensure that the license tag is set up in the right location\n            $this->_packageInfo = $this->_insertBefore($this->_packageInfo,\n                array('notes', 'contents', 'compatible',\n                'dependencies', 'providesextension', 'usesrole', 'usestask', 'srcpackage', 'srcuri',\n                'phprelease', 'extsrcrelease', 'zendextsrcrelease', 'zendextbinrelease',\n                'extbinrelease', 'bundle', 'changelog'), 0, 'license');\n        }\n        if ($uri || $filesource) {\n            $attribs = array();\n            if ($uri) {\n                $attribs['uri'] = $uri;\n            }\n            $uri = true; // for test below\n            if ($filesource) {\n                $attribs['filesource'] = $filesource;\n            }\n        }\n        $license = $uri ? array('attribs' => $attribs, '_content' => $license) : $license;\n        $this->_packageInfo['license'] = $license;\n        $this->_isValid = 0;\n    }\n\n    function setNotes($notes)\n    {\n        $this->_isValid = 0;\n        if (!isset($this->_packageInfo['notes'])) {\n            // ensure that the notes tag is set up in the right location\n            $this->_packageInfo = $this->_insertBefore($this->_packageInfo,\n                array('contents', 'compatible',\n                'dependencies', 'providesextension', 'usesrole', 'usestask', 'srcpackage', 'srcuri',\n                'phprelease', 'extsrcrelease', 'zendextsrcrelease', 'zendextbinrelease',\n                'extbinrelease', 'bundle', 'changelog'), $notes, 'notes');\n        }\n        $this->_packageInfo['notes'] = $notes;\n    }\n\n    /**\n     * This is only used at install-time, after all serialization\n     * is over.\n     * @param string file name\n     * @param string installed path\n     */\n    function setInstalledAs($file, $path)\n    {\n        if ($path) {\n            return $this->_packageInfo['filelist'][$file]['installed_as'] = $path;\n        }\n        unset($this->_packageInfo['filelist'][$file]['installed_as']);\n    }\n\n    /**\n     * This is only used at install-time, after all serialization\n     * is over.\n     */\n    function installedFile($file, $atts)\n    {\n        if (isset($this->_packageInfo['filelist'][$file])) {\n            $this->_packageInfo['filelist'][$file] =\n                array_merge($this->_packageInfo['filelist'][$file], $atts['attribs']);\n        } else {\n            $this->_packageInfo['filelist'][$file] = $atts['attribs'];\n        }\n    }\n\n    /**\n     * Reset the listing of package contents\n     * @param string base installation dir for the whole package, if any\n     */\n    function clearContents($baseinstall = false)\n    {\n        $this->_filesValid = false;\n        $this->_isValid = 0;\n        if (!isset($this->_packageInfo['contents'])) {\n            $this->_packageInfo = $this->_insertBefore($this->_packageInfo,\n                array('compatible',\n                    'dependencies', 'providesextension', 'usesrole', 'usestask',\n                    'srcpackage', 'srcuri', 'phprelease', 'extsrcrelease',\n                    'extbinrelease', 'zendextsrcrelease', 'zendextbinrelease',\n                    'bundle', 'changelog'), array(), 'contents');\n        }\n        if ($this->getPackageType() != 'bundle') {\n            $this->_packageInfo['contents'] =\n                array('dir' => array('attribs' => array('name' => '/')));\n            if ($baseinstall) {\n                $this->_packageInfo['contents']['dir']['attribs']['baseinstalldir'] = $baseinstall;\n            }\n        } else {\n            $this->_packageInfo['contents'] = array('bundledpackage' => array());\n        }\n    }\n\n    /**\n     * @param string relative path of the bundled package.\n     */\n    function addBundledPackage($path)\n    {\n        if ($this->getPackageType() != 'bundle') {\n            return false;\n        }\n        $this->_filesValid = false;\n        $this->_isValid = 0;\n        $this->_packageInfo = $this->_mergeTag($this->_packageInfo, $path, array(\n                'contents' => array('compatible', 'dependencies', 'providesextension',\n                'usesrole', 'usestask', 'srcpackage', 'srcuri', 'phprelease',\n                'extsrcrelease', 'extbinrelease', 'zendextsrcrelease', 'zendextbinrelease',\n                'bundle', 'changelog'),\n                'bundledpackage' => array()));\n    }\n\n    /**\n     * @param string file name\n     * @param PEAR_Task_Common a read/write task\n     */\n    function addTaskToFile($filename, $task)\n    {\n        if (!method_exists($task, 'getXml')) {\n            return false;\n        }\n        if (!method_exists($task, 'getName')) {\n            return false;\n        }\n        if (!method_exists($task, 'validate')) {\n            return false;\n        }\n        if (!$task->validate()) {\n            return false;\n        }\n        if (!isset($this->_packageInfo['contents']['dir']['file'])) {\n            return false;\n        }\n        $this->getTasksNs(); // discover the tasks namespace if not done already\n        $files = $this->_packageInfo['contents']['dir']['file'];\n        if (!isset($files[0])) {\n            $files = array($files);\n            $ind = false;\n        } else {\n            $ind = true;\n        }\n        foreach ($files as $i => $file) {\n            if (isset($file['attribs'])) {\n                if ($file['attribs']['name'] == $filename) {\n                    if ($ind) {\n                        $t = isset($this->_packageInfo['contents']['dir']['file'][$i]\n                              ['attribs'][$this->_tasksNs .\n                              ':' . $task->getName()]) ?\n                              $this->_packageInfo['contents']['dir']['file'][$i]\n                              ['attribs'][$this->_tasksNs .\n                              ':' . $task->getName()] : false;\n                        if ($t && !isset($t[0])) {\n                            $this->_packageInfo['contents']['dir']['file'][$i]\n                                [$this->_tasksNs . ':' . $task->getName()] = array($t);\n                        }\n                        $this->_packageInfo['contents']['dir']['file'][$i][$this->_tasksNs .\n                            ':' . $task->getName()][] = $task->getXml();\n                    } else {\n                        $t = isset($this->_packageInfo['contents']['dir']['file']\n                              ['attribs'][$this->_tasksNs .\n                              ':' . $task->getName()]) ? $this->_packageInfo['contents']['dir']['file']\n                              ['attribs'][$this->_tasksNs .\n                              ':' . $task->getName()] : false;\n                        if ($t && !isset($t[0])) {\n                            $this->_packageInfo['contents']['dir']['file']\n                                [$this->_tasksNs . ':' . $task->getName()] = array($t);\n                        }\n                        $this->_packageInfo['contents']['dir']['file'][$this->_tasksNs .\n                            ':' . $task->getName()][] = $task->getXml();\n                    }\n                    return true;\n                }\n            }\n        }\n        return false;\n    }\n\n    /**\n     * @param string path to the file\n     * @param string filename\n     * @param array extra attributes\n     */\n    function addFile($dir, $file, $attrs)\n    {\n        if ($this->getPackageType() == 'bundle') {\n            return false;\n        }\n        $this->_filesValid = false;\n        $this->_isValid = 0;\n        $dir = preg_replace(array('!\\\\\\\\+!', '!/+!'), array('/', '/'), $dir);\n        if ($dir == '/' || $dir == '') {\n            $dir = '';\n        } else {\n            $dir .= '/';\n        }\n        $attrs['name'] = $dir . $file;\n        if (!isset($this->_packageInfo['contents'])) {\n            // ensure that the contents tag is set up\n            $this->_packageInfo = $this->_insertBefore($this->_packageInfo,\n                array('compatible', 'dependencies', 'providesextension', 'usesrole', 'usestask',\n                'srcpackage', 'srcuri', 'phprelease', 'extsrcrelease',\n                'extbinrelease', 'zendextsrcrelease', 'zendextbinrelease',\n                'bundle', 'changelog'), array(), 'contents');\n        }\n        if (isset($this->_packageInfo['contents']['dir']['file'])) {\n            if (!isset($this->_packageInfo['contents']['dir']['file'][0])) {\n                $this->_packageInfo['contents']['dir']['file'] =\n                    array($this->_packageInfo['contents']['dir']['file']);\n            }\n            $this->_packageInfo['contents']['dir']['file'][]['attribs'] = $attrs;\n        } else {\n            $this->_packageInfo['contents']['dir']['file']['attribs'] = $attrs;\n        }\n    }\n\n    /**\n     * @param string Dependent package name\n     * @param string Dependent package's channel name\n     * @param string minimum version of specified package that this release is guaranteed to be\n     *               compatible with\n     * @param string maximum version of specified package that this release is guaranteed to be\n     *               compatible with\n     * @param string versions of specified package that this release is not compatible with\n     */\n    function addCompatiblePackage($name, $channel, $min, $max, $exclude = false)\n    {\n        $this->_isValid = 0;\n        $set = array(\n            'name' => $name,\n            'channel' => $channel,\n            'min' => $min,\n            'max' => $max,\n        );\n        if ($exclude) {\n            $set['exclude'] = $exclude;\n        }\n        $this->_isValid = 0;\n        $this->_packageInfo = $this->_mergeTag($this->_packageInfo, $set, array(\n                'compatible' => array('dependencies', 'providesextension', 'usesrole', 'usestask',\n                    'srcpackage', 'srcuri', 'phprelease', 'extsrcrelease', 'extbinrelease',\n                    'zendextsrcrelease', 'zendextbinrelease', 'bundle', 'changelog')\n            ));\n    }\n\n    /**\n     * Removes the <usesrole> tag entirely\n     */\n    function resetUsesrole()\n    {\n        if (isset($this->_packageInfo['usesrole'])) {\n            unset($this->_packageInfo['usesrole']);\n        }\n    }\n\n    /**\n     * @param string\n     * @param string package name or uri\n     * @param string channel name if non-uri\n     */\n    function addUsesrole($role, $packageOrUri, $channel = false) {\n        $set = array('role' => $role);\n        if ($channel) {\n            $set['package'] = $packageOrUri;\n            $set['channel'] = $channel;\n        } else {\n            $set['uri'] = $packageOrUri;\n        }\n        $this->_isValid = 0;\n        $this->_packageInfo = $this->_mergeTag($this->_packageInfo, $set, array(\n                'usesrole' => array('usestask', 'srcpackage', 'srcuri',\n                    'phprelease', 'extsrcrelease', 'extbinrelease',\n                    'zendextsrcrelease', 'zendextbinrelease', 'bundle', 'changelog')\n            ));\n    }\n\n    /**\n     * Removes the <usestask> tag entirely\n     */\n    function resetUsestask()\n    {\n        if (isset($this->_packageInfo['usestask'])) {\n            unset($this->_packageInfo['usestask']);\n        }\n    }\n\n\n    /**\n     * @param string\n     * @param string package name or uri\n     * @param string channel name if non-uri\n     */\n    function addUsestask($task, $packageOrUri, $channel = false) {\n        $set = array('task' => $task);\n        if ($channel) {\n            $set['package'] = $packageOrUri;\n            $set['channel'] = $channel;\n        } else {\n            $set['uri'] = $packageOrUri;\n        }\n        $this->_isValid = 0;\n        $this->_packageInfo = $this->_mergeTag($this->_packageInfo, $set, array(\n                'usestask' => array('srcpackage', 'srcuri',\n                    'phprelease', 'extsrcrelease', 'extbinrelease',\n                    'zendextsrcrelease', 'zendextbinrelease', 'bundle', 'changelog')\n            ));\n    }\n\n    /**\n     * Remove all compatible tags\n     */\n    function clearCompatible()\n    {\n        unset($this->_packageInfo['compatible']);\n    }\n\n    /**\n     * Reset dependencies prior to adding new ones\n     */\n    function clearDeps()\n    {\n        if (!isset($this->_packageInfo['dependencies'])) {\n            $this->_packageInfo = $this->_mergeTag($this->_packageInfo, array(),\n                array(\n                    'dependencies' => array('providesextension', 'usesrole', 'usestask',\n                        'srcpackage', 'srcuri', 'phprelease', 'extsrcrelease', 'extbinrelease',\n                        'zendextsrcrelease', 'zendextbinrelease', 'bundle', 'changelog')));\n        }\n        $this->_packageInfo['dependencies'] = array();\n    }\n\n    /**\n     * @param string minimum PHP version allowed\n     * @param string maximum PHP version allowed\n     * @param array $exclude incompatible PHP versions\n     */\n    function setPhpDep($min, $max = false, $exclude = false)\n    {\n        $this->_isValid = 0;\n        $dep =\n            array(\n                'min' => $min,\n            );\n        if ($max) {\n            $dep['max'] = $max;\n        }\n        if ($exclude) {\n            if (count($exclude) == 1) {\n                $exclude = $exclude[0];\n            }\n            $dep['exclude'] = $exclude;\n        }\n        if (isset($this->_packageInfo['dependencies']['required']['php'])) {\n            $this->_stack->push(__FUNCTION__, 'warning', array('dep' =>\n            $this->_packageInfo['dependencies']['required']['php']),\n                'warning: PHP dependency already exists, overwriting');\n            unset($this->_packageInfo['dependencies']['required']['php']);\n        }\n        $this->_packageInfo = $this->_mergeTag($this->_packageInfo, $dep,\n            array(\n                'dependencies' => array('providesextension', 'usesrole', 'usestask',\n                    'srcpackage', 'srcuri', 'phprelease', 'extsrcrelease', 'extbinrelease',\n                    'zendextsrcrelease', 'zendextbinrelease', 'bundle', 'changelog'),\n                'required' => array('optional', 'group'),\n                'php' => array('pearinstaller', 'package', 'subpackage', 'extension', 'os', 'arch')\n            ));\n        return true;\n    }\n\n    /**\n     * @param string minimum allowed PEAR installer version\n     * @param string maximum allowed PEAR installer version\n     * @param string recommended PEAR installer version\n     * @param array incompatible version of the PEAR installer\n     */\n    function setPearinstallerDep($min, $max = false, $recommended = false, $exclude = false)\n    {\n        $this->_isValid = 0;\n        $dep =\n            array(\n                'min' => $min,\n            );\n        if ($max) {\n            $dep['max'] = $max;\n        }\n        if ($recommended) {\n            $dep['recommended'] = $recommended;\n        }\n        if ($exclude) {\n            if (count($exclude) == 1) {\n                $exclude = $exclude[0];\n            }\n            $dep['exclude'] = $exclude;\n        }\n        if (isset($this->_packageInfo['dependencies']['required']['pearinstaller'])) {\n            $this->_stack->push(__FUNCTION__, 'warning', array('dep' =>\n            $this->_packageInfo['dependencies']['required']['pearinstaller']),\n                'warning: PEAR Installer dependency already exists, overwriting');\n            unset($this->_packageInfo['dependencies']['required']['pearinstaller']);\n        }\n        $this->_packageInfo = $this->_mergeTag($this->_packageInfo, $dep,\n            array(\n                'dependencies' => array('providesextension', 'usesrole', 'usestask',\n                    'srcpackage', 'srcuri', 'phprelease', 'extsrcrelease', 'extbinrelease',\n                    'zendextsrcrelease', 'zendextbinrelease', 'bundle', 'changelog'),\n                'required' => array('optional', 'group'),\n                'pearinstaller' => array('package', 'subpackage', 'extension', 'os', 'arch')\n            ));\n    }\n\n    /**\n     * Mark a package as conflicting with this package\n     * @param string package name\n     * @param string package channel\n     * @param string extension this package provides, if any\n     * @param string|false minimum version required\n     * @param string|false maximum version allowed\n     * @param array|false versions to exclude from installation\n     */\n    function addConflictingPackageDepWithChannel($name, $channel,\n                $providesextension = false, $min = false, $max = false, $exclude = false)\n    {\n        $this->_isValid = 0;\n        $dep = $this->_constructDep($name, $channel, false, $min, $max, false,\n            $exclude, $providesextension, false, true);\n        $this->_packageInfo = $this->_mergeTag($this->_packageInfo, $dep,\n            array(\n                'dependencies' => array('providesextension', 'usesrole', 'usestask',\n                    'srcpackage', 'srcuri', 'phprelease', 'extsrcrelease', 'extbinrelease',\n                    'zendextsrcrelease', 'zendextbinrelease', 'bundle', 'changelog'),\n                'required' => array('optional', 'group'),\n                'package' => array('subpackage', 'extension', 'os', 'arch')\n            ));\n    }\n\n    /**\n     * Mark a package as conflicting with this package\n     * @param string package name\n     * @param string package channel\n     * @param string extension this package provides, if any\n     */\n    function addConflictingPackageDepWithUri($name, $uri, $providesextension = false)\n    {\n        $this->_isValid = 0;\n        $dep =\n            array(\n                'name' => $name,\n                'uri' => $uri,\n                'conflicts' => '',\n            );\n        if ($providesextension) {\n            $dep['providesextension'] = $providesextension;\n        }\n        $this->_packageInfo = $this->_mergeTag($this->_packageInfo, $dep,\n            array(\n                'dependencies' => array('providesextension', 'usesrole', 'usestask',\n                    'srcpackage', 'srcuri', 'phprelease', 'extsrcrelease', 'extbinrelease',\n                    'zendextsrcrelease', 'zendextbinrelease', 'bundle', 'changelog'),\n                'required' => array('optional', 'group'),\n                'package' => array('subpackage', 'extension', 'os', 'arch')\n            ));\n    }\n\n    function addDependencyGroup($name, $hint)\n    {\n        $this->_isValid = 0;\n        $this->_packageInfo = $this->_mergeTag($this->_packageInfo,\n            array('attribs' => array('name' => $name, 'hint' => $hint)),\n            array(\n                'dependencies' => array('providesextension', 'usesrole', 'usestask',\n                    'srcpackage', 'srcuri', 'phprelease', 'extsrcrelease', 'extbinrelease',\n                    'zendextsrcrelease', 'zendextbinrelease', 'bundle', 'changelog'),\n                'group' => array(),\n            ));\n    }\n\n    /**\n     * @param string package name\n     * @param string|false channel name, false if this is a uri\n     * @param string|false uri name, false if this is a channel\n     * @param string|false minimum version required\n     * @param string|false maximum version allowed\n     * @param string|false recommended installation version\n     * @param array|false versions to exclude from installation\n     * @param string extension this package provides, if any\n     * @param bool if true, tells the installer to ignore the default optional dependency group\n     *             when installing this package\n     * @param bool if true, tells the installer to negate this dependency (conflicts)\n     * @return array\n     * @access private\n     */\n    function _constructDep($name, $channel, $uri, $min, $max, $recommended, $exclude,\n                           $providesextension = false, $nodefault = false,\n                           $conflicts = false)\n    {\n        $dep =\n            array(\n                'name' => $name,\n            );\n        if ($channel) {\n            $dep['channel'] = $channel;\n        } elseif ($uri) {\n            $dep['uri'] = $uri;\n        }\n        if ($min) {\n            $dep['min'] = $min;\n        }\n        if ($max) {\n            $dep['max'] = $max;\n        }\n        if ($recommended) {\n            $dep['recommended'] = $recommended;\n        }\n        if ($exclude) {\n            if (is_array($exclude) && count($exclude) == 1) {\n                $exclude = $exclude[0];\n            }\n            $dep['exclude'] = $exclude;\n        }\n        if ($conflicts) {\n            $dep['conflicts'] = '';\n        }\n        if ($nodefault) {\n            $dep['nodefault'] = '';\n        }\n        if ($providesextension) {\n            $dep['providesextension'] = $providesextension;\n        }\n        return $dep;\n    }\n\n    /**\n     * @param package|subpackage\n     * @param string group name\n     * @param string package name\n     * @param string package channel\n     * @param string minimum version\n     * @param string maximum version\n     * @param string recommended version\n     * @param array|false optional excluded versions\n     * @param string extension this package provides, if any\n     * @param bool if true, tells the installer to ignore the default optional dependency group\n     *             when installing this package\n     * @return bool false if the dependency group has not been initialized with\n     *              {@link addDependencyGroup()}, or a subpackage is added with\n     *              a providesextension\n     */\n    function addGroupPackageDepWithChannel($type, $groupname, $name, $channel, $min = false,\n                                      $max = false, $recommended = false, $exclude = false,\n                                      $providesextension = false, $nodefault = false)\n    {\n        if ($type == 'subpackage' && $providesextension) {\n            return false; // subpackages must be php packages\n        }\n        $dep = $this->_constructDep($name, $channel, false, $min, $max, $recommended, $exclude,\n            $providesextension, $nodefault);\n        return $this->_addGroupDependency($type, $dep, $groupname);\n    }\n\n    /**\n     * @param package|subpackage\n     * @param string group name\n     * @param string package name\n     * @param string package uri\n     * @param string extension this package provides, if any\n     * @param bool if true, tells the installer to ignore the default optional dependency group\n     *             when installing this package\n     * @return bool false if the dependency group has not been initialized with\n     *              {@link addDependencyGroup()}\n     */\n    function addGroupPackageDepWithURI($type, $groupname, $name, $uri, $providesextension = false,\n                                       $nodefault = false)\n    {\n        if ($type == 'subpackage' && $providesextension) {\n            return false; // subpackages must be php packages\n        }\n        $dep = $this->_constructDep($name, false, $uri, false, false, false, false,\n            $providesextension, $nodefault);\n        return $this->_addGroupDependency($type, $dep, $groupname);\n    }\n\n    /**\n     * @param string group name (must be pre-existing)\n     * @param string extension name\n     * @param string minimum version allowed\n     * @param string maximum version allowed\n     * @param string recommended version\n     * @param array incompatible versions\n     */\n    function addGroupExtensionDep($groupname, $name, $min = false, $max = false,\n                                         $recommended = false, $exclude = false)\n    {\n        $this->_isValid = 0;\n        $dep = $this->_constructDep($name, false, false, $min, $max, $recommended, $exclude);\n        return $this->_addGroupDependency('extension', $dep, $groupname);\n    }\n\n    /**\n     * @param package|subpackage|extension\n     * @param array dependency contents\n     * @param string name of the dependency group to add this to\n     * @return boolean\n     * @access private\n     */\n    function _addGroupDependency($type, $dep, $groupname)\n    {\n        $arr = array('subpackage', 'extension');\n        if ($type != 'package') {\n            array_shift($arr);\n        }\n        if ($type == 'extension') {\n            array_shift($arr);\n        }\n        if (!isset($this->_packageInfo['dependencies']['group'])) {\n            return false;\n        } else {\n            if (!isset($this->_packageInfo['dependencies']['group'][0])) {\n                if ($this->_packageInfo['dependencies']['group']['attribs']['name'] == $groupname) {\n                    $this->_packageInfo['dependencies']['group'] = $this->_mergeTag(\n                        $this->_packageInfo['dependencies']['group'], $dep,\n                        array(\n                            $type => $arr\n                        ));\n                    $this->_isValid = 0;\n                    return true;\n                } else {\n                    return false;\n                }\n            } else {\n                foreach ($this->_packageInfo['dependencies']['group'] as $i => $group) {\n                    if ($group['attribs']['name'] == $groupname) {\n                    $this->_packageInfo['dependencies']['group'][$i] = $this->_mergeTag(\n                        $this->_packageInfo['dependencies']['group'][$i], $dep,\n                        array(\n                            $type => $arr\n                        ));\n                        $this->_isValid = 0;\n                        return true;\n                    }\n                }\n                return false;\n            }\n        }\n    }\n\n    /**\n     * @param optional|required\n     * @param string package name\n     * @param string package channel\n     * @param string minimum version\n     * @param string maximum version\n     * @param string recommended version\n     * @param string extension this package provides, if any\n     * @param bool if true, tells the installer to ignore the default optional dependency group\n     *             when installing this package\n     * @param array|false optional excluded versions\n     */\n    function addPackageDepWithChannel($type, $name, $channel, $min = false, $max = false,\n                                      $recommended = false, $exclude = false,\n                                      $providesextension = false, $nodefault = false)\n    {\n        if (!in_array($type, array('optional', 'required'), true)) {\n            $type = 'required';\n        }\n        $this->_isValid = 0;\n        $arr = array('optional', 'group');\n        if ($type != 'required') {\n            array_shift($arr);\n        }\n        $dep = $this->_constructDep($name, $channel, false, $min, $max, $recommended, $exclude,\n            $providesextension, $nodefault);\n        $this->_packageInfo = $this->_mergeTag($this->_packageInfo, $dep,\n            array(\n                'dependencies' => array('providesextension', 'usesrole', 'usestask',\n                    'srcpackage', 'srcuri', 'phprelease', 'extsrcrelease', 'extbinrelease',\n                    'zendextsrcrelease', 'zendextbinrelease', 'bundle', 'changelog'),\n                $type => $arr,\n                'package' => array('subpackage', 'extension', 'os', 'arch')\n            ));\n    }\n\n    /**\n     * @param optional|required\n     * @param string name of the package\n     * @param string uri of the package\n     * @param string extension this package provides, if any\n     * @param bool if true, tells the installer to ignore the default optional dependency group\n     *             when installing this package\n     */\n    function addPackageDepWithUri($type, $name, $uri, $providesextension = false,\n                                  $nodefault = false)\n    {\n        $this->_isValid = 0;\n        $arr = array('optional', 'group');\n        if ($type != 'required') {\n            array_shift($arr);\n        }\n        $dep = $this->_constructDep($name, false, $uri, false, false, false, false,\n            $providesextension, $nodefault);\n        $this->_packageInfo = $this->_mergeTag($this->_packageInfo, $dep,\n            array(\n                'dependencies' => array('providesextension', 'usesrole', 'usestask',\n                    'srcpackage', 'srcuri', 'phprelease', 'extsrcrelease', 'extbinrelease',\n                    'zendextsrcrelease', 'zendextbinrelease', 'bundle', 'changelog'),\n                $type => $arr,\n                'package' => array('subpackage', 'extension', 'os', 'arch')\n            ));\n    }\n\n    /**\n     * @param optional|required optional, required\n     * @param string package name\n     * @param string package channel\n     * @param string minimum version\n     * @param string maximum version\n     * @param string recommended version\n     * @param array incompatible versions\n     * @param bool if true, tells the installer to ignore the default optional dependency group\n     *             when installing this package\n     */\n    function addSubpackageDepWithChannel($type, $name, $channel, $min = false, $max = false,\n                                         $recommended = false, $exclude = false,\n                                         $nodefault = false)\n    {\n        $this->_isValid = 0;\n        $arr = array('optional', 'group');\n        if ($type != 'required') {\n            array_shift($arr);\n        }\n        $dep = $this->_constructDep($name, $channel, false, $min, $max, $recommended, $exclude,\n            $nodefault);\n        $this->_packageInfo = $this->_mergeTag($this->_packageInfo, $dep,\n            array(\n                'dependencies' => array('providesextension', 'usesrole', 'usestask',\n                    'srcpackage', 'srcuri', 'phprelease', 'extsrcrelease', 'extbinrelease',\n                    'zendextsrcrelease', 'zendextbinrelease', 'bundle', 'changelog'),\n                $type => $arr,\n                'subpackage' => array('extension', 'os', 'arch')\n            ));\n    }\n\n    /**\n     * @param optional|required optional, required\n     * @param string package name\n     * @param string package uri for download\n     * @param bool if true, tells the installer to ignore the default optional dependency group\n     *             when installing this package\n     */\n    function addSubpackageDepWithUri($type, $name, $uri, $nodefault = false)\n    {\n        $this->_isValid = 0;\n        $arr = array('optional', 'group');\n        if ($type != 'required') {\n            array_shift($arr);\n        }\n        $dep = $this->_constructDep($name, false, $uri, false, false, false, false, $nodefault);\n        $this->_packageInfo = $this->_mergeTag($this->_packageInfo, $dep,\n            array(\n                'dependencies' => array('providesextension', 'usesrole', 'usestask',\n                    'srcpackage', 'srcuri', 'phprelease', 'extsrcrelease', 'extbinrelease',\n                    'zendextsrcrelease', 'zendextbinrelease', 'bundle', 'changelog'),\n                $type => $arr,\n                'subpackage' => array('extension', 'os', 'arch')\n            ));\n    }\n\n    /**\n     * @param optional|required optional, required\n     * @param string extension name\n     * @param string minimum version\n     * @param string maximum version\n     * @param string recommended version\n     * @param array incompatible versions\n     */\n    function addExtensionDep($type, $name, $min = false, $max = false, $recommended = false,\n                             $exclude = false)\n    {\n        $this->_isValid = 0;\n        $arr = array('optional', 'group');\n        if ($type != 'required') {\n            array_shift($arr);\n        }\n        $dep = $this->_constructDep($name, false, false, $min, $max, $recommended, $exclude);\n        $this->_packageInfo = $this->_mergeTag($this->_packageInfo, $dep,\n            array(\n                'dependencies' => array('providesextension', 'usesrole', 'usestask',\n                    'srcpackage', 'srcuri', 'phprelease', 'extsrcrelease', 'extbinrelease',\n                    'zendextsrcrelease', 'zendextbinrelease', 'bundle', 'changelog'),\n                $type => $arr,\n                'extension' => array('os', 'arch')\n            ));\n    }\n\n    /**\n     * @param string Operating system name\n     * @param boolean true if this package cannot be installed on this OS\n     */\n    function addOsDep($name, $conflicts = false)\n    {\n        $this->_isValid = 0;\n        $dep = array('name' => $name);\n        if ($conflicts) {\n            $dep['conflicts'] = '';\n        }\n        $this->_packageInfo = $this->_mergeTag($this->_packageInfo, $dep,\n            array(\n                'dependencies' => array('providesextension', 'usesrole', 'usestask',\n                    'srcpackage', 'srcuri', 'phprelease', 'extsrcrelease', 'extbinrelease',\n                    'zendextsrcrelease', 'zendextbinrelease', 'bundle', 'changelog'),\n                'required' => array('optional', 'group'),\n                'os' => array('arch')\n            ));\n    }\n\n    /**\n     * @param string Architecture matching pattern\n     * @param boolean true if this package cannot be installed on this architecture\n     */\n    function addArchDep($pattern, $conflicts = false)\n    {\n        $this->_isValid = 0;\n        $dep = array('pattern' => $pattern);\n        if ($conflicts) {\n            $dep['conflicts'] = '';\n        }\n        $this->_packageInfo = $this->_mergeTag($this->_packageInfo, $dep,\n            array(\n                'dependencies' => array('providesextension', 'usesrole', 'usestask',\n                    'srcpackage', 'srcuri', 'phprelease', 'extsrcrelease', 'extbinrelease',\n                    'zendextsrcrelease', 'zendextbinrelease', 'bundle', 'changelog'),\n                'required' => array('optional', 'group'),\n                'arch' => array()\n            ));\n    }\n\n    /**\n     * Set the kind of package, and erase all release tags\n     *\n     * - a php package is a PEAR-style package\n     * - an extbin package is a PECL-style extension binary\n     * - an extsrc package is a PECL-style source for a binary\n     * - an zendextbin package is a PECL-style zend extension binary\n     * - an zendextsrc package is a PECL-style source for a zend extension binary\n     * - a bundle package is a collection of other pre-packaged packages\n     * @param php|extbin|extsrc|zendextsrc|zendextbin|bundle\n     * @return bool success\n     */\n    function setPackageType($type)\n    {\n        $this->_isValid = 0;\n        if (!in_array($type, array('php', 'extbin', 'extsrc', 'zendextsrc',\n                                   'zendextbin', 'bundle'))) {\n            return false;\n        }\n\n        if (in_array($type, array('zendextsrc', 'zendextbin'))) {\n            $this->_setPackageVersion2_1();\n        }\n\n        if ($type != 'bundle') {\n            $type .= 'release';\n        }\n\n        foreach (array('phprelease', 'extbinrelease', 'extsrcrelease',\n                       'zendextsrcrelease', 'zendextbinrelease', 'bundle') as $test) {\n            unset($this->_packageInfo[$test]);\n        }\n\n        if (!isset($this->_packageInfo[$type])) {\n            // ensure that the release tag is set up\n            $this->_packageInfo = $this->_insertBefore($this->_packageInfo, array('changelog'),\n                array(), $type);\n        }\n\n        $this->_packageInfo[$type] = array();\n        return true;\n    }\n\n    /**\n     * @return bool true if package type is set up\n     */\n    function addRelease()\n    {\n        if ($type = $this->getPackageType()) {\n            if ($type != 'bundle') {\n                $type .= 'release';\n            }\n            $this->_packageInfo = $this->_mergeTag($this->_packageInfo, array(),\n                array($type => array('changelog')));\n            return true;\n        }\n        return false;\n    }\n\n    /**\n     * Get the current release tag in order to add to it\n     * @param bool returns only releases that have installcondition if true\n     * @return array|null\n     */\n    function &_getCurrentRelease($strict = true)\n    {\n        if ($p = $this->getPackageType()) {\n            if ($strict) {\n                if ($p == 'extsrc' || $p == 'zendextsrc') {\n                    $a = null;\n                    return $a;\n                }\n            }\n            if ($p != 'bundle') {\n                $p .= 'release';\n            }\n            if (isset($this->_packageInfo[$p][0])) {\n                return $this->_packageInfo[$p][count($this->_packageInfo[$p]) - 1];\n            } else {\n                return $this->_packageInfo[$p];\n            }\n        } else {\n            $a = null;\n            return $a;\n        }\n    }\n\n    /**\n     * Add a file to the current release that should be installed under a different name\n     * @param string <contents> path to file\n     * @param string name the file should be installed as\n     */\n    function addInstallAs($path, $as)\n    {\n        $r = &$this->_getCurrentRelease();\n        if ($r === null) {\n            return false;\n        }\n        $this->_isValid = 0;\n        $r = $this->_mergeTag($r, array('attribs' => array('name' => $path, 'as' => $as)),\n            array(\n                'filelist' => array(),\n                'install' => array('ignore')\n            ));\n    }\n\n    /**\n     * Add a file to the current release that should be ignored\n     * @param string <contents> path to file\n     * @return bool success of operation\n     */\n    function addIgnore($path)\n    {\n        $r = &$this->_getCurrentRelease();\n        if ($r === null) {\n            return false;\n        }\n        $this->_isValid = 0;\n        $r = $this->_mergeTag($r, array('attribs' => array('name' => $path)),\n            array(\n                'filelist' => array(),\n                'ignore' => array()\n            ));\n    }\n\n    /**\n     * Add an extension binary package for this extension source code release\n     *\n     * Note that the package must be from the same channel as the extension source package\n     * @param string\n     */\n    function addBinarypackage($package)\n    {\n        if ($this->getPackageType() != 'extsrc' && $this->getPackageType() != 'zendextsrc') {\n            return false;\n        }\n        $r = &$this->_getCurrentRelease(false);\n        if ($r === null) {\n            return false;\n        }\n        $this->_isValid = 0;\n        $r = $this->_mergeTag($r, $package,\n            array(\n                'binarypackage' => array('filelist'),\n            ));\n    }\n\n    /**\n     * Add a configureoption to an extension source package\n     * @param string\n     * @param string\n     * @param string\n     */\n    function addConfigureOption($name, $prompt, $default = null)\n    {\n        if ($this->getPackageType() != 'extsrc' && $this->getPackageType() != 'zendextsrc') {\n            return false;\n        }\n\n        $r = &$this->_getCurrentRelease(false);\n        if ($r === null) {\n            return false;\n        }\n\n        $opt = array('attribs' => array('name' => $name, 'prompt' => $prompt));\n        if ($default !== null) {\n            $opt['attribs']['default'] = $default;\n        }\n\n        $this->_isValid = 0;\n        $r = $this->_mergeTag($r, $opt,\n            array(\n                'configureoption' => array('binarypackage', 'filelist'),\n            ));\n    }\n\n    /**\n     * Set an installation condition based on php version for the current release set\n     * @param string minimum version\n     * @param string maximum version\n     * @param false|array incompatible versions of PHP\n     */\n    function setPhpInstallCondition($min, $max, $exclude = false)\n    {\n        $r = &$this->_getCurrentRelease();\n        if ($r === null) {\n            return false;\n        }\n        $this->_isValid = 0;\n        if (isset($r['installconditions']['php'])) {\n            unset($r['installconditions']['php']);\n        }\n        $dep = array('min' => $min, 'max' => $max);\n        if ($exclude) {\n            if (is_array($exclude) && count($exclude) == 1) {\n                $exclude = $exclude[0];\n            }\n            $dep['exclude'] = $exclude;\n        }\n        if ($this->getPackageType() == 'extsrc' || $this->getPackageType() == 'zendextsrc') {\n            $r = $this->_mergeTag($r, $dep,\n                array(\n                    'installconditions' => array('configureoption', 'binarypackage',\n                        'filelist'),\n                    'php' => array('extension', 'os', 'arch')\n                ));\n        } else {\n            $r = $this->_mergeTag($r, $dep,\n                array(\n                    'installconditions' => array('filelist'),\n                    'php' => array('extension', 'os', 'arch')\n                ));\n        }\n    }\n\n    /**\n     * @param optional|required optional, required\n     * @param string extension name\n     * @param string minimum version\n     * @param string maximum version\n     * @param string recommended version\n     * @param array incompatible versions\n     */\n    function addExtensionInstallCondition($name, $min = false, $max = false, $recommended = false,\n                                          $exclude = false)\n    {\n        $r = &$this->_getCurrentRelease();\n        if ($r === null) {\n            return false;\n        }\n        $this->_isValid = 0;\n        $dep = $this->_constructDep($name, false, false, $min, $max, $recommended, $exclude);\n        if ($this->getPackageType() == 'extsrc' || $this->getPackageType() == 'zendextsrc') {\n            $r = $this->_mergeTag($r, $dep,\n                array(\n                    'installconditions' => array('configureoption', 'binarypackage',\n                        'filelist'),\n                    'extension' => array('os', 'arch')\n                ));\n        } else {\n            $r = $this->_mergeTag($r, $dep,\n                array(\n                    'installconditions' => array('filelist'),\n                    'extension' => array('os', 'arch')\n                ));\n        }\n    }\n\n    /**\n     * Set an installation condition based on operating system for the current release set\n     * @param string OS name\n     * @param bool whether this OS is incompatible with the current release\n     */\n    function setOsInstallCondition($name, $conflicts = false)\n    {\n        $r = &$this->_getCurrentRelease();\n        if ($r === null) {\n            return false;\n        }\n        $this->_isValid = 0;\n        if (isset($r['installconditions']['os'])) {\n            unset($r['installconditions']['os']);\n        }\n        $dep = array('name' => $name);\n        if ($conflicts) {\n            $dep['conflicts'] = '';\n        }\n        if ($this->getPackageType() == 'extsrc' || $this->getPackageType() == 'zendextsrc') {\n            $r = $this->_mergeTag($r, $dep,\n                array(\n                    'installconditions' => array('configureoption', 'binarypackage',\n                        'filelist'),\n                    'os' => array('arch')\n                ));\n        } else {\n            $r = $this->_mergeTag($r, $dep,\n                array(\n                    'installconditions' => array('filelist'),\n                    'os' => array('arch')\n                ));\n        }\n    }\n\n    /**\n     * Set an installation condition based on architecture for the current release set\n     * @param string architecture pattern\n     * @param bool whether this arch is incompatible with the current release\n     */\n    function setArchInstallCondition($pattern, $conflicts = false)\n    {\n        $r = &$this->_getCurrentRelease();\n        if ($r === null) {\n            return false;\n        }\n        $this->_isValid = 0;\n        if (isset($r['installconditions']['arch'])) {\n            unset($r['installconditions']['arch']);\n        }\n        $dep = array('pattern' => $pattern);\n        if ($conflicts) {\n            $dep['conflicts'] = '';\n        }\n        if ($this->getPackageType() == 'extsrc' || $this->getPackageType() == 'zendextsrc') {\n            $r = $this->_mergeTag($r, $dep,\n                array(\n                    'installconditions' => array('configureoption', 'binarypackage',\n                        'filelist'),\n                    'arch' => array()\n                ));\n        } else {\n            $r = $this->_mergeTag($r, $dep,\n                array(\n                    'installconditions' => array('filelist'),\n                    'arch' => array()\n                ));\n        }\n    }\n\n    /**\n     * For extension binary releases, this is used to specify either the\n     * static URI to a source package, or the package name and channel of the extsrc/zendextsrc\n     * package it is based on.\n     * @param string Package name, or full URI to source package (extsrc/zendextsrc type)\n     */\n    function setSourcePackage($packageOrUri)\n    {\n        $this->_isValid = 0;\n        if (isset($this->_packageInfo['channel'])) {\n            $this->_packageInfo = $this->_insertBefore($this->_packageInfo, array('phprelease',\n                'extsrcrelease', 'extbinrelease', 'zendextsrcrelease', 'zendextbinrelease',\n                'bundle', 'changelog'),\n                $packageOrUri, 'srcpackage');\n        } else {\n            $this->_packageInfo = $this->_insertBefore($this->_packageInfo, array('phprelease',\n                'extsrcrelease', 'extbinrelease', 'zendextsrcrelease', 'zendextbinrelease',\n                'bundle', 'changelog'), $packageOrUri, 'srcuri');\n        }\n    }\n\n    /**\n     * Generate a valid change log entry from the current package.xml\n     * @param string|false\n     */\n    function generateChangeLogEntry($notes = false)\n    {\n        return array(\n            'version' =>\n                array(\n                    'release' => $this->getVersion('release'),\n                    'api' => $this->getVersion('api'),\n                    ),\n            'stability' =>\n                $this->getStability(),\n            'date' => $this->getDate(),\n            'license' => $this->getLicense(true),\n            'notes' => $notes ? $notes : $this->getNotes()\n            );\n    }\n\n    /**\n     * @param string release version to set change log notes for\n     * @param array output of {@link generateChangeLogEntry()}\n     */\n    function setChangelogEntry($releaseversion, $contents)\n    {\n        if (!isset($this->_packageInfo['changelog'])) {\n            $this->_packageInfo['changelog']['release'] = $contents;\n            return;\n        }\n        if (!isset($this->_packageInfo['changelog']['release'][0])) {\n            if ($this->_packageInfo['changelog']['release']['version']['release'] == $releaseversion) {\n                $this->_packageInfo['changelog']['release'] = array(\n                    $this->_packageInfo['changelog']['release']);\n            } else {\n                $this->_packageInfo['changelog']['release'] = array(\n                    $this->_packageInfo['changelog']['release']);\n                return $this->_packageInfo['changelog']['release'][] = $contents;\n            }\n        }\n        foreach($this->_packageInfo['changelog']['release'] as $index => $changelog) {\n            if (isset($changelog['version']) &&\n                  strnatcasecmp($changelog['version']['release'], $releaseversion) == 0) {\n                $curlog = $index;\n            }\n        }\n        if (isset($curlog)) {\n            $this->_packageInfo['changelog']['release'][$curlog] = $contents;\n        } else {\n            $this->_packageInfo['changelog']['release'][] = $contents;\n        }\n    }\n\n    /**\n     * Remove the changelog entirely\n     */\n    function clearChangeLog()\n    {\n        unset($this->_packageInfo['changelog']);\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/PackageFile/v2.php",
    "content": "<?php\n/**\n * PEAR_PackageFile_v2, package.xml version 2.0\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: v2.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n/**\n * For error handling\n */\nrequire_once 'PEAR/ErrorStack.php';\n/**\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_PackageFile_v2\n{\n\n    /**\n     * Parsed package information\n     * @var array\n     * @access private\n     */\n    var $_packageInfo = array();\n\n    /**\n     * path to package .tgz or false if this is a local/extracted package.xml\n     * @var string|false\n     * @access private\n     */\n    var $_archiveFile;\n\n    /**\n     * path to package .xml or false if this is an abstract parsed-from-string xml\n     * @var string|false\n     * @access private\n     */\n    var $_packageFile;\n\n    /**\n     * This is used by file analysis routines to log progress information\n     * @var PEAR_Common\n     * @access protected\n     */\n    var $_logger;\n\n    /**\n     * This is set to the highest validation level that has been validated\n     *\n     * If the package.xml is invalid or unknown, this is set to 0.  If\n     * normal validation has occurred, this is set to PEAR_VALIDATE_NORMAL.  If\n     * downloading/installation validation has occurred it is set to PEAR_VALIDATE_DOWNLOADING\n     * or INSTALLING, and so on up to PEAR_VALIDATE_PACKAGING.  This allows validation\n     * \"caching\" to occur, which is particularly important for package validation, so\n     * that PHP files are not validated twice\n     * @var int\n     * @access private\n     */\n    var $_isValid = 0;\n\n    /**\n     * True if the filelist has been validated\n     * @param bool\n     */\n    var $_filesValid = false;\n\n    /**\n     * @var PEAR_Registry\n     * @access protected\n     */\n    var $_registry;\n\n    /**\n     * @var PEAR_Config\n     * @access protected\n     */\n    var $_config;\n\n    /**\n     * Optional Dependency group requested for installation\n     * @var string\n     * @access private\n     */\n    var $_requestedGroup = false;\n\n    /**\n     * @var PEAR_ErrorStack\n     * @access protected\n     */\n    var $_stack;\n\n    /**\n     * Namespace prefix used for tasks in this package.xml - use tasks: whenever possible\n     */\n    var $_tasksNs;\n\n    /**\n     * Determines whether this packagefile was initialized only with partial package info\n     *\n     * If this package file was constructed via parsing REST, it will only contain\n     *\n     * - package name\n     * - channel name\n     * - dependencies\n     * @var boolean\n     * @access private\n     */\n    var $_incomplete = true;\n\n    /**\n     * @var PEAR_PackageFile_v2_Validator\n     */\n    var $_v2Validator;\n\n    /**\n     * The constructor merely sets up the private error stack\n     */\n    function PEAR_PackageFile_v2()\n    {\n        $this->_stack = new PEAR_ErrorStack('PEAR_PackageFile_v2', false, null);\n        $this->_isValid = false;\n    }\n\n    /**\n     * To make unit-testing easier\n     * @param PEAR_Frontend_*\n     * @param array options\n     * @param PEAR_Config\n     * @return PEAR_Downloader\n     * @access protected\n     */\n    function &getPEARDownloader(&$i, $o, &$c)\n    {\n        $z = &new PEAR_Downloader($i, $o, $c);\n        return $z;\n    }\n\n    /**\n     * To make unit-testing easier\n     * @param PEAR_Config\n     * @param array options\n     * @param array package name as returned from {@link PEAR_Registry::parsePackageName()}\n     * @param int PEAR_VALIDATE_* constant\n     * @return PEAR_Dependency2\n     * @access protected\n     */\n    function &getPEARDependency2(&$c, $o, $p, $s = PEAR_VALIDATE_INSTALLING)\n    {\n        if (!class_exists('PEAR_Dependency2')) {\n            require_once 'PEAR/Dependency2.php';\n        }\n        $z = &new PEAR_Dependency2($c, $o, $p, $s);\n        return $z;\n    }\n\n    function getInstalledBinary()\n    {\n        return isset($this->_packageInfo['#binarypackage']) ? $this->_packageInfo['#binarypackage'] :\n            false;\n    }\n\n    /**\n     * Installation of source package has failed, attempt to download and install the\n     * binary version of this package.\n     * @param PEAR_Installer\n     * @return array|false\n     */\n    function installBinary(&$installer)\n    {\n        if (!OS_WINDOWS) {\n            $a = false;\n            return $a;\n        }\n        if ($this->getPackageType() == 'extsrc' || $this->getPackageType() == 'zendextsrc') {\n            $releasetype = $this->getPackageType() . 'release';\n            if (!is_array($installer->getInstallPackages())) {\n                $a = false;\n                return $a;\n            }\n            foreach ($installer->getInstallPackages() as $p) {\n                if ($p->isExtension($this->_packageInfo['providesextension'])) {\n                    if ($p->getPackageType() != 'extsrc' && $p->getPackageType() != 'zendextsrc') {\n                        $a = false;\n                        return $a; // the user probably downloaded it separately\n                    }\n                }\n            }\n            if (isset($this->_packageInfo[$releasetype]['binarypackage'])) {\n                $installer->log(0, 'Attempting to download binary version of extension \"' .\n                    $this->_packageInfo['providesextension'] . '\"');\n                $params = $this->_packageInfo[$releasetype]['binarypackage'];\n                if (!is_array($params) || !isset($params[0])) {\n                    $params = array($params);\n                }\n                if (isset($this->_packageInfo['channel'])) {\n                    foreach ($params as $i => $param) {\n                        $params[$i] = array('channel' => $this->_packageInfo['channel'],\n                            'package' => $param, 'version' => $this->getVersion());\n                    }\n                }\n                $dl = &$this->getPEARDownloader($installer->ui, $installer->getOptions(),\n                    $installer->config);\n                $verbose = $dl->config->get('verbose');\n                $dl->config->set('verbose', -1);\n                foreach ($params as $param) {\n                    PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n                    $ret = $dl->download(array($param));\n                    PEAR::popErrorHandling();\n                    if (is_array($ret) && count($ret)) {\n                        break;\n                    }\n                }\n                $dl->config->set('verbose', $verbose);\n                if (is_array($ret)) {\n                    if (count($ret) == 1) {\n                        $pf = $ret[0]->getPackageFile();\n                        PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n                        $err = $installer->install($ret[0]);\n                        PEAR::popErrorHandling();\n                        if (is_array($err)) {\n                            $this->_packageInfo['#binarypackage'] = $ret[0]->getPackage();\n                            // \"install\" self, so all dependencies will work transparently\n                            $this->_registry->addPackage2($this);\n                            $installer->log(0, 'Download and install of binary extension \"' .\n                                $this->_registry->parsedPackageNameToString(\n                                    array('channel' => $pf->getChannel(),\n                                          'package' => $pf->getPackage()), true) . '\" successful');\n                            $a = array($ret[0], $err);\n                            return $a;\n                        }\n                        $installer->log(0, 'Download and install of binary extension \"' .\n                            $this->_registry->parsedPackageNameToString(\n                                    array('channel' => $pf->getChannel(),\n                                          'package' => $pf->getPackage()), true) . '\" failed');\n                    }\n                }\n            }\n        }\n        $a = false;\n        return $a;\n    }\n\n    /**\n     * @return string|false Extension name\n     */\n    function getProvidesExtension()\n    {\n        if (in_array($this->getPackageType(),\n              array('extsrc', 'extbin', 'zendextsrc', 'zendextbin'))) {\n            if (isset($this->_packageInfo['providesextension'])) {\n                return $this->_packageInfo['providesextension'];\n            }\n        }\n        return false;\n    }\n\n    /**\n     * @param string Extension name\n     * @return bool\n     */\n    function isExtension($extension)\n    {\n        if (in_array($this->getPackageType(),\n              array('extsrc', 'extbin', 'zendextsrc', 'zendextbin'))) {\n            return $this->_packageInfo['providesextension'] == $extension;\n        }\n        return false;\n    }\n\n    /**\n     * Tests whether every part of the package.xml 1.0 is represented in\n     * this package.xml 2.0\n     * @param PEAR_PackageFile_v1\n     * @return bool\n     */\n    function isEquivalent($pf1)\n    {\n        if (!$pf1) {\n            return true;\n        }\n        if ($this->getPackageType() == 'bundle') {\n            return false;\n        }\n        $this->_stack->getErrors(true);\n        if (!$pf1->validate(PEAR_VALIDATE_NORMAL)) {\n            return false;\n        }\n        $pass = true;\n        if ($pf1->getPackage() != $this->getPackage()) {\n            $this->_differentPackage($pf1->getPackage());\n            $pass = false;\n        }\n        if ($pf1->getVersion() != $this->getVersion()) {\n            $this->_differentVersion($pf1->getVersion());\n            $pass = false;\n        }\n        if (trim($pf1->getSummary()) != $this->getSummary()) {\n            $this->_differentSummary($pf1->getSummary());\n            $pass = false;\n        }\n        if (preg_replace('/\\s+/', '', $pf1->getDescription()) !=\n              preg_replace('/\\s+/', '', $this->getDescription())) {\n            $this->_differentDescription($pf1->getDescription());\n            $pass = false;\n        }\n        if ($pf1->getState() != $this->getState()) {\n            $this->_differentState($pf1->getState());\n            $pass = false;\n        }\n        if (!strstr(preg_replace('/\\s+/', '', $this->getNotes()),\n              preg_replace('/\\s+/', '', $pf1->getNotes()))) {\n            $this->_differentNotes($pf1->getNotes());\n            $pass = false;\n        }\n        $mymaintainers = $this->getMaintainers();\n        $yourmaintainers = $pf1->getMaintainers();\n        for ($i1 = 0; $i1 < count($yourmaintainers); $i1++) {\n            $reset = false;\n            for ($i2 = 0; $i2 < count($mymaintainers); $i2++) {\n                if ($mymaintainers[$i2]['handle'] == $yourmaintainers[$i1]['handle']) {\n                    if ($mymaintainers[$i2]['role'] != $yourmaintainers[$i1]['role']) {\n                        $this->_differentRole($mymaintainers[$i2]['handle'],\n                            $yourmaintainers[$i1]['role'], $mymaintainers[$i2]['role']);\n                        $pass = false;\n                    }\n                    if ($mymaintainers[$i2]['email'] != $yourmaintainers[$i1]['email']) {\n                        $this->_differentEmail($mymaintainers[$i2]['handle'],\n                            $yourmaintainers[$i1]['email'], $mymaintainers[$i2]['email']);\n                        $pass = false;\n                    }\n                    if ($mymaintainers[$i2]['name'] != $yourmaintainers[$i1]['name']) {\n                        $this->_differentName($mymaintainers[$i2]['handle'],\n                            $yourmaintainers[$i1]['name'], $mymaintainers[$i2]['name']);\n                        $pass = false;\n                    }\n                    unset($mymaintainers[$i2]);\n                    $mymaintainers = array_values($mymaintainers);\n                    unset($yourmaintainers[$i1]);\n                    $yourmaintainers = array_values($yourmaintainers);\n                    $reset = true;\n                    break;\n                }\n            }\n            if ($reset) {\n                $i1 = -1;\n            }\n        }\n        $this->_unmatchedMaintainers($mymaintainers, $yourmaintainers);\n        $filelist = $this->getFilelist();\n        foreach ($pf1->getFilelist() as $file => $atts) {\n            if (!isset($filelist[$file])) {\n                $this->_missingFile($file);\n                $pass = false;\n            }\n        }\n        return $pass;\n    }\n\n    function _differentPackage($package)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('package' => $package,\n            'self' => $this->getPackage()),\n            'package.xml 1.0 package \"%package%\" does not match \"%self%\"');\n    }\n\n    function _differentVersion($version)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('version' => $version,\n            'self' => $this->getVersion()),\n            'package.xml 1.0 version \"%version%\" does not match \"%self%\"');\n    }\n\n    function _differentState($state)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('state' => $state,\n            'self' => $this->getState()),\n            'package.xml 1.0 state \"%state%\" does not match \"%self%\"');\n    }\n\n    function _differentRole($handle, $role, $selfrole)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('handle' => $handle,\n            'role' => $role, 'self' => $selfrole),\n            'package.xml 1.0 maintainer \"%handle%\" role \"%role%\" does not match \"%self%\"');\n    }\n\n    function _differentEmail($handle, $email, $selfemail)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('handle' => $handle,\n            'email' => $email, 'self' => $selfemail),\n            'package.xml 1.0 maintainer \"%handle%\" email \"%email%\" does not match \"%self%\"');\n    }\n\n    function _differentName($handle, $name, $selfname)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('handle' => $handle,\n            'name' => $name, 'self' => $selfname),\n            'package.xml 1.0 maintainer \"%handle%\" name \"%name%\" does not match \"%self%\"');\n    }\n\n    function _unmatchedMaintainers($my, $yours)\n    {\n        if ($my) {\n            array_walk($my, create_function('&$i, $k', '$i = $i[\"handle\"];'));\n            $this->_stack->push(__FUNCTION__, 'error', array('handles' => $my),\n                'package.xml 2.0 has unmatched extra maintainers \"%handles%\"');\n        }\n        if ($yours) {\n            array_walk($yours, create_function('&$i, $k', '$i = $i[\"handle\"];'));\n            $this->_stack->push(__FUNCTION__, 'error', array('handles' => $yours),\n                'package.xml 1.0 has unmatched extra maintainers \"%handles%\"');\n        }\n    }\n\n    function _differentNotes($notes)\n    {\n        $truncnotes = strlen($notes) < 25 ? $notes : substr($notes, 0, 24) . '...';\n        $truncmynotes = strlen($this->getNotes()) < 25 ? $this->getNotes() :\n            substr($this->getNotes(), 0, 24) . '...';\n        $this->_stack->push(__FUNCTION__, 'error', array('notes' => $truncnotes,\n            'self' => $truncmynotes),\n            'package.xml 1.0 release notes \"%notes%\" do not match \"%self%\"');\n    }\n\n    function _differentSummary($summary)\n    {\n        $truncsummary = strlen($summary) < 25 ? $summary : substr($summary, 0, 24) . '...';\n        $truncmysummary = strlen($this->getsummary()) < 25 ? $this->getSummary() :\n            substr($this->getsummary(), 0, 24) . '...';\n        $this->_stack->push(__FUNCTION__, 'error', array('summary' => $truncsummary,\n            'self' => $truncmysummary),\n            'package.xml 1.0 summary \"%summary%\" does not match \"%self%\"');\n    }\n\n    function _differentDescription($description)\n    {\n        $truncdescription = trim(strlen($description) < 25 ? $description : substr($description, 0, 24) . '...');\n        $truncmydescription = trim(strlen($this->getDescription()) < 25 ? $this->getDescription() :\n            substr($this->getdescription(), 0, 24) . '...');\n        $this->_stack->push(__FUNCTION__, 'error', array('description' => $truncdescription,\n            'self' => $truncmydescription),\n            'package.xml 1.0 description \"%description%\" does not match \"%self%\"');\n    }\n\n    function _missingFile($file)\n    {\n        $this->_stack->push(__FUNCTION__, 'error', array('file' => $file),\n            'package.xml 1.0 file \"%file%\" is not present in <contents>');\n    }\n\n    /**\n     * WARNING - do not use this function unless you know what you're doing\n     */\n    function setRawState($state)\n    {\n        if (!isset($this->_packageInfo['stability'])) {\n            $this->_packageInfo['stability'] = array();\n        }\n        $this->_packageInfo['stability']['release'] = $state;\n    }\n\n    /**\n     * WARNING - do not use this function unless you know what you're doing\n     */\n    function setRawCompatible($compatible)\n    {\n        $this->_packageInfo['compatible'] = $compatible;\n    }\n\n    /**\n     * WARNING - do not use this function unless you know what you're doing\n     */\n    function setRawPackage($package)\n    {\n        $this->_packageInfo['name'] = $package;\n    }\n\n    /**\n     * WARNING - do not use this function unless you know what you're doing\n     */\n    function setRawChannel($channel)\n    {\n        $this->_packageInfo['channel'] = $channel;\n    }\n\n    function setRequestedGroup($group)\n    {\n        $this->_requestedGroup = $group;\n    }\n\n    function getRequestedGroup()\n    {\n        if (isset($this->_requestedGroup)) {\n            return $this->_requestedGroup;\n        }\n        return false;\n    }\n\n    /**\n     * For saving in the registry.\n     *\n     * Set the last version that was installed\n     * @param string\n     */\n    function setLastInstalledVersion($version)\n    {\n        $this->_packageInfo['_lastversion'] = $version;\n    }\n\n    /**\n     * @return string|false\n     */\n    function getLastInstalledVersion()\n    {\n        if (isset($this->_packageInfo['_lastversion'])) {\n            return $this->_packageInfo['_lastversion'];\n        }\n        return false;\n    }\n\n    /**\n     * Determines whether this package.xml has post-install scripts or not\n     * @return array|false\n     */\n    function listPostinstallScripts()\n    {\n        $filelist = $this->getFilelist();\n        $contents = $this->getContents();\n        $contents = $contents['dir']['file'];\n        if (!is_array($contents) || !isset($contents[0])) {\n            $contents = array($contents);\n        }\n        $taskfiles = array();\n        foreach ($contents as $file) {\n            $atts = $file['attribs'];\n            unset($file['attribs']);\n            if (count($file)) {\n                $taskfiles[$atts['name']] = $file;\n            }\n        }\n        $common = new PEAR_Common;\n        $common->debug = $this->_config->get('verbose');\n        $this->_scripts = array();\n        $ret = array();\n        foreach ($taskfiles as $name => $tasks) {\n            if (!isset($filelist[$name])) {\n                // ignored files will not be in the filelist\n                continue;\n            }\n            $atts = $filelist[$name];\n            foreach ($tasks as $tag => $raw) {\n                $task = $this->getTask($tag);\n                $task = &new $task($this->_config, $common, PEAR_TASK_INSTALL);\n                if ($task->isScript()) {\n                    $ret[] = $filelist[$name]['installed_as'];\n                }\n            }\n        }\n        if (count($ret)) {\n            return $ret;\n        }\n        return false;\n    }\n\n    /**\n     * Initialize post-install scripts for running\n     *\n     * This method can be used to detect post-install scripts, as the return value\n     * indicates whether any exist\n     * @return bool\n     */\n    function initPostinstallScripts()\n    {\n        $filelist = $this->getFilelist();\n        $contents = $this->getContents();\n        $contents = $contents['dir']['file'];\n        if (!is_array($contents) || !isset($contents[0])) {\n            $contents = array($contents);\n        }\n        $taskfiles = array();\n        foreach ($contents as $file) {\n            $atts = $file['attribs'];\n            unset($file['attribs']);\n            if (count($file)) {\n                $taskfiles[$atts['name']] = $file;\n            }\n        }\n        $common = new PEAR_Common;\n        $common->debug = $this->_config->get('verbose');\n        $this->_scripts = array();\n        foreach ($taskfiles as $name => $tasks) {\n            if (!isset($filelist[$name])) {\n                // file was not installed due to installconditions\n                continue;\n            }\n            $atts = $filelist[$name];\n            foreach ($tasks as $tag => $raw) {\n                $taskname = $this->getTask($tag);\n                $task = &new $taskname($this->_config, $common, PEAR_TASK_INSTALL);\n                if (!$task->isScript()) {\n                    continue; // scripts are only handled after installation\n                }\n                $lastversion = isset($this->_packageInfo['_lastversion']) ?\n                    $this->_packageInfo['_lastversion'] : null;\n                $task->init($raw, $atts, $lastversion);\n                $res = $task->startSession($this, $atts['installed_as']);\n                if (!$res) {\n                    continue; // skip this file\n                }\n                if (PEAR::isError($res)) {\n                    return $res;\n                }\n                $assign = &$task;\n                $this->_scripts[] = &$assign;\n            }\n        }\n        if (count($this->_scripts)) {\n            return true;\n        }\n        return false;\n    }\n\n    function runPostinstallScripts()\n    {\n        if ($this->initPostinstallScripts()) {\n            $ui = &PEAR_Frontend::singleton();\n            if ($ui) {\n                $ui->runPostinstallScripts($this->_scripts, $this);\n            }\n        }\n    }\n\n\n    /**\n     * Convert a recursive set of <dir> and <file> tags into a single <dir> tag with\n     * <file> tags.\n     */\n    function flattenFilelist()\n    {\n        if (isset($this->_packageInfo['bundle'])) {\n            return;\n        }\n        $filelist = array();\n        if (isset($this->_packageInfo['contents']['dir']['dir'])) {\n            $this->_getFlattenedFilelist($filelist, $this->_packageInfo['contents']['dir']);\n            if (!isset($filelist[1])) {\n                $filelist = $filelist[0];\n            }\n            $this->_packageInfo['contents']['dir']['file'] = $filelist;\n            unset($this->_packageInfo['contents']['dir']['dir']);\n        } else {\n            // else already flattened but check for baseinstalldir propagation\n            if (isset($this->_packageInfo['contents']['dir']['attribs']['baseinstalldir'])) {\n                if (isset($this->_packageInfo['contents']['dir']['file'][0])) {\n                    foreach ($this->_packageInfo['contents']['dir']['file'] as $i => $file) {\n                        if (isset($file['attribs']['baseinstalldir'])) {\n                            continue;\n                        }\n                        $this->_packageInfo['contents']['dir']['file'][$i]['attribs']['baseinstalldir']\n                            = $this->_packageInfo['contents']['dir']['attribs']['baseinstalldir'];\n                    }\n                } else {\n                    if (!isset($this->_packageInfo['contents']['dir']['file']['attribs']['baseinstalldir'])) {\n                       $this->_packageInfo['contents']['dir']['file']['attribs']['baseinstalldir']\n                            = $this->_packageInfo['contents']['dir']['attribs']['baseinstalldir'];\n                    }\n                }\n            }\n        }\n    }\n\n    /**\n     * @param array the final flattened file list\n     * @param array the current directory being processed\n     * @param string|false any recursively inherited baeinstalldir attribute\n     * @param string private recursion variable\n     * @return array\n     * @access protected\n     */\n    function _getFlattenedFilelist(&$files, $dir, $baseinstall = false, $path = '')\n    {\n        if (isset($dir['attribs']) && isset($dir['attribs']['baseinstalldir'])) {\n            $baseinstall = $dir['attribs']['baseinstalldir'];\n        }\n        if (isset($dir['dir'])) {\n            if (!isset($dir['dir'][0])) {\n                $dir['dir'] = array($dir['dir']);\n            }\n            foreach ($dir['dir'] as $subdir) {\n                if (!isset($subdir['attribs']) || !isset($subdir['attribs']['name'])) {\n                    $name = '*unknown*';\n                } else {\n                    $name = $subdir['attribs']['name'];\n                }\n                $newpath = empty($path) ? $name :\n                    $path . '/' . $name;\n                $this->_getFlattenedFilelist($files, $subdir,\n                    $baseinstall, $newpath);\n            }\n        }\n        if (isset($dir['file'])) {\n            if (!isset($dir['file'][0])) {\n                $dir['file'] = array($dir['file']);\n            }\n            foreach ($dir['file'] as $file) {\n                $attrs = $file['attribs'];\n                $name = $attrs['name'];\n                if ($baseinstall && !isset($attrs['baseinstalldir'])) {\n                    $attrs['baseinstalldir'] = $baseinstall;\n                }\n                $attrs['name'] = empty($path) ? $name : $path . '/' . $name;\n                $attrs['name'] = preg_replace(array('!\\\\\\\\+!', '!/+!'), array('/', '/'),\n                    $attrs['name']);\n                $file['attribs'] = $attrs;\n                $files[] = $file;\n            }\n        }\n    }\n\n    function setConfig(&$config)\n    {\n        $this->_config = &$config;\n        $this->_registry = &$config->getRegistry();\n    }\n\n    function setLogger(&$logger)\n    {\n        if (!is_object($logger) || !method_exists($logger, 'log')) {\n            return PEAR::raiseError('Logger must be compatible with PEAR_Common::log');\n        }\n        $this->_logger = &$logger;\n    }\n\n    /**\n     * WARNING - do not use this function directly unless you know what you're doing\n     */\n    function setDeps($deps)\n    {\n        $this->_packageInfo['dependencies'] = $deps;\n    }\n\n    /**\n     * WARNING - do not use this function directly unless you know what you're doing\n     */\n    function setCompatible($compat)\n    {\n        $this->_packageInfo['compatible'] = $compat;\n    }\n\n    function setPackagefile($file, $archive = false)\n    {\n        $this->_packageFile = $file;\n        $this->_archiveFile = $archive ? $archive : $file;\n    }\n\n    /**\n     * Wrapper to {@link PEAR_ErrorStack::getErrors()}\n     * @param boolean determines whether to purge the error stack after retrieving\n     * @return array\n     */\n    function getValidationWarnings($purge = true)\n    {\n        return $this->_stack->getErrors($purge);\n    }\n\n    function getPackageFile()\n    {\n        return $this->_packageFile;\n    }\n\n    function getArchiveFile()\n    {\n        return $this->_archiveFile;\n    }\n\n\n    /**\n     * Directly set the array that defines this packagefile\n     *\n     * WARNING: no validation.  This should only be performed by internal methods\n     * inside PEAR or by inputting an array saved from an existing PEAR_PackageFile_v2\n     * @param array\n     */\n    function fromArray($pinfo)\n    {\n        unset($pinfo['old']);\n        unset($pinfo['xsdversion']);\n        $this->_incomplete = false;\n        $this->_packageInfo = $pinfo;\n    }\n\n    function isIncomplete()\n    {\n        return $this->_incomplete;\n    }\n\n    /**\n     * @return array\n     */\n    function toArray($forreg = false)\n    {\n        if (!$this->validate(PEAR_VALIDATE_NORMAL)) {\n            return false;\n        }\n        return $this->getArray($forreg);\n    }\n\n    function getArray($forReg = false)\n    {\n        if ($forReg) {\n            $arr = $this->_packageInfo;\n            $arr['old'] = array();\n            $arr['old']['version'] = $this->getVersion();\n            $arr['old']['release_date'] = $this->getDate();\n            $arr['old']['release_state'] = $this->getState();\n            $arr['old']['release_license'] = $this->getLicense();\n            $arr['old']['release_notes'] = $this->getNotes();\n            $arr['old']['release_deps'] = $this->getDeps();\n            $arr['old']['maintainers'] = $this->getMaintainers();\n            $arr['xsdversion'] = '2.0';\n            return $arr;\n        } else {\n            $info = $this->_packageInfo;\n            unset($info['dirtree']);\n            if (isset($info['_lastversion'])) {\n                unset($info['_lastversion']);\n            }\n            if (isset($info['#binarypackage'])) {\n                unset($info['#binarypackage']);\n            }\n            return $info;\n        }\n    }\n\n    function packageInfo($field)\n    {\n        $arr = $this->getArray(true);\n        if ($field == 'state') {\n            return $arr['stability']['release'];\n        }\n        if ($field == 'api-version') {\n            return $arr['version']['api'];\n        }\n        if ($field == 'api-state') {\n            return $arr['stability']['api'];\n        }\n        if (isset($arr['old'][$field])) {\n            if (!is_string($arr['old'][$field])) {\n                return null;\n            }\n            return $arr['old'][$field];\n        }\n        if (isset($arr[$field])) {\n            if (!is_string($arr[$field])) {\n                return null;\n            }\n            return $arr[$field];\n        }\n        return null;\n    }\n\n    function getName()\n    {\n        return $this->getPackage();\n    }\n\n    function getPackage()\n    {\n        if (isset($this->_packageInfo['name'])) {\n            return $this->_packageInfo['name'];\n        }\n        return false;\n    }\n\n    function getChannel()\n    {\n        if (isset($this->_packageInfo['uri'])) {\n            return '__uri';\n        }\n        if (isset($this->_packageInfo['channel'])) {\n            return strtolower($this->_packageInfo['channel']);\n        }\n        return false;\n    }\n\n    function getUri()\n    {\n        if (isset($this->_packageInfo['uri'])) {\n            return $this->_packageInfo['uri'];\n        }\n        return false;\n    }\n\n    function getExtends()\n    {\n        if (isset($this->_packageInfo['extends'])) {\n            return $this->_packageInfo['extends'];\n        }\n        return false;\n    }\n\n    function getSummary()\n    {\n        if (isset($this->_packageInfo['summary'])) {\n            return $this->_packageInfo['summary'];\n        }\n        return false;\n    }\n\n    function getDescription()\n    {\n        if (isset($this->_packageInfo['description'])) {\n            return $this->_packageInfo['description'];\n        }\n        return false;\n    }\n\n    function getMaintainers($raw = false)\n    {\n        if (!isset($this->_packageInfo['lead'])) {\n            return false;\n        }\n        if ($raw) {\n            $ret = array('lead' => $this->_packageInfo['lead']);\n            (isset($this->_packageInfo['developer'])) ?\n                $ret['developer'] = $this->_packageInfo['developer'] :null;\n            (isset($this->_packageInfo['contributor'])) ?\n                $ret['contributor'] = $this->_packageInfo['contributor'] :null;\n            (isset($this->_packageInfo['helper'])) ?\n                $ret['helper'] = $this->_packageInfo['helper'] :null;\n            return $ret;\n        } else {\n            $ret = array();\n            $leads = isset($this->_packageInfo['lead'][0]) ? $this->_packageInfo['lead'] :\n                array($this->_packageInfo['lead']);\n            foreach ($leads as $lead) {\n                $s = $lead;\n                $s['handle'] = $s['user'];\n                unset($s['user']);\n                $s['role'] = 'lead';\n                $ret[] = $s;\n            }\n            if (isset($this->_packageInfo['developer'])) {\n                $leads = isset($this->_packageInfo['developer'][0]) ?\n                    $this->_packageInfo['developer'] :\n                    array($this->_packageInfo['developer']);\n                foreach ($leads as $maintainer) {\n                    $s = $maintainer;\n                    $s['handle'] = $s['user'];\n                    unset($s['user']);\n                    $s['role'] = 'developer';\n                    $ret[] = $s;\n                }\n            }\n            if (isset($this->_packageInfo['contributor'])) {\n                $leads = isset($this->_packageInfo['contributor'][0]) ?\n                    $this->_packageInfo['contributor'] :\n                    array($this->_packageInfo['contributor']);\n                foreach ($leads as $maintainer) {\n                    $s = $maintainer;\n                    $s['handle'] = $s['user'];\n                    unset($s['user']);\n                    $s['role'] = 'contributor';\n                    $ret[] = $s;\n                }\n            }\n            if (isset($this->_packageInfo['helper'])) {\n                $leads = isset($this->_packageInfo['helper'][0]) ?\n                    $this->_packageInfo['helper'] :\n                    array($this->_packageInfo['helper']);\n                foreach ($leads as $maintainer) {\n                    $s = $maintainer;\n                    $s['handle'] = $s['user'];\n                    unset($s['user']);\n                    $s['role'] = 'helper';\n                    $ret[] = $s;\n                }\n            }\n            return $ret;\n        }\n        return false;\n    }\n\n    function getLeads()\n    {\n        if (isset($this->_packageInfo['lead'])) {\n            return $this->_packageInfo['lead'];\n        }\n        return false;\n    }\n\n    function getDevelopers()\n    {\n        if (isset($this->_packageInfo['developer'])) {\n            return $this->_packageInfo['developer'];\n        }\n        return false;\n    }\n\n    function getContributors()\n    {\n        if (isset($this->_packageInfo['contributor'])) {\n            return $this->_packageInfo['contributor'];\n        }\n        return false;\n    }\n\n    function getHelpers()\n    {\n        if (isset($this->_packageInfo['helper'])) {\n            return $this->_packageInfo['helper'];\n        }\n        return false;\n    }\n\n    function setDate($date)\n    {\n        if (!isset($this->_packageInfo['date'])) {\n            // ensure that the extends tag is set up in the right location\n            $this->_packageInfo = $this->_insertBefore($this->_packageInfo,\n                array('time', 'version',\n                    'stability', 'license', 'notes', 'contents', 'compatible',\n                    'dependencies', 'providesextension', 'srcpackage', 'srcuri',\n                    'phprelease', 'extsrcrelease', 'extbinrelease', 'zendextsrcrelease',\n                    'zendextbinrelease', 'bundle', 'changelog'), array(), 'date');\n        }\n        $this->_packageInfo['date'] = $date;\n        $this->_isValid = 0;\n    }\n\n    function setTime($time)\n    {\n        $this->_isValid = 0;\n        if (!isset($this->_packageInfo['time'])) {\n            // ensure that the time tag is set up in the right location\n            $this->_packageInfo = $this->_insertBefore($this->_packageInfo,\n                    array('version',\n                    'stability', 'license', 'notes', 'contents', 'compatible',\n                    'dependencies', 'providesextension', 'srcpackage', 'srcuri',\n                    'phprelease', 'extsrcrelease', 'extbinrelease', 'zendextsrcrelease',\n                    'zendextbinrelease', 'bundle', 'changelog'), $time, 'time');\n        }\n        $this->_packageInfo['time'] = $time;\n    }\n\n    function getDate()\n    {\n        if (isset($this->_packageInfo['date'])) {\n            return $this->_packageInfo['date'];\n        }\n        return false;\n    }\n\n    function getTime()\n    {\n        if (isset($this->_packageInfo['time'])) {\n            return $this->_packageInfo['time'];\n        }\n        return false;\n    }\n\n    /**\n     * @param package|api version category to return\n     */\n    function getVersion($key = 'release')\n    {\n        if (isset($this->_packageInfo['version'][$key])) {\n            return $this->_packageInfo['version'][$key];\n        }\n        return false;\n    }\n\n    function getStability()\n    {\n        if (isset($this->_packageInfo['stability'])) {\n            return $this->_packageInfo['stability'];\n        }\n        return false;\n    }\n\n    function getState($key = 'release')\n    {\n        if (isset($this->_packageInfo['stability'][$key])) {\n            return $this->_packageInfo['stability'][$key];\n        }\n        return false;\n    }\n\n    function getLicense($raw = false)\n    {\n        if (isset($this->_packageInfo['license'])) {\n            if ($raw) {\n                return $this->_packageInfo['license'];\n            }\n            if (is_array($this->_packageInfo['license'])) {\n                return $this->_packageInfo['license']['_content'];\n            } else {\n                return $this->_packageInfo['license'];\n            }\n        }\n        return false;\n    }\n\n    function getLicenseLocation()\n    {\n        if (!isset($this->_packageInfo['license']) || !is_array($this->_packageInfo['license'])) {\n            return false;\n        }\n        return $this->_packageInfo['license']['attribs'];\n    }\n\n    function getNotes()\n    {\n        if (isset($this->_packageInfo['notes'])) {\n            return $this->_packageInfo['notes'];\n        }\n        return false;\n    }\n\n    /**\n     * Return the <usesrole> tag contents, if any\n     * @return array|false\n     */\n    function getUsesrole()\n    {\n        if (isset($this->_packageInfo['usesrole'])) {\n            return $this->_packageInfo['usesrole'];\n        }\n        return false;\n    }\n\n    /**\n     * Return the <usestask> tag contents, if any\n     * @return array|false\n     */\n    function getUsestask()\n    {\n        if (isset($this->_packageInfo['usestask'])) {\n            return $this->_packageInfo['usestask'];\n        }\n        return false;\n    }\n\n    /**\n     * This should only be used to retrieve filenames and install attributes\n     */\n    function getFilelist($preserve = false)\n    {\n        if (isset($this->_packageInfo['filelist']) && !$preserve) {\n            return $this->_packageInfo['filelist'];\n        }\n        $this->flattenFilelist();\n        if ($contents = $this->getContents()) {\n            $ret = array();\n            if (!isset($contents['dir'])) {\n                return false;\n            }\n            if (!isset($contents['dir']['file'][0])) {\n                $contents['dir']['file'] = array($contents['dir']['file']);\n            }\n            foreach ($contents['dir']['file'] as $file) {\n                $name = $file['attribs']['name'];\n                if (!$preserve) {\n                    $file = $file['attribs'];\n                }\n                $ret[$name] = $file;\n            }\n            if (!$preserve) {\n                $this->_packageInfo['filelist'] = $ret;\n            }\n            return $ret;\n        }\n        return false;\n    }\n\n    /**\n     * Return configure options array, if any\n     *\n     * @return array|false\n     */\n    function getConfigureOptions()\n    {\n        if ($this->getPackageType() != 'extsrc' && $this->getPackageType() != 'zendextsrc') {\n            return false;\n        }\n\n        $releases = $this->getReleases();\n        if (isset($releases[0])) {\n            $releases = $releases[0];\n        }\n\n        if (isset($releases['configureoption'])) {\n            if (!isset($releases['configureoption'][0])) {\n                $releases['configureoption'] = array($releases['configureoption']);\n            }\n\n            for ($i = 0; $i < count($releases['configureoption']); $i++) {\n                $releases['configureoption'][$i] = $releases['configureoption'][$i]['attribs'];\n            }\n\n            return $releases['configureoption'];\n        }\n\n        return false;\n    }\n\n    /**\n     * This is only used at install-time, after all serialization\n     * is over.\n     */\n    function resetFilelist()\n    {\n        $this->_packageInfo['filelist'] = array();\n    }\n\n    /**\n     * Retrieve a list of files that should be installed on this computer\n     * @return array\n     */\n    function getInstallationFilelist($forfilecheck = false)\n    {\n        $contents = $this->getFilelist(true);\n        if (isset($contents['dir']['attribs']['baseinstalldir'])) {\n            $base = $contents['dir']['attribs']['baseinstalldir'];\n        }\n        if (isset($this->_packageInfo['bundle'])) {\n            return PEAR::raiseError(\n                'Exception: bundles should be handled in download code only');\n        }\n        $release = $this->getReleases();\n        if ($release) {\n            if (!isset($release[0])) {\n                if (!isset($release['installconditions']) && !isset($release['filelist'])) {\n                    if ($forfilecheck) {\n                        return $this->getFilelist();\n                    }\n                    return $contents;\n                }\n                $release = array($release);\n            }\n            $depchecker = &$this->getPEARDependency2($this->_config, array(),\n                array('channel' => $this->getChannel(), 'package' => $this->getPackage()),\n                PEAR_VALIDATE_INSTALLING);\n            foreach ($release as $instance) {\n                if (isset($instance['installconditions'])) {\n                    $installconditions = $instance['installconditions'];\n                    if (is_array($installconditions)) {\n                        PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n                        foreach ($installconditions as $type => $conditions) {\n                            if (!isset($conditions[0])) {\n                                $conditions = array($conditions);\n                            }\n                            foreach ($conditions as $condition) {\n                                $ret = $depchecker->{\"validate{$type}Dependency\"}($condition);\n                                if (PEAR::isError($ret)) {\n                                    PEAR::popErrorHandling();\n                                    continue 3; // skip this release\n                                }\n                            }\n                        }\n                        PEAR::popErrorHandling();\n                    }\n                }\n                // this is the release to use\n                if (isset($instance['filelist'])) {\n                    // ignore files\n                    if (isset($instance['filelist']['ignore'])) {\n                        $ignore = isset($instance['filelist']['ignore'][0]) ?\n                            $instance['filelist']['ignore'] :\n                            array($instance['filelist']['ignore']);\n                        foreach ($ignore as $ig) {\n                            unset ($contents[$ig['attribs']['name']]);\n                        }\n                    }\n                    // install files as this name\n                    if (isset($instance['filelist']['install'])) {\n                        $installas = isset($instance['filelist']['install'][0]) ?\n                            $instance['filelist']['install'] :\n                            array($instance['filelist']['install']);\n                        foreach ($installas as $as) {\n                            $contents[$as['attribs']['name']]['attribs']['install-as'] =\n                                $as['attribs']['as'];\n                        }\n                    }\n                }\n                if ($forfilecheck) {\n                    foreach ($contents as $file => $attrs) {\n                        $contents[$file] = $attrs['attribs'];\n                    }\n                }\n                return $contents;\n            }\n        } else { // simple release - no installconditions or install-as\n            if ($forfilecheck) {\n                return $this->getFilelist();\n            }\n            return $contents;\n        }\n        // no releases matched\n        return PEAR::raiseError('No releases in package.xml matched the existing operating ' .\n            'system, extensions installed, or architecture, cannot install');\n    }\n\n    /**\n     * This is only used at install-time, after all serialization\n     * is over.\n     * @param string file name\n     * @param string installed path\n     */\n    function setInstalledAs($file, $path)\n    {\n        if ($path) {\n            return $this->_packageInfo['filelist'][$file]['installed_as'] = $path;\n        }\n        unset($this->_packageInfo['filelist'][$file]['installed_as']);\n    }\n\n    function getInstalledLocation($file)\n    {\n        if (isset($this->_packageInfo['filelist'][$file]['installed_as'])) {\n            return $this->_packageInfo['filelist'][$file]['installed_as'];\n        }\n        return false;\n    }\n\n    /**\n     * This is only used at install-time, after all serialization\n     * is over.\n     */\n    function installedFile($file, $atts)\n    {\n        if (isset($this->_packageInfo['filelist'][$file])) {\n            $this->_packageInfo['filelist'][$file] =\n                array_merge($this->_packageInfo['filelist'][$file], $atts['attribs']);\n        } else {\n            $this->_packageInfo['filelist'][$file] = $atts['attribs'];\n        }\n    }\n\n    /**\n     * Retrieve the contents tag\n     */\n    function getContents()\n    {\n        if (isset($this->_packageInfo['contents'])) {\n            return $this->_packageInfo['contents'];\n        }\n        return false;\n    }\n\n    /**\n     * @param string full path to file\n     * @param string attribute name\n     * @param string attribute value\n     * @param int risky but fast - use this to choose a file based on its position in the list\n     *            of files.  Index is zero-based like PHP arrays.\n     * @return bool success of operation\n     */\n    function setFileAttribute($filename, $attr, $value, $index = false)\n    {\n        $this->_isValid = 0;\n        if (in_array($attr, array('role', 'name', 'baseinstalldir'))) {\n            $this->_filesValid = false;\n        }\n        if ($index !== false &&\n              isset($this->_packageInfo['contents']['dir']['file'][$index]['attribs'])) {\n            $this->_packageInfo['contents']['dir']['file'][$index]['attribs'][$attr] = $value;\n            return true;\n        }\n        if (!isset($this->_packageInfo['contents']['dir']['file'])) {\n            return false;\n        }\n        $files = $this->_packageInfo['contents']['dir']['file'];\n        if (!isset($files[0])) {\n            $files = array($files);\n            $ind = false;\n        } else {\n            $ind = true;\n        }\n        foreach ($files as $i => $file) {\n            if (isset($file['attribs'])) {\n                if ($file['attribs']['name'] == $filename) {\n                    if ($ind) {\n                        $this->_packageInfo['contents']['dir']['file'][$i]['attribs'][$attr] = $value;\n                    } else {\n                        $this->_packageInfo['contents']['dir']['file']['attribs'][$attr] = $value;\n                    }\n                    return true;\n                }\n            }\n        }\n        return false;\n    }\n\n    function setDirtree($path)\n    {\n        if (!isset($this->_packageInfo['dirtree'])) {\n            $this->_packageInfo['dirtree'] = array();\n        }\n        $this->_packageInfo['dirtree'][$path] = true;\n    }\n\n    function getDirtree()\n    {\n        if (isset($this->_packageInfo['dirtree']) && count($this->_packageInfo['dirtree'])) {\n            return $this->_packageInfo['dirtree'];\n        }\n        return false;\n    }\n\n    function resetDirtree()\n    {\n        unset($this->_packageInfo['dirtree']);\n    }\n\n    /**\n     * Determines whether this package claims it is compatible with the version of\n     * the package that has a recommended version dependency\n     * @param PEAR_PackageFile_v2|PEAR_PackageFile_v1|PEAR_Downloader_Package\n     * @return boolean\n     */\n    function isCompatible($pf)\n    {\n        if (!isset($this->_packageInfo['compatible'])) {\n            return false;\n        }\n        if (!isset($this->_packageInfo['channel'])) {\n            return false;\n        }\n        $me = $pf->getVersion();\n        $compatible = $this->_packageInfo['compatible'];\n        if (!isset($compatible[0])) {\n            $compatible = array($compatible);\n        }\n        $found = false;\n        foreach ($compatible as $info) {\n            if (strtolower($info['name']) == strtolower($pf->getPackage())) {\n                if (strtolower($info['channel']) == strtolower($pf->getChannel())) {\n                    $found = true;\n                    break;\n                }\n            }\n        }\n        if (!$found) {\n            return false;\n        }\n        if (isset($info['exclude'])) {\n            if (!isset($info['exclude'][0])) {\n                $info['exclude'] = array($info['exclude']);\n            }\n            foreach ($info['exclude'] as $exclude) {\n                if (version_compare($me, $exclude, '==')) {\n                    return false;\n                }\n            }\n        }\n        if (version_compare($me, $info['min'], '>=') && version_compare($me, $info['max'], '<=')) {\n            return true;\n        }\n        return false;\n    }\n\n    /**\n     * @return array|false\n     */\n    function getCompatible()\n    {\n        if (isset($this->_packageInfo['compatible'])) {\n            return $this->_packageInfo['compatible'];\n        }\n        return false;\n    }\n\n    function getDependencies()\n    {\n        if (isset($this->_packageInfo['dependencies'])) {\n            return $this->_packageInfo['dependencies'];\n        }\n        return false;\n    }\n\n    function isSubpackageOf($p)\n    {\n        return $p->isSubpackage($this);\n    }\n\n    /**\n     * Determines whether the passed in package is a subpackage of this package.\n     *\n     * No version checking is done, only name verification.\n     * @param PEAR_PackageFile_v1|PEAR_PackageFile_v2\n     * @return bool\n     */\n    function isSubpackage($p)\n    {\n        $sub = array();\n        if (isset($this->_packageInfo['dependencies']['required']['subpackage'])) {\n            $sub = $this->_packageInfo['dependencies']['required']['subpackage'];\n            if (!isset($sub[0])) {\n                $sub = array($sub);\n            }\n        }\n        if (isset($this->_packageInfo['dependencies']['optional']['subpackage'])) {\n            $sub1 = $this->_packageInfo['dependencies']['optional']['subpackage'];\n            if (!isset($sub1[0])) {\n                $sub1 = array($sub1);\n            }\n            $sub = array_merge($sub, $sub1);\n        }\n        if (isset($this->_packageInfo['dependencies']['group'])) {\n            $group = $this->_packageInfo['dependencies']['group'];\n            if (!isset($group[0])) {\n                $group = array($group);\n            }\n            foreach ($group as $deps) {\n                if (isset($deps['subpackage'])) {\n                    $sub2 = $deps['subpackage'];\n                    if (!isset($sub2[0])) {\n                        $sub2 = array($sub2);\n                    }\n                    $sub = array_merge($sub, $sub2);\n                }\n            }\n        }\n        foreach ($sub as $dep) {\n            if (strtolower($dep['name']) == strtolower($p->getPackage())) {\n                if (isset($dep['channel'])) {\n                    if (strtolower($dep['channel']) == strtolower($p->getChannel())) {\n                        return true;\n                    }\n                } else {\n                    if ($dep['uri'] == $p->getURI()) {\n                        return true;\n                    }\n                }\n            }\n        }\n        return false;\n    }\n\n    function dependsOn($package, $channel)\n    {\n        if (!($deps = $this->getDependencies())) {\n            return false;\n        }\n        foreach (array('package', 'subpackage') as $type) {\n            foreach (array('required', 'optional') as $needed) {\n                if (isset($deps[$needed][$type])) {\n                    if (!isset($deps[$needed][$type][0])) {\n                        $deps[$needed][$type] = array($deps[$needed][$type]);\n                    }\n                    foreach ($deps[$needed][$type] as $dep) {\n                        $depchannel = isset($dep['channel']) ? $dep['channel'] : '__uri';\n                        if (strtolower($dep['name']) == strtolower($package) &&\n                              $depchannel == $channel) {\n                            return true;\n                        }\n                    }\n                }\n            }\n            if (isset($deps['group'])) {\n                if (!isset($deps['group'][0])) {\n                    $dep['group'] = array($deps['group']);\n                }\n                foreach ($deps['group'] as $group) {\n                    if (isset($group[$type])) {\n                        if (!is_array($group[$type])) {\n                            $group[$type] = array($group[$type]);\n                        }\n                        foreach ($group[$type] as $dep) {\n                            $depchannel = isset($dep['channel']) ? $dep['channel'] : '__uri';\n                            if (strtolower($dep['name']) == strtolower($package) &&\n                                  $depchannel == $channel) {\n                                return true;\n                            }\n                        }\n                    }\n                }\n            }\n        }\n        return false;\n    }\n\n    /**\n     * Get the contents of a dependency group\n     * @param string\n     * @return array|false\n     */\n    function getDependencyGroup($name)\n    {\n        $name = strtolower($name);\n        if (!isset($this->_packageInfo['dependencies']['group'])) {\n            return false;\n        }\n        $groups = $this->_packageInfo['dependencies']['group'];\n        if (!isset($groups[0])) {\n            $groups = array($groups);\n        }\n        foreach ($groups as $group) {\n            if (strtolower($group['attribs']['name']) == $name) {\n                return $group;\n            }\n        }\n        return false;\n    }\n\n    /**\n     * Retrieve a partial package.xml 1.0 representation of dependencies\n     *\n     * a very limited representation of dependencies is returned by this method.\n     * The <exclude> tag for excluding certain versions of a dependency is\n     * completely ignored.  In addition, dependency groups are ignored, with the\n     * assumption that all dependencies in dependency groups are also listed in\n     * the optional group that work with all dependency groups\n     * @param boolean return package.xml 2.0 <dependencies> tag\n     * @return array|false\n     */\n    function getDeps($raw = false, $nopearinstaller = false)\n    {\n        if (isset($this->_packageInfo['dependencies'])) {\n            if ($raw) {\n                return $this->_packageInfo['dependencies'];\n            }\n            $ret = array();\n            $map = array(\n                'php' => 'php',\n                'package' => 'pkg',\n                'subpackage' => 'pkg',\n                'extension' => 'ext',\n                'os' => 'os',\n                'pearinstaller' => 'pkg',\n                );\n            foreach (array('required', 'optional') as $type) {\n                $optional = ($type == 'optional') ? 'yes' : 'no';\n                if (!isset($this->_packageInfo['dependencies'][$type])\n                    || empty($this->_packageInfo['dependencies'][$type])) {\n                    continue;\n                }\n                foreach ($this->_packageInfo['dependencies'][$type] as $dtype => $deps) {\n                    if ($dtype == 'pearinstaller' && $nopearinstaller) {\n                        continue;\n                    }\n                    if (!isset($deps[0])) {\n                        $deps = array($deps);\n                    }\n                    foreach ($deps as $dep) {\n                        if (!isset($map[$dtype])) {\n                            // no support for arch type\n                            continue;\n                        }\n                        if ($dtype == 'pearinstaller') {\n                            $dep['name'] = 'PEAR';\n                            $dep['channel'] = 'pear.php.net';\n                        }\n                        $s = array('type' => $map[$dtype]);\n                        if (isset($dep['channel'])) {\n                            $s['channel'] = $dep['channel'];\n                        }\n                        if (isset($dep['uri'])) {\n                            $s['uri'] = $dep['uri'];\n                        }\n                        if (isset($dep['name'])) {\n                            $s['name'] = $dep['name'];\n                        }\n                        if (isset($dep['conflicts'])) {\n                            $s['rel'] = 'not';\n                        } else {\n                            if (!isset($dep['min']) &&\n                                  !isset($dep['max'])) {\n                                $s['rel'] = 'has';\n                                $s['optional'] = $optional;\n                            } elseif (isset($dep['min']) &&\n                                  isset($dep['max'])) {\n                                $s['rel'] = 'ge';\n                                $s1 = $s;\n                                $s1['rel'] = 'le';\n                                $s['version'] = $dep['min'];\n                                $s1['version'] = $dep['max'];\n                                if (isset($dep['channel'])) {\n                                    $s1['channel'] = $dep['channel'];\n                                }\n                                if ($dtype != 'php') {\n                                    $s['name'] = $dep['name'];\n                                    $s1['name'] = $dep['name'];\n                                }\n                                $s['optional'] = $optional;\n                                $s1['optional'] = $optional;\n                                $ret[] = $s1;\n                            } elseif (isset($dep['min'])) {\n                                if (isset($dep['exclude']) &&\n                                      $dep['exclude'] == $dep['min']) {\n                                    $s['rel'] = 'gt';\n                                } else {\n                                    $s['rel'] = 'ge';\n                                }\n                                $s['version'] = $dep['min'];\n                                $s['optional'] = $optional;\n                                if ($dtype != 'php') {\n                                    $s['name'] = $dep['name'];\n                                }\n                            } elseif (isset($dep['max'])) {\n                                if (isset($dep['exclude']) &&\n                                      $dep['exclude'] == $dep['max']) {\n                                    $s['rel'] = 'lt';\n                                } else {\n                                    $s['rel'] = 'le';\n                                }\n                                $s['version'] = $dep['max'];\n                                $s['optional'] = $optional;\n                                if ($dtype != 'php') {\n                                    $s['name'] = $dep['name'];\n                                }\n                            }\n                        }\n                        $ret[] = $s;\n                    }\n                }\n            }\n            if (count($ret)) {\n                return $ret;\n            }\n        }\n        return false;\n    }\n\n    /**\n     * @return php|extsrc|extbin|zendextsrc|zendextbin|bundle|false\n     */\n    function getPackageType()\n    {\n        if (isset($this->_packageInfo['phprelease'])) {\n            return 'php';\n        }\n        if (isset($this->_packageInfo['extsrcrelease'])) {\n            return 'extsrc';\n        }\n        if (isset($this->_packageInfo['extbinrelease'])) {\n            return 'extbin';\n        }\n        if (isset($this->_packageInfo['zendextsrcrelease'])) {\n            return 'zendextsrc';\n        }\n        if (isset($this->_packageInfo['zendextbinrelease'])) {\n            return 'zendextbin';\n        }\n        if (isset($this->_packageInfo['bundle'])) {\n            return 'bundle';\n        }\n        return false;\n    }\n\n    /**\n     * @return array|false\n     */\n    function getReleases()\n    {\n        $type = $this->getPackageType();\n        if ($type != 'bundle') {\n            $type .= 'release';\n        }\n        if ($this->getPackageType() && isset($this->_packageInfo[$type])) {\n            return $this->_packageInfo[$type];\n        }\n        return false;\n    }\n\n    /**\n     * @return array\n     */\n    function getChangelog()\n    {\n        if (isset($this->_packageInfo['changelog'])) {\n            return $this->_packageInfo['changelog'];\n        }\n        return false;\n    }\n\n    function hasDeps()\n    {\n        return isset($this->_packageInfo['dependencies']);\n    }\n\n    function getPackagexmlVersion()\n    {\n        if (isset($this->_packageInfo['zendextsrcrelease'])) {\n            return '2.1';\n        }\n        if (isset($this->_packageInfo['zendextbinrelease'])) {\n            return '2.1';\n        }\n        return '2.0';\n    }\n\n    /**\n     * @return array|false\n     */\n    function getSourcePackage()\n    {\n        if (isset($this->_packageInfo['extbinrelease']) ||\n              isset($this->_packageInfo['zendextbinrelease'])) {\n            return array('channel' => $this->_packageInfo['srcchannel'],\n                         'package' => $this->_packageInfo['srcpackage']);\n        }\n        return false;\n    }\n\n    function getBundledPackages()\n    {\n        if (isset($this->_packageInfo['bundle'])) {\n            return $this->_packageInfo['contents']['bundledpackage'];\n        }\n        return false;\n    }\n\n    function getLastModified()\n    {\n        if (isset($this->_packageInfo['_lastmodified'])) {\n            return $this->_packageInfo['_lastmodified'];\n        }\n        return false;\n    }\n\n    /**\n     * Get the contents of a file listed within the package.xml\n     * @param string\n     * @return string\n     */\n    function getFileContents($file)\n    {\n        if ($this->_archiveFile == $this->_packageFile) { // unpacked\n            $dir = dirname($this->_packageFile);\n            $file = $dir . DIRECTORY_SEPARATOR . $file;\n            $file = str_replace(array('/', '\\\\'),\n                array(DIRECTORY_SEPARATOR, DIRECTORY_SEPARATOR), $file);\n            if (file_exists($file) && is_readable($file)) {\n                return implode('', file($file));\n            }\n        } else { // tgz\n            $tar = &new Archive_Tar($this->_archiveFile);\n            $tar->pushErrorHandling(PEAR_ERROR_RETURN);\n            if ($file != 'package.xml' && $file != 'package2.xml') {\n                $file = $this->getPackage() . '-' . $this->getVersion() . '/' . $file;\n            }\n            $file = $tar->extractInString($file);\n            $tar->popErrorHandling();\n            if (PEAR::isError($file)) {\n                return PEAR::raiseError(\"Cannot locate file '$file' in archive\");\n            }\n            return $file;\n        }\n    }\n\n    function &getRW()\n    {\n        if (!class_exists('PEAR_PackageFile_v2_rw')) {\n            require_once 'PEAR/PackageFile/v2/rw.php';\n        }\n        $a = new PEAR_PackageFile_v2_rw;\n        foreach (get_object_vars($this) as $name => $unused) {\n            if (!isset($this->$name)) {\n                continue;\n            }\n            if ($name == '_config' || $name == '_logger'|| $name == '_registry' ||\n                  $name == '_stack') {\n                $a->$name = &$this->$name;\n            } else {\n                $a->$name = $this->$name;\n            }\n        }\n        return $a;\n    }\n\n    function &getDefaultGenerator()\n    {\n        if (!class_exists('PEAR_PackageFile_Generator_v2')) {\n            require_once 'PEAR/PackageFile/Generator/v2.php';\n        }\n        $a = &new PEAR_PackageFile_Generator_v2($this);\n        return $a;\n    }\n\n    function analyzeSourceCode($file, $string = false)\n    {\n        if (!isset($this->_v2Validator) ||\n              !is_a($this->_v2Validator, 'PEAR_PackageFile_v2_Validator')) {\n            if (!class_exists('PEAR_PackageFile_v2_Validator')) {\n                require_once 'PEAR/PackageFile/v2/Validator.php';\n            }\n            $this->_v2Validator = new PEAR_PackageFile_v2_Validator;\n        }\n        return $this->_v2Validator->analyzeSourceCode($file, $string);\n    }\n\n    function validate($state = PEAR_VALIDATE_NORMAL)\n    {\n        if (!isset($this->_packageInfo) || !is_array($this->_packageInfo)) {\n            return false;\n        }\n        if (!isset($this->_v2Validator) ||\n              !is_a($this->_v2Validator, 'PEAR_PackageFile_v2_Validator')) {\n            if (!class_exists('PEAR_PackageFile_v2_Validator')) {\n                require_once 'PEAR/PackageFile/v2/Validator.php';\n            }\n            $this->_v2Validator = new PEAR_PackageFile_v2_Validator;\n        }\n        if (isset($this->_packageInfo['xsdversion'])) {\n            unset($this->_packageInfo['xsdversion']);\n        }\n        return $this->_v2Validator->validate($this, $state);\n    }\n\n    function getTasksNs()\n    {\n        if (!isset($this->_tasksNs)) {\n            if (isset($this->_packageInfo['attribs'])) {\n                foreach ($this->_packageInfo['attribs'] as $name => $value) {\n                    if ($value == 'http://pear.php.net/dtd/tasks-1.0') {\n                        $this->_tasksNs = str_replace('xmlns:', '', $name);\n                        break;\n                    }\n                }\n            }\n        }\n        return $this->_tasksNs;\n    }\n\n    /**\n     * Determine whether a task name is a valid task.  Custom tasks may be defined\n     * using subdirectories by putting a \"-\" in the name, as in <tasks:mycustom-task>\n     *\n     * Note that this method will auto-load the task class file and test for the existence\n     * of the name with \"-\" replaced by \"_\" as in PEAR/Task/mycustom/task.php makes class\n     * PEAR_Task_mycustom_task\n     * @param string\n     * @return boolean\n     */\n    function getTask($task)\n    {\n        $this->getTasksNs();\n        // transform all '-' to '/' and 'tasks:' to '' so tasks:replace becomes replace\n        $task = str_replace(array($this->_tasksNs . ':', '-'), array('', ' '), $task);\n        $taskfile = str_replace(' ', '/', ucwords($task));\n        $task = str_replace(array(' ', '/'), '_', ucwords($task));\n        if (class_exists(\"PEAR_Task_$task\")) {\n            return \"PEAR_Task_$task\";\n        }\n        $fp = @fopen(\"PEAR/Task/$taskfile.php\", 'r', true);\n        if ($fp) {\n            fclose($fp);\n            require_once \"PEAR/Task/$taskfile.php\";\n            return \"PEAR_Task_$task\";\n        }\n        return false;\n    }\n\n    /**\n     * Key-friendly array_splice\n     * @param tagname to splice a value in before\n     * @param mixed the value to splice in\n     * @param string the new tag name\n     */\n    function _ksplice($array, $key, $value, $newkey)\n    {\n        $offset = array_search($key, array_keys($array));\n        $after = array_slice($array, $offset);\n        $before = array_slice($array, 0, $offset);\n        $before[$newkey] = $value;\n        return array_merge($before, $after);\n    }\n\n    /**\n     * @param array a list of possible keys, in the order they may occur\n     * @param mixed contents of the new package.xml tag\n     * @param string tag name\n     * @access private\n     */\n    function _insertBefore($array, $keys, $contents, $newkey)\n    {\n        foreach ($keys as $key) {\n            if (isset($array[$key])) {\n                return $array = $this->_ksplice($array, $key, $contents, $newkey);\n            }\n        }\n        $array[$newkey] = $contents;\n        return $array;\n    }\n\n    /**\n     * @param subsection of {@link $_packageInfo}\n     * @param array|string tag contents\n     * @param array format:\n     * <pre>\n     * array(\n     *   tagname => array(list of tag names that follow this one),\n     *   childtagname => array(list of child tag names that follow this one),\n     * )\n     * </pre>\n     *\n     * This allows construction of nested tags\n     * @access private\n     */\n    function _mergeTag($manip, $contents, $order)\n    {\n        if (count($order)) {\n            foreach ($order as $tag => $curorder) {\n                if (!isset($manip[$tag])) {\n                    // ensure that the tag is set up\n                    $manip = $this->_insertBefore($manip, $curorder, array(), $tag);\n                }\n                if (count($order) > 1) {\n                    $manip[$tag] = $this->_mergeTag($manip[$tag], $contents, array_slice($order, 1));\n                    return $manip;\n                }\n            }\n        } else {\n            return $manip;\n        }\n        if (is_array($manip[$tag]) && !empty($manip[$tag]) && isset($manip[$tag][0])) {\n            $manip[$tag][] = $contents;\n        } else {\n            if (!count($manip[$tag])) {\n                $manip[$tag] = $contents;\n            } else {\n                $manip[$tag] = array($manip[$tag]);\n                $manip[$tag][] = $contents;\n            }\n        }\n        return $manip;\n    }\n}\n?>\n"
  },
  {
    "path": "newscoop/include/PEAR/PackageFile.php",
    "content": "<?php\n/**\n * PEAR_PackageFile, package.xml parsing utility class\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: PackageFile.php 286670 2009-08-02 14:16:06Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n\n/**\n * needed for PEAR_VALIDATE_* constants\n */\nrequire_once 'PEAR/Validate.php';\n/**\n * Error code if the package.xml <package> tag does not contain a valid version\n */\ndefine('PEAR_PACKAGEFILE_ERROR_NO_PACKAGEVERSION', 1);\n/**\n * Error code if the package.xml <package> tag version is not supported (version 1.0 and 1.1 are the only supported versions,\n * currently\n */\ndefine('PEAR_PACKAGEFILE_ERROR_INVALID_PACKAGEVERSION', 2);\n/**\n * Abstraction for the package.xml package description file\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_PackageFile\n{\n    /**\n     * @var PEAR_Config\n     */\n    var $_config;\n    var $_debug;\n\n    var $_logger = false;\n    /**\n     * @var boolean\n     */\n    var $_rawReturn = false;\n\n    /**\n     * helper for extracting Archive_Tar errors\n     * @var array\n     * @access private\n     */\n    var $_extractErrors = array();\n\n    /**\n     *\n     * @param   PEAR_Config $config\n     * @param   ?   $debug\n     * @param   string @tmpdir Optional temporary directory for uncompressing\n     *          files\n     */\n    function PEAR_PackageFile(&$config, $debug = false)\n    {\n        $this->_config = $config;\n        $this->_debug = $debug;\n    }\n\n    /**\n     * Turn off validation - return a parsed package.xml without checking it\n     *\n     * This is used by the package-validate command\n     */\n    function rawReturn()\n    {\n        $this->_rawReturn = true;\n    }\n\n    function setLogger(&$l)\n    {\n        $this->_logger = &$l;\n    }\n\n    /**\n     * Create a PEAR_PackageFile_Parser_v* of a given version.\n     * @param   int $version\n     * @return  PEAR_PackageFile_Parser_v1|PEAR_PackageFile_Parser_v1\n     */\n    function &parserFactory($version)\n    {\n        if (!in_array($version{0}, array('1', '2'))) {\n            $a = false;\n            return $a;\n        }\n\n        include_once 'PEAR/PackageFile/Parser/v' . $version{0} . '.php';\n        $version = $version{0};\n        $class = \"PEAR_PackageFile_Parser_v$version\";\n        $a = new $class;\n        return $a;\n    }\n\n    /**\n     * For simpler unit-testing\n     * @return string\n     */\n    function getClassPrefix()\n    {\n        return 'PEAR_PackageFile_v';\n    }\n\n    /**\n     * Create a PEAR_PackageFile_v* of a given version.\n     * @param   int $version\n     * @return  PEAR_PackageFile_v1|PEAR_PackageFile_v1\n     */\n    function &factory($version)\n    {\n        if (!in_array($version{0}, array('1', '2'))) {\n            $a = false;\n            return $a;\n        }\n\n        include_once 'PEAR/PackageFile/v' . $version{0} . '.php';\n        $version = $version{0};\n        $class = $this->getClassPrefix() . $version;\n        $a = new $class;\n        return $a;\n    }\n\n    /**\n     * Create a PEAR_PackageFile_v* from its toArray() method\n     *\n     * WARNING: no validation is performed, the array is assumed to be valid,\n     * always parse from xml if you want validation.\n     * @param   array $arr\n     * @return PEAR_PackageFileManager_v1|PEAR_PackageFileManager_v2\n     * @uses    factory() to construct the returned object.\n     */\n    function &fromArray($arr)\n    {\n        if (isset($arr['xsdversion'])) {\n            $obj = &$this->factory($arr['xsdversion']);\n            if ($this->_logger) {\n                $obj->setLogger($this->_logger);\n            }\n\n            $obj->setConfig($this->_config);\n            $obj->fromArray($arr);\n            return $obj;\n        }\n\n        if (isset($arr['package']['attribs']['version'])) {\n            $obj = &$this->factory($arr['package']['attribs']['version']);\n        } else {\n            $obj = &$this->factory('1.0');\n        }\n\n        if ($this->_logger) {\n            $obj->setLogger($this->_logger);\n        }\n\n        $obj->setConfig($this->_config);\n        $obj->fromArray($arr);\n        return $obj;\n    }\n\n    /**\n     * Create a PEAR_PackageFile_v* from an XML string.\n     * @access  public\n     * @param   string $data contents of package.xml file\n     * @param   int $state package state (one of PEAR_VALIDATE_* constants)\n     * @param   string $file full path to the package.xml file (and the files\n     *          it references)\n     * @param   string $archive optional name of the archive that the XML was\n     *          extracted from, if any\n     * @return  PEAR_PackageFile_v1|PEAR_PackageFile_v2\n     * @uses    parserFactory() to construct a parser to load the package.\n     */\n    function &fromXmlString($data, $state, $file, $archive = false)\n    {\n        if (preg_match('/<package[^>]+version=\"([0-9]+\\.[0-9]+)\"/', $data, $packageversion)) {\n            if (!in_array($packageversion[1], array('1.0', '2.0', '2.1'))) {\n                return PEAR::raiseError('package.xml version \"' . $packageversion[1] .\n                    '\" is not supported, only 1.0, 2.0, and 2.1 are supported.');\n            }\n\n            $object = &$this->parserFactory($packageversion[1]);\n            if ($this->_logger) {\n                $object->setLogger($this->_logger);\n            }\n\n            $object->setConfig($this->_config);\n            $pf = $object->parse($data, $file, $archive);\n            if (PEAR::isError($pf)) {\n                return $pf;\n            }\n\n            if ($this->_rawReturn) {\n                return $pf;\n            }\n\n            if (!$pf->validate($state)) {;\n                if ($this->_config->get('verbose') > 0\n                    && $this->_logger && $pf->getValidationWarnings(false)\n                ) {\n                    foreach ($pf->getValidationWarnings(false) as $warning) {\n                        $this->_logger->log(0, 'ERROR: ' . $warning['message']);\n                    }\n                }\n\n                $a = PEAR::raiseError('Parsing of package.xml from file \"' . $file . '\" failed',\n                    2, null, null, $pf->getValidationWarnings());\n                return $a;\n            }\n\n            if ($this->_logger && $pf->getValidationWarnings(false)) {\n                foreach ($pf->getValidationWarnings() as $warning) {\n                    $this->_logger->log(0, 'WARNING: ' . $warning['message']);\n                }\n            }\n\n            if (method_exists($pf, 'flattenFilelist')) {\n                $pf->flattenFilelist(); // for v2\n            }\n\n            return $pf;\n        } elseif (preg_match('/<package[^>]+version=\"([^\"]+)\"/', $data, $packageversion)) {\n            $a = PEAR::raiseError('package.xml file \"' . $file .\n                '\" has unsupported package.xml <package> version \"' . $packageversion[1] . '\"');\n            return $a;\n        } else {\n            if (!class_exists('PEAR_ErrorStack')) {\n                require_once 'PEAR/ErrorStack.php';\n            }\n\n            PEAR_ErrorStack::staticPush('PEAR_PackageFile',\n                PEAR_PACKAGEFILE_ERROR_NO_PACKAGEVERSION,\n                'warning', array('xml' => $data), 'package.xml \"' . $file .\n                    '\" has no package.xml <package> version');\n            $object = &$this->parserFactory('1.0');\n            $object->setConfig($this->_config);\n            $pf = $object->parse($data, $file, $archive);\n            if (PEAR::isError($pf)) {\n                return $pf;\n            }\n\n            if ($this->_rawReturn) {\n                return $pf;\n            }\n\n            if (!$pf->validate($state)) {\n                $a = PEAR::raiseError('Parsing of package.xml from file \"' . $file . '\" failed',\n                    2, null, null, $pf->getValidationWarnings());\n                return $a;\n            }\n\n            if ($this->_logger && $pf->getValidationWarnings(false)) {\n                foreach ($pf->getValidationWarnings() as $warning) {\n                    $this->_logger->log(0, 'WARNING: ' . $warning['message']);\n                }\n            }\n\n            if (method_exists($pf, 'flattenFilelist')) {\n                $pf->flattenFilelist(); // for v2\n            }\n\n            return $pf;\n        }\n    }\n\n    /**\n     * Register a temporary file or directory.  When the destructor is\n     * executed, all registered temporary files and directories are\n     * removed.\n     *\n     * @param string  $file  name of file or directory\n     * @return  void\n     */\n    function addTempFile($file)\n    {\n        $GLOBALS['_PEAR_Common_tempfiles'][] = $file;\n    }\n\n    /**\n     * Create a PEAR_PackageFile_v* from a compresed Tar or Tgz file.\n     * @access  public\n     * @param string contents of package.xml file\n     * @param int package state (one of PEAR_VALIDATE_* constants)\n     * @return  PEAR_PackageFile_v1|PEAR_PackageFile_v2\n     * @using   Archive_Tar to extract the files\n     * @using   fromPackageFile() to load the package after the package.xml\n     *          file is extracted.\n     */\n    function &fromTgzFile($file, $state)\n    {\n        if (!class_exists('Archive_Tar')) {\n            require_once 'Archive/Tar.php';\n        }\n\n        $tar = new Archive_Tar($file);\n        if ($this->_debug <= 1) {\n            $tar->pushErrorHandling(PEAR_ERROR_RETURN);\n        }\n\n        $content = $tar->listContent();\n        if ($this->_debug <= 1) {\n            $tar->popErrorHandling();\n        }\n\n        if (!is_array($content)) {\n            if (is_string($file) && strlen($file < 255) &&\n                  (!file_exists($file) || !@is_file($file))) {\n                $ret = PEAR::raiseError(\"could not open file \\\"$file\\\"\");\n                return $ret;\n            }\n\n            $file = realpath($file);\n            $ret = PEAR::raiseError(\"Could not get contents of package \\\"$file\\\"\".\n                                     '. Invalid tgz file.');\n            return $ret;\n        }\n\n        if (!count($content) && !@is_file($file)) {\n            $ret = PEAR::raiseError(\"could not open file \\\"$file\\\"\");\n            return $ret;\n        }\n\n        $xml      = null;\n        $origfile = $file;\n        foreach ($content as $file) {\n            $name = $file['filename'];\n            if ($name == 'package2.xml') { // allow a .tgz to distribute both versions\n                $xml = $name;\n                break;\n            }\n\n            if ($name == 'package.xml') {\n                $xml = $name;\n                break;\n            } elseif (preg_match('/package.xml$/', $name, $match)) {\n                $xml = $name;\n                break;\n            }\n        }\n\n        $tmpdir = System::mktemp('-t ' . $this->_config->get('temp_dir') . ' -d pear');\n        if ($tmpdir === false) {\n            $ret = PEAR::raiseError(\"there was a problem with getting the configured temp directory\");\n            return $ret;\n        }\n\n        PEAR_PackageFile::addTempFile($tmpdir);\n\n        $this->_extractErrors();\n        PEAR::staticPushErrorHandling(PEAR_ERROR_CALLBACK, array($this, '_extractErrors'));\n\n        if (!$xml || !$tar->extractList(array($xml), $tmpdir)) {\n            $extra = implode(\"\\n\", $this->_extractErrors());\n            if ($extra) {\n                $extra = ' ' . $extra;\n            }\n\n            PEAR::staticPopErrorHandling();\n            $ret = PEAR::raiseError('could not extract the package.xml file from \"' .\n                $origfile . '\"' . $extra);\n            return $ret;\n        }\n\n        PEAR::staticPopErrorHandling();\n        $ret = &PEAR_PackageFile::fromPackageFile(\"$tmpdir/$xml\", $state, $origfile);\n        return $ret;\n    }\n\n    /**\n     * helper callback for extracting Archive_Tar errors\n     *\n     * @param PEAR_Error|null $err\n     * @return array\n     * @access private\n     */\n    function _extractErrors($err = null)\n    {\n        static $errors = array();\n        if ($err === null) {\n            $e = $errors;\n            $errors = array();\n            return $e;\n        }\n        $errors[] = $err->getMessage();\n    }\n\n    /**\n     * Create a PEAR_PackageFile_v* from a package.xml file.\n     *\n     * @access public\n     * @param   string  $descfile  name of package xml file\n     * @param   int     $state package state (one of PEAR_VALIDATE_* constants)\n     * @param   string|false $archive name of the archive this package.xml came\n     *          from, if any\n     * @return  PEAR_PackageFile_v1|PEAR_PackageFile_v2\n     * @uses    PEAR_PackageFile::fromXmlString to create the oject after the\n     *          XML is loaded from the package.xml file.\n     */\n    function &fromPackageFile($descfile, $state, $archive = false)\n    {\n        $fp = false;\n        if (is_string($descfile) && strlen($descfile) < 255 &&\n             (\n              !file_exists($descfile) || !is_file($descfile) || !is_readable($descfile)\n              || (!$fp = @fopen($descfile, 'r'))\n             )\n        ) {\n            $a = PEAR::raiseError(\"Unable to open $descfile\");\n            return $a;\n        }\n\n        // read the whole thing so we only get one cdata callback\n        // for each block of cdata\n        fclose($fp);\n        $data = file_get_contents($descfile);\n        $ret = &PEAR_PackageFile::fromXmlString($data, $state, $descfile, $archive);\n        return $ret;\n    }\n\n\n    /**\n     * Create a PEAR_PackageFile_v* from a .tgz archive or package.xml file.\n     *\n     * This method is able to extract information about a package from a .tgz\n     * archive or from a XML package definition file.\n     *\n     * @access public\n     * @param   string  $info file name\n     * @param   int     $state package state (one of PEAR_VALIDATE_* constants)\n     * @return  PEAR_PackageFile_v1|PEAR_PackageFile_v2\n     * @uses    fromPackageFile() if the file appears to be XML\n     * @uses    fromTgzFile() to load all non-XML files\n     */\n    function &fromAnyFile($info, $state)\n    {\n        if (is_dir($info)) {\n            $dir_name = realpath($info);\n            if (file_exists($dir_name . '/package.xml')) {\n                $info = PEAR_PackageFile::fromPackageFile($dir_name .  '/package.xml', $state);\n            } elseif (file_exists($dir_name .  '/package2.xml')) {\n                $info = PEAR_PackageFile::fromPackageFile($dir_name .  '/package2.xml', $state);\n            } else {\n                $info = PEAR::raiseError(\"No package definition found in '$info' directory\");\n            }\n\n            return $info;\n        }\n\n        $fp = false;\n        if (is_string($info) && strlen($info) < 255 &&\n             (file_exists($info) || ($fp = @fopen($info, 'r')))\n        ) {\n\n            if ($fp) {\n                fclose($fp);\n            }\n\n            $tmp = substr($info, -4);\n            if ($tmp == '.xml') {\n                $info = &PEAR_PackageFile::fromPackageFile($info, $state);\n            } elseif ($tmp == '.tar' || $tmp == '.tgz') {\n                $info = &PEAR_PackageFile::fromTgzFile($info, $state);\n            } else {\n                $fp   = fopen($info, 'r');\n                $test = fread($fp, 5);\n                fclose($fp);\n                if ($test == '<?xml') {\n                    $info = &PEAR_PackageFile::fromPackageFile($info, $state);\n                } else {\n                    $info = &PEAR_PackageFile::fromTgzFile($info, $state);\n                }\n            }\n\n            return $info;\n        }\n\n        $info = PEAR::raiseError(\"Cannot open '$info' for parsing\");\n        return $info;\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/Packager.php",
    "content": "<?php\n/**\n * PEAR_Packager for generating releases\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Tomas V. V. Cox <cox@idecnet.com>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Packager.php 286809 2009-08-04 15:10:26Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 0.1\n */\n\n/**\n * base class\n */\nrequire_once 'PEAR/Common.php';\nrequire_once 'PEAR/PackageFile.php';\nrequire_once 'System.php';\n\n/**\n * Administration class used to make a PEAR release tarball.\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 0.1\n */\nclass PEAR_Packager extends PEAR_Common\n{\n    /**\n     * @var PEAR_Registry\n     */\n    var $_registry;\n\n    function package($pkgfile = null, $compress = true, $pkg2 = null)\n    {\n        // {{{ validate supplied package.xml file\n        if (empty($pkgfile)) {\n            $pkgfile = 'package.xml';\n        }\n\n        PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n        $pkg  = &new PEAR_PackageFile($this->config, $this->debug);\n        $pf   = &$pkg->fromPackageFile($pkgfile, PEAR_VALIDATE_NORMAL);\n        $main = &$pf;\n        PEAR::staticPopErrorHandling();\n        if (PEAR::isError($pf)) {\n            if (is_array($pf->getUserInfo())) {\n                foreach ($pf->getUserInfo() as $error) {\n                    $this->log(0, 'Error: ' . $error['message']);\n                }\n            }\n\n            $this->log(0, $pf->getMessage());\n            return $this->raiseError(\"Cannot package, errors in package file\");\n        }\n\n        foreach ($pf->getValidationWarnings() as $warning) {\n            $this->log(1, 'Warning: ' . $warning['message']);\n        }\n\n        // }}}\n        if ($pkg2) {\n            $this->log(0, 'Attempting to process the second package file');\n            PEAR::staticPushErrorHandling(PEAR_ERROR_RETURN);\n            $pf2 = &$pkg->fromPackageFile($pkg2, PEAR_VALIDATE_NORMAL);\n            PEAR::staticPopErrorHandling();\n            if (PEAR::isError($pf2)) {\n                if (is_array($pf2->getUserInfo())) {\n                    foreach ($pf2->getUserInfo() as $error) {\n                        $this->log(0, 'Error: ' . $error['message']);\n                    }\n                }\n                $this->log(0, $pf2->getMessage());\n                return $this->raiseError(\"Cannot package, errors in second package file\");\n            }\n\n            foreach ($pf2->getValidationWarnings() as $warning) {\n                $this->log(1, 'Warning: ' . $warning['message']);\n            }\n\n            if ($pf2->getPackagexmlVersion() == '2.0' ||\n                  $pf2->getPackagexmlVersion() == '2.1'\n            ) {\n                $main  = &$pf2;\n                $other = &$pf;\n            } else {\n                $main  = &$pf;\n                $other = &$pf2;\n            }\n\n            if ($main->getPackagexmlVersion() != '2.0' &&\n                  $main->getPackagexmlVersion() != '2.1') {\n                return PEAR::raiseError('Error: cannot package two package.xml version 1.0, can ' .\n                    'only package together a package.xml 1.0 and package.xml 2.0');\n            }\n\n            if ($other->getPackagexmlVersion() != '1.0') {\n                return PEAR::raiseError('Error: cannot package two package.xml version 2.0, can ' .\n                    'only package together a package.xml 1.0 and package.xml 2.0');\n            }\n        }\n\n        $main->setLogger($this);\n        if (!$main->validate(PEAR_VALIDATE_PACKAGING)) {\n            foreach ($main->getValidationWarnings() as $warning) {\n                $this->log(0, 'Error: ' . $warning['message']);\n            }\n            return $this->raiseError(\"Cannot package, errors in package\");\n        }\n\n        foreach ($main->getValidationWarnings() as $warning) {\n            $this->log(1, 'Warning: ' . $warning['message']);\n        }\n\n        if ($pkg2) {\n            $other->setLogger($this);\n            $a = false;\n            if (!$other->validate(PEAR_VALIDATE_NORMAL) || $a = !$main->isEquivalent($other)) {\n                foreach ($other->getValidationWarnings() as $warning) {\n                    $this->log(0, 'Error: ' . $warning['message']);\n                }\n\n                foreach ($main->getValidationWarnings() as $warning) {\n                    $this->log(0, 'Error: ' . $warning['message']);\n                }\n\n                if ($a) {\n                    return $this->raiseError('The two package.xml files are not equivalent!');\n                }\n\n                return $this->raiseError(\"Cannot package, errors in package\");\n            }\n\n            foreach ($other->getValidationWarnings() as $warning) {\n                $this->log(1, 'Warning: ' . $warning['message']);\n            }\n\n            $gen = &$main->getDefaultGenerator();\n            $tgzfile = $gen->toTgz2($this, $other, $compress);\n            if (PEAR::isError($tgzfile)) {\n                return $tgzfile;\n            }\n\n            $dest_package = basename($tgzfile);\n            $pkgdir       = dirname($pkgfile);\n\n            // TAR the Package -------------------------------------------\n            $this->log(1, \"Package $dest_package done\");\n            if (file_exists(\"$pkgdir/CVS/Root\")) {\n                $cvsversion = preg_replace('/[^a-z0-9]/i', '_', $pf->getVersion());\n                $cvstag = \"RELEASE_$cvsversion\";\n                $this->log(1, 'Tag the released code with \"pear cvstag ' .\n                    $main->getPackageFile() . '\"');\n                $this->log(1, \"(or set the CVS tag $cvstag by hand)\");\n            } elseif (file_exists(\"$pkgdir/.svn\")) {\n                $svnversion = preg_replace('/[^a-z0-9]/i', '.', $pf->getVersion());\n                $svntag = $pf->getName() . \"-$svnversion\";\n                $this->log(1, 'Tag the released code with \"pear svntag ' .\n                    $main->getPackageFile() . '\"');\n                $this->log(1, \"(or set the SVN tag $svntag by hand)\");\n            }\n        } else { // this branch is executed for single packagefile packaging\n            $gen = &$pf->getDefaultGenerator();\n            $tgzfile = $gen->toTgz($this, $compress);\n            if (PEAR::isError($tgzfile)) {\n                $this->log(0, $tgzfile->getMessage());\n                return $this->raiseError(\"Cannot package, errors in package\");\n            }\n\n            $dest_package = basename($tgzfile);\n            $pkgdir       = dirname($pkgfile);\n\n            // TAR the Package -------------------------------------------\n            $this->log(1, \"Package $dest_package done\");\n            if (file_exists(\"$pkgdir/CVS/Root\")) {\n                $cvsversion = preg_replace('/[^a-z0-9]/i', '_', $pf->getVersion());\n                $cvstag = \"RELEASE_$cvsversion\";\n                $this->log(1, \"Tag the released code with `pear cvstag $pkgfile'\");\n                $this->log(1, \"(or set the CVS tag $cvstag by hand)\");\n            } elseif (file_exists(\"$pkgdir/.svn\")) {\n                $svnversion = preg_replace('/[^a-z0-9]/i', '.', $pf->getVersion());\n                $svntag = $pf->getName() . \"-$svnversion\";\n                $this->log(1, \"Tag the released code with `pear svntag $pkgfile'\");\n                $this->log(1, \"(or set the SVN tag $svntag by hand)\");\n            }\n        }\n\n        return $dest_package;\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/REST/10.php",
    "content": "<?php\n/**\n * PEAR_REST_10\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: 10.php 287558 2009-08-21 22:21:28Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a12\n */\n\n/**\n * For downloading REST xml/txt files\n */\nrequire_once 'PEAR/REST.php';\n\n/**\n * Implement REST 1.0\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a12\n */\nclass PEAR_REST_10\n{\n    /**\n     * @var PEAR_REST\n     */\n    var $_rest;\n    function PEAR_REST_10($config, $options = array())\n    {\n        $this->_rest = &new PEAR_REST($config, $options);\n    }\n\n    /**\n     * Retrieve information about a remote package to be downloaded from a REST server\n     *\n     * @param string $base The uri to prepend to all REST calls\n     * @param array $packageinfo an array of format:\n     * <pre>\n     *  array(\n     *   'package' => 'packagename',\n     *   'channel' => 'channelname',\n     *  ['state' => 'alpha' (or valid state),]\n     *  -or-\n     *  ['version' => '1.whatever']\n     * </pre>\n     * @param string $prefstate Current preferred_state config variable value\n     * @param bool $installed the installed version of this package to compare against\n     * @return array|false|PEAR_Error see {@link _returnDownloadURL()}\n     */\n    function getDownloadURL($base, $packageinfo, $prefstate, $installed, $channel = false)\n    {\n        $states = $this->betterStates($prefstate, true);\n        if (!$states) {\n            return PEAR::raiseError('\"' . $prefstate . '\" is not a valid state');\n        }\n\n        $channel  = $packageinfo['channel'];\n        $package  = $packageinfo['package'];\n        $state    = isset($packageinfo['state'])   ? $packageinfo['state']   : null;\n        $version  = isset($packageinfo['version']) ? $packageinfo['version'] : null;\n        $restFile = $base . 'r/' . strtolower($package) . '/allreleases.xml';\n\n        $info = $this->_rest->retrieveData($restFile, false, false, $channel);\n        if (PEAR::isError($info)) {\n            return PEAR::raiseError('No releases available for package \"' .\n                $channel . '/' . $package . '\"');\n        }\n\n        if (!isset($info['r'])) {\n            return false;\n        }\n\n        $release = $found = false;\n        if (!is_array($info['r']) || !isset($info['r'][0])) {\n            $info['r'] = array($info['r']);\n        }\n\n        foreach ($info['r'] as $release) {\n            if (!isset($this->_rest->_options['force']) && ($installed &&\n                  version_compare($release['v'], $installed, '<'))) {\n                continue;\n            }\n\n            if (isset($state)) {\n                // try our preferred state first\n                if ($release['s'] == $state) {\n                    $found = true;\n                    break;\n                }\n                // see if there is something newer and more stable\n                // bug #7221\n                if (in_array($release['s'], $this->betterStates($state), true)) {\n                    $found = true;\n                    break;\n                }\n            } elseif (isset($version)) {\n                if ($release['v'] == $version) {\n                    $found = true;\n                    break;\n                }\n            } else {\n                if (in_array($release['s'], $states)) {\n                    $found = true;\n                    break;\n                }\n            }\n        }\n\n        return $this->_returnDownloadURL($base, $package, $release, $info, $found, false, $channel);\n    }\n\n    function getDepDownloadURL($base, $xsdversion, $dependency, $deppackage,\n                               $prefstate = 'stable', $installed = false, $channel = false)\n    {\n        $states = $this->betterStates($prefstate, true);\n        if (!$states) {\n            return PEAR::raiseError('\"' . $prefstate . '\" is not a valid state');\n        }\n\n        $channel  = $dependency['channel'];\n        $package  = $dependency['name'];\n        $state    = isset($dependency['state'])   ? $dependency['state']   : null;\n        $version  = isset($dependency['version']) ? $dependency['version'] : null;\n        $restFile = $base . 'r/' . strtolower($package) . '/allreleases.xml';\n\n        $info = $this->_rest->retrieveData($restFile, false, false, $channel);\n        if (PEAR::isError($info)) {\n            return PEAR::raiseError('Package \"' . $deppackage['channel'] . '/' . $deppackage['package']\n                . '\" dependency \"' . $channel . '/' . $package . '\" has no releases');\n        }\n\n        if (!is_array($info) || !isset($info['r'])) {\n            return false;\n        }\n\n        $exclude = array();\n        $min = $max = $recommended = false;\n        if ($xsdversion == '1.0') {\n            switch ($dependency['rel']) {\n                case 'ge' :\n                    $min = $dependency['version'];\n                break;\n                case 'gt' :\n                    $min = $dependency['version'];\n                    $exclude = array($dependency['version']);\n                break;\n                case 'eq' :\n                    $recommended = $dependency['version'];\n                break;\n                case 'lt' :\n                    $max = $dependency['version'];\n                    $exclude = array($dependency['version']);\n                break;\n                case 'le' :\n                    $max = $dependency['version'];\n                break;\n                case 'ne' :\n                    $exclude = array($dependency['version']);\n                break;\n            }\n        } else {\n            $min = isset($dependency['min']) ? $dependency['min'] : false;\n            $max = isset($dependency['max']) ? $dependency['max'] : false;\n            $recommended = isset($dependency['recommended']) ?\n                $dependency['recommended'] : false;\n            if (isset($dependency['exclude'])) {\n                if (!isset($dependency['exclude'][0])) {\n                    $exclude = array($dependency['exclude']);\n                }\n            }\n        }\n        $release = $found = false;\n        if (!is_array($info['r']) || !isset($info['r'][0])) {\n            $info['r'] = array($info['r']);\n        }\n        foreach ($info['r'] as $release) {\n            if (!isset($this->_rest->_options['force']) && ($installed &&\n                  version_compare($release['v'], $installed, '<'))) {\n                continue;\n            }\n            if (in_array($release['v'], $exclude)) { // skip excluded versions\n                continue;\n            }\n            // allow newer releases to say \"I'm OK with the dependent package\"\n            if ($xsdversion == '2.0' && isset($release['co'])) {\n                if (!is_array($release['co']) || !isset($release['co'][0])) {\n                    $release['co'] = array($release['co']);\n                }\n                foreach ($release['co'] as $entry) {\n                    if (isset($entry['x']) && !is_array($entry['x'])) {\n                        $entry['x'] = array($entry['x']);\n                    } elseif (!isset($entry['x'])) {\n                        $entry['x'] = array();\n                    }\n                    if ($entry['c'] == $deppackage['channel'] &&\n                          strtolower($entry['p']) == strtolower($deppackage['package']) &&\n                          version_compare($deppackage['version'], $entry['min'], '>=') &&\n                          version_compare($deppackage['version'], $entry['max'], '<=') &&\n                          !in_array($release['v'], $entry['x'])) {\n                        $recommended = $release['v'];\n                        break;\n                    }\n                }\n            }\n            if ($recommended) {\n                if ($release['v'] != $recommended) { // if we want a specific\n                    // version, then skip all others\n                    continue;\n                } else {\n                    if (!in_array($release['s'], $states)) {\n                        // the stability is too low, but we must return the\n                        // recommended version if possible\n                        return $this->_returnDownloadURL($base, $package, $release, $info, true, false, $channel);\n                    }\n                }\n            }\n            if ($min && version_compare($release['v'], $min, 'lt')) { // skip too old versions\n                continue;\n            }\n            if ($max && version_compare($release['v'], $max, 'gt')) { // skip too new versions\n                continue;\n            }\n            if ($installed && version_compare($release['v'], $installed, '<')) {\n                continue;\n            }\n            if (in_array($release['s'], $states)) { // if in the preferred state...\n                $found = true; // ... then use it\n                break;\n            }\n        }\n        return $this->_returnDownloadURL($base, $package, $release, $info, $found, false, $channel);\n    }\n\n    /**\n     * Take raw data and return the array needed for processing a download URL\n     *\n     * @param string $base REST base uri\n     * @param string $package Package name\n     * @param array $release an array of format array('v' => version, 's' => state)\n     *                       describing the release to download\n     * @param array $info list of all releases as defined by allreleases.xml\n     * @param bool|null $found determines whether the release was found or this is the next\n     *                    best alternative.  If null, then versions were skipped because\n     *                    of PHP dependency\n     * @return array|PEAR_Error\n     * @access private\n     */\n    function _returnDownloadURL($base, $package, $release, $info, $found, $phpversion = false, $channel = false)\n    {\n        if (!$found) {\n            $release = $info['r'][0];\n        }\n\n        $packageLower = strtolower($package);\n        $pinfo = $this->_rest->retrieveCacheFirst($base . 'p/' . $packageLower . '/' .\n            'info.xml', false, false, $channel);\n        if (PEAR::isError($pinfo)) {\n            return PEAR::raiseError('Package \"' . $package .\n                '\" does not have REST info xml available');\n        }\n\n        $releaseinfo = $this->_rest->retrieveCacheFirst($base . 'r/' . $packageLower . '/' .\n            $release['v'] . '.xml', false, false, $channel);\n        if (PEAR::isError($releaseinfo)) {\n            return PEAR::raiseError('Package \"' . $package . '\" Version \"' . $release['v'] .\n                '\" does not have REST xml available');\n        }\n\n        $packagexml = $this->_rest->retrieveCacheFirst($base . 'r/' . $packageLower . '/' .\n            'deps.' . $release['v'] . '.txt', false, true, $channel);\n        if (PEAR::isError($packagexml)) {\n            return PEAR::raiseError('Package \"' . $package . '\" Version \"' . $release['v'] .\n                '\" does not have REST dependency information available');\n        }\n\n        $packagexml = unserialize($packagexml);\n        if (!$packagexml) {\n            $packagexml = array();\n        }\n\n        $allinfo = $this->_rest->retrieveData($base . 'r/' . $packageLower .\n            '/allreleases.xml', false, false, $channel);\n        if (!is_array($allinfo['r']) || !isset($allinfo['r'][0])) {\n            $allinfo['r'] = array($allinfo['r']);\n        }\n\n        $compatible = false;\n        foreach ($allinfo['r'] as $release) {\n            if ($release['v'] != $releaseinfo['v']) {\n                continue;\n            }\n\n            if (!isset($release['co'])) {\n                break;\n            }\n\n            $compatible = array();\n            if (!is_array($release['co']) || !isset($release['co'][0])) {\n                $release['co'] = array($release['co']);\n            }\n\n            foreach ($release['co'] as $entry) {\n                $comp = array();\n                $comp['name']    = $entry['p'];\n                $comp['channel'] = $entry['c'];\n                $comp['min']     = $entry['min'];\n                $comp['max']     = $entry['max'];\n                if (isset($entry['x']) && !is_array($entry['x'])) {\n                    $comp['exclude'] = $entry['x'];\n                }\n\n                $compatible[] = $comp;\n            }\n\n            if (count($compatible) == 1) {\n                $compatible = $compatible[0];\n            }\n\n            break;\n        }\n\n        $deprecated = false;\n        if (isset($pinfo['dc']) && isset($pinfo['dp'])) {\n            if (is_array($pinfo['dp'])) {\n                $deprecated = array('channel' => (string) $pinfo['dc'],\n                                    'package' => trim($pinfo['dp']['_content']));\n            } else {\n                $deprecated = array('channel' => (string) $pinfo['dc'],\n                                    'package' => trim($pinfo['dp']));\n            }\n        }\n\n        $return = array(\n            'version'    => $releaseinfo['v'],\n            'info'       => $packagexml,\n            'package'    => $releaseinfo['p']['_content'],\n            'stability'  => $releaseinfo['st'],\n            'compatible' => $compatible,\n            'deprecated' => $deprecated,\n        );\n\n        if ($found) {\n            $return['url'] = $releaseinfo['g'];\n            return $return;\n        }\n\n        $return['php'] = $phpversion;\n        return $return;\n    }\n\n    function listPackages($base, $channel = false)\n    {\n        $packagelist = $this->_rest->retrieveData($base . 'p/packages.xml', false, false, $channel);\n        if (PEAR::isError($packagelist)) {\n            return $packagelist;\n        }\n\n        if (!is_array($packagelist) || !isset($packagelist['p'])) {\n            return array();\n        }\n\n        if (!is_array($packagelist['p'])) {\n            $packagelist['p'] = array($packagelist['p']);\n        }\n\n        return $packagelist['p'];\n    }\n\n    /**\n     * List all categories of a REST server\n     *\n     * @param string $base base URL of the server\n     * @return array of categorynames\n     */\n    function listCategories($base, $channel = false)\n    {\n        $categories = array();\n\n        // c/categories.xml does not exist;\n        // check for every package its category manually\n        // This is SLOOOWWWW : ///\n        $packagelist = $this->_rest->retrieveData($base . 'p/packages.xml', false, false, $channel);\n        if (PEAR::isError($packagelist)) {\n            return $packagelist;\n        }\n\n        if (!is_array($packagelist) || !isset($packagelist['p'])) {\n            $ret = array();\n            return $ret;\n        }\n\n        if (!is_array($packagelist['p'])) {\n            $packagelist['p'] = array($packagelist['p']);\n        }\n\n        PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n        foreach ($packagelist['p'] as $package) {\n                $inf = $this->_rest->retrieveData($base . 'p/' . strtolower($package) . '/info.xml', false, false, $channel);\n                if (PEAR::isError($inf)) {\n                    PEAR::popErrorHandling();\n                    return $inf;\n                }\n                $cat = $inf['ca']['_content'];\n                if (!isset($categories[$cat])) {\n                    $categories[$cat] = $inf['ca'];\n                }\n        }\n\n        return array_values($categories);\n    }\n\n    /**\n     * List a category of a REST server\n     *\n     * @param string $base base URL of the server\n     * @param string $category name of the category\n     * @param boolean $info also download full package info\n     * @return array of packagenames\n     */\n    function listCategory($base, $category, $info = false, $channel = false)\n    {\n        // gives '404 Not Found' error when category doesn't exist\n        $packagelist = $this->_rest->retrieveData($base.'c/'.urlencode($category).'/packages.xml', false, false, $channel);\n        if (PEAR::isError($packagelist)) {\n            return $packagelist;\n        }\n\n        if (!is_array($packagelist) || !isset($packagelist['p'])) {\n            return array();\n        }\n\n        if (!is_array($packagelist['p']) ||\n            !isset($packagelist['p'][0])) { // only 1 pkg\n            $packagelist = array($packagelist['p']);\n        } else {\n            $packagelist = $packagelist['p'];\n        }\n\n        if ($info == true) {\n            // get individual package info\n            PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n            foreach ($packagelist as $i => $packageitem) {\n                $url = sprintf('%s'.'r/%s/latest.txt',\n                        $base,\n                        strtolower($packageitem['_content']));\n                $version = $this->_rest->retrieveData($url, false, false, $channel);\n                if (PEAR::isError($version)) {\n                    break; // skipit\n                }\n                $url = sprintf('%s'.'r/%s/%s.xml',\n                        $base,\n                        strtolower($packageitem['_content']),\n                        $version);\n                $info = $this->_rest->retrieveData($url, false, false, $channel);\n                if (PEAR::isError($info)) {\n                    break; // skipit\n                }\n                $packagelist[$i]['info'] = $info;\n            }\n            PEAR::popErrorHandling();\n        }\n\n        return $packagelist;\n    }\n\n\n    function listAll($base, $dostable, $basic = true, $searchpackage = false, $searchsummary = false, $channel = false)\n    {\n        $packagelist = $this->_rest->retrieveData($base . 'p/packages.xml', false, false, $channel);\n        if (PEAR::isError($packagelist)) {\n            return $packagelist;\n        }\n        if ($this->_rest->config->get('verbose') > 0) {\n            $ui = &PEAR_Frontend::singleton();\n            $ui->log('Retrieving data...0%', true);\n        }\n        $ret = array();\n        if (!is_array($packagelist) || !isset($packagelist['p'])) {\n            return $ret;\n        }\n        if (!is_array($packagelist['p'])) {\n            $packagelist['p'] = array($packagelist['p']);\n        }\n\n        // only search-packagename = quicksearch !\n        if ($searchpackage && (!$searchsummary || empty($searchpackage))) {\n            $newpackagelist = array();\n            foreach ($packagelist['p'] as $package) {\n                if (!empty($searchpackage) && stristr($package, $searchpackage) !== false) {\n                    $newpackagelist[] = $package;\n                }\n            }\n            $packagelist['p'] = $newpackagelist;\n        }\n        PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n        $next = .1;\n        foreach ($packagelist['p'] as $progress => $package) {\n            if ($this->_rest->config->get('verbose') > 0) {\n                if ($progress / count($packagelist['p']) >= $next) {\n                    if ($next == .5) {\n                        $ui->log('50%', false);\n                    } else {\n                        $ui->log('.', false);\n                    }\n                    $next += .1;\n                }\n            }\n\n            if ($basic) { // remote-list command\n                if ($dostable) {\n                    $latest = $this->_rest->retrieveData($base . 'r/' . strtolower($package) .\n                        '/stable.txt', false, false, $channel);\n                } else {\n                    $latest = $this->_rest->retrieveData($base . 'r/' . strtolower($package) .\n                        '/latest.txt', false, false, $channel);\n                }\n                if (PEAR::isError($latest)) {\n                    $latest = false;\n                }\n                $info = array('stable' => $latest);\n            } else { // list-all command\n                $inf = $this->_rest->retrieveData($base . 'p/' . strtolower($package) . '/info.xml', false, false, $channel);\n                if (PEAR::isError($inf)) {\n                    PEAR::popErrorHandling();\n                    return $inf;\n                }\n                if ($searchpackage) {\n                    $found = (!empty($searchpackage) && stristr($package, $searchpackage) !== false);\n                    if (!$found && !(isset($searchsummary) && !empty($searchsummary)\n                        && (stristr($inf['s'], $searchsummary) !== false\n                            || stristr($inf['d'], $searchsummary) !== false)))\n                    {\n                        continue;\n                    };\n                }\n                $releases = $this->_rest->retrieveData($base . 'r/' . strtolower($package) .\n                    '/allreleases.xml', false, false, $channel);\n                if (PEAR::isError($releases)) {\n                    continue;\n                }\n                if (!isset($releases['r'][0])) {\n                    $releases['r'] = array($releases['r']);\n                }\n                unset($latest);\n                unset($unstable);\n                unset($stable);\n                unset($state);\n                foreach ($releases['r'] as $release) {\n                    if (!isset($latest)) {\n                        if ($dostable && $release['s'] == 'stable') {\n                            $latest = $release['v'];\n                            $state = 'stable';\n                        }\n                        if (!$dostable) {\n                            $latest = $release['v'];\n                            $state = $release['s'];\n                        }\n                    }\n                    if (!isset($stable) && $release['s'] == 'stable') {\n                        $stable = $release['v'];\n                        if (!isset($unstable)) {\n                            $unstable = $stable;\n                        }\n                    }\n                    if (!isset($unstable) && $release['s'] != 'stable') {\n                        $latest = $unstable = $release['v'];\n                        $state = $release['s'];\n                    }\n                    if (isset($latest) && !isset($state)) {\n                        $state = $release['s'];\n                    }\n                    if (isset($latest) && isset($stable) && isset($unstable)) {\n                        break;\n                    }\n                }\n                $deps = array();\n                if (!isset($unstable)) {\n                    $unstable = false;\n                    $state = 'stable';\n                    if (isset($stable)) {\n                        $latest = $unstable = $stable;\n                    }\n                } else {\n                    $latest = $unstable;\n                }\n                if (!isset($latest)) {\n                    $latest = false;\n                }\n                if ($latest) {\n                    $d = $this->_rest->retrieveCacheFirst($base . 'r/' . strtolower($package) . '/deps.' .\n                        $latest . '.txt', false, false, $channel);\n                    if (!PEAR::isError($d)) {\n                        $d = unserialize($d);\n                        if ($d) {\n                            if (isset($d['required'])) {\n                                if (!class_exists('PEAR_PackageFile_v2')) {\n                                    require_once 'PEAR/PackageFile/v2.php';\n                                }\n                                if (!isset($pf)) {\n                                    $pf = new PEAR_PackageFile_v2;\n                                }\n                                $pf->setDeps($d);\n                                $tdeps = $pf->getDeps();\n                            } else {\n                                $tdeps = $d;\n                            }\n                            foreach ($tdeps as $dep) {\n                                if ($dep['type'] !== 'pkg') {\n                                    continue;\n                                }\n                                $deps[] = $dep;\n                            }\n                        }\n                    }\n                }\n                if (!isset($stable)) {\n                    $stable = '-n/a-';\n                }\n                if (!$searchpackage) {\n                    $info = array('stable' => $latest, 'summary' => $inf['s'], 'description' =>\n                        $inf['d'], 'deps' => $deps, 'category' => $inf['ca']['_content'],\n                        'unstable' => $unstable, 'state' => $state);\n                } else {\n                    $info = array('stable' => $stable, 'summary' => $inf['s'], 'description' =>\n                        $inf['d'], 'deps' => $deps, 'category' => $inf['ca']['_content'],\n                        'unstable' => $unstable, 'state' => $state);\n                }\n            }\n            $ret[$package] = $info;\n        }\n        PEAR::popErrorHandling();\n        return $ret;\n    }\n\n    function listLatestUpgrades($base, $pref_state, $installed, $channel, &$reg)\n    {\n        $packagelist = $this->_rest->retrieveData($base . 'p/packages.xml', false, false, $channel);\n        if (PEAR::isError($packagelist)) {\n            return $packagelist;\n        }\n\n        $ret = array();\n        if (!is_array($packagelist) || !isset($packagelist['p'])) {\n            return $ret;\n        }\n\n        if (!is_array($packagelist['p'])) {\n            $packagelist['p'] = array($packagelist['p']);\n        }\n\n        foreach ($packagelist['p'] as $package) {\n            if (!isset($installed[strtolower($package)])) {\n                continue;\n            }\n\n            $inst_version = $reg->packageInfo($package, 'version', $channel);\n            $inst_state   = $reg->packageInfo($package, 'release_state', $channel);\n            PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n            $info = $this->_rest->retrieveData($base . 'r/' . strtolower($package) .\n                '/allreleases.xml', false, false, $channel);\n            PEAR::popErrorHandling();\n            if (PEAR::isError($info)) {\n                continue; // no remote releases\n            }\n\n            if (!isset($info['r'])) {\n                continue;\n            }\n\n            $release = $found = false;\n            if (!is_array($info['r']) || !isset($info['r'][0])) {\n                $info['r'] = array($info['r']);\n            }\n\n            // $info['r'] is sorted by version number\n            usort($info['r'], array($this, '_sortReleasesByVersionNumber'));\n            foreach ($info['r'] as $release) {\n                if ($inst_version && version_compare($release['v'], $inst_version, '<=')) {\n                    // not newer than the one installed\n                    break;\n                }\n\n                // new version > installed version\n                if (!$pref_state) {\n                    // every state is a good state\n                    $found = true;\n                    break;\n                } else {\n                    $new_state = $release['s'];\n                    // if new state >= installed state: go\n                    if (in_array($new_state, $this->betterStates($inst_state, true))) {\n                        $found = true;\n                        break;\n                    } else {\n                        // only allow to lower the state of package,\n                        // if new state >= preferred state: go\n                        if (in_array($new_state, $this->betterStates($pref_state, true))) {\n                            $found = true;\n                            break;\n                        }\n                    }\n                }\n            }\n\n            if (!$found) {\n                continue;\n            }\n\n            $relinfo = $this->_rest->retrieveCacheFirst($base . 'r/' . strtolower($package) . '/' .\n                $release['v'] . '.xml', false, false, $channel);\n            if (PEAR::isError($relinfo)) {\n                return $relinfo;\n            }\n\n            $ret[$package] = array(\n                'version'  => $release['v'],\n                'state'    => $release['s'],\n                'filesize' => $relinfo['f'],\n            );\n        }\n\n        return $ret;\n    }\n\n    function packageInfo($base, $package, $channel = false)\n    {\n        PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n        $pinfo = $this->_rest->retrieveData($base . 'p/' . strtolower($package) . '/info.xml', false, false, $channel);\n        if (PEAR::isError($pinfo)) {\n            PEAR::popErrorHandling();\n            return PEAR::raiseError('Unknown package: \"' . $package . '\" in channel \"' . $channel . '\"' . \"\\n\". 'Debug: ' .\n                $pinfo->getMessage());\n        }\n\n        $releases = array();\n        $allreleases = $this->_rest->retrieveData($base . 'r/' . strtolower($package) .\n            '/allreleases.xml', false, false, $channel);\n        if (!PEAR::isError($allreleases)) {\n            if (!class_exists('PEAR_PackageFile_v2')) {\n                require_once 'PEAR/PackageFile/v2.php';\n            }\n\n            if (!is_array($allreleases['r']) || !isset($allreleases['r'][0])) {\n                $allreleases['r'] = array($allreleases['r']);\n            }\n\n            $pf = new PEAR_PackageFile_v2;\n            foreach ($allreleases['r'] as $release) {\n                $ds = $this->_rest->retrieveCacheFirst($base . 'r/' . strtolower($package) . '/deps.' .\n                    $release['v'] . '.txt', false, false, $channel);\n                if (PEAR::isError($ds)) {\n                    continue;\n                }\n\n                if (!isset($latest)) {\n                    $latest = $release['v'];\n                }\n\n                $pf->setDeps(unserialize($ds));\n                $ds = $pf->getDeps();\n                $info = $this->_rest->retrieveCacheFirst($base . 'r/' . strtolower($package)\n                    . '/' . $release['v'] . '.xml', false, false, $channel);\n\n                if (PEAR::isError($info)) {\n                    continue;\n                }\n\n                $releases[$release['v']] = array(\n                    'doneby' => $info['m'],\n                    'license' => $info['l'],\n                    'summary' => $info['s'],\n                    'description' => $info['d'],\n                    'releasedate' => $info['da'],\n                    'releasenotes' => $info['n'],\n                    'state' => $release['s'],\n                    'deps' => $ds ? $ds : array(),\n                );\n            }\n        } else {\n            $latest = '';\n        }\n\n        PEAR::popErrorHandling();\n        if (isset($pinfo['dc']) && isset($pinfo['dp'])) {\n            if (is_array($pinfo['dp'])) {\n                $deprecated = array('channel' => (string) $pinfo['dc'],\n                                    'package' => trim($pinfo['dp']['_content']));\n            } else {\n                $deprecated = array('channel' => (string) $pinfo['dc'],\n                                    'package' => trim($pinfo['dp']));\n            }\n        } else {\n            $deprecated = false;\n        }\n\n        if (!isset($latest)) {\n            $latest = '';\n        }\n\n        return array(\n            'name' => $pinfo['n'],\n            'channel' => $pinfo['c'],\n            'category' => $pinfo['ca']['_content'],\n            'stable' => $latest,\n            'license' => $pinfo['l'],\n            'summary' => $pinfo['s'],\n            'description' => $pinfo['d'],\n            'releases' => $releases,\n            'deprecated' => $deprecated,\n            );\n    }\n\n    /**\n     * Return an array containing all of the states that are more stable than\n     * or equal to the passed in state\n     *\n     * @param string Release state\n     * @param boolean Determines whether to include $state in the list\n     * @return false|array False if $state is not a valid release state\n     */\n    function betterStates($state, $include = false)\n    {\n        static $states = array('snapshot', 'devel', 'alpha', 'beta', 'stable');\n        $i = array_search($state, $states);\n        if ($i === false) {\n            return false;\n        }\n\n        if ($include) {\n            $i--;\n        }\n\n        return array_slice($states, $i + 1);\n    }\n\n    /**\n     * Sort releases by version number\n     *\n     * @access private\n     */\n    function _sortReleasesByVersionNumber($a, $b)\n    {\n        if (version_compare($a['v'], $b['v'], '=')) {\n            return 0;\n        }\n\n        if (version_compare($a['v'], $b['v'], '>')) {\n            return -1;\n        }\n\n        if (version_compare($a['v'], $b['v'], '<')) {\n            return 1;\n        }\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/REST/11.php",
    "content": "<?php\n/**\n * PEAR_REST_11 - implement faster list-all/remote-list command\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: 11.php 286670 2009-08-02 14:16:06Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.3\n */\n\n/**\n * For downloading REST xml/txt files\n */\nrequire_once 'PEAR/REST.php';\n\n/**\n * Implement REST 1.1\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.3\n */\nclass PEAR_REST_11\n{\n    /**\n     * @var PEAR_REST\n     */\n    var $_rest;\n\n    function PEAR_REST_11($config, $options = array())\n    {\n        $this->_rest = &new PEAR_REST($config, $options);\n    }\n\n    function listAll($base, $dostable, $basic = true, $searchpackage = false, $searchsummary = false, $channel = false)\n    {\n        $categorylist = $this->_rest->retrieveData($base . 'c/categories.xml', false, false, $channel);\n        if (PEAR::isError($categorylist)) {\n            return $categorylist;\n        }\n\n        $ret = array();\n        if (!is_array($categorylist['c']) || !isset($categorylist['c'][0])) {\n            $categorylist['c'] = array($categorylist['c']);\n        }\n\n        PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n\n        foreach ($categorylist['c'] as $progress => $category) {\n            $category = $category['_content'];\n            $packagesinfo = $this->_rest->retrieveData($base .\n                'c/' . urlencode($category) . '/packagesinfo.xml', false, false, $channel);\n\n            if (PEAR::isError($packagesinfo)) {\n                continue;\n            }\n\n            if (!is_array($packagesinfo) || !isset($packagesinfo['pi'])) {\n                continue;\n            }\n\n            if (!is_array($packagesinfo['pi']) || !isset($packagesinfo['pi'][0])) {\n                $packagesinfo['pi'] = array($packagesinfo['pi']);\n            }\n\n            foreach ($packagesinfo['pi'] as $packageinfo) {\n                if (empty($packageinfo)) {\n                    continue;\n                }\n\n                $info     = $packageinfo['p'];\n                $package  = $info['n'];\n                $releases = isset($packageinfo['a']) ? $packageinfo['a'] : false;\n                unset($latest);\n                unset($unstable);\n                unset($stable);\n                unset($state);\n\n                if ($releases) {\n                    if (!isset($releases['r'][0])) {\n                        $releases['r'] = array($releases['r']);\n                    }\n\n                    foreach ($releases['r'] as $release) {\n                        if (!isset($latest)) {\n                            if ($dostable && $release['s'] == 'stable') {\n                                $latest = $release['v'];\n                                $state = 'stable';\n                            }\n                            if (!$dostable) {\n                                $latest = $release['v'];\n                                $state = $release['s'];\n                            }\n                        }\n\n                        if (!isset($stable) && $release['s'] == 'stable') {\n                            $stable = $release['v'];\n                            if (!isset($unstable)) {\n                                $unstable = $stable;\n                            }\n                        }\n\n                        if (!isset($unstable) && $release['s'] != 'stable') {\n                            $unstable = $release['v'];\n                            $state = $release['s'];\n                        }\n\n                        if (isset($latest) && !isset($state)) {\n                            $state = $release['s'];\n                        }\n\n                        if (isset($latest) && isset($stable) && isset($unstable)) {\n                            break;\n                        }\n                    }\n                }\n\n                if ($basic) { // remote-list command\n                    if (!isset($latest)) {\n                        $latest = false;\n                    }\n\n                    if ($dostable) {\n                        // $state is not set if there are no releases\n                        if (isset($state) && $state == 'stable') {\n                            $ret[$package] = array('stable' => $latest);\n                        } else {\n                            $ret[$package] = array('stable' => '-n/a-');\n                        }\n                    } else {\n                        $ret[$package] = array('stable' => $latest);\n                    }\n\n                    continue;\n                }\n\n                // list-all command\n                if (!isset($unstable)) {\n                    $unstable = false;\n                    $state = 'stable';\n                    if (isset($stable)) {\n                        $latest = $unstable = $stable;\n                    }\n                } else {\n                    $latest = $unstable;\n                }\n\n                if (!isset($latest)) {\n                    $latest = false;\n                }\n\n                $deps = array();\n                if ($latest && isset($packageinfo['deps'])) {\n                    if (!is_array($packageinfo['deps']) ||\n                          !isset($packageinfo['deps'][0])\n                    ) {\n                        $packageinfo['deps'] = array($packageinfo['deps']);\n                    }\n\n                    $d = false;\n                    foreach ($packageinfo['deps'] as $dep) {\n                        if ($dep['v'] == $latest) {\n                            $d = unserialize($dep['d']);\n                        }\n                    }\n\n                    if ($d) {\n                        if (isset($d['required'])) {\n                            if (!class_exists('PEAR_PackageFile_v2')) {\n                                require_once 'PEAR/PackageFile/v2.php';\n                            }\n\n                            if (!isset($pf)) {\n                                $pf = new PEAR_PackageFile_v2;\n                            }\n\n                            $pf->setDeps($d);\n                            $tdeps = $pf->getDeps();\n                        } else {\n                            $tdeps = $d;\n                        }\n\n                        foreach ($tdeps as $dep) {\n                            if ($dep['type'] !== 'pkg') {\n                                continue;\n                            }\n\n                            $deps[] = $dep;\n                        }\n                    }\n                }\n\n                $info = array(\n                    'stable'      => $latest,\n                    'summary'     => $info['s'],\n                    'description' => $info['d'],\n                    'deps'        => $deps,\n                    'category'    => $info['ca']['_content'],\n                    'unstable'    => $unstable,\n                    'state'       => $state\n                );\n                $ret[$package] = $info;\n            }\n        }\n\n        PEAR::popErrorHandling();\n        return $ret;\n    }\n\n    /**\n     * List all categories of a REST server\n     *\n     * @param string $base base URL of the server\n     * @return array of categorynames\n     */\n    function listCategories($base, $channel = false)\n    {\n        $categorylist = $this->_rest->retrieveData($base . 'c/categories.xml', false, false, $channel);\n        if (PEAR::isError($categorylist)) {\n            return $categorylist;\n        }\n\n        if (!is_array($categorylist) || !isset($categorylist['c'])) {\n            return array();\n        }\n\n        if (isset($categorylist['c']['_content'])) {\n            // only 1 category\n            $categorylist['c'] = array($categorylist['c']);\n        }\n\n        return $categorylist['c'];\n    }\n\n    /**\n     * List packages in a category of a REST server\n     *\n     * @param string $base base URL of the server\n     * @param string $category name of the category\n     * @param boolean $info also download full package info\n     * @return array of packagenames\n     */\n    function listCategory($base, $category, $info = false, $channel = false)\n    {\n        if ($info == false) {\n            $url = '%s'.'c/%s/packages.xml';\n        } else {\n            $url = '%s'.'c/%s/packagesinfo.xml';\n        }\n        $url = sprintf($url,\n                    $base,\n                    urlencode($category));\n\n        // gives '404 Not Found' error when category doesn't exist\n        $packagelist = $this->_rest->retrieveData($url, false, false, $channel);\n        if (PEAR::isError($packagelist)) {\n            return $packagelist;\n        }\n        if (!is_array($packagelist)) {\n            return array();\n        }\n\n        if ($info == false) {\n            if (!isset($packagelist['p'])) {\n                return array();\n            }\n            if (!is_array($packagelist['p']) ||\n                !isset($packagelist['p'][0])) { // only 1 pkg\n                $packagelist = array($packagelist['p']);\n            } else {\n                $packagelist = $packagelist['p'];\n            }\n            return $packagelist;\n        }\n\n        // info == true\n        if (!isset($packagelist['pi'])) {\n            return array();\n        }\n\n        if (!is_array($packagelist['pi']) ||\n            !isset($packagelist['pi'][0])) { // only 1 pkg\n            $packagelist_pre = array($packagelist['pi']);\n        } else {\n            $packagelist_pre = $packagelist['pi'];\n        }\n\n        $packagelist = array();\n        foreach ($packagelist_pre as $i => $item) {\n            // compatibility with r/<latest.txt>.xml\n            if (isset($item['a']['r'][0])) {\n                // multiple releases\n                $item['p']['v'] = $item['a']['r'][0]['v'];\n                $item['p']['st'] = $item['a']['r'][0]['s'];\n            } elseif (isset($item['a'])) {\n                // first and only release\n                $item['p']['v'] = $item['a']['r']['v'];\n                $item['p']['st'] = $item['a']['r']['s'];\n            }\n\n            $packagelist[$i] = array('attribs' => $item['p']['r'],\n                                     '_content' => $item['p']['n'],\n                                     'info' => $item['p']);\n        }\n\n        return $packagelist;\n    }\n\n    /**\n     * Return an array containing all of the states that are more stable than\n     * or equal to the passed in state\n     *\n     * @param string Release state\n     * @param boolean Determines whether to include $state in the list\n     * @return false|array False if $state is not a valid release state\n     */\n    function betterStates($state, $include = false)\n    {\n        static $states = array('snapshot', 'devel', 'alpha', 'beta', 'stable');\n        $i = array_search($state, $states);\n        if ($i === false) {\n            return false;\n        }\n        if ($include) {\n            $i--;\n        }\n        return array_slice($states, $i + 1);\n    }\n}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/REST/13.php",
    "content": "<?php\n/**\n * PEAR_REST_13\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: 13.php 287110 2009-08-11 18:51:15Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a12\n */\n\n/**\n * For downloading REST xml/txt files\n */\nrequire_once 'PEAR/REST.php';\nrequire_once 'PEAR/REST/10.php';\n\n/**\n * Implement REST 1.3\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a12\n */\nclass PEAR_REST_13 extends PEAR_REST_10\n{\n    /**\n     * Retrieve information about a remote package to be downloaded from a REST server\n     *\n     * This is smart enough to resolve the minimum PHP version dependency prior to download\n     * @param string $base The uri to prepend to all REST calls\n     * @param array $packageinfo an array of format:\n     * <pre>\n     *  array(\n     *   'package' => 'packagename',\n     *   'channel' => 'channelname',\n     *  ['state' => 'alpha' (or valid state),]\n     *  -or-\n     *  ['version' => '1.whatever']\n     * </pre>\n     * @param string $prefstate Current preferred_state config variable value\n     * @param bool $installed the installed version of this package to compare against\n     * @return array|false|PEAR_Error see {@link _returnDownloadURL()}\n     */\n    function getDownloadURL($base, $packageinfo, $prefstate, $installed, $channel = false)\n    {\n        $states = $this->betterStates($prefstate, true);\n        if (!$states) {\n            return PEAR::raiseError('\"' . $prefstate . '\" is not a valid state');\n        }\n\n        $channel  = $packageinfo['channel'];\n        $package  = $packageinfo['package'];\n        $state    = isset($packageinfo['state'])   ? $packageinfo['state']   : null;\n        $version  = isset($packageinfo['version']) ? $packageinfo['version'] : null;\n        $restFile = $base . 'r/' . strtolower($package) . '/allreleases2.xml';\n\n        $info = $this->_rest->retrieveData($restFile, false, false, $channel);\n        if (PEAR::isError($info)) {\n            return PEAR::raiseError('No releases available for package \"' .\n                $channel . '/' . $package . '\"');\n        }\n\n        if (!isset($info['r'])) {\n            return false;\n        }\n\n        $release = $found = false;\n        if (!is_array($info['r']) || !isset($info['r'][0])) {\n            $info['r'] = array($info['r']);\n        }\n\n        $skippedphp = false;\n        foreach ($info['r'] as $release) {\n            if (!isset($this->_rest->_options['force']) && ($installed &&\n                  version_compare($release['v'], $installed, '<'))) {\n                continue;\n            }\n\n            if (isset($state)) {\n                // try our preferred state first\n                if ($release['s'] == $state) {\n                    if (!isset($version) && version_compare($release['m'], phpversion(), '>')) {\n                        // skip releases that require a PHP version newer than our PHP version\n                        $skippedphp = $release;\n                        continue;\n                    }\n                    $found = true;\n                    break;\n                }\n\n                // see if there is something newer and more stable\n                // bug #7221\n                if (in_array($release['s'], $this->betterStates($state), true)) {\n                    if (!isset($version) && version_compare($release['m'], phpversion(), '>')) {\n                        // skip releases that require a PHP version newer than our PHP version\n                        $skippedphp = $release;\n                        continue;\n                    }\n                    $found = true;\n                    break;\n                }\n            } elseif (isset($version)) {\n                if ($release['v'] == $version) {\n                    if (!isset($this->_rest->_options['force']) &&\n                          !isset($version) &&\n                          version_compare($release['m'], phpversion(), '>')) {\n                        // skip releases that require a PHP version newer than our PHP version\n                        $skippedphp = $release;\n                        continue;\n                    }\n                    $found = true;\n                    break;\n                }\n            } else {\n                if (in_array($release['s'], $states)) {\n                    if (version_compare($release['m'], phpversion(), '>')) {\n                        // skip releases that require a PHP version newer than our PHP version\n                        $skippedphp = $release;\n                        continue;\n                    }\n                    $found = true;\n                    break;\n                }\n            }\n        }\n\n        if (!$found && $skippedphp) {\n            $found = null;\n        }\n\n        return $this->_returnDownloadURL($base, $package, $release, $info, $found, $skippedphp, $channel);\n    }\n\n    function getDepDownloadURL($base, $xsdversion, $dependency, $deppackage,\n                               $prefstate = 'stable', $installed = false, $channel = false)\n    {\n        $states = $this->betterStates($prefstate, true);\n        if (!$states) {\n            return PEAR::raiseError('\"' . $prefstate . '\" is not a valid state');\n        }\n\n        $channel  = $dependency['channel'];\n        $package  = $dependency['name'];\n        $state    = isset($dependency['state'])   ? $dependency['state']   : null;\n        $version  = isset($dependency['version']) ? $dependency['version'] : null;\n        $restFile = $base . 'r/' . strtolower($package) .'/allreleases2.xml';\n\n        $info = $this->_rest->retrieveData($restFile, false, false, $channel);\n        if (PEAR::isError($info)) {\n            return PEAR::raiseError('Package \"' . $deppackage['channel'] . '/' . $deppackage['package']\n                . '\" dependency \"' . $channel . '/' . $package . '\" has no releases');\n        }\n\n        if (!is_array($info) || !isset($info['r'])) {\n            return false;\n        }\n\n        $exclude = array();\n        $min = $max = $recommended = false;\n        if ($xsdversion == '1.0') {\n            $pinfo['package'] = $dependency['name'];\n            $pinfo['channel'] = 'pear.php.net'; // this is always true - don't change this\n            switch ($dependency['rel']) {\n                case 'ge' :\n                    $min = $dependency['version'];\n                break;\n                case 'gt' :\n                    $min = $dependency['version'];\n                    $exclude = array($dependency['version']);\n                break;\n                case 'eq' :\n                    $recommended = $dependency['version'];\n                break;\n                case 'lt' :\n                    $max = $dependency['version'];\n                    $exclude = array($dependency['version']);\n                break;\n                case 'le' :\n                    $max = $dependency['version'];\n                break;\n                case 'ne' :\n                    $exclude = array($dependency['version']);\n                break;\n            }\n        } else {\n            $pinfo['package'] = $dependency['name'];\n            $min = isset($dependency['min']) ? $dependency['min'] : false;\n            $max = isset($dependency['max']) ? $dependency['max'] : false;\n            $recommended = isset($dependency['recommended']) ?\n                $dependency['recommended'] : false;\n            if (isset($dependency['exclude'])) {\n                if (!isset($dependency['exclude'][0])) {\n                    $exclude = array($dependency['exclude']);\n                }\n            }\n        }\n\n        $skippedphp = $found = $release = false;\n        if (!is_array($info['r']) || !isset($info['r'][0])) {\n            $info['r'] = array($info['r']);\n        }\n\n        foreach ($info['r'] as $release) {\n            if (!isset($this->_rest->_options['force']) && ($installed &&\n                  version_compare($release['v'], $installed, '<'))) {\n                continue;\n            }\n\n            if (in_array($release['v'], $exclude)) { // skip excluded versions\n                continue;\n            }\n\n            // allow newer releases to say \"I'm OK with the dependent package\"\n            if ($xsdversion == '2.0' && isset($release['co'])) {\n                if (!is_array($release['co']) || !isset($release['co'][0])) {\n                    $release['co'] = array($release['co']);\n                }\n\n                foreach ($release['co'] as $entry) {\n                    if (isset($entry['x']) && !is_array($entry['x'])) {\n                        $entry['x'] = array($entry['x']);\n                    } elseif (!isset($entry['x'])) {\n                        $entry['x'] = array();\n                    }\n\n                    if ($entry['c'] == $deppackage['channel'] &&\n                          strtolower($entry['p']) == strtolower($deppackage['package']) &&\n                          version_compare($deppackage['version'], $entry['min'], '>=') &&\n                          version_compare($deppackage['version'], $entry['max'], '<=') &&\n                          !in_array($release['v'], $entry['x'])) {\n                        if (version_compare($release['m'], phpversion(), '>')) {\n                            // skip dependency releases that require a PHP version\n                            // newer than our PHP version\n                            $skippedphp = $release;\n                            continue;\n                        }\n\n                        $recommended = $release['v'];\n                        break;\n                    }\n                }\n            }\n\n            if ($recommended) {\n                if ($release['v'] != $recommended) { // if we want a specific\n                    // version, then skip all others\n                    continue;\n                }\n\n                if (!in_array($release['s'], $states)) {\n                    // the stability is too low, but we must return the\n                    // recommended version if possible\n                    return $this->_returnDownloadURL($base, $package, $release, $info, true, false, $channel);\n                }\n            }\n\n            if ($min && version_compare($release['v'], $min, 'lt')) { // skip too old versions\n                continue;\n            }\n\n            if ($max && version_compare($release['v'], $max, 'gt')) { // skip too new versions\n                continue;\n            }\n\n            if ($installed && version_compare($release['v'], $installed, '<')) {\n                continue;\n            }\n\n            if (in_array($release['s'], $states)) { // if in the preferred state...\n                if (version_compare($release['m'], phpversion(), '>')) {\n                    // skip dependency releases that require a PHP version\n                    // newer than our PHP version\n                    $skippedphp = $release;\n                    continue;\n                }\n\n                $found = true; // ... then use it\n                break;\n            }\n        }\n\n        if (!$found && $skippedphp) {\n            $found = null;\n        }\n\n        return $this->_returnDownloadURL($base, $package, $release, $info, $found, $skippedphp, $channel);\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/REST.php",
    "content": "<?php\n/**\n * PEAR_REST\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: REST.php 296767 2010-03-25 00:58:33Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n\n/**\n * For downloading xml files\n */\nrequire_once 'PEAR.php';\nrequire_once 'PEAR/XMLParser.php';\n\n/**\n * Intelligently retrieve data, following hyperlinks if necessary, and re-directing\n * as well\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_REST\n{\n    var $config;\n    var $_options;\n\n    function PEAR_REST(&$config, $options = array())\n    {\n        $this->config   = &$config;\n        $this->_options = $options;\n    }\n\n    /**\n     * Retrieve REST data, but always retrieve the local cache if it is available.\n     *\n     * This is useful for elements that should never change, such as information on a particular\n     * release\n     * @param string full URL to this resource\n     * @param array|false contents of the accept-encoding header\n     * @param boolean     if true, xml will be returned as a string, otherwise, xml will be\n     *                    parsed using PEAR_XMLParser\n     * @return string|array\n     */\n    function retrieveCacheFirst($url, $accept = false, $forcestring = false, $channel = false)\n    {\n        $cachefile = $this->config->get('cache_dir') . DIRECTORY_SEPARATOR .\n            md5($url) . 'rest.cachefile';\n\n        if (file_exists($cachefile)) {\n            return unserialize(implode('', file($cachefile)));\n        }\n\n        return $this->retrieveData($url, $accept, $forcestring, $channel);\n    }\n\n    /**\n     * Retrieve a remote REST resource\n     * @param string full URL to this resource\n     * @param array|false contents of the accept-encoding header\n     * @param boolean     if true, xml will be returned as a string, otherwise, xml will be\n     *                    parsed using PEAR_XMLParser\n     * @return string|array\n     */\n    function retrieveData($url, $accept = false, $forcestring = false, $channel = false)\n    {\n        $cacheId = $this->getCacheId($url);\n        if ($ret = $this->useLocalCache($url, $cacheId)) {\n            return $ret;\n        }\n\n        $file = $trieddownload = false;\n        if (!isset($this->_options['offline'])) {\n            $trieddownload = true;\n            $file = $this->downloadHttp($url, $cacheId ? $cacheId['lastChange'] : false, $accept, $channel);\n        }\n\n        if (PEAR::isError($file)) {\n            if ($file->getCode() !== -9276) {\n                return $file;\n            }\n\n            $trieddownload = false;\n            $file = false; // use local copy if available on socket connect error\n        }\n\n        if (!$file) {\n            $ret = $this->getCache($url);\n            if (!PEAR::isError($ret) && $trieddownload) {\n                // reset the age of the cache if the server says it was unmodified\n                $result = $this->saveCache($url, $ret, null, true, $cacheId);\n                if (PEAR::isError($result)) {\n                    return PEAR::raiseError($result->getMessage());\n                }\n            }\n\n            return $ret;\n        }\n\n        if (is_array($file)) {\n            $headers      = $file[2];\n            $lastmodified = $file[1];\n            $content      = $file[0];\n        } else {\n            $headers      = array();\n            $lastmodified = false;\n            $content      = $file;\n        }\n\n        if ($forcestring) {\n            $result = $this->saveCache($url, $content, $lastmodified, false, $cacheId);\n            if (PEAR::isError($result)) {\n                return PEAR::raiseError($result->getMessage());\n            }\n\n            return $content;\n        }\n\n        if (isset($headers['content-type'])) {\n            switch ($headers['content-type']) {\n                case 'text/xml' :\n                case 'application/xml' :\n                case 'text/plain' :\n                    if ($headers['content-type'] === 'text/plain') {\n                        $check = substr($content, 0, 5);\n                        if ($check !== '<?xml') {\n                            break;\n                        }\n                    }\n\n                    $parser = new PEAR_XMLParser;\n                    PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n                    $err = $parser->parse($content);\n                    PEAR::popErrorHandling();\n                    if (PEAR::isError($err)) {\n                        return PEAR::raiseError('Invalid xml downloaded from \"' . $url . '\": ' .\n                            $err->getMessage());\n                    }\n                    $content = $parser->getData();\n                case 'text/html' :\n                default :\n                    // use it as a string\n            }\n        } else {\n            // assume XML\n            $parser = new PEAR_XMLParser;\n            $parser->parse($content);\n            $content = $parser->getData();\n        }\n\n        $result = $this->saveCache($url, $content, $lastmodified, false, $cacheId);\n        if (PEAR::isError($result)) {\n            return PEAR::raiseError($result->getMessage());\n        }\n\n        return $content;\n    }\n\n    function useLocalCache($url, $cacheid = null)\n    {\n        if ($cacheid === null) {\n            $cacheidfile = $this->config->get('cache_dir') . DIRECTORY_SEPARATOR .\n                md5($url) . 'rest.cacheid';\n            if (!file_exists($cacheidfile)) {\n                return false;\n            }\n\n            $cacheid = unserialize(implode('', file($cacheidfile)));\n        }\n\n        $cachettl = $this->config->get('cache_ttl');\n        // If cache is newer than $cachettl seconds, we use the cache!\n        if (time() - $cacheid['age'] < $cachettl) {\n            return $this->getCache($url);\n        }\n\n        return false;\n    }\n\n    function getCacheId($url)\n    {\n        $cacheidfile = $this->config->get('cache_dir') . DIRECTORY_SEPARATOR .\n            md5($url) . 'rest.cacheid';\n\n        if (!file_exists($cacheidfile)) {\n            return false;\n        }\n\n        $ret = unserialize(implode('', file($cacheidfile)));\n        return $ret;\n    }\n\n    function getCache($url)\n    {\n        $cachefile = $this->config->get('cache_dir') . DIRECTORY_SEPARATOR .\n            md5($url) . 'rest.cachefile';\n\n        if (!file_exists($cachefile)) {\n            return PEAR::raiseError('No cached content available for \"' . $url . '\"');\n        }\n\n        return unserialize(implode('', file($cachefile)));\n    }\n\n    /**\n     * @param string full URL to REST resource\n     * @param string original contents of the REST resource\n     * @param array  HTTP Last-Modified and ETag headers\n     * @param bool   if true, then the cache id file should be regenerated to\n     *               trigger a new time-to-live value\n     */\n    function saveCache($url, $contents, $lastmodified, $nochange = false, $cacheid = null)\n    {\n        $cache_dir   = $this->config->get('cache_dir');\n        $d           = $cache_dir . DIRECTORY_SEPARATOR . md5($url);\n        $cacheidfile = $d . 'rest.cacheid';\n        $cachefile   = $d . 'rest.cachefile';\n\n        if (!is_dir($cache_dir)) {\n            if (System::mkdir(array('-p', $cache_dir)) === false) {\n              return PEAR::raiseError(\"The value of config option cache_dir ($cache_dir) is not a directory and attempts to create the directory failed.\");\n            }\n        }\n\n        if ($cacheid === null && $nochange) {\n            $cacheid = unserialize(implode('', file($cacheidfile)));\n        }\n\n        $idData = serialize(array(\n            'age'        => time(),\n            'lastChange' => ($nochange ? $cacheid['lastChange'] : $lastmodified),\n        ));\n\n        $result = $this->saveCacheFile($cacheidfile, $idData);\n        if (PEAR::isError($result)) {\n            return $result;\n        } elseif ($nochange) {\n            return true;\n        }\n\n        $result = $this->saveCacheFile($cachefile, serialize($contents));\n        if (PEAR::isError($result)) {\n            if (file_exists($cacheidfile)) {\n              @unlink($cacheidfile);\n            }\n\n            return $result;\n        }\n\n        return true;\n    }\n\n    function saveCacheFile($file, $contents)\n    {\n        $len = strlen($contents);\n\n        $cachefile_fp = @fopen($file, 'xb'); // x is the O_CREAT|O_EXCL mode\n        if ($cachefile_fp !== false) { // create file\n            if (fwrite($cachefile_fp, $contents, $len) < $len) {\n                fclose($cachefile_fp);\n                return PEAR::raiseError(\"Could not write $file.\");\n            }\n        } else { // update file\n            $cachefile_lstat = lstat($file);\n            $cachefile_fp = @fopen($file, 'wb');\n            if (!$cachefile_fp) {\n                return PEAR::raiseError(\"Could not open $file for writing.\");\n            }\n\n            $cachefile_fstat = fstat($cachefile_fp);\n            if (\n              $cachefile_lstat['mode'] == $cachefile_fstat['mode'] &&\n              $cachefile_lstat['ino']  == $cachefile_fstat['ino'] &&\n              $cachefile_lstat['dev']  == $cachefile_fstat['dev'] &&\n              $cachefile_fstat['nlink'] === 1\n            ) {\n                if (fwrite($cachefile_fp, $contents, $len) < $len) {\n                    fclose($cachefile_fp);\n                    return PEAR::raiseError(\"Could not write $file.\");\n                }\n            } else {\n                fclose($cachefile_fp);\n                $link = function_exists('readlink') ? readlink($file) : $file;\n                return PEAR::raiseError('SECURITY ERROR: Will not write to ' . $file . ' as it is symlinked to ' . $link . ' - Possible symlink attack');\n            }\n        }\n\n        fclose($cachefile_fp);\n        return true;\n    }\n\n    /**\n     * Efficiently Download a file through HTTP.  Returns downloaded file as a string in-memory\n     * This is best used for small files\n     *\n     * If an HTTP proxy has been configured (http_proxy PEAR_Config\n     * setting), the proxy will be used.\n     *\n     * @param string  $url       the URL to download\n     * @param string  $save_dir  directory to save file in\n     * @param false|string|array $lastmodified header values to check against for caching\n     *                           use false to return the header values from this download\n     * @param false|array $accept Accept headers to send\n     * @return string|array  Returns the contents of the downloaded file or a PEAR\n     *                       error on failure.  If the error is caused by\n     *                       socket-related errors, the error object will\n     *                       have the fsockopen error code available through\n     *                       getCode().  If caching is requested, then return the header\n     *                       values.\n     *\n     * @access public\n     */\n    function downloadHttp($url, $lastmodified = null, $accept = false, $channel = false)\n    {\n        static $redirect = 0;\n        // always reset , so we are clean case of error\n        $wasredirect = $redirect;\n        $redirect = 0;\n\n        $info = parse_url($url);\n        if (!isset($info['scheme']) || !in_array($info['scheme'], array('http', 'https'))) {\n            return PEAR::raiseError('Cannot download non-http URL \"' . $url . '\"');\n        }\n\n        if (!isset($info['host'])) {\n            return PEAR::raiseError('Cannot download from non-URL \"' . $url . '\"');\n        }\n\n        $host   = isset($info['host']) ? $info['host'] : null;\n        $port   = isset($info['port']) ? $info['port'] : null;\n        $path   = isset($info['path']) ? $info['path'] : null;\n        $schema = (isset($info['scheme']) && $info['scheme'] == 'https') ? 'https' : 'http';\n\n        $proxy_host = $proxy_port = $proxy_user = $proxy_pass = '';\n        if ($this->config->get('http_proxy')&&\n              $proxy = parse_url($this->config->get('http_proxy'))\n        ) {\n            $proxy_host = isset($proxy['host']) ? $proxy['host'] : null;\n            if ($schema === 'https') {\n                $proxy_host = 'ssl://' . $proxy_host;\n            }\n\n            $proxy_port   = isset($proxy['port']) ? $proxy['port'] : 8080;\n            $proxy_user   = isset($proxy['user']) ? urldecode($proxy['user']) : null;\n            $proxy_pass   = isset($proxy['pass']) ? urldecode($proxy['pass']) : null;\n            $proxy_schema = (isset($proxy['scheme']) && $proxy['scheme'] == 'https') ? 'https' : 'http';\n        }\n\n        if (empty($port)) {\n            $port = (isset($info['scheme']) && $info['scheme'] == 'https')  ? 443 : 80;\n        }\n\n        if (isset($proxy['host'])) {\n            $request = \"GET $url HTTP/1.1\\r\\n\";\n        } else {\n            $request = \"GET $path HTTP/1.1\\r\\n\";\n        }\n\n        $request .= \"Host: $host\\r\\n\";\n        $ifmodifiedsince = '';\n        if (is_array($lastmodified)) {\n            if (isset($lastmodified['Last-Modified'])) {\n                $ifmodifiedsince = 'If-Modified-Since: ' . $lastmodified['Last-Modified'] . \"\\r\\n\";\n            }\n\n            if (isset($lastmodified['ETag'])) {\n                $ifmodifiedsince .= \"If-None-Match: $lastmodified[ETag]\\r\\n\";\n            }\n        } else {\n            $ifmodifiedsince = ($lastmodified ? \"If-Modified-Since: $lastmodified\\r\\n\" : '');\n        }\n\n        $request .= $ifmodifiedsince .\n            \"User-Agent: PEAR/1.9.1/PHP/\" . PHP_VERSION . \"\\r\\n\";\n\n        $username = $this->config->get('username', null, $channel);\n        $password = $this->config->get('password', null, $channel);\n\n        if ($username && $password) {\n            $tmp = base64_encode(\"$username:$password\");\n            $request .= \"Authorization: Basic $tmp\\r\\n\";\n        }\n\n        if ($proxy_host != '' && $proxy_user != '') {\n            $request .= 'Proxy-Authorization: Basic ' .\n                base64_encode($proxy_user . ':' . $proxy_pass) . \"\\r\\n\";\n        }\n\n        if ($accept) {\n            $request .= 'Accept: ' . implode(', ', $accept) . \"\\r\\n\";\n        }\n\n        $request .= \"Accept-Encoding:\\r\\n\";\n        $request .= \"Connection: close\\r\\n\";\n        $request .= \"\\r\\n\";\n\n        if ($proxy_host != '') {\n            $fp = @fsockopen($proxy_host, $proxy_port, $errno, $errstr, 15);\n            if (!$fp) {\n                return PEAR::raiseError(\"Connection to `$proxy_host:$proxy_port' failed: $errstr\", -9276);\n            }\n        } else {\n            if ($schema === 'https') {\n                $host = 'ssl://' . $host;\n            }\n\n            $fp = @fsockopen($host, $port, $errno, $errstr);\n            if (!$fp) {\n                return PEAR::raiseError(\"Connection to `$host:$port' failed: $errstr\", $errno);\n            }\n        }\n\n        fwrite($fp, $request);\n\n        $headers = array();\n        $reply   = 0;\n        while ($line = trim(fgets($fp, 1024))) {\n            if (preg_match('/^([^:]+):\\s+(.*)\\s*\\\\z/', $line, $matches)) {\n                $headers[strtolower($matches[1])] = trim($matches[2]);\n            } elseif (preg_match('|^HTTP/1.[01] ([0-9]{3}) |', $line, $matches)) {\n                $reply = (int)$matches[1];\n                if ($reply == 304 && ($lastmodified || ($lastmodified === false))) {\n                    return false;\n                }\n\n                if (!in_array($reply, array(200, 301, 302, 303, 305, 307))) {\n                    return PEAR::raiseError(\"File $schema://$host:$port$path not valid (received: $line)\");\n                }\n            }\n        }\n\n        if ($reply != 200) {\n            if (!isset($headers['location'])) {\n                return PEAR::raiseError(\"File $schema://$host:$port$path not valid (redirected but no location)\");\n            }\n\n            if ($wasredirect > 4) {\n                return PEAR::raiseError(\"File $schema://$host:$port$path not valid (redirection looped more than 5 times)\");\n            }\n\n            $redirect = $wasredirect + 1;\n            return $this->downloadHttp($headers['location'], $lastmodified, $accept, $channel);\n        }\n\n        $length = isset($headers['content-length']) ? $headers['content-length'] : -1;\n\n        $data = '';\n        while ($chunk = @fread($fp, 8192)) {\n            $data .= $chunk;\n        }\n        fclose($fp);\n\n        if ($lastmodified === false || $lastmodified) {\n            if (isset($headers['etag'])) {\n                $lastmodified = array('ETag' => $headers['etag']);\n            }\n\n            if (isset($headers['last-modified'])) {\n                if (is_array($lastmodified)) {\n                    $lastmodified['Last-Modified'] = $headers['last-modified'];\n                } else {\n                    $lastmodified = $headers['last-modified'];\n                }\n            }\n\n            return array($data, $lastmodified, $headers);\n        }\n\n        return $data;\n    }\n}\n"
  },
  {
    "path": "newscoop/include/PEAR/Registry.php",
    "content": "<?php\n/**\n * PEAR_Registry\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Tomas V. V. Cox <cox@idecnet.com>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Registry.php 287555 2009-08-21 21:27:27Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 0.1\n */\n\n/**\n * for PEAR_Error\n */\nrequire_once 'PEAR.php';\nrequire_once 'PEAR/DependencyDB.php';\n\ndefine('PEAR_REGISTRY_ERROR_LOCK',         -2);\ndefine('PEAR_REGISTRY_ERROR_FORMAT',       -3);\ndefine('PEAR_REGISTRY_ERROR_FILE',         -4);\ndefine('PEAR_REGISTRY_ERROR_CONFLICT',     -5);\ndefine('PEAR_REGISTRY_ERROR_CHANNEL_FILE', -6);\n\n/**\n * Administration class used to maintain the installed package database.\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Tomas V. V. Cox <cox@idecnet.com>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_Registry extends PEAR\n{\n    /**\n     * File containing all channel information.\n     * @var string\n     */\n    var $channels = '';\n\n    /** Directory where registry files are stored.\n     * @var string\n     */\n    var $statedir = '';\n\n    /** File where the file map is stored\n     * @var string\n     */\n    var $filemap = '';\n\n    /** Directory where registry files for channels are stored.\n     * @var string\n     */\n    var $channelsdir = '';\n\n    /** Name of file used for locking the registry\n     * @var string\n     */\n    var $lockfile = '';\n\n    /** File descriptor used during locking\n     * @var resource\n     */\n    var $lock_fp = null;\n\n    /** Mode used during locking\n     * @var int\n     */\n    var $lock_mode = 0; // XXX UNUSED\n\n    /** Cache of package information.  Structure:\n     * array(\n     *   'package' => array('id' => ... ),\n     *   ... )\n     * @var array\n     */\n    var $pkginfo_cache = array();\n\n    /** Cache of file map.  Structure:\n     * array( '/path/to/file' => 'package', ... )\n     * @var array\n     */\n    var $filemap_cache = array();\n\n    /**\n     * @var false|PEAR_ChannelFile\n     */\n    var $_pearChannel;\n\n    /**\n     * @var false|PEAR_ChannelFile\n     */\n    var $_peclChannel;\n\n    /**\n     * @var false|PEAR_ChannelFile\n     */\n    var $_docChannel;\n\n    /**\n     * @var PEAR_DependencyDB\n     */\n    var $_dependencyDB;\n\n    /**\n     * @var PEAR_Config\n     */\n    var $_config;\n\n    /**\n     * PEAR_Registry constructor.\n     *\n     * @param string (optional) PEAR install directory (for .php files)\n     * @param PEAR_ChannelFile PEAR_ChannelFile object representing the PEAR channel, if\n     *        default values are not desired.  Only used the very first time a PEAR\n     *        repository is initialized\n     * @param PEAR_ChannelFile PEAR_ChannelFile object representing the PECL channel, if\n     *        default values are not desired.  Only used the very first time a PEAR\n     *        repository is initialized\n     *\n     * @access public\n     */\n    function PEAR_Registry($pear_install_dir = PEAR_INSTALL_DIR, $pear_channel = false,\n                           $pecl_channel = false)\n    {\n        parent::PEAR();\n        $this->setInstallDir($pear_install_dir);\n        $this->_pearChannel = $pear_channel;\n        $this->_peclChannel = $pecl_channel;\n        $this->_config      = false;\n    }\n\n    function setInstallDir($pear_install_dir = PEAR_INSTALL_DIR)\n    {\n        $ds = DIRECTORY_SEPARATOR;\n        $this->install_dir = $pear_install_dir;\n        $this->channelsdir = $pear_install_dir.$ds.'.channels';\n        $this->statedir    = $pear_install_dir.$ds.'.registry';\n        $this->filemap     = $pear_install_dir.$ds.'.filemap';\n        $this->lockfile    = $pear_install_dir.$ds.'.lock';\n    }\n\n    function hasWriteAccess()\n    {\n        if (!file_exists($this->install_dir)) {\n            $dir = $this->install_dir;\n            while ($dir && $dir != '.') {\n                $olddir = $dir;\n                $dir    = dirname($dir);\n                if ($dir != '.' && file_exists($dir)) {\n                    if (is_writeable($dir)) {\n                        return true;\n                    }\n\n                    return false;\n                }\n\n                if ($dir == $olddir) { // this can happen in safe mode\n                    return @is_writable($dir);\n                }\n            }\n\n            return false;\n        }\n\n        return is_writeable($this->install_dir);\n    }\n\n    function setConfig(&$config, $resetInstallDir = true)\n    {\n        $this->_config = &$config;\n        if ($resetInstallDir) {\n            $this->setInstallDir($config->get('php_dir'));\n        }\n    }\n\n    function _initializeChannelDirs()\n    {\n        static $running = false;\n        if (!$running) {\n            $running = true;\n            $ds = DIRECTORY_SEPARATOR;\n            if (!is_dir($this->channelsdir) ||\n                  !file_exists($this->channelsdir . $ds . 'pear.php.net.reg') ||\n                  !file_exists($this->channelsdir . $ds . 'pecl.php.net.reg') ||\n                  !file_exists($this->channelsdir . $ds . 'doc.php.net.reg') ||\n                  !file_exists($this->channelsdir . $ds . '__uri.reg')) {\n                if (!file_exists($this->channelsdir . $ds . 'pear.php.net.reg')) {\n                    $pear_channel = $this->_pearChannel;\n                    if (!is_a($pear_channel, 'PEAR_ChannelFile') || !$pear_channel->validate()) {\n                        if (!class_exists('PEAR_ChannelFile')) {\n                            require_once 'PEAR/ChannelFile.php';\n                        }\n\n                        $pear_channel = new PEAR_ChannelFile;\n                        $pear_channel->setAlias('pear');\n                        $pear_channel->setServer('pear.php.net');\n                        $pear_channel->setSummary('PHP Extension and Application Repository');\n                        $pear_channel->setDefaultPEARProtocols();\n                        $pear_channel->setBaseURL('REST1.0', 'http://pear.php.net/rest/');\n                        $pear_channel->setBaseURL('REST1.1', 'http://pear.php.net/rest/');\n                        $pear_channel->setBaseURL('REST1.3', 'http://pear.php.net/rest/');\n                        //$pear_channel->setBaseURL('REST1.4', 'http://pear.php.net/rest/');\n                    } else {\n                        $pear_channel->setServer('pear.php.net');\n                        $pear_channel->setAlias('pear');\n                    }\n\n                    $pear_channel->validate();\n                    $this->_addChannel($pear_channel);\n                }\n\n                if (!file_exists($this->channelsdir . $ds . 'pecl.php.net.reg')) {\n                    $pecl_channel = $this->_peclChannel;\n                    if (!is_a($pecl_channel, 'PEAR_ChannelFile') || !$pecl_channel->validate()) {\n                        if (!class_exists('PEAR_ChannelFile')) {\n                            require_once 'PEAR/ChannelFile.php';\n                        }\n\n                        $pecl_channel = new PEAR_ChannelFile;\n                        $pecl_channel->setAlias('pecl');\n                        $pecl_channel->setServer('pecl.php.net');\n                        $pecl_channel->setSummary('PHP Extension Community Library');\n                        $pecl_channel->setDefaultPEARProtocols();\n                        $pecl_channel->setBaseURL('REST1.0', 'http://pecl.php.net/rest/');\n                        $pecl_channel->setBaseURL('REST1.1', 'http://pecl.php.net/rest/');\n                        $pecl_channel->setValidationPackage('PEAR_Validator_PECL', '1.0');\n                    } else {\n                        $pecl_channel->setServer('pecl.php.net');\n                        $pecl_channel->setAlias('pecl');\n                    }\n\n                    $pecl_channel->validate();\n                    $this->_addChannel($pecl_channel);\n                }\n\n                if (!file_exists($this->channelsdir . $ds . 'doc.php.net.reg')) {\n                    $doc_channel = $this->_docChannel;\n                    if (!is_a($doc_channel, 'PEAR_ChannelFile') || !$doc_channel->validate()) {\n                        if (!class_exists('PEAR_ChannelFile')) {\n                            require_once 'PEAR/ChannelFile.php';\n                        }\n\n                        $doc_channel = new PEAR_ChannelFile;\n                        $doc_channel->setAlias('phpdocs');\n                        $doc_channel->setServer('doc.php.net');\n                        $doc_channel->setSummary('PHP Documentation Team');\n                        $doc_channel->setDefaultPEARProtocols();\n                        $doc_channel->setBaseURL('REST1.0', 'http://doc.php.net/rest/');\n                        $doc_channel->setBaseURL('REST1.1', 'http://doc.php.net/rest/');\n                        $doc_channel->setBaseURL('REST1.3', 'http://doc.php.net/rest/');\n                    } else {\n                        $doc_channel->setServer('doc.php.net');\n                        $doc_channel->setAlias('doc');\n                    }\n\n                    $doc_channel->validate();\n                    $this->_addChannel($doc_channel);\n                }\n\n                if (!file_exists($this->channelsdir . $ds . '__uri.reg')) {\n                    if (!class_exists('PEAR_ChannelFile')) {\n                        require_once 'PEAR/ChannelFile.php';\n                    }\n\n                    $private = new PEAR_ChannelFile;\n                    $private->setName('__uri');\n                    $private->setDefaultPEARProtocols();\n                    $private->setBaseURL('REST1.0', '****');\n                    $private->setSummary('Pseudo-channel for static packages');\n                    $this->_addChannel($private);\n                }\n                $this->_rebuildFileMap();\n            }\n\n            $running = false;\n        }\n    }\n\n    function _initializeDirs()\n    {\n        $ds = DIRECTORY_SEPARATOR;\n        // XXX Compatibility code should be removed in the future\n        // rename all registry files if any to lowercase\n        if (!OS_WINDOWS && file_exists($this->statedir) && is_dir($this->statedir) &&\n              $handle = opendir($this->statedir)) {\n            $dest = $this->statedir . $ds;\n            while (false !== ($file = readdir($handle))) {\n                if (preg_match('/^.*[A-Z].*\\.reg\\\\z/', $file)) {\n                    rename($dest . $file, $dest . strtolower($file));\n                }\n            }\n            closedir($handle);\n        }\n\n        $this->_initializeChannelDirs();\n        if (!file_exists($this->filemap)) {\n            $this->_rebuildFileMap();\n        }\n        $this->_initializeDepDB();\n    }\n\n    function _initializeDepDB()\n    {\n        if (!isset($this->_dependencyDB)) {\n            static $initializing = false;\n            if (!$initializing) {\n                $initializing = true;\n                if (!$this->_config) { // never used?\n                    $file = OS_WINDOWS ? 'pear.ini' : '.pearrc';\n                    $this->_config = &new PEAR_Config($this->statedir . DIRECTORY_SEPARATOR .\n                        $file);\n                    $this->_config->setRegistry($this);\n                    $this->_config->set('php_dir', $this->install_dir);\n                }\n\n                $this->_dependencyDB = &PEAR_DependencyDB::singleton($this->_config);\n                if (PEAR::isError($this->_dependencyDB)) {\n                    // attempt to recover by removing the dep db\n                    if (file_exists($this->_config->get('php_dir', null, 'pear.php.net') .\n                        DIRECTORY_SEPARATOR . '.depdb')) {\n                        @unlink($this->_config->get('php_dir', null, 'pear.php.net') .\n                            DIRECTORY_SEPARATOR . '.depdb');\n                    }\n\n                    $this->_dependencyDB = &PEAR_DependencyDB::singleton($this->_config);\n                    if (PEAR::isError($this->_dependencyDB)) {\n                        echo $this->_dependencyDB->getMessage();\n                        echo 'Unrecoverable error';\n                        exit(1);\n                    }\n                }\n\n                $initializing = false;\n            }\n        }\n    }\n\n    /**\n     * PEAR_Registry destructor.  Makes sure no locks are forgotten.\n     *\n     * @access private\n     */\n    function _PEAR_Registry()\n    {\n        parent::_PEAR();\n        if (is_resource($this->lock_fp)) {\n            $this->_unlock();\n        }\n    }\n\n    /**\n     * Make sure the directory where we keep registry files exists.\n     *\n     * @return bool TRUE if directory exists, FALSE if it could not be\n     * created\n     *\n     * @access private\n     */\n    function _assertStateDir($channel = false)\n    {\n        if ($channel && $this->_getChannelFromAlias($channel) != 'pear.php.net') {\n            return $this->_assertChannelStateDir($channel);\n        }\n\n        static $init = false;\n        if (!file_exists($this->statedir)) {\n            if (!$this->hasWriteAccess()) {\n                return false;\n            }\n\n            require_once 'System.php';\n            if (!System::mkdir(array('-p', $this->statedir))) {\n                return $this->raiseError(\"could not create directory '{$this->statedir}'\");\n            }\n            $init = true;\n        } elseif (!is_dir($this->statedir)) {\n            return $this->raiseError('Cannot create directory ' . $this->statedir . ', ' .\n                'it already exists and is not a directory');\n        }\n\n        $ds = DIRECTORY_SEPARATOR;\n        if (!file_exists($this->channelsdir)) {\n            if (!file_exists($this->channelsdir . $ds . 'pear.php.net.reg') ||\n                  !file_exists($this->channelsdir . $ds . 'pecl.php.net.reg') ||\n                  !file_exists($this->channelsdir . $ds . 'doc.php.net.reg') ||\n                  !file_exists($this->channelsdir . $ds . '__uri.reg')) {\n                $init = true;\n            }\n        } elseif (!is_dir($this->channelsdir)) {\n            return $this->raiseError('Cannot create directory ' . $this->channelsdir . ', ' .\n                'it already exists and is not a directory');\n        }\n\n        if ($init) {\n            static $running = false;\n            if (!$running) {\n                $running = true;\n                $this->_initializeDirs();\n                $running = false;\n                $init = false;\n            }\n        } else {\n            $this->_initializeDepDB();\n        }\n\n        return true;\n    }\n\n    /**\n     * Make sure the directory where we keep registry files exists for a non-standard channel.\n     *\n     * @param string channel name\n     * @return bool TRUE if directory exists, FALSE if it could not be\n     * created\n     *\n     * @access private\n     */\n    function _assertChannelStateDir($channel)\n    {\n        $ds = DIRECTORY_SEPARATOR;\n        if (!$channel || $this->_getChannelFromAlias($channel) == 'pear.php.net') {\n            if (!file_exists($this->channelsdir . $ds . 'pear.php.net.reg')) {\n                $this->_initializeChannelDirs();\n            }\n            return $this->_assertStateDir($channel);\n        }\n\n        $channelDir = $this->_channelDirectoryName($channel);\n        if (!is_dir($this->channelsdir) ||\n              !file_exists($this->channelsdir . $ds . 'pear.php.net.reg')) {\n            $this->_initializeChannelDirs();\n        }\n\n        if (!file_exists($channelDir)) {\n            if (!$this->hasWriteAccess()) {\n                return false;\n            }\n\n            require_once 'System.php';\n            if (!System::mkdir(array('-p', $channelDir))) {\n                return $this->raiseError(\"could not create directory '\" . $channelDir .\n                    \"'\");\n            }\n        } elseif (!is_dir($channelDir)) {\n            return $this->raiseError(\"could not create directory '\" . $channelDir .\n                \"', already exists and is not a directory\");\n        }\n\n        return true;\n    }\n\n    /**\n     * Make sure the directory where we keep registry files for channels exists\n     *\n     * @return bool TRUE if directory exists, FALSE if it could not be\n     * created\n     *\n     * @access private\n     */\n    function _assertChannelDir()\n    {\n        if (!file_exists($this->channelsdir)) {\n            if (!$this->hasWriteAccess()) {\n                return false;\n            }\n\n            require_once 'System.php';\n            if (!System::mkdir(array('-p', $this->channelsdir))) {\n                return $this->raiseError(\"could not create directory '{$this->channelsdir}'\");\n            }\n        } elseif (!is_dir($this->channelsdir)) {\n            return $this->raiseError(\"could not create directory '{$this->channelsdir}\" .\n                \"', it already exists and is not a directory\");\n        }\n\n        if (!file_exists($this->channelsdir . DIRECTORY_SEPARATOR . '.alias')) {\n            if (!$this->hasWriteAccess()) {\n                return false;\n            }\n\n            require_once 'System.php';\n            if (!System::mkdir(array('-p', $this->channelsdir . DIRECTORY_SEPARATOR . '.alias'))) {\n                return $this->raiseError(\"could not create directory '{$this->channelsdir}/.alias'\");\n            }\n        } elseif (!is_dir($this->channelsdir . DIRECTORY_SEPARATOR . '.alias')) {\n            return $this->raiseError(\"could not create directory '{$this->channelsdir}\" .\n                \"/.alias', it already exists and is not a directory\");\n        }\n\n        return true;\n    }\n\n    /**\n     * Get the name of the file where data for a given package is stored.\n     *\n     * @param string channel name, or false if this is a PEAR package\n     * @param string package name\n     *\n     * @return string registry file name\n     *\n     * @access public\n     */\n    function _packageFileName($package, $channel = false)\n    {\n        if ($channel && $this->_getChannelFromAlias($channel) != 'pear.php.net') {\n            return $this->_channelDirectoryName($channel) . DIRECTORY_SEPARATOR .\n                strtolower($package) . '.reg';\n        }\n\n        return $this->statedir . DIRECTORY_SEPARATOR . strtolower($package) . '.reg';\n    }\n\n    /**\n     * Get the name of the file where data for a given channel is stored.\n     * @param string channel name\n     * @return string registry file name\n     */\n    function _channelFileName($channel, $noaliases = false)\n    {\n        if (!$noaliases) {\n            if (file_exists($this->_getChannelAliasFileName($channel))) {\n                $channel = implode('', file($this->_getChannelAliasFileName($channel)));\n            }\n        }\n        return $this->channelsdir . DIRECTORY_SEPARATOR . str_replace('/', '_',\n            strtolower($channel)) . '.reg';\n    }\n\n    /**\n     * @param string\n     * @return string\n     */\n    function _getChannelAliasFileName($alias)\n    {\n        return $this->channelsdir . DIRECTORY_SEPARATOR . '.alias' .\n              DIRECTORY_SEPARATOR . str_replace('/', '_', strtolower($alias)) . '.txt';\n    }\n\n    /**\n     * Get the name of a channel from its alias\n     */\n    function _getChannelFromAlias($channel)\n    {\n        if (!$this->_channelExists($channel)) {\n            if ($channel == 'pear.php.net') {\n                return 'pear.php.net';\n            }\n\n            if ($channel == 'pecl.php.net') {\n                return 'pecl.php.net';\n            }\n\n            if ($channel == 'doc.php.net') {\n                return 'doc.php.net';\n            }\n\n            if ($channel == '__uri') {\n                return '__uri';\n            }\n\n            return false;\n        }\n\n        $channel = strtolower($channel);\n        if (file_exists($this->_getChannelAliasFileName($channel))) {\n            // translate an alias to an actual channel\n            return implode('', file($this->_getChannelAliasFileName($channel)));\n        }\n\n        return $channel;\n    }\n\n    /**\n     * Get the alias of a channel from its alias or its name\n     */\n    function _getAlias($channel)\n    {\n        if (!$this->_channelExists($channel)) {\n            if ($channel == 'pear.php.net') {\n                return 'pear';\n            }\n\n            if ($channel == 'pecl.php.net') {\n                return 'pecl';\n            }\n\n            if ($channel == 'doc.php.net') {\n                return 'phpdocs';\n            }\n\n            return false;\n        }\n\n        $channel = $this->_getChannel($channel);\n        if (PEAR::isError($channel)) {\n            return $channel;\n        }\n\n        return $channel->getAlias();\n    }\n\n    /**\n     * Get the name of the file where data for a given package is stored.\n     *\n     * @param string channel name, or false if this is a PEAR package\n     * @param string package name\n     *\n     * @return string registry file name\n     *\n     * @access public\n     */\n    function _channelDirectoryName($channel)\n    {\n        if (!$channel || $this->_getChannelFromAlias($channel) == 'pear.php.net') {\n            return $this->statedir;\n        }\n\n        $ch = $this->_getChannelFromAlias($channel);\n        if (!$ch) {\n            $ch = $channel;\n        }\n\n        return $this->statedir . DIRECTORY_SEPARATOR . strtolower('.channel.' .\n            str_replace('/', '_', $ch));\n    }\n\n    function _openPackageFile($package, $mode, $channel = false)\n    {\n        if (!$this->_assertStateDir($channel)) {\n            return null;\n        }\n\n        if (!in_array($mode, array('r', 'rb')) && !$this->hasWriteAccess()) {\n            return null;\n        }\n\n        $file = $this->_packageFileName($package, $channel);\n        if (!file_exists($file) && $mode == 'r' || $mode == 'rb') {\n            return null;\n        }\n\n        $fp = @fopen($file, $mode);\n        if (!$fp) {\n            return null;\n        }\n\n        return $fp;\n    }\n\n    function _closePackageFile($fp)\n    {\n        fclose($fp);\n    }\n\n    function _openChannelFile($channel, $mode)\n    {\n        if (!$this->_assertChannelDir()) {\n            return null;\n        }\n\n        if (!in_array($mode, array('r', 'rb')) && !$this->hasWriteAccess()) {\n            return null;\n        }\n\n        $file = $this->_channelFileName($channel);\n        if (!file_exists($file) && $mode == 'r' || $mode == 'rb') {\n            return null;\n        }\n\n        $fp = @fopen($file, $mode);\n        if (!$fp) {\n            return null;\n        }\n\n        return $fp;\n    }\n\n    function _closeChannelFile($fp)\n    {\n        fclose($fp);\n    }\n\n    function _rebuildFileMap()\n    {\n        if (!class_exists('PEAR_Installer_Role')) {\n            require_once 'PEAR/Installer/Role.php';\n        }\n\n        $channels = $this->_listAllPackages();\n        $files = array();\n        foreach ($channels as $channel => $packages) {\n            foreach ($packages as $package) {\n                $version = $this->_packageInfo($package, 'version', $channel);\n                $filelist = $this->_packageInfo($package, 'filelist', $channel);\n                if (!is_array($filelist)) {\n                    continue;\n                }\n\n                foreach ($filelist as $name => $attrs) {\n                    if (isset($attrs['attribs'])) {\n                        $attrs = $attrs['attribs'];\n                    }\n\n                    // it is possible for conflicting packages in different channels to\n                    // conflict with data files/doc files\n                    if ($name == 'dirtree') {\n                        continue;\n                    }\n\n                    if (isset($attrs['role']) && !in_array($attrs['role'],\n                          PEAR_Installer_Role::getInstallableRoles())) {\n                        // these are not installed\n                        continue;\n                    }\n\n                    if (isset($attrs['role']) && !in_array($attrs['role'],\n                          PEAR_Installer_Role::getBaseinstallRoles())) {\n                        $attrs['baseinstalldir'] = $package;\n                    }\n\n                    if (isset($attrs['baseinstalldir'])) {\n                        $file = $attrs['baseinstalldir'].DIRECTORY_SEPARATOR.$name;\n                    } else {\n                        $file = $name;\n                    }\n\n                    $file = preg_replace(',^/+,', '', $file);\n                    if ($channel != 'pear.php.net') {\n                        if (!isset($files[$attrs['role']])) {\n                            $files[$attrs['role']] = array();\n                        }\n                        $files[$attrs['role']][$file] = array(strtolower($channel),\n                            strtolower($package));\n                    } else {\n                        if (!isset($files[$attrs['role']])) {\n                            $files[$attrs['role']] = array();\n                        }\n                        $files[$attrs['role']][$file] = strtolower($package);\n                    }\n                }\n            }\n        }\n\n\n        $this->_assertStateDir();\n        if (!$this->hasWriteAccess()) {\n            return false;\n        }\n\n        $fp = @fopen($this->filemap, 'wb');\n        if (!$fp) {\n            return false;\n        }\n\n        $this->filemap_cache = $files;\n        fwrite($fp, serialize($files));\n        fclose($fp);\n        return true;\n    }\n\n    function _readFileMap()\n    {\n        if (!file_exists($this->filemap)) {\n            return array();\n        }\n\n        $fp = @fopen($this->filemap, 'r');\n        if (!$fp) {\n            return $this->raiseError('PEAR_Registry: could not open filemap \"' . $this->filemap . '\"', PEAR_REGISTRY_ERROR_FILE, null, null, $php_errormsg);\n        }\n\n        clearstatcache();\n        $rt = get_magic_quotes_runtime();\n        set_magic_quotes_runtime(0);\n        $fsize = filesize($this->filemap);\n        fclose($fp);\n        $data = file_get_contents($this->filemap);\n        set_magic_quotes_runtime($rt);\n        $tmp = unserialize($data);\n        if (!$tmp && $fsize > 7) {\n            return $this->raiseError('PEAR_Registry: invalid filemap data', PEAR_REGISTRY_ERROR_FORMAT, null, null, $data);\n        }\n\n        $this->filemap_cache = $tmp;\n        return true;\n    }\n\n    /**\n     * Lock the registry.\n     *\n     * @param integer lock mode, one of LOCK_EX, LOCK_SH or LOCK_UN.\n     *                See flock manual for more information.\n     *\n     * @return bool TRUE on success, FALSE if locking failed, or a\n     *              PEAR error if some other error occurs (such as the\n     *              lock file not being writable).\n     *\n     * @access private\n     */\n    function _lock($mode = LOCK_EX)\n    {\n        if (stristr(php_uname(), 'Windows 9')) {\n            return true;\n        }\n\n        if ($mode != LOCK_UN && is_resource($this->lock_fp)) {\n            // XXX does not check type of lock (LOCK_SH/LOCK_EX)\n            return true;\n        }\n\n        if (!$this->_assertStateDir()) {\n            if ($mode == LOCK_EX) {\n                return $this->raiseError('Registry directory is not writeable by the current user');\n            }\n\n            return true;\n        }\n\n        $open_mode = 'w';\n        // XXX People reported problems with LOCK_SH and 'w'\n        if ($mode === LOCK_SH || $mode === LOCK_UN) {\n            if (!file_exists($this->lockfile)) {\n                touch($this->lockfile);\n            }\n            $open_mode = 'r';\n        }\n\n        if (!is_resource($this->lock_fp)) {\n            $this->lock_fp = @fopen($this->lockfile, $open_mode);\n        }\n\n        if (!is_resource($this->lock_fp)) {\n            $this->lock_fp = null;\n            return $this->raiseError(\"could not create lock file\" .\n                                     (isset($php_errormsg) ? \": \" . $php_errormsg : \"\"));\n        }\n\n        if (!(int)flock($this->lock_fp, $mode)) {\n            switch ($mode) {\n                case LOCK_SH: $str = 'shared';    break;\n                case LOCK_EX: $str = 'exclusive'; break;\n                case LOCK_UN: $str = 'unlock';    break;\n                default:      $str = 'unknown';   break;\n            }\n\n            //is resource at this point, close it on error.\n            fclose($this->lock_fp);\n            $this->lock_fp = null;\n            return $this->raiseError(\"could not acquire $str lock ($this->lockfile)\",\n                                     PEAR_REGISTRY_ERROR_LOCK);\n        }\n\n        return true;\n    }\n\n    function _unlock()\n    {\n        $ret = $this->_lock(LOCK_UN);\n        if (is_resource($this->lock_fp)) {\n            fclose($this->lock_fp);\n        }\n\n        $this->lock_fp = null;\n        return $ret;\n    }\n\n    function _packageExists($package, $channel = false)\n    {\n        return file_exists($this->_packageFileName($package, $channel));\n    }\n\n    /**\n     * Determine whether a channel exists in the registry\n     *\n     * @param string Channel name\n     * @param bool if true, then aliases will be ignored\n     * @return boolean\n     */\n    function _channelExists($channel, $noaliases = false)\n    {\n        $a = file_exists($this->_channelFileName($channel, $noaliases));\n        if (!$a && $channel == 'pear.php.net') {\n            return true;\n        }\n\n        if (!$a && $channel == 'pecl.php.net') {\n            return true;\n        }\n\n        if (!$a && $channel == 'doc.php.net') {\n            return true;\n        }\n\n        return $a;\n    }\n\n    /**\n     * Determine whether a mirror exists within the deafult channel in the registry\n     *\n     * @param string Channel name\n     * @param string Mirror name\n     *\n     * @return boolean\n     */\n    function _mirrorExists($channel, $mirror)\n    {\n        $data = $this->_channelInfo($channel);\n        if (!isset($data['servers']['mirror'])) {\n            return false;\n        }\n\n        foreach ($data['servers']['mirror'] as $m) {\n            if ($m['attribs']['host'] == $mirror) {\n                return true;\n            }\n        }\n\n        return false;\n    }\n\n    /**\n     * @param PEAR_ChannelFile Channel object\n     * @param donotuse\n     * @param string Last-Modified HTTP tag from remote request\n     * @return boolean|PEAR_Error True on creation, false if it already exists\n     */\n    function _addChannel($channel, $update = false, $lastmodified = false)\n    {\n        if (!is_a($channel, 'PEAR_ChannelFile')) {\n            return false;\n        }\n\n        if (!$channel->validate()) {\n            return false;\n        }\n\n        if (file_exists($this->_channelFileName($channel->getName()))) {\n            if (!$update) {\n                return false;\n            }\n\n            $checker = $this->_getChannel($channel->getName());\n            if (PEAR::isError($checker)) {\n                return $checker;\n            }\n\n            if ($channel->getAlias() != $checker->getAlias()) {\n                if (file_exists($this->_getChannelAliasFileName($checker->getAlias()))) {\n                    @unlink($this->_getChannelAliasFileName($checker->getAlias()));\n                }\n            }\n        } else {\n            if ($update && !in_array($channel->getName(), array('pear.php.net', 'pecl.php.net', 'doc.php.net'))) {\n                return false;\n            }\n        }\n\n        $ret = $this->_assertChannelDir();\n        if (PEAR::isError($ret)) {\n            return $ret;\n        }\n\n        $ret = $this->_assertChannelStateDir($channel->getName());\n        if (PEAR::isError($ret)) {\n            return $ret;\n        }\n\n        if ($channel->getAlias() != $channel->getName()) {\n            if (file_exists($this->_getChannelAliasFileName($channel->getAlias())) &&\n                  $this->_getChannelFromAlias($channel->getAlias()) != $channel->getName()) {\n                $channel->setAlias($channel->getName());\n            }\n\n            if (!$this->hasWriteAccess()) {\n                return false;\n            }\n\n            $fp = @fopen($this->_getChannelAliasFileName($channel->getAlias()), 'w');\n            if (!$fp) {\n                return false;\n            }\n\n            fwrite($fp, $channel->getName());\n            fclose($fp);\n        }\n\n        if (!$this->hasWriteAccess()) {\n            return false;\n        }\n\n        $fp = @fopen($this->_channelFileName($channel->getName()), 'wb');\n        if (!$fp) {\n            return false;\n        }\n\n        $info = $channel->toArray();\n        if ($lastmodified) {\n            $info['_lastmodified'] = $lastmodified;\n        } else {\n            $info['_lastmodified'] = date('r');\n        }\n\n        fwrite($fp, serialize($info));\n        fclose($fp);\n        return true;\n    }\n\n    /**\n     * Deletion fails if there are any packages installed from the channel\n     * @param string|PEAR_ChannelFile channel name\n     * @return boolean|PEAR_Error True on deletion, false if it doesn't exist\n     */\n    function _deleteChannel($channel)\n    {\n        if (!is_string($channel)) {\n            if (!is_a($channel, 'PEAR_ChannelFile')) {\n                return false;\n            }\n\n            if (!$channel->validate()) {\n                return false;\n            }\n            $channel = $channel->getName();\n        }\n\n        if ($this->_getChannelFromAlias($channel) == '__uri') {\n            return false;\n        }\n\n        if ($this->_getChannelFromAlias($channel) == 'pecl.php.net') {\n            return false;\n        }\n\n        if ($this->_getChannelFromAlias($channel) == 'doc.php.net') {\n            return false;\n        }\n\n        if (!$this->_channelExists($channel)) {\n            return false;\n        }\n\n        if (!$channel || $this->_getChannelFromAlias($channel) == 'pear.php.net') {\n            return false;\n        }\n\n        $channel = $this->_getChannelFromAlias($channel);\n        if ($channel == 'pear.php.net') {\n            return false;\n        }\n\n        $test = $this->_listChannelPackages($channel);\n        if (count($test)) {\n            return false;\n        }\n\n        $test = @rmdir($this->_channelDirectoryName($channel));\n        if (!$test) {\n            return false;\n        }\n\n        $file = $this->_getChannelAliasFileName($this->_getAlias($channel));\n        if (file_exists($file)) {\n            $test = @unlink($file);\n            if (!$test) {\n                return false;\n            }\n        }\n\n        $file = $this->_channelFileName($channel);\n        $ret = true;\n        if (file_exists($file)) {\n            $ret = @unlink($file);\n        }\n\n        return $ret;\n    }\n\n    /**\n     * Determine whether a channel exists in the registry\n     * @param string Channel Alias\n     * @return boolean\n     */\n    function _isChannelAlias($alias)\n    {\n        return file_exists($this->_getChannelAliasFileName($alias));\n    }\n\n    /**\n     * @param string|null\n     * @param string|null\n     * @param string|null\n     * @return array|null\n     * @access private\n     */\n    function _packageInfo($package = null, $key = null, $channel = 'pear.php.net')\n    {\n        if ($package === null) {\n            if ($channel === null) {\n                $channels = $this->_listChannels();\n                $ret = array();\n                foreach ($channels as $channel) {\n                    $channel = strtolower($channel);\n                    $ret[$channel] = array();\n                    $packages = $this->_listPackages($channel);\n                    foreach ($packages as $package) {\n                        $ret[$channel][] = $this->_packageInfo($package, null, $channel);\n                    }\n                }\n\n                return $ret;\n            }\n\n            $ps = $this->_listPackages($channel);\n            if (!count($ps)) {\n                return array();\n            }\n            return array_map(array(&$this, '_packageInfo'),\n                             $ps, array_fill(0, count($ps), null),\n                             array_fill(0, count($ps), $channel));\n        }\n\n        $fp = $this->_openPackageFile($package, 'r', $channel);\n        if ($fp === null) {\n            return null;\n        }\n\n        $rt = get_magic_quotes_runtime();\n        set_magic_quotes_runtime(0);\n        clearstatcache();\n        $this->_closePackageFile($fp);\n        $data = file_get_contents($this->_packageFileName($package, $channel));\n        set_magic_quotes_runtime($rt);\n        $data = unserialize($data);\n        if ($key === null) {\n            return $data;\n        }\n\n        // compatibility for package.xml version 2.0\n        if (isset($data['old'][$key])) {\n            return $data['old'][$key];\n        }\n\n        if (isset($data[$key])) {\n            return $data[$key];\n        }\n\n        return null;\n    }\n\n    /**\n     * @param string Channel name\n     * @param bool whether to strictly retrieve info of channels, not just aliases\n     * @return array|null\n     */\n    function _channelInfo($channel, $noaliases = false)\n    {\n        if (!$this->_channelExists($channel, $noaliases)) {\n            return null;\n        }\n\n        $fp = $this->_openChannelFile($channel, 'r');\n        if ($fp === null) {\n            return null;\n        }\n\n        $rt = get_magic_quotes_runtime();\n        set_magic_quotes_runtime(0);\n        clearstatcache();\n        $this->_closeChannelFile($fp);\n        $data = file_get_contents($this->_channelFileName($channel));\n        set_magic_quotes_runtime($rt);\n        $data = unserialize($data);\n        return $data;\n    }\n\n    function _listChannels()\n    {\n        $channellist = array();\n        if (!file_exists($this->channelsdir) || !is_dir($this->channelsdir)) {\n            return array('pear.php.net', 'pecl.php.net', 'doc.php.net', '__uri');\n        }\n\n        $dp = opendir($this->channelsdir);\n        while ($ent = readdir($dp)) {\n            if ($ent{0} == '.' || substr($ent, -4) != '.reg') {\n                continue;\n            }\n\n            if ($ent == '__uri.reg') {\n                $channellist[] = '__uri';\n                continue;\n            }\n\n            $channellist[] = str_replace('_', '/', substr($ent, 0, -4));\n        }\n\n        closedir($dp);\n        if (!in_array('pear.php.net', $channellist)) {\n            $channellist[] = 'pear.php.net';\n        }\n\n        if (!in_array('pecl.php.net', $channellist)) {\n            $channellist[] = 'pecl.php.net';\n        }\n\n        if (!in_array('doc.php.net', $channellist)) {\n            $channellist[] = 'doc.php.net';\n        }\n\n\n        if (!in_array('__uri', $channellist)) {\n            $channellist[] = '__uri';\n        }\n\n        natsort($channellist);\n        return $channellist;\n    }\n\n    function _listPackages($channel = false)\n    {\n        if ($channel && $this->_getChannelFromAlias($channel) != 'pear.php.net') {\n            return $this->_listChannelPackages($channel);\n        }\n\n        if (!file_exists($this->statedir) || !is_dir($this->statedir)) {\n            return array();\n        }\n\n        $pkglist = array();\n        $dp = opendir($this->statedir);\n        if (!$dp) {\n            return $pkglist;\n        }\n\n        while ($ent = readdir($dp)) {\n            if ($ent{0} == '.' || substr($ent, -4) != '.reg') {\n                continue;\n            }\n\n            $pkglist[] = substr($ent, 0, -4);\n        }\n        closedir($dp);\n        return $pkglist;\n    }\n\n    function _listChannelPackages($channel)\n    {\n        $pkglist = array();\n        if (!file_exists($this->_channelDirectoryName($channel)) ||\n              !is_dir($this->_channelDirectoryName($channel))) {\n            return array();\n        }\n\n        $dp = opendir($this->_channelDirectoryName($channel));\n        if (!$dp) {\n            return $pkglist;\n        }\n\n        while ($ent = readdir($dp)) {\n            if ($ent{0} == '.' || substr($ent, -4) != '.reg') {\n                continue;\n            }\n            $pkglist[] = substr($ent, 0, -4);\n        }\n\n        closedir($dp);\n        return $pkglist;\n    }\n\n    function _listAllPackages()\n    {\n        $ret = array();\n        foreach ($this->_listChannels() as $channel) {\n            $ret[$channel] = $this->_listPackages($channel);\n        }\n\n        return $ret;\n    }\n\n    /**\n     * Add an installed package to the registry\n     * @param string package name\n     * @param array package info (parsed by PEAR_Common::infoFrom*() methods)\n     * @return bool success of saving\n     * @access private\n     */\n    function _addPackage($package, $info)\n    {\n        if ($this->_packageExists($package)) {\n            return false;\n        }\n\n        $fp = $this->_openPackageFile($package, 'wb');\n        if ($fp === null) {\n            return false;\n        }\n\n        $info['_lastmodified'] = time();\n        fwrite($fp, serialize($info));\n        $this->_closePackageFile($fp);\n        if (isset($info['filelist'])) {\n            $this->_rebuildFileMap();\n        }\n\n        return true;\n    }\n\n    /**\n     * @param PEAR_PackageFile_v1|PEAR_PackageFile_v2\n     * @return bool\n     * @access private\n     */\n    function _addPackage2($info)\n    {\n        if (!is_a($info, 'PEAR_PackageFile_v1') && !is_a($info, 'PEAR_PackageFile_v2')) {\n            return false;\n        }\n\n        if (!$info->validate()) {\n            if (class_exists('PEAR_Common')) {\n                $ui = PEAR_Frontend::singleton();\n                if ($ui) {\n                    foreach ($info->getValidationWarnings() as $err) {\n                        $ui->log($err['message'], true);\n                    }\n                }\n            }\n            return false;\n        }\n\n        $channel = $info->getChannel();\n        $package = $info->getPackage();\n        $save = $info;\n        if ($this->_packageExists($package, $channel)) {\n            return false;\n        }\n\n        if (!$this->_channelExists($channel, true)) {\n            return false;\n        }\n\n        $info = $info->toArray(true);\n        if (!$info) {\n            return false;\n        }\n\n        $fp = $this->_openPackageFile($package, 'wb', $channel);\n        if ($fp === null) {\n            return false;\n        }\n\n        $info['_lastmodified'] = time();\n        fwrite($fp, serialize($info));\n        $this->_closePackageFile($fp);\n        $this->_rebuildFileMap();\n        return true;\n    }\n\n    /**\n     * @param string Package name\n     * @param array parsed package.xml 1.0\n     * @param bool this parameter is only here for BC.  Don't use it.\n     * @access private\n     */\n    function _updatePackage($package, $info, $merge = true)\n    {\n        $oldinfo = $this->_packageInfo($package);\n        if (empty($oldinfo)) {\n            return false;\n        }\n\n        $fp = $this->_openPackageFile($package, 'w');\n        if ($fp === null) {\n            return false;\n        }\n\n        if (is_object($info)) {\n            $info = $info->toArray();\n        }\n        $info['_lastmodified'] = time();\n\n        $newinfo = $info;\n        if ($merge) {\n            $info = array_merge($oldinfo, $info);\n        } else {\n            $diff = $info;\n        }\n\n        fwrite($fp, serialize($info));\n        $this->_closePackageFile($fp);\n        if (isset($newinfo['filelist'])) {\n            $this->_rebuildFileMap();\n        }\n\n        return true;\n    }\n\n    /**\n     * @param PEAR_PackageFile_v1|PEAR_PackageFile_v2\n     * @return bool\n     * @access private\n     */\n    function _updatePackage2($info)\n    {\n        if (!$this->_packageExists($info->getPackage(), $info->getChannel())) {\n            return false;\n        }\n\n        $fp = $this->_openPackageFile($info->getPackage(), 'w', $info->getChannel());\n        if ($fp === null) {\n            return false;\n        }\n\n        $save = $info;\n        $info = $save->getArray(true);\n        $info['_lastmodified'] = time();\n        fwrite($fp, serialize($info));\n        $this->_closePackageFile($fp);\n        $this->_rebuildFileMap();\n        return true;\n    }\n\n    /**\n     * @param string Package name\n     * @param string Channel name\n     * @return PEAR_PackageFile_v1|PEAR_PackageFile_v2|null\n     * @access private\n     */\n    function &_getPackage($package, $channel = 'pear.php.net')\n    {\n        $info = $this->_packageInfo($package, null, $channel);\n        if ($info === null) {\n            return $info;\n        }\n\n        $a = $this->_config;\n        if (!$a) {\n            $this->_config = &new PEAR_Config;\n            $this->_config->set('php_dir', $this->statedir);\n        }\n\n        if (!class_exists('PEAR_PackageFile')) {\n            require_once 'PEAR/PackageFile.php';\n        }\n\n        $pkg = &new PEAR_PackageFile($this->_config);\n        $pf = &$pkg->fromArray($info);\n        return $pf;\n    }\n\n    /**\n     * @param string channel name\n     * @param bool whether to strictly retrieve channel names\n     * @return PEAR_ChannelFile|PEAR_Error\n     * @access private\n     */\n    function &_getChannel($channel, $noaliases = false)\n    {\n        $ch = false;\n        if ($this->_channelExists($channel, $noaliases)) {\n            $chinfo = $this->_channelInfo($channel, $noaliases);\n            if ($chinfo) {\n                if (!class_exists('PEAR_ChannelFile')) {\n                    require_once 'PEAR/ChannelFile.php';\n                }\n\n                $ch = &PEAR_ChannelFile::fromArrayWithErrors($chinfo);\n            }\n        }\n\n        if ($ch) {\n            if ($ch->validate()) {\n                return $ch;\n            }\n\n            foreach ($ch->getErrors(true) as $err) {\n                $message = $err['message'] . \"\\n\";\n            }\n\n            $ch = PEAR::raiseError($message);\n            return $ch;\n        }\n\n        if ($this->_getChannelFromAlias($channel) == 'pear.php.net') {\n            // the registry is not properly set up, so use defaults\n            if (!class_exists('PEAR_ChannelFile')) {\n                require_once 'PEAR/ChannelFile.php';\n            }\n\n            $pear_channel = new PEAR_ChannelFile;\n            $pear_channel->setServer('pear.php.net');\n            $pear_channel->setAlias('pear');\n            $pear_channel->setSummary('PHP Extension and Application Repository');\n            $pear_channel->setDefaultPEARProtocols();\n            $pear_channel->setBaseURL('REST1.0', 'http://pear.php.net/rest/');\n            $pear_channel->setBaseURL('REST1.1', 'http://pear.php.net/rest/');\n            $pear_channel->setBaseURL('REST1.3', 'http://pear.php.net/rest/');\n            return $pear_channel;\n        }\n\n        if ($this->_getChannelFromAlias($channel) == 'pecl.php.net') {\n            // the registry is not properly set up, so use defaults\n            if (!class_exists('PEAR_ChannelFile')) {\n                require_once 'PEAR/ChannelFile.php';\n            }\n            $pear_channel = new PEAR_ChannelFile;\n            $pear_channel->setServer('pecl.php.net');\n            $pear_channel->setAlias('pecl');\n            $pear_channel->setSummary('PHP Extension Community Library');\n            $pear_channel->setDefaultPEARProtocols();\n            $pear_channel->setBaseURL('REST1.0', 'http://pecl.php.net/rest/');\n            $pear_channel->setBaseURL('REST1.1', 'http://pecl.php.net/rest/');\n            $pear_channel->setValidationPackage('PEAR_Validator_PECL', '1.0');\n            return $pear_channel;\n        }\n\n        if ($this->_getChannelFromAlias($channel) == 'doc.php.net') {\n            // the registry is not properly set up, so use defaults\n            if (!class_exists('PEAR_ChannelFile')) {\n                require_once 'PEAR/ChannelFile.php';\n            }\n\n            $doc_channel = new PEAR_ChannelFile;\n            $doc_channel->setServer('doc.php.net');\n            $doc_channel->setAlias('phpdocs');\n            $doc_channel->setSummary('PHP Documentation Team');\n            $doc_channel->setDefaultPEARProtocols();\n            $doc_channel->setBaseURL('REST1.0', 'http://doc.php.net/rest/');\n            $doc_channel->setBaseURL('REST1.1', 'http://doc.php.net/rest/');\n            $doc_channel->setBaseURL('REST1.3', 'http://doc.php.net/rest/');\n            return $doc_channel;\n        }\n\n\n        if ($this->_getChannelFromAlias($channel) == '__uri') {\n            // the registry is not properly set up, so use defaults\n            if (!class_exists('PEAR_ChannelFile')) {\n                require_once 'PEAR/ChannelFile.php';\n            }\n\n            $private = new PEAR_ChannelFile;\n            $private->setName('__uri');\n            $private->setDefaultPEARProtocols();\n            $private->setBaseURL('REST1.0', '****');\n            $private->setSummary('Pseudo-channel for static packages');\n            return $private;\n        }\n\n        return $ch;\n    }\n\n    /**\n     * @param string Package name\n     * @param string Channel name\n     * @return bool\n     */\n    function packageExists($package, $channel = 'pear.php.net')\n    {\n        if (PEAR::isError($e = $this->_lock(LOCK_SH))) {\n            return $e;\n        }\n        $ret = $this->_packageExists($package, $channel);\n        $this->_unlock();\n        return $ret;\n    }\n\n    // }}}\n\n    // {{{ channelExists()\n\n    /**\n     * @param string channel name\n     * @param bool if true, then aliases will be ignored\n     * @return bool\n     */\n    function channelExists($channel, $noaliases = false)\n    {\n        if (PEAR::isError($e = $this->_lock(LOCK_SH))) {\n            return $e;\n        }\n        $ret = $this->_channelExists($channel, $noaliases);\n        $this->_unlock();\n        return $ret;\n    }\n\n    // }}}\n\n    /**\n     * @param string channel name mirror is in\n     * @param string mirror name\n     *\n     * @return bool\n     */\n    function mirrorExists($channel, $mirror)\n    {\n        if (PEAR::isError($e = $this->_lock(LOCK_SH))) {\n            return $e;\n        }\n\n        $ret = $this->_mirrorExists($channel, $mirror);\n        $this->_unlock();\n        return $ret;\n    }\n\n    // {{{ isAlias()\n\n    /**\n     * Determines whether the parameter is an alias of a channel\n     * @param string\n     * @return bool\n     */\n    function isAlias($alias)\n    {\n        if (PEAR::isError($e = $this->_lock(LOCK_SH))) {\n            return $e;\n        }\n        $ret = $this->_isChannelAlias($alias);\n        $this->_unlock();\n        return $ret;\n    }\n\n    // }}}\n    // {{{ packageInfo()\n\n    /**\n     * @param string|null\n     * @param string|null\n     * @param string\n     * @return array|null\n     */\n    function packageInfo($package = null, $key = null, $channel = 'pear.php.net')\n    {\n        if (PEAR::isError($e = $this->_lock(LOCK_SH))) {\n            return $e;\n        }\n        $ret = $this->_packageInfo($package, $key, $channel);\n        $this->_unlock();\n        return $ret;\n    }\n\n    // }}}\n    // {{{ channelInfo()\n\n    /**\n     * Retrieve a raw array of channel data.\n     *\n     * Do not use this, instead use {@link getChannel()} for normal\n     * operations.  Array structure is undefined in this method\n     * @param string channel name\n     * @param bool whether to strictly retrieve information only on non-aliases\n     * @return array|null|PEAR_Error\n     */\n    function channelInfo($channel = null, $noaliases = false)\n    {\n        if (PEAR::isError($e = $this->_lock(LOCK_SH))) {\n            return $e;\n        }\n        $ret = $this->_channelInfo($channel, $noaliases);\n        $this->_unlock();\n        return $ret;\n    }\n\n    // }}}\n\n    /**\n     * @param string\n     */\n    function channelName($channel)\n    {\n        if (PEAR::isError($e = $this->_lock(LOCK_SH))) {\n            return $e;\n        }\n        $ret = $this->_getChannelFromAlias($channel);\n        $this->_unlock();\n        return $ret;\n    }\n\n    /**\n     * @param string\n     */\n    function channelAlias($channel)\n    {\n        if (PEAR::isError($e = $this->_lock(LOCK_SH))) {\n            return $e;\n        }\n        $ret = $this->_getAlias($channel);\n        $this->_unlock();\n        return $ret;\n    }\n    // {{{ listPackages()\n\n    function listPackages($channel = false)\n    {\n        if (PEAR::isError($e = $this->_lock(LOCK_SH))) {\n            return $e;\n        }\n        $ret = $this->_listPackages($channel);\n        $this->_unlock();\n        return $ret;\n    }\n\n    // }}}\n    // {{{ listAllPackages()\n\n    function listAllPackages()\n    {\n        if (PEAR::isError($e = $this->_lock(LOCK_SH))) {\n            return $e;\n        }\n        $ret = $this->_listAllPackages();\n        $this->_unlock();\n        return $ret;\n    }\n\n    // }}}\n    // {{{ listChannel()\n\n    function listChannels()\n    {\n        if (PEAR::isError($e = $this->_lock(LOCK_SH))) {\n            return $e;\n        }\n        $ret = $this->_listChannels();\n        $this->_unlock();\n        return $ret;\n    }\n\n    // }}}\n    // {{{ addPackage()\n\n    /**\n     * Add an installed package to the registry\n     * @param string|PEAR_PackageFile_v1|PEAR_PackageFile_v2 package name or object\n     *               that will be passed to {@link addPackage2()}\n     * @param array package info (parsed by PEAR_Common::infoFrom*() methods)\n     * @return bool success of saving\n     */\n    function addPackage($package, $info)\n    {\n        if (is_object($info)) {\n            return $this->addPackage2($info);\n        }\n        if (PEAR::isError($e = $this->_lock(LOCK_EX))) {\n            return $e;\n        }\n        $ret = $this->_addPackage($package, $info);\n        $this->_unlock();\n        if ($ret) {\n            if (!class_exists('PEAR_PackageFile_v1')) {\n                require_once 'PEAR/PackageFile/v1.php';\n            }\n            $pf = new PEAR_PackageFile_v1;\n            $pf->setConfig($this->_config);\n            $pf->fromArray($info);\n            $this->_dependencyDB->uninstallPackage($pf);\n            $this->_dependencyDB->installPackage($pf);\n        }\n        return $ret;\n    }\n\n    // }}}\n    // {{{ addPackage2()\n\n    function addPackage2($info)\n    {\n        if (!is_object($info)) {\n            return $this->addPackage($info['package'], $info);\n        }\n        if (PEAR::isError($e = $this->_lock(LOCK_EX))) {\n            return $e;\n        }\n        $ret = $this->_addPackage2($info);\n        $this->_unlock();\n        if ($ret) {\n            $this->_dependencyDB->uninstallPackage($info);\n            $this->_dependencyDB->installPackage($info);\n        }\n        return $ret;\n    }\n\n    // }}}\n    // {{{ updateChannel()\n\n    /**\n     * For future expandibility purposes, separate this\n     * @param PEAR_ChannelFile\n     */\n    function updateChannel($channel, $lastmodified = null)\n    {\n        if ($channel->getName() == '__uri') {\n            return false;\n        }\n        return $this->addChannel($channel, $lastmodified, true);\n    }\n\n    // }}}\n    // {{{ deleteChannel()\n\n    /**\n     * Deletion fails if there are any packages installed from the channel\n     * @param string|PEAR_ChannelFile channel name\n     * @return boolean|PEAR_Error True on deletion, false if it doesn't exist\n     */\n    function deleteChannel($channel)\n    {\n        if (PEAR::isError($e = $this->_lock(LOCK_EX))) {\n            return $e;\n        }\n\n        $ret = $this->_deleteChannel($channel);\n        $this->_unlock();\n        if ($ret && is_a($this->_config, 'PEAR_Config')) {\n            $this->_config->setChannels($this->listChannels());\n        }\n\n        return $ret;\n    }\n\n    // }}}\n    // {{{ addChannel()\n\n    /**\n     * @param PEAR_ChannelFile Channel object\n     * @param string Last-Modified header from HTTP for caching\n     * @return boolean|PEAR_Error True on creation, false if it already exists\n     */\n    function addChannel($channel, $lastmodified = false, $update = false)\n    {\n        if (!is_a($channel, 'PEAR_ChannelFile') || !$channel->validate()) {\n            return false;\n        }\n\n        if (PEAR::isError($e = $this->_lock(LOCK_EX))) {\n            return $e;\n        }\n\n        $ret = $this->_addChannel($channel, $update, $lastmodified);\n        $this->_unlock();\n        if (!$update && $ret && is_a($this->_config, 'PEAR_Config')) {\n            $this->_config->setChannels($this->listChannels());\n        }\n\n        return $ret;\n    }\n\n    // }}}\n    // {{{ deletePackage()\n\n    function deletePackage($package, $channel = 'pear.php.net')\n    {\n        if (PEAR::isError($e = $this->_lock(LOCK_EX))) {\n            return $e;\n        }\n\n        $file = $this->_packageFileName($package, $channel);\n        $ret  = file_exists($file) ? @unlink($file) : false;\n        $this->_rebuildFileMap();\n        $this->_unlock();\n        $p = array('channel' => $channel, 'package' => $package);\n        $this->_dependencyDB->uninstallPackage($p);\n        return $ret;\n    }\n\n    // }}}\n    // {{{ updatePackage()\n\n    function updatePackage($package, $info, $merge = true)\n    {\n        if (is_object($info)) {\n            return $this->updatePackage2($info, $merge);\n        }\n        if (PEAR::isError($e = $this->_lock(LOCK_EX))) {\n            return $e;\n        }\n        $ret = $this->_updatePackage($package, $info, $merge);\n        $this->_unlock();\n        if ($ret) {\n            if (!class_exists('PEAR_PackageFile_v1')) {\n                require_once 'PEAR/PackageFile/v1.php';\n            }\n            $pf = new PEAR_PackageFile_v1;\n            $pf->setConfig($this->_config);\n            $pf->fromArray($this->packageInfo($package));\n            $this->_dependencyDB->uninstallPackage($pf);\n            $this->_dependencyDB->installPackage($pf);\n        }\n        return $ret;\n    }\n\n    // }}}\n    // {{{ updatePackage2()\n\n    function updatePackage2($info)\n    {\n\n        if (!is_object($info)) {\n            return $this->updatePackage($info['package'], $info, $merge);\n        }\n\n        if (!$info->validate(PEAR_VALIDATE_DOWNLOADING)) {\n            return false;\n        }\n\n        if (PEAR::isError($e = $this->_lock(LOCK_EX))) {\n            return $e;\n        }\n\n        $ret = $this->_updatePackage2($info);\n        $this->_unlock();\n        if ($ret) {\n            $this->_dependencyDB->uninstallPackage($info);\n            $this->_dependencyDB->installPackage($info);\n        }\n\n        return $ret;\n    }\n\n    // }}}\n    // {{{ getChannel()\n    /**\n     * @param string channel name\n     * @param bool whether to strictly return raw channels (no aliases)\n     * @return PEAR_ChannelFile|PEAR_Error\n     */\n    function &getChannel($channel, $noaliases = false)\n    {\n        if (PEAR::isError($e = $this->_lock(LOCK_SH))) {\n            return $e;\n        }\n        $ret = &$this->_getChannel($channel, $noaliases);\n        $this->_unlock();\n        if (!$ret) {\n            return PEAR::raiseError('Unknown channel: ' . $channel);\n        }\n        return $ret;\n    }\n\n    // }}}\n    // {{{ getPackage()\n    /**\n     * @param string package name\n     * @param string channel name\n     * @return PEAR_PackageFile_v1|PEAR_PackageFile_v2|null\n     */\n    function &getPackage($package, $channel = 'pear.php.net')\n    {\n        if (PEAR::isError($e = $this->_lock(LOCK_SH))) {\n            return $e;\n        }\n        $pf = &$this->_getPackage($package, $channel);\n        $this->_unlock();\n        return $pf;\n    }\n\n    // }}}\n\n    /**\n     * Get PEAR_PackageFile_v[1/2] objects representing the contents of\n     * a dependency group that are installed.\n     *\n     * This is used at uninstall-time\n     * @param array\n     * @return array|false\n     */\n    function getInstalledGroup($group)\n    {\n        $ret = array();\n        if (isset($group['package'])) {\n            if (!isset($group['package'][0])) {\n                $group['package'] = array($group['package']);\n            }\n            foreach ($group['package'] as $package) {\n                $depchannel = isset($package['channel']) ? $package['channel'] : '__uri';\n                $p = &$this->getPackage($package['name'], $depchannel);\n                if ($p) {\n                    $save = &$p;\n                    $ret[] = &$save;\n                }\n            }\n        }\n        if (isset($group['subpackage'])) {\n            if (!isset($group['subpackage'][0])) {\n                $group['subpackage'] = array($group['subpackage']);\n            }\n            foreach ($group['subpackage'] as $package) {\n                $depchannel = isset($package['channel']) ? $package['channel'] : '__uri';\n                $p = &$this->getPackage($package['name'], $depchannel);\n                if ($p) {\n                    $save = &$p;\n                    $ret[] = &$save;\n                }\n            }\n        }\n        if (!count($ret)) {\n            return false;\n        }\n        return $ret;\n    }\n\n    // {{{ getChannelValidator()\n    /**\n     * @param string channel name\n     * @return PEAR_Validate|false\n     */\n    function &getChannelValidator($channel)\n    {\n        $chan = $this->getChannel($channel);\n        if (PEAR::isError($chan)) {\n            return $chan;\n        }\n        $val = $chan->getValidationObject();\n        return $val;\n    }\n    // }}}\n    // {{{ getChannels()\n    /**\n     * @param string channel name\n     * @return array an array of PEAR_ChannelFile objects representing every installed channel\n     */\n    function &getChannels()\n    {\n        $ret = array();\n        if (PEAR::isError($e = $this->_lock(LOCK_SH))) {\n            return $e;\n        }\n        foreach ($this->_listChannels() as $channel) {\n            $e = &$this->_getChannel($channel);\n            if (!$e || PEAR::isError($e)) {\n                continue;\n            }\n            $ret[] = $e;\n        }\n        $this->_unlock();\n        return $ret;\n    }\n\n    // }}}\n    // {{{ checkFileMap()\n\n    /**\n     * Test whether a file or set of files belongs to a package.\n     *\n     * If an array is passed in\n     * @param string|array file path, absolute or relative to the pear\n     *                     install dir\n     * @param string|array name of PEAR package or array('package' => name, 'channel' =>\n     *                     channel) of a package that will be ignored\n     * @param string API version - 1.1 will exclude any files belonging to a package\n     * @param array private recursion variable\n     * @return array|false which package and channel the file belongs to, or an empty\n     *                     string if the file does not belong to an installed package,\n     *                     or belongs to the second parameter's package\n     */\n    function checkFileMap($path, $package = false, $api = '1.0', $attrs = false)\n    {\n        if (is_array($path)) {\n            static $notempty;\n            if (empty($notempty)) {\n                if (!class_exists('PEAR_Installer_Role')) {\n                    require_once 'PEAR/Installer/Role.php';\n                }\n                $notempty = create_function('$a','return !empty($a);');\n            }\n            $package = is_array($package) ? array(strtolower($package[0]), strtolower($package[1]))\n                : strtolower($package);\n            $pkgs = array();\n            foreach ($path as $name => $attrs) {\n                if (is_array($attrs)) {\n                    if (isset($attrs['install-as'])) {\n                        $name = $attrs['install-as'];\n                    }\n                    if (!in_array($attrs['role'], PEAR_Installer_Role::getInstallableRoles())) {\n                        // these are not installed\n                        continue;\n                    }\n                    if (!in_array($attrs['role'], PEAR_Installer_Role::getBaseinstallRoles())) {\n                        $attrs['baseinstalldir'] = is_array($package) ? $package[1] : $package;\n                    }\n                    if (isset($attrs['baseinstalldir'])) {\n                        $name = $attrs['baseinstalldir'] . DIRECTORY_SEPARATOR . $name;\n                    }\n                }\n                $pkgs[$name] = $this->checkFileMap($name, $package, $api, $attrs);\n                if (PEAR::isError($pkgs[$name])) {\n                    return $pkgs[$name];\n                }\n            }\n            return array_filter($pkgs, $notempty);\n        }\n        if (empty($this->filemap_cache)) {\n            if (PEAR::isError($e = $this->_lock(LOCK_SH))) {\n                return $e;\n            }\n            $err = $this->_readFileMap();\n            $this->_unlock();\n            if (PEAR::isError($err)) {\n                return $err;\n            }\n        }\n        if (!$attrs) {\n            $attrs = array('role' => 'php'); // any old call would be for PHP role only\n        }\n        if (isset($this->filemap_cache[$attrs['role']][$path])) {\n            if ($api >= '1.1' && $this->filemap_cache[$attrs['role']][$path] == $package) {\n                return false;\n            }\n            return $this->filemap_cache[$attrs['role']][$path];\n        }\n        $l = strlen($this->install_dir);\n        if (substr($path, 0, $l) == $this->install_dir) {\n            $path = preg_replace('!^'.DIRECTORY_SEPARATOR.'+!', '', substr($path, $l));\n        }\n        if (isset($this->filemap_cache[$attrs['role']][$path])) {\n            if ($api >= '1.1' && $this->filemap_cache[$attrs['role']][$path] == $package) {\n                return false;\n            }\n            return $this->filemap_cache[$attrs['role']][$path];\n        }\n        return false;\n    }\n\n    // }}}\n    // {{{ flush()\n    /**\n     * Force a reload of the filemap\n     * @since 1.5.0RC3\n     */\n    function flushFileMap()\n    {\n        $this->filemap_cache = null;\n        clearstatcache(); // ensure that the next read gets the full, current filemap\n    }\n\n    // }}}\n    // {{{ apiVersion()\n    /**\n     * Get the expected API version.  Channels API is version 1.1, as it is backwards\n     * compatible with 1.0\n     * @return string\n     */\n    function apiVersion()\n    {\n        return '1.1';\n    }\n    // }}}\n\n\n    /**\n     * Parse a package name, or validate a parsed package name array\n     * @param string|array pass in an array of format\n     *                     array(\n     *                      'package' => 'pname',\n     *                     ['channel' => 'channame',]\n     *                     ['version' => 'version',]\n     *                     ['state' => 'state',]\n     *                     ['group' => 'groupname'])\n     *                     or a string of format\n     *                     [channel://][channame/]pname[-version|-state][/group=groupname]\n     * @return array|PEAR_Error\n     */\n    function parsePackageName($param, $defaultchannel = 'pear.php.net')\n    {\n        $saveparam = $param;\n        if (is_array($param)) {\n            // convert to string for error messages\n            $saveparam = $this->parsedPackageNameToString($param);\n            // process the array\n            if (!isset($param['package'])) {\n                return PEAR::raiseError('parsePackageName(): array $param ' .\n                    'must contain a valid package name in index \"param\"',\n                    'package', null, null, $param);\n            }\n            if (!isset($param['uri'])) {\n                if (!isset($param['channel'])) {\n                    $param['channel'] = $defaultchannel;\n                }\n            } else {\n                $param['channel'] = '__uri';\n            }\n        } else {\n            $components = @parse_url((string) $param);\n            if (isset($components['scheme'])) {\n                if ($components['scheme'] == 'http') {\n                    // uri package\n                    $param = array('uri' => $param, 'channel' => '__uri');\n                } elseif($components['scheme'] != 'channel') {\n                    return PEAR::raiseError('parsePackageName(): only channel:// uris may ' .\n                        'be downloaded, not \"' . $param . '\"', 'invalid', null, null, $param);\n                }\n            }\n            if (!isset($components['path'])) {\n                return PEAR::raiseError('parsePackageName(): array $param ' .\n                    'must contain a valid package name in \"' . $param . '\"',\n                    'package', null, null, $param);\n            }\n            if (isset($components['host'])) {\n                // remove the leading \"/\"\n                $components['path'] = substr($components['path'], 1);\n            }\n            if (!isset($components['scheme'])) {\n                if (strpos($components['path'], '/') !== false) {\n                    if ($components['path']{0} == '/') {\n                        return PEAR::raiseError('parsePackageName(): this is not ' .\n                            'a package name, it begins with \"/\" in \"' . $param . '\"',\n                            'invalid', null, null, $param);\n                    }\n                    $parts = explode('/', $components['path']);\n                    $components['host'] = array_shift($parts);\n                    if (count($parts) > 1) {\n                        $components['path'] = array_pop($parts);\n                        $components['host'] .= '/' . implode('/', $parts);\n                    } else {\n                        $components['path'] = implode('/', $parts);\n                    }\n                } else {\n                    $components['host'] = $defaultchannel;\n                }\n            } else {\n                if (strpos($components['path'], '/')) {\n                    $parts = explode('/', $components['path']);\n                    $components['path'] = array_pop($parts);\n                    $components['host'] .= '/' . implode('/', $parts);\n                }\n            }\n\n            if (is_array($param)) {\n                $param['package'] = $components['path'];\n            } else {\n                $param = array(\n                    'package' => $components['path']\n                    );\n                if (isset($components['host'])) {\n                    $param['channel'] = $components['host'];\n                }\n            }\n            if (isset($components['fragment'])) {\n                $param['group'] = $components['fragment'];\n            }\n            if (isset($components['user'])) {\n                $param['user'] = $components['user'];\n            }\n            if (isset($components['pass'])) {\n                $param['pass'] = $components['pass'];\n            }\n            if (isset($components['query'])) {\n                parse_str($components['query'], $param['opts']);\n            }\n            // check for extension\n            $pathinfo = pathinfo($param['package']);\n            if (isset($pathinfo['extension']) &&\n                  in_array(strtolower($pathinfo['extension']), array('tgz', 'tar'))) {\n                $param['extension'] = $pathinfo['extension'];\n                $param['package'] = substr($pathinfo['basename'], 0,\n                    strlen($pathinfo['basename']) - 4);\n            }\n            // check for version\n            if (strpos($param['package'], '-')) {\n                $test = explode('-', $param['package']);\n                if (count($test) != 2) {\n                    return PEAR::raiseError('parsePackageName(): only one version/state ' .\n                        'delimiter \"-\" is allowed in \"' . $saveparam . '\"',\n                        'version', null, null, $param);\n                }\n                list($param['package'], $param['version']) = $test;\n            }\n        }\n        // validation\n        $info = $this->channelExists($param['channel']);\n        if (PEAR::isError($info)) {\n            return $info;\n        }\n        if (!$info) {\n            return PEAR::raiseError('unknown channel \"' . $param['channel'] .\n                '\" in \"' . $saveparam . '\"', 'channel', null, null, $param);\n        }\n        $chan = $this->getChannel($param['channel']);\n        if (PEAR::isError($chan)) {\n            return $chan;\n        }\n        if (!$chan) {\n            return PEAR::raiseError(\"Exception: corrupt registry, could not \" .\n                \"retrieve channel \" . $param['channel'] . \" information\",\n                'registry', null, null, $param);\n        }\n        $param['channel'] = $chan->getName();\n        $validate = $chan->getValidationObject();\n        $vpackage = $chan->getValidationPackage();\n        // validate package name\n        if (!$validate->validPackageName($param['package'], $vpackage['_content'])) {\n            return PEAR::raiseError('parsePackageName(): invalid package name \"' .\n                $param['package'] . '\" in \"' . $saveparam . '\"',\n                'package', null, null, $param);\n        }\n        if (isset($param['group'])) {\n            if (!PEAR_Validate::validGroupName($param['group'])) {\n                return PEAR::raiseError('parsePackageName(): dependency group \"' . $param['group'] .\n                    '\" is not a valid group name in \"' . $saveparam . '\"', 'group', null, null,\n                    $param);\n            }\n        }\n        if (isset($param['state'])) {\n            if (!in_array(strtolower($param['state']), $validate->getValidStates())) {\n                return PEAR::raiseError('parsePackageName(): state \"' . $param['state']\n                    . '\" is not a valid state in \"' . $saveparam . '\"',\n                    'state', null, null, $param);\n            }\n        }\n        if (isset($param['version'])) {\n            if (isset($param['state'])) {\n                return PEAR::raiseError('parsePackageName(): cannot contain both ' .\n                    'a version and a stability (state) in \"' . $saveparam . '\"',\n                    'version/state', null, null, $param);\n            }\n            // check whether version is actually a state\n            if (in_array(strtolower($param['version']), $validate->getValidStates())) {\n                $param['state'] = strtolower($param['version']);\n                unset($param['version']);\n            } else {\n                if (!$validate->validVersion($param['version'])) {\n                    return PEAR::raiseError('parsePackageName(): \"' . $param['version'] .\n                        '\" is neither a valid version nor a valid state in \"' .\n                        $saveparam . '\"', 'version/state', null, null, $param);\n                }\n            }\n        }\n        return $param;\n    }\n\n    /**\n     * @param array\n     * @return string\n     */\n    function parsedPackageNameToString($parsed, $brief = false)\n    {\n        if (is_string($parsed)) {\n            return $parsed;\n        }\n        if (is_object($parsed)) {\n            $p = $parsed;\n            $parsed = array(\n                'package' => $p->getPackage(),\n                'channel' => $p->getChannel(),\n                'version' => $p->getVersion(),\n            );\n        }\n        if (isset($parsed['uri'])) {\n            return $parsed['uri'];\n        }\n        if ($brief) {\n            if ($channel = $this->channelAlias($parsed['channel'])) {\n                return $channel . '/' . $parsed['package'];\n            }\n        }\n        $upass = '';\n        if (isset($parsed['user'])) {\n            $upass = $parsed['user'];\n            if (isset($parsed['pass'])) {\n                $upass .= ':' . $parsed['pass'];\n            }\n            $upass = \"$upass@\";\n        }\n        $ret = 'channel://' . $upass . $parsed['channel'] . '/' . $parsed['package'];\n        if (isset($parsed['version']) || isset($parsed['state'])) {\n            $ver = isset($parsed['version']) ? $parsed['version'] : '';\n            $ver .= isset($parsed['state']) ? $parsed['state'] : '';\n            $ret .= '-' . $ver;\n        }\n        if (isset($parsed['extension'])) {\n            $ret .= '.' . $parsed['extension'];\n        }\n        if (isset($parsed['opts'])) {\n            $ret .= '?';\n            foreach ($parsed['opts'] as $name => $value) {\n                $parsed['opts'][$name] = \"$name=$value\";\n            }\n            $ret .= implode('&', $parsed['opts']);\n        }\n        if (isset($parsed['group'])) {\n            $ret .= '#' . $parsed['group'];\n        }\n        return $ret;\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/RunTest.php",
    "content": "<?php\n/**\n * PEAR_RunTest\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Tomas V.V.Cox <cox@idecnet.com>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: RunTest.php 297621 2010-04-07 15:09:33Z sebastian $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.3.3\n */\n\n/**\n * for error handling\n */\nrequire_once 'PEAR.php';\nrequire_once 'PEAR/Config.php';\n\ndefine('DETAILED', 1);\nputenv(\"PHP_PEAR_RUNTESTS=1\");\n\n/**\n * Simplified version of PHP's test suite\n *\n * Try it with:\n *\n * $ php -r 'include \"../PEAR/RunTest.php\"; $t=new PEAR_RunTest; $o=$t->run(\"./pear_system.phpt\");print_r($o);'\n *\n *\n * @category   pear\n * @package    PEAR\n * @author     Tomas V.V.Cox <cox@idecnet.com>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.3.3\n */\nclass PEAR_RunTest\n{\n    var $_headers = array();\n    var $_logger;\n    var $_options;\n    var $_php;\n    var $tests_count;\n    var $xdebug_loaded;\n    /**\n     * Saved value of php executable, used to reset $_php when we\n     * have a test that uses cgi\n     *\n     * @var unknown_type\n     */\n    var $_savephp;\n    var $ini_overwrites = array(\n        'output_handler=',\n        'open_basedir=',\n        'safe_mode=0',\n        'disable_functions=',\n        'output_buffering=Off',\n        'display_errors=1',\n        'log_errors=0',\n        'html_errors=0',\n        'track_errors=1',\n        'report_memleaks=0',\n        'report_zend_debug=0',\n        'docref_root=',\n        'docref_ext=.html',\n        'error_prepend_string=',\n        'error_append_string=',\n        'auto_prepend_file=',\n        'auto_append_file=',\n        'magic_quotes_runtime=0',\n        'xdebug.default_enable=0',\n        'allow_url_fopen=1',\n    );\n\n    /**\n     * An object that supports the PEAR_Common->log() signature, or null\n     * @param PEAR_Common|null\n     */\n    function PEAR_RunTest($logger = null, $options = array())\n    {\n        if (!defined('E_DEPRECATED')) {\n            define('E_DEPRECATED', 0);\n        }\n        if (!defined('E_STRICT')) {\n            define('E_STRICT', 0);\n        }\n        $this->ini_overwrites[] = 'error_reporting=' . (E_ALL & ~(E_DEPRECATED | E_STRICT));\n        if (is_null($logger)) {\n            require_once 'PEAR/Common.php';\n            $logger = new PEAR_Common;\n        }\n        $this->_logger  = $logger;\n        $this->_options = $options;\n\n        $conf = &PEAR_Config::singleton();\n        $this->_php = $conf->get('php_bin');\n    }\n\n    /**\n     * Taken from php-src/run-tests.php\n     *\n     * @param string $commandline command name\n     * @param array $env\n     * @param string $stdin standard input to pass to the command\n     * @return unknown\n     */\n    function system_with_timeout($commandline, $env = null, $stdin = null)\n    {\n        $data = '';\n        if (version_compare(phpversion(), '5.0.0', '<')) {\n            $proc = proc_open($commandline, array(\n                0 => array('pipe', 'r'),\n                1 => array('pipe', 'w'),\n                2 => array('pipe', 'w')\n                ), $pipes);\n        } else {\n            $proc = proc_open($commandline, array(\n                0 => array('pipe', 'r'),\n                1 => array('pipe', 'w'),\n                2 => array('pipe', 'w')\n                ), $pipes, null, $env, array('suppress_errors' => true));\n        }\n\n        if (!$proc) {\n            return false;\n        }\n\n        if (is_string($stdin)) {\n            fwrite($pipes[0], $stdin);\n        }\n        fclose($pipes[0]);\n\n        while (true) {\n            /* hide errors from interrupted syscalls */\n            $r = $pipes;\n            $e = $w = null;\n            $n = @stream_select($r, $w, $e, 60);\n\n            if ($n === 0) {\n                /* timed out */\n                $data .= \"\\n ** ERROR: process timed out **\\n\";\n                proc_terminate($proc);\n                return array(1234567890, $data);\n            } else if ($n > 0) {\n                $line = fread($pipes[1], 8192);\n                if (strlen($line) == 0) {\n                    /* EOF */\n                    break;\n                }\n                $data .= $line;\n            }\n        }\n        if (function_exists('proc_get_status')) {\n            $stat = proc_get_status($proc);\n            if ($stat['signaled']) {\n                $data .= \"\\nTermsig=\".$stat['stopsig'];\n            }\n        }\n        $code = proc_close($proc);\n        if (function_exists('proc_get_status')) {\n            $code = $stat['exitcode'];\n        }\n        return array($code, $data);\n    }\n\n    /**\n     * Turns a PHP INI string into an array\n     *\n     * Turns -d \"include_path=/foo/bar\" into this:\n     * array(\n     *   'include_path' => array(\n     *          'operator' => '-d',\n     *          'value'    => '/foo/bar',\n     *   )\n     * )\n     * Works both with quotes and without\n     *\n     * @param string an PHP INI string, -d \"include_path=/foo/bar\"\n     * @return array\n     */\n    function iniString2array($ini_string)\n    {\n        if (!$ini_string) {\n            return array();\n        }\n        $split = preg_split('/[\\s]|=/', $ini_string, -1, PREG_SPLIT_NO_EMPTY);\n        $key   = $split[1][0] == '\"'                     ? substr($split[1], 1)     : $split[1];\n        $value = $split[2][strlen($split[2]) - 1] == '\"' ? substr($split[2], 0, -1) : $split[2];\n        // FIXME review if this is really the struct to go with\n        $array = array($key => array('operator' => $split[0], 'value' => $value));\n        return $array;\n    }\n\n    function settings2array($settings, $ini_settings)\n    {\n        foreach ($settings as $setting) {\n            if (strpos($setting, '=') !== false) {\n                $setting = explode('=', $setting, 2);\n                $name  = trim(strtolower($setting[0]));\n                $value = trim($setting[1]);\n                $ini_settings[$name] = $value;\n            }\n        }\n        return $ini_settings;\n    }\n\n    function settings2params($ini_settings)\n    {\n        $settings = '';\n        foreach ($ini_settings as $name => $value) {\n            if (is_array($value)) {\n                $operator = $value['operator'];\n                $value    = $value['value'];\n            } else {\n                $operator = '-d';\n            }\n            $value = addslashes($value);\n            $settings .= \" $operator \\\"$name=$value\\\"\";\n        }\n        return $settings;\n    }\n\n    function _preparePhpBin($php, $file, $ini_settings)\n    {\n        $file = escapeshellarg($file);\n        // This was fixed in php 5.3 and is not needed after that\n        if (OS_WINDOWS && version_compare(PHP_VERSION, '5.3', '<')) {\n            $cmd = '\"'.escapeshellarg($php).' '.$ini_settings.' -f ' . $file .'\"';\n        } else {\n            $cmd = $php . $ini_settings . ' -f ' . $file;\n        }\n\n        return $cmd;\n    }\n\n    function runPHPUnit($file, $ini_settings = '')\n    {\n        if (!file_exists($file) && file_exists(getcwd() . DIRECTORY_SEPARATOR . $file)) {\n            $file = realpath(getcwd() . DIRECTORY_SEPARATOR . $file);\n        } elseif (file_exists($file)) {\n            $file = realpath($file);\n        }\n\n        $cmd = $this->_preparePhpBin($this->_php, $file, $ini_settings);\n        if (isset($this->_logger)) {\n            $this->_logger->log(2, 'Running command \"' . $cmd . '\"');\n        }\n\n        $savedir = getcwd(); // in case the test moves us around\n        chdir(dirname($file));\n        echo `$cmd`;\n        chdir($savedir);\n        return 'PASSED'; // we have no way of knowing this information so assume passing\n    }\n\n    /**\n     * Runs an individual test case.\n     *\n     * @param string       The filename of the test\n     * @param array|string INI settings to be applied to the test run\n     * @param integer      Number what the current running test is of the\n     *                     whole test suite being runned.\n     *\n     * @return string|object Returns PASSED, WARNED, FAILED depending on how the\n     *                       test came out.\n     *                       PEAR Error when the tester it self fails\n     */\n    function run($file, $ini_settings = array(), $test_number = 1)\n    {\n        if (isset($this->_savephp)) {\n            $this->_php = $this->_savephp;\n            unset($this->_savephp);\n        }\n        if (empty($this->_options['cgi'])) {\n            // try to see if php-cgi is in the path\n            $res = $this->system_with_timeout('php-cgi -v');\n            if (false !== $res && !(is_array($res) && $res === array(127, ''))) {\n                $this->_options['cgi'] = 'php-cgi';\n            }\n        }\n        if (1 < $len = strlen($this->tests_count)) {\n            $test_number = str_pad($test_number, $len, ' ', STR_PAD_LEFT);\n            $test_nr = \"[$test_number/$this->tests_count] \";\n        } else {\n            $test_nr = '';\n        }\n\n        $file = realpath($file);\n        $section_text = $this->_readFile($file);\n        if (PEAR::isError($section_text)) {\n            return $section_text;\n        }\n\n        if (isset($section_text['POST_RAW']) && isset($section_text['UPLOAD'])) {\n            return PEAR::raiseError(\"Cannot contain both POST_RAW and UPLOAD in test file: $file\");\n        }\n\n        $cwd = getcwd();\n\n        $pass_options = '';\n        if (!empty($this->_options['ini'])) {\n            $pass_options = $this->_options['ini'];\n        }\n\n        if (is_string($ini_settings)) {\n            $ini_settings = $this->iniString2array($ini_settings);\n        }\n\n        $ini_settings = $this->settings2array($this->ini_overwrites, $ini_settings);\n        if ($section_text['INI']) {\n            if (strpos($section_text['INI'], '{PWD}') !== false) {\n                $section_text['INI'] = str_replace('{PWD}', dirname($file), $section_text['INI']);\n            }\n            $ini = preg_split( \"/[\\n\\r]+/\", $section_text['INI']);\n            $ini_settings = $this->settings2array($ini, $ini_settings);\n        }\n        $ini_settings = $this->settings2params($ini_settings);\n        $shortname = str_replace($cwd . DIRECTORY_SEPARATOR, '', $file);\n\n        $tested = trim($section_text['TEST']);\n        $tested.= !isset($this->_options['simple']) ? \"[$shortname]\" : ' ';\n\n        if (!empty($section_text['POST']) || !empty($section_text['POST_RAW']) ||\n              !empty($section_text['UPLOAD']) || !empty($section_text['GET']) ||\n              !empty($section_text['COOKIE']) || !empty($section_text['EXPECTHEADERS'])) {\n            if (empty($this->_options['cgi'])) {\n                if (!isset($this->_options['quiet'])) {\n                    $this->_logger->log(0, \"SKIP $test_nr$tested (reason: --cgi option needed for this test, type 'pear help run-tests')\");\n                }\n                if (isset($this->_options['tapoutput'])) {\n                    return array('ok', ' # skip --cgi option needed for this test, \"pear help run-tests\" for info');\n                }\n                return 'SKIPPED';\n            }\n            $this->_savephp = $this->_php;\n            $this->_php = $this->_options['cgi'];\n        }\n\n        $temp_dir = realpath(dirname($file));\n        $main_file_name = basename($file, 'phpt');\n        $diff_filename     = $temp_dir . DIRECTORY_SEPARATOR . $main_file_name.'diff';\n        $log_filename      = $temp_dir . DIRECTORY_SEPARATOR . $main_file_name.'log';\n        $exp_filename      = $temp_dir . DIRECTORY_SEPARATOR . $main_file_name.'exp';\n        $output_filename   = $temp_dir . DIRECTORY_SEPARATOR . $main_file_name.'out';\n        $memcheck_filename = $temp_dir . DIRECTORY_SEPARATOR . $main_file_name.'mem';\n        $temp_file         = $temp_dir . DIRECTORY_SEPARATOR . $main_file_name.'php';\n        $temp_skipif       = $temp_dir . DIRECTORY_SEPARATOR . $main_file_name.'skip.php';\n        $temp_clean        = $temp_dir . DIRECTORY_SEPARATOR . $main_file_name.'clean.php';\n        $tmp_post          = $temp_dir . DIRECTORY_SEPARATOR . uniqid('phpt.');\n\n        // unlink old test results\n        $this->_cleanupOldFiles($file);\n\n        // Check if test should be skipped.\n        $res  = $this->_runSkipIf($section_text, $temp_skipif, $tested, $ini_settings);\n        if (count($res) != 2) {\n            return $res;\n        }\n        $info = $res['info'];\n        $warn = $res['warn'];\n\n        // We've satisfied the preconditions - run the test!\n        if (isset($this->_options['coverage']) && $this->xdebug_loaded) {\n            $xdebug_file = $temp_dir . DIRECTORY_SEPARATOR . $main_file_name . 'xdebug';\n            $text = \"\\n\" . 'function coverage_shutdown() {' .\n                    \"\\n\" . '    $xdebug = var_export(xdebug_get_code_coverage(), true);';\n            if (!function_exists('file_put_contents')) {\n                $text .= \"\\n\" . '    $fh = fopen(\\'' . $xdebug_file . '\\', \"wb\");' .\n                        \"\\n\" . '    if ($fh !== false) {' .\n                        \"\\n\" . '        fwrite($fh, $xdebug);' .\n                        \"\\n\" . '        fclose($fh);' .\n                        \"\\n\" . '    }';\n            } else {\n                $text .= \"\\n\" . '    file_put_contents(\\'' . $xdebug_file . '\\', $xdebug);';\n            }\n\n            $text .= \"\\n\" . 'xdebug_stop_code_coverage();' .\n                \"\\n\" . '} // end coverage_shutdown()' .\n                \"\\n\" . 'register_shutdown_function(\"coverage_shutdown\");';\n            $text .= \"\\n\" . 'xdebug_start_code_coverage(XDEBUG_CC_UNUSED | XDEBUG_CC_DEAD_CODE);' . \"\\n?>\";\n\n            // Workaround for http://pear.php.net/bugs/bug.php?id=17292\n            $lines     = explode(\"\\n\", $section_text['FILE']);\n            $numLines  = count($lines);\n            $namespace = '';\n\n            for ($i = 0; $i < $numLines; $i++) {\n                $lines[$i] = trim($lines[$i]);\n\n                if ($lines[$i] == '<?' || $lines[$i] == '<?php') {\n                    unset($lines[$i]);\n                }\n\n                if (substr($lines[$i], 0, 9) == 'namespace') {\n                    $namespace = $lines[$i] . \"\\n\";\n                    unset($lines[$i]);\n                    break;\n                }\n            }\n\n            $this->save_text($temp_file, \"<?php\\n\" . $namespace . join(\"\\n\", $lines));\n        } else {\n            $this->save_text($temp_file, $section_text['FILE']);\n        }\n\n        $args = $section_text['ARGS'] ? ' -- '.$section_text['ARGS'] : '';\n        $cmd = $this->_preparePhpBin($this->_php, $temp_file, $ini_settings);\n        $cmd.= \"$args 2>&1\";\n        if (isset($this->_logger)) {\n            $this->_logger->log(2, 'Running command \"' . $cmd . '\"');\n        }\n\n        // Reset environment from any previous test.\n        $env = $this->_resetEnv($section_text, $temp_file);\n\n        $section_text = $this->_processUpload($section_text, $file);\n        if (PEAR::isError($section_text)) {\n            return $section_text;\n        }\n\n        if (array_key_exists('POST_RAW', $section_text) && !empty($section_text['POST_RAW'])) {\n            $post = trim($section_text['POST_RAW']);\n            $raw_lines = explode(\"\\n\", $post);\n\n            $request = '';\n            $started = false;\n            foreach ($raw_lines as $i => $line) {\n                if (empty($env['CONTENT_TYPE']) &&\n                    preg_match('/^Content-Type:(.*)/i', $line, $res)) {\n                    $env['CONTENT_TYPE'] = trim(str_replace(\"\\r\", '', $res[1]));\n                    continue;\n                }\n                if ($started) {\n                    $request .= \"\\n\";\n                }\n                $started = true;\n                $request .= $line;\n            }\n\n            $env['CONTENT_LENGTH'] = strlen($request);\n            $env['REQUEST_METHOD'] = 'POST';\n\n            $this->save_text($tmp_post, $request);\n            $cmd = \"$this->_php$pass_options$ini_settings \\\"$temp_file\\\" 2>&1 < $tmp_post\";\n        } elseif (array_key_exists('POST', $section_text) && !empty($section_text['POST'])) {\n            $post = trim($section_text['POST']);\n            $this->save_text($tmp_post, $post);\n            $content_length = strlen($post);\n\n            $env['REQUEST_METHOD'] = 'POST';\n            $env['CONTENT_TYPE']   = 'application/x-www-form-urlencoded';\n            $env['CONTENT_LENGTH'] = $content_length;\n\n            $cmd = \"$this->_php$pass_options$ini_settings \\\"$temp_file\\\" 2>&1 < $tmp_post\";\n        } else {\n            $env['REQUEST_METHOD'] = 'GET';\n            $env['CONTENT_TYPE']   = '';\n            $env['CONTENT_LENGTH'] = '';\n        }\n\n        if (OS_WINDOWS && isset($section_text['RETURNS'])) {\n            ob_start();\n            system($cmd, $return_value);\n            $out = ob_get_contents();\n            ob_end_clean();\n            $section_text['RETURNS'] = (int) trim($section_text['RETURNS']);\n            $returnfail = ($return_value != $section_text['RETURNS']);\n        } else {\n            $returnfail = false;\n            $stdin = isset($section_text['STDIN']) ? $section_text['STDIN'] : null;\n            $out = $this->system_with_timeout($cmd, $env, $stdin);\n            $return_value = $out[0];\n            $out = $out[1];\n        }\n\n        $output = preg_replace('/\\r\\n/', \"\\n\", trim($out));\n\n        if (isset($tmp_post) && realpath($tmp_post) && file_exists($tmp_post)) {\n            @unlink(realpath($tmp_post));\n        }\n        chdir($cwd); // in case the test moves us around\n\n        $this->_testCleanup($section_text, $temp_clean);\n\n        /* when using CGI, strip the headers from the output */\n        $output = $this->_stripHeadersCGI($output);\n\n        if (isset($section_text['EXPECTHEADERS'])) {\n            $testheaders = $this->_processHeaders($section_text['EXPECTHEADERS']);\n            $missing = array_diff_assoc($testheaders, $this->_headers);\n            $changed = '';\n            foreach ($missing as $header => $value) {\n                if (isset($this->_headers[$header])) {\n                    $changed .= \"-$header: $value\\n+$header: \";\n                    $changed .= $this->_headers[$header];\n                } else {\n                    $changed .= \"-$header: $value\\n\";\n                }\n            }\n            if ($missing) {\n                // tack on failed headers to output:\n                $output .= \"\\n====EXPECTHEADERS FAILURE====:\\n$changed\";\n            }\n        }\n        // Does the output match what is expected?\n        do {\n            if (isset($section_text['EXPECTF']) || isset($section_text['EXPECTREGEX'])) {\n                if (isset($section_text['EXPECTF'])) {\n                    $wanted = trim($section_text['EXPECTF']);\n                } else {\n                    $wanted = trim($section_text['EXPECTREGEX']);\n                }\n                $wanted_re = preg_replace('/\\r\\n/', \"\\n\", $wanted);\n                if (isset($section_text['EXPECTF'])) {\n                    $wanted_re = preg_quote($wanted_re, '/');\n                    // Stick to basics\n                    $wanted_re = str_replace(\"%s\", \".+?\", $wanted_re); //not greedy\n                    $wanted_re = str_replace(\"%i\", \"[+\\-]?[0-9]+\", $wanted_re);\n                    $wanted_re = str_replace(\"%d\", \"[0-9]+\", $wanted_re);\n                    $wanted_re = str_replace(\"%x\", \"[0-9a-fA-F]+\", $wanted_re);\n                    $wanted_re = str_replace(\"%f\", \"[+\\-]?\\.?[0-9]+\\.?[0-9]*(E-?[0-9]+)?\", $wanted_re);\n                    $wanted_re = str_replace(\"%c\", \".\", $wanted_re);\n                    // %f allows two points \"-.0.0\" but that is the best *simple* expression\n                }\n\n    /* DEBUG YOUR REGEX HERE\n            var_dump($wanted_re);\n            print(str_repeat('=', 80) . \"\\n\");\n            var_dump($output);\n    */\n                if (!$returnfail && preg_match(\"/^$wanted_re\\$/s\", $output)) {\n                    if (file_exists($temp_file)) {\n                        unlink($temp_file);\n                    }\n                    if (array_key_exists('FAIL', $section_text)) {\n                        break;\n                    }\n                    if (!isset($this->_options['quiet'])) {\n                        $this->_logger->log(0, \"PASS $test_nr$tested$info\");\n                    }\n                    if (isset($this->_options['tapoutput'])) {\n                        return array('ok', ' - ' . $tested);\n                    }\n                    return 'PASSED';\n                }\n            } else {\n                if (isset($section_text['EXPECTFILE'])) {\n                    $f = $temp_dir . '/' . trim($section_text['EXPECTFILE']);\n                    if (!($fp = @fopen($f, 'rb'))) {\n                        return PEAR::raiseError('--EXPECTFILE-- section file ' .\n                            $f . ' not found');\n                    }\n                    fclose($fp);\n                    $section_text['EXPECT'] = file_get_contents($f);\n                }\n\n                if (isset($section_text['EXPECT'])) {\n                    $wanted = preg_replace('/\\r\\n/', \"\\n\", trim($section_text['EXPECT']));\n                } else {\n                    $wanted = '';\n                }\n\n                // compare and leave on success\n                if (!$returnfail && 0 == strcmp($output, $wanted)) {\n                    if (file_exists($temp_file)) {\n                        unlink($temp_file);\n                    }\n                    if (array_key_exists('FAIL', $section_text)) {\n                        break;\n                    }\n                    if (!isset($this->_options['quiet'])) {\n                        $this->_logger->log(0, \"PASS $test_nr$tested$info\");\n                    }\n                    if (isset($this->_options['tapoutput'])) {\n                        return array('ok', ' - ' . $tested);\n                    }\n                    return 'PASSED';\n                }\n            }\n        } while (false);\n\n        if (array_key_exists('FAIL', $section_text)) {\n            // we expect a particular failure\n            // this is only used for testing PEAR_RunTest\n            $expectf  = isset($section_text['EXPECTF']) ? $wanted_re : null;\n            $faildiff = $this->generate_diff($wanted, $output, null, $expectf);\n            $faildiff = preg_replace('/\\r/', '', $faildiff);\n            $wanted   = preg_replace('/\\r/', '', trim($section_text['FAIL']));\n            if ($faildiff == $wanted) {\n                if (!isset($this->_options['quiet'])) {\n                    $this->_logger->log(0, \"PASS $test_nr$tested$info\");\n                }\n                if (isset($this->_options['tapoutput'])) {\n                    return array('ok', ' - ' . $tested);\n                }\n                return 'PASSED';\n            }\n            unset($section_text['EXPECTF']);\n            $output = $faildiff;\n            if (isset($section_text['RETURNS'])) {\n                return PEAR::raiseError('Cannot have both RETURNS and FAIL in the same test: ' .\n                    $file);\n            }\n        }\n\n        // Test failed so we need to report details.\n        $txt = $warn ? 'WARN ' : 'FAIL ';\n        $this->_logger->log(0, $txt . $test_nr . $tested . $info);\n\n        // write .exp\n        $res = $this->_writeLog($exp_filename, $wanted);\n        if (PEAR::isError($res)) {\n            return $res;\n        }\n\n        // write .out\n        $res = $this->_writeLog($output_filename, $output);\n        if (PEAR::isError($res)) {\n            return $res;\n        }\n\n        // write .diff\n        $returns = isset($section_text['RETURNS']) ?\n                        array(trim($section_text['RETURNS']), $return_value) : null;\n        $expectf = isset($section_text['EXPECTF']) ? $wanted_re : null;\n        $data = $this->generate_diff($wanted, $output, $returns, $expectf);\n        $res  = $this->_writeLog($diff_filename, $data);\n        if (PEAR::isError($res)) {\n            return $res;\n        }\n\n        // write .log\n        $data = \"\n---- EXPECTED OUTPUT\n$wanted\n---- ACTUAL OUTPUT\n$output\n---- FAILED\n\";\n\n        if ($returnfail) {\n            $data .= \"\n---- EXPECTED RETURN\n$section_text[RETURNS]\n---- ACTUAL RETURN\n$return_value\n\";\n        }\n\n        $res = $this->_writeLog($log_filename, $data);\n        if (PEAR::isError($res)) {\n            return $res;\n        }\n\n        if (isset($this->_options['tapoutput'])) {\n            $wanted = explode(\"\\n\", $wanted);\n            $wanted = \"# Expected output:\\n#\\n#\" . implode(\"\\n#\", $wanted);\n            $output = explode(\"\\n\", $output);\n            $output = \"#\\n#\\n# Actual output:\\n#\\n#\" . implode(\"\\n#\", $output);\n            return array($wanted . $output . 'not ok', ' - ' . $tested);\n        }\n        return $warn ? 'WARNED' : 'FAILED';\n    }\n\n    function generate_diff($wanted, $output, $rvalue, $wanted_re)\n    {\n        $w  = explode(\"\\n\", $wanted);\n        $o  = explode(\"\\n\", $output);\n        $wr = explode(\"\\n\", $wanted_re);\n        $w1 = array_diff_assoc($w, $o);\n        $o1 = array_diff_assoc($o, $w);\n        $o2 = $w2 = array();\n        foreach ($w1 as $idx => $val) {\n            if (!$wanted_re || !isset($wr[$idx]) || !isset($o1[$idx]) ||\n                  !preg_match('/^' . $wr[$idx] . '\\\\z/', $o1[$idx])) {\n                $w2[sprintf(\"%03d<\", $idx)] = sprintf(\"%03d- \", $idx + 1) . $val;\n            }\n        }\n        foreach ($o1 as $idx => $val) {\n            if (!$wanted_re || !isset($wr[$idx]) ||\n                  !preg_match('/^' . $wr[$idx] . '\\\\z/', $val)) {\n                $o2[sprintf(\"%03d>\", $idx)] = sprintf(\"%03d+ \", $idx + 1) . $val;\n            }\n        }\n        $diff = array_merge($w2, $o2);\n        ksort($diff);\n        $extra = $rvalue ? \"##EXPECTED: $rvalue[0]\\r\\n##RETURNED: $rvalue[1]\" : '';\n        return implode(\"\\r\\n\", $diff) . $extra;\n    }\n\n    //  Write the given text to a temporary file, and return the filename.\n    function save_text($filename, $text)\n    {\n        if (!$fp = fopen($filename, 'w')) {\n            return PEAR::raiseError(\"Cannot open file '\" . $filename . \"' (save_text)\");\n        }\n        fwrite($fp, $text);\n        fclose($fp);\n    if (1 < DETAILED) echo \"\nFILE $filename {{{\n$text\n}}}\n\";\n    }\n\n    function _cleanupOldFiles($file)\n    {\n        $temp_dir = realpath(dirname($file));\n        $mainFileName = basename($file, 'phpt');\n        $diff_filename     = $temp_dir . DIRECTORY_SEPARATOR . $mainFileName.'diff';\n        $log_filename      = $temp_dir . DIRECTORY_SEPARATOR . $mainFileName.'log';\n        $exp_filename      = $temp_dir . DIRECTORY_SEPARATOR . $mainFileName.'exp';\n        $output_filename   = $temp_dir . DIRECTORY_SEPARATOR . $mainFileName.'out';\n        $memcheck_filename = $temp_dir . DIRECTORY_SEPARATOR . $mainFileName.'mem';\n        $temp_file         = $temp_dir . DIRECTORY_SEPARATOR . $mainFileName.'php';\n        $temp_skipif       = $temp_dir . DIRECTORY_SEPARATOR . $mainFileName.'skip.php';\n        $temp_clean        = $temp_dir . DIRECTORY_SEPARATOR . $mainFileName.'clean.php';\n        $tmp_post          = $temp_dir . DIRECTORY_SEPARATOR . uniqid('phpt.');\n\n        // unlink old test results\n        @unlink($diff_filename);\n        @unlink($log_filename);\n        @unlink($exp_filename);\n        @unlink($output_filename);\n        @unlink($memcheck_filename);\n        @unlink($temp_file);\n        @unlink($temp_skipif);\n        @unlink($tmp_post);\n        @unlink($temp_clean);\n    }\n\n    function _runSkipIf($section_text, $temp_skipif, $tested, $ini_settings)\n    {\n        $info = '';\n        $warn = false;\n        if (array_key_exists('SKIPIF', $section_text) && trim($section_text['SKIPIF'])) {\n            $this->save_text($temp_skipif, $section_text['SKIPIF']);\n            $output = $this->system_with_timeout(\"$this->_php$ini_settings -f \\\"$temp_skipif\\\"\");\n            $output = $output[1];\n            $loutput = ltrim($output);\n            unlink($temp_skipif);\n            if (!strncasecmp('skip', $loutput, 4)) {\n                $skipreason = \"SKIP $tested\";\n                if (preg_match('/^\\s*skip\\s*(.+)\\s*/i', $output, $m)) {\n                    $skipreason .= '(reason: ' . $m[1] . ')';\n                }\n                if (!isset($this->_options['quiet'])) {\n                    $this->_logger->log(0, $skipreason);\n                }\n                if (isset($this->_options['tapoutput'])) {\n                    return array('ok', ' # skip ' . $reason);\n                }\n                return 'SKIPPED';\n            }\n\n            if (!strncasecmp('info', $loutput, 4)\n                && preg_match('/^\\s*info\\s*(.+)\\s*/i', $output, $m)) {\n                $info = \" (info: $m[1])\";\n            }\n\n            if (!strncasecmp('warn', $loutput, 4)\n                && preg_match('/^\\s*warn\\s*(.+)\\s*/i', $output, $m)) {\n                $warn = true; /* only if there is a reason */\n                $info = \" (warn: $m[1])\";\n            }\n        }\n\n        return array('warn' => $warn, 'info' => $info);\n    }\n\n    function _stripHeadersCGI($output)\n    {\n        $this->headers = array();\n        if (!empty($this->_options['cgi']) &&\n              $this->_php == $this->_options['cgi'] &&\n              preg_match(\"/^(.*?)(?:\\n\\n(.*)|\\\\z)/s\", $output, $match)) {\n            $output = isset($match[2]) ? trim($match[2]) : '';\n            $this->_headers = $this->_processHeaders($match[1]);\n        }\n\n        return $output;\n    }\n\n    /**\n     * Return an array that can be used with array_diff() to compare headers\n     *\n     * @param string $text\n     */\n    function _processHeaders($text)\n    {\n        $headers = array();\n        $rh = preg_split(\"/[\\n\\r]+/\", $text);\n        foreach ($rh as $line) {\n            if (strpos($line, ':')!== false) {\n                $line = explode(':', $line, 2);\n                $headers[trim($line[0])] = trim($line[1]);\n            }\n        }\n        return $headers;\n    }\n\n    function _readFile($file)\n    {\n        // Load the sections of the test file.\n        $section_text = array(\n            'TEST'   => '(unnamed test)',\n            'SKIPIF' => '',\n            'GET'    => '',\n            'COOKIE' => '',\n            'POST'   => '',\n            'ARGS'   => '',\n            'INI'    => '',\n            'CLEAN'  => '',\n        );\n\n        if (!is_file($file) || !$fp = fopen($file, \"r\")) {\n            return PEAR::raiseError(\"Cannot open test file: $file\");\n        }\n\n        $section = '';\n        while (!feof($fp)) {\n            $line = fgets($fp);\n\n            // Match the beginning of a section.\n            if (preg_match('/^--([_A-Z]+)--/', $line, $r)) {\n                $section = $r[1];\n                $section_text[$section] = '';\n                continue;\n            } elseif (empty($section)) {\n                fclose($fp);\n                return PEAR::raiseError(\"Invalid sections formats in test file: $file\");\n            }\n\n            // Add to the section text.\n            $section_text[$section] .= $line;\n        }\n        fclose($fp);\n\n        return $section_text;\n    }\n\n    function _writeLog($logname, $data)\n    {\n        if (!$log = fopen($logname, 'w')) {\n            return PEAR::raiseError(\"Cannot create test log - $logname\");\n        }\n        fwrite($log, $data);\n        fclose($log);\n    }\n\n    function _resetEnv($section_text, $temp_file)\n    {\n        $env = $_ENV;\n        $env['REDIRECT_STATUS'] = '';\n        $env['QUERY_STRING']    = '';\n        $env['PATH_TRANSLATED'] = '';\n        $env['SCRIPT_FILENAME'] = '';\n        $env['REQUEST_METHOD']  = '';\n        $env['CONTENT_TYPE']    = '';\n        $env['CONTENT_LENGTH']  = '';\n        if (!empty($section_text['ENV'])) {\n            if (strpos($section_text['ENV'], '{PWD}') !== false) {\n                $section_text['ENV'] = str_replace('{PWD}', dirname($temp_file), $section_text['ENV']);\n            }\n            foreach (explode(\"\\n\", trim($section_text['ENV'])) as $e) {\n                $e = explode('=', trim($e), 2);\n                if (!empty($e[0]) && isset($e[1])) {\n                    $env[$e[0]] = $e[1];\n                }\n            }\n        }\n        if (array_key_exists('GET', $section_text)) {\n            $env['QUERY_STRING'] = trim($section_text['GET']);\n        } else {\n            $env['QUERY_STRING'] = '';\n        }\n        if (array_key_exists('COOKIE', $section_text)) {\n            $env['HTTP_COOKIE'] = trim($section_text['COOKIE']);\n        } else {\n            $env['HTTP_COOKIE'] = '';\n        }\n        $env['REDIRECT_STATUS'] = '1';\n        $env['PATH_TRANSLATED'] = $temp_file;\n        $env['SCRIPT_FILENAME'] = $temp_file;\n\n        return $env;\n    }\n\n    function _processUpload($section_text, $file)\n    {\n        if (array_key_exists('UPLOAD', $section_text) && !empty($section_text['UPLOAD'])) {\n            $upload_files = trim($section_text['UPLOAD']);\n            $upload_files = explode(\"\\n\", $upload_files);\n\n            $request = \"Content-Type: multipart/form-data; boundary=---------------------------20896060251896012921717172737\\n\" .\n                       \"-----------------------------20896060251896012921717172737\\n\";\n            foreach ($upload_files as $fileinfo) {\n                $fileinfo = explode('=', $fileinfo);\n                if (count($fileinfo) != 2) {\n                    return PEAR::raiseError(\"Invalid UPLOAD section in test file: $file\");\n                }\n                if (!realpath(dirname($file) . '/' . $fileinfo[1])) {\n                    return PEAR::raiseError(\"File for upload does not exist: $fileinfo[1] \" .\n                        \"in test file: $file\");\n                }\n                $file_contents = file_get_contents(dirname($file) . '/' . $fileinfo[1]);\n                $fileinfo[1] = basename($fileinfo[1]);\n                $request .= \"Content-Disposition: form-data; name=\\\"$fileinfo[0]\\\"; filename=\\\"$fileinfo[1]\\\"\\n\";\n                $request .= \"Content-Type: text/plain\\n\\n\";\n                $request .= $file_contents . \"\\n\" .\n                    \"-----------------------------20896060251896012921717172737\\n\";\n            }\n\n            if (array_key_exists('POST', $section_text) && !empty($section_text['POST'])) {\n                // encode POST raw\n                $post = trim($section_text['POST']);\n                $post = explode('&', $post);\n                foreach ($post as $i => $post_info) {\n                    $post_info = explode('=', $post_info);\n                    if (count($post_info) != 2) {\n                        return PEAR::raiseError(\"Invalid POST data in test file: $file\");\n                    }\n                    $post_info[0] = rawurldecode($post_info[0]);\n                    $post_info[1] = rawurldecode($post_info[1]);\n                    $post[$i] = $post_info;\n                }\n                foreach ($post as $post_info) {\n                    $request .= \"Content-Disposition: form-data; name=\\\"$post_info[0]\\\"\\n\\n\";\n                    $request .= $post_info[1] . \"\\n\" .\n                        \"-----------------------------20896060251896012921717172737\\n\";\n                }\n                unset($section_text['POST']);\n            }\n            $section_text['POST_RAW'] = $request;\n        }\n\n        return $section_text;\n    }\n\n    function _testCleanup($section_text, $temp_clean)\n    {\n        if ($section_text['CLEAN']) {\n            // perform test cleanup\n            $this->save_text($temp_clean, $section_text['CLEAN']);\n            $output = $this->system_with_timeout(\"$this->_php $temp_clean  2>&1\");\n            if (strlen($output[1])) {\n                echo \"BORKED --CLEAN-- section! output:\\n\", $output[1];\n            }\n            if (file_exists($temp_clean)) {\n                unlink($temp_clean);\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/include/PEAR/Task/Common.php",
    "content": "<?php\n/**\n * PEAR_Task_Common, base class for installer tasks\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Common.php 276394 2009-02-25 00:15:49Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n/**#@+\n * Error codes for task validation routines\n */\ndefine('PEAR_TASK_ERROR_NOATTRIBS', 1);\ndefine('PEAR_TASK_ERROR_MISSING_ATTRIB', 2);\ndefine('PEAR_TASK_ERROR_WRONG_ATTRIB_VALUE', 3);\ndefine('PEAR_TASK_ERROR_INVALID', 4);\n/**#@-*/\ndefine('PEAR_TASK_PACKAGE', 1);\ndefine('PEAR_TASK_INSTALL', 2);\ndefine('PEAR_TASK_PACKAGEANDINSTALL', 3);\n/**\n * A task is an operation that manipulates the contents of a file.\n *\n * Simple tasks operate on 1 file.  Multiple tasks are executed after all files have been\n * processed and installed, and are designed to operate on all files containing the task.\n * The Post-install script task simply takes advantage of the fact that it will be run\n * after installation, replace is a simple task.\n *\n * Combining tasks is possible, but ordering is significant.\n *\n * <file name=\"test.php\" role=\"php\">\n *  <tasks:replace from=\"@data-dir@\" to=\"data_dir\" type=\"pear-config\"/>\n *  <tasks:postinstallscript/>\n * </file>\n *\n * This will first replace any instance of @data-dir@ in the test.php file\n * with the path to the current data directory.  Then, it will include the\n * test.php file and run the script it contains to configure the package post-installation.\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n * @abstract\n */\nclass PEAR_Task_Common\n{\n    /**\n     * Valid types for this version are 'simple' and 'multiple'\n     *\n     * - simple tasks operate on the contents of a file and write out changes to disk\n     * - multiple tasks operate on the contents of many files and write out the\n     *   changes directly to disk\n     *\n     * Child task classes must override this property.\n     * @access protected\n     */\n    var $type = 'simple';\n    /**\n     * Determines which install phase this task is executed under\n     */\n    var $phase = PEAR_TASK_INSTALL;\n    /**\n     * @access protected\n     */\n    var $config;\n    /**\n     * @access protected\n     */\n    var $registry;\n    /**\n     * @access protected\n     */\n    var $logger;\n    /**\n     * @access protected\n     */\n    var $installphase;\n    /**\n     * @param PEAR_Config\n     * @param PEAR_Common\n     */\n    function PEAR_Task_Common(&$config, &$logger, $phase)\n    {\n        $this->config = &$config;\n        $this->registry = &$config->getRegistry();\n        $this->logger = &$logger;\n        $this->installphase = $phase;\n        if ($this->type == 'multiple') {\n            $GLOBALS['_PEAR_TASK_POSTINSTANCES'][get_class($this)][] = &$this;\n        }\n    }\n\n    /**\n     * Validate the basic contents of a task tag.\n     * @param PEAR_PackageFile_v2\n     * @param array\n     * @param PEAR_Config\n     * @param array the entire parsed <file> tag\n     * @return true|array On error, return an array in format:\n     *    array(PEAR_TASK_ERROR_???[, param1][, param2][, ...])\n     *\n     *    For PEAR_TASK_ERROR_MISSING_ATTRIB, pass the attribute name in\n     *    For PEAR_TASK_ERROR_WRONG_ATTRIB_VALUE, pass the attribute name and an array\n     *    of legal values in\n     * @static\n     * @abstract\n     */\n    function validateXml($pkg, $xml, $config, $fileXml)\n    {\n    }\n\n    /**\n     * Initialize a task instance with the parameters\n     * @param array raw, parsed xml\n     * @param array attributes from the <file> tag containing this task\n     * @param string|null last installed version of this package\n     * @abstract\n     */\n    function init($xml, $fileAttributes, $lastVersion)\n    {\n    }\n\n    /**\n     * Begin a task processing session.  All multiple tasks will be processed after each file\n     * has been successfully installed, all simple tasks should perform their task here and\n     * return any errors using the custom throwError() method to allow forward compatibility\n     *\n     * This method MUST NOT write out any changes to disk\n     * @param PEAR_PackageFile_v2\n     * @param string file contents\n     * @param string the eventual final file location (informational only)\n     * @return string|false|PEAR_Error false to skip this file, PEAR_Error to fail\n     *         (use $this->throwError), otherwise return the new contents\n     * @abstract\n     */\n    function startSession($pkg, $contents, $dest)\n    {\n    }\n\n    /**\n     * This method is used to process each of the tasks for a particular multiple class\n     * type.  Simple tasks need not implement this method.\n     * @param array an array of tasks\n     * @access protected\n     * @static\n     * @abstract\n     */\n    function run($tasks)\n    {\n    }\n\n    /**\n     * @static\n     * @final\n     */\n    function hasPostinstallTasks()\n    {\n        return isset($GLOBALS['_PEAR_TASK_POSTINSTANCES']);\n    }\n\n    /**\n     * @static\n     * @final\n     */\n     function runPostinstallTasks()\n     {\n         foreach ($GLOBALS['_PEAR_TASK_POSTINSTANCES'] as $class => $tasks) {\n             $err = call_user_func(array($class, 'run'),\n                  $GLOBALS['_PEAR_TASK_POSTINSTANCES'][$class]);\n             if ($err) {\n                 return PEAR_Task_Common::throwError($err);\n             }\n         }\n         unset($GLOBALS['_PEAR_TASK_POSTINSTANCES']);\n    }\n\n    /**\n     * Determines whether a role is a script\n     * @return bool\n     */\n    function isScript()\n    {\n        return $this->type == 'script';\n    }\n\n    function throwError($msg, $code = -1)\n    {\n        include_once 'PEAR.php';\n        return PEAR::raiseError($msg, $code);\n    }\n}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/Task/Postinstallscript/rw.php",
    "content": "<?php\n/**\n * <tasks:postinstallscript> - read/write version\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: rw.php 276385 2009-02-24 23:46:03Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a10\n */\n/**\n * Base class\n */\nrequire_once 'PEAR/Task/Postinstallscript.php';\n/**\n * Abstracts the postinstallscript file task xml.\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a10\n */\nclass PEAR_Task_Postinstallscript_rw extends PEAR_Task_Postinstallscript\n{\n    /**\n     * parent package file object\n     *\n     * @var PEAR_PackageFile_v2_rw\n     */\n    var $_pkg;\n    /**\n     * Enter description here...\n     *\n     * @param PEAR_PackageFile_v2_rw $pkg\n     * @param PEAR_Config $config\n     * @param PEAR_Frontend $logger\n     * @param array $fileXml\n     * @return PEAR_Task_Postinstallscript_rw\n     */\n    function PEAR_Task_Postinstallscript_rw(&$pkg, &$config, &$logger, $fileXml)\n    {\n        parent::PEAR_Task_Common($config, $logger, PEAR_TASK_PACKAGE);\n        $this->_contents = $fileXml;\n        $this->_pkg = &$pkg;\n        $this->_params = array();\n    }\n\n    function validate()\n    {\n        return $this->validateXml($this->_pkg, $this->_params, $this->config, $this->_contents);\n    }\n\n    function getName()\n    {\n        return 'postinstallscript';\n    }\n\n    /**\n     * add a simple <paramgroup> to the post-install script\n     *\n     * Order is significant, so call this method in the same\n     * sequence the users should see the paramgroups.  The $params\n     * parameter should either be the result of a call to {@link getParam()}\n     * or an array of calls to getParam().\n     *\n     * Use {@link addConditionTypeGroup()} to add a <paramgroup> containing\n     * a <conditiontype> tag\n     * @param string $id <paramgroup> id as seen by the script\n     * @param array|false $params array of getParam() calls, or false for no params\n     * @param string|false $instructions\n     */\n    function addParamGroup($id, $params = false, $instructions = false)\n    {\n        if ($params && isset($params[0]) && !isset($params[1])) {\n            $params = $params[0];\n        }\n        $stuff =\n            array(\n                $this->_pkg->getTasksNs() . ':id' => $id,\n            );\n        if ($instructions) {\n            $stuff[$this->_pkg->getTasksNs() . ':instructions'] = $instructions;\n        }\n        if ($params) {\n            $stuff[$this->_pkg->getTasksNs() . ':param'] = $params;\n        }\n        $this->_params[$this->_pkg->getTasksNs() . ':paramgroup'][] = $stuff;\n    }\n\n    /**\n     * add a complex <paramgroup> to the post-install script with conditions\n     *\n     * This inserts a <paramgroup> with\n     *\n     * Order is significant, so call this method in the same\n     * sequence the users should see the paramgroups.  The $params\n     * parameter should either be the result of a call to {@link getParam()}\n     * or an array of calls to getParam().\n     *\n     * Use {@link addParamGroup()} to add a simple <paramgroup>\n     *\n     * @param string $id <paramgroup> id as seen by the script\n     * @param string $oldgroup <paramgroup> id of the section referenced by\n     *                         <conditiontype>\n     * @param string $param name of the <param> from the older section referenced\n     *                      by <contitiontype>\n     * @param string $value value to match of the parameter\n     * @param string $conditiontype one of '=', '!=', 'preg_match'\n     * @param array|false $params array of getParam() calls, or false for no params\n     * @param string|false $instructions\n     */\n    function addConditionTypeGroup($id, $oldgroup, $param, $value, $conditiontype = '=',\n                                   $params = false, $instructions = false)\n    {\n        if ($params && isset($params[0]) && !isset($params[1])) {\n            $params = $params[0];\n        }\n        $stuff = array(\n            $this->_pkg->getTasksNs() . ':id' => $id,\n        );\n        if ($instructions) {\n            $stuff[$this->_pkg->getTasksNs() . ':instructions'] = $instructions;\n        }\n        $stuff[$this->_pkg->getTasksNs() . ':name'] = $oldgroup . '::' . $param;\n        $stuff[$this->_pkg->getTasksNs() . ':conditiontype'] = $conditiontype;\n        $stuff[$this->_pkg->getTasksNs() . ':value'] = $value;\n        if ($params) {\n            $stuff[$this->_pkg->getTasksNs() . ':param'] = $params;\n        }\n        $this->_params[$this->_pkg->getTasksNs() . ':paramgroup'][] = $stuff;\n    }\n\n    function getXml()\n    {\n        return $this->_params;\n    }\n\n    /**\n     * Use to set up a param tag for use in creating a paramgroup\n     * @static\n     */\n    function getParam($name, $prompt, $type = 'string', $default = null)\n    {\n        if ($default !== null) {\n            return\n            array(\n                $this->_pkg->getTasksNs() . ':name' => $name,\n                $this->_pkg->getTasksNs() . ':prompt' => $prompt,\n                $this->_pkg->getTasksNs() . ':type' => $type,\n                $this->_pkg->getTasksNs() . ':default' => $default\n            );\n        }\n        return\n            array(\n                $this->_pkg->getTasksNs() . ':name' => $name,\n                $this->_pkg->getTasksNs() . ':prompt' => $prompt,\n                $this->_pkg->getTasksNs() . ':type' => $type,\n            );\n    }\n}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/Task/Postinstallscript.php",
    "content": "<?php\n/**\n * <tasks:postinstallscript>\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Postinstallscript.php 276385 2009-02-24 23:46:03Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n/**\n * Base class\n */\nrequire_once 'PEAR/Task/Common.php';\n/**\n * Implements the postinstallscript file task.\n *\n * Note that post-install scripts are handled separately from installation, by the\n * \"pear run-scripts\" command\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_Task_Postinstallscript extends PEAR_Task_Common\n{\n    var $type = 'script';\n    var $_class;\n    var $_params;\n    var $_obj;\n    /**\n     *\n     * @var PEAR_PackageFile_v2\n     */\n    var $_pkg;\n    var $_contents;\n    var $phase = PEAR_TASK_INSTALL;\n\n    /**\n     * Validate the raw xml at parsing-time.\n     *\n     * This also attempts to validate the script to make sure it meets the criteria\n     * for a post-install script\n     * @param PEAR_PackageFile_v2\n     * @param array The XML contents of the <postinstallscript> tag\n     * @param PEAR_Config\n     * @param array the entire parsed <file> tag\n     * @static\n     */\n    function validateXml($pkg, $xml, $config, $fileXml)\n    {\n        if ($fileXml['role'] != 'php') {\n            return array(PEAR_TASK_ERROR_INVALID, 'Post-install script \"' .\n            $fileXml['name'] . '\" must be role=\"php\"');\n        }\n        PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n        $file = $pkg->getFileContents($fileXml['name']);\n        if (PEAR::isError($file)) {\n            PEAR::popErrorHandling();\n            return array(PEAR_TASK_ERROR_INVALID, 'Post-install script \"' .\n                $fileXml['name'] . '\" is not valid: ' .\n                $file->getMessage());\n        } elseif ($file === null) {\n            return array(PEAR_TASK_ERROR_INVALID, 'Post-install script \"' .\n                $fileXml['name'] . '\" could not be retrieved for processing!');\n        } else {\n            $analysis = $pkg->analyzeSourceCode($file, true);\n            if (!$analysis) {\n                PEAR::popErrorHandling();\n                $warnings = '';\n                foreach ($pkg->getValidationWarnings() as $warn) {\n                    $warnings .= $warn['message'] . \"\\n\";\n                }\n                return array(PEAR_TASK_ERROR_INVALID, 'Analysis of post-install script \"' .\n                    $fileXml['name'] . '\" failed: ' . $warnings);\n            }\n            if (count($analysis['declared_classes']) != 1) {\n                PEAR::popErrorHandling();\n                return array(PEAR_TASK_ERROR_INVALID, 'Post-install script \"' .\n                    $fileXml['name'] . '\" must declare exactly 1 class');\n            }\n            $class = $analysis['declared_classes'][0];\n            if ($class != str_replace(array('/', '.php'), array('_', ''),\n                  $fileXml['name']) . '_postinstall') {\n                PEAR::popErrorHandling();\n                return array(PEAR_TASK_ERROR_INVALID, 'Post-install script \"' .\n                    $fileXml['name'] . '\" class \"' . $class . '\" must be named \"' .\n                    str_replace(array('/', '.php'), array('_', ''),\n                    $fileXml['name']) . '_postinstall\"');\n            }\n            if (!isset($analysis['declared_methods'][$class])) {\n                PEAR::popErrorHandling();\n                return array(PEAR_TASK_ERROR_INVALID, 'Post-install script \"' .\n                    $fileXml['name'] . '\" must declare methods init() and run()');\n            }\n            $methods = array('init' => 0, 'run' => 1);\n            foreach ($analysis['declared_methods'][$class] as $method) {\n                if (isset($methods[$method])) {\n                    unset($methods[$method]);\n                }\n            }\n            if (count($methods)) {\n                PEAR::popErrorHandling();\n                return array(PEAR_TASK_ERROR_INVALID, 'Post-install script \"' .\n                    $fileXml['name'] . '\" must declare methods init() and run()');\n            }\n        }\n        PEAR::popErrorHandling();\n        $definedparams = array();\n        $tasksNamespace = $pkg->getTasksNs() . ':';\n        if (!isset($xml[$tasksNamespace . 'paramgroup']) && isset($xml['paramgroup'])) {\n            // in order to support the older betas, which did not expect internal tags\n            // to also use the namespace\n            $tasksNamespace = '';\n        }\n        if (isset($xml[$tasksNamespace . 'paramgroup'])) {\n            $params = $xml[$tasksNamespace . 'paramgroup'];\n            if (!is_array($params) || !isset($params[0])) {\n                $params = array($params);\n            }\n            foreach ($params as $param) {\n                if (!isset($param[$tasksNamespace . 'id'])) {\n                    return array(PEAR_TASK_ERROR_INVALID, 'Post-install script \"' .\n                        $fileXml['name'] . '\" <paramgroup> must have ' .\n                        'an ' . $tasksNamespace . 'id> tag');\n                }\n                if (isset($param[$tasksNamespace . 'name'])) {\n                    if (!in_array($param[$tasksNamespace . 'name'], $definedparams)) {\n                        return array(PEAR_TASK_ERROR_INVALID, 'Post-install script \"' .\n                            $fileXml['name'] . '\" ' . $tasksNamespace .\n                            'paramgroup> id \"' . $param[$tasksNamespace . 'id'] .\n                            '\" parameter \"' . $param[$tasksNamespace . 'name'] .\n                            '\" has not been previously defined');\n                    }\n                    if (!isset($param[$tasksNamespace . 'conditiontype'])) {\n                        return array(PEAR_TASK_ERROR_INVALID, 'Post-install script \"' .\n                            $fileXml['name'] . '\" ' . $tasksNamespace .\n                            'paramgroup> id \"' . $param[$tasksNamespace . 'id'] .\n                            '\" must have a ' . $tasksNamespace .\n                            'conditiontype> tag containing either \"=\", ' .\n                            '\"!=\", or \"preg_match\"');\n                    }\n                    if (!in_array($param[$tasksNamespace . 'conditiontype'],\n                          array('=', '!=', 'preg_match'))) {\n                        return array(PEAR_TASK_ERROR_INVALID, 'Post-install script \"' .\n                            $fileXml['name'] . '\" ' . $tasksNamespace .\n                            'paramgroup> id \"' . $param[$tasksNamespace . 'id'] .\n                            '\" must have a ' . $tasksNamespace .\n                            'conditiontype> tag containing either \"=\", ' .\n                            '\"!=\", or \"preg_match\"');\n                    }\n                    if (!isset($param[$tasksNamespace . 'value'])) {\n                        return array(PEAR_TASK_ERROR_INVALID, 'Post-install script \"' .\n                            $fileXml['name'] . '\" ' . $tasksNamespace .\n                            'paramgroup> id \"' . $param[$tasksNamespace . 'id'] .\n                            '\" must have a ' . $tasksNamespace .\n                            'value> tag containing expected parameter value');\n                    }\n                }\n                if (isset($param[$tasksNamespace . 'instructions'])) {\n                    if (!is_string($param[$tasksNamespace . 'instructions'])) {\n                        return array(PEAR_TASK_ERROR_INVALID, 'Post-install script \"' .\n                            $fileXml['name'] . '\" ' . $tasksNamespace .\n                            'paramgroup> id \"' . $param[$tasksNamespace . 'id'] .\n                            '\" ' . $tasksNamespace . 'instructions> must be simple text');\n                    }\n                }\n                if (!isset($param[$tasksNamespace . 'param'])) {\n                    continue; // <param> is no longer required\n                }\n                $subparams = $param[$tasksNamespace . 'param'];\n                if (!is_array($subparams) || !isset($subparams[0])) {\n                    $subparams = array($subparams);\n                }\n                foreach ($subparams as $subparam) {\n                    if (!isset($subparam[$tasksNamespace . 'name'])) {\n                        return array(PEAR_TASK_ERROR_INVALID, 'Post-install script \"' .\n                            $fileXml['name'] . '\" parameter for ' .\n                            $tasksNamespace . 'paramgroup> id \"' .\n                            $param[$tasksNamespace . 'id'] . '\" must have ' .\n                            'a ' . $tasksNamespace . 'name> tag');\n                    }\n                    if (!preg_match('/[a-zA-Z0-9]+/',\n                          $subparam[$tasksNamespace . 'name'])) {\n                        return array(PEAR_TASK_ERROR_INVALID, 'Post-install script \"' .\n                            $fileXml['name'] . '\" parameter \"' .\n                            $subparam[$tasksNamespace . 'name'] .\n                            '\" for ' . $tasksNamespace . 'paramgroup> id \"' .\n                            $param[$tasksNamespace . 'id'] .\n                            '\" is not a valid name.  Must contain only alphanumeric characters');\n                    }\n                    if (!isset($subparam[$tasksNamespace . 'prompt'])) {\n                        return array(PEAR_TASK_ERROR_INVALID, 'Post-install script \"' .\n                            $fileXml['name'] . '\" parameter \"' .\n                            $subparam[$tasksNamespace . 'name'] .\n                            '\" for ' . $tasksNamespace . 'paramgroup> id \"' .\n                            $param[$tasksNamespace . 'id'] .\n                            '\" must have a ' . $tasksNamespace . 'prompt> tag');\n                    }\n                    if (!isset($subparam[$tasksNamespace . 'type'])) {\n                        return array(PEAR_TASK_ERROR_INVALID, 'Post-install script \"' .\n                            $fileXml['name'] . '\" parameter \"' .\n                            $subparam[$tasksNamespace . 'name'] .\n                            '\" for ' . $tasksNamespace . 'paramgroup> id \"' .\n                            $param[$tasksNamespace . 'id'] .\n                            '\" must have a ' . $tasksNamespace . 'type> tag');\n                    }\n                    $definedparams[] = $param[$tasksNamespace . 'id'] . '::' .\n                    $subparam[$tasksNamespace . 'name'];\n                }\n            }\n        }\n        return true;\n    }\n\n    /**\n     * Initialize a task instance with the parameters\n     * @param array raw, parsed xml\n     * @param array attributes from the <file> tag containing this task\n     * @param string|null last installed version of this package, if any (useful for upgrades)\n     */\n    function init($xml, $fileattribs, $lastversion)\n    {\n        $this->_class = str_replace('/', '_', $fileattribs['name']);\n        $this->_filename = $fileattribs['name'];\n        $this->_class = str_replace ('.php', '', $this->_class) . '_postinstall';\n        $this->_params = $xml;\n        $this->_lastversion = $lastversion;\n    }\n\n    /**\n     * Strip the tasks: namespace from internal params\n     *\n     * @access private\n     */\n    function _stripNamespace($params = null)\n    {\n        if ($params === null) {\n            $params = array();\n            if (!is_array($this->_params)) {\n                return;\n            }\n            foreach ($this->_params as $i => $param) {\n                if (is_array($param)) {\n                    $param = $this->_stripNamespace($param);\n                }\n                $params[str_replace($this->_pkg->getTasksNs() . ':', '', $i)] = $param;\n            }\n            $this->_params = $params;\n        } else {\n            $newparams = array();\n            foreach ($params as $i => $param) {\n                if (is_array($param)) {\n                    $param = $this->_stripNamespace($param);\n                }\n                $newparams[str_replace($this->_pkg->getTasksNs() . ':', '', $i)] = $param;\n            }\n            return $newparams;\n        }\n    }\n\n    /**\n     * Unlike other tasks, the installed file name is passed in instead of the file contents,\n     * because this task is handled post-installation\n     * @param PEAR_PackageFile_v1|PEAR_PackageFile_v2\n     * @param string file name\n     * @return bool|PEAR_Error false to skip this file, PEAR_Error to fail\n     *         (use $this->throwError)\n     */\n    function startSession($pkg, $contents)\n    {\n        if ($this->installphase != PEAR_TASK_INSTALL) {\n            return false;\n        }\n        // remove the tasks: namespace if present\n        $this->_pkg = $pkg;\n        $this->_stripNamespace();\n        $this->logger->log(0, 'Including external post-installation script \"' .\n            $contents . '\" - any errors are in this script');\n        include_once $contents;\n        if (class_exists($this->_class)) {\n            $this->logger->log(0, 'Inclusion succeeded');\n        } else {\n            return $this->throwError('init of post-install script class \"' . $this->_class\n                . '\" failed');\n        }\n        $this->_obj = new $this->_class;\n        $this->logger->log(1, 'running post-install script \"' . $this->_class . '->init()\"');\n        PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n        $res = $this->_obj->init($this->config, $pkg, $this->_lastversion);\n        PEAR::popErrorHandling();\n        if ($res) {\n            $this->logger->log(0, 'init succeeded');\n        } else {\n            return $this->throwError('init of post-install script \"' . $this->_class .\n                '->init()\" failed');\n        }\n        $this->_contents = $contents;\n        return true;\n    }\n\n    /**\n     * No longer used\n     * @see PEAR_PackageFile_v2::runPostinstallScripts()\n     * @param array an array of tasks\n     * @param string install or upgrade\n     * @access protected\n     * @static\n     */\n    function run()\n    {\n    }\n}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/Task/Replace/rw.php",
    "content": "<?php\n/**\n * <tasks:replace> - read/write version\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: rw.php 276385 2009-02-24 23:46:03Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a10\n */\n/**\n * Base class\n */\nrequire_once 'PEAR/Task/Replace.php';\n/**\n * Abstracts the replace task xml.\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a10\n */\nclass PEAR_Task_Replace_rw extends PEAR_Task_Replace\n{\n    function PEAR_Task_Replace_rw(&$pkg, &$config, &$logger, $fileXml)\n    {\n        parent::PEAR_Task_Common($config, $logger, PEAR_TASK_PACKAGE);\n        $this->_contents = $fileXml;\n        $this->_pkg = &$pkg;\n        $this->_params = array();\n    }\n\n    function validate()\n    {\n        return $this->validateXml($this->_pkg, $this->_params, $this->config, $this->_contents);\n    }\n\n    function setInfo($from, $to, $type)\n    {\n        $this->_params = array('attribs' => array('from' => $from, 'to' => $to, 'type' => $type));\n    }\n\n    function getName()\n    {\n        return 'replace';\n    }\n\n    function getXml()\n    {\n        return $this->_params;\n    }\n}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/Task/Replace.php",
    "content": "<?php\n/**\n * <tasks:replace>\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Replace.php 276394 2009-02-25 00:15:49Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n/**\n * Base class\n */\nrequire_once 'PEAR/Task/Common.php';\n/**\n * Implements the replace file task.\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_Task_Replace extends PEAR_Task_Common\n{\n    var $type = 'simple';\n    var $phase = PEAR_TASK_PACKAGEANDINSTALL;\n    var $_replacements;\n\n    /**\n     * Validate the raw xml at parsing-time.\n     * @param PEAR_PackageFile_v2\n     * @param array raw, parsed xml\n     * @param PEAR_Config\n     * @static\n     */\n    function validateXml($pkg, $xml, $config, $fileXml)\n    {\n        if (!isset($xml['attribs'])) {\n            return array(PEAR_TASK_ERROR_NOATTRIBS);\n        }\n        if (!isset($xml['attribs']['type'])) {\n            return array(PEAR_TASK_ERROR_MISSING_ATTRIB, 'type');\n        }\n        if (!isset($xml['attribs']['to'])) {\n            return array(PEAR_TASK_ERROR_MISSING_ATTRIB, 'to');\n        }\n        if (!isset($xml['attribs']['from'])) {\n            return array(PEAR_TASK_ERROR_MISSING_ATTRIB, 'from');\n        }\n        if ($xml['attribs']['type'] == 'pear-config') {\n            if (!in_array($xml['attribs']['to'], $config->getKeys())) {\n                return array(PEAR_TASK_ERROR_WRONG_ATTRIB_VALUE, 'to', $xml['attribs']['to'],\n                    $config->getKeys());\n            }\n        } elseif ($xml['attribs']['type'] == 'php-const') {\n            if (defined($xml['attribs']['to'])) {\n                return true;\n            } else {\n                return array(PEAR_TASK_ERROR_WRONG_ATTRIB_VALUE, 'to', $xml['attribs']['to'],\n                    array('valid PHP constant'));\n            }\n        } elseif ($xml['attribs']['type'] == 'package-info') {\n            if (in_array($xml['attribs']['to'],\n                array('name', 'summary', 'channel', 'notes', 'extends', 'description',\n                    'release_notes', 'license', 'release-license', 'license-uri',\n                    'version', 'api-version', 'state', 'api-state', 'release_date',\n                    'date', 'time'))) {\n                return true;\n            } else {\n                return array(PEAR_TASK_ERROR_WRONG_ATTRIB_VALUE, 'to', $xml['attribs']['to'],\n                    array('name', 'summary', 'channel', 'notes', 'extends', 'description',\n                    'release_notes', 'license', 'release-license', 'license-uri',\n                    'version', 'api-version', 'state', 'api-state', 'release_date',\n                    'date', 'time'));\n            }\n        } else {\n            return array(PEAR_TASK_ERROR_WRONG_ATTRIB_VALUE, 'type', $xml['attribs']['type'],\n                array('pear-config', 'package-info', 'php-const'));\n        }\n        return true;\n    }\n\n    /**\n     * Initialize a task instance with the parameters\n     * @param array raw, parsed xml\n     * @param unused\n     */\n    function init($xml, $attribs)\n    {\n        $this->_replacements = isset($xml['attribs']) ? array($xml) : $xml;\n    }\n\n    /**\n     * Do a package.xml 1.0 replacement, with additional package-info fields available\n     *\n     * See validateXml() source for the complete list of allowed fields\n     * @param PEAR_PackageFile_v1|PEAR_PackageFile_v2\n     * @param string file contents\n     * @param string the eventual final file location (informational only)\n     * @return string|false|PEAR_Error false to skip this file, PEAR_Error to fail\n     *         (use $this->throwError), otherwise return the new contents\n     */\n    function startSession($pkg, $contents, $dest)\n    {\n        $subst_from = $subst_to = array();\n        foreach ($this->_replacements as $a) {\n            $a = $a['attribs'];\n            $to = '';\n            if ($a['type'] == 'pear-config') {\n                if ($this->installphase == PEAR_TASK_PACKAGE) {\n                    return false;\n                }\n                if ($a['to'] == 'master_server') {\n                    $chan = $this->registry->getChannel($pkg->getChannel());\n                    if (!PEAR::isError($chan)) {\n                        $to = $chan->getServer();\n                    } else {\n                        $this->logger->log(0, \"$dest: invalid pear-config replacement: $a[to]\");\n                        return false;\n                    }\n                } else {\n                    if ($this->config->isDefinedLayer('ftp')) {\n                        // try the remote config file first\n                        $to = $this->config->get($a['to'], 'ftp', $pkg->getChannel());\n                        if (is_null($to)) {\n                            // then default to local\n                            $to = $this->config->get($a['to'], null, $pkg->getChannel());\n                        }\n                    } else {\n                        $to = $this->config->get($a['to'], null, $pkg->getChannel());\n                    }\n                }\n                if (is_null($to)) {\n                    $this->logger->log(0, \"$dest: invalid pear-config replacement: $a[to]\");\n                    return false;\n                }\n            } elseif ($a['type'] == 'php-const') {\n                if ($this->installphase == PEAR_TASK_PACKAGE) {\n                    return false;\n                }\n                if (defined($a['to'])) {\n                    $to = constant($a['to']);\n                } else {\n                    $this->logger->log(0, \"$dest: invalid php-const replacement: $a[to]\");\n                    return false;\n                }\n            } else {\n                if ($t = $pkg->packageInfo($a['to'])) {\n                    $to = $t;\n                } else {\n                    $this->logger->log(0, \"$dest: invalid package-info replacement: $a[to]\");\n                    return false;\n                }\n            }\n            if (!is_null($to)) {\n                $subst_from[] = $a['from'];\n                $subst_to[] = $to;\n            }\n        }\n        $this->logger->log(3, \"doing \" . sizeof($subst_from) .\n            \" substitution(s) for $dest\");\n        if (sizeof($subst_from)) {\n            $contents = str_replace($subst_from, $subst_to, $contents);\n        }\n        return $contents;\n    }\n}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/Task/Unixeol/rw.php",
    "content": "<?php\n/**\n * <tasks:unixeol> - read/write version\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: rw.php 276385 2009-02-24 23:46:03Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a10\n */\n/**\n * Base class\n */\nrequire_once 'PEAR/Task/Unixeol.php';\n/**\n * Abstracts the unixeol task xml.\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a10\n */\nclass PEAR_Task_Unixeol_rw extends PEAR_Task_Unixeol\n{\n    function PEAR_Task_Unixeol_rw(&$pkg, &$config, &$logger, $fileXml)\n    {\n        parent::PEAR_Task_Common($config, $logger, PEAR_TASK_PACKAGE);\n        $this->_contents = $fileXml;\n        $this->_pkg = &$pkg;\n        $this->_params = array();\n    }\n\n    function validate()\n    {\n        return true;\n    }\n\n    function getName()\n    {\n        return 'unixeol';\n    }\n\n    function getXml()\n    {\n        return '';\n    }\n}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/Task/Unixeol.php",
    "content": "<?php\n/**\n * <tasks:unixeol>\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Unixeol.php 276394 2009-02-25 00:15:49Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n/**\n * Base class\n */\nrequire_once 'PEAR/Task/Common.php';\n/**\n * Implements the unix line endings file task.\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_Task_Unixeol extends PEAR_Task_Common\n{\n    var $type = 'simple';\n    var $phase = PEAR_TASK_PACKAGE;\n    var $_replacements;\n\n    /**\n     * Validate the raw xml at parsing-time.\n     * @param PEAR_PackageFile_v2\n     * @param array raw, parsed xml\n     * @param PEAR_Config\n     * @static\n     */\n    function validateXml($pkg, $xml, $config, $fileXml)\n    {\n        if ($xml != '') {\n            return array(PEAR_TASK_ERROR_INVALID, 'no attributes allowed');\n        }\n        return true;\n    }\n\n    /**\n     * Initialize a task instance with the parameters\n     * @param array raw, parsed xml\n     * @param unused\n     */\n    function init($xml, $attribs)\n    {\n    }\n\n    /**\n     * Replace all line endings with line endings customized for the current OS\n     *\n     * See validateXml() source for the complete list of allowed fields\n     * @param PEAR_PackageFile_v1|PEAR_PackageFile_v2\n     * @param string file contents\n     * @param string the eventual final file location (informational only)\n     * @return string|false|PEAR_Error false to skip this file, PEAR_Error to fail\n     *         (use $this->throwError), otherwise return the new contents\n     */\n    function startSession($pkg, $contents, $dest)\n    {\n        $this->logger->log(3, \"replacing all line endings with \\\\n in $dest\");\n        return preg_replace(\"/\\r\\n|\\n\\r|\\r|\\n/\", \"\\n\", $contents);\n    }\n}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/Task/Windowseol/rw.php",
    "content": "<?php\n/**\n * <tasks:windowseol> - read/write version\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: rw.php 276385 2009-02-24 23:46:03Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a10\n */\n/**\n * Base class\n */\nrequire_once 'PEAR/Task/Windowseol.php';\n/**\n * Abstracts the windowseol task xml.\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a10\n */\nclass PEAR_Task_Windowseol_rw extends PEAR_Task_Windowseol\n{\n    function PEAR_Task_Windowseol_rw(&$pkg, &$config, &$logger, $fileXml)\n    {\n        parent::PEAR_Task_Common($config, $logger, PEAR_TASK_PACKAGE);\n        $this->_contents = $fileXml;\n        $this->_pkg = &$pkg;\n        $this->_params = array();\n    }\n\n    function validate()\n    {\n        return true;\n    }\n\n    function getName()\n    {\n        return 'windowseol';\n    }\n\n    function getXml()\n    {\n        return '';\n    }\n}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/Task/Windowseol.php",
    "content": "<?php\n/**\n * <tasks:windowseol>\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Windowseol.php 276394 2009-02-25 00:15:49Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n/**\n * Base class\n */\nrequire_once 'PEAR/Task/Common.php';\n/**\n * Implements the windows line endsings file task.\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_Task_Windowseol extends PEAR_Task_Common\n{\n    var $type = 'simple';\n    var $phase = PEAR_TASK_PACKAGE;\n    var $_replacements;\n\n    /**\n     * Validate the raw xml at parsing-time.\n     * @param PEAR_PackageFile_v2\n     * @param array raw, parsed xml\n     * @param PEAR_Config\n     * @static\n     */\n    function validateXml($pkg, $xml, $config, $fileXml)\n    {\n        if ($xml != '') {\n            return array(PEAR_TASK_ERROR_INVALID, 'no attributes allowed');\n        }\n        return true;\n    }\n\n    /**\n     * Initialize a task instance with the parameters\n     * @param array raw, parsed xml\n     * @param unused\n     */\n    function init($xml, $attribs)\n    {\n    }\n\n    /**\n     * Replace all line endings with windows line endings\n     *\n     * See validateXml() source for the complete list of allowed fields\n     * @param PEAR_PackageFile_v1|PEAR_PackageFile_v2\n     * @param string file contents\n     * @param string the eventual final file location (informational only)\n     * @return string|false|PEAR_Error false to skip this file, PEAR_Error to fail\n     *         (use $this->throwError), otherwise return the new contents\n     */\n    function startSession($pkg, $contents, $dest)\n    {\n        $this->logger->log(3, \"replacing all line endings with \\\\r\\\\n in $dest\");\n        return preg_replace(\"/\\r\\n|\\n\\r|\\r|\\n/\", \"\\r\\n\", $contents);\n    }\n}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/Validate.php",
    "content": "<?php\n/**\n * PEAR_Validate\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: Validate.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n/**#@+\n * Constants for install stage\n */\ndefine('PEAR_VALIDATE_INSTALLING', 1);\ndefine('PEAR_VALIDATE_UNINSTALLING', 2); // this is not bit-mapped like the others\ndefine('PEAR_VALIDATE_NORMAL', 3);\ndefine('PEAR_VALIDATE_DOWNLOADING', 4); // this is not bit-mapped like the others\ndefine('PEAR_VALIDATE_PACKAGING', 7);\n/**#@-*/\nrequire_once 'PEAR/Common.php';\nrequire_once 'PEAR/Validator/PECL.php';\n\n/**\n * Validation class for package.xml - channel-level advanced validation\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a1\n */\nclass PEAR_Validate\n{\n    var $packageregex = _PEAR_COMMON_PACKAGE_NAME_PREG;\n    /**\n     * @var PEAR_PackageFile_v1|PEAR_PackageFile_v2\n     */\n    var $_packagexml;\n    /**\n     * @var int one of the PEAR_VALIDATE_* constants\n     */\n    var $_state = PEAR_VALIDATE_NORMAL;\n    /**\n     * Format: ('error' => array('field' => name, 'reason' => reason), 'warning' => same)\n     * @var array\n     * @access private\n     */\n    var $_failures = array('error' => array(), 'warning' => array());\n\n    /**\n     * Override this method to handle validation of normal package names\n     * @param string\n     * @return bool\n     * @access protected\n     */\n    function _validPackageName($name)\n    {\n        return (bool) preg_match('/^' . $this->packageregex . '\\\\z/', $name);\n    }\n\n    /**\n     * @param string package name to validate\n     * @param string name of channel-specific validation package\n     * @final\n     */\n    function validPackageName($name, $validatepackagename = false)\n    {\n        if ($validatepackagename) {\n            if (strtolower($name) == strtolower($validatepackagename)) {\n                return (bool) preg_match('/^[a-zA-Z0-9_]+(?:\\.[a-zA-Z0-9_]+)*\\\\z/', $name);\n            }\n        }\n        return $this->_validPackageName($name);\n    }\n\n    /**\n     * This validates a bundle name, and bundle names must conform\n     * to the PEAR naming convention, so the method is final and static.\n     * @param string\n     * @final\n     * @static\n     */\n    function validGroupName($name)\n    {\n        return (bool) preg_match('/^' . _PEAR_COMMON_PACKAGE_NAME_PREG . '\\\\z/', $name);\n    }\n\n    /**\n     * Determine whether $state represents a valid stability level\n     * @param string\n     * @return bool\n     * @static\n     * @final\n     */\n    function validState($state)\n    {\n        return in_array($state, array('snapshot', 'devel', 'alpha', 'beta', 'stable'));\n    }\n\n    /**\n     * Get a list of valid stability levels\n     * @return array\n     * @static\n     * @final\n     */\n    function getValidStates()\n    {\n        return array('snapshot', 'devel', 'alpha', 'beta', 'stable');\n    }\n\n    /**\n     * Determine whether a version is a properly formatted version number that can be used\n     * by version_compare\n     * @param string\n     * @return bool\n     * @static\n     * @final\n     */\n    function validVersion($ver)\n    {\n        return (bool) preg_match(PEAR_COMMON_PACKAGE_VERSION_PREG, $ver);\n    }\n\n    /**\n     * @param PEAR_PackageFile_v1|PEAR_PackageFile_v2\n     */\n    function setPackageFile(&$pf)\n    {\n        $this->_packagexml = &$pf;\n    }\n\n    /**\n     * @access private\n     */\n    function _addFailure($field, $reason)\n    {\n        $this->_failures['errors'][] = array('field' => $field, 'reason' => $reason);\n    }\n\n    /**\n     * @access private\n     */\n    function _addWarning($field, $reason)\n    {\n        $this->_failures['warnings'][] = array('field' => $field, 'reason' => $reason);\n    }\n\n    function getFailures()\n    {\n        $failures = $this->_failures;\n        $this->_failures = array('warnings' => array(), 'errors' => array());\n        return $failures;\n    }\n\n    /**\n     * @param int one of the PEAR_VALIDATE_* constants\n     */\n    function validate($state = null)\n    {\n        if (!isset($this->_packagexml)) {\n            return false;\n        }\n        if ($state !== null) {\n            $this->_state = $state;\n        }\n        $this->_failures = array('warnings' => array(), 'errors' => array());\n        $this->validatePackageName();\n        $this->validateVersion();\n        $this->validateMaintainers();\n        $this->validateDate();\n        $this->validateSummary();\n        $this->validateDescription();\n        $this->validateLicense();\n        $this->validateNotes();\n        if ($this->_packagexml->getPackagexmlVersion() == '1.0') {\n            $this->validateState();\n            $this->validateFilelist();\n        } elseif ($this->_packagexml->getPackagexmlVersion() == '2.0' ||\n                  $this->_packagexml->getPackagexmlVersion() == '2.1') {\n            $this->validateTime();\n            $this->validateStability();\n            $this->validateDeps();\n            $this->validateMainFilelist();\n            $this->validateReleaseFilelist();\n            //$this->validateGlobalTasks();\n            $this->validateChangelog();\n        }\n        return !((bool) count($this->_failures['errors']));\n    }\n\n    /**\n     * @access protected\n     */\n    function validatePackageName()\n    {\n        if ($this->_state == PEAR_VALIDATE_PACKAGING ||\n              $this->_state == PEAR_VALIDATE_NORMAL) {\n            if (($this->_packagexml->getPackagexmlVersion() == '2.0' ||\n                 $this->_packagexml->getPackagexmlVersion() == '2.1') &&\n                  $this->_packagexml->getExtends()) {\n                $version = $this->_packagexml->getVersion() . '';\n                $name = $this->_packagexml->getPackage();\n                $test = array_shift($a = explode('.', $version));\n                if ($test == '0') {\n                    return true;\n                }\n                $vlen = strlen($test);\n                $majver = substr($name, strlen($name) - $vlen);\n                while ($majver && !is_numeric($majver{0})) {\n                    $majver = substr($majver, 1);\n                }\n                if ($majver != $test) {\n                    $this->_addWarning('package', \"package $name extends package \" .\n                        $this->_packagexml->getExtends() . ' and so the name should ' .\n                        'have a postfix equal to the major version like \"' .\n                        $this->_packagexml->getExtends() . $test . '\"');\n                    return true;\n                } elseif (substr($name, 0, strlen($name) - $vlen) !=\n                            $this->_packagexml->getExtends()) {\n                    $this->_addWarning('package', \"package $name extends package \" .\n                        $this->_packagexml->getExtends() . ' and so the name must ' .\n                        'be an extension like \"' . $this->_packagexml->getExtends() .\n                        $test . '\"');\n                    return true;\n                }\n            }\n        }\n        if (!$this->validPackageName($this->_packagexml->getPackage())) {\n            $this->_addFailure('name', 'package name \"' .\n                $this->_packagexml->getPackage() . '\" is invalid');\n            return false;\n        }\n    }\n\n    /**\n     * @access protected\n     */\n    function validateVersion()\n    {\n        if ($this->_state != PEAR_VALIDATE_PACKAGING) {\n            if (!$this->validVersion($this->_packagexml->getVersion())) {\n                $this->_addFailure('version',\n                    'Invalid version number \"' . $this->_packagexml->getVersion() . '\"');\n            }\n            return false;\n        }\n        $version = $this->_packagexml->getVersion();\n        $versioncomponents = explode('.', $version);\n        if (count($versioncomponents) != 3) {\n            $this->_addWarning('version',\n                'A version number should have 3 decimals (x.y.z)');\n            return true;\n        }\n        $name = $this->_packagexml->getPackage();\n        // version must be based upon state\n        switch ($this->_packagexml->getState()) {\n            case 'snapshot' :\n                return true;\n            case 'devel' :\n                if ($versioncomponents[0] . 'a' == '0a') {\n                    return true;\n                }\n                if ($versioncomponents[0] == 0) {\n                    $versioncomponents[0] = '0';\n                    $this->_addWarning('version',\n                        'version \"' . $version . '\" should be \"' .\n                        implode('.' ,$versioncomponents) . '\"');\n                } else {\n                    $this->_addWarning('version',\n                        'packages with devel stability must be < version 1.0.0');\n                }\n                return true;\n            break;\n            case 'alpha' :\n            case 'beta' :\n                // check for a package that extends a package,\n                // like Foo and Foo2\n                if ($this->_state == PEAR_VALIDATE_PACKAGING) {\n                    if (substr($versioncomponents[2], 1, 2) == 'rc') {\n                        $this->_addFailure('version', 'Release Candidate versions ' .\n                            'must have capital RC, not lower-case rc');\n                        return false;\n                    }\n                }\n                if (!$this->_packagexml->getExtends()) {\n                    if ($versioncomponents[0] == '1') {\n                        if ($versioncomponents[2]{0} == '0') {\n                            if ($versioncomponents[2] == '0') {\n                                // version 1.*.0000\n                                $this->_addWarning('version',\n                                    'version 1.' . $versioncomponents[1] .\n                                        '.0 probably should not be alpha or beta');\n                                return true;\n                            } elseif (strlen($versioncomponents[2]) > 1) {\n                                // version 1.*.0RC1 or 1.*.0beta24 etc.\n                                return true;\n                            } else {\n                                // version 1.*.0\n                                $this->_addWarning('version',\n                                    'version 1.' . $versioncomponents[1] .\n                                        '.0 probably should not be alpha or beta');\n                                return true;\n                            }\n                        } else {\n                            $this->_addWarning('version',\n                                'bugfix versions (1.3.x where x > 0) probably should ' .\n                                'not be alpha or beta');\n                            return true;\n                        }\n                    } elseif ($versioncomponents[0] != '0') {\n                        $this->_addWarning('version',\n                            'major versions greater than 1 are not allowed for packages ' .\n                            'without an <extends> tag or an identical postfix (foo2 v2.0.0)');\n                        return true;\n                    }\n                    if ($versioncomponents[0] . 'a' == '0a') {\n                        return true;\n                    }\n                    if ($versioncomponents[0] == 0) {\n                        $versioncomponents[0] = '0';\n                        $this->_addWarning('version',\n                            'version \"' . $version . '\" should be \"' .\n                            implode('.' ,$versioncomponents) . '\"');\n                    }\n                } else {\n                    $vlen = strlen($versioncomponents[0] . '');\n                    $majver = substr($name, strlen($name) - $vlen);\n                    while ($majver && !is_numeric($majver{0})) {\n                        $majver = substr($majver, 1);\n                    }\n                    if (($versioncomponents[0] != 0) && $majver != $versioncomponents[0]) {\n                        $this->_addWarning('version', 'first version number \"' .\n                            $versioncomponents[0] . '\" must match the postfix of ' .\n                            'package name \"' . $name . '\" (' .\n                            $majver . ')');\n                        return true;\n                    }\n                    if ($versioncomponents[0] == $majver) {\n                        if ($versioncomponents[2]{0} == '0') {\n                            if ($versioncomponents[2] == '0') {\n                                // version 2.*.0000\n                                $this->_addWarning('version',\n                                    \"version $majver.\" . $versioncomponents[1] .\n                                        '.0 probably should not be alpha or beta');\n                                return false;\n                            } elseif (strlen($versioncomponents[2]) > 1) {\n                                // version 2.*.0RC1 or 2.*.0beta24 etc.\n                                return true;\n                            } else {\n                                // version 2.*.0\n                                $this->_addWarning('version',\n                                    \"version $majver.\" . $versioncomponents[1] .\n                                        '.0 cannot be alpha or beta');\n                                return true;\n                            }\n                        } else {\n                            $this->_addWarning('version',\n                                \"bugfix versions ($majver.x.y where y > 0) should \" .\n                                'not be alpha or beta');\n                            return true;\n                        }\n                    } elseif ($versioncomponents[0] != '0') {\n                        $this->_addWarning('version',\n                            \"only versions 0.x.y and $majver.x.y are allowed for alpha/beta releases\");\n                        return true;\n                    }\n                    if ($versioncomponents[0] . 'a' == '0a') {\n                        return true;\n                    }\n                    if ($versioncomponents[0] == 0) {\n                        $versioncomponents[0] = '0';\n                        $this->_addWarning('version',\n                            'version \"' . $version . '\" should be \"' .\n                            implode('.' ,$versioncomponents) . '\"');\n                    }\n                }\n                return true;\n            break;\n            case 'stable' :\n                if ($versioncomponents[0] == '0') {\n                    $this->_addWarning('version', 'versions less than 1.0.0 cannot ' .\n                    'be stable');\n                    return true;\n                }\n                if (!is_numeric($versioncomponents[2])) {\n                    if (preg_match('/\\d+(rc|a|alpha|b|beta)\\d*/i',\n                          $versioncomponents[2])) {\n                        $this->_addWarning('version', 'version \"' . $version . '\" or any ' .\n                            'RC/beta/alpha version cannot be stable');\n                        return true;\n                    }\n                }\n                // check for a package that extends a package,\n                // like Foo and Foo2\n                if ($this->_packagexml->getExtends()) {\n                    $vlen = strlen($versioncomponents[0] . '');\n                    $majver = substr($name, strlen($name) - $vlen);\n                    while ($majver && !is_numeric($majver{0})) {\n                        $majver = substr($majver, 1);\n                    }\n                    if (($versioncomponents[0] != 0) && $majver != $versioncomponents[0]) {\n                        $this->_addWarning('version', 'first version number \"' .\n                            $versioncomponents[0] . '\" must match the postfix of ' .\n                            'package name \"' . $name . '\" (' .\n                            $majver . ')');\n                        return true;\n                    }\n                } elseif ($versioncomponents[0] > 1) {\n                    $this->_addWarning('version', 'major version x in x.y.z may not be greater than ' .\n                        '1 for any package that does not have an <extends> tag');\n                }\n                return true;\n            break;\n            default :\n                return false;\n            break;\n        }\n    }\n\n    /**\n     * @access protected\n     */\n    function validateMaintainers()\n    {\n        // maintainers can only be truly validated server-side for most channels\n        // but allow this customization for those who wish it\n        return true;\n    }\n\n    /**\n     * @access protected\n     */\n    function validateDate()\n    {\n        if ($this->_state == PEAR_VALIDATE_NORMAL ||\n              $this->_state == PEAR_VALIDATE_PACKAGING) {\n\n            if (!preg_match('/(\\d\\d\\d\\d)\\-(\\d\\d)\\-(\\d\\d)/',\n                  $this->_packagexml->getDate(), $res) ||\n                  count($res) < 4\n                  || !checkdate($res[2], $res[3], $res[1])\n                ) {\n                $this->_addFailure('date', 'invalid release date \"' .\n                    $this->_packagexml->getDate() . '\"');\n                return false;\n            }\n\n            if ($this->_state == PEAR_VALIDATE_PACKAGING &&\n                  $this->_packagexml->getDate() != date('Y-m-d')) {\n                $this->_addWarning('date', 'Release Date \"' .\n                    $this->_packagexml->getDate() . '\" is not today');\n            }\n        }\n        return true;\n    }\n\n    /**\n     * @access protected\n     */\n    function validateTime()\n    {\n        if (!$this->_packagexml->getTime()) {\n            // default of no time value set\n            return true;\n        }\n\n        // packager automatically sets time, so only validate if pear validate is called\n        if ($this->_state = PEAR_VALIDATE_NORMAL) {\n            if (!preg_match('/\\d\\d:\\d\\d:\\d\\d/',\n                  $this->_packagexml->getTime())) {\n                $this->_addFailure('time', 'invalid release time \"' .\n                    $this->_packagexml->getTime() . '\"');\n                return false;\n            }\n\n            $result = preg_match('|\\d{2}\\:\\d{2}\\:\\d{2}|', $this->_packagexml->getTime(), $matches);\n            if ($result === false || empty($matches)) {\n                $this->_addFailure('time', 'invalid release time \"' .\n                    $this->_packagexml->getTime() . '\"');\n                return false;\n            }\n        }\n\n        return true;\n    }\n\n    /**\n     * @access protected\n     */\n    function validateState()\n    {\n        // this is the closest to \"final\" php4 can get\n        if (!PEAR_Validate::validState($this->_packagexml->getState())) {\n            if (strtolower($this->_packagexml->getState() == 'rc')) {\n                $this->_addFailure('state', 'RC is not a state, it is a version ' .\n                    'postfix, use ' . $this->_packagexml->getVersion() . 'RC1, state beta');\n            }\n            $this->_addFailure('state', 'invalid release state \"' .\n                $this->_packagexml->getState() . '\", must be one of: ' .\n                implode(', ', PEAR_Validate::getValidStates()));\n            return false;\n        }\n        return true;\n    }\n\n    /**\n     * @access protected\n     */\n    function validateStability()\n    {\n        $ret = true;\n        $packagestability = $this->_packagexml->getState();\n        $apistability = $this->_packagexml->getState('api');\n        if (!PEAR_Validate::validState($packagestability)) {\n            $this->_addFailure('state', 'invalid release stability \"' .\n                $this->_packagexml->getState() . '\", must be one of: ' .\n                implode(', ', PEAR_Validate::getValidStates()));\n            $ret = false;\n        }\n        $apistates = PEAR_Validate::getValidStates();\n        array_shift($apistates); // snapshot is not allowed\n        if (!in_array($apistability, $apistates)) {\n            $this->_addFailure('state', 'invalid API stability \"' .\n                $this->_packagexml->getState('api') . '\", must be one of: ' .\n                implode(', ', $apistates));\n            $ret = false;\n        }\n        return $ret;\n    }\n\n    /**\n     * @access protected\n     */\n    function validateSummary()\n    {\n        return true;\n    }\n\n    /**\n     * @access protected\n     */\n    function validateDescription()\n    {\n        return true;\n    }\n\n    /**\n     * @access protected\n     */\n    function validateLicense()\n    {\n        return true;\n    }\n\n    /**\n     * @access protected\n     */\n    function validateNotes()\n    {\n        return true;\n    }\n\n    /**\n     * for package.xml 2.0 only - channels can't use package.xml 1.0\n     * @access protected\n     */\n    function validateDependencies()\n    {\n        return true;\n    }\n\n    /**\n     * for package.xml 1.0 only\n     * @access private\n     */\n    function _validateFilelist()\n    {\n        return true; // placeholder for now\n    }\n\n    /**\n     * for package.xml 2.0 only\n     * @access protected\n     */\n    function validateMainFilelist()\n    {\n        return true; // placeholder for now\n    }\n\n    /**\n     * for package.xml 2.0 only\n     * @access protected\n     */\n    function validateReleaseFilelist()\n    {\n        return true; // placeholder for now\n    }\n\n    /**\n     * @access protected\n     */\n    function validateChangelog()\n    {\n        return true;\n    }\n\n    /**\n     * @access protected\n     */\n    function validateFilelist()\n    {\n        return true;\n    }\n\n    /**\n     * @access protected\n     */\n    function validateDeps()\n    {\n        return true;\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR/Validator/PECL.php",
    "content": "<?php\n/**\n * Channel Validator for the pecl.php.net channel\n *\n * PHP 4 and PHP 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2006 The PHP Group\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: PECL.php 276383 2009-02-24 23:39:37Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a5\n */\n/**\n * This is the parent class for all validators\n */\nrequire_once 'PEAR/Validate.php';\n/**\n * Channel Validator for the pecl.php.net channel\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @since      Class available since Release 1.4.0a5\n */\nclass PEAR_Validator_PECL extends PEAR_Validate\n{\n    function validateVersion()\n    {\n        if ($this->_state == PEAR_VALIDATE_PACKAGING) {\n            $version = $this->_packagexml->getVersion();\n            $versioncomponents = explode('.', $version);\n            $last = array_pop($versioncomponents);\n            if (substr($last, 1, 2) == 'rc') {\n                $this->_addFailure('version', 'Release Candidate versions must have ' .\n                'upper-case RC, not lower-case rc');\n                return false;\n            }\n        }\n        return true;\n    }\n\n    function validatePackageName()\n    {\n        $ret = parent::validatePackageName();\n        if ($this->_packagexml->getPackageType() == 'extsrc' ||\n              $this->_packagexml->getPackageType() == 'zendextsrc') {\n            if (strtolower($this->_packagexml->getPackage()) !=\n                  strtolower($this->_packagexml->getProvidesExtension())) {\n                $this->_addWarning('providesextension', 'package name \"' .\n                    $this->_packagexml->getPackage() . '\" is different from extension name \"' .\n                    $this->_packagexml->getProvidesExtension() . '\"');\n            }\n        }\n        return $ret;\n    }\n}\n?>"
  },
  {
    "path": "newscoop/include/PEAR/XMLParser.php",
    "content": "<?php\n/**\n * PEAR_XMLParser\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Greg Beaver <cellog@php.net>\n * @author     Stephan Schmidt (original XML_Unserializer code)\n * @copyright  1997-2009 The Authors\n * @license   http://opensource.org/licenses/bsd-license New BSD License\n * @version    CVS: $Id: XMLParser.php 282970 2009-06-28 23:10:07Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 1.4.0a1\n */\n\n/**\n * Parser for any xml file\n * @category  pear\n * @package   PEAR\n * @author    Greg Beaver <cellog@php.net>\n * @author    Stephan Schmidt (original XML_Unserializer code)\n * @copyright 1997-2009 The Authors\n * @license   http://opensource.org/licenses/bsd-license New BSD License\n * @version   Release: 1.9.1\n * @link      http://pear.php.net/package/PEAR\n * @since     Class available since Release 1.4.0a1\n */\nclass PEAR_XMLParser\n{\n    /**\n     * unserilialized data\n     * @var string $_serializedData\n     */\n    var $_unserializedData = null;\n\n    /**\n     * name of the root tag\n     * @var string $_root\n     */\n    var $_root = null;\n\n    /**\n     * stack for all data that is found\n     * @var array    $_dataStack\n     */\n    var $_dataStack = array();\n\n    /**\n     * stack for all values that are generated\n     * @var array    $_valStack\n     */\n    var $_valStack = array();\n\n    /**\n     * current tag depth\n     * @var int    $_depth\n     */\n    var $_depth = 0;\n\n    /**\n     * The XML encoding to use\n     * @var string $encoding\n     */\n    var $encoding = 'ISO-8859-1';\n\n    /**\n     * @return array\n     */\n    function getData()\n    {\n        return $this->_unserializedData;\n    }\n\n    /**\n     * @param string xml content\n     * @return true|PEAR_Error\n     */\n    function parse($data)\n    {\n        if (!extension_loaded('xml')) {\n            include_once 'PEAR.php';\n            return PEAR::raiseError(\"XML Extension not found\", 1);\n        }\n        $this->_dataStack =  $this->_valStack = array();\n        $this->_depth = 0;\n\n        if (\n            strpos($data, 'encoding=\"UTF-8\"')\n            || strpos($data, 'encoding=\"utf-8\"')\n            || strpos($data, \"encoding='UTF-8'\")\n            || strpos($data, \"encoding='utf-8'\")\n        ) {\n            $this->encoding = 'UTF-8';\n        }\n\n        if (version_compare(phpversion(), '5.0.0', 'lt') && $this->encoding == 'UTF-8') {\n            $data = utf8_decode($data);\n            $this->encoding = 'ISO-8859-1';\n        }\n\n        $xp = xml_parser_create($this->encoding);\n        xml_parser_set_option($xp, XML_OPTION_CASE_FOLDING, 0);\n        xml_set_object($xp, $this);\n        xml_set_element_handler($xp, 'startHandler', 'endHandler');\n        xml_set_character_data_handler($xp, 'cdataHandler');\n        if (!xml_parse($xp, $data)) {\n            $msg = xml_error_string(xml_get_error_code($xp));\n            $line = xml_get_current_line_number($xp);\n            xml_parser_free($xp);\n            include_once 'PEAR.php';\n            return PEAR::raiseError(\"XML Error: '$msg' on line '$line'\", 2);\n        }\n        xml_parser_free($xp);\n        return true;\n    }\n\n    /**\n     * Start element handler for XML parser\n     *\n     * @access private\n     * @param  object $parser  XML parser object\n     * @param  string $element XML element\n     * @param  array  $attribs attributes of XML tag\n     * @return void\n     */\n    function startHandler($parser, $element, $attribs)\n    {\n        $this->_depth++;\n        $this->_dataStack[$this->_depth] = null;\n\n        $val = array(\n            'name'         => $element,\n            'value'        => null,\n            'type'         => 'string',\n            'childrenKeys' => array(),\n            'aggregKeys'   => array()\n       );\n\n        if (count($attribs) > 0) {\n            $val['children'] = array();\n            $val['type'] = 'array';\n            $val['children']['attribs'] = $attribs;\n        }\n\n        array_push($this->_valStack, $val);\n    }\n\n    /**\n     * post-process data\n     *\n     * @param string $data\n     * @param string $element element name\n     */\n    function postProcess($data, $element)\n    {\n        return trim($data);\n    }\n\n    /**\n     * End element handler for XML parser\n     *\n     * @access private\n     * @param  object XML parser object\n     * @param  string\n     * @return void\n     */\n    function endHandler($parser, $element)\n    {\n        $value = array_pop($this->_valStack);\n        $data  = $this->postProcess($this->_dataStack[$this->_depth], $element);\n\n        // adjust type of the value\n        switch (strtolower($value['type'])) {\n            // unserialize an array\n            case 'array':\n                if ($data !== '') {\n                    $value['children']['_content'] = $data;\n                }\n\n                $value['value'] = isset($value['children']) ? $value['children'] : array();\n                break;\n\n            /*\n             * unserialize a null value\n             */\n            case 'null':\n                $data = null;\n                break;\n\n            /*\n             * unserialize any scalar value\n             */\n            default:\n                settype($data, $value['type']);\n                $value['value'] = $data;\n                break;\n        }\n\n        $parent = array_pop($this->_valStack);\n        if ($parent === null) {\n            $this->_unserializedData = &$value['value'];\n            $this->_root = &$value['name'];\n            return true;\n        }\n\n        // parent has to be an array\n        if (!isset($parent['children']) || !is_array($parent['children'])) {\n            $parent['children'] = array();\n            if ($parent['type'] != 'array') {\n                $parent['type'] = 'array';\n            }\n        }\n\n        if (!empty($value['name'])) {\n            // there already has been a tag with this name\n            if (in_array($value['name'], $parent['childrenKeys'])) {\n                // no aggregate has been created for this tag\n                if (!in_array($value['name'], $parent['aggregKeys'])) {\n                    if (isset($parent['children'][$value['name']])) {\n                        $parent['children'][$value['name']] = array($parent['children'][$value['name']]);\n                    } else {\n                        $parent['children'][$value['name']] = array();\n                    }\n                    array_push($parent['aggregKeys'], $value['name']);\n                }\n                array_push($parent['children'][$value['name']], $value['value']);\n            } else {\n                $parent['children'][$value['name']] = &$value['value'];\n                array_push($parent['childrenKeys'], $value['name']);\n            }\n        } else {\n            array_push($parent['children'],$value['value']);\n        }\n        array_push($this->_valStack, $parent);\n\n        $this->_depth--;\n    }\n\n    /**\n     * Handler for character data\n     *\n     * @access private\n     * @param  object XML parser object\n     * @param  string CDATA\n     * @return void\n     */\n    function cdataHandler($parser, $cdata)\n    {\n        $this->_dataStack[$this->_depth] .= $cdata;\n    }\n}"
  },
  {
    "path": "newscoop/include/PEAR.php",
    "content": "<?php\n/**\n * PEAR, the PHP Extension and Application Repository\n *\n * PEAR class and PEAR_Error class\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Sterling Hughes <sterling@php.net>\n * @author     Stig Bakken <ssb@php.net>\n * @author     Tomas V.V.Cox <cox@idecnet.com>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2010 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: PEAR.php 299159 2010-05-08 22:32:52Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 0.1\n */\n\n/**#@+\n * ERROR constants\n */\ndefine('PEAR_ERROR_RETURN',     1);\ndefine('PEAR_ERROR_PRINT',      2);\ndefine('PEAR_ERROR_TRIGGER',    4);\ndefine('PEAR_ERROR_DIE',        8);\ndefine('PEAR_ERROR_CALLBACK',  16);\n/**\n * WARNING: obsolete\n * @deprecated\n */\ndefine('PEAR_ERROR_EXCEPTION', 32);\n/**#@-*/\ndefine('PEAR_ZE2', (function_exists('version_compare') &&\n                    version_compare(zend_version(), \"2-dev\", \"ge\")));\n\nif (substr(PHP_OS, 0, 3) == 'WIN') {\n    define('OS_WINDOWS', true);\n    define('OS_UNIX',    false);\n    define('PEAR_OS',    'Windows');\n} else {\n    define('OS_WINDOWS', false);\n    define('OS_UNIX',    true);\n    define('PEAR_OS',    'Unix'); // blatant assumption\n}\n\n$GLOBALS['_PEAR_default_error_mode']     = PEAR_ERROR_RETURN;\n$GLOBALS['_PEAR_default_error_options']  = E_USER_NOTICE;\n$GLOBALS['_PEAR_destructor_object_list'] = array();\n$GLOBALS['_PEAR_shutdown_funcs']         = array();\n$GLOBALS['_PEAR_error_handler_stack']    = array();\n\n@ini_set('track_errors', true);\n\n/**\n * Base class for other PEAR classes.  Provides rudimentary\n * emulation of destructors.\n *\n * If you want a destructor in your class, inherit PEAR and make a\n * destructor method called _yourclassname (same name as the\n * constructor, but with a \"_\" prefix).  Also, in your constructor you\n * have to call the PEAR constructor: $this->PEAR();.\n * The destructor method will be called without parameters.  Note that\n * at in some SAPI implementations (such as Apache), any output during\n * the request shutdown (in which destructors are called) seems to be\n * discarded.  If you need to get any debug information from your\n * destructor, use error_log(), syslog() or something similar.\n *\n * IMPORTANT! To use the emulated destructors you need to create the\n * objects by reference: $obj =& new PEAR_child;\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Tomas V.V. Cox <cox@idecnet.com>\n * @author     Greg Beaver <cellog@php.net>\n * @copyright  1997-2006 The PHP Group\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/package/PEAR\n * @see        PEAR_Error\n * @since      Class available since PHP 4.0.2\n * @link        http://pear.php.net/manual/en/core.pear.php#core.pear.pear\n */\nclass PEAR\n{\n    /**\n     * Whether to enable internal debug messages.\n     *\n     * @var     bool\n     * @access  private\n     */\n    var $_debug = false;\n\n    /**\n     * Default error mode for this object.\n     *\n     * @var     int\n     * @access  private\n     */\n    var $_default_error_mode = null;\n\n    /**\n     * Default error options used for this object when error mode\n     * is PEAR_ERROR_TRIGGER.\n     *\n     * @var     int\n     * @access  private\n     */\n    var $_default_error_options = null;\n\n    /**\n     * Default error handler (callback) for this object, if error mode is\n     * PEAR_ERROR_CALLBACK.\n     *\n     * @var     string\n     * @access  private\n     */\n    var $_default_error_handler = '';\n\n    /**\n     * Which class to use for error objects.\n     *\n     * @var     string\n     * @access  private\n     */\n    var $_error_class = 'PEAR_Error';\n\n    /**\n     * An array of expected errors.\n     *\n     * @var     array\n     * @access  private\n     */\n    var $_expected_errors = array();\n\n    /**\n     * Constructor.  Registers this object in\n     * $_PEAR_destructor_object_list for destructor emulation if a\n     * destructor object exists.\n     *\n     * @param string $error_class  (optional) which class to use for\n     *        error objects, defaults to PEAR_Error.\n     * @access public\n     * @return void\n     */\n    function PEAR($error_class = null)\n    {\n        $classname = strtolower(get_class($this));\n        if ($this->_debug) {\n            print \"PEAR constructor called, class=$classname\\n\";\n        }\n\n        if ($error_class !== null) {\n            $this->_error_class = $error_class;\n        }\n\n        while ($classname && strcasecmp($classname, \"pear\")) {\n            $destructor = \"_$classname\";\n            if (method_exists($this, $destructor)) {\n                global $_PEAR_destructor_object_list;\n                $_PEAR_destructor_object_list[] = &$this;\n                if (!isset($GLOBALS['_PEAR_SHUTDOWN_REGISTERED'])) {\n                    register_shutdown_function(\"_PEAR_call_destructors\");\n                    $GLOBALS['_PEAR_SHUTDOWN_REGISTERED'] = true;\n                }\n                break;\n            } else {\n                $classname = get_parent_class($classname);\n            }\n        }\n    }\n\n    /**\n     * Destructor (the emulated type of...).  Does nothing right now,\n     * but is included for forward compatibility, so subclass\n     * destructors should always call it.\n     *\n     * See the note in the class desciption about output from\n     * destructors.\n     *\n     * @access public\n     * @return void\n     */\n    function _PEAR() {\n        if ($this->_debug) {\n            printf(\"PEAR destructor called, class=%s\\n\", strtolower(get_class($this)));\n        }\n    }\n\n    /**\n    * If you have a class that's mostly/entirely static, and you need static\n    * properties, you can use this method to simulate them. Eg. in your method(s)\n    * do this: $myVar = &PEAR::getStaticProperty('myclass', 'myVar');\n    * You MUST use a reference, or they will not persist!\n    *\n    * @access public\n    * @param  string $class  The calling classname, to prevent clashes\n    * @param  string $var    The variable to retrieve.\n    * @return mixed   A reference to the variable. If not set it will be\n    *                 auto initialised to NULL.\n    */\n    function &getStaticProperty($class, $var)\n    {\n        static $properties;\n        if (!isset($properties[$class])) {\n            $properties[$class] = array();\n        }\n\n        if (!array_key_exists($var, $properties[$class])) {\n            $properties[$class][$var] = null;\n        }\n\n        return $properties[$class][$var];\n    }\n\n    /**\n    * Use this function to register a shutdown method for static\n    * classes.\n    *\n    * @access public\n    * @param  mixed $func  The function name (or array of class/method) to call\n    * @param  mixed $args  The arguments to pass to the function\n    * @return void\n    */\n    function registerShutdownFunc($func, $args = array())\n    {\n        // if we are called statically, there is a potential\n        // that no shutdown func is registered.  Bug #6445\n        if (!isset($GLOBALS['_PEAR_SHUTDOWN_REGISTERED'])) {\n            register_shutdown_function(\"_PEAR_call_destructors\");\n            $GLOBALS['_PEAR_SHUTDOWN_REGISTERED'] = true;\n        }\n        $GLOBALS['_PEAR_shutdown_funcs'][] = array($func, $args);\n    }\n\n    /**\n     * Tell whether a value is a PEAR error.\n     *\n     * @param   mixed $data   the value to test\n     * @param   int   $code   if $data is an error object, return true\n     *                        only if $code is a string and\n     *                        $obj->getMessage() == $code or\n     *                        $code is an integer and $obj->getCode() == $code\n     * @access  public\n     * @return  bool    true if parameter is an error\n     */\n    function isError($data, $code = null)\n    {\n        if (!is_a($data, 'PEAR_Error')) {\n            return false;\n        }\n\n        if (is_null($code)) {\n            return true;\n        } elseif (is_string($code)) {\n            return $data->getMessage() == $code;\n        }\n\n        return $data->getCode() == $code;\n    }\n\n    /**\n     * Sets how errors generated by this object should be handled.\n     * Can be invoked both in objects and statically.  If called\n     * statically, setErrorHandling sets the default behaviour for all\n     * PEAR objects.  If called in an object, setErrorHandling sets\n     * the default behaviour for that object.\n     *\n     * @param int $mode\n     *        One of PEAR_ERROR_RETURN, PEAR_ERROR_PRINT,\n     *        PEAR_ERROR_TRIGGER, PEAR_ERROR_DIE,\n     *        PEAR_ERROR_CALLBACK or PEAR_ERROR_EXCEPTION.\n     *\n     * @param mixed $options\n     *        When $mode is PEAR_ERROR_TRIGGER, this is the error level (one\n     *        of E_USER_NOTICE, E_USER_WARNING or E_USER_ERROR).\n     *\n     *        When $mode is PEAR_ERROR_CALLBACK, this parameter is expected\n     *        to be the callback function or method.  A callback\n     *        function is a string with the name of the function, a\n     *        callback method is an array of two elements: the element\n     *        at index 0 is the object, and the element at index 1 is\n     *        the name of the method to call in the object.\n     *\n     *        When $mode is PEAR_ERROR_PRINT or PEAR_ERROR_DIE, this is\n     *        a printf format string used when printing the error\n     *        message.\n     *\n     * @access public\n     * @return void\n     * @see PEAR_ERROR_RETURN\n     * @see PEAR_ERROR_PRINT\n     * @see PEAR_ERROR_TRIGGER\n     * @see PEAR_ERROR_DIE\n     * @see PEAR_ERROR_CALLBACK\n     * @see PEAR_ERROR_EXCEPTION\n     *\n     * @since PHP 4.0.5\n     */\n    function setErrorHandling($mode = null, $options = null)\n    {\n        if (isset($this) && is_a($this, 'PEAR')) {\n            $setmode     = &$this->_default_error_mode;\n            $setoptions  = &$this->_default_error_options;\n        } else {\n            $setmode     = &$GLOBALS['_PEAR_default_error_mode'];\n            $setoptions  = &$GLOBALS['_PEAR_default_error_options'];\n        }\n\n        switch ($mode) {\n            case PEAR_ERROR_EXCEPTION:\n            case PEAR_ERROR_RETURN:\n            case PEAR_ERROR_PRINT:\n            case PEAR_ERROR_TRIGGER:\n            case PEAR_ERROR_DIE:\n            case null:\n                $setmode = $mode;\n                $setoptions = $options;\n                break;\n\n            case PEAR_ERROR_CALLBACK:\n                $setmode = $mode;\n                // class/object method callback\n                if (is_callable($options)) {\n                    $setoptions = $options;\n                } else {\n                    trigger_error(\"invalid error callback\", E_USER_WARNING);\n                }\n                break;\n\n            default:\n                trigger_error(\"invalid error mode\", E_USER_WARNING);\n                break;\n        }\n    }\n\n    /**\n     * This method is used to tell which errors you expect to get.\n     * Expected errors are always returned with error mode\n     * PEAR_ERROR_RETURN.  Expected error codes are stored in a stack,\n     * and this method pushes a new element onto it.  The list of\n     * expected errors are in effect until they are popped off the\n     * stack with the popExpect() method.\n     *\n     * Note that this method can not be called statically\n     *\n     * @param mixed $code a single error code or an array of error codes to expect\n     *\n     * @return int     the new depth of the \"expected errors\" stack\n     * @access public\n     */\n    function expectError($code = '*')\n    {\n        if (is_array($code)) {\n            array_push($this->_expected_errors, $code);\n        } else {\n            array_push($this->_expected_errors, array($code));\n        }\n        return count($this->_expected_errors);\n    }\n\n    /**\n     * This method pops one element off the expected error codes\n     * stack.\n     *\n     * @return array   the list of error codes that were popped\n     */\n    function popExpect()\n    {\n        return array_pop($this->_expected_errors);\n    }\n\n    /**\n     * This method checks unsets an error code if available\n     *\n     * @param mixed error code\n     * @return bool true if the error code was unset, false otherwise\n     * @access private\n     * @since PHP 4.3.0\n     */\n    function _checkDelExpect($error_code)\n    {\n        $deleted = false;\n        foreach ($this->_expected_errors as $key => $error_array) {\n            if (in_array($error_code, $error_array)) {\n                unset($this->_expected_errors[$key][array_search($error_code, $error_array)]);\n                $deleted = true;\n            }\n\n            // clean up empty arrays\n            if (0 == count($this->_expected_errors[$key])) {\n                unset($this->_expected_errors[$key]);\n            }\n        }\n\n        return $deleted;\n    }\n\n    /**\n     * This method deletes all occurences of the specified element from\n     * the expected error codes stack.\n     *\n     * @param  mixed $error_code error code that should be deleted\n     * @return mixed list of error codes that were deleted or error\n     * @access public\n     * @since PHP 4.3.0\n     */\n    function delExpect($error_code)\n    {\n        $deleted = false;\n        if ((is_array($error_code) && (0 != count($error_code)))) {\n            // $error_code is a non-empty array here; we walk through it trying\n            // to unset all values\n            foreach ($error_code as $key => $error) {\n                $deleted =  $this->_checkDelExpect($error) ? true : false;\n            }\n\n            return $deleted ? true : PEAR::raiseError(\"The expected error you submitted does not exist\"); // IMPROVE ME\n        } elseif (!empty($error_code)) {\n            // $error_code comes alone, trying to unset it\n            if ($this->_checkDelExpect($error_code)) {\n                return true;\n            }\n\n            return PEAR::raiseError(\"The expected error you submitted does not exist\"); // IMPROVE ME\n        }\n\n        // $error_code is empty\n        return PEAR::raiseError(\"The expected error you submitted is empty\"); // IMPROVE ME\n    }\n\n    /**\n     * This method is a wrapper that returns an instance of the\n     * configured error class with this object's default error\n     * handling applied.  If the $mode and $options parameters are not\n     * specified, the object's defaults are used.\n     *\n     * @param mixed $message a text error message or a PEAR error object\n     *\n     * @param int $code      a numeric error code (it is up to your class\n     *                  to define these if you want to use codes)\n     *\n     * @param int $mode      One of PEAR_ERROR_RETURN, PEAR_ERROR_PRINT,\n     *                  PEAR_ERROR_TRIGGER, PEAR_ERROR_DIE,\n     *                  PEAR_ERROR_CALLBACK, PEAR_ERROR_EXCEPTION.\n     *\n     * @param mixed $options If $mode is PEAR_ERROR_TRIGGER, this parameter\n     *                  specifies the PHP-internal error level (one of\n     *                  E_USER_NOTICE, E_USER_WARNING or E_USER_ERROR).\n     *                  If $mode is PEAR_ERROR_CALLBACK, this\n     *                  parameter specifies the callback function or\n     *                  method.  In other error modes this parameter\n     *                  is ignored.\n     *\n     * @param string $userinfo If you need to pass along for example debug\n     *                  information, this parameter is meant for that.\n     *\n     * @param string $error_class The returned error object will be\n     *                  instantiated from this class, if specified.\n     *\n     * @param bool $skipmsg If true, raiseError will only pass error codes,\n     *                  the error message parameter will be dropped.\n     *\n     * @access public\n     * @return object   a PEAR error object\n     * @see PEAR::setErrorHandling\n     * @since PHP 4.0.5\n     */\n    function &raiseError($message = null,\n                         $code = null,\n                         $mode = null,\n                         $options = null,\n                         $userinfo = null,\n                         $error_class = null,\n                         $skipmsg = false)\n    {\n        // The error is yet a PEAR error object\n        if (is_object($message)) {\n            $code        = $message->getCode();\n            $userinfo    = $message->getUserInfo();\n            $error_class = $message->getType();\n            $message->error_message_prefix = '';\n            $message     = $message->getMessage();\n        }\n\n        if (\n            isset($this) &&\n            isset($this->_expected_errors) &&\n            count($this->_expected_errors) > 0 &&\n            count($exp = end($this->_expected_errors))\n        ) {\n            if ($exp[0] == \"*\" ||\n                (is_int(reset($exp)) && in_array($code, $exp)) ||\n                (is_string(reset($exp)) && in_array($message, $exp))\n            ) {\n                $mode = PEAR_ERROR_RETURN;\n            }\n        }\n\n        // No mode given, try global ones\n        if ($mode === null) {\n            // Class error handler\n            if (isset($this) && isset($this->_default_error_mode)) {\n                $mode    = $this->_default_error_mode;\n                $options = $this->_default_error_options;\n            // Global error handler\n            } elseif (isset($GLOBALS['_PEAR_default_error_mode'])) {\n                $mode    = $GLOBALS['_PEAR_default_error_mode'];\n                $options = $GLOBALS['_PEAR_default_error_options'];\n            }\n        }\n\n        if ($error_class !== null) {\n            $ec = $error_class;\n        } elseif (isset($this) && isset($this->_error_class)) {\n            $ec = $this->_error_class;\n        } else {\n            $ec = 'PEAR_Error';\n        }\n\n        if (intval(PHP_VERSION) < 5) {\n            // little non-eval hack to fix bug #12147\n            include 'PEAR/FixPHP5PEARWarnings.php';\n            return $a;\n        }\n\n        if ($skipmsg) {\n            $a = new $ec($code, $mode, $options, $userinfo);\n        } else {\n            $a = new $ec($message, $code, $mode, $options, $userinfo);\n        }\n\n        return $a;\n    }\n\n    /**\n     * Simpler form of raiseError with fewer options.  In most cases\n     * message, code and userinfo are enough.\n     *\n     * @param mixed $message a text error message or a PEAR error object\n     *\n     * @param int $code      a numeric error code (it is up to your class\n     *                  to define these if you want to use codes)\n     *\n     * @param string $userinfo If you need to pass along for example debug\n     *                  information, this parameter is meant for that.\n     *\n     * @access public\n     * @return object   a PEAR error object\n     * @see PEAR::raiseError\n     */\n    function &throwError($message = null, $code = null, $userinfo = null)\n    {\n        if (isset($this) && is_a($this, 'PEAR')) {\n            $a = &$this->raiseError($message, $code, null, null, $userinfo);\n            return $a;\n        }\n\n        $a = &PEAR::raiseError($message, $code, null, null, $userinfo);\n        return $a;\n    }\n\n    function staticPushErrorHandling($mode, $options = null)\n    {\n        $stack       = &$GLOBALS['_PEAR_error_handler_stack'];\n        $def_mode    = &$GLOBALS['_PEAR_default_error_mode'];\n        $def_options = &$GLOBALS['_PEAR_default_error_options'];\n        $stack[] = array($def_mode, $def_options);\n        switch ($mode) {\n            case PEAR_ERROR_EXCEPTION:\n            case PEAR_ERROR_RETURN:\n            case PEAR_ERROR_PRINT:\n            case PEAR_ERROR_TRIGGER:\n            case PEAR_ERROR_DIE:\n            case null:\n                $def_mode = $mode;\n                $def_options = $options;\n                break;\n\n            case PEAR_ERROR_CALLBACK:\n                $def_mode = $mode;\n                // class/object method callback\n                if (is_callable($options)) {\n                    $def_options = $options;\n                } else {\n                    trigger_error(\"invalid error callback\", E_USER_WARNING);\n                }\n                break;\n\n            default:\n                trigger_error(\"invalid error mode\", E_USER_WARNING);\n                break;\n        }\n        $stack[] = array($mode, $options);\n        return true;\n    }\n\n    function staticPopErrorHandling()\n    {\n        $stack = &$GLOBALS['_PEAR_error_handler_stack'];\n        $setmode     = &$GLOBALS['_PEAR_default_error_mode'];\n        $setoptions  = &$GLOBALS['_PEAR_default_error_options'];\n        array_pop($stack);\n        list($mode, $options) = $stack[sizeof($stack) - 1];\n        array_pop($stack);\n        switch ($mode) {\n            case PEAR_ERROR_EXCEPTION:\n            case PEAR_ERROR_RETURN:\n            case PEAR_ERROR_PRINT:\n            case PEAR_ERROR_TRIGGER:\n            case PEAR_ERROR_DIE:\n            case null:\n                $setmode = $mode;\n                $setoptions = $options;\n                break;\n\n            case PEAR_ERROR_CALLBACK:\n                $setmode = $mode;\n                // class/object method callback\n                if (is_callable($options)) {\n                    $setoptions = $options;\n                } else {\n                    trigger_error(\"invalid error callback\", E_USER_WARNING);\n                }\n                break;\n\n            default:\n                trigger_error(\"invalid error mode\", E_USER_WARNING);\n                break;\n        }\n        return true;\n    }\n\n    /**\n     * Push a new error handler on top of the error handler options stack. With this\n     * you can easily override the actual error handler for some code and restore\n     * it later with popErrorHandling.\n     *\n     * @param mixed $mode (same as setErrorHandling)\n     * @param mixed $options (same as setErrorHandling)\n     *\n     * @return bool Always true\n     *\n     * @see PEAR::setErrorHandling\n     */\n    function pushErrorHandling($mode, $options = null)\n    {\n        $stack = &$GLOBALS['_PEAR_error_handler_stack'];\n        if (isset($this) && is_a($this, 'PEAR')) {\n            $def_mode    = &$this->_default_error_mode;\n            $def_options = &$this->_default_error_options;\n        } else {\n            $def_mode    = &$GLOBALS['_PEAR_default_error_mode'];\n            $def_options = &$GLOBALS['_PEAR_default_error_options'];\n        }\n        $stack[] = array($def_mode, $def_options);\n\n        if (isset($this) && is_a($this, 'PEAR')) {\n            $this->setErrorHandling($mode, $options);\n        } else {\n            PEAR::setErrorHandling($mode, $options);\n        }\n        $stack[] = array($mode, $options);\n        return true;\n    }\n\n    /**\n    * Pop the last error handler used\n    *\n    * @return bool Always true\n    *\n    * @see PEAR::pushErrorHandling\n    */\n    function popErrorHandling()\n    {\n        $stack = &$GLOBALS['_PEAR_error_handler_stack'];\n        array_pop($stack);\n        list($mode, $options) = $stack[sizeof($stack) - 1];\n        array_pop($stack);\n        if (isset($this) && is_a($this, 'PEAR')) {\n            $this->setErrorHandling($mode, $options);\n        } else {\n            PEAR::setErrorHandling($mode, $options);\n        }\n        return true;\n    }\n\n    /**\n    * OS independant PHP extension load. Remember to take care\n    * on the correct extension name for case sensitive OSes.\n    *\n    * @param string $ext The extension name\n    * @return bool Success or not on the dl() call\n    */\n    function loadExtension($ext)\n    {\n        if (extension_loaded($ext)) {\n            return true;\n        }\n\n        // if either returns true dl() will produce a FATAL error, stop that\n        if (\n            function_exists('dl') === false ||\n            ini_get('enable_dl') != 1 ||\n            ini_get('safe_mode') == 1\n        ) {\n            return false;\n        }\n\n        if (OS_WINDOWS) {\n            $suffix = '.dll';\n        } elseif (PHP_OS == 'HP-UX') {\n            $suffix = '.sl';\n        } elseif (PHP_OS == 'AIX') {\n            $suffix = '.a';\n        } elseif (PHP_OS == 'OSX') {\n            $suffix = '.bundle';\n        } else {\n            $suffix = '.so';\n        }\n\n        return @dl('php_'.$ext.$suffix) || @dl($ext.$suffix);\n    }\n}\n\nif (PEAR_ZE2) {\n    include_once 'PEAR5.php';\n}\n\nfunction _PEAR_call_destructors()\n{\n    global $_PEAR_destructor_object_list;\n    if (is_array($_PEAR_destructor_object_list) &&\n        sizeof($_PEAR_destructor_object_list))\n    {\n        reset($_PEAR_destructor_object_list);\n        if (PEAR_ZE2) {\n            $destructLifoExists = PEAR5::getStaticProperty('PEAR', 'destructlifo');\n        } else {\n            $destructLifoExists = PEAR::getStaticProperty('PEAR', 'destructlifo');\n        }\n\n        if ($destructLifoExists) {\n            $_PEAR_destructor_object_list = array_reverse($_PEAR_destructor_object_list);\n        }\n\n        while (list($k, $objref) = each($_PEAR_destructor_object_list)) {\n            $classname = get_class($objref);\n            while ($classname) {\n                $destructor = \"_$classname\";\n                if (method_exists($objref, $destructor)) {\n                    $objref->$destructor();\n                    break;\n                } else {\n                    $classname = get_parent_class($classname);\n                }\n            }\n        }\n        // Empty the object list to ensure that destructors are\n        // not called more than once.\n        $_PEAR_destructor_object_list = array();\n    }\n\n    // Now call the shutdown functions\n    if (\n        isset($GLOBALS['_PEAR_shutdown_funcs']) &&\n        is_array($GLOBALS['_PEAR_shutdown_funcs']) &&\n        !empty($GLOBALS['_PEAR_shutdown_funcs'])\n    ) {\n        foreach ($GLOBALS['_PEAR_shutdown_funcs'] as $value) {\n            call_user_func_array($value[0], $value[1]);\n        }\n    }\n}\n\n/**\n * Standard PEAR error class for PHP 4\n *\n * This class is supserseded by {@link PEAR_Exception} in PHP 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Tomas V.V. Cox <cox@idecnet.com>\n * @author     Gregory Beaver <cellog@php.net>\n * @copyright  1997-2006 The PHP Group\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    Release: 1.9.1\n * @link       http://pear.php.net/manual/en/core.pear.pear-error.php\n * @see        PEAR::raiseError(), PEAR::throwError()\n * @since      Class available since PHP 4.0.2\n */\nclass PEAR_Error\n{\n    var $error_message_prefix = '';\n    var $mode                 = PEAR_ERROR_RETURN;\n    var $level                = E_USER_NOTICE;\n    var $code                 = -1;\n    var $message              = '';\n    var $userinfo             = '';\n    var $backtrace            = null;\n\n    /**\n     * PEAR_Error constructor\n     *\n     * @param string $message  message\n     *\n     * @param int $code     (optional) error code\n     *\n     * @param int $mode     (optional) error mode, one of: PEAR_ERROR_RETURN,\n     * PEAR_ERROR_PRINT, PEAR_ERROR_DIE, PEAR_ERROR_TRIGGER,\n     * PEAR_ERROR_CALLBACK or PEAR_ERROR_EXCEPTION\n     *\n     * @param mixed $options   (optional) error level, _OR_ in the case of\n     * PEAR_ERROR_CALLBACK, the callback function or object/method\n     * tuple.\n     *\n     * @param string $userinfo (optional) additional user/debug info\n     *\n     * @access public\n     *\n     */\n    function PEAR_Error($message = 'unknown error', $code = null,\n                        $mode = null, $options = null, $userinfo = null)\n    {\n        if ($mode === null) {\n            $mode = PEAR_ERROR_RETURN;\n        }\n        $this->message   = $message;\n        $this->code      = $code;\n        $this->mode      = $mode;\n        $this->userinfo  = $userinfo;\n\n        if (PEAR_ZE2) {\n            $skiptrace = PEAR5::getStaticProperty('PEAR_Error', 'skiptrace');\n        } else {\n            $skiptrace = PEAR::getStaticProperty('PEAR_Error', 'skiptrace');\n        }\n\n        if (!$skiptrace) {\n            $this->backtrace = debug_backtrace();\n            if (isset($this->backtrace[0]) && isset($this->backtrace[0]['object'])) {\n                unset($this->backtrace[0]['object']);\n            }\n        }\n\n        if ($mode & PEAR_ERROR_CALLBACK) {\n            $this->level = E_USER_NOTICE;\n            $this->callback = $options;\n        } else {\n            if ($options === null) {\n                $options = E_USER_NOTICE;\n            }\n\n            $this->level = $options;\n            $this->callback = null;\n        }\n\n        if ($this->mode & PEAR_ERROR_PRINT) {\n            if (is_null($options) || is_int($options)) {\n                $format = \"%s\";\n            } else {\n                $format = $options;\n            }\n\n            printf($format, $this->getMessage());\n        }\n\n        if ($this->mode & PEAR_ERROR_TRIGGER) {\n            trigger_error($this->getMessage(), $this->level);\n        }\n\n        if ($this->mode & PEAR_ERROR_DIE) {\n            $msg = $this->getMessage();\n            if (is_null($options) || is_int($options)) {\n                $format = \"%s\";\n                if (substr($msg, -1) != \"\\n\") {\n                    $msg .= \"\\n\";\n                }\n            } else {\n                $format = $options;\n            }\n            die(sprintf($format, $msg));\n        }\n\n        if ($this->mode & PEAR_ERROR_CALLBACK && is_callable($this->callback)) {\n            call_user_func($this->callback, $this);\n        }\n\n        if ($this->mode & PEAR_ERROR_EXCEPTION) {\n            trigger_error(\"PEAR_ERROR_EXCEPTION is obsolete, use class PEAR_Exception for exceptions\", E_USER_WARNING);\n            eval('$e = new Exception($this->message, $this->code);throw($e);');\n        }\n    }\n\n    /**\n     * Get the error mode from an error object.\n     *\n     * @return int error mode\n     * @access public\n     */\n    function getMode()\n    {\n        return $this->mode;\n    }\n\n    /**\n     * Get the callback function/method from an error object.\n     *\n     * @return mixed callback function or object/method array\n     * @access public\n     */\n    function getCallback()\n    {\n        return $this->callback;\n    }\n\n    /**\n     * Get the error message from an error object.\n     *\n     * @return  string  full error message\n     * @access public\n     */\n    function getMessage()\n    {\n        return ($this->error_message_prefix . $this->message);\n    }\n\n    /**\n     * Get error code from an error object\n     *\n     * @return int error code\n     * @access public\n     */\n     function getCode()\n     {\n        return $this->code;\n     }\n\n    /**\n     * Get the name of this error/exception.\n     *\n     * @return string error/exception name (type)\n     * @access public\n     */\n    function getType()\n    {\n        return get_class($this);\n    }\n\n    /**\n     * Get additional user-supplied information.\n     *\n     * @return string user-supplied information\n     * @access public\n     */\n    function getUserInfo()\n    {\n        return $this->userinfo;\n    }\n\n    /**\n     * Get additional debug information supplied by the application.\n     *\n     * @return string debug information\n     * @access public\n     */\n    function getDebugInfo()\n    {\n        return $this->getUserInfo();\n    }\n\n    /**\n     * Get the call backtrace from where the error was generated.\n     * Supported with PHP 4.3.0 or newer.\n     *\n     * @param int $frame (optional) what frame to fetch\n     * @return array Backtrace, or NULL if not available.\n     * @access public\n     */\n    function getBacktrace($frame = null)\n    {\n        if (defined('PEAR_IGNORE_BACKTRACE')) {\n            return null;\n        }\n        if ($frame === null) {\n            return $this->backtrace;\n        }\n        return $this->backtrace[$frame];\n    }\n\n    function addUserInfo($info)\n    {\n        if (empty($this->userinfo)) {\n            $this->userinfo = $info;\n        } else {\n            $this->userinfo .= \" ** $info\";\n        }\n    }\n\n    function __toString()\n    {\n        return $this->getMessage();\n    }\n\n    /**\n     * Make a string representation of this object.\n     *\n     * @return string a string with an object summary\n     * @access public\n     */\n    function toString()\n    {\n        $modes = array();\n        $levels = array(E_USER_NOTICE  => 'notice',\n                        E_USER_WARNING => 'warning',\n                        E_USER_ERROR   => 'error');\n        if ($this->mode & PEAR_ERROR_CALLBACK) {\n            if (is_array($this->callback)) {\n                $callback = (is_object($this->callback[0]) ?\n                    strtolower(get_class($this->callback[0])) :\n                    $this->callback[0]) . '::' .\n                    $this->callback[1];\n            } else {\n                $callback = $this->callback;\n            }\n            return sprintf('[%s: message=\"%s\" code=%d mode=callback '.\n                           'callback=%s prefix=\"%s\" info=\"%s\"]',\n                           strtolower(get_class($this)), $this->message, $this->code,\n                           $callback, $this->error_message_prefix,\n                           $this->userinfo);\n        }\n        if ($this->mode & PEAR_ERROR_PRINT) {\n            $modes[] = 'print';\n        }\n        if ($this->mode & PEAR_ERROR_TRIGGER) {\n            $modes[] = 'trigger';\n        }\n        if ($this->mode & PEAR_ERROR_DIE) {\n            $modes[] = 'die';\n        }\n        if ($this->mode & PEAR_ERROR_RETURN) {\n            $modes[] = 'return';\n        }\n        return sprintf('[%s: message=\"%s\" code=%d mode=%s level=%s '.\n                       'prefix=\"%s\" info=\"%s\"]',\n                       strtolower(get_class($this)), $this->message, $this->code,\n                       implode(\"|\", $modes), $levels[$this->level],\n                       $this->error_message_prefix,\n                       $this->userinfo);\n    }\n}\n\n/*\n * Local Variables:\n * mode: php\n * tab-width: 4\n * c-basic-offset: 4\n * End:\n */\n"
  },
  {
    "path": "newscoop/include/PEAR5.php",
    "content": "<?php\n/**\n * This is only meant for PHP 5 to get rid of certain strict warning\n * that doesn't get hidden since it's in the shutdown function\n */\nclass PEAR5\n{\n    /**\n    * If you have a class that's mostly/entirely static, and you need static\n    * properties, you can use this method to simulate them. Eg. in your method(s)\n    * do this: $myVar = &PEAR5::getStaticProperty('myclass', 'myVar');\n    * You MUST use a reference, or they will not persist!\n    *\n    * @access public\n    * @param  string $class  The calling classname, to prevent clashes\n    * @param  string $var    The variable to retrieve.\n    * @return mixed   A reference to the variable. If not set it will be\n    *                 auto initialised to NULL.\n    */\n    static function &getStaticProperty($class, $var)\n    {\n        static $properties;\n        if (!isset($properties[$class])) {\n            $properties[$class] = array();\n        }\n\n        if (!array_key_exists($var, $properties[$class])) {\n            $properties[$class][$var] = null;\n        }\n\n        return $properties[$class][$var];\n    }\n}"
  },
  {
    "path": "newscoop/include/System.php",
    "content": "<?php\n/**\n * File/Directory manipulation\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    System\n * @author     Tomas V.V.Cox <cox@idecnet.com>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: System.php 276386 2009-02-24 23:52:56Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n * @since      File available since Release 0.1\n */\n\n/**\n * base class\n */\nrequire_once 'PEAR.php';\nrequire_once 'Console/Getopt.php';\n\n$GLOBALS['_System_temp_files'] = array();\n\n/**\n* System offers cross plattform compatible system functions\n*\n* Static functions for different operations. Should work under\n* Unix and Windows. The names and usage has been taken from its respectively\n* GNU commands. The functions will return (bool) false on error and will\n* trigger the error with the PHP trigger_error() function (you can silence\n* the error by prefixing a '@' sign after the function call, but this\n* is not recommended practice.  Instead use an error handler with\n* {@link set_error_handler()}).\n*\n* Documentation on this class you can find in:\n* http://pear.php.net/manual/\n*\n* Example usage:\n* if (!@System::rm('-r file1 dir1')) {\n*    print \"could not delete file1 or dir1\";\n* }\n*\n* In case you need to to pass file names with spaces,\n* pass the params as an array:\n*\n* System::rm(array('-r', $file1, $dir1));\n*\n* @category   pear\n* @package    System\n* @author     Tomas V.V. Cox <cox@idecnet.com>\n* @copyright  1997-2006 The PHP Group\n* @license    http://opensource.org/licenses/bsd-license.php New BSD License\n* @version    Release: 1.9.1\n* @link       http://pear.php.net/package/PEAR\n* @since      Class available since Release 0.1\n* @static\n*/\nclass System\n{\n    /**\n     * returns the commandline arguments of a function\n     *\n     * @param    string  $argv           the commandline\n     * @param    string  $short_options  the allowed option short-tags\n     * @param    string  $long_options   the allowed option long-tags\n     * @return   array   the given options and there values\n     * @static\n     * @access private\n     */\n    function _parseArgs($argv, $short_options, $long_options = null)\n    {\n        if (!is_array($argv) && $argv !== null) {\n            $argv = preg_split('/\\s+/', $argv, -1, PREG_SPLIT_NO_EMPTY);\n        }\n        return Console_Getopt::getopt2($argv, $short_options);\n    }\n\n    /**\n     * Output errors with PHP trigger_error(). You can silence the errors\n     * with prefixing a \"@\" sign to the function call: @System::mkdir(..);\n     *\n     * @param mixed $error a PEAR error or a string with the error message\n     * @return bool false\n     * @static\n     * @access private\n     */\n    function raiseError($error)\n    {\n        if (PEAR::isError($error)) {\n            $error = $error->getMessage();\n        }\n        trigger_error($error, E_USER_WARNING);\n        return false;\n    }\n\n    /**\n     * Creates a nested array representing the structure of a directory\n     *\n     * System::_dirToStruct('dir1', 0) =>\n     *   Array\n     *    (\n     *    [dirs] => Array\n     *        (\n     *            [0] => dir1\n     *        )\n     *\n     *    [files] => Array\n     *        (\n     *            [0] => dir1/file2\n     *            [1] => dir1/file3\n     *        )\n     *    )\n     * @param    string  $sPath      Name of the directory\n     * @param    integer $maxinst    max. deep of the lookup\n     * @param    integer $aktinst    starting deep of the lookup\n     * @param    bool    $silent     if true, do not emit errors.\n     * @return   array   the structure of the dir\n     * @static\n     * @access   private\n     */\n    function _dirToStruct($sPath, $maxinst, $aktinst = 0, $silent = false)\n    {\n        $struct = array('dirs' => array(), 'files' => array());\n        if (($dir = @opendir($sPath)) === false) {\n            if (!$silent) {\n                System::raiseError(\"Could not open dir $sPath\");\n            }\n            return $struct; // XXX could not open error\n        }\n\n        $struct['dirs'][] = $sPath = realpath($sPath); // XXX don't add if '.' or '..' ?\n        $list = array();\n        while (false !== ($file = readdir($dir))) {\n            if ($file != '.' && $file != '..') {\n                $list[] = $file;\n            }\n        }\n\n        closedir($dir);\n        natsort($list);\n        if ($aktinst < $maxinst || $maxinst == 0) {\n            foreach ($list as $val) {\n                $path = $sPath . DIRECTORY_SEPARATOR . $val;\n                if (is_dir($path) && !is_link($path)) {\n                    $tmp    = System::_dirToStruct($path, $maxinst, $aktinst+1, $silent);\n                    $struct = array_merge_recursive($struct, $tmp);\n                } else {\n                    $struct['files'][] = $path;\n                }\n            }\n        }\n\n        return $struct;\n    }\n\n    /**\n     * Creates a nested array representing the structure of a directory and files\n     *\n     * @param    array $files Array listing files and dirs\n     * @return   array\n     * @static\n     * @see System::_dirToStruct()\n     */\n    function _multipleToStruct($files)\n    {\n        $struct = array('dirs' => array(), 'files' => array());\n        settype($files, 'array');\n        foreach ($files as $file) {\n            if (is_dir($file) && !is_link($file)) {\n                $tmp    = System::_dirToStruct($file, 0);\n                $struct = array_merge_recursive($tmp, $struct);\n            } else {\n                if (!in_array($file, $struct['files'])) {\n                    $struct['files'][] = $file;\n                }\n            }\n        }\n        return $struct;\n    }\n\n    /**\n     * The rm command for removing files.\n     * Supports multiple files and dirs and also recursive deletes\n     *\n     * @param    string  $args   the arguments for rm\n     * @return   mixed   PEAR_Error or true for success\n     * @static\n     * @access   public\n     */\n    function rm($args)\n    {\n        $opts = System::_parseArgs($args, 'rf'); // \"f\" does nothing but I like it :-)\n        if (PEAR::isError($opts)) {\n            return System::raiseError($opts);\n        }\n        foreach ($opts[0] as $opt) {\n            if ($opt[0] == 'r') {\n                $do_recursive = true;\n            }\n        }\n        $ret = true;\n        if (isset($do_recursive)) {\n            $struct = System::_multipleToStruct($opts[1]);\n            foreach ($struct['files'] as $file) {\n                if (!@unlink($file)) {\n                    $ret = false;\n                }\n            }\n\n            rsort($struct['dirs']);\n            foreach ($struct['dirs'] as $dir) {\n                if (!@rmdir($dir)) {\n                    $ret = false;\n                }\n            }\n        } else {\n            foreach ($opts[1] as $file) {\n                $delete = (is_dir($file)) ? 'rmdir' : 'unlink';\n                if (!@$delete($file)) {\n                    $ret = false;\n                }\n            }\n        }\n        return $ret;\n    }\n\n    /**\n     * Make directories.\n     *\n     * The -p option will create parent directories\n     * @param    string  $args    the name of the director(y|ies) to create\n     * @return   bool    True for success\n     * @static\n     * @access   public\n     */\n    function mkDir($args)\n    {\n        $opts = System::_parseArgs($args, 'pm:');\n        if (PEAR::isError($opts)) {\n            return System::raiseError($opts);\n        }\n\n        $mode = 0777; // default mode\n        foreach ($opts[0] as $opt) {\n            if ($opt[0] == 'p') {\n                $create_parents = true;\n            } elseif ($opt[0] == 'm') {\n                // if the mode is clearly an octal number (starts with 0)\n                // convert it to decimal\n                if (strlen($opt[1]) && $opt[1]{0} == '0') {\n                    $opt[1] = octdec($opt[1]);\n                } else {\n                    // convert to int\n                    $opt[1] += 0;\n                }\n                $mode = $opt[1];\n            }\n        }\n\n        $ret = true;\n        if (isset($create_parents)) {\n            foreach ($opts[1] as $dir) {\n                $dirstack = array();\n                while ((!file_exists($dir) || !is_dir($dir)) &&\n                        $dir != DIRECTORY_SEPARATOR) {\n                    array_unshift($dirstack, $dir);\n                    $dir = dirname($dir);\n                }\n\n                while ($newdir = array_shift($dirstack)) {\n                    if (!is_writeable(dirname($newdir))) {\n                        $ret = false;\n                        break;\n                    }\n\n                    if (!mkdir($newdir, $mode)) {\n                        $ret = false;\n                    }\n                }\n            }\n        } else {\n            foreach($opts[1] as $dir) {\n                if ((@file_exists($dir) || !is_dir($dir)) && !mkdir($dir, $mode)) {\n                    $ret = false;\n                }\n            }\n        }\n\n        return $ret;\n    }\n\n    /**\n     * Concatenate files\n     *\n     * Usage:\n     * 1) $var = System::cat('sample.txt test.txt');\n     * 2) System::cat('sample.txt test.txt > final.txt');\n     * 3) System::cat('sample.txt test.txt >> final.txt');\n     *\n     * Note: as the class use fopen, urls should work also (test that)\n     *\n     * @param    string  $args   the arguments\n     * @return   boolean true on success\n     * @static\n     * @access   public\n     */\n    function &cat($args)\n    {\n        $ret = null;\n        $files = array();\n        if (!is_array($args)) {\n            $args = preg_split('/\\s+/', $args, -1, PREG_SPLIT_NO_EMPTY);\n        }\n\n        $count_args = count($args);\n        for ($i = 0; $i < $count_args; $i++) {\n            if ($args[$i] == '>') {\n                $mode = 'wb';\n                $outputfile = $args[$i+1];\n                break;\n            } elseif ($args[$i] == '>>') {\n                $mode = 'ab+';\n                $outputfile = $args[$i+1];\n                break;\n            } else {\n                $files[] = $args[$i];\n            }\n        }\n        $outputfd = false;\n        if (isset($mode)) {\n            if (!$outputfd = fopen($outputfile, $mode)) {\n                $err = System::raiseError(\"Could not open $outputfile\");\n                return $err;\n            }\n            $ret = true;\n        }\n        foreach ($files as $file) {\n            if (!$fd = fopen($file, 'r')) {\n                System::raiseError(\"Could not open $file\");\n                continue;\n            }\n            while ($cont = fread($fd, 2048)) {\n                if (is_resource($outputfd)) {\n                    fwrite($outputfd, $cont);\n                } else {\n                    $ret .= $cont;\n                }\n            }\n            fclose($fd);\n        }\n        if (is_resource($outputfd)) {\n            fclose($outputfd);\n        }\n        return $ret;\n    }\n\n    /**\n     * Creates temporary files or directories. This function will remove\n     * the created files when the scripts finish its execution.\n     *\n     * Usage:\n     *   1) $tempfile = System::mktemp(\"prefix\");\n     *   2) $tempdir  = System::mktemp(\"-d prefix\");\n     *   3) $tempfile = System::mktemp();\n     *   4) $tempfile = System::mktemp(\"-t /var/tmp prefix\");\n     *\n     * prefix -> The string that will be prepended to the temp name\n     *           (defaults to \"tmp\").\n     * -d     -> A temporary dir will be created instead of a file.\n     * -t     -> The target dir where the temporary (file|dir) will be created. If\n     *           this param is missing by default the env vars TMP on Windows or\n     *           TMPDIR in Unix will be used. If these vars are also missing\n     *           c:\\windows\\temp or /tmp will be used.\n     *\n     * @param   string  $args  The arguments\n     * @return  mixed   the full path of the created (file|dir) or false\n     * @see System::tmpdir()\n     * @static\n     * @access  public\n     */\n    function mktemp($args = null)\n    {\n        static $first_time = true;\n        $opts = System::_parseArgs($args, 't:d');\n        if (PEAR::isError($opts)) {\n            return System::raiseError($opts);\n        }\n\n        foreach ($opts[0] as $opt) {\n            if ($opt[0] == 'd') {\n                $tmp_is_dir = true;\n            } elseif ($opt[0] == 't') {\n                $tmpdir = $opt[1];\n            }\n        }\n\n        $prefix = (isset($opts[1][0])) ? $opts[1][0] : 'tmp';\n        if (!isset($tmpdir)) {\n            $tmpdir = System::tmpdir();\n        }\n\n        if (!System::mkDir(array('-p', $tmpdir))) {\n            return false;\n        }\n\n        $tmp = tempnam($tmpdir, $prefix);\n        if (isset($tmp_is_dir)) {\n            unlink($tmp); // be careful possible race condition here\n            if (!mkdir($tmp, 0700)) {\n                return System::raiseError(\"Unable to create temporary directory $tmpdir\");\n            }\n        }\n\n        $GLOBALS['_System_temp_files'][] = $tmp;\n        if (isset($tmp_is_dir)) {\n            //$GLOBALS['_System_temp_files'][] = dirname($tmp);\n        }\n\n        if ($first_time) {\n            PEAR::registerShutdownFunc(array('System', '_removeTmpFiles'));\n            $first_time = false;\n        }\n\n        return $tmp;\n    }\n\n    /**\n     * Remove temporary files created my mkTemp. This function is executed\n     * at script shutdown time\n     *\n     * @static\n     * @access private\n     */\n    function _removeTmpFiles()\n    {\n        if (count($GLOBALS['_System_temp_files'])) {\n            $delete = $GLOBALS['_System_temp_files'];\n            array_unshift($delete, '-r');\n            System::rm($delete);\n            $GLOBALS['_System_temp_files'] = array();\n        }\n    }\n\n    /**\n     * Get the path of the temporal directory set in the system\n     * by looking in its environments variables.\n     * Note: php.ini-recommended removes the \"E\" from the variables_order setting,\n     * making unavaible the $_ENV array, that s why we do tests with _ENV\n     *\n     * @static\n     * @return string The temporary directory on the system\n     */\n    function tmpdir()\n    {\n        if (OS_WINDOWS) {\n            if ($var = isset($_ENV['TMP']) ? $_ENV['TMP'] : getenv('TMP')) {\n                return $var;\n            }\n            if ($var = isset($_ENV['TEMP']) ? $_ENV['TEMP'] : getenv('TEMP')) {\n                return $var;\n            }\n            if ($var = isset($_ENV['USERPROFILE']) ? $_ENV['USERPROFILE'] : getenv('USERPROFILE')) {\n                return $var;\n            }\n            if ($var = isset($_ENV['windir']) ? $_ENV['windir'] : getenv('windir')) {\n                return $var;\n            }\n            return getenv('SystemRoot') . '\\temp';\n        }\n        if ($var = isset($_ENV['TMPDIR']) ? $_ENV['TMPDIR'] : getenv('TMPDIR')) {\n            return $var;\n        }\n        return realpath('/tmp');\n    }\n\n    /**\n     * The \"which\" command (show the full path of a command)\n     *\n     * @param string $program The command to search for\n     * @param mixed  $fallback Value to return if $program is not found\n     *\n     * @return mixed A string with the full path or false if not found\n     * @static\n     * @author Stig Bakken <ssb@php.net>\n     */\n    function which($program, $fallback = false)\n    {\n        // enforce API\n        if (!is_string($program) || '' == $program) {\n            return $fallback;\n        }\n\n        // full path given\n        if (basename($program) != $program) {\n            $path_elements[] = dirname($program);\n            $program = basename($program);\n        } else {\n            // Honor safe mode\n            if (!ini_get('safe_mode') || !$path = ini_get('safe_mode_exec_dir')) {\n                $path = getenv('PATH');\n                if (!$path) {\n                    $path = getenv('Path'); // some OSes are just stupid enough to do this\n                }\n            }\n            $path_elements = explode(PATH_SEPARATOR, $path);\n        }\n\n        if (OS_WINDOWS) {\n            $exe_suffixes = getenv('PATHEXT')\n                                ? explode(PATH_SEPARATOR, getenv('PATHEXT'))\n                                : array('.exe','.bat','.cmd','.com');\n            // allow passing a command.exe param\n            if (strpos($program, '.') !== false) {\n                array_unshift($exe_suffixes, '');\n            }\n            // is_executable() is not available on windows for PHP4\n            $pear_is_executable = (function_exists('is_executable')) ? 'is_executable' : 'is_file';\n        } else {\n            $exe_suffixes = array('');\n            $pear_is_executable = 'is_executable';\n        }\n\n        foreach ($exe_suffixes as $suff) {\n            foreach ($path_elements as $dir) {\n                $file = $dir . DIRECTORY_SEPARATOR . $program . $suff;\n                if (@$pear_is_executable($file)) {\n                    return $file;\n                }\n            }\n        }\n        return $fallback;\n    }\n\n    /**\n     * The \"find\" command\n     *\n     * Usage:\n     *\n     * System::find($dir);\n     * System::find(\"$dir -type d\");\n     * System::find(\"$dir -type f\");\n     * System::find(\"$dir -name *.php\");\n     * System::find(\"$dir -name *.php -name *.htm*\");\n     * System::find(\"$dir -maxdepth 1\");\n     *\n     * Params implmented:\n     * $dir            -> Start the search at this directory\n     * -type d         -> return only directories\n     * -type f         -> return only files\n     * -maxdepth <n>   -> max depth of recursion\n     * -name <pattern> -> search pattern (bash style). Multiple -name param allowed\n     *\n     * @param  mixed Either array or string with the command line\n     * @return array Array of found files\n     * @static\n     *\n     */\n    function find($args)\n    {\n        if (!is_array($args)) {\n            $args = preg_split('/\\s+/', $args, -1, PREG_SPLIT_NO_EMPTY);\n        }\n        $dir = realpath(array_shift($args));\n        if (!$dir) {\n            return array();\n        }\n        $patterns = array();\n        $depth = 0;\n        $do_files = $do_dirs = true;\n        $args_count = count($args);\n        for ($i = 0; $i < $args_count; $i++) {\n            switch ($args[$i]) {\n                case '-type':\n                    if (in_array($args[$i+1], array('d', 'f'))) {\n                        if ($args[$i+1] == 'd') {\n                            $do_files = false;\n                        } else {\n                            $do_dirs = false;\n                        }\n                    }\n                    $i++;\n                    break;\n                case '-name':\n                    $name = preg_quote($args[$i+1], '#');\n                    // our magic characters ? and * have just been escaped,\n                    // so now we change the escaped versions to PCRE operators\n                    $name = strtr($name, array('\\?' => '.', '\\*' => '.*'));\n                    $patterns[] = '('.$name.')';\n                    $i++;\n                    break;\n                case '-maxdepth':\n                    $depth = $args[$i+1];\n                    break;\n            }\n        }\n        $path = System::_dirToStruct($dir, $depth, 0, true);\n        if ($do_files && $do_dirs) {\n            $files = array_merge($path['files'], $path['dirs']);\n        } elseif ($do_dirs) {\n            $files = $path['dirs'];\n        } else {\n            $files = $path['files'];\n        }\n        if (count($patterns)) {\n            $dsq = preg_quote(DIRECTORY_SEPARATOR, '#');\n            $pattern = '#(^|'.$dsq.')'.implode('|', $patterns).'($|'.$dsq.')#';\n            $ret = array();\n            $files_count = count($files);\n            for ($i = 0; $i < $files_count; $i++) {\n                // only search in the part of the file below the current directory\n                $filepart = basename($files[$i]);\n                if (preg_match($pattern, $filepart)) {\n                    $ret[] = $files[$i];\n                }\n            }\n            return $ret;\n        }\n        return $files;\n    }\n}"
  },
  {
    "path": "newscoop/include/XML/Parser/Simple.php",
    "content": "<?php\n\n/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */\n\n/**\n * XML_Parser\n *\n * XML Parser's Simple parser class \n *\n * PHP versions 4 and 5\n *\n * LICENSE:\n *\n * Copyright (c) 2002-2008 The PHP Group\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions\n * are met:\n *\n *    * Redistributions of source code must retain the above copyright\n *      notice, this list of conditions and the following disclaimer.\n *    * Redistributions in binary form must reproduce the above copyright\n *      notice, this list of conditions and the following disclaimer in the\n *      documentation and/or other materials provided with the distribution.\n *    * The name of the author may not be used to endorse or promote products\n *      derived from this software without specific prior written permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS\n * IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,\n * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR\n * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,\n * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,\n * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR\n * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\n * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\n * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * @category  XML\n * @package   XML_Parser\n * @author    Stephan Schmidt <schst@php.net>\n * @copyright 2004-2008 Stephan Schmidt <schst@php.net>\n * @license   http://opensource.org/licenses/bsd-license New BSD License\n * @version   CVS: $Id: Simple.php,v 1.7 2008/08/24 21:48:21 ashnazg Exp $\n * @link      http://pear.php.net/package/XML_Parser\n */\n\n/**\n * built on XML_Parser\n */\nrequire_once 'XML/Parser.php';\n\n/**\n * Simple XML parser class.\n *\n * This class is a simplified version of XML_Parser.\n * In most XML applications the real action is executed,\n * when a closing tag is found.\n *\n * XML_Parser_Simple allows you to just implement one callback\n * for each tag that will receive the tag with its attributes\n * and CData.\n *\n * <code>\n * require_once '../Parser/Simple.php';\n *\n * class myParser extends XML_Parser_Simple\n * {\n *     function myParser()\n *     {\n *        $this->XML_Parser_Simple();\n *      }\n * \n *    function handleElement($name, $attribs, $data)\n *     {\n *         printf('handle %s<br>', $name);\n *     }\n * }\n * \n * $p = &new myParser();\n * \n * $result = $p->setInputFile('myDoc.xml');\n * $result = $p->parse();\n * </code>\n *\n * @category  XML\n * @package   XML_Parser\n * @author    Stephan Schmidt <schst@php.net>\n * @copyright 2004-2008 The PHP Group\n * @license   http://opensource.org/licenses/bsd-license New BSD License\n * @version   Release: @package_version@\n * @link      http://pear.php.net/package/XML_Parser\n */\nclass XML_Parser_Simple extends XML_Parser\n{\n    /**\n     * element stack\n     *\n     * @access   private\n     * @var      array\n     */\n    var $_elStack = array();\n\n    /**\n     * all character data\n     *\n     * @access   private\n     * @var      array\n     */\n    var $_data = array();\n\n    /**\n     * element depth\n     *\n     * @access   private\n     * @var      integer\n     */\n    var $_depth = 0;\n\n    /**\n     * Mapping from expat handler function to class method.\n     *\n     * @var  array\n     */\n    var $handler = array(\n        'default_handler'                   => 'defaultHandler',\n        'processing_instruction_handler'    => 'piHandler',\n        'unparsed_entity_decl_handler'      => 'unparsedHandler',\n        'notation_decl_handler'             => 'notationHandler',\n        'external_entity_ref_handler'       => 'entityrefHandler'\n    );\n    \n    /**\n     * Creates an XML parser.\n     *\n     * This is needed for PHP4 compatibility, it will\n     * call the constructor, when a new instance is created.\n     *\n     * @param string $srcenc source charset encoding, use NULL (default) to use\n     *                       whatever the document specifies\n     * @param string $mode   how this parser object should work, \"event\" for\n     *                       handleElement(), \"func\" to have it call functions\n     *                       named after elements (handleElement_$name())\n     * @param string $tgtenc a valid target encoding\n     */\n    function XML_Parser_Simple($srcenc = null, $mode = 'event', $tgtenc = null)\n    {\n        $this->XML_Parser($srcenc, $mode, $tgtenc);\n    }\n\n    /**\n     * inits the handlers\n     *\n     * @return mixed\n     * @access private\n     */\n    function _initHandlers()\n    {\n        if (!is_object($this->_handlerObj)) {\n            $this->_handlerObj = &$this;\n        }\n\n        if ($this->mode != 'func' && $this->mode != 'event') {\n            return $this->raiseError('Unsupported mode given', \n                XML_PARSER_ERROR_UNSUPPORTED_MODE);\n        }\n        xml_set_object($this->parser, $this->_handlerObj);\n\n        xml_set_element_handler($this->parser, array(&$this, 'startHandler'), \n            array(&$this, 'endHandler'));\n        xml_set_character_data_handler($this->parser, array(&$this, 'cdataHandler'));\n        \n        /**\n         * set additional handlers for character data, entities, etc.\n         */\n        foreach ($this->handler as $xml_func => $method) {\n            if (method_exists($this->_handlerObj, $method)) {\n                $xml_func = 'xml_set_' . $xml_func;\n                $xml_func($this->parser, $method);\n            }\n        }\n    }\n\n    /**\n     * Reset the parser.\n     *\n     * This allows you to use one parser instance\n     * to parse multiple XML documents.\n     *\n     * @access   public\n     * @return   boolean|object     true on success, PEAR_Error otherwise\n     */\n    function reset()\n    {\n        $this->_elStack = array();\n        $this->_data    = array();\n        $this->_depth   = 0;\n        \n        $result = $this->_create();\n        if ($this->isError($result)) {\n            return $result;\n        }\n        return true;\n    }\n\n    /**\n     * start handler\n     *\n     * Pushes attributes and tagname onto a stack\n     *\n     * @param resource $xp       xml parser resource\n     * @param string   $elem     element name\n     * @param array    &$attribs attributes\n     *\n     * @return mixed\n     * @access private\n     * @final\n     */\n    function startHandler($xp, $elem, &$attribs)\n    {\n        array_push($this->_elStack, array(\n            'name'    => $elem,\n            'attribs' => $attribs\n        ));\n        $this->_depth++;\n        $this->_data[$this->_depth] = '';\n    }\n\n    /**\n     * end handler\n     *\n     * Pulls attributes and tagname from a stack\n     *\n     * @param resource $xp   xml parser resource\n     * @param string   $elem element name\n     *\n     * @return mixed\n     * @access private\n     * @final\n     */\n    function endHandler($xp, $elem)\n    {\n        $el   = array_pop($this->_elStack);\n        $data = $this->_data[$this->_depth];\n        $this->_depth--;\n\n        switch ($this->mode) {\n        case 'event':\n            $this->_handlerObj->handleElement($el['name'], $el['attribs'], $data);\n            break;\n        case 'func':\n            $func = 'handleElement_' . $elem;\n            if (strchr($func, '.')) {\n                $func = str_replace('.', '_', $func);\n            }\n            if (method_exists($this->_handlerObj, $func)) {\n                call_user_func(array(&$this->_handlerObj, $func), \n                    $el['name'], $el['attribs'], $data);\n            }\n            break;\n        }\n    }\n\n    /**\n     * handle character data\n     *\n     * @param resource $xp   xml parser resource\n     * @param string   $data data\n     *\n     * @return void\n     * @access private\n     * @final\n     */\n    function cdataHandler($xp, $data)\n    {\n        $this->_data[$this->_depth] .= $data;\n    }\n\n    /**\n     * handle a tag\n     *\n     * Implement this in your parser \n     *\n     * @param string $name    element name\n     * @param array  $attribs attributes\n     * @param string $data    character data\n     *\n     * @return void\n     * @access public\n     * @abstract\n     */\n    function handleElement($name, $attribs, $data)\n    {\n    }\n\n    /**\n     * get the current tag depth\n     *\n     * The root tag is in depth 0.\n     *\n     * @access   public\n     * @return   integer\n     */\n    function getCurrentDepth()\n    {\n        return $this->_depth;\n    }\n\n    /**\n     * add some string to the current ddata.\n     *\n     * This is commonly needed, when a document is parsed recursively.\n     *\n     * @param string $data data to add\n     *\n     * @return void\n     * @access public\n     */\n    function addToData($data)\n    {\n        $this->_data[$this->_depth] .= $data;\n    }\n}\n?>\n"
  },
  {
    "path": "newscoop/include/XML/Parser.php",
    "content": "<?php\n\n/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */\n\n/**\n * XML_Parser\n *\n * XML Parser package\n *\n * PHP versions 4 and 5\n *\n * LICENSE:\n *\n * Copyright (c) 2002-2008 The PHP Group\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions\n * are met:\n *\n *    * Redistributions of source code must retain the above copyright\n *      notice, this list of conditions and the following disclaimer.\n *    * Redistributions in binary form must reproduce the above copyright\n *      notice, this list of conditions and the following disclaimer in the\n *      documentation and/or other materials provided with the distribution.\n *    * The name of the author may not be used to endorse or promote products\n *      derived from this software without specific prior written permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS\n * IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,\n * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR\n * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,\n * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,\n * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR\n * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\n * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\n * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * @category  XML\n * @package   XML_Parser\n * @author    Stig Bakken <ssb@fast.no>\n * @author    Tomas V.V.Cox <cox@idecnet.com>\n * @author    Stephan Schmidt <schst@php.net>\n * @copyright 2002-2008 The PHP Group\n * @license   http://opensource.org/licenses/bsd-license New BSD License\n * @version   CVS: $Id: Parser.php,v 1.30 2008/09/16 16:06:22 ashnazg Exp $\n * @link      http://pear.php.net/package/XML_Parser\n */\n\n/**\n * uses PEAR's error handling\n */\nrequire_once 'PEAR.php';\n\n/**\n * resource could not be created\n */\ndefine('XML_PARSER_ERROR_NO_RESOURCE', 200);\n\n/**\n * unsupported mode\n */\ndefine('XML_PARSER_ERROR_UNSUPPORTED_MODE', 201);\n\n/**\n * invalid encoding was given\n */\ndefine('XML_PARSER_ERROR_INVALID_ENCODING', 202);\n\n/**\n * specified file could not be read\n */\ndefine('XML_PARSER_ERROR_FILE_NOT_READABLE', 203);\n\n/**\n * invalid input\n */\ndefine('XML_PARSER_ERROR_INVALID_INPUT', 204);\n\n/**\n * remote file cannot be retrieved in safe mode\n */\ndefine('XML_PARSER_ERROR_REMOTE', 205);\n\n/**\n * XML Parser class.\n *\n * This is an XML parser based on PHP's \"xml\" extension,\n * based on the bundled expat library.\n *\n * Notes:\n * - It requires PHP 4.0.4pl1 or greater\n * - From revision 1.17, the function names used by the 'func' mode\n *   are in the format \"xmltag_$elem\", for example: use \"xmltag_name\"\n *   to handle the <name></name> tags of your xml file.\n *          - different parsing modes\n *\n * @category  XML\n * @package   XML_Parser\n * @author    Stig Bakken <ssb@fast.no>\n * @author    Tomas V.V.Cox <cox@idecnet.com>\n * @author    Stephan Schmidt <schst@php.net>\n * @copyright 2002-2008 The PHP Group\n * @license   http://opensource.org/licenses/bsd-license New BSD License\n * @version   Release: @package_version@\n * @link      http://pear.php.net/package/XML_Parser\n * @todo      create XML_Parser_Namespace to parse documents with namespaces\n * @todo      create XML_Parser_Pull\n * @todo      Tests that need to be made:\n *            - mixing character encodings\n *            - a test using all expat handlers\n *            - options (folding, output charset)\n */\nclass XML_Parser extends PEAR\n{\n    // {{{ properties\n\n    /**\n     * XML parser handle\n     *\n     * @var  resource\n     * @see  xml_parser_create()\n     */\n    public $parser;\n\n    /**\n     * File handle if parsing from a file\n     *\n     * @var  resource\n     */\n    public $fp;\n\n    /**\n     * Whether to do case folding\n     *\n     * If set to true, all tag and attribute names will\n     * be converted to UPPER CASE.\n     *\n     * @var  boolean\n     */\n    public $folding = true;\n\n    /**\n     * Mode of operation, one of \"event\" or \"func\"\n     *\n     * @var  string\n     */\n    public $mode;\n\n    /**\n     * Mapping from expat handler function to class method.\n     *\n     * @var  array\n     */\n    public $handler = array(\n        'character_data_handler'            => 'cdataHandler',\n        'default_handler'                   => 'defaultHandler',\n        'processing_instruction_handler'    => 'piHandler',\n        'unparsed_entity_decl_handler'      => 'unparsedHandler',\n        'notation_decl_handler'             => 'notationHandler',\n        'external_entity_ref_handler'       => 'entityrefHandler'\n    );\n\n    /**\n     * source encoding\n     *\n     * @var string\n     */\n    public $srcenc;\n\n    /**\n     * target encoding\n     *\n     * @var string\n     */\n    public $tgtenc;\n\n    /**\n     * handler object\n     *\n     * @var object\n     */\n    public $_handlerObj;\n\n    /**\n     * valid encodings\n     *\n     * @var array\n     */\n    public $_validEncodings = array('ISO-8859-1', 'UTF-8', 'US-ASCII');\n\n    // {{{ php5 constructor\n\n    /**\n     * PHP5 constructor\n     *\n     * @param string $srcenc source charset encoding, use NULL (default) to use\n     *                       whatever the document specifies\n     * @param string $mode   how this parser object should work, \"event\" for\n     *                       startelement/endelement-type events, \"func\"\n     *                       to have it call functions named after elements\n     * @param string $tgtenc a valid target encoding\n     */\n    public function __construct($srcenc = null, $mode = 'event', $tgtenc = null)\n    {\n        $this->PEAR('XML_Parser_Error');\n\n        $this->mode   = $mode;\n        $this->srcenc = $srcenc;\n        $this->tgtenc = $tgtenc;\n    }\n    // }}}\n\n    // }}}\n    // {{{ php4 constructor\n\n    /**\n     * Creates an XML parser.\n     *\n     * This is needed for PHP4 compatibility, it will\n     * call the constructor, when a new instance is created.\n     *\n     * @param string $srcenc source charset encoding, use NULL (default) to use\n     *                       whatever the document specifies\n     * @param string $mode   how this parser object should work, \"event\" for\n     *                       startelement/endelement-type events, \"func\"\n     *                       to have it call functions named after elements\n     * @param string $tgtenc a valid target encoding\n     */\n    public function XML_Parser($srcenc = null, $mode = 'event', $tgtenc = null)\n    {\n        XML_Parser::__construct($srcenc, $mode, $tgtenc);\n    }\n    // }}}\n\n    /**\n     * Sets the mode of the parser.\n     *\n     * Possible modes are:\n     * - func\n     * - event\n     *\n     * You can set the mode using the second parameter\n     * in the constructor.\n     *\n     * This method is only needed, when switching to a new\n     * mode at a later point.\n     *\n     * @param string $mode mode, either 'func' or 'event'\n     *\n     * @return boolean|object true on success, PEAR_Error otherwise\n     * @access public\n     */\n    public function setMode($mode)\n    {\n        if ($mode != 'func' && $mode != 'event') {\n            $this->raiseError('Unsupported mode given',\n                XML_PARSER_ERROR_UNSUPPORTED_MODE);\n        }\n\n        $this->mode = $mode;\n\n        return true;\n    }\n\n    /**\n     * Sets the object, that will handle the XML events\n     *\n     * This allows you to create a handler object independent of the\n     * parser object that you are using and easily switch the underlying\n     * parser.\n     *\n     * If no object will be set, XML_Parser assumes that you\n     * extend this class and handle the events in $this.\n     *\n     * @param object &$obj object to handle the events\n     *\n     * @return boolean will always return true\n     * @access public\n     * @since v1.2.0beta3\n     */\n    public function setHandlerObj(&$obj)\n    {\n        $this->_handlerObj = &$obj;\n\n        return true;\n    }\n\n    /**\n     * Init the element handlers\n     *\n     * @return mixed\n     * @access private\n     */\n    public function _initHandlers()\n    {\n        if (!is_resource($this->parser)) {\n            return false;\n        }\n\n        if (!is_object($this->_handlerObj)) {\n            $this->_handlerObj = &$this;\n        }\n        switch ($this->mode) {\n\n        case 'func':\n            xml_set_object($this->parser, $this->_handlerObj);\n            xml_set_element_handler($this->parser,\n                array(&$this, 'funcStartHandler'), array(&$this, 'funcEndHandler'));\n            break;\n\n        case 'event':\n            xml_set_object($this->parser, $this->_handlerObj);\n            xml_set_element_handler($this->parser, 'startHandler', 'endHandler');\n            break;\n        default:\n            return $this->raiseError('Unsupported mode given',\n                XML_PARSER_ERROR_UNSUPPORTED_MODE);\n            break;\n        }\n\n        /**\n         * set additional handlers for character data, entities, etc.\n         */\n        foreach ($this->handler as $xml_func => $method) {\n            if (method_exists($this->_handlerObj, $method)) {\n                $xml_func = 'xml_set_' . $xml_func;\n                $xml_func($this->parser, $method);\n            }\n        }\n    }\n\n    // {{{ _create()\n\n    /**\n     * create the XML parser resource\n     *\n     * Has been moved from the constructor to avoid\n     * problems with object references.\n     *\n     * Furthermore it allows us returning an error\n     * if something fails.\n     *\n     * NOTE: uses '@' error suppresion in this method\n     *\n     * @return bool|PEAR_Error true on success, PEAR_Error otherwise\n     * @access private\n     * @see xml_parser_create\n     */\n    public function _create()\n    {\n        if ($this->srcenc === null) {\n            $xp = @xml_parser_create();\n        } else {\n            $xp = @xml_parser_create($this->srcenc);\n        }\n        if (is_resource($xp)) {\n            if ($this->tgtenc !== null) {\n                if (!@xml_parser_set_option($xp, XML_OPTION_TARGET_ENCODING,\n                    $this->tgtenc)\n                ) {\n                    return $this->raiseError('invalid target encoding',\n                        XML_PARSER_ERROR_INVALID_ENCODING);\n                }\n            }\n            $this->parser = $xp;\n            $result       = $this->_initHandlers($this->mode);\n            if ($this->isError($result)) {\n                return $result;\n            }\n            xml_parser_set_option($xp, XML_OPTION_CASE_FOLDING, $this->folding);\n\n            return true;\n        }\n        if (!in_array(strtoupper($this->srcenc), $this->_validEncodings)) {\n            return $this->raiseError('invalid source encoding',\n                XML_PARSER_ERROR_INVALID_ENCODING);\n        }\n\n        return $this->raiseError('Unable to create XML parser resource.',\n            XML_PARSER_ERROR_NO_RESOURCE);\n    }\n\n    // }}}\n    // {{{ reset()\n\n    /**\n     * Reset the parser.\n     *\n     * This allows you to use one parser instance\n     * to parse multiple XML documents.\n     *\n     * @access   public\n     * @return boolean|object true on success, PEAR_Error otherwise\n     */\n    public function reset()\n    {\n        $result = $this->_create();\n        if ($this->isError($result)) {\n            return $result;\n        }\n\n        return true;\n    }\n\n    // }}}\n    // {{{ setInputFile()\n\n    /**\n     * Sets the input xml file to be parsed\n     *\n     * @param string $file Filename (full path)\n     *\n     * @return resource         fopen handle of the given file\n     * @access public\n     * @throws XML_Parser_Error\n     * @see setInput(), setInputString(), parse()\n     */\n    public function setInputFile($file)\n    {\n        /**\n         * check, if file is a remote file\n         */\n        if (preg_match('/^(http|ftp):\\/\\//i', substr($file, 0, 10))) {\n            if (!ini_get('allow_url_fopen')) {\n                return $this->\n                raiseError('Remote files cannot be parsed, as safe mode is enabled.',\n                XML_PARSER_ERROR_REMOTE);\n            }\n        }\n\n        $fp = @fopen($file, 'rb');\n        if (is_resource($fp)) {\n            $this->fp = $fp;\n\n            return $fp;\n        }\n\n        return $this->raiseError('File could not be opened.',\n            XML_PARSER_ERROR_FILE_NOT_READABLE);\n    }\n\n    // }}}\n    // {{{ setInputString()\n\n    /**\n     * XML_Parser::setInputString()\n     *\n     * Sets the xml input from a string\n     *\n     * @param string $data a string containing the XML document\n     *\n     * @return null\n     */\n    public function setInputString($data)\n    {\n        $this->fp = $data;\n\n        return null;\n    }\n\n    // }}}\n    // {{{ setInput()\n\n    /**\n     * Sets the file handle to use with parse().\n     *\n     * You should use setInputFile() or setInputString() if you\n     * pass a string\n     *\n     * @param mixed $fp Can be either a resource returned from fopen(),\n     *                  a URL, a local filename or a string.\n     *\n     * @return mixed\n     * @access public\n     * @see parse()\n     * @uses setInputString(), setInputFile()\n     */\n    public function setInput($fp)\n    {\n        if (is_resource($fp)) {\n            $this->fp = $fp;\n\n            return true;\n        } elseif (preg_match('/^[a-z]+:\\/\\//i', substr($fp, 0, 10))) {\n            // see if it's an absolute URL (has a scheme at the beginning)\n            return $this->setInputFile($fp);\n        } elseif (file_exists($fp)) {\n            // see if it's a local file\n            return $this->setInputFile($fp);\n        } else {\n            // it must be a string\n            $this->fp = $fp;\n\n            return true;\n        }\n\n        return $this->raiseError('Illegal input format',\n            XML_PARSER_ERROR_INVALID_INPUT);\n    }\n\n    // }}}\n    // {{{ parse()\n\n    /**\n     * Central parsing function.\n     *\n     * @return bool|PEAR_Error returns true on success, or a PEAR_Error otherwise\n     * @access public\n     */\n    public function parse()\n    {\n        /**\n         * reset the parser\n         */\n        $result = $this->reset();\n        if ($this->isError($result)) {\n            return $result;\n        }\n        // if $this->fp was fopened previously\n        if (is_resource($this->fp)) {\n\n            while ($data = fread($this->fp, 4096)) {\n                if (!$this->_parseString($data, feof($this->fp))) {\n                    $error = &$this->raiseError();\n                    $this->free();\n\n                    return $error;\n                }\n            }\n        } else {\n            // otherwise, $this->fp must be a string\n            if (!$this->_parseString($this->fp, true)) {\n                $error = &$this->raiseError();\n                $this->free();\n\n                return $error;\n            }\n        }\n        $this->free();\n\n        return true;\n    }\n\n    /**\n     * XML_Parser::_parseString()\n     *\n     * @param string $data data\n     * @param bool   $eof  end-of-file flag\n     *\n     * @return bool\n     * @access private\n     * @see parseString()\n     **/\n    public function _parseString($data, $eof = false)\n    {\n        return xml_parse($this->parser, $data, $eof);\n    }\n\n    // }}}\n    // {{{ parseString()\n\n    /**\n     * XML_Parser::parseString()\n     *\n     * Parses a string.\n     *\n     * @param string  $data XML data\n     * @param boolean $eof  If set and TRUE, data is the last piece\n     *                      of data sent in this parser\n     *\n     * @return bool|PEAR_Error  true on success or a PEAR Error\n     * @throws XML_Parser_Error\n     * @see _parseString()\n     */\n    public function parseString($data, $eof = false)\n    {\n        if (!isset($this->parser) || !is_resource($this->parser)) {\n            $this->reset();\n        }\n\n        if (!$this->_parseString($data, $eof)) {\n            $error = &$this->raiseError();\n            $this->free();\n\n            return $error;\n        }\n\n        if ($eof === true) {\n            $this->free();\n        }\n\n        return true;\n    }\n\n    /**\n     * XML_Parser::free()\n     *\n     * Free the internal resources associated with the parser\n     *\n     * @return null\n     **/\n    public function free()\n    {\n        if (isset($this->parser) && is_resource($this->parser)) {\n            xml_parser_free($this->parser);\n            unset( $this->parser );\n        }\n        if (isset($this->fp) && is_resource($this->fp)) {\n            fclose($this->fp);\n        }\n        unset($this->fp);\n\n        return null;\n    }\n\n    /**\n     * XML_Parser::raiseError()\n     *\n     * Throws a XML_Parser_Error\n     *\n     * @param string  $msg   the error message\n     * @param integer $ecode the error message code\n     *\n     * @return XML_Parser_Error reference to the error object\n     **/\n    function &raiseError($message = NULL, $ecode = NULL, $mode = NULL, $options = NULL, $userinfo = NULL, $error_class = NULL, $skipmsg = false)\n    {\n        $msg = !is_null($msg) ? $msg : $this->parser;\n        $err = new XML_Parser_Error($msg, $ecode);\n\n        return parent::raiseError($err);\n    }\n\n    // }}}\n    // {{{ funcStartHandler()\n\n    /**\n     * derives and calls the Start Handler function\n     *\n     * @param mixed $xp      ??\n     * @param mixed $elem    ??\n     * @param mixed $attribs ??\n     *\n     * @return void\n     */\n    public function funcStartHandler($xp, $elem, $attribs)\n    {\n        $func = 'xmltag_' . $elem;\n        $func = str_replace(array('.', '-', ':'), '_', $func);\n        if (method_exists($this->_handlerObj, $func)) {\n            call_user_func(array(&$this->_handlerObj, $func), $xp, $elem, $attribs);\n        } elseif (method_exists($this->_handlerObj, 'xmltag')) {\n            call_user_func(array(&$this->_handlerObj, 'xmltag'),\n                $xp, $elem, $attribs);\n        }\n    }\n\n    // }}}\n    // {{{ funcEndHandler()\n\n    /**\n     * derives and calls the End Handler function\n     *\n     * @param mixed $xp   ??\n     * @param mixed $elem ??\n     *\n     * @return void\n     */\n    public function funcEndHandler($xp, $elem)\n    {\n        $func = 'xmltag_' . $elem . '_';\n        $func = str_replace(array('.', '-', ':'), '_', $func);\n        if (method_exists($this->_handlerObj, $func)) {\n            call_user_func(array(&$this->_handlerObj, $func), $xp, $elem);\n        } elseif (method_exists($this->_handlerObj, 'xmltag_')) {\n            call_user_func(array(&$this->_handlerObj, 'xmltag_'), $xp, $elem);\n        }\n    }\n\n    // }}}\n    // {{{ startHandler()\n\n    /**\n     * abstract method signature for Start Handler\n     *\n     * @param mixed $xp       ??\n     * @param mixed $elem     ??\n     * @param mixed &$attribs ??\n     *\n     * @return null\n     * @abstract\n     */\n    public function startHandler($xp, $elem, &$attribs)\n    {\n        return null;\n    }\n\n    // }}}\n    // {{{ endHandler()\n\n    /**\n     * abstract method signature for End Handler\n     *\n     * @param mixed $xp   ??\n     * @param mixed $elem ??\n     *\n     * @return null\n     * @abstract\n     */\n    public function endHandler($xp, $elem)\n    {\n        return null;\n    }\n\n    // }}}me\n}\n\n/**\n * error class, replaces PEAR_Error\n *\n * An instance of this class will be returned\n * if an error occurs inside XML_Parser.\n *\n * There are three advantages over using the standard PEAR_Error:\n * - All messages will be prefixed\n * - check for XML_Parser error, using is_a( $error, 'XML_Parser_Error' )\n * - messages can be generated from the xml_parser resource\n *\n * @category  XML\n * @package   XML_Parser\n * @author    Stig Bakken <ssb@fast.no>\n * @author    Tomas V.V.Cox <cox@idecnet.com>\n * @author    Stephan Schmidt <schst@php.net>\n * @copyright 2002-2008 The PHP Group\n * @license   http://opensource.org/licenses/bsd-license New BSD License\n * @version   Release: @package_version@\n * @link      http://pear.php.net/package/XML_Parser\n * @see       PEAR_Error\n */\nclass XML_Parser_Error extends PEAR_Error\n{\n    // {{{ properties\n\n    /**\n    * prefix for all messages\n    *\n    * @var      string\n    */\n    public $error_message_prefix = 'XML_Parser: ';\n\n    // }}}\n    // {{{ constructor()\n    /**\n    * construct a new error instance\n    *\n    * You may either pass a message or an xml_parser resource as first\n    * parameter. If a resource has been passed, the last error that\n    * happened will be retrieved and returned.\n    *\n    * @param string|resource $msgorparser message or parser resource\n    * @param integer         $code        error code\n    * @param integer         $mode        error handling\n    * @param integer         $level       error level\n    *\n    * @access   public\n    * @todo PEAR CS - can't meet 85char line limit without arg refactoring\n    */\n    public function XML_Parser_Error($msgorparser = 'unknown error', $code = 0, $mode = PEAR_ERROR_RETURN, $level = E_USER_NOTICE)\n    {\n        if (is_resource($msgorparser)) {\n            $code        = xml_get_error_code($msgorparser);\n            $msgorparser = sprintf('%s at XML input line %d:%d',\n                xml_error_string($code),\n                xml_get_current_line_number($msgorparser),\n                xml_get_current_column_number($msgorparser));\n        }\n        $this->PEAR_Error($msgorparser, $code, $mode, $level);\n    }\n    // }}}\n}\n"
  },
  {
    "path": "newscoop/include/XML/Serializer.php",
    "content": "<?PHP\n/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */\n\n/**\n * XML_Serializer\n *\n * Creates XML documents from PHP data structures like arrays, objects or scalars.\n *\n * PHP versions 4 and 5\n *\n * LICENSE:\n *\n * Copyright (c) 2003-2008 Stephan Schmidt <schst@php.net>\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions\n * are met:\n *\n *    * Redistributions of source code must retain the above copyright\n *      notice, this list of conditions and the following disclaimer.\n *    * Redistributions in binary form must reproduce the above copyright\n *      notice, this list of conditions and the following disclaimer in the\n *      documentation and/or other materials provided with the distribution.\n *    * The name of the author may not be used to endorse or promote products\n *      derived from this software without specific prior written permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS\n * IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,\n * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR\n * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,\n * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,\n * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR\n * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\n * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\n * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * @category  XML\n * @package   XML_Serializer\n * @author    Stephan Schmidt <schst@php.net>\n * @copyright 2003-2008 Stephan Schmidt <schst@php.net>\n * @license   http://opensource.org/licenses/bsd-license New BSD License\n * @version   CVS: $Id: Serializer.php,v 1.61 2009/06/12 02:11:44 ashnazg Exp $\n * @link      http://pear.php.net/package/XML_Serializer\n * @see       XML_Unserializer\n */\n\n/**\n * uses PEAR error management\n */\nrequire_once 'PEAR.php';\n\n/**\n * uses XML_Util to create XML tags\n */\nrequire_once 'XML/Util.php';\n\n/**\n * option: string used for indentation\n *\n * Possible values:\n * - any string (default is any string)\n */\ndefine('XML_SERIALIZER_OPTION_INDENT', 'indent');\n\n/**\n * option: string used for linebreaks\n *\n * Possible values:\n * - any string (default is \\n)\n */\ndefine('XML_SERIALIZER_OPTION_LINEBREAKS', 'linebreak');\n\n/**\n * option: enable type hints\n *\n * Possible values:\n * - true\n * - false\n */\ndefine('XML_SERIALIZER_OPTION_TYPEHINTS', 'typeHints');\n\n/**\n * option: add an XML declaration\n *\n * Possible values:\n * - true\n * - false\n */\ndefine('XML_SERIALIZER_OPTION_XML_DECL_ENABLED', 'addDecl');\n\n/**\n * option: encoding of the document\n *\n * Possible values:\n * - any valid encoding\n * - null (default)\n */\ndefine('XML_SERIALIZER_OPTION_XML_ENCODING', 'encoding');\n\n/**\n * option: default name for tags\n *\n * Possible values:\n * - any string (XML_Serializer_Tag is default)\n */\ndefine('XML_SERIALIZER_OPTION_DEFAULT_TAG', 'defaultTagName');\n\n/**\n * option: use classname for objects in indexed arrays\n *\n * Possible values:\n * - true\n * - false (default)\n */\ndefine('XML_SERIALIZER_OPTION_CLASSNAME_AS_TAGNAME', 'classAsTagName');\n\n/**\n * option: attribute where original key is stored\n *\n * Possible values:\n * - any string (default is _originalKey)\n */\ndefine('XML_SERIALIZER_OPTION_ATTRIBUTE_KEY', 'keyAttribute');\n\n/**\n * option: attribute for type (only if typeHints => true)\n *\n * Possible values:\n * - any string (default is _type)\n */\ndefine('XML_SERIALIZER_OPTION_ATTRIBUTE_TYPE', 'typeAttribute');\n\n/**\n * option: attribute for class (only if typeHints => true)\n *\n * Possible values:\n * - any string (default is _class)\n */\ndefine('XML_SERIALIZER_OPTION_ATTRIBUTE_CLASS', 'classAttribute');\n\n/**\n * option: scalar values (strings, ints,..) will be serialized as attribute\n *\n * Possible values:\n * - true\n * - false (default)\n * - array which sets this option on a per-tag basis\n */\ndefine('XML_SERIALIZER_OPTION_SCALAR_AS_ATTRIBUTES', 'scalarAsAttributes');\n\n/**\n * option: prepend string for attributes\n *\n * Possible values:\n * - any string (default is any string)\n */\ndefine('XML_SERIALIZER_OPTION_PREPEND_ATTRIBUTES', 'prependAttributes');\n\n/**\n * option: indent the attributes, if set to '_auto',\n * it will indent attributes so they all start at the same column\n *\n * Possible values:\n * - true\n * - false (default)\n * - '_auto'\n */\ndefine('XML_SERIALIZER_OPTION_INDENT_ATTRIBUTES', 'indentAttributes');\n\n/**\n * option: use 'simplexml' to use parent name as tagname\n * if transforming an indexed array\n *\n * Possible values:\n * - XML_SERIALIZER_MODE_DEFAULT (default)\n * - XML_SERIALIZER_MODE_SIMPLEXML\n */\ndefine('XML_SERIALIZER_OPTION_MODE', 'mode');\n\n/**\n * option: add a doctype declaration\n *\n * Possible values:\n * - true\n * - false (default)\n */\ndefine('XML_SERIALIZER_OPTION_DOCTYPE_ENABLED', 'addDoctype');\n\n/**\n * option: supply a string or an array with id and uri\n * ({@see XML_Util::getDoctypeDeclaration()}\n *\n * Possible values:\n * - string\n * - array\n */\ndefine('XML_SERIALIZER_OPTION_DOCTYPE', 'doctype');\n\n/**\n * option: name of the root tag\n *\n * Possible values:\n * - string\n * - null (default)\n */\ndefine('XML_SERIALIZER_OPTION_ROOT_NAME', 'rootName');\n\n/**\n * option: attributes of the root tag\n *\n * Possible values:\n * - array\n */\ndefine('XML_SERIALIZER_OPTION_ROOT_ATTRIBS', 'rootAttributes');\n\n/**\n * option: all values in this key will be treated as attributes\n *\n * Possible values:\n * - string\n */\ndefine('XML_SERIALIZER_OPTION_ATTRIBUTES_KEY', 'attributesArray');\n\n/**\n * option: this value will be used directly as content,\n * instead of creating a new tag, may only be used\n * in conjuction with attributesArray\n *\n * Possible values:\n * - string\n * - null (default)\n */\ndefine('XML_SERIALIZER_OPTION_CONTENT_KEY', 'contentName');\n\n/**\n * option: this value will be used in a comment, instead of creating a new tag\n *\n * Possible values:\n * - string\n * - null (default)\n */\ndefine('XML_SERIALIZER_OPTION_COMMENT_KEY', 'commentName');\n\n/**\n * option: tag names that will be changed\n *\n * Possible values:\n * - array\n */\ndefine('XML_SERIALIZER_OPTION_TAGMAP', 'tagMap');\n\n/**\n * option: function that will be applied before serializing\n *\n * Possible values:\n * - any valid PHP callback\n */\ndefine('XML_SERIALIZER_OPTION_ENCODE_FUNC', 'encodeFunction');\n\n/**\n * option: namespace to use for the document\n *\n * Possible values:\n * - string\n * - null (default)\n */\ndefine('XML_SERIALIZER_OPTION_NAMESPACE', 'namespace');\n\n/**\n * option: type of entities to replace\n *\n * Possible values:\n * - XML_SERIALIZER_ENTITIES_NONE\n * - XML_SERIALIZER_ENTITIES_XML (default)\n * - XML_SERIALIZER_ENTITIES_XML_REQUIRED\n * - XML_SERIALIZER_ENTITIES_HTML\n */\ndefine('XML_SERIALIZER_OPTION_ENTITIES', 'replaceEntities');\n\n/**\n * option: whether to return the result of the serialization from serialize()\n *\n * Possible values:\n * - true\n * - false (default)\n */\ndefine('XML_SERIALIZER_OPTION_RETURN_RESULT', 'returnResult');\n\n/**\n * option: whether to ignore properties that are set to null\n *\n * Possible values:\n * - true\n * - false (default)\n */\ndefine('XML_SERIALIZER_OPTION_IGNORE_NULL', 'ignoreNull');\n\n/**\n * option: whether to use cdata sections for character data\n *\n * Possible values:\n * - true\n * - false (default)\n */\ndefine('XML_SERIALIZER_OPTION_CDATA_SECTIONS', 'cdata');\n\n/**\n * option: whether a boolean FALSE value should become a string\n *\n * Possible values:\n * - true\n * - false (default)\n *\n * @since 0.20.0\n */\ndefine('XML_SERIALIZER_OPTION_FALSE_AS_STRING', 'falseAsString');\n\n/**\n * default mode\n */\ndefine('XML_SERIALIZER_MODE_DEFAULT', 'default');\n\n/**\n * SimpleXML mode\n *\n * When serializing indexed arrays, the key of the parent value is used as a tagname.\n */\ndefine('XML_SERIALIZER_MODE_SIMPLEXML', 'simplexml');\n\n/**\n * error code for no serialization done\n */\ndefine('XML_SERIALIZER_ERROR_NO_SERIALIZATION', 51);\n\n/**\n * do not replace entitites\n */\ndefine('XML_SERIALIZER_ENTITIES_NONE', XML_UTIL_ENTITIES_NONE);\n\n/**\n * replace all XML entitites\n * This setting will replace <, >, \", ' and &\n */\ndefine('XML_SERIALIZER_ENTITIES_XML', XML_UTIL_ENTITIES_XML);\n\n/**\n * replace only required XML entitites\n * This setting will replace <, \" and &\n */\ndefine('XML_SERIALIZER_ENTITIES_XML_REQUIRED', XML_UTIL_ENTITIES_XML_REQUIRED);\n\n/**\n * replace HTML entitites\n * @link    http://www.php.net/htmlentities\n */\ndefine('XML_SERIALIZER_ENTITIES_HTML', XML_UTIL_ENTITIES_HTML);\n\n/**\n * Creates XML documents from PHP data structures like arrays, objects or scalars.\n *\n * This class can be used in two modes:\n *\n *  1. Create an XML document from an array or object that is processed by other\n *    applications. That means you can create an RDF document from an array in the\n *    following format:\n *    <code>\n *    $data = array(\n *        'channel' => array(\n *            'title' => 'Example RDF channel',\n *            'link'  => 'http://www.php-tools.de',\n *            'image' => array(\n *                'title' => 'Example image',\n *                'url'   => 'http://www.php-tools.de/image.gif',\n *                'link'  => 'http://www.php-tools.de'\n *            ),\n *            array(\n *                'title' => 'Example item',\n *                'link'  => 'http://example.com'\n *            ),\n *            array(\n *                'title' => 'Another Example item',\n *                'link'  => 'http://example.org'\n *            )\n *        )\n *    );\n *    </code>\n *\n *    To create an RDF document from this array, do the following:\n *\n *    <code>\n *    require_once 'XML/Serializer.php';\n *    $options = array(\n *       XML_SERIALIZER_OPTION_INDENT      => \"\\t\",     // indent with tabs\n *       XML_SERIALIZER_OPTION_LINEBREAKS  => \"\\n\",     // use UNIX line breaks\n *       XML_SERIALIZER_OPTION_ROOT_NAME   => 'rdf:RDF',// root tag\n *       XML_SERIALIZER_OPTION_DEFAULT_TAG => 'item'    // tag for values\n *                                                      // with numeric keys\n *    );\n *    $serializer = new XML_Serializer($options);\n *    $rdf        = $serializer->serialize($data);\n *    </code>\n *\n *    You will get a complete XML document that can be processed like any RDF document.\n *\n * 2. This class can be used to serialize any data structure in a way that it can\n *    later be unserialized again.  XML_Serializer will store the type of the value\n *    and additional meta information in attributes of the surrounding tag. This\n *    meta information can later be used to restore the original data structure\n *    in PHP. If you want XML_Serializer to add meta information to the tags, add\n *    <code>\n *      XML_SERIALIZER_OPTION_TYPEHINTS => true\n *    </code>\n *    to the options array in the constructor.\n *\n * @category  XML\n * @package   XML_Serializer\n * @author    Stephan Schmidt <schst@php.net>\n * @copyright 2003-2008 Stephan Schmidt <schst@php.net>\n * @license   http://opensource.org/licenses/bsd-license New BSD License\n * @version   Release: 0.20.0\n * @link      http://pear.php.net/package/XML_Serializer\n * @see       XML_Unserializer\n * @todo      replace extending PEAR class with instead using a PEAR_Error object\n */\nclass XML_Serializer extends PEAR\n{\n    /**\n     * List of all available options\n     *\n     * @access private\n     * @var    array\n     */\n    var $_knownOptions = array(\n        XML_SERIALIZER_OPTION_INDENT,\n        XML_SERIALIZER_OPTION_LINEBREAKS,\n        XML_SERIALIZER_OPTION_TYPEHINTS,\n        XML_SERIALIZER_OPTION_XML_DECL_ENABLED,\n        XML_SERIALIZER_OPTION_XML_ENCODING,\n        XML_SERIALIZER_OPTION_DEFAULT_TAG,\n        XML_SERIALIZER_OPTION_CLASSNAME_AS_TAGNAME,\n        XML_SERIALIZER_OPTION_ATTRIBUTE_KEY,\n        XML_SERIALIZER_OPTION_ATTRIBUTE_TYPE,\n        XML_SERIALIZER_OPTION_ATTRIBUTE_CLASS,\n        XML_SERIALIZER_OPTION_SCALAR_AS_ATTRIBUTES,\n        XML_SERIALIZER_OPTION_PREPEND_ATTRIBUTES,\n        XML_SERIALIZER_OPTION_INDENT_ATTRIBUTES,\n        XML_SERIALIZER_OPTION_MODE,\n        XML_SERIALIZER_OPTION_DOCTYPE_ENABLED,\n        XML_SERIALIZER_OPTION_DOCTYPE,\n        XML_SERIALIZER_OPTION_ROOT_NAME,\n        XML_SERIALIZER_OPTION_ROOT_ATTRIBS,\n        XML_SERIALIZER_OPTION_ATTRIBUTES_KEY,\n        XML_SERIALIZER_OPTION_CONTENT_KEY,\n        XML_SERIALIZER_OPTION_COMMENT_KEY,\n        XML_SERIALIZER_OPTION_TAGMAP,\n        XML_SERIALIZER_OPTION_ENCODE_FUNC,\n        XML_SERIALIZER_OPTION_NAMESPACE,\n        XML_SERIALIZER_OPTION_ENTITIES,\n        XML_SERIALIZER_OPTION_RETURN_RESULT,\n        XML_SERIALIZER_OPTION_IGNORE_NULL,\n        XML_SERIALIZER_OPTION_CDATA_SECTIONS,\n    );\n\n    /**\n     * Default options for the serialization\n     *\n     * @access private\n     * @var    array\n     */\n    var $_defaultOptions = array(\n\n        // string used for indentation\n        XML_SERIALIZER_OPTION_INDENT => '',\n\n        // string used for newlines\n        XML_SERIALIZER_OPTION_LINEBREAKS => \"\\n\",\n\n        // automatically add type hin attributes\n        XML_SERIALIZER_OPTION_TYPEHINTS => false,\n\n        // add an XML declaration\n        XML_SERIALIZER_OPTION_XML_DECL_ENABLED => false,\n\n        // encoding specified in the XML declaration\n        XML_SERIALIZER_OPTION_XML_ENCODING => null,\n\n        // tag used for indexed arrays or invalid names\n        XML_SERIALIZER_OPTION_DEFAULT_TAG => 'XML_Serializer_Tag',\n\n        // use classname for objects in indexed arrays\n        XML_SERIALIZER_OPTION_CLASSNAME_AS_TAGNAME => false,\n\n        // attribute where original key is stored\n        XML_SERIALIZER_OPTION_ATTRIBUTE_KEY => '_originalKey',\n\n        // attribute for type (only if typeHints => true)\n        XML_SERIALIZER_OPTION_ATTRIBUTE_TYPE => '_type',\n\n        // attribute for class of objects (only if typeHints => true)\n        XML_SERIALIZER_OPTION_ATTRIBUTE_CLASS => '_class',\n\n        // scalar values (strings, ints,..) will be serialized as attribute\n        XML_SERIALIZER_OPTION_SCALAR_AS_ATTRIBUTES => false,\n\n        // prepend string for attributes\n        XML_SERIALIZER_OPTION_PREPEND_ATTRIBUTES => '',\n\n        // indent the attributes, if set to '_auto',\n        // it will indent attributes so they all start at the same column\n        XML_SERIALIZER_OPTION_INDENT_ATTRIBUTES => false,\n\n        // use XML_SERIALIZER_MODE_SIMPLEXML to use parent name as tagname\n        // if transforming an indexed array\n        XML_SERIALIZER_OPTION_MODE => XML_SERIALIZER_MODE_DEFAULT,\n\n        // add a doctype declaration\n        XML_SERIALIZER_OPTION_DOCTYPE_ENABLED => false,\n\n        // supply a string or an array with id and uri\n        // ({@see XML_Util::getDoctypeDeclaration()}\n        XML_SERIALIZER_OPTION_DOCTYPE => null,\n\n        // name of the root tag\n        XML_SERIALIZER_OPTION_ROOT_NAME => null,\n\n        // attributes of the root tag\n        XML_SERIALIZER_OPTION_ROOT_ATTRIBS => array(),\n\n        // all values in this key will be treated as attributes\n        XML_SERIALIZER_OPTION_ATTRIBUTES_KEY => null,\n\n        // this value will be used directly as content,\n        // instead of creating a new tag, may only be used\n        // in conjuction with attributesArray\n        XML_SERIALIZER_OPTION_CONTENT_KEY => null,\n\n        // this value will be used directly as comment,\n        // instead of creating a new tag, may only be used\n        // in conjuction with attributesArray\n        XML_SERIALIZER_OPTION_COMMENT_KEY => null,\n\n        // tag names that will be changed\n        XML_SERIALIZER_OPTION_TAGMAP => array(),\n\n        // function that will be applied before serializing\n        XML_SERIALIZER_OPTION_ENCODE_FUNC => null,\n\n        // namespace to use\n        XML_SERIALIZER_OPTION_NAMESPACE => null,\n\n        // type of entities to replace,\n        XML_SERIALIZER_OPTION_ENTITIES => XML_SERIALIZER_ENTITIES_XML,\n\n        // serialize() returns the result of the serialization instead of true\n        XML_SERIALIZER_OPTION_RETURN_RESULT => false,\n\n        // ignore properties that are set to null\n        XML_SERIALIZER_OPTION_IGNORE_NULL => false,\n\n        // Whether to use cdata sections for plain character data\n        XML_SERIALIZER_OPTION_CDATA_SECTIONS => false,\n\n        // Whether to convert a boolean FALSE into a string\n        XML_SERIALIZER_OPTION_FALSE_AS_STRING => false,\n    );\n\n    /**\n     * Options for the serialization\n     *\n     * @access public\n     * @var    array\n     */\n    var $options = array();\n\n    /**\n     * Current tag depth\n     *\n     * @access private\n     * @var    integer\n     */\n    var $_tagDepth = 0;\n\n    /**\n     * Serialized representation of the data\n     *\n     * @access private\n     * @var    string\n     */\n    var $_serializedData = null;\n\n    /**\n     * Constructor\n     *\n     * @param mixed $options array containing options for the serialization\n     *\n     * @access public\n     */\n    function XML_Serializer( $options = null )\n    {\n        $this->PEAR();\n        if (is_array($options)) {\n            $this->options = array_merge($this->_defaultOptions, $options);\n        } else {\n            $this->options = $this->_defaultOptions;\n        }\n    }\n\n    /**\n     * Return the package version number\n     *\n     * @access public\n     * @static\n     * @return string the version number of XML_Serializer\n     */\n    function apiVersion()\n    {\n        return '0.20.0';\n    }\n\n    /**\n     * Reset all options to default options\n     *\n     * @return void\n     * @access public\n     */\n    function resetOptions()\n    {\n        $this->options = $this->_defaultOptions;\n    }\n\n    /**\n     * Set an option\n     *\n     * You can use this method if you do not want\n     * to set all options in the constructor.\n     *\n     * @param string $name  option name\n     * @param mixed  $value option value\n     *\n     * @return void\n     * @access public\n     */\n    function setOption($name, $value)\n    {\n        $this->options[$name] = $value;\n    }\n\n    /**\n     * Sets several options at once\n     *\n     * You can use this method if you do not want\n     * to set all options in the constructor.\n     *\n     * @param array $options options array\n     *\n     * @return void\n     * @access public\n     */\n    function setOptions($options)\n    {\n        $this->options = array_merge($this->options, $options);\n    }\n\n    /**\n     * serialize data\n     *\n     * @param mixed $data    data to serialize\n     * @param array $options options array\n     *\n     * @return boolean true on success, pear error on failure\n     * @access public\n     * @uses XML_Util::getDoctypeDeclaration()\n     * @uses XML_Util::getXMLDeclaration()\n     * @internal uses error suppression \"@settype()\"\n     */\n    function serialize($data, $options = null)\n    {\n        // if options have been specified, use them instead\n        // of the previously defined ones\n        if (is_array($options)) {\n            $optionsBak = $this->options;\n            if (isset($options['overrideOptions'])\n                && $options['overrideOptions'] == true\n            ) {\n                $this->options = array_merge($this->_defaultOptions, $options);\n            } else {\n                $this->options = array_merge($this->options, $options);\n            }\n        } else {\n            $optionsBak = null;\n        }\n\n        //  start depth is zero\n        $this->_tagDepth = 0;\n\n        $rootAttributes = $this->options[XML_SERIALIZER_OPTION_ROOT_ATTRIBS];\n        if (isset($this->options[XML_SERIALIZER_OPTION_NAMESPACE])\n            && is_array($this->options[XML_SERIALIZER_OPTION_NAMESPACE])\n        ) {\n            $rootAttributes['xmlns:'\n                . $this->options[XML_SERIALIZER_OPTION_NAMESPACE][0]] =\n                $this->options[XML_SERIALIZER_OPTION_NAMESPACE][1];\n        }\n\n        $this->_serializedData = '';\n        // serialize an array\n        if (is_array($data)) {\n            if (isset($this->options[XML_SERIALIZER_OPTION_ROOT_NAME])) {\n                $tagName = $this->options[XML_SERIALIZER_OPTION_ROOT_NAME];\n            } else {\n                $tagName = 'array';\n            }\n\n            $this->_serializedData .=\n                $this->_serializeArray($data, $tagName, $rootAttributes);\n        } elseif (is_object($data)) {\n            // serialize an object\n            if (isset($this->options[XML_SERIALIZER_OPTION_ROOT_NAME])) {\n                $tagName = $this->options[XML_SERIALIZER_OPTION_ROOT_NAME];\n            } else {\n                $tagName = get_class($data);\n            }\n            $this->_serializedData .=\n                $this->_serializeObject($data, $tagName, $rootAttributes);\n        } else {\n            $tag = array();\n            if (isset($this->options[XML_SERIALIZER_OPTION_ROOT_NAME])) {\n                $tag['qname'] = $this->options[XML_SERIALIZER_OPTION_ROOT_NAME];\n            } else {\n                $tag['qname'] = gettype($data);\n            }\n            $tagName = $tag['qname'];\n            if ($this->options[XML_SERIALIZER_OPTION_TYPEHINTS] === true) {\n                $rootAttributes[$this->\n                    options[XML_SERIALIZER_OPTION_ATTRIBUTE_TYPE]] = gettype($data);\n            }\n\n            if (!is_bool($data)) {\n                $tag['content'] = $data;\n            } elseif ($data === false) {\n                if ($this->options[XML_SERIALIZER_OPTION_FALSE_AS_STRING] === true) {\n                    $tag['content'] = '0';\n                } else {\n                    $tag['content'] = '';\n                }\n            } else {\n                $tag['content'] = $data;\n            }\n\n            @settype($data, 'string');\n            $tag['attributes']     = $rootAttributes;\n            $this->_serializedData = $this->_createXMLTag($tag);\n        }\n\n        // add doctype declaration\n        if ($this->options[XML_SERIALIZER_OPTION_DOCTYPE_ENABLED] === true) {\n            $this->_serializedData =\n                XML_Util::getDoctypeDeclaration($tagName,\n                $this->options[XML_SERIALIZER_OPTION_DOCTYPE])\n                . $this->options[XML_SERIALIZER_OPTION_LINEBREAKS]\n                . $this->_serializedData;\n        }\n\n        //  build xml declaration\n        if ($this->options[XML_SERIALIZER_OPTION_XML_DECL_ENABLED]) {\n            $atts                  = array();\n            $this->_serializedData = XML_Util::getXMLDeclaration('1.0',\n                $this->options[XML_SERIALIZER_OPTION_XML_ENCODING])\n                . $this->options[XML_SERIALIZER_OPTION_LINEBREAKS]\n                . $this->_serializedData;\n        }\n\n        if ($this->options[XML_SERIALIZER_OPTION_RETURN_RESULT] === true) {\n            $result = $this->_serializedData;\n        } else {\n            $result = true;\n        }\n\n        if ($optionsBak !== null) {\n            $this->options = $optionsBak;\n        }\n\n        return $result;\n    }\n\n    /**\n     * get the result of the serialization\n     *\n     * @access public\n     * @return string serialized XML\n     */\n    function getSerializedData()\n    {\n        if ($this->_serializedData == null) {\n            return $this->raiseError('No serialized data available. '\n                . 'Use XML_Serializer::serialize() first.',\n                XML_SERIALIZER_ERROR_NO_SERIALIZATION);\n        }\n        return $this->_serializedData;\n    }\n\n    /**\n     * serialize any value\n     *\n     * This method checks for the type of the value and calls the appropriate method\n     *\n     * @param mixed  $value      tag value\n     * @param string $tagName    tag name\n     * @param array  $attributes attributes\n     *\n     * @return string\n     * @access private\n     */\n    function _serializeValue($value, $tagName = null, $attributes = array())\n    {\n        if (is_array($value)) {\n            $xml = $this->_serializeArray($value, $tagName, $attributes);\n        } elseif (is_object($value)) {\n            $xml = $this->_serializeObject($value, $tagName);\n        } else {\n            $tag = array(\n                          'qname'      => $tagName,\n                          'attributes' => $attributes,\n                          'content'    => $value\n                        );\n            $xml = $this->_createXMLTag($tag);\n        }\n        return $xml;\n    }\n\n    /**\n     * serialize an array\n     *\n     * @param array  &$array     array to serialize\n     * @param string $tagName    name of the root tag\n     * @param array  $attributes attributes for the root tag\n     *\n     * @return string $string serialized data\n     * @access private\n     * @uses XML_Util::isValidName() to check, whether key has to be substituted\n     * @uses XML_Util::replaceEntities()\n     * @uses XML_Util::createComment()\n     * @uses PEAR::popExpect()\n     * @uses PEAR::expectError()\n     */\n    function _serializeArray(&$array, $tagName = null, $attributes = array())\n    {\n        $_content = null;\n        $_comment = null;\n\n        // check for comment\n        if ($this->options[XML_SERIALIZER_OPTION_COMMENT_KEY] !== null) {\n            if (isset($array[$this->options[XML_SERIALIZER_OPTION_COMMENT_KEY]])\n            ) {\n                $_comment =\n                    $array[$this->options[XML_SERIALIZER_OPTION_COMMENT_KEY]];\n                unset($array[$this->options[XML_SERIALIZER_OPTION_COMMENT_KEY]]);\n            }\n        }\n\n        /**\n         * check for special attributes\n         */\n        if ($this->options[XML_SERIALIZER_OPTION_ATTRIBUTES_KEY] !== null) {\n            if (isset($array[$this->options[XML_SERIALIZER_OPTION_ATTRIBUTES_KEY]])\n            ) {\n                $attributes =\n                    $array[$this->options[XML_SERIALIZER_OPTION_ATTRIBUTES_KEY]];\n                unset($array[$this->options[XML_SERIALIZER_OPTION_ATTRIBUTES_KEY]]);\n            }\n            /**\n             * check for special content\n             */\n            if ($this->options[XML_SERIALIZER_OPTION_CONTENT_KEY] !== null) {\n                if (isset($array[$this->options[XML_SERIALIZER_OPTION_CONTENT_KEY]])\n                ) {\n                    $_content =\n                        XML_Util::replaceEntities($array\n                        [$this->options[XML_SERIALIZER_OPTION_CONTENT_KEY]]);\n                    unset($array[$this->options[XML_SERIALIZER_OPTION_CONTENT_KEY]]);\n                }\n            }\n        }\n\n        if ($this->options[XML_SERIALIZER_OPTION_IGNORE_NULL] === true) {\n            foreach (array_keys($array) as $key) {\n                if (is_null($array[$key])) {\n                    unset($array[$key]);\n                }\n            }\n        }\n\n        /*\n        * if mode is set to simpleXML, check whether\n        * the array is associative or indexed\n        */\n        if (is_array($array) && !empty($array)\n            && $this->options[XML_SERIALIZER_OPTION_MODE]\n            == XML_SERIALIZER_MODE_SIMPLEXML\n        ) {\n            $indexed = true;\n            foreach ($array as $key => $val) {\n                if (!is_int($key)) {\n                    $indexed = false;\n                    break;\n                }\n            }\n\n            if ($indexed\n                && $this->options[XML_SERIALIZER_OPTION_MODE]\n                == XML_SERIALIZER_MODE_SIMPLEXML\n            ) {\n                $string = '';\n                foreach ($array as $key => $val) {\n                    $string .= $this->_serializeValue($val, $tagName, $attributes);\n\n                    $string .= $this->options[XML_SERIALIZER_OPTION_LINEBREAKS];\n                    // do indentation\n                    if ($this->options[XML_SERIALIZER_OPTION_INDENT]!==null\n                        && $this->_tagDepth>0\n                    ) {\n                        $string .=\n                            str_repeat($this->options[XML_SERIALIZER_OPTION_INDENT],\n                            $this->_tagDepth);\n                    }\n                }\n                return rtrim($string);\n            }\n        }\n\n        $scalarAsAttributes = false;\n        if (is_array($this->options[XML_SERIALIZER_OPTION_SCALAR_AS_ATTRIBUTES])\n            && isset($this->options[XML_SERIALIZER_OPTION_SCALAR_AS_ATTRIBUTES]\n            [$tagName])\n        ) {\n            $scalarAsAttributes =\n                $this->options[XML_SERIALIZER_OPTION_SCALAR_AS_ATTRIBUTES][$tagName];\n        } elseif ($this->options[XML_SERIALIZER_OPTION_SCALAR_AS_ATTRIBUTES] === true\n        ) {\n            $scalarAsAttributes = true;\n        }\n\n        if ($scalarAsAttributes === true) {\n            $this->expectError('*');\n            foreach ($array as $key => $value) {\n                if (is_scalar($value) && (XML_Util::isValidName($key) === true)) {\n                    unset($array[$key]);\n                    $attributes[$this->options\n                        [XML_SERIALIZER_OPTION_PREPEND_ATTRIBUTES].$key] = $value;\n                }\n            }\n            $this->popExpect();\n        } elseif (is_array($scalarAsAttributes)) {\n            $this->expectError('*');\n            foreach ($scalarAsAttributes as $key) {\n                if (!isset($array[$key])) {\n                    continue;\n                }\n                $value = $array[$key];\n                if (is_scalar($value) && (XML_Util::isValidName($key) === true)) {\n                    unset($array[$key]);\n                    $attributes[$this->options\n                        [XML_SERIALIZER_OPTION_PREPEND_ATTRIBUTES].$key] = $value;\n                }\n            }\n            $this->popExpect();\n        }\n\n        // check for empty array => create empty tag\n        if (empty($array)) {\n            $tag = array(\n                            'qname'      => $tagName,\n                            'content'    => $_content,\n                            'attributes' => $attributes\n                        );\n        } else {\n            $this->_tagDepth++;\n            $tmp = $_content . $this->options[XML_SERIALIZER_OPTION_LINEBREAKS];\n            foreach ($array as $key => $value) {\n                // do indentation\n                if ($this->options[XML_SERIALIZER_OPTION_INDENT]!==null\n                    && $this->_tagDepth>0\n                ) {\n                    $tmp .= str_repeat($this->options[XML_SERIALIZER_OPTION_INDENT],\n                        $this->_tagDepth);\n                }\n\n                // copy key\n                $origKey = $key;\n                $this->expectError('*');\n                // key cannot be used as tagname => use default tag\n                $valid = XML_Util::isValidName($key);\n                $this->popExpect();\n                if (PEAR::isError($valid)) {\n                    if ($this->options[XML_SERIALIZER_OPTION_CLASSNAME_AS_TAGNAME]\n                        && is_object($value)\n                    ) {\n                        $key = get_class($value);\n                    } else {\n                        $key = $this->_getDefaultTagname($tagName);\n                    }\n                }\n\n                // once we've established the true $key, is there a tagmap for it?\n                if (isset($this->options[XML_SERIALIZER_OPTION_TAGMAP][$key])) {\n                    $key = $this->options[XML_SERIALIZER_OPTION_TAGMAP][$key];\n                }\n\n                $atts = array();\n                if ($this->options[XML_SERIALIZER_OPTION_TYPEHINTS] === true) {\n                    $atts[$this->options[XML_SERIALIZER_OPTION_ATTRIBUTE_TYPE]] =\n                        gettype($value);\n                    if ($key !== $origKey) {\n                        $atts[$this->options[XML_SERIALIZER_OPTION_ATTRIBUTE_KEY]] =\n                            (string)$origKey;\n                    }\n                }\n\n                $tmp .= $this->_createXMLTag(array(\n                    'qname'      => $key,\n                    'attributes' => $atts,\n                    'content'    => $value\n                ));\n                $tmp .= $this->options[XML_SERIALIZER_OPTION_LINEBREAKS];\n            }\n\n            $this->_tagDepth--;\n            if ($this->options[XML_SERIALIZER_OPTION_INDENT]!==null\n                && $this->_tagDepth>0\n            ) {\n                $tmp .= str_repeat($this->options[XML_SERIALIZER_OPTION_INDENT],\n                    $this->_tagDepth);\n            }\n\n            if (trim($tmp) === '') {\n                $tmp = null;\n            }\n\n            $tag = array(\n                          'qname'      => $tagName,\n                          'content'    => $tmp,\n                          'attributes' => $attributes\n                        );\n        }\n        if ($this->options[XML_SERIALIZER_OPTION_TYPEHINTS] === true) {\n            if (!isset($tag['attributes']\n                [$this->options[XML_SERIALIZER_OPTION_ATTRIBUTE_TYPE]])\n            ) {\n                $tag['attributes']\n                    [$this->options[XML_SERIALIZER_OPTION_ATTRIBUTE_TYPE]] = 'array';\n            }\n        }\n\n        $string = '';\n        if (!is_null($_comment)) {\n            $string .= XML_Util::createComment($_comment);\n            $string .= $this->options[XML_SERIALIZER_OPTION_LINEBREAKS];\n            if ($this->options[XML_SERIALIZER_OPTION_INDENT]!==null\n                && $this->_tagDepth>0\n            ) {\n                $string .= str_repeat($this->options[XML_SERIALIZER_OPTION_INDENT],\n                    $this->_tagDepth);\n            }\n        }\n        $string .= $this->_createXMLTag($tag, false);\n        return $string;\n    }\n\n    /**\n     * get the name of the default tag.\n     *\n     * The name of the parent tag needs to be passed as the\n     * default name can depend on the context.\n     *\n     * @param string $parent name of the parent tag\n     *\n     * @return string default tag name\n     */\n    function _getDefaultTagname($parent)\n    {\n        if (is_string($this->options[XML_SERIALIZER_OPTION_DEFAULT_TAG])) {\n            return $this->options[XML_SERIALIZER_OPTION_DEFAULT_TAG];\n        }\n        if (isset($this->options[XML_SERIALIZER_OPTION_DEFAULT_TAG][$parent])) {\n            return $this->options[XML_SERIALIZER_OPTION_DEFAULT_TAG][$parent];\n        } elseif (isset($this->options[XML_SERIALIZER_OPTION_DEFAULT_TAG]\n            ['#default'])\n        ) {\n            return $this->options[XML_SERIALIZER_OPTION_DEFAULT_TAG]['#default'];\n        } elseif (isset($this->options[XML_SERIALIZER_OPTION_DEFAULT_TAG]\n            ['__default'])\n        ) {\n            // keep this for BC\n            return $this->options[XML_SERIALIZER_OPTION_DEFAULT_TAG]['__default'];\n        }\n        return 'XML_Serializer_Tag';\n    }\n\n    /**\n     * serialize an object\n     *\n     * @param object &$object    object to serialize\n     * @param string $tagName    tag name\n     * @param array  $attributes attributes\n     *\n     * @return string $string serialized data\n     * @access private\n     */\n    function _serializeObject(&$object, $tagName = null, $attributes = array())\n    {\n        // check for magic function\n        if (method_exists($object, '__sleep')) {\n            $propNames = $object->__sleep();\n            if (is_array($propNames)) {\n                $properties = array();\n                foreach ($propNames as $propName) {\n                    $properties[$propName] = $object->$propName;\n                }\n            } else {\n                $properties = get_object_vars($object);\n            }\n        } else {\n            $properties = get_object_vars($object);\n        }\n\n        if (empty($tagName)) {\n            $tagName = get_class($object);\n        }\n\n        // typehints activated?\n        if ($this->options[XML_SERIALIZER_OPTION_TYPEHINTS] === true) {\n            $attributes[$this->options[XML_SERIALIZER_OPTION_ATTRIBUTE_TYPE]]  =\n                'object';\n            $attributes[$this->options[XML_SERIALIZER_OPTION_ATTRIBUTE_CLASS]] =\n                get_class($object);\n        }\n        $string = $this->_serializeArray($properties, $tagName, $attributes);\n        return $string;\n    }\n\n    /**\n     * create a tag from an array\n     * this method awaits an array in the following format\n     * array(\n     *       'qname'        => $tagName,\n     *       'attributes'   => array(),\n     *       'content'      => $content,      // optional\n     *       'namespace'    => $namespace     // optional\n     *       'namespaceUri' => $namespaceUri  // optional\n     *   )\n     *\n     * @param array   $tag       tag definition\n     * @param boolean $firstCall whether or not this is the first call\n     *\n     * @return string $string XML tag\n     * @access private\n     */\n    function _createXMLTag($tag, $firstCall = true)\n    {\n        // build fully qualified tag name\n        if ($this->options[XML_SERIALIZER_OPTION_NAMESPACE] !== null) {\n            if (is_array($this->options[XML_SERIALIZER_OPTION_NAMESPACE])) {\n                $tag['qname'] = $this->options[XML_SERIALIZER_OPTION_NAMESPACE][0]\n                    . ':' . $tag['qname'];\n            } else {\n                $tag['qname'] = $this->options[XML_SERIALIZER_OPTION_NAMESPACE]\n                    . ':' . $tag['qname'];\n            }\n        }\n\n        // attribute indentation\n        if ($this->options[XML_SERIALIZER_OPTION_INDENT_ATTRIBUTES] !== false) {\n            $multiline = true;\n            $indent    = str_repeat($this->options[XML_SERIALIZER_OPTION_INDENT],\n                $this->_tagDepth);\n\n            if ($this->options[XML_SERIALIZER_OPTION_INDENT_ATTRIBUTES] == '_auto') {\n                $indent .= str_repeat(' ', (strlen($tag['qname'])+2));\n\n            } else {\n                $indent .= $this->options[XML_SERIALIZER_OPTION_INDENT_ATTRIBUTES];\n            }\n        } else {\n            $multiline = false;\n            $indent    = false;\n        }\n\n        if (is_array($tag['content'])) {\n            if (empty($tag['content'])) {\n                $tag['content'] =   '';\n            }\n} elseif (XML_SERIALIZER_OPTION_FALSE_AS_STRING && $tag['content'] === false) {\n$tag['content'] = '0';\n        } elseif (is_scalar($tag['content']) && (string)$tag['content'] == '') {\n            $tag['content'] =   '';\n        }\n\n        // replace XML entities\n        if ($firstCall === true) {\n            if ($this->options[XML_SERIALIZER_OPTION_CDATA_SECTIONS] === true) {\n                $replaceEntities = XML_UTIL_CDATA_SECTION;\n            } else {\n                $replaceEntities = $this->options[XML_SERIALIZER_OPTION_ENTITIES];\n            }\n        } else {\n            // this is a nested call, so value is already encoded\n            // and must not be encoded again\n            $replaceEntities = XML_SERIALIZER_ENTITIES_NONE;\n            // but attributes need to be encoded anyways\n            // (done here because the rest of the code assumes the same encoding\n            // can be used both for attributes and content)\n            foreach ($tag['attributes'] as $k => $v) {\n                $v = XML_Util::replaceEntities($v,\n                    $this->options[XML_SERIALIZER_OPTION_ENTITIES]);\n\n                $tag['attributes'][$k] = $v;\n            }\n        }\n        if (is_scalar($tag['content']) || is_null($tag['content'])) {\n            if ($this->options[XML_SERIALIZER_OPTION_ENCODE_FUNC]) {\n                if ($firstCall === true) {\n                    $tag['content'] = call_user_func($this->\n                        options[XML_SERIALIZER_OPTION_ENCODE_FUNC], $tag['content']);\n                }\n                $tag['attributes'] = array_map($this->\n                    options[XML_SERIALIZER_OPTION_ENCODE_FUNC], $tag['attributes']);\n            }\n            $tag = XML_Util::createTagFromArray($tag, $replaceEntities, $multiline,\n                $indent, $this->options[XML_SERIALIZER_OPTION_LINEBREAKS]);\n        } elseif (is_array($tag['content'])) {\n            $tag = $this->_serializeArray($tag['content'], $tag['qname'],\n                $tag['attributes']);\n        } elseif (is_object($tag['content'])) {\n            $tag = $this->_serializeObject($tag['content'], $tag['qname'],\n                $tag['attributes']);\n        } elseif (is_resource($tag['content'])) {\n            settype($tag['content'], 'string');\n            if ($this->options[XML_SERIALIZER_OPTION_ENCODE_FUNC]) {\n                if ($replaceEntities === true) {\n                    $tag['content'] = call_user_func($this->\n                        options[XML_SERIALIZER_OPTION_ENCODE_FUNC], $tag['content']);\n                }\n                $tag['attributes'] = array_map($this->\n                    options[XML_SERIALIZER_OPTION_ENCODE_FUNC],\n                    $tag['attributes']);\n            }\n            $tag = XML_Util::createTagFromArray($tag, $replaceEntities);\n        }\n        return  $tag;\n    }\n}\n?>\n"
  },
  {
    "path": "newscoop/include/XML/Unserializer.php",
    "content": "<?PHP\n/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */\n\n/**\n * XML_Unserializer\n *\n * Parses any XML document into PHP data structures.\n *\n * PHP versions 4 and 5\n *\n * LICENSE:\n *\n * Copyright (c) 2003-2008 Stephan Schmidt <schst@php.net>\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions\n * are met:\n *\n *    * Redistributions of source code must retain the above copyright\n *      notice, this list of conditions and the following disclaimer.\n *    * Redistributions in binary form must reproduce the above copyright\n *      notice, this list of conditions and the following disclaimer in the\n *      documentation and/or other materials provided with the distribution.\n *    * The name of the author may not be used to endorse or promote products\n *      derived from this software without specific prior written permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS\n * IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,\n * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR\n * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,\n * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,\n * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR\n * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\n * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\n * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * @category  XML\n * @package   XML_Serializer\n * @author    Stephan Schmidt <schst@php.net>\n * @copyright 2003-2008 Stephan Schmidt <schst@php.net>\n * @license   http://opensource.org/licenses/bsd-license New BSD License\n * @version   CVS: $Id: Unserializer.php,v 1.42 2009/02/09 14:49:52 ashnazg Exp $\n * @link      http://pear.php.net/package/XML_Serializer\n * @see       XML_Unserializer\n */\n\n/**\n * uses PEAR error managemt\n */\nrequire_once 'PEAR.php';\n\n/**\n * uses XML_Parser to unserialize document\n */\nrequire_once 'XML/Parser.php';\n\n/**\n * option: Convert nested tags to array or object\n *\n * Possible values:\n * - array\n * - object\n * - associative array to define this option per tag name\n */\ndefine('XML_UNSERIALIZER_OPTION_COMPLEXTYPE', 'complexType');\n\n/**\n * option: Name of the attribute that stores the original key\n *\n * Possible values:\n * - any string\n */\ndefine('XML_UNSERIALIZER_OPTION_ATTRIBUTE_KEY', 'keyAttribute');\n\n/**\n * option: Name of the attribute that stores the type\n *\n * Possible values:\n * - any string\n */\ndefine('XML_UNSERIALIZER_OPTION_ATTRIBUTE_TYPE', 'typeAttribute');\n\n/**\n * option: Name of the attribute that stores the class name\n *\n * Possible values:\n * - any string\n */\ndefine('XML_UNSERIALIZER_OPTION_ATTRIBUTE_CLASS', 'classAttribute');\n\n/**\n * option: Whether to use the tag name as a class name\n *\n * Possible values:\n * - true or false\n */\ndefine('XML_UNSERIALIZER_OPTION_TAG_AS_CLASSNAME', 'tagAsClass');\n\n/**\n * option: Name of the default class\n *\n * Possible values:\n * - any string\n */\ndefine('XML_UNSERIALIZER_OPTION_DEFAULT_CLASS', 'defaultClass');\n\n/**\n * option: Whether to parse attributes\n *\n * Possible values:\n * - true or false\n */\ndefine('XML_UNSERIALIZER_OPTION_ATTRIBUTES_PARSE', 'parseAttributes');\n\n/**\n * option: Key of the array to store attributes (if any)\n *\n * Possible values:\n * - any string\n * - false (disabled)\n */\ndefine('XML_UNSERIALIZER_OPTION_ATTRIBUTES_ARRAYKEY', 'attributesArray');\n\n/**\n * option: string to prepend attribute name (if any)\n *\n * Possible values:\n * - any string\n * - false (disabled)\n */\ndefine('XML_UNSERIALIZER_OPTION_ATTRIBUTES_PREPEND', 'prependAttributes');\n\n/**\n * option: key to store the content,\n * if XML_UNSERIALIZER_OPTION_ATTRIBUTES_PARSE is used\n *\n * Possible values:\n * - any string\n */\ndefine('XML_UNSERIALIZER_OPTION_CONTENT_KEY', 'contentName');\n\n/**\n * option: map tag names\n *\n * Possible values:\n * - associative array\n */\ndefine('XML_UNSERIALIZER_OPTION_TAG_MAP', 'tagMap');\n\n/**\n * option: list of tags that will always be enumerated\n *\n * Possible values:\n * - indexed array\n */\ndefine('XML_UNSERIALIZER_OPTION_FORCE_ENUM', 'forceEnum');\n\n/**\n * option: Encoding of the XML document\n *\n * Possible values:\n * - UTF-8\n * - ISO-8859-1\n */\ndefine('XML_UNSERIALIZER_OPTION_ENCODING_SOURCE', 'encoding');\n\n/**\n * option: Desired target encoding of the data\n *\n * Possible values:\n * - UTF-8\n * - ISO-8859-1\n */\ndefine('XML_UNSERIALIZER_OPTION_ENCODING_TARGET', 'targetEncoding');\n\n/**\n * option: Callback that will be applied to textual data\n *\n * Possible values:\n * - any valid PHP callback\n */\ndefine('XML_UNSERIALIZER_OPTION_DECODE_FUNC', 'decodeFunction');\n\n/**\n * option: whether to return the result of the unserialization from unserialize()\n *\n * Possible values:\n * - true\n * - false (default)\n */\ndefine('XML_UNSERIALIZER_OPTION_RETURN_RESULT', 'returnResult');\n\n/**\n * option: set the whitespace behaviour\n *\n * Possible values:\n * - XML_UNSERIALIZER_WHITESPACE_KEEP\n * - XML_UNSERIALIZER_WHITESPACE_TRIM\n * - XML_UNSERIALIZER_WHITESPACE_NORMALIZE\n */\ndefine('XML_UNSERIALIZER_OPTION_WHITESPACE', 'whitespace');\n\n/**\n * Keep all whitespace\n */\ndefine('XML_UNSERIALIZER_WHITESPACE_KEEP', 'keep');\n\n/**\n * remove whitespace from start and end of the data\n */\ndefine('XML_UNSERIALIZER_WHITESPACE_TRIM', 'trim');\n\n/**\n * normalize whitespace\n */\ndefine('XML_UNSERIALIZER_WHITESPACE_NORMALIZE', 'normalize');\n\n/**\n * option: whether to ovverride all options that have been set before\n *\n * Possible values:\n * - true\n * - false (default)\n */\ndefine('XML_UNSERIALIZER_OPTION_OVERRIDE_OPTIONS', 'overrideOptions');\n\n/**\n * option: list of tags, that will not be used as keys\n */\ndefine('XML_UNSERIALIZER_OPTION_IGNORE_KEYS', 'ignoreKeys');\n\n/**\n * option: whether to use type guessing for scalar values\n */\ndefine('XML_UNSERIALIZER_OPTION_GUESS_TYPES', 'guessTypes');\n\n/**\n * error code for no serialization done\n */\ndefine('XML_UNSERIALIZER_ERROR_NO_UNSERIALIZATION', 151);\n\n/**\n * XML_Unserializer\n *\n * class to unserialize XML documents that have been created with\n * XML_Serializer. To unserialize an XML document you have to add\n * type hints to the XML_Serializer options.\n *\n * If no type hints are available, XML_Unserializer will guess how\n * the tags should be treated, that means complex structures will be\n * arrays and tags with only CData in them will be strings.\n *\n * <code>\n * require_once 'XML/Unserializer.php';\n *\n * //  be careful to always use the ampersand in front of the new operator\n * $unserializer = &new XML_Unserializer();\n *\n * $unserializer->unserialize($xml);\n *\n * $data = $unserializer->getUnserializedData();\n * <code>\n *\n * @category  XML\n * @package   XML_Serializer\n * @author    Stephan Schmidt <schst@php.net>\n * @copyright 2003-2008 Stephan Schmidt <schst@php.net>\n * @license   http://opensource.org/licenses/bsd-license New BSD License\n * @version   Release: 0.20.0\n * @link      http://pear.php.net/package/XML_Serializer\n * @see       XML_Serializer\n */\nclass XML_Unserializer extends PEAR\n{\n    /**\n     * list of all available options\n     *\n     * @access private\n     * @var    array\n     */\n    var $_knownOptions = array(\n                                XML_UNSERIALIZER_OPTION_COMPLEXTYPE,\n                                XML_UNSERIALIZER_OPTION_ATTRIBUTE_KEY,\n                                XML_UNSERIALIZER_OPTION_ATTRIBUTE_TYPE,\n                                XML_UNSERIALIZER_OPTION_ATTRIBUTE_CLASS,\n                                XML_UNSERIALIZER_OPTION_TAG_AS_CLASSNAME,\n                                XML_UNSERIALIZER_OPTION_DEFAULT_CLASS,\n                                XML_UNSERIALIZER_OPTION_ATTRIBUTES_PARSE,\n                                XML_UNSERIALIZER_OPTION_ATTRIBUTES_ARRAYKEY,\n                                XML_UNSERIALIZER_OPTION_ATTRIBUTES_PREPEND,\n                                XML_UNSERIALIZER_OPTION_CONTENT_KEY,\n                                XML_UNSERIALIZER_OPTION_TAG_MAP,\n                                XML_UNSERIALIZER_OPTION_FORCE_ENUM,\n                                XML_UNSERIALIZER_OPTION_ENCODING_SOURCE,\n                                XML_UNSERIALIZER_OPTION_ENCODING_TARGET,\n                                XML_UNSERIALIZER_OPTION_DECODE_FUNC,\n                                XML_UNSERIALIZER_OPTION_RETURN_RESULT,\n                                XML_UNSERIALIZER_OPTION_WHITESPACE,\n                                XML_UNSERIALIZER_OPTION_IGNORE_KEYS,\n                                XML_UNSERIALIZER_OPTION_GUESS_TYPES\n                              );\n    /**\n     * default options for the serialization\n     *\n     * @access private\n     * @var    array\n     */\n    var $_defaultOptions = array(\n        // complex types will be converted to arrays, if no type hint is given\n        XML_UNSERIALIZER_OPTION_COMPLEXTYPE => 'array',\n\n        // get array key/property name from this attribute\n        XML_UNSERIALIZER_OPTION_ATTRIBUTE_KEY => '_originalKey',\n\n        // get type from this attribute\n        XML_UNSERIALIZER_OPTION_ATTRIBUTE_TYPE => '_type',\n\n        // get class from this attribute (if not given, use tag name)\n        XML_UNSERIALIZER_OPTION_ATTRIBUTE_CLASS => '_class',\n\n        // use the tagname as the classname\n        XML_UNSERIALIZER_OPTION_TAG_AS_CLASSNAME => true,\n\n        // name of the class that is used to create objects\n        XML_UNSERIALIZER_OPTION_DEFAULT_CLASS => 'stdClass',\n\n        // parse the attributes of the tag into an array\n        XML_UNSERIALIZER_OPTION_ATTRIBUTES_PARSE => false,\n\n        // parse them into sperate array (specify name of array here)\n        XML_UNSERIALIZER_OPTION_ATTRIBUTES_ARRAYKEY => false,\n\n        // prepend attribute names with this string\n        XML_UNSERIALIZER_OPTION_ATTRIBUTES_PREPEND => '',\n\n        // put cdata found in a tag that has been converted\n        // to a complex type in this key\n        XML_UNSERIALIZER_OPTION_CONTENT_KEY => '_content',\n\n        // use this to map tagnames\n        XML_UNSERIALIZER_OPTION_TAG_MAP => array(),\n\n        // these tags will always be an indexed array\n        XML_UNSERIALIZER_OPTION_FORCE_ENUM => array(),\n\n        // specify the encoding character of the document to parse\n        XML_UNSERIALIZER_OPTION_ENCODING_SOURCE => null,\n\n        // specify the target encoding\n        XML_UNSERIALIZER_OPTION_ENCODING_TARGET => null,\n\n        // function used to decode data\n        XML_UNSERIALIZER_OPTION_DECODE_FUNC => null,\n\n        // unserialize() returns the result of the unserialization instead of true\n        XML_UNSERIALIZER_OPTION_RETURN_RESULT => false,\n\n        // remove whitespace around data\n        XML_UNSERIALIZER_OPTION_WHITESPACE => XML_UNSERIALIZER_WHITESPACE_TRIM,\n\n        // List of tags that will automatically be added to the parent,\n        // instead of adding a new key\n        XML_UNSERIALIZER_OPTION_IGNORE_KEYS => array(),\n\n        // Whether to use type guessing\n        XML_UNSERIALIZER_OPTION_GUESS_TYPES => false\n    );\n\n    /**\n     * current options for the serialization\n     *\n     * @access public\n     * @var    array\n     */\n    var $options = array();\n\n    /**\n     * unserialized data\n     *\n     * @access private\n     * @var    string\n     */\n    var $_unserializedData = null;\n\n    /**\n     * name of the root tag\n     *\n     * @access private\n     * @var    string\n     */\n    var $_root = null;\n\n    /**\n     * stack for all data that is found\n     *\n     * @access private\n     * @var    array\n     */\n    var $_dataStack = array();\n\n    /**\n     * stack for all values that are generated\n     *\n     * @access private\n     * @var    array\n     */\n    var $_valStack = array();\n\n    /**\n     * current tag depth\n     *\n     * @access private\n     * @var    int\n     */\n    var $_depth = 0;\n\n    /**\n     * XML_Parser instance\n     *\n     * @access   private\n     * @var      object XML_Parser\n     */\n    var $_parser = null;\n\n    /**\n     * constructor\n     *\n     * @param mixed $options array containing options for the unserialization\n     *\n     * @access public\n     */\n    function XML_Unserializer($options = null)\n    {\n        if (is_array($options)) {\n            $this->options = array_merge($this->_defaultOptions, $options);\n        } else {\n            $this->options = $this->_defaultOptions;\n        }\n    }\n\n    /**\n     * return API version\n     *\n     * @access   public\n     * @return string  $version API version\n     * @static\n     */\n    function apiVersion()\n    {\n        return '0.20.0';\n    }\n\n    /**\n     * reset all options to default options\n     *\n     * @return void\n     * @access public\n     * @see setOption(), XML_Unserializer(), setOptions()\n     */\n    function resetOptions()\n    {\n        $this->options = $this->_defaultOptions;\n    }\n\n    /**\n     * set an option\n     *\n     * You can use this method if you do not want\n     * to set all options in the constructor\n     *\n     * @param string $name  name of option\n     * @param mixed  $value value of option\n     *\n     * @return void\n     * @access public\n     * @see resetOption(), XML_Unserializer(), setOptions()\n     */\n    function setOption($name, $value)\n    {\n        $this->options[$name] = $value;\n    }\n\n    /**\n     * sets several options at once\n     *\n     * You can use this method if you do not want\n     * to set all options in the constructor\n     *\n     * @param array $options options array\n     *\n     * @return void\n     * @access public\n     * @see resetOption(), XML_Unserializer(), setOption()\n     */\n    function setOptions($options)\n    {\n        $this->options = array_merge($this->options, $options);\n    }\n\n    /**\n     * unserialize data\n     *\n     * @param mixed   $data    data to unserialize (string, filename or resource)\n     * @param boolean $isFile  data should be treated as a file\n     * @param array   $options options that will override\n     *                         the global options for this call\n     *\n     * @return boolean $success\n     * @access public\n     */\n    function unserialize($data, $isFile = false, $options = null)\n    {\n        $this->_unserializedData = null;\n        $this->_root             = null;\n\n        // if options have been specified, use them instead\n        // of the previously defined ones\n        if (is_array($options)) {\n            $optionsBak = $this->options;\n            if (isset($options[XML_UNSERIALIZER_OPTION_OVERRIDE_OPTIONS])\n                && $options[XML_UNSERIALIZER_OPTION_OVERRIDE_OPTIONS] == true\n            ) {\n                $this->options = array_merge($this->_defaultOptions, $options);\n            } else {\n                $this->options = array_merge($this->options, $options);\n            }\n        } else {\n            $optionsBak = null;\n        }\n\n        $this->_valStack  = array();\n        $this->_dataStack = array();\n        $this->_depth     = 0;\n\n        $this->_createParser();\n\n        if (is_string($data)) {\n            if ($isFile) {\n                $result = $this->_parser->setInputFile($data);\n                if (PEAR::isError($result)) {\n                    return $result;\n                }\n                $result = $this->_parser->parse();\n            } else {\n                $result = $this->_parser->parseString($data, true);\n            }\n        } else {\n            $this->_parser->setInput($data);\n            $result = $this->_parser->parse();\n        }\n\n        if ($this->options[XML_UNSERIALIZER_OPTION_RETURN_RESULT] === true) {\n            $return = $this->_unserializedData;\n        } else {\n            $return = true;\n        }\n\n        if ($optionsBak !== null) {\n            $this->options = $optionsBak;\n        }\n\n        if (PEAR::isError($result)) {\n            return $result;\n        }\n\n        return $return;\n    }\n\n    /**\n     * get the result of the serialization\n     *\n     * @access public\n     * @return string  $serializedData\n     */\n    function getUnserializedData()\n    {\n        if ($this->_root === null) {\n            return $this->raiseError('No unserialized data available. '\n                . 'Use XML_Unserializer::unserialize() first.',\n                XML_UNSERIALIZER_ERROR_NO_UNSERIALIZATION);\n        }\n        return $this->_unserializedData;\n    }\n\n    /**\n     * get the name of the root tag\n     *\n     * @access public\n     * @return string  $rootName\n     */\n    function getRootName()\n    {\n        if ($this->_root === null) {\n            return $this->raiseError('No unserialized data available. '\n                . 'Use XML_Unserializer::unserialize() first.',\n                XML_UNSERIALIZER_ERROR_NO_UNSERIALIZATION);\n        }\n        return $this->_root;\n    }\n\n    /**\n     * Start element handler for XML parser\n     *\n     * @param object $parser  XML parser object\n     * @param string $element XML element\n     * @param array  $attribs attributes of XML tag\n     *\n     * @return void\n     * @access private\n     */\n    function startHandler($parser, $element, $attribs)\n    {\n        if (isset($attribs[$this->options[XML_UNSERIALIZER_OPTION_ATTRIBUTE_TYPE]])\n        ) {\n            $type = $attribs[$this->options[XML_UNSERIALIZER_OPTION_ATTRIBUTE_TYPE]];\n\n            $guessType = false;\n        } else {\n            $type = 'string';\n            if ($this->options[XML_UNSERIALIZER_OPTION_GUESS_TYPES] === true) {\n                $guessType = true;\n            } else {\n                $guessType = false;\n            }\n        }\n\n        if ($this->options[XML_UNSERIALIZER_OPTION_DECODE_FUNC] !== null) {\n            $attribs = array_map($this->options[XML_UNSERIALIZER_OPTION_DECODE_FUNC],\n                $attribs);\n        }\n\n        $this->_depth++;\n        $this->_dataStack[$this->_depth] = null;\n\n        if (is_array($this->options[XML_UNSERIALIZER_OPTION_TAG_MAP])\n            && isset($this->options[XML_UNSERIALIZER_OPTION_TAG_MAP][$element])\n        ) {\n            $element = $this->options[XML_UNSERIALIZER_OPTION_TAG_MAP][$element];\n        }\n\n        $val = array(\n                     'name'         => $element,\n                     'value'        => null,\n                     'type'         => $type,\n                     'guessType'    => $guessType,\n                     'childrenKeys' => array(),\n                     'aggregKeys'   => array()\n                    );\n\n        if ($this->options[XML_UNSERIALIZER_OPTION_ATTRIBUTES_PARSE] == true\n            && (count($attribs) > 0)\n        ) {\n            $val['children'] = array();\n            $val['type']     = $this->_getComplexType($element);\n            $val['class']    = $element;\n\n            if ($this->options[XML_UNSERIALIZER_OPTION_GUESS_TYPES] === true) {\n                $attribs = $this->_guessAndSetTypes($attribs);\n            }\n            if ($this->options[XML_UNSERIALIZER_OPTION_ATTRIBUTES_ARRAYKEY] != false\n            ) {\n                $val['children'][$this->\n                    options[XML_UNSERIALIZER_OPTION_ATTRIBUTES_ARRAYKEY]] = $attribs;\n            } else {\n                foreach ($attribs as $attrib => $value) {\n                    $val['children'][$this->\n                        options[XML_UNSERIALIZER_OPTION_ATTRIBUTES_PREPEND]\n                        . $attrib] = $value;\n                }\n            }\n        }\n\n        $keyAttr = false;\n\n        if (is_string($this->options[XML_UNSERIALIZER_OPTION_ATTRIBUTE_KEY])) {\n            $keyAttr = $this->options[XML_UNSERIALIZER_OPTION_ATTRIBUTE_KEY];\n        } elseif (is_array($this->options[XML_UNSERIALIZER_OPTION_ATTRIBUTE_KEY])) {\n            if (isset($this->options[XML_UNSERIALIZER_OPTION_ATTRIBUTE_KEY]\n                [$element])\n            ) {\n                $keyAttr =\n                    $this->options[XML_UNSERIALIZER_OPTION_ATTRIBUTE_KEY][$element];\n            } elseif (isset($this->options[XML_UNSERIALIZER_OPTION_ATTRIBUTE_KEY]\n                ['#default'])\n            ) {\n                $keyAttr = $this->options[XML_UNSERIALIZER_OPTION_ATTRIBUTE_KEY]\n                ['#default'];\n            } elseif (isset($this->options[XML_UNSERIALIZER_OPTION_ATTRIBUTE_KEY]\n                ['__default'])\n            ) {\n                // keep this for BC\n                $keyAttr =\n                    $this->options[XML_UNSERIALIZER_OPTION_ATTRIBUTE_KEY]\n                    ['__default'];\n            }\n        }\n\n        if ($keyAttr !== false && isset($attribs[$keyAttr])) {\n            $val['name'] = $attribs[$keyAttr];\n        }\n\n        if (isset($attribs[$this->\n            options[XML_UNSERIALIZER_OPTION_ATTRIBUTE_CLASS]])\n        ) {\n            $val['class'] =\n                $attribs[$this->options[XML_UNSERIALIZER_OPTION_ATTRIBUTE_CLASS]];\n        }\n\n        array_push($this->_valStack, $val);\n    }\n\n    /**\n     * Try to guess the type of several values and\n     * set them accordingly\n     *\n     * @param array $array array containing the values\n     *\n     * @return array array, containing the values with their correct types\n     * @access private\n     */\n    function _guessAndSetTypes($array)\n    {\n        foreach ($array as $key => $value) {\n            $array[$key] = $this->_guessAndSetType($value);\n        }\n        return $array;\n    }\n\n    /**\n     * Try to guess the type of a value and\n     * set it accordingly\n     *\n     * @param string $value character data\n     *\n     * @return mixed value with the best matching type\n     * @access private\n     */\n    function _guessAndSetType($value)\n    {\n        if ($value === 'true') {\n            return true;\n        }\n        if ($value === 'false') {\n            return false;\n        }\n        if ($value === 'NULL') {\n            return null;\n        }\n        if (preg_match('/^[-+]?[0-9]{1,}\\\\z/', $value)) {\n            return intval($value);\n        }\n        if (preg_match('/^[-+]?[0-9]{1,}\\.[0-9]{1,}\\\\z/', $value)) {\n            return doubleval($value);\n        }\n        return (string)$value;\n    }\n\n    /**\n     * End element handler for XML parser\n     *\n     * @param object $parser  XML parser object\n     * @param string $element element\n     *\n     * @return void\n     * @access private\n     */\n    function endHandler($parser, $element)\n    {\n        $value = array_pop($this->_valStack);\n        switch ($this->options[XML_UNSERIALIZER_OPTION_WHITESPACE]) {\n        case XML_UNSERIALIZER_WHITESPACE_KEEP:\n            $data = $this->_dataStack[$this->_depth];\n            break;\n        case XML_UNSERIALIZER_WHITESPACE_NORMALIZE:\n            $data = trim(preg_replace('/\\s\\s+/m', ' ',\n                $this->_dataStack[$this->_depth]));\n            break;\n        case XML_UNSERIALIZER_WHITESPACE_TRIM:\n        default:\n            $data = trim($this->_dataStack[$this->_depth]);\n            break;\n        }\n\n        // adjust type of the value\n        switch(strtolower($value['type'])) {\n\n        // unserialize an object\n        case 'object':\n            if (isset($value['class'])) {\n                $classname = $value['class'];\n            } else {\n                $classname = '';\n            }\n            // instantiate the class\n            if ($this->options[XML_UNSERIALIZER_OPTION_TAG_AS_CLASSNAME] === true\n                && class_exists($classname)\n            ) {\n                $value['value'] = new $classname;\n            } else {\n                $value['value'] =\n                    new $this->options[XML_UNSERIALIZER_OPTION_DEFAULT_CLASS];\n            }\n            if (trim($data) !== '') {\n                if ($value['guessType'] === true) {\n                    $data = $this->_guessAndSetType($data);\n                }\n                $value['children'][$this->\n                    options[XML_UNSERIALIZER_OPTION_CONTENT_KEY]] = $data;\n            }\n\n            // set properties\n            foreach ($value['children'] as $prop => $propVal) {\n                // check whether there is a special method to set this property\n                $setMethod = 'set'.$prop;\n                if (method_exists($value['value'], $setMethod)) {\n                    call_user_func(array(&$value['value'], $setMethod), $propVal);\n                } else {\n                    $value['value']->$prop = $propVal;\n                }\n            }\n            //  check for magic function\n            if (method_exists($value['value'], '__wakeup')) {\n                $value['value']->__wakeup();\n            }\n            break;\n\n        // unserialize an array\n        case 'array':\n            if (trim($data) !== '') {\n                if ($value['guessType'] === true) {\n                    $data = $this->_guessAndSetType($data);\n                }\n                $value['children'][$this->\n                    options[XML_UNSERIALIZER_OPTION_CONTENT_KEY]] = $data;\n            }\n            if (isset($value['children'])) {\n                $value['value'] = $value['children'];\n            } else {\n                $value['value'] = array();\n            }\n            break;\n\n        // unserialize a null value\n        case 'null':\n            $data = null;\n            break;\n\n        // unserialize a resource => this is not possible :-(\n        case 'resource':\n            $value['value'] = $data;\n            break;\n\n        // unserialize any scalar value\n        default:\n            if ($value['guessType'] === true) {\n                $data = $this->_guessAndSetType($data);\n            } else {\n                settype($data, $value['type']);\n            }\n\n            $value['value'] = $data;\n            break;\n        }\n        $parent = array_pop($this->_valStack);\n        if ($parent === null) {\n            $this->_unserializedData = &$value['value'];\n            $this->_root             = &$value['name'];\n            return true;\n        } else {\n            // parent has to be an array\n            if (!isset($parent['children']) || !is_array($parent['children'])) {\n                $parent['children'] = array();\n                if (!in_array($parent['type'], array('array', 'object'))) {\n                    $parent['type'] = $this->_getComplexType($parent['name']);\n                    if ($parent['type'] == 'object') {\n                        $parent['class'] = $parent['name'];\n                    }\n                }\n            }\n\n            if (in_array($element,\n                $this->options[XML_UNSERIALIZER_OPTION_IGNORE_KEYS])\n            ) {\n                $ignoreKey = true;\n            } else {\n                $ignoreKey = false;\n            }\n\n            if (!empty($value['name']) && $ignoreKey === false) {\n                // there already has been a tag with this name\n                if (in_array($value['name'], $parent['childrenKeys'])\n                    || in_array($value['name'],\n                    $this->options[XML_UNSERIALIZER_OPTION_FORCE_ENUM])\n                ) {\n                    // no aggregate has been created for this tag\n                    if (!in_array($value['name'], $parent['aggregKeys'])) {\n                        if (isset($parent['children'][$value['name']])) {\n                            $parent['children'][$value['name']] =\n                                array($parent['children'][$value['name']]);\n                        } else {\n                            $parent['children'][$value['name']] = array();\n                        }\n                        array_push($parent['aggregKeys'], $value['name']);\n                    }\n                    array_push($parent['children'][$value['name']], $value['value']);\n                } else {\n                    $parent['children'][$value['name']] = &$value['value'];\n                    array_push($parent['childrenKeys'], $value['name']);\n                }\n            } else {\n                array_push($parent['children'], $value['value']);\n            }\n            array_push($this->_valStack, $parent);\n        }\n\n        $this->_depth--;\n    }\n\n    /**\n     * Handler for character data\n     *\n     * @param object $parser XML parser object\n     * @param string $cdata  CDATA\n     *\n     * @return void\n     * @access private\n     */\n    function cdataHandler($parser, $cdata)\n    {\n        if ($this->options[XML_UNSERIALIZER_OPTION_DECODE_FUNC] !== null) {\n            $cdata = call_user_func($this->\n                options[XML_UNSERIALIZER_OPTION_DECODE_FUNC], $cdata);\n        }\n        $this->_dataStack[$this->_depth] .= $cdata;\n    }\n\n    /**\n     * get the complex type, that should be used for a specified tag\n     *\n     * @param string $tagname name of the tag\n     *\n     * @return string complex type ('array' or 'object')\n     * @access private\n     */\n    function _getComplexType($tagname)\n    {\n        if (is_string($this->options[XML_UNSERIALIZER_OPTION_COMPLEXTYPE])) {\n            return $this->options[XML_UNSERIALIZER_OPTION_COMPLEXTYPE];\n        }\n        if (isset($this->options[XML_UNSERIALIZER_OPTION_COMPLEXTYPE][$tagname])) {\n            return $this->options[XML_UNSERIALIZER_OPTION_COMPLEXTYPE][$tagname];\n        }\n        if (isset($this->options[XML_UNSERIALIZER_OPTION_COMPLEXTYPE]['#default'])) {\n            return $this->options[XML_UNSERIALIZER_OPTION_COMPLEXTYPE]['#default'];\n        }\n        return 'array';\n    }\n\n    /**\n     * create the XML_Parser instance\n     *\n     * @return boolean\n     * @access private\n     */\n    function _createParser()\n    {\n        if (is_object($this->_parser)) {\n            $this->_parser->free();\n            unset($this->_parser);\n        }\n        $this->_parser = new XML_Parser($this->\n            options[XML_UNSERIALIZER_OPTION_ENCODING_SOURCE],\n            'event', $this->options[XML_UNSERIALIZER_OPTION_ENCODING_TARGET]);\n\n        $this->_parser->folding = false;\n        $this->_parser->setHandlerObj($this);\n        return true;\n    }\n}\n?>\n"
  },
  {
    "path": "newscoop/include/XML/Util.php",
    "content": "<?php\n\n/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */\n\n/**\n * XML_Util\n *\n * XML Utilities package\n * \n * PHP versions 4 and 5\n *\n * LICENSE:\n *\n * Copyright (c) 2003-2008 Stephan Schmidt <schst@php.net>\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions\n * are met:\n *\n *    * Redistributions of source code must retain the above copyright\n *      notice, this list of conditions and the following disclaimer.\n *    * Redistributions in binary form must reproduce the above copyright\n *      notice, this list of conditions and the following disclaimer in the\n *      documentation and/or other materials provided with the distribution.\n *    * The name of the author may not be used to endorse or promote products\n *      derived from this software without specific prior written permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS\n * IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,\n * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR\n * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,\n * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,\n * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR\n * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\n * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\n * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * @category  XML\n * @package   XML_Util\n * @author    Stephan Schmidt <schst@php.net>\n * @copyright 2003-2008 Stephan Schmidt <schst@php.net>\n * @license   http://opensource.org/licenses/bsd-license New BSD License\n * @version   CVS: $Id: Util.php,v 1.38 2008/11/13 00:03:38 ashnazg Exp $\n * @link      http://pear.php.net/package/XML_Util\n */\n\n/**\n * error code for invalid chars in XML name\n */\ndefine('XML_UTIL_ERROR_INVALID_CHARS', 51);\n\n/**\n * error code for invalid chars in XML name\n */\ndefine('XML_UTIL_ERROR_INVALID_START', 52);\n\n/**\n * error code for non-scalar tag content\n */\ndefine('XML_UTIL_ERROR_NON_SCALAR_CONTENT', 60);\n\n/**\n * error code for missing tag name\n */\ndefine('XML_UTIL_ERROR_NO_TAG_NAME', 61);\n\n/**\n * replace XML entities\n */\ndefine('XML_UTIL_REPLACE_ENTITIES', 1);\n\n/**\n * embedd content in a CData Section\n */\ndefine('XML_UTIL_CDATA_SECTION', 5);\n\n/**\n * do not replace entitites\n */\ndefine('XML_UTIL_ENTITIES_NONE', 0);\n\n/**\n * replace all XML entitites\n * This setting will replace <, >, \", ' and &\n */\ndefine('XML_UTIL_ENTITIES_XML', 1);\n\n/**\n * replace only required XML entitites\n * This setting will replace <, \" and &\n */\ndefine('XML_UTIL_ENTITIES_XML_REQUIRED', 2);\n\n/**\n * replace HTML entitites\n * @link http://www.php.net/htmlentities\n */\ndefine('XML_UTIL_ENTITIES_HTML', 3);\n\n/**\n * Collapse all empty tags.\n */\ndefine('XML_UTIL_COLLAPSE_ALL', 1);\n\n/**\n * Collapse only empty XHTML tags that have no end tag.\n */\ndefine('XML_UTIL_COLLAPSE_XHTML_ONLY', 2);\n\n/**\n * utility class for working with XML documents\n *\n\n * @category  XML\n * @package   XML_Util\n * @author    Stephan Schmidt <schst@php.net>\n * @copyright 2003-2008 Stephan Schmidt <schst@php.net>\n * @license   http://opensource.org/licenses/bsd-license New BSD License\n * @version   Release: 1.2.1\n * @link      http://pear.php.net/package/XML_Util\n */\nclass XML_Util\n{\n    /**\n     * return API version\n     *\n     * @return string $version API version\n     * @access public\n     * @static\n     */\n    function apiVersion()\n    {\n        return '1.1';\n    }\n\n    /**\n     * replace XML entities\n     *\n     * With the optional second parameter, you may select, which\n     * entities should be replaced.\n     *\n     * <code>\n     * require_once 'XML/Util.php';\n     *\n     * // replace XML entites:\n     * $string = XML_Util::replaceEntities('This string contains < & >.');\n     * </code>\n     *\n     * With the optional third parameter, you may pass the character encoding\n     * <code>\n     * require_once 'XML/Util.php';\n     *\n     * // replace XML entites in UTF-8:\n     * $string = XML_Util::replaceEntities(\n     *     'This string contains < & > as well as ä, ö, ß, à and ê',\n     *     XML_UTIL_ENTITIES_HTML,\n     *     'UTF-8'\n     * );\n     * </code>\n     *\n     * @param string $string          string where XML special chars \n     *                                should be replaced\n     * @param int    $replaceEntities setting for entities in attribute values \n     *                                (one of XML_UTIL_ENTITIES_XML, \n     *                                XML_UTIL_ENTITIES_XML_REQUIRED, \n     *                                XML_UTIL_ENTITIES_HTML)\n     * @param string $encoding        encoding value (if any)...\n     *                                must be a valid encoding as determined\n     *                                by the htmlentities() function\n     *\n     * @return string string with replaced chars\n     * @access public\n     * @static\n     * @see reverseEntities()\n     */\n    function replaceEntities($string, $replaceEntities = XML_UTIL_ENTITIES_XML,\n        $encoding = 'ISO-8859-1')\n    {\n        switch ($replaceEntities) {\n        case XML_UTIL_ENTITIES_XML:\n            return strtr($string, array(\n                '&'  => '&amp;',\n                '>'  => '&gt;',\n                '<'  => '&lt;',\n                '\"'  => '&quot;',\n                '\\'' => '&apos;' ));\n            break;\n        case XML_UTIL_ENTITIES_XML_REQUIRED:\n            return strtr($string, array(\n                '&' => '&amp;',\n                '<' => '&lt;',\n                '\"' => '&quot;' ));\n            break;\n        case XML_UTIL_ENTITIES_HTML:\n            return htmlentities($string, ENT_COMPAT, $encoding);\n            break;\n        }\n        return $string;\n    }\n\n    /**\n     * reverse XML entities\n     *\n     * With the optional second parameter, you may select, which\n     * entities should be reversed.\n     *\n     * <code>\n     * require_once 'XML/Util.php';\n     *\n     * // reverse XML entites:\n     * $string = XML_Util::reverseEntities('This string contains &lt; &amp; &gt;.');\n     * </code>\n     *\n     * With the optional third parameter, you may pass the character encoding\n     * <code>\n     * require_once 'XML/Util.php';\n     *\n     * // reverse XML entites in UTF-8:\n     * $string = XML_Util::reverseEntities(\n     *     'This string contains &lt; &amp; &gt; as well as'\n     *     . ' &auml;, &ouml;, &szlig;, &agrave; and &ecirc;',\n     *     XML_UTIL_ENTITIES_HTML,\n     *     'UTF-8'\n     * );\n     * </code>\n     *\n     * @param string $string          string where XML special chars \n     *                                should be replaced\n     * @param int    $replaceEntities setting for entities in attribute values \n     *                                (one of XML_UTIL_ENTITIES_XML, \n     *                                XML_UTIL_ENTITIES_XML_REQUIRED, \n     *                                XML_UTIL_ENTITIES_HTML)\n     * @param string $encoding        encoding value (if any)...\n     *                                must be a valid encoding as determined\n     *                                by the html_entity_decode() function\n     *\n     * @return string string with replaced chars\n     * @access public\n     * @static\n     * @see replaceEntities()\n     */\n    function reverseEntities($string, $replaceEntities = XML_UTIL_ENTITIES_XML,\n        $encoding = 'ISO-8859-1')\n    {\n        switch ($replaceEntities) {\n        case XML_UTIL_ENTITIES_XML:\n            return strtr($string, array(\n                '&amp;'  => '&',\n                '&gt;'   => '>',\n                '&lt;'   => '<',\n                '&quot;' => '\"',\n                '&apos;' => '\\'' ));\n            break;\n        case XML_UTIL_ENTITIES_XML_REQUIRED:\n            return strtr($string, array(\n                '&amp;'  => '&',\n                '&lt;'   => '<',\n                '&quot;' => '\"' ));\n            break;\n        case XML_UTIL_ENTITIES_HTML:\n            return html_entity_decode($string, ENT_COMPAT, $encoding);\n            break;\n        }\n        return $string;\n    }\n\n    /**\n     * build an xml declaration\n     *\n     * <code>\n     * require_once 'XML/Util.php';\n     *\n     * // get an XML declaration:\n     * $xmlDecl = XML_Util::getXMLDeclaration('1.0', 'UTF-8', true);\n     * </code>\n     *\n     * @param string $version    xml version\n     * @param string $encoding   character encoding\n     * @param bool   $standalone document is standalone (or not)\n     *\n     * @return string xml declaration\n     * @access public\n     * @static\n     * @uses attributesToString() to serialize the attributes of the XML declaration\n     */\n    function getXMLDeclaration($version = '1.0', $encoding = null, \n        $standalone = null)\n    {\n        $attributes = array(\n            'version' => $version,\n        );\n        // add encoding\n        if ($encoding !== null) {\n            $attributes['encoding'] = $encoding;\n        }\n        // add standalone, if specified\n        if ($standalone !== null) {\n            $attributes['standalone'] = $standalone ? 'yes' : 'no';\n        }\n\n        return sprintf('<?xml%s?>', \n            XML_Util::attributesToString($attributes, false));\n    }\n\n    /**\n     * build a document type declaration\n     *\n     * <code>\n     * require_once 'XML/Util.php';\n     *\n     * // get a doctype declaration:\n     * $xmlDecl = XML_Util::getDocTypeDeclaration('rootTag','myDocType.dtd');\n     * </code>\n     *\n     * @param string $root        name of the root tag\n     * @param string $uri         uri of the doctype definition \n     *                            (or array with uri and public id)\n     * @param string $internalDtd internal dtd entries\n     *\n     * @return string doctype declaration\n     * @access public\n     * @static\n     * @since 0.2\n     */\n    function getDocTypeDeclaration($root, $uri = null, $internalDtd = null)\n    {\n        if (is_array($uri)) {\n            $ref = sprintf(' PUBLIC \"%s\" \"%s\"', $uri['id'], $uri['uri']);\n        } elseif (!empty($uri)) {\n            $ref = sprintf(' SYSTEM \"%s\"', $uri);\n        } else {\n            $ref = '';\n        }\n\n        if (empty($internalDtd)) {\n            return sprintf('<!DOCTYPE %s%s>', $root, $ref);\n        } else {\n            return sprintf(\"<!DOCTYPE %s%s [\\n%s\\n]>\", $root, $ref, $internalDtd);\n        }\n    }\n\n    /**\n     * create string representation of an attribute list\n     *\n     * <code>\n     * require_once 'XML/Util.php';\n     *\n     * // build an attribute string\n     * $att = array(\n     *              'foo'   =>  'bar',\n     *              'argh'  =>  'tomato'\n     *            );\n     *\n     * $attList = XML_Util::attributesToString($att);\n     * </code>\n     *\n     * @param array      $attributes attribute array\n     * @param bool|array $sort       sort attribute list alphabetically, \n     *                               may also be an assoc array containing \n     *                               the keys 'sort', 'multiline', 'indent', \n     *                               'linebreak' and 'entities'\n     * @param bool       $multiline  use linebreaks, if more than \n     *                               one attribute is given\n     * @param string     $indent     string used for indentation of \n     *                               multiline attributes\n     * @param string     $linebreak  string used for linebreaks of \n     *                               multiline attributes\n     * @param int        $entities   setting for entities in attribute values \n     *                               (one of XML_UTIL_ENTITIES_NONE, \n     *                               XML_UTIL_ENTITIES_XML, \n     *                               XML_UTIL_ENTITIES_XML_REQUIRED, \n     *                               XML_UTIL_ENTITIES_HTML)\n     *\n     * @return string string representation of the attributes\n     * @access public\n     * @static\n     * @uses replaceEntities() to replace XML entities in attribute values\n     * @todo allow sort also to be an options array\n     */\n    function attributesToString($attributes, $sort = true, $multiline = false, \n        $indent = '    ', $linebreak = \"\\n\", $entities = XML_UTIL_ENTITIES_XML)\n    {\n        /*\n         * second parameter may be an array\n         */\n        if (is_array($sort)) {\n            if (isset($sort['multiline'])) {\n                $multiline = $sort['multiline'];\n            }\n            if (isset($sort['indent'])) {\n                $indent = $sort['indent'];\n            }\n            if (isset($sort['linebreak'])) {\n                $multiline = $sort['linebreak'];\n            }\n            if (isset($sort['entities'])) {\n                $entities = $sort['entities'];\n            }\n            if (isset($sort['sort'])) {\n                $sort = $sort['sort'];\n            } else {\n                $sort = true;\n            }\n        }\n        $string = '';\n        if (is_array($attributes) && !empty($attributes)) {\n            if ($sort) {\n                ksort($attributes);\n            }\n            if ( !$multiline || count($attributes) == 1) {\n                foreach ($attributes as $key => $value) {\n                    if ($entities != XML_UTIL_ENTITIES_NONE) {\n                        if ($entities === XML_UTIL_CDATA_SECTION) {\n                            $entities = XML_UTIL_ENTITIES_XML;\n                        }\n                        $value = XML_Util::replaceEntities($value, $entities);\n                    }\n                    $string .= ' ' . $key . '=\"' . $value . '\"';\n                }\n            } else {\n                $first = true;\n                foreach ($attributes as $key => $value) {\n                    if ($entities != XML_UTIL_ENTITIES_NONE) {\n                        $value = XML_Util::replaceEntities($value, $entities);\n                    }\n                    if ($first) {\n                        $string .= ' ' . $key . '=\"' . $value . '\"';\n                        $first   = false;\n                    } else {\n                        $string .= $linebreak . $indent . $key . '=\"' . $value . '\"';\n                    }\n                }\n            }\n        }\n        return $string;\n    }\n\n    /**\n     * Collapses empty tags.\n     *\n     * @param string $xml  XML\n     * @param int    $mode Whether to collapse all empty tags (XML_UTIL_COLLAPSE_ALL)\n     *                      or only XHTML (XML_UTIL_COLLAPSE_XHTML_ONLY) ones.\n     *\n     * @return string XML\n     * @access public\n     * @static\n     * @todo PEAR CS - unable to avoid \"space after open parens\" error\n     *       in the IF branch\n     */\n    function collapseEmptyTags($xml, $mode = XML_UTIL_COLLAPSE_ALL) \n    {\n        if ($mode == XML_UTIL_COLLAPSE_XHTML_ONLY) {\n            return preg_replace(\n                '/<(area|base(?:font)?|br|col|frame|hr|img|input|isindex|link|meta|'\n                . 'param)([^>]*)><\\/\\\\1>/s',\n                '<\\\\1\\\\2 />',\n                $xml);\n        } else {\n            return preg_replace('/<(\\w+)([^>]*)><\\/\\\\1>/s', '<\\\\1\\\\2 />', $xml);\n        }\n    }\n\n    /**\n     * create a tag\n     *\n     * This method will call XML_Util::createTagFromArray(), which\n     * is more flexible.\n     *\n     * <code>\n     * require_once 'XML/Util.php';\n     *\n     * // create an XML tag:\n     * $tag = XML_Util::createTag('myNs:myTag', \n     *     array('foo' => 'bar'), \n     *     'This is inside the tag', \n     *     'http://www.w3c.org/myNs#');\n     * </code>\n     *\n     * @param string $qname           qualified tagname (including namespace)\n     * @param array  $attributes      array containg attributes\n     * @param mixed  $content         the content\n     * @param string $namespaceUri    URI of the namespace\n     * @param int    $replaceEntities whether to replace XML special chars in \n     *                                content, embedd it in a CData section \n     *                                or none of both\n     * @param bool   $multiline       whether to create a multiline tag where \n     *                                each attribute gets written to a single line\n     * @param string $indent          string used to indent attributes \n     *                                (_auto indents attributes so they start \n     *                                at the same column)\n     * @param string $linebreak       string used for linebreaks\n     * @param bool   $sortAttributes  Whether to sort the attributes or not\n     *\n     * @return string XML tag\n     * @access public\n     * @static\n     * @see createTagFromArray()\n     * @uses createTagFromArray() to create the tag\n     */\n    function createTag($qname, $attributes = array(), $content = null, \n        $namespaceUri = null, $replaceEntities = XML_UTIL_REPLACE_ENTITIES, \n        $multiline = false, $indent = '_auto', $linebreak = \"\\n\", \n        $sortAttributes = true)\n    {\n        $tag = array(\n            'qname'      => $qname,\n            'attributes' => $attributes\n        );\n\n        // add tag content\n        if ($content !== null) {\n            $tag['content'] = $content;\n        }\n\n        // add namespace Uri\n        if ($namespaceUri !== null) {\n            $tag['namespaceUri'] = $namespaceUri;\n        }\n\n        return XML_Util::createTagFromArray($tag, $replaceEntities, $multiline, \n            $indent, $linebreak, $sortAttributes);\n    }\n\n    /**\n     * create a tag from an array\n     * this method awaits an array in the following format\n     * <pre>\n     * array(\n     *     // qualified name of the tag\n     *     'qname' => $qname        \n     *\n     *     // namespace prefix (optional, if qname is specified or no namespace)\n     *     'namespace' => $namespace    \n     *\n     *     // local part of the tagname (optional, if qname is specified)\n     *     'localpart' => $localpart,   \n     *\n     *     // array containing all attributes (optional)\n     *     'attributes' => array(),      \n     *\n     *     // tag content (optional)\n     *     'content' => $content,     \n     *\n     *     // namespaceUri for the given namespace (optional)\n     *     'namespaceUri' => $namespaceUri \n     * )\n     * </pre>\n     *\n     * <code>\n     * require_once 'XML/Util.php';\n     *\n     * $tag = array(\n     *     'qname'        => 'foo:bar',\n     *     'namespaceUri' => 'http://foo.com',\n     *     'attributes'   => array('key' => 'value', 'argh' => 'fruit&vegetable'),\n     *     'content'      => 'I\\'m inside the tag',\n     * );\n     * // creating a tag with qualified name and namespaceUri\n     * $string = XML_Util::createTagFromArray($tag);\n     * </code>\n     *\n     * @param array  $tag             tag definition\n     * @param int    $replaceEntities whether to replace XML special chars in \n     *                                content, embedd it in a CData section \n     *                                or none of both\n     * @param bool   $multiline       whether to create a multiline tag where each \n     *                                attribute gets written to a single line\n     * @param string $indent          string used to indent attributes \n     *                                (_auto indents attributes so they start \n     *                                at the same column)\n     * @param string $linebreak       string used for linebreaks\n     * @param bool   $sortAttributes  Whether to sort the attributes or not\n     *\n     * @return string XML tag\n     * @access public\n     * @static\n     * @see createTag()\n     * @uses attributesToString() to serialize the attributes of the tag\n     * @uses splitQualifiedName() to get local part and namespace of a qualified name\n     * @uses createCDataSection()\n     * @uses raiseError()\n     */\n    function createTagFromArray($tag, $replaceEntities = XML_UTIL_REPLACE_ENTITIES,\n        $multiline = false, $indent = '_auto', $linebreak = \"\\n\", \n        $sortAttributes = true)\n    {\n        if (isset($tag['content']) && !is_scalar($tag['content'])) {\n            return XML_Util::raiseError('Supplied non-scalar value as tag content',\n            XML_UTIL_ERROR_NON_SCALAR_CONTENT);\n        }\n\n        if (!isset($tag['qname']) && !isset($tag['localPart'])) {\n            return XML_Util::raiseError('You must either supply a qualified name '\n                . '(qname) or local tag name (localPart).', \n                XML_UTIL_ERROR_NO_TAG_NAME);\n        }\n\n        // if no attributes hav been set, use empty attributes\n        if (!isset($tag['attributes']) || !is_array($tag['attributes'])) {\n            $tag['attributes'] = array();\n        }\n\n        if (isset($tag['namespaces'])) {\n            foreach ($tag['namespaces'] as $ns => $uri) {\n                $tag['attributes']['xmlns:' . $ns] = $uri;\n            }\n        }\n\n        if (!isset($tag['qname'])) {\n            // qualified name is not given\n\n            // check for namespace\n            if (isset($tag['namespace']) && !empty($tag['namespace'])) {\n                $tag['qname'] = $tag['namespace'] . ':' . $tag['localPart'];\n            } else {\n                $tag['qname'] = $tag['localPart'];\n            }\n        } elseif (isset($tag['namespaceUri']) && !isset($tag['namespace'])) {\n            // namespace URI is set, but no namespace\n\n            $parts = XML_Util::splitQualifiedName($tag['qname']);\n\n            $tag['localPart'] = $parts['localPart'];\n            if (isset($parts['namespace'])) {\n                $tag['namespace'] = $parts['namespace'];\n            }\n        }\n\n        if (isset($tag['namespaceUri']) && !empty($tag['namespaceUri'])) {\n            // is a namespace given\n            if (isset($tag['namespace']) && !empty($tag['namespace'])) {\n                $tag['attributes']['xmlns:' . $tag['namespace']] =\n                    $tag['namespaceUri'];\n            } else {\n                // define this Uri as the default namespace\n                $tag['attributes']['xmlns'] = $tag['namespaceUri'];\n            }\n        }\n\n        // check for multiline attributes\n        if ($multiline === true) {\n            if ($indent === '_auto') {\n                $indent = str_repeat(' ', (strlen($tag['qname'])+2));\n            }\n        }\n\n        // create attribute list\n        $attList = XML_Util::attributesToString($tag['attributes'], \n            $sortAttributes, $multiline, $indent, $linebreak, $replaceEntities);\n        if (!isset($tag['content']) || (string)$tag['content'] == '') {\n            $tag = sprintf('<%s%s />', $tag['qname'], $attList);\n        } else {\n            switch ($replaceEntities) {\n            case XML_UTIL_ENTITIES_NONE:\n                break;\n            case XML_UTIL_CDATA_SECTION:\n                $tag['content'] = XML_Util::createCDataSection($tag['content']);\n                break;\n            default:\n                $tag['content'] = XML_Util::replaceEntities($tag['content'], \n                    $replaceEntities);\n                break;\n            }\n            $tag = sprintf('<%s%s>%s</%s>', $tag['qname'], $attList, $tag['content'],\n                $tag['qname']);\n        }\n        return $tag;\n    }\n\n    /**\n     * create a start element\n     *\n     * <code>\n     * require_once 'XML/Util.php';\n     *\n     * // create an XML start element:\n     * $tag = XML_Util::createStartElement('myNs:myTag', \n     *     array('foo' => 'bar') ,'http://www.w3c.org/myNs#');\n     * </code>\n     *\n     * @param string $qname          qualified tagname (including namespace)\n     * @param array  $attributes     array containg attributes\n     * @param string $namespaceUri   URI of the namespace\n     * @param bool   $multiline      whether to create a multiline tag where each \n     *                               attribute gets written to a single line\n     * @param string $indent         string used to indent attributes (_auto indents\n     *                               attributes so they start at the same column)\n     * @param string $linebreak      string used for linebreaks\n     * @param bool   $sortAttributes Whether to sort the attributes or not\n     *\n     * @return string XML start element\n     * @access public\n     * @static\n     * @see createEndElement(), createTag()\n     */\n    function createStartElement($qname, $attributes = array(), $namespaceUri = null,\n        $multiline = false, $indent = '_auto', $linebreak = \"\\n\", \n        $sortAttributes = true)\n    {\n        // if no attributes hav been set, use empty attributes\n        if (!isset($attributes) || !is_array($attributes)) {\n            $attributes = array();\n        }\n\n        if ($namespaceUri != null) {\n            $parts = XML_Util::splitQualifiedName($qname);\n        }\n\n        // check for multiline attributes\n        if ($multiline === true) {\n            if ($indent === '_auto') {\n                $indent = str_repeat(' ', (strlen($qname)+2));\n            }\n        }\n\n        if ($namespaceUri != null) {\n            // is a namespace given\n            if (isset($parts['namespace']) && !empty($parts['namespace'])) {\n                $attributes['xmlns:' . $parts['namespace']] = $namespaceUri;\n            } else {\n                // define this Uri as the default namespace\n                $attributes['xmlns'] = $namespaceUri;\n            }\n        }\n\n        // create attribute list\n        $attList = XML_Util::attributesToString($attributes, $sortAttributes, \n            $multiline, $indent, $linebreak);\n        $element = sprintf('<%s%s>', $qname, $attList);\n        return  $element;\n    }\n\n    /**\n     * create an end element\n     *\n     * <code>\n     * require_once 'XML/Util.php';\n     *\n     * // create an XML start element:\n     * $tag = XML_Util::createEndElement('myNs:myTag');\n     * </code>\n     *\n     * @param string $qname qualified tagname (including namespace)\n     *\n     * @return string XML end element\n     * @access public\n     * @static\n     * @see createStartElement(), createTag()\n     */\n    function createEndElement($qname)\n    {\n        $element = sprintf('</%s>', $qname);\n        return $element;\n    }\n\n    /**\n     * create an XML comment\n     *\n     * <code>\n     * require_once 'XML/Util.php';\n     *\n     * // create an XML start element:\n     * $tag = XML_Util::createComment('I am a comment');\n     * </code>\n     *\n     * @param string $content content of the comment\n     *\n     * @return string XML comment\n     * @access public\n     * @static\n     */\n    function createComment($content)\n    {\n        $comment = sprintf('<!-- %s -->', $content);\n        return $comment;\n    }\n\n    /**\n     * create a CData section\n     *\n     * <code>\n     * require_once 'XML/Util.php';\n     *\n     * // create a CData section\n     * $tag = XML_Util::createCDataSection('I am content.');\n     * </code>\n     *\n     * @param string $data data of the CData section\n     *\n     * @return string CData section with content\n     * @access public\n     * @static\n     */\n    function createCDataSection($data)\n    {\n        return sprintf('<![CDATA[%s]]>', \n            preg_replace('/\\]\\]>/', ']]]]><![CDATA[>', strval($data)));\n\n    }\n\n    /**\n     * split qualified name and return namespace and local part\n     *\n     * <code>\n     * require_once 'XML/Util.php';\n     *\n     * // split qualified tag\n     * $parts = XML_Util::splitQualifiedName('xslt:stylesheet');\n     * </code>\n     * the returned array will contain two elements:\n     * <pre>\n     * array(\n     *     'namespace' => 'xslt',\n     *     'localPart' => 'stylesheet'\n     * );\n     * </pre>\n     *\n     * @param string $qname     qualified tag name\n     * @param string $defaultNs default namespace (optional)\n     *\n     * @return array array containing namespace and local part\n     * @access public\n     * @static\n     */\n    function splitQualifiedName($qname, $defaultNs = null)\n    {\n        if (strstr($qname, ':')) {\n            $tmp = explode(':', $qname);\n            return array(\n                'namespace' => $tmp[0],\n                'localPart' => $tmp[1]\n            );\n        }\n        return array(\n            'namespace' => $defaultNs,\n            'localPart' => $qname\n        );\n    }\n\n    /**\n     * check, whether string is valid XML name\n     *\n     * <p>XML names are used for tagname, attribute names and various\n     * other, lesser known entities.</p>\n     * <p>An XML name may only consist of alphanumeric characters,\n     * dashes, undescores and periods, and has to start with a letter\n     * or an underscore.</p>\n     *\n     * <code>\n     * require_once 'XML/Util.php';\n     *\n     * // verify tag name\n     * $result = XML_Util::isValidName('invalidTag?');\n     * if (is_a($result, 'PEAR_Error')) {\n     *    print 'Invalid XML name: ' . $result->getMessage();\n     * }\n     * </code>\n     *\n     * @param string $string string that should be checked\n     *\n     * @return mixed true, if string is a valid XML name, PEAR error otherwise\n     * @access public\n     * @static\n     * @todo support for other charsets\n     * @todo PEAR CS - unable to avoid 85-char limit on second preg_match\n     */\n    function isValidName($string)\n    {\n        // check for invalid chars\n        if (!preg_match('/^[[:alpha:]_]$/', $string{0})) {\n            return XML_Util::raiseError('XML names may only start with letter '\n                . 'or underscore', XML_UTIL_ERROR_INVALID_START);\n        }\n\n        // check for invalid chars\n        if (!preg_match('/^([[:alpha:]_]([[:alnum:]\\-\\.]*)?:)?[[:alpha:]_]([[:alnum:]\\_\\-\\.]+)?$/',\n            $string)\n        ) {\n            return XML_Util::raiseError('XML names may only contain alphanumeric '\n                . 'chars, period, hyphen, colon and underscores', \n                XML_UTIL_ERROR_INVALID_CHARS);\n        }\n        // XML name is valid\n        return true;\n    }\n\n    /**\n     * replacement for XML_Util::raiseError\n     *\n     * Avoids the necessity to always require\n     * PEAR.php\n     *\n     * @param string $msg  error message\n     * @param int    $code error code\n     *\n     * @return PEAR_Error\n     * @access public\n     * @static\n     * @todo PEAR CS - should this use include_once instead?\n     */\n    function raiseError($msg, $code)\n    {\n        require_once 'PEAR.php';\n        return PEAR::raiseError($msg, $code);\n    }\n}\n?>\n"
  },
  {
    "path": "newscoop/include/campsite_constants.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Holman Romero <holman.romero@gmail.com>\n * @author Mugur Rus <mugur.rus@gmail.com>\n * @copyright 2007 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\n\n// Defines directory separator sign\nif(!defined('DIR_SEP')) {\n    define('DIR_SEP', DIRECTORY_SEPARATOR);\n}\nif (!isset($_SERVER['HTTP_HOST'])) {\n    $_SERVER['HTTP_HOST'] = null;\n}\n$scheme = (!isset($_SERVER['HTTPS']) || empty($_SERVER['HTTPS'])) ? 'http://' : 'https://';\n// Campsite paths (used by template engine)\ndefine('CS_PATH_BASE_URL', $scheme.$_SERVER['HTTP_HOST'].'/');\ndefine('CS_PATH_SITE', dirname(dirname(__FILE__)));\ndefine('CS_PATH_CONFIG', CS_PATH_SITE.DIR_SEP.'conf');\ndefine('CS_PATH_CLASSES', CS_PATH_SITE.DIR_SEP.'classes');\ndefine('CS_PATH_INCLUDES', CS_PATH_SITE.DIR_SEP.'include');\ndefine('CS_PATH_PEAR_LOCAL', CS_PATH_INCLUDES);\ndefine('CS_PATH_SMARTY', CS_PATH_INCLUDES.DIR_SEP.'smarty');\ndefine('CS_TEMPLATES_DIR', 'themes');\ndefine('CS_DEMO_ASSETS_DIR', 'sample_data');\ndefine('CS_PATH_TEMPLATES', CS_PATH_SITE.DIR_SEP.CS_TEMPLATES_DIR);\ndefine('CS_PATH_DEMO_ASSETS', CS_PATH_SITE.DIR_SEP.CS_TEMPLATES_DIR);\ndefine('CS_SYS_TEMPLATES_DIR', 'system_templates');\ndefine('CS_PATH_SYS_TEMPLATES', CS_PATH_SITE.DIR_SEP.CS_TEMPLATES_DIR.DIR_SEP.CS_SYS_TEMPLATES_DIR);\ndefine('CS_PLUGINS_DIR', 'plugins');\ndefine('CS_PATH_PLUGINS', CS_PATH_SITE.DIR_SEP.CS_PLUGINS_DIR);\ndefine('CS_INSTALL_DIR', CS_PATH_SITE.DIR_SEP.'install');\n\n$tmpDir = @ini_get('upload_tmp_dir') ? @ini_get('upload_tmp_dir') : '/tmp';\ndefine('CS_TMP_DIR', $tmpDir);\ndefine('CS_TMP_TPL_DIR', CS_TMP_DIR.DIR_SEP.'mtupload');\n\n// Campsite exception strings\ndefine('INVALID_OBJECT_STRING', 'invalid object');\ndefine('INVALID_PROPERTY_STRING', 'invalid property');\ndefine('INVALID_VALUE_STRING', 'invalid value');\ndefine('OF_PROPERTY_STRING', 'of property');\ndefine('OF_OBJECT_STRING', 'of object');\n\n// Newscoop error codes\ndefine('CAMP_SUCCESS', 1);\ndefine('CAMP_ERROR', 0);\ndefine('CAMP_ERROR_MKDIR', -100);\ndefine('CAMP_ERROR_RMDIR', -200);\ndefine('CAMP_ERROR_WRITE_DIR', -300);\ndefine('CAMP_ERROR_READ_DIR', -400);\ndefine('CAMP_ERROR_CREATE_FILE', -500);\ndefine('CAMP_ERROR_READ_FILE', -600);\ndefine('CAMP_ERROR_WRITE_FILE', -700);\ndefine('CAMP_ERROR_DELETE_FILE', -800);\ndefine('CAMP_ERROR_UPLOAD_FILE', -900);\n"
  },
  {
    "path": "newscoop/include/campsite_init.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Holman Romero <holman.romero@gmail.com>\n * @copyright 2007 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\n\nglobal $g_ado_db;\n\nif (!isset($GLOBALS['g_campsiteDir'])) {\n    $GLOBALS['g_campsiteDir'] = dirname(dirname(__FILE__));\n}\n\n// redirects to the installation process if necessary\nif (!file_exists($GLOBALS['g_campsiteDir'].'/conf/configuration.php')\n        || !file_exists($GLOBALS['g_campsiteDir'].'/conf/database_conf.php')) {\n    header('Location: install/index.php');\n    exit;\n}\n\nif (!defined('APPLICATION_PATH')) {\n    require_once __DIR__ . '/../application.php';\n}\n\nrequire_once($GLOBALS['g_campsiteDir'].'/conf/configuration.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/classes/CampSite.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/admin-files/lib_campsite.php');\n\n// set timezone\n$preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n$timeZone = $preferencesService->TimeZone;\nif (!empty($timeZone)) {\n    date_default_timezone_set($timeZone);\n    $sqlTimeZone = date('P', time());\n    // Better use offsets to UTC/GMT for MySQL because by default named timezones are not installed\n    $g_ado_db->Execute(\"SET SESSION time_zone = '\" . $sqlTimeZone . \"'\");\n} else {\n    // Some people forget to set their timezone in their php.ini,\n    // this prevents that from generating warnings\n    @date_default_timezone_set(@date_default_timezone_get());\n}\nunset($timeZone);\n\n?>\n"
  },
  {
    "path": "newscoop/include/captcha/fonts/COPYRIGHT.TXT",
    "content": "Bitstream Vera Fonts Copyright\n\nThe fonts have a generous copyright, allowing derivative works (as\nlong as \"Bitstream\" or \"Vera\" are not in the names), and full\nredistribution (so long as they are not *sold* by themselves). They\ncan be be bundled, redistributed and sold with any software.\n\nThe fonts are distributed under the following copyright:\n\nCopyright\n=========\n\nCopyright (c) 2003 by Bitstream, Inc. All Rights Reserved. Bitstream\nVera is a trademark of Bitstream, Inc.\n\nPermission is hereby granted, free of charge, to any person obtaining\na copy of the fonts accompanying this license (\"Fonts\") and associated\ndocumentation files (the \"Font Software\"), to reproduce and distribute\nthe Font Software, including without limitation the rights to use,\ncopy, merge, publish, distribute, and/or sell copies of the Font\nSoftware, and to permit persons to whom the Font Software is furnished\nto do so, subject to the following conditions:\n\nThe above copyright and trademark notices and this permission notice\nshall be included in all copies of one or more of the Font Software\ntypefaces.\n\nThe Font Software may be modified, altered, or added to, and in\nparticular the designs of glyphs or characters in the Fonts may be\nmodified and additional glyphs or characters may be added to the\nFonts, only if the fonts are renamed to names not containing either\nthe words \"Bitstream\" or the word \"Vera\".\n\nThis License becomes null and void to the extent applicable to Fonts\nor Font Software that has been modified and is distributed under the\n\"Bitstream Vera\" names.\n\nThe Font Software may be sold as part of a larger software package but\nno copy of one or more of the Font Software typefaces may be sold by\nitself.\n\nTHE FONT SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT\nOF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL\nBITSTREAM OR THE GNOME FOUNDATION BE LIABLE FOR ANY CLAIM, DAMAGES OR\nOTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL,\nOR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR\nOTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT\nSOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE.\n\nExcept as contained in this notice, the names of Gnome, the Gnome\nFoundation, and Bitstream Inc., shall not be used in advertising or\notherwise to promote the sale, use or other dealings in this Font\nSoftware without prior written authorization from the Gnome Foundation\nor Bitstream Inc., respectively. For further information, contact:\nfonts at gnome dot org.\n\nCopyright FAQ\n=============\n\n   1. I don't understand the resale restriction... What gives?\n\n      Bitstream is giving away these fonts, but wishes to ensure its\n      competitors can't just drop the fonts as is into a font sale system\n      and sell them as is. It seems fair that if Bitstream can't make money\n      from the Bitstream Vera fonts, their competitors should not be able to\n      do so either. You can sell the fonts as part of any software package,\n      however.\n\n   2. I want to package these fonts separately for distribution and\n      sale as part of a larger software package or system.  Can I do so?\n\n      Yes. A RPM or Debian package is a \"larger software package\" to begin \n      with, and you aren't selling them independently by themselves. \n      See 1. above.\n\n   3. Are derivative works allowed?\n      Yes!\n\n   4. Can I change or add to the font(s)?\n      Yes, but you must change the name(s) of the font(s).\n\n   5. Under what terms are derivative works allowed?\n\n      You must change the name(s) of the fonts. This is to ensure the\n      quality of the fonts, both to protect Bitstream and Gnome. We want to\n      ensure that if an application has opened a font specifically of these\n      names, it gets what it expects (though of course, using fontconfig,\n      substitutions could still could have occurred during font\n      opening). You must include the Bitstream copyright. Additional\n      copyrights can be added, as per copyright law. Happy Font Hacking!\n\n   6. If I have improvements for Bitstream Vera, is it possible they might get \n       adopted in future versions?\n\n      Yes. The contract between the Gnome Foundation and Bitstream has\n      provisions for working with Bitstream to ensure quality additions to\n      the Bitstream Vera font family. Please contact us if you have such\n      additions. Note, that in general, we will want such additions for the\n      entire family, not just a single font, and that you'll have to keep\n      both Gnome and Jim Lyles, Vera's designer, happy! To make sense to add\n      glyphs to the font, they must be stylistically in keeping with Vera's\n      design. Vera cannot become a \"ransom note\" font. Jim Lyles will be\n      providing a document describing the design elements used in Vera, as a\n      guide and aid for people interested in contributing to Vera.\n\n   7. I want to sell a software package that uses these fonts: Can I do so?\n\n      Sure. Bundle the fonts with your software and sell your software\n      with the fonts. That is the intent of the copyright.\n\n   8. If applications have built the names \"Bitstream Vera\" into them, \n      can I override this somehow to use fonts of my choosing?\n\n      This depends on exact details of the software. Most open source\n      systems and software (e.g., Gnome, KDE, etc.) are now converting to\n      use fontconfig (see www.fontconfig.org) to handle font configuration,\n      selection and substitution; it has provisions for overriding font\n      names and subsituting alternatives. An example is provided by the\n      supplied local.conf file, which chooses the family Bitstream Vera for\n      \"sans\", \"serif\" and \"monospace\".  Other software (e.g., the XFree86\n      core server) has other mechanisms for font substitution.\n\n"
  },
  {
    "path": "newscoop/include/captcha/fonts/README.TXT",
    "content": "Contained herin is the Bitstream Vera font family.\n\nThe Copyright information is found in the COPYRIGHT.TXT file (along\nwith being incoporated into the fonts themselves).\n\nThe releases notes are found in the file \"RELEASENOTES.TXT\".\n\nWe hope you enjoy Vera!\n\n                        Bitstream, Inc.\n\t\t\tThe Gnome Project\n"
  },
  {
    "path": "newscoop/include/captcha/fonts/RELEASENOTES.TXT",
    "content": "Bitstream Vera Fonts - April 16, 2003\n=====================================\n\nThe version number of these fonts is 1.10 to distinguish them from the\nbeta test fonts.\n\nNote that the Vera copyright is incorporated in the fonts themselves.\nThe License field in the fonts contains the copyright license as it\nappears below. The TrueType copyright field is not large enough to\ncontain the full license, so the license is incorporated (as you might\nthink if you thought about it) into the license field, which\nunfortunately can be obscure to find.  (In pfaedit, see: Element->Font\nInfo->TTFNames->License).\n\nOur apologies for it taking longer to complete the fonts than planned.\nBeta testers requested a tighter line spacing (less leading) and Jim\nLyles redesigned Vera's accents to bring its line spacing to more\ntypical of other fonts.  This took additional time and effort.  Our\nthanks to Jim for this effort above and beyond the call of duty.\n\nThere are four monospace and sans faces (normal, oblique, bold, bold\noblique) and two serif faces (normal and bold). Fontconfig/Xft2 (see\nwww.fontconfig.org) can artificially oblique the serif faces for you:\nthis loses hinting and distorts the faces slightly, but is visibly\ndifferent than normal and bold, and reasonably pleasing.\n\nOn systems with fontconfig 2.0 or 2.1 installed, making your sans,\nserif and monospace fonts default to these fonts is very easy.  Just\ndrop the file local.conf into your /etc/fonts directory.  This will\nmake the Bitstream fonts your default fonts for all applications using\nfontconfig (if sans, serif, or monospace names are used, as they often\nare as default values in many desktops). The XML in local.conf may\nneed modification to enable subpixel decimation, if appropriate,\nhowever, the commented out phrase does so for XFree86 4.3, in the case\nthat the server does not have sufficient information to identify the\nuse of a flat panel.  Fontconfig 2.2 adds Vera to the list of font\nfamilies and will, by default use it as the default sans, serif and\nmonospace fonts.\n\nDuring the testing of the final Vera fonts, we learned that screen\nfonts in general are only typically hinted to work correctly at\ninteger pixel sizes.  Vera is coded internally for integer sizes only.\nWe need to investigate further to see if there are commonly used fonts\nthat are hinted to be rounded but are not rounded to integer sizes due\nto oversights in their coding.\n\nMost fonts work best at 8 pixels and below if anti-aliased only, as\nthe amount of work required to hint well at smaller and smaller sizes\nbecomes astronomical.  GASP tables are typically used to control\nwhether hinting is used or not, but Freetype/Xft does not currently\nsupport GASP tables (which are present in Vera).\n\nTo mitigate this problem, both for Vera and other fonts, there will be\n(very shortly) a new fontconfig 2.2 release that will, by default not\napply hints if the size is below 8 pixels. if you should have a font\nthat in fact has been hinted more agressively, you can use fontconfig\nto note this exception. We believe this should improve many hinted\nfonts in addition to Vera, though implemeting GASP support is likely\nthe right long term solution.\n\nFont rendering in Gnome or KDE is the combination of algorithms in\nXft2 and Freetype, along with hinting in the fonts themselves. It is\nvital to have sufficient information to disentangle problems that you\nmay observe.\n\nNote that having your font rendering system set up correctly is vital\nto proper judgement of problems of the fonts:\n\n    * Freetype may or may not be configured to in ways that may\n      implement execution of possibly patented (in some parts of the world)\n      TrueType hinting algorithms, particularly at small sizes.  Best\n      results are obtained while using these algorithms.\n\n    * The freetype autohinter (used when the possibly patented\n      algorithms are not used) continues to improve with each release. If\n      you are using the autohinter, please ensure you are using an up to\n      date version of freetype before reporting problems.\n\n    * Please identify what version of freetype you are using in any\n      bug reports, and how your freetype is configured.\n\n    * Make sure you are not using the freetype version included in\n      XFree86 4.3, as it has bugs that significantly degrade most fonts,\n      including Vera. if you build XFree86 4.3 from source yourself, you may\n      have installed this broken version without intending it (as I\n      did). Vera was verified with the recently released Freetype 2.1.4. On\n      many systems, 'ldd\" can be used to see which freetype shared library\n      is actually being used.\n\n    * Xft/X Render does not (yet) implement gamma correction.  This\n      causes significant problems rendering white text on a black background\n      (causing partial pixels to be insufficiently shaded) if the gamma of\n      your monitor has not been compensated for, and minor problems with\n      black text on a while background.  The program \"xgamma\" can be used to\n      set a gamma correction value in the X server's color pallette. Most\n      monitors have a gamma near 2.\n\n    * Note that the Vera family uses minimal delta hinting. Your\n      results on other systems when not used anti-aliased may not be\n      entirely satisfying. We are primarily interested in reports of\n      problems on open source systems implementing Xft2/fontconfig/freetype\n      (which implements antialiasing and hinting adjustements, and\n      sophisticated subpixel decimation on flatpanels).  Also, the\n      algorithms used by Xft2 adjust the hints to integer widths and the\n      results are crisper on open source systems than on Windows or\n      MacIntosh.\n\n    * Your fontconfig may (probably does) predate the release of\n      fontconfig 2.2, and you may see artifacts not present when the font is\n      used at very small sizes with hinting enabled. \"vc-list -V\" can be\n      used to see what version you have installed.\n\nWe believe and hope that these fonts will resolve the problems\nreported during beta test.  The largest change is the reduction of\nleading (interline spacing), which had annoyed a number of people, and\nreduced Vera's utility for some applcations.  The Vera monospace font\nshould also now make '0' and 'O' and '1' and 'l' more clearly\ndistinguishable.\n\nThe version of these fonts is version 1.10.  Fontconfig should be\nchoosing the new version of the fonts if both the released fonts and\nbeta test fonts are installed (though please discard them: they have\nnames of form tt20[1-12]gn.ttf).  Note that older versions of\nfontconfig sometimes did not rebuild their cache correctly when new\nfonts are installed: please upgrade to fontconfig 2.2. \"fc-cache -f\"\ncan be used to force rebuilding fontconfig's cache files.\n\nIf you note problems, please send them to fonts at gnome dot org, with\nexactly which face and size and unicode point you observe the problem\nat. The xfd utility from XFree86 CVS may be useful for this (e.g. \"xfd\n-fa sans\").  A possibly more useful program to examine fonts at a\nvariety of sizes is the \"waterfall\" program found in Keith Packard's\nCVS.\n\n        $ cvs -d :pserver:anoncvs@keithp.com:/local/src/CVS login\n        Logging in to :pserver:anoncvs@keithp.com:2401/local/src/CVS\n        CVS password: <hit return>\n        $ cvs -d :pserver:anoncvs@keithp.com:/local/src/CVS co waterfall\n        $ cd waterfall\n        $ xmkmf -a\n        $ make\n        # make install\n        # make install.man\n\nAgain, please make sure you are running an up-to-date freetype, and\nthat you are only examining integer sizes.\n\nReporting Problems\n==================\n\nPlease send problem reports to fonts at gnome org, with the following\ninformation:\n\n   1. Version of Freetype, Xft2 and fontconfig\n   2. Whether TT hinting is being used, or the autohinter\n   3. Application being used\n   4. Character/Unicode code point that has problems (if applicable)\n   5. Version of which operating system\n   6. Please include a screenshot, when possible.\n\nPlease check the fonts list archives before reporting problems to cut\ndown on duplication.\n"
  },
  {
    "path": "newscoop/include/captcha/fonts/local.conf",
    "content": "<?xml version=\"1.0\"?>\n<!DOCTYPE fontconfig SYSTEM \"fonts.dtd\">\n<!-- /etc/fonts.conf file to configure system font access -->\n<fontconfig>\n        <!--  Enable sub-pixel rendering\n        <match target=\"font\">\n                <test qual=\"all\" name=\"rgba\">\n                        <const>unknown</const>\n                </test>\n                <edit name=\"rgba\" mode=\"assign\"><const>rgb</const></edit>\n        </match>\n         -->\n\n        <alias>\n                <family>serif</family>\n                <prefer>\n                        <family>Bitstream Vera Serif</family>\n                </prefer>\n        </alias>\n        <alias>\n                <family>sans-serif</family>\n                <prefer>\n                        <family>Bitstream Vera Sans</family>\n                </prefer>\n        </alias>\n        <alias>\n                <family>monospace</family>\n                <prefer>\n                        <family>Bitstream Vera Sans Mono</family>\n                </prefer>\n        </alias>\n</fontconfig>\n"
  },
  {
    "path": "newscoop/include/captcha/image.php",
    "content": "<?php\r\nsession_start();\r\nrequire('php-captcha.inc.php');\r\n\r\n$aFonts = array('fonts/VeraBd.ttf', 'fonts/VeraIt.ttf', 'fonts/Vera.ttf');\r\n\r\n$oVisualCaptcha = new PhpCaptcha($aFonts, 200, 60);\r\n//$oVisualCaptcha->SetBackgroundImages(array('capback1.jpg', 'capback2.jpg'));\r\n//$oVisualCaptcha->SetFontColorRange(120, 255);\r\n$oVisualCaptcha->Create();\r\n?>"
  },
  {
    "path": "newscoop/include/captcha/php-captcha.inc.php",
    "content": "<?php\r\n   /***************************************************************/\r\n   /* PhpCaptcha - A visual and audio CAPTCHA generation library\r\n\r\n      Software License Agreement (BSD License)\r\n\r\n      Copyright (C) 2005-2006, Edward Eliot.\r\n      All rights reserved.\r\n\r\n      Redistribution and use in source and binary forms, with or without\r\n      modification, are permitted provided that the following conditions are met:\r\n\r\n         * Redistributions of source code must retain the above copyright\r\n           notice, this list of conditions and the following disclaimer.\r\n         * Redistributions in binary form must reproduce the above copyright\r\n           notice, this list of conditions and the following disclaimer in the\r\n           documentation and/or other materials provided with the distribution.\r\n         * Neither the name of Edward Eliot nor the names of its contributors\r\n           may be used to endorse or promote products derived from this software\r\n           without specific prior written permission of Edward Eliot.\r\n\r\n      THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS \"AS IS\" AND ANY\r\n      EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\r\n      WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\r\n      DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY\r\n      DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\r\n      (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\r\n      LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND\r\n      ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\r\n      (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\r\n      SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r\n\r\n      Last Updated:  18th April 2006                               */\r\n   /***************************************************************/\r\n   // start a PHP session - this class uses sessions to store the generated\r\n   // code. Comment out if you are calling already from your application\r\n\r\n   //session_start();\r\n\r\n   /************************ Documentation ************************/\r\n   /*\r\n\r\n   Documentation is available at http://www.ejeliot.com/pages/2\r\n\r\n   */\r\n   /************************ Default Options **********************/\r\n\r\n\r\n   // class defaults - change to effect globally\r\n\r\n   define('CAPTCHA_SESSION_ID', 'php_captcha');\r\n   define('CAPTCHA_WIDTH', 200); // max 500\r\n   define('CAPTCHA_HEIGHT', 50); // max 200\r\n   define('CAPTCHA_NUM_CHARS', 5);\r\n   define('CAPTCHA_NUM_LINES', 70);\r\n   define('CAPTCHA_CHAR_SHADOW', false);\r\n   define('CAPTCHA_OWNER_TEXT', '');\r\n   define('CAPTCHA_CHAR_SET', ''); // defaults to A-Z\r\n   define('CAPTCHA_CASE_INSENSITIVE', true);\r\n   define('CAPTCHA_BACKGROUND_IMAGES', '');\r\n   define('CAPTCHA_MIN_FONT_SIZE', 20);\r\n   define('CAPTCHA_MAX_FONT_SIZE', 30);\r\n   define('CAPTCHA_USE_COLOUR', false);\r\n   define('CAPTCHA_FILE_TYPE', 'jpeg');\r\n   define('CAPTCHA_FLITE_PATH', '/usr/bin/flite');\r\n   define('CAPTCHA_AUDIO_PATH', '/tmp/'); // must be writeable by PHP process\r\n\r\n   /************************ End Default Options **********************/\r\n\r\n   // don't edit below this line (unless you want to change the class!)\r\n\r\n   class PhpCaptcha {\r\n      var $oImage;\r\n      var $aFonts;\r\n      var $iWidth;\r\n      var $iHeight;\r\n      var $iNumChars;\r\n      var $iNumLines;\r\n      var $iSpacing;\r\n      var $bCharShadow;\r\n      var $sOwnerText;\r\n      var $aCharSet;\r\n      var $bCaseInsensitive;\r\n      var $vBackgroundImages;\r\n      var $iMinFontSize;\r\n      var $iMaxFontSize;\r\n      var $bUseColour;\r\n      var $sFileType;\r\n      var $sCode = '';\r\n\t  var $aFontColorRange = array(0, 100);\r\n\r\n      function PhpCaptcha(\r\n         $aFonts, // array of TrueType fonts to use - specify full path\r\n         $iWidth = CAPTCHA_WIDTH, // width of image\r\n         $iHeight = CAPTCHA_HEIGHT // height of image\r\n      ) {\r\n         // get parameters\r\n         $this->aFonts = $aFonts;\r\n         $this->SetNumChars(CAPTCHA_NUM_CHARS);\r\n         $this->SetNumLines(CAPTCHA_NUM_LINES);\r\n         $this->DisplayShadow(CAPTCHA_CHAR_SHADOW);\r\n         $this->SetOwnerText(CAPTCHA_OWNER_TEXT);\r\n         $this->SetCharSet(CAPTCHA_CHAR_SET);\r\n         $this->CaseInsensitive(CAPTCHA_CASE_INSENSITIVE);\r\n         $this->SetBackgroundImages(CAPTCHA_BACKGROUND_IMAGES);\r\n         $this->SetMinFontSize(CAPTCHA_MIN_FONT_SIZE);\r\n         $this->SetMaxFontSize(CAPTCHA_MAX_FONT_SIZE);\r\n         $this->UseColour(CAPTCHA_USE_COLOUR);\r\n         $this->SetFileType(CAPTCHA_FILE_TYPE);\r\n         $this->SetWidth($iWidth);\r\n         $this->SetHeight($iHeight);\r\n      }\r\n\r\n      function CalculateSpacing() {\r\n         $this->iSpacing = (int)($this->iWidth / $this->iNumChars);\r\n      }\r\n\r\n      function SetWidth($iWidth) {\r\n         $this->iWidth = $iWidth;\r\n         if ($this->iWidth > 500) $this->iWidth = 500; // to prevent perfomance impact\r\n         $this->CalculateSpacing();\r\n      }\r\n\r\n      function SetHeight($iHeight) {\r\n         $this->iHeight = $iHeight;\r\n         if ($this->iHeight > 200) $this->iHeight = 200; // to prevent performance impact\r\n      }\r\n\r\n      function SetNumChars($iNumChars) {\r\n         $this->iNumChars = $iNumChars;\r\n         $this->CalculateSpacing();\r\n      }\r\n\r\n      function SetNumLines($iNumLines) {\r\n         $this->iNumLines = $iNumLines;\r\n      }\r\n\r\n      function DisplayShadow($bCharShadow) {\r\n         $this->bCharShadow = $bCharShadow;\r\n      }\r\n\r\n      function SetOwnerText($sOwnerText) {\r\n         $this->sOwnerText = $sOwnerText;\r\n      }\r\n\r\n      function SetCharSet($vCharSet) {\r\n         // check for input type\r\n         if (is_array($vCharSet)) {\r\n            $this->aCharSet = $vCharSet;\r\n         } else {\r\n            if ($vCharSet != '') {\r\n               // split items on commas\r\n               $aCharSet = explode(',', $vCharSet);\r\n\r\n               // initialise array\r\n               $this->aCharSet = array();\r\n\r\n               // loop through items\r\n               foreach ($aCharSet as $sCurrentItem) {\r\n                  // a range should have 3 characters, otherwise is normal character\r\n                  if (strlen($sCurrentItem) == 3) {\r\n                     // split on range character\r\n                     $aRange = explode('-', $sCurrentItem);\r\n\r\n                     // check for valid range\r\n                     if (count($aRange) == 2 && $aRange[0] < $aRange[1]) {\r\n                        // create array of characters from range\r\n                        $aRange = range($aRange[0], $aRange[1]);\r\n\r\n                        // add to charset array\r\n                        $this->aCharSet = array_merge($this->aCharSet, $aRange);\r\n                     }\r\n                  } else {\r\n                     $this->aCharSet[] = $sCurrentItem;\r\n                  }\r\n               }\r\n            }\r\n         }\r\n      }\r\n\r\n      function CaseInsensitive($bCaseInsensitive) {\r\n         $this->bCaseInsensitive = $bCaseInsensitive;\r\n      }\r\n\r\n      function SetBackgroundImages($vBackgroundImages) {\r\n         $this->vBackgroundImages = $vBackgroundImages;\r\n      }\r\n\r\n      function SetMinFontSize($iMinFontSize) {\r\n         $this->iMinFontSize = $iMinFontSize;\r\n      }\r\n\r\n      function SetMaxFontSize($iMaxFontSize) {\r\n         $this->iMaxFontSize = $iMaxFontSize;\r\n      }\r\n\r\n      function UseColour($bUseColour) {\r\n         $this->bUseColour = $bUseColour;\r\n      }\r\n\r\n      function SetFontColorRange($iMinValue, $iMaxValue = null) {\r\n      \tif (is_array($iMinValue) && isset($iMinValue[0]) && isset($iMinValue[1])\r\n      \t\t&& ($iMinValue[0] >= 0) && ($iMinValue[0] < $iMinValue[1]) && ($iMinValue[1] <= 255)) {\r\n      \t\t$this->aFontColorRange = $iMinValue;\r\n      \t} elseif (($iMinValue >= 0) && ($iMinValue < $iMaxValue) && ($iMaxValue <= 255)) {\r\n      \t\t$this->aFontColorRange = array($iMinValue, $iMaxValue);\r\n      \t}\r\n      }\r\n\r\n      function SetFileType($sFileType) {\r\n         // check for valid file type\r\n         if (in_array($sFileType, array('gif', 'png', 'jpeg'))) {\r\n            $this->sFileType = $sFileType;\r\n         } else {\r\n            $this->sFileType = 'jpeg';\r\n         }\r\n      }\r\n\r\n      function DrawLines() {\r\n         for ($i = 0; $i < $this->iNumLines; $i++) {\r\n            // allocate colour\r\n            if ($this->bUseColour) {\r\n               $iLineColour = imagecolorallocate($this->oImage, rand(100, 250), rand(100, 250), rand(100, 250));\r\n            } else {\r\n               $iRandColour = rand(100, 250);\r\n               $iLineColour = imagecolorallocate($this->oImage, $iRandColour, $iRandColour, $iRandColour);\r\n            }\r\n\r\n            // draw line\r\n            imageline($this->oImage, rand(0, $this->iWidth), rand(0, $this->iHeight), rand(0, $this->iWidth), rand(0, $this->iHeight), $iLineColour);\r\n         }\r\n      }\r\n\r\n      function DrawOwnerText() {\r\n         // allocate owner text colour\r\n         $iBlack = imagecolorallocate($this->oImage, 0, 0, 0);\r\n         // get height of selected font\r\n         $iOwnerTextHeight = imagefontheight(2);\r\n         // calculate overall height\r\n         $iLineHeight = $this->iHeight - $iOwnerTextHeight - 4;\r\n\r\n         // draw line above text to separate from CAPTCHA\r\n         imageline($this->oImage, 0, $iLineHeight, $this->iWidth, $iLineHeight, $iBlack);\r\n\r\n         // write owner text\r\n         imagestring($this->oImage, 2, 3, $this->iHeight - $iOwnerTextHeight - 3, $this->sOwnerText, $iBlack);\r\n\r\n         // reduce available height for drawing CAPTCHA\r\n         $this->iHeight = $this->iHeight - $iOwnerTextHeight - 5;\r\n      }\r\n\r\n      function GenerateCode() {\r\n         // reset code\r\n         $this->sCode = '';\r\n\r\n         // loop through and generate the code letter by letter\r\n         for ($i = 0; $i < $this->iNumChars; $i++) {\r\n            if (count($this->aCharSet) > 0) {\r\n               // select random character and add to code string\r\n               $this->sCode .= $this->aCharSet[array_rand($this->aCharSet)];\r\n            } else {\r\n               // select random character and add to code string\r\n               $this->sCode .= chr(rand(65, 90));\r\n            }\r\n         }\r\n\r\n         // save code in session variable\r\n         if ($this->bCaseInsensitive) {\r\n            $_SESSION[CAPTCHA_SESSION_ID] = strtoupper($this->sCode);\r\n         } else {\r\n            $_SESSION[CAPTCHA_SESSION_ID] = $this->sCode;\r\n         }\r\n      }\r\n\r\n      function DrawCharacters() {\r\n         // loop through and write out selected number of characters\r\n         for ($i = 0; $i < strlen($this->sCode); $i++) {\r\n            // select random font\r\n            $sCurrentFont = $this->aFonts[array_rand($this->aFonts)];\r\n\r\n            // select random colour\r\n            $minFontColor = $this->aFontColorRange[0];\r\n            $maxFontColor = $this->aFontColorRange[1];\r\n            if ($this->bUseColour) {\r\n               $iTextColour = imagecolorallocate($this->oImage, rand($minFontColor, $maxFontColor), rand($minFontColor, $maxFontColor), rand($minFontColor, $maxFontColor));\r\n\r\n               if ($this->bCharShadow) {\r\n                  // shadow colour\r\n                  $iShadowColour = imagecolorallocate($this->oImage, rand($minFontColor, $maxFontColor), rand($minFontColor, $maxFontColor), rand($minFontColor, $maxFontColor));\r\n               }\r\n            } else {\r\n               $iRandColour = rand($minFontColor, $maxFontColor);\r\n               $iTextColour = imagecolorallocate($this->oImage, $iRandColour, $iRandColour, $iRandColour);\r\n\r\n               if ($this->bCharShadow) {\r\n                  // shadow colour\r\n                  $iRandColour = rand($minFontColor, $maxFontColor);\r\n                  $iShadowColour = imagecolorallocate($this->oImage, $iRandColour, $iRandColour, $iRandColour);\r\n               }\r\n            }\r\n\r\n            // select random font size\r\n            $iFontSize = rand($this->iMinFontSize, $this->iMaxFontSize);\r\n\r\n            // select random angle\r\n            $iAngle = rand(-30, 30);\r\n\r\n            // get dimensions of character in selected font and text size\r\n            $aCharDetails = imageftbbox($iFontSize, $iAngle, $sCurrentFont, $this->sCode[$i], array());\r\n\r\n            // calculate character starting coordinates\r\n            $iX = $this->iSpacing / 4 + $i * $this->iSpacing;\r\n            $iCharHeight = $aCharDetails[2] - $aCharDetails[5];\r\n            $iY = $this->iHeight / 2 + $iCharHeight / 4;\r\n\r\n            // write text to image\r\n            imagefttext($this->oImage, $iFontSize, $iAngle, $iX, $iY, $iTextColour, $sCurrentFont, $this->sCode[$i], array());\r\n\r\n            if ($this->bCharShadow) {\r\n               $iOffsetAngle = rand(-30, 30);\r\n\r\n               $iRandOffsetX = rand(-5, 5);\r\n               $iRandOffsetY = rand(-5, 5);\r\n\r\n               imagefttext($this->oImage, $iFontSize, $iOffsetAngle, $iX + $iRandOffsetX, $iY + $iRandOffsetY, $iShadowColour, $sCurrentFont, $this->sCode[$i], array());\r\n            }\r\n         }\r\n      }\r\n\r\n      function WriteFile($sFilename) {\r\n         if ($sFilename == '') {\r\n            // tell browser that data is jpeg\r\n            header(\"Content-type: image/$this->sFileType\");\r\n         }\r\n\r\n         switch ($this->sFileType) {\r\n            case 'gif':\r\n               $sFilename != '' ? imagegif($this->oImage, $sFilename) : imagegif($this->oImage);\r\n               break;\r\n            case 'png':\r\n               $sFilename != '' ? imagepng($this->oImage, $sFilename) : imagepng($this->oImage);\r\n               break;\r\n            default:\r\n               $sFilename != '' ? imagejpeg($this->oImage, $sFilename) : imagejpeg($this->oImage);\r\n         }\r\n      }\r\n\r\n      function Create($sFilename = '') {\r\n         // check for required gd functions\r\n         if (!function_exists('imagecreate') || !function_exists(\"image$this->sFileType\") || ($this->vBackgroundImages != '' && !function_exists('imagecreatetruecolor'))) {\r\n            return false;\r\n         }\r\n\r\n         // get background image if specified and copy to CAPTCHA\r\n         if (is_array($this->vBackgroundImages) || $this->vBackgroundImages != '') {\r\n            // create new image\r\n            $this->oImage = imagecreatetruecolor($this->iWidth, $this->iHeight);\r\n\r\n            // create background image\r\n            if (is_array($this->vBackgroundImages)) {\r\n               $iRandImage = array_rand($this->vBackgroundImages);\r\n               $oBackgroundImage = imagecreatefromjpeg($this->vBackgroundImages[$iRandImage]);\r\n            } else {\r\n               $oBackgroundImage = imagecreatefromjpeg($this->vBackgroundImages);\r\n            }\r\n\r\n            // copy background image\r\n            imagecopy($this->oImage, $oBackgroundImage, 0, 0, 0, 0, $this->iWidth, $this->iHeight);\r\n\r\n            // free memory used to create background image\r\n            imagedestroy($oBackgroundImage);\r\n         } else {\r\n            // create new image\r\n            $this->oImage = imagecreate($this->iWidth, $this->iHeight);\r\n         }\r\n\r\n         // allocate white background colour\r\n         imagecolorallocate($this->oImage, 255, 255, 255);\r\n\r\n         // check for owner text\r\n         if ($this->sOwnerText != '') {\r\n            $this->DrawOwnerText();\r\n         }\r\n\r\n         // check for background image before drawing lines\r\n         if (!is_array($this->vBackgroundImages) && $this->vBackgroundImages == '') {\r\n            $this->DrawLines();\r\n         }\r\n\r\n         $this->GenerateCode();\r\n         $this->DrawCharacters();\r\n\r\n         // write out image to file or browser\r\n         $this->WriteFile($sFilename);\r\n\r\n         // free memory used in creating image\r\n         imagedestroy($this->oImage);\r\n\r\n         return true;\r\n      }\r\n\r\n      // call this method statically\r\n      function Validate($sUserCode, $bCaseInsensitive = true) {\r\n         if ($bCaseInsensitive) {\r\n            $sUserCode = strtoupper($sUserCode);\r\n\r\n         }\r\n         if (!empty($_SESSION[CAPTCHA_SESSION_ID]) && $sUserCode == $_SESSION[CAPTCHA_SESSION_ID]) {\r\n            // clear to prevent re-use\r\n            unset($_SESSION[CAPTCHA_SESSION_ID]);\r\n\r\n            return true;\r\n         }\r\n\r\n         return false;\r\n      }\r\n   }\r\n\r\n   // this class will only work correctly if a visual CAPTCHA has been created first using PhpCaptcha\r\n   class AudioPhpCaptcha {\r\n      var $sFlitePath;\r\n      var $sAudioPath;\r\n      var $sCode;\r\n\r\n      function AudioPhpCaptcha(\r\n         $sFlitePath = CAPTCHA_FLITE_PATH, // path to flite binary\r\n         $sAudioPath = CAPTCHA_AUDIO_PATH // the location to temporarily store the generated audio CAPTCHA\r\n      ) {\r\n         $this->SetFlitePath($sFlitePath);\r\n         $this->SetAudioPath($sAudioPath);\r\n\r\n         // retrieve code if already set by previous instance of visual PhpCaptcha\r\n         if (isset($_SESSION[CAPTCHA_SESSION_ID])) {\r\n            $this->sCode = $_SESSION[CAPTCHA_SESSION_ID];\r\n         }\r\n      }\r\n\r\n      function SetFlitePath($sFlitePath) {\r\n         $this->sFlitePath = $sFlitePath;\r\n      }\r\n\r\n      function SetAudioPath($sAudioPath) {\r\n         $this->sAudioPath = $sAudioPath;\r\n      }\r\n\r\n      function Mask($sText) {\r\n         $iLength = strlen($sText);\r\n\r\n         // loop through characters in code and format\r\n         $sFormattedText = '';\r\n         for ($i = 0; $i < $iLength; $i++) {\r\n            // comma separate all but first and last characters\r\n            if ($i > 0 && $i < $iLength - 1) {\r\n               $sFormattedText .= ', ';\r\n            } elseif ($i == $iLength - 1) { // precede last character with \"and\"\r\n               $sFormattedText .= ' and ';\r\n            }\r\n            $sFormattedText .= $sText[$i];\r\n         }\r\n\r\n         $aPhrases = array(\r\n            \"The %1\\$s characters are as follows: %2\\$s\",\r\n            \"%2\\$s, are the %1\\$s letters\",\r\n            \"Here are the %1\\$s characters: %2\\$s\",\r\n            \"%1\\$s characters are: %2\\$s\",\r\n            \"%1\\$s letters: %2\\$s\"\r\n         );\r\n\r\n         $iPhrase = array_rand($aPhrases);\r\n\r\n         return sprintf($aPhrases[$iPhrase], $iLength, $sFormattedText);\r\n      }\r\n\r\n      function Create() {\r\n         $sText = $this->Mask($this->sCode);\r\n         $sFile = md5($this->sCode.time());\r\n\r\n         // create file with flite\r\n         shell_exec(\"$this->sFlitePath -t \\\"$sText\\\" -o $this->sAudioPath$sFile.wav\");\r\n\r\n         // set headers\r\n         header('Content-type: audio/x-wav');\r\n         header(\"Content-Disposition: attachment;filename=$sFile.wav\");\r\n\r\n         // output to browser\r\n         echo file_get_contents(\"$this->sAudioPath$sFile.wav\");\r\n\r\n         // delete temporary file\r\n         @unlink(\"$this->sAudioPath$sFile.wav\");\r\n      }\r\n   }\r\n\r\n   // example sub class\r\n   class PhpCaptchaColour extends PhpCaptcha {\r\n      function PhpCaptchaColour($aFonts, $iWidth = CAPTCHA_WIDTH, $iHeight = CAPTCHA_HEIGHT) {\r\n         // call parent constructor\r\n         parent::PhpCaptcha($aFonts, $iWidth, $iHeight);\r\n\r\n         // set options\r\n         $this->UseColour(true);\r\n      }\r\n   }\r\n?>"
  },
  {
    "path": "newscoop/include/crypto/rc4Encrypt.php",
    "content": "<?php\n\nfunction base64ToText($text)\n{\n        $b64s = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_\"';\n        $r = '';\n        $m = 0;\n        $a = 0;\n        for($n = 0; $n < strlen($text); $n++) {\n                $c = strpos($b64s, ($text{$n}));\n                if ($c >= 0) {\n                        if ($m) {\n                                $r .= chr(($c << (8 - $m)) & 255 | $a);\n                        }\n                        $a = $c >> $m;\n                        $m = ($m + 2) % 8;\n                }\n        }\n        return $r;\n}\n\nfunction rc4($key, $text)\n{\n        $kl = strlen($key);\n        $s = array();\n\n        for($i = 0; $i < 256; $i++) {\n                $s[$i] = $i;\n        }\n        $y = 0;\n        for($j = 0; $j < 2; $j++) {\n                for($x = 0; $x < 256; $x++) {\n                        $y = (ord($key[$x % $kl]) + $s[$x] + $y) % 256;\n                        $t = $s[$x];\n                        $s[$x] = $s[$y];\n                        $s[$y] = $t;\n                }\n        }\n        $z = '';\n        for($x = 0; $x < strlen($text); $x++) {\n                $x2 = $x & 255;\n                $y = ($s[$x2] + $y) & 255;\n                $t = $s[$x2];\n                $s[$x2] = $s[$y];\n                $s[$y] = $t;\n                $z .= chr((ord($text[$x]) ^ $s[($s[$x2] + $s[$y]) % 256]));\n        }\n        return $z;\n}\n\n?>\n"
  },
  {
    "path": "newscoop/include/data/Mail_Mime/xmail.dtd",
    "content": "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\r\n\r\n<!ENTITY lt \"&#38;#60;\">\r\n<!ENTITY gt \"&#62;\">\r\n<!ENTITY amp \"&#38;#38;\">\r\n<!ENTITY apos \"&#39;\">\r\n<!ENTITY quot \"&#34;\">\r\n<!ENTITY crlf \"&#13;&#10;\">\r\n\r\n<!ELEMENT email (header+, (body | mimepart+))>\r\n<!ELEMENT mimepart (header+, (body | mimepart+))>\r\n<!ELEMENT body (#PCDATA)>\r\n<!ELEMENT header ((headername|headervalue|parameter)*)>\r\n<!ELEMENT headername (#PCDATA)>\r\n<!ELEMENT headervalue (#PCDATA)>\r\n<!ELEMENT parameter ((paramname|paramvalue)+)>\r\n<!ELEMENT paramvalue (#PCDATA)>\r\n<!ELEMENT paramname (#PCDATA)>\r\n\r\n"
  },
  {
    "path": "newscoop/include/data/Mail_Mime/xmail.xsl",
    "content": "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\r\n<xsl:stylesheet version=\"1.0\" xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\" xmlns:fo=\"http://www.w3.org/1999/XSL/Format\">\r\n<xsl:output method=\"text\" omit-xml-declaration=\"yes\" indent=\"no\"/>\r\n<xsl:preserve-space elements=\"headervalue paramvalue body\"/>\r\n\r\n\t<xsl:template name=\"mimepart\">\r\n\r\n\t\t<xsl:variable name=\"boundary\">\r\n\t\t\t\t<xsl:for-each select=\"./header\">\r\n\t\t\t\t\t<xsl:if test=\"string(./headername) = 'Content-Type'\">\r\n\t\t\t\t\t\t<xsl:for-each select=\"./parameter\">\r\n\t\t\t\t\t\t\t<xsl:if test=\"string(./paramname) = 'boundary'\">\r\n\t\t\t\t\t\t\t\t<xsl:value-of select=\"paramvalue\"/>\r\n\t\t\t\t\t\t\t</xsl:if>\r\n\t\t\t\t\t\t</xsl:for-each>\r\n\t\t\t\t\t</xsl:if>\r\n\t\t\t\t</xsl:for-each>\r\n\t\t</xsl:variable>\r\n\r\n\t\t<xsl:for-each select=\"header\">\r\n\r\n\t\t\t<xsl:value-of select=\"headername\"/>\r\n\t\t\t<xsl:text>: </xsl:text>\r\n\t\t\t<xsl:value-of select=\"headervalue\"/>\r\n\r\n\t\t\t<xsl:if test=\"count(./parameter) = 0\">\r\n\t\t\t\t<xsl:text>&#13;&#10;</xsl:text>\r\n\t\t\t</xsl:if>\r\n\r\n\t\t\t<xsl:for-each select=\"parameter\">\r\n\t\t\t\t<xsl:text>;&#13;&#10;&#09;</xsl:text>\r\n\t\t\t\t<xsl:value-of select=\"paramname\"/>\r\n\t\t\t\t<xsl:text>=\"</xsl:text>\r\n\t\t\t\t<xsl:value-of select=\"paramvalue\"/>\r\n\t\t\t\t<xsl:text>\"</xsl:text>\r\n\t\t\t</xsl:for-each>\r\n\r\n\t\t\t<xsl:if test=\"count(./parameter) > 0\">\r\n\t\t\t\t<xsl:text>&#13;&#10;</xsl:text>\r\n\t\t\t</xsl:if>\r\n\r\n\t\t</xsl:for-each>\r\n\r\n\t\t<xsl:text>&#13;&#10;</xsl:text>\r\n\r\n\t\t<!-- Which to do, print a body or process subparts? -->\r\n\t\t<xsl:choose>\r\n\t\t\t<xsl:when test=\"count(./mimepart) = 0\">\r\n\t\t\t\t<xsl:value-of select=\"body\"/>\r\n\t\t\t\t<xsl:text>&#13;&#10;</xsl:text>\r\n\t\t\t</xsl:when>\r\n\r\n\t\t\t<xsl:otherwise>\r\n\t\t\t\t<xsl:for-each select=\"mimepart\">\r\n\t\t\t\t\t<xsl:text>--</xsl:text><xsl:value-of select=\"$boundary\"/><xsl:text>&#13;&#10;</xsl:text>\r\n\t\t\t\t\t<xsl:call-template name=\"mimepart\"/>\r\n\t\t\t\t</xsl:for-each>\r\n\r\n\t\t\t\t<xsl:text>--</xsl:text><xsl:value-of select=\"$boundary\"/><xsl:text>--&#13;&#10;</xsl:text>\r\n\r\n\t\t\t</xsl:otherwise>\r\n\t\t</xsl:choose>\r\n\t</xsl:template>\r\n\r\n<!-- This is where the stylesheet really starts, matching the top level email element -->\r\n\t<xsl:template match=\"email\">\r\n\t\t<xsl:call-template name=\"mimepart\"/>\r\n\t</xsl:template>\r\n\r\n</xsl:stylesheet>"
  },
  {
    "path": "newscoop/include/data/PEAR/package.dtd",
    "content": "<!--\n     $Id: package.dtd,v 1.38 2005-11-12 02:23:07 cellog Exp $\n\n     This is the PEAR package description, version 1.0.\n     It should be used with the informal public identifier:\n\n         \"-//PHP Group//DTD PEAR Package 1.0//EN//XML\"\n\n     Copyright (c) 1997-2005 The PHP Group             \n\n     This source file is subject to version 3.00 of the PHP license,\n     that is bundled with this package in the file LICENSE, and is\n     available at through the world-wide-web at\n     http://www.php.net/license/3_0.txt. \n     If you did not receive a copy of the PHP license and are unable to\n     obtain it through the world-wide-web, please send a note to\n     license@php.net so we can mail you a copy immediately.\n\n     Authors:\n         Stig S. Bakken <ssb@fast.no>\n         Gregory Beaver <cellog@php.net>\n\n  -->\n<!ENTITY % NUMBER \"CDATA\">\n<!ELEMENT package (name,summary,description,license?,maintainers,release,changelog?)>\n<!ATTLIST package type    (source|binary|empty) \"empty\"\n                  version CDATA                 #REQUIRED\n                  packagerversion CDATA         #IMPLIED>\n\n<!ELEMENT name (#PCDATA)>\n\n<!ELEMENT summary (#PCDATA)>\n\n<!ELEMENT license (#PCDATA)>\n\n<!ELEMENT description (#PCDATA)>\n\n<!ELEMENT maintainers (maintainer)+>\n\n<!ELEMENT maintainer (user|role|name|email)+>\n\n<!ELEMENT user (#PCDATA)>\n\n<!ELEMENT role (#PCDATA)>\n\n<!ELEMENT email (#PCDATA)>\n\n<!ELEMENT changelog (release)+>\n\n<!ELEMENT release (version,date,license,state,notes,warnings?,provides*,deps?,configureoptions?,filelist?)>\n\n<!ELEMENT version (#PCDATA)>\n\n<!ELEMENT date (#PCDATA)>\n\n<!ELEMENT state (#PCDATA)>\n\n<!ELEMENT notes (#PCDATA)>\n\n<!ELEMENT warnings (#PCDATA)>\n\n<!ELEMENT deps (dep*)>\n\n<!ELEMENT dep (#PCDATA)>\n<!ATTLIST dep type    (pkg|ext|php) #REQUIRED\n\t                       rel     (has|eq|lt|le|gt|ge)                          #IMPLIED\n\t                       version CDATA                                     #IMPLIED\n\t                       optional (yes|no)     'no'>\n\n<!ELEMENT configureoptions (configureoption)+>\n\n<!ELEMENT configureoption EMPTY>\n<!ATTLIST configureoption name CDATA #REQUIRED\n                                           default CDATA #IMPLIED\n                                           prompt CDATA #REQUIRED>\n\n<!ELEMENT provides EMPTY>\n<!ATTLIST provides type (ext|prog|class|function|feature|api) #REQUIRED\n                                name CDATA #REQUIRED\n                                extends CDATA #IMPLIED>\n<!ELEMENT filelist (dir|file)+>\n\n<!ELEMENT dir (dir|file)+>\n<!ATTLIST dir name           CDATA #REQUIRED\n              role           (php|ext|src|test|doc|data|script) 'php'\n              baseinstalldir CDATA #IMPLIED>\n\n<!ELEMENT file (replace*)>\n<!ATTLIST file role           (php|ext|src|test|doc|data|script) 'php'\n               debug          (na|on|off)        'na'\n               format         CDATA              #IMPLIED\n               baseinstalldir CDATA              #IMPLIED\n               platform       CDATA              #IMPLIED\n               md5sum         CDATA              #IMPLIED\n               name           CDATA              #REQUIRED\n               install-as     CDATA              #IMPLIED>\n\n<!ELEMENT replace EMPTY>\n<!ATTLIST replace type (php-const|pear-config|package-info) #REQUIRED\n                              from CDATA #REQUIRED\n                              to CDATA #REQUIRED>\n\n\n"
  },
  {
    "path": "newscoop/include/data/PEAR/template.spec",
    "content": "Summary: PEAR: @summary@\nName: @rpm_package@\nVersion: @version@\nRelease: 1\nLicense: @release_license@\nGroup: Development/Libraries\nSource: http://@master_server@/get/@package@-%{version}.tgz\nBuildRoot: %{_tmppath}/%{name}-root\nURL: http://@master_server@/package/@package@\nPrefix: %{_prefix}\nBuildArchitectures: @arch@\n@extra_headers@\n\n%description\n@description@\n\n%prep\nrm -rf %{buildroot}/*\n%setup -c -T\n# XXX Source files location is missing here in pear cmd\npear -v -c %{buildroot}/pearrc \\\n        -d php_dir=%{_libdir}/php/pear \\\n        -d doc_dir=/docs \\\n        -d bin_dir=%{_bindir} \\\n        -d data_dir=%{_libdir}/php/pear/data \\\n        -d test_dir=%{_libdir}/php/pear/tests \\\n        -d ext_dir=%{_libdir} \\@extra_config@\n        -s\n\n%build\necho BuildRoot=%{buildroot}\n\n%postun\n# if refcount = 0 then package has been removed (not upgraded)\nif [ \"$1\" -eq \"0\" ]; then\n    pear uninstall --nodeps -r @possible_channel@@package@\n    rm @rpm_xml_dir@/@package@.xml\nfi\n\n\n%post\n# if refcount = 2 then package has been upgraded\nif [ \"$1\" -ge \"2\" ]; then\n    pear upgrade --nodeps -r @rpm_xml_dir@/@package@.xml\nelse\n    pear install --nodeps -r @rpm_xml_dir@/@package@.xml\nfi\n\n%install\npear -c %{buildroot}/pearrc install --nodeps -R %{buildroot} \\\n        $RPM_SOURCE_DIR/@package@-%{version}.tgz\nrm %{buildroot}/pearrc\nrm %{buildroot}/%{_libdir}/php/pear/.filemap\nrm %{buildroot}/%{_libdir}/php/pear/.lock\nrm -rf %{buildroot}/%{_libdir}/php/pear/.registry\nif [ \"@doc_files@\" != \"\" ]; then\n     mv %{buildroot}/docs/@package@/* .\n     rm -rf %{buildroot}/docs\nfi\nmkdir -p %{buildroot}@rpm_xml_dir@\ntar -xzf $RPM_SOURCE_DIR/@package@-%{version}.tgz package@package2xml@.xml\ncp -p package@package2xml@.xml %{buildroot}@rpm_xml_dir@/@package@.xml\n\n#rm -rf %{buildroot}/*\n#pear -q install -R %{buildroot} -n package@package2xml@.xml\n#mkdir -p %{buildroot}@rpm_xml_dir@\n#cp -p package@package2xml@.xml %{buildroot}@rpm_xml_dir@/@package@.xml\n\n%files\n    %defattr(-,root,root)\n    %doc @doc_files@\n    /\n"
  },
  {
    "path": "newscoop/include/data/XML_Serializer/doc/todo.txt",
    "content": "TODO:\n-----\n- introduce constants for options to avoid typos\n\nTODO XML_Serializer:\n--------------------\n- find a way to detect references in the structure and add id/idref attributes\n- serialize some other structures, especially XPath return values\n- custom serialization of objects\n\nTODO XML_Unserializer:\n----------------------\n- support for xml:space attribute\n- set types for certain tags (like in patConfiguration)\n- namespace support\n- custom unserialization for objects (static unserialize() or fromXML() methods)\n- unserialize references using id/idref"
  },
  {
    "path": "newscoop/include/html2pdf/_LGPL.txt",
    "content": "           GNU LESSER GENERAL PUBLIC LICENSE\n                       Version 3, 29 June 2007\n\n Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>\n Everyone is permitted to copy and distribute verbatim copies\n of this license document, but changing it is not allowed.\n\n\n  This version of the GNU Lesser General Public License incorporates\nthe terms and conditions of version 3 of the GNU General Public\nLicense, supplemented by the additional permissions listed below.\n\n  0. Additional Definitions.\n\n  As used herein, \"this License\" refers to version 3 of the GNU Lesser\nGeneral Public License, and the \"GNU GPL\" refers to version 3 of the GNU\nGeneral Public License.\n\n  \"The Library\" refers to a covered work governed by this License,\nother than an Application or a Combined Work as defined below.\n\n  An \"Application\" is any work that makes use of an interface provided\nby the Library, but which is not otherwise based on the Library.\nDefining a subclass of a class defined by the Library is deemed a mode\nof using an interface provided by the Library.\n\n  A \"Combined Work\" is a work produced by combining or linking an\nApplication with the Library.  The particular version of the Library\nwith which the Combined Work was made is also called the \"Linked\nVersion\".\n\n  The \"Minimal Corresponding Source\" for a Combined Work means the\nCorresponding Source for the Combined Work, excluding any source code\nfor portions of the Combined Work that, considered in isolation, are\nbased on the Application, and not on the Linked Version.\n\n  The \"Corresponding Application Code\" for a Combined Work means the\nobject code and/or source code for the Application, including any data\nand utility programs needed for reproducing the Combined Work from the\nApplication, but excluding the System Libraries of the Combined Work.\n\n  1. Exception to Section 3 of the GNU GPL.\n\n  You may convey a covered work under sections 3 and 4 of this License\nwithout being bound by section 3 of the GNU GPL.\n\n  2. Conveying Modified Versions.\n\n  If you modify a copy of the Library, and, in your modifications, a\nfacility refers to a function or data to be supplied by an Application\nthat uses the facility (other than as an argument passed when the\nfacility is invoked), then you may convey a copy of the modified\nversion:\n\n   a) under this License, provided that you make a good faith effort to\n   ensure that, in the event an Application does not supply the\n   function or data, the facility still operates, and performs\n   whatever part of its purpose remains meaningful, or\n\n   b) under the GNU GPL, with none of the additional permissions of\n   this License applicable to that copy.\n\n  3. Object Code Incorporating Material from Library Header Files.\n\n  The object code form of an Application may incorporate material from\na header file that is part of the Library.  You may convey such object\ncode under terms of your choice, provided that, if the incorporated\nmaterial is not limited to numerical parameters, data structure\nlayouts and accessors, or small macros, inline functions and templates\n(ten or fewer lines in length), you do both of the following:\n\n   a) Give prominent notice with each copy of the object code that the\n   Library is used in it and that the Library and its use are\n   covered by this License.\n\n   b) Accompany the object code with a copy of the GNU GPL and this license\n   document.\n\n  4. Combined Works.\n\n  You may convey a Combined Work under terms of your choice that,\ntaken together, effectively do not restrict modification of the\nportions of the Library contained in the Combined Work and reverse\nengineering for debugging such modifications, if you also do each of\nthe following:\n\n   a) Give prominent notice with each copy of the Combined Work that\n   the Library is used in it and that the Library and its use are\n   covered by this License.\n\n   b) Accompany the Combined Work with a copy of the GNU GPL and this license\n   document.\n\n   c) For a Combined Work that displays copyright notices during\n   execution, include the copyright notice for the Library among\n   these notices, as well as a reference directing the user to the\n   copies of the GNU GPL and this license document.\n\n   d) Do one of the following:\n\n       0) Convey the Minimal Corresponding Source under the terms of this\n       License, and the Corresponding Application Code in a form\n       suitable for, and under terms that permit, the user to\n       recombine or relink the Application with a modified version of\n       the Linked Version to produce a modified Combined Work, in the\n       manner specified by section 6 of the GNU GPL for conveying\n       Corresponding Source.\n\n       1) Use a suitable shared library mechanism for linking with the\n       Library.  A suitable mechanism is one that (a) uses at run time\n       a copy of the Library already present on the user's computer\n       system, and (b) will operate properly with a modified version\n       of the Library that is interface-compatible with the Linked\n       Version.\n\n   e) Provide Installation Information, but only if you would otherwise\n   be required to provide such information under section 6 of the\n   GNU GPL, and only to the extent that such information is\n   necessary to install and execute a modified version of the\n   Combined Work produced by recombining or relinking the\n   Application with a modified version of the Linked Version. (If\n   you use option 4d0, the Installation Information must accompany\n   the Minimal Corresponding Source and Corresponding Application\n   Code. If you use option 4d1, you must provide the Installation\n   Information in the manner specified by section 6 of the GNU GPL\n   for conveying Corresponding Source.)\n\n  5. Combined Libraries.\n\n  You may place library facilities that are a work based on the\nLibrary side by side in a single library together with other library\nfacilities that are not Applications and are not covered by this\nLicense, and convey such a combined library under terms of your\nchoice, if you do both of the following:\n\n   a) Accompany the combined library with a copy of the same work based\n   on the Library, uncombined with any other library facilities,\n   conveyed under the terms of this License.\n\n   b) Give prominent notice with the combined library that part of it\n   is a work based on the Library, and explaining where to find the\n   accompanying uncombined form of the same work.\n\n  6. Revised Versions of the GNU Lesser General Public License.\n\n  The Free Software Foundation may publish revised and/or new versions\nof the GNU Lesser General Public License from time to time. Such new\nversions will be similar in spirit to the present version, but may\ndiffer in detail to address new problems or concerns.\n\n  Each version is given a distinguishing version number. If the\nLibrary as you received it specifies that a certain numbered version\nof the GNU Lesser General Public License \"or any later version\"\napplies to it, you have the option of following the terms and\nconditions either of that published version or of any later version\npublished by the Free Software Foundation. If the Library as you\nreceived it does not specify a version number of the GNU Lesser\nGeneral Public License, you may choose any version of the GNU Lesser\nGeneral Public License ever published by the Free Software Foundation.\n\n  If the Library as you received it specifies that a proxy can decide\nwhether future versions of the GNU Lesser General Public License shall\napply, that proxy's public statement of acceptance of any version is\npermanent authorization for you to choose that version for the\nLibrary.\n"
  },
  {
    "path": "newscoop/include/html2pdf/_changelog.txt",
    "content": "4.03 (2011-05-27)\n    correction de l'exemple \"form.php\" : vulnérabilité cross-site scripting corrigée\n    correction sur la gestion des retours à la ligne automatique\n    correction sur le calcul de la hauteur des balises H1->H6\n    amélioration de la gestion des exceptions\n\n4.02 (2011-04-29)\n    ATTENTION : beaucoup de changements dans la structure du projet. version 3.xx abandonnée\n    uniformisation des fichiers du projet (standard Zend)\n    conversion des fichiers de langue en CSV, déplacement dans le répertoire \"locale\". création d'une classe spécifique à la gestion des locales\n    amélioration de la gestion de certaines erreurs\n    modification du nom de toutes les sous classes\n    déplacement de toutes les sous classes\n    modification du nom de toutes les méthodes protected\n    correction sur la gestion des tables\n    correction sur la lecture des path des SVG\n    premiere version de text-align:justify\n    correction sur la gestion de la balise BLOCKQUOTE\n    correction sur la gestion de la balise P\n    gestion des styles CSS pour les balises TEXTAREA, SELECT, INPUT\n    ajout de la propriété pagegroup=\"new\" sur la balise PAGE\n    correction pour la balise INPUT de type radio : checked au lieu de selected\n\n3.30 / 4.01 (2010-05-07)\n    correction sur la gestion des textes\n    correction sur le parseur HTML\n    correction sur la gestion de border-collapse\n    correction sur la gestion des TDs, H1->H6\n    ajout des balises fieldset et legend (cf exemple 4)\n    ajout de la langue CS\n    nombreuses améliorations\n    v4.01 uniquement : Utilisation de TCPDF 5.0.002\n    v4.01 uniquement : Utilisation des QR-code de TCPDF, il n'y a plus besoin d'une librairie externe\n    v4.01 uniquement : Utilisation des exceptions PHP pour les erreurs. Tous les exemples ont été mis à jour en consequence\n    (merci à Pavel Kochman pour ses sugestions et ses ajouts)\n\n3.29 / 4.00 (2010-03-17)\n    modification des barcodes. ATTENTION : bar_w et bar_h n'existent plus !\n    correction sur la gestion de page_footer\n    correction sur la gestion des html entities\n    correction sur le positionnement des textes\n    correction sur le positionnement des tableaux\n    nombreuses corrections sur les positionnements, les couleurs, ...\n    amélioration de la partie SVG (balise G, ...)\n    amélioration sur createIndex\n    harmonisation des noms des méthodes\n    correction sur la gestion des textes\n    v4.00 uniquement : HTML2PDF est maintenant écrit en PHP5 et basé sur TCPDF (=> unicode, utf8, ...)\n    v4.00 uniquement : utilisation de TCPDF pour les formulaires et les barcodes\n    v4.00 uniquement : amélioration de la partie SVG (alpha)\n\n3.28 (2010-01-18)\n    ajout de la gestion de la balise label\n    correction pour compatibilité PHP4\n\n3.27 (2010-01-11)\n    correction sur page_header et page_footer\n    ajout de la possibilité de pouvoir mettre l'index automatique dans la page que l'on veut\n    correction sur la gestion du canal alpha pour les PNGs\n    correction sur la gestion des border-radius (cf exemple radius) conforme au CSS3\n    correction sur la gestion du background-color\n    correction sur la gestion de thead, tfoot, et tbody\n    ajout du dessin verctoriel (cf exemples draw, tigre, sapin)\n    ajout de la propriété label=\"none/label\" pour la balise <barcode>\n    nombreux petits correctifs\n\n3.26 (2009-11-16)\n    correction pour support des images générés en CGI\n    ajout de la gestion du canal alpha pour les PNGs (nécessite GD2)\n    ajout de la méthode setDefaultFont permettant de spécifier une fonte par défaut\n    ajout de la propriété format pour la balise <page> (cf exemple 4)\n    amélioration de la gestion des couleurs css RGB (cf exemple 2)\n    ajout de la gestion des couleurs css CMYK (cf exemple 2)\n    ajout de la propriété css overflow:hidden pour la balise <div> (cf exemple 2)\n    correction sur page_header et page_footer\n    ajout de la possibilité de pouvoir directement convertir le résultat d'une vraie page HTML\n    nombreux petits correctifs sur les styles\n\n3.25 (2009-10-07)\n    correctif sur le calcul des tableaux dans le page_footer\n    correctif sur l'interprétation des espaces entre certaines balises\n    correction sur la gestion des balises H1, H2, H3, H4, H5, H6\n    correction sur la gestion de la balise table\n    support des balises xhtml du type <span />\n    ajout des balises COL (cf exemple 5), DEL, INS, et QRCODE (cf exemple 13)\n    ajout de la propriété css text-transform\n    ajout de la propriété css rotate (uniquement sur les DIV, cf exemple 8)\n    ne plus rendre obligatoire l'existence d'une image (nouvelle méthode setTestIsImage)\n    ajout d'un mode DEBUG - les anciennes fonction d'analyse des ressources ont été supprimées\n    ajout de la méthode setEncoding\n    ajout de la langue danoise DA (merci à Daniel K.)\n\n3.24 (2009-08-05)\n    correction sur le calcul de la largeur des divs\n    modification pour compatibilité avec la localisation PHP\n    modification pour compatibilité avec PHP 5.3.0\n\n3.23 (2009-07-30)\n    correction sur le calcul des DIVs\n    correction sur l'interpretation de certains styles CSS\n    correction de la fonction de creation d'index automatique CreateIndex\n    ATTENTION : la methode d'appel de CreateIndex a changé. Regardez l'exemple About !!!!\n\n3.22a (2009-06-16)\n    redistribution de HTML2PDF sous la licence LGPL !!! (au lieu de GPL)\n\n3.22 (2009-06-08)\n    correction sur le background-color\n    refonte totale de la gestion de text-align. les valeurs center et right marchent maintenant meme en cas de contenu riche\n\n3.21 (2009-05-05)\n    ajout de la propriété css FLOAT pour la balise IMG\n    correction sur la gestion des TFOOT\n    correction sur le positionnement des images\n\n3.20 (2009-04-06)\n    ajout de la gestion des margins pour la balise DIV\n    ajout de la gestion de la propriete css LINE-HEIGHT\n    correction sur l'interpretation de la valeur de certains styles CSS (background-image, background-position, ...)\n    correction sur la reconnaissance des balises thead et tfoot\n    correction sur la balise select\n    correction sur les fichiers de langue (merci à Sinan)\n\n3.19 (2009-03-11)\n    optimisation du parseur HTML - merci à Jezelinside\n    ajout de la balise TFOOT\n    amélioration de la gestion des tableaux : les contenus des balises THEAD et TFOOT sont maintenant répétés sur chaque page.\n    ajout de la balise spécifique BOOKMARK afin de créer des \"marques-page\"\n    possibilité de rajouter un index automatique en fin de fichier\n    ajout de la langue turque TR (merci à Hidayet)\n    amélioration de la méthode Output. Elle est maintenant également utilisable comme celle de FPDF\n\n3.18 (2009-02-22)\n    correction sur les sauts de page automatique pour les balises TABLE, UL, OL\n    correction sur l'interpretation des styles pour la balise HR\n    correction sur l'interpretation du style border-collapse pour la balise TABLE\n    prise en compte de margin:auto pour les tables et les divs\n    les commentaires dans les CSS sont acceptés\n\n3.17 (2008-12-30)\n    ajout de la gestion des balises INPUT (text, radio, checkbox, button, hidden, ...), SELECT, OPTION, TEXTAREA (cf exemple 14)\n    ajout de la possibilité de mettre des scripts dans le pdf, via $html2pdf->pdf->IncludeJS(...); (cf exemples JS)\n    correction sur le saut de page automatique pour les images\n    correction sur les sauts de lignes automatiques pour certaines balises (UL, P, ...)\n    ajout de la langue NL (merci à Roland)\n\n3.16 (2008-12-09)\n    ajout de la gestion de list-style: none (cf exemple 13)\n    correction dans la gestion des fontes ajoutées à fpdf (via la méthode AddFont)\n    nombreuses corrections sur le calcul des largeurs des éléments table, div, hr, td, th\n    ajout de l'exemple about.php\n    (pour info, les PDF générés à partir des exemples sont maintenant dans le répertoire /exemples/pdf/, et sont supprimables)\n\n3.15 (2008-12-01)\n    correction sur l'identification des styles en cas de valeurs multiples dans la propriete class\n    prise en compte de border-radius pour la limite des backgrounds (color et image)\n    ajout des proprietes CSS border-top-*, border-right-*, border-bottom-*, border-left-*\n    ajout de la propriété CSS list-style-image (cf exemple 12)\n    pour la balise table, ajout de l'interprétation de align=\"center\" et align=\"right\" (cf exemple 1)\n    correction dans le positionnement des images\n    correction de quelques bugs\n    ajout d'une fonction d'analyse des ressources HTML2PDFgetTimerDebug (cf début du fichier html2pdf.class.php)\n\n3.14 (2008-11-17)\n    ajout d'une langue (pt : Brazilian Portuguese language) et amelioration de la methode vueHTML (merci à Rodrigo)\n    correction du positionnement du contenu des DIVs. gestion des proprietes valign et align\n    ajout de la propriete CSS border-collapse (cf exemple 0)\n    ajout de la propriete CSS border-radius (cf exemple 1)\n    correction de quelques bugs\n\n3.13 (2008-09-24)\n    reecriture de la balise hr, avec prise en compte des styles (cf exemple 0)\n    ajout de la propriete backcolor pour la balise page (cf exemple 9)\n    ajout des proprietes backleft et backright pour la balise page afin de pouvoir changer les marges des pages (cf exemple 8)\n    nombreuses corrections sur les balises et les styles\n\n3.12 (2008-09-16)\n    ajout des balises ol, ul, li (cf exemple 12)\n    correction sur le calcul de la taille des td en cas de colspan et rowspan\n    ajout de la méthode setTestTdInOnePage afin de pouvoir desactiver le test sur la taille des TD (cf exemple 11)\n    correction de quelques bugs\n\n3.11 (2008-08-29)\n    ajout des balises div, p, pre, s\n    gestion des styles CSS position (relative, absolute), left, top, right, bottom (cf exemple 10)\n    meilleur gestion des border : border-style, border-color, border-width (cf exemple 10)\n    possibilité d'indiquer les marges par défault, via le constructeur (cf exemple 2)\n\n3.10a (2008-08-26)\n    correction pour compatibilité php4 / php5\n\n3.10 (2008-08-25)\n    ajout des liens internes (cf exemple 7)\n    gestion complete des background : image, repeat, position, color (cf exemple 1)\n    gestion de underline, overline, linethrough (cf exemple 2)\n    correction de quelques bugs\n\n3.09\n    mise à jour vers fpdf version 1.6, ajout de barcode, correction de l'affichage de certains caractères spéciaux\n    correction du calcul de la hauteur de ligne de la balise br\n    detection en cas de contenu trop grand dans un TD\n    amélioration de la balise page (ajout de l'attribue pageset, avec les valeurs new et old)\n    ajout de FPDF_PROTECTION, accesible via $pdf->pdf->SetProtection(...)\n\n3.08\n    version opérationnelle de page_header\n    ajout de page_footer\n    correction des borders des tableaux\n\n3.07\n    correction de l'interpretation de cellspacing,\n    amélioration de la balise page_header\n\n3.06\n    première gestion de la balise page_header\n    correction des dimensions des tableaux\n\n3.05\n    ajout de la propriété vertical-align\n    ajout de la gestion des fichiers de langue\n\n3.04\n    correction du saut de page automatique pour les tableaux\n    Ajout de propriétés à la balise PAGE\n\n3.03\n    correction de bugs au niveau de la gestion des images PHP par FPDF\n    meilleure gestion des erreurs\n\n3.02\n    ajout de la gestion des noms des couleurs\n    correction de la gestion des images générées par php\n    correction de quelques bugs\n\n3.01\n    correction de quelques bugs\n    ajout d'une protection pour les balises non existantes\n\n3.00\n    refonte totale du calcul des tableaux\n    Prise en compte des colspan et rowspan\n    \n2.85\n    ajout de la propriété cellspacing\n    nouvelle gestion des padding des tableaux\n\n2.80\n    ajout des types de border dotted et dasheds\n\n2.75\n    ajout des top, left, right, bottom pour padding et border\n\n2.70\n    correction de la balise HR, ajout de la propriété padding pour les table, th, td\n    correction des dimensions, les unités px, mm, in, pt sont enfin réellement reproduites, correction de font-size, border, ...\n    ajout d'une propriété à la balise page : footer\n    correction dans l'affichage et le calcul des tables\n\n2.55\n    vérification de la validité du code (ouverture / fermeture)\n    ajout des unités mm, in, pt\n\n2.50\n    correction de nobreak\n    correction des marges\n    ajout de nombreuses balises\n\n2.40\n    refonte totale de l'identification des styles CSS (Les héritages marchent)\n\n2.39\n    corrections diverses\n    ajout de certaines propriétés (bgcolor, ...)\n\n2.38\n    meilleur identification des propriétés border et color\n\n2.37\n    nombreuses corrections :\n        balise A\n        couleur de fond\n        retour à la ligne\n        gestion des images dans un texte\n\n2.36\n    ajout de la balises STRONG\n    ajout de la balise EM\n\n2.35\n    amélioration de la gestion des feuilles de style\n\n2.31\n    correction de quelques bugs\n\n2.30\n    première version opérationnel des feuilles de style\n\n2.25\n    ajout de la balise LINK pour le type text/css\n\n2.20\n    premier jet de la gestion des feuilles de style, ajout de la balise STYLE\n\n2.15\n    n'interpréte plus l'HTML en commentaire <!-- -->\n\n2.10\n    ajout des balises H1 -> H6\n\n2.01\n    correction de quelques bugs\n\n2.00\n    première version diffusée"
  },
  {
    "path": "newscoop/include/html2pdf/_class/exception.class.php",
    "content": "<?php\n/**\n * HTML2PDF Librairy - HTML2PDF Exception\n *\n * HTML => PDF convertor\n * distributed under the LGPL License\n *\n * @author    Laurent MINGUET <webmaster@html2pdf.fr>\n * @version   4.03\n */\n\nclass HTML2PDF_exception extends exception\n{\n    protected $_tag = null;\n    protected $_html = null;\n    protected $_other = null;\n    protected $_image = null;\n    protected $_messageHtml = '';\n\n    /**\n     * generate a HTML2PDF exception\n     *\n     * @param    int     $err error number\n     * @param    mixed   $other additionnal informations\n     * @return   string  $html optionnal code HTML associated to the error\n     */\n    final public function __construct($err = 0, $other = null, $html = '')\n    {\n        // read the error\n        switch($err)\n        {\n            case 1: // Unsupported tag\n                $msg = (HTML2PDF_locale::get('err01'));\n                $msg = str_replace('[[OTHER]]', $other, $msg);\n                $this->_tag = $other;\n                break;\n\n            case 2: // too long sentence\n                $msg = (HTML2PDF_locale::get('err02'));\n                $msg = str_replace('[[OTHER_0]]', $other[0], $msg);\n                $msg = str_replace('[[OTHER_1]]', $other[1], $msg);\n                $msg = str_replace('[[OTHER_2]]', $other[2], $msg);\n                break;\n\n            case 3: // closing tag in excess\n                $msg = (HTML2PDF_locale::get('err03'));\n                $msg = str_replace('[[OTHER]]', $other, $msg);\n                $this->_tag = $other;\n                break;\n\n            case 4: // tags closed in the wrong order\n                $msg = (HTML2PDF_locale::get('err04'));\n                $msg = str_replace('[[OTHER]]', print_r($other, true), $msg);\n                break;\n\n            case 5: // unclosed tag\n                $msg = (HTML2PDF_locale::get('err05'));\n                $msg = str_replace('[[OTHER]]', print_r($other, true), $msg);\n                break;\n\n            case 6: // image can not be loaded\n                $msg = (HTML2PDF_locale::get('err06'));\n                $msg = str_replace('[[OTHER]]', $other, $msg);\n                $this->_image = $other;\n                break;\n\n            case 7: // too big TD content\n                $msg = (HTML2PDF_locale::get('err07'));\n                break;\n\n            case 8: // SVG tag not in DRAW tag\n                $msg = (HTML2PDF_locale::get('err08'));\n                $msg = str_replace('[[OTHER]]', $other, $msg);\n                $this->_tag = $other;\n                break;\n\n            case 9: // deprecated\n                $msg = (HTML2PDF_locale::get('err09'));\n                $msg = str_replace('[[OTHER_0]]', $other[0], $msg);\n                $msg = str_replace('[[OTHER_1]]', $other[1], $msg);\n                $this->_tag = $other[0];\n                break;\n\n            case 0: // specific error\n            default:\n                $msg = $other;\n                break;\n        }\n\n        // create the HTML message\n        $this->_messageHtml = '<span style=\"color: #AA0000; font-weight: bold;\">'.HTML2PDF_locale::get('txt01', 'error: ').$err.'</span><br>';\n        $this->_messageHtml.= HTML2PDF_locale::get('txt02', 'file:').' '.$this->file.'<br>';\n        $this->_messageHtml.= HTML2PDF_locale::get('txt03', 'line:').' '.$this->line.'<br>';\n        $this->_messageHtml.= '<br>';\n        $this->_messageHtml.= $msg;\n\n        // create the text message\n        $msg = HTML2PDF_locale::get('txt01', 'error: ').$err.' : '.strip_tags($msg);\n\n        // add the optionnal html content\n        if ($html) {\n            $this->_messageHtml.= \"<br><br>HTML : ...\".trim(htmlentities($html)).'...';\n            $this->_html = $html;\n            $msg.= ' HTML : ...'.trim($html).'...';\n        }\n\n        // save the other informations\n        $this->_other = $other;\n\n        // construct the exception\n        parent::__construct($msg, $err);\n    }\n\n    /**\n     * get the message as string\n     *\n     * @access public\n     * @return string $messageHtml\n     */\n    public function __toString()\n    {\n        return $this->_messageHtml;\n    }\n\n    /**\n     * get the html tag name\n     *\n     * @access public\n     * @return string $tagName\n     */\n    public function getTAG()\n    {\n        return $this->_tag;\n    }\n\n    /**\n     * get the optional html code\n     *\n     * @access public\n     * @return string $html\n     */\n    public function getHTML()\n    {\n        return $this->_html;\n    }\n\n    /**\n     * get the optional other informations\n     *\n     * @access public\n     * @return mixed $other\n     */\n    public function getOTHER()\n    {\n        return $this->_other;\n    }\n\n    /**\n     * get the image source\n     *\n     * @access public\n     * @return string $imageSrc\n     */\n    public function getIMAGE()\n    {\n        return $this->_image;\n    }\n}"
  },
  {
    "path": "newscoop/include/html2pdf/_class/locale.class.php",
    "content": "<?php\n/**\n * HTML2PDF Librairy - HTML2PDF Locale\n *\n * HTML => PDF convertor\n * distributed under the LGPL License\n *\n * @author    Laurent MINGUET <webmaster@html2pdf.fr>\n * @version   4.03\n */\n\nclass HTML2PDF_locale\n{\n    /**\n     * code of the current used locale\n     * @var string\n     */\n    static protected $_code = null;\n\n    /**\n     * texts of the current used locale\n     * @var array\n     */\n    static protected $_list = array();\n\n    /**\n     * directory where locale files are\n     * @var string\n     */\n    static protected $_directory = null;\n\n    /**\n     * load the locale\n     *\n     * @access public\n     * @param  string $code\n     */\n    static public function load($code)\n    {\n        if (self::$_directory===null) {\n            self::$_directory = dirname(dirname(__FILE__)).'/locale/';\n        }\n\n        // must be in lower case\n        $code = strtolower($code);\n\n        // must be [a-z-0-9]\n        if (!preg_match('/^([a-z0-9]+)$/isU', $code)) {\n            throw new HTML2PDF_exception(0, 'invalid language code ['.self::$_code.']');\n        }\n\n        // save the code\n        self::$_code = $code;\n\n        // get the name of the locale file\n        $file = self::$_directory.self::$_code.'.csv';\n\n        // the file must exist\n        if (!is_file($file)) {\n            throw new HTML2PDF_exception(0, 'language code ['.self::$_code.'] unknown. You can create the translation file ['.$file.'] and send it to the webmaster of html2pdf in order to integrate it into a future release');\n        }\n\n        // load the file\n        self::$_list = array();\n        $handle = fopen($file, 'r');\n        while (!feof($handle)) {\n            $line = fgetcsv($handle);\n            if (count($line)!=2) continue;\n            self::$_list[trim($line[0])] = trim($line[1]);\n        }\n        fclose($handle);\n    }\n\n    /**\n     * clean the locale\n     *\n     * @access public static\n     */\n    static public function clean()\n    {\n        self::$_code = null;\n        self::$_list = array();\n    }\n\n    /**\n     * get a text\n     *\n     * @access public static\n     * @param  string $key\n     * @return string\n     */\n    static public function get($key, $default='######')\n    {\n        return (isset(self::$_list[$key]) ? self::$_list[$key] : $default);\n    }\n}"
  },
  {
    "path": "newscoop/include/html2pdf/_class/myPdf.class.php",
    "content": "<?php\n/**\n * HTML2PDF Librairy - myPdf class\n *\n * HTML => PDF convertor\n * distributed under the LGPL License\n *\n * @author    Laurent MINGUET <webmaster@html2pdf.fr>\n * @version   4.03\n */\n\nrequire_once(dirname(__FILE__).'/tcpdfConfig.php');\nrequire_once(dirname(__FILE__).'/../_tcpdf_'.HTML2PDF_USED_TCPDF_VERSION.'/tcpdf.php');\n\nclass HTML2PDF_myPdf extends TCPDF\n{\n    protected $_footerParam = array();\n    protected $_transf      = array();\n    protected $_myLastPageGroup = null;\n    protected $_myLastPageGroupNb = 0;\n\n    // used to make a radius with bezier : (4/3 * (sqrt(2) - 1))\n    const MY_ARC = 0.5522847498;\n\n    // nb of segment to build a arc with bezier curv\n    const ARC_NB_SEGMENT = 8;\n\n    /**\n     * class constructor\n     *\n     * @param string  $orientation page orientation, same as TCPDF\n     * @param string  $unit        User measure unit, same as TCPDF\n     * @param mixed   $format      The format used for pages, same as TCPDF\n     * @param boolean $unicode     TRUE means that the input text is unicode (default = true)\n     * @param String  $encoding    charset encoding; default is UTF-8\n     * @param boolean $diskcache   if TRUE reduce the RAM memory usage by caching temporary data on filesystem (slower).\n     * @access public\n     */\n    public function __construct(\n        $orientation='P',\n        $unit='mm',\n        $format='A4',\n        $unicode=true,\n        $encoding='UTF-8',\n        $diskcache=false)\n    {\n        // call the parent constructor\n        parent::__construct($orientation, $unit, $format, $unicode, $encoding, $diskcache);\n\n        // init the specific parameters used by HTML2PDF\n        $this->SetCreator(PDF_CREATOR);\n        $this->SetAutoPageBreak(false, 0);\n        $this->linestyleCap = '2 J';\n        $this->setPrintHeader(false);\n        $this->jpeg_quality = 90;\n\n        // prepare the automatic footer\n        $this->SetMyFooter();\n\n        $this->cMargin = 0;\n    }\n\n    /**\n     * Set the parameters for the automatic footer\n     *\n     * @param boolean $page display the page number\n     * @param boolean $date display the date\n     * @param boolean $hour display the hour\n     * @param boolean $form display a warning abour forms\n     * @access public\n     */\n    public function SetMyFooter($page = false, $date = false, $hour = false, $form = false)\n    {\n        $page    = ($page ? true : false);\n        $date    = ($date ? true : false);\n        $hour    = ($hour ? true : false);\n        $form    = ($form ? true : false);\n\n        $this->_footerParam = array('page' => $page, 'date' => $date, 'hour' => $hour, 'form' => $form);\n    }\n\n    /**\n     * This function is call automatically by TCPDF at the end of a page\n     * It takes no parameters\n     *\n     * @access public\n     */\n    public function Footer()\n    {\n        // prepare the text from the tranlated text\n        $txt = '';\n        if ($this->_footerParam['form']) {\n            $txt = (HTML2PDF_locale::get('pdf05'));\n        }\n        if ($this->_footerParam['date'] && $this->_footerParam['hour']) {\n            $txt.= ($txt ? ' - ' : '').(HTML2PDF_locale::get('pdf03'));\n        }\n        if ($this->_footerParam['date'] && !$this->_footerParam['hour']) {\n            $txt.= ($txt ? ' - ' : '').(HTML2PDF_locale::get('pdf01'));\n        }\n        if (!$this->_footerParam['date'] && $this->_footerParam['hour']) {\n            $txt.= ($txt ? ' - ' : '').(HTML2PDF_locale::get('pdf02'));\n        }\n        if ($this->_footerParam['page']) {\n            $txt.= ($txt ? ' - ' : '').(HTML2PDF_locale::get('pdf04'));\n        }\n\n        if (strlen($txt)>0) {\n            // replace some values\n            $toReplace = array(\n                '[[date_d]]'  => date('d'),\n                '[[date_m]]'  => date('m'),\n                '[[date_y]]'  => date('Y'),\n                '[[date_h]]'  => date('H'),\n                '[[date_i]]'  => date('i'),\n                '[[date_s]]'  => date('s'),\n                '[[page_cu]]' => $this->getMyNumPage(),\n                '[[page_nb]]' => $this->getMyAliasNbPages(),\n            );\n            $txt = str_replace(array_keys($toReplace), array_values($toReplace), $txt);\n\n            // draw the footer\n            parent::SetY(-11);\n            $this->SetFont('helvetica', 'I', 8);\n            $this->Cell(0, 10, $txt, 0, 0, 'R');\n        }\n    }\n\n     /**\n     * after cloning a object, we does not want to clone all the front informations\n     * because it take a lot a time and a lot of memory => we use reference\n     *\n     * @param &HTML2PDF_myPdf object\n     * @access public\n     */\n    public function cloneFontFrom(&$pdf)\n    {\n        $this->fonts            = &$pdf->getFonts();\n        $this->FontFiles        = &$pdf->getFontFiles();\n        $this->diffs            = &$pdf->getDiffs();\n        $this->fontlist         = &$pdf->getFontList();\n        $this->numfonts         = &$pdf->getNumFonts();\n        $this->fontkeys         = &$pdf->getFontKeys();\n        $this->font_obj_ids     = &$pdf->getFontObjIds();\n        $this->annotation_fonts = &$pdf->getAnnotFonts();\n    }\n\n    /**\n     * multiple public accessor for some private attributs\n     * used only by cloneFontFrom\n     *\n     * @return &array\n     * @access public\n     */\n    public function &getFonts()\n    {\n        return $this->fonts;\n    }\n    public function &getFontFiles()\n    {\n        return $this->FontFiles;\n    }\n    public function &getDiffs()\n    {\n        return $this->diffs;\n    }\n    public function &getFontList()\n    {\n        return $this->fontlist;\n    }\n    public function &getNumFonts()\n    {\n        return $this->numfonts;\n    }\n    public function &getFontKeys()\n    {\n        return $this->fontkeys;\n    }\n    public function &getFontObjIds()\n    {\n        return $this->font_obj_ids;\n    }\n    public function &getAnnotFonts()\n    {\n        return $this->annotation_fonts;\n    }\n\n    /**\n     * Verify that a Font is already loaded\n     *\n     * @param string Font Key\n     * @return boolean\n     * @access public\n     */\n    public function isLoadedFont($fontKey)\n    {\n        if (isset($this->fonts[$fontKey])) {\n            return true;\n        }\n\n        if (isset($this->CoreFonts[$fontKey])) {\n            return true;\n        }\n\n        return false;\n    }\n\n    /**\n     * Get the Word Spacing\n     *\n     * @access public\n     * @return float word spacing\n     */\n    public function getWordSpacing()\n    {\n        return $this->ws;\n    }\n\n    /**\n     * set the Word Spacing\n     *\n     * @param float word spacing\n     * @access public\n     */\n    public function setWordSpacing($ws=0.)\n    {\n        $this->ws = $ws;\n        $this->_out(sprintf('%.3F Tw', $ws*$this->k));\n    }\n\n    /**\n     * start to use a rectangular Cliping Path with radius corners\n     *\n     * @param float $x (top left corner)\n     * @param float $y (top left corner)\n     * @param float $w (x+w  = botom rigth corner)\n     * @param float $h (y+h = botom rigth corner)\n     * @param array $cornerTL radius of the Top Left corner\n     * @param array $cornerTR radius of the Top Right corner\n     * @param array $cornerBL radius of the Bottom Left corner\n     * @param array $cornerBR radius of the Bottom Right corner\n     * @access public\n     */\n    public function clippingPathStart(\n        $x = null,\n        $y = null,\n        $w = null,\n        $h = null,\n        $cornerTL=null,\n        $cornerTR=null,\n        $cornerBL=null,\n        $cornerBR=null)\n    {\n        // init the path\n        $path = '';\n\n        // if we have the position and the size of the rectangle, we can proceed\n        if ($x!==null && $y!==null && $w!==null && $h!==null) {\n            // the positions of the rectangle's corners\n            $x1 = $x*$this->k;\n            $y1 = ($this->h-$y)*$this->k;\n\n            $x2 = ($x+$w)*$this->k;\n            $y2 = ($this->h-$y)*$this->k;\n\n            $x3 = ($x+$w)*$this->k;\n            $y3 = ($this->h-$y-$h)*$this->k;\n\n            $x4 = $x*$this->k;\n            $y4 = ($this->h-$y-$h)*$this->k;\n\n            // if we have at least one radius corner, then we proceed to a specific path, else it is just a rectangle\n            if ($cornerTL || $cornerTR || $cornerBL || $cornerBR) {\n                // prepare the radius values\n                if ($cornerTL) {\n                    $cornerTL[0] = $cornerTL[0]*$this->k;\n                    $cornerTL[1] =-$cornerTL[1]*$this->k;\n                }\n                if ($cornerTR) {\n                    $cornerTR[0] = $cornerTR[0]*$this->k;\n                    $cornerTR[1] =-$cornerTR[1]*$this->k;\n                }\n                if ($cornerBL) {\n                    $cornerBL[0] = $cornerBL[0]*$this->k;\n                    $cornerBL[1] =-$cornerBL[1]*$this->k;\n                }\n                if ($cornerBR) {\n                    $cornerBR[0] = $cornerBR[0]*$this->k;\n                    $cornerBR[1] =-$cornerBR[1]*$this->k;\n                }\n\n                // if TL radius then specific start else (X1,Y1)\n                if ($cornerTL) {\n                    $path.= sprintf('%.2F %.2F m ', $x1+$cornerTL[0], $y1);\n                } else {\n                    $path.= sprintf('%.2F %.2F m ', $x1, $y1);\n                }\n\n                // if TR radius then line + arc, else line to (X2,Y2)\n                if ($cornerTR) {\n                    $xt1 = ($x2-$cornerTR[0])+$cornerTR[0]*self::MY_ARC;\n                    $yt1 = ($y2+$cornerTR[1])-$cornerTR[1];\n                    $xt2 = ($x2-$cornerTR[0])+$cornerTR[0];\n                    $yt2 = ($y2+$cornerTR[1])-$cornerTR[1]*self::MY_ARC;\n\n                    $path.= sprintf('%.2F %.2F l ', $x2-$cornerTR[0], $y2);\n                    $path.= sprintf('%.2F %.2F %.2F %.2F %.2F %.2F c ', $xt1, $yt1, $xt2, $yt2, $x2, $y2+$cornerTR[1]);\n                } else {\n                    $path.= sprintf('%.2F %.2F l ', $x2, $y2);\n                }\n\n                // if BR radius then line + arc, else line to (X3, Y3)\n                if ($cornerBR) {\n                    $xt1 = ($x3-$cornerBR[0])+$cornerBR[0];\n                    $yt1 = ($y3-$cornerBR[1])+$cornerBR[1]*self::MY_ARC;\n                    $xt2 = ($x3-$cornerBR[0])+$cornerBR[0]*self::MY_ARC;\n                    $yt2 = ($y3-$cornerBR[1])+$cornerBR[1];\n\n                    $path.= sprintf('%.2F %.2F l ', $x3, $y3-$cornerBR[1]);\n                    $path.= sprintf('%.2F %.2F %.2F %.2F %.2F %.2F c ', $xt1, $yt1, $xt2, $yt2, $x3-$cornerBR[0], $y3);\n                } else {\n                    $path.= sprintf('%.2F %.2F l ', $x3, $y3);\n                }\n\n                // if BL radius then line + arc, else line to (X4, Y4)\n                if ($cornerBL) {\n                    $xt1 = ($x4+$cornerBL[0])-$cornerBL[0]*self::MY_ARC;\n                    $yt1 = ($y4-$cornerBL[1])+$cornerBL[1];\n                    $xt2 = ($x4+$cornerBL[0])-$cornerBL[0];\n                    $yt2 = ($y4-$cornerBL[1])+$cornerBL[1]*self::MY_ARC;\n\n                    $path.= sprintf('%.2F %.2F l ', $x4+$cornerBL[0], $y4);\n                    $path.= sprintf('%.2F %.2F %.2F %.2F %.2F %.2F c ', $xt1, $yt1, $xt2, $yt2, $x4, $y4-$cornerBL[1]);\n                } else {\n                    $path.= sprintf('%.2F %.2F l ', $x4, $y4);\n                }\n\n                // if RL radius then line + arc\n                if ($cornerTL) {\n                    $xt1 = ($x1+$cornerTL[0])-$cornerTL[0];\n                    $yt1 = ($y1+$cornerTL[1])-$cornerTL[1]*self::MY_ARC;\n                    $xt2 = ($x1+$cornerTL[0])-$cornerTL[0]*self::MY_ARC;\n                    $yt2 = ($y1+$cornerTL[1])-$cornerTL[1];\n\n                    $path.= sprintf('%.2F %.2F l ', $x1, $y1+$cornerTL[1]);\n                    $path.= sprintf('%.2F %.2F %.2F %.2F %.2F %.2F c ', $xt1, $yt1, $xt2, $yt2, $x1+$cornerTL[0], $y1);\n                }\n            } else {\n                $path.= sprintf('%.2F %.2F m ', $x1, $y1);\n                $path.= sprintf('%.2F %.2F l ', $x2, $y2);\n                $path.= sprintf('%.2F %.2F l ', $x3, $y3);\n                $path.= sprintf('%.2F %.2F l ', $x4, $y4);\n            }\n\n            // close the path\n            $path.= ' h W n';\n        }\n\n        // using the path as a clipping path\n        $this->_out('q '.$path.' ');\n    }\n\n    /**\n     * stop to use the Cliping Path\n     *\n     * @access public\n     */\n    public function clippingPathStop()\n    {\n        $this->_out(' Q');\n    }\n\n    /**\n     * draw a filled corner of a border with a external and a internal radius\n     *         /--------+ ext2\n     *        /         |\n     *       /  /-------+ int2\n     *      /  /\n     *      | /\n     *      | |\n     *      | |\n     * ext1 +-+ int1        + cen\n     *\n     * @param float $ext1X\n     * @param float $ext1Y\n     * @param float $ext2X\n     * @param float $ext2Y\n     * @param float $int1X\n     * @param float $int1Y\n     * @param float $int2X\n     * @param float $int2Y\n     * @param float $cenX\n     * @param float $cenY\n     * @access public\n     */\n    public function drawCurve($ext1X, $ext1Y, $ext2X, $ext2Y, $int1X, $int1Y, $int2X, $int2Y, $cenX, $cenY)\n    {\n        // prepare the coordinates\n        $ext1X = $ext1X*$this->k;\n        $ext2X = $ext2X*$this->k;\n        $int1X = $int1X*$this->k;\n        $int2X = $int2X*$this->k;\n        $cenX  = $cenX*$this->k;\n\n        $ext1Y = ($this->h-$ext1Y)*$this->k;\n        $ext2Y = ($this->h-$ext2Y)*$this->k;\n        $int1Y = ($this->h-$int1Y)*$this->k;\n        $int2Y = ($this->h-$int2Y)*$this->k;\n        $cenY  = ($this->h-$cenY) *$this->k;\n\n        // init the curve\n        $path = '';\n\n        if ($ext1X-$cenX!=0) {\n            $xt1 = $cenX+($ext1X-$cenX);\n            $yt1 = $cenY+($ext2Y-$cenY)*self::MY_ARC;\n            $xt2 = $cenX+($ext1X-$cenX)*self::MY_ARC;\n            $yt2 = $cenY+($ext2Y-$cenY);\n        } else {\n            $xt1 = $cenX+($ext2X-$cenX)*self::MY_ARC;\n            $yt1 = $cenY+($ext1Y-$cenY);\n            $xt2 = $cenX+($ext2X-$cenX);\n            $yt2 = $cenY+($ext1Y-$cenY)*self::MY_ARC;\n        }\n        $path.= sprintf('%.2F %.2F m ', $ext1X, $ext1Y);\n        $path.= sprintf('%.2F %.2F %.2F %.2F %.2F %.2F c ', $xt1, $yt1, $xt2, $yt2, $ext2X, $ext2Y);\n\n        if ($int1X-$cenX!=0) {\n            $xt1 = $cenX+($int1X-$cenX)*self::MY_ARC;\n            $yt1 = $cenY+($int2Y-$cenY);\n            $xt2 = $cenX+($int1X-$cenX);\n            $yt2 = $cenY+($int2Y-$cenY)*self::MY_ARC;\n        } else {\n            $xt1 = $cenX+($int2X-$cenX);\n            $yt1 = $cenY+($int1Y-$cenY)*self::MY_ARC;\n            $xt2 = $cenX+($int2X-$cenX)*self::MY_ARC;\n            $yt2 = $cenY+($int1Y-$cenY);\n        }\n        $path.= sprintf('%.2F %.2F l ', $int2X, $int2Y);\n        $path.= sprintf('%.2F %.2F %.2F %.2F %.2F %.2F c ', $xt1, $yt1, $xt2, $yt2, $int1X, $int1Y);\n\n        // draw the curve\n        $this->_out($path . 'f');\n    }\n\n    /**\n     * draw a filled corner of a border with only a external radius\n     *         /--+ ext2\n     *        /   |\n     *       /    |\n     *      /     |\n     *      |     |\n     *      |     |\n     *      |     |\n     * ext1 +-----+ int      + cen\n     *\n     * @param float $ext1X\n     * @param float $ext1Y\n     * @param float $ext2X\n     * @param float $ext2Y\n     * @param float $intX\n     * @param float $intY\n     * @param float $cenX\n     * @param float $cenY\n     * @access public\n     */\n    public function drawCorner($ext1X, $ext1Y, $ext2X, $ext2Y, $intX, $intY, $cenX, $cenY)\n    {\n        // prepare the coordinates\n        $ext1X = $ext1X*$this->k;\n        $ext2X = $ext2X*$this->k;\n        $intX  = $intX*$this->k;\n        $cenX  = $cenX*$this->k;\n\n        $ext1Y = ($this->h-$ext1Y)*$this->k;\n        $ext2Y = ($this->h-$ext2Y)*$this->k;\n        $intY  = ($this->h-$intY)*$this->k;\n        $cenY  = ($this->h-$cenY)*$this->k;\n\n        // init the curve\n        $path = '';\n\n        if ($ext1X-$cenX!=0) {\n            $xt1 = $cenX+($ext1X-$cenX);\n            $yt1 = $cenY+($ext2Y-$cenY)*self::MY_ARC;\n            $xt2 = $cenX+($ext1X-$cenX)*self::MY_ARC;\n            $yt2 = $cenY+($ext2Y-$cenY);\n        } else {\n            $xt1 = $cenX+($ext2X-$cenX)*self::MY_ARC;\n            $yt1 = $cenY+($ext1Y-$cenY);\n            $xt2 = $cenX+($ext2X-$cenX);\n            $yt2 = $cenY+($ext1Y-$cenY)*self::MY_ARC;\n        }\n        $path.= sprintf('%.2F %.2F m ', $ext1X, $ext1Y);\n        $path.= sprintf('%.2F %.2F %.2F %.2F %.2F %.2F c ', $xt1, $yt1, $xt2, $yt2, $ext2X, $ext2Y);\n        $path.= sprintf('%.2F %.2F l ', $intX, $intY);\n        $path.= sprintf('%.2F %.2F l ', $ext1X, $ext1Y);\n\n        // draw the curve\n        $this->_out($path . 'f');\n    }\n\n    /**\n     * Start a transformation\n     *\n     * @access public\n     */\n    public function startTransform()\n    {\n        $this->_out('q');\n    }\n\n    /**\n     * Stop a transformation\n     *\n     * @access public\n     */\n    public function stopTransform()\n    {\n        $this->_out('Q');\n    }\n\n    /**\n     * add a Translate transformation\n     *\n     * @param float $Tx\n     * @param float $Ty\n     * @access public\n     */\n    public function setTranslate($xT, $yT)\n    {\n        // Matrix for Translate\n        $tm[0]=1;\n        $tm[1]=0;\n        $tm[2]=0;\n        $tm[3]=1;\n        $tm[4]=$xT*$this->k;\n        $tm[5]=-$yT*$this->k;\n\n        // apply the Transform Matric\n        $this->_out(sprintf('%.3F %.3F %.3F %.3F %.3F %.3F cm', $tm[0], $tm[1], $tm[2], $tm[3], $tm[4], $tm[5]));\n    }\n\n    /**\n     * add a Rotate transformation\n     *\n     * @param float $angle\n     * @param float $Cx\n     * @param float $Cy\n     * @access public\n     */\n    public function setRotation($angle, $xC=null, $yC=null)\n    {\n        // if no center, rotate around the current posiition\n        if($xC === null) $xC=$this->x;\n        if($yC === null) $yC=$this->y;\n\n        // prepare the coordinate\n        $yC=($this->h-$yC)*$this->k;\n        $xC*=$this->k;\n\n        // Matrix for Rotate\n        $tm[0]=cos(deg2rad($angle));\n        $tm[1]=sin(deg2rad($angle));\n        $tm[2]=-$tm[1];\n        $tm[3]=$tm[0];\n        $tm[4]=$xC+$tm[1]*$yC-$tm[0]*$xC;\n        $tm[5]=$yC-$tm[0]*$yC-$tm[1]*$xC;\n\n        // apply the Transform Matric\n        $this->_out(sprintf('%.3F %.3F %.3F %.3F %.3F %.3F cm', $tm[0], $tm[1], $tm[2], $tm[3], $tm[4], $tm[5]));\n    }\n\n    /**\n     * we redifine the original SetX method, because we don't want the automatic treatment.\n     * It is HTML2PDF that make the treatment\n     *\n     * @param float   $x\n     * @param boolean $rtloff NOT USED\n     * @access public\n     */\n    public function SetX($x, $rtloff=false)\n    {\n        $this->x=$x;\n    }\n\n    /**\n     * we redifine the original SetY method, because we don't want the automatic treatment.\n     * It is HTML2PDF that make the treatment\n     *\n     * @param float   $y\n     * @param boolean $resetx Reset the X position\n     * @param boolean $rtloff NOT USED\n     * @access public\n     */\n    public function SetY($y, $resetx=true, $rtloff=false)\n    {\n        if ($resetx)\n            $this->x=$this->lMargin;\n\n        $this->y=$y;\n    }\n\n    /**\n     * we redifine the original SetXY method, because we don't want the automatic treatment.\n     * It is HTML2PDF that make the treatment\n     *\n     * @param integer $x\n     * @param integer $y\n     * @param boolean $rtloff NOT USED\n     * @access public\n     */\n    public function SetXY($x, $y, $rtloff=false)\n    {\n        $this->x=$x;\n        $this->y=$y;\n    }\n\n    /**\n     * multiple public accessor because HTML2PDF need to use TCPDF without being a extend of it\n     *\n     * @param  mixed\n     * @return mixed\n     * @access public\n     */\n    public function getK()\n    {\n        return $this->k;\n    }\n    public function getW()\n    {\n        return $this->w;\n    }\n    public function getH()\n    {\n        return $this->h;\n    }\n    public function getlMargin()\n    {\n        return $this->lMargin;\n    }\n    public function getrMargin()\n    {\n        return $this->rMargin;\n    }\n    public function gettMargin()\n    {\n        return $this->tMargin;\n    }\n    public function getbMargin()\n    {\n        return $this->bMargin;\n    }\n    public function setbMargin($v)\n    {\n        $this->bMargin=$v;\n    }\n\n    /**\n     * SVG - Convert a SVG Style in PDF Style\n     *\n     * @param  array  $styles SVG Style\n     * @return string PDF style\n     * @access public\n     */\n    public function svgSetStyle($styles)\n    {\n        // init the PDF style\n        $style = '';\n\n        // Style : fill\n        if ($styles['fill']) {\n            $this->setFillColorArray($styles['fill']);\n            $style.= 'F';\n        }\n\n        // Style : stroke\n        if ($styles['stroke'] && $styles['stroke-width']) {\n            $this->SetDrawColorArray($styles['stroke']);\n            $this->SetLineWidth($styles['stroke-width']);\n            $style.= 'D';\n        }\n\n        // Style : opacity\n        if ($styles['fill-opacity']) {\n            $this->SetAlpha($styles['fill-opacity']);\n        }\n\n        return $style;\n    }\n\n    /**\n     * SVG - make a Rectangle\n     *\n     * @param float $x\n     * @param float $y\n     * @param float $w\n     * @param float $h\n     * @param string $style PDF Style\n     * @access public\n     */\n    public function svgRect($x, $y, $w, $h, $style)\n    {\n        // prepare the 4 corners\n        $x1=$x;\n        $x2=$x+$w;\n        $x3=$x+$w;\n        $x4=$x;\n\n        $y1=$y;\n        $y2=$y;\n        $y3=$y+$h;\n        $y4=$y+$h;\n\n        // get the Closing operator from the PDF Style\n        if($style=='F') $op='f';\n        elseif($style=='FD' || $style=='DF') $op='B';\n        else $op='S';\n\n        // drawing\n        $this->_Point($x1, $y1, true);\n        $this->_Line($x2, $y2, true);\n        $this->_Line($x3, $y3, true);\n        $this->_Line($x4, $y4, true);\n        $this->_Line($x1, $y1, true);\n        $this->_out($op);\n    }\n\n    /**\n     * SVG - make a Line\n     *\n     * @param float $x1\n     * @param float $y1\n     * @param float $x2\n     * @param float $y2\n     * @access public\n     */\n    public function svgLine($x1, $y1, $x2, $y2)\n    {\n        // get the Closing operator\n        $op='S';\n\n        // drawing\n        $this->_Point($x1, $y1, true);\n        $this->_Line($x2, $y2, true);\n        $this->_out($op);\n    }\n\n    /**\n     * SVG - make a Ellipse\n     *\n     * @param float  $x0 x Center\n     * @param float  $y0 y Center\n     * @param float  $rx x radius\n     * @param float  $ry y radius\n     * @param string $style PDF Style\n     * @access public\n     */\n    public function svgEllipse($x0, $y0, $rx, $ry, $style)\n    {\n        // get the Closing operator from the PDF Style\n        if($style=='F') $op='f';\n        elseif($style=='FD' || $style=='DF') $op='B';\n        else $op='S';\n\n        // drawing\n        $this->_Arc($x0, $y0, $rx, $ry, 0, 2*M_PI, true, true, true);\n        $this->_out($op);\n    }\n\n    /**\n     * SVG - make a Advanced Polygone\n     *\n     * @param array  $actions list of actions\n     * @param string $style PDF Style\n     * @access public\n     */\n    public function svgPolygone($actions, $style)\n    {\n        // get the Closing operator from the PDF Style\n        if($style=='F') $op='f';\n        elseif($style=='FD' || $style=='DF') $op='B';\n        else $op='S';\n\n        // To save the First action and the last point\n        $first = array('', 0, 0);\n        $last = array(0, 0, 0, 0);\n\n        foreach ($actions as $action) {\n            switch($action[0])\n            {\n                // Start the Path\n                case 'M':\n                case 'm':\n                    $first = $action;\n                    $x = $action[1]; $y = $action[2]; $xc = $x; $yc = $y;\n                    $this->_Point($x, $y, true);\n                    break;\n\n                // Close the Path\n                case 'Z':\n                case 'z':\n                    $x = $first[1]; $y = $first[2]; $xc = $x; $yc = $y;\n                    $this->_Line($x, $y, true);\n                    break;\n\n                // Make a Line (new point)\n                case 'L':\n                    $x = $action[1]; $y = $action[2]; $xc = $x; $yc = $y;\n                    $this->_Line($x, $y, true);\n                    break;\n\n                // Make a Line (vector from last point)\n                case 'l':\n                    $x = $last[0]+$action[1]; $y = $last[1]+$action[2]; $xc = $x; $yc = $y;\n                    $this->_Line($x, $y, true);\n                    break;\n\n                // Make a Horizontal Line (new point)\n                case 'H':\n                    $x = $action[1]; $y = $last[1]; $xc = $x; $yc = $y;\n                    $this->_Line($x, $y, true);\n                    break;\n\n                // Make a Horisontal Line (vector from last point)\n                case 'h':\n                    $x = $last[0]+$action[1]; $y = $last[1]; $xc = $x; $yc = $y;\n                    $this->_Line($x, $y, true);\n                    break;\n\n                // Make a Vertical Line (new point)\n                case 'V':\n                    $x = $last[0]; $y = $action[1]; $xc = $x; $yc = $y;\n                    $this->_Line($x, $y, true);\n                    break;\n\n                // Make a Vertical Line (vector from last point)\n                case 'v':\n                    $x = $last[0]; $y = $last[1]+$action[1]; $xc = $x; $yc = $y;\n                    $this->_Line($x, $y, true);\n                    break;\n\n                // Make a Arc (new point)\n                case 'A':\n                    $rx = $action[1];   // rx\n                    $ry = $action[2];   // ry\n                    $a = $action[3];    // deviation angle of the axis X\n                    $l = $action[4];    // large-arc-flag\n                    $s = $action[5];    // sweep-flag\n                    $x1 = $last[0];     // begin x\n                    $y1 = $last[1];     // begin y\n                    $x2 = $action[6];   // final x\n                    $y2 = $action[7];   // final y\n\n                    $this->_Arc2($x1, $y1, $x2, $y2, $rx, $ry, $a, $l, $s, true);\n                    $x = $x2; $y = $y2; $xc = $x; $yc = $y;\n                    break;\n\n                // Make a Arc (vector from last point)\n                case 'a':\n                    $rx = $action[1];   // rx\n                    $ry = $action[2];   // ry\n                    $a = $action[3];    // deviation angle of the axis X\n                    $l = $action[4];    // large-arc-flag\n                    $s = $action[5];    // sweep-flag\n                    $x1 = $last[0];     // begin x\n                    $y1 = $last[1];     // begin y\n                    $x2 = $last[0]+$action[6]; // final x\n                    $y2 = $last[1]+$action[7]; // final y\n\n                    $this->_Arc2($x1, $y1, $x2, $y2, $rx, $ry, $a, $l, $s, true);\n                    $x = $x2; $y = $y2; $xc = $x; $yc = $y;\n                    break;\n\n                // Make a Bezier Curve (new point)\n                case 'C':\n                    $x1 = $action[1];\n                    $y1 = $action[2];\n                    $x2 = $action[3];\n                    $y2 = $action[4];\n                    $xf = $action[5];\n                    $yf = $action[6];\n                    $this->_Curve($x1, $y1, $x2, $y2, $xf, $yf, true);\n                    $x = $xf; $y = $yf; $xc = $x2; $yc = $y2;\n                    break;\n\n                // Make a Bezier Curve (vector from last point)\n                case 'c':\n                    $x1 = $last[0]+$action[1];\n                    $y1 = $last[1]+$action[2];\n                    $x2 = $last[0]+$action[3];\n                    $y2 = $last[1]+$action[4];\n                    $xf = $last[0]+$action[5];\n                    $yf = $last[1]+$action[6];\n                    $this->_Curve($x1, $y1, $x2, $y2, $xf, $yf, true);\n                    $x = $xf; $y = $yf; $xc = $x2; $yc = $y2;\n                    break;\n\n                // Unknown Path\n                default:\n                    throw new HTML2PDF_exception(0, 'SVG Path Error : ['.$action[0].'] unkown');\n            }\n\n            // save the last point\n            $last = array($x, $y, $xc, $yc);\n        }\n\n        // finish the path\n        $this->_out($op);\n    }\n\n    /**\n     * SVG - go to a point\n     *\n     * @param float   $x\n     * @param float   $y\n     * @param boolean $trans apply transformation\n     * @access protected\n     */\n    protected function _Point($x, $y, $trans = false)\n    {\n        if ($trans) $this->ptTransform($x, $y);\n\n        $this->_out(sprintf('%.2F %.2F m', $x, $y));\n    }\n\n    /**\n     * SVG - make a line from the last point to (x,y)\n     *\n     * @param float   $x\n     * @param float   $y\n     * @param boolean $trans apply transformation\n     * @access protected\n     */\n    protected function _Line($x, $y, $trans = false)\n    {\n        if ($trans) $this->ptTransform($x, $y);\n\n        $this->_out(sprintf('%.2F %.2F l', $x, $y));\n    }\n\n    /**\n     * SVG - make a bezier curve from the last point to (xf,yf), with the 2 direction points (x1,y1) and (x2,y2)\n     *\n     * @param float $x1\n     * @param float $y1\n     * @param float $x2\n     * @param float $y2\n     * @param float $xf\n     * @param float $yf\n     * @param boolean $trans apply transformation\n     * @access protected\n     */\n    protected function _Curve($x1, $y1, $x2, $y2, $xf, $yf, $trans = false)\n    {\n        if ($trans) {\n            $this->ptTransform($x1, $y1);\n            $this->ptTransform($x2, $y2);\n            $this->ptTransform($xf, $yf);\n        }\n        $this->_out(sprintf('%.2F %.2F %.2F %.2F %.2F %.2F c', $x1, $y1, $x2, $y2, $xf, $yf));\n    }\n\n    /**\n     * SVG - make a arc with Center, Radius, from angleBegin to angleEnd\n     *\n     * @param float $xc\n     * @param float $yc\n     * @param float $rx\n     * @param float $ry\n     * @param float $angleBegin in radians\n     * @param float $angleEng in radians\n     * @param boolean $direction\n     * @param boolean $drawFirst, true => add the first point\n     * @param boolean $trans apply transformation\n     * @access protected\n     */\n    protected function _Arc(\n        $xc,\n        $yc,\n        $rx,\n        $ry,\n        $angleBegin,\n        $angleEnd,\n        $direction = true,\n        $drawFirst = true,\n        $trans=false)\n    {\n        // if we want the no trigo direction : add 2PI to the begin angle, to invert the direction\n        if (!$direction) $angleBegin+= M_PI*2.;\n\n        // cut in segment to convert in berize curv\n        $dt = ($angleEnd - $angleBegin)/self::ARC_NB_SEGMENT;\n        $dtm = $dt/3;\n\n        // center of the arc\n        $x0 = $xc; $y0 = $yc;\n\n        // calculing the first point\n        $t1 = $angleBegin;\n        $a0 = $x0 + ($rx * cos($t1));\n        $b0 = $y0 + ($ry * sin($t1));\n        $c0 = -$rx * sin($t1);\n        $d0 = $ry * cos($t1);\n\n        // if drawFirst => draw the first point\n        if ($drawFirst) $this->_Point($a0, $b0, $trans);\n\n        // foreach segment\n        for ($i = 1; $i <= self::ARC_NB_SEGMENT; $i++) {\n            // calculing the next point\n            $t1 = ($i * $dt)+$angleBegin;\n            $a1 = $x0 + ($rx * cos($t1));\n            $b1 = $y0 + ($ry * sin($t1));\n            $c1 = -$rx * sin($t1);\n            $d1 = $ry * cos($t1);\n\n            // make the bezier curv\n            $this->_Curve(\n                $a0 + ($c0 * $dtm), $b0 + ($d0 * $dtm),\n                $a1 - ($c1 * $dtm), $b1 - ($d1 * $dtm),\n                $a1, $b1,\n                $trans\n            );\n\n            // save the point\n            $a0 = $a1;\n            $b0 = $b1;\n            $c0 = $c1;\n            $d0 = $d1;\n        }\n    }\n\n    /**\n     * SVG - make a arc from Pt1 to Pt2, with Radius\n     *\n     * @param float $x1\n     * @param float $y1\n     * @param float $x2\n     * @param float $y2\n     * @param float $rx\n     * @param float $ry\n     * @param float $angle deviation angle of the axis X\n     * @param boolean $l large-arc-flag\n     * @param boolean $s sweep-flag\n     * @param boolean $trans apply transformation\n     * @access protected\n     */\n    protected function _Arc2($x1, $y1, $x2, $y2, $rx, $ry, $angle=0., $l=0, $s=0, $trans = false)\n    {\n        // array to stock the parameters\n        $v = array();\n\n        // the original values\n        $v['x1'] = $x1;\n        $v['y1'] = $y1;\n        $v['x2'] = $x2;\n        $v['y2'] = $y2;\n        $v['rx'] = $rx;\n        $v['ry'] = $ry;\n\n        // rotate with the deviation angle of the axis X\n        $v['xr1'] = $v['x1']*cos($angle) - $v['y1']*sin($angle);\n        $v['yr1'] = $v['x1']*sin($angle) + $v['y1']*cos($angle);\n        $v['xr2'] = $v['x2']*cos($angle) - $v['y2']*sin($angle);\n        $v['yr2'] = $v['x2']*sin($angle) + $v['y2']*cos($angle);\n\n        // the normalized vector\n        $v['Xr1'] = $v['xr1']/$v['rx'];\n        $v['Yr1'] = $v['yr1']/$v['ry'];\n        $v['Xr2'] = $v['xr2']/$v['rx'];\n        $v['Yr2'] = $v['yr2']/$v['ry'];\n        $v['dXr'] = $v['Xr2']-$v['Xr1'];\n        $v['dYr'] = $v['Yr2']-$v['Yr1'];\n        $v['D'] = $v['dXr']*$v['dXr'] + $v['dYr']*$v['dYr'];\n\n        // if |vector| is Null, or if |vector| > 2 : impossible to make a arc => Line\n        if ($v['D']==0 || $v['D']>4) {\n            $this->_Line($x2, $y2, $trans);\n            return false;\n        }\n\n        // convert paramters for make a arc with Center, Radius, from angleBegin to angleEnd\n        $v['s1'] = array();\n        $v['s1']['t'] = sqrt((4.-$v['D'])/$v['D']);\n        $v['s1']['Xr'] = ($v['Xr1']+$v['Xr2'])/2. + $v['s1']['t']*($v['Yr2']-$v['Yr1'])/2.;\n        $v['s1']['Yr'] = ($v['Yr1']+$v['Yr2'])/2. + $v['s1']['t']*($v['Xr1']-$v['Xr2'])/2.;\n        $v['s1']['xr'] = $v['s1']['Xr']*$v['rx'];\n        $v['s1']['yr'] = $v['s1']['Yr']*$v['ry'];\n        $v['s1']['x'] = $v['s1']['xr']*cos($angle)+$v['s1']['yr']*sin($angle);\n        $v['s1']['y'] =-$v['s1']['xr']*sin($angle)+$v['s1']['yr']*cos($angle);\n        $v['s1']['a1'] = atan2($v['y1']-$v['s1']['y'], $v['x1']-$v['s1']['x']);\n        $v['s1']['a2'] = atan2($v['y2']-$v['s1']['y'], $v['x2']-$v['s1']['x']);\n        if ($v['s1']['a1']>$v['s1']['a2']) $v['s1']['a1']-=2*M_PI;\n\n        $v['s2'] = array();\n        $v['s2']['t'] = -$v['s1']['t'];\n        $v['s2']['Xr'] = ($v['Xr1']+$v['Xr2'])/2. + $v['s2']['t']*($v['Yr2']-$v['Yr1'])/2.;\n        $v['s2']['Yr'] = ($v['Yr1']+$v['Yr2'])/2. + $v['s2']['t']*($v['Xr1']-$v['Xr2'])/2.;\n        $v['s2']['xr'] = $v['s2']['Xr']*$v['rx'];\n        $v['s2']['yr'] = $v['s2']['Yr']*$v['ry'];\n        $v['s2']['x'] = $v['s2']['xr']*cos($angle)+$v['s2']['yr']*sin($angle);\n        $v['s2']['y'] =-$v['s2']['xr']*sin($angle)+$v['s2']['yr']*cos($angle);\n        $v['s2']['a1'] = atan2($v['y1']-$v['s2']['y'], $v['x1']-$v['s2']['x']);\n        $v['s2']['a2'] = atan2($v['y2']-$v['s2']['y'], $v['x2']-$v['s2']['x']);\n        if ($v['s2']['a1']>$v['s2']['a2']) $v['s2']['a1']-=2*M_PI;\n\n        if (!$l) {\n            if ($s) {\n                $xc = $v['s2']['x'];\n                $yc = $v['s2']['y'];\n                $a1 = $v['s2']['a1'];\n                $a2 = $v['s2']['a2'];\n                $this->_Arc($xc, $yc, $rx, $ry, $a1, $a2, true, false, $trans);\n            } else {\n                $xc = $v['s1']['x'];\n                $yc = $v['s1']['y'];\n                $a1 = $v['s1']['a1'];\n                $a2 = $v['s1']['a2'];\n                $this->_Arc($xc, $yc, $rx, $ry, $a1, $a2, false, false, $trans);\n            }\n        } else {\n            if ($s) {\n                $xc = $v['s1']['x'];\n                $yc = $v['s1']['y'];\n                $a1 = $v['s1']['a1'];\n                $a2 = $v['s1']['a2'];\n                $this->_Arc($xc, $yc, $rx, $ry, $a1, $a2, true, false, $trans);\n            } else {\n                $xc = $v['s2']['x'];\n                $yc = $v['s2']['y'];\n                $a1 = $v['s2']['a1'];\n                $a2 = $v['s2']['a2'];\n                $this->_Arc($xc, $yc, $rx, $ry, $a1, $a2, false, false, $trans);\n            }\n        }\n    }\n\n    /**\n     * SVG - transform the point (reference)\n     *\n     * @param float &$x\n     * @param float &$y\n     * @param boolean $trans true => convert into PDF unit\n     * @return boolean\n     * @access public\n     */\n    public function ptTransform(&$x,  &$y, $trans=true)\n    {\n        // load the last Transfomation Matrix\n        $nb = count($this->_transf);\n        if ($nb)    $m = $this->_transf[$nb-1];\n        else        $m = array(1,0,0,1,0,0);\n\n        // apply the Transformation Matrix\n        list($x,$y) = array(($x*$m[0]+$y*$m[2]+$m[4]),($x*$m[1]+$y*$m[3]+$m[5]));\n\n        // if true => convert into PDF unit\n        if ($trans) {\n            $x = $x*$this->k;\n            $y = ($this->h-$y)*$this->k;\n        }\n\n        return true;\n    }\n\n    /**\n     * SVG - add a transformation Matric\n     *\n     * @param array $n matrix\n     * @access public\n     */\n    public function doTransform($n = null)\n    {\n        // get the last Transformation Matrix\n        $nb = count($this->_transf);\n        if ($nb)    $m = $this->_transf[$nb-1];\n        else        $m = array(1,0,0,1,0,0);\n\n        // if no transform, get the Identity Matrix\n        if (!$n) $n = array(1,0,0,1,0,0);\n\n        // create the new Transformation Matrix\n        $this->_transf[] = array(\n            $m[0]*$n[0]+$m[2]*$n[1],\n            $m[1]*$n[0]+$m[3]*$n[1],\n            $m[0]*$n[2]+$m[2]*$n[3],\n            $m[1]*$n[2]+$m[3]*$n[3],\n            $m[0]*$n[4]+$m[2]*$n[5]+$m[4],\n            $m[1]*$n[4]+$m[3]*$n[5]+$m[5]\n        );\n    }\n\n    /**\n     * SVG - remove a transformation Matric\n     *\n     * @access public\n     */\n    public function undoTransform()\n    {\n        array_pop($this->_transf);\n    }\n\n    /**\n     * Convert a HTML2PDF barcode in a TCPDF barcode\n     *\n     * @param string $code code to print\n     * @param string $type type of barcode (see tcpdf/barcodes.php for supported formats)\n     * @param int $x x position in user units\n     * @param int $y y position in user units\n     * @param int $w width in user units\n     * @param int $h height in user units\n     * @param int $labelFontsize of the Test Label. If false : no Label\n     * @param array $color color of the foreground\n     * @access public\n     */\n    public function myBarcode($code, $type, $x, $y, $w, $h, $labelFontsize, $color)\n    {\n        // the style of the barcode\n        $style = array(\n            'position' => 'S',\n            'text' => ($labelFontsize ? true : false),\n            'fgcolor' => $color,\n            'bgcolor' => false,\n        );\n\n        // build the barcode\n        $this->write1DBarcode($code, $type, $x, $y, $w, $h, '', $style, 'N');\n\n        // it Label => add the FontSize to the height\n        if ($labelFontsize) $h+= ($labelFontsize);\n\n        // return the size of the barcode\n        return array($w, $h);\n    }\n\n    /**\n     * create a automatic Index on a page\n     *\n     * @param html2pdf $obj           parent object\n     * @param string   $titre         Title of the Index Page\n     * @param integer  $sizeTitle     Font size for hthe Title\n     * @param integer  $sizeBookmark  Font size for the bookmarks\n     * @param boolean  $bookmarkTitle Bookmark the Title\n     * @param boolean  $displayPage   Display the page number for each bookmark\n     * @param integer  $page draw the automatic Index on a specific Page. if null => add a page at the end\n     * @param string   $fontName      FontName to use\n     * @access public\n     */\n    public function createIndex(\n        &$obj,\n        $titre = 'Index',\n        $sizeTitle = 20,\n        $sizeBookmark = 15,\n        $bookmarkTitle = true,\n        $displayPage = true,\n        $page = null,\n        $fontName = 'helvetica')\n    {\n        // bookmark the Title if wanted\n        if ($bookmarkTitle) $this->Bookmark($titre, 0, -1);\n\n        // display the Title with the good Font size\n        $this->SetFont($fontName, '', $sizeTitle);\n        $this->Cell(0, 5, $titre, 0, 1, 'C');\n\n        // set the good Font size for the bookmarks\n        $this->SetFont($fontName, '', $sizeBookmark);\n        $this->Ln(10);\n\n        // get the number of bookmarks\n        $size=sizeof($this->outlines);\n\n        // get the size of the \"P. xx\" cell\n        $pageCellSize=$this->GetStringWidth('p. '.$this->outlines[$size-1]['p'])+2;\n\n        // Foreach bookmark\n        for ($i=0;$i<$size;$i++) {\n            // if we need a new page => add a new page\n            if ($this->getY()+$this->FontSize>=($this->h - $this->bMargin)) {\n                $obj->_INDEX_NewPage($page);\n                $this->SetFont($fontName, '', $sizeBookmark);\n            }\n\n            // Offset of the current level\n            $level=$this->outlines[$i]['l'];\n            if($level>0) $this->Cell($level*8);\n\n            // Caption (cut to fit on the width page)\n            $str=$this->outlines[$i]['t'];\n            $strsize=$this->GetStringWidth($str);\n            $availableSize=$this->w-$this->lMargin-$this->rMargin-$pageCellSize-($level*8)-4;\n            while ($strsize>=$availableSize) {\n                $str=substr($str, 0, -1);\n                $strsize=$this->GetStringWidth($str);\n            }\n\n            // if we want to display the page nmber\n            if ($displayPage) {\n                // display the Bookmark Caption\n                $this->Cell($strsize+2, $this->FontSize+2, $str);\n\n                //Filling dots\n                $w=$this->w-$this->lMargin-$this->rMargin-$pageCellSize-($level*8)-($strsize+2);\n                $nb=$w/$this->GetStringWidth('.');\n                $dots=str_repeat('.', $nb);\n                $this->Cell($w, $this->FontSize+2, $dots, 0, 0, 'R');\n\n                //Page number\n                $this->Cell($pageCellSize, $this->FontSize+2, 'p. '.$this->outlines[$i]['p'], 0, 1, 'R');\n            } else {\n                // display the Bookmark Caption\n                $this->Cell($strsize+2, $this->FontSize+2, $str, 0, 1);\n            }\n        }\n    }\n\n    /**\n     * Returns the string alias used for the total number of pages.\n     *\n     * @access public\n     * @return string;\n     * @see TCPDF::getAliasNbPages(), TCPDF::getPageGroupAlias()\n     */\n    public function getMyAliasNbPages()\n    {\n        if ($this->_myLastPageGroupNb==0) {\n            return $this->getAliasNbPages();\n        } else {\n            $old = $this->currpagegroup;\n            $this->currpagegroup = '{nb'.$this->_myLastPageGroupNb.'}';\n            $new = $this->getPageGroupAlias();\n            $this->currpagegroup = $old;\n\n            return $new;\n        }\n    }\n\n    /**\n     * Returns the current page number.\n     *\n     * @access public\n     * @param  integer $page\n     * @return integer;\n     */\n    public function getMyNumPage($page=null)\n    {\n        if ($page===null) {\n            $page = $this->page;\n        }\n\n        if ($this->_myLastPageGroupNb==0) {\n            return $page;\n        } else {\n            return $page-$this->_myLastPageGroup;\n        }\n    }\n\n    /**\n     * Start a new group of pages\n     *\n     * @access public\n     * @return integer;\n     * @see tcpdf::startPageGroup\n     */\n    public function myStartPageGroup()\n    {\n        $this->_myLastPageGroup = $this->page-1;\n        $this->_myLastPageGroupNb++;\n    }\n\n    /**\n     * get $_myLastPageGroup;\n     *\n     * @access public\n     * @return integer $_myLastPageGroup;\n     */\n    public function getMyLastPageGroup()\n    {\n        return $this->_myLastPageGroup;\n    }\n\n    /**\n     * set $_myLastPageGroup;\n     *\n     * @access public\n     * @param integer $myLastPageGroup;\n     */\n    public function setMyLastPageGroup($myLastPageGroup)\n    {\n        $this->_myLastPageGroup = $myLastPageGroup;\n    }\n\n    /**\n     * get $_myLastPageGroupNb;\n     *\n     * @access public\n     * @return integer $_myLastPageGroupNb;\n     */\n    public function getMyLastPageGroupNb()\n    {\n        return $this->_myLastPageGroupNb;\n    }\n\n    /**\n     * set $_myLastPageGroupNb;\n     *\n     * @access public\n     * @param integer $myLastPageGroupNb;\n     */\n    public function setMyLastPageGroupNb($myLastPageGroupNb)\n    {\n        $this->_myLastPageGroupNb = $myLastPageGroupNb;\n    }\n}\n"
  },
  {
    "path": "newscoop/include/html2pdf/_class/parsingCss.class.php",
    "content": "<?php\n/**\n * HTML2PDF Librairy - parsingCss class\n *\n * HTML => PDF convertor\n * distributed under the LGPL License\n *\n * @author      Laurent MINGUET <webmaster@html2pdf.fr>\n * @version     4.03\n */\n\nclass HTML2PDF_parsingCss\n{\n    /**\n     * reference to the pdf object\n     * @var TCPDF\n     */\n    protected $_pdf         = null;\n\n    protected $_htmlColor   = array(); // list of the HTML colors\n    protected $_onlyLeft    = false;   // flag if we are in a sub html => only \"text-align:left\" is used\n    protected $_defaultFont = null;    // default font to use if the asked font does not exist\n\n    public    $value        = array(); // current values\n    public    $css          = array(); // css values\n    public    $cssKeys      = array(); // css key, for the execution order\n    public    $table        = array(); // level history\n\n    /**\n     * Constructor\n     *\n     * @param  &HTML2PDF_myPdf reference to the PDF $object\n     * @access public\n     */\n    public function __construct(&$pdf)\n    {\n        $this->_init();\n        $this->setPdfParent($pdf);\n    }\n\n    /**\n     * Set the HTML2PDF parent object\n     *\n     * @param  &HTML2PDF reference to the HTML2PDF parent $object\n     * @access public\n     */\n    public function setPdfParent(&$pdf)\n    {\n        $this->_pdf = &$pdf;\n    }\n\n    /**\n     * Inform that we want only \"test-align:left\" because we are in a sub HTML\n     *\n     * @access public\n     */\n    public function setOnlyLeft()\n    {\n        $this->value['text-align'] = 'left';\n        $this->_onlyLeft = true;\n    }\n\n    /**\n     * Get the vales of the parent, if exist\n     *\n     * @return array CSS values\n     * @access public\n     */\n    public function getOldValues()\n    {\n        return isset($this->table[count($this->table)-1]) ? $this->table[count($this->table)-1] : $this->value;\n    }\n\n    /**\n    * define the Default Font to use, if the font does not exist, or if no font asked\n    *\n    * @param  string  default font-family. If null : Arial for no font asked, and error fot ont does not exist\n    * @return string  old default font-family\n    * @access public\n    */\n    public function setDefaultFont($default = null)\n    {\n        $old = $this->_defaultFont;\n        $this->_defaultFont = $default;\n        if ($default) $this->value['font-family'] = $default;\n        return $old;\n    }\n\n     /**\n     * Init the object\n     *\n     * @access protected\n     */\n    protected function _init()\n    {\n        // get the Web Colors from TCPDF\n        require(K_PATH_MAIN.'htmlcolors.php');\n        $this->_htmlColor = $webcolor;\n\n        // init the Style\n        $this->table = array();\n        $this->value = array();\n        $this->initStyle();\n\n        // Init the styles without legacy\n        $this->resetStyle();\n    }\n\n    /**\n     * Init the CSS Style\n     *\n     * @access public\n     */\n    public function initStyle()\n    {\n        $this->value['id_tag']       = 'body';        // tag name\n        $this->value['id_name']          = null;         // tag - attribute name\n        $this->value['id_id']            = null;         // tag - attribute id\n        $this->value['id_class']         = null;         // tag - attribute class\n        $this->value['id_lst']           = array('*');   // tag - list of legacy\n        $this->value['mini-size']        = 1.;           // specific size report for sup, sub\n        $this->value['mini-decal']       = 0;            // specific position report for sup, sub\n        $this->value['font-family']      = 'Arial';\n        $this->value['font-bold']        = false;\n        $this->value['font-italic']      = false;\n        $this->value['font-underline']   = false;\n        $this->value['font-overline']    = false;\n        $this->value['font-linethrough'] = false;\n        $this->value['text-transform']   = 'none';\n        $this->value['font-size']        = $this->convertToMM('10pt');\n        $this->value['text-indent']      = 0;\n        $this->value['text-align']       = 'left';\n        $this->value['vertical-align']   = 'middle';\n        $this->value['line-height']      = 'normal';\n\n        $this->value['position']         = null;\n        $this->value['x']                = null;\n        $this->value['y']                = null;\n        $this->value['width']            = 0;\n        $this->value['height']           = 0;\n        $this->value['top']              = null;\n        $this->value['right']            = null;\n        $this->value['bottom']           = null;\n        $this->value['left']             = null;\n        $this->value['float']            = null;\n        $this->value['display']          = null;\n        $this->value['rotate']           = null;\n        $this->value['overflow']         = 'visible';\n\n        $this->value['color']            = array(0, 0, 0);\n        $this->value['background']       = array('color' => null, 'image' => null, 'position' => null, 'repeat' => null);\n        $this->value['border']           = array();\n        $this->value['padding']          = array();\n        $this->value['margin']           = array();\n        $this->value['margin-auto']      = false;\n\n        $this->value['list-style-type']  = '';\n        $this->value['list-style-image'] = '';\n\n        $this->value['xc'] = null;\n        $this->value['yc'] = null;\n    }\n\n    /**\n     * Init the CSS Style without legacy\n     *\n     * @param  string  tag name\n     * @access public\n     */\n    public function resetStyle($tagName = '')\n    {\n        // prepare somme values\n        $border = $this->readBorder('solid 1px #000000');\n        $units = array(\n            '1px' => $this->convertToMM('1px'),\n            '5px' => $this->convertToMM('5px'),\n        );\n\n\n        // prepare the Collapse attribute\n        $collapse = isset($this->value['border']['collapse']) ? $this->value['border']['collapse'] : false;\n        if (!in_array($tagName, array('tr', 'td', 'th', 'thead', 'tbody', 'tfoot'))) $collapse = false;\n\n        // set the global css values\n        $this->value['position']   = null;\n        $this->value['x']          = null;\n        $this->value['y']          = null;\n        $this->value['width']      = 0;\n        $this->value['height']     = 0;\n        $this->value['top']        = null;\n        $this->value['right']      = null;\n        $this->value['bottom']     = null;\n        $this->value['left']       = null;\n        $this->value['float']      = null;\n        $this->value['display']    = null;\n        $this->value['rotate']     = null;\n        $this->value['overflow']   = 'visible';\n        $this->value['background'] = array('color' => null, 'image' => null, 'position' => null, 'repeat' => null);\n        $this->value['border']     = array(\n            't' => $this->readBorder('none'),\n            'r' => $this->readBorder('none'),\n            'b' => $this->readBorder('none'),\n            'l' => $this->readBorder('none'),\n            'radius' => array(\n                'tl' => array(0, 0),\n                'tr' => array(0, 0),\n                'br' => array(0, 0),\n                'bl' => array(0, 0)\n            ),\n            'collapse' => $collapse,\n        );\n\n        // specific values for some tags\n        if (!in_array($tagName, array('h1', 'h2', 'h3', 'h4', 'h5', 'h6'))) {\n            $this->value['margin'] = array('t'=>0,'r'=>0,'b'=>0,'l'=>0);\n        }\n\n        if (in_array($tagName, array('input', 'select', 'textarea'))) {\n            $this->value['border']['t'] = null;\n            $this->value['border']['r'] = null;\n            $this->value['border']['b'] = null;\n            $this->value['border']['l'] = null;\n        }\n\n        if ($tagName=='p') {\n            $this->value['margin']['t'] = null;\n            $this->value['margin']['b'] = null;\n        }\n        if ($tagName=='blockquote') {\n            $this->value['margin']['t'] = 3;\n            $this->value['margin']['r'] = 3;\n            $this->value['margin']['b'] = 3;\n            $this->value['margin']['l'] = 6;\n        }\n        $this->value['margin-auto'] = false;\n\n        if (in_array($tagName, array('blockquote', 'div', 'fieldset'))) {\n            $this->value['vertical-align'] = 'top';\n        }\n\n        if (in_array($tagName, array('fieldset', 'legend'))) {\n            $this->value['border'] = array(\n                't' => $border,\n                'r' => $border,\n                'b' => $border,\n                'l' => $border,\n                'radius' => array(\n                    'tl' => array($units['5px'], $units['5px']),\n                    'tr' => array($units['5px'], $units['5px']),\n                    'br' => array($units['5px'], $units['5px']),\n                    'bl' => array($units['5px'], $units['5px'])\n                ),\n                'collapse' => false,\n            );\n        }\n\n        if (in_array($tagName, array('ul', 'li'))) {\n            $this->value['list-style-type']  = '';\n            $this->value['list-style-image'] = '';\n        }\n\n        if (!in_array($tagName, array('tr', 'td'))) {\n            $this->value['padding'] = array(\n                't' => 0,\n                'r' => 0,\n                'b' => 0,\n                'l' => 0\n            );\n        } else {\n            $this->value['padding'] = array(\n                't' => $units['1px'],\n                'r' => $units['1px'],\n                'b' => $units['1px'],\n                'l' => $units['1px']\n            );\n        }\n\n        if ($tagName=='hr') {\n            $this->value['border'] = array(\n                't' => $border,\n                'r' => $border,\n                'b' => $border,\n                'l' => $border,\n                'radius' => array(\n                    'tl' => array(0, 0),\n                    'tr' => array(0, 0),\n                    'br' => array(0, 0),\n                    'bl' => array(0, 0)\n                ),\n                'collapse' => false,\n            );\n            $this->convertBackground('#FFFFFF', $this->value['background']);\n        }\n\n        $this->value['xc'] = null;\n        $this->value['yc'] = null;\n    }\n\n    /**\n     * Init the PDF Font\n     *\n     * @access public\n     */\n    public function fontSet()\n    {\n        $family = strtolower($this->value['font-family']);\n\n        $b = ($this->value['font-bold']        ? 'B' : '');\n        $i = ($this->value['font-italic']      ? 'I' : '');\n        $u = ($this->value['font-underline']   ? 'U' : '');\n        $d = ($this->value['font-linethrough'] ? 'D' : '');\n        $o = ($this->value['font-overline']    ? 'O' : '');\n\n        // font style\n        $style = $b.$i;\n\n        if ($this->_defaultFont) {\n            if($family=='arial')\n                $family='helvetica';\n            elseif($family=='symbol' || $family=='zapfdingbats')\n                $style='';\n\n            $fontkey = $family.$style;\n            if (!$this->_pdf->isLoadedFont($fontkey))\n                $family = $this->_defaultFont;\n        }\n\n        if($family=='arial')\n            $family='helvetica';\n        elseif($family=='symbol' || $family=='zapfdingbats')\n            $style='';\n\n        // complete style\n        $style.= $u.$d.$o;\n\n        // size : mm => pt\n        $size = $this->value['font-size'];\n        $size = 72 * $size / 25.4;\n\n        // apply the font\n        $this->_pdf->SetFont($family, $style, $this->value['mini-size']*$size);\n        $this->_pdf->setTextColorArray($this->value['color']);\n        if ($this->value['background']['color'])\n            $this->_pdf->setFillColorArray($this->value['background']['color']);\n        else\n            $this->_pdf->setFillColor(255);\n    }\n\n     /**\n     * add a level in the CSS history\n     *\n     * @access public\n     */\n    public function save()\n    {\n        array_push($this->table, $this->value);\n    }\n\n     /**\n     * remove a level in the CSS history\n     *\n     * @access public\n     */\n    public function load()\n    {\n        if (count($this->table)) {\n            $this->value = array_pop($this->table);\n        }\n    }\n\n     /**\n     * restore the Y positiony (used after a span)\n     *\n     * @access public\n     */\n    public function restorePosition()\n    {\n        if ($this->value['y']==$this->_pdf->getY()) $this->_pdf->setY($this->value['yc'], false);\n    }\n\n     /**\n     * set the New position for the current Tag\n     *\n     * @access public\n     */\n    public function setPosition()\n    {\n        // get the current position\n        $currentX = $this->_pdf->getX();\n        $currentY = $this->_pdf->getY();\n\n        // save it\n        $this->value['xc'] = $currentX;\n        $this->value['yc'] = $currentY;\n\n        if ($this->value['position']=='relative' || $this->value['position']=='absolute') {\n            if ($this->value['right']!==null) {\n                $x = $this->getLastWidth(true) - $this->value['right'] - $this->value['width'];\n                if ($this->value['margin']['r']) $x-= $this->value['margin']['r'];\n            } else {\n                $x = $this->value['left'];\n                if ($this->value['margin']['l']) $x+= $this->value['margin']['l'];\n            }\n\n            if ($this->value['bottom']!==null) {\n                $y = $this->getLastHeight(true) - $this->value['bottom'] - $this->value['height'];\n                if ($this->value['margin']['b']) $y-= $this->value['margin']['b'];\n            } else {\n                $y = $this->value['top'];\n                if ($this->value['margin']['t']) $y+= $this->value['margin']['t'];\n            }\n\n            if ($this->value['position']=='relative') {\n                $this->value['x'] = $currentX + $x;\n                $this->value['y'] = $currentY + $y;\n            } else {\n                $this->value['x'] = $this->_getLastAbsoluteX()+$x;\n                $this->value['y'] = $this->_getLastAbsoluteY()+$y;\n            }\n        } else {\n            $this->value['x'] = $currentX;\n            $this->value['y'] = $currentY;\n            if ($this->value['margin']['l']) $this->value['x']+= $this->value['margin']['l'];\n            if ($this->value['margin']['t']) $this->value['y']+= $this->value['margin']['t'];\n        }\n\n        // save the new position\n        $this->_pdf->setXY($this->value['x'], $this->value['y']);\n    }\n\n     /**\n     * Analise the CSS style to convert it into Form style\n     *\n     * @access public\n     * @param  array    styles\n     */\n    public function getFormStyle()\n    {\n        $prop = array();\n\n        $prop['alignment'] = $this->value['text-align'];\n\n        if (isset($this->value['background']['color']) && is_array($this->value['background']['color'])) {\n            $prop['fillColor'] = $this->value['background']['color'];\n        }\n\n        if (isset($this->value['border']['t']['color'])) {\n            $prop['strokeColor'] = $this->value['border']['t']['color'];\n        }\n\n        if (isset($this->value['border']['t']['width'])) {\n            $prop['lineWidth'] = $this->value['border']['t']['width'];\n        }\n\n        if (isset($this->value['border']['t']['type'])) {\n            $prop['borderStyle'] = $this->value['border']['t']['type'];\n        }\n\n        if (!empty($this->value['color'])) {\n            $prop['textColor'] = $this->value['color'];\n        }\n\n        if (!empty($this->value['font-size'])) {\n            $prop['textSize'] = $this->value['font-size'];\n        }\n\n        return $prop;\n    }\n\n     /**\n     * Analise the CSS style to convert it into SVG style\n     *\n     * @access public\n     * @param  string   tag name\n     * @param  array    styles\n     */\n    public function getSvgStyle($tagName, &$param)\n    {\n        // prepare\n        $tagName = strtolower($tagName);\n        $id   = isset($param['id'])   ? strtolower(trim($param['id']))   : null; if (!$id)   $id   = null;\n        $name = isset($param['name']) ? strtolower(trim($param['name'])) : null; if (!$name) $name = null;\n\n        // read the class attribute\n        $class = array();\n        $tmp = isset($param['class']) ? strtolower(trim($param['class'])) : '';\n        $tmp = explode(' ', $tmp);\n        foreach ($tmp as $k => $v) {\n            $v = trim($v);\n            if ($v) $class[] = $v;\n        }\n\n        // identify the tag, and the direct styles\n        $this->value['id_tag'] = $tagName;\n        $this->value['id_name']   = $name;\n        $this->value['id_id']     = $id;\n        $this->value['id_class']  = $class;\n        $this->value['id_lst']    = array();\n        $this->value['id_lst'][] = '*';\n        $this->value['id_lst'][] = $tagName;\n        if (!isset($this->value['svg'])) {\n            $this->value['svg'] = array(\n                'stroke'         => null,\n                'stroke-width'   => $this->convertToMM('1pt'),\n                'fill'           => null,\n                'fill-opacity'   => null,\n            );\n        }\n\n        if (count($class)) {\n            foreach ($class as $v) {\n                $this->value['id_lst'][] = '*.'.$v;\n                $this->value['id_lst'][] = '.'.$v;\n                $this->value['id_lst'][] = $tagName.'.'.$v;\n            }\n        }\n        if ($id) {\n            $this->value['id_lst'][] = '*#'.$id;\n            $this->value['id_lst'][] = '#'.$id;\n            $this->value['id_lst'][] = $tagName.'#'.$id;\n        }\n\n        // CSS style\n        $styles = $this->_getFromCSS();\n\n        // adding the style from the tag\n        $styles = array_merge($styles, $param['style']);\n\n        if (isset($styles['stroke']))        $this->value['svg']['stroke']       = $this->convertToColor($styles['stroke'], $res);\n        if (isset($styles['stroke-width']))  $this->value['svg']['stroke-width'] = $this->convertToMM($styles['stroke-width']);\n        if (isset($styles['fill']))          $this->value['svg']['fill']         = $this->convertToColor($styles['fill'], $res);\n        if (isset($styles['fill-opacity']))  $this->value['svg']['fill-opacity'] = 1.*$styles['fill-opacity'];\n\n        return $this->value['svg'];\n    }\n\n    /**\n     * analyse the css properties from the HTML parsing\n     *\n     * @access public\n     * @param  string  $tagName\n     * @param  array   $param\n     * @param  array   $legacy\n     */\n    public function analyse($tagName, &$param, $legacy = null)\n    {\n        // prepare the informations\n        $tagName = strtolower($tagName);\n        $id   = isset($param['id'])   ? strtolower(trim($param['id']))    : null; if (!$id)   $id   = null;\n        $name = isset($param['name']) ? strtolower(trim($param['name']))  : null; if (!$name) $name = null;\n\n        // get the class names to use\n        $class = array();\n        $tmp = isset($param['class']) ? strtolower(trim($param['class'])) : '';\n        $tmp = explode(' ', $tmp);\n        foreach ($tmp as $k => $v) {\n            $v = trim($v);\n            if ($v) $class[] = $v;\n        }\n\n        // prepare the values, and the list of css tags to identify\n        $this->value['id_tag']   = $tagName;\n        $this->value['id_name']  = $name;\n        $this->value['id_id']    = $id;\n        $this->value['id_class'] = $class;\n        $this->value['id_lst']   = array();\n        $this->value['id_lst'][] = '*';\n        $this->value['id_lst'][] = $tagName;\n        if (count($class)) {\n            foreach ($class as $v) {\n                $this->value['id_lst'][] = '*.'.$v;\n                $this->value['id_lst'][] = '.'.$v;\n                $this->value['id_lst'][] = $tagName.'.'.$v;\n            }\n        }\n        if ($id) {\n            $this->value['id_lst'][] = '*#'.$id;\n            $this->value['id_lst'][] = '#'.$id;\n            $this->value['id_lst'][] = $tagName.'#'.$id;\n        }\n\n        // get the css styles from class\n        $styles = $this->_getFromCSS();\n\n        // merge with the css styles from tag\n        $styles = array_merge($styles, $param['style']);\n        if (isset($param['allwidth']) && !isset($styles['width'])) $styles['width'] = '100%';\n\n        // reset some styles, depending on the tag name\n        $this->resetStyle($tagName);\n\n        // add the legacy values\n        if ($legacy) {\n            foreach ($legacy as $legacyName => $legacyValue) {\n                if (is_array($legacyValue)) {\n                    foreach($legacyValue as $legacy2Name => $legacy2Value)\n                        $this->value[$legacyName][$legacy2Name] = $legacy2Value;\n                } else {\n                    $this->value[$legacyName] = $legacyValue;\n                }\n            }\n        }\n\n        // some flags\n        $correctWidth = false;\n        $noWidth = true;\n\n        // read all the css styles\n        foreach ($styles as $nom => $val) {\n            switch($nom)\n            {\n                case 'font-family':\n                    $val = explode(',', $val);\n                    $val = trim($val[0]);\n                    if ($val) $this->value['font-family'] = $val;\n                    break;\n\n                case 'font-weight':\n                    $this->value['font-bold'] = ($val=='bold');\n                    break;\n\n                case 'font-style':\n                    $this->value['font-italic'] = ($val=='italic');\n                    break;\n\n                case 'text-decoration':\n                    $val = explode(' ', $val);\n                    $this->value['font-underline']   = (in_array('underline', $val));\n                    $this->value['font-overline']    = (in_array('overline', $val));\n                    $this->value['font-linethrough'] = (in_array('line-through', $val));\n                    break;\n\n                case 'text-indent':\n                    $this->value['text-indent'] = $this->convertToMM($val);\n                    break;\n\n                case 'text-transform':\n                    if (!in_array($val, array('none', 'capitalize', 'uppercase', 'lowercase'))) $val = 'none';\n                    $this->value['text-transform']  = $val;\n                    break;\n\n                case 'font-size':\n                    $val = $this->convertToMM($val, $this->value['font-size']);\n                    if ($val) $this->value['font-size'] = $val;\n                    break;\n\n                case 'color':\n                    $res = null;\n                    $this->value['color'] = $this->convertToColor($val, $res);\n                    if ($tagName=='hr') {\n                        $this->value['border']['l']['color'] = $this->value['color'];\n                        $this->value['border']['t']['color'] = $this->value['color'];\n                        $this->value['border']['r']['color'] = $this->value['color'];\n                        $this->value['border']['b']['color'] = $this->value['color'];\n                    }\n                    break;\n\n                case 'text-align':\n                    $val = strtolower($val);\n                    if (!in_array($val, array('left', 'right', 'center', 'justify', 'li_right'))) $val = 'left';\n                    $this->value['text-align'] = $val;\n                    break;\n\n                case 'vertical-align':\n                    $this->value['vertical-align'] = $val;\n                    break;\n\n                case 'width':\n                    $this->value['width'] = $this->convertToMM($val, $this->getLastWidth());\n                    if ($this->value['width'] && substr($val, -1)=='%') $correctWidth=true;\n                    $noWidth = false;\n                    break;\n\n                case 'height':\n                    $this->value['height'] = $this->convertToMM($val, $this->getLastHeight());\n                    break;\n\n                case 'line-height':\n                    if (preg_match('/^[0-9\\.]+$/isU', $val)) $val = floor($val*100).'%';\n                    $this->value['line-height'] = $val;\n                    break;\n\n                case 'rotate':\n                    if (!in_array($val, array(0, -90, 90, 180, 270, -180, -270))) $val = null;\n                    if ($val<0) $val+= 360;\n                    $this->value['rotate'] = $val;\n                    break;\n\n                case 'overflow':\n                    if (!in_array($val, array('visible', 'hidden'))) $val = 'visible';\n                    $this->value['overflow'] = $val;\n                    break;\n\n                case 'padding':\n                    $val = explode(' ', $val);\n                    foreach ($val as $k => $v) {\n                        $v = trim($v);\n                        if ($v!='') {\n                            $val[$k] = $v;\n                        } else {\n                            unset($val[$k]);\n                        }\n                    }\n                    $val = array_values($val);\n                    $this->_duplicateBorder($val);\n                    $this->value['padding']['t'] = $this->convertToMM($val[0], 0);\n                    $this->value['padding']['r'] = $this->convertToMM($val[1], 0);\n                    $this->value['padding']['b'] = $this->convertToMM($val[2], 0);\n                    $this->value['padding']['l'] = $this->convertToMM($val[3], 0);\n                    break;\n\n                case 'padding-top':\n                    $this->value['padding']['t'] = $this->convertToMM($val, 0);\n                    break;\n\n                case 'padding-right':\n                    $this->value['padding']['r'] = $this->convertToMM($val, 0);\n                    break;\n\n                case 'padding-bottom':\n                    $this->value['padding']['b'] = $this->convertToMM($val, 0);\n                    break;\n\n                case 'padding-left':\n                    $this->value['padding']['l'] = $this->convertToMM($val, 0);\n                    break;\n\n                case 'margin':\n                    if ($val=='auto') {\n                        $this->value['margin-auto'] = true;\n                        break;\n                    }\n                    $val = explode(' ', $val);\n                    foreach ($val as $k => $v) {\n                        $v = trim($v);\n                        if ($v!='') {\n                            $val[$k] = $v;\n                        } else {\n                            unset($val[$k]);\n                        }\n                    }\n                    $val = array_values($val);\n                    $this->_duplicateBorder($val);\n                    $this->value['margin']['t'] = $this->convertToMM($val[0], 0);\n                    $this->value['margin']['r'] = $this->convertToMM($val[1], 0);\n                    $this->value['margin']['b'] = $this->convertToMM($val[2], 0);\n                    $this->value['margin']['l'] = $this->convertToMM($val[3], 0);\n                    break;\n\n                case 'margin-top':\n                    $this->value['margin']['t'] = $this->convertToMM($val, 0);\n                    break;\n\n                case 'margin-right':\n                    $this->value['margin']['r'] = $this->convertToMM($val, 0);\n                    break;\n\n                case 'margin-bottom':\n                    $this->value['margin']['b'] = $this->convertToMM($val, 0);\n                    break;\n\n                case 'margin-left':\n                    $this->value['margin']['l'] = $this->convertToMM($val, 0);\n                    break;\n\n                case 'border':\n                    $val = $this->readBorder($val);\n                    $this->value['border']['t'] = $val;\n                    $this->value['border']['r'] = $val;\n                    $this->value['border']['b'] = $val;\n                    $this->value['border']['l'] = $val;\n                    break;\n\n                case 'border-style':\n                    $val = explode(' ', $val);\n                    foreach ($val as $valK => $valV) {\n                        if (!in_array($valV, array('solid', 'dotted', 'dashed'))) {\n                            $val[$valK] = null;\n                        }\n                    }\n                    $this->_duplicateBorder($val);\n                    if ($val[0]) $this->value['border']['t']['type'] = $val[0];\n                    if ($val[1]) $this->value['border']['r']['type'] = $val[1];\n                    if ($val[2]) $this->value['border']['b']['type'] = $val[2];\n                    if ($val[3]) $this->value['border']['l']['type'] = $val[3];\n                    break;\n\n                case 'border-top-style':\n                    if (in_array($val, array('solid', 'dotted', 'dashed'))) {\n                        $this->value['border']['t']['type'] = $val;\n                    }\n                    break;\n\n                case 'border-right-style':\n                    if (in_array($val, array('solid', 'dotted', 'dashed'))) {\n                        $this->value['border']['r']['type'] = $val;\n                    }\n                    break;\n\n                case 'border-bottom-style':\n                    if (in_array($val, array('solid', 'dotted', 'dashed'))) {\n                        $this->value['border']['b']['type'] = $val;\n                    }\n                    break;\n\n                case 'border-left-style':\n                    if (in_array($val, array('solid', 'dotted', 'dashed')))\n                        $this->value['border']['l']['type'] = $val;\n                    break;\n\n                case 'border-color':\n                    $res = false;\n                    $val = preg_replace('/,[\\s]+/', ',', $val);\n                    $val = explode(' ', $val);\n                    foreach ($val as $valK => $valV) {\n                            $val[$valK] = $this->convertToColor($valV, $res);\n                            if (!$res) {\n                                $val[$valK] = null;\n                            }\n                    }\n                    $this->_duplicateBorder($val);\n                    if (is_array($val[0])) $this->value['border']['t']['color'] = $val[0];\n                    if (is_array($val[1])) $this->value['border']['r']['color'] = $val[1];\n                    if (is_array($val[2])) $this->value['border']['b']['color'] = $val[2];\n                    if (is_array($val[3])) $this->value['border']['l']['color'] = $val[3];\n\n                    break;\n\n                case 'border-top-color':\n                    $res = false;\n                    $val = $this->convertToColor($val, $res);\n                    if ($res) $this->value['border']['t']['color'] = $val;\n                    break;\n\n                case 'border-right-color':\n                    $res = false;\n                    $val = $this->convertToColor($val, $res);\n                    if ($res) $this->value['border']['r']['color'] = $val;\n                    break;\n\n                case 'border-bottom-color':\n                    $res = false;\n                    $val = $this->convertToColor($val, $res);\n                    if ($res) $this->value['border']['b']['color'] = $val;\n                    break;\n\n                case 'border-left-color':\n                    $res = false;\n                    $val = $this->convertToColor($val, $res);\n                    if ($res) $this->value['border']['l']['color'] = $val;\n                    break;\n\n                case 'border-width':\n                    $val = explode(' ', $val);\n                    foreach ($val as $valK => $valV) {\n                            $val[$valK] = $this->convertToMM($valV, 0);\n                    }\n                    $this->_duplicateBorder($val);\n                    if ($val[0]) $this->value['border']['t']['width'] = $val[0];\n                    if ($val[1]) $this->value['border']['r']['width'] = $val[1];\n                    if ($val[2]) $this->value['border']['b']['width'] = $val[2];\n                    if ($val[3]) $this->value['border']['l']['width'] = $val[3];\n                    break;\n\n                case 'border-top-width':\n                    $val = $this->convertToMM($val, 0);\n                    if ($val) $this->value['border']['t']['width'] = $val;\n                    break;\n\n                case 'border-right-width':\n                    $val = $this->convertToMM($val, 0);\n                    if ($val) $this->value['border']['r']['width'] = $val;\n                    break;\n\n                case 'border-bottom-width':\n                    $val = $this->convertToMM($val, 0);\n                    if ($val) $this->value['border']['b']['width'] = $val;\n                    break;\n\n                case 'border-left-width':\n                    $val = $this->convertToMM($val, 0);\n                    if ($val) $this->value['border']['l']['width'] = $val;\n                    break;\n\n                case 'border-collapse':\n                    if ($tagName=='table') $this->value['border']['collapse'] = ($val=='collapse');\n                    break;\n\n                case 'border-radius':\n                    $val = explode('/', $val);\n                    if (count($val)>2) {\n                        break;\n                    }\n                    $valH = $this->convertToRadius(trim($val[0]));\n                    if (count($valH)<1 || count($valH)>4) {\n                        break;\n                    }\n                    if (!isset($valH[1])) $valH[1] = $valH[0];\n                    if (!isset($valH[2])) $valH = array($valH[0], $valH[0], $valH[1], $valH[1]);\n                    if (!isset($valH[3])) $valH[3] = $valH[1];\n                    if (isset($val[1])) {\n                        $valV = $this->convertToRadius(trim($val[1]));\n                        if (count($valV)<1 || count($valV)>4) {\n                            break;\n                        }\n                        if (!isset($valV[1])) $valV[1] = $valV[0];\n                        if (!isset($valV[2])) $valV = array($valV[0], $valV[0], $valV[1], $valV[1]);\n                        if (!isset($valV[3])) $valV[3] = $valV[1];\n                    } else {\n                        $valV = $valH;\n                    }\n                    $this->value['border']['radius'] = array(\n                                'tl' => array($valH[0], $valV[0]),\n                                'tr' => array($valH[1], $valV[1]),\n                                'br' => array($valH[2], $valV[2]),\n                                'bl' => array($valH[3], $valV[3])\n                            );\n                    break;\n\n                case 'border-top-left-radius':\n                    $val = $this->convertToRadius($val);\n                    if (count($val)<1 || count($val)>2) {\n                        break;\n                    }\n                    $this->value['border']['radius']['tl'] = array($val[0], isset($val[1]) ? $val[1] : $val[0]);\n                    break;\n\n                case 'border-top-right-radius':\n                    $val = $this->convertToRadius($val);\n                    if (count($val)<1 || count($val)>2) {\n                        break;\n                    }\n                    $this->value['border']['radius']['tr'] = array($val[0], isset($val[1]) ? $val[1] : $val[0]);\n                    break;\n\n                case 'border-bottom-right-radius':\n                    $val = $this->convertToRadius($val);\n                    if (count($val)<1 || count($val)>2) {\n                        break;\n                    }\n                    $this->value['border']['radius']['br'] = array($val[0], isset($val[1]) ? $val[1] : $val[0]);\n                    break;\n\n                case 'border-bottom-left-radius':\n                    $val = $this->convertToRadius($val);\n                    if (count($val)<1 || count($val)>2) {\n                        break;\n                    }\n                    $this->value['border']['radius']['bl'] = array($val[0], isset($val[1]) ? $val[1] : $val[0]);\n                    break;\n\n                case 'border-top':\n                    $this->value['border']['t'] = $this->readBorder($val);\n                    break;\n\n                case 'border-right':\n                    $this->value['border']['r'] = $this->readBorder($val);\n                    break;\n\n                case 'border-bottom':\n                    $this->value['border']['b'] = $this->readBorder($val);\n                    break;\n\n                case 'border-left':\n                    $this->value['border']['l'] = $this->readBorder($val);\n                    break;\n\n                case 'background-color':\n                    $this->value['background']['color'] = $this->convertBackgroundColor($val);\n                    break;\n\n                case 'background-image':\n                    $this->value['background']['image'] = $this->convertBackgroundImage($val);\n                    break;\n\n                case 'background-position':\n                    $res = null;\n                    $this->value['background']['position'] = $this->convertBackgroundPosition($val, $res);\n                    break;\n\n                case 'background-repeat':\n                    $this->value['background']['repeat'] = $this->convertBackgroundRepeat($val);\n                    break;\n\n                case 'background':\n                    $this->convertBackground($val, $this->value['background']);\n                    break;\n\n                case 'position':\n                    if ($val=='absolute')       $this->value['position'] = 'absolute';\n                    else if ($val=='relative')  $this->value['position'] = 'relative';\n                    else                        $this->value['position'] = null;\n                    break;\n\n                case 'float':\n                    if ($val=='left')           $this->value['float'] = 'left';\n                    else if ($val=='right')     $this->value['float'] = 'right';\n                    else                        $this->value['float'] = null;\n                    break;\n\n                case 'display':\n                    if ($val=='inline')         $this->value['display'] = 'inline';\n                    else if ($val=='block')     $this->value['display'] = 'block';\n                    else if ($val=='none')      $this->value['display'] = 'none';\n                    else                        $this->value['display'] = null;\n                    break;\n\n                case 'top':\n                case 'bottom':\n                case 'left':\n                case 'right':\n                    $this->value[$nom] = $val;\n                    break;\n\n                case 'list-style':\n                case 'list-style-type':\n                case 'list-style-image':\n                    if ($nom=='list-style') $nom = 'list-style-type';\n                    $this->value[$nom] = $val;\n                    break;\n\n                default:\n                    break;\n            }\n        }\n\n        $return = true;\n\n        // only for P tag\n        if ($this->value['margin']['t']===null) $this->value['margin']['t'] = $this->value['font-size'];\n        if ($this->value['margin']['b']===null) $this->value['margin']['b'] = $this->value['font-size'];\n\n        // force the text align to left, if asked by html2pdf\n        if ($this->_onlyLeft) $this->value['text-align'] = 'left';\n\n        // correction on the width (quick box)\n        if ($noWidth && in_array($tagName, array('div', 'blockquote', 'fieldset')) && $this->value['position']!='absolute') {\n            $this->value['width'] = $this->getLastWidth();\n            $this->value['width']-= $this->value['margin']['l'] + $this->value['margin']['r'];\n        } else {\n            if ($correctWidth) {\n                if (!in_array($tagName, array('table', 'div', 'blockquote', 'fieldset', 'hr'))) {\n                    $this->value['width']-= $this->value['padding']['l'] + $this->value['padding']['r'];\n                    $this->value['width']-= $this->value['border']['l']['width'] + $this->value['border']['r']['width'];\n                }\n                if (in_array($tagName, array('th', 'td'))) {\n                    $this->value['width']-= $this->convertToMM(isset($param['cellspacing']) ? $param['cellspacing'] : '2px');\n                    $return = false;\n                }\n                if ($this->value['width']<0) $this->value['width']=0;\n            } else {\n                if ($this->value['width']) {\n                    if ($this->value['border']['l']['width']) $this->value['width'] += $this->value['border']['l']['width'];\n                    if ($this->value['border']['r']['width']) $this->value['width'] += $this->value['border']['r']['width'];\n                    if ($this->value['padding']['l'])         $this->value['width'] += $this->value['padding']['l'];\n                    if ($this->value['padding']['r'])         $this->value['width'] += $this->value['padding']['r'];\n                }\n            }\n        }\n        if ($this->value['height']) {\n            if ($this->value['border']['b']['width']) $this->value['height'] += $this->value['border']['b']['width'];\n            if ($this->value['border']['t']['width']) $this->value['height'] += $this->value['border']['t']['width'];\n            if ($this->value['padding']['b'])         $this->value['height'] += $this->value['padding']['b'];\n            if ($this->value['padding']['t'])         $this->value['height'] += $this->value['padding']['t'];\n        }\n\n        if ($this->value['top']!=null)      $this->value['top']     = $this->convertToMM($this->value['top'], $this->getLastHeight(true));\n        if ($this->value['bottom']!=null)   $this->value['bottom']  = $this->convertToMM($this->value['bottom'], $this->getLastHeight(true));\n        if ($this->value['left']!=null)     $this->value['left']    = $this->convertToMM($this->value['left'], $this->getLastWidth(true));\n        if ($this->value['right']!=null)    $this->value['right']   = $this->convertToMM($this->value['right'], $this->getLastWidth(true));\n\n        if ($this->value['top'] && $this->value['bottom'] && $this->value['height'])    $this->value['bottom']  = null;\n        if ($this->value['left'] && $this->value['right'] && $this->value['width'])     $this->value['right']   = null;\n\n        return $return;\n    }\n\n     /**\n     * get the height of the current line\n     *\n     * @access public\n     * @return float $height in mm\n     */\n    public function getLineHeight()\n    {\n        $val = $this->value['line-height'];\n        if ($val=='normal') $val = '108%';\n        return $this->convertToMM($val, $this->value['font-size']);\n    }\n\n     /**\n     * get the width of the parent\n     *\n     * @access public\n     * @param  boolean $mode true => adding padding and border\n     * @return float $width in mm\n     */\n    public function getLastWidth($mode = false)\n    {\n        for ($k=count($this->table)-1; $k>=0; $k--) {\n            if ($this->table[$k]['width']) {\n                $w = $this->table[$k]['width'];\n                if ($mode) {\n                    $w+= $this->table[$k]['border']['l']['width'] + $this->table[$k]['padding']['l'] + 0.02;\n                    $w+= $this->table[$k]['border']['r']['width'] + $this->table[$k]['padding']['r'] + 0.02;\n                }\n                return $w;\n            }\n        }\n        return $this->_pdf->getW() - $this->_pdf->getlMargin() - $this->_pdf->getrMargin();\n    }\n\n     /**\n     * get the height of the parent\n     *\n     * @access public\n     * @param  boolean $mode true => adding padding and border\n     * @return float $height in mm\n     */\n    public function getLastHeight($mode = false)\n    {\n        for ($k=count($this->table)-1; $k>=0; $k--) {\n            if ($this->table[$k]['height']) {\n                $h = $this->table[$k]['height'];\n                if ($mode) {\n                    $h+= $this->table[$k]['border']['t']['width'] + $this->table[$k]['padding']['t'] + 0.02;\n                    $h+= $this->table[$k]['border']['b']['width'] + $this->table[$k]['padding']['b'] + 0.02;\n                }\n                return $h;\n            }\n        }\n        return $this->_pdf->getH() - $this->_pdf->gettMargin() - $this->_pdf->getbMargin();\n    }\n\n    /**\n     * get the value of the float property\n     *\n     * @access public\n     * @return $float left/right\n     */\n    public function getFloat()\n    {\n        if ($this->value['float']=='left')    return 'left';\n        if ($this->value['float']=='right')   return 'right';\n        return null;\n    }\n\n    /**\n     * get the last value for a specific key\n     *\n     * @access public\n     * @param  string $key\n     * @return mixed\n     */\n    public function getLastValue($key)\n    {\n        $nb = count($this->table);\n        if ($nb>0) {\n            return $this->table[$nb-1][$key];\n        } else {\n            return null;\n        }\n    }\n\n    /**\n     * get the last absolute X\n     *\n     * @access protected\n     * @return float $x\n     */\n    protected function _getLastAbsoluteX()\n    {\n        for ($k=count($this->table)-1; $k>=0; $k--) {\n            if ($this->table[$k]['x'] && $this->table[$k]['position']) return $this->table[$k]['x'];\n        }\n        return $this->_pdf->getlMargin();\n    }\n\n    /**\n     * get the last absolute Y\n     *\n     * @access protected\n     * @return float $y\n     */\n    protected function _getLastAbsoluteY()\n    {\n        for ($k=count($this->table)-1; $k>=0; $k--) {\n            if ($this->table[$k]['y'] && $this->table[$k]['position']) return $this->table[$k]['y'];\n        }\n        return $this->_pdf->gettMargin();\n    }\n\n    /**\n     * get the CSS properties of the current tag\n     *\n     * @access protected\n     * @return array $styles\n     */\n    protected function _getFromCSS()\n    {\n        // styles to apply\n        $styles = array();\n\n        // list of the selectors to get in the CSS files\n        $getit  = array();\n\n        // get the list of the selectors of each tags\n        $lst = array();\n        $lst[] = $this->value['id_lst'];\n        for ($i=count($this->table)-1; $i>=0; $i--) {\n            $lst[] = $this->table[$i]['id_lst'];\n        }\n\n        // foreach selectors in the CSS files, verify if it match with the list of selectors\n        foreach ($this->cssKeys as $key => $num) {\n            if ($this->_getReccursiveStyle($key, $lst)) {\n                $getit[$key] = $num;\n            }\n        }\n\n        // if we have selectors\n        if (count($getit)) {\n            // get them, but in the definition order, because of priority\n            asort($getit);\n            foreach ($getit as $key => $val) $styles = array_merge($styles, $this->css[$key]);\n        }\n\n        return $styles;\n    }\n\n    /**\n     * identify if the selector $key match with the list of tag selectors\n     *\n     * @access protected\n     * @param  string   $key CSS selector to analyse\n     * @param  array    $lst list of the selectors of each tags\n     * @param  string   $next next step of parsing the selector\n     * @return boolean\n     */\n    protected function _getReccursiveStyle($key, $lst, $next = null)\n    {\n        // if next step\n        if ($next!==null) {\n            // we remove this step\n            if ($next) $key = trim(substr($key, 0, -strlen($next)));\n            array_shift($lst);\n\n            // if no more step to identify => return false\n            if (!count($lst)) {\n                return false;\n            }\n        }\n\n        // for each selector of the current step\n        foreach ($lst[0] as $name) {\n            // if selector = key => ok\n            if ($key==$name) {\n                return true;\n            }\n\n            // if the end of the key = the selector and the next step is ok => ok\n            if (substr($key, -strlen(' '.$name))==' '.$name && $this->_getReccursiveStyle($key, $lst, $name)) {\n                return true;\n            }\n        }\n\n        // if we are not in the first step, we analyse the sub steps (the pareng tag of the current tag)\n        if ($next!==null && $this->_getReccursiveStyle($key, $lst, '')) {\n            return true;\n        }\n\n        // no corresponding found\n        return false;\n    }\n\n    /**\n     * Analyse a border\n     *\n     * @access  public\n     * @param   string $css css border properties\n     * @return  array  border properties\n     */\n    public function readBorder($css)\n    {\n        // border none\n        $none = array('type' => 'none', 'width' => 0, 'color' => array(0, 0, 0));\n\n        // default value\n        $type  = 'solid';\n        $width = $this->convertToMM('1pt');\n        $color = array(0, 0, 0);\n\n        // clean up the values\n        $css = explode(' ', $css);\n        foreach ($css as $k => $v) {\n            $v = trim($v);\n            if ($v) $css[$k] = $v;\n            else    unset($css[$k]);\n        }\n        $css = array_values($css);\n\n        // read the values\n        $res = null;\n        foreach ($css as $value) {\n\n            // if no border => return none\n            if ($value=='none' || $value=='hidden') {\n                return $none;\n            }\n\n            // try to convert the value as a distance\n            $tmp = $this->convertToMM($value);\n\n            // if the convert is ok => it is a width\n            if ($tmp!==null) {\n                $width = $tmp;\n            // else, it could be the type\n            } else if (in_array($value, array('solid', 'dotted', 'dashed', 'double'))) {\n                $type = $value;\n            // else, it could be the color\n            } else {\n                $tmp = $this->convertToColor($value, $res);\n                if ($res) $color = $tmp;\n            }\n        }\n\n        // if no witdh => return none\n        if (!$width) return $none;\n\n        // return the border properties\n        return array('type' => $type, 'width' => $width, 'color' => $color);\n    }\n\n    /**\n     * duplicate the borders if needed\n     *\n     * @access protected\n     * @param  &array $val\n     */\n    protected function _duplicateBorder(&$val)\n    {\n        // 1 value => L => RTB\n        if (count($val)==1) {\n            $val[1] = $val[0];\n            $val[2] = $val[0];\n            $val[3] = $val[0];\n        // 2 values => L => R & T => B\n        } else if (count($val)==2) {\n            $val[2] = $val[0];\n            $val[3] = $val[1];\n        // 3 values => T => B\n        } else if (count($val)==3) {\n            $val[3] = $val[1];\n        }\n    }\n\n    /**\n     * Analyse a background\n     *\n     * @access public\n     * @param  string $css css background properties\n     * @param  &array $value parsed values (by reference, because, ther is a legacy of the parent CSS properties)\n     */\n    public function convertBackground($css, &$value)\n    {\n        // is there a image ?\n        $text = '/url\\(([^)]*)\\)/isU';\n        if (preg_match($text, $css, $match)) {\n            // get the image\n            $value['image'] = $this->convertBackgroundImage($match[0]);\n\n            // remove if from the css properties\n            $css = preg_replace($text, '', $css);\n            $css = preg_replace('/[\\s]+/', ' ', $css);\n        }\n\n        // protect some spaces\n        $css = preg_replace('/,[\\s]+/', ',', $css);\n\n        // explode the values\n        $css = explode(' ', $css);\n\n        // background position to parse\n        $pos = '';\n\n        // foreach value\n        foreach ($css as $val) {\n            // try to parse the value as a color\n            $ok = false;\n            $color = $this->convertToColor($val, $ok);\n\n            // if ok => it is a color\n            if ($ok) {\n                $value['color'] = $color;\n            // else if transparent => no coloàr\n            } else if ($val=='transparent') {\n                $value['color'] = null;\n            // else\n            } else {\n                // try to parse the value as a repeat\n                $repeat = $this->convertBackgroundRepeat($val);\n\n                // if ok => it is repeat\n                if ($repeat) {\n                    $value['repeat'] = $repeat;\n                // else => it could only be a position\n                } else {\n                    $pos.= ($pos ? ' ' : '').$val;\n                }\n            }\n        }\n\n        // if we have a position to parse\n        if ($pos) {\n            // try to read it\n            $pos = $this->convertBackgroundPosition($pos, $ok);\n            if ($ok) $value['position'] = $pos;\n        }\n    }\n\n    /**\n     * parse a background color\n     *\n     * @access public\n     * @param  string $css\n     * @return string $value\n     */\n    public function convertBackgroundColor($css)\n    {\n        $res = null;\n        if ($css=='transparent') return null;\n        else                     return $this->convertToColor($css, $res);\n    }\n\n    /**\n     * parse a background image\n     *\n     * @access public\n     * @param  string $css\n     * @return string $value\n     */\n    public function convertBackgroundImage($css)\n    {\n        if ($css=='none')\n            return null;\n        else if (preg_match('/^url\\(([^)]*)\\)$/isU', $css, $match))\n            return $match[1];\n        else\n            return null;\n    }\n\n    /**\n     * parse a background position\n     *\n     * @access public\n     * @param  string $css\n     * @param  &boolean $res flag if conver is ok or not\n     * @return array ($x, $y)\n     */\n    public function convertBackgroundPosition($css, &$res)\n    {\n        // init the res\n        $res = false;\n\n        // explode the value\n        $css = explode(' ', $css);\n\n        // we must have 2 values. if 0 or >2 : error. if 1 => put center for 2\n        if (count($css)<2) {\n            if (!$css[0]) return null;\n            $css[1] = 'center';\n        }\n        if (count($css)>2) return null;\n\n        // prepare the values\n        $x = 0;\n        $y = 0;\n        $res = true;\n\n        // convert the first value\n        if ($css[0]=='left')        $x = '0%';\n        else if ($css[0]=='center') $x = '50%';\n        else if ($css[0]=='right')  $x = '100%';\n        else if ($css[0]=='top')    $y = '0%';\n        else if ($css[0]=='bottom') $y = '100%';\n        else if (preg_match('/^[-]?[0-9\\.]+%$/isU', $css[0])) $x = $css[0];\n        else if ($this->convertToMM($css[0])) $x = $this->convertToMM($css[0]);\n        else $res = false;\n\n        // convert the second value\n        if ($css[1]=='left')        $x = '0%';\n        else if ($css[1]=='right')  $x = '100%';\n        else if ($css[1]=='top')    $y = '0%';\n        else if ($css[1]=='center') $y = '50%';\n        else if ($css[1]=='bottom') $y = '100%';\n        else if (preg_match('/^[-]?[0-9\\.]+%$/isU', $css[1])) $y = $css[1];\n        else if ($this->convertToMM($css[1])) $y = $this->convertToMM($css[1]);\n        else $res = false;\n\n        // return the values\n        return array($x, $y);\n    }\n\n    /**\n     * parse a background repeat\n     *\n     * @access public\n     * @param  string $css\n     * @return string $value\n     */\n    public function convertBackgroundRepeat($css)\n    {\n        switch($css)\n        {\n            case 'repeat':\n                return array(true, true);\n            case 'repeat-x':\n                return array(true, false);\n            case 'repeat-y':\n                return array(false, true);\n            case 'no-repeat':\n                return array(false, false);\n        }\n        return null;\n    }\n\n     /**\n     * convert a distance to mm\n     *\n     * @access public\n     * @param  string $css distance to convert\n     * @param  float  $old parent distance\n     * @return float  $value\n     */\n    public function convertToMM($css, $old=0.)\n    {\n        $css = trim($css);\n        if (preg_match('/^[0-9\\.\\-]+$/isU', $css))        $css.= 'px';\n        if (preg_match('/^[0-9\\.\\-]+px$/isU', $css))      $css = 25.4/96. * str_replace('px', '', $css);\n        else if (preg_match('/^[0-9\\.\\-]+pt$/isU', $css)) $css = 25.4/72. * str_replace('pt', '', $css);\n        else if (preg_match('/^[0-9\\.\\-]+in$/isU', $css)) $css = 25.4 * str_replace('in', '', $css);\n        else if (preg_match('/^[0-9\\.\\-]+mm$/isU', $css)) $css = 1.*str_replace('mm', '', $css);\n        else if (preg_match('/^[0-9\\.\\-]+%$/isU', $css))  $css = 1.*$old*str_replace('%', '', $css)/100.;\n        else                                              $css = null;\n\n        return $css;\n    }\n\n    /**\n     * convert a css radius\n     *\n     * @access public\n     * @param  string $css\n     * @return float  $value\n     */\n    public function convertToRadius($css)\n    {\n        // explode the value\n        $css = explode(' ', $css);\n\n        foreach ($css as $k => $v) {\n            $v = trim($v);\n            if ($v) {\n                $v = $this->convertToMM($v, 0);\n                if ($v!==null) {\n                    $css[$k] = $v;\n                } else {\n                    unset($css[$k]);\n                }\n            } else {\n                unset($css[$k]);\n            }\n        }\n\n        return array_values($css);\n    }\n\n    /**\n     * convert a css color\n     *\n     * @access public\n     * @param  string $css\n     * @param  &boolean $res\n     * @return array (r,g, b)\n     */\n    public function convertToColor($css, &$res)\n    {\n        // prepare the value\n        $css = trim($css);\n        $res = true;\n\n        // if transparent => return null\n        if (strtolower($css)=='transparent') return array(null, null, null);\n\n        // HTML color\n        if (isset($this->_htmlColor[strtolower($css)])) {\n            $css = $this->_htmlColor[strtolower($css)];\n            $r = floatVal(hexdec(substr($css, 0, 2)));\n            $v = floatVal(hexdec(substr($css, 2, 2)));\n            $b = floatVal(hexdec(substr($css, 4, 2)));\n            return array($r, $v, $b);\n        }\n\n        // like #FFFFFF\n        if (preg_match('/^#[0-9A-Fa-f]{6}$/isU', $css)) {\n            $r = floatVal(hexdec(substr($css, 1, 2)));\n            $v = floatVal(hexdec(substr($css, 3, 2)));\n            $b = floatVal(hexdec(substr($css, 5, 2)));\n            return array($r, $v, $b);\n        }\n\n        // like #FFF\n        if (preg_match('/^#[0-9A-F]{3}$/isU', $css)) {\n            $r = floatVal(hexdec(substr($css, 1, 1).substr($css, 1, 1)));\n            $v = floatVal(hexdec(substr($css, 2, 1).substr($css, 2, 1)));\n            $b = floatVal(hexdec(substr($css, 3, 1).substr($css, 3, 1)));\n            return array($r, $v, $b);\n        }\n\n        // like rgb(100, 100, 100)\n        if (preg_match('/rgb\\([\\s]*([0-9%\\.]+)[\\s]*,[\\s]*([0-9%\\.]+)[\\s]*,[\\s]*([0-9%\\.]+)[\\s]*\\)/isU', $css, $match)) {\n            $r = $this->_convertSubColor($match[1]);\n            $v = $this->_convertSubColor($match[2]);\n            $b = $this->_convertSubColor($match[3]);\n            return array($r*255., $v*255., $b*255.);\n        }\n\n        // like cmyk(100, 100, 100, 100)\n        if (preg_match('/cmyk\\([\\s]*([0-9%\\.]+)[\\s]*,[\\s]*([0-9%\\.]+)[\\s]*,[\\s]*([0-9%\\.]+)[\\s]*,[\\s]*([0-9%\\.]+)[\\s]*\\)/isU', $css, $match)) {\n            $c = $this->_convertSubColor($match[1]);\n            $m = $this->_convertSubColor($match[2]);\n            $y = $this->_convertSubColor($match[3]);\n            $k = $this->_convertSubColor($match[4]);\n            return array($c*100., $m*100., $y*100., $k*100.);\n        }\n\n        $res = false;\n        return array(0., 0., 0.);\n    }\n\n    /**\n     * color value to convert\n     *\n     * @access protected\n     * @param  string $c\n     * @return float $c 0.->1.\n     */\n    protected function _convertSubColor($c)\n    {\n        if (substr($c, -1)=='%') {\n            $c = floatVal(substr($c, 0, -1))/100.;\n        } else {\n            $c = floatVal($c);\n            if ($c>1) $c = $c/255.;\n        }\n\n        return $c;\n    }\n\n    /**\n     * read a css content\n     *\n     * @access protected\n     * @param  &string $code\n     */\n    protected function _analyseStyle(&$code)\n    {\n        // clean the spaces\n        $code = preg_replace('/[\\s]+/', ' ', $code);\n\n        // remove the comments\n        $code = preg_replace('/\\/\\*.*?\\*\\//s', '', $code);\n\n        // split each CSS code \"selector { value }\"\n        preg_match_all('/([^{}]+){([^}]*)}/isU', $code, $match);\n\n        // for each CSS code\n        for ($k=0; $k<count($match[0]); $k++) {\n\n            // selectors\n            $names = strtolower(trim($match[1][$k]));\n\n            // css style\n            $styles = trim($match[2][$k]);\n\n            // explode each value\n            $styles = explode(';', $styles);\n\n            // parse each value\n            $css = array();\n            foreach ($styles as $style) {\n                $tmp = explode(':', $style);\n                if (count($tmp)>1) {\n                    $cod = $tmp[0]; unset($tmp[0]); $tmp = implode(':', $tmp);\n                    $css[trim(strtolower($cod))] = trim($tmp);\n                }\n            }\n\n            // explode the names\n            $names = explode(',', $names);\n\n            // save the values for each names\n            foreach ($names as $name) {\n                // clean the name\n                $name = trim($name);\n\n                // if a selector with somethink lige :hover => continue\n                if (strpos($name, ':')!==false) continue;\n\n                // save the value\n                if (!isset($this->css[$name]))\n                    $this->css[$name] = $css;\n                else\n                    $this->css[$name] = array_merge($this->css[$name], $css);\n\n            }\n        }\n\n        // get he list of the keys\n        $this->cssKeys = array_flip(array_keys($this->css));\n    }\n\n    /**\n     * Extract the css files from a html code\n     *\n     * @access public\n     * @param  string   &$html\n     */\n    public function readStyle(&$html)\n    {\n        // the CSS content\n        $style = ' ';\n\n        // extract the link tags, and remove them in the html code\n        preg_match_all('/<link([^>]*)>/isU', $html, $match);\n        $html = preg_replace('/<link[^>]*>/isU', '', $html);\n        $html = preg_replace('/<\\/link[^>]*>/isU', '', $html);\n\n        // analyse each link tag\n        foreach ($match[1] as $code) {\n            $tmp = array();\n\n            // read the attributes name=value\n            $prop = '([a-zA-Z0-9_]+)=([^\"\\'\\s>]+)';\n            preg_match_all('/'.$prop.'/is', $code, $match);\n            for ($k=0; $k<count($match[0]); $k++) {\n                $tmp[trim(strtolower($match[1][$k]))] = trim($match[2][$k]);\n            }\n\n            // read the attributes name=\"value\"\n            $prop = '([a-zA-Z0-9_]+)=[\"]([^\"]*)[\"]';\n            preg_match_all('/'.$prop.'/is', $code, $match);\n            for ($k=0; $k<count($match[0]); $k++) {\n                $tmp[trim(strtolower($match[1][$k]))] = trim($match[2][$k]);\n            }\n\n            // read the attributes name='value'\n            $prop = \"([a-zA-Z0-9_]+)=[']([^']*)[']\";\n            preg_match_all('/'.$prop.'/is', $code, $match);\n            for ($k=0; $k<count($match[0]); $k++) {\n                $tmp[trim(strtolower($match[1][$k]))] = trim($match[2][$k]);\n            }\n\n            // if type text/css => we keep it\n            if (isset($tmp['type']) && strtolower($tmp['type'])=='text/css' && isset($tmp['href'])) {\n\n                // get the href\n                $url = $tmp['href'];\n\n                // get the content of the css file\n                $content = @file_get_contents($url);\n\n                // if \"http://\" in the url\n                if (strpos($url, 'http://')!==false) {\n\n                    // get the domain \"http://xxx/\"\n                    $url = str_replace('http://', '', $url);\n                    $url = explode('/', $url);\n                    $urlMain = 'http://'.$url[0].'/';\n\n                    // get the absolute url of the path\n                    $urlSelf = $url; unset($urlSelf[count($urlSelf)-1]); $urlSelf = 'http://'.implode('/', $urlSelf).'/';\n\n                    // adapt the url in the css content\n                    $content = preg_replace('/url\\(([^\\\\\\\\][^)]*)\\)/isU', 'url('.$urlSelf.'$1)', $content);\n                    $content = preg_replace('/url\\((\\\\\\\\[^)]*)\\)/isU', 'url('.$urlMain.'$1)', $content);\n                } else {\n// @TODO correction on url in absolute on a local css content\n                    // $content = preg_replace('/url\\(([^)]*)\\)/isU', 'url('.dirname($url).'/$1)', $content);\n                }\n\n                // add to the CSS content\n                $style.= $content.\"\\n\";\n            }\n        }\n\n        // extract the style tags des tags style, and remove them in the html code\n        preg_match_all('/<style[^>]*>(.*)<\\/style[^>]*>/isU', $html, $match);\n        $html = preg_replace('/<style[^>]*>(.*)<\\/style[^>]*>/isU', '', $html);\n\n        // analyse each style tags\n        foreach ($match[1] as $code) {\n            // add to the CSS content\n            $code = str_replace('<!--', '', $code);\n            $code = str_replace('-->', '', $code);\n            $style.= $code.\"\\n\";\n        }\n\n        //analyse the css content\n        $this->_analyseStyle($style);\n    }\n}"
  },
  {
    "path": "newscoop/include/html2pdf/_class/parsingHtml.class.php",
    "content": "<?php\n/**\n * HTML2PDF Librairy - parsingHtml class\n *\n * HTML => PDF convertor\n * distributed under the LGPL License\n *\n * @author      Laurent MINGUET <webmaster@html2pdf.fr>\n * @version     4.03\n */\n\nclass HTML2PDF_parsingHtml\n{\n    protected    $_html     = '';        // HTML code to parse\n    protected    $_num      = 0;         // table number\n    protected    $_level    = 0;         // table level\n    protected    $_encoding = '';        // encoding\n    public       $code      = array();   // parsed HTML codfe\n\n    const HTML_TAB = '        ';\n\n    /**\n     * main constructor\n     *\n     * @param   string encoding\n     * @access  public\n     */\n    public function __construct($encoding = 'UTF-8')\n    {\n        $this->_num   = 0;\n        $this->_level = array($this->_num);\n        $this->_html  = '';\n        $this->code  = array();\n        $this->setEncoding($encoding);\n    }\n\n    /**\n     * change the encoding\n     *\n     * @param   string encoding\n     * @access  public\n     */\n    public function setEncoding($encoding)\n    {\n        $this->_encoding = $encoding;\n    }\n\n    /**\n     * Define the HTML code to parse\n     *\n     * @param   string HTML code\n     * @access  public\n     */\n    public function setHTML($html)\n    {\n        // remove the HTML in comment\n        $html = preg_replace('/<!--(.*)-->/isU', '', $html);\n\n        // save the HTML code\n        $this->_html = $html;\n    }\n\n    /**\n     * parse the HTML code\n     *\n     * @access public\n     */\n    public function parse()\n    {\n        $parents = array();\n\n        // flag : are we in a <pre> Tag ?\n        $tagPreIn = false;\n\n        // action to use for each line of the content of a <pre> Tag\n        $tagPreBr = array(\n                    'name' => 'br',\n                    'close' => false,\n                    'param' => array(\n                        'style' => array(),\n                        'num'    => 0\n                    )\n                );\n\n        // tag that can be not closed\n        $tagsNotClosed = array(\n            'br', 'hr', 'img', 'col',\n            'input', 'link', 'option',\n            'circle', 'ellipse', 'path', 'rect', 'line', 'polygon', 'polyline'\n        );\n\n        // search the HTML tags\n        $tmp = array();\n        $this->_searchCode($tmp);\n\n        // all the actions to do\n        $actions = array();\n\n        // foreach part of the HTML code\n        foreach ($tmp as $part) {\n            // if it is a tag code\n            if ($part[0]=='code') {\n                // analise the HTML code\n                $res = $this->_analiseCode($part[1]);\n\n                // if it is a real HTML tag\n                if ($res) {\n                    // save the current posistion in the HTML code\n                    $res['html_pos'] = $part[2];\n\n                    // if the tag must be closed\n                    if (!in_array($res['name'], $tagsNotClosed)) {\n                        // if it is a closure tag\n                        if ($res['close']) {\n                            // HTML validation\n                            if (count($parents)<1)\n                                throw new HTML2PDF_exception(3, $res['name'], $this->getHtmlErrorCode($res['html_pos']));\n                            else if ($parents[count($parents)-1]!=$res['name'])\n                                throw new HTML2PDF_exception(4, $parents, $this->getHtmlErrorCode($res['html_pos']));\n                            else\n                                unset($parents[count($parents)-1]);\n                        } else {\n                            // if it is a autoclosed tag\n                            if ($res['autoclose']) {\n                                // save the opened tag\n                                $actions[] = $res;\n\n                                // prepare the closed tag\n                                $res['params'] = array();\n                                $res['close'] = true;\n                            }\n                            // else :add a child for validation\n                            else\n                                $parents[count($parents)] = $res['name'];\n                        }\n\n                        // if it is a <pre> tag (or <code> tag) not auclosed => update the flag\n                        if (($res['name']=='pre' || $res['name']=='code') && !$res['autoclose']) {\n                            $tagPreIn = !$res['close'];\n                        }\n                    }\n\n                    // save the actions to convert\n                    $actions[] = $res;\n                } else { // else (it is not a real HTML tag => we transform it in Texte\n                    $part[0]='txt';\n                }\n            }\n            // if it is text\n            if ($part[0]=='txt') {\n                // if we are not in a <pre> tag\n                if (!$tagPreIn) {\n                    // save the action\n                    $actions[] = array(\n                        'name'    => 'write',\n                        'close'    => false,\n                        'param' => array('txt' => $this->_prepareTxt($part[1])),\n                    );\n                } else { // else (if we are in a <pre> tag)\n                    // prepare the text\n                    $part[1] = str_replace(\"\\r\", '', $part[1]);\n                    $part[1] = explode(\"\\n\", $part[1]);\n\n                    // foreach line of the text\n                    foreach ($part[1] as $k => $txt) {\n                        // transform the line\n                        $txt = str_replace(\"\\t\", self::HTML_TAB, $txt);\n                        $txt = str_replace(' ', '&nbsp;', $txt);\n\n                        // add a break line\n                        if ($k>0) $actions[] = $tagPreBr;\n\n                        // save the action\n                        $actions[] = array(\n                            'name'    => 'write',\n                            'close'    => false,\n                            'param' => array('txt' => $this->_prepareTxt($txt, false)),\n                        );\n                    }\n                }\n            }\n        }\n\n        // for each indentified action, we have to clean up the begin and the end of the texte\n        // based on tags that surround it\n\n        // list of the tags to clean\n        $tagsToClean = array(\n            'page', 'page_header', 'page_footer', 'form',\n            'table', 'thead', 'tfoot', 'tr', 'td', 'th', 'br',\n            'div', 'hr', 'p', 'ul', 'ol', 'li',\n            'h1', 'h2', 'h3', 'h4', 'h5', 'h6',\n            'bookmark', 'fieldset', 'legend',\n            'draw', 'circle', 'ellipse', 'path', 'rect', 'line', 'g', 'polygon', 'polyline',\n            'option'\n        );\n\n        // foreach action\n        $nb = count($actions);\n        for ($k=0; $k<$nb; $k++) {\n            // if it is a Text\n            if ($actions[$k]['name']=='write') {\n                // if the tag before the text is a tag to clean => ltrim on the text\n                if ($k>0 && in_array($actions[$k-1]['name'], $tagsToClean))\n                    $actions[$k]['param']['txt'] = ltrim($actions[$k]['param']['txt']);\n\n                // if the tag after the text is a tag to clean => rtrim on the text\n                if ($k<$nb-1 && in_array($actions[$k+1]['name'], $tagsToClean))\n                    $actions[$k]['param']['txt'] = rtrim($actions[$k]['param']['txt']);\n\n                // if the text is empty => remove the action\n                if (!strlen($actions[$k]['param']['txt']))\n                    unset($actions[$k]);\n            }\n        }\n\n        // if we are not on the level 0 => HTML validator ERROR\n        if (count($parents)) throw new HTML2PDF_exception(5, $parents);\n\n        // save the actions to do\n        $this->code = array_values($actions);\n    }\n\n    /**\n     * prepare the text\n     *\n     * @param   string texte\n     * @param   boolean true => replace multiple space+\\t+\\r+\\n by a single space\n     * @return  string texte\n     * @access  protected\n     */\n    protected function _prepareTxt($txt, $spaces = true)\n    {\n        if ($spaces) $txt = preg_replace('/\\s+/is', ' ', $txt);\n        $txt = str_replace('&euro;', '€', $txt);\n        $txt = html_entity_decode($txt, ENT_QUOTES, $this->_encoding);\n        return $txt;\n    }\n\n    /**\n     * parse the HTML code\n     *\n     * @param    &array    array's result\n     * @return   null\n     */\n    protected function _searchCode(&$tmp)\n    {\n        // initialise the array\n        $tmp = array();\n\n        // regexp to separate the tags from the texts\n        $reg = '/(<[^>]+>)|([^<]+)+/isU';\n\n        // last match found\n        $str = '';\n        $offset = 0;\n\n        // As it finds a match\n        while (preg_match($reg, $this->_html, $parse, PREG_OFFSET_CAPTURE, $offset)) {\n            // if it is a tag\n            if ($parse[1][0]) {\n                // save the previous text if it exists\n                if ($str!=='')    $tmp[] = array('txt', $str);\n\n                // save the tag, with the offset\n                $tmp[] = array('code', trim($parse[1][0]), $offset);\n\n                // init the current text\n                $str = '';\n            } else { // else (if it is a text)\n                // add the new text to the current text\n                $str.= $parse[2][0];\n            }\n\n            // Update offset to the end of the match\n            $offset = $parse[0][1] + strlen($parse[0][0]);\n            unset($parse);\n        }\n        // if a text is present in the end, we save it\n        if ($str!='') $tmp[] = array('txt', $str);\n        unset($str);\n    }\n\n    /**\n     * analise a HTML tag\n     *\n     * @param   string   HTML code to analise\n     * @return  array    corresponding action\n     */\n    protected function _analiseCode($code)\n    {\n        // name of the tag, opening, closure, autoclosure\n        $tag = '<([\\/]{0,1})([_a-z0-9]+)([\\/>\\s]+)';\n        if (!preg_match('/'.$tag.'/isU', $code, $match)) return null;\n        $close     = ($match[1]=='/' ? true : false);\n        $autoclose = preg_match('/\\/>$/isU', $code);\n        $name      = strtolower($match[2]);\n\n        // required parameters (depends on the tag name)\n        $param    = array();\n        $param['style'] = '';\n        if ($name=='img') {\n            $param['alt'] = '';\n            $param['src'] = '';\n        }\n        if ($name=='a') {\n            $param['href'] = '';\n        }\n\n        // read the parameters : nom=valeur\n        $prop = '([a-zA-Z0-9_]+)=([^\"\\'\\s>]+)';\n        preg_match_all('/'.$prop.'/is', $code, $match);\n        for($k=0; $k<count($match[0]); $k++)\n            $param[trim(strtolower($match[1][$k]))] = trim($match[2][$k]);\n\n        // read the parameters : nom=\"valeur\"\n        $prop = '([a-zA-Z0-9_]+)=[\"]([^\"]*)[\"]';\n        preg_match_all('/'.$prop.'/is', $code, $match);\n        for($k=0; $k<count($match[0]); $k++)\n            $param[trim(strtolower($match[1][$k]))] = trim($match[2][$k]);\n\n        // read the parameters : nom='valeur'\n        $prop = \"([a-zA-Z0-9_]+)=[']([^']*)[']\";\n        preg_match_all('/'.$prop.'/is', $code, $match);\n        for($k=0; $k<count($match[0]); $k++)\n            $param[trim(strtolower($match[1][$k]))] = trim($match[2][$k]);\n\n        // compliance of each parameter\n        $color  = \"#000000\";\n        $border = null;\n        foreach ($param as $key => $val) {\n            $key = strtolower($key);\n            switch($key)\n            {\n                case 'width':\n                    unset($param[$key]);\n                    $param['style'] .= 'width: '.$val.'px; ';\n                    break;\n\n                case 'align':\n                    if ($name==='img') {\n                        unset($param[$key]);\n                        $param['style'] .= 'float: '.$val.'; ';\n                    } elseif ($name!=='table') {\n                        unset($param[$key]);\n                        $param['style'] .= 'text-align: '.$val.'; ';\n                    }\n                    break;\n\n                case 'valign':\n                    unset($param[$key]);\n                    $param['style'] .= 'vertical-align: '.$val.'; ';\n                    break;\n\n                case 'height':\n                    unset($param[$key]);\n                    $param['style'] .= 'height: '.$val.'px; ';\n                    break;\n\n                case 'bgcolor':\n                    unset($param[$key]);\n                    $param['style'] .= 'background: '.$val.'; ';\n                    break;\n\n                case 'bordercolor':\n                    unset($param[$key]);\n                    $color = $val;\n                    break;\n\n                case 'border':\n                    unset($param[$key]);\n                    if (preg_match('/^[0-9]+$/isU', $val)) $val = $val.'px';\n                    $border = $val;\n                    break;\n\n                case 'cellpadding':\n                case 'cellspacing':\n                    if (preg_match('/^([0-9]+)$/isU', $val)) $param[$key] = $val.'px';\n                    break;\n\n                case 'colspan':\n                case 'rowspan':\n                    $val = preg_replace('/[^0-9]/isU', '', $val);\n                    if (!$val) $val = 1;\n                    $param[$key] = $val;\n                    break;\n            }\n        }\n\n        // compliance of the border\n        if ($border!==null) {\n            if ($border)    $border = 'border: solid '.$border.' '.$color;\n            else            $border = 'border: none';\n\n            $param['style'] .= $border.'; ';\n            $param['border'] = $border;\n        }\n\n        // reading styles: decomposition and standardization\n        $styles = explode(';', $param['style']);\n        $param['style'] = array();\n        foreach ($styles as $style) {\n            $tmp = explode(':', $style);\n            if (count($tmp)>1) {\n                $cod = $tmp[0];\n                unset($tmp[0]);\n                $tmp = implode(':', $tmp);\n                $param['style'][trim(strtolower($cod))] = preg_replace('/[\\s]+/isU', ' ', trim($tmp));\n            }\n        }\n\n        // determining the level of table opening, with an added level\n        if (in_array($name, array('ul', 'ol', 'table')) && !$close) {\n            $this->_num++;\n            $this->_level[count($this->_level)] = $this->_num;\n        }\n\n        // get the level of the table containing the element\n        if (!isset($param['num'])) {\n            $param['num'] = $this->_level[count($this->_level)-1];\n        }\n\n        // for closures table: remove a level\n        if (in_array($name, array('ul', 'ol', 'table')) && $close) {\n            unset($this->_level[count($this->_level)-1]);\n        }\n\n        // prepare the parameters\n        if (isset($param['value']))  $param['value']  = $this->_prepareTxt($param['value']);\n        if (isset($param['alt']))    $param['alt']    = $this->_prepareTxt($param['alt']);\n        if (isset($param['title']))  $param['title']  = $this->_prepareTxt($param['title']);\n        if (isset($param['class']))  $param['class']  = $this->_prepareTxt($param['class']);\n\n        // return the new action to do\n        return array('name' => $name, 'close' => $close ? 1 : 0, 'autoclose' => $autoclose, 'param' => $param);\n    }\n\n    /**\n     * get a full level of HTML, between an opening and closing corresponding\n     *\n     * @param   integer key\n     * @return  array   actions\n     */\n    public function getLevel($k)\n    {\n        // if the code does not exist => return empty\n        if (!isset($this->code[$k])) return array();\n\n        // the tag to detect\n        $detect = $this->code[$k]['name'];\n\n        // if it is a text => return\n        if ($detect=='write') {\n            return array($this->code[$k]);\n        }\n\n        //\n        $level = 0;      // depth level\n        $end = false;    // end of the search\n        $code = array(); // extract code\n\n        // while it's not ended\n        while (!$end) {\n            // current action\n            $row = $this->code[$k];\n\n            // if 'write' => we add the text\n            if ($row['name']=='write') {\n                $code[] = $row;\n            } else { // else, it is a html tag\n                $not = false; // flag for not taking into account the current tag\n\n                // if it is the searched tag\n                if ($row['name']==$detect) {\n                    // if we are just at the root level => dont take it\n                    if ($level==0) {\n                        $not = true;\n                    }\n\n                    // update the level\n                    $level+= ($row['close'] ? -1 : 1);\n\n                    // if we are now at the root level => it is the end, and dont take it\n                    if ($level==0) {\n                        $not = true;\n                        $end = true;\n                    }\n                }\n\n                // if we can takin into account the current tag => save it\n                if (!$not) {\n                    if (isset($row['style']['text-align'])) unset($row['style']['text-align']);\n                    $code[] = $row;\n                }\n            }\n\n            // it continues as long as there has code to analise\n            if (isset($this->code[$k+1]))\n                $k++;\n            else\n                $end = true;\n        }\n\n        // return the extract\n        return $code;\n    }\n\n    /**\n     * return a part of the HTML code, for error message\n     *\n     * @param   integer position\n     * @param   integer take before\n     * @param   integer take after\n     * @return  string  part of the html code\n     */\n    public function getHtmlErrorCode($pos, $before=30, $after=40)\n    {\n        return substr($this->_html, $pos-$before, $before+$after);\n    }\n}"
  },
  {
    "path": "newscoop/include/html2pdf/_class/tcpdfConfig.php",
    "content": "<?php\n//============================================================+\n// File name   : tcpdf_config.php\n// Begin       : 2004-06-11\n// Last Update : 2009-09-30\n//\n// Description : Configuration file for TCPDF.\n//\n// Author: Nicola Asuni\n//\n// (c) Copyright:\n//               Nicola Asuni\n//               Tecnick.com s.r.l.\n//               Via Della Pace, 11\n//               09044 Quartucciu (CA)\n//               ITALY\n//               www.tecnick.com\n//               info@tecnick.com\n//============================================================+\n\n/**\n * Configuration file for TCPDF.\n * @author Nicola Asuni\n * @copyright 2004-2008 Nicola Asuni - Tecnick.com S.r.l (www.tecnick.com)\n *            Via Della Pace, 11 - 09044 - Quartucciu (CA) - ITALY - www.tecnick.com - info@tecnick.com\n * @package com.tecnick.tcpdf\n * @version 4.0.014\n * @link http://tcpdf.sourceforge.net\n * @license http://www.gnu.org/copyleft/lesser.html LGPL\n * @since 2004-10-27\n */\n\n// If you define the constant K_TCPDF_EXTERNAL_CONFIG, the following settings will be ignored.\n\nif (!defined('K_TCPDF_EXTERNAL_CONFIG')) {\n\n    define('K_TCPDF_EXTERNAL_CONFIG', true);\n\n    // DOCUMENT_ROOT fix for IIS Webserver\n    if ((!isset($_SERVER['DOCUMENT_ROOT'])) OR (empty($_SERVER['DOCUMENT_ROOT']))) {\n        if (isset($_SERVER['SCRIPT_FILENAME'])) {\n            $_SERVER['DOCUMENT_ROOT'] = str_replace(\n                '\\\\',\n                '/',\n                substr($_SERVER['SCRIPT_FILENAME'], 0, 0-strlen($_SERVER['PHP_SELF']))\n            );\n        } elseif (isset($_SERVER['PATH_TRANSLATED'])) {\n            $_SERVER['DOCUMENT_ROOT'] = str_replace(\n                '\\\\',\n                '/',\n                substr(str_replace('\\\\\\\\', '\\\\', $_SERVER['PATH_TRANSLATED']), 0, 0-strlen($_SERVER['PHP_SELF']))\n            );\n        } else {\n            // define here your DOCUMENT_ROOT path if the previous fails\n            $_SERVER['DOCUMENT_ROOT'] = '/var/www';\n        }\n    }\n\n    // Automatic calculation for the following K_PATH_MAIN constant\n    $kPathMain = str_replace('\\\\', '/', dirname(__FILE__));\n    $kPathMain = dirname($kPathMain).'/'; // remove the current directory\n    $kPathMain.= '_tcpdf_'.HTML2PDF_USED_TCPDF_VERSION.'/';\n    define('K_PATH_MAIN', $kPathMain);\n\n    // Automatic calculation for the following K_PATH_URL constant\n    if (isset($_SERVER['HTTP_HOST']) AND (!empty($_SERVER['HTTP_HOST']))) {\n        if (isset($_SERVER['HTTPS']) AND (!empty($_SERVER['HTTPS'])) AND strtolower($_SERVER['HTTPS'])!='off') {\n            $kPathUrl = 'https://';\n        } else {\n            $kPathUrl = 'http://';\n        }\n        $kPathUrl .= $_SERVER['HTTP_HOST'];\n        $kPathUrl .= str_replace('\\\\', '/', substr(K_PATH_MAIN, (strlen($_SERVER['DOCUMENT_ROOT']) - 1)));\n    }\n\n    /**\n     * URL path to tcpdf installation folder (http://localhost/tcpdf/).\n     * By default it is automatically calculated but you can also set it as a fixed string to improve performances.\n     */\n    define('K_PATH_URL', $kPathUrl);\n\n    /**\n     * path for PDF fonts\n     * use K_PATH_MAIN.'fonts/old/' for old non-UTF8 fonts\n     */\n    define('K_PATH_FONTS', K_PATH_MAIN.'fonts/');\n\n    /**\n     * cache directory for temporary files (full path)\n     */\n    define('K_PATH_CACHE', K_PATH_MAIN.'cache/');\n\n    /**\n     * cache directory for temporary files (url path)\n     */\n    define('K_PATH_URL_CACHE', K_PATH_URL.'cache/');\n\n    /**\n     *images directory\n     */\n    define('K_PATH_IMAGES', K_PATH_MAIN.'images/');\n\n    /**\n     * blank image\n     */\n    define('K_BLANK_IMAGE', K_PATH_IMAGES.'_blank.png');\n\n    /**\n     * page format\n     */\n    define('PDF_PAGE_FORMAT', 'A4');\n\n    /**\n     * page orientation (P=portrait, L=landscape)\n     */\n    define('PDF_PAGE_ORIENTATION', 'P');\n\n    /**\n     * document creator\n     */\n    define('PDF_CREATOR', 'HTML2PDF - TCPDF');\n\n    /**\n     * document author\n     */\n    define('PDF_AUTHOR', 'HTML2PDF - TCPDF');\n\n    /**\n     * header title\n     */\n    define('PDF_HEADER_TITLE', null);\n\n    /**\n     * header description string\n     */\n    define('PDF_HEADER_STRING', null);\n\n    /**\n     * image logo\n     */\n    define('PDF_HEADER_LOGO', null);\n\n    /**\n     * header logo image width [mm]\n     */\n    define('PDF_HEADER_LOGO_WIDTH', null);\n\n    /**\n     *  document unit of measure [pt=point, mm=millimeter, cm=centimeter, in=inch]\n     */\n    define('PDF_UNIT', 'mm');\n\n    /**\n     * header margin\n     */\n    define('PDF_MARGIN_HEADER', 0);\n\n    /**\n     * footer margin\n     */\n    define('PDF_MARGIN_FOOTER', 0);\n\n    /**\n     * top margin\n     */\n    define('PDF_MARGIN_TOP', 0);\n\n    /**\n     * bottom margin\n     */\n    define('PDF_MARGIN_BOTTOM', 0);\n\n    /**\n     * left margin\n     */\n    define('PDF_MARGIN_LEFT', 0);\n\n    /**\n     * right margin\n     */\n    define('PDF_MARGIN_RIGHT', 0);\n\n    /**\n     * default main font name\n     */\n    define('PDF_FONT_NAME_MAIN', 'helvetica');\n\n    /**\n     * default main font size\n     */\n    define('PDF_FONT_SIZE_MAIN', 10);\n\n    /**\n     * default data font name\n     */\n    define('PDF_FONT_NAME_DATA', 'helvetica');\n\n    /**\n     * default data font size\n     */\n    define('PDF_FONT_SIZE_DATA', 8);\n\n    /**\n     * default monospaced font name\n     */\n    define('PDF_FONT_MONOSPACED', 'courier');\n\n    /**\n     * ratio used to adjust the conversion of pixels to user units\n     */\n    define('PDF_IMAGE_SCALE_RATIO', 1);\n\n    /**\n     * magnification factor for titles\n     */\n    define('HEAD_MAGNIFICATION', 1);\n\n    /**\n     * height of cell repect font height\n     */\n    define('K_CELL_HEIGHT_RATIO', 1);\n\n    /**\n     * title magnification respect main font size\n     */\n    define('K_TITLE_MAGNIFICATION', 1);\n\n    /**\n     * reduction factor for small font\n     */\n    define('K_SMALL_RATIO', 2/3);\n\n    /**\n     * set to true to enable the special procedure used to avoid the overlappind of symbols on Thai language\n     */\n    define('K_THAI_TOPCHARS', true);\n\n    /**\n     * if true allows to call TCPDF methods using HTML syntax\n     * IMPORTANT: For security reason, disable this feature if you are printing user HTML content.\n     */\n    define('K_TCPDF_CALLS_IN_HTML', false);\n}\n\n//============================================================+\n// END OF FILE\n//============================================================+\n"
  },
  {
    "path": "newscoop/include/html2pdf/_lisez_moi.txt",
    "content": "*******************************************************\n** Ce programme est distribué sous la licence LGPL,  **\n** reportez-vous au fichier _LGPL.txt ou à           **\n** http://www.gnu.org/licenses/lgpl.html             **\n** pour en savoir plus.                              **\n**                                                   **\n**  Copyright 2008-2011 par Laurent Minguet          **\n*******************************************************\n*******************************\n* HTML2PDF v4.03 - 27/05/2011 *\n*******************************\n\nUtilisation :\n------------\n - nécessite au minimum PHP5\n\n - regardez les exemples fournis, et lisez le wiki pour comprendre le fonctionnement.\n\n - il est TRES IMPORTANT de fournir du HTML 4.01 valide au convertisseur,\n   mais seulement ce que contient le <body>\n\n - pour les borders : il est conseillé qu'ils soient au format \"solid 1mm #000000\"\n\n - pour les paddings : ils ne sont applicables qu'aux balises table, th, td, div, li\n\n - Une fonte par défaut peut être précisée,au cas ou la fonte demandée n'existe pas ou si aucune fonte n'est indiquée :\n     $html2pdf->setDefaultFont('Arial');\n\n - la possibilité de protéger vos PDF est présente, CF Exemple 7.\n\n - Certains tests peuvent être activés (true) ou de désactivés(false) :\n     * méthode setTestIsImage      : tester que les images existent bien\n     * méthode setTestTdInOnePage  : tester que le contenu des TDs rentre sur une seule page\n     * méthode setTestIsDeprecated : tester que les anciennes propriétes des balises spécifiques ne sont plus présentes\n\n - Un mode DEBUG permettant de connaitre les ressources utilisées lors de la construction du PDF est présent.\n   Il est activable en rajoutant la commande suivante juste après le constructeur (cf exemple 0):\n      $htmlpdf->setModeDebug();\n\n - Certaines balises spécifiques ont été introduites :\n     * <page></page>  (CF Exemple 7 & wiki)\n         permet de définir le format, l'orientation, les marges left, right, top et bottom, l'image\n         et la couleur de fond d'une page, sa taille et position, le footer.\n         Il est également possible de garder les header et footer des pages précédentes,\n         grâce à l'attribue pageset=\"old\" (CF Exemple 3 & 4 & wiki)\n \n     * <page_header></page_header> (CF Exemple 3 & wiki)\n\n     * <page_footer></page_footer> (CF Exemple 3 & wiki)\n\n     * <nobreak></nobreak> (cf wiki)\n         permet de forcer l'affichage d'une partie sur une même page.\n         Si cette partie ne rentre pas dans le reste de la page, un saut de page est\n         effectué avant.\n \n    * <barcode></barcode>  (CF Exemples 0 et 9 & wiki)\n         permet d'insérer des barcodes dans les pdfs, CF Exemples 0 et 9\n         Les types de codebar possible sont ceux de TCPDF\n         \n     * <qrcode></qrcode> (CF Exemple 13 & wiki)\n         permet d'insérer un codebar à 2 dimensions de type QRcode\n         (QR Code is registered trademark of DENSO WAVE INCORPORATED | http://www.denso-wave.com/qrcode/)\n\n     * <bookmark></bookmark>  (CF Exemples 7 & About & wiki)\n         permet d'insérer des bookmarks dans les pdfs, CF Exemple 7 et About.\n         Il est également possible de créer un index automatiquement en fin de\n         document (cf wiki)\n\n     * propriété css \"rotate\" :\n         valeurs possibles : 0, 90, 180, 270\n         applicable uniquement sur les divs (cf exemple 8)\n\nchange log :\n-----------\n regardez le fichier _changelog.txt\n\nAide et Support :\n----------------\n pour toutes questions et rapport de bug, merci d'utiliser exclusivement le lien de support ci-dessous.\n Je ne répondrai à aucune question en dehors, afin que tout le monde puisse profiter des réponses.\n\nInformations :\n-------------\n Programmeur : Spipu\n      email   : webmaster@html2pdf.fr\n      site    : http://html2pdf.fr/\n      wiki    : http://html2pdf.fr/fr/wiki\n      support : http://html2pdf.fr/fr/forum\n\nRemerciement :\n-------------\n * Olivier Plathey pour avoir conçu FPDF\n * Nicola Asuni pour les modifications qu'il a accepté d'apporter à TCPDF\n * yAronet pour l'hébergement du forum de support\n * toutes les personnes qui m'ont aidé à développer cette librairie, et à traduire les différents textes\n"
  },
  {
    "path": "newscoop/include/html2pdf/_read_me.txt",
    "content": "*********************************************************\n** This program is distributed under the LGPL License, **\n** for more information see file _LGPL.txt or          **\n** http://www.gnu.org/licenses/lgpl.html               **\n**                                                     **\n**  Copyright 2008-2011 by Laurent Minguet             **\n*********************************************************\n*******************************\n* HTML2PDF v4.03 - 2011-05-27 *\n*******************************\n\nHow to use :\n------------\n - You need at least PHP 5\n\n - Look at the examples provided to see how it works.\n\n - It is very important to provide valid HTML 4.01 to the converter,\n   but only what is in the <body>\n\n - for borders: it is advised that they are like \"solid 1mm #000000\"\n\n - for padding, they are applicable only on tags table, th, td, div, li\n\n - A default font can be specified, if the requested font does not exist or if no font is specified:\n     $html2pdf->setDefaultFont('Arial');\n\n - The possibility to protect your PDF is present, CF Example 7.\n\n - Some tests can be enabled (true) or disabled (false) :\n     * setTestIsImage method:      test that images must exist\n     * setTestTdInOnePage method:  test that the contents of TDs fit on one page\n     * setTestIsDeprecated method: test that old properties of specific tags are not used anymore\n\n  - A DEBUG mode to know the resources used is present\n   It is activated by adding the following command just after the contructor (see Example 0):\n      $htmlpdf->setModeDebug();\n\n - Some specific tags have been introduced:\n     * <page></page>  (CF Exemple 7 & wiki)\n       determines the orientation, margins left, right, top and bottom, the background image\n       and the background color of a page, its size and position, the footer.\n       It is also possible to keep the header and footer of the previous pages,\n       through the attribut pageset=\"old\" (see Example 3 & 4 & wiki)\n\n     * <page_header></page_header> (CF Example 3 & wiki)\n\n     * <page_footer></page_footer> (CF Example 3 & wiki)\n\n     * <nobreak></nobreak> (cd wiki)\n         used to force the display of a section on the same page.\n         If this section does not fit into the rest of the page, a page break is done before.\n\n     * <barcode></barcode>  (CF Examples 0 & 9 & wiki)\n         can insert barcodes in pdfs, CF Examples 0 and 9\n         The possible types of codebar are alls of TCPDF\n\n     * <qrcode></qrcode> (CF Example 13 & wiki)\n         can insert QRcode 2D barcodes\n         (QR Code is registered trademark of DENSO WAVE INCORPORATED | http://www.denso-wave.com/qrcode/)\n\n     * <bookmark></bookmark>  (CF Examples 7 & About & wiki)\n         can insert bookmark in pdfs, CF Example 7 and About.\n         It is also possible to automatically create an index at the end of\n         document  (CF Example About & wiki)\n\n     * css property \"rotate\" :\n         values : 0, 90, 180, 270\n         works only on div (cf example 8)\n\nchange log :\n-----------\n see on this page : http://html2pdf.fr/en/download\n\nHelp & Support :\n---------------\n For questions and bug reports, thank you to use only the support link below.\n I will answer to your questions only on it...\n\nInformations :\n-------------\n Programmer : Spipu\n      email    : webmaster@html2pdf.fr\n      web site : http://html2pdf.fr/\n      wiki     : http://html2pdf.fr/en/wiki\n      support  : http://html2pdf.fr/en/forum\n\nThanks :\n-------\n * Olivier Plathey: for have made FPDF\n * Nicola Asuni: for the changes he has agreed to make to TCPDF\n * yAronet: for hosting support forum\n * everyone who helped me to develop this library and to bring the texts\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/2dbarcodes.php",
    "content": "<?php\n//============================================================+\n// File name   : 2dbarcodes.php\n// Begin       : 2009-04-07\n// Last Update : 2010-04-30\n// Version     : 1.0.003\n// License     : GNU LGPL (http://www.gnu.org/copyleft/lesser.html)\n// \t----------------------------------------------------------------------------\n//  Copyright (C) 2008-2009 Nicola Asuni - Tecnick.com S.r.l.\n//\n// \tThis program is free software: you can redistribute it and/or modify\n// \tit under the terms of the GNU Lesser General Public License as published by\n// \tthe Free Software Foundation, either version 2.1 of the License, or\n// \t(at your option) any later version.\n//\n// \tThis program is distributed in the hope that it will be useful,\n// \tbut WITHOUT ANY WARRANTY; without even the implied warranty of\n// \tMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n// \tGNU Lesser General Public License for more details.\n//\n// \tYou should have received a copy of the GNU Lesser General Public License\n// \talong with this program.  If not, see <http://www.gnu.org/licenses/>.\n//\n// \tSee LICENSE.TXT file for more information.\n//  ----------------------------------------------------------------------------\n//\n// Description : PHP class to creates array representations for\n//               2D barcodes to be used with TCPDF.\n//\n// Author: Nicola Asuni\n//\n// (c) Copyright:\n//               Nicola Asuni\n//               Tecnick.com S.r.l.\n//               Via della Pace, 11\n//               09044 Quartucciu (CA)\n//               ITALY\n//               www.tecnick.com\n//               info@tecnick.com\n//============================================================+\n\n/**\n * PHP class to creates array representations for 2D barcodes to be used with TCPDF.\n * @package com.tecnick.tcpdf\n * @abstract Functions for generating string representation of 2D barcodes.\n * @author Nicola Asuni\n * @copyright 2008-2009 Nicola Asuni - Tecnick.com S.r.l (www.tecnick.com) Via Della Pace, 11 - 09044 - Quartucciu (CA) - ITALY - www.tecnick.com - info@tecnick.com\n * @link http://www.tcpdf.org\n * @license http://www.gnu.org/copyleft/lesser.html LGPL\n * @version 1.0.003\n */\n\n\t/**\n\t* PHP class to creates array representations for 2D barcodes to be used with TCPDF (http://www.tcpdf.org).<br>\n\t* @name TCPDFBarcode\n\t* @package com.tecnick.tcpdf\n\t* @version 1.0.003\n\t* @author Nicola Asuni\n\t* @link http://www.tcpdf.org\n\t* @license http://www.gnu.org/copyleft/lesser.html LGPL\n\t*/\nclass TCPDF2DBarcode {\n\n\t/**\n\t * @var array representation of barcode.\n\t * @access protected\n\t */\n\tprotected $barcode_array = false;\n\n\t/**\n\t * This is the class constructor.\n\t * Return an array representations for 2D barcodes:<ul>\n\t * <li>$arrcode['code'] code to be printed on text label</li>\n\t * <li>$arrcode['num_rows'] required number of rows</li>\n\t * <li>$arrcode['num_cols'] required number of columns</li>\n\t * <li>$arrcode['bcode'][$r][$c] value of the cell is $r row and $c column (0 = transparent, 1 = black)</li></ul>\n\t * @param string $code code to print\n \t * @param string $type type of barcode: <ul>li>RAW: raw mode - comma-separad list of array rows</li><li>RAW2: raw mode - array rows are surrounded by square parenthesis.</li><li>QRCODE : QR-CODE Low error correction</li><li>QRCODE,L : QR-CODE Low error correction</li><li>QRCODE,M : QR-CODE Medium error correction</li><li>QRCODE,Q : QR-CODE Better error correction</li><li>QRCODE,H : QR-CODE Best error correction</li></ul>\n\t */\n\tpublic function __construct($code, $type) {\n\t\t$this->setBarcode($code, $type);\n\t}\n\n\t/**\n\t * Return an array representations of barcode.\n \t * @return array\n\t */\n\tpublic function getBarcodeArray() {\n\t\treturn $this->barcode_array;\n\t}\n\n\t/**\n\t * Set the barcode.\n\t * @param string $code code to print\n \t * @param string $type type of barcode: <ul><li>RAW: raw mode - comma-separad list of array rows</li><li>RAW2: raw mode - array rows are surrounded by square parenthesis.</li><li>QRCODE : QR-CODE Low error correction</li><li>QRCODE,L : QR-CODE Low error correction</li><li>QRCODE,M : QR-CODE Medium error correction</li><li>QRCODE,Q : QR-CODE Better error correction</li><li>QRCODE,H : QR-CODE Best error correction</li></ul>\n \t * @return array\n\t */\n\tpublic function setBarcode($code, $type) {\n\t\t$mode = explode(',', $type);\n\t\t$qrtype = strtoupper($mode[0]);\n\t\tswitch ($qrtype) {\n\t\t\tcase 'QRCODE': { // QR-CODE\n\t\t\t\trequire_once(dirname(__FILE__).'/qrcode.php');\n\t\t\t\tif (!isset($mode[1]) OR (!in_array($mode[1],array('L','M','Q','H')))) {\n\t\t\t\t\t$mode[1] = 'L'; // Ddefault: Low error correction\n\t\t\t\t}\n\t\t\t\t$qrcode = new QRcode($code, strtoupper($mode[1]));\n\t\t\t\t$this->barcode_array = $qrcode->getBarcodeArray();\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'RAW':\n\t\t\tcase 'RAW2': { // RAW MODE\n\t\t\t\t// remove spaces\n\t\t\t\t$code = preg_replace('/[\\s]*/si', '', $code);\n\t\t\t\tif (strlen($code) < 3) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tif ($qrtype == 'RAW') {\n\t\t\t\t\t// comma-separated rows\n\t\t\t\t\t$rows = explode(',', $code);\n\t\t\t\t} else {\n\t\t\t\t\t// rows enclosed in square parethesis\n\t\t\t\t\t$code = substr($code, 1, -1);\n\t\t\t\t\t$rows = explode('][', $code);\n\t\t\t\t}\n\t\t\t\t$this->barcode_array['num_rows'] = count($rows);\n\t\t\t\t$this->barcode_array['num_cols'] = strlen($rows[0]);\n\t\t\t\t$this->barcode_array['bcode'] = array();\n\t\t\t\tforeach ($rows as $r) {\n\t\t\t\t\t$this->barcode_array['bcode'][] = str_split($r, 1);\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'TEST': { // TEST MODE\n\t\t\t\t$this->barcode_array['num_rows'] = 5;\n\t\t\t\t$this->barcode_array['num_cols'] = 15;\n\t\t\t\t$this->barcode_array['bcode'] = array(\n\t\t\t\t\tarray(1,1,1,0,1,1,1,0,1,1,1,0,1,1,1),\n\t\t\t\t\tarray(0,1,0,0,1,0,0,0,1,0,0,0,0,1,0),\n\t\t\t\t\tarray(0,1,0,0,1,1,0,0,1,1,1,0,0,1,0),\n\t\t\t\t\tarray(0,1,0,0,1,0,0,0,0,0,1,0,0,1,0),\n\t\t\t\t\tarray(0,1,0,0,1,1,1,0,1,1,1,0,0,1,0));\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tdefault: {\n\t\t\t\t$this->barcode_array = false;\n\t\t\t}\n\t\t}\n\t}\n} // end of class\n\n//============================================================+\n// END OF FILE\n//============================================================+\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/CHANGELOG.TXT",
    "content": "5.0.002 (2010-05-06)\n\t- Bookmark() and related methods were fixed to accept HTML code.\n\t- A problem on HTML links was fixed.\n\n5.0.001 (2010-05-06)\n\t- Protected method _putstream was re-added for backward compatibility.\n\t- The following method were added to display HTML Table Of Content (see example n. 59):\n\t\taddTOCPage(), endTOCPage(), addHTMLTOC().\n\n5.0.000 (2010-05-05)\n\t- Method ImageSVG() was added to embedd SVG images (see example n. 58). Note that not all SVG images are supported.\n\t- Method setRasterizeVectorImages() was added to enable/disable rasterization for vector images via ImageMagick library.\n\t- Method RoundedRectXY() was added.\n\t- Method PieSectorXY() was added.\n\t- Gradient() method is now public and support new features.\n\t- Shading to transparency is now supported.\n\t- Image alignments were fixed.\n\t- Support for dynamic images were improved.\n\t- PDF_IMAGE_SCALE_RATIO has been changed to 1.25 for better compatibility with SVG.\n\t- RAW and RAW2 modes were added to 2D Barcodes (see example n. 50).\n\t- Automatic padding feature was added on barcodes (see examples n. 27 and 50).\n\t- Bug #2995003 \"Reproduced thead bug\" was fixed.\n\t- The Output() method now accepts FI and FD destinations to save the document on server before sending it to the client.\n\t- Ellipse() method was improved and fixed (see page 2 of example n. 12).\n\t\n--------------------------------------------------------------------------------\n\n4.9.018 (2010-04-21)\n\t- Bug item #2990356 \"Current font size not respected with more than two HTML <p>\" was fixed.\n\n4.9.017 (2010-04-21)\n\t- Bug item #2990224 \"Different behaviour for equivalent HTML strings\" was fixed.\n\t- Bug item #2990314 \"Dash is not appearing with SHY character\" was fixed.\n\n4.9.016 (2010-04-20)\n\t- An error on htmlcolors.php was fixed.\n\t- getImageFileType() method was improved.\n\t- GIF images with transparency are now better supported.\n\t- Automatic page orientation was improved.\n\n4.9.015 (2010-04-20)\n\t- A new method copyPage() was added to clone pages (see example n. 44).\n\t- Support for text overline was added.\n\t- Underline and linethrough methods were fixed.\n\t- Bug #2989058 \"SHY character causes unnecessary word-wrapping\" was fixed.\n\n4.9.014 (2010-04-18)\n\t- Bug item #2988845 was fixed.\n\n4.9.013 (2010-04-15)\n\t- Image() and ImageEPS() methods were fixed and improved; $fitonpage parameter was added.\n\n4.9.012 (2010-04-12)\n\t- The hyphenateText() method was added to automatically hyphenate text (see example n. 46).\n\n4.9.011 (2010-04-07)\n\t- Vertical alignments for Cell() method were improved (see example n. 57).\n\n4.9.010 (2010-04-06)\n\t- Signature of Cell() method now includes new parameters for vertical alignment (see example n. 57).\n\t- Text() method was extended to include all Cell() parameters.\n\t- HTML line alignment procedure was changed to fix some bugs.\n\n4.9.009 (2010-04-05)\n\t- Text() method was fixed for backward compatibility.\n\n4.9.008 (2010-04-03)\n\t- Additional line space after table header was removed.\n\t- Support for HTML lists in multicolumn mode was added.\n\t- The method setTextRenderingMode() was added to set text rendering modes (see the example n. 26).\n\t- The following HTML attributes were added to set text rendering modes (see the example n. 26): stroke, strokecolor, fill.\n\n4.9.007 (2010-04-03)\n\t- Font Descent computation was fixed (patch #2981441).\n\n4.9.006 (2010-04-02)\n\t- The constant K_TCPDF_CALLS_IN_HTML was added on configuration file to enable/disable the ability to call TCPDF methods in HTML.\n\t- The usage of tcpdf tag in HTML mode was changed to remove the possible security flaw offered by the eval() function (thanks to Matthias Hecker for spotting this security problem). See the new example n. 49 for further information.\n\n4.9.005 (2010-04-01)\n\t- Bug# 2980354 \"Wrong File attachment description with security\" was fixed.\n\t- Several problems with HTML line alignment were fixed.\n\t- The constant K_THAI_TOPCHAR was added on configuration file to enable/disable the special procedure used to avoid the overlappind of symbols on Thai language.\n\t- A problem with font name directory was fixed.\n\t- A bug on _destroy() method was fixed.\n\n4.9.004 (2010-03-31)\n\t- Patch #979681 \"GetCharWidth - default character width\" was applied (bugfix).\n\n4.9.003 (2010-03-30)\n\t- Problem of first <br /> on multiple columns was fixed.\n\t- HTML line alignment was fixed.\n\t- A QR-code bug was fixed.\n\n4.9.002 (2010-03-29)\n\t- Patch #2978349 \"$ignore_min_height is ignored in function Cell()\" was applied.\n\t- Bug #2978607 \"2D Barcodes are wrong\" was fixed.\n\t- A problem with HTML block tags was fixed.\n\t- Artificial italic for CID-0 fonts was added.\n\t- Several multicolumn bugs were fixed.\n\t- Support for HTML tables on multicolumn was added.\n\n4.9.001 (2010-03-28)\n\t- QR Code minor bug was fixed.\n\t- Multicolumn mode was added (see the new example n. 10).\n\t- The following methods were added: setEqualColumns(), setColumnsArray(), selectColumn().\n\t- Thai diacritics support were changed (note that this is incompatible with html justification).\n\n4.9.000 (2010-03-27)\n\t- QR Code (2D barcode) support was added (see example n. 50).\n\t- The following methods were added to print crop and registration marks (see example n. 56): colorRegistrationBar(), cropMark(), registrationMark().\n\t- Limited support for CSS line-height property was added.\n\t- Gradient method now supports Gray, RGB and CMYK space color.\n\t- Example n. 51 was updated.\n\t- Vertical alignment of font inside cell was fixed.\n\t- Support for multiple Thai diacritics was added.\n\t- Bug item #2974929 \"Duplicate case values\" was fixed.\n\t- Bug item #2976729 \"File attachment not working with security\" was fixed.\n\n--------------------------------------------------------------------------------\n\n4.8.039 (2010-03-20)\n\t- Problems related to custom locale settings were fixed.\n\t- Problems related to HTML on Header and Footer were fixed.\n\n4.8.038 (2010-03-13)\n\t- Various bugs related to page-break in HTML mode were fixed.\n\t- Bug item #2968974 \"Another <thead> pagebreak problem\" was fixed.\n\t- Bug item #2969276 \"justification problem\" was fixed.\n\t- Bug item #2969289 \"bug when using justified text and custom headers\" was fixed.\n\t- Images are now automatically resized to be contained on the page.\n\t- Some HTML line alignments were fixed.\n\t- Signature of AddPage() and SetMargins() methods were changed to include an option to set default page margins.\n\n4.8.037 (2010-03-03)\n\t- Bug item #2962068 was fixed.\n\t- Bug item #2967017 \"Problems with <thead> and pagebreaks\" was fixed.\n\t- Bug item #2967023 \"table header lost with pagebreak\" was fixed.\n\t- Bug item #2967032 \"Header lost with nested tables\" was fixed.\n\n4.8.036 (2010-02-24)\n\t- Automatic page break for HTML images was improved.\n\t- Example 10 was updated.\n\t- Japanese was removed from example 8 because the freeserif font doesn't contain japanese (you can display it using arialunicid0 font).\n\n4.8.035 (2010-02-23)\n\t- Automatic page break for HTML images was added.\n\t- Support for multicolumn HTML was added (example 10 was updated).\n\n4.8.034 (2010-02-17)\n\t- Language files were updated.\n\n4.8.033 (2010-02-12)\n\t- A bug related to protection mode with links was fixed.\n\n4.8.032 (2010-02-04)\n\t- A bug related to $maxh parameter on Write() and MultiCell() was fixed.\n\t- Support for body tag was added.\n\n4.8.031 (2010-01-30)\n\t- Bug item #2941589 \"paragraph justify not working on some non-C locales\" was fixed.\n\n4.8.030 (2010-01-27)\n\t- Some text alignment cases were fixed.\n\n4.8.029 (2010-01-27)\n\t- Bug item #2941057 \"TOC Error in PDF File Output\" was fixed.\n\t- Some text alignment cases were fixed.\n\n4.8.028 (2010-01-26)\n\t- Text alignment for RTL mode was fixed.\n\n4.8.027 (2010-01-25)\n\t- Bug item #2938412 \"Table related problems - thead, nobr, table width\" was fixed.\n\n4.8.026 (2010-01-19)\n\t- The misspelled word \"lenght\" was replaced with \"length\" in some variables and comments.\n\n4.8.025 (2010-01-18)\n\t- addExtGState() method was improved to reuse existing ExtGState objects.\n\n4.8.024 (2010-01-15)\n\t- Justification mode for HTML was fixed (Bug item #2932470).\n\n4.8.023 (2010-01-15)\n\t- Bug item #2932470 \"Some HTML entities breaks justification\" was fixed.\n\n4.8.022 (2010-01-14)\n\t- Source code documentation was fixed.\n\n4.8.021 (2010-01-03)\n\t- A Bug relative to Table Of Content index was fixed.\n\n4.8.020 (2009-12-21)\n\t- Bug item #2918545 \"Display problem of the first row of a table with larger font\" was fixed.\n\t- A Bug relative to table rowspan mode was fixed.\n\n4.8.019 (2009-12-16)\n\t- Bug item #2915684 \"Image size\" was fixed.\n\t- Bug item #2914995 \"Image jpeg quality\" was fixed.\n\t- The signature of the Image() method was changed (check the documentation for the $resize parameter).\n\n4.8.018 (2009-12-15)\n\t- Bug item #2914352 \"write error\" was fixed.\n\n4.8.017 (2009-11-27)\n\t- THEAD problem when table is used on header/footer was fixed.\n\t- A first line alignment on HTML justification was fixed.\n\t- Method getImageFileType() was added.\n\t- Images with unknown extension and type are now supported via ImageMagick PHP extension.\n\n4.8.016 (2009-11-21)\n\t- Document Information Dictionary was fixed.\n\t- CSS attributes 'page-break-before', 'page-break-after' and 'page-break-inside' are now supported.\n\t- Problem of unclosed last page was fixed.\n\t- Problem of 'thead' unnecessarily repeated on the next page was fixed.\n\n4.8.015 (2009-11-20)\n\t- A problem with some PNG transparency images was fixed.\n\t- Bug #2900762 \"Sort issues in Bookmarks\" was fixed.\n\t- Text justification was fixed for various modes: underline, strikeout and background.\n\n4.8.014 (2009-11-04)\n\t- Bug item #2891316 \"writeHTML, underlining replacing spaces\" was fixed.\n\t- The handling of temporary RTL text direction mode was fixed.\n\n4.8.013 (2009-10-26)\n\t- Bug item #2884729 \"Problem with word-wrap and hyphen\" was fixed.\n\n4.8.012 (2009-10-23)\n\t- Table cell alignments for RTL booklet mode were fixed.\n\t- Images and barcode alignments for booklet mode were fixed.\n\n4.8.011 (2009-10-22)\n\t- DejaVu fonts were updated to latest version.\n\n4.8.010 (2009-10-21)\n\t- Bookmark for TOC page was added.\n\t- Signature of addTOC() method is changed.\n\t- Bookmarks are now automatically sorted by page and Y position.\n\t- Example n. 45 was updated.\n\t- Example n. 55 was added to display all charactes available on core fonts.\n\n4.8.009 (2009-09-30)\n\t- Compatibility with PHP 5.3 was improved.\n\t- All examples were updated.\n\t- Index file for examples was added.\n\n4.8.008 (2009-09-29)\n\t- Example 49 was updated.\n\t- Underline and linethrough now works with cell stretching mode.\n\n4.8.007 (2009-09-23)\n\t- Infinite loop problem caused by nobr attribute was fixed.\n\n4.8.006 (2009-09-23)\n\t- Bug item #2864522 \"No images if DOCUMENT_ROOT=='/'\" was fixed.\n\t- Support for text-indent CSS attribute was added.\n\t- Method rollbackTransaction() was changed to support self-reassigment of previous object (check source code documentation).\n\t- Support for the HTML \"nobr\" attribute was added to avoid splitting a table or a table row on two pages (i.e.: <tr nobr=\"true\">...</tr>).\n\n4.8.005 (2009-09-17)\n\t- A bug relative to multiple transformations and annotations was fixed.\n\n4.8.004 (2009-09-16)\n\t- A bug on _putannotsrefs() method was fixed.\n\n4.8.003 (2009-09-15)\n\t- Bug item #2858754 \"Division by zero\" was fixed.\n\t- A bug relative to HTML list items was fixed.\n\t- A bug relative to form fields on multiple pages was fixed.\n\t- PolyLine() method was added (see example n. 12).\n\t- Signature of Polygon() method was changed.\n\n4.8.002 (2009-09-12)\n\t- A problem related to CID-0 fonts offset was fixed: if the $cw[1] entry on the CID-0 font file is not defined, then a CID keys offset is introduced.\n\n4.8.001 (2009-09-09)\n\t- The appearance streams (AP) for anotations form fields was fixed (see examples n. 14 and 54).\n\t- Radiobuttons were fixed.\n\n4.8.000 (2009-09-07)\n\t- This version includes some support for Forms fields (see example n. 14) and XHTML forms (see example n. 54).\n\t- The following methods were changed to work without JavaScript: TextField(), RadioButton(), ListBox(), ComboBox(), CheckBox(), Button().\n\t- Support for Widget annotations was improved.\n\t- Alignment of annotation objects was fixed (examples 36 and 41 were updated).\n\t- addJavascriptObject() method was added.\n\t- Signature of Image() method was changed.\n\t- htmlcolors.php file was updated.\n\n--------------------------------------------------------------------------------\n\n4.7.003 (2009-09-03)\n\t- Support for TCPDF methods on HTML was improved (see example n. 49).\n\n4.7.002 (2009-09-02)\n\t- Bug item #2848892 \"writeHTML + table: Gaps between rows\" was fixed.\n\t- JavaScript support was fixed (see example n. 53).\n\n4.7.001 (2009-08-30)\n\t- The Polygon() and Arrow() methods were fixed and improved (see example n. 12).\n\n4.7.000 (2009-08-29)\n\t- This is a major release.\n\t- Some procedures were internally optimized.\n\t- The problem of mixed signature and annotations was fixed (example n. 52).\n\n4.6.030 (2009-08-29)\n\t- IMPORTANT: percentages on table cell widths are now relative to the full table width (as in standard HTML).\n\t- Various minor bugs were fixed.\n\t- Example n. 52 (digital signature) was updated.\n\n4.6.029 (2009-08-26)\n\t- PHP4 version was fixed.\n\n4.6.028 (2009-08-25)\n\t- Signature algorithm was finally fixed (see example n. 52).\n\n4.6.027 (2009-08-24)\n\t- TCPDF now supports unembedded TrueTypeUnicode Fonts (just comment the $file entry on the fonts' php file.\n\n4.6.026 (2009-08-21)\n\t- Bug #2841693 \"Problem with MultiCell and ishtml and justification\" was fixed.\n\t- Signature functions were improved but not yet fixed (tcpdf.crt and example n. 52 were updated).\n\n4.6.025 (2009-08-17)\n\t- Carriage returns (\\r) were removed from source code.\n\t- Problem related to set_magic_quotes_runtime() depracated was fixed.\n\n4.6.024 (2009-08-07)\n\t- Bug item #2833556 \"justification using other units than mm\" was fixed.\n\t- Documentation was fixed/updated.\n\n4.6.023 (2009-08-02)\n\t- Bug item #2830537 \"MirrorH can show mask for transparent PNGs\" was fixed.\n\n4.6.022 (2009-07-24)\n\t- A bug relative to single line printing when using WriteHTMLCell() was fixed.\n\t- Signature support were improved but is still experimental.\n\t- Fonts Free and Dejavu were updated to latest versions.\n\n4.6.021 (2009-07-20)\n\t- Bug item #2824015 \"XHTML Ampersand &amp; in hyperlink bug\" was fixed.\n\t- Bug item #2824036 \"Image as hyperlink in table, text displaced at page break\" was fixed.\n\t- Links alignment on justified text was fixed.\n\t- Unicode \"\\u\" modifier was added to re_spaces variable by default.\n\n4.6.020 (2009-07-16)\n\t- Bug item #2821921 \"issue in example 18\" was fixed.\n\t- Signature of SetRTL() method was changed.\n\n4.6.019 (2009-07-13)\n\t- Bug item #2820703 \"xref table broken\" was fixed.\n\n4.6.018 (2009-07-10)\n\t- Bug item #2819319 \"Text over text\" was fixed.\n\t- Method Arrow() was added to print graphic arrows (example 12 was updated).\n\n4.6.017 (2009-07-05)\n\t- Bug item #2816079 \"Example 48 not working\" was fixed.\n\t- The signature of the checkPageBreak() was changed. The parameter $addpage was added to turn off the automatic page creation.\n\n4.6.016 (2009-06-16)\n\t- Method setSpacesRE() was added to set the regular expression used for detecting withespaces or word separators. If you are using chinese, try: setSpacesRE('/[\\s\\p{Z}\\p{Lo}]/');, otherwise you can use setSpacesRE('/[\\s\\p{Z}]/');\n\t- The method _putinfo() now automatically fills the metadata with '?' in case of empty string.\n\n4.6.015 (2009-06-11)\n\t- Bug #2804667 \"word wrap bug\" was fixed.\n\n4.6.014 (2009-06-04)\n\t- Bug #2800931 \"Table thead tag bug\" was fixed.\n\t- A bug related to <pre> tag was fixed.\n\n4.6.013 (2009-05-28)\n\t- List bullets position was fixed for RTL languages.\n\n4.6.012 (2009-05-23)\n\t- setUserRights() method doesn't work anymore unless you call the setSignature() method with the Adobe private key!\n\n4.6.011 (2009-05-18)\n\t- Signature of the Image() method was changed to include the new $fitbox parameter (see source code documentation).\n\n4.6.010 (2009-05-17)\n\t- Image() method was improved: now is possible to specify the maximum dimensions for a constraint box defined by $w and $h parameters, and setting the $resize parameter to null.\n\t- <tcpdf> tag indent problem was fixed.\n\t- $y parameter was added to checkPageBreak() method.\n\t- Bug n. 2791773 \"writeHTML\" was fixed.\n\n4.6.009 (2009-05-13)\n\t- xref table for embedded files was fixed.\n\n4.6.008 (2009-05-07)\n\t- setSignature() method was improved (but is still experimental).\n\t- Example n. 52 was added.\n\n4.6.007 (2009-05-05)\n\t- Bug #2786685 \"writeHtmlCell and <br /> in custom footer\" was fixed.\n\t- Table header repeating bug was fixed.\n\t- Some newlines and tabs are now automatically removed from HTML strings.\n\n4.6.006 (2009-04-28)\n\t- Support for \"<a name=\"...\">...</a>\" was added.\n\t- By default TCPDF requires PCRE Unicode support turned on but now works also without it (with limited ability to detect some Unicode blank spaces).\n\n4.6.005 (2009-04-25)\n\t- Points (pt) conversion in getHTMLUnitToUnits() was fixed.\n\t- Default tcpdf.pem certificate file was added.\n\t- Experimental support for signing document was added but it is not yet completed (some help is needed - I think that the calculation of the ByteRange is OK and the problem is on the signature calculation).\n\n4.6.004 (2009-04-23)\n\t- Method deletePage() was added to delete pages (see example n. 44).\n\n4.6.003 (2009-04-21)\n\t- The caching mechanism of the UTF8StringToArray() method was fixed.\n\n4.6.002 (2009-04-20)\n\t- Documentation of rollbackTransaction() method was fixed.\n\t- The setImageScale() and getImageScale() methods now set and get the adjusting parameter used by pixelsToUnits() method.\n\t- HTML images now support other units of measure than pixels (getHTMLUnitToUnits() is now used instead of pixelsToUnits()).\n\t- WARNING: PDF_IMAGE_SCALE_RATIO has been changed by default to 1.\n\n4.6.001 (2009-04-17)\n\t- Spaces between HTML block tags are now automatically removed.\n\t- The bug related to cMargin changes between tables was fixed.\n\n4.6.000 (2009-04-16)\n\t- WARNING: THIS VERSION CHANGES THE BEHAVIOUR OF $x and $y parameters for several TCPDF methods:\n\t\tzero coordinates for $x and $y are now valid coordinates;\n\t\tset $x and $y as empty strings to get the current value.\n\t- Some error caused by 'empty' funtion were fixed.\n\t- Default color for convertHTMLColorToDec() method was changed to white and the return value for invalid color is false.\n\t- HTML on footer bug was fixed.\n\t- The following examples were fixed: 5,7,10,17,19,20,21,33,42,43.\n\n4.5.043 (2009-04-15)\n\t- Barcode class (barcode.php) was extended to include new linear barcode types (see example n. 27):\n\t\tC39 : CODE 39 - ANSI MH10.8M-1983 - USD-3 - 3 of 9\n\t\tC39+ : CODE 39 with checksum\n\t\tC39E : CODE 39 EXTENDED\n\t\tC39E+ : CODE 39 EXTENDED + CHECKSUM\n\t\tC93 : CODE 93 - USS-93\n\t\tS25 : Standard 2 of 5\n\t\tS25+ : Standard 2 of 5 + CHECKSUM\n\t\tI25 : Interleaved 2 of 5\n\t\tI25+ : Interleaved 2 of 5 + CHECKSUM\n\t\tC128A : CODE 128 A\n\t\tC128B : CODE 128 B\n\t\tC128C : CODE 128 C\n\t\tEAN2 : 2-Digits UPC-Based Extention\n\t\tEAN5 : 5-Digits UPC-Based Extention\n\t\tEAN8 : EAN 8\n\t\tEAN13 : EAN 13\n\t\tUPCA : UPC-A\n\t\tUPCE : UPC-E\n\t\tMSI : MSI (Variation of Plessey code)\n\t\tMSI+ : MSI + CHECKSUM (modulo 11)\n\t\tPOSTNET : POSTNET\n\t\tPLANET : PLANET\n\t\tRMS4CC : RMS4CC (Royal Mail 4-state Customer Code) - CBC (Customer Bar Code)\n\t\tKIX : KIX (Klant index - Customer index)\n\t\tIMB: Intelligent Mail Barcode - Onecode - USPS-B-3200 (NOTE: requires BCMath PHP extension)\n\t\tCODABAR : CODABAR\n\t\tCODE11 : CODE 11\n\t\tPHARMA : PHARMACODE\n\t\tPHARMA2T : PHARMACODE TWO-TRACKS\n\n4.5.042 (2009-04-15)\n\t- Method Write() was fixed for the strings containing only zero value.\n\n4.5.041 (2009-04-14)\n\t- Barcode methods were fixed.\n\n4.5.040 (2009-04-14)\n\t- Method Write() was fixed to handle empty strings.\n\n4.5.039 (2009-04-11)\n\t- Support for linear barcodes was extended (see example n. 27 and barcodes.php documentation).\n\n4.5.038 (2009-04-10)\n\t- Write() method was improved to support separators for Japanese, Korean, Chinese Traditional and Chinese Simplified.\n\n4.5.037 (2009-04-09)\n\t- General performances were improved.\n\t- The signature of the method utf8Bidi() was changed.\n\t- The method UniArrSubString() was added.\n\t- Experimental support for 2D barcodes were added (see example n. 50 and 2dbarcodes.php class).\n\n4.5.036 (2009-04-03)\n\t- TCPDF methods can be called inside the HTML code (see example n. 49).\n\t- All tag attributes, such as <p align=\"center\"> must be enclosed within double quotes.\n\n4.5.035 (2009-03-28)\n\t- Bug #2717436 \"writeHTML rowspan problem (continued)\" was fixed.\n\t- Bug #2719090 \"writeHTML fix follow up\" was fixed.\n\t- The method _putuserrights() was changed to avoid Adobe Reader 9.1 crash. This broken the 'trick' that was used to display forms in Acrobat Reader.\n\n4.5.034 (2009-03-27)\n\t- Bug #2716914 \"Bug writeHTML of a table in body and footer related with pb\" was fixed.\n\t- Bug #2717056 ] \"writeHTML problem when setting tr style\" was fixed.\n\t- The signature of the Cell() method was changed.\n\n4.5.033 (2009-03-27)\n\t- The support for rowspan/colspan on HTML tables was improved (see example n. 48).\n\n4.5.032 (2009-03-23)\n\t- setPrintFooter(false) bug was fixed.\n\n4.5.031 (2009-03-20)\n\t- Table header support was extended to multiple pages.\n\n4.5.030 (2009-03-20)\n\t- thead tag is now supported on HTML tables (header rows are repeated after page breaks).\n\t- The startTransaction() was improved to autocommit.\n\t- List bullets now uses the foreground color (putHtmlListBullet()).\n\n4.5.029 (2009-03-19)\n\t- The following methods were added to UNDO commands (see example 47): startTransaction(), commitTransaction(), rollbackTransaction().\n\t- All examples were updated.\n\n4.5.028 (2009-03-18)\n\t- Bug #2690945 \"List Bugs\" was fixed.\n\t- HTML text alignment on lists was fixed.\n\t- The constant PDF_FONT_MONOSPACED was added to the configuration file to define the default monospaced font.\n\t- The following methods were fixed: getPageWidth(), getPageHeight(), getBreakMargin().\n\t- All examples were updated.\n\n4.5.027 (2009-03-16)\n\t- Method getPageDimensions() was added to get page dimensions.\n\t- The signature of the following methos were changed: getPageWidth(), getPageHeight(), getBreakMargin().\n\t- _parsepng() method was fixed for PNG URL images (fread bug).\n\n4.5.026 (2009-03-11)\n\t- Bug #2681793 affecting URL images with spaces was fixed.\n\n4.5.025 (2009-03-10)\n\t- A small bug affecting hyphenation support was fixed.\n\t- The method SetDefaultMonospacedFont() was added to define the default monospaced font.\n\n4.5.024 (2009-03-07)\n\t- The bug #2666493 was fixed \"Footer corrupts document\".\n\n4.5.023 (2009-03-06)\n\t- The bug #2666688 was fixed \"Rowspan in tables\".\n\n4.5.022 (2009-03-05)\n\t- The bug #2659676 was fixed \"refer to #2157099 test 4 < BR > problem still not fixed\".\n\t- addTOC() function bug was fixed.\n\n4.5.020 (2009-03-03)\n\t- The following bug was fixed: \"function removeSHY corrupts unicode\".\n\n4.5.019 (2009-02-28)\n\t- The problem of decimal separator using different locale was fixed.\n\t- The text hyphenation is now supported (see example n. 46).\n\n4.5.018 (2009-02-26)\n\t- The _destroy() method was added to unset all class variables and frees memory.\n\t- Now it's possible to call Output() method multiple times.\n\n4.5.017 (2009-02-24)\n\t- A minor bug that raises a PHP warning was fixed.\n\n4.5.016 (2009-02-24)\n\t- Bug item #2631200 \"getNumLines() counts wrong\" was fixed.\n\t- Multiple attachments bug was fixed.\n\t- All class variables are now cleared on Output() for memory otpimization.\n\n4.5.015 (2009-02-18)\n\t- Bug item #2612553 \"function Write() must not break a line on &nbsp;  character\" was fixed.\n\n4.5.014 (2009-02-13)\n\t- Bug item #2595015 \"POSTNET Barcode Checksum Error\" was fixed (on barcode.php).\n\t- Pagebreak bug for barcode was fixed.\n\n4.5.013 (2009-02-12)\n\t- border attribute is now supported on HTML images (only accepts the same values accepted by Cell()).\n\n4.5.012 (2009-02-12)\n\t- An error on image border feature was fixed.\n\n4.5.011 (2009-02-12)\n\t- HTML links for images are now supported.\n\t- height attribute is now supported on HTML cells.\n\t- $border parameter was added to Image() and ImageEps() methods.\n\t- The method getNumLines() was added to estimate the number of lines required for the specified text.\n\n4.5.010 (2009-01-29)\n\t- Bug n. 2546108 \"BarCode Y position\" was fixed.\n\n4.5.009 (2009-01-26)\n\t- Bug n. 2538094 \"Empty pdf file created\" was fixed.\n\n4.5.008 (2009-01-26)\n\t- setPage() method was fixed to correctly restore graphic states.\n\t- Source code was cleaned up for performances.\n\n4.5.007 (2009-01-24)\n\t- checkPageBreak() and write1DBarcode() methods were fixed.\n\t- Source code was cleaned up for performances.\n\t- barcodes.php was updated.\n\n4.5.006 (2009-01-23)\n\t- getHTMLUnitToPoints() method was replaced by getHTMLUnitToUnits() to fix HTML units bugs.\n\n4.5.005 (2009-01-23)\n\t- Page closing bug was fixed.\n\n4.5.004 (2009-01-21)\n\t- The access of convertHTMLColorToDec() method was changed to public\n\t- Fixed bug on UL tag.\n\n4.5.003 (2009-01-19)\n\t- Fonts on different folders are now supported.\n\n4.5.002 (2009-01-07)\n\t- addTOC() function was improved (see example n. 45).\n\n4.5.001 (2009-01-04)\n\t- The signature of startPageGroup() function was changed.\n\t- Method Footer() was improved to automatically print page or page-group number (see example n. 23).\n\t- Protected method formatTOCPageNumber() was added to customize the format of page numbers on the Table Of Content.\n\t- The signature of addTOC() was changed to include the font used for page numbers.\n\n4.5.000 (2009-01-03)\n\t- A new $diskcache parameter was added to class constructor to enable disk caching and reduce RAM memory usage (see example n. 43).\n\t- The method movePageTo() was added to move pages to previous positions (see example n. 44).\n\t- The methods getAliasNumPage() and getPageNumGroupAlias() were added to get the alias for page number (needed when using movepageTo()).\n\t- The methods addTOC() was added to print a Table Of Content (see example n. 45).\n\t- Imagick class constant was removed for better compatibility with PHP4.\n\t- All existing examples were updated and new examples were added.\n\n4.4.009 (2008-12-29)\n\t- Examples 1 and 35 were fixed.\n\n4.4.008 (2008-12-28)\n\t- Bug #2472169 \"Unordered bullet size not adjusted for unit type\" was fixed.\n\n4.4.007 (2008-12-23)\n\t- Bug #2459935 \"no unit conversion for header line\" was fixed.\n\t- Example n. 42 for image alpha channel was added.\n\t- All examples were updated.\n\n4.4.006 (2008-12-11)\n\t- Method setLIsymbol() was changed to reflect latest changes in HTML list handling.\n\n4.4.005 (2008-12-10)\n\t- Bug item #2413870 \"ordered list override value\" was fixed.\n\n4.4.004 (2008-12-10)\n\t- The protected method getHTMLUnitToPoints() was added to accept various HTML units of measure (em, ex, px, in, cm, mm, pt, pc, %).\n\t- The method intToRoman() was added to convert integer number to Roman representation.\n\t- Support fot HTML lists was improved: the CSS property list-style-type is now supported.\n\n4.4.003 (2008-12-09)\n\t- Bug item #2412147 \"Warning on line 3367\" was fixed.\n\t- Method setHtmlLinksStyle() was added to set default HTML link colors and font style.\n\t- Method addHtmlLink() was changed to use color and style defined on the inline CSS.\n\n4.4.002 (2008-12-09)\n\t- Borders on Multicell() were fixed.\n\t- Problem of Multicell() on Header function (Bug item #2407579) was fixed.\n\t- Problem on graphics tranformations applied to Multicell() was fixed.\n\t- Support for ImageMagick was added.\n\t- Width calculation for nested tables was fixed.\n\n4.4.001 (2008-12-08)\n\t- Some missing core fonts were added on fonts directory.\n\t- CID0 fonts rendering was fixed.\n\t- HTML support was improved (<pre> and <tt> tags are now supported).\n\t- Bug item #2406022 \"Left padding bug in MultiCell with maxh\" was fixed.\n\n4.4.000 (2008-12-07)\n\t- File attachments are now supported (see example n. 41).\n\t- Font functions were optimized to reduce document size.\n\t- makefont.php was updated.\n\t- Linux binaries were added on /fonts/utils\n\t- All fonts were updated.\n\t- $autopadding parameter was added to Multicell() to disable automatic padding features.\n\t- $maxh parameter was added to Multicell() and Write() to set a maximum height.\n\n4.3.009 (2008-12-05)\n\t- Bug item #2392989 (Custom header + setlinewidth + cell border bug) was fixed.\n\n4.3.008 (2008-12-05)\n\t- Bug item #2390566 \"rect bug\" was fixed.\n\t- File path was fixed for font embedded files.\n\t- SetFont() method signature was changed to include the font filename.\n\t- Some font-related methods were improved.\n\t- Methods getFontFamily() and getFontStyle() were added.\n\n4.3.007 (2008-12-03)\n\t- PNG alpha channel is now supported (GD library is required).\n\t- AddFont() function now support custom font file path on $file parameter.\n\t- The default width variable ($dw) is now always defined for any font.\n\t- The 'Style' attribute on CID-0 fonts was removed because of protection bug.\n\n4.3.006 (2008-12-01)\n\t- A regular expression on getHtmlDomArray() to find HTML tags was fixed.\n\n4.3.005 (2008-11-25)\n\t- makefont.php was fixed.\n\t- Bug item #2339877 was fixed (false loop condition detected on WriteHTML()).\n\t- Bug item #2336733 was fixed (lasth value update on Multicell() when border and fill are disabled).\n\t- Bug item #2342303 was fixed (automatic page-break on Image() and ImageEPS()).\n\n4.3.004 (2008-11-19)\n\t- Function _textstring() was fixed (bug 2309051).\n\t- All examples were updated.\n\n4.3.003 (2008-11-18)\n\t- CID-0 font bug was fixed.\n\t- Some functions were optimized.\n\t- Function getGroupPageNoFormatted() was added.\n\t- Example n. 23 was updated.\n\n4.3.002 (2008-11-17)\n\t- Bug item #2305518 \"CID-0 font don't work with encryption\" was fixed.\n\n4.3.001 (2008-11-17)\n\t- Bug item #2300007 \"download mimetype pdf\" was fixed.\n\t- Double quotes were replaced by single quotes to improve PHP performances.\n\t- A bug relative to HTML cell borders was fixed.\n\n4.3.000 (2008-11-14)\n\t- The function setOpenCell() was added to set the top/bottom cell sides to be open or closed when the cell cross the page.\n\t- A bug relative to list items indentation was fixed.\n\t- A bug relative to borders on HTML tables and Multicell was fixed.\n\t- A bug relative to rowspanned cells was fixed.\n\t- A bug relative to html images across pages was fixed.\n\n4.2.009 (2008-11-13)\n\t- Spaces between li tags are now automatically removed.\n\n4.2.008 (2008-11-12)\n\t- A bug relative to fill color on next page was fixed.\n\n4.2.007 (2008-11-12)\n\t- The function setListIndentWidth() was added to set custom indentation widht for HTML lists.\n\n4.2.006 (2008-11-06)\n\t- A bug relative to HTML justification was fixed.\n\n4.2.005 (2008-11-06)\n\t- A bug relative to HTML justification was fixed.\n\t- The methods formatPageNumber() and PageNoFormatted() were added to format page numbers.\n\t- Default Footer() method was changed to use PageNoFormatted() instead of PageNo().\n\t- Example 6 was updated.\n\n4.2.004 (2008-11-04)\n\t- Bug item n. 2217039 \"filename handling improvement\" was fixed.\n\n4.2.003 (2008-10-31)\n\t- Font style bug was fixed.\n\n4.2.002 (2008-10-31)\n\t- Bug item #2210922 (htm element br not work) was fixed.\n\t- Write() function was improved to support margin changes.\n\n4.2.001 (2008-10-30)\n\t- setHtmlVSpace($tagvs) function was added to set custom vertical spaces for HTML tags.\n\t- writeHTML() function now support margin changes during execution.\n\t- Signature of addHTMLVertSpace() function is changed.\n\n4.2.000 (2008-10-29)\n\t- htmlcolors.php was changed to support class-loaders.\n\t- ImageEps() function was improved in performances.\n\t- Signature of Link() And Annotation() functions were changed.\n\t- (Bug item #2198926) Links and Annotations alignment were fixed (support for geometric tranformations was added).\n\t- rowspan mode for HTML table cells was improved and fixed.\n\t- Booklet mode for double-sided pages was added; see SetBooklet() function and example n. 40.\n\t- lastPage() signature is changed.\n\t- Signature of Write() function is changed.\n\t- Some HTML justification problems were fixed.\n\t- Some functions were fixed to better support RTL mode.\n\t- Example n. 10 was changed to support RTL mode.\n\t- All examples were updated.\n\n4.1.004 (2008-10-23)\n\t- unicode_data.php was changed to support class-loaders.\n\t- Bug item #2186040/2 (writeHTML margin problem) was fixed.\n\n4.1.003 (2008-10-22)\n\t- Bug item #2185399 was fixed (rowspan and page break).\n\t- Bugs item #2186040 was fixed (writeHTML margin problem).\n\t- Newline after table was removed.\n\n4.1.002 (2008-10-21)\n\t- Bug item #2184525 was fixed (rowspan on HTML cell).\n\n4.1.001 (2008-10-21)\n\t- Support for \"start\" attribute was added to HTML ordered list.\n\t- unicode_data.php file was changed to include UTF-8 to ASCII table.\n\t- Some functions were modified to better support UTF-8 extensions to core fonts.\n\t- Support for images on HTML lists was improved.\n\t- Examples n. 1 and 6 were updated.\n\n4.1.000 (2008-10-18)\n\t- Page-break bug using HTML content was fixed.\n\t- The \"false\" parameter was reintroduced to class_exists function on PHP5 version to avoid autoload.\n\t- addHtmlLink() function was improved to support internal links (i.e.: <a href=\"#23\">link to page 23</a>).\n\t- Justification alignment is now supported on HTML (see example n. 39).\n\t- example_006.php was updated.\n\n4.0.033 (2008-10-13)\n\t- Bug n. 2157099 was fixed.\n\t- SetX() and SetY() functions were improved.\n\t- SetY() includes a new parameter to avoid the X reset.\n\n4.0.032 (2008-10-10)\n\t- Bug n. 2156926 was fixed (bold, italic, underlined, linethrough).\n\t- setStyle() method was removed.\n\t- Configuration file was changed to use helvetica (non-unicode) font by default.\n\t- The use of mixed font types was improved.\n\t- All examples were updated.\n\n4.0.031 (2008-10-09)\n\t- _putannots() and _putbookmarks() links alignments were fixed.\n\n4.0.030 (2008-10-07)\n\t- _putbookmarks() function was fixed.\n\t- _putannots() was fixed to include internal links.\n\n4.0.029 (2008-09-27)\n\t- Infinite loop bug was fixed [Bug item #130309].\n\t- Multicell() problem on Header() was fixed.\n\n4.0.028 (2008-09-26)\n\t- setLIsymbol() was added to set the LI symbol used on UL lists.\n\t- Missing $padding and $encryption_key variables declarations were added [Bug item #2129058].\n\n4.0.027 (2008-09-19)\n\t- Bug #2118588 \"Undefined offset in tcpdf.php on line 9581\" was fixed.\n\t- arailunicid0.php font was updated.\n\t- The problem of javascript form fields duplication after saving was fixed.\n\n4.0.026 (2008-09-17)\n\t- convertHTMLColorToDec() function was improved to support rgb(RR,GG,BB) notation.\n\t- The following inline CSS attributes are now supported: text-decoration, color, background-color and font-size names: xx-small, x-small, small, medium, large, x-large, xx-large\n\t- Example n. 6 was updated.\n\n4.0.025 (2008-09-15)\n\t- _putcidfont0 function was improved to include CJK fonts (Chinese, Japanese, Korean, CJK, Asian fonts) without embedding.\n\t- arialunicid0 font was added (see the new example n. 38).\n\t- The following Unicode to CID-0 tables were added on fonts folder: uni2cid_ak12.php, uni2cid_aj16.php, uni2cid_ag15.php, uni2cid_ac15.php.\n\n4.0.024 (2008-09-12)\n\t- \"stripos\" function was replaced with \"strpos + strtolower\" for backward compatibility with PHP4.\n\t- support for Spot Colors were added. Check the new example n. 37 and the following new functions:\n\t\tAddSpotColor()\n\t\tSetDrawSpotColor()\n\t\tSetFillSpotColor()\n\t\tSetTextSpotColor()\n\t\t_putspotcolors()\n\t- Bookmark() function was improved to fix wrong levels.\n\t- $lasth changes after header/footer calls were fixed.\n\n4.0.023 (2008-09-05)\n\t- Some HTML related problems were fixed.\n\t- Image alignment on HTML was changed, now it always defaults to the normal mode (see example_006.php).\n\n4.0.022 (2008-08-28)\n\t- Line height on HTML was fixed.\n\t- Image inside an HTML cell problem was fixed.\n\t- A new \"zarbold\" persian font was added.\n\n4.0.021 (2008-08-24)\n\t- HTTP headers were fixed on Output function().\n\t- getAliasNbPages() and getPageGroupAlias() functions were changed to support non-unicode fonts on unicode documents.\n\t- Function Write() was fixed.\n\t- The problem of additional vertical spaces on HTML was fixed.\n\t- The problem of frame around HTML links was fixed.\n\n4.0.020 (2008-08-15)\n\t- \"[2052259] WriteHTML <u> & <b>\" bug was fixed.\n\n4.0.019 (2008-08-13)\n\t- \"Rowspan on first cell\" bug was fixed.\n\n4.0.018 (2008-08-08)\n\t- Default cellpadding for HTML tables was fixed.\n\t- Annotation() function was added to support some PDF annotations (see example_036.php and section 8.4 of PDF reference 1.7).\n\t- HTML links are now correclty shifted during line alignments.\n\t- function getAliasNbPages() was added and Footer() was updated.\n\t- RowSpan mode for HTML tables was fixed.\n\t- Bugs item #2043610 \"Multiple sizes vertical align wrong\" was fixed.\n\t- ImageEPS() function was improved and RTL alignment was fixed (see example_032.php).\n\n4.0.017 (2008-08-05)\n\t- Missing CNZ and CEO style modes were added to Rect() function.\n\t- Fonts utils were updated to include support for OpenType fonts.\n\t- getLastH() function was added.\n\n4.0.016 (2008-07-30)\n\t- setPageMark() function was added. This function must be called after calling Image() function for a background image.\n\n4.0.015 (2008-07-29)\n\t- Some functions were changed to support different page formats (see example_028.php).\n\t- The signature of setPage() function is changed.\n\n4.0.014 (2008-07-29)\n\t- K_PATH_MAIN calculation on tcpdf_config.php was fixed.\n\t- HTML support for EPS/AI images was added (see example_006.php).\n\t- Bugs item #2030807 \"Truncated text on multipage html fields\" was fixed.\n\t- PDF header bug was fixed.\n\t- helvetica was added as default font family.\n\t- Stroke mode was fixed on Text function.\n\t- several minor bugs were fixed.\n\n4.0.013 (2008-07-27)\n\t- Bugs item #2027799 \" Big spaces between lines after page break\" was fixed.\n\t- K_PATH_MAIN calculation on tcpdf_config.php was changed.\n\t- Function setVisibility() was fixed to avoid the \"Incorrect PDEObject type\" error message.\n\n4.0.012 (2008-07-24)\n\t- Addpage(), Header() and Footer() functions were changed to simplify the implementation of external header/footer functions.\n\t- The following functions were added:\n\t\t\tsetHeader()\n\t\t\tsetFooter()\n\t\t\tgetImageRBX()\n\t\t\tgetImageRBY()\n\t\t\tgetCellHeightRatio()\n\t\t\tgetHeaderFont()\n\t\t\tgetFooterFont()\n\t\t\tgetRTL()\n\t\t\tgetBarcode()\n\t\t\tgetHeaderData()\n\t\t\tgetHeaderMargin()\n\t\t\tgetFooterMargin()\n\n4.0.011 (2008-07-23)\n\t- Font support was improved.\n\t- The folder /fonts/utils contains new utilities and instructions for embedd font files.\n\t- Documentation was updated.\n\n4.0.010 (2008-07-22)\n\t- HTML tables were fixed to work across pages.\n\t- Header() and Footer() functions were updated to preserve previous settings.\n\t- example_035.php was added.\n\n4.0.009 (2008-07-21)\n\t- UTF8StringToArray() function was fixed for non-unicode mode.\n\n4.0.008 (2008-07-21)\n\t- Barcodes alignment was fixed (see example_027.php).\n\t- unicode_data.php was updated.\n\t- Arabic shaping for \"Zero-Width Non-Joiner\" character (U+200C) was fixed.\n\n4.0.007 (2008-07-18)\n\t- str_split was replaced by preg_split for compatibility with PHP4 version.\n\t- Clipping mode was added to all graphic functions by using parameter $style = \"CNZ\" or \"CEO\" (see example_034.php).\n\n4.0.006 (2008-07-16)\n\t- HTML rowspan bug was fixed.\n\t- Line style for MultiCell() was fixed.\n\t- WriteHTML() function was improved.\n\t- CODE128C barcode was fixed (barcodes.php).\n\n4.0.005 (2008-07-11)\n\t- Bug [2015715] \"PHP Error/Warning\" was fixed.\n\n4.0.004 (2008-07-09)\n\t- HTML cell internal padding was fixed.\n\n4.0.003 (2008-07-08)\n\t- Removed URL encoding when F option is selected on Output() function.\n\t- fixed some minor bugs in html tables.\n\n4.0.002 (2008-07-07)\n\t- Bug [2000861] was still unfixed and has been fixed.\n\n4.0.001 (2008-07-05)\n\t- Bug [2000861] was fixed.\n\n4.0.000 (2008-07-03)\n\t- THIS IS A MAIN RELEASE THAT INCLUDES SEVERAL NEW FEATURES AND BUGFIXES\n\t- Signature fo SetTextColor() and SetFillColor() functions was changed (parameter $storeprev was removed).\n\t- HTML support was completely rewritten and improved (see example 6).\n\t- Alignments parameters were fixed.\n\t- Functions GetArrStringWidth() and GetStringWidth() now include font parameters.\n\t- Fonts support was improved.\n\t- All core fonts were replaced and moved to fonts/ directory.\n\t- The following functions were added: getMargins(), getFontSize(), getFontSizePt().\n\t- File config/tcpdf_config_old.php was renamed tcpdf_config_alt.php and updated.\n\t- Multicell and WriteHTMLCell fill function was fixed.\n\t- Several minor bugs were fixed.\n\t- barcodes.php was updated.\n\t- All examples were updated.\n\n------------------------------------------------------------\n\n3.1.001 (2008-06-13)\n\t- Bug [1992515] \"K_PATH_FONTS default value wrong\" was fixed.\n\t- Vera font was removed, DejaVu font and Free fonts were updated.\n\t- Image handling was improved.\n\t- All examples were updated.\n\n3.1.000 (2008-06-11)\n\t- setPDFVersion() was added to change the default PDF version (currently 1.7).\n\t- setViewerPreferences() was added to control the way the document is to be presented on the screen or printed (see example 29).\n\t- SetDisplayMode() signature was changed (new options were added).\n\t- LinearGradient(), RadialGradient(), CoonsPatchMesh() functions were added to print various color gradients (see example 30).\n\t- PieSector() function was added to render render pie charts (see example 31).\n\t- ImageEps() was added to display EPS and AI images with limited support (see example 32).\n\t- writeBarcode() function is now depracated, a new write1DBarcode() function was added. The barcode directory was removed and a new barcodes.php file was added.\n\t- The new write1DBarcode() function support more barcodes and do not need the GD library (see example 027). All barcodes are directly written to PDF using graphic functions.\n\t- HTML lists were improved and could be nested (you may now represent trees).\n\t- AddFont() bug was fixed.\n\t- _putfonts() bug was fixed.\n\t- graphics functions were fixed.\n\t- unicode_data.php file was updated (fixed).\n\t- almohanad font was updated.\n\t- example 18 was updated (Farsi and Arabic languages).\n\t- source code cleanup.\n\t- All examples were updated and new examples were added.\n\n3.0.015 (2008-06-06)\n\t- AddPage() function signature is changed to include page format.\n\t- example 28 was added to show page format changes.\n\t- setPageUnit() function was added to change the page units of measure.\n\t- setPageFormat() function was added to change the page format and orientation between pages.\n\t- setPageOrientation() function was added to change the page orientation.\n\t- Arabic font shaping was fixed for laa letter and square boxes (see the example 18).\n\n3.0.014 (2008-06-04)\n\t- Arabic font shaping was fixed.\n\t- setDefaultTableColumns() function was added.\n\t- $cell_height_ratio variable was added.\n\t- setCellHeightRatio() function was added to define the default height of cell repect font height.\n\n3.0.013 (2008-06-03)\n\t- Multicell height parameter was fixed.\n\t- Arabic font shaping was improved.\n\t- unicode_data.php was updated.\n\n3.0.012 (2008-05-30)\n\t- K_PATH_MAIN and K_PATH_URL constants are now automatically set on config file.\n\t- DOCUMENT_ROOT constant was fixed for IIS Webserver (config file was updated).\n\t- Arabic font shaping was improved.\n\t- TranslateY() function was fixed (bug [1977962]).\n\t- setVisibility() function was fixed.\n\t- writeBarcode() function was fixed to scale using $xref parameter.\n\t- All examples were updated.\n\n3.0.011 (2008-05-23)\n\t- CMYK color support was added to all graphic functions.\n\t- HTML table support was improved:\n\t  -- now it's possible to include additional html tags inside a cell;\n\t  -- colspan attribute was added.\n\t- example 006 was updated.\n\n3.0.010 (2008-05-21)\n\t- fixed $laa_array inclusion on utf8Bidi() function.\n\n3.0.009 (2008-05-20)\n\t- unicode_data.php was updated.\n\t- Arabic laa letter problem was fixed.\n\n3.0.008 (2008-05-12)\n\t- Arabic support was fixed and improved (unicode_data.php was updated).\n\t- Polycurve() function was added to draw a poly-Bezier curve.\n\t- list items alignment was fixed.\n\t- example 6 was updated.\n\n3.0.007 (2008-05-06)\n\t- Arabic support was fixed and improved.\n\t- AlMohanad (arabic) font was added.\n\t- C128 barcode bugs were fixed.\n\n3.0.006 (2008-04-21)\n\t- Condition to check negative width values was added.\n\n3.0.005 (2008-04-18)\n\t- back-Slash character escape was fixed on writeHTML() function.\n\t- Exampe 6 was updated.\n\n3.0.004 (2008-04-11)\n\t- Bug [1939304] (Right to Left Issue) was fixed.\n\n3.0.003 (2008-04-07)\n\t- Bug [1934523](Words between HTML tags in cell not kept on one line) was fixed.\n\t- \"face\" attribute of \"font\" tag is now fully supported.\n\n3.0.002 (2008-04-01)\n\t- Write() functions now return the number of cells and not the number of lines.\n\t- TCPDF is released under LGPL 2.1, or any later version.\n\n3.0.001 (2008-05-28)\n\t- _legacyparsejpeg() and _legacyparsepng() were renamed _parsejpeg() and _parsepng().\n\t- function writeBarcode() was fixed.\n\t- all examples were updated.\n\t- example 27 was added to show various barcodes.\n\n3.0.000 (2008-03-27)\n\t- private function pixelsToMillimeters() was changed to public function pixelsToUnits() to fix html image size bug.\n\t- Image-related functions were rewritten.\n\t- resize parameter was added to Image() signature to reduce the image size and fit width and height (see example 9).\n\t- TCPDF now supports all images supported by GD library: GD, GD2, GD2PART, GIF, JPEG, PNG, BMP, XBM, XPM.\n\t- CMYK support was added to SetDrawColor(), SetFillColor(), SetTextColor() (see example 22).\n\t- Page Groups were added (see example 23).\n\t- setVisibility() function was added to restrict the rendering of some elements to screen or printout (see example 24).\n\t- All private variables and functions were changed to protected.\n\t- setAlpha() function was added to give transparency support for all objects (see example 25).\n\t- Clipping and stroke modes were added to Text() function (see example 26).\n\t- All examples were moved to \"examples\" directory.\n\t- function setJPEGQuality() was added to set the JPEG image comrpession (see example 9).\n\n2.9.000 (2008-03-26)\n\t- htmlcolors.php file was added to include html colors.\n\t- Support for HTML color names and three-digit hexadecimal color codes was added.\n\t- private function convertColorHexToDec() was renamed convertHTMLColorToDec().\n\t- color and bgcolor attributes are now supported on all HTML tags (color nesting is also supported).\n\t- Write() function were fixed.\n\t- example_006.php was updated.\n\t- private function setUserRights() was added to release user rights on Acrobat Reader (this allows to display forms, see example 14)\n\n2.8.000 (2008-03-20)\n\t- Private variables were changed to protected.\n\t- Function Write() was fixed and improved.\n\t- Support for dl, dt, dd, del HTML tags was introduced.\n\t- Line-trought mode was added for HTML and text.\n\t- Text vertical alignment on cells were fixed.\n\t- Examples were updated to reflect changes.\n\n2.7.002 (2008-03-13)\n\t- Bug \"[1912142] Encrypted PDF created/modified date\" was fixed.\n\n2.7.001 (2008-03-10)\n\t- Cell justification was fixed for non-unicode mode.\n\n2.7.000 (2008-03-09)\n\t- Cell() stretching mode 4 (forced character spacing) was fixed.\n\t- writeHTMLCell() now uses Multicell() to write.\n\t- Multicell() has a new parameter $ishtml to act as writeHTMLCell().\n\t- Write() speed was improved for non-arabic strings.\n\t- Example n. 20 was changed.\n\n2.6.000 (2008-03-07)\n\t- various alignments bugs were fixed.\n\n2.5.000 (2008-03-07)\n\t- Several bugs were fixed.\n\t- example_019.php was added to test non-unicode mode using old fonts.\n\n2.4.000 (2008-03-06)\n\t- RTL support was deeply improved.\n\t- GetStringWidth() was fixed to support RTL languages.\n\t- Text() RTL alignment was fixed.\n\t- Some functions were added: GetArrStringWidth(), GetCharWidth(), uniord(), utf8Bidi().\n\t- example_018.php was added and test_unicode.php was removed.\n\n2.3.000 (2008-03-05)\n\t- MultiCell() signature is changed. Now support multiple columns across pages (see example_017).\n\t- Write() signature is changed. Now support the cell mode to be used with MultiCell.\n\t- Header() and Footer() were changed.\n\t- The following functions were added: UTF8ArrSubString() and unichr().\n\t- Examples were updated to reflect last changes.\n\n2.2.004 (2008-03-04)\n\t- Several examples were added.\n\t- AddPage() Header() and Footer() were fixed.\n\t- Documentation is now available on http://www.tcpdf.org\n\n2.2.003 (2008-03-03)\n\t- [1894853] Performance of MultiCell() was improved.\n\t- RadioButton and ListBox functions were added.\n\t- javascript form functions were rewritten and properties names are changed. The properties function supported by form fields are listed on Possible values are listed on http://www.adobe.com/devnet/acrobat/pdfs/js_developer_guide.pdf.\n\n2.2.002 (2008-02-28)\n\t- [1900495] html images path was fixed.\n\t- Legacy image functions were reintroduced to allow PNG and JPEG support without GD library.\n\n2.2.001 (2008-02-16)\n\t- The bug \"[1894700] bug with replace relative path\" was fixed\n\t- Justification was fixed\n\n2.2.000 (2008-02-12)\n\t- fixed javascript bug introduced with latest release\n\n2.1.002 (2008-02-12)\n\t- Justify function was fixed on PHP4 version.\n\t- Bookmank function was added ([1578250] Table of contents).\n\t- Javascript and Form fields support was added ([1796359] Form fields).\n\n2.1.001 (2008-02-10)\n\t- The bug \"[1885776] Race Condition in function justitfy\" was fixed.\n\t- The bug \"[1890217] xpdf complains that pdf is incorrect\" was fixed.\n\n2.1.000 (2008-01-07)\n\t- FPDF_FONTPATH constant was changed to K_PATH_FONTS on config file\n\t- Bidirectional Algorithm to correctly reverse bidirectional languages was added.\n\t- SetLeftMargin, SetTopMargin, SetRightMargin functions were fixed.\n\t- SetCellPadding function was added.\n\t- writeHTML was updated with new parameters.\n\t- Text function was fixed.\n\t- MultiCell function was fixed, now works also across multiple pages.\n\t- Line width was fixed on Header and Footer functions and <hr> tag.\n\t- \"GetImageSize\" was renamed \"getimagesize\".\n\t- Document version was changed from 1.3 to 1.5.\n\t- _begindoc() function was fixed.\n\t- ChangeDate was fixed and ModDate was added.\n\t- The following functions were added:\n\t  setPage() : Move pointer to the specified document page.\n\t  getPage() : Get current document page number.\n\t  lastpage() : Reset pointer to the last document page.\n\t  getNumPages() : Get the total number of inserted pages.\n\t  GetNumChars() : count the number of (UTF-8) characters in a string.\n\t- $stretch parameter was added to Cell() function to fit text on cell:\n\t\t\t0 = disabled\n\t\t\t1 = horizontal scaling only if necessary\n\t\t\t2 = forced horizontal scaling\n\t\t\t3 = character spacing only if necessary\n\t\t\t4 = forced character spacing\n\t- Line function was fixed for RTL.\n\t- Graphic transformation functions were added [1811158]:\n\t\t\tStartTransform()\n\t\t\tStopTransform()\n\t\t\tScaleX()\n\t\t\tScaleY()\n\t\t\tScaleXY()\n\t\t\tScale()\n\t\t\tMirrorH()\n\t\t\tMirrorV()\n\t\t\tMirrorP()\n\t\t\tMirrorL()\n\t\t\tTranslateX()\n\t\t\tTranslateY()\n\t\t\tTranslate()\n\t\t\tRotate()\n\t\t\tSkewX()\n\t\t\tSkewY()\n\t\t\tSkew()\n\t- Graphic function were added/updated [1688549]:\n\t\t\tSetLineStyle()\n\t\t\t_outPoint()\n\t\t\t_outLine()\n\t\t\t_outRect()\n\t\t\t_outCurve()\n\t\t\tLine()\n\t\t\tRect()\n\t\t\tCurve\n\t\t\tEllipse\n\t\t\tCircle\n\t\t\tPolygon\n\t\t\tRegularPolygon\n\n2.0.000 (2008-01-04)\n\t- RTL (Right-To-Left) languages support was added. Language direction is set using the $l['a_meta_dir'] setting on /configure/language/xxx.php language files.\n\t- setRTL($enable) method was added to manually enable/disable the RTL text direction.\n\t- The attribute \"dir\" was added to support custom text direction on HTML tags. Possible values are: ltr - for Left-To-Right and RTL for Right-To-Left.\n\t- RC4 40bit encryption was added. Check the SetProtection method.\n\t- [1815213] Improved image support for GIF, JPEG, PNG formats.\n\t- [1800094] Attribute \"value\" was added to ordered list items <li>.\n\t- Image function now has a new \"align\" parameter that indicates the alignment of the pointer next to image insertion and relative to image height. The value can be:\n\t\t\tT: top-right for LTR or top-left for RTL\n\t\t\tM: middle-right for LTR or middle-left for RTL\n\t\t\tB: bottom-right for LTR or bottom-left for RTL\n\t\t\tN: next line\n\t- Attribute \"align\" was added to <img> html tag to set the above image \"align\" parameter. Possible values are:\n\t\t\ttop: top-right for LTR or top-left for RTL\n\t\t\tmiddle: middle-right for LTR or middle-left for RTL\n\t\t\tbottom: bottom-right for LTR or bottom-left for RTL\n\t- [1798103] newline was added after </ul>, </ol> and </p> tages.\n\t- [1816393] Documentation was updated.\n\t- 'ln' parameter was fixed on writeHTMLCell. Now it's possible to print two or more columns across several pages;\n\t- The method lastPage() was added to move the pointer on the last page;\n\n------------------------------------------------------------\n\n1.53.0.TC034 (2007-07-30)\n\t- fixed htmlentities conversion.\n\t- MultiCell() function returns the number of cells.\n\n1.53.0.TC033 (2007-07-30)\n\t- fixed bug 1762550: case sensitive for font files\n\t- NOTE: all fonts files names must be in lowercase!\n\n1.53.0.TC032 (2007-07-27)\n\t- setLastH method was added to resolve bug 1689071.\n\t- all fonts names were converted in lowercase (bug 1713005).\n\t- bug 1740954 was fixed.\n\t- justification was added as Cell option.\n\n1.53.0.TC031 (2007-03-20)\n\t- ToUnicode CMap were added on _puttruetypeunicode function. Now you may search and copy unicode text.\n\n1.53.0.TC030 (2007-03-06)\n\t- fixed bug on PHP4 version.\n\n1.53.0.TC029 (2007-03-06)\n\t- DejaVu Fonts were added.\n\n1.53.0.TC028 (2007-03-03)\n\t- MultiCell function signature were changed: the $ln parameter were added. Check documentation for further information.\n\t- Greek language were added on example sentences.\n\t- setPrintHeader() and setPrintFooter() functions were added to enable or disable page header and footer.\n\n1.53.0.TC027 (2006-12-14)\n\t- $attr['face'] bug were fixed.\n\t- K_TCPDF_EXTERNAL_CONFIG control where introduced on /config/tcpdf_config.php to use external configuration files.\n\n1.53.0.TC026 (2006-10-28)\n\t- writeHTML function call were fixed on examples.\n\n1.53.0.TC025 (2006-10-27)\n\t- Bugs item #1421290 were fixed (0D - 0A substitution in some characters)\n\t- Bugs item #1573174 were fixed (MultiCell documentation)\n\n1.53.0.TC024 (2006-09-26)\n\t- getPageHeight() function were fixed (bug 1543476).\n\t- fixed missing breaks on closedHTMLTagHandler function (bug 1535263).\n\t- fixed extra spaces on Write function (bug 1535262).\n\n1.53.0.TC023 (2006-08-04)\n\t- paths to barcode directory were fixed.\n\t- documentation were updated.\n\n1.53.0.TC022 (2006-07-16)\n\t- fixed bug: [ 1516858 ] Probs with PHP autoloader and class_exists()\n\n1.53.0.TC021 (2006-07-01)\n\t- HTML attributes with whitespaces are now supported (thanks to Nelson Benitez for his support)\n\n1.53.0.TC020 (2006-06-23)\n\t- code cleanup\n\n1.53.0.TC019 (2006-05-21)\n\t- fixed <strong> and <em> closing tags\n\n1.53.0.TC018 (2006-05-18)\n\t- fixed font names bug\n\n1.53.0.TC017 (2006-05-18)\n\t- the TTF2UFM utility to convert True Type fonts for TCPDF were included on fonts folder.\n\t- new free unicode fonts were included on /fonts/freefont.\n\t- test_unicode.php example were exended.\n\t- parameter $fill were added on Write, writeHTML and writeHTMLCell functions.\n\t- documentation were updated.\n\n1.53.0.TC016 (2006-03-09)\n\t- fixed closing <strong> tag on html parser.\n\n1.53.0.TC016 (2005-08-28)\n\t- fpdf.php and tcpdf.php files were joined in one single class (you can still extend TCPDF with your own class).\n\t- fixed problem when mb_internal_encoding is set.\n\n1.53.0.TC014 (2005-05-29)\n\t- fixed WriteHTMLCell new page issue.\n\n1.53.0.TC013 (2005-05-29)\n\t- fixed WriteHTMLCell across pages.\n\n1.53.0.TC012 (2005-05-29)\n\t- font color attribute bug were fixed.\n\n1.53.0.TC011 (2005-03-31)\n\t- SetFont function were fixed (thank Sjaak Lauwers for bug notice).\n\n1.53.0.TC010 (2005-03-22)\n\t- the html functions were improved (thanks to Manfred Vervuert for bug reporting).\n\n1.53.0.TC009 (2005-03-19)\n\t- a wrong reference to convertColorHexToDec were fixed.\n\n1.53.0.TC008 (2005-02-07)\n\t- removed some extra bytes from PHP files.\n\n1.53.0.TC007 (2005-01-08)\n\t- fill attribute were removed from writeHTMLCell method.\n\n1.53.0.TC006 (2005-01-08)\n\t- the documentation were updated.\n\n1.53.0.TC005 (2005-01-05)\n\t- Steven Wittens's unicode methods were removed.\n\t- All unicode methods were rewritten from scratch.\n\t- TCPDF is now licensed as LGPL.\n\n1.53.0.TC004 (2005-01-04)\n\t- this changelog were added.\n\t- removed commercial fonts for licensing issue.\n\t- Bitstream Vera Fonts were added (http://www.bitstream.com/font_rendering/products/dev_fonts/vera.html).\n\t- Now the AddFont and SetFont functions returns the basic font if the styled version do not exist.\n\nEOF ----------------------------------------------------------------------------\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/LICENSE.TXT",
    "content": "\t\t  GNU LESSER GENERAL PUBLIC LICENSE\n\t\t       Version 2.1, February 1999\n\n Copyright (C) 1991, 1999 Free Software Foundation, Inc.\n     59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\n Everyone is permitted to copy and distribute verbatim copies\n of this license document, but changing it is not allowed.\n\n[This is the first released version of the Lesser GPL.  It also counts\n as the successor of the GNU Library Public License, version 2, hence\n the version number 2.1.]\n\n\t\t\t    Preamble\n\n  The licenses for most software are designed to take away your\nfreedom to share and change it.  By contrast, the GNU General Public\nLicenses are intended to guarantee your freedom to share and change\nfree software--to make sure the software is free for all its users.\n\n  This license, the Lesser General Public License, applies to some\nspecially designated software packages--typically libraries--of the\nFree Software Foundation and other authors who decide to use it.  You\ncan use it too, but we suggest you first think carefully about whether\nthis license or the ordinary General Public License is the better\nstrategy to use in any particular case, based on the explanations below.\n\n  When we speak of free software, we are referring to freedom of use,\nnot price.  Our General Public Licenses are designed to make sure that\nyou have the freedom to distribute copies of free software (and charge\nfor this service if you wish); that you receive source code or can get\nit if you want it; that you can change the software and use pieces of\nit in new free programs; and that you are informed that you can do\nthese things.\n\n  To protect your rights, we need to make restrictions that forbid\ndistributors to deny you these rights or to ask you to surrender these\nrights.  These restrictions translate to certain responsibilities for\nyou if you distribute copies of the library or if you modify it.\n\n  For example, if you distribute copies of the library, whether gratis\nor for a fee, you must give the recipients all the rights that we gave\nyou.  You must make sure that they, too, receive or can get the source\ncode.  If you link other code with the library, you must provide\ncomplete object files to the recipients, so that they can relink them\nwith the library after making changes to the library and recompiling\nit.  And you must show them these terms so they know their rights.\n\n  We protect your rights with a two-step method: (1) we copyright the\nlibrary, and (2) we offer you this license, which gives you legal\npermission to copy, distribute and/or modify the library.\n\n  To protect each distributor, we want to make it very clear that\nthere is no warranty for the free library.  Also, if the library is\nmodified by someone else and passed on, the recipients should know\nthat what they have is not the original version, so that the original\nauthor's reputation will not be affected by problems that might be\nintroduced by others.\n\f\n  Finally, software patents pose a constant threat to the existence of\nany free program.  We wish to make sure that a company cannot\neffectively restrict the users of a free program by obtaining a\nrestrictive license from a patent holder.  Therefore, we insist that\nany patent license obtained for a version of the library must be\nconsistent with the full freedom of use specified in this license.\n\n  Most GNU software, including some libraries, is covered by the\nordinary GNU General Public License.  This license, the GNU Lesser\nGeneral Public License, applies to certain designated libraries, and\nis quite different from the ordinary General Public License.  We use\nthis license for certain libraries in order to permit linking those\nlibraries into non-free programs.\n\n  When a program is linked with a library, whether statically or using\na shared library, the combination of the two is legally speaking a\ncombined work, a derivative of the original library.  The ordinary\nGeneral Public License therefore permits such linking only if the\nentire combination fits its criteria of freedom.  The Lesser General\nPublic License permits more lax criteria for linking other code with\nthe library.\n\n  We call this license the \"Lesser\" General Public License because it\ndoes Less to protect the user's freedom than the ordinary General\nPublic License.  It also provides other free software developers Less\nof an advantage over competing non-free programs.  These disadvantages\nare the reason we use the ordinary General Public License for many\nlibraries.  However, the Lesser license provides advantages in certain\nspecial circumstances.\n\n  For example, on rare occasions, there may be a special need to\nencourage the widest possible use of a certain library, so that it becomes\na de-facto standard.  To achieve this, non-free programs must be\nallowed to use the library.  A more frequent case is that a free\nlibrary does the same job as widely used non-free libraries.  In this\ncase, there is little to gain by limiting the free library to free\nsoftware only, so we use the Lesser General Public License.\n\n  In other cases, permission to use a particular library in non-free\nprograms enables a greater number of people to use a large body of\nfree software.  For example, permission to use the GNU C Library in\nnon-free programs enables many more people to use the whole GNU\noperating system, as well as its variant, the GNU/Linux operating\nsystem.\n\n  Although the Lesser General Public License is Less protective of the\nusers' freedom, it does ensure that the user of a program that is\nlinked with the Library has the freedom and the wherewithal to run\nthat program using a modified version of the Library.\n\n  The precise terms and conditions for copying, distribution and\nmodification follow.  Pay close attention to the difference between a\n\"work based on the library\" and a \"work that uses the library\".  The\nformer contains code derived from the library, whereas the latter must\nbe combined with the library in order to run.\n\f\n\t\t  GNU LESSER GENERAL PUBLIC LICENSE\n   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\n\n  0. This License Agreement applies to any software library or other\nprogram which contains a notice placed by the copyright holder or\nother authorized party saying it may be distributed under the terms of\nthis Lesser General Public License (also called \"this License\").\nEach licensee is addressed as \"you\".\n\n  A \"library\" means a collection of software functions and/or data\nprepared so as to be conveniently linked with application programs\n(which use some of those functions and data) to form executables.\n\n  The \"Library\", below, refers to any such software library or work\nwhich has been distributed under these terms.  A \"work based on the\nLibrary\" means either the Library or any derivative work under\ncopyright law: that is to say, a work containing the Library or a\nportion of it, either verbatim or with modifications and/or translated\nstraightforwardly into another language.  (Hereinafter, translation is\nincluded without limitation in the term \"modification\".)\n\n  \"Source code\" for a work means the preferred form of the work for\nmaking modifications to it.  For a library, complete source code means\nall the source code for all modules it contains, plus any associated\ninterface definition files, plus the scripts used to control compilation\nand installation of the library.\n\n  Activities other than copying, distribution and modification are not\ncovered by this License; they are outside its scope.  The act of\nrunning a program using the Library is not restricted, and output from\nsuch a program is covered only if its contents constitute a work based\non the Library (independent of the use of the Library in a tool for\nwriting it).  Whether that is true depends on what the Library does\nand what the program that uses the Library does.\n  \n  1. You may copy and distribute verbatim copies of the Library's\ncomplete source code as you receive it, in any medium, provided that\nyou conspicuously and appropriately publish on each copy an\nappropriate copyright notice and disclaimer of warranty; keep intact\nall the notices that refer to this License and to the absence of any\nwarranty; and distribute a copy of this License along with the\nLibrary.\n\n  You may charge a fee for the physical act of transferring a copy,\nand you may at your option offer warranty protection in exchange for a\nfee.\n\f\n  2. You may modify your copy or copies of the Library or any portion\nof it, thus forming a work based on the Library, and copy and\ndistribute such modifications or work under the terms of Section 1\nabove, provided that you also meet all of these conditions:\n\n    a) The modified work must itself be a software library.\n\n    b) You must cause the files modified to carry prominent notices\n    stating that you changed the files and the date of any change.\n\n    c) You must cause the whole of the work to be licensed at no\n    charge to all third parties under the terms of this License.\n\n    d) If a facility in the modified Library refers to a function or a\n    table of data to be supplied by an application program that uses\n    the facility, other than as an argument passed when the facility\n    is invoked, then you must make a good faith effort to ensure that,\n    in the event an application does not supply such function or\n    table, the facility still operates, and performs whatever part of\n    its purpose remains meaningful.\n\n    (For example, a function in a library to compute square roots has\n    a purpose that is entirely well-defined independent of the\n    application.  Therefore, Subsection 2d requires that any\n    application-supplied function or table used by this function must\n    be optional: if the application does not supply it, the square\n    root function must still compute square roots.)\n\nThese requirements apply to the modified work as a whole.  If\nidentifiable sections of that work are not derived from the Library,\nand can be reasonably considered independent and separate works in\nthemselves, then this License, and its terms, do not apply to those\nsections when you distribute them as separate works.  But when you\ndistribute the same sections as part of a whole which is a work based\non the Library, the distribution of the whole must be on the terms of\nthis License, whose permissions for other licensees extend to the\nentire whole, and thus to each and every part regardless of who wrote\nit.\n\nThus, it is not the intent of this section to claim rights or contest\nyour rights to work written entirely by you; rather, the intent is to\nexercise the right to control the distribution of derivative or\ncollective works based on the Library.\n\nIn addition, mere aggregation of another work not based on the Library\nwith the Library (or with a work based on the Library) on a volume of\na storage or distribution medium does not bring the other work under\nthe scope of this License.\n\n  3. You may opt to apply the terms of the ordinary GNU General Public\nLicense instead of this License to a given copy of the Library.  To do\nthis, you must alter all the notices that refer to this License, so\nthat they refer to the ordinary GNU General Public License, version 2,\ninstead of to this License.  (If a newer version than version 2 of the\nordinary GNU General Public License has appeared, then you can specify\nthat version instead if you wish.)  Do not make any other change in\nthese notices.\n\f\n  Once this change is made in a given copy, it is irreversible for\nthat copy, so the ordinary GNU General Public License applies to all\nsubsequent copies and derivative works made from that copy.\n\n  This option is useful when you wish to copy part of the code of\nthe Library into a program that is not a library.\n\n  4. You may copy and distribute the Library (or a portion or\nderivative of it, under Section 2) in object code or executable form\nunder the terms of Sections 1 and 2 above provided that you accompany\nit with the complete corresponding machine-readable source code, which\nmust be distributed under the terms of Sections 1 and 2 above on a\nmedium customarily used for software interchange.\n\n  If distribution of object code is made by offering access to copy\nfrom a designated place, then offering equivalent access to copy the\nsource code from the same place satisfies the requirement to\ndistribute the source code, even though third parties are not\ncompelled to copy the source along with the object code.\n\n  5. A program that contains no derivative of any portion of the\nLibrary, but is designed to work with the Library by being compiled or\nlinked with it, is called a \"work that uses the Library\".  Such a\nwork, in isolation, is not a derivative work of the Library, and\ntherefore falls outside the scope of this License.\n\n  However, linking a \"work that uses the Library\" with the Library\ncreates an executable that is a derivative of the Library (because it\ncontains portions of the Library), rather than a \"work that uses the\nlibrary\".  The executable is therefore covered by this License.\nSection 6 states terms for distribution of such executables.\n\n  When a \"work that uses the Library\" uses material from a header file\nthat is part of the Library, the object code for the work may be a\nderivative work of the Library even though the source code is not.\nWhether this is true is especially significant if the work can be\nlinked without the Library, or if the work is itself a library.  The\nthreshold for this to be true is not precisely defined by law.\n\n  If such an object file uses only numerical parameters, data\nstructure layouts and accessors, and small macros and small inline\nfunctions (ten lines or less in length), then the use of the object\nfile is unrestricted, regardless of whether it is legally a derivative\nwork.  (Executables containing this object code plus portions of the\nLibrary will still fall under Section 6.)\n\n  Otherwise, if the work is a derivative of the Library, you may\ndistribute the object code for the work under the terms of Section 6.\nAny executables containing that work also fall under Section 6,\nwhether or not they are linked directly with the Library itself.\n\f\n  6. As an exception to the Sections above, you may also combine or\nlink a \"work that uses the Library\" with the Library to produce a\nwork containing portions of the Library, and distribute that work\nunder terms of your choice, provided that the terms permit\nmodification of the work for the customer's own use and reverse\nengineering for debugging such modifications.\n\n  You must give prominent notice with each copy of the work that the\nLibrary is used in it and that the Library and its use are covered by\nthis License.  You must supply a copy of this License.  If the work\nduring execution displays copyright notices, you must include the\ncopyright notice for the Library among them, as well as a reference\ndirecting the user to the copy of this License.  Also, you must do one\nof these things:\n\n    a) Accompany the work with the complete corresponding\n    machine-readable source code for the Library including whatever\n    changes were used in the work (which must be distributed under\n    Sections 1 and 2 above); and, if the work is an executable linked\n    with the Library, with the complete machine-readable \"work that\n    uses the Library\", as object code and/or source code, so that the\n    user can modify the Library and then relink to produce a modified\n    executable containing the modified Library.  (It is understood\n    that the user who changes the contents of definitions files in the\n    Library will not necessarily be able to recompile the application\n    to use the modified definitions.)\n\n    b) Use a suitable shared library mechanism for linking with the\n    Library.  A suitable mechanism is one that (1) uses at run time a\n    copy of the library already present on the user's computer system,\n    rather than copying library functions into the executable, and (2)\n    will operate properly with a modified version of the library, if\n    the user installs one, as long as the modified version is\n    interface-compatible with the version that the work was made with.\n\n    c) Accompany the work with a written offer, valid for at\n    least three years, to give the same user the materials\n    specified in Subsection 6a, above, for a charge no more\n    than the cost of performing this distribution.\n\n    d) If distribution of the work is made by offering access to copy\n    from a designated place, offer equivalent access to copy the above\n    specified materials from the same place.\n\n    e) Verify that the user has already received a copy of these\n    materials or that you have already sent this user a copy.\n\n  For an executable, the required form of the \"work that uses the\nLibrary\" must include any data and utility programs needed for\nreproducing the executable from it.  However, as a special exception,\nthe materials to be distributed need not include anything that is\nnormally distributed (in either source or binary form) with the major\ncomponents (compiler, kernel, and so on) of the operating system on\nwhich the executable runs, unless that component itself accompanies\nthe executable.\n\n  It may happen that this requirement contradicts the license\nrestrictions of other proprietary libraries that do not normally\naccompany the operating system.  Such a contradiction means you cannot\nuse both them and the Library together in an executable that you\ndistribute.\n\f\n  7. You may place library facilities that are a work based on the\nLibrary side-by-side in a single library together with other library\nfacilities not covered by this License, and distribute such a combined\nlibrary, provided that the separate distribution of the work based on\nthe Library and of the other library facilities is otherwise\npermitted, and provided that you do these two things:\n\n    a) Accompany the combined library with a copy of the same work\n    based on the Library, uncombined with any other library\n    facilities.  This must be distributed under the terms of the\n    Sections above.\n\n    b) Give prominent notice with the combined library of the fact\n    that part of it is a work based on the Library, and explaining\n    where to find the accompanying uncombined form of the same work.\n\n  8. You may not copy, modify, sublicense, link with, or distribute\nthe Library except as expressly provided under this License.  Any\nattempt otherwise to copy, modify, sublicense, link with, or\ndistribute the Library is void, and will automatically terminate your\nrights under this License.  However, parties who have received copies,\nor rights, from you under this License will not have their licenses\nterminated so long as such parties remain in full compliance.\n\n  9. You are not required to accept this License, since you have not\nsigned it.  However, nothing else grants you permission to modify or\ndistribute the Library or its derivative works.  These actions are\nprohibited by law if you do not accept this License.  Therefore, by\nmodifying or distributing the Library (or any work based on the\nLibrary), you indicate your acceptance of this License to do so, and\nall its terms and conditions for copying, distributing or modifying\nthe Library or works based on it.\n\n  10. Each time you redistribute the Library (or any work based on the\nLibrary), the recipient automatically receives a license from the\noriginal licensor to copy, distribute, link with or modify the Library\nsubject to these terms and conditions.  You may not impose any further\nrestrictions on the recipients' exercise of the rights granted herein.\nYou are not responsible for enforcing compliance by third parties with\nthis License.\n\f\n  11. If, as a consequence of a court judgment or allegation of patent\ninfringement or for any other reason (not limited to patent issues),\nconditions are imposed on you (whether by court order, agreement or\notherwise) that contradict the conditions of this License, they do not\nexcuse you from the conditions of this License.  If you cannot\ndistribute so as to satisfy simultaneously your obligations under this\nLicense and any other pertinent obligations, then as a consequence you\nmay not distribute the Library at all.  For example, if a patent\nlicense would not permit royalty-free redistribution of the Library by\nall those who receive copies directly or indirectly through you, then\nthe only way you could satisfy both it and this License would be to\nrefrain entirely from distribution of the Library.\n\nIf any portion of this section is held invalid or unenforceable under any\nparticular circumstance, the balance of the section is intended to apply,\nand the section as a whole is intended to apply in other circumstances.\n\nIt is not the purpose of this section to induce you to infringe any\npatents or other property right claims or to contest validity of any\nsuch claims; this section has the sole purpose of protecting the\nintegrity of the free software distribution system which is\nimplemented by public license practices.  Many people have made\ngenerous contributions to the wide range of software distributed\nthrough that system in reliance on consistent application of that\nsystem; it is up to the author/donor to decide if he or she is willing\nto distribute software through any other system and a licensee cannot\nimpose that choice.\n\nThis section is intended to make thoroughly clear what is believed to\nbe a consequence of the rest of this License.\n\n  12. If the distribution and/or use of the Library is restricted in\ncertain countries either by patents or by copyrighted interfaces, the\noriginal copyright holder who places the Library under this License may add\nan explicit geographical distribution limitation excluding those countries,\nso that distribution is permitted only in or among countries not thus\nexcluded.  In such case, this License incorporates the limitation as if\nwritten in the body of this License.\n\n  13. The Free Software Foundation may publish revised and/or new\nversions of the Lesser General Public License from time to time.\nSuch new versions will be similar in spirit to the present version,\nbut may differ in detail to address new problems or concerns.\n\nEach version is given a distinguishing version number.  If the Library\nspecifies a version number of this License which applies to it and\n\"any later version\", you have the option of following the terms and\nconditions either of that version or of any later version published by\nthe Free Software Foundation.  If the Library does not specify a\nlicense version number, you may choose any version ever published by\nthe Free Software Foundation.\n\f\n  14. If you wish to incorporate parts of the Library into other free\nprograms whose distribution conditions are incompatible with these,\nwrite to the author to ask for permission.  For software which is\ncopyrighted by the Free Software Foundation, write to the Free\nSoftware Foundation; we sometimes make exceptions for this.  Our\ndecision will be guided by the two goals of preserving the free status\nof all derivatives of our free software and of promoting the sharing\nand reuse of software generally.\n\n\t\t\t    NO WARRANTY\n\n  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO\nWARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.\nEXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR\nOTHER PARTIES PROVIDE THE LIBRARY \"AS IS\" WITHOUT WARRANTY OF ANY\nKIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\nPURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE\nLIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME\nTHE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n\n  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN\nWRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY\nAND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU\nFOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR\nCONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE\nLIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING\nRENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A\nFAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF\nSUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH\nDAMAGES.\n\n\t\t     END OF TERMS AND CONDITIONS\n\f\n           How to Apply These Terms to Your New Libraries\n\n  If you develop a new library, and you want it to be of the greatest\npossible use to the public, we recommend making it free software that\neveryone can redistribute and change.  You can do so by permitting\nredistribution under these terms (or, alternatively, under the terms of the\nordinary General Public License).\n\n  To apply these terms, attach the following notices to the library.  It is\nsafest to attach them to the start of each source file to most effectively\nconvey the exclusion of warranty; and each file should have at least the\n\"copyright\" line and a pointer to where the full notice is found.\n\n    <one line to give the library's name and a brief idea of what it does.>\n    Copyright (C) <year>  <name of author>\n\n    This library is free software; you can redistribute it and/or\n    modify it under the terms of the GNU Lesser General Public\n    License as published by the Free Software Foundation; either\n    version 2.1 of the License, or (at your option) any later version.\n\n    This library is distributed in the hope that it will be useful,\n    but WITHOUT ANY WARRANTY; without even the implied warranty of\n    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\n    Lesser General Public License for more details.\n\n    You should have received a copy of the GNU Lesser General Public\n    License along with this library; if not, write to the Free Software\n    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\n\nAlso add information on how to contact you by electronic and paper mail.\n\nYou should also get your employer (if you work as a programmer) or your\nschool, if any, to sign a \"copyright disclaimer\" for the library, if\nnecessary.  Here is a sample; alter the names:\n\n  Yoyodyne, Inc., hereby disclaims all copyright interest in the\n  library `Frob' (a library for tweaking knobs) written by James Random Hacker.\n\n  <signature of Ty Coon>, 1 April 1990\n  Ty Coon, President of Vice\n\nThat's all there is to it!\n\n\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/README.TXT",
    "content": "TCPDF - README\r\n============================================================\r\n\r\nIF YOU'D LIKE TO SUPPORT TCPDF, PLEASE CONSIDER MAKING A \r\nDONATION: \r\nhttp://sourceforge.net/donate/index.php?group_id=128076\r\n\r\n------------------------------------------------------------\r\n\r\nName: TCPDF\r\nVersion: 5.0.002\r\nRelease date: 2010-05-06\r\nAuthor:\tNicola Asuni\r\n\t\r\nCopyright (c) 2001-2010:\r\n\tNicola Asuni\r\n\tTecnick.com s.r.l.\r\n\tVia Della Pace, 11\r\n\t09044 Quartucciu (CA)\r\n\tITALY\r\n\twww.tecnick.com\r\n\t\r\nURLs:\r\n\thttp://www.tcpdf.org\r\n\thttp://www.sourceforge.net/projects/tcpdf\r\n\t\r\nDescription:\r\n\tTCPDF is a PHP class for generating PDF files on-the-fly without requiring external extensions.\r\n\tTCPDF has been originally derived from the Public Domain FPDF class by Olivier Plathey (http://www.fpdf.org).\r\n\t\r\nMain Features:\r\n//  * no external libraries are required for the basic functions;\n//  * all ISO page formats, custom page formats, custom margins and units of measure;\n//  * UTF-8 Unicode and Right-To-Left languages;\n//  * TrueTypeUnicode, OpenTypeUnicode, TrueType, OpenType, Type1 and CID-0 fonts;\n//  * methods to publish some XHTML code, Javascript and Forms;\n//  * images, graphic (geometric figures) and transformation methods;\n//  * supports JPEG, PNG and SVG images natively, all images supported by GD (GD, GD2, GD2PART, GIF, JPEG, PNG, BMP, XBM, XPM) and all images supported via ImagMagick (http://www.imagemagick.org/www/formats.html)\n//  * 1D and 2D barcodes: CODE 39, ANSI MH10.8M-1983, USD-3, 3 of 9, CODE 93, USS-93, Standard 2 of 5, Interleaved 2 of 5, CODE 128 A/B/C, 2 and 5 Digits UPC-Based Extention, EAN 8, EAN 13, UPC-A, UPC-E, MSI, POSTNET, PLANET, RMS4CC (Royal Mail 4-state Customer Code), CBC (Customer Bar Code), KIX (Klant index - Customer index), Intelligent Mail Barcode, Onecode, USPS-B-3200, CODABAR, CODE 11, PHARMACODE, PHARMACODE TWO-TRACKS, QR-Code;\n//  * Grayscale, RGB, CMYK, Spot Colors and Transparencies;\n//  * automatic page header and footer management;\n//  * document encryption and digital signature certifications;\n//  * transactions to UNDO commands;\n//  * PDF annotations, including links, text and file attachments;\n//  * text rendering modes (fill, stroke and clipping);\n//  * multiple columns mode;\n//  * bookmarks and table of content;\n//  * text hyphenation;\n//  * automatic page break, line break and text alignments including justification;\n//  * automatic page numbering and page groups;\n//  * move and delete pages;\n//  * page compression (requires php-zlib extension);\n\r\n\r\nInstallation (full instructions on http://www.tcpdf.org):\r\n\t1. copy the folder on your Web server\r\n\t2. set your installation path and other parameters on the config/tcpdf_config.php\r\n\t3. call the examples/example_001.php page with your browser to see an example\r\n\r\nSource Code Documentation:\r\n\tdoc/index.html\r\n\t\r\nFor Additional Documentation:\r\n\thttp://www.tcpdf.org\r\n\r\nLicense\r\n\tCopyright (C) 2002-2010 Nicola Asuni - Tecnick.com S.r.l.\r\n\t\r\n\tThis program is free software: you can redistribute it and/or modify\r\n\tit under the terms of the GNU Lesser General Public License as published by\r\n\tthe Free Software Foundation, either version 2.1 of the License, or\r\n\t(at your option) any later version.\r\n\t\r\n\tThis program is distributed in the hope that it will be useful,\r\n\tbut WITHOUT ANY WARRANTY; without even the implied warranty of\r\n\tMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r\n\tGNU Lesser General Public License for more details.\r\n\t\r\n\tYou should have received a copy of the GNU Lesser General Public License\r\n\talong with this program.  If not, see <http://www.gnu.org/licenses/>.\r\n\t\r\n\tSee LICENSE.TXT file for more information.\r\n\t\r\n============================================================\r\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/barcodes.php",
    "content": "<?php\n//============================================================+\n// File name   : barcodes.php\n// Begin       : 2008-06-09\n// Last Update : 2009-08-26\n// Version     : 1.0.009\n// License     : GNU LGPL (http://www.gnu.org/copyleft/lesser.html)\n// \t----------------------------------------------------------------------------\n//  Copyright (C) 2008-2009 Nicola Asuni - Tecnick.com S.r.l.\n// \t\n// \tThis program is free software: you can redistribute it and/or modify\n// \tit under the terms of the GNU Lesser General Public License as published by\n// \tthe Free Software Foundation, either version 2.1 of the License, or\n// \t(at your option) any later version.\n// \t\n// \tThis program is distributed in the hope that it will be useful,\n// \tbut WITHOUT ANY WARRANTY; without even the implied warranty of\n// \tMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n// \tGNU Lesser General Public License for more details.\n// \t\n// \tYou should have received a copy of the GNU Lesser General Public License\n// \talong with this program.  If not, see <http://www.gnu.org/licenses/>.\n// \t\n// \tSee LICENSE.TXT file for more information.\n//  ----------------------------------------------------------------------------\n//\n// Description : PHP class to creates array representations for \n//               common 1D barcodes to be used with TCPDF.\n//\n// Author: Nicola Asuni\n//\n// (c) Copyright:\n//               Nicola Asuni\n//               Tecnick.com S.r.l.\n//               Via della Pace, 11\n//               09044 Quartucciu (CA)\n//               ITALY\n//               www.tecnick.com\n//               info@tecnick.com\n//============================================================+\n\n/**\n * PHP class to creates array representations for common 1D barcodes to be used with TCPDF.\n * @package com.tecnick.tcpdf\n * @abstract Functions for generating string representation of common 1D barcodes.\n * @author Nicola Asuni\n * @copyright 2008-2009 Nicola Asuni - Tecnick.com S.r.l (www.tecnick.com) Via Della Pace, 11 - 09044 - Quartucciu (CA) - ITALY - www.tecnick.com - info@tecnick.com\n * @link http://www.tcpdf.org\n * @license http://www.gnu.org/copyleft/lesser.html LGPL\n * @version 1.0.008\n */\n\n\t/**\n\t* PHP class to creates array representations for common 1D barcodes to be used with TCPDF (http://www.tcpdf.org).<br>\n\t* @name TCPDFBarcode\n\t* @package com.tecnick.tcpdf\n\t* @version 1.0.008\n\t* @author Nicola Asuni\n\t* @link http://www.tcpdf.org\n\t* @license http://www.gnu.org/copyleft/lesser.html LGPL\n\t*/\nclass TCPDFBarcode {\n\t\n\t/**\n\t * @var array representation of barcode.\n\t * @access protected\n\t */\n\tprotected $barcode_array;\n\t\t\n\t/**\n\t * This is the class constructor. \n\t * Return an array representations for common 1D barcodes:<ul>\n\t * <li>$arrcode['code'] code to be printed on text label</li>\n\t * <li>$arrcode['maxh'] max bar height</li>\n\t * <li>$arrcode['maxw'] max bar width</li>\n\t * <li>$arrcode['bcode'][$k] single bar or space in $k position</li>\n\t * <li>$arrcode['bcode'][$k]['t'] bar type: true = bar, false = space.</li>\n\t * <li>$arrcode['bcode'][$k]['w'] bar width in units.</li>\n\t * <li>$arrcode['bcode'][$k]['h'] bar height in units.</li>\n\t * <li>$arrcode['bcode'][$k]['p'] bar top position (0 = top, 1 = middle)</li></ul>\n\t * @param string $code code to print\n \t * @param string $type type of barcode: <ul><li>C39 : CODE 39 - ANSI MH10.8M-1983 - USD-3 - 3 of 9.</li><li>C39+ : CODE 39 with checksum</li><li>C39E : CODE 39 EXTENDED</li><li>C39E+ : CODE 39 EXTENDED + CHECKSUM</li><li>C93 : CODE 93 - USS-93</li><li>S25 : Standard 2 of 5</li><li>S25+ : Standard 2 of 5 + CHECKSUM</li><li>I25 : Interleaved 2 of 5</li><li>I25+ : Interleaved 2 of 5 + CHECKSUM</li><li>C128A : CODE 128 A</li><li>C128B : CODE 128 B</li><li>C128C : CODE 128 C</li><li>EAN2 : 2-Digits UPC-Based Extention</li><li>EAN5 : 5-Digits UPC-Based Extention</li><li>EAN8 : EAN 8</li><li>EAN13 : EAN 13</li><li>UPCA : UPC-A</li><li>UPCE : UPC-E</li><li>MSI : MSI (Variation of Plessey code)</li><li>MSI+ : MSI + CHECKSUM (modulo 11)</li><li>POSTNET : POSTNET</li><li>PLANET : PLANET</li><li>RMS4CC : RMS4CC (Royal Mail 4-state Customer Code) - CBC (Customer Bar Code)</li><li>KIX : KIX (Klant index - Customer index)</li><li>IMB: Intelligent Mail Barcode - Onecode - USPS-B-3200</li><li>CODABAR : CODABAR</li><li>CODE11 : CODE 11</li><li>PHARMA : PHARMACODE</li><li>PHARMA2T : PHARMACODE TWO-TRACKS</li></ul>\n\t */\n\tpublic function __construct($code, $type) {\n\t\t$this->setBarcode($code, $type);\n\t}\n\t\n\t/** \n\t * Return an array representations of barcode.\n \t * @return array\n\t */\n\tpublic function getBarcodeArray() {\n\t\treturn $this->barcode_array;\n\t}\n\t\n\t/** \n\t * Set the barcode.\n\t * @param string $code code to print\n \t * @param string $type type of barcode: <ul><li>C39 : CODE 39 - ANSI MH10.8M-1983 - USD-3 - 3 of 9.</li><li>C39+ : CODE 39 with checksum</li><li>C39E : CODE 39 EXTENDED</li><li>C39E+ : CODE 39 EXTENDED + CHECKSUM</li><li>C93 : CODE 93 - USS-93</li><li>S25 : Standard 2 of 5</li><li>S25+ : Standard 2 of 5 + CHECKSUM</li><li>I25 : Interleaved 2 of 5</li><li>I25+ : Interleaved 2 of 5 + CHECKSUM</li><li>C128A : CODE 128 A</li><li>C128B : CODE 128 B</li><li>C128C : CODE 128 C</li><li>EAN2 : 2-Digits UPC-Based Extention</li><li>EAN5 : 5-Digits UPC-Based Extention</li><li>EAN8 : EAN 8</li><li>EAN13 : EAN 13</li><li>UPCA : UPC-A</li><li>UPCE : UPC-E</li><li>MSI : MSI (Variation of Plessey code)</li><li>MSI+ : MSI + CHECKSUM (modulo 11)</li><li>POSTNET : POSTNET</li><li>PLANET : PLANET</li><li>RMS4CC : RMS4CC (Royal Mail 4-state Customer Code) - CBC (Customer Bar Code)</li><li>KIX : KIX (Klant index - Customer index)</li><li>IMB: Intelligent Mail Barcode - Onecode - USPS-B-3200</li><li>CODABAR : CODABAR</li><li>CODE11 : CODE 11</li><li>PHARMA : PHARMACODE</li><li>PHARMA2T : PHARMACODE TWO-TRACKS</li></ul>\n \t * @return array\n\t */\n\tpublic function setBarcode($code, $type) {\n\t\tswitch (strtoupper($type)) {\n\t\t\tcase 'C39': { // CODE 39 - ANSI MH10.8M-1983 - USD-3 - 3 of 9.\n\t\t\t\t$arrcode = $this->barcode_code39($code, false, false);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'C39+': { // CODE 39 with checksum\n\t\t\t\t$arrcode = $this->barcode_code39($code, false, true);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'C39E': { // CODE 39 EXTENDED\n\t\t\t\t$arrcode = $this->barcode_code39($code, true, false);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'C39E+': { // CODE 39 EXTENDED + CHECKSUM\n\t\t\t\t$arrcode = $this->barcode_code39($code, true, true);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'C93': { // CODE 93 - USS-93\n\t\t\t\t$arrcode = $this->barcode_code93($code);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'S25': { // Standard 2 of 5\n\t\t\t\t$arrcode = $this->barcode_s25($code, false);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'S25+': { // Standard 2 of 5 + CHECKSUM\n\t\t\t\t$arrcode = $this->barcode_s25($code, true);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'I25': { // Interleaved 2 of 5\n\t\t\t\t$arrcode = $this->barcode_i25($code, false);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'I25+': { // Interleaved 2 of 5 + CHECKSUM\n\t\t\t\t$arrcode = $this->barcode_i25($code, true);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'C128A': { // CODE 128 A\n\t\t\t\t$arrcode = $this->barcode_c128($code, 'A');\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'C128B': { // CODE 128 B\n\t\t\t\t$arrcode = $this->barcode_c128($code, 'B');\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'C128C': { // CODE 128 C\n\t\t\t\t$arrcode = $this->barcode_c128($code, 'C');\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'EAN2': { // 2-Digits UPC-Based Extention\n\t\t\t\t$arrcode = $this->barcode_eanext($code, 2);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'EAN5': { // 5-Digits UPC-Based Extention\n\t\t\t\t$arrcode = $this->barcode_eanext($code, 5);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'EAN8': { // EAN 8\n\t\t\t\t$arrcode = $this->barcode_eanupc($code, 8);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'EAN13': { // EAN 13\n\t\t\t\t$arrcode = $this->barcode_eanupc($code, 13);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'UPCA': { // UPC-A\n\t\t\t\t$arrcode = $this->barcode_eanupc($code, 12);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'UPCE': { // UPC-E\n\t\t\t\t$arrcode = $this->barcode_eanupc($code, 6);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'MSI': { // MSI (Variation of Plessey code)\n\t\t\t\t$arrcode = $this->barcode_msi($code, false);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'MSI+': { // MSI + CHECKSUM (modulo 11)\n\t\t\t\t$arrcode = $this->barcode_msi($code, true);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'POSTNET': { // POSTNET\n\t\t\t\t$arrcode = $this->barcode_postnet($code, false);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'PLANET': { // PLANET\n\t\t\t\t$arrcode = $this->barcode_postnet($code, true);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'RMS4CC': { // RMS4CC (Royal Mail 4-state Customer Code) - CBC (Customer Bar Code)\n\t\t\t\t$arrcode = $this->barcode_rms4cc($code, false);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'KIX': { // KIX (Klant index - Customer index)\n\t\t\t\t$arrcode = $this->barcode_rms4cc($code, true);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'IMB': { // IMB - Intelligent Mail Barcode - Onecode - USPS-B-3200\n\t\t\t\t$arrcode = $this->barcode_imb($code);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'CODABAR': { // CODABAR\n\t\t\t\t$arrcode = $this->barcode_codabar($code);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'CODE11': { // CODE 11\n\t\t\t\t$arrcode = $this->barcode_code11($code);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'PHARMA': { // PHARMACODE\n\t\t\t\t$arrcode = $this->barcode_pharmacode($code);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'PHARMA2T': { // PHARMACODE TWO-TRACKS\n\t\t\t\t$arrcode = $this->barcode_pharmacode2t($code);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tdefault: {\n\t\t\t\t$this->barcode_array = false;\n\t\t\t\t$arrcode = false;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\t$this->barcode_array = $arrcode;\n\t}\n\t\n\t/**\n\t * CODE 39 - ANSI MH10.8M-1983 - USD-3 - 3 of 9.\n\t * General-purpose code in very wide use world-wide\n\t * @param string $code code to represent.\n\t * @param boolean $checksum if true add a checksum to the code\n\t * @return array barcode representation.\n\t * @access protected\n\t */\n\tprotected function barcode_code39($code, $extended=false, $checksum=false) {\n\t\t$chr['0'] = '111221211';\n\t\t$chr['1'] = '211211112';\n\t\t$chr['2'] = '112211112';\n\t\t$chr['3'] = '212211111';\n\t\t$chr['4'] = '111221112';\n\t\t$chr['5'] = '211221111';\n\t\t$chr['6'] = '112221111';\n\t\t$chr['7'] = '111211212';\n\t\t$chr['8'] = '211211211';\n\t\t$chr['9'] = '112211211';\n\t\t$chr['A'] = '211112112';\n\t\t$chr['B'] = '112112112';\n\t\t$chr['C'] = '212112111';\n\t\t$chr['D'] = '111122112';\n\t\t$chr['E'] = '211122111';\n\t\t$chr['F'] = '112122111';\n\t\t$chr['G'] = '111112212';\n\t\t$chr['H'] = '211112211';\n\t\t$chr['I'] = '112112211';\n\t\t$chr['J'] = '111122211';\n\t\t$chr['K'] = '211111122';\n\t\t$chr['L'] = '112111122';\n\t\t$chr['M'] = '212111121';\n\t\t$chr['N'] = '111121122';\n\t\t$chr['O'] = '211121121';\n\t\t$chr['P'] = '112121121';\n\t\t$chr['Q'] = '111111222';\n\t\t$chr['R'] = '211111221';\n\t\t$chr['S'] = '112111221';\n\t\t$chr['T'] = '111121221';\n\t\t$chr['U'] = '221111112';\n\t\t$chr['V'] = '122111112';\n\t\t$chr['W'] = '222111111';\n\t\t$chr['X'] = '121121112';\n\t\t$chr['Y'] = '221121111';\n\t\t$chr['Z'] = '122121111';\n\t\t$chr['-'] = '121111212';\n\t\t$chr['.'] = '221111211';\n\t\t$chr[' '] = '122111211';\n\t\t$chr['$'] = '121212111';\n\t\t$chr['/'] = '121211121';\n\t\t$chr['+'] = '121112121';\n\t\t$chr['%'] = '111212121';\n\t\t$chr['*'] = '121121211';\n\t\t\n\t\t$code = strtoupper($code);\n\t\tif ($extended) {\n\t\t\t// extended mode\n\t\t\t$code = $this->encode_code39_ext($code);\n\t\t}\n\t\tif ($code === false) {\n\t\t\treturn false;\n\t\t}\n\t\tif ($checksum) {\n\t\t\t// checksum\n\t\t\t$code .= $this->checksum_code39($code);\n\t\t}\n\t\t// add start and stop codes\n\t\t$code = '*'.$code.'*';\n\t\t\n\t\t$bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array());\n\t\t$k = 0;\n\t\t$clen = strlen($code);\n\t\tfor ($i = 0; $i < $clen; ++$i) {\n\t\t\t$char = $code{$i};\n\t\t\tif(!isset($chr[$char])) {\n\t\t\t\t// invalid character\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tfor ($j = 0; $j < 9; ++$j) {\n\t\t\t\tif (($j % 2) == 0) {\n\t\t\t\t\t$t = true; // bar\n\t\t\t\t} else {\n\t\t\t\t\t$t = false; // space\n\t\t\t\t}\n\t\t\t\t$w = $chr[$char]{$j};\n\t\t\t\t$bararray['bcode'][$k] = array('t' => $t, 'w' => $w, 'h' => 1, 'p' => 0);\n\t\t\t\t$bararray['maxw'] += $w;\n\t\t\t\t++$k;\n\t\t\t}\n\t\t\t$bararray['bcode'][$k] = array('t' => false, 'w' => 1, 'h' => 1, 'p' => 0);\n\t\t\t$bararray['maxw'] += 1;\n\t\t\t++$k;\n\t\t}\n\t\treturn $bararray;\n\t}\n\t\n\t/**\n\t * Encode a string to be used for CODE 39 Extended mode.\n\t * @param string $code code to represent.\n\t * @return encoded string.\n\t * @access protected\n\t */\n\tprotected function encode_code39_ext($code) {\n\t\t$encode = array(\n\t\t\tchr(0) => '%U', chr(1) => '$A', chr(2) => '$B', chr(3) => '$C',\n\t\t\tchr(4) => '$D', chr(5) => '$E', chr(6) => '$F', chr(7) => '$G',\n\t\t\tchr(8) => '$H', chr(9) => '$I', chr(10) => '$J', chr(11) => '£K',\n\t\t\tchr(12) => '$L', chr(13) => '$M', chr(14) => '$N', chr(15) => '$O',\n\t\t\tchr(16) => '$P', chr(17) => '$Q', chr(18) => '$R', chr(19) => '$S',\n\t\t\tchr(20) => '$T', chr(21) => '$U', chr(22) => '$V', chr(23) => '$W',\n\t\t\tchr(24) => '$X', chr(25) => '$Y', chr(26) => '$Z', chr(27) => '%A',\n\t\t\tchr(28) => '%B', chr(29) => '%C', chr(30) => '%D', chr(31) => '%E',\n\t\t\tchr(32) => ' ', chr(33) => '/A', chr(34) => '/B', chr(35) => '/C',\n\t\t\tchr(36) => '/D', chr(37) => '/E', chr(38) => '/F', chr(39) => '/G',\n\t\t\tchr(40) => '/H', chr(41) => '/I', chr(42) => '/J', chr(43) => '/K',\n\t\t\tchr(44) => '/L', chr(45) => '-', chr(46) => '.', chr(47) => '/O',\n\t\t\tchr(48) => '0', chr(49) => '1', chr(50) => '2', chr(51) => '3',\n\t\t\tchr(52) => '4', chr(53) => '5', chr(54) => '6', chr(55) => '7',\n\t\t\tchr(56) => '8', chr(57) => '9', chr(58) => '/Z', chr(59) => '%F',\n\t\t\tchr(60) => '%G', chr(61) => '%H', chr(62) => '%I', chr(63) => '%J',\n\t\t\tchr(64) => '%V', chr(65) => 'A', chr(66) => 'B', chr(67) => 'C',\n\t\t\tchr(68) => 'D', chr(69) => 'E', chr(70) => 'F', chr(71) => 'G',\n\t\t\tchr(72) => 'H', chr(73) => 'I', chr(74) => 'J', chr(75) => 'K',\n\t\t\tchr(76) => 'L', chr(77) => 'M', chr(78) => 'N', chr(79) => 'O',\n\t\t\tchr(80) => 'P', chr(81) => 'Q', chr(82) => 'R', chr(83) => 'S',\n\t\t\tchr(84) => 'T', chr(85) => 'U', chr(86) => 'V', chr(87) => 'W',\n\t\t\tchr(88) => 'X', chr(89) => 'Y', chr(90) => 'Z', chr(91) => '%K',\n\t\t\tchr(92) => '%L', chr(93) => '%M', chr(94) => '%N', chr(95) => '%O',\n\t\t\tchr(96) => '%W', chr(97) => '+A', chr(98) => '+B', chr(99) => '+C',\n\t\t\tchr(100) => '+D', chr(101) => '+E', chr(102) => '+F', chr(103) => '+G',\n\t\t\tchr(104) => '+H', chr(105) => '+I', chr(106) => '+J', chr(107) => '+K',\n\t\t\tchr(108) => '+L', chr(109) => '+M', chr(110) => '+N', chr(111) => '+O',\n\t\t\tchr(112) => '+P', chr(113) => '+Q', chr(114) => '+R', chr(115) => '+S',\n\t\t\tchr(116) => '+T', chr(117) => '+U', chr(118) => '+V', chr(119) => '+W',\n\t\t\tchr(120) => '+X', chr(121) => '+Y', chr(122) => '+Z', chr(123) => '%P',\n\t\t\tchr(124) => '%Q', chr(125) => '%R', chr(126) => '%S', chr(127) => '%T');\n\t\t$code_ext = '';\n\t\t$clen = strlen($code);\n\t\tfor ($i = 0 ; $i < $clen; ++$i) {\n\t\t\tif (ord($code{$i}) > 127) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t$code_ext .= $encode[$code{$i}];\n\t\t}\n\t\treturn $code_ext;\n\t}\n\t\n\t/**\n\t * Calculate CODE 39 checksum (modulo 43).\n\t * @param string $code code to represent.\n\t * @return char checksum.\n\t * @access protected\n\t */\n\tprotected function checksum_code39($code) {\n\t\t$chars = array(\n\t\t\t'0', '1', '2', '3', '4', '5', '6', '7', '8', '9',\n\t\t\t'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K',\n\t\t\t'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V',\n\t\t\t'W', 'X', 'Y', 'Z', '-', '.', ' ', '$', '/', '+', '%');\n\t\t$sum = 0;\n\t\t$clen = strlen($code);\n\t\tfor ($i = 0 ; $i < $clen; ++$i) {\n\t\t\t$k = array_keys($chars, $code{$i});\n\t\t\t$sum += $k[0];\n\t\t}\n\t\t$j = ($sum % 43);\n\t\treturn $chars[$j];\n\t}\n\t\n\t/**\n\t * CODE 93 - USS-93\n\t * Compact code similar to Code 39\n\t * @param string $code code to represent.\n\t * @param boolean $checksum if true add a checksum to the code\n\t * @return array barcode representation.\n\t * @access protected\n\t */\n\tprotected function barcode_code93($code) {\n\t\t$chr['0'] = '131112';\n\t\t$chr['1'] = '111213';\n\t\t$chr['2'] = '111312';\n\t\t$chr['3'] = '111411';\n\t\t$chr['4'] = '121113';\n\t\t$chr['5'] = '121212';\n\t\t$chr['6'] = '121311';\n\t\t$chr['7'] = '111114';\n\t\t$chr['8'] = '131211';\n\t\t$chr['9'] = '141111';\n\t\t$chr['A'] = '211113';\n\t\t$chr['B'] = '211212';\n\t\t$chr['C'] = '211311';\n\t\t$chr['D'] = '221112';\n\t\t$chr['E'] = '221211';\n\t\t$chr['F'] = '231111';\n\t\t$chr['G'] = '112113';\n\t\t$chr['H'] = '112212';\n\t\t$chr['I'] = '112311';\n\t\t$chr['J'] = '122112';\n\t\t$chr['K'] = '132111';\n\t\t$chr['L'] = '111123';\n\t\t$chr['M'] = '111222';\n\t\t$chr['N'] = '111321';\n\t\t$chr['O'] = '121122';\n\t\t$chr['P'] = '131121';\n\t\t$chr['Q'] = '212112';\n\t\t$chr['R'] = '212211';\n\t\t$chr['S'] = '211122';\n\t\t$chr['T'] = '211221';\n\t\t$chr['U'] = '221121';\n\t\t$chr['V'] = '222111';\n\t\t$chr['W'] = '112122';\n\t\t$chr['X'] = '112221';\n\t\t$chr['Y'] = '122121';\n\t\t$chr['Z'] = '123111';\n\t\t$chr['-'] = '121131';\n\t\t$chr['.'] = '311112';\n\t\t$chr[' '] = '311211';\n\t\t$chr['$'] = '321111';\n\t\t$chr['/'] = '112131';\n\t\t$chr['+'] = '113121';\n\t\t$chr['%'] = '211131';\n\t\t$chr[128] = '121221'; // ($)\n\t\t$chr[129] = '311121'; // (/)\n\t\t$chr[130] = '122211'; // (+)\n\t\t$chr[131] = '312111'; // (%)\n\t\t$chr['*'] = '111141';\n\t\t$code = strtoupper($code);\n\t\t$encode = array(\n\t\t\tchr(0) => chr(131).'U', chr(1) => chr(128).'A', chr(2) => chr(128).'B', chr(3) => chr(128).'C',\n\t\t\tchr(4) => chr(128).'D', chr(5) => chr(128).'E', chr(6) => chr(128).'F', chr(7) => chr(128).'G',\n\t\t\tchr(8) => chr(128).'H', chr(9) => chr(128).'I', chr(10) => chr(128).'J', chr(11) => '£K',\n\t\t\tchr(12) => chr(128).'L', chr(13) => chr(128).'M', chr(14) => chr(128).'N', chr(15) => chr(128).'O',\n\t\t\tchr(16) => chr(128).'P', chr(17) => chr(128).'Q', chr(18) => chr(128).'R', chr(19) => chr(128).'S',\n\t\t\tchr(20) => chr(128).'T', chr(21) => chr(128).'U', chr(22) => chr(128).'V', chr(23) => chr(128).'W',\n\t\t\tchr(24) => chr(128).'X', chr(25) => chr(128).'Y', chr(26) => chr(128).'Z', chr(27) => chr(131).'A',\n\t\t\tchr(28) => chr(131).'B', chr(29) => chr(131).'C', chr(30) => chr(131).'D', chr(31) => chr(131).'E',\n\t\t\tchr(32) => ' ', chr(33) => chr(129).'A', chr(34) => chr(129).'B', chr(35) => chr(129).'C',\n\t\t\tchr(36) => chr(129).'D', chr(37) => chr(129).'E', chr(38) => chr(129).'F', chr(39) => chr(129).'G',\n\t\t\tchr(40) => chr(129).'H', chr(41) => chr(129).'I', chr(42) => chr(129).'J', chr(43) => chr(129).'K',\n\t\t\tchr(44) => chr(129).'L', chr(45) => '-', chr(46) => '.', chr(47) => chr(129).'O',\n\t\t\tchr(48) => '0', chr(49) => '1', chr(50) => '2', chr(51) => '3',\n\t\t\tchr(52) => '4', chr(53) => '5', chr(54) => '6', chr(55) => '7',\n\t\t\tchr(56) => '8', chr(57) => '9', chr(58) => chr(129).'Z', chr(59) => chr(131).'F',\n\t\t\tchr(60) => chr(131).'G', chr(61) => chr(131).'H', chr(62) => chr(131).'I', chr(63) => chr(131).'J',\n\t\t\tchr(64) => chr(131).'V', chr(65) => 'A', chr(66) => 'B', chr(67) => 'C',\n\t\t\tchr(68) => 'D', chr(69) => 'E', chr(70) => 'F', chr(71) => 'G',\n\t\t\tchr(72) => 'H', chr(73) => 'I', chr(74) => 'J', chr(75) => 'K',\n\t\t\tchr(76) => 'L', chr(77) => 'M', chr(78) => 'N', chr(79) => 'O',\n\t\t\tchr(80) => 'P', chr(81) => 'Q', chr(82) => 'R', chr(83) => 'S',\n\t\t\tchr(84) => 'T', chr(85) => 'U', chr(86) => 'V', chr(87) => 'W',\n\t\t\tchr(88) => 'X', chr(89) => 'Y', chr(90) => 'Z', chr(91) => chr(131).'K',\n\t\t\tchr(92) => chr(131).'L', chr(93) => chr(131).'M', chr(94) => chr(131).'N', chr(95) => chr(131).'O',\n\t\t\tchr(96) => chr(131).'W', chr(97) => chr(130).'A', chr(98) => chr(130).'B', chr(99) => chr(130).'C',\n\t\t\tchr(100) => chr(130).'D', chr(101) => chr(130).'E', chr(102) => chr(130).'F', chr(103) => chr(130).'G',\n\t\t\tchr(104) => chr(130).'H', chr(105) => chr(130).'I', chr(106) => chr(130).'J', chr(107) => chr(130).'K',\n\t\t\tchr(108) => chr(130).'L', chr(109) => chr(130).'M', chr(110) => chr(130).'N', chr(111) => chr(130).'O',\n\t\t\tchr(112) => chr(130).'P', chr(113) => chr(130).'Q', chr(114) => chr(130).'R', chr(115) => chr(130).'S',\n\t\t\tchr(116) => chr(130).'T', chr(117) => chr(130).'U', chr(118) => chr(130).'V', chr(119) => chr(130).'W',\n\t\t\tchr(120) => chr(130).'X', chr(121) => chr(130).'Y', chr(122) => chr(130).'Z', chr(123) => chr(131).'P',\n\t\t\tchr(124) => chr(131).'Q', chr(125) => chr(131).'R', chr(126) => chr(131).'S', chr(127) => chr(131).'T');\n\t\t$code_ext = '';\n\t\t$clen = strlen($code);\n\t\tfor ($i = 0 ; $i < $clen; ++$i) {\n\t\t\tif (ord($code{$i}) > 127) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t$code_ext .= $encode[$code{$i}];\n\t\t}\n\t\t// checksum\n\t\t$code .= $this->checksum_code93($code);\n\t\t// add start and stop codes\n\t\t$code = '*'.$code.'*';\n\t\t$bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array());\n\t\t$k = 0;\n\t\t$clen = strlen($code);\n\t\tfor ($i = 0; $i < $clen; ++$i) {\n\t\t\t$char = $code{$i};\n\t\t\tif(!isset($chr[$char])) {\n\t\t\t\t// invalid character\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tfor ($j = 0; $j < 6; ++$j) {\n\t\t\t\tif (($j % 2) == 0) {\n\t\t\t\t\t$t = true; // bar\n\t\t\t\t} else {\n\t\t\t\t\t$t = false; // space\n\t\t\t\t}\n\t\t\t\t$w = $chr[$char]{$j};\n\t\t\t\t$bararray['bcode'][$k] = array('t' => $t, 'w' => $w, 'h' => 1, 'p' => 0);\n\t\t\t\t$bararray['maxw'] += $w;\n\t\t\t\t++$k;\n\t\t\t}\n\t\t}\n\t\t$bararray['bcode'][$k] = array('t' => true, 'w' => 1, 'h' => 1, 'p' => 0);\n\t\t$bararray['maxw'] += 1;\n\t\t++$k;\t\t\n\t\treturn $bararray;\n\t}\n\t\n\t/**\n\t * Calculate CODE 93 checksum (modulo 47).\n\t * @param string $code code to represent.\n\t * @return string checksum code.\n\t * @access protected\n\t */\n\tprotected function checksum_code93($code) {\n\t\t$chars = array(\n\t\t\t'0', '1', '2', '3', '4', '5', '6', '7', '8', '9',\n\t\t\t'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K',\n\t\t\t'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V',\n\t\t\t'W', 'X', 'Y', 'Z', '-', '.', ' ', '$', '/', '+', '%');\n\t\t// translate special characters\n\t\t$code = strtr($code, chr(128).chr(129).chr(130).chr(131), '$/+%');\t\n\t\t$len = strlen($code);\n\t\t// calculate check digit C\n\t\t$p = 1;\n\t\t$check = 0;\n\t\tfor ($i = ($len - 1); $i >= 0; --$i) {\n\t\t\t$k = array_keys($chars, $code{$i});\n\t\t\t$check += ($k[0] * $p);\n\t\t\t++$p;\n\t\t\tif ($p > 20) {\n\t\t\t\t$p = 1;\n\t\t\t}\n\t\t}\n\t\t$check %= 47;\n\t\t$c = $chars[$check];\n\t\t$code .= $c;\n\t\t// calculate check digit K\n\t\t$p = 1;\n\t\t$check = 0;\n\t\tfor ($i = $len; $i >= 0; --$i) {\n\t\t\t$k = array_keys($chars, $code{$i});\n\t\t\t$check += ($k[0] * $p);\n\t\t\t++$p;\n\t\t\tif ($p > 15) {\n\t\t\t\t$p = 1;\n\t\t\t}\n\t\t}\n\t\t$check %= 47;\n\t\t$k = $chars[$check];\n\t\treturn $c.$k;\n\t}\n\t\n\t/**\n\t * Checksum for standard 2 of 5 barcodes.\n\t * @param string $code code to process.\n\t * @return int checksum.\n\t * @access protected\n\t */\n\tprotected function checksum_s25($code) {\n\t\t$len = strlen($code);\n\t\t$sum = 0;\n\t\tfor ($i = 0; $i < $len; $i+=2) {\n\t\t\t$sum += $code{$i};\n\t\t}\n\t\t$sum *= 3;\n\t\tfor ($i = 1; $i < $len; $i+=2) {\n\t\t\t$sum += ($code{$i});\n\t\t}\n\t\t$r = $sum % 10;\n\t\tif($r > 0) {\n\t\t\t$r = (10 - $r);\n\t\t}\n\t\treturn $r;\n\t}\n\t\n\t/**\n\t * MSI.\n\t * Variation of Plessey code, with similar applications \n\t * Contains digits (0 to 9) and encodes the data only in the width of bars.\n\t * @param string $code code to represent.\n\t * @param boolean $checksum if true add a checksum to the code (modulo 11)\n\t * @return array barcode representation.\n\t * @access protected\n\t */\n\tprotected function barcode_msi($code, $checksum=false) {\n\t\t$chr['0'] = '100100100100';\n\t\t$chr['1'] = '100100100110';\n\t\t$chr['2'] = '100100110100';\n\t\t$chr['3'] = '100100110110';\n\t\t$chr['4'] = '100110100100';\n\t\t$chr['5'] = '100110100110';\n\t\t$chr['6'] = '100110110100';\n\t\t$chr['7'] = '100110110110';\n\t\t$chr['8'] = '110100100100';\n\t\t$chr['9'] = '110100100110';\n\t\t$chr['A'] = '110100110100';\n\t\t$chr['B'] = '110100110110';\n\t\t$chr['C'] = '110110100100';\n\t\t$chr['D'] = '110110100110';\n\t\t$chr['E'] = '110110110100';\n\t\t$chr['F'] = '110110110110';\n\t\tif ($checksum) {\n\t\t\t// add checksum\n\t\t\t$clen = strlen($code);\n\t\t\t$p = 2;\n\t\t\t$check = 0;\n\t\t\tfor ($i = ($clen - 1); $i >= 0; --$i) {\n\t\t\t\t$check += (hexdec($code{$i}) * $p);\n\t\t\t\t++$p;\n\t\t\t\tif ($p > 7) {\n\t\t\t\t\t$p = 2;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$check %= 11;\n\t\t\tif ($check > 0) {\n\t\t\t\t$check = 11 - $check;\n\t\t\t}\n\t\t\t$code .= $check;\n\t\t}\n\t\t$seq = '110'; // left guard\n\t\t$clen = strlen($code);\n\t\tfor ($i = 0; $i < $clen; ++$i) {\n\t\t\t$digit = $code{$i};\n\t\t\tif (!isset($chr[$digit])) {\n\t\t\t\t// invalid character\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t$seq .= $chr[$digit];\n\t\t}\t\t\n\t\t$seq .= '1001'; // right guard\n\t\t$bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array());\n\t\treturn $this->binseq_to_array($seq, $bararray);\n\t}\n\t\n\t/**\n\t * Standard 2 of 5 barcodes.\n\t * Used in airline ticket marking, photofinishing\n\t * Contains digits (0 to 9) and encodes the data only in the width of bars.\n\t * @param string $code code to represent.\n\t * @param boolean $checksum if true add a checksum to the code\n\t * @return array barcode representation.\n\t * @access protected\n\t */\n\tprotected function barcode_s25($code, $checksum=false) {\n\t\t$chr['0'] = '10101110111010';\n\t\t$chr['1'] = '11101010101110';\n\t\t$chr['2'] = '10111010101110';\n\t\t$chr['3'] = '11101110101010';\n\t\t$chr['4'] = '10101110101110';\n\t\t$chr['5'] = '11101011101010';\n\t\t$chr['6'] = '10111011101010';\n\t\t$chr['7'] = '10101011101110';\n\t\t$chr['8'] = '10101110111010';\n\t\t$chr['9'] = '10111010111010';\n\t\tif ($checksum) {\n\t\t\t// add checksum\n\t\t\t$code .= $this->checksum_s25($code);\n\t\t}\n\t\tif((strlen($code) % 2) != 0) {\n\t\t\t// add leading zero if code-length is odd\n\t\t\t$code = '0'.$code;\n\t\t}\n\t\t$seq = '11011010';\n\t\t$clen = strlen($code);\n\t\tfor ($i = 0; $i < $clen; ++$i) {\n\t\t\t$digit = $code{$i};\n\t\t\tif (!isset($chr[$digit])) {\n\t\t\t\t// invalid character\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t$seq .= $chr[$digit];\n\t\t}\t\t\n\t\t$seq .= '1101011';\n\t\t$bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array());\n\t\treturn $this->binseq_to_array($seq, $bararray);\n\t}\n\t\n\t/**\n\t * Convert binary barcode sequence to TCPDF barcode array\n\t * @param string $seq barcode as binary sequence\n\t * òparam array $bararray TCPDF barcode array to fill up\n\t * @return array barcode representation.\n\t * @access protected\n\t */\n\tprotected function binseq_to_array($seq, $bararray) {\n\t\t$len = strlen($seq);\n\t\t$w = 0;\n\t\t$k = 0;\n\t\tfor ($i = 0; $i < $len; ++$i) {\n\t\t\t$w += 1;\n\t\t\tif (($i == ($len - 1)) OR (($i < ($len - 1)) AND ($seq{$i} != $seq{($i+1)}))) {\n\t\t\t\tif ($seq{$i} == '1') {\n\t\t\t\t\t$t = true; // bar\n\t\t\t\t} else {\n\t\t\t\t\t$t = false; // space\n\t\t\t\t}\n\t\t\t\t$bararray['bcode'][$k] = array('t' => $t, 'w' => $w, 'h' => 1, 'p' => 0);\n\t\t\t\t$bararray['maxw'] += $w;\n\t\t\t\t++$k;\n\t\t\t\t$w = 0;\n\t\t\t}\n\t\t}\n\t\treturn $bararray;\n\t}\n\t\n\t/**\n\t * Interleaved 2 of 5 barcodes.\n\t * Compact numeric code, widely used in industry, air cargo\n\t * Contains digits (0 to 9) and encodes the data in the width of both bars and spaces.\n\t * @param string $code code to represent.\n\t * @param boolean $checksum if true add a checksum to the code\n\t * @return array barcode representation.\n\t * @access protected\n\t */\n\tprotected function barcode_i25($code, $checksum=false) {\n\t\t$chr['0'] = '11221';\n\t\t$chr['1'] = '21112';\n\t\t$chr['2'] = '12112';\n\t\t$chr['3'] = '22111';\n\t\t$chr['4'] = '11212';\n\t\t$chr['5'] = '21211';\n\t\t$chr['6'] = '12211';\n\t\t$chr['7'] = '11122';\n\t\t$chr['8'] = '21121';\n\t\t$chr['9'] = '12121';\n\t\t$chr['A'] = '11';\n\t\t$chr['Z'] = '21';\n\t\tif ($checksum) {\n\t\t\t// add checksum\n\t\t\t$code .= $this->checksum_s25($code);\n\t\t}\n\t\tif((strlen($code) % 2) != 0) {\n\t\t\t// add leading zero if code-length is odd\n\t\t\t$code = '0'.$code;\n\t\t}\n\t\t// add start and stop codes\n\t\t$code = 'AA'.strtolower($code).'ZA';\n\t\t\t\n\t\t$bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array());\n\t\t$k = 0;\n\t\t$clen = strlen($code);\n\t\tfor ($i = 0; $i < $clen; $i = ($i + 2)) {\n\t\t\t$char_bar = $code{$i};\n\t\t\t$char_space = $code{$i+1};\n\t\t\tif((!isset($chr[$char_bar])) OR (!isset($chr[$char_space]))) {\n\t\t\t\t// invalid character\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t// create a bar-space sequence\n\t\t\t$seq = '';\n\t\t\t$chrlen = strlen($chr[$char_bar]);\n\t\t\tfor ($s = 0; $s < $chrlen; $s++){\n\t\t\t\t$seq .= $chr[$char_bar]{$s} . $chr[$char_space]{$s};\n\t\t\t}\n\t\t\t$seqlen = strlen($seq);\n\t\t\tfor ($j = 0; $j < $seqlen; ++$j) {\n\t\t\t\tif (($j % 2) == 0) {\n\t\t\t\t\t$t = true; // bar\n\t\t\t\t} else {\n\t\t\t\t\t$t = false; // space\n\t\t\t\t}\n\t\t\t\t$w = $seq{$j};\n\t\t\t\t$bararray['bcode'][$k] = array('t' => $t, 'w' => $w, 'h' => 1, 'p' => 0);\n\t\t\t\t$bararray['maxw'] += $w;\n\t\t\t\t++$k;\n\t\t\t}\n\t\t}\n\t\treturn $bararray;\n\t}\n\t\n\t/**\n\t * C128 barcodes. \n\t * Very capable code, excellent density, high reliability; in very wide use world-wide\n\t * @param string $code code to represent.\n\t * @param string $type barcode type: A, B or C\n\t * @return array barcode representation.\n\t * @access protected\n\t */\n\tprotected function barcode_c128($code, $type='B') {\n\t\t$chr = array(\n\t\t\t'212222', /* 00 */\n\t\t\t'222122', /* 01 */\n\t\t\t'222221', /* 02 */\n\t\t\t'121223', /* 03 */\n\t\t\t'121322', /* 04 */\n\t\t\t'131222', /* 05 */\n\t\t\t'122213', /* 06 */\n\t\t\t'122312', /* 07 */\n\t\t\t'132212', /* 08 */\n\t\t\t'221213', /* 09 */\n\t\t\t'221312', /* 10 */\n\t\t\t'231212', /* 11 */\n\t\t\t'112232', /* 12 */\n\t\t\t'122132', /* 13 */\n\t\t\t'122231', /* 14 */\n\t\t\t'113222', /* 15 */\n\t\t\t'123122', /* 16 */\n\t\t\t'123221', /* 17 */\n\t\t\t'223211', /* 18 */\n\t\t\t'221132', /* 19 */\n\t\t\t'221231', /* 20 */\n\t\t\t'213212', /* 21 */\n\t\t\t'223112', /* 22 */\n\t\t\t'312131', /* 23 */\n\t\t\t'311222', /* 24 */\n\t\t\t'321122', /* 25 */\n\t\t\t'321221', /* 26 */\n\t\t\t'312212', /* 27 */\n\t\t\t'322112', /* 28 */\n\t\t\t'322211', /* 29 */\n\t\t\t'212123', /* 30 */\n\t\t\t'212321', /* 31 */\n\t\t\t'232121', /* 32 */\n\t\t\t'111323', /* 33 */\n\t\t\t'131123', /* 34 */\n\t\t\t'131321', /* 35 */\n\t\t\t'112313', /* 36 */\n\t\t\t'132113', /* 37 */\n\t\t\t'132311', /* 38 */\n\t\t\t'211313', /* 39 */\n\t\t\t'231113', /* 40 */\n\t\t\t'231311', /* 41 */\n\t\t\t'112133', /* 42 */\n\t\t\t'112331', /* 43 */\n\t\t\t'132131', /* 44 */\n\t\t\t'113123', /* 45 */\n\t\t\t'113321', /* 46 */\n\t\t\t'133121', /* 47 */\n\t\t\t'313121', /* 48 */\n\t\t\t'211331', /* 49 */\n\t\t\t'231131', /* 50 */\n\t\t\t'213113', /* 51 */\n\t\t\t'213311', /* 52 */\n\t\t\t'213131', /* 53 */\n\t\t\t'311123', /* 54 */\n\t\t\t'311321', /* 55 */\n\t\t\t'331121', /* 56 */\n\t\t\t'312113', /* 57 */\n\t\t\t'312311', /* 58 */\n\t\t\t'332111', /* 59 */\n\t\t\t'314111', /* 60 */\n\t\t\t'221411', /* 61 */\n\t\t\t'431111', /* 62 */\n\t\t\t'111224', /* 63 */\n\t\t\t'111422', /* 64 */\n\t\t\t'121124', /* 65 */\n\t\t\t'121421', /* 66 */\n\t\t\t'141122', /* 67 */\n\t\t\t'141221', /* 68 */\n\t\t\t'112214', /* 69 */\n\t\t\t'112412', /* 70 */\n\t\t\t'122114', /* 71 */\n\t\t\t'122411', /* 72 */\n\t\t\t'142112', /* 73 */\n\t\t\t'142211', /* 74 */\n\t\t\t'241211', /* 75 */\n\t\t\t'221114', /* 76 */\n\t\t\t'413111', /* 77 */\n\t\t\t'241112', /* 78 */\n\t\t\t'134111', /* 79 */\n\t\t\t'111242', /* 80 */\n\t\t\t'121142', /* 81 */\n\t\t\t'121241', /* 82 */\n\t\t\t'114212', /* 83 */\n\t\t\t'124112', /* 84 */\n\t\t\t'124211', /* 85 */\n\t\t\t'411212', /* 86 */\n\t\t\t'421112', /* 87 */\n\t\t\t'421211', /* 88 */\n\t\t\t'212141', /* 89 */\n\t\t\t'214121', /* 90 */\n\t\t\t'412121', /* 91 */\n\t\t\t'111143', /* 92 */\n\t\t\t'111341', /* 93 */\n\t\t\t'131141', /* 94 */\n\t\t\t'114113', /* 95 */\n\t\t\t'114311', /* 96 */\n\t\t\t'411113', /* 97 */\n\t\t\t'411311', /* 98 */\n\t\t\t'113141', /* 99 */\n\t\t\t'114131', /* 100 */\n\t\t\t'311141', /* 101 */\n\t\t\t'411131', /* 102 */\n\t\t\t'211412', /* 103 START A */\n\t\t\t'211214', /* 104 START B  */\n\t\t\t'211232', /* 105 START C  */\n\t\t\t'233111', /* STOP */\n\t\t\t'200000'  /* END */\n\t\t);\n\t\t$keys = '';\n\t\tswitch(strtoupper($type)) {\n\t\t\tcase 'A': {\n\t\t\t\t$startid = 103;\n\t\t\t\t$keys = ' !\"#$%&\\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_';\n\t\t\t\tfor ($i = 0; $i < 32; ++$i) {\n\t\t\t\t\t$keys .= chr($i);\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'B': {\n\t\t\t\t$startid = 104;\n\t\t\t\t$keys = ' !\"#$%&\\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~'.chr(127);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 'C': {\n\t\t\t\t$startid = 105;\n\t\t\t\t$keys = '';\n\t\t\t\tif ((strlen($code) % 2) != 0) {\n\t\t\t\t\t// The length of barcode value must be even ($code). You must pad the number with zeros\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tfor ($i = 0; $i <= 99; ++$i) {\n\t\t\t\t\t$keys .= chr($i);\n\t\t\t\t}\n\t\t\t\t$new_code = '';\n\t\t\t\t$hclen = (strlen($code) / 2);\n\t\t\t\tfor ($i = 0; $i < $hclen; ++$i) {\n\t\t\t\t\t$new_code .= chr(intval($code{(2 * $i)}.$code{(2 * $i + 1)}));\n\t\t\t\t}\n\t\t\t\t$code = $new_code;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tdefault: {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\t// calculate check character\n\t\t$sum = $startid;\n\t\t$clen = strlen($code);\n\t\tfor ($i = 0; $i < $clen; ++$i) {\n\t\t\t$sum +=  (strpos($keys, $code{$i}) * ($i+1));\n\t\t}\n\t\t$check = ($sum % 103);\n\t\t// add start, check and stop codes\n\t\t$code = chr($startid).$code.chr($check).chr(106).chr(107);\n\t\t$bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array());\n\t\t$k = 0;\n\t\t$len = strlen($code);\n\t\tfor ($i = 0; $i < $len; ++$i) {\n\t\t\t$ck = strpos($keys, $code{$i});\n\t\t\tif (($i == 0) OR ($i > ($len-4))) {\n\t\t\t\t$char_num = ord($code{$i});\n\t\t\t\t$seq = $chr[$char_num];\n\t\t\t} elseif(($ck >= 0) AND isset($chr[$ck])) {\n\t\t\t\t\t$seq = $chr[$ck];\n\t\t\t} else {\n\t\t\t\t// invalid character\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tfor ($j = 0; $j < 6; ++$j) {\n\t\t\t\tif (($j % 2) == 0) {\n\t\t\t\t\t$t = true; // bar\n\t\t\t\t} else {\n\t\t\t\t\t$t = false; // space\n\t\t\t\t}\n\t\t\t\t$w = $seq{$j};\n\t\t\t\t$bararray['bcode'][$k] = array('t' => $t, 'w' => $w, 'h' => 1, 'p' => 0);\n\t\t\t\t$bararray['maxw'] += $w;\n\t\t\t\t++$k;\n\t\t\t}\n\t\t}\n\t\treturn $bararray;\t\t\n\t}\n\t\n\t/**\n\t * EAN13 and UPC-A barcodes.\n\t * EAN13: European Article Numbering international retail product code\n\t * UPC-A: Universal product code seen on almost all retail products in the USA and Canada\n\t * UPC-E: Short version of UPC symbol\n\t * @param string $code code to represent.\n\t * @param string $len barcode type: 6 = UPC-E, 8 = EAN8, 13 = EAN13, 12 = UPC-A\n\t * @return array barcode representation.\n\t * @access protected\n\t */\n\tprotected function barcode_eanupc($code, $len=13) {\n\t\t$upce = false;\n\t\tif ($len == 6) {\n\t\t\t$len = 12; // UPC-A\n\t\t\t$upce = true; // UPC-E mode\n\t\t}\n\t\t$data_len = $len - 1;\n\t\t//Padding\n\t\t$code = str_pad($code, $data_len, '0', STR_PAD_LEFT);\n\t\t$code_len = strlen($code);\n\t\t// calculate check digit\n\t\t$sum_a = 0;\n\t\tfor ($i = 1; $i < $data_len; $i+=2) {\n\t\t\t$sum_a += $code{$i};\n\t\t}\n\t\tif ($len > 12) {\n\t\t\t$sum_a *= 3;\n\t\t}\n\t\t$sum_b = 0;\n\t\tfor ($i = 0; $i < $data_len; $i+=2) {\n\t\t\t$sum_b += ($code{$i});\n\t\t}\n\t\tif ($len < 13) {\n\t\t\t$sum_b *= 3;\n\t\t}\n\t\t$r = ($sum_a + $sum_b) % 10;\n\t\tif($r > 0) {\n\t\t\t$r = (10 - $r);\n\t\t}\n\t\tif ($code_len == $data_len) {\n\t\t\t// add check digit\n\t\t\t$code .= $r;\n\t\t} elseif ($r !== intval($code{$data_len})) {\n\t\t\t// wrong checkdigit\n\t\t\treturn false;\n\t\t}\n\t\tif ($len == 12) {\n\t\t\t// UPC-A\n\t\t\t$code = '0'.$code;\n\t\t\t++$len;\n\t\t}\n\t\tif ($upce) {\n\t\t\t// convert UPC-A to UPC-E\n\t\t\t$tmp = substr($code, 4, 3);\n\t\t\tif (($tmp == '000') OR ($tmp == '100') OR ($tmp == '200')) {\n\t\t\t\t// manufacturer code ends in 000, 100, or 200\n\t\t\t\t$upce_code = substr($code, 2, 2).substr($code, 9, 3).substr($code, 4, 1);\n\t\t\t} else {\n\t\t\t\t$tmp = substr($code, 5, 2);\n\t\t\t\tif ($tmp == '00') {\n\t\t\t\t\t// manufacturer code ends in 00\n\t\t\t\t\t$upce_code = substr($code, 2, 3).substr($code, 10, 2).'3';\n\t\t\t\t} else {\n\t\t\t\t\t$tmp = substr($code, 6, 1);\n\t\t\t\t\tif ($tmp == '0') {\n\t\t\t\t\t\t// manufacturer code ends in 0\n\t\t\t\t\t\t$upce_code = substr($code, 2, 4).substr($code, 11, 1).'4';\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// manufacturer code does not end in zero\n\t\t\t\t\t\t$upce_code = substr($code, 2, 5).substr($code, 11, 1);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t//Convert digits to bars\n\t\t$codes = array(\n\t\t\t'A'=>array( // left odd parity\n\t\t\t\t'0'=>'0001101',\n\t\t\t\t'1'=>'0011001',\n\t\t\t\t'2'=>'0010011',\n\t\t\t\t'3'=>'0111101',\n\t\t\t\t'4'=>'0100011',\n\t\t\t\t'5'=>'0110001',\n\t\t\t\t'6'=>'0101111',\n\t\t\t\t'7'=>'0111011',\n\t\t\t\t'8'=>'0110111',\n\t\t\t\t'9'=>'0001011'),\n\t\t\t'B'=>array( // left even parity\n\t\t\t\t'0'=>'0100111',\n\t\t\t\t'1'=>'0110011',\n\t\t\t\t'2'=>'0011011',\n\t\t\t\t'3'=>'0100001',\n\t\t\t\t'4'=>'0011101',\n\t\t\t\t'5'=>'0111001',\n\t\t\t\t'6'=>'0000101',\n\t\t\t\t'7'=>'0010001',\n\t\t\t\t'8'=>'0001001',\n\t\t\t\t'9'=>'0010111'),\n\t\t\t'C'=>array( // right\n\t\t\t\t'0'=>'1110010',\n\t\t\t\t'1'=>'1100110',\n\t\t\t\t'2'=>'1101100',\n\t\t\t\t'3'=>'1000010',\n\t\t\t\t'4'=>'1011100',\n\t\t\t\t'5'=>'1001110',\n\t\t\t\t'6'=>'1010000',\n\t\t\t\t'7'=>'1000100',\n\t\t\t\t'8'=>'1001000',\n\t\t\t\t'9'=>'1110100')\n\t\t);\n\t\t$parities = array(\n\t\t\t'0'=>array('A','A','A','A','A','A'),\n\t\t\t'1'=>array('A','A','B','A','B','B'),\n\t\t\t'2'=>array('A','A','B','B','A','B'),\n\t\t\t'3'=>array('A','A','B','B','B','A'),\n\t\t\t'4'=>array('A','B','A','A','B','B'),\n\t\t\t'5'=>array('A','B','B','A','A','B'),\n\t\t\t'6'=>array('A','B','B','B','A','A'),\n\t\t\t'7'=>array('A','B','A','B','A','B'),\n\t\t\t'8'=>array('A','B','A','B','B','A'),\n\t\t\t'9'=>array('A','B','B','A','B','A')\n\t\t);\n\t\t$upce_parities = array();\n\t\t$upce_parities[0] = array(\n\t\t\t'0'=>array('B','B','B','A','A','A'),\n\t\t\t'1'=>array('B','B','A','B','A','A'),\n\t\t\t'2'=>array('B','B','A','A','B','A'),\n\t\t\t'3'=>array('B','B','A','A','A','B'),\n\t\t\t'4'=>array('B','A','B','B','A','A'),\n\t\t\t'5'=>array('B','A','A','B','B','A'),\n\t\t\t'6'=>array('B','A','A','A','B','B'),\n\t\t\t'7'=>array('B','A','B','A','B','A'),\n\t\t\t'8'=>array('B','A','B','A','A','B'),\n\t\t\t'9'=>array('B','A','A','B','A','B')\n\t\t);\n\t\t$upce_parities[1] = array(\n\t\t\t'0'=>array('A','A','A','B','B','B'),\n\t\t\t'1'=>array('A','A','B','A','B','B'),\n\t\t\t'2'=>array('A','A','B','B','A','B'),\n\t\t\t'3'=>array('A','A','B','B','B','A'),\n\t\t\t'4'=>array('A','B','A','A','B','B'),\n\t\t\t'5'=>array('A','B','B','A','A','B'),\n\t\t\t'6'=>array('A','B','B','B','A','A'),\n\t\t\t'7'=>array('A','B','A','B','A','B'),\n\t\t\t'8'=>array('A','B','A','B','B','A'),\n\t\t\t'9'=>array('A','B','B','A','B','A')\n\t\t);\n\t\t$k = 0;\n\t\t$seq = '101'; // left guard bar\n\t\tif ($upce) {\n\t\t\t$bararray = array('code' => $upce_code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array());\n\t\t\t$p = $upce_parities[$code{1}][$r];\n\t\t\tfor ($i = 0; $i < 6; ++$i) {\n\t\t\t\t$seq .= $codes[$p[$i]][$upce_code{$i}];\n\t\t\t}\n\t\t\t$seq .= '010101'; // right guard bar\n\t\t} else {\n\t\t\t$bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array());\n\t\t\t$half_len = ceil($len / 2);\n\t\t\tif ($len == 8) {\n\t\t\t\tfor ($i = 0; $i < $half_len; ++$i) {\n\t\t\t\t\t$seq .= $codes['A'][$code{$i}];\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t$p = $parities[$code{0}];\n\t\t\t\tfor ($i = 1; $i < $half_len; ++$i) {\n\t\t\t\t\t$seq .= $codes[$p[$i-1]][$code{$i}];\n\t\t\t\t}\n\t\t\t}\n\t\t\t$seq .= '01010'; // center guard bar\n\t\t\tfor ($i = $half_len; $i < $len; ++$i) {\n\t\t\t\t$seq .= $codes['C'][$code{$i}];\n\t\t\t}\n\t\t\t$seq .= '101'; // right guard bar\n\t\t}\n\t\t$clen = strlen($seq);\n\t\t$w = 0;\n\t\tfor ($i = 0; $i < $clen; ++$i) {\n\t\t\t$w += 1;\n\t\t\tif (($i == ($clen - 1)) OR (($i < ($clen - 1)) AND ($seq{$i} != $seq{($i+1)}))) {\n\t\t\t\tif ($seq{$i} == '1') {\n\t\t\t\t\t$t = true; // bar\n\t\t\t\t} else {\n\t\t\t\t\t$t = false; // space\n\t\t\t\t}\n\t\t\t\t$bararray['bcode'][$k] = array('t' => $t, 'w' => $w, 'h' => 1, 'p' => 0);\n\t\t\t\t$bararray['maxw'] += $w;\n\t\t\t\t++$k;\n\t\t\t\t$w = 0;\n\t\t\t}\n\t\t}\n\t\treturn $bararray;\n\t}\n\t\n\t/**\n\t * UPC-Based Extentions\n\t * 2-Digit Ext.: Used to indicate magazines and newspaper issue numbers\n\t * 5-Digit Ext.: Used to mark suggested retail price of books\n\t * @param string $code code to represent.\n\t * @param string $len barcode type: 2 = 2-Digit, 5 = 5-Digit\n\t * @return array barcode representation.\n\t * @access protected\n\t */\n\tprotected function barcode_eanext($code, $len=5) {\n\t\t//Padding\n\t\t$code = str_pad($code, $len, '0', STR_PAD_LEFT);\n\t\t// calculate check digit\n\t\tif ($len == 2) {\n\t\t\t$r = $code % 4;\n\t\t} elseif ($len == 5) {\n\t\t\t$r = (3 * ($code{0} + $code{2} + $code{4})) + (9 * ($code{1} + $code{3}));\n\t\t\t$r %= 10;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t\t//Convert digits to bars\n\t\t$codes = array(\n\t\t\t'A'=>array( // left odd parity\n\t\t\t\t'0'=>'0001101',\n\t\t\t\t'1'=>'0011001',\n\t\t\t\t'2'=>'0010011',\n\t\t\t\t'3'=>'0111101',\n\t\t\t\t'4'=>'0100011',\n\t\t\t\t'5'=>'0110001',\n\t\t\t\t'6'=>'0101111',\n\t\t\t\t'7'=>'0111011',\n\t\t\t\t'8'=>'0110111',\n\t\t\t\t'9'=>'0001011'),\n\t\t\t'B'=>array( // left even parity\n\t\t\t\t'0'=>'0100111',\n\t\t\t\t'1'=>'0110011',\n\t\t\t\t'2'=>'0011011',\n\t\t\t\t'3'=>'0100001',\n\t\t\t\t'4'=>'0011101',\n\t\t\t\t'5'=>'0111001',\n\t\t\t\t'6'=>'0000101',\n\t\t\t\t'7'=>'0010001',\n\t\t\t\t'8'=>'0001001',\n\t\t\t\t'9'=>'0010111')\n\t\t);\n\t\t$parities = array();\n\t\t$parities[2] = array(\n\t\t\t'0'=>array('A','A'),\n\t\t\t'1'=>array('A','B'),\n\t\t\t'2'=>array('B','A'),\n\t\t\t'3'=>array('B','B')\n\t\t);\n\t\t$parities[5] = array(\n\t\t\t'0'=>array('B','B','A','A','A'),\n\t\t\t'1'=>array('B','A','B','A','A'),\n\t\t\t'2'=>array('B','A','A','B','A'),\n\t\t\t'3'=>array('B','A','A','A','B'),\n\t\t\t'4'=>array('A','B','B','A','A'),\n\t\t\t'5'=>array('A','A','B','B','A'),\n\t\t\t'6'=>array('A','A','A','B','B'),\n\t\t\t'7'=>array('A','B','A','B','A'),\n\t\t\t'8'=>array('A','B','A','A','B'),\n\t\t\t'9'=>array('A','A','B','A','B')\n\t\t);\t\n\t\t$p = $parities[$len][$r];\n\t\t$seq = '1011'; // left guard bar\n\t\t$seq .= $codes[$p[0]][$code{0}];\n\t\tfor ($i = 1; $i < $len; ++$i) {\n\t\t\t$seq .= '01'; // separator\n\t\t\t$seq .= $codes[$p[$i]][$code{$i}];\n\t\t}\n\t\t$bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array());\n\t\treturn $this->binseq_to_array($seq, $bararray);\n\t}\n\t\n\t/**\n\t * POSTNET and PLANET barcodes.\n\t * Used by U.S. Postal Service for automated mail sorting\n\t * @param string $code zip code to represent. Must be a string containing a zip code of the form DDDDD or DDDDD-DDDD.\n\t * @param boolean $planet if true print the PLANET barcode, otherwise print POSTNET\n\t * @return array barcode representation.\n\t * @access protected\n\t */\n\tprotected function barcode_postnet($code, $planet=false) {\n\t\t// bar lenght\n\t\tif ($planet) {\n\t\t\t$barlen = Array(\n\t\t\t\t0 => Array(1,1,2,2,2),\n\t\t\t\t1 => Array(2,2,2,1,1),\n\t\t\t\t2 => Array(2,2,1,2,1),\n\t\t\t\t3 => Array(2,2,1,1,2),\n\t\t\t\t4 => Array(2,1,2,2,1),\n\t\t\t\t5 => Array(2,1,2,1,2),\n\t\t\t\t6 => Array(2,1,1,2,2),\n\t\t\t\t7 => Array(1,2,2,2,1),\n\t\t\t\t8 => Array(1,2,2,1,2),\n\t\t\t\t9 => Array(1,2,1,2,2)\n\t\t\t);\n\t\t} else {\n\t\t\t$barlen = Array(\n\t\t\t\t0 => Array(2,2,1,1,1),\n\t\t\t\t1 => Array(1,1,1,2,2),\n\t\t\t\t2 => Array(1,1,2,1,2),\n\t\t\t\t3 => Array(1,1,2,2,1),\n\t\t\t\t4 => Array(1,2,1,1,2),\n\t\t\t\t5 => Array(1,2,1,2,1),\n\t\t\t\t6 => Array(1,2,2,1,1),\n\t\t\t\t7 => Array(2,1,1,1,2),\n\t\t\t\t8 => Array(2,1,1,2,1),\n\t\t\t\t9 => Array(2,1,2,1,1)\n\t\t\t);\n\t\t}\n\t\t$bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 2, 'bcode' => array());\n\t\t$k = 0;\n\t\t$code = str_replace('-', '', $code);\n\t\t$code = str_replace(' ', '', $code);\n\t\t$len = strlen($code);\n\t\t// calculate checksum\n\t\t$sum = 0;\n\t\tfor ($i = 0; $i < $len; ++$i) {\n\t\t\t$sum += intval($code{$i});\n\t\t}\n\t\t$chkd = ($sum % 10);\n\t\tif($chkd > 0) {\n\t\t\t$chkd = (10 - $chkd);\n\t\t}\n\t\t$code .= $chkd;\n\t\t$len = strlen($code);\n\t\t// start bar\n\t\t$bararray['bcode'][$k++] = array('t' => 1, 'w' => 1, 'h' => 2, 'p' => 0);\n\t\t$bararray['bcode'][$k++] = array('t' => 0, 'w' => 1, 'h' => 2, 'p' => 0);\n\t\t$bararray['maxw'] += 2;\n\t\tfor ($i = 0; $i < $len; ++$i) {\n\t\t\tfor ($j = 0; $j < 5; ++$j) {\n\t\t\t\t$h = $barlen[$code{$i}][$j];\n\t\t\t\t$p = floor(1 / $h);\n\t\t\t\t$bararray['bcode'][$k++] = array('t' => 1, 'w' => 1, 'h' => $h, 'p' => $p);\n\t\t\t\t$bararray['bcode'][$k++] = array('t' => 0, 'w' => 1, 'h' => 2, 'p' => 0);\n\t\t\t\t$bararray['maxw'] += 2;\n\t\t\t}\n\t\t}\n\t\t// end bar\n\t\t$bararray['bcode'][$k++] = array('t' => 1, 'w' => 1, 'h' => 2, 'p' => 0);\n\t\t$bararray['maxw'] += 1;\n\t\treturn $bararray;\n\t}\n\t\n\t/**\n\t * RMS4CC - CBC - KIX\n\t * RMS4CC (Royal Mail 4-state Customer Code) - CBC (Customer Bar Code) - KIX (Klant index - Customer index)\n\t * RM4SCC is the name of the barcode symbology used by the Royal Mail for its Cleanmail service.\n\t * @param string $code code to print\n\t * @param boolean $kix if true prints the KIX variation (doesn't use the start and end symbols, and the checksum) - in this case the house number must be sufficed with an X and placed at the end of the code.\n\t * @return array barcode representation.\n\t * @access protected\n\t */\n\tprotected function barcode_rms4cc($code, $kix=false) {\n\t\t$notkix = !$kix;\n\t\t// bar mode\n\t\t// 1 = pos 1, length 2\n\t\t// 2 = pos 1, length 3\n\t\t// 3 = pos 2, length 1\n\t\t// 4 = pos 2, length 2\n\t\t$barmode = array(\n\t\t\t'0' => array(3,3,2,2),\n\t\t\t'1' => array(3,4,1,2),\n\t\t\t'2' => array(3,4,2,1),\n\t\t\t'3' => array(4,3,1,2),\n\t\t\t'4' => array(4,3,2,1),\n\t\t\t'5' => array(4,4,1,1),\n\t\t\t'6' => array(3,1,4,2),\n\t\t\t'7' => array(3,2,3,2),\n\t\t\t'8' => array(3,2,4,1),\n\t\t\t'9' => array(4,1,3,2),\n\t\t\t'A' => array(4,1,4,1),\n\t\t\t'B' => array(4,2,3,1),\n\t\t\t'C' => array(3,1,2,4),\n\t\t\t'D' => array(3,2,1,4),\n\t\t\t'E' => array(3,2,2,3),\n\t\t\t'F' => array(4,1,1,4),\n\t\t\t'G' => array(4,1,2,3),\n\t\t\t'H' => array(4,2,1,3),\n\t\t\t'I' => array(1,3,4,2),\n\t\t\t'J' => array(1,4,3,2),\n\t\t\t'K' => array(1,4,4,1),\n\t\t\t'L' => array(2,3,3,2),\n\t\t\t'M' => array(2,3,4,1),\n\t\t\t'N' => array(2,4,3,1),\n\t\t\t'O' => array(1,3,2,4),\n\t\t\t'P' => array(1,4,1,4),\n\t\t\t'Q' => array(1,4,2,3),\n\t\t\t'R' => array(2,3,1,4),\n\t\t\t'S' => array(2,3,2,3),\n\t\t\t'T' => array(2,4,1,3),\n\t\t\t'U' => array(1,1,4,4),\n\t\t\t'V' => array(1,2,3,4),\n\t\t\t'W' => array(1,2,4,3),\n\t\t\t'X' => array(2,1,3,4),\n\t\t\t'Y' => array(2,1,4,3),\n\t\t\t'Z' => array(2,2,3,3)\t\t\n\t\t);\n\t\t$code = strtoupper($code);\n\t\t$len = strlen($code);\n\t\t$bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 3, 'bcode' => array());\n\t\tif ($notkix) {\n\t\t\t// table for checksum calculation (row,col)\n\t\t\t$checktable = array(\n\t\t\t\t'0' => array(1,1),\n\t\t\t\t'1' => array(1,2),\n\t\t\t\t'2' => array(1,3),\n\t\t\t\t'3' => array(1,4),\n\t\t\t\t'4' => array(1,5),\n\t\t\t\t'5' => array(1,0),\n\t\t\t\t'6' => array(2,1),\n\t\t\t\t'7' => array(2,2),\n\t\t\t\t'8' => array(2,3),\n\t\t\t\t'9' => array(2,4),\n\t\t\t\t'A' => array(2,5),\n\t\t\t\t'B' => array(2,0),\n\t\t\t\t'C' => array(3,1),\n\t\t\t\t'D' => array(3,2),\n\t\t\t\t'E' => array(3,3),\n\t\t\t\t'F' => array(3,4),\n\t\t\t\t'G' => array(3,5),\n\t\t\t\t'H' => array(3,0),\n\t\t\t\t'I' => array(4,1),\n\t\t\t\t'J' => array(4,2),\n\t\t\t\t'K' => array(4,3),\n\t\t\t\t'L' => array(4,4),\n\t\t\t\t'M' => array(4,5),\n\t\t\t\t'N' => array(4,0),\n\t\t\t\t'O' => array(5,1),\n\t\t\t\t'P' => array(5,2),\n\t\t\t\t'Q' => array(5,3),\n\t\t\t\t'R' => array(5,4),\n\t\t\t\t'S' => array(5,5),\n\t\t\t\t'T' => array(5,0),\n\t\t\t\t'U' => array(0,1),\n\t\t\t\t'V' => array(0,2),\n\t\t\t\t'W' => array(0,3),\n\t\t\t\t'X' => array(0,4),\n\t\t\t\t'Y' => array(0,5),\n\t\t\t\t'Z' => array(0,0)\n\t\t\t);\n\t\t\t$row = 0;\n\t\t\t$col = 0;\n\t\t\tfor ($i = 0; $i < $len; ++$i) {\n\t\t\t\t$row += $checktable[$code{$i}][0];\n\t\t\t\t$col += $checktable[$code{$i}][1];\n\t\t\t}\n\t\t\t$row %= 6;\n\t\t\t$col %= 6;\n\t\t\t$chk = array_keys($checktable, array($row,$col));\n\t\t\t$code .= $chk[0];\n\t\t\t++$len;\n\t\t}\n\t\t$k = 0;\n\t\tif ($notkix) {\n\t\t\t// start bar\n\t\t\t$bararray['bcode'][$k++] = array('t' => 1, 'w' => 1, 'h' => 2, 'p' => 0);\n\t\t\t$bararray['bcode'][$k++] = array('t' => 0, 'w' => 1, 'h' => 2, 'p' => 0);\n\t\t\t$bararray['maxw'] += 2;\n\t\t}\n\t\tfor ($i = 0; $i < $len; ++$i) {\n\t\t\tfor ($j = 0; $j < 4; ++$j) {\n\t\t\t\tswitch ($barmode[$code{$i}][$j]) {\n\t\t\t\t\tcase 1: {\n\t\t\t\t\t\t$p = 0;\n\t\t\t\t\t\t$h = 2;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 2: {\n\t\t\t\t\t\t$p = 0;\n\t\t\t\t\t\t$h = 3;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 3: {\n\t\t\t\t\t\t$p = 1;\n\t\t\t\t\t\t$h = 1;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 4: {\n\t\t\t\t\t\t$p = 1;\n\t\t\t\t\t\t$h = 2;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t$bararray['bcode'][$k++] = array('t' => 1, 'w' => 1, 'h' => $h, 'p' => $p);\n\t\t\t\t$bararray['bcode'][$k++] = array('t' => 0, 'w' => 1, 'h' => 2, 'p' => 0);\n\t\t\t\t$bararray['maxw'] += 2;\n\t\t\t}\n\t\t}\n\t\tif ($notkix) {\n\t\t\t// stop bar\n\t\t\t$bararray['bcode'][$k++] = array('t' => 1, 'w' => 1, 'h' => 3, 'p' => 0);\n\t\t\t$bararray['maxw'] += 1;\n\t\t}\n\t\treturn $bararray;\n\t}\n\t\n\t/**\n\t * CODABAR barcodes.\n\t * Older code often used in library systems, sometimes in blood banks\n\t * @param string $code code to represent.\n\t * @return array barcode representation.\n\t * @access protected\n\t */\n\tprotected function barcode_codabar($code) {\n\t\t$chr = array(\n\t\t\t'0' => '11111221',\n\t\t\t'1' => '11112211',\n\t\t\t'2' => '11121121',\n\t\t\t'3' => '22111111',\n\t\t\t'4' => '11211211',\n\t\t\t'5' => '21111211',\n\t\t\t'6' => '12111121',\n\t\t\t'7' => '12112111',\n\t\t\t'8' => '12211111',\n\t\t\t'9' => '21121111',\n\t\t\t'-' => '11122111',\n\t\t\t'$' => '11221111',\n\t\t\t':' => '21112121',\n\t\t\t'/' => '21211121',\n\t\t\t'.' => '21212111',\n\t\t\t'+' => '11222221',\n\t\t\t'A' => '11221211',\n\t\t\t'B' => '12121121',\n\t\t\t'C' => '11121221',\n\t\t\t'D' => '11122211'\n\t\t);\n\t\t$bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array());\n\t\t$k = 0;\n\t\t$w = 0;\n\t\t$seq = '';\n\t\t$code = 'A'.strtoupper($code).'A';\n\t\t$len = strlen($code);\n\t\tfor ($i = 0; $i < $len; ++$i) {\n\t\t\tif (!isset($chr[$code{$i}])) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t$seq = $chr[$code{$i}];\n\t\t\tfor ($j = 0; $j < 8; ++$j) {\n\t\t\t\tif (($j % 2) == 0) {\n\t\t\t\t\t$t = true; // bar\n\t\t\t\t} else {\n\t\t\t\t\t$t = false; // space\n\t\t\t\t}\n\t\t\t\t$w = $seq{$j};\n\t\t\t\t$bararray['bcode'][$k] = array('t' => $t, 'w' => $w, 'h' => 1, 'p' => 0);\n\t\t\t\t$bararray['maxw'] += $w;\n\t\t\t\t++$k;\n\t\t\t}\n\t\t}\n\t\treturn $bararray;\n\t}\n\t\n\t/**\n\t * CODE11 barcodes.\n\t * Used primarily for labeling telecommunications equipment\n\t * @param string $code code to represent.\n\t * @return array barcode representation.\n\t * @access protected\n\t */\n\tprotected function barcode_code11($code) {\n\t\t$chr = array(\n\t\t\t'0' => '111121',\n\t\t\t'1' => '211121',\n\t\t\t'2' => '121121',\n\t\t\t'3' => '221111',\n\t\t\t'4' => '112121',\n\t\t\t'5' => '212111',\n\t\t\t'6' => '122111',\n\t\t\t'7' => '111221',\n\t\t\t'8' => '211211',\n\t\t\t'9' => '211111',\n\t\t\t'-' => '112111',\n\t\t\t'S' => '112211'\n\t\t);\n\t\t\n\t\t$bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array());\n\t\t$k = 0;\n\t\t$w = 0;\n\t\t$seq = '';\n\t\t$len = strlen($code);\n\t\t// calculate check digit C\n\t\t$p = 1;\n\t\t$check = 0;\n\t\tfor ($i = ($len - 1); $i >= 0; --$i) {\n\t\t\t$digit = $code{$i};\n\t\t\tif ($digit == '-') {\n\t\t\t\t$dval = 10;\n\t\t\t} else {\n\t\t\t\t$dval = intval($digit);\n\t\t\t}\n\t\t\t$check += ($dval * $p);\n\t\t\t++$p;\n\t\t\tif ($p > 10) {\n\t\t\t\t$p = 1;\n\t\t\t}\n\t\t}\n\t\t$check %= 11;\n\t\tif ($check == 10) {\n\t\t\t$check = '-';\n\t\t} \n\t\t$code .= $check;\n\t\tif ($len > 10) {\n\t\t\t// calculate check digit K\n\t\t\t$p = 1;\n\t\t\t$check = 0;\n\t\t\tfor ($i = $len; $i >= 0; --$i) {\n\t\t\t\t$digit = $code{$i};\n\t\t\t\tif ($digit == '-') {\n\t\t\t\t\t$dval = 10;\n\t\t\t\t} else {\n\t\t\t\t\t$dval = intval($digit);\n\t\t\t\t}\n\t\t\t\t$check += ($dval * $p);\n\t\t\t\t++$p;\n\t\t\t\tif ($p > 9) {\n\t\t\t\t\t$p = 1;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$check %= 11;\n\t\t\t$code .= $check;\n\t\t\t++$len;\n\t\t}\n\t\t$code = 'S'.$code.'S';\n\t\t$len += 3;\n\t\tfor ($i = 0; $i < $len; ++$i) {\n\t\t\tif (!isset($chr[$code{$i}])) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t$seq = $chr[$code{$i}];\n\t\t\tfor ($j = 0; $j < 6; ++$j) {\n\t\t\t\tif (($j % 2) == 0) {\n\t\t\t\t\t$t = true; // bar\n\t\t\t\t} else {\n\t\t\t\t\t$t = false; // space\n\t\t\t\t}\n\t\t\t\t$w = $seq{$j};\n\t\t\t\t$bararray['bcode'][$k] = array('t' => $t, 'w' => $w, 'h' => 1, 'p' => 0);\n\t\t\t\t$bararray['maxw'] += $w;\n\t\t\t\t++$k;\n\t\t\t}\n\t\t}\n\t\treturn $bararray;\n\t}\n\t\n\t/**\n\t * Pharmacode\n\t * Contains digits (0 to 9)\n\t * @param string $code code to represent.\n\t * @return array barcode representation.\n\t * @access protected\n\t */\n\tprotected function barcode_pharmacode($code) {\n\t\t$seq = '';\n\t\t$code = intval($code);\n\t\twhile ($code > 0) {\n\t\t\tif (($code % 2) == 0) {\n\t\t\t\t$seq .= '11100';\n\t\t\t\t$code -= 2;\n\t\t\t} else {\n\t\t\t\t$seq .= '100';\n\t\t\t\t$code -= 1;\n\t\t\t}\n\t\t\t$code /= 2;\n\t\t}\n\t\t$seq = substr($seq, 0, -2);\n\t\t$seq = strrev($seq);\n\t\t$bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 1, 'bcode' => array());\n\t\treturn $this->binseq_to_array($seq, $bararray);\n\t}\n\t\n\t/**\n\t * Pharmacode two-track\n\t * Contains digits (0 to 9)\n\t * @param string $code code to represent.\n\t * @return array barcode representation.\n\t * @access protected\n\t */\n\tprotected function barcode_pharmacode2t($code) {\n\t\t$seq = '';\n\t\t$code = intval($code);\n\t\tdo {\n\t\t\tswitch ($code % 3) {\n\t\t\t\tcase 0: {\n\t\t\t\t\t$seq .= '3';\n\t\t\t\t\t$code = ($code - 3) / 3;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 1: {\n\t\t\t\t\t$seq .= '1';\n\t\t\t\t\t$code = ($code - 1) / 3;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 2: {\n\t\t\t\t\t$seq .= '2';\n\t\t\t\t\t$code = ($code - 2) / 3;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t} while($code != 0);\n\t\t$seq = strrev($seq);\n\t\t$k = 0;\n\t\t$bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 2, 'bcode' => array());\n\t\t$len = strlen($seq);\n\t\tfor ($i = 0; $i < $len; ++$i) {\n\t\t\tswitch ($seq{$i}) {\n\t\t\t\tcase '1': {\n\t\t\t\t\t$p = 1;\n\t\t\t\t\t$h = 1;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase '2': {\n\t\t\t\t\t$p = 0;\n\t\t\t\t\t$h = 1;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase '3': {\n\t\t\t\t\t$p = 0;\n\t\t\t\t\t$h = 2;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$bararray['bcode'][$k++] = array('t' => 1, 'w' => 1, 'h' => $h, 'p' => $p);\n\t\t\t$bararray['bcode'][$k++] = array('t' => 0, 'w' => 1, 'h' => 2, 'p' => 0);\n\t\t\t$bararray['maxw'] += 2;\n\t\t}\n\t\tunset($bararray['bcode'][($k - 1)]);\n\t\t--$bararray['maxw'];\n\t\treturn $bararray;\n\t}\n\t\n\t\n\t/**\n\t * IMB - Intelligent Mail Barcode - Onecode - USPS-B-3200\n\t * (requires PHP bcmath extension) \n\t * Intelligent Mail barcode is a 65-bar code for use on mail in the United States.\n\t * The fields are described as follows:<ul><li>The Barcode Identifier shall be assigned by USPS to encode the presort identification that is currently printed in human readable form on the optional endorsement line (OEL) as well as for future USPS use. This shall be two digits, with the second digit in the range of 0–4. The allowable encoding ranges shall be 00–04, 10–14, 20–24, 30–34, 40–44, 50–54, 60–64, 70–74, 80–84, and 90–94.</li><li>The Service Type Identifier shall be assigned by USPS for any combination of services requested on the mailpiece. The allowable encoding range shall be 000http://it2.php.net/manual/en/function.dechex.php–999. Each 3-digit value shall correspond to a particular mail class with a particular combination of service(s). Each service program, such as OneCode Confirm and OneCode ACS, shall provide the list of Service Type Identifier values.</li><li>The Mailer or Customer Identifier shall be assigned by USPS as a unique, 6 or 9 digit number that identifies a business entity. The allowable encoding range for the 6 digit Mailer ID shall be 000000- 899999, while the allowable encoding range for the 9 digit Mailer ID shall be 900000000-999999999.</li><li>The Serial or Sequence Number shall be assigned by the mailer for uniquely identifying and tracking mailpieces. The allowable encoding range shall be 000000000–999999999 when used with a 6 digit Mailer ID and 000000-999999 when used with a 9 digit Mailer ID. e. The Delivery Point ZIP Code shall be assigned by the mailer for routing the mailpiece. This shall replace POSTNET for routing the mailpiece to its final delivery point. The length may be 0, 5, 9, or 11 digits. The allowable encoding ranges shall be no ZIP Code, 00000–99999,  000000000–999999999, and 00000000000–99999999999.</li></ul>\n\t * @param string $code code to print, separate the ZIP (routing code) from the rest using a minus char '-' (BarcodeID_ServiceTypeID_MailerID_SerialNumber-RoutingCode)\n\t * @return array barcode representation.\n\t * @access protected\n\t */\n\tprotected function barcode_imb($code) {\n\t\t$asc_chr = array(4,0,2,6,3,5,1,9,8,7,1,2,0,6,4,8,2,9,5,3,0,1,3,7,4,6,8,9,2,0,5,1,9,4,3,8,6,7,1,2,4,3,9,5,7,8,3,0,2,1,4,0,9,1,7,0,2,4,6,3,7,1,9,5,8);\n\t\t$dsc_chr = array(7,1,9,5,8,0,2,4,6,3,5,8,9,7,3,0,6,1,7,4,6,8,9,2,5,1,7,5,4,3,8,7,6,0,2,5,4,9,3,0,1,6,8,2,0,4,5,9,6,7,5,2,6,3,8,5,1,9,8,7,4,0,2,6,3);\n\t\t$asc_pos = array(3,0,8,11,1,12,8,11,10,6,4,12,2,7,9,6,7,9,2,8,4,0,12,7,10,9,0,7,10,5,7,9,6,8,2,12,1,4,2,0,1,5,4,6,12,1,0,9,4,7,5,10,2,6,9,11,2,12,6,7,5,11,0,3,2);\n\t\t$dsc_pos = array(2,10,12,5,9,1,5,4,3,9,11,5,10,1,6,3,4,1,10,0,2,11,8,6,1,12,3,8,6,4,4,11,0,6,1,9,11,5,3,7,3,10,7,11,8,2,10,3,5,8,0,3,12,11,8,4,5,1,3,0,7,12,9,8,10);\n\t\t$code_arr = explode('-', $code);\n\t\t$tracking_number = $code_arr[0];\n\t\tif (isset($code_arr[1])) {\n\t\t\t$routing_code = $code_arr[1];\n\t\t} else {\n\t\t\t$routing_code = '';\n\t\t}\n\t\t// Conversion of Routing Code\n\t\tswitch (strlen($routing_code)) {\n\t\t\tcase 0: {\n\t\t\t\t$binary_code = 0;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 5: {\n\t\t\t\t$binary_code = bcadd($routing_code, '1');\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 9: {\n\t\t\t\t$binary_code = bcadd($routing_code, '100001');\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase 11: {\n\t\t\t\t$binary_code = bcadd($routing_code, '1000100001');\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tdefault: {\n\t\t\t\treturn false;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\t$binary_code = bcmul($binary_code, 10);\n\t\t$binary_code = bcadd($binary_code, $tracking_number{0});\n\t\t$binary_code = bcmul($binary_code, 5);\n\t\t$binary_code = bcadd($binary_code, $tracking_number{1});\n\t\t$binary_code .= substr($tracking_number, 2, 18);\n\t\t// convert to hexadecimal\n\t\t$binary_code = $this->dec_to_hex($binary_code);\n\t\t// pad to get 13 bytes\n\t\t$binary_code = str_pad($binary_code, 26, '0', STR_PAD_LEFT);\n\t\t// convert string to array of bytes\n\t\t$binary_code_arr = chunk_split($binary_code, 2, \"\\r\");\n\t\t$binary_code_arr = substr($binary_code_arr, 0, -1);\n\t\t$binary_code_arr = explode(\"\\r\", $binary_code_arr);\n\t\t// calculate frame check sequence\n\t\t$fcs = $this->imb_crc11fcs($binary_code_arr);\n\t\t// exclude first 2 bits from first byte\n\t\t$first_byte = sprintf('%2s', dechex((hexdec($binary_code_arr[0]) << 2) >> 2));\n\t\t$binary_code_102bit = $first_byte.substr($binary_code, 2);\n\t\t// convert binary data to codewords\n\t\t$codewords = array();\n\t\t$data = $this->hex_to_dec($binary_code_102bit);\n\t\t$codewords[0] = bcmod($data, 636) * 2;\n\t\t$data = bcdiv($data, 636);\n\t\tfor ($i = 1; $i < 9; ++$i) {\n\t\t\t$codewords[$i] = bcmod($data, 1365);\n\t\t\t$data = bcdiv($data, 1365);\n\t\t}\n\t\t$codewords[9] = $data;\n\t\tif (($fcs >> 10) == 1) {\n\t\t\t$codewords[9] += 659;\n\t\t}\n\t\t// generate lookup tables\n\t\t$table2of13 = $this->imb_tables(2, 78);\n\t\t$table5of13 = $this->imb_tables(5, 1287);\n\t\t// convert codewords to characters\n\t\t$characters = array();\n\t\t$bitmask = 512;\n\t\tforeach($codewords as $k => $val) {\n\t\t\tif ($val <= 1286) {\n\t\t\t\t$chrcode = $table5of13[$val];\n\t\t\t} else {\n\t\t\t\t$chrcode = $table2of13[($val - 1287)];\n\t\t\t}\n\t\t\tif (($fcs & $bitmask) > 0) {\n\t\t\t\t// bitwise invert\n\t\t\t\t$chrcode = ((~$chrcode) & 8191);\n\t\t\t}\n\t\t\t$characters[] = $chrcode;\n\t\t\t$bitmask /= 2;\n\t\t}\n\t\t$characters = array_reverse($characters);\n\t\t// build bars\n\t\t$k = 0;\n\t\t$bararray = array('code' => $code, 'maxw' => 0, 'maxh' => 3, 'bcode' => array());\n\t\tfor ($i = 0; $i < 65; ++$i) {\n\t\t\t$asc = (($characters[$asc_chr[$i]] & pow(2, $asc_pos[$i])) > 0);\n\t\t\t$dsc = (($characters[$dsc_chr[$i]] & pow(2, $dsc_pos[$i])) > 0);\n\t\t\tif ($asc AND $dsc) {\n\t\t\t\t// full bar (F)\n\t\t\t\t$p = 0;\n\t\t\t\t$h = 3;\n\t\t\t} elseif ($asc) {\n\t\t\t\t// ascender (A)\n\t\t\t\t$p = 0;\n\t\t\t\t$h = 2;\n\t\t\t} elseif ($dsc) {\n\t\t\t\t// descender (D)\n\t\t\t\t$p = 1;\n\t\t\t\t$h = 2;\n\t\t\t} else {\n\t\t\t\t// tracker (T)\n\t\t\t\t$p = 1;\n\t\t\t\t$h = 1;\n\t\t\t}\n\t\t\t$bararray['bcode'][$k++] = array('t' => 1, 'w' => 1, 'h' => $h, 'p' => $p);\n\t\t\t$bararray['bcode'][$k++] = array('t' => 0, 'w' => 1, 'h' => 2, 'p' => 0);\n\t\t\t$bararray['maxw'] += 2;\n\t\t}\n\t\tunset($bararray['bcode'][($k - 1)]);\n\t\t--$bararray['maxw'];\n\t\treturn $bararray;\n\t}\n\t\n\t/**\n\t * Convert large integer number to hexadecimal representation.\n\t * (requires PHP bcmath extension) \n\t * @param string $number number to convert specified as a string\n\t * @return string hexadecimal representation\n\t */\n\tpublic function dec_to_hex($number) {\n\t\t$i = 0;\n\t\t$hex = array();\n\t\tif($number == 0) {\n\t\t\treturn '00';\n\t\t}\n\t\twhile($number > 0) {\n\t\t\tif($number == 0) {\n\t\t\t\tarray_push($hex, '0');\n\t\t\t} else {\n\t\t\t\tarray_push($hex, strtoupper(dechex(bcmod($number, '16'))));\n\t\t\t\t$number = bcdiv($number, '16', 0);\n\t\t\t}\n\t\t}\n\t\t$hex = array_reverse($hex);\n\t\treturn implode($hex);\n\t}\n\t\n\t/**\n\t * Convert large hexadecimal number to decimal representation (string).\n\t * (requires PHP bcmath extension) \n\t * @param string $hex hexadecimal number to convert specified as a string\n\t * @return string hexadecimal representation\n\t */\n\tpublic function hex_to_dec($hex) {\n\t\t$dec = 0;\n\t\t$bitval = 1;\n\t\t$len = strlen($hex);\n\t\tfor($pos = ($len - 1); $pos >= 0; --$pos) {\n\t\t\t$dec = bcadd($dec, bcmul(hexdec($hex{$pos}), $bitval));\n\t\t\t$bitval = bcmul($bitval, 16);\n\t\t}\n\t\treturn $dec;\n\t}\t\n\t\n\t/**\n\t * Intelligent Mail Barcode calculation of Frame Check Sequence\n\t * @param string $code_arr array of hexadecimal values (13 bytes holding 102 bits right justified).\n\t * @return int 11 bit Frame Check Sequence as integer (decimal base)\n\t * @access protected\n\t */\n\tprotected function imb_crc11fcs($code_arr) {\n\t\t$genpoly = 0x0F35; // generator polynomial\n\t\t$fcs = 0x07FF; // Frame Check Sequence\n\t\t// do most significant byte skipping the 2 most significant bits\n\t\t$data = hexdec($code_arr[0]) << 5;\n\t\tfor ($bit = 2; $bit < 8; ++$bit) {\n\t\t\tif (($fcs ^ $data) & 0x400) {\n\t\t\t\t$fcs = ($fcs << 1) ^ $genpoly;\n\t\t\t} else {\n\t\t\t\t$fcs = ($fcs << 1);\n\t\t\t}\n\t\t\t$fcs &= 0x7FF;\n\t\t\t$data <<= 1;\n\t\t}\n\t\t// do rest of bytes\n\t\tfor ($byte = 1; $byte < 13; ++$byte) {\n\t\t\t$data = hexdec($code_arr[$byte]) << 3;\n\t\t\tfor ($bit = 0; $bit < 8; ++$bit) {\n\t\t\t\tif (($fcs ^ $data) & 0x400) {\n\t\t\t\t\t$fcs = ($fcs << 1) ^ $genpoly;\n\t\t\t\t} else {\n\t\t\t\t\t$fcs = ($fcs << 1);\n\t\t\t\t}\n\t\t\t\t$fcs &= 0x7FF;\n\t\t\t\t$data <<= 1;\n\t\t\t}\n\t\t}\n\t\treturn $fcs;\t\t\n\t}\n\t\n\t/**\n\t * Reverse unsigned short value\n\t * @param int $num value to reversr\n\t * @return int reversed value\n\t * @access protected\n\t */\n\tprotected function imb_reverse_us($num) {\n\t\t$rev = 0;\n\t\tfor ($i = 0; $i < 16; ++$i) {\n\t\t\t$rev <<= 1;\n\t\t\t$rev |= ($num & 1);\n\t\t\t$num >>= 1;\n\t\t}\n\t\treturn $rev;\n\t}\n\t\n\t/**\n\t * generate Nof13 tables used for Intelligent Mail Barcode\n\t * @param int $n is the type of table: 2 for 2of13 table, 5 for 5of13table\n\t * @param int $size size of table (78 for n=2 and 1287 for n=5)\n\t * @return array requested table\n\t * @access protected\n\t */\n\tprotected function imb_tables($n, $size) {\n\t\t$table = array();\n\t\t$lli = 0; // LUT lower index\n\t\t$lui = $size - 1; // LUT upper index\n\t\tfor ($count = 0; $count < 8192; ++$count) {\n\t\t\t$bit_count = 0;\n\t\t\tfor ($bit_index = 0; $bit_index < 13; ++$bit_index) {\n\t\t\t\t$bit_count += intval(($count & (1 << $bit_index)) != 0);\n\t\t\t}\n\t\t\t// if we don't have the right number of bits on, go on to the next value\n\t\t\tif ($bit_count == $n) {\n\t\t\t\t$reverse = ($this->imb_reverse_us($count) >> 3);\n\t\t\t\t// if the reverse is less than count, we have already visited this pair before\n\t\t\t\tif ($reverse >= $count) {\n\t\t\t\t\t// If count is symmetric, place it at the first free slot from the end of the list.\n\t\t\t\t\t// Otherwise, place it at the first free slot from the beginning of the list AND place $reverse ath the next free slot from the beginning of the list\n\t\t\t\t\tif ($reverse == $count) {\n\t\t\t\t\t\t$table[$lui] = $count;\n\t\t\t\t\t\t--$lui;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$table[$lli] = $count;\n\t\t\t\t\t\t++$lli;\n\t\t\t\t\t\t$table[$lli] = $reverse;\n\t\t\t\t\t\t++$lli;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn $table;\n\t}\n\t\n} // end of class\n\n//============================================================+\n// END OF FILE                                                 \n//============================================================+\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/cache/chapter_demo_1.txt",
    "content": "The year 1866 was marked by a bizarre development, an unexplained and downright inexplicable phenomenon that surely no one has forgotten. Without getting into those rumors that upset civilians in the seaports and deranged the public mind even far inland, it must be said that professional seamen were especially alarmed. Traders, shipowners, captains of vessels, skippers, and master mariners from Europe and America, naval officers from every country, and at their heels the various national governments on these two continents, were all extremely disturbed by the business.\nIn essence, over a period of time several ships had encountered \"an enormous thing\" at sea, a long spindle-shaped object, sometimes giving off a phosphorescent glow, infinitely bigger and faster than any whale.\nThe relevant data on this apparition, as recorded in various logbooks, agreed pretty closely as to the structure of the object or creature in question, its unprecedented speed of movement, its startling locomotive power, and the unique vitality with which it seemed to be gifted.  If it was a cetacean, it exceeded in bulk any whale previously classified by science.  No naturalist, neither Cuvier nor Lacépède, neither Professor Dumeril nor Professor de Quatrefages, would have accepted the existence of such a monster sight unseen -- specifically, unseen by their own scientific eyes.\nStriking an average of observations taken at different times -- rejecting those timid estimates that gave the object a length of 200 feet, and ignoring those exaggerated views that saw it as a mile wide and three long--you could still assert that this phenomenal creature greatly exceeded the dimensions of anything then known to ichthyologists, if it existed at all.\nNow then, it did exist, this was an undeniable fact; and since the human mind dotes on objects of wonder, you can understand the worldwide excitement caused by this unearthly apparition. As for relegating it to the realm of fiction, that charge had to be dropped.\nIn essence, on July 20, 1866, the steamer Governor Higginson, from the Calcutta & Burnach Steam Navigation Co., encountered this moving mass five miles off the eastern shores of Australia. Captain Baker at first thought he was in the presence of an unknown reef; he was even about to fix its exact position when two waterspouts shot out of this inexplicable object and sprang hissing into the air some 150 feet.  So, unless this reef was subject to the intermittent eruptions of a geyser, the Governor Higginson had fair and honest dealings with some aquatic mammal, until then unknown, that could spurt from its blowholes waterspouts mixed with air and steam.\nSimilar events were likewise observed in Pacific seas, on July 23 of the same year, by the Christopher Columbus from the West India & Pacific Steam Navigation Co.  Consequently, this extraordinary cetacean could transfer itself from one locality to another with startling swiftness, since within an interval of just three days, the Governor Higginson and the Christopher Columbus had observed it at two positions on the charts separated by a distance of more than 700 nautical leagues.\nFifteen days later and 2,000 leagues farther, the Helvetia from the Compagnie Nationale and the Shannon from the Royal Mail line, running on opposite tacks in that part of the Atlantic lying between the United States and Europe, respectively signaled each other that the monster had been sighted in latitude 42 degrees 15' north and longitude 60 degrees 35' west of the meridian of Greenwich.  From their simultaneous observations, they were able to estimate the mammal's minimum length at more than 350 English feet; this was because both the Shannon and the Helvetia were of smaller dimensions, although each measured 100 meters stem to stern. Now then, the biggest whales, those rorqual whales that frequent the waterways of the Aleutian Islands, have never exceeded a length of 56 meters--if they reach even that.\nOne after another, reports arrived that would profoundly affect public opinion:  new observations taken by the transatlantic liner Pereire, the Inman line's Etna running afoul of the monster, an official report drawn up by officers on the French frigate Normandy, dead-earnest reckonings obtained by the general staff of Commodore Fitz-James aboard the Lord Clyde. In lighthearted countries, people joked about this phenomenon, but such serious, practical countries as England, America, and Germany were deeply concerned.\nIn every big city the monster was the latest rage; they sang about it in the coffee houses, they ridiculed it in the newspapers, they dramatized it in the theaters.  The tabloids found it a fine opportunity for hatching all sorts of hoaxes. In those newspapers short of copy, you saw the reappearance of every gigantic imaginary creature, from \"Moby Dick,\" that dreadful white whale from the High Arctic regions, to the stupendous kraken whose tentacles could entwine a 500-ton craft and drag it into the ocean depths. They even reprinted reports from ancient times: the views of Aristotle and Pliny accepting the existence of such monsters, then the Norwegian stories of Bishop Pontoppidan, the narratives of Paul Egede, and finally the reports of Captain Harrington -- whose good faith is above suspicion--in which he claims he saw, while aboard the Castilian in 1857, one of those enormous serpents that, until then, had frequented only the seas of France's old extremist newspaper, The Constitutionalist.\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/cache/chapter_demo_2.txt",
    "content": "During the period in which these developments were occurring, I had returned from a scientific undertaking organized to explore the Nebraska badlands in the United States. In my capacity as Assistant Professor at the Paris Museum of Natural History, I had been attached to this expedition by the French government. After spending six months in Nebraska, I arrived in New York laden with valuable collections near the end of March. My departure for France was set for early May. In the meantime, then, I was busy classifying my mineralogical, botanical, and zoological treasures when that incident took place with the Scotia.\nI was perfectly abreast of this question, which was the big news of the day, and how could I not have been? I had read and reread every American and European newspaper without being any farther along. This mystery puzzled me. Finding it impossible to form any views, I drifted from one extreme to the other. Something was out there, that much was certain, and any doubting Thomas was invited to place his finger on the Scotia's wound.\nWhen I arrived in New York, the question was at the boiling point. The hypothesis of a drifting islet or an elusive reef, put forward by people not quite in their right minds, was completely eliminated. And indeed, unless this reef had an engine in its belly, how could it move about with such prodigious speed?\nAlso discredited was the idea of a floating hull or some other enormous wreckage, and again because of this speed of movement.\nSo only two possible solutions to the question were left, creating two very distinct groups of supporters: on one side, those favoring a monster of colossal strength; on the other, those favoring an \"underwater boat\" of tremendous motor power.\nNow then, although the latter hypothesis was completely admissible, it couldn't stand up to inquiries conducted in both the New World and the Old. That a private individual had such a mechanism at his disposal was less than probable. Where and when had he built it, and how could he have built it in secret?\nOnly some government could own such an engine of destruction, and in these disaster-filled times, when men tax their ingenuity to build increasingly powerful aggressive weapons, it was possible that, unknown to the rest of the world, some nation could have been testing such a fearsome machine. The Chassepot rifle led to the torpedo, and the torpedo has led to this underwater battering ram, which in turn will lead to the world putting its foot down. At least I hope it will.\nBut this hypothesis of a war machine collapsed in the face of formal denials from the various governments. Since the public interest was at stake and transoceanic travel was suffering, the sincerity of these governments could not be doubted. Besides, how could the assembly of this underwater boat have escaped public notice? Keeping a secret under such circumstances would be difficult enough for an individual, and certainly impossible for a nation whose every move is under constant surveillance by rival powers.\nSo, after inquiries conducted in England, France, Russia, Prussia, Spain, Italy, America, and even Turkey, the hypothesis of an underwater Monitor was ultimately rejected.\nAfter I arrived in New York, several people did me the honor of consulting me on the phenomenon in question. In France I had published a two-volume work, in quarto, entitled The Mysteries of the Great Ocean Depths. Well received in scholarly circles, this book had established me as a specialist in this pretty obscure field of natural history. My views were in demand. As long as I could deny the reality of the business, I confined myself to a flat \"no comment.\" But soon, pinned to the wall, I had to explain myself straight out. And in this vein, \"the honorable Pierre Aronnax, Professor at the Paris Museum,\" was summoned by The New York Herald to formulate his views no matter what.\nI complied. Since I could no longer hold my tongue, I let it wag. I discussed the question in its every aspect, both political and scientific, and this is an excerpt from the well-padded article I published in the issue of April 30.\n\n\"Therefore,\" I wrote, \"after examining these different hypotheses one by one, we are forced, every other supposition having been refuted, to accept the existence of an extremely powerful marine animal.\n\"The deepest parts of the ocean are totally unknown to us. No soundings have been able to reach them. What goes on in those distant depths? What creatures inhabit, or could inhabit, those regions twelve or fifteen miles beneath the surface of the water? What is the constitution of these animals? It's almost beyond conjecture.\n\"However, the solution to this problem submitted to me can take the form of a choice between two alternatives.\n\"Either we know every variety of creature populating our planet, or we do not.\n\"If we do not know every one of them, if nature still keeps ichthyological secrets from us, nothing is more admissible than to accept the existence of fish or cetaceans of new species or even new genera, animals with a basically 'cast-iron' constitution that inhabit strata beyond the reach of our soundings, and which some development or other, an urge or a whim if you prefer, can bring to the upper level of the ocean for long intervals.\n\"If, on the other hand, we do know every living species, we must look for the animal in question among those marine creatures already cataloged, and in this event I would be inclined to accept the existence of a giant narwhale.\n\"The common narwhale, or sea unicorn, often reaches a length of sixty feet. Increase its dimensions fivefold or even tenfold, then give this cetacean a strength in proportion to its size while enlarging its offensive weapons, and you have the animal we're looking for. It would have the proportions determined by the officers of the Shannon, the instrument needed to perforate the Scotia, and the power to pierce a steamer's hull.\n\"In essence, the narwhale is armed with a sort of ivory sword, or lance, as certain naturalists have expressed it. It's a king-sized tooth as hard as steel. Some of these teeth have been found buried in the bodies of baleen whales, which the narwhale attacks with invariable success. Others have been wrenched, not without difficulty, from the undersides of vessels that narwhales have pierced clean through, as a gimlet pierces a wine barrel. The museum at the Faculty of Medicine in Paris owns one of these tusks with a length of 2.25 meters and a width at its base of forty-eight centimeters!\n\"All right then! Imagine this weapon to be ten times stronger and the animal ten times more powerful, launch it at a speed of twenty miles per hour, multiply its mass times its velocity, and you get just the collision we need to cause the specified catastrophe.\n\"So, until information becomes more abundant, I plump for a sea unicorn of colossal dimensions, no longer armed with a mere lance but with an actual spur, like ironclad frigates or those warships called 'rams,' whose mass and motor power it would possess simultaneously.\n\"This inexplicable phenomenon is thus explained away unless it's something else entirely, which, despite everything that has been sighted, studied, explored and experienced, is still possible!\"\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/cache/table_data_demo.txt",
    "content": "Austria;Vienna;83859;8075\nBelgium;Brussels;30518;10192\nDenmark;Copenhagen;43094;5295\nFinland;Helsinki;304529;5147\nFrance;Paris;543965;58728\nGermany;Berlin;357022;82057\nGreece;Athens;131625;10511\nIreland;Dublin;70723;3694\nItaly;Roma;301316;57563\nLuxembourg;Luxembourg;2586;424\nNetherlands;Amsterdam;41526;15654\nPortugal;Lisbon;91906;9957\nSpain;Madrid;504790;39348\nSweden;Stockholm;410934;8839\nUnited Kingdom;London;243820;58862\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/cache/utf8test.txt",
    "content": "Sentences that contain all letters commonly used in a language\r\n--------------------------------------------------------------\r\n\r\nMarkus Kuhn <http://www.cl.cam.ac.uk/~mgk25/> -- 2001-09-02\r\n\r\nThis file is UTF-8 encoded.\r\n\r\n\r\nDanish (da)\r\n---------\r\n\r\n  Quizdeltagerne spiste jordbær med fløde, mens cirkusklovnen\r\n  Wolther spillede på xylofon.\r\n  (= Quiz contestants were eating strawbery with cream while Wolther\r\n  the circus clown played on xylophone.)\r\n\r\nGerman (de)\r\n-----------\r\n\r\n  Falsches Üben von Xylophonmusik quält jeden größeren Zwerg\r\n  (= Wrongful practicing of xylophone music tortures every larger dwarf)\r\n\r\n  Zwölf Boxkämpfer jagten Eva quer über den Sylter Deich\r\n  (= Twelve boxing fighters hunted Eva across the dike of Sylt)\r\n\r\n  Heizölrückstoßabdämpfung\r\n  (= fuel oil recoil absorber)\r\n  (jqvwxy missing, but all non-ASCII letters in one word)\r\n\r\nEnglish (en)\r\n------------\r\n\r\n  The quick brown fox jumps over the lazy dog\r\n\r\nSpanish (es)\r\n------------\r\n\r\n  El pingüino Wenceslao hizo kilómetros bajo exhaustiva lluvia y \r\n  frío, añoraba a su querido cachorro.\r\n  (Contains every letter and every accent, but not every combination\r\n  of vowel + acute.)\r\n\r\nFrench (fr)\r\n-----------\r\n\r\n  Portez ce vieux whisky au juge blond qui fume sur son île intérieure, à\r\n  côté de l'alcôve ovoïde, où les bûches se consument dans l'âtre, ce\r\n  qui lui permet de penser à la cænogenèse de l'être dont il est question\r\n  dans la cause ambiguë entendue à Moÿ, dans un capharnaüm qui,\r\n  pense-t-il, diminue çà et là la qualité de son œuvre. \r\n\r\n  l'île exiguë\r\n  Où l'obèse jury mûr\r\n  Fête l'haï volapük,\r\n  Âne ex aéquo au whist,\r\n  Ôtez ce vœu déçu.\r\n\r\n  Le cœur déçu mais l'âme plutôt naïve, Louÿs rêva de crapaüter en\r\n  canoë au delà des îles, près du mälström où brûlent les novæ.\r\n\r\nIrish Gaelic (ga)\r\n-----------------\r\n\r\n  D'fhuascail Íosa, Úrmhac na hÓighe Beannaithe, pór Éava agus Ádhaimh\r\n\r\nHungarian (hu)\r\n--------------\r\n\r\n  Árvíztűrő tükörfúrógép\r\n  (= flood-proof mirror-drilling machine, only all non-ASCII letters)\r\n\r\nIcelandic (is)\r\n--------------\r\n\r\n  Kæmi ný öxi hér ykist þjófum nú bæði víl og ádrepa\r\n\r\n  Sævör grét áðan því úlpan var ónýt\r\n  (some ASCII letters missing)\r\n\r\nGreek (el)\r\n-------------\r\n\r\n  Γαζέες καὶ μυρτιὲς δὲν θὰ βρῶ πιὰ στὸ χρυσαφὶ ξέφωτο\r\n  (= No more shall I see acacias or myrtles in the golden clearing)\r\n\r\n  Ξεσκεπάζω τὴν ψυχοφθόρα βδελυγμία\r\n  (= I uncover the soul-destroying abhorrence)\r\n\r\nHebrew (iw)\r\n-----------\r\n\r\n  ? דג סקרן שט בים מאוכזב ולפתע מצא לו חברה איך הקליטה\r\n\r\nPolish (pl)\r\n-----------\r\n\r\n  Pchnąć w tę łódź jeża lub ośm skrzyń fig\r\n  (= To push a hedgehog or eight bins of figs in this boat)\r\n\r\nRussian (ru)\r\n------------\r\n\r\n  В чащах юга жил бы цитрус? Да, но фальшивый экземпляр!\r\n  (= Would a citrus live in the bushes of south? Yes, but only a fake one!)\r\n\r\nThai (th)\r\n---------\r\n\r\n  [--------------------------|------------------------]\r\n  ๏ เป็นมนุษย์สุดประเสริฐเลิศคุณค่า  กว่าบรรดาฝูงสัตว์เดรัจฉาน\r\n  จงฝ่าฟันพัฒนาวิชาการ           อย่าล้างผลาญฤๅเข่นฆ่าบีฑาใคร\r\n  ไม่ถือโทษโกรธแช่งซัดฮึดฮัดด่า     หัดอภัยเหมือนกีฬาอัชฌาสัย\r\n  ปฏิบัติประพฤติกฎกำหนดใจ        พูดจาให้จ๊ะๆ จ๋าๆ น่าฟังเอย ฯ\r\n\r\n  [The copyright for the Thai example is owned by The Computer\r\n  Association of Thailand under the Royal Patronage of His Majesty the\r\n  King.]\r\n\r\nPlease let me know if you find others! Special thanks to the people\r\nfrom all over the world who contributed these sentences.\r\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/config/lang/bra.php",
    "content": "<?php\n//============================================================+\n// File name   : eng.php\n// Begin       : 2004-03-03\n// Last Update : 2010-02-17\n// \n// Description : Language module for TCPDF\n//               (contains translated texts)\n// \n// Author: Nicola Asuni\n// \n// (c) Copyright:\n//               Nicola Asuni\n//               Tecnick.com s.r.l.\n//               Via Della Pace, 11\n//               09044 Quartucciu (CA)\n//               ITALY\n//               www.tecnick.com\n//               info@tecnick.com\n//============================================================+\n\n/**\n * TCPDF language file (contains translated texts).\n * @package com.tecnick.tcpdf\n * @abstract TCPDF language file.\n * @author Nicola Asuni\n * @copyright 2004-2009 Nicola Asuni - Tecnick.com S.r.l (www.tecnick.com) Via Della Pace, 11 - 09044 - Quartucciu (CA) - ITALY - www.tecnick.com - info@tecnick.com\n * @link http://tcpdf.sourceforge.net\n * @license http://www.gnu.org/copyleft/lesser.html LGPL\n * @since 2004-03-03\n */\n \n// ENGLISH\n\nglobal $l;\n$l = Array();\n\n// PAGE META DESCRIPTORS --------------------------------------\n\n$l['a_meta_charset'] = 'UTF-8';\n$l['a_meta_dir'] = 'ltr';\n$l['a_meta_language'] = 'pt';\n\n// TRANSLATIONS --------------------------------------\n$l['w_page'] = 'página';\n\n//============================================================+\n// END OF FILE                                                 \n//============================================================+\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/config/lang/eng.php",
    "content": "<?php\n//============================================================+\n// File name   : eng.php\n// Begin       : 2004-03-03\n// Last Update : 2010-02-17\n// \n// Description : Language module for TCPDF\n//               (contains translated texts)\n// \n// Author: Nicola Asuni\n// \n// (c) Copyright:\n//               Nicola Asuni\n//               Tecnick.com s.r.l.\n//               Via Della Pace, 11\n//               09044 Quartucciu (CA)\n//               ITALY\n//               www.tecnick.com\n//               info@tecnick.com\n//============================================================+\n\n/**\n * TCPDF language file (contains translated texts).\n * @package com.tecnick.tcpdf\n * @abstract TCPDF language file.\n * @author Nicola Asuni\n * @copyright 2004-2009 Nicola Asuni - Tecnick.com S.r.l (www.tecnick.com) Via Della Pace, 11 - 09044 - Quartucciu (CA) - ITALY - www.tecnick.com - info@tecnick.com\n * @link http://tcpdf.sourceforge.net\n * @license http://www.gnu.org/copyleft/lesser.html LGPL\n * @since 2004-03-03\n */\n \n// ENGLISH\n\nglobal $l;\n$l = Array();\n\n// PAGE META DESCRIPTORS --------------------------------------\n\n$l['a_meta_charset'] = 'UTF-8';\n$l['a_meta_dir'] = 'ltr';\n$l['a_meta_language'] = 'en';\n\n// TRANSLATIONS --------------------------------------\n$l['w_page'] = 'page';\n\n//============================================================+\n// END OF FILE                                                 \n//============================================================+\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/config/lang/ger.php",
    "content": "<?php\n//============================================================+\n// File name   : eng.php\n// Begin       : 2004-03-03\n// Last Update : 2010-02-17\n// \n// Description : Language module for TCPDF\n//               (contains translated texts)\n// \n// Author: Nicola Asuni\n// \n// (c) Copyright:\n//               Nicola Asuni\n//               Tecnick.com s.r.l.\n//               Via Della Pace, 11\n//               09044 Quartucciu (CA)\n//               ITALY\n//               www.tecnick.com\n//               info@tecnick.com\n//============================================================+\n\n/**\n * TCPDF language file (contains translated texts).\n * @package com.tecnick.tcpdf\n * @abstract TCPDF language file.\n * @author Nicola Asuni\n * @copyright 2004-2009 Nicola Asuni - Tecnick.com S.r.l (www.tecnick.com) Via Della Pace, 11 - 09044 - Quartucciu (CA) - ITALY - www.tecnick.com - info@tecnick.com\n * @link http://tcpdf.sourceforge.net\n * @license http://www.gnu.org/copyleft/lesser.html LGPL\n * @since 2004-03-03\n */\n \n// ENGLISH\n\nglobal $l;\n$l = Array();\n\n// PAGE META DESCRIPTORS --------------------------------------\n\n$l['a_meta_charset'] = 'UTF-8';\n$l['a_meta_dir'] = 'ltr';\n$l['a_meta_language'] = 'de';\n\n// TRANSLATIONS --------------------------------------\n$l['w_page'] = 'seite';\n\n//============================================================+\n// END OF FILE                                                 \n//============================================================+\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/config/lang/ita.php",
    "content": "<?php\n//============================================================+\n// File name   : ita.php\n// Begin       : 2004-03-03\n// Last Update : 2010-02-17\n// \n// Description : Language module for TCPDF\n//               (contains translated texts)\n// \n// Author: Nicola Asuni\n// \n// (c) Copyright:\n//               Nicola Asuni\n//               Tecnick.com s.r.l.\n//               Via Della Pace, 11\n//               09044 Quartucciu (CA)\n//               ITALY\n//               www.tecnick.com\n//               info@tecnick.com\n//============================================================+\n\n/**\n * TCPDF language file (contains translated texts).\n * @package com.tecnick.tcpdf\n * @abstract TCPDF language file.\n * @author Nicola Asuni\n * @copyright 2004-2009 Nicola Asuni - Tecnick.com S.r.l (www.tecnick.com) Via Della Pace, 11 - 09044 - Quartucciu (CA) - ITALY - www.tecnick.com - info@tecnick.com\n * @link http://tcpdf.sourceforge.net\n * @license http://www.gnu.org/copyleft/lesser.html LGPL\n * @since 2004-03-03\n */\n \n// ENGLISH\n\nglobal $l;\n$l = Array();\n\n// PAGE META DESCRIPTORS --------------------------------------\n\n$l['a_meta_charset'] = 'UTF-8';\n$l['a_meta_dir'] = 'ltr';\n$l['a_meta_language'] = 'it';\n\n// TRANSLATIONS --------------------------------------\n$l['w_page'] = 'pagina';\n\n//============================================================+\n// END OF FILE                                                 \n//============================================================+\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/config/tcpdf_config.php",
    "content": "<?php\n//============================================================+\n// File name   : tcpdf_config.php\n// Begin       : 2004-06-11\n// Last Update : 2010-04-28\n//\n// Description : Configuration file for TCPDF.\n//\n// Author: Nicola Asuni\n//\n// (c) Copyright:\n//               Nicola Asuni\n//               Tecnick.com s.r.l.\n//               Via Della Pace, 11\n//               09044 Quartucciu (CA)\n//               ITALY\n//               www.tecnick.com\n//               info@tecnick.com\n//============================================================+\n\n/**\n * Configuration file for TCPDF.\n * @author Nicola Asuni\n * @copyright 2004-2010 Nicola Asuni - Tecnick.com S.r.l (www.tecnick.com) Via Della Pace, 11 - 09044 - Quartucciu (CA) - ITALY - www.tecnick.com - info@tecnick.com\n * @package com.tecnick.tcpdf\n * @version 4.9.005\n * @link http://tcpdf.sourceforge.net\n * @license http://www.gnu.org/copyleft/lesser.html LGPL\n * @since 2004-10-27\n */\n\n// If you define the constant K_TCPDF_EXTERNAL_CONFIG, the following settings will be ignored.\n\nif (!defined('K_TCPDF_EXTERNAL_CONFIG')) {\n\n\t// DOCUMENT_ROOT fix for IIS Webserver\n\tif ((!isset($_SERVER['DOCUMENT_ROOT'])) OR (empty($_SERVER['DOCUMENT_ROOT']))) {\n\t\tif(isset($_SERVER['SCRIPT_FILENAME'])) {\n\t\t\t$_SERVER['DOCUMENT_ROOT'] = str_replace( '\\\\', '/', substr($_SERVER['SCRIPT_FILENAME'], 0, 0-strlen($_SERVER['PHP_SELF'])));\n\t\t} elseif(isset($_SERVER['PATH_TRANSLATED'])) {\n\t\t\t$_SERVER['DOCUMENT_ROOT'] = str_replace( '\\\\', '/', substr(str_replace('\\\\\\\\', '\\\\', $_SERVER['PATH_TRANSLATED']), 0, 0-strlen($_SERVER['PHP_SELF'])));\n\t\t}\telse {\n\t\t\t// define here your DOCUMENT_ROOT path if the previous fails\n\t\t\t$_SERVER['DOCUMENT_ROOT'] = '/var/www';\n\t\t}\n\t}\n\n\t// Automatic calculation for the following K_PATH_MAIN constant\n\t$k_path_main = str_replace( '\\\\', '/', realpath(substr(dirname(__FILE__), 0, 0-strlen('config'))));\n\tif (substr($k_path_main, -1) != '/') {\n\t\t$k_path_main .= '/';\n\t}\n\n\t/**\n\t * Installation path (/var/www/tcpdf/).\n\t * By default it is automatically calculated but you can also set it as a fixed string to improve performances.\n\t */\n\tdefine ('K_PATH_MAIN', $k_path_main);\n\n\t// Automatic calculation for the following K_PATH_URL constant\n\t$k_path_url = $k_path_main; // default value for console mode\n\tif (isset($_SERVER['HTTP_HOST']) AND (!empty($_SERVER['HTTP_HOST']))) {\n\t\tif(isset($_SERVER['HTTPS']) AND (!empty($_SERVER['HTTPS'])) AND strtolower($_SERVER['HTTPS'])!='off') {\n\t\t\t$k_path_url = 'https://';\n\t\t} else {\n\t\t\t$k_path_url = 'http://';\n\t\t}\n\t\t$k_path_url .= $_SERVER['HTTP_HOST'];\n\t\t$k_path_url .= str_replace( '\\\\', '/', substr($_SERVER['PHP_SELF'], 0, -24));\n\t}\n\n\t/**\n\t * URL path to tcpdf installation folder (http://localhost/tcpdf/).\n\t * By default it is automatically calculated but you can also set it as a fixed string to improve performances.\n\t */\n\tdefine ('K_PATH_URL', $k_path_url);\n\n\t/**\n\t * path for PDF fonts\n\t * use K_PATH_MAIN.'fonts/old/' for old non-UTF8 fonts\n\t */\n\tdefine ('K_PATH_FONTS', K_PATH_MAIN.'fonts/');\n\n\t/**\n\t * cache directory for temporary files (full path)\n\t */\n\tdefine ('K_PATH_CACHE', K_PATH_MAIN.'cache/');\n\n\t/**\n\t * cache directory for temporary files (url path)\n\t */\n\tdefine ('K_PATH_URL_CACHE', K_PATH_URL.'cache/');\n\n\t/**\n\t *images directory\n\t */\n\tdefine ('K_PATH_IMAGES', K_PATH_MAIN.'images/');\n\n\t/**\n\t * blank image\n\t */\n\tdefine ('K_BLANK_IMAGE', K_PATH_IMAGES.'_blank.png');\n\n\t/**\n\t * page format\n\t */\n\tdefine ('PDF_PAGE_FORMAT', 'A4');\n\n\t/**\n\t * page orientation (P=portrait, L=landscape)\n\t */\n\tdefine ('PDF_PAGE_ORIENTATION', 'P');\n\n\t/**\n\t * document creator\n\t */\n\tdefine ('PDF_CREATOR', 'TCPDF');\n\n\t/**\n\t * document author\n\t */\n\tdefine ('PDF_AUTHOR', 'TCPDF');\n\n\t/**\n\t * header title\n\t */\n\tdefine ('PDF_HEADER_TITLE', 'TCPDF Example');\n\n\t/**\n\t * header description string\n\t */\n\tdefine ('PDF_HEADER_STRING', \"by Nicola Asuni - Tecnick.com\\nwww.tcpdf.org\");\n\n\t/**\n\t * image logo\n\t */\n\tdefine ('PDF_HEADER_LOGO', 'tcpdf_logo.jpg');\n\n\t/**\n\t * header logo image width [mm]\n\t */\n\tdefine ('PDF_HEADER_LOGO_WIDTH', 30);\n\n\t/**\n\t *  document unit of measure [pt=point, mm=millimeter, cm=centimeter, in=inch]\n\t */\n\tdefine ('PDF_UNIT', 'mm');\n\n\t/**\n\t * header margin\n\t */\n\tdefine ('PDF_MARGIN_HEADER', 5);\n\n\t/**\n\t * footer margin\n\t */\n\tdefine ('PDF_MARGIN_FOOTER', 10);\n\n\t/**\n\t * top margin\n\t */\n\tdefine ('PDF_MARGIN_TOP', 27);\n\n\t/**\n\t * bottom margin\n\t */\n\tdefine ('PDF_MARGIN_BOTTOM', 25);\n\n\t/**\n\t * left margin\n\t */\n\tdefine ('PDF_MARGIN_LEFT', 15);\n\n\t/**\n\t * right margin\n\t */\n\tdefine ('PDF_MARGIN_RIGHT', 15);\n\n\t/**\n\t * default main font name\n\t */\n\tdefine ('PDF_FONT_NAME_MAIN', 'helvetica');\n\n\t/**\n\t * default main font size\n\t */\n\tdefine ('PDF_FONT_SIZE_MAIN', 10);\n\n\t/**\n\t * default data font name\n\t */\n\tdefine ('PDF_FONT_NAME_DATA', 'helvetica');\n\n\t/**\n\t * default data font size\n\t */\n\tdefine ('PDF_FONT_SIZE_DATA', 8);\n\n\t/**\n\t * default monospaced font name\n\t */\n\tdefine ('PDF_FONT_MONOSPACED', 'courier');\n\n\t/**\n\t * ratio used to adjust the conversion of pixels to user units\n\t */\n\tdefine ('PDF_IMAGE_SCALE_RATIO', 1.25);\n\n\t/**\n\t * magnification factor for titles\n\t */\n\tdefine('HEAD_MAGNIFICATION', 1.1);\n\n\t/**\n\t * height of cell repect font height\n\t */\n\tdefine('K_CELL_HEIGHT_RATIO', 1.25);\n\n\t/**\n\t * title magnification respect main font size\n\t */\n\tdefine('K_TITLE_MAGNIFICATION', 1.3);\n\n\t/**\n\t * reduction factor for small font\n\t */\n\tdefine('K_SMALL_RATIO', 2/3);\n\n\t/**\n\t * set to true to enable the special procedure used to avoid the overlappind of symbols on Thai language\n\t */\n\tdefine('K_THAI_TOPCHARS', true);\n\n\t/**\n\t * if true allows to call TCPDF methods using HTML syntax\n\t * IMPORTANT: For security reason, disable this feature if you are printing user HTML content.\n\t */\n\tdefine('K_TCPDF_CALLS_IN_HTML', true);\n}\n\n//============================================================+\n// END OF FILE\n//============================================================+\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/config/tcpdf_config_alt.php",
    "content": "<?php\n//============================================================+\n// File name   : tcpdf_config.php\n// Begin       : 2004-06-11\n// Last Update : 2010-04-28\n//\n// Description : Alternative configuration file for TCPDF.\n//\n// Author: Nicola Asuni\n//\n// (c) Copyright:\n//               Nicola Asuni\n//               Tecnick.com s.r.l.\n//               Via Della Pace, 11\n//               09044 Quartucciu (CA)\n//               ITALY\n//               www.tecnick.com\n//               info@tecnick.com\n//============================================================+\n\n/**\n * Alternative configuration file for TCPDF.\n * @author Nicola Asuni\n * @copyright 2004-2010 Nicola Asuni - Tecnick.com S.r.l (www.tecnick.com) Via Della Pace, 11 - 09044 - Quartucciu (CA) - ITALY - www.tecnick.com - info@tecnick.com\n * @package com.tecnick.tcpdf\n * @version 4.9.005\n * @link http://tcpdf.sourceforge.net\n * @license http://www.gnu.org/copyleft/lesser.html LGPL\n * @since 2004-10-27\n */\n\n// DOCUMENT_ROOT fix for IIS Webserver\nif ((!isset($_SERVER['DOCUMENT_ROOT'])) OR (empty($_SERVER['DOCUMENT_ROOT']))) {\n\tif(isset($_SERVER['SCRIPT_FILENAME'])) {\n\t\t$_SERVER['DOCUMENT_ROOT'] = str_replace( '\\\\', '/', substr($_SERVER['SCRIPT_FILENAME'], 0, 0-strlen($_SERVER['PHP_SELF'])));\n\t} elseif(isset($_SERVER['PATH_TRANSLATED'])) {\n\t\t$_SERVER['DOCUMENT_ROOT'] = str_replace( '\\\\', '/', substr(str_replace('\\\\\\\\', '\\\\', $_SERVER['PATH_TRANSLATED']), 0, 0-strlen($_SERVER['PHP_SELF'])));\n\t}\telse {\n\t\t// define here your DOCUMENT_ROOT path if the previous fails\n\t\t$_SERVER['DOCUMENT_ROOT'] = '/var/www';\n\t}\n}\n\n// Automatic calculation for the following K_PATH_MAIN constant\n$k_path_main = str_replace( '\\\\', '/', realpath(substr(dirname(__FILE__), 0, 0-strlen('config'))));\nif (substr($k_path_main, -1) != '/') {\n\t$k_path_main .= '/';\n}\n\n/**\n * Installation path (/var/www/tcpdf/).\n * By default it is automatically calculated but you can also set it as a fixed string to improve performances.\n */\ndefine ('K_PATH_MAIN', $k_path_main);\n\n// Automatic calculation for the following K_PATH_URL constant\nif (isset($_SERVER['HTTP_HOST']) AND (!empty($_SERVER['HTTP_HOST']))) {\n\tif(isset($_SERVER['HTTPS']) AND (!empty($_SERVER['HTTPS'])) AND strtolower($_SERVER['HTTPS'])!='off') {\n\t\t$k_path_url = 'https://';\n\t} else {\n\t\t$k_path_url = 'http://';\n\t}\n\t$k_path_url .= $_SERVER['HTTP_HOST'];\n\t$k_path_url .= str_replace( '\\\\', '/', substr($_SERVER['PHP_SELF'], 0, -24));\n}\n\n/**\n * URL path to tcpdf installation folder (http://localhost/tcpdf/).\n * By default it is automatically calculated but you can also set it as a fixed string to improve performances..\n */\ndefine ('K_PATH_URL', $k_path_url);\n\n/**\n * path for PDF fonts\n * use K_PATH_MAIN.'fonts/old/' for old non-UTF8 fonts\n */\ndefine ('K_PATH_FONTS', K_PATH_MAIN.'fonts/');\n\n/**\n * cache directory for temporary files (full path)\n */\ndefine ('K_PATH_CACHE', K_PATH_MAIN.'cache/');\n\n/**\n * cache directory for temporary files (url path)\n */\ndefine ('K_PATH_URL_CACHE', K_PATH_URL.'cache/');\n\n/**\n *images directory\n */\ndefine ('K_PATH_IMAGES', K_PATH_MAIN.'images/');\n\n/**\n * blank image\n */\ndefine ('K_BLANK_IMAGE', K_PATH_IMAGES.'_blank.png');\n\n/**\n * page format\n */\ndefine ('PDF_PAGE_FORMAT', 'A4');\n\n/**\n * page orientation (P=portrait, L=landscape)\n */\ndefine ('PDF_PAGE_ORIENTATION', 'P');\n\n/**\n * document creator\n */\ndefine ('PDF_CREATOR', 'TCPDF');\n\n/**\n * document author\n */\ndefine ('PDF_AUTHOR', 'TCPDF');\n\n/**\n * header title\n */\ndefine ('PDF_HEADER_TITLE', 'TCPDF Example');\n\n/**\n * header description string\n */\ndefine ('PDF_HEADER_STRING', \"by Nicola Asuni - Tecnick.com\\nwww.tcpdf.org\");\n\n/**\n * image logo\n */\ndefine ('PDF_HEADER_LOGO', 'tcpdf_logo.jpg');\n\n/**\n * header logo image width [mm]\n */\ndefine ('PDF_HEADER_LOGO_WIDTH', 30);\n\n/**\n *  document unit of measure [pt=point, mm=millimeter, cm=centimeter, in=inch]\n */\ndefine ('PDF_UNIT', 'mm');\n\n/**\n * header margin\n */\ndefine ('PDF_MARGIN_HEADER', 5);\n\n/**\n * footer margin\n */\ndefine ('PDF_MARGIN_FOOTER', 10);\n\n/**\n * top margin\n */\ndefine ('PDF_MARGIN_TOP', 27);\n\n/**\n * bottom margin\n */\ndefine ('PDF_MARGIN_BOTTOM', 25);\n\n/**\n * left margin\n */\ndefine ('PDF_MARGIN_LEFT', 15);\n\n/**\n * right margin\n */\ndefine ('PDF_MARGIN_RIGHT', 15);\n\n/**\n * default main font name\n */\ndefine ('PDF_FONT_NAME_MAIN', 'helvetica');\n\n/**\n * default main font size\n */\ndefine ('PDF_FONT_SIZE_MAIN', 10);\n\n/**\n * default data font name\n */\ndefine ('PDF_FONT_NAME_DATA', 'helvetica');\n\n/**\n * default data font size\n */\ndefine ('PDF_FONT_SIZE_DATA', 8);\n\n/**\n * default monospaced font name\n */\ndefine ('PDF_FONT_MONOSPACED', 'courier');\n\n/**\n * ratio used to adjust the conversion of pixels to user units\n */\ndefine ('PDF_IMAGE_SCALE_RATIO', 1.25);\n\n/**\n * magnification factor for titles\n */\ndefine('HEAD_MAGNIFICATION', 1.1);\n\n/**\n * height of cell repect font height\n */\ndefine('K_CELL_HEIGHT_RATIO', 1.25);\n\n/**\n * title magnification respect main font size\n */\ndefine('K_TITLE_MAGNIFICATION', 1.3);\n\n/**\n * reduction factor for small font\n */\ndefine('K_SMALL_RATIO', 2/3);\n\n/**\n * set to true to enable the special procedure used to avoid the overlappind of symbols on Thai language\n */\ndefine('K_THAI_TOPCHARS', true);\n\n/**\n * if true allows to call TCPDF methods using HTML syntax\n * IMPORTANT: For security reason, disable this feature if you are printing user HTML content.\n */\ndefine('K_TCPDF_CALLS_IN_HTML', true);\n\n//============================================================+\n// END OF FILE\n//============================================================+\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/doc/read_me.txt",
    "content": "You can read the documentation at : http://www.tecnick.com/pagefiles/tcpdf/doc/index.html\r\n\r\nit has been removed because of the size of the package of HTML2PDF... "
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/examples/read_me.txt",
    "content": "You can read the documentation at : http://www.tecnick.com/public/code/cp_dpage.php?aiocp_dp=tcpdf_examples\r\n\r\nit has been removed because of the size of the package of HTML2PDF... "
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/README.TXT",
    "content": "This folder contains fonts descriptions for TCPDF.\nAll fonts names must be in lowercase.\nPlease read the documentation on subfolders for copyright, license and other information."
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/almohanad.php",
    "content": "<?php\r\n$type='TrueTypeUnicode';\r\n$name='AlMohanad';\r\n$desc=array('Ascent'=>1093,'Descent'=>-509,'CapHeight'=>1093,'Flags'=>32,'FontBBox'=>'[-278 -507 1124 1093]','ItalicAngle'=>0,'StemV'=>70,'MissingWidth'=>600);\r\n$up=-136;\r\n$ut=64;\n$dw=600;\r\n$cw=array(\r\n\t0=>0,32=>139,33=>185,34=>308,35=>278,36=>278,37=>556,38=>463,39=>154,40=>185,41=>185,42=>278,43=>317,44=>139,45=>185,46=>139,\r\n\t47=>154,48=>278,49=>278,50=>278,51=>278,52=>278,53=>278,54=>278,55=>278,56=>278,57=>278,58=>185,59=>185,60=>317,61=>317,62=>317,\r\n\t63=>278,64=>517,65=>401,66=>371,67=>401,68=>402,69=>371,70=>339,71=>432,72=>430,73=>214,74=>278,75=>424,76=>369,77=>524,78=>401,\r\n\t79=>432,80=>339,81=>432,82=>396,83=>309,84=>371,85=>401,86=>401,87=>556,88=>401,89=>401,90=>371,91=>185,92=>154,93=>185,94=>323,\r\n\t95=>278,96=>185,97=>278,98=>309,99=>247,100=>309,101=>247,102=>185,103=>278,104=>309,105=>154,106=>185,107=>309,108=>154,109=>463,110=>309,\r\n\t111=>278,112=>309,113=>309,114=>247,115=>216,116=>185,117=>309,118=>278,119=>401,120=>278,121=>278,122=>247,123=>219,124=>122,125=>219,126=>289,\r\n\t8364=>278,1027=>339,8218=>185,1107=>254,8222=>278,8230=>556,8224=>278,8225=>278,710=>185,8240=>556,352=>309,8249=>185,338=>556,1036=>432,381=>371,1039=>432,\r\n\t8216=>185,8217=>185,8220=>278,8221=>278,8226=>194,8211=>278,8212=>556,732=>185,8482=>556,353=>216,8250=>185,339=>401,1116=>297,382=>247,376=>401,161=>185,\r\n\t162=>278,163=>278,164=>278,165=>278,166=>122,167=>278,168=>185,169=>415,170=>167,171=>278,172=>317,174=>415,175=>185,176=>222,177=>317,178=>167,\r\n\t179=>167,180=>185,181=>309,182=>300,183=>139,184=>185,185=>167,186=>183,187=>278,188=>417,189=>417,190=>417,191=>278,192=>401,193=>401,194=>401,\r\n\t195=>401,196=>401,197=>401,198=>556,199=>401,200=>371,201=>371,202=>371,203=>371,204=>216,205=>216,206=>216,207=>216,208=>401,209=>401,210=>432,\r\n\t211=>432,212=>432,213=>432,214=>432,215=>317,216=>432,217=>401,218=>401,219=>401,220=>401,221=>401,222=>339,223=>309,224=>278,225=>278,226=>278,\r\n\t227=>278,228=>278,229=>278,230=>401,231=>247,232=>247,233=>247,234=>247,235=>247,236=>154,237=>154,238=>154,239=>154,240=>278,241=>309,242=>278,\r\n\t243=>278,244=>278,245=>278,246=>278,247=>317,248=>278,249=>309,250=>309,251=>309,252=>309,253=>278,254=>309,255=>278,256=>401,257=>278,258=>401,\r\n\t259=>278,260=>401,261=>278,262=>401,263=>247,264=>401,265=>247,266=>401,267=>247,268=>401,269=>247,270=>401,271=>309,272=>401,273=>309,274=>371,\r\n\t275=>247,276=>371,277=>247,278=>371,279=>247,280=>371,281=>247,282=>371,283=>247,284=>432,285=>278,286=>432,287=>278,288=>432,289=>278,290=>432,\r\n\t291=>278,292=>432,293=>309,294=>432,295=>309,296=>216,297=>154,298=>216,299=>154,300=>216,301=>154,302=>216,303=>154,304=>216,305=>154,306=>490,\r\n\t307=>270,308=>278,309=>185,310=>432,311=>309,312=>297,313=>371,314=>154,315=>371,316=>154,317=>371,318=>154,319=>371,320=>293,321=>371,322=>154,\r\n\t323=>401,324=>309,325=>401,326=>309,327=>401,328=>309,329=>391,330=>401,331=>309,332=>432,333=>278,334=>432,335=>278,336=>432,337=>278,340=>401,\r\n\t341=>247,342=>401,343=>247,344=>401,345=>247,346=>309,347=>216,348=>309,349=>216,350=>309,351=>216,354=>371,355=>185,356=>371,357=>185,358=>371,\r\n\t359=>185,360=>401,361=>309,362=>401,363=>309,364=>401,365=>309,366=>401,367=>309,368=>401,369=>309,370=>401,371=>309,372=>556,373=>401,374=>401,\r\n\t375=>278,377=>371,378=>247,379=>371,380=>247,383=>185,450=>317,477=>247,484=>432,485=>278,536=>309,537=>216,538=>371,539=>185,658=>282,711=>185,\r\n\t728=>185,729=>185,730=>185,731=>185,733=>185,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,\r\n\t779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,\r\n\t795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,\r\n\t811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,\r\n\t827=>0,828=>0,829=>0,830=>0,831=>0,864=>0,865=>0,884=>111,885=>111,890=>0,894=>185,900=>100,901=>183,902=>401,903=>139,904=>451,\r\n\t905=>532,906=>316,908=>451,910=>501,911=>451,912=>183,913=>401,914=>371,915=>339,916=>422,917=>371,918=>371,919=>432,920=>432,921=>216,922=>432,\r\n\t923=>401,924=>524,925=>401,926=>361,927=>432,928=>451,929=>339,931=>361,932=>371,933=>401,934=>482,935=>401,936=>482,937=>451,938=>0,939=>401,\r\n\t940=>336,941=>244,942=>336,943=>183,944=>306,945=>336,946=>306,947=>306,948=>306,949=>244,950=>275,951=>336,952=>306,953=>183,954=>338,955=>275,\r\n\t956=>336,957=>275,958=>275,959=>306,960=>336,961=>306,962=>244,963=>306,964=>244,965=>306,966=>367,967=>275,968=>397,969=>397,970=>183,971=>306,\r\n\t972=>306,973=>306,974=>397,976=>306,977=>306,978=>401,979=>401,980=>401,981=>367,982=>336,986=>283,987=>237,988=>339,989=>261,1024=>371,1025=>371,\r\n\t1026=>371,1028=>401,1029=>309,1030=>216,1031=>216,1032=>278,1033=>573,1034=>573,1035=>449,1037=>432,1038=>401,1040=>401,1041=>371,1042=>371,1043=>328,1044=>432,\r\n\t1045=>371,1046=>615,1047=>313,1048=>429,1049=>429,1050=>424,1051=>432,1052=>524,1053=>432,1054=>432,1055=>430,1056=>339,1057=>401,1058=>371,1059=>401,1060=>444,\r\n\t1061=>401,1062=>429,1063=>432,1064=>618,1065=>618,1066=>482,1067=>539,1068=>350,1069=>401,1070=>619,1071=>408,1072=>278,1073=>278,1074=>279,1075=>246,1076=>309,\r\n\t1077=>247,1078=>417,1079=>227,1080=>319,1081=>319,1082=>297,1083=>302,1084=>376,1085=>309,1086=>278,1087=>309,1088=>309,1089=>247,1090=>274,1091=>278,1092=>458,\r\n\t1093=>278,1094=>309,1095=>309,1096=>454,1097=>454,1098=>340,1099=>423,1100=>284,1101=>247,1102=>439,1103=>284,1104=>247,1105=>247,1106=>309,1108=>247,1109=>216,\r\n\t1110=>154,1111=>154,1112=>185,1113=>440,1114=>437,1115=>309,1117=>309,1118=>278,1119=>309,1164=>339,1165=>284,1166=>339,1167=>309,1168=>339,1169=>254,1170=>339,\r\n\t1171=>254,1172=>339,1173=>254,1174=>615,1175=>417,1176=>322,1177=>216,1178=>432,1179=>297,1180=>432,1181=>297,1182=>432,1183=>297,1184=>537,1185=>352,1186=>432,\r\n\t1187=>309,1188=>563,1189=>408,1190=>432,1191=>461,1192=>401,1193=>247,1194=>401,1195=>247,1196=>371,1197=>274,1198=>401,1199=>278,1200=>401,1201=>278,1202=>401,\r\n\t1203=>278,1204=>581,1205=>432,1206=>432,1207=>309,1208=>432,1209=>309,1210=>432,1211=>309,1212=>367,1213=>247,1214=>367,1215=>247,1216=>216,1217=>615,1218=>417,\r\n\t1219=>432,1220=>297,1223=>432,1224=>309,1227=>432,1228=>309,1232=>401,1233=>278,1234=>401,1235=>278,1236=>556,1237=>401,1238=>371,1239=>247,1240=>367,1241=>247,\r\n\t1242=>367,1243=>247,1244=>615,1245=>417,1246=>313,1247=>227,1248=>322,1249=>216,1250=>432,1251=>309,1252=>432,1253=>309,1254=>432,1255=>278,1256=>432,1257=>278,\r\n\t1258=>432,1259=>278,1260=>401,1261=>247,1262=>401,1263=>278,1264=>401,1265=>278,1266=>401,1267=>278,1268=>432,1269=>309,1272=>548,1273=>423,1488=>280,1489=>280,\r\n\t1490=>174,1491=>280,1492=>280,1493=>158,1494=>158,1495=>280,1496=>280,1497=>158,1498=>287,1499=>280,1500=>280,1501=>280,1502=>280,1503=>156,1504=>158,1505=>280,\r\n\t1506=>280,1507=>292,1508=>280,1509=>273,1510=>280,1511=>305,1512=>285,1513=>299,1514=>280,1548=>195,1563=>246,1567=>340,1569=>392,1570=>306,1571=>247,1572=>447,\r\n\t1573=>247,1574=>602,1575=>192,1576=>635,1577=>369,1578=>635,1579=>635,1580=>548,1581=>1173,1582=>548,1583=>363,1584=>363,1585=>439,1586=>442,1587=>875,1588=>875,\r\n\t1589=>1061,1590=>1061,1591=>811,1592=>811,1593=>549,1594=>547,1600=>389,1601=>755,1602=>574,1603=>717,1604=>555,1605=>423,1606=>532,1607=>371,1608=>454,1609=>633,\r\n\t1610=>643,1611=>-19,1612=>-26,1613=>-20,1614=>-19,1615=>-18,1616=>-19,1617=>-19,1618=>-15,1632=>383,1633=>383,1634=>383,1635=>383,1636=>383,1637=>383,1638=>383,\r\n\t1639=>383,1640=>383,1641=>383,1642=>383,1645=>398,7936=>336,7937=>336,7938=>336,7939=>336,7940=>336,7941=>336,7942=>336,7943=>336,7944=>401,7945=>401,7946=>401,\r\n\t7947=>401,7948=>401,7949=>401,7950=>401,7951=>401,7952=>244,7953=>244,7954=>244,7955=>244,7956=>244,7957=>244,7960=>371,7961=>371,7962=>371,7963=>371,7964=>371,\r\n\t7965=>371,7968=>336,7969=>336,7970=>336,7971=>336,7972=>336,7973=>336,7974=>336,7975=>336,7976=>432,7977=>432,7978=>432,7979=>432,7980=>432,7981=>432,7982=>432,\r\n\t7983=>432,7984=>183,7985=>183,7986=>183,7987=>183,7988=>183,7989=>183,7990=>183,7991=>183,7992=>216,7993=>216,7994=>216,7995=>216,7996=>216,7997=>216,7998=>216,\r\n\t7999=>216,8000=>306,8001=>306,8002=>306,8003=>306,8004=>306,8005=>306,8008=>432,8009=>432,8010=>432,8011=>432,8012=>432,8013=>432,8016=>306,8017=>306,8018=>306,\r\n\t8019=>306,8020=>306,8021=>306,8022=>306,8023=>306,8025=>401,8027=>401,8029=>401,8031=>401,8032=>397,8033=>397,8034=>397,8035=>397,8036=>397,8037=>397,8038=>397,\r\n\t8039=>397,8040=>451,8041=>451,8042=>451,8043=>451,8044=>451,8045=>451,8046=>451,8047=>451,8048=>336,8049=>336,8050=>244,8051=>244,8052=>336,8053=>336,8054=>183,\r\n\t8055=>183,8056=>306,8057=>306,8058=>306,8059=>306,8060=>397,8061=>397,8064=>336,8065=>336,8066=>336,8067=>336,8068=>336,8069=>336,8070=>336,8071=>336,8072=>401,\r\n\t8073=>401,8074=>401,8075=>401,8076=>401,8077=>401,8078=>401,8079=>401,8080=>336,8081=>336,8082=>336,8083=>336,8084=>336,8085=>336,8086=>336,8087=>336,8088=>432,\r\n\t8089=>432,8090=>432,8091=>432,8092=>432,8093=>432,8094=>432,8095=>432,8096=>397,8097=>397,8098=>397,8099=>397,8100=>397,8101=>397,8102=>397,8103=>397,8104=>451,\r\n\t8105=>451,8106=>451,8107=>451,8108=>451,8109=>451,8110=>451,8111=>451,8112=>336,8113=>336,8114=>336,8115=>336,8116=>336,8118=>336,8119=>336,8120=>401,8121=>401,\r\n\t8122=>401,8123=>401,8124=>401,8125=>278,8126=>0,8127=>278,8128=>278,8129=>306,8130=>336,8131=>336,8132=>336,8134=>336,8135=>336,8136=>371,8137=>371,8138=>432,\r\n\t8139=>432,8140=>432,8141=>278,8142=>278,8143=>278,8144=>183,8145=>183,8146=>183,8147=>183,8150=>183,8151=>183,8152=>216,8153=>216,8154=>216,8155=>216,8157=>278,\r\n\t8158=>278,8159=>278,8160=>306,8161=>306,8162=>306,8163=>306,8164=>306,8165=>306,8166=>306,8167=>306,8168=>401,8169=>401,8170=>401,8171=>401,8172=>339,8173=>306,\r\n\t8174=>306,8175=>278,8178=>397,8179=>397,8180=>397,8182=>397,8183=>397,8184=>432,8185=>432,8186=>451,8187=>451,8188=>451,8189=>278,8190=>278,8208=>185,8209=>185,\r\n\t8219=>185,8223=>278,8227=>311,8241=>1011,8248=>261,8251=>404,8253=>386,8255=>529,8256=>529,8257=>188,8258=>517,8259=>185,8260=>93,8261=>184,8262=>184,8267=>300,\r\n\t8308=>167,8309=>556,8321=>167,8322=>167,8323=>167,8324=>167,8352=>394,8353=>401,8354=>435,8355=>339,8356=>278,8357=>463,8358=>401,8359=>389,8361=>556,8470=>530,\r\n\t8471=>415,8479=>401,8483=>401,8486=>451,8487=>451,8494=>306,8498=>339,8543=>417,8706=>274,8710=>340,8721=>396,8722=>317,8730=>305,8734=>418,8800=>317,8804=>317,\r\n\t8805=>317,9674=>274,12353=>556,12354=>556,12355=>556,12356=>556,12357=>556,12358=>556,12359=>556,12360=>556,12361=>556,12362=>556,12363=>556,12364=>556,12365=>556,12366=>556,\r\n\t12367=>556,12368=>556,12369=>556,12370=>556,12371=>556,12372=>556,12373=>556,12374=>556,12375=>556,12376=>556,12377=>556,12378=>556,12379=>556,12380=>556,12381=>556,12382=>556,\r\n\t12383=>556,12384=>556,12385=>556,12386=>556,12387=>556,12388=>556,12389=>556,12390=>556,12391=>556,12392=>556,12393=>556,12394=>556,12395=>556,12396=>556,12397=>556,12398=>556,\r\n\t12399=>556,12400=>556,12401=>556,12402=>556,12403=>556,12404=>556,12405=>556,12406=>556,12407=>556,12408=>556,12409=>556,12410=>556,12411=>556,12412=>556,12413=>556,12414=>556,\r\n\t12415=>556,12416=>556,12417=>556,12418=>556,12419=>556,12420=>556,12421=>556,12422=>556,12423=>556,12424=>556,12425=>556,12426=>556,12427=>556,12428=>556,12429=>556,12430=>556,\r\n\t12431=>556,12432=>556,12433=>556,12434=>556,12435=>556,12449=>556,12450=>556,12451=>556,12452=>556,12453=>556,12454=>556,12455=>556,12456=>556,12457=>556,12458=>556,12459=>556,\r\n\t12460=>556,12461=>556,12462=>556,12463=>556,12464=>556,12465=>556,12466=>556,12467=>556,12468=>556,12469=>556,12470=>556,12471=>556,12472=>556,12473=>556,12474=>556,12475=>556,\r\n\t12476=>556,12477=>556,12478=>556,12479=>556,12480=>556,12481=>556,12482=>556,12483=>556,12484=>556,12485=>556,12486=>556,12487=>556,12488=>556,12489=>556,12490=>556,12491=>556,\r\n\t12492=>556,12493=>556,12494=>556,12495=>556,12496=>556,12497=>556,12498=>556,12499=>556,12500=>556,12501=>556,12502=>556,12503=>556,12504=>556,12505=>556,12506=>556,12507=>556,\r\n\t12508=>556,12509=>556,12510=>556,12511=>556,12512=>556,12513=>556,12514=>556,12515=>556,12516=>556,12517=>556,12518=>556,12519=>556,12520=>556,12521=>556,12522=>556,12523=>556,\r\n\t12524=>556,12525=>556,12526=>556,12527=>556,12528=>556,12529=>556,12530=>556,12531=>556,12532=>556,12533=>556,12534=>556,63033=>278,63034=>278,63035=>278,63036=>278,63037=>278,\r\n\t63038=>278,63039=>278,63040=>278,63041=>278,63171=>185,63196=>278,64256=>309,64257=>309,64258=>309,64259=>463,64260=>463,64262=>402,64606=>0,64607=>0,64608=>0,64609=>0,\r\n\t64610=>0,64830=>467,64831=>467,65010=>814,65152=>392,65153=>306,65154=>281,65155=>247,65156=>250,65157=>447,65158=>412,65159=>247,65160=>222,65161=>602,65162=>535,65163=>360,\r\n\t65164=>329,65165=>192,65166=>220,65167=>635,65168=>644,65169=>338,65170=>321,65171=>369,65172=>419,65173=>635,65174=>644,65175=>345,65176=>336,65177=>635,65178=>644,65179=>393,\r\n\t65180=>345,65181=>548,65182=>553,65183=>637,65184=>652,65185=>548,65186=>546,65187=>637,65188=>656,65189=>548,65190=>544,65191=>637,65192=>656,65193=>363,65194=>439,65195=>363,\r\n\t65196=>439,65197=>440,65198=>471,65199=>439,65200=>474,65201=>875,65202=>871,65203=>608,65204=>588,65205=>875,65206=>871,65207=>609,65208=>587,65209=>1061,65210=>1033,65211=>794,\r\n\t65212=>758,65213=>1061,65214=>1033,65215=>794,65216=>761,65217=>811,65218=>793,65219=>659,65220=>647,65221=>811,65222=>793,65223=>659,65224=>642,65225=>549,65226=>481,65227=>512,\r\n\t65228=>409,65229=>547,65230=>476,65231=>512,65232=>409,65233=>755,65234=>748,65235=>416,65236=>442,65237=>574,65238=>550,65239=>416,65240=>442,65241=>717,65242=>687,65243=>883,\r\n\t65244=>409,65245=>555,65246=>511,65247=>338,65248=>297,65249=>423,65250=>478,65251=>489,65252=>476,65253=>532,65254=>548,65255=>336,65256=>326,65257=>371,65258=>391,65259=>524,\r\n\t65260=>412,65261=>454,65262=>412,65263=>633,65264=>566,65265=>643,65266=>560,65267=>357,65268=>333,65269=>623,65270=>617,65271=>603,65272=>621,65273=>576,65274=>617,65275=>576,\r\n\t65276=>625);\r\n$enc='';\r\n$diff='';\r\n$file='almohanad.z';\r\n$ctg='almohanad.ctg.z';\r\n$originalsize=227760;\r\n?>\r\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/arialunicid0.php",
    "content": "<?php\r\n$type='cidfont0';\r\n$name='ArialUnicodeMS';\r\n$desc=array('Ascent'=>1069,'Descent'=>-271,'CapHeight'=>1069,'Flags'=>32,'FontBBox'=>'[-1011 -330 2260 1078]','ItalicAngle'=>0,'StemV'=>70,'MissingWidth'=>600);\r\n$up=-100;\r\n$ut=50;\n$dw=1000;\r\n$cw=array(\r\n\t32=>278,33=>278,34=>355,35=>556,36=>556,37=>889,38=>667,39=>191,40=>333,41=>333,42=>389,43=>584,44=>278,45=>333,46=>278,47=>278,\r\n\t48=>556,49=>556,50=>556,51=>556,52=>556,53=>556,54=>556,55=>556,56=>556,57=>556,58=>278,59=>278,60=>584,61=>584,62=>584,63=>556,\r\n\t64=>1015,65=>667,66=>667,67=>722,68=>722,69=>667,70=>611,71=>778,72=>722,73=>278,74=>500,75=>667,76=>556,77=>833,78=>722,79=>778,\r\n\t80=>667,81=>778,82=>722,83=>667,84=>611,85=>722,86=>667,87=>944,88=>667,89=>667,90=>611,91=>278,92=>278,93=>278,94=>469,95=>500,\r\n\t96=>333,97=>556,98=>556,99=>500,100=>556,101=>556,102=>278,103=>556,104=>556,105=>222,106=>222,107=>500,108=>222,109=>833,110=>556,111=>556,\r\n\t112=>556,113=>556,114=>333,115=>500,116=>278,117=>556,118=>500,119=>722,120=>500,121=>500,122=>500,123=>334,124=>260,125=>334,126=>584,8364=>556,\r\n\t1027=>567,8218=>222,402=>278,8222=>333,8230=>1000,8224=>556,8225=>556,710=>333,8240=>1000,352=>667,8249=>333,338=>1000,1036=>584,381=>611,1039=>723,8216=>222,\r\n\t8217=>222,8220=>333,8221=>333,8226=>350,8211=>500,8212=>1000,732=>333,8482=>1000,353=>500,8250=>333,339=>944,1116=>437,382=>500,376=>667,160=>278,161=>333,\r\n\t162=>556,163=>556,164=>556,165=>556,166=>260,167=>556,168=>333,169=>737,170=>370,171=>556,172=>584,173=>333,174=>737,175=>500,176=>400,177=>584,\r\n\t178=>333,179=>333,180=>333,181=>556,182=>537,183=>278,184=>333,185=>333,186=>365,187=>556,188=>834,189=>834,190=>834,191=>611,192=>667,193=>667,\r\n\t194=>667,195=>667,196=>667,197=>667,198=>1000,199=>722,200=>667,201=>667,202=>667,203=>667,204=>278,205=>278,206=>278,207=>278,208=>722,209=>722,\r\n\t210=>778,211=>778,212=>778,213=>778,214=>778,215=>584,216=>778,217=>722,218=>722,219=>722,220=>722,221=>667,222=>667,223=>611,224=>556,225=>556,\r\n\t226=>556,227=>556,228=>556,229=>556,230=>889,231=>500,232=>556,233=>556,234=>556,235=>556,236=>278,237=>278,238=>278,239=>278,240=>556,241=>556,\r\n\t242=>556,243=>556,244=>556,245=>556,246=>556,247=>584,248=>611,249=>556,250=>556,251=>556,252=>556,253=>500,254=>556,255=>500,256=>667,257=>556,\r\n\t258=>667,259=>556,260=>667,261=>556,262=>722,263=>500,264=>722,265=>500,266=>722,267=>500,268=>722,269=>500,270=>722,271=>627,272=>722,273=>556,\r\n\t274=>667,275=>556,276=>667,277=>556,278=>667,279=>556,280=>667,281=>556,282=>667,283=>556,284=>778,285=>556,286=>778,287=>556,288=>778,289=>556,\r\n\t290=>778,291=>556,292=>722,293=>556,294=>722,295=>556,296=>278,297=>222,298=>278,299=>222,300=>278,301=>222,302=>278,303=>222,304=>278,305=>278,\r\n\t306=>751,307=>444,308=>500,309=>222,310=>667,311=>500,312=>437,313=>556,314=>222,315=>556,316=>222,317=>556,318=>222,319=>556,320=>318,321=>556,\r\n\t322=>222,323=>722,324=>556,325=>722,326=>556,327=>722,328=>556,329=>626,330=>723,331=>556,332=>778,333=>556,334=>778,335=>556,336=>778,337=>556,\r\n\t340=>722,341=>333,342=>722,343=>333,344=>722,345=>333,346=>667,347=>500,348=>667,349=>500,350=>667,351=>500,354=>611,355=>278,356=>611,357=>406,\r\n\t358=>611,359=>278,360=>722,361=>556,362=>722,363=>556,364=>722,365=>556,366=>722,367=>556,368=>722,369=>556,370=>722,371=>556,372=>944,373=>722,\r\n\t374=>667,375=>500,377=>611,378=>500,379=>611,380=>500,383=>222,384=>556,385=>740,386=>655,387=>556,388=>556,389=>556,390=>722,391=>766,392=>579,\r\n\t393=>722,394=>789,395=>655,396=>556,397=>557,398=>667,399=>729,400=>604,401=>611,403=>791,404=>649,405=>806,406=>245,407=>322,408=>667,409=>500,\r\n\t410=>322,411=>500,412=>833,413=>722,414=>556,415=>778,416=>776,417=>556,418=>1019,419=>782,420=>735,421=>556,422=>722,423=>667,424=>500,425=>602,\r\n\t426=>366,427=>278,428=>571,429=>278,430=>611,431=>776,432=>620,433=>748,434=>667,435=>752,436=>615,437=>611,438=>500,439=>628,440=>628,441=>526,\r\n\t442=>480,443=>556,444=>556,445=>526,446=>556,447=>556,448=>278,449=>464,450=>474,451=>278,452=>1333,453=>1222,454=>1056,455=>1030,456=>778,457=>444,\r\n\t458=>1222,459=>944,460=>778,461=>667,462=>556,463=>278,464=>278,465=>778,466=>556,467=>722,468=>556,469=>722,470=>556,471=>722,472=>556,473=>722,\r\n\t474=>556,475=>722,476=>556,477=>556,478=>667,479=>556,480=>667,481=>556,482=>1000,483=>889,484=>778,485=>556,486=>778,487=>556,488=>667,489=>500,\r\n\t490=>778,491=>556,492=>778,493=>556,494=>534,495=>534,496=>222,497=>1333,498=>1222,499=>1056,500=>778,501=>556,506=>667,507=>556,508=>1000,509=>889,\r\n\t510=>778,511=>611,512=>667,513=>556,514=>667,515=>556,516=>667,517=>556,518=>667,519=>556,520=>278,521=>278,522=>278,523=>278,524=>778,525=>556,\r\n\t526=>778,527=>556,528=>722,529=>333,530=>722,531=>333,532=>722,533=>556,534=>722,535=>556,592=>556,593=>556,594=>556,595=>556,596=>500,597=>500,\r\n\t598=>556,599=>556,600=>556,601=>556,602=>777,603=>485,604=>485,605=>686,606=>519,607=>260,608=>556,609=>556,610=>557,611=>500,612=>500,613=>556,\r\n\t614=>556,615=>556,616=>242,617=>282,618=>356,619=>356,620=>425,621=>222,622=>635,623=>833,624=>833,625=>833,626=>556,627=>556,628=>558,629=>556,\r\n\t630=>715,631=>674,632=>558,633=>333,634=>333,635=>333,636=>333,637=>333,638=>312,639=>312,640=>530,641=>530,642=>500,643=>216,644=>276,645=>216,\r\n\t646=>222,647=>278,648=>278,649=>596,650=>558,651=>556,652=>500,653=>722,654=>500,655=>500,656=>500,657=>564,658=>530,659=>530,660=>464,661=>464,\r\n\t662=>464,663=>500,664=>614,665=>526,666=>519,667=>557,668=>558,669=>222,670=>500,671=>416,672=>556,673=>464,674=>464,675=>966,676=>966,677=>1030,\r\n\t678=>689,679=>484,680=>718,688=>326,689=>326,690=>153,691=>201,692=>201,693=>201,694=>304,695=>389,696=>278,697=>222,698=>372,699=>222,700=>222,\r\n\t701=>222,702=>222,703=>222,704=>250,705=>250,706=>320,707=>320,708=>320,709=>320,711=>333,712=>192,713=>333,714=>333,715=>333,716=>192,717=>333,\r\n\t718=>333,719=>333,720=>300,721=>300,722=>222,723=>222,724=>340,725=>340,726=>280,727=>362,728=>333,729=>333,730=>333,731=>333,733=>333,734=>333,\r\n\t736=>278,737=>153,738=>270,739=>274,740=>325,741=>360,742=>360,743=>360,744=>360,745=>360,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,\r\n\t774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,\r\n\t790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,\r\n\t806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,\r\n\t822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,\r\n\t864=>0,865=>0,884=>308,885=>308,890=>278,894=>278,900=>278,901=>278,902=>667,903=>278,904=>704,905=>759,906=>315,908=>778,910=>746,911=>758,\r\n\t912=>222,913=>667,914=>667,915=>550,916=>682,917=>667,918=>611,919=>722,920=>778,921=>278,922=>667,923=>667,924=>833,925=>722,926=>650,927=>778,\r\n\t928=>722,929=>667,931=>602,932=>611,933=>667,934=>808,935=>667,936=>804,937=>758,938=>278,939=>667,940=>576,941=>434,942=>556,943=>222,944=>551,\r\n\t945=>576,946=>563,947=>500,948=>557,949=>434,950=>440,951=>556,952=>556,953=>222,954=>498,955=>500,956=>553,957=>500,958=>432,959=>556,960=>678,\r\n\t961=>571,962=>472,963=>619,964=>382,965=>551,966=>649,967=>522,968=>729,969=>766,970=>222,971=>551,972=>556,973=>551,974=>766,976=>563,977=>616,\r\n\t978=>631,979=>726,980=>631,981=>644,982=>781,986=>722,988=>578,990=>570,992=>692,994=>880,995=>833,996=>684,997=>558,998=>680,999=>529,1000=>557,\r\n\t1001=>505,1002=>623,1003=>603,1004=>610,1005=>611,1006=>568,1007=>434,1008=>600,1009=>571,1010=>500,1011=>222,1025=>667,1026=>865,1028=>717,1029=>667,1030=>278,\r\n\t1031=>278,1032=>500,1033=>1105,1034=>1009,1035=>867,1038=>635,1040=>667,1041=>655,1042=>667,1043=>567,1044=>677,1045=>667,1046=>923,1047=>604,1048=>722,1049=>722,\r\n\t1050=>584,1051=>705,1052=>833,1053=>722,1054=>778,1055=>723,1056=>667,1057=>722,1058=>611,1059=>635,1060=>760,1061=>667,1062=>740,1063=>684,1064=>920,1065=>939,\r\n\t1066=>793,1067=>883,1068=>655,1069=>717,1070=>1006,1071=>722,1072=>556,1073=>573,1074=>531,1075=>383,1076=>583,1077=>556,1078=>669,1079=>458,1080=>559,1081=>559,\r\n\t1082=>437,1083=>571,1084=>683,1085=>552,1086=>556,1087=>542,1088=>556,1089=>500,1090=>458,1091=>500,1092=>823,1093=>500,1094=>562,1095=>533,1096=>802,1097=>823,\r\n\t1098=>620,1099=>717,1100=>523,1101=>510,1102=>744,1103=>542,1105=>556,1106=>556,1107=>383,1108=>510,1109=>500,1110=>222,1111=>278,1112=>222,1113=>873,1114=>811,\r\n\t1115=>556,1118=>500,1119=>542,1120=>976,1121=>766,1122=>656,1123=>521,1124=>950,1125=>694,1126=>667,1127=>597,1128=>952,1129=>817,1130=>654,1131=>600,1132=>932,\r\n\t1133=>817,1134=>604,1135=>458,1136=>804,1137=>729,1138=>778,1139=>556,1140=>667,1141=>500,1142=>667,1143=>500,1144=>1279,1145=>1060,1146=>778,1147=>556,1148=>976,\r\n\t1149=>766,1150=>976,1151=>766,1152=>722,1153=>514,1154=>686,1155=>334,1156=>382,1157=>334,1158=>334,1168=>435,1169=>339,1170=>567,1171=>383,1172=>656,1173=>556,\r\n\t1174=>923,1175=>669,1176=>604,1177=>458,1178=>584,1179=>437,1180=>584,1181=>437,1182=>584,1183=>437,1184=>764,1185=>537,1186=>741,1187=>573,1188=>900,1189=>670,\r\n\t1190=>736,1191=>560,1192=>778,1193=>560,1194=>722,1195=>500,1196=>611,1197=>458,1198=>667,1199=>500,1200=>667,1201=>500,1202=>667,1203=>500,1204=>916,1205=>661,\r\n\t1206=>684,1207=>533,1208=>684,1209=>533,1210=>684,1211=>556,1212=>829,1213=>667,1214=>829,1215=>667,1216=>278,1217=>923,1218=>669,1219=>584,1220=>437,1223=>735,\r\n\t1224=>570,1227=>684,1228=>533,1232=>667,1233=>556,1234=>667,1235=>556,1236=>1000,1237=>889,1238=>667,1239=>556,1240=>729,1241=>556,1242=>729,1243=>556,1244=>923,\r\n\t1245=>669,1246=>604,1247=>458,1248=>604,1249=>492,1250=>722,1251=>559,1252=>722,1253=>559,1254=>778,1255=>556,1256=>778,1257=>556,1258=>778,1259=>556,1262=>635,\r\n\t1263=>500,1264=>635,1265=>500,1266=>635,1267=>500,1268=>684,1269=>533,1272=>883,1273=>717,1329=>635,1330=>531,1331=>583,1332=>583,1333=>531,1334=>531,1335=>427,\r\n\t1336=>531,1337=>750,1338=>635,1339=>531,1340=>375,1341=>583,1342=>698,1343=>531,1344=>427,1345=>531,1346=>583,1347=>531,1348=>635,1349=>698,1350=>635,1351=>635,\r\n\t1352=>531,1353=>531,1354=>698,1355=>531,1356=>635,1357=>531,1358=>698,1359=>583,1360=>479,1361=>583,1362=>531,1363=>698,1364=>698,1365=>635,1366=>750,1369=>271,\r\n\t1370=>271,1371=>150,1372=>300,1373=>271,1374=>271,1375=>420,1377=>583,1378=>427,1379=>427,1380=>427,1381=>427,1382=>427,1383=>427,1384=>427,1385=>459,1386=>427,\r\n\t1387=>427,1388=>323,1389=>531,1390=>427,1391=>427,1392=>427,1393=>427,1394=>427,1395=>427,1396=>427,1397=>271,1398=>427,1399=>375,1400=>427,1401=>375,1402=>583,\r\n\t1403=>427,1404=>427,1405=>427,1406=>427,1407=>583,1408=>427,1409=>427,1410=>323,1411=>583,1412=>375,1413=>375,1414=>583,1415=>527,1417=>271,1425=>360,1426=>360,\r\n\t1427=>360,1428=>360,1429=>360,1430=>360,1431=>360,1432=>360,1433=>360,1434=>360,1435=>360,1436=>360,1437=>360,1438=>360,1439=>360,1440=>360,1441=>360,1443=>360,\r\n\t1444=>360,1445=>360,1446=>360,1447=>360,1448=>360,1449=>360,1450=>360,1451=>360,1452=>360,1453=>360,1454=>360,1455=>360,1456=>360,1457=>360,1458=>360,1459=>360,\r\n\t1460=>360,1461=>360,1462=>360,1463=>360,1464=>360,1465=>360,1467=>360,1468=>360,1469=>360,1470=>366,1471=>360,1472=>225,1473=>360,1474=>360,1475=>238,1476=>360,\r\n\t1488=>577,1489=>563,1490=>411,1491=>512,1492=>594,1493=>316,1494=>326,1495=>594,1496=>594,1497=>316,1498=>507,1499=>527,1500=>484,1501=>594,1502=>594,1503=>316,\r\n\t1504=>338,1505=>604,1506=>550,1507=>567,1508=>569,1509=>505,1510=>514,1511=>583,1512=>507,1513=>700,1514=>633,1520=>590,1521=>590,1522=>590,1523=>216,1524=>412,\r\n\t1548=>278,1563=>278,1567=>556,1569=>529,1570=>243,1571=>243,1572=>470,1573=>243,1574=>731,1575=>243,1576=>771,1577=>514,1578=>771,1579=>771,1580=>544,1581=>544,\r\n\t1582=>544,1583=>430,1584=>430,1585=>421,1586=>421,1587=>1194,1588=>1194,1589=>1291,1590=>1291,1591=>843,1592=>843,1593=>594,1594=>594,1600=>279,1601=>957,1602=>800,\r\n\t1603=>757,1604=>662,1605=>589,1606=>692,1607=>514,1608=>470,1609=>731,1610=>731,1611=>0,1612=>0,1613=>0,1614=>0,1615=>0,1616=>0,1617=>0,1618=>0,\r\n\t1632=>480,1633=>480,1634=>480,1635=>480,1636=>480,1637=>480,1638=>480,1639=>480,1640=>480,1641=>480,1642=>547,1643=>278,1644=>278,1645=>438,1648=>0,1649=>243,\r\n\t1650=>243,1651=>243,1652=>0,1653=>380,1654=>470,1655=>548,1656=>772,1657=>771,1658=>771,1659=>771,1660=>771,1661=>771,1662=>771,1663=>771,1664=>771,1665=>544,\r\n\t1666=>544,1667=>544,1668=>544,1669=>544,1670=>544,1671=>544,1672=>430,1673=>430,1674=>430,1675=>430,1676=>430,1677=>430,1678=>430,1679=>430,1680=>430,1681=>421,\r\n\t1682=>421,1683=>421,1684=>421,1685=>421,1686=>419,1687=>421,1688=>421,1689=>421,1690=>1194,1691=>1194,1692=>1194,1693=>1291,1694=>1291,1695=>843,1696=>594,1697=>957,\r\n\t1698=>957,1699=>957,1700=>957,1701=>957,1702=>957,1703=>800,1704=>800,1705=>828,1706=>1058,1707=>828,1708=>757,1709=>757,1710=>757,1711=>828,1712=>828,1713=>828,\r\n\t1714=>828,1715=>828,1716=>828,1717=>662,1718=>662,1719=>662,1722=>692,1723=>692,1724=>692,1725=>692,1726=>706,1728=>514,1729=>509,1730=>509,1731=>509,1732=>470,\r\n\t1733=>470,1734=>470,1735=>470,1736=>470,1737=>470,1738=>470,1739=>470,1740=>731,1741=>841,1742=>731,1744=>731,1745=>731,1746=>550,1747=>550,1748=>279,1749=>514,\r\n\t1750=>726,1751=>558,1752=>321,1753=>318,1754=>342,1755=>373,1756=>716,1757=>688,1758=>852,1759=>288,1760=>288,1761=>388,1762=>350,1763=>716,1764=>146,1765=>282,\r\n\t1766=>339,1767=>339,1768=>415,1769=>514,1770=>220,1771=>220,1772=>220,1773=>350,1776=>480,1777=>480,1778=>480,1779=>480,1780=>480,1781=>480,1782=>480,1783=>480,\r\n\t1784=>480,1785=>480,2305=>0,2306=>0,2307=>294,2309=>693,2310=>910,2311=>533,2312=>533,2313=>590,2314=>713,2315=>920,2316=>677,2317=>611,2318=>611,2319=>611,\r\n\t2320=>611,2321=>910,2322=>910,2323=>910,2324=>910,2325=>667,2326=>732,2327=>593,2328=>639,2329=>624,2330=>688,2331=>713,2332=>688,2333=>712,2334=>697,2335=>502,\r\n\t2336=>533,2337=>583,2338=>523,2339=>693,2340=>585,2341=>638,2342=>533,2343=>640,2344=>585,2345=>585,2346=>565,2347=>699,2348=>592,2349=>689,2350=>633,2351=>600,\r\n\t2352=>486,2353=>486,2354=>680,2355=>730,2356=>730,2357=>592,2358=>684,2359=>608,2360=>646,2361=>546,2364=>0,2365=>373,2366=>319,2367=>319,2368=>319,2369=>0,\r\n\t2370=>0,2371=>0,2372=>0,2373=>0,2374=>0,2375=>0,2376=>0,2377=>319,2378=>319,2379=>319,2380=>319,2381=>0,2384=>884,2385=>0,2386=>0,2387=>0,\r\n\t2388=>0,2392=>667,2393=>732,2394=>593,2395=>688,2396=>583,2397=>523,2398=>699,2399=>600,2400=>920,2401=>677,2402=>0,2403=>0,2404=>331,2405=>513,2406=>639,\r\n\t2407=>639,2408=>639,2409=>639,2410=>639,2411=>639,2412=>639,2413=>639,2414=>639,2415=>639,2416=>362,2433=>0,2434=>430,2435=>430,2437=>786,2438=>1030,2439=>582,\r\n\t2440=>603,2441=>648,2442=>757,2443=>758,2444=>630,2447=>685,2448=>746,2451=>711,2452=>776,2453=>779,2454=>655,2455=>606,2456=>645,2457=>661,2458=>554,2459=>585,\r\n\t2460=>729,2461=>752,2462=>893,2463=>567,2464=>625,2465=>648,2466=>567,2467=>598,2468=>680,2469=>645,2470=>609,2471=>596,2472=>595,2474=>635,2475=>780,2476=>593,\r\n\t2477=>677,2478=>621,2479=>601,2480=>593,2482=>640,2486=>598,2487=>596,2488=>637,2489=>582,2492=>0,2494=>245,2495=>245,2496=>245,2497=>0,2498=>0,2499=>0,\r\n\t2500=>0,2503=>309,2504=>309,2507=>932,2508=>932,2509=>0,2519=>245,2524=>648,2525=>553,2527=>596,2528=>758,2529=>630,2530=>0,2531=>335,2534=>610,2535=>559,\r\n\t2536=>595,2537=>711,2538=>610,2539=>661,2540=>661,2541=>559,2542=>661,2543=>600,2544=>593,2545=>593,2546=>601,2547=>567,2548=>601,2549=>699,2550=>661,2551=>267,\r\n\t2552=>610,2553=>424,2554=>548,2562=>0,2565=>691,2566=>936,2567=>803,2568=>803,2569=>678,2570=>678,2575=>557,2576=>691,2579=>678,2580=>691,2581=>602,2582=>567,\r\n\t2583=>641,2584=>688,2585=>565,2586=>592,2587=>603,2588=>591,2589=>541,2590=>558,2591=>543,2592=>581,2593=>596,2594=>640,2595=>640,2596=>591,2597=>564,2598=>640,\r\n\t2599=>564,2600=>581,2602=>564,2603=>551,2604=>560,2605=>549,2606=>558,2607=>652,2608=>540,2610=>677,2611=>677,2613=>601,2614=>558,2616=>558,2617=>549,2620=>0,\r\n\t2622=>246,2623=>246,2624=>246,2625=>0,2626=>0,2631=>0,2632=>0,2635=>0,2636=>0,2637=>0,2649=>567,2650=>690,2651=>591,2652=>591,2654=>581,2662=>591,\r\n\t2663=>591,2664=>591,2665=>591,2666=>591,2667=>591,2668=>591,2669=>591,2670=>591,2671=>591,2672=>0,2673=>0,2674=>557,2675=>678,2676=>894,2689=>0,2690=>0,\r\n\t2691=>300,2693=>781,2694=>1044,2695=>589,2696=>589,2697=>560,2698=>758,2699=>806,2701=>781,2703=>781,2704=>781,2705=>1044,2707=>1044,2708=>1044,2709=>413,2710=>773,\r\n\t2711=>606,2712=>558,2713=>483,2714=>600,2715=>691,2716=>811,2717=>647,2718=>651,2719=>453,2720=>450,2721=>425,2722=>478,2723=>694,2724=>534,2725=>553,2726=>446,\r\n\t2727=>541,2728=>582,2730=>572,2731=>437,2732=>663,2733=>756,2734=>594,2735=>493,2736=>392,2738=>613,2739=>656,2741=>538,2742=>611,2743=>507,2744=>663,2745=>587,\r\n\t2748=>0,2749=>478,2750=>273,2751=>273,2752=>273,2753=>0,2754=>0,2755=>0,2756=>0,2757=>0,2759=>0,2760=>0,2761=>273,2763=>273,2764=>273,2765=>0,\r\n\t2768=>843,2784=>893,2790=>625,2791=>625,2792=>625,2793=>625,2794=>625,2795=>625,2796=>625,2797=>625,2798=>625,2799=>625,2817=>0,2818=>306,2819=>391,2821=>590,\r\n\t2822=>808,2823=>658,2824=>658,2825=>633,2826=>654,2827=>636,2828=>540,2831=>560,2832=>938,2835=>600,2836=>973,2837=>603,2838=>620,2839=>620,2840=>605,2841=>712,\r\n\t2842=>579,2843=>579,2844=>593,2845=>564,2846=>581,2847=>604,2848=>578,2849=>579,2850=>579,2851=>607,2852=>579,2853=>587,2854=>579,2855=>602,2856=>579,2858=>605,\r\n\t2859=>728,2860=>579,2861=>643,2862=>605,2863=>628,2864=>619,2866=>653,2867=>593,2870=>620,2871=>605,2872=>605,2873=>579,2876=>0,2877=>333,2878=>218,2879=>0,\r\n\t2880=>294,2881=>0,2882=>0,2883=>0,2887=>479,2888=>479,2891=>1026,2892=>1026,2893=>0,2902=>0,2903=>218,2908=>579,2909=>579,2911=>599,2912=>636,2913=>540,\r\n\t2918=>578,2919=>480,2920=>480,2921=>622,2922=>506,2923=>605,2924=>529,2925=>548,2926=>512,2927=>528,2928=>561,2946=>0,2947=>742,2949=>1002,2950=>1118,2951=>994,\r\n\t2952=>660,2953=>1012,2954=>1231,2958=>726,2959=>731,2960=>870,2962=>763,2963=>763,2964=>1636,2965=>667,2969=>830,2970=>584,2972=>876,2974=>986,2975=>802,2979=>1295,\r\n\t2980=>656,2984=>630,2985=>1012,2986=>694,2990=>727,2991=>790,2992=>545,2993=>718,2994=>821,2995=>871,2996=>724,2997=>873,2999=>1087,3000=>1098,3001=>1274,3006=>547,\r\n\t3007=>172,3008=>93,3009=>519,3010=>814,3014=>748,3015=>681,3016=>956,3018=>1666,3019=>1666,3020=>1994,3021=>0,3031=>871,3047=>667,3048=>1012,3049=>751,3050=>740,\r\n\t3051=>924,3052=>884,3053=>726,3054=>1002,3055=>825,3056=>717,3057=>719,3058=>774,3073=>365,3074=>601,3075=>346,3077=>720,3078=>786,3079=>567,3080=>1159,3081=>690,\r\n\t3082=>1047,3083=>1299,3084=>913,3086=>625,3087=>625,3088=>712,3090=>655,3091=>655,3092=>862,3093=>515,3094=>680,3095=>526,3096=>943,3097=>655,3098=>684,3099=>684,\r\n\t3100=>670,3101=>1205,3102=>732,3103=>888,3104=>597,3105=>709,3106=>709,3107=>809,3108=>715,3109=>702,3110=>702,3111=>702,3112=>607,3114=>623,3115=>623,3116=>681,\r\n\t3117=>681,3118=>932,3119=>1203,3120=>597,3121=>893,3122=>631,3123=>608,3125=>620,3126=>541,3127=>667,3128=>640,3129=>911,3134=>644,3135=>298,3136=>298,3137=>361,\r\n\t3138=>682,3139=>342,3140=>704,3142=>624,3143=>624,3144=>900,3146=>849,3147=>849,3148=>976,3149=>669,3157=>298,3158=>119,3168=>1620,3169=>1281,3174=>840,3175=>840,\r\n\t3176=>840,3177=>840,3178=>840,3179=>840,3180=>840,3181=>840,3182=>840,3183=>840,3202=>440,3203=>251,3205=>654,3206=>654,3207=>631,3208=>891,3209=>957,3210=>1293,\r\n\t3211=>1044,3212=>744,3214=>650,3215=>650,3216=>659,3218=>667,3219=>667,3220=>667,3221=>462,3222=>749,3223=>543,3224=>779,3225=>674,3226=>682,3227=>660,3228=>667,\r\n\t3229=>1171,3230=>926,3231=>671,3232=>557,3233=>669,3234=>669,3235=>728,3236=>544,3237=>672,3238=>672,3239=>672,3240=>560,3242=>668,3243=>668,3244=>681,3245=>687,\r\n\t3246=>972,3247=>1101,3248=>556,3249=>677,3250=>661,3251=>545,3253=>666,3254=>553,3255=>670,3256=>549,3257=>716,3262=>425,3263=>341,3264=>680,3265=>354,3266=>714,\r\n\t3267=>386,3268=>638,3270=>307,3271=>670,3272=>462,3274=>908,3275=>1251,3276=>434,3277=>336,3285=>344,3286=>404,3294=>673,3296=>1695,3297=>978,3302=>549,3303=>549,\r\n\t3304=>549,3305=>549,3306=>549,3307=>549,3308=>549,3309=>549,3310=>549,3311=>549,3330=>368,3331=>305,3333=>1201,3334=>1351,3335=>905,3336=>1459,3337=>635,3338=>1198,\r\n\t3339=>861,3340=>957,3342=>1211,3343=>1202,3344=>1839,3346=>642,3347=>1114,3348=>1195,3349=>861,3350=>982,3351=>874,3352=>1354,3353=>957,3354=>1016,3355=>1266,3356=>712,\r\n\t3357=>1454,3358=>1215,3359=>563,3360=>565,3361=>1192,3362=>1244,3363=>1268,3364=>878,3365=>966,3366=>545,3367=>879,3368=>879,3370=>1031,3371=>1175,3372=>1334,3373=>546,\r\n\t3374=>643,3375=>949,3376=>642,3377=>555,3378=>945,3379=>631,3380=>553,3381=>959,3382=>936,3383=>1122,3384=>1190,3385=>1112,3390=>475,3391=>418,3392=>442,3393=>340,\r\n\t3394=>340,3395=>473,3398=>640,3399=>530,3400=>1279,3402=>1368,3403=>1258,3404=>1447,3405=>0,3415=>553,3424=>861,3425=>1100,3430=>1095,3431=>929,3432=>854,3433=>1181,\r\n\t3434=>658,3435=>972,3436=>1210,3437=>650,3438=>959,3439=>896,3585=>595,3586=>648,3587=>665,3588=>608,3589=>608,3590=>665,3591=>471,3592=>556,3593=>652,3594=>664,\r\n\t3595=>681,3596=>816,3597=>849,3598=>620,3599=>620,3600=>541,3601=>785,3602=>826,3603=>887,3604=>598,3605=>605,3606=>595,3607=>650,3608=>541,3609=>652,3610=>608,\r\n\t3611=>608,3612=>630,3613=>630,3614=>695,3615=>695,3616=>620,3617=>581,3618=>588,3619=>501,3620=>595,3621=>569,3622=>620,3623=>519,3624=>592,3625=>659,3626=>574,\r\n\t3627=>654,3628=>695,3629=>566,3630=>574,3631=>517,3632=>452,3633=>0,3634=>496,3635=>496,3636=>0,3637=>0,3638=>0,3639=>0,3640=>0,3641=>0,3642=>0,\r\n\t3647=>687,3648=>302,3649=>571,3650=>478,3651=>515,3652=>515,3653=>496,3654=>506,3655=>0,3656=>0,3657=>0,3658=>0,3659=>0,3660=>0,3661=>0,3662=>0,\r\n\t3663=>555,3664=>598,3665=>640,3666=>688,3667=>690,3668=>657,3669=>657,3670=>635,3671=>839,3672=>693,3673=>769,3674=>673,3675=>994,3713=>775,3714=>707,3716=>724,\r\n\t3719=>524,3720=>690,3722=>678,3725=>711,3732=>719,3733=>834,3734=>776,3735=>916,3737=>744,3738=>740,3739=>740,3740=>834,3741=>834,3742=>854,3743=>854,3745=>775,\r\n\t3746=>724,3747=>697,3749=>700,3751=>700,3754=>708,3755=>916,3757=>700,3758=>697,3759=>658,3760=>432,3761=>534,3762=>476,3763=>476,3764=>778,3765=>778,3766=>778,\r\n\t3767=>778,3768=>778,3769=>778,3771=>778,3772=>778,3773=>670,3776=>420,3777=>806,3778=>430,3779=>446,3780=>346,3782=>571,3784=>778,3785=>778,3786=>778,3787=>778,\r\n\t3788=>778,3789=>778,3792=>721,3793=>719,3794=>601,3795=>711,3796=>686,3797=>686,3798=>834,3799=>756,3800=>724,3801=>906,3804=>1272,3805=>1272,3840=>600,3841=>600,\r\n\t3842=>600,3843=>600,3844=>600,3845=>600,3846=>600,3847=>600,3848=>600,3849=>600,3850=>600,3851=>600,3852=>600,3853=>600,3854=>600,3855=>600,3856=>600,3857=>600,\r\n\t3858=>600,3859=>600,3860=>600,3861=>600,3862=>600,3863=>600,3864=>600,3865=>600,3866=>600,3867=>600,3868=>600,3869=>600,3870=>600,3871=>600,3872=>600,3873=>600,\r\n\t3874=>600,3875=>600,3876=>600,3877=>600,3878=>600,3879=>600,3880=>600,3881=>600,3882=>600,3883=>600,3884=>600,3885=>600,3886=>600,3887=>600,3888=>600,3889=>600,\r\n\t3890=>600,3891=>600,3892=>600,3893=>600,3894=>600,3895=>600,3896=>600,3897=>600,3898=>600,3899=>600,3900=>600,3901=>600,3902=>600,3903=>600,3904=>600,3905=>600,\r\n\t3906=>600,3907=>600,3908=>600,3909=>600,3910=>600,3911=>600,3913=>600,3914=>600,3915=>600,3916=>600,3917=>600,3918=>600,3919=>600,3920=>600,3921=>600,3922=>600,\r\n\t3923=>600,3924=>600,3925=>600,3926=>600,3927=>600,3928=>600,3929=>600,3930=>600,3931=>600,3932=>600,3933=>600,3934=>600,3935=>600,3936=>600,3937=>600,3938=>600,\r\n\t3939=>600,3940=>600,3941=>600,3942=>600,3943=>600,3944=>600,3945=>600,3953=>600,3954=>600,3955=>600,3956=>600,3957=>600,3958=>600,3959=>600,3960=>600,3961=>600,\r\n\t3962=>600,3963=>600,3964=>600,3965=>600,3966=>600,3967=>600,3968=>600,3969=>600,3970=>600,3971=>600,3972=>600,3973=>600,3974=>600,3975=>600,3976=>600,3977=>600,\r\n\t3978=>600,3979=>600,3984=>600,3985=>600,3986=>600,3987=>600,3988=>600,3989=>600,3991=>600,3993=>600,3994=>600,3995=>600,3996=>600,3997=>600,3998=>600,3999=>600,\r\n\t4000=>600,4001=>600,4002=>600,4003=>600,4004=>600,4005=>600,4006=>600,4007=>600,4008=>600,4009=>600,4010=>600,4011=>600,4012=>600,4013=>600,4017=>600,4018=>600,\r\n\t4019=>600,4020=>600,4021=>600,4022=>600,4023=>600,4025=>600,4256=>662,4257=>677,4258=>708,4259=>696,4260=>609,4261=>790,4262=>664,4263=>785,4264=>560,4265=>634,\r\n\t4266=>782,4267=>701,4268=>629,4269=>682,4270=>705,4271=>692,4272=>734,4273=>615,4274=>592,4275=>680,4276=>679,4277=>705,4278=>643,4279=>623,4280=>623,4281=>629,\r\n\t4282=>633,4283=>770,4284=>592,4285=>662,4286=>629,4287=>672,4288=>735,4289=>576,4290=>606,4291=>605,4292=>676,4293=>792,4304=>435,4305=>556,4306=>565,4307=>872,\r\n\t4308=>506,4309=>544,4310=>723,4311=>868,4312=>530,4313=>532,4314=>955,4315=>552,4316=>565,4317=>712,4318=>547,4319=>574,4320=>685,4321=>554,4322=>806,4323=>810,\r\n\t4324=>777,4325=>502,4326=>686,4327=>512,4328=>552,4329=>496,4330=>568,4331=>552,4332=>592,4333=>565,4334=>552,4335=>741,4336=>549,4337=>659,4338=>559,4339=>524,\r\n\t4340=>482,4341=>565,4342=>822,4347=>506,4352=>1000,4353=>1000,4354=>1000,4355=>1000,4356=>1000,4357=>1000,4358=>1000,4359=>1000,4360=>1000,4361=>1000,4362=>1000,4363=>1000,\r\n\t4364=>1000,4365=>1000,4366=>1000,4367=>1000,4368=>1000,4369=>1000,4370=>1000,4371=>1000,4372=>1000,4373=>1000,4374=>1000,4375=>1000,4376=>1000,4377=>1000,4378=>1000,4379=>1000,\r\n\t4380=>1000,4381=>1000,4382=>1000,4383=>1000,4384=>1000,4385=>1000,4386=>1000,4387=>1000,4388=>1000,4389=>1000,4390=>1000,4391=>1000,4392=>1000,4393=>1000,4394=>1000,4395=>1000,\r\n\t4396=>1000,4397=>1000,4398=>1000,4399=>1000,4400=>1000,4401=>1000,4402=>1000,4403=>1000,4404=>1000,4405=>1000,4406=>1000,4407=>1000,4408=>1000,4409=>1000,4410=>1000,4411=>1000,\r\n\t4412=>1000,4413=>1000,4414=>1000,4415=>1000,4416=>1000,4417=>1000,4418=>1000,4419=>1000,4420=>1000,4421=>1000,4422=>1000,4423=>1000,4424=>1000,4425=>1000,4426=>1000,4427=>1000,\r\n\t4428=>1000,4429=>1000,4430=>1000,4431=>1000,4432=>1000,4433=>1000,4434=>1000,4435=>1000,4436=>1000,4437=>1000,4438=>1000,4439=>1000,4440=>1000,4441=>1000,4447=>1000,4448=>1000,\r\n\t4449=>1000,4450=>1000,4451=>1000,4452=>1000,4453=>1000,4454=>1000,4455=>1000,4456=>1000,4457=>1000,4458=>1000,4459=>1000,4460=>1000,4461=>1000,4462=>1000,4463=>1000,4464=>1000,\r\n\t4465=>1000,4466=>1000,4467=>1000,4468=>1000,4469=>1000,4470=>1000,4471=>1000,4472=>1000,4473=>1000,4474=>1000,4475=>1000,4476=>1000,4477=>1000,4478=>1000,4479=>1000,4480=>1000,\r\n\t4481=>1000,4482=>1000,4483=>1000,4484=>1000,4485=>1000,4486=>1000,4487=>1000,4488=>1000,4489=>1000,4490=>1000,4491=>1000,4492=>1000,4493=>1000,4494=>1000,4495=>1000,4496=>1000,\r\n\t4497=>1000,4498=>1000,4499=>1000,4500=>1000,4501=>1000,4502=>1000,4503=>1000,4504=>1000,4505=>1000,4506=>1000,4507=>1000,4508=>1000,4509=>1000,4510=>1000,4511=>1000,4512=>1000,\r\n\t4513=>1000,4514=>1000,4520=>1000,4521=>1000,4522=>1000,4523=>1000,4524=>1000,4525=>1000,4526=>1000,4527=>1000,4528=>1000,4529=>1000,4530=>1000,4531=>1000,4532=>1000,4533=>1000,\r\n\t4534=>1000,4535=>1000,4536=>1000,4537=>1000,4538=>1000,4539=>1000,4540=>1000,4541=>1000,4542=>1000,4543=>1000,4544=>1000,4545=>1000,4546=>1000,4547=>1000,4548=>1000,4549=>1000,\r\n\t4550=>1000,4551=>1000,4552=>1000,4553=>1000,4554=>1000,4555=>1000,4556=>1000,4557=>1000,4558=>1000,4559=>1000,4560=>1000,4561=>1000,4562=>1000,4563=>1000,4564=>1000,4565=>1000,\r\n\t4566=>1000,4567=>1000,4568=>1000,4569=>1000,4570=>1000,4571=>1000,4572=>1000,4573=>1000,4574=>1000,4575=>1000,4576=>1000,4577=>1000,4578=>1000,4579=>1000,4580=>1000,4581=>1000,\r\n\t4582=>1000,4583=>1000,4584=>1000,4585=>1000,4586=>1000,4587=>1000,4588=>1000,4589=>1000,4590=>1000,4591=>1000,4592=>1000,4593=>1000,4594=>1000,4595=>1000,4596=>1000,4597=>1000,\r\n\t4598=>1000,4599=>1000,4600=>1000,4601=>1000,7680=>667,7681=>556,7682=>667,7683=>556,7684=>667,7685=>556,7686=>667,7687=>556,7688=>722,7689=>500,7690=>722,7691=>556,\r\n\t7692=>722,7693=>556,7694=>722,7695=>556,7696=>722,7697=>556,7698=>722,7699=>556,7700=>667,7701=>556,7702=>667,7703=>556,7704=>667,7705=>556,7706=>667,7707=>556,\r\n\t7708=>667,7709=>556,7710=>611,7711=>278,7712=>778,7713=>556,7714=>722,7715=>556,7716=>722,7717=>556,7718=>722,7719=>556,7720=>722,7721=>556,7722=>722,7723=>556,\r\n\t7724=>278,7725=>222,7726=>278,7727=>278,7728=>667,7729=>500,7730=>667,7731=>500,7732=>667,7733=>500,7734=>556,7735=>222,7736=>556,7737=>222,7738=>556,7739=>222,\r\n\t7740=>556,7741=>222,7742=>833,7743=>833,7744=>833,7745=>833,7746=>833,7747=>833,7748=>722,7749=>556,7750=>722,7751=>556,7752=>722,7753=>556,7754=>722,7755=>556,\r\n\t7756=>778,7757=>556,7758=>778,7759=>556,7760=>778,7761=>556,7762=>778,7763=>556,7764=>667,7765=>556,7766=>667,7767=>556,7768=>722,7769=>333,7770=>722,7771=>333,\r\n\t7772=>722,7773=>333,7774=>722,7775=>333,7776=>667,7777=>500,7778=>667,7779=>500,7780=>667,7781=>500,7782=>667,7783=>500,7784=>667,7785=>500,7786=>611,7787=>278,\r\n\t7788=>611,7789=>278,7790=>611,7791=>278,7792=>611,7793=>278,7794=>722,7795=>556,7796=>722,7797=>556,7798=>722,7799=>556,7800=>722,7801=>556,7802=>722,7803=>556,\r\n\t7804=>667,7805=>500,7806=>667,7807=>500,7808=>944,7809=>722,7810=>944,7811=>722,7812=>944,7813=>722,7814=>944,7815=>722,7816=>944,7817=>722,7818=>667,7819=>500,\r\n\t7820=>667,7821=>500,7822=>667,7823=>500,7824=>611,7825=>500,7826=>611,7827=>500,7828=>611,7829=>500,7830=>556,7831=>278,7832=>722,7833=>500,7834=>556,7835=>278,\r\n\t7840=>667,7841=>556,7842=>667,7843=>556,7844=>667,7845=>556,7846=>667,7847=>556,7848=>667,7849=>556,7850=>667,7851=>556,7852=>667,7853=>556,7854=>667,7855=>556,\r\n\t7856=>667,7857=>556,7858=>667,7859=>556,7860=>667,7861=>556,7862=>667,7863=>556,7864=>667,7865=>556,7866=>667,7867=>556,7868=>667,7869=>556,7870=>667,7871=>556,\r\n\t7872=>667,7873=>556,7874=>667,7875=>556,7876=>667,7877=>556,7878=>667,7879=>556,7880=>278,7881=>278,7882=>278,7883=>222,7884=>778,7885=>556,7886=>778,7887=>556,\r\n\t7888=>778,7889=>556,7890=>778,7891=>556,7892=>778,7893=>556,7894=>778,7895=>556,7896=>778,7897=>556,7898=>776,7899=>556,7900=>776,7901=>556,7902=>776,7903=>556,\r\n\t7904=>776,7905=>556,7906=>776,7907=>556,7908=>722,7909=>556,7910=>722,7911=>556,7912=>776,7913=>620,7914=>776,7915=>620,7916=>776,7917=>620,7918=>776,7919=>620,\r\n\t7920=>776,7921=>620,7922=>667,7923=>500,7924=>667,7925=>500,7926=>667,7927=>500,7928=>667,7929=>500,7936=>576,7937=>576,7938=>576,7939=>576,7940=>576,7941=>576,\r\n\t7942=>576,7943=>576,7944=>667,7945=>667,7946=>680,7947=>680,7948=>680,7949=>680,7950=>718,7951=>718,7952=>434,7953=>434,7954=>434,7955=>434,7956=>434,7957=>434,\r\n\t7960=>692,7961=>692,7962=>823,7963=>823,7964=>823,7965=>823,7968=>556,7969=>556,7970=>556,7971=>556,7972=>556,7973=>556,7974=>556,7975=>556,7976=>747,7977=>747,\r\n\t7978=>878,7979=>878,7980=>878,7981=>878,7982=>923,7983=>923,7984=>222,7985=>222,7986=>222,7987=>222,7988=>222,7989=>222,7990=>222,7991=>222,7992=>303,7993=>303,\r\n\t7994=>434,7995=>434,7996=>434,7997=>434,7998=>479,7999=>479,8000=>556,8001=>556,8002=>556,8003=>556,8004=>556,8005=>556,8008=>778,8009=>778,8010=>894,8011=>894,\r\n\t8012=>894,8013=>894,8016=>551,8017=>551,8018=>551,8019=>551,8020=>551,8021=>551,8022=>551,8023=>551,8025=>777,8027=>893,8029=>885,8031=>940,8032=>766,8033=>766,\r\n\t8034=>766,8035=>766,8036=>766,8037=>766,8038=>766,8039=>766,8040=>758,8041=>758,8042=>874,8043=>874,8044=>868,8045=>867,8046=>911,8047=>911,8048=>576,8049=>576,\r\n\t8050=>434,8051=>434,8052=>556,8053=>556,8054=>222,8055=>222,8056=>556,8057=>556,8058=>551,8059=>551,8060=>766,8061=>766,8064=>576,8065=>576,8066=>576,8067=>576,\r\n\t8068=>576,8069=>576,8070=>576,8071=>576,8072=>667,8073=>667,8074=>680,8075=>680,8076=>680,8077=>680,8078=>718,8079=>718,8080=>556,8081=>556,8082=>556,8083=>556,\r\n\t8084=>556,8085=>556,8086=>556,8087=>556,8088=>747,8089=>747,8090=>878,8091=>878,8092=>878,8093=>878,8094=>923,8095=>923,8096=>766,8097=>766,8098=>766,8099=>766,\r\n\t8100=>766,8101=>766,8102=>766,8103=>766,8104=>758,8105=>758,8106=>874,8107=>874,8108=>868,8109=>867,8110=>911,8111=>911,8112=>576,8113=>576,8114=>576,8115=>576,\r\n\t8116=>576,8118=>576,8119=>576,8120=>667,8121=>667,8122=>667,8123=>667,8124=>667,8125=>278,8126=>278,8127=>278,8128=>278,8129=>278,8130=>556,8131=>556,8132=>556,\r\n\t8134=>556,8135=>556,8136=>693,8137=>704,8138=>748,8139=>759,8140=>722,8141=>278,8142=>278,8143=>278,8144=>222,8145=>222,8146=>222,8147=>222,8150=>222,8151=>222,\r\n\t8152=>278,8153=>278,8154=>304,8155=>304,8157=>278,8158=>278,8159=>278,8160=>551,8161=>551,8162=>551,8163=>551,8164=>571,8165=>571,8166=>551,8167=>551,8168=>667,\r\n\t8169=>667,8170=>742,8171=>746,8172=>693,8173=>278,8174=>278,8175=>278,8178=>766,8179=>766,8180=>766,8182=>766,8183=>766,8184=>778,8185=>778,8186=>758,8187=>758,\r\n\t8188=>758,8189=>278,8190=>278,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>556,8200=>278,8201=>100,8202=>50,8203=>0,8204=>0,\r\n\t8205=>0,8208=>333,8209=>333,8210=>556,8213=>564,8214=>428,8215=>500,8219=>222,8223=>333,8227=>350,8228=>278,8229=>556,8231=>278,8232=>0,8233=>0,8241=>1330,\r\n\t8242=>222,8243=>372,8244=>522,8245=>206,8246=>356,8247=>506,8248=>312,8251=>1000,8252=>471,8253=>556,8254=>500,8255=>945,8256=>945,8257=>312,8258=>820,8259=>333,\r\n\t8260=>167,8261=>278,8262=>278,8304=>333,8308=>333,8309=>333,8310=>333,8311=>333,8312=>333,8313=>333,8314=>333,8315=>333,8316=>333,8317=>210,8318=>210,8319=>333,\r\n\t8320=>333,8321=>333,8322=>333,8323=>333,8324=>333,8325=>333,8326=>333,8327=>333,8328=>333,8329=>333,8330=>333,8331=>333,8332=>333,8333=>210,8334=>210,8352=>556,\r\n\t8353=>556,8354=>556,8355=>556,8356=>556,8357=>833,8358=>556,8359=>556,8360=>1024,8361=>940,8362=>784,8363=>556,8400=>600,8401=>600,8402=>600,8403=>600,8404=>700,\r\n\t8405=>700,8406=>600,8407=>600,8408=>600,8409=>600,8410=>600,8411=>600,8412=>600,8413=>900,8414=>900,8415=>900,8416=>900,8417=>700,8448=>889,8449=>889,8450=>667,\r\n\t8451=>1022,8452=>611,8453=>889,8454=>889,8455=>501,8456=>667,8457=>921,8458=>510,8459=>906,8460=>988,8461=>722,8462=>500,8463=>500,8464=>688,8465=>553,8466=>708,\r\n\t8467=>291,8468=>778,8469=>722,8470=>1073,8471=>737,8472=>740,8473=>556,8474=>722,8475=>927,8476=>795,8477=>667,8478=>667,8479=>667,8480=>1000,8481=>1174,8483=>722,\r\n\t8484=>611,8485=>542,8486=>768,8487=>768,8488=>698,8489=>321,8490=>667,8491=>667,8492=>927,8493=>646,8494=>556,8495=>385,8496=>615,8497=>688,8498=>611,8499=>1115,\r\n\t8500=>406,8501=>688,8502=>688,8503=>344,8504=>688,8531=>834,8532=>834,8533=>834,8534=>834,8535=>834,8536=>834,8537=>834,8538=>834,8539=>834,8540=>834,8541=>834,\r\n\t8542=>834,8543=>834,8544=>278,8545=>555,8546=>832,8547=>933,8548=>667,8549=>934,8550=>1031,8551=>1268,8552=>944,8553=>667,8554=>944,8555=>1035,8556=>556,8557=>722,\r\n\t8558=>722,8559=>833,8560=>222,8561=>444,8562=>666,8563=>700,8564=>500,8565=>700,8566=>922,8567=>1144,8568=>712,8569=>500,8570=>712,8571=>934,8572=>222,8573=>500,\r\n\t8574=>556,8575=>833,8576=>983,8577=>722,8578=>983,8592=>713,8593=>713,8594=>713,8595=>713,8596=>713,8597=>713,8598=>713,8599=>713,8600=>713,8601=>713,8602=>713,\r\n\t8603=>713,8604=>713,8605=>713,8606=>713,8607=>713,8608=>713,8609=>713,8610=>713,8611=>713,8612=>713,8613=>713,8614=>713,8615=>713,8616=>713,8617=>713,8618=>713,\r\n\t8619=>713,8620=>713,8621=>813,8622=>813,8623=>713,8624=>713,8625=>713,8626=>713,8627=>713,8628=>713,8629=>713,8630=>713,8631=>713,8632=>713,8633=>713,8634=>800,\r\n\t8635=>800,8636=>713,8637=>713,8638=>713,8639=>713,8640=>713,8641=>713,8642=>713,8643=>713,8644=>713,8645=>713,8646=>713,8647=>713,8648=>713,8649=>713,8650=>713,\r\n\t8651=>713,8652=>713,8653=>713,8654=>950,8655=>713,8656=>713,8657=>713,8658=>713,8659=>713,8660=>863,8661=>713,8662=>713,8663=>713,8664=>713,8665=>713,8666=>713,\r\n\t8667=>713,8668=>813,8669=>813,8670=>713,8671=>713,8672=>713,8673=>713,8674=>713,8675=>713,8676=>713,8677=>713,8678=>713,8679=>713,8680=>713,8681=>713,8682=>713,\r\n\t8704=>600,8705=>600,8706=>494,8707=>600,8708=>600,8709=>800,8710=>612,8711=>612,8712=>549,8713=>549,8714=>549,8715=>549,8716=>549,8717=>549,8718=>549,8719=>823,\r\n\t8720=>823,8721=>713,8722=>584,8723=>584,8724=>584,8725=>167,8726=>278,8727=>389,8728=>400,8729=>400,8730=>600,8731=>600,8732=>600,8733=>549,8734=>549,8735=>584,\r\n\t8736=>584,8737=>584,8738=>584,8739=>260,8740=>444,8741=>418,8742=>602,8743=>561,8744=>561,8745=>561,8746=>561,8747=>506,8748=>806,8749=>1106,8750=>506,8751=>806,\r\n\t8752=>1106,8753=>506,8754=>506,8755=>506,8756=>561,8757=>561,8758=>422,8759=>561,8760=>584,8761=>584,8762=>584,8763=>584,8764=>584,8765=>584,8766=>584,8767=>584,\r\n\t8768=>422,8769=>584,8770=>584,8771=>584,8772=>584,8773=>584,8774=>584,8775=>584,8776=>584,8777=>584,8778=>584,8779=>584,8780=>584,8781=>584,8782=>584,8783=>584,\r\n\t8784=>584,8785=>584,8786=>584,8787=>584,8788=>737,8789=>737,8790=>584,8791=>584,8792=>584,8793=>584,8794=>584,8795=>584,8796=>584,8797=>584,8798=>584,8799=>584,\r\n\t8800=>584,8801=>584,8802=>584,8803=>584,8804=>584,8805=>584,8806=>584,8807=>584,8808=>584,8809=>584,8810=>969,8811=>969,8812=>584,8813=>584,8814=>584,8815=>584,\r\n\t8816=>584,8817=>584,8818=>584,8819=>584,8820=>584,8821=>584,8822=>584,8823=>584,8824=>584,8825=>584,8826=>584,8827=>584,8828=>584,8829=>584,8830=>584,8831=>584,\r\n\t8832=>584,8833=>584,8834=>678,8835=>678,8836=>678,8837=>678,8838=>678,8839=>678,8840=>678,8841=>678,8842=>678,8843=>678,8844=>561,8845=>561,8846=>561,8847=>678,\r\n\t8848=>678,8849=>673,8850=>673,8851=>561,8852=>561,8853=>800,8854=>800,8855=>800,8856=>800,8857=>800,8858=>800,8859=>800,8860=>800,8861=>800,8862=>800,8863=>800,\r\n\t8864=>800,8865=>800,8866=>549,8867=>549,8868=>549,8869=>549,8870=>399,8871=>399,8872=>549,8873=>549,8874=>549,8875=>672,8876=>549,8877=>549,8878=>549,8879=>672,\r\n\t8880=>549,8881=>549,8882=>549,8883=>549,8884=>549,8885=>549,8886=>713,8887=>713,8888=>713,8889=>549,8890=>549,8891=>584,8892=>584,8893=>584,8894=>584,8895=>584,\r\n\t8896=>561,8897=>561,8898=>561,8899=>561,8900=>549,8901=>250,8902=>549,8903=>649,8904=>630,8905=>630,8906=>630,8907=>630,8908=>630,8909=>584,8910=>561,8911=>561,\r\n\t8912=>668,8913=>668,8914=>668,8915=>668,8916=>561,8917=>602,8918=>584,8919=>584,8920=>1354,8921=>1354,8922=>584,8923=>584,8924=>584,8925=>584,8926=>584,8927=>584,\r\n\t8928=>584,8929=>584,8930=>673,8931=>673,8932=>673,8933=>673,8934=>584,8935=>584,8936=>584,8937=>584,8938=>584,8939=>584,8940=>584,8941=>584,8942=>278,8943=>1000,\r\n\t8944=>1000,8945=>1000,8960=>549,8962=>549,8963=>549,8964=>549,8965=>549,8966=>549,8967=>549,8968=>449,8969=>449,8970=>449,8971=>449,8972=>549,8973=>549,8974=>549,\r\n\t8975=>549,8976=>549,8977=>549,8978=>800,8979=>800,8980=>549,8981=>549,8982=>549,8983=>650,8984=>780,8985=>549,8986=>549,8987=>549,8988=>549,8989=>549,8990=>549,\r\n\t8991=>549,8992=>506,8993=>506,8994=>713,8995=>713,8996=>1000,8997=>1000,8998=>1000,8999=>1000,9000=>1000,9001=>329,9002=>329,9003=>1000,9004=>549,9005=>549,9006=>549,\r\n\t9007=>549,9008=>549,9009=>549,9010=>549,9011=>549,9012=>549,9013=>549,9014=>600,9015=>600,9016=>600,9017=>600,9018=>600,9019=>600,9020=>600,9021=>600,9022=>600,\r\n\t9023=>600,9024=>600,9025=>600,9026=>600,9027=>600,9028=>600,9029=>600,9030=>600,9031=>600,9032=>600,9033=>600,9034=>600,9035=>600,9036=>600,9037=>600,9038=>600,\r\n\t9039=>600,9040=>600,9041=>600,9042=>600,9043=>600,9044=>600,9045=>600,9046=>600,9047=>600,9048=>600,9049=>600,9050=>600,9051=>600,9052=>600,9053=>600,9054=>600,\r\n\t9055=>600,9056=>600,9057=>600,9058=>600,9059=>600,9060=>600,9061=>600,9062=>600,9063=>600,9064=>600,9065=>600,9066=>600,9067=>600,9068=>600,9069=>600,9070=>600,\r\n\t9071=>600,9072=>600,9073=>600,9074=>600,9075=>600,9076=>600,9077=>600,9078=>600,9079=>600,9080=>600,9081=>600,9082=>600,9109=>600,9216=>600,9217=>600,9218=>600,\r\n\t9219=>600,9220=>600,9221=>600,9222=>600,9223=>600,9224=>600,9225=>600,9226=>600,9227=>600,9228=>600,9229=>600,9230=>600,9231=>600,9232=>600,9233=>600,9234=>600,\r\n\t9235=>600,9236=>600,9237=>600,9238=>600,9239=>600,9240=>600,9241=>600,9242=>600,9243=>600,9244=>600,9245=>600,9246=>600,9247=>600,9248=>600,9249=>600,9250=>600,\r\n\t9251=>600,9252=>600,9280=>604,9281=>604,9282=>604,9283=>604,9284=>604,9285=>604,9286=>750,9287=>750,9288=>750,9289=>750,9290=>604,9312=>1000,9313=>1000,9314=>1000,\r\n\t9315=>1000,9316=>1000,9317=>1000,9318=>1000,9319=>1000,9320=>1000,9321=>1000,9322=>1000,9323=>1000,9324=>1000,9325=>1000,9326=>1000,9327=>1000,9328=>1000,9329=>1000,9330=>1000,\r\n\t9331=>1000,9332=>1000,9333=>1000,9334=>1000,9335=>1000,9336=>1000,9337=>1000,9338=>1000,9339=>1000,9340=>1000,9341=>1000,9342=>1000,9343=>1000,9344=>1000,9345=>1000,9346=>1000,\r\n\t9347=>1000,9348=>1000,9349=>1000,9350=>1000,9351=>1000,9352=>1000,9353=>1000,9354=>1000,9355=>1000,9356=>1000,9357=>1000,9358=>1000,9359=>1000,9360=>1000,9361=>1000,9362=>1000,\r\n\t9363=>1000,9364=>1000,9365=>1000,9366=>1000,9367=>1000,9368=>1000,9369=>1000,9370=>1000,9371=>1000,9372=>1000,9373=>1000,9374=>1000,9375=>1000,9376=>1000,9377=>1000,9378=>1000,\r\n\t9379=>1000,9380=>1000,9381=>1000,9382=>1000,9383=>1000,9384=>1000,9385=>1000,9386=>1000,9387=>1000,9388=>1000,9389=>1000,9390=>1000,9391=>1000,9392=>1000,9393=>1000,9394=>1000,\r\n\t9395=>1000,9396=>1000,9397=>1000,9398=>1000,9399=>1000,9400=>1000,9401=>1000,9402=>1000,9403=>1000,9404=>1000,9405=>1000,9406=>1000,9407=>1000,9408=>1000,9409=>1000,9410=>1000,\r\n\t9411=>1000,9412=>1000,9413=>1000,9414=>1000,9415=>1000,9416=>1000,9417=>1000,9418=>1000,9419=>1000,9420=>1000,9421=>1000,9422=>1000,9423=>1000,9424=>1000,9425=>1000,9426=>1000,\r\n\t9427=>1000,9428=>1000,9429=>1000,9430=>1000,9431=>1000,9432=>1000,9433=>1000,9434=>1000,9435=>1000,9436=>1000,9437=>1000,9438=>1000,9439=>1000,9440=>1000,9441=>1000,9442=>1000,\r\n\t9443=>1000,9444=>1000,9445=>1000,9446=>1000,9447=>1000,9448=>1000,9449=>1000,9450=>1000,9472=>600,9473=>600,9474=>600,9475=>600,9476=>600,9477=>600,9478=>600,9479=>600,\r\n\t9480=>600,9481=>600,9482=>600,9483=>600,9484=>600,9485=>600,9486=>600,9487=>600,9488=>600,9489=>600,9490=>600,9491=>600,9492=>600,9493=>600,9494=>600,9495=>600,\r\n\t9496=>600,9497=>600,9498=>600,9499=>600,9500=>600,9501=>600,9502=>600,9503=>600,9504=>600,9505=>600,9506=>600,9507=>600,9508=>600,9509=>600,9510=>600,9511=>600,\r\n\t9512=>600,9513=>600,9514=>600,9515=>600,9516=>600,9517=>600,9518=>600,9519=>600,9520=>600,9521=>600,9522=>600,9523=>600,9524=>600,9525=>600,9526=>600,9527=>600,\r\n\t9528=>600,9529=>600,9530=>600,9531=>600,9532=>600,9533=>600,9534=>600,9535=>600,9536=>600,9537=>600,9538=>600,9539=>600,9540=>600,9541=>600,9542=>600,9543=>600,\r\n\t9544=>600,9545=>600,9546=>600,9547=>600,9548=>600,9549=>600,9550=>600,9551=>600,9552=>600,9553=>600,9554=>600,9555=>600,9556=>600,9557=>600,9558=>600,9559=>600,\r\n\t9560=>600,9561=>600,9562=>600,9563=>600,9564=>600,9565=>600,9566=>600,9567=>600,9568=>600,9569=>600,9570=>600,9571=>600,9572=>600,9573=>600,9574=>600,9575=>600,\r\n\t9576=>600,9577=>600,9578=>600,9579=>600,9580=>600,9581=>600,9582=>600,9583=>600,9584=>600,9585=>600,9586=>600,9587=>600,9588=>600,9589=>600,9590=>600,9591=>600,\r\n\t9592=>600,9593=>600,9594=>600,9595=>600,9596=>600,9597=>600,9598=>600,9599=>600,9600=>600,9601=>600,9602=>600,9603=>600,9604=>600,9605=>600,9606=>600,9607=>600,\r\n\t9608=>600,9609=>600,9610=>600,9611=>600,9612=>600,9613=>600,9614=>600,9615=>600,9616=>600,9617=>600,9618=>600,9619=>600,9620=>600,9621=>600,9632=>600,9633=>600,\r\n\t9634=>600,9635=>600,9636=>600,9637=>600,9638=>600,9639=>600,9640=>600,9641=>600,9642=>600,9643=>600,9644=>600,9645=>600,9646=>600,9647=>600,9648=>600,9649=>600,\r\n\t9650=>600,9651=>600,9652=>600,9653=>600,9654=>600,9655=>600,9656=>600,9657=>600,9658=>600,9659=>600,9660=>600,9661=>600,9662=>600,9663=>600,9664=>600,9665=>600,\r\n\t9666=>600,9667=>600,9668=>600,9669=>600,9670=>600,9671=>600,9672=>600,9673=>600,9674=>600,9675=>600,9676=>600,9677=>600,9678=>600,9679=>600,9680=>600,9681=>600,\r\n\t9682=>600,9683=>600,9684=>600,9685=>600,9686=>600,9687=>600,9688=>600,9689=>600,9690=>600,9691=>600,9692=>600,9693=>600,9694=>600,9695=>600,9696=>600,9697=>600,\r\n\t9698=>600,9699=>600,9700=>600,9701=>600,9702=>600,9703=>600,9704=>600,9705=>600,9706=>600,9707=>600,9708=>600,9709=>600,9710=>600,9711=>600,9728=>750,9729=>1000,\r\n\t9730=>750,9731=>750,9732=>1000,9733=>816,9734=>823,9735=>500,9736=>500,9737=>800,9738=>800,9739=>800,9740=>800,9741=>800,9742=>719,9743=>719,9744=>734,9745=>734,\r\n\t9746=>734,9747=>762,9754=>960,9755=>960,9756=>939,9757=>939,9758=>939,9759=>939,9760=>750,9761=>600,9762=>750,9763=>750,9764=>580,9765=>460,9766=>444,9767=>650,\r\n\t9768=>444,9769=>768,9770=>800,9771=>850,9772=>675,9773=>800,9774=>750,9775=>750,9776=>900,9777=>900,9778=>900,9779=>900,9780=>900,9781=>900,9782=>900,9783=>900,\r\n\t9784=>750,9785=>750,9786=>750,9787=>750,9788=>750,9789=>750,9790=>750,9791=>740,9792=>740,9793=>740,9794=>740,9795=>653,9796=>490,9797=>632,9798=>780,9799=>560,\r\n\t9800=>838,9801=>780,9802=>734,9803=>887,9804=>780,9805=>1080,9806=>896,9807=>1080,9808=>804,9809=>868,9810=>922,9811=>696,9812=>1000,9813=>1000,9814=>1000,9815=>1000,\r\n\t9816=>1000,9817=>1000,9818=>1000,9819=>1000,9820=>1000,9821=>1000,9822=>1000,9823=>1000,9824=>722,9825=>734,9826=>674,9827=>804,9828=>722,9829=>734,9830=>674,9831=>804,\r\n\t9832=>860,9833=>423,9834=>592,9835=>750,9836=>750,9837=>439,9838=>439,9839=>439,9985=>974,9986=>961,9987=>974,9988=>980,9990=>789,9991=>790,9992=>791,9993=>690,\r\n\t9996=>549,9997=>855,9998=>911,9999=>933,10000=>911,10001=>945,10002=>974,10003=>755,10004=>846,10005=>762,10006=>761,10007=>571,10008=>677,10009=>763,10010=>760,10011=>759,\r\n\t10012=>754,10013=>494,10014=>552,10015=>537,10016=>577,10017=>692,10018=>786,10019=>788,10020=>788,10021=>790,10022=>793,10023=>794,10025=>823,10026=>789,10027=>841,10028=>823,\r\n\t10029=>833,10030=>816,10031=>831,10032=>923,10033=>744,10034=>723,10035=>749,10036=>790,10037=>792,10038=>695,10039=>776,10040=>768,10041=>792,10042=>759,10043=>707,10044=>708,\r\n\t10045=>682,10046=>701,10047=>826,10048=>815,10049=>789,10050=>789,10051=>707,10052=>687,10053=>696,10054=>689,10055=>786,10056=>787,10057=>713,10058=>791,10059=>785,10061=>873,\r\n\t10063=>762,10064=>762,10065=>759,10066=>759,10070=>784,10072=>138,10073=>277,10074=>415,10075=>392,10076=>392,10077=>668,10078=>668,10081=>732,10082=>544,10083=>544,10084=>910,\r\n\t10085=>667,10086=>760,10087=>760,10102=>788,10103=>788,10104=>788,10105=>788,10106=>788,10107=>788,10108=>788,10109=>788,10110=>788,10111=>788,10112=>788,10113=>788,10114=>788,\r\n\t10115=>788,10116=>788,10117=>788,10118=>788,10119=>788,10120=>788,10121=>788,10122=>788,10123=>788,10124=>788,10125=>788,10126=>788,10127=>788,10128=>788,10129=>788,10130=>788,\r\n\t10131=>788,10132=>894,10136=>748,10137=>924,10138=>748,10139=>918,10140=>927,10141=>928,10142=>928,10143=>834,10144=>873,10145=>828,10146=>924,10147=>924,10148=>917,10149=>930,\r\n\t10150=>931,10151=>463,10152=>883,10153=>836,10154=>836,10155=>867,10156=>867,10157=>696,10158=>696,10159=>874,10161=>874,10162=>760,10163=>946,10164=>771,10165=>865,10166=>771,\r\n\t10167=>888,10168=>967,10169=>888,10170=>831,10171=>873,10172=>927,10173=>970,10174=>918,12288=>1000,12289=>1000,12290=>1000,12291=>1000,12292=>1000,12293=>1000,12294=>1000,12295=>1000,\r\n\t12296=>1000,12297=>1000,12298=>1000,12299=>1000,12300=>1000,12301=>1000,12302=>1000,12303=>1000,12304=>1000,12305=>1000,12306=>1000,12307=>1000,12308=>1000,12309=>1000,12310=>1000,12311=>1000,\r\n\t12312=>1000,12313=>1000,12314=>1000,12315=>1000,12316=>1000,12317=>1000,12318=>1000,12319=>1000,12320=>1000,12321=>1000,12322=>1000,12323=>1000,12324=>1000,12325=>1000,12326=>1000,12327=>1000,\r\n\t12328=>1000,12329=>1000,12330=>1000,12331=>1000,12332=>1000,12333=>1000,12334=>1000,12335=>1000,12336=>1000,12337=>1000,12338=>1000,12339=>1000,12340=>1000,12341=>1000,12342=>1000,12343=>1000,\r\n\t12351=>1000,12353=>1000,12354=>1000,12355=>1000,12356=>1000,12357=>1000,12358=>1000,12359=>1000,12360=>1000,12361=>1000,12362=>1000,12363=>1000,12364=>1000,12365=>1000,12366=>1000,12367=>1000,\r\n\t12368=>1000,12369=>1000,12370=>1000,12371=>1000,12372=>1000,12373=>1000,12374=>1000,12375=>1000,12376=>1000,12377=>1000,12378=>1000,12379=>1000,12380=>1000,12381=>1000,12382=>1000,12383=>1000,\r\n\t12384=>1000,12385=>1000,12386=>1000,12387=>1000,12388=>1000,12389=>1000,12390=>1000,12391=>1000,12392=>1000,12393=>1000,12394=>1000,12395=>1000,12396=>1000,12397=>1000,12398=>1000,12399=>1000,\r\n\t12400=>1000,12401=>1000,12402=>1000,12403=>1000,12404=>1000,12405=>1000,12406=>1000,12407=>1000,12408=>1000,12409=>1000,12410=>1000,12411=>1000,12412=>1000,12413=>1000,12414=>1000,12415=>1000,\r\n\t12416=>1000,12417=>1000,12418=>1000,12419=>1000,12420=>1000,12421=>1000,12422=>1000,12423=>1000,12424=>1000,12425=>1000,12426=>1000,12427=>1000,12428=>1000,12429=>1000,12430=>1000,12431=>1000,\r\n\t12432=>1000,12433=>1000,12434=>1000,12435=>1000,12436=>1000,12441=>1000,12442=>1000,12443=>1000,12444=>1000,12445=>1000,12446=>1000,12449=>1000,12450=>1000,12451=>1000,12452=>1000,12453=>1000,\r\n\t12454=>1000,12455=>1000,12456=>1000,12457=>1000,12458=>1000,12459=>1000,12460=>1000,12461=>1000,12462=>1000,12463=>1000,12464=>1000,12465=>1000,12466=>1000,12467=>1000,12468=>1000,12469=>1000,\r\n\t12470=>1000,12471=>1000,12472=>1000,12473=>1000,12474=>1000,12475=>1000,12476=>1000,12477=>1000,12478=>1000,12479=>1000,12480=>1000,12481=>1000,12482=>1000,12483=>1000,12484=>1000,12485=>1000,\r\n\t12486=>1000,12487=>1000,12488=>1000,12489=>1000,12490=>1000,12491=>1000,12492=>1000,12493=>1000,12494=>1000,12495=>1000,12496=>1000,12497=>1000,12498=>1000,12499=>1000,12500=>1000,12501=>1000,\r\n\t12502=>1000,12503=>1000,12504=>1000,12505=>1000,12506=>1000,12507=>1000,12508=>1000,12509=>1000,12510=>1000,12511=>1000,12512=>1000,12513=>1000,12514=>1000,12515=>1000,12516=>1000,12517=>1000,\r\n\t12518=>1000,12519=>1000,12520=>1000,12521=>1000,12522=>1000,12523=>1000,12524=>1000,12525=>1000,12526=>1000,12527=>1000,12528=>1000,12529=>1000,12530=>1000,12531=>1000,12532=>1000,12533=>1000,\r\n\t12534=>1000,12535=>1000,12536=>1000,12537=>1000,12538=>1000,12539=>1000,12540=>1000,12541=>1000,12542=>1000,12549=>1000,12550=>1000,12551=>1000,12552=>1000,12553=>1000,12554=>1000,12555=>1000,\r\n\t12556=>1000,12557=>1000,12558=>1000,12559=>1000,12560=>1000,12561=>1000,12562=>1000,12563=>1000,12564=>1000,12565=>1000,12566=>1000,12567=>1000,12568=>1000,12569=>1000,12570=>1000,12571=>1000,\r\n\t12572=>1000,12573=>1000,12574=>1000,12575=>1000,12576=>1000,12577=>1000,12578=>1000,12579=>1000,12580=>1000,12581=>1000,12582=>1000,12583=>1000,12584=>1000,12585=>1000,12586=>1000,12587=>1000,\r\n\t12588=>1000,12593=>1000,12594=>1000,12595=>1000,12596=>1000,12597=>1000,12598=>1000,12599=>1000,12600=>1000,12601=>1000,12602=>1000,12603=>1000,12604=>1000,12605=>1000,12606=>1000,12607=>1000,\r\n\t12608=>1000,12609=>1000,12610=>1000,12611=>1000,12612=>1000,12613=>1000,12614=>1000,12615=>1000,12616=>1000,12617=>1000,12618=>1000,12619=>1000,12620=>1000,12621=>1000,12622=>1000,12623=>1000,\r\n\t12624=>1000,12625=>1000,12626=>1000,12627=>1000,12628=>1000,12629=>1000,12630=>1000,12631=>1000,12632=>1000,12633=>1000,12634=>1000,12635=>1000,12636=>1000,12637=>1000,12638=>1000,12639=>1000,\r\n\t12640=>1000,12641=>1000,12642=>1000,12643=>1000,12644=>1000,12645=>1000,12646=>1000,12647=>1000,12648=>1000,12649=>1000,12650=>1000,12651=>1000,12652=>1000,12653=>1000,12654=>1000,12655=>1000,\r\n\t12656=>1000,12657=>1000,12658=>1000,12659=>1000,12660=>1000,12661=>1000,12662=>1000,12663=>1000,12664=>1000,12665=>1000,12666=>1000,12667=>1000,12668=>1000,12669=>1000,12670=>1000,12671=>1000,\r\n\t12672=>1000,12673=>1000,12674=>1000,12675=>1000,12676=>1000,12677=>1000,12678=>1000,12679=>1000,12680=>1000,12681=>1000,12682=>1000,12683=>1000,12684=>1000,12685=>1000,12686=>1000,12688=>1000,\r\n\t12689=>1000,12690=>1000,12691=>1000,12692=>1000,12693=>1000,12694=>1000,12695=>1000,12696=>1000,12697=>1000,12698=>1000,12699=>1000,12700=>1000,12701=>1000,12702=>1000,12703=>1000,12800=>1000,\r\n\t12801=>1000,12802=>1000,12803=>1000,12804=>1000,12805=>1000,12806=>1000,12807=>1000,12808=>1000,12809=>1000,12810=>1000,12811=>1000,12812=>1000,12813=>1000,12814=>1000,12815=>1000,12816=>1000,\r\n\t12817=>1000,12818=>1000,12819=>1000,12820=>1000,12821=>1000,12822=>1000,12823=>1000,12824=>1000,12825=>1000,12826=>1000,12827=>1000,12828=>1000,12832=>1000,12833=>1000,12834=>1000,12835=>1000,\r\n\t12836=>1000,12837=>1000,12838=>1000,12839=>1000,12840=>1000,12841=>1000,12842=>1000,12843=>1000,12844=>1000,12845=>1000,12846=>1000,12847=>1000,12848=>1000,12849=>1000,12850=>1000,12851=>1000,\r\n\t12852=>1000,12853=>1000,12854=>1000,12855=>1000,12856=>1000,12857=>1000,12858=>1000,12859=>1000,12860=>1000,12861=>1000,12862=>1000,12863=>1000,12864=>1000,12865=>1000,12866=>1000,12867=>1000,\r\n\t12896=>1000,12897=>1000,12898=>1000,12899=>1000,12900=>1000,12901=>1000,12902=>1000,12903=>1000,12904=>1000,12905=>1000,12906=>1000,12907=>1000,12908=>1000,12909=>1000,12910=>1000,12911=>1000,\r\n\t12912=>1000,12913=>1000,12914=>1000,12915=>1000,12916=>1000,12917=>1000,12918=>1000,12919=>1000,12920=>1000,12921=>1000,12922=>1000,12923=>1000,12927=>1000,12928=>1000,12929=>1000,12930=>1000,\r\n\t12931=>1000,12932=>1000,12933=>1000,12934=>1000,12935=>1000,12936=>1000,12937=>1000,12938=>1000,12939=>1000,12940=>1000,12941=>1000,12942=>1000,12943=>1000,12944=>1000,12945=>1000,12946=>1000,\r\n\t12947=>1000,12948=>1000,12949=>1000,12950=>1000,12951=>1000,12952=>1000,12953=>1000,12954=>1000,12955=>1000,12956=>1000,12957=>1000,12958=>1000,12959=>1000,12960=>1000,12961=>1000,12962=>1000,\r\n\t12963=>1000,12964=>1000,12965=>1000,12966=>1000,12967=>1000,12968=>1000,12969=>1000,12970=>1000,12971=>1000,12972=>1000,12973=>1000,12974=>1000,12975=>1000,12976=>1000,12992=>1000,12993=>1000,\r\n\t12994=>1000,12995=>1000,12996=>1000,12997=>1000,12998=>1000,12999=>1000,13000=>1000,13001=>1000,13002=>1000,13003=>1000,13008=>1000,13009=>1000,13010=>1000,13011=>1000,13012=>1000,13013=>1000,\r\n\t13014=>1000,13015=>1000,13016=>1000,13017=>1000,13018=>1000,13019=>1000,13020=>1000,13021=>1000,13022=>1000,13023=>1000,13024=>1000,13025=>1000,13026=>1000,13027=>1000,13028=>1000,13029=>1000,\r\n\t13030=>1000,13031=>1000,13032=>1000,13033=>1000,13034=>1000,13035=>1000,13036=>1000,13037=>1000,13038=>1000,13039=>1000,13040=>1000,13041=>1000,13042=>1000,13043=>1000,13044=>1000,13045=>1000,\r\n\t13046=>1000,13047=>1000,13048=>1000,13049=>1000,13050=>1000,13051=>1000,13052=>1000,13053=>1000,13054=>1000,13056=>1000,13057=>1000,13058=>1000,13059=>1000,13060=>1000,13061=>1000,13062=>1000,\r\n\t13063=>1000,13064=>1000,13065=>1000,13066=>1000,13067=>1000,13068=>1000,13069=>1000,13070=>1000,13071=>1000,13072=>1000,13073=>1000,13074=>1000,13075=>1000,13076=>1000,13077=>1000,13078=>1000,\r\n\t13079=>1000,13080=>1000,13081=>1000,13082=>1000,13083=>1000,13084=>1000,13085=>1000,13086=>1000,13087=>1000,13088=>1000,13089=>1000,13090=>1000,13091=>1000,13092=>1000,13093=>1000,13094=>1000,\r\n\t13095=>1000,13096=>1000,13097=>1000,13098=>1000,13099=>1000,13100=>1000,13101=>1000,13102=>1000,13103=>1000,13104=>1000,13105=>1000,13106=>1000,13107=>1000,13108=>1000,13109=>1000,13110=>1000,\r\n\t13111=>1000,13112=>1000,13113=>1000,13114=>1000,13115=>1000,13116=>1000,13117=>1000,13118=>1000,13119=>1000,13120=>1000,13121=>1000,13122=>1000,13123=>1000,13124=>1000,13125=>1000,13126=>1000,\r\n\t13127=>1000,13128=>1000,13129=>1000,13130=>1000,13131=>1000,13132=>1000,13133=>1000,13134=>1000,13135=>1000,13136=>1000,13137=>1000,13138=>1000,13139=>1000,13140=>1000,13141=>1000,13142=>1000,\r\n\t13143=>1000,13144=>1000,13145=>1000,13146=>1000,13147=>1000,13148=>1000,13149=>1000,13150=>1000,13151=>1000,13152=>1000,13153=>1000,13154=>1000,13155=>1000,13156=>1000,13157=>1000,13158=>1000,\r\n\t13159=>1000,13160=>1000,13161=>1000,13162=>1000,13163=>1000,13164=>1000,13165=>1000,13166=>1000,13167=>1000,13168=>1000,13169=>1000,13170=>1000,13171=>1000,13172=>1000,13173=>1000,13174=>1000,\r\n\t13179=>1000,13180=>1000,13181=>1000,13182=>1000,13183=>1000,13184=>1000,13185=>1000,13186=>1000,13187=>1000,13188=>1000,13189=>1000,13190=>1000,13191=>1000,13192=>1000,13193=>1000,13194=>1000,\r\n\t13195=>1000,13196=>1000,13197=>1000,13198=>1000,13199=>1000,13200=>1000,13201=>1000,13202=>1000,13203=>1000,13204=>1000,13205=>1000,13206=>1000,13207=>1000,13208=>1000,13209=>1000,13210=>1000,\r\n\t13211=>1000,13212=>1000,13213=>1000,13214=>1000,13215=>1000,13216=>1000,13217=>1000,13218=>1000,13219=>1000,13220=>1000,13221=>1000,13222=>1000,13223=>1000,13224=>1000,13225=>1000,13226=>1000,\r\n\t13227=>1000,13228=>1000,13229=>1000,13230=>1000,13231=>1000,13232=>1000,13233=>1000,13234=>1000,13235=>1000,13236=>1000,13237=>1000,13238=>1000,13239=>1000,13240=>1000,13241=>1000,13242=>1000,\r\n\t13243=>1000,13244=>1000,13245=>1000,13246=>1000,13247=>1000,13248=>1000,13249=>1000,13250=>1000,13251=>1000,13252=>1000,13253=>1000,13254=>1000,13255=>1000,13256=>1000,13257=>1000,13258=>1000,\r\n\t13259=>1000,13260=>1000,13261=>1000,13262=>1000,13263=>1000,13264=>1000,13265=>1000,13266=>1000,13267=>1000,13268=>1000,13269=>1000,13270=>1000,13271=>1000,13272=>1000,13273=>1000,13274=>1000,\r\n\t13275=>1000,13276=>1000,13277=>1000,13280=>1000,13281=>1000,13282=>1000,13283=>1000,13284=>1000,13285=>1000,13286=>1000,13287=>1000,13288=>1000,13289=>1000,13290=>1000,13291=>1000,13292=>1000,\r\n\t13293=>1000,13294=>1000,13295=>1000,13296=>1000,13297=>1000,13298=>1000,13299=>1000,13300=>1000,13301=>1000,13302=>1000,13303=>1000,13304=>1000,13305=>1000,13306=>1000,13307=>1000,13308=>1000,\r\n\t13309=>1000,13310=>1000,59393=>316,59394=>507,59395=>507,59396=>484,59397=>484,59416=>0,59492=>480,59495=>480,59536=>458,59557=>466,59558=>480,59559=>903,61441=>500,61442=>500,\r\n\t63232=>541,63233=>0,63234=>0,63235=>0,63236=>0,63237=>0,63238=>0,63239=>0,63240=>0,63241=>0,63242=>0,63243=>0,63244=>0,63245=>0,63246=>0,63247=>849,\r\n\t63248=>0,63249=>0,63250=>0,63251=>0,63252=>0,63253=>0,63254=>0,63255=>0,63256=>0,63257=>0,63258=>0,63260=>333,63261=>287,63744=>1000,63745=>1000,63746=>1000,\r\n\t63747=>1000,63748=>1000,63749=>1000,63750=>1000,63751=>1000,63752=>1000,63753=>1000,63754=>1000,63755=>1000,63756=>1000,63757=>1000,63758=>1000,63759=>1000,63760=>1000,63761=>1000,63762=>1000,\r\n\t63763=>1000,63764=>1000,63765=>1000,63766=>1000,63767=>1000,63768=>1000,63769=>1000,63770=>1000,63771=>1000,63772=>1000,63773=>1000,63774=>1000,63775=>1000,63776=>1000,63777=>1000,63778=>1000,\r\n\t63779=>1000,63780=>1000,63781=>1000,63782=>1000,63783=>1000,63784=>1000,63785=>1000,63786=>1000,63787=>1000,63788=>1000,63789=>1000,63790=>1000,63791=>1000,63792=>1000,63793=>1000,63794=>1000,\r\n\t63795=>1000,63796=>1000,63797=>1000,63798=>1000,63799=>1000,63800=>1000,63801=>1000,63802=>1000,63803=>1000,63804=>1000,63805=>1000,63806=>1000,63807=>1000,63808=>1000,63809=>1000,63810=>1000,\r\n\t63811=>1000,63812=>1000,63813=>1000,63814=>1000,63815=>1000,63816=>1000,63817=>1000,63818=>1000,63819=>1000,63820=>1000,63821=>1000,63822=>1000,63823=>1000,63824=>1000,63825=>1000,63826=>1000,\r\n\t63827=>1000,63828=>1000,63829=>1000,63830=>1000,63831=>1000,63832=>1000,63833=>1000,63834=>1000,63835=>1000,63836=>1000,63837=>1000,63838=>1000,63839=>1000,63840=>1000,63841=>1000,63842=>1000,\r\n\t63843=>1000,63844=>1000,63845=>1000,63846=>1000,63847=>1000,63848=>1000,63849=>1000,63850=>1000,63851=>1000,63852=>1000,63853=>1000,63854=>1000,63855=>1000,63856=>1000,63857=>1000,63858=>1000,\r\n\t63859=>1000,63860=>1000,63861=>1000,63862=>1000,63863=>1000,63864=>1000,63865=>1000,63866=>1000,63867=>1000,63868=>1000,63869=>1000,63870=>1000,63871=>1000,63872=>1000,63873=>1000,63874=>1000,\r\n\t63875=>1000,63876=>1000,63877=>1000,63878=>1000,63879=>1000,63880=>1000,63881=>1000,63882=>1000,63883=>1000,63884=>1000,63885=>1000,63886=>1000,63887=>1000,63888=>1000,63889=>1000,63890=>1000,\r\n\t63891=>1000,63892=>1000,63893=>1000,63894=>1000,63895=>1000,63896=>1000,63897=>1000,63898=>1000,63899=>1000,63900=>1000,63901=>1000,63902=>1000,63903=>1000,63904=>1000,63905=>1000,63906=>1000,\r\n\t63907=>1000,63908=>1000,63909=>1000,63910=>1000,63911=>1000,63912=>1000,63913=>1000,63914=>1000,63915=>1000,63916=>1000,63917=>1000,63918=>1000,63919=>1000,63920=>1000,63921=>1000,63922=>1000,\r\n\t63923=>1000,63924=>1000,63925=>1000,63926=>1000,63927=>1000,63928=>1000,63929=>1000,63930=>1000,63931=>1000,63932=>1000,63933=>1000,63934=>1000,63935=>1000,63936=>1000,63937=>1000,63938=>1000,\r\n\t63939=>1000,63940=>1000,63941=>1000,63942=>1000,63943=>1000,63944=>1000,63945=>1000,63946=>1000,63947=>1000,63948=>1000,63949=>1000,63950=>1000,63951=>1000,63952=>1000,63953=>1000,63954=>1000,\r\n\t63955=>1000,63956=>1000,63957=>1000,63958=>1000,63959=>1000,63960=>1000,63961=>1000,63962=>1000,63963=>1000,63964=>1000,63965=>1000,63966=>1000,63967=>1000,63968=>1000,63969=>1000,63970=>1000,\r\n\t63971=>1000,63972=>1000,63973=>1000,63974=>1000,63975=>1000,63976=>1000,63977=>1000,63978=>1000,63979=>1000,63980=>1000,63981=>1000,63982=>1000,63983=>1000,63984=>1000,63985=>1000,63986=>1000,\r\n\t63987=>1000,63988=>1000,63989=>1000,63990=>1000,63991=>1000,63992=>1000,63993=>1000,63994=>1000,63995=>1000,63996=>1000,63997=>1000,63998=>1000,63999=>1000,64000=>1000,64001=>1000,64002=>1000,\r\n\t64003=>1000,64004=>1000,64005=>1000,64006=>1000,64007=>1000,64008=>1000,64009=>1000,64010=>1000,64011=>1000,64012=>1000,64013=>1000,64014=>1000,64015=>1000,64016=>1000,64017=>1000,64018=>1000,\r\n\t64019=>1000,64020=>1000,64021=>1000,64022=>1000,64023=>1000,64024=>1000,64025=>1000,64026=>1000,64027=>1000,64028=>1000,64029=>1000,64030=>1000,64031=>1000,64032=>1000,64033=>1000,64034=>1000,\r\n\t64035=>1000,64036=>1000,64037=>1000,64038=>1000,64039=>1000,64040=>1000,64041=>1000,64042=>1000,64043=>1000,64044=>1000,64045=>1000,64256=>537,64257=>500,64258=>500,64259=>778,64260=>750,\r\n\t64261=>532,64262=>758,64275=>784,64276=>784,64277=>784,64278=>784,64279=>893,64286=>333,64287=>590,64288=>550,64289=>709,64290=>649,64291=>730,64292=>656,64293=>605,64294=>730,\r\n\t64295=>633,64296=>794,64297=>584,64298=>700,64299=>700,64300=>700,64301=>700,64302=>577,64303=>577,64304=>577,64305=>563,64306=>411,64307=>512,64308=>594,64309=>316,64310=>326,\r\n\t64312=>594,64313=>316,64314=>507,64315=>527,64316=>484,64318=>594,64320=>338,64321=>604,64323=>567,64324=>569,64326=>514,64327=>583,64328=>507,64329=>700,64330=>633,64331=>316,\r\n\t64332=>563,64333=>527,64334=>569,64335=>577,64336=>243,64337=>273,64338=>771,64339=>788,64340=>276,64341=>243,64342=>771,64343=>788,64344=>276,64345=>243,64346=>771,64347=>788,\r\n\t64348=>276,64349=>243,64350=>771,64351=>788,64352=>276,64353=>243,64354=>771,64355=>788,64356=>276,64357=>243,64358=>771,64359=>788,64360=>276,64361=>243,64362=>957,64363=>903,\r\n\t64364=>466,64365=>480,64366=>957,64367=>903,64368=>466,64369=>480,64370=>544,64371=>658,64372=>646,64373=>637,64374=>544,64375=>658,64376=>646,64377=>637,64378=>544,64379=>658,\r\n\t64380=>646,64381=>637,64382=>544,64383=>658,64384=>646,64385=>637,64386=>430,64387=>458,64388=>430,64389=>458,64390=>430,64391=>458,64392=>430,64393=>458,64394=>421,64395=>436,\r\n\t64396=>421,64397=>436,64398=>828,64399=>942,64400=>432,64401=>549,64402=>828,64403=>942,64404=>432,64405=>549,64406=>828,64407=>942,64408=>432,64409=>549,64410=>828,64411=>942,\r\n\t64412=>432,64413=>549,64414=>692,64415=>723,64416=>692,64417=>723,64418=>276,64419=>243,64420=>514,64421=>477,64422=>514,64423=>509,64424=>273,64425=>427,64426=>706,64427=>706,\r\n\t64428=>686,64429=>686,64430=>550,64431=>461,64432=>550,64433=>461,64467=>757,64468=>733,64469=>432,64470=>549,64471=>470,64472=>466,64473=>470,64474=>466,64475=>470,64476=>466,\r\n\t64477=>470,64478=>470,64479=>466,64480=>470,64481=>466,64482=>470,64483=>466,64484=>781,64485=>933,64486=>276,64487=>243,64488=>276,64489=>243,64490=>547,64491=>517,64492=>783,\r\n\t64493=>753,64494=>740,64495=>710,64496=>740,64497=>710,64498=>740,64499=>710,64500=>740,64501=>710,64502=>1207,64503=>1177,64504=>517,64505=>1067,64506=>1037,64507=>517,64508=>731,\r\n\t64509=>793,64510=>276,64511=>243,64512=>932,64513=>932,64514=>914,64515=>1067,64516=>1077,64517=>935,64518=>935,64519=>935,64520=>917,64521=>1070,64522=>1080,64523=>932,64524=>932,\r\n\t64525=>932,64526=>914,64527=>1067,64528=>1077,64529=>932,64530=>914,64531=>1067,64532=>1077,64533=>1305,64534=>1287,64535=>1305,64536=>1287,64537=>1305,64538=>1305,64539=>1287,64540=>1429,\r\n\t64541=>1429,64542=>1429,64543=>1411,64544=>1476,64545=>1458,64546=>1476,64547=>1476,64548=>1476,64549=>1458,64550=>1392,64551=>1374,64552=>1374,64553=>1245,64554=>1227,64555=>1245,64556=>1227,\r\n\t64557=>1125,64558=>1125,64559=>1125,64560=>1107,64561=>1260,64562=>1270,64563=>1125,64564=>1107,64565=>1260,64566=>1270,64567=>706,64568=>1091,64569=>1091,64570=>1091,64571=>1106,64572=>1073,\r\n\t64573=>1226,64574=>1236,64575=>932,64576=>932,64577=>932,64578=>914,64579=>1067,64580=>1077,64581=>1140,64582=>1140,64583=>1140,64584=>1122,64585=>1275,64586=>1285,64587=>932,64588=>932,\r\n\t64589=>932,64590=>914,64591=>1067,64592=>1077,64593=>1345,64594=>1327,64595=>1480,64596=>1490,64597=>932,64598=>932,64599=>932,64600=>914,64601=>1067,64602=>1077,64603=>430,64604=>421,\r\n\t64605=>731,64606=>296,64607=>300,64608=>300,64609=>300,64610=>300,64611=>300,64612=>680,64613=>680,64614=>884,64615=>967,64616=>1037,64617=>1047,64618=>680,64619=>680,64620=>884,\r\n\t64621=>967,64622=>1037,64623=>1047,64624=>680,64625=>680,64626=>884,64627=>967,64628=>1037,64629=>1047,64630=>680,64631=>680,64632=>884,64633=>967,64634=>1037,64635=>1047,64636=>1274,\r\n\t64637=>1284,64638=>1274,64639=>1284,64640=>821,64641=>1221,64642=>1188,64643=>1341,64644=>1351,64645=>884,64646=>1037,64647=>1047,64648=>806,64649=>1173,64650=>680,64651=>680,64652=>884,\r\n\t64653=>967,64654=>1037,64655=>1047,64656=>793,64657=>680,64658=>680,64659=>884,64660=>967,64661=>1037,64662=>1047,64663=>911,64664=>911,64665=>911,64666=>806,64667=>679,64668=>911,\r\n\t64669=>911,64670=>911,64671=>806,64672=>679,64673=>911,64674=>911,64675=>911,64676=>806,64677=>679,64678=>806,64679=>1284,64680=>1179,64681=>1284,64682=>1179,64683=>1284,64684=>1179,\r\n\t64685=>1408,64686=>1408,64687=>1408,64688=>1303,64689=>1455,64690=>1455,64691=>1350,64692=>1455,64693=>1455,64694=>1455,64695=>1350,64696=>1371,64697=>1266,64698=>1224,64699=>1119,64700=>1224,\r\n\t64701=>1119,64702=>1104,64703=>1104,64704=>1104,64705=>999,64706=>1104,64707=>999,64708=>1070,64709=>1070,64710=>1070,64711=>676,64712=>965,64713=>911,64714=>911,64715=>911,64716=>806,\r\n\t64717=>679,64718=>1119,64719=>1119,64720=>1119,64721=>1014,64722=>911,64723=>911,64724=>911,64725=>806,64726=>679,64727=>1324,64728=>1219,64729=>686,64730=>911,64731=>911,64732=>911,\r\n\t64733=>806,64734=>679,64735=>776,64736=>649,64737=>776,64738=>649,64739=>776,64740=>649,64741=>776,64742=>649,64743=>1303,64744=>1176,64745=>1303,64746=>1176,64747=>793,64748=>1082,\r\n\t64749=>776,64750=>776,64751=>649,64752=>776,64753=>649,64754=>306,64755=>302,64756=>298,64757=>1527,64758=>1537,64759=>1380,64760=>1390,64761=>1380,64762=>1390,64763=>1564,64764=>1574,\r\n\t64765=>1564,64766=>1574,64767=>1440,64768=>1450,64769=>1440,64770=>1450,64771=>1440,64772=>1450,64773=>1611,64774=>1621,64775=>1611,64776=>1621,64777=>1429,64778=>1429,64779=>1429,64780=>1411,\r\n\t64781=>1207,64782=>1207,64783=>1254,64784=>1254,64785=>1527,64786=>1537,64787=>1348,64788=>1358,64789=>1348,64790=>1358,64791=>1564,64792=>1574,64793=>1564,64794=>1574,64795=>1431,64796=>1441,\r\n\t64797=>1431,64798=>1441,64799=>1431,64800=>1441,64801=>1611,64802=>1621,64803=>1611,64804=>1621,64805=>1429,64806=>1429,64807=>1429,64808=>1411,64809=>1207,64810=>1207,64811=>1254,64812=>1254,\r\n\t64813=>1408,64814=>1408,64815=>1408,64816=>1303,64817=>1176,64818=>1176,64819=>1266,64820=>1408,64821=>1408,64822=>1408,64823=>1408,64824=>1408,64825=>1408,64826=>1266,64827=>1266,64828=>273,\r\n\t64829=>243,64830=>600,64831=>600,64848=>1444,64849=>1541,64850=>1549,64851=>1444,64852=>1444,64853=>1444,64854=>1444,64855=>1444,64856=>1830,64857=>1817,64858=>1975,64859=>1964,64860=>2046,\r\n\t64861=>2046,64862=>2202,64863=>1962,64864=>1941,64865=>1941,64866=>1944,64867=>1836,64868=>2114,64869=>2093,64870=>1991,64871=>2049,64872=>1941,64873=>2212,64874=>1962,64875=>1941,64876=>1944,\r\n\t64877=>1836,64878=>2249,64879=>2096,64880=>1988,64881=>1925,64882=>1904,64883=>1799,64884=>2070,64885=>1833,64886=>1729,64887=>1652,64888=>1881,64889=>1729,64890=>1892,64891=>1881,64892=>1759,\r\n\t64893=>1637,64894=>1670,64895=>1654,64896=>1522,64897=>1686,64898=>1675,64899=>1549,64900=>1541,64901=>1522,64902=>1444,64903=>1436,64904=>1444,64905=>1757,64906=>1652,64907=>1975,64908=>1757,\r\n\t64909=>1652,64910=>1757,64911=>1652,64914=>1757,64915=>1857,64916=>1752,64917=>1444,64918=>1675,64919=>1522,64920=>1444,64921=>1675,64922=>1581,64923=>1570,64924=>1417,64925=>1362,64926=>1686,\r\n\t64927=>1686,64928=>1675,64929=>1686,64930=>1675,64931=>1581,64932=>1570,64933=>1975,64934=>2069,64935=>1964,64936=>2202,64937=>2259,64938=>2212,64939=>2259,64940=>1686,64941=>1581,64942=>1686,\r\n\t64943=>1686,64944=>1581,64945=>1870,64946=>1817,64947=>1686,64948=>1637,64949=>1444,64950=>1892,64951=>1886,64952=>1549,64953=>1975,64954=>1444,64955=>1723,64956=>1522,64957=>1541,64958=>2080,\r\n\t64959=>2080,64960=>1975,64961=>1817,64962=>1686,64963=>1499,64964=>1757,64965=>1883,64966=>2212,64967=>1686,65008=>1523,65009=>1172,65010=>1159,65011=>1356,65012=>2111,65013=>2258,65014=>2130,\r\n\t65015=>1552,65016=>2046,65017=>1856,65018=>1930,65019=>1070,65056=>450,65057=>450,65058=>450,65059=>450,65072=>1000,65073=>1000,65074=>1000,65075=>1000,65076=>1000,65077=>1000,65078=>1000,\r\n\t65079=>1000,65080=>1000,65081=>1000,65082=>1000,65083=>1000,65084=>1000,65085=>1000,65086=>1000,65087=>1000,65088=>1000,65089=>1000,65090=>1000,65091=>1000,65092=>1000,65097=>1000,65098=>1000,\r\n\t65099=>1000,65100=>1000,65101=>1000,65102=>1000,65103=>1000,65104=>167,65105=>250,65106=>167,65108=>167,65109=>167,65110=>334,65111=>167,65112=>600,65113=>200,65114=>200,65115=>200,\r\n\t65116=>200,65117=>200,65118=>200,65119=>334,65120=>400,65121=>233,65122=>350,65123=>200,65124=>350,65125=>350,65126=>350,65128=>167,65129=>334,65130=>533,65131=>609,65136=>300,\r\n\t65137=>298,65138=>296,65140=>298,65142=>300,65143=>298,65144=>300,65145=>302,65146=>298,65147=>296,65148=>306,65149=>306,65150=>154,65151=>154,65152=>529,65153=>243,65154=>273,\r\n\t65155=>243,65156=>273,65157=>470,65158=>466,65159=>243,65160=>273,65161=>731,65162=>793,65163=>276,65164=>243,65165=>243,65166=>273,65167=>771,65168=>788,65169=>276,65170=>243,\r\n\t65171=>514,65172=>477,65173=>771,65174=>788,65175=>276,65176=>243,65177=>771,65178=>788,65179=>276,65180=>243,65181=>544,65182=>658,65183=>646,65184=>637,65185=>544,65186=>658,\r\n\t65187=>646,65188=>637,65189=>544,65190=>658,65191=>646,65192=>637,65193=>430,65194=>458,65195=>430,65196=>458,65197=>421,65198=>436,65199=>421,65200=>436,65201=>1194,65202=>1194,\r\n\t65203=>770,65204=>770,65205=>1194,65206=>1194,65207=>770,65208=>770,65209=>1291,65210=>1291,65211=>817,65212=>817,65213=>1291,65214=>1291,65215=>817,65216=>817,65217=>843,65218=>843,\r\n\t65219=>733,65220=>733,65221=>843,65222=>843,65223=>733,65224=>733,65225=>594,65226=>556,65227=>586,65228=>554,65229=>594,65230=>556,65231=>586,65232=>554,65233=>957,65234=>903,\r\n\t65235=>466,65236=>480,65237=>800,65238=>823,65239=>466,65240=>480,65241=>757,65242=>733,65243=>432,65244=>549,65245=>662,65246=>673,65247=>273,65248=>243,65249=>589,65250=>640,\r\n\t65251=>481,65252=>532,65253=>692,65254=>723,65255=>276,65256=>243,65257=>514,65258=>477,65259=>686,65260=>405,65261=>470,65262=>466,65263=>731,65264=>793,65265=>731,65266=>803,\r\n\t65267=>276,65268=>243,65269=>551,65270=>603,65271=>551,65272=>603,65273=>551,65274=>603,65275=>551,65276=>603,65281=>1000,65282=>1000,65283=>1000,65284=>1000,65285=>1000,65286=>1000,\r\n\t65287=>1000,65288=>1000,65289=>1000,65290=>1000,65291=>1000,65292=>1000,65293=>1000,65294=>1000,65295=>1000,65296=>1000,65297=>1000,65298=>1000,65299=>1000,65300=>1000,65301=>1000,65302=>1000,\r\n\t65303=>1000,65304=>1000,65305=>1000,65306=>1000,65307=>1000,65308=>1000,65309=>1000,65310=>1000,65311=>1000,65312=>1000,65313=>1000,65314=>1000,65315=>1000,65316=>1000,65317=>1000,65318=>1000,\r\n\t65319=>1000,65320=>1000,65321=>1000,65322=>1000,65323=>1000,65324=>1000,65325=>1000,65326=>1000,65327=>1000,65328=>1000,65329=>1000,65330=>1000,65331=>1000,65332=>1000,65333=>1000,65334=>1000,\r\n\t65335=>1000,65336=>1000,65337=>1000,65338=>1000,65339=>1000,65340=>1000,65341=>1000,65342=>1000,65343=>1000,65344=>1000,65345=>1000,65346=>1000,65347=>1000,65348=>1000,65349=>1000,65350=>1000,\r\n\t65351=>1000,65352=>1000,65353=>1000,65354=>1000,65355=>1000,65356=>1000,65357=>1000,65358=>1000,65359=>1000,65360=>1000,65361=>1000,65362=>1000,65363=>1000,65364=>1000,65365=>1000,65366=>1000,\r\n\t65367=>1000,65368=>1000,65369=>1000,65370=>1000,65371=>1000,65372=>1000,65373=>1000,65374=>1000,65377=>500,65378=>500,65379=>500,65380=>500,65381=>500,65382=>500,65383=>500,65384=>500,\r\n\t65385=>500,65386=>500,65387=>500,65388=>500,65389=>500,65390=>500,65391=>500,65392=>500,65393=>500,65394=>500,65395=>500,65396=>500,65397=>500,65398=>500,65399=>500,65400=>500,\r\n\t65401=>500,65402=>500,65403=>500,65404=>500,65405=>500,65406=>500,65407=>500,65408=>500,65409=>500,65410=>500,65411=>500,65412=>500,65413=>500,65414=>500,65415=>500,65416=>500,\r\n\t65417=>500,65418=>500,65419=>500,65420=>500,65421=>500,65422=>500,65423=>500,65424=>500,65425=>500,65426=>500,65427=>500,65428=>500,65429=>500,65430=>500,65431=>500,65432=>500,\r\n\t65433=>500,65434=>500,65435=>500,65436=>500,65437=>500,65438=>500,65439=>500,65440=>500,65441=>500,65442=>500,65443=>500,65444=>500,65445=>500,65446=>500,65447=>500,65448=>500,\r\n\t65449=>500,65450=>500,65451=>500,65452=>500,65453=>500,65454=>500,65455=>500,65456=>500,65457=>500,65458=>500,65459=>500,65460=>500,65461=>500,65462=>500,65463=>500,65464=>500,\r\n\t65465=>500,65466=>500,65467=>500,65468=>500,65469=>500,65470=>500,65474=>500,65475=>500,65476=>500,65477=>500,65478=>500,65479=>500,65482=>500,65483=>500,65484=>500,65485=>500,\r\n\t65486=>500,65487=>500,65490=>500,65491=>500,65492=>500,65493=>500,65494=>500,65495=>500,65498=>500,65499=>500,65500=>500,65504=>1000,65505=>1000,65506=>1000,65507=>1000,65508=>1000,\r\n\t65509=>1000,65510=>1000,65512=>500,65513=>500,65514=>500,65515=>500,65516=>500,65517=>500,65518=>500,65532=>1000,65533=>1000,19968=>1000,19969=>1000,19970=>1000,19971=>1000,19972=>1000,\r\n\t19973=>1000,19974=>1000,19975=>1000,19976=>1000,19977=>1000,19978=>1000,19979=>1000,19980=>1000,19981=>1000,19982=>1000,19983=>1000,19984=>1000,19985=>1000,19986=>1000,19987=>1000,19988=>1000,\r\n\t19989=>1000,19990=>1000,19991=>1000,19992=>1000,19993=>1000,19994=>1000,19995=>1000,19996=>1000,19997=>1000,19998=>1000,19999=>1000,20000=>1000,20001=>1000,20002=>1000,20003=>1000,20004=>1000,\r\n\t20005=>1000,20006=>1000,20007=>1000,20008=>1000,20009=>1000,20010=>1000,20011=>1000,20012=>1000,20013=>1000,20014=>1000,20015=>1000,20016=>1000,20017=>1000,20018=>1000,20019=>1000,20020=>1000,\r\n\t20021=>1000,20022=>1000,20023=>1000,20024=>1000,20025=>1000,20026=>1000,20027=>1000,20028=>1000,20029=>1000,20030=>1000,20031=>1000,20032=>1000,20033=>1000,20034=>1000,20035=>1000,20036=>1000,\r\n\t20037=>1000,20038=>1000,20039=>1000,20040=>1000,20041=>1000,20042=>1000,20043=>1000,20044=>1000,20045=>1000,20046=>1000,20047=>1000,20048=>1000,20049=>1000,20050=>1000,20051=>1000,20052=>1000,\r\n\t20053=>1000,20054=>1000,20055=>1000,20056=>1000,20057=>1000,20058=>1000,20059=>1000,20060=>1000,20061=>1000,20062=>1000,20063=>1000,20064=>1000,20065=>1000,20066=>1000,20067=>1000,20068=>1000,\r\n\t20069=>1000,20070=>1000,20071=>1000,20072=>1000,20073=>1000,20074=>1000,20075=>1000,20076=>1000,20077=>1000,20078=>1000,20079=>1000,20080=>1000,20081=>1000,20082=>1000,20083=>1000,20084=>1000,\r\n\t20085=>1000,20086=>1000,20087=>1000,20088=>1000,20089=>1000,20090=>1000,20091=>1000,20092=>1000,20093=>1000,20094=>1000,20095=>1000,20096=>1000,20097=>1000,20098=>1000,20099=>1000,20100=>1000,\r\n\t20101=>1000,20102=>1000,20103=>1000,20104=>1000,20105=>1000,20106=>1000,20107=>1000,20108=>1000,20109=>1000,20110=>1000,20111=>1000,20112=>1000,20113=>1000,20114=>1000,20115=>1000,20116=>1000,\r\n\t20117=>1000,20118=>1000,20119=>1000,20120=>1000,20121=>1000,20122=>1000,20123=>1000,20124=>1000,20125=>1000,20126=>1000,20127=>1000,20128=>1000,20129=>1000,20130=>1000,20131=>1000,20132=>1000,\r\n\t20133=>1000,20134=>1000,20135=>1000,20136=>1000,20137=>1000,20138=>1000,20139=>1000,20140=>1000,20141=>1000,20142=>1000,20143=>1000,20144=>1000,20145=>1000,20146=>1000,20147=>1000,20148=>1000,\r\n\t20149=>1000,20150=>1000,20151=>1000,20152=>1000,20153=>1000,20154=>1000,20155=>1000,20156=>1000,20157=>1000,20158=>1000,20159=>1000,20160=>1000,20161=>1000,20162=>1000,20163=>1000,20164=>1000,\r\n\t20165=>1000,20166=>1000,20167=>1000,20168=>1000,20169=>1000,20170=>1000,20171=>1000,20172=>1000,20173=>1000,20174=>1000,20175=>1000,20176=>1000,20177=>1000,20178=>1000,20179=>1000,20180=>1000,\r\n\t20181=>1000,20182=>1000,20183=>1000,20184=>1000,20185=>1000,20186=>1000,20187=>1000,20188=>1000,20189=>1000,20190=>1000,20191=>1000,20192=>1000,20193=>1000,20194=>1000,20195=>1000,20196=>1000,\r\n\t20197=>1000,20198=>1000,20199=>1000,20200=>1000,20201=>1000,20202=>1000,20203=>1000,20204=>1000,20205=>1000,20206=>1000,20207=>1000,20208=>1000,20209=>1000,20210=>1000,20211=>1000,20212=>1000,\r\n\t20213=>1000,20214=>1000,20215=>1000,20216=>1000,20217=>1000,20218=>1000,20219=>1000,20220=>1000,20221=>1000,20222=>1000,20223=>1000,20224=>1000,20225=>1000,20226=>1000,20227=>1000,20228=>1000,\r\n\t20229=>1000,20230=>1000,20231=>1000,20232=>1000,20233=>1000,20234=>1000,20235=>1000,20236=>1000,20237=>1000,20238=>1000,20239=>1000,20240=>1000,20241=>1000,20242=>1000,20243=>1000,20244=>1000,\r\n\t20245=>1000,20246=>1000,20247=>1000,20248=>1000,20249=>1000,20250=>1000,20251=>1000,20252=>1000,20253=>1000,20254=>1000,20255=>1000,20256=>1000,20257=>1000,20258=>1000,20259=>1000,20260=>1000,\r\n\t20261=>1000,20262=>1000,20263=>1000,20264=>1000,20265=>1000,20266=>1000,20267=>1000,20268=>1000,20269=>1000,20270=>1000,20271=>1000,20272=>1000,20273=>1000,20274=>1000,20275=>1000,20276=>1000,\r\n\t20277=>1000,20278=>1000,20279=>1000,20280=>1000,20281=>1000,20282=>1000,20283=>1000,20284=>1000,20285=>1000,20286=>1000,20287=>1000,20288=>1000,20289=>1000,20290=>1000,20291=>1000,20292=>1000,\r\n\t20293=>1000,20294=>1000,20295=>1000,20296=>1000,20297=>1000,20298=>1000,20299=>1000,20300=>1000,20301=>1000,20302=>1000,20303=>1000,20304=>1000,20305=>1000,20306=>1000,20307=>1000,20308=>1000,\r\n\t20309=>1000,20310=>1000,20311=>1000,20312=>1000,20313=>1000,20314=>1000,20315=>1000,20316=>1000,20317=>1000,20318=>1000,20319=>1000,20320=>1000,20321=>1000,20322=>1000,20323=>1000,20324=>1000,\r\n\t20325=>1000,20326=>1000,20327=>1000,20328=>1000,20329=>1000,20330=>1000,20331=>1000,20332=>1000,20333=>1000,20334=>1000,20335=>1000,20336=>1000,20337=>1000,20338=>1000,20339=>1000,20340=>1000,\r\n\t20341=>1000,20342=>1000,20343=>1000,20344=>1000,20345=>1000,20346=>1000,20347=>1000,20348=>1000,20349=>1000,20350=>1000,20351=>1000,20352=>1000,20353=>1000,20354=>1000,20355=>1000,20356=>1000,\r\n\t20357=>1000,20358=>1000,20359=>1000,20360=>1000,20361=>1000,20362=>1000,20363=>1000,20364=>1000,20365=>1000,20366=>1000,20367=>1000,20368=>1000,20369=>1000,20370=>1000,20371=>1000,20372=>1000,\r\n\t20373=>1000,20374=>1000,20375=>1000,20376=>1000,20377=>1000,20378=>1000,20379=>1000,20380=>1000,20381=>1000,20382=>1000,20383=>1000,20384=>1000,20385=>1000,20386=>1000,20387=>1000,20388=>1000,\r\n\t20389=>1000,20390=>1000,20391=>1000,20392=>1000,20393=>1000,20394=>1000,20395=>1000,20396=>1000,20397=>1000,20398=>1000,20399=>1000,20400=>1000,20401=>1000,20402=>1000,20403=>1000,20404=>1000,\r\n\t20405=>1000,20406=>1000,20407=>1000,20408=>1000,20409=>1000,20410=>1000,20411=>1000,20412=>1000,20413=>1000,20414=>1000,20415=>1000,20416=>1000,20417=>1000,20418=>1000,20419=>1000,20420=>1000,\r\n\t20421=>1000,20422=>1000,20423=>1000,20424=>1000,20425=>1000,20426=>1000,20427=>1000,20428=>1000,20429=>1000,20430=>1000,20431=>1000,20432=>1000,20433=>1000,20434=>1000,20435=>1000,20436=>1000,\r\n\t20437=>1000,20438=>1000,20439=>1000,20440=>1000,20441=>1000,20442=>1000,20443=>1000,20444=>1000,20445=>1000,20446=>1000,20447=>1000,20448=>1000,20449=>1000,20450=>1000,20451=>1000,20452=>1000,\r\n\t20453=>1000,20454=>1000,20455=>1000,20456=>1000,20457=>1000,20458=>1000,20459=>1000,20460=>1000,20461=>1000,20462=>1000,20463=>1000,20464=>1000,20465=>1000,20466=>1000,20467=>1000,20468=>1000,\r\n\t20469=>1000,20470=>1000,20471=>1000,20472=>1000,20473=>1000,20474=>1000,20475=>1000,20476=>1000,20477=>1000,20478=>1000,20479=>1000,20480=>1000,20481=>1000,20482=>1000,20483=>1000,20484=>1000,\r\n\t20485=>1000,20486=>1000,20487=>1000,20488=>1000,20489=>1000,20490=>1000,20491=>1000,20492=>1000,20493=>1000,20494=>1000,20495=>1000,20496=>1000,20497=>1000,20498=>1000,20499=>1000,20500=>1000,\r\n\t20501=>1000,20502=>1000,20503=>1000,20504=>1000,20505=>1000,20506=>1000,20507=>1000,20508=>1000,20509=>1000,20510=>1000,20511=>1000,20512=>1000,20513=>1000,20514=>1000,20515=>1000,20516=>1000,\r\n\t20517=>1000,20518=>1000,20519=>1000,20520=>1000,20521=>1000,20522=>1000,20523=>1000,20524=>1000,20525=>1000,20526=>1000,20527=>1000,20528=>1000,20529=>1000,20530=>1000,20531=>1000,20532=>1000,\r\n\t20533=>1000,20534=>1000,20535=>1000,20536=>1000,20537=>1000,20538=>1000,20539=>1000,20540=>1000,20541=>1000,20542=>1000,20543=>1000,20544=>1000,20545=>1000,20546=>1000,20547=>1000,20548=>1000,\r\n\t20549=>1000,20550=>1000,20551=>1000,20552=>1000,20553=>1000,20554=>1000,20555=>1000,20556=>1000,20557=>1000,20558=>1000,20559=>1000,20560=>1000,20561=>1000,20562=>1000,20563=>1000,20564=>1000,\r\n\t20565=>1000,20566=>1000,20567=>1000,20568=>1000,20569=>1000,20570=>1000,20571=>1000,20572=>1000,20573=>1000,20574=>1000,20575=>1000,20576=>1000,20577=>1000,20578=>1000,20579=>1000,20580=>1000,\r\n\t20581=>1000,20582=>1000,20583=>1000,20584=>1000,20585=>1000,20586=>1000,20587=>1000,20588=>1000,20589=>1000,20590=>1000,20591=>1000,20592=>1000,20593=>1000,20594=>1000,20595=>1000,20596=>1000,\r\n\t20597=>1000,20598=>1000,20599=>1000,20600=>1000,20601=>1000,20602=>1000,20603=>1000,20604=>1000,20605=>1000,20606=>1000,20607=>1000,20608=>1000,20609=>1000,20610=>1000,20611=>1000,20612=>1000,\r\n\t20613=>1000,20614=>1000,20615=>1000,20616=>1000,20617=>1000,20618=>1000,20619=>1000,20620=>1000,20621=>1000,20622=>1000,20623=>1000,20624=>1000,20625=>1000,20626=>1000,20627=>1000,20628=>1000,\r\n\t20629=>1000,20630=>1000,20631=>1000,20632=>1000,20633=>1000,20634=>1000,20635=>1000,20636=>1000,20637=>1000,20638=>1000,20639=>1000,20640=>1000,20641=>1000,20642=>1000,20643=>1000,20644=>1000,\r\n\t20645=>1000,20646=>1000,20647=>1000,20648=>1000,20649=>1000,20650=>1000,20651=>1000,20652=>1000,20653=>1000,20654=>1000,20655=>1000,20656=>1000,20657=>1000,20658=>1000,20659=>1000,20660=>1000,\r\n\t20661=>1000,20662=>1000,20663=>1000,20664=>1000,20665=>1000,20666=>1000,20667=>1000,20668=>1000,20669=>1000,20670=>1000,20671=>1000,20672=>1000,20673=>1000,20674=>1000,20675=>1000,20676=>1000,\r\n\t20677=>1000,20678=>1000,20679=>1000,20680=>1000,20681=>1000,20682=>1000,20683=>1000,20684=>1000,20685=>1000,20686=>1000,20687=>1000,20688=>1000,20689=>1000,20690=>1000,20691=>1000,20692=>1000,\r\n\t20693=>1000,20694=>1000,20695=>1000,20696=>1000,20697=>1000,20698=>1000,20699=>1000,20700=>1000,20701=>1000,20702=>1000,20703=>1000,20704=>1000,20705=>1000,20706=>1000,20707=>1000,20708=>1000,\r\n\t20709=>1000,20710=>1000,20711=>1000,20712=>1000,20713=>1000,20714=>1000,20715=>1000,20716=>1000,20717=>1000,20718=>1000,20719=>1000,20720=>1000,20721=>1000,20722=>1000,20723=>1000,20724=>1000,\r\n\t20725=>1000,20726=>1000,20727=>1000,20728=>1000,20729=>1000,20730=>1000,20731=>1000,20732=>1000,20733=>1000,20734=>1000,20735=>1000,20736=>1000,20737=>1000,20738=>1000,20739=>1000,20740=>1000,\r\n\t20741=>1000,20742=>1000,20743=>1000,20744=>1000,20745=>1000,20746=>1000,20747=>1000,20748=>1000,20749=>1000,20750=>1000,20751=>1000,20752=>1000,20753=>1000,20754=>1000,20755=>1000,20756=>1000,\r\n\t20757=>1000,20758=>1000,20759=>1000,20760=>1000,20761=>1000,20762=>1000,20763=>1000,20764=>1000,20765=>1000,20766=>1000,20767=>1000,20768=>1000,20769=>1000,20770=>1000,20771=>1000,20772=>1000,\r\n\t20773=>1000,20774=>1000,20775=>1000,20776=>1000,20777=>1000,20778=>1000,20779=>1000,20780=>1000,20781=>1000,20782=>1000,20783=>1000,20784=>1000,20785=>1000,20786=>1000,20787=>1000,20788=>1000,\r\n\t20789=>1000,20790=>1000,20791=>1000,20792=>1000,20793=>1000,20794=>1000,20795=>1000,20796=>1000,20797=>1000,20798=>1000,20799=>1000,20800=>1000,20801=>1000,20802=>1000,20803=>1000,20804=>1000,\r\n\t20805=>1000,20806=>1000,20807=>1000,20808=>1000,20809=>1000,20810=>1000,20811=>1000,20812=>1000,20813=>1000,20814=>1000,20815=>1000,20816=>1000,20817=>1000,20818=>1000,20819=>1000,20820=>1000,\r\n\t20821=>1000,20822=>1000,20823=>1000,20824=>1000,20825=>1000,20826=>1000,20827=>1000,20828=>1000,20829=>1000,20830=>1000,20831=>1000,20832=>1000,20833=>1000,20834=>1000,20835=>1000,20836=>1000,\r\n\t20837=>1000,20838=>1000,20839=>1000,20840=>1000,20841=>1000,20842=>1000,20843=>1000,20844=>1000,20845=>1000,20846=>1000,20847=>1000,20848=>1000,20849=>1000,20850=>1000,20851=>1000,20852=>1000,\r\n\t20853=>1000,20854=>1000,20855=>1000,20856=>1000,20857=>1000,20858=>1000,20859=>1000,20860=>1000,20861=>1000,20862=>1000,20863=>1000,20864=>1000,20865=>1000,20866=>1000,20867=>1000,20868=>1000,\r\n\t20869=>1000,20870=>1000,20871=>1000,20872=>1000,20873=>1000,20874=>1000,20875=>1000,20876=>1000,20877=>1000,20878=>1000,20879=>1000,20880=>1000,20881=>1000,20882=>1000,20883=>1000,20884=>1000,\r\n\t20885=>1000,20886=>1000,20887=>1000,20888=>1000,20889=>1000,20890=>1000,20891=>1000,20892=>1000,20893=>1000,20894=>1000,20895=>1000,20896=>1000,20897=>1000,20898=>1000,20899=>1000,20900=>1000,\r\n\t20901=>1000,20902=>1000,20903=>1000,20904=>1000,20905=>1000,20906=>1000,20907=>1000,20908=>1000,20909=>1000,20910=>1000,20911=>1000,20912=>1000,20913=>1000,20914=>1000,20915=>1000,20916=>1000,\r\n\t20917=>1000,20918=>1000,20919=>1000,20920=>1000,20921=>1000,20922=>1000,20923=>1000,20924=>1000,20925=>1000,20926=>1000,20927=>1000,20928=>1000,20929=>1000,20930=>1000,20931=>1000,20932=>1000,\r\n\t20933=>1000,20934=>1000,20935=>1000,20936=>1000,20937=>1000,20938=>1000,20939=>1000,20940=>1000,20941=>1000,20942=>1000,20943=>1000,20944=>1000,20945=>1000,20946=>1000,20947=>1000,20948=>1000,\r\n\t20949=>1000,20950=>1000,20951=>1000,20952=>1000,20953=>1000,20954=>1000,20955=>1000,20956=>1000,20957=>1000,20958=>1000,20959=>1000,20960=>1000,20961=>1000,20962=>1000,20963=>1000,20964=>1000,\r\n\t20965=>1000,20966=>1000,20967=>1000,20968=>1000,20969=>1000,20970=>1000,20971=>1000,20972=>1000,20973=>1000,20974=>1000,20975=>1000,20976=>1000,20977=>1000,20978=>1000,20979=>1000,20980=>1000,\r\n\t20981=>1000,20982=>1000,20983=>1000,20984=>1000,20985=>1000,20986=>1000,20987=>1000,20988=>1000,20989=>1000,20990=>1000,20991=>1000,20992=>1000,20993=>1000,20994=>1000,20995=>1000,20996=>1000,\r\n\t20997=>1000,20998=>1000,20999=>1000,21000=>1000,21001=>1000,21002=>1000,21003=>1000,21004=>1000,21005=>1000,21006=>1000,21007=>1000,21008=>1000,21009=>1000,21010=>1000,21011=>1000,21012=>1000,\r\n\t21013=>1000,21014=>1000,21015=>1000,21016=>1000,21017=>1000,21018=>1000,21019=>1000,21020=>1000,21021=>1000,21022=>1000,21023=>1000,21024=>1000,21025=>1000,21026=>1000,21027=>1000,21028=>1000,\r\n\t21029=>1000,21030=>1000,21031=>1000,21032=>1000,21033=>1000,21034=>1000,21035=>1000,21036=>1000,21037=>1000,21038=>1000,21039=>1000,21040=>1000,21041=>1000,21042=>1000,21043=>1000,21044=>1000,\r\n\t21045=>1000,21046=>1000,21047=>1000,21048=>1000,21049=>1000,21050=>1000,21051=>1000,21052=>1000,21053=>1000,21054=>1000,21055=>1000,21056=>1000,21057=>1000,21058=>1000,21059=>1000,21060=>1000,\r\n\t21061=>1000,21062=>1000,21063=>1000,21064=>1000,21065=>1000,21066=>1000,21067=>1000,21068=>1000,21069=>1000,21070=>1000,21071=>1000,21072=>1000,21073=>1000,21074=>1000,21075=>1000,21076=>1000,\r\n\t21077=>1000,21078=>1000,21079=>1000,21080=>1000,21081=>1000,21082=>1000,21083=>1000,21084=>1000,21085=>1000,21086=>1000,21087=>1000,21088=>1000,21089=>1000,21090=>1000,21091=>1000,21092=>1000,\r\n\t21093=>1000,21094=>1000,21095=>1000,21096=>1000,21097=>1000,21098=>1000,21099=>1000,21100=>1000,21101=>1000,21102=>1000,21103=>1000,21104=>1000,21105=>1000,21106=>1000,21107=>1000,21108=>1000,\r\n\t21109=>1000,21110=>1000,21111=>1000,21112=>1000,21113=>1000,21114=>1000,21115=>1000,21116=>1000,21117=>1000,21118=>1000,21119=>1000,21120=>1000,21121=>1000,21122=>1000,21123=>1000,21124=>1000,\r\n\t21125=>1000,21126=>1000,21127=>1000,21128=>1000,21129=>1000,21130=>1000,21131=>1000,21132=>1000,21133=>1000,21134=>1000,21135=>1000,21136=>1000,21137=>1000,21138=>1000,21139=>1000,21140=>1000,\r\n\t21141=>1000,21142=>1000,21143=>1000,21144=>1000,21145=>1000,21146=>1000,21147=>1000,21148=>1000,21149=>1000,21150=>1000,21151=>1000,21152=>1000,21153=>1000,21154=>1000,21155=>1000,21156=>1000,\r\n\t21157=>1000,21158=>1000,21159=>1000,21160=>1000,21161=>1000,21162=>1000,21163=>1000,21164=>1000,21165=>1000,21166=>1000,21167=>1000,21168=>1000,21169=>1000,21170=>1000,21171=>1000,21172=>1000,\r\n\t21173=>1000,21174=>1000,21175=>1000,21176=>1000,21177=>1000,21178=>1000,21179=>1000,21180=>1000,21181=>1000,21182=>1000,21183=>1000,21184=>1000,21185=>1000,21186=>1000,21187=>1000,21188=>1000,\r\n\t21189=>1000,21190=>1000,21191=>1000,21192=>1000,21193=>1000,21194=>1000,21195=>1000,21196=>1000,21197=>1000,21198=>1000,21199=>1000,21200=>1000,21201=>1000,21202=>1000,21203=>1000,21204=>1000,\r\n\t21205=>1000,21206=>1000,21207=>1000,21208=>1000,21209=>1000,21210=>1000,21211=>1000,21212=>1000,21213=>1000,21214=>1000,21215=>1000,21216=>1000,21217=>1000,21218=>1000,21219=>1000,21220=>1000,\r\n\t21221=>1000,21222=>1000,21223=>1000,21224=>1000,21225=>1000,21226=>1000,21227=>1000,21228=>1000,21229=>1000,21230=>1000,21231=>1000,21232=>1000,21233=>1000,21234=>1000,21235=>1000,21236=>1000,\r\n\t21237=>1000,21238=>1000,21239=>1000,21240=>1000,21241=>1000,21242=>1000,21243=>1000,21244=>1000,21245=>1000,21246=>1000,21247=>1000,21248=>1000,21249=>1000,21250=>1000,21251=>1000,21252=>1000,\r\n\t21253=>1000,21254=>1000,21255=>1000,21256=>1000,21257=>1000,21258=>1000,21259=>1000,21260=>1000,21261=>1000,21262=>1000,21263=>1000,21264=>1000,21265=>1000,21266=>1000,21267=>1000,21268=>1000,\r\n\t21269=>1000,21270=>1000,21271=>1000,21272=>1000,21273=>1000,21274=>1000,21275=>1000,21276=>1000,21277=>1000,21278=>1000,21279=>1000,21280=>1000,21281=>1000,21282=>1000,21283=>1000,21284=>1000,\r\n\t21285=>1000,21286=>1000,21287=>1000,21288=>1000,21289=>1000,21290=>1000,21291=>1000,21292=>1000,21293=>994,21294=>1000,21295=>1000,21296=>1000,21297=>1000,21298=>1000,21299=>1000,21300=>1000,\r\n\t21301=>1000,21302=>1000,21303=>1000,21304=>1000,21305=>1000,21306=>1000,21307=>1000,21308=>1000,21309=>1000,21310=>1000,21311=>1000,21312=>1000,21313=>1000,21314=>1000,21315=>1000,21316=>1000,\r\n\t21317=>1000,21318=>1000,21319=>1000,21320=>1000,21321=>1000,21322=>1000,21323=>1000,21324=>1000,21325=>1000,21326=>1000,21327=>1000,21328=>1000,21329=>1000,21330=>1000,21331=>1000,21332=>1000,\r\n\t21333=>1000,21334=>1000,21335=>1000,21336=>1000,21337=>1000,21338=>1000,21339=>1000,21340=>1000,21341=>1000,21342=>1000,21343=>1000,21344=>1000,21345=>1000,21346=>1000,21347=>1000,21348=>1000,\r\n\t21349=>1000,21350=>1000,21351=>1000,21352=>1000,21353=>1000,21354=>1000,21355=>1000,21356=>1000,21357=>1000,21358=>1000,21359=>1000,21360=>1000,21361=>1000,21362=>1000,21363=>1000,21364=>1000,\r\n\t21365=>1000,21366=>1000,21367=>1000,21368=>1000,21369=>1000,21370=>1000,21371=>1000,21372=>1000,21373=>1000,21374=>1000,21375=>1000,21376=>1000,21377=>1000,21378=>1000,21379=>1000,21380=>1000,\r\n\t21381=>1000,21382=>1000,21383=>1000,21384=>1000,21385=>1000,21386=>1000,21387=>1000,21388=>1000,21389=>1000,21390=>1000,21391=>1000,21392=>1000,21393=>1000,21394=>1000,21395=>1000,21396=>1000,\r\n\t21397=>1000,21398=>1000,21399=>1000,21400=>1000,21401=>1000,21402=>1000,21403=>1000,21404=>1000,21405=>1000,21406=>1000,21407=>1000,21408=>1000,21409=>1000,21410=>1000,21411=>1000,21412=>1000,\r\n\t21413=>1000,21414=>1000,21415=>1000,21416=>1000,21417=>1000,21418=>1000,21419=>1000,21420=>1000,21421=>1000,21422=>1000,21423=>1000,21424=>1000,21425=>1000,21426=>1000,21427=>1000,21428=>1000,\r\n\t21429=>1000,21430=>1000,21431=>1000,21432=>1000,21433=>1000,21434=>1000,21435=>1000,21436=>1000,21437=>1000,21438=>1000,21439=>1000,21440=>1000,21441=>1000,21442=>1000,21443=>1000,21444=>1000,\r\n\t21445=>1000,21446=>1000,21447=>1000,21448=>1000,21449=>1000,21450=>1000,21451=>1000,21452=>1000,21453=>1000,21454=>1000,21455=>1000,21456=>1000,21457=>1000,21458=>1000,21459=>1000,21460=>1000,\r\n\t21461=>1000,21462=>1000,21463=>1000,21464=>1000,21465=>1000,21466=>1000,21467=>1000,21468=>1000,21469=>1000,21470=>1000,21471=>1000,21472=>1000,21473=>1000,21474=>1000,21475=>1000,21476=>1000,\r\n\t21477=>1000,21478=>1000,21479=>1000,21480=>1000,21481=>1000,21482=>1000,21483=>1000,21484=>1000,21485=>1000,21486=>1000,21487=>1000,21488=>1000,21489=>1000,21490=>1000,21491=>1000,21492=>1000,\r\n\t21493=>1000,21494=>1000,21495=>1000,21496=>1000,21497=>1000,21498=>1000,21499=>1000,21500=>1000,21501=>1000,21502=>1000,21503=>1000,21504=>1000,21505=>1000,21506=>1000,21507=>1000,21508=>1000,\r\n\t21509=>1000,21510=>1000,21511=>1000,21512=>1000,21513=>1000,21514=>1000,21515=>1000,21516=>1000,21517=>1000,21518=>1000,21519=>1000,21520=>1000,21521=>1000,21522=>1000,21523=>1000,21524=>1000,\r\n\t21525=>1000,21526=>1000,21527=>1000,21528=>1000,21529=>1000,21530=>1000,21531=>1000,21532=>1000,21533=>1000,21534=>1000,21535=>1000,21536=>1000,21537=>1000,21538=>1000,21539=>1000,21540=>1000,\r\n\t21541=>1000,21542=>1000,21543=>1000,21544=>1000,21545=>1000,21546=>1000,21547=>1000,21548=>1000,21549=>1000,21550=>1000,21551=>1000,21552=>1000,21553=>1000,21554=>1000,21555=>1000,21556=>1000,\r\n\t21557=>1000,21558=>1000,21559=>1000,21560=>1000,21561=>1000,21562=>1000,21563=>1000,21564=>1000,21565=>1000,21566=>1000,21567=>1000,21568=>1000,21569=>1000,21570=>1000,21571=>1000,21572=>1000,\r\n\t21573=>1000,21574=>1000,21575=>1000,21576=>1000,21577=>1000,21578=>1000,21579=>1000,21580=>1000,21581=>1000,21582=>1000,21583=>1000,21584=>1000,21585=>1000,21586=>1000,21587=>1000,21588=>1000,\r\n\t21589=>1000,21590=>1000,21591=>1000,21592=>1000,21593=>1000,21594=>1000,21595=>1000,21596=>1000,21597=>1000,21598=>1000,21599=>1000,21600=>1000,21601=>1000,21602=>1000,21603=>1000,21604=>1000,\r\n\t21605=>1000,21606=>1000,21607=>1000,21608=>1000,21609=>1000,21610=>1000,21611=>1000,21612=>1000,21613=>1000,21614=>1000,21615=>1000,21616=>1000,21617=>1000,21618=>1000,21619=>1000,21620=>1000,\r\n\t21621=>1000,21622=>1000,21623=>1000,21624=>1000,21625=>1000,21626=>1000,21627=>1000,21628=>1000,21629=>1000,21630=>1000,21631=>1000,21632=>1000,21633=>1000,21634=>1000,21635=>1000,21636=>1000,\r\n\t21637=>1000,21638=>1000,21639=>1000,21640=>1000,21641=>1000,21642=>1000,21643=>1000,21644=>1000,21645=>1000,21646=>1000,21647=>1000,21648=>1000,21649=>1000,21650=>1000,21651=>1000,21652=>1000,\r\n\t21653=>1000,21654=>1000,21655=>1000,21656=>1000,21657=>1000,21658=>1000,21659=>1000,21660=>1000,21661=>1000,21662=>1000,21663=>1000,21664=>1000,21665=>1000,21666=>1000,21667=>1000,21668=>1000,\r\n\t21669=>1000,21670=>1000,21671=>1000,21672=>1000,21673=>1000,21674=>1000,21675=>1000,21676=>1000,21677=>1000,21678=>1000,21679=>1000,21680=>1000,21681=>1000,21682=>1000,21683=>1000,21684=>1000,\r\n\t21685=>1000,21686=>1000,21687=>1000,21688=>1000,21689=>1000,21690=>1000,21691=>1000,21692=>1000,21693=>1000,21694=>1000,21695=>1000,21696=>1000,21697=>1000,21698=>1000,21699=>1000,21700=>1000,\r\n\t21701=>1000,21702=>1000,21703=>1000,21704=>1000,21705=>1000,21706=>1000,21707=>1000,21708=>1000,21709=>1000,21710=>1000,21711=>1000,21712=>1000,21713=>1000,21714=>1000,21715=>1000,21716=>1000,\r\n\t21717=>1000,21718=>1000,21719=>1000,21720=>1000,21721=>1000,21722=>1000,21723=>1000,21724=>1000,21725=>1000,21726=>1000,21727=>1000,21728=>1000,21729=>1000,21730=>1000,21731=>1000,21732=>1000,\r\n\t21733=>1000,21734=>1000,21735=>1000,21736=>1000,21737=>1000,21738=>1000,21739=>1000,21740=>1000,21741=>1000,21742=>1000,21743=>1000,21744=>1000,21745=>1000,21746=>1000,21747=>1000,21748=>1000,\r\n\t21749=>1000,21750=>1000,21751=>1000,21752=>1000,21753=>1000,21754=>1000,21755=>1000,21756=>1000,21757=>1000,21758=>1000,21759=>1000,21760=>1000,21761=>1000,21762=>1000,21763=>1000,21764=>1000,\r\n\t21765=>1000,21766=>1000,21767=>1000,21768=>1000,21769=>1000,21770=>1000,21771=>1000,21772=>1000,21773=>1000,21774=>1000,21775=>1000,21776=>1000,21777=>1000,21778=>1000,21779=>1000,21780=>1000,\r\n\t21781=>1000,21782=>1000,21783=>1000,21784=>1000,21785=>1000,21786=>1000,21787=>1000,21788=>1000,21789=>1000,21790=>1000,21791=>1000,21792=>1000,21793=>1000,21794=>1000,21795=>1000,21796=>1000,\r\n\t21797=>1000,21798=>1000,21799=>1000,21800=>1000,21801=>1000,21802=>1000,21803=>1000,21804=>1000,21805=>1000,21806=>1000,21807=>1000,21808=>1000,21809=>1000,21810=>1000,21811=>1000,21812=>1000,\r\n\t21813=>1000,21814=>1000,21815=>1000,21816=>1000,21817=>1000,21818=>1000,21819=>1000,21820=>1000,21821=>1000,21822=>1000,21823=>1000,21824=>1000,21825=>1000,21826=>1000,21827=>1000,21828=>1000,\r\n\t21829=>1000,21830=>1000,21831=>1000,21832=>1000,21833=>1000,21834=>1000,21835=>1000,21836=>1000,21837=>1000,21838=>1000,21839=>1000,21840=>1000,21841=>1000,21842=>1000,21843=>1000,21844=>1000,\r\n\t21845=>1000,21846=>1000,21847=>1000,21848=>1000,21849=>1000,21850=>1000,21851=>1000,21852=>1000,21853=>1000,21854=>1000,21855=>1000,21856=>1000,21857=>1000,21858=>1000,21859=>1000,21860=>1000,\r\n\t21861=>1000,21862=>1000,21863=>1000,21864=>1000,21865=>1000,21866=>1000,21867=>1000,21868=>1000,21869=>1000,21870=>1000,21871=>1000,21872=>1000,21873=>1000,21874=>1000,21875=>1000,21876=>1000,\r\n\t21877=>1000,21878=>1000,21879=>1000,21880=>1000,21881=>1000,21882=>1000,21883=>1000,21884=>1000,21885=>1000,21886=>1000,21887=>1000,21888=>1000,21889=>1000,21890=>1000,21891=>1000,21892=>1000,\r\n\t21893=>1000,21894=>1000,21895=>1000,21896=>1000,21897=>1000,21898=>1000,21899=>1000,21900=>1000,21901=>1000,21902=>1000,21903=>1000,21904=>1000,21905=>1000,21906=>1000,21907=>1000,21908=>1000,\r\n\t21909=>1000,21910=>1000,21911=>1000,21912=>1000,21913=>1000,21914=>1000,21915=>1000,21916=>1000,21917=>1000,21918=>1000,21919=>1000,21920=>1000,21921=>1000,21922=>1000,21923=>1000,21924=>1000,\r\n\t21925=>1000,21926=>1000,21927=>1000,21928=>1000,21929=>1000,21930=>1000,21931=>1000,21932=>1000,21933=>1000,21934=>1000,21935=>1000,21936=>1000,21937=>1000,21938=>1000,21939=>1000,21940=>1000,\r\n\t21941=>1000,21942=>1000,21943=>1000,21944=>1000,21945=>1000,21946=>1000,21947=>1000,21948=>1000,21949=>1000,21950=>1000,21951=>1000,21952=>1000,21953=>1000,21954=>1000,21955=>1000,21956=>1000,\r\n\t21957=>1000,21958=>1000,21959=>1000,21960=>1000,21961=>1000,21962=>1000,21963=>1000,21964=>1000,21965=>1000,21966=>1000,21967=>1000,21968=>1000,21969=>1000,21970=>1000,21971=>1000,21972=>1000,\r\n\t21973=>1000,21974=>1000,21975=>1000,21976=>1000,21977=>1000,21978=>1000,21979=>1000,21980=>1000,21981=>1000,21982=>1000,21983=>1000,21984=>1000,21985=>1000,21986=>1000,21987=>1000,21988=>1000,\r\n\t21989=>1000,21990=>1000,21991=>1000,21992=>1000,21993=>1000,21994=>1000,21995=>1000,21996=>1000,21997=>1000,21998=>1000,21999=>1000,22000=>1000,22001=>1000,22002=>1000,22003=>1000,22004=>1000,\r\n\t22005=>1000,22006=>1000,22007=>1000,22008=>1000,22009=>1000,22010=>1000,22011=>1000,22012=>1000,22013=>1000,22014=>1000,22015=>1000,22016=>1000,22017=>1000,22018=>1000,22019=>1000,22020=>1000,\r\n\t22021=>1000,22022=>1000,22023=>1000,22024=>1000,22025=>1000,22026=>1000,22027=>1000,22028=>1000,22029=>1000,22030=>1000,22031=>1000,22032=>1000,22033=>1000,22034=>1000,22035=>1000,22036=>1000,\r\n\t22037=>1000,22038=>1000,22039=>1000,22040=>1000,22041=>1000,22042=>1000,22043=>1000,22044=>1000,22045=>1000,22046=>1000,22047=>1000,22048=>1000,22049=>1000,22050=>1000,22051=>1000,22052=>1000,\r\n\t22053=>1000,22054=>1000,22055=>1000,22056=>1000,22057=>1000,22058=>1000,22059=>1000,22060=>1000,22061=>1000,22062=>1000,22063=>1000,22064=>1000,22065=>1000,22066=>1000,22067=>1000,22068=>1000,\r\n\t22069=>1000,22070=>1000,22071=>1000,22072=>1000,22073=>1000,22074=>1000,22075=>1000,22076=>1000,22077=>1000,22078=>1000,22079=>1000,22080=>1000,22081=>1000,22082=>1000,22083=>1000,22084=>1000,\r\n\t22085=>1000,22086=>1000,22087=>1000,22088=>1000,22089=>1000,22090=>1000,22091=>1000,22092=>1000,22093=>1000,22094=>1000,22095=>1000,22096=>1000,22097=>1000,22098=>1000,22099=>1000,22100=>1000,\r\n\t22101=>1000,22102=>1000,22103=>1000,22104=>1000,22105=>1000,22106=>1000,22107=>1000,22108=>1000,22109=>1000,22110=>1000,22111=>1000,22112=>1000,22113=>1000,22114=>1000,22115=>1000,22116=>1000,\r\n\t22117=>1000,22118=>1000,22119=>1000,22120=>1000,22121=>1000,22122=>1000,22123=>1000,22124=>1000,22125=>1000,22126=>1000,22127=>1000,22128=>1000,22129=>1000,22130=>1000,22131=>1000,22132=>1000,\r\n\t22133=>1000,22134=>1000,22135=>1000,22136=>1000,22137=>1000,22138=>1000,22139=>1000,22140=>1000,22141=>1000,22142=>1000,22143=>1000,22144=>1000,22145=>1000,22146=>1000,22147=>1000,22148=>1000,\r\n\t22149=>1000,22150=>1000,22151=>1000,22152=>1000,22153=>1000,22154=>1000,22155=>1000,22156=>1000,22157=>1000,22158=>1000,22159=>1000,22160=>1000,22161=>1000,22162=>1000,22163=>1000,22164=>1000,\r\n\t22165=>1000,22166=>1000,22167=>1000,22168=>1000,22169=>1000,22170=>1000,22171=>1000,22172=>1000,22173=>1000,22174=>1000,22175=>1000,22176=>1000,22177=>1000,22178=>1000,22179=>1000,22180=>1000,\r\n\t22181=>1000,22182=>1000,22183=>1000,22184=>1000,22185=>1000,22186=>1000,22187=>1000,22188=>1000,22189=>1000,22190=>1000,22191=>1000,22192=>1000,22193=>1000,22194=>1000,22195=>1000,22196=>1000,\r\n\t22197=>1000,22198=>1000,22199=>1000,22200=>1000,22201=>1000,22202=>1000,22203=>1000,22204=>1000,22205=>1000,22206=>1000,22207=>1000,22208=>1000,22209=>1000,22210=>1000,22211=>1000,22212=>1000,\r\n\t22213=>1000,22214=>1000,22215=>1000,22216=>1000,22217=>1000,22218=>1000,22219=>1000,22220=>1000,22221=>1000,22222=>1000,22223=>1000,22224=>1000,22225=>1000,22226=>1000,22227=>1000,22228=>1000,\r\n\t22229=>1000,22230=>1000,22231=>1000,22232=>1000,22233=>1000,22234=>1000,22235=>1000,22236=>1000,22237=>1000,22238=>1000,22239=>1000,22240=>1000,22241=>1000,22242=>1000,22243=>1000,22244=>1000,\r\n\t22245=>1000,22246=>1000,22247=>1000,22248=>1000,22249=>1000,22250=>1000,22251=>1000,22252=>1000,22253=>1000,22254=>1000,22255=>1000,22256=>1000,22257=>1000,22258=>1000,22259=>1000,22260=>1000,\r\n\t22261=>1000,22262=>1000,22263=>1000,22264=>1000,22265=>1000,22266=>1000,22267=>1000,22268=>1000,22269=>1000,22270=>1000,22271=>1000,22272=>1000,22273=>1000,22274=>1000,22275=>1000,22276=>1000,\r\n\t22277=>1000,22278=>1000,22279=>1000,22280=>1000,22281=>1000,22282=>1000,22283=>1000,22284=>1000,22285=>1000,22286=>1000,22287=>1000,22288=>1000,22289=>1000,22290=>1000,22291=>1000,22292=>1000,\r\n\t22293=>1000,22294=>1000,22295=>1000,22296=>1000,22297=>1000,22298=>1000,22299=>1000,22300=>1000,22301=>1000,22302=>1000,22303=>1000,22304=>1000,22305=>1000,22306=>1000,22307=>1000,22308=>1000,\r\n\t22309=>1000,22310=>1000,22311=>1000,22312=>1000,22313=>1000,22314=>1000,22315=>1000,22316=>1000,22317=>1000,22318=>1000,22319=>1000,22320=>1000,22321=>1000,22322=>1000,22323=>1000,22324=>1000,\r\n\t22325=>1000,22326=>1000,22327=>1000,22328=>1000,22329=>1000,22330=>1000,22331=>1000,22332=>1000,22333=>1000,22334=>1000,22335=>1000,22336=>1000,22337=>1000,22338=>1000,22339=>1000,22340=>1000,\r\n\t22341=>1000,22342=>1000,22343=>1000,22344=>1000,22345=>1000,22346=>1000,22347=>1000,22348=>1000,22349=>1000,22350=>1000,22351=>1000,22352=>1000,22353=>1000,22354=>1000,22355=>1000,22356=>1000,\r\n\t22357=>1000,22358=>1000,22359=>1000,22360=>1000,22361=>1000,22362=>1000,22363=>1000,22364=>1000,22365=>1000,22366=>1000,22367=>1000,22368=>1000,22369=>1000,22370=>1000,22371=>1000,22372=>1000,\r\n\t22373=>1000,22374=>1000,22375=>1000,22376=>1000,22377=>1000,22378=>1000,22379=>1000,22380=>1000,22381=>1000,22382=>1000,22383=>1000,22384=>1000,22385=>1000,22386=>1000,22387=>1000,22388=>1000,\r\n\t22389=>1000,22390=>1000,22391=>1000,22392=>1000,22393=>1000,22394=>1000,22395=>1000,22396=>1000,22397=>1000,22398=>1000,22399=>1000,22400=>1000,22401=>1000,22402=>1000,22403=>1000,22404=>1000,\r\n\t22405=>1000,22406=>1000,22407=>1000,22408=>1000,22409=>1000,22410=>1000,22411=>1000,22412=>1000,22413=>1000,22414=>1000,22415=>1000,22416=>1000,22417=>1000,22418=>1000,22419=>1000,22420=>1000,\r\n\t22421=>1000,22422=>1000,22423=>1000,22424=>1000,22425=>1000,22426=>1000,22427=>1000,22428=>1000,22429=>1000,22430=>1000,22431=>1000,22432=>1000,22433=>1000,22434=>1000,22435=>1000,22436=>1000,\r\n\t22437=>1000,22438=>1000,22439=>1000,22440=>1000,22441=>1000,22442=>1000,22443=>1000,22444=>1000,22445=>1000,22446=>1000,22447=>1000,22448=>1000,22449=>1000,22450=>1000,22451=>1000,22452=>1000,\r\n\t22453=>1000,22454=>1000,22455=>1000,22456=>1000,22457=>1000,22458=>1000,22459=>1000,22460=>1000,22461=>1000,22462=>1000,22463=>1000,22464=>1000,22465=>1000,22466=>1000,22467=>1000,22468=>1000,\r\n\t22469=>1000,22470=>1000,22471=>1000,22472=>1000,22473=>1000,22474=>1000,22475=>1000,22476=>1000,22477=>1000,22478=>1000,22479=>1000,22480=>1000,22481=>1000,22482=>1000,22483=>1000,22484=>1000,\r\n\t22485=>1000,22486=>1000,22487=>1000,22488=>1000,22489=>1000,22490=>1000,22491=>1000,22492=>1000,22493=>1000,22494=>1000,22495=>1000,22496=>1000,22497=>1000,22498=>1000,22499=>1000,22500=>1000,\r\n\t22501=>1000,22502=>1000,22503=>1000,22504=>1000,22505=>1000,22506=>1000,22507=>1000,22508=>1000,22509=>1000,22510=>1000,22511=>1000,22512=>1000,22513=>1000,22514=>1000,22515=>1000,22516=>1000,\r\n\t22517=>1000,22518=>1000,22519=>1000,22520=>1000,22521=>1000,22522=>1000,22523=>1000,22524=>1000,22525=>1000,22526=>1000,22527=>1000,22528=>1000,22529=>1000,22530=>1000,22531=>1000,22532=>1000,\r\n\t22533=>1000,22534=>1000,22535=>1000,22536=>1000,22537=>1000,22538=>1000,22539=>1000,22540=>1000,22541=>1000,22542=>1000,22543=>1000,22544=>1000,22545=>1000,22546=>1000,22547=>1000,22548=>1000,\r\n\t22549=>1000,22550=>1000,22551=>1000,22552=>1000,22553=>1000,22554=>1000,22555=>1000,22556=>1000,22557=>1000,22558=>1000,22559=>1000,22560=>1000,22561=>1000,22562=>1000,22563=>1000,22564=>1000,\r\n\t22565=>1000,22566=>1000,22567=>1000,22568=>1000,22569=>1000,22570=>1000,22571=>1000,22572=>1000,22573=>1000,22574=>1000,22575=>1000,22576=>1000,22577=>1000,22578=>1000,22579=>1000,22580=>1000,\r\n\t22581=>1000,22582=>1000,22583=>1000,22584=>1000,22585=>1000,22586=>1000,22587=>1000,22588=>1000,22589=>1000,22590=>1000,22591=>1000,22592=>1000,22593=>1000,22594=>1000,22595=>1000,22596=>1000,\r\n\t22597=>1000,22598=>1000,22599=>1000,22600=>1000,22601=>1000,22602=>1000,22603=>1000,22604=>1000,22605=>1000,22606=>1000,22607=>1000,22608=>1000,22609=>1000,22610=>1000,22611=>1000,22612=>1000,\r\n\t22613=>1000,22614=>1000,22615=>1000,22616=>1000,22617=>1000,22618=>1000,22619=>1000,22620=>1000,22621=>1000,22622=>1000,22623=>1000,22624=>1000,22625=>1000,22626=>1000,22627=>1000,22628=>1000,\r\n\t22629=>1000,22630=>1000,22631=>1000,22632=>1000,22633=>1000,22634=>1000,22635=>1000,22636=>1000,22637=>1000,22638=>1000,22639=>1000,22640=>1000,22641=>1000,22642=>1000,22643=>1000,22644=>1000,\r\n\t22645=>1000,22646=>1000,22647=>1000,22648=>1000,22649=>1000,22650=>1000,22651=>1000,22652=>1000,22653=>1000,22654=>1000,22655=>1000,22656=>1000,22657=>1000,22658=>1000,22659=>1000,22660=>1000,\r\n\t22661=>1000,22662=>1000,22663=>1000,22664=>1000,22665=>1000,22666=>1000,22667=>1000,22668=>1000,22669=>1000,22670=>1000,22671=>1000,22672=>1000,22673=>1000,22674=>1000,22675=>1000,22676=>1000,\r\n\t22677=>1000,22678=>1000,22679=>1000,22680=>1000,22681=>1000,22682=>1000,22683=>1000,22684=>1000,22685=>1000,22686=>1000,22687=>1000,22688=>1000,22689=>1000,22690=>1000,22691=>1000,22692=>1000,\r\n\t22693=>1000,22694=>1000,22695=>1000,22696=>1000,22697=>1000,22698=>1000,22699=>1000,22700=>1000,22701=>1000,22702=>1000,22703=>1000,22704=>1000,22705=>1000,22706=>1000,22707=>1000,22708=>1000,\r\n\t22709=>1000,22710=>1000,22711=>1000,22712=>1000,22713=>1000,22714=>1000,22715=>1000,22716=>1000,22717=>1000,22718=>1000,22719=>1000,22720=>1000,22721=>1000,22722=>1000,22723=>1000,22724=>1000,\r\n\t22725=>1000,22726=>1000,22727=>1000,22728=>1000,22729=>1000,22730=>1000,22731=>1000,22732=>1000,22733=>1000,22734=>1000,22735=>1000,22736=>1000,22737=>1000,22738=>1000,22739=>1000,22740=>1000,\r\n\t22741=>1000,22742=>1000,22743=>1000,22744=>1000,22745=>1000,22746=>1000,22747=>1000,22748=>1000,22749=>1000,22750=>1000,22751=>1000,22752=>1000,22753=>1000,22754=>1000,22755=>1000,22756=>1000,\r\n\t22757=>1000,22758=>1000,22759=>1000,22760=>1000,22761=>1000,22762=>1000,22763=>1000,22764=>1000,22765=>1000,22766=>1000,22767=>1000,22768=>1000,22769=>1000,22770=>1000,22771=>1000,22772=>1000,\r\n\t22773=>1000,22774=>1000,22775=>1000,22776=>1000,22777=>1000,22778=>1000,22779=>1000,22780=>1000,22781=>1000,22782=>1000,22783=>1000,22784=>1000,22785=>1000,22786=>1000,22787=>1000,22788=>1000,\r\n\t22789=>1000,22790=>1000,22791=>1000,22792=>1000,22793=>1000,22794=>1000,22795=>1000,22796=>1000,22797=>1000,22798=>1000,22799=>1000,22800=>1000,22801=>1000,22802=>1000,22803=>1000,22804=>1000,\r\n\t22805=>1000,22806=>1000,22807=>1000,22808=>1000,22809=>1000,22810=>1000,22811=>1000,22812=>1000,22813=>1000,22814=>1000,22815=>1000,22816=>1000,22817=>1000,22818=>1000,22819=>1000,22820=>1000,\r\n\t22821=>1000,22822=>1000,22823=>1000,22824=>1000,22825=>1000,22826=>1000,22827=>1000,22828=>1000,22829=>1000,22830=>1000,22831=>1000,22832=>1000,22833=>1000,22834=>1000,22835=>1000,22836=>1000,\r\n\t22837=>1000,22838=>1000,22839=>1000,22840=>1000,22841=>1000,22842=>1000,22843=>1000,22844=>1000,22845=>1000,22846=>1000,22847=>1000,22848=>1000,22849=>1000,22850=>1000,22851=>1000,22852=>1000,\r\n\t22853=>1000,22854=>1000,22855=>1000,22856=>1000,22857=>1000,22858=>1000,22859=>1000,22860=>1000,22861=>1000,22862=>1000,22863=>1000,22864=>1000,22865=>1000,22866=>1000,22867=>1000,22868=>1000,\r\n\t22869=>1000,22870=>1000,22871=>1000,22872=>1000,22873=>1000,22874=>1000,22875=>1000,22876=>1000,22877=>1000,22878=>1000,22879=>1000,22880=>1000,22881=>1000,22882=>1000,22883=>1000,22884=>1000,\r\n\t22885=>1000,22886=>1000,22887=>1000,22888=>1000,22889=>1000,22890=>1000,22891=>1000,22892=>1000,22893=>1000,22894=>1000,22895=>1000,22896=>1000,22897=>1000,22898=>1000,22899=>1000,22900=>1000,\r\n\t22901=>1000,22902=>1000,22903=>1000,22904=>1000,22905=>1000,22906=>1000,22907=>1000,22908=>1000,22909=>1000,22910=>1000,22911=>1000,22912=>1000,22913=>1000,22914=>1000,22915=>1000,22916=>1000,\r\n\t22917=>1000,22918=>1000,22919=>1000,22920=>1000,22921=>1000,22922=>1000,22923=>1000,22924=>1000,22925=>1000,22926=>1000,22927=>1000,22928=>1000,22929=>1000,22930=>1000,22931=>1000,22932=>1000,\r\n\t22933=>1000,22934=>1000,22935=>1000,22936=>1000,22937=>1000,22938=>1000,22939=>1000,22940=>1000,22941=>1000,22942=>1000,22943=>1000,22944=>1000,22945=>1000,22946=>1000,22947=>1000,22948=>1000,\r\n\t22949=>1000,22950=>1000,22951=>1000,22952=>1000,22953=>1000,22954=>1000,22955=>1000,22956=>1000,22957=>1000,22958=>1000,22959=>1000,22960=>1000,22961=>1000,22962=>1000,22963=>1000,22964=>1000,\r\n\t22965=>1000,22966=>1000,22967=>1000,22968=>1000,22969=>1000,22970=>1000,22971=>1000,22972=>1000,22973=>1000,22974=>1000,22975=>1000,22976=>1000,22977=>1000,22978=>1000,22979=>1000,22980=>1000,\r\n\t22981=>1000,22982=>1000,22983=>1000,22984=>1000,22985=>1000,22986=>1000,22987=>1000,22988=>1000,22989=>1000,22990=>1000,22991=>1000,22992=>1000,22993=>1000,22994=>1000,22995=>1000,22996=>1000,\r\n\t22997=>1000,22998=>1000,22999=>1000,23000=>1000,23001=>1000,23002=>1000,23003=>1000,23004=>1000,23005=>1000,23006=>1000,23007=>1000,23008=>1000,23009=>1000,23010=>1000,23011=>1000,23012=>1000,\r\n\t23013=>1000,23014=>1000,23015=>1000,23016=>1000,23017=>1000,23018=>1000,23019=>1000,23020=>1000,23021=>1000,23022=>1000,23023=>1000,23024=>1000,23025=>1000,23026=>1000,23027=>1000,23028=>1000,\r\n\t23029=>1000,23030=>1000,23031=>1000,23032=>1000,23033=>1000,23034=>1000,23035=>1000,23036=>1000,23037=>1000,23038=>1000,23039=>1000,23040=>1000,23041=>1000,23042=>1000,23043=>1000,23044=>1000,\r\n\t23045=>1000,23046=>1000,23047=>1000,23048=>1000,23049=>1000,23050=>1000,23051=>1000,23052=>1000,23053=>1000,23054=>1000,23055=>1000,23056=>1000,23057=>1000,23058=>1000,23059=>1000,23060=>1000,\r\n\t23061=>1000,23062=>1000,23063=>1000,23064=>1000,23065=>1000,23066=>1000,23067=>1000,23068=>1000,23069=>1000,23070=>1000,23071=>1000,23072=>1000,23073=>1000,23074=>1000,23075=>1000,23076=>1000,\r\n\t23077=>1000,23078=>1000,23079=>1000,23080=>1000,23081=>1000,23082=>1000,23083=>1000,23084=>1000,23085=>1000,23086=>1000,23087=>1000,23088=>1000,23089=>1000,23090=>1000,23091=>1000,23092=>1000,\r\n\t23093=>1000,23094=>1000,23095=>1000,23096=>1000,23097=>1000,23098=>1000,23099=>1000,23100=>1000,23101=>1000,23102=>1000,23103=>1000,23104=>1000,23105=>1000,23106=>1000,23107=>1000,23108=>1000,\r\n\t23109=>1000,23110=>1000,23111=>1000,23112=>1000,23113=>1000,23114=>1000,23115=>1000,23116=>1000,23117=>1000,23118=>1000,23119=>1000,23120=>1000,23121=>1000,23122=>1000,23123=>1000,23124=>1000,\r\n\t23125=>1000,23126=>1000,23127=>1000,23128=>1000,23129=>1000,23130=>1000,23131=>1000,23132=>1000,23133=>1000,23134=>1000,23135=>1000,23136=>1000,23137=>1000,23138=>1000,23139=>1000,23140=>1000,\r\n\t23141=>1000,23142=>1000,23143=>1000,23144=>1000,23145=>1000,23146=>1000,23147=>1000,23148=>1000,23149=>1000,23150=>1000,23151=>1000,23152=>1000,23153=>1000,23154=>1000,23155=>1000,23156=>1000,\r\n\t23157=>1000,23158=>1000,23159=>1000,23160=>1000,23161=>1000,23162=>1000,23163=>1000,23164=>1000,23165=>1000,23166=>1000,23167=>1000,23168=>1000,23169=>1000,23170=>1000,23171=>1000,23172=>1000,\r\n\t23173=>1000,23174=>1000,23175=>1000,23176=>1000,23177=>1000,23178=>1000,23179=>1000,23180=>1000,23181=>1000,23182=>1000,23183=>1000,23184=>1000,23185=>1000,23186=>1000,23187=>1000,23188=>1000,\r\n\t23189=>1000,23190=>1000,23191=>1000,23192=>1000,23193=>1000,23194=>1000,23195=>1000,23196=>1000,23197=>1000,23198=>1000,23199=>1000,23200=>1000,23201=>1000,23202=>1000,23203=>1000,23204=>1000,\r\n\t23205=>1000,23206=>1000,23207=>1000,23208=>1000,23209=>1000,23210=>1000,23211=>1000,23212=>1000,23213=>1000,23214=>1000,23215=>1000,23216=>1000,23217=>1000,23218=>1000,23219=>1000,23220=>1000,\r\n\t23221=>1000,23222=>1000,23223=>1000,23224=>1000,23225=>1000,23226=>1000,23227=>1000,23228=>1000,23229=>1000,23230=>1000,23231=>1000,23232=>1000,23233=>1000,23234=>1000,23235=>1000,23236=>1000,\r\n\t23237=>1000,23238=>1000,23239=>1000,23240=>1000,23241=>1000,23242=>1000,23243=>1000,23244=>1000,23245=>1000,23246=>1000,23247=>1000,23248=>1000,23249=>1000,23250=>1000,23251=>1000,23252=>1000,\r\n\t23253=>1000,23254=>1000,23255=>1000,23256=>1000,23257=>1000,23258=>1000,23259=>1000,23260=>1000,23261=>1000,23262=>1000,23263=>1000,23264=>1000,23265=>1000,23266=>1000,23267=>1000,23268=>1000,\r\n\t23269=>1000,23270=>1000,23271=>1000,23272=>1000,23273=>1000,23274=>1000,23275=>1000,23276=>1000,23277=>1000,23278=>1000,23279=>1000,23280=>1000,23281=>1000,23282=>1000,23283=>1000,23284=>1000,\r\n\t23285=>1000,23286=>1000,23287=>1000,23288=>1000,23289=>1000,23290=>1000,23291=>1000,23292=>1000,23293=>1000,23294=>1000,23295=>1000,23296=>1000,23297=>1000,23298=>1000,23299=>1000,23300=>1000,\r\n\t23301=>1000,23302=>1000,23303=>1000,23304=>1000,23305=>1000,23306=>1000,23307=>1000,23308=>1000,23309=>1000,23310=>1000,23311=>1000,23312=>1000,23313=>1000,23314=>1000,23315=>1000,23316=>1000,\r\n\t23317=>1000,23318=>1000,23319=>1000,23320=>1000,23321=>1000,23322=>1000,23323=>1000,23324=>1000,23325=>1000,23326=>1000,23327=>1000,23328=>1000,23329=>1000,23330=>1000,23331=>1000,23332=>1000,\r\n\t23333=>1000,23334=>1000,23335=>1000,23336=>1000,23337=>1000,23338=>1000,23339=>1000,23340=>1000,23341=>1000,23342=>1000,23343=>1000,23344=>1000,23345=>1000,23346=>1000,23347=>1000,23348=>1000,\r\n\t23349=>1000,23350=>1000,23351=>1000,23352=>1000,23353=>1000,23354=>1000,23355=>1000,23356=>1000,23357=>1000,23358=>1000,23359=>1000,23360=>1000,23361=>1000,23362=>1000,23363=>1000,23364=>1000,\r\n\t23365=>1000,23366=>1000,23367=>1000,23368=>1000,23369=>1000,23370=>1000,23371=>1000,23372=>1000,23373=>1000,23374=>1000,23375=>1000,23376=>1000,23377=>1000,23378=>1000,23379=>1000,23380=>1000,\r\n\t23381=>1000,23382=>1000,23383=>1000,23384=>1000,23385=>1000,23386=>1000,23387=>1000,23388=>1000,23389=>1000,23390=>1000,23391=>1000,23392=>1000,23393=>1000,23394=>1000,23395=>1000,23396=>1000,\r\n\t23397=>1000,23398=>1000,23399=>1000,23400=>1000,23401=>1000,23402=>1000,23403=>1000,23404=>1000,23405=>1000,23406=>1000,23407=>1000,23408=>1000,23409=>1000,23410=>1000,23411=>1000,23412=>1000,\r\n\t23413=>1000,23414=>1000,23415=>1000,23416=>1000,23417=>1000,23418=>1000,23419=>1000,23420=>1000,23421=>1000,23422=>1000,23423=>1000,23424=>1000,23425=>1000,23426=>1000,23427=>1000,23428=>1000,\r\n\t23429=>1000,23430=>1000,23431=>1000,23432=>1000,23433=>1000,23434=>1000,23435=>1000,23436=>1000,23437=>1000,23438=>1000,23439=>1000,23440=>1000,23441=>1000,23442=>1000,23443=>1000,23444=>1000,\r\n\t23445=>1000,23446=>1000,23447=>1000,23448=>1000,23449=>1000,23450=>1000,23451=>1000,23452=>1000,23453=>1000,23454=>1000,23455=>1000,23456=>1000,23457=>1000,23458=>1000,23459=>1000,23460=>1000,\r\n\t23461=>1000,23462=>1000,23463=>1000,23464=>1000,23465=>1000,23466=>1000,23467=>1000,23468=>1000,23469=>1000,23470=>1000,23471=>1000,23472=>1000,23473=>1000,23474=>1000,23475=>1000,23476=>1000,\r\n\t23477=>1000,23478=>1000,23479=>1000,23480=>1000,23481=>1000,23482=>1000,23483=>1000,23484=>1000,23485=>1000,23486=>1000,23487=>1000,23488=>1000,23489=>1000,23490=>1000,23491=>1000,23492=>1000,\r\n\t23493=>1000,23494=>1000,23495=>1000,23496=>1000,23497=>1000,23498=>1000,23499=>1000,23500=>1000,23501=>1000,23502=>1000,23503=>1000,23504=>1000,23505=>1000,23506=>1000,23507=>1000,23508=>1000,\r\n\t23509=>1000,23510=>1000,23511=>1000,23512=>1000,23513=>1000,23514=>1000,23515=>1000,23516=>1000,23517=>1000,23518=>1000,23519=>1000,23520=>1000,23521=>1000,23522=>1000,23523=>1000,23524=>1000,\r\n\t23525=>1000,23526=>1000,23527=>1000,23528=>1000,23529=>1000,23530=>1000,23531=>1000,23532=>1000,23533=>1000,23534=>1000,23535=>1000,23536=>1000,23537=>1000,23538=>1000,23539=>1000,23540=>1000,\r\n\t23541=>1000,23542=>1000,23543=>1000,23544=>1000,23545=>1000,23546=>1000,23547=>1000,23548=>1000,23549=>1000,23550=>1000,23551=>1000,23552=>1000,23553=>1000,23554=>1000,23555=>1000,23556=>1000,\r\n\t23557=>1000,23558=>1000,23559=>1000,23560=>1000,23561=>1000,23562=>1000,23563=>1000,23564=>1000,23565=>1000,23566=>1000,23567=>1000,23568=>1000,23569=>1000,23570=>1000,23571=>1000,23572=>1000,\r\n\t23573=>1000,23574=>1000,23575=>1000,23576=>1000,23577=>1000,23578=>1000,23579=>1000,23580=>1000,23581=>1000,23582=>1000,23583=>1000,23584=>1000,23585=>1000,23586=>1000,23587=>1000,23588=>1000,\r\n\t23589=>1000,23590=>1000,23591=>1000,23592=>1000,23593=>1000,23594=>1000,23595=>1000,23596=>1000,23597=>1000,23598=>1000,23599=>1000,23600=>1000,23601=>1000,23602=>1000,23603=>1000,23604=>1000,\r\n\t23605=>1000,23606=>1000,23607=>1000,23608=>1000,23609=>1000,23610=>1000,23611=>1000,23612=>1000,23613=>1000,23614=>1000,23615=>1000,23616=>1000,23617=>1000,23618=>1000,23619=>1000,23620=>1000,\r\n\t23621=>1000,23622=>1000,23623=>1000,23624=>1000,23625=>1000,23626=>1000,23627=>1000,23628=>1000,23629=>1000,23630=>1000,23631=>1000,23632=>1000,23633=>1000,23634=>1000,23635=>1000,23636=>1000,\r\n\t23637=>1000,23638=>1000,23639=>1000,23640=>1000,23641=>1000,23642=>1000,23643=>1000,23644=>1000,23645=>1000,23646=>1000,23647=>1000,23648=>1000,23649=>1000,23650=>1000,23651=>1000,23652=>1000,\r\n\t23653=>1000,23654=>1000,23655=>1000,23656=>1000,23657=>1000,23658=>1000,23659=>1000,23660=>1000,23661=>1000,23662=>1000,23663=>1000,23664=>1000,23665=>1000,23666=>1000,23667=>1000,23668=>1000,\r\n\t23669=>1000,23670=>1000,23671=>1000,23672=>1000,23673=>1000,23674=>1000,23675=>1000,23676=>1000,23677=>1000,23678=>1000,23679=>1000,23680=>1000,23681=>1000,23682=>1000,23683=>1000,23684=>1000,\r\n\t23685=>1000,23686=>1000,23687=>1000,23688=>1000,23689=>1000,23690=>1000,23691=>1000,23692=>1000,23693=>1000,23694=>1000,23695=>1000,23696=>1000,23697=>1000,23698=>1000,23699=>1000,23700=>1000,\r\n\t23701=>1000,23702=>1000,23703=>1000,23704=>1000,23705=>1000,23706=>1000,23707=>1000,23708=>1000,23709=>1000,23710=>1000,23711=>1000,23712=>1000,23713=>1000,23714=>1000,23715=>1000,23716=>1000,\r\n\t23717=>1000,23718=>1000,23719=>1000,23720=>1000,23721=>1000,23722=>1000,23723=>1000,23724=>1000,23725=>1000,23726=>1000,23727=>1000,23728=>1000,23729=>1000,23730=>1000,23731=>1000,23732=>1000,\r\n\t23733=>1000,23734=>1000,23735=>1000,23736=>1000,23737=>1000,23738=>1000,23739=>1000,23740=>1000,23741=>1000,23742=>1000,23743=>1000,23744=>1000,23745=>1000,23746=>1000,23747=>1000,23748=>1000,\r\n\t23749=>1000,23750=>1000,23751=>1000,23752=>1000,23753=>1000,23754=>1000,23755=>1000,23756=>1000,23757=>1000,23758=>1000,23759=>1000,23760=>1000,23761=>1000,23762=>1000,23763=>1000,23764=>1000,\r\n\t23765=>1000,23766=>1000,23767=>1000,23768=>1000,23769=>1000,23770=>1000,23771=>1000,23772=>1000,23773=>1000,23774=>1000,23775=>1000,23776=>1000,23777=>1000,23778=>1000,23779=>1000,23780=>1000,\r\n\t23781=>1000,23782=>1000,23783=>1000,23784=>1000,23785=>1000,23786=>1000,23787=>1000,23788=>1000,23789=>1000,23790=>1000,23791=>1000,23792=>1000,23793=>1000,23794=>1000,23795=>1000,23796=>1000,\r\n\t23797=>1000,23798=>1000,23799=>1000,23800=>1000,23801=>1000,23802=>1000,23803=>1000,23804=>1000,23805=>1000,23806=>1000,23807=>1000,23808=>1000,23809=>1000,23810=>1000,23811=>1000,23812=>1000,\r\n\t23813=>1000,23814=>1000,23815=>1000,23816=>1000,23817=>1000,23818=>1000,23819=>1000,23820=>1000,23821=>1000,23822=>1000,23823=>1000,23824=>1000,23825=>1000,23826=>1000,23827=>1000,23828=>1000,\r\n\t23829=>1000,23830=>1000,23831=>1000,23832=>1000,23833=>1000,23834=>1000,23835=>1000,23836=>1000,23837=>1000,23838=>1000,23839=>1000,23840=>1000,23841=>1000,23842=>1000,23843=>1000,23844=>1000,\r\n\t23845=>1000,23846=>1000,23847=>1000,23848=>1000,23849=>1000,23850=>1000,23851=>1000,23852=>1000,23853=>1000,23854=>1000,23855=>1000,23856=>1000,23857=>1000,23858=>1000,23859=>1000,23860=>1000,\r\n\t23861=>1000,23862=>1000,23863=>1000,23864=>1000,23865=>1000,23866=>1000,23867=>1000,23868=>1000,23869=>1000,23870=>1000,23871=>1000,23872=>1000,23873=>1000,23874=>1000,23875=>1000,23876=>1000,\r\n\t23877=>1000,23878=>1000,23879=>1000,23880=>1000,23881=>1000,23882=>1000,23883=>1000,23884=>1000,23885=>1000,23886=>1000,23887=>1000,23888=>1000,23889=>1000,23890=>1000,23891=>1000,23892=>1000,\r\n\t23893=>1000,23894=>1000,23895=>1000,23896=>1000,23897=>1000,23898=>1000,23899=>1000,23900=>1000,23901=>1000,23902=>1000,23903=>1000,23904=>1000,23905=>1000,23906=>1000,23907=>1000,23908=>1000,\r\n\t23909=>1000,23910=>1000,23911=>1000,23912=>1000,23913=>1000,23914=>1000,23915=>1000,23916=>1000,23917=>1000,23918=>1000,23919=>1000,23920=>1000,23921=>1000,23922=>1000,23923=>1000,23924=>1000,\r\n\t23925=>1000,23926=>1000,23927=>1000,23928=>1000,23929=>1000,23930=>1000,23931=>1000,23932=>1000,23933=>1000,23934=>1000,23935=>1000,23936=>1000,23937=>1000,23938=>1000,23939=>1000,23940=>1000,\r\n\t23941=>1000,23942=>1000,23943=>1000,23944=>1000,23945=>1000,23946=>1000,23947=>1000,23948=>1000,23949=>1000,23950=>1000,23951=>1000,23952=>1000,23953=>1000,23954=>1000,23955=>1000,23956=>1000,\r\n\t23957=>1000,23958=>1000,23959=>1000,23960=>1000,23961=>1000,23962=>1000,23963=>1000,23964=>1000,23965=>1000,23966=>1000,23967=>1000,23968=>1000,23969=>1000,23970=>1000,23971=>1000,23972=>1000,\r\n\t23973=>1000,23974=>1000,23975=>1000,23976=>1000,23977=>1000,23978=>1000,23979=>1000,23980=>1000,23981=>1000,23982=>1000,23983=>1000,23984=>1000,23985=>1000,23986=>1000,23987=>1000,23988=>1000,\r\n\t23989=>1000,23990=>1000,23991=>1000,23992=>1000,23993=>1000,23994=>1000,23995=>1000,23996=>1000,23997=>1000,23998=>1000,23999=>1000,24000=>1000,24001=>1000,24002=>1000,24003=>1000,24004=>1000,\r\n\t24005=>1000,24006=>1000,24007=>1000,24008=>1000,24009=>1000,24010=>1000,24011=>1000,24012=>1000,24013=>1000,24014=>1000,24015=>1000,24016=>1000,24017=>1000,24018=>1000,24019=>1000,24020=>1000,\r\n\t24021=>1000,24022=>1000,24023=>1000,24024=>1000,24025=>1000,24026=>1000,24027=>1000,24028=>1000,24029=>1000,24030=>1000,24031=>1000,24032=>1000,24033=>1000,24034=>1000,24035=>1000,24036=>1000,\r\n\t24037=>1000,24038=>1000,24039=>1000,24040=>1000,24041=>1000,24042=>1000,24043=>1000,24044=>1000,24045=>1000,24046=>1000,24047=>1000,24048=>1000,24049=>1000,24050=>1000,24051=>1000,24052=>1000,\r\n\t24053=>1000,24054=>1000,24055=>1000,24056=>1000,24057=>1000,24058=>1000,24059=>1000,24060=>1000,24061=>1000,24062=>1000,24063=>1000,24064=>1000,24065=>1000,24066=>1000,24067=>1000,24068=>1000,\r\n\t24069=>1000,24070=>1000,24071=>1000,24072=>1000,24073=>1000,24074=>1000,24075=>1000,24076=>1000,24077=>1000,24078=>1000,24079=>1000,24080=>1000,24081=>1000,24082=>1000,24083=>1000,24084=>1000,\r\n\t24085=>1000,24086=>1000,24087=>1000,24088=>1000,24089=>1000,24090=>1000,24091=>1000,24092=>1000,24093=>1000,24094=>1000,24095=>1000,24096=>1000,24097=>1000,24098=>1000,24099=>1000,24100=>1000,\r\n\t24101=>1000,24102=>1000,24103=>1000,24104=>1000,24105=>1000,24106=>1000,24107=>1000,24108=>1000,24109=>1000,24110=>1000,24111=>1000,24112=>1000,24113=>1000,24114=>1000,24115=>1000,24116=>1000,\r\n\t24117=>1000,24118=>1000,24119=>1000,24120=>1000,24121=>1000,24122=>1000,24123=>1000,24124=>1000,24125=>1000,24126=>1000,24127=>1000,24128=>1000,24129=>1000,24130=>1000,24131=>1000,24132=>1000,\r\n\t24133=>1000,24134=>1000,24135=>1000,24136=>1000,24137=>1000,24138=>1000,24139=>1000,24140=>1000,24141=>1000,24142=>1000,24143=>1000,24144=>1000,24145=>1000,24146=>1000,24147=>1000,24148=>1000,\r\n\t24149=>1000,24150=>1000,24151=>1000,24152=>1000,24153=>1000,24154=>1000,24155=>1000,24156=>1000,24157=>1000,24158=>1000,24159=>1000,24160=>1000,24161=>1000,24162=>1000,24163=>1000,24164=>1000,\r\n\t24165=>1000,24166=>1000,24167=>1000,24168=>1000,24169=>1000,24170=>1000,24171=>1000,24172=>1000,24173=>1000,24174=>1000,24175=>1000,24176=>1000,24177=>1000,24178=>1000,24179=>1000,24180=>1000,\r\n\t24181=>1000,24182=>1000,24183=>1000,24184=>1000,24185=>1000,24186=>1000,24187=>1000,24188=>1000,24189=>1000,24190=>1000,24191=>1000,24192=>1000,24193=>1000,24194=>1000,24195=>1000,24196=>1000,\r\n\t24197=>1000,24198=>1000,24199=>1000,24200=>1000,24201=>1000,24202=>1000,24203=>1000,24204=>1000,24205=>1000,24206=>1000,24207=>1000,24208=>1000,24209=>1000,24210=>1000,24211=>1000,24212=>1000,\r\n\t24213=>1000,24214=>1000,24215=>1000,24216=>1000,24217=>1000,24218=>1000,24219=>1000,24220=>1000,24221=>1000,24222=>1000,24223=>1000,24224=>1000,24225=>1000,24226=>1000,24227=>1000,24228=>1000,\r\n\t24229=>1000,24230=>1000,24231=>1000,24232=>1000,24233=>1000,24234=>1000,24235=>1000,24236=>1000,24237=>1000,24238=>1000,24239=>1000,24240=>1000,24241=>1000,24242=>1000,24243=>1000,24244=>1000,\r\n\t24245=>1000,24246=>1000,24247=>1000,24248=>1000,24249=>1000,24250=>1000,24251=>1000,24252=>1000,24253=>1000,24254=>1000,24255=>1000,24256=>1000,24257=>1000,24258=>1000,24259=>1000,24260=>1000,\r\n\t24261=>1000,24262=>1000,24263=>1000,24264=>1000,24265=>1000,24266=>1000,24267=>1000,24268=>1000,24269=>1000,24270=>1000,24271=>1000,24272=>1000,24273=>1000,24274=>1000,24275=>1000,24276=>1000,\r\n\t24277=>1000,24278=>1000,24279=>1000,24280=>1000,24281=>1000,24282=>1000,24283=>1000,24284=>1000,24285=>1000,24286=>1000,24287=>1000,24288=>1000,24289=>1000,24290=>1000,24291=>1000,24292=>1000,\r\n\t24293=>1000,24294=>1000,24295=>1000,24296=>1000,24297=>1000,24298=>1000,24299=>1000,24300=>1000,24301=>1000,24302=>1000,24303=>1000,24304=>1000,24305=>1000,24306=>1000,24307=>1000,24308=>1000,\r\n\t24309=>1000,24310=>1000,24311=>1000,24312=>1000,24313=>1000,24314=>1000,24315=>1000,24316=>1000,24317=>1000,24318=>1000,24319=>1000,24320=>1000,24321=>1000,24322=>1000,24323=>1000,24324=>1000,\r\n\t24325=>1000,24326=>1000,24327=>1000,24328=>1000,24329=>1000,24330=>1000,24331=>1000,24332=>1000,24333=>1000,24334=>1000,24335=>1000,24336=>1000,24337=>1000,24338=>1000,24339=>1000,24340=>1000,\r\n\t24341=>1000,24342=>1000,24343=>1000,24344=>1000,24345=>1000,24346=>1000,24347=>1000,24348=>1000,24349=>1000,24350=>1000,24351=>1000,24352=>1000,24353=>1000,24354=>1000,24355=>1000,24356=>1000,\r\n\t24357=>1000,24358=>1000,24359=>1000,24360=>1000,24361=>1000,24362=>1000,24363=>1000,24364=>1000,24365=>1000,24366=>1000,24367=>1000,24368=>1000,24369=>1000,24370=>1000,24371=>1000,24372=>1000,\r\n\t24373=>1000,24374=>1000,24375=>1000,24376=>1000,24377=>1000,24378=>1000,24379=>1000,24380=>1000,24381=>1000,24382=>1000,24383=>1000,24384=>1000,24385=>1000,24386=>1000,24387=>1000,24388=>1000,\r\n\t24389=>1000,24390=>1000,24391=>1000,24392=>1000,24393=>1000,24394=>1000,24395=>1000,24396=>1000,24397=>1000,24398=>1000,24399=>1000,24400=>1000,24401=>1000,24402=>1000,24403=>1000,24404=>1000,\r\n\t24405=>1000,24406=>1000,24407=>1000,24408=>1000,24409=>1000,24410=>1000,24411=>1000,24412=>1000,24413=>1000,24414=>1000,24415=>1000,24416=>1000,24417=>1000,24418=>1000,24419=>1000,24420=>1000,\r\n\t24421=>1000,24422=>1000,24423=>1000,24424=>1000,24425=>1000,24426=>1000,24427=>1000,24428=>1000,24429=>1000,24430=>1000,24431=>1000,24432=>1000,24433=>1000,24434=>1000,24435=>1000,24436=>1000,\r\n\t24437=>1000,24438=>1000,24439=>1000,24440=>1000,24441=>1000,24442=>1000,24443=>1000,24444=>1000,24445=>1000,24446=>1000,24447=>1000,24448=>1000,24449=>1000,24450=>1000,24451=>1000,24452=>1000,\r\n\t24453=>1000,24454=>1000,24455=>1000,24456=>1000,24457=>1000,24458=>1000,24459=>1000,24460=>1000,24461=>1000,24462=>1000,24463=>1000,24464=>1000,24465=>1000,24466=>1000,24467=>1000,24468=>1000,\r\n\t24469=>1000,24470=>1000,24471=>1000,24472=>1000,24473=>1000,24474=>1000,24475=>1000,24476=>1000,24477=>1000,24478=>1000,24479=>1000,24480=>1000,24481=>1000,24482=>1000,24483=>1000,24484=>1000,\r\n\t24485=>1000,24486=>1000,24487=>1000,24488=>1000,24489=>1000,24490=>1000,24491=>1000,24492=>1000,24493=>1000,24494=>1000,24495=>1000,24496=>1000,24497=>1000,24498=>1000,24499=>1000,24500=>1000,\r\n\t24501=>1000,24502=>1000,24503=>1000,24504=>1000,24505=>1000,24506=>1000,24507=>1000,24508=>1000,24509=>1000,24510=>1000,24511=>1000,24512=>1000,24513=>1000,24514=>1000,24515=>1000,24516=>1000,\r\n\t24517=>1000,24518=>1000,24519=>1000,24520=>1000,24521=>1000,24522=>1000,24523=>1000,24524=>1000,24525=>1000,24526=>1000,24527=>1000,24528=>1000,24529=>1000,24530=>1000,24531=>1000,24532=>1000,\r\n\t24533=>1000,24534=>1000,24535=>1000,24536=>1000,24537=>1000,24538=>1000,24539=>1000,24540=>1000,24541=>1000,24542=>1000,24543=>1000,24544=>1000,24545=>1000,24546=>1000,24547=>1000,24548=>1000,\r\n\t24549=>1000,24550=>1000,24551=>1000,24552=>1000,24553=>1000,24554=>1000,24555=>1000,24556=>1000,24557=>1000,24558=>1000,24559=>1000,24560=>1000,24561=>1000,24562=>1000,24563=>1000,24564=>1000,\r\n\t24565=>1000,24566=>1000,24567=>1000,24568=>1000,24569=>1000,24570=>1000,24571=>1000,24572=>1000,24573=>1000,24574=>1000,24575=>1000,24576=>1000,24577=>1000,24578=>1000,24579=>1000,24580=>1000,\r\n\t24581=>1000,24582=>1000,24583=>1000,24584=>1000,24585=>1000,24586=>1000,24587=>1000,24588=>1000,24589=>1000,24590=>1000,24591=>1000,24592=>1000,24593=>1000,24594=>1000,24595=>1000,24596=>1000,\r\n\t24597=>1000,24598=>1000,24599=>1000,24600=>1000,24601=>1000,24602=>1000,24603=>1000,24604=>1000,24605=>1000,24606=>1000,24607=>1000,24608=>1000,24609=>1000,24610=>1000,24611=>1000,24612=>1000,\r\n\t24613=>1000,24614=>1000,24615=>1000,24616=>1000,24617=>1000,24618=>1000,24619=>1000,24620=>1000,24621=>1000,24622=>1000,24623=>1000,24624=>1000,24625=>1000,24626=>1000,24627=>1000,24628=>1000,\r\n\t24629=>1000,24630=>1000,24631=>1000,24632=>1000,24633=>1000,24634=>1000,24635=>1000,24636=>1000,24637=>1000,24638=>1000,24639=>1000,24640=>1000,24641=>1000,24642=>1000,24643=>1000,24644=>1000,\r\n\t24645=>1000,24646=>1000,24647=>1000,24648=>1000,24649=>1000,24650=>1000,24651=>1000,24652=>1000,24653=>1000,24654=>1000,24655=>1000,24656=>1000,24657=>1000,24658=>1000,24659=>1000,24660=>1000,\r\n\t24661=>1000,24662=>1000,24663=>1000,24664=>1000,24665=>1000,24666=>1000,24667=>1000,24668=>1000,24669=>1000,24670=>1000,24671=>1000,24672=>1000,24673=>1000,24674=>1000,24675=>1000,24676=>1000,\r\n\t24677=>1000,24678=>1000,24679=>1000,24680=>1000,24681=>1000,24682=>1000,24683=>1000,24684=>1000,24685=>1000,24686=>1000,24687=>1000,24688=>1000,24689=>1000,24690=>1000,24691=>1000,24692=>1000,\r\n\t24693=>1000,24694=>1000,24695=>1000,24696=>1000,24697=>1000,24698=>1000,24699=>1000,24700=>1000,24701=>1000,24702=>1000,24703=>1000,24704=>1000,24705=>1000,24706=>1000,24707=>1000,24708=>1000,\r\n\t24709=>1000,24710=>1000,24711=>1000,24712=>1000,24713=>1000,24714=>1000,24715=>1000,24716=>1000,24717=>1000,24718=>1000,24719=>1000,24720=>1000,24721=>1000,24722=>1000,24723=>1000,24724=>1000,\r\n\t24725=>1000,24726=>1000,24727=>1000,24728=>1000,24729=>1000,24730=>1000,24731=>1000,24732=>1000,24733=>1000,24734=>1000,24735=>1000,24736=>1000,24737=>1000,24738=>1000,24739=>1000,24740=>1000,\r\n\t24741=>1000,24742=>1000,24743=>1000,24744=>1000,24745=>1000,24746=>1000,24747=>1000,24748=>1000,24749=>1000,24750=>1000,24751=>1000,24752=>1000,24753=>1000,24754=>1000,24755=>1000,24756=>1000,\r\n\t24757=>1000,24758=>1000,24759=>1000,24760=>1000,24761=>1000,24762=>1000,24763=>1000,24764=>1000,24765=>1000,24766=>1000,24767=>1000,24768=>1000,24769=>1000,24770=>1000,24771=>1000,24772=>1000,\r\n\t24773=>1000,24774=>1000,24775=>1000,24776=>1000,24777=>1000,24778=>1000,24779=>1000,24780=>1000,24781=>1000,24782=>1000,24783=>1000,24784=>1000,24785=>1000,24786=>1000,24787=>1000,24788=>1000,\r\n\t24789=>1000,24790=>1000,24791=>1000,24792=>1000,24793=>1000,24794=>1000,24795=>1000,24796=>1000,24797=>1000,24798=>1000,24799=>1000,24800=>1000,24801=>1000,24802=>1000,24803=>1000,24804=>1000,\r\n\t24805=>1000,24806=>1000,24807=>1000,24808=>1000,24809=>1000,24810=>1000,24811=>1000,24812=>1000,24813=>1000,24814=>1000,24815=>1000,24816=>1000,24817=>1000,24818=>1000,24819=>1000,24820=>1000,\r\n\t24821=>1000,24822=>1000,24823=>1000,24824=>1000,24825=>1000,24826=>1000,24827=>1000,24828=>1000,24829=>1000,24830=>1000,24831=>1000,24832=>1000,24833=>1000,24834=>1000,24835=>1000,24836=>1000,\r\n\t24837=>1000,24838=>1000,24839=>1000,24840=>1000,24841=>1000,24842=>1000,24843=>1000,24844=>1000,24845=>1000,24846=>1000,24847=>1000,24848=>1000,24849=>1000,24850=>1000,24851=>1000,24852=>1000,\r\n\t24853=>1000,24854=>1000,24855=>1000,24856=>1000,24857=>1000,24858=>1000,24859=>1000,24860=>1000,24861=>1000,24862=>1000,24863=>1000,24864=>1000,24865=>1000,24866=>1000,24867=>1000,24868=>1000,\r\n\t24869=>1000,24870=>1000,24871=>1000,24872=>1000,24873=>1000,24874=>1000,24875=>1000,24876=>1000,24877=>1000,24878=>1000,24879=>1000,24880=>1000,24881=>1000,24882=>1000,24883=>1000,24884=>1000,\r\n\t24885=>1000,24886=>1000,24887=>1000,24888=>1000,24889=>1000,24890=>1000,24891=>1000,24892=>1000,24893=>1000,24894=>1000,24895=>1000,24896=>1000,24897=>1000,24898=>1000,24899=>1000,24900=>1000,\r\n\t24901=>1000,24902=>1000,24903=>1000,24904=>1000,24905=>1000,24906=>1000,24907=>1000,24908=>1000,24909=>1000,24910=>1000,24911=>1000,24912=>1000,24913=>1000,24914=>1000,24915=>1000,24916=>1000,\r\n\t24917=>1000,24918=>1000,24919=>1000,24920=>1000,24921=>1000,24922=>1000,24923=>1000,24924=>1000,24925=>1000,24926=>1000,24927=>1000,24928=>1000,24929=>1000,24930=>1000,24931=>1000,24932=>1000,\r\n\t24933=>1000,24934=>1000,24935=>1000,24936=>1000,24937=>1000,24938=>1000,24939=>1000,24940=>1000,24941=>1000,24942=>1000,24943=>1000,24944=>1000,24945=>1000,24946=>1000,24947=>1000,24948=>1000,\r\n\t24949=>1000,24950=>1000,24951=>1000,24952=>1000,24953=>1000,24954=>1000,24955=>1000,24956=>1000,24957=>1000,24958=>1000,24959=>1000,24960=>1000,24961=>1001,24962=>1000,24963=>1000,24964=>1000,\r\n\t24965=>1000,24966=>1000,24967=>1000,24968=>1000,24969=>1000,24970=>1000,24971=>1000,24972=>1000,24973=>1000,24974=>1000,24975=>1000,24976=>1000,24977=>1000,24978=>1000,24979=>1000,24980=>1000,\r\n\t24981=>1000,24982=>1000,24983=>1000,24984=>1000,24985=>1000,24986=>1000,24987=>1000,24988=>1000,24989=>1000,24990=>1000,24991=>1000,24992=>1000,24993=>1000,24994=>1000,24995=>1000,24996=>1000,\r\n\t24997=>1000,24998=>1000,24999=>1000,25000=>1000,25001=>1000,25002=>1000,25003=>1000,25004=>1000,25005=>1000,25006=>1000,25007=>1000,25008=>1000,25009=>1000,25010=>1000,25011=>1000,25012=>1000,\r\n\t25013=>1000,25014=>1000,25015=>1000,25016=>1000,25017=>1000,25018=>1000,25019=>1000,25020=>1000,25021=>1000,25022=>1000,25023=>1000,25024=>1000,25025=>1000,25026=>1000,25027=>1000,25028=>1000,\r\n\t25029=>1000,25030=>1000,25031=>1000,25032=>1000,25033=>1000,25034=>1000,25035=>1000,25036=>1000,25037=>1000,25038=>1000,25039=>1000,25040=>1000,25041=>1000,25042=>1000,25043=>1000,25044=>1000,\r\n\t25045=>1000,25046=>1000,25047=>1000,25048=>1000,25049=>1000,25050=>1000,25051=>1000,25052=>1000,25053=>1000,25054=>1000,25055=>1000,25056=>1000,25057=>1000,25058=>1000,25059=>1000,25060=>1000,\r\n\t25061=>1000,25062=>1000,25063=>1000,25064=>1000,25065=>1000,25066=>1000,25067=>1000,25068=>1000,25069=>1000,25070=>1000,25071=>1000,25072=>1000,25073=>1000,25074=>1000,25075=>1000,25076=>1000,\r\n\t25077=>1000,25078=>1000,25079=>1000,25080=>1000,25081=>1000,25082=>1000,25083=>1000,25084=>1000,25085=>1000,25086=>1000,25087=>1000,25088=>1000,25089=>1000,25090=>1000,25091=>1000,25092=>1000,\r\n\t25093=>1000,25094=>1000,25095=>1000,25096=>1000,25097=>1000,25098=>1000,25099=>1000,25100=>1000,25101=>1000,25102=>1000,25103=>1000,25104=>1000,25105=>1000,25106=>1000,25107=>1000,25108=>1000,\r\n\t25109=>1000,25110=>1000,25111=>1000,25112=>1000,25113=>1000,25114=>1000,25115=>1000,25116=>1000,25117=>1000,25118=>1000,25119=>1000,25120=>1000,25121=>1000,25122=>1000,25123=>1000,25124=>1000,\r\n\t25125=>1000,25126=>1000,25127=>1000,25128=>1000,25129=>1000,25130=>1000,25131=>1000,25132=>1000,25133=>1000,25134=>1000,25135=>1000,25136=>1000,25137=>1000,25138=>1000,25139=>1000,25140=>1000,\r\n\t25141=>1000,25142=>1000,25143=>1000,25144=>1000,25145=>1000,25146=>1000,25147=>1000,25148=>1000,25149=>1000,25150=>1000,25151=>1000,25152=>1000,25153=>1000,25154=>1000,25155=>1000,25156=>1000,\r\n\t25157=>1000,25158=>1000,25159=>1000,25160=>1000,25161=>1000,25162=>1000,25163=>1000,25164=>1000,25165=>1000,25166=>1000,25167=>1000,25168=>1000,25169=>1000,25170=>1000,25171=>1000,25172=>1000,\r\n\t25173=>1000,25174=>1000,25175=>1000,25176=>1000,25177=>1000,25178=>1000,25179=>1000,25180=>1000,25181=>1000,25182=>1000,25183=>1000,25184=>1000,25185=>1000,25186=>1000,25187=>1000,25188=>1000,\r\n\t25189=>1000,25190=>1000,25191=>1000,25192=>1000,25193=>1000,25194=>1000,25195=>1000,25196=>1000,25197=>1000,25198=>1000,25199=>1000,25200=>1000,25201=>1000,25202=>1000,25203=>1000,25204=>1000,\r\n\t25205=>1000,25206=>1000,25207=>1000,25208=>1000,25209=>1000,25210=>1000,25211=>1000,25212=>1000,25213=>1000,25214=>1000,25215=>1000,25216=>1000,25217=>1000,25218=>1000,25219=>1000,25220=>1000,\r\n\t25221=>1000,25222=>1000,25223=>1000,25224=>1000,25225=>1000,25226=>1000,25227=>1000,25228=>1000,25229=>1000,25230=>1000,25231=>1000,25232=>1000,25233=>1000,25234=>1000,25235=>1000,25236=>1000,\r\n\t25237=>1000,25238=>1000,25239=>1000,25240=>1000,25241=>1000,25242=>1000,25243=>1000,25244=>1000,25245=>1000,25246=>1000,25247=>1000,25248=>1000,25249=>1000,25250=>1000,25251=>1000,25252=>1000,\r\n\t25253=>1000,25254=>1000,25255=>1000,25256=>1000,25257=>1000,25258=>1000,25259=>1000,25260=>1000,25261=>1000,25262=>1000,25263=>1000,25264=>1000,25265=>1000,25266=>1000,25267=>1000,25268=>1000,\r\n\t25269=>1000,25270=>1000,25271=>1000,25272=>1000,25273=>1000,25274=>1000,25275=>1000,25276=>1000,25277=>1000,25278=>1000,25279=>1000,25280=>1000,25281=>1000,25282=>1000,25283=>1000,25284=>1000,\r\n\t25285=>1000,25286=>1000,25287=>1000,25288=>1000,25289=>1000,25290=>1000,25291=>1000,25292=>1000,25293=>1000,25294=>1000,25295=>1000,25296=>1000,25297=>1000,25298=>1000,25299=>1000,25300=>1000,\r\n\t25301=>1000,25302=>1000,25303=>1000,25304=>1000,25305=>1000,25306=>1000,25307=>1000,25308=>1000,25309=>1000,25310=>1000,25311=>1000,25312=>1000,25313=>1000,25314=>1000,25315=>1000,25316=>1000,\r\n\t25317=>1000,25318=>1000,25319=>1000,25320=>1000,25321=>1000,25322=>1000,25323=>1000,25324=>1000,25325=>1000,25326=>1000,25327=>1000,25328=>1000,25329=>1000,25330=>1000,25331=>1000,25332=>1000,\r\n\t25333=>1000,25334=>1000,25335=>1000,25336=>1000,25337=>1000,25338=>1000,25339=>1000,25340=>1000,25341=>1000,25342=>1000,25343=>1000,25344=>1000,25345=>1000,25346=>1000,25347=>1000,25348=>1000,\r\n\t25349=>1000,25350=>1000,25351=>1000,25352=>1000,25353=>1000,25354=>1000,25355=>1000,25356=>1000,25357=>1000,25358=>1000,25359=>1000,25360=>1000,25361=>1000,25362=>1000,25363=>1000,25364=>1000,\r\n\t25365=>1000,25366=>1000,25367=>1000,25368=>1000,25369=>1000,25370=>1000,25371=>1000,25372=>1000,25373=>1000,25374=>1000,25375=>1000,25376=>1000,25377=>1000,25378=>1000,25379=>1000,25380=>1000,\r\n\t25381=>1000,25382=>1000,25383=>1000,25384=>1000,25385=>1000,25386=>1000,25387=>1000,25388=>1000,25389=>1000,25390=>1000,25391=>1000,25392=>1000,25393=>1000,25394=>1000,25395=>1000,25396=>1000,\r\n\t25397=>1000,25398=>1000,25399=>1000,25400=>1000,25401=>1000,25402=>1000,25403=>1000,25404=>1000,25405=>1000,25406=>1000,25407=>1000,25408=>1000,25409=>1000,25410=>1000,25411=>1000,25412=>1000,\r\n\t25413=>1000,25414=>1000,25415=>1000,25416=>1000,25417=>1000,25418=>1000,25419=>1000,25420=>1000,25421=>1000,25422=>1000,25423=>1000,25424=>1000,25425=>1000,25426=>1000,25427=>1000,25428=>1000,\r\n\t25429=>1000,25430=>1000,25431=>1000,25432=>1000,25433=>1000,25434=>1000,25435=>1000,25436=>1000,25437=>1000,25438=>1000,25439=>1000,25440=>1000,25441=>1000,25442=>1000,25443=>1000,25444=>1000,\r\n\t25445=>1000,25446=>1000,25447=>1000,25448=>1000,25449=>1000,25450=>1000,25451=>1000,25452=>1000,25453=>1000,25454=>1000,25455=>1000,25456=>1000,25457=>1000,25458=>1000,25459=>1000,25460=>1000,\r\n\t25461=>1000,25462=>1000,25463=>1000,25464=>1000,25465=>1000,25466=>1000,25467=>1000,25468=>1000,25469=>1000,25470=>1000,25471=>1000,25472=>1000,25473=>1000,25474=>1000,25475=>1000,25476=>1000,\r\n\t25477=>1000,25478=>1000,25479=>1000,25480=>1000,25481=>1000,25482=>1000,25483=>1000,25484=>1000,25485=>1000,25486=>1000,25487=>1000,25488=>1000,25489=>1000,25490=>1000,25491=>1000,25492=>1000,\r\n\t25493=>1000,25494=>1000,25495=>1000,25496=>1000,25497=>1000,25498=>1000,25499=>1000,25500=>1000,25501=>1000,25502=>1000,25503=>1000,25504=>1000,25505=>1000,25506=>1000,25507=>1000,25508=>1000,\r\n\t25509=>1000,25510=>1000,25511=>1000,25512=>1000,25513=>1000,25514=>1000,25515=>1000,25516=>1000,25517=>1000,25518=>1000,25519=>1000,25520=>1000,25521=>1000,25522=>1000,25523=>1000,25524=>1000,\r\n\t25525=>1000,25526=>1000,25527=>1000,25528=>1000,25529=>1000,25530=>1000,25531=>1000,25532=>1000,25533=>1000,25534=>1000,25535=>1000,25536=>1000,25537=>1000,25538=>1000,25539=>1000,25540=>1000,\r\n\t25541=>1000,25542=>1000,25543=>1000,25544=>1000,25545=>1000,25546=>1000,25547=>1000,25548=>1000,25549=>1000,25550=>1000,25551=>1000,25552=>1000,25553=>1000,25554=>1000,25555=>1000,25556=>1000,\r\n\t25557=>1000,25558=>1000,25559=>1000,25560=>1000,25561=>1000,25562=>1000,25563=>1000,25564=>1000,25565=>1000,25566=>1000,25567=>1000,25568=>1000,25569=>1000,25570=>1000,25571=>1000,25572=>1000,\r\n\t25573=>1000,25574=>1000,25575=>1000,25576=>1000,25577=>1000,25578=>1000,25579=>1000,25580=>1000,25581=>1000,25582=>1000,25583=>1000,25584=>1000,25585=>1000,25586=>1000,25587=>1000,25588=>1000,\r\n\t25589=>1000,25590=>1000,25591=>1000,25592=>1000,25593=>1000,25594=>1000,25595=>1000,25596=>1000,25597=>1000,25598=>1000,25599=>1000,25600=>1000,25601=>1000,25602=>1000,25603=>1000,25604=>1000,\r\n\t25605=>1000,25606=>1000,25607=>1000,25608=>1000,25609=>1000,25610=>1000,25611=>1000,25612=>1000,25613=>1000,25614=>1000,25615=>1000,25616=>1000,25617=>1000,25618=>1000,25619=>1000,25620=>1000,\r\n\t25621=>1000,25622=>1000,25623=>1000,25624=>1000,25625=>1000,25626=>1000,25627=>1000,25628=>1000,25629=>1000,25630=>1000,25631=>1000,25632=>1000,25633=>1000,25634=>1000,25635=>1000,25636=>1000,\r\n\t25637=>1000,25638=>1000,25639=>1000,25640=>1000,25641=>1000,25642=>1000,25643=>1000,25644=>1000,25645=>1000,25646=>1000,25647=>1000,25648=>1000,25649=>1000,25650=>1000,25651=>1000,25652=>1000,\r\n\t25653=>1000,25654=>1000,25655=>1000,25656=>1000,25657=>1000,25658=>1000,25659=>1000,25660=>1000,25661=>1000,25662=>1000,25663=>1000,25664=>1000,25665=>1000,25666=>1000,25667=>1000,25668=>1000,\r\n\t25669=>1000,25670=>1000,25671=>1000,25672=>1000,25673=>1000,25674=>1000,25675=>1000,25676=>1000,25677=>1000,25678=>1000,25679=>1000,25680=>1000,25681=>1000,25682=>1000,25683=>1000,25684=>1000,\r\n\t25685=>1000,25686=>1000,25687=>1000,25688=>1000,25689=>1000,25690=>1000,25691=>1000,25692=>1000,25693=>1000,25694=>1000,25695=>1000,25696=>1000,25697=>1000,25698=>1000,25699=>1000,25700=>1000,\r\n\t25701=>1000,25702=>1000,25703=>1000,25704=>1000,25705=>1000,25706=>1000,25707=>1000,25708=>1000,25709=>1000,25710=>1000,25711=>1000,25712=>1000,25713=>1000,25714=>1000,25715=>1000,25716=>1000,\r\n\t25717=>1000,25718=>1000,25719=>1000,25720=>1000,25721=>1000,25722=>1000,25723=>1000,25724=>1000,25725=>1000,25726=>1000,25727=>1000,25728=>1000,25729=>1000,25730=>1000,25731=>1000,25732=>1000,\r\n\t25733=>1000,25734=>1000,25735=>1000,25736=>1000,25737=>1000,25738=>1000,25739=>1000,25740=>1000,25741=>1000,25742=>1000,25743=>1000,25744=>1000,25745=>1000,25746=>1000,25747=>1000,25748=>1000,\r\n\t25749=>1000,25750=>1000,25751=>1000,25752=>1000,25753=>1000,25754=>1000,25755=>1000,25756=>1000,25757=>1000,25758=>1000,25759=>1000,25760=>1000,25761=>1000,25762=>1000,25763=>1000,25764=>1000,\r\n\t25765=>1000,25766=>1000,25767=>1000,25768=>1000,25769=>1000,25770=>1000,25771=>1000,25772=>1000,25773=>1000,25774=>1000,25775=>1000,25776=>1000,25777=>1000,25778=>1000,25779=>1000,25780=>1000,\r\n\t25781=>1000,25782=>1000,25783=>1000,25784=>1000,25785=>1000,25786=>1000,25787=>1000,25788=>1000,25789=>1000,25790=>1000,25791=>1000,25792=>1000,25793=>1000,25794=>1000,25795=>1000,25796=>1000,\r\n\t25797=>1000,25798=>1000,25799=>1000,25800=>1000,25801=>1000,25802=>1000,25803=>1000,25804=>1000,25805=>1000,25806=>1000,25807=>1000,25808=>1000,25809=>1000,25810=>1000,25811=>1000,25812=>1000,\r\n\t25813=>1000,25814=>1000,25815=>1000,25816=>1000,25817=>1000,25818=>1000,25819=>1000,25820=>1000,25821=>1000,25822=>1000,25823=>1000,25824=>1000,25825=>1000,25826=>1000,25827=>1000,25828=>1000,\r\n\t25829=>1000,25830=>1000,25831=>1000,25832=>1000,25833=>1000,25834=>1000,25835=>1000,25836=>1000,25837=>1000,25838=>1000,25839=>1000,25840=>1000,25841=>1000,25842=>1000,25843=>1000,25844=>1000,\r\n\t25845=>1000,25846=>1000,25847=>1000,25848=>1000,25849=>1000,25850=>1000,25851=>1000,25852=>1000,25853=>1000,25854=>1000,25855=>1000,25856=>1000,25857=>1000,25858=>1000,25859=>1000,25860=>1000,\r\n\t25861=>1000,25862=>1000,25863=>1000,25864=>1000,25865=>1000,25866=>1000,25867=>1000,25868=>1000,25869=>1000,25870=>1000,25871=>1000,25872=>1000,25873=>1000,25874=>1000,25875=>1000,25876=>1000,\r\n\t25877=>1000,25878=>1000,25879=>1000,25880=>1000,25881=>1000,25882=>1000,25883=>1000,25884=>1000,25885=>1000,25886=>1000,25887=>1000,25888=>1000,25889=>1000,25890=>1000,25891=>1000,25892=>1000,\r\n\t25893=>1000,25894=>1000,25895=>1000,25896=>1000,25897=>1000,25898=>1000,25899=>1000,25900=>1000,25901=>1000,25902=>1000,25903=>1000,25904=>1000,25905=>1000,25906=>1000,25907=>1000,25908=>1000,\r\n\t25909=>1000,25910=>1000,25911=>1000,25912=>1000,25913=>1000,25914=>1000,25915=>1000,25916=>1000,25917=>1000,25918=>1000,25919=>1000,25920=>1000,25921=>1000,25922=>1000,25923=>1000,25924=>1000,\r\n\t25925=>1000,25926=>1000,25927=>1000,25928=>1000,25929=>1000,25930=>1000,25931=>1000,25932=>1000,25933=>1000,25934=>1000,25935=>1000,25936=>1000,25937=>1000,25938=>1000,25939=>1000,25940=>1000,\r\n\t25941=>1000,25942=>1000,25943=>1000,25944=>1000,25945=>1000,25946=>1000,25947=>1000,25948=>1000,25949=>1000,25950=>1000,25951=>1000,25952=>1000,25953=>1000,25954=>1000,25955=>1000,25956=>1000,\r\n\t25957=>1000,25958=>1000,25959=>1000,25960=>1000,25961=>1000,25962=>1000,25963=>1000,25964=>1000,25965=>1000,25966=>1000,25967=>1000,25968=>1000,25969=>1000,25970=>1000,25971=>1000,25972=>1000,\r\n\t25973=>1000,25974=>1000,25975=>1000,25976=>1000,25977=>1000,25978=>1000,25979=>1000,25980=>1000,25981=>1000,25982=>1000,25983=>1000,25984=>1000,25985=>1000,25986=>1000,25987=>1000,25988=>1000,\r\n\t25989=>1000,25990=>1000,25991=>1000,25992=>1000,25993=>1000,25994=>1000,25995=>1000,25996=>1000,25997=>1000,25998=>1000,25999=>1000,26000=>1000,26001=>1000,26002=>1000,26003=>1000,26004=>1000,\r\n\t26005=>1000,26006=>1000,26007=>1000,26008=>1000,26009=>1000,26010=>1000,26011=>1000,26012=>1000,26013=>1000,26014=>1000,26015=>1000,26016=>1000,26017=>1000,26018=>1000,26019=>1000,26020=>1000,\r\n\t26021=>1000,26022=>1000,26023=>1000,26024=>1000,26025=>1000,26026=>1000,26027=>1000,26028=>1000,26029=>1000,26030=>1000,26031=>1000,26032=>1000,26033=>1000,26034=>1000,26035=>1000,26036=>1000,\r\n\t26037=>1000,26038=>1000,26039=>1000,26040=>1000,26041=>1000,26042=>1000,26043=>1000,26044=>1000,26045=>1000,26046=>1000,26047=>1000,26048=>1000,26049=>1000,26050=>1000,26051=>1000,26052=>1000,\r\n\t26053=>1000,26054=>1000,26055=>1000,26056=>1000,26057=>1000,26058=>1000,26059=>1000,26060=>1000,26061=>1000,26062=>1000,26063=>1000,26064=>1000,26065=>1000,26066=>1000,26067=>1000,26068=>1000,\r\n\t26069=>1000,26070=>1000,26071=>1000,26072=>1000,26073=>1000,26074=>1000,26075=>1000,26076=>1000,26077=>1000,26078=>1000,26079=>1000,26080=>1000,26081=>1000,26082=>1000,26083=>1000,26084=>1000,\r\n\t26085=>1000,26086=>1000,26087=>1000,26088=>1000,26089=>1000,26090=>1000,26091=>1000,26092=>1000,26093=>1000,26094=>1000,26095=>1000,26096=>1000,26097=>1000,26098=>1000,26099=>1000,26100=>1000,\r\n\t26101=>1000,26102=>1000,26103=>1000,26104=>1000,26105=>1000,26106=>1000,26107=>1000,26108=>1000,26109=>1000,26110=>1000,26111=>1000,26112=>1000,26113=>1000,26114=>1000,26115=>1000,26116=>1000,\r\n\t26117=>1000,26118=>1000,26119=>1000,26120=>1000,26121=>1000,26122=>1000,26123=>1000,26124=>1000,26125=>1000,26126=>1000,26127=>1000,26128=>1000,26129=>1000,26130=>1000,26131=>1000,26132=>1000,\r\n\t26133=>1000,26134=>1000,26135=>1000,26136=>1000,26137=>1000,26138=>1000,26139=>1000,26140=>1000,26141=>1000,26142=>1000,26143=>1000,26144=>1000,26145=>1000,26146=>1000,26147=>1000,26148=>1000,\r\n\t26149=>1000,26150=>1000,26151=>1000,26152=>1000,26153=>1000,26154=>1000,26155=>1000,26156=>1000,26157=>1000,26158=>1000,26159=>1000,26160=>1000,26161=>1000,26162=>1000,26163=>1000,26164=>1000,\r\n\t26165=>1000,26166=>1000,26167=>1000,26168=>1000,26169=>1000,26170=>1000,26171=>1000,26172=>1000,26173=>1000,26174=>1000,26175=>1000,26176=>1000,26177=>1000,26178=>1000,26179=>1000,26180=>1000,\r\n\t26181=>1000,26182=>1000,26183=>1000,26184=>1000,26185=>1000,26186=>1000,26187=>1000,26188=>1000,26189=>1000,26190=>1000,26191=>1000,26192=>1000,26193=>1000,26194=>1000,26195=>1000,26196=>1000,\r\n\t26197=>1000,26198=>1000,26199=>1000,26200=>1000,26201=>1000,26202=>1000,26203=>1000,26204=>1000,26205=>1000,26206=>1000,26207=>1000,26208=>1000,26209=>1000,26210=>1000,26211=>1000,26212=>1000,\r\n\t26213=>1000,26214=>1000,26215=>1000,26216=>1000,26217=>1000,26218=>1000,26219=>1000,26220=>1000,26221=>1000,26222=>1000,26223=>1000,26224=>1000,26225=>1000,26226=>1000,26227=>1000,26228=>1000,\r\n\t26229=>1000,26230=>1000,26231=>1000,26232=>1000,26233=>1000,26234=>1000,26235=>1000,26236=>1000,26237=>1000,26238=>1000,26239=>1000,26240=>1000,26241=>1000,26242=>1000,26243=>1000,26244=>1000,\r\n\t26245=>1000,26246=>1000,26247=>1000,26248=>1000,26249=>1000,26250=>1000,26251=>1000,26252=>1000,26253=>1000,26254=>1000,26255=>1000,26256=>1000,26257=>1000,26258=>1000,26259=>1000,26260=>1000,\r\n\t26261=>1000,26262=>1000,26263=>1000,26264=>1000,26265=>1000,26266=>1000,26267=>1000,26268=>1000,26269=>1000,26270=>1000,26271=>1000,26272=>1000,26273=>1000,26274=>1000,26275=>1000,26276=>1000,\r\n\t26277=>1000,26278=>1000,26279=>1000,26280=>1000,26281=>1000,26282=>1000,26283=>1000,26284=>1000,26285=>1000,26286=>1000,26287=>1000,26288=>1000,26289=>1000,26290=>1000,26291=>1000,26292=>1000,\r\n\t26293=>1000,26294=>1000,26295=>1000,26296=>1000,26297=>1000,26298=>1000,26299=>1000,26300=>1000,26301=>1000,26302=>1000,26303=>1000,26304=>1000,26305=>1000,26306=>1000,26307=>1000,26308=>1000,\r\n\t26309=>1000,26310=>1000,26311=>1000,26312=>1000,26313=>1000,26314=>1000,26315=>1000,26316=>1000,26317=>1000,26318=>1000,26319=>1000,26320=>1000,26321=>1000,26322=>1000,26323=>1000,26324=>1000,\r\n\t26325=>1000,26326=>1000,26327=>1000,26328=>1000,26329=>1000,26330=>1000,26331=>1000,26332=>1000,26333=>1000,26334=>1000,26335=>1000,26336=>1000,26337=>1000,26338=>1000,26339=>1000,26340=>1000,\r\n\t26341=>1000,26342=>1000,26343=>1000,26344=>1000,26345=>1000,26346=>1000,26347=>1000,26348=>1000,26349=>1000,26350=>1000,26351=>1000,26352=>1000,26353=>1000,26354=>1000,26355=>1000,26356=>1000,\r\n\t26357=>1000,26358=>1000,26359=>1000,26360=>1000,26361=>1000,26362=>1000,26363=>1000,26364=>1000,26365=>1000,26366=>1000,26367=>1000,26368=>1000,26369=>1000,26370=>1000,26371=>1000,26372=>1000,\r\n\t26373=>1000,26374=>1000,26375=>1000,26376=>1000,26377=>1000,26378=>1000,26379=>1000,26380=>1000,26381=>1000,26382=>1000,26383=>1000,26384=>1000,26385=>1000,26386=>1000,26387=>1000,26388=>1000,\r\n\t26389=>1000,26390=>1000,26391=>1000,26392=>1000,26393=>1000,26394=>1000,26395=>1000,26396=>1000,26397=>1000,26398=>1000,26399=>1000,26400=>1000,26401=>1000,26402=>1000,26403=>1000,26404=>1000,\r\n\t26405=>1000,26406=>1000,26407=>1000,26408=>1000,26409=>1000,26410=>1000,26411=>1000,26412=>1000,26413=>1000,26414=>1000,26415=>1000,26416=>1000,26417=>1000,26418=>1000,26419=>1000,26420=>1000,\r\n\t26421=>1000,26422=>1000,26423=>1000,26424=>1000,26425=>1000,26426=>1000,26427=>1000,26428=>1000,26429=>1000,26430=>1000,26431=>1000,26432=>1000,26433=>1000,26434=>1000,26435=>1000,26436=>1000,\r\n\t26437=>1000,26438=>1000,26439=>1000,26440=>1000,26441=>1000,26442=>1000,26443=>1000,26444=>1000,26445=>1000,26446=>1000,26447=>1000,26448=>1000,26449=>1000,26450=>1000,26451=>1000,26452=>1000,\r\n\t26453=>1000,26454=>1000,26455=>1000,26456=>1000,26457=>1000,26458=>1000,26459=>1000,26460=>1000,26461=>1000,26462=>1000,26463=>1000,26464=>1000,26465=>1000,26466=>1000,26467=>1000,26468=>1000,\r\n\t26469=>1000,26470=>1000,26471=>1000,26472=>1000,26473=>1000,26474=>1000,26475=>1000,26476=>1000,26477=>1000,26478=>1000,26479=>1000,26480=>1000,26481=>1000,26482=>1000,26483=>1000,26484=>1000,\r\n\t26485=>1000,26486=>1000,26487=>1000,26488=>1000,26489=>1000,26490=>1000,26491=>1000,26492=>1000,26493=>1000,26494=>1000,26495=>1000,26496=>1000,26497=>1000,26498=>1000,26499=>1000,26500=>1000,\r\n\t26501=>1000,26502=>1000,26503=>1000,26504=>1000,26505=>1000,26506=>1000,26507=>1000,26508=>1000,26509=>1000,26510=>1000,26511=>1000,26512=>1000,26513=>1000,26514=>1000,26515=>1000,26516=>1000,\r\n\t26517=>1000,26518=>1000,26519=>1000,26520=>1000,26521=>1000,26522=>1000,26523=>1000,26524=>1000,26525=>1000,26526=>1000,26527=>1000,26528=>1000,26529=>1000,26530=>1000,26531=>1000,26532=>1000,\r\n\t26533=>1000,26534=>1000,26535=>1000,26536=>1000,26537=>1000,26538=>1000,26539=>1000,26540=>1000,26541=>1000,26542=>1000,26543=>1000,26544=>1000,26545=>1000,26546=>1000,26547=>1000,26548=>1000,\r\n\t26549=>1000,26550=>1000,26551=>1000,26552=>1000,26553=>1000,26554=>1000,26555=>1000,26556=>1000,26557=>1000,26558=>1000,26559=>1000,26560=>1000,26561=>1000,26562=>1000,26563=>1000,26564=>1000,\r\n\t26565=>1000,26566=>1000,26567=>1000,26568=>1000,26569=>1000,26570=>1000,26571=>1000,26572=>1000,26573=>1000,26574=>1000,26575=>1000,26576=>1000,26577=>1000,26578=>1000,26579=>1000,26580=>1000,\r\n\t26581=>1000,26582=>1000,26583=>1000,26584=>1000,26585=>1000,26586=>1000,26587=>1000,26588=>1000,26589=>1000,26590=>1000,26591=>1000,26592=>1000,26593=>1000,26594=>1000,26595=>1000,26596=>1000,\r\n\t26597=>1000,26598=>1000,26599=>1000,26600=>1000,26601=>1000,26602=>1000,26603=>1000,26604=>1000,26605=>1000,26606=>1000,26607=>1000,26608=>1000,26609=>1000,26610=>1000,26611=>1000,26612=>1000,\r\n\t26613=>1000,26614=>1000,26615=>1000,26616=>1000,26617=>1000,26618=>1000,26619=>1000,26620=>1000,26621=>1000,26622=>1000,26623=>1000,26624=>1000,26625=>1000,26626=>1000,26627=>1000,26628=>1000,\r\n\t26629=>1000,26630=>1000,26631=>1000,26632=>1000,26633=>1000,26634=>1000,26635=>1000,26636=>1000,26637=>1000,26638=>1000,26639=>1000,26640=>1000,26641=>1000,26642=>1000,26643=>1000,26644=>1000,\r\n\t26645=>1000,26646=>1000,26647=>1000,26648=>1000,26649=>1000,26650=>1000,26651=>1000,26652=>1000,26653=>1000,26654=>1000,26655=>1000,26656=>1000,26657=>1000,26658=>1000,26659=>1000,26660=>1000,\r\n\t26661=>1000,26662=>1000,26663=>1000,26664=>1000,26665=>1000,26666=>1000,26667=>1000,26668=>1000,26669=>1000,26670=>1000,26671=>1000,26672=>1000,26673=>1000,26674=>1000,26675=>1000,26676=>1000,\r\n\t26677=>1000,26678=>1000,26679=>1000,26680=>1000,26681=>1000,26682=>1000,26683=>1000,26684=>1000,26685=>1000,26686=>1000,26687=>1000,26688=>1000,26689=>1000,26690=>1000,26691=>1000,26692=>1000,\r\n\t26693=>1000,26694=>1000,26695=>1000,26696=>1000,26697=>1000,26698=>1000,26699=>1000,26700=>1000,26701=>1000,26702=>1000,26703=>1000,26704=>1000,26705=>1000,26706=>1000,26707=>1000,26708=>1000,\r\n\t26709=>1000,26710=>1000,26711=>1000,26712=>1000,26713=>1000,26714=>1000,26715=>1000,26716=>1000,26717=>1000,26718=>1000,26719=>1000,26720=>1000,26721=>1000,26722=>1000,26723=>1000,26724=>1000,\r\n\t26725=>1000,26726=>1000,26727=>1000,26728=>1000,26729=>1000,26730=>1000,26731=>1000,26732=>1000,26733=>1000,26734=>1000,26735=>1000,26736=>1000,26737=>1000,26738=>1000,26739=>1000,26740=>1000,\r\n\t26741=>1000,26742=>1000,26743=>1000,26744=>1000,26745=>1000,26746=>1000,26747=>1000,26748=>1000,26749=>1000,26750=>1000,26751=>1000,26752=>1000,26753=>1000,26754=>1000,26755=>1000,26756=>1000,\r\n\t26757=>1000,26758=>1000,26759=>1000,26760=>1000,26761=>1000,26762=>1000,26763=>1000,26764=>1000,26765=>1000,26766=>1000,26767=>1000,26768=>1000,26769=>1000,26770=>1000,26771=>1000,26772=>1000,\r\n\t26773=>1000,26774=>1000,26775=>1000,26776=>1000,26777=>1000,26778=>1000,26779=>1000,26780=>1000,26781=>1000,26782=>1000,26783=>1000,26784=>1000,26785=>1000,26786=>1000,26787=>1000,26788=>1000,\r\n\t26789=>1000,26790=>1000,26791=>1000,26792=>1000,26793=>1000,26794=>1000,26795=>1000,26796=>1000,26797=>1000,26798=>1000,26799=>1000,26800=>1000,26801=>1000,26802=>1000,26803=>1000,26804=>1000,\r\n\t26805=>1000,26806=>1000,26807=>1000,26808=>1000,26809=>1000,26810=>1000,26811=>1000,26812=>1000,26813=>1000,26814=>1000,26815=>1000,26816=>1000,26817=>1000,26818=>1000,26819=>1000,26820=>1000,\r\n\t26821=>1000,26822=>1000,26823=>1000,26824=>1000,26825=>1000,26826=>1000,26827=>1000,26828=>1000,26829=>1000,26830=>1000,26831=>1000,26832=>1000,26833=>1000,26834=>1000,26835=>1000,26836=>1000,\r\n\t26837=>1000,26838=>1000,26839=>1000,26840=>1000,26841=>1000,26842=>1000,26843=>1000,26844=>1000,26845=>1000,26846=>1000,26847=>1000,26848=>1000,26849=>1000,26850=>1000,26851=>1000,26852=>1000,\r\n\t26853=>1000,26854=>1000,26855=>1000,26856=>1000,26857=>1000,26858=>1000,26859=>1000,26860=>1000,26861=>1000,26862=>1000,26863=>1000,26864=>1000,26865=>1000,26866=>1000,26867=>1000,26868=>1000,\r\n\t26869=>1000,26870=>1000,26871=>1000,26872=>1000,26873=>1000,26874=>1000,26875=>1000,26876=>1000,26877=>1000,26878=>1000,26879=>1000,26880=>1000,26881=>1000,26882=>1000,26883=>1000,26884=>1000,\r\n\t26885=>1000,26886=>1000,26887=>1000,26888=>1000,26889=>1000,26890=>1000,26891=>1000,26892=>1000,26893=>1000,26894=>1000,26895=>1000,26896=>1000,26897=>1000,26898=>1000,26899=>1000,26900=>1000,\r\n\t26901=>1000,26902=>1000,26903=>1000,26904=>1000,26905=>1000,26906=>1000,26907=>1000,26908=>1000,26909=>1000,26910=>1000,26911=>1000,26912=>1000,26913=>1000,26914=>1000,26915=>1000,26916=>1000,\r\n\t26917=>1000,26918=>1000,26919=>1000,26920=>1000,26921=>1000,26922=>1000,26923=>1000,26924=>1000,26925=>1000,26926=>1000,26927=>1000,26928=>1000,26929=>1000,26930=>1000,26931=>1000,26932=>1000,\r\n\t26933=>1000,26934=>1000,26935=>1000,26936=>1000,26937=>1000,26938=>1000,26939=>1000,26940=>1000,26941=>1000,26942=>1000,26943=>1000,26944=>1000,26945=>1000,26946=>1000,26947=>1000,26948=>1000,\r\n\t26949=>1000,26950=>1000,26951=>1000,26952=>1000,26953=>1000,26954=>1000,26955=>1000,26956=>1000,26957=>1000,26958=>1000,26959=>1000,26960=>1000,26961=>1000,26962=>1000,26963=>1000,26964=>1000,\r\n\t26965=>1000,26966=>1000,26967=>1000,26968=>1000,26969=>1000,26970=>1000,26971=>1000,26972=>1000,26973=>1000,26974=>1000,26975=>1000,26976=>1000,26977=>1000,26978=>1000,26979=>1000,26980=>1000,\r\n\t26981=>1000,26982=>1000,26983=>1000,26984=>1000,26985=>1000,26986=>1000,26987=>1000,26988=>1000,26989=>1000,26990=>1000,26991=>1000,26992=>1000,26993=>1000,26994=>1000,26995=>1000,26996=>1000,\r\n\t26997=>1000,26998=>1000,26999=>1000,27000=>1000,27001=>1000,27002=>1000,27003=>1000,27004=>1000,27005=>1000,27006=>1000,27007=>1000,27008=>1000,27009=>1000,27010=>1000,27011=>1000,27012=>1000,\r\n\t27013=>1000,27014=>1000,27015=>1000,27016=>1000,27017=>1000,27018=>1000,27019=>1000,27020=>1000,27021=>1000,27022=>1000,27023=>1000,27024=>1000,27025=>1000,27026=>1000,27027=>1000,27028=>1000,\r\n\t27029=>1000,27030=>1000,27031=>1000,27032=>1000,27033=>1000,27034=>1000,27035=>1000,27036=>1000,27037=>1000,27038=>1000,27039=>1000,27040=>1000,27041=>1000,27042=>1000,27043=>1000,27044=>1000,\r\n\t27045=>1000,27046=>1000,27047=>1000,27048=>1000,27049=>1000,27050=>1000,27051=>1000,27052=>1000,27053=>1000,27054=>1000,27055=>1000,27056=>1000,27057=>1000,27058=>1000,27059=>1000,27060=>1000,\r\n\t27061=>1000,27062=>1000,27063=>1000,27064=>1000,27065=>1000,27066=>1000,27067=>1000,27068=>1000,27069=>1000,27070=>1000,27071=>1000,27072=>1000,27073=>1000,27074=>1000,27075=>1000,27076=>1000,\r\n\t27077=>1000,27078=>1000,27079=>1000,27080=>1000,27081=>1000,27082=>1000,27083=>1000,27084=>1000,27085=>1000,27086=>1000,27087=>1000,27088=>1000,27089=>1000,27090=>1000,27091=>1000,27092=>1000,\r\n\t27093=>1000,27094=>1000,27095=>1000,27096=>1000,27097=>1000,27098=>1000,27099=>1000,27100=>1000,27101=>1000,27102=>1000,27103=>1000,27104=>1000,27105=>1000,27106=>1000,27107=>1000,27108=>1000,\r\n\t27109=>1000,27110=>1000,27111=>1000,27112=>1000,27113=>1000,27114=>1000,27115=>1000,27116=>1000,27117=>1000,27118=>1000,27119=>1000,27120=>1000,27121=>1000,27122=>1000,27123=>1000,27124=>1000,\r\n\t27125=>1000,27126=>1000,27127=>1000,27128=>1000,27129=>1000,27130=>1000,27131=>1000,27132=>1000,27133=>1000,27134=>1000,27135=>1000,27136=>1000,27137=>1000,27138=>1000,27139=>1000,27140=>1000,\r\n\t27141=>1000,27142=>1000,27143=>1000,27144=>1000,27145=>1000,27146=>1000,27147=>1000,27148=>1000,27149=>1000,27150=>1000,27151=>1000,27152=>1000,27153=>1000,27154=>1000,27155=>1000,27156=>1000,\r\n\t27157=>1000,27158=>1000,27159=>1000,27160=>1000,27161=>1000,27162=>1000,27163=>1000,27164=>1000,27165=>1000,27166=>1000,27167=>1000,27168=>1000,27169=>1000,27170=>1000,27171=>1000,27172=>1000,\r\n\t27173=>1000,27174=>1000,27175=>1000,27176=>1000,27177=>1000,27178=>1000,27179=>1000,27180=>1000,27181=>1000,27182=>1000,27183=>1000,27184=>1000,27185=>1000,27186=>1000,27187=>1000,27188=>1000,\r\n\t27189=>1000,27190=>1000,27191=>1000,27192=>1000,27193=>1000,27194=>1000,27195=>1000,27196=>1000,27197=>1000,27198=>1000,27199=>1000,27200=>1000,27201=>1000,27202=>1000,27203=>1000,27204=>1000,\r\n\t27205=>1000,27206=>1000,27207=>1000,27208=>1000,27209=>1000,27210=>1000,27211=>1000,27212=>1000,27213=>1000,27214=>1000,27215=>1000,27216=>1000,27217=>1000,27218=>1000,27219=>1000,27220=>1000,\r\n\t27221=>1000,27222=>1000,27223=>1000,27224=>1000,27225=>1000,27226=>1000,27227=>1000,27228=>1000,27229=>1000,27230=>1000,27231=>1000,27232=>1000,27233=>1000,27234=>1000,27235=>1000,27236=>1000,\r\n\t27237=>1000,27238=>1000,27239=>1000,27240=>1000,27241=>1000,27242=>1000,27243=>1000,27244=>1000,27245=>1000,27246=>1000,27247=>1000,27248=>1000,27249=>1000,27250=>1000,27251=>1000,27252=>1000,\r\n\t27253=>1000,27254=>1000,27255=>1000,27256=>1000,27257=>1000,27258=>1000,27259=>1000,27260=>1000,27261=>1000,27262=>1000,27263=>1000,27264=>1000,27265=>1000,27266=>1000,27267=>1000,27268=>1000,\r\n\t27269=>1000,27270=>1000,27271=>1000,27272=>1000,27273=>1000,27274=>1000,27275=>1000,27276=>1000,27277=>1000,27278=>1000,27279=>1000,27280=>1000,27281=>1000,27282=>1000,27283=>1000,27284=>1000,\r\n\t27285=>1000,27286=>1000,27287=>1000,27288=>1000,27289=>1000,27290=>1000,27291=>1000,27292=>1000,27293=>1000,27294=>1000,27295=>1000,27296=>1000,27297=>1000,27298=>1000,27299=>1000,27300=>1000,\r\n\t27301=>1000,27302=>1000,27303=>1000,27304=>1000,27305=>1000,27306=>1000,27307=>1000,27308=>1000,27309=>1000,27310=>1000,27311=>1000,27312=>1000,27313=>1000,27314=>1000,27315=>1000,27316=>1000,\r\n\t27317=>1000,27318=>1000,27319=>1000,27320=>1000,27321=>1000,27322=>1000,27323=>1000,27324=>1000,27325=>1000,27326=>1000,27327=>1000,27328=>1000,27329=>1000,27330=>1000,27331=>1000,27332=>1000,\r\n\t27333=>1000,27334=>1000,27335=>1000,27336=>1000,27337=>1000,27338=>1000,27339=>1000,27340=>1000,27341=>1000,27342=>1000,27343=>1000,27344=>1000,27345=>1000,27346=>1000,27347=>1000,27348=>1000,\r\n\t27349=>1000,27350=>1000,27351=>1000,27352=>1000,27353=>1000,27354=>1000,27355=>1000,27356=>1000,27357=>1000,27358=>1000,27359=>1000,27360=>1000,27361=>1000,27362=>1000,27363=>1000,27364=>1000,\r\n\t27365=>1000,27366=>1000,27367=>1000,27368=>1000,27369=>1000,27370=>1000,27371=>1000,27372=>1000,27373=>1000,27374=>1000,27375=>1000,27376=>1000,27377=>1000,27378=>1000,27379=>1000,27380=>1000,\r\n\t27381=>1000,27382=>1000,27383=>1000,27384=>1000,27385=>1000,27386=>1000,27387=>1000,27388=>1000,27389=>1000,27390=>1000,27391=>1000,27392=>1000,27393=>1000,27394=>1000,27395=>1000,27396=>1000,\r\n\t27397=>1000,27398=>1000,27399=>1000,27400=>1000,27401=>1000,27402=>1000,27403=>1000,27404=>1000,27405=>1000,27406=>1000,27407=>1000,27408=>1000,27409=>1000,27410=>1000,27411=>1000,27412=>1000,\r\n\t27413=>1000,27414=>1000,27415=>1000,27416=>1000,27417=>1000,27418=>1000,27419=>1000,27420=>1000,27421=>1000,27422=>1000,27423=>1000,27424=>1000,27425=>1000,27426=>1000,27427=>1000,27428=>1000,\r\n\t27429=>1000,27430=>1000,27431=>1000,27432=>1000,27433=>1000,27434=>1000,27435=>1000,27436=>1000,27437=>1000,27438=>1000,27439=>1000,27440=>1000,27441=>1000,27442=>1000,27443=>1000,27444=>1000,\r\n\t27445=>1000,27446=>1000,27447=>1000,27448=>1000,27449=>1000,27450=>1000,27451=>1000,27452=>1000,27453=>1000,27454=>1000,27455=>1000,27456=>1000,27457=>1000,27458=>1000,27459=>1000,27460=>1000,\r\n\t27461=>1000,27462=>1000,27463=>1000,27464=>1000,27465=>1000,27466=>1000,27467=>1000,27468=>1000,27469=>1000,27470=>1000,27471=>1000,27472=>1000,27473=>1000,27474=>1000,27475=>1000,27476=>1000,\r\n\t27477=>1000,27478=>1000,27479=>1000,27480=>1000,27481=>1000,27482=>1000,27483=>1000,27484=>1000,27485=>1000,27486=>1000,27487=>1000,27488=>1000,27489=>1000,27490=>1000,27491=>1000,27492=>1000,\r\n\t27493=>1000,27494=>1000,27495=>1000,27496=>1000,27497=>1000,27498=>1000,27499=>1000,27500=>1000,27501=>1000,27502=>1000,27503=>1000,27504=>1000,27505=>1000,27506=>1000,27507=>1000,27508=>1000,\r\n\t27509=>1000,27510=>1000,27511=>1000,27512=>1000,27513=>1000,27514=>1000,27515=>1000,27516=>1000,27517=>1000,27518=>1000,27519=>1000,27520=>1000,27521=>1000,27522=>1000,27523=>1000,27524=>1000,\r\n\t27525=>1000,27526=>1000,27527=>1000,27528=>1000,27529=>1000,27530=>1000,27531=>1000,27532=>1000,27533=>1000,27534=>1000,27535=>1000,27536=>1000,27537=>1000,27538=>1000,27539=>1000,27540=>1000,\r\n\t27541=>1000,27542=>1000,27543=>1000,27544=>1000,27545=>1000,27546=>1000,27547=>1000,27548=>1000,27549=>1000,27550=>1000,27551=>1000,27552=>1000,27553=>1000,27554=>1000,27555=>1000,27556=>1000,\r\n\t27557=>1000,27558=>1000,27559=>1000,27560=>1000,27561=>1000,27562=>1000,27563=>1000,27564=>1000,27565=>1000,27566=>1000,27567=>1000,27568=>1000,27569=>1000,27570=>1000,27571=>1000,27572=>1000,\r\n\t27573=>1000,27574=>1000,27575=>1000,27576=>1000,27577=>1000,27578=>1000,27579=>1000,27580=>1000,27581=>1000,27582=>1000,27583=>1000,27584=>1000,27585=>1000,27586=>1000,27587=>1000,27588=>1000,\r\n\t27589=>1000,27590=>1000,27591=>1000,27592=>1000,27593=>1000,27594=>1000,27595=>1000,27596=>1000,27597=>1000,27598=>1000,27599=>1000,27600=>1000,27601=>1000,27602=>1000,27603=>1000,27604=>1000,\r\n\t27605=>1000,27606=>1000,27607=>1000,27608=>1000,27609=>1000,27610=>1000,27611=>1000,27612=>1000,27613=>1000,27614=>1000,27615=>1000,27616=>1000,27617=>1000,27618=>1000,27619=>1000,27620=>1000,\r\n\t27621=>1000,27622=>1000,27623=>1000,27624=>1000,27625=>1000,27626=>1000,27627=>1000,27628=>1000,27629=>1000,27630=>1000,27631=>1000,27632=>1000,27633=>1000,27634=>1000,27635=>1000,27636=>1000,\r\n\t27637=>1000,27638=>1000,27639=>1000,27640=>1000,27641=>1000,27642=>1000,27643=>1000,27644=>1000,27645=>1000,27646=>1000,27647=>1000,27648=>1000,27649=>1000,27650=>1000,27651=>1000,27652=>1000,\r\n\t27653=>1000,27654=>1000,27655=>1000,27656=>1000,27657=>1000,27658=>1000,27659=>1000,27660=>1000,27661=>1000,27662=>1000,27663=>1000,27664=>1000,27665=>1000,27666=>1000,27667=>1000,27668=>1000,\r\n\t27669=>1000,27670=>1000,27671=>1000,27672=>1000,27673=>1000,27674=>1000,27675=>1000,27676=>1000,27677=>1000,27678=>1000,27679=>1000,27680=>1000,27681=>1000,27682=>1000,27683=>1000,27684=>1000,\r\n\t27685=>1000,27686=>1000,27687=>1000,27688=>1000,27689=>1000,27690=>1000,27691=>1000,27692=>1000,27693=>1000,27694=>1000,27695=>1000,27696=>1000,27697=>1000,27698=>1000,27699=>1000,27700=>1000,\r\n\t27701=>1000,27702=>1000,27703=>1000,27704=>1000,27705=>1000,27706=>1000,27707=>1000,27708=>1000,27709=>1000,27710=>1000,27711=>1000,27712=>1000,27713=>1000,27714=>1000,27715=>1000,27716=>1000,\r\n\t27717=>1000,27718=>1000,27719=>1000,27720=>1000,27721=>1000,27722=>1000,27723=>1000,27724=>1000,27725=>1000,27726=>1000,27727=>1000,27728=>1000,27729=>1000,27730=>1000,27731=>1000,27732=>1000,\r\n\t27733=>1000,27734=>1000,27735=>1000,27736=>1000,27737=>1000,27738=>1000,27739=>1000,27740=>1000,27741=>1000,27742=>1000,27743=>1000,27744=>1000,27745=>1000,27746=>1000,27747=>1000,27748=>1000,\r\n\t27749=>1000,27750=>1000,27751=>1000,27752=>1000,27753=>1000,27754=>1000,27755=>1000,27756=>1000,27757=>1000,27758=>1000,27759=>1000,27760=>1000,27761=>1000,27762=>1000,27763=>1000,27764=>1000,\r\n\t27765=>1000,27766=>1000,27767=>1000,27768=>1000,27769=>1000,27770=>1000,27771=>1000,27772=>1000,27773=>1000,27774=>1000,27775=>1000,27776=>1000,27777=>1000,27778=>1000,27779=>1000,27780=>1000,\r\n\t27781=>1000,27782=>1000,27783=>1000,27784=>1000,27785=>1000,27786=>1000,27787=>1000,27788=>1000,27789=>1000,27790=>1000,27791=>1000,27792=>1000,27793=>1000,27794=>1000,27795=>1000,27796=>1000,\r\n\t27797=>1000,27798=>1000,27799=>1000,27800=>1000,27801=>1000,27802=>1000,27803=>1000,27804=>1000,27805=>1000,27806=>1000,27807=>1000,27808=>1000,27809=>1000,27810=>1000,27811=>1000,27812=>1000,\r\n\t27813=>1000,27814=>1000,27815=>1000,27816=>1000,27817=>1000,27818=>1000,27819=>1000,27820=>1000,27821=>1000,27822=>1000,27823=>1000,27824=>1000,27825=>1000,27826=>1000,27827=>1000,27828=>1000,\r\n\t27829=>1000,27830=>1000,27831=>1000,27832=>1000,27833=>1000,27834=>1000,27835=>1000,27836=>1000,27837=>1000,27838=>1000,27839=>1000,27840=>1000,27841=>1000,27842=>1000,27843=>1000,27844=>1000,\r\n\t27845=>1000,27846=>1000,27847=>1000,27848=>1000,27849=>1000,27850=>1000,27851=>1000,27852=>1000,27853=>1000,27854=>1000,27855=>1000,27856=>1000,27857=>1000,27858=>1000,27859=>1000,27860=>1000,\r\n\t27861=>1000,27862=>1000,27863=>1000,27864=>1000,27865=>1000,27866=>1000,27867=>1000,27868=>1000,27869=>1000,27870=>1000,27871=>1000,27872=>1000,27873=>1000,27874=>1000,27875=>1000,27876=>1000,\r\n\t27877=>1000,27878=>1000,27879=>1000,27880=>1000,27881=>1000,27882=>1000,27883=>1000,27884=>1000,27885=>1000,27886=>1000,27887=>1000,27888=>1000,27889=>1000,27890=>1000,27891=>1000,27892=>1000,\r\n\t27893=>1000,27894=>1000,27895=>1000,27896=>1000,27897=>1000,27898=>1000,27899=>1000,27900=>1000,27901=>1000,27902=>1000,27903=>1000,27904=>1000,27905=>1000,27906=>1000,27907=>1000,27908=>1000,\r\n\t27909=>1000,27910=>1000,27911=>1000,27912=>1000,27913=>1000,27914=>1000,27915=>1000,27916=>1000,27917=>1000,27918=>1000,27919=>1000,27920=>1000,27921=>1000,27922=>1000,27923=>1000,27924=>1000,\r\n\t27925=>1000,27926=>1000,27927=>1000,27928=>1000,27929=>1000,27930=>1000,27931=>1000,27932=>1000,27933=>1000,27934=>1000,27935=>1000,27936=>1000,27937=>1000,27938=>1000,27939=>1000,27940=>1000,\r\n\t27941=>1000,27942=>1000,27943=>1000,27944=>1000,27945=>1000,27946=>1000,27947=>1000,27948=>1000,27949=>1000,27950=>1000,27951=>1000,27952=>1000,27953=>1000,27954=>1000,27955=>1000,27956=>1000,\r\n\t27957=>1000,27958=>1000,27959=>1000,27960=>1000,27961=>1000,27962=>1000,27963=>1000,27964=>1000,27965=>1000,27966=>1000,27967=>1000,27968=>1000,27969=>1000,27970=>1000,27971=>1000,27972=>1000,\r\n\t27973=>1000,27974=>1000,27975=>1000,27976=>1000,27977=>1000,27978=>1000,27979=>1000,27980=>1000,27981=>1000,27982=>1000,27983=>1000,27984=>1000,27985=>1000,27986=>1000,27987=>1000,27988=>1000,\r\n\t27989=>1000,27990=>1000,27991=>1000,27992=>1000,27993=>1000,27994=>1000,27995=>1000,27996=>1000,27997=>1000,27998=>1000,27999=>1000,28000=>1000,28001=>1000,28002=>1000,28003=>1000,28004=>1000,\r\n\t28005=>1000,28006=>1000,28007=>1000,28008=>1000,28009=>1000,28010=>1000,28011=>1000,28012=>1000,28013=>1000,28014=>1000,28015=>1000,28016=>1000,28017=>1000,28018=>1000,28019=>1000,28020=>1000,\r\n\t28021=>1000,28022=>1000,28023=>1000,28024=>1000,28025=>1000,28026=>1000,28027=>1000,28028=>1000,28029=>1000,28030=>1000,28031=>1000,28032=>1000,28033=>1000,28034=>1000,28035=>1000,28036=>1000,\r\n\t28037=>1000,28038=>1000,28039=>1000,28040=>1000,28041=>1000,28042=>1000,28043=>1000,28044=>1000,28045=>1000,28046=>1000,28047=>1000,28048=>1000,28049=>1000,28050=>1000,28051=>1000,28052=>1000,\r\n\t28053=>1000,28054=>1000,28055=>1000,28056=>1000,28057=>1000,28058=>1000,28059=>1000,28060=>1000,28061=>1000,28062=>1000,28063=>1000,28064=>1000,28065=>1000,28066=>1000,28067=>1000,28068=>1000,\r\n\t28069=>1000,28070=>1000,28071=>1000,28072=>1000,28073=>1000,28074=>1000,28075=>1000,28076=>1000,28077=>1000,28078=>1000,28079=>1000,28080=>1000,28081=>1000,28082=>1000,28083=>1000,28084=>1000,\r\n\t28085=>1000,28086=>1000,28087=>1000,28088=>1000,28089=>1000,28090=>1000,28091=>1000,28092=>1000,28093=>1000,28094=>1000,28095=>1000,28096=>1000,28097=>1000,28098=>1000,28099=>1000,28100=>1000,\r\n\t28101=>1000,28102=>1000,28103=>1000,28104=>1000,28105=>1000,28106=>1000,28107=>1000,28108=>1000,28109=>1000,28110=>1000,28111=>1000,28112=>1000,28113=>1000,28114=>1000,28115=>1000,28116=>1000,\r\n\t28117=>1000,28118=>1000,28119=>1000,28120=>1000,28121=>1000,28122=>1000,28123=>1000,28124=>1000,28125=>1000,28126=>1000,28127=>1000,28128=>1000,28129=>1000,28130=>1000,28131=>1000,28132=>1000,\r\n\t28133=>1000,28134=>1000,28135=>1000,28136=>1000,28137=>1000,28138=>1000,28139=>1000,28140=>1000,28141=>1000,28142=>1000,28143=>1000,28144=>1000,28145=>1000,28146=>1000,28147=>1000,28148=>1000,\r\n\t28149=>1000,28150=>1000,28151=>1000,28152=>1000,28153=>1000,28154=>1000,28155=>1000,28156=>1000,28157=>1000,28158=>1000,28159=>1000,28160=>1000,28161=>1000,28162=>1000,28163=>1000,28164=>1000,\r\n\t28165=>1000,28166=>1000,28167=>1000,28168=>1000,28169=>1000,28170=>1000,28171=>1000,28172=>1000,28173=>1000,28174=>1000,28175=>1000,28176=>1000,28177=>1000,28178=>1000,28179=>1000,28180=>1000,\r\n\t28181=>1000,28182=>1000,28183=>1000,28184=>1000,28185=>1000,28186=>1000,28187=>1000,28188=>1000,28189=>1000,28190=>1000,28191=>1000,28192=>1000,28193=>1000,28194=>1000,28195=>1000,28196=>1000,\r\n\t28197=>1000,28198=>1000,28199=>1000,28200=>1000,28201=>1000,28202=>1000,28203=>1000,28204=>1000,28205=>1000,28206=>1000,28207=>1000,28208=>1000,28209=>1000,28210=>1000,28211=>1000,28212=>1000,\r\n\t28213=>1000,28214=>1000,28215=>1000,28216=>1000,28217=>1000,28218=>1000,28219=>1000,28220=>1000,28221=>1000,28222=>1000,28223=>1000,28224=>1000,28225=>1000,28226=>1000,28227=>1000,28228=>1000,\r\n\t28229=>1000,28230=>1000,28231=>1000,28232=>1000,28233=>1000,28234=>1000,28235=>1000,28236=>1000,28237=>1000,28238=>1000,28239=>1000,28240=>1000,28241=>1000,28242=>1000,28243=>1000,28244=>1000,\r\n\t28245=>1000,28246=>1000,28247=>1000,28248=>1000,28249=>1000,28250=>1000,28251=>1000,28252=>1000,28253=>1000,28254=>1000,28255=>1000,28256=>1000,28257=>1000,28258=>1000,28259=>1000,28260=>1000,\r\n\t28261=>1000,28262=>1000,28263=>1000,28264=>1000,28265=>1000,28266=>1000,28267=>1000,28268=>1000,28269=>1000,28270=>1000,28271=>1000,28272=>1000,28273=>1000,28274=>1000,28275=>1000,28276=>1000,\r\n\t28277=>1000,28278=>1000,28279=>1000,28280=>1000,28281=>1000,28282=>1000,28283=>1000,28284=>1000,28285=>1000,28286=>1000,28287=>1000,28288=>1000,28289=>1000,28290=>1000,28291=>1000,28292=>1000,\r\n\t28293=>1000,28294=>1000,28295=>1000,28296=>1000,28297=>1000,28298=>1000,28299=>1000,28300=>1000,28301=>1000,28302=>1000,28303=>1000,28304=>1000,28305=>1000,28306=>1000,28307=>1000,28308=>1000,\r\n\t28309=>1000,28310=>1000,28311=>1000,28312=>1000,28313=>1000,28314=>1000,28315=>1000,28316=>1000,28317=>1000,28318=>1000,28319=>1000,28320=>1000,28321=>1000,28322=>1000,28323=>1000,28324=>1000,\r\n\t28325=>1000,28326=>1000,28327=>1000,28328=>1000,28329=>1000,28330=>1000,28331=>1000,28332=>1000,28333=>1000,28334=>1000,28335=>1000,28336=>1000,28337=>1000,28338=>1000,28339=>1000,28340=>1000,\r\n\t28341=>1000,28342=>1000,28343=>1000,28344=>1000,28345=>1000,28346=>1000,28347=>1000,28348=>1000,28349=>1000,28350=>1000,28351=>1000,28352=>1000,28353=>1000,28354=>1000,28355=>1000,28356=>1000,\r\n\t28357=>1000,28358=>1000,28359=>1000,28360=>1000,28361=>1000,28362=>1000,28363=>1000,28364=>1000,28365=>1000,28366=>1000,28367=>1000,28368=>1000,28369=>1000,28370=>1000,28371=>1000,28372=>1000,\r\n\t28373=>1000,28374=>1000,28375=>1000,28376=>1000,28377=>1000,28378=>1000,28379=>1000,28380=>1000,28381=>1000,28382=>1000,28383=>1000,28384=>1000,28385=>1000,28386=>1000,28387=>1000,28388=>1000,\r\n\t28389=>1000,28390=>1000,28391=>1000,28392=>1000,28393=>1000,28394=>1000,28395=>1000,28396=>1000,28397=>1000,28398=>1000,28399=>1000,28400=>1000,28401=>1000,28402=>1000,28403=>1000,28404=>1000,\r\n\t28405=>1000,28406=>1000,28407=>1000,28408=>1000,28409=>1000,28410=>1000,28411=>1000,28412=>1000,28413=>1000,28414=>1000,28415=>1000,28416=>1000,28417=>1000,28418=>1000,28419=>1000,28420=>1000,\r\n\t28421=>1000,28422=>1000,28423=>1000,28424=>1000,28425=>1000,28426=>1000,28427=>1000,28428=>1000,28429=>1000,28430=>1000,28431=>1000,28432=>1000,28433=>1000,28434=>1000,28435=>1000,28436=>1000,\r\n\t28437=>1000,28438=>1000,28439=>1000,28440=>1000,28441=>1000,28442=>1000,28443=>1000,28444=>1000,28445=>1000,28446=>1000,28447=>1000,28448=>1000,28449=>1000,28450=>1000,28451=>1000,28452=>1000,\r\n\t28453=>1000,28454=>1000,28455=>1000,28456=>1000,28457=>1000,28458=>1000,28459=>1000,28460=>1000,28461=>1000,28462=>1000,28463=>1000,28464=>1000,28465=>1000,28466=>1000,28467=>1000,28468=>1000,\r\n\t28469=>1000,28470=>1000,28471=>1000,28472=>1000,28473=>1000,28474=>1000,28475=>1000,28476=>1000,28477=>1000,28478=>1000,28479=>1000,28480=>1000,28481=>1000,28482=>1000,28483=>1000,28484=>1000,\r\n\t28485=>1000,28486=>1000,28487=>1000,28488=>1000,28489=>1000,28490=>1000,28491=>1000,28492=>1000,28493=>1000,28494=>1000,28495=>1000,28496=>1000,28497=>1000,28498=>1000,28499=>1000,28500=>1000,\r\n\t28501=>1000,28502=>1000,28503=>1000,28504=>1000,28505=>1000,28506=>1000,28507=>1000,28508=>1000,28509=>1000,28510=>1000,28511=>1000,28512=>1000,28513=>1000,28514=>1000,28515=>1000,28516=>1000,\r\n\t28517=>1000,28518=>1000,28519=>1000,28520=>1000,28521=>1000,28522=>1000,28523=>1000,28524=>1000,28525=>1000,28526=>1000,28527=>1000,28528=>1000,28529=>1000,28530=>1000,28531=>1000,28532=>1000,\r\n\t28533=>1000,28534=>1000,28535=>1000,28536=>1000,28537=>1000,28538=>1000,28539=>1000,28540=>1000,28541=>1000,28542=>1000,28543=>1000,28544=>1000,28545=>1000,28546=>1000,28547=>1000,28548=>1000,\r\n\t28549=>1000,28550=>1000,28551=>1000,28552=>1000,28553=>1000,28554=>1000,28555=>1000,28556=>1000,28557=>1000,28558=>1000,28559=>1000,28560=>1000,28561=>1000,28562=>1000,28563=>1000,28564=>1000,\r\n\t28565=>1000,28566=>1000,28567=>1000,28568=>1000,28569=>1000,28570=>1000,28571=>1000,28572=>1000,28573=>1000,28574=>1000,28575=>1000,28576=>1000,28577=>1000,28578=>1000,28579=>1000,28580=>1000,\r\n\t28581=>1000,28582=>1000,28583=>1000,28584=>1000,28585=>1000,28586=>1000,28587=>1000,28588=>1000,28589=>1000,28590=>1000,28591=>1000,28592=>1000,28593=>1000,28594=>1000,28595=>1000,28596=>1000,\r\n\t28597=>1000,28598=>1000,28599=>1000,28600=>1000,28601=>1000,28602=>1000,28603=>1000,28604=>1000,28605=>1000,28606=>1000,28607=>1000,28608=>1000,28609=>1000,28610=>1000,28611=>1000,28612=>1000,\r\n\t28613=>1000,28614=>1000,28615=>1000,28616=>1000,28617=>1000,28618=>1000,28619=>1000,28620=>1000,28621=>1000,28622=>1000,28623=>1000,28624=>1000,28625=>1000,28626=>1000,28627=>1000,28628=>1000,\r\n\t28629=>1000,28630=>1000,28631=>1000,28632=>1000,28633=>1000,28634=>1000,28635=>1000,28636=>1000,28637=>1000,28638=>1000,28639=>1000,28640=>1000,28641=>1000,28642=>1000,28643=>1000,28644=>1000,\r\n\t28645=>1000,28646=>1000,28647=>1000,28648=>1000,28649=>1000,28650=>1000,28651=>1000,28652=>1000,28653=>1000,28654=>1000,28655=>1000,28656=>1000,28657=>1000,28658=>1000,28659=>1000,28660=>1000,\r\n\t28661=>1000,28662=>1000,28663=>1000,28664=>1000,28665=>1000,28666=>1000,28667=>1000,28668=>1000,28669=>1000,28670=>1000,28671=>1000,28672=>1000,28673=>1000,28674=>1000,28675=>1000,28676=>1000,\r\n\t28677=>1000,28678=>1000,28679=>1000,28680=>1000,28681=>1000,28682=>1000,28683=>1000,28684=>1000,28685=>1000,28686=>1000,28687=>1000,28688=>1000,28689=>1000,28690=>1000,28691=>1000,28692=>1000,\r\n\t28693=>1000,28694=>1000,28695=>1000,28696=>1000,28697=>1000,28698=>1000,28699=>1000,28700=>1000,28701=>1000,28702=>1000,28703=>1000,28704=>1000,28705=>1000,28706=>1000,28707=>1000,28708=>1000,\r\n\t28709=>1000,28710=>1000,28711=>1000,28712=>1000,28713=>1000,28714=>1000,28715=>1000,28716=>1000,28717=>1000,28718=>1000,28719=>1000,28720=>1000,28721=>1000,28722=>1000,28723=>1000,28724=>1000,\r\n\t28725=>1000,28726=>1000,28727=>1000,28728=>1000,28729=>1000,28730=>1000,28731=>1000,28732=>1000,28733=>1000,28734=>1000,28735=>1000,28736=>1000,28737=>1000,28738=>1000,28739=>1000,28740=>1000,\r\n\t28741=>1000,28742=>1000,28743=>1000,28744=>1000,28745=>1000,28746=>1000,28747=>1000,28748=>1000,28749=>1000,28750=>1000,28751=>1000,28752=>1000,28753=>1000,28754=>1000,28755=>1000,28756=>1000,\r\n\t28757=>1000,28758=>1000,28759=>1000,28760=>1000,28761=>1000,28762=>1000,28763=>1000,28764=>1000,28765=>1000,28766=>1000,28767=>1000,28768=>1000,28769=>1000,28770=>1000,28771=>1000,28772=>1000,\r\n\t28773=>1000,28774=>1000,28775=>1000,28776=>1000,28777=>1000,28778=>1000,28779=>1000,28780=>1000,28781=>1000,28782=>1000,28783=>1000,28784=>1000,28785=>1000,28786=>1000,28787=>1000,28788=>1000,\r\n\t28789=>1000,28790=>1000,28791=>1000,28792=>1000,28793=>1000,28794=>1000,28795=>1000,28796=>1000,28797=>1000,28798=>1000,28799=>1000,28800=>1000,28801=>1000,28802=>1000,28803=>1000,28804=>1000,\r\n\t28805=>1000,28806=>1000,28807=>1000,28808=>1000,28809=>1000,28810=>1000,28811=>1000,28812=>1000,28813=>1000,28814=>1000,28815=>1000,28816=>1000,28817=>1000,28818=>1000,28819=>1000,28820=>1000,\r\n\t28821=>1000,28822=>1000,28823=>1000,28824=>1000,28825=>1000,28826=>1000,28827=>1000,28828=>1000,28829=>1000,28830=>1000,28831=>1000,28832=>1000,28833=>1000,28834=>1000,28835=>1000,28836=>1000,\r\n\t28837=>1000,28838=>1000,28839=>1000,28840=>1000,28841=>1000,28842=>1000,28843=>1000,28844=>1000,28845=>1000,28846=>1000,28847=>1000,28848=>1000,28849=>1000,28850=>1000,28851=>1000,28852=>1000,\r\n\t28853=>1000,28854=>1000,28855=>1000,28856=>1000,28857=>1000,28858=>1000,28859=>1000,28860=>1000,28861=>1000,28862=>1000,28863=>1000,28864=>1000,28865=>1000,28866=>1000,28867=>1000,28868=>1000,\r\n\t28869=>1000,28870=>1000,28871=>1000,28872=>1000,28873=>1000,28874=>1000,28875=>1000,28876=>1000,28877=>1000,28878=>1000,28879=>1000,28880=>1000,28881=>1000,28882=>1000,28883=>1000,28884=>1000,\r\n\t28885=>1000,28886=>1000,28887=>1000,28888=>1000,28889=>1000,28890=>1000,28891=>1000,28892=>1000,28893=>1000,28894=>1000,28895=>1000,28896=>1000,28897=>1000,28898=>1000,28899=>1000,28900=>1000,\r\n\t28901=>1000,28902=>1000,28903=>1000,28904=>1000,28905=>1000,28906=>1000,28907=>1000,28908=>1000,28909=>1000,28910=>1000,28911=>1000,28912=>1000,28913=>1000,28914=>1000,28915=>1000,28916=>1000,\r\n\t28917=>1000,28918=>1000,28919=>1000,28920=>1000,28921=>1000,28922=>1000,28923=>1000,28924=>1000,28925=>1000,28926=>1000,28927=>1000,28928=>1000,28929=>1000,28930=>1000,28931=>1000,28932=>1000,\r\n\t28933=>1000,28934=>1000,28935=>1000,28936=>1000,28937=>1000,28938=>1000,28939=>1000,28940=>1000,28941=>1000,28942=>1000,28943=>1000,28944=>1000,28945=>1000,28946=>1000,28947=>1000,28948=>1000,\r\n\t28949=>1000,28950=>1000,28951=>1000,28952=>1000,28953=>1000,28954=>1000,28955=>1000,28956=>1000,28957=>1000,28958=>1000,28959=>1000,28960=>1000,28961=>1000,28962=>1000,28963=>1000,28964=>1000,\r\n\t28965=>1000,28966=>1000,28967=>1000,28968=>1000,28969=>1000,28970=>1000,28971=>1000,28972=>1000,28973=>1000,28974=>1000,28975=>1000,28976=>1000,28977=>1000,28978=>1000,28979=>1000,28980=>1000,\r\n\t28981=>1000,28982=>1000,28983=>1000,28984=>1000,28985=>1000,28986=>1000,28987=>1000,28988=>1000,28989=>1000,28990=>1000,28991=>1000,28992=>1000,28993=>1000,28994=>1000,28995=>1000,28996=>1000,\r\n\t28997=>1000,28998=>1000,28999=>1000,29000=>1000,29001=>1000,29002=>1000,29003=>1000,29004=>1000,29005=>1000,29006=>1000,29007=>1000,29008=>1000,29009=>1000,29010=>1000,29011=>1000,29012=>1000,\r\n\t29013=>1000,29014=>1000,29015=>1000,29016=>1000,29017=>1000,29018=>1000,29019=>1000,29020=>1000,29021=>1000,29022=>1000,29023=>1000,29024=>1000,29025=>1000,29026=>1000,29027=>1000,29028=>1000,\r\n\t29029=>1000,29030=>1000,29031=>1000,29032=>1000,29033=>1000,29034=>1000,29035=>1000,29036=>1000,29037=>1000,29038=>1000,29039=>1000,29040=>1000,29041=>1000,29042=>1000,29043=>1000,29044=>1000,\r\n\t29045=>1000,29046=>1000,29047=>1000,29048=>1000,29049=>1000,29050=>1000,29051=>1000,29052=>1000,29053=>1000,29054=>1000,29055=>1000,29056=>1000,29057=>1000,29058=>1000,29059=>1000,29060=>1000,\r\n\t29061=>1000,29062=>1000,29063=>1000,29064=>1000,29065=>1000,29066=>1000,29067=>1000,29068=>1000,29069=>1000,29070=>1000,29071=>1000,29072=>1000,29073=>1000,29074=>1000,29075=>1000,29076=>1000,\r\n\t29077=>1000,29078=>1000,29079=>1000,29080=>1000,29081=>1000,29082=>1000,29083=>1000,29084=>1000,29085=>1000,29086=>1000,29087=>1000,29088=>1000,29089=>1000,29090=>1000,29091=>1000,29092=>1000,\r\n\t29093=>1000,29094=>1000,29095=>1000,29096=>1000,29097=>1000,29098=>1000,29099=>1000,29100=>1000,29101=>1000,29102=>1000,29103=>1000,29104=>1000,29105=>1000,29106=>1000,29107=>1000,29108=>1000,\r\n\t29109=>1000,29110=>1000,29111=>1000,29112=>1000,29113=>1000,29114=>1000,29115=>1000,29116=>1000,29117=>1000,29118=>1000,29119=>1000,29120=>1000,29121=>1000,29122=>1000,29123=>1000,29124=>1000,\r\n\t29125=>1000,29126=>1000,29127=>1000,29128=>1000,29129=>1000,29130=>1000,29131=>1000,29132=>1000,29133=>1000,29134=>1000,29135=>1000,29136=>1000,29137=>1000,29138=>1000,29139=>1000,29140=>1000,\r\n\t29141=>1000,29142=>1000,29143=>1000,29144=>1000,29145=>1000,29146=>1000,29147=>1000,29148=>1000,29149=>1000,29150=>1000,29151=>1000,29152=>1000,29153=>1000,29154=>1000,29155=>1000,29156=>1000,\r\n\t29157=>1000,29158=>1000,29159=>1000,29160=>1000,29161=>1000,29162=>1000,29163=>1000,29164=>1000,29165=>1000,29166=>1000,29167=>1000,29168=>1000,29169=>1000,29170=>1000,29171=>1000,29172=>1000,\r\n\t29173=>1000,29174=>1000,29175=>1000,29176=>1000,29177=>1000,29178=>1000,29179=>1000,29180=>1000,29181=>1000,29182=>1000,29183=>1000,29184=>1000,29185=>1000,29186=>1000,29187=>1000,29188=>1000,\r\n\t29189=>1000,29190=>1000,29191=>1000,29192=>1000,29193=>1000,29194=>1000,29195=>1000,29196=>1000,29197=>1000,29198=>1000,29199=>1000,29200=>1000,29201=>1000,29202=>1000,29203=>1000,29204=>1000,\r\n\t29205=>1000,29206=>1000,29207=>1000,29208=>1000,29209=>1000,29210=>1000,29211=>1000,29212=>1000,29213=>1000,29214=>1000,29215=>1000,29216=>1000,29217=>1000,29218=>1000,29219=>1000,29220=>1000,\r\n\t29221=>1000,29222=>1000,29223=>1000,29224=>1000,29225=>1000,29226=>1000,29227=>1000,29228=>1000,29229=>1000,29230=>1000,29231=>1000,29232=>1000,29233=>1000,29234=>1000,29235=>1000,29236=>1000,\r\n\t29237=>1000,29238=>1000,29239=>1000,29240=>1000,29241=>1000,29242=>1000,29243=>1000,29244=>1000,29245=>1000,29246=>1000,29247=>1000,29248=>1000,29249=>1000,29250=>1000,29251=>1000,29252=>1000,\r\n\t29253=>1000,29254=>1000,29255=>1000,29256=>1000,29257=>1000,29258=>1000,29259=>1000,29260=>1000,29261=>1000,29262=>1000,29263=>1000,29264=>1000,29265=>1000,29266=>1000,29267=>1000,29268=>1000,\r\n\t29269=>1000,29270=>1000,29271=>1000,29272=>1000,29273=>1000,29274=>1000,29275=>1000,29276=>1000,29277=>1000,29278=>1000,29279=>1000,29280=>1000,29281=>1000,29282=>1000,29283=>1000,29284=>1000,\r\n\t29285=>1000,29286=>1000,29287=>1000,29288=>1000,29289=>1000,29290=>1000,29291=>1000,29292=>1000,29293=>1000,29294=>1000,29295=>1000,29296=>1000,29297=>1000,29298=>1000,29299=>1000,29300=>1000,\r\n\t29301=>1000,29302=>1000,29303=>1000,29304=>1000,29305=>1000,29306=>1000,29307=>1000,29308=>1000,29309=>1000,29310=>1000,29311=>1000,29312=>1000,29313=>1000,29314=>1000,29315=>1000,29316=>1000,\r\n\t29317=>1000,29318=>1000,29319=>1000,29320=>1000,29321=>1000,29322=>1000,29323=>1000,29324=>1000,29325=>1000,29326=>1000,29327=>1000,29328=>1000,29329=>1000,29330=>1000,29331=>1000,29332=>1000,\r\n\t29333=>1000,29334=>1000,29335=>1000,29336=>1000,29337=>1000,29338=>1000,29339=>1000,29340=>1000,29341=>1000,29342=>1000,29343=>1000,29344=>1000,29345=>1000,29346=>1000,29347=>1000,29348=>1000,\r\n\t29349=>1000,29350=>1000,29351=>1000,29352=>1000,29353=>1000,29354=>1000,29355=>1000,29356=>1000,29357=>1000,29358=>1000,29359=>1000,29360=>1000,29361=>1000,29362=>1000,29363=>1000,29364=>1000,\r\n\t29365=>1000,29366=>1000,29367=>1000,29368=>1000,29369=>1000,29370=>1000,29371=>1000,29372=>1000,29373=>1000,29374=>1000,29375=>1000,29376=>1000,29377=>1000,29378=>1000,29379=>1000,29380=>1000,\r\n\t29381=>1000,29382=>1000,29383=>1000,29384=>1000,29385=>1000,29386=>1000,29387=>1000,29388=>1000,29389=>1000,29390=>1000,29391=>1000,29392=>1000,29393=>1000,29394=>1000,29395=>1000,29396=>1000,\r\n\t29397=>1000,29398=>1000,29399=>1000,29400=>1000,29401=>1000,29402=>1000,29403=>1000,29404=>1000,29405=>1000,29406=>1000,29407=>1000,29408=>1000,29409=>1000,29410=>1000,29411=>1000,29412=>1000,\r\n\t29413=>1000,29414=>1000,29415=>1000,29416=>1000,29417=>1000,29418=>1000,29419=>1000,29420=>1000,29421=>1000,29422=>1000,29423=>1000,29424=>1000,29425=>1000,29426=>1000,29427=>1000,29428=>1000,\r\n\t29429=>1000,29430=>1000,29431=>1000,29432=>1000,29433=>1000,29434=>1000,29435=>1000,29436=>1000,29437=>1000,29438=>1000,29439=>1000,29440=>1000,29441=>1000,29442=>1000,29443=>1000,29444=>1000,\r\n\t29445=>1000,29446=>1000,29447=>1000,29448=>1000,29449=>1000,29450=>1000,29451=>1000,29452=>1000,29453=>1000,29454=>1000,29455=>1000,29456=>1000,29457=>1000,29458=>1000,29459=>1000,29460=>1000,\r\n\t29461=>1000,29462=>1000,29463=>1000,29464=>1000,29465=>1000,29466=>1000,29467=>1000,29468=>1000,29469=>1000,29470=>1000,29471=>1000,29472=>1000,29473=>1000,29474=>1000,29475=>1000,29476=>1000,\r\n\t29477=>1000,29478=>1000,29479=>1000,29480=>1000,29481=>1000,29482=>1000,29483=>1000,29484=>1000,29485=>1000,29486=>1000,29487=>1000,29488=>1000,29489=>1000,29490=>1000,29491=>1000,29492=>1000,\r\n\t29493=>1000,29494=>1000,29495=>1000,29496=>1000,29497=>1000,29498=>1000,29499=>1000,29500=>1000,29501=>1000,29502=>1000,29503=>1000,29504=>1000,29505=>1000,29506=>1000,29507=>1000,29508=>1000,\r\n\t29509=>1000,29510=>1000,29511=>1000,29512=>1000,29513=>1000,29514=>1000,29515=>1000,29516=>1000,29517=>1000,29518=>1000,29519=>1000,29520=>1000,29521=>1000,29522=>1000,29523=>1000,29524=>1000,\r\n\t29525=>1000,29526=>1000,29527=>1000,29528=>1000,29529=>1000,29530=>1000,29531=>1000,29532=>1000,29533=>1000,29534=>1000,29535=>1000,29536=>1000,29537=>1000,29538=>1000,29539=>1000,29540=>1000,\r\n\t29541=>1000,29542=>1000,29543=>1000,29544=>1000,29545=>1000,29546=>1000,29547=>1000,29548=>1000,29549=>1000,29550=>1000,29551=>1000,29552=>1000,29553=>1000,29554=>1000,29555=>1000,29556=>1000,\r\n\t29557=>1000,29558=>1000,29559=>1000,29560=>1000,29561=>1000,29562=>1000,29563=>1000,29564=>1000,29565=>1000,29566=>1000,29567=>1000,29568=>1000,29569=>1000,29570=>1000,29571=>1000,29572=>1000,\r\n\t29573=>1000,29574=>1000,29575=>1000,29576=>1000,29577=>1000,29578=>1000,29579=>1000,29580=>1000,29581=>1000,29582=>1000,29583=>1000,29584=>1000,29585=>1000,29586=>1000,29587=>1000,29588=>1000,\r\n\t29589=>1000,29590=>1000,29591=>1000,29592=>1000,29593=>1000,29594=>1000,29595=>1000,29596=>1000,29597=>1000,29598=>1000,29599=>1000,29600=>1000,29601=>1000,29602=>1000,29603=>1000,29604=>1000,\r\n\t29605=>1000,29606=>1000,29607=>1000,29608=>1000,29609=>1000,29610=>1000,29611=>1000,29612=>1000,29613=>1000,29614=>1000,29615=>1000,29616=>1000,29617=>1000,29618=>1000,29619=>1000,29620=>1000,\r\n\t29621=>1000,29622=>1000,29623=>1000,29624=>1000,29625=>1000,29626=>1000,29627=>1000,29628=>1000,29629=>1000,29630=>1000,29631=>1000,29632=>1000,29633=>1000,29634=>1000,29635=>1000,29636=>1000,\r\n\t29637=>1000,29638=>1000,29639=>1000,29640=>1000,29641=>1000,29642=>1000,29643=>1000,29644=>1000,29645=>1000,29646=>1000,29647=>1000,29648=>1000,29649=>1000,29650=>1000,29651=>1000,29652=>1000,\r\n\t29653=>1000,29654=>1000,29655=>1000,29656=>1000,29657=>1000,29658=>1000,29659=>1000,29660=>1000,29661=>1000,29662=>1000,29663=>1000,29664=>1000,29665=>1000,29666=>1000,29667=>1000,29668=>1000,\r\n\t29669=>1000,29670=>1000,29671=>1000,29672=>1000,29673=>1000,29674=>1000,29675=>1000,29676=>1000,29677=>1000,29678=>1000,29679=>1000,29680=>1000,29681=>1000,29682=>1000,29683=>1000,29684=>1000,\r\n\t29685=>1000,29686=>1000,29687=>1000,29688=>1000,29689=>1000,29690=>1000,29691=>1000,29692=>1000,29693=>1000,29694=>1000,29695=>1000,29696=>1000,29697=>1000,29698=>1000,29699=>1000,29700=>1000,\r\n\t29701=>1000,29702=>1000,29703=>1000,29704=>1000,29705=>1000,29706=>1000,29707=>1000,29708=>1000,29709=>1000,29710=>1000,29711=>1000,29712=>1000,29713=>1000,29714=>1000,29715=>1000,29716=>1000,\r\n\t29717=>1000,29718=>1000,29719=>1000,29720=>1000,29721=>1000,29722=>1000,29723=>1000,29724=>1000,29725=>1000,29726=>1000,29727=>1000,29728=>1000,29729=>1000,29730=>1000,29731=>1000,29732=>1000,\r\n\t29733=>1000,29734=>1000,29735=>1000,29736=>1000,29737=>1000,29738=>1000,29739=>1000,29740=>1000,29741=>1000,29742=>1000,29743=>1000,29744=>1000,29745=>1000,29746=>1000,29747=>1000,29748=>1000,\r\n\t29749=>1000,29750=>1000,29751=>1000,29752=>1000,29753=>1000,29754=>1000,29755=>1000,29756=>1000,29757=>1000,29758=>1000,29759=>1000,29760=>1000,29761=>1000,29762=>1000,29763=>1000,29764=>1000,\r\n\t29765=>1000,29766=>1000,29767=>1000,29768=>1000,29769=>1000,29770=>1000,29771=>1000,29772=>1000,29773=>1000,29774=>1000,29775=>1000,29776=>1000,29777=>1000,29778=>1000,29779=>1000,29780=>1000,\r\n\t29781=>1000,29782=>1000,29783=>1000,29784=>1000,29785=>1000,29786=>1000,29787=>1000,29788=>1000,29789=>1000,29790=>1000,29791=>1000,29792=>1000,29793=>1000,29794=>1000,29795=>1000,29796=>1000,\r\n\t29797=>1000,29798=>1000,29799=>1000,29800=>1000,29801=>1000,29802=>1000,29803=>1000,29804=>1000,29805=>1000,29806=>1000,29807=>1000,29808=>1000,29809=>1000,29810=>1000,29811=>1000,29812=>1000,\r\n\t29813=>1000,29814=>1000,29815=>1000,29816=>1000,29817=>1000,29818=>1000,29819=>1000,29820=>1000,29821=>1000,29822=>1000,29823=>1000,29824=>1000,29825=>1000,29826=>1000,29827=>1000,29828=>1000,\r\n\t29829=>1000,29830=>1000,29831=>1000,29832=>1000,29833=>1000,29834=>1000,29835=>1000,29836=>1000,29837=>1000,29838=>1000,29839=>1000,29840=>1000,29841=>1000,29842=>1000,29843=>1000,29844=>1000,\r\n\t29845=>1000,29846=>1000,29847=>1000,29848=>1000,29849=>1000,29850=>1000,29851=>1000,29852=>1000,29853=>1000,29854=>1000,29855=>1000,29856=>1000,29857=>1000,29858=>1000,29859=>1000,29860=>1000,\r\n\t29861=>1000,29862=>1000,29863=>1000,29864=>1000,29865=>1000,29866=>1000,29867=>1000,29868=>1000,29869=>1000,29870=>1000,29871=>1000,29872=>1000,29873=>1000,29874=>1000,29875=>1000,29876=>1000,\r\n\t29877=>1000,29878=>1000,29879=>1000,29880=>1000,29881=>1000,29882=>1000,29883=>1000,29884=>1000,29885=>1000,29886=>1000,29887=>1000,29888=>1000,29889=>1000,29890=>1000,29891=>1000,29892=>1000,\r\n\t29893=>1000,29894=>1000,29895=>1000,29896=>1000,29897=>1000,29898=>1000,29899=>1000,29900=>1000,29901=>1000,29902=>1000,29903=>1000,29904=>1000,29905=>1000,29906=>1000,29907=>1000,29908=>1000,\r\n\t29909=>1000,29910=>1000,29911=>1000,29912=>1000,29913=>1000,29914=>1000,29915=>1000,29916=>1000,29917=>1000,29918=>1000,29919=>1000,29920=>1000,29921=>1000,29922=>1000,29923=>1000,29924=>1000,\r\n\t29925=>1000,29926=>1000,29927=>1000,29928=>1000,29929=>1000,29930=>1000,29931=>1000,29932=>1000,29933=>1000,29934=>1000,29935=>1000,29936=>1000,29937=>1000,29938=>1000,29939=>1000,29940=>1000,\r\n\t29941=>1000,29942=>1000,29943=>1000,29944=>1000,29945=>1000,29946=>1000,29947=>1000,29948=>1000,29949=>1000,29950=>1000,29951=>1000,29952=>1000,29953=>1000,29954=>1000,29955=>1000,29956=>1000,\r\n\t29957=>1000,29958=>1000,29959=>1000,29960=>1000,29961=>1000,29962=>1000,29963=>1000,29964=>1000,29965=>1000,29966=>1000,29967=>1000,29968=>1000,29969=>1000,29970=>1000,29971=>1000,29972=>1000,\r\n\t29973=>1000,29974=>1000,29975=>1000,29976=>1000,29977=>1000,29978=>1000,29979=>1000,29980=>1000,29981=>1000,29982=>1000,29983=>1000,29984=>1000,29985=>1000,29986=>1000,29987=>1000,29988=>1000,\r\n\t29989=>1000,29990=>1000,29991=>1000,29992=>1000,29993=>1000,29994=>1000,29995=>1000,29996=>1000,29997=>1000,29998=>1000,29999=>1000,30000=>1000,30001=>1000,30002=>1000,30003=>1000,30004=>1000,\r\n\t30005=>1000,30006=>1000,30007=>1000,30008=>1000,30009=>1000,30010=>1000,30011=>1000,30012=>1000,30013=>1000,30014=>1000,30015=>1000,30016=>1000,30017=>1000,30018=>1000,30019=>1000,30020=>1000,\r\n\t30021=>1000,30022=>1000,30023=>1000,30024=>1000,30025=>1000,30026=>1000,30027=>1000,30028=>1000,30029=>1000,30030=>1000,30031=>1000,30032=>1000,30033=>1000,30034=>1000,30035=>1000,30036=>1000,\r\n\t30037=>1000,30038=>1000,30039=>1000,30040=>1000,30041=>1000,30042=>1000,30043=>1000,30044=>1000,30045=>1000,30046=>1000,30047=>1000,30048=>1000,30049=>1000,30050=>1000,30051=>1000,30052=>1000,\r\n\t30053=>1000,30054=>1000,30055=>1000,30056=>1000,30057=>1000,30058=>1000,30059=>1000,30060=>1000,30061=>1000,30062=>1000,30063=>1000,30064=>1000,30065=>1000,30066=>1000,30067=>1000,30068=>1000,\r\n\t30069=>1000,30070=>1000,30071=>1000,30072=>1000,30073=>1000,30074=>1000,30075=>1000,30076=>1000,30077=>1000,30078=>1000,30079=>1000,30080=>1000,30081=>1000,30082=>1000,30083=>1000,30084=>1000,\r\n\t30085=>1000,30086=>1000,30087=>1000,30088=>1000,30089=>1000,30090=>1000,30091=>1000,30092=>1000,30093=>1000,30094=>1000,30095=>1000,30096=>1000,30097=>1000,30098=>1000,30099=>1000,30100=>1000,\r\n\t30101=>1000,30102=>1000,30103=>1000,30104=>1000,30105=>1000,30106=>1000,30107=>1000,30108=>1000,30109=>1000,30110=>1000,30111=>1000,30112=>1000,30113=>1000,30114=>1000,30115=>1000,30116=>1000,\r\n\t30117=>1000,30118=>1000,30119=>1000,30120=>1000,30121=>1000,30122=>1000,30123=>1000,30124=>1000,30125=>1000,30126=>1000,30127=>1000,30128=>1000,30129=>1000,30130=>1000,30131=>1000,30132=>1000,\r\n\t30133=>1000,30134=>1000,30135=>1000,30136=>1000,30137=>1000,30138=>1000,30139=>1000,30140=>1000,30141=>1000,30142=>1000,30143=>1000,30144=>1000,30145=>1000,30146=>1000,30147=>1000,30148=>1000,\r\n\t30149=>1000,30150=>1000,30151=>1000,30152=>1000,30153=>1000,30154=>1000,30155=>1000,30156=>1000,30157=>1000,30158=>1000,30159=>1000,30160=>1000,30161=>1000,30162=>1000,30163=>1000,30164=>1000,\r\n\t30165=>1000,30166=>1000,30167=>1000,30168=>1000,30169=>1000,30170=>1000,30171=>1000,30172=>1000,30173=>1000,30174=>1000,30175=>1000,30176=>1000,30177=>1000,30178=>1000,30179=>1000,30180=>1000,\r\n\t30181=>1000,30182=>1000,30183=>1000,30184=>1000,30185=>1000,30186=>1000,30187=>1000,30188=>1000,30189=>1000,30190=>1000,30191=>1000,30192=>1000,30193=>1000,30194=>1000,30195=>1000,30196=>1000,\r\n\t30197=>1000,30198=>1000,30199=>1000,30200=>1000,30201=>1000,30202=>1000,30203=>1000,30204=>1000,30205=>1000,30206=>1000,30207=>1000,30208=>1000,30209=>1000,30210=>1000,30211=>1000,30212=>1000,\r\n\t30213=>1000,30214=>1000,30215=>1000,30216=>1000,30217=>1000,30218=>1000,30219=>1000,30220=>1000,30221=>1000,30222=>1000,30223=>1000,30224=>1000,30225=>1000,30226=>1000,30227=>1000,30228=>1000,\r\n\t30229=>1000,30230=>1000,30231=>1000,30232=>1000,30233=>1000,30234=>1000,30235=>1000,30236=>1000,30237=>1000,30238=>1000,30239=>1000,30240=>1000,30241=>1000,30242=>1000,30243=>1000,30244=>1000,\r\n\t30245=>1000,30246=>1000,30247=>1000,30248=>1000,30249=>1000,30250=>1000,30251=>1000,30252=>1000,30253=>1000,30254=>1000,30255=>1000,30256=>1000,30257=>1000,30258=>1000,30259=>1000,30260=>1000,\r\n\t30261=>1000,30262=>1000,30263=>1000,30264=>1000,30265=>1000,30266=>1000,30267=>1000,30268=>1000,30269=>1000,30270=>1000,30271=>1000,30272=>1000,30273=>1000,30274=>1000,30275=>1000,30276=>1000,\r\n\t30277=>1000,30278=>1000,30279=>1000,30280=>1000,30281=>1000,30282=>1000,30283=>1000,30284=>1000,30285=>1000,30286=>1000,30287=>1000,30288=>1000,30289=>1000,30290=>1000,30291=>1000,30292=>1000,\r\n\t30293=>1000,30294=>1000,30295=>1000,30296=>1000,30297=>1000,30298=>1000,30299=>1000,30300=>1000,30301=>1000,30302=>1000,30303=>1000,30304=>1000,30305=>1000,30306=>1000,30307=>1000,30308=>1000,\r\n\t30309=>1000,30310=>1000,30311=>1000,30312=>1000,30313=>1000,30314=>1000,30315=>1000,30316=>1000,30317=>1000,30318=>1000,30319=>1000,30320=>1000,30321=>1000,30322=>1000,30323=>1000,30324=>1000,\r\n\t30325=>1000,30326=>1000,30327=>1000,30328=>1000,30329=>1000,30330=>1000,30331=>1000,30332=>1000,30333=>1000,30334=>1000,30335=>1000,30336=>1000,30337=>1000,30338=>1000,30339=>1000,30340=>1000,\r\n\t30341=>1000,30342=>1000,30343=>1000,30344=>1000,30345=>1000,30346=>1000,30347=>1000,30348=>1000,30349=>1000,30350=>1000,30351=>1000,30352=>1000,30353=>1000,30354=>1000,30355=>1000,30356=>1000,\r\n\t30357=>1000,30358=>1000,30359=>1000,30360=>1000,30361=>1000,30362=>1000,30363=>1000,30364=>1000,30365=>1000,30366=>1000,30367=>1000,30368=>1000,30369=>1000,30370=>1000,30371=>1000,30372=>1000,\r\n\t30373=>1000,30374=>1000,30375=>1000,30376=>1000,30377=>1000,30378=>1000,30379=>1000,30380=>1000,30381=>1000,30382=>1000,30383=>1000,30384=>1000,30385=>1000,30386=>1000,30387=>1000,30388=>1000,\r\n\t30389=>1000,30390=>1000,30391=>1000,30392=>1000,30393=>1000,30394=>1000,30395=>1000,30396=>1000,30397=>1000,30398=>1000,30399=>1000,30400=>1000,30401=>1000,30402=>1000,30403=>1000,30404=>1000,\r\n\t30405=>1000,30406=>1000,30407=>1000,30408=>1000,30409=>1000,30410=>1000,30411=>1000,30412=>1000,30413=>1000,30414=>1000,30415=>1000,30416=>1000,30417=>1000,30418=>1000,30419=>1000,30420=>1000,\r\n\t30421=>1000,30422=>1000,30423=>1000,30424=>1000,30425=>1000,30426=>1000,30427=>1000,30428=>1000,30429=>1000,30430=>1000,30431=>1000,30432=>1000,30433=>1000,30434=>1000,30435=>1000,30436=>1000,\r\n\t30437=>1000,30438=>1000,30439=>1000,30440=>1000,30441=>1000,30442=>1000,30443=>1000,30444=>1000,30445=>1000,30446=>1000,30447=>1000,30448=>1000,30449=>1000,30450=>1000,30451=>1000,30452=>1000,\r\n\t30453=>1000,30454=>1000,30455=>1000,30456=>1000,30457=>1000,30458=>1000,30459=>1000,30460=>1000,30461=>1000,30462=>1000,30463=>1000,30464=>1000,30465=>1000,30466=>1000,30467=>1000,30468=>1000,\r\n\t30469=>1000,30470=>1000,30471=>1000,30472=>1000,30473=>1000,30474=>1000,30475=>1000,30476=>1000,30477=>1000,30478=>1000,30479=>1000,30480=>1000,30481=>1000,30482=>1000,30483=>1000,30484=>1000,\r\n\t30485=>1000,30486=>1000,30487=>1000,30488=>1000,30489=>1000,30490=>1000,30491=>1000,30492=>1000,30493=>1000,30494=>1000,30495=>1000,30496=>1000,30497=>1000,30498=>1000,30499=>1000,30500=>1000,\r\n\t30501=>1000,30502=>1000,30503=>1000,30504=>1000,30505=>1000,30506=>1000,30507=>1000,30508=>1000,30509=>1000,30510=>1000,30511=>1000,30512=>1000,30513=>1000,30514=>1000,30515=>1000,30516=>1000,\r\n\t30517=>1000,30518=>1000,30519=>1000,30520=>1000,30521=>1000,30522=>1000,30523=>1000,30524=>1000,30525=>1000,30526=>1000,30527=>1000,30528=>1000,30529=>1000,30530=>1000,30531=>1000,30532=>1000,\r\n\t30533=>1000,30534=>1000,30535=>1000,30536=>1000,30537=>1000,30538=>1000,30539=>1000,30540=>1000,30541=>1000,30542=>1000,30543=>1000,30544=>1000,30545=>1000,30546=>1000,30547=>1000,30548=>1000,\r\n\t30549=>1000,30550=>1000,30551=>1000,30552=>1000,30553=>1000,30554=>1000,30555=>1000,30556=>1000,30557=>1000,30558=>1000,30559=>1000,30560=>1000,30561=>1000,30562=>1000,30563=>1000,30564=>1000,\r\n\t30565=>1000,30566=>1000,30567=>1000,30568=>1000,30569=>1000,30570=>1000,30571=>1000,30572=>1000,30573=>1000,30574=>1000,30575=>1000,30576=>1000,30577=>1000,30578=>1000,30579=>1000,30580=>1000,\r\n\t30581=>1000,30582=>1000,30583=>1000,30584=>1000,30585=>1000,30586=>1000,30587=>1000,30588=>1000,30589=>1000,30590=>1000,30591=>1000,30592=>1000,30593=>1000,30594=>1000,30595=>1000,30596=>1000,\r\n\t30597=>1000,30598=>1000,30599=>1000,30600=>1000,30601=>1000,30602=>1000,30603=>1000,30604=>1000,30605=>1000,30606=>1000,30607=>1000,30608=>1000,30609=>1000,30610=>1000,30611=>1000,30612=>1000,\r\n\t30613=>1000,30614=>1000,30615=>1000,30616=>1000,30617=>1000,30618=>1000,30619=>1000,30620=>1000,30621=>1000,30622=>1000,30623=>1000,30624=>1000,30625=>1000,30626=>1000,30627=>1000,30628=>1000,\r\n\t30629=>1000,30630=>1000,30631=>1000,30632=>1000,30633=>1000,30634=>1000,30635=>1000,30636=>1000,30637=>1000,30638=>1000,30639=>1000,30640=>1000,30641=>1000,30642=>1000,30643=>1000,30644=>1000,\r\n\t30645=>1000,30646=>1000,30647=>1000,30648=>1000,30649=>1000,30650=>1000,30651=>1000,30652=>1000,30653=>1000,30654=>1000,30655=>1000,30656=>1000,30657=>1000,30658=>1000,30659=>1000,30660=>1000,\r\n\t30661=>1000,30662=>1000,30663=>1000,30664=>1000,30665=>1000,30666=>1000,30667=>1000,30668=>1000,30669=>1000,30670=>1000,30671=>1000,30672=>1000,30673=>1000,30674=>1000,30675=>1000,30676=>1000,\r\n\t30677=>1000,30678=>1000,30679=>1000,30680=>1000,30681=>1000,30682=>1000,30683=>1000,30684=>1000,30685=>1000,30686=>1000,30687=>1000,30688=>1000,30689=>1000,30690=>1000,30691=>1000,30692=>1000,\r\n\t30693=>1000,30694=>1000,30695=>1000,30696=>1000,30697=>1000,30698=>1000,30699=>1000,30700=>1000,30701=>1000,30702=>1000,30703=>1000,30704=>1000,30705=>1000,30706=>1000,30707=>1000,30708=>1000,\r\n\t30709=>1000,30710=>1000,30711=>1000,30712=>1000,30713=>1000,30714=>1000,30715=>1000,30716=>1000,30717=>1000,30718=>1000,30719=>1000,30720=>1000,30721=>1000,30722=>1000,30723=>1000,30724=>1000,\r\n\t30725=>1000,30726=>1000,30727=>1000,30728=>1000,30729=>1000,30730=>1000,30731=>1000,30732=>1000,30733=>1000,30734=>1000,30735=>1000,30736=>1000,30737=>1000,30738=>1000,30739=>1000,30740=>1000,\r\n\t30741=>1000,30742=>1000,30743=>1000,30744=>1000,30745=>1000,30746=>1000,30747=>1000,30748=>1000,30749=>1000,30750=>1000,30751=>1000,30752=>1000,30753=>1000,30754=>1000,30755=>1000,30756=>1000,\r\n\t30757=>1000,30758=>1000,30759=>1000,30760=>1000,30761=>1000,30762=>1000,30763=>1000,30764=>1000,30765=>1000,30766=>1000,30767=>1000,30768=>1000,30769=>1000,30770=>1000,30771=>1000,30772=>1000,\r\n\t30773=>1000,30774=>1000,30775=>1000,30776=>1000,30777=>1000,30778=>1000,30779=>1000,30780=>1000,30781=>1000,30782=>1000,30783=>1000,30784=>1000,30785=>1000,30786=>1000,30787=>1000,30788=>1000,\r\n\t30789=>1000,30790=>1000,30791=>1000,30792=>1000,30793=>1000,30794=>1000,30795=>1000,30796=>1000,30797=>1000,30798=>1000,30799=>1000,30800=>1000,30801=>1000,30802=>1000,30803=>1000,30804=>1000,\r\n\t30805=>1000,30806=>1000,30807=>1000,30808=>1000,30809=>1000,30810=>1000,30811=>1000,30812=>1000,30813=>1000,30814=>1000,30815=>1000,30816=>1000,30817=>1000,30818=>1000,30819=>1000,30820=>1000,\r\n\t30821=>1000,30822=>1000,30823=>1000,30824=>1000,30825=>1000,30826=>1000,30827=>1000,30828=>1000,30829=>1000,30830=>1000,30831=>1000,30832=>1000,30833=>1000,30834=>1000,30835=>1000,30836=>1000,\r\n\t30837=>1000,30838=>1000,30839=>1000,30840=>1000,30841=>1000,30842=>1000,30843=>1000,30844=>1000,30845=>1000,30846=>1000,30847=>1000,30848=>1000,30849=>1000,30850=>1000,30851=>1000,30852=>1000,\r\n\t30853=>1000,30854=>1000,30855=>1000,30856=>1000,30857=>1000,30858=>1000,30859=>1000,30860=>1000,30861=>1000,30862=>1000,30863=>1000,30864=>1000,30865=>1000,30866=>1000,30867=>1000,30868=>1000,\r\n\t30869=>1000,30870=>1000,30871=>1000,30872=>1000,30873=>1000,30874=>1000,30875=>1000,30876=>1000,30877=>1000,30878=>1000,30879=>1000,30880=>1000,30881=>1000,30882=>1000,30883=>1000,30884=>1000,\r\n\t30885=>1000,30886=>1000,30887=>1000,30888=>1000,30889=>1000,30890=>1000,30891=>1000,30892=>1000,30893=>1000,30894=>1000,30895=>1000,30896=>1000,30897=>1000,30898=>1000,30899=>1000,30900=>1000,\r\n\t30901=>1000,30902=>1000,30903=>1000,30904=>1000,30905=>1000,30906=>1000,30907=>1000,30908=>1000,30909=>1000,30910=>1000,30911=>1000,30912=>1000,30913=>1000,30914=>1000,30915=>1000,30916=>1000,\r\n\t30917=>1000,30918=>1000,30919=>1000,30920=>1000,30921=>1000,30922=>1000,30923=>1000,30924=>1000,30925=>1000,30926=>1000,30927=>1000,30928=>1000,30929=>1000,30930=>1000,30931=>1000,30932=>1000,\r\n\t30933=>1000,30934=>1000,30935=>1000,30936=>1000,30937=>1000,30938=>1000,30939=>1000,30940=>1000,30941=>1000,30942=>1000,30943=>1000,30944=>1000,30945=>1000,30946=>1000,30947=>1000,30948=>1000,\r\n\t30949=>1000,30950=>1000,30951=>1000,30952=>1000,30953=>1000,30954=>1000,30955=>1000,30956=>1000,30957=>1000,30958=>1000,30959=>1000,30960=>1000,30961=>1000,30962=>1000,30963=>1000,30964=>1000,\r\n\t30965=>1000,30966=>1000,30967=>1000,30968=>1000,30969=>1000,30970=>1000,30971=>1000,30972=>1000,30973=>1000,30974=>1000,30975=>1000,30976=>1000,30977=>1000,30978=>1000,30979=>1000,30980=>1000,\r\n\t30981=>1000,30982=>1000,30983=>1000,30984=>1000,30985=>1000,30986=>1000,30987=>1000,30988=>1000,30989=>1000,30990=>1000,30991=>1000,30992=>1000,30993=>1000,30994=>1000,30995=>1000,30996=>1000,\r\n\t30997=>1000,30998=>1000,30999=>1000,31000=>1000,31001=>1000,31002=>1000,31003=>1000,31004=>1000,31005=>1000,31006=>1000,31007=>1000,31008=>1000,31009=>1000,31010=>1000,31011=>1000,31012=>1000,\r\n\t31013=>1000,31014=>1000,31015=>1000,31016=>1000,31017=>1000,31018=>1000,31019=>1000,31020=>1000,31021=>1000,31022=>1000,31023=>1000,31024=>1000,31025=>1000,31026=>1000,31027=>1000,31028=>1000,\r\n\t31029=>1000,31030=>1000,31031=>1000,31032=>1000,31033=>1000,31034=>1000,31035=>1000,31036=>1000,31037=>1000,31038=>1000,31039=>1000,31040=>1000,31041=>1000,31042=>1000,31043=>1000,31044=>1000,\r\n\t31045=>1000,31046=>1000,31047=>1000,31048=>1000,31049=>1000,31050=>1000,31051=>1000,31052=>1000,31053=>1000,31054=>1000,31055=>1000,31056=>1000,31057=>1000,31058=>1000,31059=>1000,31060=>1000,\r\n\t31061=>1000,31062=>1000,31063=>1000,31064=>1000,31065=>1000,31066=>1000,31067=>1000,31068=>1000,31069=>1000,31070=>1000,31071=>1000,31072=>1000,31073=>1000,31074=>1000,31075=>1000,31076=>1000,\r\n\t31077=>1000,31078=>1000,31079=>1000,31080=>1000,31081=>1000,31082=>1000,31083=>1000,31084=>1000,31085=>1000,31086=>1000,31087=>1000,31088=>1000,31089=>1000,31090=>1000,31091=>1000,31092=>1000,\r\n\t31093=>1000,31094=>1000,31095=>1000,31096=>1000,31097=>1000,31098=>1000,31099=>1000,31100=>1000,31101=>1000,31102=>1000,31103=>1000,31104=>1000,31105=>1000,31106=>1000,31107=>1000,31108=>1000,\r\n\t31109=>1000,31110=>1000,31111=>1000,31112=>1000,31113=>1000,31114=>1000,31115=>1000,31116=>1000,31117=>1000,31118=>1000,31119=>1000,31120=>1000,31121=>1000,31122=>1000,31123=>1000,31124=>1000,\r\n\t31125=>1000,31126=>1000,31127=>1000,31128=>1000,31129=>1000,31130=>1000,31131=>1000,31132=>1000,31133=>1000,31134=>1000,31135=>1000,31136=>1000,31137=>1000,31138=>1000,31139=>1000,31140=>1000,\r\n\t31141=>1000,31142=>1000,31143=>1000,31144=>1000,31145=>1000,31146=>1000,31147=>1000,31148=>1000,31149=>1000,31150=>1000,31151=>1000,31152=>1000,31153=>1000,31154=>1000,31155=>1000,31156=>1000,\r\n\t31157=>1000,31158=>1000,31159=>1000,31160=>1000,31161=>1000,31162=>1000,31163=>1000,31164=>1000,31165=>1000,31166=>1000,31167=>1000,31168=>1000,31169=>1000,31170=>1000,31171=>1000,31172=>1000,\r\n\t31173=>1000,31174=>1000,31175=>1000,31176=>1000,31177=>1000,31178=>1000,31179=>1000,31180=>1000,31181=>1000,31182=>1000,31183=>1000,31184=>1000,31185=>1000,31186=>1000,31187=>1000,31188=>1000,\r\n\t31189=>1000,31190=>1000,31191=>1000,31192=>1000,31193=>1000,31194=>1000,31195=>1000,31196=>1000,31197=>1000,31198=>1000,31199=>1000,31200=>1000,31201=>1000,31202=>1000,31203=>1000,31204=>1000,\r\n\t31205=>1000,31206=>1000,31207=>1000,31208=>1000,31209=>1000,31210=>1000,31211=>1000,31212=>1000,31213=>1000,31214=>1000,31215=>1000,31216=>1000,31217=>1000,31218=>1000,31219=>1000,31220=>1000,\r\n\t31221=>1000,31222=>1000,31223=>1000,31224=>1000,31225=>1000,31226=>1000,31227=>1000,31228=>1000,31229=>1000,31230=>1000,31231=>1000,31232=>1000,31233=>1000,31234=>1000,31235=>1000,31236=>1000,\r\n\t31237=>1000,31238=>1000,31239=>1000,31240=>1000,31241=>1000,31242=>1000,31243=>1000,31244=>1000,31245=>1000,31246=>1000,31247=>1000,31248=>1000,31249=>1000,31250=>1000,31251=>1000,31252=>1000,\r\n\t31253=>1000,31254=>1000,31255=>1000,31256=>1000,31257=>1000,31258=>1000,31259=>1000,31260=>1000,31261=>1000,31262=>1000,31263=>1000,31264=>1000,31265=>1000,31266=>1000,31267=>1000,31268=>1000,\r\n\t31269=>1000,31270=>1000,31271=>1000,31272=>1000,31273=>1000,31274=>1000,31275=>1000,31276=>1000,31277=>1000,31278=>1000,31279=>1000,31280=>1000,31281=>1000,31282=>1000,31283=>1000,31284=>1000,\r\n\t31285=>1000,31286=>1000,31287=>1000,31288=>1000,31289=>1000,31290=>1000,31291=>1000,31292=>1000,31293=>1000,31294=>1000,31295=>1000,31296=>1000,31297=>1000,31298=>1000,31299=>1000,31300=>1000,\r\n\t31301=>1000,31302=>1000,31303=>1000,31304=>1000,31305=>1000,31306=>1000,31307=>1000,31308=>1000,31309=>1000,31310=>1000,31311=>1000,31312=>1000,31313=>1000,31314=>1000,31315=>1000,31316=>1000,\r\n\t31317=>1000,31318=>1000,31319=>1000,31320=>1000,31321=>1000,31322=>1000,31323=>1000,31324=>1000,31325=>1000,31326=>1000,31327=>1000,31328=>1000,31329=>1000,31330=>1000,31331=>1000,31332=>1000,\r\n\t31333=>1000,31334=>1000,31335=>1000,31336=>1000,31337=>1000,31338=>1000,31339=>1000,31340=>1000,31341=>1000,31342=>1000,31343=>1000,31344=>1000,31345=>1000,31346=>1000,31347=>1000,31348=>1000,\r\n\t31349=>1000,31350=>1000,31351=>1000,31352=>1000,31353=>1000,31354=>1000,31355=>1000,31356=>1000,31357=>1000,31358=>1000,31359=>1000,31360=>1000,31361=>1000,31362=>1000,31363=>1000,31364=>1000,\r\n\t31365=>1000,31366=>1000,31367=>1000,31368=>1000,31369=>1000,31370=>1000,31371=>1000,31372=>1000,31373=>1000,31374=>1000,31375=>1000,31376=>1000,31377=>1000,31378=>1000,31379=>1000,31380=>1000,\r\n\t31381=>1000,31382=>1000,31383=>1000,31384=>1000,31385=>1000,31386=>1000,31387=>1000,31388=>1000,31389=>1000,31390=>1000,31391=>1000,31392=>1000,31393=>1000,31394=>1000,31395=>1000,31396=>1000,\r\n\t31397=>1000,31398=>1000,31399=>1000,31400=>1000,31401=>1000,31402=>1000,31403=>1000,31404=>1000,31405=>1000,31406=>1000,31407=>1000,31408=>1000,31409=>1000,31410=>1000,31411=>1000,31412=>1000,\r\n\t31413=>1000,31414=>1000,31415=>1000,31416=>1000,31417=>1000,31418=>1000,31419=>1000,31420=>1000,31421=>1000,31422=>1000,31423=>1000,31424=>1000,31425=>1000,31426=>1000,31427=>1000,31428=>1000,\r\n\t31429=>1000,31430=>1000,31431=>1000,31432=>1000,31433=>1000,31434=>1000,31435=>1000,31436=>1000,31437=>1000,31438=>1000,31439=>1000,31440=>1000,31441=>1000,31442=>1000,31443=>1000,31444=>1000,\r\n\t31445=>1000,31446=>1000,31447=>1000,31448=>1000,31449=>1000,31450=>1000,31451=>1000,31452=>1000,31453=>1000,31454=>1000,31455=>1000,31456=>1000,31457=>1000,31458=>1000,31459=>1000,31460=>1000,\r\n\t31461=>1000,31462=>1000,31463=>1000,31464=>1000,31465=>1000,31466=>1000,31467=>1000,31468=>1000,31469=>1000,31470=>1000,31471=>1000,31472=>1000,31473=>1000,31474=>1000,31475=>1000,31476=>1000,\r\n\t31477=>1000,31478=>1000,31479=>1000,31480=>1000,31481=>1000,31482=>1000,31483=>1000,31484=>1000,31485=>1000,31486=>1000,31487=>1000,31488=>1000,31489=>1000,31490=>1000,31491=>1000,31492=>1000,\r\n\t31493=>1000,31494=>1000,31495=>1000,31496=>1000,31497=>1000,31498=>1000,31499=>1000,31500=>1000,31501=>1000,31502=>1000,31503=>1000,31504=>1000,31505=>1000,31506=>1000,31507=>1000,31508=>1000,\r\n\t31509=>1000,31510=>1000,31511=>1000,31512=>1000,31513=>1000,31514=>1000,31515=>1000,31516=>1000,31517=>1000,31518=>1000,31519=>1000,31520=>1000,31521=>1000,31522=>1000,31523=>1000,31524=>1000,\r\n\t31525=>1000,31526=>1000,31527=>1000,31528=>1000,31529=>1000,31530=>1000,31531=>1000,31532=>1000,31533=>1000,31534=>1000,31535=>1000,31536=>1000,31537=>1000,31538=>1000,31539=>1000,31540=>1000,\r\n\t31541=>1000,31542=>1000,31543=>1000,31544=>1000,31545=>1000,31546=>1000,31547=>1000,31548=>1000,31549=>1000,31550=>1000,31551=>1000,31552=>1000,31553=>1000,31554=>1000,31555=>1000,31556=>1000,\r\n\t31557=>1000,31558=>1000,31559=>1000,31560=>1000,31561=>1000,31562=>1000,31563=>1000,31564=>1000,31565=>1000,31566=>1000,31567=>1000,31568=>1000,31569=>1000,31570=>1000,31571=>1000,31572=>1000,\r\n\t31573=>1000,31574=>1000,31575=>1000,31576=>1000,31577=>1000,31578=>1000,31579=>1000,31580=>1000,31581=>1000,31582=>1000,31583=>1000,31584=>1000,31585=>1000,31586=>1000,31587=>1000,31588=>1000,\r\n\t31589=>1000,31590=>1000,31591=>1000,31592=>1000,31593=>1000,31594=>1000,31595=>1000,31596=>1000,31597=>1000,31598=>1000,31599=>1000,31600=>1000,31601=>1000,31602=>1000,31603=>1000,31604=>1000,\r\n\t31605=>1000,31606=>1000,31607=>1000,31608=>1000,31609=>1000,31610=>1000,31611=>1000,31612=>1000,31613=>1000,31614=>1000,31615=>1000,31616=>1000,31617=>1000,31618=>1000,31619=>1000,31620=>1000,\r\n\t31621=>1000,31622=>1000,31623=>1000,31624=>1000,31625=>1000,31626=>1000,31627=>1000,31628=>1000,31629=>1000,31630=>1000,31631=>1000,31632=>1000,31633=>1000,31634=>1000,31635=>1000,31636=>1000,\r\n\t31637=>1000,31638=>1000,31639=>1000,31640=>1000,31641=>1000,31642=>1000,31643=>1000,31644=>1000,31645=>1000,31646=>1000,31647=>1000,31648=>1000,31649=>1000,31650=>1000,31651=>1000,31652=>1000,\r\n\t31653=>1000,31654=>1000,31655=>1000,31656=>1000,31657=>1000,31658=>1000,31659=>1000,31660=>1000,31661=>1000,31662=>1000,31663=>1000,31664=>1000,31665=>1000,31666=>1000,31667=>1000,31668=>1000,\r\n\t31669=>1000,31670=>1000,31671=>1000,31672=>1000,31673=>1000,31674=>1000,31675=>1000,31676=>1000,31677=>1000,31678=>1000,31679=>1000,31680=>1000,31681=>1000,31682=>1000,31683=>1000,31684=>1000,\r\n\t31685=>1000,31686=>1000,31687=>1000,31688=>1000,31689=>1000,31690=>1000,31691=>1000,31692=>1000,31693=>1000,31694=>1000,31695=>1000,31696=>1000,31697=>1000,31698=>1000,31699=>1000,31700=>1000,\r\n\t31701=>1000,31702=>1000,31703=>1000,31704=>1000,31705=>1000,31706=>1000,31707=>1000,31708=>1000,31709=>1000,31710=>1000,31711=>1000,31712=>1000,31713=>1000,31714=>1000,31715=>1000,31716=>1000,\r\n\t31717=>1000,31718=>1000,31719=>1000,31720=>1000,31721=>1000,31722=>1000,31723=>1000,31724=>1000,31725=>1000,31726=>1000,31727=>1000,31728=>1000,31729=>1000,31730=>1000,31731=>1000,31732=>1000,\r\n\t31733=>1000,31734=>1000,31735=>1000,31736=>1000,31737=>1000,31738=>1000,31739=>1000,31740=>1000,31741=>1000,31742=>1000,31743=>1000,31744=>1000,31745=>1000,31746=>1000,31747=>1000,31748=>1000,\r\n\t31749=>1000,31750=>1000,31751=>1000,31752=>1000,31753=>1000,31754=>1000,31755=>1000,31756=>1000,31757=>1000,31758=>1000,31759=>1000,31760=>1000,31761=>1000,31762=>1000,31763=>1000,31764=>1000,\r\n\t31765=>1000,31766=>1000,31767=>1000,31768=>1000,31769=>1000,31770=>1000,31771=>1000,31772=>1000,31773=>1000,31774=>1000,31775=>1000,31776=>1000,31777=>1000,31778=>1000,31779=>1000,31780=>1000,\r\n\t31781=>1000,31782=>1000,31783=>1000,31784=>1000,31785=>1000,31786=>1000,31787=>1000,31788=>1000,31789=>1000,31790=>1000,31791=>1000,31792=>1000,31793=>1000,31794=>1000,31795=>1000,31796=>1000,\r\n\t31797=>1000,31798=>1000,31799=>1000,31800=>1000,31801=>1000,31802=>1000,31803=>1000,31804=>1000,31805=>1000,31806=>1000,31807=>1000,31808=>1000,31809=>1000,31810=>1000,31811=>1000,31812=>1000,\r\n\t31813=>1000,31814=>1000,31815=>1000,31816=>1000,31817=>1000,31818=>1000,31819=>1000,31820=>1000,31821=>1000,31822=>1000,31823=>1000,31824=>1000,31825=>1000,31826=>1000,31827=>1000,31828=>1000,\r\n\t31829=>1000,31830=>1000,31831=>1000,31832=>1000,31833=>1000,31834=>1000,31835=>1000,31836=>1000,31837=>1000,31838=>1000,31839=>1000,31840=>1000,31841=>1000,31842=>1000,31843=>1000,31844=>1000,\r\n\t31845=>1000,31846=>1000,31847=>1000,31848=>1000,31849=>1000,31850=>1000,31851=>1000,31852=>1000,31853=>1000,31854=>1000,31855=>1000,31856=>1000,31857=>1000,31858=>1000,31859=>1000,31860=>1000,\r\n\t31861=>1000,31862=>1000,31863=>1000,31864=>1000,31865=>1000,31866=>1000,31867=>1000,31868=>1000,31869=>1000,31870=>1000,31871=>1000,31872=>1000,31873=>1000,31874=>1000,31875=>1000,31876=>1000,\r\n\t31877=>1000,31878=>1000,31879=>1000,31880=>1000,31881=>1000,31882=>1000,31883=>1000,31884=>1000,31885=>1000,31886=>1000,31887=>1000,31888=>1000,31889=>1000,31890=>1000,31891=>1000,31892=>1000,\r\n\t31893=>1000,31894=>1000,31895=>1000,31896=>1000,31897=>1000,31898=>1000,31899=>1000,31900=>1000,31901=>1000,31902=>1000,31903=>1000,31904=>1000,31905=>1000,31906=>1000,31907=>1000,31908=>1000,\r\n\t31909=>1000,31910=>1000,31911=>1000,31912=>1000,31913=>1000,31914=>1000,31915=>1000,31916=>1000,31917=>1000,31918=>1000,31919=>1000,31920=>1000,31921=>1000,31922=>1000,31923=>1000,31924=>1000,\r\n\t31925=>1000,31926=>1000,31927=>1000,31928=>1000,31929=>1000,31930=>1000,31931=>1000,31932=>1000,31933=>1000,31934=>1000,31935=>1000,31936=>1000,31937=>1000,31938=>1000,31939=>1000,31940=>1000,\r\n\t31941=>1000,31942=>1000,31943=>1000,31944=>1000,31945=>1000,31946=>1000,31947=>1000,31948=>1000,31949=>1000,31950=>1000,31951=>1000,31952=>1000,31953=>1000,31954=>1000,31955=>1000,31956=>1000,\r\n\t31957=>1000,31958=>1000,31959=>1000,31960=>1000,31961=>1000,31962=>1000,31963=>1000,31964=>1000,31965=>1000,31966=>1000,31967=>1000,31968=>1000,31969=>1000,31970=>1000,31971=>1000,31972=>1000,\r\n\t31973=>1000,31974=>1000,31975=>1000,31976=>1000,31977=>1000,31978=>1000,31979=>1000,31980=>1000,31981=>1000,31982=>1000,31983=>1000,31984=>1000,31985=>1000,31986=>1000,31987=>1000,31988=>1000,\r\n\t31989=>1000,31990=>1000,31991=>1000,31992=>1000,31993=>1000,31994=>1000,31995=>1000,31996=>1000,31997=>1000,31998=>1000,31999=>1000,32000=>1000,32001=>1000,32002=>1000,32003=>1000,32004=>1000,\r\n\t32005=>1000,32006=>1000,32007=>1000,32008=>1000,32009=>1000,32010=>1000,32011=>1000,32012=>1000,32013=>1000,32014=>1000,32015=>1000,32016=>1000,32017=>1000,32018=>1000,32019=>1000,32020=>1000,\r\n\t32021=>1000,32022=>1000,32023=>1000,32024=>1000,32025=>1000,32026=>1000,32027=>1000,32028=>1000,32029=>1000,32030=>1000,32031=>1000,32032=>1000,32033=>1000,32034=>1000,32035=>1000,32036=>1000,\r\n\t32037=>1000,32038=>1000,32039=>1000,32040=>1000,32041=>1000,32042=>1000,32043=>1000,32044=>1000,32045=>1000,32046=>1000,32047=>1000,32048=>1000,32049=>1000,32050=>1000,32051=>1000,32052=>1000,\r\n\t32053=>1000,32054=>1000,32055=>1000,32056=>1000,32057=>1000,32058=>1000,32059=>1000,32060=>1000,32061=>1000,32062=>1000,32063=>1000,32064=>1000,32065=>1000,32066=>1000,32067=>1000,32068=>1000,\r\n\t32069=>1000,32070=>1000,32071=>1000,32072=>1000,32073=>1000,32074=>1000,32075=>1000,32076=>1000,32077=>1000,32078=>1000,32079=>1000,32080=>1000,32081=>1000,32082=>1000,32083=>1000,32084=>1000,\r\n\t32085=>1000,32086=>1000,32087=>1000,32088=>1000,32089=>1000,32090=>1000,32091=>1000,32092=>1000,32093=>1000,32094=>1000,32095=>1000,32096=>1000,32097=>1000,32098=>1000,32099=>1000,32100=>1000,\r\n\t32101=>1000,32102=>1000,32103=>1000,32104=>1000,32105=>1000,32106=>1000,32107=>1000,32108=>1000,32109=>1000,32110=>1000,32111=>1000,32112=>1000,32113=>1000,32114=>1000,32115=>1000,32116=>1000,\r\n\t32117=>1000,32118=>1000,32119=>1000,32120=>1000,32121=>1000,32122=>1000,32123=>1000,32124=>1000,32125=>1000,32126=>1000,32127=>1000,32128=>1000,32129=>1000,32130=>1000,32131=>1000,32132=>1000,\r\n\t32133=>1000,32134=>1000,32135=>1000,32136=>1000,32137=>1000,32138=>1000,32139=>1000,32140=>1000,32141=>1000,32142=>1000,32143=>1000,32144=>1000,32145=>1000,32146=>1000,32147=>1000,32148=>1000,\r\n\t32149=>1000,32150=>1000,32151=>1000,32152=>1000,32153=>1000,32154=>1000,32155=>1000,32156=>1000,32157=>1000,32158=>1000,32159=>1000,32160=>1000,32161=>1000,32162=>1000,32163=>1000,32164=>1000,\r\n\t32165=>1000,32166=>1000,32167=>1000,32168=>1000,32169=>1000,32170=>1000,32171=>1000,32172=>1000,32173=>1000,32174=>1000,32175=>1000,32176=>1000,32177=>1000,32178=>1000,32179=>1000,32180=>1000,\r\n\t32181=>1000,32182=>1000,32183=>1000,32184=>1000,32185=>1000,32186=>1000,32187=>1000,32188=>1000,32189=>1000,32190=>1000,32191=>1000,32192=>1000,32193=>1000,32194=>1000,32195=>1000,32196=>1000,\r\n\t32197=>1000,32198=>1000,32199=>1000,32200=>1000,32201=>1000,32202=>1000,32203=>1000,32204=>1000,32205=>1000,32206=>1000,32207=>1000,32208=>1000,32209=>1000,32210=>1000,32211=>1000,32212=>1000,\r\n\t32213=>1000,32214=>1000,32215=>1000,32216=>1000,32217=>1000,32218=>1000,32219=>1000,32220=>1000,32221=>1000,32222=>1000,32223=>1000,32224=>1000,32225=>1000,32226=>1000,32227=>1000,32228=>1000,\r\n\t32229=>1000,32230=>1000,32231=>1000,32232=>1000,32233=>1000,32234=>1000,32235=>1000,32236=>1000,32237=>1000,32238=>1000,32239=>1000,32240=>1000,32241=>1000,32242=>1000,32243=>1000,32244=>1000,\r\n\t32245=>1000,32246=>1000,32247=>1000,32248=>1000,32249=>1000,32250=>1000,32251=>1000,32252=>1000,32253=>1000,32254=>1000,32255=>1000,32256=>1000,32257=>1000,32258=>1000,32259=>1000,32260=>1000,\r\n\t32261=>1000,32262=>1000,32263=>1000,32264=>1000,32265=>1000,32266=>1000,32267=>1000,32268=>1000,32269=>1000,32270=>1000,32271=>1000,32272=>1000,32273=>1000,32274=>1000,32275=>1000,32276=>1000,\r\n\t32277=>1000,32278=>1000,32279=>1000,32280=>1000,32281=>1000,32282=>1000,32283=>1000,32284=>1000,32285=>1000,32286=>1000,32287=>1000,32288=>1000,32289=>1000,32290=>1000,32291=>1000,32292=>1000,\r\n\t32293=>1000,32294=>1000,32295=>1000,32296=>1000,32297=>1000,32298=>1000,32299=>1000,32300=>1000,32301=>1000,32302=>1000,32303=>1000,32304=>1000,32305=>1000,32306=>1000,32307=>1000,32308=>1000,\r\n\t32309=>1000,32310=>1000,32311=>1000,32312=>1000,32313=>1000,32314=>1000,32315=>1000,32316=>1000,32317=>1000,32318=>1000,32319=>1000,32320=>1000,32321=>1000,32322=>1000,32323=>1000,32324=>1000,\r\n\t32325=>1000,32326=>1000,32327=>1000,32328=>1000,32329=>1000,32330=>1000,32331=>1000,32332=>1000,32333=>1000,32334=>1000,32335=>1000,32336=>1000,32337=>1000,32338=>1000,32339=>1000,32340=>1000,\r\n\t32341=>1000,32342=>1000,32343=>1000,32344=>1000,32345=>1000,32346=>1000,32347=>1000,32348=>1000,32349=>1000,32350=>1000,32351=>1000,32352=>1000,32353=>1000,32354=>1000,32355=>1000,32356=>1000,\r\n\t32357=>1000,32358=>1000,32359=>1000,32360=>1000,32361=>1000,32362=>1000,32363=>1000,32364=>1000,32365=>1000,32366=>1000,32367=>1000,32368=>1000,32369=>1000,32370=>1000,32371=>1000,32372=>1000,\r\n\t32373=>1000,32374=>1000,32375=>1000,32376=>1000,32377=>1000,32378=>1000,32379=>1000,32380=>1000,32381=>1000,32382=>1000,32383=>1000,32384=>1000,32385=>1000,32386=>1000,32387=>1000,32388=>1000,\r\n\t32389=>1000,32390=>1000,32391=>1000,32392=>1000,32393=>1000,32394=>1000,32395=>1000,32396=>1000,32397=>1000,32398=>1000,32399=>1000,32400=>1000,32401=>1000,32402=>1000,32403=>1000,32404=>1000,\r\n\t32405=>1000,32406=>1000,32407=>1000,32408=>1000,32409=>1000,32410=>1000,32411=>1000,32412=>1000,32413=>1000,32414=>1000,32415=>1000,32416=>1000,32417=>1000,32418=>1000,32419=>1000,32420=>1000,\r\n\t32421=>1000,32422=>1000,32423=>1000,32424=>1000,32425=>1000,32426=>1000,32427=>1000,32428=>1000,32429=>1000,32430=>1000,32431=>1000,32432=>1000,32433=>1000,32434=>1000,32435=>1000,32436=>1000,\r\n\t32437=>1000,32438=>1000,32439=>1000,32440=>1000,32441=>1000,32442=>1000,32443=>1000,32444=>1000,32445=>1000,32446=>1000,32447=>1000,32448=>1000,32449=>1000,32450=>1000,32451=>1000,32452=>1000,\r\n\t32453=>1000,32454=>1000,32455=>1000,32456=>1000,32457=>1000,32458=>1000,32459=>1000,32460=>1000,32461=>1000,32462=>1000,32463=>1000,32464=>1000,32465=>1000,32466=>1000,32467=>1000,32468=>1000,\r\n\t32469=>1000,32470=>1000,32471=>1000,32472=>1000,32473=>1000,32474=>1000,32475=>1000,32476=>1000,32477=>1000,32478=>1000,32479=>1000,32480=>1000,32481=>1000,32482=>1000,32483=>1000,32484=>1000,\r\n\t32485=>1000,32486=>1000,32487=>1000,32488=>1000,32489=>1000,32490=>1000,32491=>1000,32492=>1000,32493=>1000,32494=>1000,32495=>1000,32496=>1000,32497=>1000,32498=>1000,32499=>1000,32500=>1000,\r\n\t32501=>1000,32502=>1000,32503=>1000,32504=>1000,32505=>1000,32506=>1000,32507=>1000,32508=>1000,32509=>1000,32510=>1000,32511=>1000,32512=>1000,32513=>1000,32514=>1000,32515=>1000,32516=>1000,\r\n\t32517=>1000,32518=>1000,32519=>1000,32520=>1000,32521=>1000,32522=>1000,32523=>1000,32524=>1000,32525=>1000,32526=>1000,32527=>1000,32528=>1000,32529=>1000,32530=>1000,32531=>1000,32532=>1000,\r\n\t32533=>1000,32534=>1000,32535=>1000,32536=>1000,32537=>1000,32538=>1000,32539=>1000,32540=>1000,32541=>1000,32542=>1000,32543=>1000,32544=>1000,32545=>1000,32546=>1000,32547=>1000,32548=>1000,\r\n\t32549=>1000,32550=>1000,32551=>1000,32552=>1000,32553=>1000,32554=>1000,32555=>1000,32556=>1000,32557=>1000,32558=>1000,32559=>1000,32560=>1000,32561=>1000,32562=>1000,32563=>1000,32564=>1000,\r\n\t32565=>1000,32566=>1000,32567=>1000,32568=>1000,32569=>1000,32570=>1000,32571=>1000,32572=>1000,32573=>1000,32574=>1000,32575=>1000,32576=>1000,32577=>1000,32578=>1000,32579=>1000,32580=>1000,\r\n\t32581=>1000,32582=>1000,32583=>1000,32584=>1000,32585=>1000,32586=>1000,32587=>1000,32588=>1000,32589=>1000,32590=>1000,32591=>1000,32592=>1000,32593=>1000,32594=>1000,32595=>1000,32596=>1000,\r\n\t32597=>1000,32598=>1000,32599=>1000,32600=>1000,32601=>1000,32602=>1000,32603=>1000,32604=>1000,32605=>1000,32606=>1000,32607=>1000,32608=>1000,32609=>1000,32610=>1000,32611=>1000,32612=>1000,\r\n\t32613=>1000,32614=>1000,32615=>1000,32616=>1000,32617=>1000,32618=>1000,32619=>1000,32620=>1000,32621=>1000,32622=>1000,32623=>1000,32624=>1000,32625=>1000,32626=>1000,32627=>1000,32628=>1000,\r\n\t32629=>1000,32630=>1000,32631=>1000,32632=>1000,32633=>1000,32634=>1000,32635=>1000,32636=>1000,32637=>1000,32638=>1000,32639=>1000,32640=>1000,32641=>1000,32642=>1000,32643=>1000,32644=>1000,\r\n\t32645=>1000,32646=>1000,32647=>1000,32648=>1000,32649=>1000,32650=>1000,32651=>1000,32652=>1000,32653=>1000,32654=>1000,32655=>1000,32656=>1000,32657=>1000,32658=>1000,32659=>1000,32660=>1000,\r\n\t32661=>1000,32662=>1000,32663=>1000,32664=>1000,32665=>1000,32666=>1000,32667=>1000,32668=>1000,32669=>1000,32670=>1000,32671=>1000,32672=>1000,32673=>1000,32674=>1000,32675=>1000,32676=>1000,\r\n\t32677=>1000,32678=>1000,32679=>1000,32680=>1000,32681=>1000,32682=>1000,32683=>1000,32684=>1000,32685=>1000,32686=>1000,32687=>1000,32688=>1000,32689=>1000,32690=>1000,32691=>1000,32692=>1000,\r\n\t32693=>1000,32694=>1000,32695=>1000,32696=>1000,32697=>1000,32698=>1000,32699=>1000,32700=>1000,32701=>1000,32702=>1000,32703=>1000,32704=>1000,32705=>1000,32706=>1000,32707=>1000,32708=>1000,\r\n\t32709=>1000,32710=>1000,32711=>1000,32712=>1000,32713=>1000,32714=>1000,32715=>1000,32716=>1000,32717=>1000,32718=>1000,32719=>1000,32720=>1000,32721=>1000,32722=>1000,32723=>1000,32724=>1000,\r\n\t32725=>1000,32726=>1000,32727=>1000,32728=>1000,32729=>1000,32730=>1000,32731=>1000,32732=>1000,32733=>1000,32734=>1000,32735=>1000,32736=>1000,32737=>1000,32738=>1000,32739=>1000,32740=>1000,\r\n\t32741=>1000,32742=>1000,32743=>1000,32744=>1000,32745=>1000,32746=>1000,32747=>1000,32748=>1000,32749=>1000,32750=>1000,32751=>1000,32752=>1000,32753=>1000,32754=>1000,32755=>1000,32756=>1000,\r\n\t32757=>1000,32758=>1000,32759=>1000,32760=>1000,32761=>1000,32762=>1000,32763=>1000,32764=>1000,32765=>1000,32766=>1000,32767=>1000,32768=>1000,32769=>1000,32770=>1000,32771=>1000,32772=>1000,\r\n\t32773=>1000,32774=>1000,32775=>1000,32776=>1000,32777=>1000,32778=>1000,32779=>1000,32780=>1000,32781=>1000,32782=>1000,32783=>1000,32784=>1000,32785=>1000,32786=>1000,32787=>1000,32788=>1000,\r\n\t32789=>1000,32790=>1000,32791=>1000,32792=>1000,32793=>1000,32794=>1000,32795=>1000,32796=>1000,32797=>1000,32798=>1000,32799=>1000,32800=>1000,32801=>1000,32802=>1000,32803=>1000,32804=>1000,\r\n\t32805=>1000,32806=>1000,32807=>1000,32808=>1000,32809=>1000,32810=>1000,32811=>1000,32812=>1000,32813=>1000,32814=>1000,32815=>1000,32816=>1000,32817=>1000,32818=>1000,32819=>1000,32820=>1000,\r\n\t32821=>1000,32822=>1000,32823=>1000,32824=>1000,32825=>1000,32826=>1000,32827=>1000,32828=>1000,32829=>1000,32830=>1000,32831=>1000,32832=>1000,32833=>1000,32834=>1000,32835=>1000,32836=>1000,\r\n\t32837=>1000,32838=>1000,32839=>1000,32840=>1000,32841=>1000,32842=>1000,32843=>1000,32844=>1000,32845=>1000,32846=>1000,32847=>1000,32848=>1000,32849=>1000,32850=>1000,32851=>1000,32852=>1000,\r\n\t32853=>1000,32854=>1000,32855=>1000,32856=>1000,32857=>1000,32858=>1000,32859=>1000,32860=>1000,32861=>1000,32862=>1000,32863=>1000,32864=>1000,32865=>1000,32866=>1000,32867=>1000,32868=>1000,\r\n\t32869=>1000,32870=>1000,32871=>1000,32872=>1000,32873=>1000,32874=>1000,32875=>1000,32876=>1000,32877=>1000,32878=>1000,32879=>1000,32880=>1000,32881=>1000,32882=>1000,32883=>1000,32884=>1000,\r\n\t32885=>1000,32886=>1000,32887=>1000,32888=>1000,32889=>1000,32890=>1000,32891=>1000,32892=>1000,32893=>1000,32894=>1000,32895=>1000,32896=>1000,32897=>1000,32898=>1000,32899=>1000,32900=>1000,\r\n\t32901=>1000,32902=>1000,32903=>1000,32904=>1000,32905=>1000,32906=>1000,32907=>1000,32908=>1000,32909=>1000,32910=>1000,32911=>1000,32912=>1000,32913=>1000,32914=>1000,32915=>1000,32916=>1000,\r\n\t32917=>1000,32918=>1000,32919=>1000,32920=>1000,32921=>1000,32922=>1000,32923=>1000,32924=>1000,32925=>1000,32926=>1000,32927=>1000,32928=>1000,32929=>1000,32930=>1000,32931=>1000,32932=>1000,\r\n\t32933=>1000,32934=>1000,32935=>1000,32936=>1000,32937=>1000,32938=>1000,32939=>1000,32940=>1000,32941=>1000,32942=>1000,32943=>1000,32944=>1000,32945=>1000,32946=>1000,32947=>1000,32948=>1000,\r\n\t32949=>1000,32950=>1000,32951=>1000,32952=>1000,32953=>1000,32954=>1000,32955=>1000,32956=>1000,32957=>1000,32958=>1000,32959=>1000,32960=>1000,32961=>1000,32962=>1000,32963=>1000,32964=>1000,\r\n\t32965=>1000,32966=>1000,32967=>1000,32968=>1000,32969=>1000,32970=>1000,32971=>1000,32972=>1000,32973=>1000,32974=>1000,32975=>1000,32976=>1000,32977=>1000,32978=>1000,32979=>1000,32980=>1000,\r\n\t32981=>1000,32982=>1000,32983=>1000,32984=>1000,32985=>1000,32986=>1000,32987=>1000,32988=>1000,32989=>1000,32990=>1000,32991=>1000,32992=>1000,32993=>1000,32994=>1000,32995=>1000,32996=>1000,\r\n\t32997=>1000,32998=>1000,32999=>1000,33000=>1000,33001=>1000,33002=>1000,33003=>1000,33004=>1000,33005=>1000,33006=>1000,33007=>1000,33008=>1000,33009=>1000,33010=>1000,33011=>1000,33012=>1000,\r\n\t33013=>1000,33014=>1000,33015=>1000,33016=>1000,33017=>1000,33018=>1000,33019=>1000,33020=>1000,33021=>1000,33022=>1000,33023=>1000,33024=>1000,33025=>1000,33026=>1000,33027=>1000,33028=>1000,\r\n\t33029=>1000,33030=>1000,33031=>1000,33032=>1000,33033=>1000,33034=>1000,33035=>1000,33036=>1000,33037=>1000,33038=>1000,33039=>1000,33040=>1000,33041=>1000,33042=>1000,33043=>1000,33044=>1000,\r\n\t33045=>1000,33046=>1000,33047=>1000,33048=>1000,33049=>1000,33050=>1000,33051=>1000,33052=>1000,33053=>1000,33054=>1000,33055=>1000,33056=>1000,33057=>1000,33058=>1000,33059=>1000,33060=>1000,\r\n\t33061=>1000,33062=>1000,33063=>1000,33064=>1000,33065=>1000,33066=>1000,33067=>1000,33068=>1000,33069=>1000,33070=>1000,33071=>1000,33072=>1000,33073=>1000,33074=>1000,33075=>1000,33076=>1000,\r\n\t33077=>1000,33078=>1000,33079=>1000,33080=>1000,33081=>1000,33082=>1000,33083=>1000,33084=>1000,33085=>1000,33086=>1000,33087=>1000,33088=>1000,33089=>1000,33090=>1000,33091=>1000,33092=>1000,\r\n\t33093=>1000,33094=>1000,33095=>1000,33096=>1000,33097=>1000,33098=>1000,33099=>1000,33100=>1000,33101=>1000,33102=>1000,33103=>1000,33104=>1000,33105=>1000,33106=>1000,33107=>1000,33108=>1000,\r\n\t33109=>1000,33110=>1000,33111=>1000,33112=>1000,33113=>1000,33114=>1000,33115=>1000,33116=>1000,33117=>1000,33118=>1000,33119=>1000,33120=>1000,33121=>1000,33122=>1000,33123=>1000,33124=>1000,\r\n\t33125=>1000,33126=>1000,33127=>1000,33128=>1000,33129=>1000,33130=>1000,33131=>1000,33132=>1000,33133=>1000,33134=>1000,33135=>1000,33136=>1000,33137=>1000,33138=>1000,33139=>1000,33140=>1000,\r\n\t33141=>1000,33142=>1000,33143=>1000,33144=>1000,33145=>1000,33146=>1000,33147=>1000,33148=>1000,33149=>1000,33150=>1000,33151=>1000,33152=>1000,33153=>1000,33154=>1000,33155=>1000,33156=>1000,\r\n\t33157=>1000,33158=>1000,33159=>1000,33160=>1000,33161=>1000,33162=>1000,33163=>1000,33164=>1000,33165=>1000,33166=>1000,33167=>1000,33168=>1000,33169=>1000,33170=>1000,33171=>1000,33172=>1000,\r\n\t33173=>1000,33174=>1000,33175=>1000,33176=>1000,33177=>1000,33178=>1000,33179=>1000,33180=>1000,33181=>1000,33182=>1000,33183=>1000,33184=>1000,33185=>1000,33186=>1000,33187=>1000,33188=>1000,\r\n\t33189=>1000,33190=>1000,33191=>1000,33192=>1000,33193=>1000,33194=>1000,33195=>1000,33196=>1000,33197=>1000,33198=>1000,33199=>1000,33200=>1000,33201=>1000,33202=>1000,33203=>1000,33204=>1000,\r\n\t33205=>1000,33206=>1000,33207=>1000,33208=>1000,33209=>1000,33210=>1000,33211=>1000,33212=>1000,33213=>1000,33214=>1000,33215=>1000,33216=>1000,33217=>1000,33218=>1000,33219=>1000,33220=>1000,\r\n\t33221=>1000,33222=>1000,33223=>1000,33224=>1000,33225=>1000,33226=>1000,33227=>1000,33228=>1000,33229=>1000,33230=>1000,33231=>1000,33232=>1000,33233=>1000,33234=>1000,33235=>1000,33236=>1000,\r\n\t33237=>1000,33238=>1000,33239=>1000,33240=>1000,33241=>1000,33242=>1000,33243=>1000,33244=>1000,33245=>1000,33246=>1000,33247=>1000,33248=>1000,33249=>1000,33250=>1000,33251=>1000,33252=>1000,\r\n\t33253=>1000,33254=>1000,33255=>1000,33256=>1000,33257=>1000,33258=>1000,33259=>1000,33260=>1000,33261=>1000,33262=>1000,33263=>1000,33264=>1000,33265=>1000,33266=>1000,33267=>1000,33268=>1000,\r\n\t33269=>1000,33270=>1000,33271=>1000,33272=>1000,33273=>1000,33274=>1000,33275=>1000,33276=>1000,33277=>1000,33278=>1000,33279=>1000,33280=>1000,33281=>1000,33282=>1000,33283=>1000,33284=>1000,\r\n\t33285=>1000,33286=>1000,33287=>1000,33288=>1000,33289=>1000,33290=>1000,33291=>1000,33292=>1000,33293=>1000,33294=>1000,33295=>1000,33296=>1000,33297=>1000,33298=>1000,33299=>1000,33300=>1000,\r\n\t33301=>1000,33302=>1000,33303=>1000,33304=>1000,33305=>1000,33306=>1000,33307=>1000,33308=>1000,33309=>1000,33310=>1000,33311=>1000,33312=>1000,33313=>1000,33314=>1000,33315=>1000,33316=>1000,\r\n\t33317=>1000,33318=>1000,33319=>1000,33320=>1000,33321=>1000,33322=>1000,33323=>1000,33324=>1000,33325=>1000,33326=>1000,33327=>1000,33328=>1000,33329=>1000,33330=>1000,33331=>1000,33332=>1000,\r\n\t33333=>1000,33334=>1000,33335=>1000,33336=>1000,33337=>1000,33338=>1000,33339=>1000,33340=>1000,33341=>1000,33342=>1000,33343=>1000,33344=>1000,33345=>1000,33346=>1000,33347=>1000,33348=>1000,\r\n\t33349=>1000,33350=>1000,33351=>1000,33352=>1000,33353=>1000,33354=>1000,33355=>1000,33356=>1000,33357=>1000,33358=>1000,33359=>1000,33360=>1000,33361=>1000,33362=>1000,33363=>1000,33364=>1000,\r\n\t33365=>1000,33366=>1000,33367=>1000,33368=>1000,33369=>1000,33370=>1000,33371=>1000,33372=>1000,33373=>1000,33374=>1000,33375=>1000,33376=>1000,33377=>1000,33378=>1000,33379=>1000,33380=>1000,\r\n\t33381=>1000,33382=>1000,33383=>1000,33384=>1000,33385=>1000,33386=>1000,33387=>1000,33388=>1000,33389=>1000,33390=>1000,33391=>1000,33392=>1000,33393=>1000,33394=>1000,33395=>1000,33396=>1000,\r\n\t33397=>1000,33398=>1000,33399=>1000,33400=>1000,33401=>1000,33402=>1000,33403=>1000,33404=>1000,33405=>1000,33406=>1000,33407=>1000,33408=>1000,33409=>1000,33410=>1000,33411=>1000,33412=>1000,\r\n\t33413=>1000,33414=>1000,33415=>1000,33416=>1000,33417=>1000,33418=>1000,33419=>1000,33420=>1000,33421=>1000,33422=>1000,33423=>1000,33424=>1000,33425=>1000,33426=>1000,33427=>1000,33428=>1000,\r\n\t33429=>1000,33430=>1000,33431=>1000,33432=>1000,33433=>1000,33434=>1000,33435=>1000,33436=>1000,33437=>1000,33438=>1000,33439=>1000,33440=>1000,33441=>1000,33442=>1000,33443=>1000,33444=>1000,\r\n\t33445=>1000,33446=>1000,33447=>1000,33448=>1000,33449=>1000,33450=>1000,33451=>1000,33452=>1000,33453=>1000,33454=>1000,33455=>1000,33456=>1000,33457=>1000,33458=>1000,33459=>1000,33460=>1000,\r\n\t33461=>1000,33462=>1000,33463=>1000,33464=>1000,33465=>1000,33466=>1000,33467=>1000,33468=>1000,33469=>1000,33470=>1000,33471=>1000,33472=>1000,33473=>1000,33474=>1000,33475=>1000,33476=>1000,\r\n\t33477=>1000,33478=>1000,33479=>1000,33480=>1000,33481=>1000,33482=>1000,33483=>1000,33484=>1000,33485=>1000,33486=>1000,33487=>1000,33488=>1000,33489=>1000,33490=>1000,33491=>1000,33492=>1000,\r\n\t33493=>1000,33494=>1000,33495=>1000,33496=>1000,33497=>1000,33498=>1000,33499=>1000,33500=>1000,33501=>1000,33502=>1000,33503=>1000,33504=>1000,33505=>1000,33506=>1000,33507=>1000,33508=>1000,\r\n\t33509=>1000,33510=>1000,33511=>1000,33512=>1000,33513=>1000,33514=>1000,33515=>1000,33516=>1000,33517=>1000,33518=>1000,33519=>1000,33520=>1000,33521=>1000,33522=>1000,33523=>1000,33524=>1000,\r\n\t33525=>1000,33526=>1000,33527=>1000,33528=>1000,33529=>1000,33530=>1000,33531=>1000,33532=>1000,33533=>1000,33534=>1000,33535=>1000,33536=>1000,33537=>1000,33538=>1000,33539=>1000,33540=>1000,\r\n\t33541=>1000,33542=>1000,33543=>1000,33544=>1000,33545=>1000,33546=>1000,33547=>1000,33548=>1000,33549=>1000,33550=>1000,33551=>1000,33552=>1000,33553=>1000,33554=>1000,33555=>1000,33556=>1000,\r\n\t33557=>1000,33558=>1000,33559=>1000,33560=>1000,33561=>1000,33562=>1000,33563=>1000,33564=>1000,33565=>1000,33566=>1000,33567=>1000,33568=>1000,33569=>1000,33570=>1000,33571=>1000,33572=>1000,\r\n\t33573=>1000,33574=>1000,33575=>1000,33576=>1000,33577=>1000,33578=>1000,33579=>1000,33580=>1000,33581=>1000,33582=>1000,33583=>1000,33584=>1000,33585=>1000,33586=>1000,33587=>1000,33588=>1000,\r\n\t33589=>1000,33590=>1000,33591=>1000,33592=>1000,33593=>1000,33594=>1000,33595=>1000,33596=>1000,33597=>1000,33598=>1000,33599=>1000,33600=>1000,33601=>1000,33602=>1000,33603=>1000,33604=>1000,\r\n\t33605=>1000,33606=>1000,33607=>1000,33608=>1000,33609=>1000,33610=>1000,33611=>1000,33612=>1000,33613=>1000,33614=>1000,33615=>1000,33616=>1000,33617=>1000,33618=>1000,33619=>1000,33620=>1000,\r\n\t33621=>1000,33622=>1000,33623=>1000,33624=>1000,33625=>1000,33626=>1000,33627=>1000,33628=>1000,33629=>1000,33630=>1000,33631=>1000,33632=>1000,33633=>1000,33634=>1000,33635=>1000,33636=>1000,\r\n\t33637=>1000,33638=>1000,33639=>1000,33640=>1000,33641=>1000,33642=>1000,33643=>1000,33644=>1000,33645=>1000,33646=>1000,33647=>1000,33648=>1000,33649=>1000,33650=>1000,33651=>1000,33652=>1000,\r\n\t33653=>1000,33654=>1000,33655=>1000,33656=>1000,33657=>1000,33658=>1000,33659=>1000,33660=>1000,33661=>1000,33662=>1000,33663=>1000,33664=>1000,33665=>1000,33666=>1000,33667=>1000,33668=>1000,\r\n\t33669=>1000,33670=>1000,33671=>1000,33672=>1000,33673=>1000,33674=>1000,33675=>1000,33676=>1000,33677=>1000,33678=>1000,33679=>1000,33680=>1000,33681=>1000,33682=>1000,33683=>1000,33684=>1000,\r\n\t33685=>1000,33686=>1000,33687=>1000,33688=>1000,33689=>1000,33690=>1000,33691=>1000,33692=>1000,33693=>1000,33694=>1000,33695=>1000,33696=>1000,33697=>1000,33698=>1000,33699=>1000,33700=>1000,\r\n\t33701=>1000,33702=>1000,33703=>1000,33704=>1000,33705=>1000,33706=>1000,33707=>1000,33708=>1000,33709=>1000,33710=>1000,33711=>1000,33712=>1000,33713=>1000,33714=>1000,33715=>1000,33716=>1000,\r\n\t33717=>1000,33718=>1000,33719=>1000,33720=>1000,33721=>1000,33722=>1000,33723=>1000,33724=>1000,33725=>1000,33726=>1000,33727=>1000,33728=>1000,33729=>1000,33730=>1000,33731=>1000,33732=>1000,\r\n\t33733=>1000,33734=>1000,33735=>1000,33736=>1000,33737=>1000,33738=>1000,33739=>1000,33740=>1000,33741=>1000,33742=>1000,33743=>1000,33744=>1000,33745=>1000,33746=>1000,33747=>1000,33748=>1000,\r\n\t33749=>1000,33750=>1000,33751=>1000,33752=>1000,33753=>1000,33754=>1000,33755=>1000,33756=>1000,33757=>1000,33758=>1000,33759=>1000,33760=>1000,33761=>1000,33762=>1000,33763=>1000,33764=>1000,\r\n\t33765=>1000,33766=>1000,33767=>1000,33768=>1000,33769=>1000,33770=>1000,33771=>1000,33772=>1000,33773=>1000,33774=>1000,33775=>1000,33776=>1000,33777=>1000,33778=>1000,33779=>1000,33780=>1000,\r\n\t33781=>1000,33782=>1000,33783=>1000,33784=>1000,33785=>1000,33786=>1000,33787=>1000,33788=>1000,33789=>1000,33790=>1000,33791=>1000,33792=>1000,33793=>1000,33794=>1000,33795=>1000,33796=>1000,\r\n\t33797=>1000,33798=>1000,33799=>1000,33800=>1000,33801=>1000,33802=>1000,33803=>1000,33804=>1000,33805=>1000,33806=>1000,33807=>1000,33808=>1000,33809=>1000,33810=>1000,33811=>1000,33812=>1000,\r\n\t33813=>1000,33814=>1000,33815=>1000,33816=>1000,33817=>1000,33818=>1000,33819=>1000,33820=>1000,33821=>1000,33822=>1000,33823=>1000,33824=>1000,33825=>1000,33826=>1000,33827=>1000,33828=>1000,\r\n\t33829=>1000,33830=>1000,33831=>1000,33832=>1000,33833=>1000,33834=>1000,33835=>1000,33836=>1000,33837=>1000,33838=>1000,33839=>1000,33840=>1000,33841=>1000,33842=>1000,33843=>1000,33844=>1000,\r\n\t33845=>1000,33846=>1000,33847=>1000,33848=>1000,33849=>1000,33850=>1000,33851=>1000,33852=>1000,33853=>1000,33854=>1000,33855=>1000,33856=>1000,33857=>1000,33858=>1000,33859=>1000,33860=>1000,\r\n\t33861=>1000,33862=>1000,33863=>1000,33864=>1000,33865=>1000,33866=>1000,33867=>1000,33868=>1000,33869=>1000,33870=>1000,33871=>1000,33872=>1000,33873=>1000,33874=>1000,33875=>1000,33876=>1000,\r\n\t33877=>1000,33878=>1000,33879=>1000,33880=>1000,33881=>1000,33882=>1000,33883=>1000,33884=>1000,33885=>1000,33886=>1000,33887=>1000,33888=>1000,33889=>1000,33890=>1000,33891=>1000,33892=>1000,\r\n\t33893=>1000,33894=>1000,33895=>1000,33896=>1000,33897=>1000,33898=>1000,33899=>1000,33900=>1000,33901=>1000,33902=>1000,33903=>1000,33904=>1000,33905=>1000,33906=>1000,33907=>1000,33908=>1000,\r\n\t33909=>1000,33910=>1000,33911=>1000,33912=>1000,33913=>1000,33914=>1000,33915=>1000,33916=>1000,33917=>1000,33918=>1000,33919=>1000,33920=>1000,33921=>1000,33922=>1000,33923=>1000,33924=>1000,\r\n\t33925=>1000,33926=>1000,33927=>1000,33928=>1000,33929=>1000,33930=>1000,33931=>1000,33932=>1000,33933=>1000,33934=>1000,33935=>1000,33936=>1000,33937=>1000,33938=>1000,33939=>1000,33940=>1000,\r\n\t33941=>1000,33942=>1000,33943=>1000,33944=>1000,33945=>1000,33946=>1000,33947=>1000,33948=>1000,33949=>1000,33950=>1000,33951=>1000,33952=>1000,33953=>1000,33954=>1000,33955=>1000,33956=>1000,\r\n\t33957=>1000,33958=>1000,33959=>1000,33960=>1000,33961=>1000,33962=>1000,33963=>1000,33964=>1000,33965=>1000,33966=>1000,33967=>1000,33968=>1000,33969=>1000,33970=>1000,33971=>1000,33972=>1000,\r\n\t33973=>1000,33974=>1000,33975=>1000,33976=>1000,33977=>1000,33978=>1000,33979=>1000,33980=>1000,33981=>1000,33982=>1000,33983=>1000,33984=>1000,33985=>1000,33986=>1000,33987=>1000,33988=>1000,\r\n\t33989=>1000,33990=>1000,33991=>1000,33992=>1000,33993=>1000,33994=>1000,33995=>1000,33996=>1000,33997=>1000,33998=>1000,33999=>1000,34000=>1000,34001=>1000,34002=>1000,34003=>1000,34004=>1000,\r\n\t34005=>1000,34006=>1000,34007=>1000,34008=>1000,34009=>1000,34010=>1000,34011=>1000,34012=>1000,34013=>1000,34014=>1000,34015=>1000,34016=>1000,34017=>1000,34018=>1000,34019=>1000,34020=>1000,\r\n\t34021=>1000,34022=>1000,34023=>1000,34024=>1000,34025=>1000,34026=>1000,34027=>1000,34028=>1000,34029=>1000,34030=>1000,34031=>1000,34032=>1000,34033=>1000,34034=>1000,34035=>1000,34036=>1000,\r\n\t34037=>1000,34038=>1000,34039=>1000,34040=>1000,34041=>1000,34042=>1000,34043=>1000,34044=>1000,34045=>1000,34046=>1000,34047=>1000,34048=>1000,34049=>1000,34050=>1000,34051=>1000,34052=>1000,\r\n\t34053=>1000,34054=>1000,34055=>1000,34056=>1000,34057=>1000,34058=>1000,34059=>1000,34060=>1000,34061=>1000,34062=>1000,34063=>1000,34064=>1000,34065=>1000,34066=>1000,34067=>1000,34068=>1000,\r\n\t34069=>1000,34070=>1000,34071=>1000,34072=>1000,34073=>1000,34074=>1000,34075=>1000,34076=>1000,34077=>1000,34078=>1000,34079=>1000,34080=>1000,34081=>1000,34082=>1000,34083=>1000,34084=>1000,\r\n\t34085=>1000,34086=>1000,34087=>1000,34088=>1000,34089=>1000,34090=>1000,34091=>1000,34092=>1000,34093=>1000,34094=>1000,34095=>1000,34096=>1000,34097=>1000,34098=>1000,34099=>1000,34100=>1000,\r\n\t34101=>1000,34102=>1000,34103=>1000,34104=>1000,34105=>1000,34106=>1000,34107=>1000,34108=>1000,34109=>1000,34110=>1000,34111=>1000,34112=>1000,34113=>1000,34114=>1000,34115=>1000,34116=>1000,\r\n\t34117=>1000,34118=>1000,34119=>1000,34120=>1000,34121=>1000,34122=>1000,34123=>1000,34124=>1000,34125=>1000,34126=>1000,34127=>1000,34128=>1000,34129=>1000,34130=>1000,34131=>1000,34132=>1000,\r\n\t34133=>1000,34134=>1000,34135=>1000,34136=>1000,34137=>1000,34138=>1000,34139=>1000,34140=>1000,34141=>1000,34142=>1000,34143=>1000,34144=>1000,34145=>1000,34146=>1000,34147=>1000,34148=>1000,\r\n\t34149=>1000,34150=>1000,34151=>1000,34152=>1000,34153=>1000,34154=>1000,34155=>1000,34156=>1000,34157=>1000,34158=>1000,34159=>1000,34160=>1000,34161=>1000,34162=>1000,34163=>1000,34164=>1000,\r\n\t34165=>1000,34166=>1000,34167=>1000,34168=>1000,34169=>1000,34170=>1000,34171=>1000,34172=>1000,34173=>1000,34174=>1000,34175=>1000,34176=>1000,34177=>1000,34178=>1000,34179=>1000,34180=>1000,\r\n\t34181=>1000,34182=>1000,34183=>1000,34184=>1000,34185=>1000,34186=>1000,34187=>1000,34188=>1000,34189=>1000,34190=>1000,34191=>1000,34192=>1000,34193=>1000,34194=>1000,34195=>1000,34196=>1000,\r\n\t34197=>1000,34198=>1000,34199=>1000,34200=>1000,34201=>1000,34202=>1000,34203=>1000,34204=>1000,34205=>1000,34206=>1000,34207=>1000,34208=>1000,34209=>1000,34210=>1000,34211=>1000,34212=>1000,\r\n\t34213=>1000,34214=>1000,34215=>1000,34216=>1000,34217=>1000,34218=>1000,34219=>1000,34220=>1000,34221=>1000,34222=>1000,34223=>1000,34224=>1000,34225=>1000,34226=>1000,34227=>1000,34228=>1000,\r\n\t34229=>1000,34230=>1000,34231=>1000,34232=>1000,34233=>1000,34234=>1000,34235=>1000,34236=>1000,34237=>1000,34238=>1000,34239=>1000,34240=>1000,34241=>1000,34242=>1000,34243=>1000,34244=>1000,\r\n\t34245=>1000,34246=>1000,34247=>1000,34248=>1000,34249=>1000,34250=>1000,34251=>1000,34252=>1000,34253=>1000,34254=>1000,34255=>1000,34256=>1000,34257=>1000,34258=>1000,34259=>1000,34260=>1000,\r\n\t34261=>1000,34262=>1000,34263=>1000,34264=>1000,34265=>1000,34266=>1000,34267=>1000,34268=>1000,34269=>1000,34270=>1000,34271=>1000,34272=>1000,34273=>1000,34274=>1000,34275=>1000,34276=>1000,\r\n\t34277=>1000,34278=>1000,34279=>1000,34280=>1000,34281=>1000,34282=>1000,34283=>1000,34284=>1000,34285=>1000,34286=>1000,34287=>1000,34288=>1000,34289=>1000,34290=>1000,34291=>1000,34292=>1000,\r\n\t34293=>1000,34294=>1000,34295=>1000,34296=>1000,34297=>1000,34298=>1000,34299=>1000,34300=>1000,34301=>1000,34302=>1000,34303=>1000,34304=>1000,34305=>1000,34306=>1000,34307=>1000,34308=>1000,\r\n\t34309=>1000,34310=>1000,34311=>1000,34312=>1000,34313=>1000,34314=>1000,34315=>1000,34316=>1000,34317=>1000,34318=>1000,34319=>1000,34320=>1000,34321=>1000,34322=>1000,34323=>1000,34324=>1000,\r\n\t34325=>1000,34326=>1000,34327=>1000,34328=>1000,34329=>1000,34330=>1000,34331=>1000,34332=>1000,34333=>1000,34334=>1000,34335=>1000,34336=>1000,34337=>1000,34338=>1000,34339=>1000,34340=>1000,\r\n\t34341=>1000,34342=>1000,34343=>1000,34344=>1000,34345=>1000,34346=>1000,34347=>1000,34348=>1000,34349=>1000,34350=>1000,34351=>1000,34352=>1000,34353=>1000,34354=>1000,34355=>1000,34356=>1000,\r\n\t34357=>1000,34358=>1000,34359=>1000,34360=>1000,34361=>1000,34362=>1000,34363=>1000,34364=>1000,34365=>1000,34366=>1000,34367=>1000,34368=>1000,34369=>1000,34370=>1000,34371=>1000,34372=>1000,\r\n\t34373=>1000,34374=>1000,34375=>1000,34376=>1000,34377=>1000,34378=>1000,34379=>1000,34380=>1000,34381=>1000,34382=>1000,34383=>1000,34384=>1000,34385=>1000,34386=>1000,34387=>1000,34388=>1000,\r\n\t34389=>1000,34390=>1000,34391=>1000,34392=>1000,34393=>1000,34394=>1000,34395=>1000,34396=>1000,34397=>1000,34398=>1000,34399=>1000,34400=>1000,34401=>1000,34402=>1000,34403=>1000,34404=>1000,\r\n\t34405=>1000,34406=>1000,34407=>1000,34408=>1000,34409=>1000,34410=>1000,34411=>1000,34412=>1000,34413=>1000,34414=>1000,34415=>1000,34416=>1000,34417=>1000,34418=>1000,34419=>1000,34420=>1000,\r\n\t34421=>1000,34422=>1000,34423=>1000,34424=>1000,34425=>1000,34426=>1000,34427=>1000,34428=>1000,34429=>1000,34430=>1000,34431=>1000,34432=>1000,34433=>1000,34434=>1000,34435=>1000,34436=>1000,\r\n\t34437=>1000,34438=>1000,34439=>1000,34440=>1000,34441=>1000,34442=>1000,34443=>1000,34444=>1000,34445=>1000,34446=>1000,34447=>1000,34448=>1000,34449=>1000,34450=>1000,34451=>1000,34452=>1000,\r\n\t34453=>1000,34454=>1000,34455=>1000,34456=>1000,34457=>1000,34458=>1000,34459=>1000,34460=>1000,34461=>1000,34462=>1000,34463=>1000,34464=>1000,34465=>1000,34466=>1000,34467=>1000,34468=>1000,\r\n\t34469=>1000,34470=>1000,34471=>1000,34472=>1000,34473=>1000,34474=>1000,34475=>1000,34476=>1000,34477=>1000,34478=>1000,34479=>1000,34480=>1000,34481=>1000,34482=>1000,34483=>1000,34484=>1000,\r\n\t34485=>1000,34486=>1000,34487=>1000,34488=>1000,34489=>1000,34490=>1000,34491=>1000,34492=>1000,34493=>1000,34494=>1000,34495=>1000,34496=>1000,34497=>1000,34498=>1000,34499=>1000,34500=>1000,\r\n\t34501=>1000,34502=>1000,34503=>1000,34504=>1000,34505=>1000,34506=>1000,34507=>1000,34508=>1000,34509=>1000,34510=>1000,34511=>1000,34512=>1000,34513=>1000,34514=>1000,34515=>1000,34516=>1000,\r\n\t34517=>1000,34518=>1000,34519=>1000,34520=>1000,34521=>1000,34522=>1000,34523=>1000,34524=>1000,34525=>1000,34526=>1000,34527=>1000,34528=>1000,34529=>1000,34530=>1000,34531=>1000,34532=>1000,\r\n\t34533=>1000,34534=>1000,34535=>1000,34536=>1000,34537=>1000,34538=>1000,34539=>1000,34540=>1000,34541=>1000,34542=>1000,34543=>1000,34544=>1000,34545=>1000,34546=>1000,34547=>1000,34548=>1000,\r\n\t34549=>1000,34550=>1000,34551=>1000,34552=>1000,34553=>1000,34554=>1000,34555=>1000,34556=>1000,34557=>1000,34558=>1000,34559=>1000,34560=>1000,34561=>1000,34562=>1000,34563=>1000,34564=>1000,\r\n\t34565=>1000,34566=>1000,34567=>1000,34568=>1000,34569=>1000,34570=>1000,34571=>1000,34572=>1000,34573=>1000,34574=>1000,34575=>1000,34576=>1000,34577=>1000,34578=>1000,34579=>1000,34580=>1000,\r\n\t34581=>1000,34582=>1000,34583=>1000,34584=>1000,34585=>1000,34586=>1000,34587=>1000,34588=>1000,34589=>1000,34590=>1000,34591=>1000,34592=>1000,34593=>1000,34594=>1000,34595=>1000,34596=>1000,\r\n\t34597=>1000,34598=>1000,34599=>1000,34600=>1000,34601=>1000,34602=>1000,34603=>1000,34604=>1000,34605=>1000,34606=>1000,34607=>1000,34608=>1000,34609=>1000,34610=>1000,34611=>1000,34612=>1000,\r\n\t34613=>1000,34614=>1000,34615=>1000,34616=>1000,34617=>1000,34618=>1000,34619=>1000,34620=>1000,34621=>1000,34622=>1000,34623=>1000,34624=>1000,34625=>1000,34626=>1000,34627=>1000,34628=>1000,\r\n\t34629=>1000,34630=>1000,34631=>1000,34632=>1000,34633=>1000,34634=>1000,34635=>1000,34636=>1000,34637=>1000,34638=>1000,34639=>1000,34640=>1000,34641=>1000,34642=>1000,34643=>1000,34644=>1000,\r\n\t34645=>1000,34646=>1000,34647=>1000,34648=>1000,34649=>1000,34650=>1000,34651=>1000,34652=>1000,34653=>1000,34654=>1000,34655=>1000,34656=>1000,34657=>1000,34658=>1000,34659=>1000,34660=>1000,\r\n\t34661=>1000,34662=>1000,34663=>1000,34664=>1000,34665=>1000,34666=>1000,34667=>1000,34668=>1000,34669=>1000,34670=>1000,34671=>1000,34672=>1000,34673=>1000,34674=>1000,34675=>1000,34676=>1000,\r\n\t34677=>1000,34678=>1000,34679=>1000,34680=>1000,34681=>1000,34682=>1000,34683=>1000,34684=>1000,34685=>1000,34686=>1000,34687=>1000,34688=>1000,34689=>1000,34690=>1000,34691=>1000,34692=>1000,\r\n\t34693=>1000,34694=>1000,34695=>1000,34696=>1000,34697=>1000,34698=>1000,34699=>1000,34700=>1000,34701=>1000,34702=>1000,34703=>1000,34704=>1000,34705=>1000,34706=>1000,34707=>1000,34708=>1000,\r\n\t34709=>1000,34710=>1000,34711=>1000,34712=>1000,34713=>1000,34714=>1000,34715=>1000,34716=>1000,34717=>1000,34718=>1000,34719=>1000,34720=>1000,34721=>1000,34722=>1000,34723=>1000,34724=>1000,\r\n\t34725=>1000,34726=>1000,34727=>1000,34728=>1000,34729=>1000,34730=>1000,34731=>1000,34732=>1000,34733=>1000,34734=>1000,34735=>1000,34736=>1000,34737=>1000,34738=>1000,34739=>1000,34740=>1000,\r\n\t34741=>1000,34742=>1000,34743=>1000,34744=>1000,34745=>1000,34746=>1000,34747=>1000,34748=>1000,34749=>1000,34750=>1000,34751=>1000,34752=>1000,34753=>1000,34754=>1000,34755=>1000,34756=>1000,\r\n\t34757=>1000,34758=>1000,34759=>1000,34760=>1000,34761=>1000,34762=>1000,34763=>1000,34764=>1000,34765=>1000,34766=>1000,34767=>1000,34768=>1000,34769=>1000,34770=>1000,34771=>1000,34772=>1000,\r\n\t34773=>1000,34774=>1000,34775=>1000,34776=>1000,34777=>1000,34778=>1000,34779=>1000,34780=>1000,34781=>1000,34782=>1000,34783=>1000,34784=>1000,34785=>1000,34786=>1000,34787=>1000,34788=>1000,\r\n\t34789=>1000,34790=>1000,34791=>1000,34792=>1000,34793=>1000,34794=>1000,34795=>1000,34796=>1000,34797=>1000,34798=>1000,34799=>1000,34800=>1000,34801=>1000,34802=>1000,34803=>1000,34804=>1000,\r\n\t34805=>1000,34806=>1000,34807=>1000,34808=>1000,34809=>1000,34810=>1000,34811=>1000,34812=>1000,34813=>1000,34814=>1000,34815=>1000,34816=>1000,34817=>1000,34818=>1000,34819=>1000,34820=>1000,\r\n\t34821=>1000,34822=>1000,34823=>1000,34824=>1000,34825=>1000,34826=>1000,34827=>1000,34828=>1000,34829=>1000,34830=>1000,34831=>1000,34832=>1000,34833=>1000,34834=>1000,34835=>1000,34836=>1000,\r\n\t34837=>1000,34838=>1000,34839=>1000,34840=>1000,34841=>1000,34842=>1000,34843=>1000,34844=>1000,34845=>1000,34846=>1000,34847=>1000,34848=>1000,34849=>1000,34850=>1000,34851=>1000,34852=>1000,\r\n\t34853=>1000,34854=>1000,34855=>1000,34856=>1000,34857=>1000,34858=>1000,34859=>1000,34860=>1000,34861=>1000,34862=>1000,34863=>1000,34864=>1000,34865=>1000,34866=>1000,34867=>1000,34868=>1000,\r\n\t34869=>1000,34870=>1000,34871=>1000,34872=>1000,34873=>1000,34874=>1000,34875=>1000,34876=>1000,34877=>1000,34878=>1000,34879=>1000,34880=>1000,34881=>1000,34882=>1000,34883=>1000,34884=>1000,\r\n\t34885=>1000,34886=>1000,34887=>1000,34888=>1000,34889=>1000,34890=>1000,34891=>1000,34892=>1000,34893=>1000,34894=>1000,34895=>1000,34896=>1000,34897=>1000,34898=>1000,34899=>1000,34900=>1000,\r\n\t34901=>1000,34902=>1000,34903=>1000,34904=>1000,34905=>1000,34906=>1000,34907=>1000,34908=>1000,34909=>1000,34910=>1000,34911=>1000,34912=>1000,34913=>1000,34914=>1000,34915=>1000,34916=>1000,\r\n\t34917=>1000,34918=>1000,34919=>1000,34920=>1000,34921=>1000,34922=>1000,34923=>1000,34924=>1000,34925=>1000,34926=>1000,34927=>1000,34928=>1000,34929=>1000,34930=>1000,34931=>1000,34932=>1000,\r\n\t34933=>1000,34934=>1000,34935=>1000,34936=>1000,34937=>1000,34938=>1000,34939=>1000,34940=>1000,34941=>1000,34942=>1000,34943=>1000,34944=>1000,34945=>1000,34946=>1000,34947=>1000,34948=>1000,\r\n\t34949=>1000,34950=>1000,34951=>1000,34952=>1000,34953=>1000,34954=>1000,34955=>1000,34956=>1000,34957=>1000,34958=>1000,34959=>1000,34960=>1000,34961=>1000,34962=>1000,34963=>1000,34964=>1000,\r\n\t34965=>1000,34966=>1000,34967=>1000,34968=>1000,34969=>1000,34970=>1000,34971=>1000,34972=>1000,34973=>1000,34974=>1000,34975=>1000,34976=>1000,34977=>1000,34978=>1000,34979=>1000,34980=>1000,\r\n\t34981=>1000,34982=>1000,34983=>1000,34984=>1000,34985=>1000,34986=>1000,34987=>1000,34988=>1000,34989=>1000,34990=>1000,34991=>1000,34992=>1000,34993=>1000,34994=>1000,34995=>1000,34996=>1000,\r\n\t34997=>1000,34998=>1000,34999=>1000,35000=>1000,35001=>1000,35002=>1000,35003=>1000,35004=>1000,35005=>1000,35006=>1000,35007=>1000,35008=>1000,35009=>1000,35010=>1000,35011=>1000,35012=>1000,\r\n\t35013=>1000,35014=>1000,35015=>1000,35016=>1000,35017=>1000,35018=>1000,35019=>1000,35020=>1000,35021=>1000,35022=>1000,35023=>1000,35024=>1000,35025=>1000,35026=>1000,35027=>1000,35028=>1000,\r\n\t35029=>1000,35030=>1000,35031=>1000,35032=>1000,35033=>1000,35034=>1000,35035=>1000,35036=>1000,35037=>1000,35038=>1000,35039=>1000,35040=>1000,35041=>1000,35042=>1000,35043=>1000,35044=>1000,\r\n\t35045=>1000,35046=>1000,35047=>1000,35048=>1000,35049=>1000,35050=>1000,35051=>1000,35052=>1000,35053=>1000,35054=>1000,35055=>1000,35056=>1000,35057=>1000,35058=>1000,35059=>1000,35060=>1000,\r\n\t35061=>1000,35062=>1000,35063=>1000,35064=>1000,35065=>1000,35066=>1000,35067=>1000,35068=>1000,35069=>1000,35070=>1000,35071=>1000,35072=>1000,35073=>1000,35074=>1000,35075=>1000,35076=>1000,\r\n\t35077=>1000,35078=>1000,35079=>1000,35080=>1000,35081=>1000,35082=>1000,35083=>1000,35084=>1000,35085=>1000,35086=>1000,35087=>1000,35088=>1000,35089=>1000,35090=>1000,35091=>1000,35092=>1000,\r\n\t35093=>1000,35094=>1000,35095=>1000,35096=>1000,35097=>1000,35098=>1000,35099=>1000,35100=>1000,35101=>1000,35102=>1000,35103=>1000,35104=>1000,35105=>1000,35106=>1000,35107=>1000,35108=>1000,\r\n\t35109=>1000,35110=>1000,35111=>1000,35112=>1000,35113=>1000,35114=>1000,35115=>1000,35116=>1000,35117=>1000,35118=>1000,35119=>1000,35120=>1000,35121=>1000,35122=>1000,35123=>1000,35124=>1000,\r\n\t35125=>1000,35126=>1000,35127=>1000,35128=>1000,35129=>1000,35130=>1000,35131=>1000,35132=>1000,35133=>1000,35134=>1000,35135=>1000,35136=>1000,35137=>1000,35138=>1000,35139=>1000,35140=>1000,\r\n\t35141=>1000,35142=>1000,35143=>1000,35144=>1000,35145=>1000,35146=>1000,35147=>1000,35148=>1000,35149=>1000,35150=>1000,35151=>1000,35152=>1000,35153=>1000,35154=>1000,35155=>1000,35156=>1000,\r\n\t35157=>1000,35158=>1000,35159=>1000,35160=>1000,35161=>1000,35162=>1000,35163=>1000,35164=>1000,35165=>1000,35166=>1000,35167=>1000,35168=>1000,35169=>1000,35170=>1000,35171=>1000,35172=>1000,\r\n\t35173=>1000,35174=>1000,35175=>1000,35176=>1000,35177=>1000,35178=>1000,35179=>1000,35180=>1000,35181=>1000,35182=>1000,35183=>1000,35184=>1000,35185=>1000,35186=>1000,35187=>1000,35188=>1000,\r\n\t35189=>1000,35190=>1000,35191=>1000,35192=>1000,35193=>1000,35194=>1000,35195=>1000,35196=>1000,35197=>1000,35198=>1000,35199=>1000,35200=>1000,35201=>1000,35202=>1000,35203=>1000,35204=>1000,\r\n\t35205=>1000,35206=>1000,35207=>1000,35208=>1000,35209=>1000,35210=>1000,35211=>1000,35212=>1000,35213=>1000,35214=>1000,35215=>1000,35216=>1000,35217=>1000,35218=>1000,35219=>1000,35220=>1000,\r\n\t35221=>1000,35222=>1000,35223=>1000,35224=>1000,35225=>1000,35226=>1000,35227=>1000,35228=>1000,35229=>1000,35230=>1000,35231=>1000,35232=>1000,35233=>1000,35234=>1000,35235=>1000,35236=>1000,\r\n\t35237=>1000,35238=>1000,35239=>1000,35240=>1000,35241=>1000,35242=>1000,35243=>1000,35244=>1000,35245=>1000,35246=>1000,35247=>1000,35248=>1000,35249=>1000,35250=>1000,35251=>1000,35252=>1000,\r\n\t35253=>1000,35254=>1000,35255=>1000,35256=>1000,35257=>1000,35258=>1000,35259=>1000,35260=>1000,35261=>1000,35262=>1000,35263=>1000,35264=>1000,35265=>1000,35266=>1000,35267=>1000,35268=>1000,\r\n\t35269=>1000,35270=>1000,35271=>1000,35272=>1000,35273=>1000,35274=>1000,35275=>1000,35276=>1000,35277=>1000,35278=>1000,35279=>1000,35280=>1000,35281=>1000,35282=>1000,35283=>1000,35284=>1000,\r\n\t35285=>1000,35286=>1000,35287=>1000,35288=>1000,35289=>1000,35290=>1000,35291=>1000,35292=>1000,35293=>1000,35294=>1000,35295=>1000,35296=>1000,35297=>1000,35298=>1000,35299=>1000,35300=>1000,\r\n\t35301=>1000,35302=>1000,35303=>1000,35304=>1000,35305=>1000,35306=>1000,35307=>1000,35308=>1000,35309=>1000,35310=>1000,35311=>1000,35312=>1000,35313=>1000,35314=>1000,35315=>1000,35316=>1000,\r\n\t35317=>1000,35318=>1000,35319=>1000,35320=>1000,35321=>1000,35322=>1000,35323=>1000,35324=>1000,35325=>1000,35326=>1000,35327=>1000,35328=>1000,35329=>1000,35330=>1000,35331=>1000,35332=>1000,\r\n\t35333=>1000,35334=>1000,35335=>1000,35336=>1000,35337=>1000,35338=>1000,35339=>1000,35340=>1000,35341=>1000,35342=>1000,35343=>1000,35344=>1000,35345=>1000,35346=>1000,35347=>1000,35348=>1000,\r\n\t35349=>1000,35350=>1000,35351=>1000,35352=>1000,35353=>1000,35354=>1000,35355=>1000,35356=>1000,35357=>1000,35358=>1000,35359=>1000,35360=>1000,35361=>1000,35362=>1000,35363=>1000,35364=>1000,\r\n\t35365=>1000,35366=>1000,35367=>1000,35368=>1000,35369=>1000,35370=>1000,35371=>1000,35372=>1000,35373=>1000,35374=>1000,35375=>1000,35376=>1000,35377=>1000,35378=>1000,35379=>1000,35380=>1000,\r\n\t35381=>1000,35382=>1000,35383=>1000,35384=>1000,35385=>1000,35386=>1000,35387=>1000,35388=>1000,35389=>1000,35390=>1000,35391=>1000,35392=>1000,35393=>1000,35394=>1000,35395=>1000,35396=>1000,\r\n\t35397=>1000,35398=>1000,35399=>1000,35400=>1000,35401=>1000,35402=>1000,35403=>1000,35404=>1000,35405=>1000,35406=>1000,35407=>1000,35408=>1000,35409=>1000,35410=>1000,35411=>1000,35412=>1000,\r\n\t35413=>1000,35414=>1000,35415=>1000,35416=>1000,35417=>1000,35418=>1000,35419=>1000,35420=>1000,35421=>1000,35422=>1000,35423=>1000,35424=>1000,35425=>1000,35426=>1000,35427=>1000,35428=>1000,\r\n\t35429=>1000,35430=>1000,35431=>1000,35432=>1000,35433=>1000,35434=>1000,35435=>1000,35436=>1000,35437=>1000,35438=>1000,35439=>1000,35440=>1000,35441=>1000,35442=>1000,35443=>1000,35444=>1000,\r\n\t35445=>1000,35446=>1000,35447=>1000,35448=>1000,35449=>1000,35450=>1000,35451=>1000,35452=>1000,35453=>1000,35454=>1000,35455=>1000,35456=>1000,35457=>1000,35458=>1000,35459=>1000,35460=>1000,\r\n\t35461=>1000,35462=>1000,35463=>1000,35464=>1000,35465=>1000,35466=>1000,35467=>1000,35468=>1000,35469=>1000,35470=>1000,35471=>1000,35472=>1000,35473=>1000,35474=>1000,35475=>1000,35476=>1000,\r\n\t35477=>1000,35478=>1000,35479=>1000,35480=>1000,35481=>1000,35482=>1000,35483=>1000,35484=>1000,35485=>1000,35486=>1000,35487=>1000,35488=>1000,35489=>1000,35490=>1000,35491=>1000,35492=>1000,\r\n\t35493=>1000,35494=>1000,35495=>1000,35496=>1000,35497=>1000,35498=>1000,35499=>1000,35500=>1000,35501=>1000,35502=>1000,35503=>1000,35504=>1000,35505=>1000,35506=>1000,35507=>1000,35508=>1000,\r\n\t35509=>1000,35510=>1000,35511=>1000,35512=>1000,35513=>1000,35514=>1000,35515=>1000,35516=>1000,35517=>1000,35518=>1000,35519=>1000,35520=>1000,35521=>1000,35522=>1000,35523=>1000,35524=>1000,\r\n\t35525=>1000,35526=>1000,35527=>1000,35528=>1000,35529=>1000,35530=>1000,35531=>1000,35532=>1000,35533=>1000,35534=>1000,35535=>1000,35536=>1000,35537=>1000,35538=>1000,35539=>1000,35540=>1000,\r\n\t35541=>1000,35542=>1000,35543=>1000,35544=>1000,35545=>1000,35546=>1000,35547=>1000,35548=>1000,35549=>1000,35550=>1000,35551=>1000,35552=>1000,35553=>1000,35554=>1000,35555=>1000,35556=>1000,\r\n\t35557=>1000,35558=>1000,35559=>1000,35560=>1000,35561=>1000,35562=>1000,35563=>1000,35564=>1000,35565=>1000,35566=>1000,35567=>1000,35568=>1000,35569=>1000,35570=>1000,35571=>1000,35572=>1000,\r\n\t35573=>1000,35574=>1000,35575=>1000,35576=>1000,35577=>1000,35578=>1000,35579=>1000,35580=>1000,35581=>1000,35582=>1000,35583=>1000,35584=>1000,35585=>1000,35586=>1000,35587=>1000,35588=>1000,\r\n\t35589=>1000,35590=>1000,35591=>1000,35592=>1000,35593=>1000,35594=>1000,35595=>1000,35596=>1000,35597=>1000,35598=>1000,35599=>1000,35600=>1000,35601=>1000,35602=>1000,35603=>1000,35604=>1000,\r\n\t35605=>1000,35606=>1000,35607=>1000,35608=>1000,35609=>1000,35610=>1000,35611=>1000,35612=>1000,35613=>1000,35614=>1000,35615=>1000,35616=>1000,35617=>1000,35618=>1000,35619=>1000,35620=>1000,\r\n\t35621=>1000,35622=>1000,35623=>1000,35624=>1000,35625=>1000,35626=>1000,35627=>1000,35628=>1000,35629=>1000,35630=>1000,35631=>1000,35632=>1000,35633=>1000,35634=>1000,35635=>1000,35636=>1000,\r\n\t35637=>1000,35638=>1000,35639=>1000,35640=>1000,35641=>1000,35642=>1000,35643=>1000,35644=>1000,35645=>1000,35646=>1000,35647=>1000,35648=>1000,35649=>1000,35650=>1000,35651=>1000,35652=>1000,\r\n\t35653=>1000,35654=>1000,35655=>1000,35656=>1000,35657=>1000,35658=>1000,35659=>1000,35660=>1000,35661=>1000,35662=>1000,35663=>1000,35664=>1000,35665=>1000,35666=>1000,35667=>1000,35668=>1000,\r\n\t35669=>1000,35670=>1000,35671=>1000,35672=>1000,35673=>1000,35674=>1000,35675=>1000,35676=>1000,35677=>1000,35678=>1000,35679=>1000,35680=>1000,35681=>1000,35682=>1000,35683=>1000,35684=>1000,\r\n\t35685=>1000,35686=>1000,35687=>1000,35688=>1000,35689=>1000,35690=>1000,35691=>1000,35692=>1000,35693=>1000,35694=>1000,35695=>1000,35696=>1000,35697=>1000,35698=>1000,35699=>1000,35700=>1000,\r\n\t35701=>1000,35702=>1000,35703=>1000,35704=>1000,35705=>1000,35706=>1000,35707=>1000,35708=>1000,35709=>1000,35710=>1000,35711=>1000,35712=>1000,35713=>1000,35714=>1000,35715=>1000,35716=>1000,\r\n\t35717=>1000,35718=>1000,35719=>1000,35720=>1000,35721=>1000,35722=>1000,35723=>1000,35724=>1000,35725=>1000,35726=>1000,35727=>1000,35728=>1000,35729=>1000,35730=>1000,35731=>1000,35732=>1000,\r\n\t35733=>1000,35734=>1000,35735=>1000,35736=>1000,35737=>1000,35738=>1000,35739=>1000,35740=>1000,35741=>1000,35742=>1000,35743=>1000,35744=>1000,35745=>1000,35746=>1000,35747=>1000,35748=>1000,\r\n\t35749=>1000,35750=>1000,35751=>1000,35752=>1000,35753=>1000,35754=>1000,35755=>1000,35756=>1000,35757=>1000,35758=>1000,35759=>1000,35760=>1000,35761=>1000,35762=>1000,35763=>1000,35764=>1000,\r\n\t35765=>1000,35766=>1000,35767=>1000,35768=>1000,35769=>1000,35770=>1000,35771=>1000,35772=>1000,35773=>1000,35774=>1000,35775=>1000,35776=>1000,35777=>1000,35778=>1000,35779=>1000,35780=>1000,\r\n\t35781=>1000,35782=>1000,35783=>1000,35784=>1000,35785=>1000,35786=>1000,35787=>1000,35788=>1000,35789=>1000,35790=>1000,35791=>1000,35792=>1000,35793=>1000,35794=>1000,35795=>1000,35796=>1000,\r\n\t35797=>1000,35798=>1000,35799=>1000,35800=>1000,35801=>1000,35802=>1000,35803=>1000,35804=>1000,35805=>1000,35806=>1000,35807=>1000,35808=>1000,35809=>1000,35810=>1000,35811=>1000,35812=>1000,\r\n\t35813=>1000,35814=>1000,35815=>1000,35816=>1000,35817=>1000,35818=>1000,35819=>1000,35820=>1000,35821=>1000,35822=>1000,35823=>1000,35824=>1000,35825=>1000,35826=>1000,35827=>1000,35828=>1000,\r\n\t35829=>1000,35830=>1000,35831=>1000,35832=>1000,35833=>1000,35834=>1000,35835=>1000,35836=>1000,35837=>1000,35838=>1000,35839=>1000,35840=>1000,35841=>1000,35842=>1000,35843=>1000,35844=>1000,\r\n\t35845=>1000,35846=>1000,35847=>1000,35848=>1000,35849=>1000,35850=>1000,35851=>1000,35852=>1000,35853=>1000,35854=>1000,35855=>1000,35856=>1000,35857=>1000,35858=>1000,35859=>1000,35860=>1000,\r\n\t35861=>1000,35862=>1000,35863=>1000,35864=>1000,35865=>1000,35866=>1000,35867=>1000,35868=>1000,35869=>1000,35870=>1000,35871=>1000,35872=>1000,35873=>1000,35874=>1000,35875=>1000,35876=>1000,\r\n\t35877=>1000,35878=>1000,35879=>1000,35880=>1000,35881=>1000,35882=>1000,35883=>1000,35884=>1000,35885=>1000,35886=>1000,35887=>1000,35888=>1000,35889=>1000,35890=>1000,35891=>1000,35892=>1000,\r\n\t35893=>1000,35894=>1000,35895=>1000,35896=>1000,35897=>1000,35898=>1000,35899=>1000,35900=>1000,35901=>1000,35902=>1000,35903=>1000,35904=>1000,35905=>1000,35906=>1000,35907=>1000,35908=>1000,\r\n\t35909=>1000,35910=>1000,35911=>1000,35912=>1000,35913=>1000,35914=>1000,35915=>1000,35916=>1000,35917=>1000,35918=>1000,35919=>1000,35920=>1000,35921=>1000,35922=>1000,35923=>1000,35924=>1000,\r\n\t35925=>1000,35926=>1000,35927=>1000,35928=>1000,35929=>1000,35930=>1000,35931=>1000,35932=>1000,35933=>1000,35934=>1000,35935=>1000,35936=>1000,35937=>1000,35938=>1000,35939=>1000,35940=>1000,\r\n\t35941=>1000,35942=>1000,35943=>1000,35944=>1000,35945=>1000,35946=>1000,35947=>1000,35948=>1000,35949=>1000,35950=>1000,35951=>1000,35952=>1000,35953=>1000,35954=>1000,35955=>1000,35956=>1000,\r\n\t35957=>1000,35958=>1000,35959=>1000,35960=>1000,35961=>1000,35962=>1000,35963=>1000,35964=>1000,35965=>1000,35966=>1000,35967=>1000,35968=>1000,35969=>1000,35970=>1000,35971=>1000,35972=>1000,\r\n\t35973=>1000,35974=>1000,35975=>1000,35976=>1000,35977=>1000,35978=>1000,35979=>1000,35980=>1000,35981=>1000,35982=>1000,35983=>1000,35984=>1000,35985=>1000,35986=>1000,35987=>1000,35988=>1000,\r\n\t35989=>1000,35990=>1000,35991=>1000,35992=>1000,35993=>1000,35994=>1000,35995=>1000,35996=>1000,35997=>1000,35998=>1000,35999=>1000,36000=>1000,36001=>1000,36002=>1000,36003=>1000,36004=>1000,\r\n\t36005=>1000,36006=>1000,36007=>1000,36008=>1000,36009=>1000,36010=>1000,36011=>1000,36012=>1000,36013=>1000,36014=>1000,36015=>1000,36016=>1000,36017=>1000,36018=>1000,36019=>1000,36020=>1000,\r\n\t36021=>1000,36022=>1000,36023=>1000,36024=>1000,36025=>1000,36026=>1000,36027=>1000,36028=>1000,36029=>1000,36030=>1000,36031=>1000,36032=>1000,36033=>1000,36034=>1000,36035=>1000,36036=>1000,\r\n\t36037=>1000,36038=>1000,36039=>1000,36040=>1000,36041=>1000,36042=>1000,36043=>1000,36044=>1000,36045=>1000,36046=>1000,36047=>1000,36048=>1000,36049=>1000,36050=>1000,36051=>1000,36052=>1000,\r\n\t36053=>1000,36054=>1000,36055=>1000,36056=>1000,36057=>1000,36058=>1000,36059=>1000,36060=>1000,36061=>1000,36062=>1000,36063=>1000,36064=>1000,36065=>1000,36066=>1000,36067=>1000,36068=>1000,\r\n\t36069=>1000,36070=>1000,36071=>1000,36072=>1000,36073=>1000,36074=>1000,36075=>1000,36076=>1000,36077=>1000,36078=>1000,36079=>1000,36080=>1000,36081=>1000,36082=>1000,36083=>1000,36084=>1000,\r\n\t36085=>1000,36086=>1000,36087=>1000,36088=>1000,36089=>1000,36090=>1000,36091=>1000,36092=>1000,36093=>1000,36094=>1000,36095=>1000,36096=>1000,36097=>1000,36098=>1000,36099=>1000,36100=>1000,\r\n\t36101=>1000,36102=>1000,36103=>1000,36104=>1000,36105=>1000,36106=>1000,36107=>1000,36108=>1000,36109=>1000,36110=>1000,36111=>1000,36112=>1000,36113=>1000,36114=>1000,36115=>1000,36116=>1000,\r\n\t36117=>1000,36118=>1000,36119=>1000,36120=>1000,36121=>1000,36122=>1000,36123=>1000,36124=>1000,36125=>1000,36126=>1000,36127=>1000,36128=>1000,36129=>1000,36130=>1000,36131=>1000,36132=>1000,\r\n\t36133=>1000,36134=>1000,36135=>1000,36136=>1000,36137=>1000,36138=>1000,36139=>1000,36140=>1000,36141=>1000,36142=>1000,36143=>1000,36144=>1000,36145=>1000,36146=>1000,36147=>1000,36148=>1000,\r\n\t36149=>1000,36150=>1000,36151=>1000,36152=>1000,36153=>1000,36154=>1000,36155=>1000,36156=>1000,36157=>1000,36158=>1000,36159=>1000,36160=>1000,36161=>1000,36162=>1000,36163=>1000,36164=>1000,\r\n\t36165=>1000,36166=>1000,36167=>1000,36168=>1000,36169=>1000,36170=>1000,36171=>1000,36172=>1000,36173=>1000,36174=>1000,36175=>1000,36176=>1000,36177=>1000,36178=>1000,36179=>1000,36180=>1000,\r\n\t36181=>1000,36182=>1000,36183=>1000,36184=>1000,36185=>1000,36186=>1000,36187=>1000,36188=>1000,36189=>1000,36190=>1000,36191=>1000,36192=>1000,36193=>1000,36194=>1000,36195=>1000,36196=>1000,\r\n\t36197=>1000,36198=>1000,36199=>1000,36200=>1000,36201=>1000,36202=>1000,36203=>1000,36204=>1000,36205=>1000,36206=>1000,36207=>1000,36208=>1000,36209=>1000,36210=>1000,36211=>1000,36212=>1000,\r\n\t36213=>1000,36214=>1000,36215=>1000,36216=>1000,36217=>1000,36218=>1000,36219=>1000,36220=>1000,36221=>1000,36222=>1000,36223=>1000,36224=>1000,36225=>1000,36226=>1000,36227=>1000,36228=>1000,\r\n\t36229=>1000,36230=>1000,36231=>1000,36232=>1000,36233=>1000,36234=>1000,36235=>1000,36236=>1000,36237=>1000,36238=>1000,36239=>1000,36240=>1000,36241=>1000,36242=>1000,36243=>1000,36244=>1000,\r\n\t36245=>1000,36246=>1000,36247=>1000,36248=>1000,36249=>1000,36250=>1000,36251=>1000,36252=>1000,36253=>1000,36254=>1000,36255=>1000,36256=>1000,36257=>1000,36258=>1000,36259=>1000,36260=>1000,\r\n\t36261=>1000,36262=>1000,36263=>1000,36264=>1000,36265=>1000,36266=>1000,36267=>1000,36268=>1000,36269=>1000,36270=>1000,36271=>1000,36272=>1000,36273=>1000,36274=>1000,36275=>1000,36276=>1000,\r\n\t36277=>1000,36278=>1000,36279=>1000,36280=>1000,36281=>1000,36282=>1000,36283=>1000,36284=>1000,36285=>1000,36286=>1000,36287=>1000,36288=>1000,36289=>1000,36290=>1000,36291=>1000,36292=>1000,\r\n\t36293=>1000,36294=>1000,36295=>1000,36296=>1000,36297=>1000,36298=>1000,36299=>1000,36300=>1000,36301=>1000,36302=>1000,36303=>1000,36304=>1000,36305=>1000,36306=>1000,36307=>1000,36308=>1000,\r\n\t36309=>1000,36310=>1000,36311=>1000,36312=>1000,36313=>1000,36314=>1000,36315=>1000,36316=>1000,36317=>1000,36318=>1000,36319=>1000,36320=>1000,36321=>1000,36322=>1000,36323=>1000,36324=>1000,\r\n\t36325=>1000,36326=>1000,36327=>1000,36328=>1000,36329=>1000,36330=>1000,36331=>1000,36332=>1000,36333=>1000,36334=>1000,36335=>1000,36336=>1000,36337=>1000,36338=>1000,36339=>1000,36340=>1000,\r\n\t36341=>1000,36342=>1000,36343=>1000,36344=>1000,36345=>1000,36346=>1000,36347=>1000,36348=>1000,36349=>1000,36350=>1000,36351=>1000,36352=>1000,36353=>1000,36354=>1000,36355=>1000,36356=>1000,\r\n\t36357=>1000,36358=>1000,36359=>1000,36360=>1000,36361=>1000,36362=>1000,36363=>1000,36364=>1000,36365=>1000,36366=>1000,36367=>1000,36368=>1000,36369=>1000,36370=>1000,36371=>1000,36372=>1000,\r\n\t36373=>1000,36374=>1000,36375=>1000,36376=>1000,36377=>1000,36378=>1000,36379=>1000,36380=>1000,36381=>1000,36382=>1000,36383=>1000,36384=>1000,36385=>1000,36386=>1000,36387=>1000,36388=>1000,\r\n\t36389=>1000,36390=>1000,36391=>1000,36392=>1000,36393=>1000,36394=>1000,36395=>1000,36396=>1000,36397=>1000,36398=>1000,36399=>1000,36400=>1000,36401=>1000,36402=>1000,36403=>1000,36404=>1000,\r\n\t36405=>1000,36406=>1000,36407=>1000,36408=>1000,36409=>1000,36410=>1000,36411=>1000,36412=>1000,36413=>1000,36414=>1000,36415=>1000,36416=>1000,36417=>1000,36418=>1000,36419=>1000,36420=>1000,\r\n\t36421=>1000,36422=>1000,36423=>1000,36424=>1000,36425=>1000,36426=>1000,36427=>1000,36428=>1000,36429=>1000,36430=>1000,36431=>1000,36432=>1000,36433=>1000,36434=>1000,36435=>1000,36436=>1000,\r\n\t36437=>1000,36438=>1000,36439=>1000,36440=>1000,36441=>1000,36442=>1000,36443=>1000,36444=>1000,36445=>1000,36446=>1000,36447=>1000,36448=>1000,36449=>1000,36450=>1000,36451=>1000,36452=>1000,\r\n\t36453=>1000,36454=>1000,36455=>1000,36456=>1000,36457=>1000,36458=>1000,36459=>1000,36460=>1000,36461=>1000,36462=>1000,36463=>1000,36464=>1000,36465=>1000,36466=>1000,36467=>1000,36468=>1000,\r\n\t36469=>1000,36470=>1000,36471=>1000,36472=>1000,36473=>1000,36474=>1000,36475=>1000,36476=>1000,36477=>1000,36478=>1000,36479=>1000,36480=>1000,36481=>1000,36482=>1000,36483=>1000,36484=>1000,\r\n\t36485=>1000,36486=>1000,36487=>1000,36488=>1000,36489=>1000,36490=>1000,36491=>1000,36492=>1000,36493=>1000,36494=>1000,36495=>1000,36496=>1000,36497=>1000,36498=>1000,36499=>1000,36500=>1000,\r\n\t36501=>1000,36502=>1000,36503=>1000,36504=>1000,36505=>1000,36506=>1000,36507=>1000,36508=>1000,36509=>1000,36510=>1000,36511=>1000,36512=>1000,36513=>1000,36514=>1000,36515=>1000,36516=>1000,\r\n\t36517=>1000,36518=>1000,36519=>1000,36520=>1000,36521=>1000,36522=>1000,36523=>1000,36524=>1000,36525=>1000,36526=>1000,36527=>1000,36528=>1000,36529=>1000,36530=>1000,36531=>1000,36532=>1000,\r\n\t36533=>1000,36534=>1000,36535=>1000,36536=>1000,36537=>1000,36538=>1000,36539=>1000,36540=>1000,36541=>1000,36542=>1000,36543=>1000,36544=>1000,36545=>1000,36546=>1000,36547=>1000,36548=>1000,\r\n\t36549=>1000,36550=>1000,36551=>1000,36552=>1000,36553=>1000,36554=>1000,36555=>1000,36556=>1000,36557=>1000,36558=>1000,36559=>1000,36560=>1000,36561=>1000,36562=>1000,36563=>1000,36564=>1000,\r\n\t36565=>1000,36566=>1000,36567=>1000,36568=>1000,36569=>1000,36570=>1000,36571=>1000,36572=>1000,36573=>1000,36574=>1000,36575=>1000,36576=>1000,36577=>1000,36578=>1000,36579=>1000,36580=>1000,\r\n\t36581=>1000,36582=>1000,36583=>1000,36584=>1000,36585=>1000,36586=>1000,36587=>1000,36588=>1000,36589=>1000,36590=>1000,36591=>1000,36592=>1000,36593=>1000,36594=>1000,36595=>1000,36596=>1000,\r\n\t36597=>1000,36598=>1000,36599=>1000,36600=>1000,36601=>1000,36602=>1000,36603=>1000,36604=>1000,36605=>1000,36606=>1000,36607=>1000,36608=>1000,36609=>1000,36610=>1000,36611=>1000,36612=>1000,\r\n\t36613=>1000,36614=>1000,36615=>1000,36616=>1000,36617=>1000,36618=>1000,36619=>1000,36620=>1000,36621=>1000,36622=>1000,36623=>1000,36624=>1000,36625=>1000,36626=>1000,36627=>1000,36628=>1000,\r\n\t36629=>1000,36630=>1000,36631=>1000,36632=>1000,36633=>1000,36634=>1000,36635=>1000,36636=>1000,36637=>1000,36638=>1000,36639=>1000,36640=>1000,36641=>1000,36642=>1000,36643=>1000,36644=>1000,\r\n\t36645=>1000,36646=>1000,36647=>1000,36648=>1000,36649=>1000,36650=>1000,36651=>1000,36652=>1000,36653=>1000,36654=>1000,36655=>1000,36656=>1000,36657=>1000,36658=>1000,36659=>1000,36660=>1000,\r\n\t36661=>1000,36662=>1000,36663=>1000,36664=>1000,36665=>1000,36666=>1000,36667=>1000,36668=>1000,36669=>1000,36670=>1000,36671=>1000,36672=>1000,36673=>1000,36674=>1000,36675=>1000,36676=>1000,\r\n\t36677=>1000,36678=>1000,36679=>1000,36680=>1000,36681=>1000,36682=>1000,36683=>1000,36684=>1000,36685=>1000,36686=>1000,36687=>1000,36688=>1000,36689=>1000,36690=>1000,36691=>1000,36692=>1000,\r\n\t36693=>1000,36694=>1000,36695=>1000,36696=>1000,36697=>1000,36698=>1000,36699=>1000,36700=>1000,36701=>1000,36702=>1000,36703=>1000,36704=>1000,36705=>1000,36706=>1000,36707=>1000,36708=>1000,\r\n\t36709=>1000,36710=>1000,36711=>1000,36712=>1000,36713=>1000,36714=>1000,36715=>1000,36716=>1000,36717=>1000,36718=>1000,36719=>1000,36720=>1000,36721=>1000,36722=>1000,36723=>1000,36724=>1000,\r\n\t36725=>1000,36726=>1000,36727=>1000,36728=>1000,36729=>1000,36730=>1000,36731=>1000,36732=>1000,36733=>1000,36734=>1000,36735=>1000,36736=>1000,36737=>1000,36738=>1000,36739=>1000,36740=>1000,\r\n\t36741=>1000,36742=>1000,36743=>1000,36744=>1000,36745=>1000,36746=>1000,36747=>1000,36748=>1000,36749=>1000,36750=>1000,36751=>1000,36752=>1000,36753=>1000,36754=>1000,36755=>1000,36756=>1000,\r\n\t36757=>1000,36758=>1000,36759=>1000,36760=>1000,36761=>1000,36762=>1000,36763=>1000,36764=>1000,36765=>1000,36766=>1000,36767=>1000,36768=>1000,36769=>1000,36770=>1000,36771=>1000,36772=>1000,\r\n\t36773=>1000,36774=>1000,36775=>1000,36776=>1000,36777=>1000,36778=>1000,36779=>1000,36780=>1000,36781=>1000,36782=>1000,36783=>1000,36784=>1000,36785=>1000,36786=>1000,36787=>1000,36788=>1000,\r\n\t36789=>1000,36790=>1000,36791=>1000,36792=>1000,36793=>1000,36794=>1000,36795=>1000,36796=>1000,36797=>1000,36798=>1000,36799=>1000,36800=>1000,36801=>1000,36802=>1000,36803=>1000,36804=>1000,\r\n\t36805=>1000,36806=>1000,36807=>1000,36808=>1000,36809=>1000,36810=>1000,36811=>1000,36812=>1000,36813=>1000,36814=>1000,36815=>1000,36816=>1000,36817=>1000,36818=>1000,36819=>1000,36820=>1000,\r\n\t36821=>1000,36822=>1000,36823=>1000,36824=>1000,36825=>1000,36826=>1000,36827=>1000,36828=>1000,36829=>1000,36830=>1000,36831=>1000,36832=>1000,36833=>1000,36834=>1000,36835=>1000,36836=>1000,\r\n\t36837=>1000,36838=>1000,36839=>1000,36840=>1000,36841=>1000,36842=>1000,36843=>1000,36844=>1000,36845=>1000,36846=>1000,36847=>1000,36848=>1000,36849=>1000,36850=>1000,36851=>1000,36852=>1000,\r\n\t36853=>1000,36854=>1000,36855=>1000,36856=>1000,36857=>1000,36858=>1000,36859=>1000,36860=>1000,36861=>1000,36862=>1000,36863=>1000,36864=>1000,36865=>1000,36866=>1000,36867=>1000,36868=>1000,\r\n\t36869=>1000,36870=>1000,36871=>1000,36872=>1000,36873=>1000,36874=>1000,36875=>1000,36876=>1000,36877=>1000,36878=>1000,36879=>1000,36880=>1000,36881=>1000,36882=>1000,36883=>1000,36884=>1000,\r\n\t36885=>1000,36886=>1000,36887=>1000,36888=>1000,36889=>1000,36890=>1000,36891=>1000,36892=>1000,36893=>1000,36894=>1000,36895=>1000,36896=>1000,36897=>1000,36898=>1000,36899=>1000,36900=>1000,\r\n\t36901=>1000,36902=>1000,36903=>1000,36904=>1000,36905=>1000,36906=>1000,36907=>1000,36908=>1000,36909=>1000,36910=>1000,36911=>1000,36912=>1000,36913=>1000,36914=>1000,36915=>1000,36916=>1000,\r\n\t36917=>1000,36918=>1000,36919=>1000,36920=>1000,36921=>1000,36922=>1000,36923=>1000,36924=>1000,36925=>1000,36926=>1000,36927=>1000,36928=>1000,36929=>1000,36930=>1000,36931=>1000,36932=>1000,\r\n\t36933=>1000,36934=>1000,36935=>1000,36936=>1000,36937=>1000,36938=>1000,36939=>1000,36940=>1000,36941=>1000,36942=>1000,36943=>1000,36944=>1000,36945=>1000,36946=>1000,36947=>1000,36948=>1000,\r\n\t36949=>1000,36950=>1000,36951=>1000,36952=>1000,36953=>1000,36954=>1000,36955=>1000,36956=>1000,36957=>1000,36958=>1000,36959=>1000,36960=>1000,36961=>1000,36962=>1000,36963=>1000,36964=>1000,\r\n\t36965=>1000,36966=>1000,36967=>1000,36968=>1000,36969=>1000,36970=>1000,36971=>1000,36972=>1000,36973=>1000,36974=>1000,36975=>1000,36976=>1000,36977=>1000,36978=>1000,36979=>1000,36980=>1000,\r\n\t36981=>1000,36982=>1000,36983=>1000,36984=>1000,36985=>1000,36986=>1000,36987=>1000,36988=>1000,36989=>1000,36990=>1000,36991=>1000,36992=>1000,36993=>1000,36994=>1000,36995=>1000,36996=>1000,\r\n\t36997=>1000,36998=>1000,36999=>1000,37000=>1000,37001=>1000,37002=>1000,37003=>1000,37004=>1000,37005=>1000,37006=>1000,37007=>1000,37008=>1000,37009=>1000,37010=>1000,37011=>1000,37012=>1000,\r\n\t37013=>1000,37014=>1000,37015=>1000,37016=>1000,37017=>1000,37018=>1000,37019=>1000,37020=>1000,37021=>1000,37022=>1000,37023=>1000,37024=>1000,37025=>1000,37026=>1000,37027=>1000,37028=>1000,\r\n\t37029=>1000,37030=>1000,37031=>1000,37032=>1000,37033=>1000,37034=>1000,37035=>1000,37036=>1000,37037=>1000,37038=>1000,37039=>1000,37040=>1000,37041=>1000,37042=>1000,37043=>1000,37044=>1000,\r\n\t37045=>1000,37046=>1000,37047=>1000,37048=>1000,37049=>1000,37050=>1000,37051=>1000,37052=>1000,37053=>1000,37054=>1000,37055=>1000,37056=>1000,37057=>1000,37058=>1000,37059=>1000,37060=>1000,\r\n\t37061=>1000,37062=>1000,37063=>1000,37064=>1000,37065=>1000,37066=>1000,37067=>1000,37068=>1000,37069=>1000,37070=>1000,37071=>1000,37072=>1000,37073=>1000,37074=>1000,37075=>1000,37076=>1000,\r\n\t37077=>1000,37078=>1000,37079=>1000,37080=>1000,37081=>1000,37082=>1000,37083=>1000,37084=>1000,37085=>1000,37086=>1000,37087=>1000,37088=>1000,37089=>1000,37090=>1000,37091=>1000,37092=>1000,\r\n\t37093=>1000,37094=>1000,37095=>1000,37096=>1000,37097=>1000,37098=>1000,37099=>1000,37100=>1000,37101=>1000,37102=>1000,37103=>1000,37104=>1000,37105=>1000,37106=>1000,37107=>1000,37108=>1000,\r\n\t37109=>1000,37110=>1000,37111=>1000,37112=>1000,37113=>1000,37114=>1000,37115=>1000,37116=>1000,37117=>1000,37118=>1000,37119=>1000,37120=>1000,37121=>1000,37122=>1000,37123=>1000,37124=>1000,\r\n\t37125=>1000,37126=>1000,37127=>1000,37128=>1000,37129=>1000,37130=>1000,37131=>1000,37132=>1000,37133=>1000,37134=>1000,37135=>1000,37136=>1000,37137=>1000,37138=>1000,37139=>1000,37140=>1000,\r\n\t37141=>1000,37142=>1000,37143=>1000,37144=>1000,37145=>1000,37146=>1000,37147=>1000,37148=>1000,37149=>1000,37150=>1000,37151=>1000,37152=>1000,37153=>1000,37154=>1000,37155=>1000,37156=>1000,\r\n\t37157=>1000,37158=>1000,37159=>1000,37160=>1000,37161=>1000,37162=>1000,37163=>1000,37164=>1000,37165=>1000,37166=>1000,37167=>1000,37168=>1000,37169=>1000,37170=>1000,37171=>1000,37172=>1000,\r\n\t37173=>1000,37174=>1000,37175=>1000,37176=>1000,37177=>1000,37178=>1000,37179=>1000,37180=>1000,37181=>1000,37182=>1000,37183=>1000,37184=>1000,37185=>1000,37186=>1000,37187=>1000,37188=>1000,\r\n\t37189=>1000,37190=>1000,37191=>1000,37192=>1000,37193=>1000,37194=>1000,37195=>1000,37196=>1000,37197=>1000,37198=>1000,37199=>1000,37200=>1000,37201=>1000,37202=>1000,37203=>1000,37204=>1000,\r\n\t37205=>1000,37206=>1000,37207=>1000,37208=>1000,37209=>1000,37210=>1000,37211=>1000,37212=>1000,37213=>1000,37214=>1000,37215=>1000,37216=>1000,37217=>1000,37218=>1000,37219=>1000,37220=>1000,\r\n\t37221=>1000,37222=>1000,37223=>1000,37224=>1000,37225=>1000,37226=>1000,37227=>1000,37228=>1000,37229=>1000,37230=>1000,37231=>1000,37232=>1000,37233=>1000,37234=>1000,37235=>1000,37236=>1000,\r\n\t37237=>1000,37238=>1000,37239=>1000,37240=>1000,37241=>1000,37242=>1000,37243=>1000,37244=>1000,37245=>1000,37246=>1000,37247=>1000,37248=>1000,37249=>1000,37250=>1000,37251=>1000,37252=>1000,\r\n\t37253=>1000,37254=>1000,37255=>1000,37256=>1000,37257=>1000,37258=>1000,37259=>1000,37260=>1000,37261=>1000,37262=>1000,37263=>1000,37264=>1000,37265=>1000,37266=>1000,37267=>1000,37268=>1000,\r\n\t37269=>1000,37270=>1000,37271=>1000,37272=>1000,37273=>1000,37274=>1000,37275=>1000,37276=>1000,37277=>1000,37278=>1000,37279=>1000,37280=>1000,37281=>1000,37282=>1000,37283=>1000,37284=>1000,\r\n\t37285=>1000,37286=>1000,37287=>1000,37288=>1000,37289=>1000,37290=>1000,37291=>1000,37292=>1000,37293=>1000,37294=>1000,37295=>1000,37296=>1000,37297=>1000,37298=>1000,37299=>1000,37300=>1000,\r\n\t37301=>1000,37302=>1000,37303=>1000,37304=>1000,37305=>1000,37306=>1000,37307=>1000,37308=>1000,37309=>1000,37310=>1000,37311=>1000,37312=>1000,37313=>1000,37314=>1000,37315=>1000,37316=>1000,\r\n\t37317=>1000,37318=>1000,37319=>1000,37320=>1000,37321=>1000,37322=>1000,37323=>1000,37324=>1000,37325=>1000,37326=>1000,37327=>1000,37328=>1000,37329=>1000,37330=>1000,37331=>1000,37332=>1000,\r\n\t37333=>1000,37334=>1000,37335=>1000,37336=>1000,37337=>1000,37338=>1000,37339=>1000,37340=>1000,37341=>1000,37342=>1000,37343=>1000,37344=>1000,37345=>1000,37346=>1000,37347=>1000,37348=>1000,\r\n\t37349=>1000,37350=>1000,37351=>1000,37352=>1000,37353=>1000,37354=>1000,37355=>1000,37356=>1000,37357=>1000,37358=>1000,37359=>1000,37360=>1000,37361=>1000,37362=>1000,37363=>1000,37364=>1000,\r\n\t37365=>1000,37366=>1000,37367=>1000,37368=>1000,37369=>1000,37370=>1000,37371=>1000,37372=>1000,37373=>1000,37374=>1000,37375=>1000,37376=>1000,37377=>1000,37378=>1000,37379=>1000,37380=>1000,\r\n\t37381=>1000,37382=>1000,37383=>1000,37384=>1000,37385=>1000,37386=>1000,37387=>1000,37388=>1000,37389=>1000,37390=>1000,37391=>1000,37392=>1000,37393=>1000,37394=>1000,37395=>1000,37396=>1000,\r\n\t37397=>1000,37398=>1000,37399=>1000,37400=>1000,37401=>1000,37402=>1000,37403=>1000,37404=>1000,37405=>1000,37406=>1000,37407=>1000,37408=>1000,37409=>1000,37410=>1000,37411=>1000,37412=>1000,\r\n\t37413=>1000,37414=>1000,37415=>1000,37416=>1000,37417=>1000,37418=>1000,37419=>1000,37420=>1000,37421=>1000,37422=>1000,37423=>1000,37424=>1000,37425=>1000,37426=>1000,37427=>1000,37428=>1000,\r\n\t37429=>1000,37430=>1000,37431=>1000,37432=>1000,37433=>1000,37434=>1000,37435=>1000,37436=>1000,37437=>1000,37438=>1000,37439=>1000,37440=>1000,37441=>1000,37442=>1000,37443=>1000,37444=>1000,\r\n\t37445=>1000,37446=>1000,37447=>1000,37448=>1000,37449=>1000,37450=>1000,37451=>1000,37452=>1000,37453=>1000,37454=>1000,37455=>1000,37456=>1000,37457=>1000,37458=>1000,37459=>1000,37460=>1000,\r\n\t37461=>1000,37462=>1000,37463=>1000,37464=>1000,37465=>1000,37466=>1000,37467=>1000,37468=>1000,37469=>1000,37470=>1000,37471=>1000,37472=>1000,37473=>1000,37474=>1000,37475=>1000,37476=>1000,\r\n\t37477=>1000,37478=>1000,37479=>1000,37480=>1000,37481=>1000,37482=>1000,37483=>1000,37484=>1000,37485=>1000,37486=>1000,37487=>1000,37488=>1000,37489=>1000,37490=>1000,37491=>1000,37492=>1000,\r\n\t37493=>1000,37494=>1000,37495=>1000,37496=>1000,37497=>1000,37498=>1000,37499=>1000,37500=>1000,37501=>1000,37502=>1000,37503=>1000,37504=>1000,37505=>1000,37506=>1000,37507=>1000,37508=>1000,\r\n\t37509=>1000,37510=>1000,37511=>1000,37512=>1000,37513=>1000,37514=>1000,37515=>1000,37516=>1000,37517=>1000,37518=>1000,37519=>1000,37520=>1000,37521=>1000,37522=>1000,37523=>1000,37524=>1000,\r\n\t37525=>1000,37526=>1000,37527=>1000,37528=>1000,37529=>1000,37530=>1000,37531=>1000,37532=>1000,37533=>1000,37534=>1000,37535=>1000,37536=>1000,37537=>1000,37538=>1000,37539=>1000,37540=>1000,\r\n\t37541=>1000,37542=>1000,37543=>1000,37544=>1000,37545=>1000,37546=>1000,37547=>1000,37548=>1000,37549=>1000,37550=>1000,37551=>1000,37552=>1000,37553=>1000,37554=>1000,37555=>1000,37556=>1000,\r\n\t37557=>1000,37558=>1000,37559=>1000,37560=>1000,37561=>1000,37562=>1000,37563=>1000,37564=>1000,37565=>1000,37566=>1000,37567=>1000,37568=>1000,37569=>1000,37570=>1000,37571=>1000,37572=>1000,\r\n\t37573=>1000,37574=>1000,37575=>1000,37576=>1000,37577=>1000,37578=>1000,37579=>1000,37580=>1000,37581=>1000,37582=>1000,37583=>1000,37584=>1000,37585=>1000,37586=>1000,37587=>1000,37588=>1000,\r\n\t37589=>1000,37590=>1000,37591=>1000,37592=>1000,37593=>1000,37594=>1000,37595=>1000,37596=>1000,37597=>1000,37598=>1000,37599=>1000,37600=>1000,37601=>1000,37602=>1000,37603=>1000,37604=>1000,\r\n\t37605=>1000,37606=>1000,37607=>1000,37608=>1000,37609=>1000,37610=>1000,37611=>1000,37612=>1000,37613=>1000,37614=>1000,37615=>1000,37616=>1000,37617=>1000,37618=>1000,37619=>1000,37620=>1000,\r\n\t37621=>1000,37622=>1000,37623=>1000,37624=>1000,37625=>1000,37626=>1000,37627=>1000,37628=>1000,37629=>1000,37630=>1000,37631=>1000,37632=>1000,37633=>1000,37634=>1000,37635=>1000,37636=>1000,\r\n\t37637=>1000,37638=>1000,37639=>1000,37640=>1000,37641=>1000,37642=>1000,37643=>1000,37644=>1000,37645=>1000,37646=>1000,37647=>1000,37648=>1000,37649=>1000,37650=>1000,37651=>1000,37652=>1000,\r\n\t37653=>1000,37654=>1000,37655=>1000,37656=>1000,37657=>1000,37658=>1000,37659=>1000,37660=>1000,37661=>1000,37662=>1000,37663=>1000,37664=>1000,37665=>1000,37666=>1000,37667=>1000,37668=>1000,\r\n\t37669=>1000,37670=>1000,37671=>1000,37672=>1000,37673=>1000,37674=>1000,37675=>1000,37676=>1000,37677=>1000,37678=>1000,37679=>1000,37680=>1000,37681=>1000,37682=>1000,37683=>1000,37684=>1000,\r\n\t37685=>1000,37686=>1000,37687=>1000,37688=>1000,37689=>1000,37690=>1000,37691=>1000,37692=>1000,37693=>1000,37694=>1000,37695=>1000,37696=>1000,37697=>1000,37698=>1000,37699=>1000,37700=>1000,\r\n\t37701=>1000,37702=>1000,37703=>1000,37704=>1000,37705=>1000,37706=>1000,37707=>1000,37708=>1000,37709=>1000,37710=>1000,37711=>1000,37712=>1000,37713=>1000,37714=>1000,37715=>1000,37716=>1000,\r\n\t37717=>1000,37718=>1000,37719=>1000,37720=>1000,37721=>1000,37722=>1000,37723=>1000,37724=>1000,37725=>1000,37726=>1000,37727=>1000,37728=>1000,37729=>1000,37730=>1000,37731=>1000,37732=>1000,\r\n\t37733=>1000,37734=>1000,37735=>1000,37736=>1000,37737=>1000,37738=>1000,37739=>1000,37740=>1000,37741=>1000,37742=>1000,37743=>1000,37744=>1000,37745=>1000,37746=>1000,37747=>1000,37748=>1000,\r\n\t37749=>1000,37750=>1000,37751=>1000,37752=>1000,37753=>1000,37754=>1000,37755=>1000,37756=>1000,37757=>1000,37758=>1000,37759=>1000,37760=>1000,37761=>1000,37762=>1000,37763=>1000,37764=>1000,\r\n\t37765=>1000,37766=>1000,37767=>1000,37768=>1000,37769=>1000,37770=>1000,37771=>1000,37772=>1000,37773=>1000,37774=>1000,37775=>1000,37776=>1000,37777=>1000,37778=>1000,37779=>1000,37780=>1000,\r\n\t37781=>1000,37782=>1000,37783=>1000,37784=>1000,37785=>1000,37786=>1000,37787=>1000,37788=>1000,37789=>1000,37790=>1000,37791=>1000,37792=>1000,37793=>1000,37794=>1000,37795=>1000,37796=>1000,\r\n\t37797=>1000,37798=>1000,37799=>1000,37800=>1000,37801=>1000,37802=>1000,37803=>1000,37804=>1000,37805=>1000,37806=>1000,37807=>1000,37808=>1000,37809=>1000,37810=>1000,37811=>1000,37812=>1000,\r\n\t37813=>1000,37814=>1000,37815=>1000,37816=>1000,37817=>1000,37818=>1000,37819=>1000,37820=>1000,37821=>1000,37822=>1000,37823=>1000,37824=>1000,37825=>1000,37826=>1000,37827=>1000,37828=>1000,\r\n\t37829=>1000,37830=>1000,37831=>1000,37832=>1000,37833=>1000,37834=>1000,37835=>1000,37836=>1000,37837=>1000,37838=>1000,37839=>1000,37840=>1000,37841=>1000,37842=>1000,37843=>1000,37844=>1000,\r\n\t37845=>1000,37846=>1000,37847=>1000,37848=>1000,37849=>1000,37850=>1000,37851=>1000,37852=>1000,37853=>1000,37854=>1000,37855=>1000,37856=>1000,37857=>1000,37858=>1000,37859=>1000,37860=>1000,\r\n\t37861=>1000,37862=>1000,37863=>1000,37864=>1000,37865=>1000,37866=>1000,37867=>1000,37868=>1000,37869=>1000,37870=>1000,37871=>1000,37872=>1000,37873=>1000,37874=>1000,37875=>1000,37876=>1000,\r\n\t37877=>1000,37878=>1000,37879=>1000,37880=>1000,37881=>1000,37882=>1000,37883=>1000,37884=>1000,37885=>1000,37886=>1000,37887=>1000,37888=>1000,37889=>1000,37890=>1000,37891=>1000,37892=>1000,\r\n\t37893=>1000,37894=>1000,37895=>1000,37896=>1000,37897=>1000,37898=>1000,37899=>1000,37900=>1000,37901=>1000,37902=>1000,37903=>1000,37904=>1000,37905=>1000,37906=>1000,37907=>1000,37908=>1000,\r\n\t37909=>1000,37910=>1000,37911=>1000,37912=>1000,37913=>1000,37914=>1000,37915=>1000,37916=>1000,37917=>1000,37918=>1000,37919=>1000,37920=>1000,37921=>1000,37922=>1000,37923=>1000,37924=>1000,\r\n\t37925=>1000,37926=>1000,37927=>998,37928=>1000,37929=>1000,37930=>1000,37931=>1000,37932=>1000,37933=>1000,37934=>1000,37935=>1000,37936=>1000,37937=>1000,37938=>1000,37939=>1000,37940=>1000,\r\n\t37941=>1000,37942=>1000,37943=>1000,37944=>1000,37945=>1000,37946=>1000,37947=>1000,37948=>1000,37949=>1000,37950=>1000,37951=>1000,37952=>1000,37953=>1000,37954=>1000,37955=>1000,37956=>1000,\r\n\t37957=>1000,37958=>1000,37959=>1000,37960=>1000,37961=>1000,37962=>1000,37963=>1000,37964=>1000,37965=>1000,37966=>1000,37967=>1000,37968=>1000,37969=>1000,37970=>1000,37971=>1000,37972=>1000,\r\n\t37973=>1000,37974=>1000,37975=>1000,37976=>1000,37977=>1000,37978=>1000,37979=>1000,37980=>1000,37981=>1000,37982=>1000,37983=>1000,37984=>1000,37985=>1000,37986=>1000,37987=>1000,37988=>1000,\r\n\t37989=>1000,37990=>1000,37991=>1000,37992=>1000,37993=>1000,37994=>1000,37995=>1000,37996=>1000,37997=>1000,37998=>1000,37999=>1000,38000=>1000,38001=>1000,38002=>1000,38003=>1000,38004=>1000,\r\n\t38005=>1000,38006=>1000,38007=>1000,38008=>1000,38009=>1000,38010=>1000,38011=>1000,38012=>1000,38013=>1000,38014=>1000,38015=>1000,38016=>1000,38017=>1000,38018=>1000,38019=>1000,38020=>1000,\r\n\t38021=>1000,38022=>1000,38023=>1000,38024=>1000,38025=>1000,38026=>1000,38027=>1000,38028=>1000,38029=>1000,38030=>1000,38031=>1000,38032=>1000,38033=>1000,38034=>1000,38035=>1000,38036=>1000,\r\n\t38037=>1000,38038=>1000,38039=>1000,38040=>1000,38041=>1000,38042=>1000,38043=>1000,38044=>1000,38045=>1000,38046=>1000,38047=>1000,38048=>1000,38049=>1000,38050=>1000,38051=>1000,38052=>1000,\r\n\t38053=>1000,38054=>1000,38055=>1000,38056=>1000,38057=>1000,38058=>1000,38059=>1000,38060=>1000,38061=>1000,38062=>1000,38063=>1000,38064=>1000,38065=>1000,38066=>1000,38067=>1000,38068=>1000,\r\n\t38069=>1000,38070=>1000,38071=>1000,38072=>1000,38073=>1000,38074=>1000,38075=>1000,38076=>1000,38077=>1000,38078=>1000,38079=>1000,38080=>1000,38081=>1000,38082=>1000,38083=>1000,38084=>1000,\r\n\t38085=>1000,38086=>1000,38087=>1000,38088=>1000,38089=>1000,38090=>1000,38091=>1000,38092=>1000,38093=>1000,38094=>1000,38095=>1000,38096=>1000,38097=>1000,38098=>1000,38099=>1000,38100=>1000,\r\n\t38101=>1000,38102=>1000,38103=>1000,38104=>1000,38105=>1000,38106=>1000,38107=>1000,38108=>1000,38109=>1000,38110=>1000,38111=>1000,38112=>1000,38113=>1000,38114=>1000,38115=>1000,38116=>1000,\r\n\t38117=>1000,38118=>1000,38119=>1000,38120=>1000,38121=>1000,38122=>1000,38123=>1000,38124=>1000,38125=>1000,38126=>1000,38127=>1000,38128=>1000,38129=>1000,38130=>1000,38131=>1000,38132=>1000,\r\n\t38133=>1000,38134=>1000,38135=>1000,38136=>1000,38137=>1000,38138=>1000,38139=>1000,38140=>1000,38141=>1000,38142=>1000,38143=>1000,38144=>1000,38145=>1000,38146=>1000,38147=>1000,38148=>1000,\r\n\t38149=>1000,38150=>1000,38151=>1000,38152=>1000,38153=>1000,38154=>1000,38155=>1000,38156=>1000,38157=>1000,38158=>1000,38159=>1000,38160=>1000,38161=>1000,38162=>1000,38163=>1000,38164=>1000,\r\n\t38165=>1000,38166=>1000,38167=>1000,38168=>1000,38169=>1000,38170=>1000,38171=>1000,38172=>1000,38173=>1000,38174=>1000,38175=>1000,38176=>1000,38177=>1000,38178=>1000,38179=>1000,38180=>1000,\r\n\t38181=>1000,38182=>1000,38183=>1000,38184=>1000,38185=>1000,38186=>1000,38187=>1000,38188=>1000,38189=>1000,38190=>1000,38191=>1000,38192=>1000,38193=>1000,38194=>1000,38195=>1000,38196=>1000,\r\n\t38197=>1000,38198=>1000,38199=>1000,38200=>1000,38201=>1000,38202=>1000,38203=>1000,38204=>1000,38205=>1000,38206=>1000,38207=>1000,38208=>1000,38209=>1000,38210=>1000,38211=>1000,38212=>1000,\r\n\t38213=>1000,38214=>1000,38215=>1000,38216=>1000,38217=>1000,38218=>1000,38219=>1000,38220=>1000,38221=>1000,38222=>1000,38223=>1000,38224=>1000,38225=>1000,38226=>1000,38227=>1000,38228=>1000,\r\n\t38229=>1000,38230=>1000,38231=>1000,38232=>1000,38233=>1000,38234=>1000,38235=>1000,38236=>1000,38237=>1000,38238=>1000,38239=>1000,38240=>1000,38241=>1000,38242=>1000,38243=>1000,38244=>1000,\r\n\t38245=>1000,38246=>1000,38247=>1000,38248=>1000,38249=>1000,38250=>1000,38251=>1000,38252=>1000,38253=>1000,38254=>1000,38255=>1000,38256=>1000,38257=>1000,38258=>1000,38259=>1000,38260=>1000,\r\n\t38261=>1000,38262=>1000,38263=>1000,38264=>1000,38265=>1000,38266=>1000,38267=>1000,38268=>1000,38269=>1000,38270=>1000,38271=>1000,38272=>1000,38273=>1000,38274=>1000,38275=>1000,38276=>1000,\r\n\t38277=>1000,38278=>1000,38279=>1000,38280=>1000,38281=>1000,38282=>1000,38283=>1000,38284=>1000,38285=>1000,38286=>1000,38287=>1000,38288=>1000,38289=>1000,38290=>1000,38291=>1000,38292=>1000,\r\n\t38293=>1000,38294=>1000,38295=>1000,38296=>1000,38297=>1000,38298=>1000,38299=>1000,38300=>1000,38301=>1000,38302=>1000,38303=>1000,38304=>1000,38305=>1000,38306=>1000,38307=>1000,38308=>1000,\r\n\t38309=>1000,38310=>1000,38311=>1000,38312=>1000,38313=>1000,38314=>1000,38315=>1000,38316=>1000,38317=>1000,38318=>1000,38319=>1000,38320=>1000,38321=>1000,38322=>1000,38323=>1000,38324=>1000,\r\n\t38325=>1000,38326=>1000,38327=>1000,38328=>1000,38329=>1000,38330=>1000,38331=>1000,38332=>1000,38333=>1000,38334=>1000,38335=>1000,38336=>1000,38337=>1000,38338=>1000,38339=>1000,38340=>1000,\r\n\t38341=>1000,38342=>1000,38343=>1000,38344=>1000,38345=>1000,38346=>1000,38347=>1000,38348=>1000,38349=>1000,38350=>1000,38351=>1000,38352=>1000,38353=>1000,38354=>1000,38355=>1000,38356=>1000,\r\n\t38357=>1000,38358=>1000,38359=>1000,38360=>1000,38361=>1000,38362=>1000,38363=>1000,38364=>1000,38365=>1000,38366=>1000,38367=>1000,38368=>1000,38369=>1000,38370=>1000,38371=>1000,38372=>1000,\r\n\t38373=>1000,38374=>1000,38375=>1000,38376=>1000,38377=>1000,38378=>1000,38379=>1000,38380=>1000,38381=>1000,38382=>1000,38383=>1000,38384=>1000,38385=>1000,38386=>1000,38387=>1000,38388=>1000,\r\n\t38389=>1000,38390=>1000,38391=>1000,38392=>1000,38393=>1000,38394=>1000,38395=>1000,38396=>1000,38397=>1000,38398=>1000,38399=>1000,38400=>1000,38401=>1000,38402=>1000,38403=>1000,38404=>1000,\r\n\t38405=>1000,38406=>1000,38407=>1000,38408=>1000,38409=>1000,38410=>1000,38411=>1000,38412=>1000,38413=>1000,38414=>1000,38415=>1000,38416=>1000,38417=>1000,38418=>1000,38419=>1000,38420=>1000,\r\n\t38421=>1000,38422=>1000,38423=>1000,38424=>1000,38425=>1000,38426=>1000,38427=>1000,38428=>1000,38429=>1000,38430=>1000,38431=>1000,38432=>1000,38433=>1000,38434=>1000,38435=>1000,38436=>1000,\r\n\t38437=>1000,38438=>1000,38439=>1000,38440=>1000,38441=>1000,38442=>1000,38443=>1000,38444=>1000,38445=>1000,38446=>1000,38447=>1000,38448=>1000,38449=>1000,38450=>1000,38451=>1000,38452=>1000,\r\n\t38453=>1000,38454=>1000,38455=>1000,38456=>1000,38457=>1000,38458=>1000,38459=>1000,38460=>1000,38461=>1000,38462=>1000,38463=>1000,38464=>1000,38465=>1000,38466=>1000,38467=>1000,38468=>1000,\r\n\t38469=>1000,38470=>1000,38471=>1000,38472=>1000,38473=>1000,38474=>1000,38475=>1000,38476=>1000,38477=>1000,38478=>1000,38479=>1000,38480=>1000,38481=>1000,38482=>1000,38483=>1000,38484=>1000,\r\n\t38485=>1000,38486=>1000,38487=>1000,38488=>1000,38489=>1000,38490=>1000,38491=>1000,38492=>1000,38493=>1000,38494=>1000,38495=>1000,38496=>1000,38497=>1000,38498=>1000,38499=>1000,38500=>1000,\r\n\t38501=>1000,38502=>1000,38503=>1000,38504=>1000,38505=>1000,38506=>1000,38507=>1000,38508=>1000,38509=>1000,38510=>1000,38511=>1000,38512=>1000,38513=>1000,38514=>1000,38515=>1000,38516=>1000,\r\n\t38517=>1000,38518=>1000,38519=>1000,38520=>1000,38521=>1000,38522=>1000,38523=>1000,38524=>1000,38525=>1000,38526=>1000,38527=>1000,38528=>1000,38529=>1000,38530=>1000,38531=>1000,38532=>1000,\r\n\t38533=>1000,38534=>1000,38535=>1000,38536=>1000,38537=>1000,38538=>1000,38539=>1000,38540=>1000,38541=>1000,38542=>1000,38543=>1000,38544=>1000,38545=>1000,38546=>1000,38547=>1000,38548=>1000,\r\n\t38549=>1000,38550=>1000,38551=>1000,38552=>1000,38553=>1000,38554=>1000,38555=>1000,38556=>1000,38557=>1000,38558=>1000,38559=>1000,38560=>1000,38561=>1000,38562=>1000,38563=>1000,38564=>1000,\r\n\t38565=>1000,38566=>1000,38567=>1000,38568=>1000,38569=>1000,38570=>1000,38571=>1000,38572=>1000,38573=>1000,38574=>1000,38575=>1000,38576=>1000,38577=>1000,38578=>1000,38579=>1000,38580=>1000,\r\n\t38581=>1000,38582=>1000,38583=>1000,38584=>1000,38585=>1000,38586=>1000,38587=>1000,38588=>1000,38589=>1000,38590=>1000,38591=>1000,38592=>1000,38593=>1000,38594=>1000,38595=>1000,38596=>1000,\r\n\t38597=>1000,38598=>1000,38599=>1000,38600=>1000,38601=>1000,38602=>1000,38603=>1000,38604=>1000,38605=>1000,38606=>1000,38607=>1000,38608=>1000,38609=>1000,38610=>1000,38611=>1000,38612=>1000,\r\n\t38613=>1000,38614=>1000,38615=>1000,38616=>1000,38617=>1000,38618=>1000,38619=>1000,38620=>1000,38621=>1000,38622=>1000,38623=>1000,38624=>1000,38625=>1000,38626=>1000,38627=>1000,38628=>1000,\r\n\t38629=>1000,38630=>1000,38631=>1000,38632=>1000,38633=>1000,38634=>1000,38635=>1000,38636=>1000,38637=>1000,38638=>1000,38639=>1000,38640=>1000,38641=>1000,38642=>1000,38643=>1000,38644=>1000,\r\n\t38645=>1000,38646=>1000,38647=>1000,38648=>1000,38649=>1000,38650=>1000,38651=>1000,38652=>1000,38653=>1000,38654=>1000,38655=>1000,38656=>1000,38657=>1000,38658=>1000,38659=>1000,38660=>1000,\r\n\t38661=>1000,38662=>1000,38663=>1000,38664=>1000,38665=>1000,38666=>1000,38667=>1000,38668=>1000,38669=>1000,38670=>1000,38671=>1000,38672=>1000,38673=>1000,38674=>1000,38675=>1000,38676=>1000,\r\n\t38677=>1000,38678=>1000,38679=>1000,38680=>1000,38681=>1000,38682=>1000,38683=>1000,38684=>1000,38685=>1000,38686=>1000,38687=>1000,38688=>1000,38689=>1000,38690=>1000,38691=>1000,38692=>1000,\r\n\t38693=>1000,38694=>1000,38695=>1000,38696=>1000,38697=>1000,38698=>1000,38699=>1000,38700=>1000,38701=>1000,38702=>1000,38703=>1000,38704=>1000,38705=>1000,38706=>1000,38707=>1000,38708=>1000,\r\n\t38709=>1000,38710=>1000,38711=>1000,38712=>1000,38713=>1000,38714=>1000,38715=>1000,38716=>1000,38717=>1000,38718=>1000,38719=>1000,38720=>1000,38721=>1000,38722=>1000,38723=>1000,38724=>1000,\r\n\t38725=>1000,38726=>1000,38727=>1000,38728=>1000,38729=>1000,38730=>1000,38731=>1000,38732=>1000,38733=>1000,38734=>1000,38735=>1000,38736=>1000,38737=>1000,38738=>1000,38739=>1000,38740=>1000,\r\n\t38741=>1000,38742=>1000,38743=>1000,38744=>1000,38745=>1000,38746=>1000,38747=>1000,38748=>1000,38749=>1000,38750=>1000,38751=>1000,38752=>1000,38753=>1000,38754=>1000,38755=>1000,38756=>1000,\r\n\t38757=>1000,38758=>1000,38759=>1000,38760=>1000,38761=>1000,38762=>1000,38763=>1000,38764=>1000,38765=>1000,38766=>1000,38767=>1000,38768=>1000,38769=>1000,38770=>1000,38771=>1000,38772=>1000,\r\n\t38773=>1000,38774=>1000,38775=>1000,38776=>1000,38777=>1000,38778=>1000,38779=>1000,38780=>1000,38781=>1000,38782=>1000,38783=>1000,38784=>1000,38785=>1000,38786=>1000,38787=>1000,38788=>1000,\r\n\t38789=>1000,38790=>1000,38791=>1000,38792=>1000,38793=>1000,38794=>1000,38795=>1000,38796=>1000,38797=>1000,38798=>1000,38799=>1000,38800=>1000,38801=>1000,38802=>1000,38803=>1000,38804=>1000,\r\n\t38805=>1000,38806=>1000,38807=>1000,38808=>1000,38809=>1000,38810=>1000,38811=>1000,38812=>1000,38813=>1000,38814=>1000,38815=>1000,38816=>1000,38817=>1000,38818=>1000,38819=>1000,38820=>1000,\r\n\t38821=>1000,38822=>1000,38823=>1000,38824=>1000,38825=>1000,38826=>1000,38827=>1000,38828=>1000,38829=>1000,38830=>1000,38831=>1000,38832=>1000,38833=>1000,38834=>1000,38835=>1000,38836=>1000,\r\n\t38837=>1000,38838=>1000,38839=>1000,38840=>1000,38841=>1000,38842=>1000,38843=>1000,38844=>1000,38845=>1000,38846=>1000,38847=>1000,38848=>1000,38849=>1000,38850=>1000,38851=>1000,38852=>1000,\r\n\t38853=>1000,38854=>1000,38855=>1000,38856=>1000,38857=>1000,38858=>1000,38859=>1000,38860=>1000,38861=>1000,38862=>1000,38863=>1000,38864=>1000,38865=>1000,38866=>1000,38867=>1000,38868=>1000,\r\n\t38869=>1000,38870=>1000,38871=>1000,38872=>1000,38873=>1000,38874=>1000,38875=>1000,38876=>1000,38877=>1000,38878=>1000,38879=>1000,38880=>1000,38881=>1000,38882=>1000,38883=>1000,38884=>1000,\r\n\t38885=>1000,38886=>1000,38887=>1000,38888=>1000,38889=>1000,38890=>1000,38891=>1000,38892=>1000,38893=>1000,38894=>1000,38895=>1000,38896=>1000,38897=>1000,38898=>1000,38899=>1000,38900=>1000,\r\n\t38901=>1000,38902=>1000,38903=>1000,38904=>1000,38905=>1000,38906=>1000,38907=>1000,38908=>1000,38909=>1000,38910=>1000,38911=>1000,38912=>1000,38913=>1000,38914=>1000,38915=>1000,38916=>1000,\r\n\t38917=>1000,38918=>1000,38919=>1000,38920=>1000,38921=>1000,38922=>1000,38923=>1000,38924=>1000,38925=>1000,38926=>1000,38927=>1000,38928=>1000,38929=>1000,38930=>1000,38931=>1000,38932=>1000,\r\n\t38933=>1000,38934=>1000,38935=>1000,38936=>1000,38937=>1000,38938=>1000,38939=>1000,38940=>1000,38941=>1000,38942=>1000,38943=>1000,38944=>1000,38945=>1000,38946=>1000,38947=>1000,38948=>1000,\r\n\t38949=>1000,38950=>1000,38951=>1000,38952=>1000,38953=>1000,38954=>1000,38955=>1000,38956=>1000,38957=>1000,38958=>1000,38959=>1000,38960=>1000,38961=>1000,38962=>1000,38963=>1000,38964=>1000,\r\n\t38965=>1000,38966=>1000,38967=>1000,38968=>1000,38969=>1000,38970=>1000,38971=>1000,38972=>1000,38973=>1000,38974=>1000,38975=>1000,38976=>1000,38977=>1000,38978=>1000,38979=>1000,38980=>1000,\r\n\t38981=>1000,38982=>1000,38983=>1000,38984=>1000,38985=>1000,38986=>1000,38987=>1000,38988=>1000,38989=>1000,38990=>1000,38991=>1000,38992=>1000,38993=>1000,38994=>1000,38995=>1000,38996=>1000,\r\n\t38997=>1000,38998=>1000,38999=>1000,39000=>1000,39001=>1000,39002=>1000,39003=>1000,39004=>1000,39005=>1000,39006=>1000,39007=>1000,39008=>1000,39009=>1000,39010=>1000,39011=>1000,39012=>1000,\r\n\t39013=>1000,39014=>1000,39015=>1000,39016=>1000,39017=>1000,39018=>1000,39019=>1000,39020=>1000,39021=>1000,39022=>1000,39023=>1000,39024=>1000,39025=>1000,39026=>1000,39027=>1000,39028=>1000,\r\n\t39029=>1000,39030=>1000,39031=>1000,39032=>1000,39033=>1000,39034=>1000,39035=>1000,39036=>1000,39037=>1000,39038=>1000,39039=>1000,39040=>1000,39041=>1000,39042=>1000,39043=>1000,39044=>1000,\r\n\t39045=>1000,39046=>1000,39047=>1000,39048=>1000,39049=>1000,39050=>1000,39051=>1000,39052=>1000,39053=>1000,39054=>1000,39055=>1000,39056=>1000,39057=>1000,39058=>1000,39059=>1000,39060=>1000,\r\n\t39061=>1000,39062=>1000,39063=>1000,39064=>1000,39065=>1000,39066=>1000,39067=>1000,39068=>1000,39069=>1000,39070=>1000,39071=>1000,39072=>1000,39073=>1000,39074=>1000,39075=>1000,39076=>1000,\r\n\t39077=>1000,39078=>1000,39079=>1000,39080=>1000,39081=>1000,39082=>1000,39083=>1000,39084=>1000,39085=>1000,39086=>1000,39087=>1000,39088=>1000,39089=>1000,39090=>1000,39091=>1000,39092=>1000,\r\n\t39093=>1000,39094=>1000,39095=>1000,39096=>1000,39097=>1000,39098=>1000,39099=>1000,39100=>1000,39101=>1000,39102=>1000,39103=>1000,39104=>1000,39105=>1000,39106=>1000,39107=>1000,39108=>1000,\r\n\t39109=>1000,39110=>1000,39111=>1000,39112=>1000,39113=>1000,39114=>1000,39115=>1000,39116=>1000,39117=>1000,39118=>1000,39119=>1000,39120=>1000,39121=>1000,39122=>1000,39123=>1000,39124=>1000,\r\n\t39125=>1000,39126=>1000,39127=>1000,39128=>1000,39129=>1000,39130=>1000,39131=>1000,39132=>1000,39133=>1000,39134=>1000,39135=>1000,39136=>1000,39137=>1000,39138=>1000,39139=>1000,39140=>1000,\r\n\t39141=>1000,39142=>1000,39143=>1000,39144=>1000,39145=>1000,39146=>1000,39147=>1000,39148=>1000,39149=>1000,39150=>1000,39151=>1000,39152=>1000,39153=>1000,39154=>1000,39155=>1000,39156=>1000,\r\n\t39157=>1000,39158=>1000,39159=>1000,39160=>1000,39161=>1000,39162=>1000,39163=>1000,39164=>1000,39165=>1000,39166=>1000,39167=>1000,39168=>1000,39169=>1000,39170=>1000,39171=>1000,39172=>1000,\r\n\t39173=>1000,39174=>1000,39175=>1000,39176=>1000,39177=>1000,39178=>1000,39179=>1000,39180=>1000,39181=>1000,39182=>1000,39183=>1000,39184=>1000,39185=>1000,39186=>1000,39187=>1000,39188=>1000,\r\n\t39189=>1000,39190=>1000,39191=>1000,39192=>1000,39193=>1000,39194=>1000,39195=>1000,39196=>1000,39197=>1000,39198=>1000,39199=>1000,39200=>1000,39201=>1000,39202=>1000,39203=>1000,39204=>1000,\r\n\t39205=>1000,39206=>1000,39207=>1000,39208=>1000,39209=>1000,39210=>1000,39211=>1000,39212=>1000,39213=>1000,39214=>1000,39215=>1000,39216=>1000,39217=>1000,39218=>1000,39219=>1000,39220=>1000,\r\n\t39221=>1000,39222=>1000,39223=>1000,39224=>1000,39225=>1000,39226=>1000,39227=>1000,39228=>1000,39229=>1000,39230=>1000,39231=>1000,39232=>1000,39233=>1000,39234=>1000,39235=>1000,39236=>1000,\r\n\t39237=>1000,39238=>1000,39239=>1000,39240=>1000,39241=>1000,39242=>1000,39243=>1000,39244=>1000,39245=>1000,39246=>1000,39247=>1000,39248=>1000,39249=>1000,39250=>1000,39251=>1000,39252=>1000,\r\n\t39253=>1000,39254=>1000,39255=>1000,39256=>1000,39257=>1000,39258=>1000,39259=>1000,39260=>1000,39261=>1000,39262=>1000,39263=>1000,39264=>1000,39265=>1000,39266=>1000,39267=>1000,39268=>1000,\r\n\t39269=>1000,39270=>1000,39271=>1000,39272=>1000,39273=>1000,39274=>1000,39275=>1000,39276=>1000,39277=>1000,39278=>1000,39279=>1000,39280=>1000,39281=>1000,39282=>1000,39283=>1000,39284=>1000,\r\n\t39285=>1000,39286=>1000,39287=>1000,39288=>1000,39289=>1000,39290=>1000,39291=>1000,39292=>1000,39293=>1000,39294=>1000,39295=>1000,39296=>1000,39297=>1000,39298=>1000,39299=>1000,39300=>1000,\r\n\t39301=>1000,39302=>1000,39303=>1000,39304=>1000,39305=>1000,39306=>1000,39307=>1000,39308=>1000,39309=>1000,39310=>1000,39311=>1000,39312=>1000,39313=>1000,39314=>1000,39315=>1000,39316=>1000,\r\n\t39317=>1000,39318=>1000,39319=>1000,39320=>1000,39321=>1000,39322=>1000,39323=>1000,39324=>1000,39325=>1000,39326=>1000,39327=>1000,39328=>1000,39329=>1000,39330=>1000,39331=>1000,39332=>1000,\r\n\t39333=>1000,39334=>1000,39335=>1000,39336=>1000,39337=>1000,39338=>1000,39339=>1000,39340=>1000,39341=>1000,39342=>1000,39343=>1000,39344=>1000,39345=>1000,39346=>1000,39347=>1000,39348=>1000,\r\n\t39349=>1000,39350=>1000,39351=>1000,39352=>1000,39353=>1000,39354=>1000,39355=>1000,39356=>1000,39357=>1000,39358=>1000,39359=>1000,39360=>1000,39361=>1000,39362=>1000,39363=>1000,39364=>1000,\r\n\t39365=>1000,39366=>1000,39367=>1000,39368=>1000,39369=>1000,39370=>1000,39371=>1000,39372=>1000,39373=>1000,39374=>1000,39375=>1000,39376=>1000,39377=>1000,39378=>1000,39379=>1000,39380=>1000,\r\n\t39381=>1000,39382=>1000,39383=>1000,39384=>1000,39385=>1000,39386=>1000,39387=>1000,39388=>1000,39389=>1000,39390=>1000,39391=>1000,39392=>1000,39393=>1000,39394=>1000,39395=>1000,39396=>1000,\r\n\t39397=>1000,39398=>1000,39399=>1000,39400=>1000,39401=>1000,39402=>1000,39403=>1000,39404=>1000,39405=>1000,39406=>1000,39407=>1000,39408=>1000,39409=>1000,39410=>1000,39411=>1000,39412=>1000,\r\n\t39413=>1000,39414=>1000,39415=>1000,39416=>1000,39417=>1000,39418=>1000,39419=>1000,39420=>1000,39421=>1000,39422=>1000,39423=>1000,39424=>1000,39425=>1000,39426=>1000,39427=>1000,39428=>1000,\r\n\t39429=>1000,39430=>1000,39431=>1000,39432=>1000,39433=>1000,39434=>1000,39435=>1000,39436=>1000,39437=>1000,39438=>1000,39439=>1000,39440=>1000,39441=>1000,39442=>1000,39443=>1000,39444=>1000,\r\n\t39445=>1000,39446=>1000,39447=>1000,39448=>1000,39449=>1000,39450=>1000,39451=>1000,39452=>1000,39453=>1000,39454=>1000,39455=>1000,39456=>1000,39457=>1000,39458=>1000,39459=>1000,39460=>1000,\r\n\t39461=>1000,39462=>1000,39463=>1000,39464=>1000,39465=>1000,39466=>1000,39467=>1000,39468=>1000,39469=>1000,39470=>1000,39471=>1000,39472=>1000,39473=>1000,39474=>1000,39475=>1000,39476=>1000,\r\n\t39477=>1000,39478=>1000,39479=>1000,39480=>1000,39481=>1000,39482=>1000,39483=>1000,39484=>1000,39485=>1000,39486=>1000,39487=>1000,39488=>1000,39489=>1000,39490=>1000,39491=>1000,39492=>1000,\r\n\t39493=>1000,39494=>1000,39495=>1000,39496=>1000,39497=>1000,39498=>1000,39499=>1000,39500=>1000,39501=>1000,39502=>1000,39503=>1000,39504=>1000,39505=>1000,39506=>1000,39507=>1000,39508=>1000,\r\n\t39509=>1000,39510=>1000,39511=>1000,39512=>1000,39513=>1000,39514=>1000,39515=>1000,39516=>1000,39517=>1000,39518=>1000,39519=>1000,39520=>1000,39521=>1000,39522=>1000,39523=>1000,39524=>1000,\r\n\t39525=>1000,39526=>1000,39527=>1000,39528=>1000,39529=>1000,39530=>1000,39531=>1000,39532=>1000,39533=>1000,39534=>1000,39535=>1000,39536=>1000,39537=>1000,39538=>1000,39539=>1000,39540=>1000,\r\n\t39541=>1000,39542=>1000,39543=>1000,39544=>1000,39545=>1000,39546=>1000,39547=>1000,39548=>1000,39549=>1000,39550=>1000,39551=>1000,39552=>1000,39553=>1000,39554=>1000,39555=>1000,39556=>1000,\r\n\t39557=>1000,39558=>1000,39559=>1000,39560=>1000,39561=>1000,39562=>1000,39563=>1000,39564=>1000,39565=>1000,39566=>1000,39567=>1000,39568=>1000,39569=>1000,39570=>1000,39571=>1000,39572=>1000,\r\n\t39573=>1000,39574=>1000,39575=>1000,39576=>1000,39577=>1000,39578=>1000,39579=>1000,39580=>1000,39581=>1000,39582=>1000,39583=>1000,39584=>1000,39585=>1000,39586=>1000,39587=>1000,39588=>1000,\r\n\t39589=>1000,39590=>1000,39591=>1000,39592=>1000,39593=>1000,39594=>1000,39595=>1000,39596=>1000,39597=>1000,39598=>1000,39599=>1000,39600=>1000,39601=>1000,39602=>1000,39603=>1000,39604=>1000,\r\n\t39605=>1000,39606=>1000,39607=>1000,39608=>1000,39609=>1000,39610=>1000,39611=>1000,39612=>1000,39613=>1000,39614=>1000,39615=>1000,39616=>1000,39617=>1000,39618=>1000,39619=>1000,39620=>1000,\r\n\t39621=>1000,39622=>1000,39623=>1000,39624=>1000,39625=>1000,39626=>1000,39627=>1000,39628=>1000,39629=>1000,39630=>1000,39631=>1000,39632=>1000,39633=>1000,39634=>1000,39635=>1000,39636=>1000,\r\n\t39637=>1000,39638=>1000,39639=>1000,39640=>1000,39641=>1000,39642=>1000,39643=>1000,39644=>1000,39645=>1000,39646=>1000,39647=>1000,39648=>1000,39649=>1000,39650=>1000,39651=>1000,39652=>1000,\r\n\t39653=>1000,39654=>1000,39655=>1000,39656=>1000,39657=>1000,39658=>1000,39659=>1000,39660=>1000,39661=>1000,39662=>1000,39663=>1000,39664=>1000,39665=>1000,39666=>1000,39667=>1000,39668=>1000,\r\n\t39669=>1000,39670=>1000,39671=>1000,39672=>1000,39673=>1000,39674=>1000,39675=>1000,39676=>1000,39677=>1000,39678=>1000,39679=>1000,39680=>1000,39681=>1000,39682=>1000,39683=>1000,39684=>1000,\r\n\t39685=>1000,39686=>1000,39687=>1000,39688=>1000,39689=>1000,39690=>1000,39691=>1000,39692=>1000,39693=>1000,39694=>1000,39695=>1000,39696=>1000,39697=>1000,39698=>1000,39699=>1000,39700=>1000,\r\n\t39701=>1000,39702=>1000,39703=>1000,39704=>1000,39705=>1000,39706=>1000,39707=>1000,39708=>1000,39709=>1000,39710=>1000,39711=>1000,39712=>1000,39713=>1000,39714=>1000,39715=>1000,39716=>1000,\r\n\t39717=>1000,39718=>1000,39719=>1000,39720=>1000,39721=>1000,39722=>1000,39723=>1000,39724=>1000,39725=>1000,39726=>1000,39727=>1000,39728=>1000,39729=>1000,39730=>1000,39731=>1000,39732=>1000,\r\n\t39733=>1000,39734=>1000,39735=>1000,39736=>1000,39737=>1000,39738=>1000,39739=>1000,39740=>1000,39741=>1000,39742=>1000,39743=>1000,39744=>1000,39745=>1000,39746=>1000,39747=>1000,39748=>1000,\r\n\t39749=>1000,39750=>1000,39751=>1000,39752=>1000,39753=>1000,39754=>1000,39755=>1000,39756=>1000,39757=>1000,39758=>1000,39759=>1000,39760=>1000,39761=>1000,39762=>1000,39763=>1000,39764=>1000,\r\n\t39765=>1000,39766=>1000,39767=>1000,39768=>1000,39769=>1000,39770=>1000,39771=>1000,39772=>1000,39773=>1000,39774=>1000,39775=>1000,39776=>1000,39777=>1000,39778=>1000,39779=>1000,39780=>1000,\r\n\t39781=>1000,39782=>1000,39783=>1000,39784=>1000,39785=>1000,39786=>1000,39787=>1000,39788=>1000,39789=>1000,39790=>1000,39791=>1000,39792=>1000,39793=>1000,39794=>1000,39795=>1000,39796=>1000,\r\n\t39797=>1000,39798=>1000,39799=>1000,39800=>1000,39801=>1000,39802=>1000,39803=>1000,39804=>1000,39805=>1000,39806=>1000,39807=>1000,39808=>1000,39809=>1000,39810=>1000,39811=>1000,39812=>1000,\r\n\t39813=>1000,39814=>1000,39815=>1000,39816=>1000,39817=>1000,39818=>1000,39819=>1000,39820=>1000,39821=>1000,39822=>1000,39823=>1000,39824=>1000,39825=>1000,39826=>1000,39827=>1000,39828=>1000,\r\n\t39829=>1000,39830=>1000,39831=>1000,39832=>1000,39833=>1000,39834=>1000,39835=>1000,39836=>1000,39837=>1000,39838=>1000,39839=>1000,39840=>1000,39841=>1000,39842=>1000,39843=>1000,39844=>1000,\r\n\t39845=>1000,39846=>1000,39847=>1000,39848=>1000,39849=>1000,39850=>1000,39851=>1000,39852=>1000,39853=>1000,39854=>1000,39855=>1000,39856=>1000,39857=>1000,39858=>1000,39859=>1000,39860=>1000,\r\n\t39861=>1000,39862=>1000,39863=>1000,39864=>1000,39865=>1000,39866=>1000,39867=>1000,39868=>1000,39869=>1000,39870=>1000,39871=>1000,39872=>1000,39873=>1000,39874=>1000,39875=>1000,39876=>1000,\r\n\t39877=>1000,39878=>1000,39879=>1000,39880=>1000,39881=>1000,39882=>1000,39883=>1000,39884=>1000,39885=>1000,39886=>1000,39887=>1000,39888=>1000,39889=>1000,39890=>1000,39891=>1000,39892=>1000,\r\n\t39893=>1000,39894=>1000,39895=>1000,39896=>1000,39897=>1000,39898=>1000,39899=>1000,39900=>1000,39901=>1000,39902=>1000,39903=>1000,39904=>1000,39905=>1000,39906=>1000,39907=>1000,39908=>1000,\r\n\t39909=>1000,39910=>1000,39911=>1000,39912=>1000,39913=>1000,39914=>1000,39915=>1000,39916=>1000,39917=>1000,39918=>1000,39919=>1000,39920=>1000,39921=>1000,39922=>1000,39923=>1000,39924=>1000,\r\n\t39925=>1000,39926=>1000,39927=>1000,39928=>1000,39929=>1000,39930=>1000,39931=>1000,39932=>1000,39933=>1000,39934=>1000,39935=>1000,39936=>1000,39937=>1000,39938=>1000,39939=>1000,39940=>1000,\r\n\t39941=>1000,39942=>1000,39943=>1000,39944=>1000,39945=>1000,39946=>1000,39947=>1000,39948=>1000,39949=>1000,39950=>1000,39951=>1000,39952=>1000,39953=>1000,39954=>1000,39955=>1000,39956=>1000,\r\n\t39957=>1000,39958=>1000,39959=>1000,39960=>1000,39961=>1000,39962=>1000,39963=>1000,39964=>1000,39965=>1000,39966=>1000,39967=>1000,39968=>1000,39969=>1000,39970=>1000,39971=>1000,39972=>1000,\r\n\t39973=>1000,39974=>1000,39975=>1000,39976=>1000,39977=>1000,39978=>1000,39979=>1000,39980=>1000,39981=>1000,39982=>1000,39983=>1000,39984=>1000,39985=>1000,39986=>1000,39987=>1000,39988=>1000,\r\n\t39989=>1000,39990=>1000,39991=>1000,39992=>1000,39993=>1000,39994=>1000,39995=>1000,39996=>1000,39997=>1000,39998=>1000,39999=>1000,40000=>1000,40001=>1000,40002=>1000,40003=>1000,40004=>1000,\r\n\t40005=>1000,40006=>1000,40007=>1000,40008=>1000,40009=>1000,40010=>1000,40011=>1000,40012=>1000,40013=>1000,40014=>1000,40015=>1000,40016=>1000,40017=>1000,40018=>1000,40019=>1000,40020=>1000,\r\n\t40021=>1000,40022=>1000,40023=>1000,40024=>1000,40025=>1000,40026=>1000,40027=>1000,40028=>1000,40029=>1000,40030=>1000,40031=>1000,40032=>1000,40033=>1000,40034=>1000,40035=>1000,40036=>1000,\r\n\t40037=>1000,40038=>1000,40039=>1000,40040=>1000,40041=>1000,40042=>1000,40043=>1000,40044=>1000,40045=>1000,40046=>1000,40047=>1000,40048=>1000,40049=>1000,40050=>1000,40051=>1000,40052=>1000,\r\n\t40053=>1000,40054=>1000,40055=>1000,40056=>1000,40057=>1000,40058=>1000,40059=>1000,40060=>1000,40061=>1000,40062=>1000,40063=>1000,40064=>1000,40065=>1000,40066=>1000,40067=>1000,40068=>1000,\r\n\t40069=>1000,40070=>1000,40071=>1000,40072=>1000,40073=>1000,40074=>1000,40075=>1000,40076=>1000,40077=>1000,40078=>1000,40079=>1000,40080=>1000,40081=>1000,40082=>1000,40083=>1000,40084=>1000,\r\n\t40085=>1000,40086=>1000,40087=>1000,40088=>1000,40089=>1000,40090=>1000,40091=>1000,40092=>1000,40093=>1000,40094=>1000,40095=>1000,40096=>1000,40097=>1000,40098=>1000,40099=>1000,40100=>1000,\r\n\t40101=>1000,40102=>1000,40103=>1000,40104=>1000,40105=>1000,40106=>1000,40107=>1000,40108=>1000,40109=>1000,40110=>1000,40111=>1000,40112=>1000,40113=>1000,40114=>1000,40115=>1000,40116=>1000,\r\n\t40117=>1000,40118=>1000,40119=>1000,40120=>1000,40121=>1000,40122=>1000,40123=>1000,40124=>1000,40125=>1000,40126=>1000,40127=>1000,40128=>1000,40129=>1000,40130=>1000,40131=>1000,40132=>1000,\r\n\t40133=>1000,40134=>1000,40135=>1000,40136=>1000,40137=>1000,40138=>1000,40139=>1000,40140=>1000,40141=>1000,40142=>1000,40143=>1000,40144=>1000,40145=>1000,40146=>1000,40147=>1000,40148=>1000,\r\n\t40149=>1000,40150=>1000,40151=>1000,40152=>1000,40153=>1000,40154=>1000,40155=>1000,40156=>1000,40157=>1000,40158=>1000,40159=>1000,40160=>1000,40161=>1000,40162=>1000,40163=>1000,40164=>1000,\r\n\t40165=>1000,40166=>1000,40167=>1000,40168=>1000,40169=>1000,40170=>1000,40171=>1000,40172=>1000,40173=>1000,40174=>1000,40175=>1000,40176=>1000,40177=>1000,40178=>1000,40179=>1000,40180=>1000,\r\n\t40181=>1000,40182=>1000,40183=>1000,40184=>1000,40185=>1000,40186=>1000,40187=>1000,40188=>1000,40189=>1000,40190=>1000,40191=>1000,40192=>1000,40193=>1000,40194=>1000,40195=>1000,40196=>1000,\r\n\t40197=>1000,40198=>1000,40199=>1000,40200=>1000,40201=>1000,40202=>1000,40203=>1000,40204=>1000,40205=>1000,40206=>1000,40207=>1000,40208=>1000,40209=>1000,40210=>1000,40211=>1000,40212=>1000,\r\n\t40213=>1000,40214=>1000,40215=>1000,40216=>1000,40217=>1000,40218=>1000,40219=>1000,40220=>1000,40221=>1000,40222=>1000,40223=>1000,40224=>1000,40225=>1000,40226=>1000,40227=>1000,40228=>1000,\r\n\t40229=>1000,40230=>1000,40231=>1000,40232=>1000,40233=>1000,40234=>1000,40235=>1000,40236=>1000,40237=>1000,40238=>1000,40239=>1000,40240=>1000,40241=>1000,40242=>1000,40243=>1000,40244=>1000,\r\n\t40245=>1000,40246=>1000,40247=>1000,40248=>1000,40249=>1000,40250=>1000,40251=>1000,40252=>1000,40253=>1000,40254=>1000,40255=>1000,40256=>1000,40257=>1000,40258=>1000,40259=>1000,40260=>1000,\r\n\t40261=>1000,40262=>1000,40263=>1000,40264=>1000,40265=>1000,40266=>1000,40267=>1000,40268=>1000,40269=>1000,40270=>1000,40271=>1000,40272=>1000,40273=>1000,40274=>1000,40275=>1000,40276=>1000,\r\n\t40277=>1000,40278=>1000,40279=>1000,40280=>1000,40281=>1000,40282=>1000,40283=>1000,40284=>1000,40285=>1000,40286=>1000,40287=>1000,40288=>1000,40289=>1000,40290=>1000,40291=>1000,40292=>1000,\r\n\t40293=>1000,40294=>1000,40295=>1000,40296=>1000,40297=>1000,40298=>1000,40299=>1000,40300=>1000,40301=>1000,40302=>1000,40303=>1000,40304=>1000,40305=>1000,40306=>1000,40307=>1000,40308=>1000,\r\n\t40309=>1000,40310=>1000,40311=>1000,40312=>1000,40313=>1000,40314=>1000,40315=>1000,40316=>1000,40317=>1000,40318=>1000,40319=>1000,40320=>1000,40321=>1000,40322=>1000,40323=>1000,40324=>1000,\r\n\t40325=>1000,40326=>1000,40327=>1000,40328=>1000,40329=>1000,40330=>1000,40331=>1000,40332=>1000,40333=>1000,40334=>1000,40335=>1000,40336=>1000,40337=>1000,40338=>1000,40339=>1000,40340=>1000,\r\n\t40341=>1000,40342=>1000,40343=>1000,40344=>1000,40345=>1000,40346=>1000,40347=>1000,40348=>1000,40349=>1000,40350=>1000,40351=>1000,40352=>1000,40353=>1000,40354=>1000,40355=>1000,40356=>1000,\r\n\t40357=>1000,40358=>1000,40359=>1000,40360=>1000,40361=>1000,40362=>1000,40363=>1000,40364=>1000,40365=>1000,40366=>1000,40367=>1000,40368=>1000,40369=>1000,40370=>1000,40371=>1000,40372=>1000,\r\n\t40373=>1000,40374=>1000,40375=>1000,40376=>1000,40377=>1000,40378=>1000,40379=>1000,40380=>1000,40381=>1000,40382=>1000,40383=>1000,40384=>1000,40385=>1000,40386=>1000,40387=>1000,40388=>1000,\r\n\t40389=>1000,40390=>1000,40391=>1000,40392=>1000,40393=>1000,40394=>1000,40395=>1000,40396=>1000,40397=>1000,40398=>1000,40399=>1000,40400=>1000,40401=>1000,40402=>1000,40403=>1000,40404=>1000,\r\n\t40405=>1000,40406=>1000,40407=>1000,40408=>1000,40409=>1000,40410=>1000,40411=>1000,40412=>1000,40413=>1000,40414=>1000,40415=>1000,40416=>1000,40417=>1000,40418=>1000,40419=>1000,40420=>1000,\r\n\t40421=>1000,40422=>1000,40423=>1000,40424=>1000,40425=>1000,40426=>1000,40427=>1000,40428=>1000,40429=>1000,40430=>1000,40431=>1000,40432=>1000,40433=>1000,40434=>1000,40435=>1000,40436=>1000,\r\n\t40437=>1000,40438=>1000,40439=>1000,40440=>1000,40441=>1000,40442=>1000,40443=>1000,40444=>1000,40445=>1000,40446=>1000,40447=>1000,40448=>1000,40449=>1000,40450=>1000,40451=>1000,40452=>1000,\r\n\t40453=>1000,40454=>1000,40455=>1000,40456=>1000,40457=>1000,40458=>1000,40459=>1000,40460=>1000,40461=>1000,40462=>1000,40463=>1000,40464=>1000,40465=>1000,40466=>1000,40467=>1000,40468=>1000,\r\n\t40469=>1000,40470=>1000,40471=>1000,40472=>1000,40473=>1000,40474=>1000,40475=>1000,40476=>1000,40477=>1000,40478=>1000,40479=>1000,40480=>1000,40481=>1000,40482=>1000,40483=>1000,40484=>1000,\r\n\t40485=>1000,40486=>1000,40487=>1000,40488=>1000,40489=>1000,40490=>1000,40491=>1000,40492=>1000,40493=>1000,40494=>1000,40495=>1000,40496=>1000,40497=>1000,40498=>1000,40499=>1000,40500=>1000,\r\n\t40501=>1000,40502=>1000,40503=>1000,40504=>1000,40505=>1000,40506=>1000,40507=>1000,40508=>1000,40509=>1000,40510=>1000,40511=>1000,40512=>1000,40513=>1000,40514=>1000,40515=>1000,40516=>1000,\r\n\t40517=>1000,40518=>1000,40519=>1000,40520=>1000,40521=>1000,40522=>1000,40523=>1000,40524=>1000,40525=>1000,40526=>1000,40527=>1000,40528=>1000,40529=>1000,40530=>1000,40531=>1000,40532=>1000,\r\n\t40533=>1000,40534=>1000,40535=>1000,40536=>1000,40537=>1000,40538=>1000,40539=>1000,40540=>1000,40541=>1000,40542=>1000,40543=>1000,40544=>1000,40545=>1000,40546=>1000,40547=>1000,40548=>1000,\r\n\t40549=>1000,40550=>1000,40551=>1000,40552=>1000,40553=>1000,40554=>1000,40555=>1000,40556=>1000,40557=>1000,40558=>1000,40559=>1000,40560=>1000,40561=>1000,40562=>1000,40563=>1000,40564=>1000,\r\n\t40565=>1000,40566=>1000,40567=>1000,40568=>1000,40569=>1000,40570=>1000,40571=>1000,40572=>1000,40573=>1000,40574=>1000,40575=>1000,40576=>1000,40577=>1000,40578=>1000,40579=>1000,40580=>1000,\r\n\t40581=>1000,40582=>1000,40583=>1000,40584=>1000,40585=>1000,40586=>1000,40587=>1000,40588=>1000,40589=>1000,40590=>1000,40591=>1000,40592=>1000,40593=>1000,40594=>1000,40595=>1000,40596=>1000,\r\n\t40597=>1000,40598=>1000,40599=>1000,40600=>1000,40601=>1000,40602=>1000,40603=>1000,40604=>1000,40605=>1000,40606=>1000,40607=>1000,40608=>1000,40609=>1000,40610=>1000,40611=>1000,40612=>1000,\r\n\t40613=>1000,40614=>1000,40615=>1000,40616=>1000,40617=>1000,40618=>1000,40619=>1000,40620=>1000,40621=>1000,40622=>1000,40623=>1000,40624=>1000,40625=>1000,40626=>1000,40627=>1000,40628=>1000,\r\n\t40629=>1000,40630=>1000,40631=>1000,40632=>1000,40633=>1000,40634=>1000,40635=>1000,40636=>1000,40637=>1000,40638=>1000,40639=>1000,40640=>1000,40641=>1000,40642=>1000,40643=>1000,40644=>1000,\r\n\t40645=>1000,40646=>1000,40647=>1000,40648=>1000,40649=>1000,40650=>1000,40651=>1000,40652=>1000,40653=>1000,40654=>1000,40655=>1000,40656=>1000,40657=>1000,40658=>1000,40659=>1000,40660=>1000,\r\n\t40661=>1000,40662=>1000,40663=>1000,40664=>1000,40665=>1000,40666=>1000,40667=>1000,40668=>1000,40669=>1000,40670=>1000,40671=>1000,40672=>1000,40673=>1000,40674=>1000,40675=>1000,40676=>1000,\r\n\t40677=>1000,40678=>1000,40679=>1000,40680=>1000,40681=>1000,40682=>1000,40683=>1000,40684=>1000,40685=>1000,40686=>1000,40687=>1000,40688=>1000,40689=>1000,40690=>1000,40691=>1000,40692=>1000,\r\n\t40693=>1000,40694=>1000,40695=>1000,40696=>1000,40697=>1000,40698=>1000,40699=>1000,40700=>1000,40701=>1000,40702=>1000,40703=>1000,40704=>1000,40705=>1000,40706=>1000,40707=>1000,40708=>1000,\r\n\t40709=>1000,40710=>1000,40711=>1000,40712=>1000,40713=>1000,40714=>1000,40715=>1000,40716=>1000,40717=>1000,40718=>1000,40719=>1000,40720=>1000,40721=>1000,40722=>1000,40723=>1000,40724=>1000,\r\n\t40725=>1000,40726=>1000,40727=>1000,40728=>1000,40729=>1000,40730=>1000,40731=>1000,40732=>1000,40733=>1000,40734=>1000,40735=>1000,40736=>1000,40737=>1000,40738=>1000,40739=>1000,40740=>1000,\r\n\t40741=>1000,40742=>1000,40743=>1000,40744=>1000,40745=>1000,40746=>1000,40747=>1000,40748=>1000,40749=>1000,40750=>1000,40751=>1000,40752=>1000,40753=>1000,40754=>1000,40755=>1000,40756=>1000,\r\n\t40757=>1000,40758=>1000,40759=>1000,40760=>1000,40761=>1000,40762=>1000,40763=>1000,40764=>1000,40765=>1000,40766=>1000,40767=>1000,40768=>1000,40769=>1000,40770=>1000,40771=>1000,40772=>1000,\r\n\t40773=>1000,40774=>1000,40775=>1000,40776=>1000,40777=>1000,40778=>1000,40779=>1000,40780=>1000,40781=>1000,40782=>1000,40783=>1000,40784=>1000,40785=>1000,40786=>1000,40787=>1000,40788=>1000,\r\n\t40789=>1000,40790=>1000,40791=>1000,40792=>1000,40793=>1000,40794=>1000,40795=>1000,40796=>1000,40797=>1000,40798=>1000,40799=>1000,40800=>1000,40801=>1000,40802=>1000,40803=>1000,40804=>1000,\r\n\t40805=>1000,40806=>1000,40807=>1000,40808=>1000,40809=>1000,40810=>1000,40811=>1000,40812=>1000,40813=>1000,40814=>1000,40815=>1000,40816=>1000,40817=>1000,40818=>1000,40819=>1000,40820=>1000,\r\n\t40821=>1000,40822=>1000,40823=>1000,40824=>1000,40825=>1000,40826=>1000,40827=>1000,40828=>1000,40829=>1000,40830=>1000,40831=>1000,40832=>1000,40833=>1000,40834=>1000,40835=>1000,40836=>1000,\r\n\t40837=>1000,40838=>1000,40839=>1000,40840=>1000,40841=>1000,40842=>1000,40843=>1000,40844=>1000,40845=>1000,40846=>1000,40847=>1000,40848=>1000,40849=>1000,40850=>1000,40851=>1000,40852=>1000,\r\n\t40853=>1000,40854=>1000,40855=>1000,40856=>1000,40857=>1000,40858=>1000,40859=>1000,40860=>1000,40861=>1000,40862=>1000,40863=>1000,40864=>1000,40865=>1000,40866=>1000,40867=>1000,40868=>1000,\r\n\t40869=>1000);\r\n$diff='';\r\n$originalsize=23275812;\n\n// CID Information\n// Select your language\n// unicode to cid conversion table is from\n// ftp://ftp.oreilly.com/pub/examples/nutshell/cjkv/adobe/\n// cid2code.txt in ac16.tar.Z,ag15.tar.Z,ak12.tar.Z and aj16.tar.Z.\n\n//$enc='UniCNS-UTF16-H';\n//$cidinfo=array('Registry'=>'Adobe','Ordering'=>'CNS1','Supplement'=>0);\n//include(dirname(__FILE__).'/uni2cid_ac15.php');\n\n//$enc='UniGB-UTF16-H';\n//$cidinfo=array('Registry'=>'Adobe','Ordering'=>'GB1','Supplement'=>2);\n//include(dirname(__FILE__).'/uni2cid_ag15.php');\n\n//$enc='UniKS-UTF16-H';\n//$cidinfo=array('Registry'=>'Adobe','Ordering'=>'Korea1','Supplement'=>0);\n//include(dirname(__FILE__).'/uni2cid_ak12.php');\n\n$enc='UniJIS-UTF16-H';\n$cidinfo=array('Registry'=>'Adobe','Ordering'=>'Japan1','Supplement'=>5);\ninclude(dirname(__FILE__).'/uni2cid_aj16.php');\r\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/courier.php",
    "content": "<?php\n // core font definition file for TCPDF (www.tcpdf.org)\n$type='core';\n$dw=600;\n$cw=array(0=>600,1=>600,2=>600,3=>600,4=>600,5=>600,6=>600,7=>600,8=>600,9=>600,\n10=>600,11=>600,12=>600,13=>600,14=>600,15=>600,16=>600,17=>600,18=>600,19=>600,\n20=>600,21=>600,22=>600,23=>600,24=>600,25=>600,26=>600,27=>600,28=>600,29=>600,\n30=>600,31=>600,32=>600,33=>600,34=>600,35=>600,36=>600,37=>600,38=>600,39=>600,\n40=>600,41=>600,42=>600,43=>600,44=>600,45=>600,46=>600,47=>600,48=>600,49=>600,\n50=>600,51=>600,52=>600,53=>600,54=>600,55=>600,56=>600,57=>600,58=>600,59=>600,\n60=>600,61=>600,62=>600,63=>600,64=>600,65=>600,66=>600,67=>600,68=>600,69=>600,\n70=>600,71=>600,72=>600,73=>600,74=>600,75=>600,76=>600,77=>600,78=>600,79=>600,\n80=>600,81=>600,82=>600,83=>600,84=>600,85=>600,86=>600,87=>600,88=>600,89=>600,\n90=>600,91=>600,92=>600,93=>600,94=>600,95=>600,96=>600,97=>600,98=>600,99=>600,\n100=>600,101=>600,102=>600,103=>600,104=>600,105=>600,106=>600,107=>600,108=>600,\n109=>600,110=>600,111=>600,112=>600,113=>600,114=>600,115=>600,116=>600,117=>600,\n118=>600,119=>600,120=>600,121=>600,122=>600,123=>600,124=>600,125=>600,126=>600,\n127=>600,128=>600,129=>600,130=>600,131=>600,132=>600,133=>600,134=>600,135=>600,\n136=>600,137=>600,138=>600,139=>600,140=>600,141=>600,142=>600,143=>600,144=>600,\n145=>600,146=>600,147=>600,148=>600,149=>600,150=>600,151=>600,152=>600,153=>600,\n154=>600,155=>600,156=>600,157=>600,158=>600,159=>600,160=>600,161=>600,162=>600,\n163=>600,164=>600,165=>600,166=>600,167=>600,168=>600,169=>600,170=>600,171=>600,\n172=>600,173=>600,174=>600,175=>600,176=>600,177=>600,178=>600,179=>600,180=>600,\n181=>600,182=>600,183=>600,184=>600,185=>600,186=>600,187=>600,188=>600,189=>600,\n190=>600,191=>600,192=>600,193=>600,194=>600,195=>600,196=>600,197=>600,198=>600,\n199=>600,200=>600,201=>600,202=>600,203=>600,204=>600,205=>600,206=>600,207=>600,\n208=>600,209=>600,210=>600,211=>600,212=>600,213=>600,214=>600,215=>600,216=>600,\n217=>600,218=>600,219=>600,220=>600,221=>600,222=>600,223=>600,224=>600,225=>600,\n226=>600,227=>600,228=>600,229=>600,230=>600,231=>600,232=>600,233=>600,234=>600,\n235=>600,236=>600,237=>600,238=>600,239=>600,240=>600,241=>600,242=>600,243=>600,\n244=>600,245=>600,246=>600,247=>600,248=>600,249=>600,250=>600,251=>600,252=>600,\n253=>600,254=>600,255=>600);\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavu-fonts-ttf-2.30/AUTHORS",
    "content": "abysta at yandex.ru\nAdrian Schroeter\nAndrey Valentinovich Panov\nBen Laenen\nBesarion Gugushvili\nBhikkhu Pesala\nClayborne Arevalo\nDafydd Harries\nDanilo Segan\nDavide Viti\nDavid Jez\nDavid Lawrence Ramsey\nDenis Jacquerye\nDwayne Bailey\nEugeniy Meshcheryakov\nGee Fung Sit\nHeikki Lindroos\nJames Cloos\nJames Crippen\nJohn Karp\nKeenan Pepper\nLars Naesbye Christensen\nMashrab Kuvatov\nMax Berger\nMederic Boquien\nMichael Everson\nMisu Moldovan\nNguyen Thai Ngoc Duy\nNicolas Mailhot\nOgnyan Kulev\nOndrej Koala Vacha\nPeter Cernak\nRemy Oudompheng\nRoozbeh Pournader\nSahak Petrosyan\nSander Vesik\nStepan Roh\nStephen Hartke\nSteve Tinney\nTavmjong Bah\nTim May\nValentin Stoykov\nVasek Stodulka\nWesley Transue\n\n$Id: AUTHORS 2344 2009-03-08 13:02:37Z moyogo $\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavu-fonts-ttf-2.30/BUGS",
    "content": "See http://dejavu.sourceforge.net/wiki/index.php/Bugs\n\n$Id: BUGS 80 2004-11-13 13:12:02Z src $\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavu-fonts-ttf-2.30/LICENSE",
    "content": "Fonts are (c) Bitstream (see below). DejaVu changes are in public domain.\nGlyphs imported from Arev fonts are (c) Tavmjong Bah (see below)\n\nBitstream Vera Fonts Copyright\n------------------------------\n\nCopyright (c) 2003 by Bitstream, Inc. All Rights Reserved. Bitstream Vera is\na trademark of Bitstream, Inc.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof the fonts accompanying this license (\"Fonts\") and associated\ndocumentation files (the \"Font Software\"), to reproduce and distribute the\nFont Software, including without limitation the rights to use, copy, merge,\npublish, distribute, and/or sell copies of the Font Software, and to permit\npersons to whom the Font Software is furnished to do so, subject to the\nfollowing conditions:\n\nThe above copyright and trademark notices and this permission notice shall\nbe included in all copies of one or more of the Font Software typefaces.\n\nThe Font Software may be modified, altered, or added to, and in particular\nthe designs of glyphs or characters in the Fonts may be modified and\nadditional glyphs or characters may be added to the Fonts, only if the fonts\nare renamed to names not containing either the words \"Bitstream\" or the word\n\"Vera\".\n\nThis License becomes null and void to the extent applicable to Fonts or Font\nSoftware that has been modified and is distributed under the \"Bitstream\nVera\" names.\n\nThe Font Software may be sold as part of a larger software package but no\ncopy of one or more of the Font Software typefaces may be sold by itself.\n\nTHE FONT SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\nOR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT,\nTRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL BITSTREAM OR THE GNOME\nFOUNDATION BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING\nANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES,\nWHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF\nTHE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE\nFONT SOFTWARE.\n\nExcept as contained in this notice, the names of Gnome, the Gnome\nFoundation, and Bitstream Inc., shall not be used in advertising or\notherwise to promote the sale, use or other dealings in this Font Software\nwithout prior written authorization from the Gnome Foundation or Bitstream\nInc., respectively. For further information, contact: fonts at gnome dot\norg. \n\nArev Fonts Copyright\n------------------------------\n\nCopyright (c) 2006 by Tavmjong Bah. All Rights Reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining\na copy of the fonts accompanying this license (\"Fonts\") and\nassociated documentation files (the \"Font Software\"), to reproduce\nand distribute the modifications to the Bitstream Vera Font Software,\nincluding without limitation the rights to use, copy, merge, publish,\ndistribute, and/or sell copies of the Font Software, and to permit\npersons to whom the Font Software is furnished to do so, subject to\nthe following conditions:\n\nThe above copyright and trademark notices and this permission notice\nshall be included in all copies of one or more of the Font Software\ntypefaces.\n\nThe Font Software may be modified, altered, or added to, and in\nparticular the designs of glyphs or characters in the Fonts may be\nmodified and additional glyphs or characters may be added to the\nFonts, only if the fonts are renamed to names not containing either\nthe words \"Tavmjong Bah\" or the word \"Arev\".\n\nThis License becomes null and void to the extent applicable to Fonts\nor Font Software that has been modified and is distributed under the \n\"Tavmjong Bah Arev\" names.\n\nThe Font Software may be sold as part of a larger software package but\nno copy of one or more of the Font Software typefaces may be sold by\nitself.\n\nTHE FONT SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT\nOF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL\nTAVMJONG BAH BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\nINCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL\nDAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\nFROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM\nOTHER DEALINGS IN THE FONT SOFTWARE.\n\nExcept as contained in this notice, the name of Tavmjong Bah shall not\nbe used in advertising or otherwise to promote the sale, use or other\ndealings in this Font Software without prior written authorization\nfrom Tavmjong Bah. For further information, contact: tavmjong @ free\n. fr.\n\n$Id: LICENSE 2133 2007-11-28 02:46:28Z lechimp $\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavu-fonts-ttf-2.30/NEWS",
    "content": "Changes from 2.29 to 2.30\n\n* added U+0462-U+0463 to Mono (by Denis Jacquerye) \n* corrected U+1E53 in Serif (by Gee Fung Sit) \n* added U+1E4C-U+1E4D to Mono and Serif (by Gee Fung Sit) \n* added U+1E78-U+1E79 to Mono (by Gee Fung Sit) \n* fixed missing diacritics in Latin Extended Additional in Sans ExtraLight\n  (moved stacked diacritics out of PUA in the process) (by Gee Fung Sit) \n* fixed anchors on U+1E78 in Serif (by Gee Fung Sit) \n* added U+1DC4-U+1DC9 to Serif (by Denis Jacquerye) \n* renamed above-mark to above-mark in Serif-Italic (by Denis Jacquerye) \n* added U+1DC4-U+1DC9 to context class for dotless substitution (by Denis\n  Jacquerye) \n* changed Doubleacute to Doublegrave in Sans ExtraLight (by Gee Fung Sit) \n* removed redundant reference in U+01FB in Sans Oblique (by Gee Fung Sit) \n* added U+A726-U+A727 to Mono (Denis Jacquerye) \n* changed U+04BE and U+04BF according to recommedations of Sasha Ankwab in Sans\n  (by Andrey V. Panov) \n* remove \"Symbol Charset\" from set of codepages in Sans (by Eugeniy\n  Meshcheryakov)\n\nChanges from 2.28 to 2.29\n\n* modified U+10FB in Sans to be a mirror image of U+2056, since U+10FB is not\n  Georgian-specific (by Roozbeh Pournader)\n* added U+2B1F, U+2B24, U+2B53, U+2B54 in Sans (by Roozbeh Pournader)\n* fixed TUR opentype language tag to TRK in Serif (bug 19825) (by Ben Laenen)\n* early implementation of Abkhaz letter U+0524-U+0525 in Sans\n  (by Michael Everson and abysta)\n* flipped U+1D538 in Sans (by Gee Fung Sit)\n* added U+26B3-U+26B8, U+1D7D8-U+1D7E1 in Sans (by Gee Fung Sit)\n* corrected U+1D7A9 in Sans Bold Oblique (by Gee Fung Sit)\n* Fixed U+0649 to be dual-joining in Sans Mono (by Roozbeh Pournader)\n* Remove unnecessary 'isol' feature from Sans Mono (by Roozbeh Pournader)\n* Remove 'cmap' mappings for U+066E, U+066F, U+067C, U+067D, U+0681, U+0682,\n  U+0685, U+0692, U+06A1, U+06B5, U+06BA, U+06C6, U+06CE, and U+06D5\n  in Sans Mono (bug 20323) (by Roozbeh Pournader)\n* add half brackets (U+2E22 - U+2E25, by Steve Tinney) \n\nChanges from 2.27 to 2.28\n\n* added U+A789, U+A78A in Sans and Sans Mono (by Denis Jacquerye)\n* modified U+02D6, U+02D7, U+02EE in Sans and Sans Mono (by Denis Jacquerye)\n* added U+1E9E (German capital ß) to Sans and Serif (by Denis Jacquerye)\n* adjusted width of U+01B7-U+01B9 in Serif Italic (by Denis Jacquerye)\n* modified U+021C, U+021D in Sans (by Denis Jacquerye)\n* added U+021C, U+021D in Mono (by Denis Jacquerye)\n* added U+F428 (Georgian Nuskhuri \"f\") in private use area (by Besarion\n  Gugushvili)\n* updated Georgian mkhedruli (U+10D0-U+10FA) with new version (by Besarion\n  Gugushvili)\n* updated Georgian asomtavruli (U+10A0-U+10C5) with new version (by Besarion\n  Gugushvili)\n* added Georgian nuskhuri (U+2D00-U+2D25) (by Besarion Gugushvili)\n* added Georgian mtavruli in private use area (U+F400-U+F426) (by Besarion\n  Gugushvili)\n* added mark anchors above to Cyrillic U+0430-U+0438, U+043A-U+044F,\n  U+0454-U+0455 in Mono (by Ben Laenen)\n* modified/moved up U+0318-U+0319, U+031C-U+031F, U+0329-U+032A, U+032C-U+032D,\n  U+0339-U+033B, U+0348 and U+0353 in Sans to prevent cut-off (by Gee Fung Sit)\n* added U+035A to Sans (by Gee Fung Sit)\n* updated fontconfig files (by Nicolas Mailhot)\n* added U+2032-2037 to Mono (by Denis Jacquerye)\n* added Ogham to Sans ExtraLight (by Gee Fung Sit)\n* added U+2C6F, U+2C79, U+2C7C-2C7D to Mono (by Gee Fung Sit)\n* added U+210F to Serif and Sans ExtraLight (by Gee Fung Sit)\n* changed U+210F to a more common glyph in Sans and Mono (by Gee Fung Sit)\n\nChanges from 2.26 to 2.27\n\n* added some of Michael Everson's new Cyrillic glyphs to Sans (by Wesley\n  Transue)\n* removed blank glyph at U+05EF from Sans Bold Oblique (by Gee Fung Sit)\n* small adjustments to existing tone bars in Sans and Mono (by Gee Fung Sit)\n* added U+0372-U+0373, U+0376-U+0377, U+03CF, U+A668-U+A66E, U+A708-U+A711,\n  U+A71B-U+A71F to Sans (by Gee Fung Sit)\n* copied U+02E5-U+02E9 over from Sans to fix inconsistencies in Serif (by Gee\n  Fung Sit)\n* added U+021C-U+021D, U+0370-U+0371, U+037B-U+037D, U+0470-U+0471,\n  U+0510-U+0515, U+051A-U+051D, U+1E9F, U+2C64, U+2C6E-U+2C6F, U+2C79,\n  U+2C7C-U+2C7D, U+A644-U+A647, U+A650-U+A651, U+A654-U+A657, U+A708-U+A716,\n  U+A71B-U+A71F to Serif (by Gee Fung Sit)\n* added U+A708-U+A716, U+A71B-U+A71F to Mono (by Gee Fung Sit)\n* added anchors to U+017F (ſ) and fixed U+1E9B (ẛ) in Serif (by Gee Fung Sit)\n* made U+0325 smaller in Sans Bold and Serif to match Sans Book (by Gee Fung\n  Sit)\n* fixes to U+02F3 (moved up), U+228F-U+2294 (more square-like) and\n  U+22CE-U+22CF (stroke width) in Sans (by Gee Fung Sit)\n* replaced U+2202 ∂ (Sans and Mono) and U+221D ∝, U+221E ∞ (Sans) with glyphs\n  from Arev (with small changes) (by Gee Fung Sit)\n* added U+22B0-U+22B1, U+22C7, U+22D0-U+22D5 from Arev to Sans to complete the\n  block (by Gee Fung Sit)\n* added U+0514-U+0515 to Sans ExtraLight (by Gee Fung Sit)\n* skewed U+A78C in all Oblique/Italic fonts (by Gee Fung Sit)\n* moved U+2215 to U+2044 in Sans and Serif and replaced U+2215 with reference\n  to U+002F in all fonts (by Gee Fung Sit)\n* added U+2C6E to Mono (by Denis Jacquerye)\n* added U+A782 and U+A783 in Sans (by Wesley Transue)\n* added U+0244, U+024C-024D, U+2C64 in Sans Mono (by Denis Jacquerye)\n* modified U+01AE in Sans Mono (by Denis Jacquerye)\n* added U+2C7A to all fonts (by Gee Fung Sit)\n* italicized/small changes to U+2C76 in Serif (Bold) Italic (by Gee Fung Sit)\n* improved outlines of U+2C68, U+2C6A, U+2C6C in Serif (Bold) Italic (by Gee\n  Fung Sit)\n* rounded U+2C77 at the bottom in Serif (by Gee Fung Sit)\n* added joining behavior for tone letters (U+02E5-U+02E9) in Sans (bug #15669)\n  (by Gee Fung Sit)\n* fixed outline of y.alt in Sans Regular (by Denis Jacquerye) \n* changed references of U+1D5A8, U+1D5C5, U+1D5DC, U+1D5F9, U+1D610, U+1D62D,\n  U+1D644 and U+1D661 to stylistic alternates to have a better distinction (by\n  Gee Fung Sit)\n* hinted I.alt in Sans Regular (by Gee Fung Sit)\n* added U+0487, completing Cyrillic block (by Gee Fung Sit)\n* extended the bar of U+0463 to the right and moved the anchor (by Gee Fung\n  Sit)\n* added anchors to glyphs in Cyrillic block (by Gee Fung Sit)\n* added (preliminary) hints to tone letter forms (U+02E5.5, U+02E9.1, stem) in\n  Sans Book (by Gee Fung Sit)\n\nChanges from 2.25 to 2.26\n\n- added glyphs for Cyrillic-B to Sans (by Wesley Transue) \n- added U+0370-U+0371 to Sans (by Wesley Transue) \n- added U+019C, U+01A2-U+01A3, U+01A6, U+01E4-U+01E5, U+024C-U+024D, U+0285,\n  U+0290, U+02A0, U+0370-U+0371, U+03F1, U+03FC to Sans ExtraLight (by Wesley\n  Transue) \n- added U+20A0-U+20A5, U+20A7-U+20B3, U+2105, U+210D, U+210F, U+2115, U+2117,\n  U+2119-U+211A, U+211D, U+2124, U+212E, U+2200-U+2204 to Mono (by Heikki\n  Lindroos) \n- added U+01BA and U+01BF to Mono (by Heikki Lindroos) \n- merged OpenType \"aalt\" feature in Latin in Sans (by Denis Jacquerye) \n- added alternative shape for y in Sans (by Denis Jacquerye) \n- added saltillo (U+A78B-U+A78C) to all faces (by James Cloos) \n- changed U+047C-U+047D to references instead of outlines in Sans (by Wesley\n  Transue) \n- added Latin letter tresillo U+A72A-U+A72B to Sans (by Wesley Transue) \n- added U+A734-U+A737 to Sans (by Wesley Transue) \n- added U+2053 to Serif and fixed it bug:9425 in Sans (by Gee Fung Sit) \n- removed problematic hints for U+0423 bug:10025 (by Gee Fung Sit) \n- added U+27C5-U+27C6 bug:10255 to all faces (by Gee Fung Sit) \n- fixed width of U+2016 in Sans Oblique (by Gee Fung Sit) \n- added U+2016, U+2032-U+2038, U+2042, U+2045-U+2046, U+204B-U+204F,\n  U+2051-U+2052, U+2057 to Serif (by Gee Fung Sit) \n- made U+2140 bigger to match other n-ary operators (by Gee Fung Sit) \n- added U+0606-U+0607, U+0609-U+060A to Sans (by Gee Fung Sit) \n- added U+221B-U+221C to Mono (by Gee Fung Sit) \n- small adjustments to U+221B-U+221C in Sans and Serif (by Gee Fung Sit) \n- update U+04B4-U+04B5 in Serif (by Andrey V. Panov) \n- increased max-storage value from maxp table to 153 (by Andrey V. Panov) \n- added U+0472-U+0473, U+0510-U+0511, U+051A-U+051D, U+0606-U+0607,\n  U+0609-U+060A, U+1E26-U+1E27, U+1E54-U+1E55, U+1E7C-U+1E7D, U+1E8C-U+1E8D,\n  U+1E90-U+1E91, U+1E97-U+1E99, U+1E9F, U+1EAC-U+1EAD, U+1EB6-U+1EB7,\n  U+1EC6-U+1EC7, U+1ED8-U+1EDD, U+1EE0-U+1EE3, U+1EE8-U+1EEB, U+1EEE-U+1EF1 to\n  Mono (by Gee Fung Sit) \n- added locl rules for S/T cedilla for Romanian and Moldavian so they get\n  rendered as S/T with comma accent (see Redhat bug #455981) (by Ben Laenen) \n- removed ligature rule from Armenian U+0587 bug:16113 (by Gee Fung Sit)\n\nChanges from 2.24 to 2.25\n\n- moved/added U+2E18 (by Gee Fung Sit)\n- added empty glyph for U+2064 in Sans and Serif (by Gee Fung Sit)\n- added U+22CE-U+22CF to Sans (by Gee Fung Sit)\n- Sans Oblique and Bold Oblique, Serif: reverted digits hinting instructions back to before revision 1590, which fixed mistaken debian bug #471024. This fixes Debian bug #411308. The original bug was in freetype not in the fonts (by Denis Jacquerye)\n- added U+A726-U+A729, U+A730-U+A733, U+A738-U+A73F, U+A746-U+A74B, U+A74E-U+A74F, U+A780-U+A781, U+A7FB-U+A7FF to Sans (by Gee Fung Sit)\n- added Macedonian italic glyph shape for U+0453 in Serif (by Ben Laenen)\n- changed descenders in U+0446, U+0449, U+0497, U+04A3, U+04AD (by Andrey V. Panov)\n- updated main SFD files to SplineFontDB 3.0 (Denis Jacquerye and Gee Fung Sit)\n- moved U+0561 2 up since it wasn't aligned with the baseline well (by Ben Laenen)\n- added U+2E2E to Sans (by Gee Fung Sit)\n- replaced U+2699 with simpler version in Sans (by Gee Fung Sit)\n- added a lot of hinting instructions to Latin Extended B, Greek and Coptic glyphs Sans Book (by Wesley Transue)\n- differentiated U+2219 from U+22C5 and adjusted affected references in Sans and Mono (by Gee Fung Sit)\n- made Hebrew narrower in Sans Bold and Sans Bold Oblique (by Denis Jacquerye)\n- added Kurdish and Chuvash letters from Unicode 5.1 Cyrillic Extended block (by Wesley Transue)\n- added U+1E9F, U+A644-U+A647, U+A64C-U+A64D, U+A650-U+A651, U+A654-U+A655, U+A712U+A716 to Sans (by Gee Fung Sit)\n- added several glyphs to Sans ExtraLight (by Gee Fung Sit)\n- added hinting instructions to U+046A-U+046B, U+0508-U+0509, U+050B, U+0512-U+0513 in Sans Book (by Wesley Transue)\n- corrected width of U+027E in Sans Book (by Gee Fung Sit)\n- added U+2C79, U+2C7B-U+2C7D to Sans (by Gee Fung Sit)\n- added a bunch of glyphs+small corrections to Sans Light (by Gee Fung Sit)\n- added U+0496, U+0497, U+04B0, U+04B1 (by Andrey V. Panov)\n- updated U+0493, U+049B, U+04B3, U+04B7, U+04F7 (by Andrey V. Panov)\n- further improvements in extended Cyrillic (by Andrey V. Panov) \n\nChanges from 2.23 to 2.24\n\n- instructions for U+05C0 ׀, U+05C3 ׃, U+05F3 ׳, and U+05F4 ״ in DejaVu \n   Sans. (by Wesley Transue)\n- instructions for U+2116 in Sans (by Andrey V. Panov)\n- Unicode 5.1 update: moved U+F208 to U+2C6D, U+F25F to U+2C71, added \n  U+2C6E-U+2C6F, U+2C72-U+2C73, updated outline of U+2C71 in Sans. (by \n  Denis Jacquerye)\n- updated and instructed U+0401 in Sans (by Andrey V. Panov)\n- fixed the bug in Sans faces where U+02EC ˬ faced the wrong direction. \n  Also, added a few more glyph instructions. (by Wesley Transue)\n- removed OS2Sub and OS2Strike that weren't intentional in Sans \n  ExtraLight. (by Denis Jacquerye)\n- updated instructions for U+401, U+44F in Serif Book. (by Andrey V. \n  Panov)\n- instructions for U+02C4 ˄, U+02C5 ˅, U+03D8 Ϙ, U+03D9 ϙ, U+0494 Ҕ, and \n  U+0495 ҕ in Sans Book. (by Wesley Transue)\n- instructions for U+01A6 Ʀ, U+0238 ȸ, U+0239 ȹ, U+02EC ˬ, and U+05C6 ׆ \n  in Sans Book. (by Wesley Transue)\n- DejaVuSans.sfd DejaVuSerif.sfd: updated instructions for U+447 and \n  U+451 using code generated with xgridfit (by Andrey V. Panov)\n- instructions for a few glyphs in the Latin Extended-B Block, Greek \n  Block, Cyrillic Block, and N'Ko block. (by Wesley Transue)\n- updated sfdnormalize.pl, and SFD files to new SFD format with empty \n  lines. (by Denis Jacquerye) \n\nChanges from 2.22 to 2.23\n\n- fixed bug which made Condensed fonts appear instead of normal width ones\n- added U+20DB, U+20DC, and U+20E1 to Sans (by Roozbeh Pournader)\n- added hinting instructions to U+01A7, U+01AA-U+01AC, U+01AE-U+01AF,\n  U+01BC-U+01BD, U+01BF, U+01F7, U+0277, U+027F, U+0285-U+0286, U+0297, U+02AF,\n  U+02B4-U+02B5, U+02BD, U+030D, U+0311, U+0329, U+04A0-U+04A1 in Sans Book (by\n  Wesley Transue)\n- modified hinting instructions of U+04A2 in Sans Book (by Wesley Transue)\n- added hinting instructions to U+237D, U+2423 in Mono Book and Mono Bold (by\n  Wesley Transue)\n- added mathematical alphanumeric symbols to all styles (by Max Berger)\n- added Unicode 5.1 U+2E18 as U+2E18.u51 (not yet usable) to Sans (by Roozbeh\n  Pournader) \n- dereferenced all glyphs with mixed references and outlines (by Denis\n  Jacquerye)\n- removed non-zero width from U+0344 in Sans (by Denis Jacquerye)\n\nChanges from 2.21 to 2.22\n\n- directory structure has changed, we now use the Makefile\n- modified Armenian U+0565 in Sans (by Սահակ Պետրոսյան)\n- added double struck letters and numbers U+2102, U+210D, U+2115,\n  U+2119-U+211A, U+211D, U+2124, U+213C-U+2140, U+2145-U+2149, U+1D538-U+1D539,\n  U+1D53B-U+1D53E, U+1D540-U+1D544, U+1D546, U+1D54A-U+1D550, U+1D552-U+1D56B,\n  U+1D7D8-U+1D7E1 to Serif (by Stephen Hartke)\n- added letterlike symbols U+2103, U+2109, U+2127, U+214B, U+2141-U+2144 to\n  Serif (by Ben Laenen)\n- fixed outline direction of U+2143 in Sans Bold/Bold Oblique (by Ben Laenen)\n- added arrow set in Serif: arrows: U+2194-U+21FF; dingbats: U+27A1;\n  supplemental arrows A: U+27F0-U+27FF; supplemental arrows B: U+2900-U+2975,\n  U+297A; miscellaneous symbols and arrows: U+2B00-U+2B11 (by Ben Laenen)\n- added U+0180, U+01DE, U+01E0-01E1, U+022A, U+022C, U+0230, U+1E08-U+1E09,\n  U+1E10-U+1E11, U+1EB0-U+1EB1 to Mono (by Denis Jacquerye)\n- adjusted U+01D5, U+01D7, U+01D9, U+1DB in Mono (by Denis Jacquerye)\n- added Ogham in Sans (by Wesley Transue)\n- added Yijing Hexagram Symbols in Sans (by Wesley Transue)\n- hinting instructions added to Cyrillic U+0460, U+04A6-U+04A7, U+04AC-U+04AD,\n  U+04C7-U+04C8, U+04F6-U+04F7, U+04FA-U+04FB, U+050C-U+050D in Sans Book (by\n  Wesley Transue)\n- adjusted Cyrillic letters U+042A, U+044A, U+044C, U+0459-U+045B, U+0462,\n  U+048C-U+048D in Serif (by Andrey V. Panov)\n- hinting instructions added to Lao U+0EB7 in Sans (by Wesley Transue)\n- added Roman numerals and Claudian letter U+2160-U+2184 in Serif (by Ben\n  Laenen)\n- added U+FFF9-U+FFFD to Sans, Serif and Mono (by Lars Næsbye Christensen)\n- added mathematical symbols to Serif: U+2200, U+2203-U+2204, U+2213-U+2214,\n  U+2217-U+2218, U+2223-U+2226, U+2250-U+2255, U+2295-U+22AF, U+22C5 (by Ben\n  Laenen)\n- modified bullet symbol U+2219 in Serif (by Ben Laenen)\n\nChanges from 2.20 to 2.21\n\n- added U+FE20-U+FE23 (half diacritics) to Sans (by Denis Jacquerye)\n- added anchor \"half\" to position right half of double marks, U+FE21 or U+FE23\n  to Sans (by Denis Jacquerye)\n- shifted U+0360 up to avoid collision with some outlines in Sans (by Denis\n  Jacquerye)\n- added anchor above-mark anchor to U+035D, U+035E, U+0360, U+0361 in Sans (by\n  Denis Jacquerye)\n- added instructions for ff, ffi, ffl ligatures in Serif Bold (by Eugeniy\n  Meshcheryakov)\n- added instructions to some N'Ko glyphs (by Wesley Transue)\n- added instructions to some Lao glyphs (by Wesley Transue)\n- cleaning up 'liga' Standard Ligature in Latin, in Sans and Sans Mono (by\n  Denis Jacquerye)\n- added U+046A, U+046B (big yus) in Serif (by Andrey V. Panov)\n- added box drawing symbols to Sans and Serif (by Lars Næsbye Christensen)\n- added Makefile to improve font and packages generating (by Nicolas Mailhot)\n\nChanges from 2.19 to 2.20\n\n- removed TeX and TeXData tags from all sfd files (by Eugeniy  Meshcheryakov)\n- removed all 'frac' lookups (by Eugeniy  Meshcheryakov)\n- fixed duplicate glyph names (by Eugeniy  Meshcheryakov)\n- removed standard ligatures with U+00B7 in Mono (by Eugeniy  Meshcheryakov)\n- use reference to U+002D in U+00AD in Sans Oblique, and adjust instructions\n  (by Eugeniy  Meshcheryakov)\n- updated Cyrillic in Sans Extra Light (by Andrey V. Panov)\n- added instructions to N'Ko U+07C1-U+07C6, U+07CA, U+07CE-U+07CF, U+07D1,\n  U+07D3-U+07D4, U+07D8, U+07DB and U+07EB in Sans (by Wesley Transue)\n- added instructions to Lao U+0E8A, U+0E95, U+0E97, U+EA5, U+0EB4 and U+0EB5\n  (by Wesley Transue)\n- adjusted instructions for Hebrew glyphs (by Denis Jacquerye)\n- added instructions for U+0265 in Sans Bold (by Denis Jacquerye)\n- fix U+1D68 in Sans: it had the shape of delta, where it should be a rho (by\n  Ben Laenen)\n- remove U+1D5C glyph in Sans Oblique (it was empty) (by Ben Laenen)\n- fix instructions of U+01AD in Sans Bold  (by Ben Laenen)\n- fix instructions of U+042D in Serif (by Ben Laenen)\n- remove buggy instructions of U+2328 in Serif (by Ben Laenen)\n- corrected width of U+2C75-U+2C76 in Sans Bold and Serif Bold (by Gee Fung Sit)\n- added U+2C75-U+2C77 to Mono (by Gee Fung Sit)\n\nChanges from 2.18 to 2.19\n\n- fixed misplaced symbols (U+2325,2326) in Sans Oblique (by John Karp) \n- added Mark to Base anchors: 'cedilla' for combining cedilla and\n  'above-legacy' for stacking above precomposed glyphs (just a,e,i,o,u with\n  macron for now) in Sans (by Denis Jacquerye).\n- added contextual substitution for Case and Dotless forms in all Sans variants\n  (by Denis Jacquerye).\n- renamed 'ccmp' lookups for RTL and Basic (LGC, etc.) (by Denis Jacquerye)\n- added anchor 'cedilla' for vowels in Sans. (by Denis Jacquerye)\n- extended contextual dotless and case substitutions to handle both below and\n  above diacritics (by Denis Jacquerye)\n- renamed Dotless and Case Form GSUB lookups in Sans with meaningful names (by\n  Denis Jacquerye)\n\nChanges from 2.17 to 2.18\n\n- Re-encoded the source files for Full Unicode (by Ben Laenen)\n- Re-enabled the \"ff\", \"fl\", \"fi\", \"ffl\", \"ffi\" ligatures by default in Serif\n  (by Ben Laenen)\n- Disabled the \"fi\", \"ffi\" ligatures for languages with dotless i in Serif (by\n  Ben Laenen)\n- added Tifinagh to Sans Book and Bold, U+2D30-U+2D65, U+2D6F, partially hinted\n  in Sans Book. (by Denis Jacquerye)\n- added Tai Xuan Jing Symbols (U+1D300-1D356) to Sans (by Remy Oudompheng)\n- added double-struck letters (U+1D538-U+1D56B minus reserved code points) to\n  Sans (by Gee Fung Sit)\n- added U+22EE-U+22F1 to Sans (by Gee Fung Sit)\n- added U+2C67-U+2C6C, U+2C75-U+2C77 to Serif (by Gee Fung Sit)\n- italicized various glyphs in Latin Extended-B, IPA Extensions, Spacing\n  Modifier Letters, Phonetic Extension (Supplement) and Super- and Subscripts\n  in Serif Oblique fonts (by Gee Fung Sit)\n- modified outlines, bearings of Hebrew U+05D6, U+05D8, U+05DB, U+05DE, U+05E0,\n  U+05E1, U+05E2, U+05EA in Sans Book and Oblique, adjusted hinting in Book\n  based on Yotam Benshalom's comments. (by Denis Jacquerye)\n- added Braille Patterns (U+2800-U+28FF) to Serif fonts (by Gee Fung Sit)\n- added N'Ko to Sans Book and Bold: U+07C0-U+07E7, U+07EB-U+07F5, U+07F8-U+07FA\n  (by Eugeniy  Meshcheryakov)\n- added U+0ED8 (Lao digit 8) to Sans (by Remy Oudompheng)\n- added Lao diacritics U+0EB0-0EB9, U+0EBB-0EBC, U+0EC8-0ECD to Mono (by Remy\n  Oudompheng)\n- renamed Serif [Bold] Oblique, make it Italic (by Eugeniy  Meshcheryakov)\n- added U+29FA-U+29FB to Sans and Sans Mono (by Gee Fung Sit)\n- swapped glyphs for Eng U+014A from Sami Eng to African Eng, the latter being\n  more common (by Denis Jacquerye)\n- swapped ae U+00E6 and ae.alt in Serif Italics fonts, thus fixing #8213 (by\n  Denis Jacquerye)\n- minor improvements to Misc. Symbols in Sans (by Gee Fung Sit)\n- minor improvements and additions to Sans ExtraLight (by Gee Fung Sit)\n- improved instructions for various Cyrillic letters (by Eugeniy  Meshcheryakov)\n- fixed hinting of theta and chi in Sans Book (by Ben Laenen)\n- added Georgian Mkhedruli to Sans, Serif and Mono, ASumtavruli to Sans and\n  Serif (by Besarion Gugushvili)\n\nChanges from 2.16 to 2.17\n\n- Sans fonts: fix position for certain combinations of Arabic fatha, kasra,\n  shadda, damma, kasratan, dammatan, fathatan and hamza (by Ben Laenen)\n- added 'ae.alt' to Serif Oblique fonts, with design matching shape of italic\n  'a' instead of slanted 'a', see bug #8213 (by Denis Jacquerye)\n- added super- and subscripts to Serif and Mono: U+1D2C-U+1D2E, U+1D30-U+1D3C,\n  U+1D3E-U+1D42, U+1D62-U+1D65, U+1D78, U+2071, U+207A-U+207E, U+208A-U+208E,\n  U+2090-U+2094 (by Gee Fung Sit)\n\nChanges from 2.15 to 2.16\n\n- fixed hinting instructions for digits in DejaVu Sans Oblique, Bold Oblique,\n  and Serif Book to not change glyph width (by Eugeniy  Meshcheryakov)\n- added instructions for U+0404, U+0411, U+0413, U+0414, U+0417-U+041B, U+041F,\n  U+0423, U+0424, U+0426-U+0429, U+042C, U+042E, U+042F, U+0490 in Serif Bold\n  (by Eugeniy  Meshcheryakov)\n- added U+0220 and Eng.alt to Serif fonts (by Denis Jacquerye)\n- added U+232C, U+2394, U+23E3 to Sans fonts (by John Karp)\n- added U+230C-U+230F, U+231C-U+231F to Sans fonts, fixing bug:9547\n  (by John Karp)\n- adjusted dot below, dot above, dieresis above, dieresis below in Sans fonts\n  (by Denis Jacquerye)\n- added U+2300, U+2301, U+2303, U+2304, U+2305, U+2307, U+2326, U+2327, U+232B,\n  arrow.base to Sans fonts (by John Karp)\n- adjusted dot and dieresis below and above in Serif fonts (by Denis Jacquerye)\n- added U+1E1C-U+1E1D to Serif fonts (by Denis Jacquerye)\n- added U+22BE, U+22BF (by Wesley Transue)\n- added U+2324; modified U+2325: more standard proportions, and matches U+2324 \n  and U+2387; added U+2387 : flipped U+2325 with standard arrowhead \n  (by John Karp)\n- added Lao digits U+0ED0-0ED7, U+0ED9 (by Remy Oudompheng)\n- added to Mono in Arabic block : U+060C, U+0615, U+061B, U+061F, \n  U+0621-U+063A, U+0640-0655, U+065A, U+0660-066F, U+0674, U+0679-0687, U+0691, \n  U+0692, U+0698, U+06A1, U+06A4, U+06A9, U+06AF, U+06B5, U+06BA, U+06BE, \n  U+06C6, U+06CC, U+06CE, U+06D5, U+06F0-06F9 (by Remy Oudompheng)\n- added to Mono in Arabic Presentations Forms-A : U+FB52-FB81, U+FB8A-FB95, \n  U+FB9E, U+FB9F, U+FBAA-FBAD, U+FBE8, U+FBE9, U+FBFC-FBFF (by Remy Oudompheng)\n- added to Mono in Arabic Presentations Forms-B : U+FE70-FE74, U+FE76-FEFC, \n  U+FEFF (by Remy Oudompheng)\n- added U+05BA, U+05BE, U+05F3, U+05F4, U+FB1E, U+FB21-U+FB28, U+FB4F to Sans \n  (by Eugeniy  Meshcheryakov)\n- added U+2102 to Mono (by Eugeniy  Meshcheryakov)\n- added U+2983-U+2984 to Sans (by Gee Fung Sit)\n- added U+2A2F to Sans, Serif and Mono (by Gee Fung Sit)\n- added U+2373-2375, U+237A to Sans (by John Karp)\n- converted kern pairs to kern classes with Tavmjong Bah's scripts \n  (by Denis Jacquerye)\n- set ScriptLang of kerning classes to just latn because of Pango bug\n  (by Denis Jacquerye)\n- added DNK to ScriptLang latn otherwise it is excluded, and SRB and MDK to\n  cyrl (by Denis Jacquerye)\n- removed flag 0x80 in generate.pe, otherwise it generates kerning tables some\n  systems don't like; thus loosing Apple tables (by Denis Jacquerye)\n- removed ligature for precomposed legacy characters of Sans Oblique fonts\n  (by Denis Jacquerye)\n- added bearings to en dash U+2013, em dash U+2014 and figure dash U+2012\n  by making dashes shorter, preserving character width (by Denis Jacquerye)\n- reduced U+031C, U+0325 (ring below), U+0339 to be entirely visible; \n  added instructions in Sans Book; changed U+1e00-U+1e01 to use new ring below\n  (by Denis Jacquerye)\n- adjusted circumflex below on U+1E12-U+1E13, U+1E18-U+1E19, U+1E3C-U+1E3D,\n  U+1E4A-U+1E4B, U+1E70-U+1E71, U+1E76-U+1E77 in Sans fonts (by Denis Jacquerye)\n- Added U+0ED4, U+0ED5 to DejaVu Sans (by Remy Oudompheng)\n- Lao-specific anchors (by Remy Oudompheng)\n- added alternate I to match the small capital in Sans (by Gee Fung Sit)\n\nChanges from 2.14 to 2.15\n\n- improved hinting in Sans Oblique to deal with some spacing and inconsistency\n  issues (by Ben Laenen)\n- added anchors to Mono Book, and added GPOS rules for combining diacritics to\n  show up as zero width glyphs (by Ben Laenen)\n- removed U+F21C (PUA), it was copy of U+2C64 from Latin Extended C (by Eugeniy\n  Meshcheryakov)\n- added U+27E6-U+27E7 to Sans (by Gee Fung Sit)\n- added U+1407, U+1409, U+140C-U+141B, U+141D-U+1425, U+1427-U+142E,\n  U+1435-U+1438, U+143A-U+1449, U+1452, U+1454, U+1457-U+1465, U+1467-U+146A,\n  U+1471, U+1474-U+1482, U+1484-U+1488, U+148F, U+1492, U+14A0, U+14A2, U+14A9,\n  U+14AC-U+14BA, U+14BC, U+14BD, U+14C6, U+14C9-U+14CF, U+14D1, U+14D2, U+14D9,\n  U+14DC-U+14E9, U+14EC, U+14F3, U+14F6-U+1504, U+1506, U+1507, U+1510-U+1525,\n  U+152C, U+152F-U+153D, U+1540, U+1541, U+154E, U+154F, U+1552, U+155B, U+155C,\n  U+1568, U+1569, U+1574-U+157B, U+157D, U+15A7-U+15AE, U+1646, U+1647 (by\n  Eugeniy Meshcheryakov)\n- fixed several contours to not intersect, use horizontal or vertical tangents,\n  use integer coordinates, etc in Sans Book (by Denis Jacquerye)\n- added U+0496-U+0497 in Serif (by Andrey V. Panov)\n\nChanges from 2.13 to 2.14\n\n- added Philippine peso glyph U+20B1 (by Clayborne Arevalo)\n- made U+2012 have the same width as digits, according to Unicode 5.0, \n  page 206 (by Roozbeh Pournader)\n- made all of the \"above\" combining characters remove the dot of \"i\", \n  \"j\", etc (Soft_Dotted characters), according to Unicode 5.0, \n  page 228 (by Roozbeh Pournader)\n- made U+012F, U+03F3, U+0456, U+0458, U+1E2D, and U+1ECB (all fonts \n  except Mono), U+0249, U+2148, and U+2149 (Sans and Sans Condensed), \n  U+0268 (Sans ExtraLight, Serif and Serif Condensed), and U+029D (Serif \n  and Serif Condensed) respect the Soft_Dotted property (by Roozbeh \n  Pournader)\n- added U+223E, U+223F, U+2240, U+22C2, U+22C3 to Sans (by Remy Oudompheng)\n- added U+203D to Serif (by Gee Fung Sit)\n- added zero-width glyphs for U+2061-U+2063 to Sans and Serif (by Gee \n  Fung Sit)\n- changed isolated forms of Arabic waw (U+0648, U+0624 and U+06C6) (bug #9432) \n  (by Ben Laenen)\n- added Lao consonants U+0E81, U+0E82, U+0E84, U+0E87, U+0E88, U+0E8A, \n  U+0E8D, U+0E94-0E97, U+0E99-0E9F, U+0EA1-0EA3, U+0EA5, U+0EA7, U+0EAA, \n  U+0EAB, U+0EAD-0EAF to Sans Mono (by Remy Oudompheng)\n- added U+0200-U+0217, U+0226-U+0229, U+02F3, U+1E00-U+1E07, \n  U+1E0A-U+1E0B, U+1E18-U+1E1F, U+1E22-U+1E23, U+1E28-U+1E2D, \n  U+1E3A-U+1E3B, U+1E40, U+1E48-U+1E49, U+1E56, U+1E58-U+1E59, \n  U+1E5E-U+1E5F, U+1E60, U+1E68-U+1E6B, U+1E6E-U+1E6F, U+1E72-U+1E77, \n  U+1E86-U+1E8B, U+1E92-U+1E96, U+1EA0-U+1EA1, U+1EF4-U+1EF5 to Mono \n  (by Ben Laenen)\n- renamed uppercase variants of diacritics (macron, breve, double grave, \n  double acute, inverted breve, dot above) to \"uni03XX.case\" in Mono \n  (by Ben Laenen)\n- moved uppercase variants of diacritics up in Mono so they properly \n  vertically align on capitals (by Ben Laenen)\n- precomposed glyphs with macron, breve, double grave, double acute, \n  inverted breve, dot above, macron below, breve below, inverted breve \n  below, dot below, cedilla, caron below, circumflex below, diaeresis \n  below, tilde below now reference to combining diacritics instead of \n  space modifiers in Mono (by Ben Laenen)\n- made ring below (U+0325), and half rings below (U+031C and U+0339) \n  smaller in Mono (by Ben Laenen)\n- added U+205F to all fonts (by Roozbeh Pournader)\n- added U+035E-U+035F to Sans (by Roozbeh Pournader)\n- added empty glyphs for U+034F, U+202A-U+202E, U+2060, U+206A-206F, \n  U+FE00-U+FE0F to non-Mono fonts (by Roozbeh Pournader)\n- added U+2101, U+2107-U+2108, U+210B, U+210C, U+2110, U+2112, U+211B, \n  U+211F, U+2123, U+2125, U+2128-U+2129, U+212C-U+212D, U+212F, \n  U+2130-U+2131, U+2133, U+2136-U+213A, U+2141-U+2144, U+2B00-U+2B11, \n  U+2B20-U+2B23 to Sans (by John Karp)\n- reshaped omega (U+03C9) in Mono (by Ben Laenen)\n- added U+2205, U+22C6, U+2300-U+2301, U+2303-U+2306, U+230C-U+230F, \n  U+2312-U+2315, U+231C-U+231F, U+2335, U+2337-U+233E, U+2341-U+2344, \n  U+2347-U+2348, U+234B-U+234D, U+2349-U+2350, U+2352-U+2354, \n  U+2357-U+2359, U+235A-U+235C, U+235E-U+2360, U+2363-U+2365, \n  U+2368-U+2369, U+236B-U+2370, U+2373-U+237A, U+2380-U+2383, \n  U+2388-U+238B, U+2395 in Mono (by Ben Laenen)\n\nChanges from 2.12 to 2.13\n\n- adjusted U+0198B, U+01B3-U+01B4 in Sans, hinted U+01B4 in Sans Book \n  (by Denis Jacquerye)\n- added U+27F0-U+27FF, U+2906-U+2907, U+290A-U+290B, U+2940-U+2941 to Sans \n  (by Denis Jacquerye)\n- added U+01E6-U+01E9, U+01EE-U+01EF, U+01F4-U+01F5, U+01FC-U+01FF, \n  U+021E-U+021F, U+0245, U+02BD, U+02C9, U+1E9B, U+2045-U+2046, U+2213, U+22C5,\n  U+22EF to Sans Mono (by Roozbeh Pournader)\n- added U+04FA-U+04FD to Sans (by Michael Everson)\n- removed U+2329 and U+232A because of their CJK properties, added U+27E8 \n  and U+27E9 in their stead, fixing part of bug #9038 (by Roozbeh Pournader)\n- corrected and improvised U+0466-U+0469, U+046E-U+0471, U+047C-U+047D, U+0482, \n  U+0484-U+0486, U+0492-U+0493, U+04B0-U+04B1, U+050C-U+050D, and U+204A \n  in Sans (by Michael Everson)\n- added instructions for U+0402, U+0409, U+040A, U+040B, U+044D, U+040F, \n  U+0452, U+0459-U+045B, U+045F to Sans Book (by Eugeniy Meshcheryakov)\n- made italic shape for U+431, U+432, U+437, U+43B, U+43C, U+43D, U+444, U+447, \n  U+44D, U+44F, U+459, U+45A in SerifOblique and SerifBoldOblique \n  (by Andrey V. Panov)\n- modified U+024C to match glyph in Unicode chart, fixing bug #9039 \n  (by Denis Jacquerye)\n- made some canonically equivalent characters share the same glyph: \n  U+02B9 = U+0374, U+0343 = U+0313, and U+0387 = U+00B7 also adjusting U+02BA \n  to look like double U+02B9, fixing parts of bug #9038 (by Roozbeh Pournader)\n- changed shapes for U+0478 and U+0479 in Sans to those in the Unicode charts, \n  based on a recent decision by Unicode Technical Committee to only use \n  the digraph form (by Michael Everson)\n- adjusted width of NBSP U+00A0 and NNBSP U+202F, fixing bug #8401 \n  (by Denis Jacquerye)\n- fixed several contours to not intersect, use horizontal or vertical tangents, \n  use integer coordinates, etc (by Roozbeh Pournader and Denis Jacquerye)\n- added U+1402, U+1430, U+144D, U+146C, U+148A, U+14A4, U+14C1, U+14D4, U+14EE, \n  U+1527, U+1545, U+157E, U+158E, U+15AF to Sans (by Eugeniy Meshcheryakov)\n- enlarged width of U+459 and U+45A in Serif (by Andrey V. Panov)\n- made traditional shape for U+452, U+45B (by Andrey V. Panov)\n- added euro sign U+20AC to Sans ExtraLight, making fontconfig recognize \n  the font as supporting English (by Denis Jacquerye)\n\nChanges from 2.11 to 2.12\n\n- added U+0180 to Serif (by Denis Jacquerye)\n- improved and/or hinted Armenian letters U+0542, U+0546, U+0562,\n  U+0563, U+0564, U+0577, U+0582 in Sans (by Ben Laenen)\n- added U+4FE-U+4FF, U+512-U+513, U+2114, U+214E, U+26B2 to Sans\n  (by Gee Fung Sit)\n- adjusted U+0496-U+0497, U+049A-U+04A1 in Sans to match U+0416,\n  U+041A, U+0436 and U+043A (by Gee Fung Sit)\n- Mathematical Operators in Sans: changed U+22C0-U+22C1 to match\n  other n-ary operators, adjusted U+2203-U+2204, changed U+2220 in\n  Sans to match the style of U+2221 (by Gee Fung Sit)\n- added U+1401, U+1403-U+1406, U+140A, U+140B, U+1426, U+142F,\n  U+1431-U+1434, U+1438, U+1439, U+1449, U+144A, U+144C,\n  U+144E-U+1451, U+1455, U+1456, U+1466, U+146B, U+146D-U+1470,\n  U+1472, U+1473, U+1483, U+1489, U+148B-U+148E, U+1490, U+1491,\n  U+14A1, U+14A3, U+14A5-U+14A8, U+14AA, U+14AB, U+14BB, U+14C0,\n  U+14C2-U+14C5, U+14C7, U+14C8, U+14D0, U+14D3, U+14D5-U+14D8,\n  U+14DA, U+14DB, U+14EA, U+14ED, U+14EF-U+14F2, U+14F4, U+14F5,\n  U+1405, U+1526, U+1528-U+152B, U+152D, U+152E, U+153E,\n  U+1542-U+1544, U+1546-U+154D, U+1550, U+1553, U+1555-U+155A,\n  U+1567, U+156A, U+157C, U+157F-U+1585, U+158A-U+158D,\n  U+158F-U+1596, U+15A0-U+15A6, U+15DE, U+15E1, U+166E-U+1676 to\n  Sans (by Eugeniy Meshcheryakov)\n- re-enabled Latin ligatures fi, ffi, fl, ffl and ff in Sans\n  (by Ben Laenen)\n- made italic shape for U+436, U+44A, U+44B, U+44C, U+44E, U+45F,\n  U+463 in SerifOblique and SerifBoldOblique (by Andrey V. Panov)\n- fixed sub- and superscript metrics in Condensed Sans (bug #8848)\n  (by Ben Laenen)\n- added U+474, U+475 in Serif (by Andrey V. Panov)\n- hinted Greek glyphs U+03B7, U+30B8, U+03B9, U+03C1, U+03C3,\n  U+03C6 in Mono Book (by Ben Laenen)\n\nChanges from 2.10 to 2.11\n\n- added instructions for Hebrew glyphs (Sans Book, by Eugeniy\n  Meshcheryakov)\n- changed U+01A6 (Latin Yr) after bug #8212, in Sans, Serif and\n  Sans Mono fonts (by Denis Jacquerye).\n- removed instruction for U+2600-U+26A1 (by Mederic Boquien)\n- added U+202F and set width of U+00A0 (nobreakingspace) to the\n  same as U+0020, space (by Denis Jacquerye).\n- added and improved instructions for various Cyrillic letters\n  (by Eugeniy Meshcheryakov)\n- Changed U+416, U+42F, U+427 (non-Bold), U+436, U+447 (non-Bold),\n  U+44F, U+437 (Bold), corrected U+40F, U+414, U+424, U+426, U+429,\n  U+434, U+438 (Bold), U+446, U+449, U+44D (non-Bold), U+45F in\n  Sans Mono (by Andrey V. Panov)\n- made small corrections to Cyrillic, most appreciable to U+409,\n  U+413, U+41B, U+427 and U+433, U+434, U+43B, U+447, U+459\n  (upright fonts) to Serif (by Andrey V. Panov)\n- adjusted bearings of U+410, U+416, U+41A, U+42F, U+436, U+43A,\n  U+443, U+44F in Serif (by Andrey V. Panov)\n- enlarged width of U+44A, U+44B, U+44C, U+463 in Serif\n  (by Andrey V. Panov)\n- added ligature \"iacute\" as \"afii10103\" (U+456) \"acutecomb\" in\n  Serif (by Andrey V. Panov)\n- made italic shape to U+446, U+448, U+449 in Serif (by Andrey V.\n  Panov)\n- added \"afii10831\" (U+F6C7), \"afii10832\" (U+F6C8) in Serif (by\n  Andrey V. Panov)\n- new minimum version of fontforge is 20061014 (by Ben Laenen)\n\nChanges from 2.9 to 2.10:\n\n- added U+0242, U+024A-U+024B, U+024E-U+024F, U+037C-U+037D, U+0E3F, \n  U+1D2C-U+1D2E, U+1D30-U+1D42, U+1D5D-U+1D6A, U+1D78, U+1DB8, \n  U+2090-U+2094, U+20D0-U+20D1, U+2C60-U+2C66, U+2C6B-U+2C6C, U+2C74 and \n  U+FB29 to Sans (by Gee Fung Sit)\n- added Lao glyphs : U+0E81-0E82, U+E084, U+0E87-0E88, U+0E8A, U+0E8D, \n  U+0E94-0E97, U+0E99-0E9F, U+0EA1-0EA3, U+0EA5, U+0EA7, U+0EAA-0EAB, \n  U+0EAD-0EB9, U+0EBB-0EBD, U+0EC0-0EC4, U+0EC6, U+0EC8-0ECD, U+0EDC-0EDD \n  (by Remy Oudompheng)\n- fixed U+0193 not showing in Windows (bug #7897) (by Ben Laenen)\n- changes to U+222B-222D in Sans Mono (by Remy Oudompheng)\n- ported the three remaining currency symbols from Arev (U+20B0, \n  U+20B2-U+20B3), and replaced one (U+20AF) in Sans (by Lars Naesbye \n  Christensen)\n- corrected U+20A5 in Sans (by Gee Fung Sit)\n- merged Double-Struck Letters from Arev: U+2102, U+210D, U+2115, \n  U+2119-U+211A, U+2124, U+213C-U+2140 (by Gee Fung Sit)\n- added U+2308-U+230B and U+2329-U+232A to Sans Mono and Serif faces, \n  fixed incorrect direction of U+2329 in Sans faces, and improved \n  U+2308-U+230B in Sans faces per Ben Laenen's suggestions (by David \n  Lawrence Ramsey)\n- added U+06D5 and final form of it (needed for Kurdish) (by Ben Laenen)\n- added two special glyphs U+F000 and U+F001 in Sans Book that show the \n  current ppem size (horizontal and vertical) (by Ben Laenen)\n- added U+2318 and U+2325 to Sans Mono faces, based on the Sans versions \n  (by David Lawrence Ramsey)\n- added U+2B14-U+2B1A to all faces except Sans ExtraLight (by David \n  Lawrence Ramsey)\n- respaced all Geometric Shapes characters in Serif faces to match those \n  in Sans faces again, respaced U+23CF in Sans, Sans ExtraLight, and \n  Serif faces to match U+25A0 (or Sans in Sans ExtraLight's case) again, \n  and respaced U+2B12-U+2B13 in Sans and Serif faces to match U+25A1 \n  again (by David Lawrence Ramsey)\n- corrected width of Modifier Small Letters U+1D43-1D5B in Sans Oblique \n  and U+1D9B-U+1DBF in Sans Oblique and Sans Bold Oblique (by Gee Fung Sit)\n- added a bunch of glyphs to Sans ExtraLight (see SVN for details) (by \n  Gee Fung Sit)\n- adjusted Cyrillic descenders in Sans ExtraLight to sync with Sans (by \n  Gee Fung Sit)\n- added U+0242, U+0245 to Serif (by Gee Fung Sit)\n- replaced the SHPIX routines which gave them bad spacing at certain \n  sizes in FreeType for A, V, Z, v and z in Sans Bold (by Ben Laenen) \n\nChanges from 2.8 to 2.9:\n\n- DejaVuSansExtraLight.sfd: changed family name from \"DejaVu Sans\" to\n  \"DejaVu Sans Light\" (in case we add a Light weight variant), so legacy\n  apps that understand only 4 styles are happy. (by Denis Jacquerye)\n- added Name ID 16, aka preferred family name, and Name ID 17, aka\n  preferred style name, so contemporary apps that understand more that 4\n  styles can use big fonts families \"DejaVu Sans\" and \"DejaVu Serif\". For\n  those, Extralight and Condensed are just styles not different families.\n  (by Denis Jacquerye)\n- added U+22B6-22BD, U+22C0-22C1, U+22D6-22D7 to Sans. (by Remy Oudompheng)\n- added U+037B, U+2184, U+2C67-U+2C6A and U+2C75-U+2C77 to Sans (by Gee\n  Fung Sit)\n- adjusted asteriskmath (U+2217) for consistency with other mathematical\n  operators in Sans (by Ben Laenen)\n- hinted some Armenian capitals in Sans Book (by Ben Laenen)\n- added U+0246 - U+0249 (by Ben Laenen)\n- BUGFIX : swapped U+224E and U+224F, in Sans, Sans Condensed and Sans Mono\n  (by Remy Oudompheng)\n- adjusted U+20B5 (by Mederic Boquien)\n- swapped U+21DA and U+21DB which were in wrong order (by Heikki Lindroos)\n- added U+222E-2233, U+239B-23AD, U+2A00-2A02, U+2A0F-2A1C to Sans (by Remy\n  Oudompheng)\n- added U+239B-23AD to Mono (by Remy Oudompheng)\n- added U+2024-2025 to Serif (by Mederic Boquien)\n- added U+222C-222D, U+2A0C-2A0E to Serif (by Remy Oudompheng)\n- added U+2190-21FF to Mono (by Heikki Lindroos)\n- added Hebrew glyphs - U+05B0-U+05BD, U+05BF-U+05C3, U+05C6, U+05C7,\n  U+05D0-U+05EA, U+05F0-U+05F2, U+FB1F, U+FB20, U+FB2A-U+FB36,\n  U+FB38-U+FB3C, U+FB3E, U+FB40, U+FB41, U+FB43, U+FB44, U+FB46-U+FB4E (by\n  Gee Fung Sit and Eugeniy Meshcheryakov)\n- adjustments for Cyrillic in Sans (by Andrey V. Panov)\n- made italic shape for U+0434, U+0456, U+0457 in SerifOblique and Serif\n  Bold Oblique (by Andrey V. Panov)\n\nChanges from 2.7 to 2.8:\n\n- fixed instructions for U+0423, U+0427, U+0447, U+0448 in Serif, so they\n  look good at large sizes too (by Eugeniy Meshcheryakov)\n- added U+FB00 and U+FB03 to U+FB06 to Serif typefaces (by Heikki Lindroos)\n- added U+26B0-U+26B1, U+2701-U+2704, U+2706-U+2709, U+270C-U+2727, U+2729\n  to U+274B, U+274D, U+274F to U+2752, U+2756, U+2758-U+275E, U+2761 to\n  U+2775 (by Heikki Lindroos)\n- added and improved instructions for Cyrillic letters in Mono and Serif\n  (Book, by Eugeniy Meshcheryakov)\n- rotated U+26B0 (was too small in mono) (by Gee Fung Sit)\n- adjusted U+1EDA-U+1EDD, U+1EE8-U+1EEB, capitals using capital specific\n  accent and moved diacritics to match position on U+00F2 (ograve), etc.\n  (by Denis Jacquerye)\n- added U+20D6, U+20D7 to Sans (by Gee Fung Sit)\n- made Armenian ligatures discretionary since the Firefox ligature problem\n  still isn't fixed (by Ben Laenen)\n- moved Armenian hyphen U+058A to a higher position (bug #7436) (by Ben\n  Laenen)\n- hinted Greek glyphs in Sans Bold (by Ben Laenen)\n- enabled Arabic lam-alif ligatures when diacritics are used (by Ben Laenen)\n\nChanges from 2.6 to 2.7:\n\n- added glyphs needed for Kurdish: U+0695, U+06B5, U+06C6, U+06CE and their\n  init/medi/fina forms in Sans (by Ben Laenen)\n- added U+02CD, U+01F8 - U+01F9, U+1E3E - U+1E3F, U+1E30 - U+1E35, U+1EBC -\n  U+1EBD, U+1EF8 - U+1EF9 (includes glyphs needed for Yoruba, Maori, Guarani\n  and Twi) (by Ben Laenen)\n- added U+22C8-22CC, U+29CE-29D5, U+2A7D-2AA0, U+2AAE-2ABA, U+2AF9-2AFA to\n  Sans (by Remy Oudompheng)\n- adjusted diacritics on Vietnamese, Pinyin and other characters:\n  U+01A0-U+01A1, U+01AF-U+01B0, U+01D5-U+01DC, U+01DE-01E1, U+01FA-U+01FB\n  U+022A-U+022D, U+0230-U+0231, U+1E14-U+1E17, U+1E4C-U+1E53, U+1E78-U+1E7B,\n  U+1EA4-U+1EF1 in Sans (Book, Bold and Oblique) (by Denis Jacquerye)\n- added basic arrows U+2190-U+2193 in Serif, which completes MES-1 compliance\n  for Serif (by Ben Laenen)\n- added U+01E4, U+01E5, U+01FA, U+01FB, U+02BD, U+02C9 and U+02EE to Serif\n  (by Ben Laenen)\n- fixed U+0209 in Serif Bold Oblique (by Ben Laenen)\n- adjusted Box Drawing block characters U+2500-257F in Mono to fit character\n  cell, shifting them up by 416 (Denis Jacquerye)\n- redid U+0194 in Sans (by Ben Laenen)\n- added U+2217-2218, U+2295-22A1 to Mono (by Remy Oudompheng)\n- added U+0462 to Serif (by Andrey V. Panov)\n- added U+226C, U+228C-228E, U+2293-2294, U+22F2-22FF to Sans (by Remy\n  Oudompheng)\n- adjusted U+2208-220D in Sans (by Remy Oudompheng)\n- improved some Cyrillic glyphs in Mono (by Andrey V. Panov), rewritten\n  instructions for changed glyphs (by Eugeniy Meshcheryakov)\n- added U+1E0E-1E0F, U+1E8E-1E8F to Mono fonts (by Denis Jacquerye). (bug\n  #7166)\n- renamed 'Dotabove' to 'Dotaccent' in Mono Sans Oblique to match other fonts\n  (by Denis Jacquerye).\n- added U+200B-U+200F in Sans faces and Serif faces, U+200B and U+200C were\n  in Sans already (by Lars Naesbye Christensen)\n- added U+2601-U+262F, U+263D, U+263E, U+2648-U+265F, U+2668, U+2670-U+268B,\n  U+2690-U+269C, U+26A0, U+26A1, U+2794, U+2798-U+27AF, U+27B1-U+27BE to Mono\n  (by Heikki Lindroos)\n- replaced the references with unshifted ones for both κ U+03BA and к U+043A\n  in Mono Book (by Denis Jacquerye)\n- fixing glyph for U+04ED in Mono Book, consisted only of dieresis (by Andrey\n  V. Panov).\n\nChanges from 2.5 to 2.6:\n\n- redid U+2032 - U+2037, U+2057 based on Arev in Sans (by Gee Fung Sit)\n- added U+0195, corrected U+039E, U+204B in Sans ExtraLight (by Gee Fung Sit)\n- added instructions for some Cyrillic letters in Sans Bold (by Eugeniy\n  Meshcheryakov)\n- added vulgar fractions U+2153-U+215F for Serif, made with references (by\n  Lars Naesbye Christensen)\n- added U+228F-2292, U+2299-22AF, U+22B2-22B5, U+22CD, U+22D8-22ED to Sans\n  (by Remy Oudompheng)\n- added U+2208-220D, U+2238-223D, U+2278-2281, U+228A-228B, U+228F-2292,\n  U+22CD, U+22DA-22E9 to Mono (by Remy Oudompheng)\n- fixed misplaced dot in U+2250 in Mono (by Remy Oudompheng)\n- added instructions for some Cyrillic letters in Mono Book and Bold(by\n  Eugeniy Meshcheryakov)\n- minor changes to U+2241, U+2261-2263, U+22A4, U+22A5 in Sans (by Remy\n  Oudompheng)\n- added hinting instructions to lowercase Armenian glyphs in Sans Book (by\n  Ben Laenen)\n- changed U+2208, U+220B to match U+2209 and U+220C in Sans Bold (by Remy\n  Oudompheng)\n- added Braille patterns U+2800-U+28FF to Sans (by Mederic Boquien)\n- added instructions for some Cyrillic letters in Serif Book (by Eugeniy\n  Meshcheryakov)\n- renamed BoldOblique fonts to Bold Oblique in TTF Name as originally in\n  Bitstream Vera fonts (by Denis Jacquerye)\n- added hinting instructions to some Latin-B Extended and IPA characters in\n  Sans Book (by Denis Jacquerye and Ben Laenen)\n- adjusted bearings, replaced diacritics, hinted hook and horn for\n  Vietnamese in Sans Book (by Denis Jacquerye)\n- made FAX, TM, TEL, etc. discritionary ligatures in Sans and Serif fonts\n  (by Denis Jacquerye)\n- removed ligatures of precomposed characters in Sans and Serif fonts (by\n  Denis Jacquerye)\n- added U+F208, U+F20A, U+F215-F217, U+F21A-F21B, U+F25F in PUA (from SIL's\n  PUA, probably in Unicode 5.0): U+0243, U+0244, U+0245, U+024C, U+024D,\n  U+2C64, (U+2C6D), (U+2C71)\n- modified some glyphs in Serif Oblique to make them more italic (by Denis\n  Jacquerye)\n\nChanges from 2.4 to 2.5:\n\n- fixed excessive kerning bug that occurs with Pango (by Denis Jacquerye)\n- added U+20AF to Sans and Serif (by Lars Naesbye Christensen)\n- regenerated Condensed faces (by Ben Laenen)\n- added U+035C-U+035D to Sans, fixed U+0361 (by Denis Jacquerye)\n- integrated 255 characters from Arev fonts: Latin Extended-B, Spacing\n  Modifiers, Combining Diacritical Marks, Cyrillic, Cyrillic supplement,\n  General Punctuation, Letterlike Symbols, Arrows, Mathematical Operators,\n  Miscellaneous Technical, Dingbats, Alphabetic Presentation Forms (by Denis\n  Jacquerye)\n- added basic Cyrillic and basic Greek to Sans ExtraLight (by Denis Jacquerye)\n- added U+0498, U+049A, U+04AA, U+04AB, U+04AF to Serif (by Eugeniy\n  Meshcheryakov)\n- added U+0494, U+0495, U+0498, U+0499, U+04AA, U+04AB, U+04C3, U+04C4,\n  U+04C7, U+04C8 to Mono (by Eugeniy Meshcheryakov)\n- adjusted weight of U+0256, U+0257, U+0260, U+0272, U+0273, U+0277, U+029B,\n  U+02A0 and modifed  U+028B and U+027A in Mono (by Denis Jacquerye)\n- added U+2000-200A to Mono (by Denis Jacquerye)\n- added vulgar fractions U+2153 - U+215F to Mono (by Gee Fung Sit)\n- adapted metrics of Arabic glyphs so they stay above cut-off height in Sans\n  (by Ben Laenen)\n- fixed mkmk anchors for Arabic diacritics so they stack properly in Sans (by\n  Ben Laenen)\n- fixed weight of lowercase upsilon in Sans Bold, make small adjustment to\n  lowercase omega in Sans (by Ben Laenen)\n- added U+210E (by Mederic Boquien)\n- unslanted U+2201, U+221B and U+221C in Sans Oblique (by Mederic Boquien)\n- added several mathematical relation symbols to Sans and Mono (U+2241-224C,\n  U+2250-2255, U+2260-2269, U+226E-2277, U+2282-2287) modified U+223C to match\n  other tildes, and U+2282-2284 to have the same shape. (by Remy Oudompheng)\n- made U+2234-U+2237 refer to U+2219 instead of U+00B7 in Sans (by Mederic\n  Boquien)\n- added U+2238-223B, U+226A-226B, U+2278-2281, U+2288-228B to Sans (by Remy\n  Oudompheng)\n- unslanted and changed reference of U+22C5 from U+00B7 to U+2219 in Sans (by\n  Mederic Boquien)\n- added U+224D-225F, U+226D, U+22C6 to Sans and unslanted U+2219 in Sans\n  Oblique. (by Remy Oudompheng)\n- added U+224D-225F, U+226D to Mono, shifted U+2266-2269 higher upwards and\n  unslanted U+2219 in Oblique. (by Remy Oudompheng)\n- merged Coptic glyphs from Arev 0.2 (by Lars Naesbye Christensen)\n- fixed and adjusted various Cyrillic glyphs in Serif (by Andrey V. Panov)\n- made fi, fl... ligatures discretionary ligatures (by Ben Laenen)\n\nChanges from 2.3 to 2.4:\n\n- added U+04A2, U+04A3, U+04AC - U+04AF, U+04BA, U+04BB, U+04C0 -\n  U+04C2, U+04CB, U+04CD, U+04D8 - U+04DF, U+04E2 - U+04E5, U+04E8 - U+04F5,\n  U+04F6 - U+04F9 to Mono (by Eugeniy Meshcheryakov)\n- added U+048C, U+048D, U+0494, U+0495, U+049E - U+04A7, U+04AC -\n  U+04AE, U+04B4- U+04B7, U+04BA, U+04BB, U+04C0 - U+04C4, U+04C7, U+04C8,\n  U+04CB, U+04CC, U+04D8 - U+04DF, U+04E2 - U+04E5, U+04EC - U+04F9 to Serif\n  (by Eugeniy Meshcheryakov)\n- added U+2134 to Sans (by Gee Fung Sit)\n- added U+2080 - U+2089 to all faces (by Gee Fung Sit)\n- several minor corrections to Sans (by Gee Fung Sit)\n- major corrections to Sans Condensed (by Gee Fung Sit)\n- corrected Superscripts and Subscripts in Sans (by Gee Fung Sit)\n- corrected anchors of U+0316-U+0319 (by Denis Jacquerye)\n- Verajja integrated (by Stepan Roh)\n- copied U+2328, U+2600, U+2639-U+263C, U+263F-U+2647, U+2660-U+2667,\n  and U+2669-U+266F from Sans to Serif, and copied scaled-down versions of\n  them to Sans Mono (by David Lawrence Ramsey)\n- added U+20B4 to all faces (by Eugeniy Meshcheryakov)\n- added more minor positional adjustments to U+2638 in all faces to\n  match the other miscellaneous symbols in Verajja, and rescale it in Sans\n  Mono so that it looks better (by David Lawrence Ramsey)\n- added U+2242, U+2243 and U+22A4 (by Mederic Boquien)\n- corrected U+2245 in Sans (by Mederic Boquien)\n- added U+0221, U+0234-0236 (by Denis Jacquerye)\n- added in Arabic block to Sans: U+060C, U+0615, U+061B, U+061F, U+0621\n- U+063A, U+0640 - U+0655, U+0660 - U+066F, U+0679 - U+0687, U+0698, U+06A1,\n  U+06A9, U+06AF, U+06BA, U+06BF, U+06CC, U+06F0 - U+06F9 (by Ben Laenen)\n- added in Arabic Presentation Forms A to Sans: U+FB52 - U+FB81, U+FB8A\n- U+FB95, U+FB9E - U+FB9F, U+FBE8 - U+FBE9, U+FBFC - U+FBFF (by Ben Laenen)\n- added complete Arabic Presentation Forms B to Sans: U+FE70 - U+FE74,\n  U+FE76 - U+FEFC, U+FEFF (by Ben Laenen)\n- added complete Greek Extended block to Mono (by Ben Laenen)\n- modified Greek capitals with tonos in Mono (by Ben Laenen)\n- added U+01C4-01CC, U+01D5, U+01DE, U+01E0-U+01E1, U+01E6-U+01E9,\n  U+01EE-U+01F5, U+01F8-U+0217, U+021E-U+021F, U+0226-U+022A, U+022C to Serif\n  (by Denis Jacquerye)\n- adjusted U+043B and U+044F in Serif (by Denis Jacquerye)\n- added U+2000-U+200A (by Denis Jacquerye)\n- added U+1E00-U+1E0B, U+1E0E-U+1E11, U+1E14-U+1E1C, U+1E1E-U+1E23,\n  U+1E26-U+1E2D, U+1E30-U+1E35, U+1E3A-U+1E3B, U+1E3E-U+1E40, U+1E48-U+1E49,\n  U+1E50-U+1E56, U+1E58-U+1E59, U+1E5E-U+1E60, U+1E68-U+1E6B, U+1E6E-U+1E6F,\n  U+1E72-U+1E7D, U+1E86-U+1E9B, U+1EA0-U+1EA3, U+1EAC-U+1EB7, U+1EBA-U+1EBD,\n  U+1EC6-U+1ECF, U+1ED8-U+1ED9, U+1EE6-U+1EE7, U+1EF4-U+1EF9 to Serif (by\n  Denis Jacquerye)\n- added U+048E, U+048F, U+049C-U+049F, U+04B8, U+04B9, U+04BC-U+04BF,\n  U+04C3, U+04C4 to Sans (by Eugeniy Meshcheryakov)\n- added DejaVu Sans Extra Light (by Denis Jacquerye)\n- Adjusted underline position for (hopefully) improved legibility in\n  Sans, Serif, Mono (Tim May)\n- added auto-generated DejaVu LGC (by Stepan Roh) \n\nChanges from 2.2 to 2.3:\n\n- fixed bug U+042B and U+044B behave badly in Sans Bold or Oblique (by\n  Keenan Pepper)\n- added and improved TrueType instructions and related settings (by\n  Keenan Pepper)\n- added U+04D0-U+04D7, U+04E6, U+04E7 to Mono (by Eugeniy Meshcheryakov)\n- added U+048A - U+048D, U+0498, U+0499, U+04AA, U+04AB, U+04B0, U+04B1,\n  U+04C0, U+04C9, U+04CA, U+04CE, U+04CD, U+04DA, U+04DB, U+04DE, U+04DF,\n  U+04E2 - U+04E5, U+04EC - U+04F8, U+04F9 to Sans (by Eugeniy Meshcheryakov)\n- added U+04E0, U+04E1 to all faces (by Eugeniy Meshcheryakov)\n- added Greek Extended to Sans and Serif: U+1F00-U+1F15, U+1F18-U+1F1D,\n  U+1F20-U+1F45, U+1F48-U+1F4D, U+1F50-U+1F57, U+1F59, U+1F5B, U+1F5D,\n  U+1F5F-U+1F7D, U+1F80-U+1FB4, U+1FB6-U+1FC4, U+1FC6-U+1FD3, U+1FD6-U+1FDB,\n  U+1FDD-U+1FEF, U+1FF2-U+1FF4, U+1FF6-U+1FFE (by Ben Laenen)\n- added Greek variant letterforms, archaic letters and symbols to Mono:\n  U+03D0-U+03E1, U+03F0-U+03FF (by Ben Laenen)\n- added Armenian block and Armenian ligatures to Sans (U+0531 - U+0556,\n  U+0559 - U+055F, U+0561 - U+0587, U+0589 - U+058A, U+FB13 - U+FB17) (by Ben\n  Laenen)\n- redid some Greek characters in Sans and Mono to make them look better\n  and to correct some errors (by Ben Laenen)\n- added U+27E0 to all faces (by David Lawrence Ramsey)\n- added underscore (U+005F) consistency fixes: extended the Sans Mono\n  and Sans Mono Oblique underscores to touch both horizontal edges, and\n  reduced the height of the Sans Bold Oblique underscore to match the Sans\n  Bold underscore (by David Lawrence Ramsey)\n- added underscore (U+005F) derivatives and consistency fixes for them:\n  made U+0332 a reference to underscore at Denis Jacquerye's suggestion; made\n  U+0333 two references to underscore; made U+033F two references to U+203E;\n  added U+2017 as two references to underscore, and made U+0333 a reference to\n  it; and added U+203E as a reference to underscore, and made U+0305 a\n  reference to it (by David Lawrence Ramsey)\n- added U+201B, U+2220, U+2320-U+2321, U+23AE, U+23CF, all remaining\n  Geometric Shapes glyphs (U+25A0-U+25C9, U+25CB-U+25D7, U+25D9-U+25E5,\n  U+25E7-U+25FF), and U+2B12-U+2B13 to all faces (by David Lawrence Ramsey)\n- added minor positional adjustments to U+2638 in all faces (by David\n  Lawrence Ramsey)\n- added U+201F to Sans Mono and Serif faces (by David Lawrence Ramsey)\n- added U+01B7, U+01F6, U+0464 - U+0465, U+2160 - U+2180, U+2183,\n  U+220A, U+220D, U+2329, U+232A, U+2422, U+27E8 - U+27EB, U+2680 - U+2685 to\n  Sans (by Gee Fung Sit ???)\n- added U+2116 to Sans and Serif (by Gee Fung Sit)\n- changed florin sign U+0192 in Sans (by Gee Fung Sit)\n- added anchor points to some glyphs (by Denis Jacquerye)\n- adjusted height of IPA superscripts U+02B0-02B8, U+02C0-02C1,\n  U+02E0-02E4, U+207F to match with height of U+00B2 (by Denis Jacquerye)\n- added U+0184-U+0185, U+019C, U+019F, U+01A0-U+01A3, U+01A6, U+01AA,\n  U+01AF-U+01B0, U+01B2-U+01B4, U+01B7-U+01B8, U+01BC-U+01BC, U+0224-U+0225,\n  U+023A-U+0240, U+1D16-U+1D17, U+1D1D-U+1D1E, U+1D43-U+1D5B, U+1D7B,\n  U+1D85,U+1D9B-1DB7, U+1DB9-U+1DBF, U+20A6 to all fonts (by Denis Jacquerye)\n- added added U+0182, U+018B, U+018E, U+01A0-U+01A1, U+01B1, U+01B9,\n  U+01C0-U+01C3, U+0238-U+0239, U+1D02, U+1D08-U+1D09, U+1D14, U+1D1F, U+1D77\n  to Serif and Mono (by Denis Jacquerye)\n- added U+0181, U+0183, U+0187-U+0188, U+018A-U+018F, U+0191, U+0193,\n  U+0195-U+019B, U+019D-U+019E, U+01A4-U+01A5, U+01AC-U+01AE, U+01B5-U+01B6,\n  U+01B9, U+01BB, U+01F6 to Serif (by Denis Jacquerye)\n- added U+0181, U+0187-U+0188, U+018A, U+018D, U+018F, U+0191, U+0193,\n  U+0195-U+019F, U+01A4-01A5, U+01AC-01AD, U+01B5-U+01B6, U+1BB, U+01F6,\n  U+01D7-U+01DC, U+0238-U+0239, U+0241 to Mono (by Denis Jacquerye)\n- added to Mono and Serif (by Denis Jacquerye) \n\nChanges from 2.1 to 2.2:\n\n- reworked the vertical orientation of the Blocks Elements characters\n  in all faces to remove their overly large descenders, in order to fix\n  problems with e.g. terminal emulators (by David Lawrence Ramsey)\n- copied bullet in Sans faces to Serif faces for consistency (by David\n  Lawrence Ramsey)\n- added U+2023, U+25D8, U+25E6, and U+29EB to all faces (by David\n  Lawrence Ramsey)\n- added U+1EB8, U+1EB9, U+1ECA - U+1ECD, U+1EE4, U+1EE5 (by Tim May)\n- added U+01DD, U+02BE, U+02BF, U+02D3 to all, changed U+02D2 in\n  non-Condensed and U+1EE5 in Serif (by Tim May)\n- fixed U+01CE, replacing wrong circumflex by caron (by Denis Jacquerye)\n- added anchor points to some glyphs (by Denis Jacquerye)\n- added U+20B5 (by Denis Jacquerye)\n- added U+0181 - U+0183, U+0187, U+0188, U+018A - U+018D, U+0191,\n  U+0193, U+0195 - U+019B, U+019D, U+019E, U+01A4, U+01A7 - U+01A9, U+01AB -\n  U+01AE, U+01B1, U+01B5, U+01B6, U+01BB, U+01C0 - U+01C3, U+01F1 - U+01F3,\n  U+0238, U+0239, U+1D02, U+1D08, U+1D09, U+1D14, U+1D1F, U+1D77, U+2103,\n  U+2126, U+2127, U+212A, U+212B, U+2132, U+214B, U+2210, U+2217, U+2218,\n  U+2A0C - U+2A0E, U+FB00, U+FB03 and U+FB04 to Sans (by Gee Fung Sit)\n- added U+01A9, U+01C3 and U+2126 to Mono and Serif (by Gee Fung Sit)\n- adjusted bearings of U+028B in Sans (by Gee Fung Sit)\n- added U+018F, U+0494-U+0497, U+04A0-U+04A7, U+04AC-U+04AF,\n  U+04B4-U+04B7, U+04BA-U+04BB, U+04C1-U+04C2, U+04C5-U+04C8, U+04CB-U+04CC,\n  U+04D0-U+04D9, U+04DC-U+04DD, U+04E6-U+04EB to Sans (by Eugeniy\n  Meshcheryakov)\n- replaced with references U+0391-U+0393, U+0395-U+0397, U+0399, U+039A,\n  U+039C, U+039D, U+039F-U+03A1, U+03A4, U+03A5, U+03A7, U+03BF, U+03DC,\n  U+0405, U+0406, U+0408, U+0410, U+0412, U+0415, U+0417, U+041A,\n  U+041C-U+041E, U+0420-U+0422, U+0425, U+0430, U+0435, U+043E, U+0440,\n  U+0441, U+0443, U+0445, U+0455-U+0458 in Serif and Mono (by Eugeniy\n  Meshcheryakov)\n- added U+04D0-U+04D7, U+04E6-U+04EB to Serif (by Eugeniy Meshcheryakov)\n- added U+212A and U+212B to the rest of the faces (by Lars Naesbye\n  Christensen)\n- added U+2318 and U+2325 to Sans and Serif (by Lars Naesbye Christensen)\n- added and improved TrueType instructions and related settings (by\n  Keenan Pepper)\n- completed basic Greek alphabet: added U+0374-U+0375, U+037A, U+037E,\n  U+0384-U+038A, U+038C, U+038E-U+0390, U+03AC-U+03BF, U+03C1-U+03CE (by Ben\n  Laenen)\n- added U+2070 and U+2074-U+2079 (by Mederic Boquien) \n\nChanges from 2.0 to 2.1:\n\n*** Be aware that names of some TTF files changed since version 2.0. ***\n\n- added U+0323, U+1E0C, U+1E0D, U+1E24, U+1E25, U+1E36 - U+1E39, U+1E42,\n  U+1E43, U+1E46, U+1E47, U+1E5A - U+1E5D, U+1E62, U+1E63, U+1E6C, U+1E6D,\n  U+1E7E, U+1E7F (by Tim May)\n- fixed bug where GNOME applications used Mono Bold Oblique instead of\n  Mono Oblique (by Keenan Pepper)\n- added and improved TrueType instructions and related settings (by\n  Keenan Pepper)\n- added U+1E41, U+1E57, U+1E61 (by Sander Vesik)\n- added U+0189, U+0309, U+0313, U+0314, U+031A, U+031B, U+0327, U+0328,\n  U+032B, U+0333, U+033C (by Denis Jacquerye)\n- adjusted and fixed U+0186, U+0254, U+0291, U+0316 - U+0319, U+031C -\n  U+0320, U+0323 - U+0326, U+0329 - U+032A, U+032C - U+0332, U+0339 - U+033B,\n  U+033E, U+033F (by Denis Jacquerye)\n- fixed U+1E12, U+1E3C, U+1E4A, U+1E70 to have normal below diacritics\n  (by Denis Jacquerye)\n- fixed U+1E82, U+1E84 and U+1EF2 to have uppercase above diacritics (by\n  Denis Jacquerye)\n- added anchor points to some glyphs (by Denis Jacquerye)\n- dropped \"-Roman\" from font names - affects both internal TTF names and\n  names of generated files (by Stepan Roh)\n- attempt to fix bug Vertical spacing too big for Mono by exchanging\n  LineGap and OS2TypoLinegap values (proofed by Stefan Rank)\n- added Greek capitals U+0391 - U+03A1, U+03A3 - U+03A9, U+03AA, U+03AB\n  in Mono (by Ben Laenen)\n- added the per ten thousand sign U+2031 (by Mederic Boquien)\n- added U+2207, U+221D, U+221F, U+2227 - U+222A, and U+2261 (by David\n  Lawrence Ramsey)\n- new logo (by Gee Fung Sit)\n- added U+0180, U+018E, U+201F, U+2024, U+2025, U+203D, U+2200, U+2203,\n  U+2213, U+222C, U+222D, U+2263 to Sans (by Gee Fung Sit) \n\nChanges from 1.15 to 2.0:\n\n- \"Italized\" basic glyphs in all Serif Oblique and their Condensed faces\n  (by David Jez)\n- added and improved TrueType instructions and related settings (by Keenan\n  Pepper)\n- added anchor points to some glyphs (by Denis Jacquerye)\n- many new spacing and combining accents (by Denis Jacquerye)\n- smart substitutions for transforming i and j to dottless form and for\n  using uppercase diacritics (by Denis Jacquerye)\n- fixed remaining erroneously slanted characters in Serif Oblique faces (by\n  David Lawrence Ramsey)\n- copied bullet in Sans faces to Sans Oblique faces for consistency (by\n  David Lawrence Ramsey)\n- added U+203C and U+2047-U+2049 (by David Lawrence Ramsey)\n- added Greek glyphs to Serif (by Ben Laenen, Condensed merge by David Jez)\n- fixed bug LTR glyphs behaving like RTL (by Ben Laenen)\n- fixed wrong glyph directions (by David Jez)\n- fixed repositioned accents in Condensed faces (by David Jez)\n\nChanges from 1.14 to 1.15:\n\n- added and improved TrueType instructions and related settings (by Keenan\n  Pepper)\n- fixed U+2302, U+2319 (by David Lawrence Ramsey)\n- fixed yet another monospace bug (by Stepan Roh)\n- fixed potential \"too big ascender/descender\" bug (by Stepan Roh)\n- fixed U+026E and U+028E (by Denis Jacquerye)\n- added U+0186, U+0190, U+0300 - U+0304, U+0306 - U+0308, U+030A - U+030C,\n  U+0321, U+0322 (by Denis Jacquerye)\n- added rest of Block Elements: U+2591 - U+2593 (by David Lawrence Ramsey)\n- added U+2311, U+237D and U+2638 (by David Lawrence Ramsey)\n- added U+01CD - U+01D4 (by Denis Jacquerye)\n- fixed accents of U+00F2 - U+00F6 by replacing them with references in Mono\n  Bold (by David Jez)\n- added U+0490, U+0491 (by Eugeniy Meshcheryakov)\n- added hints to U+0404 and U+0454 in Sans (by Eugeniy Meshcheryakov)\n- completed Greek glyphs from U+0370 to U+03CF in Serif (by Ben Laenen)\n- fixed shape of U+0255 in Sans Bold and Sans Bold Oblique (by Denis\n  Jacquerye)\n\nChanges from 1.13 to 1.14:\n\n- fixed bug where Mono faces were not recognized as fixed pitch in Windows\n  by correcting Venda glyphs (by David Jez)\n- added and improved TrueType instructions (by Keenan Pepper)\n- added 6 Uzbekian glyphs (by Mashrab Kuvatov)\n- added Greek glyphs to Sans and Serif, changed pi and omega to fit in (by\n  Ben Laenen)\n- added IPA and related superscript glyphs (by Denis Jacquerye)\n- fixed buggy Venda glyphs (by David Lawrence Ramsey and Stepan Roh)\n- added U+2302, U+2310, U+2319 (by David Lawrence Ramsey)\n- fixed slanted U+00AC in Serif Oblique faces (by David Lawrence Ramsey)\n- added 29 glyphs from Block Elements (by David Lawrence Ramsey)\n\nChanges from 1.12 to 1.13:\n\n- removed all stems (PS hints) (requested by David Jez)\n- added U+01D6, U+01DF, U+022B, U+022D and U+0231 (by Sander Vesik)\n- added 10 Venda glyphs (by Dwayne Bailey)\n- fixed bug when fonts had no name on Microsoft Windows (by Stepan Roh)\n- updated 'missing' glyph U+FFFD (by David Jez)\n- set TTF flag fsType to 'Installable Embedding' (= unrestricted usage)\n  (idea by C. Tiffany)\n\nChanges from 1.11 to 1.12:\n\n- added long s (by James Cloos)\n- prettier comma accent in gcommaaccent (by David Jez)\n- added Hbar, hbar, kgreenlandic, napostrophe, Eng, eng, Tbar, tbar,\n  afii57929 (by David Jez)\n- changed Iogonek, iogonek, IJ, ij to look better (by David Jez)\n- glyph uni0237 renamed to dotlessj (requested by David Jez)\n- fixed accents for dcaron, lcaron, tcaron, Uogonek, uogonek in Serif (by\n  David Jez)\n- added U+2500 - U+257F box drawing glyphs to Sans Mono (by David Jez)\n- fixed accents in Wcircumflex, Ycircumflex and Zdotaccent (by David Jez)\n- extra kerning for F (by Sander Vesik)\n- added 'missing' glyph U+FFFD (by David Jez)\n\nChanges from 1.10 to 1.11:\n\n- kerning updates (by Sander Vesik)\n- added Iogonek, iogonek, IJ, ij, Uogonek, uogonek (from SuSE standard fonts\n  by Adrian Schroeter, SuSE AG)\n- added Gcommaaccent, gcommaaccent, Kcommaaccent, kcommaaccent,\n  Lcommaaccent, lcommaaccent, Ncommaaccent, ncommaaccent, Rcommaaccent,\n  rcommaaccent (by Stepan Roh)\n\nChanges from 1.9 to 1.10:\n\n- added U+022E, U+022F (by Sander Vesik)\n- kerning updates for DejaVu Sans (by Sander Vesik)\n- fixed too wide cyrillic glyphs in DejaVu Sans Mono (by Valentin Stoykov)\n- fixed ligatures bug in Mono (by Stepan Roh)\n\nChanges from 1.8 to 1.9:\n\n- integrated Arev Cyrillics (by Danilo Segan)\n- added U+01EA, U+01EB, U+01EC, U+01ED (by Sander Vesik)\n\nChanges from 1.7 to 1.8:\n\n- fixed accents in Serif Oblique and Serif Bold Oblique (by Stepan Roh)\n\nChanges from 1.6 to 1.7:\n\n- added automatically generated Condensed typefaces (by Stepan Roh)\n\nChanges from 1.5 to 1.6:\n\n- monospace bug fixed (by Stepan Roh)\n- incorrect Bitstream foundry assigned by fontconfig and KDE Font Installer\nfixed (by Stepan Roh)\n- added automatically generated Oblique version of Serif typefaces (by\nStepan Roh)\n- corrected cyrillic D and d (by Danilo Segan and David Jez)\n- fixed accents position in Oblique version of Serif typefaces (by Danilo\nSegan and Sander Vesik)\n- fixed incorrect computation of OS2Win* fields (by Stepan Roh)\n- added visiblespace U+2423 (by David Jez)\n- fixed 'line height' bug by fixing ascender and descender values (by David\nJez and Stepan Roh)\n- fixed part of 'worse than Vera' bug (by Peter Cernak)\n- smaller comma accent U+0326 (by David Jez)\n\nChanges from 1.4 to 1.5:\n\n- added Cyrillics (96 characters) and Dcroat to the rest of typefaces (by\nDanilo Segan)\n- fixed bugs in some Cyrillic characters, some of them reported by Sander\nVesik (by Danilo Segan)\n- added U+0100, U+0101, U+0112, U+0113, U+012A, U+012B, U+014C, U+014D,\nU+016A, U+016B, U+01E2, U+01E3, U+0232 and U+0233 (by Sander Vesik)\n- added Romanian characters (by Misu Moldovan)\n- added U+0108, U+0109, U+010A, U+010B, U+0114, U+0115, U+0116, U+0117,\nU+011C, U+011D, U+0120, U+0121, U+0124, U+0125, U+0128, U+0129, U+012C,\nU+012D, U+0134, U+0135, U+014E, U+014F, U+0150, U+0151, U+015C, U+015D,\nU+0168, U+0169, U+016C, U+016D, U+0170, U+0171 and U+0237 (by James\nCrippen)\n- added U+02BB, U+2010, U+2011, U+2012 and U+2015 (by Stepan Roh)\n\nChanges from 1.3 to 1.4:\n\n- added Polish characters (Aogonek, aogonek, Eogonek, eogonek, Nacute,\nnacute, Sacute, sacute, Zacute, zacute, Zdotaccent, zdotaccent) (by Stepan\nRoh)\n\nChanges from 1.2 to 1.3:\n\n- added Cyrillics (96 characters) and Dcroat to Sans typefaces (by Danilo\nSegan from his BePa fonts)\n\nChanges from 1.1 to 1.2:\n\n- added Ldot, ldot, Wcircumflex, wcircumflex, Ycircumflex, ycircumflex,\n  Wgrave, wgrave, Wacute, wacute, Wdieresis, wdieresis, Ygrave and ygrave\n  (from The Olwen Font Family 0.2 by Dafydd Harries)\n\nChanges from 1.0 to 1.1:\n\n- added Lacute, lacute, Lcaron, lcaron, Racute and racute (by Peter Cernak)\n\nChanges from 0.9.4 to 1.0:\n\n- none, just changed version and updated README\n\nChanges from 0.9.3 to 0.9.4:\n\n- fixed TTF generation (kerning tables were missing)\n\nChanges from 0.9.2 to 0.9.3:\n\n- kerning of added characters\n- proper caron shape for dcaron in Mono (by Ondrej Koala Vacha)\n- minor visual changes\n\nChanges from 0.9.1 to 0.9.2:\n\n- internal bugged version\n\nChanges from 0.9 to 0.9.1:\n\n- proper caron shape for dcaron and tcaron\n- minor visual changes\n\n$Id: NEWS 2359 2009-08-27 14:13:16Z ben_laenen $\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavu-fonts-ttf-2.30/README",
    "content": "DejaVu fonts 2.30 (c)2004-2009 DejaVu fonts team\n------------------------------------------------\n\nThe DejaVu fonts are a font family based on the Bitstream Vera Fonts\n(http://gnome.org/fonts/). Its purpose is to provide a wider range of\ncharacters (see status.txt for more information) while maintaining the\noriginal look and feel.\n\nDejaVu fonts are based on Bitstream Vera fonts version 1.10.\n\nAvailable fonts (Sans = sans serif, Mono = monospaced):\n\nDejaVu Sans Mono\nDejaVu Sans Mono Bold\nDejaVu Sans Mono Bold Oblique\nDejaVu Sans Mono Oblique\nDejaVu Sans\nDejaVu Sans Bold\nDejaVu Sans Bold Oblique\nDejaVu Sans Oblique\nDejaVu Sans ExtraLight (experimental)\nDejaVu Serif\nDejaVu Serif Bold\nDejaVu Serif Bold Italic (experimental)\nDejaVu Serif Italic (experimental)\nDejaVu Sans Condensed (experimental)\nDejaVu Sans Condensed Bold (experimental)\nDejaVu Sans Condensed Bold Oblique (experimental)\nDejaVu Sans Condensed Oblique (experimental)\nDejaVu Serif Condensed (experimental)\nDejaVu Serif Condensed Bold (experimental)\nDejaVu Serif Condensed Bold Italic (experimental)\nDejaVu Serif Condensed Italic (experimental)\n\nAll fonts are also available as derivative called DejaVu LGC with support\nonly for Latin, Greek and Cyrillic scripts.\n\nFor license information see LICENSE. What's new is described in NEWS. Known\nbugs are in BUGS. All authors are mentioned in AUTHORS.\n\nFonts are published in source form as SFD files (Spline Font Database from\nFontForge - http://fontforge.sf.net/) and in compiled form as TTF files\n(TrueType fonts).\n\nFor more information go to http://dejavu.sourceforge.net/.\n\nCharacters from Arev fonts, Copyright (c) 2006 by Tavmjong Bah:\n---------------------------\nU+01BA, U+01BF, U+01F7, U+021C-U+021D, U+0220, U+0222-U+0223,\nU+02B9, U+02BA, U+02BD, U+02C2-U+02C5, U+02d4-U+02D5,\nU+02D7, U+02EC-U+02EE, U+0346-U+034E, U+0360, U+0362,\nU+03E2-03EF, U+0460-0463, U+0466-U+0486, U+0488-U+0489, U+04A8-U+04A9,\nU+0500-U+050F, U+2055-205E, U+20B0, U+20B2-U+20B3, U+2102, U+210D, U+210F,\nU+2111, U+2113, U+2115, U+2118-U+211A, U+211C-U+211D, U+2124, U+2135,\nU+213C-U+2140, U+2295-U+2298, U+2308-U+230B, U+26A2-U+26B1, U+2701-U+2704,\nU+2706-U+2709, U+270C-U+274B, U+2758-U+275A, U+2761-U+2775, U+2780-U+2794,\nU+2798-U+27AF, U+27B1-U+27BE, U+FB05-U+FB06\n\n$Id: README 2359 2009-08-27 14:13:16Z ben_laenen $\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavu-fonts-ttf-2.30/langcover.txt",
    "content": "This is the language coverage file for DejaVu fonts\n($Id$)\n\n                                                Sans               Serif              Sans Mono          \naa     Afar                                     100% (62/62)       100% (62/62)       100% (62/62)      \nab     Abkhazia                                 100% (90/90)        93% (84/90)        84% (76/90)      \naf     Afrikaans                                100% (69/69)       100% (69/69)       100% (69/69)      \nak     Akan                                     100% (73/73)       100% (73/73)       100% (73/73)      \nam     Amharic                                       (0/264)            (0/264)            (0/264)      \nan     Aragonese                                100% (66/66)       100% (66/66)       100% (66/66)      \nar     Arabic                                   100% (125/125)          (0/125)       100% (125/125)    \nas     Assamese                                      (0/64)             (0/64)             (0/64)       \nast    Asturian/Bable/Leonese/Asturleonese      100% (66/66)       100% (66/66)       100% (66/66)      \nav     Avaric                                   100% (67/67)       100% (67/67)       100% (67/67)      \nay     Aymara                                   100% (60/60)       100% (60/60)       100% (60/60)      \naz-az  Azerbaijani in Azerbaijan                100% (66/66)       100% (66/66)       100% (66/66)      \naz-ir  Azerbaijani in Iran                      100% (130/130)          (0/130)       100% (130/130)    \nba     Bashkir                                  100% (82/82)       100% (82/82)        97% (80/82)      \nbe     Byelorussian                             100% (68/68)       100% (68/68)       100% (68/68)      \nber-dz Berber in Algeria                        100% (70/70)       100% (70/70)       100% (70/70)      \nber-ma Berber in Morocco                        100% (32/32)            (0/32)             (0/32)       \nbg     Bulgarian                                100% (60/60)       100% (60/60)       100% (60/60)      \nbh     Bihari (Devanagari script)                    (0/68)             (0/68)             (0/68)       \nbho    Bhojpuri (Devanagari script)                  (0/68)             (0/68)             (0/68)       \nbi     Bislama                                  100% (58/58)       100% (58/58)       100% (58/58)      \nbin    Edo or Bini                              100% (78/78)       100% (78/78)       100% (78/78)      \nbm     Bambara                                  100% (60/60)       100% (60/60)       100% (60/60)      \nbn     Bengali                                       (0/63)             (0/63)             (0/63)       \nbo     Tibetan                                       (0/95)             (0/95)             (0/95)       \nbr     Breton                                   100% (64/64)       100% (64/64)       100% (64/64)      \nbs     Bosnian                                  100% (62/62)       100% (62/62)       100% (62/62)      \nbua    Buriat (Buryat)                          100% (70/70)       100% (70/70)       100% (70/70)      \nbyn    Blin/Bilin                                    (0/255)            (0/255)            (0/255)      \nca     Catalan                                  100% (74/74)       100% (74/74)       100% (74/74)      \nce     Chechen                                  100% (67/67)       100% (67/67)       100% (67/67)      \nch     Chamorro                                 100% (58/58)       100% (58/58)       100% (58/58)      \nchm    Mari (Lower Cheremis / Upper Cheremis)   100% (76/76)       100% (76/76)        97% (74/76)      \nchr    Cherokee                                      (0/85)             (0/85)             (0/85)       \nco     Corsican                                 100% (84/84)       100% (84/84)       100% (84/84)      \ncrh    Crimean Tatar/Crimean Turkish            100% (68/68)       100% (68/68)       100% (68/68)      \ncs     Czech                                    100% (82/82)       100% (82/82)       100% (82/82)      \ncsb    Kashubian                                100% (74/74)       100% (74/74)       100% (74/74)      \ncu     Old Church Slavonic                      100% (103/103)      86% (89/103)       78% (81/103)     \ncv     Chuvash                                  100% (74/74)       100% (74/74)       100% (74/74)      \ncy     Welsh                                    100% (78/78)       100% (78/78)       100% (78/78)      \nda     Danish                                   100% (70/70)       100% (70/70)       100% (70/70)      \nde     German                                   100% (59/59)       100% (59/59)       100% (59/59)      \ndv     Divehi/Dhivehi/Maldivian                      (0/49)             (0/49)             (0/49)       \ndz     Dzongkha                                      (0/95)             (0/95)             (0/95)       \nee     Ewe                                      100% (99/99)       100% (99/99)       100% (99/99)      \nel     Greek                                    100% (69/69)       100% (69/69)       100% (69/69)      \nen     English                                  100% (72/72)       100% (72/72)       100% (72/72)      \neo     Esperanto                                100% (64/64)       100% (64/64)       100% (64/64)      \nes     Spanish                                  100% (66/66)       100% (66/66)       100% (66/66)      \net     Estonian                                 100% (64/64)       100% (64/64)       100% (64/64)      \neu     Basque                                   100% (56/56)       100% (56/56)       100% (56/56)      \nfa     Persian                                  100% (129/129)          (0/129)       100% (129/129)    \nfat    Fanti                                    100% (73/73)       100% (73/73)       100% (73/73)      \nff     Fulah (Fula)                             100% (62/62)       100% (62/62)       100% (62/62)      \nfi     Finnish                                  100% (62/62)       100% (62/62)       100% (62/62)      \nfil    Filipino                                 100% (84/84)       100% (84/84)       100% (84/84)      \nfj     Fijian                                   100% (52/52)       100% (52/52)       100% (52/52)      \nfo     Faroese                                  100% (68/68)       100% (68/68)       100% (68/68)      \nfr     French                                   100% (84/84)       100% (84/84)       100% (84/84)      \nfur    Friulian                                 100% (66/66)       100% (66/66)       100% (66/66)      \nfy     Frisian                                  100% (75/75)       100% (75/75)       100% (75/75)      \nga     Irish                                    100% (80/80)       100% (80/80)       100% (80/80)      \ngd     Scots Gaelic                             100% (70/70)       100% (70/70)       100% (70/70)      \ngez    Ethiopic (Geez)                               (0/218)            (0/218)            (0/218)      \ngl     Galician                                 100% (66/66)       100% (66/66)       100% (66/66)      \ngn     Guarani                                  100% (70/70)       100% (70/70)       100% (70/70)      \ngu     Gujarati                                      (0/68)             (0/68)             (0/68)       \ngv     Manx Gaelic                              100% (54/54)       100% (54/54)       100% (54/54)      \nha     Hausa                                    100% (60/60)       100% (60/60)       100% (60/60)      \nhaw    Hawaiian                                 100% (63/63)       100% (63/63)       100% (63/63)      \nhe     Hebrew                                   100% (27/27)            (0/27)             (0/27)       \nhi     Hindi (Devanagari script)                     (0/68)             (0/68)             (0/68)       \nhne    Chhattisgarhi                                 (0/68)             (0/68)             (0/68)       \nho     Hiri Motu                                100% (52/52)       100% (52/52)       100% (52/52)      \nhr     Croatian                                 100% (62/62)       100% (62/62)       100% (62/62)      \nhsb    Upper Sorbian                            100% (72/72)       100% (72/72)       100% (72/72)      \nht     Haitian/Haitian Creole                   100% (56/56)       100% (56/56)       100% (56/56)      \nhu     Hungarian                                100% (70/70)       100% (70/70)       100% (70/70)      \nhy     Armenian                                 100% (77/77)            (0/77)             (0/77)       \nhz     Herero                                   100% (57/57)       100% (57/57)       100% (57/57)      \nia     Interlingua                              100% (52/52)       100% (52/52)       100% (52/52)      \nid     Indonesian                               100% (54/54)       100% (54/54)       100% (54/54)      \nie     Interlingue                              100% (52/52)       100% (52/52)       100% (52/52)      \nig     Igbo                                     100% (58/58)       100% (58/58)       100% (58/58)      \nii     Sichuan Yi/Nuosu                              (0/1165)           (0/1165)           (0/1165)     \nik     Inupiaq (Inupiak, Eskimo)                100% (68/68)       100% (68/68)       100% (68/68)      \nio     Ido                                      100% (52/52)       100% (52/52)       100% (52/52)      \nis     Icelandic                                100% (70/70)       100% (70/70)       100% (70/70)      \nit     Italian                                  100% (72/72)       100% (72/72)       100% (72/72)      \niu     Inuktitut                                100% (161/161)          (0/161)            (0/161)      \nja     Japanese                                      (0/6537)           (0/6537)           (0/6537)     \njv     Javanese                                 100% (56/56)       100% (56/56)       100% (56/56)      \nka     Georgian                                 100% (33/33)       100% (33/33)       100% (33/33)      \nkaa    Kara-Kalpak (Karakalpak)                 100% (78/78)       100% (78/78)       100% (78/78)      \nkab    Kabyle                                   100% (70/70)       100% (70/70)       100% (70/70)      \nki     Kikuyu                                   100% (56/56)       100% (56/56)       100% (56/56)      \nkj     Kuanyama/Kwanyama                        100% (52/52)       100% (52/52)       100% (52/52)      \nkk     Kazakh                                   100% (77/77)       100% (77/77)       100% (77/77)      \nkl     Greenlandic                              100% (81/81)       100% (81/81)       100% (81/81)      \nkm     Central Khmer                                 (0/63)             (0/63)             (0/63)       \nkn     Kannada                                       (0/70)             (0/70)             (0/70)       \nko     Korean                                        (0/2443)           (0/2443)           (0/2443)     \nkok    Kokani (Devanagari script)                    (0/68)             (0/68)             (0/68)       \nkr     Kanuri                                   100% (56/56)        96% (54/56)       100% (56/56)      \nks     Kashmiri                                  94% (137/145)          (0/145)        97% (141/145)    \nku-am  Kurdish in Armenia                       100% (64/64)       100% (64/64)       100% (64/64)      \nku-iq  Kurdish in Iraq                          100% (32/32)            (0/32)         87% (28/32)      \nku-ir  Kurdish in Iran                          100% (32/32)            (0/32)         87% (28/32)      \nku-tr  Kurdish in Turkey                        100% (62/62)       100% (62/62)       100% (62/62)      \nkum    Kumyk                                    100% (66/66)       100% (66/66)       100% (66/66)      \nkv     Komi (Komi-Permyak/Komi-Siryan)          100% (70/70)       100% (70/70)       100% (70/70)      \nkw     Cornish                                  100% (64/64)       100% (64/64)       100% (64/64)      \nkwm    Kwambi                                   100% (52/52)       100% (52/52)       100% (52/52)      \nky     Kirgiz                                   100% (70/70)       100% (70/70)       100% (70/70)      \nla     Latin                                    100% (68/68)       100% (68/68)       100% (68/68)      \nlah    Lahnda                                    94% (137/145)          (0/145)        97% (141/145)    \nlb     Luxembourgish (Letzeburgesch)            100% (75/75)       100% (75/75)       100% (75/75)      \nlez    Lezghian (Lezgian)                       100% (67/67)       100% (67/67)       100% (67/67)      \nlg     Ganda                                    100% (54/54)       100% (54/54)       100% (54/54)      \nli     Limburgan/Limburger/Limburgish           100% (62/62)       100% (62/62)       100% (62/62)      \nln     Lingala                                  100% (81/81)       100% (81/81)       100% (81/81)      \nlo     Lao                                      100% (55/55)            (0/55)         83% (46/55)      \nlt     Lithuanian                               100% (70/70)       100% (70/70)       100% (70/70)      \nlv     Latvian                                  100% (78/78)       100% (78/78)       100% (78/78)      \nmai    Maithili (Devanagari script)                  (0/68)             (0/68)             (0/68)       \nmg     Malagasy                                 100% (56/56)       100% (56/56)       100% (56/56)      \nmh     Marshallese                              100% (62/62)       100% (62/62)       100% (62/62)      \nmi     Maori                                    100% (64/64)       100% (64/64)       100% (64/64)      \nmk     Macedonian                               100% (42/42)       100% (42/42)       100% (42/42)      \nml     Malayalam                                     (0/68)             (0/68)             (0/68)       \nmn-cn  Mongolian in China                            (0/130)            (0/130)            (0/130)      \nmn-mn  Mongolian in Mongolia                    100% (70/70)       100% (70/70)       100% (70/70)      \nmo     Moldavian                                100% (128/128)     100% (128/128)     100% (128/128)    \nmr     Marathi (Devanagari script)                   (0/68)             (0/68)             (0/68)       \nms     Malay                                    100% (52/52)       100% (52/52)       100% (52/52)      \nmt     Maltese                                  100% (72/72)       100% (72/72)       100% (72/72)      \nmy     Burmese (Myanmar)                             (0/48)             (0/48)             (0/48)       \nna     Nauru                                    100% (60/60)       100% (60/60)       100% (60/60)      \nnb     Norwegian Bokmal                         100% (70/70)       100% (70/70)       100% (70/70)      \nnds    Low Saxon                                100% (59/59)       100% (59/59)       100% (59/59)      \nne     Nepali (Devanagari script)                    (0/68)             (0/68)             (0/68)       \nng     Ndonga                                   100% (52/52)       100% (52/52)       100% (52/52)      \nnl     Dutch                                    100% (82/82)       100% (82/82)       100% (82/82)      \nnn     Norwegian Nynorsk                        100% (76/76)       100% (76/76)       100% (76/76)      \nno     Norwegian (Bokmal)                       100% (70/70)       100% (70/70)       100% (70/70)      \nnr     Ndebele, South                           100% (52/52)       100% (52/52)       100% (52/52)      \nnso    Northern Sotho                           100% (58/58)       100% (58/58)       100% (58/58)      \nnv     Navajo/Navaho                            100% (72/72)       100% (72/72)       100% (72/72)      \nny     Chichewa                                 100% (54/54)       100% (54/54)       100% (54/54)      \noc     Occitan                                  100% (70/70)       100% (70/70)       100% (70/70)      \nom     Oromo or Galla                           100% (52/52)       100% (52/52)       100% (52/52)      \nor     Oriya                                         (0/68)             (0/68)             (0/68)       \nos     Ossetic                                  100% (66/66)       100% (66/66)       100% (66/66)      \nota    Ottoman Turkish                           97% (36/37)            (0/37)         97% (36/37)      \npa     Panjabi/Punjabi                               (0/63)             (0/63)             (0/63)       \npa-pk  Panjabi/Punjabi in Pakistan               94% (137/145)          (0/145)        97% (141/145)    \npap-an Papiamento in Netherlands Antilles       100% (72/72)       100% (72/72)       100% (72/72)      \npap-aw Papiamento in Aruba                      100% (54/54)       100% (54/54)       100% (54/54)      \npl     Polish                                   100% (70/70)       100% (70/70)       100% (70/70)      \nps-af  Pashto in Afghanistan                     83% (41/49)            (0/49)         77% (38/49)      \nps-pk  Pashto in Pakistan                        81% (40/49)            (0/49)         75% (37/49)      \npt     Portuguese                               100% (82/82)       100% (82/82)       100% (82/82)      \nqu     Quechua                                  100% (55/55)       100% (55/55)       100% (55/55)      \nrm     Rhaeto-Romance (Romansch)                100% (66/66)       100% (66/66)       100% (66/66)      \nrn     Rundi                                    100% (52/52)       100% (52/52)       100% (52/52)      \nro     Romanian                                 100% (62/62)       100% (62/62)       100% (62/62)      \nru     Russian                                  100% (66/66)       100% (66/66)       100% (66/66)      \nrw     Kinyarwanda                              100% (52/52)       100% (52/52)       100% (52/52)      \nsa     Sanskrit (Devanagari script)                  (0/68)             (0/68)             (0/68)       \nsah    Yakut                                    100% (76/76)       100% (76/76)        97% (74/76)      \nsc     Sardinian                                100% (62/62)       100% (62/62)       100% (62/62)      \nsco    Scots                                    100% (56/56)       100% (56/56)       100% (56/56)      \nsd     Sindhi                                    81% (44/54)            (0/54)         79% (43/54)      \nse     North Sami                               100% (66/66)       100% (66/66)       100% (66/66)      \nsel    Selkup (Ostyak-Samoyed)                  100% (66/66)       100% (66/66)       100% (66/66)      \nsg     Sango                                    100% (72/72)       100% (72/72)       100% (72/72)      \nsh     Serbo-Croatian                           100% (156/156)     100% (156/156)      98% (154/156)    \nshs    Secwepemctsin                            100% (48/48)       100% (48/48)       100% (48/48)      \nsi     Sinhala/Sinhalese                             (0/73)             (0/73)             (0/73)       \nsid    Sidamo                                        (0/281)            (0/281)            (0/281)      \nsk     Slovak                                   100% (86/86)       100% (86/86)       100% (86/86)      \nsl     Slovenian                                100% (62/62)       100% (62/62)       100% (62/62)      \nsm     Samoan                                   100% (53/53)       100% (53/53)       100% (53/53)      \nsma    South Sami                               100% (60/60)       100% (60/60)       100% (60/60)      \nsmj    Lule Sami                                100% (60/60)       100% (60/60)       100% (60/60)      \nsmn    Inari Sami                               100% (68/68)       100% (68/68)       100% (68/68)      \nsms    Skolt Sami                               100% (80/80)       100% (80/80)        97% (78/80)      \nsn     Shona                                    100% (52/52)       100% (52/52)       100% (52/52)      \nso     Somali                                   100% (52/52)       100% (52/52)       100% (52/52)      \nsq     Albanian                                 100% (56/56)       100% (56/56)       100% (56/56)      \nsr     Serbian                                  100% (60/60)       100% (60/60)       100% (60/60)      \nss     Swati                                    100% (52/52)       100% (52/52)       100% (52/52)      \nst     Sotho, Southern                          100% (52/52)       100% (52/52)       100% (52/52)      \nsu     Sundanese                                100% (54/54)       100% (54/54)       100% (54/54)      \nsv     Swedish                                  100% (68/68)       100% (68/68)       100% (68/68)      \nsw     Swahili                                  100% (52/52)       100% (52/52)       100% (52/52)      \nsyr    Syriac                                        (0/45)             (0/45)             (0/45)       \nta     Tamil                                         (0/48)             (0/48)             (0/48)       \nte     Telugu                                        (0/70)             (0/70)             (0/70)       \ntg     Tajik                                    100% (78/78)       100% (78/78)        97% (76/78)      \nth     Thai                                       1% (1/74)             (0/74)             (0/74)       \nti-er  Eritrean Tigrinya                             (0/255)            (0/255)            (0/255)      \nti-et  Ethiopian Tigrinya                            (0/281)            (0/281)            (0/281)      \ntig    Tigre                                         (0/221)            (0/221)            (0/221)      \ntk     Turkmen                                  100% (68/68)       100% (68/68)       100% (68/68)      \ntl     Tagalog                                  100% (84/84)       100% (84/84)       100% (84/84)      \ntn     Tswana                                   100% (58/58)       100% (58/58)       100% (58/58)      \nto     Tonga                                    100% (53/53)       100% (53/53)       100% (53/53)      \ntr     Turkish                                  100% (70/70)       100% (70/70)       100% (70/70)      \nts     Tsonga                                   100% (52/52)       100% (52/52)       100% (52/52)      \ntt     Tatar                                    100% (76/76)       100% (76/76)       100% (76/76)      \ntw     Twi                                      100% (73/73)       100% (73/73)       100% (73/73)      \nty     Tahitian                                 100% (65/65)       100% (65/65)       100% (65/65)      \ntyv    Tuvinian                                 100% (70/70)       100% (70/70)       100% (70/70)      \nug     Uighur                                   100% (125/125)          (0/125)       100% (125/125)    \nuk     Ukrainian                                100% (72/72)       100% (72/72)       100% (72/72)      \nur     Urdu                                      94% (137/145)          (0/145)        97% (141/145)    \nuz     Uzbek                                    100% (52/52)       100% (52/52)       100% (52/52)      \nve     Venda                                    100% (62/62)       100% (62/62)       100% (62/62)      \nvi     Vietnamese                               100% (194/194)      77% (150/194)      76% (148/194)    \nvo     Volapuk                                  100% (54/54)       100% (54/54)       100% (54/54)      \nvot    Votic                                    100% (62/62)       100% (62/62)       100% (62/62)      \nwa     Walloon                                  100% (70/70)       100% (70/70)       100% (70/70)      \nwal    Wolaitta/Wolaytta                             (0/281)            (0/281)            (0/281)      \nwen    Sorbian languages (lower and upper)      100% (76/76)       100% (76/76)       100% (76/76)      \nwo     Wolof                                    100% (66/66)       100% (66/66)       100% (66/66)      \nxh     Xhosa                                    100% (52/52)       100% (52/52)       100% (52/52)      \nyap    Yapese                                   100% (58/58)       100% (58/58)       100% (58/58)      \nyi     Yiddish                                  100% (27/27)            (0/27)             (0/27)       \nyo     Yoruba                                   100% (119/119)     100% (119/119)     100% (119/119)    \nza     Zhuang/Chuang                            100% (52/52)       100% (52/52)       100% (52/52)      \nzh-cn  Chinese (simplified)                       0% (2/6765)        0% (2/6765)        0% (2/6765)     \nzh-hk  Chinese Hong Kong Supplementary Character Set      (0/2213)           (0/2213)           (0/2213)     \nzh-mo  Chinese in Macau                              (0/2213)           (0/2213)           (0/2213)     \nzh-sg  Chinese in Singapore                       0% (2/6765)        0% (2/6765)        0% (2/6765)     \nzh-tw  Chinese (traditional)                         (0/13063)          (0/13063)          (0/13063)    \nzu     Zulu                                     100% (52/52)       100% (52/52)       100% (52/52)      \n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavu-fonts-ttf-2.30/status.txt",
    "content": "This is the status file for DejaVu fonts\n($Id: status.txt 2362 2009-08-27 14:43:39Z ben_laenen $)\n\noriginal = present in original Bitstream Vera 1.10\n<version> = added in DejaVu fonts <version>\n\nU+0020 space                original\nU+0021 exclam               original\nU+0022 quotedbl             original\nU+0023 numbersign           original\nU+0024 dollar               original\nU+0025 percent              original\nU+0026 ampersand            original\nU+0027 quotesingle          original\nU+0028 parenleft            original\nU+0029 parenright           original\nU+002a asterisk             original\nU+002b plus                 original\nU+002c comma                original\nU+002d hyphen               original\nU+002e period               original\nU+002f slash                original\nU+0030 zero                 original\nU+0031 one                  original\nU+0032 two                  original\nU+0033 three                original\nU+0034 four                 original\nU+0035 five                 original\nU+0036 six                  original\nU+0037 seven                original\nU+0038 eight                original\nU+0039 nine                 original\nU+003a colon                original\nU+003b semicolon            original\nU+003c less                 original\nU+003d equal                original\nU+003e greater              original\nU+003f question             original\nU+0040 at                   original\nU+0041 A                    original\nU+0042 B                    original\nU+0043 C                    original\nU+0044 D                    original\nU+0045 E                    original\nU+0046 F                    original\nU+0047 G                    original\nU+0048 H                    original\nU+0049 I                    original\nU+004a J                    original\nU+004b K                    original\nU+004c L                    original\nU+004d M                    original\nU+004e N                    original\nU+004f O                    original\nU+0050 P                    original\nU+0051 Q                    original\nU+0052 R                    original\nU+0053 S                    original\nU+0054 T                    original\nU+0055 U                    original\nU+0056 V                    original\nU+0057 W                    original\nU+0058 X                    original\nU+0059 Y                    original\nU+005a Z                    original\nU+005b bracketleft          original\nU+005c backslash            original\nU+005d bracketright         original\nU+005e asciicircum          original\nU+005f underscore           original\nU+0060 grave                original\nU+0061 a                    original\nU+0062 b                    original\nU+0063 c                    original\nU+0064 d                    original\nU+0065 e                    original\nU+0066 f                    original\nU+0067 g                    original\nU+0068 h                    original\nU+0069 i                    original\nU+006a j                    original\nU+006b k                    original\nU+006c l                    original\nU+006d m                    original\nU+006e n                    original\nU+006f o                    original\nU+0070 p                    original\nU+0071 q                    original\nU+0072 r                    original\nU+0073 s                    original\nU+0074 t                    original\nU+0075 u                    original\nU+0076 v                    original\nU+0077 w                    original\nU+0078 x                    original\nU+0079 y                    original\nU+007a z                    original\nU+007b braceleft            original\nU+007c bar                  original\nU+007d braceright           original\nU+007e asciitilde           original\nU+00a0 nonbreakingspace     original\nU+00a1 exclamdown           original\nU+00a2 cent                 original\nU+00a3 sterling             original\nU+00a4 currency             original\nU+00a5 yen                  original\nU+00a6 brokenbar            original\nU+00a7 section              original\nU+00a8 dieresis             original\nU+00a9 copyright            original\nU+00aa ordfeminine          original\nU+00ab guillemotleft        original\nU+00ac logicalnot           original\nU+00ad sfthyphen            original\nU+00ae registered           original\nU+00af macron               original\nU+00b0 degree               original\nU+00b1 plusminus            original\nU+00b2 twosuperior          original\nU+00b3 threesuperior        original\nU+00b4 acute                original\nU+00b5 mu                   original\nU+00b6 paragraph            original\nU+00b7 periodcentered       original\nU+00b8 cedilla              original\nU+00b9 onesuperior          original\nU+00ba ordmasculine         original\nU+00bb guillemotright       original\nU+00bc onequarter           original\nU+00bd onehalf              original\nU+00be threequarters        original\nU+00bf questiondown         original\nU+00c0 Agrave               original\nU+00c1 Aacute               original\nU+00c2 Acircumflex          original\nU+00c3 Atilde               original\nU+00c4 Adieresis            original\nU+00c5 Aring                original\nU+00c6 AE                   original\nU+00c7 Ccedilla             original\nU+00c8 Egrave               original\nU+00c9 Eacute               original\nU+00ca Ecircumflex          original\nU+00cb Edieresis            original\nU+00cc Igrave               original\nU+00cd Iacute               original\nU+00ce Icircumflex          original\nU+00cf Idieresis            original\nU+00d0 Eth                  original\nU+00d1 Ntilde               original\nU+00d2 Ograve               original\nU+00d3 Oacute               original\nU+00d4 Ocircumflex          original\nU+00d5 Otilde               original\nU+00d6 Odieresis            original\nU+00d7 multiply             original\nU+00d8 Oslash               original\nU+00d9 Ugrave               original\nU+00da Uacute               original\nU+00db Ucircumflex          original\nU+00dc Udieresis            original\nU+00dd Yacute               original\nU+00de Thorn                original\nU+00df germandbls           original\nU+00e0 agrave               original\nU+00e1 aacute               original\nU+00e2 acircumflex          original\nU+00e3 atilde               original\nU+00e4 adieresis            original\nU+00e5 aring                original\nU+00e6 ae                   original\nU+00e7 ccedilla             original\nU+00e8 egrave               original\nU+00e9 eacute               original\nU+00ea ecircumflex          original\nU+00eb edieresis            original\nU+00ec igrave               original\nU+00ed iacute               original\nU+00ee icircumflex          original\nU+00ef idieresis            original\nU+00f0 eth                  original\nU+00f1 ntilde               original\nU+00f2 ograve               original\nU+00f3 oacute               original\nU+00f4 ocircumflex          original\nU+00f5 otilde               original\nU+00f6 odieresis            original\nU+00f7 divide               original\nU+00f8 oslash               original\nU+00f9 ugrave               original\nU+00fa uacute               original\nU+00fb ucircumflex          original\nU+00fc udieresis            original\nU+00fd yacute               original\nU+00fe thorn                original\nU+00ff ydieresis            original\nU+0100 Amacron              1.5\nU+0101 amacron              1.5\nU+0102 Abreve               1.5\nU+0103 abreve               1.5\nU+0104 Aogonek              1.4\nU+0105 aogonek              1.4\nU+0106 Cacute               original\nU+0107 cacute               original\nU+0108 Ccircumflex          1.5\nU+0109 ccircumflex          1.5\nU+010a Cdotaccent           1.5\nU+010b cdotaccent           1.5\nU+010c Ccaron               original\nU+010d ccaron               original\nU+010e Dcaron               1.0\nU+010f dcaron               1.0\nU+0110 Dcroat               1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0111 dcroat               original\nU+0112 Emacron              1.5\nU+0113 emacron              1.5\nU+0114 Ebreve               1.5\nU+0115 ebreve               1.5\nU+0116 Edotaccent           1.5\nU+0117 edotaccent           1.5\nU+0118 Eogonek              1.4\nU+0119 eogonek              1.4\nU+011a Ecaron               1.0\nU+011b ecaron               1.0\nU+011c Gcircumflex          1.5\nU+011d gcircumflex          1.5\nU+011e Gbreve               original\nU+011f gbreve               original\nU+0120 Gdotaccent           1.5\nU+0121 gdotaccent           1.5\nU+0122 Gcommaaccent         1.11\nU+0123 gcommaaccent         1.11\nU+0124 Hcircumflex          1.5\nU+0125 hcircumflex          1.5\nU+0126 Hbar                 1.12\nU+0127 hbar                 1.12\nU+0128 Itilde               1.5\nU+0129 itilde               1.5\nU+012a Imacron              1.5\nU+012b imacron              1.5\nU+012c Ibreve               1.5\nU+012d ibreve               1.5\nU+012e Iogonek              1.11\nU+012f iogonek              1.11\nU+0130 Idotaccent           original\nU+0131 dotlessi             original\nU+0132 IJ                   1.11\nU+0133 ij                   1.11\nU+0134 Jcircumflex          1.5\nU+0135 jcircumflex          1.5\nU+0136 Kcommaaccent         1.11\nU+0137 kcommaaccent         1.11\nU+0138 kgreenlandic         1.12\nU+0139 Lacute               1.1\nU+013a lacute               1.1\nU+013b Lcommaaccent         1.11\nU+013c lcommaaccent         1.11\nU+013d Lcaron               1.1\nU+013e lcaron               1.1\nU+013f Ldot                 1.2\nU+0140 ldot                 1.2\nU+0141 Lslash               original\nU+0142 lslash               original\nU+0143 Nacute               1.4\nU+0144 nacute               1.4\nU+0145 Ncommaaccent         1.11\nU+0146 ncommaaccent         1.11\nU+0147 Ncaron               1.0\nU+0148 ncaron               1.0\nU+0149 napostrophe          1.12\nU+014a Eng                  1.12\nU+014b eng                  1.12\nU+014c Omacron              1.5\nU+014d omacron              1.5\nU+014e Obreve               1.5\nU+014f obreve               1.5\nU+0150 Ohungarumlaut        1.5\nU+0151 ohungarumlaut        1.5\nU+0152 OE                   original\nU+0153 oe                   original\nU+0154 Racute               1.1\nU+0155 racute               1.1\nU+0156 Rcommaaccent         1.11\nU+0157 rcommaaccent         1.11\nU+0158 Rcaron               1.0\nU+0159 rcaron               1.0\nU+015a Sacute               1.4\nU+015b sacute               1.4\nU+015c Scircumflex          1.5\nU+015d scircumflex          1.5\nU+015e Scedilla             original\nU+015f scedilla             original\nU+0160 Scaron               original\nU+0161 scaron               original\nU+0162 Tcommaaccent         1.5\nU+0163 tcommaaccent         1.5\nU+0164 Tcaron               1.0\nU+0165 tcaron               1.0\nU+0166 Tbar                 1.12\nU+0167 tbar                 1.12\nU+0168 Utilde               1.5\nU+0169 utilde               1.5\nU+016a Umacron              1.5\nU+016b umacron              1.5\nU+016c Ubreve               1.5\nU+016d ubreve               1.5\nU+016e Uring                1.0\nU+016f uring                1.0\nU+0170 Uhungarumlaut        1.5\nU+0171 uhungarumlaut        1.5\nU+0172 Uogonek              1.11\nU+0173 uogonek              1.11\nU+0174 Wcircumflex          1.2\nU+0175 wcircumflex          1.2\nU+0176 Ycircumflex          1.2\nU+0177 ycircumflex          1.2\nU+0178 Ydieresis            original\nU+0179 Zacute               1.4\nU+017a zacute               1.4\nU+017b Zdotaccent           1.4\nU+017c zdotaccent           1.4\nU+017d Zcaron               original\nU+017e zcaron               original\nU+017f longs                1.12\nU+0180 uni0180              2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.12 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0181 uni0181              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0182 uni0182              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0183 uni0183              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0184 uni0184              2.3\nU+0185 uni0185              2.3\nU+0186 uni0186              1.15\nU+0187 uni0187              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0188 uni0188              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0189 uni0189              2.1\nU+018a uni018A              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+018b uni018B              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+018c uni018C              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+018d uni018D              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+018e uni018E              2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+018f uni018F              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0190 uni0190              1.15\nU+0191 uni0191              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0192 florin               original\nU+0193 uni0193              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0194 uni0194              1.14\nU+0195 uni0195              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.6 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0196 uni0196              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0197 uni0197              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0198 uni0198              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0199 uni0199              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+019a uni019A              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+019b uni019B              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+019c uni019C              2.3\nU+019d uni019D              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+019e uni019E              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+019f uni019F              2.3\nU+01a0 Ohorn                2.3\nU+01a1 ohorn                2.3\nU+01a2 uni01A2              2.3\nU+01a3 uni01A3              2.3\nU+01a4 uni01A4              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+01a5 uni01A5              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+01a6 uni01A6              2.3\nU+01a7 uni01A7              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+01a8 uni01A8              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+01a9 uni01A9              2.2\nU+01aa uni01AA              2.3\nU+01ab uni01AB              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+01ac uni01AC              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+01ad uni01AD              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+01ae uni01AE              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+01af Uhorn                2.3\nU+01b0 uhorn                2.3\nU+01b1 uni01B1              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+01b2 uni01B2              2.3\nU+01b3 uni01B3              2.3\nU+01b4 uni01B4              2.3\nU+01b5 uni01B5              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+01b6 uni01B6              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+01b7 uni01B7              2.3\nU+01b8 uni01B8              2.3\nU+01b9 uni01B9              2.3\nU+01ba uni01BA              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+01bb uni01BB              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+01bc uni01BC              2.3\nU+01bd uni01BD              2.3\nU+01be uni01BE              2.3\nU+01bf uni01BF              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+01c0 uni01C0              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+01c1 uni01C1              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+01c2 uni01C2              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+01c3 uni01C3              2.2\nU+01c4 uni01C4              1.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+01c5 uni01C5              1.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+01c6 uni01C6              1.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+01c7 uni01C7              1.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+01c8 uni01C8              1.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+01c9 uni01C9              1.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+01ca uni01CA              1.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+01cb uni01CB              1.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+01cc uni01CC              1.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+01cd uni01CD              1.15\nU+01ce uni01CE              1.15\nU+01cf uni01CF              1.15\nU+01d0 uni01D0              1.15\nU+01d1 uni01D1              1.15\nU+01d2 uni01D2              1.15\nU+01d3 uni01D3              1.15\nU+01d4 uni01D4              1.15\nU+01d5 uni01D5              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+01d6 uni01D6              1.13\nU+01d7 uni01D7              2.3\nU+01d8 uni01D8              2.3\nU+01d9 uni01D9              2.3\nU+01da uni01DA              2.3\nU+01db uni01DB              2.3\nU+01dc uni01DC              2.3\nU+01dd uni01DD              2.2\nU+01de uni01DE              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique) 2.23 (Serif Italic Condensed)\nU+01df uni01DF              1.13\nU+01e0 uni01E0              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+01e1 uni01E1              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+01e2 uni01E2              1.5\nU+01e3 uni01E3              1.5\nU+01e4 uni01E4              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight)\nU+01e5 uni01E5              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight)\nU+01e6 Gcaron               2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+01e7 gcaron               2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+01e8 uni01E8              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+01e9 uni01E9              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+01ea uni01EA              1.9\nU+01eb uni01EB              1.9\nU+01ec uni01EC              1.9\nU+01ed uni01ED              1.9\nU+01ee uni01EE              2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+01ef uni01EF              2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+01f0 uni01F0              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono) 2.22 (Sans Mono Bold) 2.23 (Serif Italic Condensed)\nU+01f1 uni01F1              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+01f2 uni01F2              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+01f3 uni01F3              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+01f4 uni01F4              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+01f5 uni01F5              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+01f6 uni01F6              2.3\nU+01f7 uni01F7              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+01f8 uni01F8              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+01f9 uni01F9              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+01fa Aringacute           2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+01fb aringacute           2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+01fc AEacute              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+01fd aeacute              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+01fe Oslashacute          2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+01ff oslashacute          2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0200 uni0200              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0201 uni0201              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0202 uni0202              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0203 uni0203              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0204 uni0204              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0205 uni0205              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0206 uni0206              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0207 uni0207              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0208 uni0208              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0209 uni0209              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+020a uni020A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+020b uni020B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+020c uni020C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+020d uni020D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+020e uni020E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+020f uni020F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0210 uni0210              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0211 uni0211              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0212 uni0212              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0213 uni0213              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0214 uni0214              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0215 uni0215              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0216 uni0216              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0217 uni0217              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0218 Scommaaccent         1.5\nU+0219 scommaaccent         1.5\nU+021a uni021A              1.5\nU+021b uni021B              1.5\nU+021c uni021C              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+021d uni021D              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+021e uni021E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+021f uni021F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0220 uni0220              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.16 (Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.17 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.18 (Sans Mono, Sans Mono Bold) 2.23 (Serif Italic Condensed)\nU+0221 uni0221              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+0222 uni0222              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0223 uni0223              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0224 uni0224              2.3\nU+0225 uni0225              2.3\nU+0226 uni0226              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0227 uni0227              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0228 uni0228              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0229 uni0229              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+022a uni022A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+022b uni022B              1.13\nU+022c uni022C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+022d uni022D              1.13\nU+022e uni022E              1.10\nU+022f uni022F              1.10\nU+0230 uni0230              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0231 uni0231              1.13\nU+0232 uni0232              1.5\nU+0233 uni0233              1.5\nU+0234 uni0234              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+0235 uni0235              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+0236 uni0236              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+0237 dotlessj             1.5\nU+0238 uni0238              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0239 uni0239              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+023a uni023A              2.3\nU+023b uni023B              2.3\nU+023c uni023C              2.3\nU+023d uni023D              2.3\nU+023e uni023E              2.3\nU+023f uni023F              2.3\nU+0240 uni0240              2.3\nU+0241 uni0241              2.3\nU+0242 uni0242              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+0243 uni0243              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0244 uni0244              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.27 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0245 uni0245              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0246 uni0246              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0247 uni0247              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0248 uni0248              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight)\nU+0249 uni0249              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight)\nU+024a uni024A              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+024b uni024B              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.26 (Sans ExtraLight)\nU+024c uni024C              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) 2.27 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+024d uni024D              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) 2.27 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+024e uni024E              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+024f uni024F              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+0250 uni0250              1.14\nU+0251 uni0251              1.14\nU+0252 uni0252              1.14\nU+0253 uni0253              1.14\nU+0254 uni0254              1.14\nU+0255 uni0255              1.14\nU+0256 uni0256              1.14\nU+0257 uni0257              1.14\nU+0258 uni0258              1.14\nU+0259 uni0259              1.14\nU+025a uni025A              1.14\nU+025b uni025B              1.14\nU+025c uni025C              1.14\nU+025d uni025D              1.14\nU+025e uni025E              1.14\nU+025f uni025F              1.14\nU+0260 uni0260              1.14\nU+0261 uni0261              1.14\nU+0262 uni0262              1.14\nU+0263 uni0263              1.14\nU+0264 uni0264              1.14\nU+0265 uni0265              1.14\nU+0266 uni0266              1.14\nU+0267 uni0267              1.14\nU+0268 uni0268              1.14\nU+0269 uni0269              1.14\nU+026a uni026A              1.14\nU+026b uni026B              1.14\nU+026c uni026C              1.14\nU+026d uni026D              1.14\nU+026e uni026E              1.14\nU+026f uni026F              1.14\nU+0270 uni0270              1.14\nU+0271 uni0271              1.14\nU+0272 uni0272              1.14\nU+0273 uni0273              1.14\nU+0274 uni0274              1.14\nU+0275 uni0275              1.14\nU+0276 uni0276              1.14\nU+0277 uni0277              1.14\nU+0278 uni0278              1.14\nU+0279 uni0279              1.14\nU+027a uni027A              1.14\nU+027b uni027B              1.14\nU+027c uni027C              1.14\nU+027d uni027D              1.14\nU+027e uni027E              1.14\nU+027f uni027F              1.14\nU+0280 uni0280              1.14\nU+0281 uni0281              1.14\nU+0282 uni0282              1.14\nU+0283 uni0283              1.14\nU+0284 uni0284              1.14\nU+0285 uni0285              1.14\nU+0286 uni0286              1.14\nU+0287 uni0287              1.14\nU+0288 uni0288              1.14\nU+0289 uni0289              1.14\nU+028a uni028A              1.14\nU+028b uni028B              1.14\nU+028c uni028C              1.14\nU+028d uni028D              1.14\nU+028e uni028E              1.14\nU+028f uni028F              1.14\nU+0290 uni0290              1.14\nU+0291 uni0291              1.14\nU+0292 uni0292              1.14\nU+0293 uni0293              1.14\nU+0294 uni0294              1.14\nU+0295 uni0295              1.14\nU+0296 uni0296              1.14\nU+0297 uni0297              1.14\nU+0298 uni0298              1.14\nU+0299 uni0299              1.14\nU+029a uni029A              1.14\nU+029b uni029B              1.14\nU+029c uni029C              1.14\nU+029d uni029D              1.14\nU+029e uni029E              1.14\nU+029f uni029F              1.14\nU+02a0 uni02A0              1.14\nU+02a1 uni02A1              1.14\nU+02a2 uni02A2              1.14\nU+02a3 uni02A3              1.14\nU+02a4 uni02A4              1.14\nU+02a5 uni02A5              1.14\nU+02a6 uni02A6              1.14\nU+02a7 uni02A7              1.14\nU+02a8 uni02A8              1.14\nU+02a9 uni02A9              1.14\nU+02aa uni02AA              1.14\nU+02ab uni02AB              1.14\nU+02ac uni02AC              1.14\nU+02ad uni02AD              1.14\nU+02ae uni02AE              1.14\nU+02af uni02AF              1.14\nU+02b0 uni02B0              1.14\nU+02b1 uni02B1              1.14\nU+02b2 uni02B2              1.14\nU+02b3 uni02B3              1.14\nU+02b4 uni02B4              1.14\nU+02b5 uni02B5              1.14\nU+02b6 uni02B6              1.14\nU+02b7 uni02B7              1.14\nU+02b8 uni02B8              1.14\nU+02b9 uni02B9              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+02ba uni02BA              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+02bb uni02BB              1.5\nU+02bc uni02BC              1.12\nU+02bd uni02BD              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+02be uni02BE              2.2\nU+02bf uni02BF              2.2\nU+02c0 uni02C0              1.14\nU+02c1 uni02C1              1.14\nU+02c2 uni02C2              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+02c3 uni02C3              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+02c4 uni02C4              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+02c5 uni02C5              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+02c6 circumflex           original\nU+02c7 caron                original\nU+02c8 uni02C8              2.0\nU+02c9 uni02C9              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+02ca uni02CA              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+02cb uni02CB              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+02cc uni02CC              2.0\nU+02cd uni02CD              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+02ce uni02CE              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+02cf uni02CF              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+02d0 uni02D0              1.14\nU+02d1 uni02D1              1.14\nU+02d2 uni02D2              2.0\nU+02d3 uni02D3              2.2\nU+02d4 uni02D4              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+02d5 uni02D5              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+02d6 uni02D6              2.0\nU+02d7 uni02D7              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+02d8 breve                original\nU+02d9 dotaccent            original\nU+02da ring                 original\nU+02db ogonek               original\nU+02dc tilde                original\nU+02dd hungarumlaut         original\nU+02de uni02DE              2.0\nU+02df uni02DF              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+02e0 uni02E0              1.14\nU+02e1 uni02E1              1.14\nU+02e2 uni02E2              1.14\nU+02e3 uni02E3              1.14\nU+02e4 uni02E4              1.14\nU+02e5 uni02E5              2.0\nU+02e6 uni02E6              2.0\nU+02e7 uni02E7              2.0\nU+02e8 uni02E8              2.0\nU+02e9 uni02E9              2.0\nU+02ec uni02EC              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+02ed uni02ED              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+02ee uni02EE              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+02f3 uni02F3              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+02f7 uni02F7              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+0300 gravecomb            1.15\nU+0301 acutecomb            1.15\nU+0302 uni0302              1.15\nU+0303 tildecomb            1.15\nU+0304 uni0304              1.15\nU+0305 uni0305              2.0\nU+0306 uni0306              1.15\nU+0307 uni0307              1.15\nU+0308 uni0308              1.15\nU+0309 hookabovecomb        2.1\nU+030a uni030A              1.15\nU+030b uni030B              1.15\nU+030c uni030C              1.15\nU+030d uni030D              2.0\nU+030e uni030E              2.0\nU+030f uni030F              2.0\nU+0310 uni0310              2.0\nU+0311 uni0311              2.0\nU+0312 uni0312              1.11\nU+0313 uni0313              2.1\nU+0314 uni0314              2.1\nU+0315 uni0315              2.0\nU+0316 uni0316              2.0\nU+0317 uni0317              2.0\nU+0318 uni0318              2.0\nU+0319 uni0319              2.0\nU+031a uni031A              2.1\nU+031b uni031B              2.1\nU+031c uni031C              2.0\nU+031d uni031D              2.0\nU+031e uni031E              2.0\nU+031f uni031F              2.0\nU+0320 uni0320              2.0\nU+0321 uni0321              1.15\nU+0322 uni0322              1.15\nU+0323 dotbelowcomb         2.1\nU+0324 uni0324              2.0\nU+0325 uni0325              2.0\nU+0326 uni0326              1.5\nU+0327 uni0327              2.1\nU+0328 uni0328              2.1\nU+0329 uni0329              2.0\nU+032a uni032A              2.0\nU+032b uni032B              2.1\nU+032c uni032C              2.0\nU+032d uni032D              2.0\nU+032e uni032E              2.0\nU+032f uni032F              2.0\nU+0330 uni0330              2.0\nU+0331 uni0331              2.0\nU+0332 uni0332              2.0\nU+0333 uni0333              2.1\nU+0334 uni0334              2.3\nU+0335 uni0335              2.3\nU+0336 uni0336              2.3\nU+0337 uni0337              2.3\nU+0338 uni0338              2.3\nU+0339 uni0339              2.0\nU+033a uni033A              2.0\nU+033b uni033B              2.0\nU+033c uni033C              2.1\nU+033d uni033D              2.0\nU+033e uni033E              2.1\nU+033f uni033F              2.1\nU+0340 uni0340              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0341 uni0341              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0342 uni0342              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0343 uni0343              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+0344 uni0344              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0345 uni0345              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0346 uni0346              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0347 uni0347              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0348 uni0348              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0349 uni0349              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+034a uni034A              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+034b uni034B              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+034c uni034C              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+034d uni034D              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+034e uni034E              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+034f uni034F              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+0351 uni0351              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0352 uni0352              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique) 2.28 (Sans Condensed Oblique, Sans Oblique)\nU+0353 uni0353              2.5 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0357 uni0357              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0358 uni0358              2.3\nU+035a uni035A              2.28 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+035c uni035C              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+035d uni035D              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+035e uni035E              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+035f uni035F              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0360 uni0360              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0361 uni0361              2.0\nU+0362 uni0362              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0370 uni0370              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+0371 uni0371              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+0372 uni0372              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+0373 uni0373              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+0374 uni0374              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0375 uni0375              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0376 uni0376              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+0377 uni0377              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+037a uni037A              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+037b uni037B              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+037c uni037C              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans ExtraLight, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+037d uni037D              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans ExtraLight, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+037e uni037E              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0384 tonos                1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0385 dieresistonos        1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0386 Alphatonos           1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0387 anoteleia            1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0388 Epsilontonos         1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0389 Etatonos             1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+038a Iotatonos            1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+038c Omicrontonos         1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+038e Upsilontonos         1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+038f Omegatonos           1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0390 iotadieresistonos    1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0391 Alpha                1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0392 Beta                 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0393 Gamma                1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0394 uni0394              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0395 Epsilon              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0396 Zeta                 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0397 Eta                  1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0398 Theta                1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0399 Iota                 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+039a Kappa                1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+039b Lambda               1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+039c Mu                   1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+039d Nu                   1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+039e Xi                   1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+039f Omicron              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03a0 Pi                   1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03a1 Rho                  1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03a3 Sigma                1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03a4 Tau                  1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03a5 Upsilon              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03a6 Phi                  1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03a7 Chi                  1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03a8 Psi                  1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03a9 Omega                original\nU+03aa Iotadieresis         1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03ab Upsilondieresis      1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.1 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03ac alphatonos           1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03ad epsilontonos         1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03ae etatonos             1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03af iotatonos            1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03b0 upsilondieresistonos 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03b1 alpha                1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03b2 beta                 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03b3 gamma                1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03b4 delta                1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03b5 epsilon              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03b6 zeta                 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03b7 eta                  1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03b8 theta                1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03b9 iota                 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03ba kappa                1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03bb lambda               1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03bc uni03BC              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03bd nu                   1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03be xi                   1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03bf omicron              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03c0 pi                   original\nU+03c1 rho                  1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03c2 sigma1               1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03c3 sigma                1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03c4 tau                  1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03c5 upsilon              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03c6 phi                  1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03c7 chi                  1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03c8 psi                  1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03c9 omega                1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03ca iotadieresis         1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03cb upsilondieresis      1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03cc omicrontonos         1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03cd upsilontonos         1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03ce omegatonos           1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 1.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.2 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03cf uni03CF              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+03d0 uni03D0              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+03d1 theta1               1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+03d2 Upsilon1             1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+03d3 uni03D3              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+03d4 uni03D4              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+03d5 phi1                 1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.18 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03d6 omega1               1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight)\nU+03d7 uni03D7              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+03d8 uni03D8              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight)\nU+03d9 uni03D9              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight)\nU+03da uni03DA              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+03db uni03DB              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+03dc uni03DC              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03dd uni03DD              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+03de uni03DE              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+03df uni03DF              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+03e0 uni03E0              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+03e1 uni03E1              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+03e2 uni03E2              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+03e3 uni03E3              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+03e4 uni03E4              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+03e5 uni03E5              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+03e6 uni03E6              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+03e7 uni03E7              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+03e8 uni03E8              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+03e9 uni03E9              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+03ea uni03EA              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+03eb uni03EB              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+03ec uni03EC              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+03ed uni03ED              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+03ee uni03EE              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+03ef uni03EF              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+03f0 uni03F0              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+03f1 uni03F1              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight)\nU+03f2 uni03F2              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03f3 uni03F3              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03f4 uni03F4              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03f5 uni03F5              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03f6 uni03F6              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03f7 uni03F7              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03f8 uni03F8              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03f9 uni03F9              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03fa uni03FA              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+03fb uni03FB              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+03fc uni03FC              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight)\nU+03fd uni03FD              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03fe uni03FE              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+03ff uni03FF              1.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.0 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0400 uni0400              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0401 uni0401              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0402 uni0402              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0403 uni0403              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0404 uni0404              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0405 uni0405              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0406 uni0406              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0407 uni0407              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0408 uni0408              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0409 uni0409              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+040a uni040A              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+040b uni040B              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+040c uni040C              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+040d uni040D              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+040e uni040E              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+040f uni040F              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0410 uni0410              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0411 uni0411              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0412 uni0412              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0413 uni0413              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0414 uni0414              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0415 uni0415              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0416 uni0416              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0417 uni0417              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0418 uni0418              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0419 uni0419              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+041a uni041A              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+041b uni041B              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+041c uni041C              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+041d uni041D              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+041e uni041E              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+041f uni041F              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0420 uni0420              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0421 uni0421              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0422 uni0422              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0423 uni0423              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0424 uni0424              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0425 uni0425              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0426 uni0426              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0427 uni0427              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0428 uni0428              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0429 uni0429              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+042a uni042A              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+042b uni042B              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+042c uni042C              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+042d uni042D              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+042e uni042E              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+042f uni042F              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0430 uni0430              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0431 uni0431              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0432 uni0432              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0433 uni0433              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0434 uni0434              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0435 uni0435              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0436 uni0436              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0437 uni0437              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0438 uni0438              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0439 uni0439              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+043a uni043A              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+043b uni043B              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+043c uni043C              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+043d uni043D              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+043e uni043E              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+043f uni043F              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0440 uni0440              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0441 uni0441              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0442 uni0442              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0443 uni0443              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0444 uni0444              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0445 uni0445              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0446 uni0446              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0447 uni0447              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0448 uni0448              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0449 uni0449              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+044a uni044A              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+044b uni044B              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+044c uni044C              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+044d uni044D              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+044e uni044E              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+044f uni044F              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0450 uni0450              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0451 uni0451              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0452 uni0452              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0453 uni0453              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0454 uni0454              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0455 uni0455              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0456 uni0456              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0457 uni0457              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0458 uni0458              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0459 uni0459              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+045a uni045A              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+045b uni045B              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+045c uni045C              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+045d uni045D              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+045e uni045E              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+045f uni045F              1.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 1.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold) 1.6 (Serif Bold Italic, Serif Italic) 1.7 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+0460 uni0460              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0461 uni0461              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight)\nU+0462 uni0462              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.20 (Sans ExtraLight) 2.23 (Serif Italic Condensed) 2.30 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0463 uni0463              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.20 (Sans ExtraLight) 2.23 (Serif Italic Condensed) 2.30 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0464 uni0464              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+0465 uni0465              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+0466 uni0466              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0467 uni0467              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0468 uni0468              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0469 uni0469              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+046a uni046A              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.21 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+046b uni046B              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.21 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+046c uni046C              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+046d uni046D              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+046e uni046E              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+046f uni046F              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0470 uni0470              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+0471 uni0471              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+0472 uni0472              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans ExtraLight) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0473 uni0473              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0474 uni0474              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.12 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+0475 uni0475              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.12 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+0476 uni0476              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0477 uni0477              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0478 uni0478              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0479 uni0479              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+047a uni047A              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+047b uni047B              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+047c uni047C              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+047d uni047D              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+047e uni047E              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+047f uni047F              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0480 uni0480              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0481 uni0481              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0482 uni0482              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0483 uni0483              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0484 uni0484              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0485 uni0485              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0486 uni0486              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0487 uni0487              2.9 (Sans, Sans Condensed) 2.27 (Sans Bold, Sans Bold Oblique, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0488 uni0488              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0489 uni0489              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+048a uni048A              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+048b uni048B              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+048c uni048C              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+048d uni048D              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+048e uni048E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+048f uni048F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0490 uni0490              1.15\nU+0491 uni0491              1.15\nU+0492 uni0492              1.14\nU+0493 uni0493              1.14\nU+0494 uni0494              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0495 uni0495              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+0496 uni0496              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0497 uni0497              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.15 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0498 uni0498              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+0499 uni0499              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+049a uni049A              1.14\nU+049b uni049B              1.14\nU+049c uni049C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+049d uni049D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+049e uni049E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+049f uni049F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04a0 uni04A0              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight)\nU+04a1 uni04A1              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight)\nU+04a2 uni04A2              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04a3 uni04A3              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04a4 uni04A4              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04a5 uni04A5              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04a6 uni04A6              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04a7 uni04A7              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04a8 uni04A8              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+04a9 uni04A9              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+04aa uni04AA              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04ab uni04AB              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04ac uni04AC              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04ad uni04AD              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04ae uni04AE              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04af uni04AF              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04b0 uni04B0              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+04b1 uni04B1              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+04b2 uni04B2              1.14\nU+04b3 uni04B3              1.14\nU+04b4 uni04B4              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04b5 uni04B5              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04b6 uni04B6              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04b7 uni04B7              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04b8 uni04B8              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+04b9 uni04B9              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+04ba uni04BA              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04bb uni04BB              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04bc uni04BC              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+04bd uni04BD              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+04be uni04BE              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+04bf uni04BF              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+04c0 uni04C0              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04c1 uni04C1              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04c2 uni04C2              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04c3 uni04C3              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+04c4 uni04C4              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+04c5 uni04C5              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+04c6 uni04C6              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+04c7 uni04C7              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight)\nU+04c8 uni04C8              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight)\nU+04c9 uni04C9              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+04ca uni04CA              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+04cb uni04CB              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04cc uni04CC              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04cd uni04CD              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+04ce uni04CE              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+04cf uni04CF              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04d0 uni04D0              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04d1 uni04D1              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04d2 uni04D2              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04d3 uni04D3              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04d4 uni04D4              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04d5 uni04D5              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04d6 uni04D6              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04d7 uni04D7              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04d8 uni04D8              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04d9 uni04D9              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04da uni04DA              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04db uni04DB              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04dc uni04DC              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04dd uni04DD              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04de uni04DE              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04df uni04DF              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04e0 uni04E0              2.3\nU+04e1 uni04E1              2.3\nU+04e2 uni04E2              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04e3 uni04E3              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04e4 uni04E4              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04e5 uni04E5              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04e6 uni04E6              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04e7 uni04E7              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04e8 uni04E8              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+04e9 uni04E9              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+04ea uni04EA              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+04eb uni04EB              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+04ec uni04EC              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04ed uni04ED              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04ee uni04EE              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04ef uni04EF              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04f0 uni04F0              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04f1 uni04F1              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04f2 uni04F2              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04f3 uni04F3              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04f4 uni04F4              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04f5 uni04F5              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04f6 uni04F6              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04f7 uni04F7              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04f8 uni04F8              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+04f9 uni04F9              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+04fa uni04FA              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+04fb uni04FB              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+04fc uni04FC              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+04fd uni04FD              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+04fe uni04FE              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight)\nU+04ff uni04FF              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight)\nU+0500 uni0500              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight)\nU+0501 uni0501              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight)\nU+0502 uni0502              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0503 uni0503              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0504 uni0504              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0505 uni0505              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0506 uni0506              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0507 uni0507              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0508 uni0508              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0509 uni0509              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+050a uni050A              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+050b uni050B              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+050c uni050C              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+050d uni050D              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+050e uni050E              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+050f uni050F              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0510 uni0510              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+0511 uni0511              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+0512 uni0512              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+0513 uni0513              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+0514 uni0514              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+0515 uni0515              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+0516 uni0516              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0517 uni0517              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0518 uni0518              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0519 uni0519              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+051a uni051A              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+051b uni051B              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+051c uni051C              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+051d uni051D              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+0520 uni0520              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0521 uni0521              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0522 uni0522              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0523 uni0523              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0524 uni0524              2.29 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0525 uni0525              2.29 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0531 uni0531              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0532 uni0532              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0533 uni0533              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0534 uni0534              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0535 uni0535              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0536 uni0536              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0537 uni0537              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0538 uni0538              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0539 uni0539              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+053a uni053A              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+053b uni053B              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+053c uni053C              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+053d uni053D              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+053e uni053E              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+053f uni053F              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0540 uni0540              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0541 uni0541              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0542 uni0542              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0543 uni0543              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0544 uni0544              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0545 uni0545              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0546 uni0546              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0547 uni0547              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0548 uni0548              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+0549 uni0549              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+054a uni054A              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+054b uni054B              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+054c uni054C              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+054d uni054D              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight)\nU+054e uni054E              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+054f uni054F              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight)\nU+0550 uni0550              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight)\nU+0551 uni0551              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0552 uni0552              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0553 uni0553              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+0554 uni0554              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0555 uni0555              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight)\nU+0556 uni0556              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0559 uni0559              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+055a uni055A              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight)\nU+055b uni055B              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+055c uni055C              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+055d uni055D              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight)\nU+055e uni055E              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+055f uni055F              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0561 uni0561              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+0562 uni0562              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight)\nU+0563 uni0563              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight)\nU+0564 uni0564              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight)\nU+0565 uni0565              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight)\nU+0566 uni0566              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight)\nU+0567 uni0567              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0568 uni0568              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight)\nU+0569 uni0569              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+056a uni056A              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+056b uni056B              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+056c uni056C              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight)\nU+056d uni056D              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight)\nU+056e uni056E              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+056f uni056F              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight)\nU+0570 uni0570              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight)\nU+0571 uni0571              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0572 uni0572              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight)\nU+0573 uni0573              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0574 uni0574              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0575 uni0575              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight)\nU+0576 uni0576              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0577 uni0577              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0578 uni0578              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight)\nU+0579 uni0579              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+057a uni057A              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+057b uni057B              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+057c uni057C              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight)\nU+057d uni057D              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight)\nU+057e uni057E              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight)\nU+057f uni057F              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight)\nU+0580 uni0580              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight)\nU+0581 uni0581              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight)\nU+0582 uni0582              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight)\nU+0583 uni0583              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight)\nU+0584 uni0584              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0585 uni0585              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight)\nU+0586 uni0586              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0587 uni0587              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight)\nU+0589 uni0589              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight)\nU+058a uni058A              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05b0 uni05B0              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05b1 uni05B1              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05b2 uni05B2              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05b3 uni05B3              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05b4 uni05B4              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05b5 uni05B5              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05b6 uni05B6              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05b7 uni05B7              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05b8 uni05B8              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05b9 uni05B9              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05ba uni05BA              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+05bb uni05BB              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05bc uni05BC              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05bd uni05BD              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05be uni05BE              2.9 (Sans Condensed Oblique, Sans Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique)\nU+05bf uni05BF              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05c0 uni05C0              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05c1 uni05C1              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05c2 uni05C2              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05c3 uni05C3              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05c6 uni05C6              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05c7 uni05C7              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05d0 uni05D0              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05d1 uni05D1              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05d2 uni05D2              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05d3 uni05D3              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05d4 uni05D4              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05d5 uni05D5              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05d6 uni05D6              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05d7 uni05D7              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05d8 uni05D8              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05d9 uni05D9              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05da uni05DA              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05db uni05DB              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05dc uni05DC              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05dd uni05DD              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05de uni05DE              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05df uni05DF              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05e0 uni05E0              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05e1 uni05E1              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05e2 uni05E2              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05e3 uni05E3              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05e4 uni05E4              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05e5 uni05E5              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05e6 uni05E6              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05e7 uni05E7              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05e8 uni05E8              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05e9 uni05E9              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05ea uni05EA              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05f0 uni05F0              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05f1 uni05F1              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05f2 uni05F2              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+05f3 uni05F3              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+05f4 uni05F4              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+0606 uni0606              2.26 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold)\nU+0607 uni0607              2.26 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold)\nU+0609 uni0609              2.26 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold)\nU+060a uni060A              2.26 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold)\nU+060c uni060C              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0615 uni0615              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+061b uni061B              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+061f uni061F              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0621 uni0621              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0622 uni0622              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0623 uni0623              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0624 uni0624              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0625 uni0625              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0626 uni0626              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0627 uni0627              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0628 uni0628              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0629 uni0629              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+062a uni062A              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+062b uni062B              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+062c uni062C              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+062d uni062D              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+062e uni062E              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+062f uni062F              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0630 uni0630              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0631 uni0631              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0632 uni0632              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0633 uni0633              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0634 uni0634              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0635 uni0635              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0636 uni0636              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0637 uni0637              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0638 uni0638              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0639 uni0639              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+063a uni063A              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0640 uni0640              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0641 uni0641              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0642 uni0642              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0643 uni0643              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0644 uni0644              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0645 uni0645              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0646 uni0646              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0647 uni0647              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0648 uni0648              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0649 uni0649              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+064a uni064A              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+064b uni064B              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+064c uni064C              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+064d uni064D              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+064e uni064E              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+064f uni064F              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0650 uni0650              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0651 uni0651              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0652 uni0652              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0653 uni0653              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0654 uni0654              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0655 uni0655              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+065a uni065A              2.7 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0660 uni0660              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0661 uni0661              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0662 uni0662              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0663 uni0663              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0664 uni0664              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0665 uni0665              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0666 uni0666              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0667 uni0667              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0668 uni0668              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0669 uni0669              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+066a uni066A              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+066b uni066B              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+066c uni066C              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+066d uni066D              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+066e uni066E              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+066f uni066F              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0674 uni0674              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans ExtraLight) 2.16 (Sans Mono, Sans Mono Bold)\nU+0679 uni0679              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+067a uni067A              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+067b uni067B              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+067c uni067C              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+067d uni067D              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+067e uni067E              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+067f uni067F              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0680 uni0680              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0681 uni0681              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0682 uni0682              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0683 uni0683              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0684 uni0684              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0685 uni0685              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0686 uni0686              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0687 uni0687              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0691 uni0691              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0692 uni0692              2.7 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+0695 uni0695              2.7 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+0698 uni0698              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+06a1 uni06A1              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+06a4 uni06A4              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+06a6 uni06A6              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+06a9 uni06A9              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+06af uni06AF              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+06b5 uni06B5              2.7 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+06ba uni06BA              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+06be uni06BE              2.16 (Sans Mono, Sans Mono Bold)\nU+06bf uni06BF              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+06c6 uni06C6              2.7 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+06cc uni06CC              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+06ce uni06CE              2.7 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+06d5 uni06D5              2.10 (Sans, Sans Bold) 2.11 (Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+06f0 uni06F0              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+06f1 uni06F1              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+06f2 uni06F2              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+06f3 uni06F3              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+06f4 uni06F4              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+06f5 uni06F5              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+06f6 uni06F6              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+06f7 uni06F7              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+06f8 uni06F8              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+06f9 uni06F9              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+07c0 uni07C0              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07c1 uni07C1              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07c2 uni07C2              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07c3 uni07C3              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07c4 uni07C4              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07c5 uni07C5              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07c6 uni07C6              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07c7 uni07C7              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07c8 uni07C8              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07c9 uni07C9              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07ca uni07CA              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07cb uni07CB              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07cc uni07CC              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07cd uni07CD              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07ce uni07CE              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07cf uni07CF              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07d0 uni07D0              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07d1 uni07D1              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07d2 uni07D2              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07d3 uni07D3              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07d4 uni07D4              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07d5 uni07D5              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07d6 uni07D6              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07d7 uni07D7              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07d8 uni07D8              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07d9 uni07D9              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07da uni07DA              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07db uni07DB              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07dc uni07DC              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07dd uni07DD              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07de uni07DE              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07df uni07DF              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07e0 uni07E0              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07e1 uni07E1              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07e2 uni07E2              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07e3 uni07E3              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07e4 uni07E4              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07e5 uni07E5              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07e6 uni07E6              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07e7 uni07E7              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07eb uni07EB              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07ec uni07EC              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07ed uni07ED              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07ee uni07EE              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07ef uni07EF              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07f0 uni07F0              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07f1 uni07F1              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07f2 uni07F2              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07f3 uni07F3              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07f4 uni07F4              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07f5 uni07F5              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07f8 uni07F8              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07f9 uni07F9              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+07fa uni07FA              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+0e3f uni0E3F              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+0e81 uni0E81              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0e82 uni0E82              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0e84 uni0E84              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0e87 uni0E87              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0e88 uni0E88              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0e8a uni0E8A              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0e8d uni0E8D              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0e94 uni0E94              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0e95 uni0E95              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0e96 uni0E96              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0e97 uni0E97              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0e99 uni0E99              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0e9a uni0E9A              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0e9b uni0E9B              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0e9c uni0E9C              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0e9d uni0E9D              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0e9e uni0E9E              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0e9f uni0E9F              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0ea1 uni0EA1              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0ea2 uni0EA2              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0ea3 uni0EA3              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0ea5 uni0EA5              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0ea7 uni0EA7              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0eaa uni0EAA              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0eab uni0EAB              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0ead uni0EAD              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0eae uni0EAE              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0eaf uni0EAF              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0eb0 uni0EB0              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0eb1 uni0EB1              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0eb2 uni0EB2              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0eb3 uni0EB3              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0eb4 uni0EB4              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0eb5 uni0EB5              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0eb6 uni0EB6              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0eb7 uni0EB7              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0eb8 uni0EB8              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0eb9 uni0EB9              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0ebb uni0EBB              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0ebc uni0EBC              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0ebd uni0EBD              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+0ec0 uni0EC0              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+0ec1 uni0EC1              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+0ec2 uni0EC2              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+0ec3 uni0EC3              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+0ec4 uni0EC4              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+0ec6 uni0EC6              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+0ec8 uni0EC8              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0ec9 uni0EC9              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0eca uni0ECA              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0ecb uni0ECB              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0ecc uni0ECC              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0ecd uni0ECD              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+0ed0 uni0ED0              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+0ed1 uni0ED1              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+0ed2 uni0ED2              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+0ed3 uni0ED3              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+0ed4 uni0ED4              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+0ed5 uni0ED5              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+0ed6 uni0ED6              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+0ed7 uni0ED7              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+0ed8 uni0ED8              2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+0ed9 uni0ED9              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+0edc uni0EDC              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+0edd uni0EDD              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+10a0 uni10A0              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10a1 uni10A1              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10a2 uni10A2              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10a3 uni10A3              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10a4 uni10A4              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10a5 uni10A5              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10a6 uni10A6              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10a7 uni10A7              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10a8 uni10A8              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10a9 uni10A9              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10aa uni10AA              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10ab uni10AB              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10ac uni10AC              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10ad uni10AD              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10ae uni10AE              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10af uni10AF              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10b0 uni10B0              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10b1 uni10B1              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10b2 uni10B2              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10b3 uni10B3              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10b4 uni10B4              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10b5 uni10B5              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10b6 uni10B6              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10b7 uni10B7              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10b8 uni10B8              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10b9 uni10B9              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10ba uni10BA              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10bb uni10BB              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10bc uni10BC              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10bd uni10BD              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10be uni10BE              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10bf uni10BF              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10c0 uni10C0              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10c1 uni10C1              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10c2 uni10C2              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10c3 uni10C3              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10c4 uni10C4              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10c5 uni10C5              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10d0 uni10D0              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10d1 uni10D1              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10d2 uni10D2              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10d3 uni10D3              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10d4 uni10D4              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10d5 uni10D5              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10d6 uni10D6              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10d7 uni10D7              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10d8 uni10D8              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10d9 uni10D9              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10da uni10DA              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10db uni10DB              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10dc uni10DC              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10dd uni10DD              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10de uni10DE              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10df uni10DF              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10e0 uni10E0              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10e1 uni10E1              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10e2 uni10E2              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10e3 uni10E3              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10e4 uni10E4              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10e5 uni10E5              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10e6 uni10E6              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10e7 uni10E7              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10e8 uni10E8              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10e9 uni10E9              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10ea uni10EA              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10eb uni10EB              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10ec uni10EC              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10ed uni10ED              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10ee uni10EE              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10ef uni10EF              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10f0 uni10F0              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10f1 uni10F1              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10f2 uni10F2              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10f3 uni10F3              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10f4 uni10F4              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10f5 uni10F5              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10f6 uni10F6              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10f7 uni10F7              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10f8 uni10F8              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10f9 uni10F9              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10fa uni10FA              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10fb uni10FB              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+10fc uni10FC              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Mono, Sans Mono Bold, Serif, Serif Bold, Serif Condensed, Serif Condensed Bold) 2.20 (Sans Bold Oblique, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+1401 uni1401              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1402 uni1402              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1403 uni1403              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1404 uni1404              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1405 uni1405              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1406 uni1406              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1407 uni1407              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1409 uni1409              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+140a uni140A              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+140b uni140B              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+140c uni140C              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+140d uni140D              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+140e uni140E              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+140f uni140F              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1410 uni1410              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1411 uni1411              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1412 uni1412              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1413 uni1413              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1414 uni1414              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1415 uni1415              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1416 uni1416              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1417 uni1417              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1418 uni1418              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1419 uni1419              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+141a uni141A              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+141b uni141B              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+141d uni141D              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+141e uni141E              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+141f uni141F              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1420 uni1420              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1421 uni1421              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1422 uni1422              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1423 uni1423              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1424 uni1424              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1425 uni1425              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1426 uni1426              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1427 uni1427              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1428 uni1428              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1429 uni1429              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+142a uni142A              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+142b uni142B              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+142c uni142C              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+142d uni142D              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+142e uni142E              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+142f uni142F              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1430 uni1430              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1431 uni1431              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1432 uni1432              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1433 uni1433              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1434 uni1434              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1435 uni1435              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1437 uni1437              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1438 uni1438              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1439 uni1439              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+143a uni143A              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+143b uni143B              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+143c uni143C              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+143d uni143D              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+143e uni143E              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+143f uni143F              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1440 uni1440              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1441 uni1441              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1442 uni1442              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1443 uni1443              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1444 uni1444              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1445 uni1445              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1446 uni1446              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1447 uni1447              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1448 uni1448              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1449 uni1449              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+144a uni144A              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+144c uni144C              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+144d uni144D              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+144e uni144E              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+144f uni144F              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1450 uni1450              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1451 uni1451              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1452 uni1452              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1454 uni1454              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1455 uni1455              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1456 uni1456              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1457 uni1457              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1458 uni1458              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1459 uni1459              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+145a uni145A              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+145b uni145B              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+145c uni145C              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+145d uni145D              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+145e uni145E              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+145f uni145F              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1460 uni1460              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1461 uni1461              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1462 uni1462              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1463 uni1463              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1464 uni1464              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1465 uni1465              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1466 uni1466              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1467 uni1467              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1468 uni1468              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1469 uni1469              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+146a uni146A              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+146b uni146B              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+146c uni146C              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+146d uni146D              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+146e uni146E              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+146f uni146F              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1470 uni1470              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1471 uni1471              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1472 uni1472              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1473 uni1473              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1474 uni1474              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1475 uni1475              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1476 uni1476              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1477 uni1477              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1478 uni1478              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1479 uni1479              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+147a uni147A              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+147b uni147B              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+147c uni147C              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+147d uni147D              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+147e uni147E              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+147f uni147F              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1480 uni1480              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1481 uni1481              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1482 uni1482              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1483 uni1483              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1484 uni1484              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1485 uni1485              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1486 uni1486              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1487 uni1487              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1488 uni1488              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1489 uni1489              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+148a uni148A              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+148b uni148B              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+148c uni148C              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+148d uni148D              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+148e uni148E              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+148f uni148F              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1490 uni1490              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1491 uni1491              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1492 uni1492              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1493 uni1493              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1494 uni1494              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1495 uni1495              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1496 uni1496              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1497 uni1497              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1498 uni1498              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1499 uni1499              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+149a uni149A              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+149b uni149B              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+149c uni149C              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+149d uni149D              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+149e uni149E              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+149f uni149F              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14a0 uni14A0              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14a1 uni14A1              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14a2 uni14A2              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14a3 uni14A3              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14a4 uni14A4              2.13 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Condensed Oblique, Sans Oblique) 2.15 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+14a5 uni14A5              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14a6 uni14A6              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14a7 uni14A7              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14a8 uni14A8              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14a9 uni14A9              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14aa uni14AA              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14ab uni14AB              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14ac uni14AC              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14ad uni14AD              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14ae uni14AE              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14af uni14AF              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14b0 uni14B0              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14b1 uni14B1              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14b2 uni14B2              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14b3 uni14B3              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14b4 uni14B4              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14b5 uni14B5              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14b6 uni14B6              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14b7 uni14B7              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14b8 uni14B8              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14b9 uni14B9              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14ba uni14BA              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14bb uni14BB              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14bc uni14BC              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14bd uni14BD              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14c0 uni14C0              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14c1 uni14C1              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14c2 uni14C2              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14c3 uni14C3              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14c4 uni14C4              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14c5 uni14C5              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14c6 uni14C6              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14c7 uni14C7              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14c8 uni14C8              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14c9 uni14C9              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14ca uni14CA              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14cb uni14CB              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14cc uni14CC              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14cd uni14CD              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14ce uni14CE              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14cf uni14CF              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14d0 uni14D0              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14d1 uni14D1              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14d2 uni14D2              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14d3 uni14D3              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14d4 uni14D4              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14d5 uni14D5              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14d6 uni14D6              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14d7 uni14D7              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14d8 uni14D8              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14d9 uni14D9              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14da uni14DA              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14db uni14DB              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14dc uni14DC              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14dd uni14DD              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14de uni14DE              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14df uni14DF              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14e0 uni14E0              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14e1 uni14E1              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14e2 uni14E2              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14e3 uni14E3              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14e4 uni14E4              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14e5 uni14E5              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14e6 uni14E6              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14e7 uni14E7              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14e8 uni14E8              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14e9 uni14E9              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14ea uni14EA              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14ec uni14EC              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14ed uni14ED              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14ee uni14EE              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14ef uni14EF              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14f0 uni14F0              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14f1 uni14F1              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14f2 uni14F2              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14f3 uni14F3              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14f4 uni14F4              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14f5 uni14F5              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14f6 uni14F6              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14f7 uni14F7              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14f8 uni14F8              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14f9 uni14F9              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14fa uni14FA              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14fb uni14FB              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14fc uni14FC              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14fd uni14FD              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14fe uni14FE              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+14ff uni14FF              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1500 uni1500              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1501 uni1501              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1502 uni1502              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1503 uni1503              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1504 uni1504              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1505 uni1505              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1506 uni1506              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1507 uni1507              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1510 uni1510              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1511 uni1511              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1512 uni1512              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1513 uni1513              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1514 uni1514              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1515 uni1515              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1516 uni1516              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1517 uni1517              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1518 uni1518              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1519 uni1519              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+151a uni151A              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+151b uni151B              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+151c uni151C              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+151d uni151D              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+151e uni151E              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+151f uni151F              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1520 uni1520              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1521 uni1521              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1522 uni1522              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1523 uni1523              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1524 uni1524              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1525 uni1525              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1526 uni1526              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1527 uni1527              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1528 uni1528              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1529 uni1529              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+152a uni152A              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+152b uni152B              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+152c uni152C              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+152d uni152D              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+152e uni152E              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+152f uni152F              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1530 uni1530              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1531 uni1531              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1532 uni1532              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1533 uni1533              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1534 uni1534              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1535 uni1535              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1536 uni1536              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1537 uni1537              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1538 uni1538              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1539 uni1539              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+153a uni153A              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+153b uni153B              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+153c uni153C              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+153d uni153D              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+153e uni153E              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1540 uni1540              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1541 uni1541              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1542 uni1542              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1543 uni1543              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1544 uni1544              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1545 uni1545              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1546 uni1546              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1547 uni1547              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1548 uni1548              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1549 uni1549              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+154a uni154A              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+154b uni154B              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+154c uni154C              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+154d uni154D              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+154e uni154E              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+154f uni154F              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1550 uni1550              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1552 uni1552              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1553 uni1553              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1554 uni1554              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1555 uni1555              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1556 uni1556              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1557 uni1557              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1558 uni1558              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1559 uni1559              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+155a uni155A              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+155b uni155B              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+155c uni155C              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+155d uni155D              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+155e uni155E              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+155f uni155F              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1560 uni1560              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1561 uni1561              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1562 uni1562              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1563 uni1563              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1564 uni1564              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1565 uni1565              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1566 uni1566              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1567 uni1567              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1568 uni1568              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1569 uni1569              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+156a uni156A              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1574 uni1574              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1575 uni1575              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1576 uni1576              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1577 uni1577              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1578 uni1578              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1579 uni1579              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+157a uni157A              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+157b uni157B              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+157c uni157C              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+157d uni157D              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+157e uni157E              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+157f uni157F              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1580 uni1580              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1581 uni1581              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1582 uni1582              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1583 uni1583              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1584 uni1584              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1585 uni1585              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+158a uni158A              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+158b uni158B              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+158c uni158C              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+158d uni158D              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+158e uni158E              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+158f uni158F              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1590 uni1590              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1591 uni1591              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1592 uni1592              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1593 uni1593              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1594 uni1594              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1595 uni1595              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1596 uni1596              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+15a0 uni15A0              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+15a1 uni15A1              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+15a2 uni15A2              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+15a3 uni15A3              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+15a4 uni15A4              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+15a5 uni15A5              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+15a6 uni15A6              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+15a7 uni15A7              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+15a8 uni15A8              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+15a9 uni15A9              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+15aa uni15AA              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+15ab uni15AB              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+15ac uni15AC              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+15ad uni15AD              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+15ae uni15AE              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+15af uni15AF              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+15de uni15DE              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+15e1 uni15E1              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1646 uni1646              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1647 uni1647              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+166e uni166E              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+166f uni166F              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1670 uni1670              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1671 uni1671              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1672 uni1672              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1673 uni1673              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1674 uni1674              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1675 uni1675              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1676 uni1676              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1680 uni1680              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+1681 uni1681              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+1682 uni1682              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+1683 uni1683              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+1684 uni1684              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+1685 uni1685              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+1686 uni1686              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+1687 uni1687              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+1688 uni1688              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+1689 uni1689              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+168a uni168A              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+168b uni168B              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+168c uni168C              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+168d uni168D              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+168e uni168E              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+168f uni168F              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+1690 uni1690              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+1691 uni1691              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+1692 uni1692              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+1693 uni1693              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+1694 uni1694              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+1695 uni1695              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+1696 uni1696              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+1697 uni1697              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+1698 uni1698              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+1699 uni1699              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+169a uni169A              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+169b uni169B              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+169c uni169C              2.22 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.28 (Sans ExtraLight)\nU+1d00 uni1D00              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d01 uni1D01              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d02 uni1D02              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1d03 uni1D03              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d04 uni1D04              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight)\nU+1d05 uni1D05              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d06 uni1D06              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d07 uni1D07              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d08 uni1D08              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+1d09 uni1D09              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1d0a uni1D0A              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d0b uni1D0B              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight)\nU+1d0c uni1D0C              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d0d uni1D0D              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight)\nU+1d0e uni1D0E              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight)\nU+1d0f uni1D0F              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight)\nU+1d10 uni1D10              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight)\nU+1d11 uni1D11              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight)\nU+1d12 uni1D12              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight)\nU+1d13 uni1D13              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight)\nU+1d14 uni1D14              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1d16 uni1D16              2.3\nU+1d17 uni1D17              2.3\nU+1d18 uni1D18              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d19 uni1D19              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight)\nU+1d1a uni1D1A              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight)\nU+1d1b uni1D1B              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d1c uni1D1C              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d1d uni1D1D              2.3\nU+1d1e uni1D1E              2.3\nU+1d1f uni1D1F              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+1d20 uni1D20              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight)\nU+1d21 uni1D21              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight)\nU+1d22 uni1D22              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight)\nU+1d23 uni1D23              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d26 uni1D26              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight)\nU+1d27 uni1D27              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight)\nU+1d28 uni1D28              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight)\nU+1d29 uni1D29              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d2a uni1D2A              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d2b uni1D2B              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans ExtraLight)\nU+1d2c uni1D2C              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d2d uni1D2D              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d2e uni1D2E              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d30 uni1D30              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d31 uni1D31              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d32 uni1D32              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d33 uni1D33              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d34 uni1D34              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d35 uni1D35              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d36 uni1D36              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d37 uni1D37              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d38 uni1D38              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d39 uni1D39              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d3a uni1D3A              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d3b uni1D3B              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d3c uni1D3C              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d3d uni1D3D              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono Oblique)\nU+1d3e uni1D3E              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d3f uni1D3F              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d40 uni1D40              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d41 uni1D41              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d42 uni1D42              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d43 uni1D43              2.3\nU+1d44 uni1D44              2.3\nU+1d45 uni1D45              2.3\nU+1d46 uni1D46              2.3\nU+1d47 uni1D47              2.3\nU+1d48 uni1D48              2.3\nU+1d49 uni1D49              2.3\nU+1d4a uni1D4A              2.3\nU+1d4b uni1D4B              2.3\nU+1d4c uni1D4C              2.3\nU+1d4d uni1D4D              2.3\nU+1d4e uni1D4E              2.3\nU+1d4f uni1D4F              2.3\nU+1d50 uni1D50              2.3\nU+1d51 uni1D51              2.3\nU+1d52 uni1D52              2.3\nU+1d53 uni1D53              2.3\nU+1d54 uni1D54              2.3\nU+1d55 uni1D55              2.3\nU+1d56 uni1D56              2.3\nU+1d57 uni1D57              2.3\nU+1d58 uni1D58              2.3\nU+1d59 uni1D59              2.3\nU+1d5a uni1D5A              2.3\nU+1d5b uni1D5B              2.3\nU+1d5d uni1D5D              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+1d5e uni1D5E              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+1d5f uni1D5F              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+1d60 uni1D60              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+1d61 uni1D61              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+1d62 uni1D62              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d63 uni1D63              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d64 uni1D64              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d65 uni1D65              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d66 uni1D66              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+1d67 uni1D67              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+1d68 uni1D68              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+1d69 uni1D69              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+1d6a uni1D6A              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+1d77 uni1D77              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1d78 uni1D78              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1d7b uni1D7B              2.3\nU+1d85 uni1D85              2.3\nU+1d9b uni1D9B              2.3\nU+1d9c uni1D9C              2.3\nU+1d9d uni1D9D              2.3\nU+1d9e uni1D9E              2.3\nU+1d9f uni1D9F              2.3\nU+1da0 uni1DA0              2.3\nU+1da1 uni1DA1              2.3\nU+1da2 uni1DA2              2.3\nU+1da3 uni1DA3              2.3\nU+1da4 uni1DA4              2.3\nU+1da5 uni1DA5              2.3\nU+1da6 uni1DA6              2.3\nU+1da7 uni1DA7              2.3\nU+1da8 uni1DA8              2.3\nU+1da9 uni1DA9              2.3\nU+1daa uni1DAA              2.3\nU+1dab uni1DAB              2.3\nU+1dac uni1DAC              2.3\nU+1dad uni1DAD              2.3\nU+1dae uni1DAE              2.3\nU+1daf uni1DAF              2.3\nU+1db0 uni1DB0              2.3\nU+1db1 uni1DB1              2.3\nU+1db2 uni1DB2              2.3\nU+1db3 uni1DB3              2.3\nU+1db4 uni1DB4              2.3\nU+1db5 uni1DB5              2.3\nU+1db6 uni1DB6              2.3\nU+1db7 uni1DB7              2.3\nU+1db8 uni1DB8              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+1db9 uni1DB9              2.3\nU+1dba uni1DBA              2.3\nU+1dbb uni1DBB              2.3\nU+1dbc uni1DBC              2.3\nU+1dbd uni1DBD              2.3\nU+1dbe uni1DBE              2.3\nU+1dbf uni1DBF              2.3\nU+1dc4 uni1DC4              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+1dc5 uni1DC5              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+1dc6 uni1DC6              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+1dc7 uni1DC7              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+1dc8 uni1DC8              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+1dc9 uni1DC9              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+1e00 uni1E00              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e01 uni1E01              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e02 uni1E02              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e03 uni1E03              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e04 uni1E04              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e05 uni1E05              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e06 uni1E06              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e07 uni1E07              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e08 uni1E08              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e09 uni1E09              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e0a uni1E0A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e0b uni1E0B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e0c uni1E0C              2.1\nU+1e0d uni1E0D              2.1\nU+1e0e uni1E0E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e0f uni1E0F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e10 uni1E10              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e11 uni1E11              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e12 uni1E12              1.13\nU+1e13 uni1E13              1.13\nU+1e14 uni1E14              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1e15 uni1E15              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1e16 uni1E16              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1e17 uni1E17              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1e18 uni1E18              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e19 uni1E19              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e1a uni1E1A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e1b uni1E1B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e1c uni1E1C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.17 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1e1d uni1E1D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.17 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+1e1e uni1E1E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e1f uni1E1F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e20 uni1E20              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e21 uni1E21              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e22 uni1E22              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e23 uni1E23              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e24 uni1E24              2.1\nU+1e25 uni1E25              2.1\nU+1e26 uni1E26              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1e27 uni1E27              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1e28 uni1E28              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e29 uni1E29              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e2a uni1E2A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e2b uni1E2B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e2c uni1E2C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e2d uni1E2D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e2e uni1E2E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1e2f uni1E2F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1e30 uni1E30              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e31 uni1E31              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e32 uni1E32              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e33 uni1E33              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e34 uni1E34              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e35 uni1E35              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e36 uni1E36              2.1\nU+1e37 uni1E37              2.1\nU+1e38 uni1E38              2.1\nU+1e39 uni1E39              2.1\nU+1e3a uni1E3A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e3b uni1E3B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e3c uni1E3C              1.13\nU+1e3d uni1E3D              1.13\nU+1e3e uni1E3E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e3f uni1E3F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e40 uni1E40              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e41 uni1E41              2.1\nU+1e42 uni1E42              2.1\nU+1e43 uni1E43              2.1\nU+1e44 uni1E44              1.13\nU+1e45 uni1E45              1.13\nU+1e46 uni1E46              2.1\nU+1e47 uni1E47              2.1\nU+1e48 uni1E48              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e49 uni1E49              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e4a uni1E4A              1.13\nU+1e4b uni1E4B              1.13\nU+1e4c uni1E4C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.30 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+1e4d uni1E4D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.30 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+1e4e uni1E4E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1e4f uni1E4F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1e50 uni1E50              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1e51 uni1E51              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1e52 uni1E52              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1e53 uni1E53              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1e54 uni1E54              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1e55 uni1E55              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1e56 uni1E56              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e57 uni1E57              2.1\nU+1e58 uni1E58              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e59 uni1E59              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e5a uni1E5A              2.1\nU+1e5b uni1E5B              2.1\nU+1e5c uni1E5C              2.1\nU+1e5d uni1E5D              2.1\nU+1e5e uni1E5E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e5f uni1E5F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e60 uni1E60              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e61 uni1E61              2.1\nU+1e62 uni1E62              2.1\nU+1e63 uni1E63              2.1\nU+1e64 uni1E64              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+1e65 uni1E65              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+1e66 uni1E66              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1e67 uni1E67              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1e68 uni1E68              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e69 uni1E69              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e6a uni1E6A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e6b uni1E6B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e6c uni1E6C              2.1\nU+1e6d uni1E6D              2.1\nU+1e6e uni1E6E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e6f uni1E6F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e70 uni1E70              1.13\nU+1e71 uni1E71              1.13\nU+1e72 uni1E72              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e73 uni1E73              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e74 uni1E74              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e75 uni1E75              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e76 uni1E76              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e77 uni1E77              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e78 uni1E78              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) 2.30 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1e79 uni1E79              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed) 2.30 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1e7a uni1E7A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1e7b uni1E7B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1e7c uni1E7C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1e7d uni1E7D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1e7e uni1E7E              2.1\nU+1e7f uni1E7F              2.1\nU+1e80 Wgrave               1.2\nU+1e81 wgrave               1.2\nU+1e82 Wacute               1.2\nU+1e83 wacute               1.2\nU+1e84 Wdieresis            1.2\nU+1e85 wdieresis            1.2\nU+1e86 uni1E86              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e87 uni1E87              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e88 uni1E88              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e89 uni1E89              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e8a uni1E8A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e8b uni1E8B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e8c uni1E8C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1e8d uni1E8D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1e8e uni1E8E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e8f uni1E8F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e90 uni1E90              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1e91 uni1E91              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1e92 uni1E92              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e93 uni1E93              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e94 uni1E94              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e95 uni1E95              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e96 uni1E96              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e97 uni1E97              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1e98 uni1E98              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1e99 uni1E99              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1e9a uni1E9A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1e9b uni1E9B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1e9e uni1E9E              2.28 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+1e9f uni1E9F              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+1ea0 uni1EA0              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1ea1 uni1EA1              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1ea2 uni1EA2              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1ea3 uni1EA3              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1ea4 uni1EA4              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1ea5 uni1EA5              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1ea6 uni1EA6              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1ea7 uni1EA7              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1ea8 uni1EA8              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1ea9 uni1EA9              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1eaa uni1EAA              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1eab uni1EAB              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1eac uni1EAC              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1ead uni1EAD              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1eae uni1EAE              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1eaf uni1EAF              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1eb0 uni1EB0              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1eb1 uni1EB1              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.22 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1eb2 uni1EB2              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1eb3 uni1EB3              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1eb4 uni1EB4              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1eb5 uni1EB5              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1eb6 uni1EB6              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1eb7 uni1EB7              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1eb8 uni1EB8              2.2\nU+1eb9 uni1EB9              2.2\nU+1eba uni1EBA              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1ebb uni1EBB              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1ebc uni1EBC              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1ebd uni1EBD              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1ebe uni1EBE              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1ebf uni1EBF              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1ec0 uni1EC0              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1ec1 uni1EC1              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1ec2 uni1EC2              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1ec3 uni1EC3              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1ec4 uni1EC4              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1ec5 uni1EC5              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1ec6 uni1EC6              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1ec7 uni1EC7              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1ec8 uni1EC8              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1ec9 uni1EC9              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1eca uni1ECA              2.2\nU+1ecb uni1ECB              2.2\nU+1ecc uni1ECC              2.2\nU+1ecd uni1ECD              2.2\nU+1ece uni1ECE              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1ecf uni1ECF              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1ed0 uni1ED0              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1ed1 uni1ED1              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1ed2 uni1ED2              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1ed3 uni1ED3              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1ed4 uni1ED4              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1ed5 uni1ED5              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1ed6 uni1ED6              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1ed7 uni1ED7              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1ed8 uni1ED8              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1ed9 uni1ED9              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1eda uni1EDA              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1edb uni1EDB              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1edc uni1EDC              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1edd uni1EDD              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1ede uni1EDE              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1edf uni1EDF              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1ee0 uni1EE0              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1ee1 uni1EE1              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1ee2 uni1EE2              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1ee3 uni1EE3              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1ee4 uni1EE4              2.2\nU+1ee5 uni1EE5              2.2\nU+1ee6 uni1EE6              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1ee7 uni1EE7              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1ee8 uni1EE8              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1ee9 uni1EE9              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1eea uni1EEA              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1eeb uni1EEB              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1eec uni1EEC              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1eed uni1EED              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+1eee uni1EEE              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1eef uni1EEF              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1ef0 uni1EF0              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1ef1 uni1EF1              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+1ef2 Ygrave               1.2\nU+1ef3 ygrave               1.2\nU+1ef4 uni1EF4              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1ef5 uni1EF5              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1ef6 uni1EF6              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1ef7 uni1EF7              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1ef8 uni1EF8              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1ef9 uni1EF9              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1f00 uni1F00              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f01 uni1F01              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f02 uni1F02              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f03 uni1F03              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f04 uni1F04              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f05 uni1F05              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f06 uni1F06              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f07 uni1F07              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f08 uni1F08              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f09 uni1F09              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f0a uni1F0A              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f0b uni1F0B              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f0c uni1F0C              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f0d uni1F0D              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f0e uni1F0E              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f0f uni1F0F              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f10 uni1F10              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f11 uni1F11              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f12 uni1F12              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f13 uni1F13              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f14 uni1F14              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f15 uni1F15              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f18 uni1F18              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f19 uni1F19              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f1a uni1F1A              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f1b uni1F1B              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f1c uni1F1C              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f1d uni1F1D              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f20 uni1F20              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f21 uni1F21              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f22 uni1F22              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f23 uni1F23              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f24 uni1F24              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f25 uni1F25              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f26 uni1F26              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f27 uni1F27              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f28 uni1F28              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f29 uni1F29              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f2a uni1F2A              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f2b uni1F2B              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f2c uni1F2C              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f2d uni1F2D              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f2e uni1F2E              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f2f uni1F2F              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f30 uni1F30              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f31 uni1F31              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f32 uni1F32              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f33 uni1F33              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f34 uni1F34              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f35 uni1F35              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f36 uni1F36              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f37 uni1F37              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f38 uni1F38              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f39 uni1F39              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f3a uni1F3A              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f3b uni1F3B              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f3c uni1F3C              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f3d uni1F3D              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f3e uni1F3E              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f3f uni1F3F              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f40 uni1F40              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f41 uni1F41              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f42 uni1F42              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f43 uni1F43              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f44 uni1F44              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f45 uni1F45              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f48 uni1F48              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f49 uni1F49              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f4a uni1F4A              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f4b uni1F4B              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f4c uni1F4C              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f4d uni1F4D              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f50 uni1F50              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f51 uni1F51              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f52 uni1F52              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f53 uni1F53              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f54 uni1F54              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f55 uni1F55              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f56 uni1F56              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f57 uni1F57              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f59 uni1F59              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f5b uni1F5B              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f5d uni1F5D              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f5f uni1F5F              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f60 uni1F60              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f61 uni1F61              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f62 uni1F62              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f63 uni1F63              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f64 uni1F64              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f65 uni1F65              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f66 uni1F66              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f67 uni1F67              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f68 uni1F68              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f69 uni1F69              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f6a uni1F6A              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f6b uni1F6B              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f6c uni1F6C              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f6d uni1F6D              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f6e uni1F6E              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f6f uni1F6F              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f70 uni1F70              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1f71 uni1F71              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1f72 uni1F72              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1f73 uni1F73              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1f74 uni1F74              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1f75 uni1F75              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1f76 uni1F76              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f77 uni1F77              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f78 uni1F78              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1f79 uni1F79              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1f7a uni1F7A              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f7b uni1F7B              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f7c uni1F7C              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f7d uni1F7D              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f80 uni1F80              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f81 uni1F81              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f82 uni1F82              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f83 uni1F83              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f84 uni1F84              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f85 uni1F85              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f86 uni1F86              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f87 uni1F87              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f88 uni1F88              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f89 uni1F89              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f8a uni1F8A              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f8b uni1F8B              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f8c uni1F8C              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f8d uni1F8D              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f8e uni1F8E              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f8f uni1F8F              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f90 uni1F90              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f91 uni1F91              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f92 uni1F92              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f93 uni1F93              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f94 uni1F94              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f95 uni1F95              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f96 uni1F96              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f97 uni1F97              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f98 uni1F98              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f99 uni1F99              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f9a uni1F9A              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f9b uni1F9B              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f9c uni1F9C              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f9d uni1F9D              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f9e uni1F9E              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1f9f uni1F9F              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fa0 uni1FA0              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fa1 uni1FA1              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fa2 uni1FA2              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fa3 uni1FA3              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fa4 uni1FA4              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fa5 uni1FA5              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fa6 uni1FA6              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fa7 uni1FA7              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fa8 uni1FA8              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fa9 uni1FA9              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1faa uni1FAA              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fab uni1FAB              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fac uni1FAC              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fad uni1FAD              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fae uni1FAE              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1faf uni1FAF              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fb0 uni1FB0              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fb1 uni1FB1              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fb2 uni1FB2              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fb3 uni1FB3              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fb4 uni1FB4              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fb6 uni1FB6              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fb7 uni1FB7              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fb8 uni1FB8              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1fb9 uni1FB9              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1fba uni1FBA              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1fbb uni1FBB              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1fbc uni1FBC              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fbd uni1FBD              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fbe uni1FBE              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1fbf uni1FBF              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fc0 uni1FC0              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1fc1 uni1FC1              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1fc2 uni1FC2              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fc3 uni1FC3              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fc4 uni1FC4              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fc6 uni1FC6              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1fc7 uni1FC7              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fc8 uni1FC8              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1fc9 uni1FC9              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1fca uni1FCA              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1fcb uni1FCB              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1fcc uni1FCC              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.10 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fcd uni1FCD              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fce uni1FCE              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fcf uni1FCF              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fd0 uni1FD0              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fd1 uni1FD1              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fd2 uni1FD2              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fd3 uni1FD3              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fd6 uni1FD6              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fd7 uni1FD7              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fd8 uni1FD8              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1fd9 uni1FD9              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1fda uni1FDA              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1fdb uni1FDB              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1fdd uni1FDD              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fde uni1FDE              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fdf uni1FDF              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fe0 uni1FE0              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fe1 uni1FE1              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fe2 uni1FE2              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fe3 uni1FE3              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fe4 uni1FE4              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fe5 uni1FE5              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fe6 uni1FE6              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fe7 uni1FE7              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fe8 uni1FE8              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1fe9 uni1FE9              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1fea uni1FEA              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1feb uni1FEB              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1fec uni1FEC              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1fed uni1FED              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1fee uni1FEE              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1fef uni1FEF              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1ff2 uni1FF2              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1ff3 uni1FF3              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1ff4 uni1FF4              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1ff6 uni1FF6              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1ff7 uni1FF7              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1ff8 uni1FF8              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1ff9 uni1FF9              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1ffa uni1FFA              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1ffb uni1FFB              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.10 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1ffc uni1FFC              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+1ffd uni1FFD              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+1ffe uni1FFE              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.5 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+2000 uni2000              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+2001 uni2001              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+2002 uni2002              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+2003 uni2003              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+2004 uni2004              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+2005 uni2005              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+2006 uni2006              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+2007 uni2007              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+2008 uni2008              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+2009 uni2009              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+200a uni200A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+200b uni200B              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.8 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+200c uni200C              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.8 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+200d uni200D              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.8 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+200e uni200E              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.8 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+200f uni200F              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.8 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+2010 uni2010              1.5\nU+2011 uni2011              1.5\nU+2012 figuredash           1.5\nU+2013 endash               original\nU+2014 emdash               original\nU+2015 uni2015              1.5\nU+2016 uni2016              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2017 underscoredbl        2.3\nU+2018 quoteleft            original\nU+2019 quoteright           original\nU+201a quotesinglbase       original\nU+201b quotereversed        2.3\nU+201c quotedblleft         original\nU+201d quotedblright        original\nU+201e quotedblbase         original\nU+201f uni201F              2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.3 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+2020 dagger               original\nU+2021 daggerdbl            original\nU+2022 bullet               original\nU+2023 uni2023              2.2\nU+2024 onedotenleader       2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.9 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2025 twodotenleader       2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.9 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2026 ellipsis             original\nU+2027 uni2027              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+202a uni202A              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+202b uni202B              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+202c uni202C              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+202d uni202D              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+202e uni202E              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+202f uni202F              2.11 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.23 (Serif Italic Condensed)\nU+2030 perthousand          original\nU+2031 uni2031              2.1\nU+2032 minute               2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2033 second               2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2034 uni2034              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2035 uni2035              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2036 uni2036              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2037 uni2037              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2038 uni2038              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2039 guilsinglleft        original\nU+203a guilsinglright       original\nU+203b uni203B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+203c exclamdbl            2.0\nU+203d uni203D              2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.11 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.14 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+203e uni203E              2.3\nU+203f uni203F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+2040 uni2040              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+2041 uni2041              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2042 uni2042              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2043 uni2043              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+2044 fraction             2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2045 uni2045              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2046 uni2046              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2047 uni2047              2.0\nU+2048 uni2048              2.0\nU+2049 uni2049              2.0\nU+204a uni204A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+204b uni204B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+204c uni204C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+204d uni204D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+204e uni204E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+204f uni204F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2050 uni2050              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+2051 uni2051              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2052 uni2052              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2053 uni2053              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2054 uni2054              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+2055 uni2055              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2056 uni2056              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2057 uni2057              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2058 uni2058              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2059 uni2059              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+205a uni205A              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+205b uni205B              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+205c uni205C              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+205d uni205D              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+205e uni205E              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+205f uni205F              2.14\nU+2060 uni2060              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2061 uni2061              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2062 uni2062              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2063 uni2063              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2064 uni2064              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+206a uni206A              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+206b uni206B              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+206c uni206C              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+206d uni206D              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+206e uni206E              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+206f uni206F              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2070 uni2070              2.2\nU+2071 uni2071              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+2074 uni2074              2.2\nU+2075 uni2075              2.2\nU+2076 uni2076              2.2\nU+2077 uni2077              2.2\nU+2078 uni2078              2.2\nU+2079 uni2079              2.2\nU+207a uni207A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+207b uni207B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+207c uni207C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+207d uni207D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+207e uni207E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+207f uni207F              1.14\nU+2080 uni2080              2.4\nU+2081 uni2081              2.4\nU+2082 uni2082              2.4\nU+2083 uni2083              2.4\nU+2084 uni2084              2.4\nU+2085 uni2085              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2086 uni2086              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2087 uni2087              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2088 uni2088              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2089 uni2089              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+208a uni208A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+208b uni208B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+208c uni208C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+208d uni208D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+208e uni208E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+2090 uni2090              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+2091 uni2091              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+2092 uni2092              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+2093 uni2093              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+2094 uni2094              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.17 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.18 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+20a0 uni20A0              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+20a1 colonmonetary        2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+20a2 uni20A2              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+20a3 franc                2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+20a4 lira                 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+20a5 uni20A5              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+20a6 uni20A6              2.3\nU+20a7 peseta               2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+20a8 uni20A8              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+20a9 uni20A9              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+20aa uni20AA              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+20ab dong                 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+20ac Euro                 original\nU+20ad uni20AD              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+20ae uni20AE              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+20af uni20AF              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+20b0 uni20B0              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+20b1 uni20B1              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.14 (Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+20b2 uni20B2              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+20b3 uni20B3              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+20b4 uni20B4              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+20b5 uni20B5              2.2\nU+20d0 uni20D0              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+20d1 uni20D1              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+20d6 uni20D6              2.8 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+20d7 uni20D7              2.8 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+20db uni20DB              2.23 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+20dc uni20DC              2.23 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+20e1 uni20E1              2.23 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2100 uni2100              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2101 uni2101              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2102 uni2102              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.16 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Condensed)\nU+2103 uni2103              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2104 uni2104              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2105 uni2105              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2106 uni2106              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2107 uni2107              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2108 uni2108              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2109 uni2109              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+210b uni210B              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+210c uni210C              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+210d uni210D              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+210e uni210E              2.5 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.23 (Serif Italic Condensed) 2.26 (Sans ExtraLight)\nU+210f uni210F              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.28 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2110 uni2110              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2111 Ifraktur             2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2112 uni2112              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2113 uni2113              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2114 uni2114              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2115 uni2115              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2116 uni2116              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.4 (Sans ExtraLight) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+2117 uni2117              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2118 weierstrass          2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2119 uni2119              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+211a uni211A              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+211b uni211B              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+211c Rfraktur             2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+211d uni211D              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+211e prescription         2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+211f uni211F              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2120 uni2120              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2121 uni2121              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2122 trademark            original\nU+2123 uni2123              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2124 uni2124              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2125 uni2125              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2126 uni2126              2.2\nU+2127 uni2127              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2128 uni2128              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2129 uni2129              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+212a uni212A              2.2\nU+212b uni212B              2.2\nU+212c uni212C              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+212d uni212D              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+212e estimated            2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+212f uni212F              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2130 uni2130              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2131 uni2131              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2132 uni2132              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight)\nU+2133 uni2133              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2134 uni2134              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+2135 aleph                2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2136 uni2136              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2137 uni2137              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2138 uni2138              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2139 uni2139              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+213a uni213A              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+213b uni213B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+213c uni213C              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed)\nU+213d uni213D              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed)\nU+213e uni213E              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed)\nU+213f uni213F              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed)\nU+2140 uni2140              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed)\nU+2141 uni2141              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2142 uni2142              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2143 uni2143              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2144 uni2144              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2145 uni2145              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed)\nU+2146 uni2146              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed)\nU+2147 uni2147              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed)\nU+2148 uni2148              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed)\nU+2149 uni2149              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.22 (Serif, Serif Condensed)\nU+214b uni214B              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+214e uni214E              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2153 onethird             2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2154 twothirds            2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2155 uni2155              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2156 uni2156              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2157 uni2157              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2158 uni2158              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2159 uni2159              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+215a uni215A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+215b oneeighth            2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+215c threeeighths         2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+215d fiveeighths          2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+215e seveneighths         2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+215f uni215F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.6 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2160 uni2160              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2161 uni2161              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2162 uni2162              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2163 uni2163              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2164 uni2164              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2165 uni2165              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2166 uni2166              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2167 uni2167              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2168 uni2168              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2169 uni2169              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+216a uni216A              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+216b uni216B              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+216c uni216C              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+216d uni216D              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+216e uni216E              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+216f uni216F              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2170 uni2170              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2171 uni2171              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2172 uni2172              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2173 uni2173              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2174 uni2174              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2175 uni2175              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2176 uni2176              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2177 uni2177              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2178 uni2178              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2179 uni2179              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+217a uni217A              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+217b uni217B              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+217c uni217C              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+217d uni217D              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+217e uni217E              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+217f uni217F              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2180 uni2180              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2181 uni2181              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2182 uni2182              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2183 uni2183              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2184 uni2184              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2190 arrowleft            2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+2191 arrowup              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+2192 arrowright           2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+2193 arrowdown            2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+2194 arrowboth            2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2195 arrowupdn            2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2196 uni2196              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2197 uni2197              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2198 uni2198              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2199 uni2199              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+219a uni219A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+219b uni219B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+219c uni219C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+219d uni219D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+219e uni219E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+219f uni219F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21a0 uni21A0              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21a1 uni21A1              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21a2 uni21A2              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21a3 uni21A3              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21a4 uni21A4              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21a5 uni21A5              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21a6 uni21A6              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21a7 uni21A7              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21a8 arrowupdnbse         2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21a9 uni21A9              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21aa uni21AA              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21ab uni21AB              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21ac uni21AC              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21ad uni21AD              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21ae uni21AE              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21af uni21AF              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21b0 uni21B0              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21b1 uni21B1              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21b2 uni21B2              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21b3 uni21B3              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21b4 uni21B4              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21b5 carriagereturn       2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21b6 uni21B6              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21b7 uni21B7              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21b8 uni21B8              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21b9 uni21B9              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21ba uni21BA              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21bb uni21BB              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21bc uni21BC              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21bd uni21BD              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21be uni21BE              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21bf uni21BF              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21c0 uni21C0              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21c1 uni21C1              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21c2 uni21C2              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21c3 uni21C3              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21c4 uni21C4              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21c5 uni21C5              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21c6 uni21C6              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21c7 uni21C7              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21c8 uni21C8              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21c9 uni21C9              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21ca uni21CA              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21cb uni21CB              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21cc uni21CC              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21cd uni21CD              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21ce uni21CE              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21cf uni21CF              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21d0 arrowdblleft         2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21d1 arrowdblup           2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21d2 arrowdblright        2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21d3 arrowdbldown         2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21d4 arrowdblboth         2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21d5 uni21D5              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21d6 uni21D6              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21d7 uni21D7              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21d8 uni21D8              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21d9 uni21D9              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21da uni21DA              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21db uni21DB              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21dc uni21DC              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21dd uni21DD              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21de uni21DE              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21df uni21DF              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21e0 uni21E0              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21e1 uni21E1              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21e2 uni21E2              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21e3 uni21E3              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21e4 uni21E4              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21e5 uni21E5              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21e6 uni21E6              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21e7 uni21E7              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21e8 uni21E8              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21e9 uni21E9              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21ea uni21EA              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21eb uni21EB              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21ec uni21EC              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21ed uni21ED              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21ee uni21EE              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21ef uni21EF              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21f0 uni21F0              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21f1 uni21F1              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21f2 uni21F2              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21f3 uni21F3              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21f4 uni21F4              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21f5 uni21F5              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21f6 uni21F6              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21f7 uni21F7              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21f8 uni21F8              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21f9 uni21F9              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21fa uni21FA              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21fb uni21FB              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21fc uni21FC              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21fd uni21FD              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21fe uni21FE              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+21ff uni21FF              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2200 universal            2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2201 uni2201              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2202 partialdiff          original\nU+2203 existential          2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans ExtraLight) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2204 uni2204              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2205 emptyset             2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2206 Delta                original\nU+2207 gradient             2.1\nU+2208 element              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2209 notelement           2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+220a uni220A              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+220b suchthat             2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+220c uni220C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+220d uni220D              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+220e uni220E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+220f product              original\nU+2210 uni2210              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2211 summation            original\nU+2212 minus                original\nU+2213 uni2213              2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2214 uni2214              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2215 uni2215              original\nU+2216 uni2216              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+2217 asteriskmath         2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2218 uni2218              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2219 uni2219              original\nU+221a radical              original\nU+221b uni221B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+221c uni221C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed) 2.26 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+221d proportional         2.1\nU+221e infinity             original\nU+221f orthogonal           2.1\nU+2220 angle                2.3\nU+2221 uni2221              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2222 uni2222              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2223 uni2223              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2224 uni2224              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2225 uni2225              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2226 uni2226              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2227 logicaland           2.1\nU+2228 logicalor            2.1\nU+2229 intersection         2.1\nU+222a union                2.1\nU+222b integral             original\nU+222c uni222C              2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+222d uni222D              2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+222e uni222E              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+222f uni222F              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2230 uni2230              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2231 uni2231              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2232 uni2232              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2233 uni2233              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2234 therefore            2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+2235 uni2235              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+2236 uni2236              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+2237 uni2237              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+2238 uni2238              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2239 uni2239              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+223a uni223A              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+223b uni223B              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+223c similar              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+223d uni223D              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+223e uni223E              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+223f uni223F              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2240 uni2240              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2241 uni2241              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2242 uni2242              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2243 uni2243              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2244 uni2244              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2245 congruent            2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2246 uni2246              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2247 uni2247              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2248 approxequal          original\nU+2249 uni2249              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+224a uni224A              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+224b uni224B              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+224c uni224C              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+224d uni224D              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+224e uni224E              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+224f uni224F              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2250 uni2250              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2251 uni2251              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2252 uni2252              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2253 uni2253              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2254 uni2254              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2255 uni2255              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2256 uni2256              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2257 uni2257              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2258 uni2258              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2259 uni2259              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+225a uni225A              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+225b uni225B              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+225c uni225C              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+225d uni225D              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+225e uni225E              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+225f uni225F              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2260 notequal             original\nU+2261 equivalence          2.1\nU+2262 uni2262              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2263 uni2263              2.1 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2264 lessequal            original\nU+2265 greaterequal         original\nU+2266 uni2266              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2267 uni2267              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2268 uni2268              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2269 uni2269              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+226a uni226A              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+226b uni226B              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+226c uni226C              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+226d uni226D              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+226e uni226E              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+226f uni226F              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2270 uni2270              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2271 uni2271              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2272 uni2272              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2273 uni2273              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2274 uni2274              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2275 uni2275              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2276 uni2276              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2277 uni2277              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2278 uni2278              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2279 uni2279              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+227a uni227A              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+227b uni227B              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+227c uni227C              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+227d uni227D              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+227e uni227E              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+227f uni227F              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2280 uni2280              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2281 uni2281              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2282 propersubset         2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2283 propersuperset       2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2284 notsubset            2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2285 uni2285              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2286 reflexsubset         2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2287 reflexsuperset       2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2288 uni2288              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2289 uni2289              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+228a uni228A              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+228b uni228B              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.6 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+228c uni228C              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+228d uni228D              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+228e uni228E              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+228f uni228F              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2290 uni2290              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2291 uni2291              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2292 uni2292              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2293 uni2293              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2294 uni2294              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2295 circleplus           2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2296 uni2296              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2297 circlemultiply       2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2298 uni2298              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2299 uni2299              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+229a uni229A              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+229b uni229B              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+229c uni229C              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+229d uni229D              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+229e uni229E              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+229f uni229F              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+22a0 uni22A0              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+22a1 uni22A1              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+22a2 uni22A2              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+22a3 uni22A3              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+22a4 uni22A4              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+22a5 perpendicular        2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+22a6 uni22A6              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+22a7 uni22A7              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+22a8 uni22A8              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+22a9 uni22A9              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+22aa uni22AA              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+22ab uni22AB              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+22ac uni22AC              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+22ad uni22AD              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+22ae uni22AE              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+22af uni22AF              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+22b0 uni22B0              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22b1 uni22B1              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22b2 uni22B2              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22b3 uni22B3              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22b4 uni22B4              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22b5 uni22B5              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22b6 uni22B6              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22b7 uni22B7              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22b8 uni22B8              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22b9 uni22B9              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22ba uni22BA              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22bb uni22BB              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22bc uni22BC              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22bd uni22BD              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22be uni22BE              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+22bf uni22BF              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+22c0 uni22C0              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22c1 uni22C1              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22c2 uni22C2              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22c3 uni22C3              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22c4 uni22C4              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22c5 dotmath              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+22c6 uni22C6              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+22c7 uni22C7              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22c8 uni22C8              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22c9 uni22C9              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22ca uni22CA              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22cb uni22CB              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22cc uni22CC              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22cd uni22CD              2.6 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.7 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+22ce uni22CE              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22cf uni22CF              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22d0 uni22D0              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22d1 uni22D1              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22d2 uni22D2              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22d3 uni22D3              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22d4 uni22D4              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22d5 uni22D5              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22d6 uni22D6              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22d7 uni22D7              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22d8 uni22D8              2.6 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+22d9 uni22D9              2.6 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+22da uni22DA              2.6 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.7 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+22db uni22DB              2.6 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique) 2.7 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+22dc uni22DC              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+22dd uni22DD              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+22de uni22DE              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+22df uni22DF              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+22e0 uni22E0              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+22e1 uni22E1              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+22e2 uni22E2              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+22e3 uni22E3              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+22e4 uni22E4              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+22e5 uni22E5              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+22e6 uni22E6              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+22e7 uni22E7              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+22e8 uni22E8              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+22e9 uni22E9              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+22ea uni22EA              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22eb uni22EB              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22ec uni22EC              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22ed uni22ED              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22ee uni22EE              2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22ef uni22EF              2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22f0 uni22F0              2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22f1 uni22F1              2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22f2 uni22F2              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22f3 uni22F3              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22f4 uni22F4              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22f5 uni22F5              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22f6 uni22F6              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22f7 uni22F7              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22f8 uni22F8              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22f9 uni22F9              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22fa uni22FA              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22fb uni22FB              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22fc uni22FC              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22fd uni22FD              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22fe uni22FE              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+22ff uni22FF              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2300 uni2300              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2301 uni2301              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2302 house                1.14\nU+2303 uni2303              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2304 uni2304              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2305 uni2305              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2306 uni2306              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2307 uni2307              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2308 uni2308              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+2309 uni2309              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+230a uni230A              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+230b uni230B              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+230c uni230C              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+230d uni230D              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+230e uni230E              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+230f uni230F              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2310 revlogicalnot        1.14\nU+2311 uni2311              1.15\nU+2312 uni2312              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2313 uni2313              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2314 uni2314              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2315 uni2315              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2318 uni2318              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+2319 uni2319              1.14\nU+231c uni231C              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+231d uni231D              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+231e uni231E              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+231f uni231F              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2320 integraltp           2.3\nU+2321 integralbt           2.3\nU+2324 uni2324              2.16 (Sans, Sans Bold, Sans Bold Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique) 2.19 (Sans Condensed Oblique, Sans Oblique)\nU+2325 uni2325              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.10 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+2326 uni2326              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2327 uni2327              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2328 uni2328              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2329 angleleft            2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic)\nU+232a angleright           2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.10 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic)\nU+232b uni232B              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+232c uni232C              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2335 uni2335              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2337 uni2337              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2338 uni2338              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2339 uni2339              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+233a uni233A              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+233b uni233B              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+233c uni233C              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+233d uni233D              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+233e uni233E              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2341 uni2341              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2342 uni2342              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2343 uni2343              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2344 uni2344              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2347 uni2347              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2348 uni2348              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2349 uni2349              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+234b uni234B              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+234c uni234C              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+234d uni234D              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2350 uni2350              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2352 uni2352              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2353 uni2353              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2354 uni2354              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2357 uni2357              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2358 uni2358              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2359 uni2359              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+235a uni235A              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+235b uni235B              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+235c uni235C              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+235e uni235E              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+235f uni235F              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2360 uni2360              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2363 uni2363              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2364 uni2364              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2365 uni2365              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2368 uni2368              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2369 uni2369              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+236b uni236B              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+236c uni236C              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+236d uni236D              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+236e uni236E              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+236f uni236F              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2370 uni2370              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2373 uni2373              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2374 uni2374              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2375 uni2375              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2376 uni2376              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2377 uni2377              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2378 uni2378              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2379 uni2379              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+237a uni237A              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+237d uni237D              1.15\nU+2380 uni2380              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2381 uni2381              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2382 uni2382              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2383 uni2383              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2387 uni2387              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2388 uni2388              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2389 uni2389              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+238a uni238A              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+238b uni238B              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2394 uni2394              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2395 uni2395              2.14 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+239b uni239B              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+239c uni239C              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+239d uni239D              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+239e uni239E              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+239f uni239F              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+23a0 uni23A0              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+23a1 uni23A1              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+23a2 uni23A2              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+23a3 uni23A3              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+23a4 uni23A4              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+23a5 uni23A5              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+23a6 uni23A6              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+23a7 uni23A7              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+23a8 uni23A8              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+23a9 uni23A9              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+23aa uni23AA              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+23ab uni23AB              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+23ac uni23AC              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+23ad uni23AD              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+23ae uni23AE              2.3\nU+23ce uni23CE              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+23cf uni23CF              2.3\nU+23e3 uni23E3              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+23e5 uni23E5              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2422 uni2422              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2423 uni2423              1.6\nU+2460 uni2460              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2461 uni2461              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2462 uni2462              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2463 uni2463              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2464 uni2464              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2465 uni2465              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2466 uni2466              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2467 uni2467              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2468 uni2468              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2469 uni2469              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2500 SF100000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2501 uni2501              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2502 SF110000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2503 uni2503              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2504 uni2504              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2505 uni2505              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2506 uni2506              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2507 uni2507              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2508 uni2508              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2509 uni2509              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+250a uni250A              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+250b uni250B              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+250c SF010000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+250d uni250D              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+250e uni250E              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+250f uni250F              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2510 SF030000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2511 uni2511              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2512 uni2512              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2513 uni2513              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2514 SF020000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2515 uni2515              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2516 uni2516              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2517 uni2517              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2518 SF040000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2519 uni2519              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+251a uni251A              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+251b uni251B              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+251c SF080000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+251d uni251D              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+251e uni251E              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+251f uni251F              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2520 uni2520              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2521 uni2521              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2522 uni2522              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2523 uni2523              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2524 SF090000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2525 uni2525              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2526 uni2526              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2527 uni2527              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2528 uni2528              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2529 uni2529              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+252a uni252A              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+252b uni252B              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+252c SF060000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+252d uni252D              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+252e uni252E              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+252f uni252F              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2530 uni2530              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2531 uni2531              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2532 uni2532              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2533 uni2533              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2534 SF070000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2535 uni2535              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2536 uni2536              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2537 uni2537              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2538 uni2538              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2539 uni2539              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+253a uni253A              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+253b uni253B              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+253c SF050000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+253d uni253D              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+253e uni253E              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+253f uni253F              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2540 uni2540              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2541 uni2541              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2542 uni2542              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2543 uni2543              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2544 uni2544              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2545 uni2545              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2546 uni2546              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2547 uni2547              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2548 uni2548              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2549 uni2549              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+254a uni254A              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+254b uni254B              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+254c uni254C              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+254d uni254D              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+254e uni254E              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+254f uni254F              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2550 SF430000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2551 SF240000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2552 SF510000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2553 SF520000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2554 SF390000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2555 SF220000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2556 SF210000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2557 SF250000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2558 SF500000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2559 SF490000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+255a SF380000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+255b SF280000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+255c SF270000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+255d SF260000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+255e SF360000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+255f SF370000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2560 SF420000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2561 SF190000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2562 SF200000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2563 SF230000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2564 SF470000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2565 SF480000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2566 SF410000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2567 SF450000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2568 SF460000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2569 SF400000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+256a SF540000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+256b SF530000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+256c SF440000             1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+256d uni256D              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+256e uni256E              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+256f uni256F              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2570 uni2570              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2571 uni2571              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2572 uni2572              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2573 uni2573              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2574 uni2574              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2575 uni2575              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2576 uni2576              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2577 uni2577              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2578 uni2578              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2579 uni2579              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+257a uni257A              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+257b uni257B              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+257c uni257C              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+257d uni257D              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+257e uni257E              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+257f uni257F              1.12 (Sans Mono, Sans Mono Oblique) 2.21 (Sans, Sans Condensed, Sans Condensed Oblique, Sans Oblique, Serif, Serif Condensed, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2580 upblock              1.14\nU+2581 uni2581              1.14\nU+2582 uni2582              1.14\nU+2583 uni2583              1.14\nU+2584 dnblock              1.14\nU+2585 uni2585              1.14\nU+2586 uni2586              1.14\nU+2587 uni2587              1.14\nU+2588 block                1.14\nU+2589 uni2589              1.14\nU+258a uni258A              1.14\nU+258b uni258B              1.14\nU+258c lfblock              1.14\nU+258d uni258D              1.14\nU+258e uni258E              1.14\nU+258f uni258F              1.14\nU+2590 rtblock              1.14\nU+2591 ltshade              1.15\nU+2592 shade                1.15\nU+2593 dkshade              1.15\nU+2594 uni2594              1.14\nU+2595 uni2595              1.14\nU+2596 uni2596              1.14\nU+2597 uni2597              1.14\nU+2598 uni2598              1.14\nU+2599 uni2599              1.14\nU+259a uni259A              1.14\nU+259b uni259B              1.14\nU+259c uni259C              1.14\nU+259d uni259D              1.14\nU+259e uni259E              1.14\nU+259f uni259F              1.14\nU+25a0 filledbox            2.3\nU+25a1 H22073               2.3\nU+25a2 uni25A2              2.3\nU+25a3 uni25A3              2.3\nU+25a4 uni25A4              2.3\nU+25a5 uni25A5              2.3\nU+25a6 uni25A6              2.3\nU+25a7 uni25A7              2.3\nU+25a8 uni25A8              2.3\nU+25a9 uni25A9              2.3\nU+25aa H18543               2.3\nU+25ab H18551               2.3\nU+25ac filledrect           2.3\nU+25ad uni25AD              2.3\nU+25ae uni25AE              2.3\nU+25af uni25AF              2.3\nU+25b0 uni25B0              2.3\nU+25b1 uni25B1              2.3\nU+25b2 triagup              2.3\nU+25b3 uni25B3              2.3\nU+25b4 uni25B4              2.3\nU+25b5 uni25B5              2.3\nU+25b6 uni25B6              2.3\nU+25b7 uni25B7              2.3\nU+25b8 uni25B8              2.3\nU+25b9 uni25B9              2.3\nU+25ba triagrt              2.3\nU+25bb uni25BB              2.3\nU+25bc triagdn              2.3\nU+25bd uni25BD              2.3\nU+25be uni25BE              2.3\nU+25bf uni25BF              2.3\nU+25c0 uni25C0              2.3\nU+25c1 uni25C1              2.3\nU+25c2 uni25C2              2.3\nU+25c3 uni25C3              2.3\nU+25c4 triaglf              2.3\nU+25c5 uni25C5              2.3\nU+25c6 uni25C6              2.3\nU+25c7 uni25C7              2.3\nU+25c8 uni25C8              2.3\nU+25c9 uni25C9              2.3\nU+25ca lozenge              original\nU+25cb circle               2.3\nU+25cc uni25CC              2.3\nU+25cd uni25CD              2.3\nU+25ce uni25CE              2.3\nU+25cf H18533               2.3\nU+25d0 uni25D0              2.3\nU+25d1 uni25D1              2.3\nU+25d2 uni25D2              2.3\nU+25d3 uni25D3              2.3\nU+25d4 uni25D4              2.3\nU+25d5 uni25D5              2.3\nU+25d6 uni25D6              2.3\nU+25d7 uni25D7              2.3\nU+25d8 invbullet            2.2\nU+25d9 invcircle            2.3\nU+25da uni25DA              2.3\nU+25db uni25DB              2.3\nU+25dc uni25DC              2.3\nU+25dd uni25DD              2.3\nU+25de uni25DE              2.3\nU+25df uni25DF              2.3\nU+25e0 uni25E0              2.3\nU+25e1 uni25E1              2.3\nU+25e2 uni25E2              2.3\nU+25e3 uni25E3              2.3\nU+25e4 uni25E4              2.3\nU+25e5 uni25E5              2.3\nU+25e6 openbullet           2.2\nU+25e7 uni25E7              2.3\nU+25e8 uni25E8              2.3\nU+25e9 uni25E9              2.3\nU+25ea uni25EA              2.3\nU+25eb uni25EB              2.3\nU+25ec uni25EC              2.3\nU+25ed uni25ED              2.3\nU+25ee uni25EE              2.3\nU+25ef uni25EF              2.3\nU+25f0 uni25F0              2.3\nU+25f1 uni25F1              2.3\nU+25f2 uni25F2              2.3\nU+25f3 uni25F3              2.3\nU+25f4 uni25F4              2.3\nU+25f5 uni25F5              2.3\nU+25f6 uni25F6              2.3\nU+25f7 uni25F7              2.3\nU+25f8 uni25F8              2.3\nU+25f9 uni25F9              2.3\nU+25fa uni25FA              2.3\nU+25fb uni25FB              2.3\nU+25fc uni25FC              2.3\nU+25fd uni25FD              2.3\nU+25fe uni25FE              2.3\nU+25ff uni25FF              2.3\nU+2600 uni2600              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2601 uni2601              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2602 uni2602              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2603 uni2603              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2604 uni2604              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2605 uni2605              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2606 uni2606              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2607 uni2607              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2608 uni2608              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2609 uni2609              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+260a uni260A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+260b uni260B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+260c uni260C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+260d uni260D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+260e uni260E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+260f uni260F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2610 uni2610              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2611 uni2611              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2612 uni2612              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2613 uni2613              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2614 uni2614              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2615 uni2615              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2616 uni2616              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2617 uni2617              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2618 uni2618              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2619 uni2619              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+261a uni261A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+261b uni261B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+261c uni261C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+261d uni261D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+261e uni261E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+261f uni261F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2620 uni2620              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2621 uni2621              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2622 uni2622              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2623 uni2623              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2624 uni2624              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2625 uni2625              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2626 uni2626              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2627 uni2627              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2628 uni2628              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2629 uni2629              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+262a uni262A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+262b uni262B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+262c uni262C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+262d uni262D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+262e uni262E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+262f uni262F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2630 uni2630              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+2631 uni2631              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+2632 uni2632              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+2633 uni2633              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+2634 uni2634              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+2635 uni2635              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+2636 uni2636              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+2637 uni2637              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+2638 uni2638              1.15\nU+2639 uni2639              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+263a smileface            2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+263b invsmileface         2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+263c sun                  2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+263d uni263D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+263e uni263E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+263f uni263F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2640 female               2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2641 uni2641              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2642 male                 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2643 uni2643              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2644 uni2644              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2645 uni2645              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2646 uni2646              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2647 uni2647              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2648 uni2648              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2649 uni2649              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+264a uni264A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+264b uni264B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+264c uni264C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+264d uni264D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+264e uni264E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+264f uni264F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2650 uni2650              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2651 uni2651              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2652 uni2652              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2653 uni2653              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2654 uni2654              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2655 uni2655              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2656 uni2656              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2657 uni2657              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2658 uni2658              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2659 uni2659              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+265a uni265A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+265b uni265B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+265c uni265C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+265d uni265D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+265e uni265E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+265f uni265F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2660 spade                2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2661 uni2661              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2662 uni2662              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2663 club                 2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2664 uni2664              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2665 heart                2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2666 diamond              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2667 uni2667              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2668 uni2668              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2669 uni2669              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+266a musicalnote          2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+266b musicalnotedbl       2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+266c uni266C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+266d uni266D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+266e uni266E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+266f uni266F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2670 uni2670              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2671 uni2671              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2672 uni2672              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2673 uni2673              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2674 uni2674              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2675 uni2675              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2676 uni2676              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2677 uni2677              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2678 uni2678              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2679 uni2679              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+267a uni267A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+267b uni267B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+267c uni267C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+267d uni267D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+267e uni267E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+267f uni267F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2680 uni2680              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.7 (Sans Mono, Sans Mono Bold)\nU+2681 uni2681              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.7 (Sans Mono, Sans Mono Bold)\nU+2682 uni2682              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.7 (Sans Mono, Sans Mono Bold)\nU+2683 uni2683              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.7 (Sans Mono, Sans Mono Bold)\nU+2684 uni2684              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.7 (Sans Mono, Sans Mono Bold)\nU+2685 uni2685              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.4 (Sans ExtraLight) 2.7 (Sans Mono, Sans Mono Bold)\nU+2686 uni2686              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2687 uni2687              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2688 uni2688              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2689 uni2689              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+268a uni268A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+268b uni268B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+268c uni268C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+268d uni268D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+268e uni268E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+268f uni268F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+2690 uni2690              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2691 uni2691              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2692 uni2692              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2693 uni2693              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2694 uni2694              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2695 uni2695              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2696 uni2696              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2697 uni2697              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2698 uni2698              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2699 uni2699              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+269a uni269A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+269b uni269B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+269c uni269C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+26a0 uni26A0              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+26a1 uni26A1              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+26a2 uni26A2              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+26a3 uni26A3              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+26a4 uni26A4              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+26a5 uni26A5              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+26a6 uni26A6              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+26a7 uni26A7              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+26a8 uni26A8              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+26a9 uni26A9              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+26aa uni26AA              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+26ab uni26AB              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+26ac uni26AC              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+26ad uni26AD              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+26ae uni26AE              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+26af uni26AF              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+26b0 uni26B0              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+26b1 uni26B1              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+26b2 uni26B2              2.12 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+26b3 uni26B3              2.29 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+26b4 uni26B4              2.29 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+26b5 uni26B5              2.29 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+26b6 uni26B6              2.29 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+26b7 uni26B7              2.29 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+26b8 uni26B8              2.29 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2701 uni2701              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2702 uni2702              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2703 uni2703              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2704 uni2704              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2706 uni2706              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2707 uni2707              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2708 uni2708              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2709 uni2709              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+270c uni270C              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+270d uni270D              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+270e uni270E              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+270f uni270F              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2710 uni2710              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2711 uni2711              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2712 uni2712              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2713 uni2713              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2714 uni2714              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2715 uni2715              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2716 uni2716              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2717 uni2717              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2718 uni2718              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2719 uni2719              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+271a uni271A              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+271b uni271B              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+271c uni271C              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+271d uni271D              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+271e uni271E              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+271f uni271F              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2720 uni2720              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2721 uni2721              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2722 uni2722              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2723 uni2723              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2724 uni2724              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2725 uni2725              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2726 uni2726              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2727 uni2727              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2729 uni2729              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+272a uni272A              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+272b uni272B              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+272c uni272C              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+272d uni272D              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+272e uni272E              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+272f uni272F              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2730 uni2730              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2731 uni2731              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2732 uni2732              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2733 uni2733              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2734 uni2734              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2735 uni2735              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2736 uni2736              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2737 uni2737              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2738 uni2738              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2739 uni2739              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+273a uni273A              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+273b uni273B              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+273c uni273C              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+273d uni273D              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+273e uni273E              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+273f uni273F              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2740 uni2740              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2741 uni2741              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2742 uni2742              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2743 uni2743              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2744 uni2744              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2745 uni2745              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2746 uni2746              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2747 uni2747              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2748 uni2748              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2749 uni2749              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+274a uni274A              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+274b uni274B              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+274d uni274D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+274f uni274F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2750 uni2750              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2751 uni2751              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2752 uni2752              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2756 uni2756              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2758 uni2758              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2759 uni2759              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+275a uni275A              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+275b uni275B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+275c uni275C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+275d uni275D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+275e uni275E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2761 uni2761              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2762 uni2762              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2763 uni2763              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2764 uni2764              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2765 uni2765              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2766 uni2766              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2767 uni2767              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2768 uni2768              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2769 uni2769              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+276a uni276A              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+276b uni276B              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+276c uni276C              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+276d uni276D              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+276e uni276E              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+276f uni276F              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2770 uni2770              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2771 uni2771              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2772 uni2772              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2773 uni2773              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2774 uni2774              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2775 uni2775              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Sans Mono, Sans Mono Bold)\nU+2776 uni2776              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2777 uni2777              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2778 uni2778              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2779 uni2779              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+277a uni277A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+277b uni277B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+277c uni277C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+277d uni277D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+277e uni277E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+277f uni277F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2780 uni2780              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2781 uni2781              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2782 uni2782              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2783 uni2783              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2784 uni2784              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2785 uni2785              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2786 uni2786              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2787 uni2787              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2788 uni2788              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2789 uni2789              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+278a uni278A              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+278b uni278B              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+278c uni278C              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+278d uni278D              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+278e uni278E              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+278f uni278F              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2790 uni2790              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2791 uni2791              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2792 uni2792              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2793 uni2793              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2794 uni2794              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2798 uni2798              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+2799 uni2799              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+279a uni279A              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+279b uni279B              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+279c uni279C              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+279d uni279D              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+279e uni279E              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+279f uni279F              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27a0 uni27A0              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27a1 uni27A1              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+27a2 uni27A2              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27a3 uni27A3              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27a4 uni27A4              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27a5 uni27A5              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27a6 uni27A6              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27a7 uni27A7              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27a8 uni27A8              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27a9 uni27A9              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27aa uni27AA              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27ab uni27AB              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27ac uni27AC              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27ad uni27AD              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27ae uni27AE              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27af uni27AF              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27b1 uni27B1              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27b2 uni27B2              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27b3 uni27B3              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27b4 uni27B4              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27b5 uni27B5              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27b6 uni27B6              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27b7 uni27B7              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27b8 uni27B8              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27b9 uni27B9              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27ba uni27BA              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27bb uni27BB              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27bc uni27BC              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27bd uni27BD              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27be uni27BE              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.7 (Sans Mono, Sans Mono Bold)\nU+27bf uni27BF              2.7 (Sans Mono Bold)\nU+27c5 uni27C5              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+27c6 uni27C6              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+27e0 uni27E0              2.3\nU+27e6 uni27E6              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+27e7 uni27E7              2.15 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+27e8 uni27E8              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+27e9 uni27E9              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.13 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+27ea uni27EA              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+27eb uni27EB              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+27f0 uni27F0              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+27f1 uni27F1              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+27f2 uni27F2              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+27f3 uni27F3              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+27f4 uni27F4              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+27f5 uni27F5              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+27f6 uni27F6              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+27f7 uni27F7              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+27f8 uni27F8              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+27f9 uni27F9              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+27fa uni27FA              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+27fb uni27FB              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+27fc uni27FC              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+27fd uni27FD              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+27fe uni27FE              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+27ff uni27FF              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2800 uni2800              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2801 uni2801              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2802 uni2802              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2803 uni2803              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2804 uni2804              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2805 uni2805              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2806 uni2806              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2807 uni2807              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2808 uni2808              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2809 uni2809              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+280a uni280A              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+280b uni280B              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+280c uni280C              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+280d uni280D              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+280e uni280E              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+280f uni280F              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2810 uni2810              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2811 uni2811              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2812 uni2812              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2813 uni2813              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2814 uni2814              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2815 uni2815              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2816 uni2816              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2817 uni2817              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2818 uni2818              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2819 uni2819              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+281a uni281A              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+281b uni281B              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+281c uni281C              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+281d uni281D              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+281e uni281E              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+281f uni281F              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2820 uni2820              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2821 uni2821              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2822 uni2822              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2823 uni2823              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2824 uni2824              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2825 uni2825              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2826 uni2826              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2827 uni2827              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2828 uni2828              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2829 uni2829              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+282a uni282A              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+282b uni282B              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+282c uni282C              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+282d uni282D              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+282e uni282E              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+282f uni282F              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2830 uni2830              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2831 uni2831              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2832 uni2832              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2833 uni2833              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2834 uni2834              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2835 uni2835              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2836 uni2836              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2837 uni2837              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2838 uni2838              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2839 uni2839              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+283a uni283A              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+283b uni283B              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+283c uni283C              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+283d uni283D              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+283e uni283E              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+283f uni283F              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2840 uni2840              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2841 uni2841              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2842 uni2842              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2843 uni2843              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2844 uni2844              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2845 uni2845              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2846 uni2846              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2847 uni2847              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2848 uni2848              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2849 uni2849              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+284a uni284A              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+284b uni284B              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+284c uni284C              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+284d uni284D              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+284e uni284E              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+284f uni284F              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2850 uni2850              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2851 uni2851              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2852 uni2852              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2853 uni2853              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2854 uni2854              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2855 uni2855              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2856 uni2856              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2857 uni2857              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2858 uni2858              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2859 uni2859              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+285a uni285A              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+285b uni285B              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+285c uni285C              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+285d uni285D              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+285e uni285E              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+285f uni285F              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2860 uni2860              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2861 uni2861              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2862 uni2862              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2863 uni2863              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2864 uni2864              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2865 uni2865              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2866 uni2866              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2867 uni2867              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2868 uni2868              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2869 uni2869              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+286a uni286A              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+286b uni286B              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+286c uni286C              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+286d uni286D              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+286e uni286E              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+286f uni286F              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2870 uni2870              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2871 uni2871              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2872 uni2872              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2873 uni2873              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2874 uni2874              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2875 uni2875              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2876 uni2876              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2877 uni2877              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2878 uni2878              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2879 uni2879              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+287a uni287A              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+287b uni287B              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+287c uni287C              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+287d uni287D              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+287e uni287E              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+287f uni287F              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2880 uni2880              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2881 uni2881              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2882 uni2882              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2883 uni2883              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2884 uni2884              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2885 uni2885              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2886 uni2886              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2887 uni2887              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2888 uni2888              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2889 uni2889              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+288a uni288A              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+288b uni288B              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+288c uni288C              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+288d uni288D              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+288e uni288E              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+288f uni288F              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2890 uni2890              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2891 uni2891              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2892 uni2892              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2893 uni2893              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2894 uni2894              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2895 uni2895              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2896 uni2896              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2897 uni2897              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2898 uni2898              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2899 uni2899              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+289a uni289A              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+289b uni289B              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+289c uni289C              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+289d uni289D              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+289e uni289E              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+289f uni289F              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28a0 uni28A0              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28a1 uni28A1              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28a2 uni28A2              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28a3 uni28A3              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28a4 uni28A4              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28a5 uni28A5              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28a6 uni28A6              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28a7 uni28A7              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28a8 uni28A8              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28a9 uni28A9              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28aa uni28AA              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28ab uni28AB              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28ac uni28AC              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28ad uni28AD              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28ae uni28AE              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28af uni28AF              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28b0 uni28B0              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28b1 uni28B1              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28b2 uni28B2              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28b3 uni28B3              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28b4 uni28B4              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28b5 uni28B5              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28b6 uni28B6              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28b7 uni28B7              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28b8 uni28B8              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28b9 uni28B9              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28ba uni28BA              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28bb uni28BB              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28bc uni28BC              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28bd uni28BD              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28be uni28BE              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28bf uni28BF              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28c0 uni28C0              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28c1 uni28C1              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28c2 uni28C2              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28c3 uni28C3              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28c4 uni28C4              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28c5 uni28C5              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28c6 uni28C6              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28c7 uni28C7              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28c8 uni28C8              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28c9 uni28C9              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28ca uni28CA              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28cb uni28CB              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28cc uni28CC              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28cd uni28CD              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28ce uni28CE              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28cf uni28CF              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28d0 uni28D0              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28d1 uni28D1              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28d2 uni28D2              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28d3 uni28D3              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28d4 uni28D4              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28d5 uni28D5              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28d6 uni28D6              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28d7 uni28D7              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28d8 uni28D8              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28d9 uni28D9              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28da uni28DA              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28db uni28DB              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28dc uni28DC              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28dd uni28DD              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28de uni28DE              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28df uni28DF              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28e0 uni28E0              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28e1 uni28E1              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28e2 uni28E2              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28e3 uni28E3              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28e4 uni28E4              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28e5 uni28E5              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28e6 uni28E6              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28e7 uni28E7              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28e8 uni28E8              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28e9 uni28E9              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28ea uni28EA              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28eb uni28EB              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28ec uni28EC              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28ed uni28ED              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28ee uni28EE              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28ef uni28EF              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28f0 uni28F0              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28f1 uni28F1              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28f2 uni28F2              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28f3 uni28F3              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28f4 uni28F4              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28f5 uni28F5              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28f6 uni28F6              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28f7 uni28F7              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28f8 uni28F8              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28f9 uni28F9              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28fa uni28FA              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28fb uni28FB              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28fc uni28FC              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28fd uni28FD              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28fe uni28FE              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+28ff uni28FF              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2900 uni2900              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2901 uni2901              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2902 uni2902              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2903 uni2903              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2904 uni2904              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2905 uni2905              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2906 uni2906              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2907 uni2907              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2908 uni2908              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2909 uni2909              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+290a uni290A              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+290b uni290B              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+290c uni290C              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+290d uni290D              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+290e uni290E              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+290f uni290F              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2910 uni2910              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2911 uni2911              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2912 uni2912              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2913 uni2913              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2914 uni2914              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2915 uni2915              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2916 uni2916              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2917 uni2917              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2918 uni2918              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2919 uni2919              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+291a uni291A              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+291b uni291B              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+291c uni291C              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+291d uni291D              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+291e uni291E              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+291f uni291F              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2920 uni2920              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2921 uni2921              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2922 uni2922              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2923 uni2923              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2924 uni2924              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2925 uni2925              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2926 uni2926              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2927 uni2927              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2928 uni2928              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2929 uni2929              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+292a uni292A              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+292b uni292B              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+292c uni292C              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+292d uni292D              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+292e uni292E              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+292f uni292F              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2930 uni2930              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2931 uni2931              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2932 uni2932              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2933 uni2933              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2934 uni2934              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2935 uni2935              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2936 uni2936              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2937 uni2937              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2938 uni2938              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2939 uni2939              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+293a uni293A              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+293b uni293B              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+293c uni293C              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+293d uni293D              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+293e uni293E              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+293f uni293F              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2940 uni2940              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2941 uni2941              2.13 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2942 uni2942              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2943 uni2943              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2944 uni2944              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2945 uni2945              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2946 uni2946              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2947 uni2947              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2948 uni2948              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2949 uni2949              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+294a uni294A              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+294b uni294B              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+294c uni294C              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+294d uni294D              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+294e uni294E              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+294f uni294F              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2950 uni2950              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2951 uni2951              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2952 uni2952              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2953 uni2953              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2954 uni2954              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2955 uni2955              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2956 uni2956              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2957 uni2957              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2958 uni2958              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2959 uni2959              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+295a uni295A              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+295b uni295B              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+295c uni295C              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+295d uni295D              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+295e uni295E              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+295f uni295F              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2960 uni2960              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2961 uni2961              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2962 uni2962              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2963 uni2963              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2964 uni2964              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2965 uni2965              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2966 uni2966              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2967 uni2967              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2968 uni2968              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2969 uni2969              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+296a uni296A              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+296b uni296B              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+296c uni296C              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+296d uni296D              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+296e uni296E              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+296f uni296F              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2970 uni2970              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2971 uni2971              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2972 uni2972              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2973 uni2973              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2974 uni2974              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2975 uni2975              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2976 uni2976              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2977 uni2977              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2978 uni2978              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2979 uni2979              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+297a uni297A              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+297b uni297B              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+297c uni297C              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+297d uni297D              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+297e uni297E              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+297f uni297F              2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2983 uni2983              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2984 uni2984              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+29ce uni29CE              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+29cf uni29CF              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+29d0 uni29D0              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+29d1 uni29D1              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+29d2 uni29D2              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+29d3 uni29D3              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+29d4 uni29D4              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+29d5 uni29D5              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+29eb uni29EB              2.2\nU+29fa uni29FA              2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+29fb uni29FB              2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+2a00 uni2A00              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a01 uni2A01              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a02 uni2A02              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a0c uni2A0C              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2a0d uni2A0D              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2a0e uni2A0E              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.9 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2a0f uni2A0F              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a10 uni2A10              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a11 uni2A11              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a12 uni2A12              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a13 uni2A13              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a14 uni2A14              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a15 uni2A15              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a16 uni2A16              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a17 uni2A17              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a18 uni2A18              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a19 uni2A19              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a1a uni2A1A              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a1b uni2A1B              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a1c uni2A1C              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a2f uni2A2F              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+2a7d uni2A7D              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a7e uni2A7E              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a7f uni2A7F              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a80 uni2A80              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a81 uni2A81              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a82 uni2A82              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a83 uni2A83              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a84 uni2A84              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a85 uni2A85              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a86 uni2A86              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a87 uni2A87              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a88 uni2A88              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a89 uni2A89              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a8a uni2A8A              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a8b uni2A8B              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a8c uni2A8C              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a8d uni2A8D              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a8e uni2A8E              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a8f uni2A8F              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a90 uni2A90              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a91 uni2A91              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a92 uni2A92              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a93 uni2A93              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a94 uni2A94              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a95 uni2A95              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a96 uni2A96              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a97 uni2A97              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a98 uni2A98              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a99 uni2A99              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a9a uni2A9A              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a9b uni2A9B              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a9c uni2A9C              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a9d uni2A9D              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a9e uni2A9E              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2a9f uni2A9F              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2aa0 uni2AA0              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2aae uni2AAE              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2aaf uni2AAF              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2ab0 uni2AB0              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2ab1 uni2AB1              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2ab2 uni2AB2              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2ab3 uni2AB3              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2ab4 uni2AB4              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2ab5 uni2AB5              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2ab6 uni2AB6              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2ab7 uni2AB7              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2ab8 uni2AB8              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2ab9 uni2AB9              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2aba uni2ABA              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2af9 uni2AF9              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2afa uni2AFA              2.7 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2b00 uni2B00              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2b01 uni2B01              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2b02 uni2B02              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2b03 uni2B03              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2b04 uni2B04              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2b05 uni2B05              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2b06 uni2B06              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2b07 uni2B07              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2b08 uni2B08              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2b09 uni2B09              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2b0a uni2B0A              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2b0b uni2B0B              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2b0c uni2B0C              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2b0d uni2B0D              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2b0e uni2B0E              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2b0f uni2B0F              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2b10 uni2B10              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2b11 uni2B11              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2b12 uni2B12              2.3\nU+2b13 uni2B13              2.3\nU+2b14 uni2B14              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+2b15 uni2B15              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+2b16 uni2B16              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+2b17 uni2B17              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+2b18 uni2B18              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+2b19 uni2B19              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+2b1a uni2B1A              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Italic) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+2b1f uni2B1F              2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold)\nU+2b20 uni2B20              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2b21 uni2B21              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2b22 uni2B22              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2b23 uni2B23              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2b24 uni2B24              2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold)\nU+2b53 uni2B53              2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold)\nU+2b54 uni2B54              2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold)\nU+2c60 uni2C60              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2c61 uni2C61              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2c62 uni2C62              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2c63 uni2C63              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2c64 uni2C64              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.27 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2c65 uni2C65              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2c66 uni2C66              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2c67 uni2C67              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2c68 uni2C68              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2c69 uni2C69              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2c6a uni2C6A              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2c6b uni2C6B              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2c6c uni2C6C              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique) 2.18 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+2c6d uni2C6D              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2c6e uni2C6E              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2c6f uni2C6F              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2c71 uni2C71              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2c72 uni2C72              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2c73 uni2C73              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2c74 uni2C74              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+2c75 uni2C75              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.20 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+2c76 uni2C76              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.20 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+2c77 uni2C77              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.18 (Sans ExtraLight, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.20 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.23 (Serif Italic Condensed)\nU+2c79 uni2C79              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2c7a uni2C7A              2.27\nU+2c7b uni2C7B              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+2c7c uni2C7C              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2c7d uni2C7D              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.28 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+2d00 uni2D00              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d01 uni2D01              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d02 uni2D02              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d03 uni2D03              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d04 uni2D04              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d05 uni2D05              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d06 uni2D06              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d07 uni2D07              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d08 uni2D08              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d09 uni2D09              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d0a uni2D0A              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d0b uni2D0B              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d0c uni2D0C              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d0d uni2D0D              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d0e uni2D0E              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d0f uni2D0F              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d10 uni2D10              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d11 uni2D11              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d12 uni2D12              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d13 uni2D13              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d14 uni2D14              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d15 uni2D15              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d16 uni2D16              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d17 uni2D17              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d18 uni2D18              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d19 uni2D19              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d1a uni2D1A              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d1b uni2D1B              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d1c uni2D1C              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d1d uni2D1D              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d1e uni2D1E              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d1f uni2D1F              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d20 uni2D20              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d21 uni2D21              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d22 uni2D22              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d23 uni2D23              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d24 uni2D24              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d25 uni2D25              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+2d30 uni2D30              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d31 uni2D31              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d32 uni2D32              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d33 uni2D33              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d34 uni2D34              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d35 uni2D35              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d36 uni2D36              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d37 uni2D37              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d38 uni2D38              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d39 uni2D39              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d3a uni2D3A              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d3b uni2D3B              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d3c uni2D3C              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d3d uni2D3D              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d3e uni2D3E              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d3f uni2D3F              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d40 uni2D40              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d41 uni2D41              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d42 uni2D42              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d43 uni2D43              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d44 uni2D44              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d45 uni2D45              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d46 uni2D46              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d47 uni2D47              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d48 uni2D48              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d49 uni2D49              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d4a uni2D4A              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d4b uni2D4B              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d4c uni2D4C              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d4d uni2D4D              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d4e uni2D4E              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d4f uni2D4F              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d50 uni2D50              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d51 uni2D51              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d52 uni2D52              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d53 uni2D53              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d54 uni2D54              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d55 uni2D55              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d56 uni2D56              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d57 uni2D57              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d58 uni2D58              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d59 uni2D59              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d5a uni2D5A              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d5b uni2D5B              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d5c uni2D5C              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d5d uni2D5D              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d5e uni2D5E              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d5f uni2D5F              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d60 uni2D60              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d61 uni2D61              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d62 uni2D62              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d63 uni2D63              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d64 uni2D64              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d65 uni2D65              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2d6f uni2D6F              2.18 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+2e18 uni2E18              2.26\nU+2e22 uni2E22              2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.30 (Sans Bold)\nU+2e23 uni2E23              2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.30 (Sans Bold)\nU+2e24 uni2E24              2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.30 (Sans Bold)\nU+2e25 uni2E25              2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed) 2.30 (Sans Bold)\nU+2e2e uni2E2E              2.26\nU+4dc0 uni4DC0              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dc1 uni4DC1              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dc2 uni4DC2              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dc3 uni4DC3              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dc4 uni4DC4              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dc5 uni4DC5              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dc6 uni4DC6              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dc7 uni4DC7              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dc8 uni4DC8              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dc9 uni4DC9              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dca uni4DCA              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dcb uni4DCB              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dcc uni4DCC              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dcd uni4DCD              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dce uni4DCE              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dcf uni4DCF              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dd0 uni4DD0              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dd1 uni4DD1              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dd2 uni4DD2              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dd3 uni4DD3              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dd4 uni4DD4              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dd5 uni4DD5              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dd6 uni4DD6              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dd7 uni4DD7              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dd8 uni4DD8              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dd9 uni4DD9              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dda uni4DDA              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4ddb uni4DDB              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4ddc uni4DDC              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4ddd uni4DDD              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dde uni4DDE              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4ddf uni4DDF              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4de0 uni4DE0              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4de1 uni4DE1              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4de2 uni4DE2              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4de3 uni4DE3              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4de4 uni4DE4              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4de5 uni4DE5              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4de6 uni4DE6              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4de7 uni4DE7              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4de8 uni4DE8              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4de9 uni4DE9              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dea uni4DEA              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4deb uni4DEB              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dec uni4DEC              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4ded uni4DED              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dee uni4DEE              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4def uni4DEF              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4df0 uni4DF0              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4df1 uni4DF1              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4df2 uni4DF2              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4df3 uni4DF3              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4df4 uni4DF4              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4df5 uni4DF5              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4df6 uni4DF6              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4df7 uni4DF7              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4df8 uni4DF8              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4df9 uni4DF9              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dfa uni4DFA              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dfb uni4DFB              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dfc uni4DFC              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dfd uni4DFD              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dfe uni4DFE              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+4dff uni4DFF              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a644 uniA644              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+a645 uniA645              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+a646 uniA646              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+a647 uniA647              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+a64c uniA64C              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a64d uniA64D              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a650 uniA650              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+a651 uniA651              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+a654 uniA654              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+a655 uniA655              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+a656 uniA656              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+a657 uniA657              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+a662 uniA662              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a663 uniA663              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a664 uniA664              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a665 uniA665              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a666 uniA666              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a667 uniA667              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a668 uniA668              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a669 uniA669              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a66a uniA66A              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a66b uniA66B              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a66c uniA66C              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a66d uniA66D              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a66e uniA66E              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a68a uniA68A              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a68b uniA68B              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a68c uniA68C              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a68d uniA68D              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a694 uniA694              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a695 uniA695              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a708 uniA708              2.27\nU+a709 uniA709              2.27\nU+a70a uniA70A              2.27\nU+a70b uniA70B              2.27\nU+a70c uniA70C              2.27\nU+a70d uniA70D              2.27\nU+a70e uniA70E              2.27\nU+a70f uniA70F              2.27\nU+a710 uniA710              2.27\nU+a711 uniA711              2.27\nU+a712 uniA712              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+a713 uniA713              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+a714 uniA714              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+a715 uniA715              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+a716 uniA716              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.27 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+a71b uniA71B              2.27\nU+a71c uniA71C              2.27\nU+a71d uniA71D              2.27\nU+a71e uniA71E              2.27\nU+a71f uniA71F              2.27\nU+a726 uniA726              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.30 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+a727 uniA727              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique) 2.30 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique)\nU+a728 uniA728              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a729 uniA729              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a72a uniA72A              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a72b uniA72B              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a730 uniA730              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a731 uniA731              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a732 uniA732              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a733 uniA733              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a734 uniA734              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a735 uniA735              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a736 uniA736              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a737 uniA737              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a738 uniA738              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a739 uniA739              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a73a uniA73A              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a73b uniA73B              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a73c uniA73C              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a73d uniA73D              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a73e uniA73E              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a73f uniA73F              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a746 uniA746              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a747 uniA747              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a748 uniA748              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a749 uniA749              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a74a uniA74A              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a74b uniA74B              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a74e uniA74E              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a74f uniA74F              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a780 uniA780              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a781 uniA781              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a782 uniA782              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a783 uniA783              2.27 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+a789 uniA789              2.28 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+a78a uniA78A              2.28 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique)\nU+a78b uniA78B              2.26\nU+a78c uniA78C              2.26\nU+a7fb uniA7FB              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a7fc uniA7FC              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a7fd uniA7FD              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a7fe uniA7FE              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+a7ff uniA7FF              2.26 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+e000 uniE000              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+e001 uniE001              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+e002 uniE002              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+e003 uniE003              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+e004 uniE004              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+e005 uniE005              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+e006 uniE006              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+e007 uniE007              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+e008 uniE008              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique)\nU+e009 uniE009              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+e00a uniE00A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+e00b uniE00B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+e00c uniE00C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+e00d uniE00D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+e00e uniE00E              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+e00f uniE00F              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+e010 uniE010              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+e011 uniE011              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+e012 uniE012              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+e013 uniE013              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+e014 uniE014              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight)\nU+e015 uniE015              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+e016 uniE016              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+e017 uniE017              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+e018 uniE018              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+e019 uniE019              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+e01a uniE01A              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+e01b uniE01B              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+e01c uniE01C              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+e01d uniE01D              2.4 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+f000 uniF000              2.10 (Sans) 2.11 (Sans Condensed)\nU+f001 uniF001              2.10 (Sans) 2.11 (Sans Condensed)\nU+f208 uniF208              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+f20a uniF20A              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+f215 uniF215              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+f216 uniF216              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+f217 uniF217              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+f21a uniF21A              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+f21b uniF21B              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+f25f uniF25F              2.6 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+f400 uniF400              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f401 uniF401              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f402 uniF402              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f403 uniF403              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f404 uniF404              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f405 uniF405              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f406 uniF406              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f407 uniF407              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f408 uniF408              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f409 uniF409              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f40a uniF40A              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f40b uniF40B              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f40c uniF40C              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f40d uniF40D              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f40e uniF40E              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f40f uniF40F              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f410 uniF410              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f411 uniF411              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f412 uniF412              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f413 uniF413              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f414 uniF414              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f415 uniF415              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f416 uniF416              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f417 uniF417              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f418 uniF418              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f419 uniF419              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f41a uniF41A              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f41b uniF41B              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f41c uniF41C              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f41d uniF41D              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f41e uniF41E              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f41f uniF41F              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f420 uniF420              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f421 uniF421              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f422 uniF422              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f423 uniF423              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f424 uniF424              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f425 uniF425              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f426 uniF426              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f428 uniF428              2.28 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Italic, Serif Italic Condensed)\nU+f5c5 uniF5C5              2.9 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+f6c4 uniF6C4              2.10 (Serif Bold Italic, Serif Italic) 2.11 (Serif Condensed Bold Italic, Serif Condensed Italic) 2.23 (Serif Italic Condensed)\nU+f6c5 uniF6C5              2.5 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.7 (Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique) 2.9 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold, Sans Condensed Oblique, Sans Oblique) 2.18 (Sans ExtraLight) 2.23 (Serif Italic Condensed)\nU+f6c6 uniF6C6              2.5 (Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+f6c7 uniF6C7              2.11 (Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+f6c8 uniF6C8              2.11 (Serif Bold Italic, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+f6d1 cyrBreve             2.5 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+f6d4 cyrbreve             2.5 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fb00 uniFB00              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.8 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fb01 fi                   original\nU+fb02 fl                   original\nU+fb03 uniFB03              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.8 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fb04 uniFB04              2.2 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.5 (Sans ExtraLight) 2.8 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fb05 uniFB05              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fb06 uniFB06              2.5 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.8 (Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fb13 uniFB13              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb14 uniFB14              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb15 uniFB15              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb16 uniFB16              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb17 uniFB17              2.3 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb1d uniFB1D              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb1e uniFB1E              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+fb1f uniFB1F              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb20 uniFB20              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb21 uniFB21              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+fb22 uniFB22              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+fb23 uniFB23              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+fb24 uniFB24              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+fb25 uniFB25              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+fb26 uniFB26              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+fb27 uniFB27              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+fb28 uniFB28              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+fb29 uniFB29              2.10 (Sans, Sans Bold, Sans Bold Oblique, Sans ExtraLight, Sans Oblique) 2.11 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+fb2a uniFB2A              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb2b uniFB2B              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb2c uniFB2C              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb2d uniFB2D              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb2e uniFB2E              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb2f uniFB2F              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb30 uniFB30              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb31 uniFB31              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb32 uniFB32              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb33 uniFB33              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb34 uniFB34              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb35 uniFB35              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb36 uniFB36              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb37 uniFB37              2.11 (Sans Condensed Oblique, Sans Oblique)\nU+fb38 uniFB38              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb39 uniFB39              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb3a uniFB3A              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb3b uniFB3B              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb3c uniFB3C              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb3e uniFB3E              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb40 uniFB40              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb41 uniFB41              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb43 uniFB43              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb44 uniFB44              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb46 uniFB46              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb47 uniFB47              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb48 uniFB48              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb49 uniFB49              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb4a uniFB4A              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb4b uniFB4B              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb4c uniFB4C              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb4d uniFB4D              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb4e uniFB4E              2.9 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fb4f uniFB4F              2.16 (Sans, Sans Bold, Sans Bold Oblique, Sans Oblique) 2.17 (Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique)\nU+fb52 uniFB52              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb53 uniFB53              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb54 uniFB54              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb55 uniFB55              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb56 uniFB56              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb57 uniFB57              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb58 uniFB58              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb59 uniFB59              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb5a uniFB5A              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb5b uniFB5B              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb5c uniFB5C              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb5d uniFB5D              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb5e uniFB5E              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb5f uniFB5F              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb60 uniFB60              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb61 uniFB61              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb62 uniFB62              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb63 uniFB63              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb64 uniFB64              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb65 uniFB65              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb66 uniFB66              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb67 uniFB67              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb68 uniFB68              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb69 uniFB69              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb6a uniFB6A              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb6b uniFB6B              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb6c uniFB6C              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb6d uniFB6D              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb6e uniFB6E              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb6f uniFB6F              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb70 uniFB70              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb71 uniFB71              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb72 uniFB72              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb73 uniFB73              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb74 uniFB74              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb75 uniFB75              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb76 uniFB76              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb77 uniFB77              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb78 uniFB78              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb79 uniFB79              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb7a uniFB7A              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb7b uniFB7B              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb7c uniFB7C              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb7d uniFB7D              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb7e uniFB7E              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb7f uniFB7F              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb80 uniFB80              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb81 uniFB81              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb8a uniFB8A              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb8b uniFB8B              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb8c uniFB8C              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb8d uniFB8D              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb8e uniFB8E              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb8f uniFB8F              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb90 uniFB90              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb91 uniFB91              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb92 uniFB92              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb93 uniFB93              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb94 uniFB94              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb95 uniFB95              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb9e uniFB9E              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fb9f uniFB9F              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fbaa uniFBAA              2.16 (Sans Mono, Sans Mono Bold)\nU+fbab uniFBAB              2.16 (Sans Mono, Sans Mono Bold)\nU+fbac uniFBAC              2.16 (Sans Mono, Sans Mono Bold)\nU+fbad uniFBAD              2.16 (Sans Mono, Sans Mono Bold)\nU+fbd9 uniFBD9              2.7 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+fbda uniFBDA              2.7 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold)\nU+fbe8 uniFBE8              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fbe9 uniFBE9              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fbfc uniFBFC              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fbfd uniFBFD              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fbfe uniFBFE              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fbff uniFBFF              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe00 uniFE00              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fe01 uniFE01              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fe02 uniFE02              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fe03 uniFE03              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fe04 uniFE04              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fe05 uniFE05              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fe06 uniFE06              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fe07 uniFE07              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fe08 uniFE08              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fe09 uniFE09              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fe0a uniFE0A              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fe0b uniFE0B              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fe0c uniFE0C              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fe0d uniFE0D              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fe0e uniFE0E              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fe0f uniFE0F              2.14 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans ExtraLight, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fe20 uniFE20              2.21 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fe21 uniFE21              2.21 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fe22 uniFE22              2.21 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fe23 uniFE23              2.21 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+fe70 uniFE70              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe71 uniFE71              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe72 uniFE72              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe73 uniFE73              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe74 uniFE74              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe76 uniFE76              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe77 uniFE77              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe78 uniFE78              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe79 uniFE79              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe7a uniFE7A              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe7b uniFE7B              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe7c uniFE7C              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe7d uniFE7D              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe7e uniFE7E              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe7f uniFE7F              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe80 uniFE80              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe81 uniFE81              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe82 uniFE82              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe83 uniFE83              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe84 uniFE84              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe85 uniFE85              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe86 uniFE86              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe87 uniFE87              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe88 uniFE88              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe89 uniFE89              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe8a uniFE8A              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe8b uniFE8B              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe8c uniFE8C              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe8d uniFE8D              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe8e uniFE8E              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe8f uniFE8F              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe90 uniFE90              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe91 uniFE91              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe92 uniFE92              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe93 uniFE93              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe94 uniFE94              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe95 uniFE95              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe96 uniFE96              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe97 uniFE97              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe98 uniFE98              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe99 uniFE99              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe9a uniFE9A              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe9b uniFE9B              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe9c uniFE9C              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe9d uniFE9D              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe9e uniFE9E              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fe9f uniFE9F              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fea0 uniFEA0              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fea1 uniFEA1              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fea2 uniFEA2              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fea3 uniFEA3              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fea4 uniFEA4              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fea5 uniFEA5              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fea6 uniFEA6              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fea7 uniFEA7              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fea8 uniFEA8              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fea9 uniFEA9              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feaa uniFEAA              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feab uniFEAB              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feac uniFEAC              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fead uniFEAD              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feae uniFEAE              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feaf uniFEAF              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feb0 uniFEB0              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feb1 uniFEB1              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feb2 uniFEB2              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feb3 uniFEB3              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feb4 uniFEB4              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feb5 uniFEB5              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feb6 uniFEB6              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feb7 uniFEB7              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feb8 uniFEB8              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feb9 uniFEB9              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feba uniFEBA              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+febb uniFEBB              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+febc uniFEBC              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+febd uniFEBD              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+febe uniFEBE              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+febf uniFEBF              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fec0 uniFEC0              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fec1 uniFEC1              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fec2 uniFEC2              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fec3 uniFEC3              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fec4 uniFEC4              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fec5 uniFEC5              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fec6 uniFEC6              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fec7 uniFEC7              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fec8 uniFEC8              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fec9 uniFEC9              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feca uniFECA              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fecb uniFECB              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fecc uniFECC              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fecd uniFECD              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fece uniFECE              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fecf uniFECF              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fed0 uniFED0              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fed1 uniFED1              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fed2 uniFED2              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fed3 uniFED3              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fed4 uniFED4              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fed5 uniFED5              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fed6 uniFED6              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fed7 uniFED7              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fed8 uniFED8              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fed9 uniFED9              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feda uniFEDA              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fedb uniFEDB              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fedc uniFEDC              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fedd uniFEDD              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fede uniFEDE              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fedf uniFEDF              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fee0 uniFEE0              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fee1 uniFEE1              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fee2 uniFEE2              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fee3 uniFEE3              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fee4 uniFEE4              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fee5 uniFEE5              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fee6 uniFEE6              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fee7 uniFEE7              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fee8 uniFEE8              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fee9 uniFEE9              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feea uniFEEA              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feeb uniFEEB              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feec uniFEEC              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feed uniFEED              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feee uniFEEE              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feef uniFEEF              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fef0 uniFEF0              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fef1 uniFEF1              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fef2 uniFEF2              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fef3 uniFEF3              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fef4 uniFEF4              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fef5 uniFEF5              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fef6 uniFEF6              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fef7 uniFEF7              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fef8 uniFEF8              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fef9 uniFEF9              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fefa uniFEFA              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fefb uniFEFB              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fefc uniFEFC              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+feff uniFEFF              2.4 (Sans, Sans Bold, Sans Condensed, Sans Condensed Bold) 2.16 (Sans Mono, Sans Mono Bold)\nU+fff9 uniFFF9              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fffa uniFFFA              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fffb uniFFFB              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fffc uniFFFC              2.22 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Mono, Sans Mono Bold, Sans Mono Bold Oblique, Sans Mono Oblique, Sans Oblique, Serif, Serif Bold, Serif Bold Italic, Serif Condensed, Serif Condensed Bold, Serif Condensed Bold Italic, Serif Condensed Italic, Serif Italic) 2.23 (Serif Italic Condensed)\nU+fffd uniFFFD              1.12\nU+1d300 u1D300               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d301 u1D301               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d302 u1D302               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d303 u1D303               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d304 u1D304               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d305 u1D305               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d306 u1D306               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d307 u1D307               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d308 u1D308               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d309 u1D309               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d30a u1D30A               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d30b u1D30B               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d30c u1D30C               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d30d u1D30D               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d30e u1D30E               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d30f u1D30F               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d310 u1D310               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d311 u1D311               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d312 u1D312               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d313 u1D313               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d314 u1D314               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d315 u1D315               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d316 u1D316               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d317 u1D317               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d318 u1D318               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d319 u1D319               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d31a u1D31A               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d31b u1D31B               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d31c u1D31C               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d31d u1D31D               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d31e u1D31E               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d31f u1D31F               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d320 u1D320               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d321 u1D321               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d322 u1D322               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d323 u1D323               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d324 u1D324               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d325 u1D325               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d326 u1D326               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d327 u1D327               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d328 u1D328               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d329 u1D329               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d32a u1D32A               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d32b u1D32B               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d32c u1D32C               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d32d u1D32D               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d32e u1D32E               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d32f u1D32F               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d330 u1D330               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d331 u1D331               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d332 u1D332               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d333 u1D333               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d334 u1D334               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d335 u1D335               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d336 u1D336               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d337 u1D337               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d338 u1D338               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d339 u1D339               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d33a u1D33A               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d33b u1D33B               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d33c u1D33C               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d33d u1D33D               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d33e u1D33E               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d33f u1D33F               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d340 u1D340               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d341 u1D341               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d342 u1D342               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d343 u1D343               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d344 u1D344               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d345 u1D345               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d346 u1D346               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d347 u1D347               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d348 u1D348               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d349 u1D349               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d34a u1D34A               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d34b u1D34B               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d34c u1D34C               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d34d u1D34D               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d34e u1D34E               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d34f u1D34F               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d350 u1D350               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d351 u1D351               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d352 u1D352               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d353 u1D353               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d354 u1D354               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d355 u1D355               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d356 u1D356               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique)\nU+1d400 u1D400               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d401 u1D401               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d402 u1D402               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d403 u1D403               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d404 u1D404               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d405 u1D405               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d406 u1D406               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d407 u1D407               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d408 u1D408               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d409 u1D409               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d40a u1D40A               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d40b u1D40B               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d40c u1D40C               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d40d u1D40D               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d40e u1D40E               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d40f u1D40F               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d410 u1D410               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d411 u1D411               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d412 u1D412               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d413 u1D413               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d414 u1D414               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d415 u1D415               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d416 u1D416               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d417 u1D417               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d418 u1D418               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d419 u1D419               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d41a u1D41A               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d41b u1D41B               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d41c u1D41C               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d41d u1D41D               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d41e u1D41E               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d41f u1D41F               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d420 u1D420               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d421 u1D421               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d422 u1D422               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d423 u1D423               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d424 u1D424               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d425 u1D425               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d426 u1D426               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d427 u1D427               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d428 u1D428               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d429 u1D429               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d42a u1D42A               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d42b u1D42B               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d42c u1D42C               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d42d u1D42D               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d42e u1D42E               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d42f u1D42F               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d430 u1D430               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d431 u1D431               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d432 u1D432               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d433 u1D433               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d434 u1D434               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d435 u1D435               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d436 u1D436               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d437 u1D437               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d438 u1D438               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d439 u1D439               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d43a u1D43A               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d43b u1D43B               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d43c u1D43C               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d43d u1D43D               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d43e u1D43E               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d43f u1D43F               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d440 u1D440               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d441 u1D441               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d442 u1D442               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d443 u1D443               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d444 u1D444               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d445 u1D445               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d446 u1D446               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d447 u1D447               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d448 u1D448               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d449 u1D449               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d44a u1D44A               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d44b u1D44B               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d44c u1D44C               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d44d u1D44D               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d44e u1D44E               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d44f u1D44F               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d450 u1D450               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d451 u1D451               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d452 u1D452               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d453 u1D453               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d454 u1D454               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d456 u1D456               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d457 u1D457               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d458 u1D458               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d459 u1D459               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d45a u1D45A               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d45b u1D45B               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d45c u1D45C               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d45d u1D45D               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d45e u1D45E               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d45f u1D45F               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d460 u1D460               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d461 u1D461               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d462 u1D462               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d463 u1D463               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d464 u1D464               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d465 u1D465               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d466 u1D466               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d467 u1D467               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d468 u1D468               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d469 u1D469               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d46a u1D46A               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d46b u1D46B               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d46c u1D46C               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d46d u1D46D               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d46e u1D46E               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d46f u1D46F               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d470 u1D470               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d471 u1D471               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d472 u1D472               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d473 u1D473               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d474 u1D474               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d475 u1D475               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d476 u1D476               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d477 u1D477               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d478 u1D478               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d479 u1D479               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d47a u1D47A               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d47b u1D47B               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d47c u1D47C               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d47d u1D47D               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d47e u1D47E               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d47f u1D47F               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d480 u1D480               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d481 u1D481               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d482 u1D482               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d483 u1D483               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d484 u1D484               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d485 u1D485               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d486 u1D486               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d487 u1D487               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d488 u1D488               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d489 u1D489               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d48a u1D48A               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d48b u1D48B               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d48c u1D48C               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d48d u1D48D               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d48e u1D48E               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d48f u1D48F               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d490 u1D490               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d491 u1D491               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d492 u1D492               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d493 u1D493               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d494 u1D494               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d495 u1D495               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d496 u1D496               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d497 u1D497               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d498 u1D498               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d499 u1D499               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d49a u1D49A               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d49b u1D49B               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d538 u1D538               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d539 u1D539               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d53b u1D53B               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d53c u1D53C               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d53d u1D53D               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d53e u1D53E               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d540 u1D540               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d541 u1D541               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d542 u1D542               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d543 u1D543               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d544 u1D544               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d546 u1D546               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d54a u1D54A               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d54b u1D54B               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d54c u1D54C               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d54d u1D54D               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d54e u1D54E               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d54f u1D54F               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d550 u1D550               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d552 u1D552               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d553 u1D553               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d554 u1D554               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d555 u1D555               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d556 u1D556               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d557 u1D557               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d558 u1D558               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d559 u1D559               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d55a u1D55A               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d55b u1D55B               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d55c u1D55C               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d55d u1D55D               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d55e u1D55E               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d55f u1D55F               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d560 u1D560               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d561 u1D561               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d562 u1D562               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d563 u1D563               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d564 u1D564               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d565 u1D565               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d566 u1D566               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d567 u1D567               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d568 u1D568               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d569 u1D569               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d56a u1D56A               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d56b u1D56B               2.18 (Sans, Sans Bold, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.22 (Serif, Serif Condensed)\nU+1d5a0 u1D5A0               2.23 (Sans, Sans Condensed)\nU+1d5a1 u1D5A1               2.23 (Sans, Sans Condensed)\nU+1d5a2 u1D5A2               2.23 (Sans, Sans Condensed)\nU+1d5a3 u1D5A3               2.23 (Sans, Sans Condensed)\nU+1d5a4 u1D5A4               2.23 (Sans, Sans Condensed)\nU+1d5a5 u1D5A5               2.23 (Sans, Sans Condensed)\nU+1d5a6 u1D5A6               2.23 (Sans, Sans Condensed)\nU+1d5a7 u1D5A7               2.23 (Sans, Sans Condensed)\nU+1d5a8 u1D5A8               2.23 (Sans, Sans Condensed)\nU+1d5a9 u1D5A9               2.23 (Sans, Sans Condensed)\nU+1d5aa u1D5AA               2.23 (Sans, Sans Condensed)\nU+1d5ab u1D5AB               2.23 (Sans, Sans Condensed)\nU+1d5ac u1D5AC               2.23 (Sans, Sans Condensed)\nU+1d5ad u1D5AD               2.23 (Sans, Sans Condensed)\nU+1d5ae u1D5AE               2.23 (Sans, Sans Condensed)\nU+1d5af u1D5AF               2.23 (Sans, Sans Condensed)\nU+1d5b0 u1D5B0               2.23 (Sans, Sans Condensed)\nU+1d5b1 u1D5B1               2.23 (Sans, Sans Condensed)\nU+1d5b2 u1D5B2               2.23 (Sans, Sans Condensed)\nU+1d5b3 u1D5B3               2.23 (Sans, Sans Condensed)\nU+1d5b4 u1D5B4               2.23 (Sans, Sans Condensed)\nU+1d5b5 u1D5B5               2.23 (Sans, Sans Condensed)\nU+1d5b6 u1D5B6               2.23 (Sans, Sans Condensed)\nU+1d5b7 u1D5B7               2.23 (Sans, Sans Condensed)\nU+1d5b8 u1D5B8               2.23 (Sans, Sans Condensed)\nU+1d5b9 u1D5B9               2.23 (Sans, Sans Condensed)\nU+1d5ba u1D5BA               2.23 (Sans, Sans Condensed)\nU+1d5bb u1D5BB               2.23 (Sans, Sans Condensed)\nU+1d5bc u1D5BC               2.23 (Sans, Sans Condensed)\nU+1d5bd u1D5BD               2.23 (Sans, Sans Condensed)\nU+1d5be u1D5BE               2.23 (Sans, Sans Condensed)\nU+1d5bf u1D5BF               2.23 (Sans, Sans Condensed)\nU+1d5c0 u1D5C0               2.23 (Sans, Sans Condensed)\nU+1d5c1 u1D5C1               2.23 (Sans, Sans Condensed)\nU+1d5c2 u1D5C2               2.23 (Sans, Sans Condensed)\nU+1d5c3 u1D5C3               2.23 (Sans, Sans Condensed)\nU+1d5c4 u1D5C4               2.23 (Sans, Sans Condensed)\nU+1d5c5 u1D5C5               2.23 (Sans, Sans Condensed)\nU+1d5c6 u1D5C6               2.23 (Sans, Sans Condensed)\nU+1d5c7 u1D5C7               2.23 (Sans, Sans Condensed)\nU+1d5c8 u1D5C8               2.23 (Sans, Sans Condensed)\nU+1d5c9 u1D5C9               2.23 (Sans, Sans Condensed)\nU+1d5ca u1D5CA               2.23 (Sans, Sans Condensed)\nU+1d5cb u1D5CB               2.23 (Sans, Sans Condensed)\nU+1d5cc u1D5CC               2.23 (Sans, Sans Condensed)\nU+1d5cd u1D5CD               2.23 (Sans, Sans Condensed)\nU+1d5ce u1D5CE               2.23 (Sans, Sans Condensed)\nU+1d5cf u1D5CF               2.23 (Sans, Sans Condensed)\nU+1d5d0 u1D5D0               2.23 (Sans, Sans Condensed)\nU+1d5d1 u1D5D1               2.23 (Sans, Sans Condensed)\nU+1d5d2 u1D5D2               2.23 (Sans, Sans Condensed)\nU+1d5d3 u1D5D3               2.23 (Sans, Sans Condensed)\nU+1d5d4 u1D5D4               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5d5 u1D5D5               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5d6 u1D5D6               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5d7 u1D5D7               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5d8 u1D5D8               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5d9 u1D5D9               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5da u1D5DA               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5db u1D5DB               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5dc u1D5DC               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5dd u1D5DD               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5de u1D5DE               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5df u1D5DF               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5e0 u1D5E0               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5e1 u1D5E1               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5e2 u1D5E2               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5e3 u1D5E3               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5e4 u1D5E4               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5e5 u1D5E5               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5e6 u1D5E6               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5e7 u1D5E7               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5e8 u1D5E8               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5e9 u1D5E9               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5ea u1D5EA               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5eb u1D5EB               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5ec u1D5EC               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5ed u1D5ED               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5ee u1D5EE               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5ef u1D5EF               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5f0 u1D5F0               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5f1 u1D5F1               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5f2 u1D5F2               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5f3 u1D5F3               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5f4 u1D5F4               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5f5 u1D5F5               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5f6 u1D5F6               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5f7 u1D5F7               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5f8 u1D5F8               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5f9 u1D5F9               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5fa u1D5FA               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5fb u1D5FB               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5fc u1D5FC               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5fd u1D5FD               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5fe u1D5FE               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d5ff u1D5FF               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d600 u1D600               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d601 u1D601               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d602 u1D602               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d603 u1D603               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d604 u1D604               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d605 u1D605               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d606 u1D606               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d607 u1D607               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d608 u1D608               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d609 u1D609               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d60a u1D60A               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d60b u1D60B               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d60c u1D60C               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d60d u1D60D               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d60e u1D60E               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d60f u1D60F               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d610 u1D610               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d611 u1D611               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d612 u1D612               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d613 u1D613               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d614 u1D614               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d615 u1D615               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d616 u1D616               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d617 u1D617               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d618 u1D618               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d619 u1D619               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d61a u1D61A               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d61b u1D61B               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d61c u1D61C               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d61d u1D61D               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d61e u1D61E               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d61f u1D61F               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d620 u1D620               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d621 u1D621               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d622 u1D622               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d623 u1D623               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d624 u1D624               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d625 u1D625               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d626 u1D626               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d627 u1D627               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d628 u1D628               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d629 u1D629               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d62a u1D62A               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d62b u1D62B               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d62c u1D62C               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d62d u1D62D               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d62e u1D62E               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d62f u1D62F               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d630 u1D630               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d631 u1D631               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d632 u1D632               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d633 u1D633               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d634 u1D634               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d635 u1D635               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d636 u1D636               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d637 u1D637               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d638 u1D638               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d639 u1D639               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d63a u1D63A               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d63b u1D63B               2.23 (Sans Condensed Oblique, Sans Oblique)\nU+1d63c u1D63C               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d63d u1D63D               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d63e u1D63E               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d63f u1D63F               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d640 u1D640               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d641 u1D641               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d642 u1D642               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d643 u1D643               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d644 u1D644               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d645 u1D645               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d646 u1D646               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d647 u1D647               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d648 u1D648               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d649 u1D649               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d64a u1D64A               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d64b u1D64B               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d64c u1D64C               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d64d u1D64D               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d64e u1D64E               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d64f u1D64F               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d650 u1D650               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d651 u1D651               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d652 u1D652               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d653 u1D653               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d654 u1D654               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d655 u1D655               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d656 u1D656               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d657 u1D657               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d658 u1D658               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d659 u1D659               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d65a u1D65A               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d65b u1D65B               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d65c u1D65C               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d65d u1D65D               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d65e u1D65E               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d65f u1D65F               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d660 u1D660               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d661 u1D661               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d662 u1D662               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d663 u1D663               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d664 u1D664               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d665 u1D665               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d666 u1D666               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d667 u1D667               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d668 u1D668               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d669 u1D669               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d66a u1D66A               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d66b u1D66B               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d66c u1D66C               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d66d u1D66D               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d66e u1D66E               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d66f u1D66F               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d670 u1D670               2.23 (Sans Mono)\nU+1d671 u1D671               2.23 (Sans Mono)\nU+1d672 u1D672               2.23 (Sans Mono)\nU+1d673 u1D673               2.23 (Sans Mono)\nU+1d674 u1D674               2.23 (Sans Mono)\nU+1d675 u1D675               2.23 (Sans Mono)\nU+1d676 u1D676               2.23 (Sans Mono)\nU+1d677 u1D677               2.23 (Sans Mono)\nU+1d678 u1D678               2.23 (Sans Mono)\nU+1d679 u1D679               2.23 (Sans Mono)\nU+1d67a u1D67A               2.23 (Sans Mono)\nU+1d67b u1D67B               2.23 (Sans Mono)\nU+1d67c u1D67C               2.23 (Sans Mono)\nU+1d67d u1D67D               2.23 (Sans Mono)\nU+1d67e u1D67E               2.23 (Sans Mono)\nU+1d67f u1D67F               2.23 (Sans Mono)\nU+1d680 u1D680               2.23 (Sans Mono)\nU+1d681 u1D681               2.23 (Sans Mono)\nU+1d682 u1D682               2.23 (Sans Mono)\nU+1d683 u1D683               2.23 (Sans Mono)\nU+1d684 u1D684               2.23 (Sans Mono)\nU+1d685 u1D685               2.23 (Sans Mono)\nU+1d686 u1D686               2.23 (Sans Mono)\nU+1d687 u1D687               2.23 (Sans Mono)\nU+1d688 u1D688               2.23 (Sans Mono)\nU+1d689 u1D689               2.23 (Sans Mono)\nU+1d68a u1D68A               2.23 (Sans Mono)\nU+1d68b u1D68B               2.23 (Sans Mono)\nU+1d68c u1D68C               2.23 (Sans Mono)\nU+1d68d u1D68D               2.23 (Sans Mono)\nU+1d68e u1D68E               2.23 (Sans Mono)\nU+1d68f u1D68F               2.23 (Sans Mono)\nU+1d690 u1D690               2.23 (Sans Mono)\nU+1d691 u1D691               2.23 (Sans Mono)\nU+1d692 u1D692               2.23 (Sans Mono)\nU+1d693 u1D693               2.23 (Sans Mono)\nU+1d694 u1D694               2.23 (Sans Mono)\nU+1d695 u1D695               2.23 (Sans Mono)\nU+1d696 u1D696               2.23 (Sans Mono)\nU+1d697 u1D697               2.23 (Sans Mono)\nU+1d698 u1D698               2.23 (Sans Mono)\nU+1d699 u1D699               2.23 (Sans Mono)\nU+1d69a u1D69A               2.23 (Sans Mono)\nU+1d69b u1D69B               2.23 (Sans Mono)\nU+1d69c u1D69C               2.23 (Sans Mono)\nU+1d69d u1D69D               2.23 (Sans Mono)\nU+1d69e u1D69E               2.23 (Sans Mono)\nU+1d69f u1D69F               2.23 (Sans Mono)\nU+1d6a0 u1D6A0               2.23 (Sans Mono)\nU+1d6a1 u1D6A1               2.23 (Sans Mono)\nU+1d6a2 u1D6A2               2.23 (Sans Mono)\nU+1d6a3 u1D6A3               2.23 (Sans Mono)\nU+1d6a4 u1D6A4               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6a5 u1D6A5               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6a8 u1D6A8               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6a9 u1D6A9               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6aa u1D6AA               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6ab u1D6AB               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6ac u1D6AC               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6ad u1D6AD               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6ae u1D6AE               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6af u1D6AF               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6b0 u1D6B0               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6b1 u1D6B1               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6b2 u1D6B2               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6b3 u1D6B3               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6b4 u1D6B4               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6b5 u1D6B5               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6b6 u1D6B6               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6b7 u1D6B7               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6b8 u1D6B8               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6b9 u1D6B9               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6ba u1D6BA               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6bb u1D6BB               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6bc u1D6BC               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6bd u1D6BD               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6be u1D6BE               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6bf u1D6BF               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6c0 u1D6C0               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6c1 u1D6C1               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6c2 u1D6C2               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6c3 u1D6C3               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6c4 u1D6C4               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6c5 u1D6C5               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6c6 u1D6C6               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6c7 u1D6C7               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6c8 u1D6C8               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6c9 u1D6C9               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6ca u1D6CA               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6cb u1D6CB               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6cc u1D6CC               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6cd u1D6CD               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6ce u1D6CE               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6cf u1D6CF               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6d0 u1D6D0               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6d1 u1D6D1               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6d2 u1D6D2               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6d3 u1D6D3               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6d4 u1D6D4               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6d5 u1D6D5               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6d6 u1D6D6               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6d7 u1D6D7               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6d8 u1D6D8               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6d9 u1D6D9               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6da u1D6DA               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6db u1D6DB               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6dc u1D6DC               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6dd u1D6DD               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6de u1D6DE               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6df u1D6DF               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6e0 u1D6E0               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6e1 u1D6E1               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d6e2 u1D6E2               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6e3 u1D6E3               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6e4 u1D6E4               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6e5 u1D6E5               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6e6 u1D6E6               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6e7 u1D6E7               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6e8 u1D6E8               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6e9 u1D6E9               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6ea u1D6EA               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6eb u1D6EB               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6ec u1D6EC               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6ed u1D6ED               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6ee u1D6EE               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6ef u1D6EF               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6f0 u1D6F0               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6f1 u1D6F1               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6f2 u1D6F2               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6f3 u1D6F3               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6f4 u1D6F4               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6f5 u1D6F5               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6f6 u1D6F6               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6f7 u1D6F7               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6f8 u1D6F8               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6f9 u1D6F9               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6fa u1D6FA               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6fb u1D6FB               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6fc u1D6FC               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6fd u1D6FD               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6fe u1D6FE               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d6ff u1D6FF               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d700 u1D700               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d701 u1D701               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d702 u1D702               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d703 u1D703               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d704 u1D704               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d705 u1D705               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d706 u1D706               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d707 u1D707               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d708 u1D708               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d709 u1D709               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d70a u1D70A               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d70b u1D70B               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d70c u1D70C               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d70d u1D70D               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d70e u1D70E               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d70f u1D70F               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d710 u1D710               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d711 u1D711               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d712 u1D712               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d713 u1D713               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d714 u1D714               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d715 u1D715               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d716 u1D716               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d717 u1D717               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d718 u1D718               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d719 u1D719               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d71a u1D71A               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d71b u1D71B               2.23 (Serif Italic, Serif Italic Condensed)\nU+1d71c u1D71C               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d71d u1D71D               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d71e u1D71E               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d71f u1D71F               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d720 u1D720               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d721 u1D721               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d722 u1D722               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d723 u1D723               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d724 u1D724               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d725 u1D725               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d726 u1D726               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d727 u1D727               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d728 u1D728               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d729 u1D729               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d72a u1D72A               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d72b u1D72B               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d72c u1D72C               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d72d u1D72D               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d72e u1D72E               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d72f u1D72F               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d730 u1D730               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d731 u1D731               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d732 u1D732               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d733 u1D733               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d734 u1D734               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d735 u1D735               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d736 u1D736               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d737 u1D737               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d738 u1D738               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d739 u1D739               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d73a u1D73A               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d73b u1D73B               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d73c u1D73C               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d73d u1D73D               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d73e u1D73E               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d73f u1D73F               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d740 u1D740               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d741 u1D741               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d742 u1D742               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d743 u1D743               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d744 u1D744               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d745 u1D745               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d746 u1D746               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d747 u1D747               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d748 u1D748               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d749 u1D749               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d74a u1D74A               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d74b u1D74B               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d74c u1D74C               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d74d u1D74D               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d74e u1D74E               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d74f u1D74F               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d750 u1D750               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d751 u1D751               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d752 u1D752               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d753 u1D753               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d754 u1D754               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d755 u1D755               2.23 (Serif Bold Italic, Serif Condensed Bold Italic)\nU+1d756 u1D756               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d757 u1D757               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d758 u1D758               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d759 u1D759               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d75a u1D75A               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d75b u1D75B               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d75c u1D75C               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d75d u1D75D               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d75e u1D75E               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d75f u1D75F               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d760 u1D760               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d761 u1D761               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d762 u1D762               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d763 u1D763               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d764 u1D764               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d765 u1D765               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d766 u1D766               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d767 u1D767               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d768 u1D768               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d769 u1D769               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d76a u1D76A               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d76b u1D76B               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d76c u1D76C               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d76d u1D76D               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d76e u1D76E               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d76f u1D76F               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d770 u1D770               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d771 u1D771               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d772 u1D772               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d773 u1D773               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d774 u1D774               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d775 u1D775               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d776 u1D776               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d777 u1D777               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d778 u1D778               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d779 u1D779               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d77a u1D77A               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d77b u1D77B               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d77c u1D77C               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d77d u1D77D               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d77e u1D77E               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d77f u1D77F               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d780 u1D780               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d781 u1D781               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d782 u1D782               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d783 u1D783               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d784 u1D784               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d785 u1D785               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d786 u1D786               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d787 u1D787               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d788 u1D788               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d789 u1D789               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d78a u1D78A               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d78b u1D78B               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d78c u1D78C               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d78d u1D78D               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d78e u1D78E               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d78f u1D78F               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d790 u1D790               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d791 u1D791               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d792 u1D792               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d793 u1D793               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d794 u1D794               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d795 u1D795               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d796 u1D796               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d797 u1D797               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d798 u1D798               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d799 u1D799               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d79a u1D79A               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d79b u1D79B               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d79c u1D79C               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d79d u1D79D               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d79e u1D79E               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d79f u1D79F               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7a0 u1D7A0               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7a1 u1D7A1               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7a2 u1D7A2               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7a3 u1D7A3               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7a4 u1D7A4               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7a5 u1D7A5               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7a6 u1D7A6               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7a7 u1D7A7               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7a8 u1D7A8               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7a9 u1D7A9               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7aa u1D7AA               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7ab u1D7AB               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7ac u1D7AC               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7ad u1D7AD               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7ae u1D7AE               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7af u1D7AF               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7b0 u1D7B0               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7b1 u1D7B1               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7b2 u1D7B2               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7b3 u1D7B3               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7b4 u1D7B4               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7b5 u1D7B5               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7b6 u1D7B6               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7b7 u1D7B7               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7b8 u1D7B8               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7b9 u1D7B9               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7ba u1D7BA               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7bb u1D7BB               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7bc u1D7BC               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7bd u1D7BD               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7be u1D7BE               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7bf u1D7BF               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7c0 u1D7C0               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7c1 u1D7C1               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7c2 u1D7C2               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7c3 u1D7C3               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7c4 u1D7C4               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7c5 u1D7C5               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7c6 u1D7C6               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7c7 u1D7C7               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7c8 u1D7C8               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7c9 u1D7C9               2.23 (Sans Bold Oblique, Sans Condensed Bold Oblique)\nU+1d7ca u1D7CA               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d7cb u1D7CB               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d7ce u1D7CE               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d7cf u1D7CF               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d7d0 u1D7D0               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d7d1 u1D7D1               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d7d2 u1D7D2               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d7d3 u1D7D3               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d7d4 u1D7D4               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d7d5 u1D7D5               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d7d6 u1D7D6               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d7d7 u1D7D7               2.23 (Serif Bold, Serif Condensed Bold)\nU+1d7d8 u1D7D8               2.22 (Serif, Serif Condensed) 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold)\nU+1d7d9 u1D7D9               2.22 (Serif, Serif Condensed) 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold)\nU+1d7da u1D7DA               2.22 (Serif, Serif Condensed) 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold)\nU+1d7db u1D7DB               2.22 (Serif, Serif Condensed) 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold)\nU+1d7dc u1D7DC               2.22 (Serif, Serif Condensed) 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold)\nU+1d7dd u1D7DD               2.22 (Serif, Serif Condensed) 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold)\nU+1d7de u1D7DE               2.22 (Serif, Serif Condensed) 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold)\nU+1d7df u1D7DF               2.22 (Serif, Serif Condensed) 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold)\nU+1d7e0 u1D7E0               2.22 (Serif, Serif Condensed) 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold)\nU+1d7e1 u1D7E1               2.22 (Serif, Serif Condensed) 2.29 (Sans, Sans Bold Oblique, Sans Condensed, Sans Condensed Bold, Sans Condensed Bold Oblique, Sans Condensed Oblique, Sans Oblique) 2.30 (Sans Bold)\nU+1d7e2 u1D7E2               2.23 (Sans, Sans Condensed)\nU+1d7e3 u1D7E3               2.23 (Sans, Sans Condensed)\nU+1d7e4 u1D7E4               2.23 (Sans, Sans Condensed)\nU+1d7e5 u1D7E5               2.23 (Sans, Sans Condensed)\nU+1d7e6 u1D7E6               2.23 (Sans, Sans Condensed)\nU+1d7e7 u1D7E7               2.23 (Sans, Sans Condensed)\nU+1d7e8 u1D7E8               2.23 (Sans, Sans Condensed)\nU+1d7e9 u1D7E9               2.23 (Sans, Sans Condensed)\nU+1d7ea u1D7EA               2.23 (Sans, Sans Condensed)\nU+1d7eb u1D7EB               2.23 (Sans, Sans Condensed)\nU+1d7ec u1D7EC               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d7ed u1D7ED               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d7ee u1D7EE               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d7ef u1D7EF               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d7f0 u1D7F0               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d7f1 u1D7F1               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d7f2 u1D7F2               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d7f3 u1D7F3               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d7f4 u1D7F4               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d7f5 u1D7F5               2.23 (Sans Bold, Sans Condensed Bold)\nU+1d7f6 u1D7F6               2.23 (Sans Mono)\nU+1d7f7 u1D7F7               2.23 (Sans Mono)\nU+1d7f8 u1D7F8               2.23 (Sans Mono)\nU+1d7f9 u1D7F9               2.23 (Sans Mono)\nU+1d7fa u1D7FA               2.23 (Sans Mono)\nU+1d7fb u1D7FB               2.23 (Sans Mono)\nU+1d7fc u1D7FC               2.23 (Sans Mono)\nU+1d7fd u1D7FD               2.23 (Sans Mono)\nU+1d7fe u1D7FE               2.23 (Sans Mono)\nU+1d7ff u1D7FF               2.23 (Sans Mono)\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavu-fonts-ttf-2.30/unicover.txt",
    "content": "This is the Unicode coverage file for DejaVu fonts\n($Id$)\n\nControl and similar characters are discounted from totals.\n\n                                                Sans               Serif              Sans Mono          \nU+0000 Basic Latin                              100% (95/95)       100% (95/95)       100% (95/95)      \nU+0080 Latin-1 Supplement                       100% (96/96)       100% (96/96)       100% (96/96)      \nU+0100 Latin Extended-A                         100% (128/128)     100% (128/128)     100% (128/128)    \nU+0180 Latin Extended-B                         100% (208/208)      91% (191/208)      86% (179/208)    \nU+0250 IPA Extensions                           100% (96/96)       100% (96/96)       100% (96/96)      \nU+02b0 Spacing Modifier Letters                  78% (63/80)        56% (45/80)        60% (48/80)      \nU+0300 Combining Diacritical Marks               83% (93/112)       60% (68/112)       59% (67/112)     \nU+0370 Greek and Coptic                         100% (134/134)      85% (115/134)      82% (110/134)    \nU+0400 Cyrillic                                 100% (256/256)      78% (200/256)      69% (178/256)    \nU+0500 Cyrillic Supplement                       94% (34/36)        27% (10/36)        16% (6/36)       \nU+0530 Armenian                                 100% (86/86)            (0/86)             (0/86)       \nU+0590 Hebrew                                    62% (54/87)            (0/87)             (0/87)       \nU+0600 Arabic                                    46% (115/250)          (0/250)        39% (99/250)     \nU+0700 Syriac                                        (0/77)             (0/77)             (0/77)       \nU+0750 Arabic Supplement                             (0/48)             (0/48)             (0/48)       \nU+0780 Thaana                                        (0/50)             (0/50)             (0/50)       \nU+07c0 NKo                                       91% (54/59)            (0/59)             (0/59)       \nU+0900 Devanagari                                    (0/113)            (0/113)            (0/113)      \nU+0980 Bengali                                       (0/91)             (0/91)             (0/91)       \nU+0a00 Gurmukhi                                      (0/79)             (0/79)             (0/79)       \nU+0a80 Gujarati                                      (0/83)             (0/83)             (0/83)       \nU+0b00 Oriya                                         (0/84)             (0/84)             (0/84)       \nU+0b80 Tamil                                         (0/72)             (0/72)             (0/72)       \nU+0c00 Telugu                                        (0/93)             (0/93)             (0/93)       \nU+0c80 Kannada                                       (0/86)             (0/86)             (0/86)       \nU+0d00 Malayalam                                     (0/95)             (0/95)             (0/95)       \nU+0d80 Sinhala                                       (0/80)             (0/80)             (0/80)       \nU+0e00 Thai                                       1% (1/87)             (0/87)             (0/87)       \nU+0e80 Lao                                      100% (65/65)            (0/65)         70% (46/65)      \nU+0f00 Tibetan                                       (0/201)            (0/201)            (0/201)      \nU+1000 Myanmar                                       (0/156)            (0/156)            (0/156)      \nU+10a0 Georgian                                 100% (83/83)       100% (83/83)        54% (45/83)      \nU+1100 Hangul Jamo                                   (0/240)            (0/240)            (0/240)      \nU+1200 Ethiopic                                      (0/356)            (0/356)            (0/356)      \nU+1380 Ethiopic Supplement                           (0/26)             (0/26)             (0/26)       \nU+13a0 Cherokee                                      (0/85)             (0/85)             (0/85)       \nU+1400 Unified Canadian Aboriginal Syllabics     64% (404/630)          (0/630)            (0/630)      \nU+1680 Ogham                                    100% (29/29)            (0/29)             (0/29)       \nU+16a0 Runic                                         (0/81)             (0/81)             (0/81)       \nU+1700 Tagalog                                       (0/20)             (0/20)             (0/20)       \nU+1720 Hanunoo                                       (0/23)             (0/23)             (0/23)       \nU+1740 Buhid                                         (0/20)             (0/20)             (0/20)       \nU+1760 Tagbanwa                                      (0/18)             (0/18)             (0/18)       \nU+1780 Khmer                                         (0/114)            (0/114)            (0/114)      \nU+1800 Mongolian                                     (0/156)            (0/156)            (0/156)      \nU+1900 Limbu                                         (0/66)             (0/66)             (0/66)       \nU+1950 Tai Le                                        (0/35)             (0/35)             (0/35)       \nU+1980 New Tai Lue                                   (0/80)             (0/80)             (0/80)       \nU+19e0 Khmer Symbols                                 (0/32)             (0/32)             (0/32)       \nU+1a00 Buginese                                      (0/30)             (0/30)             (0/30)       \nU+1b00 Balinese                                      (0/121)            (0/121)            (0/121)      \nU+1b80 Sundanese                                     (0/55)             (0/55)             (0/55)       \nU+1c00 Lepcha                                        (0/74)             (0/74)             (0/74)       \nU+1c50 Ol Chiki                                      (0/48)             (0/48)             (0/48)       \nU+1d00 Phonetic Extensions                       82% (105/128)      48% (62/128)       48% (62/128)     \nU+1d80 Phonetic Extensions Supplement            59% (38/64)        57% (37/64)        57% (37/64)      \nU+1dc0 Combining Diacritical Marks Supplement    14% (6/41)         14% (6/41)             (0/41)       \nU+1e00 Latin Extended Additional                 96% (248/256)      76% (196/256)      71% (182/256)    \nU+1f00 Greek Extended                           100% (233/233)     100% (233/233)     100% (233/233)    \nU+2000 General Punctuation                       98% (105/107)      81% (87/107)       47% (51/107)     \nU+2070 Superscripts and Subscripts              100% (34/34)       100% (34/34)       100% (34/34)      \nU+20a0 Currency Symbols                         100% (22/22)        27% (6/22)        100% (22/22)      \nU+20d0 Combining Diacritical Marks for Symbols   21% (7/33)             (0/33)             (0/33)       \nU+2100 Letterlike Symbols                        93% (75/80)        40% (32/80)        21% (17/80)      \nU+2150 Number Forms                              92% (50/54)        92% (50/54)        24% (13/54)      \nU+2190 Arrows                                   100% (112/112)     100% (112/112)     100% (112/112)    \nU+2200 Mathematical Operators                   100% (256/256)      39% (100/256)      58% (151/256)    \nU+2300 Miscellaneous Technical                   27% (64/232)        6% (16/232)       50% (117/232)    \nU+2400 Control Pictures                           5% (2/39)          2% (1/39)          2% (1/39)       \nU+2440 Optical Character Recognition                 (0/11)             (0/11)             (0/11)       \nU+2460 Enclosed Alphanumerics                     6% (10/160)           (0/160)            (0/160)      \nU+2500 Box Drawing                              100% (128/128)     100% (128/128)     100% (128/128)    \nU+2580 Block Elements                           100% (32/32)       100% (32/32)       100% (32/32)      \nU+25a0 Geometric Shapes                         100% (96/96)       100% (96/96)       100% (96/96)      \nU+2600 Miscellaneous Symbols                     95% (182/191)      15% (30/191)       78% (149/191)    \nU+2700 Dingbats                                 100% (174/174)       0% (1/174)        82% (144/174)    \nU+27c0 Miscellaneous Mathematical Symbols-A      20% (9/44)         11% (5/44)         11% (5/44)       \nU+27f0 Supplemental Arrows-A                    100% (16/16)       100% (16/16)            (0/16)       \nU+2800 Braille Patterns                         100% (256/256)     100% (256/256)          (0/256)      \nU+2900 Supplemental Arrows-B                      4% (6/128)       100% (128/128)          (0/128)      \nU+2980 Miscellaneous Mathematical Symbols-B      10% (13/128)        0% (1/128)         2% (3/128)      \nU+2a00 Supplemental Mathematical Operators       28% (72/256)        1% (4/256)         0% (1/256)      \nU+2b00 Miscellaneous Symbols and Arrows          42% (35/82)        32% (27/82)        10% (9/82)       \nU+2c00 Glagolitic                                    (0/94)             (0/94)             (0/94)       \nU+2c60 Latin Extended-C                          96% (28/29)        55% (16/29)        34% (10/29)      \nU+2c80 Coptic                                        (0/114)            (0/114)            (0/114)      \nU+2d00 Georgian Supplement                           (0/38)        100% (38/38)            (0/38)       \nU+2d30 Tifinagh                                 100% (55/55)            (0/55)             (0/55)       \nU+2d80 Ethiopic Extended                             (0/79)             (0/79)             (0/79)       \nU+2de0 Cyrillic Extended-A                           (0/32)             (0/32)             (0/32)       \nU+2e00 Supplemental Punctuation                  12% (6/49)         12% (6/49)         12% (6/49)       \nU+2e80 CJK Radicals Supplement                       (0/115)            (0/115)            (0/115)      \nU+2f00 Kangxi Radicals                               (0/214)            (0/214)            (0/214)      \nU+2ff0 Ideographic Description Characters            (0/12)             (0/12)             (0/12)       \nU+3000 CJK Symbols and Punctuation                   (0/64)             (0/64)             (0/64)       \nU+3040 Hiragana                                      (0/93)             (0/93)             (0/93)       \nU+30a0 Katakana                                      (0/96)             (0/96)             (0/96)       \nU+3100 Bopomofo                                      (0/41)             (0/41)             (0/41)       \nU+3130 Hangul Compatibility Jamo                     (0/94)             (0/94)             (0/94)       \nU+3190 Kanbun                                        (0/16)             (0/16)             (0/16)       \nU+31a0 Bopomofo Extended                             (0/24)             (0/24)             (0/24)       \nU+31c0 CJK Strokes                                   (0/36)             (0/36)             (0/36)       \nU+31f0 Katakana Phonetic Extensions                  (0/16)             (0/16)             (0/16)       \nU+3200 Enclosed CJK Letters and Months               (0/242)            (0/242)            (0/242)      \nU+3300 CJK Compatibility                             (0/256)            (0/256)            (0/256)      \nU+3400 CJK Unified Ideographs Extension A            (0/0)              (0/0)              (0/0)        \nU+4dc0 Yijing Hexagram Symbols                  100% (64/64)            (0/64)             (0/64)       \nU+4e00 CJK Unified Ideographs                        (0/0)              (0/0)              (0/0)        \nU+a000 Yi Syllables                                  (0/1165)           (0/1165)           (0/1165)     \nU+a490 Yi Radicals                                   (0/55)             (0/55)             (0/55)       \nU+a500 Vai                                           (0/300)            (0/300)            (0/300)      \nU+a640 Cyrillic Extended-B                       39% (31/78)        12% (10/78)            (0/78)       \nU+a700 Modifier Tone Letters                     62% (20/32)        62% (20/32)        62% (20/32)      \nU+a720 Latin Extended-D                          37% (43/114)        1% (2/114)         5% (6/114)      \nU+a800 Syloti Nagri                                  (0/44)             (0/44)             (0/44)       \nU+a840 Phags-pa                                      (0/56)             (0/56)             (0/56)       \nU+a880 Saurashtra                                    (0/81)             (0/81)             (0/81)       \nU+a900 Kayah Li                                      (0/48)             (0/48)             (0/48)       \nU+a930 Rejang                                        (0/37)             (0/37)             (0/37)       \nU+aa00 Cham                                          (0/83)             (0/83)             (0/83)       \nU+ac00 Hangul Syllables                              (0/0)              (0/0)              (0/0)        \nU+d800 High Surrogates                               (0/0)              (0/0)              (0/0)        \nU+db80 High Private Use Surrogates                   (0/0)              (0/0)              (0/0)        \nU+dc00 Low Surrogates                                (0/0)              (0/0)              (0/0)        \nU+e000 Private Use Area                              (0/0)              (0/0)              (0/0)        \nU+f900 CJK Compatibility Ideographs                  (0/467)            (0/467)            (0/467)      \nU+fb00 Alphabetic Presentation Forms            100% (58/58)        12% (7/58)          3% (2/58)       \nU+fb50 Arabic Presentation Forms-A               11% (70/595)           (0/595)        12% (72/595)     \nU+fe00 Variation Selectors                      100% (16/16)       100% (16/16)            (0/16)       \nU+fe10 Vertical Forms                                (0/10)             (0/10)             (0/10)       \nU+fe20 Combining Half Marks                      57% (4/7)              (0/7)              (0/7)        \nU+fe30 CJK Compatibility Forms                       (0/32)             (0/32)             (0/32)       \nU+fe50 Small Form Variants                           (0/26)             (0/26)             (0/26)       \nU+fe70 Arabic Presentation Forms-B              100% (141/141)          (0/141)       100% (141/141)    \nU+ff00 Halfwidth and Fullwidth Forms                 (0/225)            (0/225)            (0/225)      \nU+fff0 Specials                                 100% (5/5)         100% (5/5)         100% (5/5)        \nU+10000 Linear B Syllabary                            (0/88)             (0/88)             (0/88)       \nU+10080 Linear B Ideograms                            (0/123)            (0/123)            (0/123)      \nU+10100 Aegean Numbers                                (0/57)             (0/57)             (0/57)       \nU+10140 Ancient Greek Numbers                         (0/75)             (0/75)             (0/75)       \nU+10190 Ancient Symbols                               (0/12)             (0/12)             (0/12)       \nU+101d0 Phaistos Disc                                 (0/46)             (0/46)             (0/46)       \nU+10280 Lycian                                        (0/29)             (0/29)             (0/29)       \nU+102a0 Carian                                        (0/49)             (0/49)             (0/49)       \nU+10300 Old Italic                                    (0/35)             (0/35)             (0/35)       \nU+10330 Gothic                                        (0/27)             (0/27)             (0/27)       \nU+10380 Ugaritic                                      (0/31)             (0/31)             (0/31)       \nU+103a0 Old Persian                                   (0/50)             (0/50)             (0/50)       \nU+10400 Deseret                                       (0/80)             (0/80)             (0/80)       \nU+10450 Shavian                                       (0/48)             (0/48)             (0/48)       \nU+10480 Osmanya                                       (0/40)             (0/40)             (0/40)       \nU+10800 Cypriot Syllabary                             (0/55)             (0/55)             (0/55)       \nU+10900 Phoenician                                    (0/27)             (0/27)             (0/27)       \nU+10920 Lydian                                        (0/27)             (0/27)             (0/27)       \nU+10a00 Kharoshthi                                    (0/65)             (0/65)             (0/65)       \nU+12000 Cuneiform                                     (0/879)            (0/879)            (0/879)      \nU+12400 Cuneiform Numbers and Punctuation             (0/103)            (0/103)            (0/103)      \nU+1d000 Byzantine Musical Symbols                     (0/246)            (0/246)            (0/246)      \nU+1d100 Musical Symbols                               (0/220)            (0/220)            (0/220)      \nU+1d200 Ancient Greek Musical Notation                (0/70)             (0/70)             (0/70)       \nU+1d300 Tai Xuan Jing Symbols                    100% (87/87)            (0/87)             (0/87)       \nU+1d360 Counting Rod Numerals                         (0/18)             (0/18)             (0/18)       \nU+1d400 Mathematical Alphanumeric Symbols         11% (117/996)       5% (55/996)        6% (62/996)     \nU+1f000 Mahjong Tiles                                 (0/44)             (0/44)             (0/44)       \nU+1f030 Domino Tiles                                  (0/100)            (0/100)            (0/100)      \nU+20000 CJK Unified Ideographs Extension B            (0/0)              (0/0)              (0/0)        \nU+2f800 CJK Compatibility Ideographs Supplement       (0/542)            (0/542)            (0/542)      \nU+e0000 Tags                                          (0/98)             (0/98)             (0/98)       \nU+e0100 Variation Selectors Supplement                (0/240)            (0/240)            (0/240)      \nU+f0000 Supplementary Private Use Area-A              (0/0)              (0/0)              (0/0)        \nU+100000 Supplementary Private Use Area-B              (0/0)              (0/0)              (0/0)        \n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavusans.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='DejaVuSans';\n$desc=array('Ascent'=>928,'Descent'=>-236,'CapHeight'=>30,'Flags'=>96,'FontBBox'=>'[-1021 -350 1681 1167]','ItalicAngle'=>20.8,'StemV'=>70,'MissingWidth'=>600);\n$up=-63;\n$ut=44;\n$dw=600;\n$cw=array(\n0=>600,32=>318,33=>401,34=>460,35=>838,36=>636,37=>950,38=>780,39=>275,40=>390,\n41=>390,42=>500,43=>838,44=>318,45=>361,46=>318,47=>337,48=>636,49=>636,50=>636,\n51=>636,52=>636,53=>636,54=>636,55=>636,56=>636,57=>636,58=>337,59=>337,60=>838,\n61=>838,62=>838,63=>531,64=>1000,65=>684,66=>686,67=>698,68=>770,69=>632,70=>575,\n71=>775,72=>752,73=>295,74=>295,75=>656,76=>557,77=>863,78=>748,79=>787,80=>603,\n81=>787,82=>695,83=>635,84=>611,85=>732,86=>684,87=>989,88=>685,89=>611,90=>685,\n91=>390,92=>337,93=>390,94=>838,95=>500,96=>500,97=>613,98=>635,99=>550,100=>635,\n101=>615,102=>352,103=>635,104=>634,105=>278,106=>278,107=>579,108=>278,109=>974,110=>634,\n111=>612,112=>635,113=>635,114=>411,115=>521,116=>392,117=>634,118=>592,119=>818,120=>592,\n121=>592,122=>525,123=>636,124=>337,125=>636,126=>838,8364=>636,8218=>318,402=>352,8222=>518,\n8230=>1000,8224=>500,8225=>500,710=>500,8240=>1342,352=>635,8249=>400,338=>1070,381=>685,8216=>318,\n8217=>318,8220=>518,8221=>518,8226=>590,8211=>500,8212=>1000,732=>500,8482=>1000,353=>521,8250=>400,\n339=>1023,382=>525,376=>611,160=>318,161=>401,162=>636,163=>636,164=>636,165=>636,166=>337,\n167=>500,168=>500,169=>1000,170=>471,171=>612,172=>838,173=>361,174=>1000,175=>500,176=>500,\n177=>838,178=>401,179=>401,180=>500,181=>636,182=>636,183=>318,184=>500,185=>401,186=>471,\n187=>612,188=>969,189=>969,190=>969,191=>531,192=>684,193=>684,194=>684,195=>684,196=>684,\n197=>684,198=>974,199=>698,200=>632,201=>632,202=>632,203=>632,204=>295,205=>295,206=>295,\n207=>295,208=>775,209=>748,210=>787,211=>787,212=>787,213=>787,214=>787,215=>838,216=>787,\n217=>732,218=>732,219=>732,220=>732,221=>611,222=>605,223=>630,224=>613,225=>613,226=>613,\n227=>613,228=>613,229=>613,230=>982,231=>550,232=>615,233=>615,234=>615,235=>615,236=>278,\n237=>278,238=>278,239=>278,240=>612,241=>634,242=>612,243=>612,244=>612,245=>612,246=>612,\n247=>838,248=>612,249=>634,250=>634,251=>634,252=>634,253=>592,254=>635,255=>592,256=>684,\n257=>613,258=>684,259=>613,260=>684,261=>613,262=>698,263=>550,264=>698,265=>550,266=>698,\n267=>550,268=>698,269=>550,270=>770,271=>635,272=>775,273=>635,274=>632,275=>615,276=>632,\n277=>615,278=>632,279=>615,280=>632,281=>615,282=>632,283=>615,284=>775,285=>635,286=>775,\n287=>635,288=>775,289=>635,290=>775,291=>635,292=>752,293=>634,294=>916,295=>695,296=>295,\n297=>278,298=>295,299=>278,300=>295,301=>278,302=>295,303=>278,304=>295,305=>278,306=>590,\n307=>556,308=>295,309=>278,310=>656,311=>579,312=>579,313=>557,314=>278,315=>557,316=>278,\n317=>557,318=>375,319=>557,320=>342,321=>562,322=>284,323=>748,324=>634,325=>748,326=>634,\n327=>748,328=>634,329=>813,330=>748,331=>634,332=>787,333=>612,334=>787,335=>612,336=>787,\n337=>612,340=>695,341=>411,342=>695,343=>411,344=>695,345=>411,346=>635,347=>521,348=>635,\n349=>521,350=>635,351=>521,354=>611,355=>392,356=>611,357=>392,358=>611,359=>392,360=>732,\n361=>634,362=>732,363=>634,364=>732,365=>634,366=>732,367=>634,368=>732,369=>634,370=>732,\n371=>634,372=>989,373=>818,374=>611,375=>592,377=>685,378=>525,379=>685,380=>525,383=>352,\n384=>635,385=>735,386=>686,387=>635,388=>686,389=>635,390=>703,391=>698,392=>550,393=>775,\n394=>819,395=>686,396=>635,397=>612,398=>632,399=>787,400=>614,401=>575,403=>775,404=>687,\n405=>984,406=>354,407=>295,408=>746,409=>579,410=>278,411=>592,412=>974,413=>748,414=>634,\n415=>787,416=>913,417=>612,418=>949,419=>759,420=>652,421=>635,422=>695,423=>635,424=>521,\n425=>632,426=>336,427=>392,428=>611,429=>392,430=>611,431=>858,432=>634,433=>764,434=>721,\n435=>744,436=>730,437=>685,438=>525,439=>666,440=>666,441=>578,442=>525,443=>636,444=>666,\n445=>578,446=>510,447=>635,448=>295,449=>492,450=>459,451=>295,452=>1422,453=>1299,454=>1154,\n455=>835,456=>787,457=>457,458=>931,459=>924,460=>797,461=>684,462=>613,463=>295,464=>278,\n465=>787,466=>612,467=>732,468=>634,469=>732,470=>634,471=>732,472=>634,473=>732,474=>634,\n475=>732,476=>634,477=>615,478=>684,479=>613,480=>684,481=>613,482=>974,483=>982,484=>775,\n485=>635,486=>775,487=>635,488=>656,489=>579,490=>787,491=>612,492=>787,493=>612,494=>666,\n495=>578,496=>278,497=>1422,498=>1299,499=>1154,500=>775,501=>635,502=>1113,503=>682,504=>748,\n505=>634,506=>684,507=>613,508=>974,509=>982,510=>787,511=>612,512=>684,513=>613,514=>684,\n515=>613,516=>632,517=>615,518=>632,519=>615,520=>295,521=>278,522=>295,523=>278,524=>787,\n525=>612,526=>787,527=>612,528=>695,529=>411,530=>695,531=>411,532=>732,533=>634,534=>732,\n535=>634,536=>635,537=>521,538=>611,539=>392,540=>627,541=>521,542=>752,543=>634,544=>735,\n545=>838,546=>698,547=>610,548=>685,549=>525,550=>684,551=>613,552=>632,553=>615,554=>787,\n555=>612,556=>787,557=>612,558=>787,559=>612,560=>787,561=>612,562=>611,563=>592,564=>475,\n565=>843,566=>477,567=>278,568=>998,569=>998,570=>684,571=>698,572=>550,573=>557,574=>611,\n575=>521,576=>525,577=>603,578=>479,579=>686,580=>732,581=>684,582=>632,583=>615,584=>295,\n585=>278,586=>781,587=>635,588=>695,589=>411,590=>611,591=>592,592=>600,593=>635,594=>635,\n595=>635,596=>549,597=>550,598=>635,599=>696,600=>615,601=>615,602=>819,603=>541,604=>532,\n605=>775,606=>664,607=>278,608=>696,609=>635,610=>629,611=>596,612=>596,613=>634,614=>634,\n615=>634,616=>278,617=>338,618=>372,619=>396,620=>487,621=>278,622=>706,623=>974,624=>974,\n625=>974,626=>646,627=>642,628=>634,629=>612,630=>858,631=>728,632=>660,633=>414,634=>414,\n635=>414,636=>411,637=>411,638=>530,639=>530,640=>604,641=>604,642=>521,643=>336,644=>336,\n645=>461,646=>336,647=>392,648=>392,649=>634,650=>618,651=>598,652=>592,653=>818,654=>592,\n655=>611,656=>525,657=>525,658=>578,659=>578,660=>510,661=>510,662=>510,663=>510,664=>787,\n665=>580,666=>664,667=>708,668=>654,669=>292,670=>667,671=>507,672=>727,673=>510,674=>510,\n675=>1014,676=>1058,677=>1013,678=>824,679=>610,680=>778,681=>848,682=>641,683=>654,684=>515,\n685=>515,686=>661,687=>664,688=>404,689=>399,690=>175,691=>259,692=>295,693=>296,694=>379,\n695=>515,696=>373,697=>278,698=>460,699=>318,700=>318,701=>318,702=>307,703=>307,704=>370,\n705=>370,706=>500,707=>500,708=>500,709=>500,711=>500,712=>275,713=>500,714=>500,715=>500,\n716=>275,717=>500,718=>500,719=>500,720=>337,721=>337,722=>307,723=>307,724=>500,725=>500,\n726=>390,727=>317,728=>500,729=>500,730=>500,731=>500,733=>500,734=>315,735=>500,736=>426,\n737=>166,738=>373,739=>444,740=>370,741=>493,742=>493,743=>493,744=>493,745=>493,748=>500,\n749=>500,750=>518,755=>500,759=>500,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,\n774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,\n784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,\n794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,\n804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,\n814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,\n824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,\n834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,\n844=>0,845=>0,846=>0,847=>0,849=>0,850=>0,851=>0,855=>0,856=>0,858=>0,\n860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,880=>654,881=>568,882=>862,\n883=>647,884=>278,885=>278,886=>748,887=>650,890=>500,891=>549,892=>550,893=>549,894=>337,\n900=>500,901=>500,902=>692,903=>318,904=>746,905=>871,906=>408,908=>813,910=>825,911=>826,\n912=>338,913=>684,914=>686,915=>557,916=>684,917=>632,918=>685,919=>752,920=>787,921=>295,\n922=>656,923=>684,924=>863,925=>748,926=>632,927=>787,928=>752,929=>603,931=>632,932=>611,\n933=>611,934=>787,935=>685,936=>787,937=>764,938=>295,939=>611,940=>659,941=>541,942=>634,\n943=>338,944=>579,945=>659,946=>638,947=>592,948=>612,949=>541,950=>544,951=>634,952=>612,\n953=>338,954=>589,955=>592,956=>636,957=>559,958=>558,959=>612,960=>602,961=>635,962=>587,\n963=>634,964=>602,965=>579,966=>660,967=>578,968=>660,969=>837,970=>338,971=>579,972=>612,\n973=>579,974=>837,975=>656,976=>614,977=>619,978=>699,979=>842,980=>699,981=>660,982=>837,\n983=>664,984=>787,985=>612,986=>648,987=>587,988=>575,989=>458,990=>660,991=>660,992=>865,\n993=>627,994=>934,995=>837,996=>758,997=>659,998=>792,999=>615,1000=>687,1001=>607,1002=>768,\n1003=>625,1004=>699,1005=>612,1006=>611,1007=>536,1008=>664,1009=>635,1010=>550,1011=>278,1012=>787,\n1013=>615,1014=>615,1015=>605,1016=>635,1017=>698,1018=>863,1019=>651,1020=>635,1021=>703,1022=>698,\n1023=>703,1024=>632,1025=>632,1026=>786,1027=>610,1028=>698,1029=>635,1030=>295,1031=>295,1032=>295,\n1033=>1094,1034=>1045,1035=>786,1036=>710,1037=>748,1038=>609,1039=>752,1040=>684,1041=>686,1042=>686,\n1043=>610,1044=>781,1045=>632,1046=>1077,1047=>641,1048=>748,1049=>748,1050=>710,1051=>752,1052=>863,\n1053=>752,1054=>787,1055=>752,1056=>603,1057=>698,1058=>611,1059=>609,1060=>861,1061=>685,1062=>776,\n1063=>686,1064=>1069,1065=>1094,1066=>833,1067=>882,1068=>686,1069=>698,1070=>1080,1071=>695,1072=>613,\n1073=>617,1074=>589,1075=>525,1076=>691,1077=>615,1078=>901,1079=>532,1080=>650,1081=>650,1082=>604,\n1083=>639,1084=>754,1085=>654,1086=>612,1087=>654,1088=>635,1089=>550,1090=>583,1091=>592,1092=>855,\n1093=>592,1094=>681,1095=>591,1096=>915,1097=>942,1098=>707,1099=>790,1100=>589,1101=>549,1102=>842,\n1103=>602,1104=>615,1105=>615,1106=>625,1107=>525,1108=>549,1109=>521,1110=>278,1111=>278,1112=>278,\n1113=>902,1114=>898,1115=>652,1116=>604,1117=>650,1118=>592,1119=>654,1120=>934,1121=>837,1122=>771,\n1123=>672,1124=>942,1125=>749,1126=>879,1127=>783,1128=>1160,1129=>1001,1130=>787,1131=>612,1132=>1027,\n1133=>824,1134=>636,1135=>541,1136=>856,1137=>876,1138=>787,1139=>612,1140=>781,1141=>665,1142=>781,\n1143=>665,1144=>992,1145=>904,1146=>953,1147=>758,1148=>1180,1149=>1028,1150=>934,1151=>837,1152=>698,\n1153=>550,1154=>502,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>418,1161=>418,1162=>772,\n1163=>677,1164=>686,1165=>589,1166=>603,1167=>635,1168=>610,1169=>525,1170=>675,1171=>590,1172=>624,\n1173=>530,1174=>1077,1175=>901,1176=>641,1177=>532,1178=>710,1179=>604,1180=>710,1181=>604,1182=>710,\n1183=>604,1184=>856,1185=>832,1186=>752,1187=>661,1188=>1014,1189=>877,1190=>1081,1191=>916,1192=>878,\n1193=>693,1194=>698,1195=>550,1196=>611,1197=>583,1198=>611,1199=>592,1200=>611,1201=>592,1202=>685,\n1203=>592,1204=>934,1205=>807,1206=>686,1207=>591,1208=>686,1209=>591,1210=>686,1211=>634,1212=>941,\n1213=>728,1214=>941,1215=>728,1216=>295,1217=>1077,1218=>901,1219=>656,1220=>604,1221=>776,1222=>670,\n1223=>752,1224=>661,1225=>776,1226=>681,1227=>686,1228=>591,1229=>888,1230=>774,1231=>278,1232=>684,\n1233=>613,1234=>684,1235=>613,1236=>974,1237=>982,1238=>632,1239=>615,1240=>787,1241=>615,1242=>787,\n1243=>615,1244=>1077,1245=>901,1246=>641,1247=>532,1248=>666,1249=>578,1250=>748,1251=>650,1252=>748,\n1253=>650,1254=>787,1255=>612,1256=>787,1257=>612,1258=>787,1259=>612,1260=>698,1261=>549,1262=>609,\n1263=>592,1264=>609,1265=>592,1266=>609,1267=>592,1268=>686,1269=>591,1270=>610,1271=>525,1272=>882,\n1273=>790,1274=>675,1275=>590,1276=>685,1277=>592,1278=>685,1279=>592,1280=>686,1281=>589,1282=>1006,\n1283=>897,1284=>975,1285=>869,1286=>679,1287=>588,1288=>1072,1289=>957,1290=>1113,1291=>967,1292=>775,\n1293=>660,1294=>773,1295=>711,1296=>614,1297=>541,1298=>752,1299=>639,1300=>1169,1301=>994,1302=>894,\n1303=>864,1304=>1032,1305=>986,1306=>787,1307=>635,1308=>989,1309=>818,1312=>1081,1313=>905,1314=>1081,\n1315=>912,1316=>793,1317=>683,1329=>867,1330=>732,1331=>882,1332=>882,1333=>732,1334=>644,1335=>682,\n1336=>732,1337=>851,1338=>882,1339=>732,1340=>557,1341=>824,1342=>986,1343=>732,1344=>707,1345=>644,\n1346=>882,1347=>777,1348=>882,1349=>732,1350=>840,1351=>732,1352=>732,1353=>732,1354=>791,1355=>644,\n1356=>882,1357=>732,1358=>882,1359=>635,1360=>732,1361=>732,1362=>799,1363=>787,1364=>790,1365=>787,\n1366=>635,1369=>307,1370=>318,1371=>500,1372=>500,1373=>392,1374=>526,1375=>500,1377=>974,1378=>634,\n1379=>762,1380=>767,1381=>634,1382=>697,1383=>533,1384=>634,1385=>700,1386=>697,1387=>634,1388=>404,\n1389=>894,1390=>641,1391=>634,1392=>634,1393=>635,1394=>702,1395=>634,1396=>659,1397=>278,1398=>760,\n1399=>516,1400=>634,1401=>453,1402=>974,1403=>516,1404=>769,1405=>634,1406=>696,1407=>974,1408=>634,\n1409=>635,1410=>501,1411=>974,1412=>648,1413=>612,1414=>629,1415=>763,1417=>337,1418=>433,1456=>0,\n1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1466=>0,\n1467=>0,1468=>0,1469=>0,1470=>361,1471=>0,1472=>295,1473=>0,1474=>0,1475=>295,1478=>441,\n1479=>0,1488=>629,1489=>608,1490=>448,1491=>594,1492=>640,1493=>272,1494=>374,1495=>640,1496=>648,\n1497=>272,1498=>592,1499=>556,1500=>599,1501=>640,1502=>659,1503=>272,1504=>441,1505=>700,1506=>563,\n1507=>640,1508=>604,1509=>521,1510=>581,1511=>663,1512=>592,1513=>808,1514=>657,1520=>471,1521=>454,\n1522=>471,1523=>416,1524=>645,1542=>637,1543=>637,1545=>757,1546=>977,1548=>323,1557=>0,1563=>318,\n1567=>531,1569=>470,1570=>278,1571=>278,1572=>483,1573=>278,1574=>783,1575=>278,1576=>941,1577=>524,\n1578=>941,1579=>941,1580=>646,1581=>646,1582=>646,1583=>445,1584=>445,1585=>483,1586=>483,1587=>1221,\n1588=>1221,1589=>1209,1590=>1209,1591=>925,1592=>925,1593=>597,1594=>597,1600=>293,1601=>1037,1602=>776,\n1603=>824,1604=>727,1605=>619,1606=>734,1607=>524,1608=>483,1609=>783,1610=>783,1611=>0,1612=>0,\n1613=>0,1614=>0,1615=>0,1616=>0,1617=>0,1618=>0,1619=>0,1620=>0,1621=>0,1626=>500,\n1632=>537,1633=>537,1634=>537,1635=>537,1636=>537,1637=>537,1638=>537,1639=>537,1640=>537,1641=>537,\n1642=>537,1643=>325,1644=>318,1645=>545,1646=>941,1647=>776,1652=>292,1657=>941,1658=>941,1659=>941,\n1660=>941,1661=>941,1662=>941,1663=>941,1664=>941,1665=>646,1666=>646,1667=>646,1668=>646,1669=>646,\n1670=>646,1671=>646,1681=>483,1682=>483,1685=>610,1688=>483,1697=>1037,1700=>1037,1702=>1037,1705=>895,\n1711=>895,1717=>727,1722=>734,1727=>646,1734=>483,1740=>783,1742=>783,1749=>524,1776=>537,1777=>537,\n1778=>537,1779=>537,1780=>537,1781=>537,1782=>537,1783=>537,1784=>537,1785=>537,1984=>636,1985=>636,\n1986=>636,1987=>636,1988=>636,1989=>636,1990=>636,1991=>636,1992=>636,1993=>636,1994=>278,1995=>571,\n1996=>424,1997=>592,1998=>654,1999=>654,2000=>594,2001=>654,2002=>829,2003=>438,2004=>438,2005=>559,\n2006=>612,2007=>350,2008=>959,2009=>473,2010=>783,2011=>654,2012=>625,2013=>734,2014=>530,2015=>724,\n2016=>473,2017=>625,2018=>594,2019=>530,2020=>530,2021=>522,2022=>594,2023=>594,2027=>0,2028=>0,\n2029=>0,2030=>0,2031=>0,2032=>0,2033=>0,2034=>0,2035=>0,2036=>313,2037=>313,2040=>560,\n2041=>560,2042=>361,3647=>652,3713=>670,3714=>684,3716=>688,3719=>482,3720=>628,3722=>684,3725=>688,\n3732=>669,3733=>642,3734=>645,3735=>655,3737=>659,3738=>625,3739=>625,3740=>745,3741=>767,3742=>687,\n3743=>687,3745=>702,3746=>688,3747=>684,3749=>649,3751=>632,3754=>703,3755=>819,3757=>633,3758=>684,\n3759=>788,3760=>632,3761=>0,3762=>539,3763=>539,3764=>0,3765=>0,3766=>0,3767=>0,3768=>0,\n3769=>0,3771=>0,3772=>0,3773=>663,3776=>375,3777=>657,3778=>460,3779=>547,3780=>491,3782=>674,\n3784=>0,3785=>0,3786=>0,3787=>0,3788=>0,3789=>0,3792=>636,3793=>641,3794=>641,3795=>670,\n3796=>625,3797=>625,3798=>703,3799=>670,3800=>674,3801=>677,3804=>1028,3805=>1028,4256=>840,4257=>690,\n4258=>642,4259=>759,4260=>591,4261=>686,4262=>789,4263=>811,4264=>467,4265=>565,4266=>789,4267=>793,\n4268=>584,4269=>837,4270=>750,4271=>688,4272=>811,4273=>584,4274=>584,4275=>837,4276=>837,4277=>646,\n4278=>604,4279=>584,4280=>596,4281=>584,4282=>721,4283=>795,4284=>584,4285=>566,4286=>584,4287=>669,\n4288=>799,4289=>542,4290=>664,4291=>542,4292=>565,4293=>674,4304=>508,4305=>508,4306=>533,4307=>785,\n4308=>522,4309=>517,4310=>508,4311=>797,4312=>507,4313=>518,4314=>1058,4315=>522,4316=>523,4317=>783,\n4318=>518,4319=>523,4320=>792,4321=>523,4322=>656,4323=>524,4324=>788,4325=>523,4326=>782,4327=>523,\n4328=>522,4329=>522,4330=>566,4331=>523,4332=>523,4333=>489,4334=>522,4335=>498,4336=>517,4337=>560,\n4338=>508,4339=>508,4340=>508,4341=>563,4342=>824,4343=>595,4344=>522,4345=>554,4346=>553,4347=>586,\n4348=>304,5121=>684,5122=>684,5123=>684,5124=>684,5125=>769,5126=>769,5127=>769,5129=>769,5130=>769,\n5131=>769,5132=>835,5133=>834,5134=>835,5135=>834,5136=>835,5137=>834,5138=>967,5139=>1007,5140=>967,\n5141=>1007,5142=>769,5143=>967,5144=>1007,5145=>967,5146=>1007,5147=>769,5149=>256,5150=>543,5151=>423,\n5152=>423,5153=>389,5154=>389,5155=>393,5156=>389,5157=>466,5158=>385,5159=>256,5160=>389,5161=>389,\n5162=>389,5163=>1090,5164=>909,5165=>953,5166=>1117,5167=>684,5168=>684,5169=>684,5170=>684,5171=>729,\n5172=>729,5173=>729,5175=>729,5176=>729,5177=>729,5178=>835,5179=>684,5180=>835,5181=>834,5182=>835,\n5183=>834,5184=>967,5185=>1007,5186=>967,5187=>1007,5188=>967,5189=>1007,5190=>967,5191=>1007,5192=>729,\n5193=>508,5194=>192,5196=>732,5197=>732,5198=>732,5199=>732,5200=>730,5201=>730,5202=>730,5204=>730,\n5205=>730,5206=>730,5207=>921,5208=>889,5209=>921,5210=>889,5211=>921,5212=>889,5213=>928,5214=>900,\n5215=>928,5216=>900,5217=>947,5218=>900,5219=>947,5220=>900,5221=>947,5222=>434,5223=>877,5224=>877,\n5225=>866,5226=>890,5227=>628,5228=>628,5229=>628,5230=>628,5231=>628,5232=>628,5233=>628,5234=>628,\n5235=>628,5236=>860,5237=>771,5238=>815,5239=>816,5240=>815,5241=>816,5242=>860,5243=>771,5244=>860,\n5245=>771,5246=>815,5247=>816,5248=>815,5249=>816,5250=>815,5251=>407,5252=>407,5253=>750,5254=>775,\n5255=>750,5256=>775,5257=>628,5258=>628,5259=>628,5260=>628,5261=>628,5262=>628,5263=>628,5264=>628,\n5265=>628,5266=>860,5267=>771,5268=>815,5269=>816,5270=>815,5271=>816,5272=>860,5273=>771,5274=>860,\n5275=>771,5276=>815,5277=>816,5278=>815,5279=>816,5280=>815,5281=>435,5282=>435,5283=>610,5284=>557,\n5285=>557,5286=>557,5287=>610,5288=>610,5289=>610,5290=>557,5291=>557,5292=>749,5293=>769,5294=>746,\n5295=>764,5296=>746,5297=>764,5298=>749,5299=>769,5300=>749,5301=>769,5302=>746,5303=>764,5304=>746,\n5305=>764,5306=>746,5307=>386,5308=>508,5309=>386,5312=>852,5313=>852,5314=>852,5315=>852,5316=>852,\n5317=>852,5318=>852,5319=>852,5320=>852,5321=>1069,5322=>1035,5323=>1059,5324=>852,5325=>1059,5326=>852,\n5327=>852,5328=>600,5329=>453,5330=>600,5331=>852,5332=>852,5333=>852,5334=>852,5335=>852,5336=>852,\n5337=>852,5338=>852,5339=>852,5340=>1069,5341=>1035,5342=>1059,5343=>1030,5344=>1059,5345=>1030,5346=>1069,\n5347=>1035,5348=>1069,5349=>1035,5350=>1083,5351=>1030,5352=>1083,5353=>1030,5354=>600,5356=>729,5357=>603,\n5358=>603,5359=>603,5360=>603,5361=>603,5362=>603,5363=>603,5364=>603,5365=>603,5366=>834,5367=>754,\n5368=>792,5369=>771,5370=>792,5371=>771,5372=>834,5373=>754,5374=>834,5375=>754,5376=>792,5377=>771,\n5378=>792,5379=>771,5380=>792,5381=>418,5382=>420,5383=>418,5392=>712,5393=>712,5394=>712,5395=>892,\n5396=>892,5397=>892,5398=>892,5399=>910,5400=>872,5401=>910,5402=>872,5403=>910,5404=>872,5405=>1140,\n5406=>1100,5407=>1140,5408=>1100,5409=>1140,5410=>1100,5411=>1140,5412=>1100,5413=>641,5414=>627,5415=>627,\n5416=>627,5417=>627,5418=>627,5419=>627,5420=>627,5421=>627,5422=>627,5423=>844,5424=>781,5425=>816,\n5426=>818,5427=>816,5428=>818,5429=>844,5430=>781,5431=>844,5432=>781,5433=>816,5434=>818,5435=>816,\n5436=>818,5437=>816,5438=>418,5440=>389,5441=>484,5442=>916,5443=>916,5444=>916,5445=>916,5446=>916,\n5447=>916,5448=>603,5449=>603,5450=>603,5451=>603,5452=>603,5453=>603,5454=>834,5455=>754,5456=>418,\n5458=>729,5459=>684,5460=>684,5461=>684,5462=>684,5463=>726,5464=>726,5465=>726,5466=>726,5467=>924,\n5468=>1007,5469=>508,5470=>732,5471=>732,5472=>732,5473=>732,5474=>732,5475=>732,5476=>730,5477=>730,\n5478=>730,5479=>730,5480=>947,5481=>900,5482=>508,5492=>831,5493=>831,5494=>831,5495=>831,5496=>831,\n5497=>831,5498=>831,5499=>563,5500=>752,5501=>484,5502=>1047,5503=>1047,5504=>1047,5505=>1047,5506=>1047,\n5507=>1047,5508=>1047,5509=>825,5514=>831,5515=>831,5516=>831,5517=>831,5518=>1259,5519=>1259,5520=>1259,\n5521=>1002,5522=>1002,5523=>1259,5524=>1259,5525=>700,5526=>1073,5536=>852,5537=>852,5538=>852,5539=>852,\n5540=>852,5541=>852,5542=>600,5543=>643,5544=>643,5545=>643,5546=>643,5547=>643,5548=>643,5549=>643,\n5550=>418,5551=>628,5598=>770,5601=>767,5702=>468,5703=>468,5742=>444,5743=>1047,5744=>1310,5745=>1632,\n5746=>1632,5747=>1375,5748=>1375,5749=>1632,5750=>1632,5760=>477,5761=>493,5762=>712,5763=>931,5764=>1150,\n5765=>1370,5766=>493,5767=>712,5768=>931,5769=>1150,5770=>1370,5771=>498,5772=>718,5773=>938,5774=>1159,\n5775=>1379,5776=>493,5777=>712,5778=>930,5779=>1149,5780=>1370,5781=>498,5782=>752,5783=>789,5784=>1205,\n5785=>1150,5786=>683,5787=>507,5788=>507,7424=>592,7425=>717,7426=>982,7427=>586,7428=>550,7429=>605,\n7430=>605,7431=>491,7432=>541,7433=>278,7434=>395,7435=>579,7436=>583,7437=>754,7438=>650,7439=>612,\n7440=>550,7441=>684,7442=>684,7443=>684,7444=>1023,7446=>612,7447=>612,7448=>524,7449=>602,7450=>602,\n7451=>583,7452=>574,7453=>737,7454=>948,7455=>638,7456=>592,7457=>818,7458=>525,7459=>526,7462=>583,\n7463=>592,7464=>564,7465=>524,7466=>590,7467=>639,7468=>431,7469=>613,7470=>432,7472=>485,7473=>398,\n7474=>398,7475=>488,7476=>474,7477=>186,7478=>186,7479=>413,7480=>351,7481=>543,7482=>471,7483=>471,\n7484=>496,7485=>439,7486=>380,7487=>438,7488=>385,7489=>461,7490=>623,7491=>392,7492=>392,7493=>405,\n7494=>648,7495=>428,7496=>405,7497=>417,7498=>417,7499=>360,7500=>359,7501=>405,7502=>179,7503=>426,\n7504=>623,7505=>409,7506=>414,7507=>370,7508=>414,7509=>414,7510=>428,7511=>295,7512=>405,7513=>470,\n7514=>623,7515=>417,7517=>402,7518=>373,7519=>385,7520=>416,7521=>364,7522=>179,7523=>259,7524=>405,\n7525=>417,7526=>402,7527=>373,7528=>412,7529=>416,7530=>364,7543=>635,7544=>474,7547=>372,7557=>278,\n7579=>405,7580=>370,7581=>370,7582=>414,7583=>360,7584=>296,7585=>233,7586=>405,7587=>405,7588=>261,\n7589=>250,7590=>261,7591=>261,7592=>234,7593=>250,7594=>235,7595=>376,7596=>623,7597=>623,7598=>411,\n7599=>479,7600=>409,7601=>414,7602=>414,7603=>360,7604=>287,7605=>295,7606=>508,7607=>418,7608=>361,\n7609=>406,7610=>417,7611=>366,7612=>437,7613=>366,7614=>392,7615=>414,7620=>0,7621=>0,7622=>0,\n7623=>0,7624=>0,7625=>0,7680=>684,7681=>613,7682=>686,7683=>635,7684=>686,7685=>635,7686=>686,\n7687=>635,7688=>698,7689=>550,7690=>770,7691=>635,7692=>770,7693=>635,7694=>770,7695=>635,7696=>770,\n7697=>635,7698=>770,7699=>635,7700=>632,7701=>615,7702=>632,7703=>615,7704=>632,7705=>615,7706=>632,\n7707=>615,7708=>632,7709=>615,7710=>575,7711=>352,7712=>775,7713=>635,7714=>752,7715=>634,7716=>752,\n7717=>634,7718=>752,7719=>634,7720=>752,7721=>634,7722=>752,7723=>634,7724=>295,7725=>278,7726=>295,\n7727=>278,7728=>656,7729=>579,7730=>656,7731=>579,7732=>656,7733=>579,7734=>557,7735=>288,7736=>557,\n7737=>288,7738=>557,7739=>278,7740=>557,7741=>278,7742=>863,7743=>974,7744=>863,7745=>974,7746=>863,\n7747=>974,7748=>748,7749=>634,7750=>748,7751=>634,7752=>748,7753=>634,7754=>748,7755=>634,7756=>787,\n7757=>612,7758=>787,7759=>612,7760=>787,7761=>612,7762=>787,7763=>612,7764=>603,7765=>635,7766=>603,\n7767=>635,7768=>695,7769=>411,7770=>695,7771=>411,7772=>695,7773=>411,7774=>695,7775=>411,7776=>635,\n7777=>521,7778=>635,7779=>521,7780=>635,7781=>521,7782=>635,7783=>521,7784=>635,7785=>521,7786=>611,\n7787=>392,7788=>611,7789=>392,7790=>611,7791=>392,7792=>611,7793=>392,7794=>732,7795=>634,7796=>732,\n7797=>634,7798=>732,7799=>634,7800=>732,7801=>634,7802=>732,7803=>634,7804=>684,7805=>592,7806=>684,\n7807=>592,7808=>989,7809=>818,7810=>989,7811=>818,7812=>989,7813=>818,7814=>989,7815=>818,7816=>989,\n7817=>818,7818=>685,7819=>592,7820=>685,7821=>592,7822=>611,7823=>592,7824=>685,7825=>525,7826=>685,\n7827=>525,7828=>685,7829=>525,7830=>634,7831=>392,7832=>818,7833=>592,7834=>613,7835=>352,7838=>769,\n7839=>612,7840=>684,7841=>613,7842=>684,7843=>613,7844=>684,7845=>613,7846=>684,7847=>613,7848=>684,\n7849=>613,7850=>684,7851=>613,7852=>684,7853=>613,7854=>684,7855=>613,7856=>684,7857=>613,7858=>684,\n7859=>613,7860=>684,7861=>613,7862=>684,7863=>613,7864=>632,7865=>615,7866=>632,7867=>615,7868=>632,\n7869=>615,7870=>632,7871=>615,7872=>632,7873=>615,7874=>632,7875=>615,7876=>632,7877=>615,7878=>632,\n7879=>615,7880=>295,7881=>278,7882=>295,7883=>278,7884=>787,7885=>612,7886=>787,7887=>612,7888=>787,\n7889=>612,7890=>787,7891=>612,7892=>787,7893=>612,7894=>787,7895=>612,7896=>787,7897=>612,7898=>913,\n7899=>612,7900=>913,7901=>612,7902=>913,7903=>612,7904=>913,7905=>612,7906=>913,7907=>612,7908=>732,\n7909=>634,7910=>732,7911=>634,7912=>858,7913=>634,7914=>858,7915=>634,7916=>858,7917=>634,7918=>858,\n7919=>634,7920=>858,7921=>634,7922=>611,7923=>592,7924=>611,7925=>592,7926=>611,7927=>592,7928=>611,\n7929=>592,7936=>659,7937=>659,7938=>659,7939=>659,7940=>659,7941=>659,7942=>659,7943=>659,7944=>684,\n7945=>684,7946=>877,7947=>877,7948=>769,7949=>801,7950=>708,7951=>743,7952=>541,7953=>541,7954=>541,\n7955=>541,7956=>541,7957=>541,7960=>711,7961=>711,7962=>966,7963=>975,7964=>898,7965=>928,7968=>634,\n7969=>634,7970=>634,7971=>634,7972=>634,7973=>634,7974=>634,7975=>634,7976=>837,7977=>835,7978=>1086,\n7979=>1089,7980=>1027,7981=>1051,7982=>934,7983=>947,7984=>338,7985=>338,7986=>338,7987=>338,7988=>338,\n7989=>338,7990=>338,7991=>338,7992=>380,7993=>374,7994=>635,7995=>635,7996=>570,7997=>600,7998=>489,\n7999=>493,8000=>612,8001=>612,8002=>612,8003=>612,8004=>612,8005=>612,8008=>804,8009=>848,8010=>1095,\n8011=>1100,8012=>938,8013=>970,8016=>579,8017=>579,8018=>579,8019=>579,8020=>579,8021=>579,8022=>579,\n8023=>579,8025=>784,8027=>998,8029=>1012,8031=>897,8032=>837,8033=>837,8034=>837,8035=>837,8036=>837,\n8037=>837,8038=>837,8039=>837,8040=>802,8041=>843,8042=>1089,8043=>1095,8044=>946,8045=>972,8046=>921,\n8047=>952,8048=>659,8049=>659,8050=>541,8051=>548,8052=>634,8053=>654,8054=>338,8055=>338,8056=>612,\n8057=>612,8058=>579,8059=>579,8060=>837,8061=>837,8064=>659,8065=>659,8066=>659,8067=>659,8068=>659,\n8069=>659,8070=>659,8071=>659,8072=>684,8073=>684,8074=>877,8075=>877,8076=>769,8077=>801,8078=>708,\n8079=>743,8080=>634,8081=>634,8082=>634,8083=>634,8084=>634,8085=>634,8086=>634,8087=>634,8088=>837,\n8089=>835,8090=>1086,8091=>1089,8092=>1027,8093=>1051,8094=>934,8095=>947,8096=>837,8097=>837,8098=>837,\n8099=>837,8100=>837,8101=>837,8102=>837,8103=>837,8104=>802,8105=>843,8106=>1089,8107=>1095,8108=>946,\n8109=>972,8110=>921,8111=>952,8112=>659,8113=>659,8114=>659,8115=>659,8116=>659,8118=>659,8119=>659,\n8120=>684,8121=>684,8122=>716,8123=>692,8124=>684,8125=>500,8126=>500,8127=>500,8128=>500,8129=>500,\n8130=>634,8131=>634,8132=>654,8134=>634,8135=>634,8136=>805,8137=>746,8138=>931,8139=>871,8140=>752,\n8141=>500,8142=>500,8143=>500,8144=>338,8145=>338,8146=>338,8147=>338,8150=>338,8151=>338,8152=>295,\n8153=>295,8154=>475,8155=>408,8157=>500,8158=>500,8159=>500,8160=>579,8161=>579,8162=>579,8163=>579,\n8164=>635,8165=>635,8166=>579,8167=>579,8168=>611,8169=>611,8170=>845,8171=>825,8172=>685,8173=>500,\n8174=>500,8175=>500,8178=>837,8179=>837,8180=>837,8182=>837,8183=>837,8184=>941,8185=>813,8186=>922,\n8187=>826,8188=>764,8189=>500,8190=>500,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>330,8197=>250,\n8198=>167,8199=>636,8200=>318,8201=>200,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,\n8208=>361,8209=>361,8210=>636,8213=>1000,8214=>500,8215=>500,8219=>318,8223=>518,8227=>590,8228=>334,\n8229=>667,8231=>318,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>200,8241=>1735,8242=>227,\n8243=>374,8244=>520,8245=>227,8246=>374,8247=>520,8248=>339,8251=>838,8252=>485,8253=>531,8254=>500,\n8255=>804,8256=>804,8257=>250,8258=>1000,8259=>500,8260=>167,8261=>390,8262=>390,8263=>922,8264=>733,\n8265=>733,8266=>497,8267=>636,8268=>500,8269=>500,8270=>500,8271=>337,8272=>804,8273=>500,8274=>450,\n8275=>1000,8276=>804,8277=>838,8278=>586,8279=>663,8280=>838,8281=>838,8282=>318,8283=>797,8284=>838,\n8285=>318,8286=>318,8287=>222,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8298=>0,8299=>0,\n8300=>0,8301=>0,8302=>0,8303=>0,8304=>401,8305=>179,8308=>401,8309=>401,8310=>401,8311=>401,\n8312=>401,8313=>401,8314=>528,8315=>528,8316=>528,8317=>246,8318=>246,8319=>398,8320=>401,8321=>401,\n8322=>401,8323=>401,8324=>401,8325=>401,8326=>401,8327=>401,8328=>401,8329=>401,8330=>528,8331=>528,\n8332=>528,8333=>246,8334=>246,8336=>392,8337=>417,8338=>414,8339=>444,8340=>417,8352=>877,8353=>636,\n8354=>636,8355=>636,8356=>636,8357=>974,8358=>748,8359=>1272,8360=>1074,8361=>989,8362=>784,8363=>635,\n8365=>636,8366=>636,8367=>1272,8368=>636,8369=>636,8370=>636,8371=>636,8372=>774,8373=>641,8400=>0,\n8401=>0,8406=>0,8407=>0,8411=>0,8412=>0,8417=>0,8448=>1019,8449=>1019,8450=>698,8451=>1123,\n8452=>642,8453=>1019,8454=>1067,8455=>614,8456=>698,8457=>952,8459=>988,8460=>754,8461=>850,8462=>634,\n8463=>634,8464=>470,8465=>697,8466=>720,8467=>413,8468=>818,8469=>801,8470=>1040,8471=>1000,8472=>697,\n8473=>701,8474=>787,8475=>798,8476=>814,8477=>792,8478=>896,8479=>684,8480=>1020,8481=>1074,8483=>684,\n8484=>745,8485=>578,8486=>764,8487=>764,8488=>616,8489=>338,8490=>656,8491=>684,8492=>786,8493=>703,\n8494=>854,8495=>592,8496=>605,8497=>786,8498=>575,8499=>1069,8500=>462,8501=>745,8502=>674,8503=>466,\n8504=>645,8505=>380,8506=>926,8507=>1194,8508=>702,8509=>728,8510=>654,8511=>849,8512=>811,8513=>775,\n8514=>557,8515=>557,8516=>611,8517=>819,8518=>708,8519=>615,8520=>351,8521=>351,8523=>780,8526=>526,\n8531=>969,8532=>969,8533=>969,8534=>969,8535=>969,8536=>969,8537=>969,8538=>969,8539=>969,8540=>969,\n8541=>969,8542=>969,8543=>568,8544=>295,8545=>492,8546=>689,8547=>923,8548=>684,8549=>922,8550=>1120,\n8551=>1317,8552=>917,8553=>685,8554=>933,8555=>1131,8556=>557,8557=>698,8558=>770,8559=>863,8560=>278,\n8561=>458,8562=>637,8563=>812,8564=>592,8565=>811,8566=>991,8567=>1170,8568=>819,8569=>592,8570=>822,\n8571=>1002,8572=>278,8573=>550,8574=>635,8575=>974,8576=>1245,8577=>770,8578=>1245,8579=>703,8580=>549,\n8592=>838,8593=>838,8594=>838,8595=>838,8596=>838,8597=>838,8598=>838,8599=>838,8600=>838,8601=>838,\n8602=>838,8603=>838,8604=>838,8605=>838,8606=>838,8607=>838,8608=>838,8609=>838,8610=>838,8611=>838,\n8612=>838,8613=>838,8614=>838,8615=>838,8616=>838,8617=>838,8618=>838,8619=>838,8620=>838,8621=>838,\n8622=>838,8623=>838,8624=>838,8625=>838,8626=>838,8627=>838,8628=>838,8629=>838,8630=>838,8631=>838,\n8632=>838,8633=>838,8634=>838,8635=>838,8636=>838,8637=>838,8638=>838,8639=>838,8640=>838,8641=>838,\n8642=>838,8643=>838,8644=>838,8645=>838,8646=>838,8647=>838,8648=>838,8649=>838,8650=>838,8651=>838,\n8652=>838,8653=>838,8654=>838,8655=>838,8656=>838,8657=>838,8658=>838,8659=>838,8660=>838,8661=>838,\n8662=>838,8663=>838,8664=>838,8665=>838,8666=>838,8667=>838,8668=>838,8669=>838,8670=>838,8671=>838,\n8672=>838,8673=>838,8674=>838,8675=>838,8676=>838,8677=>838,8678=>838,8679=>838,8680=>838,8681=>838,\n8682=>838,8683=>838,8684=>838,8685=>838,8686=>838,8687=>838,8688=>838,8689=>838,8690=>838,8691=>838,\n8692=>838,8693=>838,8694=>838,8695=>838,8696=>838,8697=>838,8698=>838,8699=>838,8700=>838,8701=>838,\n8702=>838,8703=>838,8704=>684,8705=>636,8706=>517,8707=>632,8708=>632,8709=>871,8710=>669,8711=>669,\n8712=>871,8713=>871,8714=>718,8715=>871,8716=>871,8717=>718,8718=>636,8719=>757,8720=>757,8721=>674,\n8722=>838,8723=>838,8724=>838,8725=>337,8726=>637,8727=>838,8728=>626,8729=>626,8730=>637,8731=>637,\n8732=>637,8733=>714,8734=>833,8735=>838,8736=>896,8737=>896,8738=>838,8739=>500,8740=>500,8741=>500,\n8742=>500,8743=>732,8744=>732,8745=>732,8746=>732,8747=>521,8748=>789,8749=>1057,8750=>521,8751=>789,\n8752=>1057,8753=>521,8754=>521,8755=>521,8756=>636,8757=>636,8758=>260,8759=>636,8760=>838,8761=>838,\n8762=>838,8763=>838,8764=>838,8765=>838,8766=>838,8767=>838,8768=>375,8769=>838,8770=>838,8771=>838,\n8772=>838,8773=>838,8774=>838,8775=>838,8776=>838,8777=>838,8778=>838,8779=>838,8780=>838,8781=>838,\n8782=>838,8783=>838,8784=>838,8785=>838,8786=>839,8787=>839,8788=>1000,8789=>1000,8790=>838,8791=>838,\n8792=>838,8793=>838,8794=>838,8795=>838,8796=>838,8797=>838,8798=>838,8799=>838,8800=>838,8801=>838,\n8802=>838,8803=>838,8804=>838,8805=>838,8806=>838,8807=>838,8808=>838,8809=>838,8810=>1047,8811=>1047,\n8812=>464,8813=>838,8814=>838,8815=>838,8816=>838,8817=>838,8818=>838,8819=>838,8820=>838,8821=>838,\n8822=>838,8823=>838,8824=>838,8825=>838,8826=>838,8827=>838,8828=>838,8829=>838,8830=>838,8831=>838,\n8832=>838,8833=>838,8834=>838,8835=>838,8836=>838,8837=>838,8838=>838,8839=>838,8840=>838,8841=>838,\n8842=>838,8843=>838,8844=>732,8845=>732,8846=>732,8847=>838,8848=>838,8849=>838,8850=>838,8851=>780,\n8852=>780,8853=>838,8854=>838,8855=>838,8856=>838,8857=>838,8858=>838,8859=>838,8860=>838,8861=>838,\n8862=>838,8863=>838,8864=>838,8865=>838,8866=>871,8867=>871,8868=>871,8869=>871,8870=>521,8871=>521,\n8872=>871,8873=>871,8874=>871,8875=>871,8876=>871,8877=>871,8878=>871,8879=>871,8880=>838,8881=>838,\n8882=>838,8883=>838,8884=>838,8885=>838,8886=>1000,8887=>1000,8888=>838,8889=>838,8890=>521,8891=>732,\n8892=>732,8893=>732,8894=>838,8895=>838,8896=>820,8897=>820,8898=>820,8899=>820,8900=>494,8901=>318,\n8902=>626,8903=>838,8904=>1000,8905=>1000,8906=>1000,8907=>1000,8908=>1000,8909=>838,8910=>732,8911=>732,\n8912=>838,8913=>838,8914=>838,8915=>838,8916=>838,8917=>838,8918=>838,8919=>838,8920=>1422,8921=>1422,\n8922=>838,8923=>838,8924=>838,8925=>838,8926=>838,8927=>838,8928=>838,8929=>838,8930=>838,8931=>838,\n8932=>838,8933=>838,8934=>838,8935=>838,8936=>838,8937=>838,8938=>838,8939=>838,8940=>838,8941=>838,\n8942=>1000,8943=>1000,8944=>1000,8945=>1000,8946=>1000,8947=>871,8948=>718,8949=>871,8950=>871,8951=>718,\n8952=>871,8953=>871,8954=>1000,8955=>871,8956=>718,8957=>871,8958=>718,8959=>871,8960=>602,8961=>602,\n8962=>635,8963=>838,8964=>838,8965=>838,8966=>838,8967=>488,8968=>390,8969=>390,8970=>390,8971=>390,\n8972=>809,8973=>809,8974=>809,8975=>809,8976=>838,8977=>513,8984=>1000,8985=>838,8988=>469,8989=>469,\n8990=>469,8991=>469,8992=>521,8993=>521,8996=>1152,8997=>1152,8998=>1414,8999=>1152,9000=>1443,9003=>1414,\n9004=>873,9075=>338,9076=>635,9077=>837,9082=>659,9085=>757,9095=>1152,9108=>873,9115=>500,9116=>500,\n9117=>500,9118=>500,9119=>500,9120=>500,9121=>500,9122=>500,9123=>500,9124=>500,9125=>500,9126=>500,\n9127=>750,9128=>750,9129=>750,9130=>750,9131=>750,9132=>750,9133=>750,9134=>521,9166=>838,9167=>945,\n9187=>873,9189=>769,9250=>635,9251=>635,9312=>896,9313=>896,9314=>896,9315=>896,9316=>896,9317=>896,\n9318=>896,9319=>896,9320=>896,9321=>896,9472=>602,9473=>602,9474=>602,9475=>602,9476=>602,9477=>602,\n9478=>602,9479=>602,9480=>602,9481=>602,9482=>602,9483=>602,9484=>602,9485=>602,9486=>602,9487=>602,\n9488=>602,9489=>602,9490=>602,9491=>602,9492=>602,9493=>602,9494=>602,9495=>602,9496=>602,9497=>602,\n9498=>602,9499=>602,9500=>602,9501=>602,9502=>602,9503=>602,9504=>602,9505=>602,9506=>602,9507=>602,\n9508=>602,9509=>602,9510=>602,9511=>602,9512=>602,9513=>602,9514=>602,9515=>602,9516=>602,9517=>602,\n9518=>602,9519=>602,9520=>602,9521=>602,9522=>602,9523=>602,9524=>602,9525=>602,9526=>602,9527=>602,\n9528=>602,9529=>602,9530=>602,9531=>602,9532=>602,9533=>602,9534=>602,9535=>602,9536=>602,9537=>602,\n9538=>602,9539=>602,9540=>602,9541=>602,9542=>602,9543=>602,9544=>602,9545=>602,9546=>602,9547=>602,\n9548=>602,9549=>602,9550=>602,9551=>602,9552=>602,9553=>602,9554=>602,9555=>602,9556=>602,9557=>602,\n9558=>602,9559=>602,9560=>602,9561=>602,9562=>602,9563=>602,9564=>602,9565=>602,9566=>602,9567=>602,\n9568=>602,9569=>602,9570=>602,9571=>602,9572=>602,9573=>602,9574=>602,9575=>602,9576=>602,9577=>602,\n9578=>602,9579=>602,9580=>602,9581=>602,9582=>602,9583=>602,9584=>602,9585=>602,9586=>602,9587=>602,\n9588=>602,9589=>602,9590=>602,9591=>602,9592=>602,9593=>602,9594=>602,9595=>602,9596=>602,9597=>602,\n9598=>602,9599=>602,9600=>769,9601=>769,9602=>769,9603=>769,9604=>769,9605=>769,9606=>769,9607=>769,\n9608=>769,9609=>769,9610=>769,9611=>769,9612=>769,9613=>769,9614=>769,9615=>769,9616=>769,9617=>769,\n9618=>769,9619=>769,9620=>769,9621=>769,9622=>769,9623=>769,9624=>769,9625=>769,9626=>769,9627=>769,\n9628=>769,9629=>769,9630=>769,9631=>769,9632=>945,9633=>945,9634=>945,9635=>945,9636=>945,9637=>945,\n9638=>945,9639=>945,9640=>945,9641=>945,9642=>678,9643=>678,9644=>945,9645=>945,9646=>550,9647=>550,\n9648=>769,9649=>769,9650=>769,9651=>769,9652=>502,9653=>502,9654=>769,9655=>769,9656=>502,9657=>502,\n9658=>769,9659=>769,9660=>769,9661=>769,9662=>502,9663=>502,9664=>769,9665=>769,9666=>502,9667=>502,\n9668=>769,9669=>769,9670=>769,9671=>769,9672=>769,9673=>873,9674=>494,9675=>873,9676=>873,9677=>873,\n9678=>873,9679=>873,9680=>873,9681=>873,9682=>873,9683=>873,9684=>873,9685=>873,9686=>527,9687=>527,\n9688=>791,9689=>970,9690=>970,9691=>970,9692=>387,9693=>387,9694=>387,9695=>387,9696=>873,9697=>873,\n9698=>769,9699=>769,9700=>769,9701=>769,9702=>590,9703=>945,9704=>945,9705=>945,9706=>945,9707=>945,\n9708=>769,9709=>769,9710=>769,9711=>1119,9712=>945,9713=>945,9714=>945,9715=>945,9716=>873,9717=>873,\n9718=>873,9719=>873,9720=>769,9721=>769,9722=>769,9723=>830,9724=>830,9725=>732,9726=>732,9727=>769,\n9728=>896,9729=>1000,9730=>896,9731=>896,9732=>896,9733=>896,9734=>896,9735=>573,9736=>896,9737=>896,\n9738=>888,9739=>888,9740=>671,9741=>1013,9742=>1246,9743=>1250,9744=>896,9745=>896,9746=>896,9747=>532,\n9748=>896,9749=>896,9750=>896,9751=>896,9752=>896,9753=>896,9754=>896,9755=>896,9756=>896,9757=>609,\n9758=>896,9759=>609,9760=>896,9761=>896,9762=>896,9763=>896,9764=>669,9765=>746,9766=>649,9767=>784,\n9768=>545,9769=>896,9770=>896,9771=>896,9772=>710,9773=>896,9774=>896,9775=>896,9776=>896,9777=>896,\n9778=>896,9779=>896,9780=>896,9781=>896,9782=>896,9783=>896,9784=>896,9785=>896,9786=>896,9787=>896,\n9788=>896,9789=>896,9790=>896,9791=>614,9792=>731,9793=>731,9794=>896,9795=>896,9796=>896,9797=>896,\n9798=>896,9799=>896,9800=>896,9801=>896,9802=>896,9803=>896,9804=>896,9805=>896,9806=>896,9807=>896,\n9808=>896,9809=>896,9810=>896,9811=>896,9812=>896,9813=>896,9814=>896,9815=>896,9816=>896,9817=>896,\n9818=>896,9819=>896,9820=>896,9821=>896,9822=>896,9823=>896,9824=>896,9825=>896,9826=>896,9827=>896,\n9828=>896,9829=>896,9830=>896,9831=>896,9832=>896,9833=>472,9834=>638,9835=>896,9836=>896,9837=>472,\n9838=>357,9839=>484,9840=>748,9841=>766,9842=>896,9843=>896,9844=>896,9845=>896,9846=>896,9847=>896,\n9848=>896,9849=>896,9850=>896,9851=>896,9852=>896,9853=>896,9854=>896,9855=>896,9856=>869,9857=>869,\n9858=>869,9859=>869,9860=>869,9861=>869,9862=>896,9863=>896,9864=>896,9865=>896,9866=>896,9867=>896,\n9868=>896,9869=>896,9870=>896,9871=>896,9872=>896,9873=>896,9874=>896,9875=>896,9876=>896,9877=>541,\n9878=>896,9879=>896,9880=>896,9881=>896,9882=>896,9883=>896,9884=>896,9888=>896,9889=>702,9890=>1003,\n9891=>1085,9892=>1143,9893=>901,9894=>838,9895=>838,9896=>838,9897=>838,9898=>838,9899=>838,9900=>838,\n9901=>838,9902=>838,9903=>838,9904=>844,9905=>838,9906=>731,9907=>732,9908=>732,9909=>732,9910=>850,\n9911=>732,9912=>732,9985=>838,9986=>838,9987=>838,9988=>838,9990=>838,9991=>838,9992=>838,9993=>838,\n9996=>838,9997=>838,9998=>838,9999=>838,10000=>838,10001=>838,10002=>838,10003=>838,10004=>838,10005=>838,\n10006=>838,10007=>838,10008=>838,10009=>838,10010=>838,10011=>838,10012=>838,10013=>838,10014=>838,10015=>838,\n10016=>838,10017=>838,10018=>838,10019=>838,10020=>838,10021=>838,10022=>838,10023=>838,10025=>838,10026=>838,\n10027=>838,10028=>838,10029=>838,10030=>838,10031=>838,10032=>838,10033=>838,10034=>838,10035=>838,10036=>838,\n10037=>838,10038=>838,10039=>838,10040=>838,10041=>838,10042=>838,10043=>838,10044=>838,10045=>838,10046=>838,\n10047=>838,10048=>838,10049=>838,10050=>838,10051=>838,10052=>838,10053=>838,10054=>838,10055=>838,10056=>838,\n10057=>838,10058=>838,10059=>838,10061=>896,10063=>896,10064=>896,10065=>896,10066=>896,10070=>896,10072=>838,\n10073=>838,10074=>838,10075=>322,10076=>322,10077=>538,10078=>538,10081=>838,10082=>838,10083=>838,10084=>838,\n10085=>838,10086=>838,10087=>838,10088=>838,10089=>838,10090=>838,10091=>838,10092=>838,10093=>838,10094=>838,\n10095=>838,10096=>838,10097=>838,10098=>838,10099=>838,10100=>838,10101=>838,10102=>896,10103=>896,10104=>896,\n10105=>896,10106=>896,10107=>896,10108=>896,10109=>896,10110=>896,10111=>896,10112=>838,10113=>838,10114=>838,\n10115=>838,10116=>838,10117=>838,10118=>838,10119=>838,10120=>838,10121=>838,10122=>838,10123=>838,10124=>838,\n10125=>838,10126=>838,10127=>838,10128=>838,10129=>838,10130=>838,10131=>838,10132=>838,10136=>838,10137=>838,\n10138=>838,10139=>838,10140=>838,10141=>838,10142=>838,10143=>838,10144=>838,10145=>838,10146=>838,10147=>838,\n10148=>838,10149=>838,10150=>838,10151=>838,10152=>838,10153=>838,10154=>838,10155=>838,10156=>838,10157=>838,\n10158=>838,10159=>838,10161=>838,10162=>838,10163=>838,10164=>838,10165=>838,10166=>838,10167=>838,10168=>838,\n10169=>838,10170=>838,10171=>838,10172=>838,10173=>838,10174=>838,10181=>390,10182=>390,10208=>494,10214=>495,\n10215=>495,10216=>390,10217=>390,10218=>556,10219=>556,10224=>838,10225=>838,10226=>838,10227=>838,10228=>1157,\n10229=>1434,10230=>1434,10231=>1434,10232=>1434,10233=>1434,10234=>1434,10235=>1434,10236=>1434,10237=>1434,10238=>1434,\n10239=>1434,10240=>732,10241=>732,10242=>732,10243=>732,10244=>732,10245=>732,10246=>732,10247=>732,10248=>732,\n10249=>732,10250=>732,10251=>732,10252=>732,10253=>732,10254=>732,10255=>732,10256=>732,10257=>732,10258=>732,\n10259=>732,10260=>732,10261=>732,10262=>732,10263=>732,10264=>732,10265=>732,10266=>732,10267=>732,10268=>732,\n10269=>732,10270=>732,10271=>732,10272=>732,10273=>732,10274=>732,10275=>732,10276=>732,10277=>732,10278=>732,\n10279=>732,10280=>732,10281=>732,10282=>732,10283=>732,10284=>732,10285=>732,10286=>732,10287=>732,10288=>732,\n10289=>732,10290=>732,10291=>732,10292=>732,10293=>732,10294=>732,10295=>732,10296=>732,10297=>732,10298=>732,\n10299=>732,10300=>732,10301=>732,10302=>732,10303=>732,10304=>732,10305=>732,10306=>732,10307=>732,10308=>732,\n10309=>732,10310=>732,10311=>732,10312=>732,10313=>732,10314=>732,10315=>732,10316=>732,10317=>732,10318=>732,\n10319=>732,10320=>732,10321=>732,10322=>732,10323=>732,10324=>732,10325=>732,10326=>732,10327=>732,10328=>732,\n10329=>732,10330=>732,10331=>732,10332=>732,10333=>732,10334=>732,10335=>732,10336=>732,10337=>732,10338=>732,\n10339=>732,10340=>732,10341=>732,10342=>732,10343=>732,10344=>732,10345=>732,10346=>732,10347=>732,10348=>732,\n10349=>732,10350=>732,10351=>732,10352=>732,10353=>732,10354=>732,10355=>732,10356=>732,10357=>732,10358=>732,\n10359=>732,10360=>732,10361=>732,10362=>732,10363=>732,10364=>732,10365=>732,10366=>732,10367=>732,10368=>732,\n10369=>732,10370=>732,10371=>732,10372=>732,10373=>732,10374=>732,10375=>732,10376=>732,10377=>732,10378=>732,\n10379=>732,10380=>732,10381=>732,10382=>732,10383=>732,10384=>732,10385=>732,10386=>732,10387=>732,10388=>732,\n10389=>732,10390=>732,10391=>732,10392=>732,10393=>732,10394=>732,10395=>732,10396=>732,10397=>732,10398=>732,\n10399=>732,10400=>732,10401=>732,10402=>732,10403=>732,10404=>732,10405=>732,10406=>732,10407=>732,10408=>732,\n10409=>732,10410=>732,10411=>732,10412=>732,10413=>732,10414=>732,10415=>732,10416=>732,10417=>732,10418=>732,\n10419=>732,10420=>732,10421=>732,10422=>732,10423=>732,10424=>732,10425=>732,10426=>732,10427=>732,10428=>732,\n10429=>732,10430=>732,10431=>732,10432=>732,10433=>732,10434=>732,10435=>732,10436=>732,10437=>732,10438=>732,\n10439=>732,10440=>732,10441=>732,10442=>732,10443=>732,10444=>732,10445=>732,10446=>732,10447=>732,10448=>732,\n10449=>732,10450=>732,10451=>732,10452=>732,10453=>732,10454=>732,10455=>732,10456=>732,10457=>732,10458=>732,\n10459=>732,10460=>732,10461=>732,10462=>732,10463=>732,10464=>732,10465=>732,10466=>732,10467=>732,10468=>732,\n10469=>732,10470=>732,10471=>732,10472=>732,10473=>732,10474=>732,10475=>732,10476=>732,10477=>732,10478=>732,\n10479=>732,10480=>732,10481=>732,10482=>732,10483=>732,10484=>732,10485=>732,10486=>732,10487=>732,10488=>732,\n10489=>732,10490=>732,10491=>732,10492=>732,10493=>732,10494=>732,10495=>732,10502=>838,10503=>838,10506=>838,\n10507=>838,10560=>683,10561=>683,10627=>734,10628=>734,10702=>838,10703=>1000,10704=>1000,10705=>1000,10706=>1000,\n10707=>1000,10708=>1000,10709=>1000,10731=>494,10746=>838,10747=>838,10752=>1000,10753=>1000,10754=>1000,10764=>1325,\n10765=>521,10766=>521,10767=>521,10768=>521,10769=>521,10770=>521,10771=>521,10772=>521,10773=>521,10774=>521,\n10775=>521,10776=>521,10777=>521,10778=>521,10779=>521,10780=>521,10799=>838,10877=>838,10878=>838,10879=>838,\n10880=>838,10881=>838,10882=>838,10883=>838,10884=>838,10885=>838,10886=>838,10887=>838,10888=>838,10889=>838,\n10890=>838,10891=>838,10892=>838,10893=>838,10894=>838,10895=>838,10896=>838,10897=>838,10898=>838,10899=>838,\n10900=>838,10901=>838,10902=>838,10903=>838,10904=>838,10905=>838,10906=>838,10907=>838,10908=>838,10909=>838,\n10910=>838,10911=>838,10912=>838,10926=>838,10927=>838,10928=>838,10929=>838,10930=>838,10931=>838,10932=>838,\n10933=>838,10934=>838,10935=>838,10936=>838,10937=>838,10938=>838,11001=>838,11002=>838,11008=>838,11009=>838,\n11010=>838,11011=>838,11012=>838,11013=>838,11014=>838,11015=>838,11016=>838,11017=>838,11018=>838,11019=>838,\n11020=>838,11021=>838,11022=>836,11023=>836,11024=>836,11025=>836,11026=>945,11027=>945,11028=>945,11029=>945,\n11030=>769,11031=>769,11032=>769,11033=>769,11034=>945,11039=>869,11040=>869,11041=>873,11042=>873,11043=>873,\n11044=>1119,11091=>869,11092=>869,11360=>557,11361=>278,11362=>557,11363=>603,11364=>695,11365=>613,11366=>392,\n11367=>752,11368=>634,11369=>656,11370=>579,11371=>685,11372=>525,11373=>781,11374=>863,11375=>684,11377=>734,\n11378=>1128,11379=>961,11380=>592,11381=>654,11382=>568,11383=>660,11385=>414,11386=>612,11387=>491,11388=>175,\n11389=>431,11568=>646,11569=>888,11570=>888,11571=>682,11572=>684,11573=>635,11574=>562,11575=>684,11576=>684,\n11577=>632,11578=>632,11579=>683,11580=>875,11581=>685,11582=>491,11583=>685,11584=>888,11585=>888,11586=>300,\n11587=>627,11588=>752,11589=>656,11590=>527,11591=>685,11592=>645,11593=>632,11594=>502,11595=>953,11596=>778,\n11597=>748,11598=>621,11599=>295,11600=>778,11601=>295,11602=>752,11603=>633,11604=>888,11605=>888,11606=>752,\n11607=>320,11608=>749,11609=>888,11610=>888,11611=>698,11612=>768,11613=>685,11614=>698,11615=>622,11616=>684,\n11617=>752,11618=>632,11619=>788,11620=>567,11621=>788,11631=>515,11800=>531,11810=>390,11811=>390,11812=>390,\n11813=>390,11822=>531,19904=>896,19905=>896,19906=>896,19907=>896,19908=>896,19909=>896,19910=>896,19911=>896,\n19912=>896,19913=>896,19914=>896,19915=>896,19916=>896,19917=>896,19918=>896,19919=>896,19920=>896,19921=>896,\n19922=>896,19923=>896,19924=>896,19925=>896,19926=>896,19927=>896,19928=>896,19929=>896,19930=>896,19931=>896,\n19932=>896,19933=>896,19934=>896,19935=>896,19936=>896,19937=>896,19938=>896,19939=>896,19940=>896,19941=>896,\n19942=>896,19943=>896,19944=>896,19945=>896,19946=>896,19947=>896,19948=>896,19949=>896,19950=>896,19951=>896,\n19952=>896,19953=>896,19954=>896,19955=>896,19956=>896,19957=>896,19958=>896,19959=>896,19960=>896,19961=>896,\n19962=>896,19963=>896,19964=>896,19965=>896,19966=>896,19967=>896,42564=>635,42565=>521,42566=>354,42567=>338,\n42572=>1180,42573=>1028,42576=>1029,42577=>906,42580=>1080,42581=>842,42582=>977,42583=>843,42594=>1062,42595=>912,\n42596=>1066,42597=>901,42598=>1178,42599=>1008,42600=>787,42601=>612,42602=>855,42603=>712,42604=>1358,42605=>1019,\n42606=>879,42634=>782,42635=>685,42636=>611,42637=>583,42644=>686,42645=>634,42760=>493,42761=>493,42762=>493,\n42763=>493,42764=>493,42765=>493,42766=>493,42767=>493,42768=>493,42769=>493,42770=>493,42771=>493,42772=>493,\n42773=>493,42774=>493,42779=>369,42780=>369,42781=>252,42782=>252,42783=>252,42790=>752,42791=>634,42792=>878,\n42793=>709,42794=>614,42795=>541,42800=>491,42801=>521,42802=>1250,42803=>985,42804=>1203,42805=>990,42806=>1142,\n42807=>981,42808=>971,42809=>818,42810=>971,42811=>818,42812=>959,42813=>818,42814=>703,42815=>549,42822=>680,\n42823=>392,42824=>582,42825=>427,42826=>807,42827=>704,42830=>1358,42831=>1019,42880=>557,42881=>278,42882=>735,\n42883=>634,42889=>337,42890=>376,42891=>401,42892=>275,43003=>575,43004=>603,43005=>863,43006=>295,43007=>1199,\n61440=>977,61441=>977,63173=>612,64256=>689,64257=>630,64258=>630,64259=>967,64260=>967,64261=>686,64262=>861,\n64275=>1202,64276=>1202,64277=>1196,64278=>1186,64279=>1529,64285=>272,64286=>0,64287=>471,64288=>636,64289=>856,\n64290=>774,64291=>906,64292=>771,64293=>843,64294=>855,64295=>807,64296=>875,64297=>838,64298=>808,64299=>808,\n64300=>808,64301=>808,64302=>629,64303=>629,64304=>629,64305=>608,64306=>448,64307=>594,64308=>640,64309=>272,\n64310=>374,64312=>648,64313=>336,64314=>592,64315=>556,64316=>599,64318=>659,64320=>441,64321=>700,64323=>640,\n64324=>604,64326=>581,64327=>663,64328=>592,64329=>808,64330=>657,64331=>272,64332=>608,64333=>556,64334=>604,\n64335=>629,64338=>941,64339=>982,64340=>278,64341=>302,64342=>941,64343=>982,64344=>278,64345=>302,64346=>941,\n64347=>982,64348=>278,64349=>302,64350=>941,64351=>982,64352=>278,64353=>302,64354=>941,64355=>982,64356=>278,\n64357=>302,64358=>941,64359=>982,64360=>278,64361=>302,64362=>1037,64363=>1035,64364=>478,64365=>506,64366=>1037,\n64367=>1035,64368=>478,64369=>506,64370=>646,64371=>646,64372=>618,64373=>646,64374=>646,64375=>646,64376=>618,\n64377=>646,64378=>646,64379=>646,64380=>618,64381=>646,64382=>646,64383=>646,64384=>618,64385=>646,64394=>483,\n64395=>552,64396=>483,64397=>552,64398=>895,64399=>895,64400=>476,64401=>552,64402=>895,64403=>895,64404=>476,\n64405=>552,64414=>734,64415=>761,64473=>483,64474=>517,64488=>278,64489=>302,64508=>783,64509=>833,64510=>278,\n64511=>302,65024=>0,65025=>0,65026=>0,65027=>0,65028=>0,65029=>0,65030=>0,65031=>0,65032=>0,\n65033=>0,65034=>0,65035=>0,65036=>0,65037=>0,65038=>0,65039=>0,65056=>0,65057=>0,65058=>0,\n65059=>0,65136=>293,65137=>293,65138=>293,65139=>262,65140=>293,65142=>293,65143=>293,65144=>293,65145=>293,\n65146=>293,65147=>293,65148=>293,65149=>293,65150=>293,65151=>293,65152=>470,65153=>278,65154=>305,65155=>278,\n65156=>305,65157=>483,65158=>517,65159=>278,65160=>305,65161=>783,65162=>833,65163=>278,65164=>302,65165=>278,\n65166=>305,65167=>941,65168=>982,65169=>278,65170=>302,65171=>524,65172=>536,65173=>941,65174=>982,65175=>278,\n65176=>302,65177=>941,65178=>982,65179=>278,65180=>302,65181=>646,65182=>646,65183=>618,65184=>646,65185=>646,\n65186=>646,65187=>618,65188=>646,65189=>646,65190=>646,65191=>618,65192=>646,65193=>445,65194=>525,65195=>445,\n65196=>525,65197=>483,65198=>552,65199=>483,65200=>552,65201=>1221,65202=>1275,65203=>838,65204=>892,65205=>1221,\n65206=>1275,65207=>838,65208=>892,65209=>1209,65210=>1225,65211=>849,65212=>867,65213=>1209,65214=>1225,65215=>849,\n65216=>867,65217=>925,65218=>949,65219=>796,65220=>820,65221=>925,65222=>949,65223=>796,65224=>820,65225=>597,\n65226=>532,65227=>597,65228=>482,65229=>597,65230=>532,65231=>523,65232=>482,65233=>1037,65234=>1035,65235=>478,\n65236=>506,65237=>776,65238=>834,65239=>478,65240=>506,65241=>824,65242=>843,65243=>476,65244=>552,65245=>727,\n65246=>757,65247=>305,65248=>331,65249=>619,65250=>666,65251=>536,65252=>578,65253=>734,65254=>761,65255=>278,\n65256=>302,65257=>524,65258=>536,65259=>527,65260=>461,65261=>483,65262=>517,65263=>783,65264=>833,65265=>783,\n65266=>833,65267=>278,65268=>302,65269=>570,65270=>597,65271=>570,65272=>597,65273=>570,65274=>597,65275=>570,\n65276=>597,65279=>0,65529=>0,65530=>0,65531=>0,65532=>0,65533=>1025);\n$enc='';\n$diff='';\n$file='dejavusans.z';\n$ctg='dejavusans.ctg.z';\n$originalsize=622280;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavusansb.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='DejaVuSans-Bold';\n$desc=array('Ascent'=>928,'Descent'=>-236,'CapHeight'=>19,'Flags'=>32,'FontBBox'=>'[-1069 -385 1975 1174]','ItalicAngle'=>0,'StemV'=>120,'MissingWidth'=>600);\n$up=-63;\n$ut=44;\n$dw=600;\n$cw=array(\n0=>600,32=>348,33=>456,34=>521,35=>838,36=>696,37=>1002,38=>872,39=>306,40=>457,\n41=>457,42=>523,43=>838,44=>380,45=>415,46=>380,47=>365,48=>696,49=>696,50=>696,\n51=>696,52=>696,53=>696,54=>696,55=>696,56=>696,57=>696,58=>400,59=>400,60=>838,\n61=>838,62=>838,63=>580,64=>1000,65=>774,66=>762,67=>734,68=>830,69=>683,70=>683,\n71=>821,72=>837,73=>372,74=>372,75=>775,76=>637,77=>995,78=>837,79=>850,80=>733,\n81=>850,82=>770,83=>720,84=>682,85=>812,86=>774,87=>1103,88=>771,89=>724,90=>725,\n91=>457,92=>365,93=>457,94=>838,95=>500,96=>500,97=>675,98=>716,99=>593,100=>716,\n101=>678,102=>435,103=>716,104=>712,105=>343,106=>343,107=>665,108=>343,109=>1042,110=>712,\n111=>687,112=>716,113=>716,114=>493,115=>595,116=>478,117=>712,118=>652,119=>924,120=>645,\n121=>652,122=>582,123=>712,124=>365,125=>712,126=>838,8364=>696,8218=>380,402=>435,8222=>657,\n8230=>1000,8224=>500,8225=>500,710=>500,8240=>1440,352=>720,8249=>412,338=>1167,381=>725,8216=>380,\n8217=>380,8220=>657,8221=>657,8226=>639,8211=>500,8212=>1000,732=>500,8482=>1000,353=>595,8250=>412,\n339=>1094,382=>582,376=>724,160=>348,161=>456,162=>696,163=>696,164=>636,165=>696,166=>365,\n167=>500,168=>500,169=>1000,170=>564,171=>646,172=>838,173=>415,174=>1000,175=>500,176=>500,\n177=>838,178=>438,179=>438,180=>500,181=>736,182=>636,183=>380,184=>500,185=>438,186=>564,\n187=>646,188=>1035,189=>1035,190=>1035,191=>580,192=>774,193=>774,194=>774,195=>774,196=>774,\n197=>774,198=>1085,199=>734,200=>683,201=>683,202=>683,203=>683,204=>372,205=>372,206=>372,\n207=>372,208=>838,209=>837,210=>850,211=>850,212=>850,213=>850,214=>850,215=>838,216=>850,\n217=>812,218=>812,219=>812,220=>812,221=>724,222=>738,223=>719,224=>675,225=>675,226=>675,\n227=>675,228=>675,229=>675,230=>1048,231=>593,232=>678,233=>678,234=>678,235=>678,236=>343,\n237=>343,238=>343,239=>343,240=>687,241=>712,242=>687,243=>687,244=>687,245=>687,246=>687,\n247=>838,248=>687,249=>712,250=>712,251=>712,252=>712,253=>652,254=>716,255=>652,256=>774,\n257=>675,258=>774,259=>675,260=>774,261=>675,262=>734,263=>593,264=>734,265=>593,266=>734,\n267=>593,268=>734,269=>593,270=>830,271=>716,272=>838,273=>716,274=>683,275=>678,276=>683,\n277=>678,278=>683,279=>678,280=>683,281=>678,282=>683,283=>678,284=>821,285=>716,286=>821,\n287=>716,288=>821,289=>716,290=>821,291=>716,292=>837,293=>712,294=>974,295=>790,296=>372,\n297=>343,298=>372,299=>343,300=>372,301=>343,302=>372,303=>343,304=>372,305=>343,306=>744,\n307=>686,308=>372,309=>343,310=>775,311=>665,312=>665,313=>637,314=>343,315=>637,316=>343,\n317=>637,318=>479,319=>637,320=>557,321=>642,322=>371,323=>837,324=>712,325=>837,326=>712,\n327=>837,328=>712,329=>983,330=>837,331=>712,332=>850,333=>687,334=>850,335=>687,336=>850,\n337=>687,340=>770,341=>493,342=>770,343=>493,344=>770,345=>493,346=>720,347=>595,348=>720,\n349=>595,350=>720,351=>595,354=>682,355=>478,356=>682,357=>478,358=>682,359=>478,360=>812,\n361=>712,362=>812,363=>712,364=>812,365=>712,366=>812,367=>712,368=>812,369=>712,370=>812,\n371=>712,372=>1103,373=>924,374=>724,375=>652,377=>725,378=>582,379=>725,380=>582,383=>435,\n384=>716,385=>811,386=>762,387=>716,388=>762,389=>716,390=>734,391=>734,392=>593,393=>838,\n394=>879,395=>757,396=>716,397=>688,398=>683,399=>849,400=>696,401=>683,403=>821,404=>793,\n405=>1045,406=>436,407=>389,408=>775,409=>665,410=>360,411=>592,412=>1042,413=>837,414=>712,\n415=>850,416=>874,417=>687,418=>1083,419=>912,420=>782,421=>716,422=>770,423=>720,424=>595,\n425=>683,426=>552,427=>478,428=>707,429=>478,430=>682,431=>835,432=>712,433=>850,434=>813,\n435=>797,436=>778,437=>725,438=>582,439=>772,440=>772,441=>641,442=>582,443=>696,444=>772,\n445=>641,446=>573,447=>716,448=>372,449=>659,450=>544,451=>372,452=>1555,453=>1412,454=>1298,\n455=>1009,456=>980,457=>686,458=>1209,459=>1180,460=>1055,461=>774,462=>675,463=>372,464=>343,\n465=>850,466=>687,467=>812,468=>712,469=>812,470=>712,471=>812,472=>712,473=>812,474=>712,\n475=>812,476=>712,477=>678,478=>774,479=>675,480=>774,481=>675,482=>1085,483=>1048,484=>821,\n485=>716,486=>821,487=>716,488=>775,489=>665,490=>850,491=>687,492=>850,493=>687,494=>772,\n495=>582,496=>343,497=>1555,498=>1412,499=>1298,500=>821,501=>716,502=>1289,503=>787,504=>837,\n505=>712,506=>774,507=>675,508=>1085,509=>1048,510=>850,511=>687,512=>774,513=>675,514=>774,\n515=>675,516=>683,517=>678,518=>683,519=>678,520=>372,521=>343,522=>372,523=>343,524=>850,\n525=>687,526=>850,527=>687,528=>770,529=>493,530=>770,531=>493,532=>812,533=>712,534=>812,\n535=>712,536=>720,537=>595,538=>682,539=>478,540=>690,541=>607,542=>837,543=>712,544=>837,\n545=>865,546=>809,547=>659,548=>725,549=>582,550=>774,551=>675,552=>683,553=>678,554=>850,\n555=>687,556=>850,557=>687,558=>850,559=>687,560=>850,561=>687,562=>724,563=>652,564=>492,\n565=>867,566=>512,567=>343,568=>1088,569=>1088,570=>774,571=>734,572=>593,573=>637,574=>682,\n575=>595,576=>582,577=>782,578=>614,579=>762,580=>812,581=>774,582=>683,583=>678,584=>372,\n585=>343,586=>860,587=>791,588=>770,589=>493,590=>724,591=>652,592=>675,593=>716,594=>716,\n595=>716,596=>593,597=>593,598=>717,599=>792,600=>678,601=>678,602=>876,603=>557,604=>545,\n605=>815,606=>731,607=>343,608=>792,609=>716,610=>627,611=>644,612=>635,613=>712,614=>712,\n615=>712,616=>545,617=>440,618=>545,619=>559,620=>693,621=>343,622=>841,623=>1042,624=>1042,\n625=>1042,626=>712,627=>793,628=>707,629=>687,630=>909,631=>681,632=>796,633=>538,634=>538,\n635=>650,636=>493,637=>493,638=>596,639=>596,640=>642,641=>642,642=>595,643=>415,644=>435,\n645=>605,646=>552,647=>478,648=>478,649=>920,650=>772,651=>670,652=>652,653=>924,654=>652,\n655=>724,656=>694,657=>684,658=>641,659=>641,660=>573,661=>573,662=>573,663=>573,664=>850,\n665=>633,666=>731,667=>685,668=>691,669=>343,670=>732,671=>539,672=>792,673=>573,674=>573,\n675=>1156,676=>1214,677=>1155,678=>974,679=>769,680=>929,681=>1026,682=>792,683=>780,684=>591,\n685=>415,686=>677,687=>789,688=>456,689=>456,690=>219,691=>315,692=>315,693=>315,694=>411,\n695=>591,696=>417,697=>302,698=>521,699=>380,700=>380,701=>380,702=>366,703=>366,704=>326,\n705=>326,706=>500,707=>500,708=>500,709=>500,711=>500,712=>306,713=>500,714=>500,715=>500,\n716=>306,717=>500,718=>500,719=>500,720=>337,721=>337,722=>366,723=>366,724=>500,725=>500,\n726=>416,727=>328,728=>500,729=>500,730=>500,731=>500,733=>500,734=>351,735=>500,736=>412,\n737=>219,738=>381,739=>413,740=>326,741=>500,742=>500,743=>500,744=>500,745=>500,748=>500,\n749=>500,750=>657,755=>500,759=>500,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,\n774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,\n784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,\n794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,\n804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,\n814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,\n824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,\n834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,\n844=>0,845=>0,846=>0,847=>0,849=>0,850=>0,851=>0,855=>0,856=>0,858=>0,\n860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,880=>698,881=>565,882=>1022,\n883=>836,884=>302,885=>302,886=>837,887=>701,890=>500,891=>593,892=>550,893=>549,894=>400,\n900=>441,901=>500,902=>797,903=>380,904=>846,905=>1009,906=>563,908=>891,910=>980,911=>894,\n912=>390,913=>774,914=>762,915=>637,916=>774,917=>683,918=>725,919=>837,920=>850,921=>372,\n922=>775,923=>774,924=>995,925=>837,926=>632,927=>850,928=>837,929=>733,931=>683,932=>682,\n933=>724,934=>850,935=>771,936=>850,937=>850,938=>372,939=>724,940=>687,941=>557,942=>712,\n943=>390,944=>675,945=>687,946=>716,947=>681,948=>687,949=>557,950=>591,951=>712,952=>687,\n953=>390,954=>710,955=>633,956=>736,957=>681,958=>591,959=>687,960=>791,961=>716,962=>593,\n963=>779,964=>638,965=>675,966=>782,967=>645,968=>794,969=>869,970=>390,971=>675,972=>687,\n973=>675,974=>869,975=>775,976=>651,977=>661,978=>746,979=>981,980=>746,981=>796,982=>869,\n983=>744,984=>850,985=>687,986=>734,987=>593,988=>683,989=>494,990=>702,991=>660,992=>919,\n993=>627,994=>1093,995=>837,996=>832,997=>716,998=>928,999=>744,1000=>733,1001=>650,1002=>789,\n1003=>671,1004=>752,1005=>716,1006=>682,1007=>590,1008=>744,1009=>716,1010=>593,1011=>343,1012=>850,\n1013=>645,1014=>644,1015=>738,1016=>716,1017=>734,1018=>995,1019=>732,1020=>716,1021=>698,1022=>734,\n1023=>698,1024=>683,1025=>683,1026=>878,1027=>637,1028=>734,1029=>720,1030=>372,1031=>372,1032=>372,\n1033=>1154,1034=>1130,1035=>878,1036=>817,1037=>837,1038=>771,1039=>837,1040=>774,1041=>762,1042=>762,\n1043=>637,1044=>891,1045=>683,1046=>1224,1047=>710,1048=>837,1049=>837,1050=>817,1051=>831,1052=>995,\n1053=>837,1054=>850,1055=>837,1056=>733,1057=>734,1058=>682,1059=>771,1060=>992,1061=>771,1062=>928,\n1063=>808,1064=>1235,1065=>1326,1066=>939,1067=>1036,1068=>762,1069=>734,1070=>1174,1071=>770,1072=>675,\n1073=>698,1074=>633,1075=>522,1076=>808,1077=>678,1078=>995,1079=>581,1080=>701,1081=>701,1082=>679,\n1083=>732,1084=>817,1085=>691,1086=>687,1087=>691,1088=>716,1089=>593,1090=>580,1091=>652,1092=>992,\n1093=>645,1094=>741,1095=>687,1096=>1062,1097=>1105,1098=>751,1099=>904,1100=>632,1101=>593,1102=>972,\n1103=>642,1104=>678,1105=>678,1106=>714,1107=>522,1108=>593,1109=>595,1110=>343,1111=>343,1112=>343,\n1113=>991,1114=>956,1115=>734,1116=>679,1117=>701,1118=>652,1119=>691,1120=>1093,1121=>869,1122=>840,\n1123=>736,1124=>1012,1125=>839,1126=>992,1127=>832,1128=>1358,1129=>1121,1130=>850,1131=>687,1132=>1236,\n1133=>1007,1134=>696,1135=>557,1136=>1075,1137=>1061,1138=>850,1139=>687,1140=>850,1141=>695,1142=>850,\n1143=>695,1144=>1148,1145=>1043,1146=>1074,1147=>863,1148=>1405,1149=>1173,1150=>1093,1151=>869,1152=>734,\n1153=>593,1154=>652,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>418,1161=>418,1162=>957,\n1163=>807,1164=>762,1165=>611,1166=>733,1167=>716,1168=>637,1169=>522,1170=>666,1171=>543,1172=>808,\n1173=>669,1174=>1224,1175=>995,1176=>710,1177=>581,1178=>775,1179=>679,1180=>817,1181=>679,1182=>817,\n1183=>679,1184=>1015,1185=>826,1186=>956,1187=>808,1188=>1103,1189=>874,1190=>1273,1191=>1017,1192=>952,\n1193=>858,1194=>734,1195=>593,1196=>682,1197=>580,1198=>724,1199=>652,1200=>724,1201=>652,1202=>771,\n1203=>645,1204=>1112,1205=>1000,1206=>808,1207=>687,1208=>808,1209=>687,1210=>808,1211=>712,1212=>1026,\n1213=>810,1214=>1026,1215=>810,1216=>372,1217=>1224,1218=>995,1219=>775,1220=>630,1221=>951,1222=>805,\n1223=>837,1224=>691,1225=>957,1226=>807,1227=>808,1228=>687,1229=>1115,1230=>933,1231=>343,1232=>774,\n1233=>675,1234=>774,1235=>675,1236=>1085,1237=>1048,1238=>683,1239=>678,1240=>849,1241=>678,1242=>849,\n1243=>678,1244=>1224,1245=>995,1246=>710,1247=>581,1248=>772,1249=>641,1250=>837,1251=>701,1252=>837,\n1253=>701,1254=>850,1255=>687,1256=>850,1257=>687,1258=>850,1259=>687,1260=>734,1261=>593,1262=>771,\n1263=>652,1264=>771,1265=>652,1266=>771,1267=>652,1268=>808,1269=>687,1270=>637,1271=>522,1272=>1036,\n1273=>904,1274=>666,1275=>543,1276=>771,1277=>645,1278=>771,1279=>645,1280=>762,1281=>608,1282=>1159,\n1283=>893,1284=>1119,1285=>920,1286=>828,1287=>693,1288=>1242,1289=>1017,1290=>1289,1291=>1013,1292=>839,\n1293=>638,1294=>938,1295=>803,1296=>696,1297=>557,1298=>831,1299=>732,1300=>1286,1301=>1068,1302=>1065,\n1303=>979,1304=>1082,1305=>1013,1306=>850,1307=>716,1308=>1103,1309=>924,1312=>1267,1313=>1059,1314=>1273,\n1315=>1017,1316=>957,1317=>807,1329=>984,1330=>812,1331=>984,1332=>984,1333=>812,1334=>777,1335=>812,\n1336=>812,1337=>975,1338=>984,1339=>812,1340=>710,1341=>1078,1342=>1136,1343=>812,1344=>710,1345=>757,\n1346=>984,1347=>876,1348=>984,1349=>793,1350=>984,1351=>812,1352=>812,1353=>812,1354=>958,1355=>777,\n1356=>984,1357=>812,1358=>984,1359=>720,1360=>812,1361=>793,1362=>895,1363=>850,1364=>936,1365=>850,\n1366=>720,1369=>366,1370=>380,1371=>550,1372=>550,1373=>380,1374=>546,1375=>521,1377=>1042,1378=>712,\n1379=>866,1380=>868,1381=>712,1382=>817,1383=>653,1384=>712,1385=>811,1386=>817,1387=>712,1388=>498,\n1389=>1018,1390=>716,1391=>712,1392=>712,1393=>716,1394=>819,1395=>712,1396=>751,1397=>343,1398=>882,\n1399=>559,1400=>712,1401=>559,1402=>1042,1403=>559,1404=>863,1405=>712,1406=>813,1407=>1042,1408=>712,\n1409=>716,1410=>571,1411=>1042,1412=>778,1413=>687,1414=>720,1415=>862,1417=>400,1418=>487,1456=>0,\n1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1466=>0,\n1467=>0,1468=>0,1469=>0,1470=>415,1471=>0,1472=>372,1473=>0,1474=>0,1475=>372,1478=>497,\n1479=>0,1488=>751,1489=>673,1490=>537,1491=>654,1492=>712,1493=>343,1494=>491,1495=>712,1496=>724,\n1497=>343,1498=>649,1499=>650,1500=>679,1501=>712,1502=>775,1503=>343,1504=>497,1505=>773,1506=>678,\n1507=>718,1508=>687,1509=>628,1510=>751,1511=>729,1512=>649,1513=>949,1514=>751,1520=>664,1521=>664,\n1522=>663,1523=>444,1524=>710,1542=>667,1543=>667,1545=>884,1546=>1157,1548=>380,1557=>0,1563=>400,\n1567=>580,1569=>511,1570=>343,1571=>343,1572=>622,1573=>343,1574=>917,1575=>343,1576=>1005,1577=>590,\n1578=>1005,1579=>1005,1580=>721,1581=>721,1582=>721,1583=>513,1584=>513,1585=>576,1586=>576,1587=>1380,\n1588=>1380,1589=>1345,1590=>1345,1591=>1039,1592=>1039,1593=>683,1594=>683,1600=>342,1601=>1162,1602=>894,\n1603=>917,1604=>868,1605=>733,1606=>854,1607=>590,1608=>622,1609=>917,1610=>917,1611=>0,1612=>0,\n1613=>0,1614=>0,1615=>0,1616=>0,1617=>0,1618=>0,1619=>0,1620=>0,1621=>0,1626=>500,\n1632=>610,1633=>610,1634=>610,1635=>610,1636=>610,1637=>610,1638=>610,1639=>610,1640=>610,1641=>610,\n1642=>610,1643=>374,1644=>380,1645=>545,1646=>1005,1647=>894,1652=>292,1657=>1005,1658=>1005,1659=>1005,\n1660=>1005,1661=>1005,1662=>1005,1663=>1005,1664=>1005,1665=>721,1666=>721,1667=>721,1668=>721,1669=>721,\n1670=>721,1671=>721,1681=>576,1682=>576,1685=>681,1688=>576,1697=>1162,1700=>1162,1702=>1162,1705=>1024,\n1711=>1024,1717=>868,1722=>854,1727=>721,1734=>622,1740=>917,1742=>917,1749=>590,1776=>610,1777=>610,\n1778=>610,1779=>610,1780=>610,1781=>610,1782=>610,1783=>610,1784=>610,1785=>610,1984=>696,1985=>696,\n1986=>696,1987=>696,1988=>696,1989=>696,1990=>696,1991=>696,1992=>696,1993=>696,1994=>343,1995=>547,\n1996=>543,1997=>652,1998=>691,1999=>691,2000=>594,2001=>691,2002=>904,2003=>551,2004=>551,2005=>627,\n2006=>688,2007=>444,2008=>1022,2009=>506,2010=>826,2011=>691,2012=>652,2013=>912,2014=>627,2015=>707,\n2016=>506,2017=>652,2018=>574,2019=>627,2020=>627,2021=>627,2022=>574,2023=>574,2027=>0,2028=>0,\n2029=>0,2030=>0,2031=>0,2032=>0,2033=>0,2034=>0,2035=>0,2036=>380,2037=>380,2040=>691,\n2041=>691,2042=>415,3647=>743,3713=>790,3714=>748,3716=>749,3719=>569,3720=>742,3722=>744,3725=>761,\n3732=>706,3733=>704,3734=>747,3735=>819,3737=>730,3738=>727,3739=>727,3740=>922,3741=>827,3742=>866,\n3743=>866,3745=>836,3746=>761,3747=>770,3749=>769,3751=>713,3754=>827,3755=>1031,3757=>724,3758=>784,\n3759=>934,3760=>688,3761=>0,3762=>610,3763=>610,3764=>0,3765=>0,3766=>0,3767=>0,3768=>0,\n3769=>0,3771=>0,3772=>0,3773=>670,3776=>516,3777=>860,3778=>516,3779=>650,3780=>632,3782=>759,\n3784=>0,3785=>0,3786=>0,3787=>0,3788=>0,3789=>0,3792=>771,3793=>771,3794=>693,3795=>836,\n3796=>729,3797=>729,3798=>849,3799=>790,3800=>759,3801=>910,3804=>1363,3805=>1363,4256=>918,4257=>744,\n4258=>739,4259=>837,4260=>649,4261=>773,4262=>857,4263=>889,4264=>530,4265=>633,4266=>857,4267=>900,\n4268=>643,4269=>903,4270=>814,4271=>752,4272=>869,4273=>643,4274=>643,4275=>886,4276=>886,4277=>733,\n4278=>653,4279=>643,4280=>646,4281=>643,4282=>790,4283=>902,4284=>633,4285=>619,4286=>643,4287=>778,\n4288=>892,4289=>601,4290=>742,4291=>616,4292=>633,4293=>742,4304=>553,4305=>552,4306=>596,4307=>815,\n4308=>562,4309=>563,4310=>553,4311=>827,4312=>553,4313=>543,4314=>1074,4315=>563,4316=>563,4317=>812,\n4318=>552,4319=>591,4320=>822,4321=>563,4322=>690,4323=>583,4324=>813,4325=>562,4326=>813,4327=>563,\n4328=>563,4329=>563,4330=>632,4331=>563,4332=>563,4333=>552,4334=>563,4335=>563,4336=>558,4337=>604,\n4338=>552,4339=>552,4340=>553,4341=>605,4342=>852,4343=>635,4344=>563,4345=>596,4346=>542,4347=>684,\n4348=>368,5121=>774,5122=>774,5123=>774,5124=>774,5125=>905,5126=>905,5127=>905,5129=>905,5130=>905,\n5131=>905,5132=>1018,5133=>1009,5134=>1018,5135=>1009,5136=>1018,5137=>1009,5138=>1149,5139=>1140,5140=>1149,\n5141=>1140,5142=>905,5143=>1149,5144=>1142,5145=>1149,5146=>1142,5147=>905,5149=>310,5150=>529,5151=>425,\n5152=>425,5153=>395,5154=>395,5155=>395,5156=>395,5157=>564,5158=>470,5159=>310,5160=>395,5161=>395,\n5162=>395,5163=>1213,5164=>986,5165=>1216,5166=>1297,5167=>774,5168=>774,5169=>774,5170=>774,5171=>886,\n5172=>886,5173=>886,5175=>886,5176=>886,5177=>886,5178=>1018,5179=>1009,5180=>1018,5181=>1009,5182=>1018,\n5183=>1009,5184=>1149,5185=>1140,5186=>1149,5187=>1140,5188=>1149,5189=>1142,5190=>1149,5191=>1142,5192=>886,\n5193=>576,5194=>229,5196=>812,5197=>812,5198=>812,5199=>812,5200=>815,5201=>815,5202=>815,5204=>815,\n5205=>815,5206=>815,5207=>1056,5208=>1048,5209=>1056,5210=>1048,5211=>1056,5212=>1048,5213=>1060,5214=>1054,\n5215=>1060,5216=>1054,5217=>1060,5218=>1052,5219=>1060,5220=>1052,5221=>1060,5222=>483,5223=>1005,5224=>1005,\n5225=>1023,5226=>1017,5227=>743,5228=>743,5229=>743,5230=>743,5231=>743,5232=>743,5233=>743,5234=>743,\n5235=>743,5236=>1029,5237=>975,5238=>980,5239=>975,5240=>980,5241=>975,5242=>1029,5243=>975,5244=>1029,\n5245=>975,5246=>980,5247=>975,5248=>980,5249=>975,5250=>980,5251=>501,5252=>501,5253=>938,5254=>938,\n5255=>938,5256=>938,5257=>743,5258=>743,5259=>743,5260=>743,5261=>743,5262=>743,5263=>743,5264=>743,\n5265=>743,5266=>1029,5267=>975,5268=>1029,5269=>975,5270=>1029,5271=>975,5272=>1029,5273=>975,5274=>1029,\n5275=>975,5276=>1029,5277=>975,5278=>1029,5279=>975,5280=>1029,5281=>501,5282=>501,5283=>626,5284=>626,\n5285=>626,5286=>626,5287=>626,5288=>626,5289=>626,5290=>626,5291=>626,5292=>881,5293=>854,5294=>863,\n5295=>874,5296=>863,5297=>874,5298=>881,5299=>874,5300=>881,5301=>874,5302=>863,5303=>874,5304=>863,\n5305=>874,5306=>863,5307=>436,5308=>548,5309=>436,5312=>988,5313=>988,5314=>988,5315=>988,5316=>931,\n5317=>931,5318=>931,5319=>931,5320=>931,5321=>1238,5322=>1247,5323=>1200,5324=>1228,5325=>1200,5326=>1228,\n5327=>931,5328=>660,5329=>497,5330=>660,5331=>988,5332=>988,5333=>988,5334=>988,5335=>931,5336=>931,\n5337=>931,5338=>931,5339=>931,5340=>1231,5341=>1247,5342=>1283,5343=>1228,5344=>1283,5345=>1228,5346=>1228,\n5347=>1214,5348=>1228,5349=>1214,5350=>1283,5351=>1228,5352=>1283,5353=>1228,5354=>660,5356=>886,5357=>730,\n5358=>730,5359=>730,5360=>730,5361=>730,5362=>730,5363=>730,5364=>730,5365=>730,5366=>998,5367=>958,\n5368=>967,5369=>989,5370=>967,5371=>989,5372=>998,5373=>958,5374=>998,5375=>958,5376=>967,5377=>989,\n5378=>967,5379=>989,5380=>967,5381=>493,5382=>460,5383=>493,5392=>923,5393=>923,5394=>923,5395=>1136,\n5396=>1136,5397=>1136,5398=>1136,5399=>1209,5400=>1202,5401=>1209,5402=>1202,5403=>1209,5404=>1202,5405=>1431,\n5406=>1420,5407=>1431,5408=>1420,5409=>1431,5410=>1420,5411=>1431,5412=>1420,5413=>746,5414=>776,5415=>776,\n5416=>776,5417=>776,5418=>776,5419=>776,5420=>776,5421=>776,5422=>776,5423=>1003,5424=>1003,5425=>1013,\n5426=>996,5427=>1013,5428=>996,5429=>1003,5430=>1003,5431=>1003,5432=>1003,5433=>1013,5434=>996,5435=>1013,\n5436=>996,5437=>1013,5438=>495,5440=>395,5441=>510,5442=>1033,5443=>1033,5444=>976,5445=>976,5446=>976,\n5447=>976,5448=>733,5449=>733,5450=>733,5451=>733,5452=>733,5453=>733,5454=>1003,5455=>959,5456=>495,\n5458=>886,5459=>774,5460=>774,5461=>774,5462=>774,5463=>928,5464=>928,5465=>928,5466=>928,5467=>1172,\n5468=>1142,5469=>602,5470=>812,5471=>812,5472=>812,5473=>812,5474=>812,5475=>812,5476=>815,5477=>815,\n5478=>815,5479=>815,5480=>1060,5481=>1052,5482=>548,5492=>977,5493=>977,5494=>977,5495=>977,5496=>977,\n5497=>977,5498=>977,5499=>618,5500=>837,5501=>510,5502=>1238,5503=>1238,5504=>1238,5505=>1238,5506=>1238,\n5507=>1238,5508=>1238,5509=>989,5514=>977,5515=>977,5516=>977,5517=>977,5518=>1591,5519=>1591,5520=>1591,\n5521=>1295,5522=>1295,5523=>1591,5524=>1591,5525=>848,5526=>1273,5536=>988,5537=>988,5538=>931,5539=>931,\n5540=>931,5541=>931,5542=>660,5543=>776,5544=>776,5545=>776,5546=>776,5547=>776,5548=>776,5549=>776,\n5550=>495,5551=>743,5598=>830,5601=>830,5702=>496,5703=>496,5742=>413,5743=>1238,5744=>1591,5745=>2016,\n5746=>2016,5747=>1720,5748=>1678,5749=>2016,5750=>2016,5760=>543,5761=>637,5762=>945,5763=>1254,5764=>1563,\n5765=>1871,5766=>627,5767=>936,5768=>1254,5769=>1559,5770=>1871,5771=>569,5772=>877,5773=>1187,5774=>1497,\n5775=>1807,5776=>637,5777=>945,5778=>1240,5779=>1555,5780=>1871,5781=>569,5782=>569,5783=>789,5784=>1234,\n5785=>1559,5786=>740,5787=>638,5788=>638,7424=>652,7425=>833,7426=>1048,7427=>608,7428=>593,7429=>676,\n7430=>676,7431=>559,7432=>557,7433=>343,7434=>494,7435=>665,7436=>539,7437=>817,7438=>701,7439=>687,\n7440=>593,7441=>660,7442=>660,7443=>660,7444=>1094,7446=>687,7447=>687,7448=>556,7449=>642,7450=>642,\n7451=>580,7452=>634,7453=>737,7454=>948,7455=>695,7456=>652,7457=>924,7458=>582,7459=>646,7462=>539,\n7463=>652,7464=>691,7465=>556,7466=>781,7467=>732,7468=>487,7469=>683,7470=>480,7472=>523,7473=>430,\n7474=>430,7475=>517,7476=>527,7477=>234,7478=>234,7479=>488,7480=>401,7481=>626,7482=>527,7483=>527,\n7484=>535,7485=>509,7486=>461,7487=>485,7488=>430,7489=>511,7490=>695,7491=>458,7492=>458,7493=>479,\n7494=>712,7495=>479,7496=>479,7497=>479,7498=>479,7499=>386,7500=>386,7501=>479,7502=>219,7503=>487,\n7504=>664,7505=>456,7506=>488,7507=>414,7508=>488,7509=>488,7510=>479,7511=>388,7512=>456,7513=>462,\n7514=>664,7515=>501,7517=>451,7518=>429,7519=>433,7520=>493,7521=>406,7522=>219,7523=>315,7524=>456,\n7525=>501,7526=>451,7527=>429,7528=>451,7529=>493,7530=>406,7543=>716,7544=>527,7547=>545,7557=>514,\n7579=>479,7580=>414,7581=>414,7582=>488,7583=>386,7584=>377,7585=>348,7586=>479,7587=>456,7588=>347,\n7589=>281,7590=>347,7591=>347,7592=>431,7593=>326,7594=>330,7595=>370,7596=>664,7597=>664,7598=>562,\n7599=>562,7600=>448,7601=>488,7602=>542,7603=>422,7604=>396,7605=>388,7606=>583,7607=>494,7608=>399,\n7609=>451,7610=>501,7611=>417,7612=>523,7613=>470,7614=>455,7615=>425,7620=>0,7621=>0,7622=>0,\n7623=>0,7624=>0,7625=>0,7680=>774,7681=>675,7682=>762,7683=>716,7684=>762,7685=>716,7686=>762,\n7687=>716,7688=>734,7689=>593,7690=>830,7691=>716,7692=>830,7693=>716,7694=>830,7695=>716,7696=>830,\n7697=>716,7698=>830,7699=>716,7700=>683,7701=>678,7702=>683,7703=>678,7704=>683,7705=>678,7706=>683,\n7707=>678,7708=>683,7709=>678,7710=>683,7711=>435,7712=>821,7713=>716,7714=>837,7715=>712,7716=>837,\n7717=>712,7718=>837,7719=>712,7720=>837,7721=>712,7722=>837,7723=>712,7724=>372,7725=>343,7726=>372,\n7727=>343,7728=>775,7729=>665,7730=>775,7731=>665,7732=>775,7733=>665,7734=>637,7735=>343,7736=>637,\n7737=>343,7738=>637,7739=>343,7740=>637,7741=>343,7742=>995,7743=>1042,7744=>995,7745=>1042,7746=>995,\n7747=>1042,7748=>837,7749=>712,7750=>837,7751=>712,7752=>837,7753=>712,7754=>837,7755=>712,7756=>850,\n7757=>687,7758=>850,7759=>687,7760=>850,7761=>687,7762=>850,7763=>687,7764=>733,7765=>716,7766=>733,\n7767=>716,7768=>770,7769=>493,7770=>770,7771=>493,7772=>770,7773=>493,7774=>770,7775=>493,7776=>720,\n7777=>595,7778=>720,7779=>595,7780=>720,7781=>595,7782=>720,7783=>595,7784=>720,7785=>595,7786=>682,\n7787=>478,7788=>682,7789=>478,7790=>682,7791=>478,7792=>682,7793=>478,7794=>812,7795=>712,7796=>812,\n7797=>712,7798=>812,7799=>712,7800=>812,7801=>712,7802=>812,7803=>712,7804=>774,7805=>652,7806=>774,\n7807=>652,7808=>1103,7809=>924,7810=>1103,7811=>924,7812=>1103,7813=>924,7814=>1103,7815=>924,7816=>1103,\n7817=>924,7818=>771,7819=>645,7820=>771,7821=>645,7822=>724,7823=>652,7824=>725,7825=>582,7826=>725,\n7827=>582,7828=>725,7829=>582,7830=>712,7831=>478,7832=>924,7833=>652,7834=>675,7835=>435,7838=>896,\n7839=>687,7840=>774,7841=>675,7842=>774,7843=>675,7844=>774,7845=>675,7846=>774,7847=>675,7848=>774,\n7849=>675,7850=>774,7851=>675,7852=>774,7853=>675,7854=>774,7855=>675,7856=>774,7857=>675,7858=>774,\n7859=>675,7860=>774,7861=>675,7862=>774,7863=>675,7864=>683,7865=>678,7866=>683,7867=>678,7868=>683,\n7869=>678,7870=>683,7871=>678,7872=>683,7873=>678,7874=>683,7875=>678,7876=>683,7877=>678,7878=>683,\n7879=>678,7880=>372,7881=>343,7882=>372,7883=>343,7884=>850,7885=>687,7886=>850,7887=>687,7888=>850,\n7889=>687,7890=>850,7891=>687,7892=>850,7893=>687,7894=>850,7895=>687,7896=>850,7897=>687,7898=>874,\n7899=>687,7900=>874,7901=>687,7902=>874,7903=>687,7904=>874,7905=>687,7906=>874,7907=>687,7908=>812,\n7909=>712,7910=>812,7911=>712,7912=>835,7913=>712,7914=>835,7915=>712,7916=>835,7917=>712,7918=>835,\n7919=>712,7920=>835,7921=>712,7922=>724,7923=>652,7924=>724,7925=>652,7926=>724,7927=>652,7928=>724,\n7929=>652,7936=>687,7937=>687,7938=>687,7939=>687,7940=>687,7941=>687,7942=>687,7943=>687,7944=>774,\n7945=>774,7946=>1041,7947=>1043,7948=>935,7949=>963,7950=>835,7951=>859,7952=>557,7953=>557,7954=>557,\n7955=>557,7956=>557,7957=>557,7960=>792,7961=>794,7962=>1100,7963=>1096,7964=>1023,7965=>1052,7968=>712,\n7969=>712,7970=>712,7971=>712,7972=>712,7973=>712,7974=>712,7975=>712,7976=>945,7977=>951,7978=>1250,\n7979=>1250,7980=>1180,7981=>1206,7982=>1054,7983=>1063,7984=>390,7985=>390,7986=>390,7987=>390,7988=>390,\n7989=>390,7990=>390,7991=>390,7992=>483,7993=>489,7994=>777,7995=>785,7996=>712,7997=>738,7998=>604,\n7999=>604,8000=>687,8001=>687,8002=>687,8003=>687,8004=>687,8005=>687,8008=>892,8009=>933,8010=>1221,\n8011=>1224,8012=>1053,8013=>1082,8016=>675,8017=>675,8018=>675,8019=>675,8020=>675,8021=>675,8022=>675,\n8023=>675,8025=>930,8027=>1184,8029=>1199,8031=>1049,8032=>869,8033=>869,8034=>869,8035=>869,8036=>869,\n8037=>869,8038=>869,8039=>869,8040=>909,8041=>958,8042=>1246,8043=>1251,8044=>1076,8045=>1105,8046=>1028,\n8047=>1076,8048=>687,8049=>687,8050=>557,8051=>557,8052=>712,8053=>712,8054=>390,8055=>390,8056=>687,\n8057=>687,8058=>675,8059=>675,8060=>869,8061=>869,8064=>687,8065=>687,8066=>687,8067=>687,8068=>687,\n8069=>687,8070=>687,8071=>687,8072=>774,8073=>774,8074=>1041,8075=>1043,8076=>935,8077=>963,8078=>835,\n8079=>859,8080=>712,8081=>712,8082=>712,8083=>712,8084=>712,8085=>712,8086=>712,8087=>712,8088=>945,\n8089=>951,8090=>1250,8091=>1250,8092=>1180,8093=>1206,8094=>1054,8095=>1063,8096=>869,8097=>869,8098=>869,\n8099=>869,8100=>869,8101=>869,8102=>869,8103=>869,8104=>909,8105=>958,8106=>1246,8107=>1251,8108=>1076,\n8109=>1105,8110=>1028,8111=>1076,8112=>687,8113=>687,8114=>687,8115=>687,8116=>687,8118=>687,8119=>687,\n8120=>774,8121=>774,8122=>876,8123=>797,8124=>774,8125=>500,8126=>500,8127=>500,8128=>500,8129=>500,\n8130=>712,8131=>712,8132=>712,8134=>712,8135=>712,8136=>929,8137=>846,8138=>1080,8139=>1009,8140=>837,\n8141=>500,8142=>500,8143=>500,8144=>390,8145=>390,8146=>390,8147=>390,8150=>390,8151=>390,8152=>372,\n8153=>372,8154=>621,8155=>563,8157=>500,8158=>500,8159=>500,8160=>675,8161=>675,8162=>675,8163=>675,\n8164=>716,8165=>716,8166=>675,8167=>675,8168=>724,8169=>724,8170=>1020,8171=>980,8172=>838,8173=>500,\n8174=>500,8175=>500,8178=>869,8179=>869,8180=>869,8182=>869,8183=>869,8184=>1065,8185=>891,8186=>1084,\n8187=>894,8188=>850,8189=>500,8190=>500,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>330,8197=>250,\n8198=>167,8199=>696,8200=>380,8201=>200,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,\n8208=>415,8209=>415,8210=>696,8213=>1000,8214=>500,8215=>500,8219=>380,8223=>657,8227=>639,8228=>333,\n8229=>667,8231=>348,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>200,8241=>1887,8242=>264,\n8243=>447,8244=>630,8245=>264,8246=>447,8247=>630,8248=>733,8251=>972,8252=>627,8253=>580,8254=>500,\n8255=>828,8256=>828,8257=>329,8258=>1023,8259=>500,8260=>167,8261=>457,8262=>457,8263=>1030,8264=>829,\n8265=>829,8266=>513,8267=>636,8268=>500,8269=>500,8270=>523,8271=>400,8272=>828,8273=>523,8274=>556,\n8275=>1000,8276=>828,8277=>838,8278=>684,8279=>813,8280=>838,8281=>838,8282=>380,8283=>872,8284=>838,\n8285=>380,8286=>380,8287=>222,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8298=>0,8299=>0,\n8300=>0,8301=>0,8302=>0,8303=>0,8304=>438,8305=>219,8308=>438,8309=>438,8310=>438,8311=>438,\n8312=>438,8313=>438,8314=>528,8315=>528,8316=>528,8317=>288,8318=>288,8319=>456,8320=>438,8321=>438,\n8322=>438,8323=>438,8324=>438,8325=>438,8326=>438,8327=>438,8328=>438,8329=>438,8330=>528,8331=>528,\n8332=>528,8333=>288,8334=>288,8336=>458,8337=>479,8338=>488,8339=>413,8340=>479,8352=>929,8353=>696,\n8354=>696,8355=>696,8356=>696,8357=>1042,8358=>837,8359=>1518,8360=>1205,8361=>1103,8362=>904,8363=>696,\n8365=>696,8366=>682,8367=>1392,8368=>696,8369=>696,8370=>696,8371=>696,8372=>859,8373=>696,8400=>0,\n8401=>0,8406=>0,8407=>0,8411=>0,8412=>0,8417=>0,8448=>1120,8449=>1170,8450=>734,8451=>1211,\n8452=>896,8453=>1091,8454=>1144,8455=>614,8456=>698,8457=>1086,8459=>1073,8460=>913,8461=>888,8462=>712,\n8463=>712,8464=>597,8465=>697,8466=>856,8467=>472,8468=>974,8469=>837,8470=>1203,8471=>1000,8472=>697,\n8473=>750,8474=>850,8475=>938,8476=>814,8477=>801,8478=>896,8479=>710,8480=>1020,8481=>1281,8483=>755,\n8484=>754,8485=>578,8486=>850,8487=>850,8488=>763,8489=>338,8490=>775,8491=>774,8492=>928,8493=>818,\n8494=>854,8495=>636,8496=>729,8497=>808,8498=>683,8499=>1184,8500=>465,8501=>794,8502=>731,8503=>494,\n8504=>684,8505=>380,8506=>945,8507=>1348,8508=>790,8509=>737,8510=>654,8511=>863,8512=>840,8513=>775,\n8514=>557,8515=>637,8516=>760,8517=>830,8518=>716,8519=>678,8520=>343,8521=>343,8523=>872,8526=>547,\n8531=>1035,8532=>1035,8533=>1035,8534=>1035,8535=>1035,8536=>1035,8537=>1035,8538=>1035,8539=>1035,8540=>1035,\n8541=>1035,8542=>1035,8543=>615,8544=>372,8545=>659,8546=>945,8547=>1099,8548=>774,8549=>1099,8550=>1386,\n8551=>1672,8552=>1121,8553=>771,8554=>1120,8555=>1407,8556=>637,8557=>734,8558=>830,8559=>995,8560=>343,\n8561=>607,8562=>872,8563=>984,8564=>652,8565=>962,8566=>1227,8567=>1491,8568=>969,8569=>645,8570=>969,\n8571=>1233,8572=>343,8573=>593,8574=>716,8575=>1042,8576=>1289,8577=>830,8578=>1289,8579=>734,8580=>593,\n8592=>838,8593=>838,8594=>838,8595=>838,8596=>838,8597=>838,8598=>838,8599=>838,8600=>838,8601=>838,\n8602=>838,8603=>838,8604=>838,8605=>838,8606=>838,8607=>838,8608=>838,8609=>838,8610=>838,8611=>838,\n8612=>838,8613=>838,8614=>838,8615=>838,8616=>838,8617=>838,8618=>838,8619=>838,8620=>838,8621=>838,\n8622=>838,8623=>838,8624=>838,8625=>838,8626=>838,8627=>838,8628=>838,8629=>838,8630=>838,8631=>838,\n8632=>838,8633=>838,8634=>838,8635=>838,8636=>838,8637=>838,8638=>838,8639=>838,8640=>838,8641=>838,\n8642=>838,8643=>838,8644=>838,8645=>838,8646=>838,8647=>838,8648=>838,8649=>838,8650=>838,8651=>838,\n8652=>838,8653=>838,8654=>838,8655=>838,8656=>838,8657=>838,8658=>838,8659=>838,8660=>838,8661=>838,\n8662=>838,8663=>838,8664=>838,8665=>838,8666=>838,8667=>838,8668=>838,8669=>838,8670=>838,8671=>838,\n8672=>838,8673=>838,8674=>838,8675=>838,8676=>838,8677=>838,8678=>838,8679=>838,8680=>838,8681=>838,\n8682=>838,8683=>838,8684=>838,8685=>838,8686=>838,8687=>838,8688=>838,8689=>838,8690=>838,8691=>838,\n8692=>838,8693=>838,8694=>838,8695=>838,8696=>838,8697=>838,8698=>838,8699=>838,8700=>838,8701=>838,\n8702=>838,8703=>838,8704=>774,8705=>696,8706=>544,8707=>683,8708=>683,8709=>856,8710=>697,8711=>697,\n8712=>896,8713=>896,8714=>750,8715=>896,8716=>896,8717=>750,8718=>636,8719=>787,8720=>787,8721=>718,\n8722=>838,8723=>838,8724=>696,8725=>365,8726=>696,8727=>838,8728=>626,8729=>380,8730=>667,8731=>667,\n8732=>667,8733=>712,8734=>833,8735=>838,8736=>896,8737=>896,8738=>838,8739=>500,8740=>500,8741=>500,\n8742=>500,8743=>812,8744=>812,8745=>812,8746=>812,8747=>610,8748=>929,8749=>1295,8750=>563,8751=>977,\n8752=>1313,8753=>563,8754=>563,8755=>563,8756=>696,8757=>696,8758=>294,8759=>696,8760=>838,8761=>838,\n8762=>838,8763=>838,8764=>838,8765=>838,8766=>838,8767=>838,8768=>375,8769=>838,8770=>838,8771=>838,\n8772=>838,8773=>838,8774=>838,8775=>838,8776=>838,8777=>838,8778=>838,8779=>838,8780=>838,8781=>838,\n8782=>838,8783=>838,8784=>838,8785=>838,8786=>838,8787=>838,8788=>1063,8789=>1063,8790=>838,8791=>838,\n8792=>838,8793=>838,8794=>838,8795=>838,8796=>838,8797=>838,8798=>838,8799=>838,8800=>838,8801=>838,\n8802=>838,8803=>838,8804=>838,8805=>838,8806=>838,8807=>838,8808=>841,8809=>841,8810=>1047,8811=>1047,\n8812=>500,8813=>838,8814=>838,8815=>838,8816=>838,8817=>838,8818=>838,8819=>838,8820=>838,8821=>838,\n8822=>838,8823=>838,8824=>838,8825=>838,8826=>838,8827=>838,8828=>838,8829=>838,8830=>838,8831=>838,\n8832=>838,8833=>838,8834=>838,8835=>838,8836=>838,8837=>838,8838=>838,8839=>838,8840=>838,8841=>838,\n8842=>838,8843=>838,8844=>812,8845=>812,8846=>812,8847=>838,8848=>838,8849=>838,8850=>838,8851=>796,\n8852=>796,8853=>838,8854=>838,8855=>838,8856=>838,8857=>838,8858=>838,8859=>838,8860=>838,8861=>838,\n8862=>838,8863=>838,8864=>838,8865=>838,8866=>914,8867=>914,8868=>914,8869=>914,8870=>542,8871=>542,\n8872=>914,8873=>914,8874=>914,8875=>914,8876=>914,8877=>914,8878=>914,8879=>914,8880=>838,8881=>838,\n8882=>838,8883=>838,8884=>838,8885=>838,8886=>1000,8887=>1000,8888=>838,8889=>838,8890=>542,8891=>812,\n8892=>812,8893=>812,8894=>838,8895=>838,8896=>843,8897=>843,8898=>843,8899=>843,8900=>494,8901=>380,\n8902=>626,8903=>838,8904=>1000,8905=>1000,8906=>1000,8907=>1000,8908=>1000,8909=>838,8910=>812,8911=>812,\n8912=>838,8913=>838,8914=>838,8915=>838,8916=>838,8917=>838,8918=>838,8919=>838,8920=>1422,8921=>1422,\n8922=>838,8923=>838,8924=>838,8925=>838,8926=>838,8927=>838,8928=>838,8929=>838,8930=>838,8931=>838,\n8932=>838,8933=>838,8934=>838,8935=>838,8936=>838,8937=>838,8938=>838,8939=>838,8940=>838,8941=>838,\n8942=>1000,8943=>1000,8944=>1000,8945=>1000,8946=>1158,8947=>896,8948=>750,8949=>896,8950=>896,8951=>750,\n8952=>896,8953=>896,8954=>1158,8955=>896,8956=>750,8957=>896,8958=>750,8959=>896,8960=>602,8961=>602,\n8962=>716,8963=>838,8964=>838,8965=>838,8966=>838,8967=>488,8968=>457,8969=>457,8970=>457,8971=>457,\n8972=>809,8973=>809,8974=>809,8975=>809,8976=>838,8977=>539,8984=>928,8985=>838,8988=>469,8989=>469,\n8990=>469,8991=>469,8992=>610,8993=>610,8996=>1152,8997=>1152,8998=>1414,8999=>1152,9000=>1443,9003=>1414,\n9004=>873,9075=>390,9076=>716,9077=>869,9082=>687,9085=>863,9095=>1152,9108=>873,9115=>500,9116=>500,\n9117=>500,9118=>500,9119=>500,9120=>500,9121=>500,9122=>500,9123=>500,9124=>500,9125=>500,9126=>500,\n9127=>750,9128=>750,9129=>750,9130=>750,9131=>750,9132=>750,9133=>750,9134=>610,9166=>838,9167=>945,\n9187=>873,9189=>769,9250=>716,9251=>716,9312=>847,9313=>847,9314=>847,9315=>847,9316=>847,9317=>847,\n9318=>847,9319=>847,9320=>847,9321=>847,9600=>769,9601=>769,9602=>769,9603=>769,9604=>769,9605=>769,\n9606=>769,9607=>769,9608=>769,9609=>769,9610=>769,9611=>769,9612=>769,9613=>769,9614=>769,9615=>769,\n9616=>769,9617=>769,9618=>769,9619=>769,9620=>769,9621=>769,9622=>769,9623=>769,9624=>769,9625=>769,\n9626=>769,9627=>769,9628=>769,9629=>769,9630=>769,9631=>769,9632=>945,9633=>945,9634=>945,9635=>945,\n9636=>945,9637=>945,9638=>945,9639=>945,9640=>945,9641=>945,9642=>678,9643=>678,9644=>945,9645=>945,\n9646=>550,9647=>550,9648=>769,9649=>769,9650=>769,9651=>769,9652=>502,9653=>502,9654=>769,9655=>769,\n9656=>502,9657=>502,9658=>769,9659=>769,9660=>769,9661=>769,9662=>502,9663=>502,9664=>769,9665=>769,\n9666=>502,9667=>502,9668=>769,9669=>769,9670=>769,9671=>769,9672=>769,9673=>873,9674=>494,9675=>873,\n9676=>873,9677=>873,9678=>873,9679=>873,9680=>873,9681=>873,9682=>873,9683=>873,9684=>873,9685=>873,\n9686=>527,9687=>527,9688=>840,9689=>970,9690=>970,9691=>970,9692=>387,9693=>387,9694=>387,9695=>387,\n9696=>769,9697=>769,9698=>769,9699=>769,9700=>769,9701=>769,9702=>639,9703=>945,9704=>945,9705=>945,\n9706=>945,9707=>945,9708=>769,9709=>769,9710=>769,9711=>1119,9712=>945,9713=>945,9714=>945,9715=>945,\n9716=>873,9717=>873,9718=>873,9719=>873,9720=>769,9721=>769,9722=>769,9723=>830,9724=>830,9725=>732,\n9726=>732,9727=>769,9728=>896,9729=>1000,9730=>896,9731=>896,9732=>896,9733=>896,9734=>896,9735=>573,\n9736=>896,9737=>896,9738=>888,9739=>888,9740=>671,9741=>1013,9742=>1246,9743=>1250,9744=>896,9745=>896,\n9746=>896,9747=>532,9748=>896,9749=>896,9750=>896,9751=>896,9752=>896,9753=>896,9754=>896,9755=>896,\n9756=>896,9757=>609,9758=>896,9759=>609,9760=>896,9761=>896,9762=>896,9763=>896,9764=>669,9765=>746,\n9766=>649,9767=>784,9768=>545,9769=>896,9770=>896,9771=>896,9772=>710,9773=>896,9774=>896,9775=>896,\n9776=>896,9777=>896,9778=>896,9779=>896,9780=>896,9781=>896,9782=>896,9783=>896,9784=>896,9785=>896,\n9786=>896,9787=>896,9788=>896,9789=>896,9790=>896,9791=>614,9792=>731,9793=>731,9794=>896,9795=>896,\n9796=>896,9797=>896,9798=>896,9799=>896,9800=>896,9801=>896,9802=>896,9803=>896,9804=>896,9805=>896,\n9806=>896,9807=>896,9808=>896,9809=>896,9810=>896,9811=>896,9812=>896,9813=>896,9814=>896,9815=>896,\n9816=>896,9817=>896,9818=>896,9819=>896,9820=>896,9821=>896,9822=>896,9823=>896,9824=>896,9825=>896,\n9826=>896,9827=>896,9828=>896,9829=>896,9830=>896,9831=>896,9832=>896,9833=>472,9834=>638,9835=>896,\n9836=>896,9837=>472,9838=>357,9839=>484,9840=>748,9841=>766,9842=>896,9843=>896,9844=>896,9845=>896,\n9846=>896,9847=>896,9848=>896,9849=>896,9850=>896,9851=>896,9852=>896,9853=>896,9854=>896,9855=>896,\n9856=>869,9857=>869,9858=>869,9859=>869,9860=>869,9861=>869,9862=>896,9863=>896,9864=>896,9865=>896,\n9866=>896,9867=>896,9868=>896,9869=>896,9870=>896,9871=>896,9872=>896,9873=>896,9874=>896,9875=>896,\n9876=>896,9877=>541,9878=>896,9879=>896,9880=>896,9881=>896,9882=>896,9883=>896,9884=>896,9888=>896,\n9889=>702,9890=>1003,9891=>1085,9892=>1143,9893=>901,9894=>838,9895=>838,9896=>838,9897=>838,9898=>838,\n9899=>838,9900=>838,9901=>838,9902=>838,9903=>838,9904=>844,9905=>838,9906=>731,9907=>732,9908=>732,\n9909=>732,9910=>850,9911=>732,9912=>732,9985=>838,9986=>838,9987=>838,9988=>838,9990=>838,9991=>838,\n9992=>838,9993=>838,9996=>838,9997=>838,9998=>838,9999=>838,10000=>838,10001=>838,10002=>838,10003=>838,\n10004=>838,10005=>838,10006=>838,10007=>838,10008=>838,10009=>838,10010=>838,10011=>838,10012=>838,10013=>838,\n10014=>838,10015=>838,10016=>838,10017=>838,10018=>838,10019=>838,10020=>838,10021=>838,10022=>838,10023=>838,\n10025=>838,10026=>838,10027=>838,10028=>838,10029=>838,10030=>838,10031=>838,10032=>838,10033=>838,10034=>838,\n10035=>838,10036=>838,10037=>838,10038=>838,10039=>838,10040=>838,10041=>838,10042=>838,10043=>838,10044=>838,\n10045=>838,10046=>838,10047=>838,10048=>838,10049=>838,10050=>838,10051=>838,10052=>838,10053=>838,10054=>838,\n10055=>838,10056=>838,10057=>838,10058=>838,10059=>838,10061=>896,10063=>896,10064=>896,10065=>896,10066=>896,\n10070=>896,10072=>838,10073=>838,10074=>838,10075=>347,10076=>347,10077=>587,10078=>587,10081=>838,10082=>838,\n10083=>838,10084=>838,10085=>838,10086=>838,10087=>838,10088=>838,10089=>838,10090=>838,10091=>838,10092=>838,\n10093=>838,10094=>838,10095=>838,10096=>838,10097=>838,10098=>838,10099=>838,10100=>838,10101=>838,10102=>847,\n10103=>847,10104=>847,10105=>847,10106=>847,10107=>847,10108=>847,10109=>847,10110=>847,10111=>847,10112=>838,\n10113=>838,10114=>838,10115=>838,10116=>838,10117=>838,10118=>838,10119=>838,10120=>838,10121=>838,10122=>838,\n10123=>838,10124=>838,10125=>838,10126=>838,10127=>838,10128=>838,10129=>838,10130=>838,10131=>838,10132=>838,\n10136=>838,10137=>838,10138=>838,10139=>838,10140=>838,10141=>838,10142=>838,10143=>838,10144=>838,10145=>838,\n10146=>838,10147=>838,10148=>838,10149=>838,10150=>838,10151=>838,10152=>838,10153=>838,10154=>838,10155=>838,\n10156=>838,10157=>838,10158=>838,10159=>838,10161=>838,10162=>838,10163=>838,10164=>838,10165=>838,10166=>838,\n10167=>838,10168=>838,10169=>838,10170=>838,10171=>838,10172=>838,10173=>838,10174=>838,10181=>457,10182=>457,\n10208=>494,10214=>487,10215=>487,10216=>457,10217=>457,10218=>721,10219=>721,10224=>838,10225=>838,10226=>838,\n10227=>838,10228=>1157,10229=>1434,10230=>1434,10231=>1434,10232=>1434,10233=>1434,10234=>1434,10235=>1434,10236=>1434,\n10237=>1434,10238=>1434,10239=>1434,10240=>781,10241=>781,10242=>781,10243=>781,10244=>781,10245=>781,10246=>781,\n10247=>781,10248=>781,10249=>781,10250=>781,10251=>781,10252=>781,10253=>781,10254=>781,10255=>781,10256=>781,\n10257=>781,10258=>781,10259=>781,10260=>781,10261=>781,10262=>781,10263=>781,10264=>781,10265=>781,10266=>781,\n10267=>781,10268=>781,10269=>781,10270=>781,10271=>781,10272=>781,10273=>781,10274=>781,10275=>781,10276=>781,\n10277=>781,10278=>781,10279=>781,10280=>781,10281=>781,10282=>781,10283=>781,10284=>781,10285=>781,10286=>781,\n10287=>781,10288=>781,10289=>781,10290=>781,10291=>781,10292=>781,10293=>781,10294=>781,10295=>781,10296=>781,\n10297=>781,10298=>781,10299=>781,10300=>781,10301=>781,10302=>781,10303=>781,10304=>781,10305=>781,10306=>781,\n10307=>781,10308=>781,10309=>781,10310=>781,10311=>781,10312=>781,10313=>781,10314=>781,10315=>781,10316=>781,\n10317=>781,10318=>781,10319=>781,10320=>781,10321=>781,10322=>781,10323=>781,10324=>781,10325=>781,10326=>781,\n10327=>781,10328=>781,10329=>781,10330=>781,10331=>781,10332=>781,10333=>781,10334=>781,10335=>781,10336=>781,\n10337=>781,10338=>781,10339=>781,10340=>781,10341=>781,10342=>781,10343=>781,10344=>781,10345=>781,10346=>781,\n10347=>781,10348=>781,10349=>781,10350=>781,10351=>781,10352=>781,10353=>781,10354=>781,10355=>781,10356=>781,\n10357=>781,10358=>781,10359=>781,10360=>781,10361=>781,10362=>781,10363=>781,10364=>781,10365=>781,10366=>781,\n10367=>781,10368=>781,10369=>781,10370=>781,10371=>781,10372=>781,10373=>781,10374=>781,10375=>781,10376=>781,\n10377=>781,10378=>781,10379=>781,10380=>781,10381=>781,10382=>781,10383=>781,10384=>781,10385=>781,10386=>781,\n10387=>781,10388=>781,10389=>781,10390=>781,10391=>781,10392=>781,10393=>781,10394=>781,10395=>781,10396=>781,\n10397=>781,10398=>781,10399=>781,10400=>781,10401=>781,10402=>781,10403=>781,10404=>781,10405=>781,10406=>781,\n10407=>781,10408=>781,10409=>781,10410=>781,10411=>781,10412=>781,10413=>781,10414=>781,10415=>781,10416=>781,\n10417=>781,10418=>781,10419=>781,10420=>781,10421=>781,10422=>781,10423=>781,10424=>781,10425=>781,10426=>781,\n10427=>781,10428=>781,10429=>781,10430=>781,10431=>781,10432=>781,10433=>781,10434=>781,10435=>781,10436=>781,\n10437=>781,10438=>781,10439=>781,10440=>781,10441=>781,10442=>781,10443=>781,10444=>781,10445=>781,10446=>781,\n10447=>781,10448=>781,10449=>781,10450=>781,10451=>781,10452=>781,10453=>781,10454=>781,10455=>781,10456=>781,\n10457=>781,10458=>781,10459=>781,10460=>781,10461=>781,10462=>781,10463=>781,10464=>781,10465=>781,10466=>781,\n10467=>781,10468=>781,10469=>781,10470=>781,10471=>781,10472=>781,10473=>781,10474=>781,10475=>781,10476=>781,\n10477=>781,10478=>781,10479=>781,10480=>781,10481=>781,10482=>781,10483=>781,10484=>781,10485=>781,10486=>781,\n10487=>781,10488=>781,10489=>781,10490=>781,10491=>781,10492=>781,10493=>781,10494=>781,10495=>781,10502=>838,\n10503=>838,10506=>838,10507=>838,10560=>838,10561=>838,10627=>753,10628=>753,10702=>838,10703=>1046,10704=>1046,\n10705=>1000,10706=>1000,10707=>1000,10708=>1000,10709=>1000,10731=>494,10746=>838,10747=>838,10752=>1000,10753=>1000,\n10754=>1000,10764=>1661,10765=>563,10766=>563,10767=>563,10768=>563,10769=>563,10770=>563,10771=>563,10772=>563,\n10773=>563,10774=>563,10775=>563,10776=>563,10777=>563,10778=>563,10779=>563,10780=>563,10799=>838,10877=>838,\n10878=>838,10879=>838,10880=>838,10881=>838,10882=>838,10883=>838,10884=>838,10885=>838,10886=>838,10887=>838,\n10888=>838,10889=>838,10890=>838,10891=>838,10892=>838,10893=>838,10894=>838,10895=>838,10896=>838,10897=>838,\n10898=>838,10899=>838,10900=>838,10901=>838,10902=>838,10903=>838,10904=>838,10905=>838,10906=>838,10907=>838,\n10908=>838,10909=>838,10910=>838,10911=>838,10912=>838,10926=>838,10927=>838,10928=>838,10929=>838,10930=>838,\n10931=>838,10932=>838,10933=>838,10934=>838,10935=>838,10936=>838,10937=>838,10938=>838,11001=>838,11002=>838,\n11008=>838,11009=>838,11010=>838,11011=>838,11012=>838,11013=>838,11014=>838,11015=>838,11016=>838,11017=>838,\n11018=>838,11019=>838,11020=>838,11021=>838,11022=>838,11023=>838,11024=>838,11025=>838,11026=>945,11027=>945,\n11028=>945,11029=>945,11030=>769,11031=>769,11032=>769,11033=>769,11034=>945,11039=>869,11040=>869,11041=>873,\n11042=>873,11043=>873,11044=>1119,11091=>869,11092=>869,11360=>637,11361=>360,11362=>637,11363=>733,11364=>770,\n11365=>675,11366=>478,11367=>956,11368=>712,11369=>775,11370=>665,11371=>725,11372=>582,11373=>860,11374=>995,\n11375=>774,11377=>778,11378=>1221,11379=>1056,11380=>652,11381=>698,11382=>565,11383=>782,11385=>538,11386=>687,\n11387=>559,11388=>219,11389=>487,11568=>691,11569=>941,11570=>941,11571=>725,11572=>725,11573=>725,11574=>676,\n11575=>774,11576=>774,11577=>683,11578=>683,11579=>802,11580=>989,11581=>761,11582=>623,11583=>761,11584=>941,\n11585=>941,11586=>373,11587=>740,11588=>837,11589=>914,11590=>672,11591=>737,11592=>680,11593=>683,11594=>602,\n11595=>1039,11596=>778,11597=>837,11598=>683,11599=>372,11600=>778,11601=>373,11602=>725,11603=>691,11604=>941,\n11605=>941,11606=>837,11607=>373,11608=>836,11609=>941,11610=>941,11611=>734,11612=>876,11613=>771,11614=>734,\n11615=>683,11616=>774,11617=>837,11618=>683,11619=>850,11620=>697,11621=>850,11631=>716,11800=>580,11810=>457,\n11811=>457,11812=>457,11813=>457,11822=>580,19904=>896,19905=>896,19906=>896,19907=>896,19908=>896,19909=>896,\n19910=>896,19911=>896,19912=>896,19913=>896,19914=>896,19915=>896,19916=>896,19917=>896,19918=>896,19919=>896,\n19920=>896,19921=>896,19922=>896,19923=>896,19924=>896,19925=>896,19926=>896,19927=>896,19928=>896,19929=>896,\n19930=>896,19931=>896,19932=>896,19933=>896,19934=>896,19935=>896,19936=>896,19937=>896,19938=>896,19939=>896,\n19940=>896,19941=>896,19942=>896,19943=>896,19944=>896,19945=>896,19946=>896,19947=>896,19948=>896,19949=>896,\n19950=>896,19951=>896,19952=>896,19953=>896,19954=>896,19955=>896,19956=>896,19957=>896,19958=>896,19959=>896,\n19960=>896,19961=>896,19962=>896,19963=>896,19964=>896,19965=>896,19966=>896,19967=>896,42564=>720,42565=>595,\n42566=>436,42567=>440,42572=>1405,42573=>1173,42576=>1234,42577=>1027,42580=>1174,42581=>972,42582=>1093,42583=>958,\n42594=>1085,42595=>924,42596=>1096,42597=>912,42598=>1260,42599=>997,42600=>850,42601=>687,42602=>1037,42603=>868,\n42604=>1406,42605=>1106,42606=>961,42634=>963,42635=>787,42636=>682,42637=>580,42644=>808,42645=>712,42760=>500,\n42761=>500,42762=>500,42763=>500,42764=>500,42765=>500,42766=>500,42767=>500,42768=>500,42769=>500,42770=>500,\n42771=>500,42772=>500,42773=>500,42774=>500,42779=>400,42780=>400,42781=>287,42782=>287,42783=>287,42790=>837,\n42791=>712,42792=>1031,42793=>857,42794=>696,42795=>557,42800=>559,42801=>595,42802=>1349,42803=>1052,42804=>1284,\n42805=>1064,42806=>1216,42807=>1054,42808=>1079,42809=>922,42810=>1079,42811=>922,42812=>1035,42813=>922,42814=>698,\n42815=>549,42822=>850,42823=>542,42824=>683,42825=>531,42826=>918,42827=>814,42830=>1406,42831=>1106,42880=>637,\n42881=>343,42882=>837,42883=>712,42889=>400,42890=>386,42891=>456,42892=>306,43003=>683,43004=>733,43005=>995,\n43006=>372,43007=>1325,63173=>687,64256=>810,64257=>741,64258=>741,64259=>1115,64260=>1116,64261=>808,64262=>1020,\n64275=>1388,64276=>1384,64277=>1378,64278=>1384,64279=>1713,64285=>343,64286=>0,64287=>663,64288=>720,64289=>963,\n64290=>890,64291=>988,64292=>963,64293=>938,64294=>988,64295=>988,64296=>976,64297=>838,64298=>949,64299=>949,\n64300=>949,64301=>949,64302=>751,64303=>751,64304=>751,64305=>673,64306=>537,64307=>654,64308=>712,64309=>438,\n64310=>491,64312=>724,64313=>438,64314=>649,64315=>650,64316=>679,64318=>775,64320=>497,64321=>773,64323=>718,\n64324=>687,64326=>751,64327=>729,64328=>649,64329=>949,64330=>751,64331=>343,64332=>673,64333=>650,64334=>687,\n64335=>751,64338=>1005,64339=>1059,64340=>375,64341=>408,64342=>1005,64343=>1059,64344=>375,64345=>408,64346=>1005,\n64347=>1059,64348=>375,64349=>408,64350=>1005,64351=>1059,64352=>375,64353=>408,64354=>1005,64355=>1059,64356=>375,\n64357=>408,64358=>1005,64359=>1059,64360=>375,64361=>408,64362=>1162,64363=>1191,64364=>655,64365=>720,64366=>1162,\n64367=>1191,64368=>655,64369=>720,64370=>721,64371=>721,64372=>721,64373=>721,64374=>721,64375=>721,64376=>721,\n64377=>721,64378=>721,64379=>721,64380=>721,64381=>721,64382=>721,64383=>721,64384=>721,64385=>721,64394=>576,\n64395=>622,64396=>576,64397=>622,64398=>1024,64399=>1024,64400=>582,64401=>582,64402=>1024,64403=>1024,64404=>582,\n64405=>582,64414=>854,64415=>900,64473=>622,64474=>627,64488=>375,64489=>408,64508=>917,64509=>1012,64510=>375,\n64511=>408,65024=>0,65025=>0,65026=>0,65027=>0,65028=>0,65029=>0,65030=>0,65031=>0,65032=>0,\n65033=>0,65034=>0,65035=>0,65036=>0,65037=>0,65038=>0,65039=>0,65056=>0,65057=>0,65058=>0,\n65059=>0,65136=>342,65137=>342,65138=>342,65139=>346,65140=>342,65142=>342,65143=>342,65144=>342,65145=>342,\n65146=>342,65147=>342,65148=>342,65149=>342,65150=>342,65151=>342,65152=>511,65153=>343,65154=>375,65155=>343,\n65156=>375,65157=>622,65158=>627,65159=>343,65160=>375,65161=>917,65162=>917,65163=>375,65164=>408,65165=>343,\n65166=>375,65167=>1005,65168=>1059,65169=>375,65170=>408,65171=>590,65172=>606,65173=>1005,65174=>1059,65175=>375,\n65176=>408,65177=>1005,65178=>1059,65179=>375,65180=>408,65181=>721,65182=>721,65183=>721,65184=>721,65185=>721,\n65186=>721,65187=>721,65188=>721,65189=>721,65190=>721,65191=>721,65192=>721,65193=>513,65194=>578,65195=>513,\n65196=>578,65197=>576,65198=>622,65199=>576,65200=>622,65201=>1380,65202=>1414,65203=>983,65204=>1018,65205=>1380,\n65206=>1414,65207=>983,65208=>1018,65209=>1345,65210=>1364,65211=>966,65212=>985,65213=>1345,65214=>1364,65215=>966,\n65216=>985,65217=>1039,65218=>1071,65219=>942,65220=>974,65221=>1039,65222=>1071,65223=>942,65224=>974,65225=>683,\n65226=>683,65227=>683,65228=>564,65229=>683,65230=>683,65231=>683,65232=>564,65233=>1162,65234=>1191,65235=>655,\n65236=>720,65237=>894,65238=>901,65239=>655,65240=>720,65241=>917,65242=>931,65243=>582,65244=>582,65245=>868,\n65246=>893,65247=>375,65248=>408,65249=>733,65250=>784,65251=>619,65252=>670,65253=>854,65254=>900,65255=>375,\n65256=>408,65257=>590,65258=>606,65259=>693,65260=>660,65261=>622,65262=>627,65263=>917,65264=>1012,65265=>917,\n65266=>1012,65267=>375,65268=>408,65269=>745,65270=>759,65271=>745,65272=>759,65273=>745,65274=>759,65275=>745,\n65276=>759,65279=>0,65529=>0,65530=>0,65531=>0,65532=>0,65533=>1113);\n$enc='';\n$diff='';\n$file='dejavusansb.z';\n$ctg='dejavusansb.ctg.z';\n$originalsize=573136;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavusansbi.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='DejaVuSans-BoldOblique';\n$desc=array('Ascent'=>928,'Descent'=>-236,'CapHeight'=>-51,'Flags'=>96,'FontBBox'=>'[-1067 -385 2005 1121]','ItalicAngle'=>-11,'StemV'=>120,'MissingWidth'=>600);\n$up=-63;\n$ut=44;\n$dw=600;\n$cw=array(\n0=>600,32=>348,33=>456,34=>521,35=>696,36=>696,37=>1002,38=>872,39=>306,40=>457,\n41=>457,42=>523,43=>838,44=>380,45=>415,46=>380,47=>365,48=>696,49=>696,50=>696,\n51=>696,52=>696,53=>696,54=>696,55=>696,56=>696,57=>696,58=>400,59=>400,60=>838,\n61=>838,62=>838,63=>580,64=>1000,65=>774,66=>762,67=>734,68=>830,69=>683,70=>683,\n71=>821,72=>837,73=>372,74=>372,75=>775,76=>637,77=>995,78=>837,79=>850,80=>733,\n81=>850,82=>770,83=>720,84=>682,85=>812,86=>774,87=>1103,88=>771,89=>724,90=>725,\n91=>457,92=>365,93=>457,94=>838,95=>500,96=>500,97=>675,98=>716,99=>593,100=>716,\n101=>678,102=>435,103=>716,104=>712,105=>343,106=>343,107=>665,108=>343,109=>1042,110=>712,\n111=>687,112=>716,113=>716,114=>493,115=>595,116=>478,117=>712,118=>652,119=>924,120=>645,\n121=>652,122=>582,123=>712,124=>365,125=>712,126=>838,8364=>696,8218=>380,402=>435,8222=>644,\n8230=>1000,8224=>500,8225=>500,710=>500,8240=>1454,352=>720,8249=>412,338=>1167,381=>725,8216=>380,\n8217=>380,8220=>644,8221=>644,8226=>639,8211=>500,8212=>1000,732=>500,8482=>1000,353=>595,8250=>412,\n339=>1094,382=>582,376=>724,160=>348,161=>456,162=>696,163=>696,164=>636,165=>696,166=>365,\n167=>500,168=>500,169=>1000,170=>564,171=>650,172=>838,173=>415,174=>1000,175=>500,176=>500,\n177=>838,178=>438,179=>438,180=>500,181=>736,182=>636,183=>380,184=>500,185=>438,186=>564,\n187=>650,188=>1035,189=>1035,190=>1035,191=>580,192=>774,193=>774,194=>774,195=>774,196=>774,\n197=>774,198=>1085,199=>734,200=>683,201=>683,202=>683,203=>683,204=>372,205=>372,206=>372,\n207=>372,208=>845,209=>837,210=>850,211=>850,212=>850,213=>850,214=>850,215=>838,216=>850,\n217=>812,218=>812,219=>812,220=>812,221=>724,222=>742,223=>719,224=>675,225=>675,226=>675,\n227=>675,228=>675,229=>675,230=>1048,231=>593,232=>678,233=>678,234=>678,235=>678,236=>343,\n237=>343,238=>343,239=>343,240=>687,241=>712,242=>687,243=>687,244=>687,245=>687,246=>687,\n247=>838,248=>687,249=>712,250=>712,251=>712,252=>712,253=>652,254=>716,255=>652,256=>774,\n257=>675,258=>774,259=>675,260=>774,261=>675,262=>734,263=>593,264=>734,265=>593,266=>734,\n267=>593,268=>734,269=>593,270=>830,271=>716,272=>845,273=>716,274=>683,275=>678,276=>683,\n277=>678,278=>683,279=>678,280=>683,281=>678,282=>683,283=>678,284=>821,285=>716,286=>821,\n287=>716,288=>821,289=>716,290=>821,291=>716,292=>837,293=>712,294=>974,295=>790,296=>372,\n297=>343,298=>372,299=>343,300=>372,301=>343,302=>372,303=>343,304=>372,305=>343,306=>744,\n307=>686,308=>372,309=>343,310=>775,311=>665,312=>665,313=>637,314=>343,315=>637,316=>343,\n317=>637,318=>343,319=>637,320=>343,321=>660,322=>375,323=>837,324=>712,325=>837,326=>712,\n327=>837,328=>712,329=>983,330=>837,331=>712,332=>850,333=>687,334=>850,335=>687,336=>850,\n337=>687,340=>770,341=>493,342=>770,343=>493,344=>770,345=>493,346=>720,347=>595,348=>720,\n349=>595,350=>720,351=>595,354=>682,355=>478,356=>682,357=>478,358=>682,359=>478,360=>812,\n361=>712,362=>812,363=>712,364=>812,365=>712,366=>812,367=>712,368=>812,369=>712,370=>812,\n371=>712,372=>1103,373=>924,374=>724,375=>652,377=>725,378=>582,379=>725,380=>582,383=>435,\n384=>716,385=>811,386=>762,387=>716,388=>762,389=>716,390=>734,391=>734,392=>593,393=>845,\n394=>879,395=>762,396=>716,397=>687,398=>683,399=>850,400=>696,401=>683,403=>821,404=>793,\n405=>1045,406=>436,407=>389,408=>775,409=>665,410=>360,411=>592,412=>1042,413=>837,414=>712,\n415=>850,416=>850,417=>687,418=>1114,419=>962,420=>782,421=>716,422=>770,423=>720,424=>595,\n425=>683,426=>552,427=>478,428=>707,429=>478,430=>682,431=>812,432=>712,433=>769,434=>813,\n435=>797,436=>778,437=>725,438=>582,439=>772,440=>772,441=>641,442=>582,443=>696,444=>772,\n445=>641,446=>573,447=>716,448=>372,449=>659,450=>544,451=>372,452=>1548,453=>1450,454=>1307,\n455=>977,456=>979,457=>670,458=>1193,459=>1213,460=>1063,461=>774,462=>675,463=>372,464=>343,\n465=>850,466=>687,467=>812,468=>712,469=>812,470=>712,471=>812,472=>712,473=>812,474=>712,\n475=>812,476=>712,477=>678,478=>774,479=>675,480=>774,481=>675,482=>1085,483=>1048,484=>821,\n485=>716,486=>821,487=>716,488=>775,489=>665,490=>850,491=>687,492=>850,493=>687,494=>772,\n495=>582,496=>343,497=>1548,498=>1450,499=>1307,500=>821,501=>716,502=>1289,503=>787,504=>837,\n505=>712,506=>774,507=>675,508=>1085,509=>1048,510=>850,511=>687,512=>774,513=>675,514=>774,\n515=>675,516=>683,517=>678,518=>683,519=>678,520=>372,521=>343,522=>372,523=>343,524=>850,\n525=>687,526=>850,527=>687,528=>770,529=>493,530=>770,531=>493,532=>812,533=>712,534=>812,\n535=>712,536=>720,537=>595,538=>682,539=>478,540=>690,541=>607,542=>837,543=>712,544=>837,\n545=>865,546=>809,547=>659,548=>725,549=>582,550=>774,551=>675,552=>683,553=>678,554=>850,\n555=>687,556=>850,557=>687,558=>850,559=>687,560=>850,561=>687,562=>724,563=>652,564=>492,\n565=>867,566=>512,567=>343,568=>1088,569=>1088,570=>774,571=>734,572=>593,573=>637,574=>682,\n575=>595,576=>582,577=>782,578=>614,579=>762,580=>812,581=>774,582=>683,583=>678,584=>372,\n585=>343,586=>860,587=>791,588=>770,589=>493,590=>724,591=>652,592=>675,593=>716,594=>716,\n595=>716,596=>593,597=>593,598=>791,599=>792,600=>678,601=>678,602=>876,603=>557,604=>545,\n605=>774,606=>731,607=>343,608=>792,609=>716,610=>627,611=>735,612=>635,613=>712,614=>712,\n615=>712,616=>545,617=>440,618=>545,619=>559,620=>693,621=>343,622=>841,623=>1042,624=>1042,\n625=>1042,626=>712,627=>793,628=>642,629=>687,630=>909,631=>682,632=>796,633=>538,634=>538,\n635=>650,636=>493,637=>493,638=>596,639=>596,640=>642,641=>642,642=>595,643=>415,644=>435,\n645=>605,646=>552,647=>478,648=>478,649=>920,650=>769,651=>670,652=>652,653=>924,654=>652,\n655=>724,656=>694,657=>684,658=>641,659=>641,660=>573,661=>573,662=>573,663=>573,664=>850,\n665=>633,666=>731,667=>685,668=>691,669=>343,670=>732,671=>539,672=>792,673=>573,674=>573,\n675=>1156,676=>1214,677=>1155,678=>974,679=>769,680=>929,681=>1026,682=>792,683=>780,684=>591,\n685=>415,686=>677,687=>789,688=>456,689=>456,690=>219,691=>315,692=>315,693=>315,694=>411,\n695=>591,696=>417,697=>302,698=>521,699=>380,700=>380,701=>380,702=>366,703=>366,704=>326,\n705=>326,706=>500,707=>500,708=>500,709=>500,711=>500,712=>306,713=>500,714=>500,715=>500,\n716=>306,717=>500,718=>500,719=>500,720=>337,721=>337,722=>366,723=>366,724=>500,725=>500,\n726=>416,727=>328,728=>500,729=>500,730=>500,731=>500,733=>500,734=>351,735=>500,736=>412,\n737=>219,738=>381,739=>413,740=>326,741=>500,742=>500,743=>500,744=>500,745=>500,748=>500,\n749=>500,750=>644,755=>500,759=>500,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,\n774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,\n784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,\n794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,\n804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,\n814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,\n824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,\n834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,\n844=>0,845=>0,846=>0,847=>0,849=>0,850=>0,851=>0,855=>0,856=>0,858=>0,\n860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,880=>698,881=>565,882=>1022,\n883=>836,884=>302,885=>302,886=>837,887=>701,890=>500,891=>593,892=>550,893=>549,894=>400,\n900=>441,901=>500,902=>797,903=>380,904=>846,905=>1009,906=>563,908=>891,910=>980,911=>894,\n912=>390,913=>774,914=>762,915=>637,916=>774,917=>683,918=>725,919=>837,920=>850,921=>372,\n922=>775,923=>774,924=>995,925=>837,926=>632,927=>850,928=>837,929=>733,931=>683,932=>682,\n933=>724,934=>850,935=>771,936=>850,937=>850,938=>372,939=>724,940=>687,941=>557,942=>712,\n943=>390,944=>675,945=>687,946=>716,947=>681,948=>687,949=>557,950=>591,951=>712,952=>687,\n953=>390,954=>710,955=>633,956=>736,957=>681,958=>591,959=>687,960=>791,961=>716,962=>593,\n963=>779,964=>638,965=>675,966=>782,967=>645,968=>794,969=>869,970=>390,971=>675,972=>687,\n973=>675,974=>869,975=>775,976=>651,977=>661,978=>746,979=>981,980=>746,981=>796,982=>869,\n983=>744,984=>850,985=>687,986=>734,987=>593,988=>683,989=>494,990=>702,991=>660,992=>919,\n993=>627,994=>1093,995=>837,996=>832,997=>716,998=>928,999=>744,1000=>733,1001=>650,1002=>789,\n1003=>671,1004=>752,1005=>716,1006=>682,1007=>590,1008=>744,1009=>716,1010=>593,1011=>343,1012=>850,\n1013=>645,1014=>645,1015=>742,1016=>716,1017=>734,1018=>995,1019=>732,1020=>716,1021=>734,1022=>734,\n1023=>698,1024=>683,1025=>683,1026=>878,1027=>637,1028=>734,1029=>720,1030=>372,1031=>372,1032=>372,\n1033=>1154,1034=>1130,1035=>878,1036=>817,1037=>837,1038=>771,1039=>837,1040=>774,1041=>762,1042=>762,\n1043=>637,1044=>891,1045=>683,1046=>1224,1047=>710,1048=>837,1049=>837,1050=>817,1051=>831,1052=>995,\n1053=>837,1054=>850,1055=>837,1056=>733,1057=>734,1058=>682,1059=>771,1060=>992,1061=>771,1062=>928,\n1063=>808,1064=>1235,1065=>1326,1066=>939,1067=>1036,1068=>762,1069=>734,1070=>1174,1071=>770,1072=>675,\n1073=>698,1074=>633,1075=>522,1076=>808,1077=>678,1078=>995,1079=>581,1080=>701,1081=>701,1082=>679,\n1083=>732,1084=>817,1085=>691,1086=>687,1087=>691,1088=>716,1089=>593,1090=>580,1091=>652,1092=>992,\n1093=>645,1094=>741,1095=>687,1096=>1062,1097=>1105,1098=>751,1099=>904,1100=>632,1101=>593,1102=>972,\n1103=>642,1104=>678,1105=>678,1106=>714,1107=>522,1108=>593,1109=>595,1110=>343,1111=>343,1112=>343,\n1113=>991,1114=>956,1115=>734,1116=>679,1117=>701,1118=>652,1119=>691,1120=>1093,1121=>869,1122=>840,\n1123=>736,1124=>1012,1125=>839,1126=>992,1127=>832,1128=>1358,1129=>1121,1130=>850,1131=>687,1132=>1236,\n1133=>1007,1134=>696,1135=>557,1136=>1075,1137=>1061,1138=>850,1139=>687,1140=>850,1141=>695,1142=>850,\n1143=>695,1144=>1148,1145=>1043,1146=>1074,1147=>863,1148=>1405,1149=>1173,1150=>1093,1151=>869,1152=>734,\n1153=>593,1154=>652,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>418,1161=>418,1162=>938,\n1163=>806,1164=>762,1165=>611,1166=>736,1167=>718,1168=>637,1169=>522,1170=>666,1171=>543,1172=>789,\n1173=>522,1174=>1224,1175=>995,1176=>710,1177=>581,1178=>775,1179=>679,1180=>817,1181=>679,1182=>817,\n1183=>679,1184=>1015,1185=>826,1186=>837,1187=>691,1188=>1103,1189=>871,1190=>1254,1191=>979,1192=>946,\n1193=>859,1194=>734,1195=>593,1196=>682,1197=>580,1198=>724,1199=>652,1200=>724,1201=>652,1202=>771,\n1203=>645,1204=>1104,1205=>1001,1206=>808,1207=>687,1208=>808,1209=>687,1210=>808,1211=>712,1212=>1026,\n1213=>810,1214=>1026,1215=>810,1216=>372,1217=>1224,1218=>995,1219=>778,1220=>629,1221=>933,1222=>804,\n1223=>837,1224=>691,1225=>938,1226=>806,1227=>808,1228=>687,1229=>1096,1230=>932,1231=>343,1232=>774,\n1233=>675,1234=>774,1235=>675,1236=>1085,1237=>1048,1238=>683,1239=>678,1240=>850,1241=>678,1242=>850,\n1243=>678,1244=>1224,1245=>995,1246=>710,1247=>581,1248=>772,1249=>641,1250=>837,1251=>701,1252=>837,\n1253=>701,1254=>850,1255=>687,1256=>850,1257=>687,1258=>850,1259=>687,1260=>734,1261=>593,1262=>771,\n1263=>652,1264=>771,1265=>652,1266=>771,1267=>652,1268=>808,1269=>687,1270=>637,1271=>522,1272=>1036,\n1273=>904,1274=>666,1275=>543,1276=>771,1277=>645,1278=>771,1279=>645,1280=>762,1281=>608,1282=>1159,\n1283=>893,1284=>1119,1285=>920,1286=>828,1287=>693,1288=>1242,1289=>1017,1290=>1289,1291=>1013,1292=>839,\n1293=>638,1294=>938,1295=>803,1296=>696,1297=>557,1298=>831,1299=>732,1300=>1286,1301=>1070,1302=>1065,\n1303=>982,1304=>1082,1305=>960,1306=>850,1307=>716,1308=>1103,1309=>924,1312=>1248,1313=>1022,1314=>1254,\n1315=>979,1316=>957,1317=>807,1329=>984,1330=>812,1331=>984,1332=>984,1333=>812,1334=>777,1335=>812,\n1336=>812,1337=>975,1338=>984,1339=>812,1340=>710,1341=>1078,1342=>1136,1343=>812,1344=>710,1345=>757,\n1346=>984,1347=>876,1348=>984,1349=>793,1350=>984,1351=>812,1352=>812,1353=>812,1354=>958,1355=>777,\n1356=>984,1357=>812,1358=>984,1359=>720,1360=>812,1361=>793,1362=>895,1363=>850,1364=>936,1365=>850,\n1366=>720,1369=>366,1370=>380,1371=>550,1372=>550,1373=>380,1374=>546,1375=>521,1377=>1042,1378=>712,\n1379=>866,1380=>868,1381=>712,1382=>817,1383=>653,1384=>712,1385=>811,1386=>817,1387=>712,1388=>498,\n1389=>1018,1390=>716,1391=>712,1392=>712,1393=>716,1394=>819,1395=>712,1396=>751,1397=>343,1398=>882,\n1399=>559,1400=>712,1401=>559,1402=>1042,1403=>559,1404=>863,1405=>712,1406=>813,1407=>1042,1408=>712,\n1409=>716,1410=>571,1411=>1042,1412=>778,1413=>687,1414=>720,1415=>862,1417=>400,1418=>487,1456=>0,\n1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1466=>0,\n1467=>0,1468=>0,1469=>0,1470=>415,1471=>0,1472=>372,1473=>0,1474=>0,1475=>372,1478=>497,\n1479=>0,1488=>751,1489=>673,1490=>537,1491=>654,1492=>712,1493=>343,1494=>491,1495=>712,1496=>724,\n1497=>343,1498=>649,1499=>650,1500=>679,1501=>712,1502=>775,1503=>343,1504=>497,1505=>773,1506=>678,\n1507=>718,1508=>687,1509=>628,1510=>751,1511=>729,1512=>649,1513=>949,1514=>751,1520=>664,1521=>664,\n1522=>663,1523=>444,1524=>710,3647=>743,3713=>815,3714=>748,3716=>749,3719=>569,3720=>742,3722=>744,\n3725=>761,3732=>706,3733=>704,3734=>747,3735=>819,3737=>730,3738=>727,3739=>727,3740=>922,3741=>827,\n3742=>866,3743=>866,3745=>836,3746=>761,3747=>770,3749=>769,3751=>713,3754=>827,3755=>1031,3757=>724,\n3758=>784,3759=>934,3760=>688,3761=>0,3762=>610,3763=>610,3764=>0,3765=>0,3766=>0,3767=>0,\n3768=>0,3769=>0,3771=>0,3772=>0,3773=>670,3776=>516,3777=>860,3778=>516,3779=>650,3780=>632,\n3782=>759,3784=>0,3785=>0,3786=>0,3787=>0,3788=>0,3789=>0,3792=>771,3793=>771,3794=>693,\n3795=>836,3796=>729,3797=>729,3798=>849,3799=>790,3800=>759,3801=>910,3804=>1363,3805=>1363,4256=>918,\n4257=>744,4258=>739,4259=>837,4260=>649,4261=>773,4262=>857,4263=>889,4264=>530,4265=>633,4266=>857,\n4267=>900,4268=>643,4269=>903,4270=>814,4271=>752,4272=>869,4273=>643,4274=>643,4275=>886,4276=>886,\n4277=>733,4278=>653,4279=>643,4280=>646,4281=>643,4282=>790,4283=>902,4284=>633,4285=>619,4286=>643,\n4287=>778,4288=>892,4289=>601,4290=>742,4291=>616,4292=>633,4293=>742,4304=>553,4305=>552,4306=>596,\n4307=>815,4308=>562,4309=>563,4310=>553,4311=>827,4312=>553,4313=>543,4314=>1074,4315=>563,4316=>563,\n4317=>812,4318=>552,4319=>591,4320=>822,4321=>563,4322=>690,4323=>583,4324=>813,4325=>562,4326=>813,\n4327=>563,4328=>563,4329=>563,4330=>632,4331=>563,4332=>563,4333=>552,4334=>563,4335=>563,4336=>558,\n4337=>604,4338=>552,4339=>552,4340=>553,4341=>605,4342=>852,4343=>635,4344=>563,4345=>596,4346=>542,\n4347=>684,4348=>368,5121=>774,5122=>774,5123=>774,5124=>774,5125=>905,5126=>905,5127=>905,5129=>905,\n5130=>905,5131=>905,5132=>1018,5133=>1009,5134=>1018,5135=>1009,5136=>1018,5137=>1009,5138=>1149,5139=>1140,\n5140=>1149,5141=>1140,5142=>905,5143=>1149,5144=>1142,5145=>1149,5146=>1142,5147=>905,5149=>310,5150=>529,\n5151=>425,5152=>425,5153=>395,5154=>395,5155=>395,5156=>395,5157=>564,5158=>470,5159=>310,5160=>395,\n5161=>395,5162=>395,5163=>1213,5164=>986,5165=>1216,5166=>1297,5167=>774,5168=>774,5169=>774,5170=>774,\n5171=>886,5172=>886,5173=>886,5175=>886,5176=>886,5177=>886,5178=>1018,5179=>1009,5180=>1018,5181=>1009,\n5182=>1018,5183=>1009,5184=>1149,5185=>1140,5186=>1149,5187=>1140,5188=>1149,5189=>1142,5190=>1149,5191=>1142,\n5192=>886,5193=>576,5194=>229,5196=>812,5197=>812,5198=>812,5199=>812,5200=>815,5201=>815,5202=>815,\n5204=>815,5205=>815,5206=>815,5207=>1056,5208=>1048,5209=>1056,5210=>1048,5211=>1056,5212=>1048,5213=>1060,\n5214=>1054,5215=>1060,5216=>1054,5217=>1060,5218=>1052,5219=>1060,5220=>1052,5221=>1060,5222=>483,5223=>1005,\n5224=>1005,5225=>1023,5226=>1017,5227=>743,5228=>743,5229=>743,5230=>743,5231=>743,5232=>743,5233=>743,\n5234=>743,5235=>743,5236=>1029,5237=>975,5238=>980,5239=>975,5240=>980,5241=>975,5242=>1029,5243=>975,\n5244=>1029,5245=>975,5246=>980,5247=>975,5248=>980,5249=>975,5250=>980,5251=>501,5252=>501,5253=>938,\n5254=>938,5255=>938,5256=>938,5257=>743,5258=>743,5259=>743,5260=>743,5261=>743,5262=>743,5263=>743,\n5264=>743,5265=>743,5266=>1029,5267=>975,5268=>1029,5269=>975,5270=>1029,5271=>975,5272=>1029,5273=>975,\n5274=>1029,5275=>975,5276=>1029,5277=>975,5278=>1029,5279=>975,5280=>1029,5281=>501,5282=>501,5283=>626,\n5284=>626,5285=>626,5286=>626,5287=>626,5288=>626,5289=>626,5290=>626,5291=>626,5292=>881,5293=>854,\n5294=>863,5295=>874,5296=>863,5297=>874,5298=>881,5299=>874,5300=>881,5301=>874,5302=>863,5303=>874,\n5304=>863,5305=>874,5306=>863,5307=>436,5308=>548,5309=>436,5312=>988,5313=>988,5314=>988,5315=>988,\n5316=>931,5317=>931,5318=>931,5319=>931,5320=>931,5321=>1238,5322=>1247,5323=>1200,5324=>1228,5325=>1200,\n5326=>1228,5327=>931,5328=>660,5329=>497,5330=>660,5331=>988,5332=>988,5333=>988,5334=>988,5335=>931,\n5336=>931,5337=>931,5338=>931,5339=>931,5340=>1231,5341=>1247,5342=>1283,5343=>1228,5344=>1283,5345=>1228,\n5346=>1228,5347=>1214,5348=>1228,5349=>1214,5350=>1283,5351=>1228,5352=>1283,5353=>1228,5354=>660,5356=>886,\n5357=>730,5358=>730,5359=>730,5360=>730,5361=>730,5362=>730,5363=>730,5364=>730,5365=>730,5366=>998,\n5367=>958,5368=>967,5369=>989,5370=>967,5371=>989,5372=>998,5373=>958,5374=>998,5375=>958,5376=>967,\n5377=>989,5378=>967,5379=>989,5380=>967,5381=>493,5382=>460,5383=>493,5392=>923,5393=>923,5394=>923,\n5395=>1136,5396=>1136,5397=>1136,5398=>1136,5399=>1209,5400=>1202,5401=>1209,5402=>1202,5403=>1209,5404=>1202,\n5405=>1431,5406=>1420,5407=>1431,5408=>1420,5409=>1431,5410=>1420,5411=>1431,5412=>1420,5413=>746,5414=>776,\n5415=>776,5416=>776,5417=>776,5418=>776,5419=>776,5420=>776,5421=>776,5422=>776,5423=>1003,5424=>1003,\n5425=>1013,5426=>996,5427=>1013,5428=>996,5429=>1003,5430=>1003,5431=>1003,5432=>1003,5433=>1013,5434=>996,\n5435=>1013,5436=>996,5437=>1013,5438=>495,5440=>395,5441=>510,5442=>1033,5443=>1033,5444=>976,5445=>976,\n5446=>976,5447=>976,5448=>733,5449=>733,5450=>733,5451=>733,5452=>733,5453=>733,5454=>1003,5455=>959,\n5456=>495,5458=>886,5459=>774,5460=>774,5461=>774,5462=>774,5463=>928,5464=>928,5465=>928,5466=>928,\n5467=>1172,5468=>1142,5469=>602,5470=>812,5471=>812,5472=>812,5473=>812,5474=>812,5475=>812,5476=>815,\n5477=>815,5478=>815,5479=>815,5480=>1060,5481=>1052,5482=>548,5492=>977,5493=>977,5494=>977,5495=>977,\n5496=>977,5497=>977,5498=>977,5499=>618,5500=>837,5501=>510,5502=>1238,5503=>1238,5504=>1238,5505=>1238,\n5506=>1238,5507=>1238,5508=>1238,5509=>989,5514=>977,5515=>977,5516=>977,5517=>977,5518=>1591,5519=>1591,\n5520=>1591,5521=>1295,5522=>1295,5523=>1591,5524=>1591,5525=>848,5526=>1273,5536=>988,5537=>988,5538=>931,\n5539=>931,5540=>931,5541=>931,5542=>660,5543=>776,5544=>776,5545=>776,5546=>776,5547=>776,5548=>776,\n5549=>776,5550=>495,5551=>743,5598=>830,5601=>830,5702=>496,5703=>496,5742=>413,5743=>1238,5744=>1591,\n5745=>2016,5746=>2016,5747=>1720,5748=>1678,5749=>2016,5750=>2016,7424=>652,7425=>833,7426=>1048,7427=>608,\n7428=>593,7429=>676,7430=>676,7431=>559,7432=>557,7433=>343,7434=>494,7435=>665,7436=>539,7437=>817,\n7438=>701,7439=>687,7440=>593,7441=>660,7442=>660,7443=>660,7444=>1094,7446=>687,7447=>687,7448=>556,\n7449=>642,7450=>642,7451=>580,7452=>634,7453=>737,7454=>948,7455=>695,7456=>652,7457=>924,7458=>582,\n7459=>646,7462=>539,7463=>652,7464=>691,7465=>556,7466=>781,7467=>732,7468=>487,7469=>683,7470=>480,\n7472=>523,7473=>430,7474=>430,7475=>517,7476=>527,7477=>234,7478=>234,7479=>488,7480=>401,7481=>626,\n7482=>527,7483=>527,7484=>535,7485=>509,7486=>461,7487=>485,7488=>430,7489=>511,7490=>695,7491=>458,\n7492=>458,7493=>479,7494=>712,7495=>479,7496=>479,7497=>479,7498=>479,7499=>386,7500=>386,7501=>479,\n7502=>219,7503=>487,7504=>664,7505=>456,7506=>488,7507=>414,7508=>488,7509=>488,7510=>479,7511=>388,\n7512=>456,7513=>462,7514=>664,7515=>501,7517=>451,7518=>429,7519=>433,7520=>493,7521=>406,7522=>219,\n7523=>315,7524=>456,7525=>501,7526=>451,7527=>429,7528=>451,7529=>493,7530=>406,7543=>716,7544=>527,\n7547=>545,7557=>514,7579=>479,7580=>414,7581=>414,7582=>488,7583=>386,7584=>377,7585=>348,7586=>479,\n7587=>456,7588=>347,7589=>281,7590=>347,7591=>347,7592=>431,7593=>326,7594=>330,7595=>370,7596=>664,\n7597=>664,7598=>562,7599=>562,7600=>448,7601=>488,7602=>542,7603=>422,7604=>396,7605=>388,7606=>583,\n7607=>494,7608=>399,7609=>451,7610=>501,7611=>417,7612=>523,7613=>470,7614=>455,7615=>425,7620=>0,\n7621=>0,7622=>0,7623=>0,7624=>0,7625=>0,7680=>774,7681=>675,7682=>762,7683=>716,7684=>762,\n7685=>716,7686=>762,7687=>716,7688=>734,7689=>593,7690=>830,7691=>716,7692=>830,7693=>716,7694=>830,\n7695=>716,7696=>830,7697=>716,7698=>830,7699=>716,7700=>683,7701=>678,7702=>683,7703=>678,7704=>683,\n7705=>678,7706=>683,7707=>678,7708=>683,7709=>678,7710=>683,7711=>435,7712=>821,7713=>716,7714=>837,\n7715=>712,7716=>837,7717=>712,7718=>837,7719=>712,7720=>837,7721=>712,7722=>837,7723=>712,7724=>372,\n7725=>343,7726=>372,7727=>343,7728=>775,7729=>665,7730=>775,7731=>665,7732=>775,7733=>665,7734=>637,\n7735=>343,7736=>637,7737=>343,7738=>637,7739=>343,7740=>637,7741=>343,7742=>995,7743=>1042,7744=>995,\n7745=>1042,7746=>995,7747=>1042,7748=>837,7749=>712,7750=>837,7751=>712,7752=>837,7753=>712,7754=>837,\n7755=>712,7756=>850,7757=>687,7758=>850,7759=>687,7760=>850,7761=>687,7762=>850,7763=>687,7764=>733,\n7765=>716,7766=>733,7767=>716,7768=>770,7769=>493,7770=>770,7771=>493,7772=>770,7773=>493,7774=>770,\n7775=>493,7776=>720,7777=>595,7778=>720,7779=>595,7780=>720,7781=>595,7782=>720,7783=>595,7784=>720,\n7785=>595,7786=>682,7787=>478,7788=>682,7789=>478,7790=>682,7791=>478,7792=>682,7793=>478,7794=>812,\n7795=>712,7796=>812,7797=>712,7798=>812,7799=>712,7800=>812,7801=>712,7802=>812,7803=>712,7804=>774,\n7805=>652,7806=>774,7807=>652,7808=>1103,7809=>924,7810=>1103,7811=>924,7812=>1103,7813=>924,7814=>1103,\n7815=>924,7816=>1103,7817=>924,7818=>771,7819=>645,7820=>771,7821=>645,7822=>724,7823=>652,7824=>725,\n7825=>582,7826=>725,7827=>582,7828=>725,7829=>582,7830=>712,7831=>478,7832=>924,7833=>652,7834=>675,\n7835=>435,7838=>896,7839=>687,7840=>774,7841=>675,7842=>774,7843=>675,7844=>774,7845=>675,7846=>774,\n7847=>675,7848=>774,7849=>675,7850=>774,7851=>675,7852=>774,7853=>675,7854=>774,7855=>675,7856=>774,\n7857=>675,7858=>774,7859=>675,7860=>774,7861=>675,7862=>774,7863=>675,7864=>683,7865=>678,7866=>683,\n7867=>678,7868=>683,7869=>678,7870=>683,7871=>678,7872=>683,7873=>678,7874=>683,7875=>678,7876=>683,\n7877=>678,7878=>683,7879=>678,7880=>372,7881=>343,7882=>372,7883=>343,7884=>850,7885=>687,7886=>850,\n7887=>687,7888=>850,7889=>687,7890=>850,7891=>687,7892=>850,7893=>687,7894=>850,7895=>687,7896=>850,\n7897=>687,7898=>850,7899=>687,7900=>850,7901=>687,7902=>850,7903=>687,7904=>850,7905=>687,7906=>850,\n7907=>687,7908=>812,7909=>712,7910=>812,7911=>712,7912=>812,7913=>712,7914=>812,7915=>712,7916=>812,\n7917=>712,7918=>812,7919=>712,7920=>812,7921=>712,7922=>724,7923=>652,7924=>724,7925=>652,7926=>724,\n7927=>652,7928=>724,7929=>652,7936=>687,7937=>687,7938=>687,7939=>687,7940=>687,7941=>687,7942=>687,\n7943=>687,7944=>774,7945=>774,7946=>1041,7947=>1043,7948=>935,7949=>963,7950=>835,7951=>859,7952=>557,\n7953=>557,7954=>557,7955=>557,7956=>557,7957=>557,7960=>792,7961=>794,7962=>1100,7963=>1096,7964=>1023,\n7965=>1052,7968=>712,7969=>712,7970=>712,7971=>712,7972=>712,7973=>712,7974=>712,7975=>712,7976=>945,\n7977=>951,7978=>1250,7979=>1250,7980=>1180,7981=>1206,7982=>1054,7983=>1063,7984=>390,7985=>390,7986=>390,\n7987=>390,7988=>390,7989=>390,7990=>390,7991=>390,7992=>483,7993=>489,7994=>777,7995=>785,7996=>712,\n7997=>738,7998=>604,7999=>604,8000=>687,8001=>687,8002=>687,8003=>687,8004=>687,8005=>687,8008=>892,\n8009=>933,8010=>1221,8011=>1224,8012=>1053,8013=>1082,8016=>675,8017=>675,8018=>675,8019=>675,8020=>675,\n8021=>675,8022=>675,8023=>675,8025=>930,8027=>1184,8029=>1199,8031=>1049,8032=>869,8033=>869,8034=>869,\n8035=>869,8036=>869,8037=>869,8038=>869,8039=>869,8040=>909,8041=>958,8042=>1246,8043=>1251,8044=>1076,\n8045=>1105,8046=>1028,8047=>1076,8048=>687,8049=>687,8050=>557,8051=>557,8052=>712,8053=>712,8054=>390,\n8055=>390,8056=>687,8057=>687,8058=>675,8059=>675,8060=>869,8061=>869,8064=>687,8065=>687,8066=>687,\n8067=>687,8068=>687,8069=>687,8070=>687,8071=>687,8072=>774,8073=>774,8074=>1041,8075=>1043,8076=>935,\n8077=>963,8078=>835,8079=>859,8080=>712,8081=>712,8082=>712,8083=>712,8084=>712,8085=>712,8086=>712,\n8087=>712,8088=>945,8089=>951,8090=>1250,8091=>1250,8092=>1180,8093=>1206,8094=>1054,8095=>1063,8096=>869,\n8097=>869,8098=>869,8099=>869,8100=>869,8101=>869,8102=>869,8103=>869,8104=>909,8105=>958,8106=>1246,\n8107=>1251,8108=>1076,8109=>1105,8110=>1028,8111=>1076,8112=>687,8113=>687,8114=>687,8115=>687,8116=>687,\n8118=>687,8119=>687,8120=>774,8121=>774,8122=>876,8123=>797,8124=>774,8125=>500,8126=>500,8127=>500,\n8128=>500,8129=>500,8130=>712,8131=>712,8132=>712,8134=>712,8135=>712,8136=>929,8137=>846,8138=>1080,\n8139=>1009,8140=>837,8141=>500,8142=>500,8143=>500,8144=>390,8145=>390,8146=>390,8147=>390,8150=>390,\n8151=>390,8152=>372,8153=>372,8154=>621,8155=>563,8157=>500,8158=>500,8159=>500,8160=>675,8161=>675,\n8162=>675,8163=>675,8164=>716,8165=>716,8166=>675,8167=>675,8168=>724,8169=>724,8170=>1020,8171=>980,\n8172=>838,8173=>500,8174=>500,8175=>500,8178=>869,8179=>869,8180=>869,8182=>869,8183=>869,8184=>1065,\n8185=>891,8186=>1084,8187=>894,8188=>850,8189=>500,8190=>500,8192=>500,8193=>1000,8194=>500,8195=>1000,\n8196=>330,8197=>250,8198=>167,8199=>696,8200=>380,8201=>200,8202=>100,8203=>0,8204=>0,8205=>0,\n8206=>0,8207=>0,8208=>415,8209=>415,8210=>696,8213=>1000,8214=>500,8215=>500,8219=>380,8223=>657,\n8227=>639,8228=>380,8229=>685,8231=>348,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>200,\n8241=>1908,8242=>264,8243=>447,8244=>630,8245=>264,8246=>447,8247=>630,8248=>733,8251=>972,8252=>627,\n8253=>580,8254=>500,8255=>828,8256=>828,8257=>329,8258=>1023,8259=>500,8260=>167,8261=>457,8262=>457,\n8263=>1030,8264=>829,8265=>829,8266=>513,8267=>687,8268=>500,8269=>500,8270=>523,8271=>400,8272=>828,\n8273=>523,8274=>556,8275=>838,8276=>828,8277=>838,8278=>684,8279=>813,8280=>838,8281=>838,8282=>380,\n8283=>872,8284=>838,8285=>380,8286=>380,8287=>222,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,\n8298=>0,8299=>0,8300=>0,8301=>0,8302=>0,8303=>0,8304=>438,8305=>219,8308=>438,8309=>438,\n8310=>438,8311=>438,8312=>438,8313=>438,8314=>528,8315=>528,8316=>528,8317=>288,8318=>288,8319=>456,\n8320=>438,8321=>438,8322=>438,8323=>438,8324=>438,8325=>438,8326=>438,8327=>438,8328=>438,8329=>438,\n8330=>528,8331=>528,8332=>528,8333=>288,8334=>288,8336=>458,8337=>479,8338=>488,8339=>413,8340=>479,\n8352=>929,8353=>696,8354=>696,8355=>696,8356=>696,8357=>1042,8358=>837,8359=>1488,8360=>1205,8361=>1103,\n8362=>854,8363=>714,8365=>696,8366=>682,8367=>1392,8368=>696,8369=>696,8370=>696,8371=>696,8372=>859,\n8373=>696,8400=>0,8401=>0,8406=>0,8407=>0,8411=>0,8412=>0,8417=>0,8448=>1106,8449=>1106,\n8450=>734,8451=>1211,8452=>896,8453=>1114,8454=>1148,8455=>696,8456=>698,8457=>952,8459=>1073,8460=>913,\n8461=>888,8462=>712,8463=>712,8464=>597,8465=>697,8466=>856,8467=>472,8468=>974,8469=>837,8470=>1203,\n8471=>1000,8472=>697,8473=>750,8474=>850,8475=>938,8476=>814,8477=>801,8478=>896,8479=>710,8480=>1020,\n8481=>1239,8483=>834,8484=>754,8485=>622,8486=>850,8487=>769,8488=>763,8489=>303,8490=>775,8491=>774,\n8492=>928,8493=>818,8494=>854,8495=>636,8496=>729,8497=>808,8498=>683,8499=>1184,8500=>465,8501=>794,\n8502=>731,8503=>494,8504=>684,8505=>380,8506=>945,8507=>1370,8508=>790,8509=>737,8510=>654,8511=>863,\n8512=>840,8513=>786,8514=>576,8515=>637,8516=>760,8517=>830,8518=>716,8519=>678,8520=>343,8521=>343,\n8523=>872,8526=>547,8531=>1035,8532=>1035,8533=>1035,8534=>1035,8535=>1035,8536=>1035,8537=>1035,8538=>1035,\n8539=>1035,8540=>1035,8541=>1035,8542=>1035,8543=>615,8544=>372,8545=>659,8546=>945,8547=>1099,8548=>774,\n8549=>1099,8550=>1386,8551=>1672,8552=>1121,8553=>771,8554=>1120,8555=>1407,8556=>637,8557=>734,8558=>830,\n8559=>995,8560=>343,8561=>607,8562=>872,8563=>984,8564=>652,8565=>962,8566=>1227,8567=>1491,8568=>969,\n8569=>645,8570=>969,8571=>1233,8572=>343,8573=>593,8574=>716,8575=>1042,8576=>1289,8577=>830,8578=>1289,\n8579=>734,8580=>593,8592=>838,8593=>838,8594=>838,8595=>838,8596=>838,8597=>838,8598=>838,8599=>838,\n8600=>838,8601=>838,8602=>838,8603=>838,8604=>838,8605=>838,8606=>838,8607=>838,8608=>838,8609=>838,\n8610=>838,8611=>838,8612=>838,8613=>838,8614=>838,8615=>838,8616=>838,8617=>838,8618=>838,8619=>838,\n8620=>838,8621=>838,8622=>838,8623=>838,8624=>838,8625=>838,8626=>838,8627=>838,8628=>838,8629=>838,\n8630=>838,8631=>838,8632=>838,8633=>838,8634=>838,8635=>838,8636=>838,8637=>838,8638=>838,8639=>838,\n8640=>838,8641=>838,8642=>838,8643=>838,8644=>838,8645=>838,8646=>838,8647=>838,8648=>838,8649=>838,\n8650=>838,8651=>838,8652=>838,8653=>838,8654=>838,8655=>838,8656=>838,8657=>838,8658=>838,8659=>838,\n8660=>838,8661=>838,8662=>838,8663=>838,8664=>838,8665=>838,8666=>838,8667=>838,8668=>838,8669=>838,\n8670=>838,8671=>838,8672=>838,8673=>838,8674=>838,8675=>838,8676=>838,8677=>838,8678=>838,8679=>838,\n8680=>838,8681=>838,8682=>838,8683=>838,8684=>838,8685=>838,8686=>838,8687=>838,8688=>838,8689=>838,\n8690=>838,8691=>838,8692=>838,8693=>838,8694=>838,8695=>838,8696=>838,8697=>838,8698=>838,8699=>838,\n8700=>838,8701=>838,8702=>838,8703=>838,8704=>774,8705=>696,8706=>544,8707=>683,8708=>683,8709=>856,\n8710=>697,8711=>697,8712=>896,8713=>896,8714=>750,8715=>896,8716=>896,8717=>750,8718=>636,8719=>787,\n8720=>787,8721=>718,8722=>838,8723=>838,8724=>696,8725=>365,8726=>696,8727=>838,8728=>626,8729=>380,\n8730=>667,8731=>667,8732=>667,8733=>712,8734=>833,8735=>838,8736=>896,8737=>896,8738=>838,8739=>500,\n8740=>500,8741=>500,8742=>500,8743=>812,8744=>812,8745=>812,8746=>812,8747=>610,8748=>929,8749=>1295,\n8750=>563,8751=>977,8752=>1313,8753=>563,8754=>563,8755=>563,8756=>696,8757=>696,8758=>294,8759=>696,\n8760=>838,8761=>838,8762=>838,8763=>838,8764=>838,8765=>838,8766=>838,8767=>838,8768=>375,8769=>838,\n8770=>838,8771=>838,8772=>838,8773=>838,8774=>838,8775=>838,8776=>838,8777=>838,8778=>838,8779=>838,\n8780=>838,8781=>838,8782=>838,8783=>838,8784=>838,8785=>838,8786=>838,8787=>838,8788=>1063,8789=>1063,\n8790=>838,8791=>838,8792=>838,8793=>838,8794=>838,8795=>838,8796=>838,8797=>838,8798=>838,8799=>838,\n8800=>838,8801=>838,8802=>838,8803=>838,8804=>838,8805=>838,8806=>838,8807=>838,8808=>841,8809=>841,\n8810=>1047,8811=>1047,8812=>500,8813=>838,8814=>838,8815=>838,8816=>838,8817=>838,8818=>838,8819=>838,\n8820=>838,8821=>838,8822=>838,8823=>838,8824=>838,8825=>838,8826=>838,8827=>838,8828=>838,8829=>838,\n8830=>838,8831=>838,8832=>838,8833=>838,8834=>838,8835=>838,8836=>838,8837=>838,8838=>838,8839=>838,\n8840=>838,8841=>838,8842=>838,8843=>838,8844=>812,8845=>812,8846=>812,8847=>838,8848=>838,8849=>838,\n8850=>838,8851=>796,8852=>796,8853=>838,8854=>838,8855=>838,8856=>838,8857=>838,8858=>838,8859=>838,\n8860=>838,8861=>838,8862=>838,8863=>838,8864=>838,8865=>838,8866=>914,8867=>914,8868=>914,8869=>914,\n8870=>542,8871=>542,8872=>914,8873=>914,8874=>914,8875=>914,8876=>914,8877=>914,8878=>914,8879=>914,\n8880=>838,8881=>838,8882=>838,8883=>838,8884=>838,8885=>838,8886=>1000,8887=>1000,8888=>838,8889=>838,\n8890=>542,8891=>812,8892=>812,8893=>812,8894=>838,8895=>838,8896=>843,8897=>843,8898=>843,8899=>843,\n8900=>494,8901=>380,8902=>626,8903=>838,8904=>1000,8905=>1000,8906=>1000,8907=>1000,8908=>1000,8909=>838,\n8910=>812,8911=>812,8912=>838,8913=>838,8914=>838,8915=>838,8916=>838,8917=>838,8918=>838,8919=>838,\n8920=>1422,8921=>1422,8922=>838,8923=>838,8924=>838,8925=>838,8926=>838,8927=>838,8928=>838,8929=>838,\n8930=>838,8931=>838,8932=>838,8933=>838,8934=>838,8935=>838,8936=>838,8937=>838,8938=>838,8939=>838,\n8940=>838,8941=>838,8942=>1000,8943=>1000,8944=>1000,8945=>1000,8946=>1158,8947=>896,8948=>750,8949=>896,\n8950=>896,8951=>750,8952=>896,8953=>896,8954=>1158,8955=>896,8956=>750,8957=>896,8958=>750,8959=>896,\n8960=>602,8961=>602,8962=>716,8963=>838,8964=>838,8965=>838,8966=>838,8967=>488,8968=>457,8969=>457,\n8970=>457,8971=>457,8972=>809,8973=>809,8974=>809,8975=>809,8976=>838,8977=>539,8984=>928,8985=>838,\n8988=>469,8989=>469,8990=>469,8991=>469,8992=>610,8993=>610,8996=>1152,8997=>1152,8998=>1414,8999=>1152,\n9000=>1443,9003=>1414,9004=>873,9075=>390,9076=>716,9077=>869,9082=>687,9085=>863,9095=>1152,9108=>873,\n9115=>500,9116=>500,9117=>500,9118=>500,9119=>500,9120=>500,9121=>500,9122=>500,9123=>500,9124=>500,\n9125=>500,9126=>500,9127=>750,9128=>750,9129=>750,9130=>750,9131=>750,9132=>750,9133=>750,9134=>610,\n9166=>838,9167=>945,9187=>873,9189=>769,9250=>716,9251=>716,9312=>847,9313=>847,9314=>847,9315=>847,\n9316=>847,9317=>847,9318=>847,9319=>847,9320=>847,9321=>847,9600=>769,9601=>769,9602=>769,9603=>769,\n9604=>769,9605=>769,9606=>769,9607=>769,9608=>769,9609=>769,9610=>769,9611=>769,9612=>769,9613=>769,\n9614=>769,9615=>769,9616=>769,9617=>769,9618=>769,9619=>769,9620=>769,9621=>769,9622=>769,9623=>769,\n9624=>769,9625=>769,9626=>769,9627=>769,9628=>769,9629=>769,9630=>769,9631=>769,9632=>945,9633=>945,\n9634=>945,9635=>945,9636=>945,9637=>945,9638=>945,9639=>945,9640=>945,9641=>945,9642=>678,9643=>678,\n9644=>945,9645=>945,9646=>550,9647=>550,9648=>769,9649=>769,9650=>769,9651=>769,9652=>502,9653=>502,\n9654=>769,9655=>769,9656=>502,9657=>502,9658=>769,9659=>769,9660=>769,9661=>769,9662=>502,9663=>502,\n9664=>769,9665=>769,9666=>502,9667=>502,9668=>769,9669=>769,9670=>769,9671=>769,9672=>769,9673=>873,\n9674=>494,9675=>873,9676=>873,9677=>873,9678=>873,9679=>873,9680=>873,9681=>873,9682=>873,9683=>873,\n9684=>873,9685=>873,9686=>527,9687=>527,9688=>840,9689=>970,9690=>970,9691=>970,9692=>387,9693=>387,\n9694=>387,9695=>387,9696=>769,9697=>769,9698=>769,9699=>769,9700=>769,9701=>769,9702=>639,9703=>945,\n9704=>945,9705=>945,9706=>945,9707=>945,9708=>769,9709=>769,9710=>769,9711=>1119,9712=>945,9713=>945,\n9714=>945,9715=>945,9716=>873,9717=>873,9718=>873,9719=>873,9720=>769,9721=>769,9722=>769,9723=>830,\n9724=>830,9725=>732,9726=>732,9727=>769,9728=>896,9729=>1000,9730=>896,9731=>896,9732=>896,9733=>896,\n9734=>896,9735=>573,9736=>896,9737=>896,9738=>888,9739=>888,9740=>671,9741=>1013,9742=>1246,9743=>1250,\n9744=>896,9745=>896,9746=>896,9747=>532,9748=>896,9749=>896,9750=>896,9751=>896,9752=>896,9753=>896,\n9754=>896,9755=>896,9756=>896,9757=>609,9758=>896,9759=>609,9760=>896,9761=>896,9762=>896,9763=>896,\n9764=>669,9765=>746,9766=>649,9767=>784,9768=>545,9769=>896,9770=>896,9771=>896,9772=>710,9773=>896,\n9774=>896,9775=>896,9776=>896,9777=>896,9778=>896,9779=>896,9780=>896,9781=>896,9782=>896,9783=>896,\n9784=>896,9785=>896,9786=>896,9787=>896,9788=>896,9789=>896,9790=>896,9791=>614,9792=>731,9793=>731,\n9794=>896,9795=>896,9796=>896,9797=>896,9798=>896,9799=>896,9800=>896,9801=>896,9802=>896,9803=>896,\n9804=>896,9805=>896,9806=>896,9807=>896,9808=>896,9809=>896,9810=>896,9811=>896,9812=>896,9813=>896,\n9814=>896,9815=>896,9816=>896,9817=>896,9818=>896,9819=>896,9820=>896,9821=>896,9822=>896,9823=>896,\n9824=>896,9825=>896,9826=>896,9827=>896,9828=>896,9829=>896,9830=>896,9831=>896,9832=>896,9833=>472,\n9834=>638,9835=>896,9836=>896,9837=>472,9838=>357,9839=>484,9840=>748,9841=>766,9842=>896,9843=>896,\n9844=>896,9845=>896,9846=>896,9847=>896,9848=>896,9849=>896,9850=>896,9851=>896,9852=>896,9853=>896,\n9854=>896,9855=>896,9856=>869,9857=>869,9858=>869,9859=>869,9860=>869,9861=>869,9862=>896,9863=>896,\n9864=>896,9865=>896,9866=>896,9867=>896,9868=>896,9869=>896,9870=>896,9871=>896,9872=>896,9873=>896,\n9874=>896,9875=>896,9876=>896,9877=>541,9878=>896,9879=>896,9880=>896,9881=>896,9882=>896,9883=>896,\n9884=>896,9888=>896,9889=>702,9890=>1003,9891=>1085,9892=>1143,9893=>901,9894=>838,9895=>838,9896=>838,\n9897=>838,9898=>838,9899=>838,9900=>838,9901=>838,9902=>838,9903=>838,9904=>844,9905=>838,9906=>731,\n9907=>732,9908=>732,9909=>732,9910=>850,9911=>732,9912=>732,9985=>838,9986=>838,9987=>838,9988=>838,\n9990=>838,9991=>838,9992=>838,9993=>838,9996=>838,9997=>838,9998=>838,9999=>838,10000=>838,10001=>838,\n10002=>838,10003=>838,10004=>838,10005=>838,10006=>838,10007=>838,10008=>838,10009=>838,10010=>838,10011=>838,\n10012=>838,10013=>838,10014=>838,10015=>838,10016=>838,10017=>838,10018=>838,10019=>838,10020=>838,10021=>838,\n10022=>838,10023=>838,10025=>838,10026=>838,10027=>838,10028=>838,10029=>838,10030=>838,10031=>838,10032=>838,\n10033=>838,10034=>838,10035=>838,10036=>838,10037=>838,10038=>838,10039=>838,10040=>838,10041=>838,10042=>838,\n10043=>838,10044=>838,10045=>838,10046=>838,10047=>838,10048=>838,10049=>838,10050=>838,10051=>838,10052=>838,\n10053=>838,10054=>838,10055=>838,10056=>838,10057=>838,10058=>838,10059=>838,10061=>896,10063=>896,10064=>896,\n10065=>896,10066=>896,10070=>896,10072=>838,10073=>838,10074=>838,10075=>322,10076=>322,10077=>538,10078=>538,\n10081=>838,10082=>838,10083=>838,10084=>838,10085=>838,10086=>838,10087=>838,10088=>838,10089=>838,10090=>838,\n10091=>838,10092=>838,10093=>838,10094=>838,10095=>838,10096=>838,10097=>838,10098=>838,10099=>838,10100=>838,\n10101=>838,10102=>847,10103=>847,10104=>847,10105=>847,10106=>847,10107=>847,10108=>847,10109=>847,10110=>847,\n10111=>847,10112=>838,10113=>838,10114=>838,10115=>838,10116=>838,10117=>838,10118=>838,10119=>838,10120=>838,\n10121=>838,10122=>838,10123=>838,10124=>838,10125=>838,10126=>838,10127=>838,10128=>838,10129=>838,10130=>838,\n10131=>838,10132=>838,10136=>838,10137=>838,10138=>838,10139=>838,10140=>838,10141=>838,10142=>838,10143=>838,\n10144=>838,10145=>838,10146=>838,10147=>838,10148=>838,10149=>838,10150=>838,10151=>838,10152=>838,10153=>838,\n10154=>838,10155=>838,10156=>838,10157=>838,10158=>838,10159=>838,10161=>838,10162=>838,10163=>838,10164=>838,\n10165=>838,10166=>838,10167=>838,10168=>838,10169=>838,10170=>838,10171=>838,10172=>838,10173=>838,10174=>838,\n10181=>457,10182=>457,10208=>494,10214=>487,10215=>487,10216=>457,10217=>457,10218=>721,10219=>721,10224=>838,\n10225=>838,10226=>838,10227=>838,10228=>1157,10229=>1434,10230=>1434,10231=>1434,10232=>1434,10233=>1434,10234=>1434,\n10235=>1434,10236=>1434,10237=>1434,10238=>1434,10239=>1434,10240=>781,10241=>781,10242=>781,10243=>781,10244=>781,\n10245=>781,10246=>781,10247=>781,10248=>781,10249=>781,10250=>781,10251=>781,10252=>781,10253=>781,10254=>781,\n10255=>781,10256=>781,10257=>781,10258=>781,10259=>781,10260=>781,10261=>781,10262=>781,10263=>781,10264=>781,\n10265=>781,10266=>781,10267=>781,10268=>781,10269=>781,10270=>781,10271=>781,10272=>781,10273=>781,10274=>781,\n10275=>781,10276=>781,10277=>781,10278=>781,10279=>781,10280=>781,10281=>781,10282=>781,10283=>781,10284=>781,\n10285=>781,10286=>781,10287=>781,10288=>781,10289=>781,10290=>781,10291=>781,10292=>781,10293=>781,10294=>781,\n10295=>781,10296=>781,10297=>781,10298=>781,10299=>781,10300=>781,10301=>781,10302=>781,10303=>781,10304=>781,\n10305=>781,10306=>781,10307=>781,10308=>781,10309=>781,10310=>781,10311=>781,10312=>781,10313=>781,10314=>781,\n10315=>781,10316=>781,10317=>781,10318=>781,10319=>781,10320=>781,10321=>781,10322=>781,10323=>781,10324=>781,\n10325=>781,10326=>781,10327=>781,10328=>781,10329=>781,10330=>781,10331=>781,10332=>781,10333=>781,10334=>781,\n10335=>781,10336=>781,10337=>781,10338=>781,10339=>781,10340=>781,10341=>781,10342=>781,10343=>781,10344=>781,\n10345=>781,10346=>781,10347=>781,10348=>781,10349=>781,10350=>781,10351=>781,10352=>781,10353=>781,10354=>781,\n10355=>781,10356=>781,10357=>781,10358=>781,10359=>781,10360=>781,10361=>781,10362=>781,10363=>781,10364=>781,\n10365=>781,10366=>781,10367=>781,10368=>781,10369=>781,10370=>781,10371=>781,10372=>781,10373=>781,10374=>781,\n10375=>781,10376=>781,10377=>781,10378=>781,10379=>781,10380=>781,10381=>781,10382=>781,10383=>781,10384=>781,\n10385=>781,10386=>781,10387=>781,10388=>781,10389=>781,10390=>781,10391=>781,10392=>781,10393=>781,10394=>781,\n10395=>781,10396=>781,10397=>781,10398=>781,10399=>781,10400=>781,10401=>781,10402=>781,10403=>781,10404=>781,\n10405=>781,10406=>781,10407=>781,10408=>781,10409=>781,10410=>781,10411=>781,10412=>781,10413=>781,10414=>781,\n10415=>781,10416=>781,10417=>781,10418=>781,10419=>781,10420=>781,10421=>781,10422=>781,10423=>781,10424=>781,\n10425=>781,10426=>781,10427=>781,10428=>781,10429=>781,10430=>781,10431=>781,10432=>781,10433=>781,10434=>781,\n10435=>781,10436=>781,10437=>781,10438=>781,10439=>781,10440=>781,10441=>781,10442=>781,10443=>781,10444=>781,\n10445=>781,10446=>781,10447=>781,10448=>781,10449=>781,10450=>781,10451=>781,10452=>781,10453=>781,10454=>781,\n10455=>781,10456=>781,10457=>781,10458=>781,10459=>781,10460=>781,10461=>781,10462=>781,10463=>781,10464=>781,\n10465=>781,10466=>781,10467=>781,10468=>781,10469=>781,10470=>781,10471=>781,10472=>781,10473=>781,10474=>781,\n10475=>781,10476=>781,10477=>781,10478=>781,10479=>781,10480=>781,10481=>781,10482=>781,10483=>781,10484=>781,\n10485=>781,10486=>781,10487=>781,10488=>781,10489=>781,10490=>781,10491=>781,10492=>781,10493=>781,10494=>781,\n10495=>781,10502=>838,10503=>838,10506=>838,10507=>838,10560=>838,10561=>838,10627=>753,10628=>753,10702=>838,\n10703=>1046,10704=>1046,10705=>1000,10706=>1000,10707=>1000,10708=>1000,10709=>1000,10731=>494,10746=>838,10747=>838,\n10752=>1000,10753=>1000,10754=>1000,10764=>1661,10765=>563,10766=>563,10767=>563,10768=>563,10769=>563,10770=>563,\n10771=>563,10772=>563,10773=>563,10774=>563,10775=>563,10776=>563,10777=>563,10778=>563,10779=>563,10780=>563,\n10799=>838,10877=>838,10878=>838,10879=>838,10880=>838,10881=>838,10882=>838,10883=>838,10884=>838,10885=>838,\n10886=>838,10887=>838,10888=>838,10889=>838,10890=>838,10891=>838,10892=>838,10893=>838,10894=>838,10895=>838,\n10896=>838,10897=>838,10898=>838,10899=>838,10900=>838,10901=>838,10902=>838,10903=>838,10904=>838,10905=>838,\n10906=>838,10907=>838,10908=>838,10909=>838,10910=>838,10911=>838,10912=>838,10926=>838,10927=>838,10928=>838,\n10929=>838,10930=>838,10931=>838,10932=>838,10933=>838,10934=>838,10935=>838,10936=>838,10937=>838,10938=>838,\n11001=>838,11002=>838,11008=>838,11009=>838,11010=>838,11011=>838,11012=>838,11013=>838,11014=>838,11015=>838,\n11016=>838,11017=>838,11018=>838,11019=>838,11020=>838,11021=>838,11022=>838,11023=>838,11024=>838,11025=>838,\n11026=>945,11027=>945,11028=>945,11029=>945,11030=>769,11031=>769,11032=>769,11033=>769,11034=>945,11039=>869,\n11040=>869,11041=>873,11042=>873,11043=>873,11044=>1119,11091=>869,11092=>869,11360=>637,11361=>360,11362=>637,\n11363=>733,11364=>770,11365=>675,11366=>478,11367=>956,11368=>712,11369=>775,11370=>665,11371=>725,11372=>582,\n11373=>860,11374=>995,11375=>774,11377=>778,11378=>1221,11379=>1056,11380=>652,11381=>698,11382=>565,11383=>782,\n11385=>538,11386=>687,11387=>559,11388=>219,11389=>487,11800=>586,11810=>457,11811=>457,11812=>457,11813=>457,\n11822=>580,19904=>896,19905=>896,19906=>896,19907=>896,19908=>896,19909=>896,19910=>896,19911=>896,19912=>896,\n19913=>896,19914=>896,19915=>896,19916=>896,19917=>896,19918=>896,19919=>896,19920=>896,19921=>896,19922=>896,\n19923=>896,19924=>896,19925=>896,19926=>896,19927=>896,19928=>896,19929=>896,19930=>896,19931=>896,19932=>896,\n19933=>896,19934=>896,19935=>896,19936=>896,19937=>896,19938=>896,19939=>896,19940=>896,19941=>896,19942=>896,\n19943=>896,19944=>896,19945=>896,19946=>896,19947=>896,19948=>896,19949=>896,19950=>896,19951=>896,19952=>896,\n19953=>896,19954=>896,19955=>896,19956=>896,19957=>896,19958=>896,19959=>896,19960=>896,19961=>896,19962=>896,\n19963=>896,19964=>896,19965=>896,19966=>896,19967=>896,42564=>720,42565=>595,42566=>436,42567=>440,42572=>1405,\n42573=>1173,42576=>1234,42577=>1027,42580=>1174,42581=>972,42582=>1100,42583=>969,42594=>1100,42595=>940,42596=>1096,\n42597=>915,42598=>1260,42599=>997,42600=>850,42601=>687,42602=>1037,42603=>868,42604=>1406,42605=>1106,42606=>961,\n42634=>944,42635=>749,42636=>682,42637=>580,42644=>808,42645=>712,42760=>500,42761=>500,42762=>500,42763=>500,\n42764=>500,42765=>500,42766=>500,42767=>500,42768=>500,42769=>500,42770=>500,42771=>500,42772=>500,42773=>500,\n42774=>500,42779=>400,42780=>400,42781=>287,42782=>287,42783=>287,42790=>837,42791=>712,42792=>1031,42793=>857,\n42794=>696,42795=>557,42800=>559,42801=>595,42802=>1349,42803=>1052,42804=>1285,42805=>1065,42806=>1245,42807=>1052,\n42808=>1079,42809=>922,42810=>1079,42811=>922,42812=>1035,42813=>922,42814=>698,42815=>549,42822=>850,42823=>542,\n42824=>683,42825=>531,42826=>918,42827=>814,42830=>1406,42831=>1106,42880=>637,42881=>343,42882=>837,42883=>712,\n42889=>400,42890=>396,42891=>456,42892=>306,43003=>683,43004=>733,43005=>995,43006=>372,43007=>1325,62917=>687,\n64256=>833,64257=>787,64258=>787,64259=>1138,64260=>1139,64261=>808,64262=>1020,64275=>1388,64276=>1384,64277=>1378,\n64278=>1384,64279=>1713,64285=>343,64286=>0,64287=>663,64288=>720,64289=>963,64290=>890,64291=>988,64292=>963,\n64293=>938,64294=>988,64295=>988,64296=>976,64297=>838,64298=>949,64299=>949,64300=>949,64301=>949,64302=>751,\n64303=>751,64304=>751,64305=>673,64306=>537,64307=>654,64308=>712,64309=>343,64310=>491,64312=>724,64313=>467,\n64314=>649,64315=>650,64316=>679,64318=>775,64320=>497,64321=>773,64323=>718,64324=>687,64326=>751,64327=>729,\n64328=>649,64329=>949,64330=>751,64331=>343,64332=>673,64333=>650,64334=>687,64335=>751,65024=>0,65025=>0,\n65026=>0,65027=>0,65028=>0,65029=>0,65030=>0,65031=>0,65032=>0,65033=>0,65034=>0,65035=>0,\n65036=>0,65037=>0,65038=>0,65039=>0,65056=>0,65057=>0,65058=>0,65059=>0,65529=>0,65530=>0,\n65531=>0,65532=>0,65533=>1113);\n$enc='';\n$diff='';\n$file='dejavusansbi.z';\n$ctg='dejavusansbi.ctg.z';\n$originalsize=524056;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavusanscondensed.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='DejaVuSansCondensed';\n$desc=array('Ascent'=>928,'Descent'=>-236,'CapHeight'=>26,'Flags'=>96,'FontBBox'=>'[-918 -350 1513 1167]','ItalicAngle'=>-18.9,'StemV'=>70,'MissingWidth'=>540);\n$up=-63;\n$ut=44;\n$dw=540;\n$cw=array(\n0=>540,32=>286,33=>360,34=>414,35=>754,36=>572,37=>855,38=>702,39=>247,40=>351,\n41=>351,42=>450,43=>754,44=>286,45=>325,46=>286,47=>303,48=>572,49=>572,50=>572,\n51=>572,52=>572,53=>572,54=>572,55=>572,56=>572,57=>572,58=>303,59=>303,60=>754,\n61=>754,62=>754,63=>478,64=>900,65=>615,66=>617,67=>628,68=>693,69=>568,70=>518,\n71=>697,72=>677,73=>265,74=>265,75=>590,76=>501,77=>776,78=>673,79=>708,80=>542,\n81=>708,82=>625,83=>571,84=>549,85=>659,86=>615,87=>890,88=>616,89=>549,90=>616,\n91=>351,92=>303,93=>351,94=>754,95=>450,96=>450,97=>551,98=>571,99=>495,100=>571,\n101=>554,102=>316,103=>571,104=>570,105=>250,106=>250,107=>521,108=>250,109=>876,110=>570,\n111=>550,112=>571,113=>571,114=>370,115=>469,116=>353,117=>570,118=>532,119=>736,120=>532,\n121=>532,122=>472,123=>572,124=>303,125=>572,126=>754,8364=>572,8218=>286,402=>316,8222=>466,\n8230=>900,8224=>450,8225=>450,710=>450,8240=>1208,352=>571,8249=>360,338=>962,381=>616,8216=>286,\n8217=>286,8220=>466,8221=>466,8226=>531,8211=>450,8212=>900,732=>450,8482=>900,353=>469,8250=>360,\n339=>920,382=>472,376=>549,160=>286,161=>360,162=>572,163=>572,164=>572,165=>572,166=>303,\n167=>450,168=>450,169=>900,170=>424,171=>550,172=>754,173=>325,174=>900,175=>450,176=>450,\n177=>754,178=>360,179=>360,180=>450,181=>572,182=>572,183=>286,184=>450,185=>360,186=>424,\n187=>550,188=>872,189=>872,190=>872,191=>478,192=>615,193=>615,194=>615,195=>615,196=>615,\n197=>615,198=>876,199=>628,200=>568,201=>568,202=>568,203=>568,204=>265,205=>265,206=>265,\n207=>265,208=>697,209=>673,210=>708,211=>708,212=>708,213=>708,214=>708,215=>754,216=>708,\n217=>659,218=>659,219=>659,220=>659,221=>549,222=>544,223=>567,224=>551,225=>551,226=>551,\n227=>551,228=>551,229=>551,230=>883,231=>495,232=>554,233=>554,234=>554,235=>554,236=>250,\n237=>250,238=>250,239=>250,240=>550,241=>570,242=>550,243=>550,244=>550,245=>550,246=>550,\n247=>754,248=>550,249=>570,250=>570,251=>570,252=>570,253=>532,254=>571,255=>532,256=>615,\n257=>551,258=>615,259=>551,260=>615,261=>551,262=>628,263=>495,264=>628,265=>495,266=>628,\n267=>495,268=>628,269=>495,270=>693,271=>571,272=>697,273=>571,274=>568,275=>554,276=>568,\n277=>554,278=>568,279=>554,280=>568,281=>554,282=>568,283=>554,284=>697,285=>571,286=>697,\n287=>571,288=>697,289=>571,290=>697,291=>571,292=>677,293=>570,294=>824,295=>625,296=>265,\n297=>250,298=>265,299=>250,300=>265,301=>250,302=>265,303=>250,304=>265,305=>250,306=>531,\n307=>500,308=>265,309=>250,310=>590,311=>521,312=>521,313=>501,314=>250,315=>501,316=>250,\n317=>501,318=>337,319=>501,320=>308,321=>505,322=>255,323=>673,324=>570,325=>673,326=>570,\n327=>673,328=>570,329=>732,330=>673,331=>570,332=>708,333=>550,334=>708,335=>550,336=>708,\n337=>550,340=>625,341=>370,342=>625,343=>370,344=>625,345=>370,346=>571,347=>469,348=>571,\n349=>469,350=>571,351=>469,354=>549,355=>353,356=>549,357=>353,358=>549,359=>353,360=>659,\n361=>570,362=>659,363=>570,364=>659,365=>570,366=>659,367=>570,368=>659,369=>570,370=>659,\n371=>570,372=>890,373=>736,374=>549,375=>532,377=>616,378=>472,379=>616,380=>472,383=>316,\n384=>571,385=>661,386=>617,387=>571,388=>617,389=>571,390=>633,391=>628,392=>495,393=>697,\n394=>737,395=>617,396=>571,397=>550,398=>568,399=>708,400=>553,401=>518,403=>697,404=>618,\n405=>885,406=>318,407=>265,408=>671,409=>521,410=>250,411=>532,412=>876,413=>673,414=>570,\n415=>708,416=>822,417=>550,418=>854,419=>683,420=>586,421=>571,422=>625,423=>571,424=>469,\n425=>568,426=>302,427=>353,428=>549,429=>353,430=>549,431=>772,432=>570,433=>688,434=>648,\n435=>669,436=>657,437=>616,438=>472,439=>599,440=>599,441=>520,442=>472,443=>572,444=>599,\n445=>520,446=>459,447=>571,448=>265,449=>443,450=>413,451=>266,452=>1279,453=>1169,454=>1039,\n455=>751,456=>708,457=>411,458=>838,459=>831,460=>717,461=>615,462=>551,463=>265,464=>250,\n465=>708,466=>550,467=>659,468=>570,469=>659,470=>570,471=>659,472=>570,473=>659,474=>570,\n475=>659,476=>570,477=>554,478=>615,479=>551,480=>615,481=>551,482=>876,483=>883,484=>697,\n485=>571,486=>697,487=>571,488=>590,489=>521,490=>708,491=>550,492=>708,493=>550,494=>599,\n495=>520,496=>250,497=>1279,498=>1169,499=>1039,500=>697,501=>571,502=>1001,503=>614,504=>673,\n505=>570,506=>615,507=>551,508=>876,509=>883,510=>708,511=>550,512=>615,513=>551,514=>615,\n515=>551,516=>568,517=>554,518=>568,519=>554,520=>265,521=>250,522=>265,523=>250,524=>708,\n525=>550,526=>708,527=>550,528=>625,529=>370,530=>625,531=>370,532=>659,533=>570,534=>659,\n535=>570,536=>571,537=>469,538=>549,539=>353,540=>564,541=>469,542=>677,543=>570,544=>662,\n545=>754,546=>628,547=>549,548=>616,549=>472,550=>615,551=>551,552=>568,553=>554,554=>708,\n555=>550,556=>708,557=>550,558=>708,559=>550,560=>708,561=>550,562=>549,563=>532,564=>427,\n565=>758,566=>429,567=>250,568=>898,569=>898,570=>615,571=>628,572=>495,573=>501,574=>549,\n575=>469,576=>472,577=>542,578=>431,579=>617,580=>659,581=>615,582=>568,583=>554,584=>265,\n585=>250,586=>703,587=>571,588=>625,589=>370,590=>549,591=>532,592=>540,593=>571,594=>571,\n595=>571,596=>494,597=>495,598=>571,599=>626,600=>554,601=>554,602=>737,603=>486,604=>479,\n605=>698,606=>598,607=>250,608=>626,609=>571,610=>566,611=>536,612=>536,613=>570,614=>570,\n615=>570,616=>250,617=>304,618=>334,619=>356,620=>438,621=>250,622=>635,623=>876,624=>876,\n625=>876,626=>581,627=>578,628=>570,629=>550,630=>772,631=>655,632=>593,633=>373,634=>373,\n635=>372,636=>370,637=>369,638=>477,639=>477,640=>543,641=>543,642=>469,643=>302,644=>302,\n645=>415,646=>302,647=>353,648=>353,649=>570,650=>556,651=>538,652=>532,653=>736,654=>532,\n655=>549,656=>472,657=>472,658=>520,659=>520,660=>459,661=>459,662=>459,663=>459,664=>708,\n665=>521,666=>598,667=>637,668=>588,669=>263,670=>600,671=>456,672=>654,673=>459,674=>459,\n675=>913,676=>952,677=>911,678=>742,679=>549,680=>700,681=>763,682=>576,683=>589,684=>463,\n685=>463,686=>595,687=>597,688=>364,689=>359,690=>157,691=>233,692=>266,693=>266,694=>341,\n695=>463,696=>335,697=>250,698=>414,699=>286,700=>286,701=>286,702=>276,703=>276,704=>333,\n705=>333,706=>450,707=>450,708=>450,709=>450,711=>450,712=>247,713=>450,714=>450,715=>450,\n716=>247,717=>450,718=>450,719=>450,720=>303,721=>303,722=>276,723=>276,724=>450,725=>450,\n726=>351,727=>286,728=>450,729=>450,730=>450,731=>450,733=>450,734=>284,735=>450,736=>383,\n737=>149,738=>335,739=>399,740=>333,741=>444,742=>444,743=>444,744=>444,745=>444,748=>450,\n749=>450,750=>466,755=>450,759=>450,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,\n774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,\n784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,\n794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,\n804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,\n814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,\n824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,\n834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,\n844=>0,845=>0,846=>0,847=>0,849=>0,850=>0,851=>0,855=>0,856=>0,858=>0,\n860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,880=>589,881=>511,882=>775,\n883=>583,884=>250,885=>250,886=>673,887=>584,890=>450,891=>494,892=>495,893=>494,894=>303,\n900=>450,901=>450,902=>623,903=>286,904=>671,905=>784,906=>367,908=>731,910=>742,911=>743,\n912=>304,913=>615,914=>617,915=>501,916=>615,917=>568,918=>616,919=>677,920=>708,921=>265,\n922=>590,923=>615,924=>776,925=>673,926=>568,927=>708,928=>677,929=>542,931=>568,932=>549,\n933=>549,934=>708,935=>616,936=>708,937=>688,938=>265,939=>549,940=>593,941=>486,942=>570,\n943=>304,944=>521,945=>593,946=>574,947=>532,948=>550,949=>486,950=>489,951=>570,952=>550,\n953=>304,954=>530,955=>532,956=>572,957=>502,958=>501,959=>550,960=>542,961=>571,962=>528,\n963=>570,964=>542,965=>521,966=>593,967=>520,968=>593,969=>753,970=>304,971=>521,972=>550,\n973=>521,974=>753,975=>590,976=>553,977=>557,978=>628,979=>758,980=>628,981=>593,982=>753,\n983=>597,984=>708,985=>550,986=>583,987=>528,988=>518,989=>413,990=>593,991=>593,992=>778,\n993=>564,994=>840,995=>753,996=>682,997=>593,998=>712,999=>553,1000=>618,1001=>546,1002=>690,\n1003=>563,1004=>629,1005=>550,1006=>549,1007=>482,1008=>597,1009=>571,1010=>495,1011=>250,1012=>708,\n1013=>554,1014=>554,1015=>544,1016=>571,1017=>628,1018=>776,1019=>585,1020=>571,1021=>633,1022=>628,\n1023=>633,1024=>568,1025=>568,1026=>708,1027=>549,1028=>628,1029=>571,1030=>265,1031=>265,1032=>265,\n1033=>984,1034=>940,1035=>708,1036=>639,1037=>673,1038=>548,1039=>677,1040=>615,1041=>617,1042=>617,\n1043=>549,1044=>703,1045=>568,1046=>969,1047=>577,1048=>673,1049=>673,1050=>639,1051=>677,1052=>776,\n1053=>677,1054=>708,1055=>677,1056=>542,1057=>628,1058=>549,1059=>548,1060=>774,1061=>616,1062=>699,\n1063=>617,1064=>962,1065=>984,1066=>749,1067=>794,1068=>617,1069=>628,1070=>971,1071=>625,1072=>551,\n1073=>555,1074=>530,1075=>473,1076=>622,1077=>554,1078=>811,1079=>479,1080=>584,1081=>584,1082=>543,\n1083=>575,1084=>679,1085=>588,1086=>550,1087=>588,1088=>571,1089=>495,1090=>524,1091=>532,1092=>769,\n1093=>532,1094=>612,1095=>532,1096=>823,1097=>848,1098=>636,1099=>710,1100=>530,1101=>494,1102=>757,\n1103=>541,1104=>554,1105=>554,1106=>563,1107=>473,1108=>494,1109=>469,1110=>250,1111=>250,1112=>250,\n1113=>812,1114=>809,1115=>586,1116=>543,1117=>584,1118=>532,1119=>588,1120=>840,1121=>753,1122=>693,\n1123=>604,1124=>848,1125=>674,1126=>791,1127=>705,1128=>1043,1129=>901,1130=>708,1131=>550,1132=>924,\n1133=>742,1134=>572,1135=>486,1136=>771,1137=>789,1138=>708,1139=>550,1140=>703,1141=>598,1142=>703,\n1143=>598,1144=>893,1145=>813,1146=>857,1147=>682,1148=>1062,1149=>925,1150=>840,1151=>753,1152=>628,\n1153=>495,1154=>452,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>376,1161=>376,1162=>695,\n1163=>609,1164=>617,1165=>530,1166=>542,1167=>571,1168=>549,1169=>473,1170=>607,1171=>531,1172=>562,\n1173=>477,1174=>969,1175=>811,1176=>577,1177=>479,1178=>639,1179=>543,1180=>639,1181=>543,1182=>639,\n1183=>543,1184=>771,1185=>748,1186=>677,1187=>594,1188=>913,1189=>789,1190=>973,1191=>824,1192=>790,\n1193=>624,1194=>628,1195=>495,1196=>549,1197=>524,1198=>549,1199=>532,1200=>549,1201=>532,1202=>616,\n1203=>532,1204=>840,1205=>726,1206=>617,1207=>532,1208=>617,1209=>532,1210=>617,1211=>570,1212=>847,\n1213=>655,1214=>847,1215=>655,1216=>265,1217=>969,1218=>811,1219=>590,1220=>543,1221=>698,1222=>603,\n1223=>677,1224=>594,1225=>699,1226=>612,1227=>617,1228=>532,1229=>799,1230=>697,1231=>250,1232=>615,\n1233=>551,1234=>615,1235=>551,1236=>876,1237=>883,1238=>568,1239=>554,1240=>708,1241=>554,1242=>708,\n1243=>554,1244=>969,1245=>811,1246=>577,1247=>479,1248=>599,1249=>520,1250=>673,1251=>584,1252=>673,\n1253=>584,1254=>708,1255=>550,1256=>708,1257=>550,1258=>708,1259=>550,1260=>628,1261=>494,1262=>548,\n1263=>532,1264=>548,1265=>532,1266=>548,1267=>532,1268=>617,1269=>532,1270=>549,1271=>473,1272=>794,\n1273=>710,1274=>607,1275=>531,1276=>616,1277=>532,1278=>616,1279=>532,1280=>617,1281=>530,1282=>905,\n1283=>807,1284=>877,1285=>782,1286=>611,1287=>529,1288=>964,1289=>861,1290=>1001,1291=>870,1292=>697,\n1293=>593,1294=>695,1295=>640,1296=>553,1297=>486,1298=>677,1299=>575,1300=>1052,1301=>894,1302=>804,\n1303=>778,1304=>928,1305=>887,1306=>708,1307=>571,1308=>890,1309=>736,1312=>972,1313=>814,1314=>973,\n1315=>821,1316=>713,1317=>614,1329=>780,1330=>659,1331=>794,1332=>794,1333=>659,1334=>579,1335=>613,\n1336=>659,1337=>765,1338=>794,1339=>659,1340=>501,1341=>741,1342=>888,1343=>659,1344=>636,1345=>579,\n1346=>794,1347=>699,1348=>794,1349=>659,1350=>756,1351=>659,1352=>659,1353=>659,1354=>711,1355=>579,\n1356=>794,1357=>659,1358=>794,1359=>571,1360=>659,1361=>659,1362=>719,1363=>708,1364=>711,1365=>708,\n1366=>571,1369=>276,1370=>286,1371=>450,1372=>450,1373=>352,1374=>474,1375=>450,1377=>876,1378=>570,\n1379=>686,1380=>690,1381=>570,1382=>627,1383=>479,1384=>570,1385=>630,1386=>627,1387=>570,1388=>363,\n1389=>804,1390=>576,1391=>570,1392=>570,1393=>571,1394=>631,1395=>570,1396=>593,1397=>250,1398=>684,\n1399=>464,1400=>570,1401=>407,1402=>876,1403=>464,1404=>691,1405=>570,1406=>626,1407=>876,1408=>570,\n1409=>571,1410=>451,1411=>876,1412=>583,1413=>550,1414=>566,1415=>686,1417=>303,1418=>390,1456=>0,\n1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1466=>0,\n1467=>0,1468=>0,1469=>0,1470=>325,1471=>0,1472=>265,1473=>0,1474=>0,1475=>265,1478=>397,\n1479=>0,1488=>566,1489=>547,1490=>403,1491=>534,1492=>576,1493=>245,1494=>336,1495=>576,1496=>583,\n1497=>245,1498=>532,1499=>500,1500=>539,1501=>576,1502=>593,1503=>245,1504=>397,1505=>629,1506=>506,\n1507=>576,1508=>543,1509=>468,1510=>523,1511=>596,1512=>532,1513=>727,1514=>591,1520=>423,1521=>409,\n1522=>423,1523=>374,1524=>580,1542=>573,1543=>573,1545=>681,1546=>879,1548=>290,1557=>0,1563=>286,\n1567=>478,1569=>423,1570=>250,1571=>250,1572=>435,1573=>250,1574=>704,1575=>250,1576=>847,1577=>471,\n1578=>847,1579=>847,1580=>581,1581=>581,1582=>581,1583=>400,1584=>400,1585=>435,1586=>435,1587=>1099,\n1588=>1099,1589=>1088,1590=>1088,1591=>832,1592=>832,1593=>537,1594=>537,1600=>264,1601=>933,1602=>698,\n1603=>742,1604=>654,1605=>557,1606=>661,1607=>471,1608=>435,1609=>704,1610=>704,1611=>0,1612=>0,\n1613=>0,1614=>0,1615=>0,1616=>0,1617=>0,1618=>0,1619=>0,1620=>0,1621=>0,1626=>450,\n1632=>483,1633=>483,1634=>483,1635=>483,1636=>483,1637=>483,1638=>483,1639=>483,1640=>483,1641=>483,\n1642=>483,1643=>292,1644=>286,1645=>490,1646=>847,1647=>698,1652=>263,1657=>847,1658=>847,1659=>847,\n1660=>847,1661=>847,1662=>847,1663=>847,1664=>847,1665=>581,1666=>581,1667=>581,1668=>581,1669=>581,\n1670=>581,1671=>581,1681=>435,1682=>435,1685=>549,1688=>435,1697=>933,1700=>933,1702=>933,1705=>805,\n1711=>805,1717=>654,1722=>661,1727=>581,1734=>435,1740=>704,1742=>704,1749=>471,1776=>483,1777=>483,\n1778=>483,1779=>483,1780=>483,1781=>483,1782=>483,1783=>483,1784=>483,1785=>483,1984=>572,1985=>572,\n1986=>572,1987=>572,1988=>572,1989=>572,1990=>572,1991=>572,1992=>572,1993=>572,1994=>250,1995=>514,\n1996=>381,1997=>532,1998=>588,1999=>588,2000=>534,2001=>588,2002=>746,2003=>394,2004=>394,2005=>502,\n2006=>550,2007=>315,2008=>863,2009=>425,2010=>705,2011=>588,2012=>563,2013=>660,2014=>477,2015=>651,\n2016=>425,2017=>563,2018=>534,2019=>477,2020=>477,2021=>470,2022=>534,2023=>534,2027=>0,2028=>0,\n2029=>0,2030=>0,2031=>0,2032=>0,2033=>0,2034=>0,2035=>0,2036=>282,2037=>282,2040=>504,\n2041=>504,2042=>325,3647=>586,3713=>603,3714=>615,3716=>619,3719=>434,3720=>565,3722=>615,3725=>619,\n3732=>602,3733=>577,3734=>580,3735=>589,3737=>593,3738=>563,3739=>563,3740=>670,3741=>690,3742=>618,\n3743=>618,3745=>631,3746=>619,3747=>615,3749=>584,3751=>569,3754=>633,3755=>737,3757=>569,3758=>615,\n3759=>708,3760=>569,3761=>0,3762=>485,3763=>485,3764=>0,3765=>0,3766=>0,3767=>0,3768=>0,\n3769=>0,3771=>0,3772=>0,3773=>597,3776=>337,3777=>591,3778=>414,3779=>492,3780=>442,3782=>606,\n3784=>0,3785=>0,3786=>0,3787=>0,3788=>0,3789=>0,3792=>572,3793=>576,3794=>576,3795=>603,\n3796=>563,3797=>563,3798=>633,3799=>603,3800=>606,3801=>609,3804=>925,3805=>925,4256=>756,4257=>621,\n4258=>577,4259=>683,4260=>532,4261=>617,4262=>710,4263=>729,4264=>420,4265=>508,4266=>710,4267=>713,\n4268=>526,4269=>753,4270=>675,4271=>620,4272=>729,4273=>526,4274=>526,4275=>753,4276=>753,4277=>581,\n4278=>543,4279=>526,4280=>536,4281=>526,4282=>649,4283=>715,4284=>526,4285=>510,4286=>526,4287=>602,\n4288=>719,4289=>488,4290=>598,4291=>488,4292=>508,4293=>606,4304=>457,4305=>457,4306=>479,4307=>706,\n4308=>470,4309=>465,4310=>457,4311=>717,4312=>457,4313=>466,4314=>952,4315=>470,4316=>470,4317=>704,\n4318=>466,4319=>470,4320=>713,4321=>470,4322=>590,4323=>471,4324=>709,4325=>470,4326=>704,4327=>470,\n4328=>470,4329=>470,4330=>510,4331=>470,4332=>470,4333=>439,4334=>470,4335=>448,4336=>465,4337=>504,\n4338=>457,4339=>457,4340=>457,4341=>507,4342=>741,4343=>536,4344=>470,4345=>498,4346=>498,4347=>527,\n4348=>273,5121=>615,5122=>615,5123=>615,5124=>615,5125=>692,5126=>692,5127=>692,5129=>692,5130=>692,\n5131=>692,5132=>751,5133=>751,5134=>751,5135=>751,5136=>751,5137=>751,5138=>870,5139=>906,5140=>870,\n5141=>906,5142=>692,5143=>870,5144=>906,5145=>870,5146=>906,5147=>692,5149=>230,5150=>488,5151=>381,\n5152=>381,5153=>350,5154=>350,5155=>354,5156=>350,5157=>419,5158=>347,5159=>230,5160=>350,5161=>350,\n5162=>350,5163=>980,5164=>817,5165=>857,5166=>1005,5167=>615,5168=>615,5169=>615,5170=>615,5171=>656,\n5172=>656,5173=>656,5175=>656,5176=>656,5177=>656,5178=>751,5179=>615,5180=>751,5181=>751,5182=>751,\n5183=>751,5184=>870,5185=>906,5186=>870,5187=>906,5188=>870,5189=>906,5190=>870,5191=>906,5192=>656,\n5193=>457,5194=>172,5196=>659,5197=>659,5198=>659,5199=>659,5200=>657,5201=>657,5202=>657,5204=>657,\n5205=>657,5206=>657,5207=>829,5208=>800,5209=>829,5210=>800,5211=>829,5212=>800,5213=>835,5214=>810,\n5215=>835,5216=>810,5217=>853,5218=>810,5219=>853,5220=>810,5221=>853,5222=>391,5223=>790,5224=>790,\n5225=>779,5226=>801,5227=>565,5228=>565,5229=>565,5230=>565,5231=>565,5232=>565,5233=>565,5234=>565,\n5235=>565,5236=>773,5237=>693,5238=>733,5239=>734,5240=>733,5241=>734,5242=>773,5243=>693,5244=>773,\n5245=>693,5246=>733,5247=>734,5248=>733,5249=>734,5250=>733,5251=>366,5252=>366,5253=>675,5254=>697,\n5255=>675,5256=>697,5257=>565,5258=>565,5259=>565,5260=>565,5261=>565,5262=>565,5263=>565,5264=>565,\n5265=>565,5266=>773,5267=>693,5268=>733,5269=>734,5270=>733,5271=>734,5272=>773,5273=>693,5274=>773,\n5275=>693,5276=>733,5277=>734,5278=>733,5279=>734,5280=>733,5281=>391,5282=>391,5283=>549,5284=>501,\n5285=>501,5286=>501,5287=>549,5288=>549,5289=>549,5290=>501,5291=>501,5292=>674,5293=>691,5294=>671,\n5295=>687,5296=>671,5297=>687,5298=>674,5299=>691,5300=>674,5301=>691,5302=>671,5303=>687,5304=>671,\n5305=>687,5306=>671,5307=>347,5308=>457,5309=>347,5312=>766,5313=>766,5314=>766,5315=>766,5316=>766,\n5317=>766,5318=>766,5319=>766,5320=>766,5321=>962,5322=>931,5323=>953,5324=>766,5325=>953,5326=>766,\n5327=>766,5328=>540,5329=>407,5330=>540,5331=>766,5332=>766,5333=>766,5334=>766,5335=>766,5336=>766,\n5337=>766,5338=>766,5339=>766,5340=>962,5341=>931,5342=>953,5343=>927,5344=>953,5345=>927,5346=>962,\n5347=>931,5348=>962,5349=>931,5350=>975,5351=>927,5352=>975,5353=>927,5354=>540,5356=>656,5357=>542,\n5358=>542,5359=>542,5360=>542,5361=>542,5362=>542,5363=>542,5364=>542,5365=>542,5366=>751,5367=>678,\n5368=>712,5369=>694,5370=>712,5371=>694,5372=>751,5373=>678,5374=>751,5375=>678,5376=>712,5377=>694,\n5378=>712,5379=>694,5380=>712,5381=>376,5382=>378,5383=>376,5392=>641,5393=>641,5394=>641,5395=>802,\n5396=>802,5397=>802,5398=>802,5399=>818,5400=>785,5401=>818,5402=>785,5403=>818,5404=>785,5405=>1026,\n5406=>989,5407=>1026,5408=>989,5409=>1026,5410=>989,5411=>1026,5412=>989,5413=>576,5414=>564,5415=>564,\n5416=>564,5417=>564,5418=>564,5419=>564,5420=>564,5421=>564,5422=>564,5423=>760,5424=>703,5425=>734,\n5426=>736,5427=>734,5428=>736,5429=>760,5430=>703,5431=>760,5432=>703,5433=>734,5434=>736,5435=>734,\n5436=>736,5437=>734,5438=>376,5440=>350,5441=>436,5442=>824,5443=>824,5444=>824,5445=>824,5446=>824,\n5447=>824,5448=>542,5449=>542,5450=>542,5451=>542,5452=>542,5453=>542,5454=>751,5455=>678,5456=>376,\n5458=>656,5459=>615,5460=>615,5461=>615,5462=>615,5463=>653,5464=>653,5465=>653,5466=>653,5467=>831,\n5468=>906,5469=>457,5470=>659,5471=>659,5472=>659,5473=>659,5474=>659,5475=>659,5476=>657,5477=>657,\n5478=>657,5479=>657,5480=>853,5481=>810,5482=>457,5492=>747,5493=>747,5494=>747,5495=>747,5496=>747,\n5497=>747,5498=>747,5499=>507,5500=>677,5501=>436,5502=>942,5503=>942,5504=>942,5505=>942,5506=>942,\n5507=>942,5508=>942,5509=>743,5514=>747,5515=>747,5516=>747,5517=>747,5518=>1133,5519=>1133,5520=>1133,\n5521=>901,5522=>901,5523=>1133,5524=>1133,5525=>629,5526=>965,5536=>766,5537=>766,5538=>766,5539=>766,\n5540=>766,5541=>766,5542=>540,5543=>579,5544=>579,5545=>579,5546=>579,5547=>579,5548=>579,5549=>579,\n5550=>376,5551=>565,5598=>693,5601=>690,5702=>421,5703=>421,5742=>399,5743=>942,5744=>1178,5745=>1469,\n5746=>1469,5747=>1237,5748=>1237,5749=>1469,5750=>1469,5760=>429,5761=>443,5762=>641,5763=>838,5764=>1035,\n5765=>1232,5766=>443,5767=>641,5768=>838,5769=>1035,5770=>1232,5771=>448,5772=>646,5773=>844,5774=>1042,\n5775=>1241,5776=>443,5777=>641,5778=>836,5779=>1034,5780=>1232,5781=>448,5782=>677,5783=>709,5784=>1084,\n5785=>1035,5786=>615,5787=>457,5788=>456,7424=>532,7425=>646,7426=>883,7427=>527,7428=>495,7429=>544,\n7430=>544,7431=>441,7432=>486,7433=>250,7434=>355,7435=>521,7436=>524,7437=>679,7438=>584,7439=>550,\n7440=>495,7441=>615,7442=>615,7443=>615,7444=>920,7446=>550,7447=>550,7448=>472,7449=>541,7450=>541,\n7451=>524,7452=>517,7453=>663,7454=>853,7455=>574,7456=>532,7457=>736,7458=>472,7459=>473,7462=>524,\n7463=>532,7464=>507,7465=>472,7466=>531,7467=>575,7468=>387,7469=>552,7470=>389,7472=>436,7473=>358,\n7474=>358,7475=>439,7476=>426,7477=>167,7478=>167,7479=>372,7480=>315,7481=>489,7482=>424,7483=>424,\n7484=>446,7485=>396,7486=>342,7487=>394,7488=>346,7489=>415,7490=>560,7491=>352,7492=>352,7493=>365,\n7494=>583,7495=>385,7496=>365,7497=>375,7498=>375,7499=>324,7500=>323,7501=>365,7502=>161,7503=>383,\n7504=>561,7505=>368,7506=>372,7507=>333,7508=>372,7509=>372,7510=>385,7511=>265,7512=>364,7513=>422,\n7514=>561,7515=>375,7517=>361,7518=>335,7519=>347,7520=>374,7521=>327,7522=>161,7523=>233,7524=>364,\n7525=>375,7526=>361,7527=>335,7528=>370,7529=>374,7530=>327,7543=>571,7544=>426,7547=>334,7557=>250,\n7579=>365,7580=>333,7581=>333,7582=>372,7583=>324,7584=>267,7585=>209,7586=>365,7587=>364,7588=>235,\n7589=>224,7590=>234,7591=>235,7592=>211,7593=>224,7594=>211,7595=>338,7596=>561,7597=>561,7598=>369,\n7599=>431,7600=>368,7601=>372,7602=>372,7603=>324,7604=>258,7605=>265,7606=>457,7607=>376,7608=>325,\n7609=>365,7610=>375,7611=>330,7612=>393,7613=>330,7614=>353,7615=>372,7620=>0,7621=>0,7622=>0,\n7623=>0,7624=>0,7625=>0,7680=>615,7681=>551,7682=>617,7683=>571,7684=>617,7685=>571,7686=>617,\n7687=>571,7688=>628,7689=>495,7690=>693,7691=>571,7692=>693,7693=>571,7694=>693,7695=>571,7696=>693,\n7697=>571,7698=>693,7699=>571,7700=>568,7701=>554,7702=>568,7703=>554,7704=>568,7705=>554,7706=>568,\n7707=>554,7708=>568,7709=>554,7710=>518,7711=>316,7712=>697,7713=>571,7714=>677,7715=>570,7716=>677,\n7717=>570,7718=>677,7719=>570,7720=>677,7721=>570,7722=>677,7723=>570,7724=>265,7725=>250,7726=>265,\n7727=>250,7728=>590,7729=>521,7730=>590,7731=>521,7732=>590,7733=>521,7734=>501,7735=>259,7736=>501,\n7737=>259,7738=>501,7739=>250,7740=>501,7741=>250,7742=>776,7743=>876,7744=>776,7745=>876,7746=>776,\n7747=>876,7748=>673,7749=>570,7750=>673,7751=>570,7752=>673,7753=>570,7754=>673,7755=>570,7756=>708,\n7757=>550,7758=>708,7759=>550,7760=>708,7761=>550,7762=>708,7763=>550,7764=>542,7765=>571,7766=>542,\n7767=>571,7768=>625,7769=>370,7770=>625,7771=>370,7772=>625,7773=>370,7774=>625,7775=>370,7776=>571,\n7777=>469,7778=>571,7779=>469,7780=>571,7781=>469,7782=>571,7783=>469,7784=>571,7785=>469,7786=>549,\n7787=>353,7788=>549,7789=>353,7790=>549,7791=>353,7792=>549,7793=>353,7794=>659,7795=>570,7796=>659,\n7797=>570,7798=>659,7799=>570,7800=>659,7801=>570,7802=>659,7803=>570,7804=>615,7805=>532,7806=>615,\n7807=>532,7808=>890,7809=>736,7810=>890,7811=>736,7812=>890,7813=>736,7814=>890,7815=>736,7816=>890,\n7817=>736,7818=>616,7819=>532,7820=>616,7821=>532,7822=>549,7823=>532,7824=>616,7825=>472,7826=>616,\n7827=>472,7828=>616,7829=>472,7830=>570,7831=>353,7832=>736,7833=>532,7834=>551,7835=>316,7838=>691,\n7839=>550,7840=>615,7841=>551,7842=>615,7843=>551,7844=>615,7845=>551,7846=>615,7847=>551,7848=>615,\n7849=>551,7850=>615,7851=>551,7852=>615,7853=>551,7854=>615,7855=>551,7856=>615,7857=>551,7858=>615,\n7859=>551,7860=>615,7861=>551,7862=>615,7863=>551,7864=>568,7865=>554,7866=>568,7867=>554,7868=>568,\n7869=>554,7870=>568,7871=>554,7872=>568,7873=>554,7874=>568,7875=>554,7876=>568,7877=>554,7878=>568,\n7879=>554,7880=>265,7881=>250,7882=>265,7883=>250,7884=>708,7885=>550,7886=>708,7887=>550,7888=>708,\n7889=>550,7890=>708,7891=>550,7892=>708,7893=>550,7894=>708,7895=>550,7896=>708,7897=>550,7898=>822,\n7899=>550,7900=>822,7901=>550,7902=>822,7903=>550,7904=>822,7905=>550,7906=>822,7907=>550,7908=>659,\n7909=>570,7910=>659,7911=>570,7912=>772,7913=>570,7914=>772,7915=>570,7916=>772,7917=>570,7918=>772,\n7919=>570,7920=>772,7921=>570,7922=>549,7923=>532,7924=>549,7925=>532,7926=>549,7927=>532,7928=>549,\n7929=>532,7936=>593,7937=>593,7938=>593,7939=>593,7940=>593,7941=>593,7942=>593,7943=>593,7944=>615,\n7945=>615,7946=>790,7947=>790,7948=>692,7949=>721,7950=>637,7951=>668,7952=>486,7953=>486,7954=>486,\n7955=>486,7956=>486,7957=>486,7960=>640,7961=>640,7962=>869,7963=>877,7964=>809,7965=>835,7968=>570,\n7969=>570,7970=>570,7971=>570,7972=>570,7973=>570,7974=>570,7975=>570,7976=>753,7977=>751,7978=>977,\n7979=>980,7980=>924,7981=>945,7982=>840,7983=>852,7984=>304,7985=>304,7986=>304,7987=>304,7988=>304,\n7989=>304,7990=>304,7991=>304,7992=>342,7993=>336,7994=>571,7995=>571,7996=>513,7997=>540,7998=>440,\n7999=>443,8000=>550,8001=>550,8002=>550,8003=>550,8004=>550,8005=>550,8008=>724,8009=>763,8010=>985,\n8011=>989,8012=>844,8013=>873,8016=>521,8017=>521,8018=>521,8019=>521,8020=>521,8021=>521,8022=>521,\n8023=>521,8025=>705,8027=>897,8029=>911,8031=>808,8032=>753,8033=>753,8034=>753,8035=>753,8036=>753,\n8037=>753,8038=>753,8039=>753,8040=>722,8041=>759,8042=>980,8043=>985,8044=>851,8045=>875,8046=>829,\n8047=>857,8048=>593,8049=>593,8050=>486,8051=>493,8052=>570,8053=>589,8054=>304,8055=>304,8056=>550,\n8057=>550,8058=>521,8059=>521,8060=>753,8061=>753,8064=>593,8065=>593,8066=>593,8067=>593,8068=>593,\n8069=>593,8070=>593,8071=>593,8072=>615,8073=>615,8074=>790,8075=>790,8076=>692,8077=>721,8078=>637,\n8079=>668,8080=>570,8081=>570,8082=>570,8083=>570,8084=>570,8085=>570,8086=>570,8087=>570,8088=>753,\n8089=>751,8090=>977,8091=>980,8092=>924,8093=>945,8094=>840,8095=>852,8096=>753,8097=>753,8098=>753,\n8099=>753,8100=>753,8101=>753,8102=>753,8103=>753,8104=>722,8105=>759,8106=>980,8107=>985,8108=>851,\n8109=>875,8110=>829,8111=>857,8112=>593,8113=>593,8114=>593,8115=>593,8116=>593,8118=>593,8119=>593,\n8120=>615,8121=>615,8122=>645,8123=>623,8124=>615,8125=>450,8126=>450,8127=>450,8128=>450,8129=>450,\n8130=>570,8131=>570,8132=>589,8134=>570,8135=>570,8136=>724,8137=>671,8138=>837,8139=>784,8140=>677,\n8141=>450,8142=>450,8143=>450,8144=>304,8145=>304,8146=>304,8147=>304,8150=>304,8151=>304,8152=>265,\n8153=>265,8154=>427,8155=>367,8157=>450,8158=>450,8159=>450,8160=>521,8161=>521,8162=>521,8163=>521,\n8164=>571,8165=>571,8166=>521,8167=>521,8168=>549,8169=>549,8170=>760,8171=>742,8172=>616,8173=>450,\n8174=>450,8175=>450,8178=>753,8179=>753,8180=>753,8182=>753,8183=>753,8184=>847,8185=>731,8186=>830,\n8187=>743,8188=>688,8189=>450,8190=>450,8192=>450,8193=>900,8194=>450,8195=>900,8196=>296,8197=>225,\n8198=>150,8199=>572,8200=>286,8201=>180,8202=>89,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,\n8208=>325,8209=>325,8210=>572,8213=>900,8214=>450,8215=>450,8219=>286,8223=>466,8227=>531,8228=>301,\n8229=>601,8231=>286,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>180,8241=>1562,8242=>204,\n8243=>336,8244=>468,8245=>204,8246=>336,8247=>468,8248=>305,8251=>754,8252=>437,8253=>478,8254=>450,\n8255=>723,8256=>723,8257=>225,8258=>900,8259=>450,8260=>150,8261=>351,8262=>351,8263=>830,8264=>659,\n8265=>659,8266=>447,8267=>572,8268=>450,8269=>450,8270=>450,8271=>303,8272=>723,8273=>450,8274=>404,\n8275=>900,8276=>723,8277=>754,8278=>527,8279=>597,8280=>754,8281=>754,8282=>286,8283=>717,8284=>754,\n8285=>286,8286=>286,8287=>200,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8298=>0,8299=>0,\n8300=>0,8301=>0,8302=>0,8303=>0,8304=>360,8305=>161,8308=>360,8309=>360,8310=>360,8311=>360,\n8312=>360,8313=>360,8314=>475,8315=>475,8316=>475,8317=>221,8318=>221,8319=>358,8320=>360,8321=>360,\n8322=>360,8323=>360,8324=>360,8325=>360,8326=>360,8327=>360,8328=>360,8329=>360,8330=>475,8331=>475,\n8332=>475,8333=>221,8334=>221,8336=>352,8337=>375,8338=>372,8339=>399,8340=>375,8352=>789,8353=>572,\n8354=>572,8355=>572,8356=>572,8357=>876,8358=>673,8359=>1145,8360=>966,8361=>890,8362=>706,8363=>571,\n8365=>572,8366=>572,8367=>1145,8368=>572,8369=>572,8370=>572,8371=>572,8372=>696,8373=>577,8400=>0,\n8401=>0,8406=>0,8407=>0,8411=>0,8412=>0,8417=>0,8448=>917,8449=>917,8450=>628,8451=>1011,\n8452=>578,8453=>917,8454=>960,8455=>553,8456=>628,8457=>856,8459=>889,8460=>679,8461=>765,8462=>570,\n8463=>570,8464=>422,8465=>627,8466=>648,8467=>372,8468=>736,8469=>721,8470=>936,8471=>900,8472=>627,\n8473=>631,8474=>708,8475=>718,8476=>732,8477=>712,8478=>807,8479=>615,8480=>917,8481=>967,8483=>615,\n8484=>670,8485=>520,8486=>688,8487=>688,8488=>554,8489=>304,8490=>590,8491=>615,8492=>708,8493=>633,\n8494=>769,8495=>532,8496=>545,8497=>708,8498=>518,8499=>962,8500=>416,8501=>670,8502=>606,8503=>419,\n8504=>580,8505=>342,8506=>833,8507=>1074,8508=>632,8509=>655,8510=>589,8511=>764,8512=>729,8513=>697,\n8514=>501,8515=>501,8516=>549,8517=>737,8518=>637,8519=>554,8520=>316,8521=>316,8523=>702,8526=>474,\n8531=>872,8532=>872,8533=>872,8534=>872,8535=>872,8536=>872,8537=>872,8538=>872,8539=>872,8540=>872,\n8541=>872,8542=>872,8543=>511,8544=>265,8545=>443,8546=>620,8547=>831,8548=>615,8549=>830,8550=>1007,\n8551=>1185,8552=>826,8553=>616,8554=>839,8555=>1018,8556=>501,8557=>628,8558=>693,8559=>776,8560=>250,\n8561=>412,8562=>573,8563=>730,8564=>532,8565=>729,8566=>892,8567=>1053,8568=>737,8569=>532,8570=>740,\n8571=>901,8572=>250,8573=>495,8574=>571,8575=>876,8576=>1121,8577=>693,8578=>1121,8579=>633,8580=>494,\n8592=>754,8593=>754,8594=>754,8595=>754,8596=>754,8597=>754,8598=>754,8599=>754,8600=>754,8601=>754,\n8602=>754,8603=>754,8604=>754,8605=>754,8606=>754,8607=>754,8608=>754,8609=>754,8610=>754,8611=>754,\n8612=>754,8613=>754,8614=>754,8615=>754,8616=>754,8617=>754,8618=>754,8619=>754,8620=>754,8621=>754,\n8622=>754,8623=>754,8624=>754,8625=>754,8626=>754,8627=>754,8628=>754,8629=>754,8630=>754,8631=>754,\n8632=>754,8633=>754,8634=>754,8635=>754,8636=>754,8637=>754,8638=>754,8639=>754,8640=>754,8641=>754,\n8642=>754,8643=>754,8644=>754,8645=>754,8646=>754,8647=>754,8648=>754,8649=>754,8650=>754,8651=>754,\n8652=>754,8653=>754,8654=>754,8655=>754,8656=>754,8657=>754,8658=>754,8659=>754,8660=>754,8661=>754,\n8662=>754,8663=>754,8664=>754,8665=>754,8666=>754,8667=>754,8668=>754,8669=>754,8670=>754,8671=>754,\n8672=>754,8673=>754,8674=>754,8675=>754,8676=>754,8677=>754,8678=>754,8679=>754,8680=>754,8681=>754,\n8682=>754,8683=>754,8684=>754,8685=>754,8686=>754,8687=>754,8688=>754,8689=>754,8690=>754,8691=>754,\n8692=>754,8693=>754,8694=>754,8695=>754,8696=>754,8697=>754,8698=>754,8699=>754,8700=>754,8701=>754,\n8702=>754,8703=>754,8704=>615,8705=>572,8706=>465,8707=>568,8708=>568,8709=>784,8710=>602,8711=>602,\n8712=>784,8713=>784,8714=>646,8715=>784,8716=>784,8717=>646,8718=>572,8719=>681,8720=>681,8721=>606,\n8722=>754,8723=>754,8724=>754,8725=>303,8726=>573,8727=>754,8728=>563,8729=>563,8730=>573,8731=>573,\n8732=>573,8733=>643,8734=>750,8735=>754,8736=>807,8737=>807,8738=>754,8739=>450,8740=>450,8741=>450,\n8742=>450,8743=>659,8744=>659,8745=>659,8746=>659,8747=>469,8748=>710,8749=>951,8750=>469,8751=>710,\n8752=>951,8753=>469,8754=>469,8755=>469,8756=>572,8757=>572,8758=>234,8759=>572,8760=>754,8761=>754,\n8762=>754,8763=>754,8764=>754,8765=>754,8766=>754,8767=>754,8768=>337,8769=>754,8770=>754,8771=>754,\n8772=>754,8773=>754,8774=>754,8775=>754,8776=>754,8777=>754,8778=>754,8779=>754,8780=>754,8781=>754,\n8782=>754,8783=>754,8784=>754,8785=>754,8786=>755,8787=>755,8788=>900,8789=>900,8790=>754,8791=>754,\n8792=>754,8793=>754,8794=>754,8795=>754,8796=>754,8797=>754,8798=>754,8799=>754,8800=>754,8801=>754,\n8802=>754,8803=>754,8804=>754,8805=>754,8806=>754,8807=>754,8808=>754,8809=>754,8810=>942,8811=>942,\n8812=>417,8813=>754,8814=>754,8815=>754,8816=>754,8817=>754,8818=>754,8819=>754,8820=>754,8821=>754,\n8822=>754,8823=>754,8824=>754,8825=>754,8826=>754,8827=>754,8828=>754,8829=>754,8830=>754,8831=>754,\n8832=>754,8833=>754,8834=>754,8835=>754,8836=>754,8837=>754,8838=>754,8839=>754,8840=>754,8841=>754,\n8842=>754,8843=>754,8844=>659,8845=>659,8846=>659,8847=>754,8848=>754,8849=>754,8850=>754,8851=>702,\n8852=>702,8853=>754,8854=>754,8855=>754,8856=>754,8857=>754,8858=>754,8859=>754,8860=>754,8861=>754,\n8862=>754,8863=>754,8864=>754,8865=>754,8866=>784,8867=>784,8868=>784,8869=>784,8870=>468,8871=>468,\n8872=>784,8873=>784,8874=>784,8875=>784,8876=>784,8877=>784,8878=>784,8879=>784,8880=>754,8881=>754,\n8882=>754,8883=>754,8884=>754,8885=>754,8886=>900,8887=>900,8888=>754,8889=>754,8890=>468,8891=>659,\n8892=>659,8893=>659,8894=>754,8895=>754,8896=>738,8897=>738,8898=>738,8899=>738,8900=>444,8901=>286,\n8902=>563,8903=>754,8904=>900,8905=>900,8906=>900,8907=>900,8908=>900,8909=>754,8910=>659,8911=>659,\n8912=>754,8913=>754,8914=>754,8915=>754,8916=>754,8917=>754,8918=>754,8919=>754,8920=>1280,8921=>1280,\n8922=>754,8923=>754,8924=>754,8925=>754,8926=>754,8927=>754,8928=>754,8929=>754,8930=>754,8931=>754,\n8932=>754,8933=>754,8934=>754,8935=>754,8936=>754,8937=>754,8938=>754,8939=>754,8940=>754,8941=>754,\n8942=>900,8943=>900,8944=>900,8945=>900,8946=>900,8947=>784,8948=>646,8949=>784,8950=>784,8951=>646,\n8952=>784,8953=>784,8954=>900,8955=>784,8956=>646,8957=>784,8958=>646,8959=>784,8960=>542,8961=>542,\n8962=>571,8963=>754,8964=>754,8965=>754,8966=>754,8967=>439,8968=>351,8969=>351,8970=>351,8971=>351,\n8972=>728,8973=>728,8974=>728,8975=>728,8976=>754,8977=>461,8984=>900,8985=>754,8988=>422,8989=>422,\n8990=>422,8991=>422,8992=>469,8993=>469,8996=>1037,8997=>1037,8998=>1272,8999=>1037,9000=>1299,9003=>1272,\n9004=>786,9075=>304,9076=>571,9077=>753,9082=>593,9085=>681,9095=>1037,9108=>786,9115=>450,9116=>450,\n9117=>450,9118=>450,9119=>450,9120=>450,9121=>450,9122=>450,9123=>450,9124=>450,9125=>450,9126=>450,\n9127=>675,9128=>675,9129=>675,9130=>675,9131=>675,9132=>675,9133=>675,9134=>469,9166=>754,9167=>850,\n9187=>786,9189=>692,9250=>571,9251=>571,9312=>807,9313=>807,9314=>807,9315=>807,9316=>807,9317=>807,\n9318=>807,9319=>807,9320=>807,9321=>807,9472=>542,9473=>542,9474=>542,9475=>542,9476=>542,9477=>542,\n9478=>542,9479=>542,9480=>542,9481=>542,9482=>542,9483=>542,9484=>542,9485=>542,9486=>542,9487=>542,\n9488=>542,9489=>542,9490=>542,9491=>542,9492=>542,9493=>542,9494=>542,9495=>542,9496=>542,9497=>542,\n9498=>542,9499=>542,9500=>542,9501=>542,9502=>542,9503=>542,9504=>542,9505=>542,9506=>542,9507=>542,\n9508=>542,9509=>542,9510=>542,9511=>542,9512=>542,9513=>542,9514=>542,9515=>542,9516=>542,9517=>542,\n9518=>542,9519=>542,9520=>542,9521=>542,9522=>542,9523=>542,9524=>542,9525=>542,9526=>542,9527=>542,\n9528=>542,9529=>542,9530=>542,9531=>542,9532=>542,9533=>542,9534=>542,9535=>542,9536=>542,9537=>542,\n9538=>542,9539=>542,9540=>542,9541=>542,9542=>542,9543=>542,9544=>542,9545=>542,9546=>542,9547=>542,\n9548=>542,9549=>542,9550=>542,9551=>542,9552=>542,9553=>542,9554=>542,9555=>542,9556=>542,9557=>542,\n9558=>542,9559=>542,9560=>542,9561=>542,9562=>542,9563=>542,9564=>542,9565=>542,9566=>542,9567=>542,\n9568=>542,9569=>542,9570=>542,9571=>542,9572=>542,9573=>542,9574=>542,9575=>542,9576=>542,9577=>542,\n9578=>542,9579=>542,9580=>542,9581=>542,9582=>542,9583=>542,9584=>542,9585=>542,9586=>542,9587=>542,\n9588=>542,9589=>542,9590=>542,9591=>542,9592=>542,9593=>542,9594=>542,9595=>542,9596=>542,9597=>542,\n9598=>542,9599=>542,9600=>692,9601=>692,9602=>692,9603=>692,9604=>692,9605=>692,9606=>692,9607=>692,\n9608=>692,9609=>692,9610=>692,9611=>692,9612=>692,9613=>692,9614=>692,9615=>692,9616=>692,9617=>692,\n9618=>692,9619=>692,9620=>692,9621=>692,9622=>692,9623=>692,9624=>692,9625=>692,9626=>692,9627=>692,\n9628=>692,9629=>692,9630=>692,9631=>692,9632=>850,9633=>850,9634=>850,9635=>850,9636=>850,9637=>850,\n9638=>850,9639=>850,9640=>850,9641=>850,9642=>610,9643=>610,9644=>850,9645=>850,9646=>495,9647=>495,\n9648=>692,9649=>692,9650=>692,9651=>692,9652=>452,9653=>452,9654=>692,9655=>692,9656=>452,9657=>452,\n9658=>692,9659=>692,9660=>692,9661=>692,9662=>452,9663=>452,9664=>692,9665=>692,9666=>452,9667=>452,\n9668=>692,9669=>692,9670=>692,9671=>692,9672=>692,9673=>785,9674=>444,9675=>785,9676=>785,9677=>785,\n9678=>785,9679=>785,9680=>785,9681=>785,9682=>785,9683=>785,9684=>785,9685=>785,9686=>474,9687=>474,\n9688=>712,9689=>873,9690=>873,9691=>873,9692=>348,9693=>348,9694=>348,9695=>348,9696=>785,9697=>785,\n9698=>692,9699=>692,9700=>692,9701=>692,9702=>531,9703=>850,9704=>850,9705=>850,9706=>850,9707=>850,\n9708=>692,9709=>692,9710=>692,9711=>1007,9712=>850,9713=>850,9714=>850,9715=>850,9716=>785,9717=>785,\n9718=>785,9719=>785,9720=>692,9721=>692,9722=>692,9723=>747,9724=>747,9725=>659,9726=>659,9727=>692,\n9728=>807,9729=>900,9730=>807,9731=>807,9732=>807,9733=>807,9734=>807,9735=>515,9736=>806,9737=>807,\n9738=>799,9739=>799,9740=>604,9741=>911,9742=>1121,9743=>1125,9744=>807,9745=>807,9746=>807,9747=>479,\n9748=>807,9749=>807,9750=>807,9751=>807,9752=>807,9753=>807,9754=>807,9755=>807,9756=>807,9757=>548,\n9758=>807,9759=>548,9760=>807,9761=>807,9762=>807,9763=>807,9764=>602,9765=>671,9766=>584,9767=>705,\n9768=>490,9769=>807,9770=>807,9771=>807,9772=>639,9773=>807,9774=>807,9775=>807,9776=>807,9777=>807,\n9778=>807,9779=>807,9780=>807,9781=>807,9782=>807,9783=>807,9784=>807,9785=>807,9786=>807,9787=>807,\n9788=>807,9789=>807,9790=>807,9791=>552,9792=>658,9793=>658,9794=>807,9795=>807,9796=>807,9797=>807,\n9798=>807,9799=>807,9800=>807,9801=>807,9802=>807,9803=>807,9804=>807,9805=>807,9806=>807,9807=>807,\n9808=>807,9809=>807,9810=>807,9811=>807,9812=>807,9813=>807,9814=>807,9815=>807,9816=>807,9817=>807,\n9818=>807,9819=>807,9820=>807,9821=>807,9822=>807,9823=>807,9824=>807,9825=>807,9826=>807,9827=>807,\n9828=>807,9829=>807,9830=>807,9831=>807,9832=>807,9833=>424,9834=>574,9835=>807,9836=>807,9837=>424,\n9838=>321,9839=>435,9840=>673,9841=>689,9842=>807,9843=>807,9844=>807,9845=>807,9846=>807,9847=>807,\n9848=>807,9849=>807,9850=>807,9851=>807,9852=>807,9853=>807,9854=>807,9855=>807,9856=>782,9857=>782,\n9858=>782,9859=>782,9860=>782,9861=>782,9862=>807,9863=>807,9864=>807,9865=>807,9866=>807,9867=>807,\n9868=>807,9869=>807,9870=>807,9871=>807,9872=>807,9873=>807,9874=>807,9875=>807,9876=>807,9877=>487,\n9878=>807,9879=>807,9880=>807,9881=>807,9882=>807,9883=>807,9884=>807,9888=>807,9889=>632,9890=>903,\n9891=>977,9892=>1028,9893=>811,9894=>754,9895=>754,9896=>754,9897=>754,9898=>754,9899=>754,9900=>754,\n9901=>754,9902=>754,9903=>754,9904=>759,9905=>754,9906=>658,9907=>659,9908=>659,9909=>659,9910=>765,\n9911=>659,9912=>659,9985=>754,9986=>754,9987=>754,9988=>754,9990=>754,9991=>754,9992=>754,9993=>754,\n9996=>754,9997=>754,9998=>754,9999=>754,10000=>754,10001=>754,10002=>754,10003=>754,10004=>754,10005=>754,\n10006=>754,10007=>754,10008=>754,10009=>754,10010=>754,10011=>754,10012=>754,10013=>754,10014=>754,10015=>754,\n10016=>754,10017=>754,10018=>754,10019=>754,10020=>754,10021=>754,10022=>754,10023=>754,10025=>754,10026=>754,\n10027=>754,10028=>754,10029=>754,10030=>754,10031=>754,10032=>754,10033=>754,10034=>754,10035=>754,10036=>754,\n10037=>754,10038=>754,10039=>754,10040=>754,10041=>754,10042=>754,10043=>754,10044=>754,10045=>754,10046=>754,\n10047=>754,10048=>754,10049=>754,10050=>754,10051=>754,10052=>754,10053=>754,10054=>754,10055=>754,10056=>754,\n10057=>754,10058=>754,10059=>754,10061=>807,10063=>807,10064=>807,10065=>807,10066=>807,10070=>807,10072=>754,\n10073=>754,10074=>754,10075=>290,10076=>290,10077=>484,10078=>484,10081=>754,10082=>754,10083=>754,10084=>754,\n10085=>754,10086=>754,10087=>754,10088=>754,10089=>754,10090=>754,10091=>754,10092=>754,10093=>754,10094=>754,\n10095=>754,10096=>754,10097=>754,10098=>754,10099=>754,10100=>754,10101=>754,10102=>807,10103=>807,10104=>807,\n10105=>807,10106=>807,10107=>807,10108=>807,10109=>807,10110=>807,10111=>807,10112=>754,10113=>754,10114=>754,\n10115=>754,10116=>754,10117=>754,10118=>754,10119=>754,10120=>754,10121=>754,10122=>754,10123=>754,10124=>754,\n10125=>754,10126=>754,10127=>754,10128=>754,10129=>754,10130=>754,10131=>754,10132=>754,10136=>754,10137=>754,\n10138=>754,10139=>754,10140=>754,10141=>754,10142=>754,10143=>754,10144=>754,10145=>754,10146=>754,10147=>754,\n10148=>754,10149=>754,10150=>754,10151=>754,10152=>754,10153=>754,10154=>754,10155=>754,10156=>754,10157=>754,\n10158=>754,10159=>754,10161=>754,10162=>754,10163=>754,10164=>754,10165=>754,10166=>754,10167=>754,10168=>754,\n10169=>754,10170=>754,10171=>754,10172=>754,10173=>754,10174=>754,10181=>351,10182=>351,10208=>444,10214=>445,\n10215=>445,10216=>351,10217=>351,10218=>500,10219=>500,10224=>754,10225=>754,10226=>754,10227=>754,10228=>1042,\n10229=>1290,10230=>1290,10231=>1290,10232=>1290,10233=>1290,10234=>1290,10235=>1290,10236=>1290,10237=>1290,10238=>1290,\n10239=>1290,10240=>659,10241=>659,10242=>659,10243=>659,10244=>659,10245=>659,10246=>659,10247=>659,10248=>659,\n10249=>659,10250=>659,10251=>659,10252=>659,10253=>659,10254=>659,10255=>659,10256=>659,10257=>659,10258=>659,\n10259=>659,10260=>659,10261=>659,10262=>659,10263=>659,10264=>659,10265=>659,10266=>659,10267=>659,10268=>659,\n10269=>659,10270=>659,10271=>659,10272=>659,10273=>659,10274=>659,10275=>659,10276=>659,10277=>659,10278=>659,\n10279=>659,10280=>659,10281=>659,10282=>659,10283=>659,10284=>659,10285=>659,10286=>659,10287=>659,10288=>659,\n10289=>659,10290=>659,10291=>659,10292=>659,10293=>659,10294=>659,10295=>659,10296=>659,10297=>659,10298=>659,\n10299=>659,10300=>659,10301=>659,10302=>659,10303=>659,10304=>659,10305=>659,10306=>659,10307=>659,10308=>659,\n10309=>659,10310=>659,10311=>659,10312=>659,10313=>659,10314=>659,10315=>659,10316=>659,10317=>659,10318=>659,\n10319=>659,10320=>659,10321=>659,10322=>659,10323=>659,10324=>659,10325=>659,10326=>659,10327=>659,10328=>659,\n10329=>659,10330=>659,10331=>659,10332=>659,10333=>659,10334=>659,10335=>659,10336=>659,10337=>659,10338=>659,\n10339=>659,10340=>659,10341=>659,10342=>659,10343=>659,10344=>659,10345=>659,10346=>659,10347=>659,10348=>659,\n10349=>659,10350=>659,10351=>659,10352=>659,10353=>659,10354=>659,10355=>659,10356=>659,10357=>659,10358=>659,\n10359=>659,10360=>659,10361=>659,10362=>659,10363=>659,10364=>659,10365=>659,10366=>659,10367=>659,10368=>659,\n10369=>659,10370=>659,10371=>659,10372=>659,10373=>659,10374=>659,10375=>659,10376=>659,10377=>659,10378=>659,\n10379=>659,10380=>659,10381=>659,10382=>659,10383=>659,10384=>659,10385=>659,10386=>659,10387=>659,10388=>659,\n10389=>659,10390=>659,10391=>659,10392=>659,10393=>659,10394=>659,10395=>659,10396=>659,10397=>659,10398=>659,\n10399=>659,10400=>659,10401=>659,10402=>659,10403=>659,10404=>659,10405=>659,10406=>659,10407=>659,10408=>659,\n10409=>659,10410=>659,10411=>659,10412=>659,10413=>659,10414=>659,10415=>659,10416=>659,10417=>659,10418=>659,\n10419=>659,10420=>659,10421=>659,10422=>659,10423=>659,10424=>659,10425=>659,10426=>659,10427=>659,10428=>659,\n10429=>659,10430=>659,10431=>659,10432=>659,10433=>659,10434=>659,10435=>659,10436=>659,10437=>659,10438=>659,\n10439=>659,10440=>659,10441=>659,10442=>659,10443=>659,10444=>659,10445=>659,10446=>659,10447=>659,10448=>659,\n10449=>659,10450=>659,10451=>659,10452=>659,10453=>659,10454=>659,10455=>659,10456=>659,10457=>659,10458=>659,\n10459=>659,10460=>659,10461=>659,10462=>659,10463=>659,10464=>659,10465=>659,10466=>659,10467=>659,10468=>659,\n10469=>659,10470=>659,10471=>659,10472=>659,10473=>659,10474=>659,10475=>659,10476=>659,10477=>659,10478=>659,\n10479=>659,10480=>659,10481=>659,10482=>659,10483=>659,10484=>659,10485=>659,10486=>659,10487=>659,10488=>659,\n10489=>659,10490=>659,10491=>659,10492=>659,10493=>659,10494=>659,10495=>659,10502=>754,10503=>754,10506=>754,\n10507=>754,10560=>615,10561=>615,10627=>660,10628=>660,10702=>754,10703=>900,10704=>900,10705=>900,10706=>900,\n10707=>900,10708=>900,10709=>900,10731=>444,10746=>754,10747=>754,10752=>900,10753=>900,10754=>900,10764=>1192,\n10765=>469,10766=>469,10767=>469,10768=>469,10769=>469,10770=>469,10771=>469,10772=>469,10773=>469,10774=>469,\n10775=>469,10776=>469,10777=>469,10778=>469,10779=>469,10780=>469,10799=>754,10877=>754,10878=>754,10879=>754,\n10880=>754,10881=>754,10882=>754,10883=>754,10884=>754,10885=>754,10886=>754,10887=>754,10888=>754,10889=>754,\n10890=>754,10891=>754,10892=>754,10893=>754,10894=>754,10895=>754,10896=>754,10897=>754,10898=>754,10899=>754,\n10900=>754,10901=>754,10902=>754,10903=>754,10904=>754,10905=>754,10906=>754,10907=>754,10908=>754,10909=>754,\n10910=>754,10911=>754,10912=>754,10926=>754,10927=>754,10928=>754,10929=>754,10930=>754,10931=>754,10932=>754,\n10933=>754,10934=>754,10935=>754,10936=>754,10937=>754,10938=>754,11001=>754,11002=>754,11008=>754,11009=>754,\n11010=>754,11011=>754,11012=>754,11013=>754,11014=>754,11015=>754,11016=>754,11017=>754,11018=>754,11019=>754,\n11020=>754,11021=>754,11022=>752,11023=>752,11024=>752,11025=>752,11026=>850,11027=>850,11028=>850,11029=>850,\n11030=>692,11031=>692,11032=>692,11033=>692,11034=>850,11039=>782,11040=>782,11041=>786,11042=>786,11043=>786,\n11044=>1007,11091=>782,11092=>782,11360=>501,11361=>250,11362=>501,11363=>542,11364=>625,11365=>551,11366=>353,\n11367=>677,11368=>570,11369=>590,11370=>521,11371=>616,11372=>472,11373=>703,11374=>776,11375=>615,11377=>661,\n11378=>1015,11379=>865,11380=>532,11381=>589,11382=>511,11383=>593,11385=>373,11386=>550,11387=>441,11388=>157,\n11389=>387,11568=>582,11569=>799,11570=>799,11571=>614,11572=>615,11573=>571,11574=>505,11575=>615,11576=>615,\n11577=>568,11578=>568,11579=>614,11580=>787,11581=>616,11582=>441,11583=>616,11584=>799,11585=>799,11586=>270,\n11587=>564,11588=>677,11589=>590,11590=>475,11591=>616,11592=>580,11593=>568,11594=>452,11595=>857,11596=>700,\n11597=>673,11598=>558,11599=>265,11600=>700,11601=>265,11602=>677,11603=>569,11604=>799,11605=>799,11606=>677,\n11607=>288,11608=>674,11609=>799,11610=>799,11611=>628,11612=>690,11613=>616,11614=>628,11615=>560,11616=>615,\n11617=>677,11618=>568,11619=>709,11620=>510,11621=>709,11631=>463,11800=>478,11810=>351,11811=>351,11812=>351,\n11813=>351,11822=>478,19904=>807,19905=>807,19906=>807,19907=>807,19908=>807,19909=>807,19910=>807,19911=>807,\n19912=>807,19913=>807,19914=>807,19915=>807,19916=>807,19917=>807,19918=>807,19919=>807,19920=>807,19921=>807,\n19922=>807,19923=>807,19924=>807,19925=>807,19926=>807,19927=>807,19928=>807,19929=>807,19930=>807,19931=>807,\n19932=>807,19933=>807,19934=>807,19935=>807,19936=>807,19937=>807,19938=>807,19939=>807,19940=>807,19941=>807,\n19942=>807,19943=>807,19944=>807,19945=>807,19946=>807,19947=>807,19948=>807,19949=>807,19950=>807,19951=>807,\n19952=>807,19953=>807,19954=>807,19955=>807,19956=>807,19957=>807,19958=>807,19959=>807,19960=>807,19961=>807,\n19962=>807,19963=>807,19964=>807,19965=>807,19966=>807,19967=>807,42564=>571,42565=>469,42566=>318,42567=>304,\n42572=>1062,42573=>925,42576=>926,42577=>815,42580=>971,42581=>757,42582=>879,42583=>758,42594=>956,42595=>820,\n42596=>959,42597=>811,42598=>1060,42599=>907,42600=>708,42601=>550,42602=>770,42603=>641,42604=>1222,42605=>917,\n42606=>791,42634=>704,42635=>616,42636=>549,42637=>524,42644=>617,42645=>570,42760=>444,42761=>444,42762=>444,\n42763=>444,42764=>444,42765=>444,42766=>444,42767=>444,42768=>444,42769=>444,42770=>444,42771=>444,42772=>444,\n42773=>444,42774=>444,42779=>332,42780=>332,42781=>227,42782=>227,42783=>227,42790=>677,42791=>570,42792=>790,\n42793=>638,42794=>553,42795=>486,42800=>441,42801=>469,42802=>1125,42803=>886,42804=>1083,42805=>891,42806=>1028,\n42807=>883,42808=>874,42809=>736,42810=>874,42811=>736,42812=>863,42813=>736,42814=>633,42815=>494,42822=>612,\n42823=>353,42824=>523,42825=>384,42826=>726,42827=>633,42830=>1222,42831=>917,42880=>501,42881=>250,42882=>662,\n42883=>570,42889=>303,42890=>338,42891=>360,42892=>247,43003=>518,43004=>542,43005=>776,43006=>265,43007=>1079,\n61440=>879,61441=>879,63173=>550,64256=>620,64257=>567,64258=>567,64259=>870,64260=>870,64261=>617,64262=>774,\n64275=>1081,64276=>1081,64277=>1076,64278=>1067,64279=>1376,64285=>245,64286=>0,64287=>423,64288=>572,64289=>770,\n64290=>696,64291=>815,64292=>694,64293=>759,64294=>769,64295=>726,64296=>788,64297=>754,64298=>727,64299=>727,\n64300=>727,64301=>727,64302=>566,64303=>566,64304=>566,64305=>547,64306=>403,64307=>534,64308=>576,64309=>245,\n64310=>336,64312=>583,64313=>302,64314=>532,64315=>500,64316=>539,64318=>593,64320=>397,64321=>629,64323=>576,\n64324=>543,64326=>523,64327=>596,64328=>532,64329=>727,64330=>591,64331=>245,64332=>547,64333=>500,64334=>543,\n64335=>566,64338=>847,64339=>883,64340=>250,64341=>271,64342=>847,64343=>883,64344=>250,64345=>271,64346=>847,\n64347=>883,64348=>250,64349=>271,64350=>847,64351=>883,64352=>250,64353=>271,64354=>847,64355=>883,64356=>250,\n64357=>271,64358=>847,64359=>883,64360=>250,64361=>271,64362=>933,64363=>932,64364=>430,64365=>455,64366=>933,\n64367=>932,64368=>430,64369=>455,64370=>581,64371=>581,64372=>556,64373=>581,64374=>581,64375=>581,64376=>556,\n64377=>581,64378=>581,64379=>581,64380=>556,64381=>581,64382=>581,64383=>581,64384=>556,64385=>581,64394=>435,\n64395=>497,64396=>435,64397=>497,64398=>805,64399=>805,64400=>428,64401=>497,64402=>805,64403=>805,64404=>428,\n64405=>497,64414=>661,64415=>685,64473=>435,64474=>465,64488=>250,64489=>271,64508=>704,64509=>750,64510=>250,\n64511=>271,65024=>0,65025=>0,65026=>0,65027=>0,65028=>0,65029=>0,65030=>0,65031=>0,65032=>0,\n65033=>0,65034=>0,65035=>0,65036=>0,65037=>0,65038=>0,65039=>0,65056=>0,65057=>0,65058=>0,\n65059=>0,65136=>264,65137=>264,65138=>264,65139=>235,65140=>264,65142=>264,65143=>264,65144=>264,65145=>264,\n65146=>264,65147=>264,65148=>264,65149=>264,65150=>264,65151=>264,65152=>423,65153=>250,65154=>274,65155=>250,\n65156=>274,65157=>435,65158=>465,65159=>250,65160=>274,65161=>704,65162=>750,65163=>250,65164=>271,65165=>250,\n65166=>274,65167=>847,65168=>883,65169=>250,65170=>271,65171=>471,65172=>482,65173=>847,65174=>883,65175=>250,\n65176=>271,65177=>847,65178=>883,65179=>250,65180=>271,65181=>581,65182=>581,65183=>556,65184=>581,65185=>581,\n65186=>581,65187=>556,65188=>581,65189=>581,65190=>581,65191=>556,65192=>581,65193=>400,65194=>472,65195=>400,\n65196=>472,65197=>435,65198=>497,65199=>435,65200=>497,65201=>1099,65202=>1147,65203=>754,65204=>803,65205=>1099,\n65206=>1147,65207=>754,65208=>803,65209=>1088,65210=>1103,65211=>764,65212=>780,65213=>1088,65214=>1103,65215=>764,\n65216=>780,65217=>832,65218=>854,65219=>716,65220=>738,65221=>832,65222=>854,65223=>716,65224=>738,65225=>537,\n65226=>479,65227=>537,65228=>434,65229=>537,65230=>479,65231=>470,65232=>434,65233=>933,65234=>932,65235=>430,\n65236=>455,65237=>698,65238=>750,65239=>430,65240=>455,65241=>742,65242=>758,65243=>428,65244=>497,65245=>654,\n65246=>681,65247=>274,65248=>298,65249=>557,65250=>599,65251=>482,65252=>520,65253=>661,65254=>685,65255=>250,\n65256=>271,65257=>471,65258=>482,65259=>475,65260=>415,65261=>435,65262=>465,65263=>704,65264=>750,65265=>704,\n65266=>750,65267=>250,65268=>271,65269=>513,65270=>537,65271=>513,65272=>537,65273=>513,65274=>537,65275=>513,\n65276=>537,65279=>0,65529=>0,65530=>0,65531=>0,65532=>0,65533=>923);\n$enc='';\n$diff='';\n$file='dejavusanscondensed.z';\n$ctg='dejavusanscondensed.ctg.z';\n$originalsize=544636;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavusanscondensedb.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='DejaVuSansCondensed-Bold';\n$desc=array('Ascent'=>928,'Descent'=>-236,'CapHeight'=>17,'Flags'=>32,'FontBBox'=>'[-962 -385 1777 1174]','ItalicAngle'=>0,'StemV'=>120,'MissingWidth'=>540);\n$up=-63;\n$ut=44;\n$dw=540;\n$cw=array(\n0=>540,32=>313,33=>410,34=>469,35=>754,36=>626,37=>901,38=>785,39=>275,40=>411,\n41=>411,42=>470,43=>754,44=>342,45=>374,46=>342,47=>329,48=>626,49=>626,50=>626,\n51=>626,52=>626,53=>626,54=>626,55=>626,56=>626,57=>626,58=>360,59=>360,60=>754,\n61=>754,62=>754,63=>522,64=>900,65=>696,66=>686,67=>660,68=>747,69=>615,70=>615,\n71=>738,72=>753,73=>334,74=>334,75=>697,76=>573,77=>896,78=>753,79=>765,80=>659,\n81=>765,82=>693,83=>648,84=>614,85=>730,86=>696,87=>993,88=>694,89=>651,90=>652,\n91=>411,92=>329,93=>411,94=>754,95=>450,96=>450,97=>607,98=>644,99=>533,100=>644,\n101=>610,102=>391,103=>644,104=>641,105=>308,106=>308,107=>598,108=>308,109=>938,110=>641,\n111=>618,112=>644,113=>644,114=>444,115=>536,116=>430,117=>641,118=>586,119=>831,120=>580,\n121=>586,122=>523,123=>641,124=>329,125=>641,126=>754,8364=>626,8218=>342,402=>391,8222=>591,\n8230=>900,8224=>450,8225=>450,710=>450,8240=>1296,352=>648,8249=>371,338=>1050,381=>652,8216=>342,\n8217=>342,8220=>591,8221=>591,8226=>575,8211=>450,8212=>900,732=>450,8482=>900,353=>536,8250=>371,\n339=>984,382=>523,376=>651,160=>313,161=>410,162=>626,163=>626,164=>572,165=>626,166=>329,\n167=>450,168=>450,169=>900,170=>507,171=>581,172=>754,173=>374,174=>900,175=>450,176=>450,\n177=>754,178=>394,179=>394,180=>450,181=>662,182=>572,183=>342,184=>450,185=>394,186=>507,\n187=>581,188=>932,189=>932,190=>932,191=>522,192=>696,193=>696,194=>696,195=>696,196=>696,\n197=>696,198=>976,199=>660,200=>615,201=>615,202=>615,203=>615,204=>334,205=>334,206=>334,\n207=>334,208=>754,209=>753,210=>765,211=>765,212=>765,213=>765,214=>765,215=>754,216=>765,\n217=>730,218=>730,219=>730,220=>730,221=>651,222=>664,223=>647,224=>607,225=>607,226=>607,\n227=>607,228=>607,229=>607,230=>943,231=>533,232=>610,233=>610,234=>610,235=>610,236=>308,\n237=>308,238=>308,239=>308,240=>618,241=>641,242=>618,243=>618,244=>618,245=>618,246=>618,\n247=>754,248=>618,249=>641,250=>641,251=>641,252=>641,253=>586,254=>644,255=>586,256=>696,\n257=>607,258=>696,259=>607,260=>696,261=>607,262=>660,263=>533,264=>660,265=>533,266=>660,\n267=>533,268=>660,269=>533,270=>747,271=>644,272=>754,273=>644,274=>615,275=>610,276=>615,\n277=>610,278=>615,279=>610,280=>615,281=>610,282=>615,283=>610,284=>738,285=>644,286=>738,\n287=>644,288=>738,289=>644,290=>738,291=>644,292=>753,293=>641,294=>876,295=>711,296=>334,\n297=>308,298=>334,299=>308,300=>334,301=>308,302=>334,303=>308,304=>334,305=>308,306=>669,\n307=>617,308=>334,309=>308,310=>697,311=>598,312=>598,313=>573,314=>308,315=>573,316=>308,\n317=>573,318=>431,319=>573,320=>501,321=>578,322=>334,323=>753,324=>641,325=>753,326=>641,\n327=>753,328=>641,329=>884,330=>753,331=>641,332=>765,333=>618,334=>765,335=>618,336=>765,\n337=>618,340=>693,341=>444,342=>693,343=>444,344=>693,345=>444,346=>648,347=>536,348=>648,\n349=>536,350=>648,351=>536,354=>614,355=>430,356=>614,357=>430,358=>614,359=>430,360=>730,\n361=>641,362=>730,363=>641,364=>730,365=>641,366=>730,367=>641,368=>730,369=>641,370=>730,\n371=>641,372=>993,373=>831,374=>651,375=>586,377=>652,378=>523,379=>652,380=>523,383=>391,\n384=>644,385=>729,386=>686,387=>644,388=>686,389=>644,390=>660,391=>660,392=>533,393=>754,\n394=>791,395=>681,396=>644,397=>619,398=>615,399=>764,400=>626,401=>615,403=>738,404=>713,\n405=>940,406=>392,407=>350,408=>697,409=>598,410=>324,411=>532,412=>938,413=>753,414=>641,\n415=>765,416=>786,417=>618,418=>974,419=>821,420=>703,421=>644,422=>693,423=>648,424=>536,\n425=>615,426=>497,427=>430,428=>636,429=>430,430=>614,431=>751,432=>641,433=>765,434=>732,\n435=>717,436=>700,437=>652,438=>523,439=>695,440=>695,441=>576,442=>523,443=>626,444=>695,\n445=>576,446=>515,447=>644,448=>334,449=>593,450=>489,451=>334,452=>1399,453=>1271,454=>1168,\n455=>908,456=>882,457=>617,458=>1088,459=>1062,460=>949,461=>696,462=>607,463=>334,464=>308,\n465=>765,466=>618,467=>730,468=>641,469=>730,470=>641,471=>730,472=>641,473=>730,474=>641,\n475=>730,476=>641,477=>610,478=>696,479=>607,480=>696,481=>607,482=>976,483=>943,484=>738,\n485=>644,486=>738,487=>644,488=>697,489=>598,490=>765,491=>618,492=>765,493=>618,494=>695,\n495=>523,496=>308,497=>1399,498=>1271,499=>1168,500=>738,501=>644,502=>1160,503=>708,504=>753,\n505=>641,506=>696,507=>607,508=>976,509=>943,510=>765,511=>618,512=>696,513=>607,514=>696,\n515=>607,516=>615,517=>610,518=>615,519=>610,520=>334,521=>308,522=>334,523=>308,524=>765,\n525=>618,526=>765,527=>618,528=>693,529=>444,530=>693,531=>444,532=>730,533=>641,534=>730,\n535=>641,536=>648,537=>536,538=>614,539=>430,540=>621,541=>546,542=>753,543=>641,544=>753,\n545=>778,546=>728,547=>593,548=>652,549=>523,550=>696,551=>607,552=>615,553=>610,554=>765,\n555=>618,556=>765,557=>618,558=>765,559=>618,560=>765,561=>618,562=>651,563=>586,564=>442,\n565=>780,566=>460,567=>308,568=>979,569=>979,570=>696,571=>660,572=>533,573=>573,574=>614,\n575=>536,576=>523,577=>703,578=>553,579=>686,580=>730,581=>696,582=>615,583=>610,584=>334,\n585=>308,586=>774,587=>712,588=>693,589=>444,590=>651,591=>586,592=>607,593=>644,594=>644,\n595=>644,596=>533,597=>533,598=>645,599=>712,600=>610,601=>610,602=>788,603=>501,604=>490,\n605=>733,606=>658,607=>308,608=>712,609=>644,610=>564,611=>579,612=>571,613=>641,614=>641,\n615=>641,616=>491,617=>396,618=>491,619=>502,620=>624,621=>308,622=>757,623=>938,624=>938,\n625=>938,626=>641,627=>713,628=>636,629=>618,630=>817,631=>613,632=>716,633=>484,634=>484,\n635=>584,636=>444,637=>444,638=>536,639=>536,640=>578,641=>578,642=>536,643=>374,644=>391,\n645=>544,646=>497,647=>430,648=>430,649=>828,650=>695,651=>603,652=>586,653=>831,654=>586,\n655=>651,656=>624,657=>615,658=>576,659=>576,660=>515,661=>515,662=>515,663=>515,664=>765,\n665=>569,666=>658,667=>616,668=>622,669=>308,670=>659,671=>485,672=>712,673=>515,674=>515,\n675=>1040,676=>1093,677=>1039,678=>876,679=>691,680=>836,681=>923,682=>712,683=>702,684=>532,\n685=>374,686=>609,687=>710,688=>410,689=>410,690=>197,691=>284,692=>284,693=>284,694=>369,\n695=>532,696=>375,697=>271,698=>469,699=>342,700=>342,701=>342,702=>330,703=>330,704=>293,\n705=>293,706=>450,707=>450,708=>450,709=>450,711=>450,712=>275,713=>450,714=>450,715=>450,\n716=>275,717=>450,718=>450,719=>450,720=>303,721=>303,722=>330,723=>330,724=>450,725=>450,\n726=>374,727=>295,728=>450,729=>450,730=>450,731=>450,733=>450,734=>315,735=>450,736=>370,\n737=>197,738=>343,739=>371,740=>293,741=>450,742=>450,743=>450,744=>450,745=>450,748=>450,\n749=>450,750=>591,755=>450,759=>450,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,\n774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,\n784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,\n794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,\n804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,\n814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,\n824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,\n834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,\n844=>0,845=>0,846=>0,847=>0,849=>0,850=>0,851=>0,855=>0,856=>0,858=>0,\n860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,880=>628,881=>508,882=>919,\n883=>752,884=>271,885=>271,886=>753,887=>630,890=>450,891=>533,892=>495,893=>494,894=>360,\n900=>397,901=>450,902=>717,903=>342,904=>761,905=>908,906=>507,908=>801,910=>882,911=>804,\n912=>351,913=>696,914=>686,915=>573,916=>696,917=>615,918=>652,919=>753,920=>765,921=>334,\n922=>697,923=>696,924=>896,925=>753,926=>568,927=>765,928=>753,929=>659,931=>615,932=>614,\n933=>651,934=>765,935=>694,936=>765,937=>765,938=>334,939=>651,940=>618,941=>501,942=>641,\n943=>351,944=>607,945=>618,946=>644,947=>613,948=>618,949=>501,950=>532,951=>641,952=>618,\n953=>351,954=>639,955=>569,956=>662,957=>613,958=>532,959=>618,960=>712,961=>644,962=>533,\n963=>701,964=>574,965=>607,966=>704,967=>580,968=>714,969=>782,970=>351,971=>607,972=>618,\n973=>607,974=>782,975=>697,976=>585,977=>594,978=>671,979=>883,980=>671,981=>716,982=>782,\n983=>669,984=>765,985=>618,986=>660,987=>533,988=>615,989=>444,990=>632,991=>593,992=>827,\n993=>564,994=>983,995=>753,996=>749,997=>644,998=>835,999=>669,1000=>660,1001=>585,1002=>709,\n1003=>604,1004=>677,1005=>644,1006=>614,1007=>531,1008=>669,1009=>644,1010=>533,1011=>308,1012=>765,\n1013=>580,1014=>580,1015=>664,1016=>644,1017=>660,1018=>896,1019=>659,1020=>644,1021=>628,1022=>660,\n1023=>628,1024=>615,1025=>615,1026=>791,1027=>573,1028=>660,1029=>648,1030=>334,1031=>334,1032=>334,\n1033=>1039,1034=>1017,1035=>791,1036=>735,1037=>753,1038=>694,1039=>753,1040=>696,1041=>686,1042=>686,\n1043=>573,1044=>801,1045=>615,1046=>1102,1047=>639,1048=>753,1049=>753,1050=>735,1051=>747,1052=>896,\n1053=>753,1054=>765,1055=>753,1056=>659,1057=>660,1058=>614,1059=>694,1060=>892,1061=>694,1062=>835,\n1063=>727,1064=>1112,1065=>1193,1066=>845,1067=>932,1068=>686,1069=>660,1070=>1056,1071=>693,1072=>607,\n1073=>628,1074=>569,1075=>470,1076=>727,1077=>610,1078=>896,1079=>523,1080=>630,1081=>630,1082=>611,\n1083=>659,1084=>735,1085=>622,1086=>618,1087=>622,1088=>644,1089=>533,1090=>521,1091=>586,1092=>893,\n1093=>580,1094=>667,1095=>618,1096=>956,1097=>995,1098=>676,1099=>813,1100=>569,1101=>533,1102=>875,\n1103=>578,1104=>610,1105=>610,1106=>642,1107=>470,1108=>533,1109=>536,1110=>308,1111=>308,1112=>308,\n1113=>892,1114=>860,1115=>661,1116=>611,1117=>630,1118=>586,1119=>622,1120=>983,1121=>782,1122=>756,\n1123=>662,1124=>911,1125=>755,1126=>893,1127=>749,1128=>1222,1129=>1009,1130=>765,1131=>618,1132=>1112,\n1133=>906,1134=>626,1135=>501,1136=>967,1137=>955,1138=>765,1139=>618,1140=>765,1141=>625,1142=>765,\n1143=>625,1144=>1033,1145=>939,1146=>967,1147=>776,1148=>1265,1149=>1055,1150=>983,1151=>782,1152=>660,\n1153=>533,1154=>587,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>376,1161=>376,1162=>861,\n1163=>726,1164=>686,1165=>550,1166=>659,1167=>644,1168=>573,1169=>470,1170=>599,1171=>488,1172=>727,\n1173=>602,1174=>1102,1175=>896,1176=>639,1177=>523,1178=>697,1179=>611,1180=>735,1181=>611,1182=>735,\n1183=>611,1184=>914,1185=>743,1186=>860,1187=>727,1188=>992,1189=>787,1190=>1146,1191=>915,1192=>856,\n1193=>772,1194=>660,1195=>533,1196=>614,1197=>521,1198=>651,1199=>586,1200=>651,1201=>586,1202=>694,\n1203=>580,1204=>1001,1205=>900,1206=>727,1207=>618,1208=>727,1209=>618,1210=>727,1211=>641,1212=>923,\n1213=>729,1214=>923,1215=>729,1216=>334,1217=>1102,1218=>896,1219=>697,1220=>567,1221=>855,1222=>725,\n1223=>753,1224=>622,1225=>861,1226=>726,1227=>727,1228=>618,1229=>1003,1230=>839,1231=>308,1232=>696,\n1233=>607,1234=>696,1235=>607,1236=>976,1237=>943,1238=>615,1239=>610,1240=>764,1241=>610,1242=>764,\n1243=>610,1244=>1102,1245=>896,1246=>639,1247=>523,1248=>695,1249=>576,1250=>753,1251=>630,1252=>753,\n1253=>630,1254=>765,1255=>618,1256=>765,1257=>618,1258=>765,1259=>618,1260=>660,1261=>533,1262=>694,\n1263=>586,1264=>694,1265=>586,1266=>694,1267=>586,1268=>727,1269=>618,1270=>573,1271=>470,1272=>932,\n1273=>813,1274=>599,1275=>488,1276=>694,1277=>580,1278=>694,1279=>580,1280=>686,1281=>547,1282=>1043,\n1283=>804,1284=>1007,1285=>828,1286=>745,1287=>624,1288=>1117,1289=>915,1290=>1160,1291=>912,1292=>755,\n1293=>574,1294=>844,1295=>722,1296=>626,1297=>501,1298=>747,1299=>659,1300=>1157,1301=>961,1302=>958,\n1303=>881,1304=>973,1305=>912,1306=>765,1307=>644,1308=>993,1309=>831,1312=>1140,1313=>953,1314=>1146,\n1315=>915,1316=>861,1317=>726,1329=>886,1330=>730,1331=>886,1332=>886,1333=>730,1334=>699,1335=>730,\n1336=>730,1337=>877,1338=>886,1339=>730,1340=>639,1341=>970,1342=>1022,1343=>730,1344=>639,1345=>681,\n1346=>886,1347=>789,1348=>886,1349=>714,1350=>886,1351=>730,1352=>730,1353=>730,1354=>862,1355=>699,\n1356=>886,1357=>730,1358=>886,1359=>648,1360=>730,1361=>714,1362=>805,1363=>765,1364=>842,1365=>765,\n1366=>648,1369=>330,1370=>342,1371=>495,1372=>495,1373=>342,1374=>491,1375=>468,1377=>938,1378=>641,\n1379=>779,1380=>781,1381=>641,1382=>735,1383=>588,1384=>641,1385=>729,1386=>735,1387=>641,1388=>448,\n1389=>916,1390=>644,1391=>641,1392=>641,1393=>644,1394=>737,1395=>641,1396=>676,1397=>308,1398=>794,\n1399=>502,1400=>641,1401=>502,1402=>938,1403=>502,1404=>777,1405=>641,1406=>732,1407=>938,1408=>641,\n1409=>644,1410=>514,1411=>938,1412=>700,1413=>618,1414=>648,1415=>776,1417=>360,1418=>438,1456=>0,\n1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1466=>0,\n1467=>0,1468=>0,1469=>0,1470=>374,1471=>0,1472=>334,1473=>0,1474=>0,1475=>334,1478=>447,\n1479=>0,1488=>676,1489=>605,1490=>483,1491=>589,1492=>641,1493=>308,1494=>442,1495=>641,1496=>651,\n1497=>308,1498=>584,1499=>584,1500=>611,1501=>641,1502=>698,1503=>308,1504=>447,1505=>696,1506=>610,\n1507=>646,1508=>618,1509=>565,1510=>676,1511=>656,1512=>584,1513=>854,1514=>676,1520=>598,1521=>598,\n1522=>597,1523=>399,1524=>639,1542=>600,1543=>600,1545=>795,1546=>1042,1548=>342,1557=>0,1563=>360,\n1567=>522,1569=>460,1570=>308,1571=>308,1572=>559,1573=>308,1574=>825,1575=>308,1576=>904,1577=>531,\n1578=>904,1579=>904,1580=>648,1581=>648,1582=>648,1583=>461,1584=>461,1585=>518,1586=>518,1587=>1242,\n1588=>1242,1589=>1210,1590=>1210,1591=>935,1592=>935,1593=>615,1594=>615,1600=>308,1601=>1045,1602=>804,\n1603=>825,1604=>781,1605=>659,1606=>768,1607=>531,1608=>559,1609=>825,1610=>825,1611=>0,1612=>0,\n1613=>0,1614=>0,1615=>0,1616=>0,1617=>0,1618=>0,1619=>0,1620=>0,1621=>0,1626=>450,\n1632=>549,1633=>549,1634=>549,1635=>549,1636=>549,1637=>549,1638=>549,1639=>549,1640=>549,1641=>549,\n1642=>549,1643=>336,1644=>342,1645=>490,1646=>904,1647=>804,1652=>263,1657=>904,1658=>904,1659=>904,\n1660=>904,1661=>904,1662=>904,1663=>904,1664=>904,1665=>648,1666=>648,1667=>648,1668=>648,1669=>648,\n1670=>648,1671=>648,1681=>518,1682=>518,1685=>613,1688=>518,1697=>1045,1700=>1045,1702=>1045,1705=>921,\n1711=>921,1717=>781,1722=>768,1727=>648,1734=>559,1740=>825,1742=>825,1749=>531,1776=>549,1777=>549,\n1778=>549,1779=>549,1780=>549,1781=>549,1782=>549,1783=>549,1784=>549,1785=>549,1984=>626,1985=>626,\n1986=>626,1987=>626,1988=>626,1989=>626,1990=>626,1991=>626,1992=>626,1993=>626,1994=>308,1995=>492,\n1996=>489,1997=>586,1998=>622,1999=>622,2000=>534,2001=>622,2002=>813,2003=>496,2004=>496,2005=>564,\n2006=>619,2007=>399,2008=>920,2009=>456,2010=>743,2011=>622,2012=>586,2013=>821,2014=>564,2015=>636,\n2016=>456,2017=>586,2018=>517,2019=>564,2020=>564,2021=>564,2022=>517,2023=>517,2027=>0,2028=>0,\n2029=>0,2030=>0,2031=>0,2032=>0,2033=>0,2034=>0,2035=>0,2036=>342,2037=>342,2040=>622,\n2041=>622,2042=>374,3647=>668,3713=>710,3714=>673,3716=>674,3719=>512,3720=>668,3722=>669,3725=>685,\n3732=>635,3733=>633,3734=>672,3735=>737,3737=>657,3738=>654,3739=>654,3740=>830,3741=>744,3742=>779,\n3743=>779,3745=>752,3746=>685,3747=>692,3749=>691,3751=>642,3754=>744,3755=>928,3757=>651,3758=>705,\n3759=>840,3760=>620,3761=>0,3762=>549,3763=>549,3764=>0,3765=>0,3766=>0,3767=>0,3768=>0,\n3769=>0,3771=>0,3772=>0,3773=>603,3776=>464,3777=>774,3778=>464,3779=>584,3780=>569,3782=>683,\n3784=>0,3785=>0,3786=>0,3787=>0,3788=>0,3789=>0,3792=>694,3793=>694,3794=>624,3795=>752,\n3796=>655,3797=>655,3798=>764,3799=>710,3800=>683,3801=>818,3804=>1227,3805=>1227,4256=>826,4257=>669,\n4258=>665,4259=>753,4260=>584,4261=>696,4262=>771,4263=>800,4264=>477,4265=>570,4266=>771,4267=>810,\n4268=>579,4269=>813,4270=>732,4271=>677,4272=>782,4273=>579,4274=>579,4275=>797,4276=>797,4277=>660,\n4278=>587,4279=>579,4280=>582,4281=>579,4282=>710,4283=>812,4284=>570,4285=>557,4286=>579,4287=>700,\n4288=>802,4289=>541,4290=>668,4291=>554,4292=>570,4293=>668,4304=>497,4305=>497,4306=>536,4307=>734,\n4308=>505,4309=>506,4310=>497,4311=>744,4312=>497,4313=>488,4314=>967,4315=>506,4316=>507,4317=>730,\n4318=>497,4319=>532,4320=>740,4321=>506,4322=>621,4323=>525,4324=>732,4325=>505,4326=>731,4327=>506,\n4328=>506,4329=>507,4330=>568,4331=>506,4332=>506,4333=>497,4334=>506,4335=>506,4336=>501,4337=>543,\n4338=>497,4339=>497,4340=>497,4341=>544,4342=>767,4343=>571,4344=>506,4345=>536,4346=>487,4347=>615,\n4348=>331,5121=>696,5122=>696,5123=>696,5124=>696,5125=>814,5126=>814,5127=>814,5129=>814,5130=>814,\n5131=>814,5132=>916,5133=>908,5134=>916,5135=>908,5136=>916,5137=>908,5138=>1034,5139=>1025,5140=>1034,\n5141=>1025,5142=>814,5143=>1034,5144=>1028,5145=>1034,5146=>1028,5147=>814,5149=>278,5150=>476,5151=>382,\n5152=>382,5153=>355,5154=>355,5155=>355,5156=>355,5157=>507,5158=>423,5159=>278,5160=>355,5161=>355,\n5162=>355,5163=>1092,5164=>888,5165=>1094,5166=>1167,5167=>696,5168=>696,5169=>696,5170=>696,5171=>797,\n5172=>797,5173=>797,5175=>797,5176=>797,5177=>797,5178=>916,5179=>908,5180=>916,5181=>908,5182=>916,\n5183=>908,5184=>1034,5185=>1025,5186=>1034,5187=>1025,5188=>1034,5189=>1028,5190=>1034,5191=>1028,5192=>797,\n5193=>518,5194=>206,5196=>730,5197=>730,5198=>730,5199=>730,5200=>734,5201=>734,5202=>734,5204=>734,\n5205=>734,5206=>734,5207=>950,5208=>943,5209=>950,5210=>943,5211=>950,5212=>943,5213=>954,5214=>949,\n5215=>954,5216=>949,5217=>954,5218=>946,5219=>954,5220=>946,5221=>954,5222=>435,5223=>904,5224=>904,\n5225=>921,5226=>915,5227=>668,5228=>668,5229=>668,5230=>668,5231=>668,5232=>668,5233=>668,5234=>668,\n5235=>668,5236=>926,5237=>877,5238=>882,5239=>877,5240=>882,5241=>877,5242=>926,5243=>877,5244=>926,\n5245=>877,5246=>882,5247=>877,5248=>882,5249=>877,5250=>882,5251=>451,5252=>451,5253=>844,5254=>844,\n5255=>844,5256=>844,5257=>668,5258=>668,5259=>668,5260=>668,5261=>668,5262=>668,5263=>668,5264=>668,\n5265=>668,5266=>926,5267=>877,5268=>926,5269=>877,5270=>926,5271=>877,5272=>926,5273=>877,5274=>926,\n5275=>877,5276=>926,5277=>877,5278=>926,5279=>877,5280=>926,5281=>451,5282=>451,5283=>563,5284=>563,\n5285=>563,5286=>563,5287=>563,5288=>563,5289=>563,5290=>563,5291=>563,5292=>793,5293=>769,5294=>777,\n5295=>786,5296=>777,5297=>786,5298=>793,5299=>786,5300=>793,5301=>786,5302=>777,5303=>786,5304=>777,\n5305=>786,5306=>777,5307=>392,5308=>493,5309=>392,5312=>889,5313=>889,5314=>889,5315=>889,5316=>838,\n5317=>838,5318=>838,5319=>838,5320=>838,5321=>1114,5322=>1122,5323=>1080,5324=>1105,5325=>1080,5326=>1105,\n5327=>838,5328=>593,5329=>447,5330=>593,5331=>889,5332=>889,5333=>889,5334=>889,5335=>838,5336=>838,\n5337=>838,5338=>838,5339=>838,5340=>1107,5341=>1122,5342=>1155,5343=>1105,5344=>1155,5345=>1105,5346=>1105,\n5347=>1093,5348=>1105,5349=>1093,5350=>1155,5351=>1105,5352=>1155,5353=>1105,5354=>593,5356=>797,5357=>657,\n5358=>657,5359=>657,5360=>657,5361=>657,5362=>657,5363=>657,5364=>657,5365=>657,5366=>897,5367=>862,\n5368=>870,5369=>890,5370=>870,5371=>890,5372=>897,5373=>862,5374=>897,5375=>862,5376=>870,5377=>890,\n5378=>870,5379=>890,5380=>870,5381=>443,5382=>414,5383=>443,5392=>831,5393=>831,5394=>831,5395=>1022,\n5396=>1022,5397=>1022,5398=>1022,5399=>1088,5400=>1081,5401=>1088,5402=>1081,5403=>1088,5404=>1081,5405=>1288,\n5406=>1278,5407=>1288,5408=>1278,5409=>1288,5410=>1278,5411=>1288,5412=>1278,5413=>671,5414=>698,5415=>698,\n5416=>698,5417=>698,5418=>698,5419=>698,5420=>698,5421=>698,5422=>698,5423=>902,5424=>903,5425=>911,\n5426=>896,5427=>911,5428=>896,5429=>902,5430=>903,5431=>902,5432=>903,5433=>911,5434=>896,5435=>911,\n5436=>896,5437=>911,5438=>445,5440=>355,5441=>458,5442=>929,5443=>929,5444=>878,5445=>878,5446=>878,\n5447=>878,5448=>659,5449=>659,5450=>659,5451=>659,5452=>659,5453=>659,5454=>902,5455=>863,5456=>445,\n5458=>797,5459=>696,5460=>696,5461=>696,5462=>696,5463=>835,5464=>835,5465=>835,5466=>835,5467=>1055,\n5468=>1028,5469=>542,5470=>730,5471=>730,5472=>730,5473=>730,5474=>730,5475=>730,5476=>734,5477=>734,\n5478=>734,5479=>734,5480=>954,5481=>946,5482=>493,5492=>879,5493=>879,5494=>879,5495=>879,5496=>879,\n5497=>879,5498=>879,5499=>556,5500=>753,5501=>458,5502=>1114,5503=>1114,5504=>1114,5505=>1114,5506=>1114,\n5507=>1114,5508=>1114,5509=>890,5514=>879,5515=>879,5516=>879,5517=>879,5518=>1432,5519=>1432,5520=>1432,\n5521=>1165,5522=>1165,5523=>1432,5524=>1432,5525=>763,5526=>1146,5536=>889,5537=>889,5538=>838,5539=>838,\n5540=>838,5541=>838,5542=>593,5543=>698,5544=>698,5545=>698,5546=>698,5547=>698,5548=>698,5549=>698,\n5550=>445,5551=>668,5598=>747,5601=>747,5702=>446,5703=>446,5742=>371,5743=>1114,5744=>1432,5745=>1814,\n5746=>1814,5747=>1548,5748=>1510,5749=>1814,5750=>1814,5760=>489,5761=>573,5762=>851,5763=>1128,5764=>1406,\n5765=>1684,5766=>564,5767=>842,5768=>1128,5769=>1403,5770=>1684,5771=>512,5772=>789,5773=>1068,5774=>1347,\n5775=>1626,5776=>573,5777=>851,5778=>1116,5779=>1399,5780=>1684,5781=>512,5782=>512,5783=>709,5784=>1110,\n5785=>1403,5786=>666,5787=>574,5788=>574,7424=>586,7425=>750,7426=>943,7427=>547,7428=>533,7429=>608,\n7430=>608,7431=>502,7432=>501,7433=>308,7434=>444,7435=>598,7436=>485,7437=>735,7438=>630,7439=>618,\n7440=>533,7441=>594,7442=>594,7443=>594,7444=>984,7446=>618,7447=>618,7448=>500,7449=>578,7450=>578,\n7451=>521,7452=>571,7453=>663,7454=>853,7455=>625,7456=>586,7457=>831,7458=>523,7459=>581,7462=>485,\n7463=>586,7464=>622,7465=>500,7466=>703,7467=>659,7468=>438,7469=>615,7470=>432,7472=>470,7473=>387,\n7474=>387,7475=>465,7476=>474,7477=>211,7478=>211,7479=>439,7480=>361,7481=>563,7482=>474,7483=>474,\n7484=>481,7485=>458,7486=>415,7487=>436,7488=>387,7489=>460,7490=>625,7491=>412,7492=>412,7493=>431,\n7494=>641,7495=>431,7496=>431,7497=>431,7498=>431,7499=>347,7500=>347,7501=>431,7502=>197,7503=>438,\n7504=>597,7505=>410,7506=>439,7507=>372,7508=>439,7509=>439,7510=>431,7511=>349,7512=>410,7513=>416,\n7514=>597,7515=>451,7517=>405,7518=>386,7519=>389,7520=>443,7521=>365,7522=>197,7523=>284,7524=>410,\n7525=>451,7526=>405,7527=>386,7528=>405,7529=>443,7530=>365,7543=>644,7544=>474,7547=>491,7557=>462,\n7579=>431,7580=>372,7581=>372,7582=>439,7583=>347,7584=>339,7585=>313,7586=>431,7587=>410,7588=>312,\n7589=>253,7590=>312,7591=>312,7592=>388,7593=>293,7594=>296,7595=>333,7596=>598,7597=>597,7598=>505,\n7599=>505,7600=>403,7601=>439,7602=>488,7603=>379,7604=>356,7605=>349,7606=>524,7607=>444,7608=>359,\n7609=>405,7610=>451,7611=>375,7612=>471,7613=>422,7614=>409,7615=>382,7620=>0,7621=>0,7622=>0,\n7623=>0,7624=>0,7625=>0,7680=>696,7681=>607,7682=>686,7683=>644,7684=>686,7685=>644,7686=>686,\n7687=>644,7688=>660,7689=>533,7690=>747,7691=>644,7692=>747,7693=>644,7694=>747,7695=>644,7696=>747,\n7697=>644,7698=>747,7699=>644,7700=>615,7701=>610,7702=>615,7703=>610,7704=>615,7705=>610,7706=>615,\n7707=>610,7708=>615,7709=>610,7710=>615,7711=>391,7712=>738,7713=>644,7714=>753,7715=>641,7716=>753,\n7717=>641,7718=>753,7719=>641,7720=>753,7721=>641,7722=>753,7723=>641,7724=>334,7725=>308,7726=>334,\n7727=>308,7728=>697,7729=>598,7730=>697,7731=>598,7732=>697,7733=>598,7734=>573,7735=>308,7736=>573,\n7737=>308,7738=>573,7739=>308,7740=>573,7741=>308,7742=>896,7743=>938,7744=>896,7745=>938,7746=>896,\n7747=>938,7748=>753,7749=>641,7750=>753,7751=>641,7752=>753,7753=>641,7754=>753,7755=>641,7756=>765,\n7757=>618,7758=>765,7759=>618,7760=>765,7761=>618,7762=>765,7763=>618,7764=>659,7765=>644,7766=>659,\n7767=>644,7768=>693,7769=>444,7770=>693,7771=>444,7772=>693,7773=>444,7774=>693,7775=>444,7776=>648,\n7777=>536,7778=>648,7779=>536,7780=>648,7781=>536,7782=>648,7783=>536,7784=>648,7785=>536,7786=>614,\n7787=>430,7788=>614,7789=>430,7790=>614,7791=>430,7792=>614,7793=>430,7794=>730,7795=>641,7796=>730,\n7797=>641,7798=>730,7799=>641,7800=>730,7801=>641,7802=>730,7803=>641,7804=>696,7805=>586,7806=>696,\n7807=>586,7808=>993,7809=>831,7810=>993,7811=>831,7812=>993,7813=>831,7814=>993,7815=>831,7816=>993,\n7817=>831,7818=>694,7819=>580,7820=>694,7821=>580,7822=>651,7823=>586,7824=>652,7825=>523,7826=>652,\n7827=>523,7828=>652,7829=>523,7830=>641,7831=>430,7832=>831,7833=>586,7834=>607,7835=>391,7838=>806,\n7839=>618,7840=>696,7841=>607,7842=>696,7843=>607,7844=>696,7845=>607,7846=>696,7847=>607,7848=>696,\n7849=>607,7850=>696,7851=>607,7852=>696,7853=>607,7854=>696,7855=>607,7856=>696,7857=>607,7858=>696,\n7859=>607,7860=>696,7861=>607,7862=>696,7863=>607,7864=>615,7865=>610,7866=>615,7867=>610,7868=>615,\n7869=>610,7870=>615,7871=>610,7872=>615,7873=>610,7874=>615,7875=>610,7876=>615,7877=>610,7878=>615,\n7879=>610,7880=>334,7881=>308,7882=>334,7883=>308,7884=>765,7885=>618,7886=>765,7887=>618,7888=>765,\n7889=>618,7890=>765,7891=>618,7892=>765,7893=>618,7894=>765,7895=>618,7896=>765,7897=>618,7898=>786,\n7899=>618,7900=>786,7901=>618,7902=>786,7903=>618,7904=>786,7905=>618,7906=>786,7907=>618,7908=>730,\n7909=>641,7910=>730,7911=>641,7912=>751,7913=>641,7914=>751,7915=>641,7916=>751,7917=>641,7918=>751,\n7919=>641,7920=>751,7921=>641,7922=>651,7923=>586,7924=>651,7925=>586,7926=>651,7927=>586,7928=>651,\n7929=>586,7936=>618,7937=>618,7938=>618,7939=>618,7940=>618,7941=>618,7942=>618,7943=>618,7944=>696,\n7945=>696,7946=>937,7947=>939,7948=>841,7949=>866,7950=>751,7951=>773,7952=>501,7953=>501,7954=>501,\n7955=>501,7956=>501,7957=>501,7960=>712,7961=>715,7962=>989,7963=>986,7964=>920,7965=>947,7968=>641,\n7969=>641,7970=>641,7971=>641,7972=>641,7973=>641,7974=>641,7975=>641,7976=>851,7977=>856,7978=>1125,\n7979=>1125,7980=>1062,7981=>1085,7982=>948,7983=>956,7984=>351,7985=>351,7986=>351,7987=>351,7988=>351,\n7989=>351,7990=>351,7991=>351,7992=>435,7993=>440,7994=>699,7995=>707,7996=>641,7997=>664,7998=>544,\n7999=>544,8000=>618,8001=>618,8002=>618,8003=>618,8004=>618,8005=>618,8008=>802,8009=>839,8010=>1099,\n8011=>1101,8012=>947,8013=>974,8016=>607,8017=>607,8018=>607,8019=>607,8020=>607,8021=>607,8022=>607,\n8023=>607,8025=>837,8027=>1065,8029=>1079,8031=>944,8032=>782,8033=>782,8034=>782,8035=>782,8036=>782,\n8037=>782,8038=>782,8039=>782,8040=>817,8041=>862,8042=>1121,8043=>1126,8044=>968,8045=>994,8046=>925,\n8047=>968,8048=>618,8049=>618,8050=>501,8051=>501,8052=>641,8053=>641,8054=>351,8055=>351,8056=>618,\n8057=>618,8058=>607,8059=>607,8060=>782,8061=>782,8064=>618,8065=>618,8066=>618,8067=>618,8068=>618,\n8069=>618,8070=>618,8071=>618,8072=>696,8073=>696,8074=>937,8075=>939,8076=>841,8077=>866,8078=>751,\n8079=>773,8080=>641,8081=>641,8082=>641,8083=>641,8084=>641,8085=>641,8086=>641,8087=>641,8088=>851,\n8089=>856,8090=>1125,8091=>1125,8092=>1062,8093=>1085,8094=>948,8095=>956,8096=>782,8097=>782,8098=>782,\n8099=>782,8100=>782,8101=>782,8102=>782,8103=>782,8104=>817,8105=>862,8106=>1121,8107=>1126,8108=>968,\n8109=>994,8110=>925,8111=>968,8112=>618,8113=>618,8114=>618,8115=>618,8116=>618,8118=>618,8119=>618,\n8120=>696,8121=>696,8122=>789,8123=>717,8124=>696,8125=>450,8126=>450,8127=>450,8128=>450,8129=>450,\n8130=>641,8131=>641,8132=>641,8134=>641,8135=>641,8136=>836,8137=>761,8138=>972,8139=>908,8140=>753,\n8141=>450,8142=>450,8143=>450,8144=>351,8145=>351,8146=>351,8147=>351,8150=>351,8151=>351,8152=>334,\n8153=>334,8154=>559,8155=>507,8157=>450,8158=>450,8159=>450,8160=>607,8161=>607,8162=>607,8163=>607,\n8164=>644,8165=>644,8166=>607,8167=>607,8168=>651,8169=>651,8170=>918,8171=>882,8172=>754,8173=>450,\n8174=>450,8175=>450,8178=>782,8179=>782,8180=>782,8182=>782,8183=>782,8184=>958,8185=>801,8186=>976,\n8187=>804,8188=>765,8189=>450,8190=>450,8192=>450,8193=>900,8194=>450,8195=>900,8196=>296,8197=>225,\n8198=>150,8199=>626,8200=>342,8201=>180,8202=>89,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,\n8208=>374,8209=>374,8210=>626,8213=>900,8214=>450,8215=>450,8219=>342,8223=>591,8227=>575,8228=>299,\n8229=>600,8231=>313,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>180,8241=>1698,8242=>237,\n8243=>402,8244=>567,8245=>237,8246=>402,8247=>567,8248=>659,8251=>875,8252=>564,8253=>522,8254=>450,\n8255=>745,8256=>745,8257=>296,8258=>920,8259=>450,8260=>150,8261=>411,8262=>411,8263=>927,8264=>746,\n8265=>746,8266=>461,8267=>572,8268=>450,8269=>450,8270=>470,8271=>360,8272=>745,8273=>470,8274=>500,\n8275=>900,8276=>745,8277=>754,8278=>615,8279=>731,8280=>754,8281=>754,8282=>342,8283=>784,8284=>754,\n8285=>342,8286=>342,8287=>200,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8298=>0,8299=>0,\n8300=>0,8301=>0,8302=>0,8303=>0,8304=>394,8305=>197,8308=>394,8309=>394,8310=>394,8311=>394,\n8312=>394,8313=>394,8314=>475,8315=>475,8316=>475,8317=>259,8318=>259,8319=>410,8320=>394,8321=>394,\n8322=>394,8323=>394,8324=>394,8325=>394,8326=>394,8327=>394,8328=>394,8329=>394,8330=>475,8331=>475,\n8332=>475,8333=>259,8334=>259,8336=>412,8337=>431,8338=>439,8339=>371,8340=>431,8352=>836,8353=>626,\n8354=>626,8355=>626,8356=>626,8357=>938,8358=>753,8359=>1366,8360=>1084,8361=>993,8362=>813,8363=>626,\n8365=>626,8366=>614,8367=>1252,8368=>626,8369=>626,8370=>626,8371=>626,8372=>773,8373=>626,8400=>0,\n8401=>0,8406=>0,8407=>0,8411=>0,8412=>0,8417=>0,8448=>1007,8449=>1053,8450=>660,8451=>1090,\n8452=>806,8453=>982,8454=>1029,8455=>553,8456=>628,8457=>978,8459=>965,8460=>822,8461=>799,8462=>641,\n8463=>641,8464=>537,8465=>627,8466=>771,8467=>424,8468=>876,8469=>753,8470=>1083,8471=>900,8472=>627,\n8473=>675,8474=>765,8475=>844,8476=>732,8477=>721,8478=>807,8479=>639,8480=>917,8481=>1152,8483=>679,\n8484=>679,8485=>520,8486=>765,8487=>765,8488=>686,8489=>304,8490=>697,8491=>696,8492=>835,8493=>736,\n8494=>769,8495=>572,8496=>656,8497=>727,8498=>615,8499=>1065,8500=>418,8501=>714,8502=>658,8503=>444,\n8504=>615,8505=>342,8506=>851,8507=>1213,8508=>710,8509=>663,8510=>589,8511=>776,8512=>756,8513=>697,\n8514=>501,8515=>573,8516=>684,8517=>747,8518=>644,8519=>610,8520=>308,8521=>308,8523=>785,8526=>492,\n8531=>932,8532=>932,8533=>932,8534=>932,8535=>932,8536=>932,8537=>932,8538=>932,8539=>932,8540=>932,\n8541=>932,8542=>932,8543=>554,8544=>334,8545=>593,8546=>851,8547=>989,8548=>696,8549=>989,8550=>1247,\n8551=>1505,8552=>1008,8553=>694,8554=>1008,8555=>1266,8556=>573,8557=>660,8558=>747,8559=>896,8560=>308,\n8561=>546,8562=>785,8563=>885,8564=>586,8565=>866,8566=>1104,8567=>1342,8568=>872,8569=>580,8570=>872,\n8571=>1110,8572=>308,8573=>533,8574=>644,8575=>938,8576=>1160,8577=>747,8578=>1160,8579=>660,8580=>533,\n8592=>754,8593=>754,8594=>754,8595=>754,8596=>754,8597=>754,8598=>754,8599=>754,8600=>754,8601=>754,\n8602=>754,8603=>754,8604=>754,8605=>754,8606=>754,8607=>754,8608=>754,8609=>754,8610=>754,8611=>754,\n8612=>754,8613=>754,8614=>754,8615=>754,8616=>754,8617=>754,8618=>754,8619=>754,8620=>754,8621=>754,\n8622=>754,8623=>754,8624=>754,8625=>754,8626=>754,8627=>754,8628=>754,8629=>754,8630=>754,8631=>754,\n8632=>754,8633=>754,8634=>754,8635=>754,8636=>754,8637=>754,8638=>754,8639=>754,8640=>754,8641=>754,\n8642=>754,8643=>754,8644=>754,8645=>754,8646=>754,8647=>754,8648=>754,8649=>754,8650=>754,8651=>754,\n8652=>754,8653=>754,8654=>754,8655=>754,8656=>754,8657=>754,8658=>754,8659=>754,8660=>754,8661=>754,\n8662=>754,8663=>754,8664=>754,8665=>754,8666=>754,8667=>754,8668=>754,8669=>754,8670=>754,8671=>754,\n8672=>754,8673=>754,8674=>754,8675=>754,8676=>754,8677=>754,8678=>754,8679=>754,8680=>754,8681=>754,\n8682=>754,8683=>754,8684=>754,8685=>754,8686=>754,8687=>754,8688=>754,8689=>754,8690=>754,8691=>754,\n8692=>754,8693=>754,8694=>754,8695=>754,8696=>754,8697=>754,8698=>754,8699=>754,8700=>754,8701=>754,\n8702=>754,8703=>754,8704=>696,8705=>626,8706=>489,8707=>615,8708=>615,8709=>771,8710=>627,8711=>627,\n8712=>807,8713=>807,8714=>675,8715=>807,8716=>807,8717=>675,8718=>572,8719=>708,8720=>708,8721=>646,\n8722=>754,8723=>754,8724=>626,8725=>329,8726=>626,8727=>754,8728=>563,8729=>342,8730=>600,8731=>600,\n8732=>600,8733=>641,8734=>750,8735=>754,8736=>807,8737=>807,8738=>754,8739=>450,8740=>450,8741=>450,\n8742=>450,8743=>730,8744=>730,8745=>730,8746=>730,8747=>549,8748=>835,8749=>1165,8750=>506,8751=>879,\n8752=>1181,8753=>506,8754=>506,8755=>506,8756=>626,8757=>626,8758=>264,8759=>626,8760=>754,8761=>754,\n8762=>754,8763=>754,8764=>754,8765=>754,8766=>754,8767=>754,8768=>337,8769=>754,8770=>754,8771=>754,\n8772=>754,8773=>754,8774=>754,8775=>754,8776=>754,8777=>754,8778=>754,8779=>754,8780=>754,8781=>754,\n8782=>754,8783=>754,8784=>754,8785=>754,8786=>754,8787=>754,8788=>956,8789=>956,8790=>754,8791=>754,\n8792=>754,8793=>754,8794=>754,8795=>754,8796=>754,8797=>754,8798=>754,8799=>754,8800=>754,8801=>754,\n8802=>754,8803=>754,8804=>754,8805=>754,8806=>754,8807=>754,8808=>756,8809=>756,8810=>942,8811=>942,\n8812=>450,8813=>754,8814=>754,8815=>754,8816=>754,8817=>754,8818=>754,8819=>754,8820=>754,8821=>754,\n8822=>754,8823=>754,8824=>754,8825=>754,8826=>754,8827=>754,8828=>754,8829=>754,8830=>754,8831=>754,\n8832=>754,8833=>754,8834=>754,8835=>754,8836=>754,8837=>754,8838=>754,8839=>754,8840=>754,8841=>754,\n8842=>754,8843=>754,8844=>730,8845=>730,8846=>730,8847=>754,8848=>754,8849=>754,8850=>754,8851=>716,\n8852=>716,8853=>754,8854=>754,8855=>754,8856=>754,8857=>754,8858=>754,8859=>754,8860=>754,8861=>754,\n8862=>754,8863=>754,8864=>754,8865=>754,8866=>822,8867=>822,8868=>822,8869=>822,8870=>488,8871=>488,\n8872=>822,8873=>822,8874=>822,8875=>822,8876=>822,8877=>822,8878=>822,8879=>822,8880=>754,8881=>754,\n8882=>754,8883=>754,8884=>754,8885=>754,8886=>900,8887=>900,8888=>754,8889=>754,8890=>488,8891=>730,\n8892=>730,8893=>730,8894=>754,8895=>754,8896=>758,8897=>758,8898=>758,8899=>758,8900=>444,8901=>342,\n8902=>563,8903=>754,8904=>900,8905=>900,8906=>900,8907=>900,8908=>900,8909=>754,8910=>730,8911=>730,\n8912=>754,8913=>754,8914=>754,8915=>754,8916=>754,8917=>754,8918=>754,8919=>754,8920=>1280,8921=>1280,\n8922=>754,8923=>754,8924=>754,8925=>754,8926=>754,8927=>754,8928=>754,8929=>754,8930=>754,8931=>754,\n8932=>754,8933=>754,8934=>754,8935=>754,8936=>754,8937=>754,8938=>754,8939=>754,8940=>754,8941=>754,\n8942=>900,8943=>900,8944=>900,8945=>900,8946=>1042,8947=>807,8948=>675,8949=>807,8950=>807,8951=>675,\n8952=>807,8953=>807,8954=>1042,8955=>807,8956=>675,8957=>807,8958=>675,8959=>807,8960=>542,8961=>542,\n8962=>644,8963=>754,8964=>754,8965=>754,8966=>754,8967=>439,8968=>411,8969=>411,8970=>411,8971=>411,\n8972=>728,8973=>728,8974=>728,8975=>728,8976=>754,8977=>484,8984=>835,8985=>754,8988=>422,8989=>422,\n8990=>422,8991=>422,8992=>549,8993=>549,8996=>1037,8997=>1037,8998=>1272,8999=>1037,9000=>1299,9003=>1272,\n9004=>786,9075=>351,9076=>644,9077=>782,9082=>618,9085=>776,9095=>1037,9108=>786,9115=>450,9116=>450,\n9117=>450,9118=>450,9119=>450,9120=>450,9121=>450,9122=>450,9123=>450,9124=>450,9125=>450,9126=>450,\n9127=>675,9128=>675,9129=>675,9130=>675,9131=>675,9132=>675,9133=>675,9134=>549,9166=>754,9167=>850,\n9187=>786,9189=>692,9250=>644,9251=>644,9312=>762,9313=>762,9314=>762,9315=>762,9316=>762,9317=>762,\n9318=>762,9319=>762,9320=>762,9321=>762,9600=>692,9601=>692,9602=>692,9603=>692,9604=>692,9605=>692,\n9606=>692,9607=>692,9608=>692,9609=>692,9610=>692,9611=>692,9612=>692,9613=>692,9614=>692,9615=>692,\n9616=>692,9617=>692,9618=>692,9619=>692,9620=>692,9621=>692,9622=>692,9623=>692,9624=>692,9625=>692,\n9626=>692,9627=>692,9628=>692,9629=>692,9630=>692,9631=>692,9632=>850,9633=>850,9634=>850,9635=>850,\n9636=>850,9637=>850,9638=>850,9639=>850,9640=>850,9641=>850,9642=>610,9643=>610,9644=>850,9645=>850,\n9646=>495,9647=>495,9648=>692,9649=>692,9650=>692,9651=>692,9652=>452,9653=>452,9654=>692,9655=>692,\n9656=>452,9657=>452,9658=>692,9659=>692,9660=>692,9661=>692,9662=>452,9663=>452,9664=>692,9665=>692,\n9666=>452,9667=>452,9668=>692,9669=>692,9670=>692,9671=>692,9672=>692,9673=>785,9674=>444,9675=>785,\n9676=>785,9677=>785,9678=>785,9679=>785,9680=>785,9681=>785,9682=>785,9683=>785,9684=>785,9685=>785,\n9686=>474,9687=>474,9688=>756,9689=>873,9690=>873,9691=>873,9692=>348,9693=>348,9694=>348,9695=>348,\n9696=>692,9697=>692,9698=>692,9699=>692,9700=>692,9701=>692,9702=>575,9703=>850,9704=>850,9705=>850,\n9706=>850,9707=>850,9708=>692,9709=>692,9710=>692,9711=>1007,9712=>850,9713=>850,9714=>850,9715=>850,\n9716=>785,9717=>785,9718=>785,9719=>785,9720=>692,9721=>692,9722=>692,9723=>747,9724=>747,9725=>659,\n9726=>659,9727=>692,9728=>807,9729=>900,9730=>807,9731=>807,9732=>807,9733=>807,9734=>807,9735=>515,\n9736=>806,9737=>807,9738=>799,9739=>799,9740=>604,9741=>911,9742=>1121,9743=>1125,9744=>807,9745=>807,\n9746=>807,9747=>479,9748=>807,9749=>807,9750=>807,9751=>807,9752=>807,9753=>807,9754=>807,9755=>807,\n9756=>807,9757=>548,9758=>807,9759=>548,9760=>807,9761=>807,9762=>807,9763=>807,9764=>602,9765=>671,\n9766=>584,9767=>705,9768=>490,9769=>807,9770=>807,9771=>807,9772=>639,9773=>807,9774=>807,9775=>807,\n9776=>807,9777=>807,9778=>807,9779=>807,9780=>807,9781=>807,9782=>807,9783=>807,9784=>807,9785=>807,\n9786=>807,9787=>807,9788=>807,9789=>807,9790=>807,9791=>552,9792=>658,9793=>658,9794=>807,9795=>807,\n9796=>807,9797=>807,9798=>807,9799=>807,9800=>807,9801=>807,9802=>807,9803=>807,9804=>807,9805=>807,\n9806=>807,9807=>807,9808=>807,9809=>807,9810=>807,9811=>807,9812=>807,9813=>807,9814=>807,9815=>807,\n9816=>807,9817=>807,9818=>807,9819=>807,9820=>807,9821=>807,9822=>807,9823=>807,9824=>807,9825=>807,\n9826=>807,9827=>807,9828=>807,9829=>807,9830=>807,9831=>807,9832=>807,9833=>424,9834=>574,9835=>807,\n9836=>807,9837=>424,9838=>321,9839=>435,9840=>673,9841=>689,9842=>807,9843=>807,9844=>807,9845=>807,\n9846=>807,9847=>807,9848=>807,9849=>807,9850=>807,9851=>807,9852=>807,9853=>807,9854=>807,9855=>807,\n9856=>782,9857=>782,9858=>782,9859=>782,9860=>782,9861=>782,9862=>807,9863=>807,9864=>807,9865=>807,\n9866=>807,9867=>807,9868=>807,9869=>807,9870=>807,9871=>807,9872=>807,9873=>807,9874=>807,9875=>807,\n9876=>807,9877=>487,9878=>807,9879=>807,9880=>807,9881=>807,9882=>807,9883=>807,9884=>807,9888=>807,\n9889=>632,9890=>903,9891=>977,9892=>1028,9893=>811,9894=>754,9895=>754,9896=>754,9897=>754,9898=>754,\n9899=>754,9900=>754,9901=>754,9902=>754,9903=>754,9904=>759,9905=>754,9906=>658,9907=>659,9908=>659,\n9909=>659,9910=>765,9911=>659,9912=>659,9985=>754,9986=>754,9987=>754,9988=>754,9990=>754,9991=>754,\n9992=>754,9993=>754,9996=>754,9997=>754,9998=>754,9999=>754,10000=>754,10001=>754,10002=>754,10003=>754,\n10004=>754,10005=>754,10006=>754,10007=>754,10008=>754,10009=>754,10010=>754,10011=>754,10012=>754,10013=>754,\n10014=>754,10015=>754,10016=>754,10017=>754,10018=>754,10019=>754,10020=>754,10021=>754,10022=>754,10023=>754,\n10025=>754,10026=>754,10027=>754,10028=>754,10029=>754,10030=>754,10031=>754,10032=>754,10033=>754,10034=>754,\n10035=>754,10036=>754,10037=>754,10038=>754,10039=>754,10040=>754,10041=>754,10042=>754,10043=>754,10044=>754,\n10045=>754,10046=>754,10047=>754,10048=>754,10049=>754,10050=>754,10051=>754,10052=>754,10053=>754,10054=>754,\n10055=>754,10056=>754,10057=>754,10058=>754,10059=>754,10061=>807,10063=>807,10064=>807,10065=>807,10066=>807,\n10070=>807,10072=>754,10073=>754,10074=>754,10075=>312,10076=>312,10077=>528,10078=>528,10081=>754,10082=>754,\n10083=>754,10084=>754,10085=>754,10086=>754,10087=>754,10088=>754,10089=>754,10090=>754,10091=>754,10092=>754,\n10093=>754,10094=>754,10095=>754,10096=>754,10097=>754,10098=>754,10099=>754,10100=>754,10101=>754,10102=>762,\n10103=>762,10104=>762,10105=>762,10106=>762,10107=>762,10108=>762,10109=>762,10110=>762,10111=>762,10112=>754,\n10113=>754,10114=>754,10115=>754,10116=>754,10117=>754,10118=>754,10119=>754,10120=>754,10121=>754,10122=>754,\n10123=>754,10124=>754,10125=>754,10126=>754,10127=>754,10128=>754,10129=>754,10130=>754,10131=>754,10132=>754,\n10136=>754,10137=>754,10138=>754,10139=>754,10140=>754,10141=>754,10142=>754,10143=>754,10144=>754,10145=>754,\n10146=>754,10147=>754,10148=>754,10149=>754,10150=>754,10151=>754,10152=>754,10153=>754,10154=>754,10155=>754,\n10156=>754,10157=>754,10158=>754,10159=>754,10161=>754,10162=>754,10163=>754,10164=>754,10165=>754,10166=>754,\n10167=>754,10168=>754,10169=>754,10170=>754,10171=>754,10172=>754,10173=>754,10174=>754,10181=>411,10182=>411,\n10208=>444,10214=>438,10215=>438,10216=>411,10217=>411,10218=>648,10219=>648,10224=>754,10225=>754,10226=>754,\n10227=>754,10228=>1042,10229=>1290,10230=>1290,10231=>1290,10232=>1290,10233=>1290,10234=>1290,10235=>1290,10236=>1290,\n10237=>1290,10238=>1290,10239=>1290,10240=>703,10241=>703,10242=>703,10243=>703,10244=>703,10245=>703,10246=>703,\n10247=>703,10248=>703,10249=>703,10250=>703,10251=>703,10252=>703,10253=>703,10254=>703,10255=>703,10256=>703,\n10257=>703,10258=>703,10259=>703,10260=>703,10261=>703,10262=>703,10263=>703,10264=>703,10265=>703,10266=>703,\n10267=>703,10268=>703,10269=>703,10270=>703,10271=>703,10272=>703,10273=>703,10274=>703,10275=>703,10276=>703,\n10277=>703,10278=>703,10279=>703,10280=>703,10281=>703,10282=>703,10283=>703,10284=>703,10285=>703,10286=>703,\n10287=>703,10288=>703,10289=>703,10290=>703,10291=>703,10292=>703,10293=>703,10294=>703,10295=>703,10296=>703,\n10297=>703,10298=>703,10299=>703,10300=>703,10301=>703,10302=>703,10303=>703,10304=>703,10305=>703,10306=>703,\n10307=>703,10308=>703,10309=>703,10310=>703,10311=>703,10312=>703,10313=>703,10314=>703,10315=>703,10316=>703,\n10317=>703,10318=>703,10319=>703,10320=>703,10321=>703,10322=>703,10323=>703,10324=>703,10325=>703,10326=>703,\n10327=>703,10328=>703,10329=>703,10330=>703,10331=>703,10332=>703,10333=>703,10334=>703,10335=>703,10336=>703,\n10337=>703,10338=>703,10339=>703,10340=>703,10341=>703,10342=>703,10343=>703,10344=>703,10345=>703,10346=>703,\n10347=>703,10348=>703,10349=>703,10350=>703,10351=>703,10352=>703,10353=>703,10354=>703,10355=>703,10356=>703,\n10357=>703,10358=>703,10359=>703,10360=>703,10361=>703,10362=>703,10363=>703,10364=>703,10365=>703,10366=>703,\n10367=>703,10368=>703,10369=>703,10370=>703,10371=>703,10372=>703,10373=>703,10374=>703,10375=>703,10376=>703,\n10377=>703,10378=>703,10379=>703,10380=>703,10381=>703,10382=>703,10383=>703,10384=>703,10385=>703,10386=>703,\n10387=>703,10388=>703,10389=>703,10390=>703,10391=>703,10392=>703,10393=>703,10394=>703,10395=>703,10396=>703,\n10397=>703,10398=>703,10399=>703,10400=>703,10401=>703,10402=>703,10403=>703,10404=>703,10405=>703,10406=>703,\n10407=>703,10408=>703,10409=>703,10410=>703,10411=>703,10412=>703,10413=>703,10414=>703,10415=>703,10416=>703,\n10417=>703,10418=>703,10419=>703,10420=>703,10421=>703,10422=>703,10423=>703,10424=>703,10425=>703,10426=>703,\n10427=>703,10428=>703,10429=>703,10430=>703,10431=>703,10432=>703,10433=>703,10434=>703,10435=>703,10436=>703,\n10437=>703,10438=>703,10439=>703,10440=>703,10441=>703,10442=>703,10443=>703,10444=>703,10445=>703,10446=>703,\n10447=>703,10448=>703,10449=>703,10450=>703,10451=>703,10452=>703,10453=>703,10454=>703,10455=>703,10456=>703,\n10457=>703,10458=>703,10459=>703,10460=>703,10461=>703,10462=>703,10463=>703,10464=>703,10465=>703,10466=>703,\n10467=>703,10468=>703,10469=>703,10470=>703,10471=>703,10472=>703,10473=>703,10474=>703,10475=>703,10476=>703,\n10477=>703,10478=>703,10479=>703,10480=>703,10481=>703,10482=>703,10483=>703,10484=>703,10485=>703,10486=>703,\n10487=>703,10488=>703,10489=>703,10490=>703,10491=>703,10492=>703,10493=>703,10494=>703,10495=>703,10502=>754,\n10503=>754,10506=>754,10507=>754,10560=>754,10561=>754,10627=>678,10628=>678,10702=>754,10703=>941,10704=>941,\n10705=>900,10706=>900,10707=>900,10708=>900,10709=>900,10731=>444,10746=>754,10747=>754,10752=>900,10753=>900,\n10754=>900,10764=>1495,10765=>506,10766=>506,10767=>506,10768=>506,10769=>506,10770=>506,10771=>506,10772=>506,\n10773=>506,10774=>506,10775=>506,10776=>506,10777=>506,10778=>506,10779=>506,10780=>506,10799=>754,10877=>754,\n10878=>754,10879=>754,10880=>754,10881=>754,10882=>754,10883=>754,10884=>754,10885=>754,10886=>754,10887=>754,\n10888=>754,10889=>754,10890=>754,10891=>754,10892=>754,10893=>754,10894=>754,10895=>754,10896=>754,10897=>754,\n10898=>754,10899=>754,10900=>754,10901=>754,10902=>754,10903=>754,10904=>754,10905=>754,10906=>754,10907=>754,\n10908=>754,10909=>754,10910=>754,10911=>754,10912=>754,10926=>754,10927=>754,10928=>754,10929=>754,10930=>754,\n10931=>754,10932=>754,10933=>754,10934=>754,10935=>754,10936=>754,10937=>754,10938=>754,11001=>754,11002=>754,\n11008=>754,11009=>754,11010=>754,11011=>754,11012=>754,11013=>754,11014=>754,11015=>754,11016=>754,11017=>754,\n11018=>754,11019=>754,11020=>754,11021=>754,11022=>754,11023=>754,11024=>754,11025=>754,11026=>850,11027=>850,\n11028=>850,11029=>850,11030=>692,11031=>692,11032=>692,11033=>692,11034=>850,11039=>782,11040=>782,11041=>786,\n11042=>786,11043=>786,11044=>1007,11091=>782,11092=>782,11360=>573,11361=>324,11362=>573,11363=>659,11364=>693,\n11365=>607,11366=>430,11367=>860,11368=>641,11369=>697,11370=>598,11371=>652,11372=>523,11373=>774,11374=>896,\n11375=>696,11377=>700,11378=>1099,11379=>950,11380=>586,11381=>628,11382=>508,11383=>704,11385=>484,11386=>618,\n11387=>502,11388=>197,11389=>438,11568=>622,11569=>847,11570=>847,11571=>652,11572=>652,11573=>652,11574=>608,\n11575=>696,11576=>696,11577=>615,11578=>615,11579=>721,11580=>890,11581=>685,11582=>561,11583=>685,11584=>847,\n11585=>847,11586=>335,11587=>666,11588=>753,11589=>822,11590=>604,11591=>663,11592=>612,11593=>615,11594=>542,\n11595=>935,11596=>700,11597=>753,11598=>615,11599=>334,11600=>700,11601=>335,11602=>652,11603=>622,11604=>847,\n11605=>847,11606=>753,11607=>335,11608=>752,11609=>847,11610=>847,11611=>660,11612=>789,11613=>694,11614=>660,\n11615=>615,11616=>696,11617=>753,11618=>615,11619=>765,11620=>627,11621=>765,11631=>644,11800=>522,11810=>411,\n11811=>411,11812=>411,11813=>411,11822=>522,19904=>807,19905=>807,19906=>807,19907=>807,19908=>807,19909=>807,\n19910=>807,19911=>807,19912=>807,19913=>807,19914=>807,19915=>807,19916=>807,19917=>807,19918=>807,19919=>807,\n19920=>807,19921=>807,19922=>807,19923=>807,19924=>807,19925=>807,19926=>807,19927=>807,19928=>807,19929=>807,\n19930=>807,19931=>807,19932=>807,19933=>807,19934=>807,19935=>807,19936=>807,19937=>807,19938=>807,19939=>807,\n19940=>807,19941=>807,19942=>807,19943=>807,19944=>807,19945=>807,19946=>807,19947=>807,19948=>807,19949=>807,\n19950=>807,19951=>807,19952=>807,19953=>807,19954=>807,19955=>807,19956=>807,19957=>807,19958=>807,19959=>807,\n19960=>807,19961=>807,19962=>807,19963=>807,19964=>807,19965=>807,19966=>807,19967=>807,42564=>648,42565=>536,\n42566=>392,42567=>396,42572=>1265,42573=>1055,42576=>1110,42577=>924,42580=>1056,42581=>875,42582=>983,42583=>862,\n42594=>976,42595=>832,42596=>986,42597=>821,42598=>1134,42599=>897,42600=>765,42601=>618,42602=>933,42603=>781,\n42604=>1266,42605=>995,42606=>865,42634=>867,42635=>708,42636=>614,42637=>521,42644=>727,42645=>641,42760=>450,\n42761=>450,42762=>450,42763=>450,42764=>450,42765=>450,42766=>450,42767=>450,42768=>450,42769=>450,42770=>450,\n42771=>450,42772=>450,42773=>450,42774=>450,42779=>360,42780=>360,42781=>258,42782=>258,42783=>258,42790=>753,\n42791=>641,42792=>928,42793=>771,42794=>626,42795=>501,42800=>502,42801=>536,42802=>1214,42803=>946,42804=>1156,\n42805=>958,42806=>1094,42807=>949,42808=>971,42809=>830,42810=>971,42811=>830,42812=>932,42813=>830,42814=>628,\n42815=>494,42822=>765,42823=>488,42824=>614,42825=>478,42826=>826,42827=>732,42830=>1266,42831=>995,42880=>573,\n42881=>308,42882=>753,42883=>641,42889=>360,42890=>347,42891=>410,42892=>275,43003=>615,43004=>659,43005=>896,\n43006=>334,43007=>1192,63173=>618,64256=>729,64257=>667,64258=>667,64259=>1003,64260=>1004,64261=>727,64262=>917,\n64275=>1249,64276=>1245,64277=>1240,64278=>1245,64279=>1542,64285=>308,64286=>0,64287=>597,64288=>647,64289=>867,\n64290=>801,64291=>889,64292=>867,64293=>844,64294=>889,64295=>889,64296=>878,64297=>754,64298=>854,64299=>854,\n64300=>854,64301=>854,64302=>676,64303=>676,64304=>676,64305=>605,64306=>483,64307=>589,64308=>641,64309=>394,\n64310=>442,64312=>651,64313=>394,64314=>584,64315=>584,64316=>611,64318=>698,64320=>447,64321=>696,64323=>646,\n64324=>618,64326=>676,64327=>656,64328=>584,64329=>854,64330=>676,64331=>308,64332=>605,64333=>584,64334=>618,\n64335=>676,64338=>904,64339=>953,64340=>338,64341=>367,64342=>904,64343=>953,64344=>338,64345=>367,64346=>904,\n64347=>953,64348=>338,64349=>367,64350=>904,64351=>953,64352=>338,64353=>367,64354=>904,64355=>953,64356=>338,\n64357=>367,64358=>904,64359=>953,64360=>338,64361=>367,64362=>1045,64363=>1072,64364=>589,64365=>647,64366=>1045,\n64367=>1072,64368=>589,64369=>647,64370=>648,64371=>648,64372=>648,64373=>648,64374=>648,64375=>648,64376=>648,\n64377=>648,64378=>648,64379=>648,64380=>648,64381=>648,64382=>648,64383=>648,64384=>648,64385=>648,64394=>518,\n64395=>560,64396=>518,64397=>560,64398=>921,64399=>921,64400=>523,64401=>523,64402=>921,64403=>921,64404=>523,\n64405=>523,64414=>768,64415=>810,64473=>559,64474=>564,64488=>338,64489=>367,64508=>825,64509=>910,64510=>338,\n64511=>367,65024=>0,65025=>0,65026=>0,65027=>0,65028=>0,65029=>0,65030=>0,65031=>0,65032=>0,\n65033=>0,65034=>0,65035=>0,65036=>0,65037=>0,65038=>0,65039=>0,65056=>0,65057=>0,65058=>0,\n65059=>0,65136=>308,65137=>308,65138=>308,65139=>311,65140=>308,65142=>308,65143=>308,65144=>308,65145=>308,\n65146=>308,65147=>308,65148=>308,65149=>308,65150=>308,65151=>308,65152=>460,65153=>308,65154=>338,65155=>308,\n65156=>338,65157=>559,65158=>564,65159=>308,65160=>338,65161=>825,65162=>825,65163=>338,65164=>367,65165=>308,\n65166=>338,65167=>904,65168=>953,65169=>338,65170=>367,65171=>531,65172=>545,65173=>904,65174=>953,65175=>338,\n65176=>367,65177=>904,65178=>953,65179=>338,65180=>367,65181=>648,65182=>648,65183=>648,65184=>648,65185=>648,\n65186=>648,65187=>648,65188=>648,65189=>648,65190=>648,65191=>648,65192=>648,65193=>461,65194=>520,65195=>461,\n65196=>520,65197=>518,65198=>560,65199=>518,65200=>560,65201=>1242,65202=>1272,65203=>885,65204=>916,65205=>1242,\n65206=>1272,65207=>885,65208=>916,65209=>1210,65210=>1228,65211=>870,65212=>887,65213=>1210,65214=>1228,65215=>870,\n65216=>887,65217=>935,65218=>963,65219=>848,65220=>876,65221=>935,65222=>963,65223=>848,65224=>876,65225=>615,\n65226=>615,65227=>615,65228=>508,65229=>615,65230=>615,65231=>615,65232=>508,65233=>1045,65234=>1072,65235=>589,\n65236=>647,65237=>804,65238=>811,65239=>589,65240=>647,65241=>825,65242=>838,65243=>523,65244=>523,65245=>781,\n65246=>803,65247=>338,65248=>367,65249=>659,65250=>706,65251=>557,65252=>603,65253=>768,65254=>810,65255=>338,\n65256=>367,65257=>531,65258=>545,65259=>624,65260=>594,65261=>559,65262=>564,65263=>825,65264=>910,65265=>825,\n65266=>910,65267=>338,65268=>367,65269=>670,65270=>683,65271=>670,65272=>683,65273=>670,65274=>683,65275=>670,\n65276=>683,65279=>0,65529=>0,65530=>0,65531=>0,65532=>0,65533=>1002);\n$enc='';\n$diff='';\n$file='dejavusanscondensedb.z';\n$ctg='dejavusanscondensedb.ctg.z';\n$originalsize=534464;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavusanscondensedbi.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='DejaVuSansCondensed-BoldOblique';\n$desc=array('Ascent'=>928,'Descent'=>-236,'CapHeight'=>-46,'Flags'=>96,'FontBBox'=>'[-960 -385 1804 1121]','ItalicAngle'=>-11,'StemV'=>120,'MissingWidth'=>540);\n$up=-63;\n$ut=44;\n$dw=540;\n$cw=array(\n0=>540,32=>313,33=>410,34=>469,35=>626,36=>626,37=>901,38=>785,39=>275,40=>411,\n41=>411,42=>470,43=>754,44=>342,45=>374,46=>342,47=>329,48=>626,49=>626,50=>626,\n51=>626,52=>626,53=>626,54=>626,55=>626,56=>626,57=>626,58=>360,59=>360,60=>754,\n61=>754,62=>754,63=>522,64=>900,65=>696,66=>686,67=>660,68=>747,69=>615,70=>615,\n71=>738,72=>753,73=>334,74=>334,75=>697,76=>573,77=>896,78=>753,79=>765,80=>659,\n81=>765,82=>693,83=>648,84=>614,85=>730,86=>696,87=>993,88=>694,89=>651,90=>652,\n91=>411,92=>329,93=>411,94=>754,95=>450,96=>450,97=>607,98=>644,99=>533,100=>644,\n101=>610,102=>391,103=>644,104=>641,105=>308,106=>308,107=>598,108=>308,109=>938,110=>641,\n111=>618,112=>644,113=>644,114=>444,115=>536,116=>430,117=>641,118=>586,119=>831,120=>580,\n121=>586,122=>523,123=>641,124=>329,125=>641,126=>754,8364=>626,8218=>342,402=>391,8222=>580,\n8230=>900,8224=>450,8225=>450,710=>450,8240=>1309,352=>648,8249=>371,338=>1050,381=>652,8216=>342,\n8217=>342,8220=>580,8221=>580,8226=>575,8211=>450,8212=>900,732=>450,8482=>900,353=>536,8250=>371,\n339=>984,382=>523,376=>651,160=>313,161=>410,162=>626,163=>626,164=>572,165=>626,166=>329,\n167=>450,168=>450,169=>900,170=>507,171=>584,172=>754,173=>374,174=>900,175=>450,176=>450,\n177=>754,178=>394,179=>394,180=>450,181=>662,182=>572,183=>342,184=>450,185=>394,186=>507,\n187=>584,188=>932,189=>932,190=>932,191=>522,192=>696,193=>696,194=>696,195=>696,196=>696,\n197=>696,198=>976,199=>660,200=>615,201=>615,202=>615,203=>615,204=>334,205=>334,206=>334,\n207=>334,208=>760,209=>753,210=>765,211=>765,212=>765,213=>765,214=>765,215=>754,216=>765,\n217=>730,218=>730,219=>730,220=>730,221=>651,222=>668,223=>647,224=>607,225=>607,226=>607,\n227=>607,228=>607,229=>607,230=>943,231=>533,232=>610,233=>610,234=>610,235=>610,236=>308,\n237=>308,238=>308,239=>308,240=>618,241=>641,242=>618,243=>618,244=>618,245=>618,246=>618,\n247=>754,248=>618,249=>641,250=>641,251=>641,252=>641,253=>586,254=>644,255=>586,256=>696,\n257=>607,258=>696,259=>607,260=>696,261=>607,262=>660,263=>533,264=>660,265=>533,266=>660,\n267=>533,268=>660,269=>533,270=>747,271=>644,272=>760,273=>644,274=>615,275=>610,276=>615,\n277=>610,278=>615,279=>610,280=>615,281=>610,282=>615,283=>610,284=>738,285=>644,286=>738,\n287=>644,288=>738,289=>644,290=>738,291=>644,292=>753,293=>641,294=>876,295=>711,296=>334,\n297=>308,298=>334,299=>308,300=>334,301=>308,302=>334,303=>308,304=>334,305=>308,306=>669,\n307=>617,308=>334,309=>308,310=>697,311=>598,312=>598,313=>573,314=>308,315=>573,316=>308,\n317=>573,318=>308,319=>573,320=>308,321=>594,322=>337,323=>753,324=>641,325=>753,326=>641,\n327=>753,328=>641,329=>884,330=>753,331=>641,332=>765,333=>618,334=>765,335=>618,336=>765,\n337=>618,340=>693,341=>444,342=>693,343=>444,344=>693,345=>444,346=>648,347=>536,348=>648,\n349=>536,350=>648,351=>536,354=>614,355=>430,356=>614,357=>430,358=>614,359=>430,360=>730,\n361=>641,362=>730,363=>641,364=>730,365=>641,366=>730,367=>641,368=>730,369=>641,370=>730,\n371=>641,372=>993,373=>831,374=>651,375=>586,377=>652,378=>523,379=>652,380=>523,383=>391,\n384=>644,385=>729,386=>686,387=>644,388=>686,389=>644,390=>660,391=>660,392=>533,393=>760,\n394=>791,395=>686,396=>644,397=>618,398=>615,399=>765,400=>626,401=>615,403=>738,404=>713,\n405=>940,406=>392,407=>350,408=>697,409=>598,410=>324,411=>532,412=>938,413=>753,414=>641,\n415=>765,416=>765,417=>618,418=>1002,419=>866,420=>703,421=>644,422=>693,423=>648,424=>536,\n425=>615,426=>497,427=>430,428=>636,429=>430,430=>614,431=>730,432=>641,433=>692,434=>732,\n435=>717,436=>700,437=>652,438=>523,439=>695,440=>695,441=>576,442=>523,443=>626,444=>695,\n445=>576,446=>515,447=>644,448=>334,449=>593,450=>489,451=>334,452=>1393,453=>1305,454=>1176,\n455=>879,456=>881,457=>603,458=>1074,459=>1091,460=>957,461=>696,462=>607,463=>334,464=>308,\n465=>765,466=>618,467=>730,468=>641,469=>730,470=>641,471=>730,472=>641,473=>730,474=>641,\n475=>730,476=>641,477=>610,478=>696,479=>607,480=>696,481=>607,482=>976,483=>943,484=>738,\n485=>644,486=>738,487=>644,488=>697,489=>598,490=>765,491=>618,492=>765,493=>618,494=>695,\n495=>523,496=>308,497=>1393,498=>1305,499=>1176,500=>738,501=>644,502=>1160,503=>708,504=>753,\n505=>641,506=>696,507=>607,508=>976,509=>943,510=>765,511=>618,512=>696,513=>607,514=>696,\n515=>607,516=>615,517=>610,518=>615,519=>610,520=>334,521=>308,522=>334,523=>308,524=>765,\n525=>618,526=>765,527=>618,528=>693,529=>444,530=>693,531=>444,532=>730,533=>641,534=>730,\n535=>641,536=>648,537=>536,538=>614,539=>430,540=>621,541=>546,542=>753,543=>641,544=>753,\n545=>778,546=>728,547=>593,548=>652,549=>523,550=>696,551=>607,552=>615,553=>610,554=>765,\n555=>618,556=>765,557=>618,558=>765,559=>618,560=>765,561=>618,562=>651,563=>586,564=>442,\n565=>780,566=>460,567=>308,568=>979,569=>979,570=>696,571=>660,572=>533,573=>573,574=>614,\n575=>536,576=>523,577=>703,578=>553,579=>686,580=>730,581=>696,582=>615,583=>610,584=>334,\n585=>308,586=>774,587=>712,588=>693,589=>444,590=>651,591=>586,592=>607,593=>644,594=>644,\n595=>644,596=>533,597=>533,598=>712,599=>712,600=>610,601=>610,602=>788,603=>501,604=>490,\n605=>696,606=>658,607=>308,608=>712,609=>644,610=>564,611=>661,612=>571,613=>641,614=>641,\n615=>641,616=>491,617=>396,618=>491,619=>502,620=>624,621=>308,622=>757,623=>938,624=>938,\n625=>938,626=>641,627=>713,628=>578,629=>618,630=>817,631=>613,632=>716,633=>484,634=>484,\n635=>584,636=>444,637=>444,638=>536,639=>536,640=>578,641=>578,642=>536,643=>374,644=>391,\n645=>544,646=>497,647=>430,648=>430,649=>828,650=>692,651=>603,652=>586,653=>831,654=>586,\n655=>651,656=>624,657=>615,658=>576,659=>576,660=>515,661=>515,662=>515,663=>515,664=>765,\n665=>569,666=>658,667=>616,668=>622,669=>308,670=>659,671=>485,672=>712,673=>515,674=>515,\n675=>1040,676=>1093,677=>1039,678=>876,679=>691,680=>836,681=>923,682=>712,683=>702,684=>532,\n685=>374,686=>609,687=>710,688=>410,689=>410,690=>197,691=>284,692=>284,693=>284,694=>369,\n695=>532,696=>375,697=>271,698=>469,699=>342,700=>342,701=>342,702=>330,703=>330,704=>293,\n705=>293,706=>450,707=>450,708=>450,709=>450,711=>450,712=>275,713=>450,714=>450,715=>450,\n716=>275,717=>450,718=>450,719=>450,720=>303,721=>303,722=>330,723=>330,724=>450,725=>450,\n726=>374,727=>295,728=>450,729=>450,730=>450,731=>450,733=>450,734=>315,735=>450,736=>370,\n737=>197,738=>343,739=>371,740=>293,741=>450,742=>450,743=>450,744=>450,745=>450,748=>450,\n749=>450,750=>580,755=>450,759=>450,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,\n774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,\n784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,\n794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,\n804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,\n814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,\n824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,\n834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,\n844=>0,845=>0,846=>0,847=>0,849=>0,850=>0,851=>0,855=>0,856=>0,858=>0,\n860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,880=>628,881=>508,882=>919,\n883=>752,884=>271,885=>271,886=>753,887=>630,890=>450,891=>533,892=>495,893=>494,894=>360,\n900=>397,901=>450,902=>717,903=>342,904=>761,905=>908,906=>507,908=>801,910=>882,911=>804,\n912=>351,913=>696,914=>686,915=>573,916=>696,917=>615,918=>652,919=>753,920=>765,921=>334,\n922=>697,923=>696,924=>896,925=>753,926=>568,927=>765,928=>753,929=>659,931=>615,932=>614,\n933=>651,934=>765,935=>694,936=>765,937=>765,938=>334,939=>651,940=>618,941=>501,942=>641,\n943=>351,944=>607,945=>618,946=>644,947=>613,948=>618,949=>501,950=>532,951=>641,952=>618,\n953=>351,954=>639,955=>569,956=>662,957=>613,958=>532,959=>618,960=>712,961=>644,962=>533,\n963=>701,964=>574,965=>607,966=>704,967=>580,968=>714,969=>782,970=>351,971=>607,972=>618,\n973=>607,974=>782,975=>697,976=>585,977=>594,978=>671,979=>883,980=>671,981=>716,982=>782,\n983=>669,984=>765,985=>618,986=>660,987=>533,988=>615,989=>444,990=>632,991=>593,992=>827,\n993=>564,994=>983,995=>753,996=>749,997=>644,998=>835,999=>669,1000=>660,1001=>585,1002=>709,\n1003=>604,1004=>677,1005=>644,1006=>614,1007=>531,1008=>669,1009=>644,1010=>533,1011=>308,1012=>765,\n1013=>580,1014=>580,1015=>668,1016=>644,1017=>660,1018=>896,1019=>659,1020=>644,1021=>660,1022=>660,\n1023=>628,1024=>615,1025=>615,1026=>791,1027=>573,1028=>660,1029=>648,1030=>334,1031=>334,1032=>334,\n1033=>1039,1034=>1017,1035=>791,1036=>735,1037=>753,1038=>694,1039=>753,1040=>696,1041=>686,1042=>686,\n1043=>573,1044=>801,1045=>615,1046=>1102,1047=>639,1048=>753,1049=>753,1050=>735,1051=>747,1052=>896,\n1053=>753,1054=>765,1055=>753,1056=>659,1057=>660,1058=>614,1059=>694,1060=>892,1061=>694,1062=>835,\n1063=>727,1064=>1112,1065=>1193,1066=>845,1067=>932,1068=>686,1069=>660,1070=>1056,1071=>693,1072=>607,\n1073=>628,1074=>569,1075=>470,1076=>727,1077=>610,1078=>896,1079=>523,1080=>630,1081=>630,1082=>611,\n1083=>659,1084=>735,1085=>622,1086=>618,1087=>622,1088=>644,1089=>533,1090=>521,1091=>586,1092=>893,\n1093=>580,1094=>667,1095=>618,1096=>956,1097=>995,1098=>676,1099=>813,1100=>569,1101=>533,1102=>875,\n1103=>578,1104=>610,1105=>610,1106=>642,1107=>470,1108=>533,1109=>536,1110=>308,1111=>308,1112=>308,\n1113=>892,1114=>860,1115=>661,1116=>611,1117=>630,1118=>586,1119=>622,1120=>983,1121=>782,1122=>756,\n1123=>662,1124=>911,1125=>755,1126=>893,1127=>749,1128=>1222,1129=>1009,1130=>765,1131=>618,1132=>1112,\n1133=>906,1134=>626,1135=>501,1136=>967,1137=>955,1138=>765,1139=>618,1140=>765,1141=>625,1142=>765,\n1143=>625,1144=>1033,1145=>939,1146=>967,1147=>776,1148=>1265,1149=>1055,1150=>983,1151=>782,1152=>660,\n1153=>533,1154=>587,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>376,1161=>376,1162=>844,\n1163=>725,1164=>686,1165=>550,1166=>662,1167=>646,1168=>573,1169=>470,1170=>599,1171=>488,1172=>709,\n1173=>470,1174=>1102,1175=>896,1176=>639,1177=>523,1178=>697,1179=>611,1180=>735,1181=>611,1182=>735,\n1183=>611,1184=>914,1185=>743,1186=>753,1187=>622,1188=>992,1189=>783,1190=>1129,1191=>880,1192=>851,\n1193=>773,1194=>660,1195=>533,1196=>614,1197=>521,1198=>651,1199=>586,1200=>651,1201=>586,1202=>694,\n1203=>580,1204=>993,1205=>901,1206=>727,1207=>618,1208=>727,1209=>618,1210=>727,1211=>641,1212=>923,\n1213=>729,1214=>923,1215=>729,1216=>334,1217=>1102,1218=>896,1219=>700,1220=>566,1221=>839,1222=>724,\n1223=>753,1224=>622,1225=>844,1226=>725,1227=>727,1228=>618,1229=>986,1230=>838,1231=>308,1232=>696,\n1233=>607,1234=>696,1235=>607,1236=>976,1237=>943,1238=>615,1239=>610,1240=>765,1241=>610,1242=>765,\n1243=>610,1244=>1102,1245=>896,1246=>639,1247=>523,1248=>695,1249=>576,1250=>753,1251=>630,1252=>753,\n1253=>630,1254=>765,1255=>618,1256=>765,1257=>618,1258=>765,1259=>618,1260=>660,1261=>533,1262=>694,\n1263=>586,1264=>694,1265=>586,1266=>694,1267=>586,1268=>727,1269=>618,1270=>573,1271=>470,1272=>932,\n1273=>813,1274=>599,1275=>488,1276=>694,1277=>580,1278=>694,1279=>580,1280=>686,1281=>547,1282=>1043,\n1283=>804,1284=>1007,1285=>828,1286=>745,1287=>624,1288=>1117,1289=>915,1290=>1160,1291=>912,1292=>755,\n1293=>574,1294=>844,1295=>722,1296=>626,1297=>501,1298=>747,1299=>659,1300=>1157,1301=>963,1302=>958,\n1303=>883,1304=>973,1305=>864,1306=>765,1307=>644,1308=>993,1309=>831,1312=>1123,1313=>920,1314=>1128,\n1315=>880,1316=>861,1317=>726,1329=>886,1330=>730,1331=>886,1332=>886,1333=>730,1334=>699,1335=>730,\n1336=>730,1337=>877,1338=>886,1339=>730,1340=>639,1341=>970,1342=>1022,1343=>730,1344=>639,1345=>681,\n1346=>886,1347=>789,1348=>886,1349=>714,1350=>886,1351=>730,1352=>730,1353=>730,1354=>862,1355=>699,\n1356=>886,1357=>730,1358=>886,1359=>648,1360=>730,1361=>714,1362=>805,1363=>765,1364=>842,1365=>765,\n1366=>648,1369=>330,1370=>342,1371=>495,1372=>495,1373=>342,1374=>491,1375=>468,1377=>938,1378=>641,\n1379=>779,1380=>781,1381=>641,1382=>735,1383=>588,1384=>641,1385=>729,1386=>735,1387=>641,1388=>448,\n1389=>916,1390=>644,1391=>641,1392=>641,1393=>644,1394=>737,1395=>641,1396=>676,1397=>308,1398=>794,\n1399=>502,1400=>641,1401=>502,1402=>938,1403=>502,1404=>777,1405=>641,1406=>732,1407=>938,1408=>641,\n1409=>644,1410=>514,1411=>938,1412=>700,1413=>618,1414=>648,1415=>776,1417=>360,1418=>438,1456=>0,\n1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1466=>0,\n1467=>0,1468=>0,1469=>0,1470=>374,1471=>0,1472=>334,1473=>0,1474=>0,1475=>334,1478=>447,\n1479=>0,1488=>676,1489=>605,1490=>483,1491=>589,1492=>641,1493=>308,1494=>442,1495=>641,1496=>651,\n1497=>308,1498=>584,1499=>584,1500=>611,1501=>641,1502=>698,1503=>308,1504=>447,1505=>696,1506=>610,\n1507=>646,1508=>618,1509=>565,1510=>676,1511=>656,1512=>584,1513=>854,1514=>676,1520=>598,1521=>598,\n1522=>597,1523=>399,1524=>639,3647=>668,3713=>734,3714=>673,3716=>674,3719=>512,3720=>668,3722=>669,\n3725=>685,3732=>635,3733=>633,3734=>672,3735=>737,3737=>657,3738=>654,3739=>654,3740=>830,3741=>744,\n3742=>779,3743=>779,3745=>752,3746=>685,3747=>692,3749=>691,3751=>642,3754=>744,3755=>928,3757=>651,\n3758=>705,3759=>840,3760=>620,3761=>0,3762=>549,3763=>549,3764=>0,3765=>0,3766=>0,3767=>0,\n3768=>0,3769=>0,3771=>0,3772=>0,3773=>603,3776=>464,3777=>774,3778=>464,3779=>584,3780=>569,\n3782=>683,3784=>0,3785=>0,3786=>0,3787=>0,3788=>0,3789=>0,3792=>694,3793=>694,3794=>624,\n3795=>752,3796=>655,3797=>655,3798=>764,3799=>710,3800=>683,3801=>818,3804=>1227,3805=>1227,4256=>826,\n4257=>669,4258=>665,4259=>753,4260=>584,4261=>696,4262=>771,4263=>800,4264=>477,4265=>570,4266=>771,\n4267=>810,4268=>579,4269=>813,4270=>732,4271=>677,4272=>782,4273=>579,4274=>579,4275=>797,4276=>797,\n4277=>660,4278=>587,4279=>579,4280=>582,4281=>579,4282=>710,4283=>812,4284=>570,4285=>557,4286=>579,\n4287=>700,4288=>802,4289=>541,4290=>668,4291=>554,4292=>570,4293=>668,4304=>497,4305=>497,4306=>536,\n4307=>734,4308=>505,4309=>506,4310=>497,4311=>744,4312=>497,4313=>488,4314=>967,4315=>506,4316=>507,\n4317=>730,4318=>497,4319=>532,4320=>740,4321=>506,4322=>621,4323=>525,4324=>732,4325=>505,4326=>731,\n4327=>506,4328=>506,4329=>507,4330=>568,4331=>506,4332=>506,4333=>497,4334=>506,4335=>506,4336=>501,\n4337=>543,4338=>497,4339=>497,4340=>497,4341=>544,4342=>767,4343=>571,4344=>506,4345=>536,4346=>487,\n4347=>615,4348=>331,5121=>696,5122=>696,5123=>696,5124=>696,5125=>814,5126=>814,5127=>814,5129=>814,\n5130=>814,5131=>814,5132=>916,5133=>908,5134=>916,5135=>908,5136=>916,5137=>908,5138=>1034,5139=>1025,\n5140=>1034,5141=>1025,5142=>814,5143=>1034,5144=>1028,5145=>1034,5146=>1028,5147=>814,5149=>278,5150=>476,\n5151=>382,5152=>382,5153=>355,5154=>355,5155=>355,5156=>355,5157=>507,5158=>423,5159=>278,5160=>355,\n5161=>355,5162=>355,5163=>1092,5164=>888,5165=>1094,5166=>1167,5167=>696,5168=>696,5169=>696,5170=>696,\n5171=>797,5172=>797,5173=>797,5175=>797,5176=>797,5177=>797,5178=>916,5179=>908,5180=>916,5181=>908,\n5182=>916,5183=>908,5184=>1034,5185=>1025,5186=>1034,5187=>1025,5188=>1034,5189=>1028,5190=>1034,5191=>1028,\n5192=>797,5193=>518,5194=>206,5196=>730,5197=>730,5198=>730,5199=>730,5200=>734,5201=>734,5202=>734,\n5204=>734,5205=>734,5206=>734,5207=>950,5208=>943,5209=>950,5210=>943,5211=>950,5212=>943,5213=>954,\n5214=>949,5215=>954,5216=>949,5217=>954,5218=>946,5219=>954,5220=>946,5221=>954,5222=>435,5223=>904,\n5224=>904,5225=>921,5226=>915,5227=>668,5228=>668,5229=>668,5230=>668,5231=>668,5232=>668,5233=>668,\n5234=>668,5235=>668,5236=>926,5237=>877,5238=>882,5239=>877,5240=>882,5241=>877,5242=>926,5243=>877,\n5244=>926,5245=>877,5246=>882,5247=>877,5248=>882,5249=>877,5250=>882,5251=>451,5252=>451,5253=>844,\n5254=>844,5255=>844,5256=>844,5257=>668,5258=>668,5259=>668,5260=>668,5261=>668,5262=>668,5263=>668,\n5264=>668,5265=>668,5266=>926,5267=>877,5268=>926,5269=>877,5270=>926,5271=>877,5272=>926,5273=>877,\n5274=>926,5275=>877,5276=>926,5277=>877,5278=>926,5279=>877,5280=>926,5281=>451,5282=>451,5283=>563,\n5284=>563,5285=>563,5286=>563,5287=>563,5288=>563,5289=>563,5290=>563,5291=>563,5292=>793,5293=>769,\n5294=>777,5295=>786,5296=>777,5297=>786,5298=>793,5299=>786,5300=>793,5301=>786,5302=>777,5303=>786,\n5304=>777,5305=>786,5306=>777,5307=>392,5308=>493,5309=>392,5312=>889,5313=>889,5314=>889,5315=>889,\n5316=>838,5317=>838,5318=>838,5319=>838,5320=>838,5321=>1114,5322=>1122,5323=>1080,5324=>1105,5325=>1080,\n5326=>1105,5327=>838,5328=>593,5329=>447,5330=>593,5331=>889,5332=>889,5333=>889,5334=>889,5335=>838,\n5336=>838,5337=>838,5338=>838,5339=>838,5340=>1107,5341=>1122,5342=>1155,5343=>1105,5344=>1155,5345=>1105,\n5346=>1105,5347=>1093,5348=>1105,5349=>1093,5350=>1155,5351=>1105,5352=>1155,5353=>1105,5354=>593,5356=>797,\n5357=>657,5358=>657,5359=>657,5360=>657,5361=>657,5362=>657,5363=>657,5364=>657,5365=>657,5366=>897,\n5367=>862,5368=>870,5369=>890,5370=>870,5371=>890,5372=>897,5373=>862,5374=>897,5375=>862,5376=>870,\n5377=>890,5378=>870,5379=>890,5380=>870,5381=>443,5382=>414,5383=>443,5392=>831,5393=>831,5394=>831,\n5395=>1022,5396=>1022,5397=>1022,5398=>1022,5399=>1088,5400=>1081,5401=>1088,5402=>1081,5403=>1088,5404=>1081,\n5405=>1288,5406=>1278,5407=>1288,5408=>1278,5409=>1288,5410=>1278,5411=>1288,5412=>1278,5413=>671,5414=>698,\n5415=>698,5416=>698,5417=>698,5418=>698,5419=>698,5420=>698,5421=>698,5422=>698,5423=>902,5424=>903,\n5425=>911,5426=>896,5427=>911,5428=>896,5429=>902,5430=>903,5431=>902,5432=>903,5433=>911,5434=>896,\n5435=>911,5436=>896,5437=>911,5438=>445,5440=>355,5441=>458,5442=>929,5443=>929,5444=>878,5445=>878,\n5446=>878,5447=>878,5448=>659,5449=>659,5450=>659,5451=>659,5452=>659,5453=>659,5454=>902,5455=>863,\n5456=>445,5458=>797,5459=>696,5460=>696,5461=>696,5462=>696,5463=>835,5464=>835,5465=>835,5466=>835,\n5467=>1055,5468=>1028,5469=>542,5470=>730,5471=>730,5472=>730,5473=>730,5474=>730,5475=>730,5476=>734,\n5477=>734,5478=>734,5479=>734,5480=>954,5481=>946,5482=>493,5492=>879,5493=>879,5494=>879,5495=>879,\n5496=>879,5497=>879,5498=>879,5499=>556,5500=>753,5501=>458,5502=>1114,5503=>1114,5504=>1114,5505=>1114,\n5506=>1114,5507=>1114,5508=>1114,5509=>890,5514=>879,5515=>879,5516=>879,5517=>879,5518=>1432,5519=>1432,\n5520=>1432,5521=>1165,5522=>1165,5523=>1432,5524=>1432,5525=>763,5526=>1146,5536=>889,5537=>889,5538=>838,\n5539=>838,5540=>838,5541=>838,5542=>593,5543=>698,5544=>698,5545=>698,5546=>698,5547=>698,5548=>698,\n5549=>698,5550=>445,5551=>668,5598=>747,5601=>747,5702=>446,5703=>446,5742=>371,5743=>1114,5744=>1432,\n5745=>1814,5746=>1814,5747=>1548,5748=>1510,5749=>1814,5750=>1814,7424=>586,7425=>750,7426=>943,7427=>547,\n7428=>533,7429=>608,7430=>608,7431=>502,7432=>501,7433=>308,7434=>444,7435=>598,7436=>485,7437=>735,\n7438=>630,7439=>618,7440=>533,7441=>594,7442=>594,7443=>594,7444=>984,7446=>618,7447=>618,7448=>500,\n7449=>578,7450=>578,7451=>521,7452=>571,7453=>663,7454=>853,7455=>625,7456=>586,7457=>831,7458=>523,\n7459=>581,7462=>485,7463=>586,7464=>622,7465=>500,7466=>703,7467=>659,7468=>438,7469=>615,7470=>432,\n7472=>470,7473=>387,7474=>387,7475=>465,7476=>474,7477=>211,7478=>211,7479=>439,7480=>361,7481=>563,\n7482=>474,7483=>474,7484=>481,7485=>458,7486=>415,7487=>436,7488=>387,7489=>460,7490=>625,7491=>412,\n7492=>412,7493=>431,7494=>641,7495=>431,7496=>431,7497=>431,7498=>431,7499=>347,7500=>347,7501=>431,\n7502=>197,7503=>438,7504=>597,7505=>410,7506=>439,7507=>372,7508=>439,7509=>439,7510=>431,7511=>349,\n7512=>410,7513=>416,7514=>597,7515=>451,7517=>405,7518=>386,7519=>389,7520=>443,7521=>365,7522=>197,\n7523=>284,7524=>410,7525=>451,7526=>405,7527=>386,7528=>405,7529=>443,7530=>365,7543=>644,7544=>474,\n7547=>491,7557=>462,7579=>431,7580=>372,7581=>372,7582=>439,7583=>347,7584=>339,7585=>313,7586=>431,\n7587=>410,7588=>312,7589=>253,7590=>312,7591=>312,7592=>388,7593=>293,7594=>296,7595=>333,7596=>598,\n7597=>597,7598=>505,7599=>505,7600=>403,7601=>439,7602=>488,7603=>379,7604=>356,7605=>349,7606=>524,\n7607=>444,7608=>359,7609=>405,7610=>451,7611=>375,7612=>471,7613=>422,7614=>409,7615=>382,7620=>0,\n7621=>0,7622=>0,7623=>0,7624=>0,7625=>0,7680=>696,7681=>607,7682=>686,7683=>644,7684=>686,\n7685=>644,7686=>686,7687=>644,7688=>660,7689=>533,7690=>747,7691=>644,7692=>747,7693=>644,7694=>747,\n7695=>644,7696=>747,7697=>644,7698=>747,7699=>644,7700=>615,7701=>610,7702=>615,7703=>610,7704=>615,\n7705=>610,7706=>615,7707=>610,7708=>615,7709=>610,7710=>615,7711=>391,7712=>738,7713=>644,7714=>753,\n7715=>641,7716=>753,7717=>641,7718=>753,7719=>641,7720=>753,7721=>641,7722=>753,7723=>641,7724=>334,\n7725=>308,7726=>334,7727=>308,7728=>697,7729=>598,7730=>697,7731=>598,7732=>697,7733=>598,7734=>573,\n7735=>308,7736=>573,7737=>308,7738=>573,7739=>308,7740=>573,7741=>308,7742=>896,7743=>938,7744=>896,\n7745=>938,7746=>896,7747=>938,7748=>753,7749=>641,7750=>753,7751=>641,7752=>753,7753=>641,7754=>753,\n7755=>641,7756=>765,7757=>618,7758=>765,7759=>618,7760=>765,7761=>618,7762=>765,7763=>618,7764=>659,\n7765=>644,7766=>659,7767=>644,7768=>693,7769=>444,7770=>693,7771=>444,7772=>693,7773=>444,7774=>693,\n7775=>444,7776=>648,7777=>536,7778=>648,7779=>536,7780=>648,7781=>536,7782=>648,7783=>536,7784=>648,\n7785=>536,7786=>614,7787=>430,7788=>614,7789=>430,7790=>614,7791=>430,7792=>614,7793=>430,7794=>730,\n7795=>641,7796=>730,7797=>641,7798=>730,7799=>641,7800=>730,7801=>641,7802=>730,7803=>641,7804=>696,\n7805=>586,7806=>696,7807=>586,7808=>993,7809=>831,7810=>993,7811=>831,7812=>993,7813=>831,7814=>993,\n7815=>831,7816=>993,7817=>831,7818=>694,7819=>580,7820=>694,7821=>580,7822=>651,7823=>586,7824=>652,\n7825=>523,7826=>652,7827=>523,7828=>652,7829=>523,7830=>641,7831=>430,7832=>831,7833=>586,7834=>607,\n7835=>391,7838=>806,7839=>618,7840=>696,7841=>607,7842=>696,7843=>607,7844=>696,7845=>607,7846=>696,\n7847=>607,7848=>696,7849=>607,7850=>696,7851=>607,7852=>696,7853=>607,7854=>696,7855=>607,7856=>696,\n7857=>607,7858=>696,7859=>607,7860=>696,7861=>607,7862=>696,7863=>607,7864=>615,7865=>610,7866=>615,\n7867=>610,7868=>615,7869=>610,7870=>615,7871=>610,7872=>615,7873=>610,7874=>615,7875=>610,7876=>615,\n7877=>610,7878=>615,7879=>610,7880=>334,7881=>308,7882=>334,7883=>308,7884=>765,7885=>618,7886=>765,\n7887=>618,7888=>765,7889=>618,7890=>765,7891=>618,7892=>765,7893=>618,7894=>765,7895=>618,7896=>765,\n7897=>618,7898=>765,7899=>618,7900=>765,7901=>618,7902=>765,7903=>618,7904=>765,7905=>618,7906=>765,\n7907=>618,7908=>730,7909=>641,7910=>730,7911=>641,7912=>730,7913=>641,7914=>730,7915=>641,7916=>730,\n7917=>641,7918=>730,7919=>641,7920=>730,7921=>641,7922=>651,7923=>586,7924=>651,7925=>586,7926=>651,\n7927=>586,7928=>651,7929=>586,7936=>618,7937=>618,7938=>618,7939=>618,7940=>618,7941=>618,7942=>618,\n7943=>618,7944=>696,7945=>696,7946=>937,7947=>939,7948=>841,7949=>866,7950=>751,7951=>773,7952=>501,\n7953=>501,7954=>501,7955=>501,7956=>501,7957=>501,7960=>712,7961=>715,7962=>989,7963=>986,7964=>920,\n7965=>947,7968=>641,7969=>641,7970=>641,7971=>641,7972=>641,7973=>641,7974=>641,7975=>641,7976=>851,\n7977=>856,7978=>1125,7979=>1125,7980=>1062,7981=>1085,7982=>948,7983=>956,7984=>351,7985=>351,7986=>351,\n7987=>351,7988=>351,7989=>351,7990=>351,7991=>351,7992=>435,7993=>440,7994=>699,7995=>707,7996=>641,\n7997=>664,7998=>544,7999=>544,8000=>618,8001=>618,8002=>618,8003=>618,8004=>618,8005=>618,8008=>802,\n8009=>839,8010=>1099,8011=>1101,8012=>947,8013=>974,8016=>607,8017=>607,8018=>607,8019=>607,8020=>607,\n8021=>607,8022=>607,8023=>607,8025=>837,8027=>1065,8029=>1079,8031=>944,8032=>782,8033=>782,8034=>782,\n8035=>782,8036=>782,8037=>782,8038=>782,8039=>782,8040=>817,8041=>862,8042=>1121,8043=>1126,8044=>968,\n8045=>994,8046=>925,8047=>968,8048=>618,8049=>618,8050=>501,8051=>501,8052=>641,8053=>641,8054=>351,\n8055=>351,8056=>618,8057=>618,8058=>607,8059=>607,8060=>782,8061=>782,8064=>618,8065=>618,8066=>618,\n8067=>618,8068=>618,8069=>618,8070=>618,8071=>618,8072=>696,8073=>696,8074=>937,8075=>939,8076=>841,\n8077=>866,8078=>751,8079=>773,8080=>641,8081=>641,8082=>641,8083=>641,8084=>641,8085=>641,8086=>641,\n8087=>641,8088=>851,8089=>856,8090=>1125,8091=>1125,8092=>1062,8093=>1085,8094=>948,8095=>956,8096=>782,\n8097=>782,8098=>782,8099=>782,8100=>782,8101=>782,8102=>782,8103=>782,8104=>817,8105=>862,8106=>1121,\n8107=>1126,8108=>968,8109=>994,8110=>925,8111=>968,8112=>618,8113=>618,8114=>618,8115=>618,8116=>618,\n8118=>618,8119=>618,8120=>696,8121=>696,8122=>789,8123=>717,8124=>696,8125=>450,8126=>450,8127=>450,\n8128=>450,8129=>450,8130=>641,8131=>641,8132=>641,8134=>641,8135=>641,8136=>836,8137=>761,8138=>972,\n8139=>908,8140=>753,8141=>450,8142=>450,8143=>450,8144=>351,8145=>351,8146=>351,8147=>351,8150=>351,\n8151=>351,8152=>334,8153=>334,8154=>559,8155=>507,8157=>450,8158=>450,8159=>450,8160=>607,8161=>607,\n8162=>607,8163=>607,8164=>644,8165=>644,8166=>607,8167=>607,8168=>651,8169=>651,8170=>918,8171=>882,\n8172=>754,8173=>450,8174=>450,8175=>450,8178=>782,8179=>782,8180=>782,8182=>782,8183=>782,8184=>958,\n8185=>801,8186=>976,8187=>804,8188=>765,8189=>450,8190=>450,8192=>450,8193=>900,8194=>450,8195=>900,\n8196=>296,8197=>225,8198=>150,8199=>626,8200=>342,8201=>180,8202=>89,8203=>0,8204=>0,8205=>0,\n8206=>0,8207=>0,8208=>374,8209=>374,8210=>626,8213=>900,8214=>450,8215=>450,8219=>342,8223=>591,\n8227=>575,8228=>342,8229=>616,8231=>313,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>180,\n8241=>1717,8242=>237,8243=>402,8244=>567,8245=>237,8246=>402,8247=>567,8248=>659,8251=>875,8252=>564,\n8253=>522,8254=>450,8255=>745,8256=>745,8257=>296,8258=>920,8259=>450,8260=>150,8261=>411,8262=>411,\n8263=>927,8264=>746,8265=>746,8266=>461,8267=>618,8268=>450,8269=>450,8270=>470,8271=>360,8272=>745,\n8273=>470,8274=>500,8275=>754,8276=>745,8277=>754,8278=>615,8279=>731,8280=>754,8281=>754,8282=>342,\n8283=>784,8284=>754,8285=>342,8286=>342,8287=>200,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,\n8298=>0,8299=>0,8300=>0,8301=>0,8302=>0,8303=>0,8304=>394,8305=>197,8308=>394,8309=>394,\n8310=>394,8311=>394,8312=>394,8313=>394,8314=>475,8315=>475,8316=>475,8317=>259,8318=>259,8319=>410,\n8320=>394,8321=>394,8322=>394,8323=>394,8324=>394,8325=>394,8326=>394,8327=>394,8328=>394,8329=>394,\n8330=>475,8331=>475,8332=>475,8333=>259,8334=>259,8336=>412,8337=>431,8338=>439,8339=>371,8340=>431,\n8352=>836,8353=>626,8354=>626,8355=>626,8356=>626,8357=>938,8358=>753,8359=>1339,8360=>1084,8361=>993,\n8362=>768,8363=>642,8365=>626,8366=>614,8367=>1252,8368=>626,8369=>626,8370=>626,8371=>626,8372=>773,\n8373=>626,8400=>0,8401=>0,8406=>0,8407=>0,8411=>0,8412=>0,8417=>0,8448=>995,8449=>995,\n8450=>660,8451=>1090,8452=>807,8453=>1002,8454=>1033,8455=>626,8456=>628,8457=>856,8459=>965,8460=>822,\n8461=>799,8462=>641,8463=>641,8464=>537,8465=>627,8466=>771,8467=>424,8468=>876,8469=>753,8470=>1083,\n8471=>900,8472=>627,8473=>675,8474=>765,8475=>844,8476=>732,8477=>721,8478=>807,8479=>639,8480=>917,\n8481=>1115,8483=>751,8484=>679,8485=>560,8486=>765,8487=>692,8488=>686,8489=>272,8490=>697,8491=>696,\n8492=>835,8493=>736,8494=>769,8495=>572,8496=>656,8497=>727,8498=>615,8499=>1065,8500=>418,8501=>714,\n8502=>658,8503=>444,8504=>615,8505=>342,8506=>851,8507=>1232,8508=>710,8509=>663,8510=>589,8511=>776,\n8512=>756,8513=>707,8514=>518,8515=>573,8516=>684,8517=>747,8518=>644,8519=>610,8520=>308,8521=>308,\n8523=>785,8526=>492,8531=>932,8532=>932,8533=>932,8534=>932,8535=>932,8536=>932,8537=>932,8538=>932,\n8539=>932,8540=>932,8541=>932,8542=>932,8543=>554,8544=>334,8545=>593,8546=>851,8547=>989,8548=>696,\n8549=>989,8550=>1247,8551=>1505,8552=>1008,8553=>694,8554=>1008,8555=>1266,8556=>573,8557=>660,8558=>747,\n8559=>896,8560=>308,8561=>546,8562=>785,8563=>885,8564=>586,8565=>866,8566=>1104,8567=>1342,8568=>872,\n8569=>580,8570=>872,8571=>1110,8572=>308,8573=>533,8574=>644,8575=>938,8576=>1160,8577=>747,8578=>1160,\n8579=>660,8580=>533,8592=>754,8593=>754,8594=>754,8595=>754,8596=>754,8597=>754,8598=>754,8599=>754,\n8600=>754,8601=>754,8602=>754,8603=>754,8604=>754,8605=>754,8606=>754,8607=>754,8608=>754,8609=>754,\n8610=>754,8611=>754,8612=>754,8613=>754,8614=>754,8615=>754,8616=>754,8617=>754,8618=>754,8619=>754,\n8620=>754,8621=>754,8622=>754,8623=>754,8624=>754,8625=>754,8626=>754,8627=>754,8628=>754,8629=>754,\n8630=>754,8631=>754,8632=>754,8633=>754,8634=>754,8635=>754,8636=>754,8637=>754,8638=>754,8639=>754,\n8640=>754,8641=>754,8642=>754,8643=>754,8644=>754,8645=>754,8646=>754,8647=>754,8648=>754,8649=>754,\n8650=>754,8651=>754,8652=>754,8653=>754,8654=>754,8655=>754,8656=>754,8657=>754,8658=>754,8659=>754,\n8660=>754,8661=>754,8662=>754,8663=>754,8664=>754,8665=>754,8666=>754,8667=>754,8668=>754,8669=>754,\n8670=>754,8671=>754,8672=>754,8673=>754,8674=>754,8675=>754,8676=>754,8677=>754,8678=>754,8679=>754,\n8680=>754,8681=>754,8682=>754,8683=>754,8684=>754,8685=>754,8686=>754,8687=>754,8688=>754,8689=>754,\n8690=>754,8691=>754,8692=>754,8693=>754,8694=>754,8695=>754,8696=>754,8697=>754,8698=>754,8699=>754,\n8700=>754,8701=>754,8702=>754,8703=>754,8704=>696,8705=>626,8706=>489,8707=>615,8708=>615,8709=>771,\n8710=>627,8711=>627,8712=>807,8713=>807,8714=>675,8715=>807,8716=>807,8717=>675,8718=>572,8719=>708,\n8720=>708,8721=>646,8722=>754,8723=>754,8724=>626,8725=>329,8726=>626,8727=>754,8728=>563,8729=>342,\n8730=>600,8731=>600,8732=>600,8733=>641,8734=>750,8735=>754,8736=>807,8737=>807,8738=>754,8739=>450,\n8740=>450,8741=>450,8742=>450,8743=>730,8744=>730,8745=>730,8746=>730,8747=>549,8748=>835,8749=>1165,\n8750=>506,8751=>879,8752=>1181,8753=>506,8754=>506,8755=>506,8756=>626,8757=>626,8758=>264,8759=>626,\n8760=>754,8761=>754,8762=>754,8763=>754,8764=>754,8765=>754,8766=>754,8767=>754,8768=>337,8769=>754,\n8770=>754,8771=>754,8772=>754,8773=>754,8774=>754,8775=>754,8776=>754,8777=>754,8778=>754,8779=>754,\n8780=>754,8781=>754,8782=>754,8783=>754,8784=>754,8785=>754,8786=>754,8787=>754,8788=>956,8789=>956,\n8790=>754,8791=>754,8792=>754,8793=>754,8794=>754,8795=>754,8796=>754,8797=>754,8798=>754,8799=>754,\n8800=>754,8801=>754,8802=>754,8803=>754,8804=>754,8805=>754,8806=>754,8807=>754,8808=>756,8809=>756,\n8810=>942,8811=>942,8812=>450,8813=>754,8814=>754,8815=>754,8816=>754,8817=>754,8818=>754,8819=>754,\n8820=>754,8821=>754,8822=>754,8823=>754,8824=>754,8825=>754,8826=>754,8827=>754,8828=>754,8829=>754,\n8830=>754,8831=>754,8832=>754,8833=>754,8834=>754,8835=>754,8836=>754,8837=>754,8838=>754,8839=>754,\n8840=>754,8841=>754,8842=>754,8843=>754,8844=>730,8845=>730,8846=>730,8847=>754,8848=>754,8849=>754,\n8850=>754,8851=>716,8852=>716,8853=>754,8854=>754,8855=>754,8856=>754,8857=>754,8858=>754,8859=>754,\n8860=>754,8861=>754,8862=>754,8863=>754,8864=>754,8865=>754,8866=>822,8867=>822,8868=>822,8869=>822,\n8870=>488,8871=>488,8872=>822,8873=>822,8874=>822,8875=>822,8876=>822,8877=>822,8878=>822,8879=>822,\n8880=>754,8881=>754,8882=>754,8883=>754,8884=>754,8885=>754,8886=>900,8887=>900,8888=>754,8889=>754,\n8890=>488,8891=>730,8892=>730,8893=>730,8894=>754,8895=>754,8896=>758,8897=>758,8898=>758,8899=>758,\n8900=>444,8901=>342,8902=>563,8903=>754,8904=>900,8905=>900,8906=>900,8907=>900,8908=>900,8909=>754,\n8910=>730,8911=>730,8912=>754,8913=>754,8914=>754,8915=>754,8916=>754,8917=>754,8918=>754,8919=>754,\n8920=>1280,8921=>1280,8922=>754,8923=>754,8924=>754,8925=>754,8926=>754,8927=>754,8928=>754,8929=>754,\n8930=>754,8931=>754,8932=>754,8933=>754,8934=>754,8935=>754,8936=>754,8937=>754,8938=>754,8939=>754,\n8940=>754,8941=>754,8942=>900,8943=>900,8944=>900,8945=>900,8946=>1042,8947=>807,8948=>675,8949=>807,\n8950=>807,8951=>675,8952=>807,8953=>807,8954=>1042,8955=>807,8956=>675,8957=>807,8958=>675,8959=>807,\n8960=>542,8961=>542,8962=>644,8963=>754,8964=>754,8965=>754,8966=>754,8967=>439,8968=>411,8969=>411,\n8970=>411,8971=>411,8972=>728,8973=>728,8974=>728,8975=>728,8976=>754,8977=>484,8984=>835,8985=>754,\n8988=>422,8989=>422,8990=>422,8991=>422,8992=>549,8993=>549,8996=>1037,8997=>1037,8998=>1272,8999=>1037,\n9000=>1299,9003=>1272,9004=>786,9075=>351,9076=>644,9077=>782,9082=>618,9085=>776,9095=>1037,9108=>786,\n9115=>450,9116=>450,9117=>450,9118=>450,9119=>450,9120=>450,9121=>450,9122=>450,9123=>450,9124=>450,\n9125=>450,9126=>450,9127=>675,9128=>675,9129=>675,9130=>675,9131=>675,9132=>675,9133=>675,9134=>549,\n9166=>754,9167=>850,9187=>786,9189=>692,9250=>644,9251=>644,9312=>762,9313=>762,9314=>762,9315=>762,\n9316=>762,9317=>762,9318=>762,9319=>762,9320=>762,9321=>762,9600=>692,9601=>692,9602=>692,9603=>692,\n9604=>692,9605=>692,9606=>692,9607=>692,9608=>692,9609=>692,9610=>692,9611=>692,9612=>692,9613=>692,\n9614=>692,9615=>692,9616=>692,9617=>692,9618=>692,9619=>692,9620=>692,9621=>692,9622=>692,9623=>692,\n9624=>692,9625=>692,9626=>692,9627=>692,9628=>692,9629=>692,9630=>692,9631=>692,9632=>850,9633=>850,\n9634=>850,9635=>850,9636=>850,9637=>850,9638=>850,9639=>850,9640=>850,9641=>850,9642=>610,9643=>610,\n9644=>850,9645=>850,9646=>495,9647=>495,9648=>692,9649=>692,9650=>692,9651=>692,9652=>452,9653=>452,\n9654=>692,9655=>692,9656=>452,9657=>452,9658=>692,9659=>692,9660=>692,9661=>692,9662=>452,9663=>452,\n9664=>692,9665=>692,9666=>452,9667=>452,9668=>692,9669=>692,9670=>692,9671=>692,9672=>692,9673=>785,\n9674=>444,9675=>785,9676=>785,9677=>785,9678=>785,9679=>785,9680=>785,9681=>785,9682=>785,9683=>785,\n9684=>785,9685=>785,9686=>474,9687=>474,9688=>756,9689=>873,9690=>873,9691=>873,9692=>348,9693=>348,\n9694=>348,9695=>348,9696=>692,9697=>692,9698=>692,9699=>692,9700=>692,9701=>692,9702=>575,9703=>850,\n9704=>850,9705=>850,9706=>850,9707=>850,9708=>692,9709=>692,9710=>692,9711=>1007,9712=>850,9713=>850,\n9714=>850,9715=>850,9716=>785,9717=>785,9718=>785,9719=>785,9720=>692,9721=>692,9722=>692,9723=>747,\n9724=>747,9725=>659,9726=>659,9727=>692,9728=>807,9729=>900,9730=>807,9731=>807,9732=>807,9733=>807,\n9734=>807,9735=>515,9736=>806,9737=>807,9738=>799,9739=>799,9740=>604,9741=>911,9742=>1121,9743=>1125,\n9744=>807,9745=>807,9746=>807,9747=>479,9748=>807,9749=>807,9750=>807,9751=>807,9752=>807,9753=>807,\n9754=>807,9755=>807,9756=>807,9757=>548,9758=>807,9759=>548,9760=>807,9761=>807,9762=>807,9763=>807,\n9764=>602,9765=>671,9766=>584,9767=>705,9768=>490,9769=>807,9770=>807,9771=>807,9772=>639,9773=>807,\n9774=>807,9775=>807,9776=>807,9777=>807,9778=>807,9779=>807,9780=>807,9781=>807,9782=>807,9783=>807,\n9784=>807,9785=>807,9786=>807,9787=>807,9788=>807,9789=>807,9790=>807,9791=>552,9792=>658,9793=>658,\n9794=>807,9795=>807,9796=>807,9797=>807,9798=>807,9799=>807,9800=>807,9801=>807,9802=>807,9803=>807,\n9804=>807,9805=>807,9806=>807,9807=>807,9808=>807,9809=>807,9810=>807,9811=>807,9812=>807,9813=>807,\n9814=>807,9815=>807,9816=>807,9817=>807,9818=>807,9819=>807,9820=>807,9821=>807,9822=>807,9823=>807,\n9824=>807,9825=>807,9826=>807,9827=>807,9828=>807,9829=>807,9830=>807,9831=>807,9832=>807,9833=>424,\n9834=>574,9835=>807,9836=>807,9837=>424,9838=>321,9839=>435,9840=>673,9841=>689,9842=>807,9843=>807,\n9844=>807,9845=>807,9846=>807,9847=>807,9848=>807,9849=>807,9850=>807,9851=>807,9852=>807,9853=>807,\n9854=>807,9855=>807,9856=>782,9857=>782,9858=>782,9859=>782,9860=>782,9861=>782,9862=>807,9863=>807,\n9864=>807,9865=>807,9866=>807,9867=>807,9868=>807,9869=>807,9870=>807,9871=>807,9872=>807,9873=>807,\n9874=>807,9875=>807,9876=>807,9877=>487,9878=>807,9879=>807,9880=>807,9881=>807,9882=>807,9883=>807,\n9884=>807,9888=>807,9889=>632,9890=>903,9891=>977,9892=>1028,9893=>811,9894=>754,9895=>754,9896=>754,\n9897=>754,9898=>754,9899=>754,9900=>754,9901=>754,9902=>754,9903=>754,9904=>759,9905=>754,9906=>658,\n9907=>659,9908=>659,9909=>659,9910=>765,9911=>659,9912=>659,9985=>754,9986=>754,9987=>754,9988=>754,\n9990=>754,9991=>754,9992=>754,9993=>754,9996=>754,9997=>754,9998=>754,9999=>754,10000=>754,10001=>754,\n10002=>754,10003=>754,10004=>754,10005=>754,10006=>754,10007=>754,10008=>754,10009=>754,10010=>754,10011=>754,\n10012=>754,10013=>754,10014=>754,10015=>754,10016=>754,10017=>754,10018=>754,10019=>754,10020=>754,10021=>754,\n10022=>754,10023=>754,10025=>754,10026=>754,10027=>754,10028=>754,10029=>754,10030=>754,10031=>754,10032=>754,\n10033=>754,10034=>754,10035=>754,10036=>754,10037=>754,10038=>754,10039=>754,10040=>754,10041=>754,10042=>754,\n10043=>754,10044=>754,10045=>754,10046=>754,10047=>754,10048=>754,10049=>754,10050=>754,10051=>754,10052=>754,\n10053=>754,10054=>754,10055=>754,10056=>754,10057=>754,10058=>754,10059=>754,10061=>807,10063=>807,10064=>807,\n10065=>807,10066=>807,10070=>807,10072=>754,10073=>754,10074=>754,10075=>290,10076=>290,10077=>484,10078=>484,\n10081=>754,10082=>754,10083=>754,10084=>754,10085=>754,10086=>754,10087=>754,10088=>754,10089=>754,10090=>754,\n10091=>754,10092=>754,10093=>754,10094=>754,10095=>754,10096=>754,10097=>754,10098=>754,10099=>754,10100=>754,\n10101=>754,10102=>762,10103=>762,10104=>762,10105=>762,10106=>762,10107=>762,10108=>762,10109=>762,10110=>762,\n10111=>762,10112=>754,10113=>754,10114=>754,10115=>754,10116=>754,10117=>754,10118=>754,10119=>754,10120=>754,\n10121=>754,10122=>754,10123=>754,10124=>754,10125=>754,10126=>754,10127=>754,10128=>754,10129=>754,10130=>754,\n10131=>754,10132=>754,10136=>754,10137=>754,10138=>754,10139=>754,10140=>754,10141=>754,10142=>754,10143=>754,\n10144=>754,10145=>754,10146=>754,10147=>754,10148=>754,10149=>754,10150=>754,10151=>754,10152=>754,10153=>754,\n10154=>754,10155=>754,10156=>754,10157=>754,10158=>754,10159=>754,10161=>754,10162=>754,10163=>754,10164=>754,\n10165=>754,10166=>754,10167=>754,10168=>754,10169=>754,10170=>754,10171=>754,10172=>754,10173=>754,10174=>754,\n10181=>411,10182=>411,10208=>444,10214=>438,10215=>438,10216=>411,10217=>411,10218=>648,10219=>648,10224=>754,\n10225=>754,10226=>754,10227=>754,10228=>1042,10229=>1290,10230=>1290,10231=>1290,10232=>1290,10233=>1290,10234=>1290,\n10235=>1290,10236=>1290,10237=>1290,10238=>1290,10239=>1290,10240=>703,10241=>703,10242=>703,10243=>703,10244=>703,\n10245=>703,10246=>703,10247=>703,10248=>703,10249=>703,10250=>703,10251=>703,10252=>703,10253=>703,10254=>703,\n10255=>703,10256=>703,10257=>703,10258=>703,10259=>703,10260=>703,10261=>703,10262=>703,10263=>703,10264=>703,\n10265=>703,10266=>703,10267=>703,10268=>703,10269=>703,10270=>703,10271=>703,10272=>703,10273=>703,10274=>703,\n10275=>703,10276=>703,10277=>703,10278=>703,10279=>703,10280=>703,10281=>703,10282=>703,10283=>703,10284=>703,\n10285=>703,10286=>703,10287=>703,10288=>703,10289=>703,10290=>703,10291=>703,10292=>703,10293=>703,10294=>703,\n10295=>703,10296=>703,10297=>703,10298=>703,10299=>703,10300=>703,10301=>703,10302=>703,10303=>703,10304=>703,\n10305=>703,10306=>703,10307=>703,10308=>703,10309=>703,10310=>703,10311=>703,10312=>703,10313=>703,10314=>703,\n10315=>703,10316=>703,10317=>703,10318=>703,10319=>703,10320=>703,10321=>703,10322=>703,10323=>703,10324=>703,\n10325=>703,10326=>703,10327=>703,10328=>703,10329=>703,10330=>703,10331=>703,10332=>703,10333=>703,10334=>703,\n10335=>703,10336=>703,10337=>703,10338=>703,10339=>703,10340=>703,10341=>703,10342=>703,10343=>703,10344=>703,\n10345=>703,10346=>703,10347=>703,10348=>703,10349=>703,10350=>703,10351=>703,10352=>703,10353=>703,10354=>703,\n10355=>703,10356=>703,10357=>703,10358=>703,10359=>703,10360=>703,10361=>703,10362=>703,10363=>703,10364=>703,\n10365=>703,10366=>703,10367=>703,10368=>703,10369=>703,10370=>703,10371=>703,10372=>703,10373=>703,10374=>703,\n10375=>703,10376=>703,10377=>703,10378=>703,10379=>703,10380=>703,10381=>703,10382=>703,10383=>703,10384=>703,\n10385=>703,10386=>703,10387=>703,10388=>703,10389=>703,10390=>703,10391=>703,10392=>703,10393=>703,10394=>703,\n10395=>703,10396=>703,10397=>703,10398=>703,10399=>703,10400=>703,10401=>703,10402=>703,10403=>703,10404=>703,\n10405=>703,10406=>703,10407=>703,10408=>703,10409=>703,10410=>703,10411=>703,10412=>703,10413=>703,10414=>703,\n10415=>703,10416=>703,10417=>703,10418=>703,10419=>703,10420=>703,10421=>703,10422=>703,10423=>703,10424=>703,\n10425=>703,10426=>703,10427=>703,10428=>703,10429=>703,10430=>703,10431=>703,10432=>703,10433=>703,10434=>703,\n10435=>703,10436=>703,10437=>703,10438=>703,10439=>703,10440=>703,10441=>703,10442=>703,10443=>703,10444=>703,\n10445=>703,10446=>703,10447=>703,10448=>703,10449=>703,10450=>703,10451=>703,10452=>703,10453=>703,10454=>703,\n10455=>703,10456=>703,10457=>703,10458=>703,10459=>703,10460=>703,10461=>703,10462=>703,10463=>703,10464=>703,\n10465=>703,10466=>703,10467=>703,10468=>703,10469=>703,10470=>703,10471=>703,10472=>703,10473=>703,10474=>703,\n10475=>703,10476=>703,10477=>703,10478=>703,10479=>703,10480=>703,10481=>703,10482=>703,10483=>703,10484=>703,\n10485=>703,10486=>703,10487=>703,10488=>703,10489=>703,10490=>703,10491=>703,10492=>703,10493=>703,10494=>703,\n10495=>703,10502=>754,10503=>754,10506=>754,10507=>754,10560=>754,10561=>754,10627=>678,10628=>678,10702=>754,\n10703=>941,10704=>941,10705=>900,10706=>900,10707=>900,10708=>900,10709=>900,10731=>444,10746=>754,10747=>754,\n10752=>900,10753=>900,10754=>900,10764=>1495,10765=>506,10766=>506,10767=>506,10768=>506,10769=>506,10770=>506,\n10771=>506,10772=>506,10773=>506,10774=>506,10775=>506,10776=>506,10777=>506,10778=>506,10779=>506,10780=>506,\n10799=>754,10877=>754,10878=>754,10879=>754,10880=>754,10881=>754,10882=>754,10883=>754,10884=>754,10885=>754,\n10886=>754,10887=>754,10888=>754,10889=>754,10890=>754,10891=>754,10892=>754,10893=>754,10894=>754,10895=>754,\n10896=>754,10897=>754,10898=>754,10899=>754,10900=>754,10901=>754,10902=>754,10903=>754,10904=>754,10905=>754,\n10906=>754,10907=>754,10908=>754,10909=>754,10910=>754,10911=>754,10912=>754,10926=>754,10927=>754,10928=>754,\n10929=>754,10930=>754,10931=>754,10932=>754,10933=>754,10934=>754,10935=>754,10936=>754,10937=>754,10938=>754,\n11001=>754,11002=>754,11008=>754,11009=>754,11010=>754,11011=>754,11012=>754,11013=>754,11014=>754,11015=>754,\n11016=>754,11017=>754,11018=>754,11019=>754,11020=>754,11021=>754,11022=>754,11023=>754,11024=>754,11025=>754,\n11026=>850,11027=>850,11028=>850,11029=>850,11030=>692,11031=>692,11032=>692,11033=>692,11034=>850,11039=>782,\n11040=>782,11041=>786,11042=>786,11043=>786,11044=>1007,11091=>782,11092=>782,11360=>573,11361=>324,11362=>573,\n11363=>659,11364=>693,11365=>607,11366=>430,11367=>860,11368=>641,11369=>697,11370=>598,11371=>652,11372=>523,\n11373=>774,11374=>896,11375=>696,11377=>700,11378=>1099,11379=>950,11380=>586,11381=>628,11382=>508,11383=>704,\n11385=>484,11386=>618,11387=>502,11388=>197,11389=>438,11800=>527,11810=>411,11811=>411,11812=>411,11813=>411,\n11822=>522,19904=>807,19905=>807,19906=>807,19907=>807,19908=>807,19909=>807,19910=>807,19911=>807,19912=>807,\n19913=>807,19914=>807,19915=>807,19916=>807,19917=>807,19918=>807,19919=>807,19920=>807,19921=>807,19922=>807,\n19923=>807,19924=>807,19925=>807,19926=>807,19927=>807,19928=>807,19929=>807,19930=>807,19931=>807,19932=>807,\n19933=>807,19934=>807,19935=>807,19936=>807,19937=>807,19938=>807,19939=>807,19940=>807,19941=>807,19942=>807,\n19943=>807,19944=>807,19945=>807,19946=>807,19947=>807,19948=>807,19949=>807,19950=>807,19951=>807,19952=>807,\n19953=>807,19954=>807,19955=>807,19956=>807,19957=>807,19958=>807,19959=>807,19960=>807,19961=>807,19962=>807,\n19963=>807,19964=>807,19965=>807,19966=>807,19967=>807,42564=>648,42565=>536,42566=>392,42567=>396,42572=>1265,\n42573=>1055,42576=>1110,42577=>924,42580=>1056,42581=>875,42582=>990,42583=>872,42594=>990,42595=>846,42596=>986,\n42597=>823,42598=>1134,42599=>896,42600=>765,42601=>618,42602=>933,42603=>781,42604=>1266,42605=>995,42606=>865,\n42634=>849,42635=>673,42636=>614,42637=>521,42644=>727,42645=>641,42760=>450,42761=>450,42762=>450,42763=>450,\n42764=>450,42765=>450,42766=>450,42767=>450,42768=>450,42769=>450,42770=>450,42771=>450,42772=>450,42773=>450,\n42774=>450,42779=>360,42780=>360,42781=>258,42782=>258,42783=>258,42790=>753,42791=>641,42792=>928,42793=>771,\n42794=>626,42795=>501,42800=>502,42801=>536,42802=>1214,42803=>946,42804=>1156,42805=>958,42806=>1120,42807=>947,\n42808=>971,42809=>830,42810=>971,42811=>830,42812=>932,42813=>830,42814=>628,42815=>494,42822=>765,42823=>488,\n42824=>614,42825=>478,42826=>826,42827=>732,42830=>1266,42831=>995,42880=>573,42881=>308,42882=>753,42883=>641,\n42889=>360,42890=>356,42891=>410,42892=>275,43003=>615,43004=>659,43005=>896,43006=>334,43007=>1192,62917=>618,\n64256=>749,64257=>708,64258=>708,64259=>1024,64260=>1024,64261=>727,64262=>917,64275=>1249,64276=>1245,64277=>1240,\n64278=>1245,64279=>1542,64285=>308,64286=>0,64287=>597,64288=>647,64289=>867,64290=>801,64291=>889,64292=>867,\n64293=>844,64294=>889,64295=>889,64296=>878,64297=>754,64298=>854,64299=>854,64300=>854,64301=>854,64302=>676,\n64303=>676,64304=>676,64305=>605,64306=>483,64307=>589,64308=>641,64309=>308,64310=>442,64312=>651,64313=>420,\n64314=>584,64315=>584,64316=>611,64318=>698,64320=>447,64321=>696,64323=>646,64324=>618,64326=>676,64327=>656,\n64328=>584,64329=>854,64330=>676,64331=>308,64332=>605,64333=>584,64334=>618,64335=>676,65024=>0,65025=>0,\n65026=>0,65027=>0,65028=>0,65029=>0,65030=>0,65031=>0,65032=>0,65033=>0,65034=>0,65035=>0,\n65036=>0,65037=>0,65038=>0,65039=>0,65056=>0,65057=>0,65058=>0,65059=>0,65529=>0,65530=>0,\n65531=>0,65532=>0,65533=>1002);\n$enc='';\n$diff='';\n$file='dejavusanscondensedbi.z';\n$ctg='dejavusanscondensedbi.ctg.z';\n$originalsize=493196;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavusanscondensedi.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='DejaVuSansCondensed-Oblique';\n$desc=array('Ascent'=>928,'Descent'=>-236,'CapHeight'=>-39,'Flags'=>96,'FontBBox'=>'[-914 -350 1493 1068]','ItalicAngle'=>-11,'StemV'=>70,'MissingWidth'=>540);\n$up=-63;\n$ut=44;\n$dw=540;\n$cw=array(\n0=>540,32=>286,33=>360,34=>414,35=>754,36=>572,37=>855,38=>702,39=>247,40=>351,\n41=>351,42=>450,43=>754,44=>286,45=>325,46=>286,47=>303,48=>572,49=>572,50=>572,\n51=>572,52=>572,53=>572,54=>572,55=>572,56=>572,57=>572,58=>303,59=>303,60=>754,\n61=>754,62=>754,63=>478,64=>900,65=>615,66=>617,67=>628,68=>693,69=>568,70=>518,\n71=>697,72=>677,73=>265,74=>265,75=>590,76=>501,77=>776,78=>673,79=>708,80=>542,\n81=>708,82=>625,83=>571,84=>549,85=>659,86=>615,87=>890,88=>616,89=>549,90=>616,\n91=>351,92=>303,93=>351,94=>754,95=>450,96=>450,97=>551,98=>571,99=>495,100=>571,\n101=>554,102=>316,103=>571,104=>570,105=>250,106=>250,107=>521,108=>250,109=>876,110=>570,\n111=>550,112=>571,113=>571,114=>370,115=>469,116=>353,117=>570,118=>532,119=>736,120=>532,\n121=>532,122=>472,123=>572,124=>303,125=>572,126=>754,8364=>572,8218=>286,402=>316,8222=>466,\n8230=>900,8224=>450,8225=>450,710=>450,8240=>1215,352=>571,8249=>360,338=>962,381=>616,8216=>286,\n8217=>286,8220=>466,8221=>466,8226=>531,8211=>450,8212=>900,732=>450,8482=>900,353=>469,8250=>360,\n339=>925,382=>472,376=>549,160=>286,161=>360,162=>572,163=>572,164=>572,165=>572,166=>303,\n167=>450,168=>450,169=>900,170=>424,171=>555,172=>754,173=>325,174=>900,175=>450,176=>450,\n177=>754,178=>360,179=>360,180=>450,181=>572,182=>572,183=>286,184=>450,185=>360,186=>424,\n187=>555,188=>872,189=>872,190=>872,191=>478,192=>615,193=>615,194=>615,195=>615,196=>615,\n197=>615,198=>876,199=>628,200=>568,201=>568,202=>568,203=>568,204=>265,205=>265,206=>265,\n207=>265,208=>697,209=>673,210=>708,211=>708,212=>708,213=>708,214=>708,215=>754,216=>708,\n217=>659,218=>659,219=>659,220=>659,221=>549,222=>547,223=>567,224=>551,225=>551,226=>551,\n227=>551,228=>551,229=>551,230=>896,231=>495,232=>554,233=>554,234=>554,235=>554,236=>250,\n237=>250,238=>250,239=>250,240=>550,241=>570,242=>550,243=>550,244=>550,245=>550,246=>550,\n247=>754,248=>550,249=>570,250=>570,251=>570,252=>570,253=>532,254=>571,255=>532,256=>615,\n257=>551,258=>615,259=>551,260=>615,261=>551,262=>628,263=>495,264=>628,265=>495,266=>628,\n267=>495,268=>628,269=>495,270=>693,271=>571,272=>697,273=>571,274=>568,275=>554,276=>568,\n277=>554,278=>568,279=>554,280=>568,281=>554,282=>568,283=>554,284=>697,285=>571,286=>697,\n287=>571,288=>697,289=>571,290=>697,291=>571,292=>677,293=>570,294=>824,295=>625,296=>265,\n297=>250,298=>265,299=>250,300=>265,301=>250,302=>265,303=>250,304=>265,305=>250,306=>531,\n307=>500,308=>265,309=>250,310=>590,311=>521,312=>521,313=>501,314=>250,315=>501,316=>250,\n317=>501,318=>250,319=>501,320=>250,321=>505,322=>258,323=>673,324=>570,325=>673,326=>570,\n327=>673,328=>570,329=>732,330=>673,331=>570,332=>708,333=>550,334=>708,335=>550,336=>708,\n337=>550,340=>625,341=>370,342=>625,343=>370,344=>625,345=>370,346=>571,347=>469,348=>571,\n349=>469,350=>571,351=>469,354=>549,355=>353,356=>549,357=>353,358=>549,359=>353,360=>659,\n361=>570,362=>659,363=>570,364=>659,365=>570,366=>659,367=>570,368=>659,369=>570,370=>659,\n371=>570,372=>890,373=>736,374=>549,375=>532,377=>616,378=>472,379=>616,380=>472,383=>316,\n384=>571,385=>661,386=>617,387=>571,388=>617,389=>571,390=>633,391=>628,392=>495,393=>697,\n394=>737,395=>617,396=>571,397=>550,398=>568,399=>708,400=>553,401=>518,403=>697,404=>618,\n405=>885,406=>318,407=>265,408=>671,409=>521,410=>250,411=>532,412=>876,413=>673,414=>570,\n415=>708,416=>822,417=>550,418=>844,419=>663,420=>586,421=>571,422=>625,423=>571,424=>469,\n425=>568,426=>302,427=>353,428=>549,429=>353,430=>549,431=>754,432=>570,433=>688,434=>648,\n435=>669,436=>657,437=>616,438=>472,439=>599,440=>599,441=>520,442=>472,443=>572,444=>599,\n445=>520,446=>459,447=>571,448=>265,449=>443,450=>413,451=>266,452=>1310,453=>1165,454=>1043,\n455=>767,456=>751,457=>500,458=>938,459=>923,460=>820,461=>615,462=>551,463=>265,464=>250,\n465=>708,466=>550,467=>659,468=>570,469=>659,470=>570,471=>659,472=>570,473=>659,474=>570,\n475=>659,476=>570,477=>554,478=>615,479=>551,480=>615,481=>551,482=>876,483=>896,484=>697,\n485=>571,486=>697,487=>571,488=>590,489=>521,490=>708,491=>550,492=>708,493=>550,494=>599,\n495=>472,496=>250,497=>1310,498=>1165,499=>1043,500=>697,501=>571,502=>1001,503=>614,504=>673,\n505=>570,506=>615,507=>551,508=>876,509=>896,510=>708,511=>550,512=>615,513=>551,514=>615,\n515=>551,516=>568,517=>554,518=>568,519=>554,520=>265,521=>250,522=>265,523=>250,524=>708,\n525=>550,526=>708,527=>550,528=>625,529=>370,530=>625,531=>370,532=>659,533=>570,534=>659,\n535=>570,536=>571,537=>469,538=>549,539=>353,540=>564,541=>469,542=>677,543=>570,544=>662,\n545=>754,546=>628,547=>549,548=>616,549=>472,550=>615,551=>551,552=>568,553=>554,554=>708,\n555=>550,556=>708,557=>550,558=>708,559=>550,560=>708,561=>550,562=>549,563=>532,564=>427,\n565=>758,566=>429,567=>250,568=>898,569=>898,570=>615,571=>628,572=>495,573=>501,574=>549,\n575=>469,576=>472,577=>542,578=>431,579=>617,580=>659,581=>615,582=>568,583=>554,584=>265,\n585=>250,586=>703,587=>571,588=>625,589=>370,590=>549,591=>532,592=>551,593=>571,594=>571,\n595=>571,596=>495,597=>495,598=>571,599=>654,600=>554,601=>554,602=>759,603=>490,604=>490,\n605=>698,606=>598,607=>293,608=>626,609=>571,610=>566,611=>536,612=>536,613=>570,614=>570,\n615=>570,616=>334,617=>348,618=>334,619=>356,620=>438,621=>250,622=>635,623=>876,624=>876,\n625=>876,626=>581,627=>578,628=>570,629=>550,630=>772,631=>655,632=>593,633=>422,634=>422,\n635=>422,636=>422,637=>422,638=>477,639=>477,640=>541,641=>541,642=>469,643=>302,644=>302,\n645=>415,646=>302,647=>353,648=>353,649=>570,650=>556,651=>538,652=>532,653=>736,654=>532,\n655=>549,656=>472,657=>472,658=>520,659=>520,660=>459,661=>459,662=>459,663=>459,664=>708,\n665=>521,666=>598,667=>637,668=>588,669=>263,670=>600,671=>456,672=>654,673=>459,674=>459,\n675=>913,676=>952,677=>911,678=>742,679=>549,680=>700,681=>763,682=>576,683=>589,684=>463,\n685=>463,686=>513,687=>597,688=>359,689=>359,690=>157,691=>233,692=>266,693=>266,694=>341,\n695=>463,696=>335,697=>250,698=>414,699=>286,700=>286,701=>286,702=>276,703=>276,704=>333,\n705=>333,706=>450,707=>450,708=>450,709=>450,711=>450,712=>247,713=>450,714=>450,715=>450,\n716=>247,717=>450,718=>450,719=>450,720=>303,721=>303,722=>276,723=>276,724=>450,725=>450,\n726=>351,727=>286,728=>450,729=>450,730=>450,731=>450,733=>450,734=>284,735=>450,736=>383,\n737=>149,738=>335,739=>399,740=>333,741=>444,742=>444,743=>444,744=>444,745=>444,748=>450,\n749=>450,750=>466,755=>450,759=>450,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,\n774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,\n784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,\n794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,\n804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,\n814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,\n824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,\n834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,\n844=>0,845=>0,846=>0,847=>0,849=>0,850=>0,851=>0,855=>0,856=>0,858=>0,\n860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,880=>589,881=>511,882=>775,\n883=>583,884=>250,885=>250,886=>673,887=>584,890=>450,891=>494,892=>495,893=>494,894=>303,\n900=>450,901=>450,902=>615,903=>286,904=>690,905=>813,906=>391,908=>755,910=>773,911=>814,\n912=>304,913=>615,914=>617,915=>501,916=>615,917=>568,918=>616,919=>677,920=>708,921=>265,\n922=>590,923=>615,924=>776,925=>673,926=>568,927=>708,928=>677,929=>542,931=>568,932=>549,\n933=>549,934=>708,935=>616,936=>708,937=>688,938=>265,939=>549,940=>593,941=>486,942=>570,\n943=>304,944=>521,945=>593,946=>574,947=>532,948=>550,949=>486,950=>489,951=>570,952=>550,\n953=>304,954=>530,955=>532,956=>572,957=>502,958=>501,959=>550,960=>542,961=>571,962=>528,\n963=>570,964=>542,965=>521,966=>593,967=>532,968=>593,969=>753,970=>304,971=>521,972=>550,\n973=>521,974=>753,975=>590,976=>553,977=>557,978=>628,979=>758,980=>628,981=>593,982=>753,\n983=>597,984=>708,985=>550,986=>583,987=>528,988=>518,989=>413,990=>593,991=>593,992=>778,\n993=>564,994=>840,995=>753,996=>682,997=>593,998=>712,999=>553,1000=>618,1001=>546,1002=>690,\n1003=>563,1004=>629,1005=>550,1006=>549,1007=>482,1008=>597,1009=>571,1010=>495,1011=>250,1012=>708,\n1013=>554,1014=>554,1015=>547,1016=>571,1017=>628,1018=>776,1019=>585,1020=>571,1021=>633,1022=>628,\n1023=>633,1024=>568,1025=>568,1026=>708,1027=>501,1028=>628,1029=>571,1030=>265,1031=>265,1032=>265,\n1033=>984,1034=>940,1035=>708,1036=>639,1037=>673,1038=>548,1039=>677,1040=>615,1041=>617,1042=>617,\n1043=>501,1044=>703,1045=>568,1046=>969,1047=>577,1048=>673,1049=>673,1050=>639,1051=>677,1052=>776,\n1053=>677,1054=>708,1055=>677,1056=>542,1057=>628,1058=>549,1059=>548,1060=>774,1061=>616,1062=>699,\n1063=>617,1064=>962,1065=>984,1066=>749,1067=>736,1068=>617,1069=>628,1070=>971,1071=>625,1072=>551,\n1073=>555,1074=>530,1075=>473,1076=>622,1077=>554,1078=>811,1079=>479,1080=>584,1081=>584,1082=>543,\n1083=>575,1084=>679,1085=>588,1086=>550,1087=>588,1088=>571,1089=>495,1090=>524,1091=>532,1092=>769,\n1093=>532,1094=>612,1095=>532,1096=>823,1097=>848,1098=>636,1099=>710,1100=>530,1101=>494,1102=>757,\n1103=>541,1104=>554,1105=>554,1106=>563,1107=>473,1108=>494,1109=>469,1110=>250,1111=>250,1112=>250,\n1113=>812,1114=>809,1115=>586,1116=>543,1117=>584,1118=>532,1119=>588,1120=>840,1121=>753,1122=>693,\n1123=>604,1124=>848,1125=>674,1126=>791,1127=>705,1128=>1043,1129=>901,1130=>708,1131=>550,1132=>924,\n1133=>742,1134=>572,1135=>486,1136=>771,1137=>789,1138=>708,1139=>550,1140=>703,1141=>598,1142=>703,\n1143=>598,1144=>893,1145=>813,1146=>857,1147=>682,1148=>1062,1149=>925,1150=>840,1151=>753,1152=>628,\n1153=>495,1154=>452,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>376,1161=>376,1162=>673,\n1163=>591,1164=>617,1165=>530,1166=>542,1167=>571,1168=>549,1169=>473,1170=>607,1171=>500,1172=>501,\n1173=>441,1174=>969,1175=>811,1176=>577,1177=>479,1178=>639,1179=>543,1180=>639,1181=>543,1182=>639,\n1183=>543,1184=>771,1185=>748,1186=>677,1187=>594,1188=>913,1189=>789,1190=>1002,1191=>855,1192=>801,\n1193=>636,1194=>628,1195=>495,1196=>549,1197=>476,1198=>549,1199=>532,1200=>549,1201=>532,1202=>616,\n1203=>532,1204=>840,1205=>726,1206=>617,1207=>532,1208=>617,1209=>532,1210=>617,1211=>570,1212=>836,\n1213=>658,1214=>836,1215=>658,1216=>265,1217=>969,1218=>811,1219=>589,1220=>543,1221=>677,1222=>575,\n1223=>677,1224=>594,1225=>677,1226=>594,1227=>617,1228=>532,1229=>776,1230=>679,1231=>250,1232=>615,\n1233=>551,1234=>615,1235=>551,1236=>876,1237=>896,1238=>568,1239=>554,1240=>708,1241=>554,1242=>708,\n1243=>554,1244=>969,1245=>811,1246=>577,1247=>479,1248=>599,1249=>520,1250=>673,1251=>584,1252=>673,\n1253=>584,1254=>708,1255=>550,1256=>708,1257=>550,1258=>708,1259=>550,1260=>628,1261=>494,1262=>548,\n1263=>532,1264=>548,1265=>532,1266=>548,1267=>532,1268=>617,1269=>532,1270=>501,1271=>442,1272=>736,\n1273=>710,1274=>607,1275=>500,1276=>616,1277=>532,1278=>616,1279=>532,1280=>617,1281=>530,1282=>905,\n1283=>807,1284=>877,1285=>782,1286=>611,1287=>529,1288=>964,1289=>861,1290=>1001,1291=>870,1292=>697,\n1293=>593,1294=>695,1295=>640,1296=>553,1297=>486,1298=>677,1299=>575,1300=>1076,1301=>896,1302=>810,\n1303=>780,1304=>927,1305=>890,1306=>708,1307=>571,1308=>890,1309=>736,1312=>1002,1313=>848,1314=>1002,\n1315=>854,1316=>713,1317=>614,1329=>780,1330=>659,1331=>794,1332=>794,1333=>659,1334=>579,1335=>613,\n1336=>659,1337=>765,1338=>794,1339=>659,1340=>501,1341=>741,1342=>888,1343=>659,1344=>636,1345=>579,\n1346=>794,1347=>699,1348=>794,1349=>659,1350=>756,1351=>659,1352=>659,1353=>659,1354=>711,1355=>579,\n1356=>794,1357=>659,1358=>794,1359=>571,1360=>659,1361=>659,1362=>719,1363=>774,1364=>711,1365=>708,\n1366=>571,1369=>276,1370=>286,1371=>450,1372=>450,1373=>352,1374=>474,1375=>450,1377=>876,1378=>570,\n1379=>686,1380=>690,1381=>570,1382=>627,1383=>479,1384=>570,1385=>630,1386=>627,1387=>570,1388=>363,\n1389=>804,1390=>576,1391=>570,1392=>570,1393=>571,1394=>631,1395=>570,1396=>593,1397=>250,1398=>684,\n1399=>464,1400=>570,1401=>407,1402=>876,1403=>464,1404=>691,1405=>570,1406=>626,1407=>876,1408=>570,\n1409=>571,1410=>451,1411=>876,1412=>583,1413=>550,1414=>566,1415=>686,1417=>303,1418=>390,1456=>0,\n1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1466=>0,\n1467=>0,1468=>0,1469=>0,1470=>325,1471=>0,1472=>265,1473=>0,1474=>0,1475=>265,1478=>410,\n1479=>0,1488=>566,1489=>547,1490=>403,1491=>534,1492=>576,1493=>245,1494=>336,1495=>576,1496=>583,\n1497=>245,1498=>532,1499=>500,1500=>539,1501=>576,1502=>593,1503=>245,1504=>397,1505=>629,1506=>506,\n1507=>576,1508=>543,1509=>468,1510=>523,1511=>596,1512=>532,1513=>727,1514=>591,1520=>423,1521=>409,\n1522=>423,1523=>374,1524=>580,3647=>586,3713=>603,3714=>615,3716=>619,3719=>434,3720=>565,3722=>615,\n3725=>619,3732=>577,3733=>577,3734=>605,3735=>589,3737=>576,3738=>533,3739=>533,3740=>670,3741=>690,\n3742=>618,3743=>618,3745=>631,3746=>619,3747=>615,3749=>584,3751=>569,3754=>633,3755=>737,3757=>569,\n3758=>615,3759=>708,3760=>569,3761=>0,3762=>485,3763=>485,3764=>0,3765=>0,3766=>0,3767=>0,\n3768=>0,3769=>0,3771=>0,3772=>0,3773=>597,3776=>324,3777=>611,3778=>414,3779=>492,3780=>442,\n3782=>606,3784=>0,3785=>0,3786=>0,3787=>0,3788=>0,3789=>0,3792=>572,3793=>576,3794=>576,\n3795=>603,3796=>563,3797=>563,3798=>633,3799=>603,3800=>606,3801=>609,3804=>925,3805=>925,4256=>756,\n4257=>621,4258=>577,4259=>683,4260=>532,4261=>617,4262=>710,4263=>729,4264=>420,4265=>508,4266=>710,\n4267=>713,4268=>526,4269=>753,4270=>675,4271=>620,4272=>729,4273=>526,4274=>526,4275=>753,4276=>753,\n4277=>581,4278=>543,4279=>526,4280=>536,4281=>526,4282=>649,4283=>715,4284=>526,4285=>510,4286=>526,\n4287=>602,4288=>719,4289=>488,4290=>598,4291=>488,4292=>508,4293=>606,4304=>457,4305=>457,4306=>479,\n4307=>706,4308=>470,4309=>465,4310=>457,4311=>717,4312=>457,4313=>466,4314=>952,4315=>470,4316=>470,\n4317=>704,4318=>466,4319=>470,4320=>713,4321=>470,4322=>590,4323=>471,4324=>709,4325=>470,4326=>704,\n4327=>470,4328=>470,4329=>470,4330=>510,4331=>470,4332=>470,4333=>439,4334=>470,4335=>448,4336=>465,\n4337=>504,4338=>457,4339=>457,4340=>457,4341=>507,4342=>741,4343=>536,4344=>470,4345=>498,4346=>498,\n4347=>527,4348=>273,5121=>615,5122=>615,5123=>615,5124=>615,5125=>692,5126=>692,5127=>692,5129=>692,\n5130=>692,5131=>692,5132=>751,5133=>751,5134=>751,5135=>751,5136=>751,5137=>751,5138=>870,5139=>906,\n5140=>870,5141=>906,5142=>692,5143=>870,5144=>906,5145=>870,5146=>906,5147=>692,5149=>230,5150=>488,\n5151=>381,5152=>381,5153=>350,5154=>350,5155=>354,5156=>350,5157=>419,5158=>347,5159=>230,5160=>350,\n5161=>350,5162=>350,5163=>980,5164=>817,5165=>857,5166=>1005,5167=>615,5168=>615,5169=>615,5170=>615,\n5171=>656,5172=>656,5173=>656,5175=>656,5176=>656,5177=>656,5178=>751,5179=>615,5180=>751,5181=>751,\n5182=>751,5183=>751,5184=>870,5185=>906,5186=>870,5187=>906,5188=>870,5189=>906,5190=>870,5191=>906,\n5192=>656,5193=>457,5194=>172,5196=>659,5197=>659,5198=>659,5199=>659,5200=>657,5201=>657,5202=>657,\n5204=>657,5205=>657,5206=>657,5207=>829,5208=>800,5209=>829,5210=>800,5211=>829,5212=>800,5213=>835,\n5214=>810,5215=>835,5216=>810,5217=>853,5218=>810,5219=>853,5220=>810,5221=>853,5222=>391,5223=>790,\n5224=>790,5225=>779,5226=>801,5227=>565,5228=>565,5229=>565,5230=>565,5231=>565,5232=>565,5233=>565,\n5234=>565,5235=>565,5236=>773,5237=>693,5238=>733,5239=>734,5240=>733,5241=>734,5242=>773,5243=>693,\n5244=>773,5245=>693,5246=>733,5247=>734,5248=>733,5249=>734,5250=>733,5251=>366,5252=>366,5253=>675,\n5254=>697,5255=>675,5256=>697,5257=>565,5258=>565,5259=>565,5260=>565,5261=>565,5262=>565,5263=>565,\n5264=>565,5265=>565,5266=>773,5267=>693,5268=>733,5269=>734,5270=>733,5271=>734,5272=>773,5273=>693,\n5274=>773,5275=>693,5276=>733,5277=>734,5278=>733,5279=>734,5280=>733,5281=>391,5282=>391,5283=>549,\n5284=>501,5285=>501,5286=>501,5287=>549,5288=>549,5289=>549,5290=>501,5291=>501,5292=>674,5293=>691,\n5294=>671,5295=>687,5296=>671,5297=>687,5298=>674,5299=>691,5300=>674,5301=>691,5302=>671,5303=>687,\n5304=>671,5305=>687,5306=>671,5307=>347,5308=>457,5309=>347,5312=>766,5313=>766,5314=>766,5315=>766,\n5316=>766,5317=>766,5318=>766,5319=>766,5320=>766,5321=>962,5322=>931,5323=>953,5324=>766,5325=>953,\n5326=>766,5327=>766,5328=>540,5329=>407,5330=>540,5331=>766,5332=>766,5333=>766,5334=>766,5335=>766,\n5336=>766,5337=>766,5338=>766,5339=>766,5340=>962,5341=>931,5342=>953,5343=>927,5344=>953,5345=>927,\n5346=>962,5347=>931,5348=>962,5349=>931,5350=>975,5351=>927,5352=>975,5353=>927,5354=>540,5356=>656,\n5357=>542,5358=>542,5359=>542,5360=>542,5361=>542,5362=>542,5363=>542,5364=>542,5365=>542,5366=>751,\n5367=>678,5368=>712,5369=>694,5370=>712,5371=>694,5372=>751,5373=>678,5374=>751,5375=>678,5376=>712,\n5377=>694,5378=>712,5379=>694,5380=>712,5381=>376,5382=>378,5383=>376,5392=>641,5393=>641,5394=>641,\n5395=>802,5396=>802,5397=>802,5398=>802,5399=>818,5400=>785,5401=>818,5402=>785,5403=>818,5404=>785,\n5405=>1026,5406=>989,5407=>1026,5408=>989,5409=>1026,5410=>989,5411=>1026,5412=>989,5413=>576,5414=>564,\n5415=>564,5416=>564,5417=>564,5418=>564,5419=>564,5420=>564,5421=>564,5422=>564,5423=>760,5424=>703,\n5425=>734,5426=>736,5427=>734,5428=>736,5429=>760,5430=>703,5431=>760,5432=>703,5433=>734,5434=>736,\n5435=>734,5436=>736,5437=>734,5438=>376,5440=>350,5441=>436,5442=>824,5443=>824,5444=>776,5445=>824,\n5446=>776,5447=>776,5448=>542,5449=>542,5450=>542,5451=>542,5452=>542,5453=>542,5454=>751,5455=>678,\n5456=>376,5458=>656,5459=>615,5460=>615,5461=>615,5462=>615,5463=>653,5464=>653,5465=>653,5466=>653,\n5467=>831,5468=>906,5469=>457,5470=>659,5471=>659,5472=>659,5473=>659,5474=>659,5475=>659,5476=>657,\n5477=>657,5478=>657,5479=>657,5480=>853,5481=>810,5482=>457,5492=>747,5493=>747,5494=>747,5495=>747,\n5496=>747,5497=>747,5498=>747,5499=>507,5500=>677,5501=>436,5502=>942,5503=>942,5504=>942,5505=>942,\n5506=>942,5507=>942,5508=>942,5509=>743,5514=>747,5515=>747,5516=>747,5517=>747,5518=>1133,5519=>1133,\n5520=>1133,5521=>901,5522=>901,5523=>1133,5524=>1133,5525=>629,5526=>965,5536=>766,5537=>766,5538=>719,\n5539=>719,5540=>719,5541=>719,5542=>540,5543=>579,5544=>579,5545=>579,5546=>579,5547=>579,5548=>579,\n5549=>579,5550=>376,5551=>565,5598=>693,5601=>693,5702=>421,5703=>421,5742=>399,5743=>942,5744=>1178,\n5745=>1469,5746=>1469,5747=>1237,5748=>1237,5749=>1469,5750=>1469,7424=>532,7425=>646,7426=>883,7427=>527,\n7428=>495,7429=>544,7430=>544,7431=>441,7432=>486,7433=>250,7434=>355,7435=>521,7436=>524,7437=>679,\n7438=>584,7439=>550,7440=>495,7441=>615,7442=>615,7443=>615,7444=>920,7446=>550,7447=>550,7448=>472,\n7449=>541,7450=>541,7451=>524,7452=>517,7453=>663,7454=>853,7455=>574,7456=>532,7457=>736,7458=>472,\n7459=>473,7462=>524,7463=>532,7464=>507,7465=>472,7466=>531,7467=>575,7468=>387,7469=>552,7470=>389,\n7472=>436,7473=>358,7474=>358,7475=>439,7476=>426,7477=>167,7478=>167,7479=>372,7480=>315,7481=>489,\n7482=>424,7483=>424,7484=>446,7485=>396,7486=>342,7487=>394,7488=>346,7489=>415,7490=>560,7491=>352,\n7492=>352,7493=>365,7494=>583,7495=>385,7496=>365,7497=>375,7498=>375,7499=>324,7500=>323,7501=>365,\n7502=>161,7503=>383,7504=>561,7505=>368,7506=>372,7507=>333,7508=>372,7509=>372,7510=>385,7511=>265,\n7512=>364,7513=>422,7514=>561,7515=>375,7517=>361,7518=>335,7519=>347,7520=>374,7521=>327,7522=>161,\n7523=>233,7524=>364,7525=>375,7526=>361,7527=>335,7528=>370,7529=>374,7530=>327,7543=>571,7544=>426,\n7547=>334,7557=>250,7579=>365,7580=>333,7581=>333,7582=>372,7583=>324,7584=>267,7585=>209,7586=>365,\n7587=>364,7588=>235,7589=>224,7590=>234,7591=>235,7592=>211,7593=>224,7594=>211,7595=>338,7596=>561,\n7597=>561,7598=>369,7599=>431,7600=>368,7601=>372,7602=>372,7603=>324,7604=>258,7605=>265,7606=>457,\n7607=>376,7608=>325,7609=>365,7610=>375,7611=>330,7612=>393,7613=>330,7614=>353,7615=>372,7620=>0,\n7621=>0,7622=>0,7623=>0,7624=>0,7625=>0,7680=>615,7681=>551,7682=>617,7683=>571,7684=>617,\n7685=>571,7686=>617,7687=>571,7688=>628,7689=>495,7690=>693,7691=>571,7692=>693,7693=>571,7694=>693,\n7695=>571,7696=>693,7697=>571,7698=>693,7699=>571,7700=>568,7701=>554,7702=>568,7703=>554,7704=>568,\n7705=>554,7706=>568,7707=>554,7708=>568,7709=>554,7710=>518,7711=>316,7712=>697,7713=>571,7714=>677,\n7715=>570,7716=>677,7717=>570,7718=>677,7719=>570,7720=>677,7721=>570,7722=>677,7723=>570,7724=>265,\n7725=>250,7726=>265,7727=>250,7728=>590,7729=>521,7730=>590,7731=>521,7732=>590,7733=>521,7734=>501,\n7735=>250,7736=>501,7737=>250,7738=>501,7739=>250,7740=>501,7741=>250,7742=>776,7743=>876,7744=>776,\n7745=>876,7746=>776,7747=>876,7748=>673,7749=>570,7750=>673,7751=>570,7752=>673,7753=>570,7754=>673,\n7755=>570,7756=>708,7757=>550,7758=>708,7759=>550,7760=>708,7761=>550,7762=>708,7763=>550,7764=>542,\n7765=>571,7766=>542,7767=>571,7768=>625,7769=>370,7770=>625,7771=>370,7772=>625,7773=>370,7774=>625,\n7775=>370,7776=>571,7777=>469,7778=>571,7779=>469,7780=>571,7781=>469,7782=>571,7783=>469,7784=>571,\n7785=>469,7786=>549,7787=>353,7788=>549,7789=>353,7790=>549,7791=>353,7792=>549,7793=>353,7794=>659,\n7795=>570,7796=>659,7797=>570,7798=>659,7799=>570,7800=>659,7801=>570,7802=>659,7803=>570,7804=>615,\n7805=>532,7806=>615,7807=>532,7808=>890,7809=>736,7810=>890,7811=>736,7812=>890,7813=>736,7814=>890,\n7815=>736,7816=>890,7817=>736,7818=>616,7819=>532,7820=>616,7821=>532,7822=>549,7823=>532,7824=>616,\n7825=>472,7826=>616,7827=>472,7828=>616,7829=>472,7830=>570,7831=>353,7832=>736,7833=>532,7834=>551,\n7835=>316,7838=>691,7839=>550,7840=>615,7841=>551,7842=>615,7843=>551,7844=>615,7845=>551,7846=>615,\n7847=>551,7848=>615,7849=>551,7850=>615,7851=>551,7852=>615,7853=>551,7854=>615,7855=>551,7856=>615,\n7857=>551,7858=>615,7859=>551,7860=>615,7861=>551,7862=>615,7863=>551,7864=>568,7865=>554,7866=>568,\n7867=>554,7868=>568,7869=>554,7870=>568,7871=>554,7872=>568,7873=>554,7874=>568,7875=>554,7876=>568,\n7877=>554,7878=>568,7879=>554,7880=>265,7881=>250,7882=>265,7883=>250,7884=>708,7885=>550,7886=>708,\n7887=>550,7888=>708,7889=>550,7890=>708,7891=>550,7892=>708,7893=>550,7894=>708,7895=>550,7896=>708,\n7897=>550,7898=>822,7899=>550,7900=>822,7901=>550,7902=>822,7903=>550,7904=>822,7905=>550,7906=>822,\n7907=>550,7908=>659,7909=>570,7910=>659,7911=>570,7912=>754,7913=>570,7914=>754,7915=>570,7916=>754,\n7917=>570,7918=>754,7919=>570,7920=>754,7921=>570,7922=>549,7923=>532,7924=>549,7925=>532,7926=>549,\n7927=>532,7928=>549,7929=>532,7936=>593,7937=>593,7938=>593,7939=>593,7940=>593,7941=>593,7942=>593,\n7943=>593,7944=>615,7945=>615,7946=>790,7947=>790,7948=>692,7949=>721,7950=>637,7951=>668,7952=>486,\n7953=>486,7954=>486,7955=>486,7956=>486,7957=>486,7960=>640,7961=>640,7962=>869,7963=>877,7964=>809,\n7965=>835,7968=>570,7969=>570,7970=>570,7971=>570,7972=>570,7973=>570,7974=>570,7975=>570,7976=>753,\n7977=>751,7978=>977,7979=>980,7980=>924,7981=>945,7982=>840,7983=>852,7984=>304,7985=>304,7986=>304,\n7987=>304,7988=>304,7989=>304,7990=>304,7991=>304,7992=>342,7993=>336,7994=>571,7995=>571,7996=>513,\n7997=>540,7998=>440,7999=>443,8000=>550,8001=>550,8002=>550,8003=>550,8004=>550,8005=>550,8008=>724,\n8009=>763,8010=>985,8011=>989,8012=>844,8013=>873,8016=>521,8017=>521,8018=>521,8019=>521,8020=>521,\n8021=>521,8022=>521,8023=>521,8025=>705,8027=>897,8029=>911,8031=>808,8032=>753,8033=>753,8034=>753,\n8035=>753,8036=>753,8037=>753,8038=>753,8039=>753,8040=>722,8041=>759,8042=>980,8043=>985,8044=>851,\n8045=>875,8046=>829,8047=>857,8048=>593,8049=>593,8050=>486,8051=>493,8052=>570,8053=>589,8054=>304,\n8055=>304,8056=>550,8057=>550,8058=>521,8059=>521,8060=>753,8061=>753,8064=>593,8065=>593,8066=>593,\n8067=>593,8068=>593,8069=>593,8070=>593,8071=>593,8072=>615,8073=>615,8074=>790,8075=>790,8076=>692,\n8077=>721,8078=>637,8079=>668,8080=>570,8081=>570,8082=>570,8083=>570,8084=>570,8085=>570,8086=>570,\n8087=>570,8088=>753,8089=>751,8090=>977,8091=>980,8092=>924,8093=>945,8094=>840,8095=>852,8096=>753,\n8097=>753,8098=>753,8099=>753,8100=>753,8101=>753,8102=>753,8103=>753,8104=>722,8105=>759,8106=>980,\n8107=>985,8108=>851,8109=>875,8110=>829,8111=>857,8112=>593,8113=>593,8114=>593,8115=>593,8116=>593,\n8118=>593,8119=>593,8120=>615,8121=>615,8122=>645,8123=>623,8124=>615,8125=>450,8126=>450,8127=>450,\n8128=>450,8129=>450,8130=>570,8131=>570,8132=>589,8134=>570,8135=>570,8136=>724,8137=>671,8138=>837,\n8139=>784,8140=>677,8141=>450,8142=>450,8143=>450,8144=>304,8145=>304,8146=>304,8147=>304,8150=>304,\n8151=>304,8152=>265,8153=>265,8154=>427,8155=>367,8157=>450,8158=>450,8159=>450,8160=>521,8161=>521,\n8162=>521,8163=>521,8164=>571,8165=>571,8166=>521,8167=>521,8168=>549,8169=>549,8170=>760,8171=>742,\n8172=>616,8173=>450,8174=>450,8175=>450,8178=>753,8179=>753,8180=>753,8182=>753,8183=>753,8184=>847,\n8185=>731,8186=>830,8187=>743,8188=>688,8189=>450,8190=>450,8192=>450,8193=>900,8194=>450,8195=>900,\n8196=>296,8197=>225,8198=>150,8199=>572,8200=>286,8201=>180,8202=>89,8203=>0,8204=>0,8205=>0,\n8206=>0,8207=>0,8208=>325,8209=>325,8210=>572,8213=>900,8214=>450,8215=>450,8219=>286,8223=>466,\n8227=>531,8228=>299,8229=>600,8231=>286,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>180,\n8241=>1521,8242=>204,8243=>336,8244=>468,8245=>204,8246=>336,8247=>468,8248=>305,8251=>754,8252=>437,\n8253=>478,8254=>450,8255=>723,8256=>723,8257=>225,8258=>900,8259=>450,8260=>150,8261=>351,8262=>351,\n8263=>830,8264=>659,8265=>659,8266=>447,8267=>572,8268=>450,8269=>450,8270=>450,8271=>303,8272=>723,\n8273=>450,8274=>404,8275=>900,8276=>723,8277=>754,8278=>527,8279=>597,8280=>754,8281=>754,8282=>286,\n8283=>717,8284=>754,8285=>286,8286=>286,8287=>200,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,\n8298=>0,8299=>0,8300=>0,8301=>0,8302=>0,8303=>0,8304=>360,8305=>161,8308=>360,8309=>360,\n8310=>360,8311=>360,8312=>360,8313=>360,8314=>475,8315=>475,8316=>475,8317=>221,8318=>221,8319=>359,\n8320=>360,8321=>360,8322=>360,8323=>360,8324=>360,8325=>360,8326=>360,8327=>360,8328=>360,8329=>360,\n8330=>475,8331=>475,8332=>475,8333=>221,8334=>221,8336=>352,8337=>375,8338=>372,8339=>399,8340=>375,\n8352=>789,8353=>572,8354=>572,8355=>572,8356=>572,8357=>876,8358=>673,8359=>1143,8360=>966,8361=>890,\n8362=>754,8363=>572,8365=>590,8366=>549,8367=>1145,8368=>572,8369=>572,8370=>572,8371=>572,8372=>696,\n8373=>577,8400=>0,8401=>0,8406=>0,8407=>0,8411=>0,8412=>0,8417=>0,8448=>873,8449=>873,\n8450=>628,8451=>1011,8452=>807,8453=>872,8454=>929,8455=>553,8456=>628,8457=>856,8459=>889,8460=>679,\n8461=>765,8462=>570,8463=>570,8464=>422,8465=>627,8466=>648,8467=>372,8468=>736,8469=>721,8470=>936,\n8471=>900,8472=>627,8473=>631,8474=>708,8475=>718,8476=>732,8477=>712,8478=>807,8479=>615,8480=>917,\n8481=>912,8483=>615,8484=>670,8485=>520,8486=>688,8487=>688,8488=>554,8489=>304,8490=>590,8491=>615,\n8492=>708,8493=>633,8494=>769,8495=>532,8496=>545,8497=>708,8498=>518,8499=>962,8500=>416,8501=>670,\n8502=>606,8503=>419,8504=>580,8505=>342,8506=>833,8507=>1041,8508=>632,8509=>655,8510=>589,8511=>764,\n8512=>729,8513=>697,8514=>501,8515=>501,8516=>549,8517=>737,8518=>637,8519=>554,8520=>316,8521=>316,\n8523=>702,8526=>474,8531=>872,8532=>872,8533=>872,8534=>872,8535=>872,8536=>872,8537=>872,8538=>872,\n8539=>872,8540=>872,8541=>872,8542=>872,8543=>511,8544=>265,8545=>443,8546=>620,8547=>831,8548=>615,\n8549=>830,8550=>1007,8551=>1185,8552=>826,8553=>616,8554=>839,8555=>1018,8556=>501,8557=>628,8558=>693,\n8559=>776,8560=>250,8561=>412,8562=>573,8563=>730,8564=>532,8565=>729,8566=>892,8567=>1053,8568=>737,\n8569=>532,8570=>740,8571=>901,8572=>250,8573=>495,8574=>571,8575=>876,8576=>1121,8577=>693,8578=>1121,\n8579=>633,8580=>494,8592=>754,8593=>754,8594=>754,8595=>754,8596=>754,8597=>754,8598=>754,8599=>754,\n8600=>754,8601=>754,8602=>754,8603=>754,8604=>754,8605=>754,8606=>754,8607=>754,8608=>754,8609=>754,\n8610=>754,8611=>754,8612=>754,8613=>754,8614=>754,8615=>754,8616=>754,8617=>754,8618=>754,8619=>754,\n8620=>754,8621=>754,8622=>754,8623=>754,8624=>754,8625=>754,8626=>754,8627=>754,8628=>754,8629=>754,\n8630=>754,8631=>754,8632=>754,8633=>754,8634=>754,8635=>754,8636=>754,8637=>754,8638=>754,8639=>754,\n8640=>754,8641=>754,8642=>754,8643=>754,8644=>754,8645=>754,8646=>754,8647=>754,8648=>754,8649=>754,\n8650=>754,8651=>754,8652=>754,8653=>754,8654=>754,8655=>754,8656=>754,8657=>754,8658=>754,8659=>754,\n8660=>754,8661=>754,8662=>754,8663=>754,8664=>754,8665=>754,8666=>754,8667=>754,8668=>754,8669=>754,\n8670=>754,8671=>754,8672=>754,8673=>754,8674=>754,8675=>754,8676=>754,8677=>754,8678=>754,8679=>754,\n8680=>754,8681=>754,8682=>754,8683=>754,8684=>754,8685=>754,8686=>754,8687=>754,8688=>754,8689=>754,\n8690=>754,8691=>754,8692=>754,8693=>754,8694=>754,8695=>754,8696=>754,8697=>754,8698=>754,8699=>754,\n8700=>754,8701=>754,8702=>754,8703=>754,8704=>615,8705=>572,8706=>465,8707=>568,8708=>568,8709=>784,\n8710=>602,8711=>602,8712=>784,8713=>784,8714=>646,8715=>784,8716=>784,8717=>646,8718=>572,8719=>681,\n8720=>681,8721=>606,8722=>754,8723=>754,8724=>754,8725=>303,8726=>573,8727=>754,8728=>563,8729=>563,\n8730=>573,8731=>573,8732=>573,8733=>643,8734=>750,8735=>754,8736=>807,8737=>807,8738=>754,8739=>450,\n8740=>450,8741=>450,8742=>450,8743=>659,8744=>659,8745=>659,8746=>659,8747=>469,8748=>710,8749=>951,\n8750=>469,8751=>710,8752=>951,8753=>469,8754=>469,8755=>469,8756=>572,8757=>572,8758=>234,8759=>572,\n8760=>754,8761=>754,8762=>754,8763=>754,8764=>754,8765=>754,8766=>754,8767=>754,8768=>337,8769=>754,\n8770=>754,8771=>754,8772=>754,8773=>754,8774=>754,8775=>754,8776=>754,8777=>754,8778=>754,8779=>754,\n8780=>754,8781=>754,8782=>754,8783=>754,8784=>754,8785=>754,8786=>754,8787=>754,8788=>900,8789=>900,\n8790=>754,8791=>754,8792=>754,8793=>754,8794=>754,8795=>754,8796=>754,8797=>754,8798=>754,8799=>754,\n8800=>754,8801=>754,8802=>754,8803=>754,8804=>754,8805=>754,8806=>754,8807=>754,8808=>754,8809=>754,\n8810=>942,8811=>942,8812=>417,8813=>754,8814=>754,8815=>754,8816=>754,8817=>754,8818=>754,8819=>754,\n8820=>754,8821=>754,8822=>754,8823=>754,8824=>754,8825=>754,8826=>754,8827=>754,8828=>754,8829=>754,\n8830=>754,8831=>754,8832=>754,8833=>754,8834=>754,8835=>754,8836=>754,8837=>754,8838=>754,8839=>754,\n8840=>754,8841=>754,8842=>754,8843=>754,8844=>659,8845=>659,8846=>659,8847=>754,8848=>754,8849=>754,\n8850=>754,8851=>702,8852=>702,8853=>754,8854=>754,8855=>754,8856=>754,8857=>754,8858=>754,8859=>754,\n8860=>754,8861=>754,8862=>754,8863=>754,8864=>754,8865=>754,8866=>784,8867=>784,8868=>784,8869=>784,\n8870=>468,8871=>468,8872=>784,8873=>784,8874=>784,8875=>784,8876=>784,8877=>784,8878=>784,8879=>784,\n8880=>754,8881=>754,8882=>754,8883=>754,8884=>754,8885=>754,8886=>900,8887=>900,8888=>754,8889=>754,\n8890=>468,8891=>659,8892=>659,8893=>659,8894=>754,8895=>754,8896=>738,8897=>738,8898=>738,8899=>738,\n8900=>444,8901=>286,8902=>563,8903=>754,8904=>900,8905=>900,8906=>900,8907=>900,8908=>900,8909=>754,\n8910=>659,8911=>659,8912=>754,8913=>754,8914=>754,8915=>754,8916=>754,8917=>754,8918=>754,8919=>754,\n8920=>1280,8921=>1280,8922=>754,8923=>754,8924=>754,8925=>754,8926=>754,8927=>754,8928=>754,8929=>754,\n8930=>754,8931=>754,8932=>754,8933=>754,8934=>754,8935=>754,8936=>754,8937=>754,8938=>754,8939=>754,\n8940=>754,8941=>754,8942=>900,8943=>900,8944=>900,8945=>900,8946=>900,8947=>784,8948=>646,8949=>784,\n8950=>784,8951=>646,8952=>784,8953=>784,8954=>900,8955=>784,8956=>646,8957=>784,8958=>646,8959=>784,\n8960=>542,8961=>542,8962=>571,8963=>754,8964=>754,8965=>754,8966=>754,8967=>439,8968=>351,8969=>351,\n8970=>351,8971=>351,8972=>728,8973=>728,8974=>728,8975=>728,8976=>754,8977=>461,8984=>900,8985=>754,\n8988=>422,8989=>422,8990=>422,8991=>422,8992=>469,8993=>469,8996=>1037,8997=>1037,8998=>1272,8999=>1037,\n9000=>1299,9003=>1272,9004=>786,9075=>304,9076=>571,9077=>753,9082=>593,9085=>681,9095=>1037,9108=>786,\n9115=>450,9116=>450,9117=>450,9118=>450,9119=>450,9120=>450,9121=>450,9122=>450,9123=>450,9124=>450,\n9125=>450,9126=>450,9127=>675,9128=>675,9129=>675,9130=>675,9131=>675,9132=>675,9133=>675,9134=>469,\n9166=>754,9167=>850,9187=>786,9189=>692,9250=>571,9251=>571,9312=>807,9313=>807,9314=>807,9315=>807,\n9316=>807,9317=>807,9318=>807,9319=>807,9320=>807,9321=>807,9472=>542,9473=>542,9474=>542,9475=>542,\n9476=>542,9477=>542,9478=>542,9479=>542,9480=>542,9481=>542,9482=>542,9483=>542,9484=>542,9485=>542,\n9486=>542,9487=>542,9488=>542,9489=>542,9490=>542,9491=>542,9492=>542,9493=>542,9494=>542,9495=>542,\n9496=>542,9497=>542,9498=>542,9499=>542,9500=>542,9501=>542,9502=>542,9503=>542,9504=>542,9505=>542,\n9506=>542,9507=>542,9508=>542,9509=>542,9510=>542,9511=>542,9512=>542,9513=>542,9514=>542,9515=>542,\n9516=>542,9517=>542,9518=>542,9519=>542,9520=>542,9521=>542,9522=>542,9523=>542,9524=>542,9525=>542,\n9526=>542,9527=>542,9528=>542,9529=>542,9530=>542,9531=>542,9532=>542,9533=>542,9534=>542,9535=>542,\n9536=>542,9537=>542,9538=>542,9539=>542,9540=>542,9541=>542,9542=>542,9543=>542,9544=>542,9545=>542,\n9546=>542,9547=>542,9548=>542,9549=>542,9550=>542,9551=>542,9552=>542,9553=>542,9554=>542,9555=>542,\n9556=>542,9557=>542,9558=>542,9559=>542,9560=>542,9561=>542,9562=>542,9563=>542,9564=>542,9565=>542,\n9566=>542,9567=>542,9568=>542,9569=>542,9570=>542,9571=>542,9572=>542,9573=>542,9574=>542,9575=>542,\n9576=>542,9577=>542,9578=>542,9579=>542,9580=>542,9581=>542,9582=>542,9583=>542,9584=>542,9585=>542,\n9586=>542,9587=>542,9588=>542,9589=>542,9590=>542,9591=>542,9592=>542,9593=>542,9594=>542,9595=>542,\n9596=>542,9597=>542,9598=>542,9599=>542,9600=>692,9601=>692,9602=>692,9603=>692,9604=>692,9605=>692,\n9606=>692,9607=>692,9608=>692,9609=>692,9610=>692,9611=>692,9612=>692,9613=>692,9614=>692,9615=>692,\n9616=>692,9617=>692,9618=>692,9619=>692,9620=>692,9621=>692,9622=>692,9623=>692,9624=>692,9625=>692,\n9626=>692,9627=>692,9628=>692,9629=>692,9630=>692,9631=>692,9632=>850,9633=>850,9634=>850,9635=>850,\n9636=>850,9637=>850,9638=>850,9639=>850,9640=>850,9641=>850,9642=>610,9643=>610,9644=>850,9645=>850,\n9646=>495,9647=>495,9648=>692,9649=>692,9650=>692,9651=>692,9652=>452,9653=>452,9654=>692,9655=>692,\n9656=>452,9657=>452,9658=>692,9659=>692,9660=>692,9661=>692,9662=>452,9663=>452,9664=>692,9665=>692,\n9666=>452,9667=>452,9668=>692,9669=>692,9670=>692,9671=>692,9672=>692,9673=>785,9674=>444,9675=>785,\n9676=>785,9677=>785,9678=>785,9679=>785,9680=>785,9681=>785,9682=>785,9683=>785,9684=>785,9685=>785,\n9686=>474,9687=>474,9688=>712,9689=>873,9690=>873,9691=>873,9692=>348,9693=>348,9694=>348,9695=>348,\n9696=>692,9697=>692,9698=>692,9699=>692,9700=>692,9701=>692,9702=>531,9703=>850,9704=>850,9705=>850,\n9706=>850,9707=>850,9708=>692,9709=>692,9710=>692,9711=>1007,9712=>850,9713=>850,9714=>850,9715=>850,\n9716=>785,9717=>785,9718=>785,9719=>785,9720=>692,9721=>692,9722=>692,9723=>747,9724=>747,9725=>659,\n9726=>659,9727=>692,9728=>807,9729=>900,9730=>807,9731=>807,9732=>807,9733=>807,9734=>807,9735=>515,\n9736=>806,9737=>807,9738=>799,9739=>799,9740=>604,9741=>911,9742=>1121,9743=>1125,9744=>807,9745=>807,\n9746=>807,9747=>479,9748=>807,9749=>807,9750=>807,9751=>807,9752=>807,9753=>807,9754=>807,9755=>807,\n9756=>807,9757=>548,9758=>807,9759=>548,9760=>807,9761=>807,9762=>807,9763=>807,9764=>602,9765=>671,\n9766=>584,9767=>705,9768=>490,9769=>807,9770=>807,9771=>807,9772=>639,9773=>807,9774=>807,9775=>807,\n9776=>800,9777=>800,9778=>800,9779=>800,9780=>800,9781=>800,9782=>800,9783=>800,9784=>807,9785=>807,\n9786=>807,9787=>807,9788=>807,9789=>807,9790=>807,9791=>552,9792=>658,9793=>658,9794=>807,9795=>807,\n9796=>807,9797=>807,9798=>807,9799=>807,9800=>807,9801=>807,9802=>807,9803=>807,9804=>807,9805=>807,\n9806=>807,9807=>807,9808=>807,9809=>807,9810=>807,9811=>807,9812=>807,9813=>807,9814=>807,9815=>807,\n9816=>807,9817=>807,9818=>807,9819=>807,9820=>807,9821=>807,9822=>807,9823=>807,9824=>807,9825=>807,\n9826=>807,9827=>807,9828=>807,9829=>807,9830=>807,9831=>807,9832=>807,9833=>424,9834=>574,9835=>807,\n9836=>807,9837=>424,9838=>321,9839=>435,9840=>673,9841=>689,9842=>807,9843=>807,9844=>807,9845=>807,\n9846=>807,9847=>807,9848=>807,9849=>807,9850=>807,9851=>807,9852=>807,9853=>807,9854=>807,9855=>807,\n9856=>782,9857=>782,9858=>782,9859=>782,9860=>782,9861=>782,9862=>800,9863=>800,9864=>800,9865=>800,\n9866=>800,9867=>800,9868=>800,9869=>800,9870=>800,9871=>800,9872=>675,9873=>675,9874=>800,9875=>734,\n9876=>644,9877=>483,9878=>766,9879=>800,9880=>615,9881=>800,9882=>637,9883=>800,9884=>800,9888=>800,\n9889=>632,9890=>903,9891=>977,9892=>1028,9893=>811,9894=>754,9895=>754,9896=>754,9897=>754,9898=>754,\n9899=>754,9900=>754,9901=>754,9902=>754,9903=>754,9904=>759,9905=>754,9906=>658,9907=>659,9908=>659,\n9909=>659,9910=>765,9911=>659,9912=>659,9985=>754,9986=>754,9987=>754,9988=>754,9990=>754,9991=>754,\n9992=>754,9993=>754,9996=>754,9997=>754,9998=>754,9999=>754,10000=>754,10001=>754,10002=>754,10003=>754,\n10004=>754,10005=>754,10006=>754,10007=>754,10008=>754,10009=>754,10010=>754,10011=>754,10012=>754,10013=>754,\n10014=>754,10015=>754,10016=>754,10017=>754,10018=>754,10019=>754,10020=>754,10021=>754,10022=>754,10023=>754,\n10025=>754,10026=>754,10027=>754,10028=>754,10029=>754,10030=>754,10031=>754,10032=>754,10033=>754,10034=>754,\n10035=>754,10036=>754,10037=>754,10038=>754,10039=>754,10040=>754,10041=>754,10042=>754,10043=>754,10044=>754,\n10045=>754,10046=>754,10047=>754,10048=>754,10049=>754,10050=>754,10051=>754,10052=>754,10053=>754,10054=>754,\n10055=>754,10056=>754,10057=>754,10058=>754,10059=>754,10061=>807,10063=>807,10064=>807,10065=>807,10066=>807,\n10070=>807,10072=>754,10073=>754,10074=>754,10075=>290,10076=>290,10077=>484,10078=>484,10081=>754,10082=>754,\n10083=>754,10084=>754,10085=>754,10086=>754,10087=>754,10088=>754,10089=>754,10090=>754,10091=>754,10092=>754,\n10093=>754,10094=>754,10095=>754,10096=>754,10097=>754,10098=>754,10099=>754,10100=>754,10101=>754,10102=>807,\n10103=>807,10104=>807,10105=>807,10106=>807,10107=>807,10108=>807,10109=>807,10110=>807,10111=>807,10112=>754,\n10113=>754,10114=>754,10115=>754,10116=>754,10117=>754,10118=>754,10119=>754,10120=>754,10121=>754,10122=>754,\n10123=>754,10124=>754,10125=>754,10126=>754,10127=>754,10128=>754,10129=>754,10130=>754,10131=>754,10132=>754,\n10136=>754,10137=>754,10138=>754,10139=>754,10140=>754,10141=>754,10142=>754,10143=>754,10144=>754,10145=>754,\n10146=>754,10147=>754,10148=>754,10149=>754,10150=>754,10151=>754,10152=>754,10153=>754,10154=>754,10155=>754,\n10156=>754,10157=>754,10158=>754,10159=>754,10161=>754,10162=>754,10163=>754,10164=>754,10165=>754,10166=>754,\n10167=>754,10168=>754,10169=>754,10170=>754,10171=>754,10172=>754,10173=>754,10174=>754,10181=>351,10182=>351,\n10208=>444,10214=>445,10215=>445,10216=>351,10217=>351,10218=>500,10219=>500,10224=>754,10225=>754,10226=>754,\n10227=>754,10228=>1042,10229=>1290,10230=>1290,10231=>1290,10232=>1290,10233=>1290,10234=>1290,10235=>1290,10236=>1290,\n10237=>1290,10238=>1290,10239=>1290,10240=>659,10241=>659,10242=>659,10243=>659,10244=>659,10245=>659,10246=>659,\n10247=>659,10248=>659,10249=>659,10250=>659,10251=>659,10252=>659,10253=>659,10254=>659,10255=>659,10256=>659,\n10257=>659,10258=>659,10259=>659,10260=>659,10261=>659,10262=>659,10263=>659,10264=>659,10265=>659,10266=>659,\n10267=>659,10268=>659,10269=>659,10270=>659,10271=>659,10272=>659,10273=>659,10274=>659,10275=>659,10276=>659,\n10277=>659,10278=>659,10279=>659,10280=>659,10281=>659,10282=>659,10283=>659,10284=>659,10285=>659,10286=>659,\n10287=>659,10288=>659,10289=>659,10290=>659,10291=>659,10292=>659,10293=>659,10294=>659,10295=>659,10296=>659,\n10297=>659,10298=>659,10299=>659,10300=>659,10301=>659,10302=>659,10303=>659,10304=>659,10305=>659,10306=>659,\n10307=>659,10308=>659,10309=>659,10310=>659,10311=>659,10312=>659,10313=>659,10314=>659,10315=>659,10316=>659,\n10317=>659,10318=>659,10319=>659,10320=>659,10321=>659,10322=>659,10323=>659,10324=>659,10325=>659,10326=>659,\n10327=>659,10328=>659,10329=>659,10330=>659,10331=>659,10332=>659,10333=>659,10334=>659,10335=>659,10336=>659,\n10337=>659,10338=>659,10339=>659,10340=>659,10341=>659,10342=>659,10343=>659,10344=>659,10345=>659,10346=>659,\n10347=>659,10348=>659,10349=>659,10350=>659,10351=>659,10352=>659,10353=>659,10354=>659,10355=>659,10356=>659,\n10357=>659,10358=>659,10359=>659,10360=>659,10361=>659,10362=>659,10363=>659,10364=>659,10365=>659,10366=>659,\n10367=>659,10368=>659,10369=>659,10370=>659,10371=>659,10372=>659,10373=>659,10374=>659,10375=>659,10376=>659,\n10377=>659,10378=>659,10379=>659,10380=>659,10381=>659,10382=>659,10383=>659,10384=>659,10385=>659,10386=>659,\n10387=>659,10388=>659,10389=>659,10390=>659,10391=>659,10392=>659,10393=>659,10394=>659,10395=>659,10396=>659,\n10397=>659,10398=>659,10399=>659,10400=>659,10401=>659,10402=>659,10403=>659,10404=>659,10405=>659,10406=>659,\n10407=>659,10408=>659,10409=>659,10410=>659,10411=>659,10412=>659,10413=>659,10414=>659,10415=>659,10416=>659,\n10417=>659,10418=>659,10419=>659,10420=>659,10421=>659,10422=>659,10423=>659,10424=>659,10425=>659,10426=>659,\n10427=>659,10428=>659,10429=>659,10430=>659,10431=>659,10432=>659,10433=>659,10434=>659,10435=>659,10436=>659,\n10437=>659,10438=>659,10439=>659,10440=>659,10441=>659,10442=>659,10443=>659,10444=>659,10445=>659,10446=>659,\n10447=>659,10448=>659,10449=>659,10450=>659,10451=>659,10452=>659,10453=>659,10454=>659,10455=>659,10456=>659,\n10457=>659,10458=>659,10459=>659,10460=>659,10461=>659,10462=>659,10463=>659,10464=>659,10465=>659,10466=>659,\n10467=>659,10468=>659,10469=>659,10470=>659,10471=>659,10472=>659,10473=>659,10474=>659,10475=>659,10476=>659,\n10477=>659,10478=>659,10479=>659,10480=>659,10481=>659,10482=>659,10483=>659,10484=>659,10485=>659,10486=>659,\n10487=>659,10488=>659,10489=>659,10490=>659,10491=>659,10492=>659,10493=>659,10494=>659,10495=>659,10502=>754,\n10503=>754,10506=>754,10507=>754,10560=>615,10561=>615,10627=>660,10628=>660,10702=>754,10703=>900,10704=>900,\n10705=>900,10706=>900,10707=>900,10708=>900,10709=>900,10731=>444,10746=>754,10747=>754,10752=>900,10753=>900,\n10754=>900,10764=>1192,10765=>469,10766=>469,10767=>469,10768=>469,10769=>469,10770=>469,10771=>469,10772=>469,\n10773=>469,10774=>469,10775=>469,10776=>469,10777=>469,10778=>469,10779=>469,10780=>469,10799=>754,10877=>754,\n10878=>754,10879=>754,10880=>754,10881=>754,10882=>754,10883=>754,10884=>754,10885=>754,10886=>754,10887=>754,\n10888=>754,10889=>754,10890=>754,10891=>754,10892=>754,10893=>754,10894=>754,10895=>754,10896=>754,10897=>754,\n10898=>754,10899=>754,10900=>754,10901=>754,10902=>754,10903=>754,10904=>754,10905=>754,10906=>754,10907=>754,\n10908=>754,10909=>754,10910=>754,10911=>754,10912=>754,10926=>754,10927=>754,10928=>754,10929=>754,10930=>754,\n10931=>754,10932=>754,10933=>754,10934=>754,10935=>754,10936=>754,10937=>754,10938=>754,11001=>754,11002=>754,\n11008=>754,11009=>754,11010=>754,11011=>754,11012=>754,11013=>754,11014=>754,11015=>754,11016=>754,11017=>754,\n11018=>754,11019=>754,11020=>754,11021=>754,11022=>752,11023=>752,11024=>752,11025=>752,11026=>850,11027=>850,\n11028=>850,11029=>850,11030=>692,11031=>692,11032=>692,11033=>692,11034=>850,11039=>782,11040=>782,11041=>786,\n11042=>786,11043=>786,11044=>1007,11091=>782,11092=>782,11360=>501,11361=>250,11362=>501,11363=>542,11364=>625,\n11365=>551,11366=>353,11367=>677,11368=>570,11369=>590,11370=>521,11371=>616,11372=>472,11373=>703,11374=>776,\n11375=>615,11377=>661,11378=>1015,11379=>865,11380=>532,11381=>589,11382=>511,11383=>593,11385=>373,11386=>550,\n11387=>441,11388=>157,11389=>387,11800=>478,11810=>351,11811=>351,11812=>351,11813=>351,11822=>478,19904=>807,\n19905=>807,19906=>807,19907=>807,19908=>807,19909=>807,19910=>807,19911=>807,19912=>807,19913=>807,19914=>807,\n19915=>807,19916=>807,19917=>807,19918=>807,19919=>807,19920=>807,19921=>807,19922=>807,19923=>807,19924=>807,\n19925=>807,19926=>807,19927=>807,19928=>807,19929=>807,19930=>807,19931=>807,19932=>807,19933=>807,19934=>807,\n19935=>807,19936=>807,19937=>807,19938=>807,19939=>807,19940=>807,19941=>807,19942=>807,19943=>807,19944=>807,\n19945=>807,19946=>807,19947=>807,19948=>807,19949=>807,19950=>807,19951=>807,19952=>807,19953=>807,19954=>807,\n19955=>807,19956=>807,19957=>807,19958=>807,19959=>807,19960=>807,19961=>807,19962=>807,19963=>807,19964=>807,\n19965=>807,19966=>807,19967=>807,42564=>571,42565=>469,42566=>318,42567=>304,42572=>1062,42573=>925,42576=>926,\n42577=>815,42580=>971,42581=>757,42582=>886,42583=>762,42594=>922,42595=>833,42596=>912,42597=>810,42598=>776,\n42599=>907,42600=>708,42601=>550,42602=>770,42603=>641,42604=>1222,42605=>917,42606=>791,42634=>725,42635=>649,\n42636=>549,42637=>524,42644=>617,42645=>570,42760=>444,42761=>444,42762=>444,42763=>444,42764=>444,42765=>444,\n42766=>444,42767=>444,42768=>444,42769=>444,42770=>444,42771=>444,42772=>444,42773=>444,42774=>444,42779=>332,\n42780=>332,42781=>227,42782=>227,42783=>227,42790=>677,42791=>570,42792=>790,42793=>638,42794=>553,42795=>486,\n42800=>441,42801=>469,42802=>1125,42803=>886,42804=>1097,42805=>900,42806=>1039,42807=>896,42808=>874,42809=>736,\n42810=>874,42811=>736,42812=>863,42813=>736,42814=>628,42815=>494,42822=>612,42823=>353,42824=>523,42825=>384,\n42826=>726,42827=>633,42830=>1222,42831=>917,42880=>501,42881=>250,42882=>662,42883=>570,42889=>303,42890=>338,\n42891=>360,42892=>247,43003=>518,43004=>542,43005=>776,43006=>265,43007=>1079,63173=>550,64256=>649,64257=>581,\n64258=>581,64259=>899,64260=>899,64261=>617,64262=>774,64275=>1081,64276=>1081,64277=>1076,64278=>1067,64279=>1376,\n64285=>245,64286=>0,64287=>423,64288=>572,64289=>770,64290=>696,64291=>815,64292=>694,64293=>759,64294=>769,\n64295=>726,64296=>788,64297=>754,64298=>727,64299=>727,64300=>727,64301=>727,64302=>566,64303=>566,64304=>566,\n64305=>547,64306=>403,64307=>534,64308=>576,64309=>245,64310=>336,64311=>900,64312=>583,64313=>302,64314=>532,\n64315=>500,64316=>539,64318=>593,64320=>397,64321=>629,64323=>576,64324=>543,64326=>523,64327=>596,64328=>532,\n64329=>727,64330=>591,64331=>245,64332=>547,64333=>500,64334=>543,64335=>566,65024=>0,65025=>0,65026=>0,\n65027=>0,65028=>0,65029=>0,65030=>0,65031=>0,65032=>0,65033=>0,65034=>0,65035=>0,65036=>0,\n65037=>0,65038=>0,65039=>0,65056=>0,65057=>0,65058=>0,65059=>0,65529=>0,65530=>0,65531=>0,\n65532=>0,65533=>923);\n$enc='';\n$diff='';\n$file='dejavusanscondensedi.z';\n$ctg='dejavusanscondensedi.ctg.z';\n$originalsize=488440;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavusansi.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='DejaVuSans-Oblique';\n$desc=array('Ascent'=>928,'Descent'=>-236,'CapHeight'=>-43,'Flags'=>96,'FontBBox'=>'[-1016 -350 1659 1068]','ItalicAngle'=>-11,'StemV'=>70,'MissingWidth'=>600);\n$up=-63;\n$ut=44;\n$dw=600;\n$cw=array(\n0=>600,32=>318,33=>401,34=>460,35=>838,36=>636,37=>950,38=>780,39=>275,40=>390,\n41=>390,42=>500,43=>838,44=>318,45=>361,46=>318,47=>337,48=>636,49=>636,50=>636,\n51=>636,52=>636,53=>636,54=>636,55=>636,56=>636,57=>636,58=>337,59=>337,60=>838,\n61=>838,62=>838,63=>531,64=>1000,65=>684,66=>686,67=>698,68=>770,69=>632,70=>575,\n71=>775,72=>752,73=>295,74=>295,75=>656,76=>557,77=>863,78=>748,79=>787,80=>603,\n81=>787,82=>695,83=>635,84=>611,85=>732,86=>684,87=>989,88=>685,89=>611,90=>685,\n91=>390,92=>337,93=>390,94=>838,95=>500,96=>500,97=>613,98=>635,99=>550,100=>635,\n101=>615,102=>352,103=>635,104=>634,105=>278,106=>278,107=>579,108=>278,109=>974,110=>634,\n111=>612,112=>635,113=>635,114=>411,115=>521,116=>392,117=>634,118=>592,119=>818,120=>592,\n121=>592,122=>525,123=>636,124=>337,125=>636,126=>838,8364=>636,8218=>318,402=>352,8222=>518,\n8230=>1000,8224=>500,8225=>500,710=>500,8240=>1350,352=>635,8249=>400,338=>1070,381=>685,8216=>318,\n8217=>318,8220=>518,8221=>518,8226=>590,8211=>500,8212=>1000,732=>500,8482=>1000,353=>521,8250=>400,\n339=>1028,382=>525,376=>611,160=>318,161=>401,162=>636,163=>636,164=>636,165=>636,166=>337,\n167=>500,168=>500,169=>1000,170=>471,171=>617,172=>838,173=>361,174=>1000,175=>500,176=>500,\n177=>838,178=>401,179=>401,180=>500,181=>636,182=>636,183=>318,184=>500,185=>401,186=>471,\n187=>617,188=>969,189=>969,190=>969,191=>531,192=>684,193=>684,194=>684,195=>684,196=>684,\n197=>684,198=>974,199=>698,200=>632,201=>632,202=>632,203=>632,204=>295,205=>295,206=>295,\n207=>295,208=>775,209=>748,210=>787,211=>787,212=>787,213=>787,214=>787,215=>838,216=>787,\n217=>732,218=>732,219=>732,220=>732,221=>611,222=>608,223=>630,224=>613,225=>613,226=>613,\n227=>613,228=>613,229=>613,230=>995,231=>550,232=>615,233=>615,234=>615,235=>615,236=>278,\n237=>278,238=>278,239=>278,240=>612,241=>634,242=>612,243=>612,244=>612,245=>612,246=>612,\n247=>838,248=>612,249=>634,250=>634,251=>634,252=>634,253=>592,254=>635,255=>592,256=>684,\n257=>613,258=>684,259=>613,260=>684,261=>613,262=>698,263=>550,264=>698,265=>550,266=>698,\n267=>550,268=>698,269=>550,270=>770,271=>635,272=>775,273=>635,274=>632,275=>615,276=>632,\n277=>615,278=>632,279=>615,280=>632,281=>615,282=>632,283=>615,284=>775,285=>635,286=>775,\n287=>635,288=>775,289=>635,290=>775,291=>635,292=>752,293=>634,294=>916,295=>695,296=>295,\n297=>278,298=>295,299=>278,300=>295,301=>278,302=>295,303=>278,304=>295,305=>278,306=>590,\n307=>556,308=>295,309=>278,310=>656,311=>579,312=>579,313=>557,314=>278,315=>557,316=>278,\n317=>557,318=>278,319=>557,320=>278,321=>562,322=>287,323=>748,324=>634,325=>748,326=>634,\n327=>748,328=>634,329=>813,330=>748,331=>634,332=>787,333=>612,334=>787,335=>612,336=>787,\n337=>612,340=>695,341=>411,342=>695,343=>411,344=>695,345=>411,346=>635,347=>521,348=>635,\n349=>521,350=>635,351=>521,354=>611,355=>392,356=>611,357=>392,358=>611,359=>392,360=>732,\n361=>634,362=>732,363=>634,364=>732,365=>634,366=>732,367=>634,368=>732,369=>634,370=>732,\n371=>634,372=>989,373=>818,374=>611,375=>592,377=>685,378=>525,379=>685,380=>525,383=>352,\n384=>635,385=>735,386=>686,387=>635,388=>686,389=>635,390=>703,391=>698,392=>550,393=>775,\n394=>819,395=>686,396=>635,397=>612,398=>632,399=>787,400=>614,401=>575,403=>775,404=>687,\n405=>984,406=>354,407=>295,408=>746,409=>579,410=>278,411=>592,412=>974,413=>748,414=>634,\n415=>787,416=>913,417=>612,418=>938,419=>737,420=>652,421=>635,422=>695,423=>635,424=>521,\n425=>632,426=>336,427=>392,428=>611,429=>392,430=>611,431=>838,432=>634,433=>764,434=>721,\n435=>744,436=>730,437=>685,438=>525,439=>666,440=>666,441=>578,442=>525,443=>636,444=>666,\n445=>578,446=>510,447=>635,448=>295,449=>492,450=>459,451=>295,452=>1455,453=>1295,454=>1160,\n455=>852,456=>835,457=>556,458=>1043,459=>1026,460=>912,461=>684,462=>613,463=>295,464=>278,\n465=>787,466=>612,467=>732,468=>634,469=>732,470=>634,471=>732,472=>634,473=>732,474=>634,\n475=>732,476=>634,477=>615,478=>684,479=>613,480=>684,481=>613,482=>974,483=>995,484=>775,\n485=>635,486=>775,487=>635,488=>656,489=>579,490=>787,491=>612,492=>787,493=>612,494=>666,\n495=>525,496=>278,497=>1455,498=>1295,499=>1160,500=>775,501=>635,502=>1113,503=>682,504=>748,\n505=>634,506=>684,507=>613,508=>974,509=>995,510=>787,511=>612,512=>684,513=>613,514=>684,\n515=>613,516=>632,517=>615,518=>632,519=>615,520=>295,521=>278,522=>295,523=>278,524=>787,\n525=>612,526=>787,527=>612,528=>695,529=>411,530=>695,531=>411,532=>732,533=>634,534=>732,\n535=>634,536=>635,537=>521,538=>611,539=>392,540=>627,541=>521,542=>752,543=>634,544=>735,\n545=>838,546=>698,547=>610,548=>685,549=>525,550=>684,551=>613,552=>632,553=>615,554=>787,\n555=>612,556=>787,557=>612,558=>787,559=>612,560=>787,561=>612,562=>611,563=>592,564=>475,\n565=>843,566=>477,567=>278,568=>998,569=>998,570=>684,571=>698,572=>550,573=>557,574=>611,\n575=>521,576=>525,577=>603,578=>479,579=>686,580=>732,581=>684,582=>632,583=>615,584=>295,\n585=>278,586=>781,587=>635,588=>695,589=>411,590=>611,591=>592,592=>613,593=>635,594=>635,\n595=>635,596=>550,597=>550,598=>635,599=>727,600=>615,601=>615,602=>844,603=>545,604=>545,\n605=>775,606=>664,607=>326,608=>696,609=>635,610=>629,611=>596,612=>596,613=>634,614=>634,\n615=>634,616=>372,617=>387,618=>372,619=>396,620=>487,621=>278,622=>706,623=>974,624=>974,\n625=>974,626=>646,627=>642,628=>634,629=>612,630=>858,631=>728,632=>660,633=>469,634=>469,\n635=>469,636=>469,637=>469,638=>530,639=>530,640=>602,641=>602,642=>521,643=>336,644=>336,\n645=>461,646=>336,647=>392,648=>392,649=>634,650=>618,651=>598,652=>592,653=>818,654=>592,\n655=>611,656=>525,657=>525,658=>578,659=>578,660=>510,661=>510,662=>510,663=>510,664=>787,\n665=>580,666=>664,667=>708,668=>654,669=>292,670=>667,671=>507,672=>727,673=>510,674=>510,\n675=>1014,676=>1058,677=>1013,678=>824,679=>610,680=>778,681=>848,682=>641,683=>654,684=>515,\n685=>515,686=>570,687=>664,688=>399,689=>399,690=>175,691=>259,692=>295,693=>296,694=>379,\n695=>515,696=>373,697=>278,698=>460,699=>318,700=>318,701=>318,702=>307,703=>307,704=>370,\n705=>370,706=>500,707=>500,708=>500,709=>500,711=>500,712=>275,713=>500,714=>500,715=>500,\n716=>275,717=>500,718=>500,719=>500,720=>337,721=>337,722=>307,723=>307,724=>500,725=>500,\n726=>390,727=>317,728=>500,729=>500,730=>500,731=>500,733=>500,734=>315,735=>500,736=>426,\n737=>166,738=>373,739=>444,740=>370,741=>493,742=>493,743=>493,744=>493,745=>493,748=>500,\n749=>500,750=>518,755=>500,759=>500,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,\n774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,\n784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,\n794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,\n804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,\n814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,\n824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,\n834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,\n844=>0,845=>0,846=>0,847=>0,849=>0,850=>0,851=>0,855=>0,856=>0,858=>0,\n860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,880=>654,881=>568,882=>862,\n883=>647,884=>278,885=>278,886=>748,887=>650,890=>500,891=>549,892=>550,893=>549,894=>337,\n900=>500,901=>500,902=>684,903=>318,904=>767,905=>903,906=>435,908=>839,910=>860,911=>905,\n912=>338,913=>684,914=>686,915=>557,916=>684,917=>632,918=>685,919=>752,920=>787,921=>295,\n922=>656,923=>684,924=>863,925=>748,926=>632,927=>787,928=>752,929=>603,931=>632,932=>611,\n933=>611,934=>787,935=>685,936=>787,937=>764,938=>295,939=>611,940=>659,941=>541,942=>634,\n943=>338,944=>579,945=>659,946=>638,947=>592,948=>612,949=>541,950=>544,951=>634,952=>612,\n953=>338,954=>589,955=>592,956=>636,957=>559,958=>558,959=>612,960=>602,961=>635,962=>587,\n963=>634,964=>602,965=>579,966=>660,967=>592,968=>660,969=>837,970=>338,971=>579,972=>612,\n973=>579,974=>837,975=>656,976=>614,977=>619,978=>699,979=>842,980=>699,981=>660,982=>837,\n983=>664,984=>787,985=>612,986=>648,987=>587,988=>575,989=>458,990=>660,991=>660,992=>865,\n993=>627,994=>934,995=>837,996=>758,997=>659,998=>792,999=>615,1000=>687,1001=>607,1002=>768,\n1003=>625,1004=>699,1005=>612,1006=>611,1007=>536,1008=>664,1009=>635,1010=>550,1011=>278,1012=>787,\n1013=>615,1014=>615,1015=>608,1016=>635,1017=>698,1018=>863,1019=>651,1020=>635,1021=>703,1022=>698,\n1023=>703,1024=>632,1025=>632,1026=>786,1027=>557,1028=>698,1029=>635,1030=>295,1031=>295,1032=>295,\n1033=>1094,1034=>1045,1035=>786,1036=>710,1037=>748,1038=>609,1039=>752,1040=>684,1041=>686,1042=>686,\n1043=>557,1044=>781,1045=>632,1046=>1077,1047=>641,1048=>748,1049=>748,1050=>710,1051=>752,1052=>863,\n1053=>752,1054=>787,1055=>752,1056=>603,1057=>698,1058=>611,1059=>609,1060=>861,1061=>685,1062=>776,\n1063=>686,1064=>1069,1065=>1094,1066=>833,1067=>818,1068=>686,1069=>698,1070=>1080,1071=>695,1072=>613,\n1073=>617,1074=>589,1075=>525,1076=>691,1077=>615,1078=>901,1079=>532,1080=>650,1081=>650,1082=>604,\n1083=>639,1084=>754,1085=>654,1086=>612,1087=>654,1088=>635,1089=>550,1090=>583,1091=>592,1092=>855,\n1093=>592,1094=>681,1095=>591,1096=>915,1097=>942,1098=>707,1099=>790,1100=>589,1101=>549,1102=>842,\n1103=>602,1104=>615,1105=>615,1106=>625,1107=>525,1108=>549,1109=>521,1110=>278,1111=>278,1112=>278,\n1113=>902,1114=>898,1115=>652,1116=>604,1117=>650,1118=>592,1119=>654,1120=>934,1121=>837,1122=>771,\n1123=>672,1124=>942,1125=>749,1126=>879,1127=>783,1128=>1160,1129=>1001,1130=>787,1131=>612,1132=>1027,\n1133=>824,1134=>636,1135=>541,1136=>856,1137=>876,1138=>787,1139=>612,1140=>781,1141=>665,1142=>781,\n1143=>665,1144=>992,1145=>904,1146=>953,1147=>758,1148=>1180,1149=>1028,1150=>934,1151=>837,1152=>698,\n1153=>550,1154=>502,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>418,1161=>418,1162=>748,\n1163=>657,1164=>686,1165=>589,1166=>603,1167=>635,1168=>610,1169=>525,1170=>675,1171=>556,1172=>557,\n1173=>491,1174=>1077,1175=>901,1176=>641,1177=>532,1178=>710,1179=>604,1180=>710,1181=>604,1182=>710,\n1183=>604,1184=>856,1185=>832,1186=>752,1187=>661,1188=>1014,1189=>877,1190=>1113,1191=>950,1192=>890,\n1193=>707,1194=>698,1195=>550,1196=>611,1197=>529,1198=>611,1199=>592,1200=>611,1201=>592,1202=>685,\n1203=>592,1204=>934,1205=>807,1206=>686,1207=>591,1208=>686,1209=>591,1210=>686,1211=>634,1212=>929,\n1213=>731,1214=>929,1215=>731,1216=>295,1217=>1077,1218=>901,1219=>655,1220=>604,1221=>752,1222=>639,\n1223=>752,1224=>661,1225=>752,1226=>661,1227=>686,1228=>591,1229=>863,1230=>754,1231=>278,1232=>684,\n1233=>613,1234=>684,1235=>613,1236=>974,1237=>995,1238=>632,1239=>615,1240=>787,1241=>615,1242=>787,\n1243=>615,1244=>1077,1245=>901,1246=>641,1247=>532,1248=>666,1249=>578,1250=>748,1251=>650,1252=>748,\n1253=>650,1254=>787,1255=>612,1256=>787,1257=>612,1258=>787,1259=>612,1260=>698,1261=>549,1262=>609,\n1263=>592,1264=>609,1265=>592,1266=>609,1267=>592,1268=>686,1269=>591,1270=>557,1271=>491,1272=>818,\n1273=>790,1274=>675,1275=>556,1276=>685,1277=>592,1278=>685,1279=>592,1280=>686,1281=>589,1282=>1006,\n1283=>897,1284=>975,1285=>869,1286=>679,1287=>588,1288=>1072,1289=>957,1290=>1113,1291=>967,1292=>775,\n1293=>660,1294=>773,1295=>711,1296=>614,1297=>541,1298=>752,1299=>639,1300=>1195,1301=>997,1302=>900,\n1303=>867,1304=>1031,1305=>989,1306=>787,1307=>635,1308=>989,1309=>818,1312=>1113,1313=>942,1314=>1113,\n1315=>949,1316=>793,1317=>683,1329=>867,1330=>732,1331=>882,1332=>882,1333=>732,1334=>644,1335=>682,\n1336=>732,1337=>851,1338=>882,1339=>732,1340=>557,1341=>824,1342=>986,1343=>732,1344=>707,1345=>644,\n1346=>882,1347=>777,1348=>882,1349=>732,1350=>840,1351=>732,1352=>732,1353=>732,1354=>791,1355=>644,\n1356=>882,1357=>732,1358=>882,1359=>635,1360=>732,1361=>732,1362=>799,1363=>861,1364=>790,1365=>787,\n1366=>635,1369=>307,1370=>318,1371=>500,1372=>500,1373=>392,1374=>526,1375=>500,1377=>974,1378=>634,\n1379=>762,1380=>767,1381=>634,1382=>697,1383=>533,1384=>634,1385=>700,1386=>697,1387=>634,1388=>404,\n1389=>894,1390=>641,1391=>634,1392=>634,1393=>635,1394=>702,1395=>634,1396=>659,1397=>278,1398=>760,\n1399=>516,1400=>634,1401=>453,1402=>974,1403=>516,1404=>769,1405=>634,1406=>696,1407=>974,1408=>634,\n1409=>635,1410=>501,1411=>974,1412=>648,1413=>612,1414=>629,1415=>763,1417=>337,1418=>433,1456=>0,\n1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1466=>0,\n1467=>0,1468=>0,1469=>0,1470=>361,1471=>0,1472=>295,1473=>0,1474=>0,1475=>295,1478=>456,\n1479=>0,1488=>629,1489=>608,1490=>448,1491=>594,1492=>640,1493=>272,1494=>374,1495=>640,1496=>648,\n1497=>272,1498=>592,1499=>556,1500=>599,1501=>640,1502=>659,1503=>272,1504=>441,1505=>700,1506=>563,\n1507=>640,1508=>604,1509=>521,1510=>581,1511=>663,1512=>592,1513=>808,1514=>657,1520=>471,1521=>454,\n1522=>471,1523=>416,1524=>645,3647=>652,3713=>670,3714=>684,3716=>688,3719=>482,3720=>628,3722=>684,\n3725=>688,3732=>642,3733=>642,3734=>672,3735=>655,3737=>641,3738=>592,3739=>592,3740=>745,3741=>767,\n3742=>687,3743=>687,3745=>702,3746=>688,3747=>684,3749=>649,3751=>632,3754=>703,3755=>819,3757=>633,\n3758=>684,3759=>788,3760=>632,3761=>0,3762=>539,3763=>539,3764=>0,3765=>0,3766=>0,3767=>0,\n3768=>0,3769=>0,3771=>0,3772=>0,3773=>663,3776=>360,3777=>679,3778=>460,3779=>547,3780=>491,\n3782=>674,3784=>0,3785=>0,3786=>0,3787=>0,3788=>0,3789=>0,3792=>636,3793=>641,3794=>641,\n3795=>670,3796=>625,3797=>625,3798=>703,3799=>670,3800=>674,3801=>677,3804=>1028,3805=>1028,4256=>840,\n4257=>690,4258=>642,4259=>759,4260=>591,4261=>686,4262=>789,4263=>811,4264=>467,4265=>565,4266=>789,\n4267=>793,4268=>584,4269=>837,4270=>750,4271=>688,4272=>811,4273=>584,4274=>584,4275=>837,4276=>837,\n4277=>646,4278=>604,4279=>584,4280=>596,4281=>584,4282=>721,4283=>795,4284=>584,4285=>566,4286=>584,\n4287=>669,4288=>799,4289=>542,4290=>664,4291=>542,4292=>565,4293=>674,4304=>508,4305=>508,4306=>533,\n4307=>785,4308=>522,4309=>517,4310=>508,4311=>797,4312=>507,4313=>518,4314=>1058,4315=>522,4316=>523,\n4317=>783,4318=>518,4319=>523,4320=>792,4321=>523,4322=>656,4323=>524,4324=>788,4325=>523,4326=>782,\n4327=>523,4328=>522,4329=>522,4330=>566,4331=>523,4332=>523,4333=>489,4334=>522,4335=>498,4336=>517,\n4337=>560,4338=>508,4339=>508,4340=>508,4341=>563,4342=>824,4343=>595,4344=>522,4345=>554,4346=>553,\n4347=>586,4348=>304,5121=>684,5122=>684,5123=>684,5124=>684,5125=>769,5126=>769,5127=>769,5129=>769,\n5130=>769,5131=>769,5132=>835,5133=>834,5134=>835,5135=>834,5136=>835,5137=>834,5138=>967,5139=>1007,\n5140=>967,5141=>1007,5142=>769,5143=>967,5144=>1007,5145=>967,5146=>1007,5147=>769,5149=>256,5150=>543,\n5151=>423,5152=>423,5153=>389,5154=>389,5155=>393,5156=>389,5157=>466,5158=>385,5159=>256,5160=>389,\n5161=>389,5162=>389,5163=>1090,5164=>909,5165=>953,5166=>1117,5167=>684,5168=>684,5169=>684,5170=>684,\n5171=>729,5172=>729,5173=>729,5175=>729,5176=>729,5177=>729,5178=>835,5179=>684,5180=>835,5181=>834,\n5182=>835,5183=>834,5184=>967,5185=>1007,5186=>967,5187=>1007,5188=>967,5189=>1007,5190=>967,5191=>1007,\n5192=>729,5193=>508,5194=>192,5196=>732,5197=>732,5198=>732,5199=>732,5200=>730,5201=>730,5202=>730,\n5204=>730,5205=>730,5206=>730,5207=>921,5208=>889,5209=>921,5210=>889,5211=>921,5212=>889,5213=>928,\n5214=>900,5215=>928,5216=>900,5217=>947,5218=>900,5219=>947,5220=>900,5221=>947,5222=>434,5223=>877,\n5224=>877,5225=>866,5226=>890,5227=>628,5228=>628,5229=>628,5230=>628,5231=>628,5232=>628,5233=>628,\n5234=>628,5235=>628,5236=>860,5237=>771,5238=>815,5239=>816,5240=>815,5241=>816,5242=>860,5243=>771,\n5244=>860,5245=>771,5246=>815,5247=>816,5248=>815,5249=>816,5250=>815,5251=>407,5252=>407,5253=>750,\n5254=>775,5255=>750,5256=>775,5257=>628,5258=>628,5259=>628,5260=>628,5261=>628,5262=>628,5263=>628,\n5264=>628,5265=>628,5266=>860,5267=>771,5268=>815,5269=>816,5270=>815,5271=>816,5272=>860,5273=>771,\n5274=>860,5275=>771,5276=>815,5277=>816,5278=>815,5279=>816,5280=>815,5281=>435,5282=>435,5283=>610,\n5284=>557,5285=>557,5286=>557,5287=>610,5288=>610,5289=>610,5290=>557,5291=>557,5292=>749,5293=>769,\n5294=>746,5295=>764,5296=>746,5297=>764,5298=>749,5299=>769,5300=>749,5301=>769,5302=>746,5303=>764,\n5304=>746,5305=>764,5306=>746,5307=>386,5308=>508,5309=>386,5312=>852,5313=>852,5314=>852,5315=>852,\n5316=>852,5317=>852,5318=>852,5319=>852,5320=>852,5321=>1069,5322=>1035,5323=>1059,5324=>852,5325=>1059,\n5326=>852,5327=>852,5328=>600,5329=>453,5330=>600,5331=>852,5332=>852,5333=>852,5334=>852,5335=>852,\n5336=>852,5337=>852,5338=>852,5339=>852,5340=>1069,5341=>1035,5342=>1059,5343=>1030,5344=>1059,5345=>1030,\n5346=>1069,5347=>1035,5348=>1069,5349=>1035,5350=>1083,5351=>1030,5352=>1083,5353=>1030,5354=>600,5356=>729,\n5357=>603,5358=>603,5359=>603,5360=>603,5361=>603,5362=>603,5363=>603,5364=>603,5365=>603,5366=>834,\n5367=>754,5368=>792,5369=>771,5370=>792,5371=>771,5372=>834,5373=>754,5374=>834,5375=>754,5376=>792,\n5377=>771,5378=>792,5379=>771,5380=>792,5381=>418,5382=>420,5383=>418,5392=>712,5393=>712,5394=>712,\n5395=>892,5396=>892,5397=>892,5398=>892,5399=>910,5400=>872,5401=>910,5402=>872,5403=>910,5404=>872,\n5405=>1140,5406=>1100,5407=>1140,5408=>1100,5409=>1140,5410=>1100,5411=>1140,5412=>1100,5413=>641,5414=>627,\n5415=>627,5416=>627,5417=>627,5418=>627,5419=>627,5420=>627,5421=>627,5422=>627,5423=>844,5424=>781,\n5425=>816,5426=>818,5427=>816,5428=>818,5429=>844,5430=>781,5431=>844,5432=>781,5433=>816,5434=>818,\n5435=>816,5436=>818,5437=>816,5438=>418,5440=>389,5441=>484,5442=>916,5443=>916,5444=>863,5445=>916,\n5446=>863,5447=>863,5448=>603,5449=>603,5450=>603,5451=>603,5452=>603,5453=>603,5454=>834,5455=>754,\n5456=>418,5458=>729,5459=>684,5460=>684,5461=>684,5462=>684,5463=>726,5464=>726,5465=>726,5466=>726,\n5467=>924,5468=>1007,5469=>508,5470=>732,5471=>732,5472=>732,5473=>732,5474=>732,5475=>732,5476=>730,\n5477=>730,5478=>730,5479=>730,5480=>947,5481=>900,5482=>508,5492=>831,5493=>831,5494=>831,5495=>831,\n5496=>831,5497=>831,5498=>831,5499=>563,5500=>752,5501=>484,5502=>1047,5503=>1047,5504=>1047,5505=>1047,\n5506=>1047,5507=>1047,5508=>1047,5509=>825,5514=>831,5515=>831,5516=>831,5517=>831,5518=>1259,5519=>1259,\n5520=>1259,5521=>1002,5522=>1002,5523=>1259,5524=>1259,5525=>700,5526=>1073,5536=>852,5537=>852,5538=>799,\n5539=>799,5540=>799,5541=>799,5542=>600,5543=>643,5544=>643,5545=>643,5546=>643,5547=>643,5548=>643,\n5549=>643,5550=>418,5551=>628,5598=>770,5601=>770,5702=>468,5703=>468,5742=>444,5743=>1047,5744=>1310,\n5745=>1632,5746=>1632,5747=>1375,5748=>1375,5749=>1632,5750=>1632,7424=>592,7425=>717,7426=>982,7427=>586,\n7428=>550,7429=>605,7430=>605,7431=>491,7432=>541,7433=>278,7434=>395,7435=>579,7436=>583,7437=>754,\n7438=>650,7439=>612,7440=>550,7441=>684,7442=>684,7443=>684,7444=>1023,7446=>612,7447=>612,7448=>524,\n7449=>602,7450=>602,7451=>583,7452=>574,7453=>737,7454=>948,7455=>638,7456=>592,7457=>818,7458=>525,\n7459=>526,7462=>583,7463=>592,7464=>564,7465=>524,7466=>590,7467=>639,7468=>431,7469=>613,7470=>432,\n7472=>485,7473=>398,7474=>398,7475=>488,7476=>474,7477=>186,7478=>186,7479=>413,7480=>351,7481=>543,\n7482=>471,7483=>471,7484=>496,7485=>439,7486=>380,7487=>438,7488=>385,7489=>461,7490=>623,7491=>392,\n7492=>392,7493=>405,7494=>648,7495=>428,7496=>405,7497=>417,7498=>417,7499=>360,7500=>359,7501=>405,\n7502=>179,7503=>426,7504=>623,7505=>409,7506=>414,7507=>370,7508=>414,7509=>414,7510=>428,7511=>295,\n7512=>405,7513=>470,7514=>623,7515=>417,7517=>402,7518=>373,7519=>385,7520=>416,7521=>364,7522=>179,\n7523=>259,7524=>405,7525=>417,7526=>402,7527=>373,7528=>412,7529=>416,7530=>364,7543=>635,7544=>474,\n7547=>372,7557=>278,7579=>405,7580=>370,7581=>370,7582=>414,7583=>360,7584=>296,7585=>233,7586=>405,\n7587=>405,7588=>261,7589=>250,7590=>261,7591=>261,7592=>234,7593=>250,7594=>235,7595=>376,7596=>623,\n7597=>623,7598=>411,7599=>479,7600=>409,7601=>414,7602=>414,7603=>360,7604=>287,7605=>295,7606=>508,\n7607=>418,7608=>361,7609=>406,7610=>417,7611=>366,7612=>437,7613=>366,7614=>392,7615=>414,7620=>0,\n7621=>0,7622=>0,7623=>0,7624=>0,7625=>0,7680=>684,7681=>613,7682=>686,7683=>635,7684=>686,\n7685=>635,7686=>686,7687=>635,7688=>698,7689=>550,7690=>770,7691=>635,7692=>770,7693=>635,7694=>770,\n7695=>635,7696=>770,7697=>635,7698=>770,7699=>635,7700=>632,7701=>615,7702=>632,7703=>615,7704=>632,\n7705=>615,7706=>632,7707=>615,7708=>632,7709=>615,7710=>575,7711=>352,7712=>775,7713=>635,7714=>752,\n7715=>634,7716=>752,7717=>634,7718=>752,7719=>634,7720=>752,7721=>634,7722=>752,7723=>634,7724=>295,\n7725=>278,7726=>295,7727=>278,7728=>656,7729=>579,7730=>656,7731=>579,7732=>656,7733=>579,7734=>557,\n7735=>278,7736=>557,7737=>278,7738=>557,7739=>278,7740=>557,7741=>278,7742=>863,7743=>974,7744=>863,\n7745=>974,7746=>863,7747=>974,7748=>748,7749=>634,7750=>748,7751=>634,7752=>748,7753=>634,7754=>748,\n7755=>634,7756=>787,7757=>612,7758=>787,7759=>612,7760=>787,7761=>612,7762=>787,7763=>612,7764=>603,\n7765=>635,7766=>603,7767=>635,7768=>695,7769=>411,7770=>695,7771=>411,7772=>695,7773=>411,7774=>695,\n7775=>411,7776=>635,7777=>521,7778=>635,7779=>521,7780=>635,7781=>521,7782=>635,7783=>521,7784=>635,\n7785=>521,7786=>611,7787=>392,7788=>611,7789=>392,7790=>611,7791=>392,7792=>611,7793=>392,7794=>732,\n7795=>634,7796=>732,7797=>634,7798=>732,7799=>634,7800=>732,7801=>634,7802=>732,7803=>634,7804=>684,\n7805=>592,7806=>684,7807=>592,7808=>989,7809=>818,7810=>989,7811=>818,7812=>989,7813=>818,7814=>989,\n7815=>818,7816=>989,7817=>818,7818=>685,7819=>592,7820=>685,7821=>592,7822=>611,7823=>592,7824=>685,\n7825=>525,7826=>685,7827=>525,7828=>685,7829=>525,7830=>634,7831=>392,7832=>818,7833=>592,7834=>613,\n7835=>352,7838=>769,7839=>612,7840=>684,7841=>613,7842=>684,7843=>613,7844=>684,7845=>613,7846=>684,\n7847=>613,7848=>684,7849=>613,7850=>684,7851=>613,7852=>684,7853=>613,7854=>684,7855=>613,7856=>684,\n7857=>613,7858=>684,7859=>613,7860=>684,7861=>613,7862=>684,7863=>613,7864=>632,7865=>615,7866=>632,\n7867=>615,7868=>632,7869=>615,7870=>632,7871=>615,7872=>632,7873=>615,7874=>632,7875=>615,7876=>632,\n7877=>615,7878=>632,7879=>615,7880=>295,7881=>278,7882=>295,7883=>278,7884=>787,7885=>612,7886=>787,\n7887=>612,7888=>787,7889=>612,7890=>787,7891=>612,7892=>787,7893=>612,7894=>787,7895=>612,7896=>787,\n7897=>612,7898=>913,7899=>612,7900=>913,7901=>612,7902=>913,7903=>612,7904=>913,7905=>612,7906=>913,\n7907=>612,7908=>732,7909=>634,7910=>732,7911=>634,7912=>838,7913=>634,7914=>838,7915=>634,7916=>838,\n7917=>634,7918=>838,7919=>634,7920=>838,7921=>634,7922=>611,7923=>592,7924=>611,7925=>592,7926=>611,\n7927=>592,7928=>611,7929=>592,7936=>659,7937=>659,7938=>659,7939=>659,7940=>659,7941=>659,7942=>659,\n7943=>659,7944=>684,7945=>684,7946=>877,7947=>877,7948=>769,7949=>801,7950=>708,7951=>743,7952=>541,\n7953=>541,7954=>541,7955=>541,7956=>541,7957=>541,7960=>711,7961=>711,7962=>966,7963=>975,7964=>898,\n7965=>928,7968=>634,7969=>634,7970=>634,7971=>634,7972=>634,7973=>634,7974=>634,7975=>634,7976=>837,\n7977=>835,7978=>1086,7979=>1089,7980=>1027,7981=>1051,7982=>934,7983=>947,7984=>338,7985=>338,7986=>338,\n7987=>338,7988=>338,7989=>338,7990=>338,7991=>338,7992=>380,7993=>374,7994=>635,7995=>635,7996=>570,\n7997=>600,7998=>489,7999=>493,8000=>612,8001=>612,8002=>612,8003=>612,8004=>612,8005=>612,8008=>804,\n8009=>848,8010=>1095,8011=>1100,8012=>938,8013=>970,8016=>579,8017=>579,8018=>579,8019=>579,8020=>579,\n8021=>579,8022=>579,8023=>579,8025=>784,8027=>998,8029=>1012,8031=>897,8032=>837,8033=>837,8034=>837,\n8035=>837,8036=>837,8037=>837,8038=>837,8039=>837,8040=>802,8041=>843,8042=>1089,8043=>1095,8044=>946,\n8045=>972,8046=>921,8047=>952,8048=>659,8049=>659,8050=>541,8051=>548,8052=>634,8053=>654,8054=>338,\n8055=>338,8056=>612,8057=>612,8058=>579,8059=>579,8060=>837,8061=>837,8064=>659,8065=>659,8066=>659,\n8067=>659,8068=>659,8069=>659,8070=>659,8071=>659,8072=>684,8073=>684,8074=>877,8075=>877,8076=>769,\n8077=>801,8078=>708,8079=>743,8080=>634,8081=>634,8082=>634,8083=>634,8084=>634,8085=>634,8086=>634,\n8087=>634,8088=>837,8089=>835,8090=>1086,8091=>1089,8092=>1027,8093=>1051,8094=>934,8095=>947,8096=>837,\n8097=>837,8098=>837,8099=>837,8100=>837,8101=>837,8102=>837,8103=>837,8104=>802,8105=>843,8106=>1089,\n8107=>1095,8108=>946,8109=>972,8110=>921,8111=>952,8112=>659,8113=>659,8114=>659,8115=>659,8116=>659,\n8118=>659,8119=>659,8120=>684,8121=>684,8122=>716,8123=>692,8124=>684,8125=>500,8126=>500,8127=>500,\n8128=>500,8129=>500,8130=>634,8131=>634,8132=>654,8134=>634,8135=>634,8136=>805,8137=>746,8138=>931,\n8139=>871,8140=>752,8141=>500,8142=>500,8143=>500,8144=>338,8145=>338,8146=>338,8147=>338,8150=>338,\n8151=>338,8152=>295,8153=>295,8154=>475,8155=>408,8157=>500,8158=>500,8159=>500,8160=>579,8161=>579,\n8162=>579,8163=>579,8164=>635,8165=>635,8166=>579,8167=>579,8168=>611,8169=>611,8170=>845,8171=>825,\n8172=>685,8173=>500,8174=>500,8175=>500,8178=>837,8179=>837,8180=>837,8182=>837,8183=>837,8184=>941,\n8185=>813,8186=>922,8187=>826,8188=>764,8189=>500,8190=>500,8192=>500,8193=>1000,8194=>500,8195=>1000,\n8196=>330,8197=>250,8198=>167,8199=>636,8200=>318,8201=>200,8202=>100,8203=>0,8204=>0,8205=>0,\n8206=>0,8207=>0,8208=>361,8209=>361,8210=>636,8213=>1000,8214=>500,8215=>500,8219=>318,8223=>518,\n8227=>590,8228=>333,8229=>667,8231=>318,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>200,\n8241=>1690,8242=>227,8243=>374,8244=>520,8245=>227,8246=>374,8247=>520,8248=>339,8251=>838,8252=>485,\n8253=>531,8254=>500,8255=>804,8256=>804,8257=>250,8258=>1000,8259=>500,8260=>167,8261=>390,8262=>390,\n8263=>922,8264=>733,8265=>733,8266=>497,8267=>636,8268=>500,8269=>500,8270=>500,8271=>337,8272=>804,\n8273=>500,8274=>450,8275=>1000,8276=>804,8277=>838,8278=>586,8279=>663,8280=>838,8281=>838,8282=>318,\n8283=>797,8284=>838,8285=>318,8286=>318,8287=>222,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,\n8298=>0,8299=>0,8300=>0,8301=>0,8302=>0,8303=>0,8304=>401,8305=>179,8308=>401,8309=>401,\n8310=>401,8311=>401,8312=>401,8313=>401,8314=>528,8315=>528,8316=>528,8317=>246,8318=>246,8319=>399,\n8320=>401,8321=>401,8322=>401,8323=>401,8324=>401,8325=>401,8326=>401,8327=>401,8328=>401,8329=>401,\n8330=>528,8331=>528,8332=>528,8333=>246,8334=>246,8336=>392,8337=>417,8338=>414,8339=>444,8340=>417,\n8352=>877,8353=>636,8354=>636,8355=>636,8356=>636,8357=>974,8358=>748,8359=>1271,8360=>1074,8361=>989,\n8362=>838,8363=>636,8365=>656,8366=>611,8367=>1272,8368=>636,8369=>636,8370=>636,8371=>636,8372=>774,\n8373=>641,8400=>0,8401=>0,8406=>0,8407=>0,8411=>0,8412=>0,8417=>0,8448=>970,8449=>970,\n8450=>698,8451=>1123,8452=>896,8453=>969,8454=>1032,8455=>614,8456=>698,8457=>952,8459=>988,8460=>754,\n8461=>850,8462=>634,8463=>634,8464=>470,8465=>697,8466=>720,8467=>413,8468=>818,8469=>801,8470=>1040,\n8471=>1000,8472=>697,8473=>701,8474=>787,8475=>798,8476=>814,8477=>792,8478=>896,8479=>684,8480=>1020,\n8481=>1014,8483=>684,8484=>745,8485=>578,8486=>764,8487=>764,8488=>616,8489=>338,8490=>656,8491=>684,\n8492=>786,8493=>703,8494=>854,8495=>592,8496=>605,8497=>786,8498=>575,8499=>1069,8500=>462,8501=>745,\n8502=>674,8503=>466,8504=>645,8505=>380,8506=>926,8507=>1157,8508=>702,8509=>728,8510=>654,8511=>849,\n8512=>811,8513=>775,8514=>557,8515=>557,8516=>611,8517=>819,8518=>708,8519=>615,8520=>351,8521=>351,\n8523=>780,8526=>526,8531=>969,8532=>969,8533=>969,8534=>969,8535=>969,8536=>969,8537=>969,8538=>969,\n8539=>969,8540=>969,8541=>969,8542=>969,8543=>568,8544=>295,8545=>492,8546=>689,8547=>923,8548=>684,\n8549=>922,8550=>1120,8551=>1317,8552=>917,8553=>685,8554=>933,8555=>1131,8556=>557,8557=>698,8558=>770,\n8559=>863,8560=>278,8561=>458,8562=>637,8563=>812,8564=>592,8565=>811,8566=>991,8567=>1170,8568=>819,\n8569=>592,8570=>822,8571=>1002,8572=>278,8573=>550,8574=>635,8575=>974,8576=>1245,8577=>770,8578=>1245,\n8579=>703,8580=>549,8592=>838,8593=>838,8594=>838,8595=>838,8596=>838,8597=>838,8598=>838,8599=>838,\n8600=>838,8601=>838,8602=>838,8603=>838,8604=>838,8605=>838,8606=>838,8607=>838,8608=>838,8609=>838,\n8610=>838,8611=>838,8612=>838,8613=>838,8614=>838,8615=>838,8616=>838,8617=>838,8618=>838,8619=>838,\n8620=>838,8621=>838,8622=>838,8623=>838,8624=>838,8625=>838,8626=>838,8627=>838,8628=>838,8629=>838,\n8630=>838,8631=>838,8632=>838,8633=>838,8634=>838,8635=>838,8636=>838,8637=>838,8638=>838,8639=>838,\n8640=>838,8641=>838,8642=>838,8643=>838,8644=>838,8645=>838,8646=>838,8647=>838,8648=>838,8649=>838,\n8650=>838,8651=>838,8652=>838,8653=>838,8654=>838,8655=>838,8656=>838,8657=>838,8658=>838,8659=>838,\n8660=>838,8661=>838,8662=>838,8663=>838,8664=>838,8665=>838,8666=>838,8667=>838,8668=>838,8669=>838,\n8670=>838,8671=>838,8672=>838,8673=>838,8674=>838,8675=>838,8676=>838,8677=>838,8678=>838,8679=>838,\n8680=>838,8681=>838,8682=>838,8683=>838,8684=>838,8685=>838,8686=>838,8687=>838,8688=>838,8689=>838,\n8690=>838,8691=>838,8692=>838,8693=>838,8694=>838,8695=>838,8696=>838,8697=>838,8698=>838,8699=>838,\n8700=>838,8701=>838,8702=>838,8703=>838,8704=>684,8705=>636,8706=>517,8707=>632,8708=>632,8709=>871,\n8710=>669,8711=>669,8712=>871,8713=>871,8714=>718,8715=>871,8716=>871,8717=>718,8718=>636,8719=>757,\n8720=>757,8721=>674,8722=>838,8723=>838,8724=>838,8725=>337,8726=>637,8727=>838,8728=>626,8729=>626,\n8730=>637,8731=>637,8732=>637,8733=>714,8734=>833,8735=>838,8736=>896,8737=>896,8738=>838,8739=>500,\n8740=>500,8741=>500,8742=>500,8743=>732,8744=>732,8745=>732,8746=>732,8747=>521,8748=>789,8749=>1057,\n8750=>521,8751=>789,8752=>1057,8753=>521,8754=>521,8755=>521,8756=>636,8757=>636,8758=>260,8759=>636,\n8760=>838,8761=>838,8762=>838,8763=>838,8764=>838,8765=>838,8766=>838,8767=>838,8768=>375,8769=>838,\n8770=>838,8771=>838,8772=>838,8773=>838,8774=>838,8775=>838,8776=>838,8777=>838,8778=>838,8779=>838,\n8780=>838,8781=>838,8782=>838,8783=>838,8784=>838,8785=>838,8786=>838,8787=>838,8788=>1000,8789=>1000,\n8790=>838,8791=>838,8792=>838,8793=>838,8794=>838,8795=>838,8796=>838,8797=>838,8798=>838,8799=>838,\n8800=>838,8801=>838,8802=>838,8803=>838,8804=>838,8805=>838,8806=>838,8807=>838,8808=>838,8809=>838,\n8810=>1047,8811=>1047,8812=>464,8813=>838,8814=>838,8815=>838,8816=>838,8817=>838,8818=>838,8819=>838,\n8820=>838,8821=>838,8822=>838,8823=>838,8824=>838,8825=>838,8826=>838,8827=>838,8828=>838,8829=>838,\n8830=>838,8831=>838,8832=>838,8833=>838,8834=>838,8835=>838,8836=>838,8837=>838,8838=>838,8839=>838,\n8840=>838,8841=>838,8842=>838,8843=>838,8844=>732,8845=>732,8846=>732,8847=>838,8848=>838,8849=>838,\n8850=>838,8851=>780,8852=>780,8853=>838,8854=>838,8855=>838,8856=>838,8857=>838,8858=>838,8859=>838,\n8860=>838,8861=>838,8862=>838,8863=>838,8864=>838,8865=>838,8866=>871,8867=>871,8868=>871,8869=>871,\n8870=>521,8871=>521,8872=>871,8873=>871,8874=>871,8875=>871,8876=>871,8877=>871,8878=>871,8879=>871,\n8880=>838,8881=>838,8882=>838,8883=>838,8884=>838,8885=>838,8886=>1000,8887=>1000,8888=>838,8889=>838,\n8890=>521,8891=>732,8892=>732,8893=>732,8894=>838,8895=>838,8896=>820,8897=>820,8898=>820,8899=>820,\n8900=>494,8901=>318,8902=>626,8903=>838,8904=>1000,8905=>1000,8906=>1000,8907=>1000,8908=>1000,8909=>838,\n8910=>732,8911=>732,8912=>838,8913=>838,8914=>838,8915=>838,8916=>838,8917=>838,8918=>838,8919=>838,\n8920=>1422,8921=>1422,8922=>838,8923=>838,8924=>838,8925=>838,8926=>838,8927=>838,8928=>838,8929=>838,\n8930=>838,8931=>838,8932=>838,8933=>838,8934=>838,8935=>838,8936=>838,8937=>838,8938=>838,8939=>838,\n8940=>838,8941=>838,8942=>1000,8943=>1000,8944=>1000,8945=>1000,8946=>1000,8947=>871,8948=>718,8949=>871,\n8950=>871,8951=>718,8952=>871,8953=>871,8954=>1000,8955=>871,8956=>718,8957=>871,8958=>718,8959=>871,\n8960=>602,8961=>602,8962=>635,8963=>838,8964=>838,8965=>838,8966=>838,8967=>488,8968=>390,8969=>390,\n8970=>390,8971=>390,8972=>809,8973=>809,8974=>809,8975=>809,8976=>838,8977=>513,8984=>1000,8985=>838,\n8988=>469,8989=>469,8990=>469,8991=>469,8992=>521,8993=>521,8996=>1152,8997=>1152,8998=>1414,8999=>1152,\n9000=>1443,9003=>1414,9004=>873,9075=>338,9076=>635,9077=>837,9082=>659,9085=>757,9095=>1152,9108=>873,\n9115=>500,9116=>500,9117=>500,9118=>500,9119=>500,9120=>500,9121=>500,9122=>500,9123=>500,9124=>500,\n9125=>500,9126=>500,9127=>750,9128=>750,9129=>750,9130=>750,9131=>750,9132=>750,9133=>750,9134=>521,\n9166=>838,9167=>945,9187=>873,9189=>769,9250=>635,9251=>635,9312=>896,9313=>896,9314=>896,9315=>896,\n9316=>896,9317=>896,9318=>896,9319=>896,9320=>896,9321=>896,9472=>602,9473=>602,9474=>602,9475=>602,\n9476=>602,9477=>602,9478=>602,9479=>602,9480=>602,9481=>602,9482=>602,9483=>602,9484=>602,9485=>602,\n9486=>602,9487=>602,9488=>602,9489=>602,9490=>602,9491=>602,9492=>602,9493=>602,9494=>602,9495=>602,\n9496=>602,9497=>602,9498=>602,9499=>602,9500=>602,9501=>602,9502=>602,9503=>602,9504=>602,9505=>602,\n9506=>602,9507=>602,9508=>602,9509=>602,9510=>602,9511=>602,9512=>602,9513=>602,9514=>602,9515=>602,\n9516=>602,9517=>602,9518=>602,9519=>602,9520=>602,9521=>602,9522=>602,9523=>602,9524=>602,9525=>602,\n9526=>602,9527=>602,9528=>602,9529=>602,9530=>602,9531=>602,9532=>602,9533=>602,9534=>602,9535=>602,\n9536=>602,9537=>602,9538=>602,9539=>602,9540=>602,9541=>602,9542=>602,9543=>602,9544=>602,9545=>602,\n9546=>602,9547=>602,9548=>602,9549=>602,9550=>602,9551=>602,9552=>602,9553=>602,9554=>602,9555=>602,\n9556=>602,9557=>602,9558=>602,9559=>602,9560=>602,9561=>602,9562=>602,9563=>602,9564=>602,9565=>602,\n9566=>602,9567=>602,9568=>602,9569=>602,9570=>602,9571=>602,9572=>602,9573=>602,9574=>602,9575=>602,\n9576=>602,9577=>602,9578=>602,9579=>602,9580=>602,9581=>602,9582=>602,9583=>602,9584=>602,9585=>602,\n9586=>602,9587=>602,9588=>602,9589=>602,9590=>602,9591=>602,9592=>602,9593=>602,9594=>602,9595=>602,\n9596=>602,9597=>602,9598=>602,9599=>602,9600=>769,9601=>769,9602=>769,9603=>769,9604=>769,9605=>769,\n9606=>769,9607=>769,9608=>769,9609=>769,9610=>769,9611=>769,9612=>769,9613=>769,9614=>769,9615=>769,\n9616=>769,9617=>769,9618=>769,9619=>769,9620=>769,9621=>769,9622=>769,9623=>769,9624=>769,9625=>769,\n9626=>769,9627=>769,9628=>769,9629=>769,9630=>769,9631=>769,9632=>945,9633=>945,9634=>945,9635=>945,\n9636=>945,9637=>945,9638=>945,9639=>945,9640=>945,9641=>945,9642=>678,9643=>678,9644=>945,9645=>945,\n9646=>550,9647=>550,9648=>769,9649=>769,9650=>769,9651=>769,9652=>502,9653=>502,9654=>769,9655=>769,\n9656=>502,9657=>502,9658=>769,9659=>769,9660=>769,9661=>769,9662=>502,9663=>502,9664=>769,9665=>769,\n9666=>502,9667=>502,9668=>769,9669=>769,9670=>769,9671=>769,9672=>769,9673=>873,9674=>494,9675=>873,\n9676=>873,9677=>873,9678=>873,9679=>873,9680=>873,9681=>873,9682=>873,9683=>873,9684=>873,9685=>873,\n9686=>527,9687=>527,9688=>791,9689=>970,9690=>970,9691=>970,9692=>387,9693=>387,9694=>387,9695=>387,\n9696=>769,9697=>769,9698=>769,9699=>769,9700=>769,9701=>769,9702=>590,9703=>945,9704=>945,9705=>945,\n9706=>945,9707=>945,9708=>769,9709=>769,9710=>769,9711=>1119,9712=>945,9713=>945,9714=>945,9715=>945,\n9716=>873,9717=>873,9718=>873,9719=>873,9720=>769,9721=>769,9722=>769,9723=>830,9724=>830,9725=>732,\n9726=>732,9727=>769,9728=>896,9729=>1000,9730=>896,9731=>896,9732=>896,9733=>896,9734=>896,9735=>573,\n9736=>896,9737=>896,9738=>888,9739=>888,9740=>671,9741=>1013,9742=>1246,9743=>1250,9744=>896,9745=>896,\n9746=>896,9747=>532,9748=>896,9749=>896,9750=>896,9751=>896,9752=>896,9753=>896,9754=>896,9755=>896,\n9756=>896,9757=>609,9758=>896,9759=>609,9760=>896,9761=>896,9762=>896,9763=>896,9764=>669,9765=>746,\n9766=>649,9767=>784,9768=>545,9769=>896,9770=>896,9771=>896,9772=>710,9773=>896,9774=>896,9775=>896,\n9776=>890,9777=>890,9778=>890,9779=>890,9780=>890,9781=>890,9782=>890,9783=>890,9784=>896,9785=>896,\n9786=>896,9787=>896,9788=>896,9789=>896,9790=>896,9791=>614,9792=>731,9793=>731,9794=>896,9795=>896,\n9796=>896,9797=>896,9798=>896,9799=>896,9800=>896,9801=>896,9802=>896,9803=>896,9804=>896,9805=>896,\n9806=>896,9807=>896,9808=>896,9809=>896,9810=>896,9811=>896,9812=>896,9813=>896,9814=>896,9815=>896,\n9816=>896,9817=>896,9818=>896,9819=>896,9820=>896,9821=>896,9822=>896,9823=>896,9824=>896,9825=>896,\n9826=>896,9827=>896,9828=>896,9829=>896,9830=>896,9831=>896,9832=>896,9833=>472,9834=>638,9835=>896,\n9836=>896,9837=>472,9838=>357,9839=>484,9840=>748,9841=>766,9842=>896,9843=>896,9844=>896,9845=>896,\n9846=>896,9847=>896,9848=>896,9849=>896,9850=>896,9851=>896,9852=>896,9853=>896,9854=>896,9855=>896,\n9856=>869,9857=>869,9858=>869,9859=>869,9860=>869,9861=>869,9862=>890,9863=>890,9864=>890,9865=>890,\n9866=>890,9867=>890,9868=>890,9869=>890,9870=>890,9871=>890,9872=>750,9873=>750,9874=>890,9875=>816,\n9876=>716,9877=>537,9878=>852,9879=>890,9880=>684,9881=>890,9882=>708,9883=>890,9884=>890,9888=>890,\n9889=>702,9890=>1003,9891=>1085,9892=>1143,9893=>901,9894=>838,9895=>838,9896=>838,9897=>838,9898=>838,\n9899=>838,9900=>838,9901=>838,9902=>838,9903=>838,9904=>844,9905=>838,9906=>731,9907=>732,9908=>732,\n9909=>732,9910=>850,9911=>732,9912=>732,9985=>838,9986=>838,9987=>838,9988=>838,9990=>838,9991=>838,\n9992=>838,9993=>838,9996=>838,9997=>838,9998=>838,9999=>838,10000=>838,10001=>838,10002=>838,10003=>838,\n10004=>838,10005=>838,10006=>838,10007=>838,10008=>838,10009=>838,10010=>838,10011=>838,10012=>838,10013=>838,\n10014=>838,10015=>838,10016=>838,10017=>838,10018=>838,10019=>838,10020=>838,10021=>838,10022=>838,10023=>838,\n10025=>838,10026=>838,10027=>838,10028=>838,10029=>838,10030=>838,10031=>838,10032=>838,10033=>838,10034=>838,\n10035=>838,10036=>838,10037=>838,10038=>838,10039=>838,10040=>838,10041=>838,10042=>838,10043=>838,10044=>838,\n10045=>838,10046=>838,10047=>838,10048=>838,10049=>838,10050=>838,10051=>838,10052=>838,10053=>838,10054=>838,\n10055=>838,10056=>838,10057=>838,10058=>838,10059=>838,10061=>896,10063=>896,10064=>896,10065=>896,10066=>896,\n10070=>896,10072=>838,10073=>838,10074=>838,10075=>322,10076=>322,10077=>538,10078=>538,10081=>838,10082=>838,\n10083=>838,10084=>838,10085=>838,10086=>838,10087=>838,10088=>838,10089=>838,10090=>838,10091=>838,10092=>838,\n10093=>838,10094=>838,10095=>838,10096=>838,10097=>838,10098=>838,10099=>838,10100=>838,10101=>838,10102=>896,\n10103=>896,10104=>896,10105=>896,10106=>896,10107=>896,10108=>896,10109=>896,10110=>896,10111=>896,10112=>838,\n10113=>838,10114=>838,10115=>838,10116=>838,10117=>838,10118=>838,10119=>838,10120=>838,10121=>838,10122=>838,\n10123=>838,10124=>838,10125=>838,10126=>838,10127=>838,10128=>838,10129=>838,10130=>838,10131=>838,10132=>838,\n10136=>838,10137=>838,10138=>838,10139=>838,10140=>838,10141=>838,10142=>838,10143=>838,10144=>838,10145=>838,\n10146=>838,10147=>838,10148=>838,10149=>838,10150=>838,10151=>838,10152=>838,10153=>838,10154=>838,10155=>838,\n10156=>838,10157=>838,10158=>838,10159=>838,10161=>838,10162=>838,10163=>838,10164=>838,10165=>838,10166=>838,\n10167=>838,10168=>838,10169=>838,10170=>838,10171=>838,10172=>838,10173=>838,10174=>838,10181=>390,10182=>390,\n10208=>494,10214=>495,10215=>495,10216=>390,10217=>390,10218=>556,10219=>556,10224=>838,10225=>838,10226=>838,\n10227=>838,10228=>1157,10229=>1434,10230=>1434,10231=>1434,10232=>1434,10233=>1434,10234=>1434,10235=>1434,10236=>1434,\n10237=>1434,10238=>1434,10239=>1434,10240=>732,10241=>732,10242=>732,10243=>732,10244=>732,10245=>732,10246=>732,\n10247=>732,10248=>732,10249=>732,10250=>732,10251=>732,10252=>732,10253=>732,10254=>732,10255=>732,10256=>732,\n10257=>732,10258=>732,10259=>732,10260=>732,10261=>732,10262=>732,10263=>732,10264=>732,10265=>732,10266=>732,\n10267=>732,10268=>732,10269=>732,10270=>732,10271=>732,10272=>732,10273=>732,10274=>732,10275=>732,10276=>732,\n10277=>732,10278=>732,10279=>732,10280=>732,10281=>732,10282=>732,10283=>732,10284=>732,10285=>732,10286=>732,\n10287=>732,10288=>732,10289=>732,10290=>732,10291=>732,10292=>732,10293=>732,10294=>732,10295=>732,10296=>732,\n10297=>732,10298=>732,10299=>732,10300=>732,10301=>732,10302=>732,10303=>732,10304=>732,10305=>732,10306=>732,\n10307=>732,10308=>732,10309=>732,10310=>732,10311=>732,10312=>732,10313=>732,10314=>732,10315=>732,10316=>732,\n10317=>732,10318=>732,10319=>732,10320=>732,10321=>732,10322=>732,10323=>732,10324=>732,10325=>732,10326=>732,\n10327=>732,10328=>732,10329=>732,10330=>732,10331=>732,10332=>732,10333=>732,10334=>732,10335=>732,10336=>732,\n10337=>732,10338=>732,10339=>732,10340=>732,10341=>732,10342=>732,10343=>732,10344=>732,10345=>732,10346=>732,\n10347=>732,10348=>732,10349=>732,10350=>732,10351=>732,10352=>732,10353=>732,10354=>732,10355=>732,10356=>732,\n10357=>732,10358=>732,10359=>732,10360=>732,10361=>732,10362=>732,10363=>732,10364=>732,10365=>732,10366=>732,\n10367=>732,10368=>732,10369=>732,10370=>732,10371=>732,10372=>732,10373=>732,10374=>732,10375=>732,10376=>732,\n10377=>732,10378=>732,10379=>732,10380=>732,10381=>732,10382=>732,10383=>732,10384=>732,10385=>732,10386=>732,\n10387=>732,10388=>732,10389=>732,10390=>732,10391=>732,10392=>732,10393=>732,10394=>732,10395=>732,10396=>732,\n10397=>732,10398=>732,10399=>732,10400=>732,10401=>732,10402=>732,10403=>732,10404=>732,10405=>732,10406=>732,\n10407=>732,10408=>732,10409=>732,10410=>732,10411=>732,10412=>732,10413=>732,10414=>732,10415=>732,10416=>732,\n10417=>732,10418=>732,10419=>732,10420=>732,10421=>732,10422=>732,10423=>732,10424=>732,10425=>732,10426=>732,\n10427=>732,10428=>732,10429=>732,10430=>732,10431=>732,10432=>732,10433=>732,10434=>732,10435=>732,10436=>732,\n10437=>732,10438=>732,10439=>732,10440=>732,10441=>732,10442=>732,10443=>732,10444=>732,10445=>732,10446=>732,\n10447=>732,10448=>732,10449=>732,10450=>732,10451=>732,10452=>732,10453=>732,10454=>732,10455=>732,10456=>732,\n10457=>732,10458=>732,10459=>732,10460=>732,10461=>732,10462=>732,10463=>732,10464=>732,10465=>732,10466=>732,\n10467=>732,10468=>732,10469=>732,10470=>732,10471=>732,10472=>732,10473=>732,10474=>732,10475=>732,10476=>732,\n10477=>732,10478=>732,10479=>732,10480=>732,10481=>732,10482=>732,10483=>732,10484=>732,10485=>732,10486=>732,\n10487=>732,10488=>732,10489=>732,10490=>732,10491=>732,10492=>732,10493=>732,10494=>732,10495=>732,10502=>838,\n10503=>838,10506=>838,10507=>838,10560=>683,10561=>683,10627=>734,10628=>734,10702=>838,10703=>1000,10704=>1000,\n10705=>1000,10706=>1000,10707=>1000,10708=>1000,10709=>1000,10731=>494,10746=>838,10747=>838,10752=>1000,10753=>1000,\n10754=>1000,10764=>1325,10765=>521,10766=>521,10767=>521,10768=>521,10769=>521,10770=>521,10771=>521,10772=>521,\n10773=>521,10774=>521,10775=>521,10776=>521,10777=>521,10778=>521,10779=>521,10780=>521,10799=>838,10877=>838,\n10878=>838,10879=>838,10880=>838,10881=>838,10882=>838,10883=>838,10884=>838,10885=>838,10886=>838,10887=>838,\n10888=>838,10889=>838,10890=>838,10891=>838,10892=>838,10893=>838,10894=>838,10895=>838,10896=>838,10897=>838,\n10898=>838,10899=>838,10900=>838,10901=>838,10902=>838,10903=>838,10904=>838,10905=>838,10906=>838,10907=>838,\n10908=>838,10909=>838,10910=>838,10911=>838,10912=>838,10926=>838,10927=>838,10928=>838,10929=>838,10930=>838,\n10931=>838,10932=>838,10933=>838,10934=>838,10935=>838,10936=>838,10937=>838,10938=>838,11001=>838,11002=>838,\n11008=>838,11009=>838,11010=>838,11011=>838,11012=>838,11013=>838,11014=>838,11015=>838,11016=>838,11017=>838,\n11018=>838,11019=>838,11020=>838,11021=>838,11022=>836,11023=>836,11024=>836,11025=>836,11026=>945,11027=>945,\n11028=>945,11029=>945,11030=>769,11031=>769,11032=>769,11033=>769,11034=>945,11039=>869,11040=>869,11041=>873,\n11042=>873,11043=>873,11044=>1119,11091=>869,11092=>869,11360=>557,11361=>278,11362=>557,11363=>603,11364=>695,\n11365=>613,11366=>392,11367=>752,11368=>634,11369=>656,11370=>579,11371=>685,11372=>525,11373=>781,11374=>863,\n11375=>684,11377=>734,11378=>1128,11379=>961,11380=>592,11381=>654,11382=>568,11383=>660,11385=>414,11386=>612,\n11387=>491,11388=>175,11389=>431,11800=>531,11810=>390,11811=>390,11812=>390,11813=>390,11822=>531,19904=>896,\n19905=>896,19906=>896,19907=>896,19908=>896,19909=>896,19910=>896,19911=>896,19912=>896,19913=>896,19914=>896,\n19915=>896,19916=>896,19917=>896,19918=>896,19919=>896,19920=>896,19921=>896,19922=>896,19923=>896,19924=>896,\n19925=>896,19926=>896,19927=>896,19928=>896,19929=>896,19930=>896,19931=>896,19932=>896,19933=>896,19934=>896,\n19935=>896,19936=>896,19937=>896,19938=>896,19939=>896,19940=>896,19941=>896,19942=>896,19943=>896,19944=>896,\n19945=>896,19946=>896,19947=>896,19948=>896,19949=>896,19950=>896,19951=>896,19952=>896,19953=>896,19954=>896,\n19955=>896,19956=>896,19957=>896,19958=>896,19959=>896,19960=>896,19961=>896,19962=>896,19963=>896,19964=>896,\n19965=>896,19966=>896,19967=>896,42564=>635,42565=>521,42566=>354,42567=>338,42572=>1180,42573=>1028,42576=>1029,\n42577=>906,42580=>1080,42581=>842,42582=>985,42583=>847,42594=>1024,42595=>925,42596=>1014,42597=>900,42598=>863,\n42599=>1008,42600=>787,42601=>612,42602=>855,42603=>712,42604=>1358,42605=>1019,42606=>879,42634=>805,42635=>722,\n42636=>611,42637=>583,42644=>686,42645=>634,42760=>493,42761=>493,42762=>493,42763=>493,42764=>493,42765=>493,\n42766=>493,42767=>493,42768=>493,42769=>493,42770=>493,42771=>493,42772=>493,42773=>493,42774=>493,42779=>369,\n42780=>369,42781=>252,42782=>252,42783=>252,42790=>752,42791=>634,42792=>878,42793=>709,42794=>614,42795=>541,\n42800=>491,42801=>521,42802=>1250,42803=>985,42804=>1219,42805=>1000,42806=>1155,42807=>996,42808=>971,42809=>818,\n42810=>971,42811=>818,42812=>959,42813=>818,42814=>698,42815=>549,42822=>680,42823=>392,42824=>582,42825=>427,\n42826=>807,42827=>704,42830=>1358,42831=>1019,42880=>557,42881=>278,42882=>735,42883=>634,42889=>337,42890=>376,\n42891=>401,42892=>275,43003=>575,43004=>603,43005=>863,43006=>295,43007=>1199,63173=>612,64256=>722,64257=>646,\n64258=>646,64259=>1000,64260=>1000,64261=>686,64262=>861,64275=>1202,64276=>1202,64277=>1196,64278=>1186,64279=>1529,\n64285=>272,64286=>0,64287=>471,64288=>636,64289=>856,64290=>774,64291=>906,64292=>771,64293=>843,64294=>855,\n64295=>807,64296=>875,64297=>838,64298=>808,64299=>808,64300=>808,64301=>808,64302=>629,64303=>629,64304=>629,\n64305=>608,64306=>448,64307=>594,64308=>640,64309=>272,64310=>374,64311=>1000,64312=>648,64313=>336,64314=>592,\n64315=>556,64316=>599,64318=>659,64320=>441,64321=>700,64323=>640,64324=>604,64326=>581,64327=>663,64328=>592,\n64329=>808,64330=>657,64331=>272,64332=>608,64333=>556,64334=>604,64335=>629,65024=>0,65025=>0,65026=>0,\n65027=>0,65028=>0,65029=>0,65030=>0,65031=>0,65032=>0,65033=>0,65034=>0,65035=>0,65036=>0,\n65037=>0,65038=>0,65039=>0,65056=>0,65057=>0,65058=>0,65059=>0,65529=>0,65530=>0,65531=>0,\n65532=>0,65533=>1025);\n$enc='';\n$diff='';\n$file='dejavusansi.z';\n$ctg='dejavusansi.ctg.z';\n$originalsize=523804;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavusansmono.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='DejaVuSansMono';\n$desc=array('Ascent'=>928,'Descent'=>-236,'CapHeight'=>9,'Flags'=>33,'FontBBox'=>'[-558 -375 718 1042]','ItalicAngle'=>0,'StemV'=>70,'MissingWidth'=>602);\n$up=-63;\n$ut=44;\n$dw=602;\n$cw=array(\n0=>602,32=>602,33=>602,34=>602,35=>602,36=>602,37=>602,38=>602,39=>602,40=>602,\n41=>602,42=>602,43=>602,44=>602,45=>602,46=>602,47=>602,48=>602,49=>602,50=>602,\n51=>602,52=>602,53=>602,54=>602,55=>602,56=>602,57=>602,58=>602,59=>602,60=>602,\n61=>602,62=>602,63=>602,64=>602,65=>602,66=>602,67=>602,68=>602,69=>602,70=>602,\n71=>602,72=>602,73=>602,74=>602,75=>602,76=>602,77=>602,78=>602,79=>602,80=>602,\n81=>602,82=>602,83=>602,84=>602,85=>602,86=>602,87=>602,88=>602,89=>602,90=>602,\n91=>602,92=>602,93=>602,94=>602,95=>602,96=>602,97=>602,98=>602,99=>602,100=>602,\n101=>602,102=>602,103=>602,104=>602,105=>602,106=>602,107=>602,108=>602,109=>602,110=>602,\n111=>602,112=>602,113=>602,114=>602,115=>602,116=>602,117=>602,118=>602,119=>602,120=>602,\n121=>602,122=>602,123=>602,124=>602,125=>602,126=>602,8364=>602,8218=>602,402=>602,8222=>602,\n8230=>602,8224=>602,8225=>602,710=>602,8240=>602,352=>602,8249=>602,338=>602,381=>602,8216=>602,\n8217=>602,8220=>602,8221=>602,8226=>602,8211=>602,8212=>602,732=>602,8482=>602,353=>602,8250=>602,\n339=>602,382=>602,376=>602,160=>602,161=>602,162=>602,163=>602,164=>602,165=>602,166=>602,\n167=>602,168=>602,169=>602,170=>602,171=>602,172=>602,173=>602,174=>602,175=>602,176=>602,\n177=>602,178=>602,179=>602,180=>602,181=>602,182=>602,183=>602,184=>602,185=>602,186=>602,\n187=>602,188=>602,189=>602,190=>602,191=>602,192=>602,193=>602,194=>602,195=>602,196=>602,\n197=>602,198=>602,199=>602,200=>602,201=>602,202=>602,203=>602,204=>602,205=>602,206=>602,\n207=>602,208=>602,209=>602,210=>602,211=>602,212=>602,213=>602,214=>602,215=>602,216=>602,\n217=>602,218=>602,219=>602,220=>602,221=>602,222=>602,223=>602,224=>602,225=>602,226=>602,\n227=>602,228=>602,229=>602,230=>602,231=>602,232=>602,233=>602,234=>602,235=>602,236=>602,\n237=>602,238=>602,239=>602,240=>602,241=>602,242=>602,243=>602,244=>602,245=>602,246=>602,\n247=>602,248=>602,249=>602,250=>602,251=>602,252=>602,253=>602,254=>602,255=>602,256=>602,\n257=>602,258=>602,259=>602,260=>602,261=>602,262=>602,263=>602,264=>602,265=>602,266=>602,\n267=>602,268=>602,269=>602,270=>602,271=>602,272=>602,273=>602,274=>602,275=>602,276=>602,\n277=>602,278=>602,279=>602,280=>602,281=>602,282=>602,283=>602,284=>602,285=>602,286=>602,\n287=>602,288=>602,289=>602,290=>602,291=>602,292=>602,293=>602,294=>602,295=>602,296=>602,\n297=>602,298=>602,299=>602,300=>602,301=>602,302=>602,303=>602,304=>602,305=>602,306=>602,\n307=>602,308=>602,309=>602,310=>602,311=>602,312=>602,313=>602,314=>602,315=>602,316=>602,\n317=>602,318=>602,319=>602,320=>602,321=>602,322=>602,323=>602,324=>602,325=>602,326=>602,\n327=>602,328=>602,329=>602,330=>602,331=>602,332=>602,333=>602,334=>602,335=>602,336=>602,\n337=>602,340=>602,341=>602,342=>602,343=>602,344=>602,345=>602,346=>602,347=>602,348=>602,\n349=>602,350=>602,351=>602,354=>602,355=>602,356=>602,357=>602,358=>602,359=>602,360=>602,\n361=>602,362=>602,363=>602,364=>602,365=>602,366=>602,367=>602,368=>602,369=>602,370=>602,\n371=>602,372=>602,373=>602,374=>602,375=>602,377=>602,378=>602,379=>602,380=>602,383=>602,\n384=>602,385=>602,386=>602,387=>602,388=>602,389=>602,390=>602,391=>602,392=>602,393=>602,\n394=>602,395=>602,396=>602,397=>602,398=>602,399=>602,400=>602,401=>602,403=>602,404=>602,\n405=>602,406=>602,407=>602,408=>602,409=>602,410=>602,411=>602,412=>602,413=>602,414=>602,\n415=>602,416=>602,417=>602,418=>602,419=>602,420=>602,421=>602,422=>602,423=>602,424=>602,\n425=>602,426=>602,427=>602,428=>602,429=>602,430=>602,431=>602,432=>602,433=>602,434=>602,\n435=>602,436=>602,437=>602,438=>602,439=>602,440=>602,441=>602,442=>602,443=>602,444=>602,\n445=>602,446=>602,447=>602,448=>602,449=>602,450=>602,451=>602,461=>602,462=>602,463=>602,\n464=>602,465=>602,466=>602,467=>602,468=>602,469=>602,470=>602,471=>602,472=>602,473=>602,\n474=>602,475=>602,476=>602,477=>602,478=>602,479=>602,480=>602,481=>602,482=>602,483=>602,\n486=>602,487=>602,488=>602,489=>602,490=>602,491=>602,492=>602,493=>602,494=>602,495=>602,\n496=>602,500=>602,501=>602,502=>602,504=>602,505=>602,508=>602,509=>602,510=>602,511=>602,\n512=>602,513=>602,514=>602,515=>602,516=>602,517=>602,518=>602,519=>602,520=>602,521=>602,\n522=>602,523=>602,524=>602,525=>602,526=>602,527=>602,528=>602,529=>602,530=>602,531=>602,\n532=>602,533=>602,534=>602,535=>602,536=>602,537=>602,538=>602,539=>602,540=>602,541=>602,\n542=>602,543=>602,544=>602,545=>602,548=>602,549=>602,550=>602,551=>602,552=>602,553=>602,\n554=>602,555=>602,556=>602,557=>602,558=>602,559=>602,560=>602,561=>602,562=>602,563=>602,\n564=>602,565=>602,566=>602,567=>602,568=>602,569=>602,570=>602,571=>602,572=>602,573=>602,\n574=>602,575=>602,576=>602,577=>602,580=>602,581=>602,588=>602,589=>602,592=>602,593=>602,\n594=>602,595=>602,596=>602,597=>602,598=>602,599=>602,600=>602,601=>602,602=>602,603=>602,\n604=>602,605=>602,606=>602,607=>602,608=>602,609=>602,610=>602,611=>602,612=>602,613=>602,\n614=>602,615=>602,616=>602,617=>602,618=>602,619=>602,620=>602,621=>602,622=>602,623=>602,\n624=>602,625=>602,626=>602,627=>602,628=>602,629=>602,630=>602,631=>602,632=>602,633=>602,\n634=>602,635=>602,636=>602,637=>602,638=>602,639=>602,640=>602,641=>602,642=>602,643=>602,\n644=>602,645=>602,646=>602,647=>602,648=>602,649=>602,650=>602,651=>602,652=>602,653=>602,\n654=>602,655=>602,656=>602,657=>602,658=>602,659=>602,660=>602,661=>602,662=>602,663=>602,\n664=>602,665=>602,666=>602,667=>602,668=>602,669=>602,670=>602,671=>602,672=>602,673=>602,\n674=>602,675=>602,676=>602,677=>602,678=>602,679=>602,680=>602,681=>602,682=>602,683=>602,\n684=>602,685=>602,686=>602,687=>602,688=>602,689=>602,690=>602,691=>602,692=>602,693=>602,\n694=>602,695=>602,696=>602,697=>602,699=>602,700=>602,701=>602,702=>602,703=>602,704=>602,\n705=>602,711=>602,712=>602,713=>602,716=>602,717=>602,720=>602,721=>602,722=>602,723=>602,\n726=>602,727=>602,728=>602,729=>602,730=>602,731=>602,733=>602,734=>602,736=>602,737=>602,\n738=>602,739=>602,740=>602,741=>602,742=>602,743=>602,744=>602,745=>602,750=>602,755=>602,\n768=>602,769=>602,770=>602,771=>602,772=>602,773=>602,774=>602,775=>602,776=>602,777=>602,\n778=>602,779=>602,780=>602,781=>602,782=>602,783=>602,784=>602,785=>602,786=>602,787=>602,\n788=>602,789=>602,790=>602,791=>602,792=>602,793=>602,794=>602,795=>602,796=>602,797=>602,\n798=>602,799=>602,800=>602,801=>602,802=>602,803=>602,804=>602,805=>602,806=>602,807=>602,\n808=>602,809=>602,810=>602,811=>602,812=>602,813=>602,814=>602,815=>602,816=>602,817=>602,\n818=>602,819=>602,820=>602,821=>602,822=>602,823=>602,824=>602,825=>602,826=>602,827=>602,\n828=>602,829=>602,830=>602,831=>602,835=>602,856=>602,865=>602,884=>602,885=>602,890=>602,\n894=>602,900=>602,901=>602,902=>602,903=>602,904=>602,905=>602,906=>602,908=>602,910=>602,\n911=>602,912=>602,913=>602,914=>602,915=>602,916=>602,917=>602,918=>602,919=>602,920=>602,\n921=>602,922=>602,923=>602,924=>602,925=>602,926=>602,927=>602,928=>602,929=>602,931=>602,\n932=>602,933=>602,934=>602,935=>602,936=>602,937=>602,938=>602,939=>602,940=>602,941=>602,\n942=>602,943=>602,944=>602,945=>602,946=>602,947=>602,948=>602,949=>602,950=>602,951=>602,\n952=>602,953=>602,954=>602,955=>602,956=>602,957=>602,958=>602,959=>602,960=>602,961=>602,\n962=>602,963=>602,964=>602,965=>602,966=>602,967=>602,968=>602,969=>602,970=>602,971=>602,\n972=>602,973=>602,974=>602,976=>602,977=>602,978=>602,979=>602,980=>602,981=>602,982=>602,\n983=>602,984=>602,985=>602,986=>602,987=>602,988=>602,989=>602,990=>602,991=>602,992=>602,\n993=>602,1008=>602,1009=>602,1010=>602,1011=>602,1012=>602,1013=>602,1014=>602,1015=>602,1016=>602,\n1017=>602,1018=>602,1019=>602,1020=>602,1021=>602,1022=>602,1023=>602,1024=>602,1025=>602,1026=>602,\n1027=>602,1028=>602,1029=>602,1030=>602,1031=>602,1032=>602,1033=>602,1034=>602,1035=>602,1036=>602,\n1037=>602,1038=>602,1039=>602,1040=>602,1041=>602,1042=>602,1043=>602,1044=>602,1045=>602,1046=>602,\n1047=>602,1048=>602,1049=>602,1050=>602,1051=>602,1052=>602,1053=>602,1054=>602,1055=>602,1056=>602,\n1057=>602,1058=>602,1059=>602,1060=>602,1061=>602,1062=>602,1063=>602,1064=>602,1065=>602,1066=>602,\n1067=>602,1068=>602,1069=>602,1070=>602,1071=>602,1072=>602,1073=>602,1074=>602,1075=>602,1076=>602,\n1077=>602,1078=>602,1079=>602,1080=>602,1081=>602,1082=>602,1083=>602,1084=>602,1085=>602,1086=>602,\n1087=>602,1088=>602,1089=>602,1090=>602,1091=>602,1092=>602,1093=>602,1094=>602,1095=>602,1096=>602,\n1097=>602,1098=>602,1099=>602,1100=>602,1101=>602,1102=>602,1103=>602,1104=>602,1105=>602,1106=>602,\n1107=>602,1108=>602,1109=>602,1110=>602,1111=>602,1112=>602,1113=>602,1114=>602,1115=>602,1116=>602,\n1117=>602,1118=>602,1119=>602,1122=>602,1123=>602,1138=>602,1139=>602,1168=>602,1169=>602,1170=>602,\n1171=>602,1172=>602,1173=>602,1174=>602,1175=>602,1176=>602,1177=>602,1178=>602,1179=>602,1186=>602,\n1187=>602,1194=>602,1195=>602,1196=>602,1197=>602,1198=>602,1199=>602,1200=>602,1201=>602,1202=>602,\n1203=>602,1210=>602,1211=>602,1216=>602,1217=>602,1218=>602,1219=>602,1220=>602,1223=>602,1224=>602,\n1227=>602,1228=>602,1231=>602,1232=>602,1233=>602,1234=>602,1235=>602,1236=>602,1237=>602,1238=>602,\n1239=>602,1240=>602,1241=>602,1242=>602,1243=>602,1244=>602,1245=>602,1246=>602,1247=>602,1248=>602,\n1249=>602,1250=>602,1251=>602,1252=>602,1253=>602,1254=>602,1255=>602,1256=>602,1257=>602,1258=>602,\n1259=>602,1260=>602,1261=>602,1262=>602,1263=>602,1264=>602,1265=>602,1266=>602,1267=>602,1268=>602,\n1269=>602,1270=>602,1271=>602,1272=>602,1273=>602,1296=>602,1297=>602,1306=>602,1307=>602,1308=>602,\n1309=>602,1542=>602,1543=>602,1545=>602,1546=>602,1548=>602,1557=>602,1563=>602,1567=>602,1569=>602,\n1570=>602,1571=>602,1572=>602,1573=>602,1574=>602,1575=>602,1576=>602,1577=>602,1578=>602,1579=>602,\n1580=>602,1581=>602,1582=>602,1583=>602,1584=>602,1585=>602,1586=>602,1587=>602,1588=>602,1589=>602,\n1590=>602,1591=>602,1592=>602,1593=>602,1594=>602,1600=>602,1601=>602,1602=>602,1603=>602,1604=>602,\n1605=>602,1606=>602,1607=>602,1608=>602,1609=>602,1610=>602,1611=>602,1612=>602,1613=>602,1614=>602,\n1615=>602,1616=>602,1617=>602,1618=>602,1619=>602,1620=>602,1621=>602,1626=>602,1632=>602,1633=>602,\n1634=>602,1635=>602,1636=>602,1637=>602,1638=>602,1639=>602,1640=>602,1641=>602,1642=>602,1643=>602,\n1644=>602,1645=>602,1652=>602,1657=>602,1658=>602,1659=>602,1662=>602,1663=>602,1664=>602,1667=>602,\n1668=>602,1670=>602,1671=>602,1681=>602,1688=>602,1700=>602,1705=>602,1711=>602,1726=>602,1740=>602,\n1776=>602,1777=>602,1778=>602,1779=>602,1780=>602,1781=>602,1782=>602,1783=>602,1784=>602,1785=>602,\n3713=>602,3714=>602,3716=>602,3719=>602,3720=>602,3722=>602,3725=>602,3732=>602,3733=>602,3734=>602,\n3735=>602,3737=>602,3738=>602,3739=>602,3740=>602,3741=>602,3742=>602,3743=>602,3745=>602,3746=>602,\n3747=>602,3749=>602,3751=>602,3754=>602,3755=>602,3757=>602,3758=>602,3759=>602,3760=>602,3761=>602,\n3762=>602,3763=>602,3764=>602,3765=>602,3766=>602,3767=>602,3768=>602,3769=>602,3771=>602,3772=>602,\n3784=>602,3785=>602,3786=>602,3787=>602,3788=>602,3789=>602,4304=>602,4305=>602,4306=>602,4307=>602,\n4308=>602,4309=>602,4310=>602,4311=>602,4312=>602,4313=>602,4314=>602,4315=>602,4316=>602,4317=>602,\n4318=>602,4319=>602,4320=>602,4321=>602,4322=>602,4323=>602,4324=>602,4325=>602,4326=>602,4327=>602,\n4328=>602,4329=>602,4330=>602,4331=>602,4332=>602,4333=>602,4334=>602,4335=>602,4336=>602,4337=>602,\n4338=>602,4339=>602,4340=>602,4341=>602,4342=>602,4343=>602,4344=>602,4345=>602,4346=>602,4347=>602,\n4348=>602,7426=>602,7432=>602,7433=>602,7444=>602,7446=>602,7447=>602,7453=>602,7454=>602,7455=>602,\n7468=>602,7469=>602,7470=>602,7472=>602,7473=>602,7474=>602,7475=>602,7476=>602,7477=>602,7478=>602,\n7479=>602,7480=>602,7481=>602,7482=>602,7483=>602,7484=>602,7486=>602,7487=>602,7488=>602,7489=>602,\n7490=>602,7491=>602,7492=>602,7493=>602,7494=>602,7495=>602,7496=>602,7497=>602,7498=>602,7499=>602,\n7500=>602,7501=>602,7502=>602,7503=>602,7504=>602,7505=>602,7506=>602,7507=>602,7508=>602,7509=>602,\n7510=>602,7511=>602,7512=>602,7513=>602,7514=>602,7515=>602,7522=>602,7523=>602,7524=>602,7525=>602,\n7543=>602,7544=>602,7547=>602,7557=>602,7579=>602,7580=>602,7581=>602,7582=>602,7583=>602,7584=>602,\n7585=>602,7586=>602,7587=>602,7588=>602,7589=>602,7590=>602,7591=>602,7592=>602,7593=>602,7594=>602,\n7595=>602,7596=>602,7597=>602,7598=>602,7599=>602,7600=>602,7601=>602,7602=>602,7603=>602,7604=>602,\n7605=>602,7606=>602,7607=>602,7609=>602,7610=>602,7611=>602,7612=>602,7613=>602,7614=>602,7615=>602,\n7680=>602,7681=>602,7682=>602,7683=>602,7684=>602,7685=>602,7686=>602,7687=>602,7688=>602,7689=>602,\n7690=>602,7691=>602,7692=>602,7693=>602,7694=>602,7695=>602,7696=>602,7697=>602,7698=>602,7699=>602,\n7704=>602,7705=>602,7706=>602,7707=>602,7708=>602,7709=>602,7710=>602,7711=>602,7712=>602,7713=>602,\n7714=>602,7715=>602,7716=>602,7717=>602,7718=>602,7719=>602,7720=>602,7721=>602,7722=>602,7723=>602,\n7724=>602,7725=>602,7728=>602,7729=>602,7730=>602,7731=>602,7732=>602,7733=>602,7734=>602,7735=>602,\n7736=>602,7737=>602,7738=>602,7739=>602,7740=>602,7741=>602,7742=>602,7743=>602,7744=>602,7745=>602,\n7746=>602,7747=>602,7748=>602,7749=>602,7750=>602,7751=>602,7752=>602,7753=>602,7754=>602,7755=>602,\n7756=>602,7757=>602,7764=>602,7765=>602,7766=>602,7767=>602,7768=>602,7769=>602,7770=>602,7771=>602,\n7772=>602,7773=>602,7774=>602,7775=>602,7776=>602,7777=>602,7778=>602,7779=>602,7784=>602,7785=>602,\n7786=>602,7787=>602,7788=>602,7789=>602,7790=>602,7791=>602,7792=>602,7793=>602,7794=>602,7795=>602,\n7796=>602,7797=>602,7798=>602,7799=>602,7800=>602,7801=>602,7804=>602,7805=>602,7806=>602,7807=>602,\n7808=>602,7809=>602,7810=>602,7811=>602,7812=>602,7813=>602,7814=>602,7815=>602,7816=>602,7817=>602,\n7818=>602,7819=>602,7820=>602,7821=>602,7822=>602,7823=>602,7824=>602,7825=>602,7826=>602,7827=>602,\n7828=>602,7829=>602,7830=>602,7831=>602,7832=>602,7833=>602,7835=>602,7839=>602,7840=>602,7841=>602,\n7852=>602,7853=>602,7856=>602,7857=>602,7862=>602,7863=>602,7864=>602,7865=>602,7868=>602,7869=>602,\n7878=>602,7879=>602,7882=>602,7883=>602,7884=>602,7885=>602,7896=>602,7897=>602,7898=>602,7899=>602,\n7900=>602,7901=>602,7904=>602,7905=>602,7906=>602,7907=>602,7908=>602,7909=>602,7912=>602,7913=>602,\n7914=>602,7915=>602,7918=>602,7919=>602,7920=>602,7921=>602,7922=>602,7923=>602,7924=>602,7925=>602,\n7928=>602,7929=>602,7936=>602,7937=>602,7938=>602,7939=>602,7940=>602,7941=>602,7942=>602,7943=>602,\n7944=>602,7945=>602,7946=>602,7947=>602,7948=>602,7949=>602,7950=>602,7951=>602,7952=>602,7953=>602,\n7954=>602,7955=>602,7956=>602,7957=>602,7960=>602,7961=>602,7962=>602,7963=>602,7964=>602,7965=>602,\n7968=>602,7969=>602,7970=>602,7971=>602,7972=>602,7973=>602,7974=>602,7975=>602,7976=>602,7977=>602,\n7978=>602,7979=>602,7980=>602,7981=>602,7982=>602,7983=>602,7984=>602,7985=>602,7986=>602,7987=>602,\n7988=>602,7989=>602,7990=>602,7991=>602,7992=>602,7993=>602,7994=>602,7995=>602,7996=>602,7997=>602,\n7998=>602,7999=>602,8000=>602,8001=>602,8002=>602,8003=>602,8004=>602,8005=>602,8008=>602,8009=>602,\n8010=>602,8011=>602,8012=>602,8013=>602,8016=>602,8017=>602,8018=>602,8019=>602,8020=>602,8021=>602,\n8022=>602,8023=>602,8025=>602,8027=>602,8029=>602,8031=>602,8032=>602,8033=>602,8034=>602,8035=>602,\n8036=>602,8037=>602,8038=>602,8039=>602,8040=>602,8041=>602,8042=>602,8043=>602,8044=>602,8045=>602,\n8046=>602,8047=>602,8048=>602,8049=>602,8050=>602,8051=>602,8052=>602,8053=>602,8054=>602,8055=>602,\n8056=>602,8057=>602,8058=>602,8059=>602,8060=>602,8061=>602,8064=>602,8065=>602,8066=>602,8067=>602,\n8068=>602,8069=>602,8070=>602,8071=>602,8072=>602,8073=>602,8074=>602,8075=>602,8076=>602,8077=>602,\n8078=>602,8079=>602,8080=>602,8081=>602,8082=>602,8083=>602,8084=>602,8085=>602,8086=>602,8087=>602,\n8088=>602,8089=>602,8090=>602,8091=>602,8092=>602,8093=>602,8094=>602,8095=>602,8096=>602,8097=>602,\n8098=>602,8099=>602,8100=>602,8101=>602,8102=>602,8103=>602,8104=>602,8105=>602,8106=>602,8107=>602,\n8108=>602,8109=>602,8110=>602,8111=>602,8112=>602,8113=>602,8114=>602,8115=>602,8116=>602,8118=>602,\n8119=>602,8120=>602,8121=>602,8122=>602,8123=>602,8124=>602,8125=>602,8126=>602,8127=>602,8128=>602,\n8129=>602,8130=>602,8131=>602,8132=>602,8134=>602,8135=>602,8136=>602,8137=>602,8138=>602,8139=>602,\n8140=>602,8141=>602,8142=>602,8143=>602,8144=>602,8145=>602,8146=>602,8147=>602,8150=>602,8151=>602,\n8152=>602,8153=>602,8154=>602,8155=>602,8157=>602,8158=>602,8159=>602,8160=>602,8161=>602,8162=>602,\n8163=>602,8164=>602,8165=>602,8166=>602,8167=>602,8168=>602,8169=>602,8170=>602,8171=>602,8172=>602,\n8173=>602,8174=>602,8175=>602,8178=>602,8179=>602,8180=>602,8182=>602,8183=>602,8184=>602,8185=>602,\n8186=>602,8187=>602,8188=>602,8189=>602,8190=>602,8192=>602,8193=>602,8194=>602,8195=>602,8196=>602,\n8197=>602,8198=>602,8199=>602,8200=>602,8201=>602,8202=>602,8208=>602,8209=>602,8210=>602,8213=>602,\n8215=>602,8219=>602,8223=>602,8227=>602,8239=>602,8241=>602,8242=>602,8243=>602,8244=>602,8245=>602,\n8246=>602,8247=>602,8252=>602,8253=>602,8254=>602,8261=>602,8262=>602,8263=>602,8264=>602,8265=>602,\n8287=>602,8304=>602,8305=>602,8308=>602,8309=>602,8310=>602,8311=>602,8312=>602,8313=>602,8314=>602,\n8315=>602,8316=>602,8317=>602,8318=>602,8319=>602,8320=>602,8321=>602,8322=>602,8323=>602,8324=>602,\n8325=>602,8326=>602,8327=>602,8328=>602,8329=>602,8330=>602,8331=>602,8332=>602,8333=>602,8334=>602,\n8336=>602,8337=>602,8338=>602,8339=>602,8340=>602,8352=>602,8353=>602,8354=>602,8355=>602,8356=>602,\n8357=>602,8358=>602,8359=>602,8360=>602,8361=>602,8362=>602,8363=>602,8365=>602,8366=>602,8367=>602,\n8368=>602,8369=>602,8370=>602,8371=>602,8372=>602,8373=>602,8450=>602,8453=>602,8461=>602,8462=>602,\n8463=>602,8469=>602,8470=>602,8471=>602,8473=>602,8474=>602,8477=>602,8484=>602,8486=>602,8490=>602,\n8491=>602,8494=>602,8531=>602,8532=>602,8533=>602,8534=>602,8535=>602,8536=>602,8537=>602,8538=>602,\n8539=>602,8540=>602,8541=>602,8542=>602,8543=>602,8592=>602,8593=>602,8594=>602,8595=>602,8596=>602,\n8597=>602,8598=>602,8599=>602,8600=>602,8601=>602,8602=>602,8603=>602,8604=>602,8605=>602,8606=>602,\n8607=>602,8608=>602,8609=>602,8610=>602,8611=>602,8612=>602,8613=>602,8614=>602,8615=>602,8616=>602,\n8617=>602,8618=>602,8619=>602,8620=>602,8621=>602,8622=>602,8623=>602,8624=>602,8625=>602,8626=>602,\n8627=>602,8628=>602,8629=>602,8630=>602,8631=>602,8632=>602,8633=>602,8634=>602,8635=>602,8636=>602,\n8637=>602,8638=>602,8639=>602,8640=>602,8641=>602,8642=>602,8643=>602,8644=>602,8645=>602,8646=>602,\n8647=>602,8648=>602,8649=>602,8650=>602,8651=>602,8652=>602,8653=>602,8654=>602,8655=>602,8656=>602,\n8657=>602,8658=>602,8659=>602,8660=>602,8661=>602,8662=>602,8663=>602,8664=>602,8665=>602,8666=>602,\n8667=>602,8668=>602,8669=>602,8670=>602,8671=>602,8672=>602,8673=>602,8674=>602,8675=>602,8676=>602,\n8677=>602,8678=>602,8679=>602,8680=>602,8681=>602,8682=>602,8683=>602,8684=>602,8685=>602,8686=>602,\n8687=>602,8688=>602,8689=>602,8690=>602,8691=>602,8692=>602,8693=>602,8694=>602,8695=>602,8696=>602,\n8697=>602,8698=>602,8699=>602,8700=>602,8701=>602,8702=>602,8703=>602,8704=>602,8705=>602,8706=>602,\n8707=>602,8708=>602,8709=>602,8710=>602,8711=>602,8712=>602,8713=>602,8714=>602,8715=>602,8716=>602,\n8717=>602,8719=>602,8721=>602,8722=>602,8723=>602,8725=>602,8727=>602,8728=>602,8729=>602,8730=>602,\n8731=>602,8732=>602,8733=>602,8734=>602,8735=>602,8736=>602,8743=>602,8744=>602,8745=>602,8746=>602,\n8747=>602,8748=>602,8749=>602,8760=>602,8761=>602,8762=>602,8763=>602,8764=>602,8765=>602,8769=>602,\n8770=>602,8771=>602,8772=>602,8773=>602,8774=>602,8775=>602,8776=>602,8777=>602,8778=>602,8779=>602,\n8780=>602,8781=>602,8782=>602,8783=>602,8784=>602,8785=>602,8786=>602,8787=>602,8788=>602,8789=>602,\n8790=>602,8791=>602,8792=>602,8793=>602,8794=>602,8795=>602,8796=>602,8797=>602,8798=>602,8799=>602,\n8800=>602,8801=>602,8802=>602,8803=>602,8804=>602,8805=>602,8806=>602,8807=>602,8808=>602,8809=>602,\n8813=>602,8814=>602,8815=>602,8816=>602,8817=>602,8818=>602,8819=>602,8820=>602,8821=>602,8822=>602,\n8823=>602,8824=>602,8825=>602,8826=>602,8827=>602,8828=>602,8829=>602,8830=>602,8831=>602,8832=>602,\n8833=>602,8834=>602,8835=>602,8836=>602,8837=>602,8838=>602,8839=>602,8840=>602,8841=>602,8842=>602,\n8843=>602,8847=>602,8848=>602,8849=>602,8850=>602,8853=>602,8854=>602,8855=>602,8856=>602,8857=>602,\n8858=>602,8859=>602,8860=>602,8861=>602,8862=>602,8863=>602,8864=>602,8865=>602,8901=>602,8902=>602,\n8909=>602,8922=>602,8923=>602,8924=>602,8925=>602,8926=>602,8927=>602,8928=>602,8929=>602,8930=>602,\n8931=>602,8932=>602,8933=>602,8934=>602,8935=>602,8936=>602,8937=>602,8943=>602,8960=>602,8961=>602,\n8962=>602,8963=>602,8964=>602,8965=>602,8966=>602,8968=>602,8969=>602,8970=>602,8971=>602,8972=>602,\n8973=>602,8974=>602,8975=>602,8976=>602,8977=>602,8978=>602,8979=>602,8980=>602,8981=>602,8984=>602,\n8985=>602,8988=>602,8989=>602,8990=>602,8991=>602,8992=>602,8993=>602,8997=>602,8998=>602,8999=>602,\n9000=>602,9003=>602,9013=>602,9015=>602,9016=>602,9017=>602,9018=>602,9019=>602,9020=>602,9021=>602,\n9022=>602,9025=>602,9026=>602,9027=>602,9028=>602,9031=>602,9032=>602,9033=>602,9035=>602,9036=>602,\n9037=>602,9040=>602,9042=>602,9043=>602,9044=>602,9047=>602,9048=>602,9049=>602,9050=>602,9051=>602,\n9052=>602,9054=>602,9055=>602,9056=>602,9059=>602,9060=>602,9061=>602,9064=>602,9065=>602,9067=>602,\n9068=>602,9069=>602,9070=>602,9071=>602,9072=>602,9075=>602,9076=>602,9077=>602,9078=>602,9079=>602,\n9080=>602,9081=>602,9082=>602,9085=>602,9088=>602,9089=>602,9090=>602,9091=>602,9096=>602,9097=>602,\n9098=>602,9099=>602,9109=>602,9115=>602,9116=>602,9117=>602,9118=>602,9119=>602,9120=>602,9121=>602,\n9122=>602,9123=>602,9124=>602,9125=>602,9126=>602,9127=>602,9128=>602,9129=>602,9130=>602,9131=>602,\n9132=>602,9133=>602,9134=>602,9166=>602,9167=>602,9251=>602,9472=>602,9473=>602,9474=>602,9475=>602,\n9476=>602,9477=>602,9478=>602,9479=>602,9480=>602,9481=>602,9482=>602,9483=>602,9484=>602,9485=>602,\n9486=>602,9487=>602,9488=>602,9489=>602,9490=>602,9491=>602,9492=>602,9493=>602,9494=>602,9495=>602,\n9496=>602,9497=>602,9498=>602,9499=>602,9500=>602,9501=>602,9502=>602,9503=>602,9504=>602,9505=>602,\n9506=>602,9507=>602,9508=>602,9509=>602,9510=>602,9511=>602,9512=>602,9513=>602,9514=>602,9515=>602,\n9516=>602,9517=>602,9518=>602,9519=>602,9520=>602,9521=>602,9522=>602,9523=>602,9524=>602,9525=>602,\n9526=>602,9527=>602,9528=>602,9529=>602,9530=>602,9531=>602,9532=>602,9533=>602,9534=>602,9535=>602,\n9536=>602,9537=>602,9538=>602,9539=>602,9540=>602,9541=>602,9542=>602,9543=>602,9544=>602,9545=>602,\n9546=>602,9547=>602,9548=>602,9549=>602,9550=>602,9551=>602,9552=>602,9553=>602,9554=>602,9555=>602,\n9556=>602,9557=>602,9558=>602,9559=>602,9560=>602,9561=>602,9562=>602,9563=>602,9564=>602,9565=>602,\n9566=>602,9567=>602,9568=>602,9569=>602,9570=>602,9571=>602,9572=>602,9573=>602,9574=>602,9575=>602,\n9576=>602,9577=>602,9578=>602,9579=>602,9580=>602,9581=>602,9582=>602,9583=>602,9584=>602,9585=>602,\n9586=>602,9587=>602,9588=>602,9589=>602,9590=>602,9591=>602,9592=>602,9593=>602,9594=>602,9595=>602,\n9596=>602,9597=>602,9598=>602,9599=>602,9600=>602,9601=>602,9602=>602,9603=>602,9604=>602,9605=>602,\n9606=>602,9607=>602,9608=>602,9609=>602,9610=>602,9611=>602,9612=>602,9613=>602,9614=>602,9615=>602,\n9616=>602,9617=>602,9618=>602,9619=>602,9620=>602,9621=>602,9622=>602,9623=>602,9624=>602,9625=>602,\n9626=>602,9627=>602,9628=>602,9629=>602,9630=>602,9631=>602,9632=>602,9633=>602,9634=>602,9635=>602,\n9636=>602,9637=>602,9638=>602,9639=>602,9640=>602,9641=>602,9642=>602,9643=>602,9644=>602,9645=>602,\n9646=>602,9647=>602,9648=>602,9649=>602,9650=>602,9651=>602,9652=>602,9653=>602,9654=>602,9655=>602,\n9656=>602,9657=>602,9658=>602,9659=>602,9660=>602,9661=>602,9662=>602,9663=>602,9664=>602,9665=>602,\n9666=>602,9667=>602,9668=>602,9669=>602,9670=>602,9671=>602,9672=>602,9673=>602,9674=>602,9675=>602,\n9676=>602,9677=>602,9678=>602,9679=>602,9680=>602,9681=>602,9682=>602,9683=>602,9684=>602,9685=>602,\n9686=>602,9687=>602,9688=>602,9689=>602,9690=>602,9691=>602,9692=>602,9693=>602,9694=>602,9695=>602,\n9696=>602,9697=>602,9698=>602,9699=>602,9700=>602,9701=>602,9702=>602,9703=>602,9704=>602,9705=>602,\n9706=>602,9707=>602,9708=>602,9709=>602,9710=>602,9711=>602,9712=>602,9713=>602,9714=>602,9715=>602,\n9716=>602,9717=>602,9718=>602,9719=>602,9720=>602,9721=>602,9722=>602,9723=>602,9724=>602,9725=>602,\n9726=>602,9727=>602,9728=>602,9729=>602,9730=>602,9731=>602,9732=>602,9733=>602,9734=>602,9735=>602,\n9736=>602,9737=>602,9738=>602,9739=>602,9740=>602,9741=>602,9742=>602,9743=>602,9744=>602,9745=>602,\n9746=>602,9747=>602,9748=>602,9749=>602,9750=>602,9751=>602,9752=>602,9753=>602,9754=>602,9755=>602,\n9756=>602,9757=>602,9758=>602,9759=>602,9760=>602,9761=>602,9762=>602,9763=>602,9764=>602,9765=>602,\n9766=>602,9767=>602,9768=>602,9769=>602,9770=>602,9771=>602,9772=>602,9773=>602,9774=>602,9775=>602,\n9784=>602,9785=>602,9786=>602,9787=>602,9788=>602,9789=>602,9790=>602,9791=>602,9792=>602,9793=>602,\n9794=>602,9795=>602,9796=>602,9797=>602,9798=>602,9799=>602,9800=>602,9801=>602,9802=>602,9803=>602,\n9804=>602,9805=>602,9806=>602,9807=>602,9808=>602,9809=>602,9810=>602,9811=>602,9812=>602,9813=>602,\n9814=>602,9815=>602,9816=>602,9817=>602,9818=>602,9819=>602,9820=>602,9821=>602,9822=>602,9823=>602,\n9824=>602,9825=>602,9826=>602,9827=>602,9828=>602,9829=>602,9830=>602,9831=>602,9832=>602,9833=>602,\n9834=>602,9835=>602,9836=>602,9837=>602,9838=>602,9839=>602,9840=>602,9841=>602,9842=>602,9843=>602,\n9844=>602,9845=>602,9846=>602,9847=>602,9848=>602,9849=>602,9850=>602,9851=>602,9852=>602,9853=>602,\n9854=>602,9855=>602,9856=>602,9857=>602,9858=>602,9859=>602,9860=>602,9861=>602,9862=>602,9863=>602,\n9864=>602,9865=>602,9866=>602,9867=>602,9872=>602,9873=>602,9874=>602,9875=>602,9876=>602,9877=>602,\n9878=>602,9879=>602,9880=>602,9881=>602,9882=>602,9883=>602,9884=>602,9888=>602,9889=>602,9904=>602,\n9905=>602,9985=>602,9986=>602,9987=>602,9988=>602,9990=>602,9991=>602,9992=>602,9993=>602,9996=>602,\n9997=>602,9998=>602,9999=>602,10000=>602,10001=>602,10002=>602,10003=>602,10004=>602,10005=>602,10006=>602,\n10007=>602,10008=>602,10009=>602,10010=>602,10011=>602,10012=>602,10013=>602,10014=>602,10015=>602,10016=>602,\n10017=>602,10018=>602,10019=>602,10020=>602,10021=>602,10022=>602,10023=>602,10025=>602,10026=>602,10027=>602,\n10028=>602,10029=>602,10030=>602,10031=>602,10032=>602,10033=>602,10034=>602,10035=>602,10036=>602,10037=>602,\n10038=>602,10039=>602,10040=>602,10041=>602,10042=>602,10043=>602,10044=>602,10045=>602,10046=>602,10047=>602,\n10048=>602,10049=>602,10050=>602,10051=>602,10052=>602,10053=>602,10054=>602,10055=>602,10056=>602,10057=>602,\n10058=>602,10059=>602,10061=>602,10063=>602,10064=>602,10065=>602,10066=>602,10070=>602,10072=>602,10073=>602,\n10074=>602,10075=>602,10076=>602,10077=>602,10078=>602,10081=>602,10082=>602,10083=>602,10084=>602,10085=>602,\n10086=>602,10087=>602,10088=>602,10089=>602,10090=>602,10091=>602,10092=>602,10093=>602,10094=>602,10095=>602,\n10096=>602,10097=>602,10098=>602,10099=>602,10100=>602,10101=>602,10132=>602,10136=>602,10137=>602,10138=>602,\n10139=>602,10140=>602,10141=>602,10142=>602,10143=>602,10144=>602,10145=>602,10146=>602,10147=>602,10148=>602,\n10149=>602,10150=>602,10151=>602,10152=>602,10153=>602,10154=>602,10155=>602,10156=>602,10157=>602,10158=>602,\n10159=>602,10161=>602,10162=>602,10163=>602,10164=>602,10165=>602,10166=>602,10167=>602,10168=>602,10169=>602,\n10170=>602,10171=>602,10172=>602,10173=>602,10174=>602,10181=>602,10182=>602,10208=>602,10216=>602,10217=>602,\n10731=>602,10746=>602,10747=>602,10799=>602,11026=>602,11027=>602,11028=>602,11029=>602,11030=>602,11031=>602,\n11032=>602,11033=>602,11034=>602,11364=>602,11374=>602,11375=>602,11381=>602,11382=>602,11383=>602,11385=>602,\n11386=>602,11388=>602,11389=>602,11800=>602,11810=>602,11811=>602,11812=>602,11813=>602,11822=>602,42760=>602,\n42761=>602,42762=>602,42763=>602,42764=>602,42765=>602,42766=>602,42767=>602,42768=>602,42769=>602,42770=>602,\n42771=>602,42772=>602,42773=>602,42774=>602,42779=>602,42780=>602,42781=>602,42782=>602,42783=>602,42790=>602,\n42791=>602,42889=>602,42890=>602,42891=>602,42892=>602,63173=>602,64257=>602,64258=>602,64338=>602,64339=>602,\n64340=>602,64341=>602,64342=>602,64343=>602,64344=>602,64345=>602,64346=>602,64347=>602,64348=>602,64349=>602,\n64350=>602,64351=>602,64352=>602,64353=>602,64354=>602,64355=>602,64356=>602,64357=>602,64358=>602,64359=>602,\n64360=>602,64361=>602,64362=>602,64363=>602,64364=>602,64365=>602,64366=>602,64367=>602,64368=>602,64369=>602,\n64370=>602,64371=>602,64372=>602,64373=>602,64374=>602,64375=>602,64376=>602,64377=>602,64378=>602,64379=>602,\n64380=>602,64381=>602,64382=>602,64383=>602,64384=>602,64385=>602,64394=>602,64395=>602,64396=>602,64397=>602,\n64398=>602,64399=>602,64400=>602,64401=>602,64402=>602,64403=>602,64404=>602,64405=>602,64414=>602,64415=>602,\n64426=>602,64427=>602,64428=>602,64429=>602,64488=>602,64489=>602,64508=>602,64509=>602,64510=>602,64511=>602,\n65136=>602,65137=>602,65138=>602,65139=>602,65140=>602,65142=>602,65143=>602,65144=>602,65145=>602,65146=>602,\n65147=>602,65148=>602,65149=>602,65150=>602,65151=>602,65152=>602,65153=>602,65154=>602,65155=>602,65156=>602,\n65157=>602,65158=>602,65159=>602,65160=>602,65161=>602,65162=>602,65163=>602,65164=>602,65165=>602,65166=>602,\n65167=>602,65168=>602,65169=>602,65170=>602,65171=>602,65172=>602,65173=>602,65174=>602,65175=>602,65176=>602,\n65177=>602,65178=>602,65179=>602,65180=>602,65181=>602,65182=>602,65183=>602,65184=>602,65185=>602,65186=>602,\n65187=>602,65188=>602,65189=>602,65190=>602,65191=>602,65192=>602,65193=>602,65194=>602,65195=>602,65196=>602,\n65197=>602,65198=>602,65199=>602,65200=>602,65201=>602,65202=>602,65203=>602,65204=>602,65205=>602,65206=>602,\n65207=>602,65208=>602,65209=>602,65210=>602,65211=>602,65212=>602,65213=>602,65214=>602,65215=>602,65216=>602,\n65217=>602,65218=>602,65219=>602,65220=>602,65221=>602,65222=>602,65223=>602,65224=>602,65225=>602,65226=>602,\n65227=>602,65228=>602,65229=>602,65230=>602,65231=>602,65232=>602,65233=>602,65234=>602,65235=>602,65236=>602,\n65237=>602,65238=>602,65239=>602,65240=>602,65241=>602,65242=>602,65243=>602,65244=>602,65245=>602,65246=>602,\n65247=>602,65248=>602,65249=>602,65250=>602,65251=>602,65252=>602,65253=>602,65254=>602,65255=>602,65256=>602,\n65257=>602,65258=>602,65259=>602,65260=>602,65261=>602,65262=>602,65263=>602,65264=>602,65265=>602,65266=>602,\n65267=>602,65268=>602,65269=>602,65270=>602,65271=>602,65272=>602,65273=>602,65274=>602,65275=>602,65276=>602,\n65279=>602,65529=>602,65530=>602,65531=>602,65532=>602,65533=>602);\n$enc='';\n$diff='';\n$file='dejavusansmono.z';\n$ctg='dejavusansmono.ctg.z';\n$originalsize=321524;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavusansmonob.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='DejaVuSansMono-Bold';\n$desc=array('Ascent'=>928,'Descent'=>-236,'CapHeight'=>13,'Flags'=>33,'FontBBox'=>'[-446 -394 731 1052]','ItalicAngle'=>0,'StemV'=>120,'MissingWidth'=>602);\n$up=-63;\n$ut=44;\n$dw=602;\n$cw=array(\n0=>602,32=>602,33=>602,34=>602,35=>602,36=>602,37=>602,38=>602,39=>602,40=>602,\n41=>602,42=>602,43=>602,44=>602,45=>602,46=>602,47=>602,48=>602,49=>602,50=>602,\n51=>602,52=>602,53=>602,54=>602,55=>602,56=>602,57=>602,58=>602,59=>602,60=>602,\n61=>602,62=>602,63=>602,64=>602,65=>602,66=>602,67=>602,68=>602,69=>602,70=>602,\n71=>602,72=>602,73=>602,74=>602,75=>602,76=>602,77=>602,78=>602,79=>602,80=>602,\n81=>602,82=>602,83=>602,84=>602,85=>602,86=>602,87=>602,88=>602,89=>602,90=>602,\n91=>602,92=>602,93=>602,94=>602,95=>602,96=>602,97=>602,98=>602,99=>602,100=>602,\n101=>602,102=>602,103=>602,104=>602,105=>602,106=>602,107=>602,108=>602,109=>602,110=>602,\n111=>602,112=>602,113=>602,114=>602,115=>602,116=>602,117=>602,118=>602,119=>602,120=>602,\n121=>602,122=>602,123=>602,124=>602,125=>602,126=>602,8364=>602,8218=>602,402=>602,8222=>602,\n8230=>602,8224=>602,8225=>602,710=>602,8240=>602,352=>602,8249=>602,338=>602,381=>602,8216=>602,\n8217=>602,8220=>602,8221=>602,8226=>602,8211=>602,8212=>602,732=>602,8482=>602,353=>602,8250=>602,\n339=>602,382=>602,376=>602,160=>602,161=>602,162=>602,163=>602,164=>602,165=>602,166=>602,\n167=>602,168=>602,169=>602,170=>602,171=>602,172=>602,173=>602,174=>602,175=>602,176=>602,\n177=>602,178=>602,179=>602,180=>602,181=>602,182=>602,183=>602,184=>602,185=>602,186=>602,\n187=>602,188=>602,189=>602,190=>602,191=>602,192=>602,193=>602,194=>602,195=>602,196=>602,\n197=>602,198=>602,199=>602,200=>602,201=>602,202=>602,203=>602,204=>602,205=>602,206=>602,\n207=>602,208=>602,209=>602,210=>602,211=>602,212=>602,213=>602,214=>602,215=>602,216=>602,\n217=>602,218=>602,219=>602,220=>602,221=>602,222=>602,223=>602,224=>602,225=>602,226=>602,\n227=>602,228=>602,229=>602,230=>602,231=>602,232=>602,233=>602,234=>602,235=>602,236=>602,\n237=>602,238=>602,239=>602,240=>602,241=>602,242=>602,243=>602,244=>602,245=>602,246=>602,\n247=>602,248=>602,249=>602,250=>602,251=>602,252=>602,253=>602,254=>602,255=>602,256=>602,\n257=>602,258=>602,259=>602,260=>602,261=>602,262=>602,263=>602,264=>602,265=>602,266=>602,\n267=>602,268=>602,269=>602,270=>602,271=>602,272=>602,273=>602,274=>602,275=>602,276=>602,\n277=>602,278=>602,279=>602,280=>602,281=>602,282=>602,283=>602,284=>602,285=>602,286=>602,\n287=>602,288=>602,289=>602,290=>602,291=>602,292=>602,293=>602,294=>602,295=>602,296=>602,\n297=>602,298=>602,299=>602,300=>602,301=>602,302=>602,303=>602,304=>602,305=>602,306=>602,\n307=>602,308=>602,309=>602,310=>602,311=>602,312=>602,313=>602,314=>602,315=>602,316=>602,\n317=>602,318=>602,319=>602,320=>602,321=>602,322=>602,323=>602,324=>602,325=>602,326=>602,\n327=>602,328=>602,329=>602,330=>602,331=>602,332=>602,333=>602,334=>602,335=>602,336=>602,\n337=>602,340=>602,341=>602,342=>602,343=>602,344=>602,345=>602,346=>602,347=>602,348=>602,\n349=>602,350=>602,351=>602,354=>602,355=>602,356=>602,357=>602,358=>602,359=>602,360=>602,\n361=>602,362=>602,363=>602,364=>602,365=>602,366=>602,367=>602,368=>602,369=>602,370=>602,\n371=>602,372=>602,373=>602,374=>602,375=>602,377=>602,378=>602,379=>602,380=>602,383=>602,\n384=>602,385=>602,386=>602,387=>602,388=>602,389=>602,390=>602,391=>602,392=>602,393=>602,\n394=>602,395=>602,396=>602,397=>602,398=>602,399=>602,400=>602,401=>602,403=>602,404=>602,\n405=>602,406=>602,407=>602,408=>602,409=>602,410=>602,411=>602,412=>602,413=>602,414=>602,\n415=>602,416=>602,417=>602,418=>602,419=>602,420=>602,421=>602,422=>602,423=>602,424=>602,\n425=>602,426=>602,427=>602,428=>602,429=>602,430=>602,431=>602,432=>602,433=>602,434=>602,\n435=>602,436=>602,437=>602,438=>602,439=>602,440=>602,441=>602,442=>602,443=>602,444=>602,\n445=>602,446=>602,447=>602,448=>602,449=>602,450=>602,451=>602,461=>602,462=>602,463=>602,\n464=>602,465=>602,466=>602,467=>602,468=>602,469=>602,470=>602,471=>602,472=>602,473=>602,\n474=>602,475=>602,476=>602,477=>602,478=>602,479=>602,480=>602,481=>602,482=>602,483=>602,\n486=>602,487=>602,488=>602,489=>602,490=>602,491=>602,492=>602,493=>602,494=>602,495=>602,\n496=>602,500=>602,501=>602,502=>602,504=>602,505=>602,508=>602,509=>602,510=>602,511=>602,\n512=>602,513=>602,514=>602,515=>602,516=>602,517=>602,518=>602,519=>602,520=>602,521=>602,\n522=>602,523=>602,524=>602,525=>602,526=>602,527=>602,528=>602,529=>602,530=>602,531=>602,\n532=>602,533=>602,534=>602,535=>602,536=>602,537=>602,538=>602,539=>602,540=>602,541=>602,\n542=>602,543=>602,544=>602,545=>602,548=>602,549=>602,550=>602,551=>602,552=>602,553=>602,\n554=>602,555=>602,556=>602,557=>602,558=>602,559=>602,560=>602,561=>602,562=>602,563=>602,\n564=>602,565=>602,566=>602,567=>602,568=>602,569=>602,570=>602,571=>602,572=>602,573=>602,\n574=>602,575=>602,576=>602,577=>602,580=>602,581=>602,588=>602,589=>602,592=>602,593=>602,\n594=>602,595=>602,596=>602,597=>602,598=>602,599=>602,600=>602,601=>602,602=>602,603=>602,\n604=>602,605=>602,606=>602,607=>602,608=>602,609=>602,610=>602,611=>602,612=>602,613=>602,\n614=>602,615=>602,616=>602,617=>602,618=>602,619=>602,620=>602,621=>602,622=>602,623=>602,\n624=>602,625=>602,626=>602,627=>602,628=>602,629=>602,630=>602,631=>602,632=>602,633=>602,\n634=>602,635=>602,636=>602,637=>602,638=>602,639=>602,640=>602,641=>602,642=>602,643=>602,\n644=>602,645=>602,646=>602,647=>602,648=>602,649=>602,650=>602,651=>602,652=>602,653=>602,\n654=>602,655=>602,656=>602,657=>602,658=>602,659=>602,660=>602,661=>602,662=>602,663=>602,\n664=>602,665=>602,666=>602,667=>602,668=>602,669=>602,670=>602,671=>602,672=>602,673=>602,\n674=>602,675=>602,676=>602,677=>602,678=>602,679=>602,680=>602,681=>602,682=>602,683=>602,\n684=>602,685=>602,686=>602,687=>602,688=>602,689=>602,690=>602,691=>602,692=>602,693=>602,\n694=>602,695=>602,696=>602,697=>602,699=>602,700=>602,701=>602,702=>602,703=>602,704=>602,\n705=>602,711=>602,712=>602,713=>602,716=>602,717=>602,720=>602,721=>602,722=>602,723=>602,\n726=>602,727=>602,728=>602,729=>602,730=>602,731=>602,733=>602,734=>602,736=>602,737=>602,\n738=>602,739=>602,740=>602,741=>602,742=>602,743=>602,744=>602,745=>602,750=>602,755=>602,\n768=>602,769=>602,770=>602,771=>602,772=>602,773=>602,774=>602,775=>602,776=>602,777=>602,\n778=>602,779=>602,780=>602,781=>602,782=>602,783=>602,784=>602,785=>602,786=>602,787=>602,\n788=>602,789=>602,790=>602,791=>602,792=>602,793=>602,794=>602,795=>602,796=>602,797=>602,\n798=>602,799=>602,800=>602,801=>602,802=>602,803=>602,804=>602,805=>602,806=>602,807=>602,\n808=>602,809=>602,810=>602,811=>602,812=>602,813=>602,814=>602,815=>602,816=>602,817=>602,\n818=>602,819=>602,820=>602,821=>602,822=>602,823=>602,824=>602,825=>602,826=>602,827=>602,\n828=>602,829=>602,830=>602,831=>602,835=>602,856=>602,865=>602,884=>602,885=>602,890=>602,\n894=>602,900=>602,901=>602,902=>602,903=>602,904=>602,905=>602,906=>602,908=>602,910=>602,\n911=>602,912=>602,913=>602,914=>602,915=>602,916=>602,917=>602,918=>602,919=>602,920=>602,\n921=>602,922=>602,923=>602,924=>602,925=>602,926=>602,927=>602,928=>602,929=>602,931=>602,\n932=>602,933=>602,934=>602,935=>602,936=>602,937=>602,938=>602,939=>602,940=>602,941=>602,\n942=>602,943=>602,944=>602,945=>602,946=>602,947=>602,948=>602,949=>602,950=>602,951=>602,\n952=>602,953=>602,954=>602,955=>602,956=>602,957=>602,958=>602,959=>602,960=>602,961=>602,\n962=>602,963=>602,964=>602,965=>602,966=>602,967=>602,968=>602,969=>602,970=>602,971=>602,\n972=>602,973=>602,974=>602,976=>602,977=>602,978=>602,979=>602,980=>602,981=>602,982=>602,\n983=>602,984=>602,985=>602,986=>602,987=>602,988=>602,989=>602,990=>602,991=>602,992=>602,\n993=>602,1008=>602,1009=>602,1010=>602,1011=>602,1012=>602,1013=>602,1014=>602,1015=>602,1016=>602,\n1017=>602,1018=>602,1019=>602,1020=>602,1021=>602,1022=>602,1023=>602,1024=>602,1025=>602,1026=>602,\n1027=>602,1028=>602,1029=>602,1030=>602,1031=>602,1032=>602,1033=>602,1034=>602,1035=>602,1036=>602,\n1037=>602,1038=>602,1039=>602,1040=>602,1041=>602,1042=>602,1043=>602,1044=>602,1045=>602,1046=>602,\n1047=>602,1048=>602,1049=>602,1050=>602,1051=>602,1052=>602,1053=>602,1054=>602,1055=>602,1056=>602,\n1057=>602,1058=>602,1059=>602,1060=>602,1061=>602,1062=>602,1063=>602,1064=>602,1065=>602,1066=>602,\n1067=>602,1068=>602,1069=>602,1070=>602,1071=>602,1072=>602,1073=>602,1074=>602,1075=>602,1076=>602,\n1077=>602,1078=>602,1079=>602,1080=>602,1081=>602,1082=>602,1083=>602,1084=>602,1085=>602,1086=>602,\n1087=>602,1088=>602,1089=>602,1090=>602,1091=>602,1092=>602,1093=>602,1094=>602,1095=>602,1096=>602,\n1097=>602,1098=>602,1099=>602,1100=>602,1101=>602,1102=>602,1103=>602,1104=>602,1105=>602,1106=>602,\n1107=>602,1108=>602,1109=>602,1110=>602,1111=>602,1112=>602,1113=>602,1114=>602,1115=>602,1116=>602,\n1117=>602,1118=>602,1119=>602,1122=>602,1123=>602,1138=>602,1139=>602,1168=>602,1169=>602,1170=>602,\n1171=>602,1172=>602,1173=>602,1174=>602,1175=>602,1176=>602,1177=>602,1178=>602,1179=>602,1186=>602,\n1187=>602,1194=>602,1195=>602,1196=>602,1197=>602,1198=>602,1199=>602,1200=>602,1201=>602,1202=>602,\n1203=>602,1210=>602,1211=>602,1216=>602,1217=>602,1218=>602,1219=>602,1220=>602,1223=>602,1224=>602,\n1227=>602,1228=>602,1231=>602,1232=>602,1233=>602,1234=>602,1235=>602,1236=>602,1237=>602,1238=>602,\n1239=>602,1240=>602,1241=>602,1242=>602,1243=>602,1244=>602,1245=>602,1246=>602,1247=>602,1248=>602,\n1249=>602,1250=>602,1251=>602,1252=>602,1253=>602,1254=>602,1255=>602,1256=>602,1257=>602,1258=>602,\n1259=>602,1260=>602,1261=>602,1262=>602,1263=>602,1264=>602,1265=>602,1266=>602,1267=>602,1268=>602,\n1269=>602,1270=>602,1271=>602,1272=>602,1273=>602,1296=>602,1297=>602,1306=>602,1307=>602,1308=>602,\n1309=>602,1542=>602,1543=>602,1545=>602,1546=>602,1548=>602,1557=>602,1563=>602,1567=>602,1569=>602,\n1570=>602,1571=>602,1572=>602,1573=>602,1574=>602,1575=>602,1576=>602,1577=>602,1578=>602,1579=>602,\n1580=>602,1581=>602,1582=>602,1583=>602,1584=>602,1585=>602,1586=>602,1587=>602,1588=>602,1589=>602,\n1590=>602,1591=>602,1592=>602,1593=>602,1594=>602,1600=>602,1601=>602,1602=>602,1603=>602,1604=>602,\n1605=>602,1606=>602,1607=>602,1608=>602,1609=>602,1610=>602,1611=>602,1612=>602,1613=>602,1614=>602,\n1615=>602,1616=>602,1617=>602,1618=>602,1619=>602,1620=>602,1621=>602,1626=>602,1632=>602,1633=>602,\n1634=>602,1635=>602,1636=>602,1637=>602,1638=>602,1639=>602,1640=>602,1641=>602,1642=>602,1643=>602,\n1644=>602,1645=>602,1652=>602,1657=>602,1658=>602,1659=>602,1662=>602,1663=>602,1664=>602,1667=>602,\n1668=>602,1670=>602,1671=>602,1681=>602,1688=>602,1700=>602,1705=>602,1711=>602,1726=>602,1740=>602,\n1776=>602,1777=>602,1778=>602,1779=>602,1780=>602,1781=>602,1782=>602,1783=>602,1784=>602,1785=>602,\n3713=>602,3714=>602,3716=>602,3719=>602,3720=>602,3722=>602,3725=>602,3732=>602,3733=>602,3734=>602,\n3735=>602,3737=>602,3738=>602,3739=>602,3740=>602,3741=>602,3742=>602,3743=>602,3745=>602,3746=>602,\n3747=>602,3749=>602,3751=>602,3754=>602,3755=>602,3757=>602,3758=>602,3759=>602,3760=>602,3761=>602,\n3762=>602,3763=>602,3764=>602,3765=>602,3766=>602,3767=>602,3768=>602,3769=>602,3771=>602,3772=>602,\n3784=>602,3785=>602,3786=>602,3787=>602,3788=>602,3789=>602,4304=>602,4305=>602,4306=>602,4307=>602,\n4308=>602,4309=>602,4310=>602,4311=>602,4312=>602,4313=>602,4314=>602,4315=>602,4316=>602,4317=>602,\n4318=>602,4319=>602,4320=>602,4321=>602,4322=>602,4323=>602,4324=>602,4325=>602,4326=>602,4327=>602,\n4328=>602,4329=>602,4330=>602,4331=>602,4332=>602,4333=>602,4334=>602,4335=>602,4336=>602,4337=>602,\n4338=>602,4339=>602,4340=>602,4341=>602,4342=>602,4343=>602,4344=>602,4345=>602,4346=>602,4347=>602,\n4348=>602,7426=>602,7432=>602,7433=>602,7444=>602,7446=>602,7447=>602,7453=>602,7454=>602,7455=>602,\n7468=>602,7469=>602,7470=>602,7472=>602,7473=>602,7474=>602,7475=>602,7476=>602,7477=>602,7478=>602,\n7479=>602,7480=>602,7481=>602,7482=>602,7483=>602,7484=>602,7486=>602,7487=>602,7488=>602,7489=>602,\n7490=>602,7491=>602,7492=>602,7493=>602,7494=>602,7495=>602,7496=>602,7497=>602,7498=>602,7499=>602,\n7500=>602,7501=>602,7502=>602,7503=>602,7504=>602,7505=>602,7506=>602,7507=>602,7508=>602,7509=>602,\n7510=>602,7511=>602,7512=>602,7513=>602,7514=>602,7515=>602,7522=>602,7523=>602,7524=>602,7525=>602,\n7543=>602,7544=>602,7547=>602,7557=>602,7579=>602,7580=>602,7581=>602,7582=>602,7583=>602,7584=>602,\n7585=>602,7586=>602,7587=>602,7588=>602,7589=>602,7590=>602,7591=>602,7592=>602,7593=>602,7594=>602,\n7595=>602,7596=>602,7597=>602,7598=>602,7599=>602,7600=>602,7601=>602,7602=>602,7603=>602,7604=>602,\n7605=>602,7606=>602,7607=>602,7609=>602,7610=>602,7611=>602,7612=>602,7613=>602,7614=>602,7615=>602,\n7680=>602,7681=>602,7682=>602,7683=>602,7684=>602,7685=>602,7686=>602,7687=>602,7688=>602,7689=>602,\n7690=>602,7691=>602,7692=>602,7693=>602,7694=>602,7695=>602,7696=>602,7697=>602,7698=>602,7699=>602,\n7704=>602,7705=>602,7706=>602,7707=>602,7708=>602,7709=>602,7710=>602,7711=>602,7712=>602,7713=>602,\n7714=>602,7715=>602,7716=>602,7717=>602,7718=>602,7719=>602,7720=>602,7721=>602,7722=>602,7723=>602,\n7724=>602,7725=>602,7728=>602,7729=>602,7730=>602,7731=>602,7732=>602,7733=>602,7734=>602,7735=>602,\n7736=>602,7737=>602,7738=>602,7739=>602,7740=>602,7741=>602,7742=>602,7743=>602,7744=>602,7745=>602,\n7746=>602,7747=>602,7748=>602,7749=>602,7750=>602,7751=>602,7752=>602,7753=>602,7754=>602,7755=>602,\n7756=>602,7757=>602,7764=>602,7765=>602,7766=>602,7767=>602,7768=>602,7769=>602,7770=>602,7771=>602,\n7772=>602,7773=>602,7774=>602,7775=>602,7776=>602,7777=>602,7778=>602,7779=>602,7784=>602,7785=>602,\n7786=>602,7787=>602,7788=>602,7789=>602,7790=>602,7791=>602,7792=>602,7793=>602,7794=>602,7795=>602,\n7796=>602,7797=>602,7798=>602,7799=>602,7800=>602,7801=>602,7804=>602,7805=>602,7806=>602,7807=>602,\n7808=>602,7809=>602,7810=>602,7811=>602,7812=>602,7813=>602,7814=>602,7815=>602,7816=>602,7817=>602,\n7818=>602,7819=>602,7820=>602,7821=>602,7822=>602,7823=>602,7824=>602,7825=>602,7826=>602,7827=>602,\n7828=>602,7829=>602,7830=>602,7831=>602,7832=>602,7833=>602,7835=>602,7839=>602,7840=>602,7841=>602,\n7852=>602,7853=>602,7856=>602,7857=>602,7862=>602,7863=>602,7864=>602,7865=>602,7868=>602,7869=>602,\n7878=>602,7879=>602,7882=>602,7883=>602,7884=>602,7885=>602,7896=>602,7897=>602,7898=>602,7899=>602,\n7900=>602,7901=>602,7904=>602,7905=>602,7906=>602,7907=>602,7908=>602,7909=>602,7912=>602,7913=>602,\n7914=>602,7915=>602,7918=>602,7919=>602,7920=>602,7921=>602,7922=>602,7923=>602,7924=>602,7925=>602,\n7928=>602,7929=>602,7936=>602,7937=>602,7938=>602,7939=>602,7940=>602,7941=>602,7942=>602,7943=>602,\n7944=>602,7945=>602,7946=>602,7947=>602,7948=>602,7949=>602,7950=>602,7951=>602,7952=>602,7953=>602,\n7954=>602,7955=>602,7956=>602,7957=>602,7960=>602,7961=>602,7962=>602,7963=>602,7964=>602,7965=>602,\n7968=>602,7969=>602,7970=>602,7971=>602,7972=>602,7973=>602,7974=>602,7975=>602,7976=>602,7977=>602,\n7978=>602,7979=>602,7980=>602,7981=>602,7982=>602,7983=>602,7984=>602,7985=>602,7986=>602,7987=>602,\n7988=>602,7989=>602,7990=>602,7991=>602,7992=>602,7993=>602,7994=>602,7995=>602,7996=>602,7997=>602,\n7998=>602,7999=>602,8000=>602,8001=>602,8002=>602,8003=>602,8004=>602,8005=>602,8008=>602,8009=>602,\n8010=>602,8011=>602,8012=>602,8013=>602,8016=>602,8017=>602,8018=>602,8019=>602,8020=>602,8021=>602,\n8022=>602,8023=>602,8025=>602,8027=>602,8029=>602,8031=>602,8032=>602,8033=>602,8034=>602,8035=>602,\n8036=>602,8037=>602,8038=>602,8039=>602,8040=>602,8041=>602,8042=>602,8043=>602,8044=>602,8045=>602,\n8046=>602,8047=>602,8048=>602,8049=>602,8050=>602,8051=>602,8052=>602,8053=>602,8054=>602,8055=>602,\n8056=>602,8057=>602,8058=>602,8059=>602,8060=>602,8061=>602,8064=>602,8065=>602,8066=>602,8067=>602,\n8068=>602,8069=>602,8070=>602,8071=>602,8072=>602,8073=>602,8074=>602,8075=>602,8076=>602,8077=>602,\n8078=>602,8079=>602,8080=>602,8081=>602,8082=>602,8083=>602,8084=>602,8085=>602,8086=>602,8087=>602,\n8088=>602,8089=>602,8090=>602,8091=>602,8092=>602,8093=>602,8094=>602,8095=>602,8096=>602,8097=>602,\n8098=>602,8099=>602,8100=>602,8101=>602,8102=>602,8103=>602,8104=>602,8105=>602,8106=>602,8107=>602,\n8108=>602,8109=>602,8110=>602,8111=>602,8112=>602,8113=>602,8114=>602,8115=>602,8116=>602,8118=>602,\n8119=>602,8120=>602,8121=>602,8122=>602,8123=>602,8124=>602,8125=>602,8126=>602,8127=>602,8128=>602,\n8129=>602,8130=>602,8131=>602,8132=>602,8134=>602,8135=>602,8136=>602,8137=>602,8138=>602,8139=>602,\n8140=>602,8141=>602,8142=>602,8143=>602,8144=>602,8145=>602,8146=>602,8147=>602,8150=>602,8151=>602,\n8152=>602,8153=>602,8154=>602,8155=>602,8157=>602,8158=>602,8159=>602,8160=>602,8161=>602,8162=>602,\n8163=>602,8164=>602,8165=>602,8166=>602,8167=>602,8168=>602,8169=>602,8170=>602,8171=>602,8172=>602,\n8173=>602,8174=>602,8175=>602,8178=>602,8179=>602,8180=>602,8182=>602,8183=>602,8184=>602,8185=>602,\n8186=>602,8187=>602,8188=>602,8189=>602,8190=>602,8192=>602,8193=>602,8194=>602,8195=>602,8196=>602,\n8197=>602,8198=>602,8199=>602,8200=>602,8201=>602,8202=>602,8208=>602,8209=>602,8210=>602,8213=>602,\n8215=>602,8219=>602,8223=>602,8227=>602,8239=>602,8241=>602,8242=>602,8243=>602,8244=>602,8245=>602,\n8246=>602,8247=>602,8252=>602,8253=>602,8254=>602,8261=>602,8262=>602,8263=>602,8264=>602,8265=>602,\n8287=>602,8304=>602,8305=>602,8308=>602,8309=>602,8310=>602,8311=>602,8312=>602,8313=>602,8314=>602,\n8315=>602,8316=>602,8317=>602,8318=>602,8319=>602,8320=>602,8321=>602,8322=>602,8323=>602,8324=>602,\n8325=>602,8326=>602,8327=>602,8328=>602,8329=>602,8330=>602,8331=>602,8332=>602,8333=>602,8334=>602,\n8336=>602,8337=>602,8338=>602,8339=>602,8340=>602,8352=>602,8353=>602,8354=>602,8355=>602,8356=>602,\n8357=>602,8358=>602,8359=>602,8360=>602,8361=>602,8362=>602,8363=>602,8365=>602,8366=>602,8367=>602,\n8368=>602,8369=>602,8370=>602,8371=>602,8372=>602,8373=>602,8450=>602,8453=>602,8461=>602,8462=>602,\n8463=>602,8469=>602,8470=>602,8471=>602,8473=>602,8474=>602,8477=>602,8484=>602,8486=>602,8490=>602,\n8491=>602,8494=>602,8531=>602,8532=>602,8533=>602,8534=>602,8535=>602,8536=>602,8537=>602,8538=>602,\n8539=>602,8540=>602,8541=>602,8542=>602,8543=>602,8592=>602,8593=>602,8594=>602,8595=>602,8596=>602,\n8597=>602,8598=>602,8599=>602,8600=>602,8601=>602,8602=>602,8603=>602,8604=>602,8605=>602,8606=>602,\n8607=>602,8608=>602,8609=>602,8610=>602,8611=>602,8612=>602,8613=>602,8614=>602,8615=>602,8616=>602,\n8617=>602,8618=>602,8619=>602,8620=>602,8621=>602,8622=>602,8623=>602,8624=>602,8625=>602,8626=>602,\n8627=>602,8628=>602,8629=>602,8630=>602,8631=>602,8632=>602,8633=>602,8634=>602,8635=>602,8636=>602,\n8637=>602,8638=>602,8639=>602,8640=>602,8641=>602,8642=>602,8643=>602,8644=>602,8645=>602,8646=>602,\n8647=>602,8648=>602,8649=>602,8650=>602,8651=>602,8652=>602,8653=>602,8654=>602,8655=>602,8656=>602,\n8657=>602,8658=>602,8659=>602,8660=>602,8661=>602,8662=>602,8663=>602,8664=>602,8665=>602,8666=>602,\n8667=>602,8668=>602,8669=>602,8670=>602,8671=>602,8672=>602,8673=>602,8674=>602,8675=>602,8676=>602,\n8677=>602,8678=>602,8679=>602,8680=>602,8681=>602,8682=>602,8683=>602,8684=>602,8685=>602,8686=>602,\n8687=>602,8688=>602,8689=>602,8690=>602,8691=>602,8692=>602,8693=>602,8694=>602,8695=>602,8696=>602,\n8697=>602,8698=>602,8699=>602,8700=>602,8701=>602,8702=>602,8703=>602,8704=>602,8705=>602,8706=>602,\n8707=>602,8708=>602,8709=>602,8710=>602,8711=>602,8712=>602,8713=>602,8714=>602,8715=>602,8716=>602,\n8717=>602,8719=>602,8721=>602,8722=>602,8723=>602,8725=>602,8727=>602,8728=>602,8729=>602,8730=>602,\n8731=>602,8732=>602,8733=>602,8734=>602,8735=>602,8736=>602,8743=>602,8744=>602,8745=>602,8746=>602,\n8747=>602,8748=>602,8749=>602,8760=>602,8761=>602,8762=>602,8763=>602,8764=>602,8765=>602,8769=>602,\n8770=>602,8771=>602,8772=>602,8773=>602,8774=>602,8775=>602,8776=>602,8777=>602,8778=>602,8779=>602,\n8780=>602,8781=>602,8782=>602,8783=>602,8784=>602,8785=>602,8786=>602,8787=>602,8788=>602,8789=>602,\n8790=>602,8791=>602,8792=>602,8793=>602,8794=>602,8795=>602,8796=>602,8797=>602,8798=>602,8799=>602,\n8800=>602,8801=>602,8802=>602,8803=>602,8804=>602,8805=>602,8806=>602,8807=>602,8808=>602,8809=>602,\n8813=>602,8814=>602,8815=>602,8816=>602,8817=>602,8818=>602,8819=>602,8820=>602,8821=>602,8822=>602,\n8823=>602,8824=>602,8825=>602,8826=>602,8827=>602,8828=>602,8829=>602,8830=>602,8831=>602,8832=>602,\n8833=>602,8834=>602,8835=>602,8836=>602,8837=>602,8838=>602,8839=>602,8840=>602,8841=>602,8842=>602,\n8843=>602,8847=>602,8848=>602,8849=>602,8850=>602,8853=>602,8854=>602,8855=>602,8856=>602,8857=>602,\n8858=>602,8859=>602,8860=>602,8861=>602,8862=>602,8863=>602,8864=>602,8865=>602,8901=>602,8902=>602,\n8909=>602,8922=>602,8923=>602,8924=>602,8925=>602,8926=>602,8927=>602,8928=>602,8929=>602,8930=>602,\n8931=>602,8932=>602,8933=>602,8934=>602,8935=>602,8936=>602,8937=>602,8943=>602,8960=>602,8961=>602,\n8962=>602,8963=>602,8964=>602,8965=>602,8966=>602,8968=>602,8969=>602,8970=>602,8971=>602,8972=>602,\n8973=>602,8974=>602,8975=>602,8976=>602,8977=>602,8978=>602,8979=>602,8980=>602,8981=>602,8984=>602,\n8985=>602,8988=>602,8989=>602,8990=>602,8991=>602,8992=>602,8993=>602,8997=>602,8998=>602,8999=>602,\n9000=>602,9003=>602,9013=>602,9015=>602,9016=>602,9017=>602,9018=>602,9019=>602,9020=>602,9021=>602,\n9022=>602,9025=>602,9026=>602,9027=>602,9028=>602,9031=>602,9032=>602,9033=>602,9035=>602,9036=>602,\n9037=>602,9040=>602,9042=>602,9043=>602,9044=>602,9047=>602,9048=>602,9049=>602,9050=>602,9051=>602,\n9052=>602,9054=>602,9055=>602,9056=>602,9059=>602,9060=>602,9061=>602,9064=>602,9065=>602,9067=>602,\n9068=>602,9069=>602,9070=>602,9071=>602,9072=>602,9075=>602,9076=>602,9077=>602,9078=>602,9079=>602,\n9080=>602,9081=>602,9082=>602,9085=>602,9088=>602,9089=>602,9090=>602,9091=>602,9096=>602,9097=>602,\n9098=>602,9099=>602,9109=>602,9115=>602,9116=>602,9117=>602,9118=>602,9119=>602,9120=>602,9121=>602,\n9122=>602,9123=>602,9124=>602,9125=>602,9126=>602,9127=>602,9128=>602,9129=>602,9130=>602,9131=>602,\n9132=>602,9133=>602,9134=>602,9166=>602,9167=>602,9251=>602,9600=>602,9601=>602,9602=>602,9603=>602,\n9604=>602,9605=>602,9606=>602,9607=>602,9608=>602,9609=>602,9610=>602,9611=>602,9612=>602,9613=>602,\n9614=>602,9615=>602,9616=>602,9617=>602,9618=>602,9619=>602,9620=>602,9621=>602,9622=>602,9623=>602,\n9624=>602,9625=>602,9626=>602,9627=>602,9628=>602,9629=>602,9630=>602,9631=>602,9632=>602,9633=>602,\n9634=>602,9635=>602,9636=>602,9637=>602,9638=>602,9639=>602,9640=>602,9641=>602,9642=>602,9643=>602,\n9644=>602,9645=>602,9646=>602,9647=>602,9648=>602,9649=>602,9650=>602,9651=>602,9652=>602,9653=>602,\n9654=>602,9655=>602,9656=>602,9657=>602,9658=>602,9659=>602,9660=>602,9661=>602,9662=>602,9663=>602,\n9664=>602,9665=>602,9666=>602,9667=>602,9668=>602,9669=>602,9670=>602,9671=>602,9672=>602,9673=>602,\n9674=>602,9675=>602,9676=>602,9677=>602,9678=>602,9679=>602,9680=>602,9681=>602,9682=>602,9683=>602,\n9684=>602,9685=>602,9686=>602,9687=>602,9688=>602,9689=>602,9690=>602,9691=>602,9692=>602,9693=>602,\n9694=>602,9695=>602,9696=>602,9697=>602,9698=>602,9699=>602,9700=>602,9701=>602,9702=>602,9703=>602,\n9704=>602,9705=>602,9706=>602,9707=>602,9708=>602,9709=>602,9710=>602,9711=>602,9712=>602,9713=>602,\n9714=>602,9715=>602,9716=>602,9717=>602,9718=>602,9719=>602,9720=>602,9721=>602,9722=>602,9723=>602,\n9724=>602,9725=>602,9726=>602,9727=>602,9728=>602,9729=>602,9730=>602,9731=>602,9732=>602,9733=>602,\n9734=>602,9735=>602,9736=>602,9737=>602,9738=>602,9739=>602,9740=>602,9741=>602,9742=>602,9743=>602,\n9744=>602,9745=>602,9746=>602,9747=>602,9748=>602,9749=>602,9750=>602,9751=>602,9752=>602,9753=>602,\n9754=>602,9755=>602,9756=>602,9757=>602,9758=>602,9759=>602,9760=>602,9761=>602,9762=>602,9763=>602,\n9764=>602,9765=>602,9766=>602,9767=>602,9768=>602,9769=>602,9770=>602,9771=>602,9772=>602,9773=>602,\n9774=>602,9775=>602,9784=>602,9785=>602,9786=>602,9787=>602,9788=>602,9789=>602,9790=>602,9791=>602,\n9792=>602,9793=>602,9794=>602,9795=>602,9796=>602,9797=>602,9798=>602,9799=>602,9800=>602,9801=>602,\n9802=>602,9803=>602,9804=>602,9805=>602,9806=>602,9807=>602,9808=>602,9809=>602,9810=>602,9811=>602,\n9812=>602,9813=>602,9814=>602,9815=>602,9816=>602,9817=>602,9818=>602,9819=>602,9820=>602,9821=>602,\n9822=>602,9823=>602,9824=>602,9825=>602,9826=>602,9827=>602,9828=>602,9829=>602,9830=>602,9831=>602,\n9832=>602,9833=>602,9834=>602,9835=>602,9836=>602,9837=>602,9838=>602,9839=>602,9840=>602,9841=>602,\n9842=>602,9843=>602,9844=>602,9845=>602,9846=>602,9847=>602,9848=>602,9849=>602,9850=>602,9851=>602,\n9852=>602,9853=>602,9854=>602,9855=>602,9856=>602,9857=>602,9858=>602,9859=>602,9860=>602,9861=>602,\n9862=>602,9863=>602,9864=>602,9865=>602,9866=>602,9867=>602,9872=>602,9873=>602,9874=>602,9875=>602,\n9876=>602,9877=>602,9878=>602,9879=>602,9880=>602,9881=>602,9882=>602,9883=>602,9884=>602,9888=>602,\n9889=>602,9904=>602,9905=>602,9985=>602,9986=>602,9987=>602,9988=>602,9990=>602,9991=>602,9992=>602,\n9993=>602,9996=>602,9997=>602,9998=>602,9999=>602,10000=>602,10001=>602,10002=>602,10003=>602,10004=>602,\n10005=>602,10006=>602,10007=>602,10008=>602,10009=>602,10010=>602,10011=>602,10012=>602,10013=>602,10014=>602,\n10015=>602,10016=>602,10017=>602,10018=>602,10019=>602,10020=>602,10021=>602,10022=>602,10023=>602,10025=>602,\n10026=>602,10027=>602,10028=>602,10029=>602,10030=>602,10031=>602,10032=>602,10033=>602,10034=>602,10035=>602,\n10036=>602,10037=>602,10038=>602,10039=>602,10040=>602,10041=>602,10042=>602,10043=>602,10044=>602,10045=>602,\n10046=>602,10047=>602,10048=>602,10049=>602,10050=>602,10051=>602,10052=>602,10053=>602,10054=>602,10055=>602,\n10056=>602,10057=>602,10058=>602,10059=>602,10061=>602,10063=>602,10064=>602,10065=>602,10066=>602,10070=>602,\n10072=>602,10073=>602,10074=>602,10075=>602,10076=>602,10077=>602,10078=>602,10081=>602,10082=>602,10083=>602,\n10084=>602,10085=>602,10086=>602,10087=>602,10088=>602,10089=>602,10090=>602,10091=>602,10092=>602,10093=>602,\n10094=>602,10095=>602,10096=>602,10097=>602,10098=>602,10099=>602,10100=>602,10101=>602,10132=>602,10136=>602,\n10137=>602,10138=>602,10139=>602,10140=>602,10141=>602,10142=>602,10143=>602,10144=>602,10145=>602,10146=>602,\n10147=>602,10148=>602,10149=>602,10150=>602,10151=>602,10152=>602,10153=>602,10154=>602,10155=>602,10156=>602,\n10157=>602,10158=>602,10159=>602,10161=>602,10162=>602,10163=>602,10164=>602,10165=>602,10166=>602,10167=>602,\n10168=>602,10169=>602,10170=>602,10171=>602,10172=>602,10173=>602,10174=>602,10175=>602,10181=>602,10182=>602,\n10208=>602,10216=>602,10217=>602,10731=>602,10746=>602,10747=>602,10799=>602,11026=>602,11027=>602,11028=>602,\n11029=>602,11030=>602,11031=>602,11032=>602,11033=>602,11034=>602,11364=>602,11374=>602,11375=>602,11381=>602,\n11382=>602,11383=>602,11385=>602,11386=>602,11388=>602,11389=>602,11800=>602,11810=>602,11811=>602,11812=>602,\n11813=>602,11822=>602,42760=>602,42761=>602,42762=>602,42763=>602,42764=>602,42765=>602,42766=>602,42767=>602,\n42768=>602,42769=>602,42770=>602,42771=>602,42772=>602,42773=>602,42774=>602,42779=>602,42780=>602,42781=>602,\n42782=>602,42783=>602,42790=>602,42791=>602,42889=>602,42890=>602,42891=>602,42892=>602,63173=>602,64257=>602,\n64258=>602,64338=>602,64339=>602,64340=>602,64341=>602,64342=>602,64343=>602,64344=>602,64345=>602,64346=>602,\n64347=>602,64348=>602,64349=>602,64350=>602,64351=>602,64352=>602,64353=>602,64354=>602,64355=>602,64356=>602,\n64357=>602,64358=>602,64359=>602,64360=>602,64361=>602,64362=>602,64363=>602,64364=>602,64365=>602,64366=>602,\n64367=>602,64368=>602,64369=>602,64370=>602,64371=>602,64372=>602,64373=>602,64374=>602,64375=>602,64376=>602,\n64377=>602,64378=>602,64379=>602,64380=>602,64381=>602,64382=>602,64383=>602,64384=>602,64385=>602,64394=>602,\n64395=>602,64396=>602,64397=>602,64398=>602,64399=>602,64400=>602,64401=>602,64402=>602,64403=>602,64404=>602,\n64405=>602,64414=>602,64415=>602,64426=>602,64427=>602,64428=>602,64429=>602,64488=>602,64489=>602,64508=>602,\n64509=>602,64510=>602,64511=>602,65136=>602,65137=>602,65138=>602,65139=>602,65140=>602,65142=>602,65143=>602,\n65144=>602,65145=>602,65146=>602,65147=>602,65148=>602,65149=>602,65150=>602,65151=>602,65152=>602,65153=>602,\n65154=>602,65155=>602,65156=>602,65157=>602,65158=>602,65159=>602,65160=>602,65161=>602,65162=>602,65163=>602,\n65164=>602,65165=>602,65166=>602,65167=>602,65168=>602,65169=>602,65170=>602,65171=>602,65172=>602,65173=>602,\n65174=>602,65175=>602,65176=>602,65177=>602,65178=>602,65179=>602,65180=>602,65181=>602,65182=>602,65183=>602,\n65184=>602,65185=>602,65186=>602,65187=>602,65188=>602,65189=>602,65190=>602,65191=>602,65192=>602,65193=>602,\n65194=>602,65195=>602,65196=>602,65197=>602,65198=>602,65199=>602,65200=>602,65201=>602,65202=>602,65203=>602,\n65204=>602,65205=>602,65206=>602,65207=>602,65208=>602,65209=>602,65210=>602,65211=>602,65212=>602,65213=>602,\n65214=>602,65215=>602,65216=>602,65217=>602,65218=>602,65219=>602,65220=>602,65221=>602,65222=>602,65223=>602,\n65224=>602,65225=>602,65226=>602,65227=>602,65228=>602,65229=>602,65230=>602,65231=>602,65232=>602,65233=>602,\n65234=>602,65235=>602,65236=>602,65237=>602,65238=>602,65239=>602,65240=>602,65241=>602,65242=>602,65243=>602,\n65244=>602,65245=>602,65246=>602,65247=>602,65248=>602,65249=>602,65250=>602,65251=>602,65252=>602,65253=>602,\n65254=>602,65255=>602,65256=>602,65257=>602,65258=>602,65259=>602,65260=>602,65261=>602,65262=>602,65263=>602,\n65264=>602,65265=>602,65266=>602,65267=>602,65268=>602,65269=>602,65270=>602,65271=>602,65272=>602,65273=>602,\n65274=>602,65275=>602,65276=>602,65279=>602,65529=>602,65530=>602,65531=>602,65532=>602,65533=>602);\n$enc='';\n$diff='';\n$file='dejavusansmonob.z';\n$ctg='dejavusansmonob.ctg.z';\n$originalsize=301928;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavusansmonobi.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='DejaVuSansMono-BoldOblique';\n$desc=array('Ascent'=>928,'Descent'=>-236,'CapHeight'=>-70,'Flags'=>97,'FontBBox'=>'[-428 -394 808 1053]','ItalicAngle'=>-11,'StemV'=>120,'MissingWidth'=>602);\n$up=-63;\n$ut=44;\n$dw=602;\n$cw=array(\n0=>602,32=>602,33=>602,34=>602,35=>602,36=>602,37=>602,38=>602,39=>602,40=>602,\n41=>602,42=>602,43=>602,44=>602,45=>602,46=>602,47=>602,48=>602,49=>602,50=>602,\n51=>602,52=>602,53=>602,54=>602,55=>602,56=>602,57=>602,58=>602,59=>602,60=>602,\n61=>602,62=>602,63=>602,64=>602,65=>602,66=>602,67=>602,68=>602,69=>602,70=>602,\n71=>602,72=>602,73=>602,74=>602,75=>602,76=>602,77=>602,78=>602,79=>602,80=>602,\n81=>602,82=>602,83=>602,84=>602,85=>602,86=>602,87=>602,88=>602,89=>602,90=>602,\n91=>602,92=>602,93=>602,94=>602,95=>602,96=>602,97=>602,98=>602,99=>602,100=>602,\n101=>602,102=>602,103=>602,104=>602,105=>602,106=>602,107=>602,108=>602,109=>602,110=>602,\n111=>602,112=>602,113=>602,114=>602,115=>602,116=>602,117=>602,118=>602,119=>602,120=>602,\n121=>602,122=>602,123=>602,124=>602,125=>602,126=>602,8364=>602,8218=>602,402=>602,8222=>602,\n8230=>602,8224=>602,8225=>602,710=>602,8240=>602,352=>602,8249=>602,338=>602,381=>602,8216=>602,\n8217=>602,8220=>602,8221=>602,8226=>602,8211=>602,8212=>602,732=>602,8482=>602,353=>602,8250=>602,\n339=>602,382=>602,376=>602,160=>602,161=>602,162=>602,163=>602,164=>602,165=>602,166=>602,\n167=>602,168=>602,169=>602,170=>602,171=>602,172=>602,173=>602,174=>602,175=>602,176=>602,\n177=>602,178=>602,179=>602,180=>602,181=>602,182=>602,183=>602,184=>602,185=>602,186=>602,\n187=>602,188=>602,189=>602,190=>602,191=>602,192=>602,193=>602,194=>602,195=>602,196=>602,\n197=>602,198=>602,199=>602,200=>602,201=>602,202=>602,203=>602,204=>602,205=>602,206=>602,\n207=>602,208=>602,209=>602,210=>602,211=>602,212=>602,213=>602,214=>602,215=>602,216=>602,\n217=>602,218=>602,219=>602,220=>602,221=>602,222=>602,223=>602,224=>602,225=>602,226=>602,\n227=>602,228=>602,229=>602,230=>602,231=>602,232=>602,233=>602,234=>602,235=>602,236=>602,\n237=>602,238=>602,239=>602,240=>602,241=>602,242=>602,243=>602,244=>602,245=>602,246=>602,\n247=>602,248=>602,249=>602,250=>602,251=>602,252=>602,253=>602,254=>602,255=>602,256=>602,\n257=>602,258=>602,259=>602,260=>602,261=>602,262=>602,263=>602,264=>602,265=>602,266=>602,\n267=>602,268=>602,269=>602,270=>602,271=>602,272=>602,273=>602,274=>602,275=>602,276=>602,\n277=>602,278=>602,279=>602,280=>602,281=>602,282=>602,283=>602,284=>602,285=>602,286=>602,\n287=>602,288=>602,289=>602,290=>602,291=>602,292=>602,293=>602,294=>602,295=>602,296=>602,\n297=>602,298=>602,299=>602,300=>602,301=>602,302=>602,303=>602,304=>602,305=>602,306=>602,\n307=>602,308=>602,309=>602,310=>602,311=>602,312=>602,313=>602,314=>602,315=>602,316=>602,\n317=>602,318=>602,319=>602,320=>602,321=>602,322=>602,323=>602,324=>602,325=>602,326=>602,\n327=>602,328=>602,329=>602,330=>602,331=>602,332=>602,333=>602,334=>602,335=>602,336=>602,\n337=>602,340=>602,341=>602,342=>602,343=>602,344=>602,345=>602,346=>602,347=>602,348=>602,\n349=>602,350=>602,351=>602,354=>602,355=>602,356=>602,357=>602,358=>602,359=>602,360=>602,\n361=>602,362=>602,363=>602,364=>602,365=>602,366=>602,367=>602,368=>602,369=>602,370=>602,\n371=>602,372=>602,373=>602,374=>602,375=>602,377=>602,378=>602,379=>602,380=>602,383=>602,\n384=>602,385=>602,386=>602,387=>602,388=>602,389=>602,390=>602,391=>602,392=>602,393=>602,\n394=>602,395=>602,396=>602,397=>602,398=>602,399=>602,400=>602,401=>602,403=>602,404=>602,\n405=>602,406=>602,407=>602,408=>602,409=>602,410=>602,411=>602,412=>602,413=>602,414=>602,\n415=>602,416=>602,417=>602,418=>602,419=>602,420=>602,421=>602,422=>602,423=>602,424=>602,\n425=>602,426=>602,427=>602,428=>602,429=>602,430=>602,431=>602,432=>602,433=>602,434=>602,\n435=>602,436=>602,437=>602,438=>602,439=>602,440=>602,441=>602,442=>602,443=>602,444=>602,\n445=>602,446=>602,447=>602,448=>602,449=>602,450=>602,451=>602,461=>602,462=>602,463=>602,\n464=>602,465=>602,466=>602,467=>602,468=>602,469=>602,470=>602,471=>602,472=>602,473=>602,\n474=>602,475=>602,476=>602,477=>602,478=>602,479=>602,480=>602,481=>602,482=>602,483=>602,\n486=>602,487=>602,488=>602,489=>602,490=>602,491=>602,492=>602,493=>602,494=>602,495=>602,\n500=>602,501=>602,502=>602,504=>602,505=>602,508=>602,509=>602,510=>602,511=>602,512=>602,\n513=>602,514=>602,515=>602,516=>602,517=>602,518=>602,519=>602,520=>602,521=>602,522=>602,\n523=>602,524=>602,525=>602,526=>602,527=>602,528=>602,529=>602,530=>602,531=>602,532=>602,\n533=>602,534=>602,535=>602,536=>602,537=>602,538=>602,539=>602,540=>602,541=>602,542=>602,\n543=>602,545=>602,548=>602,549=>602,550=>602,551=>602,552=>602,553=>602,554=>602,555=>602,\n556=>602,557=>602,558=>602,559=>602,560=>602,561=>602,562=>602,563=>602,564=>602,565=>602,\n566=>602,567=>602,568=>602,569=>602,570=>602,571=>602,572=>602,573=>602,574=>602,575=>602,\n576=>602,577=>602,580=>602,581=>602,588=>602,589=>602,592=>602,593=>602,594=>602,595=>602,\n596=>602,597=>602,598=>602,599=>602,600=>602,601=>602,602=>602,603=>602,604=>602,605=>602,\n606=>602,607=>602,608=>602,609=>602,610=>602,611=>602,612=>602,613=>602,614=>602,615=>602,\n616=>602,617=>602,618=>602,619=>602,620=>602,621=>602,622=>602,623=>602,624=>602,625=>602,\n626=>602,627=>602,628=>602,629=>602,630=>602,631=>602,632=>602,633=>602,634=>602,635=>602,\n636=>602,637=>602,638=>602,639=>602,640=>602,641=>602,642=>602,643=>602,644=>602,645=>602,\n646=>602,647=>602,648=>602,649=>602,650=>602,651=>602,652=>602,653=>602,654=>602,655=>602,\n656=>602,657=>602,658=>602,659=>602,660=>602,661=>602,662=>602,663=>602,664=>602,665=>602,\n666=>602,667=>602,668=>602,669=>602,670=>602,671=>602,672=>602,673=>602,674=>602,675=>602,\n676=>602,677=>602,678=>602,679=>602,680=>602,681=>602,682=>602,683=>602,684=>602,685=>602,\n686=>602,687=>602,688=>602,689=>602,690=>602,691=>602,692=>602,693=>602,694=>602,695=>602,\n696=>602,697=>602,699=>602,700=>602,701=>602,702=>602,703=>602,704=>602,705=>602,711=>602,\n712=>602,713=>602,716=>602,717=>602,720=>602,721=>602,722=>602,723=>602,726=>602,727=>602,\n728=>602,729=>602,730=>602,731=>602,733=>602,734=>602,736=>602,737=>602,738=>602,739=>602,\n740=>602,741=>602,742=>602,743=>602,744=>602,745=>602,750=>602,755=>602,768=>602,769=>602,\n770=>602,771=>602,772=>602,773=>602,774=>602,775=>602,776=>602,777=>602,778=>602,779=>602,\n780=>602,781=>602,782=>602,783=>602,784=>602,785=>602,786=>602,787=>602,788=>602,789=>602,\n790=>602,791=>602,792=>602,793=>602,794=>602,795=>602,796=>602,797=>602,798=>602,799=>602,\n800=>602,801=>602,802=>602,803=>602,804=>602,805=>602,806=>602,807=>602,808=>602,809=>602,\n810=>602,811=>602,812=>602,813=>602,814=>602,815=>602,816=>602,817=>602,818=>602,819=>602,\n820=>602,821=>602,822=>602,823=>602,824=>602,825=>602,826=>602,827=>602,828=>602,829=>602,\n830=>602,831=>602,835=>602,856=>602,865=>602,884=>602,885=>602,890=>602,894=>602,900=>602,\n901=>602,902=>602,903=>602,904=>602,905=>602,906=>602,908=>602,910=>602,911=>602,912=>602,\n913=>602,914=>602,915=>602,916=>602,917=>602,918=>602,919=>602,920=>602,921=>602,922=>602,\n923=>602,924=>602,925=>602,926=>602,927=>602,928=>602,929=>602,931=>602,932=>602,933=>602,\n934=>602,935=>602,936=>602,937=>602,938=>602,939=>602,940=>602,941=>602,942=>602,943=>602,\n944=>602,945=>602,946=>602,947=>602,948=>602,949=>602,950=>602,951=>602,952=>602,953=>602,\n954=>602,955=>602,956=>602,957=>602,958=>602,959=>602,960=>602,961=>602,962=>602,963=>602,\n964=>602,965=>602,966=>602,967=>602,968=>602,969=>602,970=>602,971=>602,972=>602,973=>602,\n974=>602,976=>602,977=>602,978=>602,979=>602,980=>602,981=>602,982=>602,983=>602,984=>602,\n985=>602,986=>602,987=>602,988=>602,989=>602,990=>602,991=>602,992=>602,993=>602,1008=>602,\n1009=>602,1010=>602,1011=>602,1012=>602,1013=>602,1014=>602,1015=>602,1016=>602,1017=>602,1018=>602,\n1019=>602,1020=>602,1021=>602,1022=>602,1023=>602,1024=>602,1025=>602,1026=>602,1027=>602,1028=>602,\n1029=>602,1030=>602,1031=>602,1032=>602,1033=>602,1034=>602,1035=>602,1036=>602,1037=>602,1038=>602,\n1039=>602,1040=>602,1041=>602,1042=>602,1043=>602,1044=>602,1045=>602,1046=>602,1047=>602,1048=>602,\n1049=>602,1050=>602,1051=>602,1052=>602,1053=>602,1054=>602,1055=>602,1056=>602,1057=>602,1058=>602,\n1059=>602,1060=>602,1061=>602,1062=>602,1063=>602,1064=>602,1065=>602,1066=>602,1067=>602,1068=>602,\n1069=>602,1070=>602,1071=>602,1072=>602,1073=>602,1074=>602,1075=>602,1076=>602,1077=>602,1078=>602,\n1079=>602,1080=>602,1081=>602,1082=>602,1083=>602,1084=>602,1085=>602,1086=>602,1087=>602,1088=>602,\n1089=>602,1090=>602,1091=>602,1092=>602,1093=>602,1094=>602,1095=>602,1096=>602,1097=>602,1098=>602,\n1099=>602,1100=>602,1101=>602,1102=>602,1103=>602,1104=>602,1105=>602,1106=>602,1107=>602,1108=>602,\n1109=>602,1110=>602,1111=>602,1112=>602,1113=>602,1114=>602,1115=>602,1116=>602,1117=>602,1118=>602,\n1119=>602,1122=>602,1123=>602,1138=>602,1139=>602,1168=>602,1169=>602,1170=>602,1171=>602,1172=>602,\n1173=>602,1174=>602,1175=>602,1176=>602,1177=>602,1178=>602,1179=>602,1186=>602,1187=>602,1194=>602,\n1195=>602,1196=>602,1197=>602,1198=>602,1199=>602,1200=>602,1201=>602,1202=>602,1203=>602,1210=>602,\n1211=>602,1216=>602,1217=>602,1218=>602,1219=>602,1220=>602,1223=>602,1224=>602,1227=>602,1228=>602,\n1231=>602,1232=>602,1233=>602,1234=>602,1235=>602,1236=>602,1237=>602,1238=>602,1239=>602,1240=>602,\n1241=>602,1242=>602,1243=>602,1244=>602,1245=>602,1246=>602,1247=>602,1248=>602,1249=>602,1250=>602,\n1251=>602,1252=>602,1253=>602,1254=>602,1255=>602,1256=>602,1257=>602,1258=>602,1259=>602,1260=>602,\n1261=>602,1262=>602,1263=>602,1264=>602,1265=>602,1266=>602,1267=>602,1268=>602,1269=>602,1270=>602,\n1271=>602,1272=>602,1273=>602,1296=>602,1297=>602,1306=>602,1307=>602,1308=>602,1309=>602,3713=>602,\n3714=>602,3716=>602,3719=>602,3720=>602,3722=>602,3725=>602,3732=>602,3733=>602,3734=>602,3735=>602,\n3737=>602,3738=>602,3739=>602,3740=>602,3741=>602,3742=>602,3743=>602,3745=>602,3746=>602,3747=>602,\n3749=>602,3751=>602,3754=>602,3755=>602,3757=>602,3758=>602,3759=>602,3760=>602,3761=>602,3762=>602,\n3763=>602,3764=>602,3765=>602,3766=>602,3767=>602,3768=>602,3769=>602,3771=>602,3772=>602,3784=>602,\n3785=>602,3786=>602,3787=>602,3788=>602,3789=>602,4304=>602,4305=>602,4306=>602,4307=>602,4308=>602,\n4309=>602,4310=>602,4311=>602,4312=>602,4313=>602,4314=>602,4315=>602,4316=>602,4317=>602,4318=>602,\n4319=>602,4320=>602,4321=>602,4322=>602,4323=>602,4324=>602,4325=>602,4326=>602,4327=>602,4328=>602,\n4329=>602,4330=>602,4331=>602,4332=>602,4333=>602,4334=>602,4335=>602,4336=>602,4337=>602,4338=>602,\n4339=>602,4340=>602,4341=>602,4342=>602,4343=>602,4344=>602,4345=>602,4346=>602,4347=>602,4348=>602,\n7426=>602,7432=>602,7433=>602,7444=>602,7446=>602,7447=>602,7453=>602,7454=>602,7455=>602,7468=>602,\n7469=>602,7470=>602,7472=>602,7473=>602,7474=>602,7475=>602,7476=>602,7477=>602,7478=>602,7479=>602,\n7480=>602,7481=>602,7482=>602,7483=>602,7484=>602,7486=>602,7487=>602,7488=>602,7489=>602,7490=>602,\n7491=>602,7492=>602,7493=>602,7494=>602,7495=>602,7496=>602,7497=>602,7498=>602,7499=>602,7500=>602,\n7501=>602,7502=>602,7503=>602,7504=>602,7505=>602,7506=>602,7507=>602,7508=>602,7509=>602,7510=>602,\n7511=>602,7512=>602,7513=>602,7514=>602,7515=>602,7522=>602,7523=>602,7524=>602,7525=>602,7543=>602,\n7544=>602,7547=>602,7557=>602,7579=>602,7580=>602,7581=>602,7582=>602,7583=>602,7584=>602,7585=>602,\n7586=>602,7587=>602,7588=>602,7589=>602,7590=>602,7591=>602,7592=>602,7593=>602,7594=>602,7595=>602,\n7596=>602,7597=>602,7598=>602,7599=>602,7600=>602,7601=>602,7602=>602,7603=>602,7604=>602,7605=>602,\n7606=>602,7607=>602,7609=>602,7610=>602,7611=>602,7612=>602,7613=>602,7614=>602,7615=>602,7680=>602,\n7681=>602,7682=>602,7683=>602,7684=>602,7685=>602,7686=>602,7687=>602,7688=>602,7689=>602,7690=>602,\n7691=>602,7692=>602,7693=>602,7694=>602,7695=>602,7696=>602,7697=>602,7698=>602,7699=>602,7704=>602,\n7705=>602,7706=>602,7707=>602,7708=>602,7709=>602,7710=>602,7711=>602,7712=>602,7713=>602,7714=>602,\n7715=>602,7716=>602,7717=>602,7718=>602,7719=>602,7720=>602,7721=>602,7722=>602,7723=>602,7724=>602,\n7725=>602,7728=>602,7729=>602,7730=>602,7731=>602,7732=>602,7733=>602,7734=>602,7735=>602,7736=>602,\n7737=>602,7738=>602,7739=>602,7740=>602,7741=>602,7742=>602,7743=>602,7744=>602,7745=>602,7746=>602,\n7747=>602,7748=>602,7749=>602,7750=>602,7751=>602,7752=>602,7753=>602,7754=>602,7755=>602,7756=>602,\n7757=>602,7764=>602,7765=>602,7766=>602,7767=>602,7768=>602,7769=>602,7770=>602,7771=>602,7772=>602,\n7773=>602,7774=>602,7775=>602,7776=>602,7777=>602,7778=>602,7779=>602,7784=>602,7785=>602,7786=>602,\n7787=>602,7788=>602,7789=>602,7790=>602,7791=>602,7792=>602,7793=>602,7794=>602,7795=>602,7796=>602,\n7797=>602,7798=>602,7799=>602,7800=>602,7801=>602,7804=>602,7805=>602,7806=>602,7807=>602,7808=>602,\n7809=>602,7810=>602,7811=>602,7812=>602,7813=>602,7814=>602,7815=>602,7816=>602,7817=>602,7818=>602,\n7819=>602,7820=>602,7821=>602,7822=>602,7823=>602,7824=>602,7825=>602,7826=>602,7827=>602,7828=>602,\n7829=>602,7830=>602,7831=>602,7832=>602,7833=>602,7835=>602,7839=>602,7840=>602,7841=>602,7852=>602,\n7853=>602,7856=>602,7857=>602,7862=>602,7863=>602,7864=>602,7865=>602,7868=>602,7869=>602,7878=>602,\n7879=>602,7882=>602,7883=>602,7884=>602,7885=>602,7896=>602,7897=>602,7898=>602,7899=>602,7900=>602,\n7901=>602,7904=>602,7905=>602,7906=>602,7907=>602,7908=>602,7909=>602,7912=>602,7913=>602,7914=>602,\n7915=>602,7918=>602,7919=>602,7920=>602,7921=>602,7922=>602,7923=>602,7924=>602,7925=>602,7928=>602,\n7929=>602,7936=>602,7937=>602,7938=>602,7939=>602,7940=>602,7941=>602,7942=>602,7943=>602,7944=>602,\n7945=>602,7946=>602,7947=>602,7948=>602,7949=>602,7950=>602,7951=>602,7952=>602,7953=>602,7954=>602,\n7955=>602,7956=>602,7957=>602,7960=>602,7961=>602,7962=>602,7963=>602,7964=>602,7965=>602,7968=>602,\n7969=>602,7970=>602,7971=>602,7972=>602,7973=>602,7974=>602,7975=>602,7976=>602,7977=>602,7978=>602,\n7979=>602,7980=>602,7981=>602,7982=>602,7983=>602,7984=>602,7985=>602,7986=>602,7987=>602,7988=>602,\n7989=>602,7990=>602,7991=>602,7992=>602,7993=>602,7994=>602,7995=>602,7996=>602,7997=>602,7998=>602,\n7999=>602,8000=>602,8001=>602,8002=>602,8003=>602,8004=>602,8005=>602,8008=>602,8009=>602,8010=>602,\n8011=>602,8012=>602,8013=>602,8016=>602,8017=>602,8018=>602,8019=>602,8020=>602,8021=>602,8022=>602,\n8023=>602,8025=>602,8027=>602,8029=>602,8031=>602,8032=>602,8033=>602,8034=>602,8035=>602,8036=>602,\n8037=>602,8038=>602,8039=>602,8040=>602,8041=>602,8042=>602,8043=>602,8044=>602,8045=>602,8046=>602,\n8047=>602,8048=>602,8049=>602,8050=>602,8051=>602,8052=>602,8053=>602,8054=>602,8055=>602,8056=>602,\n8057=>602,8058=>602,8059=>602,8060=>602,8061=>602,8064=>602,8065=>602,8066=>602,8067=>602,8068=>602,\n8069=>602,8070=>602,8071=>602,8072=>602,8073=>602,8074=>602,8075=>602,8076=>602,8077=>602,8078=>602,\n8079=>602,8080=>602,8081=>602,8082=>602,8083=>602,8084=>602,8085=>602,8086=>602,8087=>602,8088=>602,\n8089=>602,8090=>602,8091=>602,8092=>602,8093=>602,8094=>602,8095=>602,8096=>602,8097=>602,8098=>602,\n8099=>602,8100=>602,8101=>602,8102=>602,8103=>602,8104=>602,8105=>602,8106=>602,8107=>602,8108=>602,\n8109=>602,8110=>602,8111=>602,8112=>602,8113=>602,8114=>602,8115=>602,8116=>602,8118=>602,8119=>602,\n8120=>602,8121=>602,8122=>602,8123=>602,8124=>602,8125=>602,8126=>602,8127=>602,8128=>602,8129=>602,\n8130=>602,8131=>602,8132=>602,8134=>602,8135=>602,8136=>602,8137=>602,8138=>602,8139=>602,8140=>602,\n8141=>602,8142=>602,8143=>602,8144=>602,8145=>602,8146=>602,8147=>602,8150=>602,8151=>602,8152=>602,\n8153=>602,8154=>602,8155=>602,8157=>602,8158=>602,8159=>602,8160=>602,8161=>602,8162=>602,8163=>602,\n8164=>602,8165=>602,8166=>602,8167=>602,8168=>602,8169=>602,8170=>602,8171=>602,8172=>602,8173=>602,\n8174=>602,8175=>602,8178=>602,8179=>602,8180=>602,8182=>602,8183=>602,8184=>602,8185=>602,8186=>602,\n8187=>602,8188=>602,8189=>602,8190=>602,8192=>602,8193=>602,8194=>602,8195=>602,8196=>602,8197=>602,\n8198=>602,8199=>602,8200=>602,8201=>602,8202=>602,8208=>602,8209=>602,8210=>602,8213=>602,8215=>602,\n8219=>602,8223=>602,8227=>602,8239=>602,8241=>602,8242=>602,8243=>602,8244=>602,8245=>602,8246=>602,\n8247=>602,8252=>602,8253=>602,8254=>602,8261=>602,8262=>602,8263=>602,8264=>602,8265=>602,8287=>602,\n8304=>602,8305=>602,8308=>602,8309=>602,8310=>602,8311=>602,8312=>602,8313=>602,8314=>602,8315=>602,\n8316=>602,8317=>602,8318=>602,8319=>602,8320=>602,8321=>602,8322=>602,8323=>602,8324=>602,8325=>602,\n8326=>602,8327=>602,8328=>602,8329=>602,8330=>602,8331=>602,8332=>602,8333=>602,8334=>602,8336=>602,\n8337=>602,8338=>602,8339=>602,8340=>602,8352=>602,8353=>602,8354=>602,8355=>602,8356=>602,8357=>602,\n8358=>602,8359=>602,8360=>602,8361=>602,8362=>602,8363=>602,8365=>602,8366=>602,8367=>602,8368=>602,\n8369=>602,8370=>602,8371=>602,8372=>602,8373=>602,8450=>602,8453=>602,8461=>602,8462=>602,8463=>602,\n8469=>602,8470=>602,8471=>602,8473=>602,8474=>602,8477=>602,8484=>602,8486=>602,8490=>602,8491=>602,\n8494=>602,8531=>602,8532=>602,8533=>602,8534=>602,8535=>602,8536=>602,8537=>602,8538=>602,8539=>602,\n8540=>602,8541=>602,8542=>602,8543=>602,8592=>602,8593=>602,8594=>602,8595=>602,8596=>602,8597=>602,\n8598=>602,8599=>602,8600=>602,8601=>602,8602=>602,8603=>602,8604=>602,8605=>602,8606=>602,8607=>602,\n8608=>602,8609=>602,8610=>602,8611=>602,8612=>602,8613=>602,8614=>602,8615=>602,8616=>602,8617=>602,\n8618=>602,8619=>602,8620=>602,8621=>602,8622=>602,8623=>602,8624=>602,8625=>602,8626=>602,8627=>602,\n8628=>602,8629=>602,8630=>602,8631=>602,8632=>602,8633=>602,8634=>602,8635=>602,8636=>602,8637=>602,\n8638=>602,8639=>602,8640=>602,8641=>602,8642=>602,8643=>602,8644=>602,8645=>602,8646=>602,8647=>602,\n8648=>602,8649=>602,8650=>602,8651=>602,8652=>602,8653=>602,8654=>602,8655=>602,8656=>602,8657=>602,\n8658=>602,8659=>602,8660=>602,8661=>602,8662=>602,8663=>602,8664=>602,8665=>602,8666=>602,8667=>602,\n8668=>602,8669=>602,8670=>602,8671=>602,8672=>602,8673=>602,8674=>602,8675=>602,8676=>602,8677=>602,\n8678=>602,8679=>602,8680=>602,8681=>602,8682=>602,8683=>602,8684=>602,8685=>602,8686=>602,8687=>602,\n8688=>602,8689=>602,8690=>602,8691=>602,8692=>602,8693=>602,8694=>602,8695=>602,8696=>602,8697=>602,\n8698=>602,8699=>602,8700=>602,8701=>602,8702=>602,8703=>602,8704=>602,8705=>602,8706=>602,8707=>602,\n8708=>602,8709=>602,8710=>602,8711=>602,8712=>602,8713=>602,8714=>602,8715=>602,8716=>602,8717=>602,\n8719=>602,8721=>602,8722=>602,8723=>602,8725=>602,8727=>602,8728=>602,8729=>602,8730=>602,8731=>602,\n8732=>602,8733=>602,8734=>602,8735=>602,8736=>602,8743=>602,8744=>602,8745=>602,8746=>602,8747=>602,\n8748=>602,8749=>602,8760=>602,8761=>602,8762=>602,8763=>602,8764=>602,8765=>602,8769=>602,8770=>602,\n8771=>602,8772=>602,8773=>602,8774=>602,8775=>602,8776=>602,8777=>602,8778=>602,8779=>602,8780=>602,\n8781=>602,8782=>602,8783=>602,8784=>602,8785=>602,8786=>602,8787=>602,8788=>602,8789=>602,8790=>602,\n8791=>602,8792=>602,8793=>602,8794=>602,8795=>602,8796=>602,8797=>602,8798=>602,8799=>602,8800=>602,\n8801=>602,8802=>602,8803=>602,8804=>602,8805=>602,8806=>602,8807=>602,8808=>602,8809=>602,8813=>602,\n8814=>602,8815=>602,8816=>602,8817=>602,8818=>602,8819=>602,8820=>602,8821=>602,8822=>602,8823=>602,\n8824=>602,8825=>602,8826=>602,8827=>602,8828=>602,8829=>602,8830=>602,8831=>602,8832=>602,8833=>602,\n8834=>602,8835=>602,8836=>602,8837=>602,8838=>602,8839=>602,8840=>602,8841=>602,8842=>602,8843=>602,\n8847=>602,8848=>602,8849=>602,8850=>602,8853=>602,8854=>602,8855=>602,8856=>602,8857=>602,8858=>602,\n8859=>602,8860=>602,8861=>602,8862=>602,8863=>602,8864=>602,8865=>602,8901=>602,8902=>602,8909=>602,\n8922=>602,8923=>602,8924=>602,8925=>602,8926=>602,8927=>602,8928=>602,8929=>602,8930=>602,8931=>602,\n8932=>602,8933=>602,8934=>602,8935=>602,8936=>602,8937=>602,8943=>602,8960=>602,8961=>602,8962=>602,\n8963=>602,8964=>602,8965=>602,8966=>602,8968=>602,8969=>602,8970=>602,8971=>602,8972=>602,8973=>602,\n8974=>602,8975=>602,8976=>602,8977=>602,8978=>602,8979=>602,8980=>602,8981=>602,8984=>602,8985=>602,\n8988=>602,8989=>602,8990=>602,8991=>602,8992=>602,8993=>602,8997=>602,8998=>602,8999=>602,9000=>602,\n9003=>602,9013=>602,9015=>602,9016=>602,9017=>602,9018=>602,9019=>602,9020=>602,9021=>602,9022=>602,\n9025=>602,9026=>602,9027=>602,9028=>602,9031=>602,9032=>602,9033=>602,9035=>602,9036=>602,9037=>602,\n9040=>602,9042=>602,9043=>602,9044=>602,9047=>602,9048=>602,9049=>602,9050=>602,9051=>602,9052=>602,\n9054=>602,9055=>602,9056=>602,9059=>602,9060=>602,9061=>602,9064=>602,9065=>602,9067=>602,9068=>602,\n9069=>602,9070=>602,9071=>602,9072=>602,9075=>602,9076=>602,9077=>602,9078=>602,9079=>602,9080=>602,\n9081=>602,9082=>602,9085=>602,9088=>602,9089=>602,9090=>602,9091=>602,9096=>602,9097=>602,9098=>602,\n9099=>602,9109=>602,9115=>602,9116=>602,9117=>602,9118=>602,9119=>602,9120=>602,9121=>602,9122=>602,\n9123=>602,9124=>602,9125=>602,9126=>602,9127=>602,9128=>602,9129=>602,9130=>602,9131=>602,9132=>602,\n9133=>602,9134=>602,9166=>602,9167=>602,9251=>602,9600=>602,9601=>602,9602=>602,9603=>602,9604=>602,\n9605=>602,9606=>602,9607=>602,9608=>602,9609=>602,9610=>602,9611=>602,9612=>602,9613=>602,9614=>602,\n9615=>602,9616=>602,9617=>602,9618=>602,9619=>602,9620=>602,9621=>602,9622=>602,9623=>602,9624=>602,\n9625=>602,9626=>602,9627=>602,9628=>602,9629=>602,9630=>602,9631=>602,9632=>602,9633=>602,9634=>602,\n9635=>602,9636=>602,9637=>602,9638=>602,9639=>602,9640=>602,9641=>602,9642=>602,9643=>602,9644=>602,\n9645=>602,9646=>602,9647=>602,9648=>602,9649=>602,9650=>602,9651=>602,9652=>602,9653=>602,9654=>602,\n9655=>602,9656=>602,9657=>602,9658=>602,9659=>602,9660=>602,9661=>602,9662=>602,9663=>602,9664=>602,\n9665=>602,9666=>602,9667=>602,9668=>602,9669=>602,9670=>602,9671=>602,9672=>602,9673=>602,9674=>602,\n9675=>602,9676=>602,9677=>602,9678=>602,9679=>602,9680=>602,9681=>602,9682=>602,9683=>602,9684=>602,\n9685=>602,9686=>602,9687=>602,9688=>602,9689=>602,9690=>602,9691=>602,9692=>602,9693=>602,9694=>602,\n9695=>602,9696=>602,9697=>602,9698=>602,9699=>602,9700=>602,9701=>602,9702=>602,9703=>602,9704=>602,\n9705=>602,9706=>602,9707=>602,9708=>602,9709=>602,9710=>602,9711=>602,9712=>602,9713=>602,9714=>602,\n9715=>602,9716=>602,9717=>602,9718=>602,9719=>602,9720=>602,9721=>602,9722=>602,9723=>602,9724=>602,\n9725=>602,9726=>602,9727=>602,9728=>602,9784=>602,9785=>602,9786=>602,9787=>602,9788=>602,9791=>602,\n9792=>602,9793=>602,9794=>602,9795=>602,9796=>602,9797=>602,9798=>602,9799=>602,9824=>602,9825=>602,\n9826=>602,9827=>602,9828=>602,9829=>602,9830=>602,9831=>602,9833=>602,9834=>602,9835=>602,9836=>602,\n9837=>602,9838=>602,9839=>602,10181=>602,10182=>602,10208=>602,10216=>602,10217=>602,10731=>602,10746=>602,\n10747=>602,10799=>602,11026=>602,11027=>602,11028=>602,11029=>602,11030=>602,11031=>602,11032=>602,11033=>602,\n11034=>602,11364=>602,11374=>602,11375=>602,11381=>602,11382=>602,11383=>602,11385=>602,11386=>602,11388=>602,\n11389=>602,11800=>602,11810=>602,11811=>602,11812=>602,11813=>602,11822=>602,42760=>602,42761=>602,42762=>602,\n42763=>602,42764=>602,42765=>602,42766=>602,42767=>602,42768=>602,42769=>602,42770=>602,42771=>602,42772=>602,\n42773=>602,42774=>602,42779=>602,42780=>602,42781=>602,42782=>602,42783=>602,42790=>602,42791=>602,42889=>602,\n42890=>602,42891=>602,42892=>602,63173=>602,64257=>602,64258=>602,65529=>602,65530=>602,65531=>602,65532=>602,\n65533=>602);\n$enc='';\n$diff='';\n$file='dejavusansmonobi.z';\n$ctg='dejavusansmonobi.ctg.z';\n$originalsize=223408;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavusansmonoi.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='DejaVuSansMono-Oblique';\n$desc=array('Ascent'=>928,'Descent'=>-236,'CapHeight'=>-62,'Flags'=>97,'FontBBox'=>'[-406 -375 746 1028]','ItalicAngle'=>-11,'StemV'=>70,'MissingWidth'=>602);\n$up=-63;\n$ut=44;\n$dw=602;\n$cw=array(\n0=>602,32=>602,33=>602,34=>602,35=>602,36=>602,37=>602,38=>602,39=>602,40=>602,\n41=>602,42=>602,43=>602,44=>602,45=>602,46=>602,47=>602,48=>602,49=>602,50=>602,\n51=>602,52=>602,53=>602,54=>602,55=>602,56=>602,57=>602,58=>602,59=>602,60=>602,\n61=>602,62=>602,63=>602,64=>602,65=>602,66=>602,67=>602,68=>602,69=>602,70=>602,\n71=>602,72=>602,73=>602,74=>602,75=>602,76=>602,77=>602,78=>602,79=>602,80=>602,\n81=>602,82=>602,83=>602,84=>602,85=>602,86=>602,87=>602,88=>602,89=>602,90=>602,\n91=>602,92=>602,93=>602,94=>602,95=>602,96=>602,97=>602,98=>602,99=>602,100=>602,\n101=>602,102=>602,103=>602,104=>602,105=>602,106=>602,107=>602,108=>602,109=>602,110=>602,\n111=>602,112=>602,113=>602,114=>602,115=>602,116=>602,117=>602,118=>602,119=>602,120=>602,\n121=>602,122=>602,123=>602,124=>602,125=>602,126=>602,8364=>602,8218=>602,402=>602,8222=>602,\n8230=>602,8224=>602,8225=>602,710=>602,8240=>602,352=>602,8249=>602,338=>602,381=>602,8216=>602,\n8217=>602,8220=>602,8221=>602,8226=>602,8211=>602,8212=>602,732=>602,8482=>602,353=>602,8250=>602,\n339=>602,382=>602,376=>602,160=>602,161=>602,162=>602,163=>602,164=>602,165=>602,166=>602,\n167=>602,168=>602,169=>602,170=>602,171=>602,172=>602,173=>602,174=>602,175=>602,176=>602,\n177=>602,178=>602,179=>602,180=>602,181=>602,182=>602,183=>602,184=>602,185=>602,186=>602,\n187=>602,188=>602,189=>602,190=>602,191=>602,192=>602,193=>602,194=>602,195=>602,196=>602,\n197=>602,198=>602,199=>602,200=>602,201=>602,202=>602,203=>602,204=>602,205=>602,206=>602,\n207=>602,208=>602,209=>602,210=>602,211=>602,212=>602,213=>602,214=>602,215=>602,216=>602,\n217=>602,218=>602,219=>602,220=>602,221=>602,222=>602,223=>602,224=>602,225=>602,226=>602,\n227=>602,228=>602,229=>602,230=>602,231=>602,232=>602,233=>602,234=>602,235=>602,236=>602,\n237=>602,238=>602,239=>602,240=>602,241=>602,242=>602,243=>602,244=>602,245=>602,246=>602,\n247=>602,248=>602,249=>602,250=>602,251=>602,252=>602,253=>602,254=>602,255=>602,256=>602,\n257=>602,258=>602,259=>602,260=>602,261=>602,262=>602,263=>602,264=>602,265=>602,266=>602,\n267=>602,268=>602,269=>602,270=>602,271=>602,272=>602,273=>602,274=>602,275=>602,276=>602,\n277=>602,278=>602,279=>602,280=>602,281=>602,282=>602,283=>602,284=>602,285=>602,286=>602,\n287=>602,288=>602,289=>602,290=>602,291=>602,292=>602,293=>602,294=>602,295=>602,296=>602,\n297=>602,298=>602,299=>602,300=>602,301=>602,302=>602,303=>602,304=>602,305=>602,306=>602,\n307=>602,308=>602,309=>602,310=>602,311=>602,312=>602,313=>602,314=>602,315=>602,316=>602,\n317=>602,318=>602,319=>602,320=>602,321=>602,322=>602,323=>602,324=>602,325=>602,326=>602,\n327=>602,328=>602,329=>602,330=>602,331=>602,332=>602,333=>602,334=>602,335=>602,336=>602,\n337=>602,340=>602,341=>602,342=>602,343=>602,344=>602,345=>602,346=>602,347=>602,348=>602,\n349=>602,350=>602,351=>602,354=>602,355=>602,356=>602,357=>602,358=>602,359=>602,360=>602,\n361=>602,362=>602,363=>602,364=>602,365=>602,366=>602,367=>602,368=>602,369=>602,370=>602,\n371=>602,372=>602,373=>602,374=>602,375=>602,377=>602,378=>602,379=>602,380=>602,383=>602,\n384=>602,385=>602,386=>602,387=>602,388=>602,389=>602,390=>602,391=>602,392=>602,393=>602,\n394=>602,395=>602,396=>602,397=>602,398=>602,399=>602,400=>602,401=>602,403=>602,404=>602,\n405=>602,406=>602,407=>602,408=>602,409=>602,410=>602,411=>602,412=>602,413=>602,414=>602,\n415=>602,416=>602,417=>602,418=>602,419=>602,420=>602,421=>602,422=>602,423=>602,424=>602,\n425=>602,426=>602,427=>602,428=>602,429=>602,430=>602,431=>602,432=>602,433=>602,434=>602,\n435=>602,436=>602,437=>602,438=>602,439=>602,440=>602,441=>602,442=>602,443=>602,444=>602,\n445=>602,446=>602,447=>602,448=>602,449=>602,450=>602,451=>602,461=>602,462=>602,463=>602,\n464=>602,465=>602,466=>602,467=>602,468=>602,469=>602,470=>602,471=>602,472=>602,473=>602,\n474=>602,475=>602,476=>602,477=>602,479=>602,480=>602,481=>602,482=>602,483=>602,486=>602,\n487=>602,488=>602,489=>602,490=>602,491=>602,492=>602,493=>602,494=>602,495=>602,500=>602,\n501=>602,502=>602,504=>602,505=>602,508=>602,509=>602,510=>602,511=>602,512=>602,513=>602,\n514=>602,515=>602,516=>602,517=>602,518=>602,519=>602,520=>602,521=>602,522=>602,523=>602,\n524=>602,525=>602,526=>602,527=>602,528=>602,529=>602,530=>602,531=>602,532=>602,533=>602,\n534=>602,535=>602,536=>602,537=>602,538=>602,539=>602,540=>602,541=>602,542=>602,543=>602,\n545=>602,548=>602,549=>602,550=>602,551=>602,552=>602,553=>602,554=>602,555=>602,556=>602,\n557=>602,558=>602,559=>602,560=>602,561=>602,562=>602,563=>602,564=>602,565=>602,566=>602,\n567=>602,568=>602,569=>602,570=>602,571=>602,572=>602,573=>602,574=>602,575=>602,576=>602,\n577=>602,580=>602,581=>602,588=>602,589=>602,592=>602,593=>602,594=>602,595=>602,596=>602,\n597=>602,598=>602,599=>602,600=>602,601=>602,602=>602,603=>602,604=>602,605=>602,606=>602,\n607=>602,608=>602,609=>602,610=>602,611=>602,612=>602,613=>602,614=>602,615=>602,616=>602,\n617=>602,618=>602,619=>602,620=>602,621=>602,622=>602,623=>602,624=>602,625=>602,626=>602,\n627=>602,628=>602,629=>602,630=>602,631=>602,632=>602,633=>602,634=>602,635=>602,636=>602,\n637=>602,638=>602,639=>602,640=>602,641=>602,642=>602,643=>602,644=>602,645=>602,646=>602,\n647=>602,648=>602,649=>602,650=>602,651=>602,652=>602,653=>602,654=>602,655=>602,656=>602,\n657=>602,658=>602,659=>602,660=>602,661=>602,662=>602,663=>602,664=>602,665=>602,666=>602,\n667=>602,668=>602,669=>602,670=>602,671=>602,672=>602,673=>602,674=>602,675=>602,676=>602,\n677=>602,678=>602,679=>602,680=>602,681=>602,682=>602,683=>602,684=>602,685=>602,686=>602,\n687=>602,688=>602,689=>602,690=>602,691=>602,692=>602,693=>602,694=>602,695=>602,696=>602,\n697=>602,699=>602,700=>602,701=>602,702=>602,703=>602,704=>602,705=>602,711=>602,712=>602,\n713=>602,716=>602,717=>602,720=>602,721=>602,722=>602,723=>602,726=>602,727=>602,728=>602,\n729=>602,730=>602,731=>602,733=>602,734=>602,736=>602,737=>602,738=>602,739=>602,740=>602,\n741=>602,742=>602,743=>602,744=>602,745=>602,750=>602,755=>602,768=>602,769=>602,770=>602,\n771=>602,772=>602,773=>602,774=>602,775=>602,776=>602,777=>602,778=>602,779=>602,780=>602,\n781=>602,782=>602,783=>602,784=>602,785=>602,786=>602,787=>602,788=>602,789=>602,790=>602,\n791=>602,792=>602,793=>602,794=>602,795=>602,796=>602,797=>602,798=>602,799=>602,800=>602,\n801=>602,802=>602,803=>602,804=>602,805=>602,806=>602,807=>602,808=>602,809=>602,810=>602,\n811=>602,812=>602,813=>602,814=>602,815=>602,816=>602,817=>602,818=>602,819=>602,820=>602,\n821=>602,822=>602,823=>602,824=>602,825=>602,826=>602,827=>602,828=>602,829=>602,830=>602,\n831=>602,835=>602,856=>602,865=>602,884=>602,885=>602,890=>602,894=>602,900=>602,901=>602,\n902=>602,903=>602,904=>602,905=>602,906=>602,908=>602,910=>602,911=>602,912=>602,913=>602,\n914=>602,915=>602,916=>602,917=>602,918=>602,919=>602,920=>602,921=>602,922=>602,923=>602,\n924=>602,925=>602,926=>602,927=>602,928=>602,929=>602,931=>602,932=>602,933=>602,934=>602,\n935=>602,936=>602,937=>602,938=>602,939=>602,940=>602,941=>602,942=>602,943=>602,944=>602,\n945=>602,946=>602,947=>602,948=>602,949=>602,950=>602,951=>602,952=>602,953=>602,954=>602,\n955=>602,956=>602,957=>602,958=>602,959=>602,960=>602,961=>602,962=>602,963=>602,964=>602,\n965=>602,966=>602,967=>602,968=>602,969=>602,970=>602,971=>602,972=>602,973=>602,974=>602,\n976=>602,977=>602,978=>602,979=>602,980=>602,981=>602,982=>602,983=>602,984=>602,985=>602,\n986=>602,987=>602,988=>602,989=>602,990=>602,991=>602,992=>602,993=>602,1008=>602,1009=>602,\n1010=>602,1011=>602,1012=>602,1013=>602,1014=>602,1015=>602,1016=>602,1017=>602,1018=>602,1019=>602,\n1020=>602,1021=>602,1022=>602,1023=>602,1024=>602,1025=>602,1026=>602,1027=>602,1028=>602,1029=>602,\n1030=>602,1031=>602,1032=>602,1033=>602,1034=>602,1035=>602,1036=>602,1037=>602,1038=>602,1039=>602,\n1040=>602,1041=>602,1042=>602,1043=>602,1044=>602,1045=>602,1046=>602,1047=>602,1048=>602,1049=>602,\n1050=>602,1051=>602,1052=>602,1053=>602,1054=>602,1055=>602,1056=>602,1057=>602,1058=>602,1059=>602,\n1060=>602,1061=>602,1062=>602,1063=>602,1064=>602,1065=>602,1066=>602,1067=>602,1068=>602,1069=>602,\n1070=>602,1071=>602,1072=>602,1073=>602,1074=>602,1075=>602,1076=>602,1077=>602,1078=>602,1079=>602,\n1080=>602,1081=>602,1082=>602,1083=>602,1084=>602,1085=>602,1086=>602,1087=>602,1088=>602,1089=>602,\n1090=>602,1091=>602,1092=>602,1093=>602,1094=>602,1095=>602,1096=>602,1097=>602,1098=>602,1099=>602,\n1100=>602,1101=>602,1102=>602,1103=>602,1104=>602,1105=>602,1106=>602,1107=>602,1108=>602,1109=>602,\n1110=>602,1111=>602,1112=>602,1113=>602,1114=>602,1115=>602,1116=>602,1117=>602,1118=>602,1119=>602,\n1122=>602,1123=>602,1138=>602,1139=>602,1168=>602,1169=>602,1170=>602,1171=>602,1172=>602,1173=>602,\n1174=>602,1175=>602,1176=>602,1177=>602,1178=>602,1179=>602,1186=>602,1187=>602,1194=>602,1195=>602,\n1196=>602,1197=>602,1198=>602,1199=>602,1200=>602,1201=>602,1202=>602,1203=>602,1210=>602,1211=>602,\n1216=>602,1217=>602,1218=>602,1219=>602,1220=>602,1223=>602,1224=>602,1227=>602,1228=>602,1231=>602,\n1232=>602,1233=>602,1234=>602,1235=>602,1236=>602,1237=>602,1238=>602,1239=>602,1240=>602,1241=>602,\n1242=>602,1243=>602,1244=>602,1245=>602,1246=>602,1247=>602,1248=>602,1249=>602,1250=>602,1251=>602,\n1252=>602,1253=>602,1254=>602,1255=>602,1256=>602,1257=>602,1258=>602,1259=>602,1260=>602,1261=>602,\n1262=>602,1263=>602,1264=>602,1265=>602,1266=>602,1267=>602,1268=>602,1269=>602,1270=>602,1271=>602,\n1272=>602,1273=>602,1296=>602,1297=>602,1306=>602,1307=>602,1308=>602,1309=>602,3713=>602,3714=>602,\n3716=>602,3719=>602,3720=>602,3722=>602,3725=>602,3732=>602,3733=>602,3734=>602,3735=>602,3737=>602,\n3738=>602,3739=>602,3740=>602,3741=>602,3742=>602,3743=>602,3745=>602,3746=>602,3747=>602,3749=>602,\n3751=>602,3754=>602,3755=>602,3757=>602,3758=>602,3759=>602,3760=>602,3761=>602,3762=>602,3763=>602,\n3764=>602,3765=>602,3766=>602,3767=>602,3768=>602,3769=>602,3771=>602,3772=>602,3784=>602,3785=>602,\n3786=>602,3787=>602,3788=>602,3789=>602,4304=>602,4305=>602,4306=>602,4307=>602,4308=>602,4309=>602,\n4310=>602,4311=>602,4312=>602,4313=>602,4314=>602,4315=>602,4316=>602,4317=>602,4318=>602,4319=>602,\n4320=>602,4321=>602,4322=>602,4323=>602,4324=>602,4325=>602,4326=>602,4327=>602,4328=>602,4329=>602,\n4330=>602,4331=>602,4332=>602,4333=>602,4334=>602,4335=>602,4336=>602,4337=>602,4338=>602,4339=>602,\n4340=>602,4341=>602,4342=>602,4343=>602,4344=>602,4345=>602,4346=>602,4347=>602,4348=>602,7426=>602,\n7432=>602,7433=>602,7444=>602,7446=>602,7447=>602,7453=>602,7454=>602,7455=>602,7468=>602,7469=>602,\n7470=>602,7472=>602,7473=>602,7474=>602,7475=>602,7476=>602,7477=>602,7478=>602,7479=>602,7480=>602,\n7481=>602,7482=>602,7483=>602,7484=>602,7485=>602,7486=>602,7487=>602,7488=>602,7489=>602,7490=>602,\n7491=>602,7492=>602,7493=>602,7494=>602,7495=>602,7496=>602,7497=>602,7498=>602,7499=>602,7500=>602,\n7501=>602,7502=>602,7503=>602,7504=>602,7505=>602,7506=>602,7507=>602,7508=>602,7509=>602,7510=>602,\n7511=>602,7512=>602,7513=>602,7514=>602,7515=>602,7522=>602,7523=>602,7524=>602,7525=>602,7543=>602,\n7544=>602,7547=>602,7557=>602,7579=>602,7580=>602,7581=>602,7582=>602,7583=>602,7584=>602,7585=>602,\n7586=>602,7587=>602,7588=>602,7589=>602,7590=>602,7591=>602,7592=>602,7593=>602,7594=>602,7595=>602,\n7596=>602,7597=>602,7598=>602,7599=>602,7600=>602,7601=>602,7602=>602,7603=>602,7604=>602,7605=>602,\n7606=>602,7607=>602,7609=>602,7610=>602,7611=>602,7612=>602,7613=>602,7614=>602,7615=>602,7680=>602,\n7681=>602,7682=>602,7683=>602,7684=>602,7685=>602,7686=>602,7687=>602,7688=>602,7689=>602,7690=>602,\n7691=>602,7692=>602,7693=>602,7694=>602,7695=>602,7696=>602,7697=>602,7698=>602,7699=>602,7704=>602,\n7705=>602,7706=>602,7707=>602,7708=>602,7709=>602,7710=>602,7711=>602,7712=>602,7713=>602,7714=>602,\n7715=>602,7716=>602,7717=>602,7718=>602,7719=>602,7720=>602,7721=>602,7722=>602,7723=>602,7724=>602,\n7725=>602,7728=>602,7729=>602,7730=>602,7731=>602,7732=>602,7733=>602,7734=>602,7735=>602,7736=>602,\n7737=>602,7738=>602,7739=>602,7740=>602,7741=>602,7742=>602,7743=>602,7744=>602,7745=>602,7746=>602,\n7747=>602,7748=>602,7749=>602,7750=>602,7751=>602,7752=>602,7753=>602,7754=>602,7755=>602,7756=>602,\n7757=>602,7764=>602,7765=>602,7766=>602,7767=>602,7768=>602,7769=>602,7770=>602,7771=>602,7772=>602,\n7773=>602,7774=>602,7775=>602,7776=>602,7777=>602,7778=>602,7779=>602,7784=>602,7785=>602,7786=>602,\n7787=>602,7788=>602,7789=>602,7790=>602,7791=>602,7792=>602,7793=>602,7794=>602,7795=>602,7796=>602,\n7797=>602,7798=>602,7799=>602,7800=>602,7801=>602,7804=>602,7805=>602,7806=>602,7807=>602,7808=>602,\n7809=>602,7810=>602,7811=>602,7812=>602,7813=>602,7814=>602,7815=>602,7816=>602,7817=>602,7818=>602,\n7819=>602,7820=>602,7821=>602,7822=>602,7823=>602,7824=>602,7825=>602,7826=>602,7827=>602,7828=>602,\n7829=>602,7830=>602,7831=>602,7832=>602,7833=>602,7835=>602,7839=>602,7840=>602,7841=>602,7852=>602,\n7853=>602,7856=>602,7857=>602,7862=>602,7863=>602,7864=>602,7865=>602,7868=>602,7869=>602,7878=>602,\n7879=>602,7882=>602,7883=>602,7884=>602,7885=>602,7896=>602,7897=>602,7898=>602,7899=>602,7900=>602,\n7901=>602,7904=>602,7905=>602,7906=>602,7907=>602,7908=>602,7909=>602,7912=>602,7913=>602,7914=>602,\n7915=>602,7918=>602,7919=>602,7920=>602,7921=>602,7922=>602,7923=>602,7924=>602,7925=>602,7928=>602,\n7929=>602,7936=>602,7937=>602,7938=>602,7939=>602,7940=>602,7941=>602,7942=>602,7943=>602,7944=>602,\n7945=>602,7946=>602,7947=>602,7948=>602,7949=>602,7950=>602,7951=>602,7952=>602,7953=>602,7954=>602,\n7955=>602,7956=>602,7957=>602,7960=>602,7961=>602,7962=>602,7963=>602,7964=>602,7965=>602,7968=>602,\n7969=>602,7970=>602,7971=>602,7972=>602,7973=>602,7974=>602,7975=>602,7976=>602,7977=>602,7978=>602,\n7979=>602,7980=>602,7981=>602,7982=>602,7983=>602,7984=>602,7985=>602,7986=>602,7987=>602,7988=>602,\n7989=>602,7990=>602,7991=>602,7992=>602,7993=>602,7994=>602,7995=>602,7996=>602,7997=>602,7998=>602,\n7999=>602,8000=>602,8001=>602,8002=>602,8003=>602,8004=>602,8005=>602,8008=>602,8009=>602,8010=>602,\n8011=>602,8012=>602,8013=>602,8016=>602,8017=>602,8018=>602,8019=>602,8020=>602,8021=>602,8022=>602,\n8023=>602,8025=>602,8027=>602,8029=>602,8031=>602,8032=>602,8033=>602,8034=>602,8035=>602,8036=>602,\n8037=>602,8038=>602,8039=>602,8040=>602,8041=>602,8042=>602,8043=>602,8044=>602,8045=>602,8046=>602,\n8047=>602,8048=>602,8049=>602,8050=>602,8051=>602,8052=>602,8053=>602,8054=>602,8055=>602,8056=>602,\n8057=>602,8058=>602,8059=>602,8060=>602,8061=>602,8064=>602,8065=>602,8066=>602,8067=>602,8068=>602,\n8069=>602,8070=>602,8071=>602,8072=>602,8073=>602,8074=>602,8075=>602,8076=>602,8077=>602,8078=>602,\n8079=>602,8080=>602,8081=>602,8082=>602,8083=>602,8084=>602,8085=>602,8086=>602,8087=>602,8088=>602,\n8089=>602,8090=>602,8091=>602,8092=>602,8093=>602,8094=>602,8095=>602,8096=>602,8097=>602,8098=>602,\n8099=>602,8100=>602,8101=>602,8102=>602,8103=>602,8104=>602,8105=>602,8106=>602,8107=>602,8108=>602,\n8109=>602,8110=>602,8111=>602,8112=>602,8113=>602,8114=>602,8115=>602,8116=>602,8118=>602,8119=>602,\n8120=>602,8121=>602,8122=>602,8123=>602,8124=>602,8125=>602,8126=>602,8127=>602,8128=>602,8129=>602,\n8130=>602,8131=>602,8132=>602,8134=>602,8135=>602,8136=>602,8137=>602,8138=>602,8139=>602,8140=>602,\n8141=>602,8142=>602,8143=>602,8144=>602,8145=>602,8146=>602,8147=>602,8150=>602,8151=>602,8152=>602,\n8153=>602,8154=>602,8155=>602,8157=>602,8158=>602,8159=>602,8160=>602,8161=>602,8162=>602,8163=>602,\n8164=>602,8165=>602,8166=>602,8167=>602,8168=>602,8169=>602,8170=>602,8171=>602,8172=>602,8173=>602,\n8174=>602,8175=>602,8178=>602,8179=>602,8180=>602,8182=>602,8183=>602,8184=>602,8185=>602,8186=>602,\n8187=>602,8188=>602,8189=>602,8190=>602,8192=>602,8193=>602,8194=>602,8195=>602,8196=>602,8197=>602,\n8198=>602,8199=>602,8200=>602,8201=>602,8202=>602,8208=>602,8209=>602,8210=>602,8213=>602,8215=>602,\n8219=>602,8223=>602,8227=>602,8239=>602,8241=>602,8242=>602,8243=>602,8244=>602,8245=>602,8246=>602,\n8247=>602,8252=>602,8253=>602,8254=>602,8261=>602,8262=>602,8263=>602,8264=>602,8265=>602,8287=>602,\n8304=>602,8305=>602,8308=>602,8309=>602,8310=>602,8311=>602,8312=>602,8313=>602,8314=>602,8315=>602,\n8316=>602,8317=>602,8318=>602,8319=>602,8320=>602,8321=>602,8322=>602,8323=>602,8324=>602,8325=>602,\n8326=>602,8327=>602,8328=>602,8329=>602,8330=>602,8331=>602,8332=>602,8333=>602,8334=>602,8336=>602,\n8337=>602,8338=>602,8339=>602,8340=>602,8352=>602,8353=>602,8354=>602,8355=>602,8356=>602,8357=>602,\n8358=>602,8359=>602,8360=>602,8361=>602,8362=>602,8363=>602,8365=>602,8366=>602,8367=>602,8368=>602,\n8369=>602,8370=>602,8371=>602,8372=>602,8373=>602,8450=>602,8453=>602,8461=>602,8462=>602,8463=>602,\n8469=>602,8470=>602,8471=>602,8473=>602,8474=>602,8477=>602,8484=>602,8486=>602,8490=>602,8491=>602,\n8494=>602,8531=>602,8532=>602,8533=>602,8534=>602,8535=>602,8536=>602,8537=>602,8538=>602,8539=>602,\n8540=>602,8541=>602,8542=>602,8543=>602,8592=>602,8593=>602,8594=>602,8595=>602,8596=>602,8597=>602,\n8598=>602,8599=>602,8600=>602,8601=>602,8602=>602,8603=>602,8604=>602,8605=>602,8606=>602,8607=>602,\n8608=>602,8609=>602,8610=>602,8611=>602,8612=>602,8613=>602,8614=>602,8615=>602,8616=>602,8617=>602,\n8618=>602,8619=>602,8620=>602,8621=>602,8622=>602,8623=>602,8624=>602,8625=>602,8626=>602,8627=>602,\n8628=>602,8629=>602,8630=>602,8631=>602,8632=>602,8633=>602,8634=>602,8635=>602,8636=>602,8637=>602,\n8638=>602,8639=>602,8640=>602,8641=>602,8642=>602,8643=>602,8644=>602,8645=>602,8646=>602,8647=>602,\n8648=>602,8649=>602,8650=>602,8651=>602,8652=>602,8653=>602,8654=>602,8655=>602,8656=>602,8657=>602,\n8658=>602,8659=>602,8660=>602,8661=>602,8662=>602,8663=>602,8664=>602,8665=>602,8666=>602,8667=>602,\n8668=>602,8669=>602,8670=>602,8671=>602,8672=>602,8673=>602,8674=>602,8675=>602,8676=>602,8677=>602,\n8678=>602,8679=>602,8680=>602,8681=>602,8682=>602,8683=>602,8684=>602,8685=>602,8686=>602,8687=>602,\n8688=>602,8689=>602,8690=>602,8691=>602,8692=>602,8693=>602,8694=>602,8695=>602,8696=>602,8697=>602,\n8698=>602,8699=>602,8700=>602,8701=>602,8702=>602,8703=>602,8704=>602,8705=>602,8706=>602,8707=>602,\n8708=>602,8709=>602,8710=>602,8711=>602,8712=>602,8713=>602,8714=>602,8715=>602,8716=>602,8717=>602,\n8719=>602,8721=>602,8722=>602,8723=>602,8725=>602,8727=>602,8728=>602,8729=>602,8730=>602,8731=>602,\n8732=>602,8733=>602,8734=>602,8735=>602,8736=>602,8743=>602,8744=>602,8745=>602,8746=>602,8747=>602,\n8748=>602,8749=>602,8760=>602,8761=>602,8762=>602,8763=>602,8764=>602,8765=>602,8769=>602,8770=>602,\n8771=>602,8772=>602,8773=>602,8774=>602,8775=>602,8776=>602,8777=>602,8778=>602,8779=>602,8780=>602,\n8781=>602,8782=>602,8783=>602,8784=>602,8785=>602,8786=>602,8787=>602,8788=>602,8789=>602,8790=>602,\n8791=>602,8792=>602,8793=>602,8794=>602,8795=>602,8796=>602,8797=>602,8798=>602,8799=>602,8800=>602,\n8801=>602,8802=>602,8803=>602,8804=>602,8805=>602,8806=>602,8807=>602,8808=>602,8809=>602,8813=>602,\n8814=>602,8815=>602,8816=>602,8817=>602,8818=>602,8819=>602,8820=>602,8821=>602,8822=>602,8823=>602,\n8824=>602,8825=>602,8826=>602,8827=>602,8828=>602,8829=>602,8830=>602,8831=>602,8832=>602,8833=>602,\n8834=>602,8835=>602,8836=>602,8837=>602,8838=>602,8839=>602,8840=>602,8841=>602,8842=>602,8843=>602,\n8847=>602,8848=>602,8849=>602,8850=>602,8853=>602,8854=>602,8855=>602,8856=>602,8857=>602,8858=>602,\n8859=>602,8860=>602,8861=>602,8862=>602,8863=>602,8864=>602,8865=>602,8901=>602,8902=>602,8909=>602,\n8922=>602,8923=>602,8924=>602,8925=>602,8926=>602,8927=>602,8928=>602,8929=>602,8930=>602,8931=>602,\n8932=>602,8933=>602,8934=>602,8935=>602,8936=>602,8937=>602,8943=>602,8960=>602,8961=>602,8962=>602,\n8963=>602,8964=>602,8965=>602,8966=>602,8968=>602,8969=>602,8970=>602,8971=>602,8972=>602,8973=>602,\n8974=>602,8975=>602,8976=>602,8977=>602,8978=>602,8979=>602,8980=>602,8981=>602,8984=>602,8985=>602,\n8988=>602,8989=>602,8990=>602,8991=>602,8992=>602,8993=>602,8997=>602,8998=>602,8999=>602,9000=>602,\n9003=>602,9013=>602,9015=>602,9016=>602,9017=>602,9018=>602,9019=>602,9020=>602,9021=>602,9022=>602,\n9025=>602,9026=>602,9027=>602,9028=>602,9031=>602,9032=>602,9033=>602,9035=>602,9036=>602,9037=>602,\n9040=>602,9042=>602,9043=>602,9044=>602,9047=>602,9048=>602,9049=>602,9050=>602,9051=>602,9052=>602,\n9054=>602,9055=>602,9056=>602,9059=>602,9060=>602,9061=>602,9064=>602,9065=>602,9067=>602,9068=>602,\n9069=>602,9070=>602,9071=>602,9072=>602,9075=>602,9076=>602,9077=>602,9078=>602,9079=>602,9080=>602,\n9081=>602,9082=>602,9085=>602,9088=>602,9089=>602,9090=>602,9091=>602,9096=>602,9097=>602,9098=>602,\n9099=>602,9109=>602,9115=>602,9116=>602,9117=>602,9118=>602,9119=>602,9120=>602,9121=>602,9122=>602,\n9123=>602,9124=>602,9125=>602,9126=>602,9127=>602,9128=>602,9129=>602,9130=>602,9131=>602,9132=>602,\n9133=>602,9134=>602,9166=>602,9167=>602,9251=>602,9472=>602,9473=>602,9474=>602,9475=>602,9476=>602,\n9477=>602,9478=>602,9479=>602,9480=>602,9481=>602,9482=>602,9483=>602,9484=>602,9485=>602,9486=>602,\n9487=>602,9488=>602,9489=>602,9490=>602,9491=>602,9492=>602,9493=>602,9494=>602,9495=>602,9496=>602,\n9497=>602,9498=>602,9499=>602,9500=>602,9501=>602,9502=>602,9503=>602,9504=>602,9505=>602,9506=>602,\n9507=>602,9508=>602,9509=>602,9510=>602,9511=>602,9512=>602,9513=>602,9514=>602,9515=>602,9516=>602,\n9517=>602,9518=>602,9519=>602,9520=>602,9521=>602,9522=>602,9523=>602,9524=>602,9525=>602,9526=>602,\n9527=>602,9528=>602,9529=>602,9530=>602,9531=>602,9532=>602,9533=>602,9534=>602,9535=>602,9536=>602,\n9537=>602,9538=>602,9539=>602,9540=>602,9541=>602,9542=>602,9543=>602,9544=>602,9545=>602,9546=>602,\n9547=>602,9548=>602,9549=>602,9550=>602,9551=>602,9552=>602,9553=>602,9554=>602,9555=>602,9556=>602,\n9557=>602,9558=>602,9559=>602,9560=>602,9561=>602,9562=>602,9563=>602,9564=>602,9565=>602,9566=>602,\n9567=>602,9568=>602,9569=>602,9570=>602,9571=>602,9572=>602,9573=>602,9574=>602,9575=>602,9576=>602,\n9577=>602,9578=>602,9579=>602,9580=>602,9581=>602,9582=>602,9583=>602,9584=>602,9585=>602,9586=>602,\n9587=>602,9588=>602,9589=>602,9590=>602,9591=>602,9592=>602,9593=>602,9594=>602,9595=>602,9596=>602,\n9597=>602,9598=>602,9599=>602,9600=>602,9601=>602,9602=>602,9603=>602,9604=>602,9605=>602,9606=>602,\n9607=>602,9608=>602,9609=>602,9610=>602,9611=>602,9612=>602,9613=>602,9614=>602,9615=>602,9616=>602,\n9617=>602,9618=>602,9619=>602,9620=>602,9621=>602,9622=>602,9623=>602,9624=>602,9625=>602,9626=>602,\n9627=>602,9628=>602,9629=>602,9630=>602,9631=>602,9632=>602,9633=>602,9634=>602,9635=>602,9636=>602,\n9637=>602,9638=>602,9639=>602,9640=>602,9641=>602,9642=>602,9643=>602,9644=>602,9645=>602,9646=>602,\n9647=>602,9648=>602,9649=>602,9650=>602,9651=>602,9652=>602,9653=>602,9654=>602,9655=>602,9656=>602,\n9657=>602,9658=>602,9659=>602,9660=>602,9661=>602,9662=>602,9663=>602,9664=>602,9665=>602,9666=>602,\n9667=>602,9668=>602,9669=>602,9670=>602,9671=>602,9672=>602,9673=>602,9674=>602,9675=>602,9676=>602,\n9677=>602,9678=>602,9679=>602,9680=>602,9681=>602,9682=>602,9683=>602,9684=>602,9685=>602,9686=>602,\n9687=>602,9688=>602,9689=>602,9690=>602,9691=>602,9692=>602,9693=>602,9694=>602,9695=>602,9696=>602,\n9697=>602,9698=>602,9699=>602,9700=>602,9701=>602,9702=>602,9703=>602,9704=>602,9705=>602,9706=>602,\n9707=>602,9708=>602,9709=>602,9710=>602,9711=>602,9712=>602,9713=>602,9714=>602,9715=>602,9716=>602,\n9717=>602,9718=>602,9719=>602,9720=>602,9721=>602,9722=>602,9723=>602,9724=>602,9725=>602,9726=>602,\n9727=>602,9728=>602,9784=>602,9785=>602,9786=>602,9787=>602,9788=>602,9791=>602,9792=>602,9793=>602,\n9794=>602,9795=>602,9796=>602,9797=>602,9798=>602,9799=>602,9824=>602,9825=>602,9826=>602,9827=>602,\n9828=>602,9829=>602,9830=>602,9831=>602,9833=>602,9834=>602,9835=>602,9836=>602,9837=>602,9838=>602,\n9839=>602,10181=>602,10182=>602,10208=>602,10216=>602,10217=>602,10731=>602,10746=>602,10747=>602,10799=>602,\n11026=>602,11027=>602,11028=>602,11029=>602,11030=>602,11031=>602,11032=>602,11033=>602,11034=>602,11364=>602,\n11374=>602,11375=>602,11381=>602,11382=>602,11383=>602,11385=>602,11386=>602,11388=>602,11389=>602,11800=>602,\n11810=>602,11811=>602,11812=>602,11813=>602,11822=>602,42760=>602,42761=>602,42762=>602,42763=>602,42764=>602,\n42765=>602,42766=>602,42767=>602,42768=>602,42769=>602,42770=>602,42771=>602,42772=>602,42773=>602,42774=>602,\n42779=>602,42780=>602,42781=>602,42782=>602,42783=>602,42790=>602,42791=>602,42889=>602,42890=>602,42891=>602,\n42892=>602,63173=>602,64257=>602,64258=>602,65529=>602,65530=>602,65531=>602,65532=>602,65533=>602);\n$enc='';\n$diff='';\n$file='dejavusansmonoi.z';\n$ctg='dejavusansmonoi.ctg.z';\n$originalsize=229284;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavuserif.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='DejaVuSerif';\n$desc=array('Ascent'=>928,'Descent'=>-236,'CapHeight'=>6,'Flags'=>32,'FontBBox'=>'[-770 -347 1679 1242]','ItalicAngle'=>0,'StemV'=>70,'MissingWidth'=>600);\n$up=-63;\n$ut=44;\n$dw=600;\n$cw=array(\n0=>600,32=>318,33=>402,34=>460,35=>838,36=>636,37=>950,38=>890,39=>275,40=>390,\n41=>390,42=>500,43=>838,44=>318,45=>338,46=>318,47=>337,48=>636,49=>636,50=>636,\n51=>636,52=>636,53=>636,54=>636,55=>636,56=>636,57=>636,58=>337,59=>337,60=>838,\n61=>838,62=>838,63=>536,64=>1000,65=>722,66=>735,67=>765,68=>802,69=>730,70=>694,\n71=>799,72=>872,73=>395,74=>401,75=>747,76=>664,77=>1024,78=>875,79=>820,80=>673,\n81=>820,82=>753,83=>685,84=>667,85=>843,86=>722,87=>1028,88=>712,89=>660,90=>695,\n91=>390,92=>337,93=>390,94=>838,95=>500,96=>500,97=>596,98=>640,99=>560,100=>640,\n101=>592,102=>370,103=>640,104=>644,105=>320,106=>310,107=>606,108=>320,109=>948,110=>644,\n111=>602,112=>640,113=>640,114=>478,115=>513,116=>402,117=>644,118=>565,119=>856,120=>564,\n121=>565,122=>527,123=>636,124=>337,125=>636,126=>838,8364=>636,8218=>318,402=>370,8222=>518,\n8230=>1000,8224=>500,8225=>500,710=>500,8240=>1342,352=>685,8249=>400,338=>1137,381=>695,8216=>318,\n8217=>318,8220=>511,8221=>511,8226=>590,8211=>500,8212=>1000,732=>500,8482=>1000,353=>513,8250=>400,\n339=>989,382=>527,376=>660,160=>318,161=>402,162=>636,163=>636,164=>636,165=>636,166=>337,\n167=>500,168=>500,169=>1000,170=>475,171=>612,172=>838,173=>338,174=>1000,175=>500,176=>500,\n177=>838,178=>401,179=>401,180=>500,181=>650,182=>636,183=>318,184=>500,185=>401,186=>470,\n187=>612,188=>969,189=>969,190=>969,191=>536,192=>722,193=>722,194=>722,195=>722,196=>722,\n197=>722,198=>1001,199=>765,200=>730,201=>730,202=>730,203=>730,204=>395,205=>395,206=>395,\n207=>395,208=>807,209=>875,210=>820,211=>820,212=>820,213=>820,214=>820,215=>838,216=>820,\n217=>843,218=>843,219=>843,220=>843,221=>660,222=>676,223=>668,224=>596,225=>596,226=>596,\n227=>596,228=>596,229=>596,230=>940,231=>560,232=>592,233=>592,234=>592,235=>592,236=>320,\n237=>320,238=>320,239=>320,240=>602,241=>644,242=>602,243=>602,244=>602,245=>602,246=>602,\n247=>838,248=>602,249=>644,250=>644,251=>644,252=>644,253=>565,254=>640,255=>565,256=>722,\n257=>596,258=>722,259=>596,260=>722,261=>596,262=>765,263=>560,264=>765,265=>560,266=>765,\n267=>560,268=>765,269=>560,270=>802,271=>640,272=>807,273=>640,274=>730,275=>592,276=>730,\n277=>592,278=>730,279=>592,280=>730,281=>592,282=>730,283=>592,284=>799,285=>640,286=>799,\n287=>640,288=>799,289=>640,290=>799,291=>640,292=>872,293=>644,294=>872,295=>644,296=>395,\n297=>320,298=>395,299=>320,300=>395,301=>320,302=>395,303=>320,304=>395,305=>320,306=>801,\n307=>533,308=>401,309=>310,310=>747,311=>606,312=>606,313=>664,314=>320,315=>664,316=>320,\n317=>664,318=>320,319=>664,320=>320,321=>669,322=>324,323=>875,324=>644,325=>875,326=>644,\n327=>875,328=>644,329=>866,330=>843,331=>644,332=>820,333=>602,334=>820,335=>602,336=>820,\n337=>602,340=>753,341=>478,342=>753,343=>478,344=>753,345=>478,346=>685,347=>513,348=>685,\n349=>513,350=>685,351=>513,354=>667,355=>402,356=>667,357=>402,358=>667,359=>402,360=>843,\n361=>644,362=>843,363=>644,364=>843,365=>644,366=>843,367=>644,368=>843,369=>644,370=>843,\n371=>644,372=>1028,373=>856,374=>660,375=>565,377=>695,378=>527,379=>695,380=>527,383=>370,\n384=>640,385=>735,386=>735,387=>640,388=>735,389=>640,390=>765,391=>765,392=>560,393=>807,\n394=>802,395=>735,396=>640,397=>602,398=>730,399=>820,400=>623,401=>694,403=>799,404=>712,\n405=>932,406=>395,407=>395,408=>747,409=>606,410=>320,411=>634,412=>948,413=>875,414=>644,\n415=>820,416=>820,417=>602,418=>1040,419=>807,420=>673,421=>640,422=>753,423=>685,424=>513,\n425=>707,426=>324,427=>402,428=>667,429=>402,430=>667,431=>843,432=>644,433=>829,434=>760,\n435=>738,436=>663,437=>695,438=>527,439=>564,440=>564,441=>564,443=>636,444=>687,445=>564,\n446=>536,448=>295,449=>492,450=>459,451=>295,452=>1497,453=>1329,454=>1167,455=>1065,456=>974,\n457=>630,458=>1276,459=>1185,460=>954,461=>722,462=>596,463=>395,464=>320,465=>820,466=>602,\n467=>843,468=>644,469=>843,470=>644,471=>843,472=>644,473=>843,474=>644,475=>843,476=>644,\n477=>592,478=>722,479=>596,480=>722,481=>596,482=>1001,483=>940,484=>848,485=>640,486=>799,\n487=>640,488=>747,489=>606,490=>820,491=>602,492=>820,493=>602,494=>564,495=>564,496=>320,\n497=>1497,498=>1329,499=>1167,500=>799,501=>640,502=>1154,504=>875,505=>644,506=>722,507=>596,\n508=>1001,509=>940,510=>820,511=>602,512=>722,513=>596,514=>722,515=>596,516=>730,517=>592,\n518=>730,519=>592,520=>395,521=>320,522=>395,523=>320,524=>820,525=>602,526=>820,527=>602,\n528=>753,529=>478,530=>753,531=>478,532=>843,533=>644,534=>843,535=>644,536=>685,537=>513,\n538=>667,539=>402,540=>627,541=>521,542=>872,543=>644,544=>843,545=>814,548=>695,549=>527,\n550=>722,551=>596,552=>730,553=>592,554=>820,555=>602,556=>820,557=>602,558=>820,559=>602,\n560=>820,561=>602,562=>660,563=>565,564=>500,565=>832,566=>494,567=>310,568=>960,569=>960,\n570=>722,571=>765,572=>560,573=>664,574=>667,575=>513,576=>527,577=>583,578=>464,581=>722,\n592=>596,593=>640,594=>640,595=>640,596=>560,597=>560,598=>647,599=>683,600=>592,601=>592,\n602=>843,603=>518,604=>509,605=>773,606=>613,607=>315,608=>683,609=>640,610=>544,611=>712,\n612=>564,613=>644,614=>644,615=>644,616=>320,617=>392,618=>320,619=>380,620=>454,621=>363,\n622=>704,623=>948,624=>948,625=>948,626=>644,627=>694,628=>646,629=>602,630=>790,631=>647,\n632=>602,633=>501,634=>501,635=>551,636=>478,637=>478,638=>453,639=>453,640=>594,641=>594,\n642=>513,643=>271,644=>370,645=>487,646=>324,647=>402,648=>402,649=>644,650=>620,651=>608,\n652=>565,653=>856,654=>565,655=>655,656=>597,657=>560,658=>564,659=>560,660=>536,661=>536,\n662=>536,663=>513,664=>820,665=>563,666=>613,667=>654,668=>667,669=>366,670=>606,671=>646,\n672=>683,673=>536,674=>536,675=>996,676=>1033,677=>998,678=>809,679=>598,680=>782,681=>894,\n682=>646,683=>676,684=>598,685=>443,686=>781,687=>767,688=>433,689=>430,690=>264,691=>347,\n692=>347,693=>430,694=>392,695=>585,696=>423,697=>278,699=>318,700=>318,701=>318,702=>307,\n703=>307,704=>280,705=>281,711=>500,712=>275,713=>500,716=>275,720=>337,721=>337,722=>307,\n723=>307,726=>329,728=>500,729=>500,730=>500,731=>500,733=>500,734=>417,736=>447,737=>243,\n738=>337,739=>424,740=>281,741=>493,742=>493,743=>493,744=>493,745=>493,750=>484,768=>0,\n769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,\n779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,\n789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,\n799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,\n809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,\n819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,\n829=>0,830=>0,831=>0,835=>0,847=>0,856=>0,865=>0,880=>740,881=>531,884=>278,\n885=>278,890=>500,891=>560,892=>560,893=>560,894=>337,900=>500,901=>500,902=>722,903=>318,\n904=>900,905=>1039,906=>562,908=>835,910=>897,911=>853,912=>392,913=>722,914=>735,915=>694,\n916=>722,917=>730,918=>695,919=>872,920=>820,921=>395,922=>747,923=>722,924=>1024,925=>875,\n926=>704,927=>820,928=>872,929=>673,931=>707,932=>667,933=>660,934=>820,935=>712,936=>877,\n937=>829,938=>395,939=>660,940=>675,941=>518,942=>599,943=>392,944=>608,945=>675,946=>578,\n947=>598,948=>602,949=>518,950=>542,951=>599,952=>602,953=>392,954=>625,955=>634,956=>650,\n957=>608,958=>551,959=>602,960=>657,961=>588,962=>560,963=>683,964=>553,965=>608,966=>700,\n967=>606,968=>784,969=>815,970=>392,971=>608,972=>602,973=>608,974=>815,976=>583,977=>715,\n978=>687,979=>874,980=>687,981=>682,982=>815,983=>624,984=>820,985=>602,986=>765,987=>560,\n988=>694,989=>463,990=>590,991=>660,992=>782,993=>577,1008=>624,1009=>588,1010=>560,1011=>310,\n1012=>820,1013=>560,1014=>560,1015=>676,1016=>640,1017=>765,1018=>1024,1019=>708,1020=>588,1021=>765,\n1022=>765,1023=>765,1024=>730,1025=>730,1026=>799,1027=>662,1028=>765,1029=>685,1030=>395,1031=>395,\n1032=>401,1033=>1084,1034=>1118,1035=>872,1036=>774,1037=>872,1038=>723,1039=>872,1040=>757,1041=>735,\n1042=>735,1043=>662,1044=>813,1045=>730,1046=>1124,1047=>623,1048=>872,1049=>872,1050=>774,1051=>834,\n1052=>1024,1053=>872,1054=>820,1055=>872,1056=>673,1057=>765,1058=>667,1059=>723,1060=>830,1061=>712,\n1062=>872,1063=>773,1064=>1141,1065=>1141,1066=>794,1067=>984,1068=>674,1069=>765,1070=>1193,1071=>808,\n1072=>596,1073=>602,1074=>563,1075=>524,1076=>616,1077=>592,1078=>920,1079=>545,1080=>667,1081=>667,\n1082=>625,1083=>635,1084=>778,1085=>667,1086=>602,1087=>667,1088=>640,1089=>560,1090=>553,1091=>588,\n1092=>783,1093=>564,1094=>643,1095=>661,1096=>930,1097=>930,1098=>636,1099=>796,1100=>544,1101=>560,\n1102=>871,1103=>631,1104=>592,1105=>592,1106=>624,1107=>524,1108=>560,1109=>513,1110=>320,1111=>320,\n1112=>310,1113=>843,1114=>860,1115=>644,1116=>625,1117=>667,1118=>588,1119=>656,1122=>762,1123=>603,\n1124=>1129,1125=>834,1130=>1124,1131=>920,1136=>944,1137=>902,1138=>820,1139=>552,1140=>859,1141=>678,\n1164=>707,1165=>544,1168=>672,1169=>529,1170=>662,1171=>523,1172=>728,1173=>614,1174=>1124,1175=>920,\n1176=>636,1177=>537,1178=>774,1179=>606,1182=>774,1183=>625,1184=>891,1185=>717,1186=>872,1187=>641,\n1188=>1139,1189=>852,1190=>1205,1191=>941,1194=>765,1195=>560,1196=>667,1197=>553,1198=>660,1199=>565,\n1200=>660,1201=>565,1202=>712,1203=>564,1204=>952,1205=>732,1206=>749,1207=>690,1210=>749,1211=>644,\n1216=>395,1217=>1124,1218=>920,1219=>747,1220=>606,1223=>872,1224=>667,1227=>749,1228=>667,1231=>320,\n1232=>757,1233=>596,1234=>757,1235=>596,1236=>1001,1237=>940,1238=>730,1239=>592,1240=>820,1241=>592,\n1242=>820,1243=>592,1244=>1124,1245=>920,1246=>623,1247=>545,1248=>564,1249=>564,1250=>872,1251=>667,\n1252=>872,1253=>667,1254=>820,1255=>602,1256=>820,1257=>602,1258=>820,1259=>602,1260=>765,1261=>560,\n1262=>723,1263=>588,1264=>723,1265=>588,1266=>723,1267=>588,1268=>773,1269=>661,1270=>662,1271=>524,\n1272=>984,1273=>796,1296=>623,1297=>545,1298=>834,1299=>635,1300=>1198,1301=>919,1306=>820,1307=>640,\n1308=>1028,1309=>856,4256=>723,4257=>850,4258=>828,4259=>859,4260=>733,4261=>981,4262=>916,4263=>1101,\n4264=>566,4265=>750,4266=>962,4267=>941,4268=>743,4269=>1075,4270=>896,4271=>829,4272=>1040,4273=>733,\n4274=>669,4275=>1015,4276=>937,4277=>1020,4278=>731,4279=>733,4280=>732,4281=>733,4282=>879,4283=>937,\n4284=>714,4285=>755,4286=>733,4287=>958,4288=>1000,4289=>702,4290=>864,4291=>734,4292=>837,4293=>951,\n4304=>541,4305=>571,4306=>589,4307=>833,4308=>561,4309=>557,4310=>618,4311=>861,4312=>560,4313=>546,\n4314=>1066,4315=>586,4316=>586,4317=>825,4318=>570,4319=>581,4320=>824,4321=>607,4322=>748,4323=>698,\n4324=>815,4325=>585,4326=>858,4327=>568,4328=>594,4329=>586,4330=>675,4331=>587,4332=>582,4333=>576,\n4334=>612,4335=>683,4336=>572,4337=>603,4338=>571,4339=>572,4340=>570,4341=>649,4342=>886,4343=>626,\n4344=>582,4345=>619,4346=>571,4347=>437,4348=>354,7426=>940,7432=>509,7433=>320,7444=>989,7446=>602,\n7447=>602,7453=>737,7454=>948,7455=>948,7468=>455,7469=>630,7470=>463,7472=>505,7473=>459,7474=>459,\n7475=>503,7476=>549,7477=>249,7478=>252,7479=>470,7480=>418,7481=>645,7482=>551,7483=>551,7484=>516,\n7486=>424,7487=>474,7488=>420,7489=>531,7490=>647,7491=>386,7492=>386,7493=>400,7494=>618,7495=>400,\n7496=>400,7497=>387,7498=>387,7499=>340,7500=>340,7501=>400,7502=>175,7503=>365,7504=>613,7505=>399,\n7506=>385,7507=>346,7508=>385,7509=>385,7510=>400,7511=>247,7512=>399,7513=>464,7514=>613,7515=>373,\n7522=>201,7523=>347,7524=>399,7525=>373,7543=>640,7544=>549,7547=>372,7557=>320,7579=>400,7580=>346,\n7581=>346,7582=>385,7583=>340,7584=>222,7585=>229,7586=>400,7587=>399,7588=>234,7589=>244,7590=>234,\n7591=>234,7592=>230,7593=>175,7594=>175,7595=>367,7596=>613,7597=>613,7598=>407,7599=>404,7600=>399,\n7601=>385,7602=>385,7603=>328,7604=>211,7605=>247,7606=>399,7607=>389,7609=>376,7610=>373,7611=>331,\n7612=>331,7613=>331,7614=>364,7615=>385,7620=>0,7621=>0,7622=>0,7623=>0,7624=>0,7625=>0,\n7680=>722,7681=>596,7682=>735,7683=>640,7684=>735,7685=>640,7686=>735,7687=>640,7688=>765,7689=>560,\n7690=>802,7691=>640,7692=>802,7693=>640,7694=>802,7695=>640,7696=>802,7697=>640,7698=>802,7699=>640,\n7700=>730,7701=>592,7702=>730,7703=>592,7704=>730,7705=>592,7706=>730,7707=>592,7708=>730,7709=>592,\n7710=>694,7711=>370,7712=>799,7713=>640,7714=>872,7715=>644,7716=>872,7717=>644,7718=>872,7719=>644,\n7720=>872,7721=>644,7722=>872,7723=>644,7724=>395,7725=>320,7728=>747,7729=>606,7730=>747,7731=>606,\n7732=>747,7733=>606,7734=>664,7735=>320,7736=>664,7737=>320,7738=>664,7739=>320,7740=>664,7741=>320,\n7742=>1024,7743=>948,7744=>1024,7745=>948,7746=>1024,7747=>948,7748=>875,7749=>644,7750=>875,7751=>644,\n7752=>875,7753=>644,7754=>875,7755=>644,7756=>820,7757=>602,7760=>820,7761=>602,7762=>820,7763=>602,\n7764=>673,7765=>640,7766=>673,7767=>640,7768=>753,7769=>478,7770=>753,7771=>478,7772=>753,7773=>478,\n7774=>753,7775=>478,7776=>685,7777=>513,7778=>685,7779=>513,7784=>685,7785=>513,7786=>667,7787=>402,\n7788=>667,7789=>402,7790=>667,7791=>402,7792=>667,7793=>402,7794=>843,7795=>644,7796=>843,7797=>644,\n7798=>843,7799=>644,7800=>843,7801=>644,7802=>843,7803=>644,7804=>722,7805=>565,7806=>722,7807=>565,\n7808=>1028,7809=>856,7810=>1028,7811=>856,7812=>1028,7813=>856,7814=>1028,7815=>856,7816=>1028,7817=>856,\n7818=>712,7819=>564,7820=>712,7821=>564,7822=>660,7823=>565,7824=>695,7825=>527,7826=>695,7827=>527,\n7828=>695,7829=>527,7830=>644,7831=>402,7832=>856,7833=>565,7834=>903,7835=>370,7838=>829,7839=>602,\n7840=>722,7841=>596,7842=>722,7843=>596,7852=>722,7853=>596,7854=>722,7855=>596,7856=>722,7857=>596,\n7858=>722,7859=>596,7860=>722,7861=>596,7862=>722,7863=>596,7864=>730,7865=>592,7866=>730,7867=>592,\n7868=>730,7869=>592,7878=>730,7879=>592,7880=>395,7881=>320,7882=>395,7883=>320,7884=>820,7885=>602,\n7886=>820,7887=>602,7896=>820,7897=>602,7908=>843,7909=>644,7910=>843,7911=>644,7922=>660,7923=>565,\n7924=>660,7925=>565,7926=>660,7927=>565,7928=>660,7929=>565,7936=>675,7937=>675,7938=>675,7939=>675,\n7940=>675,7941=>675,7942=>675,7943=>675,7944=>722,7945=>722,7946=>869,7947=>869,7948=>734,7949=>763,\n7950=>722,7951=>722,7952=>537,7953=>537,7954=>537,7955=>537,7956=>537,7957=>537,7960=>853,7961=>841,\n7962=>1067,7963=>1077,7964=>1008,7965=>1035,7968=>599,7969=>599,7970=>599,7971=>599,7972=>599,7973=>599,\n7974=>599,7975=>599,7976=>998,7977=>992,7978=>1212,7979=>1224,7980=>1159,7981=>1183,7982=>1098,7983=>1095,\n7984=>392,7985=>392,7986=>392,7987=>392,7988=>392,7989=>392,7990=>392,7991=>392,7992=>521,7993=>512,\n7994=>735,7995=>738,7996=>679,7997=>706,7998=>624,7999=>615,8000=>602,8001=>602,8002=>602,8003=>602,\n8004=>602,8005=>602,8008=>820,8009=>859,8010=>1120,8011=>1127,8012=>937,8013=>964,8016=>608,8017=>608,\n8018=>608,8019=>608,8020=>608,8021=>608,8022=>608,8023=>608,8025=>851,8027=>1079,8029=>1044,8031=>953,\n8032=>815,8033=>815,8034=>815,8035=>815,8036=>815,8037=>815,8038=>815,8039=>815,8040=>829,8041=>870,\n8042=>1131,8043=>1137,8044=>946,8045=>976,8046=>938,8047=>970,8048=>675,8049=>675,8050=>537,8051=>537,\n8052=>599,8053=>599,8054=>392,8055=>392,8056=>602,8057=>602,8058=>608,8059=>608,8060=>815,8061=>815,\n8064=>675,8065=>675,8066=>675,8067=>675,8068=>675,8069=>675,8070=>675,8071=>675,8072=>722,8073=>722,\n8074=>869,8075=>869,8076=>734,8077=>763,8078=>722,8079=>722,8080=>599,8081=>599,8082=>599,8083=>599,\n8084=>599,8085=>599,8086=>599,8087=>599,8088=>998,8089=>992,8090=>1212,8091=>1224,8092=>1159,8093=>1183,\n8094=>1098,8095=>1095,8096=>815,8097=>815,8098=>815,8099=>815,8100=>815,8101=>815,8102=>815,8103=>815,\n8104=>829,8105=>870,8106=>1131,8107=>1137,8108=>946,8109=>976,8110=>938,8111=>970,8112=>675,8113=>675,\n8114=>675,8115=>675,8116=>675,8118=>675,8119=>675,8120=>722,8121=>722,8122=>722,8123=>722,8124=>722,\n8125=>500,8126=>500,8127=>500,8128=>500,8129=>500,8130=>599,8131=>599,8132=>599,8134=>599,8135=>599,\n8136=>912,8137=>900,8138=>1063,8139=>1039,8140=>872,8141=>500,8142=>500,8143=>500,8144=>392,8145=>392,\n8146=>392,8147=>392,8150=>392,8151=>392,8152=>395,8153=>395,8154=>588,8155=>562,8157=>500,8158=>500,\n8159=>500,8160=>608,8161=>608,8162=>608,8163=>608,8164=>588,8165=>588,8166=>608,8167=>608,8168=>660,\n8169=>660,8170=>921,8171=>897,8172=>790,8173=>500,8174=>500,8175=>500,8178=>815,8179=>815,8180=>815,\n8182=>815,8183=>815,8184=>961,8185=>835,8186=>984,8187=>853,8188=>829,8189=>500,8190=>500,8192=>500,\n8193=>1000,8194=>500,8195=>1000,8196=>330,8197=>250,8198=>167,8199=>636,8200=>318,8201=>200,8202=>100,\n8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>338,8209=>338,8210=>636,8213=>1000,8214=>500,\n8215=>500,8219=>318,8223=>511,8227=>590,8228=>334,8229=>667,8234=>0,8235=>0,8236=>0,8237=>0,\n8238=>0,8239=>200,8241=>1734,8242=>227,8243=>374,8244=>520,8245=>227,8246=>374,8247=>520,8248=>339,\n8252=>527,8253=>536,8254=>500,8258=>1000,8260=>167,8261=>390,8262=>390,8263=>976,8264=>753,8265=>753,\n8267=>636,8268=>500,8269=>500,8270=>500,8271=>337,8273=>500,8274=>450,8275=>1000,8279=>663,8287=>222,\n8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8298=>0,8299=>0,8300=>0,8301=>0,8302=>0,\n8303=>0,8304=>401,8305=>201,8308=>401,8309=>401,8310=>401,8311=>401,8312=>401,8313=>401,8314=>528,\n8315=>528,8316=>528,8317=>246,8318=>246,8319=>433,8320=>401,8321=>401,8322=>401,8323=>401,8324=>401,\n8325=>401,8326=>401,8327=>401,8328=>401,8329=>401,8330=>528,8331=>528,8332=>528,8333=>246,8334=>246,\n8336=>386,8337=>387,8338=>385,8339=>424,8340=>387,8358=>660,8367=>1057,8369=>706,8372=>780,8373=>636,\n8450=>796,8451=>1119,8457=>1047,8461=>945,8462=>644,8463=>644,8469=>914,8470=>946,8473=>752,8474=>871,\n8477=>831,8484=>730,8486=>829,8487=>829,8490=>747,8491=>722,8508=>732,8509=>660,8510=>710,8511=>944,\n8512=>714,8513=>775,8514=>557,8515=>557,8516=>611,8517=>867,8518=>699,8519=>636,8520=>380,8521=>362,\n8523=>890,8531=>969,8532=>969,8533=>969,8534=>969,8535=>969,8536=>969,8537=>969,8538=>969,8539=>969,\n8540=>969,8541=>969,8542=>969,8543=>568,8544=>395,8545=>590,8546=>786,8547=>966,8548=>722,8549=>981,\n8550=>1176,8551=>1372,8552=>932,8553=>712,8554=>932,8555=>1127,8556=>664,8557=>765,8558=>802,8559=>1024,\n8560=>320,8561=>640,8562=>959,8563=>885,8564=>565,8565=>885,8566=>1205,8567=>1524,8568=>884,8569=>564,\n8570=>884,8571=>1204,8572=>320,8573=>560,8574=>640,8575=>948,8576=>1206,8577=>802,8578=>1206,8579=>765,\n8580=>560,8592=>838,8593=>838,8594=>838,8595=>838,8596=>838,8597=>838,8598=>838,8599=>838,8600=>838,\n8601=>838,8602=>838,8603=>838,8604=>838,8605=>838,8606=>838,8607=>838,8608=>838,8609=>838,8610=>838,\n8611=>838,8612=>838,8613=>838,8614=>838,8615=>838,8616=>838,8617=>838,8618=>838,8619=>838,8620=>838,\n8621=>838,8622=>838,8623=>838,8624=>838,8625=>838,8626=>838,8627=>838,8628=>838,8629=>838,8630=>838,\n8631=>838,8632=>838,8633=>838,8634=>838,8635=>838,8636=>838,8637=>838,8638=>838,8639=>838,8640=>838,\n8641=>838,8642=>838,8643=>838,8644=>838,8645=>838,8646=>838,8647=>838,8648=>838,8649=>838,8650=>838,\n8651=>838,8652=>838,8653=>838,8654=>838,8655=>838,8656=>838,8657=>838,8658=>838,8659=>838,8660=>838,\n8661=>838,8662=>838,8663=>838,8664=>838,8665=>838,8666=>838,8667=>838,8668=>838,8669=>838,8670=>838,\n8671=>838,8672=>838,8673=>838,8674=>838,8675=>838,8676=>838,8677=>838,8678=>838,8679=>838,8680=>838,\n8681=>838,8682=>838,8683=>838,8684=>838,8685=>838,8686=>838,8687=>838,8688=>838,8689=>838,8690=>838,\n8691=>838,8692=>838,8693=>838,8694=>838,8695=>838,8696=>838,8697=>838,8698=>838,8699=>838,8700=>838,\n8701=>838,8702=>838,8703=>838,8704=>604,8706=>517,8707=>542,8708=>542,8710=>698,8711=>698,8712=>740,\n8713=>740,8715=>740,8716=>740,8719=>796,8720=>796,8721=>714,8722=>838,8723=>838,8724=>838,8725=>337,\n8727=>680,8728=>490,8729=>490,8730=>637,8731=>637,8732=>637,8733=>677,8734=>833,8735=>838,8736=>838,\n8739=>291,8740=>479,8741=>462,8742=>634,8743=>732,8744=>732,8745=>838,8746=>838,8747=>521,8748=>852,\n8749=>1182,8760=>838,8761=>838,8762=>838,8763=>838,8764=>838,8765=>838,8770=>838,8771=>838,8776=>838,\n8784=>838,8785=>838,8786=>838,8787=>838,8788=>1033,8789=>1033,8800=>838,8801=>838,8804=>838,8805=>838,\n8834=>838,8835=>838,8836=>838,8837=>838,8838=>838,8839=>838,8844=>838,8845=>838,8846=>838,8847=>846,\n8848=>846,8849=>846,8850=>846,8851=>838,8852=>838,8853=>838,8854=>838,8855=>838,8856=>838,8857=>838,\n8858=>838,8859=>838,8860=>838,8861=>838,8862=>838,8863=>838,8864=>838,8865=>838,8866=>860,8867=>860,\n8868=>940,8869=>940,8870=>567,8871=>567,8872=>860,8873=>860,8874=>860,8875=>1031,8876=>860,8877=>860,\n8878=>860,8879=>1031,8901=>342,8962=>764,8968=>390,8969=>390,8970=>390,8971=>390,8976=>838,8977=>513,\n8984=>1000,8985=>838,8992=>521,8993=>521,8997=>1000,9000=>1443,9085=>919,9134=>521,9167=>945,9251=>764,\n9472=>602,9473=>602,9474=>602,9475=>602,9476=>602,9477=>602,9478=>602,9479=>602,9480=>602,9481=>602,\n9482=>602,9483=>602,9484=>602,9485=>602,9486=>602,9487=>602,9488=>602,9489=>602,9490=>602,9491=>602,\n9492=>602,9493=>602,9494=>602,9495=>602,9496=>602,9497=>602,9498=>602,9499=>602,9500=>602,9501=>602,\n9502=>602,9503=>602,9504=>602,9505=>602,9506=>602,9507=>602,9508=>602,9509=>602,9510=>602,9511=>602,\n9512=>602,9513=>602,9514=>602,9515=>602,9516=>602,9517=>602,9518=>602,9519=>602,9520=>602,9521=>602,\n9522=>602,9523=>602,9524=>602,9525=>602,9526=>602,9527=>602,9528=>602,9529=>602,9530=>602,9531=>602,\n9532=>602,9533=>602,9534=>602,9535=>602,9536=>602,9537=>602,9538=>602,9539=>602,9540=>602,9541=>602,\n9542=>602,9543=>602,9544=>602,9545=>602,9546=>602,9547=>602,9548=>602,9549=>602,9550=>602,9551=>602,\n9552=>602,9553=>602,9554=>602,9555=>602,9556=>602,9557=>602,9558=>602,9559=>602,9560=>602,9561=>602,\n9562=>602,9563=>602,9564=>602,9565=>602,9566=>602,9567=>602,9568=>602,9569=>602,9570=>602,9571=>602,\n9572=>602,9573=>602,9574=>602,9575=>602,9576=>602,9577=>602,9578=>602,9579=>602,9580=>602,9581=>602,\n9582=>602,9583=>602,9584=>602,9585=>602,9586=>602,9587=>602,9588=>602,9589=>602,9590=>602,9591=>602,\n9592=>602,9593=>602,9594=>602,9595=>602,9596=>602,9597=>602,9598=>602,9599=>602,9600=>769,9601=>769,\n9602=>769,9603=>769,9604=>769,9605=>769,9606=>769,9607=>769,9608=>769,9609=>769,9610=>769,9611=>769,\n9612=>769,9613=>769,9614=>769,9615=>769,9616=>769,9617=>769,9618=>769,9619=>769,9620=>769,9621=>769,\n9622=>769,9623=>769,9624=>769,9625=>769,9626=>769,9627=>769,9628=>769,9629=>769,9630=>769,9631=>769,\n9632=>945,9633=>945,9634=>945,9635=>945,9636=>945,9637=>945,9638=>945,9639=>945,9640=>945,9641=>945,\n9642=>678,9643=>678,9644=>945,9645=>945,9646=>550,9647=>550,9648=>769,9649=>769,9650=>769,9651=>769,\n9652=>502,9653=>502,9654=>769,9655=>769,9656=>502,9657=>502,9658=>769,9659=>769,9660=>769,9661=>769,\n9662=>502,9663=>502,9664=>769,9665=>769,9666=>502,9667=>502,9668=>769,9669=>769,9670=>769,9671=>769,\n9672=>769,9673=>873,9674=>494,9675=>873,9676=>873,9677=>873,9678=>873,9679=>873,9680=>873,9681=>873,\n9682=>873,9683=>873,9684=>873,9685=>873,9686=>527,9687=>527,9688=>791,9689=>970,9690=>970,9691=>970,\n9692=>387,9693=>387,9694=>387,9695=>387,9696=>873,9697=>873,9698=>769,9699=>769,9700=>769,9701=>769,\n9702=>590,9703=>945,9704=>945,9705=>945,9706=>945,9707=>945,9708=>769,9709=>769,9710=>769,9711=>1119,\n9712=>945,9713=>945,9714=>945,9715=>945,9716=>873,9717=>873,9718=>873,9719=>873,9720=>769,9721=>769,\n9722=>769,9723=>830,9724=>830,9725=>732,9726=>732,9727=>769,9728=>896,9784=>896,9785=>896,9786=>896,\n9787=>896,9788=>896,9791=>614,9792=>731,9793=>731,9794=>896,9795=>896,9796=>896,9797=>896,9798=>896,\n9799=>896,9824=>896,9825=>896,9826=>896,9827=>896,9828=>896,9829=>896,9830=>896,9831=>896,9833=>472,\n9834=>638,9835=>896,9836=>896,9837=>472,9838=>357,9839=>484,10145=>838,10181=>390,10182=>390,10208=>494,\n10216=>390,10217=>390,10224=>838,10225=>838,10226=>838,10227=>838,10228=>1033,10229=>1434,10230=>1434,10231=>1434,\n10232=>1434,10233=>1434,10234=>1434,10235=>1434,10236=>1434,10237=>1434,10238=>1434,10239=>1434,10240=>732,10241=>732,\n10242=>732,10243=>732,10244=>732,10245=>732,10246=>732,10247=>732,10248=>732,10249=>732,10250=>732,10251=>732,\n10252=>732,10253=>732,10254=>732,10255=>732,10256=>732,10257=>732,10258=>732,10259=>732,10260=>732,10261=>732,\n10262=>732,10263=>732,10264=>732,10265=>732,10266=>732,10267=>732,10268=>732,10269=>732,10270=>732,10271=>732,\n10272=>732,10273=>732,10274=>732,10275=>732,10276=>732,10277=>732,10278=>732,10279=>732,10280=>732,10281=>732,\n10282=>732,10283=>732,10284=>732,10285=>732,10286=>732,10287=>732,10288=>732,10289=>732,10290=>732,10291=>732,\n10292=>732,10293=>732,10294=>732,10295=>732,10296=>732,10297=>732,10298=>732,10299=>732,10300=>732,10301=>732,\n10302=>732,10303=>732,10304=>732,10305=>732,10306=>732,10307=>732,10308=>732,10309=>732,10310=>732,10311=>732,\n10312=>732,10313=>732,10314=>732,10315=>732,10316=>732,10317=>732,10318=>732,10319=>732,10320=>732,10321=>732,\n10322=>732,10323=>732,10324=>732,10325=>732,10326=>732,10327=>732,10328=>732,10329=>732,10330=>732,10331=>732,\n10332=>732,10333=>732,10334=>732,10335=>732,10336=>732,10337=>732,10338=>732,10339=>732,10340=>732,10341=>732,\n10342=>732,10343=>732,10344=>732,10345=>732,10346=>732,10347=>732,10348=>732,10349=>732,10350=>732,10351=>732,\n10352=>732,10353=>732,10354=>732,10355=>732,10356=>732,10357=>732,10358=>732,10359=>732,10360=>732,10361=>732,\n10362=>732,10363=>732,10364=>732,10365=>732,10366=>732,10367=>732,10368=>732,10369=>732,10370=>732,10371=>732,\n10372=>732,10373=>732,10374=>732,10375=>732,10376=>732,10377=>732,10378=>732,10379=>732,10380=>732,10381=>732,\n10382=>732,10383=>732,10384=>732,10385=>732,10386=>732,10387=>732,10388=>732,10389=>732,10390=>732,10391=>732,\n10392=>732,10393=>732,10394=>732,10395=>732,10396=>732,10397=>732,10398=>732,10399=>732,10400=>732,10401=>732,\n10402=>732,10403=>732,10404=>732,10405=>732,10406=>732,10407=>732,10408=>732,10409=>732,10410=>732,10411=>732,\n10412=>732,10413=>732,10414=>732,10415=>732,10416=>732,10417=>732,10418=>732,10419=>732,10420=>732,10421=>732,\n10422=>732,10423=>732,10424=>732,10425=>732,10426=>732,10427=>732,10428=>732,10429=>732,10430=>732,10431=>732,\n10432=>732,10433=>732,10434=>732,10435=>732,10436=>732,10437=>732,10438=>732,10439=>732,10440=>732,10441=>732,\n10442=>732,10443=>732,10444=>732,10445=>732,10446=>732,10447=>732,10448=>732,10449=>732,10450=>732,10451=>732,\n10452=>732,10453=>732,10454=>732,10455=>732,10456=>732,10457=>732,10458=>732,10459=>732,10460=>732,10461=>732,\n10462=>732,10463=>732,10464=>732,10465=>732,10466=>732,10467=>732,10468=>732,10469=>732,10470=>732,10471=>732,\n10472=>732,10473=>732,10474=>732,10475=>732,10476=>732,10477=>732,10478=>732,10479=>732,10480=>732,10481=>732,\n10482=>732,10483=>732,10484=>732,10485=>732,10486=>732,10487=>732,10488=>732,10489=>732,10490=>732,10491=>732,\n10492=>732,10493=>732,10494=>732,10495=>732,10496=>838,10497=>838,10498=>838,10499=>838,10500=>838,10501=>838,\n10502=>838,10503=>838,10504=>838,10505=>838,10506=>838,10507=>838,10508=>838,10509=>838,10510=>838,10511=>838,\n10512=>838,10513=>838,10514=>838,10515=>838,10516=>838,10517=>838,10518=>838,10519=>838,10520=>838,10521=>838,\n10522=>838,10523=>838,10524=>838,10525=>838,10526=>838,10527=>838,10528=>838,10529=>838,10530=>838,10531=>838,\n10532=>838,10533=>838,10534=>838,10535=>838,10536=>838,10537=>838,10538=>838,10539=>838,10540=>838,10541=>838,\n10542=>838,10543=>838,10544=>838,10545=>838,10546=>838,10547=>838,10548=>838,10549=>838,10550=>838,10551=>838,\n10552=>838,10553=>838,10554=>838,10555=>838,10556=>838,10557=>838,10558=>838,10559=>838,10560=>838,10561=>838,\n10562=>838,10563=>838,10564=>838,10565=>838,10566=>838,10567=>838,10568=>838,10569=>838,10570=>838,10571=>838,\n10572=>838,10573=>838,10574=>838,10575=>838,10576=>838,10577=>838,10578=>838,10579=>838,10580=>838,10581=>838,\n10582=>838,10583=>838,10584=>838,10585=>838,10586=>838,10587=>838,10588=>838,10589=>838,10590=>838,10591=>838,\n10592=>838,10593=>838,10594=>838,10595=>838,10596=>838,10597=>838,10598=>838,10599=>838,10600=>838,10601=>838,\n10602=>838,10603=>838,10604=>838,10605=>838,10606=>838,10607=>838,10608=>838,10609=>838,10610=>838,10611=>838,\n10612=>838,10613=>838,10614=>838,10615=>981,10616=>838,10617=>838,10618=>984,10619=>838,10620=>838,10621=>838,\n10622=>838,10623=>838,10731=>494,10764=>1513,10765=>521,10766=>521,10799=>838,11008=>838,11009=>838,11010=>838,\n11011=>838,11012=>838,11013=>838,11014=>838,11015=>838,11016=>838,11017=>838,11018=>838,11019=>838,11020=>838,\n11021=>838,11022=>838,11023=>838,11024=>838,11025=>838,11026=>945,11027=>945,11028=>945,11029=>945,11030=>769,\n11031=>769,11032=>769,11033=>769,11034=>945,11364=>753,11367=>872,11368=>644,11369=>747,11370=>606,11371=>695,\n11372=>527,11374=>1024,11375=>722,11381=>740,11382=>556,11383=>700,11385=>501,11386=>602,11388=>264,11389=>455,\n11520=>773,11521=>635,11522=>633,11523=>658,11524=>631,11525=>962,11526=>756,11527=>960,11528=>617,11529=>646,\n11530=>962,11531=>632,11532=>646,11533=>962,11534=>645,11535=>866,11536=>961,11537=>645,11538=>645,11539=>959,\n11540=>945,11541=>863,11542=>644,11543=>646,11544=>645,11545=>649,11546=>688,11547=>634,11548=>982,11549=>681,\n11550=>676,11551=>852,11552=>957,11553=>632,11554=>645,11555=>646,11556=>749,11557=>914,11800=>536,11810=>390,\n11811=>390,11812=>390,11813=>390,11822=>536,42564=>685,42565=>513,42566=>395,42567=>392,42576=>1104,42577=>888,\n42580=>1193,42581=>871,42582=>1140,42583=>899,42760=>493,42761=>493,42762=>493,42763=>493,42764=>493,42765=>493,\n42766=>493,42767=>493,42768=>493,42769=>493,42770=>493,42771=>493,42772=>493,42773=>493,42774=>493,42779=>369,\n42780=>369,42781=>253,42782=>253,42783=>253,42891=>402,42892=>275,62464=>654,62465=>665,62466=>714,62467=>947,\n62468=>665,62469=>659,62470=>725,62471=>986,62472=>665,62473=>665,62474=>1257,62475=>683,62476=>682,62477=>953,\n62478=>665,62479=>682,62480=>999,62481=>746,62482=>798,62483=>748,62484=>944,62485=>681,62486=>936,62487=>680,\n62488=>688,62489=>682,62490=>729,62491=>682,62492=>688,62493=>666,62494=>729,62495=>884,62496=>665,62497=>706,\n62498=>666,62499=>665,62500=>665,62501=>722,62502=>961,62504=>904,63173=>602,63185=>500,63188=>500,64256=>710,\n64257=>667,64258=>667,64259=>1028,64260=>1030,64261=>771,64262=>933,65024=>0,65025=>0,65026=>0,65027=>0,\n65028=>0,65029=>0,65030=>0,65031=>0,65032=>0,65033=>0,65034=>0,65035=>0,65036=>0,65037=>0,\n65038=>0,65039=>0,65529=>0,65530=>0,65531=>0,65532=>0,65533=>1025);\n$enc='';\n$diff='';\n$file='dejavuserif.z';\n$ctg='dejavuserif.ctg.z';\n$originalsize=328908;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavuserifb.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='DejaVuSerif-Bold';\n$desc=array('Ascent'=>939,'Descent'=>-236,'CapHeight'=>5,'Flags'=>32,'FontBBox'=>'[-836 -389 1796 1235]','ItalicAngle'=>0,'StemV'=>120,'MissingWidth'=>600);\n$up=-63;\n$ut=44;\n$dw=600;\n$cw=array(\n0=>600,32=>348,33=>439,34=>521,35=>838,36=>696,37=>950,38=>903,39=>306,40=>473,\n41=>473,42=>523,43=>838,44=>348,45=>415,46=>348,47=>365,48=>696,49=>696,50=>696,\n51=>696,52=>696,53=>696,54=>696,55=>696,56=>696,57=>696,58=>369,59=>369,60=>838,\n61=>838,62=>838,63=>586,64=>1000,65=>776,66=>845,67=>796,68=>867,69=>762,70=>710,\n71=>854,72=>945,73=>468,74=>473,75=>869,76=>703,77=>1107,78=>914,79=>871,80=>752,\n81=>871,82=>831,83=>722,84=>744,85=>872,86=>776,87=>1123,88=>776,89=>714,90=>730,\n91=>473,92=>365,93=>473,94=>838,95=>500,96=>500,97=>648,98=>699,99=>609,100=>699,\n101=>636,102=>430,103=>699,104=>727,105=>380,106=>362,107=>693,108=>380,109=>1058,110=>727,\n111=>667,112=>699,113=>699,114=>527,115=>563,116=>462,117=>727,118=>581,119=>861,120=>596,\n121=>581,122=>568,123=>643,124=>364,125=>643,126=>838,8364=>696,8218=>348,402=>430,8222=>575,\n8230=>1000,8224=>523,8225=>523,710=>500,8240=>1385,352=>722,8249=>400,338=>1180,381=>730,8216=>348,\n8217=>348,8220=>575,8221=>575,8226=>639,8211=>500,8212=>1000,732=>500,8482=>1000,353=>563,8250=>400,\n339=>1028,382=>568,376=>714,160=>348,161=>439,162=>696,163=>696,164=>636,165=>696,166=>364,\n167=>523,168=>500,169=>1000,170=>487,171=>625,172=>838,173=>415,174=>1000,175=>500,176=>500,\n177=>838,178=>438,179=>438,180=>500,181=>732,182=>636,183=>348,184=>500,185=>438,186=>500,\n187=>625,188=>1043,189=>1043,190=>1043,191=>586,192=>776,193=>776,194=>776,195=>776,196=>776,\n197=>776,198=>1034,199=>796,200=>762,201=>762,202=>762,203=>762,204=>468,205=>468,206=>468,\n207=>468,208=>874,209=>914,210=>871,211=>871,212=>871,213=>871,214=>871,215=>838,216=>871,\n217=>872,218=>872,219=>872,220=>872,221=>714,222=>757,223=>760,224=>648,225=>648,226=>648,\n227=>648,228=>648,229=>648,230=>975,231=>609,232=>636,233=>636,234=>636,235=>636,236=>380,\n237=>380,238=>380,239=>380,240=>667,241=>727,242=>667,243=>667,244=>667,245=>667,246=>667,\n247=>838,248=>667,249=>727,250=>727,251=>727,252=>727,253=>581,254=>699,255=>581,256=>776,\n257=>648,258=>776,259=>648,260=>776,261=>648,262=>796,263=>609,264=>796,265=>609,266=>796,\n267=>609,268=>796,269=>609,270=>867,271=>699,272=>874,273=>699,274=>762,275=>636,276=>762,\n277=>636,278=>762,279=>636,280=>762,281=>636,282=>762,283=>636,284=>854,285=>699,286=>854,\n287=>699,288=>854,289=>699,290=>854,291=>699,292=>945,293=>727,294=>945,295=>727,296=>468,\n297=>380,298=>468,299=>380,300=>468,301=>380,302=>468,303=>380,304=>468,305=>380,306=>942,\n307=>751,308=>473,309=>362,310=>869,311=>693,312=>693,313=>703,314=>380,315=>703,316=>380,\n317=>703,318=>380,319=>703,320=>380,321=>710,322=>385,323=>914,324=>727,325=>914,326=>727,\n327=>914,328=>727,329=>1008,330=>872,331=>727,332=>871,333=>667,334=>871,335=>667,336=>871,\n337=>667,340=>831,341=>527,342=>831,343=>527,344=>831,345=>527,346=>722,347=>563,348=>722,\n349=>563,350=>722,351=>563,354=>744,355=>462,356=>744,357=>462,358=>744,359=>462,360=>872,\n361=>727,362=>872,363=>727,364=>872,365=>727,366=>872,367=>727,368=>872,369=>727,370=>872,\n371=>727,372=>1123,373=>861,374=>714,375=>581,377=>730,378=>568,379=>730,380=>568,383=>430,\n384=>699,385=>845,386=>854,387=>699,388=>854,389=>699,390=>796,391=>796,392=>609,393=>874,\n394=>867,395=>854,396=>699,397=>667,398=>762,399=>871,400=>721,401=>710,403=>854,404=>771,\n405=>1043,406=>468,407=>468,408=>869,409=>693,410=>380,411=>701,412=>1058,413=>914,414=>727,\n415=>871,416=>871,417=>667,418=>1200,419=>943,420=>752,421=>699,422=>831,423=>722,424=>563,\n425=>707,426=>331,427=>462,428=>744,429=>462,430=>744,431=>872,432=>727,433=>890,434=>890,\n435=>714,436=>708,437=>730,438=>568,439=>657,440=>657,441=>657,443=>696,444=>754,445=>568,\n446=>536,448=>295,449=>492,450=>459,451=>295,452=>1597,453=>1435,454=>1267,455=>1176,456=>1065,\n457=>742,458=>1387,459=>1276,460=>1089,461=>776,462=>648,463=>468,464=>380,465=>871,466=>667,\n467=>872,468=>727,469=>872,470=>727,471=>872,472=>727,473=>872,474=>727,475=>872,476=>727,\n477=>636,478=>776,479=>648,480=>776,481=>648,482=>1034,483=>975,484=>896,485=>699,486=>854,\n487=>699,488=>869,489=>693,490=>871,491=>667,492=>871,493=>667,494=>657,495=>568,496=>380,\n497=>1597,498=>1435,499=>1267,500=>854,501=>699,502=>1221,504=>914,505=>727,506=>776,507=>648,\n508=>1034,509=>975,510=>871,511=>667,512=>776,513=>648,514=>776,515=>648,516=>762,517=>636,\n518=>762,519=>636,520=>468,521=>380,522=>468,523=>380,524=>871,525=>667,526=>871,527=>667,\n528=>831,529=>527,530=>831,531=>527,532=>872,533=>727,534=>872,535=>727,536=>722,537=>563,\n538=>744,539=>462,540=>690,541=>607,542=>945,543=>727,544=>872,545=>791,548=>730,549=>568,\n550=>776,551=>648,552=>762,553=>636,554=>871,555=>667,556=>871,557=>667,558=>871,559=>667,\n560=>871,561=>667,562=>714,563=>581,564=>573,565=>922,566=>564,567=>362,568=>1031,569=>1031,\n570=>776,571=>796,572=>609,573=>703,574=>744,575=>563,576=>568,577=>660,578=>547,581=>776,\n592=>648,593=>699,594=>699,595=>699,596=>609,597=>609,598=>699,599=>730,600=>636,601=>636,\n602=>907,603=>608,604=>562,605=>907,606=>720,607=>387,608=>699,609=>699,610=>626,611=>712,\n612=>627,613=>727,614=>727,615=>727,616=>380,617=>380,618=>380,619=>409,620=>514,621=>380,\n622=>795,623=>1058,624=>1058,625=>1058,626=>727,627=>727,628=>712,629=>667,630=>1061,631=>749,\n632=>667,633=>571,634=>571,635=>571,636=>527,637=>527,638=>452,639=>487,640=>801,641=>801,\n642=>563,643=>331,644=>430,645=>540,646=>331,647=>492,648=>462,649=>727,650=>679,651=>694,\n652=>641,653=>907,654=>635,655=>727,656=>568,657=>568,658=>568,659=>568,660=>536,661=>536,\n662=>536,663=>545,664=>871,665=>695,666=>720,667=>626,668=>732,669=>384,670=>740,671=>646,\n672=>699,673=>536,674=>536,675=>1117,676=>1179,677=>1117,678=>911,679=>715,680=>909,681=>1039,\n682=>790,683=>795,684=>662,685=>443,686=>613,687=>717,688=>521,689=>519,690=>313,691=>414,\n692=>414,693=>480,694=>527,695=>662,696=>485,697=>302,699=>348,700=>348,701=>348,702=>366,\n703=>366,704=>313,705=>313,711=>500,712=>282,713=>500,716=>282,720=>369,721=>369,722=>366,\n723=>366,726=>392,728=>500,729=>500,730=>500,731=>500,733=>500,734=>417,736=>458,737=>292,\n738=>395,739=>475,740=>313,741=>500,742=>500,743=>500,744=>500,745=>500,750=>553,768=>0,\n769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,\n779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,\n789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,\n799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,\n809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,\n819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,\n829=>0,830=>0,831=>0,835=>0,847=>0,856=>0,865=>0,880=>779,881=>576,884=>302,\n885=>302,890=>500,891=>609,892=>609,893=>609,894=>369,900=>500,901=>500,902=>776,903=>348,\n904=>947,905=>1118,906=>662,908=>887,910=>953,911=>911,912=>484,913=>776,914=>845,915=>710,\n916=>776,917=>762,918=>730,919=>945,920=>871,921=>468,922=>869,923=>776,924=>1107,925=>914,\n926=>704,927=>871,928=>944,929=>752,931=>707,932=>744,933=>714,934=>871,935=>776,936=>913,\n937=>890,938=>468,939=>714,940=>770,941=>608,942=>727,943=>484,944=>694,945=>770,946=>664,\n947=>660,948=>667,949=>608,950=>592,951=>727,952=>667,953=>484,954=>750,955=>701,956=>732,\n957=>694,958=>592,959=>667,960=>732,961=>665,962=>609,963=>737,964=>673,965=>694,966=>905,\n967=>658,968=>941,969=>952,970=>484,971=>694,972=>667,973=>694,974=>952,976=>667,977=>849,\n978=>764,979=>969,980=>764,981=>941,982=>952,983=>655,984=>871,985=>667,986=>796,987=>609,\n988=>710,989=>527,990=>590,991=>660,992=>796,993=>667,1008=>655,1009=>665,1010=>609,1011=>362,\n1012=>871,1013=>609,1014=>609,1015=>757,1016=>699,1017=>796,1018=>1107,1019=>860,1020=>692,1021=>796,\n1022=>796,1023=>796,1024=>762,1025=>762,1026=>901,1027=>690,1028=>795,1029=>722,1030=>468,1031=>468,\n1032=>473,1033=>1202,1034=>1262,1035=>963,1036=>910,1037=>945,1038=>812,1039=>945,1040=>814,1041=>854,\n1042=>845,1043=>690,1044=>889,1045=>762,1046=>1312,1047=>721,1048=>945,1049=>945,1050=>910,1051=>884,\n1052=>1107,1053=>945,1054=>871,1055=>944,1056=>752,1057=>796,1058=>744,1059=>812,1060=>949,1061=>776,\n1062=>966,1063=>913,1064=>1268,1065=>1293,1066=>957,1067=>1202,1068=>825,1069=>795,1070=>1287,1071=>882,\n1072=>648,1073=>667,1074=>695,1075=>613,1076=>667,1077=>636,1078=>1010,1079=>638,1080=>742,1081=>742,\n1082=>722,1083=>705,1084=>869,1085=>732,1086=>667,1087=>732,1088=>699,1089=>609,1090=>620,1091=>640,\n1092=>902,1093=>596,1094=>739,1095=>732,1096=>1075,1097=>1082,1098=>767,1099=>1002,1100=>679,1101=>609,\n1102=>1025,1103=>739,1104=>636,1105=>636,1106=>719,1107=>613,1108=>609,1109=>563,1110=>380,1111=>380,\n1112=>362,1113=>988,1114=>1015,1115=>727,1116=>722,1117=>742,1118=>640,1119=>732,1122=>880,1123=>703,\n1124=>1195,1125=>963,1130=>1312,1131=>1010,1136=>1096,1137=>1105,1138=>871,1139=>652,1140=>916,1141=>749,\n1164=>846,1165=>673,1168=>700,1169=>618,1170=>690,1171=>613,1172=>868,1173=>716,1174=>1312,1175=>1010,\n1176=>721,1177=>638,1178=>947,1179=>744,1182=>910,1183=>722,1184=>1041,1185=>827,1186=>966,1187=>739,\n1188=>1167,1189=>956,1190=>1345,1191=>1059,1194=>796,1195=>609,1196=>744,1197=>620,1198=>714,1199=>581,\n1200=>714,1201=>581,1202=>866,1203=>649,1204=>1022,1205=>807,1206=>928,1207=>739,1210=>910,1211=>727,\n1216=>468,1217=>1312,1218=>1010,1219=>869,1220=>693,1223=>945,1224=>732,1227=>913,1228=>732,1231=>380,\n1232=>814,1233=>648,1234=>814,1235=>648,1236=>1034,1237=>975,1238=>762,1239=>636,1240=>871,1241=>636,\n1242=>871,1243=>636,1244=>1312,1245=>1010,1246=>721,1247=>638,1248=>657,1249=>568,1250=>945,1251=>742,\n1252=>945,1253=>742,1254=>871,1255=>667,1256=>871,1257=>667,1258=>871,1259=>667,1260=>795,1261=>609,\n1262=>812,1263=>640,1264=>812,1265=>640,1266=>812,1267=>640,1268=>913,1269=>732,1270=>690,1271=>613,\n1272=>1202,1273=>1002,1296=>721,1297=>638,1298=>884,1299=>705,1300=>1248,1301=>945,1306=>820,1307=>640,\n1308=>1028,1309=>856,4256=>755,4257=>936,4258=>866,4259=>874,4260=>781,4261=>1078,4262=>1014,4263=>1213,\n4264=>643,4265=>818,4266=>1051,4267=>1051,4268=>796,4269=>1135,4270=>969,4271=>902,4272=>1109,4273=>792,\n4274=>756,4275=>1076,4276=>976,4277=>1066,4278=>811,4279=>833,4280=>821,4281=>833,4282=>908,4283=>1077,\n4284=>769,4285=>822,4286=>813,4287=>1111,4288=>1123,4289=>802,4290=>892,4291=>802,4292=>880,4293=>1063,\n4304=>594,4305=>625,4306=>643,4307=>887,4308=>615,4309=>611,4310=>667,4311=>915,4312=>613,4313=>600,\n4314=>1120,4315=>640,4316=>640,4317=>879,4318=>624,4319=>634,4320=>877,4321=>666,4322=>780,4323=>751,\n4324=>869,4325=>639,4326=>912,4327=>622,4328=>647,4329=>640,4330=>729,4331=>641,4332=>630,4333=>629,\n4334=>670,4335=>753,4336=>625,4337=>657,4338=>625,4339=>625,4340=>624,4341=>670,4342=>940,4343=>680,\n4344=>636,4345=>672,4346=>625,4347=>588,4348=>354,7426=>940,7432=>509,7433=>320,7444=>989,7446=>667,\n7447=>667,7453=>737,7454=>948,7455=>948,7468=>489,7469=>651,7470=>532,7472=>546,7473=>480,7474=>480,\n7475=>538,7476=>595,7477=>294,7478=>298,7479=>547,7480=>443,7481=>697,7482=>576,7483=>576,7484=>548,\n7486=>474,7487=>523,7488=>455,7489=>469,7490=>549,7491=>466,7492=>466,7493=>498,7494=>657,7495=>499,\n7496=>498,7497=>444,7498=>444,7499=>412,7500=>412,7501=>498,7502=>300,7503=>523,7504=>729,7505=>473,\n7506=>467,7507=>427,7508=>467,7509=>467,7510=>499,7511=>371,7512=>520,7513=>434,7514=>729,7515=>491,\n7522=>239,7523=>414,7524=>520,7525=>491,7543=>640,7544=>595,7547=>380,7557=>380,7579=>498,7580=>427,\n7581=>427,7582=>467,7583=>412,7584=>383,7585=>373,7586=>498,7587=>522,7588=>300,7589=>307,7590=>300,\n7591=>300,7592=>370,7593=>368,7594=>321,7595=>430,7596=>682,7597=>729,7598=>588,7599=>587,7600=>472,\n7601=>467,7602=>522,7603=>400,7604=>387,7605=>371,7606=>520,7607=>475,7609=>489,7610=>491,7611=>412,\n7612=>527,7613=>412,7614=>452,7615=>467,7620=>0,7621=>0,7622=>0,7623=>0,7624=>0,7625=>0,\n7680=>776,7681=>648,7682=>845,7683=>699,7684=>845,7685=>699,7686=>845,7687=>699,7688=>796,7689=>609,\n7690=>867,7691=>699,7692=>867,7693=>699,7694=>867,7695=>699,7696=>867,7697=>699,7698=>867,7699=>699,\n7700=>762,7701=>636,7702=>762,7703=>636,7704=>762,7705=>636,7706=>762,7707=>636,7708=>762,7709=>636,\n7710=>710,7711=>430,7712=>854,7713=>699,7714=>945,7715=>727,7716=>945,7717=>727,7718=>945,7719=>727,\n7720=>945,7721=>727,7722=>945,7723=>727,7724=>468,7725=>380,7728=>869,7729=>693,7730=>869,7731=>693,\n7732=>869,7733=>693,7734=>703,7735=>380,7736=>703,7737=>380,7738=>703,7739=>380,7740=>703,7741=>380,\n7742=>1107,7743=>1058,7744=>1107,7745=>1058,7746=>1107,7747=>1058,7748=>914,7749=>727,7750=>914,7751=>727,\n7752=>914,7753=>727,7754=>914,7755=>727,7756=>871,7757=>667,7760=>871,7761=>667,7762=>871,7763=>667,\n7764=>752,7765=>699,7766=>752,7767=>699,7768=>831,7769=>527,7770=>831,7771=>527,7772=>831,7773=>527,\n7774=>831,7775=>527,7776=>722,7777=>563,7778=>722,7779=>563,7784=>722,7785=>563,7786=>744,7787=>462,\n7788=>744,7789=>462,7790=>744,7791=>462,7792=>744,7793=>462,7794=>872,7795=>727,7796=>872,7797=>727,\n7798=>872,7799=>727,7800=>872,7801=>727,7802=>872,7803=>727,7804=>776,7805=>581,7806=>776,7807=>581,\n7808=>1123,7809=>861,7810=>1123,7811=>861,7812=>1123,7813=>861,7814=>1123,7815=>861,7816=>1123,7817=>861,\n7818=>776,7819=>596,7820=>776,7821=>596,7822=>714,7823=>581,7824=>730,7825=>568,7826=>730,7827=>568,\n7828=>730,7829=>568,7830=>727,7831=>462,7832=>861,7833=>581,7834=>1014,7835=>430,7838=>947,7839=>667,\n7840=>776,7841=>648,7842=>776,7843=>648,7852=>776,7853=>648,7854=>776,7855=>648,7856=>776,7857=>648,\n7858=>776,7859=>648,7860=>776,7861=>648,7862=>776,7863=>648,7864=>762,7865=>636,7866=>762,7867=>636,\n7868=>762,7869=>636,7878=>762,7879=>636,7880=>468,7881=>380,7882=>468,7883=>380,7884=>871,7885=>667,\n7886=>871,7887=>667,7896=>871,7897=>667,7908=>872,7909=>727,7910=>872,7911=>727,7922=>714,7923=>581,\n7924=>714,7925=>581,7926=>714,7927=>581,7928=>714,7929=>581,7936=>770,7937=>770,7938=>770,7939=>770,\n7940=>770,7941=>770,7942=>770,7943=>770,7944=>776,7945=>776,7946=>978,7947=>978,7948=>832,7949=>849,\n7950=>776,7951=>776,7952=>608,7953=>608,7954=>608,7955=>608,7956=>608,7957=>608,7960=>917,7961=>909,\n7962=>1169,7963=>1169,7964=>1093,7965=>1120,7968=>727,7969=>727,7970=>727,7971=>727,7972=>727,7973=>727,\n7974=>727,7975=>727,7976=>1100,7977=>1094,7978=>1358,7979=>1361,7980=>1279,7981=>1308,7982=>1197,7983=>1194,\n7984=>484,7985=>484,7986=>484,7987=>484,7988=>484,7989=>484,7990=>484,7991=>484,7992=>629,7993=>617,\n7994=>878,7995=>881,7996=>799,7997=>831,7998=>723,7999=>714,8000=>667,8001=>667,8002=>667,8003=>667,\n8004=>667,8005=>667,8008=>900,8009=>935,8010=>1240,8011=>1237,8012=>1035,8013=>1066,8016=>694,8017=>694,\n8018=>694,8019=>694,8020=>694,8021=>694,8022=>694,8023=>694,8025=>922,8027=>1186,8029=>1133,8031=>1019,\n8032=>952,8033=>952,8034=>952,8035=>952,8036=>952,8037=>952,8038=>952,8039=>952,8040=>931,8041=>963,\n8042=>1268,8043=>1274,8044=>1054,8045=>1088,8046=>1023,8047=>1060,8048=>770,8049=>770,8050=>608,8051=>608,\n8052=>727,8053=>727,8054=>484,8055=>484,8056=>667,8057=>667,8058=>694,8059=>694,8060=>952,8061=>952,\n8064=>770,8065=>770,8066=>770,8067=>770,8068=>770,8069=>770,8070=>770,8071=>770,8072=>776,8073=>776,\n8074=>978,8075=>978,8076=>832,8077=>849,8078=>776,8079=>776,8080=>727,8081=>727,8082=>727,8083=>727,\n8084=>727,8085=>727,8086=>727,8087=>727,8088=>1100,8089=>1094,8090=>1358,8091=>1361,8092=>1279,8093=>1308,\n8094=>1197,8095=>1194,8096=>952,8097=>952,8098=>952,8099=>952,8100=>952,8101=>952,8102=>952,8103=>952,\n8104=>931,8105=>963,8106=>1268,8107=>1274,8108=>1054,8109=>1088,8110=>1023,8111=>1060,8112=>770,8113=>770,\n8114=>770,8115=>770,8116=>770,8118=>770,8119=>770,8120=>776,8121=>776,8122=>811,8123=>776,8124=>776,\n8125=>500,8126=>500,8127=>500,8128=>500,8129=>500,8130=>727,8131=>727,8132=>727,8134=>727,8135=>727,\n8136=>1000,8137=>947,8138=>1191,8139=>1118,8140=>945,8141=>500,8142=>500,8143=>500,8144=>484,8145=>484,\n8146=>484,8147=>484,8150=>484,8151=>484,8152=>468,8153=>468,8154=>714,8155=>662,8157=>500,8158=>500,\n8159=>500,8160=>694,8161=>694,8162=>694,8163=>694,8164=>665,8165=>665,8166=>694,8167=>694,8168=>714,\n8169=>714,8170=>1019,8171=>953,8172=>910,8173=>500,8174=>500,8175=>500,8178=>952,8179=>952,8180=>952,\n8182=>952,8183=>952,8184=>1069,8185=>887,8186=>1101,8187=>911,8188=>890,8189=>500,8190=>500,8192=>500,\n8193=>1000,8194=>500,8195=>1000,8196=>330,8197=>250,8198=>167,8199=>696,8200=>348,8201=>200,8202=>100,\n8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>415,8209=>415,8210=>696,8213=>1000,8214=>500,\n8215=>500,8219=>348,8223=>575,8227=>639,8228=>348,8229=>674,8234=>0,8235=>0,8236=>0,8237=>0,\n8238=>0,8239=>200,8241=>1820,8242=>264,8243=>447,8244=>630,8245=>264,8246=>447,8247=>630,8248=>733,\n8252=>629,8253=>586,8254=>500,8258=>1023,8260=>167,8261=>473,8262=>473,8263=>1082,8264=>856,8265=>856,\n8267=>636,8268=>500,8269=>500,8270=>523,8271=>369,8273=>523,8274=>556,8275=>1000,8279=>813,8287=>222,\n8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8298=>0,8299=>0,8300=>0,8301=>0,8302=>0,\n8303=>0,8304=>438,8305=>239,8308=>438,8309=>438,8310=>438,8311=>438,8312=>438,8313=>438,8314=>528,\n8315=>528,8316=>528,8317=>298,8318=>298,8319=>519,8320=>438,8321=>438,8322=>438,8323=>438,8324=>438,\n8325=>438,8326=>438,8327=>438,8328=>438,8329=>438,8330=>528,8331=>528,8332=>528,8333=>298,8334=>298,\n8336=>466,8337=>444,8338=>467,8339=>475,8340=>444,8358=>696,8367=>1155,8369=>790,8372=>876,8373=>696,\n8451=>1198,8457=>1112,8462=>727,8463=>727,8470=>1087,8486=>890,8487=>890,8490=>869,8491=>776,8513=>775,\n8514=>557,8515=>637,8516=>760,8523=>903,8531=>1035,8532=>1035,8533=>1035,8534=>1035,8535=>1035,8536=>1035,\n8537=>1035,8538=>1035,8539=>1035,8540=>1035,8541=>1035,8542=>1035,8543=>615,8544=>468,8545=>736,8546=>1005,\n8547=>1093,8548=>776,8549=>1127,8550=>1396,8551=>1664,8552=>1069,8553=>776,8554=>1078,8555=>1347,8556=>703,\n8557=>796,8558=>867,8559=>1107,8560=>380,8561=>760,8562=>1140,8563=>961,8564=>581,8565=>961,8566=>1341,\n8567=>1721,8568=>976,8569=>596,8570=>976,8571=>1356,8572=>380,8573=>609,8574=>699,8575=>1058,8576=>1255,\n8577=>867,8578=>1268,8579=>796,8580=>609,8592=>838,8593=>838,8594=>838,8595=>838,8596=>838,8597=>838,\n8598=>838,8599=>838,8600=>838,8601=>838,8602=>838,8603=>838,8604=>838,8605=>838,8606=>838,8607=>838,\n8608=>838,8609=>838,8610=>838,8611=>838,8612=>838,8613=>838,8614=>838,8615=>838,8616=>838,8617=>838,\n8618=>838,8619=>838,8620=>838,8621=>838,8622=>838,8623=>850,8624=>838,8625=>838,8626=>838,8627=>838,\n8628=>838,8629=>838,8630=>838,8631=>838,8632=>838,8633=>838,8634=>838,8635=>838,8636=>838,8637=>838,\n8638=>838,8639=>838,8640=>838,8641=>838,8642=>838,8643=>838,8644=>838,8645=>838,8646=>838,8647=>838,\n8648=>838,8649=>838,8650=>838,8651=>838,8652=>838,8653=>838,8654=>838,8655=>838,8656=>838,8657=>838,\n8658=>838,8659=>838,8660=>838,8661=>838,8662=>838,8663=>838,8664=>838,8665=>838,8666=>838,8667=>838,\n8668=>838,8669=>838,8670=>838,8671=>838,8672=>838,8673=>838,8674=>838,8675=>838,8676=>838,8677=>838,\n8678=>838,8679=>838,8680=>838,8681=>838,8682=>838,8683=>838,8684=>838,8685=>838,8686=>838,8687=>838,\n8688=>838,8689=>838,8690=>838,8691=>838,8692=>838,8693=>838,8694=>838,8695=>838,8696=>838,8697=>838,\n8698=>838,8699=>838,8700=>838,8701=>838,8702=>838,8703=>838,8704=>641,8706=>534,8707=>620,8708=>620,\n8710=>753,8711=>753,8712=>740,8713=>740,8715=>740,8716=>740,8719=>842,8720=>842,8721=>753,8722=>838,\n8723=>838,8724=>838,8725=>365,8727=>691,8728=>519,8729=>519,8730=>657,8731=>657,8732=>657,8733=>672,\n8734=>833,8735=>838,8736=>838,8739=>324,8740=>607,8741=>529,8742=>773,8743=>812,8744=>812,8745=>838,\n8746=>838,8747=>579,8748=>1000,8749=>1391,8760=>838,8761=>838,8762=>838,8763=>838,8764=>838,8765=>838,\n8770=>838,8771=>838,8776=>838,8784=>838,8785=>838,8786=>838,8787=>838,8788=>1082,8789=>1082,8800=>838,\n8801=>838,8804=>838,8805=>838,8834=>838,8835=>838,8836=>838,8837=>838,8838=>838,8839=>838,8844=>838,\n8845=>838,8846=>838,8847=>838,8848=>838,8849=>838,8850=>838,8851=>838,8852=>838,8853=>838,8854=>838,\n8855=>838,8856=>838,8857=>838,8858=>838,8859=>838,8860=>838,8861=>838,8862=>838,8863=>838,8864=>838,\n8865=>838,8866=>884,8867=>884,8868=>960,8869=>960,8870=>616,8871=>616,8872=>884,8873=>884,8874=>884,\n8875=>1080,8876=>884,8877=>884,8878=>884,8879=>1080,8901=>398,8962=>834,8968=>473,8969=>473,8970=>473,\n8971=>473,8976=>838,8977=>539,8984=>928,8985=>838,8992=>579,8993=>579,8997=>1000,9000=>1443,9085=>1008,\n9134=>579,9167=>945,9251=>834,9600=>769,9601=>769,9602=>769,9603=>769,9604=>769,9605=>769,9606=>769,\n9607=>769,9608=>769,9609=>769,9610=>769,9611=>769,9612=>769,9613=>769,9614=>769,9615=>769,9616=>769,\n9617=>769,9618=>769,9619=>769,9620=>769,9621=>769,9622=>769,9623=>769,9624=>769,9625=>769,9626=>769,\n9627=>769,9628=>769,9629=>769,9630=>769,9631=>769,9632=>945,9633=>945,9634=>945,9635=>945,9636=>945,\n9637=>945,9638=>945,9639=>945,9640=>945,9641=>945,9642=>678,9643=>678,9644=>945,9645=>945,9646=>550,\n9647=>550,9648=>769,9649=>769,9650=>769,9651=>769,9652=>502,9653=>502,9654=>769,9655=>769,9656=>502,\n9657=>502,9658=>769,9659=>769,9660=>769,9661=>769,9662=>502,9663=>502,9664=>769,9665=>769,9666=>502,\n9667=>502,9668=>769,9669=>769,9670=>769,9671=>769,9672=>769,9673=>873,9674=>494,9675=>873,9676=>873,\n9677=>873,9678=>873,9679=>873,9680=>873,9681=>873,9682=>873,9683=>873,9684=>873,9685=>873,9686=>527,\n9687=>527,9688=>791,9689=>970,9690=>970,9691=>970,9692=>387,9693=>387,9694=>387,9695=>387,9696=>873,\n9697=>873,9698=>769,9699=>769,9700=>769,9701=>769,9702=>590,9703=>945,9704=>945,9705=>945,9706=>945,\n9707=>945,9708=>769,9709=>769,9710=>769,9711=>1119,9712=>945,9713=>945,9714=>945,9715=>945,9716=>873,\n9717=>873,9718=>873,9719=>873,9720=>769,9721=>769,9722=>769,9723=>830,9724=>830,9725=>732,9726=>732,\n9727=>769,9728=>896,9784=>896,9785=>896,9786=>896,9787=>896,9788=>896,9791=>614,9792=>731,9793=>731,\n9794=>896,9795=>896,9796=>896,9797=>896,9798=>896,9799=>896,9824=>896,9825=>896,9826=>896,9827=>896,\n9828=>896,9829=>896,9830=>896,9831=>896,9833=>472,9834=>638,9835=>896,9836=>896,9837=>472,9838=>357,\n9839=>484,10145=>838,10181=>457,10182=>457,10208=>494,10216=>457,10217=>457,10224=>838,10225=>838,10226=>838,\n10227=>838,10228=>1033,10229=>1434,10230=>1434,10231=>1434,10232=>1434,10233=>1434,10234=>1434,10235=>1434,10236=>1434,\n10237=>1434,10238=>1434,10239=>1434,10240=>781,10241=>781,10242=>781,10243=>781,10244=>781,10245=>781,10246=>781,\n10247=>781,10248=>781,10249=>781,10250=>781,10251=>781,10252=>781,10253=>781,10254=>781,10255=>781,10256=>781,\n10257=>781,10258=>781,10259=>781,10260=>781,10261=>781,10262=>781,10263=>781,10264=>781,10265=>781,10266=>781,\n10267=>781,10268=>781,10269=>781,10270=>781,10271=>781,10272=>781,10273=>781,10274=>781,10275=>781,10276=>781,\n10277=>781,10278=>781,10279=>781,10280=>781,10281=>781,10282=>781,10283=>781,10284=>781,10285=>781,10286=>781,\n10287=>781,10288=>781,10289=>781,10290=>781,10291=>781,10292=>781,10293=>781,10294=>781,10295=>781,10296=>781,\n10297=>781,10298=>781,10299=>781,10300=>781,10301=>781,10302=>781,10303=>781,10304=>781,10305=>781,10306=>781,\n10307=>781,10308=>781,10309=>781,10310=>781,10311=>781,10312=>781,10313=>781,10314=>781,10315=>781,10316=>781,\n10317=>781,10318=>781,10319=>781,10320=>781,10321=>781,10322=>781,10323=>781,10324=>781,10325=>781,10326=>781,\n10327=>781,10328=>781,10329=>781,10330=>781,10331=>781,10332=>781,10333=>781,10334=>781,10335=>781,10336=>781,\n10337=>781,10338=>781,10339=>781,10340=>781,10341=>781,10342=>781,10343=>781,10344=>781,10345=>781,10346=>781,\n10347=>781,10348=>781,10349=>781,10350=>781,10351=>781,10352=>781,10353=>781,10354=>781,10355=>781,10356=>781,\n10357=>781,10358=>781,10359=>781,10360=>781,10361=>781,10362=>781,10363=>781,10364=>781,10365=>781,10366=>781,\n10367=>781,10368=>781,10369=>781,10370=>781,10371=>781,10372=>781,10373=>781,10374=>781,10375=>781,10376=>781,\n10377=>781,10378=>781,10379=>781,10380=>781,10381=>781,10382=>781,10383=>781,10384=>781,10385=>781,10386=>781,\n10387=>781,10388=>781,10389=>781,10390=>781,10391=>781,10392=>781,10393=>781,10394=>781,10395=>781,10396=>781,\n10397=>781,10398=>781,10399=>781,10400=>781,10401=>781,10402=>781,10403=>781,10404=>781,10405=>781,10406=>781,\n10407=>781,10408=>781,10409=>781,10410=>781,10411=>781,10412=>781,10413=>781,10414=>781,10415=>781,10416=>781,\n10417=>781,10418=>781,10419=>781,10420=>781,10421=>781,10422=>781,10423=>781,10424=>781,10425=>781,10426=>781,\n10427=>781,10428=>781,10429=>781,10430=>781,10431=>781,10432=>781,10433=>781,10434=>781,10435=>781,10436=>781,\n10437=>781,10438=>781,10439=>781,10440=>781,10441=>781,10442=>781,10443=>781,10444=>781,10445=>781,10446=>781,\n10447=>781,10448=>781,10449=>781,10450=>781,10451=>781,10452=>781,10453=>781,10454=>781,10455=>781,10456=>781,\n10457=>781,10458=>781,10459=>781,10460=>781,10461=>781,10462=>781,10463=>781,10464=>781,10465=>781,10466=>781,\n10467=>781,10468=>781,10469=>781,10470=>781,10471=>781,10472=>781,10473=>781,10474=>781,10475=>781,10476=>781,\n10477=>781,10478=>781,10479=>781,10480=>781,10481=>781,10482=>781,10483=>781,10484=>781,10485=>781,10486=>781,\n10487=>781,10488=>781,10489=>781,10490=>781,10491=>781,10492=>781,10493=>781,10494=>781,10495=>781,10496=>838,\n10497=>838,10498=>838,10499=>838,10500=>838,10501=>838,10502=>838,10503=>838,10504=>838,10505=>838,10506=>838,\n10507=>838,10508=>838,10509=>838,10510=>838,10511=>838,10512=>838,10513=>838,10514=>838,10515=>838,10516=>838,\n10517=>838,10518=>838,10519=>838,10520=>838,10521=>838,10522=>838,10523=>838,10524=>838,10525=>838,10526=>838,\n10527=>838,10528=>838,10529=>838,10530=>838,10531=>838,10532=>838,10533=>838,10534=>838,10535=>838,10536=>838,\n10537=>838,10538=>838,10539=>838,10540=>838,10541=>838,10542=>838,10543=>838,10544=>838,10545=>838,10546=>838,\n10547=>838,10548=>838,10549=>838,10550=>838,10551=>838,10552=>838,10553=>838,10554=>838,10555=>838,10556=>838,\n10557=>838,10558=>838,10559=>838,10560=>838,10561=>838,10562=>838,10563=>838,10564=>838,10565=>838,10566=>838,\n10567=>838,10568=>838,10569=>838,10570=>838,10571=>838,10572=>838,10573=>838,10574=>838,10575=>838,10576=>838,\n10577=>838,10578=>838,10579=>838,10580=>838,10581=>838,10582=>838,10583=>838,10584=>838,10585=>838,10586=>838,\n10587=>838,10588=>838,10589=>838,10590=>838,10591=>838,10592=>838,10593=>838,10594=>838,10595=>838,10596=>838,\n10597=>838,10598=>838,10599=>838,10600=>838,10601=>838,10602=>838,10603=>838,10604=>838,10605=>838,10606=>838,\n10607=>838,10608=>838,10609=>838,10610=>838,10611=>838,10612=>838,10613=>838,10614=>838,10615=>1032,10616=>838,\n10617=>838,10618=>960,10619=>838,10620=>838,10621=>838,10622=>838,10623=>838,10731=>494,10764=>1782,10765=>610,\n10766=>610,10799=>838,11008=>838,11009=>838,11010=>838,11011=>838,11012=>838,11013=>838,11014=>838,11015=>838,\n11016=>838,11017=>838,11018=>838,11019=>838,11020=>838,11021=>838,11022=>838,11023=>838,11024=>838,11025=>838,\n11026=>945,11027=>945,11028=>945,11029=>945,11030=>769,11031=>769,11032=>769,11033=>769,11034=>945,11364=>831,\n11367=>945,11368=>727,11369=>869,11370=>693,11371=>730,11372=>568,11374=>1107,11375=>776,11381=>779,11382=>601,\n11383=>905,11385=>571,11386=>667,11388=>313,11389=>489,11520=>773,11521=>635,11522=>804,11523=>658,11524=>788,\n11525=>962,11526=>756,11527=>960,11528=>617,11529=>646,11530=>962,11531=>631,11532=>646,11533=>962,11534=>846,\n11535=>866,11536=>961,11537=>645,11538=>645,11539=>959,11540=>945,11541=>863,11542=>644,11543=>646,11544=>645,\n11545=>649,11546=>688,11547=>936,11548=>982,11549=>681,11550=>676,11551=>852,11552=>1113,11553=>632,11554=>645,\n11555=>646,11556=>749,11557=>914,11800=>586,11810=>473,11811=>473,11812=>473,11813=>473,11822=>586,42564=>722,\n42565=>563,42566=>468,42567=>380,42576=>1333,42577=>1092,42580=>1287,42581=>1025,42582=>1287,42583=>1039,42760=>500,\n42761=>500,42762=>500,42763=>500,42764=>500,42765=>500,42766=>500,42767=>500,42768=>500,42769=>500,42770=>500,\n42771=>500,42772=>500,42773=>500,42774=>500,42779=>384,42780=>384,42781=>276,42782=>276,42783=>276,42891=>439,\n42892=>306,62464=>705,62465=>716,62466=>765,62467=>999,62468=>716,62469=>710,62470=>776,62471=>1038,62472=>716,\n62473=>716,62474=>1309,62475=>734,62476=>733,62477=>1004,62478=>716,62479=>733,62480=>1050,62481=>797,62482=>850,\n62483=>799,62484=>996,62485=>732,62486=>987,62487=>731,62488=>739,62489=>733,62490=>780,62491=>733,62492=>739,\n62493=>717,62494=>780,62495=>936,62496=>716,62497=>826,62498=>717,62499=>716,62500=>716,62501=>773,62502=>1013,\n62504=>904,63173=>667,63185=>500,63188=>500,64256=>821,64257=>727,64258=>727,64259=>1120,64260=>1117,64261=>871,\n64262=>971,65024=>0,65025=>0,65026=>0,65027=>0,65028=>0,65029=>0,65030=>0,65031=>0,65032=>0,\n65033=>0,65034=>0,65035=>0,65036=>0,65037=>0,65038=>0,65039=>0,65529=>0,65530=>0,65531=>0,\n65532=>0,65533=>1113);\n$enc='';\n$diff='';\n$file='dejavuserifb.z';\n$ctg='dejavuserifb.ctg.z';\n$originalsize=306532;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavuserifbi.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='DejaVuSerif-BoldItalic';\n$desc=array('Ascent'=>939,'Descent'=>-236,'CapHeight'=>-53,'Flags'=>96,'FontBBox'=>'[-906 -389 1760 1235]','ItalicAngle'=>-11,'StemV'=>120,'MissingWidth'=>600);\n$up=-63;\n$ut=44;\n$dw=600;\n$cw=array(\n0=>600,32=>348,33=>439,34=>521,35=>838,36=>696,37=>950,38=>903,39=>306,40=>473,\n41=>473,42=>523,43=>838,44=>348,45=>415,46=>348,47=>365,48=>696,49=>696,50=>696,\n51=>696,52=>696,53=>696,54=>696,55=>696,56=>696,57=>696,58=>369,59=>369,60=>838,\n61=>838,62=>838,63=>586,64=>1000,65=>776,66=>845,67=>796,68=>867,69=>762,70=>710,\n71=>854,72=>945,73=>468,74=>473,75=>869,76=>703,77=>1107,78=>914,79=>871,80=>752,\n81=>871,82=>831,83=>722,84=>744,85=>872,86=>776,87=>1123,88=>776,89=>714,90=>730,\n91=>473,92=>365,93=>473,94=>838,95=>500,96=>500,97=>648,98=>699,99=>609,100=>699,\n101=>636,102=>430,103=>699,104=>727,105=>380,106=>362,107=>693,108=>380,109=>1058,110=>727,\n111=>667,112=>699,113=>699,114=>527,115=>563,116=>462,117=>727,118=>581,119=>861,120=>596,\n121=>581,122=>568,123=>643,124=>364,125=>643,126=>838,8364=>696,8218=>348,402=>430,8222=>575,\n8230=>1000,8224=>523,8225=>523,710=>500,8240=>1385,352=>722,8249=>400,338=>1180,381=>730,8216=>348,\n8217=>348,8220=>575,8221=>575,8226=>639,8211=>500,8212=>1000,732=>500,8482=>1000,353=>563,8250=>400,\n339=>1028,382=>568,376=>714,160=>348,161=>439,162=>696,163=>696,164=>636,165=>696,166=>364,\n167=>523,168=>500,169=>1000,170=>487,171=>625,172=>838,173=>415,174=>1000,175=>500,176=>500,\n177=>838,178=>438,179=>438,180=>500,181=>732,182=>636,183=>348,184=>500,185=>438,186=>500,\n187=>625,188=>1043,189=>1043,190=>1043,191=>586,192=>776,193=>776,194=>776,195=>776,196=>776,\n197=>776,198=>1034,199=>796,200=>762,201=>762,202=>762,203=>762,204=>468,205=>468,206=>468,\n207=>468,208=>874,209=>914,210=>871,211=>871,212=>871,213=>871,214=>871,215=>838,216=>871,\n217=>872,218=>872,219=>872,220=>872,221=>714,222=>757,223=>760,224=>648,225=>648,226=>648,\n227=>648,228=>648,229=>648,230=>932,231=>609,232=>636,233=>636,234=>636,235=>636,236=>380,\n237=>380,238=>380,239=>380,240=>667,241=>727,242=>667,243=>667,244=>667,245=>667,246=>667,\n247=>838,248=>667,249=>727,250=>727,251=>727,252=>727,253=>581,254=>699,255=>581,256=>776,\n257=>648,258=>776,259=>648,260=>776,261=>648,262=>796,263=>609,264=>796,265=>609,266=>796,\n267=>609,268=>796,269=>609,270=>867,271=>699,272=>874,273=>699,274=>762,275=>636,276=>762,\n277=>636,278=>762,279=>636,280=>762,281=>636,282=>762,283=>636,284=>854,285=>699,286=>854,\n287=>699,288=>854,289=>699,290=>854,291=>699,292=>945,293=>727,294=>945,295=>727,296=>468,\n297=>380,298=>468,299=>380,300=>468,301=>380,302=>468,303=>380,304=>468,305=>380,306=>942,\n307=>751,308=>473,309=>362,310=>869,311=>693,312=>693,313=>703,314=>380,315=>703,316=>380,\n317=>703,318=>508,319=>703,320=>557,321=>710,322=>385,323=>914,324=>727,325=>914,326=>727,\n327=>914,328=>727,329=>1008,330=>872,331=>727,332=>871,333=>667,334=>871,335=>667,336=>871,\n337=>667,340=>831,341=>527,342=>831,343=>527,344=>831,345=>527,346=>722,347=>563,348=>722,\n349=>563,350=>722,351=>563,354=>744,355=>462,356=>744,357=>462,358=>744,359=>462,360=>872,\n361=>727,362=>872,363=>727,364=>872,365=>727,366=>872,367=>727,368=>872,369=>727,370=>872,\n371=>727,372=>1123,373=>861,374=>714,375=>581,377=>730,378=>568,379=>730,380=>568,383=>430,\n384=>699,385=>845,386=>854,387=>699,388=>854,389=>699,390=>796,391=>796,392=>609,393=>874,\n394=>867,395=>854,396=>699,397=>667,398=>762,399=>871,400=>721,401=>710,403=>854,404=>771,\n405=>1043,406=>468,407=>468,408=>869,409=>693,410=>380,411=>701,412=>1058,413=>914,414=>727,\n415=>871,416=>871,417=>667,418=>1200,419=>943,420=>752,421=>699,422=>831,423=>722,424=>563,\n425=>707,426=>331,427=>462,428=>744,429=>462,430=>744,431=>872,432=>727,433=>890,434=>890,\n435=>714,436=>699,437=>730,438=>568,439=>657,440=>657,441=>657,443=>696,444=>754,445=>568,\n446=>536,448=>295,449=>492,450=>459,451=>295,452=>1597,453=>1435,454=>1267,455=>1176,456=>1065,\n457=>742,458=>1387,459=>1276,460=>1089,461=>776,462=>648,463=>468,464=>380,465=>871,466=>667,\n467=>872,468=>727,469=>872,470=>727,471=>872,472=>727,473=>872,474=>727,475=>872,476=>727,\n477=>636,478=>776,479=>648,480=>776,481=>648,482=>1034,483=>975,484=>896,485=>699,486=>854,\n487=>699,488=>869,489=>693,490=>871,491=>667,492=>871,493=>667,494=>657,495=>568,496=>362,\n497=>1597,498=>1435,499=>1267,500=>854,501=>699,502=>1221,504=>914,505=>727,506=>776,507=>648,\n508=>1034,509=>932,510=>871,511=>667,512=>776,513=>648,514=>776,515=>648,516=>762,517=>636,\n518=>762,519=>636,520=>468,521=>380,522=>468,523=>380,524=>871,525=>667,526=>871,527=>667,\n528=>831,529=>527,530=>831,531=>527,532=>872,533=>727,534=>872,535=>727,536=>722,537=>563,\n538=>744,539=>462,540=>690,541=>607,542=>945,543=>727,544=>872,545=>791,548=>730,549=>568,\n550=>776,551=>648,552=>762,553=>636,554=>871,555=>667,556=>871,557=>667,558=>871,559=>667,\n560=>871,561=>667,562=>714,563=>581,564=>573,565=>922,566=>564,567=>362,568=>1031,569=>1031,\n570=>776,571=>796,572=>609,573=>703,574=>744,575=>563,576=>568,577=>660,578=>547,581=>776,\n592=>648,593=>699,594=>699,595=>699,596=>609,597=>609,598=>699,599=>730,600=>636,601=>636,\n602=>907,603=>608,604=>562,605=>907,606=>720,607=>387,608=>699,609=>699,610=>626,611=>712,\n612=>627,613=>727,614=>727,615=>727,616=>380,617=>380,618=>380,619=>409,620=>514,621=>380,\n622=>795,623=>1058,624=>1058,625=>1058,626=>727,627=>727,628=>712,629=>667,630=>1061,631=>749,\n632=>667,633=>571,634=>571,635=>571,636=>527,637=>527,638=>452,639=>487,640=>801,641=>801,\n642=>563,643=>331,644=>430,645=>540,646=>331,647=>492,648=>462,649=>727,650=>679,651=>694,\n652=>581,653=>861,654=>635,655=>727,656=>568,657=>568,658=>568,659=>568,660=>536,661=>536,\n662=>536,663=>545,664=>871,665=>695,666=>720,667=>626,668=>732,669=>384,670=>740,671=>646,\n672=>699,673=>536,674=>536,675=>1117,676=>1179,677=>1117,678=>911,679=>715,680=>909,681=>1039,\n682=>790,683=>795,684=>662,685=>443,686=>613,687=>717,688=>521,689=>519,690=>313,691=>414,\n692=>414,693=>480,694=>527,695=>542,696=>366,697=>302,699=>348,700=>348,701=>348,702=>366,\n703=>366,704=>313,705=>313,711=>500,712=>282,713=>500,716=>282,720=>369,721=>369,722=>366,\n723=>366,726=>392,728=>500,729=>500,730=>500,731=>500,733=>500,734=>417,736=>448,737=>292,\n738=>395,739=>375,740=>313,741=>500,742=>500,743=>500,744=>500,745=>500,750=>553,768=>0,\n769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,\n779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,\n789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,\n799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,\n809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,\n819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,\n829=>0,830=>0,831=>0,835=>0,847=>0,856=>0,865=>0,880=>779,881=>576,884=>302,\n885=>302,890=>500,891=>609,892=>609,893=>609,894=>369,900=>500,901=>500,902=>776,903=>348,\n904=>947,905=>1136,906=>662,908=>887,910=>953,911=>911,912=>484,913=>776,914=>845,915=>710,\n916=>776,917=>762,918=>730,919=>945,920=>871,921=>468,922=>869,923=>776,924=>1107,925=>914,\n926=>704,927=>871,928=>945,929=>752,931=>707,932=>744,933=>714,934=>871,935=>776,936=>913,\n937=>890,938=>468,939=>714,940=>770,941=>608,942=>727,943=>484,944=>694,945=>770,946=>664,\n947=>660,948=>667,949=>608,950=>592,951=>727,952=>667,953=>484,954=>750,955=>701,956=>732,\n957=>694,958=>592,959=>667,960=>732,961=>665,962=>609,963=>737,964=>673,965=>694,966=>905,\n967=>658,968=>941,969=>952,970=>484,971=>694,972=>667,973=>694,974=>952,976=>667,977=>849,\n978=>764,979=>969,980=>764,981=>941,982=>952,983=>655,984=>871,985=>667,986=>796,987=>609,\n988=>710,989=>527,990=>590,991=>660,992=>796,993=>667,1008=>655,1009=>665,1010=>609,1011=>362,\n1012=>871,1013=>609,1014=>609,1015=>757,1016=>699,1017=>796,1018=>1107,1019=>860,1020=>692,1021=>796,\n1022=>796,1023=>796,1024=>762,1025=>762,1026=>901,1027=>690,1028=>795,1029=>722,1030=>468,1031=>468,\n1032=>473,1033=>1202,1034=>1262,1035=>963,1036=>910,1037=>945,1038=>812,1039=>945,1040=>814,1041=>854,\n1042=>845,1043=>690,1044=>889,1045=>762,1046=>1312,1047=>721,1048=>945,1049=>945,1050=>910,1051=>884,\n1052=>1107,1053=>945,1054=>871,1055=>945,1056=>752,1057=>796,1058=>744,1059=>812,1060=>949,1061=>776,\n1062=>966,1063=>913,1064=>1268,1065=>1293,1066=>957,1067=>1202,1068=>825,1069=>795,1070=>1287,1071=>882,\n1072=>648,1073=>722,1074=>657,1075=>563,1076=>695,1077=>636,1078=>1306,1079=>638,1080=>727,1081=>727,\n1082=>677,1083=>732,1084=>951,1085=>729,1086=>667,1087=>727,1088=>699,1089=>609,1090=>1058,1091=>598,\n1092=>902,1093=>596,1094=>803,1095=>715,1096=>1058,1097=>1134,1098=>727,1099=>1018,1100=>660,1101=>645,\n1102=>1001,1103=>796,1104=>636,1105=>636,1106=>719,1107=>563,1108=>609,1109=>563,1110=>380,1111=>380,\n1112=>362,1113=>1014,1114=>1011,1115=>727,1116=>677,1117=>727,1118=>598,1119=>727,1122=>880,1123=>1050,\n1124=>1195,1125=>963,1130=>1312,1131=>1010,1136=>1096,1137=>1105,1138=>871,1139=>652,1140=>916,1141=>749,\n1164=>846,1165=>673,1168=>700,1169=>618,1170=>690,1171=>563,1172=>854,1173=>705,1174=>1312,1175=>1306,\n1176=>721,1177=>638,1178=>902,1179=>703,1182=>910,1183=>677,1184=>1041,1185=>760,1186=>952,1187=>805,\n1188=>1167,1189=>955,1190=>1324,1191=>1013,1194=>796,1195=>609,1196=>744,1197=>1142,1198=>714,1199=>572,\n1200=>713,1201=>572,1202=>789,1203=>596,1204=>1010,1205=>833,1206=>913,1207=>792,1210=>910,1211=>727,\n1216=>468,1217=>1312,1218=>1306,1219=>869,1220=>693,1223=>945,1224=>732,1227=>984,1228=>732,1231=>380,\n1232=>814,1233=>648,1234=>814,1235=>648,1236=>1034,1237=>975,1238=>762,1239=>636,1240=>871,1241=>636,\n1242=>871,1243=>636,1244=>1312,1245=>1306,1246=>721,1247=>638,1248=>657,1249=>568,1250=>945,1251=>727,\n1252=>945,1253=>727,1254=>871,1255=>667,1256=>871,1257=>667,1258=>871,1259=>667,1260=>795,1261=>645,\n1262=>812,1263=>598,1264=>812,1265=>598,1266=>812,1267=>598,1268=>913,1269=>715,1270=>690,1271=>563,\n1272=>1202,1273=>1018,1296=>721,1297=>638,1298=>884,1299=>732,1300=>1248,1301=>1005,1306=>820,1307=>640,\n1308=>1028,1309=>856,4256=>765,4257=>945,4258=>876,4259=>884,4260=>791,4261=>1087,4262=>1024,4263=>1223,\n4264=>653,4265=>828,4266=>1061,4267=>1061,4268=>806,4269=>1145,4270=>979,4271=>912,4272=>1119,4273=>802,\n4274=>766,4275=>1085,4276=>986,4277=>1076,4278=>820,4279=>843,4280=>831,4281=>843,4282=>918,4283=>1086,\n4284=>779,4285=>832,4286=>822,4287=>1121,4288=>1132,4289=>812,4290=>902,4291=>812,4292=>890,4293=>1073,\n4304=>594,4305=>625,4306=>643,4307=>887,4308=>615,4309=>611,4310=>666,4311=>915,4312=>613,4313=>600,\n4314=>1120,4315=>654,4316=>640,4317=>879,4318=>624,4319=>634,4320=>877,4321=>657,4322=>802,4323=>751,\n4324=>869,4325=>639,4326=>912,4327=>622,4328=>647,4329=>640,4330=>729,4331=>641,4332=>639,4333=>629,\n4334=>674,4335=>737,4336=>625,4337=>657,4338=>625,4339=>625,4340=>624,4341=>670,4342=>940,4343=>680,\n4344=>636,4345=>672,4346=>625,4347=>446,4348=>363,7426=>940,7432=>509,7433=>320,7444=>989,7446=>667,\n7447=>667,7453=>737,7454=>948,7455=>948,7468=>489,7469=>651,7470=>532,7472=>546,7473=>480,7474=>480,\n7475=>538,7476=>595,7477=>294,7478=>298,7479=>547,7480=>443,7481=>697,7482=>576,7483=>576,7484=>548,\n7486=>474,7487=>523,7488=>469,7489=>549,7490=>708,7491=>466,7492=>466,7493=>498,7494=>657,7495=>499,\n7496=>498,7497=>444,7498=>444,7499=>412,7500=>412,7501=>498,7502=>300,7503=>523,7504=>729,7505=>473,\n7506=>467,7507=>427,7508=>467,7509=>467,7510=>499,7511=>371,7512=>520,7513=>434,7514=>729,7515=>491,\n7522=>239,7523=>414,7524=>520,7525=>491,7543=>640,7544=>595,7547=>380,7557=>380,7579=>498,7580=>427,\n7581=>427,7582=>467,7583=>412,7584=>271,7585=>373,7586=>498,7587=>522,7588=>300,7589=>307,7590=>300,\n7591=>300,7592=>370,7593=>368,7594=>321,7595=>430,7596=>682,7597=>729,7598=>588,7599=>587,7600=>472,\n7601=>467,7602=>522,7603=>400,7604=>387,7605=>371,7606=>520,7607=>475,7609=>489,7610=>366,7611=>357,\n7612=>527,7613=>412,7614=>452,7615=>467,7620=>0,7621=>0,7622=>0,7623=>0,7624=>0,7625=>0,\n7680=>776,7681=>648,7682=>845,7683=>699,7684=>845,7685=>699,7686=>845,7687=>699,7688=>796,7689=>609,\n7690=>867,7691=>699,7692=>867,7693=>699,7694=>867,7695=>699,7696=>867,7697=>699,7698=>867,7699=>699,\n7700=>762,7701=>636,7702=>762,7703=>636,7704=>762,7705=>636,7706=>762,7707=>636,7708=>762,7709=>636,\n7710=>710,7711=>430,7712=>854,7713=>699,7714=>945,7715=>727,7716=>945,7717=>727,7718=>945,7719=>727,\n7720=>945,7721=>727,7722=>945,7723=>727,7724=>468,7725=>380,7728=>869,7729=>693,7730=>869,7731=>693,\n7732=>869,7733=>693,7734=>703,7735=>380,7736=>703,7737=>380,7738=>703,7739=>380,7740=>703,7741=>380,\n7742=>1107,7743=>1058,7744=>1107,7745=>1058,7746=>1107,7747=>1058,7748=>914,7749=>727,7750=>914,7751=>727,\n7752=>914,7753=>727,7754=>914,7755=>727,7756=>871,7757=>667,7760=>871,7761=>667,7762=>871,7763=>667,\n7764=>752,7765=>699,7766=>752,7767=>699,7768=>831,7769=>527,7770=>831,7771=>527,7772=>831,7773=>527,\n7774=>831,7775=>527,7776=>722,7777=>563,7778=>722,7779=>563,7784=>722,7785=>563,7786=>744,7787=>462,\n7788=>744,7789=>462,7790=>744,7791=>462,7792=>744,7793=>462,7794=>872,7795=>727,7796=>872,7797=>727,\n7798=>872,7799=>727,7800=>872,7801=>727,7802=>872,7803=>727,7804=>776,7805=>581,7806=>776,7807=>581,\n7808=>1123,7809=>861,7810=>1123,7811=>861,7812=>1123,7813=>861,7814=>1123,7815=>861,7816=>1123,7817=>861,\n7818=>776,7819=>596,7820=>776,7821=>596,7822=>714,7823=>581,7824=>730,7825=>568,7826=>730,7827=>568,\n7828=>730,7829=>568,7830=>727,7831=>462,7832=>861,7833=>581,7834=>1014,7835=>430,7838=>947,7839=>667,\n7840=>776,7841=>648,7842=>776,7843=>648,7852=>776,7853=>648,7854=>776,7855=>648,7856=>776,7857=>648,\n7858=>776,7859=>648,7860=>776,7861=>648,7862=>776,7863=>648,7864=>762,7865=>636,7866=>762,7867=>636,\n7868=>762,7869=>636,7878=>762,7879=>636,7880=>468,7881=>380,7882=>468,7883=>380,7884=>871,7885=>667,\n7886=>871,7887=>667,7896=>871,7897=>667,7908=>872,7909=>727,7910=>872,7911=>727,7922=>714,7923=>581,\n7924=>714,7925=>581,7926=>714,7927=>581,7928=>714,7929=>581,7936=>770,7937=>770,7938=>770,7939=>770,\n7940=>770,7941=>770,7942=>770,7943=>770,7944=>776,7945=>776,7946=>978,7947=>978,7948=>832,7949=>849,\n7950=>776,7951=>776,7952=>608,7953=>608,7954=>608,7955=>608,7956=>608,7957=>608,7960=>917,7961=>909,\n7962=>1169,7963=>1169,7964=>1093,7965=>1120,7968=>727,7969=>727,7970=>727,7971=>727,7972=>727,7973=>727,\n7974=>727,7975=>727,7976=>1100,7977=>1094,7978=>1358,7979=>1361,7980=>1279,7981=>1308,7982=>1197,7983=>1194,\n7984=>484,7985=>484,7986=>484,7987=>484,7988=>484,7989=>484,7990=>484,7991=>484,7992=>629,7993=>617,\n7994=>878,7995=>881,7996=>799,7997=>831,7998=>723,7999=>714,8000=>667,8001=>667,8002=>667,8003=>667,\n8004=>667,8005=>667,8008=>900,8009=>935,8010=>1240,8011=>1237,8012=>1035,8013=>1066,8016=>694,8017=>694,\n8018=>694,8019=>694,8020=>694,8021=>694,8022=>694,8023=>694,8025=>922,8027=>1186,8029=>1133,8031=>1019,\n8032=>952,8033=>952,8034=>952,8035=>952,8036=>952,8037=>952,8038=>952,8039=>952,8040=>931,8041=>963,\n8042=>1268,8043=>1274,8044=>1054,8045=>1088,8046=>1023,8047=>1060,8048=>770,8049=>770,8050=>608,8051=>608,\n8052=>727,8053=>727,8054=>484,8055=>484,8056=>667,8057=>667,8058=>694,8059=>694,8060=>952,8061=>952,\n8064=>770,8065=>770,8066=>770,8067=>770,8068=>770,8069=>770,8070=>770,8071=>770,8072=>776,8073=>776,\n8074=>978,8075=>978,8076=>832,8077=>849,8078=>776,8079=>776,8080=>727,8081=>727,8082=>727,8083=>727,\n8084=>727,8085=>727,8086=>727,8087=>727,8088=>1100,8089=>1094,8090=>1358,8091=>1361,8092=>1279,8093=>1308,\n8094=>1197,8095=>1194,8096=>952,8097=>952,8098=>952,8099=>952,8100=>952,8101=>952,8102=>952,8103=>952,\n8104=>931,8105=>963,8106=>1268,8107=>1274,8108=>1054,8109=>1088,8110=>1023,8111=>1060,8112=>770,8113=>770,\n8114=>770,8115=>770,8116=>770,8118=>770,8119=>770,8120=>776,8121=>776,8122=>811,8123=>776,8124=>776,\n8125=>500,8126=>500,8127=>500,8128=>500,8129=>500,8130=>727,8131=>727,8132=>727,8134=>727,8135=>727,\n8136=>1000,8137=>947,8138=>1191,8139=>1118,8140=>945,8141=>500,8142=>500,8143=>500,8144=>484,8145=>484,\n8146=>484,8147=>484,8150=>484,8151=>484,8152=>468,8153=>468,8154=>714,8155=>662,8157=>500,8158=>500,\n8159=>500,8160=>694,8161=>694,8162=>694,8163=>694,8164=>665,8165=>665,8166=>694,8167=>694,8168=>714,\n8169=>714,8170=>1019,8171=>953,8172=>910,8173=>500,8174=>500,8175=>500,8178=>952,8179=>952,8180=>952,\n8182=>952,8183=>952,8184=>1069,8185=>887,8186=>1101,8187=>911,8188=>890,8189=>500,8190=>500,8192=>500,\n8193=>1000,8194=>500,8195=>1000,8196=>330,8197=>250,8198=>167,8199=>696,8200=>348,8201=>200,8202=>100,\n8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>415,8209=>415,8210=>696,8213=>1000,8214=>500,\n8215=>500,8219=>348,8223=>575,8227=>639,8228=>348,8229=>674,8234=>0,8235=>0,8236=>0,8237=>0,\n8238=>0,8239=>200,8241=>1813,8242=>264,8243=>447,8244=>630,8245=>264,8246=>447,8247=>630,8248=>733,\n8252=>629,8253=>586,8254=>500,8258=>1023,8260=>167,8261=>473,8262=>473,8263=>1082,8264=>856,8265=>856,\n8267=>636,8268=>500,8269=>500,8270=>523,8271=>369,8273=>523,8274=>556,8275=>1000,8279=>813,8287=>222,\n8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8298=>0,8299=>0,8300=>0,8301=>0,8302=>0,\n8303=>0,8304=>438,8305=>239,8308=>438,8309=>438,8310=>438,8311=>438,8312=>438,8313=>438,8314=>528,\n8315=>528,8316=>528,8317=>298,8318=>298,8319=>458,8320=>438,8321=>438,8322=>438,8323=>438,8324=>438,\n8325=>438,8326=>438,8327=>438,8328=>438,8329=>438,8330=>528,8331=>528,8332=>528,8333=>298,8334=>298,\n8336=>466,8337=>444,8338=>467,8339=>375,8340=>444,8358=>696,8367=>1155,8369=>790,8372=>876,8373=>696,\n8451=>1198,8457=>1112,8462=>727,8463=>727,8470=>1087,8486=>890,8487=>890,8490=>869,8491=>776,8513=>786,\n8514=>576,8515=>637,8516=>760,8523=>903,8531=>1035,8532=>1035,8533=>1035,8534=>1035,8535=>1035,8536=>1035,\n8537=>1035,8538=>1035,8539=>1035,8540=>1035,8541=>1035,8542=>1035,8543=>615,8544=>468,8545=>736,8546=>1005,\n8547=>1093,8548=>776,8549=>1127,8550=>1396,8551=>1664,8552=>1069,8553=>776,8554=>1078,8555=>1347,8556=>703,\n8557=>796,8558=>867,8559=>1107,8560=>380,8561=>760,8562=>1140,8563=>961,8564=>581,8565=>961,8566=>1341,\n8567=>1721,8568=>976,8569=>596,8570=>976,8571=>1356,8572=>380,8573=>609,8574=>699,8575=>1058,8576=>1255,\n8577=>867,8578=>1268,8579=>796,8580=>609,8592=>838,8593=>838,8594=>838,8595=>838,8596=>838,8597=>838,\n8598=>838,8599=>838,8600=>838,8601=>838,8602=>838,8603=>838,8604=>838,8605=>838,8606=>838,8607=>838,\n8608=>838,8609=>838,8610=>838,8611=>838,8612=>838,8613=>838,8614=>838,8615=>838,8616=>838,8617=>838,\n8618=>838,8619=>838,8620=>838,8621=>838,8622=>838,8623=>850,8624=>838,8625=>838,8626=>838,8627=>838,\n8628=>838,8629=>838,8630=>838,8631=>838,8632=>838,8633=>838,8634=>838,8635=>838,8636=>838,8637=>838,\n8638=>838,8639=>838,8640=>838,8641=>838,8642=>838,8643=>838,8644=>838,8645=>838,8646=>838,8647=>838,\n8648=>838,8649=>838,8650=>838,8651=>838,8652=>838,8653=>838,8654=>838,8655=>838,8656=>838,8657=>838,\n8658=>838,8659=>838,8660=>838,8661=>838,8662=>838,8663=>838,8664=>838,8665=>838,8666=>838,8667=>838,\n8668=>838,8669=>838,8670=>838,8671=>838,8672=>838,8673=>838,8674=>838,8675=>838,8676=>838,8677=>838,\n8678=>838,8679=>838,8680=>838,8681=>838,8682=>838,8683=>838,8684=>838,8685=>838,8686=>838,8687=>838,\n8688=>838,8689=>838,8690=>838,8691=>838,8692=>838,8693=>838,8694=>838,8695=>838,8696=>838,8697=>838,\n8698=>838,8699=>838,8700=>838,8701=>838,8702=>838,8703=>838,8704=>641,8706=>534,8707=>620,8708=>620,\n8710=>753,8711=>753,8712=>740,8713=>740,8715=>740,8716=>740,8719=>842,8720=>842,8721=>753,8722=>838,\n8723=>838,8724=>838,8725=>365,8727=>691,8728=>519,8729=>519,8730=>657,8731=>657,8732=>657,8733=>672,\n8734=>833,8735=>838,8736=>838,8739=>324,8740=>607,8741=>529,8742=>773,8743=>812,8744=>812,8745=>838,\n8746=>838,8747=>579,8748=>1000,8749=>1391,8760=>838,8761=>838,8762=>838,8763=>838,8764=>838,8765=>838,\n8770=>838,8771=>838,8776=>838,8784=>838,8785=>838,8786=>838,8787=>838,8788=>1082,8789=>1082,8800=>838,\n8801=>838,8804=>838,8805=>838,8834=>838,8835=>838,8836=>838,8837=>838,8838=>838,8839=>838,8844=>838,\n8845=>838,8846=>838,8847=>838,8848=>838,8849=>838,8850=>838,8851=>838,8852=>838,8853=>838,8854=>838,\n8855=>838,8856=>838,8857=>838,8858=>838,8859=>838,8860=>838,8861=>838,8862=>838,8863=>838,8864=>838,\n8865=>838,8866=>884,8867=>884,8868=>960,8869=>960,8870=>616,8871=>616,8872=>884,8873=>884,8874=>884,\n8875=>1080,8876=>884,8877=>884,8878=>884,8879=>1080,8901=>398,8962=>834,8968=>473,8969=>473,8970=>473,\n8971=>473,8976=>838,8977=>539,8984=>928,8985=>838,8992=>579,8993=>579,8997=>1000,9000=>1443,9085=>1008,\n9134=>579,9167=>945,9251=>834,9600=>769,9601=>769,9602=>769,9603=>769,9604=>769,9605=>769,9606=>769,\n9607=>769,9608=>769,9609=>769,9610=>769,9611=>769,9612=>769,9613=>769,9614=>769,9615=>769,9616=>769,\n9617=>769,9618=>769,9619=>769,9620=>769,9621=>769,9622=>769,9623=>769,9624=>769,9625=>769,9626=>769,\n9627=>769,9628=>769,9629=>769,9630=>769,9631=>769,9632=>945,9633=>945,9634=>945,9635=>945,9636=>945,\n9637=>945,9638=>945,9639=>945,9640=>945,9641=>945,9642=>678,9643=>678,9644=>945,9645=>945,9646=>550,\n9647=>550,9648=>769,9649=>769,9650=>769,9651=>769,9652=>502,9653=>502,9654=>769,9655=>769,9656=>502,\n9657=>502,9658=>769,9659=>769,9660=>769,9661=>769,9662=>502,9663=>502,9664=>769,9665=>769,9666=>502,\n9667=>502,9668=>769,9669=>769,9670=>769,9671=>769,9672=>769,9673=>873,9674=>494,9675=>873,9676=>873,\n9677=>873,9678=>873,9679=>873,9680=>873,9681=>873,9682=>873,9683=>873,9684=>873,9685=>873,9686=>527,\n9687=>527,9688=>791,9689=>970,9690=>970,9691=>970,9692=>387,9693=>387,9694=>387,9695=>387,9696=>873,\n9697=>873,9698=>769,9699=>769,9700=>769,9701=>769,9702=>590,9703=>945,9704=>945,9705=>945,9706=>945,\n9707=>945,9708=>769,9709=>769,9710=>769,9711=>1119,9712=>945,9713=>945,9714=>945,9715=>945,9716=>873,\n9717=>873,9718=>873,9719=>873,9720=>769,9721=>769,9722=>769,9723=>830,9724=>830,9725=>732,9726=>732,\n9727=>769,9728=>896,9784=>896,9785=>896,9786=>896,9787=>896,9788=>896,9791=>614,9792=>731,9793=>731,\n9794=>896,9795=>896,9796=>896,9797=>896,9798=>896,9799=>896,9824=>896,9825=>896,9826=>896,9827=>896,\n9828=>896,9829=>896,9830=>896,9831=>896,9833=>472,9834=>638,9835=>896,9836=>896,9837=>472,9838=>357,\n9839=>484,10145=>838,10181=>457,10182=>457,10208=>494,10216=>457,10217=>457,10224=>838,10225=>838,10226=>838,\n10227=>838,10228=>1033,10229=>1434,10230=>1434,10231=>1434,10232=>1434,10233=>1434,10234=>1434,10235=>1434,10236=>1434,\n10237=>1434,10238=>1434,10239=>1434,10240=>781,10241=>781,10242=>781,10243=>781,10244=>781,10245=>781,10246=>781,\n10247=>781,10248=>781,10249=>781,10250=>781,10251=>781,10252=>781,10253=>781,10254=>781,10255=>781,10256=>781,\n10257=>781,10258=>781,10259=>781,10260=>781,10261=>781,10262=>781,10263=>781,10264=>781,10265=>781,10266=>781,\n10267=>781,10268=>781,10269=>781,10270=>781,10271=>781,10272=>781,10273=>781,10274=>781,10275=>781,10276=>781,\n10277=>781,10278=>781,10279=>781,10280=>781,10281=>781,10282=>781,10283=>781,10284=>781,10285=>781,10286=>781,\n10287=>781,10288=>781,10289=>781,10290=>781,10291=>781,10292=>781,10293=>781,10294=>781,10295=>781,10296=>781,\n10297=>781,10298=>781,10299=>781,10300=>781,10301=>781,10302=>781,10303=>781,10304=>781,10305=>781,10306=>781,\n10307=>781,10308=>781,10309=>781,10310=>781,10311=>781,10312=>781,10313=>781,10314=>781,10315=>781,10316=>781,\n10317=>781,10318=>781,10319=>781,10320=>781,10321=>781,10322=>781,10323=>781,10324=>781,10325=>781,10326=>781,\n10327=>781,10328=>781,10329=>781,10330=>781,10331=>781,10332=>781,10333=>781,10334=>781,10335=>781,10336=>781,\n10337=>781,10338=>781,10339=>781,10340=>781,10341=>781,10342=>781,10343=>781,10344=>781,10345=>781,10346=>781,\n10347=>781,10348=>781,10349=>781,10350=>781,10351=>781,10352=>781,10353=>781,10354=>781,10355=>781,10356=>781,\n10357=>781,10358=>781,10359=>781,10360=>781,10361=>781,10362=>781,10363=>781,10364=>781,10365=>781,10366=>781,\n10367=>781,10368=>781,10369=>781,10370=>781,10371=>781,10372=>781,10373=>781,10374=>781,10375=>781,10376=>781,\n10377=>781,10378=>781,10379=>781,10380=>781,10381=>781,10382=>781,10383=>781,10384=>781,10385=>781,10386=>781,\n10387=>781,10388=>781,10389=>781,10390=>781,10391=>781,10392=>781,10393=>781,10394=>781,10395=>781,10396=>781,\n10397=>781,10398=>781,10399=>781,10400=>781,10401=>781,10402=>781,10403=>781,10404=>781,10405=>781,10406=>781,\n10407=>781,10408=>781,10409=>781,10410=>781,10411=>781,10412=>781,10413=>781,10414=>781,10415=>781,10416=>781,\n10417=>781,10418=>781,10419=>781,10420=>781,10421=>781,10422=>781,10423=>781,10424=>781,10425=>781,10426=>781,\n10427=>781,10428=>781,10429=>781,10430=>781,10431=>781,10432=>781,10433=>781,10434=>781,10435=>781,10436=>781,\n10437=>781,10438=>781,10439=>781,10440=>781,10441=>781,10442=>781,10443=>781,10444=>781,10445=>781,10446=>781,\n10447=>781,10448=>781,10449=>781,10450=>781,10451=>781,10452=>781,10453=>781,10454=>781,10455=>781,10456=>781,\n10457=>781,10458=>781,10459=>781,10460=>781,10461=>781,10462=>781,10463=>781,10464=>781,10465=>781,10466=>781,\n10467=>781,10468=>781,10469=>781,10470=>781,10471=>781,10472=>781,10473=>781,10474=>781,10475=>781,10476=>781,\n10477=>781,10478=>781,10479=>781,10480=>781,10481=>781,10482=>781,10483=>781,10484=>781,10485=>781,10486=>781,\n10487=>781,10488=>781,10489=>781,10490=>781,10491=>781,10492=>781,10493=>781,10494=>781,10495=>781,10496=>838,\n10497=>838,10498=>838,10499=>838,10500=>838,10501=>838,10502=>838,10503=>838,10504=>838,10505=>838,10506=>838,\n10507=>838,10508=>838,10509=>838,10510=>838,10511=>838,10512=>838,10513=>838,10514=>838,10515=>838,10516=>838,\n10517=>838,10518=>838,10519=>838,10520=>838,10521=>838,10522=>838,10523=>838,10524=>838,10525=>838,10526=>838,\n10527=>838,10528=>838,10529=>838,10530=>838,10531=>838,10532=>838,10533=>838,10534=>838,10535=>838,10536=>838,\n10537=>838,10538=>838,10539=>838,10540=>838,10541=>838,10542=>838,10543=>838,10544=>838,10545=>838,10546=>838,\n10547=>838,10548=>838,10549=>838,10550=>838,10551=>838,10552=>838,10553=>838,10554=>838,10555=>838,10556=>838,\n10557=>838,10558=>838,10559=>838,10560=>838,10561=>838,10562=>838,10563=>838,10564=>838,10565=>838,10566=>838,\n10567=>838,10568=>838,10569=>838,10570=>838,10571=>838,10572=>838,10573=>838,10574=>838,10575=>838,10576=>838,\n10577=>838,10578=>838,10579=>838,10580=>838,10581=>838,10582=>838,10583=>838,10584=>838,10585=>838,10586=>838,\n10587=>838,10588=>838,10589=>838,10590=>838,10591=>838,10592=>838,10593=>838,10594=>838,10595=>838,10596=>838,\n10597=>838,10598=>838,10599=>838,10600=>838,10601=>838,10602=>838,10603=>838,10604=>838,10605=>838,10606=>838,\n10607=>838,10608=>838,10609=>838,10610=>838,10611=>838,10612=>838,10613=>838,10614=>838,10615=>1032,10616=>838,\n10617=>838,10618=>960,10619=>838,10620=>838,10621=>838,10622=>838,10623=>838,10731=>494,10764=>1782,10765=>610,\n10766=>610,10799=>838,11008=>838,11009=>838,11010=>838,11011=>838,11012=>838,11013=>838,11014=>838,11015=>838,\n11016=>838,11017=>838,11018=>838,11019=>838,11020=>838,11021=>838,11022=>838,11023=>838,11024=>838,11025=>838,\n11026=>945,11027=>945,11028=>945,11029=>945,11030=>769,11031=>769,11032=>769,11033=>769,11034=>945,11364=>831,\n11367=>945,11368=>727,11369=>869,11370=>693,11371=>730,11372=>568,11374=>1107,11375=>776,11381=>779,11382=>576,\n11383=>905,11385=>571,11386=>667,11388=>313,11389=>489,11520=>773,11521=>635,11522=>804,11523=>658,11524=>788,\n11525=>962,11526=>756,11527=>960,11528=>617,11529=>646,11530=>962,11531=>631,11532=>646,11533=>962,11534=>846,\n11535=>866,11536=>961,11537=>645,11538=>645,11539=>959,11540=>945,11541=>863,11542=>644,11543=>646,11544=>645,\n11545=>649,11546=>688,11547=>936,11548=>982,11549=>681,11550=>676,11551=>852,11552=>1113,11553=>632,11554=>645,\n11555=>646,11556=>749,11557=>914,11800=>586,11810=>473,11811=>473,11812=>473,11813=>473,11822=>586,42564=>722,\n42565=>563,42566=>468,42567=>380,42576=>1333,42577=>1085,42580=>1287,42581=>1025,42582=>1287,42583=>1029,42760=>500,\n42761=>500,42762=>500,42763=>500,42764=>500,42765=>500,42766=>500,42767=>500,42768=>500,42769=>500,42770=>500,\n42771=>500,42772=>500,42773=>500,42774=>500,42779=>384,42780=>384,42781=>276,42782=>276,42783=>276,42891=>439,\n42892=>306,62464=>726,62465=>737,62466=>786,62467=>1019,62468=>737,62469=>731,62470=>796,62471=>1058,62472=>737,\n62473=>737,62474=>1329,62475=>754,62476=>753,62477=>1024,62478=>737,62479=>753,62480=>1070,62481=>818,62482=>870,\n62483=>819,62484=>1016,62485=>753,62486=>1008,62487=>752,62488=>760,62489=>753,62490=>800,62491=>753,62492=>760,\n62493=>738,62494=>801,62495=>956,62496=>736,62497=>847,62498=>737,62499=>737,62500=>737,62501=>793,62502=>1033,\n62504=>904,63172=>563,63173=>667,63174=>699,63175=>727,63176=>1058,63185=>500,63188=>500,64256=>827,64257=>727,\n64258=>727,64259=>1108,64260=>1146,64261=>879,64262=>971,65024=>0,65025=>0,65026=>0,65027=>0,65028=>0,\n65029=>0,65030=>0,65031=>0,65032=>0,65033=>0,65034=>0,65035=>0,65036=>0,65037=>0,65038=>0,\n65039=>0,65529=>0,65530=>0,65531=>0,65532=>0,65533=>1113);\n$enc='';\n$diff='';\n$file='dejavuserifbi.z';\n$ctg='dejavuserifbi.ctg.z';\n$originalsize=294244;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavuserifcondensed.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='DejaVuSerifCondensed';\n$desc=array('Ascent'=>928,'Descent'=>-236,'CapHeight'=>5,'Flags'=>32,'FontBBox'=>'[-692 -347 1511 1242]','ItalicAngle'=>0,'StemV'=>70,'MissingWidth'=>540);\n$up=-63;\n$ut=44;\n$dw=540;\n$cw=array(\n0=>540,32=>286,33=>361,34=>414,35=>754,36=>572,37=>855,38=>801,39=>247,40=>351,\n41=>351,42=>450,43=>754,44=>286,45=>304,46=>286,47=>303,48=>572,49=>572,50=>572,\n51=>572,52=>572,53=>572,54=>572,55=>572,56=>572,57=>572,58=>303,59=>303,60=>754,\n61=>754,62=>754,63=>482,64=>900,65=>650,66=>661,67=>688,68=>721,69=>657,70=>624,\n71=>719,72=>785,73=>355,74=>360,75=>672,76=>598,77=>921,78=>787,79=>738,80=>605,\n81=>738,82=>677,83=>616,84=>600,85=>758,86=>650,87=>925,88=>641,89=>594,90=>625,\n91=>351,92=>303,93=>351,94=>754,95=>450,96=>450,97=>536,98=>576,99=>504,100=>576,\n101=>532,102=>333,103=>576,104=>580,105=>288,106=>279,107=>545,108=>288,109=>853,110=>580,\n111=>542,112=>576,113=>576,114=>430,115=>461,116=>361,117=>580,118=>508,119=>770,120=>507,\n121=>508,122=>474,123=>572,124=>303,125=>572,126=>754,8364=>572,8218=>286,402=>333,8222=>466,\n8230=>900,8224=>450,8225=>450,710=>450,8240=>1208,352=>616,8249=>360,338=>1023,381=>625,8216=>286,\n8217=>286,8220=>460,8221=>460,8226=>531,8211=>450,8212=>900,732=>450,8482=>900,353=>461,8250=>360,\n339=>890,382=>474,376=>594,160=>286,161=>361,162=>572,163=>572,164=>572,165=>572,166=>303,\n167=>450,168=>450,169=>900,170=>427,171=>550,172=>754,173=>304,174=>900,175=>450,176=>450,\n177=>754,178=>360,179=>360,180=>450,181=>584,182=>572,183=>286,184=>450,185=>360,186=>423,\n187=>550,188=>872,189=>872,190=>872,191=>482,192=>650,193=>650,194=>650,195=>650,196=>650,\n197=>650,198=>901,199=>688,200=>657,201=>657,202=>657,203=>657,204=>355,205=>355,206=>355,\n207=>355,208=>726,209=>787,210=>738,211=>738,212=>738,213=>738,214=>738,215=>754,216=>738,\n217=>758,218=>758,219=>758,220=>758,221=>594,222=>608,223=>601,224=>536,225=>536,226=>536,\n227=>536,228=>536,229=>536,230=>846,231=>504,232=>532,233=>532,234=>532,235=>532,236=>288,\n237=>288,238=>288,239=>288,240=>542,241=>580,242=>542,243=>542,244=>542,245=>542,246=>542,\n247=>754,248=>542,249=>580,250=>580,251=>580,252=>580,253=>508,254=>576,255=>508,256=>650,\n257=>536,258=>650,259=>536,260=>650,261=>536,262=>688,263=>504,264=>688,265=>504,266=>688,\n267=>504,268=>688,269=>504,270=>721,271=>576,272=>726,273=>576,274=>657,275=>532,276=>657,\n277=>532,278=>657,279=>532,280=>657,281=>532,282=>657,283=>532,284=>719,285=>576,286=>719,\n287=>576,288=>719,289=>576,290=>719,291=>576,292=>785,293=>580,294=>785,295=>580,296=>355,\n297=>288,298=>355,299=>288,300=>355,301=>288,302=>355,303=>288,304=>355,305=>288,306=>721,\n307=>479,308=>360,309=>279,310=>672,311=>545,312=>545,313=>598,314=>288,315=>598,316=>288,\n317=>598,318=>288,319=>598,320=>288,321=>602,322=>292,323=>787,324=>580,325=>787,326=>580,\n327=>787,328=>580,329=>779,330=>758,331=>580,332=>738,333=>542,334=>738,335=>542,336=>738,\n337=>542,340=>677,341=>430,342=>677,343=>430,344=>677,345=>430,346=>616,347=>461,348=>616,\n349=>461,350=>616,351=>461,354=>600,355=>361,356=>600,357=>361,358=>600,359=>361,360=>758,\n361=>580,362=>758,363=>580,364=>758,365=>580,366=>758,367=>580,368=>758,369=>580,370=>758,\n371=>580,372=>925,373=>770,374=>594,375=>508,377=>625,378=>474,379=>625,380=>474,383=>333,\n384=>576,385=>661,386=>661,387=>576,388=>661,389=>576,390=>688,391=>688,392=>504,393=>726,\n394=>721,395=>661,396=>576,397=>542,398=>657,399=>738,400=>561,401=>624,403=>719,404=>641,\n405=>839,406=>355,407=>355,408=>672,409=>545,410=>288,411=>570,412=>853,413=>787,414=>580,\n415=>738,416=>738,417=>542,418=>936,419=>726,420=>605,421=>576,422=>677,423=>616,424=>461,\n425=>636,426=>292,427=>361,428=>600,429=>361,430=>600,431=>758,432=>580,433=>746,434=>684,\n435=>664,436=>596,437=>625,438=>474,439=>508,440=>508,441=>508,443=>572,444=>618,445=>508,\n446=>482,448=>265,449=>443,450=>413,451=>265,452=>1347,453=>1195,454=>1050,455=>958,456=>876,\n457=>567,458=>1148,459=>1066,460=>858,461=>650,462=>536,463=>355,464=>288,465=>738,466=>542,\n467=>758,468=>580,469=>758,470=>580,471=>758,472=>580,473=>758,474=>580,475=>758,476=>580,\n477=>532,478=>650,479=>536,480=>650,481=>536,482=>901,483=>846,484=>763,485=>576,486=>719,\n487=>576,488=>672,489=>545,490=>738,491=>542,492=>738,493=>542,494=>508,495=>508,496=>288,\n497=>1347,498=>1195,499=>1050,500=>719,501=>576,502=>1038,504=>787,505=>580,506=>650,507=>536,\n508=>901,509=>846,510=>738,511=>542,512=>650,513=>536,514=>650,515=>536,516=>657,517=>532,\n518=>657,519=>532,520=>355,521=>288,522=>355,523=>288,524=>738,525=>542,526=>738,527=>542,\n528=>677,529=>430,530=>677,531=>430,532=>758,533=>580,534=>758,535=>580,536=>616,537=>461,\n538=>600,539=>361,540=>564,541=>469,542=>785,543=>580,544=>758,545=>732,548=>625,549=>474,\n550=>650,551=>536,552=>657,553=>532,554=>738,555=>542,556=>738,557=>542,558=>738,559=>542,\n560=>738,561=>542,562=>594,563=>508,564=>450,565=>748,566=>444,567=>279,568=>864,569=>864,\n570=>650,571=>688,572=>504,573=>598,574=>600,575=>461,576=>474,577=>525,578=>417,581=>650,\n592=>536,593=>576,594=>576,595=>576,596=>504,597=>504,598=>582,599=>614,600=>532,601=>532,\n602=>759,603=>466,604=>458,605=>695,606=>552,607=>283,608=>615,609=>576,610=>489,611=>641,\n612=>507,613=>580,614=>580,615=>580,616=>288,617=>353,618=>288,619=>342,620=>409,621=>326,\n622=>633,623=>853,624=>853,625=>853,626=>579,627=>624,628=>581,629=>542,630=>711,631=>583,\n632=>542,633=>451,634=>451,635=>496,636=>430,637=>430,638=>407,639=>407,640=>534,641=>534,\n642=>461,643=>244,644=>333,645=>438,646=>292,647=>361,648=>361,649=>580,650=>558,651=>547,\n652=>508,653=>770,654=>508,655=>589,656=>537,657=>504,658=>508,659=>504,660=>482,661=>482,\n662=>482,663=>461,664=>738,665=>506,666=>552,667=>588,668=>600,669=>329,670=>545,671=>581,\n672=>615,673=>482,674=>482,675=>896,676=>930,677=>898,678=>728,679=>538,680=>704,681=>804,\n682=>582,683=>608,684=>538,685=>398,686=>703,687=>690,688=>389,689=>387,690=>237,691=>312,\n692=>312,693=>387,694=>352,695=>527,696=>381,697=>250,699=>286,700=>286,701=>286,702=>276,\n703=>276,704=>252,705=>252,711=>450,712=>247,713=>450,716=>247,720=>303,721=>303,722=>276,\n723=>276,726=>295,728=>450,729=>450,730=>450,731=>450,733=>450,734=>375,736=>402,737=>218,\n738=>303,739=>381,740=>252,741=>444,742=>444,743=>444,744=>444,745=>444,750=>435,768=>0,\n769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,\n779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,\n789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,\n799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,\n809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,\n819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,\n829=>0,830=>0,831=>0,835=>0,847=>0,856=>0,865=>0,880=>666,881=>478,884=>250,\n885=>250,890=>450,891=>504,892=>504,893=>504,894=>303,900=>450,901=>450,902=>650,903=>286,\n904=>810,905=>935,906=>505,908=>751,910=>808,911=>767,912=>353,913=>650,914=>661,915=>624,\n916=>650,917=>657,918=>625,919=>785,920=>738,921=>355,922=>672,923=>650,924=>921,925=>787,\n926=>633,927=>738,928=>785,929=>605,931=>636,932=>600,933=>594,934=>738,935=>641,936=>789,\n937=>746,938=>355,939=>594,940=>607,941=>466,942=>539,943=>353,944=>547,945=>607,946=>520,\n947=>538,948=>542,949=>466,950=>488,951=>539,952=>542,953=>353,954=>563,955=>570,956=>584,\n957=>547,958=>496,959=>542,960=>591,961=>529,962=>504,963=>614,964=>498,965=>547,966=>630,\n967=>545,968=>706,969=>734,970=>353,971=>547,972=>542,973=>547,974=>734,976=>524,977=>643,\n978=>618,979=>787,980=>618,981=>613,982=>734,983=>561,984=>738,985=>542,986=>688,987=>504,\n988=>624,989=>417,990=>531,991=>593,992=>704,993=>519,1008=>561,1009=>529,1010=>504,1011=>279,\n1012=>738,1013=>504,1014=>504,1015=>608,1016=>576,1017=>688,1018=>921,1019=>637,1020=>529,1021=>688,\n1022=>688,1023=>688,1024=>657,1025=>657,1026=>719,1027=>596,1028=>688,1029=>616,1030=>355,1031=>355,\n1032=>360,1033=>976,1034=>1006,1035=>785,1036=>696,1037=>785,1038=>650,1039=>785,1040=>681,1041=>661,\n1042=>661,1043=>596,1044=>731,1045=>657,1046=>1011,1047=>561,1048=>785,1049=>785,1050=>696,1051=>751,\n1052=>921,1053=>785,1054=>738,1055=>785,1056=>605,1057=>688,1058=>600,1059=>650,1060=>747,1061=>641,\n1062=>785,1063=>695,1064=>1027,1065=>1027,1066=>715,1067=>885,1068=>606,1069=>688,1070=>1074,1071=>727,\n1072=>536,1073=>542,1074=>506,1075=>471,1076=>554,1077=>532,1078=>828,1079=>491,1080=>600,1081=>600,\n1082=>563,1083=>571,1084=>700,1085=>600,1086=>542,1087=>600,1088=>576,1089=>504,1090=>498,1091=>529,\n1092=>704,1093=>507,1094=>579,1095=>595,1096=>836,1097=>836,1098=>572,1099=>716,1100=>490,1101=>504,\n1102=>783,1103=>567,1104=>532,1105=>532,1106=>561,1107=>471,1108=>504,1109=>461,1110=>288,1111=>288,\n1112=>279,1113=>759,1114=>774,1115=>580,1116=>563,1117=>600,1118=>529,1119=>590,1122=>686,1123=>542,\n1124=>1016,1125=>750,1130=>1011,1131=>828,1136=>849,1137=>812,1138=>738,1139=>497,1140=>773,1141=>610,\n1164=>636,1165=>490,1168=>604,1169=>476,1170=>596,1171=>471,1172=>655,1173=>552,1174=>1011,1175=>828,\n1176=>572,1177=>483,1178=>696,1179=>545,1182=>696,1183=>563,1184=>801,1185=>645,1186=>785,1187=>577,\n1188=>1025,1189=>767,1190=>1084,1191=>847,1194=>688,1195=>504,1196=>600,1197=>498,1198=>594,1199=>508,\n1200=>594,1201=>508,1202=>641,1203=>507,1204=>856,1205=>659,1206=>674,1207=>621,1210=>674,1211=>580,\n1216=>355,1217=>1011,1218=>828,1219=>672,1220=>545,1223=>785,1224=>600,1227=>674,1228=>600,1231=>288,\n1232=>681,1233=>536,1234=>681,1235=>536,1236=>901,1237=>846,1238=>657,1239=>532,1240=>738,1241=>532,\n1242=>738,1243=>532,1244=>1011,1245=>828,1246=>561,1247=>491,1248=>508,1249=>508,1250=>785,1251=>600,\n1252=>785,1253=>600,1254=>738,1255=>542,1256=>738,1257=>542,1258=>738,1259=>542,1260=>688,1261=>504,\n1262=>650,1263=>529,1264=>650,1265=>529,1266=>650,1267=>529,1268=>695,1269=>595,1270=>596,1271=>471,\n1272=>885,1273=>716,1296=>561,1297=>491,1298=>751,1299=>571,1300=>1078,1301=>827,1306=>738,1307=>576,\n1308=>925,1309=>770,4256=>650,4257=>765,4258=>745,4259=>773,4260=>659,4261=>883,4262=>824,4263=>991,\n4264=>510,4265=>675,4266=>866,4267=>847,4268=>668,4269=>967,4270=>807,4271=>746,4272=>936,4273=>660,\n4274=>602,4275=>914,4276=>843,4277=>917,4278=>658,4279=>659,4280=>659,4281=>660,4282=>791,4283=>843,\n4284=>642,4285=>679,4286=>660,4287=>862,4288=>900,4289=>632,4290=>777,4291=>660,4292=>753,4293=>855,\n4304=>486,4305=>514,4306=>530,4307=>750,4308=>505,4309=>501,4310=>556,4311=>774,4312=>503,4313=>491,\n4314=>959,4315=>527,4316=>527,4317=>743,4318=>513,4319=>522,4320=>741,4321=>546,4322=>673,4323=>628,\n4324=>733,4325=>526,4326=>772,4327=>511,4328=>534,4329=>527,4330=>607,4331=>528,4332=>523,4333=>518,\n4334=>550,4335=>615,4336=>514,4337=>542,4338=>514,4339=>514,4340=>513,4341=>584,4342=>797,4343=>563,\n4344=>523,4345=>557,4346=>514,4347=>393,4348=>318,7426=>846,7432=>458,7433=>288,7444=>890,7446=>542,\n7447=>542,7453=>663,7454=>853,7455=>853,7468=>409,7469=>567,7470=>417,7472=>454,7473=>413,7474=>413,\n7475=>453,7476=>494,7477=>224,7478=>227,7479=>423,7480=>376,7481=>580,7482=>496,7483=>496,7484=>464,\n7486=>381,7487=>426,7488=>378,7489=>478,7490=>583,7491=>347,7492=>347,7493=>360,7494=>556,7495=>360,\n7496=>360,7497=>348,7498=>348,7499=>306,7500=>306,7501=>360,7502=>157,7503=>328,7504=>552,7505=>359,\n7506=>347,7507=>312,7508=>347,7509=>347,7510=>360,7511=>222,7512=>359,7513=>417,7514=>552,7515=>335,\n7522=>181,7523=>312,7524=>359,7525=>335,7543=>576,7544=>494,7547=>334,7557=>288,7579=>360,7580=>312,\n7581=>312,7582=>347,7583=>306,7584=>199,7585=>206,7586=>360,7587=>359,7588=>210,7589=>219,7590=>210,\n7591=>210,7592=>207,7593=>158,7594=>157,7595=>330,7596=>552,7597=>552,7598=>366,7599=>364,7600=>359,\n7601=>347,7602=>347,7603=>295,7604=>190,7605=>222,7606=>359,7607=>350,7609=>338,7610=>335,7611=>297,\n7612=>297,7613=>297,7614=>327,7615=>347,7620=>0,7621=>0,7622=>0,7623=>0,7624=>0,7625=>0,\n7680=>650,7681=>536,7682=>661,7683=>576,7684=>661,7685=>576,7686=>661,7687=>576,7688=>688,7689=>504,\n7690=>721,7691=>576,7692=>721,7693=>576,7694=>721,7695=>576,7696=>721,7697=>576,7698=>721,7699=>576,\n7700=>657,7701=>532,7702=>657,7703=>532,7704=>657,7705=>532,7706=>657,7707=>532,7708=>657,7709=>532,\n7710=>624,7711=>333,7712=>719,7713=>576,7714=>785,7715=>580,7716=>785,7717=>580,7718=>785,7719=>580,\n7720=>785,7721=>580,7722=>785,7723=>580,7724=>355,7725=>288,7728=>672,7729=>545,7730=>672,7731=>545,\n7732=>672,7733=>545,7734=>598,7735=>288,7736=>598,7737=>288,7738=>598,7739=>288,7740=>598,7741=>288,\n7742=>921,7743=>853,7744=>921,7745=>853,7746=>921,7747=>853,7748=>787,7749=>580,7750=>787,7751=>580,\n7752=>787,7753=>580,7754=>787,7755=>580,7756=>738,7757=>542,7760=>738,7761=>542,7762=>738,7763=>542,\n7764=>605,7765=>576,7766=>605,7767=>576,7768=>677,7769=>430,7770=>677,7771=>430,7772=>677,7773=>430,\n7774=>677,7775=>430,7776=>616,7777=>461,7778=>616,7779=>461,7784=>616,7785=>461,7786=>600,7787=>361,\n7788=>600,7789=>361,7790=>600,7791=>361,7792=>600,7793=>361,7794=>758,7795=>580,7796=>758,7797=>580,\n7798=>758,7799=>580,7800=>758,7801=>580,7802=>758,7803=>580,7804=>650,7805=>508,7806=>650,7807=>508,\n7808=>925,7809=>770,7810=>925,7811=>770,7812=>925,7813=>770,7814=>925,7815=>770,7816=>925,7817=>770,\n7818=>641,7819=>507,7820=>641,7821=>507,7822=>594,7823=>508,7824=>625,7825=>474,7826=>625,7827=>474,\n7828=>625,7829=>474,7830=>580,7831=>361,7832=>770,7833=>508,7834=>813,7835=>333,7838=>746,7839=>542,\n7840=>650,7841=>536,7842=>650,7843=>536,7852=>650,7853=>536,7854=>650,7855=>536,7856=>650,7857=>536,\n7858=>650,7859=>536,7860=>650,7861=>536,7862=>650,7863=>536,7864=>657,7865=>532,7866=>657,7867=>532,\n7868=>657,7869=>532,7878=>657,7879=>532,7880=>355,7881=>288,7882=>355,7883=>288,7884=>738,7885=>542,\n7886=>738,7887=>542,7896=>738,7897=>542,7908=>758,7909=>580,7910=>758,7911=>580,7922=>594,7923=>508,\n7924=>594,7925=>508,7926=>594,7927=>508,7928=>594,7929=>508,7936=>607,7937=>607,7938=>607,7939=>607,\n7940=>607,7941=>607,7942=>607,7943=>607,7944=>650,7945=>650,7946=>782,7947=>782,7948=>660,7949=>687,\n7950=>650,7951=>650,7952=>483,7953=>483,7954=>483,7955=>483,7956=>483,7957=>483,7960=>768,7961=>757,\n7962=>960,7963=>969,7964=>907,7965=>931,7968=>539,7969=>539,7970=>539,7971=>539,7972=>539,7973=>539,\n7974=>539,7975=>539,7976=>898,7977=>893,7978=>1090,7979=>1101,7980=>1043,7981=>1064,7982=>988,7983=>985,\n7984=>353,7985=>353,7986=>353,7987=>353,7988=>353,7989=>353,7990=>353,7991=>353,7992=>469,7993=>461,\n7994=>661,7995=>664,7996=>611,7997=>635,7998=>561,7999=>553,8000=>542,8001=>542,8002=>542,8003=>542,\n8004=>542,8005=>542,8008=>738,8009=>773,8010=>1008,8011=>1015,8012=>843,8013=>867,8016=>547,8017=>547,\n8018=>547,8019=>547,8020=>547,8021=>547,8022=>547,8023=>547,8025=>765,8027=>971,8029=>939,8031=>857,\n8032=>734,8033=>734,8034=>734,8035=>734,8036=>734,8037=>734,8038=>734,8039=>734,8040=>746,8041=>783,\n8042=>1018,8043=>1023,8044=>852,8045=>878,8046=>844,8047=>873,8048=>607,8049=>607,8050=>483,8051=>483,\n8052=>539,8053=>539,8054=>353,8055=>353,8056=>542,8057=>542,8058=>547,8059=>547,8060=>734,8061=>734,\n8064=>607,8065=>607,8066=>607,8067=>607,8068=>607,8069=>607,8070=>607,8071=>607,8072=>650,8073=>650,\n8074=>782,8075=>782,8076=>660,8077=>687,8078=>650,8079=>650,8080=>539,8081=>539,8082=>539,8083=>539,\n8084=>539,8085=>539,8086=>539,8087=>539,8088=>898,8089=>893,8090=>1090,8091=>1101,8092=>1043,8093=>1064,\n8094=>988,8095=>985,8096=>734,8097=>734,8098=>734,8099=>734,8100=>734,8101=>734,8102=>734,8103=>734,\n8104=>746,8105=>783,8106=>1018,8107=>1023,8108=>852,8109=>878,8110=>844,8111=>873,8112=>607,8113=>607,\n8114=>607,8115=>607,8116=>607,8118=>607,8119=>607,8120=>650,8121=>650,8122=>650,8123=>650,8124=>650,\n8125=>450,8126=>450,8127=>450,8128=>450,8129=>450,8130=>539,8131=>539,8132=>539,8134=>539,8135=>539,\n8136=>820,8137=>810,8138=>956,8139=>935,8140=>785,8141=>450,8142=>450,8143=>450,8144=>353,8145=>353,\n8146=>353,8147=>353,8150=>353,8151=>353,8152=>355,8153=>355,8154=>529,8155=>505,8157=>450,8158=>450,\n8159=>450,8160=>547,8161=>547,8162=>547,8163=>547,8164=>529,8165=>529,8166=>547,8167=>547,8168=>594,\n8169=>594,8170=>829,8171=>808,8172=>711,8173=>450,8174=>450,8175=>450,8178=>734,8179=>734,8180=>734,\n8182=>734,8183=>734,8184=>865,8185=>751,8186=>886,8187=>767,8188=>746,8189=>450,8190=>450,8192=>450,\n8193=>900,8194=>450,8195=>900,8196=>296,8197=>225,8198=>150,8199=>572,8200=>286,8201=>180,8202=>89,\n8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>304,8209=>304,8210=>572,8213=>900,8214=>450,\n8215=>450,8219=>286,8223=>460,8227=>531,8228=>300,8229=>600,8234=>0,8235=>0,8236=>0,8237=>0,\n8238=>0,8239=>180,8241=>1560,8242=>204,8243=>336,8244=>468,8245=>204,8246=>336,8247=>468,8248=>305,\n8252=>475,8253=>482,8254=>450,8258=>900,8260=>150,8261=>351,8262=>351,8263=>878,8264=>678,8265=>678,\n8267=>572,8268=>450,8269=>450,8270=>450,8271=>303,8273=>450,8274=>404,8275=>900,8279=>597,8287=>200,\n8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8298=>0,8299=>0,8300=>0,8301=>0,8302=>0,\n8303=>0,8304=>360,8305=>181,8308=>360,8309=>360,8310=>360,8311=>360,8312=>360,8313=>360,8314=>475,\n8315=>475,8316=>475,8317=>221,8318=>221,8319=>389,8320=>360,8321=>360,8322=>360,8323=>360,8324=>360,\n8325=>360,8326=>360,8327=>360,8328=>360,8329=>360,8330=>475,8331=>475,8332=>475,8333=>221,8334=>221,\n8336=>347,8337=>348,8338=>347,8339=>381,8340=>348,8358=>594,8367=>951,8369=>635,8372=>702,8373=>572,\n8450=>716,8451=>1006,8457=>942,8461=>850,8462=>580,8463=>580,8469=>822,8470=>852,8473=>677,8474=>784,\n8477=>748,8484=>657,8486=>746,8487=>746,8490=>672,8491=>650,8508=>659,8509=>594,8510=>639,8511=>850,\n8512=>642,8513=>697,8514=>501,8515=>501,8516=>549,8517=>780,8518=>629,8519=>572,8520=>342,8521=>325,\n8523=>801,8531=>872,8532=>872,8533=>872,8534=>872,8535=>872,8536=>872,8537=>872,8538=>872,8539=>872,\n8540=>872,8541=>872,8542=>872,8543=>511,8544=>355,8545=>531,8546=>707,8547=>870,8548=>650,8549=>883,\n8550=>1059,8551=>1234,8552=>838,8553=>641,8554=>839,8555=>1015,8556=>598,8557=>688,8558=>721,8559=>921,\n8560=>288,8561=>576,8562=>863,8563=>796,8564=>508,8565=>796,8566=>1084,8567=>1372,8568=>795,8569=>507,\n8570=>795,8571=>1083,8572=>288,8573=>504,8574=>576,8575=>853,8576=>1085,8577=>721,8578=>1085,8579=>688,\n8580=>504,8592=>754,8593=>754,8594=>754,8595=>754,8596=>754,8597=>754,8598=>754,8599=>754,8600=>754,\n8601=>754,8602=>754,8603=>754,8604=>754,8605=>754,8606=>754,8607=>754,8608=>754,8609=>754,8610=>754,\n8611=>754,8612=>754,8613=>754,8614=>754,8615=>754,8616=>754,8617=>754,8618=>754,8619=>754,8620=>754,\n8621=>754,8622=>754,8623=>754,8624=>754,8625=>754,8626=>754,8627=>754,8628=>754,8629=>754,8630=>754,\n8631=>754,8632=>754,8633=>754,8634=>754,8635=>754,8636=>754,8637=>754,8638=>754,8639=>754,8640=>754,\n8641=>754,8642=>754,8643=>754,8644=>754,8645=>754,8646=>754,8647=>754,8648=>754,8649=>754,8650=>754,\n8651=>754,8652=>754,8653=>754,8654=>754,8655=>754,8656=>754,8657=>754,8658=>754,8659=>754,8660=>754,\n8661=>754,8662=>754,8663=>754,8664=>754,8665=>754,8666=>754,8667=>754,8668=>754,8669=>754,8670=>754,\n8671=>754,8672=>754,8673=>754,8674=>754,8675=>754,8676=>754,8677=>754,8678=>754,8679=>754,8680=>754,\n8681=>754,8682=>754,8683=>754,8684=>754,8685=>754,8686=>754,8687=>754,8688=>754,8689=>754,8690=>754,\n8691=>754,8692=>754,8693=>754,8694=>754,8695=>754,8696=>754,8697=>754,8698=>754,8699=>754,8700=>754,\n8701=>754,8702=>754,8703=>754,8704=>543,8706=>465,8707=>488,8708=>488,8710=>628,8711=>628,8712=>666,\n8713=>666,8715=>666,8716=>666,8719=>716,8720=>716,8721=>642,8722=>754,8723=>754,8724=>754,8725=>303,\n8727=>611,8728=>441,8729=>441,8730=>573,8731=>573,8732=>573,8733=>609,8734=>750,8735=>754,8736=>754,\n8739=>262,8740=>431,8741=>416,8742=>570,8743=>659,8744=>659,8745=>754,8746=>754,8747=>469,8748=>766,\n8749=>1063,8760=>754,8761=>754,8762=>754,8763=>754,8764=>754,8765=>754,8770=>754,8771=>754,8776=>754,\n8784=>754,8785=>754,8786=>754,8787=>754,8788=>930,8789=>930,8800=>754,8801=>754,8804=>754,8805=>754,\n8834=>754,8835=>754,8836=>754,8837=>754,8838=>754,8839=>754,8844=>754,8845=>754,8846=>754,8847=>761,\n8848=>761,8849=>761,8850=>761,8851=>754,8852=>754,8853=>754,8854=>754,8855=>754,8856=>754,8857=>754,\n8858=>754,8859=>754,8860=>754,8861=>754,8862=>754,8863=>754,8864=>754,8865=>754,8866=>773,8867=>773,\n8868=>846,8869=>846,8870=>510,8871=>510,8872=>773,8873=>773,8874=>773,8875=>927,8876=>773,8877=>773,\n8878=>773,8879=>927,8901=>308,8962=>687,8968=>351,8969=>351,8970=>351,8971=>351,8976=>754,8977=>461,\n8984=>900,8985=>754,8992=>469,8993=>469,8997=>900,9000=>1299,9085=>827,9134=>469,9167=>850,9251=>687,\n9472=>542,9473=>542,9474=>542,9475=>542,9476=>542,9477=>542,9478=>542,9479=>542,9480=>542,9481=>542,\n9482=>542,9483=>542,9484=>542,9485=>542,9486=>542,9487=>542,9488=>542,9489=>542,9490=>542,9491=>542,\n9492=>542,9493=>542,9494=>542,9495=>542,9496=>542,9497=>542,9498=>542,9499=>542,9500=>542,9501=>542,\n9502=>542,9503=>542,9504=>542,9505=>542,9506=>542,9507=>542,9508=>542,9509=>542,9510=>542,9511=>542,\n9512=>542,9513=>542,9514=>542,9515=>542,9516=>542,9517=>542,9518=>542,9519=>542,9520=>542,9521=>542,\n9522=>542,9523=>542,9524=>542,9525=>542,9526=>542,9527=>542,9528=>542,9529=>542,9530=>542,9531=>542,\n9532=>542,9533=>542,9534=>542,9535=>542,9536=>542,9537=>542,9538=>542,9539=>542,9540=>542,9541=>542,\n9542=>542,9543=>542,9544=>542,9545=>542,9546=>542,9547=>542,9548=>542,9549=>542,9550=>542,9551=>542,\n9552=>542,9553=>542,9554=>542,9555=>542,9556=>542,9557=>542,9558=>542,9559=>542,9560=>542,9561=>542,\n9562=>542,9563=>542,9564=>542,9565=>542,9566=>542,9567=>542,9568=>542,9569=>542,9570=>542,9571=>542,\n9572=>542,9573=>542,9574=>542,9575=>542,9576=>542,9577=>542,9578=>542,9579=>542,9580=>542,9581=>542,\n9582=>542,9583=>542,9584=>542,9585=>542,9586=>542,9587=>542,9588=>542,9589=>542,9590=>542,9591=>542,\n9592=>542,9593=>542,9594=>542,9595=>542,9596=>542,9597=>542,9598=>542,9599=>542,9600=>692,9601=>692,\n9602=>692,9603=>692,9604=>692,9605=>692,9606=>692,9607=>692,9608=>692,9609=>692,9610=>692,9611=>692,\n9612=>692,9613=>692,9614=>692,9615=>692,9616=>692,9617=>692,9618=>692,9619=>692,9620=>692,9621=>692,\n9622=>692,9623=>692,9624=>692,9625=>692,9626=>692,9627=>692,9628=>692,9629=>692,9630=>692,9631=>692,\n9632=>850,9633=>850,9634=>850,9635=>850,9636=>850,9637=>850,9638=>850,9639=>850,9640=>850,9641=>850,\n9642=>610,9643=>610,9644=>850,9645=>850,9646=>495,9647=>495,9648=>692,9649=>692,9650=>692,9651=>692,\n9652=>452,9653=>452,9654=>692,9655=>692,9656=>452,9657=>452,9658=>692,9659=>692,9660=>692,9661=>692,\n9662=>452,9663=>452,9664=>692,9665=>692,9666=>452,9667=>452,9668=>692,9669=>692,9670=>692,9671=>692,\n9672=>692,9673=>785,9674=>444,9675=>785,9676=>785,9677=>785,9678=>785,9679=>785,9680=>785,9681=>785,\n9682=>785,9683=>785,9684=>785,9685=>785,9686=>474,9687=>474,9688=>712,9689=>873,9690=>873,9691=>873,\n9692=>348,9693=>348,9694=>348,9695=>348,9696=>785,9697=>785,9698=>692,9699=>692,9700=>692,9701=>692,\n9702=>531,9703=>850,9704=>850,9705=>850,9706=>850,9707=>850,9708=>692,9709=>692,9710=>692,9711=>1007,\n9712=>850,9713=>850,9714=>850,9715=>850,9716=>785,9717=>785,9718=>785,9719=>785,9720=>692,9721=>692,\n9722=>692,9723=>747,9724=>747,9725=>659,9726=>659,9727=>692,9728=>807,9784=>807,9785=>807,9786=>807,\n9787=>807,9788=>807,9791=>552,9792=>658,9793=>658,9794=>807,9795=>807,9796=>807,9797=>807,9798=>807,\n9799=>807,9824=>807,9825=>807,9826=>807,9827=>807,9828=>807,9829=>807,9830=>807,9831=>807,9833=>424,\n9834=>574,9835=>807,9836=>807,9837=>424,9838=>321,9839=>435,10145=>754,10181=>351,10182=>351,10208=>444,\n10216=>351,10217=>351,10224=>754,10225=>754,10226=>754,10227=>754,10228=>930,10229=>1290,10230=>1290,10231=>1290,\n10232=>1290,10233=>1290,10234=>1290,10235=>1290,10236=>1290,10237=>1290,10238=>1290,10239=>1290,10240=>659,10241=>659,\n10242=>659,10243=>659,10244=>659,10245=>659,10246=>659,10247=>659,10248=>659,10249=>659,10250=>659,10251=>659,\n10252=>659,10253=>659,10254=>659,10255=>659,10256=>659,10257=>659,10258=>659,10259=>659,10260=>659,10261=>659,\n10262=>659,10263=>659,10264=>659,10265=>659,10266=>659,10267=>659,10268=>659,10269=>659,10270=>659,10271=>659,\n10272=>659,10273=>659,10274=>659,10275=>659,10276=>659,10277=>659,10278=>659,10279=>659,10280=>659,10281=>659,\n10282=>659,10283=>659,10284=>659,10285=>659,10286=>659,10287=>659,10288=>659,10289=>659,10290=>659,10291=>659,\n10292=>659,10293=>659,10294=>659,10295=>659,10296=>659,10297=>659,10298=>659,10299=>659,10300=>659,10301=>659,\n10302=>659,10303=>659,10304=>659,10305=>659,10306=>659,10307=>659,10308=>659,10309=>659,10310=>659,10311=>659,\n10312=>659,10313=>659,10314=>659,10315=>659,10316=>659,10317=>659,10318=>659,10319=>659,10320=>659,10321=>659,\n10322=>659,10323=>659,10324=>659,10325=>659,10326=>659,10327=>659,10328=>659,10329=>659,10330=>659,10331=>659,\n10332=>659,10333=>659,10334=>659,10335=>659,10336=>659,10337=>659,10338=>659,10339=>659,10340=>659,10341=>659,\n10342=>659,10343=>659,10344=>659,10345=>659,10346=>659,10347=>659,10348=>659,10349=>659,10350=>659,10351=>659,\n10352=>659,10353=>659,10354=>659,10355=>659,10356=>659,10357=>659,10358=>659,10359=>659,10360=>659,10361=>659,\n10362=>659,10363=>659,10364=>659,10365=>659,10366=>659,10367=>659,10368=>659,10369=>659,10370=>659,10371=>659,\n10372=>659,10373=>659,10374=>659,10375=>659,10376=>659,10377=>659,10378=>659,10379=>659,10380=>659,10381=>659,\n10382=>659,10383=>659,10384=>659,10385=>659,10386=>659,10387=>659,10388=>659,10389=>659,10390=>659,10391=>659,\n10392=>659,10393=>659,10394=>659,10395=>659,10396=>659,10397=>659,10398=>659,10399=>659,10400=>659,10401=>659,\n10402=>659,10403=>659,10404=>659,10405=>659,10406=>659,10407=>659,10408=>659,10409=>659,10410=>659,10411=>659,\n10412=>659,10413=>659,10414=>659,10415=>659,10416=>659,10417=>659,10418=>659,10419=>659,10420=>659,10421=>659,\n10422=>659,10423=>659,10424=>659,10425=>659,10426=>659,10427=>659,10428=>659,10429=>659,10430=>659,10431=>659,\n10432=>659,10433=>659,10434=>659,10435=>659,10436=>659,10437=>659,10438=>659,10439=>659,10440=>659,10441=>659,\n10442=>659,10443=>659,10444=>659,10445=>659,10446=>659,10447=>659,10448=>659,10449=>659,10450=>659,10451=>659,\n10452=>659,10453=>659,10454=>659,10455=>659,10456=>659,10457=>659,10458=>659,10459=>659,10460=>659,10461=>659,\n10462=>659,10463=>659,10464=>659,10465=>659,10466=>659,10467=>659,10468=>659,10469=>659,10470=>659,10471=>659,\n10472=>659,10473=>659,10474=>659,10475=>659,10476=>659,10477=>659,10478=>659,10479=>659,10480=>659,10481=>659,\n10482=>659,10483=>659,10484=>659,10485=>659,10486=>659,10487=>659,10488=>659,10489=>659,10490=>659,10491=>659,\n10492=>659,10493=>659,10494=>659,10495=>659,10496=>754,10497=>754,10498=>754,10499=>754,10500=>754,10501=>754,\n10502=>754,10503=>754,10504=>754,10505=>754,10506=>754,10507=>754,10508=>754,10509=>754,10510=>754,10511=>754,\n10512=>754,10513=>754,10514=>754,10515=>754,10516=>754,10517=>754,10518=>754,10519=>754,10520=>754,10521=>754,\n10522=>754,10523=>754,10524=>754,10525=>754,10526=>754,10527=>754,10528=>754,10529=>754,10530=>754,10531=>754,\n10532=>754,10533=>754,10534=>754,10535=>754,10536=>754,10537=>754,10538=>754,10539=>754,10540=>754,10541=>754,\n10542=>754,10543=>754,10544=>754,10545=>754,10546=>754,10547=>754,10548=>754,10549=>754,10550=>754,10551=>754,\n10552=>754,10553=>754,10554=>754,10555=>754,10556=>754,10557=>754,10558=>754,10559=>754,10560=>754,10561=>754,\n10562=>754,10563=>754,10564=>754,10565=>754,10566=>754,10567=>754,10568=>754,10569=>754,10570=>754,10571=>754,\n10572=>754,10573=>754,10574=>754,10575=>754,10576=>754,10577=>754,10578=>754,10579=>754,10580=>754,10581=>754,\n10582=>754,10583=>754,10584=>754,10585=>754,10586=>754,10587=>754,10588=>754,10589=>754,10590=>754,10591=>754,\n10592=>754,10593=>754,10594=>754,10595=>754,10596=>754,10597=>754,10598=>754,10599=>754,10600=>754,10601=>754,\n10602=>754,10603=>754,10604=>754,10605=>754,10606=>754,10607=>754,10608=>754,10609=>754,10610=>754,10611=>754,\n10612=>754,10613=>754,10614=>754,10615=>883,10616=>754,10617=>754,10618=>886,10619=>754,10620=>754,10621=>754,\n10622=>754,10623=>754,10731=>444,10764=>1361,10765=>469,10766=>469,10799=>754,11008=>754,11009=>754,11010=>754,\n11011=>754,11012=>754,11013=>754,11014=>754,11015=>754,11016=>754,11017=>754,11018=>754,11019=>754,11020=>754,\n11021=>754,11022=>754,11023=>754,11024=>754,11025=>754,11026=>850,11027=>850,11028=>850,11029=>850,11030=>692,\n11031=>692,11032=>692,11033=>692,11034=>850,11364=>677,11367=>785,11368=>580,11369=>672,11370=>545,11371=>625,\n11372=>474,11374=>921,11375=>650,11381=>666,11382=>500,11383=>630,11385=>451,11386=>542,11388=>237,11389=>409,\n11520=>695,11521=>571,11522=>569,11523=>592,11524=>568,11525=>866,11526=>680,11527=>864,11528=>555,11529=>581,\n11530=>866,11531=>568,11532=>581,11533=>866,11534=>580,11535=>779,11536=>865,11537=>580,11538=>580,11539=>863,\n11540=>851,11541=>777,11542=>580,11543=>581,11544=>580,11545=>584,11546=>619,11547=>571,11548=>883,11549=>613,\n11550=>608,11551=>766,11552=>861,11553=>569,11554=>580,11555=>582,11556=>674,11557=>822,11800=>482,11810=>351,\n11811=>351,11812=>351,11813=>351,11822=>482,42564=>616,42565=>461,42566=>355,42567=>353,42576=>994,42577=>799,\n42580=>1074,42581=>783,42582=>1025,42583=>809,42760=>444,42761=>444,42762=>444,42763=>444,42764=>444,42765=>444,\n42766=>444,42767=>444,42768=>444,42769=>444,42770=>444,42771=>444,42772=>444,42773=>444,42774=>444,42779=>332,\n42780=>332,42781=>228,42782=>228,42783=>228,42891=>361,42892=>247,62464=>588,62465=>598,62466=>642,62467=>853,\n62468=>598,62469=>593,62470=>652,62471=>888,62472=>598,62473=>598,62474=>1131,62475=>614,62476=>613,62477=>857,\n62478=>598,62479=>613,62480=>898,62481=>671,62482=>718,62483=>672,62484=>850,62485=>613,62486=>842,62487=>612,\n62488=>619,62489=>613,62490=>655,62491=>613,62492=>619,62493=>599,62494=>656,62495=>795,62496=>598,62497=>635,\n62498=>599,62499=>598,62500=>598,62501=>649,62502=>865,62504=>813,63173=>542,63185=>450,63188=>450,64256=>639,\n64257=>600,64258=>600,64259=>925,64260=>927,64261=>694,64262=>839,65024=>0,65025=>0,65026=>0,65027=>0,\n65028=>0,65029=>0,65030=>0,65031=>0,65032=>0,65033=>0,65034=>0,65035=>0,65036=>0,65037=>0,\n65038=>0,65039=>0,65529=>0,65530=>0,65531=>0,65532=>0,65533=>923);\n$enc='';\n$diff='';\n$file='dejavuserifcondensed.z';\n$ctg='dejavuserifcondensed.ctg.z';\n$originalsize=295840;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavuserifcondensedb.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='DejaVuSerifCondensed-Bold';\n$desc=array('Ascent'=>939,'Descent'=>-236,'CapHeight'=>4,'Flags'=>32,'FontBBox'=>'[-752 -389 1616 1235]','ItalicAngle'=>0,'StemV'=>120,'MissingWidth'=>540);\n$up=-63;\n$ut=44;\n$dw=540;\n$cw=array(\n0=>540,32=>313,33=>395,34=>469,35=>754,36=>626,37=>855,38=>813,39=>275,40=>426,\n41=>426,42=>470,43=>754,44=>313,45=>374,46=>313,47=>329,48=>626,49=>626,50=>626,\n51=>626,52=>626,53=>626,54=>626,55=>626,56=>626,57=>626,58=>332,59=>332,60=>754,\n61=>754,62=>754,63=>527,64=>900,65=>698,66=>760,67=>716,68=>780,69=>686,70=>639,\n71=>769,72=>850,73=>421,74=>426,75=>782,76=>633,77=>996,78=>822,79=>784,80=>677,\n81=>784,82=>748,83=>650,84=>669,85=>785,86=>698,87=>1011,88=>698,89=>642,90=>657,\n91=>426,92=>329,93=>426,94=>754,95=>450,96=>450,97=>583,98=>629,99=>548,100=>629,\n101=>572,102=>387,103=>629,104=>654,105=>342,106=>325,107=>624,108=>342,109=>952,110=>654,\n111=>600,112=>629,113=>629,114=>474,115=>506,116=>416,117=>654,118=>523,119=>774,120=>536,\n121=>523,122=>511,123=>579,124=>327,125=>579,126=>754,8364=>626,8218=>313,402=>387,8222=>518,\n8230=>900,8224=>470,8225=>470,710=>450,8240=>1246,352=>650,8249=>360,338=>1062,381=>657,8216=>313,\n8217=>313,8220=>518,8221=>518,8226=>575,8211=>450,8212=>900,732=>450,8482=>900,353=>506,8250=>360,\n339=>925,382=>511,376=>642,160=>313,161=>395,162=>626,163=>626,164=>572,165=>626,166=>327,\n167=>470,168=>450,169=>900,170=>438,171=>563,172=>754,173=>374,174=>900,175=>450,176=>450,\n177=>754,178=>394,179=>394,180=>450,181=>659,182=>572,183=>313,184=>450,185=>394,186=>450,\n187=>563,188=>938,189=>938,190=>938,191=>527,192=>698,193=>698,194=>698,195=>698,196=>698,\n197=>698,198=>931,199=>716,200=>686,201=>686,202=>686,203=>686,204=>421,205=>421,206=>421,\n207=>421,208=>787,209=>822,210=>784,211=>784,212=>784,213=>784,214=>784,215=>754,216=>784,\n217=>785,218=>785,219=>785,220=>785,221=>642,222=>681,223=>684,224=>583,225=>583,226=>583,\n227=>583,228=>583,229=>583,230=>877,231=>548,232=>572,233=>572,234=>572,235=>572,236=>342,\n237=>342,238=>342,239=>342,240=>600,241=>654,242=>600,243=>600,244=>600,245=>600,246=>600,\n247=>754,248=>600,249=>654,250=>654,251=>654,252=>654,253=>523,254=>629,255=>523,256=>698,\n257=>583,258=>698,259=>583,260=>698,261=>583,262=>716,263=>548,264=>716,265=>548,266=>716,\n267=>548,268=>716,269=>548,270=>780,271=>629,272=>787,273=>629,274=>686,275=>572,276=>686,\n277=>572,278=>686,279=>572,280=>686,281=>572,282=>686,283=>572,284=>769,285=>629,286=>769,\n287=>629,288=>769,289=>629,290=>769,291=>629,292=>850,293=>654,294=>850,295=>654,296=>421,\n297=>342,298=>421,299=>342,300=>421,301=>342,302=>421,303=>342,304=>421,305=>342,306=>848,\n307=>676,308=>426,309=>325,310=>782,311=>624,312=>624,313=>633,314=>342,315=>633,316=>342,\n317=>633,318=>342,319=>633,320=>342,321=>639,322=>346,323=>822,324=>654,325=>822,326=>654,\n327=>822,328=>654,329=>907,330=>785,331=>654,332=>784,333=>600,334=>784,335=>600,336=>784,\n337=>600,340=>748,341=>474,342=>748,343=>474,344=>748,345=>474,346=>650,347=>506,348=>650,\n349=>506,350=>650,351=>506,354=>669,355=>416,356=>669,357=>416,358=>669,359=>416,360=>785,\n361=>654,362=>785,363=>654,364=>785,365=>654,366=>785,367=>654,368=>785,369=>654,370=>785,\n371=>654,372=>1011,373=>774,374=>642,375=>523,377=>657,378=>511,379=>657,380=>511,383=>387,\n384=>629,385=>760,386=>769,387=>629,388=>769,389=>629,390=>716,391=>716,392=>548,393=>787,\n394=>780,395=>769,396=>629,397=>600,398=>686,399=>784,400=>649,401=>639,403=>769,404=>693,\n405=>938,406=>421,407=>421,408=>782,409=>624,410=>342,411=>631,412=>952,413=>822,414=>654,\n415=>784,416=>784,417=>600,418=>1080,419=>849,420=>677,421=>629,422=>748,423=>650,424=>506,\n425=>636,426=>298,427=>416,428=>669,429=>416,430=>669,431=>785,432=>654,433=>801,434=>801,\n435=>642,436=>637,437=>657,438=>511,439=>591,440=>591,441=>591,443=>626,444=>678,445=>511,\n446=>482,448=>265,449=>443,450=>413,451=>265,452=>1437,453=>1292,454=>1140,455=>1059,456=>958,\n457=>667,458=>1248,459=>1148,460=>980,461=>698,462=>583,463=>421,464=>342,465=>784,466=>600,\n467=>785,468=>654,469=>785,470=>654,471=>785,472=>654,473=>785,474=>654,475=>785,476=>654,\n477=>572,478=>698,479=>583,480=>698,481=>583,482=>931,483=>877,484=>806,485=>629,486=>769,\n487=>629,488=>782,489=>624,490=>784,491=>600,492=>784,493=>600,494=>591,495=>511,496=>342,\n497=>1437,498=>1292,499=>1140,500=>769,501=>629,502=>1099,504=>822,505=>654,506=>698,507=>583,\n508=>931,509=>877,510=>784,511=>600,512=>698,513=>583,514=>698,515=>583,516=>686,517=>572,\n518=>686,519=>572,520=>421,521=>342,522=>421,523=>342,524=>784,525=>600,526=>784,527=>600,\n528=>748,529=>474,530=>748,531=>474,532=>785,533=>654,534=>785,535=>654,536=>650,537=>506,\n538=>669,539=>416,540=>621,541=>546,542=>850,543=>654,544=>785,545=>711,548=>657,549=>511,\n550=>698,551=>583,552=>686,553=>572,554=>784,555=>600,556=>784,557=>600,558=>784,559=>600,\n560=>784,561=>600,562=>642,563=>523,564=>516,565=>830,566=>508,567=>325,568=>928,569=>928,\n570=>698,571=>716,572=>548,573=>633,574=>669,575=>506,576=>511,577=>594,578=>492,581=>698,\n592=>583,593=>629,594=>629,595=>629,596=>548,597=>548,598=>629,599=>657,600=>572,601=>572,\n602=>816,603=>547,604=>505,605=>816,606=>647,607=>348,608=>629,609=>629,610=>563,611=>641,\n612=>564,613=>654,614=>654,615=>654,616=>342,617=>342,618=>342,619=>368,620=>462,621=>342,\n622=>716,623=>952,624=>952,625=>952,626=>654,627=>654,628=>641,629=>600,630=>955,631=>674,\n632=>600,633=>514,634=>514,635=>514,636=>474,637=>474,638=>406,639=>438,640=>721,641=>721,\n642=>506,643=>298,644=>387,645=>486,646=>298,647=>443,648=>416,649=>654,650=>611,651=>624,\n652=>577,653=>816,654=>571,655=>654,656=>511,657=>511,658=>511,659=>511,660=>482,661=>482,\n662=>482,663=>490,664=>784,665=>625,666=>647,667=>563,668=>659,669=>345,670=>666,671=>581,\n672=>629,673=>482,674=>482,675=>1005,676=>1061,677=>1005,678=>819,679=>643,680=>817,681=>935,\n682=>711,683=>716,684=>596,685=>398,686=>552,687=>646,688=>469,689=>466,690=>282,691=>372,\n692=>372,693=>432,694=>474,695=>595,696=>436,697=>271,699=>313,700=>313,701=>313,702=>330,\n703=>330,704=>282,705=>282,711=>450,712=>254,713=>450,716=>254,720=>332,721=>332,722=>330,\n723=>330,726=>353,728=>450,729=>450,730=>450,731=>450,733=>450,734=>375,736=>412,737=>263,\n738=>355,739=>427,740=>282,741=>450,742=>450,743=>450,744=>450,745=>450,750=>498,768=>0,\n769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,\n779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,\n789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,\n799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,\n809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,\n819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,\n829=>0,830=>0,831=>0,835=>0,847=>0,856=>0,865=>0,880=>701,881=>519,884=>271,\n885=>271,890=>450,891=>548,892=>548,893=>548,894=>332,900=>450,901=>450,902=>698,903=>313,\n904=>852,905=>1006,906=>595,908=>798,910=>857,911=>820,912=>435,913=>698,914=>760,915=>639,\n916=>698,917=>686,918=>657,919=>850,920=>784,921=>421,922=>782,923=>698,924=>996,925=>822,\n926=>633,927=>784,928=>850,929=>677,931=>636,932=>669,933=>642,934=>784,935=>698,936=>822,\n937=>801,938=>421,939=>642,940=>692,941=>547,942=>654,943=>435,944=>624,945=>692,946=>598,\n947=>594,948=>600,949=>547,950=>533,951=>654,952=>600,953=>435,954=>674,955=>631,956=>659,\n957=>624,958=>533,959=>600,960=>659,961=>598,962=>548,963=>664,964=>605,965=>624,966=>814,\n967=>592,968=>847,969=>857,970=>435,971=>624,972=>600,973=>624,974=>857,976=>600,977=>764,\n978=>687,979=>872,980=>687,981=>847,982=>857,983=>589,984=>784,985=>600,986=>716,987=>548,\n988=>639,989=>475,990=>531,991=>593,992=>716,993=>600,1008=>589,1009=>598,1010=>548,1011=>325,\n1012=>784,1013=>548,1014=>548,1015=>681,1016=>629,1017=>716,1018=>996,1019=>774,1020=>623,1021=>716,\n1022=>716,1023=>716,1024=>686,1025=>686,1026=>811,1027=>621,1028=>716,1029=>650,1030=>421,1031=>421,\n1032=>426,1033=>1081,1034=>1135,1035=>866,1036=>818,1037=>850,1038=>730,1039=>850,1040=>733,1041=>769,\n1042=>760,1043=>621,1044=>800,1045=>686,1046=>1181,1047=>649,1048=>850,1049=>850,1050=>818,1051=>795,\n1052=>996,1053=>850,1054=>784,1055=>850,1056=>677,1057=>716,1058=>669,1059=>730,1060=>854,1061=>698,\n1062=>870,1063=>822,1064=>1141,1065=>1164,1066=>861,1067=>1081,1068=>743,1069=>716,1070=>1158,1071=>793,\n1072=>583,1073=>600,1074=>625,1075=>551,1076=>600,1077=>572,1078=>909,1079=>574,1080=>667,1081=>667,\n1082=>650,1083=>634,1084=>782,1085=>659,1086=>600,1087=>659,1088=>629,1089=>548,1090=>558,1091=>576,\n1092=>812,1093=>536,1094=>665,1095=>659,1096=>967,1097=>974,1098=>690,1099=>902,1100=>611,1101=>548,\n1102=>923,1103=>665,1104=>572,1105=>572,1106=>646,1107=>551,1108=>548,1109=>506,1110=>342,1111=>342,\n1112=>325,1113=>889,1114=>913,1115=>654,1116=>650,1117=>667,1118=>576,1119=>659,1122=>792,1123=>633,\n1124=>1076,1125=>867,1130=>1181,1131=>909,1136=>986,1137=>995,1138=>784,1139=>587,1140=>824,1141=>673,\n1164=>761,1165=>606,1168=>630,1169=>556,1170=>621,1171=>551,1172=>781,1173=>645,1174=>1181,1175=>909,\n1176=>649,1177=>574,1178=>852,1179=>669,1182=>818,1183=>650,1184=>937,1185=>744,1186=>870,1187=>665,\n1188=>1050,1189=>860,1190=>1210,1191=>953,1194=>716,1195=>548,1196=>669,1197=>558,1198=>642,1199=>523,\n1200=>642,1201=>523,1202=>779,1203=>584,1204=>919,1205=>726,1206=>835,1207=>665,1210=>819,1211=>654,\n1216=>421,1217=>1181,1218=>909,1219=>782,1220=>624,1223=>850,1224=>659,1227=>822,1228=>659,1231=>342,\n1232=>733,1233=>583,1234=>733,1235=>583,1236=>931,1237=>877,1238=>686,1239=>572,1240=>784,1241=>572,\n1242=>784,1243=>572,1244=>1181,1245=>909,1246=>649,1247=>574,1248=>591,1249=>511,1250=>850,1251=>667,\n1252=>850,1253=>667,1254=>784,1255=>600,1256=>784,1257=>600,1258=>784,1259=>600,1260=>716,1261=>548,\n1262=>730,1263=>576,1264=>730,1265=>576,1266=>730,1267=>576,1268=>822,1269=>659,1270=>621,1271=>551,\n1272=>1081,1273=>902,1296=>649,1297=>574,1298=>795,1299=>634,1300=>1123,1301=>851,1306=>738,1307=>576,\n1308=>925,1309=>770,4256=>680,4257=>842,4258=>779,4259=>787,4260=>703,4261=>970,4262=>913,4263=>1091,\n4264=>579,4265=>736,4266=>946,4267=>945,4268=>716,4269=>1021,4270=>872,4271=>812,4272=>998,4273=>712,\n4274=>680,4275=>968,4276=>878,4277=>959,4278=>729,4279=>750,4280=>739,4281=>750,4282=>817,4283=>969,\n4284=>692,4285=>739,4286=>731,4287=>1000,4288=>1010,4289=>721,4290=>803,4291=>722,4292=>792,4293=>957,\n4304=>535,4305=>563,4306=>579,4307=>798,4308=>553,4309=>549,4310=>600,4311=>823,4312=>552,4313=>540,\n4314=>1008,4315=>576,4316=>576,4317=>791,4318=>561,4319=>571,4320=>790,4321=>599,4322=>702,4323=>676,\n4324=>782,4325=>575,4326=>820,4327=>559,4328=>583,4329=>576,4330=>656,4331=>577,4332=>567,4333=>566,\n4334=>603,4335=>678,4336=>563,4337=>591,4338=>563,4339=>563,4340=>562,4341=>603,4342=>846,4343=>612,\n4344=>572,4345=>605,4346=>562,4347=>529,4348=>318,7426=>846,7432=>458,7433=>288,7444=>890,7446=>600,\n7447=>600,7453=>663,7454=>853,7455=>853,7468=>439,7469=>586,7470=>479,7472=>491,7473=>432,7474=>432,\n7475=>483,7476=>536,7477=>265,7478=>268,7479=>492,7480=>398,7481=>627,7482=>518,7483=>518,7484=>493,\n7486=>426,7487=>471,7488=>409,7489=>422,7490=>494,7491=>419,7492=>419,7493=>448,7494=>591,7495=>448,\n7496=>448,7497=>400,7498=>400,7499=>370,7500=>370,7501=>448,7502=>270,7503=>471,7504=>655,7505=>426,\n7506=>420,7507=>384,7508=>420,7509=>420,7510=>448,7511=>333,7512=>468,7513=>390,7514=>655,7515=>442,\n7522=>215,7523=>372,7524=>468,7525=>442,7543=>576,7544=>536,7547=>342,7557=>342,7579=>448,7580=>384,\n7581=>384,7582=>420,7583=>370,7584=>345,7585=>335,7586=>448,7587=>470,7588=>270,7589=>276,7590=>270,\n7591=>270,7592=>333,7593=>331,7594=>289,7595=>387,7596=>613,7597=>655,7598=>529,7599=>528,7600=>425,\n7601=>420,7602=>470,7603=>360,7604=>348,7605=>333,7606=>468,7607=>427,7609=>439,7610=>442,7611=>371,\n7612=>474,7613=>371,7614=>407,7615=>420,7620=>0,7621=>0,7622=>0,7623=>0,7624=>0,7625=>0,\n7680=>698,7681=>583,7682=>760,7683=>629,7684=>760,7685=>629,7686=>760,7687=>629,7688=>716,7689=>548,\n7690=>780,7691=>629,7692=>780,7693=>629,7694=>780,7695=>629,7696=>780,7697=>629,7698=>780,7699=>629,\n7700=>686,7701=>572,7702=>686,7703=>572,7704=>686,7705=>572,7706=>686,7707=>572,7708=>686,7709=>572,\n7710=>639,7711=>387,7712=>769,7713=>629,7714=>850,7715=>654,7716=>850,7717=>654,7718=>850,7719=>654,\n7720=>850,7721=>654,7722=>850,7723=>654,7724=>421,7725=>342,7728=>782,7729=>624,7730=>782,7731=>624,\n7732=>782,7733=>624,7734=>633,7735=>342,7736=>633,7737=>342,7738=>633,7739=>342,7740=>633,7741=>342,\n7742=>996,7743=>952,7744=>996,7745=>952,7746=>996,7747=>952,7748=>822,7749=>654,7750=>822,7751=>654,\n7752=>822,7753=>654,7754=>822,7755=>654,7756=>784,7757=>600,7760=>784,7761=>600,7762=>784,7763=>600,\n7764=>677,7765=>629,7766=>677,7767=>629,7768=>748,7769=>474,7770=>748,7771=>474,7772=>748,7773=>474,\n7774=>748,7775=>474,7776=>650,7777=>506,7778=>650,7779=>506,7784=>650,7785=>506,7786=>669,7787=>416,\n7788=>669,7789=>416,7790=>669,7791=>416,7792=>669,7793=>416,7794=>785,7795=>654,7796=>785,7797=>654,\n7798=>785,7799=>654,7800=>785,7801=>654,7802=>785,7803=>654,7804=>698,7805=>523,7806=>698,7807=>523,\n7808=>1011,7809=>774,7810=>1011,7811=>774,7812=>1011,7813=>774,7814=>1011,7815=>774,7816=>1011,7817=>774,\n7818=>698,7819=>536,7820=>698,7821=>536,7822=>642,7823=>523,7824=>657,7825=>511,7826=>657,7827=>511,\n7828=>657,7829=>511,7830=>654,7831=>416,7832=>774,7833=>523,7834=>913,7835=>387,7838=>852,7839=>600,\n7840=>698,7841=>583,7842=>698,7843=>583,7852=>698,7853=>583,7854=>698,7855=>583,7856=>698,7857=>583,\n7858=>698,7859=>583,7860=>698,7861=>583,7862=>698,7863=>583,7864=>686,7865=>572,7866=>686,7867=>572,\n7868=>686,7869=>572,7878=>686,7879=>572,7880=>421,7881=>342,7882=>421,7883=>342,7884=>784,7885=>600,\n7886=>784,7887=>600,7896=>784,7897=>600,7908=>785,7909=>654,7910=>785,7911=>654,7922=>642,7923=>523,\n7924=>642,7925=>523,7926=>642,7927=>523,7928=>642,7929=>523,7936=>692,7937=>692,7938=>692,7939=>692,\n7940=>692,7941=>692,7942=>692,7943=>692,7944=>698,7945=>698,7946=>880,7947=>880,7948=>748,7949=>764,\n7950=>698,7951=>698,7952=>547,7953=>547,7954=>547,7955=>547,7956=>547,7957=>547,7960=>826,7961=>817,\n7962=>1052,7963=>1052,7964=>984,7965=>1007,7968=>654,7969=>654,7970=>654,7971=>654,7972=>654,7973=>654,\n7974=>654,7975=>654,7976=>990,7977=>984,7978=>1222,7979=>1225,7980=>1151,7981=>1177,7982=>1077,7983=>1074,\n7984=>435,7985=>435,7986=>435,7987=>435,7988=>435,7989=>435,7990=>435,7991=>435,7992=>566,7993=>555,\n7994=>790,7995=>792,7996=>719,7997=>748,7998=>650,7999=>642,8000=>600,8001=>600,8002=>600,8003=>600,\n8004=>600,8005=>600,8008=>810,8009=>841,8010=>1116,8011=>1113,8012=>931,8013=>959,8016=>624,8017=>624,\n8018=>624,8019=>624,8020=>624,8021=>624,8022=>624,8023=>624,8025=>830,8027=>1067,8029=>1020,8031=>917,\n8032=>857,8033=>857,8034=>857,8035=>857,8036=>857,8037=>857,8038=>857,8039=>857,8040=>838,8041=>867,\n8042=>1141,8043=>1146,8044=>949,8045=>979,8046=>920,8047=>954,8048=>692,8049=>692,8050=>547,8051=>547,\n8052=>654,8053=>654,8054=>435,8055=>435,8056=>600,8057=>600,8058=>624,8059=>624,8060=>857,8061=>857,\n8064=>692,8065=>692,8066=>692,8067=>692,8068=>692,8069=>692,8070=>692,8071=>692,8072=>698,8073=>698,\n8074=>880,8075=>880,8076=>748,8077=>764,8078=>698,8079=>698,8080=>654,8081=>654,8082=>654,8083=>654,\n8084=>654,8085=>654,8086=>654,8087=>654,8088=>990,8089=>984,8090=>1222,8091=>1225,8092=>1151,8093=>1177,\n8094=>1077,8095=>1074,8096=>857,8097=>857,8098=>857,8099=>857,8100=>857,8101=>857,8102=>857,8103=>857,\n8104=>838,8105=>867,8106=>1141,8107=>1146,8108=>949,8109=>979,8110=>920,8111=>954,8112=>692,8113=>692,\n8114=>692,8115=>692,8116=>692,8118=>692,8119=>692,8120=>698,8121=>698,8122=>729,8123=>698,8124=>698,\n8125=>450,8126=>450,8127=>450,8128=>450,8129=>450,8130=>654,8131=>654,8132=>654,8134=>654,8135=>654,\n8136=>899,8137=>852,8138=>1072,8139=>1006,8140=>850,8141=>450,8142=>450,8143=>450,8144=>435,8145=>435,\n8146=>435,8147=>435,8150=>435,8151=>435,8152=>421,8153=>421,8154=>642,8155=>595,8157=>450,8158=>450,\n8159=>450,8160=>624,8161=>624,8162=>624,8163=>624,8164=>598,8165=>598,8166=>624,8167=>624,8168=>642,\n8169=>642,8170=>917,8171=>857,8172=>819,8173=>450,8174=>450,8175=>450,8178=>857,8179=>857,8180=>857,\n8182=>857,8183=>857,8184=>962,8185=>798,8186=>991,8187=>820,8188=>801,8189=>450,8190=>450,8192=>450,\n8193=>900,8194=>450,8195=>900,8196=>296,8197=>225,8198=>150,8199=>626,8200=>313,8201=>180,8202=>89,\n8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>374,8209=>374,8210=>626,8213=>900,8214=>450,\n8215=>450,8219=>313,8223=>518,8227=>575,8228=>313,8229=>606,8234=>0,8235=>0,8236=>0,8237=>0,\n8238=>0,8239=>180,8241=>1638,8242=>237,8243=>402,8244=>567,8245=>237,8246=>402,8247=>567,8248=>659,\n8252=>566,8253=>527,8254=>450,8258=>920,8260=>150,8261=>426,8262=>426,8263=>974,8264=>770,8265=>770,\n8267=>572,8268=>450,8269=>450,8270=>470,8271=>332,8273=>470,8274=>500,8275=>900,8279=>731,8287=>200,\n8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8298=>0,8299=>0,8300=>0,8301=>0,8302=>0,\n8303=>0,8304=>394,8305=>215,8308=>394,8309=>394,8310=>394,8311=>394,8312=>394,8313=>394,8314=>475,\n8315=>475,8316=>475,8317=>268,8318=>268,8319=>467,8320=>394,8321=>394,8322=>394,8323=>394,8324=>394,\n8325=>394,8326=>394,8327=>394,8328=>394,8329=>394,8330=>475,8331=>475,8332=>475,8333=>268,8334=>268,\n8336=>419,8337=>400,8338=>420,8339=>427,8340=>400,8358=>626,8367=>1039,8369=>710,8372=>788,8373=>626,\n8451=>1078,8457=>1001,8462=>654,8463=>654,8470=>978,8486=>801,8487=>801,8490=>782,8491=>698,8513=>697,\n8514=>501,8515=>573,8516=>684,8523=>813,8531=>932,8532=>932,8533=>932,8534=>932,8535=>932,8536=>932,\n8537=>932,8538=>932,8539=>932,8540=>932,8541=>932,8542=>932,8543=>554,8544=>421,8545=>663,8546=>904,\n8547=>984,8548=>698,8549=>1014,8550=>1256,8551=>1498,8552=>962,8553=>698,8554=>970,8555=>1212,8556=>633,\n8557=>716,8558=>780,8559=>996,8560=>342,8561=>684,8562=>1025,8563=>865,8564=>523,8565=>865,8566=>1207,\n8567=>1548,8568=>878,8569=>536,8570=>878,8571=>1220,8572=>342,8573=>548,8574=>629,8575=>952,8576=>1129,\n8577=>780,8578=>1141,8579=>716,8580=>548,8592=>754,8593=>754,8594=>754,8595=>754,8596=>754,8597=>754,\n8598=>754,8599=>754,8600=>754,8601=>754,8602=>754,8603=>754,8604=>754,8605=>754,8606=>754,8607=>754,\n8608=>754,8609=>754,8610=>754,8611=>754,8612=>754,8613=>754,8614=>754,8615=>754,8616=>754,8617=>754,\n8618=>754,8619=>754,8620=>754,8621=>754,8622=>754,8623=>765,8624=>754,8625=>754,8626=>754,8627=>754,\n8628=>754,8629=>754,8630=>754,8631=>754,8632=>754,8633=>754,8634=>754,8635=>754,8636=>754,8637=>754,\n8638=>754,8639=>754,8640=>754,8641=>754,8642=>754,8643=>754,8644=>754,8645=>754,8646=>754,8647=>754,\n8648=>754,8649=>754,8650=>754,8651=>754,8652=>754,8653=>754,8654=>754,8655=>754,8656=>754,8657=>754,\n8658=>754,8659=>754,8660=>754,8661=>754,8662=>754,8663=>754,8664=>754,8665=>754,8666=>754,8667=>754,\n8668=>754,8669=>754,8670=>754,8671=>754,8672=>754,8673=>754,8674=>754,8675=>754,8676=>754,8677=>754,\n8678=>754,8679=>754,8680=>754,8681=>754,8682=>754,8683=>754,8684=>754,8685=>754,8686=>754,8687=>754,\n8688=>754,8689=>754,8690=>754,8691=>754,8692=>754,8693=>754,8694=>754,8695=>754,8696=>754,8697=>754,\n8698=>754,8699=>754,8700=>754,8701=>754,8702=>754,8703=>754,8704=>577,8706=>480,8707=>558,8708=>558,\n8710=>677,8711=>677,8712=>666,8713=>666,8715=>666,8716=>666,8719=>757,8720=>757,8721=>677,8722=>754,\n8723=>754,8724=>754,8725=>329,8727=>622,8728=>466,8729=>466,8730=>591,8731=>591,8732=>591,8733=>604,\n8734=>750,8735=>754,8736=>754,8739=>292,8740=>546,8741=>476,8742=>696,8743=>730,8744=>730,8745=>754,\n8746=>754,8747=>521,8748=>900,8749=>1252,8760=>754,8761=>754,8762=>754,8763=>754,8764=>754,8765=>754,\n8770=>754,8771=>754,8776=>754,8784=>754,8785=>754,8786=>754,8787=>754,8788=>974,8789=>974,8800=>754,\n8801=>754,8804=>754,8805=>754,8834=>754,8835=>754,8836=>754,8837=>754,8838=>754,8839=>754,8844=>754,\n8845=>754,8846=>754,8847=>754,8848=>754,8849=>754,8850=>754,8851=>754,8852=>754,8853=>754,8854=>754,\n8855=>754,8856=>754,8857=>754,8858=>754,8859=>754,8860=>754,8861=>754,8862=>754,8863=>754,8864=>754,\n8865=>754,8866=>795,8867=>795,8868=>864,8869=>864,8870=>554,8871=>554,8872=>795,8873=>795,8874=>795,\n8875=>971,8876=>795,8877=>795,8878=>795,8879=>971,8901=>358,8962=>751,8968=>426,8969=>426,8970=>426,\n8971=>426,8976=>754,8977=>484,8984=>835,8985=>754,8992=>521,8993=>521,8997=>900,9000=>1299,9085=>907,\n9134=>521,9167=>850,9251=>751,9600=>692,9601=>692,9602=>692,9603=>692,9604=>692,9605=>692,9606=>692,\n9607=>692,9608=>692,9609=>692,9610=>692,9611=>692,9612=>692,9613=>692,9614=>692,9615=>692,9616=>692,\n9617=>692,9618=>692,9619=>692,9620=>692,9621=>692,9622=>692,9623=>692,9624=>692,9625=>692,9626=>692,\n9627=>692,9628=>692,9629=>692,9630=>692,9631=>692,9632=>850,9633=>850,9634=>850,9635=>850,9636=>850,\n9637=>850,9638=>850,9639=>850,9640=>850,9641=>850,9642=>610,9643=>610,9644=>850,9645=>850,9646=>495,\n9647=>495,9648=>692,9649=>692,9650=>692,9651=>692,9652=>452,9653=>452,9654=>692,9655=>692,9656=>452,\n9657=>452,9658=>692,9659=>692,9660=>692,9661=>692,9662=>452,9663=>452,9664=>692,9665=>692,9666=>452,\n9667=>452,9668=>692,9669=>692,9670=>692,9671=>692,9672=>692,9673=>785,9674=>444,9675=>785,9676=>785,\n9677=>785,9678=>785,9679=>785,9680=>785,9681=>785,9682=>785,9683=>785,9684=>785,9685=>785,9686=>474,\n9687=>474,9688=>712,9689=>873,9690=>873,9691=>873,9692=>348,9693=>348,9694=>348,9695=>348,9696=>785,\n9697=>785,9698=>692,9699=>692,9700=>692,9701=>692,9702=>531,9703=>850,9704=>850,9705=>850,9706=>850,\n9707=>850,9708=>692,9709=>692,9710=>692,9711=>1007,9712=>850,9713=>850,9714=>850,9715=>850,9716=>785,\n9717=>785,9718=>785,9719=>785,9720=>692,9721=>692,9722=>692,9723=>747,9724=>747,9725=>659,9726=>659,\n9727=>692,9728=>807,9784=>807,9785=>807,9786=>807,9787=>807,9788=>807,9791=>552,9792=>658,9793=>658,\n9794=>807,9795=>807,9796=>807,9797=>807,9798=>807,9799=>807,9824=>807,9825=>807,9826=>807,9827=>807,\n9828=>807,9829=>807,9830=>807,9831=>807,9833=>424,9834=>574,9835=>807,9836=>807,9837=>424,9838=>321,\n9839=>435,10145=>754,10181=>411,10182=>411,10208=>444,10216=>411,10217=>411,10224=>754,10225=>754,10226=>754,\n10227=>754,10228=>930,10229=>1290,10230=>1290,10231=>1290,10232=>1290,10233=>1290,10234=>1290,10235=>1290,10236=>1290,\n10237=>1290,10238=>1290,10239=>1290,10240=>703,10241=>703,10242=>703,10243=>703,10244=>703,10245=>703,10246=>703,\n10247=>703,10248=>703,10249=>703,10250=>703,10251=>703,10252=>703,10253=>703,10254=>703,10255=>703,10256=>703,\n10257=>703,10258=>703,10259=>703,10260=>703,10261=>703,10262=>703,10263=>703,10264=>703,10265=>703,10266=>703,\n10267=>703,10268=>703,10269=>703,10270=>703,10271=>703,10272=>703,10273=>703,10274=>703,10275=>703,10276=>703,\n10277=>703,10278=>703,10279=>703,10280=>703,10281=>703,10282=>703,10283=>703,10284=>703,10285=>703,10286=>703,\n10287=>703,10288=>703,10289=>703,10290=>703,10291=>703,10292=>703,10293=>703,10294=>703,10295=>703,10296=>703,\n10297=>703,10298=>703,10299=>703,10300=>703,10301=>703,10302=>703,10303=>703,10304=>703,10305=>703,10306=>703,\n10307=>703,10308=>703,10309=>703,10310=>703,10311=>703,10312=>703,10313=>703,10314=>703,10315=>703,10316=>703,\n10317=>703,10318=>703,10319=>703,10320=>703,10321=>703,10322=>703,10323=>703,10324=>703,10325=>703,10326=>703,\n10327=>703,10328=>703,10329=>703,10330=>703,10331=>703,10332=>703,10333=>703,10334=>703,10335=>703,10336=>703,\n10337=>703,10338=>703,10339=>703,10340=>703,10341=>703,10342=>703,10343=>703,10344=>703,10345=>703,10346=>703,\n10347=>703,10348=>703,10349=>703,10350=>703,10351=>703,10352=>703,10353=>703,10354=>703,10355=>703,10356=>703,\n10357=>703,10358=>703,10359=>703,10360=>703,10361=>703,10362=>703,10363=>703,10364=>703,10365=>703,10366=>703,\n10367=>703,10368=>703,10369=>703,10370=>703,10371=>703,10372=>703,10373=>703,10374=>703,10375=>703,10376=>703,\n10377=>703,10378=>703,10379=>703,10380=>703,10381=>703,10382=>703,10383=>703,10384=>703,10385=>703,10386=>703,\n10387=>703,10388=>703,10389=>703,10390=>703,10391=>703,10392=>703,10393=>703,10394=>703,10395=>703,10396=>703,\n10397=>703,10398=>703,10399=>703,10400=>703,10401=>703,10402=>703,10403=>703,10404=>703,10405=>703,10406=>703,\n10407=>703,10408=>703,10409=>703,10410=>703,10411=>703,10412=>703,10413=>703,10414=>703,10415=>703,10416=>703,\n10417=>703,10418=>703,10419=>703,10420=>703,10421=>703,10422=>703,10423=>703,10424=>703,10425=>703,10426=>703,\n10427=>703,10428=>703,10429=>703,10430=>703,10431=>703,10432=>703,10433=>703,10434=>703,10435=>703,10436=>703,\n10437=>703,10438=>703,10439=>703,10440=>703,10441=>703,10442=>703,10443=>703,10444=>703,10445=>703,10446=>703,\n10447=>703,10448=>703,10449=>703,10450=>703,10451=>703,10452=>703,10453=>703,10454=>703,10455=>703,10456=>703,\n10457=>703,10458=>703,10459=>703,10460=>703,10461=>703,10462=>703,10463=>703,10464=>703,10465=>703,10466=>703,\n10467=>703,10468=>703,10469=>703,10470=>703,10471=>703,10472=>703,10473=>703,10474=>703,10475=>703,10476=>703,\n10477=>703,10478=>703,10479=>703,10480=>703,10481=>703,10482=>703,10483=>703,10484=>703,10485=>703,10486=>703,\n10487=>703,10488=>703,10489=>703,10490=>703,10491=>703,10492=>703,10493=>703,10494=>703,10495=>703,10496=>754,\n10497=>754,10498=>754,10499=>754,10500=>754,10501=>754,10502=>754,10503=>754,10504=>754,10505=>754,10506=>754,\n10507=>754,10508=>754,10509=>754,10510=>754,10511=>754,10512=>754,10513=>754,10514=>754,10515=>754,10516=>754,\n10517=>754,10518=>754,10519=>754,10520=>754,10521=>754,10522=>754,10523=>754,10524=>754,10525=>754,10526=>754,\n10527=>754,10528=>754,10529=>754,10530=>754,10531=>754,10532=>754,10533=>754,10534=>754,10535=>754,10536=>754,\n10537=>754,10538=>754,10539=>754,10540=>754,10541=>754,10542=>754,10543=>754,10544=>754,10545=>754,10546=>754,\n10547=>754,10548=>754,10549=>754,10550=>754,10551=>754,10552=>754,10553=>754,10554=>754,10555=>754,10556=>754,\n10557=>754,10558=>754,10559=>754,10560=>754,10561=>754,10562=>754,10563=>754,10564=>754,10565=>754,10566=>754,\n10567=>754,10568=>754,10569=>754,10570=>754,10571=>754,10572=>754,10573=>754,10574=>754,10575=>754,10576=>754,\n10577=>754,10578=>754,10579=>754,10580=>754,10581=>754,10582=>754,10583=>754,10584=>754,10585=>754,10586=>754,\n10587=>754,10588=>754,10589=>754,10590=>754,10591=>754,10592=>754,10593=>754,10594=>754,10595=>754,10596=>754,\n10597=>754,10598=>754,10599=>754,10600=>754,10601=>754,10602=>754,10603=>754,10604=>754,10605=>754,10606=>754,\n10607=>754,10608=>754,10609=>754,10610=>754,10611=>754,10612=>754,10613=>754,10614=>754,10615=>929,10616=>754,\n10617=>754,10618=>864,10619=>754,10620=>754,10621=>754,10622=>754,10623=>754,10731=>444,10764=>1604,10765=>549,\n10766=>549,10799=>754,11008=>754,11009=>754,11010=>754,11011=>754,11012=>754,11013=>754,11014=>754,11015=>754,\n11016=>754,11017=>754,11018=>754,11019=>754,11020=>754,11021=>754,11022=>754,11023=>754,11024=>754,11025=>754,\n11026=>850,11027=>850,11028=>850,11029=>850,11030=>692,11031=>692,11032=>692,11033=>692,11034=>850,11364=>748,\n11367=>850,11368=>654,11369=>782,11370=>624,11371=>657,11372=>511,11374=>996,11375=>698,11381=>701,11382=>541,\n11383=>814,11385=>514,11386=>600,11388=>282,11389=>439,11520=>695,11521=>571,11522=>723,11523=>592,11524=>708,\n11525=>866,11526=>680,11527=>864,11528=>555,11529=>581,11530=>866,11531=>567,11532=>581,11533=>866,11534=>761,\n11535=>779,11536=>865,11537=>580,11538=>580,11539=>863,11540=>851,11541=>777,11542=>580,11543=>581,11544=>580,\n11545=>584,11546=>619,11547=>842,11548=>883,11549=>613,11550=>608,11551=>766,11552=>1002,11553=>569,11554=>580,\n11555=>582,11556=>674,11557=>822,11800=>527,11810=>426,11811=>426,11812=>426,11813=>426,11822=>527,42564=>650,\n42565=>506,42566=>421,42567=>342,42576=>1200,42577=>982,42580=>1158,42581=>923,42582=>1158,42583=>935,42760=>450,\n42761=>450,42762=>450,42763=>450,42764=>450,42765=>450,42766=>450,42767=>450,42768=>450,42769=>450,42770=>450,\n42771=>450,42772=>450,42773=>450,42774=>450,42779=>346,42780=>346,42781=>249,42782=>249,42783=>249,42891=>395,\n42892=>275,62464=>634,62465=>645,62466=>688,62467=>898,62468=>645,62469=>639,62470=>698,62471=>934,62472=>645,\n62473=>645,62474=>1178,62475=>660,62476=>659,62477=>903,62478=>645,62479=>659,62480=>945,62481=>717,62482=>765,\n62483=>719,62484=>896,62485=>659,62486=>888,62487=>658,62488=>665,62489=>659,62490=>702,62491=>659,62492=>665,\n62493=>646,62494=>702,62495=>842,62496=>644,62497=>743,62498=>645,62499=>645,62500=>645,62501=>695,62502=>911,\n62504=>813,63173=>600,63185=>450,63188=>450,64256=>738,64257=>654,64258=>654,64259=>1007,64260=>1005,64261=>784,\n64262=>874,65024=>0,65025=>0,65026=>0,65027=>0,65028=>0,65029=>0,65030=>0,65031=>0,65032=>0,\n65033=>0,65034=>0,65035=>0,65036=>0,65037=>0,65038=>0,65039=>0,65529=>0,65530=>0,65531=>0,\n65532=>0,65533=>1002);\n$enc='';\n$diff='';\n$file='dejavuserifcondensedb.z';\n$ctg='dejavuserifcondensedb.ctg.z';\n$originalsize=282092;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavuserifcondensedbi.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='DejaVuSerifCondensed-BoldItalic';\n$desc=array('Ascent'=>939,'Descent'=>-236,'CapHeight'=>-48,'Flags'=>96,'FontBBox'=>'[-815 -389 1584 1235]','ItalicAngle'=>-11,'StemV'=>120,'MissingWidth'=>540);\n$up=-63;\n$ut=44;\n$dw=540;\n$cw=array(\n0=>540,32=>313,33=>395,34=>469,35=>754,36=>626,37=>855,38=>813,39=>275,40=>426,\n41=>426,42=>470,43=>754,44=>313,45=>374,46=>313,47=>329,48=>626,49=>626,50=>626,\n51=>626,52=>626,53=>626,54=>626,55=>626,56=>626,57=>626,58=>332,59=>332,60=>754,\n61=>754,62=>754,63=>527,64=>900,65=>698,66=>760,67=>716,68=>780,69=>686,70=>639,\n71=>769,72=>850,73=>421,74=>426,75=>782,76=>633,77=>996,78=>822,79=>784,80=>677,\n81=>784,82=>748,83=>650,84=>669,85=>785,86=>698,87=>1011,88=>698,89=>642,90=>657,\n91=>426,92=>329,93=>426,94=>754,95=>450,96=>450,97=>583,98=>629,99=>548,100=>629,\n101=>572,102=>387,103=>629,104=>654,105=>342,106=>325,107=>624,108=>342,109=>952,110=>654,\n111=>600,112=>629,113=>629,114=>474,115=>506,116=>416,117=>654,118=>523,119=>774,120=>536,\n121=>523,122=>511,123=>579,124=>327,125=>579,126=>754,8364=>626,8218=>313,402=>387,8222=>518,\n8230=>900,8224=>470,8225=>470,710=>450,8240=>1246,352=>650,8249=>360,338=>1062,381=>657,8216=>313,\n8217=>313,8220=>518,8221=>518,8226=>575,8211=>450,8212=>900,732=>450,8482=>900,353=>506,8250=>360,\n339=>925,382=>511,376=>642,160=>313,161=>395,162=>626,163=>626,164=>572,165=>626,166=>327,\n167=>470,168=>450,169=>900,170=>438,171=>563,172=>754,173=>374,174=>900,175=>450,176=>450,\n177=>754,178=>394,179=>394,180=>450,181=>659,182=>572,183=>313,184=>450,185=>394,186=>450,\n187=>563,188=>938,189=>938,190=>938,191=>527,192=>698,193=>698,194=>698,195=>698,196=>698,\n197=>698,198=>931,199=>716,200=>686,201=>686,202=>686,203=>686,204=>421,205=>421,206=>421,\n207=>421,208=>787,209=>822,210=>784,211=>784,212=>784,213=>784,214=>784,215=>754,216=>784,\n217=>785,218=>785,219=>785,220=>785,221=>642,222=>681,223=>684,224=>583,225=>583,226=>583,\n227=>583,228=>583,229=>583,230=>838,231=>548,232=>572,233=>572,234=>572,235=>572,236=>342,\n237=>342,238=>342,239=>342,240=>600,241=>654,242=>600,243=>600,244=>600,245=>600,246=>600,\n247=>754,248=>600,249=>654,250=>654,251=>654,252=>654,253=>523,254=>629,255=>523,256=>698,\n257=>583,258=>698,259=>583,260=>698,261=>583,262=>716,263=>548,264=>716,265=>548,266=>716,\n267=>548,268=>716,269=>548,270=>780,271=>629,272=>787,273=>629,274=>686,275=>572,276=>686,\n277=>572,278=>686,279=>572,280=>686,281=>572,282=>686,283=>572,284=>769,285=>629,286=>769,\n287=>629,288=>769,289=>629,290=>769,291=>629,292=>850,293=>654,294=>850,295=>654,296=>421,\n297=>342,298=>421,299=>342,300=>421,301=>342,302=>421,303=>342,304=>421,305=>342,306=>848,\n307=>676,308=>426,309=>325,310=>782,311=>624,312=>624,313=>633,314=>342,315=>633,316=>342,\n317=>633,318=>457,319=>633,320=>501,321=>639,322=>346,323=>822,324=>654,325=>822,326=>654,\n327=>822,328=>654,329=>907,330=>785,331=>654,332=>784,333=>600,334=>784,335=>600,336=>784,\n337=>600,340=>748,341=>474,342=>748,343=>474,344=>748,345=>474,346=>650,347=>506,348=>650,\n349=>506,350=>650,351=>506,354=>669,355=>416,356=>669,357=>416,358=>669,359=>416,360=>785,\n361=>654,362=>785,363=>654,364=>785,365=>654,366=>785,367=>654,368=>785,369=>654,370=>785,\n371=>654,372=>1011,373=>774,374=>642,375=>523,377=>657,378=>511,379=>657,380=>511,383=>387,\n384=>629,385=>760,386=>769,387=>629,388=>769,389=>629,390=>716,391=>716,392=>548,393=>787,\n394=>780,395=>769,396=>629,397=>600,398=>686,399=>784,400=>649,401=>639,403=>769,404=>693,\n405=>938,406=>421,407=>421,408=>782,409=>624,410=>342,411=>631,412=>952,413=>822,414=>654,\n415=>784,416=>784,417=>600,418=>1080,419=>849,420=>677,421=>629,422=>748,423=>650,424=>506,\n425=>636,426=>298,427=>416,428=>669,429=>416,430=>669,431=>785,432=>654,433=>801,434=>801,\n435=>642,436=>628,437=>657,438=>511,439=>591,440=>591,441=>591,443=>626,444=>678,445=>511,\n446=>482,448=>265,449=>443,450=>413,451=>265,452=>1437,453=>1292,454=>1140,455=>1059,456=>958,\n457=>667,458=>1248,459=>1148,460=>980,461=>698,462=>583,463=>421,464=>342,465=>784,466=>600,\n467=>785,468=>654,469=>785,470=>654,471=>785,472=>654,473=>785,474=>654,475=>785,476=>654,\n477=>572,478=>698,479=>583,480=>698,481=>583,482=>931,483=>877,484=>806,485=>629,486=>769,\n487=>629,488=>782,489=>624,490=>784,491=>600,492=>784,493=>600,494=>591,495=>511,496=>325,\n497=>1437,498=>1292,499=>1140,500=>769,501=>629,502=>1099,504=>822,505=>654,506=>698,507=>583,\n508=>931,509=>838,510=>784,511=>600,512=>698,513=>583,514=>698,515=>583,516=>686,517=>572,\n518=>686,519=>572,520=>421,521=>342,522=>421,523=>342,524=>784,525=>600,526=>784,527=>600,\n528=>748,529=>474,530=>748,531=>474,532=>785,533=>654,534=>785,535=>654,536=>650,537=>506,\n538=>669,539=>416,540=>621,541=>546,542=>850,543=>654,544=>785,545=>711,548=>657,549=>511,\n550=>698,551=>583,552=>686,553=>572,554=>784,555=>600,556=>784,557=>600,558=>784,559=>600,\n560=>784,561=>600,562=>642,563=>523,564=>516,565=>830,566=>508,567=>325,568=>928,569=>928,\n570=>698,571=>716,572=>548,573=>633,574=>669,575=>506,576=>511,577=>594,578=>492,581=>698,\n592=>583,593=>629,594=>629,595=>629,596=>548,597=>548,598=>629,599=>657,600=>572,601=>572,\n602=>816,603=>547,604=>505,605=>816,606=>647,607=>348,608=>629,609=>629,610=>563,611=>641,\n612=>564,613=>654,614=>654,615=>654,616=>342,617=>342,618=>342,619=>368,620=>462,621=>342,\n622=>716,623=>952,624=>952,625=>952,626=>654,627=>654,628=>641,629=>600,630=>955,631=>674,\n632=>600,633=>514,634=>514,635=>514,636=>474,637=>474,638=>406,639=>438,640=>721,641=>721,\n642=>506,643=>298,644=>387,645=>486,646=>298,647=>443,648=>416,649=>654,650=>611,651=>624,\n652=>523,653=>774,654=>571,655=>654,656=>511,657=>511,658=>511,659=>511,660=>482,661=>482,\n662=>482,663=>490,664=>784,665=>625,666=>647,667=>563,668=>659,669=>345,670=>666,671=>581,\n672=>629,673=>482,674=>482,675=>1005,676=>1061,677=>1005,678=>819,679=>643,680=>817,681=>935,\n682=>711,683=>716,684=>596,685=>398,686=>552,687=>646,688=>469,689=>466,690=>282,691=>372,\n692=>372,693=>432,694=>474,695=>488,696=>329,697=>271,699=>313,700=>313,701=>313,702=>330,\n703=>330,704=>282,705=>282,711=>450,712=>254,713=>450,716=>254,720=>332,721=>332,722=>330,\n723=>330,726=>353,728=>450,729=>450,730=>450,731=>450,733=>450,734=>375,736=>403,737=>263,\n738=>355,739=>338,740=>282,741=>450,742=>450,743=>450,744=>450,745=>450,750=>498,768=>0,\n769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,\n779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,\n789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,\n799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,\n809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,\n819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,\n829=>0,830=>0,831=>0,835=>0,847=>0,856=>0,865=>0,880=>701,881=>519,884=>271,\n885=>271,890=>450,891=>548,892=>548,893=>548,894=>332,900=>450,901=>450,902=>698,903=>313,\n904=>852,905=>1022,906=>595,908=>798,910=>857,911=>820,912=>435,913=>698,914=>760,915=>639,\n916=>698,917=>686,918=>657,919=>850,920=>784,921=>421,922=>782,923=>698,924=>996,925=>822,\n926=>633,927=>784,928=>850,929=>677,931=>636,932=>669,933=>642,934=>784,935=>698,936=>822,\n937=>801,938=>421,939=>642,940=>692,941=>547,942=>654,943=>435,944=>624,945=>692,946=>598,\n947=>594,948=>600,949=>547,950=>533,951=>654,952=>600,953=>435,954=>674,955=>631,956=>659,\n957=>624,958=>533,959=>600,960=>659,961=>598,962=>548,963=>664,964=>605,965=>624,966=>814,\n967=>592,968=>847,969=>857,970=>435,971=>624,972=>600,973=>624,974=>857,976=>600,977=>764,\n978=>687,979=>872,980=>687,981=>847,982=>857,983=>589,984=>784,985=>600,986=>716,987=>548,\n988=>639,989=>475,990=>531,991=>593,992=>716,993=>600,1008=>589,1009=>598,1010=>548,1011=>325,\n1012=>784,1013=>548,1014=>548,1015=>681,1016=>629,1017=>716,1018=>996,1019=>774,1020=>623,1021=>716,\n1022=>716,1023=>716,1024=>686,1025=>686,1026=>811,1027=>621,1028=>716,1029=>650,1030=>421,1031=>421,\n1032=>426,1033=>1081,1034=>1135,1035=>866,1036=>818,1037=>850,1038=>730,1039=>850,1040=>733,1041=>769,\n1042=>760,1043=>621,1044=>800,1045=>686,1046=>1181,1047=>649,1048=>850,1049=>850,1050=>818,1051=>795,\n1052=>996,1053=>850,1054=>784,1055=>850,1056=>677,1057=>716,1058=>669,1059=>730,1060=>854,1061=>698,\n1062=>870,1063=>822,1064=>1141,1065=>1164,1066=>861,1067=>1081,1068=>743,1069=>716,1070=>1158,1071=>793,\n1072=>583,1073=>650,1074=>591,1075=>506,1076=>625,1077=>572,1078=>1175,1079=>574,1080=>654,1081=>654,\n1082=>609,1083=>659,1084=>855,1085=>656,1086=>600,1087=>654,1088=>629,1089=>548,1090=>952,1091=>538,\n1092=>812,1093=>536,1094=>723,1095=>643,1096=>952,1097=>1021,1098=>654,1099=>916,1100=>593,1101=>580,\n1102=>901,1103=>716,1104=>572,1105=>572,1106=>646,1107=>506,1108=>548,1109=>506,1110=>342,1111=>342,\n1112=>325,1113=>913,1114=>910,1115=>654,1116=>609,1117=>654,1118=>538,1119=>654,1122=>792,1123=>945,\n1124=>1076,1125=>867,1130=>1181,1131=>909,1136=>986,1137=>995,1138=>784,1139=>587,1140=>824,1141=>673,\n1164=>761,1165=>606,1168=>630,1169=>556,1170=>621,1171=>506,1172=>768,1173=>634,1174=>1181,1175=>1175,\n1176=>649,1177=>574,1178=>812,1179=>633,1182=>818,1183=>609,1184=>937,1185=>684,1186=>856,1187=>725,\n1188=>1050,1189=>859,1190=>1191,1191=>911,1194=>716,1195=>548,1196=>669,1197=>1028,1198=>642,1199=>515,\n1200=>642,1201=>515,1202=>709,1203=>536,1204=>909,1205=>749,1206=>822,1207=>712,1210=>819,1211=>654,\n1216=>421,1217=>1181,1218=>1175,1219=>782,1220=>624,1223=>850,1224=>659,1227=>885,1228=>659,1231=>342,\n1232=>733,1233=>583,1234=>733,1235=>583,1236=>931,1237=>877,1238=>686,1239=>572,1240=>784,1241=>572,\n1242=>784,1243=>572,1244=>1181,1245=>1175,1246=>649,1247=>574,1248=>591,1249=>511,1250=>850,1251=>654,\n1252=>850,1253=>654,1254=>784,1255=>600,1256=>784,1257=>600,1258=>784,1259=>600,1260=>716,1261=>580,\n1262=>730,1263=>538,1264=>730,1265=>538,1266=>730,1267=>538,1268=>822,1269=>643,1270=>621,1271=>506,\n1272=>1081,1273=>916,1296=>649,1297=>574,1298=>795,1299=>659,1300=>1123,1301=>904,1306=>738,1307=>576,\n1308=>925,1309=>770,4256=>688,4257=>851,4258=>788,4259=>795,4260=>712,4261=>979,4262=>921,4263=>1100,\n4264=>587,4265=>745,4266=>955,4267=>954,4268=>725,4269=>1030,4270=>880,4271=>820,4272=>1007,4273=>721,\n4274=>689,4275=>977,4276=>887,4277=>968,4278=>738,4279=>758,4280=>748,4281=>759,4282=>826,4283=>978,\n4284=>701,4285=>748,4286=>740,4287=>1008,4288=>1019,4289=>730,4290=>812,4291=>730,4292=>801,4293=>965,\n4304=>535,4305=>563,4306=>579,4307=>798,4308=>553,4309=>549,4310=>599,4311=>823,4312=>552,4313=>540,\n4314=>1008,4315=>589,4316=>576,4317=>791,4318=>561,4319=>571,4320=>790,4321=>591,4322=>721,4323=>676,\n4324=>782,4325=>575,4326=>820,4327=>559,4328=>583,4329=>576,4330=>656,4331=>577,4332=>575,4333=>566,\n4334=>606,4335=>663,4336=>563,4337=>591,4338=>563,4339=>563,4340=>562,4341=>603,4342=>846,4343=>612,\n4344=>572,4345=>605,4346=>562,4347=>401,4348=>327,7426=>846,7432=>458,7433=>288,7444=>890,7446=>600,\n7447=>600,7453=>663,7454=>853,7455=>853,7468=>439,7469=>586,7470=>479,7472=>491,7473=>432,7474=>432,\n7475=>483,7476=>536,7477=>265,7478=>268,7479=>492,7480=>398,7481=>627,7482=>518,7483=>518,7484=>493,\n7486=>426,7487=>471,7488=>422,7489=>494,7490=>637,7491=>419,7492=>419,7493=>448,7494=>591,7495=>448,\n7496=>448,7497=>400,7498=>400,7499=>370,7500=>370,7501=>448,7502=>270,7503=>471,7504=>655,7505=>426,\n7506=>420,7507=>384,7508=>420,7509=>420,7510=>448,7511=>333,7512=>468,7513=>390,7514=>655,7515=>442,\n7522=>215,7523=>372,7524=>468,7525=>442,7543=>576,7544=>536,7547=>342,7557=>342,7579=>448,7580=>384,\n7581=>384,7582=>420,7583=>370,7584=>244,7585=>335,7586=>448,7587=>470,7588=>270,7589=>276,7590=>270,\n7591=>270,7592=>333,7593=>331,7594=>289,7595=>387,7596=>613,7597=>655,7598=>529,7599=>528,7600=>425,\n7601=>420,7602=>470,7603=>360,7604=>348,7605=>333,7606=>468,7607=>427,7609=>439,7610=>329,7611=>321,\n7612=>474,7613=>371,7614=>407,7615=>420,7620=>0,7621=>0,7622=>0,7623=>0,7624=>0,7625=>0,\n7680=>698,7681=>583,7682=>760,7683=>629,7684=>760,7685=>629,7686=>760,7687=>629,7688=>716,7689=>548,\n7690=>780,7691=>629,7692=>780,7693=>629,7694=>780,7695=>629,7696=>780,7697=>629,7698=>780,7699=>629,\n7700=>686,7701=>572,7702=>686,7703=>572,7704=>686,7705=>572,7706=>686,7707=>572,7708=>686,7709=>572,\n7710=>639,7711=>387,7712=>769,7713=>629,7714=>850,7715=>654,7716=>850,7717=>654,7718=>850,7719=>654,\n7720=>850,7721=>654,7722=>850,7723=>654,7724=>421,7725=>342,7728=>782,7729=>624,7730=>782,7731=>624,\n7732=>782,7733=>624,7734=>633,7735=>342,7736=>633,7737=>342,7738=>633,7739=>342,7740=>633,7741=>342,\n7742=>996,7743=>952,7744=>996,7745=>952,7746=>996,7747=>952,7748=>822,7749=>654,7750=>822,7751=>654,\n7752=>822,7753=>654,7754=>822,7755=>654,7756=>784,7757=>600,7760=>784,7761=>600,7762=>784,7763=>600,\n7764=>677,7765=>629,7766=>677,7767=>629,7768=>748,7769=>474,7770=>748,7771=>474,7772=>748,7773=>474,\n7774=>748,7775=>474,7776=>650,7777=>506,7778=>650,7779=>506,7784=>650,7785=>506,7786=>669,7787=>416,\n7788=>669,7789=>416,7790=>669,7791=>416,7792=>669,7793=>416,7794=>785,7795=>654,7796=>785,7797=>654,\n7798=>785,7799=>654,7800=>785,7801=>654,7802=>785,7803=>654,7804=>698,7805=>523,7806=>698,7807=>523,\n7808=>1011,7809=>774,7810=>1011,7811=>774,7812=>1011,7813=>774,7814=>1011,7815=>774,7816=>1011,7817=>774,\n7818=>698,7819=>536,7820=>698,7821=>536,7822=>642,7823=>523,7824=>657,7825=>511,7826=>657,7827=>511,\n7828=>657,7829=>511,7830=>654,7831=>416,7832=>774,7833=>523,7834=>913,7835=>387,7838=>852,7839=>600,\n7840=>698,7841=>583,7842=>698,7843=>583,7852=>698,7853=>583,7854=>698,7855=>583,7856=>698,7857=>583,\n7858=>698,7859=>583,7860=>698,7861=>583,7862=>698,7863=>583,7864=>686,7865=>572,7866=>686,7867=>572,\n7868=>686,7869=>572,7878=>686,7879=>572,7880=>421,7881=>342,7882=>421,7883=>342,7884=>784,7885=>600,\n7886=>784,7887=>600,7896=>784,7897=>600,7908=>785,7909=>654,7910=>785,7911=>654,7922=>642,7923=>523,\n7924=>642,7925=>523,7926=>642,7927=>523,7928=>642,7929=>523,7936=>692,7937=>692,7938=>692,7939=>692,\n7940=>692,7941=>692,7942=>692,7943=>692,7944=>698,7945=>698,7946=>880,7947=>880,7948=>748,7949=>764,\n7950=>698,7951=>698,7952=>547,7953=>547,7954=>547,7955=>547,7956=>547,7957=>547,7960=>826,7961=>817,\n7962=>1052,7963=>1052,7964=>984,7965=>1007,7968=>654,7969=>654,7970=>654,7971=>654,7972=>654,7973=>654,\n7974=>654,7975=>654,7976=>990,7977=>984,7978=>1222,7979=>1225,7980=>1151,7981=>1177,7982=>1077,7983=>1074,\n7984=>435,7985=>435,7986=>435,7987=>435,7988=>435,7989=>435,7990=>435,7991=>435,7992=>566,7993=>555,\n7994=>790,7995=>792,7996=>719,7997=>748,7998=>650,7999=>642,8000=>600,8001=>600,8002=>600,8003=>600,\n8004=>600,8005=>600,8008=>810,8009=>841,8010=>1116,8011=>1113,8012=>931,8013=>959,8016=>624,8017=>624,\n8018=>624,8019=>624,8020=>624,8021=>624,8022=>624,8023=>624,8025=>830,8027=>1067,8029=>1020,8031=>917,\n8032=>857,8033=>857,8034=>857,8035=>857,8036=>857,8037=>857,8038=>857,8039=>857,8040=>838,8041=>867,\n8042=>1141,8043=>1146,8044=>949,8045=>979,8046=>920,8047=>954,8048=>692,8049=>692,8050=>547,8051=>547,\n8052=>654,8053=>654,8054=>435,8055=>435,8056=>600,8057=>600,8058=>624,8059=>624,8060=>857,8061=>857,\n8064=>692,8065=>692,8066=>692,8067=>692,8068=>692,8069=>692,8070=>692,8071=>692,8072=>698,8073=>698,\n8074=>880,8075=>880,8076=>748,8077=>764,8078=>698,8079=>698,8080=>654,8081=>654,8082=>654,8083=>654,\n8084=>654,8085=>654,8086=>654,8087=>654,8088=>990,8089=>984,8090=>1222,8091=>1225,8092=>1151,8093=>1177,\n8094=>1077,8095=>1074,8096=>857,8097=>857,8098=>857,8099=>857,8100=>857,8101=>857,8102=>857,8103=>857,\n8104=>838,8105=>867,8106=>1141,8107=>1146,8108=>949,8109=>979,8110=>920,8111=>954,8112=>692,8113=>692,\n8114=>692,8115=>692,8116=>692,8118=>692,8119=>692,8120=>698,8121=>698,8122=>729,8123=>698,8124=>698,\n8125=>450,8126=>450,8127=>450,8128=>450,8129=>450,8130=>654,8131=>654,8132=>654,8134=>654,8135=>654,\n8136=>899,8137=>852,8138=>1072,8139=>1006,8140=>850,8141=>450,8142=>450,8143=>450,8144=>435,8145=>435,\n8146=>435,8147=>435,8150=>435,8151=>435,8152=>421,8153=>421,8154=>642,8155=>595,8157=>450,8158=>450,\n8159=>450,8160=>624,8161=>624,8162=>624,8163=>624,8164=>598,8165=>598,8166=>624,8167=>624,8168=>642,\n8169=>642,8170=>917,8171=>857,8172=>819,8173=>450,8174=>450,8175=>450,8178=>857,8179=>857,8180=>857,\n8182=>857,8183=>857,8184=>962,8185=>798,8186=>991,8187=>820,8188=>801,8189=>450,8190=>450,8192=>450,\n8193=>900,8194=>450,8195=>900,8196=>296,8197=>225,8198=>150,8199=>626,8200=>313,8201=>180,8202=>89,\n8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>374,8209=>374,8210=>626,8213=>900,8214=>450,\n8215=>450,8219=>313,8223=>518,8227=>575,8228=>313,8229=>606,8234=>0,8235=>0,8236=>0,8237=>0,\n8238=>0,8239=>180,8241=>1631,8242=>237,8243=>402,8244=>567,8245=>237,8246=>402,8247=>567,8248=>659,\n8252=>566,8253=>527,8254=>450,8258=>920,8260=>150,8261=>426,8262=>426,8263=>974,8264=>770,8265=>770,\n8267=>572,8268=>450,8269=>450,8270=>470,8271=>332,8273=>470,8274=>500,8275=>900,8279=>731,8287=>200,\n8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8298=>0,8299=>0,8300=>0,8301=>0,8302=>0,\n8303=>0,8304=>394,8305=>215,8308=>394,8309=>394,8310=>394,8311=>394,8312=>394,8313=>394,8314=>475,\n8315=>475,8316=>475,8317=>268,8318=>268,8319=>412,8320=>394,8321=>394,8322=>394,8323=>394,8324=>394,\n8325=>394,8326=>394,8327=>394,8328=>394,8329=>394,8330=>475,8331=>475,8332=>475,8333=>268,8334=>268,\n8336=>419,8337=>400,8338=>420,8339=>338,8340=>400,8358=>626,8367=>1039,8369=>710,8372=>788,8373=>626,\n8451=>1078,8457=>1001,8462=>654,8463=>654,8470=>978,8486=>801,8487=>801,8490=>782,8491=>698,8513=>707,\n8514=>518,8515=>573,8516=>684,8523=>813,8531=>932,8532=>932,8533=>932,8534=>932,8535=>932,8536=>932,\n8537=>932,8538=>932,8539=>932,8540=>932,8541=>932,8542=>932,8543=>554,8544=>421,8545=>663,8546=>904,\n8547=>984,8548=>698,8549=>1014,8550=>1256,8551=>1498,8552=>962,8553=>698,8554=>970,8555=>1212,8556=>633,\n8557=>716,8558=>780,8559=>996,8560=>342,8561=>684,8562=>1025,8563=>865,8564=>523,8565=>865,8566=>1207,\n8567=>1548,8568=>878,8569=>536,8570=>878,8571=>1220,8572=>342,8573=>548,8574=>629,8575=>952,8576=>1129,\n8577=>780,8578=>1141,8579=>716,8580=>548,8592=>754,8593=>754,8594=>754,8595=>754,8596=>754,8597=>754,\n8598=>754,8599=>754,8600=>754,8601=>754,8602=>754,8603=>754,8604=>754,8605=>754,8606=>754,8607=>754,\n8608=>754,8609=>754,8610=>754,8611=>754,8612=>754,8613=>754,8614=>754,8615=>754,8616=>754,8617=>754,\n8618=>754,8619=>754,8620=>754,8621=>754,8622=>754,8623=>765,8624=>754,8625=>754,8626=>754,8627=>754,\n8628=>754,8629=>754,8630=>754,8631=>754,8632=>754,8633=>754,8634=>754,8635=>754,8636=>754,8637=>754,\n8638=>754,8639=>754,8640=>754,8641=>754,8642=>754,8643=>754,8644=>754,8645=>754,8646=>754,8647=>754,\n8648=>754,8649=>754,8650=>754,8651=>754,8652=>754,8653=>754,8654=>754,8655=>754,8656=>754,8657=>754,\n8658=>754,8659=>754,8660=>754,8661=>754,8662=>754,8663=>754,8664=>754,8665=>754,8666=>754,8667=>754,\n8668=>754,8669=>754,8670=>754,8671=>754,8672=>754,8673=>754,8674=>754,8675=>754,8676=>754,8677=>754,\n8678=>754,8679=>754,8680=>754,8681=>754,8682=>754,8683=>754,8684=>754,8685=>754,8686=>754,8687=>754,\n8688=>754,8689=>754,8690=>754,8691=>754,8692=>754,8693=>754,8694=>754,8695=>754,8696=>754,8697=>754,\n8698=>754,8699=>754,8700=>754,8701=>754,8702=>754,8703=>754,8704=>577,8706=>480,8707=>558,8708=>558,\n8710=>677,8711=>677,8712=>666,8713=>666,8715=>666,8716=>666,8719=>757,8720=>757,8721=>677,8722=>754,\n8723=>754,8724=>754,8725=>329,8727=>622,8728=>466,8729=>466,8730=>591,8731=>591,8732=>591,8733=>604,\n8734=>750,8735=>754,8736=>754,8739=>292,8740=>546,8741=>476,8742=>696,8743=>730,8744=>730,8745=>754,\n8746=>754,8747=>521,8748=>900,8749=>1252,8760=>754,8761=>754,8762=>754,8763=>754,8764=>754,8765=>754,\n8770=>754,8771=>754,8776=>754,8784=>754,8785=>754,8786=>754,8787=>754,8788=>974,8789=>974,8800=>754,\n8801=>754,8804=>754,8805=>754,8834=>754,8835=>754,8836=>754,8837=>754,8838=>754,8839=>754,8844=>754,\n8845=>754,8846=>754,8847=>754,8848=>754,8849=>754,8850=>754,8851=>754,8852=>754,8853=>754,8854=>754,\n8855=>754,8856=>754,8857=>754,8858=>754,8859=>754,8860=>754,8861=>754,8862=>754,8863=>754,8864=>754,\n8865=>754,8866=>795,8867=>795,8868=>864,8869=>864,8870=>554,8871=>554,8872=>795,8873=>795,8874=>795,\n8875=>971,8876=>795,8877=>795,8878=>795,8879=>971,8901=>358,8962=>751,8968=>426,8969=>426,8970=>426,\n8971=>426,8976=>754,8977=>484,8984=>835,8985=>754,8992=>521,8993=>521,8997=>900,9000=>1299,9085=>907,\n9134=>521,9167=>850,9251=>751,9600=>692,9601=>692,9602=>692,9603=>692,9604=>692,9605=>692,9606=>692,\n9607=>692,9608=>692,9609=>692,9610=>692,9611=>692,9612=>692,9613=>692,9614=>692,9615=>692,9616=>692,\n9617=>692,9618=>692,9619=>692,9620=>692,9621=>692,9622=>692,9623=>692,9624=>692,9625=>692,9626=>692,\n9627=>692,9628=>692,9629=>692,9630=>692,9631=>692,9632=>850,9633=>850,9634=>850,9635=>850,9636=>850,\n9637=>850,9638=>850,9639=>850,9640=>850,9641=>850,9642=>610,9643=>610,9644=>850,9645=>850,9646=>495,\n9647=>495,9648=>692,9649=>692,9650=>692,9651=>692,9652=>452,9653=>452,9654=>692,9655=>692,9656=>452,\n9657=>452,9658=>692,9659=>692,9660=>692,9661=>692,9662=>452,9663=>452,9664=>692,9665=>692,9666=>452,\n9667=>452,9668=>692,9669=>692,9670=>692,9671=>692,9672=>692,9673=>785,9674=>444,9675=>785,9676=>785,\n9677=>785,9678=>785,9679=>785,9680=>785,9681=>785,9682=>785,9683=>785,9684=>785,9685=>785,9686=>474,\n9687=>474,9688=>712,9689=>873,9690=>873,9691=>873,9692=>348,9693=>348,9694=>348,9695=>348,9696=>785,\n9697=>785,9698=>692,9699=>692,9700=>692,9701=>692,9702=>531,9703=>850,9704=>850,9705=>850,9706=>850,\n9707=>850,9708=>692,9709=>692,9710=>692,9711=>1007,9712=>850,9713=>850,9714=>850,9715=>850,9716=>785,\n9717=>785,9718=>785,9719=>785,9720=>692,9721=>692,9722=>692,9723=>747,9724=>747,9725=>659,9726=>659,\n9727=>692,9728=>807,9784=>807,9785=>807,9786=>807,9787=>807,9788=>807,9791=>552,9792=>658,9793=>658,\n9794=>807,9795=>807,9796=>807,9797=>807,9798=>807,9799=>807,9824=>807,9825=>807,9826=>807,9827=>807,\n9828=>807,9829=>807,9830=>807,9831=>807,9833=>424,9834=>574,9835=>807,9836=>807,9837=>424,9838=>321,\n9839=>435,10145=>754,10181=>411,10182=>411,10208=>444,10216=>411,10217=>411,10224=>754,10225=>754,10226=>754,\n10227=>754,10228=>930,10229=>1290,10230=>1290,10231=>1290,10232=>1290,10233=>1290,10234=>1290,10235=>1290,10236=>1290,\n10237=>1290,10238=>1290,10239=>1290,10240=>703,10241=>703,10242=>703,10243=>703,10244=>703,10245=>703,10246=>703,\n10247=>703,10248=>703,10249=>703,10250=>703,10251=>703,10252=>703,10253=>703,10254=>703,10255=>703,10256=>703,\n10257=>703,10258=>703,10259=>703,10260=>703,10261=>703,10262=>703,10263=>703,10264=>703,10265=>703,10266=>703,\n10267=>703,10268=>703,10269=>703,10270=>703,10271=>703,10272=>703,10273=>703,10274=>703,10275=>703,10276=>703,\n10277=>703,10278=>703,10279=>703,10280=>703,10281=>703,10282=>703,10283=>703,10284=>703,10285=>703,10286=>703,\n10287=>703,10288=>703,10289=>703,10290=>703,10291=>703,10292=>703,10293=>703,10294=>703,10295=>703,10296=>703,\n10297=>703,10298=>703,10299=>703,10300=>703,10301=>703,10302=>703,10303=>703,10304=>703,10305=>703,10306=>703,\n10307=>703,10308=>703,10309=>703,10310=>703,10311=>703,10312=>703,10313=>703,10314=>703,10315=>703,10316=>703,\n10317=>703,10318=>703,10319=>703,10320=>703,10321=>703,10322=>703,10323=>703,10324=>703,10325=>703,10326=>703,\n10327=>703,10328=>703,10329=>703,10330=>703,10331=>703,10332=>703,10333=>703,10334=>703,10335=>703,10336=>703,\n10337=>703,10338=>703,10339=>703,10340=>703,10341=>703,10342=>703,10343=>703,10344=>703,10345=>703,10346=>703,\n10347=>703,10348=>703,10349=>703,10350=>703,10351=>703,10352=>703,10353=>703,10354=>703,10355=>703,10356=>703,\n10357=>703,10358=>703,10359=>703,10360=>703,10361=>703,10362=>703,10363=>703,10364=>703,10365=>703,10366=>703,\n10367=>703,10368=>703,10369=>703,10370=>703,10371=>703,10372=>703,10373=>703,10374=>703,10375=>703,10376=>703,\n10377=>703,10378=>703,10379=>703,10380=>703,10381=>703,10382=>703,10383=>703,10384=>703,10385=>703,10386=>703,\n10387=>703,10388=>703,10389=>703,10390=>703,10391=>703,10392=>703,10393=>703,10394=>703,10395=>703,10396=>703,\n10397=>703,10398=>703,10399=>703,10400=>703,10401=>703,10402=>703,10403=>703,10404=>703,10405=>703,10406=>703,\n10407=>703,10408=>703,10409=>703,10410=>703,10411=>703,10412=>703,10413=>703,10414=>703,10415=>703,10416=>703,\n10417=>703,10418=>703,10419=>703,10420=>703,10421=>703,10422=>703,10423=>703,10424=>703,10425=>703,10426=>703,\n10427=>703,10428=>703,10429=>703,10430=>703,10431=>703,10432=>703,10433=>703,10434=>703,10435=>703,10436=>703,\n10437=>703,10438=>703,10439=>703,10440=>703,10441=>703,10442=>703,10443=>703,10444=>703,10445=>703,10446=>703,\n10447=>703,10448=>703,10449=>703,10450=>703,10451=>703,10452=>703,10453=>703,10454=>703,10455=>703,10456=>703,\n10457=>703,10458=>703,10459=>703,10460=>703,10461=>703,10462=>703,10463=>703,10464=>703,10465=>703,10466=>703,\n10467=>703,10468=>703,10469=>703,10470=>703,10471=>703,10472=>703,10473=>703,10474=>703,10475=>703,10476=>703,\n10477=>703,10478=>703,10479=>703,10480=>703,10481=>703,10482=>703,10483=>703,10484=>703,10485=>703,10486=>703,\n10487=>703,10488=>703,10489=>703,10490=>703,10491=>703,10492=>703,10493=>703,10494=>703,10495=>703,10496=>754,\n10497=>754,10498=>754,10499=>754,10500=>754,10501=>754,10502=>754,10503=>754,10504=>754,10505=>754,10506=>754,\n10507=>754,10508=>754,10509=>754,10510=>754,10511=>754,10512=>754,10513=>754,10514=>754,10515=>754,10516=>754,\n10517=>754,10518=>754,10519=>754,10520=>754,10521=>754,10522=>754,10523=>754,10524=>754,10525=>754,10526=>754,\n10527=>754,10528=>754,10529=>754,10530=>754,10531=>754,10532=>754,10533=>754,10534=>754,10535=>754,10536=>754,\n10537=>754,10538=>754,10539=>754,10540=>754,10541=>754,10542=>754,10543=>754,10544=>754,10545=>754,10546=>754,\n10547=>754,10548=>754,10549=>754,10550=>754,10551=>754,10552=>754,10553=>754,10554=>754,10555=>754,10556=>754,\n10557=>754,10558=>754,10559=>754,10560=>754,10561=>754,10562=>754,10563=>754,10564=>754,10565=>754,10566=>754,\n10567=>754,10568=>754,10569=>754,10570=>754,10571=>754,10572=>754,10573=>754,10574=>754,10575=>754,10576=>754,\n10577=>754,10578=>754,10579=>754,10580=>754,10581=>754,10582=>754,10583=>754,10584=>754,10585=>754,10586=>754,\n10587=>754,10588=>754,10589=>754,10590=>754,10591=>754,10592=>754,10593=>754,10594=>754,10595=>754,10596=>754,\n10597=>754,10598=>754,10599=>754,10600=>754,10601=>754,10602=>754,10603=>754,10604=>754,10605=>754,10606=>754,\n10607=>754,10608=>754,10609=>754,10610=>754,10611=>754,10612=>754,10613=>754,10614=>754,10615=>929,10616=>754,\n10617=>754,10618=>864,10619=>754,10620=>754,10621=>754,10622=>754,10623=>754,10731=>444,10764=>1604,10765=>549,\n10766=>549,10799=>754,11008=>754,11009=>754,11010=>754,11011=>754,11012=>754,11013=>754,11014=>754,11015=>754,\n11016=>754,11017=>754,11018=>754,11019=>754,11020=>754,11021=>754,11022=>754,11023=>754,11024=>754,11025=>754,\n11026=>850,11027=>850,11028=>850,11029=>850,11030=>692,11031=>692,11032=>692,11033=>692,11034=>850,11364=>748,\n11367=>850,11368=>654,11369=>782,11370=>624,11371=>657,11372=>511,11374=>996,11375=>698,11381=>701,11382=>519,\n11383=>814,11385=>514,11386=>600,11388=>282,11389=>439,11520=>695,11521=>571,11522=>723,11523=>592,11524=>708,\n11525=>866,11526=>680,11527=>864,11528=>555,11529=>581,11530=>866,11531=>567,11532=>581,11533=>866,11534=>761,\n11535=>779,11536=>865,11537=>580,11538=>580,11539=>863,11540=>851,11541=>777,11542=>580,11543=>581,11544=>580,\n11545=>584,11546=>619,11547=>842,11548=>883,11549=>613,11550=>608,11551=>766,11552=>1002,11553=>569,11554=>580,\n11555=>582,11556=>674,11557=>822,11800=>527,11810=>426,11811=>426,11812=>426,11813=>426,11822=>527,42564=>650,\n42565=>506,42566=>421,42567=>342,42576=>1200,42577=>976,42580=>1158,42581=>923,42582=>1158,42583=>926,42760=>450,\n42761=>450,42762=>450,42763=>450,42764=>450,42765=>450,42766=>450,42767=>450,42768=>450,42769=>450,42770=>450,\n42771=>450,42772=>450,42773=>450,42774=>450,42779=>346,42780=>346,42781=>249,42782=>249,42783=>249,42891=>395,\n42892=>275,62464=>653,62465=>663,62466=>707,62467=>917,62468=>663,62469=>658,62470=>716,62471=>952,62472=>663,\n62473=>663,62474=>1196,62475=>679,62476=>678,62477=>922,62478=>663,62479=>678,62480=>963,62481=>736,62482=>783,\n62483=>737,62484=>914,62485=>677,62486=>907,62487=>677,62488=>684,62489=>678,62490=>720,62491=>678,62492=>684,\n62493=>664,62494=>721,62495=>860,62496=>663,62497=>762,62498=>664,62499=>663,62500=>663,62501=>714,62502=>930,\n62504=>813,63172=>506,63173=>600,63174=>629,63175=>654,63176=>952,63185=>450,63188=>450,64256=>744,64257=>654,\n64258=>654,64259=>998,64260=>1031,64261=>791,64262=>874,65024=>0,65025=>0,65026=>0,65027=>0,65028=>0,\n65029=>0,65030=>0,65031=>0,65032=>0,65033=>0,65034=>0,65035=>0,65036=>0,65037=>0,65038=>0,\n65039=>0,65529=>0,65530=>0,65531=>0,65532=>0,65533=>1002);\n$enc='';\n$diff='';\n$file='dejavuserifcondensedbi.z';\n$ctg='dejavuserifcondensedbi.ctg.z';\n$originalsize=293472;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavuserifcondensedi.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='DejaVuSerifCondensed-Italic';\n$desc=array('Ascent'=>928,'Descent'=>-236,'CapHeight'=>-59,'Flags'=>96,'FontBBox'=>'[-755 -347 1485 1227]','ItalicAngle'=>-11,'StemV'=>70,'MissingWidth'=>540);\n$up=-63;\n$ut=44;\n$dw=540;\n$cw=array(\n0=>540,32=>286,33=>361,34=>414,35=>754,36=>572,37=>855,38=>801,39=>247,40=>351,\n41=>351,42=>450,43=>754,44=>286,45=>304,46=>286,47=>303,48=>572,49=>572,50=>572,\n51=>572,52=>572,53=>572,54=>572,55=>572,56=>572,57=>572,58=>303,59=>303,60=>754,\n61=>754,62=>754,63=>482,64=>900,65=>650,66=>661,67=>688,68=>721,69=>657,70=>624,\n71=>719,72=>785,73=>355,74=>360,75=>672,76=>598,77=>921,78=>787,79=>738,80=>605,\n81=>738,82=>677,83=>616,84=>600,85=>758,86=>650,87=>925,88=>641,89=>594,90=>625,\n91=>351,92=>303,93=>351,94=>754,95=>450,96=>450,97=>536,98=>576,99=>504,100=>576,\n101=>532,102=>333,103=>576,104=>580,105=>288,106=>279,107=>545,108=>288,109=>853,110=>580,\n111=>542,112=>576,113=>576,114=>430,115=>461,116=>361,117=>580,118=>508,119=>770,120=>507,\n121=>508,122=>474,123=>572,124=>303,125=>572,126=>754,8364=>572,8218=>286,402=>333,8222=>466,\n8230=>900,8224=>450,8225=>450,710=>450,8240=>1208,352=>616,8249=>360,338=>1023,381=>625,8216=>286,\n8217=>286,8220=>460,8221=>460,8226=>531,8211=>450,8212=>900,732=>450,8482=>900,353=>461,8250=>360,\n339=>890,382=>474,376=>594,160=>286,161=>361,162=>572,163=>572,164=>572,165=>572,166=>303,\n167=>450,168=>450,169=>900,170=>427,171=>550,172=>754,173=>304,174=>900,175=>450,176=>450,\n177=>754,178=>360,179=>360,180=>450,181=>584,182=>572,183=>286,184=>450,185=>360,186=>423,\n187=>550,188=>872,189=>872,190=>872,191=>482,192=>650,193=>650,194=>650,195=>650,196=>650,\n197=>650,198=>901,199=>688,200=>657,201=>657,202=>657,203=>657,204=>355,205=>355,206=>355,\n207=>355,208=>726,209=>787,210=>738,211=>738,212=>738,213=>738,214=>738,215=>754,216=>738,\n217=>758,218=>758,219=>758,220=>758,221=>594,222=>608,223=>601,224=>536,225=>536,226=>536,\n227=>536,228=>536,229=>536,230=>846,231=>504,232=>532,233=>532,234=>532,235=>532,236=>288,\n237=>288,238=>288,239=>288,240=>542,241=>580,242=>542,243=>542,244=>542,245=>542,246=>542,\n247=>754,248=>542,249=>580,250=>580,251=>580,252=>580,253=>508,254=>576,255=>508,256=>650,\n257=>536,258=>650,259=>536,260=>650,261=>536,262=>688,263=>504,264=>688,265=>504,266=>688,\n267=>504,268=>688,269=>504,270=>721,271=>576,272=>726,273=>576,274=>657,275=>532,276=>657,\n277=>532,278=>657,279=>532,280=>657,281=>532,282=>657,283=>532,284=>719,285=>576,286=>719,\n287=>576,288=>719,289=>576,290=>719,291=>576,292=>785,293=>580,294=>785,295=>580,296=>355,\n297=>288,298=>355,299=>288,300=>355,301=>288,302=>355,303=>288,304=>355,305=>288,306=>721,\n307=>479,308=>360,309=>279,310=>672,311=>545,312=>545,313=>598,314=>288,315=>598,316=>288,\n317=>598,318=>360,319=>604,320=>418,321=>602,322=>292,323=>787,324=>580,325=>787,326=>580,\n327=>787,328=>580,329=>779,330=>758,331=>580,332=>738,333=>542,334=>738,335=>542,336=>738,\n337=>542,340=>677,341=>430,342=>677,343=>430,344=>677,345=>430,346=>616,347=>461,348=>616,\n349=>461,350=>616,351=>461,354=>600,355=>361,356=>600,357=>361,358=>600,359=>361,360=>758,\n361=>580,362=>758,363=>580,364=>758,365=>580,366=>758,367=>580,368=>758,369=>580,370=>758,\n371=>580,372=>925,373=>770,374=>594,375=>508,377=>625,378=>474,379=>625,380=>474,383=>333,\n384=>576,385=>661,386=>661,387=>576,388=>661,389=>576,390=>688,391=>688,392=>504,393=>726,\n394=>721,395=>661,396=>576,397=>542,398=>657,399=>738,400=>561,401=>624,403=>719,404=>641,\n405=>839,406=>355,407=>355,408=>672,409=>545,410=>288,411=>570,412=>853,413=>787,414=>580,\n415=>738,416=>738,417=>542,418=>936,419=>726,420=>605,421=>576,422=>677,423=>616,424=>461,\n425=>636,426=>292,427=>361,428=>600,429=>361,430=>600,431=>758,432=>580,433=>746,434=>684,\n435=>664,436=>670,437=>625,438=>474,439=>508,440=>508,441=>508,443=>572,444=>618,445=>508,\n446=>482,448=>265,449=>443,450=>413,451=>265,452=>1347,453=>1195,454=>1050,455=>958,456=>876,\n457=>567,458=>1148,459=>1066,460=>858,461=>650,462=>536,463=>355,464=>288,465=>738,466=>542,\n467=>758,468=>580,469=>758,470=>580,471=>758,472=>580,473=>758,474=>580,475=>758,476=>580,\n477=>532,478=>650,479=>536,480=>650,481=>536,482=>901,483=>846,484=>763,485=>576,486=>719,\n487=>576,488=>672,489=>545,490=>738,491=>542,492=>738,493=>542,494=>508,495=>508,496=>288,\n497=>1347,498=>1195,499=>1050,500=>719,501=>576,502=>1038,504=>787,505=>580,506=>650,507=>536,\n508=>901,509=>846,510=>738,511=>542,512=>650,513=>536,514=>650,515=>536,516=>657,517=>532,\n518=>657,519=>532,520=>355,521=>288,522=>355,523=>288,524=>738,525=>542,526=>738,527=>542,\n528=>677,529=>430,530=>677,531=>430,532=>758,533=>580,534=>758,535=>580,536=>616,537=>461,\n538=>600,539=>361,540=>564,541=>469,542=>785,543=>580,544=>758,545=>732,548=>625,549=>474,\n550=>650,551=>536,552=>657,553=>532,554=>738,555=>542,556=>738,557=>542,558=>738,559=>542,\n560=>738,561=>542,562=>594,563=>508,564=>450,565=>748,566=>444,567=>279,568=>864,569=>864,\n570=>650,571=>688,572=>504,573=>598,574=>600,575=>461,576=>474,577=>525,578=>417,581=>650,\n592=>536,593=>576,594=>607,595=>576,596=>504,597=>504,598=>582,599=>614,600=>532,601=>532,\n602=>759,603=>483,604=>458,605=>695,606=>552,607=>283,608=>615,609=>576,610=>489,611=>641,\n612=>507,613=>580,614=>580,615=>580,616=>288,617=>353,618=>288,619=>342,620=>409,621=>326,\n622=>633,623=>853,624=>853,625=>853,626=>579,627=>624,628=>581,629=>542,630=>711,631=>583,\n632=>542,633=>451,634=>451,635=>496,636=>430,637=>430,638=>407,639=>407,640=>534,641=>534,\n642=>461,643=>244,644=>333,645=>438,646=>292,647=>361,648=>361,649=>580,650=>558,651=>547,\n652=>508,653=>770,654=>508,655=>589,656=>537,657=>504,658=>508,659=>504,660=>482,661=>482,\n662=>482,663=>461,664=>738,665=>506,666=>552,667=>588,668=>600,669=>329,670=>545,671=>581,\n672=>615,673=>482,674=>482,675=>896,676=>930,677=>898,678=>728,679=>538,680=>704,681=>804,\n682=>582,683=>608,684=>538,685=>398,686=>703,687=>690,688=>389,689=>387,690=>237,691=>312,\n692=>312,693=>387,694=>352,695=>485,696=>320,697=>250,699=>286,700=>286,701=>286,702=>276,\n703=>276,704=>252,705=>252,711=>450,712=>254,713=>450,716=>254,720=>303,721=>303,722=>276,\n723=>276,726=>353,728=>450,729=>450,730=>450,731=>450,733=>450,734=>375,736=>403,737=>218,\n738=>303,739=>319,740=>252,741=>444,742=>444,743=>444,744=>444,745=>444,750=>435,768=>0,\n769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,\n779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,\n789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,\n799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,\n809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,\n819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,\n829=>0,830=>0,831=>0,835=>0,847=>0,856=>0,865=>0,880=>666,881=>478,884=>250,\n885=>250,890=>450,891=>504,892=>504,893=>504,894=>303,900=>450,901=>450,902=>650,903=>286,\n904=>810,905=>935,906=>505,908=>751,910=>808,911=>767,912=>353,913=>650,914=>661,915=>624,\n916=>650,917=>657,918=>625,919=>785,920=>738,921=>355,922=>672,923=>650,924=>921,925=>787,\n926=>633,927=>738,928=>785,929=>605,931=>636,932=>600,933=>594,934=>738,935=>641,936=>789,\n937=>746,938=>355,939=>594,940=>607,941=>483,942=>539,943=>353,944=>547,945=>607,946=>520,\n947=>538,948=>542,949=>483,950=>488,951=>539,952=>542,953=>353,954=>590,955=>570,956=>584,\n957=>547,958=>496,959=>542,960=>591,961=>529,962=>504,963=>614,964=>498,965=>547,966=>630,\n967=>545,968=>706,969=>734,970=>353,971=>547,972=>542,973=>547,974=>734,976=>524,977=>643,\n978=>618,979=>787,980=>618,981=>613,982=>734,983=>561,984=>738,985=>542,986=>688,987=>504,\n988=>624,989=>417,990=>531,991=>593,992=>704,993=>519,1008=>561,1009=>529,1010=>504,1011=>279,\n1012=>738,1013=>504,1014=>504,1015=>608,1016=>576,1017=>688,1018=>921,1019=>637,1020=>529,1021=>688,\n1022=>688,1023=>688,1024=>657,1025=>657,1026=>719,1027=>596,1028=>688,1029=>616,1030=>355,1031=>355,\n1032=>360,1033=>976,1034=>1006,1035=>785,1036=>696,1037=>785,1038=>650,1039=>785,1040=>681,1041=>661,\n1042=>661,1043=>596,1044=>731,1045=>657,1046=>1011,1047=>561,1048=>785,1049=>785,1050=>696,1051=>751,\n1052=>921,1053=>785,1054=>738,1055=>785,1056=>605,1057=>688,1058=>600,1059=>650,1060=>747,1061=>641,\n1062=>785,1063=>695,1064=>1027,1065=>1027,1066=>715,1067=>885,1068=>606,1069=>688,1070=>1074,1071=>727,\n1072=>536,1073=>549,1074=>523,1075=>455,1076=>570,1077=>532,1078=>1023,1079=>491,1080=>580,1081=>580,\n1082=>537,1083=>573,1084=>746,1085=>593,1086=>542,1087=>580,1088=>576,1089=>504,1090=>853,1091=>522,\n1092=>704,1093=>507,1094=>628,1095=>560,1096=>853,1097=>901,1098=>600,1099=>733,1100=>490,1101=>504,\n1102=>792,1103=>596,1104=>532,1105=>532,1106=>561,1107=>455,1108=>504,1109=>461,1110=>288,1111=>288,\n1112=>279,1113=>773,1114=>790,1115=>580,1116=>537,1117=>580,1118=>522,1119=>580,1122=>686,1123=>794,\n1124=>1016,1125=>750,1130=>1011,1131=>828,1136=>849,1137=>812,1138=>738,1139=>497,1140=>773,1141=>610,\n1164=>636,1165=>490,1168=>604,1169=>476,1170=>596,1171=>455,1172=>657,1173=>552,1174=>1011,1175=>1023,\n1176=>561,1177=>491,1178=>696,1179=>544,1182=>696,1183=>537,1184=>803,1185=>602,1186=>785,1187=>641,\n1188=>1025,1189=>771,1190=>1085,1191=>848,1194=>688,1195=>504,1196=>600,1197=>911,1198=>594,1199=>514,\n1200=>594,1201=>514,1202=>641,1203=>566,1204=>842,1205=>659,1206=>674,1207=>609,1210=>674,1211=>580,\n1216=>355,1217=>1011,1218=>1023,1219=>672,1220=>545,1223=>785,1224=>600,1227=>674,1228=>600,1231=>288,\n1232=>681,1233=>536,1234=>681,1235=>536,1236=>901,1237=>846,1238=>657,1239=>532,1240=>738,1241=>532,\n1242=>738,1243=>532,1244=>1011,1245=>1023,1246=>561,1247=>491,1248=>508,1249=>508,1250=>785,1251=>580,\n1252=>785,1253=>580,1254=>738,1255=>542,1256=>738,1257=>542,1258=>738,1259=>542,1260=>688,1261=>504,\n1262=>650,1263=>522,1264=>650,1265=>522,1266=>650,1267=>522,1268=>695,1269=>560,1270=>596,1271=>455,\n1272=>885,1273=>733,1296=>561,1297=>491,1298=>751,1299=>573,1300=>1079,1301=>845,1306=>738,1307=>576,\n1308=>925,1309=>770,4256=>659,4257=>773,4258=>753,4259=>782,4260=>668,4261=>892,4262=>833,4263=>1000,\n4264=>519,4265=>684,4266=>875,4267=>856,4268=>677,4269=>976,4270=>815,4271=>754,4272=>944,4273=>668,\n4274=>611,4275=>922,4276=>852,4277=>926,4278=>667,4279=>668,4280=>668,4281=>668,4282=>800,4283=>852,\n4284=>651,4285=>688,4286=>668,4287=>871,4288=>909,4289=>641,4290=>786,4291=>669,4292=>762,4293=>864,\n4304=>495,4305=>523,4306=>539,4307=>759,4308=>514,4309=>510,4310=>558,4311=>783,4312=>512,4313=>500,\n4314=>968,4315=>536,4316=>536,4317=>751,4318=>521,4319=>531,4320=>750,4321=>546,4322=>682,4323=>631,\n4324=>742,4325=>535,4326=>781,4327=>520,4328=>543,4329=>536,4330=>616,4331=>537,4332=>501,4333=>527,\n4334=>562,4335=>624,4336=>523,4337=>551,4338=>523,4339=>523,4340=>522,4341=>593,4342=>806,4343=>572,\n4344=>532,4345=>565,4346=>522,4347=>410,4348=>335,7426=>846,7432=>458,7433=>288,7444=>890,7446=>542,\n7447=>542,7453=>663,7454=>853,7455=>853,7468=>409,7469=>567,7470=>417,7472=>454,7473=>413,7474=>413,\n7475=>453,7476=>494,7477=>224,7478=>227,7479=>423,7480=>376,7481=>580,7482=>496,7483=>496,7484=>464,\n7486=>381,7487=>426,7488=>378,7489=>478,7490=>583,7491=>347,7492=>347,7493=>360,7494=>556,7495=>360,\n7496=>360,7497=>348,7498=>348,7499=>385,7500=>306,7501=>360,7502=>157,7503=>328,7504=>552,7505=>359,\n7506=>347,7507=>312,7508=>347,7509=>347,7510=>360,7511=>222,7512=>359,7513=>417,7514=>552,7515=>335,\n7522=>181,7523=>312,7524=>359,7525=>335,7543=>576,7544=>494,7547=>334,7557=>288,7579=>439,7580=>317,\n7581=>317,7582=>426,7583=>385,7584=>209,7585=>285,7586=>439,7587=>359,7588=>181,7589=>181,7590=>181,\n7591=>181,7592=>286,7593=>237,7594=>236,7595=>409,7596=>552,7597=>552,7598=>445,7599=>443,7600=>438,\n7601=>347,7602=>426,7603=>374,7604=>269,7605=>301,7606=>359,7607=>429,7609=>417,7610=>320,7611=>298,\n7612=>376,7613=>376,7614=>406,7615=>426,7620=>0,7621=>0,7622=>0,7623=>0,7624=>0,7625=>0,\n7680=>650,7681=>536,7682=>661,7683=>576,7684=>661,7685=>576,7686=>661,7687=>576,7688=>688,7689=>504,\n7690=>721,7691=>576,7692=>721,7693=>576,7694=>721,7695=>576,7696=>721,7697=>576,7698=>721,7699=>576,\n7700=>657,7701=>532,7702=>657,7703=>532,7704=>657,7705=>532,7706=>657,7707=>532,7708=>657,7709=>532,\n7710=>624,7711=>333,7712=>719,7713=>576,7714=>785,7715=>580,7716=>785,7717=>580,7718=>785,7719=>580,\n7720=>785,7721=>580,7722=>785,7723=>580,7724=>355,7725=>288,7728=>672,7729=>545,7730=>672,7731=>545,\n7732=>672,7733=>545,7734=>598,7735=>288,7736=>598,7737=>288,7738=>598,7739=>288,7740=>598,7741=>288,\n7742=>921,7743=>853,7744=>921,7745=>853,7746=>921,7747=>857,7748=>787,7749=>580,7750=>787,7751=>580,\n7752=>787,7753=>580,7754=>787,7755=>580,7756=>738,7757=>542,7760=>738,7761=>542,7762=>738,7763=>542,\n7764=>605,7765=>576,7766=>605,7767=>576,7768=>677,7769=>430,7770=>677,7771=>430,7772=>677,7773=>430,\n7774=>677,7775=>430,7776=>616,7777=>461,7778=>616,7779=>461,7784=>616,7785=>461,7786=>600,7787=>361,\n7788=>600,7789=>361,7790=>600,7791=>361,7792=>600,7793=>361,7794=>758,7795=>580,7796=>758,7797=>580,\n7798=>758,7799=>580,7800=>758,7801=>580,7802=>758,7803=>580,7804=>650,7805=>508,7806=>650,7807=>508,\n7808=>925,7809=>770,7810=>925,7811=>770,7812=>925,7813=>770,7814=>925,7815=>770,7816=>925,7817=>770,\n7818=>641,7819=>507,7820=>641,7821=>507,7822=>594,7823=>508,7824=>625,7825=>474,7826=>625,7827=>474,\n7828=>625,7829=>474,7830=>580,7831=>361,7832=>770,7833=>508,7834=>813,7835=>333,7838=>746,7839=>542,\n7840=>650,7841=>536,7842=>650,7843=>536,7852=>650,7853=>536,7854=>650,7855=>536,7856=>650,7857=>536,\n7858=>650,7859=>536,7860=>650,7861=>536,7862=>650,7863=>536,7864=>657,7865=>532,7866=>657,7867=>532,\n7868=>657,7869=>532,7878=>657,7879=>532,7880=>355,7881=>288,7882=>355,7883=>288,7884=>738,7885=>542,\n7886=>738,7887=>542,7896=>738,7897=>542,7908=>758,7909=>580,7910=>758,7911=>580,7922=>594,7923=>508,\n7924=>594,7925=>508,7926=>594,7927=>508,7928=>594,7929=>508,7936=>607,7937=>607,7938=>607,7939=>607,\n7940=>607,7941=>607,7942=>607,7943=>607,7944=>650,7945=>650,7946=>782,7947=>782,7948=>660,7949=>687,\n7950=>650,7951=>650,7952=>483,7953=>483,7954=>483,7955=>483,7956=>483,7957=>483,7960=>768,7961=>757,\n7962=>960,7963=>969,7964=>907,7965=>931,7968=>539,7969=>539,7970=>539,7971=>539,7972=>539,7973=>539,\n7974=>539,7975=>539,7976=>898,7977=>893,7978=>1090,7979=>1101,7980=>1043,7981=>1064,7982=>988,7983=>985,\n7984=>353,7985=>353,7986=>353,7987=>353,7988=>353,7989=>353,7990=>353,7991=>353,7992=>469,7993=>461,\n7994=>661,7995=>664,7996=>611,7997=>635,7998=>561,7999=>553,8000=>542,8001=>542,8002=>542,8003=>542,\n8004=>542,8005=>542,8008=>738,8009=>773,8010=>1008,8011=>1015,8012=>843,8013=>867,8016=>547,8017=>547,\n8018=>547,8019=>547,8020=>547,8021=>547,8022=>547,8023=>547,8025=>765,8027=>971,8029=>939,8031=>857,\n8032=>734,8033=>734,8034=>734,8035=>734,8036=>734,8037=>734,8038=>734,8039=>734,8040=>746,8041=>783,\n8042=>1018,8043=>1023,8044=>852,8045=>878,8046=>844,8047=>873,8048=>607,8049=>607,8050=>483,8051=>483,\n8052=>539,8053=>539,8054=>353,8055=>353,8056=>542,8057=>542,8058=>547,8059=>547,8060=>734,8061=>734,\n8064=>607,8065=>607,8066=>607,8067=>607,8068=>607,8069=>607,8070=>607,8071=>607,8072=>650,8073=>650,\n8074=>782,8075=>782,8076=>660,8077=>687,8078=>650,8079=>650,8080=>539,8081=>539,8082=>539,8083=>539,\n8084=>539,8085=>539,8086=>539,8087=>539,8088=>898,8089=>893,8090=>1090,8091=>1101,8092=>1043,8093=>1064,\n8094=>988,8095=>985,8096=>734,8097=>734,8098=>734,8099=>734,8100=>734,8101=>734,8102=>734,8103=>734,\n8104=>746,8105=>783,8106=>1018,8107=>1023,8108=>852,8109=>878,8110=>844,8111=>873,8112=>607,8113=>607,\n8114=>607,8115=>607,8116=>607,8118=>607,8119=>607,8120=>650,8121=>650,8122=>650,8123=>650,8124=>650,\n8125=>450,8126=>450,8127=>450,8128=>450,8129=>450,8130=>539,8131=>539,8132=>539,8134=>539,8135=>539,\n8136=>820,8137=>810,8138=>956,8139=>935,8140=>785,8141=>450,8142=>450,8143=>450,8144=>353,8145=>353,\n8146=>353,8147=>353,8150=>353,8151=>353,8152=>355,8153=>355,8154=>529,8155=>505,8157=>450,8158=>450,\n8159=>450,8160=>547,8161=>547,8162=>547,8163=>547,8164=>529,8165=>529,8166=>547,8167=>547,8168=>594,\n8169=>594,8170=>829,8171=>808,8172=>711,8173=>450,8174=>450,8175=>450,8178=>734,8179=>734,8180=>734,\n8182=>734,8183=>734,8184=>865,8185=>751,8186=>886,8187=>767,8188=>746,8189=>450,8190=>450,8192=>450,\n8193=>900,8194=>450,8195=>900,8196=>296,8197=>225,8198=>150,8199=>572,8200=>286,8201=>180,8202=>89,\n8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>304,8209=>304,8210=>572,8213=>900,8214=>450,\n8215=>450,8219=>286,8223=>460,8227=>531,8228=>301,8229=>600,8234=>0,8235=>0,8236=>0,8237=>0,\n8238=>0,8239=>180,8241=>1560,8242=>204,8243=>336,8244=>468,8245=>204,8246=>336,8247=>468,8248=>305,\n8252=>475,8253=>482,8254=>450,8258=>900,8260=>150,8261=>351,8262=>351,8263=>878,8264=>678,8265=>678,\n8267=>572,8268=>450,8269=>450,8270=>450,8271=>303,8273=>450,8274=>404,8275=>900,8279=>597,8287=>200,\n8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8298=>0,8299=>0,8300=>0,8301=>0,8302=>0,\n8303=>0,8304=>360,8305=>181,8308=>360,8309=>360,8310=>360,8311=>360,8312=>360,8313=>360,8314=>475,\n8315=>475,8316=>475,8317=>221,8318=>221,8319=>365,8320=>360,8321=>360,8322=>360,8323=>360,8324=>360,\n8325=>360,8326=>360,8327=>360,8328=>360,8329=>360,8330=>475,8331=>475,8332=>475,8333=>221,8334=>221,\n8336=>347,8337=>348,8338=>347,8339=>319,8340=>348,8358=>594,8367=>951,8369=>635,8372=>702,8373=>572,\n8451=>1006,8457=>942,8462=>580,8463=>580,8470=>852,8486=>746,8487=>746,8490=>672,8491=>650,8513=>697,\n8514=>501,8515=>501,8516=>549,8523=>801,8531=>872,8532=>872,8533=>872,8534=>872,8535=>872,8536=>872,\n8537=>872,8538=>872,8539=>872,8540=>872,8541=>872,8542=>872,8543=>511,8544=>355,8545=>531,8546=>707,\n8547=>870,8548=>650,8549=>883,8550=>1059,8551=>1234,8552=>838,8553=>641,8554=>839,8555=>1015,8556=>598,\n8557=>688,8558=>721,8559=>921,8560=>288,8561=>576,8562=>863,8563=>796,8564=>508,8565=>796,8566=>1084,\n8567=>1372,8568=>795,8569=>507,8570=>795,8571=>1083,8572=>288,8573=>504,8574=>576,8575=>853,8576=>1085,\n8577=>721,8578=>1085,8579=>688,8580=>504,8592=>754,8593=>754,8594=>754,8595=>754,8596=>754,8597=>754,\n8598=>754,8599=>754,8600=>754,8601=>754,8602=>754,8603=>754,8604=>754,8605=>754,8606=>754,8607=>754,\n8608=>754,8609=>754,8610=>754,8611=>754,8612=>754,8613=>754,8614=>754,8615=>754,8616=>754,8617=>754,\n8618=>754,8619=>754,8620=>754,8621=>754,8622=>754,8623=>754,8624=>754,8625=>754,8626=>754,8627=>754,\n8628=>754,8629=>754,8630=>754,8631=>754,8632=>754,8633=>754,8634=>754,8635=>754,8636=>754,8637=>754,\n8638=>754,8639=>754,8640=>754,8641=>754,8642=>754,8643=>754,8644=>754,8645=>754,8646=>754,8647=>754,\n8648=>754,8649=>754,8650=>754,8651=>754,8652=>754,8653=>754,8654=>754,8655=>754,8656=>754,8657=>754,\n8658=>754,8659=>754,8660=>754,8661=>754,8662=>754,8663=>754,8664=>754,8665=>754,8666=>754,8667=>754,\n8668=>754,8669=>754,8670=>754,8671=>754,8672=>754,8673=>754,8674=>754,8675=>754,8676=>754,8677=>754,\n8678=>754,8679=>754,8680=>754,8681=>754,8682=>754,8683=>754,8684=>754,8685=>754,8686=>754,8687=>754,\n8688=>754,8689=>754,8690=>754,8691=>754,8692=>754,8693=>754,8694=>754,8695=>754,8696=>754,8697=>754,\n8698=>754,8699=>754,8700=>754,8701=>754,8702=>754,8703=>754,8704=>543,8706=>465,8707=>488,8708=>488,\n8710=>628,8711=>628,8712=>666,8713=>666,8715=>666,8716=>666,8719=>716,8720=>716,8721=>642,8722=>754,\n8723=>754,8724=>754,8725=>303,8727=>611,8728=>441,8729=>441,8730=>573,8731=>573,8732=>573,8733=>609,\n8734=>750,8735=>754,8736=>754,8739=>262,8740=>431,8741=>416,8742=>570,8743=>659,8744=>659,8745=>754,\n8746=>754,8747=>469,8748=>766,8749=>1063,8760=>754,8761=>754,8762=>754,8763=>754,8764=>754,8765=>754,\n8770=>754,8771=>754,8776=>754,8784=>754,8785=>754,8786=>754,8787=>754,8788=>930,8789=>930,8800=>754,\n8801=>754,8804=>754,8805=>754,8834=>754,8835=>754,8836=>754,8837=>754,8838=>754,8839=>754,8844=>754,\n8845=>754,8846=>754,8847=>761,8848=>761,8849=>761,8850=>761,8851=>754,8852=>754,8853=>754,8854=>754,\n8855=>754,8856=>754,8857=>754,8858=>754,8859=>754,8860=>754,8861=>754,8862=>754,8863=>754,8864=>754,\n8865=>754,8866=>773,8867=>773,8868=>846,8869=>846,8870=>510,8871=>510,8872=>773,8873=>773,8874=>773,\n8875=>927,8876=>773,8877=>773,8878=>773,8879=>927,8901=>308,8962=>687,8968=>351,8969=>351,8970=>351,\n8971=>351,8976=>754,8977=>461,8984=>900,8985=>754,8992=>469,8993=>469,8997=>900,9000=>1299,9085=>827,\n9134=>469,9167=>850,9251=>687,9472=>542,9473=>542,9474=>542,9475=>542,9476=>542,9477=>542,9478=>542,\n9479=>542,9480=>542,9481=>542,9482=>542,9483=>542,9484=>542,9485=>542,9486=>542,9487=>542,9488=>542,\n9489=>542,9490=>542,9491=>542,9492=>542,9493=>542,9494=>542,9495=>542,9496=>542,9497=>542,9498=>542,\n9499=>542,9500=>542,9501=>542,9502=>542,9503=>542,9504=>542,9505=>542,9506=>542,9507=>542,9508=>542,\n9509=>542,9510=>542,9511=>542,9512=>542,9513=>542,9514=>542,9515=>542,9516=>542,9517=>542,9518=>542,\n9519=>542,9520=>542,9521=>542,9522=>542,9523=>542,9524=>542,9525=>542,9526=>542,9527=>542,9528=>542,\n9529=>542,9530=>542,9531=>542,9532=>542,9533=>542,9534=>542,9535=>542,9536=>542,9537=>542,9538=>542,\n9539=>542,9540=>542,9541=>542,9542=>542,9543=>542,9544=>542,9545=>542,9546=>542,9547=>542,9548=>542,\n9549=>542,9550=>542,9551=>542,9552=>542,9553=>542,9554=>542,9555=>542,9556=>542,9557=>542,9558=>542,\n9559=>542,9560=>542,9561=>542,9562=>542,9563=>542,9564=>542,9565=>542,9566=>542,9567=>542,9568=>542,\n9569=>542,9570=>542,9571=>542,9572=>542,9573=>542,9574=>542,9575=>542,9576=>542,9577=>542,9578=>542,\n9579=>542,9580=>542,9581=>542,9582=>542,9583=>542,9584=>542,9585=>542,9586=>542,9587=>542,9588=>542,\n9589=>542,9590=>542,9591=>542,9592=>542,9593=>542,9594=>542,9595=>542,9596=>542,9597=>542,9598=>542,\n9599=>542,9600=>692,9601=>692,9602=>692,9603=>692,9604=>692,9605=>692,9606=>692,9607=>692,9608=>692,\n9609=>692,9610=>692,9611=>692,9612=>692,9613=>692,9614=>692,9615=>692,9616=>692,9617=>692,9618=>692,\n9619=>692,9620=>692,9621=>692,9622=>692,9623=>692,9624=>692,9625=>692,9626=>692,9627=>692,9628=>692,\n9629=>692,9630=>692,9631=>692,9632=>850,9633=>850,9634=>850,9635=>850,9636=>850,9637=>850,9638=>850,\n9639=>850,9640=>850,9641=>850,9642=>610,9643=>610,9644=>850,9645=>850,9646=>495,9647=>495,9648=>692,\n9649=>692,9650=>692,9651=>692,9652=>452,9653=>452,9654=>692,9655=>692,9656=>452,9657=>452,9658=>692,\n9659=>692,9660=>692,9661=>692,9662=>452,9663=>452,9664=>692,9665=>692,9666=>452,9667=>452,9668=>692,\n9669=>692,9670=>692,9671=>692,9672=>692,9673=>785,9674=>444,9675=>785,9676=>785,9677=>785,9678=>785,\n9679=>785,9680=>785,9681=>785,9682=>785,9683=>785,9684=>785,9685=>785,9686=>474,9687=>474,9688=>712,\n9689=>873,9690=>873,9691=>873,9692=>348,9693=>348,9694=>348,9695=>348,9696=>785,9697=>785,9698=>692,\n9699=>692,9700=>692,9701=>692,9702=>531,9703=>850,9704=>850,9705=>850,9706=>850,9707=>850,9708=>692,\n9709=>692,9710=>692,9711=>1007,9712=>850,9713=>850,9714=>850,9715=>850,9716=>785,9717=>785,9718=>785,\n9719=>785,9720=>692,9721=>692,9722=>692,9723=>747,9724=>747,9725=>659,9726=>659,9727=>692,9728=>807,\n9784=>807,9785=>807,9786=>807,9787=>807,9788=>807,9791=>552,9792=>658,9793=>658,9794=>807,9795=>807,\n9796=>807,9797=>807,9798=>807,9799=>807,9824=>807,9825=>807,9826=>807,9827=>807,9828=>807,9829=>807,\n9830=>807,9831=>807,9833=>424,9834=>574,9835=>807,9836=>807,9837=>424,9838=>321,9839=>435,10145=>754,\n10181=>351,10182=>351,10208=>444,10216=>351,10217=>351,10224=>754,10225=>754,10226=>754,10227=>754,10228=>930,\n10229=>1290,10230=>1290,10231=>1290,10232=>1290,10233=>1290,10234=>1290,10235=>1290,10236=>1290,10237=>1290,10238=>1290,\n10239=>1290,10240=>659,10241=>659,10242=>659,10243=>659,10244=>659,10245=>659,10246=>659,10247=>659,10248=>659,\n10249=>659,10250=>659,10251=>659,10252=>659,10253=>659,10254=>659,10255=>659,10256=>659,10257=>659,10258=>659,\n10259=>659,10260=>659,10261=>659,10262=>659,10263=>659,10264=>659,10265=>659,10266=>659,10267=>659,10268=>659,\n10269=>659,10270=>659,10271=>659,10272=>659,10273=>659,10274=>659,10275=>659,10276=>659,10277=>659,10278=>659,\n10279=>659,10280=>659,10281=>659,10282=>659,10283=>659,10284=>659,10285=>659,10286=>659,10287=>659,10288=>659,\n10289=>659,10290=>659,10291=>659,10292=>659,10293=>659,10294=>659,10295=>659,10296=>659,10297=>659,10298=>659,\n10299=>659,10300=>659,10301=>659,10302=>659,10303=>659,10304=>659,10305=>659,10306=>659,10307=>659,10308=>659,\n10309=>659,10310=>659,10311=>659,10312=>659,10313=>659,10314=>659,10315=>659,10316=>659,10317=>659,10318=>659,\n10319=>659,10320=>659,10321=>659,10322=>659,10323=>659,10324=>659,10325=>659,10326=>659,10327=>659,10328=>659,\n10329=>659,10330=>659,10331=>659,10332=>659,10333=>659,10334=>659,10335=>659,10336=>659,10337=>659,10338=>659,\n10339=>659,10340=>659,10341=>659,10342=>659,10343=>659,10344=>659,10345=>659,10346=>659,10347=>659,10348=>659,\n10349=>659,10350=>659,10351=>659,10352=>659,10353=>659,10354=>659,10355=>659,10356=>659,10357=>659,10358=>659,\n10359=>659,10360=>659,10361=>659,10362=>659,10363=>659,10364=>659,10365=>659,10366=>659,10367=>659,10368=>659,\n10369=>659,10370=>659,10371=>659,10372=>659,10373=>659,10374=>659,10375=>659,10376=>659,10377=>659,10378=>659,\n10379=>659,10380=>659,10381=>659,10382=>659,10383=>659,10384=>659,10385=>659,10386=>659,10387=>659,10388=>659,\n10389=>659,10390=>659,10391=>659,10392=>659,10393=>659,10394=>659,10395=>659,10396=>659,10397=>659,10398=>659,\n10399=>659,10400=>659,10401=>659,10402=>659,10403=>659,10404=>659,10405=>659,10406=>659,10407=>659,10408=>659,\n10409=>659,10410=>659,10411=>659,10412=>659,10413=>659,10414=>659,10415=>659,10416=>659,10417=>659,10418=>659,\n10419=>659,10420=>659,10421=>659,10422=>659,10423=>659,10424=>659,10425=>659,10426=>659,10427=>659,10428=>659,\n10429=>659,10430=>659,10431=>659,10432=>659,10433=>659,10434=>659,10435=>659,10436=>659,10437=>659,10438=>659,\n10439=>659,10440=>659,10441=>659,10442=>659,10443=>659,10444=>659,10445=>659,10446=>659,10447=>659,10448=>659,\n10449=>659,10450=>659,10451=>659,10452=>659,10453=>659,10454=>659,10455=>659,10456=>659,10457=>659,10458=>659,\n10459=>659,10460=>659,10461=>659,10462=>659,10463=>659,10464=>659,10465=>659,10466=>659,10467=>659,10468=>659,\n10469=>659,10470=>659,10471=>659,10472=>659,10473=>659,10474=>659,10475=>659,10476=>659,10477=>659,10478=>659,\n10479=>659,10480=>659,10481=>659,10482=>659,10483=>659,10484=>659,10485=>659,10486=>659,10487=>659,10488=>659,\n10489=>659,10490=>659,10491=>659,10492=>659,10493=>659,10494=>659,10495=>659,10496=>754,10497=>754,10498=>754,\n10499=>754,10500=>754,10501=>754,10502=>754,10503=>754,10504=>754,10505=>754,10506=>754,10507=>754,10508=>754,\n10509=>754,10510=>754,10511=>754,10512=>754,10513=>754,10514=>754,10515=>754,10516=>754,10517=>754,10518=>754,\n10519=>754,10520=>754,10521=>754,10522=>754,10523=>754,10524=>754,10525=>754,10526=>754,10527=>754,10528=>754,\n10529=>754,10530=>754,10531=>754,10532=>754,10533=>754,10534=>754,10535=>754,10536=>754,10537=>754,10538=>754,\n10539=>754,10540=>754,10541=>754,10542=>754,10543=>754,10544=>754,10545=>754,10546=>754,10547=>754,10548=>754,\n10549=>754,10550=>754,10551=>754,10552=>754,10553=>754,10554=>754,10555=>754,10556=>754,10557=>754,10558=>754,\n10559=>754,10560=>754,10561=>754,10562=>754,10563=>754,10564=>754,10565=>754,10566=>754,10567=>754,10568=>754,\n10569=>754,10570=>754,10571=>754,10572=>754,10573=>754,10574=>754,10575=>754,10576=>754,10577=>754,10578=>754,\n10579=>754,10580=>754,10581=>754,10582=>754,10583=>754,10584=>754,10585=>754,10586=>754,10587=>754,10588=>754,\n10589=>754,10590=>754,10591=>754,10592=>754,10593=>754,10594=>754,10595=>754,10596=>754,10597=>754,10598=>754,\n10599=>754,10600=>754,10601=>754,10602=>754,10603=>754,10604=>754,10605=>754,10606=>754,10607=>754,10608=>754,\n10609=>754,10610=>754,10611=>754,10612=>754,10613=>754,10614=>754,10615=>883,10616=>754,10617=>754,10618=>886,\n10619=>754,10620=>754,10621=>754,10622=>754,10623=>754,10731=>444,10764=>1361,10765=>469,10766=>469,10799=>754,\n11008=>754,11009=>754,11010=>754,11011=>754,11012=>754,11013=>754,11014=>754,11015=>754,11016=>754,11017=>754,\n11018=>754,11019=>754,11020=>754,11021=>754,11022=>754,11023=>754,11024=>754,11025=>754,11026=>850,11027=>850,\n11028=>850,11029=>850,11030=>692,11031=>692,11032=>692,11033=>692,11034=>850,11364=>677,11367=>785,11368=>580,\n11369=>672,11370=>545,11371=>625,11372=>474,11374=>921,11375=>650,11381=>666,11382=>478,11383=>630,11385=>451,\n11386=>542,11388=>237,11389=>409,11520=>695,11521=>571,11522=>569,11523=>592,11524=>568,11525=>866,11526=>680,\n11527=>864,11528=>555,11529=>581,11530=>866,11531=>568,11532=>581,11533=>866,11534=>580,11535=>779,11536=>865,\n11537=>580,11538=>580,11539=>863,11540=>851,11541=>777,11542=>580,11543=>581,11544=>580,11545=>584,11546=>619,\n11547=>571,11548=>883,11549=>613,11550=>608,11551=>766,11552=>861,11553=>569,11554=>580,11555=>582,11556=>674,\n11557=>822,11800=>482,11810=>351,11811=>351,11812=>351,11813=>351,11822=>482,42564=>616,42565=>461,42566=>355,\n42567=>353,42576=>994,42577=>845,42580=>1074,42581=>783,42582=>1025,42583=>787,42760=>444,42761=>444,42762=>444,\n42763=>444,42764=>444,42765=>444,42766=>444,42767=>444,42768=>444,42769=>444,42770=>444,42771=>444,42772=>444,\n42773=>444,42774=>444,42779=>332,42780=>332,42781=>228,42782=>228,42783=>228,42891=>361,42892=>247,62464=>598,\n62465=>607,62466=>651,62467=>861,62468=>607,62469=>602,62470=>661,62471=>896,62472=>607,62473=>607,62474=>1141,\n62475=>624,62476=>623,62477=>866,62478=>607,62479=>623,62480=>908,62481=>681,62482=>728,62483=>682,62484=>859,\n62485=>622,62486=>852,62487=>621,62488=>628,62489=>623,62490=>665,62491=>623,62492=>628,62493=>608,62494=>665,\n62495=>805,62496=>607,62497=>707,62498=>608,62499=>607,62500=>607,62501=>659,62502=>875,62504=>813,63172=>455,\n63173=>542,63174=>576,63175=>580,63176=>853,63185=>450,63188=>450,64256=>637,64257=>600,64258=>600,64259=>847,\n64260=>887,64261=>669,64262=>824,65024=>0,65025=>0,65026=>0,65027=>0,65028=>0,65029=>0,65030=>0,\n65031=>0,65032=>0,65033=>0,65034=>0,65035=>0,65036=>0,65037=>0,65038=>0,65039=>0,65529=>0,\n65530=>0,65531=>0,65532=>0,65533=>923);\n$enc='';\n$diff='';\n$file='dejavuserifcondensedi.z';\n$ctg='dejavuserifcondensedi.ctg.z';\n$originalsize=301244;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/dejavuserifi.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='DejaVuSerif-Italic';\n$desc=array('Ascent'=>928,'Descent'=>-236,'CapHeight'=>-65,'Flags'=>96,'FontBBox'=>'[-839 -347 1650 1227]','ItalicAngle'=>-11,'StemV'=>70,'MissingWidth'=>600);\n$up=-63;\n$ut=44;\n$dw=600;\n$cw=array(\n0=>600,32=>318,33=>402,34=>460,35=>838,36=>636,37=>950,38=>890,39=>275,40=>390,\n41=>390,42=>500,43=>838,44=>318,45=>338,46=>318,47=>337,48=>636,49=>636,50=>636,\n51=>636,52=>636,53=>636,54=>636,55=>636,56=>636,57=>636,58=>337,59=>337,60=>838,\n61=>838,62=>838,63=>536,64=>1000,65=>722,66=>735,67=>765,68=>802,69=>730,70=>694,\n71=>799,72=>872,73=>395,74=>401,75=>747,76=>664,77=>1024,78=>875,79=>820,80=>673,\n81=>820,82=>753,83=>685,84=>667,85=>843,86=>722,87=>1028,88=>712,89=>660,90=>695,\n91=>390,92=>337,93=>390,94=>838,95=>500,96=>500,97=>596,98=>640,99=>560,100=>640,\n101=>592,102=>370,103=>640,104=>644,105=>320,106=>310,107=>606,108=>320,109=>948,110=>644,\n111=>602,112=>640,113=>640,114=>478,115=>513,116=>402,117=>644,118=>565,119=>856,120=>564,\n121=>565,122=>527,123=>636,124=>337,125=>636,126=>838,8364=>636,8218=>318,402=>370,8222=>518,\n8230=>1000,8224=>500,8225=>500,710=>500,8240=>1342,352=>685,8249=>400,338=>1137,381=>695,8216=>318,\n8217=>318,8220=>511,8221=>511,8226=>590,8211=>500,8212=>1000,732=>500,8482=>1000,353=>513,8250=>400,\n339=>989,382=>527,376=>660,160=>318,161=>402,162=>636,163=>636,164=>636,165=>636,166=>337,\n167=>500,168=>500,169=>1000,170=>475,171=>612,172=>838,173=>338,174=>1000,175=>500,176=>500,\n177=>838,178=>401,179=>401,180=>500,181=>650,182=>636,183=>318,184=>500,185=>401,186=>470,\n187=>612,188=>969,189=>969,190=>969,191=>536,192=>722,193=>722,194=>722,195=>722,196=>722,\n197=>722,198=>1001,199=>765,200=>730,201=>730,202=>730,203=>730,204=>395,205=>395,206=>395,\n207=>395,208=>807,209=>875,210=>820,211=>820,212=>820,213=>820,214=>820,215=>838,216=>820,\n217=>843,218=>843,219=>843,220=>843,221=>660,222=>676,223=>668,224=>596,225=>596,226=>596,\n227=>596,228=>596,229=>596,230=>940,231=>560,232=>592,233=>592,234=>592,235=>592,236=>320,\n237=>320,238=>320,239=>320,240=>602,241=>644,242=>602,243=>602,244=>602,245=>602,246=>602,\n247=>838,248=>602,249=>644,250=>644,251=>644,252=>644,253=>565,254=>640,255=>565,256=>722,\n257=>596,258=>722,259=>596,260=>722,261=>596,262=>765,263=>560,264=>765,265=>560,266=>765,\n267=>560,268=>765,269=>560,270=>802,271=>640,272=>807,273=>640,274=>730,275=>592,276=>730,\n277=>592,278=>730,279=>592,280=>730,281=>592,282=>730,283=>592,284=>799,285=>640,286=>799,\n287=>640,288=>799,289=>640,290=>799,291=>640,292=>872,293=>644,294=>872,295=>644,296=>395,\n297=>320,298=>395,299=>320,300=>395,301=>320,302=>395,303=>320,304=>395,305=>320,306=>801,\n307=>533,308=>401,309=>310,310=>747,311=>606,312=>606,313=>664,314=>320,315=>664,316=>320,\n317=>664,318=>400,319=>671,320=>465,321=>669,322=>324,323=>875,324=>644,325=>875,326=>644,\n327=>875,328=>644,329=>866,330=>843,331=>644,332=>820,333=>602,334=>820,335=>602,336=>820,\n337=>602,340=>753,341=>478,342=>753,343=>478,344=>753,345=>478,346=>685,347=>513,348=>685,\n349=>513,350=>685,351=>513,354=>667,355=>402,356=>667,357=>402,358=>667,359=>402,360=>843,\n361=>644,362=>843,363=>644,364=>843,365=>644,366=>843,367=>644,368=>843,369=>644,370=>843,\n371=>644,372=>1028,373=>856,374=>660,375=>565,377=>695,378=>527,379=>695,380=>527,383=>370,\n384=>640,385=>735,386=>735,387=>640,388=>735,389=>640,390=>765,391=>765,392=>560,393=>807,\n394=>802,395=>735,396=>640,397=>602,398=>730,399=>820,400=>623,401=>694,403=>799,404=>712,\n405=>932,406=>395,407=>395,408=>747,409=>606,410=>320,411=>634,412=>948,413=>875,414=>644,\n415=>820,416=>820,417=>602,418=>1040,419=>807,420=>673,421=>640,422=>753,423=>685,424=>513,\n425=>707,426=>324,427=>402,428=>667,429=>402,430=>667,431=>843,432=>644,433=>829,434=>760,\n435=>738,436=>745,437=>695,438=>527,439=>564,440=>564,441=>564,443=>636,444=>687,445=>564,\n446=>536,448=>295,449=>492,450=>459,451=>295,452=>1497,453=>1329,454=>1167,455=>1065,456=>974,\n457=>630,458=>1276,459=>1185,460=>954,461=>722,462=>596,463=>395,464=>320,465=>820,466=>602,\n467=>843,468=>644,469=>843,470=>644,471=>843,472=>644,473=>843,474=>644,475=>843,476=>644,\n477=>592,478=>722,479=>596,480=>722,481=>596,482=>1001,483=>940,484=>848,485=>640,486=>799,\n487=>640,488=>747,489=>606,490=>820,491=>602,492=>820,493=>602,494=>564,495=>564,496=>320,\n497=>1497,498=>1329,499=>1167,500=>799,501=>640,502=>1154,504=>875,505=>644,506=>722,507=>596,\n508=>1001,509=>940,510=>820,511=>602,512=>722,513=>596,514=>722,515=>596,516=>730,517=>592,\n518=>730,519=>592,520=>395,521=>320,522=>395,523=>320,524=>820,525=>602,526=>820,527=>602,\n528=>753,529=>478,530=>753,531=>478,532=>843,533=>644,534=>843,535=>644,536=>685,537=>513,\n538=>667,539=>402,540=>627,541=>521,542=>872,543=>644,544=>843,545=>814,548=>695,549=>527,\n550=>722,551=>596,552=>730,553=>592,554=>820,555=>602,556=>820,557=>602,558=>820,559=>602,\n560=>820,561=>602,562=>660,563=>565,564=>500,565=>832,566=>494,567=>310,568=>960,569=>960,\n570=>722,571=>765,572=>560,573=>664,574=>667,575=>513,576=>527,577=>583,578=>464,581=>722,\n592=>596,593=>640,594=>675,595=>640,596=>560,597=>560,598=>647,599=>683,600=>592,601=>592,\n602=>843,603=>537,604=>509,605=>773,606=>613,607=>315,608=>683,609=>640,610=>544,611=>712,\n612=>564,613=>644,614=>644,615=>644,616=>320,617=>392,618=>320,619=>380,620=>454,621=>363,\n622=>704,623=>948,624=>948,625=>948,626=>644,627=>694,628=>646,629=>602,630=>790,631=>647,\n632=>602,633=>501,634=>501,635=>551,636=>478,637=>478,638=>453,639=>453,640=>594,641=>594,\n642=>513,643=>271,644=>370,645=>487,646=>324,647=>402,648=>402,649=>644,650=>620,651=>608,\n652=>565,653=>856,654=>565,655=>655,656=>597,657=>560,658=>564,659=>560,660=>536,661=>536,\n662=>536,663=>513,664=>820,665=>563,666=>613,667=>654,668=>667,669=>366,670=>606,671=>646,\n672=>683,673=>536,674=>536,675=>996,676=>1033,677=>998,678=>809,679=>598,680=>782,681=>894,\n682=>646,683=>676,684=>598,685=>443,686=>781,687=>767,688=>433,689=>430,690=>264,691=>347,\n692=>347,693=>430,694=>392,695=>539,696=>355,697=>278,699=>318,700=>318,701=>318,702=>307,\n703=>307,704=>280,705=>281,711=>500,712=>282,713=>500,716=>282,720=>337,721=>337,722=>307,\n723=>307,726=>392,728=>500,729=>500,730=>500,731=>500,733=>500,734=>417,736=>448,737=>243,\n738=>337,739=>355,740=>281,741=>493,742=>493,743=>493,744=>493,745=>493,750=>484,768=>0,\n769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,\n779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,\n789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,\n799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,\n809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,\n819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,\n829=>0,830=>0,831=>0,835=>0,847=>0,856=>0,865=>0,880=>740,881=>531,884=>278,\n885=>278,890=>500,891=>560,892=>560,893=>560,894=>337,900=>500,901=>500,902=>722,903=>318,\n904=>900,905=>1039,906=>562,908=>835,910=>897,911=>853,912=>392,913=>722,914=>735,915=>694,\n916=>722,917=>730,918=>695,919=>872,920=>820,921=>395,922=>747,923=>722,924=>1024,925=>875,\n926=>704,927=>820,928=>872,929=>673,931=>707,932=>667,933=>660,934=>820,935=>712,936=>877,\n937=>829,938=>395,939=>660,940=>675,941=>537,942=>599,943=>392,944=>608,945=>675,946=>578,\n947=>598,948=>602,949=>537,950=>542,951=>599,952=>602,953=>392,954=>656,955=>634,956=>650,\n957=>608,958=>551,959=>602,960=>657,961=>588,962=>560,963=>683,964=>553,965=>608,966=>700,\n967=>606,968=>784,969=>815,970=>392,971=>608,972=>602,973=>608,974=>815,976=>583,977=>715,\n978=>687,979=>874,980=>687,981=>682,982=>815,983=>624,984=>820,985=>602,986=>765,987=>560,\n988=>694,989=>463,990=>590,991=>660,992=>782,993=>577,1008=>624,1009=>588,1010=>560,1011=>310,\n1012=>820,1013=>560,1014=>560,1015=>676,1016=>640,1017=>765,1018=>1024,1019=>708,1020=>588,1021=>765,\n1022=>765,1023=>765,1024=>730,1025=>730,1026=>799,1027=>662,1028=>765,1029=>685,1030=>395,1031=>395,\n1032=>401,1033=>1084,1034=>1118,1035=>872,1036=>774,1037=>872,1038=>723,1039=>872,1040=>757,1041=>735,\n1042=>735,1043=>662,1044=>813,1045=>730,1046=>1124,1047=>623,1048=>872,1049=>872,1050=>774,1051=>834,\n1052=>1024,1053=>872,1054=>820,1055=>872,1056=>673,1057=>765,1058=>667,1059=>723,1060=>830,1061=>712,\n1062=>872,1063=>773,1064=>1141,1065=>1141,1066=>794,1067=>984,1068=>674,1069=>765,1070=>1193,1071=>808,\n1072=>596,1073=>610,1074=>582,1075=>505,1076=>634,1077=>592,1078=>1137,1079=>545,1080=>644,1081=>644,\n1082=>597,1083=>637,1084=>829,1085=>659,1086=>602,1087=>644,1088=>640,1089=>560,1090=>948,1091=>580,\n1092=>783,1093=>564,1094=>698,1095=>622,1096=>947,1097=>1001,1098=>667,1099=>814,1100=>544,1101=>560,\n1102=>880,1103=>662,1104=>592,1105=>592,1106=>624,1107=>505,1108=>560,1109=>513,1110=>320,1111=>320,\n1112=>310,1113=>859,1114=>878,1115=>644,1116=>597,1117=>644,1118=>580,1119=>644,1122=>762,1123=>882,\n1124=>1129,1125=>834,1130=>1124,1131=>920,1136=>944,1137=>902,1138=>820,1139=>552,1140=>859,1141=>678,\n1164=>707,1165=>544,1168=>672,1169=>529,1170=>662,1171=>505,1172=>730,1173=>614,1174=>1124,1175=>1137,\n1176=>623,1177=>545,1178=>774,1179=>604,1182=>774,1183=>597,1184=>892,1185=>669,1186=>872,1187=>712,\n1188=>1139,1189=>857,1190=>1206,1191=>943,1194=>765,1195=>560,1196=>667,1197=>1013,1198=>660,1199=>571,\n1200=>660,1201=>571,1202=>712,1203=>629,1204=>936,1205=>732,1206=>749,1207=>677,1210=>749,1211=>644,\n1216=>395,1217=>1124,1218=>1137,1219=>747,1220=>606,1223=>872,1224=>667,1227=>749,1228=>667,1231=>320,\n1232=>757,1233=>596,1234=>757,1235=>596,1236=>1001,1237=>940,1238=>730,1239=>592,1240=>820,1241=>592,\n1242=>820,1243=>592,1244=>1124,1245=>1137,1246=>623,1247=>545,1248=>564,1249=>564,1250=>872,1251=>644,\n1252=>872,1253=>644,1254=>820,1255=>602,1256=>820,1257=>602,1258=>820,1259=>602,1260=>765,1261=>560,\n1262=>723,1263=>580,1264=>723,1265=>580,1266=>723,1267=>580,1268=>773,1269=>622,1270=>662,1271=>505,\n1272=>984,1273=>814,1296=>623,1297=>545,1298=>834,1299=>637,1300=>1199,1301=>939,1306=>820,1307=>640,\n1308=>1028,1309=>856,4256=>732,4257=>860,4258=>837,4259=>869,4260=>743,4261=>991,4262=>925,4263=>1111,\n4264=>576,4265=>760,4266=>972,4267=>951,4268=>753,4269=>1084,4270=>906,4271=>838,4272=>1049,4273=>743,\n4274=>679,4275=>1025,4276=>946,4277=>1029,4278=>741,4279=>743,4280=>742,4281=>743,4282=>889,4283=>946,\n4284=>724,4285=>765,4286=>743,4287=>968,4288=>1010,4289=>712,4290=>874,4291=>744,4292=>847,4293=>960,\n4304=>550,4305=>581,4306=>599,4307=>843,4308=>571,4309=>567,4310=>620,4311=>871,4312=>569,4313=>556,\n4314=>1076,4315=>596,4316=>596,4317=>835,4318=>580,4319=>590,4320=>833,4321=>607,4322=>758,4323=>701,\n4324=>825,4325=>595,4326=>868,4327=>578,4328=>604,4329=>596,4330=>685,4331=>597,4332=>557,4333=>585,\n4334=>625,4335=>693,4336=>582,4337=>613,4338=>581,4339=>582,4340=>580,4341=>659,4342=>896,4343=>636,\n4344=>592,4345=>628,4346=>581,4347=>456,4348=>373,7426=>940,7432=>509,7433=>320,7444=>989,7446=>602,\n7447=>602,7453=>737,7454=>948,7455=>948,7468=>455,7469=>630,7470=>463,7472=>505,7473=>459,7474=>459,\n7475=>503,7476=>549,7477=>249,7478=>252,7479=>470,7480=>418,7481=>645,7482=>551,7483=>551,7484=>516,\n7486=>424,7487=>474,7488=>420,7489=>531,7490=>647,7491=>386,7492=>386,7493=>400,7494=>618,7495=>400,\n7496=>400,7497=>387,7498=>387,7499=>428,7500=>340,7501=>400,7502=>175,7503=>365,7504=>613,7505=>399,\n7506=>385,7507=>346,7508=>385,7509=>385,7510=>400,7511=>247,7512=>399,7513=>464,7514=>613,7515=>373,\n7522=>201,7523=>347,7524=>399,7525=>373,7543=>640,7544=>549,7547=>372,7557=>320,7579=>488,7580=>353,\n7581=>353,7582=>473,7583=>428,7584=>233,7585=>316,7586=>488,7587=>399,7588=>201,7589=>201,7590=>201,\n7591=>201,7592=>318,7593=>263,7594=>263,7595=>455,7596=>613,7597=>613,7598=>495,7599=>492,7600=>487,\n7601=>385,7602=>473,7603=>416,7604=>299,7605=>334,7606=>399,7607=>477,7609=>464,7610=>355,7611=>332,\n7612=>418,7613=>418,7614=>452,7615=>473,7620=>0,7621=>0,7622=>0,7623=>0,7624=>0,7625=>0,\n7680=>722,7681=>596,7682=>735,7683=>640,7684=>735,7685=>640,7686=>735,7687=>640,7688=>765,7689=>560,\n7690=>802,7691=>640,7692=>802,7693=>640,7694=>802,7695=>640,7696=>802,7697=>640,7698=>802,7699=>640,\n7700=>730,7701=>592,7702=>730,7703=>592,7704=>730,7705=>592,7706=>730,7707=>592,7708=>730,7709=>592,\n7710=>694,7711=>370,7712=>799,7713=>640,7714=>872,7715=>644,7716=>872,7717=>644,7718=>872,7719=>644,\n7720=>872,7721=>644,7722=>872,7723=>644,7724=>395,7725=>320,7728=>747,7729=>606,7730=>747,7731=>606,\n7732=>747,7733=>606,7734=>664,7735=>320,7736=>664,7737=>320,7738=>664,7739=>320,7740=>664,7741=>320,\n7742=>1024,7743=>948,7744=>1024,7745=>948,7746=>1024,7747=>953,7748=>875,7749=>644,7750=>875,7751=>644,\n7752=>875,7753=>644,7754=>875,7755=>644,7756=>820,7757=>602,7760=>820,7761=>602,7762=>820,7763=>602,\n7764=>673,7765=>640,7766=>673,7767=>640,7768=>753,7769=>478,7770=>753,7771=>478,7772=>753,7773=>478,\n7774=>753,7775=>478,7776=>685,7777=>513,7778=>685,7779=>513,7784=>685,7785=>513,7786=>667,7787=>402,\n7788=>667,7789=>402,7790=>667,7791=>402,7792=>667,7793=>402,7794=>843,7795=>644,7796=>843,7797=>644,\n7798=>843,7799=>644,7800=>843,7801=>644,7802=>843,7803=>644,7804=>722,7805=>565,7806=>722,7807=>565,\n7808=>1028,7809=>856,7810=>1028,7811=>856,7812=>1028,7813=>856,7814=>1028,7815=>856,7816=>1028,7817=>856,\n7818=>712,7819=>564,7820=>712,7821=>564,7822=>660,7823=>565,7824=>695,7825=>527,7826=>695,7827=>527,\n7828=>695,7829=>527,7830=>644,7831=>402,7832=>856,7833=>565,7834=>903,7835=>370,7838=>829,7839=>602,\n7840=>722,7841=>596,7842=>722,7843=>596,7852=>722,7853=>596,7854=>722,7855=>596,7856=>722,7857=>596,\n7858=>722,7859=>596,7860=>722,7861=>596,7862=>722,7863=>596,7864=>730,7865=>592,7866=>730,7867=>592,\n7868=>730,7869=>592,7878=>730,7879=>592,7880=>395,7881=>320,7882=>395,7883=>320,7884=>820,7885=>602,\n7886=>820,7887=>602,7896=>820,7897=>602,7908=>843,7909=>644,7910=>843,7911=>644,7922=>660,7923=>565,\n7924=>660,7925=>565,7926=>660,7927=>565,7928=>660,7929=>565,7936=>675,7937=>675,7938=>675,7939=>675,\n7940=>675,7941=>675,7942=>675,7943=>675,7944=>722,7945=>722,7946=>869,7947=>869,7948=>734,7949=>763,\n7950=>722,7951=>722,7952=>537,7953=>537,7954=>537,7955=>537,7956=>537,7957=>537,7960=>853,7961=>841,\n7962=>1067,7963=>1077,7964=>1008,7965=>1035,7968=>599,7969=>599,7970=>599,7971=>599,7972=>599,7973=>599,\n7974=>599,7975=>599,7976=>998,7977=>992,7978=>1212,7979=>1224,7980=>1159,7981=>1183,7982=>1098,7983=>1095,\n7984=>392,7985=>392,7986=>392,7987=>392,7988=>392,7989=>392,7990=>392,7991=>392,7992=>521,7993=>512,\n7994=>735,7995=>738,7996=>679,7997=>706,7998=>624,7999=>615,8000=>602,8001=>602,8002=>602,8003=>602,\n8004=>602,8005=>602,8008=>820,8009=>859,8010=>1120,8011=>1127,8012=>937,8013=>964,8016=>608,8017=>608,\n8018=>608,8019=>608,8020=>608,8021=>608,8022=>608,8023=>608,8025=>851,8027=>1079,8029=>1044,8031=>953,\n8032=>815,8033=>815,8034=>815,8035=>815,8036=>815,8037=>815,8038=>815,8039=>815,8040=>829,8041=>870,\n8042=>1131,8043=>1137,8044=>946,8045=>976,8046=>938,8047=>970,8048=>675,8049=>675,8050=>537,8051=>537,\n8052=>599,8053=>599,8054=>392,8055=>392,8056=>602,8057=>602,8058=>608,8059=>608,8060=>815,8061=>815,\n8064=>675,8065=>675,8066=>675,8067=>675,8068=>675,8069=>675,8070=>675,8071=>675,8072=>722,8073=>722,\n8074=>869,8075=>869,8076=>734,8077=>763,8078=>722,8079=>722,8080=>599,8081=>599,8082=>599,8083=>599,\n8084=>599,8085=>599,8086=>599,8087=>599,8088=>998,8089=>992,8090=>1212,8091=>1224,8092=>1159,8093=>1183,\n8094=>1098,8095=>1095,8096=>815,8097=>815,8098=>815,8099=>815,8100=>815,8101=>815,8102=>815,8103=>815,\n8104=>829,8105=>870,8106=>1131,8107=>1137,8108=>946,8109=>976,8110=>938,8111=>970,8112=>675,8113=>675,\n8114=>675,8115=>675,8116=>675,8118=>675,8119=>675,8120=>722,8121=>722,8122=>722,8123=>722,8124=>722,\n8125=>500,8126=>500,8127=>500,8128=>500,8129=>500,8130=>599,8131=>599,8132=>599,8134=>599,8135=>599,\n8136=>912,8137=>900,8138=>1063,8139=>1039,8140=>872,8141=>500,8142=>500,8143=>500,8144=>392,8145=>392,\n8146=>392,8147=>392,8150=>392,8151=>392,8152=>395,8153=>395,8154=>588,8155=>562,8157=>500,8158=>500,\n8159=>500,8160=>608,8161=>608,8162=>608,8163=>608,8164=>588,8165=>588,8166=>608,8167=>608,8168=>660,\n8169=>660,8170=>921,8171=>897,8172=>790,8173=>500,8174=>500,8175=>500,8178=>815,8179=>815,8180=>815,\n8182=>815,8183=>815,8184=>961,8185=>835,8186=>984,8187=>853,8188=>829,8189=>500,8190=>500,8192=>500,\n8193=>1000,8194=>500,8195=>1000,8196=>330,8197=>250,8198=>167,8199=>636,8200=>318,8201=>200,8202=>100,\n8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>338,8209=>338,8210=>636,8213=>1000,8214=>500,\n8215=>500,8219=>318,8223=>511,8227=>590,8228=>334,8229=>667,8234=>0,8235=>0,8236=>0,8237=>0,\n8238=>0,8239=>200,8241=>1734,8242=>227,8243=>374,8244=>520,8245=>227,8246=>374,8247=>520,8248=>339,\n8252=>527,8253=>536,8254=>500,8258=>1000,8260=>167,8261=>390,8262=>390,8263=>976,8264=>753,8265=>753,\n8267=>636,8268=>500,8269=>500,8270=>500,8271=>337,8273=>500,8274=>450,8275=>1000,8279=>663,8287=>222,\n8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8298=>0,8299=>0,8300=>0,8301=>0,8302=>0,\n8303=>0,8304=>401,8305=>201,8308=>401,8309=>401,8310=>401,8311=>401,8312=>401,8313=>401,8314=>528,\n8315=>528,8316=>528,8317=>246,8318=>246,8319=>405,8320=>401,8321=>401,8322=>401,8323=>401,8324=>401,\n8325=>401,8326=>401,8327=>401,8328=>401,8329=>401,8330=>528,8331=>528,8332=>528,8333=>246,8334=>246,\n8336=>386,8337=>387,8338=>385,8339=>355,8340=>387,8358=>660,8367=>1057,8369=>706,8372=>780,8373=>636,\n8451=>1119,8457=>1047,8462=>644,8463=>644,8470=>946,8486=>829,8487=>829,8490=>747,8491=>722,8513=>775,\n8514=>557,8515=>557,8516=>611,8523=>890,8531=>969,8532=>969,8533=>969,8534=>969,8535=>969,8536=>969,\n8537=>969,8538=>969,8539=>969,8540=>969,8541=>969,8542=>969,8543=>568,8544=>395,8545=>590,8546=>786,\n8547=>966,8548=>722,8549=>981,8550=>1176,8551=>1372,8552=>932,8553=>712,8554=>932,8555=>1127,8556=>664,\n8557=>765,8558=>802,8559=>1024,8560=>320,8561=>640,8562=>959,8563=>885,8564=>565,8565=>885,8566=>1205,\n8567=>1524,8568=>884,8569=>564,8570=>884,8571=>1204,8572=>320,8573=>560,8574=>640,8575=>948,8576=>1206,\n8577=>802,8578=>1206,8579=>765,8580=>560,8592=>838,8593=>838,8594=>838,8595=>838,8596=>838,8597=>838,\n8598=>838,8599=>838,8600=>838,8601=>838,8602=>838,8603=>838,8604=>838,8605=>838,8606=>838,8607=>838,\n8608=>838,8609=>838,8610=>838,8611=>838,8612=>838,8613=>838,8614=>838,8615=>838,8616=>838,8617=>838,\n8618=>838,8619=>838,8620=>838,8621=>838,8622=>838,8623=>838,8624=>838,8625=>838,8626=>838,8627=>838,\n8628=>838,8629=>838,8630=>838,8631=>838,8632=>838,8633=>838,8634=>838,8635=>838,8636=>838,8637=>838,\n8638=>838,8639=>838,8640=>838,8641=>838,8642=>838,8643=>838,8644=>838,8645=>838,8646=>838,8647=>838,\n8648=>838,8649=>838,8650=>838,8651=>838,8652=>838,8653=>838,8654=>838,8655=>838,8656=>838,8657=>838,\n8658=>838,8659=>838,8660=>838,8661=>838,8662=>838,8663=>838,8664=>838,8665=>838,8666=>838,8667=>838,\n8668=>838,8669=>838,8670=>838,8671=>838,8672=>838,8673=>838,8674=>838,8675=>838,8676=>838,8677=>838,\n8678=>838,8679=>838,8680=>838,8681=>838,8682=>838,8683=>838,8684=>838,8685=>838,8686=>838,8687=>838,\n8688=>838,8689=>838,8690=>838,8691=>838,8692=>838,8693=>838,8694=>838,8695=>838,8696=>838,8697=>838,\n8698=>838,8699=>838,8700=>838,8701=>838,8702=>838,8703=>838,8704=>604,8706=>517,8707=>542,8708=>542,\n8710=>698,8711=>698,8712=>740,8713=>740,8715=>740,8716=>740,8719=>796,8720=>796,8721=>714,8722=>838,\n8723=>838,8724=>838,8725=>337,8727=>680,8728=>490,8729=>490,8730=>637,8731=>637,8732=>637,8733=>677,\n8734=>833,8735=>838,8736=>838,8739=>291,8740=>479,8741=>462,8742=>634,8743=>732,8744=>732,8745=>838,\n8746=>838,8747=>521,8748=>852,8749=>1182,8760=>838,8761=>838,8762=>838,8763=>838,8764=>838,8765=>838,\n8770=>838,8771=>838,8776=>838,8784=>838,8785=>838,8786=>838,8787=>838,8788=>1033,8789=>1033,8800=>838,\n8801=>838,8804=>838,8805=>838,8834=>838,8835=>838,8836=>838,8837=>838,8838=>838,8839=>838,8844=>838,\n8845=>838,8846=>838,8847=>846,8848=>846,8849=>846,8850=>846,8851=>838,8852=>838,8853=>838,8854=>838,\n8855=>838,8856=>838,8857=>838,8858=>838,8859=>838,8860=>838,8861=>838,8862=>838,8863=>838,8864=>838,\n8865=>838,8866=>860,8867=>860,8868=>940,8869=>940,8870=>567,8871=>567,8872=>860,8873=>860,8874=>860,\n8875=>1031,8876=>860,8877=>860,8878=>860,8879=>1031,8901=>342,8962=>764,8968=>390,8969=>390,8970=>390,\n8971=>390,8976=>838,8977=>513,8984=>1000,8985=>838,8992=>521,8993=>521,8997=>1000,9000=>1443,9085=>919,\n9134=>521,9167=>945,9251=>764,9472=>602,9473=>602,9474=>602,9475=>602,9476=>602,9477=>602,9478=>602,\n9479=>602,9480=>602,9481=>602,9482=>602,9483=>602,9484=>602,9485=>602,9486=>602,9487=>602,9488=>602,\n9489=>602,9490=>602,9491=>602,9492=>602,9493=>602,9494=>602,9495=>602,9496=>602,9497=>602,9498=>602,\n9499=>602,9500=>602,9501=>602,9502=>602,9503=>602,9504=>602,9505=>602,9506=>602,9507=>602,9508=>602,\n9509=>602,9510=>602,9511=>602,9512=>602,9513=>602,9514=>602,9515=>602,9516=>602,9517=>602,9518=>602,\n9519=>602,9520=>602,9521=>602,9522=>602,9523=>602,9524=>602,9525=>602,9526=>602,9527=>602,9528=>602,\n9529=>602,9530=>602,9531=>602,9532=>602,9533=>602,9534=>602,9535=>602,9536=>602,9537=>602,9538=>602,\n9539=>602,9540=>602,9541=>602,9542=>602,9543=>602,9544=>602,9545=>602,9546=>602,9547=>602,9548=>602,\n9549=>602,9550=>602,9551=>602,9552=>602,9553=>602,9554=>602,9555=>602,9556=>602,9557=>602,9558=>602,\n9559=>602,9560=>602,9561=>602,9562=>602,9563=>602,9564=>602,9565=>602,9566=>602,9567=>602,9568=>602,\n9569=>602,9570=>602,9571=>602,9572=>602,9573=>602,9574=>602,9575=>602,9576=>602,9577=>602,9578=>602,\n9579=>602,9580=>602,9581=>602,9582=>602,9583=>602,9584=>602,9585=>602,9586=>602,9587=>602,9588=>602,\n9589=>602,9590=>602,9591=>602,9592=>602,9593=>602,9594=>602,9595=>602,9596=>602,9597=>602,9598=>602,\n9599=>602,9600=>769,9601=>769,9602=>769,9603=>769,9604=>769,9605=>769,9606=>769,9607=>769,9608=>769,\n9609=>769,9610=>769,9611=>769,9612=>769,9613=>769,9614=>769,9615=>769,9616=>769,9617=>769,9618=>769,\n9619=>769,9620=>769,9621=>769,9622=>769,9623=>769,9624=>769,9625=>769,9626=>769,9627=>769,9628=>769,\n9629=>769,9630=>769,9631=>769,9632=>945,9633=>945,9634=>945,9635=>945,9636=>945,9637=>945,9638=>945,\n9639=>945,9640=>945,9641=>945,9642=>678,9643=>678,9644=>945,9645=>945,9646=>550,9647=>550,9648=>769,\n9649=>769,9650=>769,9651=>769,9652=>502,9653=>502,9654=>769,9655=>769,9656=>502,9657=>502,9658=>769,\n9659=>769,9660=>769,9661=>769,9662=>502,9663=>502,9664=>769,9665=>769,9666=>502,9667=>502,9668=>769,\n9669=>769,9670=>769,9671=>769,9672=>769,9673=>873,9674=>494,9675=>873,9676=>873,9677=>873,9678=>873,\n9679=>873,9680=>873,9681=>873,9682=>873,9683=>873,9684=>873,9685=>873,9686=>527,9687=>527,9688=>791,\n9689=>970,9690=>970,9691=>970,9692=>387,9693=>387,9694=>387,9695=>387,9696=>873,9697=>873,9698=>769,\n9699=>769,9700=>769,9701=>769,9702=>590,9703=>945,9704=>945,9705=>945,9706=>945,9707=>945,9708=>769,\n9709=>769,9710=>769,9711=>1119,9712=>945,9713=>945,9714=>945,9715=>945,9716=>873,9717=>873,9718=>873,\n9719=>873,9720=>769,9721=>769,9722=>769,9723=>830,9724=>830,9725=>732,9726=>732,9727=>769,9728=>896,\n9784=>896,9785=>896,9786=>896,9787=>896,9788=>896,9791=>614,9792=>731,9793=>731,9794=>896,9795=>896,\n9796=>896,9797=>896,9798=>896,9799=>896,9824=>896,9825=>896,9826=>896,9827=>896,9828=>896,9829=>896,\n9830=>896,9831=>896,9833=>472,9834=>638,9835=>896,9836=>896,9837=>472,9838=>357,9839=>484,10145=>838,\n10181=>390,10182=>390,10208=>494,10216=>390,10217=>390,10224=>838,10225=>838,10226=>838,10227=>838,10228=>1033,\n10229=>1434,10230=>1434,10231=>1434,10232=>1434,10233=>1434,10234=>1434,10235=>1434,10236=>1434,10237=>1434,10238=>1434,\n10239=>1434,10240=>732,10241=>732,10242=>732,10243=>732,10244=>732,10245=>732,10246=>732,10247=>732,10248=>732,\n10249=>732,10250=>732,10251=>732,10252=>732,10253=>732,10254=>732,10255=>732,10256=>732,10257=>732,10258=>732,\n10259=>732,10260=>732,10261=>732,10262=>732,10263=>732,10264=>732,10265=>732,10266=>732,10267=>732,10268=>732,\n10269=>732,10270=>732,10271=>732,10272=>732,10273=>732,10274=>732,10275=>732,10276=>732,10277=>732,10278=>732,\n10279=>732,10280=>732,10281=>732,10282=>732,10283=>732,10284=>732,10285=>732,10286=>732,10287=>732,10288=>732,\n10289=>732,10290=>732,10291=>732,10292=>732,10293=>732,10294=>732,10295=>732,10296=>732,10297=>732,10298=>732,\n10299=>732,10300=>732,10301=>732,10302=>732,10303=>732,10304=>732,10305=>732,10306=>732,10307=>732,10308=>732,\n10309=>732,10310=>732,10311=>732,10312=>732,10313=>732,10314=>732,10315=>732,10316=>732,10317=>732,10318=>732,\n10319=>732,10320=>732,10321=>732,10322=>732,10323=>732,10324=>732,10325=>732,10326=>732,10327=>732,10328=>732,\n10329=>732,10330=>732,10331=>732,10332=>732,10333=>732,10334=>732,10335=>732,10336=>732,10337=>732,10338=>732,\n10339=>732,10340=>732,10341=>732,10342=>732,10343=>732,10344=>732,10345=>732,10346=>732,10347=>732,10348=>732,\n10349=>732,10350=>732,10351=>732,10352=>732,10353=>732,10354=>732,10355=>732,10356=>732,10357=>732,10358=>732,\n10359=>732,10360=>732,10361=>732,10362=>732,10363=>732,10364=>732,10365=>732,10366=>732,10367=>732,10368=>732,\n10369=>732,10370=>732,10371=>732,10372=>732,10373=>732,10374=>732,10375=>732,10376=>732,10377=>732,10378=>732,\n10379=>732,10380=>732,10381=>732,10382=>732,10383=>732,10384=>732,10385=>732,10386=>732,10387=>732,10388=>732,\n10389=>732,10390=>732,10391=>732,10392=>732,10393=>732,10394=>732,10395=>732,10396=>732,10397=>732,10398=>732,\n10399=>732,10400=>732,10401=>732,10402=>732,10403=>732,10404=>732,10405=>732,10406=>732,10407=>732,10408=>732,\n10409=>732,10410=>732,10411=>732,10412=>732,10413=>732,10414=>732,10415=>732,10416=>732,10417=>732,10418=>732,\n10419=>732,10420=>732,10421=>732,10422=>732,10423=>732,10424=>732,10425=>732,10426=>732,10427=>732,10428=>732,\n10429=>732,10430=>732,10431=>732,10432=>732,10433=>732,10434=>732,10435=>732,10436=>732,10437=>732,10438=>732,\n10439=>732,10440=>732,10441=>732,10442=>732,10443=>732,10444=>732,10445=>732,10446=>732,10447=>732,10448=>732,\n10449=>732,10450=>732,10451=>732,10452=>732,10453=>732,10454=>732,10455=>732,10456=>732,10457=>732,10458=>732,\n10459=>732,10460=>732,10461=>732,10462=>732,10463=>732,10464=>732,10465=>732,10466=>732,10467=>732,10468=>732,\n10469=>732,10470=>732,10471=>732,10472=>732,10473=>732,10474=>732,10475=>732,10476=>732,10477=>732,10478=>732,\n10479=>732,10480=>732,10481=>732,10482=>732,10483=>732,10484=>732,10485=>732,10486=>732,10487=>732,10488=>732,\n10489=>732,10490=>732,10491=>732,10492=>732,10493=>732,10494=>732,10495=>732,10496=>838,10497=>838,10498=>838,\n10499=>838,10500=>838,10501=>838,10502=>838,10503=>838,10504=>838,10505=>838,10506=>838,10507=>838,10508=>838,\n10509=>838,10510=>838,10511=>838,10512=>838,10513=>838,10514=>838,10515=>838,10516=>838,10517=>838,10518=>838,\n10519=>838,10520=>838,10521=>838,10522=>838,10523=>838,10524=>838,10525=>838,10526=>838,10527=>838,10528=>838,\n10529=>838,10530=>838,10531=>838,10532=>838,10533=>838,10534=>838,10535=>838,10536=>838,10537=>838,10538=>838,\n10539=>838,10540=>838,10541=>838,10542=>838,10543=>838,10544=>838,10545=>838,10546=>838,10547=>838,10548=>838,\n10549=>838,10550=>838,10551=>838,10552=>838,10553=>838,10554=>838,10555=>838,10556=>838,10557=>838,10558=>838,\n10559=>838,10560=>838,10561=>838,10562=>838,10563=>838,10564=>838,10565=>838,10566=>838,10567=>838,10568=>838,\n10569=>838,10570=>838,10571=>838,10572=>838,10573=>838,10574=>838,10575=>838,10576=>838,10577=>838,10578=>838,\n10579=>838,10580=>838,10581=>838,10582=>838,10583=>838,10584=>838,10585=>838,10586=>838,10587=>838,10588=>838,\n10589=>838,10590=>838,10591=>838,10592=>838,10593=>838,10594=>838,10595=>838,10596=>838,10597=>838,10598=>838,\n10599=>838,10600=>838,10601=>838,10602=>838,10603=>838,10604=>838,10605=>838,10606=>838,10607=>838,10608=>838,\n10609=>838,10610=>838,10611=>838,10612=>838,10613=>838,10614=>838,10615=>981,10616=>838,10617=>838,10618=>984,\n10619=>838,10620=>838,10621=>838,10622=>838,10623=>838,10731=>494,10764=>1513,10765=>521,10766=>521,10799=>838,\n11008=>838,11009=>838,11010=>838,11011=>838,11012=>838,11013=>838,11014=>838,11015=>838,11016=>838,11017=>838,\n11018=>838,11019=>838,11020=>838,11021=>838,11022=>838,11023=>838,11024=>838,11025=>838,11026=>945,11027=>945,\n11028=>945,11029=>945,11030=>769,11031=>769,11032=>769,11033=>769,11034=>945,11364=>753,11367=>872,11368=>644,\n11369=>747,11370=>606,11371=>695,11372=>527,11374=>1024,11375=>722,11381=>740,11382=>531,11383=>700,11385=>501,\n11386=>602,11388=>264,11389=>455,11520=>773,11521=>635,11522=>633,11523=>658,11524=>631,11525=>962,11526=>756,\n11527=>960,11528=>617,11529=>646,11530=>962,11531=>632,11532=>646,11533=>962,11534=>645,11535=>866,11536=>961,\n11537=>645,11538=>645,11539=>959,11540=>945,11541=>863,11542=>644,11543=>646,11544=>645,11545=>649,11546=>688,\n11547=>634,11548=>982,11549=>681,11550=>676,11551=>852,11552=>957,11553=>632,11554=>645,11555=>646,11556=>749,\n11557=>914,11800=>536,11810=>390,11811=>390,11812=>390,11813=>390,11822=>536,42564=>685,42565=>513,42566=>395,\n42567=>392,42576=>1104,42577=>939,42580=>1193,42581=>871,42582=>1140,42583=>875,42760=>493,42761=>493,42762=>493,\n42763=>493,42764=>493,42765=>493,42766=>493,42767=>493,42768=>493,42769=>493,42770=>493,42771=>493,42772=>493,\n42773=>493,42774=>493,42779=>369,42780=>369,42781=>253,42782=>253,42783=>253,42891=>402,42892=>275,62464=>664,\n62465=>675,62466=>724,62467=>958,62468=>675,62469=>669,62470=>735,62471=>997,62472=>675,62473=>675,62474=>1268,\n62475=>693,62476=>692,62477=>963,62478=>675,62479=>692,62480=>1009,62481=>756,62482=>809,62483=>758,62484=>955,\n62485=>691,62486=>946,62487=>690,62488=>698,62489=>692,62490=>739,62491=>692,62492=>698,62493=>676,62494=>739,\n62495=>895,62496=>675,62497=>785,62498=>676,62499=>675,62500=>675,62501=>732,62502=>972,62504=>904,63172=>505,\n63173=>602,63174=>640,63175=>644,63176=>947,63185=>500,63188=>500,64256=>708,64257=>667,64258=>667,64259=>941,\n64260=>986,64261=>744,64262=>916,65024=>0,65025=>0,65026=>0,65027=>0,65028=>0,65029=>0,65030=>0,\n65031=>0,65032=>0,65033=>0,65034=>0,65035=>0,65036=>0,65037=>0,65038=>0,65039=>0,65529=>0,\n65530=>0,65531=>0,65532=>0,65533=>1025);\n$enc='';\n$diff='';\n$file='dejavuserifi.z';\n$ctg='dejavuserifi.ctg.z';\n$originalsize=301828;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/freefont-20090104/AUTHORS",
    "content": "-*- mode:text; coding:utf-8; -*-\n                        GNU FreeFont Authors\n                        ====================\n\nThe FreeFont collection is being maintained by\n\tSteve White <stevan.white AT googlemail.com>\nThe folowing list cites the other contributors that contributed to\nparticular ISO 10646 blocks.\n\n* URW++ Design & Development GmbH <http://www.urwpp.de/>\n\n\tBasic Latin\t\t\t\t(U+0041-U+007A)\n\tLatin-1 Supplement                      (U+00C0-U+00FF) (most)\n\tLatin Extended-A                        (U+0100-U+017F)\n\tSpacing Modifier Letters\t\t(U+02B0-U+02FF)\n\tMathematical Operators\t\t\t(U+2200-U+22FF) (parts)\n\tBlock Elements\t\t\t\t(U+2580-U+259F)\n\tDingbats\t\t\t\t(U+2700-U+27BF)\n\n* Yannis Haralambous <yannis.haralambous AT enst-bretagne.fr> and John\n  Plaice <plaice AT omega.cse.unsw.edu.au>\n\n\tLatin Extended-B                        (U+0180-U+024F)\n\tIPA Extensions\t\t\t\t(U+0250-U+02AF)\n\tGreek\t\t\t\t\t(U+0370-U+03FF)\n\tArmenian\t\t\t\t(U+0530-U+058F)\n\tHebrew\t\t\t\t\t(U+0590-U+05FF)\n\tArabic\t\t\t\t\t(U+0600-U+06FF)\n\tCurrency Symbols\t\t\t(U+20A0-U+20CF)\n\tArabic Presentation Forms-A\t\t(U+FB50-U+FDFF)\n\tArabic Presentation Forms-B\t\t(U+FE70-U+FEFF)\n\n* Young U. Ryu <ryoung AT utdallas.edu>\n\n\tArrows\t\t\t\t\t(U+2190-U+21FF)\n\tMathematical Symbols\t\t\t(U+2200-U+22FF)\n\tMathematical Alphanumeric Symbols       (U+1D400-U+1D7FF)\n\n* Valek Filippov <frob AT df.ru>\n\n\tCyrillic\t\t\t\t(U+0400-U+04FF)\n\n* Wadalab Kanji Comittee\n\n\tHiragana\t\t\t\t(U+3040-U+309F)\n\tKatakana\t\t\t\t(U+30A0-U+30FF)\n\n* Angelo Haritsis <ah AT computer.org>\n\n\tGreek\t\t\t\t\t(U+0370-U+03FF)\n\n* Yannis Haralambous and Virach Sornlertlamvanich\n\n\tThai\t\t\t\t\t(U+0E00-U+0E7F)\n\n* Shaheed R. Haque <srhaque AT iee.org>\n\n\tBengali\t\t\t\t\t(U+0980-U+09FF)\n\n* Sam Stepanyan <sam AT arminco.com>\n\n\tArmenian\t\t\t\t(U+0530-U+058F)\n\n* Mohamed Ishan <ishan AT mitf.f2s.com>\n\n\tThaana\t\t\t\t\t(U+0780-U+07BF)\n\n* Sushant Kumar Dash <sushant AT writeme.com>\n\n\tOriya\t\t\t\t\t(U+0B00-U+0B7F)\n\n* Harsh Kumar <harshkumar AT vsnl.com>\n\n\tDevanagari\t\t\t\t(U+0900-U+097F)\n\tBengali\t\t\t\t\t(U+0980-U+09FF)\n\tGurmukhi\t\t\t\t(U+0A00-U+0A7F)\n\tGujarati\t\t\t\t(U+0A80-U+0AFF)\n\n* Prasad A. Chodavarapu <chprasad AT hotmail.com>\n\n\tTelugu\t\t\t\t\t(U+0C00-U+0C7F)\n\n* Frans Velthuis <velthuis AT rc.rug.nl> and Anshuman Pandey\n  <apandey AT u.washington.edu> \n\n\tDevanagari\t\t\t\t(U+0900-U+097F)\n\n* Hardip Singh Pannu <HSPannu AT aol.com>\n\n\tGurmukhi\t\t\t\t(U+0A00-U+0A7F)\n\n* Jeroen Hellingman <jehe AT kabelfoon.nl>\n\n\tOriya\t\t\t\t\t(U+0B00-U+0B7F)\n\tMalayalam\t\t\t\t(U+0D00-U+0D7F)\n\n* Thomas Ridgeway <email needed>\n\n\tTamil\t\t\t\t\t(U+0B80-U+0BFF)\n\n* Berhanu Beyene <1beyene AT informatik.uni-hamburg.de>,\n  Prof. Dr. Manfred Kudlek <kudlek AT informatik.uni-hamburg.de>, Olaf\n  Kummer <kummer AT informatik.uni-hamburg.de>, and Jochen Metzinger <?>\n\n\tEthiopic\t\t\t\t(U+1200-U+137F)\n\n* Maxim Iorsh <iorsh AT users.sourceforge.net>\n\n\tHebrew\t\t\t\t\t(U+0590-U+05FF)\n\n* Vyacheslav Dikonov <sdiconov AT mail.ru>\n\n\tSyriac\t\t\t\t\t(U+0700-U+074A)\n\tBraille\t\t\t\t\t(U+2800-U+28FF)\n\n* Panayotis Katsaloulis <panayotis AT panayotis.com>\n\n\tGreek Extended\t\t\t\t(U+1F00-U+1FFF)\n\n* M.S. Sridhar <mssridhar AT vsnl.com>\n\n\tDevanagari\t\t\t\t(U+0900-U+097F)\n\tBengali\t\t\t\t\t(U+0980-U+09FF)\n\tGurmukhi\t\t\t\t(U+0A00-U+0A7F)\n\tGujarati\t\t\t\t(U+0A80-U+0AFF)\n\tOriya\t\t\t\t\t(U+0B00-U+0B7F)\n\tTamil\t\t\t\t\t(U+0B80-U+0BFF)\n\tTelugu\t\t\t\t\t(U+0C00-U+0C7F)\n\tKannada\t\t\t\t\t(U+0C80-U+0CFF)\t\n\tMalayalam\t\t\t\t(U+0D00-U+0D7F)\n\n* DMS Electronics, The Sri Lanka Tipitaka Project, and Noah Levitt\n  <nlevitt AT columbia.edu>\n\n\tSinhala\t\t\t\t\t(U+0D80-U+0DFF)\n        \n* Dan Shurovich Chirkov <dansh AT chirkov.com>\n\n\tCyrillic\t\t\t\t(U+0400-U+04FF)\n\n* Abbas Izad <abbasizad AT hotmail.com>\n\n\tArabic\t\t\t\t\t(U+0600-U+06FF)\n\tArabic Presentation Forms-A\t\t(U+FB50-U+FDFF)\n\tArabic Presentation Forms-B\t\t(U+FE70-U+FEFF)\n\n* Denis Jacquerye <moyogo AT gmail.com>\n\n\tLatin Extended-B                        (U+0180-U+024F)\n\tIPA Extensions\t\t\t\t(U+0250-U+02AF)\n\n* K.H. Hussain <hussain AT kfri.org> and R. Chitrajan\n\n\tMalayalam\t\t\t\t(U+0D00-U+0D7F)\n\n* Solaiman Karim <solaiman AT ekushey.org> and Omi Azad <omi AT ekushey.org>\n\n\tBengali\t\t\t\t\t(U+0980-U+09FF)\n\n* Sonali Sonania <sonalisonania AT gmail.com> and Monika Shah\n  <monikapatira AT gmail.com>\n\n\tDevanagari\t\t\t\t(U+0900-U+097F)\n\tGujarati\t\t\t\t(U+0A80-U+0AFF)\n\n* Pravin Satpute <pravin_ind21 AT hotmail.com>, Bageshri Salvi\n  <sbagrshri AT yahoo.co.in>, Rahul Bhalerao <rahul_pb_india AT\n  yahoo.com> and Sandeep Shedmake <surgs2k47 AT yahoo.co.in>\n\n\tDevanagari\t\t\t\t(U+0900-U+097F)\n\tGujarati\t\t\t\t(U+0A80-U+0AFF)\n\tOriya\t\t\t\t\t(U+0B00-U+0B7F)\n\tMalayalam\t\t\t\t(U+0D00-U+0D7F)\n\tTamil\t\t\t\t\t(U+0B80-U+0BFF)\n\n* Kulbir Singh Thind\n\n\tGurmukhi\t\t\t\t(U+0A00-U+0A7F)\n\n* Gia Shervashidze <giasher AT telenet.ge>\n\n        Georgian\t\t\t\t(U+10A0-U+10FF)\n\n* Daniel Johnson\n\n\tCherokee                                (U+13A0-U+13FF)\n\n* George Douros\n\n\tGothic                                  (U+10330-U+1034F)\n\tPhoenecian                              (U+10900-U+1091F)\n\tByzantine Musical Symbols               (U+1D000-U+1D0FF)\n\tWestern Musical Symbols                 (U+1D100-U+1D1DF)\n\tMathematical Alphanumeric Symbols       (U+1D400-U+1D7FF)\n\tMah Jong Tiles                          (U+1F000-U+1F02B)\n\tDominoes                                (U+1F030-U+1F093)\n\n* Steve White <stevan_white AT gmail.com>\n\tCoptic                                  (U+2C80-U+2CFF)\n\n* Primož Peterlin <primoz.peterlin AT biofiz.mf.uni-lj.si>\n  maintained FreeFont for several years, and is thanked for all his work.\n\nPlease see the CREDITS file for details on who contributed particular\nsubsets of the glyphs in font files.\n\n--------------------------------------------------------------------------\n$Id: AUTHORS,v 1.18 2009/01/04 15:57:54 Stevan_White Exp $\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/freefont-20090104/COPYING",
    "content": "                    GNU GENERAL PUBLIC LICENSE\n                       Version 3, 29 June 2007\n\n Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>\n Everyone is permitted to copy and distribute verbatim copies\n of this license document, but changing it is not allowed.\n\n                            Preamble\n\n  The GNU General Public License is a free, copyleft license for\nsoftware and other kinds of works.\n\n  The licenses for most software and other practical works are designed\nto take away your freedom to share and change the works.  By contrast,\nthe GNU General Public License is intended to guarantee your freedom to\nshare and change all versions of a program--to make sure it remains free\nsoftware for all its users.  We, the Free Software Foundation, use the\nGNU General Public License for most of our software; it applies also to\nany other work released this way by its authors.  You can apply it to\nyour programs, too.\n\n  When we speak of free software, we are referring to freedom, not\nprice.  Our General Public Licenses are designed to make sure that you\nhave the freedom to distribute copies of free software (and charge for\nthem if you wish), that you receive source code or can get it if you\nwant it, that you can change the software or use pieces of it in new\nfree programs, and that you know you can do these things.\n\n  To protect your rights, we need to prevent others from denying you\nthese rights or asking you to surrender the rights.  Therefore, you have\ncertain responsibilities if you distribute copies of the software, or if\nyou modify it: responsibilities to respect the freedom of others.\n\n  For example, if you distribute copies of such a program, whether\ngratis or for a fee, you must pass on to the recipients the same\nfreedoms that you received.  You must make sure that they, too, receive\nor can get the source code.  And you must show them these terms so they\nknow their rights.\n\n  Developers that use the GNU GPL protect your rights with two steps:\n(1) assert copyright on the software, and (2) offer you this License\ngiving you legal permission to copy, distribute and/or modify it.\n\n  For the developers' and authors' protection, the GPL clearly explains\nthat there is no warranty for this free software.  For both users' and\nauthors' sake, the GPL requires that modified versions be marked as\nchanged, so that their problems will not be attributed erroneously to\nauthors of previous versions.\n\n  Some devices are designed to deny users access to install or run\nmodified versions of the software inside them, although the manufacturer\ncan do so.  This is fundamentally incompatible with the aim of\nprotecting users' freedom to change the software.  The systematic\npattern of such abuse occurs in the area of products for individuals to\nuse, which is precisely where it is most unacceptable.  Therefore, we\nhave designed this version of the GPL to prohibit the practice for those\nproducts.  If such problems arise substantially in other domains, we\nstand ready to extend this provision to those domains in future versions\nof the GPL, as needed to protect the freedom of users.\n\n  Finally, every program is threatened constantly by software patents.\nStates should not allow patents to restrict development and use of\nsoftware on general-purpose computers, but in those that do, we wish to\navoid the special danger that patents applied to a free program could\nmake it effectively proprietary.  To prevent this, the GPL assures that\npatents cannot be used to render the program non-free.\n\n  The precise terms and conditions for copying, distribution and\nmodification follow.\n\n                       TERMS AND CONDITIONS\n\n  0. Definitions.\n\n  \"This License\" refers to version 3 of the GNU General Public License.\n\n  \"Copyright\" also means copyright-like laws that apply to other kinds of\nworks, such as semiconductor masks.\n\n  \"The Program\" refers to any copyrightable work licensed under this\nLicense.  Each licensee is addressed as \"you\".  \"Licensees\" and\n\"recipients\" may be individuals or organizations.\n\n  To \"modify\" a work means to copy from or adapt all or part of the work\nin a fashion requiring copyright permission, other than the making of an\nexact copy.  The resulting work is called a \"modified version\" of the\nearlier work or a work \"based on\" the earlier work.\n\n  A \"covered work\" means either the unmodified Program or a work based\non the Program.\n\n  To \"propagate\" a work means to do anything with it that, without\npermission, would make you directly or secondarily liable for\ninfringement under applicable copyright law, except executing it on a\ncomputer or modifying a private copy.  Propagation includes copying,\ndistribution (with or without modification), making available to the\npublic, and in some countries other activities as well.\n\n  To \"convey\" a work means any kind of propagation that enables other\nparties to make or receive copies.  Mere interaction with a user through\na computer network, with no transfer of a copy, is not conveying.\n\n  An interactive user interface displays \"Appropriate Legal Notices\"\nto the extent that it includes a convenient and prominently visible\nfeature that (1) displays an appropriate copyright notice, and (2)\ntells the user that there is no warranty for the work (except to the\nextent that warranties are provided), that licensees may convey the\nwork under this License, and how to view a copy of this License.  If\nthe interface presents a list of user commands or options, such as a\nmenu, a prominent item in the list meets this criterion.\n\n  1. Source Code.\n\n  The \"source code\" for a work means the preferred form of the work\nfor making modifications to it.  \"Object code\" means any non-source\nform of a work.\n\n  A \"Standard Interface\" means an interface that either is an official\nstandard defined by a recognized standards body, or, in the case of\ninterfaces specified for a particular programming language, one that\nis widely used among developers working in that language.\n\n  The \"System Libraries\" of an executable work include anything, other\nthan the work as a whole, that (a) is included in the normal form of\npackaging a Major Component, but which is not part of that Major\nComponent, and (b) serves only to enable use of the work with that\nMajor Component, or to implement a Standard Interface for which an\nimplementation is available to the public in source code form.  A\n\"Major Component\", in this context, means a major essential component\n(kernel, window system, and so on) of the specific operating system\n(if any) on which the executable work runs, or a compiler used to\nproduce the work, or an object code interpreter used to run it.\n\n  The \"Corresponding Source\" for a work in object code form means all\nthe source code needed to generate, install, and (for an executable\nwork) run the object code and to modify the work, including scripts to\ncontrol those activities.  However, it does not include the work's\nSystem Libraries, or general-purpose tools or generally available free\nprograms which are used unmodified in performing those activities but\nwhich are not part of the work.  For example, Corresponding Source\nincludes interface definition files associated with source files for\nthe work, and the source code for shared libraries and dynamically\nlinked subprograms that the work is specifically designed to require,\nsuch as by intimate data communication or control flow between those\nsubprograms and other parts of the work.\n\n  The Corresponding Source need not include anything that users\ncan regenerate automatically from other parts of the Corresponding\nSource.\n\n  The Corresponding Source for a work in source code form is that\nsame work.\n\n  2. Basic Permissions.\n\n  All rights granted under this License are granted for the term of\ncopyright on the Program, and are irrevocable provided the stated\nconditions are met.  This License explicitly affirms your unlimited\npermission to run the unmodified Program.  The output from running a\ncovered work is covered by this License only if the output, given its\ncontent, constitutes a covered work.  This License acknowledges your\nrights of fair use or other equivalent, as provided by copyright law.\n\n  You may make, run and propagate covered works that you do not\nconvey, without conditions so long as your license otherwise remains\nin force.  You may convey covered works to others for the sole purpose\nof having them make modifications exclusively for you, or provide you\nwith facilities for running those works, provided that you comply with\nthe terms of this License in conveying all material for which you do\nnot control copyright.  Those thus making or running the covered works\nfor you must do so exclusively on your behalf, under your direction\nand control, on terms that prohibit them from making any copies of\nyour copyrighted material outside their relationship with you.\n\n  Conveying under any other circumstances is permitted solely under\nthe conditions stated below.  Sublicensing is not allowed; section 10\nmakes it unnecessary.\n\n  3. Protecting Users' Legal Rights From Anti-Circumvention Law.\n\n  No covered work shall be deemed part of an effective technological\nmeasure under any applicable law fulfilling obligations under article\n11 of the WIPO copyright treaty adopted on 20 December 1996, or\nsimilar laws prohibiting or restricting circumvention of such\nmeasures.\n\n  When you convey a covered work, you waive any legal power to forbid\ncircumvention of technological measures to the extent such circumvention\nis effected by exercising rights under this License with respect to\nthe covered work, and you disclaim any intention to limit operation or\nmodification of the work as a means of enforcing, against the work's\nusers, your or third parties' legal rights to forbid circumvention of\ntechnological measures.\n\n  4. Conveying Verbatim Copies.\n\n  You may convey verbatim copies of the Program's source code as you\nreceive it, in any medium, provided that you conspicuously and\nappropriately publish on each copy an appropriate copyright notice;\nkeep intact all notices stating that this License and any\nnon-permissive terms added in accord with section 7 apply to the code;\nkeep intact all notices of the absence of any warranty; and give all\nrecipients a copy of this License along with the Program.\n\n  You may charge any price or no price for each copy that you convey,\nand you may offer support or warranty protection for a fee.\n\n  5. Conveying Modified Source Versions.\n\n  You may convey a work based on the Program, or the modifications to\nproduce it from the Program, in the form of source code under the\nterms of section 4, provided that you also meet all of these conditions:\n\n    a) The work must carry prominent notices stating that you modified\n    it, and giving a relevant date.\n\n    b) The work must carry prominent notices stating that it is\n    released under this License and any conditions added under section\n    7.  This requirement modifies the requirement in section 4 to\n    \"keep intact all notices\".\n\n    c) You must license the entire work, as a whole, under this\n    License to anyone who comes into possession of a copy.  This\n    License will therefore apply, along with any applicable section 7\n    additional terms, to the whole of the work, and all its parts,\n    regardless of how they are packaged.  This License gives no\n    permission to license the work in any other way, but it does not\n    invalidate such permission if you have separately received it.\n\n    d) If the work has interactive user interfaces, each must display\n    Appropriate Legal Notices; however, if the Program has interactive\n    interfaces that do not display Appropriate Legal Notices, your\n    work need not make them do so.\n\n  A compilation of a covered work with other separate and independent\nworks, which are not by their nature extensions of the covered work,\nand which are not combined with it such as to form a larger program,\nin or on a volume of a storage or distribution medium, is called an\n\"aggregate\" if the compilation and its resulting copyright are not\nused to limit the access or legal rights of the compilation's users\nbeyond what the individual works permit.  Inclusion of a covered work\nin an aggregate does not cause this License to apply to the other\nparts of the aggregate.\n\n  6. Conveying Non-Source Forms.\n\n  You may convey a covered work in object code form under the terms\nof sections 4 and 5, provided that you also convey the\nmachine-readable Corresponding Source under the terms of this License,\nin one of these ways:\n\n    a) Convey the object code in, or embodied in, a physical product\n    (including a physical distribution medium), accompanied by the\n    Corresponding Source fixed on a durable physical medium\n    customarily used for software interchange.\n\n    b) Convey the object code in, or embodied in, a physical product\n    (including a physical distribution medium), accompanied by a\n    written offer, valid for at least three years and valid for as\n    long as you offer spare parts or customer support for that product\n    model, to give anyone who possesses the object code either (1) a\n    copy of the Corresponding Source for all the software in the\n    product that is covered by this License, on a durable physical\n    medium customarily used for software interchange, for a price no\n    more than your reasonable cost of physically performing this\n    conveying of source, or (2) access to copy the\n    Corresponding Source from a network server at no charge.\n\n    c) Convey individual copies of the object code with a copy of the\n    written offer to provide the Corresponding Source.  This\n    alternative is allowed only occasionally and noncommercially, and\n    only if you received the object code with such an offer, in accord\n    with subsection 6b.\n\n    d) Convey the object code by offering access from a designated\n    place (gratis or for a charge), and offer equivalent access to the\n    Corresponding Source in the same way through the same place at no\n    further charge.  You need not require recipients to copy the\n    Corresponding Source along with the object code.  If the place to\n    copy the object code is a network server, the Corresponding Source\n    may be on a different server (operated by you or a third party)\n    that supports equivalent copying facilities, provided you maintain\n    clear directions next to the object code saying where to find the\n    Corresponding Source.  Regardless of what server hosts the\n    Corresponding Source, you remain obligated to ensure that it is\n    available for as long as needed to satisfy these requirements.\n\n    e) Convey the object code using peer-to-peer transmission, provided\n    you inform other peers where the object code and Corresponding\n    Source of the work are being offered to the general public at no\n    charge under subsection 6d.\n\n  A separable portion of the object code, whose source code is excluded\nfrom the Corresponding Source as a System Library, need not be\nincluded in conveying the object code work.\n\n  A \"User Product\" is either (1) a \"consumer product\", which means any\ntangible personal property which is normally used for personal, family,\nor household purposes, or (2) anything designed or sold for incorporation\ninto a dwelling.  In determining whether a product is a consumer product,\ndoubtful cases shall be resolved in favor of coverage.  For a particular\nproduct received by a particular user, \"normally used\" refers to a\ntypical or common use of that class of product, regardless of the status\nof the particular user or of the way in which the particular user\nactually uses, or expects or is expected to use, the product.  A product\nis a consumer product regardless of whether the product has substantial\ncommercial, industrial or non-consumer uses, unless such uses represent\nthe only significant mode of use of the product.\n\n  \"Installation Information\" for a User Product means any methods,\nprocedures, authorization keys, or other information required to install\nand execute modified versions of a covered work in that User Product from\na modified version of its Corresponding Source.  The information must\nsuffice to ensure that the continued functioning of the modified object\ncode is in no case prevented or interfered with solely because\nmodification has been made.\n\n  If you convey an object code work under this section in, or with, or\nspecifically for use in, a User Product, and the conveying occurs as\npart of a transaction in which the right of possession and use of the\nUser Product is transferred to the recipient in perpetuity or for a\nfixed term (regardless of how the transaction is characterized), the\nCorresponding Source conveyed under this section must be accompanied\nby the Installation Information.  But this requirement does not apply\nif neither you nor any third party retains the ability to install\nmodified object code on the User Product (for example, the work has\nbeen installed in ROM).\n\n  The requirement to provide Installation Information does not include a\nrequirement to continue to provide support service, warranty, or updates\nfor a work that has been modified or installed by the recipient, or for\nthe User Product in which it has been modified or installed.  Access to a\nnetwork may be denied when the modification itself materially and\nadversely affects the operation of the network or violates the rules and\nprotocols for communication across the network.\n\n  Corresponding Source conveyed, and Installation Information provided,\nin accord with this section must be in a format that is publicly\ndocumented (and with an implementation available to the public in\nsource code form), and must require no special password or key for\nunpacking, reading or copying.\n\n  7. Additional Terms.\n\n  \"Additional permissions\" are terms that supplement the terms of this\nLicense by making exceptions from one or more of its conditions.\nAdditional permissions that are applicable to the entire Program shall\nbe treated as though they were included in this License, to the extent\nthat they are valid under applicable law.  If additional permissions\napply only to part of the Program, that part may be used separately\nunder those permissions, but the entire Program remains governed by\nthis License without regard to the additional permissions.\n\n  When you convey a copy of a covered work, you may at your option\nremove any additional permissions from that copy, or from any part of\nit.  (Additional permissions may be written to require their own\nremoval in certain cases when you modify the work.)  You may place\nadditional permissions on material, added by you to a covered work,\nfor which you have or can give appropriate copyright permission.\n\n  Notwithstanding any other provision of this License, for material you\nadd to a covered work, you may (if authorized by the copyright holders of\nthat material) supplement the terms of this License with terms:\n\n    a) Disclaiming warranty or limiting liability differently from the\n    terms of sections 15 and 16 of this License; or\n\n    b) Requiring preservation of specified reasonable legal notices or\n    author attributions in that material or in the Appropriate Legal\n    Notices displayed by works containing it; or\n\n    c) Prohibiting misrepresentation of the origin of that material, or\n    requiring that modified versions of such material be marked in\n    reasonable ways as different from the original version; or\n\n    d) Limiting the use for publicity purposes of names of licensors or\n    authors of the material; or\n\n    e) Declining to grant rights under trademark law for use of some\n    trade names, trademarks, or service marks; or\n\n    f) Requiring indemnification of licensors and authors of that\n    material by anyone who conveys the material (or modified versions of\n    it) with contractual assumptions of liability to the recipient, for\n    any liability that these contractual assumptions directly impose on\n    those licensors and authors.\n\n  All other non-permissive additional terms are considered \"further\nrestrictions\" within the meaning of section 10.  If the Program as you\nreceived it, or any part of it, contains a notice stating that it is\ngoverned by this License along with a term that is a further\nrestriction, you may remove that term.  If a license document contains\na further restriction but permits relicensing or conveying under this\nLicense, you may add to a covered work material governed by the terms\nof that license document, provided that the further restriction does\nnot survive such relicensing or conveying.\n\n  If you add terms to a covered work in accord with this section, you\nmust place, in the relevant source files, a statement of the\nadditional terms that apply to those files, or a notice indicating\nwhere to find the applicable terms.\n\n  Additional terms, permissive or non-permissive, may be stated in the\nform of a separately written license, or stated as exceptions;\nthe above requirements apply either way.\n\n  8. Termination.\n\n  You may not propagate or modify a covered work except as expressly\nprovided under this License.  Any attempt otherwise to propagate or\nmodify it is void, and will automatically terminate your rights under\nthis License (including any patent licenses granted under the third\nparagraph of section 11).\n\n  However, if you cease all violation of this License, then your\nlicense from a particular copyright holder is reinstated (a)\nprovisionally, unless and until the copyright holder explicitly and\nfinally terminates your license, and (b) permanently, if the copyright\nholder fails to notify you of the violation by some reasonable means\nprior to 60 days after the cessation.\n\n  Moreover, your license from a particular copyright holder is\nreinstated permanently if the copyright holder notifies you of the\nviolation by some reasonable means, this is the first time you have\nreceived notice of violation of this License (for any work) from that\ncopyright holder, and you cure the violation prior to 30 days after\nyour receipt of the notice.\n\n  Termination of your rights under this section does not terminate the\nlicenses of parties who have received copies or rights from you under\nthis License.  If your rights have been terminated and not permanently\nreinstated, you do not qualify to receive new licenses for the same\nmaterial under section 10.\n\n  9. Acceptance Not Required for Having Copies.\n\n  You are not required to accept this License in order to receive or\nrun a copy of the Program.  Ancillary propagation of a covered work\noccurring solely as a consequence of using peer-to-peer transmission\nto receive a copy likewise does not require acceptance.  However,\nnothing other than this License grants you permission to propagate or\nmodify any covered work.  These actions infringe copyright if you do\nnot accept this License.  Therefore, by modifying or propagating a\ncovered work, you indicate your acceptance of this License to do so.\n\n  10. Automatic Licensing of Downstream Recipients.\n\n  Each time you convey a covered work, the recipient automatically\nreceives a license from the original licensors, to run, modify and\npropagate that work, subject to this License.  You are not responsible\nfor enforcing compliance by third parties with this License.\n\n  An \"entity transaction\" is a transaction transferring control of an\norganization, or substantially all assets of one, or subdividing an\norganization, or merging organizations.  If propagation of a covered\nwork results from an entity transaction, each party to that\ntransaction who receives a copy of the work also receives whatever\nlicenses to the work the party's predecessor in interest had or could\ngive under the previous paragraph, plus a right to possession of the\nCorresponding Source of the work from the predecessor in interest, if\nthe predecessor has it or can get it with reasonable efforts.\n\n  You may not impose any further restrictions on the exercise of the\nrights granted or affirmed under this License.  For example, you may\nnot impose a license fee, royalty, or other charge for exercise of\nrights granted under this License, and you may not initiate litigation\n(including a cross-claim or counterclaim in a lawsuit) alleging that\nany patent claim is infringed by making, using, selling, offering for\nsale, or importing the Program or any portion of it.\n\n  11. Patents.\n\n  A \"contributor\" is a copyright holder who authorizes use under this\nLicense of the Program or a work on which the Program is based.  The\nwork thus licensed is called the contributor's \"contributor version\".\n\n  A contributor's \"essential patent claims\" are all patent claims\nowned or controlled by the contributor, whether already acquired or\nhereafter acquired, that would be infringed by some manner, permitted\nby this License, of making, using, or selling its contributor version,\nbut do not include claims that would be infringed only as a\nconsequence of further modification of the contributor version.  For\npurposes of this definition, \"control\" includes the right to grant\npatent sublicenses in a manner consistent with the requirements of\nthis License.\n\n  Each contributor grants you a non-exclusive, worldwide, royalty-free\npatent license under the contributor's essential patent claims, to\nmake, use, sell, offer for sale, import and otherwise run, modify and\npropagate the contents of its contributor version.\n\n  In the following three paragraphs, a \"patent license\" is any express\nagreement or commitment, however denominated, not to enforce a patent\n(such as an express permission to practice a patent or covenant not to\nsue for patent infringement).  To \"grant\" such a patent license to a\nparty means to make such an agreement or commitment not to enforce a\npatent against the party.\n\n  If you convey a covered work, knowingly relying on a patent license,\nand the Corresponding Source of the work is not available for anyone\nto copy, free of charge and under the terms of this License, through a\npublicly available network server or other readily accessible means,\nthen you must either (1) cause the Corresponding Source to be so\navailable, or (2) arrange to deprive yourself of the benefit of the\npatent license for this particular work, or (3) arrange, in a manner\nconsistent with the requirements of this License, to extend the patent\nlicense to downstream recipients.  \"Knowingly relying\" means you have\nactual knowledge that, but for the patent license, your conveying the\ncovered work in a country, or your recipient's use of the covered work\nin a country, would infringe one or more identifiable patents in that\ncountry that you have reason to believe are valid.\n\n  If, pursuant to or in connection with a single transaction or\narrangement, you convey, or propagate by procuring conveyance of, a\ncovered work, and grant a patent license to some of the parties\nreceiving the covered work authorizing them to use, propagate, modify\nor convey a specific copy of the covered work, then the patent license\nyou grant is automatically extended to all recipients of the covered\nwork and works based on it.\n\n  A patent license is \"discriminatory\" if it does not include within\nthe scope of its coverage, prohibits the exercise of, or is\nconditioned on the non-exercise of one or more of the rights that are\nspecifically granted under this License.  You may not convey a covered\nwork if you are a party to an arrangement with a third party that is\nin the business of distributing software, under which you make payment\nto the third party based on the extent of your activity of conveying\nthe work, and under which the third party grants, to any of the\nparties who would receive the covered work from you, a discriminatory\npatent license (a) in connection with copies of the covered work\nconveyed by you (or copies made from those copies), or (b) primarily\nfor and in connection with specific products or compilations that\ncontain the covered work, unless you entered into that arrangement,\nor that patent license was granted, prior to 28 March 2007.\n\n  Nothing in this License shall be construed as excluding or limiting\nany implied license or other defenses to infringement that may\notherwise be available to you under applicable patent law.\n\n  12. No Surrender of Others' Freedom.\n\n  If conditions are imposed on you (whether by court order, agreement or\notherwise) that contradict the conditions of this License, they do not\nexcuse you from the conditions of this License.  If you cannot convey a\ncovered work so as to satisfy simultaneously your obligations under this\nLicense and any other pertinent obligations, then as a consequence you may\nnot convey it at all.  For example, if you agree to terms that obligate you\nto collect a royalty for further conveying from those to whom you convey\nthe Program, the only way you could satisfy both those terms and this\nLicense would be to refrain entirely from conveying the Program.\n\n  13. Use with the GNU Affero General Public License.\n\n  Notwithstanding any other provision of this License, you have\npermission to link or combine any covered work with a work licensed\nunder version 3 of the GNU Affero General Public License into a single\ncombined work, and to convey the resulting work.  The terms of this\nLicense will continue to apply to the part which is the covered work,\nbut the special requirements of the GNU Affero General Public License,\nsection 13, concerning interaction through a network will apply to the\ncombination as such.\n\n  14. Revised Versions of this License.\n\n  The Free Software Foundation may publish revised and/or new versions of\nthe GNU General Public License from time to time.  Such new versions will\nbe similar in spirit to the present version, but may differ in detail to\naddress new problems or concerns.\n\n  Each version is given a distinguishing version number.  If the\nProgram specifies that a certain numbered version of the GNU General\nPublic License \"or any later version\" applies to it, you have the\noption of following the terms and conditions either of that numbered\nversion or of any later version published by the Free Software\nFoundation.  If the Program does not specify a version number of the\nGNU General Public License, you may choose any version ever published\nby the Free Software Foundation.\n\n  If the Program specifies that a proxy can decide which future\nversions of the GNU General Public License can be used, that proxy's\npublic statement of acceptance of a version permanently authorizes you\nto choose that version for the Program.\n\n  Later license versions may give you additional or different\npermissions.  However, no additional obligations are imposed on any\nauthor or copyright holder as a result of your choosing to follow a\nlater version.\n\n  15. Disclaimer of Warranty.\n\n  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY\nAPPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT\nHOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY\nOF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,\nTHE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\nPURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM\nIS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF\nALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n\n  16. Limitation of Liability.\n\n  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\nWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS\nTHE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY\nGENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE\nUSE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF\nDATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD\nPARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),\nEVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF\nSUCH DAMAGES.\n\n  17. Interpretation of Sections 15 and 16.\n\n  If the disclaimer of warranty and limitation of liability provided\nabove cannot be given local legal effect according to their terms,\nreviewing courts shall apply local law that most closely approximates\nan absolute waiver of all civil liability in connection with the\nProgram, unless a warranty or assumption of liability accompanies a\ncopy of the Program in return for a fee.\n\n                     END OF TERMS AND CONDITIONS\n\n            How to Apply These Terms to Your New Programs\n\n  If you develop a new program, and you want it to be of the greatest\npossible use to the public, the best way to achieve this is to make it\nfree software which everyone can redistribute and change under these terms.\n\n  To do so, attach the following notices to the program.  It is safest\nto attach them to the start of each source file to most effectively\nstate the exclusion of warranty; and each file should have at least\nthe \"copyright\" line and a pointer to where the full notice is found.\n\n    <one line to give the program's name and a brief idea of what it does.>\n    Copyright (C) <year>  <name of author>\n\n    This program is free software: you can redistribute it and/or modify\n    it under the terms of the GNU General Public License as published by\n    the Free Software Foundation, either version 3 of the License, or\n    (at your option) any later version.\n\n    This program is distributed in the hope that it will be useful,\n    but WITHOUT ANY WARRANTY; without even the implied warranty of\n    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n    GNU General Public License for more details.\n\n    You should have received a copy of the GNU General Public License\n    along with this program.  If not, see <http://www.gnu.org/licenses/>.\n\nAlso add information on how to contact you by electronic and paper mail.\n\n  If the program does terminal interaction, make it output a short\nnotice like this when it starts in an interactive mode:\n\n    <program>  Copyright (C) <year>  <name of author>\n    This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.\n    This is free software, and you are welcome to redistribute it\n    under certain conditions; type `show c' for details.\n\nThe hypothetical commands `show w' and `show c' should show the appropriate\nparts of the General Public License.  Of course, your program's commands\nmight be different; for a GUI interface, you would use an \"about box\".\n\n  You should also get your employer (if you work as a programmer) or school,\nif any, to sign a \"copyright disclaimer\" for the program, if necessary.\nFor more information on this, and how to apply and follow the GNU GPL, see\n<http://www.gnu.org/licenses/>.\n\n  The GNU General Public License does not permit incorporating your program\ninto proprietary programs.  If your program is a subroutine library, you\nmay consider it more useful to permit linking proprietary applications with\nthe library.  If this is what you want to do, use the GNU Lesser General\nPublic License instead of this License.  But first, please read\n<http://www.gnu.org/philosophy/why-not-lgpl.html>.\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/freefont-20090104/CREDITS",
    "content": "-*- mode:text; coding:utf-8; -*-\n                         GNU FreeFont Credits\n                         ====================\n\nThis file lists contributors and contributions to the GNU FreeFont project.\n\n\n* URW++ Design & Development GmbH <http://www.urwpp.de/>\n\nURW++ donated a set of 35 core PostScript Type 1 fonts to the\nGhostscript project <http://www.cs.wisc.edu/~ghost/>, to be available\nunder the terms of GNU General Public License (GPL).\n\n\tBasic Latin\t\t\t\t(U+0041-U+007A)\n\tLatin-1 Supplement                      (U+00C0-U+00FF)\n\tLatin Extended-A                        (U+0100-U+017F)\n\tSpacing Modifier Letters\t\t(U+02B0-U+02FF)\n\tMathematical Operators\t\t\t(U+2200-U+22FF)\n\tBlock Elements\t\t\t\t(U+2580-U+259F)\n\tDingbats\t\t\t\t(U+2700-U+27BF)\n\n\n* Yannis Haralambous <yannis.haralambous AT enst-bretagne.fr> and John\n  Plaice <plaice AT omega.cse.unsw.edu.au>\n\nYannis Haralambous and John Plaice are the authors of Omega typesetting\nsystem, <http://omega.enstb.org/>. Omega is an extension of TeX.\nIts first release, aims primarily at improving TeX's multilingual abilities.\nIn Omega all characters and pointers into data-structures are 16-bit wide,\ninstead of 8-bit, thereby eliminating many of the trivial limitations of TeX.\nOmega also allows multiple input and output character sets, and uses\nprogrammable filters to translate from one encoding to another, to perform\ncontextual analysis, etc. Internally, Omega uses the universal 16-bit Unicode\nstandard character set, based on ISO-10646. These improvements not only make\nit a lot easier for TeX users to cope with multiple or complex languages,\nlike Arabic, Indic, Khmer, Chinese, Japanese or Korean, in one document, but\nwill also form the basis for future developments in other areas, such as\nnative color support and hypertext features. ... Fonts for UT1 (omlgc family)\nand UT2 (omah family) are under development: these fonts are in PostScript\nformat and visually close to Times and Helvetica font families. \nOmega fonts are available subject to GPL\n\n\tLatin Extended-B                        (U+0180-U+024F)\n\tIPA Extensions\t\t\t\t(U+0250-U+02AF)\n\tGreek\t\t\t\t\t(U+0370-U+03FF)\n\tArmenian\t\t\t\t(U+0530-U+058F)\n\tHebrew\t\t\t\t\t(U+0590-U+05FF)\n\tArabic\t\t\t\t\t(U+0600-U+06FF)\n\tCurrency Symbols\t\t\t(U+20A0-U+20CF)\n\tArabic Presentation Forms-A\t\t(U+FB50-U+FDFF)\n\tArabic Presentation Forms-B\t\t(U+FE70-U+FEFF)\n\nCurrent info: <http://tug.ctan.org/cgi-bin/ctanPackageInformation.py?id=omega>\n\n* Valek Filippov <frob AT df.ru>\n\nValek Filippov added Cyrillic glyphs and composite Latin Extended A to\nthe whole set of the abovementioned URW set of 35 PostScript core fonts,\n<ftp://ftp.gnome.ru/fonts/urw/>. The fonts are available under GPL.\n\n\tLatin Extended-A                        (U+0100-U+017F)\n\tCyrillic\t\t\t\t(U+0400-U+04FF)\n\n\n* Wadalab Kanji Comittee\n\nBetween April 1990 and March 1992, Wadalab Kanji Comittee put together\na series of scalable font files with Japanese scripts, in four forms:\nSai Micho, Chu Mincho, Cho Kaku and Saimaru. The font files are\nwritten in custom file format, while tools for conversion into\nMetafont and PostScript Type 1 are also supplied. The Wadalab Kanji\nComittee has later been dismissed, and the resulting files can be now\nfound on the FTP server of the Depertment of Mathematical Engineering\nand Information Physics, Faculty of Engineering, University of Tokyo\n<ftp://ftp.ipl.t.u-tokyo.ac.jp/Font/>.\n\n\tHiragana\t\t\t\t(U+3040-U+309F)\n\tKatakana\t\t\t\t(U+30A0-U+30FF)\n\n\n* Young U. Ryu <ryoung AT utdallas.edu>\n\nYoung Ryu is the author of Txfonts, a set of mathematical symbols\ndesigned to accompany text typeset in Times or its variants. In the\ndocumentation, Young adresses the design of mathematical symbols: \"The\nAdobe Times fonts are thicker than the CM fonts. Designing math fonts\nfor Times based on the rule thickness of Times = , , + , / , < ,\netc. would result in too thick math symbols, in my opinion. In the TX\nfonts, these glyphs are thinner than those of original Times\nfonts. That is, the rule thickness of these glyphs is around 85% of\nthat of the Times fonts, but still thicker than that of the CM fonts.\"\nTX fonts are are distributed under the GNU public license (GPL). \n<http://www.ctan.org/tex-archive/fonts/txfonts/>.\n\n\tArrows\t\t\t\t\t(U+2190-U+21FF)\n\tMathematical Symbols\t\t\t(U+2200-U+22FF)\n\n\n* Angelo Haritsis <ah AT computer.org>\n\nAngelo Haritsis has compiled a set of Greek Type 1 fonts, available on\n<ftp://ftp.hellug.gr/pub/unix/linux/GREEK/fonts/greekXfonts-Type1-1.1.tgz>.\nThe glyphs from this source has been used to compose Greek glyphs in\nFreeSans and FreeMono.\n\nAngelo's licence says: \"You can enjoy free use of these fonts for\neducational or commercial purposes.  All derived works should include\nthis paragraph.  If you want to change something please let me have\nyour changes (via email) so that they can go into the next\nversion. You can also send comments etc to the above address.\"\n\n\tGreek\t\t\t\t\t(U+0370-U+03FF)\n\n\n* Yannis Haralambous and Virach Sornlertlamvanich\n\nIn 1999, Yannis Haralambous and Virach Sornlertlamvanich made a set of\nglyphs covering the Thai national standard Nf3, in both upright and\nslanted shape. The collection of glyphs have been made part of GNU\nintlfonts 1.2 package and is available under the GPL at\n<ftp://ftp.gnu.org/pub/gnu/intlfonts/>.\n\n\tThai\t\t\t\t\t(U+0E00-U+0E7F)\n\n\n* Shaheed R. Haque <srhaque AT iee.org>\n\nShaheed Haque has developed a basic set of basic Bengali glyphs\n(without ligatures), using ISO10646 encoding. They are available under\nthe XFree86 license at <http://www.btinternet.com/~shaheedhaque/>.\n\nCopyright (C) 2001 S.R.Haque <srhaque AT iee.org>.  All Rights Reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining\na copy of this software and associated documentation files (the\n\"Software\"), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to\npermit persons to whom the Software is furnished to do so, subject to\nthe following conditions:\n\nThe above copyright notice and this permission notice shall be\nincluded in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\nIN NO EVENT SHALL S.R.HAQUE BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,\nARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\nOTHER DEALINGS IN THE SOFTWARE.\n\nExcept as contained in this notice, the name of S.R.Haque shall not be\nused in advertising or otherwise to promote the sale, use or other\ndealings in this Software without prior written authorization from\nS.R.Haque.\n\n\tBengali\t\t\t\t\t(U+0980-U+09FF)\n\n\n* Sam Stepanyan <sam AT arminco.com>\n\nSam Stepanyan created a set of Armenian sans serif glyphs visually\ncompatible with Helvetica or Arial. Available on\n<http://www.editum.com.ar/mashtots/html/fonts/ara.tar.gz>. On\n2002-01-24, Sam writes: \"Arial Armenian font is free for\nnon-commercial use, so it is OK to use under GPL license.\"\n\n\tArmenian\t\t\t\t(U+0530-U+058F)\n\n\n* Mohamed Ishan <ishan AT mitf.f2s.com>\n\nMohamed Ishan has started a Thaana Unicode Project\n<http://thaana.sourceforge.net/> and among other things created a\ncouple of Thaana fonts, available under FDL or BDF license.\n\n\tThaana\t\t\t\t\t(U+0780-U+07BF)\n\n\n* Sushant Kumar Dash <sushant AT writeme.com> (*)\n\nSushant Dash has created a font in his mother tongue, Oriya. As he\nstates on his web page <http://members.tripod.com/~sushantdash/>:\n\"Please feel free to foreword this mail to your Oriya friends. No\ncopyright law is applied for this font. It is totally free!!! Feel\nfree to modify this using any font editing tools. This is designed for\npeople like me, who are away from Orissa and want to write letters\nhome using Computers, but suffer due to unavailability of Oriya\nfonts.(Or the cost of the available packages are too much).\"\n\n\tOriya\t\t\t\t\t(U+0B00-U+0B7F)\n\n\n* Harsh Kumar <harshkumar AT vsnl.com>\n\nHarsh Kumar has started BharatBhasha <http://www.bharatbhasha.net/> -\nan effort to provide \"FREE software, Tutorial, Source Codes\netc. available for working in Hindi, Marathi, Gujarati, Gurmukhi and\nBangla. You can type text, write Web pages or develop Indian Languages\nApplications on Windows and on Linux. We also offer FREE help to\nusers, enthusiasts and software developers for their work in Indian\nlanguages.\"\n\n\tDevanagari\t\t\t\t(U+0900-U+097F)\n\tBengali\t\t\t\t\t(U+0980-U+09FF)\n\tGurmukhi\t\t\t\t(U+0A00-U+0A7F)\n\tGujarati\t\t\t\t(U+0A80-U+0AFF)\n\n\n* Prasad A. Chodavarapu <chprasad AT hotmail.com>\n\nPrasad A. Chodavarapu created Tikkana, a Telugu font available in Type\n1 and TrueType format on <http://chaitanya.bhaavana.net/fonts/>. \nTikkana exceeds the Unicode Telugu range with some composite glyphs.\nAvailable under the GNU General Public License.\n\n\tTelugu\t\t\t\t\t(U+0C00-U+0C7F)\n\n\n* Frans Velthuis <velthuis AT rc.rug.nl> and Anshuman Pandey\n  <apandey AT u.washington.edu>\n\nIn 1991, Frans Velthuis from the Groningen University, The\nNetherlands, released a Devanagari font as Metafont source, available\nunder the terms of GNU GPL. Later, Anshuman Pandey from the Washington\nUniversity, Seattle, USA, took over the maintenance of font. Fonts can\nbe found on CTAN, <ftp://ftp.dante.de/tex-archive/language/devanagari/>. I\nconverted the font to Type 1 format using Péter Szabó's TeXtrace\nprogram <http://www.inf.bme.hu/~pts/textrace/> and removed some\nredundant control points with PfaEdit.\n\n\tDevanagari\t\t\t\t(U+0900-U+097F)\n\n\n* Hardip Singh Pannu <HSPannu AT aol.com>\n\nIn 1991, Hardip Singh Pannu has created a free Gurmukhi TrueType font,\navailable as regular, bold, oblique and bold oblique form. Its license\nsays \"Please remember that these fonts are copyrighted (by me) and are\nfor non-profit use only.\" \n\n\tGurmukhi\t\t\t\t(U+0A00-U+0A7F)\n\n\n* Jeroen Hellingman <jehe AT kabelfoon.nl>\n\nJeroen Hellingman created a set of Malayalam metafonts in 1994, and a\nset of Oriya metafonts in 1996. Malayalam fonts were created as\nuniform stroke only, while Oriya metafonts exist in both uniform and\nmodulated stroke. From private communication: \"It is my intention to\nrelease the fonts under GPL, but not all copies around have this\nnotice on them.\" Metafonts can be found on CTAN,\n<ftp://ftp.dante.de/tex-archive/language/oriya/> and\n<ftp://ftp.dante.de/tex-archive/language/malayalam/>.\n\n\tOriya\t\t\t\t\t(U+0B00-U+0B7F)\n\tMalayalam\t\t\t\t(U+0D00-U+0D7F)\n\n\n* Thomas Ridgeway <> (*)\n\nThomas Ridgeway, then at the Humanities And Arts Computing Center,\nWashington University, Seattle, USA, (now defunct), created a Tamil\nmetafont in 1990. Anshuman Pandey from the same university took over\nthe maintenance of font. Fonts can be found at CTAN,\n<ftp://ftp.dante.de/tex-archive/language/tamil/wntamil/>.\n\n\tTamil\t\t\t\t\t(U+0B80-U+0BFF)\n\n\n* Berhanu Beyene <1beyene AT informatik.uni-hamburg.de>,\n  Prof. Dr. Manfred Kudlek <kudlek AT informatik.uni-hamburg.de>, Olaf\n  Kummer <kummer AT informatik.uni-hamburg.de>, and Jochen Metzinger <?>\n\nBeyene, Kudlek, Kummer and Metzinger from the Theoretical Foundations\nof Computer Science, University of Hamburg, prepared a set of Ethiopic\nmetafonts, found on\n<ftp://ftp.dante.de/tex-archive/language/ethiopia/ethiop/>. They also\nmaintain home page on the Ethiopic font project,\n<http://www.informatik.uni-hamburg.de/TGI/mitarbeiter/wimis/kummer/ethiop_eng.html>,\nand can be reached at <ethiop AT informatik.uni-hamburg.de>. The current\nversion of fonts is 0.7 (1998), and they are released under GNU GPL. I\nconverted the fonts to Type 1 format using Péter Szabó's TeXtrace-A\nprogram <http://www.inf.bme.hu/~pts/textrace/> and removed some\nredundant control points with PfaEdit.\n\n\tEthiopic\t\t\t\t(U+1200-U+137F)\n\n\n* Maxim Iorsh <iorsh AT users.sourceforge.net>\n\nIn 2002, Maxim Iorsh started the Culmus project, aiming at providing\nHebrew-speaking Linux and Unix community with a basic collection of\nHebrew fonts for X Windows. The fonts are visually compatible with\nURW++ Century Schoolbook L, URW++ Nimbus Sans L and URW++ Nimbus Mono\nL families, respectively, and are released under GNU GPL license. See\nalso <http://culmus.sourceforge.net/>.\n\n\tHebrew\t\t\t\t\t(U+0590-U+05FF)\n\n\n* Panayotis Katsaloulis <panayotis AT panayotis.com>\n\nPanayotis Katsaloulis helped fixing Greek accents in the Greek\nExtended area.\n\n\tGreek Extended\t\t\t\t(U+1F00-U+1FFF)\n\n\n* Vyacheslav Dikonov <sdiconov AT mail.ru>\n\nVyacheslav Dikonov made a Braille unicode font that could be merged\nwith the UCS fonts to fill the 2800-28FF range completely. (uniform\nscaling is possible to adapt it to any cell size). He also contributed\na free syriac font, whose glyphs (about half of them) are borrowed\nfrom the \"Carlo Ator\" font freely downloadable from\n<http://www.aacf.asso.fr/>. Vyacheslav also filled in a few missing\nspots in the U+2000-U+27FF area, e.g. the box drawing section, sets of\nsubscript and superscript digits and capital Roman numbers.\n\n\tSyriac\t\t\t\t\t(U+0700-U+074A)\n\tBox Drawing\t\t\t\t(U+2500-U+257F)\n\tBraille\t\t\t\t\t(U+2800-U+28FF)\n\n\n* M.S. Sridhar <mssridhar AT vsnl.com>\n\nM/S Cyberscape Multimedia Limited, Mumbai, developers of Akruti\nSoftware for Indian Languages (http://www.akruti.com/), have released\na set of TTF fonts for nine Indian scripts (Devanagari, Gujarati,\nTelugu, Tamil, Malayalam, Kannada, Bengali, Oriya, and Gurumukhi)\nunder the GNU General Public License (GPL). You can download the fonts\nfrom the Free Software Foundation of India WWW site\n(http://www.gnu.org.in/akruti-fonts/) or from the Akruti website.\n\nFor any further information or assistance regarding these fonts,\nplease contact mssridhar AT vsnl.com.\n\n\tDevanagari\t\t\t\t(U+0900-U+097F)\n\tBengali\t\t\t\t\t(U+0980-U+09FF)\n\tGurmukhi\t\t\t\t(U+0A00-U+0A7F)\n\tGujarati\t\t\t\t(U+0A80-U+0AFF)\n\tOriya\t\t\t\t\t(U+0B00-U+0B7F)\n\tTamil\t\t\t\t\t(U+0B80-U+0BFF)\n\tTelugu\t\t\t\t\t(U+0C00-U+0C7F)\n\tKannada\t\t\t\t\t(U+0C80-U+0CFF)\t\n\tMalayalam\t\t\t\t(U+0D00-U+0D7F)\n\n\n* DMS Electronics, The Sri Lanka Tipitaka Project, and Noah Levitt\n  <nlevitt AT columbia.edu>\n\nNoah Levitt found out that the Sinhalese fonts available on the site\n<http://www.metta.lk/fonts/> are released under GNU GPL, or,\nprecisely, \"Public Domain under GNU Licence\r Produced by DMS\nElectronics for The Sri Lanka Tipitaka Project\" (taken from the font\ncomment), and took the effort of recoding the font to Unicode.\n\n\tSinhala\t\t\t\t\t(U+0D80-U+0DFF)\n       \n\n* Daniel Shurovich Chirkov <dansh AT chirkov.com>\n\nDan Chirkov updated the FreeSerif font with the missing Cyrillic\nglyphs needed for conformance to Unicode 3.2. The effort is part of\nthe Slavjanskij package for Mac OS X,\n<http://www.versiontracker.com/dyn/moreinfo/macosx/18680>.\n\n\tCyrillic\t\t\t\t(U+0400-U+04FF)\n\n\n* Denis Jacquerye <moyogo AT gmail.com>\n\nDenis Jacquerye added new glyphs and corrected existing ones in the\nLatin Extended-B and IPA Extensions ranges.\n\n\tLatin Extended-B                        (U+0180-U+024F)\n\tIPA Extensions\t\t\t\t(U+0250-U+02AF)\n\n\n* K.H. Hussain <hussain AT kfri.org> and R. Chitrajan\n\n`Rachana' in Malayalam means `to write', `to create'. Rachana Akshara Vedi,\na team of socially committed information technology professionals and\nphilologists, has applied developments in computer technology and desktop\npublishing to resurrect the Malayalam language from the disorder,\nfragmentation and degeneration it had suffered since the attempt to adapt\nthe Malayalam script for using with a regular mechanical typewriter, which\ntook place in 1967-69. K.H. Hussein at the Kerala Forest Research Institute\nhas released \"Rachana Normal\" fonts with approximately 900 glyphs required\nto typeset traditional Malayalam. R. Chitrajan apparently encoded the\nglyphs in the OpenType table.\n\nIn 2008, the Malayalam ranges in FreeSerif were updated under the advise \nand supervision of Hiran Venugopalan of Swathanthra Malayalam Computing,\nto reflect the revised edition Rachana_04.\n\n\tMalayalam\t\t\t\t(U+0D00-U+0D7F)\n\n\n* Solaiman Karim <solaiman AT ekushey.org>\n\n\tBengali\t\t\t\t\t(U+0980-U+09FF)\n\nSolaiman Karim has developed several OpenType Bangla fonts and\nreleased them under GNU GPL on <http://www.ekushey.org>.\n\n\n* Sonali Sonania <sonalisonania AT gmail.com> and Monika Shah\n  <monikapatira AT gmail.com>\n\n\tDevanagari\t\t\t\t(U+0900-U+097F)\n\tGujarati\t\t\t\t(U+0A80-U+0AFF)\n\nGlyphs were drawn by Cyberscape Multimedia Ltd., #101,Mahalakshmi\nMansion 21st Main 22nd \"A\" Cross Banashankari 2nd stage Banglore\n560070, India. Converted to OTF by IndicTrans Team, Powai, Mumbai,\nlead by Prof. Jitendra Shah. Maintained by Monika Shah and Sonali\nSonania of janabhaaratii Team, C-DAC, Mumbai. This font is released\nunder GPL by Dr. Alka Irani and Prof Jitendra Shah, janabhaaratii\nTeam, C-DAC, Mumabi. janabhaaratii is localisation project at C-DAC\nMumbai (formerly National Centre for Software Technology); funded by\nTDIL, Govt. of India. Contact:monika_shah AT lycos.com,\nsonalisonania AT yahoo.com, jitendras AT vsnl.com, alka AT ncst.ernet.in.\nwebsite: www.janabhaaratii.org.in.\n\n\n* Pravin Satpute <pravin_ind21 AT hotmail.com>, Bageshri Salvi\n  <sbagrshri AT yahoo.co.in>, Rahul Bhalerao <rahul_pb_india AT\n  yahoo.com> and Sandeep Shedmake <surgs2k47 AT yahoo.co.in>\n\n\tDevanagari\t\t\t\t(U+0900-U+097F)\n\tGujarati\t\t\t\t(U+0A80-U+0AFF)\n\tOriya\t\t\t\t\t(U+0B00-U+0B7F)\n\tMalayalam\t\t\t\t(U+0D00-U+0D7F)\n\tTamil\t\t\t\t\t(U+0B80-U+0BFF)\n\nIn December 2005 the team at www.gnowledge.org released a set of two\nUnicode pan-Indic fonts: \"Samyak\" and \"Samyak Sans\". \"Samyak\" font\nbelongs to serif style and is an original work of the team; \"Samyak\nSans\" font belongs to sans serif style and is actually a compilation\nof already released Indic fonts (Gargi, Padma, Mukti, Utkal, Akruti\nand ThendralUni). Both fonts are based on Unicode standard. You can\ndownload the font files (released under GNU/GPL License) from\nhttp://www.gnowledge.org/Gnoware/localization/font.htm\n\n\n* Kulbir Singh Thind\n\n\tGurmukhi\t\t\t\t(U+0A00-U+0A7F)\n\nDr. Kulbir Singh Thind designed a set of Gurmukhi Unicode fonts,\nAnmolUni and AnmolUni-Bold, which are available under the terms of GNU\nGenerel Public Licens from the Punjabu Computing Resource Center,\nhttp://guca.sourceforge.net/typography/fonts/anmoluni/.\n\n\n* Gia Shervashidze <giasher AT telenet.ge>\n\n        Georgian\t\t\t\t(U+10A0-U+10FF)\n\nStarting in mid-1990s, Gia Shervashidze designed many\nUnicode-compliant Georgian fonts: Times New Roman Georgian, Arial\nGeorgian, Courier New Georgian. His work on Georgian localization can\nbe reached at http://www.gia.ge/.\n\n\n* Primož Peterlin <primoz.peterlin AT biofiz.mf.uni-lj.si>\n\nPrimož Peterlin filled in missing glyphs here and there (e.g. Latin\nExtended-B and IPA Extensions ranges in the FreeMono familiy), and\ncreated the following UCS blocks:\n\n\tLatin Extended-B                        (U+0180-U+024F)\n\tIPA Extensions\t\t\t\t(U+0250-U+02AF)\n\tArrows\t\t\t\t\t(U+2190-U+21FF)\n\tBox Drawing\t\t\t\t(U+2500-U+257F)\n\tBlock Elements\t\t\t\t(U+2580-U+259F)\n\tGeometrical Shapes\t\t\t(U+25A0-U+25FF)\n\n* Mark Williamson\n\nMade the MPH 2 Damase font, from which \n\tHanunóo                                 (U+1720-U+173F)\n\tBuginese                                (U+1A00-U+1A1F)\n\tTai Le                                  (U+1950-U+197F)\n\tUgaritic                                (U+10380-U+1039F)\n\tOld Persian                             (U+103A0-U+103DF)\n\n* Jacob Poon\n\nSubmitted a very thorough survey of glyph problems and other suggestions.\n\n* Alexey Kryukov\n\nMade the TemporaLCGUni fonts, based on the URW++ fonts, from which at one \npoint FreeSerif Cyrillic, and some of the Greek, was drawn.  He also provided\nvaluable direction about Cyrillic and Greek typesetting.\n\n* George Douros\n\nThe creator of several fonts focusing on ancient scripts and symbols.\nMany of the glyphs are created by making outlines from scanned images\nof ancient sources.\n\n\tAegean:   Phoenecian\n\tAnalecta: Gothic                        (U+10330-U+1034F)\n\tMusical:  Byzantine & Western                  \n\tUnicode:  many Miscellaneous Symbols, Miscellaneous Technical,\n\t          supplemental Symbols, and Mathematical Alphanumeric symbols,\n\t\t  Mah Jong, and the outline of the Domino.\n\n* Daniel Johnson\n\nCreated by hand a Cherokee range specially for FreeFont to be \"in line with\nthe classic Cherokee typefaces used in 19th century printing\", but also to\nfit well with ranges previously in FreeFont.\n\tCherokee                                (U+13A0-U+13FF)\n\nNotes:\n\n*: The glyph collection looks license-compatible, but its author has\n   not yet replied and agreed on their work being used in part of\n   this glyph collection.\n\n--------------------------------------------------------------------------\n$Id: CREDITS,v 1.23 2009/01/04 15:57:54 Stevan_White Exp $\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/freefont-20090104/ChangeLog",
    "content": "$Id: ChangeLog,v 1.254 2009/01/04 16:12:59 Stevan_White Exp $\n2009-01-04 Stevan_White\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tAdded 2009 to copyright dates\n\n\t* AUTHORS, CREDITS:\n\n\tRemoved Glagolitic range author\n\n\t* FreeSans.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tAdded some TrueType names\n\n2009-01-01 Stevan_White\n\t* FreeSerif.sfd:\n\n\tRemovde Glagolitic range, since have not (yet) received OK from author.\n\t\n\tAdded some TrueType Names\n\n2008-12-31 Stevan_White\n\t* COPYING:\n\n\tUpdated license to GPL v3\n\n2008-12-30 Stevan_White\n\t* FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tOblique versions of Daniel Johnson's Cherokee.\n\n\t* FreeSerifBold.sfd:\n\n\tCherokee Bold range from Daniel Johnson.\n\n2008-12-27 Stevan_White\n\t* isMonoMono.py:\n\n\t900 EM -> 800\n\n\t* FreeMonoBold.sfd, FreeMonoBoldOblique.sfd:\n\n\tMade glyphs to lie between -200 and 800 EM\n\n\t* isMonoMono.py:\n\n\tcheck that glyphs lie in vertical bounding boxes\n\n\t* FreeMono.sfd, FreeSerif.sfd:\n\n\tExtensible bracket characters didn't exactly line up.  Fixed.\n\tMono: a couple of glyphs had gotten out of their bounding boxes again.\n\n2008-12-26 Stevan_White\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tFinal pre-release cleanup\n\n\t* FreeSerif.sfd:\n\n\tBuginese vowel u was misnamed\n\n\t* FreeMono.sfd:\n\n\tYatcyrillic somehow was a mark character ... fixed\n\n\t* FreeSans.sfd, FreeSansOblique.sfd:\n\n\tHad to un-link references in\n\t        Sans: uni02B2, uni02B5\n\t\tSansOblique: uni0363\n\tbecause validation of the TTF file said the glyph\n\t\t\"is drawn in wrong direction\"\n\tI would have preferred to have understand this...\n\n\t* Makefile:\n\n\tAdded quick test for FontForge version.\n\n\t* FreeMonoBold.sfd, FreeMonoBoldOblique.sfd:\n\n\tRemoved kerning tables (?? what were they doing here anyway??)\n\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tKerning tables for Thai.\n\tHandles one common case: short letter followed by a tall one with\n\tan overhang to the left.\n\n2008-12-25 Stevan_White\n\t* FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifItalic.sfd:\n\n\tMore putzing with kerning tables\n\n\t* FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tCopied kerning classes\n\t\tSerif -> SerifBold\n\t\tSerifItalic -> SerifBoldItalic\n\t\tSans -> SansOblique SansBold SansBoldOblique\n\tSome associated naming of characters, etc\n\n\t* FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tAdditions and correction in Spacing Modifier letters and IPA Extensions\n\n2008-12-23 Stevan_White\n\t* FreeSerif.sfd:\n\n\tApplied patch to Cherokee range\n\n2008-12-20 Stevan_White\n\t* FreeSerif.sfd, FreeSerifItalic.sfd:\n\n\tFixed kern classes that end in space (crashes FontForge)\n\n\t* FreeSerifItalic.sfd, FreeSerif.sfd:\n\n\tkerning\n\n2008-12-19 Stevan_White\n\t* FreeSerifItalic.sfd:\n\n\tkerning\n\n\t* FreeSerif.sfd:\n\n\tkerning\n\tSome adjustments to Glagolitc spacing, mark positioning\n\n2008-12-18 Stevan_White\n\t* FreeSerif.sfd, FreeSerifItalic.sfd:\n\n\tkerning\n\n2008-12-17 Stevan_White\n\t* FreeSerif.sfd, FreeSerifItalic.sfd:\n\n\tkerning\n\n2008-12-11 Stevan_White\n\t* FreeSans.sfd, FreeSerif.sfd:\n\n\tkerning\n\n2008-12-10 Stevan_White\n\t* FreeSans.sfd, FreeSansBold.sfd:\n\n\tkerning\n\n\t* FreeSans.sfd, FreeSansBold.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd:\n\n\tkerning\n\n2008-12-09 Stevan_White\n\t* FreeSerif.sfd, FreeSerifItalic.sfd:\n\n\tkerning\n\n2008-12-08 Stevan_White\n\t* FreeSansOblique.sfd:\n\n\tSlanted small final sigma.  Remedies\n\tbug #24993: U+03C2 \"Greek small letter final sigma\" not slanted in\n\tFree Sans Oblique\n\thttps://savannah.gnu.org/bugs/index.php?24993\n\n2008-12-07 Stevan_White\n\t* FreeSans.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tkerning, etc\n\n2008-12-06 Stevan_White\n\t* FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifItalic.sfd:\n\n\tkerning\n\tTweek in Sans having to do with addition of Latin Extended\n\n2008-12-05 Stevan_White\n\t* FreeSansBold.sfd, FreeSansBoldOblique.sfd:\n\n\tTweeks to Latin Extended Additional\n\n\t* FreeSansBoldOblique.sfd:\n\n\tAdded Latin Extended Additional range\n\n\t* FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd:\n\n\tExtra space at end of kern class names has bad effect on FornForge\n\tscript that try to run through kern classes.  Some FontForge call\n\tcorrupts memory.\n\tGot rid of extra space.\n\n2008-12-02 Stevan_White\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd:\n\n\tReplaced U+0387 GREEK ANO TELEIA with top dot of colon.\n\tSee bug #24987: U+0387 GREEK ANO TELEIA too low\n\thttps://savannah.gnu.org/bugs/index.php?24987\n\n\t* FreeSerif.sfd:\n\n\tmore kerning in Cyrillic (broke into two tables of classes)\n\n2008-12-01 Stevan_White\n\t* FreeSerif.sfd:\n\n\ttweeks to kernin\n\n\t* FreeSerifBoldItalic.sfd:\n\n\tkerning\n\n2008-11-30 Stevan_White\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tKerning for Latin and Cyrillic fairly complete in Serif faces.\n\tComplete in sense that it looks pretty good under Pango for\n\t\tEnglish French German Spanish Polish Czech Latvian\n\tBut have not done Vietnamese (will require many more entries).\n\tI adjust roman and italic, then copy tables by hand to bold and\n\tbolditalic.\n\tMisgiving: bolditalic is much too crammed\n\tOverall, I may have over-kerned.  (A difficult temptation to master.)\n\n\t* FreeSerif.sfd, FreeSerifItalic.sfd:\n\n\tkerning\n\n\t* FreeSans.sfd, FreeSerif.sfd, FreeSerifItalic.sfd:\n\n\tkerning\n\tIn Serif, modified widths of some extended latin glyphs\n\n2008-11-29 Stevan_White\n\t* FreeSerif.sfd:\n\n\tBroke Latin kerning subtable into four, hoping it will be easier to\n\tunderstand and maintain.\n\n\t* FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSerif.sfd,\n\tFreeSerifItalic.sfd, FreeSerifBold.sfd, FreeSansOblique.sfd,\n\tFreeSans.sfd:\n\n\tkerninig\n\n2008-11-28 Stevan_White\n\t* FreeSans.sfd, FreeSerif.sfd:\n\n\tmore kerning;\n\tmade guillemot narrower\n\n\t* FreeSansOblique.sfd, FreeSerif.sfd:\n\n\tprevious commit was incomplete\n\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tAdjusted width of single quotes (and apostrophe) to be \"punctuation width\"\n\tMore fiddling with kerning.\n\n2008-11-27 Stevan_White\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifItalic.sfd:\n\n\tmuch fiddling with kerning\n\n2008-11-26 Stevan_White\n\t* FreeSerifBold.sfd:\n\n\tBasic kerning, named main Cyrillic letters\n\n\t* FreeSerifItalic.sfd:\n\n\tBasic Cyrillic kerning\n\n\t* FreeSerif.sfd:\n\n\tTweeks to Cyrillic kerning\n\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifItalic.sfd, Makefile:\n\n\tMuch fiddling with kerning, tables, and generating fonts whose kerning\n\ttables work with OpenOffice.\n\n2008-11-24 Stevan_White\n\t* FreeSerif.sfd:\n\n\tregularized padding in Miscellaneous symbols.\n\tAt least within related ranges tried to make similar.\n\tMade to validate\n\n2008-11-23 Stevan_White\n\t* FreeSerif.sfd:\n\n\tFilled out Miscellaneous Symbols.  Used George Douros' Unicode font.\n\tCompleted Miscellaneous Symbols, with some drawings from George Douros'\n\tUnicode Symbols, and some of mine.\n\n\t* FreeMono.sfd, FreeMonoOblique.sfd:\n\n\tReplaced Greek Exteded psili and dasia with scaled versions of the\n\t\"bent quote\" mark.  I think it's distinctive enough, but not so silly.\n\t\n\tRemedies bug #22997: Mono: Greek Extended psili is ugly\n\thttps://savannah.gnu.org/bugs/?22997\n\n\t* FreeSerif.sfd:\n\n\tMade some recycling symbols\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd:\n\n\tFinished with Hebrew Pointed letters in all faces.\n\n2008-11-22 Stevan_White\n\t* FreeSans.sfd:\n\n\tFiddled with Hebrew Pointed letters\n\n\t* FreeSerifItalic.sfd:\n\n\tMarks for Vietnamese\n\n\t* FreeSerif.sfd, FreeSerifItalic.sfd:\n\n\tLetter pe had strange thick middle ear that looked awful.  lamed had ben\n\tbumped at some point.  Fixed.  Adjusted some of the points.\n\n2008-11-21 Stevan_White\n\t* FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\trepairs to Pointed Hebrew\n\n\t* FreeSerif.sfd:\n\n\tNumeral line positioning marks for Gothic\n\n\t* FreeSerifItalic.sfd:\n\n\tAdded Combining Marks for Symbols (some question about obliqueness of\n\tsome symbols)\n\tCleaned up some empty glyphs in Pointed Hebrew.\n\n2008-11-20 Stevan_White\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tProvided Hebrew pointed letters, with lookups, for all Serif faces.\n\n2008-11-19 Stevan_White\n\t* FreeSerifBoldItalic.sfd:\n\n\trenamed Hebrew lookups\n\n\t* FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tCompleted Hebrew in Bold faces.\n\n\t* FreeSans.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifItalic.sfd:\n\n\tMore tweeks to Hebrew points\n\n\t* FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSerif.sfd, FreeSerifItalic.sfd:\n\n\tAdjustments corrections and additions to Hebrew points\n\n2008-11-18 Stevan_White\n\t* FreeSansBold.sfd:\n\n\tCleaned out a lot of ridiculous kernings\n\n2008-11-17 Stevan_White\n\t* FreeSansBoldOblique.sfd:\n\n\tfiddled with Armenian ligatures\n\n\t* FreeSansBoldOblique.sfd, FreeSansOblique.sfd:\n\n\tAdded Armenian (with ligatures) to BoldOblique\n\tFiddled with character spacing\n\n2008-11-16 Stevan_White\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tAdded U+01f9 and paragraph end marker to Georgian\n\tFiddled with Armenian ligatures\n\n2008-11-15 Stevan_White\n\n\t* FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd:\n\n\tAnother pass at letter spacing in Cyrillic. \n\tAlso went through ancient letters.\n\t\n\tAdded Georgian paragraph separator 10FB\n\tAdded Georgian turned gan 10F9 (because it was easy)\n\n\tRe-worked letter spacing through modern Cyrillic range.\n\n\t* FreeSans.sfd, FreeSansBold.sfd, FreeSerif.sfd:\n\n\tLetter spacing\n\n2008-11-14 Stevan_White\n\t* FreeSerif.sfd:\n\n\tAdded several characters to Cyrillic Extended-B\n\n\t* FreeSansBold.sfd, FreeSansBoldOblique.sfd:\n\n\tMade Cyrillic hooked e U+04BC-F to look less goofy.\n\n\t* FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd:\n\n\tBased on assertion on Pechatnyj Dvor's web site, Cyrillic Fita\n\tU+0472-3 and \"Barred O\" U+04E8-9 are different styles the same letter,\n\tand the fact that the tilde in the O never looked good in Sans, I\n\tmade them all barred O's.\n\n\t* FreeSerif.sfd:\n\n\tAdded Cyrillic Yn, yn (U+a65e-f)\n\n\t* FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd:\n\n\tSynced up Cyrillic and Combining Diacritics ranges,\n\tCouple of tweeks in Gujarati to make TT validate\n\n\t* FreeSans.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tChanges to older Cyrillic letters, in response to further information.\n\tMade omegas, omegas with titlo, and OT to all be of the same size and\n\tshape in Serif.\n\tUn-linked Cyrillic Psi and psi from Greek, made squarer versions.\n\t\n\tSome more Cyrillic diacritical marks in Sans.  Re-worked U+04bc-f .\n\tExperimenting with mark positioning for Cyrillic\n\n2008-11-12 Stevan_White\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tStrove to make Euro look more like the EC logo design, while making\n\tglyph fit better with the design of its face.  Bug #3576: Euro design\n\t\thttps://savannah.gnu.org/bugs/?23576\n\n\t* FreeSans.sfd, FreeSerif.sfd:\n\n\tAdjustments mostly to GPOS tables having to do with Vietnamese marks.\n\tThe WAZU Vietnamese test page looks pretty good in Sans now.\n\tStill not thrilled with below-dot when it appears with a mark over\n\te.g. U+0102. Pango positions one or the other but not both.\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tExtensive modification of GPOS lookup tables for mark positioning.\n\tI think they're now all functional (except styled Mono faces have none).\n\tAlso added lots of marks to faces that didn't have them, and also\n\tfiddled with Combining Diacritical Marks.\n\n2008-11-10 Stevan_White\n\t* FreeSerif.sfd:\n\n\tMade one combining mark really combining\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd:\n\n\tMade a few combining characters to be zero-width in Mono,\n\tAdded them to other styles.\n\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tFigured out why below marks in Thai weren't working in the lowest\n\tletters.  I think Pango and other font renderers ignore 'blwm'. \n\tHowever, 'mark' works.\n\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tTweeks to Thai marks\n\n2008-11-09 Stevan_White\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tSeveral bugfixes in Thai, mostly having to do with mark placement and\n\tligatures.  Implemented ru-saraaa and lu-saraaa with ligatures.\n\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tadded and named dottedcircle (used by Pango to render\n\tcombining mark base)\n\n\t* FreeSerif.sfd:\n\n\tTweeks to Coptic, after viewing more papyrus samples and web pages.\n\n\t* FreeSerif.sfd:\n\n\tWeight of Coptic small letters made to match that of Latin and Greek ones.\n\n2008-11-08 Stevan_White\n\t* FreeSerif.sfd:\n\n\tMade Coptic to comply better with\n\t\thttp://www.wazu.jp/gallery/Test_Coptic.html\n\tMade a flourish at foot of letters with long diagonal.\n\n\tMore tweeks to Coptic; put in a mark lookup table.\n\t\n\tNote: for small letters I made scaled references to captials.\n\tResults in those letters looking quite light next to the capitals and\n\tnext to small Latin letters.  Also, there are a few variant forms for\n\tcapitals (Unicode samples don't show this).  It would be good to\n\tre-work\n\n\tAdded Coptic alphabet in u+2C80-2CB1 and u+03E2-u+03EF, drawn/built by\n\tme, based on Unicode samples, TeX font copte, and scans at WikiPedia.\n\n2008-11-07 Stevan_White\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tFurther tweeks to dieresis in Greek and Cyrillic\n\n\t* FreeSerif.sfd:\n\n\treplaced Greek I dieresis with references, tweeked height of dieresis.\n\n2008-11-04 Stevan_White\n\t* FreeSerif.sfd:\n\n\tAdded a few Cyrillic Extended-B letters seen in web pages while looking\n\tfor Glagolitic text.\n\n\t* FreeMono.sfd, FreeMonoOblique.sfd:\n\n\tAdded a few old Cyrillic characters.\n\n\t* FreeSerif.sfd:\n\n\tSeveral corrections and tweeks to Glagolitic.\n\tStill missing six slots from Unicode, but don't see them in the TeX\n\tfonts.\n\tOn the other hand, several on-line Glagolitic pages (bibles etc) don't\n\tseem to use these.  Maybe it's OK as-is.\n\n2008-11-03 Stevan_White\n\t* FreeSerif.sfd:\n\n\tAdded lowercase range to Glagolitic, as a facile scaling of the\n\tuppercase.\n\n\tAdded letter to Glagolitic, scaled range.\n\n2008-11-02 Stevan_White\n\t* FreeSerif.sfd:\n\n\tReplaced fraktur bold from Mathematical Alphanumeric Symbols with that\n\tfrom TX Fonts by Young Ryu.\n\tOne concern: letter k is damaged (in both medium and bold).  I just\n\thacked something up.\n\t\n\tAdded Glagolitic \"round type\" font (Croation capitols only) from the\n\tcollection of Croatian fonts for LaTeX by Darko Zubrinić\n\tftp://ftp.dante.de/tex-archive/languages/croatian/\n\thttp://www.tug.org/TUGboat/Articles/tb17-1/tb50zubr.pdf\n\t\n\tSeveral letters are missing besides the small letters.\n\n\t* FreeSerifBoldItalic.sfd:\n\n\tA couple of Thai references got obliqued twice.\n\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tBy popular demand, removed 'ears' from Greek Upsilon and Psi.\n\tCopied resulting glyphs to Serif Mathematical Alphanumeric Symbols.\n\n\t* FreeSerif.sfd:\n\n\tSome pointwise cleanup of main Tamil range\n\n\tTried some things with lookups.  Didn't make much headway.\n\n2008-11-01 Stevan_White\n\t* FreeMono.sfd:\n\n\tsomehow made a letter with wrong width\n\n\t* FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tAdded similar lookups and ligatures to Thai ranges.\n\n\t* FreeSerif.sfd:\n\n\tLookups now work no worse than those for other Thai fonts, at least\n\tin Pango.  Still perplexed by behaviour of \"Required\" lookups.\n\n\tFor Thai, made ligatures and lookups for yoying and thothan combined\n\twith a lower vowel.  These work well.\n\tAttempted looksups for saraaa with ru and lu, and for saraam. \n\tNot working.\n\n\tCleaned up a few of the Bengali ligatures\n\n\t* FreeSerifBold.sfd:\n\n\tTweek Thai\n\n2008-10-31 Stevan_White\n\t* FreeSerif.sfd:\n\n\tFixed ligatures and mark positioning for Hanunóo.\n\tProblem with ligatures: Gnome pango doesn't do 'rlig', only 'liga'\n\n\t* FreeSerifItalic.sfd:\n\n\tChanged lookup table scripts for Devanagari and Bengali.\n\tFind Problems -> ATT found several problems showing lookups acting on\n\tglyphs that weren't listed in the script ranges, including dev2, bng2\n\t(why not deva and beng, I don't know).\n\t\n\tdanda and doubledanda of Devanagari I understand are to be shared among\n\tIndic scripts.  So included bng2 and dev2 in the 'aalt' table for those.\n\t\n\tThe 'init' and 'half' tables for Bengali made active for bng2.\n\t\n\tThe 'locl' table for Bengali didn't do anything I could see: It mapped\n\tthe Devanagari danda to itself, and the doubledanda to itself.  Deleted.\n\n\tCleaned up some kern tables.\n\tadjustments of under 5 EM are invisible.  Some others I just didn't like.\n\tSome were putting a letter beneath another, with is wrong.\n\n\t* FreeSerifBoldItalic.sfd:\n\n\tAdded Thai\n\n\t* FreeSerifBold.sfd, FreeSerifItalic.sfd:\n\n\tChanges to mark positioning lookups, esp. in Italic.\n\tWidened numerals in Bold\n\n2008-10-27 Stevan_White\n\t* FreeSansBoldOblique.sfd, FreeSansOblique.sfd:\n\n\tTweeks regarding Armenian and lookups\n\n\t* FreeSansBold.sfd:\n\n\tAdded Armenian ligatures FB13-FB17 with lookups\n\tAlso made a historical ligature ('hlig') table for u+0587.\n\t\n\tToward bug #15183: missing characters from Armenian range\n\thttps://savannah.gnu.org/bugs/index.php?15183\n\n\t* FreeSansOblique.sfd:\n\n\tAdded Armenian ligatures, lookups.  Cleaned up contours.\n\n\t* FreeSans.sfd:\n\n\tAdded 5 Armenian ligatures to U+FB13 – FB17, and made corresponding\n\t'liga' lookup.  Found there one ligature u+0587 that according to\n\t\thttp://en.wikipedia.org/wiki/Armenian_alphabet\n\t\n\t\"in new orthography the և character is not a typographical ligature anymore, and must never be treated as such. It is a distinct letter and has its place in the new alphabetic sequence.\"\n\tSo moved this out of the 'liga' lookup and into a new 'hlig' lookup.\n\n2008-10-26 Stevan_White\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifItalic.sfd:\n\n\tLots of improvements to Thai.\n\tCompletely revised letter spacing in Italic, and fiddled with combining\n\tmarks in all.\n\tStill aren't working quite right, especially in Italic.\n\tStill need to work over digits (in Bold they aren't even bold yet)\n\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifItalic.sfd:\n\n\tBold Thai : added (painstakingly) constructed glyphs, lookups\n\troman Thai: tweeks\n\tItalic Thai: tweeks (Note this still has multiple problems)\n\n2008-10-25 Stevan_White\n\t* FreeSerif.sfd:\n\n\tWAZU says\n\thttp://www.wazu.jp/gallery/Fonts_Hanunoo.html\n\t\n\tMPH 2B Damase doesn't support the consonant-vowel ligatures necessary\n\tto render Buhid writing.\n\t\n\tOK, so I made 'mark' lookups for combining marks and a bunch of\n\tligatures in an 'rlig' lookup.  The latter still not working:\n\tdon't know why.\n\t\n\tMade page to match the example of the combining forms at\n\thttp://www.omniglot.com/writing/hanunoo.htm\n\n2008-10-24 Stevan_White\n\t* FreeSerif.sfd:\n\n\tRemoved some marks from Mathematical Alphanumeric Symbols\n\n\t* FreeSerif.sfd:\n\n\tTweeked combining marks for Vietnamese.  Made to satisfy\n\t\tWAZU JAPAN Comprehensive Unicode Test Page for Vietnamese\n\t\thttp://www.wazu.jp/gallery/Test_Vietnamese.html\n\tCould still use some tweeking...\n\n\t* FreeSerif.sfd:\n\n\tAdded marks for composition of Vietnamese\n\n\t* FreeMono.sfd, FreeSerif.sfd:\n\n\tPut \"below\" combining mark on lots of vowels and derivatives,\n\tfor Vietnamese.\n\tNamed a bunch of composit Latin, expecting to make substitutions.\n\n2008-10-23 Stevan_White\n\t* FreeSerif.sfd:\n\n\tThai spacing alterations based on advice of a native speaker.\n\n2008-10-22 Stevan_White\n\t* FreeSerif.sfd:\n\n\tre-named Thai lookups according to order\n\n2008-10-21 Stevan_White\n\t* FreeSans.sfd:\n\n\tCleanup of glyphs in Gujarati, Devanagari.\n\t\n\tNote:  Serious problem with Sans GPOS abvm in Devanagari\n\t\"'abvm' Above Base Mark in Devanagari subtable\" \"gujr-0\"\n\tBut all the characters that list gujr-0 are in Gujarati.\n\tNot sure how this got broken or how to fix it.\n\n\t* FreeSerif.sfd:\n\n\tFiddled with Thai mark positioning: passes my tests now OK.\n\tMade a few more references in Math Symbols; more regularization of\n\tstroke.\n\n\t* FreeSerif.sfd:\n\n\tAdded mark class for Vietnamese \"horn\"\n\tSeveral references made in General Punctuation, Arrows\n\n\t* FreeMono.sfd:\n\n\tadded some Combining Diacritical Marks\n\n2008-10-20 Stevan_White\n\t* FreeSerif.sfd:\n\n\tMade some references from serifed Latin capitals to Greek counterparts.\n\n\t* FreeSerif.sfd:\n\n\tMade a few repeated glyphs into references in Musical Symbols\n\n2008-10-19 Stevan_White\n\t* FreeSerif.sfd:\n\n\tMoved several glypns from Mathematical Alphanumeric Symbols to\n\tLetterlike Symbols.\n\tCouple tweeks in Mathematical Symbols.\n\n\t* FreeMono.sfd, FreeSerif.sfd:\n\n\tFiddling with Mathematical Symbols.\n\tIn Serif, trying to make stroke width more consistent.\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd:\n\n\tAdded some Greek symbols in Mono and Sans to make a little more regular\n\tand correspond better with TeX.\n\tTweek of serif.\n\n\t* FreeSansBold.sfd:\n\n\ta few more improvements.\n\t\n\tOne problem with the Mathematical Alphanumeric area is, one must\n\tremember to change it any time another face is altered...\n\n\t* FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSerifBold.sfd:\n\n\tSeveral improvements and additions to Sans faces (mostly in Greek) from\n\texperience of pasting into FreeSerif Mathematical Alphanumeric Symbols.\n\n\t* FreeSerif.sfd:\n\n\tReplaced most of Mathematical Alphanumeric Symbols\n\t\troman italic bold (latin and greek)\n\t\tgothic italic bold (latin and greek)\n\t\ttypewriter\n\t\tand numerals\n\twith glyphs from FreeFont.  These were scaled to uniform height.\n\t\n\tRemains: Blackboard Bold, Fraktur, Calligraphic, Script\n\n\t* FreeSerif.sfd:\n\n\tTidied lookup table names for Malayalam\n\n\t* FreeSerif.sfd:\n\n\tApplied Malayalam patch from Hiran Venugopalan\n\n\t* FreeMono.sfd:\n\n\tAdded/corrected many Mathematical Symbols\n\n\t* FreeSansOblique.sfd:\n\n\tmore IPA\n\n2008-10-18 Stevan_White\n\t* FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd:\n\n\tMade lots more IPA and Phonetic Extensions\n\tNote: fontforge is reporting an error in a few glyphs made by scaling\n\tanother, that the glyphs are drawn in the wrong direction--only in\n\tTrueType though.  Suspect a FontForge bug.\n\n\tAdded several Combining Diacritical Marks\n\n2008-10-17 Stevan_White\n\t* FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd:\n\n\tMade several Spacing Modifier Letters, Combining Diacritical Marks,\n\tand IPA and Phonetic Extensions\n\n2008-10-16 Stevan_White\n\t* FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tAdded some Superscripts and Subscripts\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd:\n\n\tFinished off Superscripts and subscripts\n\n\tCompleted General Punctuation for Mono faces\n\n\tAdded some General Punctuation\n\n2008-10-15 Stevan_White\n\t* FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd:\n\n\tmore Letterlike Symbols, Currency Symbols\n\n\t* FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd:\n\n\tMade some Combining Diacritical Marks for Symbols, Letterlike Symbols\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd:\n\n\tAdded some General Punctuation\n\n2008-10-14 Stevan_White\n\t* FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd:\n\n\tAdded double slanted hyphen, made General Punctuaton Supplement like\n\tSerif's\n\n\t* FreeSansBoldOblique.sfd:\n\n\tFilled out Greek Extended\n\n\t* FreeMono.sfd, FreeSerifItalic.sfd:\n\n\tfixes to last 2 commits\n\n\t* FreeSerifItalic.sfd:\n\n\tLast character to General Punctuation\n\n\t* FreeMono.sfd:\n\n\tBuilt some Enclosed Alphanumerics (1-10)\n\n\t* FreeSerif.sfd:\n\n\tCopied in Daniel Johnson's changes to Cherokee.\n\n2008-10-12 Stevan_White\n\t* FreeSerif.sfd:\n\n\tIncluded Daniel Johnson's Cherokee glyphs.\n\n2008-10-05 Stevan_White\n\t* FreeMono.sfd:\n\n\tFurther corrections to diaresis in Cyrillic -- legibility in small sizes\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoOblique.sfd, FreeSerif.sfd:\n\n\tRegularized placement of diaresis in Cyrillic\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tAdded same set of glyphs to Cyrillic Supplement\n\n\t* FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd:\n\n\tAdded some of the easier letters from Cyrillic Supplement\n\n2008-10-04 Stevan_White\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeSerifItalic.sfd:\n\n\tFinished high Cyrillic range for MonoBold and MonoBoldOblique.\n\t(Remaining: historic ranges, Cyrillic extensions)\n\tTweeked others.\n\n\t* FreeMonoBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tSerif*Italic: Added last Abkhazian letters to Cyrillic\n\tMonoBold: tweek\n\n2008-10-03 Stevan_White\n\t* FreeMono.sfd, FreeMonoOblique.sfd, FreeSerif.sfd, FreeSerifBoldItalic.sfd:\n\n\tMono: Some additions to historic letters\n\n\t* FreeSerif.sfd:\n\n\tAdded some punctuation and combining numeric marks from\n\tCyrillic Extended B\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tVarious technical tweeks, mostly concerning recent additions.\n\tAlso did a bit more \"Points too close\" and \"irrelevant control points\".\n\tCyrillic millions redesign meant could not maintain use of refrences\n\tfor it.\n\n\t* FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tMore high Cyrillic\n\tIncluded old Cyrillic millions combining mark in Sans, changed design\n\tin Serif\n\n2008-10-02 Stevan_White\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd:\n\n\tMore high Cyrillic\n\n\t* FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerifBoldItalic.sfd:\n\n\tMore high Cyrillic glyphs\n\n\t* FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tMore glyphs in high Cyrillic.  Remains only some whose form I'm unsure\n\tof in italic.\n\n\t* FreeSerifBoldItalic.sfd:\n\n\tMore glyphs in higher Cyrillic range\n\n\t* FreeSerifItalic.sfd:\n\n\tSame process of tightening el, em, ge (but a P.S. to previous commit:\n\talso did ya, ze for SerifBold.)\n\n\t* FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tBoldItalic:  Tightened up spacing on left of el, em, ge (could go\n\tfarther, but it is partly a problem with glyph design...\n\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tMore additions to Cyrillic.  Finished SerifBold except for Nivkh\n\tadditions.\n\tUsed references on number combining forms.\n\n2008-09-30 Stevan_White\n\t* FreeSerif.sfd:\n\n\tAdded four (obsolete) Chuvash letters to Cyrillic Supplement\n\t- completing it.\n\n2008-09-29 Stevan_White\n\t* FreeSerif.sfd:\n\n\tGreek adjustments\n\tAdjusted spacing of kappa slightly\n\tGot rid of ears on Psi, following similar request for Upsilon.\n\n2008-09-28 Stevan_White\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd:\n\n\tAdding and fiddling with Spacing Modifiers and Combining Diacriticals\n\n\t* FreeSans.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tRevisions of several Combining Diacritical marks\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd:\n\n\tA few Combining Diacriticals and Spacing Modifiers\n\n\tMonoBoldOblique: Primarily filling out Spacing Modifier Letters\n\tothers: little fixes found along the way\n\n2008-09-27 Stevan_White\n\t* FreeSerif.sfd:\n\n\tReplaced Malayalam range with that from Rachana_04 found on\n\tSwathanthra Malayalam Computing project page\n\t\thttp://savannah.nongnu.org/projects/smc/\n\tBesides scaling and converting to cubic, performed much clean-up of\n\tglyphs, added an r2 character, and re-named a bunch of characters.\n\n2008-09-22 Stevan_White\n\t* FreeSerif.sfd:\n\n\tFilled in as much of Phonetic Extensions as I could without artistic\n\tabilities.\n\tNote 1D48-9 are not references due to apparent FontForge bug, that says\n\tscaled references go in wrong direction.\n\n\t* FreeSerif.sfd:\n\n\tCleaup of some Bengali glyphs.\n\tNote many of the ligatures remain very very messy.\n\n\t* Makefile:\n\n\tadded more validations\n\tmade to work with GenerateOpenType\n\n\t* FreeSerif.sfd:\n\n\tBuilt two more easy Phonetic Extensions\n\n\t* FreeSerif.sfd:\n\n\tBuilt some Phonetic Extensions letters, those with middle tilde\n\n2008-09-21 Stevan_White\n\t* FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd:\n\n\tAdded lots of Spacing Modifier Letters and Combining Diacritical Marks.\n\n\t* FreeMono.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSerif.sfd:\n\n\tWrote script to check if glyph encodings were in stated ranges, fixed\n\tmost discrepancies.\n\t\n\tThere were a bunch of incompletely deleted characters in several faces.\n\t\n\tSans: found several other problems in the process\n\t# Tamil\n\tFour slots labelled 0BDA-D have glyphs, not in Unicode.  also 0BE1\n\tI think they are misplaced; added 0010 to each of them\n\t\n\t# Devanagari\n\tSlot labelled U+093B is not in Unicode--can't find glyph: deleted\n\tlikewise 094F (may have been meant to be 0954)\n\t0955, 0973-0976\n\t\n\t0954 should be a combining mark, but it appears on the wrong side of 0.\n\t0971 was just wrong--made into simple dot.\n\t0972 is also wrong--made my own Candra A.\n\t\n\t# Gujarati\n\tSlots labelled 0AE4-5 are not in Unicode; seem not to belong at all.\n\tDeleted.  2800 is a dup of 2790.  Deleted\n\t\n\tSerif: phillipine_double u1736 was misplaced\n\t\n\tA bunch of the Math Alphanumeric symbols are empty in the standard,\n\tbecause they're represented elsewhere.  These should be deleted\n\tFirst need to make style consistent with existing symbols.\n\n\t* FreeSerif.sfd:\n\n\tApplied patch from Daniel J\n\tRemedies bug\n\t\tFreeSerif: Missing glyphs with palatal hook\n\t\thttps://savannah.gnu.org/bugs/index.php?24298\n\tAdding several letters to Phoenetic Extensions range U+1D80-BF\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd:\n\n\tMade four characters U+200C-F to be zero-width\n\tRemedy to bug #23593: Mono 0-width chars: zero-width or space?\n\t\thttps://savannah.gnu.org/bugs/index.php?23593\n\n\t* FreeSerif.sfd:\n\n\tMade Mahjong tiles to take up less space using references\n\tCleaned up several validation problems\n\n2008-09-19 Stevan_White\n\t* FreeSerif.sfd:\n\n\tAdded several Hebrew Alphabetic Presentation Forms (some easy ones), to\n\tmake its coverage the same as Serif Bold.\n\n\t* FreeSerifBold.sfd:\n\n\tRe-encoded.\n\tDeleted several glyphs in Hebrew Alphabetic Presentation Forms that\n\tdidn't correspond valid Unicode\n\n\t* FreeMonoBold.sfd, FreeSans.sfd, FreeSerifItalic.sfd:\n\n\tRan script to find mis-numbered glyphs.  Several were simply typos,\n\tsome offset by one.\n\n\t* FreeSansOblique.sfd:\n\n\tNumerous cases of glyphs in Private Use area incorrectly assigned\n\tUnicode numbers and names.  Gave all -1 for Unicode and named like\n\t\"slot.XXXX\".\n\n\t* FreeSerif.sfd:\n\n\tAdapted Mahjong Tiles from George Douros' Unicode Symbols font.\n\n\t* FreeSerif.sfd:\n\n\tAdded Domino Tiles.  Domino outline is copied from George Douros'\n\tUnicode Symbols, but the rest I preferred to do with references.\n\n2008-09-18 Stevan_White\n\t* FreeSerif.sfd:\n\n\tAdapted Mathematical Alphanumeric Symbols from George Douros' Unicode\n\tSymbols font.\n\n\t* FreeMonoBoldOblique.sfd:\n\n\tThis one got away from me--I don't know what I did.\n\tLooks like some small contour edits.\n\n\t* FreeSansBoldOblique.sfd:\n\n\tFixed one mis-numberd character in Latin Extended-B\n\n\t* FreeSerifBold.sfd, FreeSerifItalic.sfd:\n\n\tFixed several mis-numbered characters.\n\n\t* FreeSansBold.sfd:\n\n\tSansBold: one Georgian letter with no name, one Zapf Dingbat was\n\tunnumbered\n\tATT test shows a bunch of problems with Gurmukhi and 'blwf' table\n\tindeed shows those letters at 0x10000+\n\tSans names them like uni0A30_uni0A4D.blwf: they are in range\n\tECC6 to ED06\n\t\n\tI meant to move this range into Private Use in last release, and\n\tmissed it.  So now it is moved, into same range as Sans.\n\t\n\tBoth Sans and SansBold in nukt table for Gurmukhi have duplicate\n\tentries for uni0A15 uni0A3C.  Deleted dups.\n\n\t* FreeMonoOblique.sfd:\n\n\tfixed a number of Unassigned Code Points in Greek Extended\n\n\t* FreeSansOblique.sfd:\n\n\tmis-numbered Combining Diacritics\n\n\t* FreeSansOblique.sfd:\n\n\tSeveral chars in Latin Extended hadn't been named.\n\tOne spurious letter in Letterlike Symbols\n\n2008-09-16 Stevan_White\n\t* FreeMono.sfd, FreeSans.sfd, FreeSerif.sfd:\n\n\tLots of additions: unless otherwise noted, they are from George Duros'\n\tfonts Analecta, Music, and Unicode (haven't got final confirmation of\n\tthe eligibility of these glyphs, so this is just for testing.)\n\t\n\tAdded some combining marks, fiddled a bit.  In both Serif & Mono, tried\n\tto get a key symbol characters to fit inside the key combining mark\n\t\n\tSerif\n\tGot rid of ears on Upsilon\n\tAdded:\n\t        # Gothic\n\t\t# Western & Byzantine Musical Symbols\n\t\n\t\t# Misc Symbols, Misc Technical Symbols (drew many myself)\n\t\t# Supplemental Symbols and Arrows\n\t\n\tMono\n\tAdded:\n\t\t# lotsa Misc Technical Symbols\n\t\t# OCR Symbols\n\t\t# drew many Supplemental Symbols and Arrows, Misc Technical\n\t\n\tSans\n\tAdded\t# Phoenecian\n\tMade a few Letterlike Symbols; Made Re and Im to be sans-serif.\n\n2008-09-11 Stevan_White\n\t* FreeSerif.sfd:\n\n\tRemoved pointless entries from Latin kern table\n\t\n\tTidied points in Sinhala\n\n2008-09-07 Stevan_White\n\t* FreeSerif.sfd:\n\n\tTidied up Tamil ligatures EEA8-EEAB to fix TT build warning\n\t\t\"MonotonicFindAlong: Never found our spline.\"\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeSans.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, Makefile:\n\n\t\n\tAdded APL characters to FreeMono (why?...)\n\t\n\tFixed several last-minute problems, including\n\t\n\tSerif: Tweeked GPOS mark table for Cyrillic\n\tSans: Added a GPOS table for Cyrillic (but several diacritics missing)\n\t\n\tSerif, Mono: tweeked some bugs in extensible brackets & integrals\n\t\n\tSerif: Vietnamese o circumflex: accent was a bit high. fixed.\n\t\n\tMonoBoldOblique OTF build\n\t\tuni213b intersects self\n\t\n\tGeneration of TT fonts complains about several things to stderr,\n\tincluding:\n\t\n\tSerifBold: \"There exists a 'fpgm' code that seems incompatible with FontForge's. Instructions generated will be of lower quality. If legacy hinting is to be scrapped, it is suggested to clear the `fpgm` and repeat autoinstructing. It will be then possible to append user's code to FontForge's 'fpgm', but due to possible future updates, it is extremely advised to use high numbers for user's functions.\"\n\tProbably has been there since I first copied the TT instructions in. \n\tJust repeated the copying process carefully, and the warning went away.\n\t\n\tSerif:  \"FindMatchingHVEdge fell into an impossible position\"\n\t        fixed a bunch of point too close\n\t\n\tREMAINING PROBLEM in Serif TT build\n\t\t\"MonotonicFindAlong: Never found our spline.\"\n\t\t        fixed several bad TT matrices-- there are several more\n\t\t\tfixed many \"control points too close\" no luck\n\n2008-09-03 Stevan_White\n\t* FreeSans.sfd, FreeSansOblique.sfd:\n\n\tAdded/corrected some Misc. Symbols by copying from Serif.\n\tNote this is only a stopgap solution.  Want real sans-serif symbols.\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tAdded minimal Miscellaneous Symbols: card suites and some musical notes.\n\tNote not happy with shapes...some I just drew.  Sans isn't really sans.\n\t\n\tFixed one APL symbol in Mono so it verified in OTF version\n\n2008-08-31 Stevan_White\n\t* FreeMono.sfd:\n\n\tBuilt set of APL symbols.\n\n2008-08-30 Stevan_White\n\t* FreeSans.sfd:\n\n\tUn-linked references in uni02B2 and uni02B5, because when validating the\n\tTrueType version, FontForge gave an error \"is drawn in wrong direction\".\n\tI suspect a bug in FontForge.  Other similar glyphs make no errors.\n\n\tFixed missing extrema in TrueType.\n\tThese were the last cases being reported by validate in all the faces.\n\n\t* FreeSerifItalic.sfd:\n\n\tfixed last missing extrema in TrueType\n\n\t* Makefile:\n\n\trestructured validation to look in a directory\n\n\t* FreeSans.sfd, FreeSansOblique.sfd, FreeSerif.sfd:\n\n\tFixed missing extrema in TrueType versions\n\n2008-08-15 Stevan_White\n\t* FreeSans.sfd:\n\n\tSame problem with uni0A83 as with bn_llikaar.  Just made zero-width.\n\n2008-08-14 Stevan_White\n\t* FreeSans.sfd, FreeSansOblique.sfd:\n\n\tGlyph bn_llikaar, U+09E3 BENGALI VOWEL SIGN VOCALIC LL,\n\thas right bound positioned far into the negative.  Causes a warning in\n\tFontForge when opening OTF version.\n\tComparing with other fonts supporting Bengali, found no others that\n\tdo this.\n\tSerif makes glyph width 0 (which sounds right according to Unicode)\n\tand puts glyph wholly to left of 0.  But, I haven't found this letter\n\tin text anywhere.  I wonder if it is really used in writing.\n\n\t* FreeSans.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifItalic.sfd:\n\n\tFurther TrueType validation fixes. \n\tSans still has two glyps in wrong direction.\n\n\t* FreeSans.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tFixed more TrueType problems...all missing extrema in TTF validation\n\n2008-08-13 Stevan_White\n\t* FreeSans.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tfixed all the TrueType validation problems of type \"intersects itself\"\n\tand all but two of the \"wrong directions\", as well as a lot of\n\t\"missing extrema\".  But there remain hundreds of missing extrema in the\n\tTrueType version.\n\tAlso, bn_llikaar in Sans and Oblique still has a problem in OTF version.\n\n\t* FreeMono.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd:\n\n\tMade .ttf files to validate.  Other faces have many more problems still.\n\n2008-08-12 Stevan_White\n\t* FreeMonoOblique.sfd, FreeSerif.sfd, FreeSerifItalic.sfd:\n\n\tContinuing to make OTF versions validate.\n\t\n\t* FreeMonoOblique.sfd:\n\t\tlots of missing points at extrema\n\t* FreeSerif.sfd:\n\t\t12 wrong directions, 1 missing extrema\n\t* FreeSerifItalic.sfd:\n\t\tmany missing points at extrema, 1 self-intersecting\n\t\n\tWhat was wrong: in several oblique cases, an already-italic glyph was\n\tmade more italic, thereby fouling up extrema (although why it passed\n\tvalidation in the SFD I don't know).  Some glyphs were\n\toverly-complicated with many near points.  Cleaned up, rounded to int.\n\t\n\tRemaining problem: OTF FreeSansOblique FreeSans. one Bengali glyph in\n\teach whose advance width and htmx don't match.\n\t\n\tMoral of story: validate the OTF and TTF versions too before a release.\n\n\t* FreeSansOblique.sfd:\n\n\tReverse a mistake from last commit: somehow this file was converted to\n\tquadratic, or something.\n\n2008-08-11 Stevan_White\n\t* FreeMonoBoldOblique.sfd, FreeSans.sfd, FreeSansOblique.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd:\n\n\tFound that SFD files that validated produced OpenType files that don't.\n\tThese represent the easy fixes.  Some were result of conversion to\n\tquadratic; some shouldn't have validated in the SFD...\n\t\n\t* MonoBoldOblique: uni0250 missing pts at extrema [reference glyph rotated...]\n\t* Sans:            uni0AC4 wrong direction [simplified, rounded to int]\n\t* SansOblique:     uni01EA wrong direction [rounded to int]\n\t* SerifBold:       uni023f wrong direction [round to int]\n\t* SerifBoldItalic: uni0245 missing pts at extrema [ungrouped ref, added extrema]\n\n2008-08-06 Stevan_White\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoOblique.sfd:\n\n\tRe-set font metrics, which were somehow making uneven vertical spacing.\n\n2008-06-22 Steve White\n\t* FreeSerifBold.sfd, FreeSerifBoldItalic.sfd:\n\n\tMade to validate\n\n\t* ranges.py:\n\n\tBrought more into line with OpenType\n\tAdded some ranges\n\tFixed bug with ranges outside of font\n\n\t* CREDITS:\n\n\t3 new ranges\n\n\t* FreeSerif.sfd, FreeSerifItalic.sfd:\n\n\tCyrillic: tweeked accents for consistency, and for readability in small\n\tsizes.\n\n\t* FreeSerif.sfd:\n\n\tThanna range: tweeking\n\n\tThaana range: Scaled up by about 15%, raised by 100EM, tightened\n\tsome of the diacritics to get inside 900 to -300 EM limits.\n\n\t* FreeSans.sfd:\n\n\tAdded Old Persian and Ugaritic from MPH2BDamase font.\n\n2008-06-21 Steve White\n\t* FreeSerif.sfd:\n\n\tAdded Tai Le range adapted from MPH2BDamase font.\n\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd:\n\n\tAdded some ancient Greek numerals from Tempora to high Unicode area,\n\t(partly just to show it can now be done.)\n\n\t* FreeSerifItalic.sfd:\n\n\tCouple of tweeks putting glyphs above -300EM.\n\n\t* FreeSerif.sfd, FreeSerifItalic.sfd:\n\n\tSurgery to Thai letter 'tho than', u+0e10, to push it above -300 EM.\n\tThis makes Thai range completely between 900 and -300 EM.\n\n\t* FreeSans.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifItalic.sfd:\n\n\tMany auxilary characters (esp. for Malayalam, Bengla, and Tamil)\n\trepresenting ligatures and alternative forms without their own Unicode,\n\twere moved from\n\tranges above 0xFFFF (which ought to have been slots for other defined\n\tUnicode ranges) into the Private Use area.\n\t\n\tIn Serif, I segregated the scripts, in Sans it was hard to see where one\n\tbegan and another ended, so I moved them en masse.\n\t\n\tNote several problems with wrongly-named characters:\n\tI already re-named glyph570 and glyph582.\n\tBut there are others with names starting with A...\n\n\t* FreeSansBold.sfd, FreeSansOblique.sfd:\n\n\tFixed (I hope the last) problem with scripts in lookups\n\tFind Problems -> ATT (all selected) finds multiple issues,\n\t\n\t* FreeSansBold.sfd:\n\tIn addition to script 'guru', added 'gur2' to the scripts for these\n\tlookups\n\t\t'nukt' Nukta forms in Gurmukhi\n\t\t'blwf' Below Base Forms in Gurmukhi\n\t\t'pstf' Post Base Forms in Gurmukhi\n\t\t'blws' Below Base Substitutions in Gurmukhi\n\t\t'abvs' Above Base Substitutions in Gurmukhi\n\t\t'psts' Post Base Substitutions in Gurmukhi\n\t\n\t* FreeSansOblique.sfd:\n\tIn addition to script 'beng', added 'bng2' to the scripts for the lookup\n\t\t'half' Half Forms in Bengali\n\t\n\tMoreover, the lookup\n\t\t'aalt' Access All Alternates in Latin\n\tcontains only Bengali letters.\n\tRe-named as Bengali, made to work on beng, bng2 scripts\n\n2008-06-20 Steve White\n\t* FreeSerif.sfd:\n\n\tScaled Sinhala range.\n\tRemedies bug #23656: Sinhala letters over-sized\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tMostly messing with Greek Extended accents again.\n\tre-positioned ypogegrammani on advice of Alexey Kryukov\n\tPut prosgegrammani beneath main letters in Mono, to make narrower glyphs\n\tImplemented more distinction between tonos and acute.\n\n2008-06-19 Steve White\n\t* FreeMonoBoldOblique.sfd:\n\n\tCompleted fit of Mono to 800 to -200 EM.\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoOblique.sfd:\n\n\tSet Metrics to recommended values\n\n\t* FreeMonoOblique.sfd:\n\n\tNow Mono Oblique, as well as roman and Bold, are within 800 to -200 EM.\n\tJust BoldOblique to go.\n\n\t* FreeMono.sfd, FreeMonoBold.sfd:\n\n\tMore toward fitting to 800 to -200 EM.\n\tBasically, reduced Georgian by 92%.\n\tAlso made an over-all offset, so Georgian is somehow centered (Bold...I\n\tguess I already did this in roman).\n\tWant to also do an emboldening to make stroke like rest of font, but\n\tcurrent FontForge has a nasty crash that loses data on this function.\n\n\t* FreeMono.sfd:\n\n\tIn effort to make fit in 800 to -200 EM,\n\tScaled Georgian by 92%, centered on 600 wide box.\n\tNext: Embolden a bit.\n\n2008-06-18 Steve White\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd:\n\n\tToward making all glyphs lie between -200 and 800 EM.\n\tNumerous small changes, especially raising descenders of some Hebrew\n\tletters.\n\tGeorgian remains a problem\n\n2008-06-13 Steve White\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tMoved prosgegrammeni up to baseline,\n\t(and then moved all references down to baseline)\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tAdded Control Picture \"blank\" to all faces.\n\tSwitched U+0222-3 from TemporaLGCUni\n\n2008-06-11 Steve White\n\t* FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tMore fiddling with Greek Extended accents\n\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tTweeks to accents etc in Greek Extended and Cyrillic\n\n2008-06-10 Steve White\n\t* FreeSerifBold.sfd, FreeSerifItalic.sfd:\n\n\tFixed a few big horizontal spacing problems\n\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tImplemented TemporaLCGUni glyphs in Cyrillic ranges.\n\tAdded a breve_cyrillic for the moustache breve mark.\n\n2008-06-08 Steve White\n\t* FreeSerif.sfd:\n\n\tReplaced most of Cyrillic range with TemporaLGCUni.\n\tRemodelled many of the derived Cyrillic characters after these.\n\tFiddled globally with spacing of small letters.\n\tUnclear on diacritics 485-6, unhappy with breve.\n\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tStarted implementing TemporaLCGUni in Greek ranges.\n\t\n\tReplaced 3DC-3E1 from Tempora, because I thought they looked nicer and\n\tmore like the other existing FreeFont glyphs.\n\tReplaced 3DA-B from Tempora, because they look more like Unicode\n\tsamples, and nicer.\n\tAdded 03f3-4, 03F7-F.\n\tPrefer my own lunate epsilon.\n\tReplaced Phi and Omega from Tempora.\n\tThese plainly fit the other FreeFont glyphs better than the origninals.\n\t(How did this happen?)\n\t\n\tIn bold, replaced U+03D7\n\t\n\tCopied lbbar u+2114\n\n\tSmall italic greek--replaced most except phi, psi, omega\n\t\n\tBased on new information, broke the identification of oxia with Latin\n\tacute.\n\n2008-06-07 Steve White\n\t* FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd:\n\n\tEfforts to control heights of characters\n\n2008-06-06 Steve White\n\t* FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd:\n\n\tMade to validate\n\n2008-06-05 Steve White\n\t* FreeSans.sfd:\n\n\tFixed undefined character in kerning classes\n\n2008-06-04 Steve White\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd:\n\n\ttweeks and additions to General Punctuation\n\n2008-06-03 Steve White\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSansOblique.sfd:\n\n\tCompleted/tweeked Number Forms\n\n\t* FreeMono.sfd, FreeSerif.sfd:\n\n\tAdded some Miscellaneous Technical symbols\n\n2008-06-02 Steve White\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd:\n\n\tTweeks...mostly Letterlike\n\n2008-06-01 Steve White\n\t* FreeMono.sfd, FreeSerif.sfd:\n\n\tAdded Box Drawing characters to Serif.\n\tTweeked a glyph in Mono\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tAdded several glyphs to Letterlike Characters\n\n2008-05-31 Steve White\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tValidation pass\n\t\n\tSansOblique and SansBoldOblique had validation problem with BlueValues\n\t\tPrivate Dictionary\n\t\tElements in BlueValues/OtherBlues array are disordered\n\t\tElements in BlueValues/OtherBlues array are too close\n\t\t(Change BlueFuzz)\n\t\tStemSnapV does not contain StdVW value.\n\tSo I ordered the array, and based on other slanted fonts,\n\tremoved StemSnapV.\n\t\n\tNote however, I still think the two top Blues lines are too close\n\tBut I don't even know what the second-to-top line is meant to do.\n\n\t* FreeSerif.sfd:\n\n\tAdded to Block Elements, Geometric Shapes\n\tMade to validate\n\n2008-05-29 Steve White\n\t* FreeMono.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tLooking at special symbols.\n\tDrew several Miscellaneous Symbols in Mono and Serif\n\t> Completed/corrected planetary symbols, added Dice,\n\tsome other easy ones\n\t> Completed Dingbats in Serif (using URW Dingbats)\n\tAdded some Block Elements to Serif\n\n2008-05-26 Steve White\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tMore changes stemming from J. Poon's report.\n\n2008-05-25 Steve White\n\t* FreeSerif.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tHeight surgery on SerifBoldItalic.\n\tMore fiddling with accents in others.\n\n\t* FreeSerifItalic.sfd:\n\n\tMore height surgery.  Only a few left in Benglai and Thai\n\n\t* FreeSerifBold.sfd:\n\n\tRe-applied surgery to make glyphs between 900 and -300EM\n\n\t*** Regression\n\tInadvertently un-linked all references in SerifBold in r1.83.\n\tThis reverses that error (but also un-does the surgery mentioned there)\n\n\t* FreeSerifBold.sfd, FreeSerifItalic.sfd:\n\n\tApplied surgery to make Latin letters go under 900EM. \n\tOne exception yet...\n\n2008-05-24 Steve White\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tSerif: much fiddling with accents in Latin ranges.\n\tRe-thought some glyphs (there are still a few messy ones, especially\n\tin bold)\n\tChecked horizontal spacing...fixed a number of problems.\n\n2008-05-23 Steve White\n\t* FreeSansBold.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd:\n\n\tMade Latin Extended-B coverage consistent across Serif; cleaned up some\n\tglyphs\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd:\n\n\tFilled more of General Punctuation in Sans and Serif\n\tMade all agree on coverage of Latin Extended Additional\n\n2008-05-22 Steve White\n\t* FreeSans.sfd, FreeSansBold.sfd, FreeSansOblique.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd:\n\n\tAdded Latin Extended Additional to SansOblique.\n\tMade Latin Extended Additional coverage consistent across Sans, B, I\n\tMade Latin Extended-B coverage same in SerifBold.\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeSansBold.sfd:\n\n\tMono* made Latin-B coverage consistent across faces\n\n\t* FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd:\n\n\tMade set of Latin Extended-B consistent across Sans faces\n\n\t* FreeSans.sfd, FreeSansBold.sfd:\n\n\tMore filling in General Punctuation\n\n\t* FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tAnother bunch of J. Poon's reports\n\talso, filling in some Combining Diacriticals, Spacing Modifiers, and\n\tGeneral Punctuation in bold faces\n\n2008-05-21 Steve White\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeSans.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tMucking about with mark tables in Thai (Serif)\n\tOther faces: Making changes from J. Poon's report\n\n2008-05-20 Steve White\n\t* CREDITS:\n\n\tMark Williamson\n\tJacob Poon\n\n\t* Makefile:\n\n\tadded tests target\n\n2008-05-18 Steve White\n\t* ranges.py:\n\n\tPut table explanation back in\n\n\tImproved behaviour for high Unicode\n\n\t* FreeSans.sfd:\n\n\tRevision of kerning\n\n\t* FreeSerif.sfd:\n\n\tMade Latin kerning a little more reasonable:\n\t\treduced many excessive kerns (some had letters apparently\n\t\t\toverlapping, which shouldn't happen)\n\t\tmade kerns increment by 5EM for ease of reading\n\t\tgot rid of kerns too small to be seen\n\n\t* FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSerifBold.sfd:\n\n\tMade to verify\n\n2008-05-13 Steve White\n\t* FreeSerif.sfd:\n\n\tMade to validate\n\n\t* FreeSerif.sfd:\n\n\tGurmukhi: filled range in Serif, taking glyphs from the original\n\tPunjabi font by Hardip Singh Pannu\n\thttp://members.aol.com/hspannu/punjabi.html   (file pb_win95.exe)\n\n2008-05-12 Steve White\n\t* FreeSans.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd:\n\n\tHebrew, basic.  Some faces missing punctuation marks, added.\n\n\t* FreeMono.sfd, FreeSans.sfd:\n\n\tArmenian: Sans tried to make verticals and horizontals of more uniform\n\twidth both, finddled with punctuation\n\n\t* FreeMonoOblique.sfd:\n\n\tmade to validate\n\n\t* FreeMonoBold.sfd:\n\n\tmade to validate\n\n\t* FreeSans.sfd, FreeSansBold.sfd:\n\n\tArmenian in Sans: regularized letter spacing\n\n\t* FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd:\n\n\tArmenian: fill out ranges and clean up\n\tSansBold especially had a lot of incorrect references.\n\tNow all the ranges with Armenian at least share the same set of\n\tcharacters.\n\n\t* FreeMono.sfd:\n\n\tFixed glyph with wrong width.\n\n2008-05-11 Steve White\n\t* FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerifItalic.sfd:\n\n\t1) made to validate\n\t2) Mono: copied in Spacing Modifier Letters (glyphs not yet named)\n\t3) SerifItalic: Filled in General Punctuation\n\n\t* FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd:\n\n\tMade to validate, and pass all other FontForge tests.\n\tExpedient: rounded everything to int\n\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tMade to have the same Greek Symbols,\n\tMade to validate\n\n\t* FreeSans.sfd, FreeSansBold.sfd:\n\n\tMade Greek Symbols as full as rest of Sans.  Changed a name in Sans.\n\n\t* FreeMonoOblique.sfd:\n\n\tMade Greek as full as other faces\n\tMade to validate\n\n\t* FreeSansBold.sfd:\n\n\tDeleted seven orphaned Arabic characters; looks like somebody started,\n\tdidn't get very far, putting Arabic in bold.\n\n\tDeleted orphaned Arabic glyph from Arabic Presentation forms-B\n\n\t* FreeSerifBold.sfd:\n\n\tDeleted the single Arabic character: it was clearly there by mistake.\n\n\t* FreeSansOblique.sfd:\n\n\tMade Greek Symbols as full as rest of Sans\n\n\tTweeks to Armenian\n\n\tComment from previous commit of FreeSans was meant for FreeSansOblique.\n\tIn FreeSans, only tweeked a few letters during putting more characters\n\tin this face.\n\t\n\tFilled in Spacing Modifier Letters, increased General Punctuation.\n\n\t* FreeSans.sfd:\n\n\tFilled in Spacing Modifier Letters, increased General Punctuation\n\n\t* FreeMono.sfd:\n\n\tMade Armenian as full as other roman faces.\n\n\tCompleted Spacing Modifier Letters\n\tAdded a couple of Greek Punctuation\n\n\tadded more Spacing Modifier Letters\n\n2008-05-10 Steve White\n\t* FreeSerif.sfd, FreeSerifItalic.sfd:\n\n\tDid same process of scaling and sizing for Thai in Sans as in Serif.\n\tAdded mark tables to Sans.  Improvement, but there are questions...\n\n\t* FreeSans.sfd:\n\n\tTidied some Gurmukhi glyphs, validated.\n\n\tDeleted ranges for Oriya, Kannada, on account of\n\t1) they only contained a subset of the consonant glyphs of the scripts,\n\t   few if any vowels, and had no ligature lookups as required\n\t2) Kannada was based on the Akurti fonts, which have copyright issues.\n\t\n\tSee\n\tbug #23225: Oriya range only partial\n\tbug #23224: Kannada range only partial\n\n\t* FreeMonoBoldOblique.sfd:\n\n\tMade metrics like rest of Mono\n\n2008-05-09 Steve White\n\t* ranges.py:\n\n\tMore info on range intervals\n\n\t* FreeSerif.sfd:\n\n\tDeleted Telugu range.\n\tIt didn't represent a complete writing system for the language.\n\t\n\tSee notes at https://savannah.gnu.org/bugs/index.php?23202\n\tSerif: Telugu range missing many characters; many wrong\n\n\tGot a copy of the original Tikkana font,\n\tCopied in remaining consonants and vowels that I could find there.\n\tI think one vowel 0C55 is missing according to unicode).\n\tStrangely, the Telugu digits are alo missing.\n\tIn Tikkana, the default \"checkmark\" structural mark is missing from many\n\tconsonants, according to Unicode, but is a separate glyph.  I put\n\tthe checkmark on.\n\tThis, and scaled up by 150% and cleaned up intersecting glyphs and\n\tmany unnecessary points.\n\n2008-05-08 Steve White\n\t* FreeSerif.sfd:\n\n\tFilled out Telugu consonants.\n\tVowels still need to be done\n\n2008-05-07 Steve White\n\t* FreeSerif.sfd:\n\n\tOperated on Latin glyphs with stacked accents to make them fit under\n\t900EM.\n\tScaled Telugu bu 150%.\n\n2008-05-06 Steve White\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeSansBold.sfd, FreeSerif.sfd:\n\n\tCorrected further fontforge \"find problems\"\n\tAdded some math characters to FreeSerif\n\n2008-05-05 Steve White\n\t* FreeSansBold.sfd:\n\n\tMade to validate, and fixed bad TT transformations\n\n2008-05-04 Steve White\n\t* FreeMono.sfd, FreeSerif.sfd:\n\n\tMainly TeX additions trying to satisfy Markus Kuhn's TeX-as-Unicode page\n\n\t* FreeMono.sfd:\n\n\tAdjusted heights of extensible brackets\n\n\tFixed problems with extensible brackets, thanks to Markus Kuhn's page\n\thttp://www.cl.cam.ac.uk/~mgk25/ucs/examples/UTF-8-demo.txt\n\n\t* ranges.py:\n\n\tfiddled with ranges, doc\n\n\tmade some ranges more correct?\n\n\tfixed some bugs in ranges\n\tbetter error reporting\n\n\tGot rid of Unicode 1.1 references\n\n\tmade to use OpenType table\n\n\t* FreeMono.sfd, FreeSans.sfd, FreeSerif.sfd:\n\n\tmade to validate\n\n2008-05-03 Steve White\n\t* FreeMono.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tRemoved digits from Private Use Area.\n\tSee bug 23050.\n\n\t* FreeMono.sfd, FreeSans.sfd:\n\n\tCompleted General Punctuation\n\n\t* FreeSans.sfd:\n\n\tCompleted IPA Extensions\n\n\t* FreeMono.sfd, FreeSans.sfd, FreeSerif.sfd:\n\n\tMore work on Superscripts and Subscripts, Spacing Modifiers.\n\tSans is now complete in both.\n\tAdded Pfennig to Sans and Mono.\n\n\t* ranges.py:\n\n\tRestructure text output\n\tRearrangement and cosmetic ...except I had broken it.  now fixed\n\tSeems to be in a useful form at this point.\n\tMore docs, date\n\n\t* FreeSerif.sfd:\n\n\tAdded a hand-drawn old German Pfennig to Currency Symbols\n\n\t* FreeMono.sfd, FreeSans.sfd, FreeSerif.sfd, FreeSerifItalic.sfd:\n\n\tFurther additions to General Punctuation, Super and Sub Scripts,\n\tSpacing Modifiers, etc.\n\n2008-05-02 Steve White\n\t* FreeSans.sfd:\n\n\tadditions to Spacing Modifiers, IPA\n\n\t* FreeSerifItalic.sfd:\n\n\tShortening stacked accents to maintain readability when clipped\n\n2008-05-01 Steve White\n\t* FreeSans.sfd:\n\n\tAdditions to Spacing Modifiers and changes to Combining Diacritics\n\n\t* FreeSerif.sfd:\n\n\tMade sure all the half rings in Combining Diacriticals and Spacing\n\tModifiers were really half rings  (J. Poon had complained about this)\n\n\tFilled out General Punctuation\n\tSome work on Spacing Modifiers\n\n\tFilled out Mathematical Operators\n\t\tstill needs lots of work\n\tMade to validate\n\n\tFilled out Latin Extended B\n\tAdded some letters with curls to Latin Extended B\n\tMore fiddling with Latin Extended B accents\n\n2008-04-30 Steve White\n\t* FreeSerif.sfd:\n\n\tAdded Hanunóo script, with characters based on those in\n\tfont MPH2BDamase, on request from the maintainer of that font,\n\thttp://packages.debian.org/sid/ttf-mph-2b-damase\n\t\n\tGlyphs are simple vector strokes.  Could be a little more uniform.\n\n\tAdded Buginese script \"Lontara\", with characters based on those in\n\tfont MPH2BDamase, on request from the maintainer of that font,\n\thttp://packages.debian.org/sid/ttf-mph-2b-damase\n\t\n\tNote the glyphs are pretty rough, clearly a digitization of handwriting.\n\tI just cleaned them up, and corrected discrepancies with Unicode,\n\tand compared with some pictorial samples of the script I could find.\n\n2008-04-29 Steve White\n\t* ranges.py:\n\n\tImproved look a lot--still unhappy with some ranges\n\tOS/2 seems sometimes bang-on, sometimes unrelated to anything (including\n\tfontforge's OS/2 listing)\n\n\t* FreeSerif.sfd:\n\n\tMuch fiddling with Tamil range.\n\tFirst scaled to 78% (avoiding the references)\n\tThis gets it in the ballpark height-wise.  [A bit taller than the Latin\n\tletters, but the stroke is narrower, but then the glyphs are busier.]\n\tThen had to re-align combined references, the trickiest being the\n\thalants.\n\tChecked with other fonts with Tamil text.\n\n2008-04-28 Steve White\n\t* FreeSans.sfd, FreeSerif.sfd:\n\n\tCleanup of control points in Arabic and Thaana\n\n\t* FreeSerif.sfd:\n\n\tCleanup of missing extrema in Arabic and Thaana\n\n\tMany changes to Thai, trying to make the script fit between some lines,\n\tso accents won't get clipped, etc.\n\tAlso, stroke weight was heavier than that of Latin.\n\t\n\tScaled whole thing by 93%.\n\tShrank the tallest letters 0E42-4 to get them under 900EM.\n\tShaved off top of maiek.\n\tFiddled with positioning of all accents.\n\tMade positioning tables for accents.\n\t\tNote: unclear these are working correctly\n\t\n\tFixed a bug having to do with character replacements for characters\n\tnamed 'ng' and 'nj'; these names had been taken on by other characters.\n\t\n\tMade to validate\n\t\n\tUnicode positions of two Cyrillic Extended characters were switched.\n\tFiddled with a couple of Cyrillic combining diacritics\n\n2008-04-27 Steve White\n\t* FreeSans.sfd:\n\n\tbugfix: a left harpoon mysteriously appeared to the left of letter p!\n\n2008-04-26 Steve White\n\t* FreeMono.sfd:\n\n\tMade to validate\n\n\t* FreeSans.sfd:\n\n\tMade to validate\n\n\tToward J. Poons report\n\tMade 032B more like proper double-arches (and distinct fro 033C seagull)\n\tMade 032b more like a seagull\n\n\t* FreeSans.sfd, FreeSansBold.sfd:\n\n\tSans: fiddling with widths and terminators of math symbols,\n\t\ttoward J. Poon's report\n\tR & B: removed u+2741 because it didn't match the Unicode description\n\n\t* FreeMono.sfd:\n\n\tExtensible parenthesis symbols weight/terminators\n\tToward bug # 23064: https://savannah.gnu.org/bugs/index.php?23064\n\tRounded a bunch of terminators\n\n2008-04-22 Steve White\n\t* FreeSerif.sfd:\n\n\tSmall alignment problem in Greek Extended\n\n\tOne more tweek to spacing in Cyrillic Extended\n\n\tCorrected spacing in Cyrillic Supplement\n\n\tAdded Cyrillic Supplement letters for\n\tEnets, Khanty, Chukchi, Itelmen, Mordvin, Kurdish, Aleut\n\n\tAdded Cyrillic letters for Nivkh (completing Cyrillic range)\n\tMore tightening of accents in Latin Extended.\n\n\t* FreeSans.sfd:\n\n\tFiddled with math--consequences of changing the \"similar\" operator\n\n\tMore tightening of accents\n\n\t* FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tAdjustments to h and k with caron and cedilla in Latin A and B\n\n\t* FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd:\n\n\tFreeSerifBold: deleted 3 dotted Hebrew letters in Private/Corporate use\n\t(E801-3).  They weren't ligatures or in any other lookup, and they\n\tweren't present in FreeSerif.\n\t\n\t* FreeSansBold:\n\tUnlinked and deleted F6C3, which called itself commaaccent.\n\tMade some new spacing and non-spacing accents to make up for it.\n\t\n\t* FreeSansBoldOblique: \n\tMade references of many Latin Extended.\n\tAlso corrected several wrong ones.\n\t\n\t* Freeserif: \n\tRe-named commaaccent\n\n2008-04-21 Steve White\n\t* FreeMono.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSerif.sfd, FreeSerifBold.sfd:\n\n\tDeleted Hiragana and Katakana ranges, as discussed on bugs list.\n\tCleaned up some encoding issues, unnamed glyphs\n\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tRoman: added 'sine' -- not beautiful, but I liked drawing it\n\tAll: Made special lookup for Dutch ligatures 'IJ' and 'ij'\n\n\t* FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd:\n\n\tRoman: ffi etc Latin ligatures from 'liga' to 'dlig' (these weren't\n\treally ligatures anyway, and only looked very bad when used. \n\tRetain for condensed type.\n\tOthers: deleted Latin 'liga' table altogether\n\tBoldOblique : added j to ij ligature\n\n\tToward J. Poon's Report:\n\tExcept for issues of terminators not always vertical or horizontal,\n\tand a few things that were too hard or I was unsure of.\n\n2008-04-20 Steve White\n\t* FreeSerif.sfd:\n\n\tFutzing with accents in Latin Extended Additional and Latin Extended-B\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd:\n\n\tAdded primemod character, referenced by Greek number sign\n\n\t* FreeMono.sfd, FreeMonoOblique.sfd:\n\n\tFollowing J. Poon's report, disconnected NJ (01CA)\n\n2008-04-19 Steve White\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd:\n\n\tFirst pass throught J. Poon's bug list.\n\tSee bug reports for details.\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd:\n\n\tMade underscore slanted in Oblique faces, made all to be width of\n\tspace character.\n\tTowards J. Poon's report.\n\tDisturbed that xterm and some other apps put small space between\n\tcharacters when none was called for.\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeSans.sfd, FreeSansOblique.sfd:\n\n\tCorrections on Currency Symbols\n\n\t* FreeMono.sfd, FreeSans.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tMore corrections, additions to Currency Symbols\n\n\t* FreeSans.sfd, FreeSerif.sfd:\n\n\tFilled out and corrected Currency Symbols\n\n2008-04-18 Steve White\n\t* FreeSans.sfd, FreeSerif.sfd:\n\n\tAdjustments to Combining Marks for Symbols\n\tAdditions to range in Sans, and re-structured its marks table so that\n\t\"middle\" can apply to any range\n\n\t* FreeSerif.sfd, FreeSerifItalic.sfd:\n\n\tMade reference between combining koronis and lenis of Greek Extended.\n\tIn Serif, re-worked combining marks lookup tables, added anchors in \n\tLatin, moved so without marks they work in kedit (but now I'm doubting\n\tkedit does a reasonable thing...what is a better application for\n\ttesting this?)\n\n2008-04-16 Steve White\n\t* FreeSerifItalic.sfd:\n\n\tAdjusting of spacing and accents in Greek\n\n\t* FreeMono.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansOblique.sfd, FreeSerif.sfd:\n\n\tMuch futzing with Greek letter spacing and accents.\n\tAdded lenis to FreeMono.\n\n\t* FreeMono.sfd, FreeSerif.sfd:\n\n\tAdjusted spacing of dots of Greek dieresistonons in Serif\n\tWhipped up something for Greek kappascript in Mono (could use revision)\n\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tRaised dots on double-dotted Cyrillic i, to match that of i and j.\n\n2008-04-14 Steve White\n\t* FreeMono.sfd:\n\n\tCorrected 27e6-7 \"white bracket\"\n\tNote it is probably a FontForge bug these symbols aren't showing up.\n\tFontForge thinks they are in Supplemental Arrows, but they should be\n\tin Supplemental Math-A\n\n\tNamed some Greek characters\n\n\t* FreeSans.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd:\n\n\tSpacing of some Cyrillic characters\n\n2008-04-13 Steve White\n\t* FreeSerif.sfd:\n\n\tSome fiddling with accents\n\t'yogh' was too wide\n\n\t* FreeSansBold.sfd, FreeSansOblique.sfd:\n\n\tCharacter spacing was chaos--tried to improve.  BoldOblique also needs\n\tit.\n\n\t* FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd:\n\n\tCompleted the fix of bug #12798, Greek glyphs with accents to side\n\tMuch mucking with accents here, and fixed a few things that were just\n\twrong.\n\n2008-04-12 Steve White\n\t* FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd:\n\n\tMade Mono curly quotes \"bent\"\n\n\t* FreeMono.sfd:\n\n\tMore fiddling with Greek accents\n\tMade quotes \"bent\"\n\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tAdjustments on Greek diaresistonos etc.\n\tAdjustments in Serif on combining marks for symbols\n\n\t* FreeSerif.sfd:\n\n\tMore additions to Combining marks for Symbols\n\n\tAdditions to Combining marks for Symbols -- now mostly full.\n\tLots of adjustments to middle anchor point in Latin to make big circle\n\t(nearly) encircle preceding latter\n\n2008-04-11 Steve White\n\t* FreeMono.sfd:\n\n\tBugfix:\n\tHad indroduce a glyph of width other than 600, making kterminal not\n\trecognize it as a monospace font.\n\n2008-04-10 Steve White\n\t* FreeSans.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tMore messing with accents.\n\tFurther to bug #12798, Greek glyphs with accents to side\n\tMuch messing with glyphs in Greek Extended range\n\n2008-04-09 Steve White\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSerif.sfd:\n\n\tRevisited Latin-1 and Latin-A accents.\n\tGlyph B7 was called \"periodcentered\", but Unicode callse it Mid Dot,\n\tand the description doesn't refer to the period.  I made it like the\n\tdot accent.  throughout, and referred L-dot to it.\n\t\n\tAlso double-checked \"commaaccent\" characters (some in Unicode called\n\tcedilla, but the Unicode example shows a comma...mystery)\n\t\n\tAlso the funny IPA upside-down f often had two bars, incorrectly.\n\t\n\tTo do:  go through rest of Serif, and Sans\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd:\n\n\tCompleted re-structuring of stacked Latin accents in Mono.\n\tAlso: lots of associated adjustments of Greek Extended accents.\n\t(Trying to at least center extremely wide characters on their box)\n\tRepaired some victems of \"find overlaps\" sweeps\n\tWorked on glyphs with apostrope/comma parts\n\tCorrected a few wrong glyphs.\n\t\n\tTrying out a \"bent quotes\" solution to making primes distinct from\n\tquotes.\n\n2008-04-08 Steve White\n\t* FreeMonoOblique.sfd:\n\n\tToward reducing overall height\n\tDid similar process as for Mono, fixing a few errors along the way.\n\tAlso the Greek Extended range was very messed up vertical and\n\thorizontally.\n\tHorizonal spacing of the heavily accented Greek is a real problem in\n\tMono...\n\tTo do:\n\t\trevisit \"commaaccent\" characters in all faces: do some have \n\t\tedillas?\n\t\tsome Hebrew glyphs are a little low\n\t\tGeorgian generally is way out of bounds\n\n2008-04-07 Steve White\n\t* INSTALL:\n\n\tVarious updates and corrections, tweeked formatting\n\n\t* FreeMonoBold.sfd:\n\n\tTweeking of accents\n\n2008-04-06 Steve White\n\t* FreeMono.sfd, FreeMonoBold.sfd:\n\n\tRe-worked accents in FreeMonoBold.sfd to make Latin ranges lie between\n\t800 and -200 EM, as with FreeMono.\n\n\t* FreeMono.sfd:\n\n\tLatin Extended ranges: Implemented new policy of shortening the letters\n\tof the characters with the highest-stacked accents.\n\t\n\tAt this point all the Latin glyphs lie betweeen 800 and -200 EM.\n\t\n\tAlso checked for readability of all the Latin extended letters in xterm.\n\t(Issue: it chops letters outside their bounding boxes; many accents had\n\tbeen a bit outside.  Made sure that if they were chopped, they were at\n\tleast still recognizable.)\n\n2008-04-05 Steve White\n\t* FreeMono.sfd:\n\n\tFollowing exchange about Mono on freefont-bugs with Joe Wells, who\n\t\t> doesn't like the curly quote marks\n\t\t> wants combining diacritics to work\n\t\t> wants tight line spacing\n\t\n\tTrying to reduce font height:\n\t> exclamdown was below -200\n\t> Throughout Extended Greek, ypogegrammeni were too low.  Shortened\n\tglyph, and raised all references.\n\t> Lots of messing with Latin Extended ranges to make glyphs mostly\n\tfit into 800 height.  Mostly succeeded.  A couple will get chopped.\n\t> Messed with \"commaaccent\" glyphs, which were very low\n\t> Cyrillic 04B1 had a tail that was incorrectly low\n\t> Much mucking with Georgian range.  Moved up by 95 (read that Georgian\n\tis written as though centered between two horizontal lines, rather than\n\tas sitting on a baseline)  There are still a few very high glyphs.\n\t\n\tFontForge U+0122 called Gcommaaccent, glyph looks like that, but\n\tUnicode says it's Gcedilla.  Made the ones called cedilla by Unicode\n\tto be cedillas\n\t\n\tNote bug in Unicode: standard for 0122, 0123, 0136, 0137, 013B, 013C,\n\t0145, 0146, 0156, 0157 all talk about cedilla, say to make it with\n\tcedilla, but example shows comma.\n\t\n\tBy the way:\n\t> Got rid of commaaccent and dotlessj in Corporate Use\n\t> Replaced shadedark, with little squares now not overlapping.\n\t> Corrected IPA symbol 'ts' 02A6, added 02a8, 02a9, 02aa, 02ab, 02ac,\n\t  02ad, 02ae, 02af\n\t\n\t(so many changes...the CVS server was down...)\n\n\t* FreeSerif.sfd:\n\n\tRe-named arabic and hebrew characters\n\tBig adjustment to comma-accents.  Mostly effects Greek Extended.\n\tMade such accents to be like comma, rather than like Russian apostrophe\n\t(and de-referenced that symbol)\n\n2008-04-04 Steve White\n\t* FreeMono.sfd, FreeSerif.sfd:\n\n\tRaised dot on superscript i (2071) -- more distinct at small sizes\n\n\t* FreeMono.sfd:\n\n\tadded two IPA symbols\n\n2008-04-02 Steve White\n\t* FreeSerif.sfd:\n\n\tfixed a few more control points too close\n\n\tFixed names of languages in ligature table for latn \"w/i\".\n\tThis fixes a crash when FontForge opened the ttf table\n\n\tMotivated by bug crashing FontForge when opening ttf file,\n\tstarted cleanup of useless control points.  Not finished.\n\tGot partway through Sinhala\n\n2008-03-31 Steve White\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoOblique.sfd, FreeSans.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tFixed various \"Find Problems\", including glyphs with mixed-up names,\n\tand bad TT matrices.  (lots more bad TT matrices remain)\n\n\t* FreeSerif.sfd:\n\n\tRe-named a bunch of Cyrillic letters\n\n\t* FreeSerif.sfd:\n\n\tPut above mark on Cyrillic i and double-dot i for Slavonic number forms\n\n2008-03-30 Steve White\n\t* FreeSans.sfd:\n\n\tTightened spacing on glyphs of last commit\n\n\t* FreeSans.sfd, FreeSerif.sfd:\n\n\tConcerning bug  #16120, Include upper case Wynn and upper case Yogh\n\tAdapted Herman Miller's Thyromanes letters  01F7 021C 021D for Serif\n\tDrew my own versions for Sans.\n\n\t* FreeSerif.sfd:\n\n\tAdded 04F6,7\n\n\t* FreeSerif.sfd, FreeSerifItalic.sfd:\n\n\tMade more Cyrillic diacritics really combine.\n\tMade a mark lookup just for Cyrillic diacritics,\n\tMarked most of the unadorned Cyrillic alphabet.\n\t\n\tStill not clear on correct shapes for some of the marks.\n\n\t* FreeMono.sfd, FreeMonoOblique.sfd:\n\n\tTweeks to accents\n\n2008-03-29 Steve White\n\t* FreeSans.sfd, FreeSerifItalic.sfd:\n\n\tSmall adjustments in Cyrillic\n\n\t* FreeSerif.sfd:\n\n\tCorrected small palochka\n\tMade Cyrillic combining hundred-thousands and millions really combine\n\tNamed some combining diacriticals\n\n\t* FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd:\n\n\tMostly adjusted horizontal spacing of mono oblique faces\n\n\t* FreeMono.sfd, FreeMonoBold.sfd, FreeMonoBoldOblique.sfd, FreeMonoOblique.sfd, FreeSansBold.sfd, FreeSansBoldOblique.sfd, FreeSansOblique.sfd, FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tMore cleanup of Cyrillic ranges\n\t\n\tCompletely re-did horizontal spacing of SerifItalic and SerifBoldItalic.\n\tSee bug #17912, poor kerning in Cyrillic oblique...\n\thttps://savannah.gnu.org/bugs/index.php?17912\n\tIt looked like chaos to me. \n\tOnly so much can be done: the font is flawed.\n\tBut I think the changes make text readable in these faces.\n\t\n\tThere were dozens of incorrect glyphs in higher-numbered characters.\n\tI deleted all those I found.  No glyph is better than a wrong glyph.\n\t\n\tFutzt with accents, shooting for consistency and readability.\n\t\n\tA maintenance thing: making correct references (acyrillic vs a,\n\talthough they may be the same glyph)  I made a lot of headway, but\n\tit isn't finished.\n\t\n\tLikewise, a large fraction of these are compound characters, which can\n\tbe made with references, resulting in easier maintenance, reduced\n\tlikelihood of errors, and smaller files.  I replaced many.\n\n\t* FreeSerif.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tCyrillic italic\n\tAdded italic, bolditalic\n\t\t0493, 04a7, 04AD\n\tbecause their form clearly varies in italic.  But was just guessing...\n\n\t* FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tCyrillic italic\n\t\n\tAdded italic, bolditalic\n\t\t0493, 04AD\n\tbecause their form clearly varies in italic.\n\tBut was just guessing as to exact form.\n\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tOverhaul of Cyrillic\n\t\n\tItalic, BoldItalic\n\t\tadded small yat for bug #22588 (note Times New Roman doesn't use\n\t\talternate form in Italic)\n\t\n\tAll forms of Serif have big problems in Cyrillic.\n\t\n\tThe ugliest is in roman.  The letters, even of the Russian alphabet, are\n\tof inconsistent height (awfully, small 0438 (ii) 0446 (tse))\n\tand they vary from the height of Latin\n\tand they vary from the height of italic and bold.\n\tThey are a mish-mash of letters from several fonts, of similar (but not\n\tquite identical) weight, and similar, (but not quite identical) size.\n\t\n\tI think the best solution would be to identify the face that best\n\tmatches Latin, and fill the range with that.  I think this is possible\n\tbecause the rarer letters seem to be better: the common letters are the\n\tones that are wrong.\n\t\n\tFor now, I just increased the sized of 0438 and 0446, and 048a, 048b,\n\talso 0459 (lje) 045A (nje) 0464 (dje)\n\t\n\tOther issues\n\n2008-03-27 Steve White\n\t* FreeSerifBoldItalic.sfd:\n\n\tMoving all Greek capitals with accent so they don't cover previous\n\tletter.  Remedies bug #12798\n\n\t* FreeSerif.sfd, FreeSerifBold.sfd, FreeSerifBoldItalic.sfd, FreeSerifItalic.sfd:\n\n\tVarious tweeks to accented Latin letters.\n\tConnected O-ogonek correctly\n\n\t* FreeSerifItalic.sfd:\n\n\tAccents of numerous accented Latin letters got shifted in a previous\n\tcommit.  This fixes it.\n\n\t* FreeSerif.sfd:\n\n\tAdjusted combining tack left and right (0318-0319) to be above -300 EM.\n\n\t* FreeSans.sfd, FreeSerif.sfd:\n\n\tAdded some \"middle\" marks for positioning of diacritics\n\n\t* FreeSans.sfd:\n\n\tCopied 4 enclosing combining diacriticals from Serif 20DD - 20E0\n\n\t* FreeSerif.sfd:\n\n\tAdjusted and added some enclosing diacritics 20DD - 20E0\n\tIn response to Debian bug #472566\n\t\tttf-freefont: U+20DD COMBINING ENCOLSING CIRCLE doesn't combine\n\t\thttp://bugs.debian.org/cgi-bin/bugreport.cgi?bug=472566\n\n2008-03-26 Steve White\n\t* FreeSerif.sfd:\n\n\tLowered a few over-high Latin accents\n\n\t* FreeSansBold:\n\n\t\tDevangari--only digits 1 and 2, and nothing else.  Deleted\n\t\n\t* FreeMonoBold, FreeMonoOblique,\n\tFreeSerifBold, FreeSeriftalic, FreeSerifBoldItalic,\n\tFreeSansOblique, FreeSansBold, FreeSansBoldOblique:\n\n\tGot rid of dotlessj, comma in Corporate Use\n\tSingle Substitution lookup, ccmp table\n\tMade proper dotlessj, re-linked j-circumflex\n\t\n\tNote:\n\tFreeSansBold has a commaaccent in Corporate Use, used by several other\n\tcharacers.  Haven't done anything about this.\n\n2008-03-25 Steve White\n\t* FreeSerif.sfd:\n\n\tAdded/corrected glyphs for yeh hamza in Arabic,\n\tAdded init and medi lookups for yeh hamza.\n\n2008-03-24 Steve White\n\t* FreeSerif.sfd:\n\n\tAdded isolated and final forms for\n\t0629\tteh marbuta\n\t0624\twaw hamza\n\t0626\tyeh hamza\n\t0649\talef maksura\n\tA previous commit had added lookups that referred to these,\n\n\tMore fiddling with super/subscripts\n\n\t* Makefile, Makefile, GenerateTrueType:\n\n\tScripts and Make targets to generate OpenType fonts and zip file\n\n\t* maintenance.txt:\n\n\tAdded gnupload and info about tagging\n\n2008-03-23  Steve White\n\t* FreeSerif.sfd:\n\n\tLast of Find Problems -> ATT\n\t'mark' Latin lookup: afii10026 is in 'cyrl', also afii10074\n\tUpper and lower Cyrillic i.  Just removed mark from both letters.\n\n\t'half' Bengali lookup Khanda_Ta is in 'bng2'. Added bng2 to lookup\n\tAdded TtTable etc\n\n\tClean-up of Points too Close through to end of font.\n\tThis episode completes the paths/points clean-up of Serif.\n\tBut note: many ranges, esp. Ethiopic, Japanese, and Indic, have way\n\ttoo many points, resulting in lumpiness.\n\n\tAt this point, FontForge can convert splines to quadratic, auto-hint,\n\tand auto-instrument without segfault.\n\n\t* Makefile, sfd/Makefile, tools/GenerateTrueType:\n\n\tAlterations to build process: added a Makefile, and made to work\n\ton my system.  Now auto-hints before generating TrueType.\n\n2008-03-22  Steve White\n\t* sfd/FreeSans.sfd:\n\tLots of additions of math characters.  Should complete for\n\tLaTeX 2e, except for extensible brackets.\n\n2008-03-21  Steve White\n\t* *.sfd:\n\n\tRegularized stacking of accents in Latin Extended Additional\n\tChanged name of 00B5 from 'mu' to 'micro',\n\t\t2206 from 'Delta' to 'Delta.math',\n\t\t0308 from 'diaerisis' to 'diaerisiscomb'\n\n\t* FreeMono.sfd:\n\n\tadditions to IPA\n\n\t* FreeMonoBoldOblique.sfd:\n\n\tMoved dotlessj from Corporate Use,\n\tDeleted commaaccent there\n\tFixed mis-named glyphs tcommaaccent, Tcommaaccent\n\tChanged name of 030A from 'dieresis' to 'ringcomb'\n\n\t* FreeSans.sfd:\n\n\tAdded some arrows, and a couple of blackboard bold characters\n\n\tSeveral characters in U+F600 Corporate Use range\n\t        dotlessj, onefitted, commaaccent\n\n\t\tdotlessj referred to by: jcircumflex, uni01F0:  \n\t\trenamed it to uFFFF, re-linked others by hand\n\n\t\tcommaaccent\n\t\t\thttp://diacritics.typo.cz/index.php?id=9\n\t\tshould be u+0326 but wasn't linked to anything \n\n\t* FreeSansBold.sfd:\n\n\tU+0617 etc: read glyphs \"4GWglm\". It should be Arabic.  Deleted\n\n\t* FreeSansBold.sfd, FreeSansOblique.sfd, FreeSansBoldOblique.sfd:\n\n\tRemoved bogus glyphs for 200C 200D, ZWJ and ZWNJ\n\n\t* FreeSerif.sfd:\n\n\tSplit lookup for ligatures in latin into two classes;\n\tff, ffl, fl which are appropriate for all languages,\n\tand fi, ffi, which are not appropriate in Turkish (due to distinction\n\tbetween short and long i)\n\tNeeds to be done for other faces.\n\n\tFilled set of extensible brackets in Miscellaneous Technical\n\n\tThink IPA is now complete.\n\t\n2008-03-18  Steve White\n\t* FreeSans.sfd:\n\n\tclean-up of all path issues and points too close\n\n2008-03-18  Steve White\n\t* FreeSans.sfd:\n\n\tSomething was causing crashing effects in Windows.  Cleanup of\n\tproblems eventually made it go away.  Now works well.\n\n\tCleaned up many \"points too close\"\n\n\tCleaned up all ATT problems, of which there were many and various.\n\n\t# Incorrectly labelled zero-width joiner used in a ligature\n\n\t# Incorrect substitution of dotlessi and dotlessj with i and j was\n\t  somehow connected with FontForge crash.  Attemts to remove the\n\t  substitution would damage a 'ccmp' table; subsequent changes would\n\t  result in FontForge crashing on save, and truncating the sfd file. \n\t  Surgically removed with vi.\n\n\t# A couple of Indic lookups had incorrect script DFLT; one had 'latn'.\n\n\t# Don't understand why there are scripts named\n\t\tdev2 bng2 grj2 gur2 when there are already deva beng gurj guru\n\t  But anyway, lots of 'vatu' 'pres' 'haln' and 'liga' lookups contained\n\t  characters in the '2' scripts but were lablled only for the 'non-2' \n\t  ones.  Added the '2' scripts to all these lookups. Suspect a mistake.\n\n\tNote: several of these problems are repeated in other Sans faces.\n\n2008-03-16  Steve White\n\t* FreeMono.sfd:\n\n\tCleanup of many path problems \"points too close\"\n\n\tStrove to make accents Latin Extended range legible at small sizes\n\n\tNamed some unnamed characters; removed a duplicate\n\n\tAt this point, all fonts are passing FontForge Validate.\n\n2008-03-15  Steve White\n\t* FreeSerif.sfd:\n\n\tCJK punctuation: made some of the very high glyphs smaller (under 900EM)\n\tThe brackets in Sans were very ugly, and not even Sans-serif.\n\tSerif: added extensible square brackets, diddled with integral\n\tcorrected direction of some added glyphs\n\n\tSeveral bugs having to do with missing glyphs in Tamil range.\n\tAlso a buggy ligature in Devangari.\n\n\tShortened names of many lookup tables\n\n\tFutzt with some combining diacriticals\n\n\tAdded extensible square brackets.\n\n\t* FreeSans.sfd:\n\n\tChanged names of a bunch of glyphs with invalid\n\tTrueType names, in range 0x1025f+ (not real Unicode).\n\tTook pains to retain information contained in the names.\n\tWonder if these glyphs have ever been of any use.\n\n\tCJK Punctuation: brackets were hand-drawn and very ugly.  Improved.\n\n\t* *.sfd:\n\n\tSet OS/2 Metrics back to absolute 900/300.  Offsets are not \n\tinterpreted uniformly.\n\n\tCleanup of many path problems up to extrema and self-intersecting\n\n\tOrdered PS Blue values.\n\n2008-03-14  Steve White\n\t* FreeSerif.sfd:\n\n\tGot rid of mixed references and contours\n\tCleanup of many path problems \"points too close\"\n\n\tStarted clean-up to satisfy FontForge Validate\n\n\tChanged names of three glyphs in the\n\tTamil ligatures range...all clearly bugs. \n\n\t* FreeSans.sfd:\n\n\tAdded slanted-hyphen\n\n\t* *.sfd:\n\n\tUnified OS/2 Metrics\n\tAdded Grid Fit\n\n2008-03-13  Steve White\n\t* FreeSans.sfd:\n\n\tRearranged PS BluesValues so they were in increasing order,\n\tMade all 20 in width. \n\n2008-03-12  Steve White\n\t* FreeSans.sfd, FreeMono.sfd:\n\n\tAdded TrueType hinting tables.\n\tFixed glyphs that didn't convert well to quadratics\n\tGot rid of mixed contours and refs\n\n\t* FreeSerifBold.sfd:\n\n\tCleanup of path problems\n\n2008-03-11  Steve White\n\t* FreeMonoOblique.sfd:\n\n\tCleanup of path problems\n\n2008-03-09  Steve White\n\t* FreeSerif.sfd:\n\n\tCorrected L-dot\n\tFurther cleanup of path/ref problems\n\n\tFound several ligatures that referred to a missing glyph \"ZWJ\".\n\tTook this to mean the \"zero width joiner\" u+200D\n\n\t* *.sfd:\n\n\tChanged OS/2 metrics to be absolute 900/300\n\n\t* FreeSerifItalic.sfd:\n\n\tAdded Greek lunate epsilon\n\n\t* FreeMono.sfd:\n\n\tMany additions in math range\n\tReduced size of binary union, intersection, vee, wedge\n\tCorrected empty set\n\tCorrected logical 'assert' relations, etc. 22a2-22af\n\tEfforts to make Math glyphs legible at small point sizes\n\n\t* FreeSans.sfd:\n\n\tAdded Greek lunate epsilon and rho symbol\n\tUnstacked more stacked diacriticals\n\n\tFurther cleanup of path/reference problems\n\n2008-03-08  Steve White\n\t* FreeSans.sfd, FreeSerif.sfd:\n\n\tAdded some \"n-ary\" Math operators\n\n\t* FreeSerif.sfd:\n\n\tFurther clean-up of path problems...up to Ethiopic\n\t> Started adding and correcting Math operators for LaTeX 2e\n\t> Corrected n-ary union, intersection, and spikes to be larger\n\tthan the binary operators\n\t> Made (many of) the operators based on + - = to use those\n\tsymbols directly (by reference or copying).\n\t> Added lunate epsilon\n\t> Corrected empty set\n\t> Tightened up spacing of some other technical characters\n\t> Worked on some more math operators involving =\n\t> triangle\n\t> Several arrows\n\t> Supplemental Arrows-A\n\n\t* FreeSans.sfd:\n\n\tClean-up of font paths\n\tOpen self-intersecting outermost-clockwise missing-extrema\n\talso flipped references (unlinked)\n\n\tAdded Greek lunate epsilon and rho symbol\n\n2008-03-06  Steve White\n\t* sfd/FreeSerif.sfd: Shortened and thickened the combining hook mark,\n\tU+0309, to make more like Unicode samples.\n\tAlso see (bug #22499) un-stacked incorrectly stacked accents\n\n2008-03-05  Steve White\n\t* sfd/FreeSerif.sfd: vertical lines: combining diacritical marks\n\tcorrected 0300 030D 0329 0348 (were rendered as straight apostrophes)\n\tSpacing Modifier letters added 02C8 02CC \n\t\t02B9 02Ba prime and double-prime\n\tFixed positioning U+1EC8, 9, I with hook above\n\n2008-03-03  Steve White\n\t* sfd/FreeSerif.sfd: TT strings updates.\n\t\tupdated Copyright to 2008\n\t\tAdded Vendor URL as the Savannah freefont site\n\t* sfd/FreeMono.sfd: A standard pangram as the Sample Text for Russian\n\t\tIt reads: In the thickets of the South once there was a citrus\n\t\t...--yes, but a fake specimen!\n\t* sfd/*.sfd: Set the OS/2 Sup/Sub settings, which by default looked\n\t\tlike random trash.\n\n2008-03-02  Steve White\n\t* sfd/FreeSerif.sfd: began cleanup of problems given by FontForge\n\t\"Find Problems\" feature.  (bug #22454)\n\t\t\n2008-03-01  Steve White\n\t* sfd/FreeSerif.sfd: made Arabic work for text display (bug #22329)\n\t\tAdded required contextual replacement tables,\n\t\tMade a few missing characters,\n\t* sfd/*.sfd: Removde all back layers from glyphs that had them.\n\n2008-02-27  Steve White\n\t* sfd/FreeSans.sfd: filled in Combining Diacriticals\n\t* sfd/FreeSerif.sfd: shifted whole Arabic range down by 200EM.\n\n2008-02-26  Steve White\n\t* sfd/FreeSerif.sfd: enabled DPOS table.\n\n2008-02-24  Steve White\n\t* sfd/*.sfd: Much fiddling with the \"combining diacriticals\"\n\t\trange 0300-036F.  Made to align with medium-size lowercase\n\t\tpreceding character if not using DPOS table.\n\n2008-02-23  Steve White\n\t* sfd/FreeSerif.sfd, FreeSans.sfd, FreeMono.sfd: (bug #21784) Filled\n\tin set of HTML 4 Character Entities.\n\n\t* sfd/FreeSerif.sfd, FreeSans.sfd, FreeMono.sfd: (bug  #18413)\n\tundertie too low -- went on to tidy other similar characters in\n\tCombining Diacriticals range.\n\t\n2008-02-21  Steve White\n\t* sfd/*.sfd: Moved capital Greek letters with tonos so tonos doesn't\n\tcover preceding letter (bug #12798)\n\n\t* sfd/FreeSerif.sfd, FreeSans.sfd: (bug #13370) made extended\n\tintegrals to line up.\n\t\n2008-02-20  Steve White\n\t* sfd/*.sfd: started removing glyphs with back layers (printing bug)\n\t* sfd/*.sfd: adjusted vulgar fractions (bug #17756)\n\t* sfd/*.sfd: adjusted numerical superscripts (bug #20278)\n\n2008-02-18  Steve White\n\t* sfd/FreeSerif.sfd: Offset Hiragana and Katakana ranges (bug #22326)\n\t* sfd/FreeSerif.sfd: U+30FB, KATAKANA MIDDLE DOT to be full width\n\t\t\t\t(bug #18326)\n\n\t* sfd/FreeSerif.sfd: Re-promoted\n\t        ff ffi ffl fi fl\n\t\tas standard ligatures in Latin.\n\n2008-02-17  Steve White\n\t* sfd/*.sfd: committed to FontForge Spline Font Database (SFD) 2\n\tformat.\n\t\n2008-02-10  Steve White\n\t* sfd/*.sfd: brought into line with Debian ttf-freefont\n\tDeleted a couple of patches, and applied those applied to Debian.\n\n2006-09-20  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* INSTALL: added installation procedure for MacOS X, courtesy\n\tPhilipp Kempgen.\n\n2006-05-04  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd: deleted Russian sample text, which did not\n\tconform to UTF-7.\n\n2006-04-15  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd: corrected U+10D3.\n\n\t* sfd/FreeSans.sfd: ligature U+FB06 (LATIN SMALL LIGATURE S T)\n\tchanged from mandatory (\"liga\") to discretionary (\"dlig\") (bug\n\t#16253).\n\n\t* sfd/FreeMono.sfd: deleted incomplete glyph U+FB06 (LATIN SMALL\n\tLIGATURE S T); deleted U+FB00, U+FB01, U+FB02, U+FB05 as\n\tligatures (bug #16253).\n\n\t* sfd/FreeMonoOblique.sfd, sfd/FreeMonoBoldOblique.sfd: added\n\tU+FB00; deleted U+FB01, U+FB02 as ligatures (bug #16253).\n\n\t* sfd/FreeMonoBold.sfd: deleted U+FB00, U+FB01, U+FB02 as\n\tligatures (bug #16253).\n\t\n\t* sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd,\n\tsfd/FreeMonoBoldOblique.sfd, sfd/FreeSans.sfd,\n\tsfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd,\n\tsfd/FreeSansBoldOblique.sfd, sfd/FreeSerif.sfd,\n\tsfd/FreeSerifItalic.sfd, sfd/FreeSerifBold.sfd,\n\tsfd/FreeSerifBoldItalic.sfd: added Georgian letters, donated by\n\tGia Shervashidze\n\n2006-02-22  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd: ligature U+FB4F\n\tchanged from mandatory (\"liga\") to discretionary (\"dlig\"). This is\n\trespons to Bug#349657: [bug #15792] Freefont Alef and Lamed\n\tcombine\n\n2006-02-21  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerifBold.sfd, sfd/FreeSans.sfd,\n\tsfd/FreeSansOblique.sfd, sfd/FreeSansBoldOblique.sfd,\n\tsfd/FreeSansBold.sfd: ligature U+FB4F changed from mandatory\n\t(\"liga\") to discretionary (\"dlig\"). This is respons to Bug#349657:\n\t[bug #15792] Freefont Alef and Lamed combine\n\n\t* sfd/FreeSerif.sfd: corrected bug#275759: [bug #15790] FreeSerif\n\tglyphs for U+2198/U+2199 were reversed.\n\n2006-02-15  Denis Jacquerye <moyogo@gmail.com>\n\t* sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, \n\tsfd/FreeMonoBoldOblique.sfd, sfd/FreeMonoBold.sfd: removed ij \n\tand IJ ligatures.\n\n2006-02-10  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd: added small Georgian letters (mkhedruli),\n\tdonated by Gia Shervashidze\n\n\t* AUTHORS: Added Gia Shervashidze\n\n\t* CREDITS: Added Gia Shervashidze\n\n2006-01-26  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* notes/maintenance.txt: Added information on the Makefile now\n\tused; username for FTP login is anonymous.\n\n\t* sfd/FreeSansBold.sfd: added U+0569, U+0571, U+0579, U+057B,\n\tU+0586. Armenian small letters completed.\n\t\n\t* sfd/FreeSerif.sfd: added U+0297, U+02AD-02AF. IPA Extensions\n\tsection is now complete. Copied a dozen of glyphs from Omega IPA\n\tto Phonetic Extension section.\n\n2006-01-25  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd: added U+01A, U+01A3, U+01A6, U+01B2, U+01BA,\n\tU+01BB, U+01BE, U+01BF.\n\t\n\t* sfd/FreeSans.sfd: aligned small Armenian letters to x-height in\n\tresponse to bug #15480. Armenian in Free Sans needs a major\n\tcleanup.\n\n2006-01-24  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd: changed U+0452, U+045B. Cleanup: U+0460,\n\tU+0461, U+04Bc, U+04BD, U+0508.\n\n\t* sfd/FreeSansOblique.sfd: replaced accented chars in Latin-1 and\n\tLatin Extended-B sections with references, where possible.\n\n\t* sfd/FreeSerif.sfd: changed U+0285.\n\n2006-01-23  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd: added U+0195, U+01AA, U+0297, U+03D7,\n\tU+03F0. Several flipped references replaced by outlines.\n\n\t* sfd/FreeSansOblique.sfd: Latin Extended-B section more or less\n\tbrought in sync with FreeSans.\n\n\t* sfd/FreeMonoBoldOblique.sfd: added glyphs from FreeMonoBold in\n\tthe Latin Extended-B and IPA Extensions sections.\n\n\t* sfd/FreeSerifBold.sfd: Added U+0224, U+0225. Changed U+01B7,\n\tU+01B8, U+04E0, U+0452, U+045B. Replaced accented characters in\n\tthe Cyrillic region with references.\n\n2006-01-21  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd: added U+0255, U+0264, U+0277, U+0286,\n\tU+029D. Changed U+0261. Deleted spurious glyphs in the control\n\tcode area.\n\n2006-01-19  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd: replaced Hardip Pannu Singh's Gurmukhi with\n\tAnmolUni by Kulbir Singh Thind.\n\n2006-01-17  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSansBold.sfd: Added U+018D, U+0194, U+01B5, U+01B6,\n\tU+01BE, U+0262, U+02A2.\n\t\n\t* sfd/FreeSansBold.sfd: Changed U+0261 in order to distinguish it\n\tfrom U+0067. Changed U+0251, U+0252.\n\t\n\t* sfd/FreeSerifBold.sfd: Small changes in the Cyrillic\n\tsection. Added U+0183, U+018C.\n\t\n\t* sfd/FreeSans.sfd: Added U+2045, U+2046.\n\t\n\t* sfd/FreeSansBold.sfd: Filled in the Gurkmukhi part with the\n\tAnmolUni-Bold by Kulbir Singh Thind. Also some minor corrections\n\tin the Cyrillic part.\n\n\t* CREDITS: Added Kulbir Singh Thind.\n\n\t* AUTHORS: Added Kulbir Singh Thind.\n\t\n2006-01-14  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd: Thomas Ridgeway's Tamil characters replaced\n\tby the ones released by the Samyak font project.\n\n\t* CREDITS: Added Pravin Satpute, Bageshri Salvi, Rahul Bhalerao\n\tand Sandeep Shedmake\n\n\t* AUTHORS: Added Pravin Satpute, Bageshri Salvi, Rahul Bhalerao\n\tand Sandeep Shedmake\n\n2006-01-08  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSansBold.sfd, sfd/FreeMonoBoldOblique.sfd: minor changes.\n\n2006-01-05  Denis Jacquerye <moyogo@gmail.com>\n\n\t* sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd,\n\tsfd/FreeMonoBoldOblique.sfd, sfd/FreeSans.sfd,\n\tsfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd,\n\tsfd/FreeSansBoldOblique.sfd, sfd/FreeSerif.sfd,\n\tsfd/FreeSerifItalic.sfd, sfd/FreeSerifBold.sfd,\n\tsfd/FreeSerifBoldItalic.sfd: added cedi sign U+20B5, Ghanaian\n\tcurrency\n\n2005-12-29  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd: minor cleanup in the Gujarati part.\n\n2005-12-22  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd: Devanagari and Gujarati parts cleared; once\n\tagain merged with Gargi 1.9 and Padmaa 0.6, this time correctly so\n\tthat the anchor points survived the merger.\n\n2005-12-16  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd: added U+0577.\n\n2005-12-15  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd: added U+0559, U+055F, U+2024.\n\n\t* sfd/FreeSansBold.sfd: added U+056E, U+0573.\n\n2005-12-14  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd: Merged with Gargi 1.9 and Padmaa 0.6,\n\tcourtesy Monika Shah and Sonali Sonania from C-DAC, Mumbai.\n\n\t* CREDITS: Added Monika Shah and Sonali Sonania.\n\n\t* AUTHORS: Added Monika Shah and Sonali Sonania.\n\t\n2005-12-13  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd - Removed Sinhala glyphs.\n\n\t* sfd/FreeSerif.sfd - Added Sinhala glyphs, formerly in FreeSans.\n\n2005-12-09  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd: added U+20AF, U+211E. Changed U+20AC (EURO\n\tSIGN).\n\t\n\t* tools/freefont-ttf.spec: Added specification file for building\n\tRPM package, courtesy Rok Papez.\n\n\t* sfd/FreeSerifBold.sfd: added more glyphs from Txfonts to the\n\tArrows and Mathematical Symbols ranges.\n\n\t* sfd/FreeSerifBoldItalic.sfd: added U+03F5 from Txfonts.\n\n2005-12-08  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd: added U+0567, U+056A, U+056C, U+0582.\n\t\n\t* sfd/FreeSerifBold.sfd: copied Box Drawing range from FreeSans.\n\n\t* sfd/FreeSerifBold.sfd: added glyphs from Txfonts to the Arrows\n\tand Mathematical Symbols ranges.\n\t\n\t* sfd/FreeSerif.sfd: added U+2259-225A, U+22BA, U+2308-230B,\n\tU+2322-2323. Cyrillic composite characters replaced with\n\treferences.\n\n2005-12-07  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerifBold.sfd: added U+025A, U+025D, U+026B, U+029B,\n\tU+02AE, U+02AF, U+02DE.\n\t\n\t* sfd/FreeSerifBold.sfd: updated Hebrew part with Drugulin font\n\tfrom the Culmus project.\n\n\t* sfd/FreeSerif.sfd: added U+207A-207C, U+208A-208C, U+2215-2216.\n\t\n\t* sfd/FreeSans.sfd: added U+2320 TOP HALF INTEGRAL, U+23AE\n\tINTEGRAL EXTENSION, U+2321 BOTTOM HALF INTEGRAL (bug #13370).\n\t\n2005-12-07  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerifBold.sfd: added U+0294-0296, U+02A1-02A2. Started\n\tadding \"below\" anchors. Performed hinting on characters that were\n\tnot hinted \"en masse\".\n\n2005-12-06  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd: fixed some more metrics problems in the\n\tExtended Greek area; performed hinting on characters that were not\n\thinted \"en masse\".\n\t\n\t* Makefile: clean also signature files.\n\n\t* sfd/FreeMonoBoldOblique.sfd, sfd/FreeMonoBold.sfd: cosmetic\n\tchanges; cleaning background of referenced composed characters.\n\n2005-12-05  Panayotis Katsaloulis  <panayotis@panayotis.com>\n\n\t* sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd,\n\tsfd/FreeMonoBoldOblique.sfd, sfd/FreeSans.sfd,\n\tsfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd,\n\tsfd/FreeSansBoldOblique.sfd, sfd/FreeSerif.sfd,\n\tsfd/FreeSerifItalic.sfd, sfd/FreeSerifBold.sfd,\n\tsfd/FreeSerifBoldItalic.sfd: Some changes to the greek glyphs,\n\tmostly having to do with \"tonos\" (accent)\n\n2005-12-05  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd: minor cosmetic changes.\n\n\t* sfd/FreeSans.sfd: adjusted widths of characters in the Extended\n\tGreek range; accents are not any more considerably overhanging on\n\tthe left side. Added U+1EDA-1EE3, U+1EE8-1EF1.\n\t\n\t* sfd/FreeSans.sfd: continued working on Extended Greek range;\n\tmetrics still not finished.\n\n2005-12-03  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd: fixed combined Greek accents (bug\n\t#12800). Width of characters still need to be adjusted as in\n\tFreeSerif.\n\n\t* sfd/FreeSerif.sfd: fixed positions of Greek accents (bug #12798).\n\n\t* CREDITS: Added Panayotis Katsaloulis.\n\n\t* AUTHORS: Added Panayotis Katsaloulis.\n\n\t* Makefile: minor changes; now creating also a tarfile with sfds.\n\n2005-12-01  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerifItalic.sfd: added U+0183, U+018C, U+01C0, U+01C1,\n\tU+01C3, U+01E0, U+01E1, U+01F8, U+01F9.\n\t\n\t* Makefile: created a Makefile to assist building.\n\n\t* README: an update.\n\n\t* COPYING: added GNU General Public License, version 2.\n\n\t* tools/GenerateTrueType: wrote a FontForge script for conversion\n\tto TrueType.\n\n\t* sfd/FreeSerif.sfd: merged with SolaimanLipi Bangla OpenType font\n\tfrom www.ekushey.org, courtesy Solaiman Karim.\n\n\t* sfd/FreeSerifItalic.sfd: merged with SolaimanLipi Bangla\n\tOpenType font from www.ekushey.org, slanted by 15.5 degrees.\n\n\t* sfd/FreeSans.sfd: merged with Rupali Bangla OpenType font from\n\twww.ekushey.org\n\n\t* sfd/FreeSansOblique.sfd: merged with Rupali Bangla OpenType font from\n\twww.ekushey.org, slanted by 12 degrees.\n\n\t* CREDITS: added Solaiman Karim\n\n\t* AUTHORS: added Solaiman Karim\n\n2005-11-30  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd: merged with the Rachana Normal.\n\n\t* AUTHORS: added K.H. Hussain and R. Chitrajan\n\n\t* CREDITS: added K.H. Hussain and R. Chitrajan\n\n2005-11-23  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd - cleaned some background images.\n\n\t* sfd/FreeSans.sfd - added U+01A0-01A1, U+01AF-01B0, U+026E,\n\tU+028F, U+0291, U+02A3-02A5, U+031B. Modified U+0198.\n\n2005-11-22  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd - added U+2504-250B.\n\n\t* sfd/FreeSans.sfd - added U+2591-25A1, U+25A3-25A5, U+25AA, U+25AC.\n\n\t* sfd/FreeSans.sfd, sfd/FreeSansBold.sfd - added U+0263.\n\t\n2005-11-21  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd - corrected positions of some Greek diacritics\n\ton page 0x1F.\n\n\t* sfd/FreeMonoOblique.sfd - working on bringing it in sync with\n\tFreeMono.sfd.\n\n\t* sfd/FreeSerifBoldItalic.sfd - applied the sequence suggested by\n\tWerner Lemberg for reducing redundant points. Added a couple of\n\tglyphs in the IPA Extensions region.\n\n\t* sfd/FreeSansBold.sfd - added U+0574, U+0576. Removed overlaps.\n\t\n2005-11-20  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd - added U+02AA-02AC, U+02B0-02B2.\n\n2005-11-19  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd - added U+01B7-01B9, U+0196, U+019A, U+01C3,\n\tU+0224-0225, U+025E, U+029A, U+2422. Changed U+0184-0185, U+0192,\n\tU+01B4, U+0282, U+0284.\n\t\n2005-11-18  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd - added U+02EE, U+207F.\n\n\t* sfd/FreeSans.sfd - started Box Drawing area.\n\n2005-11-17  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerifBold.sfd - added glyphs from the Omega project to\n\tLatin Extended-B, IPA Extensions and Greek ranges.\n\n\t* sfd/FreeSerifBoldItalic.sfd - added glyphs from the Omega\n\tproject to Latin Extended-B, IPA Extensions and Greek ranges.\n\n\t* sfd/FreeSerifItalic.sfd - added glyphs from the Omega\n\tproject to Latin Extended-B, IPA Extensions and Greek ranges.\n\n\t* sfd/FreeSerifItalic.sfd - added U+018B, U+025C, U+0265, U+026F,\n\tU+0279, U+0287, U+028C-028E, U+029E.\n\n\t* sfd/FreeSerifBoldItalic.sfd - added U+1EDA-1EE3, U+1EE8-1EF1,\n\tU+2190-219B, U+219E-21A8, U+21B9-21BA, U+21C4-21CA, U+21E4-21E5,\n\tU+2669-266F. MES-1 compliant.\n\t\n\t* sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd,\n\tsfd/FreeMonoBoldOblique.sfd, sfd/FreeSansOblique.sfd,\n\tsfd/FreeSansBold.sfd, sfd/FreeSansBoldOblique.sfd,\n\tsfd/FreeSerifItalic.sfd, sfd/FreeSerifBold.sfd,\n\tsfd/FreeSerifBoldItalic.sfd - added U+FFFD.\n\n\t* sfd/FreeSerif.sfd - removed overlaps in Latin Extended-B and IPA\n\tExtensions ranges.\n\t\n2005-11-16  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerifItalic.sfd - applied the sequence suggested by\n        Werner Lemberg for reducing redundant points.\n\n\t* sfd/papers/eurotex2003/freefont.tex,\n\tsfd/papers/eurotex2003/freefont.bib - Revised version, sent back\n\tby Karl Berry on 20050110, that should match the one published in\n\tTUGboat.\n\n\t* sfd/FreeSerifItalic.sfd - started added accent anchors. Added a\n\thandful of Greek letters from Omega font collection.\n\n\t* sfd/FreeSerif.sfd - added a handful of letters in the Latin\n\tExtended-B and IPA Extension ranges from the Omega font collection.\n\n2005-11-16  Denis Jacquerye <moyogo@gmail.com>\n\n\t* sfd/FreeSerif.sfd - moved U+0263 to U+0264; added U+0263\n\n\t* sfd/FreeSerifItalic.sfd - fixe U+01EE; added U+01B7-U+01B9\n\n2005-11-16  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd - Made small Greek letters the same height as\n\tLatin and Cyrillic ones and replaced them with references, where\n\tapplicable.\n\n\t* sfd/FreeSerif.sfd - replaced Greek letters with references,\n\twhere applicable. Added U+03D7, U+03F0-03F2.\n\n\t* sfd/FreeSerif.sfd - added U+0255, U+025A, U+025D, U+025F,\n\tU+0262-0263, U+026B-026C, U+0274, U+0276-0277, U+028F, U+0291,\n\tU+029D.\n\n\t* sfd/FreeMonoOblique.sfd - applied the sequence suggested by\n\tWerner Lemberg for reducing redundant points. Added U+F6BE.\n\n\t* sfd/FreeSansOblique.sfd - applied the sequence suggested by\n\tWerner Lemberg for reducing redundant points.\n\n\t* sfd/FreeSans.sfd - changed U+01A5.\n\n2005-11-16  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd - applied the sequence suggested by Werner\n\tLemberg for reducing redundant points. Replaced accented glyphs in\n\tthe Latin-1 and Latin Extended-A areas with references. Made\n\tcapital Greek letters the same height as Latin and Cyrillic ones\n\tand replaced them with references, where applicable.\n\n2005-11-15  Denis Jacquerye <moyog@gmail.com>\n\n\t* sfd/FreeSans.sfd, sfd/FreeSansBold.sfd, \n\tsfd/FreeSansBoldOblique.sfd, sfd/FreeSansOblique.sfd - fixed \n\tU+026A, it was a dotlessi and therefore like U+0069 when \n\taccented.\n\n2005-11-15  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMonoBold.sfd - corrected Greek tonos (slanted instead of\n\ta vertical line).\n\n\t* sfd/FreeMonoBoldOblique.sfd - applied the sequence suggested by\n\tWerner Lemberg for reducing redundant points. Replaced accented\n\tglyphs in the Latin-1 and Latin Extended-A areas with references.\n\n2005-11-14  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd,\n\tsfd/FreeMonoBoldOblique.sfd, sfd/FreeSans.sfd,\n\tsfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd,\n\tsfd/FreeSansBoldOblique.sfd, sfd/FreeSerif.sfd,\n\tsfd/FreeSerifItalic.sfd, sfd/FreeSerifBold.sfd,\n\tsfd/FreeSerifBoldItalic.sfd - Added 2005 in copyright info.\n\n\t* sfd/FreeSansBoldOblique.sfd - applied the sequence suggested by\n\tWerner Lemberg for reducing redundant points. Replaced accented\n\tglyphs in the Latin-1 area with references.\n\n\t* sfd/FreeSansBoldOblique.sfd - added U+0180, U+0184, U+0185,\n\tU+0195, U+01A0-01A2, U+01AF-01B0, U+025E, U+026E, U+0292,\n\tU+0294-0296, U+029A, U+02A1, U+2126-2127, U+2190-219B,\n\tU+219E-21A8, U+21C4-21CA, U+2669-266F. MES-1 compliant.\n\n\t* sfd/FreeMono.sfd - Replaced accented glyphs in the Greek and\n\tCyrillic areas with references.\n\n\t* sfd/FreeMonoBold.sfd - applied the sequence suggested by Werner\n\tLemberg for reducing redundant points. Replaced accented glyphs in\n\tthe Latin-1 and Latin Extended-A areas with references.\n\n2005-11-14  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd - applied the sequence suggested by Werner\n\tLemberg for reducing redundant points.\n              \n\t* sfd/FreeSansBold.sfd - added U+219A, U+219B, U+2669-266F.\n\n\t* sfd/FreeSerifBold.sfd - added U+2669-266F.\n\n2005-11-12  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSansBold.sfd - added U+0180, U+0181, U+0183, U+0187,\n\tU+0188, U+018A, U+018C, U+018D, U+0193, U+019C, U+01A0, U+01A1,\n\tU+01AC, U+01AF, U+01B0, U+025C, U+0260, U+026E, U+0277, U+0281,\n\tU+0284.\n\n2005-11-11  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSansBold.sfd - added U+195, U+1A6, U+025E, U+026E,\n\tU+029A, U+0313, U+0314, U+0342, U+0344, U+0345. Started adding\n\taccent anchors.\n\n\t* sfd/FreeMono.sfd - applied the sequence for reducing redundant\n\tpoints, suggested by Werner Lemberg.\n\n\t* sfd/FreeMono.sfd - corrected Greek letters (using tonos instead\n\tof a vertical line). Added U+026E, U+F6BE. Accented characters in\n\tLatin 1, Latin Extended A and partly Latin Extended B replaced by\n\treferences.\n\n\t* sfd/FreeSerifBold.sfd - applied the sequence for reducing\n\tredundant points, suggested by Werner Lemberg. Added U+01A5,\n\tU+02A0, U+2190-219B, U+219E-21A8, U+21B8, U+21B9, U+21C4-21CA,\n\tU+21E4, U+21E5.\n\t\n2005-11-10  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSansOblique - changed U+0192, U+01A5; added U+01C0-01C3.\n\n\t* sfd/FreeSansBold.sfd - replaced glyphs with references in the\n\tCyrillic area. Removed U+04A8, U+04A9. Added U+04C5, U+04C6,\n\tU+04C9, U+04CA, U+04CD, U+04CE, U+0535, U+053F, U+0546, U+0565,\n\tU+0584, U+0587, U+0589.\n\n2005-11-10  Denis Jacquerye <moyogo@gmail.com>\n\n\t* sfd/FreeSans.sfd - added U+028A-U+028B\n\n\t* sfd/FreeSansOblique - added U+028A-U+028B, U+0276, \n\tU+0292, U+0294-U+0296, U+0298-U+0299 and U+029B; fixed some \n\tother glyphs\n\n2005-11-10  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd - added U+01A6. Simplified outlines in the\n\tASCII range.\n\n\t* sfd/FreeSansBold.sfd - added U+00A0, U+00AD, U+0531, U+2126,\n\tU+2190-2199, U+219E-21A8, U+21C4-21CA.\n\n\t* sfd/FreeSansBold.sfd - applied the sequence for reducing\n\tredundant points, suggested by Werner Lemberg. Added automatically\n\tconstructed accented characters in page 0x1E.\n\n2005-11-09  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd - added U+0183, U+018C.\t\n\t\n\t* sfd/FreeSans.sfd - added U+1EA2, U+1EA3, U+1EA8, U+1EA9, U+1EB2,\n\tU+1EB3, U+1EBA, U+1EBB, U+1EC2, U+1EC3, U+1EC8, U+1EC9, U+1ECE,\n\tU+1ECF, U+1ED4, U+1ED5, U+1EE6, U+1EE7, U+1EF6, U+1EF7, U+220A,\n\tU+220B, U+220D, U+2272, U+2273, U+2282, U+2283.\n\n\t* sfd/FreeSerifItalic.sfd - changed U+03D5.\n\n\t* sfd/FreeSerifBoldItalic.sfd - changed U+03C6; added U+2070,\n\tU+2075-2079, U+207F, U+2080, U+2085-2089, U+2155-217F.\n\n\t* sfd/FreeSerif.sfd - added U+0184, U+0185, U+018D, U+0195,\n\tU+0197, U+019A, U+019B, U+01A0, U+01A1, U+01AC, U+01B5, U+01B6,\n\tU+01C0, U+01C1, U+01C3, U+01F6, U+0294-0296, U+1E9A, U+1EDA-1EE3,\n\tU+1EE8-1EF1.\n\n2005-11-07  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSansBold.sfd - added U+0562, U+056D. U+0575.\n\n\t* sfd/FreeMono.sfd - added U+0589.\n\n2005-11-06  Primoz Peterlin  <peterlin@localhost.localdomain>\n\n\t* sfd/FreeSans.sfd - added U+0278, U+03D5, U+2248. Corrected\n\tU+2071, U+222E, U+2242, U+2243 in response to bug reports\n\thttp://bugs.debian.org/cgi-bin/bugreport.cgi?bug=276118\n\thttp://bugs.debian.org/cgi-bin/bugreport.cgi?bug=276120\n\n\t* sfd/FreeMono.sfd - added U+2227, U+2228, U+2262. Corrected\n\tU+2299-229D in response to bug report\n\thttp://bugs.debian.org/cgi-bin/bugreport.cgi?bug=276121\n\n\t* sfd/FreeMonoBold.sfd - added U+2010, U+2012 in response to bug\n\treport http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=289032\n\tSwapped U+03C6 (Greek small letter phi) and U+03D5 (Greek phi\n\tsymbol) in order to conform to Unicode standard. Simplified glyph\n\tshapes in ASCII range. Started adding \"above\" and \"below\" anchors.\n\t\n2005-11-05  Primoz Peterlin  <peterlin@localhost.localdomain>\n\n\t* sfd/FreeSerif.sfd - accented letters in Latin Extended-A\n\treplaced by references wherever possible.\n\n\t* sfd/FreeSerif.sfd - added U+0180, U+0181, U+0187, U+0188,\n\tU+018A, U+0193, U+019C, U+01A4, U+01A5, U+01A7, U+01A8, U+01AF,\n\tU+01B0, U+026E, U+0270, U+0278, U+0280, U+0281, U+028B, U+0299,\n\tU+029C, U+029F.\n\t\n2005-11-03  Primoz Peterlin  <peterlin@localhost.localdomain>\n\n\t* sfd/FreeSansBold.sfd - added U+0180, U+0184, U+0185, U+0192,\n\tU+019B, U+01A0-01A2, U+01AF, U+01B0, U+01EE, U+01EF, U+0292,\n\tU+0294-0296, U+02A1, U+0532, U+054C, U+057C, U+222B. Changed\n\tU+014B, U+01A5, U+01B4, U+03BB.\n\n\t* sfd/FreeSans.sfd - added U+04C5, U+04C6, U+04C9, U+04CA, U+04D,\n\tU+04CE.\n\n\t* sfd/FreeSansBold.sfd - cleaner Arabic outlines. Added U+01E4,\n\tU+01E5.\n\n2005-11-02  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSansBold.sfd - started Armenian; added U+0538, U+0542,\n\tU+0544, U+0548, U+054D, U+054F, U+0550, U+0553, U+0555, U+0561,\n\tU+0563, U+0564, U+0566, U+0568 U+056B, U+056F, U+0570, U+0572,\n\tU+0578, U+057A, U+057D-057F, U+0580, U+0581, U+0583, U+0585.\n\n\t* sfd/FreeMono.sfd - swapped U+03C6 (Greek small letter phi) and\n\tU+03D5 (Greek phi symbol) in order to conform to Unicode standard.\n\tAdded U+04C5, U+04C6, U+04C9, U+04CA, U+04D, U+04CE.\n\t\n2005-11-01  Primoz Peterlin  <peterlin@localhost.localdomain>\n\n\t* sfd/FreeSansBold.sfd - modified U+019C.\n\n\t* sfd/FreeSansBoldOblique.sfd - added U+00A0, U+00AD, U+019C,\n\tU+01B7, U+01B8, U+0275, U+0278, U+0298, U+2012, U+2015,\n\tU+2070-207F, U+2080-208E, U+2153-217F, U+2213, U+2215.\n\n2005-10-31  Primoz Peterlin  <peterlin@localhost.localdomain>\n\n\t* sfd/FreeSerif.sfd - added U+0199, U+01AB, U+0265, U+0282,\n\tU+0288, U+028C-028E, U+0290, U+029E, U+02A0.\n\n2005-10-28  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerifBold.sfd - added U+019E, U+01AB, U+01AD, U+01B1,\n\tU+0256, U+025F, U+0265, U+0269, U+026F, U+0270, U+0279-027F,\n\tU+0282, U+0287, U+0288, U+028C-028E, U+0290.\n\n\t* sfd/FreeSerifBold.sfd - added U+2070, U+2075-2079, U+2080,\n\tU+2085-2089, U+2153-215E, U+2113-2115, U+2119.\n\n\t* sfd/FreeSerifBold.sfd - added U+0199, U+019B, U+01B8, U+01B9,\n\tU+01BE, U+01C0, U+0262, U+0274, U+0278, U+0280, U+028F, U+0298,\n\tU+0299, U+029C, U+029E, U+029F, U+2012, U+2015, U+2016, U+2129,\n\tU+2217.\n\t\n2005-10-27  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd - added U+018D, U+0194, U+019B, U+019C, U+01B5,\n\tU+01B6, U+0295, U+0296, U+029B, U+02A2, U+0472, U+0473, U+2114,\n\tU+2119.\n\n\t* sfd/FreeSerifItalic.sfd - minor cleanup in the superscript range\n\t(U+2070-2079).\n\n\t* sfd/FreeSansBold.sfd - added subscripts and superscripts\n\t(U+2070-208F), completed fractions (U+2152-215F) and Roman\n\tnumerals (U+2160-217F).\n\n\t* sfd/FreeSerifBold.sfd - added U+018B, U+018E, U+018F, U+0191,\n\tU+019D, U+01A7, U+01A8, U+01AE, U+0253, U+0266, U+0267, U+026A,\n\tU+0271-0273, U+0283, U+0285.\n\t\n2005-10-26  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd - added \"above\" anchors to selected Cyrillic\n\tcharacters. Added U+0294, U+02A1.\n\n\t* sfd/FreeMono.sfd - added U+2011, U+2012, U+203B, U+204A, U+2071,\n\tU+2129, U+2232, U+2233. Changed and/or corrected U+2106, U+211E,\n\tU+2126, U+2127, U+2153-215F, U+2202.\n\n\t* sfd/FreeMono.sfd - a try to imitate Denis' work on adding\n\tanchors by adding \"above\" anchor to a couple of basic Latin\n\tcharacters.\n\n\t* sfd/FreeSansBold.sfd - added U+0278, U+0298. Cleaned up outlines\n\tof most Greek letters. \n\n\t* sfd/FreeSansBold.sfd - Added U+2010-2012, U+2015, U+2032,\n\tU+203C, U+2047-2049.\n\n\t* sfd/FreeSans.sfd - Added U+01C0-01C2, U+0276, U+0292,\n\tU+0298. Changed U+0251, U+0294, U+02A1.\n\t\n2005-10-25  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerifItalic.sfd - added U+00A0, U+00AD, U+2010-2012,\n\tU+2015, U+2126, U+2127, U+2153-215E, U+2160-217F, U+2190-2193,\n\tU+2669-266F. FreeSerifItalic is now MES-1 compliant.\n\n\t* sfd/FreeSerif.sfd - added U+0191, U+019D, U+01AE, U+027E,\n\tU+027F, U+0283, U+0285.\n\n\t* sfd/FreeSerif.sfd - added U+019E, U+01AD, U+01B8, U+01B9,\n\tU+0253, U+0256, U+0257, U+025C, U+0260, U+0266, U+0267, U+0269,\n\tU+026D, U+0271-0273, U+0279-027D.\n\t\n\t* sfd/FreeSerifBoldItalic.sfd - added U+00A0, U+00AD, U+2010-2012,\n\tU+2015, U+2032-2034, U+203C, U+2047-204A, U+2074, U+2081-2084,\n\tU+2126, U+2153, U+2154, U+215F, U+2215.  Corrected positions of\n\tdiacritics on U+0200-0217.\n\n\t* sfd/FreeSansOblique.sfd, sfd/FreeSans.sfd, sfd/FreeSansBold.sfd,\n\tsfd/FreeSansBoldOblique.sfd, sfd/FreeMonoBoldOblique.sfd,\n\tsfd/FreeMonoBold.sfd, sfd/FreeSerifItalic.sfd,\n\tsfd/FreeSerifBold.sfd sfd/FreeSerifBoldItalic.sfd - brought in\n\tsync with Valek Filipov's urw-fonts-1.0.7pre41.\n\n\t* sfd/FreeSansOblique.sfd - added U+00A0, U+2011-2012, U+2015,\n\tU+2070, U+2071, U+2074-2079, U+2080-2089, U+2126, U+2153-215F,\n\tU+2190-2195, U+2215, U+266A. FreeSansOblique is now MES-1\n\tcompliant.\n\t\n2005-10-24 Denis Jacquerye <moyogo@altern.org>\n\t\n\t* sfd/FreeSans.sfd, sfd/FreeSansBold.sfd, \n\tsfd/FreeSansOblique.sfd, sfd/FreeSansBoldOblique.sfd - added \n\tccmp for i and j to be substituted with dotless i or j when \n\tfollowed by above diacritic\n\n2005-10-24  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd - added U+2011, U+2012, U+2015. FreeSans is now\n\tMES-1 conformant.\n\n2005-10-23 Denis Jacquerye <moyogo@gmail.com>\n\n\t* sfd/FreeSans.sfd - added above, below, abovemk and belowmk \n\tanchors for diacritics placement to many Basic Latin characters, \n\tsome Latin Extented A and B, and some IPA characters; fixed a \n\tcouple of precomposed characters to have diacritics at the same \n\theight as similar characters.\n\n2005-10-21  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd - added U+02B9, U+02BA, U+02CD, U+2017,\n\tU+2036, U+2037, U+203C, U+203E, U+2047-204A.\n\n2005-10-20  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerifBold.sfd - added U+0182, U+0189, U+0192, U+019F,\n\tU+01A9, U+01B7, U+01C4-01CC, U+01E0-1E2, U+01F0-01F3, U+F6BE.\n\tCorrected position of diacritics on U+0200-0217.\n\n\t* sfd/FreeSerif.sfd - added U+00A0, U+00AD, U+0182, U+0189,\n\tU+018B, U+018E, U+018F, U+0192, U+019F, U+01A9, U+01B1, U+01B7,\n\tU+01DD, U+2010-2013, U+2015. FreeSerif is now MES-1 conformant.\n\n2005-10-19 Denis Jacquerye <moyogo@gmail.com>\n\n\t* sfd/FreeSerif.sfd - added U+0268, U+026A, U+0289, U+0292; and \n\tanchor \"above\" to more base glyphs.\n\n\t* sfd/FreeSerifBold.sfd, sfd/FreeSerifItalic.sfd, \n\tsfd/FreeSerifBoldItalic.sfd - added U+0250-0252, U+0258-0259, \n\tU+0261, U+0268, U+026A, U+0279, U+0289\n\n\t* sfd/FreeSerifBold.sfd - added anchor \"above\" to marks \n\tU+0300-0314, and to base glyphs (vowels).\n\n2005-10-18 Denis Jacquerye <moyogo@gmail.com>\n\n\t* sfd/FreeSerif.sfd - added anchor \"above\" to marks U+0300-0314, \n\tand bases vowel of the U+0041-007A range, U+00E6, U+0186, U+0190, \n\tU+0254 and U+025B; fixed Latin-1 Supplement block accented glyphs \n\tto use references.\n\n2005-10-17  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSansBold.sfd - added U+01B7, U+01B8, U+0275.\n\n2005-10-16 Denis Jacquerye <moyogo@gmail.com>\n\t* sfd/FreeSans.sfd, sfd/FreeSansOblique.sfd - added some Latin \n\tExtended-B African letters: U+0181, U+018A, U+0197-0198, U+01A4, \n\tU+01AC, U+01B1, U+01B3-01B4;\n\n\t* sfd/FreeSansBold.sfd, sfd/FreeSansBoldOblique.sfd - added Latin \n\tExtended-B U+0187, 018E-018F, U+0191, U+0193, U+0197-0199, \n\tU+019D-019F, U+01AB-01AE; correcting width of non-space \n\tCombining Diacrtical Marks; added more glyphs to IPA Extensions \n\tto match non Bold\n\t\n\t* sfd/FreeSansBoldOblique.sfd - added many accented glyphs to\n\tLatin Extended-B\n\n2005-10-15 Denis Jacquerye <moyogo@gmail.com>\n\t* sfd/FreeSans.sfd, sfd/FreeSansOblique.sfd - added IPA Extensions\n\tU+0262,U+0274,U+0280-0281, U+0299, U+029F, and Spacing Modifier\n\tLetters U+02C9-02CB; fixed U+0287,029E height to baseline; added\n\tstroke to U+0268\n\n\t* sfd/FreeSansOblique.sfd - fixed skew on U+027F\n\n\t* sfd/FreeSansBold.sfd, sfd/FreeSansBoldOblique.sfd - added to Latin\n\tExtended-B U+01A7-01A8, IPA Extensions U+0251-0253, U+0256-0257,\n\tU+0261, U+0265-026A, U+026F-0273, U+0289, U+028C-028E\n\n\t* sfd/FreeSansBoldOblique.sfd - added to Latin extended-B U+0189,\n\tU+01A8, U+01B1, U+0283, U+02C9 and Spacing Modifiers U+02C9-02CB\n\t\n2005-10-14  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSansBold.sfd - Added a couple of composite glyphs,\n\tmostly in the IPA and Latin Extended B ranges.\n\n2005-10-13 Denis Jacquerye <moyogo@gmail.com>\n\n\t* FreeSans.sfd - removed overlap and simplified U+0187, 0191, \n\t0193, 01A5, 01AE, 0260, 0271, 0272, 0273, 027B; fixed diacritics \n\tplacement on U+0200-0217; fixed glyph for U+0283 to correct esh \n\twithout stroke; added U+025F and fixed U+025F from it; fixed \n\theight of glyph at U+0285; arranged U+027E,027F to make more \n\tdistinguishable from U+0072.\n\n\t* FreeSansOblique.sfd - added the corrected or new glyphs from \n\tFreeSans; diacritics on U+200-0217 will need height readjustements.\n\n\t* FreeSansBold.sfd, FreeSansBoldOblique.sfd - added U+0186, 0190, \n\t0250, 0254, 0258, 0259, 025B, 025C\n\n2005-10-13  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd - Minor changes: U+22A2, U+22A3, U+22A6, U+23AE.\n\tAdded U+0250, U+0251, U+0258, U+0259, U+0275.\n\n\t* sfd/FreeSerifItalic.sfd - Added glyphs U+222B-U+222F, U+2320,\n\tU+2321. Fixed diacritics on U+0200-U+0217.\n\n2005-10-12 Denis Jacquerye <moyogo@gmail.com>\n\n\t* sfd/FreeSerif.sfd - Corrected diacritics position on \n\tU+01D5-01D9,01DB,01EA-01ED,0200-0217 and U+022A.\n\t\n\t* sfd/FreeSerif.sfd, sfd/FreeSerifBold.sfd, sfd/FreeSerifItalic.sfd,\n\tsfd/FreeSerifBoldItalic.sfd - added U+0186,0190,0254 and U+025B.\n\t\n2005-10-11  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd - Fixed bug #13399 (glyphs for U+0360 and\n\tU+0361 were swapped).\n\t\n\t* sfd/FreeSerif.sfd - Attempt to correct bug #13370: INTEGRAL\n\tEXTENSION does not align with TOP/BOTTOM HALF INTEGRAL; added\n\tglyph U+23AE.\n\t\n2005-05-16  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd - Corrected shapes for Cross of Lorraine and\n\tCross of Jerusalem.\n\n2005-04-07  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSansBold.sfd - Added some combining accents, just to\n\ttest the a version of FontForge.\n\n2003-12-05  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd - Some composite Latin characters rebuilt, as\n\tthey had accents 600 points to the left due to changes on October\n\t2. Some other minor changes in the mathematics area.\n\n2003-10-08  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMonoOblique.sfd, sfd/FreeSerifBoldItalic.sfd,\n\tFreeSerifItalic.sfd - applied Josef Segur's corrections from\n\tOct. 5.\n\n2003-10-02  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd - Abbas Izad's contributed Arabic/Farsi\n\tcharacters added.\n\t\n\t* sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd,\n\tsfd/FreeMonoBoldOblique.sfd, sfd/FreeSans.sfd,\n\tsfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd,\n\tsfd/FreeSansBoldOblique.sfd, sfd/FreeSerif.sfd,\n\tsfd/FreeSerifItalic.sfd, sfd/FreeSerifBold.sfd,\n\tsfd/FreeSerifBoldItalic.sfd - Combining characters (U+0300 -\n\tU+036F) moved left, so that they have negative horizontal values\n\tand zero advance width.\n\n2003-09-15  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerifBold.sfd, sfd/FreeSerifItalic.sfd - Started working\n\ton super- and subscripts. \n\n2003-09-12  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd, sfd/FreeSerif.sfd - Added some missing\n\t Hiragana and Katakana characters.\n\n\t* sfd/FreeSansBold.sfd - Cleared background characters in Latin\n\tExtended-A. Added some automatically constructed characters in\n\tLatin Extended-B. Started with superscripts and subscripts.\n\n\t* sfd/FreeSans.sfd - Subscript numerals (U+2080-U+2089) completed.\n\t\n2003-05-19  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd - Thai characters po pla and bo baimai\n\tswapped; Thai character fongman corrected; all courtesy Theppitak\n\tKaroonboonyanan.\n\n2003-05-17  Panayotis Katsaloulis  <panayotis@panayotis.com>\n\n\t* sfd/FreeSerif.sfd, sfd/FreeSerifItalic.sfd,\n\tsfd/FreeSerifBold.sfd, sfd/FreeSerifBoldItalic.sfd - Full support\n\tof all ancient greek glyphs\n\n2003-05-15  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* tools/KerningNumerals.pl - A Perl script for moving kerning\n\tinformation from ASCII numerals (U+0030...) to characters in the\n\tAdobe corporate use area (U+F6xx).\n\n\t* sfd/FreeSansBold.sfd, sfd/FreeSansOblique.sfd,\n\tsfd/FreeSansBoldOblique.sfd - Created kerned numerals in the Adobe\n\tcorporate use area (U+F6xx) and moved kerning information from\n\tASCII numerals to the kerned numerals.\n\n2003-05-14  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd - First approximation of super- and subscript\n\tnumerals and vulgar fractions.\n\n\t* sfd/FreeSerif.sfd - Super- and subscript numerals complete,\n\tvulgar fractions completed and redone as references rather than\n\toutlines.\n\n2003-05-12  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd - Clean-up of the Cyrillic letters added on\n\tMarch 27; super- and subscripts, vulgar fractions.\n\n2003-05-09  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMonoBold.sfd - Added a couple of characters to\n\tthe Latin Extended-B area and the IPA extensions area.\n\n2003-05-08  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerifBoldItalic.sfd - Added a couple of characters to\n\tthe Latin Extended-B area.\n\n\t* sfd/FreeSerif.sfd, sfd/FreeSerifItalic.sfd,\n\tsfd/FreeSerifBold.sfd, sfd/FreeSerifBoldItalic.sfd - ASCII\n\tnumerals now monospaced; kerned numerals moved to Adobe corporate\n\tuse area\n\t(U+F6xx).\n\n2003-05-07  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd - Roman numerals now more complete.\n\n\t* sfd/FreeSansOblique.sfd, sfd/FreeSansBoldOblique.sfd - Accented\n\tcharacters added in the Latin Extended-B area.\n\n\t* sfd/FreeSans.sfd - Greek accents added in the Greek Extended\n\tarea, characters added in the Latin Extended-B area, Roman\n\tnumerals added.\n\n\t* sfd/FreeMonoOblique.sfd - Kerning pairs removed (what were they\n\tdoing in a monospaced font, anyway?).\n\n\t* sfd/FreeMonoBoldOblique.sfd - Additions in Latin Extended-B and\n\tBasic Greek.\n\n\t* sfd/FreeMono.sfd, sfd/FreeMonoBold.sfd, sfd/FreeMonoOblique.sfd,\n\tsfd/FreeMonoBoldOblique.sfd, sfd/FreeSans.sfd,\n\tsfd/FreeSansBold.sfd, sfd/FreeSansOblique.sfd,\n\tsfd/FreeSansBoldOblique.sfd - Major cleanup (fixed widths, open\n\tpaths, path directions (clockwise/counter-clockwise), points\n\trounded to integer values; outlines simplified etc.)\n\n2003-05-06  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* tools/OS2UnicodeRange - A simple script to display OS/2 Unicode\n\trange table in TrueType fonts.\n\n\t* sfd/FreeSans.sfd, sfd/FreeSansBold.sfd - ASCII numerals now\n\tmonospaced; kerned numerals moved to Adobe corporate use area\n\t(U+F6xx). FreeSans is done, FreeSansBold half-way.\n\n\t* sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd,\n\tsfd/FreeMonoBoldOblique.sfd, sfd/FreeSans.sfd,\n\tsfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd,\n\tsfd/FreeSansBoldOblique.sfd, sfd/FreeSerif.sfd,\n\tsfd/FreeSerifItalic.sfd, sfd/FreeSerifBold.sfd,\n\tsfd/FreeSerifBoldItalic.sfd - Added 2003 in copyright info.\n\n2003-03-27  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd - Cyrillic and Cyrillic Supplement blocks\n\tbrought to conformance with Unicode 3.2, courtesy Daniel Shurovich\n\tChirkov.\n\n2003-03-19  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd, sfd/FreeSansOblique.sfd - somewhat wider\n\tgermandbls (U+00DF), due to complaints by Walter Schmidt.\n\n2003-03-18  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd - Added Sinhala glyphs from the Tipitaka\n\tproject <http://www.metta.lk>, recoded to Unicode by Noah Levitt.\n\n2003-02-19  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd - Minor changes on mathematical operators.\n\n2003-02-18  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd - minor cleanup of glyph backgrounds; changed\n\tintegral signs (U+222B - U+2230)\n\n2003-02-05  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd - added a couple of glyphs in the IPA and\n\tAfrican Latin ranges.\n\n2003-01-30  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd, sfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd,\n\tsfd/FreeSansBoldOblique.sfd, sfd/FreeMonoBold.sfd,\n\tsfd/FreeMonoBoldOblique.sfd - Corrected Maltese Hbar (U+0126)\n\tand/or hbar (U+0127).\n\n2003-01-28  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerifItalic.sfd - Corrected Maltese hbar (U+0127).\n\n2002-12-18  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* tools/ConvertFont - PfaEdit script for converting SFD files to\n\tTrueType fonts.\n\n\t* sfd/FreeSans.sfd - Added Tamil and Kannada glyphs from the\n\tAkruti Indic fonts.\n\n2002-12-17  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd - Added Devanagari and Gujarati glyphs from the\n\tAkruti Indic fonts.\n\n\t* www/index.html - Added information on Rogier van Dalen's tools.\n\n\t* AUTHORS - Added M.S. Sridhar.\n\n\t* CREDITS - Correct spelling of Culmus project. Added M.S. Sridhar.\n\n2002-12-06  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd - Added Braille glyphs, courtesy Vyacheslav\n\tDikonov.\n\n\t* sfd/FreeSans.sfd - Added Unicode Syriac glyphs, courtesy\n\tVyacheslav Dikonov.\n\n2002-10-11  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* www/index.html - Added information on the availability of the\n\tDebian GNU/Linux package.\n\n\t* sfd/FreeSerif.sfd, sfd/FreeSans.sfd - added some kern pairs\n\tbeyond Latin-1 area.\n\n\t* sfd/FreeSerif.sfd, sfd/FreeSerifItalic.sfd,\n\tsfd/FreeSerifBold.sfd, sfd/FreeSerifBoldItalic.sfd - re-introduced\n\tall the emtpy glyph slots (changes from Sep 23 made PfaEdit\n\tcrash). \n\n2002-09-23  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd, sfd/FreeSerifItalic.sfd,\n\tsfd/FreeSerifBold.sfd, sfd/FreeSerifBoldItalic.sfd - imported\n\tkerning information from the URW++ AFM files\n\n2002-09-11  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd,\n\tsfd/FreeMonoOblique.sfd - updated Hebrew parts to comply with\n\tCulmus v0.6.\n\n\t* sfd/FreeSans.sfd, sfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd,\n\tsfd/FreeSansOblique.sfd - Added Danilo Segan's Serbian Cyrillic\n\tglyphs; updated Hebrew parts to comply with Culmus v0.6.\n\n2002-09-09  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd,\n\tsfd/FreeMonoOblique.sfd, sfd/FreeSans.sfd,\n\tsfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd,\n\tsfd/FreeSansOblique.sfd - Updated Cyrillic part to match\n\tFilippov's 1.0.7pre14\n\n\t* sfd/FreeSansOblique.sfd - added Sam Stepanyan's Armenian glyphs\n\tfrom FreeSans (skewed for 12 degrees).\n\n2002-09-06  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd, sfd/FreeSansOblique.sfd,\n\tsfd/FreeSansBold.sfd, sfd/FreeSansOblique.sfd - Added Maxim\n\tIorsh's Hebrew characters.\n\n2002-08-29  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd,\n\tsfd/FreeMonoBold.sfd, sfd/FreeMonoOblique.sfd - Added Maxim\n\tIorsh's Hebrew characters.\n\n\t* AUTHORS, CREDITS - Added Maxim Iorsh as author.\n\n2002-08-28  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* www/index.html - Added information of Microsoft's withdrawal of\n\tfreely available Unicode TrueType fonts\n\n\t* www/resources.html - Added link to Maxim Iorsh's Culmus project.\n\t\n2002-07-26  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd - Added a couple of characters (Arrows area).\n\n2002-06-11  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd - Applied Michalis Kabrianis's patch concerning\n\tperispomeni in Greek politoniko.\n\n2002-05-23  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd - Applied Michalis Kabrianis's patch concerning\n\tpsili in Greek politoniko. Also added two working variants of\n\tchars in the IPA range.\n\n2002-05-15  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd, sfd/FreeSansBold.sfd, sfd/FreeSerif.sfd,\n\tsfd/FreeSerifBold.sfd - Deleted explicit \".notdef\" character with\n\tno contours.\n\n2002-05-14  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd,\n\tsfd/FreeMonoBoldOblique.sfd, sfd/FreeSans.sfd,\n\tsfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd,\n\tsfd/FreeSansBoldOblique.sfd, sfd/FreeSerif.sfd,\n\tsfd/FreeSerifItalic.sfd, sfd/FreeSerifBold.sfd,\n\tsfd/FreeSerifBoldItalic.sfd - The new version of PfaEdit saves\n\tcorrectly formed Panose and LineGap lines.\n\n\t* sfd/FreeSansBoldOblique.sfd - Filled-in the missing TTFWidth and\n\tTTFWeight values.\n\n2002-05-09  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd - Added diacritics to the Spacing Modifier\n\tLetters and Combining Diacritical Marks areas. Added composed\n\tglyphs to the Latin Extended-B area.\n\n2002-05-07  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd,\n\tsfd/FreeMonoBoldOblique.sfd, sfd/FreeSans.sfd,\n\tsfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd,\n\tsfd/FreeSansBoldOblique.sfd, sfd/FreeSerif.sfd,\n\tsfd/FreeSerifItalic.sfd, sfd/FreeSerifBold.sfd,\n\tsfd/FreeSerifBoldItalic.sfd - Updated Panose information with data\n\tprovided by Josef W. Segur. Updated TTF headers with English and\n\tSlovenian text.\n\n2002-04-30  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMonoBold.sfd - Working on Greek small letters. Several\n\tminor changes (lower carons etc.)\n\n2002-04-29  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* FreeMonoBoldOblique.sfd - Started adding Greek.\n\n\t* sfd/FreeMonoBold.sfd - Added glyphs in the Geometrical Shapes\n\tand Miscellaneous Symbols area. Harmonizing Greek with Latin. Done\n\twith capitals.\n\n\t* sfd/FreeMono.sfd - Deleted the explicit .notdef character. Added\n\tone glyph to the Geometrical Shapes area, which is now completed;\n\tadded three glyphs to the Miscellaneous Symbols area. Harmonizing\n\tGreek with Latin. Done with the capitals.\n\n2002-04-26  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd - Adjusted accent positions on several glyphs\n\tin the Latin Extended-A area.\n\n2002-04-25  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMonoBold.sfd - Box Drawing area completed. Added a\n\tcouple of glyphs in the Geometrical Shapes area.\n\n\t* sfd/FreeMono.sfd - Small corrections in the Box Drawing area.\n\n2002-04-24  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd - Box Drawing area completed.\n\n2002-04-23  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* tools/WGL4.lst - corrected.\n\n\t* sfd/FreeMono.sfd, sfd/FreeMonoBold.sfd - Working on Box Drawing\n\tarea.\n\n2002-04-22  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd, sfd/FreeMonoBold.sfd - Working on Latin\n\tExtended-B and Greek.\n\n2002-04-19  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd - Somewhat cleaner chess figures.\n\n\t* tools/MES-2.txt, tools/MES-2.lst - Corrected list (it is not\n\t203C-203E, it is 203C and 203E).\n\n\t* sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd,\n\tsfd/FreeMonoBoldOblique.sfd, sfd/FreeSans.sfd,\n\tsfd/FreeSansOblique.sfd, sfd/FreeSansBold.sfd,\n\tsfd/FreeSansBoldOblique.sfd, sfd/FreeSerif.sfd,\n\tsfd/FreeSerifItalic.sfd, sfd/FreeSerifBold.sfd,\n\tsfd/FreeSerifBoldItalic.sfd - Changed \"Family Name\" from Free to\n\tFreeSerif, FreeSans and FreeMono, as appropriate. Changed Font\n\tModifiers from MonoBold etc. to Bold, Italic, Oblique, BoldOblique\n\tand BoldItalic.\n\n2002-04-18  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd, sfd/FreeMonoBold.sfd,\n\tsfd/FreeMonoBoldOblique.sfd - Corrected metrics; now all character\n\twidths are set to 600.\n\n2002-04-17  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd - Corrected glyphs in the Box Drawing area and\n\tBlock Elements area, which should extend through the ascender *and\n\tdescender* height.\n\n\t* sfd/FreeMonoBold.sfd - Continued working on harmonizing Greek\n\tletters with Latin and Cyrillic.\n\n\t* sfd/FreeMonoBold.sfd - Added some box drawing characters.\n\n2002-04-16  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* www/design-notes.html - Updated notes on stroke width for\n\tsymbols in Free Mono Bold.\n\n\t* sfd/FreeMono.sfd - Added a handful of characters in the\n\tMiscellaneous Symbols area.\n\n\t* sfd/FreeMonoBoldOblique.sfd - Added subscripts, superscripts and\n\tvulgar fractions.\n\n\t* sfd/FreeMonoBold.sfd - Started harmonizing Greek letters with\n\tLatin and Cyrillic.\n\n\t* sfd/FreeMonoBold.sfd - Added subscripts, superscripts and vulgar\n\tfractions.\n\n2002-04-15  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* www/design-notes.html - Updated notes on super-/subscripts in\n\tFree Mono Bold. Separate subsections for Free Mono regular and\n\tFree Mono Bold.\n\n2002-04-12  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd - Added Ethiopian glyphs, converted from the\n\tMetafont sources from TGI, Universität Hamburg (authors Berhanu\n\tBeyene, Prof. Dr. Manfred Kudlek, Olaf Kummer, and Jochen\n\tMetzinger) using Szabo's TeXtrace and retouched using\n\tPfaEdit. Ethiopian metafonts are released under GNU GPL,\n\t<http://www.informatik.uni-hamburg.de/TGI/mitarbeiter/wimis/kummer/ethiop_eng.html>.\n\n\t* sfd/FreeMonoBold.sfd - Added 40 characters, mostly in the Latin\n\tExtended-B and IPA Extensions areas.\n\n2002-04-11  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd - Added a handful of characters in the Latin\n\tExtended-B, IPA Extensions, Currency Symbols and Miscellaneous\n\tSymbols areas.\n\n2002-04-09  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd - Correcting accent positioning in the Extended\n\tGreek area; adding a couple of characters here and there. Still 20\n\tcharacters short of MES-2 conformance.\n\n2002-04-08  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd - Added some characters in the Arrows area;\n\tmore or less completed Extended Greek area (accents still need to\n\tbe fine-tuned).\n\n2002-04-05  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd - Modern non-Russian Cyrilic mostly completed.\n\n\t* sfd/FreeMonoOblique.sfd - Synchronized with FreeMono.\n\n\t* sfd/FreeSerif.sfd - Added Thomas Ridgeway's Tamil characters\n\t(converted from Metafont and edited somehwat).\n\t\n2002-04-04  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMonoOblique.sfd - Armenian letters added.\n\n\t* sfd/FreeMonoBold.sfd - Serbian Cyrillic letters dje, tshe, lje\n\tand nje corrected.\n\n\t* sfd/FreeMono.sfd - Serbian Cyrillic letters dje and tshe\n\tcorrected. Some other non-Russian Cyrillic letters modified and\n\t\"welded together\".\n\n2002-04-03  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd - Added more or less complete Armenian\n\tarea. The glyphs are a tidied-up version based on the Armenian\n\tCourier on the <http://www.cilicia.com/armo8.html>. Now we have\n\t1673 characters.\n\n2002-03-28  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd - Added some mathematical symbols.\n\n2002-03-26  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSans.sfd - took H.S. Pannu's Gurmukhi from FreeSerif. It\n\tactually fits to FreeSans much better. It seems I'll have to look\n\tfor another Gurmukhi font with modulated stroke for FreeSerif.\n\n\t* sfd/FreeSerifItalic.sfd - replaced existing Hebrew glyphs by\n\tthose from FreeSerif (slanted for 15.5 degrees).\n\n\t* sfd/FreeSerif.sfd - Added dotted Hebrew letters. Changed barred H.\n\n\t* sfd/FreeMono.sfd - Completed vulgar fractions; minor changes in\n\tGreek; added some mathematical operators.\n\n\t* sfd/FreeMonoBold.sfd - added 12 characters to Latin Extended-B\n\tand IPA Extensions areas (total 984).\n\n2002-03-25  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMonoBold.sfd - started adding Latin Extended-B and IPA\n\tExtensions.\n\n\t* sfd/FreeMono.sfd - Minor cosmetic changes; cleaning up Greek\n\t(removing redundant control points), added some non-European\n\tCyrillic glyphs as a test.\n\n2002-03-22  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd - Some minor modifications; letters in Latin\n\tExtended-B area \"welded\" together.\n\n2002-03-20  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* www/index.html - finally linked the resources and design notes\n\tpages.\n\n\t* www/design-notes.html - added scaling information for super- and\n\tsubscript numerals in FreeMono.\n\n2002-03-19  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd - the Latin Extended-B and IPA Extension area\n\tcharacters moved from FreeMono and skewed for 12 degrees.\n\n2002-03-18  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd - added a dozen or two of new characters, in\n\tparticular in the Latin Extended-B and IPA Extension area.\n\n2002-03-15  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd - added a dozen of two of new characters, in\n\tparticular in the IPA Extension area.\n\n\t* www/design-notes.html - Corrected data for x-height in FreeMono;\n\tinformation on constructing small caps.\n\n2002-03-14  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeMono.sfd - added three smiley characters to the\n\tMiscallaneous Symbols area.\n\n2002-03-10  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd - Anshuman Pandey has only converted Gurmukhi\n\tfrom TrueType to Metafont; the original author of Gurkmukhi font\n\tis Hardip Singh Pannu <http://members.aol.com/hspannu/punjabi.html>.\n\tGot the permission from him to include the Gurmukhi glyph set.\n\n2002-03-08  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd - Added some more glyphs in the Mathematical\n\tSymbols area to a total number of 3374.\n\n2002-03-06  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd - Added a basic Gurmukhi set.\n\n\t* www/design-notes.html - started a page on design notes\n\n\t* sfd/FreeMono.sfd - realized that glyphs in the Box Drawing area\n\tand Block Elements area should extend through the ascender *and\n\tdescender* height, and corrected it.\n\n\t* sfd/FreeMono.sfd, sfd/FreeMonoOblique.sfd - added some musical\n\tglyphs, linking \"no-break space\" to space, \"soft hyphen\" to\n\thyphen-minus etc.\n\n2002-03-05  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* tools/WGL4.lst - Added Windows Glyph List 4.0\n\n\t* tools/LigatureList.pl - Wrote a Perl script, which lists the\n\tGSUB list (ligature list) of a OpenType font.\n\n\t* sfd/FreeSerifBold.sfd, sfd/FreeSerifBoldItalic.sfd,\n\tsfd/FreeSerifItalic.sfd - auxilliary Hebrew glyphs added. They are\n\ttoo light compared with Latin and will be substituted with better\n\tones.\n\n2002-03-04  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd - Added some more glyphs to the Mathematical\n\tOperators area (page 0x22).\n\n\t* sfd/FreeSerif.sfd - Incomplete and fragmentary support for\n\tDevanagari, originating from Harsh Kumar's Shusha fonts was\n\treplaced by Frans Velthuis' Devanagari metafont, now maintained by\n\tAnshuman Pandey <apandey@u.washington.edu> and available under\n\tGPL. Until I figure out how to provide glyph substitution table in\n\tOpenType, only the Unicode part is there.\n\n2002-02-28  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* ChangeLog file created\n\n\t* sfd/FreeSerif.sfd - Added some Telugu glyphs to page 0x0C,\n\tcourtesy  Prasad A. Chodavarapu <http://chaitanya.bhaavana.net/fonts/>\n\n\t* sfd/FreeSerif.sfd - Added some glyphs to the Miscellaneous\n\tSymbols page (0x26).\n\t\n2002-02-26  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* mailing lists freefont-announce and freefont-bugs created\n\n2002-02-25  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/FreeSerif.sfd - Added a couple of glyphs in Mathematics\n\tOperators area.\n\n\t* sfd/FreeMono.sfd \n\t- Added some more glyphs, in particular in the Mathematical\n\tOperators section.\n\t- Changed FamilyName to Free, FontName to FreeMono, and Full name\n\tto \"Free Monospaced\".\n\n2002-02-20  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* sfd/ directory added containing FreeSerif, FreeSans and FreeMono\n\tfamilies.\n\n\t* tools/ directory added containing lists with characters required\n\tfor MES (Multilinguag European Subset) compliance.\n\n\t* tools/mes-list-expand.pl created - a Perl script for expanding MES\n\tranges into simple one-char-per-line format\n\n\t* tools/CheckConformance.pl created - a Perl script for checking\n\tconformance of a font file with a given coded character set\n\n\t* homepage <http://www.freesoftware.fsf.org/freefont/> created\n\n2002-02-19  Primoz Peterlin  <primoz.peterlin@biofiz.mf.uni-lj.si>\n\n\t* freefont (Free UCS Scalable Fonts) project approved on\n\tsavannah.gnu.org: <http://savannah.gnu.org/projects/freefont/>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/freefont-20090104/INSTALL",
    "content": "                          Installing GNU FreeFont\n                          =======================\n\nGNU FreeFont can be used in any modern operating system.\n\nThis document explains how to install FreeFont on some common systems.\n\nUNIX/GNU/Linux/BSD Systems\n--------------------------\n\nFreeFont works with any system using the free font rasterizer FreeType\n<http://www.freetype.org/>.\n\n* Debian GNU/Linux\n\nUsers of Debian GNU/Linux system will probably want to use the Debian package,\navailable from the Debian site, \n\n\t<http://packages.debian.org/unstable/x11/ttf-freefont.html>,\n\nor any of its mirrors.\n\nInstall them by issuing the command\n\tapt-get install ttf-freefont\n\n\n* KDE local installation\n\nUsers of KDE can install .ttf files on a per-user basis using the KDE \nControl Center module \"kcmfontinst\", which may appear in the menu as\n\n\tSettings -> System Administration -> Font Installer\n\nThis is especially helpful for developers and testers.\n\n\n* Generic X-windows\n\n\t1) Fetch the freefont-ttf.tar.gz package with Free UCS outline fonts\n\t   in the TrueType format.\n\n\t2) Unpack TrueType fonts into a suitable directory,\n\t   e.g. /usr/local/share/fonts/default/TrueType/\n\n\t3) If you have chosen any other directory, make sure the directory you\n\t   used to install the fonts is listed in the path searched by the X\n\t   Font Server by editing the config file in /etc/X11/.\n\n\t   In some systems, you list the directory in the item \"catalogue=\"\n\t   in the file /etc/X11/fs/config.\n\n\t4) Run ttmkfdir in the directory where you unpacked the fonts.\n\n\nWindows 95/98/NT/2000/XP; Vista\n-------------------------------\n\nNote that in at least Vista, XP and 2000, the OpenType versions perform much\nbetter than, and are recommended over, the TrueType ones.\n\n* Vista:\n\t1) From the Start menu, open Control Panels\n\t2) Drag-n-drop font files onto Fonts control panel\n           You may get a dialog saying\n        \t\"Windows needs your permission to continue\"\n\t   a) Click Continue\n\n* 95/98/NT:\n\tThe font installation is similar to Vista.\n\n\tIn order to use OpenType, users of Windows 95, 98 and NT 4.0 can\n\tinstall Adobe's 'Type Manager Light'.  It is available for download\n\twithout cost from Adobe's web site.\n\n\tOtherwise, use the TrueType versions.\n\nMac OS X\n--------\n\nInstalling on Mac OS X consists of moving the .ttf files to either\n\t/Library/Fonts/  or  ~/Library/Fonts/\ndepending on whether they should be available to all users on your system\nor just to yourself.\n\n--------------------------------------------------------------------------\n$Id: INSTALL,v 1.7 2008/12/26 12:33:31 Stevan_White Exp $\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/freefont-20090104/README",
    "content": "-*-text-*-\n                          GNU FreeFont\n\nThe GNU FreeFont project aims to provide a useful set of free scalable\n(i.e., OpenType) fonts covering as much as possible of the ISO 10646/Unicode\nUCS (Universal Character Set).\n\nStatement of Purpose\n--------------------\n\nThe practical reason for putting glyphs together in a single font face is\nto conveniently mix symbols and characters from different writing systems,\nwithout having to switch fonts.\n\nCoverage\n--------\n\nFreeFont covers the following character sets\n\n* ISO 8859 parts 1-15\n* CEN MES-3 European Unicode Subset\n  http://www.evertype.com/standards/iso10646/pdf/cwa13873.pdf\n* IBM/Microsoft code pages 437, 850, 852, 1250, 1252 and more\n* Microsoft/Adobe Windows Glyph List 4 (WGL4)\n  http://www.microsoft.com/typography/otspec/WGL4.htm\n* KOI8-R and KOI8-RU\n* DEC VT100 graphics symbols\n* International Phonetic Alphabet\n* Arabic, Hebrew, Armenian, Georgian, Ethiopian and Thai alphabets,\n  including Arabic presentation forms A/B\n* mathematical symbols, including the whole TeX repertoire of symbols\n* APL symbols\n  etc.\n\nEditing\n-------\n\nThe free outline font editor, George Williams's FontForge\n<http://fontforge.sourceforge.net/> is used for editing the fonts.\n\nDesign Issues\n-------------\n\nWhich font shapes should be made?  Historical style terms like Renaissance\nor Baroque letterforms cannot be applied beyond Latin/Cyrillic/Greek\nscripts to any greater extent than Kufi or Nashki can be applied beyond\nArabic script; \"italic\" is really only meaningful for Latin letters. \n\nHowever, most modern writing systems have typographic formulations for\ncontrasting uniform and modulated character stroke widths, and have some\nhistory with \"oblique\", faces.  Since the advent of the typewriter, most\nhave developed a typographic style with uniform-width characters.\n\nAccordingly, the FreeFont family has one monospaced - FreeMono - and two\nproportional faces (one with uniform stroke - FreeSans - and one with\nmodulated stroke - FreeSerif).\n\nTo make text from different writing systems look good side-by-side, each\nFreeFont face is meant to contain characters of similar style and weight.\n\nLicensing\n---------\n\nFree UCS scalable fonts is free software; you can redistribute it and/or\nmodify it under the terms of the GNU General Public License as published\nby the Free Software Foundation; either version 2 of the License, or\n(at your option) any later version.\n\nThe fonts are distributed in the hope that they will be useful, but\nWITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY\nor FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License\nfor more details.\n\nYou should have received a copy of the GNU General Public License along\nwith this program; if not, write to the Free Software Foundation, Inc.,\n51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.\n\nAs a special exception, if you create a document which uses this font, and\nembed this font or unaltered portions of this font into the document, this\nfont does not by itself cause the resulting document to be covered by the\nGNU General Public License. This exception does not however invalidate any\nother reasons why the document might be covered by the GNU General Public\nLicense. If you modify this font, you may extend this exception to your\nversion of the font, but you are not obligated to do so.  If you do not\nwish to do so, delete this exception statement from your version.\n\n\nFiles and their suffixes\n------------------------\n\nThe files with .sfd (Spline Font Database) are in FontForge's native format. \nPlease use these if you plan to modify the font files.\n\nTrueType fonts for immediate consumption are the files with the .ttf\n(TrueType Font) suffix.  These are ready to use in Xwindows based\nsystems using FreeType, on Mac OS, and on older Windows systems.\n\nOpenType fonts (with suffix .otf) are for use in Windows Vista. \nNote that although they can be installed on Linux, but many applications\nin Linux still don't support them.\n\n\n--------------------------------------------------------------------------\nPrimoz Peterlin, <primoz.peterlin@biofiz.mf.uni-lj.si>\nSteve White <stevan.white@googlemail.com>\n\nFree UCS scalable fonts: http://savannah.gnu.org/projects/freefont/\n$Id: README,v 1.6 2008/12/25 12:51:41 Stevan_White Exp $\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/freemono.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='FreeMono';\n$desc=array('Ascent'=>800,'Descent'=>-200,'CapHeight'=>40,'Flags'=>32,'FontBBox'=>'[-793 -200 699 800]','ItalicAngle'=>0,'StemV'=>70,'MissingWidth'=>600);\n$up=-125;\n$ut=50;\n$dw=600;\n$cw=array(\n32=>600,33=>600,34=>600,35=>600,36=>600,37=>600,38=>600,39=>600,40=>600,41=>600,\n42=>600,43=>600,44=>600,45=>600,46=>600,47=>600,48=>600,49=>600,50=>600,51=>600,\n52=>600,53=>600,54=>600,55=>600,56=>600,57=>600,58=>600,59=>600,60=>600,61=>600,\n62=>600,63=>600,64=>600,65=>600,66=>600,67=>600,68=>600,69=>600,70=>600,71=>600,\n72=>600,73=>600,74=>600,75=>600,76=>600,77=>600,78=>600,79=>600,80=>600,81=>600,\n82=>600,83=>600,84=>600,85=>600,86=>600,87=>600,88=>600,89=>600,90=>600,91=>600,\n92=>600,93=>600,94=>600,95=>600,96=>600,97=>600,98=>600,99=>600,100=>600,101=>600,\n102=>600,103=>600,104=>600,105=>600,106=>600,107=>600,108=>600,109=>600,110=>600,111=>600,\n112=>600,113=>600,114=>600,115=>600,116=>600,117=>600,118=>600,119=>600,120=>600,121=>600,\n122=>600,123=>600,124=>600,125=>600,126=>600,8364=>600,8218=>600,402=>600,8222=>600,8230=>600,\n8224=>600,8225=>600,710=>600,8240=>600,352=>600,8249=>600,338=>600,381=>600,8216=>600,8217=>600,\n8220=>600,8221=>600,8226=>600,8211=>600,8212=>600,732=>600,8482=>600,353=>600,8250=>600,339=>600,\n382=>600,376=>600,160=>600,161=>600,162=>600,163=>600,164=>600,165=>600,166=>600,167=>600,\n168=>600,169=>600,170=>600,171=>600,172=>600,173=>600,174=>600,175=>600,176=>600,177=>600,\n178=>600,179=>600,180=>600,181=>600,182=>600,183=>600,184=>600,185=>600,186=>600,187=>600,\n188=>600,189=>600,190=>600,191=>600,192=>600,193=>600,194=>600,195=>600,196=>600,197=>600,\n198=>600,199=>600,200=>600,201=>600,202=>600,203=>600,204=>600,205=>600,206=>600,207=>600,\n208=>600,209=>600,210=>600,211=>600,212=>600,213=>600,214=>600,215=>600,216=>600,217=>600,\n218=>600,219=>600,220=>600,221=>600,222=>600,223=>600,224=>600,225=>600,226=>600,227=>600,\n228=>600,229=>600,230=>600,231=>600,232=>600,233=>600,234=>600,235=>600,236=>600,237=>600,\n238=>600,239=>600,240=>600,241=>600,242=>600,243=>600,244=>600,245=>600,246=>600,247=>600,\n248=>600,249=>600,250=>600,251=>600,252=>600,253=>600,254=>600,255=>600,256=>600,257=>600,\n258=>600,259=>600,260=>600,261=>600,262=>600,263=>600,264=>600,265=>600,266=>600,267=>600,\n268=>600,269=>600,270=>600,271=>600,272=>600,273=>600,274=>600,275=>600,276=>600,277=>600,\n278=>600,279=>600,280=>600,281=>600,282=>600,283=>600,284=>600,285=>600,286=>600,287=>600,\n288=>600,289=>600,290=>600,291=>600,292=>600,293=>600,294=>600,295=>600,296=>600,297=>600,\n298=>600,299=>600,300=>600,301=>600,302=>600,303=>600,304=>600,305=>600,306=>600,307=>600,\n308=>600,309=>600,310=>600,311=>600,312=>600,313=>600,314=>600,315=>600,316=>600,317=>600,\n318=>600,319=>600,320=>600,321=>600,322=>600,323=>600,324=>600,325=>600,326=>600,327=>600,\n328=>600,329=>600,330=>600,331=>600,332=>600,333=>600,334=>600,335=>600,336=>600,337=>600,\n340=>600,341=>600,342=>600,343=>600,344=>600,345=>600,346=>600,347=>600,348=>600,349=>600,\n350=>600,351=>600,354=>600,355=>600,356=>600,357=>600,358=>600,359=>600,360=>600,361=>600,\n362=>600,363=>600,364=>600,365=>600,366=>600,367=>600,368=>600,369=>600,370=>600,371=>600,\n372=>600,373=>600,374=>600,375=>600,377=>600,378=>600,379=>600,380=>600,383=>600,384=>600,\n385=>600,386=>600,387=>600,388=>600,389=>600,390=>600,391=>600,392=>600,393=>600,394=>600,\n395=>600,396=>600,397=>600,398=>600,399=>600,400=>600,401=>600,403=>600,404=>600,405=>600,\n406=>600,407=>600,408=>600,409=>600,410=>600,411=>600,412=>600,413=>600,414=>600,415=>600,\n416=>600,417=>600,418=>600,419=>600,420=>600,421=>600,422=>600,423=>600,424=>600,425=>600,\n426=>600,427=>600,428=>600,429=>600,430=>600,431=>600,432=>600,433=>600,434=>600,435=>600,\n436=>600,437=>600,438=>600,439=>600,440=>600,441=>600,442=>600,443=>600,444=>600,445=>600,\n446=>600,447=>600,448=>600,449=>600,450=>600,451=>600,452=>600,453=>600,454=>600,455=>600,\n456=>600,457=>600,458=>600,459=>600,460=>600,461=>600,462=>600,463=>600,464=>600,465=>600,\n466=>600,467=>600,468=>600,469=>600,470=>600,471=>600,472=>600,473=>600,474=>600,475=>600,\n476=>600,477=>600,478=>600,479=>600,480=>600,481=>600,482=>600,483=>600,484=>600,485=>600,\n486=>600,487=>600,488=>600,489=>600,490=>600,491=>600,492=>600,493=>600,494=>600,495=>600,\n496=>600,497=>600,498=>600,499=>600,500=>600,501=>600,502=>600,503=>600,504=>600,505=>600,\n506=>600,507=>600,508=>600,509=>600,510=>600,511=>600,512=>600,513=>600,514=>600,515=>600,\n516=>600,517=>600,518=>600,519=>600,520=>600,521=>600,522=>600,523=>600,524=>600,525=>600,\n526=>600,527=>600,528=>600,529=>600,530=>600,531=>600,532=>600,533=>600,534=>600,535=>600,\n536=>600,537=>600,538=>600,539=>600,540=>600,541=>600,542=>600,543=>600,548=>600,549=>600,\n550=>600,551=>600,552=>600,553=>600,554=>600,555=>600,556=>600,557=>600,558=>600,559=>600,\n560=>600,561=>600,562=>600,563=>600,567=>600,592=>600,593=>600,594=>600,595=>600,596=>600,\n597=>600,598=>600,599=>600,600=>600,601=>600,602=>600,603=>600,604=>600,605=>600,606=>600,\n607=>600,608=>600,609=>600,610=>600,611=>600,612=>600,613=>600,614=>600,615=>600,616=>600,\n617=>600,618=>600,619=>600,620=>600,621=>600,622=>600,623=>600,624=>600,625=>600,626=>600,\n627=>600,628=>600,629=>600,630=>600,631=>600,632=>600,633=>600,634=>600,635=>600,636=>600,\n637=>600,638=>600,639=>600,640=>600,641=>600,642=>600,643=>600,644=>600,645=>600,646=>600,\n647=>600,648=>600,649=>600,650=>600,651=>600,652=>600,653=>600,654=>600,655=>600,656=>600,\n657=>600,658=>600,659=>600,660=>600,661=>600,662=>600,663=>600,664=>600,665=>600,666=>600,\n667=>600,668=>600,669=>600,670=>600,671=>600,672=>600,673=>600,674=>600,675=>600,676=>600,\n677=>600,678=>600,679=>600,680=>600,681=>600,682=>600,683=>600,684=>600,685=>600,686=>600,\n687=>600,688=>600,689=>600,690=>600,691=>600,692=>600,693=>600,694=>600,695=>600,696=>600,\n697=>600,698=>600,699=>600,700=>600,701=>600,702=>600,703=>600,704=>600,705=>600,706=>600,\n707=>600,708=>600,709=>600,711=>600,712=>600,713=>600,714=>600,715=>600,716=>600,717=>600,\n718=>600,719=>600,720=>600,721=>600,722=>600,723=>600,724=>600,725=>600,726=>600,727=>600,\n728=>600,729=>600,730=>600,731=>600,733=>600,734=>600,735=>600,736=>600,737=>600,738=>600,\n739=>600,740=>600,741=>600,742=>600,743=>600,744=>600,745=>600,746=>600,747=>600,748=>600,\n749=>600,750=>600,751=>600,752=>600,753=>600,754=>600,755=>600,756=>600,757=>600,758=>600,\n759=>600,760=>600,761=>600,762=>600,763=>600,764=>600,765=>600,766=>600,767=>600,768=>0,\n769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,\n779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,\n789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,\n799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,\n809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,\n819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,\n829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,\n839=>0,840=>0,841=>0,843=>0,844=>0,845=>0,848=>0,849=>0,850=>0,851=>0,\n852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,884=>600,885=>600,890=>600,\n894=>600,900=>600,901=>600,902=>600,903=>600,904=>600,905=>600,906=>600,908=>600,910=>600,\n911=>600,912=>600,913=>600,914=>600,915=>600,916=>600,917=>600,918=>600,919=>600,920=>600,\n921=>600,922=>600,923=>600,924=>600,925=>600,926=>600,927=>600,928=>600,929=>600,931=>600,\n932=>600,933=>600,934=>600,935=>600,936=>600,937=>600,938=>600,939=>600,940=>600,941=>600,\n942=>600,943=>600,944=>600,945=>600,946=>600,947=>600,948=>600,949=>600,950=>600,951=>600,\n952=>600,953=>600,954=>600,955=>600,956=>600,957=>600,958=>600,959=>600,960=>600,961=>600,\n962=>600,963=>600,964=>600,965=>600,966=>600,967=>600,968=>600,969=>600,970=>600,971=>600,\n972=>600,973=>600,974=>600,976=>600,977=>600,978=>600,979=>600,980=>600,981=>600,982=>600,\n986=>600,987=>600,988=>600,1008=>600,1009=>600,1012=>600,1013=>600,1024=>600,1025=>600,1026=>600,\n1027=>600,1028=>600,1029=>600,1030=>600,1031=>600,1032=>600,1033=>600,1034=>600,1035=>600,1036=>600,\n1037=>600,1038=>600,1039=>600,1040=>600,1041=>600,1042=>600,1043=>600,1044=>600,1045=>600,1046=>600,\n1047=>600,1048=>600,1049=>600,1050=>600,1051=>600,1052=>600,1053=>600,1054=>600,1055=>600,1056=>600,\n1057=>600,1058=>600,1059=>600,1060=>600,1061=>600,1062=>600,1063=>600,1064=>600,1065=>600,1066=>600,\n1067=>600,1068=>600,1069=>600,1070=>600,1071=>600,1072=>600,1073=>600,1074=>600,1075=>600,1076=>600,\n1077=>600,1078=>600,1079=>600,1080=>600,1081=>600,1082=>600,1083=>600,1084=>600,1085=>600,1086=>600,\n1087=>600,1088=>600,1089=>600,1090=>600,1091=>600,1092=>600,1093=>600,1094=>600,1095=>600,1096=>600,\n1097=>600,1098=>600,1099=>600,1100=>600,1101=>600,1102=>600,1103=>600,1104=>600,1105=>600,1106=>600,\n1107=>600,1108=>600,1109=>600,1110=>600,1111=>600,1112=>600,1113=>600,1114=>600,1115=>600,1116=>600,\n1117=>600,1118=>600,1119=>600,1120=>600,1121=>600,1122=>600,1123=>600,1124=>600,1126=>600,1127=>600,\n1128=>600,1130=>600,1131=>600,1132=>600,1133=>600,1136=>600,1137=>600,1138=>600,1140=>600,1141=>600,\n1142=>600,1143=>600,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1162=>600,1163=>600,1164=>600,\n1165=>600,1166=>600,1167=>600,1168=>600,1169=>600,1170=>600,1171=>600,1172=>600,1173=>600,1174=>600,\n1175=>600,1176=>600,1177=>600,1178=>600,1179=>600,1180=>600,1181=>600,1182=>600,1183=>600,1184=>600,\n1185=>600,1186=>600,1187=>600,1188=>600,1189=>600,1190=>600,1191=>600,1192=>600,1193=>600,1194=>600,\n1195=>600,1196=>600,1197=>600,1198=>600,1199=>600,1200=>600,1201=>600,1202=>600,1203=>600,1204=>600,\n1205=>600,1206=>600,1207=>600,1208=>600,1209=>600,1210=>600,1211=>600,1212=>600,1213=>600,1214=>600,\n1215=>600,1216=>600,1217=>600,1218=>600,1219=>600,1220=>600,1221=>600,1222=>600,1223=>600,1224=>600,\n1225=>600,1226=>600,1227=>600,1228=>600,1229=>600,1230=>600,1231=>600,1232=>600,1233=>600,1234=>600,\n1235=>600,1236=>600,1237=>600,1238=>600,1239=>600,1240=>600,1241=>600,1242=>600,1243=>600,1244=>600,\n1245=>600,1246=>600,1247=>600,1248=>600,1249=>600,1250=>600,1251=>600,1252=>600,1253=>600,1254=>600,\n1255=>600,1256=>600,1257=>600,1258=>600,1259=>600,1260=>600,1261=>600,1262=>600,1263=>600,1264=>600,\n1265=>600,1266=>600,1267=>600,1268=>600,1269=>600,1270=>600,1271=>600,1272=>600,1273=>600,1296=>600,\n1297=>600,1298=>600,1299=>600,1306=>600,1307=>600,1308=>600,1309=>600,1310=>600,1311=>600,1329=>600,\n1330=>600,1331=>600,1332=>600,1333=>600,1334=>600,1335=>600,1336=>600,1337=>600,1338=>600,1339=>600,\n1340=>600,1341=>600,1342=>600,1343=>600,1344=>600,1345=>600,1346=>600,1347=>600,1348=>600,1349=>600,\n1350=>600,1351=>600,1352=>600,1353=>600,1354=>600,1355=>600,1356=>600,1357=>600,1358=>600,1359=>600,\n1360=>600,1361=>600,1362=>600,1363=>600,1364=>600,1365=>600,1366=>600,1369=>600,1370=>600,1371=>600,\n1372=>600,1373=>600,1374=>600,1375=>600,1377=>600,1378=>600,1379=>600,1380=>600,1381=>600,1382=>600,\n1383=>600,1384=>600,1385=>600,1386=>600,1387=>600,1388=>600,1389=>600,1390=>600,1391=>600,1392=>600,\n1393=>600,1394=>600,1395=>600,1396=>600,1397=>600,1398=>600,1399=>600,1400=>600,1401=>600,1402=>600,\n1403=>600,1404=>600,1405=>600,1406=>600,1407=>600,1408=>600,1409=>600,1410=>600,1411=>600,1412=>600,\n1413=>600,1414=>600,1415=>600,1417=>600,1418=>600,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,\n1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1467=>0,1468=>0,1469=>0,1470=>600,1471=>0,\n1472=>600,1473=>0,1474=>0,1475=>600,1476=>0,1488=>600,1489=>600,1490=>600,1491=>600,1492=>600,\n1493=>600,1494=>600,1495=>600,1496=>600,1497=>600,1498=>600,1499=>600,1500=>600,1501=>600,1502=>600,\n1503=>600,1504=>600,1505=>600,1506=>600,1507=>600,1508=>600,1509=>600,1510=>600,1511=>600,1512=>600,\n1513=>600,1514=>600,1520=>600,1521=>600,1522=>600,1523=>600,1524=>600,4304=>600,4305=>600,4306=>600,\n4307=>600,4308=>600,4309=>600,4310=>600,4311=>600,4312=>600,4313=>600,4314=>600,4315=>600,4316=>600,\n4317=>600,4318=>600,4319=>600,4320=>600,4321=>600,4322=>600,4323=>600,4324=>600,4325=>600,4326=>600,\n4327=>600,4328=>600,4329=>600,4330=>600,4331=>600,4332=>600,4333=>600,4334=>600,4335=>600,4336=>600,\n4337=>600,4338=>600,4339=>600,4340=>600,4341=>600,4345=>600,4347=>600,5792=>600,5793=>600,5794=>600,\n5795=>600,5796=>600,5797=>600,5798=>600,5799=>600,5800=>600,5801=>600,5802=>600,5803=>600,5804=>600,\n5805=>600,5806=>600,5807=>600,5808=>600,5809=>600,5810=>600,5811=>600,5812=>600,5813=>600,5814=>600,\n5815=>600,5816=>600,5817=>600,5818=>600,5819=>600,5820=>600,5821=>600,5822=>600,5823=>600,5824=>600,\n5825=>600,5826=>600,5827=>600,5828=>600,5829=>600,5830=>600,5831=>600,5832=>600,5833=>600,5834=>600,\n5835=>600,5836=>600,5837=>600,5838=>600,5839=>600,5840=>600,5841=>600,5842=>600,5843=>600,5844=>600,\n5845=>600,5846=>600,5847=>600,5848=>600,5849=>600,5850=>600,5851=>600,5852=>600,5853=>600,5854=>600,\n5855=>600,5856=>600,5857=>600,5858=>600,5859=>600,5860=>600,5861=>600,5862=>600,5863=>600,5864=>600,\n5865=>600,5866=>600,5867=>600,5868=>600,5869=>600,5870=>600,5871=>600,5872=>600,7680=>600,7681=>600,\n7682=>600,7683=>600,7684=>600,7685=>600,7686=>600,7687=>600,7688=>600,7689=>600,7690=>600,7691=>600,\n7692=>600,7693=>600,7694=>600,7695=>600,7696=>600,7697=>600,7698=>600,7699=>600,7700=>600,7701=>600,\n7702=>600,7703=>600,7704=>600,7705=>600,7706=>600,7707=>600,7708=>600,7709=>600,7710=>600,7711=>600,\n7712=>600,7713=>600,7714=>600,7715=>600,7716=>600,7717=>600,7718=>600,7719=>600,7720=>600,7721=>600,\n7722=>600,7723=>600,7724=>600,7725=>600,7726=>600,7727=>600,7728=>600,7729=>600,7730=>600,7731=>600,\n7732=>600,7733=>600,7734=>600,7735=>600,7736=>600,7737=>600,7738=>600,7739=>600,7740=>600,7741=>600,\n7742=>600,7743=>600,7744=>600,7745=>600,7746=>600,7747=>600,7748=>600,7749=>600,7750=>600,7751=>600,\n7752=>600,7753=>600,7754=>600,7755=>600,7756=>600,7757=>600,7758=>600,7759=>600,7760=>600,7761=>600,\n7762=>600,7763=>600,7764=>600,7765=>600,7766=>600,7767=>600,7768=>600,7769=>600,7770=>600,7771=>600,\n7772=>600,7773=>600,7774=>600,7775=>600,7776=>600,7777=>600,7778=>600,7779=>600,7780=>600,7781=>600,\n7782=>600,7783=>600,7784=>600,7785=>600,7786=>600,7787=>600,7788=>600,7789=>600,7790=>600,7791=>600,\n7792=>600,7793=>600,7794=>600,7795=>600,7796=>600,7797=>600,7798=>600,7799=>600,7800=>600,7801=>600,\n7802=>600,7803=>600,7804=>600,7805=>600,7806=>600,7807=>600,7808=>600,7809=>600,7810=>600,7811=>600,\n7812=>600,7813=>600,7814=>600,7815=>600,7816=>600,7817=>600,7818=>600,7819=>600,7820=>600,7821=>600,\n7822=>600,7823=>600,7824=>600,7825=>600,7826=>600,7827=>600,7828=>600,7829=>600,7830=>600,7831=>600,\n7832=>600,7833=>600,7834=>600,7835=>600,7840=>600,7841=>600,7842=>600,7843=>600,7844=>600,7845=>600,\n7846=>600,7847=>600,7848=>600,7849=>600,7850=>600,7851=>600,7852=>600,7853=>600,7854=>600,7855=>600,\n7856=>600,7857=>600,7858=>600,7859=>600,7860=>600,7861=>600,7862=>600,7863=>600,7864=>600,7865=>600,\n7866=>600,7867=>600,7868=>600,7869=>600,7870=>600,7871=>600,7872=>600,7873=>600,7874=>600,7875=>600,\n7876=>600,7877=>600,7878=>600,7879=>600,7880=>600,7881=>600,7882=>600,7883=>600,7884=>600,7885=>600,\n7886=>600,7887=>600,7888=>600,7889=>600,7890=>600,7891=>600,7892=>600,7893=>600,7894=>600,7895=>600,\n7896=>600,7897=>600,7898=>600,7899=>600,7900=>600,7901=>600,7902=>600,7903=>600,7904=>600,7905=>600,\n7906=>600,7907=>600,7908=>600,7909=>600,7910=>600,7911=>600,7912=>600,7913=>600,7914=>600,7915=>600,\n7916=>600,7917=>600,7918=>600,7919=>600,7920=>600,7921=>600,7922=>600,7923=>600,7924=>600,7925=>600,\n7926=>600,7927=>600,7928=>600,7929=>600,7936=>600,7937=>600,7938=>600,7939=>600,7940=>600,7941=>600,\n7942=>600,7943=>600,7944=>600,7945=>600,7946=>600,7947=>600,7948=>600,7949=>600,7950=>600,7951=>600,\n7952=>600,7953=>600,7954=>600,7955=>600,7956=>600,7957=>600,7960=>600,7961=>600,7962=>600,7963=>600,\n7964=>600,7965=>600,7968=>600,7969=>600,7970=>600,7971=>600,7972=>600,7973=>600,7974=>600,7975=>600,\n7976=>600,7977=>600,7978=>600,7979=>600,7980=>600,7981=>600,7982=>600,7983=>600,7984=>600,7985=>600,\n7986=>600,7987=>600,7988=>600,7989=>600,7990=>600,7991=>600,7992=>600,7993=>600,7994=>600,7995=>600,\n7996=>600,7997=>600,7998=>600,7999=>600,8000=>600,8001=>600,8002=>600,8003=>600,8004=>600,8005=>600,\n8008=>600,8009=>600,8010=>600,8011=>600,8012=>600,8013=>600,8016=>600,8017=>600,8018=>600,8019=>600,\n8020=>600,8021=>600,8022=>600,8023=>600,8025=>600,8027=>600,8029=>600,8031=>600,8032=>600,8033=>600,\n8034=>600,8035=>600,8036=>600,8037=>600,8038=>600,8039=>600,8040=>600,8041=>600,8042=>600,8043=>600,\n8044=>600,8045=>600,8046=>600,8047=>600,8048=>600,8049=>600,8050=>600,8051=>600,8052=>600,8053=>600,\n8054=>600,8055=>600,8056=>600,8057=>600,8058=>600,8059=>600,8060=>600,8061=>600,8064=>600,8065=>600,\n8066=>600,8067=>600,8068=>600,8069=>600,8070=>600,8071=>600,8072=>600,8073=>600,8074=>600,8075=>600,\n8076=>600,8077=>600,8078=>600,8079=>600,8080=>600,8081=>600,8082=>600,8083=>600,8084=>600,8085=>600,\n8086=>600,8087=>600,8088=>600,8089=>600,8090=>600,8091=>600,8092=>600,8093=>600,8094=>600,8095=>600,\n8096=>600,8097=>600,8098=>600,8099=>600,8100=>600,8101=>600,8102=>600,8103=>600,8104=>600,8105=>600,\n8106=>600,8107=>600,8108=>600,8109=>600,8110=>600,8111=>600,8112=>600,8113=>600,8114=>600,8115=>600,\n8116=>600,8118=>600,8119=>600,8120=>600,8121=>600,8122=>600,8123=>600,8124=>600,8125=>600,8126=>600,\n8127=>600,8128=>600,8129=>600,8130=>600,8131=>600,8132=>600,8134=>600,8135=>600,8136=>600,8137=>600,\n8138=>600,8139=>600,8140=>600,8141=>600,8142=>600,8143=>600,8144=>600,8145=>600,8146=>600,8147=>600,\n8150=>600,8151=>600,8152=>600,8153=>600,8154=>600,8155=>600,8157=>600,8158=>600,8159=>600,8160=>600,\n8161=>600,8162=>600,8163=>600,8164=>600,8165=>600,8166=>600,8167=>600,8168=>600,8169=>600,8170=>600,\n8171=>600,8172=>600,8173=>600,8174=>600,8175=>600,8178=>600,8179=>600,8180=>600,8182=>600,8183=>600,\n8184=>600,8185=>600,8186=>600,8187=>600,8188=>600,8189=>600,8190=>600,8192=>600,8193=>600,8194=>600,\n8195=>600,8196=>600,8197=>600,8198=>600,8199=>600,8200=>600,8201=>600,8202=>600,8203=>600,8204=>0,\n8205=>0,8206=>0,8207=>0,8208=>600,8209=>600,8210=>600,8213=>600,8214=>600,8215=>600,8219=>600,\n8223=>600,8227=>600,8228=>600,8229=>600,8231=>600,8232=>600,8233=>600,8234=>600,8235=>600,8236=>600,\n8237=>600,8238=>600,8239=>600,8241=>600,8242=>600,8243=>600,8244=>600,8245=>600,8246=>600,8247=>600,\n8248=>600,8251=>600,8252=>600,8253=>600,8254=>600,8255=>600,8256=>600,8257=>600,8258=>600,8259=>600,\n8260=>600,8261=>600,8262=>600,8263=>600,8264=>600,8265=>600,8266=>600,8267=>600,8268=>600,8269=>600,\n8270=>600,8271=>600,8272=>600,8273=>600,8274=>600,8275=>600,8276=>600,8277=>600,8278=>600,8279=>600,\n8280=>600,8281=>600,8282=>600,8283=>600,8284=>600,8285=>600,8286=>600,8287=>600,8288=>600,8289=>600,\n8290=>600,8291=>600,8292=>600,8298=>600,8299=>600,8300=>600,8301=>600,8302=>600,8303=>600,8304=>600,\n8305=>600,8308=>600,8309=>600,8310=>600,8311=>600,8312=>600,8313=>600,8314=>600,8315=>600,8316=>600,\n8317=>600,8318=>600,8319=>600,8320=>600,8321=>600,8322=>600,8323=>600,8324=>600,8325=>600,8326=>600,\n8327=>600,8328=>600,8329=>600,8330=>600,8331=>600,8332=>600,8333=>600,8334=>600,8336=>600,8337=>600,\n8338=>600,8339=>600,8340=>600,8353=>600,8354=>600,8355=>600,8356=>600,8357=>600,8358=>600,8359=>600,\n8360=>600,8361=>600,8362=>600,8363=>600,8365=>600,8366=>600,8368=>600,8369=>600,8370=>600,8371=>600,\n8372=>600,8373=>600,8400=>0,8401=>0,8402=>0,8406=>0,8407=>0,8411=>0,8412=>0,8413=>0,\n8414=>0,8415=>0,8416=>0,8417=>0,8418=>0,8419=>0,8428=>0,8429=>0,8430=>0,8431=>0,\n8448=>600,8449=>600,8450=>600,8451=>600,8453=>600,8454=>600,8455=>600,8457=>600,8461=>600,8463=>600,\n8464=>600,8465=>600,8466=>600,8467=>600,8468=>600,8469=>600,8470=>600,8471=>600,8472=>600,8473=>600,\n8474=>600,8476=>600,8477=>600,8478=>600,8481=>600,8484=>600,8486=>600,8487=>600,8489=>600,8490=>600,\n8491=>600,8498=>600,8501=>600,8502=>600,8503=>600,8504=>600,8505=>600,8506=>600,8507=>600,8523=>600,\n8526=>600,8531=>600,8532=>600,8533=>600,8534=>600,8535=>600,8536=>600,8537=>600,8538=>600,8539=>600,\n8540=>600,8541=>600,8542=>600,8543=>600,8544=>600,8545=>600,8546=>600,8547=>600,8548=>600,8549=>600,\n8550=>600,8551=>600,8552=>600,8553=>600,8554=>600,8555=>600,8556=>600,8557=>600,8558=>600,8559=>600,\n8560=>600,8561=>600,8562=>600,8563=>600,8564=>600,8565=>600,8566=>600,8567=>600,8568=>600,8569=>600,\n8570=>600,8571=>600,8572=>600,8573=>600,8574=>600,8575=>600,8592=>600,8593=>600,8594=>600,8595=>600,\n8596=>600,8597=>600,8598=>600,8599=>600,8600=>600,8601=>600,8602=>600,8603=>600,8604=>600,8605=>600,\n8606=>600,8607=>600,8608=>600,8609=>600,8610=>600,8611=>600,8612=>600,8613=>600,8614=>600,8615=>600,\n8616=>600,8617=>600,8618=>600,8619=>600,8620=>600,8621=>600,8622=>600,8623=>600,8624=>600,8625=>600,\n8626=>600,8627=>600,8628=>600,8629=>600,8630=>600,8631=>600,8632=>600,8633=>600,8634=>600,8635=>600,\n8636=>600,8637=>600,8638=>600,8639=>600,8640=>600,8641=>600,8642=>600,8643=>600,8644=>600,8645=>600,\n8646=>600,8647=>600,8648=>600,8649=>600,8650=>600,8651=>600,8652=>600,8653=>600,8654=>600,8655=>600,\n8656=>600,8657=>600,8658=>600,8659=>600,8660=>600,8661=>600,8669=>600,8678=>600,8679=>600,8680=>600,\n8681=>600,8691=>600,8704=>600,8705=>600,8706=>600,8707=>600,8708=>600,8709=>600,8710=>600,8711=>600,\n8712=>600,8713=>600,8714=>600,8715=>600,8716=>600,8717=>600,8718=>600,8719=>600,8720=>600,8721=>600,\n8722=>600,8723=>600,8724=>600,8725=>600,8726=>600,8727=>600,8728=>600,8729=>600,8730=>600,8731=>600,\n8732=>600,8733=>600,8734=>600,8735=>600,8736=>600,8737=>600,8738=>600,8739=>600,8740=>600,8741=>600,\n8742=>600,8743=>600,8744=>600,8745=>600,8746=>600,8747=>600,8748=>600,8749=>600,8750=>600,8751=>600,\n8752=>600,8754=>600,8755=>600,8756=>600,8757=>600,8758=>600,8759=>600,8760=>600,8761=>600,8762=>600,\n8763=>600,8764=>600,8765=>600,8768=>600,8769=>600,8770=>600,8771=>600,8772=>600,8773=>600,8774=>600,\n8775=>600,8776=>600,8777=>600,8778=>600,8779=>600,8780=>600,8781=>600,8784=>600,8785=>600,8786=>600,\n8787=>600,8788=>600,8789=>600,8790=>600,8791=>600,8792=>600,8793=>600,8794=>600,8795=>600,8796=>600,\n8797=>600,8798=>600,8799=>600,8800=>600,8801=>600,8802=>600,8803=>600,8804=>600,8805=>600,8806=>600,\n8807=>600,8808=>600,8809=>600,8810=>600,8811=>600,8812=>600,8813=>600,8814=>600,8815=>600,8816=>600,\n8817=>600,8818=>600,8819=>600,8820=>600,8821=>600,8822=>600,8823=>600,8824=>600,8825=>600,8826=>600,\n8827=>600,8828=>600,8829=>600,8830=>600,8831=>600,8832=>600,8833=>600,8834=>600,8835=>600,8836=>600,\n8837=>600,8838=>600,8839=>600,8840=>600,8841=>600,8842=>600,8843=>600,8844=>600,8845=>600,8846=>600,\n8847=>600,8848=>600,8849=>600,8850=>600,8851=>600,8852=>600,8853=>600,8854=>600,8855=>600,8856=>600,\n8857=>600,8858=>600,8859=>600,8860=>600,8861=>600,8862=>600,8863=>600,8866=>600,8867=>600,8868=>600,\n8869=>600,8870=>600,8871=>600,8872=>600,8873=>600,8874=>600,8875=>600,8876=>600,8877=>600,8878=>600,\n8879=>600,8882=>600,8883=>600,8884=>600,8885=>600,8891=>600,8892=>600,8893=>600,8894=>600,8896=>600,\n8897=>600,8898=>600,8899=>600,8900=>600,8901=>600,8902=>600,8903=>600,8904=>600,8909=>600,8910=>600,\n8911=>600,8912=>600,8913=>600,8914=>600,8915=>600,8924=>600,8925=>600,8926=>600,8927=>600,8928=>600,\n8929=>600,8930=>600,8931=>600,8938=>600,8939=>600,8940=>600,8941=>600,8942=>600,8943=>600,8944=>600,\n8945=>600,8960=>600,8962=>600,8963=>600,8964=>600,8965=>600,8966=>600,8968=>600,8969=>600,8970=>600,\n8971=>600,8972=>600,8973=>600,8974=>600,8975=>600,8976=>600,8978=>600,8980=>600,8981=>600,8984=>600,\n8985=>600,8988=>600,8989=>600,8990=>600,8991=>600,8992=>600,8993=>600,8994=>600,8995=>600,8996=>600,\n8997=>600,8998=>600,8999=>600,9001=>600,9002=>600,9003=>600,9004=>600,9014=>600,9015=>600,9016=>600,\n9017=>600,9018=>600,9019=>600,9020=>600,9021=>600,9022=>600,9023=>600,9024=>600,9025=>600,9026=>600,\n9027=>600,9028=>600,9029=>600,9030=>600,9031=>600,9032=>600,9033=>600,9034=>600,9035=>600,9036=>600,\n9037=>600,9038=>600,9039=>600,9040=>600,9041=>600,9042=>600,9043=>600,9044=>600,9045=>600,9046=>600,\n9047=>600,9048=>600,9049=>600,9050=>600,9051=>600,9052=>600,9053=>600,9054=>600,9055=>600,9056=>600,\n9057=>600,9058=>600,9059=>600,9060=>600,9061=>600,9062=>600,9063=>600,9064=>600,9065=>600,9066=>600,\n9067=>600,9068=>600,9069=>600,9070=>600,9071=>600,9072=>600,9073=>600,9074=>600,9075=>600,9076=>600,\n9077=>600,9078=>600,9079=>600,9080=>600,9081=>600,9082=>600,9084=>600,9085=>600,9086=>600,9087=>600,\n9088=>600,9089=>600,9090=>600,9091=>600,9092=>600,9093=>600,9094=>600,9095=>600,9096=>600,9097=>600,\n9098=>600,9099=>600,9100=>600,9101=>600,9102=>600,9103=>600,9104=>600,9105=>600,9106=>600,9107=>600,\n9108=>600,9109=>600,9110=>600,9111=>600,9112=>600,9113=>600,9114=>600,9115=>600,9116=>600,9117=>600,\n9118=>600,9119=>600,9120=>600,9121=>600,9122=>600,9123=>600,9124=>600,9125=>600,9126=>600,9127=>600,\n9128=>600,9129=>600,9130=>600,9131=>600,9132=>600,9133=>600,9134=>600,9135=>600,9136=>600,9137=>600,\n9138=>600,9139=>600,9140=>600,9141=>600,9142=>600,9143=>600,9146=>600,9147=>600,9148=>600,9149=>600,\n9150=>600,9151=>600,9152=>600,9153=>600,9154=>600,9155=>600,9156=>600,9157=>600,9158=>600,9159=>600,\n9160=>600,9161=>600,9162=>600,9163=>600,9164=>600,9165=>600,9166=>600,9167=>600,9178=>600,9179=>600,\n9182=>600,9183=>600,9186=>600,9187=>600,9188=>600,9189=>600,9190=>600,9251=>600,9280=>600,9281=>600,\n9282=>600,9283=>600,9284=>600,9285=>600,9286=>600,9287=>600,9288=>600,9289=>600,9290=>600,9312=>600,\n9313=>600,9314=>600,9315=>600,9316=>600,9317=>600,9318=>600,9319=>600,9320=>600,9321=>600,9472=>600,\n9473=>600,9474=>600,9475=>600,9476=>600,9477=>600,9478=>600,9479=>600,9480=>600,9481=>600,9482=>600,\n9483=>600,9484=>600,9485=>600,9486=>600,9487=>600,9488=>600,9489=>600,9490=>600,9491=>600,9492=>600,\n9493=>600,9494=>600,9495=>600,9496=>600,9497=>600,9498=>600,9499=>600,9500=>600,9501=>600,9502=>600,\n9503=>600,9504=>600,9505=>600,9506=>600,9507=>600,9508=>600,9509=>600,9510=>600,9511=>600,9512=>600,\n9513=>600,9514=>600,9515=>600,9516=>600,9517=>600,9518=>600,9519=>600,9520=>600,9521=>600,9522=>600,\n9523=>600,9524=>600,9525=>600,9526=>600,9527=>600,9528=>600,9529=>600,9530=>600,9531=>600,9532=>600,\n9533=>600,9534=>600,9535=>600,9536=>600,9537=>600,9538=>600,9539=>600,9540=>600,9541=>600,9542=>600,\n9543=>600,9544=>600,9545=>600,9546=>600,9547=>600,9548=>600,9549=>600,9550=>600,9551=>600,9552=>600,\n9553=>600,9554=>600,9555=>600,9556=>600,9557=>600,9558=>600,9559=>600,9560=>600,9561=>600,9562=>600,\n9563=>600,9564=>600,9565=>600,9566=>600,9567=>600,9568=>600,9569=>600,9570=>600,9571=>600,9572=>600,\n9573=>600,9574=>600,9575=>600,9576=>600,9577=>600,9578=>600,9579=>600,9580=>600,9581=>600,9582=>600,\n9583=>600,9584=>600,9585=>600,9586=>600,9587=>600,9588=>600,9589=>600,9590=>600,9591=>600,9592=>600,\n9593=>600,9594=>600,9595=>600,9596=>600,9597=>600,9598=>600,9599=>600,9600=>600,9601=>600,9602=>600,\n9603=>600,9604=>600,9605=>600,9606=>600,9607=>600,9608=>600,9609=>600,9610=>600,9611=>600,9612=>600,\n9613=>600,9614=>600,9615=>600,9616=>600,9617=>600,9618=>600,9619=>600,9620=>600,9621=>600,9622=>600,\n9623=>600,9624=>600,9625=>600,9626=>600,9627=>600,9628=>600,9629=>600,9630=>600,9631=>600,9632=>600,\n9633=>600,9634=>600,9635=>600,9636=>600,9637=>600,9638=>600,9639=>600,9640=>600,9641=>600,9642=>600,\n9643=>600,9644=>600,9645=>600,9646=>600,9647=>600,9648=>600,9649=>600,9650=>600,9651=>600,9652=>600,\n9653=>600,9654=>600,9655=>600,9656=>600,9657=>600,9658=>600,9659=>600,9660=>600,9661=>600,9662=>600,\n9663=>600,9664=>600,9665=>600,9666=>600,9667=>600,9668=>600,9669=>600,9670=>600,9671=>600,9672=>600,\n9673=>600,9674=>600,9675=>600,9676=>600,9677=>600,9678=>600,9679=>600,9680=>600,9681=>600,9682=>600,\n9683=>600,9684=>600,9685=>600,9686=>600,9687=>600,9688=>600,9689=>600,9690=>600,9691=>600,9692=>600,\n9693=>600,9694=>600,9695=>600,9696=>600,9697=>600,9698=>600,9699=>600,9700=>600,9701=>600,9702=>600,\n9703=>600,9704=>600,9705=>600,9706=>600,9707=>600,9708=>600,9709=>600,9710=>600,9711=>600,9712=>600,\n9713=>600,9714=>600,9715=>600,9716=>600,9717=>600,9718=>600,9719=>600,9720=>600,9721=>600,9722=>600,\n9723=>600,9724=>600,9725=>600,9726=>600,9727=>600,9728=>600,9729=>600,9730=>600,9731=>600,9733=>600,\n9734=>600,9735=>600,9736=>600,9737=>600,9744=>600,9745=>600,9746=>600,9754=>600,9755=>600,9756=>600,\n9757=>600,9758=>600,9759=>600,9766=>600,9768=>600,9769=>600,9774=>600,9775=>600,9776=>600,9777=>600,\n9778=>600,9779=>600,9780=>600,9781=>600,9782=>600,9783=>600,9785=>600,9786=>600,9787=>600,9788=>600,\n9789=>600,9790=>600,9791=>600,9792=>600,9793=>600,9794=>600,9795=>600,9796=>600,9797=>600,9798=>600,\n9799=>600,9800=>600,9801=>600,9802=>600,9803=>600,9804=>600,9805=>600,9806=>600,9807=>600,9808=>600,\n9809=>600,9810=>600,9811=>600,9824=>600,9825=>600,9826=>600,9827=>600,9828=>600,9829=>600,9830=>600,\n9831=>600,9833=>600,9834=>600,9835=>600,9836=>600,9837=>600,9838=>600,9839=>600,9856=>600,9857=>600,\n9858=>600,9859=>600,9860=>600,9861=>600,10176=>600,10177=>600,10178=>600,10179=>600,10180=>600,10181=>600,\n10182=>600,10183=>600,10184=>600,10185=>600,10186=>600,10188=>600,10192=>600,10193=>600,10194=>600,10195=>600,\n10196=>600,10197=>600,10198=>600,10199=>600,10212=>600,10213=>600,10214=>600,10215=>600,10216=>600,10217=>600,\n10218=>600,10219=>600,10226=>600,10227=>600,10229=>600,10230=>600,10231=>600,10232=>600,10233=>600,10234=>600,\n10235=>600,10236=>600,10240=>600,10241=>600,10242=>600,10243=>600,10244=>600,10245=>600,10246=>600,10247=>600,\n10248=>600,10249=>600,10250=>600,10251=>600,10252=>600,10253=>600,10254=>600,10255=>600,10256=>600,10257=>600,\n10258=>600,10259=>600,10260=>600,10261=>600,10262=>600,10263=>600,10264=>600,10265=>600,10266=>600,10267=>600,\n10268=>600,10269=>600,10270=>600,10271=>600,10272=>600,10273=>600,10274=>600,10275=>600,10276=>600,10277=>600,\n10278=>600,10279=>600,10280=>600,10281=>600,10282=>600,10283=>600,10284=>600,10285=>600,10286=>600,10287=>600,\n10288=>600,10289=>600,10290=>600,10291=>600,10292=>600,10293=>600,10294=>600,10295=>600,10296=>600,10297=>600,\n10298=>600,10299=>600,10300=>600,10301=>600,10302=>600,10303=>600,10304=>600,10305=>600,10306=>600,10307=>600,\n10308=>600,10309=>600,10310=>600,10311=>600,10312=>600,10313=>600,10314=>600,10315=>600,10316=>600,10317=>600,\n10318=>600,10319=>600,10320=>600,10321=>600,10322=>600,10323=>600,10324=>600,10325=>600,10326=>600,10327=>600,\n10328=>600,10329=>600,10330=>600,10331=>600,10332=>600,10333=>600,10334=>600,10335=>600,10336=>600,10337=>600,\n10338=>600,10339=>600,10340=>600,10341=>600,10342=>600,10343=>600,10344=>600,10345=>600,10346=>600,10347=>600,\n10348=>600,10349=>600,10350=>600,10351=>600,10352=>600,10353=>600,10354=>600,10355=>600,10356=>600,10357=>600,\n10358=>600,10359=>600,10360=>600,10361=>600,10362=>600,10363=>600,10364=>600,10365=>600,10366=>600,10367=>600,\n10368=>600,10369=>600,10370=>600,10371=>600,10372=>600,10373=>600,10374=>600,10375=>600,10376=>600,10377=>600,\n10378=>600,10379=>600,10380=>600,10381=>600,10382=>600,10383=>600,10384=>600,10385=>600,10386=>600,10387=>600,\n10388=>600,10389=>600,10390=>600,10391=>600,10392=>600,10393=>600,10394=>600,10395=>600,10396=>600,10397=>600,\n10398=>600,10399=>600,10400=>600,10401=>600,10402=>600,10403=>600,10404=>600,10405=>600,10406=>600,10407=>600,\n10408=>600,10409=>600,10410=>600,10411=>600,10412=>600,10413=>600,10414=>600,10415=>600,10416=>600,10417=>600,\n10418=>600,10419=>600,10420=>600,10421=>600,10422=>600,10423=>600,10424=>600,10425=>600,10426=>600,10427=>600,\n10428=>600,10429=>600,10430=>600,10431=>600,10432=>600,10433=>600,10434=>600,10435=>600,10436=>600,10437=>600,\n10438=>600,10439=>600,10440=>600,10441=>600,10442=>600,10443=>600,10444=>600,10445=>600,10446=>600,10447=>600,\n10448=>600,10449=>600,10450=>600,10451=>600,10452=>600,10453=>600,10454=>600,10455=>600,10456=>600,10457=>600,\n10458=>600,10459=>600,10460=>600,10461=>600,10462=>600,10463=>600,10464=>600,10465=>600,10466=>600,10467=>600,\n10468=>600,10469=>600,10470=>600,10471=>600,10472=>600,10473=>600,10474=>600,10475=>600,10476=>600,10477=>600,\n10478=>600,10479=>600,10480=>600,10481=>600,10482=>600,10483=>600,10484=>600,10485=>600,10486=>600,10487=>600,\n10488=>600,10489=>600,10490=>600,10491=>600,10492=>600,10493=>600,10494=>600,10495=>600,10752=>600,10753=>600,\n10754=>600,10755=>600,10756=>600,10757=>600,10758=>600,10781=>600,10815=>600,11008=>600,11009=>600,11010=>600,\n11011=>600,11012=>600,11013=>600,11014=>600,11015=>600,11016=>600,11017=>600,11018=>600,11019=>600,11020=>600,\n11021=>600,11026=>600,11027=>600,11028=>600,11029=>600,11030=>600,11031=>600,11032=>600,11033=>600,11035=>600,\n11036=>600,11037=>600,11038=>600,11039=>600,11040=>600,11041=>600,11042=>600,11043=>600,11044=>600,11045=>600,\n11046=>600,11047=>600,11048=>600,11049=>600,11050=>600,11051=>600,11091=>600,11092=>600,64256=>600,64257=>600,\n64258=>600,64259=>600,64260=>600,64261=>600,64285=>600,64286=>600,64287=>600,64288=>600,64289=>600,64290=>600,\n64291=>600,64292=>600,64293=>600,64294=>600,64295=>600,64296=>600,64297=>600,64298=>600,64299=>600,64300=>600,\n64301=>600,64302=>600,64303=>600,64304=>600,64305=>600,64306=>600,64307=>600,64308=>600,64309=>600,64310=>600,\n64312=>600,64313=>600,64314=>600,64315=>600,64316=>600,64318=>600,64320=>600,64321=>600,64323=>600,64324=>600,\n64326=>600,64327=>600,64328=>600,64329=>600,64330=>600,64331=>600,64332=>600,64333=>600,64334=>600,64335=>600,\n65533=>600);\n$enc='';\n$diff='';\n$file='freemono.z';\n$ctg='freemono.ctg.z';\n$originalsize=314348;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/freemonob.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='FreeMonoBold';\n$desc=array('Ascent'=>800,'Descent'=>-200,'CapHeight'=>10,'Flags'=>32,'FontBBox'=>'[-604 -200 754 800]','ItalicAngle'=>0,'StemV'=>120,'MissingWidth'=>600);\n$up=-125;\n$ut=50;\n$dw=600;\n$cw=array(\n32=>600,33=>600,34=>600,35=>600,36=>600,37=>600,38=>600,39=>600,40=>600,41=>600,\n42=>600,43=>600,44=>600,45=>600,46=>600,47=>600,48=>600,49=>600,50=>600,51=>600,\n52=>600,53=>600,54=>600,55=>600,56=>600,57=>600,58=>600,59=>600,60=>600,61=>600,\n62=>600,63=>600,64=>600,65=>600,66=>600,67=>600,68=>600,69=>600,70=>600,71=>600,\n72=>600,73=>600,74=>600,75=>600,76=>600,77=>600,78=>600,79=>600,80=>600,81=>600,\n82=>600,83=>600,84=>600,85=>600,86=>600,87=>600,88=>600,89=>600,90=>600,91=>600,\n92=>600,93=>600,94=>600,95=>600,96=>600,97=>600,98=>600,99=>600,100=>600,101=>600,\n102=>600,103=>600,104=>600,105=>600,106=>600,107=>600,108=>600,109=>600,110=>600,111=>600,\n112=>600,113=>600,114=>600,115=>600,116=>600,117=>600,118=>600,119=>600,120=>600,121=>600,\n122=>600,123=>600,124=>600,125=>600,126=>600,8364=>600,8218=>600,402=>600,8222=>600,8230=>600,\n8224=>600,8225=>600,710=>600,8240=>600,352=>600,8249=>600,338=>600,381=>600,8216=>600,8217=>600,\n8220=>600,8221=>600,8226=>600,8211=>600,8212=>600,732=>600,8482=>600,353=>600,8250=>600,339=>600,\n382=>600,376=>600,160=>600,161=>600,162=>600,163=>600,164=>600,165=>600,166=>600,167=>600,\n168=>600,169=>600,170=>600,171=>600,172=>600,173=>600,174=>600,175=>600,176=>600,177=>600,\n178=>600,179=>600,180=>600,181=>600,182=>600,183=>600,184=>600,185=>600,186=>600,187=>600,\n188=>600,189=>600,190=>600,191=>600,192=>600,193=>600,194=>600,195=>600,196=>600,197=>600,\n198=>600,199=>600,200=>600,201=>600,202=>600,203=>600,204=>600,205=>600,206=>600,207=>600,\n208=>600,209=>600,210=>600,211=>600,212=>600,213=>600,214=>600,215=>600,216=>600,217=>600,\n218=>600,219=>600,220=>600,221=>600,222=>600,223=>600,224=>600,225=>600,226=>600,227=>600,\n228=>600,229=>600,230=>600,231=>600,232=>600,233=>600,234=>600,235=>600,236=>600,237=>600,\n238=>600,239=>600,240=>600,241=>600,242=>600,243=>600,244=>600,245=>600,246=>600,247=>600,\n248=>600,249=>600,250=>600,251=>600,252=>600,253=>600,254=>600,255=>600,256=>600,257=>600,\n258=>600,259=>600,260=>600,261=>600,262=>600,263=>600,264=>600,265=>600,266=>600,267=>600,\n268=>600,269=>600,270=>600,271=>600,272=>600,273=>600,274=>600,275=>600,276=>600,277=>600,\n278=>600,279=>600,280=>600,281=>600,282=>600,283=>600,284=>600,285=>600,286=>600,287=>600,\n288=>600,289=>600,290=>600,291=>600,292=>600,293=>600,294=>600,295=>600,296=>600,297=>600,\n298=>600,299=>600,300=>600,301=>600,302=>600,303=>600,304=>600,305=>600,306=>600,307=>600,\n308=>600,309=>600,310=>600,311=>600,312=>600,313=>600,314=>600,315=>600,316=>600,317=>600,\n318=>600,319=>600,320=>600,321=>600,322=>600,323=>600,324=>600,325=>600,326=>600,327=>600,\n328=>600,329=>600,330=>600,331=>600,332=>600,333=>600,334=>600,335=>600,336=>600,337=>600,\n340=>600,341=>600,342=>600,343=>600,344=>600,345=>600,346=>600,347=>600,348=>600,349=>600,\n350=>600,351=>600,354=>600,355=>600,356=>600,357=>600,358=>600,359=>600,360=>600,361=>600,\n362=>600,363=>600,364=>600,365=>600,366=>600,367=>600,368=>600,369=>600,370=>600,371=>600,\n372=>600,373=>600,374=>600,375=>600,377=>600,378=>600,379=>600,380=>600,383=>600,384=>600,\n385=>600,386=>600,387=>600,388=>600,389=>600,390=>600,391=>600,392=>600,393=>600,394=>600,\n395=>600,396=>600,397=>600,398=>600,399=>600,400=>600,401=>600,403=>600,404=>600,405=>600,\n406=>600,407=>600,408=>600,409=>600,410=>600,411=>600,412=>600,413=>600,414=>600,415=>600,\n416=>600,417=>600,418=>600,419=>600,420=>600,421=>600,422=>600,423=>600,424=>600,425=>600,\n426=>600,427=>600,428=>600,429=>600,430=>600,431=>600,432=>600,433=>600,434=>600,435=>600,\n436=>600,437=>600,438=>600,439=>600,440=>600,441=>600,442=>600,443=>600,444=>600,445=>600,\n446=>600,447=>600,448=>600,449=>600,450=>600,451=>600,452=>600,453=>600,454=>600,455=>600,\n456=>600,457=>600,458=>600,459=>600,460=>600,461=>600,462=>600,463=>600,464=>600,465=>600,\n466=>600,467=>600,468=>600,469=>600,470=>600,471=>600,472=>600,473=>600,474=>600,475=>600,\n476=>600,477=>600,478=>600,479=>600,480=>600,481=>600,482=>600,483=>600,484=>600,485=>600,\n486=>600,487=>600,488=>600,489=>600,490=>600,491=>600,492=>600,493=>600,494=>600,495=>600,\n496=>600,497=>600,498=>600,499=>600,500=>600,501=>600,502=>600,503=>600,504=>600,505=>600,\n506=>600,507=>600,508=>600,509=>600,510=>600,511=>600,512=>600,513=>600,514=>600,515=>600,\n516=>600,517=>600,518=>600,519=>600,520=>600,521=>600,522=>600,523=>600,524=>600,525=>600,\n526=>600,527=>600,528=>600,529=>600,530=>600,531=>600,532=>600,533=>600,534=>600,535=>600,\n536=>600,537=>600,538=>600,539=>600,540=>600,541=>600,542=>600,543=>600,548=>600,549=>600,\n550=>600,551=>600,552=>600,553=>600,554=>600,555=>600,556=>600,557=>600,558=>600,559=>600,\n560=>600,561=>600,562=>600,563=>600,567=>600,592=>600,593=>600,594=>600,595=>600,596=>600,\n598=>600,599=>600,600=>600,601=>600,603=>600,604=>600,607=>600,608=>600,609=>600,613=>600,\n614=>600,615=>600,616=>600,617=>600,618=>600,619=>600,621=>600,623=>600,624=>600,625=>600,\n626=>600,627=>600,628=>600,629=>600,633=>600,634=>600,635=>600,636=>600,637=>600,638=>600,\n639=>600,640=>600,641=>600,642=>600,643=>600,644=>600,645=>600,647=>600,648=>600,649=>600,\n652=>600,653=>600,654=>600,656=>600,657=>600,658=>600,659=>600,660=>600,661=>600,662=>600,\n663=>600,664=>600,665=>600,666=>600,667=>600,668=>600,669=>600,670=>600,671=>600,672=>600,\n673=>600,674=>600,688=>600,689=>600,690=>600,691=>600,692=>600,693=>600,694=>600,695=>600,\n696=>600,697=>600,698=>600,699=>600,700=>600,701=>600,702=>600,703=>600,704=>600,705=>600,\n706=>600,707=>600,708=>600,709=>600,711=>600,712=>600,713=>600,714=>600,715=>600,716=>600,\n717=>600,718=>600,719=>600,720=>600,721=>600,722=>600,723=>600,724=>600,725=>600,726=>600,\n727=>600,728=>600,729=>600,730=>600,731=>600,733=>600,734=>600,735=>600,736=>600,737=>600,\n738=>600,739=>600,740=>600,741=>600,742=>600,743=>600,744=>600,745=>600,746=>600,747=>600,\n748=>600,749=>600,750=>600,751=>600,752=>600,753=>600,754=>600,755=>600,756=>600,757=>600,\n758=>600,759=>600,760=>600,761=>600,762=>600,763=>600,764=>600,765=>600,766=>600,767=>600,\n768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,\n778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,\n788=>0,789=>0,790=>0,791=>0,795=>0,796=>0,800=>0,801=>0,802=>0,803=>0,\n804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,812=>0,813=>0,814=>0,\n815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,826=>0,\n827=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,838=>0,839=>0,840=>0,\n844=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,884=>600,885=>600,\n890=>600,894=>600,900=>600,901=>600,902=>600,903=>600,904=>600,905=>600,906=>600,908=>600,\n910=>600,911=>600,912=>600,913=>600,914=>600,915=>600,916=>600,917=>600,918=>600,919=>600,\n920=>600,921=>600,922=>600,923=>600,924=>600,925=>600,926=>600,927=>600,928=>600,929=>600,\n931=>600,932=>600,933=>600,934=>600,935=>600,936=>600,937=>600,938=>600,939=>600,940=>600,\n941=>600,942=>600,943=>600,944=>600,945=>600,946=>600,947=>600,948=>600,949=>600,950=>600,\n951=>600,952=>600,953=>600,954=>600,955=>600,956=>600,957=>600,958=>600,959=>600,960=>600,\n961=>600,962=>600,963=>600,964=>600,965=>600,966=>600,967=>600,968=>600,969=>600,970=>600,\n971=>600,972=>600,973=>600,974=>600,976=>600,977=>600,978=>600,979=>600,980=>600,981=>600,\n982=>600,986=>600,987=>600,988=>600,1008=>600,1009=>600,1012=>600,1013=>600,1024=>600,1025=>600,\n1026=>600,1027=>600,1028=>600,1029=>600,1030=>600,1031=>600,1032=>600,1033=>600,1034=>600,1035=>600,\n1036=>600,1037=>600,1038=>600,1039=>600,1040=>600,1041=>600,1042=>600,1043=>600,1044=>600,1045=>600,\n1046=>600,1047=>600,1048=>600,1049=>600,1050=>600,1051=>600,1052=>600,1053=>600,1054=>600,1055=>600,\n1056=>600,1057=>600,1058=>600,1059=>600,1060=>600,1061=>600,1062=>600,1063=>600,1064=>600,1065=>600,\n1066=>600,1067=>600,1068=>600,1069=>600,1070=>600,1071=>600,1072=>600,1073=>600,1074=>600,1075=>600,\n1076=>600,1077=>600,1078=>600,1079=>600,1080=>600,1081=>600,1082=>600,1083=>600,1084=>600,1085=>600,\n1086=>600,1087=>600,1088=>600,1089=>600,1090=>600,1091=>600,1092=>600,1093=>600,1094=>600,1095=>600,\n1096=>600,1097=>600,1098=>600,1099=>600,1100=>600,1101=>600,1102=>600,1103=>600,1104=>600,1105=>600,\n1106=>600,1107=>600,1108=>600,1109=>600,1110=>600,1111=>600,1112=>600,1113=>600,1114=>600,1115=>600,\n1116=>600,1117=>600,1118=>600,1119=>600,1136=>600,1137=>600,1138=>600,1156=>0,1157=>0,1158=>0,\n1162=>600,1163=>600,1164=>600,1165=>600,1166=>600,1167=>600,1168=>600,1169=>600,1170=>600,1171=>600,\n1172=>600,1173=>600,1174=>600,1175=>600,1176=>600,1177=>600,1178=>600,1179=>600,1180=>600,1181=>600,\n1182=>600,1183=>600,1184=>600,1185=>600,1186=>600,1187=>600,1188=>600,1189=>600,1190=>600,1191=>600,\n1192=>600,1193=>600,1194=>600,1195=>600,1196=>600,1197=>600,1198=>600,1199=>600,1200=>600,1201=>600,\n1202=>600,1203=>600,1204=>600,1205=>600,1206=>600,1207=>600,1208=>600,1209=>600,1210=>600,1211=>600,\n1212=>600,1213=>600,1214=>600,1215=>600,1216=>600,1217=>600,1218=>600,1219=>600,1220=>600,1221=>600,\n1222=>600,1223=>600,1224=>600,1225=>600,1226=>600,1227=>600,1228=>600,1229=>600,1230=>600,1231=>600,\n1232=>600,1233=>600,1234=>600,1235=>600,1236=>600,1237=>600,1238=>600,1239=>600,1240=>600,1241=>600,\n1242=>600,1243=>600,1244=>600,1245=>600,1246=>600,1247=>600,1248=>600,1249=>600,1250=>600,1251=>600,\n1252=>600,1253=>600,1254=>600,1255=>600,1256=>600,1257=>600,1258=>600,1259=>600,1260=>600,1261=>600,\n1262=>600,1263=>600,1264=>600,1265=>600,1266=>600,1267=>600,1268=>600,1269=>600,1270=>600,1271=>600,\n1272=>600,1273=>600,1296=>600,1297=>600,1298=>600,1299=>600,1306=>600,1307=>600,1308=>600,1309=>600,\n1310=>600,1311=>600,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,\n1464=>0,1465=>0,1467=>0,1468=>0,1469=>0,1470=>600,1471=>0,1472=>600,1473=>0,1474=>0,\n1475=>600,1476=>0,1488=>600,1489=>600,1490=>600,1491=>600,1492=>600,1493=>600,1494=>600,1495=>600,\n1496=>600,1497=>600,1498=>600,1499=>600,1500=>600,1501=>600,1502=>600,1503=>600,1504=>600,1505=>600,\n1506=>600,1507=>600,1508=>600,1509=>600,1510=>600,1511=>600,1512=>600,1513=>600,1514=>600,1520=>600,\n1521=>600,1522=>600,1523=>600,1524=>600,4304=>600,4305=>600,4306=>600,4307=>600,4308=>600,4309=>600,\n4310=>600,4311=>600,4312=>600,4313=>600,4314=>600,4315=>600,4316=>600,4317=>600,4318=>600,4319=>600,\n4320=>600,4321=>600,4322=>600,4323=>600,4324=>600,4325=>600,4326=>600,4327=>600,4328=>600,4329=>600,\n4330=>600,4331=>600,4332=>600,4333=>600,4334=>600,4335=>600,4336=>600,4337=>600,4338=>600,4339=>600,\n4340=>600,4341=>600,4345=>600,4347=>600,7680=>600,7681=>600,7682=>600,7683=>600,7684=>600,7685=>600,\n7686=>600,7687=>600,7688=>600,7689=>600,7690=>600,7691=>600,7692=>600,7693=>600,7694=>600,7695=>600,\n7696=>600,7697=>600,7698=>600,7699=>600,7700=>600,7701=>600,7702=>600,7703=>600,7704=>600,7705=>600,\n7706=>600,7707=>600,7708=>600,7709=>600,7710=>600,7711=>600,7712=>600,7713=>600,7714=>600,7715=>600,\n7716=>600,7717=>600,7718=>600,7719=>600,7720=>600,7721=>600,7722=>600,7723=>600,7724=>600,7725=>600,\n7726=>600,7727=>600,7728=>600,7729=>600,7730=>600,7731=>600,7732=>600,7733=>600,7734=>600,7735=>600,\n7736=>600,7737=>600,7738=>600,7739=>600,7740=>600,7741=>600,7742=>600,7743=>600,7744=>600,7745=>600,\n7746=>600,7747=>600,7748=>600,7749=>600,7750=>600,7751=>600,7752=>600,7753=>600,7754=>600,7755=>600,\n7756=>600,7757=>600,7758=>600,7759=>600,7760=>600,7761=>600,7762=>600,7763=>600,7764=>600,7765=>600,\n7766=>600,7767=>600,7768=>600,7769=>600,7770=>600,7771=>600,7772=>600,7773=>600,7774=>600,7775=>600,\n7776=>600,7777=>600,7778=>600,7779=>600,7780=>600,7781=>600,7782=>600,7783=>600,7784=>600,7785=>600,\n7786=>600,7787=>600,7788=>600,7789=>600,7790=>600,7791=>600,7792=>600,7793=>600,7794=>600,7795=>600,\n7796=>600,7797=>600,7798=>600,7799=>600,7800=>600,7801=>600,7802=>600,7803=>600,7804=>600,7805=>600,\n7806=>600,7807=>600,7808=>600,7809=>600,7810=>600,7811=>600,7812=>600,7813=>600,7814=>600,7815=>600,\n7816=>600,7817=>600,7818=>600,7819=>600,7820=>600,7821=>600,7822=>600,7823=>600,7824=>600,7825=>600,\n7826=>600,7827=>600,7828=>600,7829=>600,7830=>600,7831=>600,7832=>600,7833=>600,7834=>600,7835=>600,\n7840=>600,7841=>600,7842=>600,7843=>600,7844=>600,7845=>600,7846=>600,7847=>600,7848=>600,7849=>600,\n7850=>600,7851=>600,7852=>600,7853=>600,7854=>600,7855=>600,7856=>600,7857=>600,7858=>600,7859=>600,\n7860=>600,7861=>600,7862=>600,7863=>600,7864=>600,7865=>600,7866=>600,7867=>600,7868=>600,7869=>600,\n7870=>600,7871=>600,7872=>600,7873=>600,7874=>600,7875=>600,7876=>600,7877=>600,7878=>600,7879=>600,\n7880=>600,7881=>600,7882=>600,7883=>600,7884=>600,7885=>600,7886=>600,7887=>600,7888=>600,7889=>600,\n7890=>600,7891=>600,7892=>600,7893=>600,7894=>600,7895=>600,7896=>600,7897=>600,7898=>600,7899=>600,\n7900=>600,7901=>600,7902=>600,7903=>600,7904=>600,7905=>600,7906=>600,7907=>600,7908=>600,7909=>600,\n7910=>600,7911=>600,7912=>600,7913=>600,7914=>600,7915=>600,7916=>600,7917=>600,7918=>600,7919=>600,\n7920=>600,7921=>600,7922=>600,7923=>600,7924=>600,7925=>600,7926=>600,7927=>600,7928=>600,7929=>600,\n8192=>600,8193=>600,8194=>600,8195=>600,8196=>600,8197=>600,8198=>600,8199=>600,8200=>600,8201=>600,\n8202=>600,8203=>600,8204=>0,8205=>0,8206=>0,8207=>0,8208=>600,8209=>600,8210=>600,8213=>600,\n8214=>600,8215=>600,8219=>600,8223=>600,8227=>600,8228=>600,8229=>600,8231=>600,8232=>600,8233=>600,\n8234=>600,8235=>600,8236=>600,8237=>600,8238=>600,8239=>600,8241=>600,8242=>600,8243=>600,8244=>600,\n8245=>600,8246=>600,8247=>600,8248=>600,8251=>600,8252=>600,8253=>600,8254=>600,8255=>600,8256=>600,\n8257=>600,8258=>600,8259=>600,8260=>600,8261=>600,8262=>600,8263=>600,8264=>600,8265=>600,8266=>600,\n8267=>600,8268=>600,8269=>600,8270=>600,8271=>600,8272=>600,8273=>600,8274=>600,8275=>600,8276=>600,\n8277=>600,8278=>600,8279=>600,8280=>600,8281=>600,8282=>600,8283=>600,8284=>600,8285=>600,8286=>600,\n8287=>600,8288=>600,8289=>600,8290=>600,8291=>600,8292=>600,8298=>600,8299=>600,8300=>600,8301=>600,\n8302=>600,8303=>600,8304=>600,8305=>600,8308=>600,8309=>600,8310=>600,8311=>600,8312=>600,8313=>600,\n8314=>600,8315=>600,8316=>600,8317=>600,8318=>600,8319=>600,8320=>600,8321=>600,8322=>600,8323=>600,\n8324=>600,8325=>600,8326=>600,8327=>600,8328=>600,8329=>600,8330=>600,8331=>600,8332=>600,8333=>600,\n8334=>600,8336=>600,8337=>600,8338=>600,8339=>600,8340=>600,8355=>600,8356=>600,8362=>600,8373=>600,\n8448=>600,8449=>600,8451=>600,8453=>600,8454=>600,8457=>600,8465=>600,8466=>600,8470=>600,8472=>600,\n8476=>600,8481=>600,8486=>600,8487=>600,8489=>600,8490=>600,8491=>600,8498=>600,8501=>600,8502=>600,\n8503=>600,8504=>600,8506=>600,8507=>600,8523=>600,8531=>600,8532=>600,8533=>600,8534=>600,8535=>600,\n8536=>600,8537=>600,8538=>600,8539=>600,8540=>600,8541=>600,8542=>600,8543=>600,8544=>600,8545=>600,\n8546=>600,8547=>600,8548=>600,8549=>600,8550=>600,8553=>600,8556=>600,8557=>600,8558=>600,8559=>600,\n8560=>600,8564=>600,8569=>600,8572=>600,8573=>600,8574=>600,8575=>600,8592=>600,8593=>600,8594=>600,\n8595=>600,8704=>600,8706=>600,8707=>600,8709=>600,8710=>600,8711=>600,8712=>600,8713=>600,8715=>600,\n8716=>600,8721=>600,8722=>600,8723=>600,8725=>600,8730=>600,8733=>600,8734=>600,8735=>600,8756=>600,\n8800=>600,8801=>600,8804=>600,8805=>600,8834=>600,8835=>600,8836=>600,8837=>600,8838=>600,8839=>600,\n8869=>600,8976=>600,9001=>600,9002=>600,9251=>600,9472=>600,9473=>600,9474=>600,9475=>600,9476=>600,\n9477=>600,9478=>600,9479=>600,9480=>600,9481=>600,9482=>600,9483=>600,9484=>600,9485=>600,9486=>600,\n9487=>600,9488=>600,9489=>600,9490=>600,9491=>600,9492=>600,9493=>600,9494=>600,9495=>600,9496=>600,\n9497=>600,9498=>600,9499=>600,9500=>600,9501=>600,9502=>600,9503=>600,9504=>600,9505=>600,9506=>600,\n9507=>600,9508=>600,9509=>600,9510=>600,9511=>600,9512=>600,9513=>600,9514=>600,9515=>600,9516=>600,\n9517=>600,9518=>600,9519=>600,9520=>600,9521=>600,9522=>600,9523=>600,9524=>600,9525=>600,9526=>600,\n9527=>600,9528=>600,9529=>600,9530=>600,9531=>600,9532=>600,9533=>600,9534=>600,9535=>600,9536=>600,\n9537=>600,9538=>600,9539=>600,9540=>600,9541=>600,9542=>600,9543=>600,9544=>600,9545=>600,9546=>600,\n9547=>600,9548=>600,9549=>600,9550=>600,9551=>600,9552=>600,9553=>600,9554=>600,9555=>600,9556=>600,\n9557=>600,9558=>600,9559=>600,9560=>600,9561=>600,9562=>600,9563=>600,9564=>600,9565=>600,9566=>600,\n9567=>600,9568=>600,9569=>600,9570=>600,9571=>600,9572=>600,9573=>600,9574=>600,9575=>600,9576=>600,\n9577=>600,9578=>600,9579=>600,9580=>600,9581=>600,9582=>600,9583=>600,9584=>600,9585=>600,9586=>600,\n9587=>600,9588=>600,9589=>600,9590=>600,9591=>600,9592=>600,9593=>600,9594=>600,9595=>600,9596=>600,\n9597=>600,9598=>600,9599=>600,9600=>600,9601=>600,9602=>600,9603=>600,9604=>600,9605=>600,9606=>600,\n9607=>600,9608=>600,9609=>600,9610=>600,9611=>600,9612=>600,9613=>600,9614=>600,9615=>600,9616=>600,\n9617=>600,9618=>600,9619=>600,9620=>600,9621=>600,9632=>600,9633=>600,9635=>600,9636=>600,9637=>600,\n9638=>600,9639=>600,9640=>600,9641=>600,9642=>600,9643=>600,9644=>600,9645=>600,9646=>600,9647=>600,\n9648=>600,9649=>600,9650=>600,9651=>600,9652=>600,9653=>600,9654=>600,9655=>600,9656=>600,9657=>600,\n9658=>600,9660=>600,9661=>600,9662=>600,9663=>600,9664=>600,9665=>600,9666=>600,9667=>600,9668=>600,\n9669=>600,9670=>600,9671=>600,9673=>600,9674=>600,9675=>600,9677=>600,9679=>600,9680=>600,9681=>600,\n9682=>600,9683=>600,9684=>600,9685=>600,9686=>600,9687=>600,9688=>600,9689=>600,9698=>600,9699=>600,\n9700=>600,9701=>600,9702=>600,9703=>600,9704=>600,9705=>600,9706=>600,9707=>600,9708=>600,9709=>600,\n9710=>600,9712=>600,9713=>600,9714=>600,9715=>600,9716=>600,9717=>600,9718=>600,9719=>600,9735=>600,\n9736=>600,9737=>600,9776=>600,9777=>600,9778=>600,9779=>600,9780=>600,9781=>600,9782=>600,9783=>600,\n9785=>600,9786=>600,9787=>600,9824=>600,9825=>600,9826=>600,9827=>600,9828=>600,9829=>600,9830=>600,\n9831=>600,9833=>600,9834=>600,9835=>600,9836=>600,9837=>600,9838=>600,9839=>600,64256=>600,64257=>600,\n64258=>600,64285=>600,64287=>600,64288=>600,64298=>600,64299=>600,64300=>600,64301=>600,64302=>600,64303=>600,\n64304=>600,64305=>600,64306=>600,64307=>600,64308=>600,64309=>600,64310=>600,64312=>600,64313=>600,64314=>600,\n64315=>600,64316=>600,64318=>600,64320=>600,64321=>600,64323=>600,64324=>600,64326=>600,64327=>600,64328=>600,\n64329=>600,64330=>600,64331=>600,64332=>600,64333=>600,64334=>600,64335=>600,65533=>600);\n$enc='';\n$diff='';\n$file='freemonob.z';\n$ctg='freemonob.ctg.z';\n$originalsize=164212;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/freemonobi.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='FreeMonoBoldOblique';\n$desc=array('Ascent'=>800,'Descent'=>-200,'CapHeight'=>19,'Flags'=>96,'FontBBox'=>'[-644 -200 833 800]','ItalicAngle'=>-12,'StemV'=>120,'MissingWidth'=>600);\n$up=-125;\n$ut=50;\n$dw=600;\n$cw=array(\n32=>600,33=>600,34=>600,35=>600,36=>600,37=>600,38=>600,39=>600,40=>600,41=>600,\n42=>600,43=>600,44=>600,45=>600,46=>600,47=>600,48=>600,49=>600,50=>600,51=>600,\n52=>600,53=>600,54=>600,55=>600,56=>600,57=>600,58=>600,59=>600,60=>600,61=>600,\n62=>600,63=>600,64=>600,65=>600,66=>600,67=>600,68=>600,69=>600,70=>600,71=>600,\n72=>600,73=>600,74=>600,75=>600,76=>600,77=>600,78=>600,79=>600,80=>600,81=>600,\n82=>600,83=>600,84=>600,85=>600,86=>600,87=>600,88=>600,89=>600,90=>600,91=>600,\n92=>600,93=>600,94=>600,95=>600,96=>600,97=>600,98=>600,99=>600,100=>600,101=>600,\n102=>600,103=>600,104=>600,105=>600,106=>600,107=>600,108=>600,109=>600,110=>600,111=>600,\n112=>600,113=>600,114=>600,115=>600,116=>600,117=>600,118=>600,119=>600,120=>600,121=>600,\n122=>600,123=>600,124=>600,125=>600,126=>600,8364=>600,8218=>600,402=>600,8222=>600,8230=>600,\n8224=>600,8225=>600,710=>600,8240=>600,352=>600,8249=>600,338=>600,381=>600,8216=>600,8217=>600,\n8220=>600,8221=>600,8226=>600,8211=>600,8212=>600,732=>600,8482=>600,353=>600,8250=>600,339=>600,\n382=>600,376=>600,160=>600,161=>600,162=>600,163=>600,164=>600,165=>600,166=>600,167=>600,\n168=>600,169=>600,170=>600,171=>600,172=>600,173=>600,174=>600,175=>600,176=>600,177=>600,\n178=>600,179=>600,180=>600,181=>600,182=>600,183=>600,184=>600,185=>600,186=>600,187=>600,\n188=>600,189=>600,190=>600,191=>600,192=>600,193=>600,194=>600,195=>600,196=>600,197=>600,\n198=>600,199=>600,200=>600,201=>600,202=>600,203=>600,204=>600,205=>600,206=>600,207=>600,\n208=>600,209=>600,210=>600,211=>600,212=>600,213=>600,214=>600,215=>600,216=>600,217=>600,\n218=>600,219=>600,220=>600,221=>600,222=>600,223=>600,224=>600,225=>600,226=>600,227=>600,\n228=>600,229=>600,230=>600,231=>600,232=>600,233=>600,234=>600,235=>600,236=>600,237=>600,\n238=>600,239=>600,240=>600,241=>600,242=>600,243=>600,244=>600,245=>600,246=>600,247=>600,\n248=>600,249=>600,250=>600,251=>600,252=>600,253=>600,254=>600,255=>600,256=>600,257=>600,\n258=>600,259=>600,260=>600,261=>600,262=>600,263=>600,264=>600,265=>600,266=>600,267=>600,\n268=>600,269=>600,270=>600,271=>600,272=>600,273=>600,274=>600,275=>600,276=>600,277=>600,\n278=>600,279=>600,280=>600,281=>600,282=>600,283=>600,284=>600,285=>600,286=>600,287=>600,\n288=>600,289=>600,290=>600,291=>600,292=>600,293=>600,294=>600,295=>600,296=>600,297=>600,\n298=>600,299=>600,300=>600,301=>600,302=>600,303=>600,304=>600,305=>600,306=>600,307=>600,\n308=>600,309=>600,310=>600,311=>600,312=>600,313=>600,314=>600,315=>600,316=>600,317=>600,\n318=>600,319=>600,320=>600,321=>600,322=>600,323=>600,324=>600,325=>600,326=>600,327=>600,\n328=>600,329=>600,330=>600,331=>600,332=>600,333=>600,334=>600,335=>600,336=>600,337=>600,\n340=>600,341=>600,342=>600,343=>600,344=>600,345=>600,346=>600,347=>600,348=>600,349=>600,\n350=>600,351=>600,354=>600,355=>600,356=>600,357=>600,358=>600,359=>600,360=>600,361=>600,\n362=>600,363=>600,364=>600,365=>600,366=>600,367=>600,368=>600,369=>600,370=>600,371=>600,\n372=>600,373=>600,374=>600,375=>600,377=>600,378=>600,379=>600,380=>600,383=>600,384=>600,\n385=>600,386=>600,387=>600,388=>600,389=>600,390=>600,391=>600,392=>600,393=>600,394=>600,\n395=>600,396=>600,397=>600,398=>600,399=>600,400=>600,401=>600,403=>600,404=>600,405=>600,\n406=>600,407=>600,408=>600,409=>600,410=>600,411=>600,412=>600,413=>600,414=>600,415=>600,\n416=>600,417=>600,418=>600,419=>600,420=>600,421=>600,422=>600,423=>600,424=>600,425=>600,\n426=>600,427=>600,428=>600,429=>600,430=>600,431=>600,432=>600,433=>600,434=>600,435=>600,\n436=>600,437=>600,438=>600,439=>600,440=>600,441=>600,442=>600,443=>600,444=>600,445=>600,\n446=>600,447=>600,448=>600,449=>600,450=>600,451=>600,452=>600,453=>600,454=>600,455=>600,\n456=>600,457=>600,458=>600,459=>600,460=>600,461=>600,462=>600,463=>600,464=>600,465=>600,\n466=>600,467=>600,468=>600,469=>600,470=>600,471=>600,472=>600,473=>600,474=>600,475=>600,\n476=>600,477=>600,478=>600,479=>600,480=>600,481=>600,482=>600,483=>600,484=>600,485=>600,\n486=>600,487=>600,488=>600,489=>600,490=>600,491=>600,492=>600,493=>600,494=>600,495=>600,\n496=>600,497=>600,498=>600,499=>600,500=>600,501=>600,502=>600,503=>600,504=>600,505=>600,\n506=>600,507=>600,508=>600,509=>600,510=>600,511=>600,512=>600,513=>600,514=>600,515=>600,\n516=>600,517=>600,518=>600,519=>600,520=>600,521=>600,522=>600,523=>600,524=>600,525=>600,\n526=>600,527=>600,528=>600,529=>600,530=>600,531=>600,532=>600,533=>600,534=>600,535=>600,\n536=>600,537=>600,538=>600,539=>600,540=>600,541=>600,542=>600,543=>600,548=>600,549=>600,\n550=>600,551=>600,552=>600,553=>600,554=>600,555=>600,556=>600,557=>600,558=>600,559=>600,\n560=>600,561=>600,562=>600,563=>600,567=>600,592=>600,593=>600,594=>600,595=>600,596=>600,\n598=>600,599=>600,600=>600,601=>600,603=>600,604=>600,607=>600,608=>600,609=>600,613=>600,\n614=>600,615=>600,616=>600,617=>600,618=>600,619=>600,621=>600,623=>600,624=>600,625=>600,\n626=>600,627=>600,628=>600,629=>600,633=>600,634=>600,635=>600,636=>600,637=>600,638=>600,\n639=>600,640=>600,641=>600,642=>600,643=>600,644=>600,645=>600,647=>600,648=>600,649=>600,\n652=>600,653=>600,654=>600,656=>600,657=>600,658=>600,659=>600,660=>600,661=>600,662=>600,\n663=>600,664=>600,665=>600,666=>600,667=>600,668=>600,669=>600,670=>600,671=>600,672=>600,\n673=>600,674=>600,697=>600,698=>600,699=>600,700=>600,701=>600,702=>600,703=>600,704=>600,\n705=>600,706=>600,707=>600,708=>600,709=>600,711=>600,712=>600,713=>600,714=>600,715=>600,\n716=>600,717=>600,718=>600,719=>600,720=>600,721=>600,722=>600,723=>600,724=>600,725=>600,\n726=>600,727=>600,728=>600,729=>600,730=>600,731=>600,733=>600,734=>600,735=>600,741=>600,\n742=>600,743=>600,744=>600,745=>600,746=>600,747=>600,748=>600,749=>600,750=>600,751=>600,\n752=>600,753=>600,754=>600,755=>600,756=>600,757=>600,758=>600,759=>600,760=>600,761=>600,\n762=>600,763=>600,764=>600,765=>600,766=>600,767=>600,768=>0,769=>0,770=>0,771=>0,\n772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,\n782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,\n795=>0,796=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,\n808=>0,809=>0,810=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,\n819=>0,820=>0,821=>0,822=>0,825=>0,826=>0,827=>0,831=>0,832=>0,833=>0,\n834=>0,835=>0,836=>0,838=>0,839=>0,840=>0,844=>0,849=>0,850=>0,851=>0,\n852=>0,853=>0,854=>0,855=>0,884=>600,885=>600,890=>600,894=>600,900=>600,901=>600,\n902=>600,903=>600,904=>600,905=>600,906=>600,908=>600,910=>600,911=>600,912=>600,913=>600,\n914=>600,915=>600,916=>600,917=>600,918=>600,919=>600,920=>600,921=>600,922=>600,923=>600,\n924=>600,925=>600,926=>600,927=>600,928=>600,929=>600,931=>600,932=>600,933=>600,934=>600,\n935=>600,936=>600,937=>600,938=>600,939=>600,940=>600,941=>600,942=>600,943=>600,944=>600,\n945=>600,946=>600,947=>600,948=>600,949=>600,950=>600,951=>600,952=>600,953=>600,954=>600,\n955=>600,956=>600,957=>600,958=>600,959=>600,960=>600,961=>600,962=>600,963=>600,964=>600,\n965=>600,966=>600,967=>600,968=>600,969=>600,970=>600,971=>600,972=>600,973=>600,974=>600,\n976=>600,977=>600,978=>600,979=>600,980=>600,981=>600,982=>600,986=>600,987=>600,988=>600,\n1008=>600,1009=>600,1012=>600,1013=>600,1024=>600,1025=>600,1026=>600,1027=>600,1028=>600,1029=>600,\n1030=>600,1031=>600,1032=>600,1033=>600,1034=>600,1035=>600,1036=>600,1037=>600,1038=>600,1039=>600,\n1040=>600,1041=>600,1042=>600,1043=>600,1044=>600,1045=>600,1046=>600,1047=>600,1048=>600,1049=>600,\n1050=>600,1051=>600,1052=>600,1053=>600,1054=>600,1055=>600,1056=>600,1057=>600,1058=>600,1059=>600,\n1060=>600,1061=>600,1062=>600,1063=>600,1064=>600,1065=>600,1066=>600,1067=>600,1068=>600,1069=>600,\n1070=>600,1071=>600,1072=>600,1073=>600,1074=>600,1075=>600,1076=>600,1077=>600,1078=>600,1079=>600,\n1080=>600,1081=>600,1082=>600,1083=>600,1084=>600,1085=>600,1086=>600,1087=>600,1088=>600,1089=>600,\n1090=>600,1091=>600,1092=>600,1093=>600,1094=>600,1095=>600,1096=>600,1097=>600,1098=>600,1099=>600,\n1100=>600,1101=>600,1102=>600,1103=>600,1104=>600,1105=>600,1106=>600,1107=>600,1108=>600,1109=>600,\n1110=>600,1111=>600,1112=>600,1113=>600,1114=>600,1115=>600,1116=>600,1117=>600,1118=>600,1119=>600,\n1136=>600,1137=>600,1138=>600,1156=>0,1157=>0,1158=>0,1162=>600,1163=>600,1164=>600,1165=>600,\n1166=>600,1167=>600,1168=>600,1169=>600,1170=>600,1171=>600,1172=>600,1173=>600,1174=>600,1175=>600,\n1176=>600,1177=>600,1178=>600,1179=>600,1180=>600,1181=>600,1182=>600,1183=>600,1184=>600,1185=>600,\n1186=>600,1187=>600,1188=>600,1189=>600,1190=>600,1191=>600,1192=>600,1193=>600,1194=>600,1195=>600,\n1196=>600,1197=>600,1198=>600,1199=>600,1200=>600,1201=>600,1202=>600,1203=>600,1204=>600,1205=>600,\n1206=>600,1207=>600,1208=>600,1209=>600,1210=>600,1211=>600,1212=>600,1213=>600,1214=>600,1215=>600,\n1216=>600,1217=>600,1218=>600,1219=>600,1220=>600,1221=>600,1222=>600,1223=>600,1224=>600,1225=>600,\n1226=>600,1227=>600,1228=>600,1229=>600,1230=>600,1231=>600,1232=>600,1233=>600,1234=>600,1235=>600,\n1236=>600,1237=>600,1238=>600,1239=>600,1240=>600,1241=>600,1242=>600,1243=>600,1244=>600,1245=>600,\n1246=>600,1247=>600,1248=>600,1249=>600,1250=>600,1251=>600,1252=>600,1253=>600,1254=>600,1255=>600,\n1256=>600,1257=>600,1258=>600,1259=>600,1260=>600,1261=>600,1262=>600,1263=>600,1264=>600,1265=>600,\n1266=>600,1267=>600,1268=>600,1269=>600,1270=>600,1271=>600,1272=>600,1273=>600,1296=>600,1297=>600,\n1298=>600,1299=>600,1306=>600,1307=>600,1308=>600,1309=>600,1310=>600,1311=>600,1456=>0,1457=>0,\n1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1467=>0,1468=>0,\n1469=>0,1470=>0,1471=>0,1472=>600,1473=>0,1474=>0,1475=>600,1476=>0,1488=>600,1489=>600,\n1490=>600,1491=>600,1492=>600,1493=>600,1494=>600,1495=>600,1496=>600,1497=>600,1498=>600,1499=>600,\n1500=>600,1501=>600,1502=>600,1503=>600,1504=>600,1505=>600,1506=>600,1507=>600,1508=>600,1509=>600,\n1510=>600,1511=>600,1512=>600,1513=>600,1514=>600,1520=>600,1521=>600,1522=>600,1523=>600,1524=>600,\n4304=>600,4305=>600,4306=>600,4307=>600,4308=>600,4309=>600,4310=>600,4311=>600,4312=>600,4313=>600,\n4314=>600,4315=>600,4316=>600,4317=>600,4318=>600,4319=>600,4320=>600,4321=>600,4322=>600,4323=>600,\n4324=>600,4325=>600,4326=>600,4327=>600,4328=>600,4329=>600,4330=>600,4331=>600,4332=>600,4333=>600,\n4334=>600,4335=>600,4336=>600,4337=>600,4338=>600,4339=>600,4340=>600,4341=>600,4345=>600,4347=>600,\n8192=>600,8193=>600,8194=>600,8195=>600,8196=>600,8197=>600,8198=>600,8199=>600,8200=>600,8201=>600,\n8202=>600,8203=>600,8204=>0,8205=>0,8206=>0,8207=>0,8208=>600,8209=>600,8210=>600,8213=>600,\n8214=>600,8215=>600,8219=>600,8223=>600,8227=>600,8228=>600,8229=>600,8231=>600,8232=>600,8233=>600,\n8234=>600,8235=>600,8236=>600,8237=>600,8238=>600,8239=>600,8241=>600,8242=>600,8243=>600,8244=>600,\n8245=>600,8246=>600,8247=>600,8248=>600,8251=>600,8252=>600,8253=>600,8254=>600,8255=>600,8256=>600,\n8257=>600,8258=>600,8259=>600,8260=>600,8261=>600,8262=>600,8263=>600,8264=>600,8265=>600,8266=>600,\n8267=>600,8268=>600,8269=>600,8270=>600,8271=>600,8272=>600,8273=>600,8274=>600,8275=>600,8276=>600,\n8277=>600,8278=>600,8279=>600,8280=>600,8281=>600,8282=>600,8283=>600,8284=>600,8285=>600,8286=>600,\n8287=>600,8288=>600,8289=>600,8290=>600,8291=>600,8292=>600,8298=>600,8299=>600,8300=>600,8301=>600,\n8302=>600,8303=>600,8304=>600,8305=>600,8308=>600,8309=>600,8310=>600,8311=>600,8312=>600,8313=>600,\n8314=>600,8315=>600,8316=>600,8317=>600,8318=>600,8319=>600,8320=>600,8321=>600,8322=>600,8323=>600,\n8324=>600,8325=>600,8326=>600,8327=>600,8328=>600,8329=>600,8330=>600,8331=>600,8332=>600,8333=>600,\n8334=>600,8336=>600,8337=>600,8338=>600,8339=>600,8340=>600,8362=>600,8373=>600,8448=>600,8449=>600,\n8451=>600,8453=>600,8454=>600,8457=>600,8465=>600,8466=>600,8470=>600,8472=>600,8476=>600,8481=>600,\n8486=>600,8487=>600,8489=>600,8490=>600,8491=>600,8498=>600,8501=>600,8502=>600,8503=>600,8504=>600,\n8506=>600,8507=>600,8523=>600,8531=>600,8532=>600,8533=>600,8534=>600,8535=>600,8536=>600,8537=>600,\n8538=>600,8539=>600,8540=>600,8541=>600,8542=>600,8543=>600,8544=>600,8545=>600,8546=>600,8547=>600,\n8548=>600,8549=>600,8550=>600,8553=>600,8556=>600,8557=>600,8558=>600,8559=>600,8560=>600,8564=>600,\n8569=>600,8572=>600,8573=>600,8574=>600,8575=>600,8592=>600,8593=>600,8594=>600,8595=>600,8704=>600,\n8706=>600,8707=>600,8710=>600,8711=>600,8712=>600,8713=>600,8715=>600,8716=>600,8721=>600,8722=>600,\n8723=>600,8725=>600,8730=>600,8733=>600,8734=>600,8756=>600,8800=>600,8801=>600,8804=>600,8805=>600,\n9251=>600,9674=>600,9824=>600,9825=>600,9826=>600,9827=>600,9828=>600,9829=>600,9830=>600,9831=>600,\n9833=>600,9834=>600,9835=>600,9836=>600,9837=>600,9838=>600,9839=>600,64256=>600,64257=>600,64258=>600,\n64285=>600,64287=>600,64288=>600,64298=>600,64299=>600,64300=>600,64301=>600,64302=>600,64303=>600,64304=>600,\n64305=>600,64306=>600,64307=>600,64308=>600,64309=>600,64310=>600,64312=>600,64313=>600,64314=>600,64315=>600,\n64316=>600,64318=>600,64320=>600,64321=>600,64323=>600,64324=>600,64326=>600,64327=>600,64328=>600,64329=>600,\n64330=>600,64331=>600,64332=>600,64333=>600,64334=>600,64335=>600,65533=>600);\n$enc='';\n$diff='';\n$file='freemonobi.z';\n$ctg='freemonobi.ctg.z';\n$originalsize=145080;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/freemonoi.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='FreeMonoOblique';\n$desc=array('Ascent'=>800,'Descent'=>-200,'CapHeight'=>44,'Flags'=>96,'FontBBox'=>'[-644 -200 816 800]','ItalicAngle'=>-12,'StemV'=>70,'MissingWidth'=>600);\n$up=-125;\n$ut=50;\n$dw=600;\n$cw=array(\n32=>600,33=>600,34=>600,35=>600,36=>600,37=>600,38=>600,39=>600,40=>600,41=>600,\n42=>600,43=>600,44=>600,45=>600,46=>600,47=>600,48=>600,49=>600,50=>600,51=>600,\n52=>600,53=>600,54=>600,55=>600,56=>600,57=>600,58=>600,59=>600,60=>600,61=>600,\n62=>600,63=>600,64=>600,65=>600,66=>600,67=>600,68=>600,69=>600,70=>600,71=>600,\n72=>600,73=>600,74=>600,75=>600,76=>600,77=>600,78=>600,79=>600,80=>600,81=>600,\n82=>600,83=>600,84=>600,85=>600,86=>600,87=>600,88=>600,89=>600,90=>600,91=>600,\n92=>600,93=>600,94=>600,95=>600,96=>600,97=>600,98=>600,99=>600,100=>600,101=>600,\n102=>600,103=>600,104=>600,105=>600,106=>600,107=>600,108=>600,109=>600,110=>600,111=>600,\n112=>600,113=>600,114=>600,115=>600,116=>600,117=>600,118=>600,119=>600,120=>600,121=>600,\n122=>600,123=>600,124=>600,125=>600,126=>600,8364=>600,8218=>600,402=>600,8222=>600,8230=>600,\n8224=>600,8225=>600,710=>600,8240=>600,352=>600,8249=>600,338=>600,381=>600,8216=>600,8217=>600,\n8220=>600,8221=>600,8226=>600,8211=>600,8212=>600,732=>600,8482=>600,353=>600,8250=>600,339=>600,\n382=>600,376=>600,160=>600,161=>600,162=>600,163=>600,164=>600,165=>600,166=>600,167=>600,\n168=>600,169=>600,170=>600,171=>600,172=>600,173=>600,174=>600,175=>600,176=>600,177=>600,\n178=>600,179=>600,180=>600,181=>600,182=>600,183=>600,184=>600,185=>600,186=>600,187=>600,\n188=>600,189=>600,190=>600,191=>600,192=>600,193=>600,194=>600,195=>600,196=>600,197=>600,\n198=>600,199=>600,200=>600,201=>600,202=>600,203=>600,204=>600,205=>600,206=>600,207=>600,\n208=>600,209=>600,210=>600,211=>600,212=>600,213=>600,214=>600,215=>600,216=>600,217=>600,\n218=>600,219=>600,220=>600,221=>600,222=>600,223=>600,224=>600,225=>600,226=>600,227=>600,\n228=>600,229=>600,230=>600,231=>600,232=>600,233=>600,234=>600,235=>600,236=>600,237=>600,\n238=>600,239=>600,240=>600,241=>600,242=>600,243=>600,244=>600,245=>600,246=>600,247=>600,\n248=>600,249=>600,250=>600,251=>600,252=>600,253=>600,254=>600,255=>600,256=>600,257=>600,\n258=>600,259=>600,260=>600,261=>600,262=>600,263=>600,264=>600,265=>600,266=>600,267=>600,\n268=>600,269=>600,270=>600,271=>600,272=>600,273=>600,274=>600,275=>600,276=>600,277=>600,\n278=>600,279=>600,280=>600,281=>600,282=>600,283=>600,284=>600,285=>600,286=>600,287=>600,\n288=>600,289=>600,290=>600,291=>600,292=>600,293=>600,294=>600,295=>600,296=>600,297=>600,\n298=>600,299=>600,300=>600,301=>600,302=>600,303=>600,304=>600,305=>600,306=>600,307=>600,\n308=>600,309=>600,310=>600,311=>600,312=>600,313=>600,314=>600,315=>600,316=>600,317=>600,\n318=>600,319=>600,320=>600,321=>600,322=>600,323=>600,324=>600,325=>600,326=>600,327=>600,\n328=>600,329=>600,330=>600,331=>600,332=>600,333=>600,334=>600,335=>600,336=>600,337=>600,\n340=>600,341=>600,342=>600,343=>600,344=>600,345=>600,346=>600,347=>600,348=>600,349=>600,\n350=>600,351=>600,354=>600,355=>600,356=>600,357=>600,358=>600,359=>600,360=>600,361=>600,\n362=>600,363=>600,364=>600,365=>600,366=>600,367=>600,368=>600,369=>600,370=>600,371=>600,\n372=>600,373=>600,374=>600,375=>600,377=>600,378=>600,379=>600,380=>600,383=>600,384=>600,\n385=>600,386=>600,387=>600,388=>600,389=>600,390=>600,391=>600,392=>600,393=>600,394=>600,\n395=>600,396=>600,397=>600,398=>600,399=>600,400=>600,401=>600,403=>600,404=>600,405=>600,\n406=>600,407=>600,408=>600,409=>600,410=>600,411=>600,412=>600,413=>600,414=>600,415=>600,\n416=>600,417=>600,418=>600,419=>600,420=>600,421=>600,422=>600,423=>600,424=>600,425=>600,\n426=>600,427=>600,428=>600,429=>600,430=>600,431=>600,432=>600,433=>600,434=>600,435=>600,\n436=>600,437=>600,438=>600,439=>600,440=>600,441=>600,442=>600,443=>600,444=>600,445=>600,\n446=>600,447=>600,448=>600,449=>600,450=>600,451=>600,452=>600,453=>600,454=>600,455=>600,\n456=>600,457=>600,458=>600,459=>600,460=>600,461=>600,462=>600,463=>600,464=>600,465=>600,\n466=>600,467=>600,468=>600,469=>600,470=>600,471=>600,472=>600,473=>600,474=>600,475=>600,\n476=>600,477=>600,478=>600,479=>600,480=>600,481=>600,482=>600,483=>600,484=>600,485=>600,\n486=>600,487=>600,488=>600,489=>600,490=>600,491=>600,492=>600,493=>600,494=>600,495=>600,\n496=>600,497=>600,498=>600,499=>600,500=>600,501=>600,502=>600,503=>600,504=>600,505=>600,\n506=>600,507=>600,508=>600,509=>600,510=>600,511=>600,512=>600,513=>600,514=>600,515=>600,\n516=>600,517=>600,518=>600,519=>600,520=>600,521=>600,522=>600,523=>600,524=>600,525=>600,\n526=>600,527=>600,528=>600,529=>600,530=>600,531=>600,532=>600,533=>600,534=>600,535=>600,\n536=>600,537=>600,538=>600,539=>600,540=>600,541=>600,542=>600,543=>600,548=>600,549=>600,\n550=>600,551=>600,552=>600,553=>600,554=>600,555=>600,556=>600,557=>600,558=>600,559=>600,\n560=>600,561=>600,562=>600,563=>600,567=>600,592=>600,593=>600,594=>600,595=>600,596=>600,\n597=>600,598=>600,599=>600,600=>600,601=>600,602=>600,603=>600,604=>600,607=>600,608=>600,\n609=>600,610=>600,611=>600,612=>600,613=>600,614=>600,615=>600,616=>600,617=>600,618=>600,\n619=>600,620=>600,621=>600,622=>600,623=>600,624=>600,625=>600,626=>600,627=>600,628=>600,\n629=>600,630=>600,632=>600,633=>600,634=>600,635=>600,636=>600,637=>600,638=>600,639=>600,\n640=>600,641=>600,642=>600,643=>600,644=>600,645=>600,646=>600,647=>600,648=>600,649=>600,\n651=>600,652=>600,653=>600,654=>600,655=>600,656=>600,657=>600,658=>600,660=>600,661=>600,\n662=>600,663=>600,664=>600,665=>600,667=>600,668=>600,669=>600,670=>600,671=>600,672=>600,\n673=>600,674=>600,679=>600,688=>600,689=>600,690=>600,691=>600,692=>600,693=>600,694=>600,\n695=>600,696=>600,697=>600,698=>600,699=>600,700=>600,701=>600,702=>600,703=>600,704=>600,\n705=>600,706=>600,707=>600,708=>600,709=>600,711=>600,712=>600,713=>600,714=>600,715=>600,\n716=>600,717=>600,718=>600,719=>600,720=>600,721=>600,722=>600,723=>600,724=>600,725=>600,\n726=>600,727=>600,728=>600,729=>600,730=>600,731=>600,733=>600,734=>600,735=>600,736=>600,\n737=>600,738=>600,739=>600,740=>600,741=>600,742=>600,743=>600,744=>600,745=>600,746=>600,\n747=>600,748=>600,749=>600,750=>600,751=>600,752=>600,753=>600,754=>600,755=>600,756=>600,\n757=>600,758=>600,759=>600,760=>600,761=>600,762=>600,763=>600,764=>600,765=>600,766=>600,\n767=>600,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,\n777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,\n787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,795=>0,796=>0,800=>0,\n803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,812=>0,813=>0,\n814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,\n824=>0,825=>0,826=>0,827=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,\n838=>0,839=>0,840=>0,844=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,\n855=>0,884=>600,885=>600,890=>600,894=>600,900=>600,901=>600,902=>600,903=>600,904=>600,\n905=>600,906=>600,908=>600,910=>600,911=>600,912=>600,913=>600,914=>600,915=>600,916=>600,\n917=>600,918=>600,919=>600,920=>600,921=>600,922=>600,923=>600,924=>600,925=>600,926=>600,\n927=>600,928=>600,929=>600,931=>600,932=>600,933=>600,934=>600,935=>600,936=>600,937=>600,\n938=>600,939=>600,940=>600,941=>600,942=>600,943=>600,944=>600,945=>600,946=>600,947=>600,\n948=>600,949=>600,950=>600,951=>600,952=>600,953=>600,954=>600,955=>600,956=>600,957=>600,\n958=>600,959=>600,960=>600,961=>600,962=>600,963=>600,964=>600,965=>600,966=>600,967=>600,\n968=>600,969=>600,970=>600,971=>600,972=>600,973=>600,974=>600,976=>600,977=>600,978=>600,\n979=>600,980=>600,981=>600,982=>600,986=>600,987=>600,988=>600,1008=>600,1009=>600,1012=>600,\n1013=>600,1024=>600,1025=>600,1026=>600,1027=>600,1028=>600,1029=>600,1030=>600,1031=>600,1032=>600,\n1033=>600,1034=>600,1035=>600,1036=>600,1037=>600,1038=>600,1039=>600,1040=>600,1041=>600,1042=>600,\n1043=>600,1044=>600,1045=>600,1046=>600,1047=>600,1048=>600,1049=>600,1050=>600,1051=>600,1052=>600,\n1053=>600,1054=>600,1055=>600,1056=>600,1057=>600,1058=>600,1059=>600,1060=>600,1061=>600,1062=>600,\n1063=>600,1064=>600,1065=>600,1066=>600,1067=>600,1068=>600,1069=>600,1070=>600,1071=>600,1072=>600,\n1073=>600,1074=>600,1075=>600,1076=>600,1077=>600,1078=>600,1079=>600,1080=>600,1081=>600,1082=>600,\n1083=>600,1084=>600,1085=>600,1086=>600,1087=>600,1088=>600,1089=>600,1090=>600,1091=>600,1092=>600,\n1093=>600,1094=>600,1095=>600,1096=>600,1097=>600,1098=>600,1099=>600,1100=>600,1101=>600,1102=>600,\n1103=>600,1104=>600,1105=>600,1106=>600,1107=>600,1108=>600,1109=>600,1110=>600,1111=>600,1112=>600,\n1113=>600,1114=>600,1115=>600,1116=>600,1117=>600,1118=>600,1119=>600,1120=>600,1121=>600,1122=>600,\n1123=>600,1124=>600,1126=>600,1127=>600,1128=>600,1130=>600,1131=>600,1132=>600,1133=>600,1136=>600,\n1137=>600,1138=>600,1140=>600,1141=>600,1142=>600,1143=>600,1155=>0,1156=>0,1157=>0,1158=>0,\n1159=>0,1162=>600,1163=>600,1164=>600,1165=>600,1166=>600,1167=>600,1168=>600,1169=>600,1170=>600,\n1171=>600,1172=>600,1173=>600,1174=>600,1175=>600,1176=>600,1177=>600,1178=>600,1179=>600,1180=>600,\n1181=>600,1182=>600,1183=>600,1184=>600,1185=>600,1186=>600,1187=>600,1188=>600,1189=>600,1190=>600,\n1191=>600,1192=>600,1193=>600,1194=>600,1195=>600,1196=>600,1197=>600,1198=>600,1199=>600,1200=>600,\n1201=>600,1202=>600,1203=>600,1204=>600,1205=>600,1206=>600,1207=>600,1208=>600,1209=>600,1210=>600,\n1211=>600,1212=>600,1213=>600,1214=>600,1215=>600,1216=>600,1217=>600,1218=>600,1219=>600,1220=>600,\n1221=>600,1222=>600,1223=>600,1224=>600,1225=>600,1226=>600,1227=>600,1228=>600,1229=>600,1230=>600,\n1231=>600,1232=>600,1233=>600,1234=>600,1235=>600,1236=>600,1237=>600,1238=>600,1239=>600,1240=>600,\n1241=>600,1242=>600,1243=>600,1244=>600,1245=>600,1246=>600,1247=>600,1248=>600,1249=>600,1250=>600,\n1251=>600,1252=>600,1253=>600,1254=>600,1255=>600,1256=>600,1257=>600,1258=>600,1259=>600,1260=>600,\n1261=>600,1262=>600,1263=>600,1264=>600,1265=>600,1266=>600,1267=>600,1268=>600,1269=>600,1270=>600,\n1271=>600,1272=>600,1273=>600,1296=>600,1297=>600,1298=>600,1299=>600,1306=>600,1307=>600,1308=>600,\n1309=>600,1310=>600,1311=>600,1329=>600,1330=>600,1331=>600,1332=>600,1333=>600,1334=>600,1335=>600,\n1336=>600,1337=>600,1338=>600,1339=>600,1340=>600,1341=>600,1342=>600,1343=>600,1344=>600,1345=>600,\n1346=>600,1347=>600,1348=>600,1349=>600,1350=>600,1351=>600,1352=>600,1353=>600,1354=>600,1355=>600,\n1356=>600,1357=>600,1358=>600,1359=>600,1360=>600,1361=>600,1362=>600,1363=>600,1364=>600,1365=>600,\n1366=>600,1369=>600,1370=>600,1371=>600,1372=>600,1373=>600,1374=>600,1375=>600,1377=>600,1378=>600,\n1379=>600,1380=>600,1381=>600,1382=>600,1383=>600,1384=>600,1385=>600,1386=>600,1387=>600,1388=>600,\n1389=>600,1390=>600,1391=>600,1392=>600,1393=>600,1394=>600,1395=>600,1396=>600,1397=>600,1398=>600,\n1399=>600,1400=>600,1401=>600,1402=>600,1403=>600,1404=>600,1405=>600,1406=>600,1407=>600,1408=>600,\n1409=>600,1410=>600,1411=>600,1412=>600,1413=>600,1414=>600,1415=>600,1417=>600,1418=>600,1456=>0,\n1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1467=>0,\n1468=>0,1469=>0,1470=>600,1471=>0,1472=>600,1473=>0,1474=>0,1475=>600,1476=>0,1488=>600,\n1489=>600,1490=>600,1491=>600,1492=>600,1493=>600,1494=>600,1495=>600,1496=>600,1497=>600,1498=>600,\n1499=>600,1500=>600,1501=>600,1502=>600,1503=>600,1504=>600,1505=>600,1506=>600,1507=>600,1508=>600,\n1509=>600,1510=>600,1511=>600,1512=>600,1513=>600,1514=>600,1520=>600,1521=>600,1522=>600,1523=>600,\n1524=>600,4304=>600,4305=>600,4306=>600,4307=>600,4308=>600,4309=>600,4310=>600,4311=>600,4312=>600,\n4313=>600,4314=>600,4315=>600,4316=>600,4317=>600,4318=>600,4319=>600,4320=>600,4321=>600,4322=>600,\n4323=>600,4324=>600,4325=>600,4326=>600,4327=>600,4328=>600,4329=>600,4330=>600,4331=>600,4332=>600,\n4333=>600,4334=>600,4335=>600,4336=>600,4337=>600,4338=>600,4339=>600,4340=>600,4341=>600,4345=>600,\n4347=>600,7680=>600,7681=>600,7682=>600,7683=>600,7684=>600,7685=>600,7686=>600,7687=>600,7688=>600,\n7689=>600,7690=>600,7691=>600,7692=>600,7693=>600,7694=>600,7695=>600,7696=>600,7697=>600,7698=>600,\n7699=>600,7700=>600,7701=>600,7702=>600,7703=>600,7704=>600,7705=>600,7706=>600,7707=>600,7708=>600,\n7709=>600,7710=>600,7711=>600,7712=>600,7713=>600,7714=>600,7715=>600,7716=>600,7717=>600,7718=>600,\n7719=>600,7720=>600,7721=>600,7722=>600,7723=>600,7724=>600,7725=>600,7726=>600,7727=>600,7728=>600,\n7729=>600,7730=>600,7731=>600,7732=>600,7733=>600,7734=>600,7735=>600,7736=>600,7737=>600,7738=>600,\n7739=>600,7740=>600,7741=>600,7742=>600,7743=>600,7744=>600,7745=>600,7746=>600,7747=>600,7748=>600,\n7749=>600,7750=>600,7751=>600,7752=>600,7753=>600,7754=>600,7755=>600,7756=>600,7757=>600,7758=>600,\n7759=>600,7760=>600,7761=>600,7762=>600,7763=>600,7764=>600,7765=>600,7766=>600,7767=>600,7768=>600,\n7769=>600,7770=>600,7771=>600,7772=>600,7773=>600,7774=>600,7775=>600,7776=>600,7777=>600,7778=>600,\n7779=>600,7780=>600,7781=>600,7782=>600,7783=>600,7784=>600,7785=>600,7786=>600,7787=>600,7788=>600,\n7789=>600,7790=>600,7791=>600,7792=>600,7793=>600,7794=>600,7795=>600,7796=>600,7797=>600,7798=>600,\n7799=>600,7800=>600,7801=>600,7802=>600,7803=>600,7804=>600,7805=>600,7806=>600,7807=>600,7808=>600,\n7809=>600,7810=>600,7811=>600,7812=>600,7813=>600,7814=>600,7815=>600,7816=>600,7817=>600,7818=>600,\n7819=>600,7820=>600,7821=>600,7822=>600,7823=>600,7824=>600,7825=>600,7826=>600,7827=>600,7828=>600,\n7829=>600,7830=>600,7831=>600,7832=>600,7833=>600,7834=>600,7835=>600,7840=>600,7841=>600,7842=>600,\n7843=>600,7844=>600,7845=>600,7846=>600,7847=>600,7848=>600,7849=>600,7850=>600,7851=>600,7852=>600,\n7853=>600,7854=>600,7855=>600,7856=>600,7857=>600,7858=>600,7859=>600,7860=>600,7861=>600,7862=>600,\n7863=>600,7864=>600,7865=>600,7866=>600,7867=>600,7868=>600,7869=>600,7870=>600,7871=>600,7872=>600,\n7873=>600,7874=>600,7875=>600,7876=>600,7877=>600,7878=>600,7879=>600,7880=>600,7881=>600,7882=>600,\n7883=>600,7884=>600,7885=>600,7886=>600,7887=>600,7888=>600,7889=>600,7890=>600,7891=>600,7892=>600,\n7893=>600,7894=>600,7895=>600,7896=>600,7897=>600,7898=>600,7899=>600,7900=>600,7901=>600,7902=>600,\n7903=>600,7904=>600,7905=>600,7906=>600,7907=>600,7908=>600,7909=>600,7910=>600,7911=>600,7912=>600,\n7913=>600,7914=>600,7915=>600,7916=>600,7917=>600,7918=>600,7919=>600,7920=>600,7921=>600,7922=>600,\n7923=>600,7924=>600,7925=>600,7926=>600,7927=>600,7928=>600,7929=>600,7936=>600,7937=>600,7938=>600,\n7939=>600,7940=>600,7941=>600,7942=>600,7943=>600,7944=>600,7945=>600,7946=>600,7947=>600,7948=>600,\n7949=>600,7950=>600,7951=>600,7952=>600,7953=>600,7954=>600,7955=>600,7956=>600,7957=>600,7960=>600,\n7961=>600,7962=>600,7963=>600,7964=>600,7965=>600,7968=>600,7969=>600,7970=>600,7971=>600,7972=>600,\n7973=>600,7974=>600,7975=>600,7976=>600,7977=>600,7978=>600,7979=>600,7980=>600,7981=>600,7982=>600,\n7983=>600,7984=>600,7985=>600,7986=>600,7987=>600,7988=>600,7989=>600,7990=>600,7991=>600,7992=>600,\n7993=>600,7994=>600,7995=>600,7996=>600,7997=>600,7998=>600,7999=>600,8000=>600,8001=>600,8002=>600,\n8003=>600,8004=>600,8005=>600,8008=>600,8009=>600,8010=>600,8011=>600,8012=>600,8013=>600,8016=>600,\n8017=>600,8018=>600,8019=>600,8020=>600,8021=>600,8022=>600,8023=>600,8025=>600,8027=>600,8029=>600,\n8031=>600,8032=>600,8033=>600,8034=>600,8035=>600,8036=>600,8037=>600,8038=>600,8039=>600,8040=>600,\n8041=>600,8042=>600,8043=>600,8044=>600,8045=>600,8046=>600,8047=>600,8048=>600,8049=>600,8050=>600,\n8051=>600,8052=>600,8053=>600,8054=>600,8055=>600,8056=>600,8057=>600,8058=>600,8059=>600,8060=>600,\n8061=>600,8064=>600,8065=>600,8066=>600,8067=>600,8068=>600,8069=>600,8070=>600,8071=>600,8072=>600,\n8073=>600,8074=>600,8075=>600,8076=>600,8077=>600,8078=>600,8079=>600,8080=>600,8081=>600,8082=>600,\n8083=>600,8084=>600,8085=>600,8086=>600,8087=>600,8088=>600,8089=>600,8090=>600,8091=>600,8092=>600,\n8093=>600,8094=>600,8095=>600,8096=>600,8097=>600,8098=>600,8099=>600,8100=>600,8101=>600,8102=>600,\n8103=>600,8104=>600,8105=>600,8106=>600,8107=>600,8108=>600,8109=>600,8110=>600,8111=>600,8112=>600,\n8113=>600,8114=>600,8115=>600,8116=>600,8118=>600,8119=>600,8120=>600,8121=>600,8122=>600,8123=>600,\n8124=>600,8125=>600,8126=>600,8127=>600,8128=>600,8129=>600,8130=>600,8131=>600,8132=>600,8134=>600,\n8135=>600,8136=>600,8137=>600,8138=>600,8139=>600,8140=>600,8141=>600,8142=>600,8143=>600,8144=>600,\n8145=>600,8146=>600,8147=>600,8150=>600,8151=>600,8152=>600,8153=>600,8154=>600,8155=>600,8157=>600,\n8158=>600,8159=>600,8160=>600,8161=>600,8162=>600,8163=>600,8164=>600,8165=>600,8166=>600,8167=>600,\n8168=>600,8169=>600,8170=>600,8171=>600,8172=>600,8173=>600,8174=>600,8175=>600,8178=>600,8179=>600,\n8180=>600,8182=>600,8183=>600,8184=>600,8185=>600,8186=>600,8187=>600,8188=>600,8189=>600,8190=>600,\n8192=>600,8193=>600,8194=>600,8195=>600,8196=>600,8197=>600,8198=>600,8199=>600,8200=>600,8201=>600,\n8202=>600,8203=>600,8204=>0,8205=>0,8206=>0,8207=>0,8208=>600,8209=>600,8210=>600,8213=>600,\n8214=>600,8215=>600,8219=>600,8223=>600,8227=>600,8228=>600,8229=>600,8231=>600,8232=>600,8233=>600,\n8234=>600,8235=>600,8236=>600,8237=>600,8238=>600,8239=>600,8241=>600,8242=>600,8243=>600,8244=>600,\n8245=>600,8246=>600,8247=>600,8248=>600,8251=>600,8252=>600,8253=>600,8254=>600,8255=>600,8256=>600,\n8257=>600,8258=>600,8259=>600,8260=>600,8261=>600,8262=>600,8263=>600,8264=>600,8265=>600,8266=>600,\n8267=>600,8268=>600,8269=>600,8270=>600,8271=>600,8272=>600,8273=>600,8274=>600,8275=>600,8276=>600,\n8277=>600,8278=>600,8279=>600,8280=>600,8281=>600,8282=>600,8283=>600,8284=>600,8285=>600,8286=>600,\n8287=>600,8288=>600,8289=>600,8290=>600,8291=>600,8292=>600,8298=>600,8299=>600,8300=>600,8301=>600,\n8302=>600,8303=>600,8304=>600,8305=>600,8308=>600,8309=>600,8310=>600,8311=>600,8312=>600,8313=>600,\n8314=>600,8315=>600,8316=>600,8317=>600,8318=>600,8319=>600,8320=>600,8321=>600,8322=>600,8323=>600,\n8324=>600,8325=>600,8326=>600,8327=>600,8328=>600,8329=>600,8330=>600,8331=>600,8332=>600,8333=>600,\n8334=>600,8336=>600,8337=>600,8338=>600,8339=>600,8340=>600,8355=>600,8356=>600,8359=>600,8362=>600,\n8373=>600,8448=>600,8449=>600,8450=>600,8451=>600,8453=>600,8454=>600,8455=>600,8457=>600,8461=>600,\n8464=>600,8465=>600,8466=>600,8467=>600,8468=>600,8469=>600,8470=>600,8471=>600,8472=>600,8473=>600,\n8474=>600,8476=>600,8477=>600,8478=>600,8481=>600,8484=>600,8486=>600,8487=>600,8489=>600,8490=>600,\n8491=>600,8498=>600,8501=>600,8502=>600,8503=>600,8504=>600,8506=>600,8507=>600,8523=>600,8525=>600,\n8526=>600,8531=>600,8532=>600,8533=>600,8534=>600,8535=>600,8536=>600,8537=>600,8538=>600,8539=>600,\n8540=>600,8541=>600,8542=>600,8543=>600,8544=>600,8545=>600,8546=>600,8547=>600,8548=>600,8549=>600,\n8550=>600,8551=>600,8552=>600,8553=>600,8554=>600,8555=>600,8556=>600,8557=>600,8558=>600,8559=>600,\n8560=>600,8561=>600,8562=>600,8563=>600,8564=>600,8565=>600,8566=>600,8567=>600,8568=>600,8569=>600,\n8570=>600,8571=>600,8572=>600,8573=>600,8574=>600,8575=>600,8592=>600,8593=>600,8594=>600,8595=>600,\n8596=>600,8597=>600,8598=>600,8599=>600,8600=>600,8601=>600,8616=>600,8704=>600,8706=>600,8707=>600,\n8709=>600,8710=>600,8711=>600,8712=>600,8713=>600,8715=>600,8716=>600,8721=>600,8722=>600,8723=>600,\n8725=>600,8729=>600,8730=>600,8733=>600,8734=>600,8745=>600,8746=>600,8747=>600,8756=>600,8764=>600,\n8769=>600,8770=>600,8773=>600,8776=>600,8800=>600,8801=>600,8804=>600,8805=>600,8834=>600,8835=>600,\n8836=>600,8837=>600,8838=>600,8839=>600,9001=>600,9002=>600,9251=>600,9674=>600,9824=>600,9825=>600,\n9826=>600,9827=>600,9828=>600,9829=>600,9830=>600,9831=>600,9833=>600,9834=>600,9835=>600,9836=>600,\n9837=>600,9838=>600,9839=>600,64256=>600,64257=>600,64258=>600,64285=>600,64286=>600,64287=>600,64288=>600,\n64289=>600,64290=>600,64291=>600,64292=>600,64293=>600,64294=>600,64295=>600,64296=>600,64297=>600,64298=>600,\n64299=>600,64300=>600,64301=>600,64302=>600,64303=>600,64304=>600,64305=>600,64306=>600,64307=>600,64308=>600,\n64309=>600,64310=>600,64312=>600,64313=>600,64314=>600,64315=>600,64316=>600,64318=>600,64320=>600,64321=>600,\n64323=>600,64324=>600,64326=>600,64327=>600,64328=>600,64329=>600,64330=>600,64331=>600,64332=>600,64333=>600,\n64334=>600,64335=>600,65533=>600);\n$enc='';\n$diff='';\n$file='freemonoi.z';\n$ctg='freemonoi.ctg.z';\n$originalsize=196732;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/freesans.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='FreeSans';\n$desc=array('Ascent'=>1000,'Descent'=>-300,'CapHeight'=>22,'Flags'=>32,'FontBBox'=>'[-958 -550 1632 1050]','ItalicAngle'=>0,'StemV'=>70,'MissingWidth'=>600);\n$up=-176;\n$ut=50;\n$dw=600;\n$cw=array(\n32=>278,33=>278,34=>355,35=>556,36=>556,37=>889,38=>667,39=>191,40=>333,41=>333,\n42=>389,43=>584,44=>278,45=>333,46=>278,47=>278,48=>556,49=>556,50=>556,51=>556,\n52=>556,53=>556,54=>556,55=>556,56=>556,57=>556,58=>278,59=>278,60=>584,61=>584,\n62=>584,63=>556,64=>1015,65=>667,66=>667,67=>722,68=>722,69=>667,70=>611,71=>778,\n72=>722,73=>278,74=>500,75=>667,76=>556,77=>833,78=>722,79=>778,80=>667,81=>778,\n82=>722,83=>667,84=>611,85=>722,86=>667,87=>944,88=>667,89=>667,90=>611,91=>278,\n92=>278,93=>277,94=>469,95=>556,96=>333,97=>556,98=>556,99=>500,100=>556,101=>556,\n102=>278,103=>556,104=>556,105=>222,106=>222,107=>500,108=>222,109=>833,110=>556,111=>556,\n112=>556,113=>556,114=>333,115=>500,116=>278,117=>556,118=>500,119=>722,120=>500,121=>500,\n122=>500,123=>334,124=>260,125=>334,126=>584,8364=>655,8218=>222,402=>278,8222=>333,8230=>1000,\n8224=>556,8225=>556,710=>333,8240=>1000,352=>667,8249=>250,338=>1000,381=>611,8216=>222,8217=>221,\n8220=>333,8221=>333,8226=>350,8211=>556,8212=>1000,732=>333,8482=>1000,353=>500,8250=>250,339=>944,\n382=>500,376=>667,160=>278,161=>278,162=>556,163=>556,164=>556,165=>556,166=>260,167=>556,\n168=>333,169=>737,170=>370,171=>448,172=>584,173=>333,174=>737,175=>333,176=>606,177=>584,\n178=>350,179=>350,180=>333,181=>556,182=>537,183=>278,184=>333,185=>350,186=>365,187=>448,\n188=>869,189=>869,190=>869,191=>556,192=>667,193=>667,194=>667,195=>667,196=>667,197=>667,\n198=>1000,199=>722,200=>667,201=>667,202=>667,203=>667,204=>278,205=>278,206=>278,207=>278,\n208=>722,209=>722,210=>778,211=>778,212=>778,213=>778,214=>778,215=>584,216=>778,217=>722,\n218=>722,219=>722,220=>722,221=>667,222=>666,223=>611,224=>556,225=>556,226=>556,227=>556,\n228=>556,229=>556,230=>889,231=>500,232=>556,233=>556,234=>556,235=>556,236=>278,237=>278,\n238=>278,239=>278,240=>556,241=>556,242=>556,243=>556,244=>556,245=>556,246=>556,247=>584,\n248=>611,249=>556,250=>556,251=>556,252=>556,253=>500,254=>555,255=>500,256=>667,257=>556,\n258=>667,259=>556,260=>667,261=>556,262=>722,263=>500,264=>722,265=>500,266=>722,267=>500,\n268=>722,269=>500,270=>722,271=>722,272=>722,273=>556,274=>667,275=>556,276=>667,277=>556,\n278=>667,279=>556,280=>667,281=>556,282=>667,283=>556,284=>778,285=>556,286=>778,287=>556,\n288=>778,289=>556,290=>778,291=>556,292=>722,293=>556,294=>722,295=>556,296=>278,297=>278,\n298=>278,299=>278,300=>278,301=>278,302=>278,303=>222,304=>278,305=>278,306=>700,307=>374,\n308=>500,309=>222,310=>667,311=>500,312=>500,313=>556,314=>222,315=>556,316=>222,317=>556,\n318=>387,319=>556,320=>500,321=>556,322=>222,323=>722,324=>556,325=>722,326=>556,327=>722,\n328=>556,329=>722,330=>722,331=>556,332=>778,333=>556,334=>778,335=>556,336=>778,337=>556,\n340=>722,341=>333,342=>722,343=>333,344=>722,345=>333,346=>667,347=>500,348=>667,349=>500,\n350=>667,351=>500,354=>611,355=>278,356=>611,357=>443,358=>611,359=>278,360=>722,361=>556,\n362=>722,363=>556,364=>722,365=>556,366=>722,367=>556,368=>722,369=>556,370=>722,371=>556,\n372=>944,373=>722,374=>667,375=>500,377=>611,378=>500,379=>611,380=>500,383=>278,384=>556,\n385=>854,386=>668,387=>556,388=>667,389=>556,390=>722,391=>722,392=>500,393=>722,394=>899,\n395=>667,396=>556,397=>564,398=>667,399=>722,400=>667,401=>611,403=>778,404=>667,405=>889,\n406=>278,407=>333,408=>667,409=>500,410=>333,411=>560,412=>833,413=>722,414=>556,415=>778,\n416=>788,417=>565,418=>944,419=>722,420=>842,421=>556,422=>666,423=>667,424=>500,425=>611,\n426=>333,427=>278,428=>611,429=>278,430=>611,431=>776,432=>624,433=>778,434=>722,435=>722,\n436=>556,437=>611,438=>500,439=>611,440=>611,441=>500,442=>500,443=>556,446=>556,447=>556,\n448=>260,449=>370,450=>584,451=>278,452=>1311,453=>1208,454=>1056,455=>1056,456=>778,457=>444,\n458=>1158,459=>944,460=>778,461=>667,462=>556,463=>278,464=>278,465=>778,466=>556,467=>722,\n468=>556,469=>722,470=>556,471=>722,472=>556,473=>722,474=>556,475=>722,476=>556,477=>556,\n478=>667,479=>556,480=>667,481=>556,482=>1000,483=>889,484=>778,485=>556,486=>778,487=>556,\n488=>667,489=>500,490=>778,491=>556,492=>778,493=>556,494=>611,495=>500,496=>222,497=>1333,\n498=>1222,499=>1056,500=>778,501=>556,503=>630,504=>722,505=>556,506=>667,507=>556,508=>1000,\n509=>889,510=>778,511=>611,512=>667,513=>556,514=>667,515=>556,516=>667,517=>556,518=>667,\n519=>556,520=>278,521=>278,522=>278,523=>278,524=>778,525=>556,526=>778,527=>556,528=>722,\n529=>333,530=>722,531=>333,532=>722,533=>556,534=>722,535=>556,536=>667,537=>500,538=>611,\n539=>278,540=>521,541=>393,542=>722,543=>556,548=>611,549=>500,550=>667,551=>556,552=>667,\n553=>556,554=>778,555=>556,556=>778,557=>556,558=>778,559=>556,560=>778,561=>556,562=>667,\n563=>500,567=>222,592=>556,593=>556,594=>556,595=>556,596=>500,597=>500,598=>556,599=>556,\n600=>556,601=>556,602=>804,603=>500,604=>499,605=>742,606=>500,607=>222,608=>556,609=>556,\n610=>546,611=>500,612=>556,613=>556,614=>556,615=>556,616=>222,617=>222,618=>278,619=>473,\n620=>427,621=>222,622=>611,623=>833,624=>833,625=>833,626=>556,627=>556,628=>567,629=>556,\n630=>778,631=>722,632=>741,633=>333,634=>333,635=>333,636=>333,637=>333,638=>384,639=>369,\n640=>546,641=>546,642=>500,643=>278,644=>278,645=>278,646=>444,647=>278,648=>278,649=>556,\n650=>626,651=>539,652=>500,653=>722,654=>500,655=>556,656=>500,657=>500,658=>500,659=>552,\n660=>556,661=>556,662=>556,663=>722,664=>778,665=>506,666=>500,667=>546,668=>558,669=>444,\n670=>500,671=>430,672=>556,673=>556,674=>556,675=>944,676=>944,677=>944,678=>689,679=>506,\n680=>764,681=>766,682=>660,683=>577,684=>530,685=>486,686=>565,687=>621,688=>333,689=>333,\n690=>167,691=>236,692=>236,693=>276,694=>359,695=>500,696=>330,697=>278,698=>454,699=>278,\n700=>278,701=>278,702=>333,703=>333,704=>333,705=>333,706=>333,707=>333,708=>333,709=>333,\n711=>333,712=>333,713=>333,714=>333,715=>333,716=>272,717=>333,718=>333,719=>333,720=>333,\n721=>333,722=>333,723=>333,724=>333,725=>333,726=>333,727=>333,728=>333,729=>333,730=>333,\n731=>333,733=>333,734=>333,735=>510,736=>333,737=>186,738=>333,739=>333,740=>334,741=>526,\n742=>526,743=>526,744=>526,745=>526,746=>519,747=>519,748=>333,749=>333,750=>333,751=>333,\n752=>333,753=>333,754=>333,755=>327,756=>261,757=>437,758=>437,759=>333,760=>278,761=>200,\n762=>200,763=>200,764=>200,765=>333,766=>333,767=>333,768=>0,769=>0,770=>0,771=>0,\n772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,\n782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,\n792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,\n802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,\n812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,\n822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,\n832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,\n842=>0,843=>0,844=>0,845=>0,846=>0,847=>0,848=>0,849=>0,850=>0,851=>0,\n852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,859=>0,860=>0,861=>0,\n862=>0,863=>0,864=>0,865=>0,866=>0,867=>0,868=>0,869=>0,870=>0,871=>0,\n872=>0,873=>0,874=>0,875=>0,876=>0,877=>0,878=>0,879=>0,884=>278,885=>199,\n890=>332,894=>278,900=>333,901=>333,902=>667,903=>275,904=>786,905=>828,906=>369,908=>833,\n910=>845,911=>778,912=>286,913=>667,914=>667,915=>582,916=>778,917=>667,918=>628,919=>722,\n920=>778,921=>278,922=>667,923=>667,924=>833,925=>722,926=>630,927=>778,928=>722,929=>667,\n931=>628,932=>611,933=>667,934=>717,935=>667,936=>745,937=>778,938=>278,939=>667,940=>608,\n941=>528,942=>548,943=>307,944=>538,945=>596,946=>542,947=>531,948=>564,949=>512,950=>455,\n951=>548,952=>525,953=>286,954=>510,955=>551,956=>540,957=>500,958=>470,959=>546,960=>619,\n961=>569,962=>547,963=>620,964=>492,965=>538,966=>741,967=>571,968=>662,969=>740,970=>286,\n971=>538,972=>546,973=>538,974=>740,977=>580,978=>742,979=>845,980=>620,981=>741,982=>740,\n983=>556,1008=>556,1009=>566,1012=>778,1013=>328,1024=>667,1025=>657,1026=>766,1027=>582,1028=>722,\n1029=>667,1030=>278,1031=>278,1032=>500,1033=>1080,1034=>1014,1035=>766,1036=>628,1037=>730,1038=>613,\n1039=>722,1040=>666,1041=>668,1042=>668,1043=>582,1044=>812,1045=>657,1046=>905,1047=>667,1048=>730,\n1049=>730,1050=>632,1051=>674,1052=>846,1053=>721,1054=>796,1055=>721,1056=>654,1057=>722,1058=>611,\n1059=>613,1060=>861,1061=>657,1062=>742,1063=>626,1064=>830,1065=>851,1066=>841,1067=>874,1068=>670,\n1069=>717,1070=>1001,1071=>686,1072=>552,1073=>550,1074=>506,1075=>404,1076=>602,1077=>547,1078=>755,\n1079=>499,1080=>567,1081=>567,1082=>489,1083=>517,1084=>618,1085=>558,1086=>550,1087=>557,1088=>577,\n1089=>520,1090=>444,1091=>468,1092=>865,1093=>466,1094=>578,1095=>498,1096=>692,1097=>712,1098=>664,\n1099=>690,1100=>521,1101=>520,1102=>759,1103=>543,1104=>549,1105=>549,1106=>577,1107=>404,1108=>519,\n1109=>502,1110=>224,1111=>278,1112=>223,1113=>813,1114=>853,1115=>577,1116=>489,1117=>567,1118=>468,\n1119=>558,1120=>942,1121=>693,1136=>762,1137=>662,1138=>800,1139=>550,1148=>942,1149=>693,1150=>942,\n1151=>693,1154=>468,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>0,1161=>0,1162=>763,\n1163=>583,1164=>689,1165=>526,1166=>652,1167=>572,1168=>601,1169=>397,1170=>589,1171=>392,1172=>591,\n1173=>475,1174=>927,1175=>830,1176=>661,1177=>493,1178=>658,1179=>510,1180=>675,1181=>519,1182=>684,\n1183=>514,1184=>839,1185=>653,1186=>740,1187=>570,1188=>987,1189=>714,1190=>1058,1191=>808,1192=>722,\n1193=>510,1194=>722,1195=>516,1196=>611,1197=>402,1198=>668,1199=>578,1200=>668,1201=>588,1202=>664,\n1203=>488,1204=>936,1205=>679,1206=>638,1207=>521,1208=>630,1209=>498,1210=>630,1211=>498,1212=>927,\n1213=>699,1214=>919,1215=>703,1216=>254,1217=>905,1218=>755,1219=>668,1220=>512,1221=>696,1222=>524,\n1223=>721,1224=>558,1225=>744,1226=>571,1227=>630,1228=>498,1229=>869,1230=>631,1231=>254,1232=>666,\n1233=>552,1234=>666,1235=>552,1236=>1000,1237=>879,1238=>657,1239=>547,1240=>722,1241=>543,1242=>722,\n1243=>543,1244=>905,1245=>755,1246=>667,1247=>499,1248=>611,1249=>540,1250=>730,1251=>567,1252=>730,\n1253=>567,1254=>796,1255=>550,1256=>800,1257=>550,1258=>800,1259=>550,1260=>717,1261=>520,1262=>613,\n1263=>468,1264=>613,1265=>468,1266=>613,1267=>468,1268=>626,1269=>498,1270=>582,1271=>395,1272=>874,\n1273=>690,1296=>667,1297=>491,1298=>665,1299=>509,1306=>778,1307=>575,1308=>934,1309=>712,1310=>627,\n1311=>489,1329=>720,1330=>696,1331=>750,1332=>725,1333=>699,1334=>751,1335=>446,1336=>703,1337=>790,\n1338=>656,1339=>697,1340=>390,1341=>852,1342=>791,1343=>698,1344=>585,1345=>656,1346=>651,1347=>658,\n1348=>759,1349=>595,1350=>772,1351=>603,1352=>703,1353=>648,1354=>698,1355=>744,1356=>738,1357=>703,\n1358=>739,1359=>660,1360=>693,1361=>623,1362=>385,1363=>788,1364=>632,1365=>775,1366=>714,1369=>333,\n1370=>222,1371=>200,1372=>333,1373=>333,1374=>333,1375=>333,1377=>833,1378=>551,1379=>572,1380=>569,\n1381=>546,1382=>581,1383=>353,1384=>551,1385=>568,1386=>569,1387=>552,1388=>276,1389=>795,1390=>535,\n1391=>553,1392=>537,1393=>512,1394=>568,1395=>552,1396=>531,1397=>249,1398=>527,1399=>405,1400=>551,\n1401=>390,1402=>833,1403=>509,1404=>523,1405=>545,1406=>584,1407=>879,1408=>552,1409=>552,1410=>301,\n1411=>884,1412=>578,1413=>556,1414=>668,1415=>544,1417=>278,1418=>333,1456=>0,1457=>0,1458=>0,\n1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1467=>0,1468=>0,1469=>0,\n1470=>488,1471=>0,1472=>212,1473=>0,1474=>0,1475=>278,1476=>0,1488=>640,1489=>591,1490=>466,\n1491=>598,1492=>622,1493=>212,1494=>351,1495=>623,1496=>608,1497=>200,1498=>526,1499=>550,1500=>600,\n1501=>623,1502=>621,1503=>212,1504=>378,1505=>607,1506=>587,1507=>575,1508=>568,1509=>540,1510=>590,\n1511=>606,1512=>547,1513=>776,1514=>687,1520=>424,1521=>412,1522=>400,1523=>184,1524=>344,1792=>600,\n1793=>201,1794=>201,1795=>201,1796=>201,1797=>500,1798=>500,1799=>500,1800=>370,1801=>370,1802=>574,\n1803=>574,1804=>645,1805=>574,1807=>0,1808=>452,1809=>452,1810=>574,1811=>645,1812=>645,1813=>509,\n1814=>509,1815=>682,1816=>585,1817=>404,1818=>627,1819=>718,1820=>718,1821=>484,1822=>682,1823=>600,\n1824=>660,1825=>682,1826=>538,1827=>718,1828=>718,1829=>718,1830=>574,1831=>574,1832=>638,1833=>585,\n1834=>509,1835=>682,1836=>682,1840=>0,1841=>0,1842=>0,1843=>0,1844=>0,1845=>0,1846=>0,\n1847=>0,1848=>0,1849=>0,1850=>0,1851=>0,1852=>0,1853=>0,1854=>0,1855=>0,1856=>0,\n1857=>0,1858=>0,1859=>0,1860=>0,1861=>0,1862=>0,1863=>0,1864=>0,1865=>0,1866=>0,\n2305=>6,2306=>0,2307=>305,2308=>717,2309=>717,2310=>829,2311=>463,2312=>463,2313=>581,2314=>803,\n2315=>920,2316=>639,2317=>430,2318=>430,2319=>430,2320=>430,2321=>856,2322=>828,2323=>837,2324=>856,\n2325=>749,2326=>779,2327=>522,2328=>587,2329=>650,2330=>619,2331=>641,2332=>703,2333=>691,2334=>677,\n2335=>568,2336=>529,2337=>611,2338=>536,2339=>607,2340=>564,2341=>659,2342=>500,2343=>591,2344=>521,\n2345=>568,2346=>477,2347=>728,2348=>490,2349=>577,2350=>517,2351=>554,2352=>433,2353=>433,2354=>656,\n2355=>660,2356=>660,2357=>490,2358=>645,2359=>477,2360=>666,2361=>484,2364=>6,2365=>442,2366=>211,\n2367=>211,2368=>211,2369=>6,2370=>3,2371=>6,2372=>0,2373=>6,2374=>84,2375=>6,2376=>6,\n2377=>224,2378=>234,2379=>211,2380=>211,2381=>6,2384=>839,2385=>15,2386=>0,2387=>9,2388=>9,\n2392=>750,2393=>779,2394=>522,2395=>703,2396=>613,2397=>536,2398=>728,2399=>554,2400=>899,2401=>625,\n2402=>625,2403=>625,2404=>674,2405=>674,2406=>575,2407=>575,2408=>575,2409=>575,2410=>575,2411=>575,\n2412=>575,2413=>575,2414=>575,2415=>575,2416=>365,2417=>387,2418=>717,2433=>0,2434=>300,2435=>264,\n2437=>594,2438=>790,2439=>469,2440=>513,2441=>520,2442=>549,2443=>594,2444=>481,2447=>580,2448=>627,\n2451=>540,2452=>613,2453=>570,2454=>467,2455=>471,2456=>428,2457=>483,2458=>408,2459=>509,2460=>591,\n2461=>563,2462=>771,2463=>381,2464=>404,2465=>522,2466=>408,2467=>450,2468=>543,2469=>477,2470=>418,\n2471=>433,2472=>445,2474=>499,2475=>584,2476=>377,2477=>555,2478=>448,2479=>423,2480=>390,2482=>498,\n2486=>498,2487=>425,2488=>495,2489=>440,2492=>22,2493=>440,2494=>193,2495=>189,2496=>180,2497=>0,\n2498=>0,2499=>0,2500=>0,2503=>252,2504=>243,2507=>889,2508=>865,2509=>0,2510=>356,2519=>219,\n2524=>523,2525=>408,2527=>428,2528=>594,2529=>481,2530=>0,2531=>0,2534=>500,2535=>437,2536=>479,\n2537=>530,2538=>497,2539=>500,2540=>482,2541=>503,2542=>517,2543=>481,2544=>377,2545=>377,2546=>429,\n2547=>383,2548=>429,2549=>478,2550=>545,2551=>158,2552=>365,2553=>280,2554=>357,2561=>0,2562=>0,\n2563=>351,2565=>860,2566=>1088,2567=>869,2568=>928,2569=>723,2570=>723,2575=>665,2576=>857,2579=>716,\n2580=>858,2581=>682,2582=>634,2583=>696,2584=>744,2585=>649,2586=>674,2587=>656,2588=>653,2589=>629,\n2590=>639,2591=>641,2592=>657,2593=>650,2594=>653,2595=>651,2596=>640,2597=>634,2598=>662,2599=>630,\n2600=>625,2602=>645,2603=>653,2604=>624,2605=>613,2606=>658,2607=>734,2608=>620,2610=>676,2611=>719,\n2613=>626,2614=>666,2616=>666,2617=>614,2620=>0,2622=>286,2623=>322,2624=>301,2625=>0,2626=>0,\n2631=>0,2632=>0,2635=>0,2636=>0,2637=>0,2649=>636,2650=>762,2651=>652,2652=>653,2654=>656,\n2662=>672,2663=>543,2664=>622,2665=>622,2666=>576,2667=>589,2668=>509,2669=>645,2670=>661,2671=>655,\n2672=>0,2673=>0,2674=>666,2675=>726,2676=>1217,2689=>22,2690=>23,2691=>0,2693=>775,2694=>979,\n2695=>588,2696=>563,2697=>525,2698=>724,2699=>942,2701=>775,2703=>775,2704=>775,2705=>979,2707=>979,\n2708=>979,2709=>610,2710=>706,2711=>623,2712=>610,2713=>601,2714=>614,2715=>642,2716=>684,2717=>634,\n2718=>644,2719=>509,2720=>541,2721=>539,2722=>524,2723=>657,2724=>547,2725=>616,2726=>494,2727=>601,\n2728=>627,2730=>524,2731=>620,2732=>691,2733=>687,2734=>468,2735=>590,2736=>509,2738=>571,2739=>687,\n2741=>526,2742=>620,2743=>575,2744=>620,2745=>549,2748=>53,2749=>415,2750=>241,2751=>186,2752=>217,\n2753=>32,2754=>21,2755=>38,2756=>27,2757=>45,2759=>41,2760=>46,2761=>207,2763=>190,2764=>182,\n2765=>16,2768=>962,2784=>949,2790=>479,2791=>502,2792=>484,2793=>471,2794=>501,2795=>527,2796=>462,\n2797=>524,2798=>454,2799=>495,2801=>752,2946=>479,2947=>893,2949=>1018,2950=>1170,2951=>916,2952=>676,\n2953=>836,2954=>1225,2958=>744,2959=>744,2960=>848,2962=>813,2963=>813,2964=>813,2965=>688,2969=>744,\n2970=>676,2972=>848,2974=>984,2975=>777,2979=>1338,2980=>664,2984=>561,2985=>1029,2986=>607,2990=>697,\n2991=>697,2992=>434,2993=>617,2994=>869,2995=>859,2996=>697,2997=>869,2999=>1145,3000=>1064,3001=>1316,\n3006=>424,3007=>125,3008=>596,3009=>539,3014=>596,3015=>650,3016=>973,3018=>1286,3019=>1286,3020=>1706,\n3021=>333,3031=>859,3050=>778,3051=>881,3052=>876,3053=>648,3057=>744,4256=>587,4257=>620,4258=>642,\n4259=>815,4260=>600,4261=>595,4262=>799,4263=>893,4264=>622,4265=>597,4266=>939,4267=>602,4268=>603,\n4269=>790,4270=>587,4271=>623,4272=>799,4273=>601,4274=>792,4275=>724,4276=>847,4277=>599,4278=>812,\n4279=>603,4280=>653,4281=>590,4282=>754,4283=>596,4284=>653,4285=>651,4286=>596,4287=>888,4288=>593,\n4304=>436,4305=>491,4306=>528,4307=>692,4308=>447,4309=>447,4310=>628,4311=>734,4312=>449,4313=>445,\n4314=>843,4315=>449,4316=>449,4317=>682,4318=>449,4319=>480,4320=>682,4321=>468,4322=>710,4323=>623,\n4324=>697,4325=>447,4326=>702,4327=>447,4328=>470,4329=>440,4330=>632,4331=>449,4332=>470,4333=>536,\n4334=>449,4335=>656,4336=>474,4337=>630,4338=>394,4339=>419,4340=>422,4341=>436,4345=>528,4347=>515,\n7680=>667,7681=>556,7682=>667,7683=>556,7684=>667,7685=>556,7686=>667,7687=>556,7688=>722,7689=>500,\n7690=>722,7691=>556,7692=>722,7693=>556,7694=>722,7695=>556,7696=>722,7697=>556,7698=>722,7699=>556,\n7700=>667,7701=>556,7702=>667,7703=>556,7704=>667,7705=>556,7706=>667,7707=>556,7708=>667,7709=>556,\n7710=>611,7711=>278,7712=>778,7713=>556,7714=>722,7715=>556,7716=>722,7717=>556,7718=>722,7719=>556,\n7720=>722,7721=>556,7722=>722,7723=>556,7724=>278,7725=>222,7726=>278,7727=>278,7728=>667,7729=>500,\n7730=>667,7731=>500,7732=>667,7733=>500,7734=>556,7735=>222,7736=>556,7737=>222,7738=>556,7739=>222,\n7740=>556,7741=>222,7742=>833,7743=>833,7744=>833,7745=>833,7746=>833,7747=>833,7748=>722,7749=>556,\n7750=>722,7751=>556,7752=>722,7753=>556,7754=>722,7755=>556,7756=>778,7757=>556,7758=>778,7759=>556,\n7760=>778,7761=>556,7762=>778,7763=>556,7764=>667,7765=>556,7766=>667,7767=>556,7768=>722,7769=>333,\n7770=>722,7771=>333,7772=>722,7773=>333,7774=>722,7775=>333,7776=>667,7777=>500,7778=>667,7779=>500,\n7780=>667,7781=>500,7782=>667,7783=>500,7784=>667,7785=>500,7786=>611,7787=>278,7788=>611,7789=>278,\n7790=>611,7791=>278,7792=>611,7793=>278,7794=>722,7795=>556,7796=>722,7797=>556,7798=>722,7799=>556,\n7800=>722,7801=>556,7802=>722,7803=>556,7804=>667,7805=>500,7806=>667,7807=>500,7808=>944,7809=>722,\n7810=>944,7811=>722,7812=>944,7813=>722,7814=>944,7815=>722,7816=>944,7817=>722,7818=>667,7819=>500,\n7820=>667,7821=>500,7822=>667,7823=>500,7824=>611,7825=>500,7826=>611,7827=>500,7828=>611,7829=>500,\n7830=>556,7831=>278,7832=>722,7833=>500,7834=>555,7835=>278,7840=>667,7841=>556,7842=>667,7843=>556,\n7844=>667,7845=>556,7846=>667,7847=>556,7848=>667,7849=>556,7850=>667,7851=>556,7852=>667,7853=>556,\n7854=>667,7855=>556,7856=>667,7857=>556,7858=>667,7859=>556,7860=>667,7861=>556,7862=>667,7863=>556,\n7864=>667,7865=>556,7866=>667,7867=>556,7868=>667,7869=>556,7870=>667,7871=>556,7872=>667,7873=>556,\n7874=>667,7875=>556,7876=>667,7877=>556,7878=>667,7879=>556,7880=>278,7881=>278,7882=>278,7883=>222,\n7884=>778,7885=>556,7886=>778,7887=>556,7888=>778,7889=>556,7890=>778,7891=>556,7892=>778,7893=>556,\n7894=>778,7895=>556,7896=>778,7897=>556,7898=>788,7899=>565,7900=>788,7901=>565,7902=>788,7903=>565,\n7904=>788,7905=>565,7906=>788,7907=>565,7908=>722,7909=>556,7910=>722,7911=>556,7912=>776,7913=>624,\n7914=>776,7915=>624,7916=>776,7917=>624,7918=>776,7919=>624,7920=>776,7921=>624,7922=>667,7923=>500,\n7924=>667,7925=>500,7926=>667,7927=>500,7928=>667,7929=>500,7936=>596,7937=>596,7938=>596,7939=>596,\n7940=>596,7941=>596,7942=>596,7943=>596,7944=>667,7945=>667,7946=>742,7947=>756,7948=>692,7949=>699,\n7950=>673,7951=>667,7952=>512,7953=>512,7954=>512,7955=>512,7956=>512,7957=>512,7960=>730,7961=>714,\n7962=>900,7963=>882,7964=>867,7965=>879,7968=>548,7969=>548,7970=>548,7971=>548,7972=>548,7973=>548,\n7974=>548,7975=>548,7976=>772,7977=>778,7978=>945,7979=>947,7980=>943,7981=>946,7982=>853,7983=>853,\n7984=>286,7985=>286,7986=>286,7987=>286,7988=>286,7989=>286,7990=>286,7991=>286,7992=>322,7993=>321,\n7994=>482,7995=>485,7996=>477,7997=>484,7998=>394,7999=>390,8000=>546,8001=>546,8002=>546,8003=>546,\n8004=>546,8005=>546,8008=>775,8009=>784,8010=>990,8011=>987,8012=>887,8013=>897,8016=>538,8017=>538,\n8018=>538,8019=>538,8020=>538,8021=>538,8022=>538,8023=>538,8025=>747,8027=>915,8029=>971,8031=>863,\n8032=>740,8033=>740,8034=>740,8035=>740,8036=>740,8037=>740,8038=>740,8039=>740,8040=>769,8041=>774,\n8042=>972,8043=>970,8044=>879,8045=>918,8046=>901,8047=>901,8048=>596,8049=>596,8050=>512,8051=>512,\n8052=>548,8053=>548,8054=>286,8055=>286,8056=>546,8057=>546,8058=>538,8059=>538,8060=>740,8061=>740,\n8064=>596,8065=>596,8066=>596,8067=>596,8068=>596,8069=>596,8070=>596,8071=>596,8072=>830,8073=>828,\n8074=>916,8075=>916,8076=>853,8077=>860,8078=>835,8079=>827,8080=>548,8081=>548,8082=>548,8083=>548,\n8084=>548,8085=>548,8086=>548,8087=>548,8088=>928,8089=>931,8090=>1104,8091=>1109,8092=>1099,8093=>1102,\n8094=>1009,8095=>1012,8096=>740,8097=>740,8098=>740,8099=>740,8100=>740,8101=>740,8102=>740,8103=>740,\n8104=>934,8105=>934,8106=>1130,8107=>1128,8108=>1045,8109=>1077,8110=>1062,8111=>1065,8112=>596,8113=>596,\n8114=>596,8115=>596,8116=>596,8118=>596,8119=>596,8120=>667,8121=>667,8122=>667,8123=>667,8124=>832,\n8125=>333,8126=>200,8127=>333,8128=>333,8129=>333,8130=>548,8131=>548,8132=>548,8134=>548,8135=>548,\n8136=>833,8137=>776,8138=>944,8139=>896,8140=>875,8141=>400,8142=>400,8143=>333,8144=>286,8145=>286,\n8146=>286,8147=>286,8150=>286,8151=>286,8152=>278,8153=>278,8154=>385,8155=>376,8157=>400,8158=>400,\n8159=>333,8160=>538,8161=>538,8162=>538,8163=>538,8164=>569,8165=>569,8166=>538,8167=>514,8168=>667,\n8169=>667,8170=>817,8171=>827,8172=>741,8173=>393,8174=>393,8175=>333,8178=>740,8179=>740,8180=>740,\n8182=>740,8183=>740,8184=>833,8185=>833,8186=>848,8187=>814,8188=>939,8189=>333,8190=>333,8192=>500,\n8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>556,8200=>278,8201=>200,8202=>100,\n8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,8210=>556,8213=>1000,8214=>312,\n8215=>566,8219=>221,8223=>333,8227=>350,8228=>278,8229=>666,8231=>278,8232=>0,8233=>0,8234=>0,\n8235=>0,8236=>0,8237=>0,8238=>0,8239=>500,8241=>1360,8242=>278,8243=>469,8244=>680,8245=>278,\n8246=>469,8247=>680,8248=>376,8251=>622,8252=>556,8253=>556,8254=>556,8255=>658,8256=>658,8257=>438,\n8258=>840,8259=>400,8260=>167,8261=>334,8262=>334,8263=>1112,8264=>834,8265=>834,8266=>556,8267=>537,\n8268=>537,8269=>537,8270=>389,8271=>278,8272=>658,8273=>389,8274=>634,8275=>500,8276=>658,8277=>787,\n8278=>515,8279=>855,8280=>722,8281=>725,8282=>224,8283=>722,8284=>604,8285=>224,8286=>224,8287=>0,\n8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8304=>350,8305=>350,8308=>350,8309=>350,8310=>350,\n8311=>350,8312=>350,8313=>350,8314=>350,8315=>350,8316=>350,8317=>350,8318=>350,8319=>350,8320=>350,\n8321=>350,8322=>350,8323=>350,8324=>350,8325=>350,8326=>350,8327=>350,8328=>350,8329=>350,8330=>350,\n8331=>350,8332=>350,8333=>350,8334=>350,8336=>350,8337=>349,8338=>350,8339=>350,8340=>350,8353=>615,\n8354=>601,8355=>611,8356=>556,8357=>833,8358=>682,8359=>1317,8360=>1202,8361=>879,8362=>869,8363=>538,\n8365=>667,8366=>611,8368=>570,8369=>684,8370=>717,8371=>667,8372=>667,8373=>640,8400=>0,8401=>0,\n8402=>0,8403=>0,8406=>0,8407=>0,8411=>0,8412=>0,8413=>0,8414=>0,8415=>0,8416=>0,\n8417=>0,8421=>0,8422=>0,8423=>0,8424=>0,8425=>0,8426=>0,8427=>0,8428=>0,8429=>0,\n8430=>0,8431=>0,8432=>0,8448=>970,8449=>979,8451=>1017,8452=>556,8453=>876,8454=>922,8455=>667,\n8457=>919,8459=>969,8460=>615,8462=>556,8463=>572,8464=>809,8465=>606,8466=>874,8467=>417,8468=>747,\n8470=>934,8471=>737,8472=>600,8475=>850,8476=>699,8480=>1000,8481=>1230,8486=>778,8487=>778,8488=>512,\n8489=>286,8490=>667,8491=>667,8492=>908,8493=>623,8494=>556,8495=>444,8496=>562,8497=>895,8498=>588,\n8499=>1080,8501=>640,8502=>592,8503=>466,8504=>598,8505=>278,8506=>871,8507=>1230,8513=>778,8514=>556,\n8515=>556,8516=>667,8522=>516,8523=>655,8525=>936,8526=>482,8531=>869,8532=>869,8533=>869,8534=>869,\n8535=>869,8536=>869,8537=>869,8538=>869,8539=>869,8540=>869,8541=>869,8542=>869,8543=>869,8544=>278,\n8545=>556,8546=>834,8547=>945,8548=>667,8549=>945,8550=>1223,8551=>1501,8552=>945,8553=>667,8554=>945,\n8555=>1223,8556=>556,8557=>722,8558=>722,8559=>833,8560=>222,8561=>444,8562=>666,8563=>722,8564=>500,\n8565=>722,8566=>944,8567=>1166,8568=>722,8569=>500,8570=>722,8571=>944,8572=>222,8573=>500,8574=>556,\n8575=>833,8592=>987,8593=>603,8594=>987,8595=>603,8596=>1042,8597=>1042,8598=>800,8599=>800,8600=>800,\n8601=>800,8614=>987,8617=>987,8618=>987,8629=>658,8636=>987,8637=>987,8638=>380,8639=>393,8640=>987,\n8641=>987,8642=>380,8643=>379,8652=>987,8656=>987,8657=>603,8658=>987,8659=>603,8660=>1042,8661=>603,\n8669=>1092,8704=>667,8706=>556,8707=>667,8709=>823,8710=>711,8711=>711,8712=>584,8713=>584,8714=>584,\n8715=>584,8716=>584,8717=>713,8719=>823,8720=>823,8721=>804,8722=>584,8723=>584,8724=>584,8725=>510,\n8726=>392,8727=>584,8729=>584,8730=>542,8733=>713,8734=>713,8736=>768,8739=>200,8740=>288,8741=>312,\n8742=>340,8743=>603,8744=>603,8745=>768,8746=>768,8747=>556,8748=>796,8749=>956,8750=>556,8756=>863,\n8764=>584,8765=>584,8766=>573,8768=>244,8769=>584,8770=>584,8771=>584,8772=>584,8773=>584,8774=>584,\n8775=>584,8776=>584,8777=>584,8781=>554,8784=>584,8800=>584,8801=>584,8802=>584,8804=>584,8805=>584,\n8810=>955,8811=>955,8813=>554,8814=>584,8815=>584,8816=>584,8817=>584,8818=>584,8819=>584,8826=>584,\n8827=>584,8828=>584,8829=>584,8832=>584,8833=>584,8834=>584,8835=>584,8836=>584,8837=>584,8838=>584,\n8839=>584,8840=>584,8841=>584,8844=>768,8847=>636,8848=>636,8849=>636,8850=>636,8851=>636,8852=>636,\n8853=>768,8854=>768,8855=>768,8856=>768,8857=>768,8866=>658,8867=>658,8868=>658,8869=>658,8870=>600,\n8871=>608,8882=>636,8883=>636,8884=>636,8885=>636,8896=>744,8897=>744,8898=>764,8899=>764,8901=>278,\n8902=>471,8904=>710,8928=>584,8929=>584,8930=>636,8931=>636,8960=>823,8968=>456,8969=>455,8970=>455,\n8971=>456,8992=>556,8993=>556,8994=>658,8995=>658,9001=>329,9002=>329,9115=>384,9116=>384,9117=>384,\n9118=>384,9119=>384,9120=>384,9121=>388,9122=>388,9123=>388,9124=>388,9125=>388,9126=>388,9134=>556,\n9250=>556,9251=>500,9312=>788,9313=>788,9314=>788,9315=>788,9316=>788,9317=>788,9318=>788,9319=>788,\n9320=>788,9321=>788,9472=>1000,9473=>1000,9474=>1000,9475=>1000,9476=>1000,9477=>1000,9478=>1000,9479=>1000,\n9480=>1000,9481=>1000,9482=>1000,9483=>1000,9484=>1000,9485=>1000,9486=>1000,9487=>1000,9488=>1000,9489=>1000,\n9490=>1000,9491=>1000,9492=>1000,9493=>1000,9494=>1000,9495=>1000,9496=>1000,9497=>1000,9498=>1000,9499=>1000,\n9500=>1000,9501=>1000,9502=>1000,9503=>1000,9504=>1000,9505=>1000,9506=>1000,9507=>1000,9508=>1000,9509=>1000,\n9510=>1000,9511=>1000,9512=>1000,9513=>1000,9514=>1000,9515=>1000,9516=>1000,9517=>1000,9518=>1000,9519=>1000,\n9520=>1000,9521=>1000,9522=>1000,9523=>1000,9524=>1000,9525=>1000,9526=>1000,9527=>1000,9528=>1000,9529=>1000,\n9530=>1000,9531=>1000,9532=>1000,9533=>1000,9534=>1000,9535=>1000,9536=>1000,9537=>1000,9538=>1000,9539=>1000,\n9540=>1000,9541=>1000,9542=>1000,9543=>1000,9544=>1000,9545=>1000,9546=>1000,9547=>1000,9552=>1000,9553=>1000,\n9554=>1000,9555=>1000,9556=>1000,9557=>1000,9558=>1000,9559=>1000,9560=>1000,9561=>1000,9562=>1000,9563=>1000,\n9564=>1000,9565=>1000,9566=>1000,9567=>1000,9568=>1000,9569=>1000,9570=>1000,9571=>1000,9572=>1000,9573=>1000,\n9574=>1000,9575=>1000,9576=>1000,9577=>1000,9578=>1000,9579=>1000,9580=>1000,9600=>1000,9601=>1000,9602=>1000,\n9603=>1000,9604=>1000,9605=>1000,9606=>1000,9607=>1000,9608=>1000,9609=>1000,9610=>1000,9611=>1000,9612=>1000,\n9613=>1000,9614=>1000,9615=>1000,9616=>1000,9617=>1000,9618=>1000,9619=>1000,9620=>1000,9621=>1000,9622=>1000,\n9623=>1000,9624=>1000,9625=>1000,9626=>1000,9627=>1000,9628=>1000,9629=>1000,9630=>1000,9631=>1000,9632=>1000,\n9633=>1000,9635=>1000,9636=>1000,9637=>1000,9642=>1000,9644=>1000,9651=>892,9661=>892,9671=>788,9674=>489,\n9675=>791,9711=>882,9772=>929,9824=>626,9825=>694,9826=>595,9827=>776,9828=>626,9829=>694,9830=>595,\n9831=>776,9833=>333,9834=>555,9835=>722,9836=>722,9837=>415,9838=>377,9839=>402,10048=>1161,10752=>791,\n10753=>791,10754=>791,10755=>764,10756=>764,10761=>584,11799=>333,64256=>495,64257=>460,64258=>465,64259=>652,\n64260=>645,64261=>520,64275=>1004,64276=>1044,64277=>1042,64278=>1037,64279=>1256,64285=>200,64286=>305,64287=>400,\n64288=>587,64289=>890,64290=>848,64291=>872,64292=>800,64293=>850,64294=>873,64295=>797,64296=>937,64297=>584,\n64298=>776,64299=>776,64300=>776,64301=>776,64302=>640,64303=>640,64304=>640,64305=>591,64306=>466,64307=>598,\n64308=>622,64309=>262,64310=>351,64312=>608,64313=>270,64314=>526,64315=>550,64316=>600,64318=>621,64320=>378,\n64321=>607,64323=>575,64324=>568,64326=>590,64327=>606,64328=>547,64329=>776,64330=>687,64331=>212,64332=>591,\n64333=>550,64334=>568,64335=>640,65533=>788);\n$enc='';\n$diff='';\n$file='freesans.z';\n$ctg='freesans.ctg.z';\n$originalsize=568896;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/freesansb.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='FreeSansBold';\n$desc=array('Ascent'=>1000,'Descent'=>-300,'CapHeight'=>22,'Flags'=>32,'FontBBox'=>'[-967 -1175 1556 1639]','ItalicAngle'=>0,'StemV'=>120,'MissingWidth'=>600);\n$up=-189;\n$ut=69;\n$dw=600;\n$cw=array(\n32=>278,33=>333,34=>474,35=>556,36=>556,37=>889,38=>722,39=>238,40=>333,41=>333,\n42=>389,43=>584,44=>278,45=>333,46=>278,47=>278,48=>556,49=>556,50=>556,51=>556,\n52=>556,53=>556,54=>556,55=>556,56=>556,57=>556,58=>333,59=>333,60=>584,61=>584,\n62=>584,63=>611,64=>975,65=>722,66=>722,67=>722,68=>722,69=>667,70=>611,71=>778,\n72=>722,73=>278,74=>556,75=>722,76=>611,77=>833,78=>722,79=>778,80=>667,81=>778,\n82=>722,83=>667,84=>611,85=>722,86=>667,87=>944,88=>667,89=>667,90=>611,91=>333,\n92=>278,93=>333,94=>584,95=>556,96=>333,97=>556,98=>611,99=>556,100=>611,101=>556,\n102=>333,103=>611,104=>611,105=>278,106=>278,107=>556,108=>278,109=>889,110=>611,111=>611,\n112=>611,113=>611,114=>389,115=>556,116=>333,117=>611,118=>556,119=>778,120=>556,121=>556,\n122=>500,123=>389,124=>280,125=>389,126=>584,8364=>640,8218=>278,402=>333,8222=>500,8230=>1000,\n8224=>556,8225=>556,710=>333,8240=>1000,352=>667,8249=>333,338=>1000,381=>611,8216=>278,8217=>278,\n8220=>500,8221=>500,8226=>350,8211=>556,8212=>1000,732=>333,8482=>1000,353=>556,8250=>333,339=>944,\n382=>500,376=>667,160=>278,161=>333,162=>556,163=>556,164=>556,165=>556,166=>280,167=>556,\n168=>333,169=>737,170=>370,171=>556,172=>584,173=>333,174=>737,175=>333,176=>606,177=>584,\n178=>351,179=>351,180=>333,181=>611,182=>556,183=>278,184=>333,185=>300,186=>365,187=>556,\n188=>869,189=>869,190=>869,191=>611,192=>722,193=>722,194=>722,195=>722,196=>722,197=>722,\n198=>1000,199=>722,200=>667,201=>667,202=>667,203=>667,204=>278,205=>278,206=>278,207=>278,\n208=>722,209=>722,210=>778,211=>778,212=>778,213=>778,214=>778,215=>584,216=>778,217=>722,\n218=>722,219=>722,220=>722,221=>667,222=>667,223=>611,224=>556,225=>556,226=>556,227=>556,\n228=>556,229=>556,230=>889,231=>556,232=>556,233=>556,234=>556,235=>556,236=>278,237=>278,\n238=>278,239=>278,240=>611,241=>611,242=>611,243=>611,244=>611,245=>611,246=>611,247=>584,\n248=>611,249=>611,250=>611,251=>611,252=>611,253=>556,254=>611,255=>556,256=>722,257=>556,\n258=>722,259=>556,260=>722,261=>556,262=>722,263=>556,264=>722,265=>556,266=>722,267=>556,\n268=>722,269=>556,270=>722,271=>723,272=>722,273=>611,274=>667,275=>556,276=>667,277=>556,\n278=>667,279=>556,280=>667,281=>556,282=>667,283=>556,284=>778,285=>611,286=>778,287=>611,\n288=>778,289=>611,290=>778,291=>611,292=>722,293=>611,294=>722,295=>611,296=>278,297=>278,\n298=>278,299=>278,300=>278,301=>278,302=>278,303=>278,304=>278,305=>278,306=>808,307=>492,\n308=>556,309=>278,310=>722,311=>556,312=>559,313=>611,314=>278,315=>611,316=>278,317=>611,\n318=>362,319=>611,320=>556,321=>611,322=>278,323=>722,324=>611,325=>722,326=>611,327=>722,\n328=>611,329=>611,330=>722,331=>611,332=>778,333=>611,334=>778,335=>611,336=>778,337=>611,\n340=>722,341=>389,342=>722,343=>389,344=>722,345=>389,346=>667,347=>556,348=>667,349=>556,\n350=>667,351=>556,354=>611,355=>333,356=>611,357=>414,358=>611,359=>333,360=>722,361=>611,\n362=>722,363=>611,364=>722,365=>611,366=>722,367=>611,368=>722,369=>611,370=>722,371=>611,\n372=>944,373=>778,374=>667,375=>556,377=>611,378=>500,379=>611,380=>500,383=>333,384=>611,\n385=>963,386=>704,387=>611,388=>687,389=>611,390=>722,391=>752,392=>562,393=>722,394=>968,\n395=>722,396=>611,397=>609,398=>667,399=>778,400=>672,401=>611,403=>778,404=>667,405=>889,\n406=>278,407=>395,408=>778,409=>556,410=>333,411=>620,412=>944,413=>722,414=>611,415=>778,\n416=>791,417=>653,418=>1111,419=>722,420=>914,421=>611,422=>647,423=>667,424=>556,425=>673,\n426=>441,427=>333,428=>742,429=>333,430=>611,431=>769,432=>656,433=>766,434=>722,435=>667,\n436=>620,437=>611,438=>500,439=>556,440=>556,441=>645,442=>569,443=>579,446=>611,447=>608,\n448=>260,449=>370,450=>584,451=>278,452=>1333,453=>1222,454=>1111,455=>1167,456=>889,457=>556,\n458=>1278,459=>1000,460=>889,461=>722,462=>556,463=>278,464=>278,465=>778,466=>611,467=>722,\n468=>611,469=>722,470=>611,471=>722,472=>611,473=>722,474=>611,475=>722,476=>611,477=>556,\n478=>722,479=>556,480=>722,481=>556,482=>1000,483=>889,484=>778,485=>611,486=>778,487=>611,\n488=>722,489=>556,490=>778,491=>611,492=>778,493=>611,494=>556,495=>556,496=>278,497=>1333,\n498=>1222,499=>1111,500=>778,501=>611,503=>630,504=>722,505=>611,506=>722,507=>556,508=>1000,\n509=>889,510=>778,511=>611,512=>722,513=>556,514=>722,515=>556,516=>667,517=>556,518=>667,\n519=>556,520=>278,521=>278,522=>278,523=>278,524=>778,525=>611,526=>778,527=>611,528=>722,\n529=>389,530=>722,531=>389,532=>722,533=>611,534=>722,535=>611,536=>667,537=>556,538=>611,\n539=>333,540=>569,541=>486,542=>722,543=>611,548=>645,549=>500,550=>722,551=>556,552=>667,\n553=>556,554=>778,555=>611,556=>778,557=>611,558=>778,559=>611,560=>778,561=>611,562=>667,\n563=>556,567=>278,592=>556,593=>667,594=>667,595=>611,596=>556,597=>600,598=>611,599=>611,\n600=>556,601=>556,602=>834,603=>541,604=>557,605=>820,606=>570,607=>278,608=>611,609=>611,\n610=>556,611=>556,612=>656,613=>619,614=>611,615=>611,616=>278,617=>344,618=>278,619=>473,\n620=>527,621=>298,622=>778,623=>889,624=>889,625=>889,626=>611,627=>611,628=>615,629=>606,\n630=>878,631=>822,632=>778,633=>389,634=>389,635=>389,636=>389,637=>389,638=>455,639=>455,\n640=>620,641=>620,642=>556,643=>333,644=>278,645=>333,646=>544,647=>328,648=>333,649=>623,\n650=>726,651=>639,652=>556,653=>778,654=>556,655=>556,656=>500,657=>571,658=>556,659=>642,\n660=>611,661=>611,662=>611,664=>611,665=>554,666=>570,667=>616,668=>603,669=>552,670=>556,\n671=>454,672=>611,673=>611,674=>611,684=>522,688=>377,689=>377,690=>202,691=>272,692=>272,\n693=>299,694=>395,695=>534,696=>364,697=>278,698=>454,699=>278,700=>278,701=>278,702=>333,\n703=>333,704=>333,705=>333,706=>333,707=>333,708=>333,709=>333,711=>333,712=>333,713=>333,\n714=>333,715=>333,716=>272,717=>333,718=>333,719=>333,720=>333,721=>333,722=>333,723=>333,\n724=>333,725=>333,726=>333,727=>333,728=>333,729=>333,730=>333,731=>333,733=>333,734=>333,\n735=>510,736=>372,737=>210,738=>363,739=>373,740=>334,741=>526,742=>526,743=>526,744=>526,\n745=>526,746=>519,747=>519,748=>333,749=>333,750=>333,751=>333,752=>333,753=>333,754=>333,\n755=>333,756=>333,757=>437,758=>437,759=>400,760=>333,761=>200,762=>200,763=>200,764=>200,\n765=>333,766=>333,767=>333,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,\n775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,\n785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,\n795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,\n805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,\n815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,\n825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,\n835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,844=>0,\n845=>0,846=>0,847=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,\n855=>0,856=>0,857=>0,858=>0,859=>0,860=>0,861=>0,862=>0,863=>0,864=>0,\n865=>0,866=>0,867=>0,868=>0,869=>0,870=>0,871=>0,872=>0,873=>0,874=>0,\n875=>0,876=>0,877=>0,878=>0,879=>0,884=>379,885=>379,890=>333,894=>333,900=>363,\n901=>333,902=>761,903=>333,904=>864,905=>903,906=>454,908=>796,910=>991,911=>867,912=>315,\n913=>696,914=>640,915=>585,916=>726,917=>589,918=>581,919=>654,920=>783,921=>215,922=>648,\n923=>710,924=>829,925=>683,926=>645,927=>738,928=>726,929=>645,931=>673,932=>674,933=>771,\n934=>773,935=>780,936=>778,937=>766,938=>263,939=>771,940=>660,941=>541,942=>560,943=>356,\n944=>568,945=>632,946=>560,947=>591,948=>609,949=>541,950=>488,951=>608,952=>562,953=>315,\n954=>533,955=>603,956=>582,957=>586,958=>513,959=>611,960=>658,961=>595,962=>590,963=>657,\n964=>557,965=>568,966=>768,967=>632,968=>708,969=>778,970=>315,971=>568,972=>599,973=>568,\n974=>778,977=>580,978=>742,979=>857,980=>620,981=>706,982=>740,983=>556,1008=>556,1009=>566,\n1012=>778,1013=>328,1024=>670,1025=>670,1026=>800,1027=>611,1028=>714,1029=>667,1030=>314,1031=>300,\n1032=>576,1033=>1100,1034=>1114,1035=>806,1036=>740,1037=>757,1038=>711,1039=>754,1040=>707,1041=>704,\n1042=>704,1043=>611,1044=>900,1045=>670,1046=>1076,1047=>667,1048=>757,1049=>757,1050=>740,1051=>729,\n1052=>874,1053=>753,1054=>774,1055=>753,1056=>675,1057=>711,1058=>611,1059=>711,1060=>904,1061=>666,\n1062=>816,1063=>698,1064=>1057,1065=>1157,1066=>837,1067=>980,1068=>675,1069=>711,1070=>1093,1071=>708,\n1072=>552,1073=>593,1074=>554,1075=>423,1076=>685,1077=>573,1078=>782,1079=>557,1080=>615,1081=>615,\n1082=>559,1083=>568,1084=>666,1085=>603,1086=>606,1087=>603,1088=>612,1089=>556,1090=>440,1091=>549,\n1092=>964,1093=>539,1094=>652,1095=>554,1096=>886,1097=>968,1098=>699,1099=>778,1100=>568,1101=>556,\n1102=>848,1103=>586,1104=>573,1105=>573,1106=>606,1107=>423,1108=>556,1109=>555,1110=>260,1111=>278,\n1112=>270,1113=>898,1114=>898,1115=>626,1116=>559,1117=>615,1118=>549,1119=>604,1136=>832,1137=>748,\n1138=>774,1139=>606,1154=>449,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>0,1161=>0,\n1162=>832,1163=>675,1164=>678,1165=>611,1166=>675,1167=>612,1168=>636,1169=>440,1170=>622,1171=>449,\n1172=>647,1173=>574,1174=>1096,1175=>803,1176=>683,1177=>555,1178=>759,1179=>573,1180=>730,1181=>554,\n1182=>737,1183=>555,1184=>892,1185=>680,1186=>825,1187=>653,1188=>999,1189=>763,1190=>1105,1191=>925,\n1192=>714,1193=>558,1194=>722,1195=>558,1196=>614,1197=>438,1198=>643,1199=>573,1200=>643,1201=>603,\n1202=>670,1203=>548,1204=>952,1205=>738,1206=>781,1207=>615,1208=>698,1209=>588,1210=>687,1211=>588,\n1212=>993,1213=>761,1214=>965,1215=>759,1216=>314,1217=>1076,1218=>809,1219=>700,1220=>543,1221=>793,\n1222=>634,1223=>753,1224=>603,1225=>819,1226=>663,1227=>706,1228=>588,1229=>935,1230=>720,1231=>314,\n1232=>707,1233=>564,1234=>707,1235=>566,1236=>1004,1237=>898,1238=>670,1239=>573,1240=>722,1241=>573,\n1242=>722,1243=>573,1244=>1076,1245=>782,1246=>667,1247=>557,1248=>556,1249=>552,1250=>757,1251=>615,\n1252=>757,1253=>615,1254=>778,1255=>611,1256=>774,1257=>606,1258=>774,1259=>606,1260=>711,1261=>556,\n1262=>700,1263=>544,1264=>701,1265=>539,1266=>700,1267=>537,1268=>698,1269=>554,1270=>611,1271=>432,\n1272=>980,1273=>778,1296=>672,1297=>546,1298=>729,1299=>577,1306=>778,1307=>612,1308=>944,1309=>776,\n1310=>730,1311=>554,1329=>730,1330=>713,1331=>765,1332=>752,1333=>708,1334=>801,1335=>496,1336=>713,\n1337=>855,1338=>686,1339=>727,1340=>420,1341=>897,1342=>841,1343=>708,1344=>660,1345=>666,1346=>747,\n1347=>698,1348=>757,1349=>630,1350=>747,1351=>651,1352=>743,1353=>657,1354=>728,1355=>799,1356=>752,\n1357=>743,1358=>768,1359=>691,1360=>713,1361=>640,1362=>425,1363=>818,1364=>672,1365=>805,1366=>754,\n1369=>333,1370=>222,1371=>250,1372=>333,1373=>333,1374=>352,1375=>362,1377=>873,1378=>613,1379=>634,\n1380=>636,1381=>593,1382=>639,1383=>417,1384=>613,1385=>658,1386=>711,1387=>609,1388=>318,1389=>836,\n1390=>670,1391=>613,1392=>607,1393=>611,1394=>626,1395=>619,1396=>618,1397=>324,1398=>613,1399=>540,\n1400=>591,1401=>392,1402=>873,1403=>577,1404=>603,1405=>600,1406=>626,1407=>951,1408=>613,1409=>612,\n1410=>348,1411=>951,1412=>616,1413=>606,1414=>763,1415=>626,1417=>333,1418=>398,1456=>0,1457=>0,\n1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1467=>0,1468=>0,\n1469=>0,1470=>516,1471=>0,1472=>297,1473=>0,1474=>0,1475=>333,1476=>0,1488=>714,1489=>651,\n1490=>557,1491=>638,1492=>682,1493=>297,1494=>443,1495=>682,1496=>670,1497=>284,1498=>590,1499=>595,\n1500=>667,1501=>683,1502=>704,1503=>297,1504=>429,1505=>670,1506=>653,1507=>661,1508=>660,1509=>616,\n1510=>671,1511=>672,1512=>600,1513=>840,1514=>756,1520=>554,1521=>550,1522=>542,1523=>238,1524=>474,\n2561=>0,2562=>122,2563=>313,2565=>897,2566=>1157,2567=>930,2568=>966,2569=>762,2570=>762,2575=>729,\n2576=>904,2579=>773,2580=>903,2581=>726,2582=>672,2583=>741,2584=>790,2585=>702,2586=>723,2587=>693,\n2588=>688,2589=>673,2590=>683,2591=>686,2592=>711,2593=>680,2594=>693,2595=>729,2596=>691,2597=>694,\n2598=>699,2599=>666,2600=>669,2602=>683,2603=>690,2604=>660,2605=>659,2606=>692,2607=>772,2608=>673,\n2610=>731,2611=>814,2613=>663,2614=>704,2616=>702,2617=>650,2620=>0,2622=>307,2623=>304,2624=>306,\n2625=>7,2626=>7,2631=>7,2632=>8,2635=>6,2636=>5,2637=>8,2649=>684,2650=>813,2651=>715,\n2652=>695,2654=>709,2662=>697,2663=>630,2664=>696,2665=>690,2666=>646,2667=>636,2668=>571,2669=>682,\n2670=>718,2671=>730,2672=>9,2673=>162,2674=>722,2675=>760,2676=>1110,4256=>616,4257=>645,4258=>664,\n4259=>839,4260=>627,4261=>630,4262=>827,4263=>928,4264=>639,4265=>630,4266=>951,4267=>606,4268=>608,\n4269=>835,4270=>630,4271=>610,4272=>804,4273=>615,4274=>823,4275=>747,4276=>870,4277=>627,4278=>840,\n4279=>627,4280=>665,4281=>610,4282=>799,4283=>598,4284=>665,4285=>664,4286=>608,4287=>886,4288=>629,\n4304=>463,4305=>516,4306=>564,4307=>706,4308=>459,4309=>476,4310=>623,4311=>711,4312=>494,4313=>476,\n4314=>894,4315=>500,4316=>500,4317=>712,4318=>493,4319=>503,4320=>712,4321=>503,4322=>710,4323=>670,\n4324=>707,4325=>459,4326=>691,4327=>465,4328=>492,4329=>480,4330=>656,4331=>500,4332=>492,4333=>524,\n4334=>500,4335=>688,4336=>510,4337=>739,4338=>450,4339=>479,4340=>502,4341=>501,4345=>564,4347=>515,\n7680=>722,7681=>556,7682=>722,7683=>611,7684=>722,7685=>611,7686=>722,7687=>611,7688=>722,7689=>556,\n7690=>722,7691=>611,7692=>722,7693=>611,7694=>722,7695=>611,7696=>722,7697=>611,7698=>722,7699=>611,\n7700=>667,7701=>556,7702=>667,7703=>556,7704=>667,7705=>556,7706=>667,7707=>556,7708=>667,7709=>556,\n7710=>611,7711=>333,7712=>778,7713=>611,7714=>722,7715=>611,7716=>722,7717=>611,7718=>722,7719=>611,\n7720=>722,7721=>611,7722=>722,7723=>611,7724=>278,7725=>278,7726=>278,7727=>278,7728=>722,7729=>556,\n7730=>722,7731=>556,7732=>722,7733=>556,7734=>611,7735=>278,7736=>611,7737=>278,7738=>611,7739=>278,\n7740=>611,7741=>278,7742=>833,7743=>889,7744=>833,7745=>889,7746=>833,7747=>889,7748=>722,7749=>611,\n7750=>722,7751=>611,7752=>722,7753=>611,7754=>722,7755=>611,7756=>778,7757=>611,7758=>778,7759=>611,\n7760=>778,7761=>611,7762=>778,7763=>611,7764=>667,7765=>611,7766=>667,7767=>611,7768=>722,7769=>389,\n7770=>722,7771=>389,7772=>722,7773=>389,7774=>722,7775=>389,7776=>667,7777=>556,7778=>667,7779=>556,\n7780=>667,7781=>556,7782=>667,7783=>556,7784=>667,7785=>556,7786=>611,7787=>333,7788=>611,7789=>333,\n7790=>611,7791=>333,7792=>611,7793=>333,7794=>722,7795=>611,7796=>722,7797=>611,7798=>722,7799=>611,\n7800=>722,7801=>611,7802=>722,7803=>611,7804=>667,7805=>556,7806=>667,7807=>556,7808=>944,7809=>778,\n7810=>944,7811=>778,7812=>944,7813=>778,7814=>944,7815=>778,7816=>944,7817=>778,7818=>667,7819=>556,\n7820=>667,7821=>556,7822=>667,7823=>556,7824=>611,7825=>500,7826=>611,7827=>500,7828=>611,7829=>500,\n7830=>611,7831=>333,7832=>778,7833=>556,7834=>555,7835=>333,7840=>722,7841=>556,7842=>722,7843=>556,\n7844=>722,7845=>556,7846=>722,7847=>556,7848=>667,7849=>556,7850=>722,7851=>556,7852=>722,7853=>556,\n7854=>722,7855=>556,7856=>722,7857=>556,7858=>722,7859=>556,7860=>722,7861=>556,7862=>722,7863=>556,\n7864=>667,7865=>556,7866=>667,7867=>556,7868=>667,7869=>556,7870=>667,7871=>556,7872=>667,7873=>556,\n7874=>667,7875=>556,7876=>667,7877=>556,7878=>667,7879=>556,7880=>278,7881=>278,7882=>278,7883=>278,\n7884=>778,7885=>611,7886=>778,7887=>611,7888=>778,7889=>611,7890=>778,7891=>611,7892=>778,7893=>611,\n7894=>778,7895=>611,7896=>778,7897=>611,7898=>791,7899=>653,7900=>791,7901=>653,7902=>791,7903=>653,\n7904=>791,7905=>653,7906=>791,7907=>653,7908=>722,7909=>611,7910=>722,7911=>611,7912=>769,7913=>656,\n7914=>769,7915=>656,7916=>769,7917=>656,7918=>769,7919=>656,7920=>769,7921=>656,7922=>667,7923=>556,\n7924=>667,7925=>556,7926=>667,7927=>556,7928=>667,7929=>556,7936=>632,7937=>632,7938=>632,7939=>632,\n7940=>632,7941=>632,7942=>632,7943=>632,7944=>696,7945=>696,7946=>865,7947=>849,7948=>796,7949=>807,\n7950=>730,7951=>750,7952=>541,7953=>541,7954=>541,7955=>541,7956=>541,7957=>541,7960=>758,7961=>760,\n7962=>957,7963=>943,7964=>939,7965=>945,7968=>608,7969=>608,7970=>608,7971=>608,7972=>608,7973=>608,\n7974=>608,7975=>608,7976=>823,7977=>831,7978=>1026,7979=>1017,7980=>1002,7981=>1024,7982=>908,7983=>909,\n7984=>315,7985=>315,7986=>373,7987=>375,7988=>378,7989=>374,7990=>370,7991=>384,7992=>378,7993=>383,\n7994=>596,7995=>579,7996=>572,7997=>576,7998=>474,7999=>459,8000=>610,8001=>610,8002=>610,8003=>610,\n8004=>610,8005=>610,8008=>800,8009=>871,8010=>1084,8011=>1079,8012=>975,8013=>973,8016=>568,8017=>568,\n8018=>568,8019=>568,8020=>568,8021=>568,8022=>568,8023=>568,8025=>906,8027=>1080,8029=>1115,8031=>977,\n8032=>778,8033=>778,8034=>778,8035=>778,8036=>778,8037=>778,8038=>778,8039=>778,8040=>837,8041=>860,\n8042=>1062,8043=>1072,8044=>962,8045=>985,8046=>922,8047=>959,8048=>632,8049=>632,8050=>541,8051=>541,\n8052=>608,8053=>608,8054=>315,8055=>315,8056=>610,8057=>610,8058=>568,8059=>568,8060=>778,8061=>778,\n8064=>632,8065=>632,8066=>632,8067=>632,8068=>632,8069=>632,8070=>632,8071=>632,8072=>909,8073=>906,\n8074=>1061,8075=>1035,8076=>984,8077=>994,8078=>910,8079=>916,8080=>608,8081=>608,8082=>608,8083=>608,\n8084=>608,8085=>608,8086=>608,8087=>608,8088=>1006,8089=>1015,8090=>1204,8091=>1207,8092=>1188,8093=>1209,\n8094=>1096,8095=>1105,8096=>778,8097=>778,8098=>778,8099=>778,8100=>778,8101=>778,8102=>778,8103=>778,\n8104=>1026,8105=>1048,8106=>1251,8107=>1260,8108=>1150,8109=>1177,8110=>1106,8111=>1142,8112=>632,8113=>632,\n8114=>632,8115=>632,8116=>660,8118=>632,8119=>632,8120=>696,8121=>696,8122=>696,8123=>696,8124=>907,\n8125=>278,8126=>346,8127=>278,8128=>278,8129=>333,8130=>608,8131=>608,8132=>560,8134=>608,8135=>608,\n8136=>776,8137=>793,8138=>847,8139=>854,8140=>848,8141=>492,8142=>489,8143=>394,8144=>335,8145=>354,\n8146=>367,8147=>368,8150=>353,8151=>366,8152=>240,8153=>259,8154=>418,8155=>416,8157=>481,8158=>589,\n8159=>333,8160=>568,8161=>568,8162=>568,8163=>568,8164=>595,8165=>595,8166=>568,8167=>568,8168=>771,\n8169=>771,8170=>951,8171=>982,8172=>806,8173=>333,8174=>333,8175=>333,8178=>778,8179=>778,8180=>778,\n8182=>778,8183=>778,8184=>909,8185=>809,8186=>897,8187=>825,8188=>978,8189=>333,8190=>278,8192=>500,\n8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>556,8200=>278,8201=>200,8202=>100,\n8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,8210=>556,8213=>1000,8214=>437,\n8215=>556,8219=>278,8223=>500,8227=>350,8228=>278,8229=>666,8231=>278,8232=>0,8233=>0,8234=>0,\n8235=>0,8236=>0,8237=>0,8238=>0,8239=>500,8241=>1367,8242=>238,8243=>426,8244=>614,8245=>238,\n8246=>379,8247=>571,8248=>450,8251=>622,8252=>666,8253=>614,8254=>556,8255=>658,8256=>658,8257=>438,\n8258=>840,8259=>400,8260=>167,8261=>334,8262=>334,8263=>1222,8264=>944,8265=>944,8266=>556,8267=>537,\n8268=>537,8269=>537,8270=>389,8271=>333,8272=>658,8273=>389,8274=>634,8275=>568,8276=>658,8277=>793,\n8278=>515,8279=>855,8280=>722,8281=>725,8282=>224,8283=>722,8284=>604,8285=>224,8286=>224,8287=>0,\n8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8304=>351,8305=>351,8308=>351,8309=>351,8310=>351,\n8311=>351,8312=>351,8313=>351,8314=>351,8315=>351,8316=>351,8317=>351,8318=>351,8319=>351,8320=>351,\n8321=>301,8322=>351,8323=>351,8324=>351,8325=>351,8326=>351,8327=>351,8328=>351,8329=>351,8330=>350,\n8331=>350,8332=>350,8333=>350,8334=>350,8355=>611,8356=>591,8357=>889,8358=>727,8360=>1265,8362=>1049,\n8363=>580,8368=>605,8373=>591,8400=>0,8401=>0,8402=>0,8403=>0,8406=>0,8407=>0,8411=>0,\n8412=>0,8413=>0,8414=>0,8415=>0,8416=>0,8417=>0,8421=>0,8422=>0,8423=>0,8424=>0,\n8425=>0,8426=>0,8427=>0,8428=>0,8429=>0,8430=>0,8431=>0,8432=>0,8448=>985,8449=>1007,\n8451=>1034,8453=>981,8454=>1042,8455=>667,8457=>919,8465=>606,8468=>881,8470=>979,8471=>784,8476=>699,\n8480=>1000,8481=>1230,8486=>766,8487=>778,8489=>315,8490=>741,8491=>729,8494=>556,8498=>588,8501=>714,\n8502=>651,8503=>557,8504=>638,8506=>871,8507=>1230,8513=>778,8514=>611,8515=>611,8516=>667,8523=>669,\n8525=>1072,8526=>482,8531=>869,8532=>869,8533=>869,8534=>869,8535=>869,8536=>869,8537=>869,8538=>869,\n8539=>869,8540=>869,8541=>869,8542=>869,8543=>869,8544=>278,8545=>556,8546=>834,8547=>945,8548=>667,\n8549=>945,8550=>1223,8551=>1501,8552=>945,8553=>667,8554=>945,8555=>1223,8556=>611,8557=>722,8558=>722,\n8559=>833,8560=>278,8561=>556,8562=>834,8563=>834,8564=>556,8565=>834,8566=>1112,8567=>1390,8568=>834,\n8569=>556,8570=>834,8571=>1112,8572=>278,8573=>556,8574=>611,8575=>889,8592=>964,8593=>964,8594=>964,\n8595=>964,8596=>964,8597=>964,8598=>964,8599=>964,8600=>964,8601=>964,8602=>964,8603=>964,8606=>964,\n8607=>964,8608=>964,8609=>964,8610=>964,8611=>964,8612=>964,8613=>964,8614=>964,8615=>964,8616=>964,\n8644=>964,8645=>964,8646=>964,8647=>964,8648=>964,8649=>964,8650=>964,8704=>722,8706=>556,8707=>667,\n8710=>729,8711=>729,8721=>856,8722=>584,8725=>869,8730=>594,8747=>608,8800=>548,8804=>584,8805=>584,\n9251=>500,9674=>541,9772=>923,9824=>626,9825=>694,9826=>595,9827=>776,9828=>626,9829=>694,9830=>595,\n9831=>776,9833=>333,9834=>556,9835=>778,9836=>778,9837=>556,9838=>556,9839=>556,10048=>1453,11799=>333,\n64256=>607,64257=>576,64258=>603,64259=>849,64260=>849,64275=>1243,64276=>1226,64277=>1233,64278=>1238,64279=>1448,\n64285=>284,64286=>305,64287=>542,64288=>653,64289=>964,64290=>888,64291=>932,64292=>845,64293=>917,64294=>933,\n64295=>850,64296=>1006,64297=>584,64298=>840,64299=>840,64300=>840,64301=>840,64302=>714,64303=>714,64304=>714,\n64305=>651,64306=>557,64307=>638,64308=>682,64309=>348,64310=>443,64312=>670,64313=>354,64314=>590,64315=>595,\n64316=>667,64318=>704,64320=>429,64321=>670,64323=>661,64324=>660,64326=>671,64327=>672,64328=>600,64329=>840,\n64330=>756,64331=>212,64332=>591,64333=>550,64334=>568,64335=>714,65533=>788);\n$enc='';\n$diff='';\n$file='freesansb.z';\n$ctg='freesansb.ctg.z';\n$originalsize=283180;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/freesansbi.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='FreeSansBoldOblique';\n$desc=array('Ascent'=>1000,'Descent'=>-300,'CapHeight'=>22,'Flags'=>96,'FontBBox'=>'[-769 -1175 1591 1639]','ItalicAngle'=>-12,'StemV'=>120,'MissingWidth'=>600);\n$up=-145;\n$ut=69;\n$dw=600;\n$cw=array(\n32=>278,33=>333,34=>474,35=>556,36=>556,37=>889,38=>722,39=>238,40=>333,41=>333,\n42=>389,43=>584,44=>278,45=>333,46=>278,47=>278,48=>556,49=>556,50=>556,51=>556,\n52=>556,53=>556,54=>556,55=>556,56=>556,57=>556,58=>333,59=>333,60=>584,61=>584,\n62=>584,63=>611,64=>975,65=>722,66=>722,67=>722,68=>722,69=>667,70=>611,71=>778,\n72=>722,73=>278,74=>556,75=>722,76=>611,77=>833,78=>722,79=>778,80=>667,81=>778,\n82=>722,83=>667,84=>611,85=>722,86=>667,87=>944,88=>667,89=>667,90=>611,91=>333,\n92=>278,93=>333,94=>584,95=>556,96=>333,97=>556,98=>611,99=>556,100=>611,101=>556,\n102=>333,103=>611,104=>611,105=>278,106=>278,107=>556,108=>278,109=>889,110=>611,111=>611,\n112=>611,113=>611,114=>389,115=>556,116=>333,117=>611,118=>556,119=>778,120=>556,121=>556,\n122=>500,123=>389,124=>280,125=>389,126=>584,8364=>640,8218=>278,402=>556,8222=>500,8230=>1000,\n8224=>556,8225=>556,710=>333,8240=>1000,352=>667,8249=>333,338=>1000,381=>611,8216=>278,8217=>278,\n8220=>500,8221=>500,8226=>350,8211=>556,8212=>1000,732=>333,8482=>1000,353=>556,8250=>333,339=>944,\n382=>500,376=>667,160=>278,161=>333,162=>556,163=>556,164=>556,165=>556,166=>280,167=>556,\n168=>333,169=>737,170=>370,171=>556,172=>584,173=>333,174=>737,175=>333,176=>606,177=>584,\n178=>350,179=>350,180=>333,181=>667,182=>556,183=>278,184=>333,185=>248,186=>365,187=>556,\n188=>869,189=>869,190=>869,191=>611,192=>722,193=>722,194=>722,195=>722,196=>722,197=>722,\n198=>1000,199=>722,200=>667,201=>667,202=>667,203=>667,204=>278,205=>278,206=>278,207=>278,\n208=>722,209=>722,210=>778,211=>778,212=>778,213=>778,214=>778,215=>584,216=>778,217=>722,\n218=>722,219=>722,220=>722,221=>667,222=>667,223=>611,224=>556,225=>556,226=>556,227=>556,\n228=>556,229=>556,230=>889,231=>556,232=>556,233=>556,234=>556,235=>556,236=>278,237=>278,\n238=>278,239=>278,240=>611,241=>611,242=>611,243=>611,244=>611,245=>611,246=>611,247=>584,\n248=>611,249=>611,250=>611,251=>611,252=>611,253=>556,254=>611,255=>556,256=>722,257=>556,\n258=>722,259=>556,260=>722,261=>556,262=>722,263=>556,264=>722,265=>556,266=>722,267=>556,\n268=>722,269=>556,270=>722,271=>722,272=>722,273=>611,274=>667,275=>556,276=>667,277=>556,\n278=>667,279=>556,280=>667,281=>556,282=>667,283=>556,284=>778,285=>611,286=>778,287=>611,\n288=>778,289=>611,290=>778,291=>611,292=>722,293=>611,294=>722,295=>611,296=>278,297=>278,\n298=>278,299=>278,300=>278,301=>278,302=>278,303=>268,304=>278,305=>278,306=>796,307=>487,\n308=>556,309=>278,310=>722,311=>556,312=>529,313=>611,314=>278,315=>611,316=>278,317=>611,\n318=>384,319=>611,320=>556,321=>611,322=>278,323=>722,324=>611,325=>722,326=>611,327=>722,\n328=>611,329=>611,330=>722,331=>611,332=>778,333=>611,334=>778,335=>611,336=>778,337=>611,\n340=>722,341=>389,342=>722,343=>389,344=>722,345=>389,346=>667,347=>556,348=>667,349=>556,\n350=>667,351=>556,354=>611,355=>333,356=>611,357=>404,358=>611,359=>404,360=>722,361=>611,\n362=>722,363=>611,364=>722,365=>611,366=>722,367=>611,368=>722,369=>611,370=>722,371=>611,\n372=>944,373=>778,374=>667,375=>556,377=>611,378=>500,379=>611,380=>500,383=>333,384=>611,\n385=>963,386=>722,387=>611,388=>687,389=>611,390=>722,391=>752,392=>562,393=>722,394=>968,\n395=>722,396=>611,397=>609,398=>667,399=>778,400=>672,401=>611,403=>778,404=>667,405=>889,\n406=>278,407=>395,408=>778,409=>556,410=>333,411=>620,412=>889,413=>722,414=>611,415=>778,\n416=>778,417=>611,418=>1111,419=>722,420=>914,421=>611,422=>647,423=>667,424=>556,425=>688,\n426=>441,427=>333,428=>742,429=>333,430=>611,431=>722,432=>611,433=>780,434=>722,435=>667,\n436=>706,437=>611,438=>500,439=>556,440=>556,441=>645,442=>569,443=>579,446=>611,447=>608,\n448=>260,449=>370,450=>584,451=>278,452=>1333,453=>1222,454=>1111,455=>1167,456=>889,457=>556,\n458=>1278,459=>1000,460=>889,461=>722,462=>556,463=>278,464=>278,465=>778,466=>611,467=>722,\n468=>611,469=>722,470=>611,471=>722,472=>611,473=>722,474=>611,475=>722,476=>611,477=>556,\n478=>722,479=>556,480=>722,481=>556,482=>1000,483=>889,484=>811,485=>641,486=>778,487=>611,\n488=>722,489=>556,490=>778,491=>611,492=>778,493=>611,494=>556,495=>556,496=>278,497=>1333,\n498=>1222,499=>1111,500=>778,501=>611,503=>630,504=>722,505=>611,506=>722,507=>556,508=>1000,\n509=>889,510=>778,511=>611,512=>722,513=>556,514=>722,515=>556,516=>667,517=>556,518=>667,\n519=>556,520=>278,521=>278,522=>278,523=>278,524=>778,525=>611,526=>778,527=>611,528=>722,\n529=>389,530=>722,531=>389,532=>722,533=>611,534=>722,535=>611,536=>667,537=>556,538=>611,\n539=>333,540=>569,541=>486,542=>722,543=>611,548=>645,549=>500,550=>722,551=>556,552=>667,\n553=>556,554=>778,555=>611,556=>778,557=>611,558=>778,559=>611,560=>778,561=>611,562=>667,\n563=>556,567=>278,592=>556,593=>611,594=>611,595=>611,596=>556,597=>600,598=>611,599=>611,\n600=>556,601=>556,602=>834,603=>570,604=>546,605=>820,606=>570,607=>278,608=>611,609=>611,\n610=>556,611=>556,612=>656,613=>619,614=>611,615=>611,616=>278,617=>344,618=>278,619=>473,\n620=>527,621=>298,622=>778,623=>889,624=>889,625=>889,626=>611,627=>611,628=>615,629=>590,\n630=>878,631=>822,632=>778,633=>389,634=>389,635=>389,636=>389,637=>389,638=>455,639=>455,\n640=>620,641=>586,642=>556,643=>333,644=>278,645=>333,646=>544,647=>328,648=>333,649=>623,\n650=>726,651=>639,652=>556,653=>778,654=>556,655=>556,656=>500,657=>571,658=>556,659=>642,\n660=>611,661=>611,662=>611,664=>611,665=>572,666=>570,667=>616,668=>603,669=>552,670=>556,\n671=>454,672=>611,673=>611,674=>611,684=>520,688=>500,689=>500,690=>167,691=>333,692=>333,\n693=>333,694=>348,695=>500,696=>345,697=>278,698=>454,699=>278,700=>333,701=>278,702=>333,\n703=>333,704=>333,705=>333,706=>333,707=>333,708=>333,709=>333,711=>333,712=>333,713=>333,\n714=>333,715=>333,716=>272,717=>333,718=>333,719=>333,720=>333,721=>333,722=>333,723=>333,\n724=>333,725=>333,726=>333,727=>333,728=>333,729=>333,730=>333,731=>333,733=>333,734=>333,\n735=>510,736=>333,737=>333,738=>333,739=>357,740=>334,741=>526,742=>526,743=>526,744=>526,\n745=>526,746=>519,747=>519,748=>333,749=>333,750=>333,751=>333,752=>333,753=>333,754=>333,\n755=>333,756=>333,757=>437,758=>437,759=>400,760=>333,761=>200,762=>200,763=>200,764=>200,\n765=>332,766=>333,767=>333,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,\n775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,\n785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,\n795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,\n805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,\n815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,\n825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,\n835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,844=>0,\n845=>0,846=>0,847=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,\n855=>0,856=>0,857=>0,858=>0,859=>0,860=>0,861=>0,862=>0,863=>0,864=>0,\n865=>0,866=>0,867=>0,868=>0,869=>0,870=>0,871=>0,872=>0,873=>0,874=>0,\n875=>0,876=>0,877=>0,878=>0,879=>0,884=>208,885=>247,890=>364,894=>333,900=>239,\n901=>446,902=>688,903=>333,904=>903,905=>962,906=>448,908=>904,910=>991,911=>932,912=>346,\n913=>764,914=>688,915=>642,916=>744,917=>710,918=>688,919=>743,920=>810,921=>296,922=>744,\n923=>744,924=>860,925=>714,926=>690,927=>822,928=>781,929=>698,931=>688,932=>688,933=>744,\n934=>777,935=>783,936=>805,937=>780,938=>296,939=>744,940=>640,941=>530,942=>597,943=>339,\n944=>575,945=>656,946=>576,947=>591,948=>620,949=>570,950=>522,951=>586,952=>586,953=>346,\n954=>576,955=>620,956=>667,957=>564,958=>530,959=>610,960=>721,961=>626,962=>595,963=>676,\n964=>592,965=>575,966=>801,967=>632,968=>722,969=>800,970=>346,971=>575,972=>609,973=>604,\n974=>769,977=>580,978=>742,979=>857,980=>620,981=>778,982=>740,983=>601,1008=>556,1009=>566,\n1012=>778,1013=>328,1024=>667,1025=>667,1026=>790,1027=>617,1028=>731,1029=>667,1030=>278,1031=>278,\n1032=>556,1033=>1110,1034=>1088,1035=>790,1036=>722,1037=>757,1038=>698,1039=>722,1040=>722,1041=>722,\n1042=>722,1043=>617,1044=>876,1045=>667,1046=>1100,1047=>670,1048=>757,1049=>757,1050=>722,1051=>715,\n1052=>874,1053=>753,1054=>778,1055=>753,1056=>680,1057=>722,1058=>611,1059=>698,1060=>909,1061=>657,\n1062=>845,1063=>688,1064=>1132,1065=>1217,1066=>835,1067=>980,1068=>678,1069=>735,1070=>1142,1071=>708,\n1072=>553,1073=>591,1074=>574,1075=>429,1076=>745,1077=>572,1078=>792,1079=>554,1080=>603,1081=>603,\n1082=>559,1083=>583,1084=>664,1085=>603,1086=>588,1087=>603,1088=>605,1089=>549,1090=>440,1091=>541,\n1092=>948,1093=>539,1094=>690,1095=>564,1096=>901,1097=>987,1098=>692,1099=>806,1100=>572,1101=>546,\n1102=>893,1103=>586,1104=>572,1105=>572,1106=>616,1107=>429,1108=>549,1109=>562,1110=>281,1111=>281,\n1112=>282,1113=>888,1114=>897,1115=>606,1116=>559,1117=>603,1118=>541,1119=>603,1136=>830,1137=>761,\n1138=>778,1139=>590,1154=>456,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>0,1161=>0,\n1162=>791,1163=>662,1164=>639,1165=>581,1166=>670,1167=>649,1168=>623,1169=>450,1170=>623,1171=>472,\n1172=>674,1173=>528,1174=>1091,1175=>803,1176=>659,1177=>548,1178=>739,1179=>569,1180=>742,1181=>560,\n1182=>737,1183=>559,1184=>900,1185=>679,1186=>808,1187=>673,1188=>1004,1189=>761,1190=>1114,1191=>876,\n1192=>721,1193=>548,1194=>724,1195=>554,1196=>611,1197=>454,1198=>667,1199=>584,1200=>652,1201=>632,\n1202=>667,1203=>550,1204=>951,1205=>748,1206=>759,1207=>630,1208=>669,1209=>580,1210=>672,1211=>576,\n1212=>977,1213=>752,1214=>957,1215=>752,1216=>318,1217=>1087,1218=>792,1219=>726,1220=>530,1221=>782,\n1222=>674,1223=>749,1224=>603,1225=>823,1226=>682,1227=>675,1228=>573,1229=>941,1230=>754,1231=>310,\n1232=>704,1233=>553,1234=>711,1235=>553,1236=>1000,1237=>889,1238=>667,1239=>569,1240=>738,1241=>561,\n1242=>738,1243=>561,1244=>1086,1245=>792,1246=>670,1247=>554,1248=>558,1249=>546,1250=>753,1251=>603,\n1252=>753,1253=>603,1254=>778,1255=>588,1256=>778,1257=>590,1258=>778,1259=>590,1260=>735,1261=>546,\n1262=>698,1263=>541,1264=>698,1265=>541,1266=>698,1267=>541,1268=>686,1269=>564,1270=>617,1271=>475,\n1272=>976,1273=>806,1296=>672,1297=>546,1298=>729,1299=>577,1306=>778,1307=>611,1308=>944,1309=>776,\n1310=>750,1311=>573,1329=>730,1330=>713,1331=>765,1332=>752,1333=>708,1334=>801,1335=>496,1336=>713,\n1337=>855,1338=>686,1339=>727,1340=>420,1341=>897,1342=>841,1343=>708,1344=>660,1345=>666,1346=>747,\n1347=>698,1348=>757,1349=>630,1350=>747,1351=>651,1352=>743,1353=>657,1354=>728,1355=>799,1356=>752,\n1357=>743,1358=>768,1359=>691,1360=>713,1361=>640,1362=>425,1363=>818,1364=>672,1365=>805,1366=>754,\n1369=>333,1370=>222,1371=>250,1372=>333,1373=>333,1374=>352,1375=>362,1377=>873,1378=>613,1379=>634,\n1380=>636,1381=>593,1382=>639,1383=>417,1384=>613,1385=>658,1386=>711,1387=>609,1388=>318,1389=>836,\n1390=>670,1391=>613,1392=>607,1393=>611,1394=>626,1395=>619,1396=>618,1397=>324,1398=>613,1399=>540,\n1400=>591,1401=>392,1402=>873,1403=>577,1404=>603,1405=>600,1406=>626,1407=>951,1408=>613,1409=>612,\n1410=>348,1411=>951,1412=>616,1413=>606,1414=>763,1415=>626,1417=>333,1418=>398,1456=>0,1457=>0,\n1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1467=>0,1468=>0,\n1469=>0,1470=>516,1471=>0,1472=>297,1473=>0,1474=>0,1475=>333,1476=>0,1488=>714,1489=>651,\n1490=>557,1491=>638,1492=>682,1493=>297,1494=>443,1495=>682,1496=>670,1497=>284,1498=>590,1499=>595,\n1500=>667,1501=>683,1502=>704,1503=>297,1504=>429,1505=>670,1506=>653,1507=>661,1508=>660,1509=>616,\n1510=>671,1511=>672,1512=>600,1513=>840,1514=>756,1520=>554,1521=>550,1522=>542,1523=>238,1524=>474,\n4256=>616,4257=>645,4258=>664,4259=>839,4260=>627,4261=>630,4262=>827,4263=>928,4264=>639,4265=>630,\n4266=>951,4267=>606,4268=>608,4269=>835,4270=>630,4271=>610,4272=>804,4273=>615,4274=>823,4275=>747,\n4276=>870,4277=>627,4278=>840,4279=>627,4280=>665,4281=>610,4282=>799,4283=>598,4284=>665,4285=>664,\n4286=>608,4287=>886,4288=>629,4304=>463,4305=>516,4306=>564,4307=>706,4308=>459,4309=>476,4310=>623,\n4311=>711,4312=>494,4313=>476,4314=>894,4315=>500,4316=>500,4317=>712,4318=>493,4319=>503,4320=>712,\n4321=>503,4322=>710,4323=>670,4324=>707,4325=>459,4326=>691,4327=>465,4328=>492,4329=>480,4330=>656,\n4331=>500,4332=>492,4333=>524,4334=>500,4335=>688,4336=>510,4337=>739,4338=>450,4339=>479,4340=>502,\n4341=>501,4345=>564,4347=>515,7680=>722,7681=>556,7682=>722,7683=>611,7684=>722,7685=>611,7686=>722,\n7687=>611,7688=>722,7689=>556,7690=>722,7691=>611,7692=>722,7693=>611,7694=>722,7695=>611,7696=>722,\n7697=>611,7698=>722,7699=>611,7700=>667,7701=>556,7702=>667,7703=>556,7704=>667,7705=>556,7706=>667,\n7707=>556,7708=>667,7709=>556,7710=>611,7711=>333,7712=>778,7713=>611,7714=>722,7715=>611,7716=>722,\n7717=>611,7718=>722,7719=>611,7720=>722,7721=>611,7722=>722,7723=>611,7724=>278,7725=>278,7726=>278,\n7727=>278,7728=>722,7729=>556,7730=>722,7731=>556,7732=>722,7733=>556,7734=>611,7735=>278,7736=>611,\n7737=>278,7738=>611,7739=>278,7740=>611,7741=>278,7742=>833,7743=>889,7744=>833,7745=>889,7746=>833,\n7747=>889,7748=>722,7749=>611,7750=>722,7751=>611,7752=>722,7753=>611,7754=>722,7755=>611,7756=>778,\n7757=>611,7758=>778,7759=>611,7760=>778,7761=>611,7762=>778,7763=>611,7764=>667,7765=>611,7766=>667,\n7767=>611,7768=>722,7769=>389,7770=>722,7771=>389,7772=>722,7773=>389,7774=>722,7775=>389,7776=>667,\n7777=>556,7778=>667,7779=>556,7780=>667,7781=>556,7782=>667,7783=>556,7784=>667,7785=>556,7786=>611,\n7787=>333,7788=>611,7789=>333,7790=>611,7791=>333,7792=>611,7793=>333,7794=>722,7795=>611,7796=>722,\n7797=>611,7798=>722,7799=>611,7800=>722,7801=>611,7802=>722,7803=>611,7804=>667,7805=>556,7806=>667,\n7807=>556,7808=>944,7809=>778,7810=>944,7811=>778,7812=>944,7813=>778,7814=>944,7815=>778,7816=>944,\n7817=>778,7818=>667,7819=>556,7820=>667,7821=>556,7822=>667,7823=>556,7824=>611,7825=>500,7826=>611,\n7827=>500,7828=>611,7829=>500,7830=>611,7831=>333,7832=>778,7833=>556,7834=>555,7835=>333,7840=>722,\n7841=>556,7842=>722,7843=>556,7844=>722,7845=>556,7846=>722,7847=>556,7848=>722,7849=>556,7850=>722,\n7851=>556,7852=>722,7853=>556,7854=>722,7855=>556,7856=>722,7857=>556,7858=>722,7859=>556,7860=>722,\n7861=>556,7862=>722,7863=>556,7864=>667,7865=>556,7866=>667,7867=>556,7868=>667,7869=>556,7870=>667,\n7871=>556,7872=>667,7873=>556,7874=>667,7875=>556,7876=>667,7877=>556,7878=>667,7879=>556,7880=>278,\n7881=>278,7882=>278,7883=>278,7884=>778,7885=>611,7886=>778,7887=>611,7888=>778,7889=>611,7890=>778,\n7891=>611,7892=>778,7893=>611,7894=>778,7895=>611,7896=>778,7897=>611,7898=>778,7899=>611,7900=>778,\n7901=>611,7902=>778,7903=>611,7904=>778,7905=>611,7906=>778,7907=>611,7908=>722,7909=>611,7910=>722,\n7911=>611,7912=>722,7913=>611,7914=>722,7915=>611,7916=>722,7917=>611,7918=>722,7919=>611,7920=>722,\n7921=>611,7922=>667,7923=>556,7924=>667,7925=>556,7926=>667,7927=>556,7928=>667,7929=>556,7936=>656,\n7937=>656,7938=>656,7939=>656,7940=>656,7941=>656,7942=>656,7943=>656,7944=>764,7945=>764,7946=>916,\n7947=>940,7948=>908,7949=>891,7950=>844,7951=>869,7952=>570,7953=>570,7954=>570,7955=>570,7956=>570,\n7957=>570,7960=>842,7961=>836,7962=>1025,7963=>1051,7964=>1035,7965=>1049,7968=>586,7969=>586,7970=>586,\n7971=>586,7972=>586,7973=>586,7974=>586,7975=>586,7976=>891,7977=>886,7978=>1081,7979=>1108,7980=>1085,\n7981=>1096,7982=>1009,7983=>1023,7984=>346,7985=>346,7986=>346,7987=>346,7988=>346,7989=>346,7990=>346,\n7991=>346,7992=>467,7993=>476,7994=>631,7995=>661,7996=>631,7997=>633,7998=>568,7999=>571,8000=>610,\n8001=>610,8002=>610,8003=>610,8004=>610,8005=>610,8008=>945,8009=>905,8010=>1118,8011=>1121,8012=>1064,\n8013=>1062,8016=>575,8017=>575,8018=>575,8019=>575,8020=>575,8021=>575,8022=>575,8023=>575,8025=>964,\n8027=>1148,8029=>1162,8031=>1081,8032=>800,8033=>800,8034=>800,8035=>800,8036=>800,8037=>800,8038=>800,\n8039=>800,8040=>904,8041=>875,8042=>1092,8043=>1087,8044=>1003,8045=>1002,8046=>1001,8047=>1025,8048=>656,\n8049=>656,8050=>570,8051=>570,8052=>586,8053=>586,8054=>346,8055=>346,8056=>610,8057=>610,8058=>575,\n8059=>575,8060=>800,8061=>800,8064=>656,8065=>656,8066=>656,8067=>656,8068=>656,8069=>656,8070=>656,\n8071=>656,8072=>854,8073=>855,8074=>1006,8075=>1030,8076=>996,8077=>977,8078=>938,8079=>959,8080=>586,\n8081=>586,8082=>586,8083=>586,8084=>586,8085=>586,8086=>586,8087=>586,8088=>960,8089=>960,8090=>1155,\n8091=>1186,8092=>1161,8093=>1171,8094=>1087,8095=>1102,8096=>800,8097=>800,8098=>800,8099=>800,8100=>800,\n8101=>800,8102=>800,8103=>800,8104=>1005,8105=>980,8106=>1201,8107=>1192,8108=>1109,8109=>1108,8110=>1106,\n8111=>1130,8112=>656,8113=>656,8114=>656,8115=>656,8116=>640,8118=>656,8119=>656,8120=>764,8121=>764,\n8122=>764,8123=>764,8124=>854,8125=>278,8126=>201,8127=>147,8128=>278,8129=>333,8130=>586,8131=>586,\n8132=>597,8134=>586,8135=>586,8136=>911,8137=>925,8138=>941,8139=>948,8140=>826,8141=>402,8142=>403,\n8143=>147,8144=>346,8145=>346,8146=>346,8147=>346,8150=>346,8151=>346,8152=>296,8153=>296,8154=>511,\n8155=>521,8157=>434,8158=>433,8159=>333,8160=>575,8161=>575,8162=>575,8163=>575,8164=>626,8165=>626,\n8166=>575,8167=>575,8168=>744,8169=>744,8170=>901,8171=>975,8172=>837,8173=>353,8174=>351,8175=>303,\n8178=>800,8179=>800,8180=>800,8182=>800,8183=>800,8184=>979,8185=>918,8186=>936,8187=>877,8188=>895,\n8189=>333,8190=>159,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>556,\n8200=>278,8201=>200,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,\n8210=>556,8213=>1000,8214=>437,8215=>556,8219=>278,8223=>503,8227=>350,8228=>278,8229=>666,8231=>278,\n8232=>0,8233=>0,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>500,8241=>1372,8242=>238,\n8243=>426,8244=>614,8245=>238,8246=>379,8247=>571,8248=>450,8251=>622,8252=>666,8253=>617,8254=>556,\n8255=>658,8256=>658,8257=>438,8258=>840,8259=>400,8260=>167,8261=>334,8262=>334,8263=>1222,8264=>944,\n8265=>944,8266=>556,8267=>556,8268=>537,8269=>537,8270=>389,8271=>333,8272=>658,8273=>389,8274=>634,\n8275=>568,8276=>658,8277=>793,8278=>515,8279=>855,8280=>722,8281=>725,8282=>224,8283=>722,8284=>604,\n8285=>224,8286=>224,8287=>0,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8304=>351,8305=>351,\n8308=>351,8309=>351,8310=>351,8311=>351,8312=>351,8313=>351,8314=>351,8315=>351,8316=>351,8317=>351,\n8318=>351,8319=>351,8320=>351,8321=>251,8322=>351,8323=>351,8324=>351,8325=>351,8326=>351,8327=>351,\n8328=>351,8329=>351,8330=>350,8331=>350,8332=>350,8333=>350,8334=>350,8355=>611,8356=>576,8357=>833,\n8358=>724,8360=>1286,8362=>1049,8363=>571,8368=>594,8373=>591,8448=>985,8449=>1007,8451=>1020,8453=>981,\n8454=>1042,8455=>667,8457=>930,8465=>606,8468=>883,8470=>1006,8471=>784,8476=>699,8480=>1000,8481=>1230,\n8486=>780,8487=>780,8489=>286,8490=>722,8491=>722,8494=>556,8498=>626,8501=>714,8502=>651,8503=>557,\n8504=>638,8506=>906,8507=>1155,8513=>778,8514=>611,8515=>611,8516=>667,8523=>710,8525=>1072,8526=>500,\n8531=>869,8532=>869,8533=>869,8534=>869,8535=>869,8536=>869,8537=>869,8538=>869,8539=>869,8540=>869,\n8541=>869,8542=>869,8543=>869,8544=>278,8545=>556,8546=>834,8547=>945,8548=>667,8549=>945,8550=>1223,\n8551=>1501,8552=>945,8553=>667,8554=>945,8555=>1223,8556=>611,8557=>722,8558=>722,8559=>833,8560=>278,\n8561=>556,8562=>834,8563=>834,8564=>556,8565=>834,8566=>1112,8567=>1390,8568=>834,8569=>556,8570=>834,\n8571=>1112,8572=>278,8573=>556,8574=>611,8575=>889,8592=>964,8593=>964,8594=>964,8595=>964,8596=>964,\n8597=>964,8598=>964,8599=>964,8600=>964,8601=>964,8602=>964,8603=>964,8606=>964,8607=>964,8608=>964,\n8609=>964,8610=>964,8611=>964,8612=>964,8613=>964,8614=>964,8615=>964,8616=>964,8644=>964,8645=>964,\n8646=>964,8647=>964,8648=>964,8649=>964,8650=>964,8706=>608,8710=>729,8721=>856,8722=>584,8723=>584,\n8725=>1107,8730=>597,8800=>584,8804=>584,8805=>584,9251=>500,9674=>489,9824=>626,9825=>694,9826=>595,\n9827=>776,9828=>626,9829=>694,9830=>595,9831=>776,9833=>333,9834=>556,9835=>778,9836=>778,9837=>556,\n9838=>556,9839=>556,11799=>333,64256=>607,64257=>576,64258=>603,64259=>849,64260=>849,64275=>1243,64276=>1226,\n64277=>1233,64278=>1238,64279=>1448,64285=>284,64286=>305,64287=>542,64288=>653,64289=>964,64290=>888,64291=>932,\n64292=>845,64293=>917,64294=>933,64295=>850,64296=>1006,64297=>584,64298=>840,64299=>840,64300=>840,64301=>840,\n64302=>714,64303=>714,64304=>714,64305=>651,64306=>557,64307=>638,64308=>682,64309=>348,64310=>443,64312=>670,\n64313=>354,64314=>590,64315=>595,64316=>667,64318=>704,64320=>429,64321=>670,64323=>661,64324=>660,64326=>671,\n64327=>672,64328=>600,64329=>840,64330=>756,64331=>212,64332=>591,64333=>550,64334=>568,64335=>714,65533=>788);\n$enc='';\n$diff='';\n$file='freesansbi.z';\n$ctg='freesansbi.ctg.z';\n$originalsize=269952;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/freesansi.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='FreeSansOblique';\n$desc=array('Ascent'=>1000,'Descent'=>-300,'CapHeight'=>22,'Flags'=>96,'FontBBox'=>'[-898 -431 1572 1072]','ItalicAngle'=>-12,'StemV'=>70,'MissingWidth'=>600);\n$up=-176;\n$ut=50;\n$dw=600;\n$cw=array(\n32=>278,33=>278,34=>355,35=>556,36=>556,37=>889,38=>667,39=>191,40=>333,41=>333,\n42=>389,43=>584,44=>278,45=>333,46=>278,47=>278,48=>556,49=>556,50=>556,51=>556,\n52=>556,53=>556,54=>556,55=>556,56=>556,57=>556,58=>278,59=>278,60=>584,61=>584,\n62=>584,63=>556,64=>1015,65=>667,66=>667,67=>722,68=>722,69=>667,70=>611,71=>778,\n72=>722,73=>278,74=>500,75=>667,76=>556,77=>833,78=>722,79=>778,80=>667,81=>778,\n82=>722,83=>667,84=>611,85=>722,86=>667,87=>944,88=>667,89=>667,90=>611,91=>278,\n92=>278,93=>278,94=>469,95=>556,96=>333,97=>556,98=>556,99=>500,100=>556,101=>556,\n102=>278,103=>556,104=>556,105=>222,106=>222,107=>500,108=>222,109=>833,110=>556,111=>556,\n112=>556,113=>556,114=>333,115=>500,116=>278,117=>556,118=>500,119=>722,120=>500,121=>500,\n122=>500,123=>334,124=>260,125=>334,126=>584,8364=>655,8218=>222,402=>278,8222=>333,8230=>1000,\n8224=>556,8225=>556,710=>333,8240=>1000,352=>667,8249=>250,338=>1000,381=>611,8216=>222,8217=>222,\n8220=>333,8221=>333,8226=>350,8211=>556,8212=>1000,732=>333,8482=>1000,353=>500,8250=>250,339=>944,\n382=>500,376=>667,160=>278,161=>333,162=>556,163=>556,164=>556,165=>556,166=>260,167=>556,\n168=>333,169=>737,170=>370,171=>444,172=>584,173=>333,174=>737,175=>333,176=>606,177=>584,\n178=>352,179=>352,180=>333,181=>556,182=>537,183=>278,184=>333,185=>250,186=>365,187=>444,\n188=>947,189=>947,190=>947,191=>611,192=>667,193=>667,194=>667,195=>667,196=>667,197=>667,\n198=>1000,199=>722,200=>667,201=>667,202=>667,203=>667,204=>278,205=>278,206=>278,207=>278,\n208=>722,209=>722,210=>778,211=>778,212=>778,213=>778,214=>778,215=>584,216=>778,217=>722,\n218=>722,219=>722,220=>722,221=>667,222=>667,223=>611,224=>556,225=>556,226=>556,227=>556,\n228=>556,229=>556,230=>889,231=>500,232=>556,233=>556,234=>556,235=>556,236=>278,237=>278,\n238=>278,239=>278,240=>556,241=>556,242=>556,243=>556,244=>556,245=>556,246=>556,247=>584,\n248=>611,249=>556,250=>556,251=>556,252=>556,253=>500,254=>556,255=>500,256=>667,257=>556,\n258=>667,259=>556,260=>667,261=>556,262=>722,263=>500,264=>722,265=>500,266=>722,267=>500,\n268=>722,269=>500,270=>722,271=>722,272=>722,273=>556,274=>667,275=>556,276=>667,277=>556,\n278=>667,279=>556,280=>667,281=>556,282=>667,283=>556,284=>778,285=>556,286=>778,287=>556,\n288=>778,289=>556,290=>778,291=>527,292=>722,293=>556,294=>722,295=>556,296=>278,297=>278,\n298=>278,299=>278,300=>278,301=>278,302=>278,303=>222,304=>278,305=>278,306=>742,307=>362,\n308=>500,309=>222,310=>667,311=>500,312=>510,313=>556,314=>222,315=>556,316=>222,317=>556,\n318=>387,319=>556,320=>409,321=>556,322=>222,323=>722,324=>556,325=>722,326=>556,327=>722,\n328=>556,329=>722,330=>722,331=>556,332=>778,333=>556,334=>778,335=>556,336=>778,337=>556,\n340=>722,341=>333,342=>722,343=>333,344=>722,345=>333,346=>667,347=>500,348=>667,349=>500,\n350=>667,351=>500,354=>611,355=>278,356=>611,357=>443,358=>611,359=>278,360=>722,361=>556,\n362=>722,363=>556,364=>722,365=>556,366=>722,367=>556,368=>722,369=>556,370=>722,371=>556,\n372=>944,373=>722,374=>667,375=>500,377=>611,378=>500,379=>611,380=>500,383=>278,384=>556,\n385=>854,386=>667,387=>556,388=>667,389=>556,390=>722,391=>722,392=>500,393=>722,394=>899,\n395=>667,396=>556,397=>566,398=>667,399=>778,400=>667,401=>611,403=>778,404=>667,405=>889,\n406=>278,407=>333,408=>741,409=>500,410=>333,411=>560,412=>833,413=>722,414=>556,415=>778,\n416=>778,417=>556,418=>944,419=>722,420=>842,421=>556,422=>666,423=>667,424=>500,425=>611,\n426=>333,427=>278,428=>611,429=>278,430=>611,431=>722,432=>556,433=>768,434=>722,435=>788,\n436=>616,437=>611,438=>500,439=>611,440=>611,441=>500,442=>500,443=>556,446=>556,447=>556,\n448=>260,449=>520,450=>584,451=>278,452=>1311,453=>1208,454=>1056,455=>1056,456=>778,457=>444,\n458=>1158,459=>944,460=>778,461=>667,462=>556,463=>278,464=>278,465=>778,466=>556,467=>722,\n468=>556,469=>722,470=>556,471=>722,472=>556,473=>722,474=>556,475=>722,476=>556,477=>556,\n478=>667,479=>556,480=>667,481=>556,482=>1000,483=>889,484=>778,485=>556,486=>778,487=>556,\n488=>667,489=>500,490=>778,491=>556,492=>778,493=>556,494=>611,495=>500,496=>222,497=>1333,\n498=>1222,499=>1056,500=>778,501=>556,503=>630,504=>722,505=>556,506=>667,507=>556,508=>1000,\n509=>889,510=>778,511=>611,512=>667,513=>556,514=>667,515=>556,516=>667,517=>556,518=>667,\n519=>556,520=>278,521=>278,522=>278,523=>278,524=>778,525=>556,526=>778,527=>556,528=>722,\n529=>333,530=>722,531=>333,532=>722,533=>556,534=>722,535=>556,536=>667,537=>500,538=>611,\n539=>278,540=>521,541=>393,542=>722,543=>556,548=>611,549=>500,550=>667,551=>556,552=>667,\n553=>556,554=>778,555=>556,556=>778,557=>556,558=>778,559=>556,560=>778,561=>556,562=>667,\n563=>500,567=>222,592=>556,593=>556,594=>659,595=>556,596=>500,597=>500,598=>556,599=>556,\n600=>556,601=>556,602=>804,603=>500,604=>500,605=>742,606=>500,607=>222,608=>556,609=>556,\n610=>546,611=>621,612=>556,613=>556,614=>556,615=>556,616=>222,617=>222,618=>278,619=>473,\n620=>427,621=>222,622=>611,623=>833,624=>833,625=>833,626=>556,627=>556,628=>560,629=>556,\n630=>778,631=>722,632=>728,633=>333,634=>333,635=>393,636=>333,637=>333,638=>384,639=>369,\n640=>546,641=>546,642=>500,643=>278,644=>278,645=>278,646=>444,647=>278,648=>278,649=>556,\n650=>626,651=>539,652=>500,653=>722,654=>500,655=>556,656=>500,657=>500,658=>500,659=>552,\n660=>556,661=>556,662=>556,663=>1000,664=>556,665=>521,666=>500,667=>546,668=>500,669=>444,\n670=>500,671=>430,672=>556,673=>556,674=>556,675=>944,676=>944,677=>944,678=>689,679=>506,\n680=>764,681=>766,682=>660,683=>577,684=>476,685=>486,686=>565,687=>621,688=>500,689=>500,\n690=>167,691=>333,692=>333,693=>393,694=>500,695=>500,696=>330,697=>278,698=>454,699=>278,\n700=>278,701=>278,702=>333,703=>333,704=>333,705=>333,706=>333,707=>333,708=>333,709=>333,\n711=>333,712=>333,713=>333,714=>333,715=>333,716=>333,717=>333,718=>333,719=>333,720=>333,\n721=>333,722=>333,723=>333,724=>333,725=>333,726=>333,727=>333,728=>333,729=>333,730=>333,\n731=>333,733=>333,734=>333,735=>510,736=>333,737=>333,738=>333,739=>333,740=>334,741=>526,\n742=>526,743=>526,744=>526,745=>526,746=>519,747=>519,748=>333,749=>333,750=>333,751=>333,\n752=>383,753=>294,754=>294,755=>327,756=>261,757=>437,758=>437,759=>333,760=>278,761=>200,\n762=>200,763=>200,764=>200,765=>333,766=>333,767=>333,768=>0,769=>0,770=>0,771=>0,\n772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,\n782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,\n792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,\n802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,\n812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,\n822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,\n832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,\n842=>0,843=>0,844=>0,845=>0,846=>0,847=>0,848=>0,849=>0,850=>0,851=>0,\n852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,859=>0,860=>0,861=>0,\n862=>0,863=>0,864=>0,865=>0,866=>0,867=>0,868=>0,869=>0,870=>0,871=>0,\n872=>0,873=>0,874=>0,875=>0,876=>0,877=>0,878=>0,879=>0,884=>199,885=>199,\n890=>332,894=>278,900=>291,901=>624,902=>659,903=>278,904=>870,905=>870,906=>315,908=>876,\n910=>903,911=>882,912=>333,913=>765,914=>643,915=>589,916=>760,917=>659,918=>682,919=>707,\n920=>769,921=>256,922=>689,923=>765,924=>825,925=>687,926=>649,927=>766,928=>730,929=>649,\n931=>678,932=>655,933=>733,934=>753,935=>783,936=>773,937=>768,938=>285,939=>733,940=>593,\n941=>523,942=>595,943=>271,944=>549,945=>596,946=>534,947=>531,948=>566,949=>523,950=>470,\n951=>557,952=>547,953=>293,954=>516,955=>579,956=>571,957=>518,958=>499,959=>561,960=>636,\n961=>551,962=>564,963=>627,964=>505,965=>549,966=>715,967=>579,968=>662,969=>746,970=>335,\n971=>549,972=>535,973=>503,974=>725,977=>580,978=>742,979=>809,980=>620,981=>728,982=>740,\n983=>556,1008=>556,1009=>566,1012=>778,1013=>328,1024=>657,1025=>657,1026=>781,1027=>590,1028=>709,\n1029=>655,1030=>254,1031=>254,1032=>532,1033=>1002,1034=>1166,1035=>772,1036=>674,1037=>730,1038=>605,\n1039=>721,1040=>667,1041=>665,1042=>665,1043=>590,1044=>807,1045=>657,1046=>914,1047=>653,1048=>730,\n1049=>730,1050=>674,1051=>656,1052=>846,1053=>721,1054=>778,1055=>720,1056=>649,1057=>709,1058=>606,\n1059=>605,1060=>875,1061=>660,1062=>754,1063=>612,1064=>830,1065=>872,1066=>839,1067=>885,1068=>668,\n1069=>708,1070=>1099,1071=>676,1072=>556,1073=>545,1074=>521,1075=>375,1076=>572,1077=>538,1078=>815,\n1079=>488,1080=>557,1081=>557,1082=>519,1083=>508,1084=>618,1085=>558,1086=>533,1087=>557,1088=>569,\n1089=>511,1090=>392,1091=>469,1092=>922,1093=>475,1094=>588,1095=>482,1096=>693,1097=>722,1098=>644,\n1099=>731,1100=>521,1101=>509,1102=>790,1103=>550,1104=>538,1105=>538,1106=>566,1107=>375,1108=>506,\n1109=>488,1110=>224,1111=>272,1112=>226,1113=>793,1114=>849,1115=>576,1116=>519,1117=>557,1118=>469,\n1119=>557,1120=>942,1121=>693,1136=>749,1137=>666,1138=>785,1139=>528,1154=>456,1155=>0,1156=>0,\n1157=>0,1158=>0,1159=>0,1160=>0,1161=>0,1162=>751,1163=>588,1164=>685,1165=>554,1166=>656,\n1167=>606,1168=>598,1169=>396,1170=>611,1171=>409,1172=>592,1173=>448,1174=>921,1175=>826,1176=>657,\n1177=>493,1178=>680,1179=>529,1180=>678,1181=>524,1182=>695,1183=>528,1184=>846,1185=>650,1186=>741,\n1187=>578,1188=>992,1189=>700,1190=>1047,1191=>778,1192=>687,1193=>507,1194=>709,1195=>509,1196=>611,\n1197=>393,1198=>664,1199=>580,1200=>668,1201=>617,1202=>664,1203=>489,1204=>905,1205=>662,1206=>631,\n1207=>498,1208=>597,1209=>472,1210=>597,1211=>471,1212=>927,1213=>716,1214=>927,1215=>716,1216=>254,\n1217=>915,1218=>815,1219=>665,1220=>510,1221=>678,1222=>533,1223=>721,1224=>558,1225=>751,1226=>589,\n1227=>599,1228=>472,1229=>876,1230=>649,1231=>254,1232=>667,1233=>552,1234=>667,1235=>552,1236=>1000,\n1237=>889,1238=>657,1239=>538,1240=>722,1241=>511,1242=>722,1243=>511,1244=>914,1245=>815,1246=>653,\n1247=>488,1248=>611,1249=>546,1250=>730,1251=>557,1252=>730,1253=>557,1254=>774,1255=>529,1256=>785,\n1257=>528,1258=>785,1259=>528,1260=>708,1261=>509,1262=>605,1263=>469,1264=>605,1265=>469,1266=>605,\n1267=>469,1268=>612,1269=>482,1270=>601,1271=>430,1272=>885,1273=>731,1296=>667,1297=>500,1298=>673,\n1299=>557,1306=>778,1307=>556,1308=>944,1309=>722,1310=>667,1311=>510,1329=>722,1330=>705,1331=>774,\n1332=>754,1333=>722,1334=>751,1335=>485,1336=>722,1337=>782,1338=>655,1339=>699,1340=>417,1341=>853,\n1342=>791,1343=>711,1344=>588,1345=>663,1346=>665,1347=>665,1348=>756,1349=>623,1350=>773,1351=>603,\n1352=>722,1353=>648,1354=>722,1355=>751,1356=>750,1357=>722,1358=>748,1359=>667,1360=>699,1361=>623,\n1362=>417,1363=>785,1364=>638,1365=>778,1366=>716,1369=>333,1370=>222,1371=>133,1372=>325,1373=>333,\n1374=>333,1375=>333,1377=>833,1378=>556,1379=>572,1380=>581,1381=>546,1382=>588,1383=>448,1384=>556,\n1385=>568,1386=>582,1387=>552,1388=>301,1389=>799,1390=>556,1391=>554,1392=>533,1393=>548,1394=>552,\n1395=>552,1396=>544,1397=>222,1398=>544,1399=>456,1400=>556,1401=>390,1402=>833,1403=>509,1404=>547,\n1405=>533,1406=>610,1407=>887,1408=>556,1409=>545,1410=>301,1411=>853,1412=>632,1413=>579,1414=>690,\n1415=>545,1417=>278,1418=>367,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,\n1463=>0,1464=>0,1465=>0,1467=>0,1468=>0,1469=>0,1470=>488,1471=>0,1472=>212,1473=>0,\n1474=>0,1475=>278,1476=>0,1488=>640,1489=>591,1490=>466,1491=>598,1492=>622,1493=>212,1494=>351,\n1495=>623,1496=>608,1497=>200,1498=>526,1499=>550,1500=>600,1501=>623,1502=>621,1503=>212,1504=>378,\n1505=>607,1506=>587,1507=>575,1508=>568,1509=>540,1510=>590,1511=>606,1512=>547,1513=>776,1514=>687,\n1520=>424,1521=>412,1522=>400,1523=>184,1524=>344,2433=>0,2434=>300,2435=>264,2437=>594,2438=>790,\n2439=>469,2440=>513,2441=>520,2442=>549,2443=>594,2444=>481,2447=>580,2448=>627,2451=>540,2452=>613,\n2453=>570,2454=>467,2455=>471,2456=>428,2457=>483,2458=>408,2459=>509,2460=>591,2461=>563,2462=>771,\n2463=>381,2464=>404,2465=>522,2466=>408,2467=>450,2468=>543,2469=>477,2470=>418,2471=>433,2472=>445,\n2474=>499,2475=>584,2476=>377,2477=>555,2478=>448,2479=>423,2480=>390,2482=>498,2486=>498,2487=>425,\n2488=>495,2489=>440,2492=>22,2493=>440,2494=>193,2495=>189,2496=>180,2497=>0,2498=>0,2499=>0,\n2500=>0,2503=>252,2504=>243,2507=>889,2508=>865,2509=>0,2510=>356,2519=>219,2524=>523,2525=>408,\n2527=>428,2528=>594,2529=>481,2530=>0,2531=>0,2534=>500,2535=>437,2536=>479,2537=>530,2538=>497,\n2539=>500,2540=>482,2541=>503,2542=>517,2543=>481,2544=>377,2545=>377,2546=>429,2547=>383,2548=>429,\n2549=>478,2550=>545,2551=>158,2552=>365,2553=>280,2554=>357,4256=>587,4257=>620,4258=>642,4259=>815,\n4260=>600,4261=>595,4262=>799,4263=>893,4264=>622,4265=>597,4266=>939,4267=>602,4268=>603,4269=>790,\n4270=>587,4271=>623,4272=>799,4273=>601,4274=>792,4275=>724,4276=>847,4277=>599,4278=>812,4279=>603,\n4280=>653,4281=>590,4282=>754,4283=>596,4284=>653,4285=>651,4286=>596,4287=>888,4288=>593,4304=>436,\n4305=>491,4306=>528,4307=>692,4308=>447,4309=>447,4310=>628,4311=>734,4312=>449,4313=>445,4314=>843,\n4315=>449,4316=>449,4317=>682,4318=>449,4319=>480,4320=>682,4321=>468,4322=>710,4323=>623,4324=>697,\n4325=>447,4326=>702,4327=>447,4328=>470,4329=>440,4330=>632,4331=>449,4332=>470,4333=>536,4334=>449,\n4335=>656,4336=>474,4337=>630,4338=>394,4339=>419,4340=>422,4341=>436,4345=>528,4347=>515,7680=>667,\n7681=>556,7682=>667,7683=>556,7684=>667,7685=>556,7686=>667,7687=>556,7688=>722,7689=>500,7690=>722,\n7691=>556,7692=>722,7693=>556,7694=>722,7695=>556,7696=>722,7697=>556,7698=>722,7699=>556,7700=>667,\n7701=>556,7702=>667,7703=>556,7704=>667,7705=>556,7706=>667,7707=>556,7708=>667,7709=>556,7710=>611,\n7711=>278,7712=>778,7713=>556,7714=>722,7715=>556,7716=>722,7717=>556,7718=>722,7719=>556,7720=>722,\n7721=>556,7722=>722,7723=>556,7724=>278,7725=>222,7726=>278,7727=>278,7728=>667,7729=>500,7730=>667,\n7731=>500,7732=>667,7733=>500,7734=>556,7735=>222,7736=>556,7737=>222,7738=>556,7739=>222,7740=>556,\n7741=>222,7742=>833,7743=>833,7744=>833,7745=>833,7746=>833,7747=>833,7748=>722,7749=>556,7750=>722,\n7751=>556,7752=>722,7753=>556,7754=>722,7755=>556,7756=>778,7757=>556,7758=>778,7759=>556,7760=>778,\n7761=>556,7762=>778,7763=>556,7764=>667,7765=>556,7766=>667,7767=>556,7768=>722,7769=>333,7770=>722,\n7771=>333,7772=>722,7773=>333,7774=>722,7775=>333,7776=>667,7777=>500,7778=>667,7779=>500,7780=>667,\n7781=>500,7782=>667,7783=>500,7784=>667,7785=>500,7786=>611,7787=>278,7788=>611,7789=>278,7790=>611,\n7791=>278,7792=>611,7793=>278,7794=>722,7795=>556,7796=>722,7797=>556,7798=>722,7799=>556,7800=>722,\n7801=>556,7802=>722,7803=>556,7804=>667,7805=>500,7806=>667,7807=>500,7808=>944,7809=>722,7810=>944,\n7811=>722,7812=>944,7813=>722,7814=>944,7815=>722,7816=>944,7817=>722,7818=>667,7819=>500,7820=>667,\n7821=>500,7822=>667,7823=>500,7824=>611,7825=>500,7826=>611,7827=>500,7828=>611,7829=>500,7830=>556,\n7831=>278,7832=>722,7833=>500,7834=>555,7835=>278,7840=>667,7841=>556,7842=>667,7843=>556,7844=>667,\n7845=>556,7846=>667,7847=>556,7848=>667,7849=>556,7850=>667,7851=>556,7852=>667,7853=>556,7854=>667,\n7855=>556,7856=>667,7857=>556,7858=>667,7859=>556,7860=>667,7861=>556,7862=>667,7863=>556,7864=>667,\n7865=>556,7866=>667,7867=>556,7868=>667,7869=>556,7870=>667,7871=>556,7872=>667,7873=>556,7874=>667,\n7875=>556,7876=>667,7877=>556,7878=>667,7879=>556,7880=>278,7881=>278,7882=>278,7883=>222,7884=>778,\n7885=>556,7886=>778,7887=>556,7888=>778,7889=>556,7890=>778,7891=>556,7892=>778,7893=>556,7894=>778,\n7895=>556,7896=>778,7897=>556,7898=>778,7899=>556,7900=>778,7901=>556,7902=>778,7903=>556,7904=>778,\n7905=>556,7906=>778,7907=>556,7908=>722,7909=>556,7910=>722,7911=>556,7912=>722,7913=>556,7914=>722,\n7915=>556,7916=>722,7917=>556,7918=>722,7919=>556,7920=>722,7921=>556,7922=>667,7923=>500,7924=>667,\n7925=>500,7926=>667,7927=>500,7928=>667,7929=>500,7936=>596,7937=>596,7938=>596,7939=>596,7940=>596,\n7941=>596,7942=>596,7943=>596,7944=>718,7945=>718,7946=>796,7947=>780,7948=>746,7949=>744,7950=>718,\n7951=>718,7952=>523,7953=>523,7954=>523,7955=>523,7956=>523,7957=>523,7960=>759,7961=>751,7962=>962,\n7963=>957,7964=>958,7965=>947,7968=>557,7969=>557,7970=>557,7971=>557,7972=>557,7973=>557,7974=>557,\n7975=>557,7976=>807,7977=>796,7978=>1013,7979=>1002,7980=>1009,7981=>1000,7982=>882,7983=>919,7984=>293,\n7985=>293,7986=>361,7987=>382,7988=>347,7989=>329,7990=>352,7991=>347,7992=>353,7993=>348,7994=>555,\n7995=>557,7996=>557,7997=>545,7998=>435,7999=>448,8000=>561,8001=>561,8002=>561,8003=>561,8004=>561,\n8005=>561,8008=>792,8009=>801,8010=>1031,8011=>1029,8012=>931,8013=>931,8016=>549,8017=>549,8018=>549,\n8019=>549,8020=>549,8021=>549,8022=>549,8023=>549,8025=>838,8027=>1004,8029=>1036,8031=>936,8032=>746,\n8033=>746,8034=>746,8035=>746,8036=>746,8037=>746,8038=>746,8039=>746,8040=>768,8041=>794,8042=>1003,\n8043=>1002,8044=>922,8045=>918,8046=>871,8047=>893,8048=>596,8049=>596,8050=>523,8051=>523,8052=>557,\n8053=>557,8054=>293,8055=>293,8056=>561,8057=>561,8058=>549,8059=>549,8060=>746,8061=>746,8064=>596,\n8065=>596,8066=>596,8067=>596,8068=>596,8069=>596,8070=>596,8071=>596,8072=>859,8073=>861,8074=>948,\n8075=>928,8076=>886,8077=>895,8078=>865,8079=>864,8080=>557,8081=>557,8082=>557,8083=>557,8084=>557,\n8085=>557,8086=>557,8087=>557,8088=>890,8089=>894,8090=>1092,8091=>1084,8092=>1095,8093=>1080,8094=>953,\n8095=>986,8096=>746,8097=>746,8098=>746,8099=>746,8100=>746,8101=>746,8102=>746,8103=>746,8104=>892,\n8105=>907,8106=>1113,8107=>1095,8108=>1034,8109=>1030,8110=>983,8111=>1002,8112=>596,8113=>596,8114=>596,\n8115=>596,8116=>593,8118=>596,8119=>596,8120=>765,8121=>765,8122=>765,8123=>765,8124=>861,8125=>147,\n8126=>201,8127=>147,8128=>278,8129=>333,8130=>557,8131=>557,8132=>595,8134=>557,8135=>557,8136=>835,\n8137=>849,8138=>895,8139=>861,8140=>786,8141=>602,8142=>601,8143=>333,8144=>335,8145=>322,8146=>357,\n8147=>336,8150=>340,8151=>320,8152=>300,8153=>298,8154=>439,8155=>408,8157=>434,8158=>433,8159=>333,\n8160=>549,8161=>549,8162=>549,8163=>549,8164=>551,8165=>551,8166=>549,8167=>549,8168=>733,8169=>733,\n8170=>794,8171=>832,8172=>739,8173=>333,8174=>624,8175=>303,8178=>746,8179=>746,8180=>725,8182=>746,\n8183=>746,8184=>889,8185=>828,8186=>836,8187=>811,8188=>867,8189=>333,8190=>159,8192=>500,8193=>1000,\n8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>556,8200=>278,8201=>200,8202=>100,8203=>0,\n8204=>0,8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,8210=>556,8213=>1000,8214=>312,8215=>567,\n8219=>221,8223=>333,8227=>350,8228=>278,8229=>666,8231=>278,8232=>0,8233=>0,8234=>0,8235=>0,\n8236=>0,8237=>0,8238=>0,8239=>500,8241=>1360,8242=>278,8243=>469,8244=>680,8245=>278,8246=>469,\n8247=>680,8248=>376,8251=>622,8252=>556,8253=>556,8254=>556,8255=>658,8256=>658,8257=>438,8258=>840,\n8259=>400,8260=>167,8261=>334,8262=>334,8263=>1112,8264=>834,8265=>834,8266=>556,8267=>537,8268=>537,\n8269=>537,8270=>389,8271=>278,8272=>658,8273=>389,8274=>634,8275=>500,8276=>658,8277=>1000,8278=>515,\n8279=>855,8280=>722,8281=>725,8282=>224,8283=>722,8284=>604,8285=>224,8286=>224,8287=>0,8288=>0,\n8289=>0,8290=>0,8291=>0,8292=>0,8304=>351,8305=>350,8308=>351,8309=>351,8310=>351,8311=>351,\n8312=>351,8313=>351,8314=>350,8315=>350,8316=>350,8317=>350,8318=>350,8319=>350,8320=>351,8321=>251,\n8322=>351,8323=>351,8324=>351,8325=>353,8326=>351,8327=>351,8328=>351,8329=>351,8330=>350,8331=>350,\n8332=>350,8333=>350,8334=>350,8353=>615,8354=>601,8355=>611,8356=>556,8357=>833,8358=>682,8359=>1205,\n8360=>1222,8361=>879,8362=>869,8363=>538,8365=>667,8366=>611,8368=>570,8369=>684,8370=>717,8371=>667,\n8372=>667,8373=>640,8400=>0,8401=>0,8402=>0,8403=>0,8406=>0,8407=>0,8411=>0,8412=>0,\n8413=>0,8414=>0,8415=>0,8416=>0,8417=>0,8421=>0,8422=>0,8423=>0,8424=>0,8425=>0,\n8426=>0,8427=>0,8428=>0,8429=>0,8430=>0,8431=>0,8432=>0,8448=>970,8449=>979,8451=>1019,\n8452=>556,8453=>876,8454=>922,8455=>667,8457=>867,8459=>969,8460=>615,8462=>556,8463=>572,8464=>809,\n8465=>606,8466=>874,8468=>747,8470=>934,8471=>737,8472=>600,8475=>850,8476=>699,8480=>1000,8481=>1220,\n8486=>768,8487=>744,8488=>512,8489=>286,8490=>722,8491=>722,8492=>908,8493=>623,8494=>556,8496=>562,\n8498=>556,8499=>1080,8501=>520,8502=>591,8503=>456,8504=>598,8506=>843,8507=>1220,8513=>778,8514=>556,\n8515=>556,8516=>667,8522=>516,8523=>640,8525=>936,8526=>477,8531=>869,8532=>869,8533=>869,8534=>869,\n8535=>869,8536=>869,8537=>869,8538=>869,8539=>869,8540=>869,8541=>869,8542=>869,8543=>869,8544=>278,\n8545=>556,8546=>834,8547=>945,8548=>667,8549=>945,8550=>1223,8551=>1501,8552=>945,8553=>667,8554=>945,\n8555=>1223,8556=>556,8557=>722,8558=>722,8559=>833,8560=>222,8561=>444,8562=>666,8563=>722,8564=>500,\n8565=>722,8566=>944,8567=>1166,8568=>722,8569=>500,8570=>722,8571=>944,8572=>222,8573=>500,8574=>556,\n8575=>833,8592=>987,8593=>603,8594=>987,8595=>603,8596=>1042,8597=>1042,8706=>556,8710=>712,8721=>804,\n8722=>584,8725=>947,8730=>542,8739=>200,8741=>312,8800=>584,8804=>584,8805=>584,9251=>500,9674=>489,\n9824=>626,9825=>694,9826=>595,9827=>776,9828=>626,9829=>694,9830=>595,9831=>776,9833=>333,9834=>556,\n9835=>722,9836=>722,9837=>415,9838=>377,9839=>402,11799=>333,64256=>494,64257=>471,64258=>474,64259=>659,\n64260=>654,64261=>530,64275=>1027,64276=>1056,64277=>1058,64278=>1073,64279=>1301,64285=>200,64286=>305,64287=>400,\n64288=>587,64289=>890,64290=>848,64291=>872,64292=>800,64293=>850,64294=>873,64295=>797,64296=>937,64297=>584,\n64298=>776,64299=>776,64300=>776,64301=>776,64302=>640,64303=>640,64304=>640,64305=>591,64306=>466,64307=>598,\n64308=>622,64309=>262,64310=>351,64312=>608,64313=>270,64314=>526,64315=>550,64316=>600,64318=>621,64320=>378,\n64321=>607,64323=>575,64324=>568,64326=>590,64327=>606,64328=>547,64329=>776,64330=>687,64331=>212,64332=>591,\n64333=>550,64334=>568,64335=>640,65533=>788);\n$enc='';\n$diff='';\n$file='freesansi.z';\n$ctg='freesansi.ctg.z';\n$originalsize=410728;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/freeserif.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='FreeSerif';\n$desc=array('Ascent'=>900,'Descent'=>-300,'CapHeight'=>10,'Flags'=>96,'FontBBox'=>'[-879 -1201 1767 2606]','ItalicAngle'=>-33.2,'StemV'=>70,'MissingWidth'=>600);\n$up=-125;\n$ut=50;\n$dw=600;\n$cw=array(\n32=>250,33=>333,34=>408,35=>500,36=>500,37=>833,38=>778,39=>180,40=>333,41=>333,\n42=>500,43=>564,44=>250,45=>333,46=>250,47=>278,48=>500,49=>500,50=>500,51=>500,\n52=>500,53=>500,54=>500,55=>500,56=>500,57=>500,58=>278,59=>278,60=>564,61=>564,\n62=>564,63=>444,64=>921,65=>722,66=>667,67=>667,68=>722,69=>611,70=>556,71=>722,\n72=>722,73=>333,74=>389,75=>722,76=>611,77=>889,78=>722,79=>722,80=>556,81=>722,\n82=>667,83=>556,84=>611,85=>722,86=>722,87=>944,88=>722,89=>722,90=>611,91=>333,\n92=>278,93=>333,94=>469,95=>500,96=>333,97=>444,98=>500,99=>444,100=>500,101=>444,\n102=>333,103=>500,104=>500,105=>278,106=>278,107=>500,108=>278,109=>778,110=>500,111=>500,\n112=>500,113=>500,114=>333,115=>389,116=>278,117=>500,118=>500,119=>722,120=>500,121=>500,\n122=>444,123=>480,124=>200,125=>480,126=>541,8364=>741,8218=>250,402=>333,8222=>444,8230=>1000,\n8224=>500,8225=>500,710=>333,8240=>1000,352=>556,8249=>250,338=>889,381=>611,8216=>250,8217=>250,\n8220=>444,8221=>444,8226=>350,8211=>500,8212=>1000,732=>333,8482=>980,353=>389,8250=>250,339=>722,\n382=>444,376=>722,160=>250,161=>333,162=>500,163=>500,164=>500,165=>500,166=>200,167=>500,\n168=>333,169=>760,170=>276,171=>444,172=>564,173=>333,174=>760,175=>333,176=>400,177=>564,\n178=>320,179=>320,180=>333,181=>500,182=>453,183=>250,184=>333,185=>320,186=>310,187=>441,\n188=>750,189=>750,190=>750,191=>444,192=>722,193=>722,194=>722,195=>722,196=>722,197=>722,\n198=>889,199=>667,200=>611,201=>611,202=>611,203=>611,204=>333,205=>333,206=>333,207=>333,\n208=>722,209=>722,210=>722,211=>722,212=>722,213=>722,214=>722,215=>564,216=>722,217=>722,\n218=>722,219=>722,220=>722,221=>722,222=>576,223=>500,224=>444,225=>444,226=>444,227=>444,\n228=>444,229=>444,230=>667,231=>444,232=>444,233=>444,234=>444,235=>444,236=>278,237=>278,\n238=>278,239=>278,240=>501,241=>500,242=>500,243=>500,244=>500,245=>500,246=>500,247=>564,\n248=>500,249=>500,250=>500,251=>500,252=>500,253=>500,254=>496,255=>500,256=>722,257=>444,\n258=>722,259=>444,260=>722,261=>444,262=>667,263=>444,264=>667,265=>444,266=>667,267=>444,\n268=>667,269=>444,270=>722,271=>600,272=>722,273=>500,274=>611,275=>444,276=>611,277=>444,\n278=>611,279=>444,280=>611,281=>444,282=>611,283=>444,284=>722,285=>500,286=>722,287=>500,\n288=>722,289=>500,290=>722,291=>500,292=>722,293=>500,294=>722,295=>548,296=>333,297=>278,\n298=>333,299=>278,300=>333,301=>278,302=>333,303=>278,304=>333,305=>278,306=>703,307=>529,\n308=>389,309=>278,310=>722,311=>500,312=>500,313=>611,314=>278,315=>611,316=>278,317=>611,\n318=>348,319=>611,320=>444,321=>611,322=>278,323=>722,324=>500,325=>722,326=>500,327=>722,\n328=>500,329=>556,330=>722,331=>500,332=>722,333=>500,334=>722,335=>500,336=>722,337=>500,\n340=>667,341=>333,342=>667,343=>333,344=>667,345=>333,346=>556,347=>389,348=>556,349=>389,\n350=>556,351=>389,354=>611,355=>278,356=>611,357=>278,358=>611,359=>278,360=>722,361=>500,\n362=>722,363=>500,364=>722,365=>500,366=>722,367=>500,368=>722,369=>500,370=>722,371=>500,\n372=>944,373=>722,374=>722,375=>500,377=>611,378=>444,379=>611,380=>444,383=>333,384=>500,\n385=>667,386=>576,387=>500,388=>646,389=>500,390=>667,391=>667,392=>444,393=>722,394=>722,\n395=>646,396=>500,397=>534,398=>611,399=>722,400=>518,401=>556,403=>722,404=>665,405=>729,\n406=>333,407=>333,408=>810,409=>500,410=>278,411=>480,412=>944,413=>722,414=>500,415=>726,\n416=>722,417=>516,418=>1043,419=>778,420=>556,421=>500,422=>667,423=>556,424=>389,425=>627,\n426=>592,427=>278,428=>611,429=>278,430=>611,431=>800,432=>518,433=>743,434=>722,435=>822,\n436=>667,437=>611,438=>444,439=>530,440=>556,441=>389,442=>394,443=>500,444=>615,445=>439,\n446=>421,447=>500,448=>200,449=>400,450=>600,451=>333,452=>1333,453=>1166,454=>944,455=>1000,\n456=>889,457=>556,458=>1111,459=>1000,460=>778,461=>722,462=>444,463=>333,464=>278,465=>722,\n466=>500,467=>722,468=>500,469=>722,470=>500,471=>722,472=>500,473=>722,474=>500,475=>722,\n476=>500,477=>444,478=>722,479=>444,480=>722,481=>444,482=>889,483=>667,484=>722,485=>500,\n486=>722,487=>500,488=>722,489=>500,490=>722,491=>500,492=>722,493=>500,494=>530,495=>389,\n496=>278,497=>1333,498=>1166,499=>944,500=>722,501=>500,502=>944,503=>522,504=>722,505=>500,\n506=>722,507=>444,508=>889,509=>667,510=>722,511=>500,512=>722,513=>444,514=>722,515=>444,\n516=>611,517=>444,518=>611,519=>444,520=>333,521=>278,522=>333,523=>278,524=>722,525=>500,\n526=>722,527=>500,528=>667,529=>333,530=>667,531=>333,532=>500,533=>500,534=>722,535=>500,\n536=>556,537=>389,538=>611,539=>278,540=>424,541=>455,542=>722,543=>500,544=>715,545=>588,\n546=>565,547=>468,548=>611,549=>444,550=>722,551=>444,552=>611,553=>444,554=>722,555=>500,\n556=>722,557=>500,558=>722,559=>500,560=>722,561=>500,562=>722,563=>500,564=>407,565=>597,\n566=>379,567=>278,568=>771,569=>760,570=>722,571=>667,572=>444,573=>611,574=>611,575=>389,\n576=>444,577=>444,578=>444,579=>667,580=>722,581=>722,582=>611,583=>444,584=>389,585=>278,\n586=>796,587=>590,588=>667,589=>333,590=>722,591=>500,592=>444,593=>500,594=>507,595=>500,\n596=>444,597=>444,598=>500,599=>500,600=>444,601=>444,602=>722,603=>426,604=>426,605=>674,\n606=>454,607=>278,608=>500,609=>500,610=>484,611=>500,612=>582,613=>500,614=>500,615=>500,\n616=>278,617=>278,618=>278,619=>278,620=>278,621=>278,622=>556,623=>778,624=>778,625=>778,\n626=>500,627=>500,628=>500,629=>491,630=>668,631=>693,632=>640,633=>333,634=>333,635=>333,\n636=>333,637=>333,638=>333,639=>333,640=>446,641=>446,642=>389,643=>333,644=>500,645=>333,\n646=>500,647=>278,648=>278,649=>500,650=>517,651=>514,652=>500,653=>722,654=>500,655=>510,\n656=>524,657=>444,658=>389,659=>456,660=>444,661=>444,662=>444,663=>444,664=>722,665=>468,\n666=>454,667=>665,668=>524,669=>347,670=>500,671=>443,672=>500,673=>444,674=>444,675=>798,\n676=>795,677=>805,678=>554,679=>561,680=>678,681=>722,682=>554,683=>554,684=>500,685=>500,\n686=>611,687=>611,688=>300,689=>300,690=>278,691=>278,692=>278,693=>309,694=>306,695=>432,\n696=>310,697=>250,698=>408,699=>333,700=>333,701=>333,702=>333,703=>333,704=>258,705=>258,\n706=>374,707=>374,708=>383,709=>383,711=>333,712=>250,713=>333,714=>333,715=>333,716=>250,\n717=>333,718=>333,719=>333,720=>278,721=>278,722=>333,723=>333,724=>333,725=>333,726=>333,\n727=>333,728=>333,729=>333,730=>333,731=>333,733=>382,734=>336,735=>352,736=>311,737=>200,\n738=>243,739=>328,740=>300,741=>460,742=>460,743=>460,744=>460,745=>460,746=>477,747=>475,\n748=>339,749=>333,750=>444,751=>383,752=>383,753=>294,754=>294,755=>327,756=>261,757=>437,\n758=>437,759=>333,760=>278,761=>175,762=>175,763=>175,764=>175,765=>337,766=>337,767=>326,\n768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,\n778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,\n788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,\n798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,\n808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,\n818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,\n828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,\n838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,844=>0,845=>0,846=>0,847=>0,\n848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,\n858=>0,859=>0,860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,867=>0,\n868=>0,869=>0,870=>0,871=>0,872=>0,873=>0,874=>0,875=>0,876=>0,877=>0,\n878=>0,879=>0,884=>199,885=>199,890=>332,894=>278,900=>267,901=>333,902=>722,903=>250,\n904=>800,905=>902,906=>507,908=>818,910=>861,911=>871,912=>286,913=>722,914=>667,915=>586,\n916=>660,917=>611,918=>611,919=>722,920=>726,921=>333,922=>722,923=>722,924=>889,925=>722,\n926=>628,927=>722,928=>722,929=>556,931=>627,932=>611,933=>696,934=>742,935=>722,936=>808,\n937=>743,938=>333,939=>718,940=>583,941=>426,942=>536,943=>286,944=>514,945=>583,946=>527,\n947=>480,948=>534,949=>426,950=>466,951=>536,952=>534,953=>286,954=>544,955=>476,956=>536,\n957=>480,958=>514,959=>500,960=>587,961=>528,962=>452,963=>537,964=>420,965=>514,966=>643,\n967=>480,968=>693,969=>693,970=>286,971=>514,972=>500,973=>514,974=>693,976=>534,977=>587,\n978=>620,979=>809,980=>620,981=>640,982=>684,983=>534,984=>556,985=>500,986=>594,987=>426,\n988=>556,989=>445,990=>656,991=>400,992=>722,993=>570,994=>960,995=>673,996=>581,997=>429,\n998=>560,999=>407,1000=>450,1001=>321,1002=>842,1003=>593,1004=>564,1005=>413,1006=>618,1007=>438,\n1008=>534,1009=>534,1010=>485,1011=>278,1012=>726,1013=>361,1014=>361,1015=>576,1016=>542,1017=>667,\n1018=>889,1019=>709,1020=>534,1021=>667,1022=>1000,1023=>1000,1024=>615,1025=>613,1026=>748,1027=>570,\n1028=>659,1029=>487,1030=>329,1031=>329,1032=>381,1033=>943,1034=>985,1035=>827,1036=>669,1037=>723,\n1038=>709,1039=>723,1040=>711,1041=>576,1042=>626,1043=>570,1044=>639,1045=>613,1046=>937,1047=>580,\n1048=>723,1049=>723,1050=>669,1051=>684,1052=>891,1053=>723,1054=>722,1055=>723,1056=>576,1057=>659,\n1058=>608,1059=>709,1060=>750,1061=>714,1062=>728,1063=>682,1064=>984,1065=>988,1066=>725,1067=>863,\n1068=>576,1069=>659,1070=>966,1071=>648,1072=>434,1073=>495,1074=>468,1075=>386,1076=>488,1077=>436,\n1078=>662,1079=>404,1080=>524,1081=>524,1082=>498,1083=>490,1084=>632,1085=>524,1086=>491,1087=>524,\n1088=>500,1089=>422,1090=>422,1091=>471,1092=>694,1093=>482,1094=>522,1095=>506,1096=>756,1097=>754,\n1098=>503,1099=>626,1100=>431,1101=>430,1102=>664,1103=>492,1104=>434,1105=>434,1106=>479,1107=>386,\n1108=>430,1109=>347,1110=>269,1111=>278,1112=>278,1113=>677,1114=>711,1115=>514,1116=>498,1117=>524,\n1118=>471,1119=>524,1120=>978,1121=>664,1122=>718,1123=>506,1124=>939,1125=>647,1126=>912,1127=>643,\n1128=>1248,1129=>894,1130=>948,1131=>662,1132=>1299,1133=>911,1134=>516,1135=>391,1136=>870,1137=>694,\n1138=>726,1139=>491,1140=>780,1141=>550,1142=>780,1143=>550,1144=>1207,1145=>946,1146=>877,1147=>611,\n1148=>978,1149=>664,1150=>978,1151=>664,1152=>594,1153=>428,1154=>232,1155=>0,1156=>0,1157=>0,\n1158=>0,1159=>0,1160=>0,1161=>0,1162=>715,1163=>522,1164=>562,1165=>430,1166=>556,1167=>511,\n1168=>564,1169=>398,1170=>586,1171=>402,1172=>573,1173=>463,1174=>1001,1175=>688,1176=>580,1177=>414,\n1178=>698,1179=>517,1180=>734,1181=>537,1182=>671,1183=>498,1184=>842,1185=>573,1186=>732,1187=>524,\n1188=>926,1189=>652,1190=>1014,1191=>721,1192=>671,1193=>531,1194=>667,1195=>437,1196=>611,1197=>454,\n1198=>722,1199=>563,1200=>722,1201=>562,1202=>783,1203=>517,1204=>967,1205=>693,1206=>691,1207=>510,\n1208=>718,1209=>538,1210=>674,1211=>508,1212=>866,1213=>566,1214=>866,1215=>566,1216=>333,1217=>937,\n1218=>662,1219=>626,1220=>446,1221=>702,1222=>489,1223=>722,1224=>497,1225=>823,1226=>545,1227=>674,\n1228=>504,1229=>889,1230=>630,1231=>333,1232=>711,1233=>434,1234=>711,1235=>434,1236=>889,1237=>644,\n1238=>613,1239=>449,1240=>722,1241=>449,1242=>722,1243=>449,1244=>937,1245=>662,1246=>580,1247=>404,\n1248=>530,1249=>366,1250=>723,1251=>524,1252=>723,1253=>524,1254=>722,1255=>491,1256=>722,1257=>491,\n1258=>722,1259=>491,1260=>659,1261=>430,1262=>709,1263=>471,1264=>709,1265=>471,1266=>709,1267=>471,\n1268=>682,1269=>506,1270=>564,1271=>388,1272=>863,1273=>626,1274=>556,1275=>388,1276=>720,1277=>445,\n1278=>722,1279=>495,1280=>556,1281=>504,1282=>900,1283=>634,1284=>553,1285=>471,1286=>803,1287=>518,\n1288=>964,1289=>637,1290=>968,1291=>682,1292=>722,1293=>433,1294=>710,1295=>504,1296=>532,1297=>409,\n1298=>702,1299=>489,1300=>960,1301=>644,1302=>823,1303=>702,1304=>961,1305=>766,1306=>722,1307=>504,\n1308=>944,1309=>693,1310=>690,1311=>502,1312=>994,1313=>695,1314=>1011,1315=>727,1425=>0,1426=>0,\n1427=>0,1428=>0,1429=>0,1430=>0,1431=>418,1432=>0,1433=>0,1434=>0,1435=>0,1436=>0,\n1437=>0,1438=>0,1439=>0,1440=>0,1441=>0,1442=>0,1443=>0,1444=>0,1445=>0,1446=>0,\n1447=>0,1448=>0,1449=>0,1450=>0,1451=>0,1452=>0,1453=>0,1454=>0,1455=>0,1456=>0,\n1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1466=>0,\n1467=>0,1468=>0,1469=>0,1470=>440,1471=>0,1472=>126,1473=>0,1474=>0,1475=>418,1476=>0,\n1477=>0,1478=>350,1479=>0,1488=>537,1489=>537,1490=>350,1491=>537,1492=>537,1493=>350,1494=>350,\n1495=>537,1496=>537,1497=>350,1498=>537,1499=>537,1500=>537,1501=>537,1502=>537,1503=>350,1504=>350,\n1505=>537,1506=>537,1507=>537,1508=>537,1509=>537,1510=>537,1511=>537,1512=>537,1513=>537,1514=>537,\n1520=>537,1521=>537,1522=>537,1523=>396,1524=>396,1548=>226,1563=>250,1567=>473,1569=>350,1570=>321,\n1571=>249,1572=>399,1573=>249,1574=>776,1575=>249,1576=>950,1577=>424,1578=>925,1579=>924,1580=>738,\n1581=>748,1582=>701,1583=>397,1584=>399,1585=>328,1586=>331,1587=>951,1588=>949,1589=>949,1590=>949,\n1591=>557,1592=>550,1593=>625,1594=>602,1601=>801,1602=>696,1603=>757,1604=>655,1605=>549,1606=>651,\n1607=>424,1608=>399,1609=>776,1610=>776,1611=>0,1613=>0,1614=>0,1615=>0,1616=>0,1617=>0,\n1618=>0,1619=>0,1620=>0,1621=>0,1632=>297,1633=>254,1634=>427,1635=>497,1636=>440,1637=>465,\n1638=>466,1639=>421,1640=>459,1641=>424,1643=>212,1652=>300,1662=>926,1670=>750,1688=>338,1711=>874,\n1740=>776,1748=>176,1920=>450,1921=>501,1922=>582,1923=>544,1924=>482,1925=>433,1926=>448,1927=>462,\n1928=>474,1929=>471,1930=>469,1931=>537,1932=>499,1933=>514,1934=>471,1935=>572,1936=>880,1937=>440,\n1938=>476,1939=>594,1940=>469,1941=>448,1942=>441,1943=>519,1944=>573,1945=>459,1946=>447,1947=>496,\n1948=>541,1949=>887,1950=>883,1951=>964,1952=>558,1953=>505,1954=>471,1955=>554,1956=>459,1957=>486,\n1958=>36,1959=>36,1960=>43,1961=>45,1962=>43,1963=>45,1964=>45,1965=>45,1966=>45,1967=>45,\n1968=>0,2305=>415,2306=>398,2307=>398,2309=>862,2310=>1042,2311=>553,2312=>553,2313=>597,2314=>848,\n2315=>967,2316=>828,2317=>654,2319=>654,2321=>1042,2323=>1042,2324=>1042,2325=>743,2326=>798,2327=>694,\n2328=>694,2329=>730,2330=>734,2331=>888,2332=>814,2333=>834,2334=>734,2335=>629,2336=>629,2337=>653,\n2338=>609,2339=>694,2340=>654,2341=>694,2342=>588,2343=>694,2344=>654,2345=>654,2346=>615,2347=>788,\n2348=>621,2349=>694,2350=>694,2351=>694,2352=>575,2353=>575,2354=>787,2355=>848,2356=>848,2357=>621,\n2359=>615,2360=>734,2361=>609,2364=>398,2365=>569,2366=>341,2367=>341,2368=>341,2369=>0,2370=>0,\n2371=>0,2372=>0,2373=>415,2375=>615,2376=>615,2377=>341,2379=>341,2380=>341,2381=>0,2384=>1047,\n2392=>743,2393=>798,2394=>694,2395=>814,2396=>653,2397=>609,2398=>788,2400=>967,2401=>828,2402=>0,\n2403=>0,2404=>398,2405=>478,2406=>455,2407=>420,2408=>569,2409=>509,2410=>702,2411=>629,2412=>569,\n2413=>702,2414=>609,2415=>609,2416=>626,2433=>0,2434=>300,2435=>312,2437=>594,2438=>776,2439=>469,\n2440=>513,2441=>535,2442=>561,2443=>604,2444=>481,2447=>580,2448=>604,2451=>540,2452=>620,2453=>570,\n2454=>485,2455=>484,2456=>471,2457=>457,2458=>408,2459=>452,2460=>591,2461=>551,2462=>771,2463=>414,\n2464=>404,2465=>522,2466=>415,2467=>450,2468=>551,2469=>477,2470=>478,2471=>449,2472=>448,2474=>535,\n2475=>611,2476=>443,2477=>534,2478=>492,2479=>474,2480=>442,2482=>542,2486=>507,2487=>467,2488=>523,\n2489=>419,2492=>0,2493=>419,2494=>202,2495=>189,2496=>202,2497=>0,2498=>0,2499=>0,2500=>0,\n2503=>294,2504=>289,2507=>774,2508=>825,2509=>0,2510=>356,2519=>219,2524=>523,2525=>420,2527=>469,\n2528=>604,2529=>481,2530=>0,2531=>0,2534=>500,2535=>437,2536=>479,2537=>507,2538=>497,2539=>500,\n2540=>482,2541=>503,2542=>517,2543=>481,2544=>443,2545=>443,2546=>429,2547=>383,2548=>432,2549=>478,\n2550=>539,2551=>158,2552=>365,2553=>280,2554=>357,2561=>0,2562=>0,2563=>385,2565=>728,2566=>884,\n2567=>656,2568=>656,2569=>580,2570=>580,2575=>482,2576=>728,2579=>580,2580=>728,2581=>534,2582=>518,\n2583=>602,2584=>674,2585=>530,2586=>502,2587=>576,2588=>476,2589=>558,2590=>501,2591=>510,2592=>540,\n2593=>508,2594=>512,2595=>558,2596=>468,2597=>518,2598=>488,2599=>518,2600=>522,2602=>518,2603=>490,\n2604=>546,2605=>500,2606=>530,2607=>654,2608=>522,2610=>710,2611=>710,2613=>498,2614=>530,2616=>530,\n2617=>501,2620=>286,2622=>156,2623=>174,2624=>174,2625=>0,2626=>0,2631=>0,2632=>0,2635=>0,\n2636=>0,2637=>0,2641=>0,2649=>534,2650=>618,2651=>492,2652=>484,2654=>506,2662=>616,2663=>480,\n2664=>560,2665=>480,2666=>468,2667=>492,2668=>514,2669=>538,2670=>572,2671=>560,2672=>0,2673=>0,\n2674=>498,2675=>596,2676=>900,2677=>0,2946=>345,2947=>616,2949=>910,2950=>1072,2951=>848,2952=>591,\n2953=>492,2954=>1123,2958=>602,2959=>602,2960=>691,2962=>753,2963=>753,2964=>1597,2965=>677,2969=>697,\n2970=>607,2972=>691,2974=>871,2975=>589,2979=>1230,2980=>688,2984=>560,2985=>911,2986=>477,2990=>625,\n2991=>672,2992=>452,2993=>553,2994=>651,2995=>804,2996=>645,2997=>740,2999=>865,3000=>870,3001=>1067,\n3006=>452,3007=>176,3008=>293,3009=>404,3010=>601,3014=>690,3015=>503,3016=>839,3018=>1188,3019=>982,\n3020=>1519,3021=>234,3031=>804,3330=>417,3331=>221,3333=>1055,3334=>1195,3335=>792,3336=>1467,3337=>569,\n3338=>1243,3339=>676,3340=>897,3342=>1008,3343=>1004,3344=>1538,3346=>585,3347=>981,3348=>1254,3349=>775,\n3350=>798,3351=>691,3352=>1095,3353=>809,3354=>726,3355=>963,3356=>703,3357=>1244,3358=>1103,3359=>462,\n3360=>531,3361=>983,3362=>1027,3363=>1102,3364=>779,3365=>731,3366=>485,3367=>737,3368=>747,3370=>779,\n3371=>961,3372=>1023,3373=>500,3374=>510,3375=>792,3376=>527,3377=>511,3378=>713,3379=>553,3380=>516,\n3381=>715,3382=>785,3383=>920,3384=>977,3385=>977,3389=>375,3390=>403,3391=>283,3392=>323,3393=>275,\n3394=>258,3395=>378,3396=>378,3398=>542,3399=>478,3400=>1069,3402=>1127,3403=>1038,3404=>676,3405=>89,\n3415=>676,3424=>676,3425=>1006,3430=>559,3431=>659,3432=>674,3433=>933,3434=>671,3435=>699,3436=>703,\n3437=>688,3438=>677,3439=>684,3440=>375,3458=>355,3459=>241,3461=>501,3465=>591,3466=>613,3467=>630,\n3473=>636,3476=>653,3481=>760,3482=>739,3483=>653,3484=>757,3486=>562,3488=>636,3489=>673,3490=>673,\n3492=>984,3493=>984,3495=>636,3496=>653,3497=>653,3498=>653,3499=>1066,3501=>739,3502=>636,3503=>501,\n3504=>653,3505=>739,3507=>501,3508=>673,3509=>636,3510=>653,3511=>739,3512=>636,3513=>653,3514=>673,\n3515=>613,3517=>630,3520=>636,3521=>739,3522=>673,3523=>673,3524=>739,3525=>630,3526=>739,3530=>0,\n3535=>328,3536=>288,3537=>319,3538=>0,3539=>0,3540=>0,3542=>0,3544=>380,3545=>495,3551=>492,\n3585=>532,3586=>472,3587=>534,3588=>532,3589=>544,3590=>583,3591=>417,3592=>488,3593=>604,3594=>472,\n3595=>534,3596=>716,3597=>717,3598=>568,3599=>568,3600=>457,3601=>637,3602=>731,3603=>790,3604=>531,\n3605=>542,3606=>522,3607=>577,3608=>468,3609=>603,3610=>554,3611=>554,3612=>556,3613=>556,3614=>604,\n3615=>604,3616=>568,3617=>542,3618=>496,3619=>442,3620=>530,3621=>512,3622=>568,3623=>478,3624=>543,\n3625=>614,3626=>525,3627=>578,3628=>659,3629=>514,3630=>514,3631=>450,3632=>402,3633=>0,3634=>378,\n3635=>415,3636=>0,3637=>0,3638=>0,3639=>0,3640=>0,3641=>0,3642=>0,3647=>620,3648=>286,\n3649=>521,3650=>447,3651=>426,3652=>424,3653=>333,3654=>453,3655=>0,3656=>0,3657=>0,3658=>0,\n3659=>0,3660=>0,3661=>0,3662=>0,3663=>657,3664=>528,3665=>528,3666=>571,3667=>594,3668=>631,\n3669=>632,3670=>478,3671=>713,3672=>597,3673=>565,3674=>615,3675=>1381,4256=>453,4257=>448,4258=>546,\n4259=>619,4260=>478,4261=>481,4262=>459,4263=>707,4264=>467,4265=>471,4266=>842,4267=>464,4268=>443,\n4269=>707,4270=>460,4271=>465,4272=>686,4273=>440,4274=>550,4275=>561,4276=>580,4277=>467,4278=>630,\n4279=>466,4280=>517,4281=>456,4282=>502,4283=>464,4284=>534,4285=>440,4286=>443,4287=>522,4288=>460,\n4289=>463,4290=>536,4291=>455,4292=>468,4293=>449,4304=>454,4305=>452,4306=>544,4307=>629,4308=>451,\n4309=>452,4310=>452,4311=>702,4312=>451,4313=>452,4314=>820,4315=>451,4316=>453,4317=>695,4318=>449,\n4319=>448,4320=>694,4321=>501,4322=>544,4323=>517,4324=>560,4325=>450,4326=>627,4327=>452,4328=>491,\n4329=>452,4330=>485,4331=>452,4332=>485,4333=>443,4334=>500,4335=>582,4336=>455,4337=>451,4338=>480,\n4339=>414,4340=>453,4341=>418,4345=>528,4347=>410,4608=>583,4609=>770,4610=>560,4611=>525,4612=>525,\n4613=>583,4614=>758,4616=>598,4617=>787,4618=>817,4619=>583,4620=>758,4621=>612,4622=>875,4623=>817,\n4624=>817,4625=>1050,4626=>1050,4627=>817,4628=>1050,4629=>817,4630=>787,4631=>1021,4632=>933,4633=>1137,\n4634=>1067,4635=>980,4636=>1065,4637=>962,4638=>962,4639=>1097,4640=>831,4641=>1021,4642=>851,4643=>735,\n4644=>875,4645=>968,4646=>817,4647=>881,4648=>583,4649=>642,4650=>583,4651=>758,4652=>700,4653=>583,\n4654=>700,4655=>758,4656=>583,4657=>787,4658=>787,4659=>583,4660=>729,4661=>583,4662=>583,4663=>817,\n4664=>642,4665=>817,4666=>846,4667=>642,4668=>758,4669=>744,4670=>642,4671=>817,4672=>700,4673=>700,\n4674=>700,4675=>758,4676=>700,4677=>700,4678=>729,4680=>846,4682=>1079,4683=>700,4684=>700,4685=>1021,\n4688=>700,4689=>700,4690=>700,4691=>758,4692=>700,4693=>758,4694=>729,4696=>846,4698=>1079,4699=>700,\n4700=>700,4701=>1021,4704=>525,4705=>758,4706=>758,4707=>525,4708=>700,4709=>773,4710=>525,4711=>787,\n4712=>525,4713=>758,4714=>758,4715=>525,4716=>700,4717=>773,4718=>525,4719=>525,4720=>729,4721=>729,\n4722=>729,4723=>802,4724=>729,4725=>729,4726=>758,4727=>729,4728=>758,4729=>758,4730=>758,4731=>817,\n4732=>758,4733=>817,4734=>758,4735=>758,4736=>612,4737=>817,4738=>817,4739=>612,4740=>787,4741=>583,\n4742=>875,4744=>962,4746=>992,4747=>700,4748=>758,4749=>904,4752=>408,4753=>583,4754=>525,4755=>554,\n4756=>481,4757=>554,4758=>642,4759=>671,4760=>700,4761=>758,4762=>729,4763=>700,4764=>671,4765=>700,\n4766=>758,4767=>700,4768=>583,4769=>735,4770=>822,4771=>583,4772=>793,4773=>583,4774=>583,4775=>694,\n4776=>554,4777=>729,4778=>773,4779=>554,4780=>700,4781=>554,4782=>554,4784=>992,4786=>1021,4787=>671,\n4788=>787,4789=>904,4792=>729,4793=>904,4794=>948,4795=>729,4796=>875,4797=>729,4798=>729,4800=>1137,\n4802=>1167,4803=>758,4804=>875,4805=>1108,4808=>758,4809=>875,4810=>700,4811=>700,4812=>700,4813=>992,\n4814=>758,4816=>554,4817=>787,4818=>758,4819=>583,4820=>758,4821=>496,4822=>612,4824=>525,4825=>700,\n4826=>700,4827=>525,4828=>685,4829=>729,4830=>510,4831=>729,4832=>962,4833=>962,4834=>962,4835=>962,\n4836=>962,4837=>1021,4838=>962,4839=>962,4840=>467,4841=>525,4842=>671,4843=>612,4844=>612,4845=>671,\n4846=>671,4848=>612,4849=>875,4850=>817,4851=>642,4852=>729,4853=>729,4854=>758,4855=>817,4856=>700,\n4857=>758,4858=>715,4859=>700,4860=>700,4861=>787,4862=>758,4863=>700,4864=>700,4865=>758,4866=>715,\n4867=>700,4868=>700,4869=>787,4870=>758,4871=>700,4872=>467,4873=>671,4874=>671,4875=>612,4876=>612,\n4877=>583,4878=>525,4880=>846,4882=>904,4883=>554,4884=>700,4885=>817,4888=>525,4889=>729,4890=>729,\n4891=>612,4892=>671,4893=>583,4894=>525,4896=>817,4897=>1021,4898=>1021,4899=>817,4900=>992,4901=>758,\n4902=>817,4903=>1021,4904=>1079,4905=>1137,4906=>1137,4907=>1050,4908=>1312,4909=>1050,4910=>1050,4911=>1123,\n4912=>647,4913=>793,4914=>822,4915=>647,4916=>793,4917=>764,4918=>583,4919=>647,4920=>583,4921=>793,\n4922=>822,4923=>583,4924=>793,4925=>764,4926=>583,4927=>793,4928=>540,4929=>758,4930=>583,4931=>467,\n4932=>583,4933=>481,4934=>612,4936=>758,4937=>700,4938=>758,4939=>700,4940=>831,4941=>671,4942=>758,\n4943=>700,4944=>758,4945=>758,4946=>758,4947=>817,4948=>758,4949=>758,4950=>817,4951=>758,4952=>642,\n4953=>980,4954=>758,4961=>233,4962=>583,4963=>408,4964=>408,4965=>525,4966=>525,4967=>233,4968=>700,\n4969=>671,4970=>612,4971=>642,4972=>642,4973=>642,4974=>583,4975=>700,4976=>758,4977=>642,4978=>583,\n4979=>700,4980=>729,4981=>720,4982=>583,4983=>758,4984=>700,4985=>904,4986=>612,4987=>583,4988=>875,\n5024=>711,5025=>678,5026=>604,5027=>667,5028=>796,5029=>301,5030=>516,5031=>544,5032=>457,5033=>716,\n5034=>703,5035=>383,5036=>628,5037=>709,5038=>455,5039=>601,5040=>472,5041=>574,5042=>730,5043=>939,\n5044=>498,5045=>528,5046=>667,5047=>891,5048=>505,5049=>792,5050=>957,5051=>725,5052=>595,5053=>733,\n5054=>698,5055=>638,5056=>720,5057=>732,5058=>624,5059=>638,5060=>565,5061=>903,5062=>655,5063=>681,\n5064=>675,5065=>949,5066=>683,5067=>547,5068=>693,5069=>732,5070=>529,5071=>569,5072=>536,5073=>677,\n5074=>631,5075=>382,5076=>973,5077=>543,5078=>607,5079=>652,5080=>652,5081=>693,5082=>514,5083=>803,\n5084=>658,5085=>597,5086=>627,5087=>659,5088=>679,5089=>706,5090=>563,5091=>618,5092=>767,5093=>776,\n5094=>731,5095=>492,5096=>808,5097=>823,5098=>796,5099=>689,5100=>716,5101=>518,5102=>521,5103=>719,\n5104=>563,5105=>776,5106=>634,5107=>822,5108=>621,5920=>502,5921=>502,5922=>500,5923=>498,5924=>500,\n5925=>502,5926=>502,5927=>502,5928=>500,5929=>503,5930=>502,5931=>502,5932=>500,5933=>500,5934=>500,\n5935=>796,5936=>500,5937=>502,5938=>0,5939=>0,5940=>0,5941=>230,5942=>397,6480=>537,6481=>537,\n6482=>531,6483=>678,6484=>682,6485=>628,6486=>732,6487=>721,6488=>598,6489=>583,6490=>702,6491=>554,\n6492=>683,6493=>554,6494=>710,6495=>695,6496=>523,6497=>678,6498=>589,6499=>272,6500=>506,6501=>515,\n6502=>515,6503=>210,6504=>210,6505=>515,6506=>515,6507=>515,6508=>229,6509=>705,6512=>649,6513=>538,\n6514=>568,6515=>520,6516=>544,6656=>820,6657=>958,6658=>758,6659=>859,6660=>958,6661=>727,6662=>904,\n6663=>940,6664=>850,6665=>905,6666=>838,6667=>961,6668=>1000,6669=>880,6670=>1189,6671=>1246,6672=>1177,\n6673=>757,6674=>1246,6675=>1192,6676=>709,6677=>1192,6678=>1075,6679=>0,6680=>0,6681=>534,6682=>690,\n6683=>0,6686=>697,6687=>500,7424=>484,7425=>595,7426=>667,7427=>446,7428=>446,7429=>483,7430=>483,\n7431=>409,7432=>426,7433=>278,7434=>260,7435=>483,7436=>409,7437=>595,7438=>483,7439=>483,7440=>426,\n7441=>500,7442=>489,7443=>668,7444=>722,7445=>378,7448=>372,7449=>446,7450=>446,7451=>409,7452=>483,\n7453=>488,7454=>660,7455=>500,7456=>483,7457=>632,7458=>409,7459=>355,7462=>392,7463=>483,7464=>483,\n7465=>372,7466=>541,7467=>470,7468=>484,7469=>595,7470=>446,7471=>446,7472=>483,7473=>409,7474=>409,\n7475=>483,7476=>483,7477=>223,7478=>260,7479=>483,7480=>409,7481=>595,7482=>483,7483=>483,7484=>483,\n7485=>378,7486=>372,7487=>446,7488=>409,7489=>483,7490=>632,7491=>297,7492=>297,7493=>335,7494=>446,\n7495=>335,7496=>335,7497=>297,7498=>297,7499=>285,7500=>285,7501=>335,7502=>186,7503=>335,7504=>521,\n7505=>335,7506=>335,7507=>297,7510=>335,7511=>186,7512=>335,7513=>326,7514=>521,7515=>335,7517=>353,\n7518=>321,7519=>357,7520=>430,7521=>321,7522=>186,7523=>223,7524=>335,7525=>335,7526=>353,7527=>321,\n7528=>353,7529=>430,7530=>321,7531=>754,7532=>500,7533=>500,7534=>333,7535=>778,7536=>500,7537=>500,\n7538=>333,7539=>333,7540=>389,7541=>278,7542=>444,7543=>500,7544=>483,7546=>774,7547=>217,7548=>278,\n7549=>500,7550=>483,7551=>514,7552=>500,7553=>500,7554=>333,7555=>676,7556=>525,7557=>278,7558=>802,\n7559=>507,7560=>500,7561=>333,7562=>389,7563=>384,7564=>500,7565=>500,7566=>444,7680=>722,7681=>444,\n7682=>667,7683=>500,7684=>667,7685=>500,7686=>667,7687=>500,7688=>667,7689=>444,7690=>722,7691=>500,\n7692=>722,7693=>500,7694=>722,7695=>500,7696=>720,7697=>500,7698=>722,7699=>500,7700=>611,7701=>444,\n7702=>611,7703=>444,7704=>611,7705=>444,7706=>611,7707=>444,7708=>611,7709=>444,7710=>556,7711=>333,\n7712=>722,7713=>500,7714=>722,7715=>500,7716=>722,7717=>500,7718=>722,7719=>500,7720=>722,7721=>500,\n7722=>722,7723=>500,7724=>333,7725=>278,7726=>333,7727=>278,7728=>722,7729=>500,7730=>722,7731=>500,\n7732=>722,7733=>500,7734=>611,7735=>278,7736=>611,7737=>278,7738=>611,7739=>278,7740=>611,7741=>278,\n7742=>889,7743=>778,7744=>889,7745=>778,7746=>889,7747=>778,7748=>722,7749=>500,7750=>722,7751=>500,\n7752=>722,7753=>500,7754=>722,7755=>500,7756=>722,7757=>500,7758=>722,7759=>500,7760=>722,7761=>500,\n7762=>722,7763=>500,7764=>556,7765=>500,7766=>556,7767=>500,7768=>667,7769=>333,7770=>667,7771=>333,\n7772=>667,7773=>333,7774=>667,7775=>333,7776=>556,7777=>389,7778=>556,7779=>389,7780=>556,7781=>389,\n7782=>556,7783=>389,7784=>556,7785=>389,7786=>611,7787=>278,7788=>611,7789=>278,7790=>611,7791=>278,\n7792=>611,7793=>278,7794=>722,7795=>500,7796=>722,7797=>500,7798=>722,7799=>500,7800=>722,7801=>500,\n7802=>722,7803=>500,7804=>722,7805=>500,7806=>722,7807=>500,7808=>944,7809=>722,7810=>944,7811=>722,\n7812=>944,7813=>722,7814=>944,7815=>722,7816=>944,7817=>722,7818=>722,7819=>500,7820=>722,7821=>500,\n7822=>722,7823=>500,7824=>611,7825=>444,7826=>611,7827=>444,7828=>611,7829=>444,7830=>500,7831=>278,\n7832=>722,7833=>500,7834=>444,7835=>333,7840=>722,7841=>444,7842=>807,7843=>529,7844=>722,7845=>444,\n7846=>722,7847=>444,7848=>722,7849=>454,7850=>722,7851=>444,7852=>722,7853=>444,7854=>722,7855=>444,\n7856=>722,7857=>444,7858=>722,7859=>454,7860=>722,7861=>444,7862=>722,7863=>444,7864=>611,7865=>444,\n7866=>611,7867=>444,7868=>611,7869=>444,7870=>611,7871=>444,7872=>611,7873=>444,7874=>613,7875=>444,\n7876=>611,7877=>444,7878=>611,7879=>444,7880=>333,7881=>278,7882=>333,7883=>278,7884=>722,7885=>500,\n7886=>722,7887=>500,7888=>722,7889=>500,7890=>722,7891=>500,7892=>722,7893=>500,7894=>722,7895=>500,\n7896=>722,7897=>500,7898=>722,7899=>516,7900=>722,7901=>516,7902=>720,7903=>516,7904=>722,7905=>516,\n7906=>722,7907=>516,7908=>722,7909=>500,7910=>717,7911=>500,7912=>800,7913=>518,7914=>800,7915=>518,\n7916=>800,7917=>518,7918=>800,7919=>518,7920=>800,7921=>518,7922=>722,7923=>500,7924=>722,7925=>500,\n7926=>722,7927=>501,7928=>722,7929=>500,7936=>583,7937=>583,7938=>583,7939=>583,7940=>583,7941=>583,\n7942=>583,7943=>583,7944=>722,7945=>722,7946=>813,7947=>817,7948=>763,7949=>765,7950=>720,7951=>722,\n7952=>426,7953=>426,7954=>426,7955=>426,7956=>426,7957=>426,7960=>770,7961=>770,7962=>902,7963=>919,\n7964=>940,7965=>936,7968=>536,7969=>536,7970=>536,7971=>536,7972=>536,7973=>536,7974=>536,7975=>536,\n7976=>847,7977=>859,7978=>986,7979=>1010,7980=>1026,7981=>1029,7982=>918,7983=>921,7984=>286,7985=>286,\n7986=>302,7987=>320,7988=>300,7989=>306,7990=>312,7991=>303,7992=>475,7993=>507,7994=>617,7995=>654,\n7996=>655,7997=>660,7998=>551,7999=>566,8000=>500,8001=>500,8002=>500,8003=>500,8004=>500,8005=>500,\n8008=>816,8009=>825,8010=>969,8011=>995,8012=>938,8013=>955,8016=>514,8017=>514,8018=>514,8019=>514,\n8020=>514,8021=>514,8022=>514,8023=>514,8025=>818,8027=>988,8029=>989,8031=>893,8032=>693,8033=>693,\n8034=>693,8035=>693,8036=>693,8037=>693,8038=>693,8039=>693,8040=>836,8041=>843,8042=>1006,8043=>1024,\n8044=>974,8045=>986,8046=>905,8047=>896,8048=>583,8049=>583,8050=>426,8051=>426,8052=>536,8053=>536,\n8054=>286,8055=>286,8056=>500,8057=>500,8058=>514,8059=>514,8060=>693,8061=>693,8064=>583,8065=>583,\n8066=>583,8067=>583,8068=>583,8069=>583,8070=>583,8071=>583,8072=>888,8073=>889,8074=>984,8075=>991,\n8076=>943,8077=>948,8078=>884,8079=>886,8080=>536,8081=>536,8082=>536,8083=>536,8084=>536,8085=>536,\n8086=>536,8087=>536,8088=>1017,8089=>1026,8090=>1153,8091=>1179,8092=>1195,8093=>1199,8094=>1088,8095=>1088,\n8096=>693,8097=>693,8098=>693,8099=>693,8100=>693,8101=>693,8102=>693,8103=>693,8104=>1034,8105=>1040,\n8106=>1210,8107=>1229,8108=>1176,8109=>1186,8110=>1098,8111=>1090,8112=>583,8113=>583,8114=>583,8115=>583,\n8116=>583,8118=>583,8119=>583,8120=>722,8121=>722,8122=>722,8123=>722,8124=>889,8125=>250,8126=>332,\n8127=>500,8128=>500,8129=>534,8130=>536,8131=>536,8132=>536,8134=>536,8135=>536,8136=>761,8137=>800,\n8138=>829,8139=>893,8140=>883,8141=>500,8142=>500,8143=>500,8144=>286,8145=>286,8146=>286,8147=>286,\n8150=>286,8151=>286,8152=>333,8153=>333,8154=>447,8155=>537,8157=>500,8158=>500,8159=>500,8160=>514,\n8161=>514,8162=>514,8163=>514,8164=>528,8165=>528,8166=>514,8167=>514,8168=>696,8169=>696,8170=>816,\n8171=>828,8172=>721,8173=>333,8174=>333,8175=>500,8178=>693,8179=>693,8180=>693,8182=>693,8183=>693,\n8184=>832,8185=>899,8186=>847,8187=>852,8188=>928,8189=>500,8190=>500,8192=>500,8193=>1000,8194=>500,\n8195=>1000,8196=>333,8197=>250,8198=>167,8199=>500,8200=>250,8201=>200,8202=>100,8203=>0,8204=>0,\n8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,8210=>500,8213=>1000,8214=>293,8215=>478,8219=>250,\n8223=>444,8227=>350,8228=>620,8229=>620,8231=>250,8232=>0,8233=>0,8234=>0,8235=>0,8236=>0,\n8237=>0,8238=>0,8239=>250,8241=>1363,8242=>247,8243=>411,8244=>611,8245=>220,8246=>440,8247=>660,\n8248=>469,8251=>629,8252=>666,8253=>444,8254=>500,8255=>953,8256=>953,8257=>314,8258=>931,8259=>333,\n8260=>167,8261=>383,8262=>383,8263=>888,8264=>777,8265=>777,8266=>500,8267=>453,8268=>453,8269=>450,\n8270=>500,8271=>278,8272=>882,8273=>500,8274=>497,8275=>500,8276=>953,8277=>512,8278=>410,8279=>855,\n8280=>620,8281=>620,8282=>179,8283=>621,8284=>564,8285=>179,8286=>179,8287=>111,8288=>0,8289=>0,\n8290=>0,8291=>0,8292=>0,8304=>320,8305=>300,8308=>320,8309=>320,8310=>320,8311=>320,8312=>320,\n8313=>320,8314=>300,8315=>300,8316=>300,8317=>216,8318=>216,8319=>300,8320=>320,8321=>320,8322=>320,\n8323=>320,8324=>320,8325=>320,8326=>320,8327=>320,8328=>320,8329=>320,8330=>300,8331=>300,8332=>300,\n8333=>216,8334=>216,8336=>320,8337=>320,8338=>320,8339=>320,8340=>320,8352=>698,8353=>667,8354=>667,\n8355=>556,8356=>500,8357=>778,8358=>722,8359=>940,8360=>1026,8361=>813,8362=>869,8363=>512,8365=>722,\n8366=>611,8367=>1340,8368=>489,8369=>601,8370=>619,8371=>722,8372=>556,8373=>611,8400=>0,8401=>0,\n8402=>0,8403=>0,8404=>0,8405=>0,8406=>0,8407=>0,8408=>0,8409=>0,8410=>0,8411=>0,\n8412=>0,8413=>0,8414=>0,8415=>0,8416=>0,8417=>0,8418=>0,8419=>0,8420=>0,8421=>0,\n8422=>0,8423=>0,8424=>0,8425=>0,8426=>0,8427=>0,8428=>0,8429=>0,8430=>0,8431=>0,\n8432=>0,8448=>751,8449=>723,8450=>674,8451=>954,8452=>556,8453=>781,8454=>806,8455=>518,8456=>667,\n8457=>822,8458=>490,8459=>824,8460=>663,8461=>818,8462=>500,8463=>500,8464=>578,8465=>613,8466=>715,\n8467=>417,8468=>778,8469=>751,8470=>880,8471=>760,8472=>832,8473=>589,8474=>729,8475=>892,8476=>711,\n8477=>755,8478=>667,8479=>667,8480=>879,8481=>1156,8483=>722,8484=>659,8485=>389,8486=>743,8487=>757,\n8488=>663,8489=>286,8490=>722,8491=>722,8492=>846,8493=>613,8494=>533,8495=>363,8496=>587,8497=>690,\n8498=>556,8499=>1021,8500=>387,8501=>537,8502=>537,8503=>350,8504=>537,8505=>417,8506=>906,8507=>1155,\n8513=>663,8514=>485,8515=>485,8516=>637,8522=>516,8523=>778,8525=>899,8526=>500,8531=>750,8532=>750,\n8533=>750,8534=>750,8535=>750,8536=>750,8537=>750,8538=>750,8539=>750,8540=>750,8541=>750,8542=>750,\n8543=>750,8544=>333,8545=>630,8546=>927,8547=>1019,8548=>722,8549=>1019,8550=>1316,8551=>1629,8552=>1019,\n8553=>722,8554=>1019,8555=>1316,8556=>611,8557=>667,8558=>722,8559=>889,8560=>278,8561=>556,8562=>834,\n8563=>778,8564=>500,8565=>778,8566=>1056,8567=>1334,8568=>778,8569=>500,8570=>778,8571=>1056,8572=>278,\n8573=>444,8574=>500,8575=>778,8592=>964,8593=>472,8594=>964,8595=>500,8596=>964,8597=>499,8598=>964,\n8599=>964,8600=>964,8601=>964,8602=>964,8603=>964,8604=>1009,8605=>1009,8606=>964,8607=>500,8608=>964,\n8609=>499,8610=>1093,8611=>1093,8612=>1093,8613=>500,8614=>1093,8615=>500,8616=>500,8617=>964,8618=>964,\n8619=>964,8620=>964,8621=>1151,8622=>964,8624=>482,8625=>482,8626=>482,8627=>482,8628=>658,8629=>658,\n8630=>1069,8631=>1069,8634=>939,8635=>939,8636=>964,8637=>964,8638=>499,8639=>499,8640=>964,8641=>964,\n8642=>499,8643=>499,8644=>964,8645=>840,8646=>964,8647=>964,8648=>840,8649=>964,8650=>840,8651=>964,\n8652=>964,8653=>964,8654=>964,8655=>964,8656=>964,8657=>550,8658=>964,8659=>550,8660=>964,8661=>550,\n8662=>1047,8663=>1047,8664=>1047,8665=>1047,8666=>964,8667=>964,8668=>1092,8669=>1092,8672=>964,8674=>964,\n8704=>587,8705=>716,8706=>494,8707=>587,8708=>587,8709=>746,8710=>612,8711=>612,8712=>536,8713=>536,\n8714=>439,8715=>536,8716=>536,8717=>439,8718=>506,8719=>823,8720=>823,8721=>713,8722=>564,8723=>564,\n8724=>564,8725=>636,8726=>636,8727=>471,8728=>497,8729=>497,8730=>549,8731=>549,8732=>549,8733=>636,\n8734=>853,8735=>509,8736=>575,8737=>559,8738=>509,8739=>200,8740=>250,8741=>320,8742=>320,8743=>564,\n8744=>564,8745=>654,8746=>654,8747=>416,8748=>750,8749=>1083,8750=>722,8751=>750,8752=>1083,8753=>697,\n8754=>722,8755=>722,8756=>565,8757=>568,8758=>250,8759=>629,8760=>564,8761=>758,8762=>564,8763=>636,\n8764=>636,8765=>636,8766=>503,8767=>614,8768=>636,8769=>636,8770=>636,8771=>636,8772=>636,8773=>636,\n8774=>636,8775=>636,8776=>636,8777=>636,8778=>636,8779=>636,8780=>636,8781=>636,8782=>636,8783=>636,\n8784=>564,8785=>564,8786=>564,8787=>564,8788=>735,8789=>755,8790=>564,8791=>564,8792=>564,8793=>564,\n8794=>564,8795=>564,8796=>600,8797=>564,8798=>564,8799=>564,8800=>564,8801=>636,8802=>636,8803=>636,\n8804=>636,8805=>636,8806=>636,8807=>636,8808=>636,8809=>636,8810=>900,8811=>899,8812=>410,8813=>636,\n8814=>636,8815=>636,8816=>636,8817=>636,8818=>636,8819=>636,8820=>636,8821=>636,8822=>636,8823=>636,\n8824=>636,8825=>636,8826=>636,8827=>636,8828=>636,8829=>636,8830=>636,8831=>636,8832=>636,8833=>636,\n8834=>636,8835=>636,8836=>636,8837=>636,8838=>636,8839=>636,8840=>636,8841=>636,8842=>636,8843=>636,\n8844=>654,8845=>654,8846=>654,8847=>636,8848=>636,8849=>636,8850=>636,8851=>636,8852=>636,8853=>636,\n8854=>636,8855=>636,8856=>636,8857=>636,8858=>636,8859=>636,8860=>636,8861=>636,8862=>636,8863=>636,\n8864=>636,8865=>636,8866=>600,8867=>600,8868=>712,8869=>712,8870=>466,8871=>466,8872=>595,8873=>588,\n8874=>710,8875=>706,8876=>595,8877=>596,8878=>588,8879=>706,8880=>636,8881=>636,8882=>636,8883=>636,\n8884=>636,8885=>636,8886=>1296,8887=>1296,8888=>966,8889=>564,8890=>626,8891=>564,8892=>564,8893=>566,\n8894=>570,8895=>582,8896=>744,8897=>744,8898=>764,8899=>764,8900=>512,8901=>250,8902=>471,8903=>629,\n8904=>636,8905=>636,8906=>636,8907=>816,8908=>816,8909=>636,8910=>636,8911=>636,8912=>636,8913=>636,\n8914=>654,8915=>654,8916=>654,8917=>636,8918=>564,8919=>564,8920=>1215,8921=>1215,8922=>636,8923=>636,\n8924=>636,8925=>636,8926=>636,8927=>636,8928=>636,8929=>636,8930=>636,8931=>636,8932=>636,8933=>636,\n8934=>636,8935=>636,8936=>636,8937=>636,8938=>636,8939=>636,8940=>636,8941=>636,8942=>250,8943=>1000,\n8944=>1000,8945=>1000,8946=>601,8947=>536,8948=>464,8949=>536,8950=>536,8951=>464,8952=>536,8953=>536,\n8954=>601,8955=>536,8956=>464,8957=>536,8958=>464,8959=>600,8960=>780,8961=>442,8962=>794,8968=>474,\n8969=>474,8970=>474,8971=>474,8976=>564,8977=>503,8978=>791,8979=>791,8980=>593,8981=>560,8982=>563,\n8983=>563,8984=>800,8985=>564,8986=>805,8988=>474,8989=>474,8990=>474,8991=>474,8992=>686,8993=>686,\n8994=>658,8995=>658,8996=>800,9000=>800,9001=>329,9002=>329,9031=>777,9032=>777,9040=>777,9047=>777,\n9054=>777,9088=>800,9089=>800,9090=>800,9091=>800,9094=>800,9095=>800,9096=>800,9097=>800,9098=>800,\n9100=>800,9103=>788,9104=>788,9105=>788,9106=>788,9108=>800,9109=>800,9110=>800,9111=>800,9112=>800,\n9113=>800,9114=>800,9115=>384,9116=>384,9117=>384,9118=>384,9119=>384,9120=>384,9121=>388,9122=>388,\n9123=>388,9124=>388,9125=>388,9126=>388,9127=>494,9128=>494,9129=>494,9130=>494,9131=>494,9132=>494,\n9133=>494,9134=>686,9138=>1287,9139=>1287,9140=>860,9141=>861,9166=>800,9167=>800,9180=>896,9181=>896,\n9182=>903,9183=>904,9184=>910,9185=>910,9186=>761,9187=>910,9189=>942,9190=>817,9251=>500,9312=>788,\n9313=>788,9314=>788,9315=>788,9316=>788,9317=>788,9318=>788,9319=>788,9320=>788,9321=>788,9472=>889,\n9473=>889,9474=>889,9475=>889,9484=>889,9485=>889,9486=>889,9487=>889,9488=>889,9489=>889,9490=>889,\n9491=>889,9492=>889,9493=>889,9494=>889,9495=>889,9496=>889,9497=>889,9498=>889,9499=>889,9500=>889,\n9501=>889,9502=>889,9503=>889,9504=>889,9505=>889,9506=>889,9507=>889,9508=>889,9509=>889,9510=>889,\n9511=>889,9512=>889,9513=>889,9514=>889,9515=>889,9516=>889,9517=>889,9518=>889,9519=>889,9520=>889,\n9521=>889,9522=>889,9523=>889,9524=>889,9525=>889,9526=>889,9527=>889,9528=>889,9529=>889,9530=>889,\n9531=>889,9532=>889,9533=>889,9534=>889,9535=>889,9536=>889,9537=>889,9538=>889,9539=>889,9540=>889,\n9541=>889,9542=>889,9543=>889,9544=>889,9545=>889,9546=>889,9547=>889,9552=>889,9553=>889,9554=>889,\n9555=>889,9556=>889,9557=>889,9558=>889,9559=>889,9560=>889,9561=>889,9562=>889,9563=>889,9564=>889,\n9565=>889,9566=>889,9567=>889,9568=>889,9569=>889,9570=>889,9571=>889,9572=>889,9573=>889,9574=>889,\n9575=>889,9576=>889,9577=>889,9578=>889,9579=>889,9580=>889,9581=>889,9582=>889,9583=>889,9584=>889,\n9585=>889,9586=>889,9587=>889,9588=>889,9589=>889,9590=>889,9591=>889,9592=>889,9593=>889,9594=>889,\n9595=>889,9596=>600,9597=>889,9598=>600,9599=>889,9600=>761,9601=>761,9602=>761,9603=>761,9604=>761,\n9605=>761,9606=>761,9607=>761,9608=>761,9609=>761,9610=>761,9611=>761,9612=>761,9613=>761,9614=>761,\n9615=>761,9616=>761,9617=>1000,9619=>1000,9620=>761,9621=>761,9622=>761,9623=>761,9624=>761,9625=>761,\n9626=>761,9627=>761,9628=>761,9629=>761,9630=>761,9631=>761,9632=>761,9633=>761,9634=>761,9635=>761,\n9636=>761,9637=>761,9638=>761,9639=>761,9640=>761,9641=>761,9642=>532,9643=>532,9644=>761,9645=>761,\n9646=>761,9647=>761,9648=>761,9649=>761,9650=>892,9651=>892,9652=>446,9653=>446,9654=>892,9655=>892,\n9656=>446,9657=>446,9658=>892,9659=>892,9660=>892,9661=>892,9662=>446,9663=>446,9664=>892,9665=>892,\n9666=>446,9667=>446,9668=>892,9669=>892,9670=>788,9671=>788,9672=>788,9673=>791,9674=>494,9675=>791,\n9676=>791,9677=>785,9678=>791,9679=>791,9680=>791,9681=>791,9682=>791,9683=>791,9684=>791,9685=>791,\n9686=>791,9687=>791,9688=>761,9689=>761,9690=>761,9691=>761,9692=>791,9693=>791,9694=>791,9695=>791,\n9696=>791,9697=>791,9698=>761,9699=>761,9700=>761,9701=>761,9702=>791,9703=>761,9704=>761,9705=>761,\n9706=>761,9707=>761,9708=>892,9709=>892,9710=>892,9711=>851,9712=>761,9713=>761,9714=>761,9715=>761,\n9716=>791,9717=>791,9718=>791,9719=>791,9720=>761,9721=>761,9722=>761,9723=>761,9724=>761,9725=>570,\n9726=>570,9727=>761,9728=>800,9729=>800,9730=>748,9731=>800,9732=>800,9733=>811,9734=>816,9735=>468,\n9736=>677,9737=>724,9738=>944,9739=>944,9740=>686,9741=>944,9742=>715,9743=>715,9744=>757,9745=>755,\n9746=>755,9747=>756,9748=>800,9749=>837,9750=>719,9751=>719,9752=>782,9753=>822,9754=>954,9755=>954,\n9756=>933,9757=>489,9758=>933,9759=>489,9760=>517,9761=>660,9762=>724,9763=>732,9764=>886,9765=>577,\n9766=>489,9767=>563,9768=>490,9769=>770,9770=>725,9771=>860,9772=>668,9773=>753,9774=>724,9775=>730,\n9776=>600,9777=>600,9778=>600,9779=>600,9780=>600,9781=>600,9782=>600,9783=>600,9784=>730,9785=>724,\n9786=>724,9787=>724,9788=>799,9789=>659,9790=>659,9791=>495,9792=>495,9793=>495,9794=>686,9795=>661,\n9796=>544,9797=>608,9798=>605,9799=>545,9800=>804,9801=>583,9802=>796,9803=>1006,9804=>825,9805=>1189,\n9806=>1144,9807=>1189,9808=>683,9809=>808,9810=>1146,9811=>797,9812=>758,9813=>757,9814=>758,9815=>758,\n9816=>758,9817=>758,9818=>758,9819=>758,9820=>758,9821=>758,9822=>758,9823=>758,9824=>770,9825=>770,\n9826=>770,9827=>770,9828=>770,9829=>770,9830=>770,9831=>770,9832=>895,9833=>333,9834=>555,9835=>722,\n9836=>722,9837=>415,9838=>377,9839=>402,9840=>642,9841=>655,9842=>869,9843=>905,9844=>905,9845=>905,\n9846=>905,9847=>905,9848=>905,9849=>905,9850=>905,9851=>1016,9852=>1064,9853=>1064,9854=>954,9855=>606,\n9856=>522,9857=>522,9858=>522,9859=>522,9860=>522,9861=>522,9862=>845,9863=>844,9864=>844,9865=>844,\n9866=>748,9867=>748,9868=>748,9869=>748,9870=>748,9871=>748,9872=>726,9873=>726,9874=>963,9875=>770,\n9876=>1038,9877=>388,9878=>997,9879=>787,9880=>508,9881=>809,9882=>1014,9883=>859,9884=>818,9885=>972,\n9888=>1000,9889=>546,9890=>784,9891=>786,9892=>738,9893=>542,9894=>601,9895=>700,9896=>511,9897=>861,\n9898=>611,9899=>611,9900=>544,9901=>782,9902=>1025,9903=>1141,9904=>1000,9905=>513,9906=>510,9907=>642,\n9908=>722,9909=>719,9910=>777,9911=>495,9912=>602,9913=>836,9914=>666,9915=>666,9916=>691,9920=>689,\n9921=>689,9922=>689,9923=>689,9985=>974,9986=>961,9987=>974,9988=>980,9990=>789,9991=>790,9992=>791,\n9993=>690,9996=>549,9997=>855,9998=>911,9999=>933,10000=>911,10001=>945,10002=>974,10003=>755,10004=>846,\n10005=>762,10006=>761,10007=>571,10008=>677,10009=>763,10010=>760,10011=>759,10012=>754,10013=>494,10014=>552,\n10015=>537,10016=>577,10017=>692,10018=>786,10019=>788,10020=>788,10021=>790,10022=>793,10023=>794,10025=>823,\n10026=>789,10027=>841,10028=>823,10029=>833,10030=>816,10031=>831,10032=>923,10033=>744,10034=>723,10035=>749,\n10036=>790,10037=>792,10038=>695,10039=>776,10040=>768,10041=>792,10042=>759,10043=>707,10044=>708,10045=>682,\n10046=>701,10047=>826,10048=>815,10049=>789,10050=>789,10051=>707,10052=>687,10053=>696,10054=>689,10055=>786,\n10056=>787,10057=>713,10058=>791,10059=>785,10061=>873,10063=>762,10064=>762,10065=>759,10066=>759,10070=>784,\n10072=>138,10073=>277,10074=>415,10075=>392,10076=>392,10077=>668,10078=>668,10081=>732,10082=>544,10083=>544,\n10084=>910,10085=>667,10086=>760,10087=>760,10088=>390,10089=>390,10090=>317,10091=>317,10092=>276,10093=>276,\n10094=>509,10095=>509,10096=>410,10097=>410,10098=>234,10099=>234,10100=>334,10101=>334,10102=>788,10103=>788,\n10104=>788,10105=>788,10106=>788,10107=>788,10108=>788,10109=>788,10110=>788,10111=>788,10112=>788,10113=>788,\n10114=>788,10115=>788,10116=>788,10117=>788,10118=>788,10119=>788,10120=>788,10121=>788,10122=>788,10123=>788,\n10124=>788,10125=>788,10126=>788,10127=>788,10128=>788,10129=>788,10130=>788,10131=>788,10132=>894,10136=>748,\n10137=>924,10138=>748,10139=>918,10140=>927,10141=>928,10142=>928,10143=>834,10144=>873,10145=>828,10146=>924,\n10147=>924,10148=>917,10149=>930,10150=>931,10151=>463,10152=>883,10153=>836,10154=>836,10155=>867,10156=>867,\n10157=>696,10158=>696,10159=>874,10161=>874,10162=>760,10163=>946,10164=>771,10165=>865,10166=>771,10167=>888,\n10168=>967,10169=>888,10170=>831,10171=>873,10172=>927,10173=>970,10174=>918,10214=>545,10215=>545,10216=>329,\n10217=>329,10218=>496,10219=>496,10229=>1000,10230=>1000,10231=>1000,10232=>1000,10233=>1000,10234=>1000,10235=>1000,\n10236=>1000,10752=>860,10753=>860,10754=>860,10755=>766,10756=>766,10757=>756,10758=>756,10761=>745,10781=>702,\n10815=>722,11008=>1000,11009=>1000,11010=>1000,11011=>1000,11012=>1222,11013=>1000,11014=>1000,11015=>1000,11016=>1000,\n11017=>1000,11018=>1000,11019=>1000,11020=>1244,11021=>1000,11026=>770,11027=>770,11028=>770,11029=>770,11030=>770,\n11031=>770,11032=>770,11033=>770,11034=>770,11035=>1000,11036=>1000,11037=>283,11038=>283,11039=>846,11040=>846,\n11041=>799,11042=>799,11043=>807,11044=>1000,11045=>461,11046=>461,11047=>461,11048=>461,11049=>360,11050=>360,\n11051=>283,11052=>854,11053=>854,11054=>628,11055=>628,11088=>589,11089=>443,11090=>443,11091=>802,11092=>803,\n11392=>677,11393=>463,11394=>532,11395=>381,11396=>615,11397=>438,11398=>969,11399=>660,11400=>647,11401=>440,\n11402=>593,11403=>402,11404=>573,11405=>407,11406=>698,11407=>512,11408=>726,11409=>493,11410=>267,11411=>201,\n11412=>610,11413=>433,11414=>654,11415=>468,11416=>735,11417=>536,11418=>698,11419=>511,11420=>555,11421=>378,\n11422=>722,11423=>489,11424=>724,11425=>528,11426=>517,11427=>388,11428=>647,11429=>438,11430=>615,11431=>436,\n11432=>651,11433=>462,11434=>762,11435=>538,11436=>654,11437=>461,11438=>635,11439=>461,11440=>964,11441=>677,\n11456=>689,11457=>464,11493=>499,11494=>496,11495=>986,11496=>466,11497=>444,11498=>934,11517=>256,11518=>617,\n11519=>287,11799=>333,42560=>611,42561=>444,42562=>611,42563=>444,42564=>556,42565=>389,42566=>368,42567=>286,\n42572=>1145,42573=>775,42576=>1016,42577=>736,42578=>915,42579=>684,42580=>966,42581=>664,42582=>1042,42583=>648,\n42584=>722,42585=>491,42588=>1042,42589=>648,42590=>780,42591=>550,42594=>911,42595=>633,42596=>957,42597=>635,\n42598=>1139,42599=>777,42607=>0,42608=>0,42609=>0,42610=>0,42611=>519,42620=>0,42622=>510,64256=>589,\n64257=>534,64258=>530,64259=>805,64260=>799,64262=>677,64285=>350,64286=>0,64287=>537,64288=>537,64297=>564,\n64298=>537,64299=>537,64300=>537,64301=>537,64302=>537,64303=>537,64304=>537,64305=>537,64306=>350,64307=>537,\n64308=>537,64309=>350,64310=>350,64312=>537,64313=>350,64314=>537,64315=>537,64316=>537,64318=>537,64320=>350,\n64321=>537,64323=>537,64324=>537,64326=>537,64327=>537,64328=>537,64329=>537,64330=>537,64331=>350,64332=>537,\n64333=>537,64334=>537,64335=>537,64342=>926,64343=>926,64344=>308,64345=>308,64378=>750,64379=>750,64380=>580,\n64381=>580,64394=>338,64395=>338,64402=>874,64403=>874,64404=>329,64405=>329,64508=>776,64509=>700,64510=>304,\n64511=>304,65010=>640,65020=>837,65136=>300,65140=>300,65142=>300,65144=>300,65146=>300,65148=>300,65152=>724,\n65153=>321,65154=>275,65155=>249,65156=>275,65157=>399,65158=>399,65159=>249,65160=>275,65161=>776,65162=>776,\n65163=>301,65164=>264,65165=>249,65166=>275,65167=>950,65168=>950,65169=>293,65170=>293,65171=>424,65172=>622,\n65173=>925,65174=>925,65175=>308,65176=>308,65177=>924,65178=>924,65179=>298,65180=>298,65181=>738,65182=>738,\n65183=>574,65184=>574,65185=>748,65186=>750,65187=>600,65188=>600,65189=>701,65190=>775,65191=>596,65192=>596,\n65193=>397,65194=>397,65195=>399,65196=>399,65197=>328,65198=>328,65199=>331,65200=>331,65201=>951,65202=>951,\n65203=>600,65204=>600,65205=>949,65206=>949,65207=>649,65208=>649,65209=>949,65210=>949,65211=>823,65212=>823,\n65213=>949,65214=>949,65215=>805,65216=>805,65217=>557,65218=>557,65219=>460,65220=>460,65221=>550,65222=>550,\n65223=>455,65224=>550,65225=>625,65226=>575,65227=>674,65228=>550,65229=>602,65230=>577,65231=>578,65232=>577,\n65233=>801,65234=>801,65235=>300,65236=>300,65237=>696,65238=>696,65239=>650,65240=>650,65241=>757,65242=>757,\n65243=>318,65244=>318,65245=>655,65246=>655,65247=>206,65248=>206,65249=>549,65250=>549,65251=>403,65252=>403,\n65253=>651,65254=>651,65255=>323,65256=>323,65257=>424,65258=>622,65259=>525,65260=>476,65261=>399,65262=>399,\n65263=>776,65264=>776,65265=>776,65266=>776,65267=>296,65268=>264,65269=>676,65270=>724,65271=>676,65272=>724,\n65273=>676,65274=>724,65275=>676,65276=>724,65279=>0,65533=>788);\n$enc='';\n$diff='';\n$file='freeserif.z';\n$ctg='freeserif.ctg.z';\n$originalsize=1483772;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/freeserifb.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='FreeSerifBold';\n$desc=array('Ascent'=>900,'Descent'=>-300,'CapHeight'=>16,'Flags'=>32,'FontBBox'=>'[-796 -306 1860 932]','ItalicAngle'=>0,'StemV'=>120,'MissingWidth'=>600);\n$up=-125;\n$ut=50;\n$dw=600;\n$cw=array(\n32=>250,33=>333,34=>555,35=>500,36=>500,37=>1000,38=>833,39=>278,40=>333,41=>333,\n42=>507,43=>676,44=>250,45=>333,46=>250,47=>278,48=>500,49=>500,50=>500,51=>500,\n52=>500,53=>500,54=>500,55=>500,56=>500,57=>500,58=>333,59=>333,60=>676,61=>676,\n62=>676,63=>500,64=>930,65=>722,66=>667,67=>722,68=>724,69=>667,70=>611,71=>778,\n72=>774,73=>386,74=>500,75=>764,76=>664,77=>943,78=>722,79=>778,80=>611,81=>778,\n82=>712,83=>556,84=>667,85=>722,86=>722,87=>1000,88=>722,89=>722,90=>667,91=>333,\n92=>278,93=>333,94=>581,95=>500,96=>333,97=>500,98=>556,99=>444,100=>556,101=>444,\n102=>333,103=>500,104=>556,105=>278,106=>333,107=>556,108=>278,109=>833,110=>556,111=>500,\n112=>556,113=>556,114=>444,115=>389,116=>333,117=>556,118=>500,119=>722,120=>500,121=>500,\n122=>444,123=>394,124=>220,125=>394,126=>520,8364=>761,8218=>250,402=>333,8222=>500,8230=>1000,\n8224=>500,8225=>500,710=>333,8240=>1000,352=>556,8249=>333,338=>1000,381=>667,8216=>250,8217=>250,\n8220=>500,8221=>500,8226=>524,8211=>500,8212=>1000,732=>333,8482=>1000,353=>389,8250=>333,339=>722,\n382=>444,376=>722,160=>250,161=>333,162=>500,163=>500,164=>500,165=>500,166=>220,167=>500,\n168=>333,169=>747,170=>300,171=>500,172=>680,173=>333,174=>747,175=>333,176=>400,177=>676,\n178=>300,179=>300,180=>333,181=>556,182=>540,183=>250,184=>333,185=>270,186=>330,187=>500,\n188=>750,189=>750,190=>750,191=>500,192=>722,193=>722,194=>722,195=>722,196=>722,197=>722,\n198=>1000,199=>722,200=>667,201=>667,202=>667,203=>667,204=>389,205=>389,206=>389,207=>389,\n208=>722,209=>722,210=>778,211=>778,212=>778,213=>778,214=>778,215=>676,216=>778,217=>722,\n218=>722,219=>722,220=>722,221=>722,222=>632,223=>556,224=>500,225=>500,226=>500,227=>500,\n228=>500,229=>500,230=>722,231=>444,232=>444,233=>444,234=>444,235=>444,236=>278,237=>278,\n238=>278,239=>278,240=>500,241=>556,242=>500,243=>500,244=>500,245=>500,246=>500,247=>676,\n248=>500,249=>556,250=>556,251=>556,252=>556,253=>500,254=>556,255=>500,256=>722,257=>500,\n258=>722,259=>500,260=>722,261=>500,262=>722,263=>444,264=>722,265=>444,266=>722,267=>444,\n268=>722,269=>444,270=>722,271=>616,272=>722,273=>556,274=>667,275=>444,276=>667,277=>444,\n278=>667,279=>444,280=>667,281=>444,282=>667,283=>444,284=>778,285=>500,286=>778,287=>500,\n288=>778,289=>500,290=>778,291=>500,292=>778,293=>556,294=>778,295=>556,296=>389,297=>278,\n298=>389,299=>278,300=>389,301=>278,302=>389,303=>278,304=>389,305=>278,306=>882,307=>486,\n308=>500,309=>338,310=>778,311=>556,312=>534,313=>667,314=>278,315=>667,316=>278,317=>667,\n318=>398,319=>667,320=>528,321=>667,322=>278,323=>722,324=>556,325=>722,326=>556,327=>722,\n328=>556,329=>556,330=>722,331=>556,332=>778,333=>500,334=>778,335=>500,336=>778,337=>500,\n340=>722,341=>444,342=>722,343=>444,344=>722,345=>444,346=>556,347=>389,348=>556,349=>389,\n350=>556,351=>389,354=>667,355=>333,356=>667,357=>449,358=>667,359=>333,360=>722,361=>556,\n362=>722,363=>556,364=>722,365=>556,366=>722,367=>556,368=>722,369=>556,370=>722,371=>556,\n372=>1000,373=>722,374=>722,375=>500,377=>667,378=>444,379=>667,380=>444,383=>333,384=>556,\n385=>805,386=>648,387=>556,388=>667,389=>556,390=>722,391=>915,392=>605,393=>722,394=>862,\n395=>667,396=>556,397=>550,398=>667,399=>778,400=>631,401=>611,403=>903,404=>776,405=>807,\n406=>327,407=>389,408=>887,409=>556,410=>278,411=>495,412=>1000,413=>864,414=>556,415=>778,\n416=>778,417=>550,418=>1192,419=>795,420=>749,421=>556,422=>748,423=>556,424=>389,425=>650,\n426=>465,427=>333,428=>667,429=>333,430=>667,431=>839,432=>629,433=>811,434=>685,435=>853,\n436=>705,437=>667,438=>444,439=>593,440=>654,441=>508,442=>500,443=>500,444=>654,445=>520,\n446=>444,447=>611,448=>220,449=>418,450=>570,451=>333,452=>1391,453=>1168,454=>1000,455=>1164,\n456=>997,457=>611,458=>1222,459=>1055,460=>889,461=>722,462=>500,463=>386,464=>278,465=>778,\n466=>500,467=>722,468=>556,469=>722,470=>556,471=>722,472=>556,473=>722,474=>556,475=>722,\n476=>556,477=>444,478=>722,479=>500,480=>722,481=>500,482=>1000,483=>722,484=>778,485=>500,\n486=>778,487=>500,488=>764,489=>556,490=>778,491=>500,492=>778,493=>500,494=>593,495=>502,\n496=>338,497=>1391,498=>1168,499=>1000,500=>778,501=>500,502=>995,503=>603,504=>722,505=>556,\n506=>722,507=>500,508=>1000,509=>722,510=>778,511=>500,512=>722,513=>500,514=>722,515=>500,\n516=>667,517=>444,518=>667,519=>444,520=>386,521=>278,522=>386,523=>278,524=>778,525=>500,\n526=>778,527=>500,528=>712,529=>444,530=>712,531=>444,532=>722,533=>556,534=>722,535=>556,\n536=>556,537=>389,538=>667,539=>333,540=>464,541=>455,542=>774,543=>556,544=>731,545=>649,\n546=>568,547=>494,548=>667,549=>444,550=>722,551=>500,552=>667,553=>444,554=>778,555=>500,\n556=>778,557=>500,558=>778,559=>500,560=>778,561=>500,562=>722,563=>500,564=>437,565=>636,\n566=>415,567=>338,568=>776,569=>760,570=>722,571=>722,572=>444,573=>664,574=>667,575=>389,\n576=>451,577=>505,578=>479,579=>686,580=>750,581=>722,582=>667,583=>478,584=>500,585=>333,\n586=>808,587=>608,588=>712,589=>444,590=>757,591=>500,592=>500,593=>523,594=>523,595=>556,\n596=>444,598=>556,599=>556,600=>444,601=>444,602=>611,603=>440,604=>440,605=>611,607=>333,\n608=>500,609=>500,610=>556,613=>556,614=>556,615=>556,616=>278,617=>333,618=>278,619=>278,\n621=>278,622=>667,623=>833,624=>833,625=>833,626=>556,627=>556,628=>556,629=>500,631=>715,\n632=>667,633=>444,634=>444,635=>444,636=>444,637=>444,638=>394,639=>394,640=>556,641=>556,\n642=>389,643=>333,644=>333,645=>433,647=>333,648=>333,649=>500,650=>557,651=>529,652=>500,\n653=>722,654=>500,655=>500,656=>444,658=>502,660=>500,661=>500,662=>500,664=>778,665=>510,\n667=>722,668=>556,670=>556,671=>444,672=>556,673=>500,674=>500,686=>611,687=>722,697=>250,\n698=>408,699=>250,700=>250,701=>250,702=>300,703=>300,706=>333,707=>333,708=>333,709=>333,\n711=>333,712=>333,713=>333,714=>333,715=>333,716=>300,717=>333,718=>333,719=>333,720=>278,\n721=>278,722=>300,723=>300,724=>333,725=>333,726=>333,727=>333,728=>333,729=>333,730=>333,\n731=>333,733=>400,734=>333,735=>352,741=>526,742=>526,743=>526,744=>526,745=>526,746=>519,\n747=>519,748=>333,749=>333,750=>480,751=>333,752=>333,753=>333,754=>333,755=>327,756=>261,\n757=>437,758=>437,759=>400,760=>278,761=>175,762=>175,763=>175,764=>175,765=>333,766=>337,\n767=>432,768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,\n777=>0,778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,\n787=>0,788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,\n797=>0,798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,\n807=>0,808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,\n817=>0,818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,\n827=>0,828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,\n837=>0,838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,844=>0,845=>0,846=>0,\n847=>0,848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,\n857=>0,858=>0,860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,884=>199,885=>199,\n890=>0,894=>333,900=>330,901=>415,902=>722,903=>250,904=>811,905=>938,906=>556,908=>840,\n910=>886,911=>879,912=>330,913=>722,914=>667,915=>611,916=>759,917=>667,918=>667,919=>774,\n920=>778,921=>386,922=>777,923=>722,924=>943,925=>722,926=>650,927=>778,928=>812,929=>611,\n931=>650,932=>667,933=>738,934=>868,935=>722,936=>924,937=>811,938=>386,939=>738,940=>605,\n941=>440,942=>605,943=>330,944=>550,945=>605,946=>550,947=>550,948=>550,949=>440,950=>495,\n951=>605,952=>550,953=>330,954=>608,955=>495,956=>605,957=>495,958=>495,959=>550,960=>605,\n961=>550,962=>440,963=>550,964=>440,965=>550,966=>660,967=>495,968=>715,969=>715,970=>330,\n971=>550,972=>550,973=>550,974=>715,976=>550,977=>605,978=>722,979=>871,980=>722,981=>660,\n982=>715,983=>550,984=>611,985=>550,986=>650,987=>514,988=>611,989=>513,990=>715,991=>439,\n992=>722,993=>605,1008=>550,1009=>550,1010=>477,1011=>333,1012=>778,1013=>424,1014=>424,1015=>632,\n1016=>575,1017=>722,1018=>943,1019=>809,1020=>550,1021=>722,1022=>722,1023=>722,1024=>667,1025=>667,\n1026=>848,1027=>611,1028=>722,1029=>556,1030=>386,1031=>386,1032=>500,1033=>1042,1034=>1032,1035=>912,\n1036=>770,1037=>774,1038=>738,1039=>778,1040=>722,1041=>648,1042=>667,1043=>599,1044=>708,1045=>667,\n1046=>1106,1047=>652,1048=>774,1049=>774,1050=>770,1051=>788,1052=>943,1053=>774,1054=>778,1055=>812,\n1056=>611,1057=>722,1058=>667,1059=>738,1060=>868,1061=>722,1062=>774,1063=>754,1064=>1115,1065=>1115,\n1066=>782,1067=>970,1068=>630,1069=>722,1070=>1114,1071=>729,1072=>500,1073=>500,1074=>510,1075=>430,\n1076=>545,1077=>438,1078=>781,1079=>445,1080=>556,1081=>556,1082=>556,1083=>542,1084=>668,1085=>558,\n1086=>500,1087=>558,1088=>549,1089=>444,1090=>494,1091=>486,1092=>809,1093=>500,1094=>560,1095=>556,\n1096=>818,1097=>820,1098=>612,1099=>756,1100=>512,1101=>496,1102=>770,1103=>546,1104=>438,1105=>444,\n1106=>549,1107=>430,1108=>488,1109=>386,1110=>272,1111=>278,1112=>333,1113=>784,1114=>786,1115=>552,\n1116=>556,1117=>556,1118=>484,1119=>556,1120=>1018,1121=>699,1122=>781,1123=>612,1124=>1033,1125=>778,\n1126=>993,1127=>692,1128=>1371,1129=>975,1130=>1106,1131=>781,1132=>1474,1133=>1066,1134=>650,1135=>424,\n1136=>970,1137=>769,1138=>770,1139=>590,1140=>808,1141=>578,1142=>808,1143=>650,1144=>1284,1145=>973,\n1146=>928,1147=>672,1148=>1018,1149=>693,1150=>1018,1151=>699,1152=>650,1153=>444,1154=>258,1155=>0,\n1156=>0,1157=>0,1158=>0,1159=>0,1160=>0,1161=>0,1162=>774,1163=>558,1164=>630,1165=>512,\n1166=>611,1167=>556,1168=>614,1169=>458,1170=>614,1171=>443,1172=>631,1173=>562,1174=>1155,1175=>828,\n1176=>652,1177=>452,1178=>819,1179=>600,1180=>816,1181=>590,1182=>920,1183=>664,1184=>967,1185=>633,\n1186=>774,1187=>562,1188=>984,1189=>698,1190=>1069,1191=>841,1192=>722,1193=>524,1194=>722,1195=>444,\n1196=>667,1197=>494,1198=>722,1199=>606,1200=>722,1201=>606,1202=>722,1203=>560,1204=>1046,1205=>778,\n1206=>754,1207=>560,1208=>810,1209=>590,1210=>754,1211=>556,1212=>945,1213=>606,1214=>945,1215=>606,\n1216=>386,1217=>1106,1218=>781,1219=>770,1220=>534,1221=>788,1222=>550,1223=>774,1224=>556,1225=>774,\n1226=>558,1227=>778,1228=>556,1229=>943,1230=>677,1231=>386,1232=>722,1233=>500,1234=>722,1235=>500,\n1236=>1000,1237=>722,1238=>667,1239=>444,1240=>778,1241=>444,1242=>778,1243=>444,1244=>1106,1245=>781,\n1246=>652,1247=>445,1248=>654,1249=>389,1250=>774,1251=>556,1252=>774,1253=>556,1254=>778,1255=>500,\n1256=>778,1257=>500,1258=>778,1259=>500,1260=>722,1261=>496,1262=>738,1263=>500,1264=>738,1265=>500,\n1266=>738,1267=>500,1268=>754,1269=>556,1270=>599,1271=>443,1272=>970,1273=>756,1296=>652,1297=>452,\n1298=>788,1299=>550,1306=>778,1307=>556,1308=>1000,1309=>722,1310=>770,1311=>558,1425=>0,1426=>0,\n1427=>0,1428=>0,1429=>0,1430=>0,1431=>0,1432=>0,1433=>0,1434=>0,1435=>0,1436=>0,\n1437=>0,1438=>0,1439=>0,1440=>0,1441=>0,1442=>0,1443=>0,1444=>0,1445=>0,1446=>0,\n1447=>0,1448=>0,1449=>0,1450=>0,1451=>0,1452=>0,1453=>0,1454=>0,1455=>0,1456=>0,\n1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,1463=>0,1464=>0,1465=>0,1466=>0,\n1467=>0,1468=>0,1469=>0,1470=>433,1471=>0,1472=>155,1473=>0,1474=>0,1475=>400,1476=>0,\n1477=>0,1478=>347,1479=>0,1488=>593,1489=>498,1490=>339,1491=>523,1492=>561,1493=>266,1494=>291,\n1495=>559,1496=>576,1497=>266,1498=>496,1499=>501,1500=>510,1501=>542,1502=>581,1503=>273,1504=>347,\n1505=>512,1506=>552,1507=>493,1508=>491,1509=>537,1510=>561,1511=>544,1512=>502,1513=>716,1514=>571,\n1520=>532,1521=>532,1522=>532,1523=>396,1524=>432,3585=>590,3586=>578,3587=>661,3588=>592,3589=>592,\n3590=>699,3591=>447,3592=>534,3593=>692,3594=>578,3595=>659,3596=>899,3597=>804,3598=>633,3599=>637,\n3600=>484,3601=>730,3602=>876,3603=>915,3604=>592,3605=>592,3606=>578,3607=>670,3608=>542,3609=>671,\n3610=>621,3611=>618,3612=>621,3613=>617,3614=>708,3615=>708,3616=>637,3617=>589,3618=>552,3619=>484,\n3620=>590,3621=>569,3622=>637,3623=>526,3624=>599,3625=>802,3626=>579,3627=>668,3628=>778,3629=>560,\n3630=>514,3631=>510,3632=>412,3633=>0,3634=>423,3635=>452,3636=>0,3637=>0,3638=>0,3639=>0,\n3640=>0,3641=>0,3642=>0,3647=>665,3648=>357,3649=>624,3650=>529,3651=>486,3652=>475,3653=>423,\n3654=>500,3655=>0,3656=>0,3657=>0,3658=>0,3659=>0,3660=>0,3661=>0,3662=>0,3663=>657,\n3664=>548,3665=>548,3666=>592,3667=>614,3668=>631,3669=>643,3670=>508,3671=>744,3672=>622,3673=>585,\n3674=>721,3675=>1381,4256=>475,4257=>469,4258=>573,4259=>650,4260=>502,4261=>506,4262=>481,4263=>746,\n4264=>491,4265=>495,4266=>888,4267=>488,4268=>464,4269=>745,4270=>483,4271=>489,4272=>721,4273=>464,\n4274=>578,4275=>590,4276=>611,4277=>491,4278=>663,4279=>489,4280=>544,4281=>479,4282=>527,4283=>488,\n4284=>560,4285=>461,4286=>467,4287=>546,4288=>483,4289=>487,4290=>562,4291=>477,4292=>491,4293=>471,\n4304=>522,4305=>518,4306=>621,4307=>716,4308=>517,4309=>519,4310=>518,4311=>796,4312=>518,4313=>518,\n4314=>934,4315=>517,4316=>519,4317=>787,4318=>515,4319=>514,4320=>788,4321=>573,4322=>620,4323=>593,\n4324=>639,4325=>516,4326=>714,4327=>518,4328=>572,4329=>518,4330=>555,4331=>518,4332=>562,4333=>509,\n4334=>572,4335=>677,4336=>523,4337=>517,4338=>595,4339=>480,4340=>519,4341=>484,4345=>621,4347=>450,\n5024=>718,5025=>768,5026=>633,5027=>878,5028=>1001,5029=>371,5030=>576,5031=>754,5032=>531,5033=>774,\n5034=>692,5035=>499,5036=>668,5037=>829,5038=>575,5039=>681,5040=>485,5041=>607,5042=>885,5043=>974,\n5044=>588,5045=>583,5046=>726,5047=>947,5048=>558,5049=>832,5050=>1096,5051=>780,5052=>595,5053=>869,\n5054=>752,5055=>710,5056=>761,5057=>802,5058=>760,5059=>656,5060=>655,5061=>982,5062=>684,5063=>801,\n5064=>805,5065=>1042,5066=>755,5067=>612,5068=>707,5069=>889,5070=>584,5071=>623,5072=>536,5073=>763,\n5074=>763,5075=>498,5076=>1052,5077=>600,5078=>730,5079=>714,5080=>714,5081=>697,5082=>543,5083=>943,\n5084=>718,5085=>630,5086=>660,5087=>692,5088=>841,5089=>861,5090=>617,5091=>733,5092=>898,5093=>896,\n5094=>781,5095=>612,5096=>830,5097=>948,5098=>886,5099=>757,5100=>796,5101=>578,5102=>601,5103=>797,\n5104=>623,5105=>886,5106=>730,5107=>827,5108=>648,7680=>722,7681=>500,7682=>667,7683=>556,7684=>667,\n7685=>556,7686=>667,7687=>556,7688=>722,7689=>444,7690=>724,7691=>556,7692=>724,7693=>556,7694=>724,\n7695=>556,7696=>724,7697=>556,7698=>724,7699=>556,7700=>667,7701=>444,7702=>667,7703=>444,7704=>667,\n7705=>444,7706=>667,7707=>444,7708=>667,7709=>444,7710=>611,7711=>333,7712=>778,7713=>500,7714=>774,\n7715=>556,7716=>774,7717=>556,7718=>774,7719=>556,7720=>774,7721=>556,7722=>774,7723=>556,7724=>386,\n7725=>278,7726=>389,7727=>278,7728=>764,7729=>556,7730=>764,7731=>556,7732=>764,7733=>556,7734=>664,\n7735=>278,7736=>664,7737=>278,7738=>664,7739=>278,7740=>664,7741=>278,7742=>943,7743=>833,7744=>943,\n7745=>833,7746=>943,7747=>833,7748=>722,7749=>556,7750=>722,7751=>556,7752=>722,7753=>556,7754=>722,\n7755=>556,7756=>778,7757=>500,7758=>778,7759=>500,7760=>778,7761=>500,7762=>778,7763=>500,7764=>611,\n7765=>556,7766=>611,7767=>556,7768=>712,7769=>444,7770=>712,7771=>444,7772=>712,7773=>444,7774=>712,\n7775=>444,7776=>556,7777=>389,7778=>556,7779=>389,7780=>556,7781=>389,7782=>556,7783=>389,7784=>556,\n7785=>389,7786=>667,7787=>333,7788=>667,7789=>333,7790=>667,7791=>333,7792=>667,7793=>333,7794=>722,\n7795=>556,7796=>722,7797=>556,7798=>722,7799=>556,7800=>722,7801=>556,7802=>722,7803=>556,7804=>722,\n7805=>500,7806=>722,7807=>500,7808=>1000,7809=>722,7810=>1000,7811=>722,7812=>1000,7813=>722,7814=>1000,\n7815=>722,7816=>1000,7817=>722,7818=>722,7819=>500,7820=>722,7821=>500,7822=>722,7823=>500,7824=>667,\n7825=>444,7826=>667,7827=>444,7828=>667,7829=>444,7830=>556,7831=>333,7832=>722,7833=>500,7834=>507,\n7835=>333,7840=>722,7841=>500,7842=>722,7843=>500,7844=>722,7845=>500,7846=>722,7847=>500,7848=>722,\n7849=>500,7850=>722,7851=>500,7852=>722,7853=>500,7854=>722,7855=>500,7856=>722,7857=>500,7858=>825,\n7859=>603,7860=>722,7861=>500,7862=>722,7863=>500,7864=>667,7865=>444,7866=>667,7867=>444,7868=>667,\n7869=>444,7870=>667,7871=>444,7872=>667,7873=>444,7874=>667,7875=>444,7876=>667,7877=>444,7878=>667,\n7879=>444,7880=>386,7881=>278,7882=>386,7883=>278,7884=>778,7885=>500,7886=>778,7887=>500,7888=>778,\n7889=>500,7890=>778,7891=>500,7892=>778,7893=>500,7894=>778,7895=>500,7896=>778,7897=>500,7898=>774,\n7899=>550,7900=>774,7901=>550,7902=>774,7903=>549,7904=>778,7905=>550,7906=>778,7907=>550,7908=>722,\n7909=>556,7910=>722,7911=>556,7912=>838,7913=>672,7914=>838,7915=>672,7916=>825,7917=>659,7918=>839,\n7919=>629,7920=>839,7921=>629,7922=>722,7923=>500,7924=>722,7925=>500,7926=>722,7927=>500,7928=>722,\n7929=>500,7936=>605,7937=>605,7938=>605,7939=>605,7940=>605,7941=>605,7942=>605,7943=>605,7944=>722,\n7945=>722,7946=>830,7947=>833,7948=>761,7949=>798,7950=>721,7951=>722,7952=>440,7953=>440,7954=>440,\n7955=>440,7956=>440,7957=>440,7960=>817,7961=>826,7962=>944,7963=>970,7964=>964,7965=>1009,7968=>605,\n7969=>605,7970=>605,7971=>605,7972=>605,7973=>605,7974=>605,7975=>605,7976=>926,7977=>921,7978=>1038,\n7979=>1064,7980=>1092,7981=>1102,7982=>1005,7983=>991,7984=>330,7985=>330,7986=>330,7987=>330,7988=>330,\n7989=>330,7990=>330,7991=>330,7992=>534,7993=>541,7994=>653,7995=>659,7996=>705,7997=>714,7998=>612,\n7999=>614,8000=>550,8001=>550,8002=>550,8003=>550,8004=>550,8005=>550,8008=>885,8009=>886,8010=>1038,\n8011=>1052,8012=>997,8013=>1021,8016=>550,8017=>550,8018=>550,8019=>550,8020=>550,8021=>550,8022=>550,\n8023=>550,8025=>870,8027=>1014,8029=>1043,8031=>944,8032=>715,8033=>715,8034=>715,8035=>715,8036=>715,\n8037=>715,8038=>715,8039=>715,8040=>905,8041=>913,8042=>1066,8043=>1085,8044=>1034,8045=>1044,8046=>980,\n8047=>961,8048=>605,8049=>605,8050=>440,8051=>440,8052=>605,8053=>605,8054=>330,8055=>330,8056=>550,\n8057=>550,8058=>550,8059=>550,8060=>715,8061=>715,8064=>605,8065=>605,8066=>605,8067=>605,8068=>605,\n8069=>605,8070=>605,8071=>605,8072=>886,8073=>887,8074=>985,8075=>993,8076=>937,8077=>956,8078=>874,\n8079=>878,8080=>605,8081=>605,8082=>605,8083=>605,8084=>605,8085=>605,8086=>605,8087=>605,8088=>1096,\n8089=>1092,8090=>1223,8091=>1250,8092=>1270,8093=>1283,8094=>1174,8095=>1162,8096=>715,8097=>715,8098=>715,\n8099=>715,8100=>715,8101=>715,8102=>715,8103=>715,8104=>1057,8105=>1073,8106=>1228,8107=>1251,8108=>1202,\n8109=>1210,8110=>1151,8111=>1131,8112=>605,8113=>605,8114=>605,8115=>605,8116=>605,8118=>605,8119=>605,\n8120=>722,8121=>722,8122=>722,8123=>722,8124=>883,8125=>500,8126=>0,8127=>500,8128=>500,8129=>550,\n8130=>605,8131=>605,8132=>605,8134=>605,8135=>605,8136=>790,8137=>830,8138=>909,8139=>931,8140=>950,\n8141=>500,8142=>500,8143=>500,8144=>330,8145=>330,8146=>330,8147=>330,8150=>330,8151=>330,8152=>386,\n8153=>386,8154=>506,8155=>550,8157=>500,8158=>500,8159=>500,8160=>550,8161=>550,8162=>550,8163=>550,\n8164=>550,8165=>550,8166=>550,8167=>550,8168=>738,8169=>738,8170=>858,8171=>880,8172=>764,8173=>550,\n8174=>550,8175=>500,8178=>715,8179=>715,8180=>715,8182=>715,8183=>715,8184=>884,8185=>857,8186=>927,\n8187=>892,8188=>988,8189=>500,8190=>500,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,\n8198=>167,8199=>500,8200=>250,8201=>200,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,\n8208=>333,8209=>333,8210=>500,8213=>1000,8214=>333,8215=>478,8219=>250,8223=>500,8227=>560,8228=>250,\n8229=>500,8231=>250,8232=>0,8233=>0,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>250,\n8241=>1588,8242=>270,8243=>492,8244=>714,8245=>270,8246=>484,8247=>693,8248=>469,8251=>727,8252=>666,\n8253=>695,8254=>500,8255=>953,8256=>953,8257=>338,8258=>931,8259=>333,8260=>167,8261=>332,8262=>332,\n8263=>1000,8264=>833,8265=>833,8266=>500,8267=>540,8268=>528,8269=>523,8270=>500,8271=>333,8272=>953,\n8273=>500,8274=>497,8275=>576,8276=>953,8277=>785,8278=>450,8279=>881,8280=>620,8281=>620,8282=>179,\n8283=>621,8284=>569,8285=>179,8286=>179,8287=>111,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,\n8304=>300,8305=>278,8308=>300,8309=>300,8310=>300,8311=>300,8312=>300,8313=>300,8314=>300,8315=>300,\n8316=>300,8317=>216,8318=>216,8319=>318,8320=>300,8321=>274,8322=>300,8323=>300,8324=>300,8325=>300,\n8326=>300,8327=>300,8328=>300,8329=>300,8330=>300,8331=>300,8332=>300,8333=>216,8334=>216,8352=>710,\n8353=>722,8354=>783,8355=>611,8356=>500,8357=>833,8358=>722,8359=>960,8360=>1101,8361=>1000,8362=>889,\n8363=>532,8365=>742,8366=>631,8369=>609,8370=>639,8371=>660,8372=>556,8373=>500,8448=>752,8449=>746,\n8451=>1009,8457=>923,8458=>500,8459=>1035,8462=>556,8463=>556,8464=>792,8465=>737,8466=>800,8467=>427,\n8468=>835,8470=>879,8471=>1048,8472=>666,8475=>747,8476=>955,8478=>722,8479=>722,8480=>891,8481=>1156,\n8483=>722,8486=>811,8487=>811,8489=>333,8490=>764,8491=>722,8492=>806,8494=>551,8497=>723,8498=>611,\n8499=>1203,8501=>593,8502=>498,8503=>339,8504=>523,8506=>906,8507=>1156,8523=>778,8525=>866,8526=>500,\n8531=>750,8532=>750,8533=>750,8534=>750,8535=>750,8536=>750,8537=>750,8538=>750,8539=>750,8540=>750,\n8541=>750,8542=>750,8543=>750,8544=>386,8545=>772,8546=>1158,8547=>1108,8548=>722,8549=>1108,8550=>1494,\n8551=>1880,8552=>1108,8553=>722,8554=>1108,8555=>1494,8556=>664,8557=>722,8558=>724,8559=>943,8560=>278,\n8561=>556,8562=>834,8563=>778,8564=>500,8565=>778,8566=>1056,8567=>1334,8568=>778,8569=>500,8570=>778,\n8571=>1056,8572=>278,8573=>444,8574=>556,8575=>833,8592=>964,8593=>523,8594=>964,8595=>523,8596=>964,\n8597=>964,8598=>964,8599=>964,8600=>964,8601=>964,8602=>964,8603=>964,8604=>1152,8605=>1152,8606=>964,\n8607=>964,8608=>964,8609=>964,8610=>1078,8611=>1078,8612=>964,8613=>964,8614=>964,8615=>964,8616=>964,\n8617=>964,8618=>964,8619=>964,8620=>964,8621=>1168,8622=>964,8624=>622,8625=>622,8630=>1069,8631=>1069,\n8632=>964,8633=>964,8634=>980,8635=>980,8636=>964,8637=>964,8638=>557,8639=>556,8640=>964,8641=>964,\n8642=>557,8643=>556,8644=>964,8645=>964,8646=>964,8647=>964,8648=>964,8649=>964,8650=>964,8651=>964,\n8652=>964,8653=>964,8654=>964,8655=>964,8656=>964,8657=>630,8658=>964,8659=>630,8660=>964,8661=>630,\n8662=>1063,8663=>1063,8664=>1063,8665=>1063,8666=>964,8667=>964,8668=>1100,8669=>1100,8672=>964,8674=>964,\n8676=>964,8677=>964,8704=>627,8705=>716,8706=>558,8707=>627,8708=>627,8709=>500,8710=>612,8711=>719,\n8713=>576,8714=>576,8716=>576,8717=>576,8720=>733,8721=>713,8722=>676,8723=>676,8724=>676,8725=>750,\n8727=>570,8729=>570,8730=>549,8733=>676,8734=>752,8736=>555,8737=>555,8738=>555,8739=>240,8740=>531,\n8741=>478,8742=>705,8743=>694,8744=>694,8745=>694,8746=>694,8747=>323,8756=>629,8757=>629,8761=>947,\n8764=>676,8765=>676,8766=>763,8768=>305,8769=>676,8770=>676,8771=>676,8773=>676,8776=>676,8777=>676,\n8778=>676,8781=>676,8782=>676,8783=>676,8784=>676,8785=>676,8786=>676,8787=>676,8788=>947,8789=>947,\n8790=>676,8791=>676,8796=>676,8800=>570,8801=>676,8802=>676,8804=>570,8805=>570,8806=>676,8807=>676,\n8808=>676,8809=>676,8810=>1047,8811=>1047,8812=>450,8813=>676,8814=>676,8815=>676,8816=>676,8817=>676,\n8818=>676,8819=>676,8820=>676,8821=>676,8822=>676,8823=>676,8824=>676,8825=>676,8826=>676,8827=>676,\n8828=>676,8829=>676,8830=>676,8831=>676,8832=>676,8833=>676,8834=>676,8835=>676,8836=>676,8837=>676,\n8838=>676,8839=>676,8840=>676,8841=>676,8842=>676,8843=>676,8846=>694,8847=>676,8848=>676,8849=>676,\n8850=>676,8851=>694,8852=>694,8853=>738,8854=>738,8855=>738,8856=>738,8857=>738,8858=>738,8859=>738,\n8861=>738,8862=>678,8863=>678,8864=>678,8865=>678,8866=>487,8867=>487,8868=>752,8869=>752,8871=>487,\n8873=>659,8874=>831,8876=>487,8877=>487,8878=>659,8879=>659,8882=>676,8883=>676,8884=>676,8885=>676,\n8886=>1380,8887=>1380,8888=>1027,8890=>626,8891=>694,8892=>694,8893=>694,8900=>512,8903=>676,8904=>759,\n8905=>632,8906=>632,8907=>1000,8908=>1000,8909=>676,8910=>694,8911=>694,8912=>676,8913=>676,8914=>694,\n8915=>694,8916=>694,8918=>676,8919=>676,8920=>1441,8921=>1441,8922=>676,8923=>676,8924=>676,8925=>676,\n8926=>676,8927=>676,8928=>676,8929=>676,8930=>676,8931=>676,8934=>676,8935=>676,8936=>676,8937=>676,\n8938=>676,8939=>676,8940=>676,8941=>676,8960=>737,8968=>411,8969=>411,8970=>411,8971=>411,8976=>680,\n8994=>951,8995=>951,9001=>398,9002=>398,9251=>500,9472=>1000,9473=>1000,9474=>1000,9475=>1000,9476=>1000,\n9477=>1000,9478=>1000,9479=>1000,9480=>1000,9481=>1000,9482=>1000,9483=>1000,9484=>1000,9485=>1000,9486=>1000,\n9487=>1000,9488=>1000,9489=>1000,9490=>1000,9491=>1000,9492=>1000,9493=>1000,9494=>1000,9495=>1000,9496=>1000,\n9497=>1000,9498=>1000,9499=>1000,9500=>1000,9501=>1000,9502=>1000,9503=>1000,9504=>1000,9505=>1000,9506=>1000,\n9507=>1000,9508=>1000,9509=>1000,9510=>1000,9511=>1000,9512=>1000,9513=>1000,9514=>1000,9515=>1000,9516=>1000,\n9517=>1000,9518=>1000,9519=>1000,9520=>1000,9521=>1000,9522=>1000,9523=>1000,9524=>1000,9525=>1000,9526=>1000,\n9527=>1000,9528=>1000,9529=>1000,9530=>1000,9531=>1000,9532=>1000,9533=>1000,9534=>1000,9535=>1000,9536=>1000,\n9537=>1000,9538=>1000,9539=>1000,9540=>1000,9541=>1000,9542=>1000,9543=>1000,9544=>1000,9545=>1000,9546=>1000,\n9547=>1000,9552=>1000,9553=>1000,9554=>1000,9555=>1000,9556=>1000,9557=>1000,9558=>1000,9559=>1000,9560=>1000,\n9561=>1000,9562=>1000,9563=>1000,9564=>1000,9565=>1000,9566=>1000,9567=>1000,9568=>1000,9569=>1000,9570=>1000,\n9571=>1000,9572=>1000,9573=>1000,9574=>1000,9575=>1000,9576=>1000,9577=>1000,9578=>1000,9579=>1000,9580=>1000,\n9600=>1000,9601=>1000,9602=>1000,9603=>1000,9604=>1000,9605=>1000,9606=>1000,9607=>1000,9608=>1000,9609=>1000,\n9610=>1000,9611=>1000,9612=>1000,9613=>1000,9614=>1000,9615=>1000,9616=>1000,9617=>1000,9618=>1000,9620=>1000,\n9621=>1000,9622=>1000,9623=>1000,9624=>1000,9625=>1000,9626=>1000,9627=>1000,9628=>1000,9629=>1000,9630=>1000,\n9631=>1000,9632=>678,9633=>678,9642=>309,9650=>681,9651=>681,9654=>681,9655=>681,9660=>681,9661=>681,\n9664=>681,9665=>681,9670=>580,9671=>580,9674=>494,9675=>738,9676=>732,9679=>738,9702=>524,9711=>851,\n9733=>1003,9734=>1003,9824=>618,9825=>645,9826=>587,9827=>582,9828=>582,9829=>645,9830=>587,9831=>618,\n9833=>333,9834=>556,9835=>778,9836=>778,9837=>556,9838=>556,9839=>556,10214=>561,10215=>561,11799=>333,\n64256=>613,64257=>559,64258=>559,64259=>846,64260=>836,64262=>723,64285=>266,64286=>0,64287=>532,64288=>552,\n64297=>570,64298=>716,64299=>716,64300=>716,64301=>716,64302=>593,64303=>593,64304=>593,64305=>498,64306=>339,\n64307=>523,64308=>561,64309=>266,64310=>291,64312=>576,64313=>266,64314=>496,64315=>501,64316=>510,64318=>581,\n64320=>347,64321=>512,64323=>493,64324=>491,64326=>561,64327=>544,64328=>502,64329=>716,64330=>571,64331=>266,\n64332=>498,64333=>501,64334=>491,64335=>593,65533=>788);\n$enc='';\n$diff='';\n$file='freeserifb.z';\n$ctg='freeserifb.ctg.z';\n$originalsize=467208;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/freeserifbi.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='FreeSerifBoldItalic';\n$desc=array('Ascent'=>900,'Descent'=>-300,'CapHeight'=>-24,'Flags'=>96,'FontBBox'=>'[-787 -1120 1867 1571]','ItalicAngle'=>-16.3,'StemV'=>120,'MissingWidth'=>600);\n$up=-125;\n$ut=50;\n$dw=600;\n$cw=array(\n32=>250,33=>389,34=>555,35=>500,36=>500,37=>833,38=>778,39=>278,40=>333,41=>333,\n42=>500,43=>570,44=>250,45=>333,46=>250,47=>278,48=>500,49=>500,50=>500,51=>500,\n52=>500,53=>500,54=>500,55=>500,56=>500,57=>500,58=>333,59=>333,60=>570,61=>570,\n62=>570,63=>500,64=>832,65=>667,66=>667,67=>667,68=>744,69=>670,70=>656,71=>722,\n72=>778,73=>393,74=>500,75=>664,76=>609,77=>896,78=>722,79=>722,80=>614,81=>722,\n82=>672,83=>556,84=>611,85=>722,86=>667,87=>889,88=>667,89=>611,90=>611,91=>333,\n92=>278,93=>333,94=>570,95=>500,96=>333,97=>500,98=>500,99=>444,100=>500,101=>444,\n102=>333,103=>500,104=>556,105=>278,106=>278,107=>500,108=>278,109=>778,110=>556,111=>500,\n112=>500,113=>500,114=>389,115=>389,116=>278,117=>556,118=>444,119=>667,120=>500,121=>444,\n122=>389,123=>348,124=>220,125=>348,126=>570,8364=>761,8218=>250,402=>333,8222=>500,8230=>1000,\n8224=>500,8225=>500,710=>333,8240=>1000,352=>556,8249=>333,338=>944,381=>611,8216=>250,8217=>250,\n8220=>500,8221=>500,8226=>350,8211=>500,8212=>1000,732=>333,8482=>1000,353=>389,8250=>333,339=>722,\n382=>389,376=>611,160=>250,161=>389,162=>500,163=>500,164=>500,165=>500,166=>220,167=>500,\n168=>333,169=>747,170=>266,171=>500,172=>606,173=>333,174=>747,175=>333,176=>400,177=>570,\n178=>300,179=>300,180=>333,181=>576,182=>500,183=>250,184=>333,185=>272,186=>300,187=>500,\n188=>750,189=>750,190=>750,191=>500,192=>667,193=>667,194=>667,195=>667,196=>667,197=>667,\n198=>944,199=>667,200=>667,201=>667,202=>667,203=>667,204=>389,205=>389,206=>389,207=>389,\n208=>722,209=>722,210=>722,211=>722,212=>722,213=>722,214=>722,215=>570,216=>722,217=>722,\n218=>722,219=>722,220=>722,221=>611,222=>609,223=>500,224=>500,225=>500,226=>500,227=>500,\n228=>500,229=>500,230=>722,231=>444,232=>444,233=>444,234=>444,235=>444,236=>278,237=>278,\n238=>278,239=>278,240=>500,241=>556,242=>500,243=>500,244=>500,245=>500,246=>500,247=>570,\n248=>500,249=>556,250=>556,251=>556,252=>556,253=>444,254=>500,255=>444,256=>667,257=>500,\n258=>667,259=>500,260=>667,261=>500,262=>667,263=>444,264=>667,265=>444,266=>667,267=>444,\n268=>667,269=>444,270=>722,271=>616,272=>722,273=>500,274=>667,275=>444,276=>667,277=>444,\n278=>667,279=>444,280=>667,281=>444,282=>667,283=>444,284=>722,285=>500,286=>722,287=>500,\n288=>722,289=>500,290=>722,291=>500,292=>778,293=>556,294=>778,295=>556,296=>389,297=>278,\n298=>389,299=>278,300=>389,301=>278,302=>389,303=>278,304=>389,305=>278,306=>826,307=>547,\n308=>500,309=>278,310=>667,311=>500,312=>534,313=>611,314=>278,315=>611,316=>278,317=>638,\n318=>424,319=>611,320=>424,321=>611,322=>278,323=>722,324=>556,325=>722,326=>556,327=>722,\n328=>556,329=>556,330=>722,331=>547,332=>722,333=>500,334=>722,335=>500,336=>722,337=>500,\n340=>667,341=>389,342=>667,343=>389,344=>667,345=>389,346=>556,347=>389,348=>556,349=>389,\n350=>556,351=>389,354=>611,355=>278,356=>611,357=>308,358=>611,359=>278,360=>722,361=>556,\n362=>722,363=>556,364=>722,365=>556,366=>722,367=>556,368=>722,369=>556,370=>722,371=>556,\n372=>889,373=>667,374=>611,375=>444,377=>611,378=>389,379=>611,380=>389,383=>333,384=>500,\n385=>850,386=>667,387=>575,388=>630,389=>500,390=>722,391=>929,392=>654,393=>722,394=>864,\n395=>684,396=>500,397=>546,398=>670,399=>722,400=>631,401=>769,403=>929,404=>716,405=>745,\n406=>278,407=>389,408=>829,409=>500,410=>278,411=>495,412=>853,413=>919,414=>556,415=>722,\n416=>908,417=>640,418=>1014,419=>778,420=>757,421=>500,422=>611,423=>556,424=>389,425=>730,\n426=>455,427=>349,428=>611,429=>298,430=>611,431=>902,432=>714,433=>811,434=>678,435=>611,\n436=>581,437=>611,438=>389,439=>619,440=>614,441=>461,442=>445,443=>500,444=>614,445=>500,\n446=>389,447=>504,448=>220,449=>418,450=>570,451=>333,452=>1355,453=>1133,454=>889,455=>1109,\n456=>887,457=>556,458=>1222,459=>1000,460=>834,461=>667,462=>500,463=>393,464=>278,465=>722,\n466=>500,467=>722,468=>556,469=>722,470=>556,471=>722,472=>556,473=>722,474=>556,475=>722,\n476=>556,477=>444,478=>667,479=>500,480=>667,481=>500,482=>944,483=>722,484=>722,485=>500,\n486=>722,487=>500,488=>664,489=>500,490=>722,491=>500,492=>722,493=>500,494=>619,495=>513,\n496=>278,497=>1355,498=>1133,499=>889,500=>722,501=>500,502=>944,503=>660,504=>722,505=>556,\n506=>667,507=>500,508=>944,509=>722,510=>722,511=>500,512=>667,513=>500,514=>667,515=>500,\n516=>670,517=>444,518=>670,519=>444,520=>393,521=>278,522=>393,523=>278,524=>722,525=>500,\n526=>722,527=>500,528=>672,529=>389,530=>672,531=>389,532=>722,533=>556,534=>722,535=>556,\n536=>556,537=>389,538=>611,539=>278,540=>424,541=>455,542=>778,543=>556,544=>731,545=>618,\n546=>568,547=>500,548=>667,549=>444,550=>667,551=>500,552=>670,553=>444,554=>722,555=>500,\n556=>722,557=>500,558=>722,559=>500,560=>722,561=>500,562=>611,563=>444,564=>422,565=>621,\n566=>413,567=>278,568=>800,569=>784,570=>644,571=>667,572=>444,573=>664,574=>611,575=>389,\n576=>451,577=>444,578=>444,579=>667,580=>722,581=>722,582=>670,583=>444,584=>500,585=>278,\n586=>808,587=>608,588=>672,589=>389,590=>611,591=>444,592=>500,593=>590,594=>590,595=>500,\n596=>444,599=>668,600=>444,601=>444,603=>430,608=>569,609=>500,613=>556,616=>278,617=>320,\n618=>278,623=>778,629=>500,633=>389,643=>333,648=>278,649=>500,650=>557,651=>492,652=>444,\n653=>667,654=>444,658=>513,670=>500,697=>250,698=>408,699=>250,700=>250,701=>250,702=>300,\n703=>300,706=>333,707=>333,708=>333,709=>333,711=>333,712=>333,713=>333,714=>333,715=>333,\n716=>300,717=>333,718=>333,719=>333,720=>278,721=>278,722=>300,723=>300,724=>333,725=>333,\n726=>333,727=>333,728=>333,729=>333,730=>333,731=>333,733=>333,734=>333,735=>352,741=>526,\n742=>526,743=>526,744=>526,745=>526,746=>519,747=>519,748=>333,749=>333,750=>480,751=>333,\n752=>333,753=>333,754=>333,755=>327,756=>261,757=>437,758=>437,759=>400,760=>278,761=>175,\n762=>175,763=>175,764=>175,765=>0,766=>337,767=>432,768=>0,769=>0,770=>0,771=>0,\n772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,778=>0,779=>0,780=>0,781=>0,\n782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,788=>0,789=>0,790=>0,791=>0,\n792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,798=>0,799=>0,800=>0,801=>0,\n802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,808=>0,809=>0,810=>0,811=>0,\n812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,818=>0,819=>0,820=>0,821=>0,\n822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,828=>0,829=>0,830=>0,831=>0,\n832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,838=>0,839=>0,840=>0,841=>0,\n842=>0,843=>0,844=>0,845=>0,846=>0,847=>0,848=>0,849=>0,850=>0,851=>0,\n852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,858=>0,860=>0,861=>0,862=>0,\n863=>0,864=>0,865=>0,884=>199,885=>199,890=>0,894=>333,900=>330,901=>333,902=>667,\n903=>250,904=>819,905=>955,906=>539,908=>835,910=>961,911=>889,912=>320,913=>667,914=>667,\n915=>637,916=>740,917=>667,918=>611,919=>778,920=>722,921=>389,922=>677,923=>667,924=>889,\n925=>722,926=>650,927=>722,928=>778,929=>611,931=>730,932=>621,933=>722,934=>748,935=>667,\n936=>858,937=>741,938=>389,939=>722,940=>590,941=>430,942=>548,943=>320,944=>536,945=>590,\n946=>536,947=>548,948=>550,949=>430,950=>482,951=>548,952=>525,953=>320,954=>564,955=>510,\n956=>589,957=>522,958=>482,959=>536,960=>629,961=>536,962=>470,963=>536,964=>464,965=>536,\n966=>643,967=>482,968=>715,969=>715,970=>320,971=>536,972=>536,973=>536,974=>715,976=>508,\n977=>589,978=>722,979=>931,980=>722,981=>660,982=>715,983=>536,984=>611,985=>536,986=>620,\n987=>524,988=>667,989=>535,990=>708,991=>428,992=>671,993=>633,1008=>550,1009=>550,1010=>477,\n1011=>278,1012=>722,1013=>411,1014=>411,1015=>609,1016=>500,1017=>667,1018=>896,1019=>769,1020=>536,\n1021=>667,1022=>667,1023=>667,1024=>670,1025=>670,1026=>762,1027=>637,1028=>667,1029=>556,1030=>393,\n1031=>393,1032=>500,1033=>1085,1034=>1049,1035=>747,1036=>736,1037=>778,1038=>746,1039=>778,1040=>667,\n1041=>667,1042=>667,1043=>637,1044=>778,1045=>670,1046=>1044,1047=>650,1048=>778,1049=>778,1050=>736,\n1051=>814,1052=>896,1053=>778,1054=>722,1055=>778,1056=>614,1057=>667,1058=>611,1059=>746,1060=>748,\n1061=>667,1062=>778,1063=>742,1064=>1136,1065=>1135,1066=>779,1067=>984,1068=>664,1069=>732,1070=>1069,\n1071=>779,1072=>500,1073=>508,1074=>486,1075=>414,1076=>486,1077=>444,1078=>982,1079=>476,1080=>556,\n1081=>556,1082=>564,1083=>585,1084=>757,1085=>552,1086=>500,1087=>556,1088=>500,1089=>444,1090=>778,\n1091=>532,1092=>764,1093=>500,1094=>556,1095=>556,1096=>806,1097=>806,1098=>644,1099=>744,1100=>470,\n1101=>488,1102=>757,1103=>586,1104=>444,1105=>444,1106=>524,1107=>414,1108=>488,1109=>389,1110=>278,\n1111=>278,1112=>278,1113=>772,1114=>745,1115=>556,1116=>564,1117=>556,1118=>532,1119=>556,1120=>990,\n1121=>690,1122=>804,1123=>751,1124=>1017,1125=>752,1126=>900,1127=>728,1128=>1236,1129=>927,1130=>1044,\n1131=>826,1132=>1401,1133=>1016,1134=>620,1135=>476,1136=>858,1137=>769,1138=>722,1139=>544,1140=>796,\n1141=>584,1142=>796,1143=>584,1144=>1268,1145=>1023,1146=>895,1147=>612,1148=>990,1149=>690,1150=>990,\n1151=>635,1152=>620,1153=>444,1154=>372,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>0,\n1161=>0,1162=>778,1163=>556,1164=>664,1165=>470,1166=>614,1167=>473,1168=>624,1169=>448,1170=>624,\n1171=>448,1172=>733,1173=>485,1174=>1080,1175=>982,1176=>650,1177=>476,1178=>772,1179=>564,1180=>772,\n1181=>590,1182=>738,1183=>499,1184=>862,1185=>718,1186=>778,1187=>552,1188=>976,1189=>682,1190=>1085,\n1191=>787,1192=>667,1193=>480,1194=>667,1195=>444,1196=>534,1197=>778,1198=>611,1199=>640,1200=>611,\n1201=>640,1202=>694,1203=>500,1204=>1004,1205=>518,1206=>742,1207=>556,1208=>742,1209=>556,1210=>716,\n1211=>556,1212=>844,1213=>530,1214=>844,1215=>530,1216=>393,1217=>1044,1218=>982,1219=>736,1220=>534,\n1221=>814,1222=>585,1223=>778,1224=>552,1225=>778,1226=>552,1227=>742,1228=>556,1229=>896,1230=>757,\n1231=>393,1232=>667,1233=>500,1234=>667,1235=>500,1236=>891,1237=>646,1238=>670,1239=>444,1240=>659,\n1241=>372,1242=>619,1243=>372,1244=>1044,1245=>994,1246=>650,1247=>476,1248=>604,1249=>459,1250=>778,\n1251=>539,1252=>778,1253=>539,1254=>722,1255=>500,1256=>722,1257=>500,1258=>722,1259=>500,1260=>732,\n1261=>488,1262=>746,1263=>532,1264=>746,1265=>532,1266=>746,1267=>532,1268=>742,1269=>556,1270=>637,\n1271=>448,1272=>984,1273=>744,1296=>652,1297=>452,1298=>814,1299=>585,1306=>722,1307=>500,1308=>889,\n1309=>656,1310=>736,1311=>564,1425=>0,1426=>0,1427=>0,1428=>0,1429=>0,1430=>0,1431=>0,\n1432=>0,1433=>0,1434=>0,1435=>0,1436=>0,1437=>0,1438=>0,1439=>0,1440=>0,1441=>0,\n1442=>0,1443=>0,1444=>0,1445=>0,1446=>0,1447=>0,1448=>0,1449=>0,1450=>0,1451=>0,\n1452=>0,1453=>0,1454=>0,1455=>0,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,\n1462=>0,1463=>0,1464=>0,1465=>0,1466=>0,1467=>0,1468=>0,1469=>0,1470=>433,1471=>0,\n1472=>155,1473=>0,1474=>0,1475=>400,1476=>0,1477=>0,1478=>347,1479=>0,1488=>593,1489=>498,\n1490=>339,1491=>523,1492=>561,1493=>266,1494=>291,1495=>559,1496=>576,1497=>266,1498=>496,1499=>501,\n1500=>510,1501=>542,1502=>581,1503=>273,1504=>347,1505=>512,1506=>552,1507=>493,1508=>491,1509=>537,\n1510=>561,1511=>544,1512=>502,1513=>716,1514=>571,1520=>532,1521=>532,1522=>532,1523=>396,1524=>432,\n3585=>590,3586=>578,3587=>661,3588=>592,3589=>592,3590=>699,3591=>447,3592=>534,3593=>692,3594=>578,\n3595=>659,3596=>899,3597=>804,3598=>633,3599=>637,3600=>484,3601=>730,3602=>876,3603=>915,3604=>592,\n3605=>592,3606=>578,3607=>670,3608=>542,3609=>671,3610=>621,3611=>618,3612=>621,3613=>617,3614=>708,\n3615=>708,3616=>637,3617=>589,3618=>552,3619=>484,3620=>590,3621=>569,3622=>637,3623=>526,3624=>599,\n3625=>802,3626=>579,3627=>668,3628=>778,3629=>560,3630=>514,3631=>510,3632=>442,3633=>0,3634=>423,\n3635=>452,3636=>0,3637=>0,3638=>0,3639=>0,3640=>0,3641=>0,3642=>0,3647=>665,3648=>357,\n3649=>624,3650=>529,3651=>486,3652=>475,3653=>423,3654=>500,3655=>0,3656=>0,3657=>0,3658=>0,\n3659=>0,3660=>0,3661=>0,3662=>0,3663=>657,3664=>548,3665=>548,3666=>592,3667=>614,3668=>631,\n3669=>643,3670=>508,3671=>744,3672=>622,3673=>585,3674=>721,3675=>1381,4256=>475,4257=>469,4258=>573,\n4259=>650,4260=>502,4261=>506,4262=>481,4263=>746,4264=>491,4265=>495,4266=>888,4267=>488,4268=>464,\n4269=>745,4270=>483,4271=>489,4272=>721,4273=>464,4274=>578,4275=>590,4276=>611,4277=>491,4278=>663,\n4279=>489,4280=>544,4281=>479,4282=>527,4283=>488,4284=>560,4285=>461,4286=>467,4287=>546,4288=>483,\n4289=>487,4290=>562,4291=>477,4292=>491,4293=>471,4304=>522,4305=>518,4306=>621,4307=>716,4308=>517,\n4309=>519,4310=>518,4311=>796,4312=>518,4313=>518,4314=>934,4315=>517,4316=>519,4317=>787,4318=>515,\n4319=>514,4320=>788,4321=>573,4322=>620,4323=>593,4324=>639,4325=>516,4326=>714,4327=>518,4328=>572,\n4329=>518,4330=>555,4331=>518,4332=>562,4333=>509,4334=>572,4335=>677,4336=>523,4337=>517,4338=>595,\n4339=>480,4340=>519,4341=>484,4345=>621,4347=>410,5024=>718,5025=>768,5026=>633,5027=>878,5028=>1001,\n5029=>371,5030=>576,5031=>754,5032=>531,5033=>774,5034=>692,5035=>499,5036=>668,5037=>829,5038=>575,\n5039=>681,5040=>485,5041=>607,5042=>885,5043=>974,5044=>588,5045=>583,5046=>726,5047=>947,5048=>558,\n5049=>832,5050=>1096,5051=>780,5052=>595,5053=>869,5054=>752,5055=>710,5056=>761,5057=>802,5058=>760,\n5059=>656,5060=>655,5061=>982,5062=>684,5063=>801,5064=>805,5065=>1042,5066=>755,5067=>612,5068=>707,\n5069=>889,5070=>584,5071=>623,5072=>536,5073=>763,5074=>763,5075=>498,5076=>1052,5077=>600,5078=>730,\n5079=>714,5080=>714,5081=>697,5082=>543,5083=>943,5084=>718,5085=>630,5086=>660,5087=>692,5088=>841,\n5089=>861,5090=>617,5091=>733,5092=>898,5093=>896,5094=>781,5095=>612,5096=>830,5097=>948,5098=>886,\n5099=>757,5100=>796,5101=>578,5102=>601,5103=>797,5104=>623,5105=>886,5106=>730,5107=>827,5108=>648,\n7680=>667,7681=>500,7682=>667,7683=>500,7684=>667,7685=>500,7686=>667,7687=>500,7688=>667,7689=>444,\n7690=>744,7691=>500,7692=>744,7693=>500,7694=>744,7695=>500,7696=>744,7697=>500,7698=>744,7699=>500,\n7700=>667,7701=>444,7702=>667,7703=>444,7704=>670,7705=>444,7706=>670,7707=>444,7708=>670,7709=>444,\n7710=>656,7711=>333,7712=>722,7713=>500,7714=>778,7715=>556,7716=>778,7717=>556,7718=>778,7719=>556,\n7720=>778,7721=>556,7722=>778,7723=>556,7724=>393,7725=>278,7726=>389,7727=>278,7728=>664,7729=>500,\n7730=>664,7731=>500,7732=>664,7733=>500,7734=>609,7735=>278,7736=>609,7737=>278,7738=>609,7739=>278,\n7740=>609,7741=>278,7742=>896,7743=>778,7744=>896,7745=>778,7746=>896,7747=>778,7748=>722,7749=>556,\n7750=>722,7751=>556,7752=>722,7753=>556,7754=>722,7755=>556,7756=>722,7757=>500,7758=>722,7759=>500,\n7760=>722,7761=>500,7762=>722,7763=>500,7764=>614,7765=>500,7766=>614,7767=>500,7768=>672,7769=>389,\n7770=>672,7771=>389,7772=>672,7773=>389,7774=>672,7775=>389,7776=>556,7777=>389,7778=>556,7779=>389,\n7780=>556,7781=>389,7782=>556,7783=>389,7784=>556,7785=>389,7786=>611,7787=>278,7788=>611,7789=>278,\n7790=>611,7791=>278,7792=>611,7793=>278,7794=>722,7795=>556,7796=>722,7797=>556,7798=>722,7799=>556,\n7800=>722,7801=>556,7802=>722,7803=>556,7804=>667,7805=>444,7806=>667,7807=>444,7808=>889,7809=>667,\n7810=>889,7811=>667,7812=>889,7813=>667,7814=>889,7815=>667,7816=>889,7817=>667,7818=>667,7819=>500,\n7820=>667,7821=>500,7822=>611,7823=>444,7824=>611,7825=>389,7826=>611,7827=>389,7828=>611,7829=>389,\n7830=>556,7831=>278,7832=>667,7833=>444,7834=>507,7835=>333,7840=>667,7841=>500,7842=>667,7843=>500,\n7844=>667,7845=>500,7846=>667,7847=>500,7848=>667,7849=>500,7850=>667,7851=>500,7852=>667,7853=>500,\n7854=>667,7855=>500,7856=>667,7857=>500,7858=>667,7859=>500,7860=>667,7861=>500,7862=>667,7863=>500,\n7864=>670,7865=>444,7866=>670,7867=>444,7868=>670,7869=>444,7870=>667,7871=>444,7872=>667,7873=>444,\n7874=>667,7875=>444,7876=>667,7877=>444,7878=>670,7879=>444,7880=>393,7881=>278,7882=>393,7883=>278,\n7884=>722,7885=>500,7886=>722,7887=>500,7888=>722,7889=>500,7890=>722,7891=>500,7892=>722,7893=>500,\n7894=>722,7895=>500,7896=>722,7897=>500,7898=>908,7899=>640,7900=>908,7901=>640,7902=>908,7903=>640,\n7904=>908,7905=>640,7906=>908,7907=>640,7908=>722,7909=>556,7910=>722,7911=>556,7912=>902,7913=>714,\n7914=>902,7915=>714,7916=>902,7917=>714,7918=>902,7919=>714,7920=>902,7921=>714,7922=>611,7923=>444,\n7924=>611,7925=>444,7926=>611,7927=>444,7928=>611,7929=>444,7936=>590,7937=>590,7938=>590,7939=>590,\n7940=>590,7941=>590,7942=>590,7943=>590,7944=>724,7945=>753,7946=>891,7947=>912,7948=>822,7949=>853,\n7950=>796,7951=>787,7952=>430,7953=>430,7954=>430,7955=>430,7956=>430,7957=>430,7960=>864,7961=>905,\n7962=>1034,7963=>1038,7964=>1031,7965=>1045,7968=>548,7969=>548,7970=>548,7971=>548,7972=>548,7973=>548,\n7974=>548,7975=>548,7976=>976,7977=>1009,7978=>1132,7979=>1141,7980=>1138,7981=>1154,7982=>1079,7983=>1071,\n7984=>320,7985=>320,7986=>320,7987=>320,7988=>320,7989=>320,7990=>320,7991=>320,7992=>593,7993=>620,\n7994=>746,7995=>762,7996=>742,7997=>773,7998=>691,7999=>683,8000=>536,8001=>536,8002=>536,8003=>536,\n8004=>536,8005=>536,8008=>899,8009=>928,8010=>1086,8011=>1118,8012=>1020,8013=>1028,8016=>536,8017=>536,\n8018=>536,8019=>536,8020=>536,8021=>536,8022=>536,8023=>536,8025=>959,8027=>1085,8029=>1108,8031=>1027,\n8032=>715,8033=>715,8034=>715,8035=>715,8036=>715,8037=>715,8038=>715,8039=>715,8040=>946,8041=>960,\n8042=>1133,8043=>1148,8044=>1059,8045=>1081,8046=>1020,8047=>1016,8048=>590,8049=>590,8050=>430,8051=>430,\n8052=>548,8053=>548,8054=>320,8055=>320,8056=>536,8057=>536,8058=>536,8059=>536,8060=>715,8061=>715,\n8064=>590,8065=>590,8066=>590,8067=>590,8068=>590,8069=>590,8070=>590,8071=>590,8072=>842,8073=>877,\n8074=>1011,8075=>1031,8076=>947,8077=>975,8078=>907,8079=>893,8080=>548,8081=>548,8082=>548,8083=>548,\n8084=>548,8085=>548,8086=>548,8087=>548,8088=>1030,8089=>1066,8090=>1188,8091=>1199,8092=>1196,8093=>1211,\n8094=>1134,8095=>1129,8096=>715,8097=>715,8098=>715,8099=>715,8100=>715,8101=>715,8102=>715,8103=>715,\n8104=>1060,8105=>1076,8106=>1264,8107=>1287,8108=>1179,8109=>1204,8110=>1137,8111=>1135,8112=>590,8113=>590,\n8114=>590,8115=>590,8116=>590,8118=>590,8119=>590,8120=>667,8121=>667,8122=>752,8123=>728,8124=>775,\n8125=>250,8126=>0,8127=>500,8128=>500,8129=>550,8130=>548,8131=>548,8132=>548,8134=>548,8135=>548,\n8136=>884,8137=>859,8138=>982,8139=>968,8140=>839,8141=>500,8142=>500,8143=>500,8144=>320,8145=>320,\n8146=>320,8147=>320,8150=>320,8151=>320,8152=>389,8153=>389,8154=>599,8155=>592,8157=>500,8158=>500,\n8159=>500,8160=>536,8161=>536,8162=>536,8163=>536,8164=>536,8165=>536,8166=>536,8167=>536,8168=>722,\n8169=>722,8170=>1007,8171=>932,8172=>842,8173=>550,8174=>550,8175=>500,8178=>715,8179=>715,8180=>715,\n8182=>715,8183=>715,8184=>971,8185=>853,8186=>1004,8187=>875,8188=>862,8189=>500,8190=>500,8192=>500,\n8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>500,8200=>250,8201=>200,8202=>100,\n8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,8210=>500,8213=>1000,8214=>333,\n8215=>478,8219=>250,8223=>500,8227=>560,8228=>250,8229=>478,8231=>0,8232=>0,8233=>0,8234=>0,\n8235=>0,8236=>0,8237=>0,8238=>250,8239=>0,8241=>1618,8242=>278,8243=>556,8244=>834,8245=>270,\n8246=>468,8247=>630,8248=>469,8251=>727,8252=>778,8253=>733,8254=>500,8255=>953,8256=>953,8257=>338,\n8258=>931,8259=>333,8260=>167,8261=>332,8262=>332,8263=>1000,8264=>889,8265=>889,8266=>500,8267=>453,\n8268=>479,8269=>492,8270=>500,8271=>333,8272=>953,8273=>500,8274=>521,8275=>576,8276=>953,8277=>785,\n8278=>410,8279=>881,8280=>620,8281=>620,8282=>179,8283=>621,8284=>569,8285=>179,8286=>179,8287=>111,\n8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8304=>300,8305=>219,8308=>300,8309=>300,8310=>300,\n8311=>300,8312=>300,8313=>300,8314=>300,8315=>300,8316=>300,8317=>216,8318=>216,8319=>300,8320=>300,\n8321=>274,8322=>300,8323=>300,8324=>300,8325=>300,8326=>300,8327=>300,8328=>300,8329=>300,8330=>300,\n8331=>300,8332=>300,8333=>216,8334=>216,8352=>667,8353=>667,8354=>667,8355=>667,8356=>500,8357=>742,\n8358=>722,8359=>1008,8360=>953,8361=>889,8362=>889,8363=>532,8365=>742,8366=>631,8369=>609,8370=>639,\n8371=>742,8372=>576,8373=>500,8448=>664,8449=>665,8451=>925,8453=>693,8454=>787,8455=>631,8457=>867,\n8462=>556,8463=>556,8468=>778,8470=>806,8471=>747,8480=>879,8481=>1050,8483=>667,8486=>741,8487=>741,\n8489=>320,8490=>664,8491=>667,8494=>551,8495=>444,8498=>667,8500=>500,8501=>537,8502=>537,8503=>350,\n8504=>537,8506=>942,8507=>1050,8523=>698,8525=>856,8526=>462,8531=>750,8532=>750,8533=>750,8534=>750,\n8535=>750,8536=>750,8537=>750,8538=>750,8539=>750,8540=>750,8541=>750,8542=>750,8543=>750,8544=>393,\n8545=>786,8546=>1179,8547=>1060,8548=>667,8549=>1060,8550=>1453,8551=>1846,8552=>1060,8553=>667,8554=>1060,\n8555=>1453,8556=>609,8557=>667,8558=>744,8559=>896,8560=>278,8561=>556,8562=>834,8563=>722,8564=>444,\n8565=>722,8566=>1000,8567=>1278,8568=>778,8569=>500,8570=>778,8571=>1056,8572=>278,8573=>444,8574=>500,\n8575=>778,8592=>964,8593=>964,8594=>964,8595=>964,8596=>964,8597=>964,8598=>964,8599=>964,8600=>964,\n8601=>964,8602=>964,8603=>964,8606=>964,8607=>964,8608=>964,8609=>964,8610=>964,8611=>964,8612=>964,\n8613=>964,8614=>964,8615=>964,8616=>964,8633=>964,8634=>964,8644=>964,8645=>964,8646=>964,8647=>964,\n8648=>964,8649=>964,8650=>964,8676=>964,8677=>964,8706=>494,8710=>612,8721=>713,8722=>606,8725=>750,\n8730=>549,8734=>752,8800=>570,8804=>570,8805=>570,9251=>500,9674=>494,9676=>732,9824=>618,9825=>645,\n9826=>587,9827=>582,9828=>582,9829=>645,9830=>587,9831=>618,9833=>333,9834=>556,9835=>778,9836=>778,\n9837=>556,9838=>556,9839=>556,11799=>333,64256=>583,64257=>558,64258=>551,64259=>822,64260=>818,64262=>662,\n64285=>266,64286=>0,64287=>532,64288=>552,64297=>570,64298=>716,64299=>716,64300=>716,64301=>716,64302=>593,\n64303=>593,64304=>593,64305=>498,64306=>339,64307=>523,64308=>561,64309=>266,64310=>291,64312=>576,64313=>266,\n64314=>496,64315=>501,64316=>510,64318=>581,64320=>347,64321=>512,64323=>493,64324=>491,64326=>561,64327=>544,\n64328=>502,64329=>716,64330=>571,64331=>266,64332=>498,64333=>501,64334=>491,64335=>593,65533=>788);\n$enc='';\n$diff='';\n$file='freeserifbi.z';\n$ctg='freeserifbi.ctg.z';\n$originalsize=452752;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/freeserifi.php",
    "content": "<?php\n$type='TrueTypeUnicode';\n$name='FreeSerifItalic';\n$desc=array('Ascent'=>900,'Descent'=>-300,'CapHeight'=>-29,'Flags'=>96,'FontBBox'=>'[-879 -434 1673 900]','ItalicAngle'=>-16.5,'StemV'=>70,'MissingWidth'=>600);\n$up=-125;\n$ut=50;\n$dw=600;\n$cw=array(\n32=>250,33=>333,34=>420,35=>500,36=>500,37=>833,38=>778,39=>214,40=>333,41=>333,\n42=>500,43=>675,44=>250,45=>333,46=>250,47=>278,48=>500,49=>500,50=>500,51=>500,\n52=>500,53=>500,54=>500,55=>500,56=>500,57=>500,58=>333,59=>333,60=>675,61=>675,\n62=>675,63=>500,64=>920,65=>611,66=>611,67=>667,68=>722,69=>604,70=>611,71=>722,\n72=>722,73=>339,74=>444,75=>652,76=>556,77=>828,78=>657,79=>722,80=>603,81=>722,\n82=>616,83=>500,84=>556,85=>722,86=>611,87=>833,88=>611,89=>556,90=>556,91=>389,\n92=>278,93=>389,94=>422,95=>500,96=>333,97=>500,98=>500,99=>444,100=>500,101=>444,\n102=>278,103=>500,104=>500,105=>278,106=>278,107=>444,108=>278,109=>722,110=>500,111=>500,\n112=>500,113=>500,114=>389,115=>389,116=>278,117=>500,118=>444,119=>667,120=>444,121=>444,\n122=>389,123=>400,124=>275,125=>400,126=>541,8364=>741,8218=>250,402=>278,8222=>444,8230=>889,\n8224=>500,8225=>500,710=>333,8240=>1000,352=>500,8249=>250,338=>944,381=>556,8216=>250,8217=>250,\n8220=>444,8221=>444,8226=>350,8211=>500,8212=>1000,732=>333,8482=>980,353=>389,8250=>250,339=>667,\n382=>389,376=>556,160=>250,161=>389,162=>500,163=>500,164=>500,165=>500,166=>275,167=>500,\n168=>333,169=>760,170=>276,171=>444,172=>675,173=>333,174=>760,175=>333,176=>400,177=>675,\n178=>300,179=>300,180=>333,181=>500,182=>523,183=>250,184=>333,185=>250,186=>310,187=>444,\n188=>750,189=>750,190=>750,191=>500,192=>611,193=>611,194=>611,195=>611,196=>611,197=>611,\n198=>889,199=>667,200=>611,201=>611,202=>611,203=>611,204=>333,205=>333,206=>333,207=>333,\n208=>722,209=>667,210=>722,211=>722,212=>722,213=>722,214=>722,215=>675,216=>722,217=>722,\n218=>722,219=>722,220=>722,221=>556,222=>611,223=>500,224=>500,225=>500,226=>500,227=>500,\n228=>500,229=>500,230=>667,231=>444,232=>444,233=>444,234=>444,235=>444,236=>278,237=>278,\n238=>278,239=>278,240=>500,241=>500,242=>500,243=>500,244=>500,245=>500,246=>500,247=>675,\n248=>500,249=>500,250=>500,251=>500,252=>500,253=>444,254=>500,255=>444,256=>611,257=>500,\n258=>611,259=>500,260=>611,261=>500,262=>667,263=>444,264=>667,265=>444,266=>667,267=>444,\n268=>667,269=>444,270=>722,271=>500,272=>722,273=>500,274=>611,275=>444,276=>611,277=>444,\n278=>611,279=>444,280=>611,281=>444,282=>611,283=>444,284=>722,285=>500,286=>722,287=>500,\n288=>722,289=>500,290=>722,291=>500,292=>722,293=>500,294=>722,295=>500,296=>333,297=>278,\n298=>333,299=>278,300=>333,301=>278,302=>333,303=>278,304=>333,305=>278,306=>707,307=>553,\n308=>444,309=>278,310=>667,311=>444,312=>444,313=>556,314=>278,315=>556,316=>278,317=>556,\n318=>278,319=>556,320=>278,321=>556,322=>278,323=>667,324=>500,325=>667,326=>500,327=>667,\n328=>500,329=>500,330=>667,331=>500,332=>722,333=>500,334=>722,335=>500,336=>722,337=>500,\n340=>611,341=>389,342=>611,343=>389,344=>611,345=>389,346=>500,347=>389,348=>500,349=>389,\n350=>500,351=>389,354=>556,355=>278,356=>556,357=>278,358=>556,359=>278,360=>722,361=>500,\n362=>722,363=>500,364=>722,365=>500,366=>722,367=>500,368=>722,369=>500,370=>722,371=>500,\n372=>833,373=>667,374=>556,375=>444,377=>556,378=>389,379=>556,380=>389,383=>278,384=>500,\n385=>781,386=>610,387=>551,388=>611,389=>549,390=>667,391=>866,392=>703,393=>722,394=>892,\n395=>682,396=>500,397=>520,398=>611,399=>722,400=>518,401=>611,403=>863,404=>611,405=>728,\n406=>278,407=>333,408=>792,409=>444,410=>278,411=>480,412=>900,413=>779,414=>500,415=>722,\n416=>932,417=>608,418=>908,419=>722,420=>772,421=>500,422=>611,423=>500,424=>389,425=>657,\n426=>461,427=>313,428=>556,429=>335,430=>556,431=>948,432=>721,433=>747,434=>755,435=>636,\n436=>549,437=>556,438=>389,439=>525,440=>556,441=>424,442=>416,443=>500,444=>615,445=>439,\n446=>389,447=>500,448=>275,449=>500,450=>600,451=>333,452=>1278,453=>1111,454=>889,455=>1000,\n456=>834,457=>556,458=>1101,459=>935,460=>778,461=>611,462=>500,463=>339,464=>278,465=>722,\n466=>500,467=>722,468=>500,469=>722,470=>500,471=>722,472=>500,473=>722,474=>500,475=>722,\n476=>500,477=>444,478=>611,479=>500,480=>611,481=>500,482=>889,483=>667,484=>722,485=>500,\n486=>722,487=>500,488=>652,489=>444,490=>730,491=>500,492=>730,493=>500,494=>525,495=>446,\n496=>278,497=>1278,498=>1111,499=>889,500=>817,501=>595,502=>944,503=>607,504=>657,505=>500,\n506=>611,507=>500,508=>889,509=>667,510=>722,511=>500,512=>611,513=>500,514=>611,515=>500,\n516=>604,517=>444,518=>604,519=>444,520=>339,521=>278,522=>339,523=>278,524=>722,525=>500,\n526=>722,527=>500,528=>616,529=>389,530=>616,531=>389,532=>722,533=>500,534=>722,535=>500,\n536=>500,537=>389,538=>556,539=>278,540=>424,541=>455,542=>722,543=>500,544=>781,545=>588,\n546=>568,547=>468,548=>611,549=>444,550=>611,551=>500,552=>604,553=>444,554=>722,555=>500,\n556=>722,557=>500,558=>722,559=>500,560=>722,561=>500,562=>556,563=>444,564=>405,565=>597,\n566=>377,567=>278,568=>775,569=>767,570=>722,571=>667,572=>444,573=>611,574=>611,575=>389,\n576=>444,577=>444,578=>444,579=>667,580=>750,581=>697,582=>611,583=>444,584=>389,585=>278,\n586=>796,587=>590,588=>667,589=>333,590=>722,591=>500,592=>500,593=>564,594=>564,595=>500,\n596=>444,597=>444,598=>500,599=>697,600=>444,601=>444,602=>722,603=>416,604=>426,605=>674,\n606=>454,607=>278,608=>640,609=>500,610=>484,611=>500,612=>582,613=>500,614=>500,615=>500,\n616=>278,617=>278,618=>278,619=>278,620=>278,621=>278,622=>556,623=>722,624=>722,625=>716,\n626=>500,627=>500,628=>500,629=>500,630=>668,631=>693,632=>640,633=>389,634=>389,635=>333,\n636=>389,637=>333,638=>333,639=>333,640=>487,641=>487,642=>389,643=>278,644=>500,645=>333,\n646=>500,647=>278,648=>278,649=>500,650=>517,651=>500,652=>444,653=>667,654=>444,655=>510,\n656=>524,657=>444,658=>446,659=>456,660=>444,661=>444,662=>444,663=>444,664=>722,665=>442,\n666=>454,667=>665,668=>585,669=>347,670=>444,671=>443,672=>500,673=>444,674=>444,675=>798,\n676=>795,677=>805,678=>554,679=>561,680=>678,681=>614,682=>554,683=>554,684=>500,685=>500,\n686=>611,687=>611,688=>300,689=>300,690=>278,691=>278,692=>278,693=>309,694=>306,695=>432,\n696=>310,697=>250,698=>408,699=>333,700=>500,701=>500,702=>333,703=>333,704=>258,705=>258,\n706=>374,707=>374,708=>383,709=>383,711=>333,712=>250,713=>333,714=>333,715=>333,716=>250,\n717=>333,718=>333,719=>333,720=>278,721=>278,722=>333,723=>333,724=>333,725=>333,726=>333,\n727=>333,728=>333,729=>333,730=>333,731=>333,733=>333,734=>336,735=>352,736=>311,737=>200,\n738=>243,739=>328,740=>300,741=>460,742=>460,743=>460,744=>460,745=>460,746=>477,747=>475,\n748=>339,749=>330,750=>444,751=>383,752=>383,753=>294,754=>294,755=>327,756=>261,757=>437,\n758=>437,759=>333,760=>278,761=>175,762=>175,763=>175,764=>175,765=>337,766=>337,767=>326,\n768=>0,769=>0,770=>0,771=>0,772=>0,773=>0,774=>0,775=>0,776=>0,777=>0,\n778=>0,779=>0,780=>0,781=>0,782=>0,783=>0,784=>0,785=>0,786=>0,787=>0,\n788=>0,789=>0,790=>0,791=>0,792=>0,793=>0,794=>0,795=>0,796=>0,797=>0,\n798=>0,799=>0,800=>0,801=>0,802=>0,803=>0,804=>0,805=>0,806=>0,807=>0,\n808=>0,809=>0,810=>0,811=>0,812=>0,813=>0,814=>0,815=>0,816=>0,817=>0,\n818=>0,819=>0,820=>0,821=>0,822=>0,823=>0,824=>0,825=>0,826=>0,827=>0,\n828=>0,829=>0,830=>0,831=>0,832=>0,833=>0,834=>0,835=>0,836=>0,837=>0,\n838=>0,839=>0,840=>0,841=>0,842=>0,843=>0,844=>0,845=>0,846=>0,847=>0,\n848=>0,849=>0,850=>0,851=>0,852=>0,853=>0,854=>0,855=>0,856=>0,857=>0,\n858=>0,859=>0,860=>0,861=>0,862=>0,863=>0,864=>0,865=>0,866=>0,867=>0,\n868=>0,869=>0,870=>0,871=>0,872=>0,873=>0,874=>0,875=>0,876=>0,877=>0,\n878=>0,879=>0,884=>199,885=>199,890=>332,894=>333,900=>257,901=>333,902=>661,903=>250,\n904=>841,905=>950,906=>559,908=>815,910=>877,911=>899,912=>270,913=>661,914=>581,915=>611,\n916=>660,917=>611,918=>606,919=>742,920=>672,921=>333,922=>667,923=>641,924=>833,925=>657,\n926=>678,927=>682,928=>749,929=>611,931=>657,932=>596,933=>676,934=>722,935=>611,936=>812,\n937=>743,938=>333,939=>696,940=>564,941=>416,942=>506,943=>270,944=>504,945=>564,946=>509,\n947=>496,948=>520,949=>416,950=>398,951=>506,952=>533,953=>270,954=>491,955=>488,956=>501,\n957=>486,958=>430,959=>510,960=>608,961=>506,962=>423,963=>524,964=>425,965=>504,966=>618,\n967=>459,968=>693,969=>693,970=>270,971=>504,972=>510,973=>504,974=>693,976=>534,977=>587,\n978=>620,979=>820,980=>620,981=>640,982=>684,983=>504,984=>555,985=>534,986=>548,987=>496,\n988=>610,989=>470,990=>633,991=>410,992=>687,993=>544,1008=>534,1009=>534,1010=>485,1011=>278,\n1012=>722,1013=>280,1014=>280,1015=>610,1016=>500,1017=>704,1018=>832,1019=>703,1020=>533,1021=>704,\n1022=>704,1023=>704,1024=>604,1025=>604,1026=>668,1027=>611,1028=>666,1029=>500,1030=>339,1031=>339,\n1032=>444,1033=>972,1034=>977,1035=>703,1036=>664,1037=>720,1038=>728,1039=>728,1040=>611,1041=>610,\n1042=>611,1043=>611,1044=>682,1045=>604,1046=>976,1047=>592,1048=>720,1049=>720,1050=>664,1051=>719,\n1052=>828,1053=>722,1054=>722,1055=>749,1056=>603,1057=>667,1058=>556,1059=>728,1060=>722,1061=>611,\n1062=>728,1063=>666,1064=>997,1065=>1005,1066=>710,1067=>891,1068=>594,1069=>632,1070=>1024,1071=>696,\n1072=>500,1073=>500,1074=>442,1075=>344,1076=>503,1077=>440,1078=>932,1079=>402,1080=>500,1081=>500,\n1082=>491,1083=>487,1084=>624,1085=>500,1086=>500,1087=>500,1088=>500,1089=>441,1090=>722,1091=>500,\n1092=>741,1093=>444,1094=>500,1095=>500,1096=>750,1097=>750,1098=>545,1099=>683,1100=>433,1101=>432,\n1102=>700,1103=>503,1104=>440,1105=>440,1106=>500,1107=>344,1108=>442,1109=>389,1110=>278,1111=>278,\n1112=>278,1113=>686,1114=>696,1115=>500,1116=>491,1117=>500,1118=>500,1119=>500,1120=>964,1121=>684,\n1122=>708,1123=>690,1124=>975,1125=>646,1126=>800,1127=>628,1128=>1096,1129=>795,1130=>952,1131=>730,\n1132=>1260,1133=>892,1134=>574,1135=>400,1136=>812,1137=>694,1138=>721,1139=>500,1140=>745,1141=>533,\n1142=>745,1143=>533,1144=>1193,1145=>967,1146=>868,1147=>602,1148=>964,1149=>684,1150=>964,1151=>684,\n1152=>548,1153=>443,1154=>320,1155=>0,1156=>0,1157=>0,1158=>0,1159=>0,1160=>0,1161=>0,\n1162=>720,1163=>500,1164=>602,1165=>433,1166=>611,1167=>500,1168=>552,1169=>424,1170=>593,1171=>424,\n1172=>611,1173=>432,1174=>992,1175=>932,1176=>592,1177=>396,1178=>681,1179=>491,1180=>700,1181=>532,\n1182=>664,1183=>491,1184=>776,1185=>690,1186=>729,1187=>500,1188=>908,1189=>660,1190=>1034,1191=>694,\n1192=>667,1193=>531,1194=>666,1195=>443,1196=>556,1197=>775,1198=>556,1199=>574,1200=>555,1201=>574,\n1202=>660,1203=>443,1204=>798,1205=>581,1206=>674,1207=>500,1208=>690,1209=>516,1210=>640,1211=>500,\n1212=>785,1213=>558,1214=>787,1215=>559,1216=>339,1217=>976,1218=>932,1219=>664,1220=>491,1221=>719,\n1222=>487,1223=>722,1224=>500,1225=>722,1226=>500,1227=>666,1228=>500,1229=>828,1230=>624,1231=>339,\n1232=>611,1233=>500,1234=>611,1235=>500,1236=>889,1237=>667,1238=>604,1239=>444,1240=>722,1241=>444,\n1242=>722,1243=>444,1244=>976,1245=>932,1246=>592,1247=>402,1248=>525,1249=>446,1250=>720,1251=>500,\n1252=>720,1253=>500,1254=>722,1255=>500,1256=>722,1257=>500,1258=>722,1259=>500,1260=>632,1261=>432,\n1262=>728,1263=>500,1264=>728,1265=>500,1266=>728,1267=>500,1268=>666,1269=>500,1270=>611,1271=>424,\n1272=>891,1273=>683,1296=>532,1297=>409,1298=>719,1299=>487,1306=>722,1307=>500,1308=>833,1309=>656,\n1310=>664,1311=>491,1425=>0,1426=>0,1427=>0,1428=>0,1429=>0,1430=>0,1431=>418,1432=>0,\n1433=>0,1434=>0,1435=>0,1436=>0,1437=>0,1438=>0,1439=>0,1440=>0,1441=>0,1442=>0,\n1443=>0,1444=>0,1445=>0,1446=>0,1447=>0,1448=>0,1449=>0,1450=>0,1451=>0,1452=>0,\n1453=>0,1454=>0,1455=>0,1456=>0,1457=>0,1458=>0,1459=>0,1460=>0,1461=>0,1462=>0,\n1463=>0,1464=>0,1465=>0,1466=>0,1467=>0,1468=>0,1469=>0,1470=>440,1471=>0,1472=>126,\n1473=>0,1474=>0,1475=>418,1476=>0,1477=>0,1478=>350,1479=>0,1488=>537,1489=>537,1490=>350,\n1491=>537,1492=>537,1493=>350,1494=>350,1495=>537,1496=>537,1497=>350,1498=>537,1499=>537,1500=>537,\n1501=>537,1502=>537,1503=>350,1504=>350,1505=>537,1506=>537,1507=>537,1508=>537,1509=>537,1510=>537,\n1511=>537,1512=>537,1513=>537,1514=>537,1520=>537,1521=>537,1522=>537,1523=>396,1524=>396,2404=>318,\n2405=>446,2433=>0,2434=>300,2435=>312,2437=>594,2438=>776,2439=>469,2440=>513,2441=>535,2442=>561,\n2443=>604,2444=>481,2447=>580,2448=>604,2451=>540,2452=>620,2453=>570,2454=>485,2455=>484,2456=>471,\n2457=>457,2458=>408,2459=>452,2460=>591,2461=>551,2462=>771,2463=>414,2464=>404,2465=>522,2466=>415,\n2467=>450,2468=>551,2469=>477,2470=>478,2471=>449,2472=>448,2474=>535,2475=>611,2476=>443,2477=>534,\n2478=>492,2479=>474,2480=>442,2482=>542,2486=>507,2487=>467,2488=>523,2489=>419,2492=>0,2493=>419,\n2494=>202,2495=>189,2496=>202,2497=>0,2498=>0,2499=>0,2500=>0,2503=>294,2504=>289,2507=>774,\n2508=>825,2509=>0,2510=>356,2519=>219,2524=>523,2525=>420,2527=>469,2528=>604,2529=>481,2530=>0,\n2531=>0,2534=>500,2535=>437,2536=>479,2537=>507,2538=>497,2539=>500,2540=>482,2541=>503,2542=>517,\n2543=>481,2544=>443,2545=>443,2546=>429,2547=>383,2548=>432,2549=>478,2550=>539,2551=>158,2552=>365,\n2553=>280,2554=>357,3585=>512,3586=>453,3587=>512,3588=>519,3589=>529,3590=>561,3591=>411,3592=>437,\n3593=>552,3594=>452,3595=>509,3596=>707,3597=>707,3598=>574,3599=>570,3600=>406,3601=>607,3602=>686,\n3603=>749,3604=>494,3605=>497,3606=>509,3607=>552,3608=>461,3609=>565,3610=>527,3611=>523,3612=>556,\n3613=>551,3614=>570,3615=>570,3616=>571,3617=>531,3618=>493,3619=>433,3620=>513,3621=>491,3622=>571,\n3623=>439,3624=>510,3625=>594,3626=>484,3627=>554,3628=>616,3629=>493,3630=>496,3631=>417,3632=>392,\n3633=>0,3634=>366,3635=>366,3636=>0,3637=>0,3638=>0,3639=>0,3640=>0,3641=>0,3642=>0,\n3647=>662,3648=>297,3649=>544,3650=>298,3651=>329,3652=>328,3653=>326,3654=>488,3655=>0,3656=>0,\n3657=>0,3658=>0,3659=>0,3660=>0,3661=>0,3662=>0,3663=>725,3664=>624,3665=>624,3666=>624,\n3667=>624,3668=>624,3669=>624,3670=>624,3671=>624,3672=>624,3673=>624,3674=>645,3675=>872,4256=>453,\n4257=>448,4258=>546,4259=>619,4260=>478,4261=>481,4262=>459,4263=>707,4264=>467,4265=>471,4266=>842,\n4267=>464,4268=>443,4269=>707,4270=>460,4271=>465,4272=>686,4273=>440,4274=>550,4275=>561,4276=>580,\n4277=>467,4278=>630,4279=>466,4280=>517,4281=>456,4282=>502,4283=>464,4284=>534,4285=>440,4286=>443,\n4287=>522,4288=>460,4289=>463,4290=>536,4291=>455,4292=>468,4293=>449,4304=>454,4305=>452,4306=>544,\n4307=>629,4308=>451,4309=>452,4310=>452,4311=>702,4312=>451,4313=>452,4314=>820,4315=>451,4316=>453,\n4317=>695,4318=>449,4319=>448,4320=>694,4321=>501,4322=>544,4323=>517,4324=>560,4325=>450,4326=>627,\n4327=>452,4328=>491,4329=>452,4330=>485,4331=>452,4332=>485,4333=>443,4334=>500,4335=>582,4336=>455,\n4337=>451,4338=>480,4339=>414,4340=>453,4341=>418,4345=>544,4347=>410,5024=>711,5025=>678,5026=>604,\n5027=>667,5028=>796,5029=>301,5030=>516,5031=>544,5032=>457,5033=>716,5034=>703,5035=>383,5036=>628,\n5037=>709,5038=>455,5039=>601,5040=>472,5041=>574,5042=>730,5043=>939,5044=>498,5045=>528,5046=>667,\n5047=>891,5048=>505,5049=>792,5050=>957,5051=>725,5052=>595,5053=>733,5054=>698,5055=>638,5056=>720,\n5057=>732,5058=>624,5059=>638,5060=>565,5061=>903,5062=>655,5063=>681,5064=>675,5065=>949,5066=>683,\n5067=>547,5068=>693,5069=>732,5070=>529,5071=>569,5072=>536,5073=>677,5074=>631,5075=>382,5076=>973,\n5077=>543,5078=>607,5079=>652,5080=>652,5081=>693,5082=>514,5083=>803,5084=>658,5085=>597,5086=>627,\n5087=>659,5088=>679,5089=>706,5090=>563,5091=>618,5092=>767,5093=>776,5094=>731,5095=>492,5096=>808,\n5097=>823,5098=>796,5099=>689,5100=>716,5101=>518,5102=>521,5103=>719,5104=>563,5105=>776,5106=>634,\n5107=>822,5108=>621,7680=>611,7681=>500,7682=>611,7683=>500,7684=>611,7685=>500,7686=>611,7687=>500,\n7688=>667,7689=>444,7690=>722,7691=>500,7692=>722,7693=>500,7694=>722,7695=>500,7696=>722,7697=>500,\n7698=>722,7699=>500,7700=>611,7701=>444,7702=>611,7703=>444,7704=>604,7705=>444,7706=>604,7707=>444,\n7708=>604,7709=>444,7710=>611,7711=>278,7712=>722,7713=>500,7714=>722,7715=>500,7716=>722,7717=>500,\n7718=>722,7719=>500,7720=>722,7721=>500,7722=>722,7723=>500,7724=>339,7725=>278,7726=>333,7727=>278,\n7728=>652,7729=>444,7730=>652,7731=>444,7732=>652,7733=>444,7734=>556,7735=>278,7736=>556,7737=>278,\n7738=>556,7739=>278,7740=>556,7741=>278,7742=>828,7743=>722,7744=>828,7745=>722,7746=>828,7747=>722,\n7748=>657,7749=>500,7750=>657,7751=>500,7752=>657,7753=>500,7754=>657,7755=>500,7756=>722,7757=>500,\n7758=>722,7759=>500,7760=>722,7761=>500,7762=>722,7763=>500,7764=>603,7765=>500,7766=>603,7767=>500,\n7768=>616,7769=>389,7770=>616,7771=>389,7772=>616,7773=>389,7774=>616,7775=>389,7776=>500,7777=>389,\n7778=>500,7779=>389,7780=>500,7781=>389,7782=>500,7783=>389,7784=>500,7785=>389,7786=>556,7787=>278,\n7788=>556,7789=>278,7790=>556,7791=>278,7792=>556,7793=>278,7794=>722,7795=>500,7796=>722,7797=>500,\n7798=>722,7799=>500,7800=>722,7801=>500,7802=>722,7803=>500,7804=>611,7805=>444,7806=>611,7807=>444,\n7808=>833,7809=>667,7810=>833,7811=>667,7812=>833,7813=>667,7814=>833,7815=>667,7816=>833,7817=>667,\n7818=>611,7819=>444,7820=>611,7821=>444,7822=>556,7823=>444,7824=>556,7825=>389,7826=>556,7827=>389,\n7828=>556,7829=>389,7830=>500,7831=>278,7832=>667,7833=>444,7834=>444,7835=>278,7840=>611,7841=>500,\n7842=>611,7843=>500,7844=>611,7845=>500,7846=>611,7847=>500,7848=>611,7849=>500,7850=>611,7851=>500,\n7852=>611,7853=>500,7854=>611,7855=>500,7856=>611,7857=>500,7858=>611,7859=>500,7860=>611,7861=>500,\n7862=>611,7863=>500,7864=>604,7865=>444,7866=>604,7867=>444,7868=>604,7869=>444,7870=>611,7871=>444,\n7872=>611,7873=>444,7874=>611,7875=>444,7876=>611,7877=>444,7878=>604,7879=>444,7880=>339,7881=>278,\n7882=>339,7883=>278,7884=>722,7885=>500,7886=>722,7887=>500,7888=>722,7889=>500,7890=>722,7891=>500,\n7892=>722,7893=>500,7894=>722,7895=>500,7896=>722,7897=>500,7898=>932,7899=>608,7900=>932,7901=>608,\n7902=>807,7903=>585,7904=>932,7905=>608,7906=>932,7907=>608,7908=>722,7909=>500,7910=>722,7911=>500,\n7912=>948,7913=>721,7914=>948,7915=>721,7916=>807,7917=>585,7918=>948,7919=>721,7920=>948,7921=>721,\n7922=>556,7923=>444,7924=>556,7925=>444,7926=>556,7927=>444,7928=>556,7929=>444,7936=>564,7937=>564,\n7938=>564,7939=>564,7940=>564,7941=>564,7942=>564,7943=>564,7944=>661,7945=>661,7946=>794,7947=>811,\n7948=>792,7949=>803,7950=>661,7951=>648,7952=>416,7953=>416,7954=>416,7955=>416,7956=>416,7957=>416,\n7960=>740,7961=>795,7962=>923,7963=>940,7964=>996,7965=>986,7968=>506,7969=>506,7970=>506,7971=>506,\n7972=>506,7973=>506,7974=>506,7975=>506,7976=>879,7977=>901,7978=>1036,7979=>1035,7980=>1099,7981=>1100,\n7982=>954,7983=>959,7984=>270,7985=>270,7986=>267,7987=>267,7988=>267,7989=>267,7990=>267,7991=>267,\n7992=>490,7993=>529,7994=>655,7995=>654,7996=>705,7997=>713,7998=>570,7999=>573,8000=>558,8001=>510,\n8002=>510,8003=>510,8004=>510,8005=>510,8008=>797,8009=>867,8010=>1026,8011=>1022,8012=>993,8013=>1017,\n8016=>504,8017=>504,8018=>504,8019=>504,8020=>504,8021=>504,8022=>504,8023=>504,8025=>916,8027=>1062,\n8029=>1100,8031=>933,8032=>693,8033=>693,8034=>693,8035=>693,8036=>693,8037=>693,8038=>693,8039=>693,\n8040=>852,8041=>909,8042=>1072,8043=>1072,8044=>1032,8045=>1047,8046=>930,8047=>946,8048=>564,8049=>564,\n8050=>416,8051=>416,8052=>506,8053=>506,8054=>270,8055=>270,8056=>510,8057=>510,8058=>504,8059=>504,\n8060=>693,8061=>693,8064=>564,8065=>564,8066=>564,8067=>564,8068=>564,8069=>564,8070=>564,8071=>564,\n8072=>821,8073=>854,8074=>998,8075=>1011,8076=>992,8077=>1001,8078=>866,8079=>858,8080=>506,8081=>506,\n8082=>506,8083=>506,8084=>506,8085=>506,8086=>506,8087=>506,8088=>999,8089=>1044,8090=>1179,8091=>1165,\n8092=>1227,8093=>1229,8094=>1080,8095=>1085,8096=>693,8097=>693,8098=>693,8099=>693,8100=>693,8101=>693,\n8102=>693,8103=>693,8104=>1037,8105=>1113,8106=>1264,8107=>1264,8108=>1219,8109=>1241,8110=>1120,8111=>1132,\n8112=>564,8113=>564,8114=>564,8115=>564,8116=>564,8118=>564,8119=>564,8120=>661,8121=>661,8122=>661,\n8123=>661,8124=>831,8125=>192,8126=>332,8127=>500,8128=>500,8129=>534,8130=>506,8131=>506,8132=>506,\n8134=>506,8135=>506,8136=>611,8137=>816,8138=>889,8139=>908,8140=>881,8141=>500,8142=>500,8143=>500,\n8144=>270,8145=>270,8146=>270,8147=>270,8150=>270,8151=>270,8152=>333,8153=>333,8154=>497,8155=>521,\n8157=>500,8158=>500,8159=>500,8160=>504,8161=>504,8162=>504,8163=>504,8164=>506,8165=>506,8166=>504,\n8167=>504,8168=>676,8169=>676,8170=>905,8171=>901,8172=>783,8173=>333,8174=>333,8175=>500,8178=>693,\n8179=>693,8180=>693,8182=>693,8183=>693,8184=>907,8185=>833,8186=>963,8187=>875,8188=>952,8189=>500,\n8190=>500,8192=>500,8193=>1000,8194=>500,8195=>1000,8196=>333,8197=>250,8198=>167,8199=>500,8200=>250,\n8201=>200,8202=>100,8203=>0,8204=>0,8205=>0,8206=>0,8207=>0,8208=>333,8209=>333,8210=>500,\n8213=>1000,8214=>293,8215=>465,8219=>250,8223=>444,8227=>350,8228=>250,8229=>500,8231=>250,8232=>0,\n8233=>0,8234=>0,8235=>0,8236=>0,8237=>0,8238=>0,8239=>250,8241=>1601,8242=>247,8243=>411,\n8244=>611,8245=>220,8246=>440,8247=>660,8248=>469,8251=>629,8252=>666,8253=>500,8254=>500,8255=>953,\n8256=>1000,8257=>314,8258=>931,8259=>333,8260=>167,8261=>480,8262=>480,8263=>1000,8264=>833,8265=>833,\n8266=>500,8267=>453,8268=>453,8269=>450,8270=>500,8271=>278,8272=>882,8273=>500,8274=>497,8275=>500,\n8276=>953,8277=>512,8278=>410,8279=>855,8280=>620,8281=>620,8282=>179,8283=>621,8284=>564,8285=>179,\n8286=>179,8287=>111,8288=>0,8289=>0,8290=>0,8291=>0,8292=>0,8304=>300,8305=>235,8308=>300,\n8309=>300,8310=>300,8311=>300,8312=>300,8313=>300,8314=>300,8315=>300,8316=>300,8317=>216,8318=>216,\n8319=>318,8320=>300,8321=>250,8322=>300,8323=>300,8324=>300,8325=>300,8326=>300,8327=>300,8328=>300,\n8329=>300,8330=>300,8331=>300,8332=>300,8333=>216,8334=>216,8352=>698,8353=>667,8354=>667,8355=>611,\n8356=>500,8357=>722,8358=>667,8359=>988,8360=>953,8361=>833,8362=>869,8363=>512,8365=>722,8366=>611,\n8369=>589,8370=>619,8371=>722,8372=>556,8373=>611,8400=>0,8401=>0,8402=>0,8403=>0,8404=>0,\n8405=>0,8406=>0,8407=>0,8408=>0,8409=>0,8410=>0,8411=>0,8412=>0,8413=>0,8414=>0,\n8415=>0,8416=>0,8417=>0,8418=>0,8419=>0,8420=>0,8421=>0,8422=>0,8423=>0,8424=>0,\n8425=>0,8426=>0,8427=>0,8428=>0,8429=>0,8430=>0,8431=>0,8432=>0,8448=>664,8449=>665,\n8451=>954,8453=>693,8454=>787,8457=>822,8462=>500,8463=>500,8468=>777,8470=>823,8471=>760,8478=>616,\n8479=>610,8480=>879,8481=>1156,8483=>611,8486=>743,8487=>743,8489=>286,8490=>722,8491=>722,8494=>533,\n8498=>556,8501=>537,8502=>537,8503=>350,8504=>537,8506=>906,8507=>1155,8523=>778,8525=>856,8526=>500,\n8531=>750,8532=>750,8533=>750,8534=>750,8535=>750,8536=>750,8537=>750,8538=>750,8539=>750,8540=>750,\n8541=>750,8542=>750,8543=>750,8544=>339,8545=>678,8546=>1017,8547=>950,8548=>611,8549=>950,8550=>1289,\n8551=>1628,8552=>950,8553=>611,8554=>950,8555=>1289,8556=>556,8557=>667,8558=>722,8559=>828,8560=>278,\n8561=>556,8562=>834,8563=>722,8564=>444,8565=>722,8566=>1000,8567=>1278,8568=>722,8569=>444,8570=>722,\n8571=>1000,8572=>278,8573=>444,8574=>500,8575=>722,8592=>964,8593=>499,8594=>964,8595=>499,8706=>494,\n8710=>612,8721=>713,8722=>675,8723=>675,8725=>750,8730=>549,8734=>677,8747=>416,8748=>750,8749=>1083,\n8750=>722,8751=>750,8800=>564,8804=>675,8805=>675,8992=>686,8993=>686,9251=>500,9674=>494,9676=>791,\n9824=>626,9825=>694,9826=>595,9827=>776,9828=>626,9829=>694,9830=>595,9831=>776,9833=>333,9834=>555,\n9835=>722,9836=>722,9837=>415,9838=>377,9839=>402,11799=>333,64256=>526,64257=>500,64258=>500,64259=>747,\n64260=>748,64262=>665,64285=>350,64286=>0,64287=>537,64288=>537,64297=>564,64298=>537,64299=>537,64300=>537,\n64301=>537,64302=>537,64303=>537,64304=>537,64305=>537,64306=>350,64307=>537,64308=>537,64309=>350,64310=>350,\n64312=>537,64313=>350,64314=>537,64315=>537,64316=>537,64318=>537,64320=>350,64321=>537,64323=>537,64324=>537,\n64326=>537,64327=>537,64328=>537,64329=>537,64330=>537,64331=>350,64332=>537,64333=>537,64334=>537,64335=>537,\n65533=>788);\n$enc='';\n$diff='';\n$file='freeserifi.z';\n$ctg='freeserifi.ctg.z';\n$originalsize=629968;\n?>"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/helvetica.php",
    "content": "<?php\n // core font definition file for TCPDF (www.tcpdf.org)\n$type='core';\n$dw=556;\n$cw=array(0=>278,1=>278,2=>278,3=>278,4=>278,5=>278,6=>278,7=>278,8=>278,9=>278,\n10=>278,11=>278,12=>278,13=>278,14=>278,15=>278,16=>278,17=>278,18=>278,19=>278,\n20=>278,21=>278,22=>278,23=>278,24=>278,25=>278,26=>278,27=>278,28=>278,29=>278,\n30=>278,31=>278,32=>278,33=>278,34=>355,35=>556,36=>556,37=>889,38=>667,39=>191,\n40=>333,41=>333,42=>389,43=>584,44=>278,45=>333,46=>278,47=>278,48=>556,49=>556,\n50=>556,51=>556,52=>556,53=>556,54=>556,55=>556,56=>556,57=>556,58=>278,59=>278,\n60=>584,61=>584,62=>584,63=>556,64=>1015,65=>667,66=>667,67=>722,68=>722,69=>667,\n70=>611,71=>778,72=>722,73=>278,74=>500,75=>667,76=>556,77=>833,78=>722,79=>778,\n80=>667,81=>778,82=>722,83=>667,84=>611,85=>722,86=>667,87=>944,88=>667,89=>667,\n90=>611,91=>278,92=>278,93=>278,94=>469,95=>556,96=>333,97=>556,98=>556,99=>500,\n100=>556,101=>556,102=>278,103=>556,104=>556,105=>222,106=>222,107=>500,108=>222,\n109=>833,110=>556,111=>556,112=>556,113=>556,114=>333,115=>500,116=>278,117=>556,\n118=>500,119=>722,120=>500,121=>500,122=>500,123=>334,124=>260,125=>334,126=>584,\n127=>350,128=>556,129=>350,130=>222,131=>556,132=>333,133=>1000,134=>556,135=>556,\n136=>333,137=>1000,138=>667,139=>333,140=>1000,141=>350,142=>611,143=>350,144=>350,\n145=>222,146=>222,147=>333,148=>333,149=>350,150=>556,151=>1000,152=>333,153=>1000,\n154=>500,155=>333,156=>944,157=>350,158=>500,159=>667,160=>278,161=>333,162=>556,\n163=>556,164=>556,165=>556,166=>260,167=>556,168=>333,169=>737,170=>370,171=>556,\n172=>584,173=>333,174=>737,175=>333,176=>400,177=>584,178=>333,179=>333,180=>333,\n181=>556,182=>537,183=>278,184=>333,185=>333,186=>365,187=>556,188=>834,189=>834,\n190=>834,191=>611,192=>667,193=>667,194=>667,195=>667,196=>667,197=>667,198=>1000,\n199=>722,200=>667,201=>667,202=>667,203=>667,204=>278,205=>278,206=>278,207=>278,\n208=>722,209=>722,210=>778,211=>778,212=>778,213=>778,214=>778,215=>584,216=>778,\n217=>722,218=>722,219=>722,220=>722,221=>667,222=>667,223=>611,224=>556,225=>556,\n226=>556,227=>556,228=>556,229=>556,230=>889,231=>500,232=>556,233=>556,234=>556,\n235=>556,236=>278,237=>278,238=>278,239=>278,240=>556,241=>556,242=>556,243=>556,\n244=>556,245=>556,246=>556,247=>584,248=>611,249=>556,250=>556,251=>556,252=>556,\n253=>500,254=>556,255=>500);\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/helveticab.php",
    "content": "<?php\n // core font definition file for TCPDF (www.tcpdf.org)\n$type='core';\n$dw=556;\n$cw=array(0=>278,1=>278,2=>278,3=>278,4=>278,5=>278,6=>278,7=>278,8=>278,9=>278,\n10=>278,11=>278,12=>278,13=>278,14=>278,15=>278,16=>278,17=>278,18=>278,19=>278,\n20=>278,21=>278,22=>278,23=>278,24=>278,25=>278,26=>278,27=>278,28=>278,29=>278,\n30=>278,31=>278,32=>278,33=>333,34=>474,35=>556,36=>556,37=>889,38=>722,39=>238,\n40=>333,41=>333,42=>389,43=>584,44=>278,45=>333,46=>278,47=>278,48=>556,49=>556,\n50=>556,51=>556,52=>556,53=>556,54=>556,55=>556,56=>556,57=>556,58=>333,59=>333,\n60=>584,61=>584,62=>584,63=>611,64=>975,65=>722,66=>722,67=>722,68=>722,69=>667,\n70=>611,71=>778,72=>722,73=>278,74=>556,75=>722,76=>611,77=>833,78=>722,79=>778,\n80=>667,81=>778,82=>722,83=>667,84=>611,85=>722,86=>667,87=>944,88=>667,89=>667,\n90=>611,91=>333,92=>278,93=>333,94=>584,95=>556,96=>333,97=>556,98=>611,99=>556,\n100=>611,101=>556,102=>333,103=>611,104=>611,105=>278,106=>278,107=>556,108=>278,\n109=>889,110=>611,111=>611,112=>611,113=>611,114=>389,115=>556,116=>333,117=>611,\n118=>556,119=>778,120=>556,121=>556,122=>500,123=>389,124=>280,125=>389,126=>584,\n127=>350,128=>556,129=>350,130=>278,131=>556,132=>500,133=>1000,134=>556,135=>556,\n136=>333,137=>1000,138=>667,139=>333,140=>1000,141=>350,142=>611,143=>350,144=>350,\n145=>278,146=>278,147=>500,148=>500,149=>350,150=>556,151=>1000,152=>333,153=>1000,\n154=>556,155=>333,156=>944,157=>350,158=>500,159=>667,160=>278,161=>333,162=>556,\n163=>556,164=>556,165=>556,166=>280,167=>556,168=>333,169=>737,170=>370,171=>556,\n172=>584,173=>333,174=>737,175=>333,176=>400,177=>584,178=>333,179=>333,180=>333,\n181=>611,182=>556,183=>278,184=>333,185=>333,186=>365,187=>556,188=>834,189=>834,\n190=>834,191=>611,192=>722,193=>722,194=>722,195=>722,196=>722,197=>722,198=>1000,\n199=>722,200=>667,201=>667,202=>667,203=>667,204=>278,205=>278,206=>278,207=>278,\n208=>722,209=>722,210=>778,211=>778,212=>778,213=>778,214=>778,215=>584,216=>778,\n217=>722,218=>722,219=>722,220=>722,221=>667,222=>667,223=>611,224=>556,225=>556,\n226=>556,227=>556,228=>556,229=>556,230=>889,231=>556,232=>556,233=>556,234=>556,\n235=>556,236=>278,237=>278,238=>278,239=>278,240=>611,241=>611,242=>611,243=>611,\n244=>611,245=>611,246=>611,247=>584,248=>611,249=>611,250=>611,251=>611,252=>611,\n253=>556,254=>611,255=>556);\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/helveticabi.php",
    "content": "<?php\n // core font definition file for TCPDF (www.tcpdf.org)\n$type='core';\n$dw=556;\n$cw=array(0=>278,1=>278,2=>278,3=>278,4=>278,5=>278,6=>278,7=>278,8=>278,9=>278,\n10=>278,11=>278,12=>278,13=>278,14=>278,15=>278,16=>278,17=>278,18=>278,19=>278,\n20=>278,21=>278,22=>278,23=>278,24=>278,25=>278,26=>278,27=>278,28=>278,29=>278,\n30=>278,31=>278,32=>278,33=>333,34=>474,35=>556,36=>556,37=>889,38=>722,39=>238,\n40=>333,41=>333,42=>389,43=>584,44=>278,45=>333,46=>278,47=>278,48=>556,49=>556,\n50=>556,51=>556,52=>556,53=>556,54=>556,55=>556,56=>556,57=>556,58=>333,59=>333,\n60=>584,61=>584,62=>584,63=>611,64=>975,65=>722,66=>722,67=>722,68=>722,69=>667,\n70=>611,71=>778,72=>722,73=>278,74=>556,75=>722,76=>611,77=>833,78=>722,79=>778,\n80=>667,81=>778,82=>722,83=>667,84=>611,85=>722,86=>667,87=>944,88=>667,89=>667,\n90=>611,91=>333,92=>278,93=>333,94=>584,95=>556,96=>333,97=>556,98=>611,99=>556,\n100=>611,101=>556,102=>333,103=>611,104=>611,105=>278,106=>278,107=>556,108=>278,\n109=>889,110=>611,111=>611,112=>611,113=>611,114=>389,115=>556,116=>333,117=>611,\n118=>556,119=>778,120=>556,121=>556,122=>500,123=>389,124=>280,125=>389,126=>584,\n127=>350,128=>556,129=>350,130=>278,131=>556,132=>500,133=>1000,134=>556,135=>556,\n136=>333,137=>1000,138=>667,139=>333,140=>1000,141=>350,142=>611,143=>350,144=>350,\n145=>278,146=>278,147=>500,148=>500,149=>350,150=>556,151=>1000,152=>333,153=>1000,\n154=>556,155=>333,156=>944,157=>350,158=>500,159=>667,160=>278,161=>333,162=>556,\n163=>556,164=>556,165=>556,166=>280,167=>556,168=>333,169=>737,170=>370,171=>556,\n172=>584,173=>333,174=>737,175=>333,176=>400,177=>584,178=>333,179=>333,180=>333,\n181=>611,182=>556,183=>278,184=>333,185=>333,186=>365,187=>556,188=>834,189=>834,\n190=>834,191=>611,192=>722,193=>722,194=>722,195=>722,196=>722,197=>722,198=>1000,\n199=>722,200=>667,201=>667,202=>667,203=>667,204=>278,205=>278,206=>278,207=>278,\n208=>722,209=>722,210=>778,211=>778,212=>778,213=>778,214=>778,215=>584,216=>778,\n217=>722,218=>722,219=>722,220=>722,221=>667,222=>667,223=>611,224=>556,225=>556,\n226=>556,227=>556,228=>556,229=>556,230=>889,231=>556,232=>556,233=>556,234=>556,\n235=>556,236=>278,237=>278,238=>278,239=>278,240=>611,241=>611,242=>611,243=>611,\n244=>611,245=>611,246=>611,247=>584,248=>611,249=>611,250=>611,251=>611,252=>611,\n253=>556,254=>611,255=>556);\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/helveticai.php",
    "content": "<?php\n // core font definition file for TCPDF (www.tcpdf.org)\n$type='core';\n$dw=556;\n$cw=array(0=>278,1=>278,2=>278,3=>278,4=>278,5=>278,6=>278,7=>278,8=>278,9=>278,\n10=>278,11=>278,12=>278,13=>278,14=>278,15=>278,16=>278,17=>278,18=>278,19=>278,\n20=>278,21=>278,22=>278,23=>278,24=>278,25=>278,26=>278,27=>278,28=>278,29=>278,\n30=>278,31=>278,32=>278,33=>278,34=>355,35=>556,36=>556,37=>889,38=>667,39=>191,\n40=>333,41=>333,42=>389,43=>584,44=>278,45=>333,46=>278,47=>278,48=>556,49=>556,\n50=>556,51=>556,52=>556,53=>556,54=>556,55=>556,56=>556,57=>556,58=>278,59=>278,\n60=>584,61=>584,62=>584,63=>556,64=>1015,65=>667,66=>667,67=>722,68=>722,69=>667,\n70=>611,71=>778,72=>722,73=>278,74=>500,75=>667,76=>556,77=>833,78=>722,79=>778,\n80=>667,81=>778,82=>722,83=>667,84=>611,85=>722,86=>667,87=>944,88=>667,89=>667,\n90=>611,91=>278,92=>278,93=>278,94=>469,95=>556,96=>333,97=>556,98=>556,99=>500,\n100=>556,101=>556,102=>278,103=>556,104=>556,105=>222,106=>222,107=>500,108=>222,\n109=>833,110=>556,111=>556,112=>556,113=>556,114=>333,115=>500,116=>278,117=>556,\n118=>500,119=>722,120=>500,121=>500,122=>500,123=>334,124=>260,125=>334,126=>584,\n127=>350,128=>556,129=>350,130=>222,131=>556,132=>333,133=>1000,134=>556,135=>556,\n136=>333,137=>1000,138=>667,139=>333,140=>1000,141=>350,142=>611,143=>350,144=>350,\n145=>222,146=>222,147=>333,148=>333,149=>350,150=>556,151=>1000,152=>333,153=>1000,\n154=>500,155=>333,156=>944,157=>350,158=>500,159=>667,160=>278,161=>333,162=>556,\n163=>556,164=>556,165=>556,166=>260,167=>556,168=>333,169=>737,170=>370,171=>556,\n172=>584,173=>333,174=>737,175=>333,176=>400,177=>584,178=>333,179=>333,180=>333,\n181=>556,182=>537,183=>278,184=>333,185=>333,186=>365,187=>556,188=>834,189=>834,\n190=>834,191=>611,192=>667,193=>667,194=>667,195=>667,196=>667,197=>667,198=>1000,\n199=>722,200=>667,201=>667,202=>667,203=>667,204=>278,205=>278,206=>278,207=>278,\n208=>722,209=>722,210=>778,211=>778,212=>778,213=>778,214=>778,215=>584,216=>778,\n217=>722,218=>722,219=>722,220=>722,221=>667,222=>667,223=>611,224=>556,225=>556,\n226=>556,227=>556,228=>556,229=>556,230=>889,231=>500,232=>556,233=>556,234=>556,\n235=>556,236=>278,237=>278,238=>278,239=>278,240=>556,241=>556,242=>556,243=>556,\n244=>556,245=>556,246=>556,247=>584,248=>611,249=>556,250=>556,251=>556,252=>556,\n253=>500,254=>556,255=>500);\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/hysmyeongjostdmedium.php",
    "content": "<?php\n$type='cidfont0';\n$name='HYSMyeongJoStd-Medium-Acro'; // AdobeMyungjoStd-Medium-Acro in acrobat 6\n$displayname = 'MyungJo Medium (Korean)';\n$desc = array(\n\t'Ascent' => 880,\n\t'Descent' => -120,\n\t'CapHeight' => 720,\n\t'Flags' => 6,\n\t'FontBBox' => '[-28 -148 1001 880]',\n\t'ItalicAngle' => 0,\n\t'StemV' => 60,\n\t'Style' => '<< /Panose <000000000600000000000000> >>',\n);\n$cidinfo = array(\n\t'Registry' => 'Adobe',\n\t'Ordering' => 'Korea1',\n\t'Supplement' => '1',\n);\n$enc = 'UniKS-UCS2-H';\n\n// underline position, needs checking:\n$up = -130;\n$ut = 40;\n\n$dw = 1000;\n$cw = array(\n\t32 => 333, 33 => 416, 34 => 416, 35 => 833, 36 => 625, 37 => 916, 38 => 833, 39 => 250, 40 => 500, 41 => 500,\n\t42 => 500, 43 => 833, 44 => 291, 45 => 450, 46 => 291, 47 => 375, 48 => 625, 49 => 625, 50 => 625, 51 => 625,\n\t52 => 625, 53 => 625, 54 => 625, 55 => 625, 56 => 625, 57 => 625, 58 => 333, 59 => 333, 60 => 833, 61 => 833,\n\t62 => 916, 63 => 500, 64 => 1000, 65 => 791, 66 => 708, 67 => 708, 68 => 750, 69 => 708, 70 => 666, 71 => 750,\n\t72 => 791, 73 => 375, 74 => 500, 75 => 791, 76 => 666, 77 => 916, 78 => 791, 79 => 750, 80 => 666, 81 => 750,\n\t82 => 708, 83 => 666, 84 => 791, 85 => 791, 86 => 750, 87 => 1000, 88 => 708, 89 => 708, 90 => 666, 91 => 500,\n\t92 => 375, 93 => 500, 94 => 500, 95 => 500, 96 => 333, 97 => 541, 98 => 583, 99 => 541, 100 => 583, 101 => 583,\n\t102 => 375, 103 => 583, 104 => 583, 105 => 291, 106 => 333, 107 => 583, 108 => 291, 109 => 875, 110 => 583, 111 => 583,\n\t112 => 583, 113 => 583, 114 => 458, 115 => 541, 116 => 375, 117 => 583, 118 => 583, 119 => 833, 120 => 625, 121 => 625,\n\t122 => 500, 123 => 583, 124 => 583, 125 => 583, 126 => 750,\n);\n$_cr = array(\n\t//array(97, 97, 500),\n\tarray(8094, 8190, 500)\n);\nforeach($_cr as $_r) {\n\tfor($i = $_r[0]; $i <= $_r[1]; $i++) {\n\t\t$cw[$i+31] = $_r[2];\n\t}\n}\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/kozgopromedium.php",
    "content": "<?php\n$type = 'cidfont0';\n$name = 'KozGoPro-Medium-Acro';\n$displayname = 'Kozuka Gothic Pro (Japanese Sans-Serif)';\n$desc = array(\n\t'Ascent' => 880,\n\t'Descent' => -120,\n\t'CapHeight' => 763,\n\t'Flags' => 4,\n\t'FontBBox' => '[-149 -374 1254 1008]',\n\t'ItalicAngle' => 0,\n\t'StemV' => 99,\n\t'Style' => '<< /Panose <0000020b0700000000000000> >>',\n\t'XHeight' => 549,\n);\n$cidinfo = array(\n\t'Registry' => 'Adobe',\n\t'Ordering' => 'Japan1',\n\t'Supplement' => '4',\n);\n$enc = 'UniJIS-UCS2-H';\n\n// underline position, needs checking:\n$up = -75;\n$ut = 50;\n\n$dw = 1000;\n$cw = array(\n\t32 => 224, 33 => 266, 34 => 392, 35 => 551, 36 => 562, 37 => 883, 38 => 677, 39 => 213, 40 => 322, 41 => 322,\n\t42 => 470, 43 => 677, 44 => 247, 45 => 343, 46 => 245, 47 => 370, 48 => 562, 49 => 562, 50 => 562, 51 => 562,\n\t52 => 562, 53 => 562, 54 => 562, 55 => 562, 56 => 562, 57 => 562, 58 => 245, 59 => 247, 60 => 677, 61 => 677,\n\t62 => 677, 63 => 447, 64 => 808, 65 => 661, 66 => 602, 67 => 610, 68 => 708, 69 => 535, 70 => 528, 71 => 689,\n\t72 => 703, 73 => 275, 74 => 404, 75 => 602, 76 => 514, 77 => 871, 78 => 708, 79 => 727, 80 => 585, 81 => 727,\n\t82 => 595, 83 => 539, 84 => 541, 85 => 696, 86 => 619, 87 => 922, 88 => 612, 89 => 591, 90 => 584, 91 => 322,\n\t92 => 562, 93 => 322, 94 => 677, 95 => 568, 96 => 340, 97 => 532, 98 => 612, 99 => 475, 100 => 608, 101 => 543,\n\t102 => 332, 103 => 603, 104 => 601, 105 => 265, 106 => 276, 107 => 524, 108 => 264, 109 => 901, 110 => 601, 111 => 590,\n\t112 => 612, 113 => 607, 114 => 367, 115 => 433, 116 => 369, 117 => 597, 118 => 527, 119 => 800, 120 => 511, 121 => 518,\n\t122 => 468, 123 => 321, 124 => 273, 125 => 321, 126 => 341, 127 => 241, 128 => 362, 129 => 241, 130 => 273, 131 => 677,\n\t132 => 266, 133 => 562, 134 => 562, 135 => 456, 136 => 562, 137 => 571, 138 => 562, 139 => 416, 140 => 472, 141 => 283,\n\t142 => 283, 143 => 587, 144 => 588, 145 => 568, 146 => 545, 147 => 545, 148 => 247, 149 => 561, 150 => 330, 151 => 239,\n\t152 => 418, 153 => 416, 154 => 472, 155 => 1136, 156 => 1288, 157 => 447, 158 => 340, 159 => 340, 160 => 340, 161 => 340,\n\t162 => 340, 163 => 340, 164 => 455, 165 => 340, 166 => 340, 167 => 340, 168 => 340, 169 => 1136, 170 => 857, 171 => 384,\n\t172 => 519, 173 => 727, 174 => 952, 175 => 398, 176 => 834, 177 => 264, 178 => 275, 179 => 590, 180 => 918, 181 => 605,\n\t182 => 677, 183 => 769, 184 => 677, 185 => 473, 186 => 361, 187 => 677, 188 => 347, 189 => 340, 190 => 599, 191 => 284,\n\t192 => 845, 193 => 845, 194 => 845, 195 => 661, 196 => 661, 197 => 661, 198 => 661, 199 => 661, 200 => 661, 201 => 610,\n\t202 => 535, 203 => 535, 204 => 535, 205 => 535, 206 => 275, 207 => 275, 208 => 275, 209 => 275, 210 => 715, 211 => 708,\n\t212 => 727, 213 => 727, 214 => 727, 215 => 727, 216 => 727, 217 => 677, 218 => 696, 219 => 696, 220 => 696, 221 => 696,\n\t222 => 591, 223 => 584, 224 => 532, 225 => 532, 226 => 532, 227 => 532, 228 => 532, 229 => 532, 230 => 475, 231 => 543,\n\t232 => 543, 233 => 543, 234 => 543, 235 => 264, 236 => 264, 237 => 264, 238 => 264, 239 => 584, 240 => 601, 241 => 590,\n\t242 => 590, 243 => 590, 244 => 590, 245 => 590, 246 => 677, 247 => 597, 248 => 597, 249 => 597, 250 => 597, 251 => 518,\n\t252 => 612, 253 => 518, 254 => 539, 255 => 591, 256 => 584, 257 => 446, 258 => 433, 259 => 683, 260 => 468, 261 => 562,\n);\n$_cr = array(\n\tarray(231, 632, 500), // half-width\n\tarray(8718, 8718, 500),\n\tarray(9738, 9757, 250), // quarter-width\n\tarray(9758, 9778, 333), // third-width\n\tarray(12063, 12087, 500)\n);\nforeach($_cr as $_r) {\n\tfor($i = $_r[0]; $i <= $_r[1]; $i++) {\n\t\t$cw[$i+31] = $_r[2];\n\t}\n}\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/kozminproregular.php",
    "content": "<?php\n$type = 'cidfont0';\n$name = 'KozMinPro-Regular-Acro';\n$displayname = 'Kozuka Mincho Pro (Japanese Serif)';\n$desc = array(\n\t'Ascent' => 880,\n\t'Descent' => -120,\n\t'CapHeight' => 740,\n\t'Flags' => 6,\n\t'FontBBox' => '[-195 -272 1110 1075]',\n\t'ItalicAngle' => 0,\n\t'StemV' => 86,\n\t'XHeight' => 502,\n);\n$cidinfo = array(\n\t'Registry' => 'Adobe',\n\t'Ordering' => 'Japan1',\n\t'Supplement' => '4',\n);\n$enc = 'UniJIS-UCS2-H';\n\n$up = -75;\n$ut = 50;\n\n$dw = 1000;\n$cw = array(\n\t32 => 278, 33 => 299, 34 => 353, 35 => 614, 36 => 614, 37 => 721, 38 => 735, 39 => 216, 40 => 323, 41 => 323,\n\t42 => 449, 43 => 529, 44 => 219, 45 => 306, 46 => 219, 47 => 453, 48 => 614, 49 => 614, 50 => 614, 51 => 614,\n\t52 => 614, 53 => 614, 54 => 614, 55 => 614, 56 => 614, 57 => 614, 58 => 219, 59 => 219, 60 => 529, 61 => 529,\n\t62 => 529, 63 => 486, 64 => 744, 65 => 646, 66 => 604, 67 => 617, 68 => 681, 69 => 567, 70 => 537, 71 => 647,\n\t72 => 738, 73 => 320, 74 => 433, 75 => 637, 76 => 566, 77 => 904, 78 => 710, 79 => 716, 80 => 605, 81 => 716,\n\t82 => 623, 83 => 517, 84 => 601, 85 => 690, 86 => 668, 87 => 990, 88 => 681, 89 => 634, 90 => 578, 91 => 316,\n\t92 => 614, 93 => 316, 94 => 529, 95 => 500, 96 => 387, 97 => 509, 98 => 566, 99 => 478, 100 => 565, 101 => 503,\n\t102 => 337, 103 => 549, 104 => 580, 105 => 275, 106 => 266, 107 => 544, 108 => 276, 109 => 854, 110 => 579, 111 => 550,\n\t112 => 578, 113 => 566, 114 => 410, 115 => 444, 116 => 340, 117 => 575, 118 => 512, 119 => 760, 120 => 503, 121 => 529,\n\t122 => 453, 123 => 326, 124 => 380, 125 => 326, 126 => 387, 127 => 216, 128 => 453, 129 => 216, 130 => 380, 131 => 529,\n\t132 => 299, 133 => 614, 134 => 614, 135 => 265, 136 => 614, 137 => 475, 138 => 614, 139 => 353, 140 => 451, 141 => 291,\n\t142 => 291, 143 => 588, 144 => 589, 145 => 500, 146 => 476, 147 => 476, 148 => 219, 149 => 494, 150 => 452, 151 => 216,\n\t152 => 353, 153 => 353, 154 => 451, 156 => 1075, 157 => 486, 158 => 387, 159 => 387, 160 => 387, 161 => 387,\n\t162 => 387,\t163 => 387, 164 => 387, 165 => 387, 166 => 387, 167 => 387, 168 => 387, 170 => 880, 171 => 448,\n\t172 => 566, 173 => 716,\t174 => 903, 175 => 460, 176 => 805, 177 => 275, 178 => 276, 179 => 550, 180 => 886, 181 => 582,\n\t182 => 529, 183 => 738,\t184 => 529, 185 => 738, 186 => 357, 187 => 529, 188 => 406, 189 => 406, 190 => 575, 191 => 406,\n\t192 => 934, 193 => 934,\t194 => 934, 195 => 646, 196 => 646, 197 => 646, 198 => 646, 199 => 646, 200 => 646, 201 => 617,\n\t202 => 567, 203 => 567, 204 => 567, 205 => 567, 206 => 320, 207 => 320, 208 => 320, 209 => 320, 210 => 681, 211 => 710,\n\t212 => 716, 213 => 716, 214 => 716, 215 => 716, 216 => 716, 217 => 529, 218 => 690, 219 => 690, 220 => 690, 221 => 690,\n\t222 => 634, 223 => 605, 224 => 509, 225 => 509, 226 => 509, 227 => 509, 228 => 509, 229 => 509, 230 => 478, 231 => 503,\n\t232 => 503, 233 => 503, 234 => 503, 235 => 275, 236 => 275, 237 => 275, 238 => 275, 239 => 550, 240 => 579, 241 => 550,\n\t242 => 550, 243 => 550, 244 => 550, 245 => 550, 246 => 529, 247 => 575, 248 => 575, 249 => 575, 250 => 575, 251 => 529,\n\t252 => 578, 253 => 529, 254 => 517, 255 => 634, 256 => 578, 257 => 445, 258 => 444, 259 => 842, 260 => 453, 261 => 614,\n);\n$_cr = array(\n\tarray(231, 632, 500), // half-width\n\tarray(8718, 8718, 500),\n\tarray(9738, 9757, 250), // quarter-width\n\tarray(9758, 9778, 333), // third-width\n\tarray(12063, 12087, 500),\n);\nforeach($_cr as $_r) {\n\tfor($i = $_r[0]; $i <= $_r[1]; $i++) {\n\t\t$cw[$i+31] = $_r[2];\n\t}\n}\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/msungstdlight.php",
    "content": "<?php\n$type = 'cidfont0';\n$name = 'MSungStd-Light-Acro';\n$displayname = 'MSung Light (Trad. Chinese)';\n$desc = array(\n\t'Ascent' => 880,\n\t'Descent' => -120,\n\t'CapHeight' => 880,\n\t'Flags' => 6,\n\t'FontBBox' => '[-160 -249 1015 1071]',\n\t'ItalicAngle' => 0,\n\t'StemV' => 93,\n);\n$cidinfo = array(\n\t'Registry' => 'Adobe',\n\t'Ordering' => 'CNS1',\n\t'Supplement' => '3',\n);\n$enc = 'UniCNS-UCS2-H';\n\n$up = -130;\n$ut = 40;\n\n$dw = 1000;\n$cw = array(\n\t32 => 250, 33 => 250, 34 => 408, 35 => 668, 36 => 490, 37 => 875, 38 => 698, 39 => 250, 40 => 240, 41 => 240,\n\t42 => 417, 43 => 667, 44 => 250, 45 => 313, 46 => 250, 47 => 520, 48 => 500, 49 => 500, 50 => 500, 51 => 500,\n\t52 => 500, 53 => 500, 54 => 500, 55 => 500, 56 => 500, 57 => 500, 58 => 250, 59 => 250, 60 => 667, 61 => 667,\n\t62 => 667, 63 => 396, 64 => 921, 65 => 677, 66 => 615, 67 => 719, 68 => 760, 69 => 625, 70 => 552, 71 => 771,\n\t72 => 802, 73 => 354, 74 => 354, 75 => 781, 76 => 604, 77 => 927, 78 => 750, 79 => 823, 80 => 563, 81 => 823,\n\t82 => 729, 83 => 542, 84 => 698, 85 => 771, 86 => 729, 87 => 948, 88 => 771, 89 => 677, 90 => 635, 91 => 344,\n\t92 => 520, 93 => 344, 94 => 469, 95 => 500, 96 => 250, 97 => 469, 98 => 521, 99 => 427, 100 => 521, 101 => 438,\n\t102 => 271, 103 => 469, 104 => 531, 105 => 250, 106 => 250, 107 => 458, 108 => 240, 109 => 802, 110 => 531, 111 => 500,\n\t112 => 521, 113 => 521, 114 => 365, 115 => 333, 116 => 292, 117 => 521, 118 => 458, 119 => 677, 120 => 479, 121 => 458,\n\t122 => 427, 123 => 480, 124 => 496, 125 => 480, 126 => 667,\n\t17601 => 500,\n);\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/stsongstdlight.php",
    "content": "<?php\n$type = 'cidfont0';\n$name = 'STSongStd-Light-Acro';\n$displayname = 'STSong Light (Simp. Chinese)';\n$desc = array(\n\t'Ascent' => 752,\n\t'Descent' => -271,\n\t'CapHeight' => 737,\n\t'Flags' => 6,\n\t'FontBBox' => '[-25 -254 1000 880]',\n\t'ItalicAngle' => 0,\n\t'StemV' => 58,\n\t'Style' => '<< /Panose <000000000400000000000000> >>',\n);\n$cidinfo = array(\n\t'Registry' => 'Adobe',\n\t'Ordering' => 'GB1',\n\t'Supplement' => '2',\n);\n$enc = 'UniGB-UCS2-H';\n\n// underline position, needs checking:\n$up = -130;\n$ut = 40;\n\n$dw = 1000;\n$cw = array(\n\t32 => 207, 33 => 270, 34 => 342, 35 => 467, 36 => 462, 37 => 797, 38 => 710, 39 => 239, 40 => 374, 41 => 374,\n\t42 => 423, 43 => 605, 44 => 238, 45 => 375, 46 => 238, 47 => 334, 48 => 462, 49 => 462, 50 => 462, 51 => 462,\n\t52 => 462, 53 => 462, 54 => 462, 55 => 462, 56 => 462, 57 => 462, 58 => 238, 59 => 238, 60 => 605, 61 => 605,\n\t62 => 605, 63 => 344, 64 => 748, 65 => 684, 66 => 560, 67 => 695, 68 => 739, 69 => 563, 70 => 511, 71 => 729,\n\t72 => 793, 73 => 318, 74 => 312, 75 => 666, 76 => 526, 77 => 896, 78 => 758, 79 => 772, 80 => 544, 81 => 772,\n\t82 => 628, 83 => 465, 84 => 607, 85 => 753, 86 => 711, 87 => 972, 88 => 647, 89 => 620, 90 => 607, 91 => 374,\n\t92 => 333, 93 => 374, 94 => 606, 95 => 500, 96 => 239, 97 => 417, 98 => 503, 99 => 427, 100 => 529, 101 => 415,\n\t102 => 264, 103 => 444, 104 => 518, 105 => 241, 106 => 230, 107 => 495, 108 => 228, 109 => 793, 110 => 527, 111 => 524,\n\t112 => 524, 113 => 504, 114 => 338, 115 => 336, 116 => 277, 117 => 517, 118 => 450, 119 => 652, 120 => 466, 121 => 452,\n\t122 => 407, 123 => 370, 124 => 258, 125 => 370, 126 => 605,\n);\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/symbol.php",
    "content": "<?php\r\n // core font definition file for TCPDF (www.tcpdf.org)\r\n$type='core';\n$dw=500;\r\n$cw=array(0=>250,1=>250,2=>250,3=>250,4=>250,5=>250,6=>250,7=>250,8=>250,9=>250,\n10=>250,11=>250,12=>250,13=>250,14=>250,15=>250,16=>250,17=>250,18=>250,19=>250,\n20=>250,21=>250,22=>250,23=>250,24=>250,25=>250,26=>250,27=>250,28=>250,29=>250,\n30=>250,31=>250,32=>250,33=>333,34=>713,35=>500,36=>549,37=>833,38=>778,39=>439,\n40=>333,41=>333,42=>500,43=>549,44=>250,45=>549,46=>250,47=>278,48=>500,49=>500,\n50=>500,51=>500,52=>500,53=>500,54=>500,55=>500,56=>500,57=>500,58=>278,59=>278,\n60=>549,61=>549,62=>549,63=>444,64=>549,65=>722,66=>667,67=>722,68=>612,69=>611,\n70=>763,71=>603,72=>722,73=>333,74=>631,75=>722,76=>686,77=>889,78=>722,79=>722,\n80=>768,81=>741,82=>556,83=>592,84=>611,85=>690,86=>439,87=>768,88=>645,89=>795,\n90=>611,91=>333,92=>863,93=>333,94=>658,95=>500,96=>500,97=>631,98=>549,99=>549,\n100=>494,101=>439,102=>521,103=>411,104=>603,105=>329,106=>603,107=>549,108=>549,\n109=>576,110=>521,111=>549,112=>549,113=>521,114=>549,115=>603,116=>439,117=>576,\n118=>713,119=>686,120=>493,121=>686,122=>494,123=>480,124=>200,125=>480,126=>549,\n127=>0,128=>0,129=>0,130=>0,131=>0,132=>0,133=>0,134=>0,135=>0,136=>0,137=>0,\n138=>0,139=>0,140=>0,141=>0,142=>0,143=>0,144=>0,145=>0,146=>0,147=>0,148=>0,\n149=>0,150=>0,151=>0,152=>0,153=>0,154=>0,155=>0,156=>0,157=>0,158=>0,159=>0,\n160=>750,161=>620,162=>247,163=>549,164=>167,165=>713,166=>500,167=>753,168=>753,\n169=>753,170=>753,171=>1042,172=>987,173=>603,174=>987,175=>603,176=>400,177=>549,\n178=>411,179=>549,180=>549,181=>713,182=>494,183=>460,184=>549,185=>549,186=>549,\n187=>549,188=>1000,189=>603,190=>1000,191=>658,192=>823,193=>686,194=>795,195=>987,\n196=>768,197=>768,198=>823,199=>768,200=>768,201=>713,202=>713,203=>713,204=>713,\n205=>713,206=>713,207=>713,208=>768,209=>713,210=>790,211=>790,212=>890,213=>823,\n214=>549,215=>250,216=>713,217=>603,218=>603,219=>1042,220=>987,221=>603,222=>987,\n223=>603,224=>494,225=>329,226=>790,227=>790,228=>786,229=>713,230=>384,231=>384,\n232=>384,233=>384,234=>384,235=>384,236=>494,237=>494,238=>494,239=>494,240=>0,\n241=>329,242=>274,243=>686,244=>686,245=>686,246=>384,247=>384,248=>384,249=>384,\n250=>384,251=>384,252=>494,253=>494,254=>494,255=>0);\r\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/times.php",
    "content": "<?php\n // core font definition file for TCPDF (www.tcpdf.org)\n$type='core';\n$dw=500;\n$cw=array(0=>250,1=>250,2=>250,3=>250,4=>250,5=>250,6=>250,7=>250,8=>250,9=>250,\n10=>250,11=>250,12=>250,13=>250,14=>250,15=>250,16=>250,17=>250,18=>250,19=>250,\n20=>250,21=>250,22=>250,23=>250,24=>250,25=>250,26=>250,27=>250,28=>250,29=>250,\n30=>250,31=>250,32=>250,33=>333,34=>408,35=>500,36=>500,37=>833,38=>778,39=>180,\n40=>333,41=>333,42=>500,43=>564,44=>250,45=>333,46=>250,47=>278,48=>500,49=>500,\n50=>500,51=>500,52=>500,53=>500,54=>500,55=>500,56=>500,57=>500,58=>278,59=>278,\n60=>564,61=>564,62=>564,63=>444,64=>921,65=>722,66=>667,67=>667,68=>722,69=>611,\n70=>556,71=>722,72=>722,73=>333,74=>389,75=>722,76=>611,77=>889,78=>722,79=>722,\n80=>556,81=>722,82=>667,83=>556,84=>611,85=>722,86=>722,87=>944,88=>722,89=>722,\n90=>611,91=>333,92=>278,93=>333,94=>469,95=>500,96=>333,97=>444,98=>500,99=>444,\n100=>500,101=>444,102=>333,103=>500,104=>500,105=>278,106=>278,107=>500,108=>278,\n109=>778,110=>500,111=>500,112=>500,113=>500,114=>333,115=>389,116=>278,117=>500,\n118=>500,119=>722,120=>500,121=>500,122=>444,123=>480,124=>200,125=>480,126=>541,\n127=>350,128=>500,129=>350,130=>333,131=>500,132=>444,133=>1000,134=>500,135=>500,\n136=>333,137=>1000,138=>556,139=>333,140=>889,141=>350,142=>611,143=>350,144=>350,\n145=>333,146=>333,147=>444,148=>444,149=>350,150=>500,151=>1000,152=>333,153=>980,\n154=>389,155=>333,156=>722,157=>350,158=>444,159=>722,160=>250,161=>333,162=>500,\n163=>500,164=>500,165=>500,166=>200,167=>500,168=>333,169=>760,170=>276,171=>500,\n172=>564,173=>333,174=>760,175=>333,176=>400,177=>564,178=>300,179=>300,180=>333,\n181=>500,182=>453,183=>250,184=>333,185=>300,186=>310,187=>500,188=>750,189=>750,\n190=>750,191=>444,192=>722,193=>722,194=>722,195=>722,196=>722,197=>722,198=>889,\n199=>667,200=>611,201=>611,202=>611,203=>611,204=>333,205=>333,206=>333,207=>333,\n208=>722,209=>722,210=>722,211=>722,212=>722,213=>722,214=>722,215=>564,216=>722,\n217=>722,218=>722,219=>722,220=>722,221=>722,222=>556,223=>500,224=>444,225=>444,\n226=>444,227=>444,228=>444,229=>444,230=>667,231=>444,232=>444,233=>444,234=>444,\n235=>444,236=>278,237=>278,238=>278,239=>278,240=>500,241=>500,242=>500,243=>500,\n244=>500,245=>500,246=>500,247=>564,248=>500,249=>500,250=>500,251=>500,252=>500,\n253=>500,254=>500,255=>500);\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/timesb.php",
    "content": "<?php\n // core font definition file for TCPDF (www.tcpdf.org)\n$type='core';\n$dw=500;\n$cw=array(0=>250,1=>250,2=>250,3=>250,4=>250,5=>250,6=>250,7=>250,8=>250,9=>250,\n10=>250,11=>250,12=>250,13=>250,14=>250,15=>250,16=>250,17=>250,18=>250,19=>250,\n20=>250,21=>250,22=>250,23=>250,24=>250,25=>250,26=>250,27=>250,28=>250,29=>250,\n30=>250,31=>250,32=>250,33=>333,34=>555,35=>500,36=>500,37=>1000,38=>833,39=>278,\n40=>333,41=>333,42=>500,43=>570,44=>250,45=>333,46=>250,47=>278,48=>500,49=>500,\n50=>500,51=>500,52=>500,53=>500,54=>500,55=>500,56=>500,57=>500,58=>333,59=>333,\n60=>570,61=>570,62=>570,63=>500,64=>930,65=>722,66=>667,67=>722,68=>722,69=>667,\n70=>611,71=>778,72=>778,73=>389,74=>500,75=>778,76=>667,77=>944,78=>722,79=>778,\n80=>611,81=>778,82=>722,83=>556,84=>667,85=>722,86=>722,87=>1000,88=>722,89=>722,\n90=>667,91=>333,92=>278,93=>333,94=>581,95=>500,96=>333,97=>500,98=>556,99=>444,\n100=>556,101=>444,102=>333,103=>500,104=>556,105=>278,106=>333,107=>556,108=>278,\n109=>833,110=>556,111=>500,112=>556,113=>556,114=>444,115=>389,116=>333,117=>556,\n118=>500,119=>722,120=>500,121=>500,122=>444,123=>394,124=>220,125=>394,126=>520,\n127=>350,128=>500,129=>350,130=>333,131=>500,132=>500,133=>1000,134=>500,135=>500,\n136=>333,137=>1000,138=>556,139=>333,140=>1000,141=>350,142=>667,143=>350,144=>350,\n145=>333,146=>333,147=>500,148=>500,149=>350,150=>500,151=>1000,152=>333,153=>1000,\n154=>389,155=>333,156=>722,157=>350,158=>444,159=>722,160=>250,161=>333,162=>500,\n163=>500,164=>500,165=>500,166=>220,167=>500,168=>333,169=>747,170=>300,171=>500,\n172=>570,173=>333,174=>747,175=>333,176=>400,177=>570,178=>300,179=>300,180=>333,\n181=>556,182=>540,183=>250,184=>333,185=>300,186=>330,187=>500,188=>750,189=>750,\n190=>750,191=>500,192=>722,193=>722,194=>722,195=>722,196=>722,197=>722,198=>1000,\n199=>722,200=>667,201=>667,202=>667,203=>667,204=>389,205=>389,206=>389,207=>389,\n208=>722,209=>722,210=>778,211=>778,212=>778,213=>778,214=>778,215=>570,216=>778,\n217=>722,218=>722,219=>722,220=>722,221=>722,222=>611,223=>556,224=>500,225=>500,\n226=>500,227=>500,228=>500,229=>500,230=>722,231=>444,232=>444,233=>444,234=>444,\n235=>444,236=>278,237=>278,238=>278,239=>278,240=>500,241=>556,242=>500,243=>500,\n244=>500,245=>500,246=>500,247=>570,248=>500,249=>556,250=>556,251=>556,252=>556,\n253=>500,254=>556,255=>500);\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/timesbi.php",
    "content": "<?php\n // core font definition file for TCPDF (www.tcpdf.org)\n$type='core';\n$dw=500;\n$cw=array(0=>250,1=>250,2=>250,3=>250,4=>250,5=>250,6=>250,7=>250,8=>250,9=>250,\n10=>250,11=>250,12=>250,13=>250,14=>250,15=>250,16=>250,17=>250,18=>250,19=>250,\n20=>250,21=>250,22=>250,23=>250,24=>250,25=>250,26=>250,27=>250,28=>250,29=>250,\n30=>250,31=>250,32=>250,33=>389,34=>555,35=>500,36=>500,37=>833,38=>778,39=>278,\n40=>333,41=>333,42=>500,43=>570,44=>250,45=>333,46=>250,47=>278,48=>500,49=>500,\n50=>500,51=>500,52=>500,53=>500,54=>500,55=>500,56=>500,57=>500,58=>333,59=>333,\n60=>570,61=>570,62=>570,63=>500,64=>832,65=>667,66=>667,67=>667,68=>722,69=>667,\n70=>667,71=>722,72=>778,73=>389,74=>500,75=>667,76=>611,77=>889,78=>722,79=>722,\n80=>611,81=>722,82=>667,83=>556,84=>611,85=>722,86=>667,87=>889,88=>667,89=>611,\n90=>611,91=>333,92=>278,93=>333,94=>570,95=>500,96=>333,97=>500,98=>500,99=>444,\n100=>500,101=>444,102=>333,103=>500,104=>556,105=>278,106=>278,107=>500,108=>278,\n109=>778,110=>556,111=>500,112=>500,113=>500,114=>389,115=>389,116=>278,117=>556,\n118=>444,119=>667,120=>500,121=>444,122=>389,123=>348,124=>220,125=>348,126=>570,\n127=>350,128=>500,129=>350,130=>333,131=>500,132=>500,133=>1000,134=>500,135=>500,\n136=>333,137=>1000,138=>556,139=>333,140=>944,141=>350,142=>611,143=>350,144=>350,\n145=>333,146=>333,147=>500,148=>500,149=>350,150=>500,151=>1000,152=>333,153=>1000,\n154=>389,155=>333,156=>722,157=>350,158=>389,159=>611,160=>250,161=>389,162=>500,\n163=>500,164=>500,165=>500,166=>220,167=>500,168=>333,169=>747,170=>266,171=>500,\n172=>606,173=>333,174=>747,175=>333,176=>400,177=>570,178=>300,179=>300,180=>333,\n181=>576,182=>500,183=>250,184=>333,185=>300,186=>300,187=>500,188=>750,189=>750,\n190=>750,191=>500,192=>667,193=>667,194=>667,195=>667,196=>667,197=>667,198=>944,\n199=>667,200=>667,201=>667,202=>667,203=>667,204=>389,205=>389,206=>389,207=>389,\n208=>722,209=>722,210=>722,211=>722,212=>722,213=>722,214=>722,215=>570,216=>722,\n217=>722,218=>722,219=>722,220=>722,221=>611,222=>611,223=>500,224=>500,225=>500,\n226=>500,227=>500,228=>500,229=>500,230=>722,231=>444,232=>444,233=>444,234=>444,\n235=>444,236=>278,237=>278,238=>278,239=>278,240=>500,241=>556,242=>500,243=>500,\n244=>500,245=>500,246=>500,247=>570,248=>500,249=>556,250=>556,251=>556,252=>556,\n253=>444,254=>500,255=>444);\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/timesi.php",
    "content": "<?php\n // core font definition file for TCPDF (www.tcpdf.org)\n$type='core';\n$dw=500;\n$cw=array(0=>250,1=>250,2=>250,3=>250,4=>250,5=>250,6=>250,7=>250,8=>250,9=>250,\n10=>250,11=>250,12=>250,13=>250,14=>250,15=>250,16=>250,17=>250,18=>250,19=>250,\n20=>250,21=>250,22=>250,23=>250,24=>250,25=>250,26=>250,27=>250,28=>250,29=>250,\n30=>250,31=>250,32=>250,33=>333,34=>420,35=>500,36=>500,37=>833,38=>778,39=>214,\n40=>333,41=>333,42=>500,43=>675,44=>250,45=>333,46=>250,47=>278,48=>500,49=>500,\n50=>500,51=>500,52=>500,53=>500,54=>500,55=>500,56=>500,57=>500,58=>333,59=>333,\n60=>675,61=>675,62=>675,63=>500,64=>920,65=>611,66=>611,67=>667,68=>722,69=>611,\n70=>611,71=>722,72=>722,73=>333,74=>444,75=>667,76=>556,77=>833,78=>667,79=>722,\n80=>611,81=>722,82=>611,83=>500,84=>556,85=>722,86=>611,87=>833,88=>611,89=>556,\n90=>556,91=>389,92=>278,93=>389,94=>422,95=>500,96=>333,97=>500,98=>500,99=>444,\n100=>500,101=>444,102=>278,103=>500,104=>500,105=>278,106=>278,107=>444,108=>278,\n109=>722,110=>500,111=>500,112=>500,113=>500,114=>389,115=>389,116=>278,117=>500,\n118=>444,119=>667,120=>444,121=>444,122=>389,123=>400,124=>275,125=>400,126=>541,\n127=>350,128=>500,129=>350,130=>333,131=>500,132=>556,133=>889,134=>500,135=>500,\n136=>333,137=>1000,138=>500,139=>333,140=>944,141=>350,142=>556,143=>350,144=>350,\n145=>333,146=>333,147=>556,148=>556,149=>350,150=>500,151=>889,152=>333,153=>980,\n154=>389,155=>333,156=>667,157=>350,158=>389,159=>556,160=>250,161=>389,162=>500,\n163=>500,164=>500,165=>500,166=>275,167=>500,168=>333,169=>760,170=>276,171=>500,\n172=>675,173=>333,174=>760,175=>333,176=>400,177=>675,178=>300,179=>300,180=>333,\n181=>500,182=>523,183=>250,184=>333,185=>300,186=>310,187=>500,188=>750,189=>750,\n190=>750,191=>500,192=>611,193=>611,194=>611,195=>611,196=>611,197=>611,198=>889,\n199=>667,200=>611,201=>611,202=>611,203=>611,204=>333,205=>333,206=>333,207=>333,\n208=>722,209=>667,210=>722,211=>722,212=>722,213=>722,214=>722,215=>675,216=>722,\n217=>722,218=>722,219=>722,220=>722,221=>556,222=>611,223=>500,224=>500,225=>500,\n226=>500,227=>500,228=>500,229=>500,230=>667,231=>444,232=>444,233=>444,234=>444,\n235=>444,236=>278,237=>278,238=>278,239=>278,240=>500,241=>500,242=>500,243=>500,\n244=>500,245=>500,246=>500,247=>675,248=>500,249=>500,250=>500,251=>500,252=>500,\n253=>444,254=>500,255=>444);\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/uni2cid_ac15.php",
    "content": "<?php\n// unicode to cid conversion table is from\n// ftp://ftp.oreilly.com/pub/examples/nutshell/cjkv/adobe/\n// cid2code.txt in ag15.tar.Z\n$cidinfo['uni2cid'] = array(\n32=>1,\n33=>2,\n34=>3,\n35=>4,\n36=>5,\n37=>6,\n38=>7,\n39=>8,\n40=>9,\n41=>10,\n42=>11,\n43=>12,\n44=>13,\n45=>14,\n46=>15,\n47=>16,\n48=>17,\n49=>18,\n50=>19,\n51=>20,\n52=>21,\n53=>22,\n54=>23,\n55=>24,\n56=>25,\n57=>26,\n58=>27,\n59=>28,\n60=>29,\n61=>30,\n62=>31,\n63=>32,\n64=>33,\n65=>34,\n66=>35,\n67=>36,\n68=>37,\n69=>38,\n70=>39,\n71=>40,\n72=>41,\n73=>42,\n74=>43,\n75=>44,\n76=>45,\n77=>46,\n78=>47,\n79=>48,\n80=>49,\n81=>50,\n82=>51,\n83=>52,\n84=>53,\n85=>54,\n86=>55,\n87=>56,\n88=>57,\n89=>58,\n90=>59,\n91=>60,\n92=>61,\n93=>62,\n94=>63,\n95=>64,\n96=>65,\n97=>66,\n98=>67,\n99=>68,\n100=>69,\n101=>70,\n102=>71,\n103=>72,\n104=>73,\n105=>74,\n106=>75,\n107=>76,\n108=>77,\n109=>78,\n110=>79,\n111=>80,\n112=>81,\n113=>82,\n114=>83,\n115=>84,\n116=>85,\n117=>86,\n118=>87,\n119=>88,\n120=>89,\n121=>90,\n122=>91,\n123=>92,\n124=>93,\n125=>94,\n126=>95,\n12288=>99,\n65292=>100,\n12289=>101,\n12290=>102,\n65294=>103,\n8226=>104,\n8231=>104,\n65307=>105,\n65306=>106,\n65311=>107,\n65281=>108,\n65072=>109,\n8230=>110,\n8943=>110,\n8229=>111,\n65104=>112,\n65380=>113,\n65105=>113,\n65106=>114,\n183=>115,\n65108=>116,\n65109=>117,\n65110=>118,\n65111=>119,\n65372=>120,\n8211=>121,\n65073=>122,\n8212=>123,\n65288=>128,\n65289=>129,\n65077=>130,\n65078=>131,\n65371=>132,\n65373=>133,\n65079=>134,\n65080=>135,\n12308=>136,\n12309=>137,\n65081=>138,\n65082=>139,\n12304=>140,\n12305=>141,\n65083=>142,\n65084=>143,\n12298=>144,\n12299=>145,\n65085=>146,\n65086=>147,\n12296=>148,\n12297=>149,\n65087=>150,\n65088=>151,\n12300=>152,\n12301=>153,\n65089=>154,\n65090=>155,\n12302=>156,\n12303=>157,\n65091=>158,\n65092=>159,\n65113=>160,\n65114=>161,\n65115=>162,\n65116=>163,\n65117=>164,\n65118=>165,\n8216=>166,\n8217=>167,\n8220=>168,\n8221=>169,\n12317=>170,\n12318=>171,\n8245=>172,\n8242=>173,\n65283=>174,\n65286=>175,\n65290=>176,\n8251=>177,\n167=>178,\n12291=>179,\n9675=>180,\n9679=>181,\n9651=>182,\n9650=>183,\n9678=>184,\n9734=>185,\n9733=>186,\n9671=>187,\n9670=>188,\n9633=>189,\n9632=>190,\n9661=>191,\n9660=>192,\n12963=>193,\n8453=>194,\n175=>195,\n772=>195,\n8254=>195,\n65507=>196,\n65343=>197,\n717=>198,\n65097=>199,\n65098=>200,\n65101=>201,\n65102=>202,\n65099=>203,\n65100=>204,\n65119=>205,\n65120=>206,\n65121=>207,\n65291=>208,\n65293=>209,\n215=>210,\n247=>211,\n177=>212,\n8730=>213,\n65308=>214,\n65310=>215,\n65309=>216,\n8806=>217,\n8807=>218,\n8800=>219,\n8734=>220,\n8786=>221,\n8801=>222,\n65122=>223,\n65123=>224,\n65124=>225,\n65125=>226,\n65126=>227,\n8764=>228,\n65374=>228,\n8745=>229,\n8746=>230,\n8869=>231,\n8736=>232,\n8735=>233,\n8895=>234,\n13266=>235,\n13265=>236,\n8747=>237,\n8750=>238,\n8757=>239,\n8756=>240,\n9792=>241,\n9794=>242,\n8853=>243,\n9793=>243,\n8857=>244,\n9737=>244,\n8593=>245,\n8595=>246,\n8594=>247,\n8592=>248,\n8598=>249,\n8599=>250,\n8601=>251,\n8600=>252,\n8741=>253,\n8739=>254,\n8725=>257,\n65295=>257,\n65128=>258,\n65340=>258,\n65284=>259,\n165=>260,\n65509=>260,\n12306=>261,\n162=>262,\n65504=>262,\n163=>263,\n65505=>263,\n65285=>264,\n65312=>265,\n8451=>266,\n8457=>267,\n65129=>268,\n65130=>269,\n65131=>270,\n13269=>271,\n13212=>272,\n13213=>273,\n13214=>274,\n13262=>275,\n13217=>276,\n13198=>277,\n13199=>278,\n13252=>279,\n176=>280,\n20825=>281,\n58834=>281,\n20827=>282,\n58835=>282,\n20830=>283,\n58837=>283,\n20829=>284,\n58836=>284,\n20833=>285,\n20835=>286,\n21991=>287,\n29929=>288,\n58044=>288,\n31950=>289,\n58191=>289,\n9601=>290,\n9602=>291,\n9603=>292,\n9604=>293,\n9605=>294,\n9606=>295,\n9607=>296,\n9608=>297,\n9615=>298,\n9614=>299,\n9613=>300,\n9612=>301,\n9611=>302,\n9610=>303,\n9609=>304,\n9532=>305,\n9524=>306,\n9516=>307,\n9508=>308,\n9500=>309,\n9620=>310,\n9472=>311,\n9474=>312,\n9621=>313,\n9484=>314,\n9488=>315,\n9492=>316,\n9496=>317,\n9581=>318,\n9582=>319,\n9584=>320,\n9583=>321,\n9552=>322,\n9566=>323,\n9578=>324,\n9569=>325,\n9698=>326,\n9699=>327,\n9701=>328,\n9700=>329,\n9585=>330,\n9586=>331,\n9587=>332,\n65296=>333,\n65297=>334,\n65298=>335,\n65299=>336,\n65300=>337,\n65301=>338,\n65302=>339,\n65303=>340,\n65304=>341,\n65305=>342,\n8544=>343,\n8545=>344,\n8546=>345,\n8547=>346,\n8548=>347,\n8549=>348,\n8550=>349,\n8551=>350,\n8552=>351,\n8553=>352,\n12321=>353,\n12322=>354,\n12323=>355,\n12324=>356,\n12325=>357,\n12326=>358,\n12327=>359,\n12328=>360,\n12329=>361,\n12344=>362,\n21316=>363,\n57443=>363,\n12345=>363,\n12346=>364,\n65313=>365,\n65314=>366,\n65315=>367,\n65316=>368,\n65317=>369,\n65318=>370,\n65319=>371,\n65320=>372,\n65321=>373,\n65322=>374,\n65323=>375,\n65324=>376,\n65325=>377,\n65326=>378,\n65327=>379,\n65328=>380,\n65329=>381,\n65330=>382,\n65331=>383,\n65332=>384,\n65333=>385,\n65334=>386,\n65335=>387,\n65336=>388,\n65337=>389,\n65338=>390,\n65345=>391,\n65346=>392,\n65347=>393,\n65348=>394,\n65349=>395,\n65350=>396,\n65351=>397,\n65352=>398,\n65353=>399,\n65354=>400,\n65355=>401,\n65356=>402,\n65357=>403,\n65358=>404,\n65359=>405,\n65360=>406,\n65361=>407,\n65362=>408,\n65363=>409,\n65364=>410,\n65365=>411,\n65366=>412,\n65367=>413,\n65368=>414,\n65369=>415,\n65370=>416,\n913=>417,\n914=>418,\n915=>419,\n916=>420,\n917=>421,\n918=>422,\n919=>423,\n920=>424,\n921=>425,\n922=>426,\n923=>427,\n924=>428,\n925=>429,\n926=>430,\n927=>431,\n928=>432,\n929=>433,\n931=>434,\n932=>435,\n933=>436,\n934=>437,\n935=>438,\n936=>439,\n937=>440,\n945=>441,\n946=>442,\n947=>443,\n948=>444,\n949=>445,\n950=>446,\n951=>447,\n952=>448,\n953=>449,\n954=>450,\n955=>451,\n956=>452,\n957=>453,\n958=>454,\n959=>455,\n960=>456,\n961=>457,\n963=>458,\n964=>459,\n965=>460,\n966=>461,\n967=>462,\n968=>463,\n969=>464,\n12549=>465,\n12550=>466,\n12551=>467,\n12552=>468,\n12553=>469,\n12554=>470,\n12555=>471,\n12556=>472,\n12557=>473,\n12558=>474,\n12559=>475,\n12560=>476,\n12561=>477,\n12562=>478,\n12563=>479,\n12564=>480,\n12565=>481,\n12566=>482,\n12567=>483,\n12568=>484,\n12569=>485,\n12570=>486,\n12571=>487,\n12572=>488,\n12573=>489,\n12574=>490,\n12575=>491,\n12576=>492,\n12577=>493,\n12578=>494,\n12579=>495,\n12580=>496,\n12581=>497,\n12582=>498,\n12583=>499,\n12584=>500,\n12585=>501,\n729=>502,\n714=>503,\n711=>504,\n780=>504,\n715=>505,\n9312=>506,\n63153=>506,\n9313=>507,\n63154=>507,\n9314=>508,\n63155=>508,\n9315=>509,\n63156=>509,\n9316=>510,\n63157=>510,\n9317=>511,\n63158=>511,\n9318=>512,\n63159=>512,\n9319=>513,\n63160=>513,\n9320=>514,\n63161=>514,\n9321=>515,\n63162=>515,\n9332=>516,\n63163=>516,\n9333=>517,\n63164=>517,\n9334=>518,\n63165=>518,\n9335=>519,\n63166=>519,\n9336=>520,\n63167=>520,\n9337=>521,\n63168=>521,\n9338=>522,\n63169=>522,\n9339=>523,\n63170=>523,\n9340=>524,\n63171=>524,\n9341=>525,\n63172=>525,\n8560=>526,\n63173=>526,\n8561=>527,\n63174=>527,\n8562=>528,\n63175=>528,\n8563=>529,\n63176=>529,\n8564=>530,\n63177=>530,\n8565=>531,\n63178=>531,\n8566=>532,\n63179=>532,\n8567=>533,\n63180=>533,\n8568=>534,\n63181=>534,\n8569=>535,\n63182=>535,\n20008=>536,\n12033=>536,\n20022=>537,\n12034=>537,\n63183=>537,\n20031=>538,\n12035=>538,\n63184=>538,\n12037=>539,\n20101=>539,\n63185=>539,\n12039=>540,\n20128=>540,\n63186=>540,\n20866=>541,\n12044=>541,\n63187=>541,\n20886=>542,\n12045=>542,\n63188=>542,\n20907=>543,\n12046=>543,\n63189=>543,\n12051=>544,\n21241=>544,\n63190=>544,\n12054=>545,\n21304=>545,\n63191=>545,\n12057=>546,\n21353=>546,\n63192=>546,\n12059=>547,\n21430=>547,\n63193=>547,\n12065=>548,\n12066=>548,\n22786=>548,\n22794=>548,\n63194=>548,\n12071=>549,\n23424=>549,\n63195=>549,\n12078=>550,\n24027=>550,\n63196=>550,\n24186=>551,\n12083=>551,\n63197=>551,\n24191=>552,\n12084=>552,\n63198=>552,\n24308=>553,\n12085=>553,\n24400=>554,\n12089=>554,\n63200=>554,\n24417=>555,\n12090=>555,\n63201=>555,\n12097=>556,\n25908=>556,\n63202=>556,\n12102=>557,\n26080=>557,\n30098=>558,\n63204=>558,\n12135=>558,\n30326=>559,\n12136=>559,\n12193=>560,\n36789=>560,\n63206=>560,\n12202=>561,\n38582=>561,\n9216=>562,\n9217=>563,\n9218=>564,\n9219=>565,\n9220=>566,\n9221=>567,\n9222=>568,\n9223=>569,\n9224=>570,\n9225=>571,\n9226=>572,\n9227=>573,\n9228=>574,\n9229=>575,\n9230=>576,\n9231=>577,\n9232=>578,\n9233=>579,\n9234=>580,\n9235=>581,\n9236=>582,\n9237=>583,\n9238=>584,\n9239=>585,\n9240=>586,\n9241=>587,\n9242=>588,\n9243=>589,\n9244=>590,\n9245=>591,\n9246=>592,\n9247=>593,\n9249=>594,\n12032=>595,\n19968=>595,\n12036=>596,\n20057=>596,\n19969=>597,\n19971=>598,\n20035=>599,\n20061=>600,\n20102=>601,\n12038=>602,\n20108=>602,\n20154=>603,\n12040=>603,\n20799=>604,\n12041=>604,\n20837=>605,\n12042=>605,\n20843=>606,\n12043=>606,\n12047=>607,\n20960=>607,\n12049=>608,\n20992=>608,\n20993=>609,\n12050=>610,\n21147=>610,\n12052=>611,\n21269=>611,\n21313=>612,\n12055=>612,\n21340=>613,\n12056=>613,\n12060=>614,\n21448=>614,\n19977=>615,\n19979=>616,\n19976=>617,\n19978=>618,\n20011=>619,\n20024=>620,\n20961=>621,\n20037=>622,\n20040=>623,\n20063=>624,\n20062=>625,\n20110=>626,\n20129=>627,\n20800=>628,\n64012=>628,\n20995=>629,\n21242=>630,\n21315=>631,\n21449=>632,\n12061=>633,\n21475=>633,\n22303=>634,\n12063=>634,\n22763=>635,\n12064=>635,\n22805=>636,\n12067=>636,\n22823=>637,\n12068=>637,\n22899=>638,\n12069=>638,\n12070=>639,\n23376=>639,\n23377=>640,\n23379=>641,\n23544=>642,\n12072=>642,\n23567=>643,\n12073=>643,\n23586=>644,\n12074=>644,\n23608=>645,\n12075=>645,\n12077=>646,\n23665=>646,\n24029=>647,\n24037=>648,\n12079=>648,\n12080=>649,\n24049=>649,\n24050=>650,\n24051=>651,\n24062=>652,\n12081=>652,\n24178=>653,\n12082=>653,\n24318=>654,\n12086=>654,\n24331=>655,\n12087=>655,\n24339=>656,\n12088=>656,\n25165=>657,\n19985=>658,\n19984=>659,\n19981=>660,\n20013=>661,\n20016=>662,\n20025=>663,\n20043=>664,\n23609=>665,\n20104=>666,\n20113=>667,\n20117=>668,\n20114=>669,\n20116=>670,\n20130=>671,\n20161=>672,\n20160=>673,\n20163=>674,\n20166=>675,\n20167=>676,\n20173=>677,\n20170=>678,\n20171=>679,\n20164=>680,\n20803=>681,\n20801=>682,\n20839=>683,\n20845=>684,\n20846=>685,\n20844=>686,\n20887=>687,\n20982=>688,\n20998=>689,\n20999=>690,\n21000=>691,\n21243=>692,\n21246=>693,\n21247=>694,\n21270=>695,\n21305=>696,\n21320=>697,\n21319=>698,\n21317=>699,\n21342=>700,\n21380=>701,\n21451=>702,\n21450=>703,\n21453=>704,\n22764=>705,\n22825=>706,\n22827=>707,\n22826=>708,\n22829=>709,\n23380=>710,\n23569=>711,\n23588=>712,\n23610=>713,\n23663=>714,\n24052=>715,\n24187=>716,\n24319=>717,\n24340=>718,\n24341=>719,\n24515=>720,\n12092=>720,\n25096=>721,\n12093=>721,\n25142=>722,\n12094=>722,\n25163=>723,\n12095=>723,\n25166=>724,\n12096=>725,\n25903=>725,\n25991=>726,\n12098=>726,\n26007=>727,\n12099=>727,\n26020=>728,\n12100=>728,\n26041=>729,\n12101=>729,\n26085=>730,\n12103=>730,\n26352=>731,\n12104=>731,\n26376=>732,\n12105=>732,\n26408=>733,\n12106=>733,\n27424=>734,\n12107=>734,\n27490=>735,\n12108=>735,\n27513=>736,\n12109=>736,\n27595=>737,\n12111=>737,\n27604=>738,\n12112=>738,\n27611=>739,\n12113=>739,\n27663=>740,\n12114=>740,\n27700=>741,\n12116=>741,\n28779=>742,\n12117=>742,\n29226=>743,\n12118=>743,\n29238=>744,\n12119=>744,\n29243=>745,\n12120=>745,\n29255=>746,\n12122=>746,\n29273=>747,\n12123=>747,\n29275=>748,\n12124=>748,\n29356=>749,\n12125=>749,\n29579=>750,\n19993=>751,\n19990=>752,\n19989=>753,\n19988=>754,\n19992=>755,\n20027=>756,\n20045=>757,\n20047=>758,\n20046=>759,\n20197=>760,\n20184=>761,\n20180=>762,\n20181=>763,\n20182=>764,\n20183=>765,\n20195=>766,\n20196=>767,\n20185=>768,\n20190=>769,\n20805=>770,\n20804=>771,\n20873=>772,\n20874=>773,\n20908=>774,\n20985=>775,\n20986=>776,\n20984=>777,\n21002=>778,\n21152=>779,\n21151=>780,\n57435=>781,\n21253=>781,\n21254=>782,\n21271=>783,\n21277=>784,\n20191=>785,\n21322=>786,\n21321=>787,\n21345=>788,\n21344=>789,\n21359=>790,\n21358=>791,\n21435=>792,\n21487=>793,\n21476=>794,\n21491=>795,\n21484=>796,\n21486=>797,\n21481=>798,\n21480=>799,\n21500=>800,\n21496=>801,\n21493=>802,\n21483=>803,\n21478=>804,\n21482=>805,\n21490=>806,\n21489=>807,\n21488=>808,\n21477=>809,\n21485=>810,\n21499=>811,\n22235=>812,\n22234=>813,\n22806=>814,\n22830=>815,\n22833=>816,\n22900=>817,\n22902=>818,\n23381=>819,\n23427=>820,\n23612=>821,\n24040=>822,\n24039=>823,\n24038=>824,\n24066=>825,\n24067=>826,\n24179=>827,\n24188=>828,\n24321=>829,\n24344=>830,\n24343=>831,\n24517=>832,\n25098=>833,\n25171=>834,\n25172=>835,\n25170=>836,\n25169=>837,\n26021=>838,\n26086=>839,\n26414=>840,\n26412=>841,\n26410=>842,\n26411=>843,\n26413=>844,\n27491=>845,\n27597=>846,\n27665=>847,\n27664=>848,\n27704=>849,\n27713=>850,\n27712=>851,\n27710=>852,\n29359=>853,\n29572=>854,\n12126=>854,\n29577=>855,\n12127=>855,\n29916=>856,\n12128=>856,\n29926=>857,\n12129=>857,\n29976=>858,\n12130=>858,\n29983=>859,\n12131=>859,\n12132=>860,\n29992=>860,\n29993=>861,\n12133=>862,\n30000=>862,\n30001=>863,\n30002=>864,\n30003=>865,\n12134=>866,\n30091=>866,\n30333=>867,\n12137=>867,\n30382=>868,\n12138=>868,\n30399=>869,\n12139=>869,\n30446=>870,\n12140=>870,\n30683=>871,\n12141=>871,\n30690=>872,\n12142=>872,\n30707=>873,\n12143=>873,\n31034=>874,\n12144=>874,\n31166=>875,\n12146=>875,\n31348=>876,\n12147=>876,\n31435=>877,\n12148=>877,\n19998=>878,\n19999=>879,\n20050=>880,\n20051=>881,\n20073=>882,\n20121=>883,\n20132=>884,\n20134=>885,\n20133=>886,\n20223=>887,\n20233=>888,\n20249=>889,\n20234=>890,\n20245=>891,\n20237=>892,\n20240=>893,\n20241=>894,\n20239=>895,\n20210=>896,\n20214=>897,\n20219=>898,\n20208=>899,\n20211=>900,\n20221=>901,\n20225=>902,\n20235=>903,\n20809=>904,\n20807=>905,\n20806=>906,\n20808=>907,\n20840=>908,\n20849=>909,\n20877=>910,\n20912=>911,\n21015=>912,\n21009=>913,\n21010=>914,\n21006=>915,\n21014=>916,\n21155=>917,\n21256=>918,\n21281=>919,\n21280=>920,\n21360=>921,\n21361=>922,\n21513=>923,\n21519=>924,\n21516=>925,\n21514=>926,\n21520=>927,\n21505=>928,\n21515=>929,\n21508=>930,\n21521=>931,\n21517=>932,\n21512=>933,\n21507=>934,\n21518=>935,\n21510=>936,\n21522=>937,\n22240=>938,\n22238=>939,\n22237=>940,\n22323=>941,\n22320=>942,\n22312=>943,\n22317=>944,\n22316=>945,\n22319=>946,\n22313=>947,\n22809=>948,\n22810=>949,\n22839=>950,\n22840=>951,\n22916=>952,\n22904=>953,\n22915=>954,\n22909=>955,\n22905=>956,\n22914=>957,\n22913=>958,\n23383=>959,\n23384=>960,\n23431=>961,\n23432=>962,\n23429=>963,\n23433=>964,\n23546=>965,\n23574=>966,\n23673=>967,\n24030=>968,\n24070=>969,\n24182=>970,\n24180=>971,\n24335=>972,\n24347=>973,\n24537=>974,\n24534=>975,\n25102=>976,\n25100=>977,\n25101=>978,\n25104=>979,\n25187=>980,\n25179=>981,\n25176=>982,\n25910=>983,\n26089=>984,\n26088=>985,\n26092=>986,\n26093=>987,\n26354=>988,\n26355=>989,\n26377=>990,\n26429=>991,\n26420=>992,\n26417=>993,\n26421=>994,\n27425=>995,\n27492=>996,\n27515=>997,\n27670=>998,\n27741=>999,\n27735=>1000,\n27737=>1001,\n27743=>1002,\n27744=>1003,\n27728=>1004,\n27733=>1005,\n27745=>1006,\n27739=>1007,\n27725=>1008,\n27726=>1009,\n28784=>1010,\n29279=>1011,\n29277=>1012,\n30334=>1013,\n31481=>1014,\n12149=>1014,\n31859=>1015,\n12150=>1015,\n31992=>1016,\n12151=>1016,\n32566=>1017,\n12152=>1017,\n32650=>1018,\n12154=>1018,\n32701=>1019,\n12155=>1019,\n32769=>1020,\n12156=>1020,\n32771=>1021,\n32780=>1022,\n12157=>1022,\n32786=>1023,\n12158=>1023,\n32819=>1024,\n12159=>1024,\n32895=>1025,\n12160=>1025,\n32905=>1026,\n12161=>1026,\n32907=>1027,\n32908=>1028,\n33251=>1029,\n12162=>1029,\n33258=>1030,\n12163=>1030,\n33267=>1031,\n12164=>1031,\n33276=>1032,\n12165=>1032,\n33292=>1033,\n12166=>1033,\n33307=>1034,\n12167=>1034,\n33311=>1035,\n12168=>1035,\n33390=>1036,\n12169=>1036,\n33394=>1037,\n12170=>1037,\n33406=>1038,\n34411=>1039,\n12173=>1039,\n34880=>1040,\n12174=>1040,\n34892=>1041,\n12175=>1041,\n34915=>1042,\n12176=>1042,\n35199=>1043,\n38433=>1044,\n20018=>1045,\n20136=>1046,\n20301=>1047,\n20303=>1048,\n20295=>1049,\n20311=>1050,\n20318=>1051,\n20276=>1052,\n20315=>1053,\n20309=>1054,\n20272=>1055,\n20304=>1056,\n20305=>1057,\n20285=>1058,\n20282=>1059,\n20280=>1060,\n20291=>1061,\n20308=>1062,\n20284=>1063,\n20294=>1064,\n20323=>1065,\n20316=>1066,\n20320=>1067,\n20271=>1068,\n20302=>1069,\n20278=>1070,\n20313=>1071,\n20317=>1072,\n20296=>1073,\n20314=>1074,\n20812=>1075,\n20811=>1076,\n20813=>1077,\n20853=>1078,\n20918=>1079,\n20919=>1080,\n21029=>1081,\n21028=>1082,\n21033=>1083,\n21034=>1084,\n21032=>1085,\n21163=>1086,\n21161=>1087,\n21162=>1088,\n21164=>1089,\n21283=>1090,\n21363=>1091,\n21365=>1092,\n21533=>1093,\n21549=>1094,\n21534=>1095,\n21566=>1096,\n21542=>1097,\n21582=>1098,\n21543=>1099,\n21574=>1100,\n21571=>1101,\n21555=>1102,\n21576=>1103,\n21570=>1104,\n21531=>1105,\n21545=>1106,\n21578=>1107,\n21561=>1108,\n21563=>1109,\n21560=>1110,\n21550=>1111,\n21557=>1112,\n21558=>1113,\n21536=>1114,\n21564=>1115,\n21568=>1116,\n21553=>1117,\n21547=>1118,\n21535=>1119,\n21548=>1120,\n22250=>1121,\n22256=>1122,\n22244=>1123,\n22251=>1124,\n22346=>1125,\n22353=>1126,\n22336=>1127,\n22349=>1128,\n22343=>1129,\n22350=>1130,\n22334=>1131,\n22352=>1132,\n22351=>1133,\n22331=>1134,\n22767=>1135,\n22846=>1136,\n22941=>1137,\n22930=>1138,\n22952=>1139,\n22942=>1140,\n22947=>1141,\n22937=>1142,\n22934=>1143,\n22925=>1144,\n22948=>1145,\n22931=>1146,\n22922=>1147,\n22949=>1148,\n23389=>1149,\n23388=>1150,\n23386=>1151,\n23387=>1152,\n23436=>1153,\n23435=>1154,\n23439=>1155,\n23596=>1156,\n23616=>1157,\n23617=>1158,\n23615=>1159,\n23614=>1160,\n23696=>1161,\n23697=>1162,\n23700=>1163,\n23692=>1164,\n24043=>1165,\n24076=>1166,\n24207=>1167,\n24199=>1168,\n24202=>1169,\n24311=>1170,\n24324=>1171,\n24351=>1172,\n24420=>1173,\n24418=>1174,\n24439=>1175,\n24441=>1176,\n24536=>1177,\n24524=>1178,\n24535=>1179,\n24525=>1180,\n24561=>1181,\n24555=>1182,\n24568=>1183,\n24554=>1184,\n25106=>1185,\n25105=>1186,\n25220=>1187,\n25239=>1188,\n25238=>1189,\n25216=>1190,\n25206=>1191,\n25225=>1192,\n25197=>1193,\n25226=>1194,\n25212=>1195,\n25214=>1196,\n25209=>1197,\n25203=>1198,\n25234=>1199,\n25199=>1200,\n25240=>1201,\n25198=>1202,\n25237=>1203,\n25235=>1204,\n25233=>1205,\n25222=>1206,\n25913=>1207,\n25915=>1208,\n25912=>1209,\n26097=>1210,\n26356=>1211,\n26463=>1212,\n26446=>1213,\n26447=>1214,\n26448=>1215,\n26449=>1216,\n26460=>1217,\n26454=>1218,\n26462=>1219,\n57801=>1219,\n26441=>1220,\n26438=>1221,\n26464=>1222,\n26451=>1223,\n26455=>1224,\n27493=>1225,\n27599=>1226,\n27714=>1227,\n27742=>1228,\n27801=>1229,\n27777=>1230,\n27784=>1231,\n27785=>1232,\n27781=>1233,\n27803=>1234,\n27754=>1235,\n27770=>1236,\n27792=>1237,\n27760=>1238,\n27788=>1239,\n27752=>1240,\n27798=>1241,\n27794=>1242,\n27773=>1243,\n27779=>1244,\n27762=>1245,\n27774=>1246,\n27764=>1247,\n27782=>1248,\n27766=>1249,\n27789=>1250,\n27796=>1251,\n27800=>1252,\n27778=>1253,\n28790=>1254,\n28796=>1255,\n28797=>1256,\n28792=>1257,\n29282=>1258,\n29281=>1259,\n29280=>1260,\n29380=>1261,\n29378=>1262,\n29590=>1263,\n29996=>1264,\n29995=>1265,\n30007=>1266,\n30008=>1267,\n30338=>1268,\n30447=>1269,\n30691=>1270,\n31169=>1271,\n31168=>1272,\n31167=>1273,\n31350=>1274,\n31995=>1275,\n32597=>1276,\n32918=>1277,\n32915=>1278,\n32925=>1279,\n32920=>1280,\n32923=>1281,\n32922=>1282,\n32946=>1283,\n33391=>1284,\n33426=>1285,\n33419=>1286,\n33421=>1287,\n35211=>1288,\n12178=>1288,\n35282=>1289,\n12179=>1289,\n35328=>1290,\n12180=>1290,\n35895=>1291,\n12181=>1291,\n35910=>1292,\n12182=>1292,\n35925=>1293,\n12183=>1293,\n35997=>1294,\n12185=>1294,\n36196=>1295,\n12186=>1295,\n36208=>1296,\n12187=>1296,\n36275=>1297,\n12188=>1297,\n36523=>1298,\n12189=>1298,\n36554=>1299,\n12190=>1299,\n36763=>1300,\n12191=>1300,\n36784=>1301,\n12192=>1301,\n36802=>1302,\n36806=>1303,\n36805=>1304,\n36804=>1305,\n24033=>1306,\n12194=>1307,\n37009=>1307,\n37026=>1308,\n37034=>1309,\n37030=>1310,\n37027=>1311,\n37193=>1312,\n12195=>1312,\n37318=>1313,\n12196=>1313,\n37324=>1314,\n12197=>1314,\n38450=>1315,\n38446=>1316,\n38449=>1317,\n38442=>1318,\n38444=>1319,\n20006=>1320,\n20054=>1321,\n20083=>1322,\n20107=>1323,\n20123=>1324,\n20126=>1325,\n20139=>1326,\n20140=>1327,\n20335=>1328,\n20381=>1329,\n20365=>1330,\n20339=>1331,\n20351=>1332,\n20332=>1333,\n20379=>1334,\n20363=>1335,\n20358=>1336,\n20355=>1337,\n20336=>1338,\n20341=>1339,\n20360=>1340,\n20329=>1341,\n20347=>1342,\n20374=>1343,\n20350=>1344,\n20367=>1345,\n20369=>1346,\n20346=>1347,\n20820=>1348,\n20818=>1349,\n20821=>1350,\n20841=>1351,\n20855=>1352,\n20854=>1353,\n20856=>1354,\n20925=>1355,\n20989=>1356,\n21051=>1357,\n21048=>1358,\n21047=>1359,\n21050=>1360,\n21040=>1361,\n21038=>1362,\n21046=>1363,\n21057=>1364,\n21182=>1365,\n21179=>1366,\n21330=>1367,\n21332=>1368,\n21331=>1369,\n21329=>1370,\n21350=>1371,\n21367=>1372,\n21368=>1373,\n21369=>1374,\n21462=>1375,\n21460=>1376,\n21463=>1377,\n21619=>1378,\n21621=>1379,\n21654=>1380,\n21624=>1381,\n21653=>1382,\n21632=>1383,\n21627=>1384,\n21623=>1385,\n21636=>1386,\n21650=>1387,\n21638=>1388,\n21628=>1389,\n21648=>1390,\n21617=>1391,\n21622=>1392,\n21644=>1393,\n21658=>1394,\n21602=>1395,\n21608=>1396,\n21643=>1397,\n21629=>1398,\n21646=>1399,\n22266=>1400,\n22403=>1401,\n22391=>1402,\n22378=>1403,\n22377=>1404,\n22369=>1405,\n22374=>1406,\n22372=>1407,\n22396=>1408,\n22812=>1409,\n22857=>1410,\n22855=>1411,\n22856=>1412,\n22852=>1413,\n22868=>1414,\n22974=>1415,\n22971=>1416,\n22996=>1417,\n22969=>1418,\n22958=>1419,\n22993=>1420,\n22982=>1421,\n22992=>1422,\n22989=>1423,\n22987=>1424,\n22995=>1425,\n22986=>1426,\n22959=>1427,\n22963=>1428,\n22994=>1429,\n22981=>1430,\n23391=>1431,\n23396=>1432,\n23395=>1433,\n23447=>1434,\n23450=>1435,\n23448=>1436,\n23452=>1437,\n23449=>1438,\n23451=>1439,\n23578=>1440,\n23624=>1441,\n23621=>1442,\n23622=>1443,\n23735=>1444,\n23713=>1445,\n23736=>1446,\n23721=>1447,\n23723=>1448,\n23729=>1449,\n23731=>1450,\n24088=>1451,\n24090=>1452,\n24086=>1453,\n24085=>1454,\n24091=>1455,\n24081=>1456,\n24184=>1457,\n24218=>1458,\n24215=>1459,\n24220=>1460,\n24213=>1461,\n24214=>1462,\n24310=>1463,\n24358=>1464,\n24359=>1465,\n24361=>1466,\n24448=>1467,\n24449=>1468,\n24447=>1469,\n24444=>1470,\n24541=>1471,\n24544=>1472,\n24573=>1473,\n24565=>1474,\n24575=>1475,\n24591=>1476,\n24596=>1477,\n24623=>1478,\n24629=>1479,\n24598=>1480,\n24618=>1481,\n24597=>1482,\n24609=>1483,\n24615=>1484,\n24617=>1485,\n24619=>1486,\n24603=>1487,\n25110=>1488,\n25109=>1489,\n25151=>1490,\n25150=>1491,\n25152=>1492,\n25215=>1493,\n25289=>1494,\n25292=>1495,\n25284=>1496,\n25279=>1497,\n25282=>1498,\n25273=>1499,\n25298=>1500,\n25307=>1501,\n25259=>1502,\n25299=>1503,\n25300=>1504,\n25291=>1505,\n25288=>1506,\n25256=>1507,\n25277=>1508,\n25276=>1509,\n25296=>1510,\n60582=>1510,\n25305=>1511,\n25287=>1512,\n25293=>1513,\n25269=>1514,\n25306=>1515,\n25265=>1516,\n25304=>1517,\n25302=>1518,\n25303=>1519,\n25286=>1520,\n25260=>1521,\n25294=>1522,\n61010=>1522,\n25918=>1523,\n26023=>1524,\n26044=>1525,\n26106=>1526,\n26132=>1527,\n26131=>1528,\n26124=>1529,\n26118=>1530,\n26114=>1531,\n26126=>1532,\n26112=>1533,\n26127=>1534,\n26133=>1535,\n26122=>1536,\n26119=>1537,\n26381=>1538,\n26379=>1539,\n26477=>1540,\n26507=>1541,\n26517=>1542,\n26481=>1543,\n26524=>1544,\n26483=>1545,\n26487=>1546,\n26503=>1547,\n26525=>1548,\n26519=>1549,\n26479=>1550,\n26480=>1551,\n26495=>1552,\n26505=>1553,\n26494=>1554,\n26512=>1555,\n26485=>1556,\n26522=>1557,\n26515=>1558,\n26492=>1559,\n26474=>1560,\n26482=>1561,\n27427=>1562,\n27494=>1563,\n27495=>1564,\n27519=>1565,\n27667=>1566,\n27675=>1567,\n27875=>1568,\n27880=>1569,\n27891=>1570,\n27825=>1571,\n27852=>1572,\n27877=>1573,\n27827=>1574,\n27837=>1575,\n27838=>1576,\n27836=>1577,\n27874=>1578,\n27819=>1579,\n27861=>1580,\n27859=>1581,\n27832=>1582,\n27844=>1583,\n27833=>1584,\n27841=>1585,\n27822=>1586,\n27863=>1587,\n27845=>1588,\n27889=>1589,\n27839=>1590,\n27835=>1591,\n27873=>1592,\n27867=>1593,\n27850=>1594,\n27820=>1595,\n27887=>1596,\n27868=>1597,\n27862=>1598,\n27872=>1599,\n28821=>1600,\n28814=>1601,\n28818=>1602,\n28810=>1603,\n28825=>1604,\n29228=>1605,\n29229=>1606,\n29240=>1607,\n29256=>1608,\n29287=>1609,\n29289=>1610,\n29376=>1611,\n29390=>1612,\n29401=>1613,\n29399=>1614,\n29392=>1615,\n29609=>1616,\n29608=>1617,\n29599=>1618,\n29611=>1619,\n29605=>1620,\n30013=>1621,\n30109=>1622,\n30105=>1623,\n30106=>1624,\n30340=>1625,\n30402=>1626,\n30450=>1627,\n30452=>1628,\n30693=>1629,\n30717=>1630,\n31038=>1631,\n31040=>1632,\n31041=>1633,\n31177=>1634,\n31176=>1635,\n31354=>1636,\n31353=>1637,\n31482=>1638,\n31998=>1639,\n32596=>1640,\n32652=>1641,\n32651=>1642,\n32773=>1643,\n58236=>1643,\n32954=>1644,\n32933=>1645,\n32930=>1646,\n32945=>1647,\n32929=>1648,\n32939=>1649,\n32937=>1650,\n32948=>1651,\n32938=>1652,\n32943=>1653,\n33253=>1654,\n33278=>1655,\n33293=>1656,\n33459=>1657,\n33437=>1658,\n33433=>1659,\n33453=>1660,\n33469=>1661,\n33439=>1662,\n33465=>1663,\n33457=>1664,\n33452=>1665,\n33445=>1666,\n33455=>1667,\n33464=>1668,\n33443=>1669,\n33456=>1670,\n33470=>1671,\n33463=>1672,\n34382=>1673,\n34417=>1674,\n21021=>1675,\n34920=>1676,\n36555=>1677,\n36814=>1678,\n36820=>1679,\n36817=>1680,\n37045=>1681,\n37048=>1682,\n37041=>1683,\n37046=>1684,\n37319=>1685,\n37329=>1686,\n12198=>1686,\n38263=>1687,\n12199=>1687,\n38272=>1688,\n12200=>1688,\n38428=>1689,\n12201=>1689,\n38464=>1690,\n38463=>1691,\n38459=>1692,\n38468=>1693,\n38466=>1694,\n38585=>1695,\n12203=>1695,\n38632=>1696,\n12204=>1696,\n38738=>1697,\n12206=>1698,\n38750=>1698,\n20127=>1699,\n20141=>1700,\n20142=>1701,\n20449=>1702,\n20405=>1703,\n20399=>1704,\n20415=>1705,\n20448=>1706,\n20433=>1707,\n20431=>1708,\n20445=>1709,\n20419=>1710,\n20406=>1711,\n20440=>1712,\n20447=>1713,\n20426=>1714,\n20439=>1715,\n20398=>1716,\n20432=>1717,\n20420=>1718,\n20418=>1719,\n20442=>1720,\n20430=>1721,\n20446=>1722,\n20407=>1723,\n20823=>1724,\n20882=>1725,\n20881=>1726,\n20896=>1727,\n21070=>1728,\n21059=>1729,\n21066=>1730,\n21069=>1731,\n21068=>1732,\n21067=>1733,\n21063=>1734,\n21191=>1735,\n21193=>1736,\n21187=>1737,\n21185=>1738,\n21261=>1739,\n21335=>1740,\n21371=>1741,\n21402=>1742,\n21467=>1743,\n21676=>1744,\n21696=>1745,\n21672=>1746,\n21710=>1747,\n21705=>1748,\n21688=>1749,\n21670=>1750,\n21683=>1751,\n21703=>1752,\n21698=>1753,\n21693=>1754,\n21674=>1755,\n21697=>1756,\n21700=>1757,\n21704=>1758,\n21679=>1759,\n21675=>1760,\n21681=>1761,\n21691=>1762,\n21673=>1763,\n21671=>1764,\n21695=>1765,\n22271=>1766,\n22402=>1767,\n22411=>1768,\n22432=>1769,\n22435=>1770,\n22434=>1771,\n22478=>1772,\n22446=>1773,\n22419=>1774,\n22869=>1775,\n22865=>1776,\n22863=>1777,\n22862=>1778,\n22864=>1779,\n23004=>1780,\n23000=>1781,\n23039=>1782,\n23011=>1783,\n23016=>1784,\n23043=>1785,\n23013=>1786,\n23018=>1787,\n23002=>1788,\n23014=>1789,\n23041=>1790,\n23035=>1791,\n23401=>1792,\n23459=>1793,\n23462=>1794,\n23460=>1795,\n23458=>1796,\n23461=>1797,\n23553=>1798,\n23630=>1799,\n23631=>1800,\n23629=>1801,\n23627=>1802,\n23769=>1803,\n23762=>1804,\n24055=>1805,\n24093=>1806,\n24101=>1807,\n24095=>1808,\n24189=>1809,\n24224=>1810,\n24230=>1811,\n24314=>1812,\n24328=>1813,\n24365=>1814,\n24421=>1815,\n24456=>1816,\n24453=>1817,\n24458=>1818,\n24459=>1819,\n24455=>1820,\n24460=>1821,\n24457=>1822,\n24594=>1823,\n24605=>1824,\n24608=>1825,\n24613=>1826,\n24590=>1827,\n24616=>1828,\n24653=>1829,\n24688=>1830,\n24680=>1831,\n24674=>1832,\n60712=>1832,\n24646=>1833,\n24643=>1834,\n24684=>1835,\n24683=>1836,\n24682=>1837,\n24676=>1838,\n25153=>1839,\n25308=>1840,\n25366=>1841,\n25353=>1842,\n25340=>1843,\n25325=>1844,\n25345=>1845,\n25326=>1846,\n25341=>1847,\n25351=>1848,\n25329=>1849,\n25335=>1850,\n25327=>1851,\n25324=>1852,\n25342=>1853,\n25332=>1854,\n25361=>1855,\n25346=>1856,\n25919=>1857,\n25925=>1858,\n26027=>1859,\n26045=>1860,\n26082=>1861,\n26149=>1862,\n26157=>1863,\n26144=>1864,\n26151=>1865,\n26159=>1866,\n26143=>1867,\n26152=>1868,\n26161=>1869,\n26148=>1870,\n26359=>1871,\n26623=>1872,\n26579=>1873,\n26609=>1874,\n26580=>1875,\n26576=>1876,\n26604=>1877,\n26550=>1878,\n26543=>1879,\n26613=>1880,\n26601=>1881,\n26607=>1882,\n26564=>1883,\n26577=>1884,\n26548=>1885,\n26586=>1886,\n26597=>1887,\n26552=>1888,\n26575=>1889,\n26590=>1890,\n26611=>1891,\n26544=>1892,\n26585=>1893,\n26594=>1894,\n26589=>1895,\n26578=>1896,\n27498=>1897,\n27523=>1898,\n27526=>1899,\n27573=>1900,\n27602=>1901,\n27607=>1902,\n27679=>1903,\n27849=>1904,\n27915=>1905,\n27954=>1906,\n27946=>1907,\n27969=>1908,\n27941=>1909,\n27916=>1910,\n27953=>1911,\n27934=>1912,\n27927=>1913,\n27963=>1914,\n27965=>1915,\n27966=>1916,\n27958=>1917,\n27931=>1918,\n27893=>1919,\n27961=>1920,\n27943=>1921,\n27960=>1922,\n27945=>1923,\n27950=>1924,\n27957=>1925,\n27918=>1926,\n27947=>1927,\n28843=>1928,\n28858=>1929,\n28851=>1930,\n28844=>1931,\n28847=>1932,\n28845=>1933,\n28856=>1934,\n28846=>1935,\n28836=>1936,\n29232=>1937,\n29298=>1938,\n29295=>1939,\n29300=>1940,\n29417=>1941,\n29408=>1942,\n29409=>1943,\n29623=>1944,\n29642=>1945,\n29627=>1946,\n29618=>1947,\n29645=>1948,\n29632=>1949,\n29619=>1950,\n29978=>1951,\n29997=>1952,\n30031=>1953,\n30028=>1954,\n30030=>1955,\n30027=>1956,\n30123=>1957,\n30116=>1958,\n30117=>1959,\n30114=>1960,\n30115=>1961,\n30328=>1962,\n30342=>1963,\n30343=>1964,\n30344=>1965,\n30408=>1966,\n30406=>1967,\n30403=>1968,\n30405=>1969,\n30465=>1970,\n30457=>1971,\n30456=>1972,\n30473=>1973,\n30475=>1974,\n30462=>1975,\n30460=>1976,\n30471=>1977,\n30684=>1978,\n30722=>1979,\n30740=>1980,\n30732=>1981,\n30733=>1982,\n31046=>1983,\n31049=>1984,\n31048=>1985,\n31047=>1986,\n31161=>1987,\n31162=>1988,\n31185=>1989,\n31186=>1990,\n31179=>1991,\n31359=>1992,\n31361=>1993,\n31487=>1994,\n31485=>1995,\n31869=>1996,\n32002=>1997,\n32005=>1998,\n32000=>1999,\n32009=>2000,\n32007=>2001,\n32004=>2002,\n32006=>2003,\n32568=>2004,\n32654=>2005,\n32703=>2006,\n32784=>2007,\n32781=>2008,\n32785=>2009,\n32822=>2010,\n32982=>2011,\n32997=>2012,\n32986=>2013,\n32963=>2014,\n32964=>2015,\n32972=>2016,\n32993=>2017,\n32987=>2018,\n32974=>2019,\n32990=>2020,\n32996=>2021,\n32989=>2022,\n33268=>2023,\n33314=>2024,\n33511=>2025,\n33539=>2026,\n33541=>2027,\n33507=>2028,\n33499=>2029,\n33510=>2030,\n33540=>2031,\n33509=>2032,\n33538=>2033,\n33545=>2034,\n33490=>2035,\n33495=>2036,\n33521=>2037,\n33537=>2038,\n33500=>2039,\n33492=>2040,\n33489=>2041,\n33502=>2042,\n33491=>2043,\n33503=>2044,\n33519=>2045,\n33542=>2046,\n34384=>2047,\n34425=>2048,\n34427=>2049,\n34426=>2050,\n34893=>2051,\n34923=>2052,\n35201=>2053,\n35284=>2054,\n35336=>2055,\n35330=>2056,\n35331=>2057,\n35998=>2058,\n36000=>2059,\n36212=>2060,\n36211=>2061,\n36276=>2062,\n36557=>2063,\n36556=>2064,\n36848=>2065,\n36838=>2066,\n36834=>2067,\n36842=>2068,\n36837=>2069,\n36845=>2070,\n36843=>2071,\n36836=>2072,\n36840=>2073,\n37066=>2074,\n37070=>2075,\n37057=>2076,\n37059=>2077,\n37195=>2078,\n37194=>2079,\n37325=>2080,\n38274=>2081,\n38480=>2082,\n38475=>2083,\n38476=>2084,\n38477=>2085,\n38754=>2086,\n12207=>2086,\n38761=>2087,\n12208=>2087,\n38859=>2088,\n12209=>2088,\n38893=>2089,\n12210=>2089,\n38899=>2090,\n12211=>2090,\n38913=>2091,\n12212=>2091,\n39080=>2092,\n12213=>2092,\n39131=>2093,\n12214=>2093,\n39135=>2094,\n12215=>2094,\n39318=>2095,\n12216=>2095,\n39321=>2096,\n12217=>2096,\n20056=>2097,\n20147=>2098,\n20492=>2099,\n20493=>2100,\n20515=>2101,\n20463=>2102,\n20518=>2103,\n20517=>2104,\n20472=>2105,\n20521=>2106,\n57375=>2106,\n20502=>2107,\n20486=>2108,\n20540=>2109,\n20511=>2110,\n20506=>2111,\n20498=>2112,\n20497=>2113,\n20474=>2114,\n20480=>2115,\n20500=>2116,\n20520=>2117,\n20465=>2118,\n20513=>2119,\n20491=>2120,\n20505=>2121,\n20504=>2122,\n20467=>2123,\n20462=>2124,\n20525=>2125,\n20522=>2126,\n20478=>2127,\n20523=>2128,\n20489=>2129,\n20860=>2130,\n20900=>2131,\n20901=>2132,\n20898=>2133,\n20941=>2134,\n20940=>2135,\n20934=>2136,\n20939=>2137,\n21078=>2138,\n21084=>2139,\n21076=>2140,\n21083=>2141,\n21085=>2142,\n21290=>2143,\n21375=>2144,\n57459=>2144,\n21407=>2145,\n21405=>2146,\n21471=>2147,\n21736=>2148,\n21776=>2149,\n21761=>2150,\n21815=>2151,\n21756=>2152,\n21733=>2153,\n21746=>2154,\n21766=>2155,\n21754=>2156,\n21780=>2157,\n21737=>2158,\n21741=>2159,\n21729=>2160,\n21769=>2161,\n21742=>2162,\n21738=>2163,\n21734=>2164,\n21799=>2165,\n21767=>2166,\n21757=>2167,\n21775=>2168,\n22275=>2169,\n22276=>2170,\n22466=>2171,\n22484=>2172,\n22475=>2173,\n22467=>2174,\n22537=>2175,\n22799=>2176,\n22871=>2177,\n22872=>2178,\n22874=>2179,\n23057=>2180,\n23064=>2181,\n23068=>2182,\n23071=>2183,\n23067=>2184,\n23059=>2185,\n23020=>2186,\n23072=>2187,\n23075=>2188,\n23081=>2189,\n23077=>2190,\n23052=>2191,\n23049=>2192,\n23403=>2193,\n23640=>2194,\n23472=>2195,\n23475=>2196,\n23478=>2197,\n23476=>2198,\n23470=>2199,\n23477=>2200,\n23481=>2201,\n23480=>2202,\n23556=>2203,\n23633=>2204,\n23637=>2205,\n23632=>2206,\n23789=>2207,\n23805=>2208,\n23803=>2209,\n23786=>2210,\n23784=>2211,\n23792=>2212,\n23798=>2213,\n23809=>2214,\n23796=>2215,\n24046=>2216,\n24109=>2217,\n24107=>2218,\n24235=>2219,\n24237=>2220,\n24231=>2221,\n24369=>2222,\n24466=>2223,\n24465=>2224,\n24464=>2225,\n24665=>2226,\n24675=>2227,\n24677=>2228,\n24656=>2229,\n24661=>2230,\n24685=>2231,\n24681=>2232,\n24687=>2233,\n24708=>2234,\n24735=>2235,\n24730=>2236,\n24717=>2237,\n24724=>2238,\n24716=>2239,\n24709=>2240,\n24726=>2241,\n25159=>2242,\n25331=>2243,\n25352=>2244,\n25343=>2245,\n25422=>2246,\n25406=>2247,\n25391=>2248,\n25429=>2249,\n25410=>2250,\n25414=>2251,\n25423=>2252,\n25417=>2253,\n25402=>2254,\n25424=>2255,\n25405=>2256,\n25386=>2257,\n25387=>2258,\n25384=>2259,\n25421=>2260,\n25420=>2261,\n25928=>2262,\n25929=>2263,\n26009=>2264,\n26049=>2265,\n26053=>2266,\n26178=>2267,\n26185=>2268,\n26191=>2269,\n26179=>2270,\n26194=>2271,\n26188=>2272,\n26181=>2273,\n26177=>2274,\n26360=>2275,\n26388=>2276,\n26389=>2277,\n26391=>2278,\n26657=>2279,\n26680=>2280,\n26696=>2281,\n26694=>2282,\n26707=>2283,\n26681=>2284,\n26690=>2285,\n26708=>2286,\n26665=>2287,\n26803=>2288,\n26647=>2289,\n26700=>2290,\n26705=>2291,\n26685=>2292,\n26612=>2293,\n26704=>2294,\n26688=>2295,\n26684=>2296,\n26691=>2297,\n26666=>2298,\n26693=>2299,\n26643=>2300,\n26648=>2301,\n26689=>2302,\n27530=>2303,\n27529=>2304,\n27575=>2305,\n27683=>2306,\n27687=>2307,\n27688=>2308,\n27686=>2309,\n27684=>2310,\n27888=>2311,\n28010=>2312,\n28053=>2313,\n28040=>2314,\n28039=>2315,\n28006=>2316,\n28024=>2317,\n28023=>2318,\n27993=>2319,\n28051=>2320,\n28012=>2321,\n28041=>2322,\n28014=>2323,\n27994=>2324,\n28020=>2325,\n28009=>2326,\n28044=>2327,\n28042=>2328,\n28025=>2329,\n28037=>2330,\n28005=>2331,\n28052=>2332,\n28874=>2333,\n28888=>2334,\n28900=>2335,\n28889=>2336,\n28872=>2337,\n28879=>2338,\n29241=>2339,\n29305=>2340,\n29436=>2341,\n29433=>2342,\n29437=>2343,\n29432=>2344,\n29431=>2345,\n29574=>2346,\n29677=>2347,\n29705=>2348,\n29678=>2349,\n29664=>2350,\n29674=>2351,\n29662=>2352,\n30036=>2353,\n30045=>2354,\n30044=>2355,\n30042=>2356,\n30041=>2357,\n30142=>2358,\n30149=>2359,\n30151=>2360,\n30130=>2361,\n30131=>2362,\n30141=>2363,\n30140=>2364,\n30137=>2365,\n30146=>2366,\n30136=>2367,\n30347=>2368,\n30384=>2369,\n30410=>2370,\n30413=>2371,\n30414=>2372,\n30505=>2373,\n30495=>2374,\n30496=>2375,\n30504=>2376,\n30697=>2377,\n30768=>2378,\n30759=>2379,\n30776=>2380,\n30749=>2381,\n30772=>2382,\n30775=>2383,\n30757=>2384,\n30765=>2385,\n30752=>2386,\n30751=>2387,\n30770=>2388,\n31061=>2389,\n31056=>2390,\n31072=>2391,\n31071=>2392,\n31062=>2393,\n31070=>2394,\n31069=>2395,\n31063=>2396,\n31066=>2397,\n31204=>2398,\n31203=>2399,\n60418=>2399,\n31207=>2400,\n31199=>2401,\n31206=>2402,\n31209=>2403,\n31192=>2404,\n31364=>2405,\n31368=>2406,\n31449=>2407,\n31494=>2408,\n31505=>2409,\n31881=>2410,\n32033=>2411,\n32023=>2412,\n32011=>2413,\n32010=>2414,\n32032=>2415,\n32034=>2416,\n32020=>2417,\n32016=>2418,\n32021=>2419,\n32026=>2420,\n32028=>2421,\n32013=>2422,\n32025=>2423,\n32027=>2424,\n32570=>2425,\n32607=>2426,\n32660=>2427,\n32709=>2428,\n32705=>2429,\n32774=>2430,\n32772=>2431,\n32792=>2432,\n32789=>2433,\n32793=>2434,\n32791=>2435,\n32829=>2436,\n32831=>2437,\n33009=>2438,\n33026=>2439,\n33008=>2440,\n33029=>2441,\n33005=>2442,\n33012=>2443,\n33030=>2444,\n33016=>2445,\n33011=>2446,\n33032=>2447,\n33021=>2448,\n33034=>2449,\n33020=>2450,\n33007=>2451,\n33261=>2452,\n33260=>2453,\n33280=>2454,\n33296=>2455,\n33322=>2456,\n33323=>2457,\n33320=>2458,\n33324=>2459,\n33467=>2460,\n33579=>2461,\n33618=>2462,\n33620=>2463,\n33610=>2464,\n33592=>2465,\n33616=>2466,\n33609=>2467,\n33589=>2468,\n33588=>2469,\n33615=>2470,\n33586=>2471,\n33593=>2472,\n33590=>2473,\n33559=>2474,\n33600=>2475,\n33585=>2476,\n33576=>2477,\n33603=>2478,\n34388=>2479,\n34442=>2480,\n34474=>2481,\n34451=>2482,\n34468=>2483,\n34473=>2484,\n34444=>2485,\n34467=>2486,\n34460=>2487,\n34928=>2488,\n34935=>2489,\n34945=>2490,\n34946=>2491,\n34941=>2492,\n34937=>2493,\n35352=>2494,\n35344=>2495,\n35342=>2496,\n35340=>2497,\n35349=>2498,\n35338=>2499,\n35351=>2500,\n35347=>2501,\n35350=>2502,\n35343=>2503,\n35345=>2504,\n35912=>2505,\n35962=>2506,\n35961=>2507,\n36001=>2508,\n36002=>2509,\n36215=>2510,\n58442=>2510,\n36524=>2511,\n36562=>2512,\n36564=>2513,\n36559=>2514,\n36785=>2515,\n36865=>2516,\n36870=>2517,\n36855=>2518,\n36864=>2519,\n36858=>2520,\n36852=>2521,\n36867=>2522,\n36861=>2523,\n36869=>2524,\n36856=>2525,\n37013=>2526,\n37089=>2527,\n37085=>2528,\n37090=>2529,\n37202=>2530,\n37197=>2531,\n37196=>2532,\n37336=>2533,\n37341=>2534,\n37335=>2535,\n37340=>2536,\n37337=>2537,\n38275=>2538,\n38498=>2539,\n38499=>2540,\n38497=>2541,\n38491=>2542,\n38493=>2543,\n38500=>2544,\n38488=>2545,\n38494=>2546,\n38587=>2547,\n39138=>2548,\n39340=>2549,\n12218=>2549,\n39592=>2550,\n12219=>2550,\n39640=>2551,\n12220=>2551,\n12222=>2552,\n39717=>2552,\n39730=>2553,\n12224=>2553,\n39740=>2554,\n12225=>2554,\n20094=>2555,\n20602=>2556,\n20605=>2557,\n57382=>2557,\n20572=>2558,\n20551=>2559,\n20547=>2560,\n20556=>2561,\n20570=>2562,\n20553=>2563,\n20581=>2564,\n20598=>2565,\n20558=>2566,\n20565=>2567,\n20597=>2568,\n20596=>2569,\n20599=>2570,\n20559=>2571,\n20495=>2572,\n20591=>2573,\n20589=>2574,\n20828=>2575,\n20885=>2576,\n20976=>2577,\n21098=>2578,\n21103=>2579,\n21202=>2580,\n21209=>2581,\n21208=>2582,\n21205=>2583,\n21264=>2584,\n21263=>2585,\n21273=>2586,\n21311=>2587,\n21312=>2588,\n21310=>2589,\n21443=>2590,\n26364=>2591,\n21830=>2592,\n21866=>2593,\n21862=>2594,\n21828=>2595,\n21854=>2596,\n21857=>2597,\n21827=>2598,\n21834=>2599,\n21809=>2600,\n21846=>2601,\n21839=>2602,\n21845=>2603,\n21807=>2604,\n21860=>2605,\n21816=>2606,\n21806=>2607,\n21852=>2608,\n21804=>2609,\n21859=>2610,\n21811=>2611,\n21825=>2612,\n21847=>2613,\n22280=>2614,\n22283=>2615,\n22281=>2616,\n22495=>2617,\n22533=>2618,\n22538=>2619,\n22534=>2620,\n22496=>2621,\n22500=>2622,\n22522=>2623,\n22530=>2624,\n22581=>2625,\n22519=>2626,\n22521=>2627,\n22816=>2628,\n22882=>2629,\n23094=>2630,\n23105=>2631,\n23113=>2632,\n23142=>2633,\n23146=>2634,\n23104=>2635,\n23100=>2636,\n23138=>2637,\n23130=>2638,\n23110=>2639,\n23114=>2640,\n23408=>2641,\n23495=>2642,\n23493=>2643,\n23492=>2644,\n23490=>2645,\n23487=>2646,\n23494=>2647,\n23561=>2648,\n23560=>2649,\n23559=>2650,\n23648=>2651,\n23644=>2652,\n23645=>2653,\n23815=>2654,\n23814=>2655,\n23822=>2656,\n23835=>2657,\n23830=>2658,\n23842=>2659,\n23825=>2660,\n23849=>2661,\n23828=>2662,\n23833=>2663,\n23844=>2664,\n23847=>2665,\n23831=>2666,\n24034=>2667,\n24120=>2668,\n24118=>2669,\n24115=>2670,\n24119=>2671,\n24247=>2672,\n24248=>2673,\n24246=>2674,\n24245=>2675,\n24254=>2676,\n24373=>2677,\n24375=>2678,\n24407=>2679,\n24428=>2680,\n24425=>2681,\n24427=>2682,\n24471=>2683,\n24473=>2684,\n24478=>2685,\n24472=>2686,\n24481=>2687,\n24480=>2688,\n24476=>2689,\n24703=>2690,\n24739=>2691,\n24713=>2692,\n24736=>2693,\n24744=>2694,\n24779=>2695,\n24756=>2696,\n24806=>2697,\n24765=>2698,\n24773=>2699,\n24763=>2700,\n24757=>2701,\n24796=>2702,\n24764=>2703,\n24792=>2704,\n24789=>2705,\n24774=>2706,\n24799=>2707,\n24760=>2708,\n24794=>2709,\n24775=>2710,\n25114=>2711,\n25115=>2712,\n25160=>2713,\n25504=>2714,\n25511=>2715,\n25458=>2716,\n25494=>2717,\n25506=>2718,\n25509=>2719,\n25463=>2720,\n25447=>2721,\n25496=>2722,\n25514=>2723,\n25457=>2724,\n25513=>2725,\n25481=>2726,\n25475=>2727,\n25499=>2728,\n25451=>2729,\n25512=>2730,\n25476=>2731,\n25480=>2732,\n25497=>2733,\n25505=>2734,\n25516=>2735,\n25490=>2736,\n25487=>2737,\n25472=>2738,\n25467=>2739,\n25449=>2740,\n25448=>2741,\n25466=>2742,\n25949=>2743,\n25942=>2744,\n25937=>2745,\n25945=>2746,\n25943=>2747,\n21855=>2748,\n25935=>2749,\n25944=>2750,\n25941=>2751,\n25940=>2752,\n26012=>2753,\n26011=>2754,\n26028=>2755,\n26063=>2756,\n26059=>2757,\n26060=>2758,\n26062=>2759,\n26205=>2760,\n26202=>2761,\n26212=>2762,\n26216=>2763,\n26214=>2764,\n26206=>2765,\n26361=>2766,\n21207=>2767,\n26395=>2768,\n26753=>2769,\n26799=>2770,\n26786=>2771,\n26771=>2772,\n26805=>2773,\n26751=>2774,\n26742=>2775,\n26801=>2776,\n26791=>2777,\n26775=>2778,\n26800=>2779,\n26755=>2780,\n26820=>2781,\n26797=>2782,\n26758=>2783,\n26757=>2784,\n26772=>2785,\n26781=>2786,\n26792=>2787,\n26783=>2788,\n26785=>2789,\n26754=>2790,\n27442=>2791,\n27578=>2792,\n27627=>2793,\n27628=>2794,\n27691=>2795,\n28046=>2796,\n28092=>2797,\n28147=>2798,\n28121=>2799,\n28082=>2800,\n28129=>2801,\n28108=>2802,\n28132=>2803,\n28155=>2804,\n28154=>2805,\n28165=>2806,\n28103=>2807,\n28107=>2808,\n28079=>2809,\n28113=>2810,\n28078=>2811,\n28126=>2812,\n28153=>2813,\n28088=>2814,\n28151=>2815,\n28149=>2816,\n28101=>2817,\n28114=>2818,\n28186=>2819,\n28085=>2820,\n28122=>2821,\n28139=>2822,\n28120=>2823,\n28138=>2824,\n28145=>2825,\n28142=>2826,\n28136=>2827,\n28102=>2828,\n28100=>2829,\n28074=>2830,\n28140=>2831,\n28095=>2832,\n28134=>2833,\n28921=>2834,\n28937=>2835,\n28938=>2836,\n28925=>2837,\n28911=>2838,\n29245=>2839,\n29309=>2840,\n29313=>2841,\n29468=>2842,\n29467=>2843,\n29462=>2844,\n29459=>2845,\n29465=>2846,\n29575=>2847,\n29701=>2848,\n29706=>2849,\n29699=>2850,\n29702=>2851,\n29694=>2852,\n29709=>2853,\n29920=>2854,\n29942=>2855,\n29943=>2856,\n29980=>2857,\n29986=>2858,\n30053=>2859,\n30054=>2860,\n30050=>2861,\n30064=>2862,\n30095=>2863,\n30164=>2864,\n30165=>2865,\n30133=>2866,\n30154=>2867,\n30157=>2868,\n30350=>2869,\n30420=>2870,\n30418=>2871,\n30427=>2872,\n30519=>2873,\n30526=>2874,\n30524=>2875,\n30518=>2876,\n30520=>2877,\n30522=>2878,\n30827=>2879,\n30787=>2880,\n30798=>2881,\n31077=>2882,\n31080=>2883,\n31085=>2884,\n31227=>2885,\n31378=>2886,\n31381=>2887,\n31520=>2888,\n31528=>2889,\n31515=>2890,\n31532=>2891,\n31526=>2892,\n31513=>2893,\n31518=>2894,\n31534=>2895,\n31890=>2896,\n31895=>2897,\n31893=>2898,\n32070=>2899,\n32067=>2900,\n32113=>2901,\n32046=>2902,\n32057=>2903,\n32060=>2904,\n32064=>2905,\n32048=>2906,\n32051=>2907,\n32068=>2908,\n32047=>2909,\n32066=>2910,\n32050=>2911,\n32049=>2912,\n32573=>2913,\n32670=>2914,\n32666=>2915,\n32716=>2916,\n32718=>2917,\n32722=>2918,\n32796=>2919,\n32842=>2920,\n32838=>2921,\n33071=>2922,\n33046=>2923,\n33059=>2924,\n33067=>2925,\n33065=>2926,\n33072=>2927,\n33060=>2928,\n33282=>2929,\n33333=>2930,\n33335=>2931,\n33334=>2932,\n33337=>2933,\n33678=>2934,\n33694=>2935,\n33688=>2936,\n33656=>2937,\n33698=>2938,\n33686=>2939,\n33725=>2940,\n33707=>2941,\n33682=>2942,\n33674=>2943,\n33683=>2944,\n33673=>2945,\n33696=>2946,\n33655=>2947,\n33659=>2948,\n33660=>2949,\n33670=>2950,\n33703=>2951,\n34389=>2952,\n24426=>2953,\n34503=>2954,\n34496=>2955,\n34486=>2956,\n34500=>2957,\n34485=>2958,\n34502=>2959,\n34507=>2960,\n34481=>2961,\n34479=>2962,\n34505=>2963,\n34899=>2964,\n34974=>2965,\n34952=>2966,\n34987=>2967,\n34962=>2968,\n34966=>2969,\n34957=>2970,\n34955=>2971,\n35219=>2972,\n35215=>2973,\n35370=>2974,\n35357=>2975,\n35363=>2976,\n35365=>2977,\n35377=>2978,\n35373=>2979,\n35359=>2980,\n35355=>2981,\n35362=>2982,\n35913=>2983,\n35930=>2984,\n36009=>2985,\n36012=>2986,\n36011=>2987,\n36008=>2988,\n36010=>2989,\n36007=>2990,\n36199=>2991,\n36198=>2992,\n36286=>2993,\n36282=>2994,\n36571=>2995,\n36575=>2996,\n36889=>2997,\n36877=>2998,\n36890=>2999,\n36887=>3000,\n36899=>3001,\n36895=>3002,\n36893=>3003,\n36880=>3004,\n36885=>3005,\n36894=>3006,\n36896=>3007,\n36879=>3008,\n36898=>3009,\n36886=>3010,\n36891=>3011,\n36884=>3012,\n37096=>3013,\n37101=>3014,\n37117=>3015,\n58488=>3015,\n37207=>3016,\n37326=>3017,\n37365=>3018,\n37350=>3019,\n37347=>3020,\n37351=>3021,\n37357=>3022,\n37353=>3023,\n38281=>3024,\n38506=>3025,\n38517=>3026,\n38515=>3027,\n38520=>3028,\n38512=>3029,\n38516=>3030,\n38518=>3031,\n38519=>3032,\n38508=>3033,\n38592=>3034,\n38634=>3035,\n38633=>3036,\n31456=>3037,\n31455=>3038,\n38914=>3039,\n38915=>3040,\n39770=>3041,\n12226=>3041,\n40165=>3042,\n12227=>3042,\n40565=>3043,\n12228=>3043,\n40575=>3044,\n12229=>3044,\n40613=>3045,\n12230=>3045,\n40635=>3046,\n12231=>3046,\n20642=>3047,\n20621=>3048,\n20613=>3049,\n20633=>3050,\n20625=>3051,\n20608=>3052,\n20630=>3053,\n20632=>3054,\n20634=>3055,\n26368=>3056,\n20977=>3057,\n21106=>3058,\n21108=>3059,\n21109=>3060,\n21097=>3061,\n21214=>3062,\n21213=>3063,\n21211=>3064,\n21338=>3065,\n21413=>3066,\n21883=>3067,\n21888=>3068,\n21927=>3069,\n21884=>3070,\n21898=>3071,\n21917=>3072,\n21912=>3073,\n21890=>3074,\n21916=>3075,\n21930=>3076,\n21908=>3077,\n21895=>3078,\n21899=>3079,\n21891=>3080,\n21939=>3081,\n21934=>3082,\n21919=>3083,\n21822=>3084,\n21938=>3085,\n21914=>3086,\n21947=>3087,\n21932=>3088,\n21937=>3089,\n21886=>3090,\n21897=>3091,\n21931=>3092,\n21913=>3093,\n22285=>3094,\n22575=>3095,\n22570=>3096,\n22580=>3097,\n22564=>3098,\n22576=>3099,\n22577=>3100,\n22561=>3101,\n22557=>3102,\n22560=>3103,\n22777=>3104,\n22778=>3105,\n22880=>3106,\n23159=>3107,\n57587=>3107,\n23194=>3108,\n23167=>3109,\n23186=>3110,\n23195=>3111,\n23207=>3112,\n23411=>3113,\n23409=>3114,\n23506=>3115,\n23500=>3116,\n23507=>3117,\n23504=>3118,\n23562=>3119,\n23563=>3120,\n23601=>3121,\n23884=>3122,\n23888=>3123,\n23860=>3124,\n23879=>3125,\n24061=>3126,\n24133=>3127,\n24125=>3128,\n24128=>3129,\n24131=>3130,\n24190=>3131,\n24266=>3132,\n24257=>3133,\n24258=>3134,\n24260=>3135,\n24380=>3136,\n24429=>3137,\n24489=>3138,\n24490=>3139,\n24488=>3140,\n24785=>3141,\n24801=>3142,\n24754=>3143,\n24758=>3144,\n24800=>3145,\n24860=>3146,\n24867=>3147,\n24826=>3148,\n24853=>3149,\n24816=>3150,\n24827=>3151,\n24820=>3152,\n24936=>3153,\n24817=>3154,\n24846=>3155,\n24822=>3156,\n24841=>3157,\n24832=>3158,\n24850=>3159,\n25119=>3160,\n25161=>3161,\n25507=>3162,\n25484=>3163,\n25551=>3164,\n25536=>3165,\n25577=>3166,\n25545=>3167,\n25542=>3168,\n25549=>3169,\n25554=>3170,\n25571=>3171,\n25552=>3172,\n25569=>3173,\n25558=>3174,\n25581=>3175,\n25582=>3176,\n25462=>3177,\n25588=>3178,\n25578=>3179,\n25563=>3180,\n25682=>3181,\n25562=>3182,\n25593=>3183,\n25950=>3184,\n25958=>3185,\n25954=>3186,\n25955=>3187,\n26001=>3188,\n26000=>3189,\n26031=>3190,\n26222=>3191,\n26224=>3192,\n26228=>3193,\n57786=>3193,\n26230=>3194,\n26223=>3195,\n26257=>3196,\n26234=>3197,\n26238=>3198,\n26231=>3199,\n26366=>3200,\n26367=>3201,\n26399=>3202,\n26397=>3203,\n26874=>3204,\n26837=>3205,\n26848=>3206,\n26840=>3207,\n26839=>3208,\n26885=>3209,\n26847=>3210,\n26869=>3211,\n26862=>3212,\n26855=>3213,\n26873=>3214,\n26834=>3215,\n26866=>3216,\n26851=>3217,\n26827=>3218,\n26829=>3219,\n26893=>3220,\n26898=>3221,\n26894=>3222,\n26825=>3223,\n26842=>3224,\n26990=>3225,\n26875=>3226,\n27454=>3227,\n27450=>3228,\n27453=>3229,\n27544=>3230,\n27542=>3231,\n27580=>3232,\n27631=>3233,\n27694=>3234,\n27695=>3235,\n27692=>3236,\n28207=>3237,\n57904=>3237,\n28216=>3238,\n28244=>3239,\n28193=>3240,\n28210=>3241,\n28263=>3242,\n28234=>3243,\n28192=>3244,\n28197=>3245,\n28195=>3246,\n28187=>3247,\n28251=>3248,\n28248=>3249,\n28196=>3250,\n28246=>3251,\n28270=>3252,\n28205=>3253,\n28198=>3254,\n28271=>3255,\n28212=>3256,\n28237=>3257,\n28218=>3258,\n28204=>3259,\n28227=>3260,\n28189=>3261,\n57901=>3261,\n28222=>3262,\n28363=>3263,\n28297=>3264,\n28185=>3265,\n28238=>3266,\n28259=>3267,\n28228=>3268,\n28274=>3269,\n28265=>3270,\n28255=>3271,\n28953=>3272,\n28954=>3273,\n28966=>3274,\n28976=>3275,\n28961=>3276,\n28982=>3277,\n29038=>3278,\n57958=>3278,\n28956=>3279,\n29260=>3280,\n29316=>3281,\n29312=>3282,\n29494=>3283,\n29477=>3284,\n29492=>3285,\n29481=>3286,\n29754=>3287,\n29738=>3288,\n29747=>3289,\n29730=>3290,\n29733=>3291,\n29749=>3292,\n29750=>3293,\n29748=>3294,\n29743=>3295,\n29723=>3296,\n29734=>3297,\n29736=>3298,\n29989=>3299,\n29990=>3300,\n30059=>3301,\n30058=>3302,\n30178=>3303,\n30171=>3304,\n30179=>3305,\n30169=>3306,\n30168=>3307,\n30174=>3308,\n30176=>3309,\n30331=>3310,\n30332=>3311,\n30358=>3312,\n30355=>3313,\n30388=>3314,\n30428=>3315,\n30543=>3316,\n30701=>3317,\n30813=>3318,\n30828=>3319,\n30831=>3320,\n31245=>3321,\n31240=>3322,\n31243=>3323,\n31237=>3324,\n31232=>3325,\n31384=>3326,\n31383=>3327,\n31382=>3328,\n31461=>3329,\n31459=>3330,\n31561=>3331,\n31574=>3332,\n31558=>3333,\n31568=>3334,\n31570=>3335,\n31572=>3336,\n31565=>3337,\n31563=>3338,\n31567=>3339,\n31569=>3340,\n60510=>3340,\n31903=>3341,\n31909=>3342,\n32094=>3343,\n32080=>3344,\n32104=>3345,\n32085=>3346,\n32043=>3347,\n32110=>3348,\n32114=>3349,\n32097=>3350,\n32102=>3351,\n32098=>3352,\n32112=>3353,\n32115=>3354,\n21892=>3355,\n32724=>3356,\n32725=>3357,\n32779=>3358,\n32850=>3359,\n32901=>3360,\n33109=>3361,\n33108=>3362,\n33099=>3363,\n33105=>3364,\n33102=>3365,\n33081=>3366,\n33094=>3367,\n33086=>3368,\n33100=>3369,\n33107=>3370,\n33140=>3371,\n33298=>3372,\n33308=>3373,\n33769=>3374,\n33795=>3375,\n33784=>3376,\n33805=>3377,\n33760=>3378,\n33733=>3379,\n33803=>3380,\n33729=>3381,\n58309=>3381,\n33775=>3382,\n33777=>3383,\n33780=>3384,\n33879=>3385,\n33802=>3386,\n33776=>3387,\n33804=>3388,\n33740=>3389,\n33789=>3390,\n33778=>3391,\n33738=>3392,\n33848=>3393,\n33806=>3394,\n33796=>3395,\n33756=>3396,\n33799=>3397,\n33748=>3398,\n33759=>3399,\n34395=>3400,\n34527=>3401,\n34521=>3402,\n34541=>3403,\n34516=>3404,\n34523=>3405,\n34532=>3406,\n34512=>3407,\n34526=>3408,\n34903=>3409,\n35009=>3410,\n35010=>3411,\n34993=>3412,\n35203=>3413,\n35222=>3414,\n35387=>3415,\n35424=>3416,\n35413=>3417,\n35422=>3418,\n35388=>3419,\n35393=>3420,\n35412=>3421,\n35419=>3422,\n35408=>3423,\n35398=>3424,\n35380=>3425,\n35386=>3426,\n35382=>3427,\n35414=>3428,\n35937=>3429,\n35970=>3430,\n36015=>3431,\n36028=>3432,\n36019=>3433,\n36029=>3434,\n36033=>3435,\n36027=>3436,\n36032=>3437,\n36020=>3438,\n36023=>3439,\n36022=>3440,\n36031=>3441,\n36024=>3442,\n36234=>3443,\n36229=>3444,\n36225=>3445,\n36302=>3446,\n36317=>3447,\n36299=>3448,\n36314=>3449,\n36305=>3450,\n36300=>3451,\n36315=>3452,\n36294=>3453,\n36603=>3454,\n36600=>3455,\n36604=>3456,\n36764=>3457,\n36910=>3458,\n36917=>3459,\n36913=>3460,\n36920=>3461,\n36914=>3462,\n36918=>3463,\n37122=>3464,\n37109=>3465,\n37129=>3466,\n37118=>3467,\n37219=>3468,\n37221=>3469,\n37327=>3470,\n37396=>3471,\n37397=>3472,\n37411=>3473,\n37385=>3474,\n37406=>3475,\n37389=>3476,\n37392=>3477,\n37383=>3478,\n37393=>3479,\n38292=>3480,\n38287=>3481,\n38283=>3482,\n38289=>3483,\n38291=>3484,\n38290=>3485,\n38286=>3486,\n38538=>3487,\n38542=>3488,\n38539=>3489,\n38525=>3490,\n38533=>3491,\n38534=>3492,\n38541=>3493,\n38514=>3494,\n38532=>3495,\n38593=>3496,\n38597=>3497,\n38596=>3498,\n38598=>3499,\n38599=>3500,\n38639=>3501,\n38642=>3502,\n38860=>3503,\n38917=>3504,\n38918=>3505,\n38920=>3506,\n39143=>3507,\n39146=>3508,\n39151=>3509,\n39145=>3510,\n39154=>3511,\n39149=>3512,\n39342=>3513,\n39341=>3514,\n40643=>3515,\n12232=>3515,\n40653=>3516,\n12233=>3516,\n40657=>3517,\n12234=>3517,\n20098=>3518,\n20653=>3519,\n20661=>3520,\n20658=>3521,\n20659=>3522,\n20677=>3523,\n20670=>3524,\n20652=>3525,\n20663=>3526,\n20667=>3527,\n20655=>3528,\n20679=>3529,\n21119=>3530,\n21111=>3531,\n21117=>3532,\n21215=>3533,\n21222=>3534,\n21220=>3535,\n21218=>3536,\n21219=>3537,\n21295=>3538,\n21983=>3539,\n21992=>3540,\n21971=>3541,\n21990=>3542,\n21966=>3543,\n21980=>3544,\n21959=>3545,\n21969=>3546,\n21987=>3547,\n21988=>3548,\n21999=>3549,\n21978=>3550,\n21985=>3551,\n21957=>3552,\n21958=>3553,\n21989=>3554,\n21961=>3555,\n22290=>3556,\n22291=>3557,\n22622=>3558,\n22609=>3559,\n22616=>3560,\n22615=>3561,\n22618=>3562,\n22612=>3563,\n22635=>3564,\n22604=>3565,\n22637=>3566,\n22602=>3567,\n22626=>3568,\n22610=>3569,\n22603=>3570,\n22887=>3571,\n23233=>3572,\n23241=>3573,\n23244=>3574,\n23230=>3575,\n23229=>3576,\n23228=>3577,\n23219=>3578,\n23234=>3579,\n23218=>3580,\n23913=>3581,\n23919=>3582,\n24140=>3583,\n24185=>3584,\n24265=>3585,\n24264=>3586,\n24338=>3587,\n24409=>3588,\n24492=>3589,\n24494=>3590,\n24858=>3591,\n24847=>3592,\n24904=>3593,\n24863=>3594,\n24819=>3595,\n24859=>3596,\n24825=>3597,\n24833=>3598,\n24840=>3599,\n24910=>3600,\n24908=>3601,\n24900=>3602,\n24909=>3603,\n24894=>3604,\n24884=>3605,\n24871=>3606,\n24845=>3607,\n24838=>3608,\n24887=>3609,\n25121=>3610,\n25122=>3611,\n25619=>3612,\n25662=>3613,\n25630=>3614,\n25642=>3615,\n25645=>3616,\n25661=>3617,\n25644=>3618,\n25615=>3619,\n25628=>3620,\n25620=>3621,\n25613=>3622,\n25654=>3623,\n25622=>3624,\n25623=>3625,\n25606=>3626,\n25964=>3627,\n26015=>3628,\n26032=>3629,\n26263=>3630,\n26249=>3631,\n26247=>3632,\n26248=>3633,\n26262=>3634,\n26244=>3635,\n26264=>3636,\n26253=>3637,\n26371=>3638,\n27028=>3639,\n26989=>3640,\n26970=>3641,\n26999=>3642,\n26976=>3643,\n26964=>3644,\n26997=>3645,\n26928=>3646,\n27010=>3647,\n26954=>3648,\n26984=>3649,\n26987=>3650,\n26974=>3651,\n26963=>3652,\n27001=>3653,\n27014=>3654,\n26973=>3655,\n26979=>3656,\n26971=>3657,\n27463=>3658,\n27506=>3659,\n27584=>3660,\n27583=>3661,\n27603=>3662,\n27645=>3663,\n28322=>3664,\n28335=>3665,\n28371=>3666,\n28342=>3667,\n28354=>3668,\n28304=>3669,\n28317=>3670,\n28359=>3671,\n28357=>3672,\n28325=>3673,\n28312=>3674,\n28348=>3675,\n28346=>3676,\n28331=>3677,\n28369=>3678,\n28310=>3679,\n28316=>3680,\n28356=>3681,\n28372=>3682,\n28330=>3683,\n28327=>3684,\n28340=>3685,\n29006=>3686,\n29017=>3687,\n29033=>3688,\n29028=>3689,\n29001=>3690,\n29031=>3691,\n29020=>3692,\n29036=>3693,\n29030=>3694,\n29004=>3695,\n29029=>3696,\n29022=>3697,\n28998=>3698,\n29032=>3699,\n29014=>3700,\n29242=>3701,\n29266=>3702,\n29495=>3703,\n29509=>3704,\n29503=>3705,\n29502=>3706,\n29807=>3707,\n29786=>3708,\n29781=>3709,\n29791=>3710,\n29790=>3711,\n29761=>3712,\n29759=>3713,\n29785=>3714,\n29787=>3715,\n58019=>3716,\n29788=>3716,\n30070=>3717,\n30072=>3718,\n30208=>3719,\n30192=>3720,\n30209=>3721,\n30194=>3722,\n30193=>3723,\n30202=>3724,\n30207=>3725,\n30196=>3726,\n30195=>3727,\n30430=>3728,\n30431=>3729,\n30555=>3730,\n30571=>3731,\n30566=>3732,\n30558=>3733,\n30563=>3734,\n30585=>3735,\n30570=>3736,\n30572=>3737,\n30556=>3738,\n30565=>3739,\n30568=>3740,\n30562=>3741,\n30702=>3742,\n30862=>3743,\n30896=>3744,\n30871=>3745,\n30872=>3746,\n30860=>3747,\n30857=>3748,\n30844=>3749,\n30865=>3750,\n30867=>3751,\n30847=>3752,\n31098=>3753,\n31103=>3754,\n31105=>3755,\n33836=>3756,\n31165=>3757,\n31260=>3758,\n31258=>3759,\n31264=>3760,\n31252=>3761,\n31263=>3762,\n31262=>3763,\n31391=>3764,\n31392=>3765,\n31607=>3766,\n31680=>3767,\n31584=>3768,\n31598=>3769,\n31591=>3770,\n31921=>3771,\n31923=>3772,\n31925=>3773,\n32147=>3774,\n32121=>3775,\n32145=>3776,\n32129=>3777,\n32143=>3778,\n32091=>3779,\n32622=>3780,\n32617=>3781,\n32618=>3782,\n32626=>3783,\n32681=>3784,\n32680=>3785,\n32676=>3786,\n32854=>3787,\n32856=>3788,\n32902=>3789,\n32900=>3790,\n33137=>3791,\n33136=>3792,\n33144=>3793,\n33125=>3794,\n33134=>3795,\n33139=>3796,\n33131=>3797,\n33145=>3798,\n33146=>3799,\n33126=>3800,\n33285=>3801,\n33351=>3802,\n33922=>3803,\n33911=>3804,\n33853=>3805,\n33841=>3806,\n33909=>3807,\n33894=>3808,\n33899=>3809,\n33865=>3810,\n33900=>3811,\n33883=>3812,\n33852=>3813,\n33845=>3814,\n33889=>3815,\n33891=>3816,\n33897=>3817,\n33901=>3818,\n33862=>3819,\n34398=>3820,\n34396=>3821,\n34399=>3822,\n34553=>3823,\n34579=>3824,\n34568=>3825,\n34567=>3826,\n34560=>3827,\n34558=>3828,\n34555=>3829,\n34562=>3830,\n34563=>3831,\n34566=>3832,\n34570=>3833,\n34905=>3834,\n35039=>3835,\n35028=>3836,\n35033=>3837,\n35036=>3838,\n35032=>3839,\n35037=>3840,\n35041=>3841,\n35018=>3842,\n35029=>3843,\n35026=>3844,\n35228=>3845,\n35299=>3846,\n35435=>3847,\n35442=>3848,\n35443=>3849,\n35430=>3850,\n35433=>3851,\n35440=>3852,\n35463=>3853,\n35452=>3854,\n35427=>3855,\n35488=>3856,\n35441=>3857,\n35461=>3858,\n35437=>3859,\n35426=>3860,\n35438=>3861,\n35436=>3862,\n35449=>3863,\n35451=>3864,\n35390=>3865,\n35432=>3866,\n35938=>3867,\n35978=>3868,\n35977=>3869,\n36042=>3870,\n36039=>3871,\n36040=>3872,\n36036=>3873,\n36018=>3874,\n36035=>3875,\n36034=>3876,\n36037=>3877,\n36321=>3878,\n36319=>3879,\n36328=>3880,\n36335=>3881,\n36339=>3882,\n36346=>3883,\n36330=>3884,\n36324=>3885,\n36326=>3886,\n36530=>3887,\n36611=>3888,\n36617=>3889,\n36606=>3890,\n36618=>3891,\n36767=>3892,\n36786=>3893,\n36939=>3894,\n36938=>3895,\n36947=>3896,\n36930=>3897,\n36948=>3898,\n36924=>3899,\n36949=>3900,\n36944=>3901,\n36935=>3902,\n36943=>3903,\n36942=>3904,\n36941=>3905,\n36945=>3906,\n36926=>3907,\n36929=>3908,\n37138=>3909,\n37143=>3910,\n37228=>3911,\n37226=>3912,\n37225=>3913,\n37321=>3914,\n37431=>3915,\n37463=>3916,\n37432=>3917,\n37437=>3918,\n37440=>3919,\n37438=>3920,\n37467=>3921,\n37451=>3922,\n37476=>3923,\n37457=>3924,\n37428=>3925,\n37449=>3926,\n37453=>3927,\n37445=>3928,\n37433=>3929,\n37439=>3930,\n37466=>3931,\n38296=>3932,\n38552=>3933,\n38548=>3934,\n38549=>3935,\n38605=>3936,\n38603=>3937,\n38601=>3938,\n38602=>3939,\n38647=>3940,\n38651=>3941,\n38649=>3942,\n38646=>3943,\n38742=>3944,\n38772=>3945,\n38774=>3946,\n38928=>3947,\n38929=>3948,\n38931=>3949,\n38922=>3950,\n38930=>3951,\n38924=>3952,\n39164=>3953,\n39156=>3954,\n39165=>3955,\n39166=>3956,\n39347=>3957,\n39345=>3958,\n39348=>3959,\n39649=>3960,\n40169=>3961,\n40578=>3962,\n40718=>3963,\n12237=>3963,\n40723=>3964,\n12238=>3964,\n40736=>3965,\n12239=>3965,\n20711=>3966,\n20718=>3967,\n20709=>3968,\n20694=>3969,\n20717=>3970,\n60903=>3970,\n20698=>3971,\n20693=>3972,\n20687=>3973,\n20689=>3974,\n20721=>3975,\n20686=>3976,\n20713=>3977,\n20834=>3978,\n20979=>3979,\n21123=>3980,\n21122=>3981,\n21297=>3982,\n21421=>3983,\n22014=>3984,\n22016=>3985,\n22043=>3986,\n22039=>3987,\n22013=>3988,\n22036=>3989,\n22022=>3990,\n22025=>3991,\n22029=>3992,\n22030=>3993,\n22007=>3994,\n22038=>3995,\n22047=>3996,\n22024=>3997,\n22032=>3998,\n22006=>3999,\n22296=>4000,\n22294=>4001,\n22645=>4002,\n22654=>4003,\n22659=>4004,\n22675=>4005,\n22666=>4006,\n22649=>4007,\n22661=>4008,\n22653=>4009,\n22781=>4010,\n22821=>4011,\n22818=>4012,\n22820=>4013,\n22890=>4014,\n22889=>4015,\n23265=>4016,\n23270=>4017,\n23273=>4018,\n23255=>4019,\n23254=>4020,\n23256=>4021,\n23267=>4022,\n23413=>4023,\n23518=>4024,\n23527=>4025,\n23521=>4026,\n23525=>4027,\n23526=>4028,\n23528=>4029,\n23522=>4030,\n23524=>4031,\n23519=>4032,\n23565=>4033,\n23650=>4034,\n23940=>4035,\n23943=>4036,\n24155=>4037,\n24163=>4038,\n24149=>4039,\n24151=>4040,\n24148=>4041,\n24275=>4042,\n24278=>4043,\n24330=>4044,\n24390=>4045,\n24432=>4046,\n24505=>4047,\n24903=>4048,\n24895=>4049,\n24907=>4050,\n24951=>4051,\n24930=>4052,\n24931=>4053,\n24927=>4054,\n24922=>4055,\n24920=>4056,\n24949=>4057,\n25130=>4058,\n25735=>4059,\n25688=>4060,\n25684=>4061,\n25764=>4062,\n25720=>4063,\n25695=>4064,\n25722=>4065,\n25681=>4066,\n25703=>4067,\n25652=>4068,\n25709=>4069,\n25723=>4070,\n25970=>4071,\n26017=>4072,\n26071=>4073,\n26070=>4074,\n26274=>4075,\n26280=>4076,\n26269=>4077,\n27036=>4078,\n27048=>4079,\n27029=>4080,\n27073=>4081,\n27054=>4082,\n27091=>4083,\n27083=>4084,\n27035=>4085,\n27063=>4086,\n27067=>4087,\n27051=>4088,\n27060=>4089,\n27088=>4090,\n27085=>4091,\n27053=>4092,\n27084=>4093,\n27046=>4094,\n27075=>4095,\n27043=>4096,\n27465=>4097,\n27468=>4098,\n27699=>4099,\n28467=>4100,\n28436=>4101,\n28414=>4102,\n28435=>4103,\n28404=>4104,\n28457=>4105,\n28478=>4106,\n28448=>4107,\n28460=>4108,\n28431=>4109,\n28418=>4110,\n28450=>4111,\n28415=>4112,\n28399=>4113,\n28422=>4114,\n28465=>4115,\n28472=>4116,\n28466=>4117,\n28451=>4118,\n28437=>4119,\n28459=>4120,\n28463=>4121,\n28552=>4122,\n28458=>4123,\n28396=>4124,\n28417=>4125,\n28402=>4126,\n28364=>4127,\n28407=>4128,\n29076=>4129,\n29081=>4130,\n29053=>4131,\n29066=>4132,\n29060=>4133,\n29074=>4134,\n29246=>4135,\n29330=>4136,\n29334=>4137,\n29508=>4138,\n29520=>4139,\n29796=>4140,\n29795=>4141,\n29802=>4142,\n29808=>4143,\n29805=>4144,\n29956=>4145,\n30097=>4146,\n30247=>4147,\n30221=>4148,\n30219=>4149,\n30217=>4150,\n30227=>4151,\n30433=>4152,\n30435=>4153,\n30596=>4154,\n30589=>4155,\n30591=>4156,\n30561=>4157,\n30913=>4158,\n30879=>4159,\n30887=>4160,\n30899=>4161,\n30889=>4162,\n30883=>4163,\n31118=>4164,\n31119=>4165,\n31117=>4166,\n31278=>4167,\n31281=>4168,\n31402=>4169,\n31401=>4170,\n31469=>4171,\n31471=>4172,\n31649=>4173,\n31637=>4174,\n31627=>4175,\n31605=>4176,\n31639=>4177,\n31645=>4178,\n31636=>4179,\n31631=>4180,\n31672=>4181,\n58170=>4181,\n31623=>4182,\n31620=>4183,\n31929=>4184,\n31933=>4185,\n31934=>4186,\n32187=>4187,\n32176=>4188,\n32156=>4189,\n32189=>4190,\n32190=>4191,\n32160=>4192,\n32202=>4193,\n32180=>4194,\n32178=>4195,\n32177=>4196,\n32186=>4197,\n32162=>4198,\n32191=>4199,\n32181=>4200,\n32184=>4201,\n32173=>4202,\n32210=>4203,\n58202=>4203,\n32199=>4204,\n32172=>4205,\n32624=>4206,\n32736=>4207,\n32737=>4208,\n32735=>4209,\n32862=>4210,\n32858=>4211,\n32903=>4212,\n33104=>4213,\n33152=>4214,\n33167=>4215,\n33160=>4216,\n33162=>4217,\n33151=>4218,\n33154=>4219,\n33255=>4220,\n33274=>4221,\n33287=>4222,\n33300=>4223,\n33310=>4224,\n33355=>4225,\n33993=>4226,\n33983=>4227,\n33990=>4228,\n33988=>4229,\n33945=>4230,\n33950=>4231,\n33970=>4232,\n33948=>4233,\n33995=>4234,\n33976=>4235,\n33984=>4236,\n34003=>4237,\n33936=>4238,\n33980=>4239,\n34001=>4240,\n33994=>4241,\n34623=>4242,\n34588=>4243,\n34619=>4244,\n34594=>4245,\n34597=>4246,\n34612=>4247,\n34584=>4248,\n34645=>4249,\n34615=>4250,\n34601=>4251,\n35059=>4252,\n35074=>4253,\n35060=>4254,\n35065=>4255,\n35064=>4256,\n35069=>4257,\n35048=>4258,\n35098=>4259,\n35055=>4260,\n35494=>4261,\n35468=>4262,\n35486=>4263,\n35491=>4264,\n35469=>4265,\n35489=>4266,\n35475=>4267,\n35492=>4268,\n35498=>4269,\n35493=>4270,\n35496=>4271,\n35480=>4272,\n35473=>4273,\n35482=>4274,\n35495=>4275,\n35946=>4276,\n35981=>4277,\n35980=>4278,\n36051=>4279,\n36049=>4280,\n36050=>4281,\n36203=>4282,\n36249=>4283,\n36245=>4284,\n36348=>4285,\n36628=>4286,\n36626=>4287,\n36629=>4288,\n36627=>4289,\n36771=>4290,\n36960=>4291,\n36952=>4292,\n36956=>4293,\n36963=>4294,\n36953=>4295,\n36958=>4296,\n36962=>4297,\n36957=>4298,\n36955=>4299,\n37145=>4300,\n37144=>4301,\n37150=>4302,\n37237=>4303,\n37240=>4304,\n37239=>4305,\n37236=>4306,\n37496=>4307,\n37548=>4308,\n37504=>4309,\n37509=>4310,\n37528=>4311,\n37526=>4312,\n37499=>4313,\n37523=>4314,\n37532=>4315,\n37544=>4316,\n37500=>4317,\n37521=>4318,\n38305=>4319,\n38312=>4320,\n38313=>4321,\n38307=>4322,\n38309=>4323,\n38308=>4324,\n38553=>4325,\n38556=>4326,\n38555=>4327,\n38604=>4328,\n38610=>4329,\n38656=>4330,\n38780=>4331,\n38789=>4332,\n38902=>4333,\n38935=>4334,\n38936=>4335,\n39087=>4336,\n39089=>4337,\n39171=>4338,\n39173=>4339,\n39180=>4340,\n39177=>4341,\n39361=>4342,\n39599=>4343,\n39600=>4344,\n39654=>4345,\n39745=>4346,\n39746=>4347,\n40180=>4348,\n40182=>4349,\n40179=>4350,\n40636=>4351,\n40763=>4352,\n12240=>4352,\n40778=>4353,\n12241=>4353,\n20740=>4354,\n20736=>4355,\n20731=>4356,\n20725=>4357,\n20729=>4358,\n20738=>4359,\n20744=>4360,\n20745=>4361,\n20741=>4362,\n20956=>4363,\n21127=>4364,\n21128=>4365,\n21129=>4366,\n21133=>4367,\n21130=>4368,\n21232=>4369,\n21426=>4370,\n22062=>4371,\n22075=>4372,\n22073=>4373,\n22066=>4374,\n22079=>4375,\n22068=>4376,\n22057=>4377,\n22099=>4378,\n22094=>4379,\n22103=>4380,\n22132=>4381,\n22070=>4382,\n22063=>4383,\n22064=>4384,\n22656=>4385,\n22687=>4386,\n22686=>4387,\n22707=>4388,\n22684=>4389,\n22702=>4390,\n22697=>4391,\n22694=>4392,\n22893=>4393,\n23305=>4394,\n23291=>4395,\n23307=>4396,\n23285=>4397,\n23308=>4398,\n23304=>4399,\n23534=>4400,\n23532=>4401,\n23529=>4402,\n23531=>4403,\n23652=>4404,\n23653=>4405,\n23965=>4406,\n23956=>4407,\n24162=>4408,\n24159=>4409,\n24161=>4410,\n24290=>4411,\n24282=>4412,\n24287=>4413,\n24285=>4414,\n24291=>4415,\n24288=>4416,\n24392=>4417,\n24433=>4418,\n24503=>4419,\n24501=>4420,\n24950=>4421,\n24935=>4422,\n24942=>4423,\n24925=>4424,\n24917=>4425,\n24962=>4426,\n24956=>4427,\n24944=>4428,\n24939=>4429,\n24958=>4430,\n24999=>4431,\n24976=>4432,\n25003=>4433,\n24974=>4434,\n25004=>4435,\n24986=>4436,\n24996=>4437,\n24980=>4438,\n25006=>4439,\n25134=>4440,\n25705=>4441,\n25711=>4442,\n25721=>4443,\n25758=>4444,\n25778=>4445,\n25736=>4446,\n25744=>4447,\n57745=>4447,\n25776=>4448,\n25765=>4449,\n25747=>4450,\n25749=>4451,\n25769=>4452,\n25746=>4453,\n25774=>4454,\n25773=>4455,\n25771=>4456,\n25754=>4457,\n25772=>4458,\n25753=>4459,\n25762=>4460,\n25779=>4461,\n25973=>4462,\n25975=>4463,\n25976=>4464,\n26286=>4465,\n26283=>4466,\n26292=>4467,\n26289=>4468,\n27171=>4469,\n27167=>4470,\n27112=>4471,\n27137=>4472,\n27166=>4473,\n27161=>4474,\n27133=>4475,\n27169=>4476,\n27155=>4477,\n27146=>4478,\n27123=>4479,\n27138=>4480,\n27141=>4481,\n27117=>4482,\n27153=>4483,\n27472=>4484,\n27470=>4485,\n27556=>4486,\n27589=>4487,\n27590=>4488,\n28479=>4489,\n28540=>4490,\n28548=>4491,\n28497=>4492,\n28518=>4493,\n28500=>4494,\n28550=>4495,\n28525=>4496,\n28507=>4497,\n28536=>4498,\n28526=>4499,\n28558=>4500,\n28538=>4501,\n28528=>4502,\n28516=>4503,\n28567=>4504,\n28504=>4505,\n28373=>4506,\n28527=>4507,\n28512=>4508,\n28511=>4509,\n29087=>4510,\n29100=>4511,\n29105=>4512,\n29096=>4513,\n29270=>4514,\n29339=>4515,\n29518=>4516,\n29527=>4517,\n29801=>4518,\n29835=>4519,\n29827=>4520,\n29822=>4521,\n29824=>4522,\n30079=>4523,\n30240=>4524,\n30249=>4525,\n30239=>4526,\n30244=>4527,\n30246=>4528,\n30241=>4529,\n30242=>4530,\n30362=>4531,\n30394=>4532,\n30436=>4533,\n30606=>4534,\n30599=>4535,\n30604=>4536,\n30609=>4537,\n30603=>4538,\n30923=>4539,\n30917=>4540,\n30906=>4541,\n30922=>4542,\n30910=>4543,\n30933=>4544,\n30908=>4545,\n30928=>4546,\n31295=>4547,\n31292=>4548,\n31296=>4549,\n31293=>4550,\n31287=>4551,\n31291=>4552,\n31407=>4553,\n31406=>4554,\n31661=>4555,\n31665=>4556,\n31684=>4557,\n31668=>4558,\n31686=>4559,\n31687=>4560,\n31681=>4561,\n31648=>4562,\n31692=>4563,\n31946=>4564,\n32224=>4565,\n32244=>4566,\n32239=>4567,\n32251=>4568,\n32216=>4569,\n32236=>4570,\n32221=>4571,\n32232=>4572,\n32227=>4573,\n32218=>4574,\n32222=>4575,\n32233=>4576,\n32158=>4577,\n32217=>4578,\n32242=>4579,\n32249=>4580,\n32629=>4581,\n32631=>4582,\n32687=>4583,\n32745=>4584,\n32806=>4585,\n33179=>4586,\n33180=>4587,\n33181=>4588,\n33184=>4589,\n33178=>4590,\n33176=>4591,\n34071=>4592,\n34109=>4593,\n34074=>4594,\n34030=>4595,\n34092=>4596,\n34093=>4597,\n34067=>4598,\n34065=>4599,\n34083=>4600,\n34081=>4601,\n34068=>4602,\n34028=>4603,\n34085=>4604,\n34047=>4605,\n34054=>4606,\n34690=>4607,\n34676=>4608,\n34678=>4609,\n34656=>4610,\n34662=>4611,\n34680=>4612,\n34664=>4613,\n34649=>4614,\n34647=>4615,\n34636=>4616,\n34643=>4617,\n34907=>4618,\n34909=>4619,\n35088=>4620,\n35079=>4621,\n35090=>4622,\n35091=>4623,\n35093=>4624,\n35082=>4625,\n35516=>4626,\n35538=>4627,\n35527=>4628,\n35524=>4629,\n35477=>4630,\n35531=>4631,\n35576=>4632,\n35506=>4633,\n35529=>4634,\n35522=>4635,\n35519=>4636,\n35504=>4637,\n35542=>4638,\n35533=>4639,\n35510=>4640,\n35513=>4641,\n35547=>4642,\n35916=>4643,\n35918=>4644,\n35948=>4645,\n36064=>4646,\n36062=>4647,\n36070=>4648,\n36068=>4649,\n36076=>4650,\n36077=>4651,\n36066=>4652,\n36067=>4653,\n36060=>4654,\n36074=>4655,\n36065=>4656,\n36205=>4657,\n36255=>4658,\n36259=>4659,\n36395=>4660,\n36368=>4661,\n36381=>4662,\n36386=>4663,\n36367=>4664,\n36393=>4665,\n36383=>4666,\n36385=>4667,\n36382=>4668,\n36538=>4669,\n36637=>4670,\n36635=>4671,\n36639=>4672,\n36649=>4673,\n36646=>4674,\n36650=>4675,\n36636=>4676,\n36638=>4677,\n36645=>4678,\n36969=>4679,\n36974=>4680,\n36968=>4681,\n36973=>4682,\n36983=>4683,\n37168=>4684,\n37165=>4685,\n37159=>4686,\n37169=>4687,\n37255=>4688,\n37257=>4689,\n37259=>4690,\n37251=>4691,\n37573=>4692,\n37563=>4693,\n37559=>4694,\n37610=>4695,\n37604=>4696,\n37569=>4697,\n37555=>4698,\n37564=>4699,\n37586=>4700,\n37575=>4701,\n37616=>4702,\n37554=>4703,\n38317=>4704,\n38321=>4705,\n38660=>4706,\n38662=>4707,\n38663=>4708,\n38665=>4709,\n38752=>4710,\n38797=>4711,\n38795=>4712,\n38799=>4713,\n38945=>4714,\n38955=>4715,\n38940=>4716,\n39091=>4717,\n39178=>4718,\n39187=>4719,\n39186=>4720,\n39192=>4721,\n39389=>4722,\n39376=>4723,\n39391=>4724,\n39387=>4725,\n39377=>4726,\n39381=>4727,\n39378=>4728,\n39385=>4729,\n39607=>4730,\n39662=>4731,\n39663=>4732,\n39719=>4733,\n39749=>4734,\n39748=>4735,\n39799=>4736,\n39791=>4737,\n40198=>4738,\n40201=>4739,\n40195=>4740,\n40617=>4741,\n40638=>4742,\n40654=>4743,\n22696=>4744,\n12242=>4745,\n40786=>4745,\n20754=>4746,\n20760=>4747,\n20756=>4748,\n20752=>4749,\n20757=>4750,\n20864=>4751,\n20906=>4752,\n20957=>4753,\n21137=>4754,\n21139=>4755,\n21235=>4756,\n22105=>4757,\n22123=>4758,\n22137=>4759,\n22121=>4760,\n22116=>4761,\n22136=>4762,\n22122=>4763,\n22120=>4764,\n22117=>4765,\n22129=>4766,\n22127=>4767,\n22124=>4768,\n22114=>4769,\n22134=>4770,\n22721=>4771,\n22718=>4772,\n22727=>4773,\n22725=>4774,\n22894=>4775,\n23325=>4776,\n23348=>4777,\n23416=>4778,\n23536=>4779,\n23566=>4780,\n24394=>4781,\n25010=>4782,\n24977=>4783,\n25001=>4784,\n24970=>4785,\n25037=>4786,\n25014=>4787,\n25022=>4788,\n25034=>4789,\n25032=>4790,\n25136=>4791,\n25797=>4792,\n25793=>4793,\n25803=>4794,\n25787=>4795,\n25788=>4796,\n25818=>4797,\n25796=>4798,\n25799=>4799,\n25794=>4800,\n25805=>4801,\n25791=>4802,\n25810=>4803,\n25812=>4804,\n25790=>4805,\n25972=>4806,\n26310=>4807,\n26313=>4808,\n26297=>4809,\n26308=>4810,\n26311=>4811,\n26296=>4812,\n27197=>4813,\n27192=>4814,\n27194=>4815,\n27225=>4816,\n27243=>4817,\n27224=>4818,\n27193=>4819,\n27204=>4820,\n27234=>4821,\n27233=>4822,\n27211=>4823,\n27207=>4824,\n27189=>4825,\n27231=>4826,\n27208=>4827,\n27481=>4828,\n27511=>4829,\n27653=>4830,\n28610=>4831,\n28593=>4832,\n28577=>4833,\n28611=>4834,\n28580=>4835,\n28609=>4836,\n28583=>4837,\n28595=>4838,\n28608=>4839,\n28601=>4840,\n28598=>4841,\n60318=>4841,\n28582=>4842,\n28576=>4843,\n28596=>4844,\n29118=>4845,\n29129=>4846,\n29136=>4847,\n29138=>4848,\n29128=>4849,\n29141=>4850,\n29113=>4851,\n29134=>4852,\n29145=>4853,\n29148=>4854,\n29123=>4855,\n29124=>4856,\n29544=>4857,\n29852=>4858,\n29859=>4859,\n29848=>4860,\n29855=>4861,\n29854=>4862,\n29922=>4863,\n29964=>4864,\n29965=>4865,\n30260=>4866,\n30264=>4867,\n30266=>4868,\n30439=>4869,\n30437=>4870,\n30624=>4871,\n30622=>4872,\n30623=>4873,\n30629=>4874,\n30952=>4875,\n30938=>4876,\n30956=>4877,\n30951=>4878,\n31142=>4879,\n31309=>4880,\n31310=>4881,\n31302=>4882,\n31308=>4883,\n31307=>4884,\n31418=>4885,\n31705=>4886,\n31761=>4887,\n31689=>4888,\n31716=>4889,\n31707=>4890,\n31713=>4891,\n31721=>4892,\n31718=>4893,\n31957=>4894,\n31958=>4895,\n32266=>4896,\n32273=>4897,\n32264=>4898,\n32283=>4899,\n32291=>4900,\n32286=>4901,\n32285=>4902,\n58211=>4902,\n32265=>4903,\n32272=>4904,\n32633=>4905,\n32690=>4906,\n32752=>4907,\n32753=>4908,\n32750=>4909,\n32808=>4910,\n58239=>4910,\n33203=>4911,\n33193=>4912,\n33192=>4913,\n33275=>4914,\n33288=>4915,\n33368=>4916,\n33369=>4917,\n34122=>4918,\n34137=>4919,\n34120=>4920,\n34152=>4921,\n34153=>4922,\n34115=>4923,\n34121=>4924,\n34157=>4925,\n34154=>4926,\n34142=>4927,\n34691=>4928,\n34719=>4929,\n34718=>4930,\n34722=>4931,\n34701=>4932,\n34913=>4933,\n35114=>4934,\n35122=>4935,\n35109=>4936,\n35115=>4937,\n35105=>4938,\n35242=>4939,\n35238=>4940,\n58391=>4940,\n35558=>4941,\n35578=>4942,\n35563=>4943,\n35569=>4944,\n35584=>4945,\n35548=>4946,\n35559=>4947,\n35566=>4948,\n35582=>4949,\n35585=>4950,\n35586=>4951,\n35575=>4952,\n35565=>4953,\n35571=>4954,\n35574=>4955,\n35580=>4956,\n35947=>4957,\n35949=>4958,\n35987=>4959,\n36084=>4960,\n36420=>4961,\n36401=>4962,\n36404=>4963,\n36418=>4964,\n36409=>4965,\n36405=>4966,\n36667=>4967,\n36655=>4968,\n36664=>4969,\n36659=>4970,\n36776=>4971,\n36774=>4972,\n36981=>4973,\n36980=>4974,\n36984=>4975,\n36978=>4976,\n36988=>4977,\n36986=>4978,\n37172=>4979,\n37266=>4980,\n37664=>4981,\n37686=>4982,\n37624=>4983,\n37683=>4984,\n37679=>4985,\n37666=>4986,\n37628=>4987,\n37675=>4988,\n37636=>4989,\n37658=>4990,\n37648=>4991,\n37670=>4992,\n37665=>4993,\n37653=>4994,\n37678=>4995,\n37657=>4996,\n38331=>4997,\n38567=>4998,\n38568=>4999,\n38570=>5000,\n38613=>5001,\n38670=>5002,\n38673=>5003,\n38678=>5004,\n38669=>5005,\n38675=>5006,\n38671=>5007,\n38747=>5008,\n58565=>5009,\n38748=>5009,\n38758=>5010,\n38808=>5011,\n38960=>5012,\n38968=>5013,\n38971=>5014,\n38967=>5015,\n38957=>5016,\n38969=>5017,\n38948=>5018,\n39184=>5019,\n39208=>5020,\n39198=>5021,\n39195=>5022,\n39201=>5023,\n39194=>5024,\n39405=>5025,\n39394=>5026,\n39409=>5027,\n39608=>5028,\n39612=>5029,\n39675=>5030,\n39661=>5031,\n39720=>5032,\n39825=>5033,\n40213=>5034,\n40227=>5035,\n40230=>5036,\n40232=>5037,\n40210=>5038,\n40219=>5039,\n40664=>5040,\n40660=>5041,\n40845=>5042,\n12243=>5042,\n40860=>5043,\n12244=>5043,\n20778=>5044,\n20767=>5045,\n20769=>5046,\n20786=>5047,\n21237=>5048,\n22158=>5049,\n22144=>5050,\n22160=>5051,\n22149=>5052,\n22151=>5053,\n22159=>5054,\n22741=>5055,\n22739=>5056,\n22737=>5057,\n22734=>5058,\n23344=>5059,\n23338=>5060,\n23332=>5061,\n23418=>5062,\n23607=>5063,\n23656=>5064,\n23996=>5065,\n23994=>5066,\n23997=>5067,\n23992=>5068,\n24171=>5069,\n24396=>5070,\n24509=>5071,\n25033=>5072,\n25026=>5073,\n25031=>5074,\n25062=>5075,\n25035=>5076,\n25138=>5077,\n25140=>5078,\n25806=>5079,\n25802=>5080,\n25816=>5081,\n25824=>5082,\n25840=>5083,\n25830=>5084,\n25836=>5085,\n25841=>5086,\n25826=>5087,\n25837=>5088,\n25986=>5089,\n25987=>5090,\n26329=>5091,\n26326=>5092,\n27264=>5093,\n27284=>5094,\n27268=>5095,\n27298=>5096,\n27292=>5097,\n27355=>5098,\n27299=>5099,\n27262=>5100,\n27287=>5101,\n27280=>5102,\n27296=>5103,\n27484=>5104,\n27566=>5105,\n27610=>5106,\n27656=>5107,\n28632=>5108,\n28657=>5109,\n28639=>5110,\n28640=>5111,\n28635=>5112,\n28644=>5113,\n28651=>5114,\n28655=>5115,\n28544=>5116,\n28652=>5117,\n28641=>5118,\n28649=>5119,\n28629=>5120,\n28654=>5121,\n28656=>5122,\n29159=>5123,\n29151=>5124,\n60361=>5124,\n29166=>5125,\n29158=>5126,\n29157=>5127,\n29165=>5128,\n29164=>5129,\n29172=>5130,\n29152=>5131,\n29237=>5132,\n29254=>5133,\n29552=>5134,\n29554=>5135,\n29865=>5136,\n29872=>5137,\n29862=>5138,\n29864=>5139,\n30278=>5140,\n30274=>5141,\n30284=>5142,\n30442=>5143,\n30643=>5144,\n30634=>5145,\n30640=>5146,\n30636=>5147,\n30631=>5148,\n30637=>5149,\n30703=>5150,\n30967=>5151,\n30970=>5152,\n30964=>5153,\n30959=>5154,\n30977=>5155,\n31143=>5156,\n31146=>5157,\n31319=>5158,\n31423=>5159,\n31751=>5160,\n31757=>5161,\n31742=>5162,\n31735=>5163,\n31756=>5164,\n31712=>5165,\n31968=>5166,\n31964=>5167,\n31966=>5168,\n31970=>5169,\n31967=>5170,\n31961=>5171,\n31965=>5172,\n32302=>5173,\n32318=>5174,\n32326=>5175,\n32311=>5176,\n32306=>5177,\n32323=>5178,\n32299=>5179,\n32317=>5180,\n32305=>5181,\n32325=>5182,\n32321=>5183,\n32308=>5184,\n32313=>5185,\n32328=>5186,\n32309=>5187,\n32319=>5188,\n32303=>5189,\n32580=>5190,\n32755=>5191,\n32764=>5192,\n32881=>5193,\n32882=>5194,\n32880=>5195,\n32879=>5196,\n32883=>5197,\n33222=>5198,\n33219=>5199,\n33210=>5200,\n33218=>5201,\n33216=>5202,\n33215=>5203,\n33213=>5204,\n33225=>5205,\n33214=>5206,\n33256=>5207,\n33289=>5208,\n33393=>5209,\n34218=>5210,\n34180=>5211,\n34174=>5212,\n34204=>5213,\n34193=>5214,\n34196=>5215,\n34223=>5216,\n34203=>5217,\n34183=>5218,\n34216=>5219,\n34186=>5220,\n34214=>5221,\n34407=>5222,\n34752=>5223,\n34769=>5224,\n34739=>5225,\n34770=>5226,\n34758=>5227,\n34731=>5228,\n34747=>5229,\n34746=>5230,\n34760=>5231,\n34763=>5232,\n35131=>5233,\n35126=>5234,\n35140=>5235,\n35128=>5236,\n35133=>5237,\n35244=>5238,\n35598=>5239,\n35607=>5240,\n35609=>5241,\n35611=>5242,\n35594=>5243,\n35616=>5244,\n35613=>5245,\n35588=>5246,\n35600=>5247,\n35905=>5248,\n35903=>5249,\n35955=>5250,\n36090=>5251,\n36093=>5252,\n36092=>5253,\n36088=>5254,\n36091=>5255,\n36264=>5256,\n36425=>5257,\n36427=>5258,\n36424=>5259,\n36426=>5260,\n36676=>5261,\n36670=>5262,\n36674=>5263,\n36677=>5264,\n36671=>5265,\n36991=>5266,\n36989=>5267,\n36996=>5268,\n36993=>5269,\n36994=>5270,\n36992=>5271,\n37177=>5272,\n37283=>5273,\n37278=>5274,\n37276=>5275,\n37709=>5276,\n37762=>5277,\n37672=>5278,\n37749=>5279,\n37706=>5280,\n37733=>5281,\n37707=>5282,\n37656=>5283,\n37758=>5284,\n37740=>5285,\n37723=>5286,\n37744=>5287,\n37722=>5288,\n37716=>5289,\n38346=>5290,\n38347=>5291,\n38348=>5292,\n38344=>5293,\n38342=>5294,\n38577=>5295,\n38584=>5296,\n38614=>5297,\n38684=>5298,\n38686=>5299,\n38816=>5300,\n38867=>5301,\n38982=>5302,\n39094=>5303,\n39221=>5304,\n39425=>5305,\n39423=>5306,\n39854=>5307,\n39851=>5308,\n39850=>5309,\n39853=>5310,\n40251=>5311,\n40255=>5312,\n40587=>5313,\n40655=>5314,\n40670=>5315,\n40668=>5316,\n40669=>5317,\n40667=>5318,\n40766=>5319,\n40779=>5320,\n21474=>5321,\n22165=>5322,\n22190=>5323,\n22745=>5324,\n22744=>5325,\n23352=>5326,\n24413=>5327,\n25059=>5328,\n25139=>5329,\n25844=>5330,\n25842=>5331,\n25854=>5332,\n25862=>5333,\n25850=>5334,\n25851=>5335,\n25847=>5336,\n26039=>5337,\n26332=>5338,\n26406=>5339,\n27315=>5340,\n27308=>5341,\n27331=>5342,\n27323=>5343,\n27320=>5344,\n27330=>5345,\n27310=>5346,\n27311=>5347,\n27487=>5348,\n27512=>5349,\n27567=>5350,\n28681=>5351,\n28683=>5352,\n28670=>5353,\n28678=>5354,\n28666=>5355,\n28689=>5356,\n28687=>5357,\n29179=>5358,\n29180=>5359,\n29182=>5360,\n29176=>5361,\n29559=>5362,\n29557=>5363,\n29863=>5364,\n29887=>5365,\n29973=>5366,\n30294=>5367,\n30296=>5368,\n30290=>5369,\n30653=>5370,\n30655=>5371,\n30651=>5372,\n30652=>5373,\n30990=>5374,\n31150=>5375,\n31329=>5376,\n31330=>5377,\n31328=>5378,\n31428=>5379,\n31429=>5380,\n31787=>5381,\n31783=>5382,\n31786=>5383,\n31774=>5384,\n31779=>5385,\n31777=>5386,\n31975=>5387,\n32340=>5388,\n32341=>5389,\n32350=>5390,\n32346=>5391,\n32353=>5392,\n32338=>5393,\n32345=>5394,\n32584=>5395,\n32761=>5396,\n32763=>5397,\n32887=>5398,\n32886=>5399,\n33229=>5400,\n33231=>5401,\n33290=>5402,\n34255=>5403,\n34217=>5404,\n34253=>5405,\n34256=>5406,\n34249=>5407,\n34224=>5408,\n34234=>5409,\n34233=>5410,\n34799=>5411,\n34796=>5412,\n34802=>5413,\n34784=>5414,\n35206=>5415,\n35250=>5416,\n35316=>5417,\n35624=>5418,\n35641=>5419,\n35628=>5420,\n35627=>5421,\n35920=>5422,\n36101=>5423,\n36441=>5424,\n36451=>5425,\n36454=>5426,\n36452=>5427,\n36447=>5428,\n36437=>5429,\n36544=>5430,\n36681=>5431,\n36685=>5432,\n36999=>5433,\n36995=>5434,\n37000=>5435,\n37291=>5436,\n37292=>5437,\n37328=>5438,\n37780=>5439,\n37770=>5440,\n37782=>5441,\n37794=>5442,\n37811=>5443,\n37806=>5444,\n37804=>5445,\n37808=>5446,\n37784=>5447,\n37786=>5448,\n37783=>5449,\n38356=>5450,\n38358=>5451,\n38352=>5452,\n38357=>5453,\n38626=>5454,\n38620=>5455,\n38617=>5456,\n38619=>5457,\n38622=>5458,\n38692=>5459,\n38819=>5460,\n38822=>5461,\n38829=>5462,\n38905=>5463,\n38989=>5464,\n38991=>5465,\n38988=>5466,\n38990=>5467,\n38995=>5468,\n39098=>5469,\n39230=>5470,\n39231=>5471,\n39229=>5472,\n39214=>5473,\n39333=>5474,\n39438=>5475,\n39617=>5476,\n39683=>5477,\n39686=>5478,\n39759=>5479,\n39758=>5480,\n39757=>5481,\n39882=>5482,\n39881=>5483,\n39933=>5484,\n39880=>5485,\n39872=>5486,\n40273=>5487,\n40285=>5488,\n40288=>5489,\n40672=>5490,\n40725=>5491,\n40748=>5492,\n20787=>5493,\n22181=>5494,\n22184=>5495,\n22750=>5496,\n22751=>5497,\n22754=>5498,\n23541=>5499,\n40848=>5500,\n24300=>5501,\n25074=>5502,\n25079=>5503,\n25078=>5504,\n25077=>5505,\n25856=>5506,\n25871=>5507,\n26336=>5508,\n26333=>5509,\n27365=>5510,\n27357=>5511,\n27354=>5512,\n27347=>5513,\n28699=>5514,\n28703=>5515,\n28712=>5516,\n28698=>5517,\n28701=>5518,\n28693=>5519,\n28696=>5520,\n29190=>5521,\n29197=>5522,\n29272=>5523,\n29346=>5524,\n29560=>5525,\n29562=>5526,\n29885=>5527,\n29898=>5528,\n29923=>5529,\n30087=>5530,\n30086=>5531,\n30303=>5532,\n30305=>5533,\n30663=>5534,\n31001=>5535,\n31153=>5536,\n31339=>5537,\n31337=>5538,\n31806=>5539,\n31807=>5540,\n31800=>5541,\n31805=>5542,\n31799=>5543,\n31808=>5544,\n32363=>5545,\n32365=>5546,\n32377=>5547,\n32361=>5548,\n32362=>5549,\n32371=>5550,\n32645=>5551,\n32694=>5552,\n32697=>5553,\n32696=>5554,\n33240=>5555,\n34281=>5556,\n34269=>5557,\n34282=>5558,\n34261=>5559,\n34276=>5560,\n34277=>5561,\n34295=>5562,\n34811=>5563,\n34821=>5564,\n34829=>5565,\n34809=>5566,\n34814=>5567,\n35168=>5568,\n35167=>5569,\n35158=>5570,\n35166=>5571,\n35649=>5572,\n35676=>5573,\n35672=>5574,\n35657=>5575,\n35674=>5576,\n35662=>5577,\n35663=>5578,\n35654=>5579,\n35673=>5580,\n36104=>5581,\n36106=>5582,\n36476=>5583,\n36466=>5584,\n36487=>5585,\n36470=>5586,\n36460=>5587,\n36474=>5588,\n36468=>5589,\n36692=>5590,\n36686=>5591,\n36781=>5592,\n37002=>5593,\n37003=>5594,\n37297=>5595,\n37294=>5596,\n37857=>5597,\n37841=>5598,\n37855=>5599,\n37827=>5600,\n37832=>5601,\n37852=>5602,\n37853=>5603,\n37846=>5604,\n37858=>5605,\n37837=>5606,\n37848=>5607,\n37860=>5608,\n37847=>5609,\n37864=>5610,\n38364=>5611,\n38580=>5612,\n38627=>5613,\n38698=>5614,\n38695=>5615,\n38753=>5616,\n38876=>5617,\n38907=>5618,\n39006=>5619,\n39000=>5620,\n39003=>5621,\n39100=>5622,\n39237=>5623,\n39241=>5624,\n39446=>5625,\n39449=>5626,\n39693=>5627,\n39912=>5628,\n39911=>5629,\n39894=>5630,\n39899=>5631,\n40329=>5632,\n40289=>5633,\n40306=>5634,\n40298=>5635,\n40300=>5636,\n40594=>5637,\n40599=>5638,\n40595=>5639,\n40628=>5640,\n21240=>5641,\n22199=>5642,\n22198=>5643,\n22196=>5644,\n22204=>5645,\n22756=>5646,\n23360=>5647,\n23363=>5648,\n23421=>5649,\n23542=>5650,\n24009=>5651,\n25080=>5652,\n25082=>5653,\n25880=>5654,\n25876=>5655,\n25881=>5656,\n26342=>5657,\n26407=>5658,\n27372=>5659,\n28734=>5660,\n28720=>5661,\n28722=>5662,\n29200=>5663,\n29563=>5664,\n29903=>5665,\n30306=>5666,\n30309=>5667,\n31014=>5668,\n31018=>5669,\n31020=>5670,\n31019=>5671,\n31431=>5672,\n31478=>5673,\n31820=>5674,\n31811=>5675,\n31821=>5676,\n31983=>5677,\n31984=>5678,\n36782=>5679,\n32381=>5680,\n32380=>5681,\n32386=>5682,\n32588=>5683,\n32768=>5684,\n33242=>5685,\n33382=>5686,\n34299=>5687,\n34297=>5688,\n34321=>5689,\n34298=>5690,\n34310=>5691,\n34315=>5692,\n34311=>5693,\n34314=>5694,\n34836=>5695,\n34837=>5696,\n35172=>5697,\n35258=>5698,\n35320=>5699,\n35696=>5700,\n35692=>5701,\n35686=>5702,\n35695=>5703,\n35679=>5704,\n35691=>5705,\n36111=>5706,\n36109=>5707,\n36489=>5708,\n36481=>5709,\n36485=>5710,\n36482=>5711,\n37300=>5712,\n37323=>5713,\n37912=>5714,\n37891=>5715,\n37885=>5716,\n38369=>5717,\n38704=>5718,\n39108=>5719,\n39250=>5720,\n39249=>5721,\n39336=>5722,\n39467=>5723,\n39472=>5724,\n39479=>5725,\n39477=>5726,\n39955=>5727,\n39949=>5728,\n40569=>5729,\n40629=>5730,\n40680=>5731,\n40751=>5732,\n40799=>5733,\n40803=>5734,\n40801=>5735,\n20791=>5736,\n20792=>5737,\n22209=>5738,\n22208=>5739,\n22210=>5740,\n22804=>5741,\n23660=>5742,\n24013=>5743,\n25084=>5744,\n25086=>5745,\n25885=>5746,\n25884=>5747,\n26005=>5748,\n26345=>5749,\n27387=>5750,\n27396=>5751,\n27386=>5752,\n27570=>5753,\n28748=>5754,\n29211=>5755,\n29351=>5756,\n29910=>5757,\n29908=>5758,\n30313=>5759,\n30675=>5760,\n31824=>5761,\n32399=>5762,\n32396=>5763,\n32700=>5764,\n34327=>5765,\n34349=>5766,\n34330=>5767,\n34851=>5768,\n34850=>5769,\n34849=>5770,\n34847=>5771,\n35178=>5772,\n35180=>5773,\n35261=>5774,\n35700=>5775,\n35703=>5776,\n35709=>5777,\n36115=>5778,\n36490=>5779,\n36493=>5780,\n36491=>5781,\n36703=>5782,\n36783=>5783,\n37306=>5784,\n37934=>5785,\n37939=>5786,\n37941=>5787,\n37946=>5788,\n37944=>5789,\n37938=>5790,\n37931=>5791,\n38370=>5792,\n38712=>5793,\n38713=>5794,\n38706=>5795,\n38911=>5796,\n58586=>5796,\n39015=>5797,\n39013=>5798,\n39255=>5799,\n39493=>5800,\n39491=>5801,\n39488=>5802,\n39486=>5803,\n39631=>5804,\n39764=>5805,\n39761=>5806,\n39981=>5807,\n39973=>5808,\n40367=>5809,\n40372=>5810,\n40386=>5811,\n40376=>5812,\n40605=>5813,\n40687=>5814,\n40729=>5815,\n40796=>5816,\n40806=>5817,\n40807=>5818,\n20796=>5819,\n20795=>5820,\n22216=>5821,\n22218=>5822,\n22217=>5823,\n23423=>5824,\n24020=>5825,\n24018=>5826,\n24398=>5827,\n25087=>5828,\n25892=>5829,\n27402=>5830,\n27489=>5831,\n28753=>5832,\n28760=>5833,\n29568=>5834,\n29924=>5835,\n30090=>5836,\n30318=>5837,\n30316=>5838,\n31155=>5839,\n31840=>5840,\n31839=>5841,\n32894=>5842,\n32893=>5843,\n33247=>5844,\n35186=>5845,\n35183=>5846,\n35324=>5847,\n35712=>5848,\n36118=>5849,\n36119=>5850,\n36497=>5851,\n36499=>5852,\n36705=>5853,\n37192=>5854,\n37956=>5855,\n37969=>5856,\n37970=>5857,\n38717=>5858,\n38718=>5859,\n38851=>5860,\n38849=>5861,\n39019=>5862,\n39253=>5863,\n39509=>5864,\n39501=>5865,\n39634=>5866,\n39706=>5867,\n40009=>5868,\n39985=>5869,\n39998=>5870,\n39995=>5871,\n40403=>5872,\n40407=>5873,\n40756=>5874,\n40812=>5875,\n40810=>5876,\n40852=>5877,\n22220=>5878,\n24022=>5879,\n25088=>5880,\n25891=>5881,\n25899=>5882,\n25898=>5883,\n26348=>5884,\n27408=>5885,\n29914=>5886,\n31434=>5887,\n31844=>5888,\n31843=>5889,\n31845=>5890,\n32403=>5891,\n32406=>5892,\n32404=>5893,\n33250=>5894,\n34360=>5895,\n34367=>5896,\n34865=>5897,\n35722=>5898,\n37008=>5899,\n37007=>5900,\n37987=>5901,\n37984=>5902,\n37988=>5903,\n38760=>5904,\n39023=>5905,\n39260=>5906,\n39514=>5907,\n39515=>5908,\n39511=>5909,\n39635=>5910,\n39636=>5911,\n39633=>5912,\n40020=>5913,\n40023=>5914,\n40022=>5915,\n40421=>5916,\n40607=>5917,\n40692=>5918,\n22225=>5919,\n22761=>5920,\n25900=>5921,\n28766=>5922,\n30321=>5923,\n30322=>5924,\n30679=>5925,\n60226=>5925,\n32592=>5926,\n32648=>5927,\n34870=>5928,\n34873=>5929,\n34914=>5930,\n35731=>5931,\n35730=>5932,\n35734=>5933,\n33399=>5934,\n36123=>5935,\n37312=>5936,\n37994=>5937,\n38722=>5938,\n38728=>5939,\n38724=>5940,\n38854=>5941,\n39024=>5942,\n39519=>5943,\n39714=>5944,\n39768=>5945,\n40031=>5946,\n40441=>5947,\n40442=>5948,\n40572=>5949,\n40573=>5950,\n40711=>5951,\n40823=>5952,\n40818=>5953,\n24307=>5954,\n27414=>5955,\n28771=>5956,\n31852=>5957,\n31854=>5958,\n34875=>5959,\n35264=>5960,\n36513=>5961,\n37313=>5962,\n38002=>5963,\n38000=>5964,\n39025=>5965,\n39262=>5966,\n39638=>5967,\n39715=>5968,\n40652=>5969,\n28772=>5970,\n30682=>5971,\n35738=>5972,\n38007=>5973,\n38857=>5974,\n39522=>5975,\n39525=>5976,\n32412=>5977,\n35740=>5978,\n36522=>5979,\n37317=>5980,\n38013=>5981,\n38014=>5982,\n38012=>5983,\n40055=>5984,\n40056=>5985,\n40695=>5986,\n35924=>5987,\n38015=>5988,\n40474=>5989,\n29224=>5990,\n39530=>5991,\n39729=>5992,\n40475=>5993,\n40478=>5994,\n31858=>5995,\n20034=>5996,\n20060=>5997,\n12048=>5998,\n20981=>5998,\n12053=>5999,\n21274=>5999,\n12058=>6000,\n21378=>6000,\n19975=>6001,\n19980=>6002,\n20039=>6003,\n20109=>6004,\n12062=>6005,\n22231=>6005,\n12076=>6006,\n23662=>6006,\n12091=>6007,\n24435=>6007,\n19983=>6008,\n20871=>6009,\n19982=>6010,\n20014=>6011,\n20115=>6012,\n20162=>6013,\n20169=>6014,\n20168=>6015,\n20888=>6016,\n21244=>6017,\n21356=>6018,\n21433=>6019,\n22304=>6020,\n22787=>6021,\n22828=>6022,\n23568=>6023,\n60417=>6023,\n24063=>6024,\n26081=>6025,\n12110=>6026,\n27571=>6026,\n27596=>6027,\n12115=>6028,\n27668=>6028,\n12121=>6029,\n29247=>6029,\n20017=>6030,\n20028=>6031,\n20200=>6032,\n20188=>6033,\n20201=>6034,\n20193=>6035,\n20189=>6036,\n20186=>6037,\n21004=>6038,\n21001=>6039,\n21276=>6040,\n21324=>6041,\n22306=>6042,\n22307=>6043,\n22807=>6044,\n22831=>6045,\n23425=>6046,\n23428=>6047,\n23570=>6048,\n23611=>6049,\n23668=>6050,\n23667=>6051,\n24068=>6052,\n24192=>6053,\n24194=>6054,\n24521=>6055,\n25097=>6056,\n25168=>6057,\n27669=>6058,\n27702=>6059,\n27715=>6060,\n27711=>6061,\n27707=>6062,\n29358=>6063,\n29360=>6064,\n29578=>6065,\n12145=>6066,\n31160=>6066,\n32906=>6067,\n38430=>6068,\n20238=>6069,\n20248=>6070,\n20268=>6071,\n20213=>6072,\n20244=>6073,\n20209=>6074,\n20224=>6075,\n20215=>6076,\n20232=>6077,\n20253=>6078,\n20226=>6079,\n20229=>6080,\n20258=>6081,\n20243=>6082,\n20228=>6083,\n20212=>6084,\n20242=>6085,\n20913=>6086,\n21011=>6087,\n21008=>6088,\n21158=>6089,\n21282=>6090,\n21279=>6091,\n21325=>6092,\n21386=>6093,\n21511=>6094,\n22241=>6095,\n22239=>6096,\n22318=>6097,\n22314=>6098,\n22324=>6099,\n22844=>6100,\n22912=>6101,\n22908=>6102,\n22917=>6103,\n22907=>6104,\n22910=>6105,\n22903=>6106,\n22911=>6107,\n23382=>6108,\n23573=>6109,\n23589=>6110,\n23676=>6111,\n23674=>6112,\n23675=>6113,\n23678=>6114,\n24031=>6115,\n24181=>6116,\n57646=>6116,\n24196=>6117,\n24322=>6118,\n24346=>6119,\n24436=>6120,\n24533=>6121,\n24532=>6122,\n24527=>6123,\n25180=>6124,\n25182=>6125,\n25188=>6126,\n25185=>6127,\n25190=>6128,\n25186=>6129,\n25177=>6130,\n25184=>6131,\n25178=>6132,\n25189=>6133,\n25911=>6134,\n26095=>6135,\n26094=>6136,\n26430=>6137,\n26425=>6138,\n26424=>6139,\n26427=>6140,\n26426=>6141,\n26431=>6142,\n26428=>6143,\n26419=>6144,\n27672=>6145,\n27718=>6146,\n27730=>6147,\n27740=>6148,\n27727=>6149,\n27722=>6150,\n60796=>6150,\n27732=>6151,\n27723=>6152,\n27724=>6153,\n28785=>6154,\n29278=>6155,\n29364=>6156,\n29365=>6157,\n29582=>6158,\n29994=>6159,\n30335=>6160,\n31349=>6161,\n12153=>6162,\n32593=>6162,\n12171=>6163,\n33400=>6163,\n33404=>6164,\n33408=>6165,\n33405=>6166,\n33407=>6167,\n12172=>6168,\n34381=>6168,\n12177=>6169,\n35198=>6169,\n37017=>6170,\n59347=>6171,\n37015=>6171,\n37016=>6172,\n37019=>6173,\n37012=>6174,\n38434=>6175,\n38436=>6176,\n38432=>6177,\n38435=>6178,\n20310=>6179,\n20283=>6180,\n20322=>6181,\n20297=>6182,\n20307=>6183,\n20324=>6184,\n20286=>6185,\n20327=>6186,\n20306=>6187,\n20319=>6188,\n20289=>6189,\n20312=>6190,\n20269=>6191,\n20275=>6192,\n20287=>6193,\n20321=>6194,\n20879=>6195,\n20921=>6196,\n21020=>6197,\n21022=>6198,\n21025=>6199,\n21165=>6200,\n21166=>6201,\n21257=>6202,\n21347=>6203,\n21362=>6204,\n21390=>6205,\n21391=>6206,\n21552=>6207,\n21559=>6208,\n21546=>6209,\n21588=>6210,\n21573=>6211,\n21529=>6212,\n21532=>6213,\n21541=>6214,\n21528=>6215,\n21565=>6216,\n21583=>6217,\n21569=>6218,\n21544=>6219,\n21540=>6220,\n21575=>6221,\n22254=>6222,\n22247=>6223,\n22245=>6224,\n22337=>6225,\n22341=>6226,\n22348=>6227,\n22345=>6228,\n22347=>6229,\n22354=>6230,\n22790=>6231,\n22848=>6232,\n22950=>6233,\n22936=>6234,\n22944=>6235,\n22935=>6236,\n22926=>6237,\n22946=>6238,\n22928=>6239,\n22927=>6240,\n22951=>6241,\n22945=>6242,\n23438=>6243,\n23442=>6244,\n23592=>6245,\n23594=>6246,\n23693=>6247,\n23695=>6248,\n23688=>6249,\n23691=>6250,\n23689=>6251,\n23698=>6252,\n23690=>6253,\n23686=>6254,\n23699=>6255,\n23701=>6256,\n24032=>6257,\n24074=>6258,\n24078=>6259,\n24203=>6260,\n24201=>6261,\n24204=>6262,\n24200=>6263,\n24205=>6264,\n24325=>6265,\n24349=>6266,\n24440=>6267,\n24438=>6268,\n24530=>6269,\n24529=>6270,\n24528=>6271,\n24557=>6272,\n24552=>6273,\n24558=>6274,\n24563=>6275,\n24545=>6276,\n24548=>6277,\n24547=>6278,\n24570=>6279,\n24559=>6280,\n24567=>6281,\n24571=>6282,\n24576=>6283,\n24564=>6284,\n25146=>6285,\n25219=>6286,\n25228=>6287,\n25230=>6288,\n25231=>6289,\n25236=>6290,\n25223=>6291,\n25201=>6292,\n25211=>6293,\n25210=>6294,\n25200=>6295,\n25217=>6296,\n25224=>6297,\n25207=>6298,\n25213=>6299,\n25202=>6300,\n25204=>6301,\n26096=>6302,\n26100=>6303,\n26099=>6304,\n26098=>6305,\n26101=>6306,\n26437=>6307,\n26439=>6308,\n26457=>6309,\n26453=>6310,\n26444=>6311,\n26440=>6312,\n26461=>6313,\n26445=>6314,\n26458=>6315,\n26443=>6316,\n27600=>6317,\n27673=>6318,\n27674=>6319,\n27768=>6320,\n27751=>6321,\n27755=>6322,\n27780=>6323,\n27787=>6324,\n27791=>6325,\n27761=>6326,\n27759=>6327,\n27753=>6328,\n27802=>6329,\n27757=>6330,\n27783=>6331,\n27797=>6332,\n27804=>6333,\n57900=>6333,\n27750=>6334,\n27763=>6335,\n27749=>6336,\n27771=>6337,\n27790=>6338,\n28788=>6339,\n28794=>6340,\n29283=>6341,\n29375=>6342,\n29373=>6343,\n29379=>6344,\n29382=>6345,\n29377=>6346,\n29370=>6347,\n29381=>6348,\n29589=>6349,\n29591=>6350,\n29587=>6351,\n29588=>6352,\n29586=>6353,\n30010=>6354,\n30009=>6355,\n30100=>6356,\n30101=>6357,\n30337=>6358,\n31037=>6359,\n32820=>6360,\n32917=>6361,\n32921=>6362,\n32912=>6363,\n32914=>6364,\n32924=>6365,\n33424=>6366,\n33423=>6367,\n33413=>6368,\n33422=>6369,\n33425=>6370,\n33427=>6371,\n33418=>6372,\n33411=>6373,\n33412=>6374,\n12184=>6375,\n35960=>6375,\n36809=>6376,\n36799=>6377,\n37023=>6378,\n37025=>6379,\n37029=>6380,\n37022=>6381,\n37031=>6382,\n37024=>6383,\n38448=>6384,\n38440=>6385,\n38447=>6386,\n38445=>6387,\n20019=>6388,\n20376=>6389,\n20348=>6390,\n20357=>6391,\n20349=>6392,\n20352=>6393,\n20359=>6394,\n20342=>6395,\n20340=>6396,\n20361=>6397,\n20356=>6398,\n20343=>6399,\n20300=>6400,\n20375=>6401,\n20330=>6402,\n20378=>6403,\n20345=>6404,\n20353=>6405,\n20344=>6406,\n20368=>6407,\n20380=>6408,\n20372=>6409,\n20382=>6410,\n20370=>6411,\n20354=>6412,\n20373=>6413,\n20331=>6414,\n20334=>6415,\n20894=>6416,\n20924=>6417,\n20926=>6418,\n21045=>6419,\n21042=>6420,\n21043=>6421,\n21062=>6422,\n21041=>6423,\n21180=>6424,\n21258=>6425,\n21259=>6426,\n21308=>6427,\n21394=>6428,\n21396=>6429,\n21639=>6430,\n21631=>6431,\n21633=>6432,\n21649=>6433,\n21634=>6434,\n21640=>6435,\n21611=>6436,\n21626=>6437,\n21630=>6438,\n21605=>6439,\n21612=>6440,\n21620=>6441,\n21606=>6442,\n21645=>6443,\n21615=>6444,\n21601=>6445,\n21600=>6446,\n21656=>6447,\n21603=>6448,\n21607=>6449,\n21604=>6450,\n22263=>6451,\n22265=>6452,\n22383=>6453,\n22386=>6454,\n22381=>6455,\n22379=>6456,\n22385=>6457,\n22384=>6458,\n22390=>6459,\n22400=>6460,\n22389=>6461,\n22395=>6462,\n22387=>6463,\n22388=>6464,\n22370=>6465,\n22376=>6466,\n22397=>6467,\n22796=>6468,\n22853=>6469,\n22965=>6470,\n22970=>6471,\n22991=>6472,\n22990=>6473,\n22962=>6474,\n22988=>6475,\n22977=>6476,\n22966=>6477,\n22972=>6478,\n22979=>6479,\n22998=>6480,\n22961=>6481,\n22973=>6482,\n22976=>6483,\n22984=>6484,\n22964=>6485,\n22983=>6486,\n23394=>6487,\n23397=>6488,\n23443=>6489,\n23445=>6490,\n23620=>6491,\n23623=>6492,\n23726=>6493,\n23716=>6494,\n23712=>6495,\n23733=>6496,\n23727=>6497,\n23720=>6498,\n23724=>6499,\n23711=>6500,\n23715=>6501,\n23725=>6502,\n23714=>6503,\n23722=>6504,\n23719=>6505,\n23709=>6506,\n23717=>6507,\n23734=>6508,\n23728=>6509,\n23718=>6510,\n24087=>6511,\n24084=>6512,\n24089=>6513,\n24360=>6514,\n24354=>6515,\n24355=>6516,\n24356=>6517,\n24404=>6518,\n24450=>6519,\n24446=>6520,\n24445=>6521,\n24542=>6522,\n24549=>6523,\n24621=>6524,\n24614=>6525,\n24601=>6526,\n24626=>6527,\n24587=>6528,\n24628=>6529,\n24586=>6530,\n24599=>6531,\n24627=>6532,\n24602=>6533,\n24606=>6534,\n24620=>6535,\n24610=>6536,\n24589=>6537,\n24592=>6538,\n24622=>6539,\n24595=>6540,\n24593=>6541,\n24588=>6542,\n24585=>6543,\n24604=>6544,\n25108=>6545,\n25149=>6546,\n25261=>6547,\n25268=>6548,\n25297=>6549,\n25278=>6550,\n25258=>6551,\n25270=>6552,\n25290=>6553,\n25262=>6554,\n25267=>6555,\n25263=>6556,\n25275=>6557,\n25257=>6558,\n25264=>6559,\n25272=>6560,\n25917=>6561,\n26024=>6562,\n26043=>6563,\n26121=>6564,\n26108=>6565,\n26116=>6566,\n26130=>6567,\n26120=>6568,\n26107=>6569,\n26115=>6570,\n26123=>6571,\n26125=>6572,\n26117=>6573,\n26109=>6574,\n26129=>6575,\n26128=>6576,\n26358=>6577,\n26378=>6578,\n26501=>6579,\n26476=>6580,\n26510=>6581,\n26514=>6582,\n26486=>6583,\n26491=>6584,\n26520=>6585,\n26502=>6586,\n26500=>6587,\n26484=>6588,\n26509=>6589,\n26508=>6590,\n26490=>6591,\n26527=>6592,\n26513=>6593,\n26521=>6594,\n26499=>6595,\n26493=>6596,\n26497=>6597,\n26488=>6598,\n26489=>6599,\n26516=>6600,\n27429=>6601,\n27520=>6602,\n27518=>6603,\n27614=>6604,\n27677=>6605,\n27795=>6606,\n27884=>6607,\n27883=>6608,\n27886=>6609,\n27865=>6610,\n27830=>6611,\n27860=>6612,\n27821=>6613,\n27879=>6614,\n27831=>6615,\n27856=>6616,\n27842=>6617,\n27834=>6618,\n27843=>6619,\n27846=>6620,\n27885=>6621,\n27890=>6622,\n27858=>6623,\n27869=>6624,\n27828=>6625,\n27786=>6626,\n27805=>6627,\n27776=>6628,\n27870=>6629,\n27840=>6630,\n27952=>6631,\n27853=>6632,\n27847=>6633,\n27824=>6634,\n27897=>6635,\n27855=>6636,\n27881=>6637,\n27857=>6638,\n28820=>6639,\n28824=>6640,\n28805=>6641,\n28819=>6642,\n28806=>6643,\n28804=>6644,\n28817=>6645,\n28822=>6646,\n28802=>6647,\n28826=>6648,\n28803=>6649,\n29290=>6650,\n29398=>6651,\n29387=>6652,\n29400=>6653,\n29385=>6654,\n29404=>6655,\n29394=>6656,\n29396=>6657,\n29402=>6658,\n29388=>6659,\n29393=>6660,\n29604=>6661,\n29601=>6662,\n29613=>6663,\n29606=>6664,\n29602=>6665,\n29600=>6666,\n29612=>6667,\n29597=>6668,\n29917=>6669,\n29928=>6670,\n30015=>6671,\n30016=>6672,\n30014=>6673,\n30092=>6674,\n30104=>6675,\n30383=>6676,\n30451=>6677,\n30449=>6678,\n30448=>6679,\n30453=>6680,\n30712=>6681,\n30716=>6682,\n30713=>6683,\n30715=>6684,\n30714=>6685,\n30711=>6686,\n31042=>6687,\n31039=>6688,\n31173=>6689,\n31352=>6690,\n31355=>6691,\n31483=>6692,\n31861=>6693,\n31997=>6694,\n32821=>6695,\n32911=>6696,\n32942=>6697,\n32931=>6698,\n32952=>6699,\n32949=>6700,\n32941=>6701,\n33312=>6702,\n33440=>6703,\n33472=>6704,\n33451=>6705,\n33434=>6706,\n33432=>6707,\n33435=>6708,\n33461=>6709,\n33447=>6710,\n33454=>6711,\n33468=>6712,\n33438=>6713,\n33466=>6714,\n33460=>6715,\n33448=>6716,\n33441=>6717,\n33449=>6718,\n33474=>6719,\n33444=>6720,\n33475=>6721,\n33462=>6722,\n33442=>6723,\n34416=>6724,\n34415=>6725,\n34413=>6726,\n34414=>6727,\n35926=>6728,\n36818=>6729,\n36811=>6730,\n36819=>6731,\n36813=>6732,\n36822=>6733,\n36821=>6734,\n36823=>6735,\n37042=>6736,\n37044=>6737,\n37039=>6738,\n37043=>6739,\n37040=>6740,\n38457=>6741,\n38461=>6742,\n38460=>6743,\n38458=>6744,\n38467=>6745,\n20429=>6746,\n20421=>6747,\n20435=>6748,\n20402=>6749,\n20425=>6750,\n20427=>6751,\n20417=>6752,\n20436=>6753,\n20444=>6754,\n20441=>6755,\n20411=>6756,\n60346=>6756,\n20403=>6757,\n20443=>6758,\n20423=>6759,\n20438=>6760,\n20410=>6761,\n20416=>6762,\n20409=>6763,\n20460=>6764,\n21060=>6765,\n21065=>6766,\n21184=>6767,\n21186=>6768,\n21309=>6769,\n21372=>6770,\n21399=>6771,\n21398=>6772,\n21401=>6773,\n21400=>6774,\n21690=>6775,\n21665=>6776,\n21677=>6777,\n21669=>6778,\n21711=>6779,\n21699=>6780,\n33549=>6781,\n21687=>6782,\n21678=>6783,\n21718=>6784,\n21686=>6785,\n21701=>6786,\n21702=>6787,\n21664=>6788,\n21616=>6789,\n21692=>6790,\n21666=>6791,\n21694=>6792,\n21618=>6793,\n21726=>6794,\n21680=>6795,\n22453=>6796,\n22430=>6797,\n22431=>6798,\n22436=>6799,\n22412=>6800,\n22423=>6801,\n22429=>6802,\n22427=>6803,\n22420=>6804,\n22424=>6805,\n22415=>6806,\n22425=>6807,\n22437=>6808,\n22426=>6809,\n22421=>6810,\n22772=>6811,\n22797=>6812,\n22867=>6813,\n23009=>6814,\n23006=>6815,\n23022=>6816,\n23040=>6817,\n23025=>6818,\n23005=>6819,\n23034=>6820,\n23037=>6821,\n23036=>6822,\n23030=>6823,\n23012=>6824,\n23026=>6825,\n23031=>6826,\n23003=>6827,\n23017=>6828,\n23027=>6829,\n23029=>6830,\n23008=>6831,\n23038=>6832,\n23028=>6833,\n23021=>6834,\n23464=>6835,\n23628=>6836,\n23760=>6837,\n23768=>6838,\n23756=>6839,\n23767=>6840,\n23755=>6841,\n23771=>6842,\n23774=>6843,\n23770=>6844,\n23753=>6845,\n23751=>6846,\n23754=>6847,\n23766=>6848,\n23763=>6849,\n23764=>6850,\n23759=>6851,\n23752=>6852,\n23750=>6853,\n23758=>6854,\n23775=>6855,\n23800=>6856,\n24057=>6857,\n24097=>6858,\n24098=>6859,\n24099=>6860,\n24096=>6861,\n24100=>6862,\n24240=>6863,\n24228=>6864,\n24226=>6865,\n24219=>6866,\n24227=>6867,\n24229=>6868,\n24327=>6869,\n24366=>6870,\n24406=>6871,\n24454=>6872,\n24631=>6873,\n24633=>6874,\n24660=>6875,\n24690=>6876,\n24670=>6877,\n24645=>6878,\n24659=>6879,\n24647=>6880,\n24649=>6881,\n24667=>6882,\n24652=>6883,\n24640=>6884,\n24642=>6885,\n24671=>6886,\n24612=>6887,\n24644=>6888,\n24664=>6889,\n24678=>6890,\n24686=>6891,\n25154=>6892,\n25155=>6893,\n25295=>6894,\n25357=>6895,\n25355=>6896,\n25333=>6897,\n25358=>6898,\n25347=>6899,\n25323=>6900,\n25337=>6901,\n25359=>6902,\n25356=>6903,\n25336=>6904,\n25334=>6905,\n25344=>6906,\n25363=>6907,\n25364=>6908,\n25338=>6909,\n25365=>6910,\n25339=>6911,\n25328=>6912,\n25921=>6913,\n25923=>6914,\n26026=>6915,\n26047=>6916,\n26166=>6917,\n26145=>6918,\n26162=>6919,\n26165=>6920,\n26140=>6921,\n26150=>6922,\n26146=>6923,\n26163=>6924,\n26155=>6925,\n26170=>6926,\n26141=>6927,\n26164=>6928,\n26169=>6929,\n26158=>6930,\n26383=>6931,\n26384=>6932,\n26561=>6933,\n26610=>6934,\n26568=>6935,\n26554=>6936,\n26588=>6937,\n26555=>6938,\n26616=>6939,\n26584=>6940,\n26560=>6941,\n26551=>6942,\n26565=>6943,\n26603=>6944,\n26596=>6945,\n26591=>6946,\n26549=>6947,\n26573=>6948,\n26547=>6949,\n26615=>6950,\n26614=>6951,\n26606=>6952,\n26595=>6953,\n26562=>6954,\n26553=>6955,\n26574=>6956,\n26599=>6957,\n26608=>6958,\n26546=>6959,\n26620=>6960,\n26566=>6961,\n26605=>6962,\n26572=>6963,\n26542=>6964,\n26598=>6965,\n26587=>6966,\n26618=>6967,\n26569=>6968,\n26570=>6969,\n26563=>6970,\n26602=>6971,\n26571=>6972,\n27432=>6973,\n27522=>6974,\n27524=>6975,\n27574=>6976,\n27606=>6977,\n27608=>6978,\n27616=>6979,\n27680=>6980,\n27681=>6981,\n27944=>6982,\n27956=>6983,\n27949=>6984,\n27935=>6985,\n27964=>6986,\n27967=>6987,\n27922=>6988,\n27914=>6989,\n27866=>6990,\n27955=>6991,\n27908=>6992,\n27929=>6993,\n27962=>6994,\n27930=>6995,\n27921=>6996,\n27904=>6997,\n27933=>6998,\n27970=>6999,\n27905=>7000,\n27928=>7001,\n27959=>7002,\n27907=>7003,\n27919=>7004,\n27968=>7005,\n27911=>7006,\n27936=>7007,\n27948=>7008,\n27912=>7009,\n27938=>7010,\n27913=>7011,\n27920=>7012,\n28855=>7013,\n28831=>7014,\n28862=>7015,\n28849=>7016,\n28848=>7017,\n28833=>7018,\n28852=>7019,\n28853=>7020,\n28841=>7021,\n29249=>7022,\n29257=>7023,\n29258=>7024,\n29292=>7025,\n29296=>7026,\n29299=>7027,\n29294=>7028,\n29386=>7029,\n29412=>7030,\n29416=>7031,\n29419=>7032,\n29407=>7033,\n29418=>7034,\n29414=>7035,\n29411=>7036,\n29573=>7037,\n29644=>7038,\n29634=>7039,\n29640=>7040,\n29637=>7041,\n29625=>7042,\n29622=>7043,\n29621=>7044,\n29620=>7045,\n29675=>7046,\n29631=>7047,\n29639=>7048,\n29630=>7049,\n29635=>7050,\n29638=>7051,\n29624=>7052,\n29643=>7053,\n29932=>7054,\n29934=>7055,\n29998=>7056,\n30023=>7057,\n30024=>7058,\n30119=>7059,\n30122=>7060,\n30329=>7061,\n30404=>7062,\n30472=>7063,\n30467=>7064,\n30468=>7065,\n30469=>7066,\n30474=>7067,\n30455=>7068,\n30459=>7069,\n30458=>7070,\n30695=>7071,\n30696=>7072,\n30726=>7073,\n30737=>7074,\n30738=>7075,\n30725=>7076,\n30736=>7077,\n30735=>7078,\n30734=>7079,\n30729=>7080,\n58095=>7080,\n30723=>7081,\n30739=>7082,\n31050=>7083,\n31052=>7084,\n31051=>7085,\n31045=>7086,\n31044=>7087,\n31189=>7088,\n31181=>7089,\n31183=>7090,\n31190=>7091,\n31182=>7092,\n31360=>7093,\n31358=>7094,\n31441=>7095,\n31488=>7096,\n31489=>7097,\n31866=>7098,\n31864=>7099,\n31865=>7100,\n31871=>7101,\n31872=>7102,\n31873=>7103,\n32003=>7104,\n32008=>7105,\n32001=>7106,\n32600=>7107,\n32657=>7108,\n32653=>7109,\n32702=>7110,\n32775=>7111,\n32782=>7112,\n32783=>7113,\n32788=>7114,\n32823=>7115,\n32984=>7116,\n32967=>7117,\n32992=>7118,\n32977=>7119,\n32968=>7120,\n32962=>7121,\n32976=>7122,\n32965=>7123,\n32995=>7124,\n32985=>7125,\n32988=>7126,\n32970=>7127,\n32981=>7128,\n32969=>7129,\n32975=>7130,\n32983=>7131,\n32998=>7132,\n32973=>7133,\n33279=>7134,\n33313=>7135,\n33428=>7136,\n33497=>7137,\n33534=>7138,\n33529=>7139,\n33543=>7140,\n33512=>7141,\n33536=>7142,\n33493=>7143,\n33594=>7144,\n33515=>7145,\n33494=>7146,\n33524=>7147,\n33516=>7148,\n33505=>7149,\n33522=>7150,\n33525=>7151,\n33548=>7152,\n33531=>7153,\n33526=>7154,\n33520=>7155,\n33514=>7156,\n33508=>7157,\n33504=>7158,\n33530=>7159,\n33523=>7160,\n33517=>7161,\n34423=>7162,\n34420=>7163,\n34428=>7164,\n34419=>7165,\n34881=>7166,\n34894=>7167,\n34919=>7168,\n34922=>7169,\n34921=>7170,\n35283=>7171,\n35332=>7172,\n35335=>7173,\n36210=>7174,\n36835=>7175,\n36833=>7176,\n36846=>7177,\n36832=>7178,\n37105=>7179,\n37053=>7180,\n37055=>7181,\n37077=>7182,\n37061=>7183,\n37054=>7184,\n37063=>7185,\n37067=>7186,\n37064=>7187,\n37332=>7188,\n60294=>7188,\n37331=>7189,\n38484=>7190,\n38479=>7191,\n38481=>7192,\n38483=>7193,\n38474=>7194,\n38478=>7195,\n20510=>7196,\n20485=>7197,\n20487=>7198,\n20499=>7199,\n20514=>7200,\n20528=>7201,\n20507=>7202,\n20469=>7203,\n20468=>7204,\n20531=>7205,\n20535=>7206,\n20524=>7207,\n20470=>7208,\n20471=>7209,\n20503=>7210,\n20508=>7211,\n20512=>7212,\n20519=>7213,\n20533=>7214,\n20527=>7215,\n20529=>7216,\n20494=>7217,\n20826=>7218,\n20884=>7219,\n20883=>7220,\n20938=>7221,\n20932=>7222,\n20933=>7223,\n20936=>7224,\n20942=>7225,\n21089=>7226,\n21082=>7227,\n21074=>7228,\n21086=>7229,\n21087=>7230,\n21077=>7231,\n21090=>7232,\n21197=>7233,\n21262=>7234,\n21406=>7235,\n21798=>7236,\n21730=>7237,\n21783=>7238,\n21778=>7239,\n21735=>7240,\n21747=>7241,\n21732=>7242,\n21786=>7243,\n21759=>7244,\n21764=>7245,\n21768=>7246,\n21739=>7247,\n21777=>7248,\n21765=>7249,\n21745=>7250,\n21770=>7251,\n21755=>7252,\n21751=>7253,\n21752=>7254,\n21728=>7255,\n21774=>7256,\n21763=>7257,\n21771=>7258,\n22273=>7259,\n22274=>7260,\n22476=>7261,\n22578=>7262,\n22485=>7263,\n22482=>7264,\n22458=>7265,\n22470=>7266,\n22461=>7267,\n22460=>7268,\n22456=>7269,\n22454=>7270,\n22463=>7271,\n22471=>7272,\n22480=>7273,\n22457=>7274,\n22465=>7275,\n22798=>7276,\n22858=>7277,\n23065=>7278,\n23062=>7279,\n23085=>7280,\n23086=>7281,\n23061=>7282,\n23055=>7283,\n23063=>7284,\n23050=>7285,\n23070=>7286,\n23091=>7287,\n23404=>7288,\n23463=>7289,\n23469=>7290,\n23468=>7291,\n23555=>7292,\n23638=>7293,\n23636=>7294,\n23788=>7295,\n23807=>7296,\n23790=>7297,\n23793=>7298,\n23799=>7299,\n23808=>7300,\n23801=>7301,\n24105=>7302,\n24104=>7303,\n24232=>7304,\n24238=>7305,\n24234=>7306,\n24236=>7307,\n24371=>7308,\n24368=>7309,\n24423=>7310,\n24669=>7311,\n24666=>7312,\n24679=>7313,\n24641=>7314,\n24738=>7315,\n24712=>7316,\n24704=>7317,\n24722=>7318,\n24705=>7319,\n24733=>7320,\n24707=>7321,\n24725=>7322,\n24731=>7323,\n24727=>7324,\n24711=>7325,\n24732=>7326,\n24718=>7327,\n25113=>7328,\n25158=>7329,\n25330=>7330,\n25360=>7331,\n25430=>7332,\n25388=>7333,\n25412=>7334,\n25413=>7335,\n25398=>7336,\n25411=>7337,\n25572=>7338,\n25401=>7339,\n25419=>7340,\n25418=>7341,\n25404=>7342,\n25385=>7343,\n25409=>7344,\n25396=>7345,\n25432=>7346,\n25428=>7347,\n25433=>7348,\n25389=>7349,\n25415=>7350,\n25395=>7351,\n25434=>7352,\n25425=>7353,\n25400=>7354,\n25431=>7355,\n25408=>7356,\n25416=>7357,\n25930=>7358,\n25926=>7359,\n26054=>7360,\n26051=>7361,\n26052=>7362,\n26050=>7363,\n26186=>7364,\n26207=>7365,\n26183=>7366,\n26193=>7367,\n26386=>7368,\n26387=>7369,\n26655=>7370,\n26650=>7371,\n26697=>7372,\n26674=>7373,\n26675=>7374,\n26683=>7375,\n26699=>7376,\n26703=>7377,\n26646=>7378,\n26673=>7379,\n26652=>7380,\n26677=>7381,\n26667=>7382,\n26669=>7383,\n26671=>7384,\n26702=>7385,\n26692=>7386,\n26676=>7387,\n26653=>7388,\n26642=>7389,\n26644=>7390,\n26662=>7391,\n26664=>7392,\n26670=>7393,\n26701=>7394,\n26682=>7395,\n26661=>7396,\n26656=>7397,\n27436=>7398,\n27439=>7399,\n27437=>7400,\n27441=>7401,\n27444=>7402,\n27501=>7403,\n32898=>7404,\n27528=>7405,\n27622=>7406,\n27620=>7407,\n27624=>7408,\n27619=>7409,\n27618=>7410,\n27623=>7411,\n27685=>7412,\n28026=>7413,\n28003=>7414,\n28004=>7415,\n28022=>7416,\n27917=>7417,\n28001=>7418,\n28050=>7419,\n27992=>7420,\n28002=>7421,\n28013=>7422,\n28015=>7423,\n28049=>7424,\n28045=>7425,\n28143=>7426,\n28031=>7427,\n28038=>7428,\n27998=>7429,\n28007=>7430,\n59078=>7430,\n28000=>7431,\n28055=>7432,\n28016=>7433,\n28028=>7434,\n27999=>7435,\n28034=>7436,\n28056=>7437,\n27951=>7438,\n28008=>7439,\n28043=>7440,\n28030=>7441,\n28032=>7442,\n28036=>7443,\n27926=>7444,\n28035=>7445,\n28027=>7446,\n28029=>7447,\n28021=>7448,\n28048=>7449,\n28892=>7450,\n28883=>7451,\n28881=>7452,\n28893=>7453,\n28875=>7454,\n32569=>7455,\n28898=>7456,\n28887=>7457,\n28882=>7458,\n28894=>7459,\n28896=>7460,\n28884=>7461,\n28877=>7462,\n28869=>7463,\n28870=>7464,\n28871=>7465,\n28890=>7466,\n28878=>7467,\n28897=>7468,\n29250=>7469,\n29304=>7470,\n29303=>7471,\n29302=>7472,\n29440=>7473,\n29434=>7474,\n29428=>7475,\n29438=>7476,\n29430=>7477,\n29427=>7478,\n29435=>7479,\n29441=>7480,\n29651=>7481,\n29657=>7482,\n29669=>7483,\n29654=>7484,\n29628=>7485,\n29671=>7486,\n29667=>7487,\n29673=>7488,\n29660=>7489,\n29650=>7490,\n29659=>7491,\n29652=>7492,\n29661=>7493,\n29658=>7494,\n29655=>7495,\n29656=>7496,\n29672=>7497,\n29918=>7498,\n29919=>7499,\n29940=>7500,\n29941=>7501,\n29985=>7502,\n30043=>7503,\n30047=>7504,\n30128=>7505,\n30145=>7506,\n30139=>7507,\n30148=>7508,\n30144=>7509,\n30143=>7510,\n30134=>7511,\n30138=>7512,\n30346=>7513,\n30409=>7514,\n30493=>7515,\n30491=>7516,\n30480=>7517,\n30483=>7518,\n30482=>7519,\n30499=>7520,\n30481=>7521,\n30485=>7522,\n30489=>7523,\n30490=>7524,\n30498=>7525,\n30503=>7526,\n30755=>7527,\n30764=>7528,\n30754=>7529,\n30773=>7530,\n30767=>7531,\n30760=>7532,\n30766=>7533,\n30763=>7534,\n30753=>7535,\n30761=>7536,\n30771=>7537,\n30762=>7538,\n30769=>7539,\n31060=>7540,\n31067=>7541,\n31055=>7542,\n31068=>7543,\n31059=>7544,\n31058=>7545,\n31057=>7546,\n31211=>7547,\n31212=>7548,\n31200=>7549,\n31214=>7550,\n31213=>7551,\n31210=>7552,\n31196=>7553,\n31198=>7554,\n31197=>7555,\n31366=>7556,\n31369=>7557,\n31365=>7558,\n31371=>7559,\n31372=>7560,\n31370=>7561,\n31367=>7562,\n31448=>7563,\n31504=>7564,\n31492=>7565,\n31507=>7566,\n31493=>7567,\n31503=>7568,\n31496=>7569,\n31498=>7570,\n31502=>7571,\n31497=>7572,\n31506=>7573,\n31876=>7574,\n31889=>7575,\n31882=>7576,\n31884=>7577,\n31880=>7578,\n31885=>7579,\n31877=>7580,\n32030=>7581,\n32029=>7582,\n32017=>7583,\n32014=>7584,\n32024=>7585,\n32022=>7586,\n32019=>7587,\n32031=>7588,\n32018=>7589,\n32015=>7590,\n32012=>7591,\n32604=>7592,\n32609=>7593,\n32606=>7594,\n32608=>7595,\n32605=>7596,\n32603=>7597,\n32662=>7598,\n32658=>7599,\n32707=>7600,\n32706=>7601,\n32704=>7602,\n32790=>7603,\n32830=>7604,\n32825=>7605,\n33018=>7606,\n33010=>7607,\n33017=>7608,\n33013=>7609,\n33025=>7610,\n33019=>7611,\n33024=>7612,\n33281=>7613,\n33327=>7614,\n33317=>7615,\n33587=>7616,\n33581=>7617,\n33604=>7618,\n33561=>7619,\n33617=>7620,\n33573=>7621,\n33622=>7622,\n33599=>7623,\n33601=>7624,\n33574=>7625,\n33564=>7626,\n33570=>7627,\n33602=>7628,\n33614=>7629,\n33563=>7630,\n33578=>7631,\n33544=>7632,\n33596=>7633,\n33613=>7634,\n33558=>7635,\n33572=>7636,\n33568=>7637,\n33591=>7638,\n33583=>7639,\n33577=>7640,\n33607=>7641,\n33605=>7642,\n33612=>7643,\n33619=>7644,\n33566=>7645,\n33580=>7646,\n33611=>7647,\n33575=>7648,\n33608=>7649,\n34387=>7650,\n34386=>7651,\n34466=>7652,\n34472=>7653,\n34454=>7654,\n34445=>7655,\n34449=>7656,\n34462=>7657,\n34439=>7658,\n34455=>7659,\n34438=>7660,\n34443=>7661,\n34458=>7662,\n34437=>7663,\n34469=>7664,\n34457=>7665,\n34465=>7666,\n34471=>7667,\n34453=>7668,\n34456=>7669,\n34446=>7670,\n34461=>7671,\n34448=>7672,\n34452=>7673,\n34883=>7674,\n34884=>7675,\n34925=>7676,\n34933=>7677,\n34934=>7678,\n34930=>7679,\n34944=>7680,\n34929=>7681,\n34943=>7682,\n34927=>7683,\n34947=>7684,\n34942=>7685,\n34932=>7686,\n34940=>7687,\n35346=>7688,\n35911=>7689,\n35927=>7690,\n35963=>7691,\n36004=>7692,\n36003=>7693,\n36214=>7694,\n36216=>7695,\n36277=>7696,\n36279=>7697,\n36278=>7698,\n36561=>7699,\n36563=>7700,\n36862=>7701,\n36853=>7702,\n36866=>7703,\n36863=>7704,\n36859=>7705,\n36868=>7706,\n36860=>7707,\n36854=>7708,\n37078=>7709,\n37088=>7710,\n37081=>7711,\n37082=>7712,\n37091=>7713,\n37087=>7714,\n37093=>7715,\n37080=>7716,\n37083=>7717,\n37079=>7718,\n37084=>7719,\n37092=>7720,\n37200=>7721,\n37198=>7722,\n37199=>7723,\n37333=>7724,\n37346=>7725,\n37338=>7726,\n38492=>7727,\n38495=>7728,\n38588=>7729,\n39139=>7730,\n12221=>7731,\n39647=>7731,\n12223=>7732,\n39727=>7732,\n20095=>7733,\n20592=>7734,\n20586=>7735,\n20577=>7736,\n20574=>7737,\n20576=>7738,\n20563=>7739,\n20555=>7740,\n20573=>7741,\n20594=>7742,\n20552=>7743,\n20557=>7744,\n20545=>7745,\n20571=>7746,\n20554=>7747,\n20578=>7748,\n20501=>7749,\n20549=>7750,\n20575=>7751,\n20585=>7752,\n20587=>7753,\n20579=>7754,\n20580=>7755,\n20550=>7756,\n20544=>7757,\n20590=>7758,\n20595=>7759,\n20567=>7760,\n20561=>7761,\n20944=>7762,\n21099=>7763,\n21101=>7764,\n21100=>7765,\n21102=>7766,\n21206=>7767,\n21203=>7768,\n21293=>7769,\n21404=>7770,\n21877=>7771,\n21878=>7772,\n21820=>7773,\n21837=>7774,\n21840=>7775,\n21812=>7776,\n21802=>7777,\n21841=>7778,\n21858=>7779,\n21814=>7780,\n21813=>7781,\n21808=>7782,\n21842=>7783,\n21829=>7784,\n21772=>7785,\n21810=>7786,\n21861=>7787,\n21838=>7788,\n21817=>7789,\n21832=>7790,\n21805=>7791,\n21819=>7792,\n21824=>7793,\n21835=>7794,\n22282=>7795,\n22279=>7796,\n22523=>7797,\n22548=>7798,\n22498=>7799,\n22518=>7800,\n22492=>7801,\n22516=>7802,\n22528=>7803,\n22509=>7804,\n22525=>7805,\n22536=>7806,\n22520=>7807,\n22539=>7808,\n22515=>7809,\n22479=>7810,\n22535=>7811,\n22510=>7812,\n22499=>7813,\n22514=>7814,\n22501=>7815,\n22508=>7816,\n22497=>7817,\n22542=>7818,\n22524=>7819,\n22544=>7820,\n22503=>7821,\n22529=>7822,\n22540=>7823,\n22513=>7824,\n22505=>7825,\n22512=>7826,\n22541=>7827,\n22532=>7828,\n22876=>7829,\n23136=>7830,\n23128=>7831,\n23125=>7832,\n23143=>7833,\n60437=>7833,\n23134=>7834,\n23096=>7835,\n23093=>7836,\n23149=>7837,\n23120=>7838,\n23135=>7839,\n23141=>7840,\n23148=>7841,\n23123=>7842,\n23140=>7843,\n23127=>7844,\n23107=>7845,\n23133=>7846,\n23122=>7847,\n23108=>7848,\n23131=>7849,\n23112=>7850,\n23182=>7851,\n23102=>7852,\n23117=>7853,\n23097=>7854,\n23116=>7855,\n23152=>7856,\n23145=>7857,\n23111=>7858,\n23121=>7859,\n23126=>7860,\n23106=>7861,\n23132=>7862,\n23410=>7863,\n23406=>7864,\n23489=>7865,\n23488=>7866,\n23641=>7867,\n23838=>7868,\n23819=>7869,\n23837=>7870,\n23834=>7871,\n23840=>7872,\n23820=>7873,\n23848=>7874,\n23821=>7875,\n23846=>7876,\n23845=>7877,\n23823=>7878,\n23856=>7879,\n23826=>7880,\n23843=>7881,\n23839=>7882,\n23854=>7883,\n24126=>7884,\n24116=>7885,\n24241=>7886,\n24244=>7887,\n24249=>7888,\n24242=>7889,\n24243=>7890,\n24374=>7891,\n24376=>7892,\n24475=>7893,\n24470=>7894,\n24479=>7895,\n24714=>7896,\n24720=>7897,\n24710=>7898,\n24766=>7899,\n24752=>7900,\n24762=>7901,\n24787=>7902,\n24788=>7903,\n24783=>7904,\n24804=>7905,\n24793=>7906,\n24797=>7907,\n24776=>7908,\n24753=>7909,\n24795=>7910,\n24759=>7911,\n24778=>7912,\n24767=>7913,\n24771=>7914,\n24781=>7915,\n24768=>7916,\n25394=>7917,\n25445=>7918,\n25482=>7919,\n25474=>7920,\n25469=>7921,\n25533=>7922,\n25502=>7923,\n25517=>7924,\n25501=>7925,\n25495=>7926,\n25515=>7927,\n25486=>7928,\n25455=>7929,\n25479=>7930,\n25488=>7931,\n25454=>7932,\n25519=>7933,\n25461=>7934,\n25500=>7935,\n25453=>7936,\n25518=>7937,\n25468=>7938,\n25508=>7939,\n25403=>7940,\n25503=>7941,\n25464=>7942,\n25477=>7943,\n25473=>7944,\n25489=>7945,\n25485=>7946,\n25456=>7947,\n25939=>7948,\n26061=>7949,\n26213=>7950,\n26209=>7951,\n26203=>7952,\n26201=>7953,\n26204=>7954,\n26210=>7955,\n26392=>7956,\n26745=>7957,\n26759=>7958,\n26768=>7959,\n26780=>7960,\n26733=>7961,\n26734=>7962,\n26798=>7963,\n26795=>7964,\n26966=>7965,\n26735=>7966,\n26787=>7967,\n26796=>7968,\n26793=>7969,\n26741=>7970,\n26740=>7971,\n26802=>7972,\n26767=>7973,\n26743=>7974,\n26770=>7975,\n26748=>7976,\n26731=>7977,\n26738=>7978,\n26794=>7979,\n26752=>7980,\n26737=>7981,\n26750=>7982,\n26779=>7983,\n26774=>7984,\n26763=>7985,\n26784=>7986,\n26761=>7987,\n26788=>7988,\n26744=>7989,\n26747=>7990,\n26769=>7991,\n26764=>7992,\n26762=>7993,\n26749=>7994,\n27446=>7995,\n27443=>7996,\n27447=>7997,\n27448=>7998,\n27537=>7999,\n27535=>8000,\n27533=>8001,\n27534=>8002,\n27532=>8003,\n27690=>8004,\n28096=>8005,\n28075=>8006,\n28084=>8007,\n28083=>8008,\n28276=>8009,\n28076=>8010,\n28137=>8011,\n28130=>8012,\n28087=>8013,\n28150=>8014,\n28116=>8015,\n28160=>8016,\n28104=>8017,\n28128=>8018,\n28127=>8019,\n28118=>8020,\n28094=>8021,\n28133=>8022,\n28124=>8023,\n28125=>8024,\n28123=>8025,\n28148=>8026,\n28106=>8027,\n28093=>8028,\n28141=>8029,\n28144=>8030,\n28090=>8031,\n28117=>8032,\n28098=>8033,\n28111=>8034,\n28105=>8035,\n28112=>8036,\n28146=>8037,\n28115=>8038,\n28157=>8039,\n28119=>8040,\n28109=>8041,\n28131=>8042,\n28091=>8043,\n28922=>8044,\n28941=>8045,\n28919=>8046,\n28951=>8047,\n28916=>8048,\n28940=>8049,\n28912=>8050,\n28932=>8051,\n28915=>8052,\n28944=>8053,\n28924=>8054,\n28927=>8055,\n28934=>8056,\n28947=>8057,\n28928=>8058,\n28920=>8059,\n28918=>8060,\n28939=>8061,\n28930=>8062,\n28942=>8063,\n29310=>8064,\n29307=>8065,\n29308=>8066,\n29311=>8067,\n29469=>8068,\n29463=>8069,\n29447=>8070,\n29457=>8071,\n29464=>8072,\n29450=>8073,\n29448=>8074,\n29439=>8075,\n29455=>8076,\n29470=>8077,\n29576=>8078,\n29686=>8079,\n29688=>8080,\n29685=>8081,\n29700=>8082,\n29697=>8083,\n29693=>8084,\n29703=>8085,\n29696=>8086,\n29690=>8087,\n29692=>8088,\n29695=>8089,\n29708=>8090,\n29707=>8091,\n29684=>8092,\n29704=>8093,\n30052=>8094,\n30051=>8095,\n30158=>8096,\n30162=>8097,\n30159=>8098,\n30155=>8099,\n30156=>8100,\n30161=>8101,\n30160=>8102,\n30351=>8103,\n30345=>8104,\n30419=>8105,\n30521=>8106,\n30511=>8107,\n30509=>8108,\n30513=>8109,\n30514=>8110,\n30516=>8111,\n30515=>8112,\n30525=>8113,\n30501=>8114,\n30523=>8115,\n30517=>8116,\n30792=>8117,\n30802=>8118,\n30793=>8119,\n30797=>8120,\n30794=>8121,\n30796=>8122,\n30758=>8123,\n30789=>8124,\n30800=>8125,\n31076=>8126,\n31079=>8127,\n31081=>8128,\n31082=>8129,\n31075=>8130,\n31083=>8131,\n31073=>8132,\n31163=>8133,\n31226=>8134,\n31224=>8135,\n31222=>8136,\n31223=>8137,\n31375=>8138,\n31380=>8139,\n31376=>8140,\n31541=>8141,\n31547=>8142,\n31540=>8143,\n31525=>8144,\n31536=>8145,\n31522=>8146,\n31524=>8147,\n31539=>8148,\n31512=>8149,\n31530=>8150,\n31517=>8151,\n31537=>8152,\n31531=>8153,\n31533=>8154,\n31535=>8155,\n31538=>8156,\n31544=>8157,\n31514=>8158,\n31523=>8159,\n31892=>8160,\n31896=>8161,\n31894=>8162,\n31907=>8163,\n32053=>8164,\n32061=>8165,\n32056=>8166,\n32054=>8167,\n32058=>8168,\n32069=>8169,\n32044=>8170,\n32041=>8171,\n32065=>8172,\n32071=>8173,\n32062=>8174,\n32063=>8175,\n32074=>8176,\n32059=>8177,\n32040=>8178,\n32611=>8179,\n32661=>8180,\n32668=>8181,\n32669=>8182,\n32667=>8183,\n32714=>8184,\n32715=>8185,\n32717=>8186,\n32720=>8187,\n32721=>8188,\n32711=>8189,\n32719=>8190,\n32713=>8191,\n32799=>8192,\n32798=>8193,\n32795=>8194,\n32839=>8195,\n32835=>8196,\n32840=>8197,\n33048=>8198,\n33061=>8199,\n33049=>8200,\n33051=>8201,\n33069=>8202,\n33055=>8203,\n33068=>8204,\n33054=>8205,\n33057=>8206,\n33045=>8207,\n33063=>8208,\n33053=>8209,\n33058=>8210,\n33297=>8211,\n33336=>8212,\n33331=>8213,\n33338=>8214,\n33332=>8215,\n33330=>8216,\n33396=>8217,\n33680=>8218,\n33699=>8219,\n33704=>8220,\n33677=>8221,\n33658=>8222,\n33651=>8223,\n33700=>8224,\n33652=>8225,\n33679=>8226,\n33665=>8227,\n33685=>8228,\n33689=>8229,\n33653=>8230,\n33684=>8231,\n33705=>8232,\n33661=>8233,\n33667=>8234,\n33676=>8235,\n33693=>8236,\n33691=>8237,\n33706=>8238,\n33675=>8239,\n33662=>8240,\n33701=>8241,\n33711=>8242,\n33672=>8243,\n33687=>8244,\n33712=>8245,\n33663=>8246,\n33702=>8247,\n33671=>8248,\n33710=>8249,\n33654=>8250,\n34393=>8251,\n34390=>8252,\n34495=>8253,\n34487=>8254,\n34498=>8255,\n34497=>8256,\n34501=>8257,\n34490=>8258,\n34480=>8259,\n34504=>8260,\n34489=>8261,\n34483=>8262,\n34488=>8263,\n34508=>8264,\n34484=>8265,\n34491=>8266,\n34492=>8267,\n34499=>8268,\n34493=>8269,\n34494=>8270,\n34898=>8271,\n34953=>8272,\n34965=>8273,\n34984=>8274,\n34978=>8275,\n34986=>8276,\n34970=>8277,\n34961=>8278,\n34977=>8279,\n34975=>8280,\n34968=>8281,\n34983=>8282,\n34969=>8283,\n34971=>8284,\n34967=>8285,\n34980=>8286,\n34988=>8287,\n34956=>8288,\n34963=>8289,\n34958=>8290,\n35202=>8291,\n35286=>8292,\n35289=>8293,\n35285=>8294,\n35376=>8295,\n35367=>8296,\n35372=>8297,\n35358=>8298,\n35897=>8299,\n35899=>8300,\n35932=>8301,\n35933=>8302,\n35965=>8303,\n36005=>8304,\n36221=>8305,\n36219=>8306,\n36217=>8307,\n36284=>8308,\n36290=>8309,\n36281=>8310,\n36287=>8311,\n36289=>8312,\n36568=>8313,\n36574=>8314,\n36573=>8315,\n36572=>8316,\n36567=>8317,\n36576=>8318,\n36577=>8319,\n36900=>8320,\n36875=>8321,\n36881=>8322,\n36892=>8323,\n36876=>8324,\n36897=>8325,\n37103=>8326,\n37098=>8327,\n37104=>8328,\n37108=>8329,\n37106=>8330,\n37107=>8331,\n37076=>8332,\n37099=>8333,\n37100=>8334,\n37097=>8335,\n37206=>8336,\n37208=>8337,\n37210=>8338,\n37203=>8339,\n37205=>8340,\n37356=>8341,\n37364=>8342,\n37361=>8343,\n37363=>8344,\n37368=>8345,\n37348=>8346,\n37369=>8347,\n37354=>8348,\n37355=>8349,\n37367=>8350,\n37352=>8351,\n37358=>8352,\n38266=>8353,\n38278=>8354,\n38280=>8355,\n38524=>8356,\n38509=>8357,\n38507=>8358,\n38513=>8359,\n38511=>8360,\n38591=>8361,\n38762=>8362,\n38916=>8363,\n39141=>8364,\n39319=>8365,\n20635=>8366,\n20629=>8367,\n20628=>8368,\n20638=>8369,\n20619=>8370,\n20643=>8371,\n20611=>8372,\n20620=>8373,\n20622=>8374,\n20637=>8375,\n20584=>8376,\n20636=>8377,\n20626=>8378,\n20610=>8379,\n20615=>8380,\n20831=>8381,\n20948=>8382,\n21266=>8383,\n21265=>8384,\n21412=>8385,\n21415=>8386,\n21905=>8387,\n21928=>8388,\n21925=>8389,\n21933=>8390,\n21879=>8391,\n22085=>8392,\n21922=>8393,\n21907=>8394,\n21896=>8395,\n21903=>8396,\n21941=>8397,\n21889=>8398,\n21923=>8399,\n21906=>8400,\n21924=>8401,\n21885=>8402,\n21900=>8403,\n21926=>8404,\n21887=>8405,\n21909=>8406,\n21921=>8407,\n21902=>8408,\n22284=>8409,\n22569=>8410,\n22583=>8411,\n22553=>8412,\n22558=>8413,\n22567=>8414,\n22563=>8415,\n22568=>8416,\n22517=>8417,\n22600=>8418,\n22565=>8419,\n22556=>8420,\n22555=>8421,\n22579=>8422,\n22591=>8423,\n22582=>8424,\n22574=>8425,\n22585=>8426,\n22584=>8427,\n22573=>8428,\n22572=>8429,\n22587=>8430,\n22881=>8431,\n23215=>8432,\n23188=>8433,\n23199=>8434,\n23162=>8435,\n23202=>8436,\n23198=>8437,\n23160=>8438,\n23206=>8439,\n23164=>8440,\n23205=>8441,\n23212=>8442,\n23189=>8443,\n23214=>8444,\n23095=>8445,\n23172=>8446,\n23178=>8447,\n23191=>8448,\n23171=>8449,\n23179=>8450,\n23209=>8451,\n23163=>8452,\n23165=>8453,\n23180=>8454,\n23196=>8455,\n23183=>8456,\n23187=>8457,\n23197=>8458,\n23530=>8459,\n23501=>8460,\n23499=>8461,\n23508=>8462,\n23505=>8463,\n23498=>8464,\n23502=>8465,\n23564=>8466,\n23600=>8467,\n23863=>8468,\n23875=>8469,\n23915=>8470,\n23873=>8471,\n23883=>8472,\n23871=>8473,\n23861=>8474,\n23889=>8475,\n23886=>8476,\n23893=>8477,\n23859=>8478,\n23866=>8479,\n23890=>8480,\n23869=>8481,\n23857=>8482,\n23897=>8483,\n23874=>8484,\n23865=>8485,\n23881=>8486,\n23864=>8487,\n23868=>8488,\n23858=>8489,\n23862=>8490,\n23872=>8491,\n23877=>8492,\n24132=>8493,\n24129=>8494,\n24408=>8495,\n57673=>8495,\n24486=>8496,\n24485=>8497,\n24491=>8498,\n24777=>8499,\n24761=>8500,\n24780=>8501,\n24802=>8502,\n24782=>8503,\n24772=>8504,\n24852=>8505,\n24818=>8506,\n24842=>8507,\n24854=>8508,\n24837=>8509,\n24821=>8510,\n24851=>8511,\n24824=>8512,\n24828=>8513,\n24830=>8514,\n24769=>8515,\n24835=>8516,\n24856=>8517,\n24861=>8518,\n24848=>8519,\n24831=>8520,\n24836=>8521,\n24843=>8522,\n25162=>8523,\n25492=>8524,\n25521=>8525,\n25520=>8526,\n25550=>8527,\n25573=>8528,\n25576=>8529,\n25583=>8530,\n25539=>8531,\n25757=>8532,\n25587=>8533,\n25546=>8534,\n25568=>8535,\n25590=>8536,\n25557=>8537,\n25586=>8538,\n25589=>8539,\n25697=>8540,\n25567=>8541,\n25534=>8542,\n25565=>8543,\n25564=>8544,\n25540=>8545,\n25560=>8546,\n25555=>8547,\n25538=>8548,\n25543=>8549,\n25548=>8550,\n25547=>8551,\n25544=>8552,\n25584=>8553,\n25559=>8554,\n25561=>8555,\n25906=>8556,\n25959=>8557,\n25962=>8558,\n25956=>8559,\n25948=>8560,\n25960=>8561,\n25957=>8562,\n25996=>8563,\n26013=>8564,\n26014=>8565,\n26030=>8566,\n26064=>8567,\n26066=>8568,\n26236=>8569,\n26220=>8570,\n26235=>8571,\n26240=>8572,\n26225=>8573,\n26233=>8574,\n26218=>8575,\n26226=>8576,\n26369=>8577,\n26892=>8578,\n26835=>8579,\n26884=>8580,\n26844=>8581,\n26922=>8582,\n26860=>8583,\n26858=>8584,\n26865=>8585,\n26895=>8586,\n26838=>8587,\n26871=>8588,\n26859=>8589,\n26852=>8590,\n26870=>8591,\n26899=>8592,\n26896=>8593,\n26867=>8594,\n26849=>8595,\n26887=>8596,\n26828=>8597,\n26888=>8598,\n26992=>8599,\n26804=>8600,\n26897=>8601,\n26863=>8602,\n26822=>8603,\n26900=>8604,\n26872=>8605,\n26832=>8606,\n26877=>8607,\n26876=>8608,\n26856=>8609,\n26891=>8610,\n26890=>8611,\n26903=>8612,\n26830=>8613,\n26824=>8614,\n26845=>8615,\n26846=>8616,\n26854=>8617,\n26868=>8618,\n26833=>8619,\n26886=>8620,\n26836=>8621,\n26857=>8622,\n26901=>8623,\n26917=>8624,\n26823=>8625,\n27449=>8626,\n27451=>8627,\n27455=>8628,\n27452=>8629,\n27540=>8630,\n27543=>8631,\n27545=>8632,\n27541=>8633,\n27581=>8634,\n27632=>8635,\n27634=>8636,\n27635=>8637,\n27696=>8638,\n28156=>8639,\n28230=>8640,\n28231=>8641,\n28191=>8642,\n28233=>8643,\n28296=>8644,\n28220=>8645,\n28221=>8646,\n28229=>8647,\n28258=>8648,\n28203=>8649,\n28223=>8650,\n28225=>8651,\n28253=>8652,\n28275=>8653,\n28188=>8654,\n28211=>8655,\n28235=>8656,\n28224=>8657,\n28241=>8658,\n28219=>8659,\n28163=>8660,\n28206=>8661,\n28254=>8662,\n28264=>8663,\n28252=>8664,\n28257=>8665,\n28209=>8666,\n28200=>8667,\n28256=>8668,\n28273=>8669,\n28267=>8670,\n28217=>8671,\n28194=>8672,\n28208=>8673,\n28243=>8674,\n28261=>8675,\n28199=>8676,\n28280=>8677,\n28260=>8678,\n28279=>8679,\n28245=>8680,\n28281=>8681,\n28242=>8682,\n28262=>8683,\n28213=>8684,\n28214=>8685,\n28250=>8686,\n28960=>8687,\n28958=>8688,\n28975=>8689,\n28923=>8690,\n28974=>8691,\n28977=>8692,\n28963=>8693,\n28965=>8694,\n28962=>8695,\n28978=>8696,\n28959=>8697,\n28968=>8698,\n28986=>8699,\n28955=>8700,\n29259=>8701,\n29274=>8702,\n29320=>8703,\n29321=>8704,\n29318=>8705,\n29317=>8706,\n29323=>8707,\n29458=>8708,\n29451=>8709,\n29488=>8710,\n29474=>8711,\n29489=>8712,\n29491=>8713,\n29479=>8714,\n29490=>8715,\n29485=>8716,\n29478=>8717,\n29475=>8718,\n29493=>8719,\n29452=>8720,\n29742=>8721,\n29740=>8722,\n29744=>8723,\n29739=>8724,\n29718=>8725,\n29722=>8726,\n29729=>8727,\n29741=>8728,\n29745=>8729,\n29732=>8730,\n29731=>8731,\n29725=>8732,\n29737=>8733,\n29728=>8734,\n29746=>8735,\n29947=>8736,\n29999=>8737,\n30063=>8738,\n30060=>8739,\n30183=>8740,\n30170=>8741,\n30177=>8742,\n30182=>8743,\n30173=>8744,\n30175=>8745,\n30180=>8746,\n30167=>8747,\n30357=>8748,\n30354=>8749,\n30426=>8750,\n30534=>8751,\n30535=>8752,\n30532=>8753,\n30541=>8754,\n30533=>8755,\n30538=>8756,\n30542=>8757,\n30539=>8758,\n30540=>8759,\n30686=>8760,\n30700=>8761,\n30816=>8762,\n30820=>8763,\n30821=>8764,\n30812=>8765,\n30829=>8766,\n30833=>8767,\n30826=>8768,\n30830=>8769,\n30832=>8770,\n30825=>8771,\n30824=>8772,\n30814=>8773,\n30818=>8774,\n31092=>8775,\n31091=>8776,\n31090=>8777,\n31088=>8778,\n31234=>8779,\n31242=>8780,\n31235=>8781,\n31244=>8782,\n31236=>8783,\n31385=>8784,\n31462=>8785,\n31460=>8786,\n31562=>8787,\n31559=>8788,\n31556=>8789,\n31560=>8790,\n31564=>8791,\n31566=>8792,\n31552=>8793,\n31576=>8794,\n31557=>8795,\n31906=>8796,\n31902=>8797,\n31912=>8798,\n31905=>8799,\n32088=>8800,\n32111=>8801,\n32099=>8802,\n32083=>8803,\n32086=>8804,\n32103=>8805,\n32106=>8806,\n32079=>8807,\n32109=>8808,\n32092=>8809,\n32107=>8810,\n32082=>8811,\n32084=>8812,\n32105=>8813,\n32081=>8814,\n32095=>8815,\n32078=>8816,\n32574=>8817,\n32575=>8818,\n32613=>8819,\n32614=>8820,\n32674=>8821,\n32672=>8822,\n32673=>8823,\n32727=>8824,\n32849=>8825,\n32847=>8826,\n32848=>8827,\n33022=>8828,\n32980=>8829,\n33091=>8830,\n33098=>8831,\n33106=>8832,\n33103=>8833,\n33095=>8834,\n33085=>8835,\n33101=>8836,\n33082=>8837,\n33254=>8838,\n33262=>8839,\n33271=>8840,\n33272=>8841,\n33273=>8842,\n33284=>8843,\n33340=>8844,\n33341=>8845,\n33343=>8846,\n33397=>8847,\n33595=>8848,\n33743=>8849,\n60382=>8849,\n33785=>8850,\n33827=>8851,\n33728=>8852,\n33768=>8853,\n33810=>8854,\n33767=>8855,\n33764=>8856,\n33788=>8857,\n33782=>8858,\n33808=>8859,\n33734=>8860,\n33736=>8861,\n33771=>8862,\n33763=>8863,\n33727=>8864,\n33793=>8865,\n33757=>8866,\n33765=>8867,\n33752=>8868,\n33791=>8869,\n33761=>8870,\n33739=>8871,\n33742=>8872,\n33750=>8873,\n33781=>8874,\n33737=>8875,\n33801=>8876,\n33807=>8877,\n58332=>8877,\n33758=>8878,\n33809=>8879,\n33798=>8880,\n33730=>8881,\n33779=>8882,\n33749=>8883,\n33786=>8884,\n33735=>8885,\n33745=>8886,\n33770=>8887,\n33811=>8888,\n33690=>8889,\n33731=>8890,\n33772=>8891,\n33774=>8892,\n33732=>8893,\n33787=>8894,\n33751=>8895,\n33762=>8896,\n33819=>8897,\n33755=>8898,\n33790=>8899,\n34520=>8900,\n34530=>8901,\n34534=>8902,\n34515=>8903,\n34531=>8904,\n34522=>8905,\n34538=>8906,\n34525=>8907,\n34539=>8908,\n34524=>8909,\n34540=>8910,\n34537=>8911,\n34519=>8912,\n34536=>8913,\n34513=>8914,\n34888=>8915,\n34902=>8916,\n34901=>8917,\n35002=>8918,\n35031=>8919,\n35001=>8920,\n35000=>8921,\n35008=>8922,\n35006=>8923,\n34998=>8924,\n35004=>8925,\n34999=>8926,\n35005=>8927,\n34994=>8928,\n35073=>8929,\n35017=>8930,\n35221=>8931,\n35224=>8932,\n35223=>8933,\n35293=>8934,\n35290=>8935,\n35291=>8936,\n35406=>8937,\n35405=>8938,\n35385=>8939,\n35417=>8940,\n35392=>8941,\n35415=>8942,\n35416=>8943,\n35396=>8944,\n35397=>8945,\n35410=>8946,\n35400=>8947,\n35409=>8948,\n35402=>8949,\n35404=>8950,\n35407=>8951,\n35935=>8952,\n35969=>8953,\n35968=>8954,\n36026=>8955,\n36030=>8956,\n36016=>8957,\n36025=>8958,\n36021=>8959,\n36228=>8960,\n36224=>8961,\n36233=>8962,\n36312=>8963,\n36307=>8964,\n36301=>8965,\n36295=>8966,\n36310=>8967,\n36316=>8968,\n36303=>8969,\n36309=>8970,\n36313=>8971,\n36296=>8972,\n36311=>8973,\n36293=>8974,\n36591=>8975,\n36599=>8976,\n36602=>8977,\n36601=>8978,\n36582=>8979,\n36590=>8980,\n36581=>8981,\n36597=>8982,\n36583=>8983,\n36584=>8984,\n36598=>8985,\n36587=>8986,\n36593=>8987,\n36588=>8988,\n36596=>8989,\n36585=>8990,\n36909=>8991,\n36916=>8992,\n36911=>8993,\n37126=>8994,\n37164=>8995,\n37124=>8996,\n60367=>8996,\n37119=>8997,\n37116=>8998,\n37128=>8999,\n37113=>9000,\n37115=>9001,\n37121=>9002,\n37120=>9003,\n37127=>9004,\n37125=>9005,\n37123=>9006,\n37217=>9007,\n37220=>9008,\n37215=>9009,\n37218=>9010,\n37216=>9011,\n37377=>9012,\n37386=>9013,\n37413=>9014,\n37379=>9015,\n37402=>9016,\n37414=>9017,\n37391=>9018,\n37388=>9019,\n37376=>9020,\n37394=>9021,\n37375=>9022,\n37373=>9023,\n37382=>9024,\n37380=>9025,\n37415=>9026,\n37378=>9027,\n37404=>9028,\n37412=>9029,\n37401=>9030,\n37399=>9031,\n37381=>9032,\n37398=>9033,\n38267=>9034,\n38285=>9035,\n38284=>9036,\n38288=>9037,\n38535=>9038,\n38526=>9039,\n38536=>9040,\n38537=>9041,\n38531=>9042,\n38528=>9043,\n38594=>9044,\n38600=>9045,\n38595=>9046,\n38641=>9047,\n38640=>9048,\n38764=>9049,\n38768=>9050,\n38766=>9051,\n38919=>9052,\n39081=>9053,\n39147=>9054,\n40166=>9055,\n12235=>9056,\n40697=>9056,\n20099=>9057,\n20100=>9058,\n20150=>9059,\n20669=>9060,\n20671=>9061,\n20678=>9062,\n20654=>9063,\n20676=>9064,\n20682=>9065,\n20660=>9066,\n20680=>9067,\n20674=>9068,\n20656=>9069,\n20673=>9070,\n20666=>9071,\n20657=>9072,\n20683=>9073,\n20681=>9074,\n20662=>9075,\n20664=>9076,\n20951=>9077,\n21114=>9078,\n21112=>9079,\n21115=>9080,\n21116=>9081,\n21955=>9082,\n21979=>9083,\n21964=>9084,\n21968=>9085,\n21963=>9086,\n21962=>9087,\n21981=>9088,\n21952=>9089,\n64013=>9089,\n21972=>9090,\n21956=>9091,\n21993=>9092,\n21951=>9093,\n21970=>9094,\n21901=>9095,\n21967=>9096,\n21973=>9097,\n21986=>9098,\n21974=>9099,\n21960=>9100,\n22002=>9101,\n21965=>9102,\n21977=>9103,\n21954=>9104,\n22292=>9105,\n22611=>9106,\n22632=>9107,\n22628=>9108,\n22607=>9109,\n22605=>9110,\n22601=>9111,\n22639=>9112,\n22613=>9113,\n22606=>9114,\n22621=>9115,\n22617=>9116,\n22629=>9117,\n22619=>9118,\n22589=>9119,\n22627=>9120,\n22641=>9121,\n22780=>9122,\n23239=>9123,\n23236=>9124,\n23243=>9125,\n23226=>9126,\n23224=>9127,\n23217=>9128,\n23221=>9129,\n23216=>9130,\n23231=>9131,\n23240=>9132,\n23227=>9133,\n23238=>9134,\n23223=>9135,\n23232=>9136,\n23242=>9137,\n23220=>9138,\n23222=>9139,\n23245=>9140,\n23225=>9141,\n23184=>9142,\n23510=>9143,\n23512=>9144,\n23513=>9145,\n23583=>9146,\n23603=>9147,\n23921=>9148,\n23907=>9149,\n23882=>9150,\n23909=>9151,\n23922=>9152,\n23916=>9153,\n23902=>9154,\n23912=>9155,\n23911=>9156,\n23906=>9157,\n24048=>9158,\n24143=>9159,\n24142=>9160,\n24138=>9161,\n24141=>9162,\n24139=>9163,\n24261=>9164,\n24268=>9165,\n24262=>9166,\n24267=>9167,\n24263=>9168,\n24384=>9169,\n24495=>9170,\n24493=>9171,\n24823=>9172,\n24905=>9173,\n24906=>9174,\n24875=>9175,\n24901=>9176,\n24886=>9177,\n24882=>9178,\n24878=>9179,\n24902=>9180,\n24879=>9181,\n24911=>9182,\n24873=>9183,\n24896=>9184,\n25120=>9185,\n37224=>9186,\n25123=>9187,\n25125=>9188,\n25124=>9189,\n25541=>9190,\n25585=>9191,\n25579=>9192,\n25616=>9193,\n25618=>9194,\n25609=>9195,\n25632=>9196,\n25636=>9197,\n25651=>9198,\n25667=>9199,\n25631=>9200,\n25621=>9201,\n25624=>9202,\n25657=>9203,\n25655=>9204,\n25634=>9205,\n25635=>9206,\n25612=>9207,\n25638=>9208,\n25648=>9209,\n25640=>9210,\n25665=>9211,\n25653=>9212,\n25647=>9213,\n25610=>9214,\n25626=>9215,\n25664=>9216,\n25637=>9217,\n25639=>9218,\n25611=>9219,\n25575=>9220,\n25627=>9221,\n25646=>9222,\n25633=>9223,\n25614=>9224,\n25967=>9225,\n26002=>9226,\n26067=>9227,\n26246=>9228,\n26252=>9229,\n26261=>9230,\n26256=>9231,\n26251=>9232,\n26250=>9233,\n26265=>9234,\n26260=>9235,\n26232=>9236,\n26400=>9237,\n26982=>9238,\n26975=>9239,\n26936=>9240,\n26958=>9241,\n26978=>9242,\n26993=>9243,\n26943=>9244,\n26949=>9245,\n26986=>9246,\n26937=>9247,\n26946=>9248,\n26967=>9249,\n26969=>9250,\n27002=>9251,\n26952=>9252,\n26953=>9253,\n26933=>9254,\n26988=>9255,\n26931=>9256,\n26941=>9257,\n26981=>9258,\n26864=>9259,\n27000=>9260,\n26932=>9261,\n26985=>9262,\n26944=>9263,\n26991=>9264,\n26948=>9265,\n26998=>9266,\n26968=>9267,\n26945=>9268,\n26996=>9269,\n26956=>9270,\n26939=>9271,\n26955=>9272,\n26935=>9273,\n26972=>9274,\n26959=>9275,\n26961=>9276,\n26930=>9277,\n26962=>9278,\n26927=>9279,\n27003=>9280,\n26940=>9281,\n27462=>9282,\n27461=>9283,\n27459=>9284,\n27458=>9285,\n27464=>9286,\n27457=>9287,\n27547=>9288,\n27643=>9289,\n27644=>9290,\n27641=>9291,\n27639=>9292,\n27640=>9293,\n28315=>9294,\n28374=>9295,\n28360=>9296,\n28303=>9297,\n28352=>9298,\n28319=>9299,\n28307=>9300,\n28308=>9301,\n28320=>9302,\n28337=>9303,\n28345=>9304,\n28358=>9305,\n28370=>9306,\n28349=>9307,\n28353=>9308,\n28318=>9309,\n28361=>9310,\n28343=>9311,\n28336=>9312,\n28365=>9313,\n28326=>9314,\n28367=>9315,\n28338=>9316,\n28350=>9317,\n28355=>9318,\n28380=>9319,\n28376=>9320,\n28313=>9321,\n28306=>9322,\n28302=>9323,\n28301=>9324,\n28324=>9325,\n28321=>9326,\n28351=>9327,\n28339=>9328,\n28368=>9329,\n28362=>9330,\n28311=>9331,\n28334=>9332,\n28323=>9333,\n28999=>9334,\n29012=>9335,\n29010=>9336,\n29027=>9337,\n29024=>9338,\n28993=>9339,\n29021=>9340,\n29026=>9341,\n61080=>9341,\n29042=>9342,\n29048=>9343,\n29034=>9344,\n29025=>9345,\n28994=>9346,\n29016=>9347,\n28995=>9348,\n29003=>9349,\n29040=>9350,\n29023=>9351,\n29008=>9352,\n29011=>9353,\n28996=>9354,\n29005=>9355,\n29018=>9356,\n29263=>9357,\n29325=>9358,\n29324=>9359,\n29329=>9360,\n29328=>9361,\n29326=>9362,\n29500=>9363,\n29506=>9364,\n29499=>9365,\n29498=>9366,\n29504=>9367,\n29514=>9368,\n29513=>9369,\n29764=>9370,\n29770=>9371,\n29771=>9372,\n29778=>9373,\n29777=>9374,\n29783=>9375,\n29760=>9376,\n29775=>9377,\n29776=>9378,\n29774=>9379,\n29762=>9380,\n29766=>9381,\n29773=>9382,\n29780=>9383,\n29921=>9384,\n29951=>9385,\n29950=>9386,\n29949=>9387,\n29981=>9388,\n30073=>9389,\n30071=>9390,\n27011=>9391,\n30191=>9392,\n30223=>9393,\n30211=>9394,\n30199=>9395,\n30206=>9396,\n30204=>9397,\n30201=>9398,\n60782=>9398,\n30200=>9399,\n30224=>9400,\n30203=>9401,\n30198=>9402,\n30189=>9403,\n30197=>9404,\n30205=>9405,\n30361=>9406,\n30389=>9407,\n30429=>9408,\n30549=>9409,\n30559=>9410,\n30560=>9411,\n30546=>9412,\n30550=>9413,\n30554=>9414,\n30569=>9415,\n30567=>9416,\n30548=>9417,\n30553=>9418,\n30573=>9419,\n30688=>9420,\n30855=>9421,\n30874=>9422,\n30868=>9423,\n30863=>9424,\n30852=>9425,\n30869=>9426,\n30853=>9427,\n30854=>9428,\n30881=>9429,\n30851=>9430,\n30841=>9431,\n30873=>9432,\n30848=>9433,\n30870=>9434,\n30843=>9435,\n31100=>9436,\n31106=>9437,\n31101=>9438,\n31097=>9439,\n31249=>9440,\n31256=>9441,\n31257=>9442,\n31250=>9443,\n31255=>9444,\n31253=>9445,\n31266=>9446,\n31251=>9447,\n31259=>9448,\n31248=>9449,\n31395=>9450,\n31394=>9451,\n31390=>9452,\n31467=>9453,\n31590=>9454,\n31588=>9455,\n31597=>9456,\n31604=>9457,\n31593=>9458,\n31602=>9459,\n31589=>9460,\n31603=>9461,\n31601=>9462,\n31600=>9463,\n31585=>9464,\n31608=>9465,\n31606=>9466,\n31587=>9467,\n31922=>9468,\n31924=>9469,\n31919=>9470,\n32136=>9471,\n32134=>9472,\n32128=>9473,\n32141=>9474,\n32127=>9475,\n32133=>9476,\n32122=>9477,\n32142=>9478,\n32123=>9479,\n32131=>9480,\n32124=>9481,\n32140=>9482,\n32148=>9483,\n32132=>9484,\n32125=>9485,\n32146=>9486,\n32621=>9487,\n32619=>9488,\n32615=>9489,\n32616=>9490,\n32620=>9491,\n32678=>9492,\n32677=>9493,\n32679=>9494,\n32731=>9495,\n32732=>9496,\n32801=>9497,\n33124=>9498,\n33120=>9499,\n33143=>9500,\n33116=>9501,\n33129=>9502,\n33115=>9503,\n33122=>9504,\n33138=>9505,\n26401=>9506,\n33118=>9507,\n33142=>9508,\n33127=>9509,\n33135=>9510,\n33092=>9511,\n33121=>9512,\n33309=>9513,\n33353=>9514,\n33348=>9515,\n33344=>9516,\n33346=>9517,\n33349=>9518,\n34033=>9519,\n33855=>9520,\n33878=>9521,\n33910=>9522,\n33913=>9523,\n33935=>9524,\n33933=>9525,\n33893=>9526,\n33873=>9527,\n33856=>9528,\n33926=>9529,\n33895=>9530,\n33840=>9531,\n33869=>9532,\n33917=>9533,\n33882=>9534,\n33881=>9535,\n33908=>9536,\n33907=>9537,\n33885=>9538,\n34055=>9539,\n33886=>9540,\n33847=>9541,\n33850=>9542,\n33844=>9543,\n33914=>9544,\n33859=>9545,\n33912=>9546,\n33842=>9547,\n33861=>9548,\n33833=>9549,\n33753=>9550,\n33867=>9551,\n33839=>9552,\n33858=>9553,\n33837=>9554,\n33887=>9555,\n33904=>9556,\n33849=>9557,\n33870=>9558,\n33868=>9559,\n33874=>9560,\n33903=>9561,\n33989=>9562,\n33934=>9563,\n33851=>9564,\n33863=>9565,\n33846=>9566,\n33843=>9567,\n33896=>9568,\n33918=>9569,\n33860=>9570,\n33835=>9571,\n33888=>9572,\n33876=>9573,\n33902=>9574,\n33872=>9575,\n34571=>9576,\n34564=>9577,\n34551=>9578,\n34572=>9579,\n34554=>9580,\n34518=>9581,\n34549=>9582,\n34637=>9583,\n34552=>9584,\n34574=>9585,\n34569=>9586,\n34561=>9587,\n34550=>9588,\n34573=>9589,\n34565=>9590,\n35030=>9591,\n35019=>9592,\n35021=>9593,\n35022=>9594,\n35038=>9595,\n35035=>9596,\n35034=>9597,\n35020=>9598,\n35024=>9599,\n35205=>9600,\n35227=>9601,\n35295=>9602,\n35301=>9603,\n35300=>9604,\n35297=>9605,\n35296=>9606,\n35298=>9607,\n35292=>9608,\n35302=>9609,\n35446=>9610,\n35462=>9611,\n35455=>9612,\n35425=>9613,\n35391=>9614,\n35447=>9615,\n35458=>9616,\n35460=>9617,\n35445=>9618,\n35459=>9619,\n35457=>9620,\n35444=>9621,\n35450=>9622,\n35900=>9623,\n35915=>9624,\n35914=>9625,\n35941=>9626,\n35940=>9627,\n35942=>9628,\n35974=>9629,\n35972=>9630,\n35973=>9631,\n36044=>9632,\n36200=>9633,\n36201=>9634,\n36241=>9635,\n36236=>9636,\n36238=>9637,\n36239=>9638,\n36237=>9639,\n36243=>9640,\n36244=>9641,\n36240=>9642,\n36242=>9643,\n36336=>9644,\n36320=>9645,\n36332=>9646,\n36337=>9647,\n36334=>9648,\n36304=>9649,\n36329=>9650,\n36323=>9651,\n36322=>9652,\n36327=>9653,\n36338=>9654,\n36331=>9655,\n36340=>9656,\n36614=>9657,\n36607=>9658,\n36609=>9659,\n36608=>9660,\n36613=>9661,\n36615=>9662,\n36616=>9663,\n36610=>9664,\n36619=>9665,\n60507=>9665,\n36946=>9666,\n36927=>9667,\n36932=>9668,\n36937=>9669,\n36925=>9670,\n37136=>9671,\n37133=>9672,\n37135=>9673,\n37137=>9674,\n37142=>9675,\n37140=>9676,\n37131=>9677,\n37134=>9678,\n37230=>9679,\n37231=>9680,\n37448=>9681,\n37458=>9682,\n37424=>9683,\n37434=>9684,\n37478=>9685,\n37427=>9686,\n37477=>9687,\n37470=>9688,\n37507=>9689,\n37422=>9690,\n37450=>9691,\n37446=>9692,\n37485=>9693,\n37484=>9694,\n37455=>9695,\n37472=>9696,\n37479=>9697,\n37487=>9698,\n37430=>9699,\n37473=>9700,\n37488=>9701,\n37425=>9702,\n37460=>9703,\n37475=>9704,\n37456=>9705,\n37490=>9706,\n37454=>9707,\n37459=>9708,\n37452=>9709,\n37462=>9710,\n37426=>9711,\n38303=>9712,\n38300=>9713,\n38302=>9714,\n38299=>9715,\n38546=>9716,\n38547=>9717,\n38545=>9718,\n38551=>9719,\n38606=>9720,\n38650=>9721,\n38653=>9722,\n38648=>9723,\n38645=>9724,\n38771=>9725,\n38775=>9726,\n38776=>9727,\n38770=>9728,\n38927=>9729,\n38925=>9730,\n38926=>9731,\n39084=>9732,\n39158=>9733,\n39161=>9734,\n39343=>9735,\n39346=>9736,\n39344=>9737,\n39349=>9738,\n39597=>9739,\n39595=>9740,\n39771=>9741,\n40170=>9742,\n40173=>9743,\n40167=>9744,\n40576=>9745,\n12236=>9746,\n40701=>9746,\n20710=>9747,\n20692=>9748,\n20695=>9749,\n20712=>9750,\n20723=>9751,\n20699=>9752,\n20714=>9753,\n20701=>9754,\n20708=>9755,\n20691=>9756,\n20716=>9757,\n20720=>9758,\n20719=>9759,\n20707=>9760,\n20704=>9761,\n20952=>9762,\n21120=>9763,\n21121=>9764,\n21225=>9765,\n21227=>9766,\n21296=>9767,\n21420=>9768,\n22055=>9769,\n22037=>9770,\n22028=>9771,\n22034=>9772,\n22012=>9773,\n22031=>9774,\n22044=>9775,\n22017=>9776,\n22035=>9777,\n22018=>9778,\n22010=>9779,\n22045=>9780,\n22020=>9781,\n22015=>9782,\n22009=>9783,\n22665=>9784,\n22652=>9785,\n22672=>9786,\n22680=>9787,\n22662=>9788,\n22657=>9789,\n22655=>9790,\n22644=>9791,\n22667=>9792,\n22650=>9793,\n22663=>9794,\n22673=>9795,\n22670=>9796,\n22646=>9797,\n22658=>9798,\n22664=>9799,\n22651=>9800,\n22676=>9801,\n22671=>9802,\n22782=>9803,\n22891=>9804,\n23260=>9805,\n23278=>9806,\n23269=>9807,\n23253=>9808,\n23274=>9809,\n23258=>9810,\n23277=>9811,\n23275=>9812,\n23283=>9813,\n23266=>9814,\n23264=>9815,\n23259=>9816,\n23276=>9817,\n23262=>9818,\n23261=>9819,\n23257=>9820,\n23272=>9821,\n23263=>9822,\n23415=>9823,\n23520=>9824,\n23523=>9825,\n23651=>9826,\n23938=>9827,\n23936=>9828,\n23933=>9829,\n23942=>9830,\n23930=>9831,\n23937=>9832,\n23927=>9833,\n23946=>9834,\n23945=>9835,\n23944=>9836,\n23934=>9837,\n23932=>9838,\n23949=>9839,\n23929=>9840,\n23935=>9841,\n24152=>9842,\n24153=>9843,\n24147=>9844,\n24280=>9845,\n24273=>9846,\n24279=>9847,\n24270=>9848,\n24284=>9849,\n24277=>9850,\n24281=>9851,\n24274=>9852,\n24276=>9853,\n24388=>9854,\n24387=>9855,\n24431=>9856,\n24502=>9857,\n24876=>9858,\n24872=>9859,\n24897=>9860,\n24926=>9861,\n24945=>9862,\n24947=>9863,\n24914=>9864,\n24915=>9865,\n24946=>9866,\n24940=>9867,\n24960=>9868,\n24948=>9869,\n24916=>9870,\n24954=>9871,\n24923=>9872,\n24933=>9873,\n24891=>9874,\n24938=>9875,\n24929=>9876,\n24918=>9877,\n25129=>9878,\n25127=>9879,\n25131=>9880,\n25643=>9881,\n25677=>9882,\n25691=>9883,\n25693=>9884,\n25716=>9885,\n25718=>9886,\n25714=>9887,\n25715=>9888,\n25725=>9889,\n25717=>9890,\n25702=>9891,\n25766=>9892,\n25678=>9893,\n25730=>9894,\n25694=>9895,\n25692=>9896,\n25675=>9897,\n25683=>9898,\n25696=>9899,\n25680=>9900,\n25727=>9901,\n25663=>9902,\n25708=>9903,\n25707=>9904,\n25689=>9905,\n25701=>9906,\n25719=>9907,\n25971=>9908,\n26016=>9909,\n26273=>9910,\n26272=>9911,\n26271=>9912,\n26373=>9913,\n26372=>9914,\n26402=>9915,\n27057=>9916,\n27062=>9917,\n27081=>9918,\n27040=>9919,\n27086=>9920,\n27030=>9921,\n27056=>9922,\n27052=>9923,\n27068=>9924,\n27025=>9925,\n27033=>9926,\n27022=>9927,\n27047=>9928,\n27021=>9929,\n27049=>9930,\n27070=>9931,\n27055=>9932,\n27071=>9933,\n27076=>9934,\n27069=>9935,\n27044=>9936,\n27092=>9937,\n27065=>9938,\n27082=>9939,\n27034=>9940,\n27087=>9941,\n27059=>9942,\n27027=>9943,\n27050=>9944,\n27041=>9945,\n27038=>9946,\n27097=>9947,\n27031=>9948,\n27024=>9949,\n27074=>9950,\n27061=>9951,\n27045=>9952,\n27078=>9953,\n27466=>9954,\n27469=>9955,\n27467=>9956,\n27550=>9957,\n27551=>9958,\n27552=>9959,\n27587=>9960,\n27588=>9961,\n27646=>9962,\n28366=>9963,\n28405=>9964,\n28401=>9965,\n28419=>9966,\n28453=>9967,\n28408=>9968,\n28471=>9969,\n28411=>9970,\n28462=>9971,\n28425=>9972,\n28494=>9973,\n28441=>9974,\n28442=>9975,\n28455=>9976,\n28440=>9977,\n28475=>9978,\n28434=>9979,\n28397=>9980,\n28426=>9981,\n28470=>9982,\n28531=>9983,\n28409=>9984,\n28398=>9985,\n28461=>9986,\n28480=>9987,\n28464=>9988,\n28476=>9989,\n28469=>9990,\n28395=>9991,\n28423=>9992,\n28430=>9993,\n28483=>9994,\n28421=>9995,\n28413=>9996,\n28406=>9997,\n28473=>9998,\n28444=>9999,\n28412=>10000,\n28474=>10001,\n28447=>10002,\n28429=>10003,\n28446=>10004,\n28424=>10005,\n28449=>10006,\n29063=>10007,\n29072=>10008,\n29065=>10009,\n29056=>10010,\n29061=>10011,\n29058=>10012,\n29071=>10013,\n29051=>10014,\n29062=>10015,\n29057=>10016,\n29079=>10017,\n29252=>10018,\n29267=>10019,\n29335=>10020,\n29333=>10021,\n29331=>10022,\n29507=>10023,\n29517=>10024,\n29521=>10025,\n29516=>10026,\n29794=>10027,\n29811=>10028,\n29809=>10029,\n29813=>10030,\n29810=>10031,\n29799=>10032,\n29806=>10033,\n29952=>10034,\n29954=>10035,\n29955=>10036,\n30077=>10037,\n30096=>10038,\n30230=>10039,\n30216=>10040,\n30220=>10041,\n30229=>10042,\n30225=>10043,\n30218=>10044,\n30228=>10045,\n30392=>10046,\n30593=>10047,\n30588=>10048,\n30597=>10049,\n30594=>10050,\n30574=>10051,\n30592=>10052,\n30575=>10053,\n30590=>10054,\n30595=>10055,\n30898=>10056,\n30890=>10057,\n30900=>10058,\n30893=>10059,\n30888=>10060,\n30846=>10061,\n30891=>10062,\n30878=>10063,\n30885=>10064,\n30880=>10065,\n30892=>10066,\n30882=>10067,\n30884=>10068,\n31128=>10069,\n31114=>10070,\n31115=>10071,\n31126=>10072,\n31125=>10073,\n31124=>10074,\n31123=>10075,\n31127=>10076,\n31112=>10077,\n31122=>10078,\n31120=>10079,\n31275=>10080,\n31306=>10081,\n31280=>10082,\n31279=>10083,\n31272=>10084,\n31270=>10085,\n31400=>10086,\n31403=>10087,\n31404=>10088,\n31470=>10089,\n31624=>10090,\n31644=>10091,\n31626=>10092,\n31633=>10093,\n31632=>10094,\n31638=>10095,\n31629=>10096,\n31628=>10097,\n31643=>10098,\n31630=>10099,\n31621=>10100,\n31640=>10101,\n21124=>10102,\n31641=>10103,\n31652=>10104,\n31618=>10105,\n31931=>10106,\n31935=>10107,\n31932=>10108,\n31930=>10109,\n32167=>10110,\n32183=>10111,\n32194=>10112,\n32163=>10113,\n32170=>10114,\n32193=>10115,\n32192=>10116,\n32197=>10117,\n32157=>10118,\n32206=>10119,\n32196=>10120,\n32198=>10121,\n32203=>10122,\n32204=>10123,\n32175=>10124,\n32185=>10125,\n32150=>10126,\n32188=>10127,\n32159=>10128,\n32166=>10129,\n32174=>10130,\n32169=>10131,\n32161=>10132,\n32201=>10133,\n32627=>10134,\n32738=>10135,\n32739=>10136,\n32741=>10137,\n32734=>10138,\n32804=>10139,\n32861=>10140,\n32860=>10141,\n33161=>10142,\n33158=>10143,\n33155=>10144,\n33159=>10145,\n33165=>10146,\n33164=>10147,\n33163=>10148,\n33301=>10149,\n33943=>10150,\n33956=>10151,\n33953=>10152,\n33951=>10153,\n33978=>10154,\n33998=>10155,\n33986=>10156,\n33964=>10157,\n33966=>10158,\n33963=>10159,\n33977=>10160,\n33972=>10161,\n33985=>10162,\n33997=>10163,\n33962=>10164,\n33946=>10165,\n33969=>10166,\n34000=>10167,\n33949=>10168,\n33959=>10169,\n33979=>10170,\n33954=>10171,\n33940=>10172,\n33991=>10173,\n33996=>10174,\n33947=>10175,\n33961=>10176,\n33967=>10177,\n33960=>10178,\n58327=>10178,\n34006=>10179,\n33944=>10180,\n33974=>10181,\n33999=>10182,\n33952=>10183,\n34007=>10184,\n34004=>10185,\n34002=>10186,\n34011=>10187,\n33968=>10188,\n33937=>10189,\n34401=>10190,\n34611=>10191,\n34595=>10192,\n34600=>10193,\n34667=>10194,\n34624=>10195,\n34606=>10196,\n34590=>10197,\n34593=>10198,\n34585=>10199,\n34587=>10200,\n34627=>10201,\n34604=>10202,\n34625=>10203,\n34622=>10204,\n34630=>10205,\n34592=>10206,\n34610=>10207,\n34602=>10208,\n34605=>10209,\n34620=>10210,\n34578=>10211,\n34618=>10212,\n34609=>10213,\n34613=>10214,\n34626=>10215,\n34598=>10216,\n34599=>10217,\n34616=>10218,\n34596=>10219,\n34586=>10220,\n34608=>10221,\n34577=>10222,\n35063=>10223,\n35047=>10224,\n35057=>10225,\n35058=>10226,\n35066=>10227,\n35070=>10228,\n35054=>10229,\n35068=>10230,\n35062=>10231,\n35067=>10232,\n35056=>10233,\n35052=>10234,\n35051=>10235,\n35229=>10236,\n35233=>10237,\n35231=>10238,\n35230=>10239,\n35305=>10240,\n35307=>10241,\n35304=>10242,\n35499=>10243,\n35481=>10244,\n35467=>10245,\n35474=>10246,\n35471=>10247,\n35478=>10248,\n35901=>10249,\n35944=>10250,\n35945=>10251,\n36053=>10252,\n36047=>10253,\n36055=>10254,\n36246=>10255,\n36361=>10256,\n36354=>10257,\n36351=>10258,\n36365=>10259,\n36349=>10260,\n36362=>10261,\n36355=>10262,\n36359=>10263,\n36358=>10264,\n36357=>10265,\n36350=>10266,\n36352=>10267,\n36356=>10268,\n36624=>10269,\n36625=>10270,\n36622=>10271,\n36621=>10272,\n37155=>10273,\n37148=>10274,\n37152=>10275,\n37154=>10276,\n37151=>10277,\n37149=>10278,\n37146=>10279,\n37156=>10280,\n37153=>10281,\n37147=>10282,\n37242=>10283,\n37234=>10284,\n37241=>10285,\n37235=>10286,\n37541=>10287,\n37540=>10288,\n37494=>10289,\n37531=>10290,\n37498=>10291,\n37536=>10292,\n37524=>10293,\n37546=>10294,\n37517=>10295,\n37542=>10296,\n37530=>10297,\n37547=>10298,\n37497=>10299,\n37527=>10300,\n37503=>10301,\n37539=>10302,\n37614=>10303,\n37518=>10304,\n37506=>10305,\n37525=>10306,\n37538=>10307,\n37501=>10308,\n37512=>10309,\n37537=>10310,\n37514=>10311,\n37510=>10312,\n37516=>10313,\n37529=>10314,\n37543=>10315,\n37502=>10316,\n37511=>10317,\n37545=>10318,\n37533=>10319,\n37515=>10320,\n37421=>10321,\n38558=>10322,\n38561=>10323,\n38655=>10324,\n38744=>10325,\n38781=>10326,\n38778=>10327,\n38782=>10328,\n38787=>10329,\n38784=>10330,\n38786=>10331,\n38779=>10332,\n38788=>10333,\n38785=>10334,\n38783=>10335,\n38862=>10336,\n38861=>10337,\n38934=>10338,\n39085=>10339,\n39086=>10340,\n39170=>10341,\n39168=>10342,\n39175=>10343,\n39325=>10344,\n39324=>10345,\n39363=>10346,\n39353=>10347,\n39355=>10348,\n39354=>10349,\n39362=>10350,\n39357=>10351,\n39367=>10352,\n39601=>10353,\n39651=>10354,\n39655=>10355,\n39742=>10356,\n39743=>10357,\n39776=>10358,\n39777=>10359,\n39775=>10360,\n40177=>10361,\n40178=>10362,\n40181=>10363,\n40615=>10364,\n20735=>10365,\n20739=>10366,\n20784=>10367,\n20728=>10368,\n20742=>10369,\n20743=>10370,\n20726=>10371,\n20734=>10372,\n20747=>10373,\n20748=>10374,\n20733=>10375,\n20746=>10376,\n21131=>10377,\n21132=>10378,\n21233=>10379,\n21231=>10380,\n22088=>10381,\n22082=>10382,\n22092=>10383,\n22069=>10384,\n22081=>10385,\n22090=>10386,\n22089=>10387,\n22086=>10388,\n22104=>10389,\n22106=>10390,\n22080=>10391,\n22067=>10392,\n22077=>10393,\n22060=>10394,\n22078=>10395,\n22072=>10396,\n22058=>10397,\n22074=>10398,\n22298=>10399,\n22699=>10400,\n22685=>10401,\n22705=>10402,\n22688=>10403,\n22691=>10404,\n22703=>10405,\n22700=>10406,\n22693=>10407,\n22689=>10408,\n22783=>10409,\n23295=>10410,\n23284=>10411,\n23293=>10412,\n23287=>10413,\n23286=>10414,\n23299=>10415,\n23288=>10416,\n23298=>10417,\n23289=>10418,\n23297=>10419,\n23303=>10420,\n23301=>10421,\n23311=>10422,\n23655=>10423,\n23961=>10424,\n23959=>10425,\n23967=>10426,\n23954=>10427,\n23970=>10428,\n23955=>10429,\n23957=>10430,\n23968=>10431,\n23964=>10432,\n23969=>10433,\n23962=>10434,\n23966=>10435,\n24169=>10436,\n24157=>10437,\n24160=>10438,\n24156=>10439,\n32243=>10440,\n24283=>10441,\n24286=>10442,\n24289=>10443,\n24393=>10444,\n24498=>10445,\n24971=>10446,\n24963=>10447,\n24953=>10448,\n25009=>10449,\n25008=>10450,\n24994=>10451,\n24969=>10452,\n24987=>10453,\n24979=>10454,\n25007=>10455,\n25005=>10456,\n24991=>10457,\n24978=>10458,\n25002=>10459,\n24993=>10460,\n24973=>10461,\n24934=>10462,\n25011=>10463,\n25133=>10464,\n25710=>10465,\n25712=>10466,\n25750=>10467,\n25760=>10468,\n25733=>10469,\n25751=>10470,\n25756=>10471,\n25743=>10472,\n25739=>10473,\n25738=>10474,\n25740=>10475,\n25763=>10476,\n25759=>10477,\n25704=>10478,\n25777=>10479,\n25752=>10480,\n25974=>10481,\n25978=>10482,\n25977=>10483,\n25979=>10484,\n26034=>10485,\n26035=>10486,\n26293=>10487,\n26288=>10488,\n26281=>10489,\n26290=>10490,\n26295=>10491,\n26282=>10492,\n26287=>10493,\n27136=>10494,\n27142=>10495,\n27159=>10496,\n27109=>10497,\n27128=>10498,\n27157=>10499,\n27121=>10500,\n27108=>10501,\n27168=>10502,\n27135=>10503,\n27116=>10504,\n27106=>10505,\n27163=>10506,\n27165=>10507,\n27134=>10508,\n27175=>10509,\n27122=>10510,\n27118=>10511,\n27156=>10512,\n27127=>10513,\n27111=>10514,\n27200=>10515,\n27144=>10516,\n27110=>10517,\n27131=>10518,\n27149=>10519,\n27132=>10520,\n27115=>10521,\n27145=>10522,\n27140=>10523,\n27160=>10524,\n27173=>10525,\n27151=>10526,\n27126=>10527,\n27174=>10528,\n27143=>10529,\n27124=>10530,\n27158=>10531,\n27473=>10532,\n27557=>10533,\n27555=>10534,\n27554=>10535,\n27558=>10536,\n27649=>10537,\n27648=>10538,\n27647=>10539,\n27650=>10540,\n28481=>10541,\n28454=>10542,\n28542=>10543,\n28551=>10544,\n28614=>10545,\n28562=>10546,\n28557=>10547,\n28553=>10548,\n28556=>10549,\n28514=>10550,\n28495=>10551,\n28549=>10552,\n28506=>10553,\n28566=>10554,\n28534=>10555,\n28524=>10556,\n28546=>10557,\n28501=>10558,\n28530=>10559,\n28498=>10560,\n28496=>10561,\n28503=>10562,\n28564=>10563,\n28563=>10564,\n28509=>10565,\n28416=>10566,\n28513=>10567,\n28523=>10568,\n28541=>10569,\n28519=>10570,\n28560=>10571,\n28499=>10572,\n28555=>10573,\n28521=>10574,\n28543=>10575,\n28565=>10576,\n28515=>10577,\n28535=>10578,\n28522=>10579,\n28539=>10580,\n29106=>10581,\n29103=>10582,\n29083=>10583,\n29104=>10584,\n29088=>10585,\n29082=>10586,\n29097=>10587,\n29109=>10588,\n29085=>10589,\n29093=>10590,\n29086=>10591,\n29092=>10592,\n29089=>10593,\n29098=>10594,\n29084=>10595,\n29095=>10596,\n29107=>10597,\n29336=>10598,\n29338=>10599,\n29528=>10600,\n29522=>10601,\n29534=>10602,\n29535=>10603,\n29536=>10604,\n29533=>10605,\n29531=>10606,\n29537=>10607,\n29530=>10608,\n29529=>10609,\n29538=>10610,\n29831=>10611,\n29833=>10612,\n29834=>10613,\n29830=>10614,\n29825=>10615,\n29821=>10616,\n29829=>10617,\n29832=>10618,\n29820=>10619,\n29817=>10620,\n58868=>10620,\n29960=>10621,\n29959=>10622,\n30078=>10623,\n30245=>10624,\n30238=>10625,\n30233=>10626,\n30237=>10627,\n30236=>10628,\n30243=>10629,\n30234=>10630,\n30248=>10631,\n30235=>10632,\n30364=>10633,\n30365=>10634,\n30366=>10635,\n30363=>10636,\n30605=>10637,\n30607=>10638,\n30601=>10639,\n30600=>10640,\n30925=>10641,\n30907=>10642,\n30927=>10643,\n30924=>10644,\n30929=>10645,\n30926=>10646,\n30932=>10647,\n30920=>10648,\n30915=>10649,\n30916=>10650,\n30921=>10651,\n31130=>10652,\n31137=>10653,\n31136=>10654,\n31132=>10655,\n31138=>10656,\n31131=>10657,\n59175=>10657,\n27510=>10658,\n31289=>10659,\n31410=>10660,\n31412=>10661,\n31411=>10662,\n31671=>10663,\n31691=>10664,\n31678=>10665,\n31660=>10666,\n31694=>10667,\n31663=>10668,\n31673=>10669,\n31690=>10670,\n31669=>10671,\n31941=>10672,\n31944=>10673,\n31948=>10674,\n31947=>10675,\n32247=>10676,\n32219=>10677,\n32234=>10678,\n32231=>10679,\n32215=>10680,\n32225=>10681,\n32259=>10682,\n32250=>10683,\n32230=>10684,\n32246=>10685,\n32241=>10686,\n32240=>10687,\n32238=>10688,\n32223=>10689,\n32630=>10690,\n32684=>10691,\n32688=>10692,\n32685=>10693,\n32749=>10694,\n32747=>10695,\n32746=>10696,\n32748=>10697,\n32742=>10698,\n32744=>10699,\n32868=>10700,\n32871=>10701,\n33187=>10702,\n33183=>10703,\n33182=>10704,\n33173=>10705,\n33186=>10706,\n33177=>10707,\n33175=>10708,\n33302=>10709,\n33359=>10710,\n33363=>10711,\n33362=>10712,\n33360=>10713,\n33358=>10714,\n33361=>10715,\n34084=>10716,\n34107=>10717,\n34063=>10718,\n34048=>10719,\n34089=>10720,\n34062=>10721,\n34057=>10722,\n34061=>10723,\n34079=>10724,\n34058=>10725,\n34087=>10726,\n34076=>10727,\n34043=>10728,\n34091=>10729,\n34042=>10730,\n34056=>10731,\n34060=>10732,\n34036=>10733,\n34090=>10734,\n34034=>10735,\n34069=>10736,\n34039=>10737,\n34027=>10738,\n34035=>10739,\n34044=>10740,\n34066=>10741,\n34026=>10742,\n34025=>10743,\n34070=>10744,\n34046=>10745,\n34088=>10746,\n34077=>10747,\n34094=>10748,\n34050=>10749,\n34045=>10750,\n34078=>10751,\n34038=>10752,\n34097=>10753,\n34086=>10754,\n34023=>10755,\n34024=>10756,\n34032=>10757,\n34031=>10758,\n34041=>10759,\n34072=>10760,\n34080=>10761,\n34096=>10762,\n34059=>10763,\n34073=>10764,\n34095=>10765,\n34402=>10766,\n34646=>10767,\n34659=>10768,\n34660=>10769,\n34679=>10770,\n34785=>10771,\n34675=>10772,\n34648=>10773,\n34644=>10774,\n34651=>10775,\n34642=>10776,\n34657=>10777,\n34650=>10778,\n34641=>10779,\n34654=>10780,\n34669=>10781,\n34666=>10782,\n34640=>10783,\n34638=>10784,\n34655=>10785,\n34653=>10786,\n34671=>10787,\n34668=>10788,\n34682=>10789,\n34670=>10790,\n34652=>10791,\n34661=>10792,\n34639=>10793,\n34683=>10794,\n34677=>10795,\n34658=>10796,\n34663=>10797,\n34665=>10798,\n34906=>10799,\n35077=>10800,\n35084=>10801,\n35092=>10802,\n35083=>10803,\n35095=>10804,\n35096=>10805,\n35097=>10806,\n35078=>10807,\n35094=>10808,\n35089=>10809,\n35086=>10810,\n35081=>10811,\n35234=>10812,\n35236=>10813,\n35235=>10814,\n35309=>10815,\n35312=>10816,\n35308=>10817,\n35535=>10818,\n35526=>10819,\n35512=>10820,\n35539=>10821,\n35537=>10822,\n35540=>10823,\n35541=>10824,\n35515=>10825,\n35543=>10826,\n35518=>10827,\n35520=>10828,\n35525=>10829,\n35544=>10830,\n35523=>10831,\n35514=>10832,\n35517=>10833,\n35545=>10834,\n35902=>10835,\n35917=>10836,\n35983=>10837,\n36069=>10838,\n36063=>10839,\n36057=>10840,\n36072=>10841,\n36058=>10842,\n36061=>10843,\n36071=>10844,\n36256=>10845,\n36252=>10846,\n36257=>10847,\n36251=>10848,\n36384=>10849,\n36387=>10850,\n36389=>10851,\n36388=>10852,\n36398=>10853,\n36373=>10854,\n36379=>10855,\n36374=>10856,\n36369=>10857,\n36377=>10858,\n36390=>10859,\n36391=>10860,\n36372=>10861,\n36370=>10862,\n36376=>10863,\n36371=>10864,\n36380=>10865,\n36375=>10866,\n36378=>10867,\n36652=>10868,\n36644=>10869,\n36632=>10870,\n36634=>10871,\n36640=>10872,\n36643=>10873,\n36630=>10874,\n36631=>10875,\n36979=>10876,\n36976=>10877,\n36975=>10878,\n36967=>10879,\n36971=>10880,\n37167=>10881,\n37163=>10882,\n37161=>10883,\n37162=>10884,\n37170=>10885,\n37158=>10886,\n37166=>10887,\n37253=>10888,\n37254=>10889,\n37258=>10890,\n37249=>10891,\n37250=>10892,\n37252=>10893,\n37248=>10894,\n37584=>10895,\n37571=>10896,\n37572=>10897,\n37568=>10898,\n37593=>10899,\n37558=>10900,\n37583=>10901,\n37617=>10902,\n37599=>10903,\n37592=>10904,\n37609=>10905,\n37591=>10906,\n37597=>10907,\n37580=>10908,\n37615=>10909,\n37570=>10910,\n37608=>10911,\n37578=>10912,\n37576=>10913,\n37582=>10914,\n37606=>10915,\n37581=>10916,\n37589=>10917,\n37577=>10918,\n37600=>10919,\n37598=>10920,\n37607=>10921,\n37585=>10922,\n37587=>10923,\n37557=>10924,\n37601=>10925,\n37669=>10926,\n37574=>10927,\n37556=>10928,\n38268=>10929,\n38316=>10930,\n38315=>10931,\n38318=>10932,\n38320=>10933,\n38564=>10934,\n38562=>10935,\n38611=>10936,\n38661=>10937,\n38664=>10938,\n38658=>10939,\n38746=>10940,\n38794=>10941,\n38798=>10942,\n38792=>10943,\n38864=>10944,\n38863=>10945,\n38942=>10946,\n38941=>10947,\n38950=>10948,\n38953=>10949,\n38952=>10950,\n38944=>10951,\n38939=>10952,\n38951=>10953,\n39090=>10954,\n39176=>10955,\n39162=>10956,\n39185=>10957,\n39188=>10958,\n39190=>10959,\n39191=>10960,\n39189=>10961,\n39388=>10962,\n39373=>10963,\n39375=>10964,\n39379=>10965,\n39380=>10966,\n39374=>10967,\n39369=>10968,\n39382=>10969,\n60270=>10969,\n39384=>10970,\n39371=>10971,\n39383=>10972,\n39372=>10973,\n39603=>10974,\n39660=>10975,\n39659=>10976,\n39667=>10977,\n39666=>10978,\n39665=>10979,\n39750=>10980,\n39747=>10981,\n39783=>10982,\n39796=>10983,\n39793=>10984,\n39782=>10985,\n39798=>10986,\n39797=>10987,\n39792=>10988,\n39784=>10989,\n39780=>10990,\n39788=>10991,\n40188=>10992,\n40186=>10993,\n40189=>10994,\n40191=>10995,\n40183=>10996,\n40199=>10997,\n40192=>10998,\n40185=>10999,\n40187=>11000,\n40200=>11001,\n40197=>11002,\n40196=>11003,\n40579=>11004,\n40659=>11005,\n40719=>11006,\n40720=>11007,\n20764=>11008,\n20755=>11009,\n20759=>11010,\n20762=>11011,\n20753=>11012,\n20958=>11013,\n21300=>11014,\n21473=>11015,\n22128=>11016,\n22112=>11017,\n22126=>11018,\n22131=>11019,\n22118=>11020,\n22115=>11021,\n22125=>11022,\n22130=>11023,\n22110=>11024,\n22135=>11025,\n22300=>11026,\n22299=>11027,\n22728=>11028,\n22717=>11029,\n22729=>11030,\n22719=>11031,\n22714=>11032,\n22722=>11033,\n22716=>11034,\n22726=>11035,\n23319=>11036,\n23321=>11037,\n23323=>11038,\n23329=>11039,\n23316=>11040,\n23315=>11041,\n23312=>11042,\n23318=>11043,\n23336=>11044,\n59539=>11044,\n23322=>11045,\n23328=>11046,\n23326=>11047,\n23535=>11048,\n23980=>11049,\n23985=>11050,\n23977=>11051,\n23975=>11052,\n23989=>11053,\n23984=>11054,\n23982=>11055,\n23978=>11056,\n23976=>11057,\n23986=>11058,\n23981=>11059,\n23983=>11060,\n23988=>11061,\n24167=>11062,\n24168=>11063,\n24166=>11064,\n24175=>11065,\n24297=>11066,\n24295=>11067,\n24294=>11068,\n24296=>11069,\n24293=>11070,\n24395=>11071,\n24508=>11072,\n24507=>11073,\n24989=>11074,\n25000=>11075,\n24982=>11076,\n25029=>11077,\n25012=>11078,\n25030=>11079,\n25025=>11080,\n25036=>11081,\n25018=>11082,\n25023=>11083,\n25016=>11084,\n24972=>11085,\n25815=>11086,\n25814=>11087,\n25808=>11088,\n25807=>11089,\n25801=>11090,\n25789=>11091,\n25737=>11092,\n25795=>11093,\n25819=>11094,\n25843=>11095,\n25817=>11096,\n25907=>11097,\n25983=>11098,\n25980=>11099,\n26018=>11100,\n26312=>11101,\n26302=>11102,\n26304=>11103,\n26314=>11104,\n26315=>11105,\n26319=>11106,\n26301=>11107,\n26299=>11108,\n26298=>11109,\n26316=>11110,\n26403=>11111,\n27188=>11112,\n27238=>11113,\n27209=>11114,\n27239=>11115,\n27186=>11116,\n27240=>11117,\n27198=>11118,\n27229=>11119,\n27245=>11120,\n27254=>11121,\n27227=>11122,\n27217=>11123,\n27176=>11124,\n27226=>11125,\n27195=>11126,\n27199=>11127,\n27201=>11128,\n27242=>11129,\n27236=>11130,\n27216=>11131,\n27215=>11132,\n27220=>11133,\n27247=>11134,\n27241=>11135,\n27232=>11136,\n27196=>11137,\n27230=>11138,\n27222=>11139,\n27221=>11140,\n27213=>11141,\n27214=>11142,\n27206=>11143,\n27477=>11144,\n27476=>11145,\n27478=>11146,\n27559=>11147,\n27562=>11148,\n27563=>11149,\n27592=>11150,\n27591=>11151,\n27652=>11152,\n27651=>11153,\n27654=>11154,\n28589=>11155,\n28619=>11156,\n28579=>11157,\n28615=>11158,\n28604=>11159,\n28622=>11160,\n28616=>11161,\n28510=>11162,\n28612=>11163,\n28605=>11164,\n28574=>11165,\n28618=>11166,\n28584=>11167,\n28676=>11168,\n28581=>11169,\n28590=>11170,\n28602=>11171,\n28588=>11172,\n28586=>11173,\n28623=>11174,\n28607=>11175,\n28600=>11176,\n28578=>11177,\n28617=>11178,\n28587=>11179,\n28621=>11180,\n28591=>11181,\n28594=>11182,\n28592=>11183,\n29125=>11184,\n29122=>11185,\n29119=>11186,\n29112=>11187,\n29142=>11188,\n29120=>11189,\n29121=>11190,\n29131=>11191,\n29140=>11192,\n29130=>11193,\n29127=>11194,\n29135=>11195,\n29117=>11196,\n29144=>11197,\n29116=>11198,\n29126=>11199,\n29146=>11200,\n29147=>11201,\n29341=>11202,\n29342=>11203,\n29545=>11204,\n29542=>11205,\n29543=>11206,\n29548=>11207,\n29541=>11208,\n29547=>11209,\n29546=>11210,\n29823=>11211,\n29850=>11212,\n29856=>11213,\n29844=>11214,\n29842=>11215,\n29845=>11216,\n29857=>11217,\n29963=>11218,\n30080=>11219,\n30255=>11220,\n30253=>11221,\n30257=>11222,\n30269=>11223,\n30259=>11224,\n30268=>11225,\n30261=>11226,\n30258=>11227,\n30256=>11228,\n30395=>11229,\n30438=>11230,\n30618=>11231,\n30621=>11232,\n30625=>11233,\n30620=>11234,\n30619=>11235,\n30626=>11236,\n30627=>11237,\n30613=>11238,\n30617=>11239,\n30615=>11240,\n30941=>11241,\n30953=>11242,\n30949=>11243,\n30954=>11244,\n30942=>11245,\n30947=>11246,\n30939=>11247,\n30945=>11248,\n30946=>11249,\n30957=>11250,\n30943=>11251,\n30944=>11252,\n31140=>11253,\n31300=>11254,\n31304=>11255,\n31303=>11256,\n31414=>11257,\n31416=>11258,\n31413=>11259,\n31409=>11260,\n31415=>11261,\n31710=>11262,\n31715=>11263,\n31719=>11264,\n31709=>11265,\n31701=>11266,\n31717=>11267,\n31706=>11268,\n31720=>11269,\n31737=>11270,\n31700=>11271,\n31722=>11272,\n31714=>11273,\n31708=>11274,\n31723=>11275,\n31704=>11276,\n31711=>11277,\n31954=>11278,\n31956=>11279,\n31959=>11280,\n31952=>11281,\n31953=>11282,\n32274=>11283,\n32289=>11284,\n32279=>11285,\n32268=>11286,\n32287=>11287,\n32288=>11288,\n32275=>11289,\n32270=>11290,\n32284=>11291,\n32277=>11292,\n32282=>11293,\n32290=>11294,\n32267=>11295,\n32271=>11296,\n32278=>11297,\n32269=>11298,\n32276=>11299,\n32293=>11300,\n32292=>11301,\n32579=>11302,\n32635=>11303,\n32636=>11304,\n32634=>11305,\n32689=>11306,\n32751=>11307,\n32810=>11308,\n32809=>11309,\n32876=>11310,\n33201=>11311,\n33190=>11312,\n33198=>11313,\n33209=>11314,\n33205=>11315,\n33195=>11316,\n33200=>11317,\n33196=>11318,\n33204=>11319,\n33202=>11320,\n33207=>11321,\n33191=>11322,\n33266=>11323,\n33365=>11324,\n33366=>11325,\n33367=>11326,\n34134=>11327,\n34117=>11328,\n34155=>11329,\n34125=>11330,\n34131=>11331,\n34145=>11332,\n34136=>11333,\n34112=>11334,\n34118=>11335,\n34148=>11336,\n34113=>11337,\n34146=>11338,\n34116=>11339,\n34129=>11340,\n34119=>11341,\n34147=>11342,\n34110=>11343,\n34139=>11344,\n34161=>11345,\n34126=>11346,\n34158=>11347,\n34165=>11348,\n34133=>11349,\n34151=>11350,\n34144=>11351,\n34188=>11352,\n34150=>11353,\n34141=>11354,\n34132=>11355,\n34149=>11356,\n34156=>11357,\n34403=>11358,\n34405=>11359,\n34404=>11360,\n34724=>11361,\n34715=>11362,\n34703=>11363,\n34711=>11364,\n34707=>11365,\n34706=>11366,\n34696=>11367,\n34689=>11368,\n34710=>11369,\n34712=>11370,\n34681=>11371,\n34695=>11372,\n34723=>11373,\n34693=>11374,\n34704=>11375,\n34705=>11376,\n34717=>11377,\n34692=>11378,\n34708=>11379,\n34716=>11380,\n34714=>11381,\n34697=>11382,\n35102=>11383,\n35110=>11384,\n35120=>11385,\n35117=>11386,\n35118=>11387,\n35111=>11388,\n35121=>11389,\n35106=>11390,\n35113=>11391,\n35107=>11392,\n35119=>11393,\n35116=>11394,\n35103=>11395,\n35313=>11396,\n35552=>11397,\n35554=>11398,\n35570=>11399,\n35572=>11400,\n35573=>11401,\n35549=>11402,\n35604=>11403,\n35556=>11404,\n35551=>11405,\n35568=>11406,\n35528=>11407,\n35550=>11408,\n35553=>11409,\n35560=>11410,\n35583=>11411,\n35567=>11412,\n35579=>11413,\n35985=>11414,\n35986=>11415,\n35984=>11416,\n36085=>11417,\n36078=>11418,\n36081=>11419,\n36080=>11420,\n36083=>11421,\n36204=>11422,\n36206=>11423,\n36261=>11424,\n36263=>11425,\n36403=>11426,\n36414=>11427,\n36408=>11428,\n36416=>11429,\n36421=>11430,\n36406=>11431,\n36412=>11432,\n36413=>11433,\n36417=>11434,\n36400=>11435,\n36415=>11436,\n36541=>11437,\n36662=>11438,\n60329=>11438,\n36654=>11439,\n36661=>11440,\n36658=>11441,\n36665=>11442,\n36663=>11443,\n36660=>11444,\n36982=>11445,\n36985=>11446,\n36987=>11447,\n36998=>11448,\n37114=>11449,\n37171=>11450,\n37173=>11451,\n37174=>11452,\n37267=>11453,\n37264=>11454,\n37265=>11455,\n37261=>11456,\n37263=>11457,\n37671=>11458,\n37662=>11459,\n37640=>11460,\n37663=>11461,\n37638=>11462,\n37647=>11463,\n37754=>11464,\n37688=>11465,\n37692=>11466,\n37659=>11467,\n37667=>11468,\n37650=>11469,\n37633=>11470,\n37702=>11471,\n37677=>11472,\n37646=>11473,\n37645=>11474,\n37579=>11475,\n37661=>11476,\n37626=>11477,\n37651=>11478,\n37625=>11479,\n37623=>11480,\n37684=>11481,\n37634=>11482,\n37668=>11483,\n37631=>11484,\n37673=>11485,\n37689=>11486,\n37685=>11487,\n37674=>11488,\n37652=>11489,\n37644=>11490,\n37643=>11491,\n37630=>11492,\n37641=>11493,\n37632=>11494,\n37627=>11495,\n37654=>11496,\n38332=>11497,\n38349=>11498,\n38334=>11499,\n38329=>11500,\n38330=>11501,\n38326=>11502,\n38335=>11503,\n38325=>11504,\n38333=>11505,\n38569=>11506,\n38612=>11507,\n38667=>11508,\n38674=>11509,\n38672=>11510,\n38809=>11511,\n38807=>11512,\n38804=>11513,\n38896=>11514,\n38904=>11515,\n38965=>11516,\n38959=>11517,\n38962=>11518,\n39204=>11519,\n39199=>11520,\n39207=>11521,\n39209=>11522,\n39326=>11523,\n39406=>11524,\n39404=>11525,\n39397=>11526,\n39396=>11527,\n39408=>11528,\n39395=>11529,\n39402=>11530,\n39401=>11531,\n39399=>11532,\n39609=>11533,\n39615=>11534,\n39604=>11535,\n39611=>11536,\n39670=>11537,\n39674=>11538,\n39673=>11539,\n39671=>11540,\n39731=>11541,\n39808=>11542,\n39813=>11543,\n39815=>11544,\n39804=>11545,\n39806=>11546,\n39803=>11547,\n39810=>11548,\n39827=>11549,\n39826=>11550,\n39824=>11551,\n39802=>11552,\n39829=>11553,\n39805=>11554,\n39816=>11555,\n40229=>11556,\n40215=>11557,\n40224=>11558,\n40222=>11559,\n40212=>11560,\n40233=>11561,\n40221=>11562,\n40216=>11563,\n40226=>11564,\n40208=>11565,\n40217=>11566,\n40223=>11567,\n40584=>11568,\n40582=>11569,\n40583=>11570,\n40622=>11571,\n40621=>11572,\n40661=>11573,\n40662=>11574,\n40698=>11575,\n40722=>11576,\n40765=>11577,\n20774=>11578,\n20773=>11579,\n20770=>11580,\n20772=>11581,\n20768=>11582,\n20777=>11583,\n21236=>11584,\n22163=>11585,\n22156=>11586,\n22157=>11587,\n22150=>11588,\n22148=>11589,\n22147=>11590,\n22142=>11591,\n22146=>11592,\n22143=>11593,\n22145=>11594,\n22742=>11595,\n22740=>11596,\n22735=>11597,\n22738=>11598,\n23341=>11599,\n23333=>11600,\n23346=>11601,\n23331=>11602,\n23340=>11603,\n23335=>11604,\n23334=>11605,\n23343=>11606,\n23342=>11607,\n23419=>11608,\n23537=>11609,\n23538=>11610,\n23991=>11611,\n24172=>11612,\n24170=>11613,\n24510=>11614,\n25027=>11615,\n25013=>11616,\n25020=>11617,\n25063=>11618,\n25056=>11619,\n25061=>11620,\n25060=>11621,\n25064=>11622,\n25054=>11623,\n25839=>11624,\n25833=>11625,\n25827=>11626,\n25835=>11627,\n25828=>11628,\n25832=>11629,\n25985=>11630,\n25984=>11631,\n26038=>11632,\n26074=>11633,\n26322=>11634,\n27277=>11635,\n27286=>11636,\n27265=>11637,\n27301=>11638,\n27273=>11639,\n27295=>11640,\n27291=>11641,\n27297=>11642,\n27294=>11643,\n27271=>11644,\n27283=>11645,\n27278=>11646,\n27285=>11647,\n27267=>11648,\n27304=>11649,\n27300=>11650,\n27281=>11651,\n27263=>11652,\n27302=>11653,\n27290=>11654,\n27269=>11655,\n27276=>11656,\n27282=>11657,\n27483=>11658,\n27565=>11659,\n27657=>11660,\n28620=>11661,\n28585=>11662,\n28660=>11663,\n28628=>11664,\n28643=>11665,\n28636=>11666,\n28653=>11667,\n28647=>11668,\n28646=>11669,\n28638=>11670,\n28658=>11671,\n28637=>11672,\n28642=>11673,\n28648=>11674,\n29153=>11675,\n29169=>11676,\n29160=>11677,\n29170=>11678,\n29156=>11679,\n29168=>11680,\n29154=>11681,\n29555=>11682,\n29550=>11683,\n29551=>11684,\n29847=>11685,\n29874=>11686,\n29867=>11687,\n29840=>11688,\n29866=>11689,\n29869=>11690,\n29873=>11691,\n29861=>11692,\n29871=>11693,\n29968=>11694,\n29969=>11695,\n29970=>11696,\n29967=>11697,\n30084=>11698,\n30275=>11699,\n30280=>11700,\n30281=>11701,\n30279=>11702,\n30372=>11703,\n30441=>11704,\n30645=>11705,\n30635=>11706,\n30642=>11707,\n30647=>11708,\n30646=>11709,\n30644=>11710,\n30641=>11711,\n30632=>11712,\n30704=>11713,\n30963=>11714,\n30973=>11715,\n30978=>11716,\n30971=>11717,\n30972=>11718,\n30975=>11719,\n30962=>11720,\n30981=>11721,\n30969=>11722,\n30974=>11723,\n30980=>11724,\n31147=>11725,\n31144=>11726,\n31324=>11727,\n31323=>11728,\n31318=>11729,\n31320=>11730,\n31316=>11731,\n31322=>11732,\n31422=>11733,\n31424=>11734,\n31425=>11735,\n31749=>11736,\n31759=>11737,\n31730=>11738,\n31744=>11739,\n31743=>11740,\n31739=>11741,\n31758=>11742,\n31732=>11743,\n31755=>11744,\n31731=>11745,\n31746=>11746,\n31753=>11747,\n31747=>11748,\n31745=>11749,\n31736=>11750,\n31741=>11751,\n31750=>11752,\n58176=>11752,\n31728=>11753,\n31729=>11754,\n31760=>11755,\n31754=>11756,\n31976=>11757,\n32301=>11758,\n32316=>11759,\n32322=>11760,\n32307=>11761,\n38984=>11762,\n32312=>11763,\n32298=>11764,\n32329=>11765,\n32320=>11766,\n32327=>11767,\n32297=>11768,\n32332=>11769,\n32304=>11770,\n32315=>11771,\n32310=>11772,\n32324=>11773,\n32314=>11774,\n32581=>11775,\n32639=>11776,\n32638=>11777,\n32637=>11778,\n32756=>11779,\n32754=>11780,\n32812=>11781,\n33211=>11782,\n33220=>11783,\n33228=>11784,\n33226=>11785,\n33221=>11786,\n33223=>11787,\n33212=>11788,\n33257=>11789,\n33371=>11790,\n33370=>11791,\n33372=>11792,\n34179=>11793,\n34176=>11794,\n34191=>11795,\n34215=>11796,\n34197=>11797,\n34208=>11798,\n34187=>11799,\n34211=>11800,\n34171=>11801,\n34212=>11802,\n34202=>11803,\n34206=>11804,\n34167=>11805,\n34172=>11806,\n34185=>11807,\n34209=>11808,\n34170=>11809,\n34168=>11810,\n34135=>11811,\n34190=>11812,\n34198=>11813,\n34182=>11814,\n34189=>11815,\n34201=>11816,\n34205=>11817,\n34177=>11818,\n34210=>11819,\n34178=>11820,\n34184=>11821,\n34181=>11822,\n34169=>11823,\n34166=>11824,\n34200=>11825,\n34192=>11826,\n34207=>11827,\n34408=>11828,\n34750=>11829,\n34730=>11830,\n34733=>11831,\n34757=>11832,\n34736=>11833,\n34732=>11834,\n34745=>11835,\n34741=>11836,\n34748=>11837,\n34734=>11838,\n34761=>11839,\n34755=>11840,\n34754=>11841,\n34764=>11842,\n34743=>11843,\n34735=>11844,\n34756=>11845,\n34762=>11846,\n34740=>11847,\n34742=>11848,\n34751=>11849,\n34744=>11850,\n34749=>11851,\n34782=>11852,\n34738=>11853,\n35125=>11854,\n35123=>11855,\n35132=>11856,\n35134=>11857,\n35137=>11858,\n35154=>11859,\n35127=>11860,\n35138=>11861,\n35245=>11862,\n35247=>11863,\n35246=>11864,\n35314=>11865,\n35315=>11866,\n35614=>11867,\n35608=>11868,\n35606=>11869,\n35601=>11870,\n35589=>11871,\n35595=>11872,\n35618=>11873,\n35599=>11874,\n35602=>11875,\n35605=>11876,\n35591=>11877,\n35597=>11878,\n35592=>11879,\n35590=>11880,\n35612=>11881,\n35603=>11882,\n35610=>11883,\n35919=>11884,\n35952=>11885,\n35954=>11886,\n35953=>11887,\n35951=>11888,\n35989=>11889,\n35988=>11890,\n36089=>11891,\n36207=>11892,\n36430=>11893,\n36429=>11894,\n36435=>11895,\n36432=>11896,\n36428=>11897,\n36423=>11898,\n36675=>11899,\n36672=>11900,\n36997=>11901,\n36990=>11902,\n37176=>11903,\n37274=>11904,\n37282=>11905,\n37275=>11906,\n37273=>11907,\n37279=>11908,\n37281=>11909,\n37277=>11910,\n37280=>11911,\n37793=>11912,\n37763=>11913,\n37807=>11914,\n37732=>11915,\n37718=>11916,\n37703=>11917,\n37756=>11918,\n37720=>11919,\n37724=>11920,\n37750=>11921,\n37705=>11922,\n37712=>11923,\n37713=>11924,\n37728=>11925,\n37741=>11926,\n37775=>11927,\n37708=>11928,\n37738=>11929,\n37753=>11930,\n37719=>11931,\n37717=>11932,\n37714=>11933,\n37711=>11934,\n37745=>11935,\n37751=>11936,\n37755=>11937,\n37729=>11938,\n37726=>11939,\n37731=>11940,\n37735=>11941,\n37710=>11942,\n37721=>11943,\n38343=>11944,\n38336=>11945,\n38345=>11946,\n38339=>11947,\n38341=>11948,\n38327=>11949,\n38574=>11950,\n38576=>11951,\n38572=>11952,\n38688=>11953,\n38687=>11954,\n38680=>11955,\n38685=>11956,\n38681=>11957,\n38810=>11958,\n38817=>11959,\n38812=>11960,\n38814=>11961,\n38813=>11962,\n38869=>11963,\n38868=>11964,\n38897=>11965,\n38977=>11966,\n38980=>11967,\n38986=>11968,\n38985=>11969,\n38981=>11970,\n38979=>11971,\n39205=>11972,\n39211=>11973,\n39212=>11974,\n39210=>11975,\n39219=>11976,\n39218=>11977,\n39215=>11978,\n39213=>11979,\n39217=>11980,\n39216=>11981,\n39320=>11982,\n39331=>11983,\n39329=>11984,\n39426=>11985,\n39418=>11986,\n39412=>11987,\n39415=>11988,\n39417=>11989,\n39416=>11990,\n39414=>11991,\n39419=>11992,\n39421=>11993,\n39422=>11994,\n39420=>11995,\n39427=>11996,\n39614=>11997,\n39678=>11998,\n39677=>11999,\n39681=>12000,\n39676=>12001,\n39752=>12002,\n39834=>12003,\n39848=>12004,\n39838=>12005,\n39835=>12006,\n39846=>12007,\n39841=>12008,\n39845=>12009,\n39844=>12010,\n39814=>12011,\n39842=>12012,\n39840=>12013,\n39855=>12014,\n40243=>12015,\n40257=>12016,\n40295=>12017,\n40246=>12018,\n40238=>12019,\n40239=>12020,\n40241=>12021,\n40248=>12022,\n40240=>12023,\n40261=>12024,\n40258=>12025,\n40259=>12026,\n40254=>12027,\n40247=>12028,\n40256=>12029,\n40253=>12030,\n32757=>12031,\n40237=>12032,\n40586=>12033,\n40585=>12034,\n40589=>12035,\n40624=>12036,\n40648=>12037,\n40666=>12038,\n40699=>12039,\n40703=>12040,\n40740=>12041,\n40739=>12042,\n40738=>12043,\n40788=>12044,\n12245=>12045,\n40864=>12045,\n20785=>12046,\n20781=>12047,\n20782=>12048,\n22168=>12049,\n22172=>12050,\n22167=>12051,\n22170=>12052,\n22173=>12053,\n22169=>12054,\n22896=>12055,\n23356=>12056,\n23657=>12057,\n23658=>12058,\n24000=>12059,\n24173=>12060,\n24174=>12061,\n25048=>12062,\n25055=>12063,\n25069=>12064,\n25070=>12065,\n25073=>12066,\n25066=>12067,\n25072=>12068,\n25067=>12069,\n25046=>12070,\n25065=>12071,\n25855=>12072,\n25860=>12073,\n25853=>12074,\n25848=>12075,\n25857=>12076,\n25859=>12077,\n25852=>12078,\n26004=>12079,\n26075=>12080,\n26330=>12081,\n26331=>12082,\n26328=>12083,\n27333=>12084,\n27321=>12085,\n27325=>12086,\n27361=>12087,\n27334=>12088,\n27322=>12089,\n27318=>12090,\n27319=>12091,\n27335=>12092,\n27316=>12093,\n27309=>12094,\n27486=>12095,\n27593=>12096,\n27659=>12097,\n28679=>12098,\n28684=>12099,\n28685=>12100,\n28673=>12101,\n28677=>12102,\n28692=>12103,\n28686=>12104,\n28671=>12105,\n28672=>12106,\n28667=>12107,\n28710=>12108,\n28668=>12109,\n28663=>12110,\n28682=>12111,\n29185=>12112,\n60224=>12112,\n29183=>12113,\n29177=>12114,\n29187=>12115,\n29181=>12116,\n29558=>12117,\n29880=>12118,\n29888=>12119,\n29877=>12120,\n29889=>12121,\n29886=>12122,\n29878=>12123,\n29883=>12124,\n29890=>12125,\n29972=>12126,\n29971=>12127,\n30300=>12128,\n30308=>12129,\n30297=>12130,\n30288=>12131,\n30291=>12132,\n30295=>12133,\n30298=>12134,\n30374=>12135,\n30397=>12136,\n30444=>12137,\n30658=>12138,\n30650=>12139,\n30988=>12140,\n30995=>12141,\n30996=>12142,\n30985=>12143,\n30992=>12144,\n30994=>12145,\n30993=>12146,\n31149=>12147,\n31148=>12148,\n31327=>12149,\n31772=>12150,\n31785=>12151,\n31769=>12152,\n31776=>12153,\n31775=>12154,\n31789=>12155,\n31773=>12156,\n31782=>12157,\n31784=>12158,\n31778=>12159,\n31781=>12160,\n31792=>12161,\n32348=>12162,\n32336=>12163,\n32342=>12164,\n32355=>12165,\n32344=>12166,\n32354=>12167,\n32351=>12168,\n32337=>12169,\n32352=>12170,\n32343=>12171,\n32339=>12172,\n32693=>12173,\n32691=>12174,\n32759=>12175,\n32760=>12176,\n32885=>12177,\n33233=>12178,\n33234=>12179,\n33232=>12180,\n33375=>12181,\n33374=>12182,\n34228=>12183,\n34246=>12184,\n34240=>12185,\n34243=>12186,\n34242=>12187,\n34227=>12188,\n34229=>12189,\n34237=>12190,\n34247=>12191,\n34244=>12192,\n34239=>12193,\n34251=>12194,\n34254=>12195,\n34248=>12196,\n34245=>12197,\n34225=>12198,\n34230=>12199,\n34258=>12200,\n34340=>12201,\n34232=>12202,\n34231=>12203,\n34238=>12204,\n34409=>12205,\n34791=>12206,\n34790=>12207,\n34786=>12208,\n34779=>12209,\n34795=>12210,\n34794=>12211,\n34789=>12212,\n34783=>12213,\n34803=>12214,\n34788=>12215,\n34772=>12216,\n34780=>12217,\n34771=>12218,\n34797=>12219,\n34776=>12220,\n34787=>12221,\n34775=>12222,\n34777=>12223,\n34817=>12224,\n34804=>12225,\n34792=>12226,\n34781=>12227,\n35155=>12228,\n35147=>12229,\n35151=>12230,\n35148=>12231,\n35142=>12232,\n35152=>12233,\n35153=>12234,\n35145=>12235,\n35626=>12236,\n35623=>12237,\n35619=>12238,\n35635=>12239,\n35632=>12240,\n35637=>12241,\n35655=>12242,\n35631=>12243,\n35644=>12244,\n35646=>12245,\n35633=>12246,\n35621=>12247,\n35639=>12248,\n35622=>12249,\n35638=>12250,\n35630=>12251,\n35620=>12252,\n35643=>12253,\n35645=>12254,\n35642=>12255,\n35906=>12256,\n35957=>12257,\n35993=>12258,\n35992=>12259,\n35991=>12260,\n36094=>12261,\n36100=>12262,\n36098=>12263,\n36096=>12264,\n36444=>12265,\n36450=>12266,\n36448=>12267,\n36439=>12268,\n36438=>12269,\n36446=>12270,\n36453=>12271,\n36455=>12272,\n36443=>12273,\n36442=>12274,\n36449=>12275,\n36445=>12276,\n36457=>12277,\n36436=>12278,\n36678=>12279,\n36679=>12280,\n36680=>12281,\n36683=>12282,\n37160=>12283,\n37178=>12284,\n37179=>12285,\n37182=>12286,\n37288=>12287,\n37285=>12288,\n37287=>12289,\n37295=>12290,\n37290=>12291,\n37813=>12292,\n37772=>12293,\n37778=>12294,\n37815=>12295,\n37787=>12296,\n37789=>12297,\n37769=>12298,\n37799=>12299,\n37774=>12300,\n37802=>12301,\n37790=>12302,\n37798=>12303,\n37781=>12304,\n37768=>12305,\n37785=>12306,\n37791=>12307,\n37760=>12308,\n37773=>12309,\n37809=>12310,\n37777=>12311,\n37810=>12312,\n37796=>12313,\n37800=>12314,\n37812=>12315,\n37795=>12316,\n38354=>12317,\n38355=>12318,\n38353=>12319,\n38579=>12320,\n38615=>12321,\n38618=>12322,\n24002=>12323,\n38623=>12324,\n38616=>12325,\n38621=>12326,\n38691=>12327,\n38690=>12328,\n38693=>12329,\n38828=>12330,\n38830=>12331,\n38824=>12332,\n38827=>12333,\n38820=>12334,\n38826=>12335,\n38818=>12336,\n38821=>12337,\n38871=>12338,\n38873=>12339,\n38870=>12340,\n38872=>12341,\n38906=>12342,\n38992=>12343,\n38993=>12344,\n38994=>12345,\n39096=>12346,\n39233=>12347,\n39228=>12348,\n39226=>12349,\n39439=>12350,\n39435=>12351,\n39433=>12352,\n39437=>12353,\n39428=>12354,\n39441=>12355,\n39434=>12356,\n39429=>12357,\n39431=>12358,\n39430=>12359,\n39616=>12360,\n39644=>12361,\n39688=>12362,\n39684=>12363,\n39685=>12364,\n39721=>12365,\n39733=>12366,\n39754=>12367,\n39756=>12368,\n39755=>12369,\n39879=>12370,\n39878=>12371,\n39875=>12372,\n39871=>12373,\n39873=>12374,\n39861=>12375,\n39864=>12376,\n39891=>12377,\n39862=>12378,\n39876=>12379,\n39865=>12380,\n39869=>12381,\n40284=>12382,\n40275=>12383,\n40271=>12384,\n40266=>12385,\n40283=>12386,\n40267=>12387,\n40281=>12388,\n40278=>12389,\n40268=>12390,\n40279=>12391,\n40274=>12392,\n40276=>12393,\n40287=>12394,\n40280=>12395,\n40282=>12396,\n40590=>12397,\n40588=>12398,\n40671=>12399,\n40705=>12400,\n40704=>12401,\n40726=>12402,\n58693=>12402,\n40741=>12403,\n40747=>12404,\n40746=>12405,\n40745=>12406,\n40744=>12407,\n40780=>12408,\n40789=>12409,\n20788=>12410,\n20789=>12411,\n21142=>12412,\n21239=>12413,\n21428=>12414,\n22187=>12415,\n22189=>12416,\n22182=>12417,\n22183=>12418,\n22186=>12419,\n22188=>12420,\n22746=>12421,\n22749=>12422,\n22747=>12423,\n22802=>12424,\n23357=>12425,\n23358=>12426,\n23359=>12427,\n24003=>12428,\n24176=>12429,\n24511=>12430,\n25083=>12431,\n25863=>12432,\n25872=>12433,\n25869=>12434,\n25865=>12435,\n25868=>12436,\n25870=>12437,\n25988=>12438,\n26078=>12439,\n26077=>12440,\n26334=>12441,\n27367=>12442,\n27360=>12443,\n27340=>12444,\n27345=>12445,\n27353=>12446,\n27339=>12447,\n27359=>12448,\n27356=>12449,\n27344=>12450,\n27371=>12451,\n27343=>12452,\n27341=>12453,\n27358=>12454,\n27488=>12455,\n27568=>12456,\n27660=>12457,\n28697=>12458,\n28711=>12459,\n28704=>12460,\n28694=>12461,\n28715=>12462,\n28705=>12463,\n28706=>12464,\n28707=>12465,\n28713=>12466,\n28695=>12467,\n28708=>12468,\n28700=>12469,\n29196=>12470,\n29194=>12471,\n29191=>12472,\n29186=>12473,\n29189=>12474,\n29349=>12475,\n29350=>12476,\n29348=>12477,\n29347=>12478,\n29345=>12479,\n29899=>12480,\n29893=>12481,\n29879=>12482,\n29891=>12483,\n29974=>12484,\n30304=>12485,\n30665=>12486,\n30666=>12487,\n30660=>12488,\n30705=>12489,\n31005=>12490,\n31003=>12491,\n31009=>12492,\n31004=>12493,\n30999=>12494,\n31006=>12495,\n31152=>12496,\n31335=>12497,\n31336=>12498,\n31795=>12499,\n31804=>12500,\n31801=>12501,\n31788=>12502,\n31803=>12503,\n31980=>12504,\n31978=>12505,\n32374=>12506,\n32373=>12507,\n32376=>12508,\n32368=>12509,\n32375=>12510,\n32367=>12511,\n32378=>12512,\n32370=>12513,\n32372=>12514,\n32360=>12515,\n32587=>12516,\n32586=>12517,\n32643=>12518,\n32646=>12519,\n32695=>12520,\n32765=>12521,\n32766=>12522,\n32888=>12523,\n33239=>12524,\n33237=>12525,\n33291=>12526,\n33380=>12527,\n33377=>12528,\n33379=>12529,\n34283=>12530,\n34289=>12531,\n34285=>12532,\n34265=>12533,\n34273=>12534,\n34280=>12535,\n34266=>12536,\n34263=>12537,\n34284=>12538,\n34290=>12539,\n34296=>12540,\n34264=>12541,\n34271=>12542,\n34275=>12543,\n34268=>12544,\n34257=>12545,\n34288=>12546,\n34278=>12547,\n34287=>12548,\n34270=>12549,\n34274=>12550,\n34816=>12551,\n34810=>12552,\n34819=>12553,\n34806=>12554,\n34807=>12555,\n34825=>12556,\n34828=>12557,\n34827=>12558,\n34822=>12559,\n34812=>12560,\n34824=>12561,\n34815=>12562,\n34826=>12563,\n34818=>12564,\n35170=>12565,\n35162=>12566,\n35163=>12567,\n35159=>12568,\n35169=>12569,\n35164=>12570,\n35160=>12571,\n35165=>12572,\n35161=>12573,\n35208=>12574,\n35255=>12575,\n35254=>12576,\n35318=>12577,\n35664=>12578,\n35656=>12579,\n35658=>12580,\n35648=>12581,\n35667=>12582,\n35670=>12583,\n35668=>12584,\n35659=>12585,\n35669=>12586,\n35665=>12587,\n35650=>12588,\n35666=>12589,\n35671=>12590,\n35907=>12591,\n35959=>12592,\n35958=>12593,\n35994=>12594,\n36102=>12595,\n36103=>12596,\n36105=>12597,\n36268=>12598,\n36266=>12599,\n36269=>12600,\n36267=>12601,\n36461=>12602,\n36472=>12603,\n36467=>12604,\n36458=>12605,\n36463=>12606,\n36475=>12607,\n36546=>12608,\n36690=>12609,\n36689=>12610,\n36687=>12611,\n36688=>12612,\n36691=>12613,\n36788=>12614,\n37184=>12615,\n37183=>12616,\n37296=>12617,\n37293=>12618,\n37854=>12619,\n37831=>12620,\n37839=>12621,\n37826=>12622,\n37850=>12623,\n37840=>12624,\n37881=>12625,\n37868=>12626,\n37836=>12627,\n37849=>12628,\n37801=>12629,\n37862=>12630,\n37834=>12631,\n37844=>12632,\n37870=>12633,\n37859=>12634,\n37845=>12635,\n37828=>12636,\n37838=>12637,\n37824=>12638,\n37842=>12639,\n37797=>12640,\n37863=>12641,\n38269=>12642,\n38362=>12643,\n38363=>12644,\n38625=>12645,\n38697=>12646,\n38699=>12647,\n38700=>12648,\n38696=>12649,\n38694=>12650,\n38835=>12651,\n38839=>12652,\n38838=>12653,\n38877=>12654,\n38878=>12655,\n38879=>12656,\n39004=>12657,\n39001=>12658,\n39005=>12659,\n38999=>12660,\n39103=>12661,\n39101=>12662,\n39099=>12663,\n39102=>12664,\n39240=>12665,\n39239=>12666,\n39235=>12667,\n39334=>12668,\n39335=>12669,\n39450=>12670,\n39445=>12671,\n39461=>12672,\n39453=>12673,\n39460=>12674,\n39451=>12675,\n39458=>12676,\n39456=>12677,\n39463=>12678,\n39459=>12679,\n39454=>12680,\n39452=>12681,\n39444=>12682,\n39618=>12683,\n39691=>12684,\n39690=>12685,\n39694=>12686,\n39692=>12687,\n39735=>12688,\n39914=>12689,\n39915=>12690,\n39904=>12691,\n39902=>12692,\n39908=>12693,\n39910=>12694,\n39906=>12695,\n39920=>12696,\n39892=>12697,\n39895=>12698,\n39916=>12699,\n39900=>12700,\n39897=>12701,\n39909=>12702,\n39893=>12703,\n39905=>12704,\n39898=>12705,\n40311=>12706,\n40321=>12707,\n40330=>12708,\n40324=>12709,\n40328=>12710,\n40305=>12711,\n40320=>12712,\n40312=>12713,\n40326=>12714,\n40331=>12715,\n40332=>12716,\n40317=>12717,\n40299=>12718,\n40308=>12719,\n40309=>12720,\n40304=>12721,\n40297=>12722,\n40325=>12723,\n40307=>12724,\n40315=>12725,\n40322=>12726,\n40303=>12727,\n40313=>12728,\n40319=>12729,\n40327=>12730,\n40296=>12731,\n40596=>12732,\n40593=>12733,\n40640=>12734,\n40700=>12735,\n40749=>12736,\n40768=>12737,\n40769=>12738,\n40781=>12739,\n40790=>12740,\n40791=>12741,\n40792=>12742,\n21303=>12743,\n22194=>12744,\n22197=>12745,\n22195=>12746,\n22755=>12747,\n23365=>12748,\n24006=>12749,\n24007=>12750,\n24302=>12751,\n24303=>12752,\n24512=>12753,\n24513=>12754,\n25081=>12755,\n25879=>12756,\n25878=>12757,\n25877=>12758,\n25875=>12759,\n26079=>12760,\n26344=>12761,\n26339=>12762,\n26340=>12763,\n27379=>12764,\n27376=>12765,\n27370=>12766,\n27368=>12767,\n27385=>12768,\n27377=>12769,\n27374=>12770,\n27375=>12771,\n28732=>12772,\n28725=>12773,\n28719=>12774,\n28727=>12775,\n28724=>12776,\n28721=>12777,\n28738=>12778,\n28728=>12779,\n28735=>12780,\n28730=>12781,\n28729=>12782,\n28714=>12783,\n28736=>12784,\n28731=>12785,\n28723=>12786,\n28737=>12787,\n29203=>12788,\n29204=>12789,\n29352=>12790,\n29565=>12791,\n29564=>12792,\n29882=>12793,\n30379=>12794,\n30378=>12795,\n30398=>12796,\n30445=>12797,\n30668=>12798,\n30670=>12799,\n30671=>12800,\n30669=>12801,\n30706=>12802,\n31013=>12803,\n31011=>12804,\n31015=>12805,\n31016=>12806,\n31012=>12807,\n31017=>12808,\n31154=>12809,\n31342=>12810,\n31340=>12811,\n31341=>12812,\n31479=>12813,\n31817=>12814,\n31816=>12815,\n31818=>12816,\n31815=>12817,\n31813=>12818,\n31982=>12819,\n32379=>12820,\n32382=>12821,\n32385=>12822,\n32384=>12823,\n32698=>12824,\n32767=>12825,\n32889=>12826,\n33243=>12827,\n33241=>12828,\n33384=>12829,\n33385=>12830,\n34338=>12831,\n34303=>12832,\n34305=>12833,\n34302=>12834,\n34331=>12835,\n34304=>12836,\n34294=>12837,\n34308=>12838,\n34313=>12839,\n34309=>12840,\n34316=>12841,\n34301=>12842,\n34841=>12843,\n34832=>12844,\n34833=>12845,\n34839=>12846,\n34835=>12847,\n34838=>12848,\n35171=>12849,\n35174=>12850,\n35257=>12851,\n35319=>12852,\n35680=>12853,\n35690=>12854,\n35677=>12855,\n35688=>12856,\n35683=>12857,\n35685=>12858,\n35687=>12859,\n35693=>12860,\n36270=>12861,\n36486=>12862,\n36488=>12863,\n36484=>12864,\n36697=>12865,\n36694=>12866,\n36695=>12867,\n36693=>12868,\n36696=>12869,\n36698=>12870,\n37005=>12871,\n37187=>12872,\n37185=>12873,\n37303=>12874,\n37301=>12875,\n37298=>12876,\n37299=>12877,\n37899=>12878,\n37907=>12879,\n37883=>12880,\n37920=>12881,\n37903=>12882,\n37908=>12883,\n37886=>12884,\n37909=>12885,\n37904=>12886,\n37928=>12887,\n37913=>12888,\n37901=>12889,\n37877=>12890,\n37888=>12891,\n37879=>12892,\n37895=>12893,\n37902=>12894,\n37910=>12895,\n37906=>12896,\n37882=>12897,\n37897=>12898,\n37880=>12899,\n37948=>12900,\n37898=>12901,\n37887=>12902,\n37884=>12903,\n37900=>12904,\n37878=>12905,\n37905=>12906,\n37894=>12907,\n38366=>12908,\n38368=>12909,\n38367=>12910,\n38702=>12911,\n38703=>12912,\n38841=>12913,\n38843=>12914,\n38909=>12915,\n38910=>12916,\n39008=>12917,\n39010=>12918,\n39011=>12919,\n39007=>12920,\n39105=>12921,\n39106=>12922,\n39248=>12923,\n39246=>12924,\n39257=>12925,\n39244=>12926,\n39243=>12927,\n39251=>12928,\n39474=>12929,\n39476=>12930,\n39473=>12931,\n39468=>12932,\n39466=>12933,\n39478=>12934,\n39465=>12935,\n39470=>12936,\n39480=>12937,\n39469=>12938,\n39623=>12939,\n39626=>12940,\n39622=>12941,\n39696=>12942,\n39698=>12943,\n39697=>12944,\n39947=>12945,\n39944=>12946,\n39927=>12947,\n39941=>12948,\n39954=>12949,\n39928=>12950,\n40000=>12951,\n39943=>12952,\n39950=>12953,\n39942=>12954,\n39959=>12955,\n39956=>12956,\n39945=>12957,\n40351=>12958,\n40345=>12959,\n40356=>12960,\n40349=>12961,\n40338=>12962,\n40344=>12963,\n40336=>12964,\n40347=>12965,\n40352=>12966,\n40340=>12967,\n40348=>12968,\n40362=>12969,\n40343=>12970,\n40353=>12971,\n40346=>12972,\n40354=>12973,\n40360=>12974,\n40350=>12975,\n40355=>12976,\n40383=>12977,\n40361=>12978,\n40342=>12979,\n40358=>12980,\n40359=>12981,\n40601=>12982,\n40603=>12983,\n40602=>12984,\n40677=>12985,\n40676=>12986,\n40679=>12987,\n40678=>12988,\n40752=>12989,\n40750=>12990,\n40795=>12991,\n40800=>12992,\n40798=>12993,\n40797=>12994,\n40793=>12995,\n40849=>12996,\n20794=>12997,\n20793=>12998,\n21144=>12999,\n21143=>13000,\n22211=>13001,\n22205=>13002,\n22206=>13003,\n23368=>13004,\n23367=>13005,\n24011=>13006,\n24015=>13007,\n24305=>13008,\n25085=>13009,\n25883=>13010,\n27394=>13011,\n27388=>13012,\n27395=>13013,\n27384=>13014,\n27392=>13015,\n28739=>13016,\n28740=>13017,\n28746=>13018,\n28744=>13019,\n28745=>13020,\n28741=>13021,\n28742=>13022,\n29213=>13023,\n29210=>13024,\n29209=>13025,\n29566=>13026,\n29975=>13027,\n30314=>13028,\n30672=>13029,\n31021=>13030,\n31025=>13031,\n31023=>13032,\n31828=>13033,\n31827=>13034,\n31986=>13035,\n32394=>13036,\n60229=>13037,\n32391=>13037,\n32392=>13038,\n32395=>13039,\n32390=>13040,\n32397=>13041,\n32589=>13042,\n32699=>13043,\n32816=>13044,\n33245=>13045,\n34328=>13046,\n34346=>13047,\n34342=>13048,\n34335=>13049,\n34339=>13050,\n34332=>13051,\n34329=>13052,\n34343=>13053,\n34350=>13054,\n34337=>13055,\n34336=>13056,\n34345=>13057,\n34334=>13058,\n34341=>13059,\n34857=>13060,\n34845=>13061,\n34843=>13062,\n34848=>13063,\n34852=>13064,\n34844=>13065,\n34859=>13066,\n34890=>13067,\n35181=>13068,\n35177=>13069,\n35182=>13070,\n35179=>13071,\n35322=>13072,\n35705=>13073,\n35704=>13074,\n35653=>13075,\n35706=>13076,\n35707=>13077,\n36112=>13078,\n36116=>13079,\n36271=>13080,\n36494=>13081,\n36492=>13082,\n36702=>13083,\n36699=>13084,\n36701=>13085,\n37190=>13086,\n37188=>13087,\n37189=>13088,\n37305=>13089,\n37951=>13090,\n37947=>13091,\n37942=>13092,\n37929=>13093,\n37949=>13094,\n37936=>13095,\n37945=>13096,\n37930=>13097,\n37943=>13098,\n37932=>13099,\n37952=>13100,\n37937=>13101,\n38373=>13102,\n38372=>13103,\n38371=>13104,\n38709=>13105,\n38714=>13106,\n38847=>13107,\n38881=>13108,\n39012=>13109,\n39113=>13110,\n39110=>13111,\n39104=>13112,\n39256=>13113,\n39254=>13114,\n39481=>13115,\n39485=>13116,\n39494=>13117,\n39492=>13118,\n39490=>13119,\n39489=>13120,\n39482=>13121,\n39487=>13122,\n39629=>13123,\n39701=>13124,\n39703=>13125,\n39704=>13126,\n39702=>13127,\n39738=>13128,\n39762=>13129,\n39979=>13130,\n39965=>13131,\n39964=>13132,\n39980=>13133,\n39971=>13134,\n39976=>13135,\n39977=>13136,\n39972=>13137,\n39969=>13138,\n40375=>13139,\n40374=>13140,\n40380=>13141,\n40385=>13142,\n40391=>13143,\n40394=>13144,\n40399=>13145,\n40382=>13146,\n40389=>13147,\n40387=>13148,\n40379=>13149,\n40373=>13150,\n40398=>13151,\n40377=>13152,\n40378=>13153,\n40364=>13154,\n40392=>13155,\n40369=>13156,\n40365=>13157,\n40396=>13158,\n40371=>13159,\n40397=>13160,\n40370=>13161,\n40570=>13162,\n40604=>13163,\n40683=>13164,\n40686=>13165,\n40685=>13166,\n40731=>13167,\n40728=>13168,\n40730=>13169,\n40753=>13170,\n40782=>13171,\n40805=>13172,\n40804=>13173,\n40850=>13174,\n20153=>13175,\n22214=>13176,\n22213=>13177,\n22219=>13178,\n22897=>13179,\n23371=>13180,\n23372=>13181,\n24021=>13182,\n24017=>13183,\n24306=>13184,\n25889=>13185,\n25888=>13186,\n25894=>13187,\n25890=>13188,\n27403=>13189,\n27400=>13190,\n27401=>13191,\n27661=>13192,\n28757=>13193,\n28758=>13194,\n28759=>13195,\n28754=>13196,\n29214=>13197,\n29215=>13198,\n29353=>13199,\n29567=>13200,\n29912=>13201,\n29909=>13202,\n29913=>13203,\n29911=>13204,\n30317=>13205,\n30381=>13206,\n31029=>13207,\n31156=>13208,\n31344=>13209,\n31345=>13210,\n31831=>13211,\n31836=>13212,\n31833=>13213,\n31835=>13214,\n31834=>13215,\n31988=>13216,\n31985=>13217,\n32401=>13218,\n32591=>13219,\n32647=>13220,\n33246=>13221,\n33387=>13222,\n34356=>13223,\n34357=>13224,\n34355=>13225,\n34348=>13226,\n34354=>13227,\n34358=>13228,\n34860=>13229,\n34856=>13230,\n34854=>13231,\n34858=>13232,\n34853=>13233,\n35185=>13234,\n35263=>13235,\n35262=>13236,\n35323=>13237,\n35710=>13238,\n35716=>13239,\n35714=>13240,\n35718=>13241,\n35717=>13242,\n35711=>13243,\n36117=>13244,\n36501=>13245,\n36500=>13246,\n36506=>13247,\n36498=>13248,\n36496=>13249,\n36502=>13250,\n36503=>13251,\n36704=>13252,\n36706=>13253,\n37191=>13254,\n37964=>13255,\n37968=>13256,\n37962=>13257,\n37963=>13258,\n37967=>13259,\n37959=>13260,\n37957=>13261,\n37960=>13262,\n37961=>13263,\n37958=>13264,\n38719=>13265,\n38883=>13266,\n39018=>13267,\n39017=>13268,\n39115=>13269,\n39252=>13270,\n39259=>13271,\n39502=>13272,\n39507=>13273,\n39508=>13274,\n39500=>13275,\n39503=>13276,\n39496=>13277,\n39498=>13278,\n39497=>13279,\n39506=>13280,\n39504=>13281,\n39632=>13282,\n39705=>13283,\n39723=>13284,\n39739=>13285,\n39766=>13286,\n39765=>13287,\n40006=>13288,\n40008=>13289,\n39999=>13290,\n40004=>13291,\n39993=>13292,\n39987=>13293,\n40001=>13294,\n39996=>13295,\n39991=>13296,\n39988=>13297,\n39986=>13298,\n39997=>13299,\n39990=>13300,\n40411=>13301,\n40402=>13302,\n40414=>13303,\n40410=>13304,\n40395=>13305,\n40400=>13306,\n40412=>13307,\n40401=>13308,\n40415=>13309,\n40425=>13310,\n40409=>13311,\n40408=>13312,\n40406=>13313,\n40437=>13314,\n40405=>13315,\n40413=>13316,\n40630=>13317,\n40688=>13318,\n40757=>13319,\n40755=>13320,\n40754=>13321,\n40770=>13322,\n40811=>13323,\n40853=>13324,\n40866=>13325,\n20797=>13326,\n21145=>13327,\n22760=>13328,\n22759=>13329,\n22898=>13330,\n23373=>13331,\n24024=>13332,\n34863=>13333,\n24399=>13334,\n25089=>13335,\n25091=>13336,\n25092=>13337,\n25897=>13338,\n25893=>13339,\n26006=>13340,\n26347=>13341,\n27409=>13342,\n27410=>13343,\n27407=>13344,\n27594=>13345,\n28763=>13346,\n28762=>13347,\n29218=>13348,\n29570=>13349,\n29569=>13350,\n29571=>13351,\n30320=>13352,\n30676=>13353,\n31847=>13354,\n31846=>13355,\n32405=>13356,\n33388=>13357,\n34362=>13358,\n34368=>13359,\n34361=>13360,\n34364=>13361,\n34353=>13362,\n34363=>13363,\n34366=>13364,\n34864=>13365,\n34866=>13366,\n34862=>13367,\n34867=>13368,\n35190=>13369,\n35188=>13370,\n35187=>13371,\n35326=>13372,\n35724=>13373,\n35726=>13374,\n35723=>13375,\n35720=>13376,\n35909=>13377,\n36121=>13378,\n36504=>13379,\n36708=>13380,\n36707=>13381,\n37308=>13382,\n37986=>13383,\n37973=>13384,\n37981=>13385,\n37975=>13386,\n37982=>13387,\n38852=>13388,\n38853=>13389,\n38912=>13390,\n39510=>13391,\n39513=>13392,\n39710=>13393,\n39711=>13394,\n39712=>13395,\n40018=>13396,\n40024=>13397,\n40016=>13398,\n40010=>13399,\n40013=>13400,\n40011=>13401,\n40021=>13402,\n40025=>13403,\n40012=>13404,\n40014=>13405,\n40443=>13406,\n40439=>13407,\n40431=>13408,\n40419=>13409,\n40427=>13410,\n40440=>13411,\n40420=>13412,\n40438=>13413,\n40417=>13414,\n40430=>13415,\n40422=>13416,\n40434=>13417,\n40432=>13418,\n60370=>13418,\n40418=>13419,\n40428=>13420,\n40436=>13421,\n40435=>13422,\n40424=>13423,\n40429=>13424,\n40642=>13425,\n40656=>13426,\n40690=>13427,\n40691=>13428,\n40710=>13429,\n40732=>13430,\n40760=>13431,\n40759=>13432,\n40758=>13433,\n40771=>13434,\n40783=>13435,\n40817=>13436,\n40816=>13437,\n40814=>13438,\n40815=>13439,\n22227=>13440,\n22221=>13441,\n23374=>13442,\n23661=>13443,\n25901=>13444,\n26349=>13445,\n26350=>13446,\n27411=>13447,\n28767=>13448,\n28769=>13449,\n28765=>13450,\n28768=>13451,\n29219=>13452,\n29915=>13453,\n29925=>13454,\n30677=>13455,\n31032=>13456,\n31159=>13457,\n31158=>13458,\n31850=>13459,\n32407=>13460,\n32649=>13461,\n33389=>13462,\n34371=>13463,\n34872=>13464,\n34871=>13465,\n34869=>13466,\n34891=>13467,\n35732=>13468,\n35733=>13469,\n36510=>13470,\n36511=>13471,\n36512=>13472,\n36509=>13473,\n37310=>13474,\n37309=>13475,\n37314=>13476,\n37995=>13477,\n37992=>13478,\n37993=>13479,\n38629=>13480,\n38726=>13481,\n38723=>13482,\n38727=>13483,\n38855=>13484,\n38885=>13485,\n39518=>13486,\n39637=>13487,\n39769=>13488,\n40035=>13489,\n40039=>13490,\n40038=>13491,\n40034=>13492,\n40030=>13493,\n40032=>13494,\n40450=>13495,\n40446=>13496,\n40455=>13497,\n40451=>13498,\n40454=>13499,\n40453=>13500,\n40448=>13501,\n40449=>13502,\n40457=>13503,\n40447=>13504,\n40445=>13505,\n40452=>13506,\n40608=>13507,\n40734=>13508,\n40774=>13509,\n40820=>13510,\n40821=>13511,\n40822=>13512,\n22228=>13513,\n25902=>13514,\n26040=>13515,\n27416=>13516,\n27417=>13517,\n27415=>13518,\n27418=>13519,\n28770=>13520,\n29222=>13521,\n29354=>13522,\n30680=>13523,\n30681=>13524,\n31033=>13525,\n31849=>13526,\n31851=>13527,\n31990=>13528,\n32410=>13529,\n32408=>13530,\n32411=>13531,\n32409=>13532,\n33248=>13533,\n33249=>13534,\n34374=>13535,\n34375=>13536,\n34376=>13537,\n35193=>13538,\n35194=>13539,\n35196=>13540,\n35195=>13541,\n35327=>13542,\n35736=>13543,\n35737=>13544,\n36517=>13545,\n36516=>13546,\n36515=>13547,\n37998=>13548,\n37997=>13549,\n37999=>13550,\n38001=>13551,\n38003=>13552,\n38729=>13553,\n39026=>13554,\n39263=>13555,\n40040=>13556,\n40046=>13557,\n40045=>13558,\n40459=>13559,\n40461=>13560,\n40464=>13561,\n40463=>13562,\n40466=>13563,\n40465=>13564,\n40609=>13565,\n40693=>13566,\n40713=>13567,\n40775=>13568,\n40824=>13569,\n40827=>13570,\n40826=>13571,\n40825=>13572,\n22302=>13573,\n28774=>13574,\n31855=>13575,\n34876=>13576,\n36274=>13577,\n36518=>13578,\n37315=>13579,\n38004=>13580,\n38008=>13581,\n38006=>13582,\n38005=>13583,\n39520=>13584,\n39726=>13585,\n60830=>13585,\n40052=>13586,\n40051=>13587,\n40049=>13588,\n40053=>13589,\n40468=>13590,\n40467=>13591,\n40694=>13592,\n40714=>13593,\n40868=>13594,\n28776=>13595,\n28773=>13596,\n31991=>13597,\n34410=>13598,\n34878=>13599,\n34877=>13600,\n34879=>13601,\n35742=>13602,\n35996=>13603,\n36521=>13604,\n36553=>13605,\n38731=>13606,\n39027=>13607,\n39028=>13608,\n39116=>13609,\n39265=>13610,\n39339=>13611,\n39524=>13612,\n39526=>13613,\n39527=>13614,\n39716=>13615,\n40469=>13616,\n40471=>13617,\n40776=>13618,\n25095=>13619,\n27422=>13620,\n29223=>13621,\n34380=>13622,\n36520=>13623,\n38018=>13624,\n38016=>13625,\n38017=>13626,\n39529=>13627,\n39528=>13628,\n40473=>13629,\n34379=>13630,\n35743=>13631,\n38019=>13632,\n40057=>13633,\n40631=>13634,\n30325=>13635,\n39531=>13636,\n40058=>13637,\n40477=>13638,\n28777=>13639,\n28778=>13640,\n29225=>13641,\n40612=>13642,\n40830=>13643,\n40777=>13644,\n40856=>13645,\n65049=>13646,\n65075=>13743,\n9588=>13744,\n65076=>13745,\n65103=>13746,\n168=>13747,\n776=>13747,\n63208=>13747,\n710=>13748,\n65342=>13748,\n63209=>13748,\n12541=>13749,\n63210=>13749,\n12542=>13750,\n63211=>13750,\n12445=>13751,\n63212=>13751,\n12446=>13752,\n63213=>13752,\n12293=>13754,\n63216=>13754,\n12294=>13755,\n63217=>13755,\n12295=>13756,\n63218=>13756,\n12540=>13757,\n63219=>13757,\n65339=>13758,\n63220=>13758,\n65341=>13759,\n63221=>13759,\n10045=>13760,\n63222=>13760,\n12353=>13761,\n63223=>13761,\n12354=>13762,\n63224=>13762,\n12355=>13763,\n63225=>13763,\n12356=>13764,\n63226=>13764,\n12357=>13765,\n63227=>13765,\n12358=>13766,\n63228=>13766,\n12359=>13767,\n63229=>13767,\n12360=>13768,\n63230=>13768,\n12361=>13769,\n63231=>13769,\n12362=>13770,\n63232=>13770,\n12363=>13771,\n63233=>13771,\n12364=>13772,\n63234=>13772,\n12365=>13773,\n63235=>13773,\n12366=>13774,\n63236=>13774,\n12367=>13775,\n63237=>13775,\n12368=>13776,\n63238=>13776,\n12369=>13777,\n63239=>13777,\n12370=>13778,\n63240=>13778,\n12371=>13779,\n63241=>13779,\n12372=>13780,\n63242=>13780,\n12373=>13781,\n63243=>13781,\n12374=>13782,\n63244=>13782,\n12375=>13783,\n63245=>13783,\n12376=>13784,\n63246=>13784,\n12377=>13785,\n63247=>13785,\n12378=>13786,\n63248=>13786,\n12379=>13787,\n63249=>13787,\n12380=>13788,\n63250=>13788,\n12381=>13789,\n63251=>13789,\n12382=>13790,\n63252=>13790,\n12383=>13791,\n63253=>13791,\n12384=>13792,\n63254=>13792,\n12385=>13793,\n63255=>13793,\n12386=>13794,\n63256=>13794,\n12387=>13795,\n63257=>13795,\n12388=>13796,\n63258=>13796,\n12389=>13797,\n63259=>13797,\n12390=>13798,\n63260=>13798,\n12391=>13799,\n63261=>13799,\n12392=>13800,\n63262=>13800,\n12393=>13801,\n63263=>13801,\n12394=>13802,\n63264=>13802,\n12395=>13803,\n63265=>13803,\n12396=>13804,\n63266=>13804,\n12397=>13805,\n63267=>13805,\n12398=>13806,\n63268=>13806,\n12399=>13807,\n63269=>13807,\n12400=>13808,\n63270=>13808,\n12401=>13809,\n63271=>13809,\n12402=>13810,\n63272=>13810,\n12403=>13811,\n63273=>13811,\n12404=>13812,\n63274=>13812,\n12405=>13813,\n63275=>13813,\n12406=>13814,\n63276=>13814,\n12407=>13815,\n63277=>13815,\n12408=>13816,\n63278=>13816,\n12409=>13817,\n63279=>13817,\n12410=>13818,\n63280=>13818,\n12411=>13819,\n63281=>13819,\n12412=>13820,\n63282=>13820,\n12413=>13821,\n63283=>13821,\n12414=>13822,\n63284=>13822,\n12415=>13823,\n63285=>13823,\n12416=>13824,\n63286=>13824,\n12417=>13825,\n63287=>13825,\n12418=>13826,\n63288=>13826,\n12419=>13827,\n63289=>13827,\n12420=>13828,\n63290=>13828,\n12421=>13829,\n63291=>13829,\n12422=>13830,\n63292=>13830,\n12423=>13831,\n63293=>13831,\n12424=>13832,\n63294=>13832,\n12425=>13833,\n63295=>13833,\n12426=>13834,\n63296=>13834,\n12427=>13835,\n63297=>13835,\n12428=>13836,\n63298=>13836,\n12429=>13837,\n63299=>13837,\n12430=>13838,\n63300=>13838,\n12431=>13839,\n63301=>13839,\n12432=>13840,\n63302=>13840,\n12433=>13841,\n63303=>13841,\n12434=>13842,\n63304=>13842,\n12435=>13843,\n63305=>13843,\n12449=>13844,\n63306=>13844,\n12450=>13845,\n63307=>13845,\n12451=>13846,\n63308=>13846,\n12452=>13847,\n63309=>13847,\n12453=>13848,\n63310=>13848,\n12454=>13849,\n63311=>13849,\n12455=>13850,\n63312=>13850,\n12456=>13851,\n63313=>13851,\n12457=>13852,\n63314=>13852,\n12458=>13853,\n63315=>13853,\n12459=>13854,\n63316=>13854,\n12460=>13855,\n63317=>13855,\n12461=>13856,\n63318=>13856,\n12462=>13857,\n63319=>13857,\n12463=>13858,\n63320=>13858,\n12464=>13859,\n63321=>13859,\n12465=>13860,\n63322=>13860,\n12466=>13861,\n63323=>13861,\n12467=>13862,\n63324=>13862,\n12468=>13863,\n63325=>13863,\n12469=>13864,\n63326=>13864,\n12470=>13865,\n63327=>13865,\n12471=>13866,\n63328=>13866,\n12472=>13867,\n63329=>13867,\n12473=>13868,\n63330=>13868,\n12474=>13869,\n63331=>13869,\n12475=>13870,\n63332=>13870,\n12476=>13871,\n63333=>13871,\n12477=>13872,\n63334=>13872,\n12478=>13873,\n63335=>13873,\n12479=>13874,\n63336=>13874,\n12480=>13875,\n63337=>13875,\n12481=>13876,\n63338=>13876,\n12482=>13877,\n63339=>13877,\n12483=>13878,\n63340=>13878,\n12484=>13879,\n63341=>13879,\n12485=>13880,\n63342=>13880,\n12486=>13881,\n63343=>13881,\n12487=>13882,\n63344=>13882,\n12488=>13883,\n63345=>13883,\n12489=>13884,\n63346=>13884,\n12490=>13885,\n63347=>13885,\n12491=>13886,\n63348=>13886,\n12492=>13887,\n63349=>13887,\n12493=>13888,\n63350=>13888,\n12494=>13889,\n63351=>13889,\n12495=>13890,\n63352=>13890,\n12496=>13891,\n63353=>13891,\n12497=>13892,\n63354=>13892,\n12498=>13893,\n63355=>13893,\n12499=>13894,\n63356=>13894,\n12500=>13895,\n63357=>13895,\n12501=>13896,\n63358=>13896,\n12502=>13897,\n63359=>13897,\n12503=>13898,\n63360=>13898,\n12504=>13899,\n63361=>13899,\n12505=>13900,\n63362=>13900,\n12506=>13901,\n63363=>13901,\n12507=>13902,\n63364=>13902,\n12508=>13903,\n63365=>13903,\n12509=>13904,\n63366=>13904,\n12510=>13905,\n63367=>13905,\n12511=>13906,\n63368=>13906,\n12512=>13907,\n63369=>13907,\n12513=>13908,\n63370=>13908,\n12514=>13909,\n63371=>13909,\n12515=>13910,\n63372=>13910,\n12516=>13911,\n63373=>13911,\n12517=>13912,\n63374=>13912,\n12518=>13913,\n63375=>13913,\n12519=>13914,\n63376=>13914,\n12520=>13915,\n63377=>13915,\n12521=>13916,\n63378=>13916,\n12522=>13917,\n63379=>13917,\n12523=>13918,\n63380=>13918,\n12524=>13919,\n63381=>13919,\n12525=>13920,\n63382=>13920,\n12526=>13921,\n63383=>13921,\n12527=>13922,\n63384=>13922,\n12528=>13923,\n63385=>13923,\n12529=>13924,\n63386=>13924,\n12530=>13925,\n63387=>13925,\n12531=>13926,\n63388=>13926,\n12532=>13927,\n63389=>13927,\n12533=>13928,\n63390=>13928,\n12534=>13929,\n63391=>13929,\n1040=>13930,\n63392=>13930,\n1041=>13931,\n63393=>13931,\n1042=>13932,\n63394=>13932,\n1043=>13933,\n63395=>13933,\n1044=>13934,\n63396=>13934,\n1045=>13935,\n63397=>13935,\n1025=>13936,\n63398=>13936,\n1046=>13937,\n63399=>13937,\n1047=>13938,\n63400=>13938,\n1048=>13939,\n63401=>13939,\n1049=>13940,\n63402=>13940,\n1050=>13941,\n63403=>13941,\n1051=>13942,\n63404=>13942,\n1052=>13943,\n63405=>13943,\n1053=>13944,\n63406=>13944,\n1054=>13945,\n63407=>13945,\n1055=>13946,\n63408=>13946,\n1056=>13947,\n63409=>13947,\n1057=>13948,\n63410=>13948,\n1058=>13949,\n63411=>13949,\n1059=>13950,\n63412=>13950,\n1060=>13951,\n63413=>13951,\n1061=>13952,\n63414=>13952,\n1062=>13953,\n63415=>13953,\n1063=>13954,\n63416=>13954,\n1064=>13955,\n63417=>13955,\n1065=>13956,\n63418=>13956,\n1066=>13957,\n63419=>13957,\n1067=>13958,\n63420=>13958,\n1068=>13959,\n63421=>13959,\n1069=>13960,\n63422=>13960,\n1070=>13961,\n63423=>13961,\n1071=>13962,\n63424=>13962,\n1072=>13963,\n63425=>13963,\n1073=>13964,\n63426=>13964,\n1074=>13965,\n63427=>13965,\n1075=>13966,\n63428=>13966,\n1076=>13967,\n63429=>13967,\n1077=>13968,\n63430=>13968,\n1105=>13969,\n63431=>13969,\n1078=>13970,\n63432=>13970,\n1079=>13971,\n63433=>13971,\n1080=>13972,\n63434=>13972,\n1081=>13973,\n63435=>13973,\n1082=>13974,\n63436=>13974,\n1083=>13975,\n63437=>13975,\n1084=>13976,\n63438=>13976,\n1085=>13977,\n63439=>13977,\n1086=>13978,\n63440=>13978,\n1087=>13979,\n63441=>13979,\n1088=>13980,\n63442=>13980,\n1089=>13981,\n63443=>13981,\n1090=>13982,\n63444=>13982,\n1091=>13983,\n63445=>13983,\n1092=>13984,\n63446=>13984,\n1093=>13985,\n63447=>13985,\n1094=>13986,\n63448=>13986,\n1095=>13987,\n63449=>13987,\n1096=>13988,\n63450=>13988,\n1097=>13989,\n63451=>13989,\n1098=>13990,\n63452=>13990,\n1099=>13991,\n63453=>13991,\n1100=>13992,\n63454=>13992,\n1101=>13993,\n63455=>13993,\n1102=>13994,\n63456=>13994,\n1103=>13995,\n63457=>13995,\n8679=>13996,\n63458=>13996,\n8632=>13997,\n63459=>13997,\n8633=>13998,\n63460=>13998,\n12751=>13999,\n20033=>13999,\n63461=>13999,\n131276=>14000,\n63462=>14000,\n20058=>14001,\n63463=>14001,\n131210=>14002,\n63464=>14002,\n20994=>14003,\n63465=>14003,\n17553=>14004,\n63466=>14004,\n40880=>14005,\n63467=>14005,\n20872=>14006,\n63468=>14006,\n13853=>14007,\n40881=>14007,\n63469=>14007,\n161287=>14008,\n63470=>14008,\n172=>14049,\n65506=>14049,\n63511=>14049,\n65508=>14050,\n63512=>14050,\n65287=>14051,\n63513=>14051,\n65282=>14052,\n63514=>14052,\n12849=>14053,\n63515=>14053,\n8470=>14054,\n63516=>14054,\n8481=>14055,\n63517=>14055,\n30849=>14056,\n37561=>14057,\n58501=>14057,\n35023=>14058,\n22715=>14059,\n24658=>14060,\n31911=>14061,\n23290=>14062,\n9556=>14063,\n9574=>14064,\n9559=>14065,\n9568=>14066,\n9580=>14067,\n9571=>14068,\n9562=>14069,\n9577=>14070,\n9565=>14071,\n9554=>14072,\n9572=>14073,\n9557=>14074,\n9560=>14078,\n9575=>14079,\n9563=>14080,\n9555=>14081,\n9573=>14082,\n9558=>14083,\n9567=>14084,\n9579=>14085,\n9570=>14086,\n9561=>14087,\n9576=>14088,\n9564=>14089,\n9553=>14090,\n9619=>14096,\n65517=>14096,\n65040=>14099,\n65041=>14100,\n65042=>14101,\n65044=>14103,\n65043=>14104,\n65046=>14105,\n65045=>14106,\n147159=>14123,\n58129=>14123,\n22462=>14124,\n58130=>14124,\n159443=>14125,\n58131=>14125,\n28990=>14126,\n58132=>14126,\n153568=>14127,\n58133=>14127,\n27042=>14128,\n58135=>14128,\n166889=>14129,\n58136=>14129,\n23412=>14130,\n58137=>14130,\n31305=>14131,\n58138=>14131,\n153825=>14132,\n58139=>14132,\n169177=>14133,\n58140=>14133,\n31333=>14134,\n58141=>14134,\n31357=>14135,\n58142=>14135,\n154028=>14136,\n58143=>14136,\n31419=>14137,\n58144=>14137,\n31408=>14138,\n58145=>14138,\n31426=>14139,\n58146=>14139,\n31427=>14140,\n58147=>14140,\n29137=>14141,\n58148=>14141,\n156813=>14142,\n58149=>14142,\n16842=>14143,\n58150=>14143,\n31450=>14144,\n58151=>14144,\n31453=>14145,\n58152=>14145,\n31466=>14146,\n58153=>14146,\n16879=>14147,\n58154=>14147,\n21682=>14148,\n58155=>14148,\n154625=>14149,\n58156=>14149,\n31499=>14150,\n58157=>14150,\n31573=>14151,\n58158=>14151,\n31529=>14152,\n58159=>14152,\n152334=>14153,\n58160=>14153,\n154878=>14154,\n58161=>14154,\n31650=>14155,\n58162=>14155,\n31599=>14156,\n58163=>14156,\n33692=>14157,\n58164=>14157,\n154548=>14158,\n58165=>14158,\n158847=>14159,\n58166=>14159,\n31696=>14160,\n58167=>14160,\n33825=>14161,\n58168=>14161,\n31634=>14162,\n58169=>14162,\n58171=>14164,\n154912=>14164,\n33938=>14166,\n58174=>14166,\n31738=>14167,\n58175=>14167,\n31797=>14169,\n58177=>14169,\n154817=>14170,\n58178=>14170,\n31812=>14171,\n58179=>14171,\n31875=>14172,\n58180=>14172,\n149634=>14173,\n58181=>14173,\n31910=>14174,\n58182=>14174,\n148856=>14175,\n58184=>14175,\n31945=>14176,\n58185=>14176,\n31943=>14177,\n58186=>14177,\n31974=>14178,\n58187=>14178,\n31987=>14180,\n58189=>14180,\n31989=>14181,\n58190=>14181,\n32359=>14182,\n58192=>14182,\n17693=>14183,\n58193=>14183,\n159300=>14184,\n58194=>14184,\n32093=>14185,\n58195=>14185,\n159446=>14186,\n58196=>14186,\n32137=>14187,\n58198=>14187,\n32171=>14188,\n58199=>14188,\n28981=>14189,\n58200=>14189,\n32179=>14190,\n58201=>14190,\n32214=>14191,\n147543=>14192,\n58203=>14192,\n155689=>14193,\n58204=>14193,\n32228=>14194,\n58205=>14194,\n15635=>14195,\n58206=>14195,\n32245=>14196,\n58207=>14196,\n137209=>14197,\n58208=>14197,\n32229=>14198,\n58209=>14198,\n164717=>14199,\n58210=>14199,\n155937=>14201,\n58212=>14201,\n155994=>14202,\n58213=>14202,\n32366=>14203,\n58214=>14203,\n17195=>14205,\n58216=>14205,\n37996=>14206,\n58217=>14206,\n32295=>14207,\n58218=>14207,\n32576=>14208,\n58219=>14208,\n32577=>14209,\n58220=>14209,\n32583=>14210,\n58221=>14210,\n31030=>14211,\n58222=>14211,\n156368=>14212,\n58223=>14212,\n39393=>14213,\n58224=>14213,\n32663=>14214,\n58225=>14214,\n156497=>14215,\n58226=>14215,\n32675=>14216,\n58227=>14216,\n136801=>14217,\n58228=>14217,\n131176=>14218,\n58229=>14218,\n17756=>14219,\n58230=>14219,\n145254=>14220,\n58231=>14220,\n164666=>14221,\n58233=>14221,\n32762=>14222,\n58234=>14222,\n156809=>14223,\n58235=>14223,\n64091=>14224,\n32776=>14225,\n58237=>14225,\n32797=>14226,\n58238=>14226,\n32815=>14228,\n58240=>14228,\n172167=>14229,\n58241=>14229,\n158915=>14230,\n58242=>14230,\n32827=>14231,\n58243=>14231,\n32828=>14232,\n58244=>14232,\n32865=>14233,\n58245=>14233,\n141076=>14234,\n58246=>14234,\n18825=>14235,\n58247=>14235,\n157222=>14236,\n58248=>14236,\n146915=>14237,\n58249=>14237,\n157416=>14238,\n58250=>14238,\n26405=>14239,\n58251=>14239,\n32935=>14240,\n58252=>14240,\n166472=>14241,\n58253=>14241,\n33031=>14242,\n58254=>14242,\n33050=>14243,\n58255=>14243,\n22704=>14244,\n58256=>14244,\n141046=>14245,\n58257=>14245,\n27775=>14246,\n58258=>14246,\n156824=>14247,\n58259=>14247,\n25831=>14248,\n58261=>14248,\n136330=>14249,\n58262=>14249,\n33304=>14250,\n58263=>14250,\n137310=>14251,\n58264=>14251,\n27219=>14252,\n58265=>14252,\n150117=>14253,\n58266=>14253,\n150165=>14254,\n58267=>14254,\n17530=>14255,\n58268=>14255,\n33321=>14256,\n58269=>14256,\n158290=>14257,\n58271=>14257,\n146814=>14258,\n58272=>14258,\n20473=>14259,\n58273=>14259,\n136445=>14260,\n58274=>14260,\n34018=>14261,\n58275=>14261,\n33634=>14262,\n58276=>14262,\n194959=>14263,\n149927=>14264,\n58278=>14264,\n144688=>14265,\n58279=>14265,\n137075=>14266,\n58280=>14266,\n146936=>14267,\n58281=>14267,\n33450=>14268,\n58282=>14268,\n26907=>14269,\n58283=>14269,\n194964=>14270,\n58284=>14270,\n16859=>14271,\n58285=>14271,\n34123=>14272,\n58286=>14272,\n33488=>14273,\n58287=>14273,\n33562=>14274,\n58288=>14274,\n134678=>14275,\n58289=>14275,\n137140=>14276,\n58290=>14276,\n14017=>14277,\n58291=>14277,\n143741=>14278,\n58292=>14278,\n144730=>14279,\n58293=>14279,\n33403=>14280,\n58294=>14280,\n33506=>14281,\n58295=>14281,\n33560=>14282,\n58296=>14282,\n147083=>14283,\n58297=>14283,\n159139=>14284,\n58298=>14284,\n158469=>14285,\n58299=>14285,\n158615=>14286,\n58300=>14286,\n144846=>14287,\n58301=>14287,\n15807=>14288,\n58302=>14288,\n33565=>14289,\n58303=>14289,\n21996=>14290,\n58304=>14290,\n33669=>14291,\n58305=>14291,\n17675=>14292,\n58306=>14292,\n159141=>14293,\n58307=>14293,\n33708=>14294,\n58308=>14294,\n33747=>14296,\n58310=>14296,\n159444=>14297,\n58312=>14297,\n27223=>14298,\n58313=>14298,\n34138=>14299,\n58314=>14299,\n13462=>14300,\n58315=>14300,\n159298=>14301,\n58316=>14301,\n33880=>14302,\n58318=>14302,\n154596=>14303,\n58319=>14303,\n33905=>14304,\n58320=>14304,\n15827=>14305,\n58321=>14305,\n17636=>14306,\n58322=>14306,\n27303=>14307,\n58323=>14307,\n33866=>14308,\n58324=>14308,\n31064=>14309,\n58326=>14309,\n158614=>14311,\n58328=>14311,\n159351=>14312,\n58329=>14312,\n159299=>14313,\n58330=>14313,\n34014=>14314,\n58331=>14314,\n33681=>14316,\n58333=>14316,\n17568=>14317,\n58334=>14317,\n33939=>14318,\n58335=>14318,\n34020=>14319,\n58336=>14319,\n154769=>14320,\n58337=>14320,\n16960=>14321,\n58338=>14321,\n154816=>14322,\n58339=>14322,\n17731=>14323,\n58340=>14323,\n34100=>14324,\n58341=>14324,\n23282=>14325,\n58342=>14325,\n17699=>14326,\n17703=>14327,\n58344=>14327,\n34163=>14328,\n58345=>14328,\n17686=>14329,\n58346=>14329,\n26559=>14330,\n58347=>14330,\n34326=>14331,\n58348=>14331,\n165413=>14332,\n58349=>14332,\n165435=>14333,\n58350=>14333,\n34241=>14334,\n58351=>14334,\n159880=>14335,\n58352=>14335,\n34306=>14336,\n58353=>14336,\n136578=>14337,\n58354=>14337,\n159949=>14338,\n58355=>14338,\n194994=>14339,\n58356=>14339,\n17770=>14340,\n58357=>14340,\n34344=>14341,\n58358=>14341,\n13896=>14342,\n58359=>14342,\n137378=>14343,\n58360=>14343,\n21495=>14344,\n58361=>14344,\n160666=>14345,\n58362=>14345,\n34430=>14346,\n58363=>14346,\n172280=>14348,\n58365=>14348,\n34798=>14349,\n58366=>14349,\n142375=>14350,\n58367=>14350,\n34737=>14351,\n58368=>14351,\n34778=>14352,\n58369=>14352,\n34831=>14353,\n60990=>14353,\n58370=>14353,\n22113=>14354,\n58371=>14354,\n34412=>14355,\n58372=>14355,\n26710=>14356,\n58373=>14356,\n17935=>14357,\n58374=>14357,\n34885=>14358,\n58375=>14358,\n34886=>14359,\n58376=>14359,\n161248=>14360,\n58377=>14360,\n146873=>14361,\n58378=>14361,\n161252=>14362,\n58379=>14362,\n34910=>14363,\n58380=>14363,\n34972=>14364,\n58381=>14364,\n18011=>14365,\n58382=>14365,\n34996=>14366,\n58383=>14366,\n34997=>14367,\n58384=>14367,\n35013=>14368,\n58386=>14368,\n161551=>14369,\n58388=>14369,\n35207=>14370,\n58389=>14370,\n35239=>14374,\n58393=>14374,\n35260=>14375,\n58394=>14375,\n166437=>14376,\n58395=>14376,\n35303=>14377,\n58396=>14377,\n162084=>14378,\n58397=>14378,\n162493=>14379,\n58398=>14379,\n35484=>14380,\n58399=>14380,\n30611=>14381,\n58400=>14381,\n37374=>14382,\n58401=>14382,\n35472=>14383,\n58402=>14383,\n162393=>14384,\n58403=>14384,\n31465=>14385,\n58404=>14385,\n162618=>14386,\n58405=>14386,\n18195=>14387,\n58407=>14387,\n162616=>14388,\n58408=>14388,\n29052=>14389,\n58409=>14389,\n35596=>14390,\n58410=>14390,\n35615=>14391,\n58411=>14391,\n152624=>14392,\n58412=>14392,\n152933=>14393,\n58413=>14393,\n35647=>14394,\n58414=>14394,\n35661=>14396,\n58416=>14396,\n35497=>14397,\n58417=>14397,\n150138=>14398,\n58418=>14398,\n35728=>14399,\n58419=>14399,\n35739=>14400,\n58420=>14400,\n35503=>14401,\n58421=>14401,\n136927=>14402,\n58422=>14402,\n17941=>14403,\n58423=>14403,\n34895=>14404,\n58424=>14404,\n35995=>14405,\n58425=>14405,\n163156=>14406,\n58426=>14406,\n163215=>14407,\n58427=>14407,\n195028=>14408,\n58428=>14408,\n14117=>14409,\n58429=>14409,\n163155=>14410,\n58430=>14410,\n36054=>14411,\n58431=>14411,\n163224=>14412,\n58432=>14412,\n163261=>14413,\n58433=>14413,\n36114=>14414,\n58434=>14414,\n36099=>14415,\n58435=>14415,\n137488=>14416,\n58436=>14416,\n36059=>14417,\n58437=>14417,\n28764=>14418,\n58438=>14418,\n36113=>14419,\n58439=>14419,\n16080=>14420,\n58441=>14420,\n195031=>14421,\n36265=>14422,\n58443=>14422,\n163842=>14423,\n58444=>14423,\n135188=>14424,\n58445=>14424,\n149898=>14425,\n58446=>14425,\n15228=>14426,\n58447=>14426,\n164284=>14427,\n58448=>14427,\n160012=>14428,\n58449=>14428,\n31463=>14429,\n58450=>14429,\n36525=>14430,\n58451=>14430,\n36534=>14431,\n58452=>14431,\n36547=>14432,\n58453=>14432,\n37588=>14433,\n58454=>14433,\n36633=>14434,\n58455=>14434,\n36653=>14435,\n58456=>14435,\n164709=>14436,\n58457=>14436,\n164882=>14437,\n58458=>14437,\n36773=>14438,\n58459=>14438,\n37635=>14439,\n58460=>14439,\n172703=>14440,\n58461=>14440,\n133712=>14441,\n58462=>14441,\n36787=>14442,\n58463=>14442,\n166366=>14444,\n58465=>14444,\n165181=>14445,\n58466=>14445,\n146875=>14446,\n58467=>14446,\n24312=>14447,\n58468=>14447,\n143970=>14448,\n58469=>14448,\n36857=>14449,\n58470=>14449,\n140069=>14451,\n58474=>14451,\n14720=>14452,\n58475=>14452,\n159447=>14453,\n58476=>14453,\n36919=>14454,\n58477=>14454,\n165180=>14455,\n58478=>14455,\n162494=>14456,\n58479=>14456,\n36961=>14457,\n58480=>14457,\n165228=>14458,\n58481=>14458,\n165387=>14459,\n58482=>14459,\n37032=>14460,\n58483=>14460,\n165651=>14461,\n58484=>14461,\n37060=>14462,\n58485=>14462,\n165606=>14463,\n58486=>14463,\n37038=>14464,\n58487=>14464,\n64038=>14465,\n37223=>14466,\n58489=>14466,\n37289=>14467,\n58491=>14467,\n37316=>14468,\n58492=>14468,\n31916=>14469,\n58493=>14469,\n166195=>14470,\n58494=>14470,\n138889=>14471,\n58495=>14471,\n37390=>14472,\n58496=>14472,\n27807=>14473,\n58497=>14473,\n37441=>14474,\n58498=>14474,\n37474=>14475,\n58499=>14475,\n153017=>14476,\n58500=>14476,\n166598=>14477,\n58502=>14477,\n146587=>14478,\n58503=>14478,\n166668=>14479,\n58504=>14479,\n153051=>14480,\n58505=>14480,\n134449=>14481,\n58506=>14481,\n37676=>14482,\n58507=>14482,\n37739=>14483,\n58508=>14483,\n166625=>14484,\n58509=>14484,\n166891=>14485,\n58510=>14485,\n23235=>14486,\n58512=>14486,\n166626=>14487,\n58513=>14487,\n166629=>14488,\n58514=>14488,\n18789=>14489,\n58515=>14489,\n37444=>14490,\n58516=>14490,\n166892=>14491,\n58517=>14491,\n166969=>14492,\n58518=>14492,\n166911=>14493,\n58519=>14493,\n37747=>14494,\n58520=>14494,\n37979=>14495,\n58521=>14495,\n36540=>14496,\n58522=>14496,\n38277=>14497,\n58523=>14497,\n38310=>14498,\n58524=>14498,\n37926=>14499,\n58525=>14499,\n38304=>14500,\n58526=>14500,\n28662=>14501,\n58527=>14501,\n17081=>14502,\n58528=>14502,\n165592=>14503,\n58530=>14503,\n135804=>14504,\n58531=>14504,\n146990=>14505,\n58532=>14505,\n18911=>14506,\n58533=>14506,\n27676=>14507,\n58534=>14507,\n38523=>14508,\n58535=>14508,\n38550=>14509,\n58536=>14509,\n16748=>14510,\n58537=>14510,\n38563=>14511,\n58538=>14511,\n159445=>14512,\n58539=>14512,\n25050=>14513,\n58540=>14513,\n58541=>14514,\n30965=>14515,\n58542=>14515,\n166624=>14516,\n58543=>14516,\n38589=>14517,\n58544=>14517,\n21452=>14518,\n58545=>14518,\n18849=>14519,\n58546=>14519,\n158904=>14520,\n58547=>14520,\n131700=>14521,\n58548=>14521,\n156688=>14522,\n58549=>14522,\n168111=>14523,\n58550=>14523,\n168165=>14524,\n58551=>14524,\n150225=>14525,\n58552=>14525,\n137493=>14526,\n58553=>14526,\n144138=>14527,\n58554=>14527,\n38705=>14528,\n58555=>14528,\n34370=>14529,\n58556=>14529,\n38710=>14530,\n58557=>14530,\n18959=>14531,\n58558=>14531,\n17725=>14532,\n58559=>14532,\n17797=>14533,\n58560=>14533,\n150249=>14534,\n58561=>14534,\n28789=>14535,\n58562=>14535,\n23361=>14536,\n58563=>14536,\n38683=>14537,\n58564=>14537,\n168405=>14539,\n58566=>14539,\n38743=>14540,\n58567=>14540,\n23370=>14541,\n58568=>14541,\n168427=>14542,\n58569=>14542,\n38751=>14543,\n58570=>14543,\n37925=>14544,\n58571=>14544,\n20688=>14545,\n58572=>14545,\n143543=>14546,\n58573=>14546,\n143548=>14547,\n58574=>14547,\n38793=>14548,\n58575=>14548,\n38815=>14549,\n58576=>14549,\n38833=>14550,\n58577=>14550,\n38846=>14551,\n58578=>14551,\n38848=>14552,\n58579=>14552,\n38866=>14553,\n58580=>14553,\n38880=>14554,\n58581=>14554,\n152684=>14555,\n58582=>14555,\n38894=>14556,\n58583=>14556,\n29724=>14557,\n58584=>14557,\n169011=>14558,\n58585=>14558,\n38901=>14560,\n58587=>14560,\n168989=>14561,\n58588=>14561,\n162170=>14562,\n58589=>14562,\n19153=>14563,\n58590=>14563,\n38964=>14564,\n58591=>14564,\n38963=>14565,\n58592=>14565,\n38987=>14566,\n58593=>14566,\n39014=>14567,\n58594=>14567,\n15118=>14568,\n58595=>14568,\n160117=>14569,\n58596=>14569,\n15697=>14570,\n58597=>14570,\n132656=>14571,\n58598=>14571,\n147804=>14572,\n58599=>14572,\n153350=>14573,\n58600=>14573,\n39114=>14574,\n58601=>14574,\n39095=>14575,\n58602=>14575,\n39112=>14576,\n58603=>14576,\n39111=>14577,\n58604=>14577,\n19199=>14578,\n58605=>14578,\n159015=>14579,\n58606=>14579,\n136915=>14580,\n58607=>14580,\n21936=>14581,\n58608=>14581,\n39137=>14582,\n58609=>14582,\n39142=>14583,\n58610=>14583,\n39148=>14584,\n58611=>14584,\n37752=>14585,\n58612=>14585,\n39225=>14586,\n58613=>14586,\n150057=>14587,\n58614=>14587,\n19314=>14588,\n58615=>14588,\n170071=>14589,\n58616=>14589,\n170245=>14590,\n58617=>14590,\n39413=>14591,\n58618=>14591,\n39436=>14592,\n58619=>14592,\n39483=>14593,\n58620=>14593,\n39440=>14594,\n58621=>14594,\n39512=>14595,\n58622=>14595,\n153381=>14596,\n58623=>14596,\n14020=>14597,\n58624=>14597,\n168113=>14598,\n58625=>14598,\n170965=>14599,\n58626=>14599,\n39648=>14600,\n58627=>14600,\n39650=>14601,\n58628=>14601,\n170757=>14602,\n58629=>14602,\n39668=>14603,\n58630=>14603,\n19470=>14604,\n58631=>14604,\n39700=>14605,\n58632=>14605,\n39725=>14606,\n58633=>14606,\n165376=>14607,\n58634=>14607,\n20532=>14608,\n58635=>14608,\n39732=>14609,\n58636=>14609,\n14531=>14610,\n58638=>14610,\n143485=>14611,\n58639=>14611,\n39760=>14612,\n58640=>14612,\n39744=>14613,\n58641=>14613,\n171326=>14614,\n58642=>14614,\n23109=>14615,\n58643=>14615,\n137315=>14616,\n58644=>14616,\n39822=>14617,\n58645=>14617,\n39938=>14618,\n58647=>14618,\n39935=>14619,\n58648=>14619,\n39948=>14620,\n58649=>14620,\n171624=>14621,\n58650=>14621,\n40404=>14622,\n58651=>14622,\n171959=>14623,\n58652=>14623,\n172434=>14624,\n58653=>14624,\n172459=>14625,\n58654=>14625,\n172257=>14626,\n58655=>14626,\n172323=>14627,\n58656=>14627,\n172511=>14628,\n58657=>14628,\n40318=>14629,\n58658=>14629,\n40323=>14630,\n58659=>14630,\n172340=>14631,\n58660=>14631,\n40462=>14632,\n58661=>14632,\n40388=>14633,\n58663=>14633,\n172435=>14634,\n58665=>14634,\n172576=>14635,\n58666=>14635,\n137531=>14636,\n58667=>14636,\n172595=>14637,\n58668=>14637,\n40249=>14638,\n58669=>14638,\n172217=>14639,\n58670=>14639,\n172724=>14640,\n58671=>14640,\n40592=>14641,\n58672=>14641,\n40597=>14642,\n58673=>14642,\n40606=>14643,\n58674=>14643,\n40610=>14644,\n58675=>14644,\n19764=>14645,\n58676=>14645,\n40618=>14646,\n58677=>14646,\n40623=>14647,\n58678=>14647,\n148324=>14648,\n58679=>14648,\n40641=>14649,\n58680=>14649,\n15200=>14650,\n58681=>14650,\n14821=>14651,\n58682=>14651,\n15645=>14652,\n58683=>14652,\n20274=>14653,\n58684=>14653,\n14270=>14654,\n58685=>14654,\n166955=>14655,\n58686=>14655,\n40706=>14656,\n58687=>14656,\n40712=>14657,\n58688=>14657,\n19350=>14658,\n58689=>14658,\n37924=>14659,\n58690=>14659,\n159138=>14660,\n58691=>14660,\n40727=>14661,\n60836=>14661,\n58692=>14661,\n195099=>14662,\n40761=>14663,\n58694=>14663,\n22175=>14664,\n58695=>14664,\n22154=>14665,\n58696=>14665,\n40773=>14666,\n58697=>14666,\n39352=>14667,\n58698=>14667,\n168075=>14668,\n58699=>14668,\n38898=>14669,\n58700=>14669,\n33919=>14670,\n58701=>14670,\n40809=>14672,\n58703=>14672,\n31452=>14673,\n58704=>14673,\n40846=>14674,\n58705=>14674,\n29206=>14675,\n58706=>14675,\n19390=>14676,\n58707=>14676,\n149877=>14677,\n58708=>14677,\n149947=>14678,\n58709=>14678,\n29047=>14679,\n58710=>14679,\n150008=>14680,\n58711=>14680,\n148296=>14681,\n58712=>14681,\n150097=>14682,\n58713=>14682,\n29598=>14683,\n58714=>14683,\n166874=>14684,\n58715=>14684,\n137466=>14685,\n58716=>14685,\n31135=>14686,\n58717=>14686,\n166270=>14687,\n58718=>14687,\n167478=>14688,\n58719=>14688,\n37737=>14689,\n58720=>14689,\n37875=>14690,\n58721=>14690,\n166468=>14691,\n58722=>14691,\n37612=>14692,\n58723=>14692,\n37761=>14693,\n58724=>14693,\n37835=>14694,\n58725=>14694,\n166252=>14695,\n58726=>14695,\n148665=>14696,\n58727=>14696,\n29207=>14697,\n58728=>14697,\n16107=>14698,\n58729=>14698,\n30578=>14699,\n58730=>14699,\n31299=>14700,\n58731=>14700,\n28880=>14701,\n58732=>14701,\n148595=>14702,\n58733=>14702,\n148472=>14703,\n58734=>14703,\n29054=>14704,\n58735=>14704,\n137199=>14705,\n58736=>14705,\n28835=>14706,\n58737=>14706,\n137406=>14707,\n58738=>14707,\n144793=>14708,\n58739=>14708,\n16071=>14709,\n58740=>14709,\n137349=>14710,\n58741=>14710,\n152623=>14711,\n58742=>14711,\n137208=>14712,\n58743=>14712,\n14114=>14713,\n58744=>14713,\n136955=>14714,\n58745=>14714,\n137273=>14715,\n58746=>14715,\n14049=>14716,\n58747=>14716,\n137076=>14717,\n58748=>14717,\n137425=>14718,\n58749=>14718,\n155467=>14719,\n58750=>14719,\n14115=>14720,\n58751=>14720,\n136896=>14721,\n58752=>14721,\n22363=>14722,\n58753=>14722,\n150053=>14723,\n58754=>14723,\n136190=>14724,\n58755=>14724,\n135848=>14725,\n58756=>14725,\n136134=>14726,\n58757=>14726,\n136374=>14727,\n58758=>14727,\n34051=>14728,\n58761=>14728,\n58759=>14728,\n145062=>14729,\n58760=>14729,\n33877=>14731,\n58762=>14731,\n149908=>14732,\n58763=>14732,\n160101=>14733,\n58764=>14733,\n146993=>14734,\n58765=>14734,\n152924=>14735,\n58766=>14735,\n147195=>14736,\n58767=>14736,\n159826=>14737,\n58768=>14737,\n17652=>14738,\n58769=>14738,\n145134=>14739,\n58770=>14739,\n170397=>14740,\n58771=>14740,\n159526=>14741,\n58772=>14741,\n26617=>14742,\n58773=>14742,\n14131=>14743,\n58774=>14743,\n15381=>14744,\n58775=>14744,\n15847=>14745,\n58776=>14745,\n22636=>14746,\n58777=>14746,\n137506=>14747,\n58778=>14747,\n26640=>14748,\n58779=>14748,\n16471=>14749,\n58780=>14749,\n145215=>14750,\n58781=>14750,\n147681=>14751,\n58782=>14751,\n147595=>14752,\n58783=>14752,\n147727=>14753,\n58784=>14753,\n158753=>14754,\n58785=>14754,\n21707=>14755,\n58786=>14755,\n22174=>14756,\n58787=>14756,\n157361=>14757,\n58788=>14757,\n22162=>14758,\n58789=>14758,\n135135=>14759,\n58790=>14759,\n134056=>14760,\n58791=>14760,\n134669=>14761,\n58792=>14761,\n166675=>14763,\n58794=>14763,\n37788=>14764,\n58795=>14764,\n20216=>14765,\n58796=>14765,\n20779=>14766,\n58797=>14766,\n14361=>14767,\n58798=>14767,\n148534=>14768,\n58799=>14768,\n20156=>14769,\n58800=>14769,\n132197=>14770,\n58801=>14770,\n20299=>14772,\n58803=>14772,\n20362=>14773,\n58804=>14773,\n153169=>14774,\n58805=>14774,\n23144=>14775,\n58806=>14775,\n131499=>14776,\n58807=>14776,\n132043=>14777,\n58808=>14777,\n14745=>14778,\n58809=>14778,\n131850=>14779,\n58810=>14779,\n132116=>14780,\n58811=>14780,\n13365=>14781,\n58812=>14781,\n20265=>14782,\n58813=>14782,\n131776=>14783,\n58814=>14783,\n167603=>14784,\n58815=>14784,\n131701=>14785,\n58816=>14785,\n35546=>14786,\n58817=>14786,\n131596=>14787,\n58818=>14787,\n20120=>14788,\n58819=>14788,\n20685=>14789,\n58820=>14789,\n20749=>14790,\n58821=>14790,\n20386=>14791,\n58822=>14791,\n20227=>14792,\n58823=>14792,\n150030=>14793,\n58824=>14793,\n147082=>14794,\n58825=>14794,\n20290=>14795,\n58826=>14795,\n20526=>14796,\n58827=>14796,\n20588=>14797,\n58828=>14797,\n20609=>14798,\n58829=>14798,\n20428=>14799,\n58830=>14799,\n20453=>14800,\n58831=>14800,\n20568=>14801,\n58832=>14801,\n20732=>14802,\n58833=>14802,\n28278=>14803,\n58838=>14803,\n144789=>14804,\n58839=>14804,\n147001=>14805,\n58840=>14805,\n147135=>14806,\n58841=>14806,\n28018=>14807,\n58842=>14807,\n137348=>14808,\n58843=>14808,\n147081=>14809,\n58844=>14809,\n20904=>14810,\n58845=>14810,\n20931=>14811,\n58846=>14811,\n132576=>14812,\n58847=>14812,\n17629=>14813,\n58848=>14813,\n132259=>14814,\n58849=>14814,\n132242=>14815,\n58850=>14815,\n132241=>14816,\n58851=>14816,\n36218=>14817,\n58852=>14817,\n166556=>14818,\n58853=>14818,\n132878=>14819,\n58854=>14819,\n21081=>14820,\n58855=>14820,\n21156=>14821,\n58856=>14821,\n133235=>14822,\n58857=>14822,\n21217=>14823,\n58858=>14823,\n18042=>14825,\n58860=>14825,\n29068=>14826,\n58861=>14826,\n148364=>14827,\n58862=>14827,\n134176=>14828,\n58863=>14828,\n149932=>14829,\n58864=>14829,\n135396=>14830,\n58865=>14830,\n27089=>14831,\n58866=>14831,\n134685=>14832,\n58867=>14832,\n16094=>14834,\n58869=>14834,\n29849=>14835,\n58870=>14835,\n29716=>14836,\n58871=>14836,\n29782=>14837,\n58872=>14837,\n29592=>14838,\n58873=>14838,\n19342=>14839,\n58874=>14839,\n150204=>14840,\n58875=>14840,\n147597=>14841,\n58876=>14841,\n21456=>14842,\n58877=>14842,\n13700=>14843,\n58878=>14843,\n29199=>14844,\n58879=>14844,\n147657=>14845,\n58880=>14845,\n21940=>14846,\n58881=>14846,\n131909=>14847,\n58882=>14847,\n21709=>14848,\n58883=>14848,\n134086=>14849,\n58884=>14849,\n22301=>14850,\n58885=>14850,\n37469=>14851,\n58886=>14851,\n38644=>14852,\n58887=>14852,\n22493=>14853,\n58889=>14853,\n22413=>14854,\n58890=>14854,\n22399=>14855,\n58891=>14855,\n13886=>14856,\n58892=>14856,\n22731=>14857,\n58893=>14857,\n23193=>14858,\n58894=>14858,\n166470=>14859,\n58895=>14859,\n136954=>14860,\n58896=>14860,\n137071=>14861,\n58897=>14861,\n136976=>14862,\n58898=>14862,\n23084=>14863,\n58899=>14863,\n22968=>14864,\n58900=>14864,\n23166=>14865,\n58902=>14865,\n23247=>14866,\n58903=>14866,\n23058=>14867,\n58904=>14867,\n153926=>14868,\n58905=>14868,\n137715=>14869,\n58906=>14869,\n137313=>14870,\n58907=>14870,\n148117=>14871,\n58908=>14871,\n14069=>14872,\n58909=>14872,\n27909=>14873,\n58910=>14873,\n29763=>14874,\n58911=>14874,\n23073=>14875,\n58912=>14875,\n155267=>14876,\n58913=>14876,\n23169=>14877,\n58914=>14877,\n166871=>14878,\n58915=>14878,\n132115=>14879,\n58916=>14879,\n37856=>14880,\n58917=>14880,\n29836=>14881,\n58918=>14881,\n135939=>14882,\n58919=>14882,\n28933=>14883,\n58920=>14883,\n18802=>14884,\n58921=>14884,\n37896=>14885,\n58922=>14885,\n166395=>14886,\n58923=>14886,\n37821=>14887,\n58924=>14887,\n14240=>14888,\n58925=>14888,\n23582=>14889,\n58926=>14889,\n23710=>14890,\n58927=>14890,\n24158=>14891,\n58928=>14891,\n24136=>14892,\n58929=>14892,\n137622=>14893,\n58930=>14893,\n137596=>14894,\n58931=>14894,\n146158=>14895,\n58932=>14895,\n24269=>14896,\n58933=>14896,\n23375=>14897,\n58934=>14897,\n58935=>14898,\n137475=>14898,\n58936=>14899,\n137476=>14899,\n14081=>14900,\n58937=>14900,\n137376=>14901,\n58938=>14901,\n14045=>14902,\n58939=>14902,\n136958=>14903,\n58940=>14903,\n14035=>14904,\n58941=>14904,\n33066=>14905,\n58942=>14905,\n166471=>14906,\n58943=>14906,\n138682=>14907,\n58944=>14907,\n144498=>14908,\n58945=>14908,\n166312=>14909,\n58946=>14909,\n24332=>14910,\n60916=>14910,\n58947=>14910,\n24334=>14911,\n58948=>14911,\n137511=>14912,\n58949=>14912,\n137131=>14913,\n58950=>14913,\n23147=>14914,\n58951=>14914,\n137019=>14915,\n58952=>14915,\n23364=>14916,\n58953=>14916,\n161277=>14917,\n58955=>14917,\n34912=>14918,\n58956=>14918,\n24702=>14919,\n58957=>14919,\n141408=>14920,\n58958=>14920,\n140843=>14921,\n58959=>14921,\n24539=>14922,\n58960=>14922,\n16056=>14923,\n58961=>14923,\n140719=>14924,\n58962=>14924,\n140734=>14925,\n58963=>14925,\n168072=>14926,\n58964=>14926,\n159603=>14927,\n58965=>14927,\n25024=>14928,\n58966=>14928,\n131134=>14929,\n58967=>14929,\n131142=>14930,\n58968=>14930,\n140827=>14931,\n58969=>14931,\n24985=>14932,\n58970=>14932,\n24984=>14933,\n58971=>14933,\n24693=>14934,\n58972=>14934,\n142491=>14935,\n58973=>14935,\n142599=>14936,\n58974=>14936,\n149204=>14937,\n58975=>14937,\n168269=>14938,\n58976=>14938,\n25713=>14939,\n58977=>14939,\n149093=>14940,\n58978=>14940,\n142186=>14941,\n58979=>14941,\n14889=>14942,\n58980=>14942,\n142114=>14943,\n58981=>14943,\n144464=>14944,\n58982=>14944,\n170218=>14945,\n58983=>14945,\n142968=>14946,\n58984=>14946,\n25399=>14947,\n58985=>14947,\n25782=>14948,\n58987=>14948,\n25393=>14949,\n58988=>14949,\n25553=>14950,\n58989=>14950,\n149987=>14951,\n58990=>14951,\n142695=>14952,\n58991=>14952,\n25252=>14953,\n58992=>14953,\n142497=>14954,\n58993=>14954,\n25659=>14955,\n58994=>14955,\n25963=>14956,\n58995=>14956,\n26994=>14957,\n58996=>14957,\n15348=>14958,\n58997=>14958,\n143502=>14959,\n58998=>14959,\n144045=>14960,\n58999=>14960,\n149897=>14961,\n59000=>14961,\n144043=>14962,\n59001=>14962,\n21773=>14963,\n59002=>14963,\n144096=>14964,\n59003=>14964,\n137433=>14965,\n59004=>14965,\n169023=>14966,\n59005=>14966,\n26318=>14967,\n59006=>14967,\n144009=>14968,\n59007=>14968,\n143795=>14969,\n59008=>14969,\n15072=>14970,\n59009=>14970,\n152964=>14971,\n59011=>14971,\n166690=>14972,\n59012=>14972,\n152975=>14973,\n59013=>14973,\n136956=>14974,\n59014=>14974,\n152923=>14975,\n59015=>14975,\n152613=>14976,\n59016=>14976,\n30958=>14977,\n59017=>14977,\n143619=>14978,\n59018=>14978,\n137258=>14979,\n59019=>14979,\n143924=>14980,\n59020=>14980,\n13412=>14981,\n59021=>14981,\n143887=>14982,\n59022=>14982,\n143746=>14983,\n59023=>14983,\n148169=>14984,\n59024=>14984,\n26254=>14985,\n59025=>14985,\n159012=>14986,\n59026=>14986,\n26219=>14987,\n59027=>14987,\n19347=>14988,\n59028=>14988,\n26160=>14989,\n59029=>14989,\n161904=>14990,\n59030=>14990,\n138731=>14991,\n59031=>14991,\n26211=>14992,\n59032=>14992,\n144082=>14993,\n59033=>14993,\n144097=>14994,\n59034=>14994,\n26142=>14995,\n59035=>14995,\n153714=>14996,\n59036=>14996,\n14545=>14997,\n59037=>14997,\n145466=>14998,\n59038=>14998,\n145340=>14999,\n59039=>14999,\n15257=>15000,\n59040=>15000,\n145314=>15001,\n59041=>15001,\n144382=>15002,\n59042=>15002,\n29904=>15003,\n59043=>15003,\n15254=>15004,\n59044=>15004,\n149034=>15005,\n59046=>15005,\n26806=>15006,\n59047=>15006,\n15300=>15008,\n59049=>15008,\n27326=>15009,\n59050=>15009,\n145365=>15010,\n59052=>15010,\n148615=>15011,\n59053=>15011,\n27187=>15012,\n59054=>15012,\n27218=>15013,\n59055=>15013,\n27337=>15014,\n59056=>15014,\n27397=>15015,\n59057=>15015,\n137490=>15016,\n59058=>15016,\n25873=>15017,\n59059=>15017,\n26776=>15018,\n59060=>15018,\n27212=>15019,\n59061=>15019,\n15319=>15020,\n59062=>15020,\n27258=>15021,\n59063=>15021,\n27479=>15022,\n59064=>15022,\n147392=>15023,\n59065=>15023,\n146586=>15024,\n59066=>15024,\n37792=>15025,\n59067=>15025,\n37618=>15026,\n59068=>15026,\n166890=>15027,\n59069=>15027,\n166603=>15028,\n59070=>15028,\n37513=>15029,\n59071=>15029,\n163870=>15030,\n59072=>15030,\n166364=>15031,\n59073=>15031,\n37991=>15032,\n59074=>15032,\n28069=>15033,\n59075=>15033,\n28427=>15034,\n59076=>15034,\n147327=>15036,\n59079=>15036,\n15759=>15037,\n59080=>15037,\n28164=>15038,\n59081=>15038,\n147516=>15039,\n59082=>15039,\n23101=>15040,\n59083=>15040,\n28170=>15041,\n59084=>15041,\n22599=>15042,\n59085=>15042,\n27940=>15043,\n59086=>15043,\n30786=>15044,\n59087=>15044,\n28987=>15045,\n59088=>15045,\n148250=>15046,\n59089=>15046,\n148086=>15047,\n59090=>15047,\n28913=>15048,\n59091=>15048,\n29264=>15049,\n61085=>15049,\n59092=>15049,\n29319=>15050,\n59093=>15050,\n29332=>15051,\n59094=>15051,\n149391=>15052,\n59095=>15052,\n149285=>15053,\n59096=>15053,\n20857=>15054,\n59097=>15054,\n150180=>15055,\n59098=>15055,\n132587=>15056,\n59099=>15056,\n29818=>15057,\n59100=>15057,\n147192=>15058,\n59101=>15058,\n144991=>15059,\n59102=>15059,\n150090=>15060,\n59103=>15060,\n149783=>15061,\n59104=>15061,\n155617=>15062,\n59105=>15062,\n16134=>15063,\n59106=>15063,\n16049=>15064,\n59107=>15064,\n150239=>15065,\n59108=>15065,\n166947=>15066,\n59109=>15066,\n147253=>15067,\n59110=>15067,\n24743=>15068,\n59111=>15068,\n16115=>15069,\n59112=>15069,\n29900=>15070,\n59113=>15070,\n29756=>15071,\n59114=>15071,\n37767=>15072,\n59115=>15072,\n29751=>15073,\n59116=>15073,\n17567=>15074,\n59117=>15074,\n159210=>15075,\n59118=>15075,\n17745=>15076,\n59119=>15076,\n30083=>15077,\n59120=>15077,\n16227=>15078,\n59121=>15078,\n150745=>15079,\n59122=>15079,\n150790=>15080,\n59123=>15080,\n16216=>15081,\n59124=>15081,\n30037=>15082,\n59125=>15082,\n30323=>15083,\n59126=>15083,\n173510=>15084,\n59127=>15084,\n29800=>15086,\n61070=>15086,\n59129=>15086,\n166604=>15087,\n59130=>15087,\n149931=>15088,\n59131=>15088,\n149902=>15089,\n59132=>15089,\n15099=>15090,\n59133=>15090,\n15821=>15091,\n59134=>15091,\n150094=>15092,\n59135=>15092,\n16127=>15093,\n59136=>15093,\n149957=>15094,\n59137=>15094,\n149747=>15095,\n59138=>15095,\n37370=>15096,\n59139=>15096,\n22322=>15097,\n59140=>15097,\n37698=>15098,\n59141=>15098,\n166627=>15099,\n59142=>15099,\n137316=>15100,\n59143=>15100,\n20703=>15101,\n59144=>15101,\n152097=>15102,\n59145=>15102,\n152039=>15103,\n59146=>15103,\n30584=>15104,\n59147=>15104,\n143922=>15105,\n59148=>15105,\n30478=>15106,\n59149=>15106,\n30479=>15107,\n59150=>15107,\n30587=>15108,\n59151=>15108,\n149143=>15109,\n59152=>15109,\n145281=>15110,\n59153=>15110,\n14942=>15111,\n59154=>15111,\n149744=>15112,\n59155=>15112,\n29752=>15113,\n59156=>15113,\n29851=>15114,\n59157=>15114,\n16063=>15115,\n59158=>15115,\n150202=>15116,\n59159=>15116,\n150215=>15117,\n59160=>15117,\n16584=>15118,\n59161=>15118,\n150166=>15119,\n59162=>15119,\n156078=>15120,\n59163=>15120,\n37639=>15121,\n59164=>15121,\n152961=>15122,\n59165=>15122,\n30750=>15123,\n59166=>15123,\n30861=>15124,\n59167=>15124,\n30856=>15125,\n59168=>15125,\n30930=>15126,\n59169=>15126,\n29648=>15127,\n59170=>15127,\n31065=>15128,\n59171=>15128,\n161601=>15129,\n59172=>15129,\n153315=>15130,\n59173=>15130,\n16654=>15131,\n59174=>15131,\n31141=>15134,\n59177=>15134,\n27181=>15135,\n59178=>15135,\n147194=>15136,\n59179=>15136,\n31290=>15137,\n59180=>15137,\n31220=>15138,\n59181=>15138,\n16750=>15139,\n59182=>15139,\n136934=>15140,\n59183=>15140,\n16690=>15141,\n59184=>15141,\n37429=>15142,\n59185=>15142,\n31217=>15143,\n59186=>15143,\n134476=>15144,\n59187=>15144,\n149900=>15145,\n59188=>15145,\n131737=>15146,\n59189=>15146,\n146874=>15147,\n59190=>15147,\n137070=>15148,\n59191=>15148,\n13719=>15149,\n59192=>15149,\n21867=>15150,\n59193=>15150,\n13680=>15151,\n59194=>15151,\n13994=>15152,\n59195=>15152,\n131540=>15153,\n59196=>15153,\n134157=>15154,\n59197=>15154,\n31458=>15155,\n59198=>15155,\n23129=>15156,\n59199=>15156,\n141045=>15157,\n59200=>15157,\n154287=>15158,\n59201=>15158,\n154268=>15159,\n59202=>15159,\n23053=>15160,\n59203=>15160,\n131675=>15161,\n59204=>15161,\n30960=>15162,\n59205=>15162,\n23082=>15163,\n59206=>15163,\n154566=>15164,\n59207=>15164,\n31486=>15165,\n59208=>15165,\n16889=>15166,\n59209=>15166,\n31837=>15167,\n59210=>15167,\n31853=>15168,\n59211=>15168,\n16913=>15169,\n59212=>15169,\n154547=>15170,\n59213=>15170,\n155324=>15171,\n59214=>15171,\n155302=>15172,\n59215=>15172,\n31949=>15173,\n59216=>15173,\n150009=>15174,\n59217=>15174,\n137136=>15175,\n59218=>15175,\n31886=>15176,\n59219=>15176,\n31868=>15177,\n59220=>15177,\n31918=>15178,\n59221=>15178,\n27314=>15179,\n59222=>15179,\n32220=>15180,\n59223=>15180,\n32263=>15181,\n59224=>15181,\n32211=>15182,\n59225=>15182,\n32590=>15183,\n59226=>15183,\n156257=>15184,\n59227=>15184,\n155996=>15185,\n59228=>15185,\n162632=>15186,\n59229=>15186,\n32151=>15187,\n59230=>15187,\n155266=>15188,\n59231=>15188,\n17002=>15189,\n59232=>15189,\n158581=>15190,\n59233=>15190,\n133398=>15191,\n59234=>15191,\n26582=>15192,\n59235=>15192,\n131150=>15193,\n59236=>15193,\n144847=>15194,\n59237=>15194,\n22468=>15195,\n59238=>15195,\n156690=>15196,\n59239=>15196,\n156664=>15197,\n59240=>15197,\n32733=>15198,\n59242=>15198,\n31527=>15199,\n59243=>15199,\n133164=>15200,\n59244=>15200,\n154345=>15201,\n59245=>15201,\n154947=>15202,\n59246=>15202,\n31500=>15203,\n59247=>15203,\n155150=>15204,\n59248=>15204,\n39398=>15205,\n59249=>15205,\n34373=>15206,\n59250=>15206,\n39523=>15207,\n59251=>15207,\n27164=>15208,\n59252=>15208,\n144447=>15209,\n59253=>15209,\n150007=>15210,\n59255=>15210,\n157101=>15211,\n59256=>15211,\n39455=>15212,\n59257=>15212,\n157088=>15213,\n59258=>15213,\n33941=>15214,\n160039=>15215,\n59260=>15215,\n158929=>15216,\n59261=>15216,\n17642=>15217,\n59262=>15217,\n33079=>15218,\n59263=>15218,\n17410=>15219,\n59264=>15219,\n32966=>15220,\n59265=>15220,\n33033=>15221,\n59266=>15221,\n33090=>15222,\n59267=>15222,\n157620=>15223,\n59268=>15223,\n39107=>15224,\n59269=>15224,\n158274=>15225,\n59270=>15225,\n33378=>15226,\n59271=>15226,\n33381=>15227,\n59272=>15227,\n158289=>15228,\n59273=>15228,\n33875=>15229,\n59274=>15229,\n159143=>15230,\n59275=>15230,\n34320=>15231,\n59276=>15231,\n160283=>15232,\n59277=>15232,\n23174=>15233,\n59278=>15233,\n16767=>15234,\n59279=>15234,\n137280=>15235,\n59280=>15235,\n23339=>15236,\n59281=>15236,\n137377=>15237,\n59282=>15237,\n23268=>15238,\n59283=>15238,\n137432=>15239,\n59284=>15239,\n34464=>15240,\n59285=>15240,\n195004=>15241,\n59286=>15241,\n146831=>15242,\n59287=>15242,\n34861=>15243,\n59288=>15243,\n160802=>15244,\n59289=>15244,\n23042=>15245,\n59290=>15245,\n34926=>15246,\n59291=>15246,\n20293=>15247,\n59292=>15247,\n34951=>15248,\n59293=>15248,\n35007=>15249,\n59294=>15249,\n35046=>15250,\n59295=>15250,\n35173=>15251,\n59296=>15251,\n35149=>15252,\n59297=>15252,\n153219=>15253,\n59298=>15253,\n35156=>15254,\n59299=>15254,\n161669=>15255,\n59300=>15255,\n161668=>15256,\n59301=>15256,\n166901=>15257,\n59302=>15257,\n166873=>15258,\n59303=>15258,\n166812=>15259,\n59304=>15259,\n166393=>15260,\n59305=>15260,\n16045=>15261,\n59306=>15261,\n33955=>15262,\n59307=>15262,\n18165=>15263,\n59308=>15263,\n18127=>15264,\n59309=>15264,\n14322=>15265,\n59310=>15265,\n35389=>15266,\n59311=>15266,\n35356=>15267,\n59312=>15267,\n169032=>15268,\n59313=>15268,\n24397=>15269,\n59314=>15269,\n37419=>15270,\n59315=>15270,\n148100=>15271,\n59316=>15271,\n26068=>15272,\n59317=>15272,\n28969=>15273,\n59318=>15273,\n28868=>15274,\n59319=>15274,\n137285=>15275,\n59320=>15275,\n40301=>15276,\n59321=>15276,\n35999=>15277,\n59322=>15277,\n36073=>15278,\n59323=>15278,\n163292=>15279,\n59324=>15279,\n22938=>15280,\n59325=>15280,\n30659=>15281,\n59326=>15281,\n23024=>15282,\n59327=>15282,\n14036=>15283,\n59329=>15283,\n36394=>15284,\n59330=>15284,\n36519=>15285,\n59331=>15285,\n150537=>15286,\n59332=>15286,\n36656=>15287,\n59333=>15287,\n36682=>15288,\n59334=>15288,\n17140=>15289,\n59335=>15289,\n27736=>15290,\n59336=>15290,\n28603=>15291,\n59337=>15291,\n140065=>15292,\n59338=>15292,\n18587=>15293,\n59339=>15293,\n28537=>15294,\n59340=>15294,\n28299=>15295,\n59341=>15295,\n137178=>15296,\n59342=>15296,\n39913=>15297,\n59343=>15297,\n14005=>15298,\n59344=>15298,\n149807=>15299,\n59345=>15299,\n37051=>15300,\n59346=>15300,\n18612=>15301,\n21873=>15302,\n59348=>15302,\n18694=>15303,\n59349=>15303,\n37307=>15304,\n59350=>15304,\n37892=>15305,\n59351=>15305,\n166475=>15306,\n59352=>15306,\n16482=>15307,\n59353=>15307,\n166652=>15308,\n59354=>15308,\n37927=>15309,\n59355=>15309,\n166941=>15310,\n59356=>15310,\n166971=>15311,\n59357=>15311,\n34021=>15312,\n59358=>15312,\n35371=>15313,\n59359=>15313,\n38297=>15314,\n59360=>15314,\n38311=>15315,\n59361=>15315,\n38295=>15316,\n59362=>15316,\n38294=>15317,\n59363=>15317,\n167220=>15318,\n59364=>15318,\n29765=>15319,\n59365=>15319,\n16066=>15320,\n59366=>15320,\n149759=>15321,\n59367=>15321,\n150082=>15322,\n59368=>15322,\n148458=>15323,\n59369=>15323,\n16103=>15324,\n59370=>15324,\n143909=>15325,\n59371=>15325,\n38543=>15326,\n59372=>15326,\n167655=>15327,\n59373=>15327,\n167526=>15328,\n59374=>15328,\n167525=>15329,\n59375=>15329,\n16076=>15330,\n59376=>15330,\n149997=>15331,\n59377=>15331,\n150136=>15332,\n59378=>15332,\n147438=>15333,\n59379=>15333,\n29714=>15334,\n59380=>15334,\n29803=>15335,\n59381=>15335,\n16124=>15336,\n59382=>15336,\n38721=>15337,\n59383=>15337,\n168112=>15338,\n59384=>15338,\n26695=>15339,\n59385=>15339,\n18973=>15340,\n59386=>15340,\n168083=>15341,\n59387=>15341,\n153567=>15342,\n59388=>15342,\n37736=>15344,\n59390=>15344,\n166281=>15345,\n59391=>15345,\n166950=>15346,\n59392=>15346,\n166703=>15347,\n59393=>15347,\n156606=>15348,\n59394=>15348,\n37562=>15349,\n59395=>15349,\n23313=>15350,\n59396=>15350,\n35689=>15351,\n59397=>15351,\n18748=>15352,\n59398=>15352,\n29689=>15353,\n59399=>15353,\n147995=>15354,\n59400=>15354,\n38811=>15355,\n59401=>15355,\n39224=>15357,\n59403=>15357,\n134950=>15358,\n59404=>15358,\n24001=>15359,\n59405=>15359,\n166853=>15360,\n59406=>15360,\n150194=>15361,\n59407=>15361,\n38943=>15362,\n59408=>15362,\n169178=>15363,\n59409=>15363,\n37622=>15364,\n59410=>15364,\n169431=>15365,\n59411=>15365,\n37349=>15366,\n59412=>15366,\n17600=>15367,\n59413=>15367,\n166736=>15368,\n59414=>15368,\n150119=>15369,\n59415=>15369,\n166756=>15370,\n59416=>15370,\n39132=>15371,\n59417=>15371,\n166469=>15372,\n59418=>15372,\n16128=>15373,\n59419=>15373,\n37418=>15374,\n59420=>15374,\n18725=>15375,\n59421=>15375,\n33812=>15376,\n59422=>15376,\n39227=>15377,\n59423=>15377,\n39245=>15378,\n59424=>15378,\n162566=>15379,\n59425=>15379,\n15869=>15380,\n59426=>15380,\n19311=>15382,\n59428=>15382,\n39338=>15383,\n59429=>15383,\n39516=>15384,\n59430=>15384,\n166757=>15385,\n59431=>15385,\n153800=>15386,\n59432=>15386,\n27279=>15387,\n59433=>15387,\n39457=>15388,\n59434=>15388,\n23294=>15389,\n59435=>15389,\n39471=>15390,\n59436=>15390,\n170225=>15391,\n59437=>15391,\n19344=>15392,\n59438=>15392,\n170312=>15393,\n59439=>15393,\n39356=>15394,\n59440=>15394,\n19389=>15395,\n59441=>15395,\n19351=>15396,\n59442=>15396,\n37757=>15397,\n59443=>15397,\n22642=>15398,\n59444=>15398,\n135938=>15399,\n59445=>15399,\n22562=>15400,\n59446=>15400,\n149944=>15401,\n59447=>15401,\n136424=>15402,\n59448=>15402,\n30788=>15403,\n59449=>15403,\n141087=>15404,\n59450=>15404,\n146872=>15405,\n59451=>15405,\n26821=>15406,\n59452=>15406,\n15741=>15407,\n59453=>15407,\n37976=>15408,\n59454=>15408,\n14631=>15409,\n59455=>15409,\n24912=>15410,\n59456=>15410,\n141185=>15411,\n59457=>15411,\n141675=>15412,\n59458=>15412,\n24839=>15413,\n59459=>15413,\n40015=>15414,\n59460=>15414,\n40019=>15415,\n59461=>15415,\n40059=>15416,\n59462=>15416,\n39989=>15417,\n59463=>15417,\n39952=>15418,\n59464=>15418,\n39807=>15419,\n59465=>15419,\n39887=>15420,\n59466=>15420,\n171565=>15421,\n59467=>15421,\n39839=>15422,\n59468=>15422,\n172533=>15423,\n59469=>15423,\n172286=>15424,\n59470=>15424,\n40225=>15425,\n59471=>15425,\n19630=>15426,\n59472=>15426,\n147716=>15427,\n59473=>15427,\n40472=>15428,\n59474=>15428,\n19632=>15429,\n59475=>15429,\n40204=>15430,\n59476=>15430,\n172468=>15431,\n59477=>15431,\n172269=>15432,\n59478=>15432,\n172275=>15433,\n59479=>15433,\n170287=>15434,\n59480=>15434,\n40357=>15435,\n59481=>15435,\n33981=>15436,\n59482=>15436,\n159250=>15437,\n59483=>15437,\n159711=>15438,\n59484=>15438,\n158594=>15439,\n59485=>15439,\n34300=>15440,\n59486=>15440,\n17715=>15441,\n59487=>15441,\n159140=>15442,\n59488=>15442,\n159364=>15443,\n59489=>15443,\n159216=>15444,\n59490=>15444,\n33824=>15445,\n59491=>15445,\n34286=>15446,\n59492=>15446,\n159232=>15447,\n59493=>15447,\n145367=>15448,\n59494=>15448,\n155748=>15449,\n59495=>15449,\n31202=>15450,\n59496=>15450,\n144796=>15451,\n59497=>15451,\n144960=>15452,\n59498=>15452,\n149982=>15453,\n59500=>15453,\n15714=>15454,\n59501=>15454,\n37851=>15455,\n59502=>15455,\n37566=>15456,\n59503=>15456,\n37704=>15457,\n59504=>15457,\n131775=>15458,\n59505=>15458,\n30905=>15459,\n59506=>15459,\n37495=>15460,\n59507=>15460,\n37965=>15461,\n59508=>15461,\n20452=>15462,\n59509=>15462,\n13376=>15463,\n59510=>15463,\n36964=>15464,\n59511=>15464,\n152925=>15465,\n59512=>15465,\n30781=>15466,\n59513=>15466,\n30804=>15467,\n59514=>15467,\n30902=>15468,\n59515=>15468,\n30795=>15469,\n59516=>15469,\n137047=>15470,\n59517=>15470,\n143817=>15471,\n59518=>15471,\n149825=>15472,\n59519=>15472,\n13978=>15473,\n59520=>15473,\n20338=>15474,\n59521=>15474,\n28634=>15475,\n59522=>15475,\n28633=>15476,\n59523=>15476,\n28702=>15478,\n59524=>15478,\n59525=>15478,\n21524=>15479,\n59526=>15479,\n147893=>15480,\n59527=>15480,\n22459=>15481,\n59528=>15481,\n22771=>15482,\n59529=>15482,\n22410=>15483,\n59530=>15483,\n40214=>15484,\n59531=>15484,\n22487=>15485,\n59532=>15485,\n28980=>15486,\n59533=>15486,\n13487=>15487,\n59534=>15487,\n147884=>15488,\n59535=>15488,\n29163=>15489,\n59536=>15489,\n158784=>15490,\n59537=>15490,\n151447=>15491,\n59538=>15491,\n137141=>15493,\n59540=>15493,\n166473=>15494,\n59541=>15494,\n24844=>15495,\n59542=>15495,\n23246=>15496,\n59543=>15496,\n23051=>15497,\n59544=>15497,\n17084=>15498,\n59545=>15498,\n148616=>15499,\n59546=>15499,\n14124=>15500,\n59547=>15500,\n19323=>15501,\n59548=>15501,\n166396=>15502,\n59549=>15502,\n37819=>15503,\n59550=>15503,\n37816=>15504,\n59551=>15504,\n137430=>15505,\n59552=>15505,\n134941=>15506,\n59553=>15506,\n33906=>15507,\n59554=>15507,\n158912=>15508,\n59555=>15508,\n136211=>15509,\n59556=>15509,\n148218=>15510,\n59557=>15510,\n142374=>15511,\n59558=>15511,\n148417=>15512,\n59559=>15512,\n22932=>15513,\n59560=>15513,\n146871=>15514,\n59561=>15514,\n157505=>15515,\n59562=>15515,\n32168=>15516,\n59563=>15516,\n155995=>15517,\n59564=>15517,\n155812=>15518,\n59565=>15518,\n149945=>15519,\n59566=>15519,\n149899=>15520,\n59567=>15520,\n166394=>15521,\n59568=>15521,\n37605=>15522,\n59569=>15522,\n29666=>15523,\n59570=>15523,\n16105=>15524,\n59571=>15524,\n29876=>15525,\n59572=>15525,\n166755=>15526,\n59573=>15526,\n137375=>15527,\n59574=>15527,\n16097=>15528,\n59575=>15528,\n150195=>15529,\n59576=>15529,\n27352=>15530,\n59577=>15530,\n29683=>15531,\n59578=>15531,\n29691=>15532,\n59579=>15532,\n16086=>15533,\n59580=>15533,\n150078=>15534,\n59581=>15534,\n150164=>15535,\n59582=>15535,\n137177=>15536,\n59583=>15536,\n150118=>15537,\n59584=>15537,\n132007=>15538,\n59585=>15538,\n136228=>15539,\n59586=>15539,\n149989=>15540,\n59587=>15540,\n29768=>15541,\n59588=>15541,\n149782=>15542,\n59589=>15542,\n28837=>15543,\n59590=>15543,\n149878=>15544,\n59591=>15544,\n37508=>15545,\n59592=>15545,\n29670=>15546,\n59593=>15546,\n37727=>15547,\n59594=>15547,\n132350=>15548,\n59595=>15548,\n37681=>15549,\n59596=>15549,\n166606=>15550,\n59597=>15550,\n166422=>15551,\n59598=>15551,\n37766=>15552,\n59599=>15552,\n166887=>15553,\n59600=>15553,\n153045=>15554,\n59601=>15554,\n18741=>15555,\n59602=>15555,\n166530=>15556,\n59603=>15556,\n29035=>15557,\n59604=>15557,\n149827=>15558,\n59605=>15558,\n134399=>15559,\n59606=>15559,\n22180=>15560,\n59607=>15560,\n132634=>15561,\n59608=>15561,\n134123=>15562,\n59609=>15562,\n134328=>15563,\n59610=>15563,\n21762=>15564,\n59611=>15564,\n31172=>15565,\n59612=>15565,\n137210=>15566,\n59613=>15566,\n32254=>15567,\n59614=>15567,\n136898=>15568,\n59615=>15568,\n150096=>15569,\n59616=>15569,\n137298=>15570,\n59617=>15570,\n17710=>15571,\n59618=>15571,\n37889=>15572,\n59619=>15572,\n14090=>15573,\n59620=>15573,\n166592=>15574,\n59621=>15574,\n149933=>15575,\n59622=>15575,\n22960=>15576,\n59623=>15576,\n137407=>15577,\n59624=>15577,\n137347=>15578,\n59625=>15578,\n160900=>15579,\n59626=>15579,\n23201=>15580,\n59627=>15580,\n14050=>15581,\n59628=>15581,\n146779=>15582,\n59629=>15582,\n14000=>15583,\n59630=>15583,\n37471=>15584,\n59631=>15584,\n23161=>15585,\n59632=>15585,\n166529=>15586,\n59633=>15586,\n137314=>15587,\n59634=>15587,\n37748=>15588,\n59635=>15588,\n15565=>15589,\n59636=>15589,\n133812=>15590,\n59637=>15590,\n19094=>15591,\n59638=>15591,\n14730=>15592,\n59639=>15592,\n20724=>15593,\n59640=>15593,\n15721=>15594,\n59641=>15594,\n15692=>15595,\n59642=>15595,\n136092=>15596,\n59643=>15596,\n29045=>15597,\n59644=>15597,\n17147=>15598,\n59645=>15598,\n164376=>15599,\n59646=>15599,\n28175=>15600,\n59647=>15600,\n168164=>15601,\n59648=>15601,\n17643=>15602,\n59649=>15602,\n27991=>15603,\n59650=>15603,\n163407=>15604,\n59651=>15604,\n28775=>15605,\n59652=>15605,\n27823=>15606,\n59653=>15606,\n15574=>15607,\n59654=>15607,\n147437=>15608,\n59655=>15608,\n146989=>15609,\n59656=>15609,\n28162=>15610,\n59657=>15610,\n28428=>15611,\n59658=>15611,\n15727=>15612,\n59659=>15612,\n132085=>15613,\n59660=>15613,\n30033=>15614,\n59661=>15614,\n14012=>15615,\n59662=>15615,\n13512=>15616,\n59663=>15616,\n18048=>15617,\n59664=>15617,\n16090=>15618,\n59665=>15618,\n18545=>15619,\n59666=>15619,\n22980=>15620,\n59667=>15620,\n37486=>15621,\n59668=>15621,\n18750=>15622,\n59669=>15622,\n36673=>15623,\n59670=>15623,\n166940=>15624,\n59671=>15624,\n158656=>15625,\n59672=>15625,\n22546=>15626,\n59673=>15626,\n22472=>15627,\n59674=>15627,\n14038=>15628,\n59675=>15628,\n136274=>15629,\n59676=>15629,\n28926=>15630,\n59677=>15630,\n148322=>15631,\n59678=>15631,\n150129=>15632,\n59679=>15632,\n143331=>15633,\n59680=>15633,\n135856=>15634,\n59681=>15634,\n140221=>15635,\n59682=>15635,\n26809=>15636,\n59683=>15636,\n26983=>15637,\n59684=>15637,\n136088=>15638,\n59685=>15638,\n144613=>15639,\n59686=>15639,\n162804=>15640,\n59687=>15640,\n145119=>15641,\n59688=>15641,\n166531=>15642,\n59689=>15642,\n145366=>15643,\n59690=>15643,\n144378=>15644,\n59691=>15644,\n150687=>15645,\n59692=>15645,\n27162=>15646,\n59693=>15646,\n145069=>15647,\n59694=>15647,\n158903=>15648,\n59695=>15648,\n33854=>15649,\n59696=>15649,\n17631=>15650,\n59697=>15650,\n17614=>15651,\n59698=>15651,\n159014=>15652,\n59699=>15652,\n159057=>15653,\n59700=>15653,\n158850=>15654,\n59701=>15654,\n159710=>15655,\n59702=>15655,\n33597=>15658,\n59705=>15658,\n137018=>15659,\n59706=>15659,\n33773=>15660,\n59707=>15660,\n158848=>15661,\n59708=>15661,\n159827=>15662,\n59709=>15662,\n137179=>15663,\n59710=>15663,\n22921=>15664,\n59711=>15664,\n23170=>15665,\n59712=>15665,\n137139=>15666,\n59713=>15666,\n23137=>15667,\n59714=>15667,\n23153=>15668,\n59715=>15668,\n137477=>15669,\n59716=>15669,\n147964=>15670,\n59717=>15670,\n14125=>15671,\n59718=>15671,\n23023=>15672,\n59719=>15672,\n137020=>15673,\n59720=>15673,\n14023=>15674,\n59721=>15674,\n29070=>15675,\n59722=>15675,\n37776=>15676,\n59723=>15676,\n26266=>15677,\n59724=>15677,\n148133=>15678,\n59725=>15678,\n23150=>15679,\n59726=>15679,\n23083=>15680,\n59727=>15680,\n148115=>15681,\n59728=>15681,\n27179=>15682,\n59729=>15682,\n147193=>15683,\n59730=>15683,\n161590=>15684,\n59731=>15684,\n148571=>15685,\n59732=>15685,\n148170=>15686,\n59733=>15686,\n28957=>15687,\n59734=>15687,\n148057=>15688,\n59735=>15688,\n166369=>15689,\n59736=>15689,\n20400=>15690,\n59737=>15690,\n159016=>15691,\n59738=>15691,\n23746=>15692,\n59739=>15692,\n148686=>15693,\n59740=>15693,\n163405=>15694,\n59741=>15694,\n148413=>15695,\n59742=>15695,\n27148=>15696,\n59743=>15696,\n148054=>15697,\n59744=>15697,\n135940=>15698,\n59745=>15698,\n28979=>15700,\n59747=>15700,\n148457=>15701,\n59748=>15701,\n15781=>15702,\n59749=>15702,\n27871=>15703,\n59750=>15703,\n194597=>15704,\n59751=>15704,\n23019=>15705,\n59754=>15705,\n24412=>15706,\n59757=>15706,\n59764=>15707,\n144128=>15707,\n31955=>15708,\n59776=>15708,\n59783=>15709,\n162548=>15709,\n59786=>15710,\n153334=>15710,\n162584=>15711,\n59790=>15711,\n36972=>15712,\n59791=>15712,\n33270=>15713,\n59795=>15713,\n30476=>15714,\n59797=>15714,\n27810=>15715,\n59799=>15715,\n22269=>15716,\n59800=>15716,\n22633=>15717,\n59828=>15717,\n26465=>15718,\n59832=>15718,\n23646=>15719,\n59838=>15719,\n22770=>15720,\n59841=>15720,\n28857=>15721,\n59843=>15721,\n26627=>15722,\n59853=>15722,\n59859=>15723,\n36795=>15723,\n59861=>15724,\n36796=>15724,\n20001=>15725,\n59871=>15725,\n31545=>15726,\n59898=>15726,\n15820=>15727,\n59902=>15727,\n29482=>15728,\n57990=>15728,\n59909=>15728,\n30048=>15729,\n59912=>15729,\n22586=>15730,\n59920=>15730,\n33446=>15731,\n59932=>15731,\n27018=>15732,\n59940=>15732,\n24803=>15733,\n59944=>15733,\n20206=>15734,\n59984=>15734,\n39364=>15735,\n60002=>15735,\n40639=>15736,\n60023=>15736,\n21249=>15737,\n60025=>15737,\n26528=>15738,\n60038=>15738,\n24808=>15739,\n60046=>15739,\n20916=>15740,\n60053=>15740,\n31363=>15741,\n60064=>15741,\n39994=>15742,\n60075=>15742,\n31432=>15743,\n60093=>15743,\n26906=>15744,\n60098=>15744,\n22956=>15745,\n60100=>15745,\n22592=>15746,\n60102=>15746,\n21610=>15747,\n60114=>15747,\n24807=>15748,\n60123=>15748,\n22138=>15749,\n60125=>15749,\n26965=>15750,\n60132=>15750,\n39983=>15751,\n60133=>15751,\n34725=>15752,\n60134=>15752,\n23584=>15753,\n60141=>15753,\n24075=>15754,\n60143=>15754,\n26398=>15755,\n60147=>15755,\n33965=>15756,\n60157=>15756,\n35713=>15757,\n60161=>15757,\n20088=>15758,\n60166=>15758,\n25283=>15759,\n60176=>15759,\n26709=>15760,\n60180=>15760,\n33533=>15762,\n60190=>15762,\n35237=>15763,\n60194=>15763,\n36768=>15764,\n60196=>15764,\n38840=>15765,\n60198=>15765,\n38983=>15766,\n60200=>15766,\n39613=>15767,\n60201=>15767,\n24497=>15768,\n60218=>15768,\n26184=>15769,\n60219=>15769,\n26303=>15770,\n60220=>15770,\n162425=>15771,\n60221=>15771,\n60225=>15773,\n149946=>15773,\n60230=>15776,\n131910=>15776,\n26382=>15777,\n60232=>15777,\n26904=>15778,\n60233=>15778,\n161367=>15779,\n60235=>15779,\n155618=>15780,\n60236=>15780,\n161278=>15781,\n60239=>15781,\n139418=>15782,\n60240=>15782,\n18640=>15783,\n60241=>15783,\n19128=>15784,\n60242=>15784,\n60244=>15785,\n166554=>15785,\n60247=>15786,\n147515=>15786,\n150085=>15787,\n60250=>15787,\n132554=>15788,\n60251=>15788,\n20946=>15789,\n60252=>15789,\n132625=>15790,\n60253=>15790,\n22943=>15791,\n60254=>15791,\n138920=>15792,\n60255=>15792,\n15294=>15793,\n60256=>15793,\n146687=>15794,\n60257=>15794,\n14747=>15795,\n60262=>15795,\n165352=>15796,\n60264=>15796,\n170441=>15797,\n60265=>15797,\n14178=>15798,\n60266=>15798,\n139715=>15799,\n60267=>15799,\n35678=>15800,\n60268=>15800,\n166734=>15801,\n60269=>15801,\n29193=>15803,\n60274=>15803,\n60276=>15804,\n134264=>15804,\n132985=>15805,\n60280=>15805,\n36570=>15806,\n60281=>15806,\n21135=>15807,\n60283=>15807,\n29041=>15808,\n60285=>15808,\n147274=>15809,\n60288=>15809,\n150183=>15810,\n60289=>15810,\n21948=>15811,\n60290=>15811,\n60293=>15812,\n158546=>15812,\n13427=>15813,\n60295=>15813,\n60297=>15814,\n161330=>15814,\n18200=>15815,\n60299=>15815,\n60303=>15816,\n149823=>15816,\n20582=>15817,\n60305=>15817,\n13563=>15818,\n60306=>15818,\n144332=>15819,\n60307=>15819,\n18300=>15821,\n60310=>15821,\n166216=>15822,\n60311=>15822,\n60315=>15823,\n138640=>15823,\n162834=>15825,\n60320=>15825,\n36950=>15826,\n60321=>15826,\n151450=>15827,\n60323=>15827,\n35682=>15828,\n60324=>15828,\n23899=>15829,\n60327=>15829,\n158711=>15830,\n60328=>15830,\n137500=>15832,\n60331=>15832,\n35562=>15833,\n60332=>15833,\n150006=>15834,\n60333=>15834,\n60335=>15835,\n147439=>15835,\n19392=>15836,\n60337=>15836,\n141083=>15837,\n60340=>15837,\n37989=>15838,\n60341=>15838,\n153569=>15839,\n60342=>15839,\n24981=>15840,\n60343=>15840,\n23079=>15841,\n60344=>15841,\n194765=>15842,\n60345=>15842,\n194566=>15843,\n60348=>15844,\n148769=>15844,\n20074=>15845,\n60350=>15845,\n149812=>15846,\n60351=>15846,\n38486=>15847,\n60352=>15847,\n28047=>15848,\n60353=>15848,\n158909=>15849,\n60354=>15849,\n35191=>15850,\n60356=>15850,\n60359=>15851,\n156689=>15851,\n31554=>15853,\n60363=>15853,\n168128=>15854,\n60364=>15854,\n133649=>15855,\n60365=>15855,\n31301=>15857,\n60369=>15857,\n39462=>15858,\n60372=>15858,\n13919=>15859,\n60374=>15859,\n156777=>15860,\n60375=>15860,\n131105=>15861,\n60376=>15861,\n31107=>15862,\n60377=>15862,\n23852=>15863,\n60380=>15863,\n144665=>15864,\n60381=>15864,\n18128=>15866,\n60384=>15866,\n30011=>15867,\n60386=>15867,\n34917=>15868,\n60387=>15868,\n22710=>15869,\n60389=>15869,\n14108=>15870,\n60390=>15870,\n140685=>15871,\n60391=>15871,\n15444=>15872,\n60394=>15872,\n37505=>15873,\n60397=>15873,\n139642=>15874,\n60398=>15874,\n37680=>15875,\n60400=>15875,\n149968=>15876,\n60402=>15876,\n27705=>15877,\n60403=>15877,\n134904=>15878,\n60406=>15878,\n34855=>15879,\n60407=>15879,\n35061=>15880,\n60408=>15880,\n141606=>15881,\n60409=>15881,\n164979=>15882,\n60410=>15882,\n137137=>15883,\n60411=>15883,\n28344=>15884,\n60412=>15884,\n150058=>15885,\n60413=>15885,\n137248=>15886,\n60414=>15886,\n14756=>15887,\n60415=>15887,\n17727=>15890,\n60419=>15890,\n26294=>15891,\n60420=>15891,\n171181=>15892,\n60421=>15892,\n170148=>15893,\n60422=>15893,\n35139=>15894,\n60423=>15894,\n16607=>15895,\n60427=>15895,\n136714=>15896,\n60428=>15896,\n14753=>15897,\n60429=>15897,\n145199=>15898,\n60430=>15898,\n164072=>15899,\n60431=>15899,\n136133=>15900,\n60432=>15900,\n29101=>15901,\n60433=>15901,\n33638=>15902,\n60434=>15902,\n60436=>15903,\n168360=>15903,\n19639=>15905,\n60438=>15905,\n159919=>15906,\n60439=>15906,\n166315=>15907,\n60440=>15907,\n147834=>15908,\n60445=>15908,\n31555=>15909,\n60446=>15909,\n31102=>15910,\n60447=>15910,\n28597=>15911,\n60449=>15911,\n172767=>15912,\n60450=>15912,\n27139=>15913,\n60451=>15913,\n164632=>15914,\n60452=>15914,\n21410=>15915,\n60453=>15915,\n159239=>15916,\n60454=>15916,\n37823=>15917,\n60455=>15917,\n26678=>15918,\n60456=>15918,\n38749=>15919,\n59389=>15919,\n60457=>15919,\n164207=>15920,\n60458=>15920,\n158133=>15921,\n60460=>15921,\n136173=>15922,\n60461=>15922,\n143919=>15923,\n60462=>15923,\n23941=>15924,\n60464=>15924,\n166960=>15925,\n60465=>15925,\n22293=>15926,\n60467=>15926,\n38947=>15927,\n60468=>15927,\n166217=>15928,\n60469=>15928,\n23979=>15929,\n60470=>15929,\n149896=>15930,\n60471=>15930,\n26046=>15931,\n60472=>15931,\n27093=>15932,\n60473=>15932,\n21458=>15933,\n60474=>15933,\n150181=>15934,\n60475=>15934,\n147329=>15935,\n60476=>15935,\n15377=>15936,\n60477=>15936,\n26422=>15937,\n60478=>15937,\n60482=>15938,\n139169=>15938,\n13770=>15939,\n60490=>15939,\n18682=>15940,\n60493=>15940,\n30728=>15942,\n60496=>15942,\n37461=>15943,\n60497=>15943,\n17394=>15944,\n60499=>15944,\n17375=>15945,\n60501=>15945,\n23032=>15946,\n60505=>15946,\n22155=>15948,\n60518=>15948,\n60520=>15949,\n169449=>15949,\n36882=>15950,\n60541=>15950,\n21953=>15951,\n60546=>15951,\n17673=>15952,\n60551=>15952,\n32383=>15953,\n60552=>15953,\n28502=>15954,\n60553=>15954,\n27313=>15955,\n60554=>15955,\n13540=>15956,\n60556=>15956,\n161949=>15957,\n60558=>15957,\n14138=>15958,\n60559=>15958,\n60562=>15960,\n163876=>15960,\n60565=>15961,\n162366=>15961,\n15851=>15962,\n60567=>15962,\n60569=>15963,\n146615=>15963,\n156248=>15964,\n60574=>15964,\n22207=>15965,\n60575=>15965,\n36366=>15966,\n60577=>15966,\n23405=>15967,\n60578=>15967,\n25566=>15968,\n60581=>15968,\n25904=>15970,\n60585=>15970,\n22061=>15971,\n60586=>15971,\n21530=>15972,\n60588=>15972,\n171416=>15973,\n60591=>15973,\n19581=>15974,\n60592=>15974,\n22050=>15975,\n60593=>15975,\n22046=>15976,\n60594=>15976,\n32585=>15977,\n60595=>15977,\n22901=>15978,\n60597=>15978,\n146752=>15979,\n60598=>15979,\n34672=>15980,\n60599=>15980,\n33047=>15981,\n60604=>15981,\n40286=>15982,\n60605=>15982,\n36120=>15983,\n60606=>15983,\n30267=>15984,\n60607=>15984,\n40005=>15985,\n60608=>15985,\n30286=>15986,\n60609=>15986,\n30649=>15987,\n60610=>15987,\n37701=>15988,\n60611=>15988,\n21554=>15989,\n60612=>15989,\n33096=>15990,\n60613=>15990,\n33527=>15991,\n60614=>15991,\n22053=>15992,\n60615=>15992,\n33074=>15993,\n60616=>15993,\n33816=>15994,\n60617=>15994,\n32957=>15995,\n60618=>15995,\n21994=>15996,\n60619=>15996,\n31074=>15997,\n60620=>15997,\n22083=>15998,\n60621=>15998,\n21526=>15999,\n60622=>15999,\n134813=>16000,\n60623=>16000,\n13774=>16001,\n60624=>16001,\n22021=>16002,\n57509=>16002,\n60625=>16002,\n22001=>16003,\n60626=>16003,\n26353=>16004,\n60627=>16004,\n164578=>16005,\n60628=>16005,\n13869=>16006,\n60629=>16006,\n30004=>16007,\n60630=>16007,\n22000=>16008,\n60631=>16008,\n21946=>16009,\n60632=>16009,\n21655=>16010,\n60633=>16010,\n21874=>16011,\n60634=>16011,\n134209=>16012,\n60635=>16012,\n134294=>16013,\n60636=>16013,\n24272=>16014,\n57652=>16014,\n60637=>16014,\n134774=>16015,\n60639=>16015,\n142434=>16016,\n60640=>16016,\n134818=>16017,\n60641=>16017,\n40619=>16018,\n60642=>16018,\n32090=>16019,\n60643=>16019,\n135285=>16021,\n60645=>16021,\n25245=>16022,\n60646=>16022,\n38765=>16023,\n60647=>16023,\n21652=>16024,\n60648=>16024,\n36045=>16025,\n60649=>16025,\n29174=>16026,\n60650=>16026,\n37238=>16027,\n60651=>16027,\n25596=>16028,\n60652=>16028,\n25529=>16029,\n60653=>16029,\n25598=>16030,\n60654=>16030,\n21865=>16031,\n60655=>16031,\n142147=>16032,\n60656=>16032,\n40050=>16033,\n60657=>16033,\n143027=>16034,\n60658=>16034,\n20890=>16035,\n60659=>16035,\n13535=>16036,\n60660=>16036,\n134567=>16037,\n60661=>16037,\n20903=>16038,\n60662=>16038,\n21581=>16039,\n60663=>16039,\n21790=>16040,\n60664=>16040,\n21779=>16041,\n60665=>16041,\n30310=>16042,\n60666=>16042,\n36397=>16043,\n60667=>16043,\n157834=>16044,\n60668=>16044,\n30129=>16045,\n60669=>16045,\n32950=>16046,\n60670=>16046,\n34820=>16047,\n60671=>16047,\n35015=>16049,\n60673=>16049,\n33206=>16050,\n60674=>16050,\n33820=>16051,\n60675=>16051,\n17644=>16052,\n60677=>16052,\n29444=>16053,\n60678=>16053,\n33547=>16054,\n60681=>16054,\n22139=>16055,\n60683=>16055,\n37232=>16056,\n60690=>16056,\n37384=>16057,\n60692=>16057,\n134905=>16058,\n60696=>16058,\n29286=>16059,\n60697=>16059,\n18254=>16060,\n60699=>16060,\n60701=>16061,\n163833=>16061,\n16634=>16062,\n60703=>16062,\n40029=>16063,\n60704=>16063,\n25887=>16064,\n60705=>16064,\n18675=>16065,\n60707=>16065,\n149472=>16066,\n60708=>16066,\n171388=>16067,\n60709=>16067,\n60713=>16069,\n161187=>16069,\n60715=>16070,\n155720=>16071,\n60716=>16071,\n29091=>16072,\n60718=>16072,\n32398=>16073,\n60719=>16073,\n40272=>16074,\n60720=>16074,\n13687=>16075,\n60723=>16075,\n27826=>16076,\n60725=>16076,\n21351=>16077,\n60726=>16077,\n14812=>16078,\n60728=>16078,\n60731=>16079,\n149016=>16079,\n33325=>16080,\n60734=>16080,\n21579=>16081,\n60735=>16081,\n60739=>16082,\n14930=>16083,\n60740=>16083,\n29556=>16084,\n60742=>16084,\n171692=>16085,\n60743=>16085,\n19721=>16086,\n60744=>16086,\n39917=>16087,\n60745=>16087,\n19547=>16089,\n60748=>16089,\n171998=>16090,\n60751=>16090,\n33884=>16091,\n60752=>16091,\n60754=>16092,\n160434=>16092,\n25390=>16093,\n60757=>16093,\n32037=>16094,\n60758=>16094,\n14890=>16095,\n60761=>16095,\n36872=>16096,\n60762=>16096,\n21196=>16097,\n60763=>16097,\n15988=>16098,\n60764=>16098,\n13946=>16099,\n60765=>16099,\n17897=>16100,\n60766=>16100,\n132238=>16101,\n60767=>16101,\n30272=>16102,\n60768=>16102,\n23280=>16103,\n60769=>16103,\n134838=>16104,\n60770=>16104,\n30842=>16105,\n60771=>16105,\n18358=>16106,\n163630=>16106,\n60772=>16106,\n22695=>16107,\n60773=>16107,\n16575=>16108,\n60774=>16108,\n22140=>16109,\n60775=>16109,\n39819=>16110,\n60776=>16110,\n23924=>16111,\n60777=>16111,\n30292=>16112,\n60778=>16112,\n173108=>16113,\n60779=>16113,\n40581=>16114,\n60780=>16114,\n19681=>16115,\n60781=>16115,\n14331=>16117,\n60783=>16117,\n24857=>16118,\n60784=>16118,\n148466=>16119,\n60786=>16119,\n60787=>16120,\n22109=>16121,\n60788=>16121,\n171526=>16122,\n60792=>16122,\n21044=>16123,\n60793=>16123,\n13741=>16124,\n60795=>16124,\n40316=>16126,\n60797=>16126,\n31830=>16127,\n60798=>16127,\n39737=>16128,\n60799=>16128,\n22494=>16129,\n60800=>16129,\n23635=>16130,\n60802=>16130,\n25811=>16131,\n60803=>16131,\n169168=>16132,\n60804=>16132,\n156469=>16133,\n60805=>16133,\n34477=>16134,\n60807=>16134,\n134440=>16135,\n60808=>16135,\n134513=>16136,\n60811=>16136,\n60812=>16137,\n20990=>16138,\n60813=>16138,\n139023=>16139,\n60814=>16139,\n23950=>16140,\n60815=>16140,\n38659=>16141,\n60816=>16141,\n138705=>16142,\n60817=>16142,\n40577=>16143,\n60818=>16143,\n36940=>16144,\n60819=>16144,\n31519=>16145,\n60820=>16145,\n39682=>16146,\n60821=>16146,\n23761=>16147,\n60822=>16147,\n31651=>16148,\n60823=>16148,\n25192=>16149,\n60824=>16149,\n25397=>16150,\n60825=>16150,\n39679=>16151,\n60826=>16151,\n31695=>16152,\n60827=>16152,\n39722=>16153,\n60828=>16153,\n31870=>16154,\n60829=>16154,\n31810=>16156,\n60831=>16156,\n31878=>16157,\n60832=>16157,\n39957=>16158,\n60833=>16158,\n31740=>16159,\n60834=>16159,\n39689=>16160,\n60835=>16160,\n39982=>16162,\n40794=>16163,\n60839=>16163,\n21875=>16164,\n60840=>16164,\n23491=>16165,\n60841=>16165,\n20477=>16166,\n60842=>16166,\n40600=>16167,\n60843=>16167,\n20466=>16168,\n60844=>16168,\n21088=>16169,\n60845=>16169,\n21201=>16170,\n60847=>16170,\n22375=>16171,\n60848=>16171,\n20566=>16172,\n60849=>16172,\n22967=>16173,\n60850=>16173,\n24082=>16174,\n60851=>16174,\n38856=>16175,\n60852=>16175,\n40363=>16176,\n60853=>16176,\n36700=>16177,\n60854=>16177,\n21609=>16178,\n60855=>16178,\n38836=>16179,\n60856=>16179,\n39232=>16180,\n60857=>16180,\n38842=>16181,\n60858=>16181,\n21292=>16182,\n60859=>16182,\n24880=>16183,\n60860=>16183,\n26924=>16184,\n60861=>16184,\n21466=>16185,\n60862=>16185,\n39946=>16186,\n60863=>16186,\n40194=>16187,\n60864=>16187,\n19515=>16188,\n60865=>16188,\n38465=>16189,\n60866=>16189,\n27008=>16190,\n60867=>16190,\n20646=>16191,\n60868=>16191,\n30022=>16192,\n60869=>16192,\n137069=>16193,\n60870=>16193,\n39386=>16194,\n60871=>16194,\n21107=>16195,\n60872=>16195,\n60873=>16196,\n37209=>16197,\n60874=>16197,\n38529=>16198,\n60875=>16198,\n37212=>16199,\n60876=>16199,\n60877=>16200,\n37201=>16201,\n60878=>16201,\n167575=>16202,\n60879=>16202,\n25471=>16203,\n60880=>16203,\n27338=>16204,\n60882=>16204,\n22033=>16205,\n60883=>16205,\n37262=>16206,\n60884=>16206,\n30074=>16207,\n60885=>16207,\n25221=>16208,\n60886=>16208,\n29519=>16209,\n60888=>16209,\n31856=>16210,\n60889=>16210,\n154657=>16211,\n60890=>16211,\n60892=>16212,\n30422=>16213,\n60894=>16213,\n39837=>16214,\n60895=>16214,\n20010=>16215,\n60896=>16215,\n134356=>16216,\n60897=>16216,\n33726=>16217,\n60898=>16217,\n34882=>16218,\n60899=>16218,\n60900=>16219,\n23626=>16220,\n60901=>16220,\n27072=>16221,\n60902=>16221,\n21023=>16224,\n60905=>16224,\n24053=>16225,\n60906=>16225,\n20174=>16226,\n60907=>16226,\n27697=>16227,\n60908=>16227,\n131570=>16228,\n60909=>16228,\n20281=>16229,\n60910=>16229,\n21660=>16230,\n60911=>16230,\n21146=>16232,\n60913=>16232,\n36226=>16233,\n60914=>16233,\n13822=>16234,\n60915=>16234,\n13811=>16236,\n60917=>16236,\n60918=>16237,\n27474=>16238,\n60919=>16238,\n37244=>16239,\n60920=>16239,\n40869=>16240,\n60921=>16240,\n39831=>16241,\n60922=>16241,\n38958=>16242,\n60923=>16242,\n39092=>16243,\n60924=>16243,\n39610=>16244,\n60925=>16244,\n40616=>16245,\n60926=>16245,\n40580=>16246,\n60927=>16246,\n31508=>16247,\n60929=>16247,\n60930=>16248,\n27642=>16249,\n60931=>16249,\n34840=>16250,\n60932=>16250,\n32632=>16251,\n60933=>16251,\n60934=>16252,\n22048=>16253,\n60935=>16253,\n173642=>16254,\n60936=>16254,\n36471=>16255,\n60937=>16255,\n40787=>16256,\n60938=>16256,\n60939=>16257,\n36308=>16258,\n60940=>16258,\n36431=>16259,\n60941=>16259,\n40476=>16260,\n60942=>16260,\n36353=>16261,\n60943=>16261,\n25218=>16262,\n60944=>16262,\n164733=>16263,\n60945=>16263,\n36392=>16264,\n60946=>16264,\n36469=>16265,\n60947=>16265,\n31443=>16266,\n60948=>16266,\n31294=>16267,\n60950=>16267,\n30936=>16268,\n60951=>16268,\n27882=>16269,\n60952=>16269,\n35431=>16270,\n60953=>16270,\n30215=>16271,\n60954=>16271,\n40742=>16272,\n60956=>16272,\n27854=>16273,\n60957=>16273,\n34774=>16274,\n60958=>16274,\n30147=>16275,\n60959=>16275,\n172722=>16276,\n60960=>16276,\n30803=>16277,\n60961=>16277,\n36108=>16278,\n60963=>16278,\n29410=>16279,\n60964=>16279,\n29553=>16280,\n60965=>16280,\n35629=>16281,\n60966=>16281,\n29442=>16282,\n60967=>16282,\n29937=>16283,\n60968=>16283,\n36075=>16284,\n60969=>16284,\n150203=>16285,\n60970=>16285,\n34351=>16286,\n60971=>16286,\n24506=>16287,\n60972=>16287,\n34976=>16288,\n60973=>16288,\n17591=>16289,\n60974=>16289,\n60975=>16290,\n159237=>16291,\n60977=>16291,\n60978=>16292,\n35454=>16293,\n60979=>16293,\n140571=>16294,\n60980=>16294,\n60981=>16295,\n24829=>16296,\n60982=>16296,\n30311=>16297,\n60983=>16297,\n39639=>16298,\n60984=>16298,\n40260=>16299,\n60985=>16299,\n37742=>16300,\n58859=>16300,\n60986=>16300,\n39823=>16301,\n60987=>16301,\n34805=>16302,\n60988=>16302,\n60989=>16303,\n36087=>16305,\n60991=>16305,\n29484=>16306,\n60992=>16306,\n38689=>16307,\n60993=>16307,\n39856=>16308,\n60994=>16308,\n13782=>16309,\n60995=>16309,\n29362=>16310,\n60996=>16310,\n19463=>16311,\n60997=>16311,\n31825=>16312,\n60998=>16312,\n39242=>16313,\n60999=>16313,\n24921=>16314,\n61001=>16314,\n19460=>16315,\n61002=>16315,\n40598=>16316,\n61003=>16316,\n24957=>16317,\n61004=>16317,\n61005=>16318,\n22367=>16319,\n61006=>16319,\n24943=>16320,\n61007=>16320,\n25254=>16321,\n61008=>16321,\n25145=>16322,\n61009=>16322,\n14940=>16324,\n61011=>16324,\n25058=>16325,\n61012=>16325,\n21418=>16326,\n61013=>16326,\n25444=>16327,\n61015=>16327,\n26626=>16328,\n61016=>16328,\n13778=>16329,\n61017=>16329,\n23895=>16330,\n61018=>16330,\n36826=>16331,\n61020=>16331,\n167481=>16332,\n61021=>16332,\n61022=>16333,\n20697=>16334,\n61023=>16334,\n30982=>16335,\n61025=>16335,\n21298=>16336,\n61026=>16336,\n38456=>16337,\n61027=>16337,\n134971=>16338,\n61028=>16338,\n16485=>16339,\n61029=>16339,\n61030=>16340,\n30718=>16341,\n61031=>16341,\n61032=>16342,\n31938=>16343,\n61033=>16343,\n155418=>16344,\n61034=>16344,\n31962=>16345,\n61035=>16345,\n31277=>16346,\n61036=>16346,\n32870=>16347,\n61037=>16347,\n32867=>16348,\n61038=>16348,\n32077=>16349,\n61039=>16349,\n29957=>16350,\n61040=>16350,\n29938=>16351,\n61041=>16351,\n35220=>16352,\n61042=>16352,\n33306=>16353,\n61043=>16353,\n26380=>16354,\n61044=>16354,\n32866=>16355,\n61045=>16355,\n160902=>16356,\n61046=>16356,\n32859=>16357,\n61047=>16357,\n29936=>16358,\n61048=>16358,\n33027=>16359,\n61049=>16359,\n30500=>16360,\n61050=>16360,\n35209=>16361,\n61051=>16361,\n157644=>16362,\n61052=>16362,\n30035=>16363,\n61053=>16363,\n34729=>16364,\n61055=>16364,\n34766=>16365,\n61056=>16365,\n33224=>16366,\n61057=>16366,\n34700=>16367,\n61058=>16367,\n35401=>16368,\n61059=>16368,\n36013=>16369,\n61060=>16369,\n35651=>16370,\n61061=>16370,\n30507=>16371,\n61062=>16371,\n29944=>16372,\n61063=>16372,\n34010=>16373,\n61064=>16373,\n27058=>16374,\n61066=>16374,\n36262=>16375,\n61067=>16375,\n61068=>16376,\n35241=>16377,\n58392=>16377,\n61069=>16377,\n28089=>16379,\n61071=>16379,\n34753=>16380,\n61072=>16380,\n147473=>16381,\n61073=>16381,\n29927=>16382,\n61074=>16382,\n15835=>16383,\n61075=>16383,\n29046=>16384,\n61076=>16384,\n24740=>16385,\n57702=>16385,\n61077=>16385,\n24988=>16386,\n61078=>16386,\n15569=>16387,\n61079=>16387,\n24695=>16389,\n61081=>16389,\n61082=>16390,\n32625=>16391,\n61083=>16391,\n194850=>16392,\n24809=>16393,\n61086=>16393,\n19326=>16394,\n61087=>16394,\n132423=>16395,\n57344=>16395,\n37595=>16396,\n57345=>16396,\n132575=>16397,\n57346=>16397,\n147397=>16398,\n57347=>16398,\n34124=>16399,\n57348=>16399,\n17077=>16400,\n57349=>16400,\n29679=>16401,\n57350=>16401,\n20917=>16402,\n57351=>16402,\n13897=>16403,\n57352=>16403,\n149826=>16404,\n57353=>16404,\n166372=>16405,\n57354=>16405,\n37700=>16406,\n57355=>16406,\n137691=>16407,\n57356=>16407,\n33518=>16408,\n57357=>16408,\n146632=>16409,\n57358=>16409,\n30780=>16410,\n57359=>16410,\n26436=>16411,\n57360=>16411,\n25311=>16412,\n57361=>16412,\n149811=>16413,\n57362=>16413,\n166314=>16414,\n57363=>16414,\n131744=>16415,\n57364=>16415,\n158643=>16416,\n57365=>16416,\n135941=>16417,\n57366=>16417,\n20395=>16418,\n57367=>16418,\n140525=>16419,\n57368=>16419,\n20488=>16420,\n57369=>16420,\n159017=>16421,\n57370=>16421,\n162436=>16422,\n57371=>16422,\n144896=>16423,\n57372=>16423,\n150193=>16424,\n57373=>16424,\n140563=>16425,\n57374=>16425,\n131966=>16427,\n57376=>16427,\n24484=>16428,\n57377=>16428,\n131968=>16429,\n57378=>16429,\n131911=>16430,\n57379=>16430,\n28379=>16431,\n57380=>16431,\n132127=>16432,\n57381=>16432,\n20702=>16433,\n20737=>16434,\n57383=>16434,\n13434=>16435,\n57384=>16435,\n20750=>16436,\n57385=>16436,\n39020=>16437,\n57386=>16437,\n14147=>16438,\n57387=>16438,\n33814=>16439,\n57388=>16439,\n149924=>16440,\n57389=>16440,\n132231=>16441,\n57390=>16441,\n20832=>16442,\n57391=>16442,\n144308=>16443,\n57392=>16443,\n20842=>16444,\n57393=>16444,\n134143=>16445,\n57394=>16445,\n139516=>16446,\n57395=>16446,\n131813=>16447,\n57396=>16447,\n140592=>16448,\n57397=>16448,\n132494=>16449,\n57398=>16449,\n143923=>16450,\n57399=>16450,\n137603=>16451,\n57400=>16451,\n23426=>16452,\n57401=>16452,\n34685=>16453,\n57402=>16453,\n132531=>16454,\n57403=>16454,\n146585=>16455,\n57404=>16455,\n20914=>16456,\n57405=>16456,\n20920=>16457,\n57406=>16457,\n40244=>16458,\n57407=>16458,\n20937=>16459,\n57408=>16459,\n20943=>16460,\n57409=>16460,\n20945=>16461,\n57410=>16461,\n15580=>16462,\n57411=>16462,\n20947=>16463,\n57412=>16463,\n150182=>16464,\n57413=>16464,\n20915=>16465,\n57414=>16465,\n20973=>16468,\n57417=>16468,\n33741=>16469,\n57418=>16469,\n26942=>16470,\n57419=>16470,\n145197=>16471,\n57420=>16471,\n24443=>16472,\n57421=>16472,\n21003=>16473,\n57422=>16473,\n21030=>16474,\n57423=>16474,\n21052=>16475,\n57424=>16475,\n21173=>16476,\n57425=>16476,\n21079=>16477,\n57426=>16477,\n21140=>16478,\n57427=>16478,\n21177=>16479,\n57428=>16479,\n21189=>16480,\n57429=>16480,\n31765=>16481,\n57430=>16481,\n34114=>16482,\n57431=>16482,\n21216=>16483,\n57432=>16483,\n34317=>16484,\n57433=>16484,\n158483=>16485,\n57434=>16485,\n194601=>16486,\n166622=>16487,\n57436=>16487,\n21833=>16488,\n57437=>16488,\n28377=>16489,\n57438=>16489,\n147328=>16490,\n57439=>16490,\n133460=>16491,\n57440=>16491,\n147436=>16492,\n57441=>16492,\n21299=>16493,\n57442=>16493,\n134114=>16495,\n57444=>16495,\n27851=>16496,\n57445=>16496,\n136998=>16497,\n57446=>16497,\n26651=>16498,\n57447=>16498,\n29653=>16499,\n57448=>16499,\n24650=>16500,\n57449=>16500,\n16042=>16501,\n57450=>16501,\n14540=>16502,\n57451=>16502,\n136936=>16503,\n57452=>16503,\n29149=>16504,\n57453=>16504,\n17570=>16505,\n57454=>16505,\n21357=>16506,\n57455=>16506,\n21364=>16507,\n57456=>16507,\n165547=>16508,\n57457=>16508,\n21374=>16509,\n57458=>16509,\n194610=>16510,\n136598=>16511,\n57460=>16511,\n136723=>16512,\n57461=>16512,\n30694=>16513,\n57462=>16513,\n21395=>16514,\n57463=>16514,\n166555=>16515,\n57464=>16515,\n21408=>16516,\n57465=>16516,\n21419=>16517,\n57466=>16517,\n21422=>16518,\n57467=>16518,\n29607=>16519,\n57468=>16519,\n153458=>16520,\n57469=>16520,\n16217=>16521,\n57470=>16521,\n29596=>16522,\n57471=>16522,\n21441=>16523,\n57472=>16523,\n21445=>16524,\n57473=>16524,\n27721=>16525,\n57474=>16525,\n20041=>16526,\n57475=>16526,\n22526=>16527,\n57476=>16527,\n21465=>16528,\n57477=>16528,\n15019=>16529,\n57478=>16529,\n134031=>16530,\n57479=>16530,\n21472=>16531,\n57480=>16531,\n147435=>16532,\n57481=>16532,\n142755=>16533,\n57482=>16533,\n21494=>16534,\n57483=>16534,\n134263=>16535,\n57484=>16535,\n21523=>16536,\n57485=>16536,\n28793=>16537,\n57486=>16537,\n21803=>16538,\n57487=>16538,\n26199=>16539,\n57488=>16539,\n27995=>16540,\n57489=>16540,\n21613=>16541,\n57490=>16541,\n158547=>16542,\n57491=>16542,\n134516=>16543,\n57492=>16543,\n21853=>16544,\n57493=>16544,\n21647=>16545,\n57494=>16545,\n21668=>16546,\n57495=>16546,\n18342=>16547,\n57496=>16547,\n136973=>16548,\n57497=>16548,\n134877=>16549,\n57498=>16549,\n15796=>16550,\n57499=>16550,\n134477=>16551,\n57500=>16551,\n166332=>16552,\n57501=>16552,\n140952=>16553,\n57502=>16553,\n21831=>16554,\n57503=>16554,\n19693=>16555,\n57504=>16555,\n21551=>16556,\n57505=>16556,\n29719=>16557,\n57506=>16557,\n21894=>16558,\n57507=>16558,\n21929=>16559,\n57508=>16559,\n137431=>16561,\n57510=>16561,\n147514=>16562,\n57511=>16562,\n17746=>16563,\n57512=>16563,\n148533=>16564,\n57513=>16564,\n26291=>16565,\n57514=>16565,\n135348=>16566,\n57515=>16566,\n22071=>16567,\n57516=>16567,\n26317=>16568,\n57517=>16568,\n144010=>16569,\n57518=>16569,\n26276=>16570,\n57519=>16570,\n22093=>16572,\n57521=>16572,\n22095=>16573,\n57522=>16573,\n30961=>16574,\n57523=>16574,\n22257=>16575,\n57524=>16575,\n38791=>16576,\n57525=>16576,\n21502=>16577,\n57526=>16577,\n22272=>16578,\n57527=>16578,\n22255=>16579,\n57528=>16579,\n22253=>16580,\n57529=>16580,\n166758=>16581,\n57530=>16581,\n13859=>16582,\n57531=>16582,\n135759=>16583,\n57532=>16583,\n22342=>16584,\n57533=>16584,\n147877=>16585,\n57534=>16585,\n27758=>16586,\n57535=>16586,\n28811=>16587,\n57536=>16587,\n22338=>16588,\n57537=>16588,\n14001=>16589,\n57538=>16589,\n158846=>16590,\n57539=>16590,\n22502=>16591,\n57540=>16591,\n136214=>16592,\n57541=>16592,\n22531=>16593,\n57542=>16593,\n136276=>16594,\n57543=>16594,\n148323=>16595,\n57544=>16595,\n22566=>16596,\n57545=>16596,\n150517=>16597,\n57546=>16597,\n22559=>16598,\n22698=>16599,\n57548=>16599,\n13665=>16600,\n57549=>16600,\n22752=>16601,\n57550=>16601,\n22748=>16602,\n57551=>16602,\n135740=>16603,\n57552=>16603,\n22779=>16604,\n57553=>16604,\n23551=>16605,\n57554=>16605,\n22339=>16606,\n57555=>16606,\n172368=>16607,\n57556=>16607,\n148088=>16608,\n57557=>16608,\n37843=>16609,\n57558=>16609,\n13729=>16610,\n57559=>16610,\n22815=>16611,\n57560=>16611,\n26790=>16612,\n57561=>16612,\n14019=>16613,\n57562=>16613,\n28249=>16614,\n57563=>16614,\n136766=>16615,\n57564=>16615,\n23076=>16616,\n57565=>16616,\n136850=>16618,\n57567=>16618,\n34053=>16619,\n57568=>16619,\n22985=>16620,\n57569=>16620,\n134478=>16621,\n57570=>16621,\n158849=>16622,\n57571=>16622,\n159018=>16623,\n57572=>16623,\n137180=>16624,\n57573=>16624,\n23001=>16625,\n57574=>16625,\n137211=>16626,\n57575=>16626,\n137138=>16627,\n57576=>16627,\n159142=>16628,\n57577=>16628,\n28017=>16629,\n57578=>16629,\n137256=>16630,\n57579=>16630,\n136917=>16631,\n57580=>16631,\n23033=>16632,\n57581=>16632,\n159301=>16633,\n57582=>16633,\n23211=>16634,\n57583=>16634,\n23139=>16635,\n57584=>16635,\n14054=>16636,\n57585=>16636,\n149929=>16637,\n57586=>16637,\n14088=>16639,\n57588=>16639,\n23190=>16640,\n57589=>16640,\n29797=>16641,\n57590=>16641,\n23251=>16642,\n57591=>16642,\n159649=>16643,\n57592=>16643,\n140628=>16644,\n57593=>16644,\n137489=>16645,\n57595=>16645,\n14130=>16646,\n57596=>16646,\n136888=>16647,\n57597=>16647,\n24195=>16648,\n57598=>16648,\n21200=>16649,\n57599=>16649,\n23414=>16650,\n57600=>16650,\n25992=>16651,\n57601=>16651,\n23420=>16652,\n57602=>16652,\n162318=>16653,\n57603=>16653,\n16388=>16654,\n57604=>16654,\n18525=>16655,\n57605=>16655,\n131588=>16656,\n57606=>16656,\n23509=>16657,\n57607=>16657,\n137780=>16658,\n57609=>16658,\n154060=>16659,\n57610=>16659,\n132517=>16660,\n57611=>16660,\n23539=>16661,\n57612=>16661,\n23453=>16662,\n57613=>16662,\n19728=>16663,\n57614=>16663,\n23557=>16664,\n57615=>16664,\n138052=>16665,\n57616=>16665,\n23571=>16666,\n57617=>16666,\n29646=>16667,\n57618=>16667,\n23572=>16668,\n57619=>16668,\n138405=>16669,\n57620=>16669,\n158504=>16670,\n57621=>16670,\n23625=>16671,\n57622=>16671,\n18653=>16672,\n57623=>16672,\n23685=>16673,\n57624=>16673,\n23785=>16674,\n57625=>16674,\n23791=>16675,\n57626=>16675,\n23947=>16676,\n57627=>16676,\n138745=>16677,\n57628=>16677,\n138807=>16678,\n57629=>16678,\n23824=>16679,\n57630=>16679,\n23832=>16680,\n57631=>16680,\n23878=>16681,\n57632=>16681,\n138916=>16682,\n57633=>16682,\n23738=>16683,\n57634=>16683,\n24023=>16684,\n57635=>16684,\n33532=>16685,\n57636=>16685,\n14381=>16686,\n57637=>16686,\n149761=>16687,\n57638=>16687,\n139337=>16688,\n57639=>16688,\n139635=>16689,\n57640=>16689,\n33415=>16690,\n57641=>16690,\n14390=>16691,\n57642=>16691,\n15298=>16692,\n57643=>16692,\n24110=>16693,\n57644=>16693,\n27274=>16694,\n57645=>16694,\n57647=>16696,\n148668=>16697,\n57648=>16697,\n134355=>16698,\n57649=>16698,\n21414=>16699,\n57650=>16699,\n20151=>16700,\n57651=>16700,\n21416=>16702,\n57653=>16702,\n137073=>16703,\n57654=>16703,\n24073=>16704,\n57655=>16704,\n57656=>16705,\n164994=>16706,\n57657=>16706,\n24313=>16707,\n57658=>16707,\n24315=>16708,\n57659=>16708,\n14496=>16709,\n57660=>16709,\n24316=>16710,\n57661=>16710,\n26686=>16711,\n57662=>16711,\n37915=>16712,\n57663=>16712,\n24333=>16713,\n57664=>16713,\n131521=>16714,\n57665=>16714,\n194708=>16715,\n57666=>16715,\n15070=>16716,\n57667=>16716,\n135994=>16717,\n57669=>16717,\n24378=>16718,\n57670=>16718,\n157832=>16719,\n57671=>16719,\n140240=>16720,\n57672=>16720,\n140401=>16721,\n57674=>16721,\n24419=>16722,\n57675=>16722,\n159342=>16723,\n57677=>16723,\n24434=>16724,\n57678=>16724,\n37696=>16725,\n57679=>16725,\n166454=>16726,\n57680=>16726,\n24487=>16727,\n57681=>16727,\n23990=>16728,\n57682=>16728,\n15711=>16729,\n57683=>16729,\n152144=>16730,\n57684=>16730,\n139114=>16731,\n57685=>16731,\n159992=>16732,\n57686=>16732,\n140904=>16733,\n57687=>16733,\n37334=>16734,\n57688=>16734,\n131742=>16735,\n57689=>16735,\n166441=>16736,\n57690=>16736,\n24625=>16737,\n57691=>16737,\n26245=>16738,\n57692=>16738,\n14691=>16739,\n57694=>16739,\n15815=>16740,\n57695=>16740,\n13881=>16741,\n57696=>16741,\n22416=>16742,\n57697=>16742,\n141236=>16743,\n57698=>16743,\n31089=>16744,\n57699=>16744,\n15936=>16745,\n57700=>16745,\n24734=>16746,\n57701=>16746,\n24810=>16748,\n149890=>16749,\n57704=>16749,\n149903=>16750,\n57705=>16750,\n162387=>16751,\n57706=>16751,\n29860=>16752,\n57707=>16752,\n20705=>16753,\n57708=>16753,\n23200=>16754,\n57709=>16754,\n24932=>16755,\n57710=>16755,\n24898=>16756,\n57712=>16756,\n194726=>16757,\n57713=>16757,\n159442=>16758,\n57714=>16758,\n24961=>16759,\n57715=>16759,\n20980=>16760,\n57716=>16760,\n132694=>16761,\n57717=>16761,\n24967=>16762,\n57718=>16762,\n23466=>16763,\n57719=>16763,\n147383=>16764,\n57720=>16764,\n141407=>16765,\n57721=>16765,\n25043=>16766,\n57722=>16766,\n166813=>16767,\n57723=>16767,\n170333=>16768,\n57724=>16768,\n25040=>16769,\n57725=>16769,\n14642=>16770,\n57726=>16770,\n141696=>16771,\n57727=>16771,\n141505=>16772,\n57728=>16772,\n24611=>16773,\n57729=>16773,\n24924=>16774,\n57730=>16774,\n25886=>16775,\n57731=>16775,\n25483=>16776,\n57732=>16776,\n131352=>16777,\n57733=>16777,\n25285=>16778,\n57734=>16778,\n137072=>16779,\n57735=>16779,\n25301=>16780,\n57736=>16780,\n142861=>16781,\n57737=>16781,\n25452=>16782,\n57738=>16782,\n149983=>16783,\n57739=>16783,\n14871=>16784,\n57740=>16784,\n25656=>16785,\n57741=>16785,\n25592=>16786,\n57742=>16786,\n136078=>16787,\n57743=>16787,\n137212=>16788,\n57744=>16788,\n28554=>16789,\n57746=>16789,\n142902=>16790,\n57747=>16790,\n153373=>16792,\n57750=>16792,\n25825=>16793,\n57751=>16793,\n25829=>16794,\n57752=>16794,\n38011=>16795,\n57753=>16795,\n14950=>16796,\n57754=>16796,\n25658=>16797,\n57755=>16797,\n14935=>16798,\n57756=>16798,\n25933=>16799,\n57757=>16799,\n28438=>16800,\n57758=>16800,\n150056=>16801,\n57759=>16801,\n150051=>16802,\n57760=>16802,\n25989=>16803,\n57761=>16803,\n25965=>16804,\n57762=>16804,\n25951=>16805,\n57763=>16805,\n26037=>16807,\n57765=>16807,\n149824=>16808,\n57766=>16808,\n19255=>16809,\n57767=>16809,\n26065=>16810,\n57768=>16810,\n16600=>16811,\n57769=>16811,\n137257=>16812,\n57770=>16812,\n57771=>16813,\n26083=>16814,\n57772=>16814,\n24543=>16815,\n57773=>16815,\n144384=>16816,\n57774=>16816,\n26136=>16817,\n57775=>16817,\n57776=>16818,\n143863=>16818,\n57777=>16819,\n143864=>16819,\n26180=>16820,\n57778=>16820,\n57779=>16821,\n143780=>16821,\n57780=>16822,\n143781=>16822,\n26187=>16823,\n57781=>16823,\n134773=>16824,\n57782=>16824,\n26215=>16825,\n57783=>16825,\n152038=>16826,\n57784=>16826,\n26227=>16827,\n57785=>16827,\n64018=>16828,\n143921=>16829,\n57788=>16829,\n165364=>16830,\n57789=>16830,\n143816=>16831,\n57790=>16831,\n152339=>16832,\n57791=>16832,\n30661=>16833,\n57792=>16833,\n141559=>16834,\n57793=>16834,\n39332=>16835,\n57794=>16835,\n26370=>16836,\n57795=>16836,\n148380=>16837,\n57796=>16837,\n150049=>16838,\n57797=>16838,\n27130=>16839,\n57799=>16839,\n145346=>16840,\n57800=>16840,\n194779=>16841,\n26471=>16842,\n57802=>16842,\n26466=>16843,\n57803=>16843,\n147917=>16844,\n57804=>16844,\n168173=>16845,\n57805=>16845,\n26583=>16846,\n57806=>16846,\n17641=>16847,\n57807=>16847,\n26658=>16848,\n57808=>16848,\n28240=>16849,\n57809=>16849,\n37436=>16850,\n57810=>16850,\n26625=>16851,\n57811=>16851,\n144358=>16852,\n57812=>16852,\n159136=>16853,\n57813=>16853,\n26717=>16854,\n57814=>16854,\n144495=>16855,\n57815=>16855,\n27105=>16856,\n57816=>16856,\n27147=>16857,\n57817=>16857,\n166623=>16858,\n57818=>16858,\n26995=>16859,\n57819=>16859,\n26819=>16860,\n57820=>16860,\n144845=>16861,\n57821=>16861,\n26881=>16862,\n57822=>16862,\n26880=>16863,\n57823=>16863,\n14849=>16864,\n57825=>16864,\n144956=>16865,\n57826=>16865,\n15232=>16866,\n57827=>16866,\n26540=>16867,\n57828=>16867,\n26977=>16868,\n57829=>16868,\n166474=>16869,\n57830=>16869,\n17148=>16870,\n57831=>16870,\n26934=>16871,\n57832=>16871,\n27032=>16872,\n57833=>16872,\n15265=>16873,\n57834=>16873,\n132041=>16874,\n57835=>16874,\n33635=>16875,\n57836=>16875,\n20624=>16876,\n57837=>16876,\n27129=>16877,\n57838=>16877,\n144985=>16878,\n57839=>16878,\n139562=>16879,\n57840=>16879,\n27205=>16880,\n57841=>16880,\n145155=>16881,\n57842=>16881,\n27293=>16882,\n57843=>16882,\n15347=>16883,\n57844=>16883,\n26545=>16884,\n57845=>16884,\n27336=>16885,\n57846=>16885,\n168348=>16886,\n57847=>16886,\n15373=>16887,\n57848=>16887,\n27421=>16888,\n57849=>16888,\n133411=>16889,\n57850=>16889,\n24798=>16890,\n60308=>16890,\n57851=>16890,\n27445=>16891,\n57852=>16891,\n27508=>16892,\n57853=>16892,\n141261=>16893,\n57854=>16893,\n28341=>16894,\n57855=>16894,\n57856=>16895,\n146139=>16895,\n137560=>16897,\n57858=>16897,\n14144=>16898,\n57859=>16898,\n21537=>16899,\n57860=>16899,\n146266=>16900,\n57861=>16900,\n27617=>16901,\n57862=>16901,\n147196=>16902,\n57863=>16902,\n27612=>16903,\n57864=>16903,\n27703=>16904,\n57865=>16904,\n140427=>16905,\n57866=>16905,\n149745=>16906,\n57867=>16906,\n158545=>16907,\n57868=>16907,\n27738=>16908,\n57869=>16908,\n33318=>16909,\n57870=>16909,\n27769=>16910,\n57871=>16910,\n146876=>16911,\n57872=>16911,\n17605=>16912,\n57873=>16912,\n146877=>16913,\n57874=>16913,\n147876=>16914,\n57875=>16914,\n149772=>16915,\n57876=>16915,\n149760=>16916,\n57877=>16916,\n146633=>16917,\n57878=>16917,\n14053=>16918,\n57879=>16918,\n15595=>16919,\n57880=>16919,\n134450=>16920,\n57881=>16920,\n39811=>16921,\n57882=>16921,\n143865=>16922,\n57883=>16922,\n140433=>16923,\n57884=>16923,\n32655=>16924,\n57885=>16924,\n26679=>16925,\n57886=>16925,\n159013=>16926,\n57887=>16926,\n159137=>16927,\n57888=>16927,\n159211=>16928,\n57889=>16928,\n28054=>16929,\n57890=>16929,\n27996=>16930,\n57891=>16930,\n28284=>16931,\n57892=>16931,\n28420=>16932,\n57893=>16932,\n149887=>16933,\n57894=>16933,\n147589=>16934,\n57895=>16934,\n159346=>16935,\n57896=>16935,\n34099=>16936,\n57897=>16936,\n159604=>16937,\n57898=>16937,\n20935=>16938,\n57899=>16938,\n33838=>16941,\n57902=>16941,\n166689=>16942,\n57903=>16942,\n194824=>16943,\n146991=>16944,\n57905=>16944,\n29779=>16945,\n57906=>16945,\n147330=>16946,\n57907=>16946,\n31180=>16947,\n57908=>16947,\n28239=>16948,\n57909=>16948,\n23185=>16949,\n57910=>16949,\n143435=>16950,\n57911=>16950,\n28664=>16951,\n57912=>16951,\n14093=>16952,\n57913=>16952,\n28573=>16953,\n57914=>16953,\n146992=>16954,\n57915=>16954,\n28410=>16955,\n57916=>16955,\n136343=>16956,\n57917=>16956,\n147517=>16957,\n57918=>16957,\n17749=>16958,\n57919=>16958,\n37872=>16959,\n57920=>16959,\n28484=>16960,\n57921=>16960,\n28508=>16961,\n57922=>16961,\n15694=>16962,\n57923=>16962,\n28532=>16963,\n57924=>16963,\n168304=>16964,\n57925=>16964,\n15675=>16965,\n57926=>16965,\n28575=>16966,\n57927=>16966,\n147780=>16967,\n57928=>16967,\n28627=>16968,\n57929=>16968,\n147601=>16969,\n57930=>16969,\n147797=>16970,\n57931=>16970,\n147513=>16971,\n57932=>16971,\n147440=>16972,\n57933=>16972,\n147380=>16973,\n57934=>16973,\n147775=>16974,\n57935=>16974,\n20959=>16975,\n57936=>16975,\n57937=>16976,\n147798=>16976,\n57938=>16977,\n147799=>16977,\n147776=>16978,\n57939=>16978,\n156125=>16979,\n57940=>16979,\n28747=>16980,\n57941=>16980,\n28798=>16981,\n57942=>16981,\n28839=>16982,\n57943=>16982,\n28876=>16984,\n57945=>16984,\n28885=>16985,\n57946=>16985,\n28886=>16986,\n57947=>16986,\n28895=>16987,\n57948=>16987,\n16644=>16988,\n57949=>16988,\n15848=>16989,\n57950=>16989,\n29108=>16990,\n57951=>16990,\n29078=>16991,\n57952=>16991,\n148087=>16992,\n57953=>16992,\n28971=>16993,\n57954=>16993,\n28997=>16994,\n57955=>16994,\n23176=>16995,\n57956=>16995,\n29002=>16996,\n57957=>16996,\n64072=>16997,\n148325=>16998,\n57960=>16998,\n29007=>16999,\n57961=>16999,\n37730=>17000,\n57962=>17000,\n148161=>17001,\n57963=>17001,\n28972=>17002,\n57964=>17002,\n148570=>17003,\n57965=>17003,\n150055=>17004,\n57966=>17004,\n150050=>17005,\n57967=>17005,\n29114=>17006,\n57968=>17006,\n166888=>17007,\n57969=>17007,\n28861=>17008,\n57970=>17008,\n29198=>17009,\n57971=>17009,\n37954=>17010,\n57972=>17010,\n29205=>17011,\n57973=>17011,\n22801=>17012,\n57974=>17012,\n37955=>17013,\n57975=>17013,\n29220=>17014,\n57976=>17014,\n37697=>17015,\n57977=>17015,\n153093=>17016,\n57978=>17016,\n29230=>17017,\n57979=>17017,\n29248=>17018,\n57980=>17018,\n149876=>17019,\n57981=>17019,\n26813=>17020,\n57982=>17020,\n29269=>17021,\n57983=>17021,\n29271=>17022,\n57984=>17022,\n15957=>17023,\n57985=>17023,\n143428=>17024,\n57986=>17024,\n26637=>17025,\n57987=>17025,\n28477=>17026,\n57988=>17026,\n29314=>17027,\n57989=>17027,\n29483=>17029,\n57991=>17029,\n149539=>17030,\n57992=>17030,\n165931=>17031,\n57993=>17031,\n18669=>17032,\n57994=>17032,\n165892=>17033,\n57995=>17033,\n29480=>17034,\n57996=>17034,\n29486=>17035,\n57997=>17035,\n29647=>17036,\n57998=>17036,\n29610=>17037,\n57999=>17037,\n134202=>17038,\n58000=>17038,\n158254=>17039,\n58001=>17039,\n29641=>17040,\n58002=>17040,\n29769=>17041,\n58003=>17041,\n147938=>17042,\n58004=>17042,\n136935=>17043,\n58005=>17043,\n150052=>17044,\n58006=>17044,\n26147=>17045,\n58007=>17045,\n14021=>17046,\n58008=>17046,\n149943=>17047,\n58009=>17047,\n149901=>17048,\n58010=>17048,\n150011=>17049,\n58011=>17049,\n29687=>17050,\n58012=>17050,\n29717=>17051,\n58013=>17051,\n26883=>17052,\n58014=>17052,\n150054=>17053,\n58015=>17053,\n29753=>17054,\n58016=>17054,\n16087=>17055,\n58018=>17055,\n194863=>17056,\n141485=>17057,\n58020=>17057,\n29792=>17058,\n58021=>17058,\n167602=>17059,\n58022=>17059,\n29767=>17060,\n58023=>17060,\n29668=>17061,\n58024=>17061,\n29814=>17062,\n58025=>17062,\n33721=>17063,\n58026=>17063,\n29804=>17064,\n58027=>17064,\n29812=>17065,\n58029=>17065,\n37873=>17066,\n58030=>17066,\n27180=>17067,\n58031=>17067,\n29826=>17068,\n58032=>17068,\n18771=>17069,\n58033=>17069,\n150156=>17070,\n58034=>17070,\n147807=>17071,\n58035=>17071,\n150137=>17072,\n58036=>17072,\n166799=>17073,\n58037=>17073,\n23366=>17074,\n58038=>17074,\n166915=>17075,\n58039=>17075,\n137374=>17076,\n58040=>17076,\n29896=>17077,\n58041=>17077,\n137608=>17078,\n58042=>17078,\n29966=>17079,\n58043=>17079,\n29982=>17080,\n58045=>17080,\n167641=>17081,\n58046=>17081,\n137803=>17082,\n58047=>17082,\n23511=>17083,\n58048=>17083,\n167596=>17084,\n58049=>17084,\n37765=>17085,\n58050=>17085,\n30029=>17086,\n58051=>17086,\n30026=>17087,\n58052=>17087,\n30055=>17088,\n58053=>17088,\n30062=>17089,\n58054=>17089,\n151426=>17090,\n58055=>17090,\n16132=>17091,\n58056=>17091,\n150803=>17092,\n58057=>17092,\n30094=>17093,\n58058=>17093,\n29789=>17094,\n58059=>17094,\n30110=>17095,\n58060=>17095,\n30132=>17096,\n58061=>17096,\n30210=>17097,\n58062=>17097,\n30252=>17098,\n58063=>17098,\n30289=>17099,\n58064=>17099,\n30287=>17100,\n58065=>17100,\n30319=>17101,\n58066=>17101,\n58067=>17102,\n156661=>17103,\n58068=>17103,\n30352=>17104,\n58069=>17104,\n33263=>17105,\n58070=>17105,\n14328=>17106,\n58071=>17106,\n157969=>17107,\n58072=>17107,\n157966=>17108,\n58073=>17108,\n30369=>17109,\n58074=>17109,\n30373=>17110,\n58075=>17110,\n30391=>17111,\n58076=>17111,\n30412=>17112,\n58077=>17112,\n159647=>17113,\n58078=>17113,\n33890=>17114,\n58079=>17114,\n151709=>17115,\n58080=>17115,\n151933=>17116,\n58081=>17116,\n138780=>17117,\n58082=>17117,\n30494=>17118,\n58083=>17118,\n30502=>17119,\n58084=>17119,\n30528=>17120,\n58085=>17120,\n25775=>17121,\n58086=>17121,\n152096=>17122,\n58087=>17122,\n30552=>17123,\n58088=>17123,\n144044=>17124,\n58089=>17124,\n30639=>17125,\n58090=>17125,\n166244=>17126,\n58091=>17126,\n166248=>17127,\n58092=>17127,\n136897=>17128,\n58093=>17128,\n30708=>17129,\n58094=>17129,\n26826=>17131,\n58098=>17131,\n30895=>17132,\n58099=>17132,\n30919=>17133,\n58100=>17133,\n30931=>17134,\n58101=>17134,\n38565=>17135,\n58102=>17135,\n31022=>17136,\n58103=>17136,\n153056=>17137,\n58104=>17137,\n30935=>17138,\n58105=>17138,\n31028=>17139,\n58106=>17139,\n30897=>17140,\n58107=>17140,\n161292=>17141,\n58108=>17141,\n36792=>17142,\n58109=>17142,\n34948=>17143,\n58110=>17143,\n140828=>17144,\n58113=>17144,\n31110=>17145,\n58114=>17145,\n35072=>17146,\n58115=>17146,\n26882=>17147,\n58116=>17147,\n31104=>17148,\n58117=>17148,\n153687=>17149,\n58118=>17149,\n31133=>17150,\n58119=>17150,\n162617=>17151,\n58120=>17151,\n31036=>17152,\n58121=>17152,\n31145=>17153,\n58122=>17153,\n28202=>17154,\n58123=>17154,\n160038=>17155,\n58124=>17155,\n16040=>17156,\n58125=>17156,\n31174=>17157,\n58126=>17157,\n168205=>17158,\n58127=>17158,\n31188=>17159,\n58128=>17159,\n21797=>17161,\n62526=>17161,\n134210=>17163,\n62528=>17163,\n134421=>17164,\n62529=>17164,\n151851=>17165,\n62530=>17165,\n21904=>17166,\n62531=>17166,\n142534=>17167,\n62532=>17167,\n14828=>17168,\n62533=>17168,\n131905=>17169,\n62534=>17169,\n36422=>17170,\n62535=>17170,\n150968=>17171,\n62536=>17171,\n169189=>17172,\n62537=>17172,\n164030=>17174,\n62539=>17174,\n30586=>17175,\n62540=>17175,\n142392=>17176,\n62541=>17176,\n14900=>17177,\n62542=>17177,\n18389=>17178,\n62543=>17178,\n164189=>17179,\n62544=>17179,\n158194=>17180,\n62545=>17180,\n151018=>17181,\n62546=>17181,\n25821=>17182,\n62547=>17182,\n134524=>17183,\n62548=>17183,\n135092=>17184,\n62549=>17184,\n134357=>17185,\n62550=>17185,\n25741=>17187,\n62552=>17187,\n36478=>17188,\n62553=>17188,\n134806=>17189,\n62554=>17189,\n135012=>17191,\n62556=>17191,\n142505=>17192,\n62557=>17192,\n164438=>17193,\n62558=>17193,\n148691=>17194,\n62559=>17194,\n134470=>17196,\n62561=>17196,\n170573=>17197,\n62562=>17197,\n164073=>17198,\n62563=>17198,\n18420=>17199,\n62564=>17199,\n151207=>17200,\n62565=>17200,\n142530=>17201,\n62566=>17201,\n39602=>17202,\n62567=>17202,\n14951=>17203,\n62568=>17203,\n169460=>17204,\n62569=>17204,\n16365=>17205,\n62570=>17205,\n13574=>17206,\n62571=>17206,\n152263=>17207,\n62572=>17207,\n169940=>17208,\n62573=>17208,\n142660=>17210,\n62575=>17210,\n40302=>17211,\n62576=>17211,\n38933=>17212,\n62577=>17212,\n17369=>17214,\n62579=>17214,\n25780=>17216,\n62581=>17216,\n21731=>17217,\n62582=>17217,\n62584=>17219,\n142282=>17219,\n14843=>17221,\n62586=>17221,\n157402=>17223,\n62588=>17223,\n157462=>17224,\n62589=>17224,\n162208=>17225,\n62590=>17225,\n25834=>17226,\n62591=>17226,\n151634=>17227,\n62592=>17227,\n134211=>17228,\n62593=>17228,\n36456=>17229,\n62594=>17229,\n166732=>17231,\n62596=>17231,\n132913=>17232,\n62597=>17232,\n18443=>17234,\n62599=>17234,\n131497=>17235,\n62600=>17235,\n16378=>17236,\n62601=>17236,\n22643=>17237,\n62602=>17237,\n142733=>17238,\n62603=>17238,\n148936=>17240,\n62605=>17240,\n132348=>17241,\n62606=>17241,\n155799=>17242,\n62607=>17242,\n134988=>17243,\n62608=>17243,\n21881=>17245,\n62610=>17245,\n17338=>17247,\n62612=>17247,\n19124=>17249,\n62614=>17249,\n141926=>17250,\n62615=>17250,\n135325=>17251,\n62616=>17251,\n33194=>17252,\n62617=>17252,\n39157=>17253,\n62618=>17253,\n134556=>17254,\n62619=>17254,\n25465=>17255,\n62620=>17255,\n14846=>17256,\n62621=>17256,\n141173=>17257,\n62622=>17257,\n36288=>17258,\n62623=>17258,\n22177=>17259,\n62624=>17259,\n25724=>17260,\n62625=>17260,\n15939=>17261,\n62626=>17261,\n173569=>17263,\n62628=>17263,\n134665=>17264,\n62629=>17264,\n142031=>17265,\n62630=>17265,\n135368=>17268,\n62633=>17268,\n145858=>17269,\n62634=>17269,\n14738=>17270,\n62635=>17270,\n14854=>17271,\n62636=>17271,\n164507=>17272,\n62637=>17272,\n13688=>17273,\n62638=>17273,\n155209=>17274,\n62639=>17274,\n139463=>17275,\n62640=>17275,\n142514=>17278,\n62643=>17278,\n169760=>17279,\n62644=>17279,\n13500=>17280,\n62645=>17280,\n27709=>17281,\n62646=>17281,\n151099=>17282,\n62647=>17282,\n161140=>17285,\n62650=>17285,\n142987=>17286,\n62651=>17286,\n139784=>17287,\n62652=>17287,\n173659=>17288,\n62653=>17288,\n167117=>17289,\n62654=>17289,\n134778=>17290,\n62655=>17290,\n134196=>17291,\n62656=>17291,\n161337=>17292,\n62683=>17292,\n142286=>17293,\n62684=>17293,\n62687=>17294,\n142417=>17294,\n14872=>17295,\n62689=>17295,\n62691=>17296,\n135367=>17296,\n62693=>17297,\n173618=>17297,\n167122=>17298,\n62695=>17298,\n167321=>17299,\n62696=>17299,\n167114=>17300,\n62697=>17300,\n38314=>17301,\n62698=>17301,\n62706=>17303,\n161630=>17303,\n28992=>17304,\n62708=>17304,\n20822=>17306,\n62385=>17306,\n20222=>17307,\n20616=>17308,\n62487=>17308,\n13459=>17310,\n62489=>17310,\n20870=>17311,\n62491=>17311,\n24130=>17312,\n63037=>17312,\n20997=>17313,\n62495=>17313,\n21031=>17314,\n62436=>17314,\n21113=>17315,\n62497=>17315,\n194600=>17316,\n13651=>17317,\n62504=>17317,\n21442=>17318,\n62505=>17318,\n21343=>17319,\n62715=>17319,\n21823=>17321,\n62520=>17321,\n21976=>17323,\n59986=>17323,\n13789=>17324,\n62722=>17324,\n22049=>17325,\n63067=>17325,\n22100=>17327,\n60044=>17327,\n60148=>17328,\n135291=>17328,\n60153=>17330,\n135379=>17330,\n61095=>17332,\n135934=>17332,\n14265=>17335,\n60104=>17335,\n23745=>17336,\n61099=>17336,\n23829=>17337,\n63066=>17337,\n23894=>17338,\n63030=>17338,\n14392=>17339,\n63036=>17339,\n20097=>17340,\n62477=>17340,\n24253=>17341,\n63038=>17341,\n14612=>17342,\n63042=>17342,\n25017=>17343,\n63050=>17343,\n25232=>17344,\n63054=>17344,\n25368=>17345,\n63056=>17345,\n25690=>17346,\n63063=>17346,\n25745=>17347,\n62381=>17347,\n33133=>17348,\n62709=>17348,\n33156=>17349,\n59922=>17349,\n33171=>17350,\n59924=>17350,\n26624=>17351,\n63080=>17351,\n15292=>17352,\n63093=>17352,\n29327=>17353,\n60517=>17353,\n29389=>17354,\n59781=>17354,\n149487=>17355,\n29497=>17356,\n59785=>17356,\n30018=>17357,\n59811=>17357,\n30172=>17358,\n59817=>17358,\n16320=>17359,\n59818=>17359,\n60278=>17360,\n151205=>17360,\n16343=>17361,\n59820=>17361,\n30336=>17363,\n30348=>17364,\n59824=>17364,\n151388=>17364,\n16552=>17365,\n59845=>17365,\n30777=>17366,\n59846=>17366,\n16643=>17367,\n59855=>17367,\n31377=>17368,\n59863=>17368,\n31771=>17369,\n59876=>17369,\n31981=>17370,\n59884=>17370,\n32659=>17371,\n62658=>17371,\n32686=>17372,\n59892=>17372,\n33535=>17374,\n59936=>17374,\n22623=>17375,\n59981=>17375,\n34482=>17376,\n59960=>17376,\n17836=>17377,\n34699=>17378,\n59963=>17378,\n35143=>17379,\n59969=>17379,\n35369=>17381,\n59972=>17381,\n36465=>17383,\n59988=>17383,\n60484=>17384,\n164233=>17384,\n36528=>17385,\n59990=>17385,\n37214=>17387,\n62443=>17387,\n37260=>17388,\n62441=>17388,\n39182=>17389,\n60051=>17389,\n39196=>17390,\n60054=>17390,\n39809=>17393,\n60066=>17393,\n40384=>17394,\n60080=>17394,\n40339=>17395,\n60078=>17395,\n40620=>17396,\n60085=>17396,\n19857=>17397,\n60540=>17397,\n37818=>17399,\n40571=>17400,\n60084=>17400,\n28809=>17401,\n63148=>17401,\n29512=>17402,\n59788=>17402,\n31129=>17404,\n59858=>17404,\n36791=>17405,\n59997=>17405,\n39234=>17407,\n60056=>17407,\n8364=>17601,\n12443=>17606,\n63518=>17606,\n12444=>17607,\n63519=>17607,\n11904=>17608,\n63520=>17608,\n12736=>17609,\n62211=>17609,\n12737=>17610,\n62212=>17610,\n12738=>17611,\n62213=>17611,\n12739=>17612,\n62214=>17612,\n12740=>17613,\n62215=>17613,\n131340=>17614,\n62216=>17614,\n12741=>17615,\n62217=>17615,\n131281=>17616,\n62218=>17616,\n131277=>17617,\n62219=>17617,\n12742=>17618,\n62220=>17618,\n12743=>17619,\n62221=>17619,\n131275=>17620,\n62222=>17620,\n139240=>17621,\n62223=>17621,\n12744=>17622,\n62224=>17622,\n131274=>17623,\n62225=>17623,\n12745=>17624,\n62226=>17624,\n12746=>17625,\n62227=>17625,\n12747=>17626,\n62228=>17626,\n12748=>17627,\n62229=>17627,\n131342=>17628,\n62230=>17628,\n12749=>17629,\n62231=>17629,\n12750=>17630,\n62232=>17630,\n62776=>17631,\n62777=>17632,\n138177=>17633,\n62778=>17633,\n194680=>17634,\n62779=>17634,\n12205=>17635,\n38737=>17635,\n62780=>17635,\n131206=>17636,\n62781=>17636,\n20059=>17637,\n62782=>17637,\n20155=>17638,\n62783=>17638,\n13630=>17639,\n62784=>17639,\n23587=>17640,\n62785=>17640,\n24401=>17641,\n62786=>17641,\n24516=>17642,\n62787=>17642,\n14586=>17643,\n62788=>17643,\n25164=>17644,\n62789=>17644,\n25909=>17645,\n62790=>17645,\n27514=>17646,\n62791=>17646,\n27701=>17647,\n62792=>17647,\n27706=>17648,\n62793=>17648,\n28780=>17649,\n62794=>17649,\n29227=>17650,\n62795=>17650,\n20012=>17651,\n62796=>17651,\n29357=>17652,\n62797=>17652,\n149737=>17653,\n62798=>17653,\n32594=>17654,\n62799=>17654,\n31035=>17655,\n62800=>17655,\n31993=>17656,\n62801=>17656,\n32595=>17657,\n62802=>17657,\n156266=>17658,\n62803=>17658,\n13505=>17659,\n62804=>17659,\n156491=>17660,\n62806=>17660,\n32770=>17661,\n62807=>17661,\n32896=>17662,\n62808=>17662,\n157202=>17663,\n62809=>17663,\n158033=>17664,\n62810=>17664,\n21341=>17665,\n62811=>17665,\n34916=>17666,\n62812=>17666,\n35265=>17667,\n62813=>17667,\n161970=>17668,\n62814=>17668,\n35744=>17669,\n62815=>17669,\n36125=>17670,\n62816=>17670,\n38021=>17671,\n62817=>17671,\n38264=>17672,\n62818=>17672,\n38271=>17673,\n62819=>17673,\n38376=>17674,\n62820=>17674,\n167439=>17675,\n62821=>17675,\n38886=>17676,\n62822=>17676,\n39029=>17677,\n62823=>17677,\n39118=>17678,\n62824=>17678,\n39134=>17679,\n62825=>17679,\n39267=>17680,\n62826=>17680,\n170000=>17681,\n62827=>17681,\n40060=>17682,\n62828=>17682,\n40479=>17683,\n62829=>17683,\n40644=>17684,\n62830=>17684,\n27503=>17685,\n62831=>17685,\n63751=>17686,\n62832=>17686,\n20023=>17687,\n62833=>17687,\n131207=>17688,\n62834=>17688,\n38429=>17689,\n62835=>17689,\n25143=>17690,\n62836=>17690,\n38050=>17691,\n62837=>17691,\n11908=>17692,\n63521=>17692,\n11910=>17693,\n63522=>17693,\n11911=>17694,\n63523=>17694,\n11912=>17695,\n63524=>17695,\n11914=>17696,\n63525=>17696,\n11916=>17697,\n63526=>17697,\n11917=>17698,\n63527=>17698,\n11925=>17699,\n63528=>17699,\n11932=>17700,\n63529=>17700,\n11941=>17701,\n63531=>17701,\n11943=>17702,\n63532=>17702,\n11946=>17703,\n63533=>17703,\n11948=>17704,\n63534=>17704,\n11950=>17705,\n63535=>17705,\n11958=>17706,\n63536=>17706,\n11964=>17707,\n63537=>17707,\n11966=>17708,\n63538=>17708,\n11978=>17709,\n63540=>17709,\n11980=>17710,\n63541=>17710,\n11981=>17711,\n63542=>17711,\n11983=>17712,\n63543=>17712,\n11990=>17713,\n63544=>17713,\n11991=>17714,\n63545=>17714,\n11998=>17715,\n63546=>17715,\n172969=>17716,\n62368=>17716,\n135493=>17717,\n62369=>17717,\n25866=>17718,\n62371=>17718,\n20029=>17719,\n62374=>17719,\n28381=>17720,\n62375=>17720,\n40270=>17721,\n62376=>17721,\n37343=>17722,\n62377=>17722,\n62380=>17723,\n161589=>17723,\n20250=>17724,\n62382=>17724,\n20264=>17725,\n62383=>17725,\n20392=>17726,\n62384=>17726,\n20852=>17727,\n62386=>17727,\n20892=>17728,\n62387=>17728,\n20964=>17729,\n62388=>17729,\n21153=>17730,\n62389=>17730,\n21160=>17731,\n62390=>17731,\n21307=>17732,\n62391=>17732,\n21326=>17733,\n62392=>17733,\n21457=>17734,\n62393=>17734,\n21464=>17735,\n62394=>17735,\n22242=>17736,\n62395=>17736,\n22768=>17737,\n62396=>17737,\n22788=>17738,\n62397=>17738,\n22791=>17739,\n62398=>17739,\n22834=>17740,\n62399=>17740,\n22836=>17741,\n62400=>17741,\n23398=>17742,\n62401=>17742,\n23454=>17743,\n62402=>17743,\n23455=>17744,\n62403=>17744,\n23706=>17745,\n62404=>17745,\n24198=>17746,\n62405=>17746,\n24635=>17747,\n62406=>17747,\n25993=>17748,\n62407=>17748,\n26622=>17749,\n62408=>17749,\n26628=>17750,\n62409=>17750,\n26725=>17751,\n62410=>17751,\n27982=>17752,\n62411=>17752,\n28860=>17753,\n62412=>17753,\n30005=>17754,\n62413=>17754,\n32420=>17755,\n62414=>17755,\n32428=>17756,\n62415=>17756,\n32442=>17757,\n62416=>17757,\n32455=>17758,\n62417=>17758,\n32463=>17759,\n62418=>17759,\n32479=>17760,\n62419=>17760,\n32518=>17761,\n62420=>17761,\n32567=>17762,\n62421=>17762,\n33402=>17763,\n62422=>17763,\n33487=>17764,\n62423=>17764,\n33647=>17765,\n62424=>17765,\n35270=>17766,\n62425=>17766,\n35774=>17767,\n62426=>17767,\n35810=>17768,\n62427=>17768,\n36710=>17769,\n62428=>17769,\n36711=>17770,\n62429=>17770,\n36718=>17771,\n62430=>17771,\n29713=>17772,\n62431=>17772,\n31996=>17773,\n62432=>17773,\n32205=>17774,\n62433=>17774,\n26950=>17775,\n62434=>17775,\n31433=>17776,\n62435=>17776,\n30904=>17777,\n62442=>17777,\n32956=>17778,\n62444=>17778,\n36107=>17779,\n62446=>17779,\n33014=>17780,\n62447=>17780,\n133607=>17781,\n62448=>17781,\n32927=>17782,\n62451=>17782,\n40647=>17783,\n62452=>17783,\n19661=>17784,\n62453=>17784,\n40393=>17785,\n62454=>17785,\n40460=>17786,\n62455=>17786,\n19518=>17787,\n62456=>17787,\n171510=>17788,\n62457=>17788,\n159758=>17789,\n62458=>17789,\n40458=>17790,\n62459=>17790,\n172339=>17791,\n62460=>17791,\n13761=>17792,\n62461=>17792,\n28314=>17793,\n62463=>17793,\n33342=>17794,\n62464=>17794,\n29977=>17795,\n62465=>17795,\n18705=>17796,\n62467=>17796,\n39532=>17797,\n62468=>17797,\n39567=>17798,\n62469=>17798,\n40857=>17799,\n62470=>17799,\n31111=>17800,\n62471=>17800,\n164972=>17801,\n62472=>17801,\n138698=>17802,\n62473=>17802,\n132560=>17803,\n62474=>17803,\n142054=>17804,\n62475=>17804,\n20004=>17805,\n62476=>17805,\n20096=>17806,\n62478=>17806,\n20103=>17807,\n62479=>17807,\n20159=>17808,\n62480=>17808,\n20203=>17809,\n62481=>17809,\n20279=>17810,\n62482=>17810,\n13388=>17811,\n62483=>17811,\n20413=>17812,\n62484=>17812,\n15944=>17813,\n62485=>17813,\n20483=>17814,\n62486=>17814,\n13437=>17815,\n62488=>17815,\n13477=>17816,\n62490=>17816,\n22789=>17817,\n62492=>17817,\n20955=>17818,\n62493=>17818,\n20988=>17819,\n62494=>17819,\n20105=>17820,\n62496=>17820,\n21136=>17821,\n62498=>17821,\n21287=>17822,\n62499=>17822,\n13767=>17823,\n62500=>17823,\n21417=>17824,\n62501=>17824,\n13649=>17825,\n62502=>17825,\n21424=>17826,\n62503=>17826,\n21539=>17827,\n62506=>17827,\n13677=>17828,\n62507=>17828,\n13682=>17829,\n62508=>17829,\n13953=>17830,\n62509=>17830,\n21651=>17831,\n62510=>17831,\n21667=>17832,\n62511=>17832,\n21684=>17833,\n62512=>17833,\n21689=>17834,\n62513=>17834,\n21712=>17835,\n62514=>17835,\n21743=>17836,\n62515=>17836,\n21784=>17837,\n62516=>17837,\n21795=>17838,\n62517=>17838,\n21800=>17839,\n62518=>17839,\n13720=>17840,\n62519=>17840,\n13733=>17841,\n62521=>17841,\n13759=>17842,\n62522=>17842,\n21975=>17843,\n62523=>17843,\n13765=>17844,\n62524=>17844,\n163204=>17845,\n62525=>17845,\n16467=>17846,\n62538=>17846,\n62551=>17847,\n135412=>17847,\n62555=>17848,\n134155=>17848,\n62574=>17849,\n161992=>17849,\n62580=>17850,\n155813=>17850,\n62583=>17851,\n142668=>17851,\n62585=>17852,\n135287=>17852,\n62587=>17853,\n135279=>17853,\n62595=>17854,\n139681=>17854,\n62609=>17855,\n134550=>17855,\n16571=>17856,\n62611=>17856,\n62631=>17857,\n142537=>17857,\n22098=>17858,\n62641=>17858,\n134961=>17859,\n62642=>17859,\n62657=>17860,\n157724=>17860,\n135375=>17861,\n62659=>17861,\n141315=>17862,\n62660=>17862,\n141625=>17863,\n62661=>17863,\n13819=>17864,\n62662=>17864,\n152035=>17865,\n62663=>17865,\n134796=>17866,\n62664=>17866,\n135053=>17867,\n62665=>17867,\n134826=>17868,\n62666=>17868,\n16275=>17869,\n62667=>17869,\n134960=>17870,\n62668=>17870,\n134471=>17871,\n62669=>17871,\n135503=>17872,\n62670=>17872,\n134732=>17873,\n62671=>17873,\n134827=>17874,\n62673=>17874,\n134057=>17875,\n62674=>17875,\n134472=>17876,\n62675=>17876,\n135360=>17877,\n62676=>17877,\n135485=>17878,\n62677=>17878,\n16377=>17879,\n62678=>17879,\n140950=>17880,\n62679=>17880,\n25650=>17881,\n62680=>17881,\n135085=>17882,\n62681=>17882,\n144372=>17883,\n62682=>17883,\n62685=>17884,\n134526=>17884,\n62686=>17885,\n134527=>17885,\n62688=>17886,\n142421=>17886,\n62690=>17887,\n134808=>17887,\n62692=>17888,\n134958=>17888,\n62694=>17889,\n158544=>17889,\n21708=>17890,\n62699=>17890,\n33476=>17891,\n62700=>17891,\n21945=>17892,\n62701=>17892,\n171715=>17893,\n62703=>17893,\n39974=>17894,\n62704=>17894,\n39606=>17895,\n62705=>17895,\n62707=>17896,\n142830=>17896,\n33004=>17897,\n62710=>17897,\n23580=>17898,\n62711=>17898,\n157042=>17899,\n62712=>17899,\n33076=>17900,\n62713=>17900,\n14231=>17901,\n62714=>17901,\n164029=>17902,\n62716=>17902,\n37302=>17903,\n62717=>17903,\n134906=>17904,\n62718=>17904,\n134671=>17905,\n62719=>17905,\n134775=>17906,\n62720=>17906,\n134907=>17907,\n62721=>17907,\n151019=>17908,\n62723=>17908,\n13833=>17909,\n62724=>17909,\n134358=>17910,\n62725=>17910,\n22191=>17911,\n62726=>17911,\n141237=>17912,\n62727=>17912,\n135369=>17913,\n62728=>17913,\n134672=>17914,\n62729=>17914,\n134776=>17915,\n62730=>17915,\n135288=>17916,\n62731=>17916,\n135496=>17917,\n62732=>17917,\n164359=>17918,\n62733=>17918,\n136277=>17919,\n62734=>17919,\n134777=>17920,\n62735=>17920,\n151120=>17921,\n62736=>17921,\n142756=>17922,\n62737=>17922,\n23124=>17923,\n62738=>17923,\n62739=>17924,\n135197=>17924,\n62740=>17925,\n135198=>17925,\n62741=>17926,\n135413=>17926,\n62742=>17927,\n135414=>17927,\n22428=>17928,\n62743=>17928,\n134673=>17929,\n62744=>17929,\n161428=>17930,\n62745=>17930,\n164557=>17931,\n62746=>17931,\n135093=>17932,\n62747=>17932,\n134779=>17933,\n62748=>17933,\n151934=>17934,\n62749=>17934,\n14083=>17935,\n62750=>17935,\n135094=>17936,\n62751=>17936,\n135552=>17937,\n62752=>17937,\n152280=>17938,\n62753=>17938,\n172733=>17939,\n62754=>17939,\n149978=>17940,\n62755=>17940,\n137274=>17941,\n62756=>17941,\n147831=>17942,\n62757=>17942,\n164476=>17943,\n62758=>17943,\n22681=>17944,\n62759=>17944,\n21096=>17945,\n62760=>17945,\n13850=>17946,\n62761=>17946,\n153405=>17947,\n62762=>17947,\n31666=>17948,\n62763=>17948,\n23400=>17949,\n62764=>17949,\n18432=>17950,\n62765=>17950,\n19244=>17951,\n62766=>17951,\n40743=>17952,\n62767=>17952,\n18919=>17953,\n62768=>17953,\n39967=>17954,\n62769=>17954,\n39821=>17955,\n62770=>17955,\n154484=>17956,\n62771=>17956,\n143677=>17957,\n62772=>17957,\n22011=>17958,\n62773=>17958,\n13810=>17959,\n62774=>17959,\n22153=>17960,\n62775=>17960,\n23870=>17961,\n63028=>17961,\n23880=>17962,\n63029=>17962,\n15868=>17963,\n63031=>17963,\n14351=>17964,\n63032=>17964,\n23972=>17965,\n63033=>17965,\n23993=>17966,\n63034=>17966,\n14368=>17967,\n63035=>17967,\n24357=>17968,\n63039=>17968,\n24451=>17969,\n63040=>17969,\n14600=>17970,\n63041=>17970,\n14655=>17971,\n63043=>17971,\n14669=>17972,\n63044=>17972,\n24791=>17973,\n63045=>17973,\n24893=>17974,\n63046=>17974,\n23781=>17975,\n63047=>17975,\n14729=>17976,\n63048=>17976,\n25015=>17977,\n63049=>17977,\n25039=>17978,\n63051=>17978,\n14776=>17979,\n63052=>17979,\n25132=>17980,\n63053=>17980,\n25317=>17981,\n63055=>17981,\n14840=>17982,\n63057=>17982,\n22193=>17983,\n63058=>17983,\n14851=>17984,\n63059=>17984,\n25570=>17985,\n63060=>17985,\n25595=>17986,\n63061=>17986,\n25607=>17987,\n63062=>17987,\n14923=>17988,\n63064=>17988,\n25792=>17989,\n63065=>17989,\n40863=>17990,\n63068=>17990,\n14999=>17991,\n63069=>17991,\n25990=>17992,\n63070=>17992,\n15037=>17993,\n63071=>17993,\n26111=>17994,\n63072=>17994,\n26195=>17995,\n63073=>17995,\n15090=>17996,\n63074=>17996,\n26258=>17997,\n63075=>17997,\n15138=>17998,\n63076=>17998,\n26390=>17999,\n63077=>17999,\n15170=>18000,\n63078=>18000,\n26532=>18001,\n63079=>18001,\n15192=>18002,\n63081=>18002,\n26698=>18003,\n63082=>18003,\n26756=>18004,\n63083=>18004,\n15218=>18005,\n63084=>18005,\n15217=>18006,\n63085=>18006,\n15227=>18007,\n63086=>18007,\n26889=>18008,\n63087=>18008,\n26947=>18009,\n63088=>18009,\n29276=>18010,\n63089=>18010,\n26980=>18011,\n63090=>18011,\n27039=>18012,\n63091=>18012,\n27013=>18013,\n63092=>18013,\n27094=>18014,\n63094=>18014,\n15325=>18015,\n63095=>18015,\n27237=>18016,\n63096=>18016,\n27252=>18017,\n63097=>18017,\n27249=>18018,\n63098=>18018,\n27266=>18019,\n63099=>18019,\n15340=>18020,\n63100=>18020,\n27289=>18021,\n63101=>18021,\n15346=>18022,\n63102=>18022,\n27307=>18023,\n63103=>18023,\n27317=>18024,\n63104=>18024,\n27348=>18025,\n63105=>18025,\n27382=>18026,\n63106=>18026,\n27521=>18027,\n63107=>18027,\n27585=>18028,\n63108=>18028,\n27626=>18029,\n63109=>18029,\n27765=>18030,\n63110=>18030,\n27818=>18031,\n63111=>18031,\n15563=>18032,\n63112=>18032,\n27906=>18033,\n63113=>18033,\n27910=>18034,\n63114=>18034,\n27942=>18035,\n63115=>18035,\n28033=>18036,\n63116=>18036,\n15599=>18037,\n63117=>18037,\n28068=>18038,\n63118=>18038,\n28081=>18039,\n63119=>18039,\n28181=>18040,\n63120=>18040,\n28184=>18041,\n63121=>18041,\n28201=>18042,\n63122=>18042,\n28294=>18043,\n63123=>18043,\n166336=>18044,\n63124=>18044,\n28347=>18045,\n63125=>18045,\n28386=>18046,\n63126=>18046,\n28378=>18047,\n63127=>18047,\n40831=>18048,\n63128=>18048,\n28392=>18049,\n63129=>18049,\n28393=>18050,\n63130=>18050,\n28452=>18051,\n63131=>18051,\n28468=>18052,\n63132=>18052,\n15686=>18053,\n63133=>18053,\n147265=>18054,\n63134=>18054,\n28545=>18055,\n63135=>18055,\n28606=>18056,\n63136=>18056,\n15722=>18057,\n63137=>18057,\n15733=>18058,\n63138=>18058,\n29111=>18059,\n63139=>18059,\n23705=>18060,\n63140=>18060,\n15754=>18061,\n63141=>18061,\n28716=>18062,\n63142=>18062,\n15761=>18063,\n63143=>18063,\n28752=>18064,\n63144=>18064,\n28756=>18065,\n63145=>18065,\n28783=>18066,\n63146=>18066,\n28799=>18067,\n63147=>18067,\n131877=>18068,\n63149=>18068,\n17345=>18069,\n63150=>18069,\n13809=>18070,\n63151=>18070,\n134872=>18071,\n63152=>18071,\n13902=>18072,\n58134=>18072,\n15789=>18073,\n58172=>18073,\n154725=>18074,\n58173=>18074,\n26237=>18075,\n58183=>18075,\n31860=>18076,\n58188=>18076,\n29837=>18077,\n58197=>18077,\n32402=>18078,\n58215=>18078,\n17667=>18079,\n58232=>18079,\n58260=>18080,\n151480=>18080,\n58270=>18081,\n133901=>18081,\n58277=>18082,\n158474=>18082,\n13438=>18083,\n58311=>18083,\n58317=>18084,\n143087=>18084,\n58325=>18085,\n146613=>18085,\n58343=>18086,\n159385=>18086,\n34673=>18087,\n58364=>18087,\n25537=>18088,\n58385=>18088,\n30583=>18089,\n58387=>18089,\n35210=>18090,\n58390=>18090,\n58406=>18091,\n147343=>18091,\n35660=>18092,\n58415=>18092,\n58440=>18093,\n150729=>18093,\n18730=>18094,\n58464=>18094,\n172052=>18095,\n58471=>18095,\n165564=>18096,\n58472=>18096,\n165121=>18097,\n58473=>18097,\n15088=>18098,\n58490=>18098,\n28815=>18099,\n58511=>18099,\n58529=>18100,\n140922=>18100,\n58637=>18101,\n158120=>18101,\n58646=>18102,\n148043=>18102,\n26760=>18103,\n58662=>18103,\n58664=>18104,\n139611=>18104,\n40802=>18105,\n58702=>18105,\n37830=>18106,\n58793=>18106,\n58802=>18107,\n131967=>18107,\n37734=>18108,\n58888=>18108,\n37519=>18109,\n58901=>18109,\n34324=>18110,\n58954=>18110,\n58986=>18111,\n173147=>18111,\n16784=>18112,\n59010=>18112,\n26511=>18113,\n59045=>18113,\n26654=>18114,\n59048=>18114,\n14435=>18115,\n59051=>18115,\n59077=>18116,\n149996=>18116,\n15129=>18117,\n59128=>18117,\n33942=>18118,\n59176=>18118,\n59241=>18119,\n149858=>18119,\n14818=>18120,\n59254=>18120,\n33920=>18121,\n59259=>18121,\n17262=>18122,\n59328=>18122,\n38769=>18123,\n59402=>18123,\n39323=>18124,\n59427=>18124,\n18733=>18125,\n59499=>18125,\n28439=>18126,\n59703=>18126,\n160009=>18127,\n59704=>18127,\n28838=>18128,\n59746=>18128,\n150095=>18129,\n59752=>18129,\n32357=>18130,\n59753=>18130,\n23855=>18131,\n59755=>18131,\n15859=>18132,\n59756=>18132,\n150109=>18133,\n59758=>18133,\n137183=>18134,\n59759=>18134,\n32164=>18135,\n59760=>18135,\n33830=>18136,\n59761=>18136,\n21637=>18137,\n59762=>18137,\n146170=>18138,\n59763=>18138,\n131604=>18139,\n59765=>18139,\n22398=>18140,\n59766=>18140,\n133333=>18141,\n59767=>18141,\n132633=>18142,\n59768=>18142,\n16357=>18143,\n59769=>18143,\n139166=>18144,\n59770=>18144,\n172726=>18145,\n59771=>18145,\n28675=>18146,\n59772=>18146,\n168283=>18147,\n59773=>18147,\n23920=>18148,\n59774=>18148,\n29583=>18149,\n59775=>18149,\n166489=>18150,\n59777=>18150,\n168992=>18151,\n59778=>18151,\n20424=>18152,\n59779=>18152,\n32743=>18153,\n59780=>18153,\n29456=>18154,\n59782=>18154,\n29496=>18155,\n59784=>18155,\n29505=>18156,\n59787=>18156,\n16041=>18157,\n59789=>18157,\n29173=>18158,\n59792=>18158,\n149746=>18159,\n59793=>18159,\n29665=>18160,\n59794=>18160,\n16074=>18161,\n59796=>18161,\n16081=>18162,\n59798=>18162,\n29721=>18163,\n59801=>18163,\n29726=>18164,\n59802=>18164,\n29727=>18165,\n59803=>18165,\n16098=>18166,\n59804=>18166,\n16112=>18167,\n59805=>18167,\n16116=>18168,\n59806=>18168,\n16122=>18169,\n59807=>18169,\n29907=>18170,\n59808=>18170,\n16142=>18171,\n59809=>18171,\n16211=>18172,\n59810=>18172,\n30061=>18173,\n59812=>18173,\n30066=>18174,\n59813=>18174,\n30093=>18175,\n59814=>18175,\n16252=>18176,\n59815=>18176,\n30152=>18177,\n59816=>18177,\n30285=>18178,\n59819=>18178,\n30324=>18179,\n59821=>18179,\n16348=>18180,\n59822=>18180,\n30330=>18181,\n59823=>18181,\n29064=>18182,\n59825=>18182,\n22051=>18183,\n59826=>18183,\n35200=>18184,\n59827=>18184,\n16413=>18185,\n59829=>18185,\n30531=>18186,\n59830=>18186,\n16441=>18187,\n59831=>18187,\n16453=>18188,\n59833=>18188,\n13787=>18189,\n59834=>18189,\n30616=>18190,\n59835=>18190,\n16490=>18191,\n59836=>18191,\n16495=>18192,\n59837=>18192,\n30654=>18193,\n59839=>18193,\n30667=>18194,\n59840=>18194,\n30744=>18195,\n59842=>18195,\n30748=>18196,\n59844=>18196,\n30791=>18197,\n59847=>18197,\n30801=>18198,\n59848=>18198,\n30822=>18199,\n59849=>18199,\n33864=>18200,\n59850=>18200,\n152885=>18201,\n59851=>18201,\n31027=>18202,\n59852=>18202,\n31026=>18203,\n59854=>18203,\n16649=>18204,\n59856=>18204,\n31121=>18205,\n59857=>18205,\n31238=>18206,\n59860=>18206,\n16743=>18207,\n59862=>18207,\n16818=>18208,\n59864=>18208,\n31420=>18209,\n59865=>18209,\n33401=>18210,\n59866=>18210,\n16836=>18211,\n59867=>18211,\n31439=>18212,\n59868=>18212,\n31451=>18213,\n59869=>18213,\n16847=>18214,\n59870=>18214,\n31586=>18215,\n59872=>18215,\n31596=>18216,\n59873=>18216,\n31611=>18217,\n59874=>18217,\n31762=>18218,\n59875=>18218,\n16992=>18219,\n59877=>18219,\n17018=>18220,\n59878=>18220,\n31867=>18221,\n59879=>18221,\n31900=>18222,\n59880=>18222,\n17036=>18223,\n59881=>18223,\n31928=>18224,\n59882=>18224,\n17044=>18225,\n59883=>18225,\n36755=>18226,\n59885=>18226,\n28864=>18227,\n59886=>18227,\n134351=>18228,\n59887=>18228,\n32207=>18229,\n59888=>18229,\n32212=>18230,\n59889=>18230,\n32208=>18231,\n59890=>18231,\n32253=>18232,\n59891=>18232,\n32692=>18233,\n59893=>18233,\n29343=>18234,\n59894=>18234,\n17303=>18235,\n59895=>18235,\n32800=>18236,\n59896=>18236,\n32805=>18237,\n59897=>18237,\n32814=>18238,\n59899=>18238,\n32817=>18239,\n59900=>18239,\n32852=>18240,\n59901=>18240,\n22452=>18241,\n59903=>18241,\n28832=>18242,\n59904=>18242,\n32951=>18243,\n59905=>18243,\n33001=>18244,\n59906=>18244,\n17389=>18245,\n59907=>18245,\n33036=>18246,\n59908=>18246,\n33038=>18247,\n59910=>18247,\n33042=>18248,\n59911=>18248,\n33044=>18249,\n59913=>18249,\n17409=>18250,\n59914=>18250,\n15161=>18251,\n59915=>18251,\n33110=>18252,\n59916=>18252,\n33113=>18253,\n59917=>18253,\n33114=>18254,\n59918=>18254,\n17427=>18255,\n59919=>18255,\n33148=>18256,\n59921=>18256,\n17445=>18257,\n59923=>18257,\n17453=>18258,\n59925=>18258,\n33189=>18259,\n59926=>18259,\n22511=>18260,\n59927=>18260,\n33217=>18261,\n59928=>18261,\n33252=>18262,\n59929=>18262,\n33364=>18263,\n59930=>18263,\n17551=>18264,\n59931=>18264,\n33398=>18265,\n59933=>18265,\n33482=>18266,\n59934=>18266,\n33496=>18267,\n59935=>18267,\n17584=>18268,\n59937=>18268,\n33623=>18269,\n59938=>18269,\n38505=>18270,\n59939=>18270,\n33797=>18271,\n59941=>18271,\n28917=>18272,\n59942=>18272,\n33892=>18273,\n59943=>18273,\n33928=>18274,\n59945=>18274,\n17668=>18275,\n59946=>18275,\n33982=>18276,\n59947=>18276,\n34017=>18277,\n59948=>18277,\n34040=>18278,\n59949=>18278,\n34064=>18279,\n59950=>18279,\n34104=>18280,\n59951=>18280,\n34130=>18281,\n59952=>18281,\n17723=>18282,\n59953=>18282,\n34159=>18283,\n59954=>18283,\n34160=>18284,\n59955=>18284,\n34272=>18285,\n59956=>18285,\n17783=>18286,\n59957=>18286,\n34418=>18287,\n59958=>18287,\n34450=>18288,\n59959=>18288,\n34543=>18289,\n59961=>18289,\n38469=>18290,\n59962=>18290,\n17926=>18291,\n59964=>18291,\n17943=>18292,\n59965=>18292,\n34990=>18293,\n59966=>18293,\n35071=>18294,\n59967=>18294,\n35108=>18295,\n59968=>18295,\n35217=>18296,\n59970=>18296,\n162151=>18297,\n59971=>18297,\n35384=>18298,\n59973=>18298,\n35476=>18299,\n59974=>18299,\n35508=>18300,\n59975=>18300,\n35921=>18301,\n59976=>18301,\n36052=>18302,\n59977=>18302,\n36082=>18303,\n59978=>18303,\n36124=>18304,\n59979=>18304,\n18328=>18305,\n59980=>18305,\n36291=>18306,\n59982=>18306,\n18413=>18307,\n59983=>18307,\n36410=>18308,\n59985=>18308,\n22356=>18309,\n59987=>18309,\n22005=>18310,\n59989=>18310,\n18487=>18311,\n59991=>18311,\n36558=>18312,\n59992=>18312,\n36578=>18313,\n59993=>18313,\n36580=>18314,\n59994=>18314,\n36589=>18315,\n59995=>18315,\n36594=>18316,\n59996=>18316,\n36801=>18317,\n59998=>18317,\n36810=>18318,\n59999=>18318,\n36812=>18319,\n60000=>18319,\n36915=>18320,\n60001=>18320,\n18605=>18321,\n60003=>18321,\n39136=>18322,\n60004=>18322,\n37395=>18323,\n60005=>18323,\n18718=>18324,\n60006=>18324,\n37416=>18325,\n60007=>18325,\n37464=>18326,\n60008=>18326,\n37483=>18327,\n60009=>18327,\n37553=>18328,\n60010=>18328,\n37550=>18329,\n60011=>18329,\n37567=>18330,\n60012=>18330,\n37603=>18331,\n60013=>18331,\n37611=>18332,\n60014=>18332,\n37619=>18333,\n60015=>18333,\n37620=>18334,\n60016=>18334,\n37629=>18335,\n60017=>18335,\n37699=>18336,\n60018=>18336,\n37764=>18337,\n60019=>18337,\n37805=>18338,\n60020=>18338,\n18757=>18339,\n60021=>18339,\n18769=>18340,\n60022=>18340,\n37911=>18341,\n60024=>18341,\n37917=>18342,\n60026=>18342,\n37933=>18343,\n60027=>18343,\n37950=>18344,\n60028=>18344,\n18794=>18345,\n60029=>18345,\n37972=>18346,\n60030=>18346,\n38009=>18347,\n60031=>18347,\n38189=>18348,\n60032=>18348,\n38306=>18349,\n60033=>18349,\n18855=>18350,\n60034=>18350,\n38388=>18351,\n60035=>18351,\n38451=>18352,\n60036=>18352,\n18917=>18353,\n60037=>18353,\n18980=>18354,\n60039=>18354,\n38720=>18355,\n60040=>18355,\n18997=>18356,\n60041=>18356,\n38834=>18357,\n60042=>18357,\n38850=>18358,\n60043=>18358,\n19172=>18359,\n60045=>18359,\n39097=>18360,\n60047=>18360,\n19225=>18361,\n60048=>18361,\n39153=>18362,\n60049=>18362,\n22596=>18363,\n60050=>18363,\n39193=>18364,\n60052=>18364,\n39223=>18365,\n60055=>18365,\n39261=>18366,\n60057=>18366,\n39266=>18367,\n60058=>18367,\n19312=>18368,\n60059=>18368,\n39365=>18369,\n60060=>18369,\n19357=>18370,\n60061=>18370,\n39484=>18371,\n60062=>18371,\n39695=>18372,\n60063=>18372,\n39785=>18373,\n60065=>18373,\n39901=>18374,\n60067=>18374,\n39921=>18375,\n60068=>18375,\n39924=>18376,\n60069=>18376,\n19565=>18377,\n60070=>18377,\n39968=>18378,\n60071=>18378,\n14191=>18379,\n60072=>18379,\n138178=>18380,\n60073=>18380,\n40265=>18381,\n60074=>18381,\n40702=>18382,\n60076=>18382,\n22096=>18383,\n60077=>18383,\n40381=>18384,\n60079=>18384,\n40444=>18385,\n60081=>18385,\n38134=>18386,\n60082=>18386,\n36790=>18387,\n60083=>18387,\n40625=>18388,\n60086=>18388,\n40637=>18389,\n60087=>18389,\n40646=>18390,\n60088=>18390,\n38108=>18391,\n60089=>18391,\n40674=>18392,\n60090=>18392,\n40689=>18393,\n60091=>18393,\n40696=>18394,\n60092=>18394,\n40772=>18395,\n60094=>18395,\n131220=>18396,\n60095=>18396,\n131767=>18397,\n60096=>18397,\n132000=>18398,\n60097=>18398,\n38083=>18399,\n60099=>18399,\n60101=>18400,\n132311=>18400,\n38081=>18401,\n60103=>18401,\n132565=>18402,\n60105=>18402,\n132629=>18403,\n60106=>18403,\n132726=>18404,\n60107=>18404,\n136890=>18405,\n60108=>18405,\n22359=>18406,\n60109=>18406,\n29043=>18407,\n60110=>18407,\n133826=>18408,\n60111=>18408,\n133837=>18409,\n60112=>18409,\n134079=>18410,\n60113=>18410,\n194619=>18411,\n60115=>18411,\n134091=>18412,\n60116=>18412,\n21662=>18413,\n60117=>18413,\n134139=>18414,\n60118=>18414,\n134203=>18415,\n60119=>18415,\n134227=>18416,\n60120=>18416,\n134245=>18417,\n60121=>18417,\n134268=>18418,\n60122=>18418,\n60124=>18419,\n134285=>18419,\n134325=>18420,\n60126=>18420,\n134365=>18421,\n60127=>18421,\n134381=>18422,\n60128=>18422,\n134511=>18423,\n60129=>18423,\n134578=>18424,\n60130=>18424,\n134600=>18425,\n60131=>18425,\n134660=>18426,\n60135=>18426,\n134670=>18427,\n60136=>18427,\n134871=>18428,\n60137=>18428,\n135056=>18429,\n60138=>18429,\n134957=>18430,\n60139=>18430,\n134771=>18431,\n60140=>18431,\n60142=>18432,\n135100=>18432,\n135260=>18433,\n60144=>18433,\n135247=>18434,\n60145=>18434,\n135286=>18435,\n60146=>18435,\n135304=>18436,\n60149=>18436,\n135318=>18437,\n60150=>18437,\n13895=>18438,\n60151=>18438,\n135359=>18439,\n60152=>18439,\n135471=>18440,\n60154=>18440,\n135483=>18441,\n60155=>18441,\n21348=>18442,\n60156=>18442,\n135907=>18443,\n60158=>18443,\n136053=>18444,\n60159=>18444,\n60160=>18445,\n135990=>18445,\n136567=>18446,\n60162=>18446,\n136729=>18447,\n60163=>18447,\n137155=>18448,\n60164=>18448,\n137159=>18449,\n60165=>18449,\n28859=>18450,\n60167=>18450,\n137261=>18451,\n60168=>18451,\n137578=>18452,\n60169=>18452,\n137773=>18453,\n60170=>18453,\n137797=>18454,\n60171=>18454,\n138282=>18455,\n60172=>18455,\n138352=>18456,\n60173=>18456,\n138412=>18457,\n60174=>18457,\n138952=>18458,\n60175=>18458,\n138965=>18459,\n60177=>18459,\n139029=>18460,\n60178=>18460,\n29080=>18461,\n60179=>18461,\n139333=>18462,\n60181=>18462,\n27113=>18463,\n60182=>18463,\n14024=>18464,\n60183=>18464,\n139900=>18465,\n60184=>18465,\n140247=>18466,\n60185=>18466,\n140282=>18467,\n60186=>18467,\n141098=>18468,\n60187=>18468,\n141425=>18469,\n60188=>18469,\n141647=>18470,\n60189=>18470,\n141671=>18471,\n60191=>18471,\n141715=>18472,\n60192=>18472,\n142037=>18473,\n60193=>18473,\n60195=>18474,\n142056=>18474,\n60197=>18475,\n142094=>18475,\n60199=>18476,\n142143=>18476,\n60202=>18477,\n142412=>18477,\n142472=>18478,\n60204=>18478,\n142519=>18479,\n60205=>18479,\n154600=>18480,\n60206=>18480,\n142600=>18481,\n60207=>18481,\n142610=>18482,\n60208=>18482,\n142775=>18483,\n60209=>18483,\n142741=>18484,\n60210=>18484,\n142914=>18485,\n60211=>18485,\n143220=>18486,\n60212=>18486,\n143308=>18487,\n60213=>18487,\n143411=>18488,\n60214=>18488,\n143462=>18489,\n60215=>18489,\n144159=>18490,\n60216=>18490,\n144350=>18491,\n60217=>18491,\n144743=>18492,\n60222=>18492,\n144883=>18493,\n60223=>18493,\n144922=>18494,\n60227=>18494,\n145174=>18495,\n60228=>18495,\n22709=>18496,\n60231=>18496,\n60234=>18497,\n146087=>18497,\n146961=>18498,\n60237=>18498,\n147129=>18499,\n60238=>18499,\n60243=>18500,\n147737=>18500,\n148206=>18501,\n60245=>18501,\n148237=>18502,\n60246=>18502,\n148276=>18503,\n60248=>18503,\n148374=>18504,\n60249=>18504,\n148484=>18505,\n60258=>18505,\n148694=>18506,\n60259=>18506,\n22408=>18507,\n60260=>18507,\n149108=>18508,\n60261=>18508,\n60263=>18509,\n149295=>18509,\n149522=>18510,\n60271=>18510,\n149755=>18511,\n60272=>18511,\n150037=>18512,\n60273=>18512,\n60275=>18513,\n150208=>18513,\n22885=>18514,\n60277=>18514,\n60279=>18515,\n151430=>18515,\n60282=>18516,\n151596=>18516,\n22335=>18517,\n60284=>18517,\n152217=>18518,\n60286=>18518,\n152601=>18519,\n60287=>18519,\n152646=>18520,\n60291=>18520,\n152686=>18521,\n60292=>18521,\n60296=>18522,\n152895=>18522,\n60298=>18523,\n152926=>18523,\n152930=>18524,\n60300=>18524,\n152934=>18525,\n60301=>18525,\n153543=>18526,\n60302=>18526,\n60304=>18527,\n153693=>18527,\n60309=>18528,\n153859=>18528,\n154286=>18529,\n60312=>18529,\n154505=>18530,\n60313=>18530,\n154630=>18531,\n60314=>18531,\n22433=>18532,\n60316=>18532,\n29009=>18533,\n60317=>18533,\n60319=>18534,\n155906=>18534,\n60322=>18535,\n156082=>18535,\n156674=>18536,\n60325=>18536,\n156746=>18537,\n60326=>18537,\n60330=>18538,\n156804=>18538,\n60334=>18539,\n156808=>18539,\n60336=>18540,\n156946=>18540,\n157119=>18541,\n60338=>18541,\n157365=>18542,\n60339=>18542,\n22201=>18543,\n60347=>18543,\n60349=>18544,\n157436=>18544,\n13848=>18545,\n60355=>18545,\n157593=>18546,\n60357=>18546,\n157806=>18547,\n60358=>18547,\n60360=>18548,\n157790=>18548,\n60362=>18549,\n157895=>18549,\n60366=>18550,\n157990=>18550,\n60368=>18551,\n158009=>18551,\n60371=>18552,\n158202=>18552,\n60373=>18553,\n158253=>18553,\n158260=>18554,\n60378=>18554,\n158555=>18555,\n60379=>18555,\n60383=>18556,\n158621=>18556,\n60385=>18557,\n158884=>18557,\n60388=>18558,\n159150=>18558,\n159819=>18559,\n60392=>18559,\n160205=>18560,\n60393=>18560,\n160384=>18561,\n60395=>18561,\n160389=>18562,\n60396=>18562,\n60399=>18563,\n160395=>18563,\n60401=>18564,\n160486=>18564,\n38047=>18565,\n60404=>18565,\n160848=>18566,\n60405=>18566,\n14009=>18567,\n60416=>18567,\n161740=>18568,\n60424=>18568,\n161880=>18569,\n60425=>18569,\n22230=>18570,\n60426=>18570,\n60435=>18571,\n162269=>18571,\n162301=>18572,\n60441=>18572,\n162314=>18573,\n60442=>18573,\n162571=>18574,\n60443=>18574,\n163174=>18575,\n60444=>18575,\n60448=>18576,\n163849=>18576,\n60459=>18577,\n163875=>18577,\n60463=>18578,\n163912=>18578,\n60466=>18579,\n163971=>18579,\n163984=>18580,\n60479=>18580,\n164084=>18581,\n60480=>18581,\n164142=>18582,\n60481=>18582,\n60483=>18583,\n164175=>18583,\n164271=>18584,\n60485=>18584,\n164378=>18585,\n60486=>18585,\n164614=>18586,\n60487=>18586,\n164655=>18587,\n60488=>18587,\n164746=>18588,\n60489=>18588,\n164968=>18589,\n60491=>18589,\n165546=>18590,\n60492=>18590,\n25574=>18591,\n60494=>18591,\n166230=>18592,\n60495=>18592,\n60498=>18593,\n166328=>18593,\n60500=>18594,\n166375=>18594,\n60502=>18595,\n166376=>18595,\n166726=>18596,\n60503=>18596,\n166868=>18597,\n60504=>18597,\n60506=>18598,\n166921=>18598,\n167877=>18599,\n60508=>18599,\n168172=>18600,\n60509=>18600,\n168208=>18601,\n60511=>18601,\n168252=>18602,\n60512=>18602,\n15863=>18603,\n60513=>18603,\n168286=>18604,\n60514=>18604,\n150218=>18605,\n60515=>18605,\n36816=>18606,\n60516=>18606,\n60519=>18607,\n169191=>18607,\n169392=>18608,\n60521=>18608,\n169400=>18609,\n60522=>18609,\n169778=>18610,\n60523=>18610,\n170193=>18611,\n60524=>18611,\n170313=>18612,\n60525=>18612,\n170346=>18613,\n60526=>18613,\n170435=>18614,\n60527=>18614,\n170536=>18615,\n60528=>18615,\n170766=>18616,\n60529=>18616,\n171354=>18617,\n60530=>18617,\n171419=>18618,\n60531=>18618,\n32415=>18619,\n60532=>18619,\n171768=>18620,\n60533=>18620,\n171811=>18621,\n60534=>18621,\n19620=>18622,\n60535=>18622,\n38215=>18623,\n60536=>18623,\n172691=>18624,\n60537=>18624,\n29090=>18625,\n60538=>18625,\n172799=>18626,\n60539=>18626,\n173515=>18627,\n60542=>18627,\n19868=>18628,\n60543=>18628,\n134300=>18629,\n60544=>18629,\n36798=>18630,\n60545=>18630,\n36794=>18631,\n60547=>18631,\n140464=>18632,\n60548=>18632,\n36793=>18633,\n60549=>18633,\n150163=>18634,\n60550=>18634,\n20202=>18635,\n60555=>18635,\n60557=>18636,\n166700=>18636,\n36480=>18637,\n60560=>18637,\n137205=>18638,\n60561=>18638,\n166764=>18639,\n60563=>18639,\n166809=>18640,\n60564=>18640,\n60566=>18641,\n157359=>18641,\n60568=>18642,\n161365=>18642,\n153141=>18643,\n60570=>18643,\n153942=>18644,\n60571=>18644,\n20122=>18645,\n60572=>18645,\n155265=>18646,\n60573=>18646,\n60576=>18647,\n134765=>18647,\n147080=>18648,\n60579=>18648,\n150686=>18649,\n60580=>18649,\n137206=>18650,\n60583=>18650,\n137339=>18651,\n60584=>18651,\n60587=>18652,\n154698=>18652,\n152337=>18653,\n60589=>18653,\n15814=>18654,\n60590=>18654,\n60596=>18655,\n155352=>18655,\n19996=>18656,\n60600=>18656,\n135146=>18657,\n60601=>18657,\n134473=>18658,\n60602=>18658,\n145082=>18659,\n60603=>18659,\n60638=>18660,\n151880=>18660,\n21982=>18661,\n60644=>18661,\n34694=>18662,\n60672=>18662,\n60676=>18663,\n135361=>18663,\n149254=>18664,\n60679=>18664,\n23440=>18665,\n60680=>18665,\n60682=>18666,\n157843=>18666,\n141044=>18667,\n60684=>18667,\n163119=>18668,\n60685=>18668,\n147875=>18669,\n60686=>18669,\n163187=>18670,\n60687=>18670,\n159440=>18671,\n60688=>18671,\n160438=>18672,\n60689=>18672,\n60691=>18673,\n135641=>18673,\n146684=>18674,\n60693=>18674,\n173737=>18675,\n60694=>18675,\n134828=>18676,\n60695=>18676,\n60698=>18677,\n138402=>18677,\n60700=>18678,\n151490=>18678,\n60702=>18679,\n135147=>18679,\n60706=>18680,\n142752=>18680,\n135148=>18681,\n60710=>18681,\n134666=>18682,\n60711=>18682,\n60714=>18683,\n135149=>18683,\n60717=>18684,\n135559=>18684,\n19994=>18685,\n60721=>18685,\n19972=>18686,\n60722=>18686,\n23309=>18687,\n60724=>18687,\n13996=>18688,\n60727=>18688,\n21373=>18689,\n60729=>18689,\n13989=>18690,\n60730=>18690,\n22682=>18691,\n60732=>18691,\n150382=>18692,\n60733=>18692,\n22442=>18693,\n60736=>18693,\n154261=>18694,\n60737=>18694,\n133497=>18695,\n60738=>18695,\n60741=>18696,\n140389=>18696,\n146686=>18697,\n60746=>18697,\n171824=>18698,\n60747=>18698,\n151465=>18699,\n60749=>18699,\n169374=>18700,\n60750=>18700,\n60753=>18701,\n146870=>18701,\n157619=>18702,\n60755=>18702,\n145184=>18703,\n60756=>18703,\n147191=>18704,\n60759=>18704,\n146988=>18705,\n60760=>18705,\n60785=>18706,\n143578=>18706,\n135849=>18707,\n60789=>18707,\n22439=>18708,\n60790=>18708,\n149859=>18709,\n60791=>18709,\n60794=>18710,\n159918=>18710,\n60801=>18711,\n137068=>18711,\n60806=>18712,\n160100=>18712,\n159010=>18713,\n60809=>18713,\n150242=>18714,\n60810=>18714,\n39963=>18715,\n60837=>18715,\n149822=>18716,\n60838=>18716,\n15878=>18717,\n60846=>18717,\n60881=>18718,\n159011=>18718,\n60887=>18719,\n132092=>18719,\n60891=>18720,\n146685=>18720,\n60893=>18721,\n149785=>18721,\n22394=>18722,\n60904=>18722,\n21722=>18723,\n60912=>18723,\n29050=>18724,\n60928=>18724,\n60949=>18725,\n150135=>18725,\n60955=>18726,\n166490=>18726,\n60962=>18727,\n194624=>18727,\n60976=>18728,\n137275=>18728,\n61000=>18729,\n155993=>18729,\n61014=>18730,\n144373=>18730,\n61019=>18731,\n166850=>18731,\n61024=>18732,\n138566=>18732,\n61054=>18733,\n159441=>18733,\n13877=>18734,\n61065=>18734,\n61084=>18735,\n166701=>18735,\n21024=>18736,\n61088=>18736,\n15384=>18737,\n61089=>18737,\n146631=>18738,\n61090=>18738,\n155351=>18739,\n61091=>18739,\n161366=>18740,\n61092=>18740,\n152881=>18741,\n61093=>18741,\n137540=>18742,\n61094=>18742,\n170243=>18743,\n61096=>18743,\n159196=>18744,\n61097=>18744,\n159917=>18745,\n61098=>18745,\n156077=>18746,\n61100=>18746,\n166415=>18747,\n61101=>18747,\n145015=>18748,\n61102=>18748,\n131310=>18749,\n61103=>18749,\n157766=>18750,\n61104=>18750,\n151310=>18751,\n61105=>18751,\n17762=>18752,\n61106=>18752,\n23327=>18753,\n61107=>18753,\n156492=>18754,\n61108=>18754,\n40784=>18755,\n61109=>18755,\n40614=>18756,\n61110=>18756,\n156267=>18757,\n61111=>18757,\n20962=>18758,\n57415=>18758,\n21314=>18759,\n57416=>18759,\n26285=>18760,\n57520=>18760,\n22620=>18761,\n57547=>18761,\n21843=>18762,\n57566=>18762,\n15749=>18763,\n57594=>18763,\n24928=>18764,\n57608=>18764,\n18606=>18765,\n57668=>18765,\n38845=>18766,\n57676=>18766,\n57693=>18767,\n137335=>18767,\n24755=>18768,\n57703=>18768,\n33828=>18769,\n57711=>18769,\n38932=>18770,\n57748=>18770,\n147596=>18771,\n57749=>18771,\n57764=>18772,\n143486=>18772,\n57787=>18773,\n138813=>18773,\n15147=>18774,\n57798=>18774,\n15666=>18775,\n57824=>18775,\n57857=>18776,\n132021=>18776,\n28801=>18777,\n57944=>18777,\n23708=>18778,\n57959=>18778,\n58017=>18779,\n132547=>18779,\n14128=>18780,\n58028=>18780,\n136054=>18781,\n58096=>18781,\n150034=>18782,\n58097=>18782,\n58111=>18783,\n166699=>18783,\n58112=>18784,\n155779=>18784,\n256=>18785,\n62233=>18785,\n193=>18786,\n62234=>18786,\n461=>18787,\n62235=>18787,\n192=>18788,\n62236=>18788,\n274=>18789,\n62237=>18789,\n201=>18790,\n62238=>18790,\n282=>18791,\n62239=>18791,\n200=>18792,\n62240=>18792,\n332=>18793,\n62241=>18793,\n211=>18794,\n62242=>18794,\n465=>18795,\n62243=>18795,\n210=>18796,\n62244=>18796,\n62245=>18797,\n7870=>18798,\n62246=>18798,\n62247=>18799,\n7872=>18800,\n62248=>18800,\n202=>18801,\n62249=>18801,\n257=>18802,\n62250=>18802,\n225=>18803,\n62251=>18803,\n462=>18804,\n62252=>18804,\n224=>18805,\n62253=>18805,\n593=>18806,\n62254=>18806,\n275=>18807,\n62255=>18807,\n233=>18808,\n62256=>18808,\n283=>18809,\n62257=>18809,\n232=>18810,\n62258=>18810,\n299=>18811,\n62259=>18811,\n237=>18812,\n62260=>18812,\n464=>18813,\n62261=>18813,\n236=>18814,\n62262=>18814,\n333=>18815,\n62263=>18815,\n243=>18816,\n62264=>18816,\n466=>18817,\n62265=>18817,\n242=>18818,\n62266=>18818,\n363=>18819,\n62267=>18819,\n250=>18820,\n62268=>18820,\n468=>18821,\n62269=>18821,\n249=>18822,\n62270=>18822,\n470=>18823,\n62271=>18823,\n472=>18824,\n62272=>18824,\n474=>18825,\n62273=>18825,\n476=>18826,\n62274=>18826,\n252=>18827,\n62275=>18827,\n62276=>18828,\n7871=>18829,\n62277=>18829,\n62278=>18830,\n7873=>18831,\n62279=>18831,\n234=>18832,\n62280=>18832,\n609=>18833,\n62281=>18833,\n643=>18834,\n63551=>18834,\n592=>18835,\n63552=>18835,\n603=>18836,\n63553=>18836,\n596=>18837,\n63554=>18837,\n629=>18838,\n63555=>18838,\n339=>18839,\n63556=>18839,\n248=>18840,\n63557=>18840,\n331=>18841,\n63558=>18841,\n650=>18842,\n63559=>18842,\n618=>18843,\n63560=>18843,\n9178=>18844,\n62282=>18844,\n9179=>18845,\n62283=>18845,\n11933=>18846,\n63530=>18846,\n11974=>18847,\n63539=>18847,\n12003=>18848,\n63547=>18848,\n20539=>18849,\n28158=>18850,\n171123=>18851,\n62841=>18851,\n40870=>18852,\n62842=>18852,\n15817=>18853,\n62843=>18853,\n34959=>18854,\n62845=>18855,\n147790=>18855,\n28791=>18856,\n23797=>18857,\n19232=>18858,\n62848=>18858,\n152013=>18859,\n62849=>18859,\n13657=>18860,\n62850=>18860,\n154928=>18861,\n62851=>18861,\n24866=>18862,\n62853=>18863,\n166450=>18863,\n36775=>18864,\n37366=>18865,\n29073=>18866,\n26393=>18867,\n29626=>18868,\n144001=>18869,\n62859=>18869,\n172295=>18870,\n62860=>18870,\n15499=>18871,\n62861=>18871,\n137600=>18872,\n62862=>18872,\n19216=>18873,\n62863=>18873,\n30948=>18874,\n29698=>18875,\n20910=>18876,\n165647=>18877,\n62867=>18877,\n16393=>18878,\n62868=>18878,\n27235=>18879,\n172730=>18880,\n62870=>18880,\n16931=>18881,\n62871=>18881,\n34319=>18882,\n31274=>18883,\n170311=>18884,\n62875=>18884,\n166634=>18885,\n62876=>18885,\n38741=>18886,\n28749=>18887,\n21284=>18888,\n62880=>18889,\n139390=>18889,\n37876=>18890,\n30425=>18891,\n166371=>18892,\n62883=>18892,\n40871=>18893,\n62884=>18893,\n30685=>18894,\n20131=>18895,\n20464=>18896,\n20668=>18897,\n20015=>18898,\n20247=>18899,\n40872=>18900,\n62891=>18900,\n21556=>18901,\n32139=>18902,\n22674=>18903,\n22736=>18904,\n62896=>18905,\n138678=>18905,\n24210=>18906,\n24217=>18907,\n24514=>18908,\n62900=>18909,\n141074=>18909,\n25995=>18910,\n62902=>18911,\n144377=>18911,\n26905=>18912,\n27203=>18913,\n62905=>18914,\n146531=>18914,\n27903=>18915,\n29184=>18916,\n62909=>18917,\n148741=>18917,\n29580=>18918,\n16091=>18919,\n62911=>18919,\n150035=>18920,\n62912=>18920,\n23317=>18921,\n29881=>18922,\n35715=>18923,\n154788=>18924,\n62916=>18924,\n153237=>18925,\n62917=>18925,\n31379=>18926,\n31724=>18927,\n31939=>18928,\n32364=>18929,\n33528=>18930,\n34199=>18931,\n40873=>18932,\n62924=>18932,\n34960=>18933,\n40874=>18934,\n62926=>18934,\n36537=>18935,\n40875=>18936,\n62928=>18936,\n36815=>18937,\n34143=>18938,\n39392=>18939,\n37409=>18940,\n40876=>18941,\n62933=>18941,\n167353=>18942,\n62934=>18942,\n136255=>18943,\n62935=>18943,\n16497=>18944,\n62936=>18944,\n17058=>18945,\n62937=>18945,\n23066=>18946,\n39016=>18947,\n26475=>18948,\n17014=>18949,\n62944=>18949,\n22333=>18950,\n34262=>18951,\n62948=>18952,\n149883=>18952,\n33471=>18953,\n160013=>18954,\n62950=>18954,\n19585=>18955,\n62951=>18955,\n159092=>18956,\n62952=>18956,\n23931=>18957,\n158485=>18958,\n62954=>18958,\n159678=>18959,\n62955=>18959,\n40877=>18960,\n62956=>18960,\n40878=>18961,\n62957=>18961,\n23446=>18962,\n40879=>18963,\n62959=>18963,\n32347=>18964,\n17392=>18965,\n19506=>18966,\n17923=>18967,\n17830=>18968,\n17784=>18969,\n160359=>18970,\n19831=>18971,\n17843=>18972,\n162993=>18973,\n19682=>18974,\n163013=>18975,\n15253=>18976,\n18230=>18977,\n18244=>18978,\n19527=>18979,\n19520=>18980,\n148159=>18981,\n144919=>18982,\n160594=>18983,\n159371=>18984,\n159954=>18985,\n19543=>18986,\n172881=>18987,\n18255=>18988,\n17882=>18989,\n19589=>18990,\n162924=>18991,\n19719=>18992,\n19108=>18993,\n18081=>18994,\n158499=>18995,\n29221=>18996,\n154196=>18997,\n137827=>18998,\n146950=>18999,\n147297=>19000,\n26189=>19001,\n22267=>19002,\n32149=>19003,\n22813=>19004,\n166841=>19005,\n15860=>19006,\n38708=>19007,\n162799=>19008,\n23515=>19009,\n138590=>19010,\n23204=>19011,\n13861=>19012,\n171696=>19013,\n23249=>19014,\n23479=>19015,\n23804=>19016,\n26478=>19017,\n34195=>19018,\n170309=>19019,\n29793=>19020,\n29853=>19021,\n133743=>19022,\n26343=>19023,\n28247=>19024,\n31178=>19025,\n15752=>19026,\n17603=>19027,\n143958=>19028,\n141206=>19029,\n17306=>19030,\n17718=>19031,\n23765=>19032,\n146202=>19033,\n35577=>19034,\n23672=>19035,\n15634=>19036,\n144721=>19037,\n23928=>19038,\n40882=>19039,\n29015=>19040,\n17752=>19041,\n147692=>19042,\n138787=>19043,\n19575=>19044,\n14712=>19045,\n13386=>19046,\n131492=>19047,\n158785=>19048,\n35532=>19049,\n20404=>19050,\n131641=>19051,\n22975=>19052,\n33132=>19053,\n38998=>19054,\n170234=>19055,\n24379=>19056,\n134047=>19057,\n139713=>19058,\n166253=>19059,\n16642=>19060,\n18107=>19061,\n168057=>19062,\n16135=>19063,\n40883=>19064,\n172469=>19065,\n16632=>19066,\n14294=>19067,\n18167=>19068,\n158790=>19069,\n16764=>19070,\n165554=>19071,\n160767=>19072,\n17773=>19073,\n14548=>19074,\n152730=>19075,\n17761=>19076,\n17691=>19077,\n19849=>19078,\n19579=>19079,\n19830=>19080,\n17898=>19081,\n16328=>19082,\n150287=>19083,\n13921=>19084,\n17630=>19085,\n17597=>19086,\n16877=>19087,\n);\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/uni2cid_ag15.php",
    "content": "<?php\n// unicode to cid conversion table is from\n// ftp://ftp.oreilly.com/pub/examples/nutshell/cjkv/adobe/\n// cid2code.txt in ag15.tar.Z\n$cidinfo['uni2cid'] = array(\n32=>1,\n33=>2,\n34=>3,\n35=>4,\n36=>5,\n37=>6,\n38=>7,\n39=>8,\n40=>9,\n41=>10,\n42=>11,\n43=>12,\n44=>13,\n45=>14,\n46=>15,\n47=>16,\n48=>17,\n49=>18,\n50=>19,\n51=>20,\n52=>21,\n53=>22,\n54=>23,\n55=>24,\n56=>25,\n57=>26,\n58=>27,\n59=>28,\n60=>29,\n61=>30,\n62=>31,\n63=>32,\n64=>33,\n65=>34,\n66=>35,\n67=>36,\n68=>37,\n69=>38,\n70=>39,\n71=>40,\n72=>41,\n73=>42,\n74=>43,\n75=>44,\n76=>45,\n77=>46,\n78=>47,\n79=>48,\n80=>49,\n81=>50,\n82=>51,\n83=>52,\n84=>53,\n85=>54,\n86=>55,\n87=>56,\n88=>57,\n89=>58,\n90=>59,\n91=>60,\n92=>61,\n93=>62,\n94=>63,\n95=>64,\n96=>65,\n97=>66,\n98=>67,\n99=>68,\n100=>69,\n101=>70,\n102=>71,\n103=>72,\n104=>73,\n105=>74,\n106=>75,\n107=>76,\n108=>77,\n109=>78,\n110=>79,\n111=>80,\n112=>81,\n113=>82,\n114=>83,\n115=>84,\n116=>85,\n117=>86,\n118=>87,\n119=>88,\n120=>89,\n121=>90,\n122=>91,\n123=>92,\n124=>93,\n125=>94,\n126=>95,\n12288=>96,\n12289=>97,\n12290=>98,\n183=>99,\n12539=>99,\n713=>100,\n711=>101,\n168=>102,\n12291=>103,\n12293=>104,\n8212=>105,\n65374=>106,\n8214=>107,\n8230=>108,\n8943=>108,\n8216=>109,\n8217=>110,\n8220=>111,\n8221=>112,\n12308=>113,\n12309=>114,\n12296=>115,\n12297=>116,\n12298=>117,\n12299=>118,\n12300=>119,\n12301=>120,\n12302=>121,\n12303=>122,\n12310=>123,\n12311=>124,\n12304=>125,\n12305=>126,\n177=>127,\n215=>128,\n247=>129,\n8758=>130,\n8743=>131,\n8744=>132,\n8721=>133,\n8719=>134,\n8746=>135,\n8745=>136,\n8712=>137,\n8759=>138,\n8730=>139,\n8869=>140,\n8741=>141,\n8736=>142,\n8978=>143,\n8857=>144,\n8747=>145,\n8750=>146,\n8801=>147,\n8780=>148,\n8776=>149,\n8765=>150,\n8733=>151,\n8800=>152,\n8814=>153,\n8815=>154,\n8804=>155,\n8805=>156,\n8734=>157,\n8757=>158,\n8756=>159,\n9794=>160,\n9792=>161,\n176=>162,\n8242=>163,\n8243=>164,\n8451=>165,\n65284=>166,\n164=>167,\n65504=>168,\n65505=>169,\n8240=>170,\n167=>171,\n8470=>172,\n9734=>173,\n9733=>174,\n9675=>175,\n9679=>176,\n9678=>177,\n9671=>178,\n9670=>179,\n9633=>180,\n9632=>181,\n9651=>182,\n9650=>183,\n8251=>184,\n8594=>185,\n8592=>186,\n8593=>187,\n8595=>188,\n12307=>189,\n9352=>190,\n9353=>191,\n9354=>192,\n9355=>193,\n9356=>194,\n9357=>195,\n9358=>196,\n9359=>197,\n9360=>198,\n9361=>199,\n9362=>200,\n9363=>201,\n9364=>202,\n9365=>203,\n9366=>204,\n9367=>205,\n9368=>206,\n9369=>207,\n9370=>208,\n9371=>209,\n9332=>210,\n9333=>211,\n9334=>212,\n9335=>213,\n9336=>214,\n9337=>215,\n9338=>216,\n9339=>217,\n9340=>218,\n9341=>219,\n9342=>220,\n9343=>221,\n9344=>222,\n9345=>223,\n9346=>224,\n9347=>225,\n9348=>226,\n9349=>227,\n9350=>228,\n9351=>229,\n9312=>230,\n9313=>231,\n9314=>232,\n9315=>233,\n9316=>234,\n9317=>235,\n9318=>236,\n9319=>237,\n9320=>238,\n9321=>239,\n12832=>240,\n12833=>241,\n12834=>242,\n12835=>243,\n12836=>244,\n12837=>245,\n12838=>246,\n12839=>247,\n12840=>248,\n12841=>249,\n8544=>250,\n8545=>251,\n8546=>252,\n8547=>253,\n8548=>254,\n8549=>255,\n8550=>256,\n8551=>257,\n8552=>258,\n8553=>259,\n8554=>260,\n8555=>261,\n65281=>262,\n65282=>263,\n65283=>264,\n65509=>265,\n65285=>266,\n65286=>267,\n65287=>268,\n65288=>269,\n65289=>270,\n65290=>271,\n65291=>272,\n65292=>273,\n65293=>274,\n65294=>275,\n65295=>276,\n65296=>277,\n65297=>278,\n65298=>279,\n65299=>280,\n65300=>281,\n65301=>282,\n65302=>283,\n65303=>284,\n65304=>285,\n65305=>286,\n65306=>287,\n65307=>288,\n65308=>289,\n65309=>290,\n65310=>291,\n65311=>292,\n65312=>293,\n65313=>294,\n65314=>295,\n65315=>296,\n65316=>297,\n65317=>298,\n65318=>299,\n65319=>300,\n65320=>301,\n65321=>302,\n65322=>303,\n65323=>304,\n65324=>305,\n65325=>306,\n65326=>307,\n65327=>308,\n65328=>309,\n65329=>310,\n65330=>311,\n65331=>312,\n65332=>313,\n65333=>314,\n65334=>315,\n65335=>316,\n65336=>317,\n65337=>318,\n65338=>319,\n65339=>320,\n65340=>321,\n65341=>322,\n65342=>323,\n65343=>324,\n65344=>325,\n65345=>326,\n65346=>327,\n65347=>328,\n65348=>329,\n65349=>330,\n65350=>331,\n65351=>332,\n65352=>333,\n65353=>334,\n65354=>335,\n65355=>336,\n65356=>337,\n65357=>338,\n65358=>339,\n65359=>340,\n65360=>341,\n65361=>342,\n65362=>343,\n65363=>344,\n65364=>345,\n65365=>346,\n65366=>347,\n65367=>348,\n65368=>349,\n65369=>350,\n65370=>351,\n65371=>352,\n65372=>353,\n65373=>354,\n65507=>355,\n12353=>356,\n12354=>357,\n12355=>358,\n12356=>359,\n12357=>360,\n12358=>361,\n12359=>362,\n12360=>363,\n12361=>364,\n12362=>365,\n12363=>366,\n12364=>367,\n12365=>368,\n12366=>369,\n12367=>370,\n12368=>371,\n12369=>372,\n12370=>373,\n12371=>374,\n12372=>375,\n12373=>376,\n12374=>377,\n12375=>378,\n12376=>379,\n12377=>380,\n12378=>381,\n12379=>382,\n12380=>383,\n12381=>384,\n12382=>385,\n12383=>386,\n12384=>387,\n12385=>388,\n12386=>389,\n12387=>390,\n12388=>391,\n12389=>392,\n12390=>393,\n12391=>394,\n12392=>395,\n12393=>396,\n12394=>397,\n12395=>398,\n12396=>399,\n12397=>400,\n12398=>401,\n12399=>402,\n12400=>403,\n12401=>404,\n12402=>405,\n12403=>406,\n12404=>407,\n12405=>408,\n12406=>409,\n12407=>410,\n12408=>411,\n12409=>412,\n12410=>413,\n12411=>414,\n12412=>415,\n12413=>416,\n12414=>417,\n12415=>418,\n12416=>419,\n12417=>420,\n12418=>421,\n12419=>422,\n12420=>423,\n12421=>424,\n12422=>425,\n12423=>426,\n12424=>427,\n12425=>428,\n12426=>429,\n12427=>430,\n12428=>431,\n12429=>432,\n12430=>433,\n12431=>434,\n12432=>435,\n12433=>436,\n12434=>437,\n12435=>438,\n12449=>439,\n12450=>440,\n12451=>441,\n12452=>442,\n12453=>443,\n12454=>444,\n12455=>445,\n12456=>446,\n12457=>447,\n12458=>448,\n12459=>449,\n12460=>450,\n12461=>451,\n12462=>452,\n12463=>453,\n12464=>454,\n12465=>455,\n12466=>456,\n12467=>457,\n12468=>458,\n12469=>459,\n12470=>460,\n12471=>461,\n12472=>462,\n12473=>463,\n12474=>464,\n12475=>465,\n12476=>466,\n12477=>467,\n12478=>468,\n12479=>469,\n12480=>470,\n12481=>471,\n12482=>472,\n12483=>473,\n12484=>474,\n12485=>475,\n12486=>476,\n12487=>477,\n12488=>478,\n12489=>479,\n12490=>480,\n12491=>481,\n12492=>482,\n12493=>483,\n12494=>484,\n12495=>485,\n12496=>486,\n12497=>487,\n12498=>488,\n12499=>489,\n12500=>490,\n12501=>491,\n12502=>492,\n12503=>493,\n12504=>494,\n12505=>495,\n12506=>496,\n12507=>497,\n12508=>498,\n12509=>499,\n12510=>500,\n12511=>501,\n12512=>502,\n12513=>503,\n12514=>504,\n12515=>505,\n12516=>506,\n12517=>507,\n12518=>508,\n12519=>509,\n12520=>510,\n12521=>511,\n12522=>512,\n12523=>513,\n12524=>514,\n12525=>515,\n12526=>516,\n12527=>517,\n12528=>518,\n12529=>519,\n12530=>520,\n12531=>521,\n12532=>522,\n12533=>523,\n12534=>524,\n913=>525,\n914=>526,\n915=>527,\n916=>528,\n917=>529,\n918=>530,\n919=>531,\n920=>532,\n921=>533,\n922=>534,\n923=>535,\n924=>536,\n925=>537,\n926=>538,\n927=>539,\n928=>540,\n929=>541,\n931=>542,\n932=>543,\n933=>544,\n934=>545,\n935=>546,\n936=>547,\n937=>548,\n945=>549,\n946=>550,\n947=>551,\n948=>552,\n949=>553,\n950=>554,\n951=>555,\n952=>556,\n953=>557,\n954=>558,\n955=>559,\n956=>560,\n957=>561,\n958=>562,\n959=>563,\n960=>564,\n961=>565,\n963=>566,\n964=>567,\n965=>568,\n966=>569,\n967=>570,\n968=>571,\n969=>572,\n65040=>573,\n59277=>573,\n65042=>574,\n59278=>574,\n65041=>575,\n59279=>575,\n59280=>576,\n65043=>576,\n59281=>577,\n65044=>577,\n59282=>578,\n65045=>578,\n59283=>579,\n65046=>579,\n65077=>580,\n65078=>581,\n65081=>582,\n65082=>583,\n65087=>584,\n65088=>585,\n65085=>586,\n65086=>587,\n65089=>588,\n65090=>589,\n65091=>590,\n65092=>591,\n59284=>592,\n65047=>592,\n59285=>593,\n65048=>593,\n65083=>594,\n65084=>595,\n65079=>596,\n65080=>597,\n65073=>598,\n8285=>599,\n59286=>599,\n65049=>599,\n65075=>600,\n65076=>601,\n1040=>602,\n1041=>603,\n1042=>604,\n1043=>605,\n1044=>606,\n1045=>607,\n1025=>608,\n1046=>609,\n1047=>610,\n1048=>611,\n1049=>612,\n1050=>613,\n1051=>614,\n1052=>615,\n1053=>616,\n1054=>617,\n1055=>618,\n1056=>619,\n1057=>620,\n1058=>621,\n1059=>622,\n1060=>623,\n1061=>624,\n1062=>625,\n1063=>626,\n1064=>627,\n1065=>628,\n1066=>629,\n1067=>630,\n1068=>631,\n1069=>632,\n1070=>633,\n1071=>634,\n1072=>635,\n1073=>636,\n1074=>637,\n1075=>638,\n1076=>639,\n1077=>640,\n1105=>641,\n1078=>642,\n1079=>643,\n1080=>644,\n1081=>645,\n1082=>646,\n1083=>647,\n1084=>648,\n1085=>649,\n1086=>650,\n1087=>651,\n1088=>652,\n1089=>653,\n1090=>654,\n1091=>655,\n1092=>656,\n1093=>657,\n1094=>658,\n1095=>659,\n1096=>660,\n1097=>661,\n1098=>662,\n1099=>663,\n1100=>664,\n1101=>665,\n1102=>666,\n1103=>667,\n257=>668,\n225=>669,\n462=>670,\n224=>671,\n275=>672,\n233=>673,\n283=>674,\n232=>675,\n299=>676,\n237=>677,\n464=>678,\n236=>679,\n333=>680,\n243=>681,\n466=>682,\n242=>683,\n363=>684,\n250=>685,\n468=>686,\n249=>687,\n470=>688,\n472=>689,\n474=>690,\n476=>691,\n252=>692,\n234=>693,\n593=>694,\n7743=>695,\n59335=>695,\n324=>696,\n328=>697,\n505=>698,\n59336=>698,\n609=>699,\n12549=>700,\n12550=>701,\n12551=>702,\n12552=>703,\n12553=>704,\n12554=>705,\n12555=>706,\n12556=>707,\n12557=>708,\n12558=>709,\n12559=>710,\n12560=>711,\n12561=>712,\n12562=>713,\n12563=>714,\n12564=>715,\n12565=>716,\n12566=>717,\n12567=>718,\n12568=>719,\n12569=>720,\n12570=>721,\n12571=>722,\n12572=>723,\n12573=>724,\n12574=>725,\n12575=>726,\n12576=>727,\n12577=>728,\n12578=>729,\n12579=>730,\n12580=>731,\n12581=>732,\n12582=>733,\n12583=>734,\n12584=>735,\n12585=>736,\n9472=>738,\n9473=>739,\n9474=>740,\n9475=>741,\n9476=>742,\n9477=>743,\n9478=>744,\n9479=>745,\n9480=>746,\n9481=>747,\n9482=>748,\n9483=>749,\n9484=>750,\n9485=>751,\n9486=>752,\n9487=>753,\n9488=>754,\n9489=>755,\n9490=>756,\n9491=>757,\n9492=>758,\n9493=>759,\n9494=>760,\n9495=>761,\n9496=>762,\n9497=>763,\n9498=>764,\n9499=>765,\n9500=>766,\n9501=>767,\n9502=>768,\n9503=>769,\n9504=>770,\n9505=>771,\n9506=>772,\n9507=>773,\n9508=>774,\n9509=>775,\n9510=>776,\n9511=>777,\n9512=>778,\n9513=>779,\n9514=>780,\n9515=>781,\n9516=>782,\n9517=>783,\n9518=>784,\n9519=>785,\n9520=>786,\n9521=>787,\n9522=>788,\n9523=>789,\n9524=>790,\n9525=>791,\n9526=>792,\n9527=>793,\n9528=>794,\n9529=>795,\n9530=>796,\n9531=>797,\n9532=>798,\n9533=>799,\n9534=>800,\n9535=>801,\n9536=>802,\n9537=>803,\n9538=>804,\n9539=>805,\n9540=>806,\n9541=>807,\n9542=>808,\n9543=>809,\n9544=>810,\n9545=>811,\n9546=>812,\n9547=>813,\n21834=>940,\n38463=>941,\n22467=>942,\n25384=>943,\n21710=>944,\n21769=>945,\n21696=>946,\n30353=>947,\n30284=>948,\n34108=>949,\n30702=>950,\n33406=>951,\n30861=>952,\n29233=>953,\n38552=>954,\n38797=>955,\n27688=>956,\n23433=>957,\n20474=>958,\n25353=>959,\n26263=>960,\n23736=>961,\n33018=>962,\n26696=>963,\n32942=>964,\n26114=>965,\n30414=>966,\n20985=>967,\n25942=>968,\n29100=>969,\n32753=>970,\n34948=>971,\n20658=>972,\n22885=>973,\n25034=>974,\n28595=>975,\n33453=>976,\n25420=>977,\n25170=>978,\n21485=>979,\n21543=>980,\n31494=>981,\n12043=>982,\n20843=>982,\n30116=>983,\n24052=>984,\n25300=>985,\n36299=>986,\n38774=>987,\n25226=>988,\n32793=>989,\n22365=>990,\n38712=>991,\n32610=>992,\n29240=>993,\n12137=>994,\n30333=>994,\n26575=>995,\n30334=>996,\n25670=>997,\n20336=>998,\n36133=>999,\n25308=>1000,\n31255=>1001,\n26001=>1002,\n29677=>1003,\n25644=>1004,\n25203=>1005,\n33324=>1006,\n39041=>1007,\n26495=>1008,\n29256=>1009,\n25198=>1010,\n25292=>1011,\n20276=>1012,\n29923=>1013,\n21322=>1014,\n21150=>1015,\n32458=>1016,\n37030=>1017,\n24110=>1018,\n26758=>1019,\n27036=>1020,\n33152=>1021,\n32465=>1022,\n26834=>1023,\n30917=>1024,\n34444=>1025,\n38225=>1026,\n20621=>1027,\n35876=>1028,\n33502=>1029,\n32990=>1030,\n21253=>1031,\n35090=>1032,\n21093=>1033,\n34180=>1034,\n38649=>1035,\n20445=>1036,\n22561=>1037,\n39281=>1038,\n23453=>1039,\n25265=>1040,\n25253=>1041,\n26292=>1042,\n35961=>1043,\n40077=>1044,\n29190=>1045,\n26479=>1046,\n30865=>1047,\n24754=>1048,\n21329=>1049,\n21271=>1050,\n36744=>1051,\n32972=>1052,\n36125=>1053,\n38049=>1054,\n20493=>1055,\n29384=>1056,\n22791=>1057,\n24811=>1058,\n28953=>1059,\n34987=>1060,\n22868=>1061,\n33519=>1062,\n26412=>1063,\n31528=>1064,\n23849=>1065,\n32503=>1066,\n29997=>1067,\n27893=>1068,\n36454=>1069,\n36856=>1070,\n36924=>1071,\n12240=>1072,\n40763=>1072,\n12112=>1073,\n27604=>1073,\n37145=>1074,\n31508=>1075,\n24444=>1076,\n30887=>1077,\n34006=>1078,\n34109=>1079,\n27605=>1080,\n27609=>1081,\n27606=>1082,\n24065=>1083,\n24199=>1084,\n30201=>1085,\n38381=>1086,\n25949=>1087,\n24330=>1088,\n24517=>1089,\n36767=>1090,\n22721=>1091,\n33218=>1092,\n36991=>1093,\n38491=>1094,\n38829=>1095,\n36793=>1096,\n32534=>1097,\n36140=>1098,\n25153=>1099,\n20415=>1100,\n21464=>1101,\n21342=>1102,\n36776=>1103,\n36777=>1104,\n36779=>1105,\n36941=>1106,\n26631=>1107,\n24426=>1108,\n33176=>1109,\n34920=>1110,\n40150=>1111,\n24971=>1112,\n21035=>1113,\n30250=>1114,\n24428=>1115,\n25996=>1116,\n28626=>1117,\n28392=>1118,\n23486=>1119,\n25672=>1120,\n20853=>1121,\n20912=>1122,\n26564=>1123,\n19993=>1124,\n31177=>1125,\n39292=>1126,\n28851=>1127,\n30149=>1128,\n24182=>1129,\n29627=>1130,\n33760=>1131,\n25773=>1132,\n25320=>1133,\n38069=>1134,\n27874=>1135,\n21338=>1136,\n21187=>1137,\n25615=>1138,\n38082=>1139,\n31636=>1140,\n20271=>1141,\n24091=>1142,\n33334=>1143,\n33046=>1144,\n33162=>1145,\n28196=>1146,\n27850=>1147,\n39539=>1148,\n25429=>1149,\n12056=>1150,\n21340=>1150,\n21754=>1151,\n34917=>1152,\n22496=>1153,\n19981=>1154,\n24067=>1155,\n27493=>1156,\n31807=>1157,\n37096=>1158,\n24598=>1159,\n25830=>1160,\n29468=>1161,\n35009=>1162,\n26448=>1163,\n25165=>1164,\n36130=>1165,\n30572=>1166,\n36393=>1167,\n37319=>1168,\n24425=>1169,\n33756=>1170,\n34081=>1171,\n39184=>1172,\n21442=>1173,\n34453=>1174,\n27531=>1175,\n24813=>1176,\n24808=>1177,\n28799=>1178,\n33485=>1179,\n33329=>1180,\n20179=>1181,\n27815=>1182,\n34255=>1183,\n25805=>1184,\n31961=>1185,\n27133=>1186,\n26361=>1187,\n33609=>1188,\n21397=>1189,\n31574=>1190,\n20391=>1191,\n20876=>1192,\n27979=>1193,\n23618=>1194,\n36461=>1195,\n25554=>1196,\n21449=>1197,\n33580=>1198,\n33590=>1199,\n26597=>1200,\n30900=>1201,\n25661=>1202,\n23519=>1203,\n23700=>1204,\n24046=>1205,\n35815=>1206,\n25286=>1207,\n26612=>1208,\n35962=>1209,\n25600=>1210,\n25530=>1211,\n34633=>1212,\n39307=>1213,\n35863=>1214,\n32544=>1215,\n38130=>1216,\n20135=>1217,\n38416=>1218,\n39076=>1219,\n26124=>1220,\n29462=>1221,\n22330=>1222,\n23581=>1223,\n24120=>1224,\n38271=>1225,\n20607=>1226,\n32928=>1227,\n12058=>1228,\n21378=>1228,\n25950=>1229,\n30021=>1230,\n21809=>1231,\n20513=>1232,\n36229=>1233,\n25220=>1234,\n38046=>1235,\n26397=>1236,\n22066=>1237,\n28526=>1238,\n24034=>1239,\n21557=>1240,\n28818=>1241,\n36710=>1242,\n25199=>1243,\n25764=>1244,\n25507=>1245,\n24443=>1246,\n28552=>1247,\n37108=>1248,\n12162=>1249,\n33251=>1249,\n12192=>1250,\n36784=>1250,\n23576=>1251,\n26216=>1252,\n24561=>1253,\n27785=>1254,\n38472=>1255,\n36225=>1256,\n34924=>1257,\n25745=>1258,\n31216=>1259,\n22478=>1260,\n27225=>1261,\n25104=>1262,\n21576=>1263,\n20056=>1264,\n31243=>1265,\n24809=>1266,\n28548=>1267,\n35802=>1268,\n25215=>1269,\n36894=>1270,\n39563=>1271,\n31204=>1272,\n21507=>1273,\n30196=>1274,\n25345=>1275,\n21273=>1276,\n27744=>1277,\n36831=>1278,\n24347=>1279,\n39536=>1280,\n32827=>1281,\n40831=>1282,\n20360=>1283,\n23610=>1284,\n12186=>1285,\n36196=>1285,\n32709=>1286,\n26021=>1287,\n28861=>1288,\n20805=>1289,\n20914=>1290,\n12173=>1291,\n34411=>1291,\n23815=>1292,\n23456=>1293,\n25277=>1294,\n37228=>1295,\n30068=>1296,\n36364=>1297,\n31264=>1298,\n24833=>1299,\n31609=>1300,\n20167=>1301,\n32504=>1302,\n30597=>1303,\n19985=>1304,\n33261=>1305,\n21021=>1306,\n20986=>1307,\n27249=>1308,\n21416=>1309,\n36487=>1310,\n38148=>1311,\n38607=>1312,\n28353=>1313,\n38500=>1314,\n26970=>1315,\n30784=>1316,\n20648=>1317,\n30679=>1318,\n25616=>1319,\n35302=>1320,\n22788=>1321,\n25571=>1322,\n24029=>1323,\n31359=>1324,\n26941=>1325,\n20256=>1326,\n33337=>1327,\n21912=>1328,\n20018=>1329,\n30126=>1330,\n31383=>1331,\n24162=>1332,\n24202=>1333,\n38383=>1334,\n21019=>1335,\n21561=>1336,\n28810=>1337,\n25462=>1338,\n38180=>1339,\n22402=>1340,\n26149=>1341,\n26943=>1342,\n37255=>1343,\n21767=>1344,\n28147=>1345,\n32431=>1346,\n34850=>1347,\n25139=>1348,\n32496=>1349,\n30133=>1350,\n33576=>1351,\n30913=>1352,\n38604=>1353,\n36766=>1354,\n24904=>1355,\n29943=>1356,\n35789=>1357,\n27492=>1358,\n21050=>1359,\n36176=>1360,\n27425=>1361,\n32874=>1362,\n33905=>1363,\n22257=>1364,\n21254=>1365,\n20174=>1366,\n19995=>1367,\n20945=>1368,\n31895=>1369,\n37259=>1370,\n31751=>1371,\n20419=>1372,\n36479=>1373,\n31713=>1374,\n31388=>1375,\n25703=>1376,\n23828=>1377,\n20652=>1378,\n33030=>1379,\n30209=>1380,\n31929=>1381,\n28140=>1382,\n32736=>1383,\n26449=>1384,\n23384=>1385,\n12072=>1386,\n23544=>1386,\n30923=>1387,\n25774=>1388,\n25619=>1389,\n25514=>1390,\n25387=>1391,\n38169=>1392,\n25645=>1393,\n36798=>1394,\n31572=>1395,\n30249=>1396,\n25171=>1397,\n12068=>1398,\n22823=>1398,\n21574=>1399,\n12109=>1400,\n27513=>1400,\n20643=>1401,\n25140=>1402,\n24102=>1403,\n27526=>1404,\n20195=>1405,\n36151=>1406,\n34955=>1407,\n24453=>1408,\n36910=>1409,\n24608=>1410,\n32829=>1411,\n25285=>1412,\n20025=>1413,\n21333=>1414,\n37112=>1415,\n25528=>1416,\n32966=>1417,\n26086=>1418,\n27694=>1419,\n20294=>1420,\n24814=>1421,\n28129=>1422,\n35806=>1423,\n24377=>1424,\n34507=>1425,\n24403=>1426,\n25377=>1427,\n20826=>1428,\n33633=>1429,\n26723=>1430,\n12049=>1431,\n20992=>1431,\n25443=>1432,\n36424=>1433,\n20498=>1434,\n23707=>1435,\n31095=>1436,\n23548=>1437,\n21040=>1438,\n31291=>1439,\n24764=>1440,\n36947=>1441,\n30423=>1442,\n24503=>1443,\n24471=>1444,\n30340=>1445,\n36460=>1446,\n28783=>1447,\n30331=>1448,\n31561=>1449,\n30634=>1450,\n20979=>1451,\n37011=>1452,\n22564=>1453,\n20302=>1454,\n28404=>1455,\n36842=>1456,\n25932=>1457,\n31515=>1458,\n29380=>1459,\n28068=>1460,\n32735=>1461,\n23265=>1462,\n25269=>1463,\n24213=>1464,\n22320=>1465,\n33922=>1466,\n31532=>1467,\n24093=>1468,\n24351=>1469,\n36882=>1470,\n32532=>1471,\n39072=>1472,\n25474=>1473,\n28359=>1474,\n30872=>1475,\n28857=>1476,\n20856=>1477,\n38747=>1478,\n22443=>1479,\n30005=>1480,\n20291=>1481,\n30008=>1482,\n24215=>1483,\n24806=>1484,\n22880=>1485,\n28096=>1486,\n27583=>1487,\n30857=>1488,\n21500=>1489,\n38613=>1490,\n20939=>1491,\n20993=>1492,\n25481=>1493,\n21514=>1494,\n38035=>1495,\n35843=>1496,\n36300=>1497,\n29241=>1498,\n30879=>1499,\n34678=>1500,\n36845=>1501,\n35853=>1502,\n21472=>1503,\n19969=>1504,\n30447=>1505,\n21486=>1506,\n38025=>1507,\n39030=>1508,\n12237=>1509,\n40718=>1509,\n38189=>1510,\n23450=>1511,\n35746=>1512,\n20002=>1513,\n19996=>1514,\n20908=>1515,\n33891=>1516,\n25026=>1517,\n21160=>1518,\n26635=>1519,\n20375=>1520,\n24683=>1521,\n20923=>1522,\n27934=>1523,\n20828=>1524,\n25238=>1525,\n12099=>1526,\n26007=>1526,\n38497=>1527,\n12182=>1528,\n35910=>1528,\n36887=>1529,\n30168=>1530,\n37117=>1531,\n30563=>1532,\n27602=>1533,\n29322=>1534,\n29420=>1535,\n35835=>1536,\n22581=>1537,\n30585=>1538,\n36172=>1539,\n26460=>1540,\n38208=>1541,\n32922=>1542,\n24230=>1543,\n28193=>1544,\n22930=>1545,\n31471=>1546,\n30701=>1547,\n38203=>1548,\n27573=>1549,\n26029=>1550,\n32526=>1551,\n22534=>1552,\n20817=>1553,\n38431=>1554,\n23545=>1555,\n22697=>1556,\n21544=>1557,\n36466=>1558,\n25958=>1559,\n39039=>1560,\n22244=>1561,\n38045=>1562,\n30462=>1563,\n36929=>1564,\n25479=>1565,\n21702=>1566,\n22810=>1567,\n22842=>1568,\n22427=>1569,\n36530=>1570,\n26421=>1571,\n36346=>1572,\n33333=>1573,\n21057=>1574,\n24816=>1575,\n22549=>1576,\n34558=>1577,\n23784=>1578,\n40517=>1579,\n20420=>1580,\n39069=>1581,\n35769=>1582,\n23077=>1583,\n24694=>1584,\n21380=>1585,\n25212=>1586,\n36943=>1587,\n37122=>1588,\n39295=>1589,\n24681=>1590,\n12157=>1591,\n32780=>1591,\n12041=>1592,\n20799=>1592,\n12159=>1593,\n32819=>1593,\n23572=>1594,\n39285=>1595,\n27953=>1596,\n12038=>1597,\n20108=>1597,\n36144=>1598,\n21457=>1599,\n32602=>1600,\n31567=>1601,\n20240=>1602,\n20047=>1603,\n38400=>1604,\n27861=>1605,\n29648=>1606,\n34281=>1607,\n24070=>1608,\n30058=>1609,\n32763=>1610,\n27146=>1611,\n30718=>1612,\n38034=>1613,\n32321=>1614,\n20961=>1615,\n28902=>1616,\n21453=>1617,\n36820=>1618,\n33539=>1619,\n36137=>1620,\n29359=>1621,\n39277=>1622,\n27867=>1623,\n22346=>1624,\n33459=>1625,\n12101=>1626,\n26041=>1626,\n32938=>1627,\n25151=>1628,\n38450=>1629,\n22952=>1630,\n20223=>1631,\n35775=>1632,\n32442=>1633,\n25918=>1634,\n33778=>1635,\n12206=>1636,\n38750=>1636,\n21857=>1637,\n39134=>1638,\n32933=>1639,\n21290=>1640,\n35837=>1641,\n21536=>1642,\n32954=>1643,\n24223=>1644,\n27832=>1645,\n36153=>1646,\n33452=>1647,\n37210=>1648,\n21545=>1649,\n27675=>1650,\n20998=>1651,\n32439=>1652,\n22367=>1653,\n28954=>1654,\n27774=>1655,\n31881=>1656,\n22859=>1657,\n20221=>1658,\n24575=>1659,\n24868=>1660,\n31914=>1661,\n20016=>1662,\n23553=>1663,\n26539=>1664,\n34562=>1665,\n23792=>1666,\n38155=>1667,\n39118=>1668,\n30127=>1669,\n28925=>1670,\n36898=>1671,\n20911=>1672,\n32541=>1673,\n35773=>1674,\n22857=>1675,\n20964=>1676,\n20315=>1677,\n21542=>1678,\n22827=>1679,\n25975=>1680,\n32932=>1681,\n23413=>1682,\n25206=>1683,\n25282=>1684,\n36752=>1685,\n24133=>1686,\n27679=>1687,\n31526=>1688,\n20239=>1689,\n20440=>1690,\n26381=>1691,\n28014=>1692,\n28074=>1693,\n31119=>1694,\n34993=>1695,\n24343=>1696,\n29995=>1697,\n25242=>1698,\n36741=>1699,\n20463=>1700,\n37340=>1701,\n26023=>1702,\n33071=>1703,\n33105=>1704,\n24220=>1705,\n33104=>1706,\n36212=>1707,\n21103=>1708,\n35206=>1709,\n36171=>1710,\n22797=>1711,\n20613=>1712,\n20184=>1713,\n12201=>1714,\n38428=>1714,\n12119=>1715,\n29238=>1715,\n33145=>1716,\n36127=>1717,\n23500=>1718,\n35747=>1719,\n38468=>1720,\n22919=>1721,\n32538=>1722,\n21648=>1723,\n22134=>1724,\n22030=>1725,\n35813=>1726,\n25913=>1727,\n27010=>1728,\n38041=>1729,\n30422=>1730,\n28297=>1731,\n12082=>1732,\n24178=>1732,\n12130=>1733,\n29976=>1733,\n26438=>1734,\n26577=>1735,\n31487=>1736,\n32925=>1737,\n36214=>1738,\n24863=>1739,\n31174=>1740,\n25954=>1741,\n36195=>1742,\n20872=>1743,\n21018=>1744,\n38050=>1745,\n32568=>1746,\n32923=>1747,\n32434=>1748,\n23703=>1749,\n28207=>1750,\n26464=>1751,\n31705=>1752,\n30347=>1753,\n12220=>1754,\n39640=>1754,\n33167=>1755,\n32660=>1756,\n31957=>1757,\n25630=>1758,\n38224=>1759,\n31295=>1760,\n21578=>1761,\n21733=>1762,\n27468=>1763,\n25601=>1764,\n12093=>1765,\n25096=>1765,\n40509=>1766,\n33011=>1767,\n30105=>1768,\n21106=>1769,\n12208=>1770,\n38761=>1770,\n33883=>1771,\n26684=>1772,\n34532=>1773,\n38401=>1774,\n38548=>1775,\n38124=>1776,\n20010=>1777,\n21508=>1778,\n32473=>1779,\n26681=>1780,\n36319=>1781,\n32789=>1782,\n26356=>1783,\n24218=>1784,\n32697=>1785,\n22466=>1786,\n32831=>1787,\n26775=>1788,\n12079=>1789,\n24037=>1789,\n25915=>1790,\n21151=>1791,\n24685=>1792,\n40858=>1793,\n20379=>1794,\n36524=>1795,\n20844=>1796,\n23467=>1797,\n12088=>1798,\n24339=>1798,\n24041=>1799,\n27742=>1800,\n25329=>1801,\n36129=>1802,\n20849=>1803,\n38057=>1804,\n21246=>1805,\n27807=>1806,\n33503=>1807,\n29399=>1808,\n22434=>1809,\n26500=>1810,\n36141=>1811,\n22815=>1812,\n36764=>1813,\n33735=>1814,\n21653=>1815,\n31629=>1816,\n20272=>1817,\n27837=>1818,\n23396=>1819,\n22993=>1820,\n12238=>1821,\n40723=>1821,\n21476=>1822,\n34506=>1823,\n12219=>1824,\n39592=>1824,\n12181=>1825,\n35895=>1825,\n32929=>1826,\n25925=>1827,\n39038=>1828,\n22266=>1829,\n38599=>1830,\n21038=>1831,\n12128=>1832,\n29916=>1832,\n21072=>1833,\n23521=>1834,\n25346=>1835,\n35074=>1836,\n20054=>1837,\n25296=>1838,\n24618=>1839,\n26874=>1840,\n20851=>1841,\n23448=>1842,\n20896=>1843,\n35266=>1844,\n31649=>1845,\n39302=>1846,\n32592=>1847,\n24815=>1848,\n28748=>1849,\n36143=>1850,\n20809=>1851,\n12084=>1852,\n24191=>1852,\n36891=>1853,\n29808=>1854,\n35268=>1855,\n22317=>1856,\n30789=>1857,\n24402=>1858,\n40863=>1859,\n38394=>1860,\n36712=>1861,\n12225=>1862,\n39740=>1862,\n35809=>1863,\n30328=>1864,\n26690=>1865,\n26588=>1866,\n36330=>1867,\n36149=>1868,\n21053=>1869,\n36746=>1870,\n28378=>1871,\n26829=>1872,\n38149=>1873,\n37101=>1874,\n22269=>1875,\n26524=>1876,\n35065=>1877,\n36807=>1878,\n21704=>1879,\n39608=>1880,\n23401=>1881,\n28023=>1882,\n27686=>1883,\n20133=>1884,\n23475=>1885,\n39559=>1886,\n37219=>1887,\n25000=>1888,\n37039=>1889,\n38889=>1890,\n21547=>1891,\n28085=>1892,\n23506=>1893,\n20989=>1894,\n21898=>1895,\n32597=>1896,\n32752=>1897,\n25788=>1898,\n25421=>1899,\n26097=>1900,\n25022=>1901,\n24717=>1902,\n28938=>1903,\n27735=>1904,\n27721=>1905,\n22831=>1906,\n26477=>1907,\n33322=>1908,\n22741=>1909,\n22158=>1910,\n35946=>1911,\n27627=>1912,\n37085=>1913,\n22909=>1914,\n32791=>1915,\n21495=>1916,\n28009=>1917,\n21621=>1918,\n21917=>1919,\n33655=>1920,\n33743=>1921,\n26680=>1922,\n12146=>1923,\n31166=>1923,\n21644=>1924,\n20309=>1925,\n21512=>1926,\n30418=>1927,\n35977=>1928,\n38402=>1929,\n27827=>1930,\n28088=>1931,\n36203=>1932,\n35088=>1933,\n40548=>1934,\n36154=>1935,\n22079=>1936,\n12234=>1937,\n40657=>1937,\n30165=>1938,\n24456=>1939,\n29408=>1940,\n24680=>1941,\n21756=>1942,\n20136=>1943,\n27178=>1944,\n34913=>1945,\n24658=>1946,\n36720=>1947,\n21700=>1948,\n28888=>1949,\n34425=>1950,\n40511=>1951,\n27946=>1952,\n23439=>1953,\n24344=>1954,\n32418=>1955,\n21897=>1956,\n20399=>1957,\n29492=>1958,\n21564=>1959,\n21402=>1960,\n20505=>1961,\n21518=>1962,\n21628=>1963,\n20046=>1964,\n24573=>1965,\n29786=>1966,\n22774=>1967,\n33899=>1968,\n32993=>1969,\n34676=>1970,\n29392=>1971,\n31946=>1972,\n28246=>1973,\n24359=>1974,\n34382=>1975,\n21804=>1976,\n25252=>1977,\n20114=>1978,\n27818=>1979,\n25143=>1980,\n33457=>1981,\n21719=>1982,\n21326=>1983,\n29502=>1984,\n28369=>1985,\n30011=>1986,\n21010=>1987,\n21270=>1988,\n35805=>1989,\n27088=>1990,\n24458=>1991,\n24576=>1992,\n28142=>1993,\n22351=>1994,\n27426=>1995,\n29615=>1996,\n26707=>1997,\n36824=>1998,\n32531=>1999,\n25442=>2000,\n24739=>2001,\n21796=>2002,\n30186=>2003,\n35938=>2004,\n28949=>2005,\n28067=>2006,\n23462=>2007,\n24187=>2008,\n33618=>2009,\n24908=>2010,\n40644=>2011,\n30970=>2012,\n34647=>2013,\n31783=>2014,\n30343=>2015,\n20976=>2016,\n24822=>2017,\n29004=>2018,\n26179=>2019,\n24140=>2020,\n24653=>2021,\n35854=>2022,\n28784=>2023,\n25381=>2024,\n36745=>2025,\n24509=>2026,\n24674=>2027,\n34516=>2028,\n22238=>2029,\n27585=>2030,\n24724=>2031,\n24935=>2032,\n21321=>2033,\n24800=>2034,\n26214=>2035,\n36159=>2036,\n31229=>2037,\n20250=>2038,\n28905=>2039,\n27719=>2040,\n35763=>2041,\n35826=>2042,\n32472=>2043,\n33636=>2044,\n26127=>2045,\n23130=>2046,\n39746=>2047,\n27985=>2048,\n28151=>2049,\n35905=>2050,\n27963=>2051,\n20249=>2052,\n12117=>2053,\n28779=>2053,\n33719=>2054,\n25110=>2055,\n24785=>2056,\n38669=>2057,\n36135=>2058,\n31096=>2059,\n20987=>2060,\n22334=>2061,\n22522=>2062,\n26426=>2063,\n30072=>2064,\n31293=>2065,\n31215=>2066,\n31637=>2067,\n32908=>2068,\n39269=>2069,\n36857=>2070,\n28608=>2071,\n35749=>2072,\n40481=>2073,\n23020=>2074,\n32489=>2075,\n32521=>2076,\n21513=>2077,\n26497=>2078,\n26840=>2079,\n36753=>2080,\n31821=>2081,\n38598=>2082,\n21450=>2083,\n24613=>2084,\n30142=>2085,\n27762=>2086,\n21363=>2087,\n23241=>2088,\n32423=>2089,\n25380=>2090,\n12047=>2091,\n20960=>2091,\n33034=>2092,\n12080=>2093,\n24049=>2093,\n34015=>2094,\n25216=>2095,\n20864=>2096,\n23395=>2097,\n20238=>2098,\n31085=>2099,\n21058=>2100,\n24760=>2101,\n27982=>2102,\n23492=>2103,\n23490=>2104,\n35745=>2105,\n35760=>2106,\n26082=>2107,\n24524=>2108,\n38469=>2109,\n22931=>2110,\n32487=>2111,\n32426=>2112,\n22025=>2113,\n26551=>2114,\n22841=>2115,\n20339=>2116,\n23478=>2117,\n21152=>2118,\n33626=>2119,\n39050=>2120,\n36158=>2121,\n30002=>2122,\n38078=>2123,\n20551=>2124,\n31292=>2125,\n20215=>2126,\n26550=>2127,\n39550=>2128,\n23233=>2129,\n27516=>2130,\n30417=>2131,\n22362=>2132,\n23574=>2133,\n31546=>2134,\n38388=>2135,\n29006=>2136,\n20860=>2137,\n32937=>2138,\n33392=>2139,\n22904=>2140,\n32516=>2141,\n33575=>2142,\n26816=>2143,\n26604=>2144,\n30897=>2145,\n30839=>2146,\n25315=>2147,\n25441=>2148,\n31616=>2149,\n20461=>2150,\n21098=>2151,\n20943=>2152,\n33616=>2153,\n27099=>2154,\n37492=>2155,\n36341=>2156,\n36145=>2157,\n35265=>2158,\n38190=>2159,\n31661=>2160,\n20214=>2161,\n20581=>2162,\n33328=>2163,\n21073=>2164,\n39279=>2165,\n28176=>2166,\n28293=>2167,\n28071=>2168,\n24314=>2169,\n20725=>2170,\n23004=>2171,\n23558=>2172,\n27974=>2173,\n27743=>2174,\n30086=>2175,\n33931=>2176,\n26728=>2177,\n22870=>2178,\n35762=>2179,\n21280=>2180,\n37233=>2181,\n38477=>2182,\n34121=>2183,\n26898=>2184,\n30977=>2185,\n28966=>2186,\n33014=>2187,\n20132=>2188,\n37066=>2189,\n27975=>2190,\n39556=>2191,\n23047=>2192,\n22204=>2193,\n25605=>2194,\n38128=>2195,\n30699=>2196,\n20389=>2197,\n33050=>2198,\n29409=>2199,\n12179=>2200,\n35282=>2200,\n39290=>2201,\n32564=>2202,\n32478=>2203,\n21119=>2204,\n25945=>2205,\n37237=>2206,\n36735=>2207,\n36739=>2208,\n21483=>2209,\n31382=>2210,\n25581=>2211,\n25509=>2212,\n30342=>2213,\n31224=>2214,\n34903=>2215,\n38454=>2216,\n25130=>2217,\n21163=>2218,\n33410=>2219,\n26708=>2220,\n26480=>2221,\n25463=>2222,\n30571=>2223,\n31469=>2224,\n27905=>2225,\n32467=>2226,\n35299=>2227,\n22992=>2228,\n25106=>2229,\n34249=>2230,\n33445=>2231,\n30028=>2232,\n20511=>2233,\n20171=>2234,\n30117=>2235,\n35819=>2236,\n23626=>2237,\n12081=>2238,\n24062=>2238,\n31563=>2239,\n12100=>2240,\n26020=>2240,\n12198=>2241,\n37329=>2241,\n20170=>2242,\n27941=>2243,\n35167=>2244,\n32039=>2245,\n38182=>2246,\n20165=>2247,\n35880=>2248,\n36827=>2249,\n38771=>2250,\n26187=>2251,\n31105=>2252,\n36817=>2253,\n28908=>2254,\n28024=>2255,\n23613=>2256,\n21170=>2257,\n33606=>2258,\n20834=>2259,\n33550=>2260,\n30555=>2261,\n26230=>2262,\n40120=>2263,\n20140=>2264,\n24778=>2265,\n31934=>2266,\n31923=>2267,\n32463=>2268,\n20117=>2269,\n35686=>2270,\n26223=>2271,\n39048=>2272,\n38745=>2273,\n22659=>2274,\n25964=>2275,\n38236=>2276,\n24452=>2277,\n30153=>2278,\n38742=>2279,\n31455=>2280,\n31454=>2281,\n20928=>2282,\n28847=>2283,\n31384=>2284,\n25578=>2285,\n31350=>2286,\n32416=>2287,\n29590=>2288,\n12210=>2289,\n38893=>2289,\n20037=>2290,\n28792=>2291,\n20061=>2292,\n37202=>2293,\n21417=>2294,\n25937=>2295,\n26087=>2296,\n12165=>2297,\n33276=>2297,\n33285=>2298,\n21646=>2299,\n23601=>2300,\n30106=>2301,\n38816=>2302,\n25304=>2303,\n29401=>2304,\n30141=>2305,\n23621=>2306,\n39545=>2307,\n33738=>2308,\n23616=>2309,\n21632=>2310,\n30697=>2311,\n20030=>2312,\n27822=>2313,\n32858=>2314,\n25298=>2315,\n25454=>2316,\n24040=>2317,\n20855=>2318,\n36317=>2319,\n36382=>2320,\n38191=>2321,\n20465=>2322,\n21477=>2323,\n24807=>2324,\n28844=>2325,\n21095=>2326,\n25424=>2327,\n40515=>2328,\n23071=>2329,\n20518=>2330,\n30519=>2331,\n21367=>2332,\n32482=>2333,\n25733=>2334,\n25899=>2335,\n25225=>2336,\n25496=>2337,\n20500=>2338,\n29237=>2339,\n35273=>2340,\n20915=>2341,\n35776=>2342,\n32477=>2343,\n22343=>2344,\n33740=>2345,\n38055=>2346,\n20891=>2347,\n21531=>2348,\n23803=>2349,\n20426=>2350,\n31459=>2351,\n27994=>2352,\n37089=>2353,\n39567=>2354,\n21888=>2355,\n21654=>2356,\n21345=>2357,\n21679=>2358,\n24320=>2359,\n25577=>2360,\n26999=>2361,\n20975=>2362,\n24936=>2363,\n21002=>2364,\n22570=>2365,\n21208=>2366,\n22350=>2367,\n30733=>2368,\n30475=>2369,\n24247=>2370,\n24951=>2371,\n31968=>2372,\n25179=>2373,\n25239=>2374,\n20130=>2375,\n28821=>2376,\n32771=>2377,\n25335=>2378,\n28900=>2379,\n38752=>2380,\n22391=>2381,\n33499=>2382,\n26607=>2383,\n26869=>2384,\n30933=>2385,\n39063=>2386,\n31185=>2387,\n22771=>2388,\n21683=>2389,\n21487=>2390,\n28212=>2391,\n20811=>2392,\n21051=>2393,\n23458=>2394,\n35838=>2395,\n32943=>2396,\n21827=>2397,\n22438=>2398,\n24691=>2399,\n22353=>2400,\n21549=>2401,\n31354=>2402,\n24656=>2403,\n23380=>2404,\n25511=>2405,\n25248=>2406,\n12061=>2407,\n21475=>2407,\n25187=>2408,\n23495=>2409,\n26543=>2410,\n21741=>2411,\n31391=>2412,\n33510=>2413,\n37239=>2414,\n24211=>2415,\n35044=>2416,\n22840=>2417,\n22446=>2418,\n25358=>2419,\n36328=>2420,\n33007=>2421,\n22359=>2422,\n31607=>2423,\n20393=>2424,\n24555=>2425,\n23485=>2426,\n27454=>2427,\n21281=>2428,\n31568=>2429,\n29378=>2430,\n26694=>2431,\n30719=>2432,\n30518=>2433,\n26103=>2434,\n20917=>2435,\n20111=>2436,\n30420=>2437,\n23743=>2438,\n31397=>2439,\n33909=>2440,\n22862=>2441,\n39745=>2442,\n20608=>2443,\n39304=>2444,\n24871=>2445,\n28291=>2446,\n22372=>2447,\n26118=>2448,\n25414=>2449,\n22256=>2450,\n25324=>2451,\n25193=>2452,\n24275=>2453,\n38420=>2454,\n22403=>2455,\n25289=>2456,\n21895=>2457,\n34593=>2458,\n33098=>2459,\n36771=>2460,\n21862=>2461,\n33713=>2462,\n26469=>2463,\n36182=>2464,\n34013=>2465,\n23146=>2466,\n26639=>2467,\n25318=>2468,\n31726=>2469,\n38417=>2470,\n20848=>2471,\n28572=>2472,\n35888=>2473,\n25597=>2474,\n35272=>2475,\n25042=>2476,\n32518=>2477,\n28866=>2478,\n28389=>2479,\n29701=>2480,\n27028=>2481,\n29436=>2482,\n24266=>2483,\n37070=>2484,\n26391=>2485,\n28010=>2486,\n25438=>2487,\n21171=>2488,\n29282=>2489,\n12156=>2490,\n32769=>2490,\n20332=>2491,\n23013=>2492,\n37226=>2493,\n28889=>2494,\n28061=>2495,\n21202=>2496,\n20048=>2497,\n38647=>2498,\n38253=>2499,\n34174=>2500,\n30922=>2501,\n32047=>2502,\n20769=>2503,\n22418=>2504,\n25794=>2505,\n32907=>2506,\n31867=>2507,\n27882=>2508,\n26865=>2509,\n26974=>2510,\n20919=>2511,\n21400=>2512,\n26792=>2513,\n29313=>2514,\n40654=>2515,\n31729=>2516,\n29432=>2517,\n31163=>2518,\n28435=>2519,\n29702=>2520,\n26446=>2521,\n12197=>2522,\n37324=>2522,\n40100=>2523,\n31036=>2524,\n33673=>2525,\n33620=>2526,\n21519=>2527,\n26647=>2528,\n20029=>2529,\n21385=>2530,\n21169=>2531,\n30782=>2532,\n21382=>2533,\n21033=>2534,\n20616=>2535,\n20363=>2536,\n20432=>2537,\n30178=>2538,\n12148=>2539,\n31435=>2539,\n31890=>2540,\n27813=>2541,\n12202=>2542,\n38582=>2542,\n12050=>2543,\n21147=>2543,\n29827=>2544,\n21737=>2545,\n20457=>2546,\n32852=>2547,\n33714=>2548,\n36830=>2549,\n38256=>2550,\n24265=>2551,\n24604=>2552,\n28063=>2553,\n24088=>2554,\n25947=>2555,\n33080=>2556,\n38142=>2557,\n24651=>2558,\n28860=>2559,\n32451=>2560,\n31918=>2561,\n20937=>2562,\n63865=>2562,\n26753=>2563,\n31921=>2564,\n33391=>2565,\n20004=>2566,\n36742=>2567,\n37327=>2568,\n26238=>2569,\n20142=>2570,\n35845=>2571,\n25769=>2572,\n32842=>2573,\n20698=>2574,\n30103=>2575,\n29134=>2576,\n23525=>2577,\n36797=>2578,\n28518=>2579,\n20102=>2580,\n25730=>2581,\n38243=>2582,\n24278=>2583,\n26009=>2584,\n21015=>2585,\n35010=>2586,\n28872=>2587,\n21155=>2588,\n29454=>2589,\n29747=>2590,\n26519=>2591,\n30967=>2592,\n38678=>2593,\n20020=>2594,\n37051=>2595,\n40158=>2596,\n28107=>2597,\n20955=>2598,\n36161=>2599,\n21533=>2600,\n25294=>2601,\n29618=>2602,\n33777=>2603,\n38646=>2604,\n40836=>2605,\n38083=>2606,\n20278=>2607,\n32666=>2608,\n20940=>2609,\n28789=>2610,\n38517=>2611,\n23725=>2612,\n39046=>2613,\n21478=>2614,\n20196=>2615,\n28316=>2616,\n29705=>2617,\n27060=>2618,\n30827=>2619,\n39311=>2620,\n30041=>2621,\n21016=>2622,\n30244=>2623,\n27969=>2624,\n26611=>2625,\n20845=>2626,\n40857=>2627,\n32843=>2628,\n21657=>2629,\n31548=>2630,\n31423=>2631,\n38534=>2632,\n22404=>2633,\n25314=>2634,\n38471=>2635,\n27004=>2636,\n23044=>2637,\n25602=>2638,\n31699=>2639,\n28431=>2640,\n38475=>2641,\n33446=>2642,\n21346=>2643,\n39045=>2644,\n24208=>2645,\n28809=>2646,\n25523=>2647,\n21348=>2648,\n34383=>2649,\n40065=>2650,\n40595=>2651,\n30860=>2652,\n38706=>2653,\n36335=>2654,\n36162=>2655,\n12229=>2656,\n40575=>2656,\n28510=>2657,\n31108=>2658,\n24405=>2659,\n38470=>2660,\n25134=>2661,\n39540=>2662,\n21525=>2663,\n38109=>2664,\n20387=>2665,\n26053=>2666,\n23653=>2667,\n23649=>2668,\n32533=>2669,\n34385=>2670,\n27695=>2671,\n24459=>2672,\n29575=>2673,\n28388=>2674,\n32511=>2675,\n23782=>2676,\n25371=>2677,\n23402=>2678,\n28390=>2679,\n21365=>2680,\n20081=>2681,\n25504=>2682,\n30053=>2683,\n25249=>2684,\n36718=>2685,\n20262=>2686,\n20177=>2687,\n27814=>2688,\n32438=>2689,\n35770=>2690,\n33821=>2691,\n34746=>2692,\n32599=>2693,\n36923=>2694,\n38179=>2695,\n31657=>2696,\n39585=>2697,\n35064=>2698,\n33853=>2699,\n27931=>2700,\n39558=>2701,\n32476=>2702,\n22920=>2703,\n12231=>2704,\n40635=>2704,\n29595=>2705,\n30721=>2706,\n34434=>2707,\n39532=>2708,\n39554=>2709,\n22043=>2710,\n21527=>2711,\n22475=>2712,\n20080=>2713,\n40614=>2714,\n21334=>2715,\n36808=>2716,\n33033=>2717,\n30610=>2718,\n39314=>2719,\n34542=>2720,\n28385=>2721,\n34067=>2722,\n26364=>2723,\n24930=>2724,\n28459=>2725,\n35881=>2726,\n33426=>2727,\n33579=>2728,\n30450=>2729,\n27667=>2730,\n24537=>2731,\n33725=>2732,\n29483=>2733,\n33541=>2734,\n38170=>2735,\n12113=>2736,\n27611=>2736,\n12141=>2737,\n30683=>2737,\n38086=>2738,\n21359=>2739,\n33538=>2740,\n20882=>2741,\n24125=>2742,\n35980=>2743,\n36152=>2744,\n20040=>2745,\n29611=>2746,\n26522=>2747,\n26757=>2748,\n37238=>2749,\n38665=>2750,\n29028=>2751,\n27809=>2752,\n30473=>2753,\n23186=>2754,\n38209=>2755,\n27599=>2756,\n32654=>2757,\n26151=>2758,\n23504=>2759,\n22969=>2760,\n23194=>2761,\n38376=>2762,\n38391=>2763,\n20204=>2764,\n33804=>2765,\n33945=>2766,\n27308=>2767,\n30431=>2768,\n38192=>2769,\n29467=>2770,\n26790=>2771,\n23391=>2772,\n30511=>2773,\n37274=>2774,\n38753=>2775,\n31964=>2776,\n36855=>2777,\n35868=>2778,\n24357=>2779,\n12150=>2780,\n31859=>2780,\n31192=>2781,\n35269=>2782,\n27852=>2783,\n34588=>2784,\n23494=>2785,\n24130=>2786,\n26825=>2787,\n30496=>2788,\n32501=>2789,\n20885=>2790,\n20813=>2791,\n21193=>2792,\n23081=>2793,\n32517=>2794,\n12207=>2795,\n38754=>2795,\n33495=>2796,\n25551=>2797,\n30596=>2798,\n34256=>2799,\n31186=>2800,\n28218=>2801,\n24217=>2802,\n22937=>2803,\n34065=>2804,\n28781=>2805,\n27665=>2806,\n25279=>2807,\n12139=>2808,\n30399=>2808,\n25935=>2809,\n24751=>2810,\n38397=>2811,\n26126=>2812,\n34719=>2813,\n40483=>2814,\n38125=>2815,\n21517=>2816,\n21629=>2817,\n35884=>2818,\n25720=>2819,\n25721=>2820,\n34321=>2821,\n27169=>2822,\n33180=>2823,\n30952=>2824,\n25705=>2825,\n39764=>2826,\n25273=>2827,\n26411=>2828,\n33707=>2829,\n22696=>2830,\n40664=>2831,\n27819=>2832,\n28448=>2833,\n23518=>2834,\n38476=>2835,\n35851=>2836,\n29279=>2837,\n26576=>2838,\n25287=>2839,\n29281=>2840,\n20137=>2841,\n22982=>2842,\n27597=>2843,\n22675=>2844,\n26286=>2845,\n24149=>2846,\n21215=>2847,\n24917=>2848,\n12106=>2849,\n26408=>2849,\n12140=>2850,\n30446=>2850,\n30566=>2851,\n29287=>2852,\n31302=>2853,\n25343=>2854,\n21738=>2855,\n21584=>2856,\n38048=>2857,\n37027=>2858,\n23068=>2859,\n32435=>2860,\n27670=>2861,\n20035=>2862,\n22902=>2863,\n32784=>2864,\n22856=>2865,\n21335=>2866,\n30007=>2867,\n38590=>2868,\n22218=>2869,\n25376=>2870,\n33041=>2871,\n24700=>2872,\n38393=>2873,\n28118=>2874,\n21602=>2875,\n39297=>2876,\n20869=>2877,\n23273=>2878,\n33021=>2879,\n22958=>2880,\n38675=>2881,\n20522=>2882,\n27877=>2883,\n23612=>2884,\n25311=>2885,\n20320=>2886,\n21311=>2887,\n33147=>2888,\n36870=>2889,\n28346=>2890,\n34091=>2891,\n25288=>2892,\n24180=>2893,\n30910=>2894,\n25781=>2895,\n25467=>2896,\n24565=>2897,\n23064=>2898,\n37247=>2899,\n40479=>2900,\n23615=>2901,\n25423=>2902,\n32834=>2903,\n23421=>2904,\n21870=>2905,\n38218=>2906,\n38221=>2907,\n28037=>2908,\n24744=>2909,\n26592=>2910,\n29406=>2911,\n20957=>2912,\n23425=>2913,\n25319=>2914,\n27870=>2915,\n12124=>2916,\n29275=>2916,\n25197=>2917,\n38062=>2918,\n32445=>2919,\n33043=>2920,\n27987=>2921,\n20892=>2922,\n24324=>2923,\n22900=>2924,\n21162=>2925,\n24594=>2926,\n12069=>2927,\n22899=>2927,\n26262=>2928,\n34384=>2929,\n30111=>2930,\n25386=>2931,\n25062=>2932,\n31983=>2933,\n35834=>2934,\n21734=>2935,\n27431=>2936,\n40485=>2937,\n27572=>2938,\n34261=>2939,\n21589=>2940,\n20598=>2941,\n27812=>2942,\n21866=>2943,\n36276=>2944,\n29228=>2945,\n24085=>2946,\n24597=>2947,\n29750=>2948,\n25293=>2949,\n25490=>2950,\n29260=>2951,\n24472=>2952,\n28227=>2953,\n27966=>2954,\n25856=>2955,\n28504=>2956,\n30424=>2957,\n30928=>2958,\n30460=>2959,\n30036=>2960,\n21028=>2961,\n21467=>2962,\n20051=>2963,\n24222=>2964,\n26049=>2965,\n32810=>2966,\n32982=>2967,\n25243=>2968,\n21638=>2969,\n21032=>2970,\n28846=>2971,\n34957=>2972,\n36305=>2973,\n27873=>2974,\n21624=>2975,\n32986=>2976,\n22521=>2977,\n35060=>2978,\n36180=>2979,\n38506=>2980,\n37197=>2981,\n20329=>2982,\n27803=>2983,\n21943=>2984,\n30406=>2985,\n30768=>2986,\n25256=>2987,\n28921=>2988,\n28558=>2989,\n24429=>2990,\n34028=>2991,\n26842=>2992,\n30844=>2993,\n31735=>2994,\n33192=>2995,\n26379=>2996,\n40527=>2997,\n25447=>2998,\n30896=>2999,\n22383=>3000,\n30738=>3001,\n38713=>3002,\n25209=>3003,\n25259=>3004,\n21128=>3005,\n29749=>3006,\n27607=>3007,\n21860=>3008,\n33086=>3009,\n30130=>3010,\n12138=>3011,\n30382=>3011,\n21305=>3012,\n30174=>3013,\n20731=>3014,\n23617=>3015,\n35692=>3016,\n31687=>3017,\n20559=>3018,\n12122=>3019,\n29255=>3019,\n39575=>3020,\n39128=>3021,\n28418=>3022,\n29922=>3023,\n31080=>3024,\n25735=>3025,\n30629=>3026,\n25340=>3027,\n39057=>3028,\n36139=>3029,\n21697=>3030,\n32856=>3031,\n20050=>3032,\n22378=>3033,\n33529=>3034,\n33805=>3035,\n24179=>3036,\n20973=>3037,\n29942=>3038,\n35780=>3039,\n23631=>3040,\n22369=>3041,\n27900=>3042,\n39047=>3043,\n23110=>3044,\n30772=>3045,\n39748=>3046,\n36843=>3047,\n31893=>3048,\n21078=>3049,\n25169=>3050,\n38138=>3051,\n20166=>3052,\n33670=>3053,\n33889=>3054,\n33769=>3055,\n33970=>3056,\n22484=>3057,\n26420=>3058,\n22275=>3059,\n26222=>3060,\n28006=>3061,\n35889=>3062,\n26333=>3063,\n28689=>3064,\n26399=>3065,\n27450=>3066,\n26646=>3067,\n25114=>3068,\n22971=>3069,\n19971=>3070,\n20932=>3071,\n28422=>3072,\n26578=>3073,\n27791=>3074,\n20854=>3075,\n26827=>3076,\n22855=>3077,\n27495=>3078,\n30054=>3079,\n23822=>3080,\n33040=>3081,\n40784=>3082,\n26071=>3083,\n31048=>3084,\n31041=>3085,\n39569=>3086,\n36215=>3087,\n23682=>3088,\n20062=>3089,\n20225=>3090,\n21551=>3091,\n22865=>3092,\n30732=>3093,\n22120=>3094,\n12115=>3095,\n27668=>3095,\n36804=>3096,\n24323=>3097,\n27773=>3098,\n27875=>3099,\n35755=>3100,\n25488=>3101,\n24688=>3102,\n27965=>3103,\n29301=>3104,\n25190=>3105,\n38030=>3106,\n38085=>3107,\n21315=>3108,\n36801=>3109,\n31614=>3110,\n20191=>3111,\n35878=>3112,\n20094=>3113,\n40660=>3114,\n38065=>3115,\n38067=>3116,\n21069=>3117,\n28508=>3118,\n36963=>3119,\n27973=>3120,\n35892=>3121,\n22545=>3122,\n23884=>3123,\n12107=>3124,\n27424=>3124,\n27465=>3125,\n26538=>3126,\n21595=>3127,\n33108=>3128,\n32652=>3129,\n22681=>3130,\n34103=>3131,\n24378=>3132,\n25250=>3133,\n27207=>3134,\n38201=>3135,\n25970=>3136,\n24708=>3137,\n26725=>3138,\n30631=>3139,\n20052=>3140,\n20392=>3141,\n24039=>3142,\n38808=>3143,\n25772=>3144,\n32728=>3145,\n23789=>3146,\n20431=>3147,\n31373=>3148,\n20999=>3149,\n33540=>3150,\n19988=>3151,\n24623=>3152,\n31363=>3153,\n38054=>3154,\n20405=>3155,\n20146=>3156,\n31206=>3157,\n29748=>3158,\n21220=>3159,\n33465=>3160,\n25810=>3161,\n31165=>3162,\n23517=>3163,\n27777=>3164,\n38738=>3165,\n36731=>3166,\n27682=>3167,\n20542=>3168,\n21375=>3169,\n28165=>3170,\n25806=>3171,\n26228=>3172,\n27696=>3173,\n24773=>3174,\n39031=>3175,\n35831=>3176,\n24198=>3177,\n29756=>3178,\n31351=>3179,\n31179=>3180,\n19992=>3181,\n37041=>3182,\n29699=>3183,\n27714=>3184,\n22234=>3185,\n37195=>3186,\n27845=>3187,\n36235=>3188,\n21306=>3189,\n34502=>3190,\n26354=>3191,\n36527=>3192,\n23624=>3193,\n39537=>3194,\n28192=>3195,\n21462=>3196,\n23094=>3197,\n40843=>3198,\n36259=>3199,\n21435=>3200,\n22280=>3201,\n39079=>3202,\n26435=>3203,\n37275=>3204,\n27849=>3205,\n20840=>3206,\n30154=>3207,\n25331=>3208,\n12125=>3209,\n29356=>3209,\n21048=>3210,\n21149=>3211,\n32570=>3212,\n28820=>3213,\n30264=>3214,\n21364=>3215,\n40522=>3216,\n27063=>3217,\n30830=>3218,\n38592=>3219,\n35033=>3220,\n32676=>3221,\n28982=>3222,\n29123=>3223,\n20873=>3224,\n26579=>3225,\n29924=>3226,\n22756=>3227,\n25880=>3228,\n22199=>3229,\n35753=>3230,\n39286=>3231,\n25200=>3232,\n32469=>3233,\n24825=>3234,\n28909=>3235,\n22764=>3236,\n20161=>3237,\n12040=>3238,\n20154=>3238,\n24525=>3239,\n38887=>3240,\n20219=>3241,\n35748=>3242,\n20995=>3243,\n22922=>3244,\n32427=>3245,\n25172=>3246,\n20173=>3247,\n12103=>3248,\n26085=>3248,\n25102=>3249,\n33592=>3250,\n33993=>3251,\n33635=>3252,\n34701=>3253,\n29076=>3254,\n28342=>3255,\n23481=>3256,\n32466=>3257,\n20887=>3258,\n25545=>3259,\n26580=>3260,\n12161=>3261,\n32905=>3261,\n33593=>3262,\n34837=>3263,\n20754=>3264,\n23418=>3265,\n22914=>3266,\n36785=>3267,\n20083=>3268,\n27741=>3269,\n12042=>3270,\n20837=>3270,\n35109=>3271,\n36719=>3272,\n38446=>3273,\n34122=>3274,\n29790=>3275,\n38160=>3276,\n38384=>3277,\n28070=>3278,\n33509=>3279,\n24369=>3280,\n25746=>3281,\n27922=>3282,\n33832=>3283,\n33134=>3284,\n40131=>3285,\n22622=>3286,\n36187=>3287,\n19977=>3288,\n21441=>3289,\n20254=>3290,\n25955=>3291,\n26705=>3292,\n21971=>3293,\n20007=>3294,\n25620=>3295,\n39578=>3296,\n25195=>3297,\n23234=>3298,\n29791=>3299,\n12170=>3300,\n33394=>3300,\n28073=>3301,\n26862=>3302,\n20711=>3303,\n33678=>3304,\n30722=>3305,\n26432=>3306,\n21049=>3307,\n27801=>3308,\n32433=>3309,\n20667=>3310,\n21861=>3311,\n29022=>3312,\n31579=>3313,\n26194=>3314,\n29642=>3315,\n33515=>3316,\n26441=>3317,\n12077=>3318,\n23665=>3318,\n21024=>3319,\n29053=>3320,\n34923=>3321,\n38378=>3322,\n38485=>3323,\n25797=>3324,\n36193=>3325,\n33203=>3326,\n21892=>3327,\n27733=>3328,\n25159=>3329,\n32558=>3330,\n22674=>3331,\n20260=>3332,\n21830=>3333,\n36175=>3334,\n26188=>3335,\n19978=>3336,\n23578=>3337,\n35059=>3338,\n26786=>3339,\n25422=>3340,\n31245=>3341,\n28903=>3342,\n33421=>3343,\n21242=>3344,\n38902=>3345,\n23569=>3346,\n21736=>3347,\n37045=>3348,\n32461=>3349,\n22882=>3350,\n36170=>3351,\n34503=>3352,\n12166=>3353,\n33292=>3353,\n33293=>3354,\n36198=>3355,\n25668=>3356,\n23556=>3357,\n24913=>3358,\n28041=>3359,\n31038=>3360,\n35774=>3361,\n30775=>3362,\n30003=>3363,\n21627=>3364,\n20280=>3365,\n12189=>3366,\n36523=>3366,\n28145=>3367,\n23072=>3368,\n32453=>3369,\n31070=>3370,\n27784=>3371,\n23457=>3372,\n23158=>3373,\n29978=>3374,\n32958=>3375,\n24910=>3376,\n28183=>3377,\n22768=>3378,\n12131=>3379,\n29983=>3379,\n29989=>3380,\n29298=>3381,\n21319=>3382,\n32499=>3383,\n30465=>3384,\n30427=>3385,\n21097=>3386,\n32988=>3387,\n22307=>3388,\n24072=>3389,\n22833=>3390,\n29422=>3391,\n26045=>3392,\n28287=>3393,\n35799=>3394,\n12075=>3395,\n23608=>3395,\n34417=>3396,\n12055=>3397,\n21313=>3397,\n12143=>3398,\n30707=>3398,\n25342=>3399,\n26102=>3400,\n20160=>3401,\n12215=>3402,\n39135=>3402,\n34432=>3403,\n23454=>3404,\n35782=>3405,\n21490=>3406,\n12142=>3407,\n30690=>3407,\n20351=>3408,\n23630=>3409,\n39542=>3410,\n22987=>3411,\n24335=>3412,\n12144=>3413,\n31034=>3413,\n12064=>3414,\n22763=>3414,\n19990=>3415,\n26623=>3416,\n20107=>3417,\n25325=>3418,\n35475=>3419,\n36893=>3420,\n21183=>3421,\n26159=>3422,\n21980=>3423,\n22124=>3424,\n36866=>3425,\n20181=>3426,\n20365=>3427,\n37322=>3428,\n39280=>3429,\n12114=>3430,\n27663=>3430,\n24066=>3431,\n24643=>3432,\n23460=>3433,\n35270=>3434,\n35797=>3435,\n25910=>3436,\n12095=>3437,\n25163=>3437,\n12216=>3438,\n39318=>3438,\n23432=>3439,\n23551=>3440,\n25480=>3441,\n21806=>3442,\n21463=>3443,\n30246=>3444,\n20861=>3445,\n34092=>3446,\n26530=>3447,\n26803=>3448,\n27530=>3449,\n25234=>3450,\n36755=>3451,\n21460=>3452,\n33298=>3453,\n28113=>3454,\n30095=>3455,\n20070=>3456,\n36174=>3457,\n23408=>3458,\n29087=>3459,\n34223=>3460,\n26257=>3461,\n26329=>3462,\n32626=>3463,\n34560=>3464,\n12233=>3465,\n40653=>3465,\n12239=>3466,\n40736=>3466,\n23646=>3467,\n26415=>3468,\n36848=>3469,\n26641=>3470,\n26463=>3471,\n25101=>3472,\n31446=>3473,\n22661=>3474,\n24246=>3475,\n25968=>3476,\n28465=>3477,\n24661=>3478,\n21047=>3479,\n32781=>3480,\n25684=>3481,\n34928=>3482,\n29993=>3483,\n24069=>3484,\n26643=>3485,\n25332=>3486,\n38684=>3487,\n21452=>3488,\n29245=>3489,\n35841=>3490,\n12116=>3491,\n27700=>3491,\n30561=>3492,\n31246=>3493,\n21550=>3494,\n30636=>3495,\n39034=>3496,\n33308=>3497,\n35828=>3498,\n30805=>3499,\n26388=>3500,\n28865=>3501,\n26031=>3502,\n25749=>3503,\n22070=>3504,\n24605=>3505,\n31169=>3506,\n21496=>3507,\n19997=>3508,\n27515=>3509,\n32902=>3510,\n23546=>3511,\n21987=>3512,\n22235=>3513,\n20282=>3514,\n20284=>3515,\n39282=>3516,\n24051=>3517,\n26494=>3518,\n32824=>3519,\n24578=>3520,\n39042=>3521,\n36865=>3522,\n23435=>3523,\n35772=>3524,\n35829=>3525,\n25628=>3526,\n33368=>3527,\n25822=>3528,\n22013=>3529,\n33487=>3530,\n37221=>3531,\n20439=>3532,\n32032=>3533,\n36895=>3534,\n31903=>3535,\n20723=>3536,\n22609=>3537,\n28335=>3538,\n23487=>3539,\n35785=>3540,\n32899=>3541,\n37240=>3542,\n33948=>3543,\n31639=>3544,\n34429=>3545,\n38539=>3546,\n38543=>3547,\n32485=>3548,\n39635=>3549,\n30862=>3550,\n23681=>3551,\n31319=>3552,\n36930=>3553,\n38567=>3554,\n31071=>3555,\n23385=>3556,\n25439=>3557,\n31499=>3558,\n34001=>3559,\n26797=>3560,\n21766=>3561,\n32553=>3562,\n29712=>3563,\n32034=>3564,\n38145=>3565,\n25152=>3566,\n22604=>3567,\n20182=>3568,\n23427=>3569,\n22905=>3570,\n22612=>3571,\n29549=>3572,\n25374=>3573,\n36427=>3574,\n36367=>3575,\n32974=>3576,\n33492=>3577,\n25260=>3578,\n21488=>3579,\n27888=>3580,\n37214=>3581,\n22826=>3582,\n24577=>3583,\n27760=>3584,\n22349=>3585,\n25674=>3586,\n36138=>3587,\n30251=>3588,\n28393=>3589,\n22363=>3590,\n27264=>3591,\n30192=>3592,\n28525=>3593,\n35885=>3594,\n35848=>3595,\n22374=>3596,\n27631=>3597,\n34962=>3598,\n30899=>3599,\n25506=>3600,\n21497=>3601,\n28845=>3602,\n27748=>3603,\n22616=>3604,\n25642=>3605,\n22530=>3606,\n26848=>3607,\n33179=>3608,\n21776=>3609,\n31958=>3610,\n20504=>3611,\n36538=>3612,\n28108=>3613,\n36255=>3614,\n28907=>3615,\n25487=>3616,\n28059=>3617,\n28372=>3618,\n32486=>3619,\n33796=>3620,\n26691=>3621,\n36867=>3622,\n28120=>3623,\n38518=>3624,\n35752=>3625,\n22871=>3626,\n29305=>3627,\n34276=>3628,\n33150=>3629,\n30140=>3630,\n35466=>3631,\n26799=>3632,\n21076=>3633,\n36386=>3634,\n38161=>3635,\n25552=>3636,\n39064=>3637,\n36420=>3638,\n21884=>3639,\n20307=>3640,\n26367=>3641,\n22159=>3642,\n24789=>3643,\n28053=>3644,\n21059=>3645,\n23625=>3646,\n22825=>3647,\n28155=>3648,\n22635=>3649,\n12133=>3650,\n30000=>3650,\n29980=>3651,\n24684=>3652,\n33300=>3653,\n33094=>3654,\n25361=>3655,\n26465=>3656,\n36834=>3657,\n30522=>3658,\n36339=>3659,\n36148=>3660,\n38081=>3661,\n24086=>3662,\n21381=>3663,\n21548=>3664,\n28867=>3665,\n27712=>3666,\n24311=>3667,\n20572=>3668,\n20141=>3669,\n24237=>3670,\n25402=>3671,\n33351=>3672,\n36890=>3673,\n26704=>3674,\n37230=>3675,\n30643=>3676,\n21516=>3677,\n38108=>3678,\n24420=>3679,\n31461=>3680,\n26742=>3681,\n25413=>3682,\n31570=>3683,\n32479=>3684,\n30171=>3685,\n20599=>3686,\n25237=>3687,\n22836=>3688,\n36879=>3689,\n20984=>3690,\n31171=>3691,\n31361=>3692,\n22270=>3693,\n24466=>3694,\n36884=>3695,\n28034=>3696,\n23648=>3697,\n12063=>3698,\n22303=>3698,\n21520=>3699,\n20820=>3700,\n28237=>3701,\n22242=>3702,\n25512=>3703,\n39059=>3704,\n33151=>3705,\n34581=>3706,\n35114=>3707,\n36864=>3708,\n21534=>3709,\n23663=>3710,\n33216=>3711,\n25302=>3712,\n25176=>3713,\n33073=>3714,\n40501=>3715,\n38464=>3716,\n39534=>3717,\n39548=>3718,\n26925=>3719,\n22949=>3720,\n25299=>3721,\n21822=>3722,\n25366=>3723,\n21703=>3724,\n34521=>3725,\n27964=>3726,\n23043=>3727,\n12129=>3728,\n29926=>3728,\n34972=>3729,\n27498=>3730,\n22806=>3731,\n35916=>3732,\n24367=>3733,\n28286=>3734,\n29609=>3735,\n39037=>3736,\n20024=>3737,\n28919=>3738,\n23436=>3739,\n30871=>3740,\n25405=>3741,\n26202=>3742,\n30358=>3743,\n24779=>3744,\n23451=>3745,\n23113=>3746,\n19975=>3747,\n33109=>3748,\n27754=>3749,\n29579=>3750,\n20129=>3751,\n26505=>3752,\n12153=>3753,\n32593=>3753,\n24448=>3754,\n26106=>3755,\n26395=>3756,\n24536=>3757,\n22916=>3758,\n23041=>3759,\n24013=>3760,\n24494=>3761,\n21361=>3762,\n38886=>3763,\n36829=>3764,\n26693=>3765,\n22260=>3766,\n21807=>3767,\n24799=>3768,\n20026=>3769,\n28493=>3770,\n32500=>3771,\n33479=>3772,\n33806=>3773,\n22996=>3774,\n20255=>3775,\n20266=>3776,\n23614=>3777,\n32428=>3778,\n26410=>3779,\n34074=>3780,\n21619=>3781,\n30031=>3782,\n32963=>3783,\n21890=>3784,\n39759=>3785,\n20301=>3786,\n28205=>3787,\n35859=>3788,\n23561=>3789,\n24944=>3790,\n21355=>3791,\n30239=>3792,\n28201=>3793,\n34442=>3794,\n12098=>3795,\n25991=>3795,\n38395=>3796,\n32441=>3797,\n21563=>3798,\n31283=>3799,\n32010=>3800,\n38382=>3801,\n21985=>3802,\n32705=>3803,\n29934=>3804,\n25373=>3805,\n34583=>3806,\n28065=>3807,\n31389=>3808,\n25105=>3809,\n26017=>3810,\n21351=>3811,\n25569=>3812,\n27779=>3813,\n24043=>3814,\n21596=>3815,\n38056=>3816,\n20044=>3817,\n27745=>3818,\n35820=>3819,\n23627=>3820,\n12102=>3821,\n26080=>3821,\n33436=>3822,\n26791=>3823,\n21566=>3824,\n21556=>3825,\n12111=>3826,\n27595=>3826,\n27494=>3827,\n20116=>3828,\n25410=>3829,\n21320=>3830,\n33310=>3831,\n20237=>3832,\n20398=>3833,\n22366=>3834,\n25098=>3835,\n38654=>3836,\n26212=>3837,\n29289=>3838,\n21247=>3839,\n21153=>3840,\n24735=>3841,\n35823=>3842,\n26132=>3843,\n29081=>3844,\n26512=>3845,\n35199=>3846,\n30802=>3847,\n30717=>3848,\n26224=>3849,\n22075=>3850,\n21560=>3851,\n38177=>3852,\n29306=>3853,\n31232=>3854,\n24687=>3855,\n24076=>3856,\n24713=>3857,\n33181=>3858,\n12067=>3859,\n22805=>3859,\n24796=>3860,\n29060=>3861,\n28911=>3862,\n28330=>3863,\n27728=>3864,\n29312=>3865,\n27268=>3866,\n34989=>3867,\n24109=>3868,\n20064=>3869,\n23219=>3870,\n21916=>3871,\n38115=>3872,\n27927=>3873,\n31995=>3874,\n38553=>3875,\n25103=>3876,\n32454=>3877,\n30606=>3878,\n34430=>3879,\n21283=>3880,\n38686=>3881,\n36758=>3882,\n26247=>3883,\n23777=>3884,\n20384=>3885,\n29421=>3886,\n19979=>3887,\n21414=>3888,\n22799=>3889,\n21523=>3890,\n25472=>3891,\n38184=>3892,\n20808=>3893,\n20185=>3894,\n40092=>3895,\n32420=>3896,\n21688=>3897,\n36132=>3898,\n34900=>3899,\n33335=>3900,\n38386=>3901,\n28046=>3902,\n24358=>3903,\n23244=>3904,\n26174=>3905,\n38505=>3906,\n29616=>3907,\n29486=>3908,\n21439=>3909,\n33146=>3910,\n39301=>3911,\n32673=>3912,\n23466=>3913,\n38519=>3914,\n38480=>3915,\n32447=>3916,\n30456=>3917,\n21410=>3918,\n38262=>3919,\n12217=>3920,\n39321=>3920,\n31665=>3921,\n35140=>3922,\n28248=>3923,\n20065=>3924,\n32724=>3925,\n31077=>3926,\n35814=>3927,\n24819=>3928,\n21709=>3929,\n20139=>3930,\n39033=>3931,\n24055=>3932,\n27233=>3933,\n20687=>3934,\n21521=>3935,\n35937=>3936,\n33831=>3937,\n30813=>3938,\n38660=>3939,\n21066=>3940,\n21742=>3941,\n22179=>3942,\n38144=>3943,\n28040=>3944,\n23477=>3945,\n28102=>3946,\n26195=>3947,\n12073=>3948,\n23567=>3948,\n23389=>3949,\n26657=>3950,\n32918=>3951,\n21880=>3952,\n31505=>3953,\n25928=>3954,\n26964=>3955,\n20123=>3956,\n27463=>3957,\n34638=>3958,\n38795=>3959,\n21327=>3960,\n25375=>3961,\n25658=>3962,\n37034=>3963,\n26012=>3964,\n32961=>3965,\n35856=>3966,\n20889=>3967,\n26800=>3968,\n21368=>3969,\n34809=>3970,\n25032=>3971,\n27844=>3972,\n27899=>3973,\n35874=>3974,\n23633=>3975,\n34218=>3976,\n33455=>3977,\n38156=>3978,\n27427=>3979,\n12191=>3980,\n36763=>3980,\n26032=>3981,\n24571=>3982,\n12092=>3983,\n24515=>3983,\n20449=>3984,\n34885=>3985,\n26143=>3986,\n33125=>3987,\n29481=>3988,\n24826=>3989,\n20852=>3990,\n21009=>3991,\n22411=>3992,\n24418=>3993,\n37026=>3994,\n12175=>3995,\n34892=>3995,\n37266=>3996,\n24184=>3997,\n26447=>3998,\n24615=>3999,\n22995=>4000,\n20804=>4001,\n20982=>4002,\n33016=>4003,\n21256=>4004,\n27769=>4005,\n38596=>4006,\n29066=>4007,\n20241=>4008,\n20462=>4009,\n32670=>4010,\n26429=>4011,\n21957=>4012,\n38152=>4013,\n31168=>4014,\n34966=>4015,\n32483=>4016,\n22687=>4017,\n25100=>4018,\n38656=>4019,\n34394=>4020,\n22040=>4021,\n39035=>4022,\n24464=>4023,\n35768=>4024,\n33988=>4025,\n37207=>4026,\n21465=>4027,\n26093=>4028,\n24207=>4029,\n30044=>4030,\n24676=>4031,\n32110=>4032,\n23167=>4033,\n32490=>4034,\n32493=>4035,\n36713=>4036,\n21927=>4037,\n23459=>4038,\n24748=>4039,\n26059=>4040,\n12126=>4041,\n29572=>4041,\n36873=>4042,\n30307=>4043,\n30505=>4044,\n32474=>4045,\n38772=>4046,\n34203=>4047,\n23398=>4048,\n12147=>4049,\n31348=>4049,\n38634=>4050,\n12174=>4051,\n34880=>4051,\n21195=>4052,\n29071=>4053,\n24490=>4054,\n26092=>4055,\n35810=>4056,\n23547=>4057,\n39535=>4058,\n24033=>4059,\n27529=>4060,\n27739=>4061,\n35757=>4062,\n35759=>4063,\n36874=>4064,\n36805=>4065,\n21387=>4066,\n25276=>4067,\n40486=>4068,\n40493=>4069,\n21568=>4070,\n20011=>4071,\n33469=>4072,\n12123=>4073,\n29273=>4073,\n34460=>4074,\n23830=>4075,\n34905=>4076,\n28079=>4077,\n38597=>4078,\n21713=>4079,\n20122=>4080,\n35766=>4081,\n28937=>4082,\n21693=>4083,\n38409=>4084,\n28895=>4085,\n28153=>4086,\n30416=>4087,\n20005=>4088,\n30740=>4089,\n34578=>4090,\n23721=>4091,\n24310=>4092,\n12180=>4093,\n35328=>4093,\n39068=>4094,\n38414=>4095,\n28814=>4096,\n27839=>4097,\n22852=>4098,\n25513=>4099,\n30524=>4100,\n34893=>4101,\n28436=>4102,\n33395=>4103,\n22576=>4104,\n29141=>4105,\n21388=>4106,\n30746=>4107,\n38593=>4108,\n21761=>4109,\n24422=>4110,\n28976=>4111,\n23476=>4112,\n35866=>4113,\n39564=>4114,\n27523=>4115,\n22830=>4116,\n40495=>4117,\n31207=>4118,\n26472=>4119,\n25196=>4120,\n20335=>4121,\n30113=>4122,\n12154=>4123,\n32650=>4123,\n27915=>4124,\n38451=>4125,\n27687=>4126,\n20208=>4127,\n30162=>4128,\n20859=>4129,\n26679=>4130,\n28478=>4131,\n36992=>4132,\n33136=>4133,\n22934=>4134,\n29814=>4135,\n25671=>4136,\n23591=>4137,\n36965=>4138,\n31377=>4139,\n35875=>4140,\n23002=>4141,\n21676=>4142,\n33280=>4143,\n33647=>4144,\n35201=>4145,\n32768=>4146,\n26928=>4147,\n22094=>4148,\n32822=>4149,\n29239=>4150,\n37326=>4151,\n20918=>4152,\n20063=>4153,\n39029=>4154,\n25494=>4155,\n19994=>4156,\n21494=>4157,\n26355=>4158,\n33099=>4159,\n22812=>4160,\n28082=>4161,\n12032=>4162,\n19968=>4162,\n22777=>4163,\n21307=>4164,\n25558=>4165,\n38129=>4166,\n20381=>4167,\n20234=>4168,\n12176=>4169,\n34915=>4169,\n39056=>4170,\n22839=>4171,\n36951=>4172,\n31227=>4173,\n20202=>4174,\n33008=>4175,\n30097=>4176,\n27778=>4177,\n23452=>4178,\n23016=>4179,\n24413=>4180,\n26885=>4181,\n34433=>4182,\n20506=>4183,\n24050=>4184,\n12036=>4185,\n20057=>4185,\n30691=>4186,\n20197=>4187,\n33402=>4188,\n25233=>4189,\n26131=>4190,\n12194=>4191,\n37009=>4191,\n23673=>4192,\n20159=>4193,\n24441=>4194,\n33222=>4195,\n36920=>4196,\n32900=>4197,\n30123=>4198,\n20134=>4199,\n35028=>4200,\n24847=>4201,\n27589=>4202,\n24518=>4203,\n20041=>4204,\n30410=>4205,\n28322=>4206,\n35811=>4207,\n35758=>4208,\n35850=>4209,\n35793=>4210,\n24322=>4211,\n32764=>4212,\n32716=>4213,\n32462=>4214,\n33589=>4215,\n33643=>4216,\n22240=>4217,\n27575=>4218,\n12211=>4219,\n38899=>4219,\n38452=>4220,\n23035=>4221,\n21535=>4222,\n38134=>4223,\n28139=>4224,\n23493=>4225,\n39278=>4226,\n23609=>4227,\n24341=>4228,\n38544=>4229,\n21360=>4230,\n33521=>4231,\n27185=>4232,\n23156=>4233,\n40560=>4234,\n24212=>4235,\n32552=>4236,\n33721=>4237,\n33828=>4238,\n33829=>4239,\n33639=>4240,\n34631=>4241,\n36814=>4242,\n36194=>4243,\n30408=>4244,\n24433=>4245,\n39062=>4246,\n30828=>4247,\n26144=>4248,\n21727=>4249,\n25317=>4250,\n20323=>4251,\n33219=>4252,\n30152=>4253,\n24248=>4254,\n38605=>4255,\n36362=>4256,\n34553=>4257,\n21647=>4258,\n27891=>4259,\n28044=>4260,\n27704=>4261,\n24703=>4262,\n21191=>4263,\n12132=>4264,\n29992=>4264,\n24189=>4265,\n20248=>4266,\n24736=>4267,\n24551=>4268,\n23588=>4269,\n30001=>4270,\n37038=>4271,\n38080=>4272,\n29369=>4273,\n27833=>4274,\n28216=>4275,\n12195=>4276,\n37193=>4276,\n26377=>4277,\n21451=>4278,\n21491=>4279,\n20305=>4280,\n37321=>4281,\n35825=>4282,\n12060=>4283,\n21448=>4283,\n24188=>4284,\n36802=>4285,\n28132=>4286,\n20110=>4287,\n30402=>4288,\n27014=>4289,\n34398=>4290,\n24858=>4291,\n33286=>4292,\n20313=>4293,\n20446=>4294,\n36926=>4295,\n40060=>4296,\n24841=>4297,\n28189=>4298,\n28180=>4299,\n38533=>4300,\n20104=>4301,\n23089=>4302,\n12204=>4303,\n38632=>4303,\n19982=>4304,\n23679=>4305,\n31161=>4306,\n23431=>4307,\n35821=>4308,\n12155=>4309,\n32701=>4309,\n12127=>4310,\n29577=>4310,\n22495=>4311,\n33419=>4312,\n37057=>4313,\n21505=>4314,\n36935=>4315,\n21947=>4316,\n23786=>4317,\n24481=>4318,\n24840=>4319,\n27442=>4320,\n29425=>4321,\n32946=>4322,\n35465=>4323,\n28020=>4324,\n23507=>4325,\n35029=>4326,\n39044=>4327,\n35947=>4328,\n39533=>4329,\n40499=>4330,\n28170=>4331,\n20900=>4332,\n20803=>4333,\n22435=>4334,\n34945=>4335,\n21407=>4336,\n25588=>4337,\n36757=>4338,\n22253=>4339,\n21592=>4340,\n22278=>4341,\n29503=>4342,\n28304=>4343,\n32536=>4344,\n36828=>4345,\n33489=>4346,\n24895=>4347,\n24616=>4348,\n38498=>4349,\n12104=>4350,\n26352=>4350,\n32422=>4351,\n36234=>4352,\n36291=>4353,\n38053=>4354,\n23731=>4355,\n31908=>4356,\n12105=>4357,\n26376=>4357,\n24742=>4358,\n38405=>4359,\n32792=>4360,\n20113=>4361,\n37095=>4362,\n21248=>4363,\n38504=>4364,\n20801=>4365,\n36816=>4366,\n34164=>4367,\n37213=>4368,\n26197=>4369,\n38901=>4370,\n23381=>4371,\n21277=>4372,\n30776=>4373,\n26434=>4374,\n26685=>4375,\n21705=>4376,\n28798=>4377,\n23472=>4378,\n36733=>4379,\n20877=>4380,\n22312=>4381,\n21681=>4382,\n25874=>4383,\n26242=>4384,\n36190=>4385,\n36163=>4386,\n33039=>4387,\n33900=>4388,\n36973=>4389,\n31967=>4390,\n20991=>4391,\n34299=>4392,\n26531=>4393,\n26089=>4394,\n28577=>4395,\n34468=>4396,\n36481=>4397,\n22122=>4398,\n36896=>4399,\n30338=>4400,\n28790=>4401,\n29157=>4402,\n36131=>4403,\n25321=>4404,\n21017=>4405,\n27901=>4406,\n36156=>4407,\n24590=>4408,\n22686=>4409,\n24974=>4410,\n26366=>4411,\n36192=>4412,\n25166=>4413,\n21939=>4414,\n28195=>4415,\n26413=>4416,\n36711=>4417,\n38113=>4418,\n38392=>4419,\n30504=>4420,\n26629=>4421,\n27048=>4422,\n21643=>4423,\n20045=>4424,\n28856=>4425,\n35784=>4426,\n25688=>4427,\n25995=>4428,\n23429=>4429,\n31364=>4430,\n20538=>4431,\n23528=>4432,\n30651=>4433,\n27617=>4434,\n35449=>4435,\n31896=>4436,\n27838=>4437,\n30415=>4438,\n26025=>4439,\n36759=>4440,\n23853=>4441,\n23637=>4442,\n34360=>4443,\n26632=>4444,\n21344=>4445,\n25112=>4446,\n31449=>4447,\n28251=>4448,\n32509=>4449,\n27167=>4450,\n31456=>4451,\n24432=>4452,\n28467=>4453,\n24352=>4454,\n25484=>4455,\n28072=>4456,\n26454=>4457,\n19976=>4458,\n24080=>4459,\n36134=>4460,\n20183=>4461,\n32960=>4462,\n30260=>4463,\n38556=>4464,\n25307=>4465,\n26157=>4466,\n25214=>4467,\n27836=>4468,\n36213=>4469,\n29031=>4470,\n32617=>4471,\n20806=>4472,\n32903=>4473,\n21484=>4474,\n36974=>4475,\n25240=>4476,\n21746=>4477,\n34544=>4478,\n36761=>4479,\n32773=>4480,\n38167=>4481,\n34071=>4482,\n36825=>4483,\n27993=>4484,\n29645=>4485,\n26015=>4486,\n30495=>4487,\n29956=>4488,\n30759=>4489,\n33275=>4490,\n36126=>4491,\n38024=>4492,\n20390=>4493,\n26517=>4494,\n30137=>4495,\n35786=>4496,\n38663=>4497,\n25391=>4498,\n38215=>4499,\n38453=>4500,\n33976=>4501,\n25379=>4502,\n30529=>4503,\n24449=>4504,\n29424=>4505,\n20105=>4506,\n24596=>4507,\n25972=>4508,\n25327=>4509,\n27491=>4510,\n25919=>4511,\n24103=>4512,\n30151=>4513,\n37073=>4514,\n35777=>4515,\n33437=>4516,\n26525=>4517,\n12096=>4518,\n25903=>4518,\n21553=>4519,\n34584=>4520,\n30693=>4521,\n32930=>4522,\n33026=>4523,\n27713=>4524,\n20043=>4525,\n32455=>4526,\n32844=>4527,\n30452=>4528,\n26893=>4529,\n27542=>4530,\n25191=>4531,\n20540=>4532,\n20356=>4533,\n22336=>4534,\n25351=>4535,\n12108=>4536,\n27490=>4536,\n36286=>4537,\n21482=>4538,\n26088=>4539,\n32440=>4540,\n24535=>4541,\n25370=>4542,\n25527=>4543,\n12164=>4544,\n33267=>4544,\n33268=>4545,\n32622=>4546,\n24092=>4547,\n23769=>4548,\n21046=>4549,\n26234=>4550,\n31209=>4551,\n31258=>4552,\n36136=>4553,\n28825=>4554,\n30164=>4555,\n28382=>4556,\n27835=>4557,\n31378=>4558,\n20013=>4559,\n30405=>4560,\n24544=>4561,\n38047=>4562,\n34935=>4563,\n32456=>4564,\n31181=>4565,\n32959=>4566,\n37325=>4567,\n20210=>4568,\n20247=>4569,\n12168=>4570,\n33311=>4570,\n21608=>4571,\n24030=>4572,\n27954=>4573,\n35788=>4574,\n31909=>4575,\n36724=>4576,\n32920=>4577,\n24090=>4578,\n21650=>4579,\n30385=>4580,\n23449=>4581,\n26172=>4582,\n39588=>4583,\n29664=>4584,\n26666=>4585,\n34523=>4586,\n26417=>4587,\n29482=>4588,\n35832=>4589,\n35803=>4590,\n36880=>4591,\n12149=>4592,\n31481=>4592,\n28891=>4593,\n29038=>4594,\n25284=>4595,\n30633=>4596,\n22065=>4597,\n20027=>4598,\n33879=>4599,\n26609=>4600,\n21161=>4601,\n34496=>4602,\n36142=>4603,\n38136=>4604,\n31569=>4605,\n20303=>4606,\n27880=>4607,\n31069=>4608,\n39547=>4609,\n25235=>4610,\n12118=>4611,\n29226=>4611,\n25341=>4612,\n19987=>4613,\n30742=>4614,\n36716=>4615,\n25776=>4616,\n36186=>4617,\n31686=>4618,\n26729=>4619,\n24196=>4620,\n35013=>4621,\n22918=>4622,\n25758=>4623,\n22766=>4624,\n29366=>4625,\n26894=>4626,\n38181=>4627,\n36861=>4628,\n36184=>4629,\n22368=>4630,\n32512=>4631,\n35846=>4632,\n20934=>4633,\n25417=>4634,\n25305=>4635,\n21331=>4636,\n26700=>4637,\n29730=>4638,\n33537=>4639,\n37196=>4640,\n21828=>4641,\n30528=>4642,\n28796=>4643,\n27978=>4644,\n20857=>4645,\n21672=>4646,\n36164=>4647,\n23039=>4648,\n28363=>4649,\n28100=>4650,\n23388=>4651,\n32043=>4652,\n20180=>4653,\n31869=>4654,\n28371=>4655,\n12070=>4656,\n23376=>4656,\n12163=>4657,\n33258=>4657,\n28173=>4658,\n23383=>4659,\n39683=>4660,\n26837=>4661,\n36394=>4662,\n23447=>4663,\n32508=>4664,\n24635=>4665,\n32437=>4666,\n37049=>4667,\n12187=>4668,\n36208=>4668,\n22863=>4669,\n25549=>4670,\n31199=>4671,\n12188=>4672,\n36275=>4672,\n21330=>4673,\n26063=>4674,\n31062=>4675,\n35781=>4676,\n38459=>4677,\n32452=>4678,\n38075=>4679,\n32386=>4680,\n22068=>4681,\n37257=>4682,\n26368=>4683,\n32618=>4684,\n23562=>4685,\n36981=>4686,\n26152=>4687,\n24038=>4688,\n20304=>4689,\n26590=>4690,\n20570=>4691,\n20316=>4692,\n22352=>4693,\n24231=>4694,\n20109=>4695,\n19980=>4696,\n20800=>4697,\n64012=>4697,\n19984=>4698,\n24319=>4699,\n21317=>4700,\n19989=>4701,\n20120=>4702,\n19998=>4703,\n12224=>4704,\n39730=>4704,\n23404=>4705,\n22121=>4706,\n12033=>4707,\n20008=>4707,\n31162=>4708,\n12035=>4709,\n20031=>4709,\n12052=>4710,\n21269=>4710,\n20039=>4711,\n22829=>4712,\n12120=>4713,\n29243=>4713,\n21358=>4714,\n27664=>4715,\n22239=>4716,\n32996=>4717,\n39319=>4718,\n27603=>4719,\n30590=>4720,\n40727=>4721,\n12034=>4722,\n20022=>4722,\n20127=>4723,\n40720=>4724,\n20060=>4725,\n20073=>4726,\n20115=>4727,\n33416=>4728,\n23387=>4729,\n21868=>4730,\n22031=>4731,\n20164=>4732,\n21389=>4733,\n21405=>4734,\n21411=>4735,\n21413=>4736,\n21422=>4737,\n38757=>4738,\n36189=>4739,\n12053=>4740,\n21274=>4740,\n21493=>4741,\n21286=>4742,\n21294=>4743,\n21310=>4744,\n36188=>4745,\n21350=>4746,\n21347=>4747,\n20994=>4748,\n21000=>4749,\n21006=>4750,\n21037=>4751,\n21043=>4752,\n21055=>4753,\n21056=>4754,\n21068=>4755,\n21086=>4756,\n21089=>4757,\n21084=>4758,\n33967=>4759,\n21117=>4760,\n21122=>4761,\n21121=>4762,\n21136=>4763,\n21139=>4764,\n12044=>4765,\n20866=>4765,\n32596=>4766,\n20155=>4767,\n20163=>4768,\n20169=>4769,\n20162=>4770,\n20200=>4771,\n20193=>4772,\n20203=>4773,\n20190=>4774,\n20251=>4775,\n20211=>4776,\n20258=>4777,\n20324=>4778,\n20213=>4779,\n20261=>4780,\n20263=>4781,\n20233=>4782,\n20267=>4783,\n20318=>4784,\n20327=>4785,\n25912=>4786,\n20314=>4787,\n20317=>4788,\n20319=>4789,\n20311=>4790,\n20274=>4791,\n20285=>4792,\n20342=>4793,\n20340=>4794,\n20369=>4795,\n20361=>4796,\n20355=>4797,\n20367=>4798,\n20350=>4799,\n20347=>4800,\n20394=>4801,\n20348=>4802,\n20396=>4803,\n20372=>4804,\n20454=>4805,\n20456=>4806,\n20458=>4807,\n20421=>4808,\n20442=>4809,\n20451=>4810,\n20444=>4811,\n20433=>4812,\n20447=>4813,\n20472=>4814,\n20521=>4815,\n20556=>4816,\n20467=>4817,\n20524=>4818,\n20495=>4819,\n20526=>4820,\n20525=>4821,\n20478=>4822,\n20508=>4823,\n20492=>4824,\n20517=>4825,\n20520=>4826,\n20606=>4827,\n20547=>4828,\n20565=>4829,\n20552=>4830,\n20558=>4831,\n20588=>4832,\n20603=>4833,\n20645=>4834,\n20647=>4835,\n20649=>4836,\n20666=>4837,\n20694=>4838,\n20742=>4839,\n20717=>4840,\n20716=>4841,\n20710=>4842,\n20718=>4843,\n20743=>4844,\n20747=>4845,\n20189=>4846,\n27709=>4847,\n20312=>4848,\n20325=>4849,\n20430=>4850,\n12245=>4851,\n40864=>4851,\n27718=>4852,\n31860=>4853,\n20846=>4854,\n24061=>4855,\n40649=>4856,\n39320=>4857,\n20865=>4858,\n22804=>4859,\n12051=>4860,\n21241=>4860,\n21261=>4861,\n35335=>4862,\n21264=>4863,\n20971=>4864,\n22809=>4865,\n20821=>4866,\n12039=>4867,\n20128=>4867,\n20822=>4868,\n20147=>4869,\n34926=>4870,\n34980=>4871,\n20149=>4872,\n33044=>4873,\n35026=>4874,\n31104=>4875,\n23348=>4876,\n34819=>4877,\n32696=>4878,\n12046=>4879,\n20907=>4879,\n20913=>4880,\n20925=>4881,\n20924=>4882,\n20935=>4883,\n12045=>4884,\n20886=>4884,\n20898=>4885,\n20901=>4886,\n35744=>4887,\n35750=>4888,\n35751=>4889,\n35754=>4890,\n35764=>4891,\n35765=>4892,\n35767=>4893,\n35778=>4894,\n35779=>4895,\n35787=>4896,\n35791=>4897,\n35790=>4898,\n35794=>4899,\n35795=>4900,\n35796=>4901,\n35798=>4902,\n35800=>4903,\n35801=>4904,\n35804=>4905,\n35807=>4906,\n35808=>4907,\n35812=>4908,\n35816=>4909,\n35817=>4910,\n35822=>4911,\n35824=>4912,\n35827=>4913,\n35830=>4914,\n35833=>4915,\n35836=>4916,\n35839=>4917,\n35840=>4918,\n35842=>4919,\n35844=>4920,\n35847=>4921,\n35852=>4922,\n35855=>4923,\n35857=>4924,\n35858=>4925,\n35860=>4926,\n35861=>4927,\n35862=>4928,\n35865=>4929,\n35867=>4930,\n35864=>4931,\n35869=>4932,\n35871=>4933,\n35872=>4934,\n35873=>4935,\n35877=>4936,\n35879=>4937,\n35882=>4938,\n35883=>4939,\n35886=>4940,\n35887=>4941,\n35890=>4942,\n35891=>4943,\n35893=>4944,\n35894=>4945,\n12057=>4946,\n21353=>4946,\n21370=>4947,\n38429=>4948,\n38434=>4949,\n38433=>4950,\n38449=>4951,\n38442=>4952,\n38461=>4953,\n38460=>4954,\n38466=>4955,\n38473=>4956,\n38484=>4957,\n38495=>4958,\n38503=>4959,\n38508=>4960,\n38514=>4961,\n38516=>4962,\n38536=>4963,\n38541=>4964,\n38551=>4965,\n38576=>4966,\n37015=>4967,\n37019=>4968,\n37021=>4969,\n37017=>4970,\n37036=>4971,\n37025=>4972,\n37044=>4973,\n37043=>4974,\n37046=>4975,\n37050=>4976,\n37048=>4977,\n37040=>4978,\n37071=>4979,\n37061=>4980,\n37054=>4981,\n37072=>4982,\n37060=>4983,\n37063=>4984,\n37075=>4985,\n37094=>4986,\n37090=>4987,\n37084=>4988,\n37079=>4989,\n37083=>4990,\n37099=>4991,\n37103=>4992,\n37118=>4993,\n37124=>4994,\n37154=>4995,\n37150=>4996,\n37155=>4997,\n37169=>4998,\n37167=>4999,\n37177=>5000,\n37187=>5001,\n37190=>5002,\n21005=>5003,\n22850=>5004,\n21154=>5005,\n21164=>5006,\n21165=>5007,\n21182=>5008,\n21759=>5009,\n21200=>5010,\n21206=>5011,\n21232=>5012,\n21471=>5013,\n29166=>5014,\n30669=>5015,\n12085=>5016,\n24308=>5016,\n12048=>5017,\n20981=>5017,\n20988=>5018,\n12223=>5019,\n39727=>5019,\n12059=>5020,\n21430=>5020,\n24321=>5021,\n30042=>5022,\n24047=>5023,\n22348=>5024,\n22441=>5025,\n22433=>5026,\n22654=>5027,\n22716=>5028,\n22725=>5029,\n22737=>5030,\n22313=>5031,\n22316=>5032,\n22314=>5033,\n22323=>5034,\n22329=>5035,\n22318=>5036,\n22319=>5037,\n22364=>5038,\n22331=>5039,\n22338=>5040,\n22377=>5041,\n22405=>5042,\n22379=>5043,\n22406=>5044,\n22396=>5045,\n22395=>5046,\n22376=>5047,\n22381=>5048,\n22390=>5049,\n22387=>5050,\n22445=>5051,\n22436=>5052,\n22412=>5053,\n22450=>5054,\n22479=>5055,\n22439=>5056,\n22452=>5057,\n22419=>5058,\n22432=>5059,\n22485=>5060,\n22488=>5061,\n22490=>5062,\n22489=>5063,\n22482=>5064,\n22456=>5065,\n22516=>5066,\n22511=>5067,\n22520=>5068,\n22500=>5069,\n22493=>5070,\n22539=>5071,\n22541=>5072,\n22525=>5073,\n22509=>5074,\n22528=>5075,\n22558=>5076,\n22553=>5077,\n22596=>5078,\n22560=>5079,\n22629=>5080,\n22636=>5081,\n22657=>5082,\n22665=>5083,\n22682=>5084,\n22656=>5085,\n39336=>5086,\n40729=>5087,\n25087=>5088,\n33401=>5089,\n33405=>5090,\n33407=>5091,\n33423=>5092,\n33418=>5093,\n33448=>5094,\n33412=>5095,\n33422=>5096,\n33425=>5097,\n33431=>5098,\n33433=>5099,\n33451=>5100,\n33464=>5101,\n33470=>5102,\n33456=>5103,\n33480=>5104,\n33482=>5105,\n33507=>5106,\n33432=>5107,\n33463=>5108,\n33454=>5109,\n33483=>5110,\n33484=>5111,\n33473=>5112,\n33449=>5113,\n33460=>5114,\n33441=>5115,\n33450=>5116,\n33439=>5117,\n33476=>5118,\n33486=>5119,\n33444=>5120,\n33505=>5121,\n33545=>5122,\n33527=>5123,\n33508=>5124,\n33551=>5125,\n33543=>5126,\n33500=>5127,\n33524=>5128,\n33490=>5129,\n33496=>5130,\n33548=>5131,\n33531=>5132,\n33491=>5133,\n33553=>5134,\n33562=>5135,\n33542=>5136,\n33556=>5137,\n33557=>5138,\n33504=>5139,\n33493=>5140,\n33564=>5141,\n33617=>5142,\n33627=>5143,\n33628=>5144,\n33544=>5145,\n33682=>5146,\n33596=>5147,\n33588=>5148,\n33585=>5149,\n33691=>5150,\n33630=>5151,\n33583=>5152,\n33615=>5153,\n33607=>5154,\n33603=>5155,\n33631=>5156,\n33600=>5157,\n33559=>5158,\n33632=>5159,\n33581=>5160,\n33594=>5161,\n33587=>5162,\n33638=>5163,\n33637=>5164,\n33640=>5165,\n33563=>5166,\n33641=>5167,\n33644=>5168,\n33642=>5169,\n33645=>5170,\n33646=>5171,\n33712=>5172,\n33656=>5173,\n33715=>5174,\n33716=>5175,\n33696=>5176,\n33706=>5177,\n33683=>5178,\n33692=>5179,\n33669=>5180,\n33660=>5181,\n33718=>5182,\n33705=>5183,\n33661=>5184,\n33720=>5185,\n33659=>5186,\n33688=>5187,\n33694=>5188,\n33704=>5189,\n33722=>5190,\n33724=>5191,\n33729=>5192,\n33793=>5193,\n33765=>5194,\n33752=>5195,\n22535=>5196,\n33816=>5197,\n33803=>5198,\n33757=>5199,\n33789=>5200,\n33750=>5201,\n33820=>5202,\n33848=>5203,\n33809=>5204,\n33798=>5205,\n33748=>5206,\n33759=>5207,\n33807=>5208,\n33795=>5209,\n33784=>5210,\n33785=>5211,\n33770=>5212,\n33733=>5213,\n33728=>5214,\n33830=>5215,\n33776=>5216,\n33761=>5217,\n33884=>5218,\n33873=>5219,\n33882=>5220,\n33881=>5221,\n33907=>5222,\n33927=>5223,\n33928=>5224,\n33914=>5225,\n33929=>5226,\n33912=>5227,\n33852=>5228,\n33862=>5229,\n33897=>5230,\n33910=>5231,\n33932=>5232,\n33934=>5233,\n33841=>5234,\n33901=>5235,\n33985=>5236,\n33997=>5237,\n34000=>5238,\n34022=>5239,\n33981=>5240,\n34003=>5241,\n33994=>5242,\n33983=>5243,\n33978=>5244,\n34016=>5245,\n33953=>5246,\n33977=>5247,\n33972=>5248,\n33943=>5249,\n34021=>5250,\n34019=>5251,\n34060=>5252,\n29965=>5253,\n34104=>5254,\n34032=>5255,\n34105=>5256,\n34079=>5257,\n34106=>5258,\n34134=>5259,\n34107=>5260,\n34047=>5261,\n34044=>5262,\n34137=>5263,\n34120=>5264,\n34152=>5265,\n34148=>5266,\n34142=>5267,\n34170=>5268,\n30626=>5269,\n34115=>5270,\n34162=>5271,\n34171=>5272,\n34212=>5273,\n34216=>5274,\n34183=>5275,\n34191=>5276,\n34169=>5277,\n34222=>5278,\n34204=>5279,\n34181=>5280,\n34233=>5281,\n34231=>5282,\n34224=>5283,\n34259=>5284,\n34241=>5285,\n34268=>5286,\n34303=>5287,\n34343=>5288,\n34309=>5289,\n34345=>5290,\n34326=>5291,\n34364=>5292,\n12086=>5293,\n24318=>5293,\n24328=>5294,\n22844=>5295,\n22849=>5296,\n32823=>5297,\n22869=>5298,\n22874=>5299,\n22872=>5300,\n21263=>5301,\n12074=>5302,\n23586=>5302,\n23589=>5303,\n23596=>5304,\n23604=>5305,\n25164=>5306,\n25194=>5307,\n25247=>5308,\n25275=>5309,\n25290=>5310,\n25306=>5311,\n25303=>5312,\n25326=>5313,\n25378=>5314,\n25334=>5315,\n25401=>5316,\n25419=>5317,\n25411=>5318,\n25517=>5319,\n25590=>5320,\n25457=>5321,\n25466=>5322,\n25486=>5323,\n25524=>5324,\n25453=>5325,\n25516=>5326,\n25482=>5327,\n25449=>5328,\n25518=>5329,\n25532=>5330,\n25586=>5331,\n25592=>5332,\n25568=>5333,\n25599=>5334,\n25540=>5335,\n25566=>5336,\n25550=>5337,\n25682=>5338,\n25542=>5339,\n25534=>5340,\n25669=>5341,\n25665=>5342,\n25611=>5343,\n25627=>5344,\n25632=>5345,\n25612=>5346,\n25638=>5347,\n25633=>5348,\n25694=>5349,\n25732=>5350,\n25709=>5351,\n25750=>5352,\n25722=>5353,\n25783=>5354,\n25784=>5355,\n25753=>5356,\n25786=>5357,\n25792=>5358,\n25808=>5359,\n25815=>5360,\n25828=>5361,\n25826=>5362,\n25865=>5363,\n25893=>5364,\n25902=>5365,\n12087=>5366,\n24331=>5366,\n24530=>5367,\n29977=>5368,\n24337=>5369,\n21343=>5370,\n21489=>5371,\n21501=>5372,\n21481=>5373,\n21480=>5374,\n21499=>5375,\n21522=>5376,\n21526=>5377,\n21510=>5378,\n21579=>5379,\n21586=>5380,\n21587=>5381,\n21588=>5382,\n21590=>5383,\n21571=>5384,\n21537=>5385,\n21591=>5386,\n21593=>5387,\n21539=>5388,\n21554=>5389,\n21634=>5390,\n21652=>5391,\n21623=>5392,\n21617=>5393,\n21604=>5394,\n21658=>5395,\n21659=>5396,\n21636=>5397,\n21622=>5398,\n21606=>5399,\n21661=>5400,\n21712=>5401,\n21677=>5402,\n21698=>5403,\n21684=>5404,\n21714=>5405,\n21671=>5406,\n21670=>5407,\n21715=>5408,\n21716=>5409,\n21618=>5410,\n21667=>5411,\n21717=>5412,\n21691=>5413,\n21695=>5414,\n21708=>5415,\n21721=>5416,\n21722=>5417,\n21724=>5418,\n21673=>5419,\n21674=>5420,\n21668=>5421,\n21725=>5422,\n21711=>5423,\n21726=>5424,\n21787=>5425,\n21735=>5426,\n21792=>5427,\n21757=>5428,\n21780=>5429,\n21747=>5430,\n21794=>5431,\n21795=>5432,\n21775=>5433,\n21777=>5434,\n21799=>5435,\n21802=>5436,\n21863=>5437,\n21903=>5438,\n21941=>5439,\n21833=>5440,\n21869=>5441,\n21825=>5442,\n21845=>5443,\n21823=>5444,\n21840=>5445,\n21820=>5446,\n21815=>5447,\n21846=>5448,\n21877=>5449,\n21878=>5450,\n21879=>5451,\n21811=>5452,\n21808=>5453,\n21852=>5454,\n21899=>5455,\n21970=>5456,\n21891=>5457,\n21937=>5458,\n21945=>5459,\n21896=>5460,\n21889=>5461,\n21919=>5462,\n21886=>5463,\n21974=>5464,\n21905=>5465,\n21883=>5466,\n21983=>5467,\n21949=>5468,\n21950=>5469,\n21908=>5470,\n21913=>5471,\n21994=>5472,\n22007=>5473,\n21961=>5474,\n22047=>5475,\n21969=>5476,\n21995=>5477,\n21996=>5478,\n21972=>5479,\n21990=>5480,\n21981=>5481,\n21956=>5482,\n21999=>5483,\n21989=>5484,\n22002=>5485,\n22003=>5486,\n21964=>5487,\n21965=>5488,\n21992=>5489,\n22005=>5490,\n21988=>5491,\n36756=>5492,\n22046=>5493,\n22024=>5494,\n22028=>5495,\n22017=>5496,\n22052=>5497,\n22051=>5498,\n22014=>5499,\n22016=>5500,\n22055=>5501,\n22061=>5502,\n22104=>5503,\n22073=>5504,\n22103=>5505,\n22060=>5506,\n22093=>5507,\n22114=>5508,\n22105=>5509,\n22108=>5510,\n22092=>5511,\n22100=>5512,\n22150=>5513,\n22116=>5514,\n22129=>5515,\n22123=>5516,\n22139=>5517,\n22140=>5518,\n22149=>5519,\n22163=>5520,\n22191=>5521,\n22228=>5522,\n12062=>5523,\n22231=>5523,\n22237=>5524,\n22241=>5525,\n22261=>5526,\n22251=>5527,\n22265=>5528,\n22271=>5529,\n22276=>5530,\n22282=>5531,\n22281=>5532,\n22300=>5533,\n24079=>5534,\n24089=>5535,\n24084=>5536,\n24081=>5537,\n24113=>5538,\n24123=>5539,\n24124=>5540,\n24119=>5541,\n24132=>5542,\n24148=>5543,\n24155=>5544,\n24158=>5545,\n24161=>5546,\n23692=>5547,\n23674=>5548,\n23693=>5549,\n23696=>5550,\n23702=>5551,\n23688=>5552,\n23704=>5553,\n23705=>5554,\n23697=>5555,\n23706=>5556,\n23708=>5557,\n23733=>5558,\n23714=>5559,\n23741=>5560,\n23724=>5561,\n23723=>5562,\n23729=>5563,\n23715=>5564,\n23745=>5565,\n23735=>5566,\n23748=>5567,\n23762=>5568,\n23780=>5569,\n23755=>5570,\n23781=>5571,\n23810=>5572,\n23811=>5573,\n23847=>5574,\n23846=>5575,\n23854=>5576,\n23844=>5577,\n23838=>5578,\n23814=>5579,\n23835=>5580,\n23896=>5581,\n23870=>5582,\n23860=>5583,\n23869=>5584,\n23916=>5585,\n23899=>5586,\n23919=>5587,\n23901=>5588,\n23915=>5589,\n23883=>5590,\n23882=>5591,\n23913=>5592,\n23924=>5593,\n23938=>5594,\n23961=>5595,\n23965=>5596,\n35955=>5597,\n23991=>5598,\n24005=>5599,\n12091=>5600,\n24435=>5600,\n24439=>5601,\n24450=>5602,\n24455=>5603,\n24457=>5604,\n24460=>5605,\n24469=>5606,\n24473=>5607,\n24476=>5608,\n24488=>5609,\n24493=>5610,\n24501=>5611,\n24508=>5612,\n34914=>5613,\n12090=>5614,\n24417=>5614,\n29357=>5615,\n29360=>5616,\n29364=>5617,\n29367=>5618,\n29368=>5619,\n29379=>5620,\n29377=>5621,\n29390=>5622,\n29389=>5623,\n29394=>5624,\n29416=>5625,\n29423=>5626,\n29417=>5627,\n29426=>5628,\n29428=>5629,\n29431=>5630,\n29441=>5631,\n29427=>5632,\n29443=>5633,\n29434=>5634,\n29435=>5635,\n29463=>5636,\n29459=>5637,\n29473=>5638,\n29450=>5639,\n29470=>5640,\n29469=>5641,\n29461=>5642,\n29474=>5643,\n29497=>5644,\n29477=>5645,\n29484=>5646,\n29496=>5647,\n29489=>5648,\n29520=>5649,\n29517=>5650,\n29527=>5651,\n29536=>5652,\n29548=>5653,\n29551=>5654,\n29566=>5655,\n12167=>5656,\n33307=>5656,\n22821=>5657,\n39143=>5658,\n22820=>5659,\n12065=>5660,\n22786=>5660,\n39267=>5661,\n39271=>5662,\n39272=>5663,\n39273=>5664,\n39274=>5665,\n39275=>5666,\n39276=>5667,\n39284=>5668,\n39287=>5669,\n39293=>5670,\n39296=>5671,\n39300=>5672,\n39303=>5673,\n39306=>5674,\n39309=>5675,\n39312=>5676,\n39313=>5677,\n39315=>5678,\n39316=>5679,\n39317=>5680,\n24192=>5681,\n24209=>5682,\n24203=>5683,\n24214=>5684,\n24229=>5685,\n24224=>5686,\n24249=>5687,\n24245=>5688,\n24254=>5689,\n24243=>5690,\n36179=>5691,\n24274=>5692,\n24273=>5693,\n24283=>5694,\n24296=>5695,\n24298=>5696,\n33210=>5697,\n24516=>5698,\n24521=>5699,\n24534=>5700,\n24527=>5701,\n24579=>5702,\n24558=>5703,\n24580=>5704,\n24545=>5705,\n24548=>5706,\n24574=>5707,\n24581=>5708,\n24582=>5709,\n24554=>5710,\n24557=>5711,\n24568=>5712,\n24601=>5713,\n24629=>5714,\n24614=>5715,\n24603=>5716,\n24591=>5717,\n24589=>5718,\n24617=>5719,\n24619=>5720,\n24586=>5721,\n24639=>5722,\n24609=>5723,\n24696=>5724,\n24697=>5725,\n24699=>5726,\n24698=>5727,\n24642=>5728,\n24682=>5729,\n24701=>5730,\n24726=>5731,\n24730=>5732,\n24749=>5733,\n24733=>5734,\n24707=>5735,\n24722=>5736,\n24716=>5737,\n24731=>5738,\n24812=>5739,\n24763=>5740,\n24753=>5741,\n24797=>5742,\n24792=>5743,\n24774=>5744,\n24794=>5745,\n24756=>5746,\n24864=>5747,\n24870=>5748,\n24853=>5749,\n24867=>5750,\n24820=>5751,\n24832=>5752,\n24846=>5753,\n24875=>5754,\n24906=>5755,\n24949=>5756,\n25004=>5757,\n24980=>5758,\n24999=>5759,\n25015=>5760,\n25044=>5761,\n25077=>5762,\n24541=>5763,\n38579=>5764,\n38377=>5765,\n38379=>5766,\n38385=>5767,\n38387=>5768,\n38389=>5769,\n38390=>5770,\n38396=>5771,\n38398=>5772,\n38403=>5773,\n38404=>5774,\n38406=>5775,\n38408=>5776,\n38410=>5777,\n38411=>5778,\n38412=>5779,\n38413=>5780,\n38415=>5781,\n38418=>5782,\n38421=>5783,\n38422=>5784,\n38423=>5785,\n38425=>5786,\n38426=>5787,\n20012=>5788,\n12121=>5789,\n29247=>5789,\n25109=>5790,\n27701=>5791,\n27732=>5792,\n27740=>5793,\n27722=>5794,\n27811=>5795,\n27781=>5796,\n27792=>5797,\n27796=>5798,\n27788=>5799,\n27752=>5800,\n27753=>5801,\n27764=>5802,\n27766=>5803,\n27782=>5804,\n27817=>5805,\n27856=>5806,\n27860=>5807,\n27821=>5808,\n27895=>5809,\n27896=>5810,\n27889=>5811,\n27863=>5812,\n27826=>5813,\n27872=>5814,\n27862=>5815,\n27898=>5816,\n27883=>5817,\n27886=>5818,\n27825=>5819,\n27859=>5820,\n27887=>5821,\n27902=>5822,\n27961=>5823,\n27943=>5824,\n27916=>5825,\n27971=>5826,\n27976=>5827,\n27911=>5828,\n27908=>5829,\n27929=>5830,\n27918=>5831,\n27947=>5832,\n27981=>5833,\n27950=>5834,\n27957=>5835,\n27930=>5836,\n27983=>5837,\n27986=>5838,\n27988=>5839,\n27955=>5840,\n28049=>5841,\n28015=>5842,\n28062=>5843,\n28064=>5844,\n27998=>5845,\n28051=>5846,\n28052=>5847,\n27996=>5848,\n28000=>5849,\n28028=>5850,\n28003=>5851,\n28186=>5852,\n28103=>5853,\n28101=>5854,\n28126=>5855,\n28174=>5856,\n28095=>5857,\n28128=>5858,\n28177=>5859,\n28134=>5860,\n28125=>5861,\n28121=>5862,\n28182=>5863,\n28075=>5864,\n28172=>5865,\n28078=>5866,\n28203=>5867,\n28270=>5868,\n28238=>5869,\n28267=>5870,\n28338=>5871,\n28255=>5872,\n28294=>5873,\n28243=>5874,\n28244=>5875,\n28210=>5876,\n28197=>5877,\n28228=>5878,\n28383=>5879,\n28337=>5880,\n28312=>5881,\n28384=>5882,\n28461=>5883,\n28386=>5884,\n28325=>5885,\n28327=>5886,\n28349=>5887,\n28347=>5888,\n28343=>5889,\n28375=>5890,\n28340=>5891,\n28367=>5892,\n28303=>5893,\n28354=>5894,\n28319=>5895,\n28514=>5896,\n28486=>5897,\n28487=>5898,\n28452=>5899,\n28437=>5900,\n28409=>5901,\n28463=>5902,\n28470=>5903,\n28491=>5904,\n28532=>5905,\n28458=>5906,\n28425=>5907,\n28457=>5908,\n28553=>5909,\n28557=>5910,\n28556=>5911,\n28536=>5912,\n28530=>5913,\n28540=>5914,\n28538=>5915,\n28625=>5916,\n28617=>5917,\n28583=>5918,\n28601=>5919,\n28598=>5920,\n28610=>5921,\n28641=>5922,\n28654=>5923,\n28638=>5924,\n28640=>5925,\n28655=>5926,\n28698=>5927,\n28707=>5928,\n28699=>5929,\n28729=>5930,\n28725=>5931,\n28751=>5932,\n28766=>5933,\n12071=>5934,\n23424=>5934,\n23428=>5935,\n23445=>5936,\n23443=>5937,\n23461=>5938,\n23480=>5939,\n29999=>5940,\n39582=>5941,\n25652=>5942,\n23524=>5943,\n23534=>5944,\n35120=>5945,\n23536=>5946,\n36423=>5947,\n35591=>5948,\n36790=>5949,\n36819=>5950,\n36821=>5951,\n36837=>5952,\n36846=>5953,\n36836=>5954,\n36841=>5955,\n36838=>5956,\n36851=>5957,\n36840=>5958,\n36869=>5959,\n36868=>5960,\n36875=>5961,\n36902=>5962,\n36881=>5963,\n36877=>5964,\n36886=>5965,\n36897=>5966,\n36917=>5967,\n36918=>5968,\n36909=>5969,\n36911=>5970,\n36932=>5971,\n36945=>5972,\n36946=>5973,\n36944=>5974,\n36968=>5975,\n36952=>5976,\n36962=>5977,\n36955=>5978,\n26297=>5979,\n36980=>5980,\n36989=>5981,\n36994=>5982,\n37000=>5983,\n36995=>5984,\n37003=>5985,\n12089=>5986,\n24400=>5986,\n24407=>5987,\n24406=>5988,\n24408=>5989,\n23611=>5990,\n21675=>5991,\n23632=>5992,\n23641=>5993,\n23409=>5994,\n23651=>5995,\n23654=>5996,\n32700=>5997,\n24362=>5998,\n24361=>5999,\n24365=>6000,\n33396=>6001,\n24380=>6002,\n39739=>6003,\n12076=>6004,\n23662=>6004,\n22913=>6005,\n22915=>6006,\n22925=>6007,\n22953=>6008,\n22954=>6009,\n22947=>6010,\n22935=>6011,\n22986=>6012,\n22955=>6013,\n22942=>6014,\n22948=>6015,\n22994=>6016,\n22962=>6017,\n22959=>6018,\n22999=>6019,\n22974=>6020,\n23045=>6021,\n23046=>6022,\n23005=>6023,\n23048=>6024,\n23011=>6025,\n23000=>6026,\n23033=>6027,\n23052=>6028,\n23049=>6029,\n23090=>6030,\n23092=>6031,\n23057=>6032,\n23075=>6033,\n23059=>6034,\n23104=>6035,\n23143=>6036,\n23114=>6037,\n23125=>6038,\n23100=>6039,\n23138=>6040,\n23157=>6041,\n33004=>6042,\n23210=>6043,\n23195=>6044,\n23159=>6045,\n23162=>6046,\n23230=>6047,\n23275=>6048,\n23218=>6049,\n23250=>6050,\n23252=>6051,\n23224=>6052,\n23264=>6053,\n23267=>6054,\n23281=>6055,\n23254=>6056,\n23270=>6057,\n23256=>6058,\n23260=>6059,\n23305=>6060,\n23319=>6061,\n23318=>6062,\n23346=>6063,\n23351=>6064,\n23360=>6065,\n23573=>6066,\n23580=>6067,\n23386=>6068,\n23397=>6069,\n23411=>6070,\n23377=>6071,\n23379=>6072,\n23394=>6073,\n39541=>6074,\n39543=>6075,\n39544=>6076,\n39546=>6077,\n39551=>6078,\n39549=>6079,\n39552=>6080,\n39553=>6081,\n39557=>6082,\n39560=>6083,\n39562=>6084,\n39568=>6085,\n39570=>6086,\n39571=>6087,\n39574=>6088,\n39576=>6089,\n39579=>6090,\n39580=>6091,\n39581=>6092,\n39583=>6093,\n39584=>6094,\n39586=>6095,\n39587=>6096,\n39589=>6097,\n39591=>6098,\n32415=>6099,\n32417=>6100,\n32419=>6101,\n32421=>6102,\n32424=>6103,\n32425=>6104,\n32429=>6105,\n32432=>6106,\n32446=>6107,\n32448=>6108,\n32449=>6109,\n32450=>6110,\n32457=>6111,\n32459=>6112,\n32460=>6113,\n32464=>6114,\n32468=>6115,\n32471=>6116,\n32475=>6117,\n32480=>6118,\n32481=>6119,\n32488=>6120,\n32491=>6121,\n32494=>6122,\n32495=>6123,\n32497=>6124,\n32498=>6125,\n32525=>6126,\n32502=>6127,\n32506=>6128,\n32507=>6129,\n32510=>6130,\n32513=>6131,\n32514=>6132,\n32515=>6133,\n32519=>6134,\n32520=>6135,\n32523=>6136,\n32524=>6137,\n32527=>6138,\n32529=>6139,\n32530=>6140,\n32535=>6141,\n32537=>6142,\n32540=>6143,\n32539=>6144,\n32543=>6145,\n32545=>6146,\n32546=>6147,\n32547=>6148,\n32548=>6149,\n32549=>6150,\n32550=>6151,\n32551=>6152,\n32554=>6153,\n32555=>6154,\n32556=>6155,\n32557=>6156,\n32559=>6157,\n32560=>6158,\n32561=>6159,\n32562=>6160,\n32563=>6161,\n32565=>6162,\n12083=>6163,\n24186=>6163,\n30079=>6164,\n12078=>6165,\n24027=>6165,\n30014=>6166,\n37013=>6167,\n29582=>6168,\n29585=>6169,\n29614=>6170,\n29602=>6171,\n29599=>6172,\n29647=>6173,\n29634=>6174,\n29649=>6175,\n29623=>6176,\n29619=>6177,\n29632=>6178,\n29641=>6179,\n29640=>6180,\n29669=>6181,\n29657=>6182,\n39036=>6183,\n29706=>6184,\n29673=>6185,\n29671=>6186,\n29662=>6187,\n29626=>6188,\n29682=>6189,\n29711=>6190,\n29738=>6191,\n29787=>6192,\n29734=>6193,\n29733=>6194,\n29736=>6195,\n29744=>6196,\n29742=>6197,\n29740=>6198,\n29723=>6199,\n29722=>6200,\n29761=>6201,\n29788=>6202,\n29783=>6203,\n29781=>6204,\n29785=>6205,\n29815=>6206,\n29805=>6207,\n29822=>6208,\n29852=>6209,\n29838=>6210,\n29824=>6211,\n29825=>6212,\n29831=>6213,\n29835=>6214,\n29854=>6215,\n29864=>6216,\n29865=>6217,\n29840=>6218,\n29863=>6219,\n29906=>6220,\n29882=>6221,\n38890=>6222,\n38891=>6223,\n38892=>6224,\n26444=>6225,\n26451=>6226,\n26462=>6227,\n26440=>6228,\n26473=>6229,\n26533=>6230,\n26503=>6231,\n26474=>6232,\n26483=>6233,\n26520=>6234,\n26535=>6235,\n26485=>6236,\n26536=>6237,\n26526=>6238,\n26541=>6239,\n26507=>6240,\n26487=>6241,\n26492=>6242,\n26608=>6243,\n26633=>6244,\n26584=>6245,\n26634=>6246,\n26601=>6247,\n26544=>6248,\n26636=>6249,\n26585=>6250,\n26549=>6251,\n26586=>6252,\n26547=>6253,\n26589=>6254,\n26624=>6255,\n26563=>6256,\n26552=>6257,\n26594=>6258,\n26638=>6259,\n26561=>6260,\n26621=>6261,\n26674=>6262,\n26675=>6263,\n26720=>6264,\n26721=>6265,\n26702=>6266,\n26722=>6267,\n26692=>6268,\n26724=>6269,\n26755=>6270,\n26653=>6271,\n26709=>6272,\n26726=>6273,\n26689=>6274,\n26727=>6275,\n26688=>6276,\n26686=>6277,\n26698=>6278,\n26697=>6279,\n26665=>6280,\n26805=>6281,\n26767=>6282,\n26740=>6283,\n26743=>6284,\n26771=>6285,\n26731=>6286,\n26818=>6287,\n26990=>6288,\n26876=>6289,\n26911=>6290,\n26912=>6291,\n26873=>6292,\n26916=>6293,\n26864=>6294,\n26891=>6295,\n26881=>6296,\n26967=>6297,\n26851=>6298,\n26896=>6299,\n26993=>6300,\n26937=>6301,\n26976=>6302,\n26946=>6303,\n26973=>6304,\n27012=>6305,\n26987=>6306,\n27008=>6307,\n27032=>6308,\n27000=>6309,\n26932=>6310,\n27084=>6311,\n27015=>6312,\n27016=>6313,\n27086=>6314,\n27017=>6315,\n26982=>6316,\n26979=>6317,\n27001=>6318,\n27035=>6319,\n27047=>6320,\n27067=>6321,\n27051=>6322,\n27053=>6323,\n27092=>6324,\n27057=>6325,\n27073=>6326,\n27082=>6327,\n27103=>6328,\n27029=>6329,\n27104=>6330,\n27021=>6331,\n27135=>6332,\n27183=>6333,\n27117=>6334,\n27159=>6335,\n27160=>6336,\n27237=>6337,\n27122=>6338,\n27204=>6339,\n27198=>6340,\n27296=>6341,\n27216=>6342,\n27227=>6343,\n27189=>6344,\n27278=>6345,\n27257=>6346,\n27197=>6347,\n27176=>6348,\n27224=>6349,\n27260=>6350,\n27281=>6351,\n27280=>6352,\n27305=>6353,\n27287=>6354,\n27307=>6355,\n29495=>6356,\n29522=>6357,\n27521=>6358,\n27522=>6359,\n27527=>6360,\n27524=>6361,\n27538=>6362,\n27539=>6363,\n27533=>6364,\n27546=>6365,\n27547=>6366,\n27553=>6367,\n27562=>6368,\n36715=>6369,\n36717=>6370,\n36721=>6371,\n36722=>6372,\n36723=>6373,\n36725=>6374,\n36726=>6375,\n36728=>6376,\n36727=>6377,\n36729=>6378,\n36730=>6379,\n36732=>6380,\n36734=>6381,\n36737=>6382,\n36738=>6383,\n36740=>6384,\n36743=>6385,\n36747=>6386,\n36749=>6387,\n36750=>6388,\n36751=>6389,\n36760=>6390,\n36762=>6391,\n36558=>6392,\n25099=>6393,\n25111=>6394,\n25115=>6395,\n25119=>6396,\n25122=>6397,\n25121=>6398,\n25125=>6399,\n25124=>6400,\n25132=>6401,\n33255=>6402,\n29935=>6403,\n29940=>6404,\n29951=>6405,\n29967=>6406,\n29969=>6407,\n29971=>6408,\n12097=>6409,\n25908=>6409,\n26094=>6410,\n26095=>6411,\n26096=>6412,\n26122=>6413,\n26137=>6414,\n26482=>6415,\n26115=>6416,\n26133=>6417,\n26112=>6418,\n28805=>6419,\n26359=>6420,\n26141=>6421,\n26164=>6422,\n26161=>6423,\n26166=>6424,\n26165=>6425,\n32774=>6426,\n26207=>6427,\n26196=>6428,\n26177=>6429,\n26191=>6430,\n26198=>6431,\n26209=>6432,\n26199=>6433,\n26231=>6434,\n26244=>6435,\n26252=>6436,\n26279=>6437,\n26269=>6438,\n26302=>6439,\n26331=>6440,\n26332=>6441,\n26342=>6442,\n26345=>6443,\n36146=>6444,\n36147=>6445,\n36150=>6446,\n36155=>6447,\n36157=>6448,\n36160=>6449,\n36165=>6450,\n36166=>6451,\n36168=>6452,\n36169=>6453,\n36167=>6454,\n36173=>6455,\n36181=>6456,\n36185=>6457,\n35271=>6458,\n35274=>6459,\n35275=>6460,\n35276=>6461,\n35278=>6462,\n35279=>6463,\n35280=>6464,\n35281=>6465,\n29294=>6466,\n29343=>6467,\n29277=>6468,\n29286=>6469,\n29295=>6470,\n29310=>6471,\n29311=>6472,\n29316=>6473,\n29323=>6474,\n29325=>6475,\n29327=>6476,\n29330=>6477,\n25352=>6478,\n25394=>6479,\n25520=>6480,\n25663=>6481,\n25816=>6482,\n32772=>6483,\n27626=>6484,\n27635=>6485,\n27645=>6486,\n27637=>6487,\n27641=>6488,\n27653=>6489,\n27655=>6490,\n27654=>6491,\n27661=>6492,\n27669=>6493,\n27672=>6494,\n27673=>6495,\n27674=>6496,\n27681=>6497,\n27689=>6498,\n27684=>6499,\n27690=>6500,\n27698=>6501,\n25909=>6502,\n25941=>6503,\n25963=>6504,\n29261=>6505,\n29266=>6506,\n29270=>6507,\n29232=>6508,\n34402=>6509,\n21014=>6510,\n32927=>6511,\n32924=>6512,\n32915=>6513,\n32956=>6514,\n26378=>6515,\n32957=>6516,\n32945=>6517,\n32939=>6518,\n32941=>6519,\n32948=>6520,\n32951=>6521,\n32999=>6522,\n33000=>6523,\n33001=>6524,\n33002=>6525,\n32987=>6526,\n32962=>6527,\n32964=>6528,\n32985=>6529,\n32973=>6530,\n32983=>6531,\n26384=>6532,\n32989=>6533,\n33003=>6534,\n33009=>6535,\n33012=>6536,\n33005=>6537,\n33037=>6538,\n33038=>6539,\n33010=>6540,\n33020=>6541,\n26389=>6542,\n33042=>6543,\n35930=>6544,\n33078=>6545,\n33054=>6546,\n33068=>6547,\n33048=>6548,\n33074=>6549,\n33096=>6550,\n33100=>6551,\n33107=>6552,\n33140=>6553,\n33113=>6554,\n33114=>6555,\n33137=>6556,\n33120=>6557,\n33129=>6558,\n33148=>6559,\n33149=>6560,\n33133=>6561,\n33127=>6562,\n22605=>6563,\n23221=>6564,\n33160=>6565,\n33154=>6566,\n33169=>6567,\n28373=>6568,\n33187=>6569,\n33194=>6570,\n33228=>6571,\n26406=>6572,\n33226=>6573,\n33211=>6574,\n33217=>6575,\n33190=>6576,\n27428=>6577,\n27447=>6578,\n27449=>6579,\n27459=>6580,\n27462=>6581,\n27481=>6582,\n39121=>6583,\n39122=>6584,\n39123=>6585,\n39125=>6586,\n39129=>6587,\n39130=>6588,\n12110=>6589,\n27571=>6589,\n24384=>6590,\n27586=>6591,\n35315=>6592,\n26000=>6593,\n40785=>6594,\n26003=>6595,\n26044=>6596,\n26054=>6597,\n26052=>6598,\n26051=>6599,\n26060=>6600,\n26062=>6601,\n26066=>6602,\n26070=>6603,\n28800=>6604,\n28828=>6605,\n28822=>6606,\n28829=>6607,\n28859=>6608,\n28864=>6609,\n28855=>6610,\n28843=>6611,\n28849=>6612,\n28904=>6613,\n28874=>6614,\n28944=>6615,\n28947=>6616,\n28950=>6617,\n28975=>6618,\n28977=>6619,\n29043=>6620,\n29020=>6621,\n29032=>6622,\n28997=>6623,\n29042=>6624,\n29002=>6625,\n29048=>6626,\n29050=>6627,\n29080=>6628,\n29107=>6629,\n29109=>6630,\n29096=>6631,\n29088=>6632,\n29152=>6633,\n29140=>6634,\n29159=>6635,\n29177=>6636,\n29213=>6637,\n29224=>6638,\n28780=>6639,\n28952=>6640,\n29030=>6641,\n29113=>6642,\n25150=>6643,\n25149=>6644,\n25155=>6645,\n25160=>6646,\n25161=>6647,\n31035=>6648,\n31040=>6649,\n31046=>6650,\n31049=>6651,\n31067=>6652,\n31068=>6653,\n31059=>6654,\n31066=>6655,\n31074=>6656,\n31063=>6657,\n31072=>6658,\n31087=>6659,\n31079=>6660,\n31098=>6661,\n31109=>6662,\n31114=>6663,\n31130=>6664,\n31143=>6665,\n31155=>6666,\n24529=>6667,\n24528=>6668,\n24636=>6669,\n24669=>6670,\n24666=>6671,\n24679=>6672,\n24641=>6673,\n24665=>6674,\n24675=>6675,\n24747=>6676,\n24838=>6677,\n24845=>6678,\n24925=>6679,\n25001=>6680,\n24989=>6681,\n25035=>6682,\n25041=>6683,\n25094=>6684,\n32896=>6685,\n12160=>6686,\n32895=>6686,\n27795=>6687,\n27894=>6688,\n28156=>6689,\n30710=>6690,\n30712=>6691,\n30720=>6692,\n30729=>6693,\n30743=>6694,\n30744=>6695,\n30737=>6696,\n26027=>6697,\n30765=>6698,\n30748=>6699,\n30749=>6700,\n30777=>6701,\n30778=>6702,\n30779=>6703,\n30751=>6704,\n30780=>6705,\n30757=>6706,\n30764=>6707,\n30755=>6708,\n30761=>6709,\n30798=>6710,\n30829=>6711,\n30806=>6712,\n30807=>6713,\n30758=>6714,\n30800=>6715,\n30791=>6716,\n30796=>6717,\n30826=>6718,\n30875=>6719,\n30867=>6720,\n30874=>6721,\n30855=>6722,\n30876=>6723,\n30881=>6724,\n30883=>6725,\n30898=>6726,\n30905=>6727,\n30885=>6728,\n30932=>6729,\n30937=>6730,\n30921=>6731,\n30956=>6732,\n30962=>6733,\n30981=>6734,\n30964=>6735,\n30995=>6736,\n31012=>6737,\n31006=>6738,\n31028=>6739,\n40859=>6740,\n12235=>6741,\n40697=>6741,\n40699=>6742,\n40700=>6743,\n30449=>6744,\n30468=>6745,\n30477=>6746,\n30457=>6747,\n30471=>6748,\n30472=>6749,\n30490=>6750,\n30498=>6751,\n30489=>6752,\n30509=>6753,\n30502=>6754,\n30517=>6755,\n30520=>6756,\n30544=>6757,\n30545=>6758,\n30535=>6759,\n30531=>6760,\n30554=>6761,\n30568=>6762,\n30562=>6763,\n30565=>6764,\n30591=>6765,\n30605=>6766,\n30589=>6767,\n30592=>6768,\n30604=>6769,\n30609=>6770,\n30623=>6771,\n30624=>6772,\n30640=>6773,\n30645=>6774,\n30653=>6775,\n30010=>6776,\n30016=>6777,\n30030=>6778,\n30027=>6779,\n30024=>6780,\n30043=>6781,\n30066=>6782,\n30073=>6783,\n30083=>6784,\n32600=>6785,\n32609=>6786,\n32607=>6787,\n35400=>6788,\n32616=>6789,\n32628=>6790,\n32625=>6791,\n32633=>6792,\n32641=>6793,\n32638=>6794,\n30413=>6795,\n30437=>6796,\n34866=>6797,\n38021=>6798,\n38022=>6799,\n38023=>6800,\n38027=>6801,\n38026=>6802,\n38028=>6803,\n38029=>6804,\n38031=>6805,\n38032=>6806,\n38036=>6807,\n38039=>6808,\n38037=>6809,\n38042=>6810,\n38043=>6811,\n38044=>6812,\n38051=>6813,\n38052=>6814,\n38059=>6815,\n38058=>6816,\n38061=>6817,\n38060=>6818,\n38063=>6819,\n38064=>6820,\n38066=>6821,\n38068=>6822,\n38070=>6823,\n38071=>6824,\n38072=>6825,\n38073=>6826,\n38074=>6827,\n38076=>6828,\n38077=>6829,\n38079=>6830,\n38084=>6831,\n38088=>6832,\n38089=>6833,\n38090=>6834,\n38091=>6835,\n38092=>6836,\n38093=>6837,\n38094=>6838,\n38096=>6839,\n38097=>6840,\n38098=>6841,\n38101=>6842,\n38102=>6843,\n38103=>6844,\n38105=>6845,\n38104=>6846,\n38107=>6847,\n38110=>6848,\n38111=>6849,\n38112=>6850,\n38114=>6851,\n38116=>6852,\n38117=>6853,\n38119=>6854,\n38120=>6855,\n38122=>6856,\n38121=>6857,\n38123=>6858,\n38126=>6859,\n38127=>6860,\n38131=>6861,\n38132=>6862,\n38133=>6863,\n38135=>6864,\n38137=>6865,\n38140=>6866,\n38141=>6867,\n38143=>6868,\n38147=>6869,\n38146=>6870,\n38150=>6871,\n38151=>6872,\n38153=>6873,\n38154=>6874,\n38157=>6875,\n38158=>6876,\n38159=>6877,\n38162=>6878,\n38163=>6879,\n38164=>6880,\n38165=>6881,\n38166=>6882,\n38168=>6883,\n38171=>6884,\n38173=>6885,\n38174=>6886,\n38175=>6887,\n38178=>6888,\n38186=>6889,\n38187=>6890,\n38185=>6891,\n38188=>6892,\n38193=>6893,\n38194=>6894,\n38196=>6895,\n38198=>6896,\n38199=>6897,\n38200=>6898,\n38204=>6899,\n38206=>6900,\n38207=>6901,\n38210=>6902,\n38197=>6903,\n38212=>6904,\n38213=>6905,\n38214=>6906,\n38217=>6907,\n38220=>6908,\n38222=>6909,\n38223=>6910,\n38226=>6911,\n38227=>6912,\n38228=>6913,\n38230=>6914,\n38231=>6915,\n38232=>6916,\n38233=>6917,\n38235=>6918,\n38238=>6919,\n38239=>6920,\n38237=>6921,\n38241=>6922,\n38242=>6923,\n38244=>6924,\n38245=>6925,\n38246=>6926,\n38247=>6927,\n38248=>6928,\n38249=>6929,\n38250=>6930,\n38251=>6931,\n38252=>6932,\n38255=>6933,\n38257=>6934,\n38258=>6935,\n38259=>6936,\n38202=>6937,\n30695=>6938,\n30700=>6939,\n38601=>6940,\n31189=>6941,\n31213=>6942,\n31203=>6943,\n31211=>6944,\n31238=>6945,\n23879=>6946,\n31235=>6947,\n31234=>6948,\n31262=>6949,\n31252=>6950,\n31289=>6951,\n31287=>6952,\n31313=>6953,\n40655=>6954,\n39333=>6955,\n31344=>6956,\n30344=>6957,\n30350=>6958,\n30355=>6959,\n30361=>6960,\n30372=>6961,\n29918=>6962,\n29920=>6963,\n29996=>6964,\n40480=>6965,\n40482=>6966,\n40488=>6967,\n40489=>6968,\n40490=>6969,\n40491=>6970,\n40492=>6971,\n40498=>6972,\n40497=>6973,\n40502=>6974,\n40504=>6975,\n40503=>6976,\n40505=>6977,\n40506=>6978,\n40510=>6979,\n40513=>6980,\n40514=>6981,\n40516=>6982,\n40518=>6983,\n40519=>6984,\n40520=>6985,\n40521=>6986,\n40523=>6987,\n40524=>6988,\n40526=>6989,\n40529=>6990,\n40533=>6991,\n40535=>6992,\n40538=>6993,\n40539=>6994,\n40540=>6995,\n40542=>6996,\n40547=>6997,\n40550=>6998,\n40551=>6999,\n40552=>7000,\n40553=>7001,\n40554=>7002,\n40555=>7003,\n40556=>7004,\n40561=>7005,\n40557=>7006,\n40563=>7007,\n12135=>7008,\n30098=>7008,\n30100=>7009,\n30102=>7010,\n30112=>7011,\n30109=>7012,\n30124=>7013,\n30115=>7014,\n30131=>7015,\n30132=>7016,\n30136=>7017,\n30148=>7018,\n30129=>7019,\n30128=>7020,\n30147=>7021,\n30146=>7022,\n30166=>7023,\n30157=>7024,\n30179=>7025,\n30184=>7026,\n30182=>7027,\n30180=>7028,\n30187=>7029,\n30183=>7030,\n30211=>7031,\n30193=>7032,\n30204=>7033,\n30207=>7034,\n30224=>7035,\n30208=>7036,\n30213=>7037,\n30220=>7038,\n30231=>7039,\n30218=>7040,\n30245=>7041,\n30232=>7042,\n30229=>7043,\n30233=>7044,\n30235=>7045,\n30268=>7046,\n30242=>7047,\n30240=>7048,\n30272=>7049,\n30253=>7050,\n30256=>7051,\n30271=>7052,\n30261=>7053,\n30275=>7054,\n30270=>7055,\n30259=>7056,\n30285=>7057,\n30302=>7058,\n30292=>7059,\n30300=>7060,\n30294=>7061,\n30315=>7062,\n30319=>7063,\n32714=>7064,\n31462=>7065,\n31352=>7066,\n31353=>7067,\n31360=>7068,\n31366=>7069,\n31368=>7070,\n31381=>7071,\n31398=>7072,\n31392=>7073,\n31404=>7074,\n31400=>7075,\n31405=>7076,\n31411=>7077,\n34916=>7078,\n34921=>7079,\n34930=>7080,\n34941=>7081,\n34943=>7082,\n34946=>7083,\n34978=>7084,\n35014=>7085,\n34999=>7086,\n35004=>7087,\n35017=>7088,\n35042=>7089,\n35022=>7090,\n35043=>7091,\n35045=>7092,\n35057=>7093,\n35098=>7094,\n35068=>7095,\n35048=>7096,\n35070=>7097,\n35056=>7098,\n35105=>7099,\n35097=>7100,\n35091=>7101,\n35099=>7102,\n35082=>7103,\n35124=>7104,\n35115=>7105,\n35126=>7106,\n35137=>7107,\n35174=>7108,\n35195=>7109,\n12134=>7110,\n30091=>7110,\n32997=>7111,\n30386=>7112,\n30388=>7113,\n30684=>7114,\n12158=>7115,\n32786=>7115,\n32788=>7116,\n32790=>7117,\n32796=>7118,\n32800=>7119,\n32802=>7120,\n32805=>7121,\n32806=>7122,\n32807=>7123,\n32809=>7124,\n32808=>7125,\n32817=>7126,\n32779=>7127,\n32821=>7128,\n32835=>7129,\n32838=>7130,\n32845=>7131,\n32850=>7132,\n32873=>7133,\n32881=>7134,\n35203=>7135,\n39032=>7136,\n39040=>7137,\n39043=>7138,\n39049=>7139,\n39052=>7140,\n39053=>7141,\n39055=>7142,\n39060=>7143,\n39066=>7144,\n39067=>7145,\n39070=>7146,\n39071=>7147,\n39073=>7148,\n39074=>7149,\n39077=>7150,\n39078=>7151,\n12172=>7152,\n34381=>7152,\n34388=>7153,\n34412=>7154,\n34414=>7155,\n34431=>7156,\n34426=>7157,\n34428=>7158,\n34427=>7159,\n34472=>7160,\n34445=>7161,\n34443=>7162,\n34476=>7163,\n34461=>7164,\n34471=>7165,\n34467=>7166,\n34474=>7167,\n34451=>7168,\n34473=>7169,\n34486=>7170,\n34500=>7171,\n34485=>7172,\n34510=>7173,\n34480=>7174,\n34490=>7175,\n34481=>7176,\n34479=>7177,\n34505=>7178,\n34511=>7179,\n34484=>7180,\n34537=>7181,\n34545=>7182,\n34546=>7183,\n34541=>7184,\n34547=>7185,\n34512=>7186,\n34579=>7187,\n34526=>7188,\n34548=>7189,\n34527=>7190,\n34520=>7191,\n34513=>7192,\n34563=>7193,\n34567=>7194,\n34552=>7195,\n34568=>7196,\n34570=>7197,\n34573=>7198,\n34569=>7199,\n34595=>7200,\n34619=>7201,\n34590=>7202,\n34597=>7203,\n34606=>7204,\n34586=>7205,\n34622=>7206,\n34632=>7207,\n34612=>7208,\n34609=>7209,\n34601=>7210,\n34615=>7211,\n34623=>7212,\n34690=>7213,\n34594=>7214,\n34685=>7215,\n34686=>7216,\n34683=>7217,\n34656=>7218,\n34672=>7219,\n34636=>7220,\n34670=>7221,\n34699=>7222,\n34643=>7223,\n34659=>7224,\n34684=>7225,\n34660=>7226,\n34649=>7227,\n34661=>7228,\n34707=>7229,\n34735=>7230,\n34728=>7231,\n34770=>7232,\n34758=>7233,\n34696=>7234,\n34693=>7235,\n34733=>7236,\n34711=>7237,\n34691=>7238,\n34731=>7239,\n34789=>7240,\n34732=>7241,\n34741=>7242,\n34739=>7243,\n34763=>7244,\n34771=>7245,\n34749=>7246,\n34769=>7247,\n34752=>7248,\n34762=>7249,\n34779=>7250,\n34794=>7251,\n34784=>7252,\n34798=>7253,\n34838=>7254,\n34835=>7255,\n34814=>7256,\n34826=>7257,\n34843=>7258,\n34849=>7259,\n34873=>7260,\n34876=>7261,\n12152=>7262,\n32566=>7262,\n32578=>7263,\n32580=>7264,\n32581=>7265,\n33296=>7266,\n31482=>7267,\n31485=>7268,\n31496=>7269,\n31491=>7270,\n31492=>7271,\n31509=>7272,\n31498=>7273,\n31531=>7274,\n31503=>7275,\n31559=>7276,\n31544=>7277,\n31530=>7278,\n31513=>7279,\n31534=>7280,\n31537=>7281,\n31520=>7282,\n31525=>7283,\n31524=>7284,\n31539=>7285,\n31550=>7286,\n31518=>7287,\n31576=>7288,\n31578=>7289,\n31557=>7290,\n31605=>7291,\n31564=>7292,\n31581=>7293,\n31584=>7294,\n31598=>7295,\n31611=>7296,\n31586=>7297,\n31602=>7298,\n31601=>7299,\n31632=>7300,\n31654=>7301,\n31655=>7302,\n31672=>7303,\n31660=>7304,\n31645=>7305,\n31656=>7306,\n31621=>7307,\n31658=>7308,\n31644=>7309,\n31650=>7310,\n31659=>7311,\n31668=>7312,\n31697=>7313,\n31681=>7314,\n31692=>7315,\n31709=>7316,\n31706=>7317,\n31717=>7318,\n31718=>7319,\n31722=>7320,\n31756=>7321,\n31742=>7322,\n31740=>7323,\n31759=>7324,\n31766=>7325,\n31755=>7326,\n31775=>7327,\n31786=>7328,\n31782=>7329,\n31800=>7330,\n31809=>7331,\n31808=>7332,\n33278=>7333,\n33281=>7334,\n33282=>7335,\n33284=>7336,\n33260=>7337,\n34884=>7338,\n33313=>7339,\n33314=>7340,\n33315=>7341,\n33325=>7342,\n33327=>7343,\n33320=>7344,\n33323=>7345,\n33336=>7346,\n33339=>7347,\n33331=>7348,\n33332=>7349,\n33342=>7350,\n33348=>7351,\n33353=>7352,\n33355=>7353,\n33359=>7354,\n33370=>7355,\n33375=>7356,\n33384=>7357,\n34942=>7358,\n34949=>7359,\n34952=>7360,\n35032=>7361,\n35039=>7362,\n35166=>7363,\n32669=>7364,\n32671=>7365,\n32679=>7366,\n32687=>7367,\n32688=>7368,\n32690=>7369,\n31868=>7370,\n25929=>7371,\n31889=>7372,\n31901=>7373,\n31900=>7374,\n31902=>7375,\n31906=>7376,\n31922=>7377,\n31932=>7378,\n31933=>7379,\n31937=>7380,\n31943=>7381,\n31948=>7382,\n31949=>7383,\n31944=>7384,\n31941=>7385,\n31959=>7386,\n31976=>7387,\n12169=>7388,\n33390=>7388,\n26280=>7389,\n32703=>7390,\n32718=>7391,\n32725=>7392,\n32741=>7393,\n32737=>7394,\n32742=>7395,\n32745=>7396,\n32750=>7397,\n32755=>7398,\n12151=>7399,\n31992=>7399,\n32119=>7400,\n32166=>7401,\n32174=>7402,\n32327=>7403,\n32411=>7404,\n40632=>7405,\n40628=>7406,\n36211=>7407,\n36228=>7408,\n36244=>7409,\n36241=>7410,\n36273=>7411,\n36199=>7412,\n36205=>7413,\n35911=>7414,\n35913=>7415,\n37194=>7416,\n37200=>7417,\n37198=>7418,\n37199=>7419,\n37220=>7420,\n37218=>7421,\n37217=>7422,\n37232=>7423,\n37225=>7424,\n37231=>7425,\n37245=>7426,\n37246=>7427,\n37234=>7428,\n37236=>7429,\n37241=>7430,\n37260=>7431,\n37253=>7432,\n37264=>7433,\n37261=>7434,\n37265=>7435,\n37282=>7436,\n37283=>7437,\n37290=>7438,\n37293=>7439,\n37294=>7440,\n37295=>7441,\n37301=>7442,\n37300=>7443,\n37306=>7444,\n12183=>7445,\n35925=>7445,\n40574=>7446,\n36280=>7447,\n36331=>7448,\n36357=>7449,\n36441=>7450,\n36457=>7451,\n36277=>7452,\n36287=>7453,\n36284=>7454,\n36282=>7455,\n36292=>7456,\n36310=>7457,\n36311=>7458,\n36314=>7459,\n36318=>7460,\n36302=>7461,\n36303=>7462,\n36315=>7463,\n36294=>7464,\n36332=>7465,\n36343=>7466,\n36344=>7467,\n36323=>7468,\n36345=>7469,\n36347=>7470,\n36324=>7471,\n36361=>7472,\n36349=>7473,\n36372=>7474,\n36381=>7475,\n36383=>7476,\n36396=>7477,\n36398=>7478,\n36387=>7479,\n36399=>7480,\n36410=>7481,\n36416=>7482,\n36409=>7483,\n36405=>7484,\n36413=>7485,\n36401=>7486,\n36425=>7487,\n36417=>7488,\n36418=>7489,\n36433=>7490,\n36434=>7491,\n36426=>7492,\n36464=>7493,\n36470=>7494,\n36476=>7495,\n36463=>7496,\n36468=>7497,\n36485=>7498,\n36495=>7499,\n36500=>7500,\n36496=>7501,\n36508=>7502,\n36510=>7503,\n12184=>7504,\n35960=>7504,\n35970=>7505,\n35978=>7506,\n35973=>7507,\n35992=>7508,\n35988=>7509,\n26011=>7510,\n35286=>7511,\n35294=>7512,\n35290=>7513,\n35292=>7514,\n35301=>7515,\n35307=>7516,\n35311=>7517,\n35390=>7518,\n35622=>7519,\n38739=>7520,\n38633=>7521,\n38643=>7522,\n38639=>7523,\n38662=>7524,\n38657=>7525,\n38664=>7526,\n38671=>7527,\n38670=>7528,\n38698=>7529,\n38701=>7530,\n38704=>7531,\n38718=>7532,\n40832=>7533,\n40835=>7534,\n40837=>7535,\n40838=>7536,\n40839=>7537,\n40840=>7538,\n40841=>7539,\n40842=>7540,\n40844=>7541,\n40702=>7542,\n40715=>7543,\n40717=>7544,\n12203=>7545,\n38585=>7545,\n38588=>7546,\n38589=>7547,\n38606=>7548,\n38610=>7549,\n30655=>7550,\n38624=>7551,\n37518=>7552,\n37550=>7553,\n37576=>7554,\n37694=>7555,\n37738=>7556,\n37834=>7557,\n37775=>7558,\n37950=>7559,\n37995=>7560,\n40063=>7561,\n40066=>7562,\n40069=>7563,\n40070=>7564,\n40071=>7565,\n40072=>7566,\n31267=>7567,\n40075=>7568,\n40078=>7569,\n40080=>7570,\n40081=>7571,\n40082=>7572,\n40084=>7573,\n40085=>7574,\n40090=>7575,\n40091=>7576,\n40094=>7577,\n40095=>7578,\n40096=>7579,\n40097=>7580,\n40098=>7581,\n40099=>7582,\n40101=>7583,\n40102=>7584,\n40103=>7585,\n40104=>7586,\n40105=>7587,\n40107=>7588,\n40109=>7589,\n40110=>7590,\n40112=>7591,\n40113=>7592,\n40114=>7593,\n40115=>7594,\n40116=>7595,\n40117=>7596,\n40118=>7597,\n40119=>7598,\n40122=>7599,\n40123=>7600,\n40124=>7601,\n40125=>7602,\n40132=>7603,\n40133=>7604,\n40134=>7605,\n40135=>7606,\n40138=>7607,\n40139=>7608,\n40140=>7609,\n40141=>7610,\n40142=>7611,\n40143=>7612,\n40144=>7613,\n40147=>7614,\n40148=>7615,\n40149=>7616,\n40151=>7617,\n40152=>7618,\n40153=>7619,\n40156=>7620,\n40157=>7621,\n40159=>7622,\n40162=>7623,\n38780=>7624,\n38789=>7625,\n38801=>7626,\n38802=>7627,\n38804=>7628,\n38831=>7629,\n38827=>7630,\n38819=>7631,\n38834=>7632,\n38836=>7633,\n39601=>7634,\n39600=>7635,\n39607=>7636,\n40536=>7637,\n39606=>7638,\n39610=>7639,\n39612=>7640,\n39617=>7641,\n39616=>7642,\n39621=>7643,\n39618=>7644,\n39627=>7645,\n39628=>7646,\n39633=>7647,\n39749=>7648,\n39747=>7649,\n39751=>7650,\n39753=>7651,\n39752=>7652,\n39757=>7653,\n39761=>7654,\n39144=>7655,\n39181=>7656,\n39214=>7657,\n39253=>7658,\n39252=>7659,\n12221=>7660,\n39647=>7660,\n39649=>7661,\n39654=>7662,\n39663=>7663,\n39659=>7664,\n39675=>7665,\n39661=>7666,\n39673=>7667,\n39688=>7668,\n39695=>7669,\n39699=>7670,\n39711=>7671,\n39715=>7672,\n40637=>7673,\n40638=>7674,\n32315=>7675,\n40578=>7676,\n40583=>7677,\n40584=>7678,\n40587=>7679,\n40594=>7680,\n37846=>7681,\n40605=>7682,\n40607=>7683,\n40667=>7684,\n40668=>7685,\n40669=>7686,\n40672=>7687,\n40671=>7688,\n40674=>7689,\n40681=>7690,\n40679=>7691,\n40677=>7692,\n40682=>7693,\n40687=>7694,\n40738=>7695,\n40748=>7696,\n40751=>7697,\n40761=>7698,\n40759=>7699,\n40765=>7700,\n40766=>7701,\n40772=>7702,\n12295=>7703,\n\n\n\n\n\n\n\n30362=>7717,\n34297=>7718,\n31001=>7719,\n24859=>7720,\n39599=>7721,\n35158=>7722,\n22761=>7723,\n32631=>7724,\n25850=>7725,\n25943=>7726,\n38930=>7727,\n36774=>7728,\n32070=>7729,\n24171=>7730,\n32129=>7731,\n37770=>7732,\n35607=>7733,\n39165=>7734,\n23542=>7735,\n22577=>7736,\n39825=>7737,\n36649=>7738,\n12185=>7739,\n35997=>7739,\n37575=>7740,\n29437=>7741,\n20633=>7742,\n24970=>7743,\n32179=>7744,\n31558=>7745,\n30050=>7746,\n25987=>7747,\n24163=>7748,\n38281=>7749,\n37002=>7750,\n32232=>7751,\n36022=>7752,\n35722=>7753,\n36783=>7754,\n36782=>7755,\n27161=>7756,\n40009=>7757,\n30303=>7758,\n28693=>7759,\n28657=>7760,\n36051=>7761,\n25839=>7762,\n39173=>7763,\n25765=>7764,\n37474=>7765,\n37457=>7766,\n39361=>7767,\n35036=>7768,\n36001=>7769,\n21443=>7770,\n34870=>7771,\n27544=>7772,\n24922=>7773,\n24920=>7774,\n29158=>7775,\n33980=>7776,\n33369=>7777,\n20489=>7778,\n28356=>7779,\n21408=>7780,\n20596=>7781,\n28204=>7782,\n23652=>7783,\n35435=>7784,\n25881=>7785,\n25723=>7786,\n34796=>7787,\n39262=>7788,\n35730=>7789,\n32399=>7790,\n37855=>7791,\n29987=>7792,\n38369=>7793,\n39019=>7794,\n22580=>7795,\n22039=>7796,\n12199=>7797,\n38263=>7797,\n20767=>7798,\n33144=>7799,\n24288=>7800,\n26274=>7801,\n37396=>7802,\n12190=>7803,\n36554=>7803,\n24505=>7804,\n22645=>7805,\n38515=>7806,\n35183=>7807,\n31281=>7808,\n25074=>7809,\n35488=>7810,\n39425=>7811,\n36978=>7812,\n39347=>7813,\n12242=>7814,\n40786=>7814,\n29118=>7815,\n34909=>7816,\n34802=>7817,\n23541=>7818,\n30087=>7819,\n36490=>7820,\n31820=>7821,\n32162=>7822,\n37276=>7823,\n37604=>7824,\n38619=>7825,\n30990=>7826,\n20786=>7827,\n35320=>7828,\n34389=>7829,\n20659=>7830,\n30241=>7831,\n38358=>7832,\n21109=>7833,\n37656=>7834,\n32020=>7835,\n32189=>7836,\n36781=>7837,\n35422=>7838,\n36060=>7839,\n32880=>7840,\n24478=>7841,\n21474=>7842,\n36517=>7843,\n31428=>7844,\n37679=>7845,\n36948=>7846,\n24118=>7847,\n36024=>7848,\n25812=>7849,\n21934=>7850,\n37170=>7851,\n25763=>7852,\n33213=>7853,\n24986=>7854,\n35477=>7855,\n24392=>7856,\n30070=>7857,\n25803=>7858,\n40680=>7859,\n34153=>7860,\n27284=>7861,\n25623=>7862,\n23798=>7863,\n31153=>7864,\n23566=>7865,\n29128=>7866,\n37159=>7867,\n25973=>7868,\n28364=>7869,\n36958=>7870,\n32224=>7871,\n39003=>7872,\n40670=>7873,\n22666=>7874,\n38651=>7875,\n28593=>7876,\n37347=>7877,\n35519=>7878,\n35548=>7879,\n37336=>7880,\n38914=>7881,\n37664=>7882,\n35330=>7883,\n26481=>7884,\n21205=>7885,\n26847=>7886,\n20941=>7887,\n12222=>7888,\n39717=>7888,\n29346=>7889,\n29544=>7890,\n35712=>7891,\n36077=>7892,\n37709=>7893,\n37723=>7894,\n26039=>7895,\n32222=>7896,\n38538=>7897,\n23565=>7898,\n22136=>7899,\n38931=>7900,\n37389=>7901,\n22890=>7902,\n22702=>7903,\n40285=>7904,\n38989=>7905,\n35355=>7906,\n24801=>7907,\n39187=>7908,\n20818=>7909,\n29246=>7910,\n39180=>7911,\n36019=>7912,\n30332=>7913,\n32624=>7914,\n38309=>7915,\n31020=>7916,\n37353=>7917,\n29033=>7918,\n31684=>7919,\n36009=>7920,\n39151=>7921,\n35370=>7922,\n32033=>7923,\n12214=>7924,\n39131=>7924,\n35513=>7925,\n24290=>7926,\n36027=>7927,\n32027=>7928,\n22707=>7929,\n22894=>7930,\n24996=>7931,\n31966=>7932,\n35920=>7933,\n26963=>7934,\n37586=>7935,\n12213=>7936,\n39080=>7936,\n30219=>7937,\n39342=>7938,\n32299=>7939,\n35575=>7940,\n40179=>7941,\n33178=>7942,\n36667=>7943,\n25771=>7944,\n36628=>7945,\n36070=>7946,\n24489=>7947,\n36000=>7948,\n35331=>7949,\n23142=>7950,\n32283=>7951,\n35442=>7952,\n37411=>7953,\n33995=>7954,\n24185=>7955,\n36245=>7956,\n36123=>7957,\n23713=>7958,\n21083=>7959,\n37628=>7960,\n32177=>7961,\n23831=>7962,\n37804=>7963,\n25841=>7964,\n40255=>7965,\n38307=>7966,\n37499=>7967,\n20491=>7968,\n32102=>7969,\n40852=>7970,\n38799=>7971,\n36002=>7972,\n37390=>7973,\n28317=>7974,\n27083=>7975,\n36092=>7976,\n34865=>7977,\n39015=>7978,\n21102=>7979,\n38364=>7980,\n35264=>7981,\n39208=>7982,\n24931=>7983,\n36011=>7984,\n24291=>7985,\n35215=>7986,\n27512=>7987,\n12244=>7988,\n40860=>7988,\n38312=>7989,\n36556=>7990,\n35437=>7991,\n27331=>7992,\n36020=>7993,\n21130=>7994,\n36645=>7995,\n37707=>7996,\n22283=>7997,\n36942=>7998,\n39405=>7999,\n38867=>8000,\n28450=>8001,\n34399=>8002,\n38305=>8003,\n40372=>8004,\n36032=>8005,\n36703=>8006,\n40251=>8007,\n32005=>8008,\n22778=>8009,\n35703=>8010,\n28396=>8011,\n22057=>8012,\n33775=>8013,\n30059=>8014,\n21123=>8015,\n35441=>8016,\n25079=>8017,\n22750=>8018,\n27489=>8019,\n29872=>8020,\n36996=>8021,\n32233=>8022,\n35594=>8023,\n25582=>8024,\n36637=>8025,\n36036=>8026,\n31330=>8027,\n26371=>8028,\n29172=>8029,\n21295=>8030,\n35569=>8031,\n35496=>8032,\n32362=>8033,\n33911=>8034,\n28222=>8035,\n29554=>8036,\n36008=>8037,\n31117=>8038,\n25802=>8039,\n27231=>8040,\n31309=>8041,\n39249=>8042,\n35663=>8043,\n40388=>8044,\n32318=>8045,\n32221=>8046,\n26997=>8047,\n36655=>8048,\n32026=>8049,\n25824=>8050,\n24190=>8051,\n34186=>8052,\n21137=>8053,\n28639=>8054,\n35336=>8055,\n35352=>8056,\n38555=>8057,\n32380=>8058,\n32000=>8059,\n22846=>8060,\n33698=>8061,\n38960=>8062,\n36040=>8063,\n37440=>8064,\n20729=>8065,\n39381=>8066,\n27570=>8067,\n30435=>8068,\n22533=>8069,\n31627=>8070,\n38291=>8071,\n33393=>8072,\n32216=>8073,\n32365=>8074,\n27298=>8075,\n40572=>8076,\n25536=>8077,\n25791=>8078,\n31777=>8079,\n20745=>8080,\n34214=>8081,\n27323=>8082,\n37970=>8083,\n36368=>8084,\n36068=>8085,\n12178=>8086,\n35211=>8086,\n37749=>8087,\n33382=>8088,\n21133=>8089,\n39198=>8090,\n28472=>8091,\n28666=>8092,\n28567=>8093,\n23559=>8094,\n28479=>8095,\n34083=>8096,\n27123=>8097,\n22892=>8098,\n35611=>8099,\n37292=>8100,\n33184=>8101,\n28550=>8102,\n39509=>8103,\n23308=>8104,\n25898=>8105,\n37496=>8106,\n30703=>8107,\n20709=>8108,\n39171=>8109,\n32371=>8110,\n32094=>8111,\n36686=>8112,\n36611=>8113,\n38542=>8114,\n31680=>8115,\n28500=>8116,\n32080=>8117,\n35489=>8118,\n32202=>8119,\n37670=>8120,\n20677=>8121,\n35641=>8122,\n36914=>8123,\n29180=>8124,\n30433=>8125,\n21185=>8126,\n33686=>8127,\n39912=>8128,\n39514=>8129,\n32147=>8130,\n38968=>8131,\n37857=>8132,\n24465=>8133,\n30169=>8134,\n31478=>8135,\n31998=>8136,\n33290=>8137,\n39378=>8138,\n33289=>8139,\n25818=>8140,\n37624=>8141,\n25084=>8142,\n21127=>8143,\n40273=>8144,\n32121=>8145,\n35258=>8146,\n35363=>8147,\n32118=>8148,\n37406=>8149,\n36557=>8150,\n39423=>8151,\n38283=>8152,\n20977=>8153,\n38982=>8154,\n27579=>8155,\n35506=>8156,\n22718=>8157,\n25031=>8158,\n25715=>8159,\n24235=>8160,\n35122=>8161,\n35463=>8162,\n22602=>8163,\n20744=>8164,\n23532=>8165,\n31014=>8166,\n26336=>8167,\n34407=>8168,\n24011=>8169,\n31418=>8170,\n39243=>8171,\n28528=>8172,\n25844=>8173,\n38346=>8174,\n34847=>8175,\n33240=>8176,\n33802=>8177,\n20358=>8178,\n36084=>8179,\n34253=>8180,\n27396=>8181,\n25876=>8182,\n31811=>8183,\n38348=>8184,\n34349=>8185,\n28734=>8186,\n35733=>8187,\n25900=>8188,\n35261=>8189,\n25078=>8190,\n32412=>8191,\n29211=>8192,\n28651=>8193,\n25736=>8194,\n21214=>8195,\n28551=>8196,\n27138=>8197,\n37939=>8198,\n22744=>8199,\n39006=>8200,\n31852=>8201,\n38626=>8202,\n28757=>8203,\n35023=>8204,\n63975=>8204,\n39881=>8205,\n31150=>8206,\n40599=>8207,\n21426=>8208,\n21237=>8209,\n31019=>8210,\n27511=>8211,\n28701=>8212,\n38584=>8213,\n20486=>8214,\n32879=>8215,\n34030=>8216,\n36899=>8217,\n37934=>8218,\n24976=>8219,\n28451=>8220,\n31806=>8221,\n25986=>8222,\n33225=>8223,\n37832=>8224,\n25088=>8225,\n29001=>8226,\n32244=>8227,\n31975=>8228,\n20841=>8229,\n36635=>8230,\n35538=>8231,\n30274=>8232,\n36988=>8233,\n37904=>8234,\n29557=>8235,\n33256=>8236,\n37168=>8237,\n40023=>8238,\n36035=>8239,\n40801=>8240,\n37428=>8241,\n38728=>8242,\n23994=>8243,\n38936=>8244,\n39230=>8245,\n21129=>8246,\n12243=>8247,\n40845=>8247,\n32894=>8248,\n22184=>8249,\n31840=>8250,\n22751=>8251,\n25871=>8252,\n38580=>8253,\n27155=>8254,\n23105=>8255,\n25695=>8256,\n31757=>8257,\n34310=>8258,\n30439=>8259,\n39025=>8260,\n24300=>8261,\n29200=>8262,\n25796=>8263,\n28407=>8264,\n34396=>8265,\n39791=>8266,\n36034=>8267,\n37682=>8268,\n38520=>8269,\n39522=>8270,\n37569=>8271,\n23650=>8272,\n32311=>8273,\n24942=>8274,\n28670=>8275,\n32209=>8276,\n24018=>8277,\n25891=>8278,\n23423=>8279,\n28772=>8280,\n20098=>8281,\n25476=>8282,\n36650=>8283,\n20523=>8284,\n20374=>8285,\n28138=>8286,\n32184=>8287,\n35542=>8288,\n34367=>8289,\n32645=>8290,\n37007=>8291,\n38012=>8292,\n31854=>8293,\n39486=>8294,\n39409=>8295,\n32097=>8296,\n23229=>8297,\n29802=>8298,\n30908=>8299,\n34718=>8300,\n12218=>8301,\n39340=>8301,\n39393=>8302,\n21966=>8303,\n36023=>8304,\n12230=>8305,\n40613=>8305,\n36067=>8306,\n36993=>8307,\n30622=>8308,\n39237=>8309,\n34875=>8310,\n28415=>8311,\n35646=>8312,\n37672=>8313,\n37466=>8314,\n36031=>8315,\n37762=>8316,\n12200=>8317,\n38272=>8317,\n24758=>8318,\n20497=>8319,\n37683=>8320,\n22818=>8321,\n35598=>8322,\n24396=>8323,\n35219=>8324,\n32191=>8325,\n32236=>8326,\n24287=>8327,\n28357=>8328,\n25003=>8329,\n38313=>8330,\n40180=>8331,\n37528=>8332,\n35628=>8333,\n35584=>8334,\n30045=>8335,\n37385=>8336,\n32013=>8337,\n38627=>8338,\n25747=>8339,\n33126=>8340,\n24817=>8341,\n39719=>8342,\n39186=>8343,\n25836=>8344,\n33193=>8345,\n25862=>8346,\n37312=>8347,\n12227=>8348,\n40165=>8348,\n32886=>8349,\n22169=>8350,\n38007=>8351,\n37811=>8352,\n27320=>8353,\n29552=>8354,\n23527=>8355,\n25840=>8356,\n28632=>8357,\n37397=>8358,\n32016=>8359,\n33215=>8360,\n28611=>8361,\n36786=>8362,\n30247=>8363,\n35582=>8364,\n27472=>8365,\n40407=>8366,\n27590=>8367,\n22036=>8368,\n28442=>8369,\n30436=>8370,\n40848=>8371,\n36064=>8372,\n22132=>8373,\n40300=>8374,\n39449=>8375,\n39108=>8376,\n38971=>8377,\n36007=>8378,\n34315=>8379,\n24977=>8380,\n35413=>8381,\n28497=>8382,\n38935=>8383,\n25778=>8384,\n37610=>8385,\n20693=>8386,\n27192=>8387,\n35676=>8388,\n33229=>8389,\n12241=>8390,\n40778=>8390,\n39438=>8391,\n35912=>8392,\n21843=>8393,\n27683=>8394,\n35350=>8395,\n29309=>8396,\n37370=>8397,\n37467=>8398,\n36983=>8399,\n31805=>8400,\n35609=>8401,\n37666=>8402,\n37463=>8403,\n28154=>8404,\n35700=>8405,\n22649=>8406,\n27085=>8407,\n21958=>8408,\n22715=>8409,\n34196=>8410,\n25654=>8411,\n37740=>8412,\n27211=>8413,\n21932=>8414,\n20689=>8415,\n32761=>8416,\n31429=>8417,\n31434=>8418,\n27453=>8419,\n35242=>8420,\n23522=>8421,\n36629=>8422,\n27691=>8423,\n20670=>8424,\n38915=>8425,\n35531=>8426,\n24950=>8427,\n29898=>8428,\n31406=>8429,\n36264=>8430,\n21312=>8431,\n36544=>8432,\n39493=>8433,\n40818=>8434,\n39028=>8435,\n27402=>8436,\n21240=>8437,\n40306=>8438,\n30906=>8439,\n35731=>8440,\n39250=>8441,\n25854=>8442,\n32350=>8443,\n29105=>8444,\n38860=>8445,\n35469=>8446,\n32009=>8447,\n27054=>8448,\n32104=>8449,\n36575=>8450,\n37613=>8451,\n38287=>8452,\n28516=>8453,\n28753=>8454,\n34217=>8455,\n39955=>8456,\n36093=>8457,\n20632=>8458,\n21930=>8459,\n39479=>8460,\n25475=>8461,\n28544=>8462,\n27578=>8463,\n32023=>8464,\n31721=>8465,\n26348=>8466,\n38275=>8467,\n38493=>8468,\n36109=>8469,\n32341=>8470,\n20663=>8471,\n36062=>8472,\n29138=>8473,\n32057=>8474,\n36050=>8475,\n25448=>8476,\n25885=>8477,\n25086=>8478,\n35373=>8479,\n32051=>8480,\n23529=>8481,\n23352=>8482,\n33102=>8483,\n28402=>8484,\n32882=>8485,\n32361=>8486,\n21213=>8487,\n32854=>8488,\n24107=>8489,\n29509=>8490,\n28629=>8491,\n35433=>8492,\n26178=>8493,\n34645=>8494,\n23526=>8495,\n35672=>8496,\n39387=>8497,\n21218=>8498,\n36969=>8499,\n37323=>8500,\n39166=>8501,\n35222=>8502,\n35430=>8503,\n22781=>8504,\n29560=>8505,\n27166=>8506,\n36664=>8507,\n26360=>8508,\n36118=>8509,\n23660=>8510,\n34899=>8511,\n27193=>8512,\n31466=>8513,\n25976=>8514,\n24101=>8515,\n38617=>8516,\n35504=>8517,\n38918=>8518,\n35500=>8519,\n30889=>8520,\n29197=>8521,\n32114=>8522,\n39164=>8523,\n39686=>8524,\n32883=>8525,\n24939=>8526,\n38924=>8527,\n35359=>8528,\n35494=>8529,\n25851=>8530,\n34311=>8531,\n35380=>8532,\n32901=>8533,\n38614=>8534,\n38568=>8535,\n32143=>8536,\n27506=>8537,\n23403=>8538,\n25613=>8539,\n32302=>8540,\n29795=>8541,\n37782=>8542,\n29562=>8543,\n25787=>8544,\n33274=>8545,\n24907=>8546,\n25892=>8547,\n36010=>8548,\n30321=>8549,\n28760=>8550,\n22727=>8551,\n35674=>8552,\n35527=>8553,\n22022=>8554,\n28271=>8555,\n29145=>8556,\n28644=>8557,\n32295=>8558,\n35342=>8559,\n39472=>8560,\n35588=>8561,\n37563=>8562,\n38988=>8563,\n39636=>8564,\n26781=>8565,\n36028=>8566,\n37941=>8567,\n24307=>8568,\n32893=>8569,\n28916=>8570,\n37509=>8571,\n32113=>8572,\n38957=>8573,\n22294=>8574,\n22615=>8575,\n22296=>8576,\n38973=>8577,\n40213=>8578,\n39345=>8579,\n39389=>8580,\n27234=>8581,\n31402=>8582,\n35178=>8583,\n24398=>8584,\n28771=>8585,\n38929=>8586,\n33836=>8587,\n32178=>8588,\n12209=>8589,\n38859=>8589,\n36949=>8590,\n22285=>8591,\n29234=>8592,\n28656=>8593,\n32173=>8594,\n33894=>8595,\n20553=>8596,\n20702=>8597,\n32239=>8598,\n35586=>8599,\n34907=>8600,\n32862=>8601,\n32011=>8602,\n31337=>8603,\n21839=>8604,\n25790=>8605,\n34680=>8606,\n28198=>8607,\n31401=>8608,\n21978=>8609,\n37794=>8610,\n28879=>8611,\n35491=>8612,\n28961=>8613,\n34154=>8614,\n22626=>8615,\n38695=>8616,\n21209=>8617,\n35492=>8618,\n37675=>8619,\n29351=>8620,\n35186=>8621,\n32722=>8622,\n37521=>8623,\n25138=>8624,\n32048=>8625,\n34662=>8626,\n36676=>8627,\n23805=>8628,\n20448=>8629,\n29433=>8630,\n22151=>8631,\n37697=>8632,\n39854=>8633,\n32406=>8634,\n36066=>8635,\n37532=>8636,\n38289=>8637,\n39023=>8638,\n38570=>8639,\n29694=>8640,\n29563=>8641,\n32291=>8642,\n39201=>8643,\n25010=>8644,\n32171=>8645,\n38002=>8646,\n37129=>8647,\n35443=>8648,\n38911=>8649,\n38917=>8650,\n34157=>8651,\n22210=>8652,\n37559=>8653,\n26313=>8654,\n22063=>8655,\n21332=>8656,\n25406=>8657,\n33029=>8658,\n35559=>8659,\n23531=>8660,\n28681=>8661,\n35613=>8662,\n37573=>8663,\n37313=>8664,\n33288=>8665,\n37561=>8666,\n32137=>8667,\n38920=>8668,\n35377=>8669,\n32210=>8670,\n32396=>8671,\n36562=>8672,\n25080=>8673,\n36984=>8674,\n30316=>8675,\n32098=>8676,\n23416=>8677,\n21211=>8678,\n35426=>8679,\n23563=>8680,\n39348=>8681,\n35347=>8682,\n35338=>8683,\n36956=>8684,\n22739=>8685,\n40201=>8686,\n40232=>8687,\n21854=>8688,\n20126=>8689,\n35357=>8690,\n38329=>8691,\n40573=>8692,\n22196=>8693,\n38996=>8694,\n38331=>8695,\n33399=>8696,\n21421=>8697,\n30831=>8698,\n35578=>8699,\n39511=>8700,\n40230=>8701,\n26954=>8702,\n25562=>8703,\n30221=>8704,\n38525=>8705,\n30306=>8706,\n39178=>8707,\n27171=>8708,\n22575=>8709,\n35617=>8710,\n34277=>8711,\n29242=>8712,\n12212=>8713,\n38913=>8713,\n26989=>8714,\n33865=>8715,\n37291=>8716,\n37541=>8717,\n38948=>8718,\n36986=>8719,\n20736=>8720,\n34811=>8721,\n34269=>8722,\n20740=>8723,\n25014=>8724,\n32681=>8725,\n35427=>8726,\n35696=>8727,\n35516=>8728,\n35695=>8729,\n32377=>8730,\n34093=>8731,\n38512=>8732,\n37504=>8733,\n39154=>8734,\n38577=>8735,\n27387=>8736,\n23344=>8737,\n40441=>8738,\n25033=>8739,\n32403=>8740,\n29801=>8741,\n34722=>8742,\n29151=>8743,\n29074=>8744,\n34821=>8745,\n36111=>8746,\n31310=>8747,\n21938=>8748,\n25793=>8749,\n20653=>8750,\n30320=>8751,\n36404=>8752,\n20778=>8753,\n24962=>8754,\n37109=>8755,\n37438=>8756,\n29494=>8757,\n35480=>8758,\n36671=>8759,\n39192=>8760,\n12226=>8761,\n39770=>8761,\n28417=>8762,\n33287=>8763,\n23996=>8764,\n35486=>8765,\n39729=>8766,\n29508=>8767,\n35709=>8768,\n38928=>8769,\n39341=>8770,\n40219=>8771,\n28149=>8772,\n36677=>8773,\n22290=>8774,\n21729=>8775,\n22291=>8776,\n32227=>8777,\n36960=>8778,\n39000=>8779,\n32004=>8780,\n36493=>8781,\n38000=>8782,\n38322=>8783,\n38642=>8784,\n37142=>8785,\n38549=>8786,\n36939=>8787,\n34292=>8788,\n37270=>8789,\n26248=>8790,\n38620=>8791,\n36617=>8792,\n25890=>8793,\n26283=>8794,\n36106=>8795,\n36124=>8796,\n33247=>8797,\n38015=>8798,\n26839=>8799,\n31432=>8800,\n36012=>8801,\n25799=>8802,\n21063=>8803,\n28580=>8804,\n36042=>8805,\n36104=>8806,\n36555=>8807,\n37720=>8808,\n38296=>8809,\n35408=>8810,\n40779=>8811,\n20661=>8812,\n27656=>8813,\n30430=>8814,\n26028=>8815,\n36670=>8816,\n23940=>8817,\n26855=>8818,\n25136=>8819,\n32187=>8820,\n24373=>8821,\n28466=>8822,\n24115=>8823,\n36076=>8824,\n33081=>8825,\n36249=>8826,\n34756=>8827,\n36685=>8828,\n37754=>8829,\n36889=>8830,\n35998=>8831,\n37341=>8832,\n20597=>8833,\n35386=>8834,\n37806=>8835,\n38499=>8836,\n24128=>8837,\n30309=>8838,\n37165=>8839,\n35657=>8840,\n32340=>8841,\n32887=>8842,\n22519=>8843,\n34937=>8844,\n32025=>8845,\n25711=>8846,\n25842=>8847,\n24159=>8848,\n36074=>8849,\n28399=>8850,\n37912=>8851,\n32066=>8852,\n31278=>8853,\n33131=>8854,\n34886=>8855,\n35589=>8856,\n36600=>8857,\n30394=>8858,\n26205=>8859,\n39519=>8860,\n35576=>8861,\n35461=>8862,\n29165=>8863,\n30682=>8864,\n22225=>8865,\n36015=>8866,\n37956=>8867,\n31689=>8868,\n39376=>8869,\n23560=>8870,\n30938=>8871,\n36681=>8872,\n36090=>8873,\n27137=>8874,\n33674=>8875,\n35037=>8876,\n22941=>8877,\n22767=>8878,\n29376=>8879,\n37648=>8880,\n36101=>8881,\n22684=>8882,\n32180=>8883,\n35524=>8884,\n28310=>8885,\n28609=>8886,\n36039=>8887,\n28460=>8888,\n32156=>8889,\n32317=>8890,\n32305=>8891,\n37138=>8892,\n35419=>8893,\n32068=>8894,\n38013=>8895,\n21959=>8896,\n21401=>8897,\n21428=>8898,\n38760=>8899,\n36107=>8900,\n21293=>8901,\n21297=>8902,\n36094=>8903,\n21060=>8904,\n21132=>8905,\n21108=>8906,\n20660=>8907,\n20480=>8908,\n20630=>8909,\n20757=>8910,\n20738=>8911,\n20756=>8912,\n20796=>8913,\n20791=>8914,\n20712=>8915,\n20674=>8916,\n20795=>8917,\n20752=>8918,\n20794=>8919,\n20681=>8920,\n31988=>8921,\n40652=>8922,\n22213=>8923,\n40172=>8924,\n35131=>8925,\n33248=>8926,\n35329=>8927,\n35344=>8928,\n35340=>8929,\n35349=>8930,\n35635=>8931,\n35406=>8932,\n35365=>8933,\n35393=>8934,\n35382=>8935,\n35398=>8936,\n35412=>8937,\n35416=>8938,\n35410=>8939,\n35462=>8940,\n35460=>8941,\n35455=>8942,\n35440=>8943,\n35452=>8944,\n35445=>8945,\n35436=>8946,\n35438=>8947,\n35533=>8948,\n35554=>8949,\n35425=>8950,\n35482=>8951,\n35493=>8952,\n35473=>8953,\n35474=>8954,\n35535=>8955,\n35537=>8956,\n35529=>8957,\n35547=>8958,\n35543=>8959,\n35522=>8960,\n35510=>8961,\n35574=>8962,\n35563=>8963,\n35604=>8964,\n35585=>8965,\n35556=>8966,\n35565=>8967,\n35580=>8968,\n35571=>8969,\n35558=>8970,\n35566=>8971,\n35550=>8972,\n35624=>8973,\n35740=>8974,\n35606=>8975,\n35610=>8976,\n35600=>8977,\n35627=>8978,\n35629=>8979,\n35670=>8980,\n35673=>8981,\n35662=>8982,\n35742=>8983,\n35691=>8984,\n35734=>8985,\n38488=>8986,\n37178=>8987,\n37140=>8988,\n37172=>8989,\n37087=>8990,\n37174=>8991,\n37126=>8992,\n37192=>8993,\n33467=>8994,\n21233=>8995,\n24048=>8996,\n22538=>8997,\n22745=>8998,\n22754=>8999,\n22752=>9000,\n22746=>9001,\n22497=>9002,\n22607=>9003,\n22550=>9004,\n22610=>9005,\n22557=>9006,\n22628=>9007,\n34188=>9008,\n34131=>9009,\n34294=>9010,\n33703=>9011,\n33799=>9012,\n34031=>9013,\n33511=>9014,\n34338=>9015,\n34086=>9016,\n22603=>9017,\n29026=>9018,\n34136=>9019,\n34045=>9020,\n34126=>9021,\n34184=>9022,\n34234=>9023,\n29334=>9024,\n28366=>9025,\n34113=>9026,\n34254=>9027,\n34130=>9028,\n33984=>9029,\n33874=>9030,\n33892=>9031,\n33940=>9032,\n33845=>9033,\n34207=>9034,\n34133=>9035,\n40367=>9036,\n33939=>9037,\n32264=>9038,\n34118=>9039,\n34146=>9040,\n34078=>9041,\n39488=>9042,\n34362=>9043,\n37795=>9044,\n34167=>9045,\n34334=>9046,\n34298=>9047,\n34308=>9048,\n34282=>9049,\n34330=>9050,\n22889=>9051,\n23607=>9052,\n25451=>9053,\n25718=>9054,\n25759=>9055,\n25681=>9056,\n25692=>9057,\n25779=>9058,\n25860=>9059,\n25878=>9060,\n25847=>9061,\n25852=>9062,\n25883=>9063,\n22064=>9064,\n22072=>9065,\n22216=>9066,\n22182=>9067,\n21764=>9068,\n21692=>9069,\n22144=>9070,\n22109=>9071,\n22112=>9072,\n22069=>9073,\n22006=>9074,\n22118=>9075,\n22130=>9076,\n22156=>9077,\n22117=>9078,\n22044=>9079,\n22062=>9080,\n21993=>9081,\n22038=>9082,\n22208=>9083,\n22029=>9084,\n22195=>9085,\n22209=>9086,\n22127=>9087,\n36705=>9088,\n22198=>9089,\n22165=>9090,\n22279=>9091,\n24131=>9092,\n24172=>9093,\n24152=>9094,\n24151=>9095,\n23943=>9096,\n23796=>9097,\n23888=>9098,\n23852=>9099,\n23975=>9100,\n23968=>9101,\n23959=>9102,\n23821=>9103,\n23992=>9104,\n23937=>9105,\n24020=>9106,\n24480=>9107,\n29559=>9108,\n29505=>9109,\n29546=>9110,\n29499=>9111,\n29547=>9112,\n29568=>9113,\n29564=>9114,\n39136=>9115,\n39219=>9116,\n39145=>9117,\n39228=>9118,\n39146=>9119,\n39147=>9120,\n39149=>9121,\n39156=>9122,\n39177=>9123,\n39185=>9124,\n39195=>9125,\n39223=>9126,\n39231=>9127,\n39235=>9128,\n39240=>9129,\n39241=>9130,\n39242=>9131,\n39244=>9132,\n39266=>9133,\n24289=>9134,\n36065=>9135,\n25082=>9136,\n25006=>9137,\n24938=>9138,\n24894=>9139,\n24757=>9140,\n24884=>9141,\n25036=>9142,\n24927=>9143,\n25064=>9144,\n24827=>9145,\n24887=>9146,\n24818=>9147,\n24947=>9148,\n24860=>9149,\n24978=>9150,\n38274=>9151,\n38278=>9152,\n38344=>9153,\n38286=>9154,\n38292=>9155,\n38284=>9156,\n38373=>9157,\n38317=>9158,\n38315=>9159,\n39726=>9160,\n38316=>9161,\n38334=>9162,\n38326=>9163,\n39721=>9164,\n38335=>9165,\n38333=>9166,\n38332=>9167,\n38339=>9168,\n38347=>9169,\n38356=>9170,\n38352=>9171,\n38357=>9172,\n38366=>9173,\n28739=>9174,\n28505=>9175,\n28711=>9176,\n28696=>9177,\n28668=>9178,\n28039=>9179,\n28025=>9180,\n28254=>9181,\n28590=>9182,\n28687=>9183,\n28408=>9184,\n28527=>9185,\n28150=>9186,\n28543=>9187,\n28678=>9188,\n28576=>9189,\n28683=>9190,\n28775=>9191,\n28740=>9192,\n28677=>9193,\n28535=>9194,\n28704=>9195,\n28703=>9196,\n28722=>9197,\n28712=>9198,\n28765=>9199,\n39467=>9200,\n36999=>9201,\n36885=>9202,\n37008=>9203,\n23656=>9204,\n24371=>9205,\n23285=>9206,\n23255=>9207,\n23296=>9208,\n23149=>9209,\n23304=>9210,\n23372=>9211,\n23207=>9212,\n23291=>9213,\n23307=>9214,\n23329=>9215,\n23338=>9216,\n23321=>9217,\n39380=>9218,\n39391=>9219,\n39385=>9220,\n39478=>9221,\n39515=>9222,\n39377=>9223,\n39384=>9224,\n39501=>9225,\n39498=>9226,\n39394=>9227,\n39530=>9228,\n39439=>9229,\n39437=>9230,\n39429=>9231,\n39490=>9232,\n39469=>9233,\n39446=>9234,\n39489=>9235,\n39470=>9236,\n39480=>9237,\n39491=>9238,\n39492=>9239,\n39503=>9240,\n39525=>9241,\n39524=>9242,\n31993=>9243,\n32006=>9244,\n32002=>9245,\n32007=>9246,\n32008=>9247,\n32394=>9248,\n32028=>9249,\n32021=>9250,\n32019=>9251,\n32058=>9252,\n32050=>9253,\n32049=>9254,\n32272=>9255,\n32060=>9256,\n32064=>9257,\n32063=>9258,\n32093=>9259,\n32078=>9260,\n32115=>9261,\n32134=>9262,\n32131=>9263,\n32136=>9264,\n32190=>9265,\n32186=>9266,\n32203=>9267,\n32212=>9268,\n32196=>9269,\n32158=>9270,\n32172=>9271,\n32185=>9272,\n32163=>9273,\n32176=>9274,\n32199=>9275,\n32217=>9276,\n32215=>9277,\n32249=>9278,\n32242=>9279,\n32354=>9280,\n32230=>9281,\n32246=>9282,\n32241=>9283,\n32267=>9284,\n32225=>9285,\n32265=>9286,\n32285=>9287,\n32287=>9288,\n32286=>9289,\n32301=>9290,\n32266=>9291,\n32273=>9292,\n32381=>9293,\n32313=>9294,\n32309=>9295,\n32306=>9296,\n32326=>9297,\n32325=>9298,\n32392=>9299,\n32346=>9300,\n32338=>9301,\n32366=>9302,\n32382=>9303,\n32368=>9304,\n32367=>9305,\n32408=>9306,\n29859=>9307,\n29771=>9308,\n29903=>9309,\n38922=>9310,\n29885=>9311,\n29759=>9312,\n29833=>9313,\n29862=>9314,\n29908=>9315,\n29914=>9316,\n38873=>9317,\n38878=>9318,\n38876=>9319,\n27050=>9320,\n27370=>9321,\n26776=>9322,\n26838=>9323,\n27141=>9324,\n26783=>9325,\n27355=>9326,\n27379=>9327,\n27368=>9328,\n27359=>9329,\n27273=>9330,\n26895=>9331,\n27208=>9332,\n26984=>9333,\n27071=>9334,\n27194=>9335,\n27292=>9336,\n27410=>9337,\n27422=>9338,\n27357=>9339,\n27111=>9340,\n27407=>9341,\n27414=>9342,\n27372=>9343,\n27354=>9344,\n27384=>9345,\n27315=>9346,\n27367=>9347,\n27299=>9348,\n27347=>9349,\n27358=>9350,\n27556=>9351,\n27550=>9352,\n27566=>9353,\n27563=>9354,\n27567=>9355,\n36564=>9356,\n36571=>9357,\n36594=>9358,\n36603=>9359,\n36708=>9360,\n36601=>9361,\n36604=>9362,\n36587=>9363,\n36580=>9364,\n36706=>9365,\n36602=>9366,\n36606=>9367,\n36618=>9368,\n36615=>9369,\n36613=>9370,\n36626=>9371,\n36646=>9372,\n36638=>9373,\n36639=>9374,\n36636=>9375,\n36659=>9376,\n36678=>9377,\n36692=>9378,\n25108=>9379,\n25127=>9380,\n29964=>9381,\n26311=>9382,\n26308=>9383,\n26249=>9384,\n26326=>9385,\n36033=>9386,\n36016=>9387,\n36026=>9388,\n36029=>9389,\n36100=>9390,\n36018=>9391,\n36037=>9392,\n36112=>9393,\n36049=>9394,\n36058=>9395,\n36053=>9396,\n36075=>9397,\n36071=>9398,\n36091=>9399,\n35224=>9400,\n35244=>9401,\n35233=>9402,\n35263=>9403,\n35238=>9404,\n35247=>9405,\n35250=>9406,\n35255=>9407,\n27647=>9408,\n27660=>9409,\n27692=>9410,\n29272=>9411,\n26407=>9412,\n33110=>9413,\n33242=>9414,\n33051=>9415,\n33214=>9416,\n33121=>9417,\n33231=>9418,\n27487=>9419,\n39086=>9420,\n39087=>9421,\n39094=>9422,\n39100=>9423,\n39110=>9424,\n39112=>9425,\n36674=>9426,\n40783=>9427,\n26005=>9428,\n29036=>9429,\n29010=>9430,\n29079=>9431,\n29121=>9432,\n29148=>9433,\n29182=>9434,\n31152=>9435,\n31118=>9436,\n31146=>9437,\n25055=>9438,\n24932=>9439,\n25059=>9440,\n25095=>9441,\n28585=>9442,\n30959=>9443,\n30893=>9444,\n30824=>9445,\n30904=>9446,\n31018=>9447,\n31025=>9448,\n30820=>9449,\n30973=>9450,\n30951=>9451,\n30947=>9452,\n40853=>9453,\n30616=>9454,\n30558=>9455,\n30652=>9456,\n32646=>9457,\n32648=>9458,\n37330=>9459,\n37331=>9460,\n37332=>9461,\n37337=>9462,\n37335=>9463,\n37333=>9464,\n37367=>9465,\n37351=>9466,\n37348=>9467,\n37702=>9468,\n37365=>9469,\n37369=>9470,\n37384=>9471,\n37414=>9472,\n37445=>9473,\n37393=>9474,\n37392=>9475,\n37377=>9476,\n37415=>9477,\n37380=>9478,\n37413=>9479,\n37376=>9480,\n37434=>9481,\n37478=>9482,\n37431=>9483,\n37427=>9484,\n37461=>9485,\n37437=>9486,\n37432=>9487,\n37470=>9488,\n37484=>9489,\n37485=>9490,\n37439=>9491,\n37984=>9492,\n37424=>9493,\n37449=>9494,\n37448=>9495,\n37453=>9496,\n37422=>9497,\n37433=>9498,\n37944=>9499,\n37548=>9500,\n37536=>9501,\n37498=>9502,\n37546=>9503,\n37614=>9504,\n37583=>9505,\n37891=>9506,\n37603=>9507,\n37946=>9508,\n37553=>9509,\n37542=>9510,\n37799=>9511,\n37526=>9512,\n37580=>9513,\n37545=>9514,\n37877=>9515,\n37523=>9516,\n37503=>9517,\n37801=>9518,\n37530=>9519,\n37658=>9520,\n37547=>9521,\n37507=>9522,\n37899=>9523,\n37544=>9524,\n37539=>9525,\n37906=>9526,\n37688=>9527,\n37617=>9528,\n37847=>9529,\n37605=>9530,\n37616=>9531,\n37615=>9532,\n37608=>9533,\n37564=>9534,\n37597=>9535,\n37622=>9536,\n37926=>9537,\n37927=>9538,\n37571=>9539,\n37599=>9540,\n37606=>9541,\n37650=>9542,\n37638=>9543,\n37737=>9544,\n37659=>9545,\n37696=>9546,\n37633=>9547,\n37653=>9548,\n37678=>9549,\n37699=>9550,\n37639=>9551,\n37640=>9552,\n37663=>9553,\n37657=>9554,\n37733=>9555,\n37703=>9556,\n37750=>9557,\n37716=>9558,\n37732=>9559,\n37802=>9560,\n37744=>9561,\n37764=>9562,\n37860=>9563,\n37848=>9564,\n37928=>9565,\n37767=>9566,\n37836=>9567,\n37784=>9568,\n37816=>9569,\n37823=>9570,\n37798=>9571,\n37808=>9572,\n37813=>9573,\n37964=>9574,\n37858=>9575,\n37852=>9576,\n37853=>9577,\n37837=>9578,\n37854=>9579,\n37827=>9580,\n37831=>9581,\n37841=>9582,\n37908=>9583,\n37917=>9584,\n37879=>9585,\n37989=>9586,\n37907=>9587,\n37997=>9588,\n37920=>9589,\n38009=>9590,\n37881=>9591,\n37913=>9592,\n37962=>9593,\n37938=>9594,\n37951=>9595,\n37972=>9596,\n37987=>9597,\n37758=>9598,\n31329=>9599,\n40169=>9600,\n40182=>9601,\n40199=>9602,\n40198=>9603,\n40227=>9604,\n40327=>9605,\n40469=>9606,\n40221=>9607,\n40223=>9608,\n40421=>9609,\n40239=>9610,\n40409=>9611,\n40240=>9612,\n40258=>9613,\n40478=>9614,\n40275=>9615,\n40477=>9616,\n40288=>9617,\n40274=>9618,\n40435=>9619,\n40284=>9620,\n40289=>9621,\n40339=>9622,\n40298=>9623,\n40303=>9624,\n40329=>9625,\n40344=>9626,\n40346=>9627,\n40384=>9628,\n40357=>9629,\n40361=>9630,\n40386=>9631,\n40380=>9632,\n40474=>9633,\n40403=>9634,\n40410=>9635,\n40431=>9636,\n40422=>9637,\n40434=>9638,\n40440=>9639,\n40460=>9640,\n40442=>9641,\n40475=>9642,\n30308=>9643,\n30296=>9644,\n30311=>9645,\n30210=>9646,\n30278=>9647,\n30279=>9648,\n30281=>9649,\n30238=>9650,\n30267=>9651,\n30317=>9652,\n30318=>9653,\n30313=>9654,\n30322=>9655,\n31431=>9656,\n31414=>9657,\n35168=>9658,\n35123=>9659,\n35165=>9660,\n35143=>9661,\n35128=>9662,\n35172=>9663,\n30392=>9664,\n32814=>9665,\n32812=>9666,\n32889=>9667,\n32885=>9668,\n38919=>9669,\n38926=>9670,\n38927=>9671,\n38945=>9672,\n38940=>9673,\n28481=>9674,\n38950=>9675,\n38967=>9676,\n38990=>9677,\n38995=>9678,\n39027=>9679,\n39010=>9680,\n39001=>9681,\n39013=>9682,\n39020=>9683,\n39024=>9684,\n34787=>9685,\n34822=>9686,\n34566=>9687,\n34851=>9688,\n34806=>9689,\n34554=>9690,\n34799=>9691,\n34692=>9692,\n34832=>9693,\n34760=>9694,\n34833=>9695,\n34747=>9696,\n34766=>9697,\n32588=>9698,\n31716=>9699,\n31591=>9700,\n31849=>9701,\n31731=>9702,\n31744=>9703,\n31691=>9704,\n31836=>9705,\n31774=>9706,\n31787=>9707,\n31779=>9708,\n31850=>9709,\n31839=>9710,\n33380=>9711,\n33387=>9712,\n35018=>9713,\n32677=>9714,\n31986=>9715,\n31990=>9716,\n31965=>9717,\n32310=>9718,\n40617=>9719,\n36274=>9720,\n37317=>9721,\n37315=>9722,\n40570=>9723,\n36489=>9724,\n36428=>9725,\n36498=>9726,\n36474=>9727,\n36437=>9728,\n36506=>9729,\n36491=>9730,\n36499=>9731,\n36497=>9732,\n36513=>9733,\n36451=>9734,\n36522=>9735,\n36518=>9736,\n35316=>9737,\n35318=>9738,\n38746=>9739,\n38722=>9740,\n38717=>9741,\n38724=>9742,\n40788=>9743,\n40799=>9744,\n40793=>9745,\n40800=>9746,\n40796=>9747,\n40806=>9748,\n40812=>9749,\n40810=>9750,\n40823=>9751,\n12236=>9752,\n40701=>9752,\n40703=>9753,\n40713=>9754,\n35726=>9755,\n38014=>9756,\n37864=>9757,\n39799=>9758,\n39796=>9759,\n39809=>9760,\n39811=>9761,\n39822=>9762,\n40056=>9763,\n31308=>9764,\n39826=>9765,\n40031=>9766,\n39824=>9767,\n39853=>9768,\n39834=>9769,\n39850=>9770,\n39838=>9771,\n40045=>9772,\n39851=>9773,\n39837=>9774,\n40024=>9775,\n39873=>9776,\n40058=>9777,\n39985=>9778,\n39993=>9779,\n39971=>9780,\n39991=>9781,\n39872=>9782,\n39882=>9783,\n39879=>9784,\n39933=>9785,\n39894=>9786,\n39914=>9787,\n39915=>9788,\n39905=>9789,\n39908=>9790,\n39911=>9791,\n39901=>9792,\n39906=>9793,\n39920=>9794,\n39899=>9795,\n39924=>9796,\n39892=>9797,\n40029=>9798,\n39944=>9799,\n39952=>9800,\n39949=>9801,\n39954=>9802,\n39945=>9803,\n39935=>9804,\n39968=>9805,\n39986=>9806,\n39981=>9807,\n39976=>9808,\n39973=>9809,\n39977=>9810,\n39987=>9811,\n39998=>9812,\n40008=>9813,\n39995=>9814,\n39989=>9815,\n40005=>9816,\n40022=>9817,\n40020=>9818,\n40018=>9819,\n40039=>9820,\n38851=>9821,\n38845=>9822,\n38857=>9823,\n40379=>9824,\n39631=>9825,\n39638=>9826,\n39637=>9827,\n39768=>9828,\n39758=>9829,\n39255=>9830,\n39260=>9831,\n39714=>9832,\n40695=>9833,\n40690=>9834,\n35180=>9835,\n38342=>9836,\n37686=>9837,\n24390=>9838,\n34068=>9839,\n32404=>9840,\n40803=>9841,\n22137=>9842,\n40725=>9843,\n22081=>9844,\n39662=>9845,\n35079=>9846,\n31296=>9847,\n39091=>9848,\n38308=>9849,\n39693=>9850,\n36852=>9851,\n24409=>9852,\n31339=>9853,\n39138=>9854,\n20642=>9855,\n34193=>9856,\n20760=>9857,\n25458=>9858,\n21067=>9859,\n30543=>9860,\n32397=>9861,\n26310=>9862,\n30637=>9863,\n12228=>9864,\n40565=>9864,\n22217=>9865,\n40692=>9866,\n28635=>9867,\n25054=>9868,\n30663=>9869,\n28720=>9870,\n40629=>9871,\n34890=>9872,\n38370=>9873,\n38854=>9874,\n31844=>9875,\n32308=>9876,\n38822=>9877,\n40623=>9878,\n22220=>9879,\n39089=>9880,\n27311=>9881,\n32590=>9882,\n31984=>9883,\n20418=>9884,\n32363=>9885,\n40569=>9886,\n22190=>9887,\n39706=>9888,\n33903=>9889,\n31142=>9890,\n31858=>9891,\n39634=>9892,\n38587=>9893,\n32251=>9894,\n35069=>9895,\n30787=>9896,\n8560=>9897,\n8561=>9898,\n8562=>9899,\n8563=>9900,\n8564=>9901,\n8565=>9902,\n8566=>9903,\n8567=>9904,\n8568=>9905,\n8569=>9906,\n714=>9907,\n715=>9908,\n729=>9909,\n8211=>9910,\n8213=>9911,\n8229=>9912,\n8245=>9913,\n8453=>9914,\n8457=>9915,\n8598=>9916,\n8599=>9917,\n8600=>9918,\n8601=>9919,\n8725=>9920,\n8735=>9921,\n8739=>9922,\n8786=>9923,\n8806=>9924,\n8807=>9925,\n8895=>9926,\n9552=>9927,\n9553=>9928,\n9554=>9929,\n9555=>9930,\n9556=>9931,\n9557=>9932,\n9558=>9933,\n9559=>9934,\n9560=>9935,\n9561=>9936,\n9562=>9937,\n9563=>9938,\n9564=>9939,\n9565=>9940,\n9566=>9941,\n9567=>9942,\n9568=>9943,\n9569=>9944,\n9570=>9945,\n9571=>9946,\n9572=>9947,\n9573=>9948,\n9574=>9949,\n9575=>9950,\n9576=>9951,\n9577=>9952,\n9578=>9953,\n9579=>9954,\n9580=>9955,\n9581=>9956,\n9582=>9957,\n9583=>9958,\n9584=>9959,\n9585=>9960,\n9586=>9961,\n9587=>9962,\n9601=>9963,\n9602=>9964,\n9603=>9965,\n9604=>9966,\n9605=>9967,\n9606=>9968,\n9607=>9969,\n9608=>9970,\n9609=>9971,\n9610=>9972,\n9611=>9973,\n9612=>9974,\n9613=>9975,\n9614=>9976,\n9615=>9977,\n9619=>9978,\n9620=>9979,\n9621=>9980,\n9660=>9981,\n9661=>9982,\n9698=>9983,\n9699=>9984,\n9700=>9985,\n9701=>9986,\n9737=>9987,\n8853=>9988,\n12306=>9989,\n12317=>9990,\n12318=>9991,\n12321=>9992,\n12322=>9993,\n12323=>9994,\n12324=>9995,\n12325=>9996,\n12326=>9997,\n12327=>9998,\n12328=>9999,\n12329=>10000,\n12963=>10001,\n13198=>10002,\n13199=>10003,\n13212=>10004,\n13213=>10005,\n13214=>10006,\n13217=>10007,\n13252=>10008,\n13262=>10009,\n13265=>10010,\n13266=>10011,\n13269=>10012,\n65072=>10013,\n65506=>10014,\n65508=>10015,\n8481=>10016,\n12849=>10017,\n8208=>10018,\n12540=>10019,\n12443=>10020,\n12444=>10021,\n12541=>10022,\n12542=>10023,\n12294=>10024,\n12445=>10025,\n12446=>10026,\n65097=>10027,\n65098=>10028,\n65099=>10029,\n65100=>10030,\n65101=>10031,\n65102=>10032,\n65103=>10033,\n65104=>10034,\n65105=>10035,\n65106=>10036,\n65108=>10037,\n65109=>10038,\n65110=>10039,\n65111=>10040,\n65113=>10041,\n65114=>10042,\n65115=>10043,\n65116=>10044,\n65117=>10045,\n65118=>10046,\n65119=>10047,\n65120=>10048,\n65121=>10049,\n65122=>10050,\n65123=>10051,\n65124=>10052,\n65125=>10053,\n65126=>10054,\n65128=>10055,\n65129=>10056,\n65130=>10057,\n65131=>10058,\n12350=>10059,\n59367=>10059,\n12272=>10060,\n59368=>10060,\n12273=>10061,\n59369=>10061,\n12274=>10062,\n59370=>10062,\n12275=>10063,\n59371=>10063,\n12276=>10064,\n59372=>10064,\n12277=>10065,\n59373=>10065,\n12278=>10066,\n59374=>10066,\n12279=>10067,\n59375=>10067,\n12280=>10068,\n59376=>10068,\n12281=>10069,\n59377=>10069,\n12282=>10070,\n59378=>10070,\n12283=>10071,\n59379=>10071,\n19970=>10072,\n19972=>10073,\n19973=>10074,\n19974=>10075,\n19983=>10076,\n19986=>10077,\n19991=>10078,\n19999=>10079,\n20000=>10080,\n20001=>10081,\n20003=>10082,\n20006=>10083,\n20009=>10084,\n20014=>10085,\n20015=>10086,\n20017=>10087,\n20019=>10088,\n20021=>10089,\n20023=>10090,\n20028=>10091,\n20032=>10092,\n20033=>10093,\n20034=>10094,\n20036=>10095,\n20038=>10096,\n20042=>10097,\n20049=>10098,\n20053=>10099,\n20055=>10100,\n20058=>10101,\n20059=>10102,\n20066=>10103,\n20067=>10104,\n20068=>10105,\n20069=>10106,\n20071=>10107,\n20072=>10108,\n20074=>10109,\n20075=>10110,\n20076=>10111,\n20077=>10112,\n20078=>10113,\n20079=>10114,\n20082=>10115,\n20084=>10116,\n20085=>10117,\n20086=>10118,\n20087=>10119,\n20088=>10120,\n20089=>10121,\n20090=>10122,\n20091=>10123,\n20092=>10124,\n20093=>10125,\n20095=>10126,\n20096=>10127,\n20097=>10128,\n20099=>10129,\n20100=>10130,\n12037=>10131,\n20101=>10131,\n20103=>10132,\n20106=>10133,\n20112=>10134,\n20118=>10135,\n20119=>10136,\n20121=>10137,\n20124=>10138,\n20125=>10139,\n20131=>10140,\n20138=>10141,\n20143=>10142,\n20144=>10143,\n20145=>10144,\n20148=>10145,\n20150=>10146,\n20151=>10147,\n20152=>10148,\n20153=>10149,\n20156=>10150,\n20157=>10151,\n20158=>10152,\n20168=>10153,\n20172=>10154,\n20175=>10155,\n20176=>10156,\n20178=>10157,\n20186=>10158,\n20187=>10159,\n20188=>10160,\n20192=>10161,\n20194=>10162,\n20198=>10163,\n20199=>10164,\n20201=>10165,\n20205=>10166,\n20206=>10167,\n20207=>10168,\n20209=>10169,\n20212=>10170,\n20216=>10171,\n20217=>10172,\n20218=>10173,\n20220=>10174,\n20222=>10175,\n20224=>10176,\n20226=>10177,\n20227=>10178,\n20228=>10179,\n20229=>10180,\n20230=>10181,\n20231=>10182,\n20232=>10183,\n20235=>10184,\n20236=>10185,\n20242=>10186,\n20243=>10187,\n20244=>10188,\n20245=>10189,\n20246=>10190,\n20252=>10191,\n20253=>10192,\n20257=>10193,\n20259=>10194,\n20264=>10195,\n20265=>10196,\n20268=>10197,\n20269=>10198,\n20270=>10199,\n20273=>10200,\n20275=>10201,\n20277=>10202,\n20279=>10203,\n20281=>10204,\n20283=>10205,\n20286=>10206,\n20287=>10207,\n20288=>10208,\n20289=>10209,\n20290=>10210,\n20292=>10211,\n20293=>10212,\n20295=>10213,\n20296=>10214,\n20297=>10215,\n20298=>10216,\n20299=>10217,\n20300=>10218,\n20306=>10219,\n20308=>10220,\n20310=>10221,\n20321=>10222,\n20322=>10223,\n20326=>10224,\n20328=>10225,\n20330=>10226,\n20331=>10227,\n20333=>10228,\n20334=>10229,\n20337=>10230,\n20338=>10231,\n20341=>10232,\n20343=>10233,\n20344=>10234,\n20345=>10235,\n20346=>10236,\n20349=>10237,\n20352=>10238,\n20353=>10239,\n20354=>10240,\n20357=>10241,\n20359=>10242,\n20362=>10243,\n20364=>10244,\n20366=>10245,\n20368=>10246,\n20370=>10247,\n20371=>10248,\n20373=>10249,\n20376=>10250,\n20377=>10251,\n20378=>10252,\n20380=>10253,\n20382=>10254,\n20383=>10255,\n20385=>10256,\n20386=>10257,\n20388=>10258,\n20395=>10259,\n20397=>10260,\n20400=>10261,\n20401=>10262,\n20402=>10263,\n20403=>10264,\n20404=>10265,\n20406=>10266,\n20407=>10267,\n20408=>10268,\n20409=>10269,\n20410=>10270,\n20411=>10271,\n20412=>10272,\n20413=>10273,\n20414=>10274,\n20416=>10275,\n20417=>10276,\n20422=>10277,\n20423=>10278,\n20424=>10279,\n20425=>10280,\n20427=>10281,\n20428=>10282,\n20429=>10283,\n20434=>10284,\n20435=>10285,\n20436=>10286,\n20437=>10287,\n20438=>10288,\n20441=>10289,\n20443=>10290,\n20450=>10291,\n20452=>10292,\n20453=>10293,\n20455=>10294,\n20459=>10295,\n20460=>10296,\n20464=>10297,\n20466=>10298,\n20468=>10299,\n20469=>10300,\n20470=>10301,\n20471=>10302,\n20473=>10303,\n20475=>10304,\n20476=>10305,\n20477=>10306,\n20479=>10307,\n20481=>10308,\n20482=>10309,\n20483=>10310,\n20484=>10311,\n20485=>10312,\n20487=>10313,\n20488=>10314,\n20490=>10315,\n20494=>10316,\n20496=>10317,\n20499=>10318,\n20501=>10319,\n20502=>10320,\n20503=>10321,\n20507=>10322,\n20509=>10323,\n20510=>10324,\n20512=>10325,\n20514=>10326,\n20515=>10327,\n20516=>10328,\n20519=>10329,\n20527=>10330,\n20528=>10331,\n20529=>10332,\n20530=>10333,\n20531=>10334,\n20532=>10335,\n20533=>10336,\n20534=>10337,\n20535=>10338,\n20536=>10339,\n20537=>10340,\n20539=>10341,\n20541=>10342,\n20543=>10343,\n20544=>10344,\n20545=>10345,\n20546=>10346,\n20548=>10347,\n20549=>10348,\n20550=>10349,\n20554=>10350,\n20555=>10351,\n20557=>10352,\n20560=>10353,\n20561=>10354,\n20562=>10355,\n20563=>10356,\n20564=>10357,\n20566=>10358,\n20567=>10359,\n20568=>10360,\n20569=>10361,\n20571=>10362,\n20573=>10363,\n20574=>10364,\n20575=>10365,\n20576=>10366,\n20577=>10367,\n20578=>10368,\n20579=>10369,\n20580=>10370,\n20582=>10371,\n20583=>10372,\n20584=>10373,\n20585=>10374,\n20586=>10375,\n20587=>10376,\n20589=>10377,\n20590=>10378,\n20591=>10379,\n20592=>10380,\n20593=>10381,\n20594=>10382,\n20595=>10383,\n20600=>10384,\n20601=>10385,\n20602=>10386,\n20604=>10387,\n20605=>10388,\n20609=>10389,\n20610=>10390,\n20611=>10391,\n20612=>10392,\n20614=>10393,\n20615=>10394,\n20617=>10395,\n20618=>10396,\n20619=>10397,\n20620=>10398,\n20622=>10399,\n20623=>10400,\n20624=>10401,\n20625=>10402,\n20626=>10403,\n20627=>10404,\n20628=>10405,\n20629=>10406,\n20631=>10407,\n20634=>10408,\n20635=>10409,\n20636=>10410,\n20637=>10411,\n20638=>10412,\n20639=>10413,\n20640=>10414,\n20641=>10415,\n20644=>10416,\n20646=>10417,\n20650=>10418,\n20651=>10419,\n20654=>10420,\n20655=>10421,\n20656=>10422,\n20657=>10423,\n20662=>10424,\n20664=>10425,\n20665=>10426,\n20668=>10427,\n20669=>10428,\n20671=>10429,\n20672=>10430,\n20673=>10431,\n20675=>10432,\n20676=>10433,\n20678=>10434,\n20679=>10435,\n20680=>10436,\n20682=>10437,\n20683=>10438,\n20684=>10439,\n20685=>10440,\n20686=>10441,\n20688=>10442,\n20690=>10443,\n20691=>10444,\n20692=>10445,\n20695=>10446,\n20696=>10447,\n20697=>10448,\n20699=>10449,\n20700=>10450,\n20701=>10451,\n20703=>10452,\n20704=>10453,\n20705=>10454,\n20706=>10455,\n20707=>10456,\n20708=>10457,\n20713=>10458,\n20714=>10459,\n20715=>10460,\n20719=>10461,\n20720=>10462,\n20721=>10463,\n20722=>10464,\n20724=>10465,\n20726=>10466,\n20727=>10467,\n20728=>10468,\n20730=>10469,\n20732=>10470,\n20733=>10471,\n20734=>10472,\n20735=>10473,\n20737=>10474,\n20739=>10475,\n20741=>10476,\n20746=>10477,\n20748=>10478,\n20749=>10479,\n20750=>10480,\n20751=>10481,\n20753=>10482,\n20755=>10483,\n20758=>10484,\n20759=>10485,\n20761=>10486,\n20762=>10487,\n20763=>10488,\n20764=>10489,\n20765=>10490,\n20766=>10491,\n20768=>10492,\n20770=>10493,\n20771=>10494,\n20772=>10495,\n20773=>10496,\n20774=>10497,\n20775=>10498,\n20776=>10499,\n20777=>10500,\n20779=>10501,\n20780=>10502,\n20781=>10503,\n20782=>10504,\n20783=>10505,\n20784=>10506,\n20785=>10507,\n20787=>10508,\n20788=>10509,\n20789=>10510,\n20790=>10511,\n20792=>10512,\n20793=>10513,\n20797=>10514,\n20798=>10515,\n20802=>10516,\n20807=>10517,\n20810=>10518,\n20812=>10519,\n20814=>10520,\n20815=>10521,\n20816=>10522,\n20819=>10523,\n20823=>10524,\n20824=>10525,\n20825=>10526,\n20827=>10527,\n20829=>10528,\n20830=>10529,\n20831=>10530,\n20832=>10531,\n20833=>10532,\n20835=>10533,\n20836=>10534,\n20838=>10535,\n20839=>10536,\n20842=>10537,\n20847=>10538,\n20850=>10539,\n20858=>10540,\n20862=>10541,\n20863=>10542,\n20867=>10543,\n20868=>10544,\n20870=>10545,\n20871=>10546,\n20874=>10547,\n20875=>10548,\n20878=>10549,\n20879=>10550,\n20880=>10551,\n20881=>10552,\n20883=>10553,\n20884=>10554,\n20888=>10555,\n20890=>10556,\n20893=>10557,\n20894=>10558,\n20895=>10559,\n20897=>10560,\n20899=>10561,\n20902=>10562,\n20903=>10563,\n20904=>10564,\n20905=>10565,\n20906=>10566,\n20909=>10567,\n20910=>10568,\n20916=>10569,\n20920=>10570,\n20921=>10571,\n20922=>10572,\n20926=>10573,\n20927=>10574,\n20929=>10575,\n20930=>10576,\n20931=>10577,\n20933=>10578,\n20936=>10579,\n20938=>10580,\n20942=>10581,\n20944=>10582,\n20946=>10583,\n20947=>10584,\n20948=>10585,\n20949=>10586,\n20950=>10587,\n20951=>10588,\n20952=>10589,\n20953=>10590,\n20954=>10591,\n20956=>10592,\n20958=>10593,\n20959=>10594,\n20962=>10595,\n20963=>10596,\n20965=>10597,\n20966=>10598,\n20967=>10599,\n20968=>10600,\n20969=>10601,\n20970=>10602,\n20972=>10603,\n20974=>10604,\n20978=>10605,\n20980=>10606,\n20983=>10607,\n20990=>10608,\n20996=>10609,\n20997=>10610,\n21001=>10611,\n21003=>10612,\n21004=>10613,\n21007=>10614,\n21008=>10615,\n21011=>10616,\n21012=>10617,\n21013=>10618,\n21020=>10619,\n21022=>10620,\n21023=>10621,\n21025=>10622,\n21026=>10623,\n21027=>10624,\n21029=>10625,\n21030=>10626,\n21031=>10627,\n21034=>10628,\n21036=>10629,\n21039=>10630,\n21041=>10631,\n21042=>10632,\n21044=>10633,\n21045=>10634,\n21052=>10635,\n21054=>10636,\n21061=>10637,\n21062=>10638,\n21064=>10639,\n21065=>10640,\n21070=>10641,\n21071=>10642,\n21074=>10643,\n21075=>10644,\n21077=>10645,\n21079=>10646,\n21080=>10647,\n21081=>10648,\n21082=>10649,\n21085=>10650,\n21087=>10651,\n21088=>10652,\n21090=>10653,\n21091=>10654,\n21092=>10655,\n21094=>10656,\n21096=>10657,\n21099=>10658,\n21100=>10659,\n21101=>10660,\n21104=>10661,\n21105=>10662,\n21107=>10663,\n21110=>10664,\n21111=>10665,\n21112=>10666,\n21113=>10667,\n21114=>10668,\n21115=>10669,\n21116=>10670,\n21118=>10671,\n21120=>10672,\n21124=>10673,\n21125=>10674,\n21126=>10675,\n21131=>10676,\n21134=>10677,\n21135=>10678,\n21138=>10679,\n21140=>10680,\n21141=>10681,\n21142=>10682,\n21143=>10683,\n21144=>10684,\n21145=>10685,\n21146=>10686,\n21148=>10687,\n21156=>10688,\n21157=>10689,\n21158=>10690,\n21159=>10691,\n21166=>10692,\n21167=>10693,\n21168=>10694,\n21172=>10695,\n21173=>10696,\n21174=>10697,\n21175=>10698,\n21176=>10699,\n21177=>10700,\n21178=>10701,\n21179=>10702,\n21180=>10703,\n21181=>10704,\n21184=>10705,\n21186=>10706,\n21188=>10707,\n21189=>10708,\n21190=>10709,\n21192=>10710,\n21194=>10711,\n21196=>10712,\n21197=>10713,\n21198=>10714,\n21199=>10715,\n21201=>10716,\n21203=>10717,\n21204=>10718,\n21207=>10719,\n21210=>10720,\n21212=>10721,\n21216=>10722,\n21217=>10723,\n21219=>10724,\n21221=>10725,\n21222=>10726,\n21223=>10727,\n21224=>10728,\n21225=>10729,\n21226=>10730,\n21227=>10731,\n21228=>10732,\n21229=>10733,\n21230=>10734,\n21231=>10735,\n21234=>10736,\n21235=>10737,\n21236=>10738,\n21238=>10739,\n21239=>10740,\n21243=>10741,\n21244=>10742,\n21245=>10743,\n21249=>10744,\n21250=>10745,\n21251=>10746,\n21252=>10747,\n21255=>10748,\n21257=>10749,\n21258=>10750,\n21259=>10751,\n21260=>10752,\n21262=>10753,\n21265=>10754,\n21266=>10755,\n21267=>10756,\n21268=>10757,\n21272=>10758,\n21275=>10759,\n21276=>10760,\n21278=>10761,\n21279=>10762,\n21282=>10763,\n21284=>10764,\n21285=>10765,\n21287=>10766,\n21288=>10767,\n21289=>10768,\n21291=>10769,\n21292=>10770,\n21296=>10771,\n21298=>10772,\n21299=>10773,\n21300=>10774,\n21301=>10775,\n21302=>10776,\n21303=>10777,\n12054=>10778,\n21304=>10778,\n21308=>10779,\n21309=>10780,\n21314=>10781,\n21316=>10782,\n21318=>10783,\n21323=>10784,\n21324=>10785,\n21325=>10786,\n21328=>10787,\n21336=>10788,\n21337=>10789,\n21339=>10790,\n21341=>10791,\n21349=>10792,\n21352=>10793,\n21354=>10794,\n21356=>10795,\n21357=>10796,\n21362=>10797,\n21366=>10798,\n21369=>10799,\n21371=>10800,\n21372=>10801,\n21373=>10802,\n21374=>10803,\n21376=>10804,\n21377=>10805,\n21379=>10806,\n21383=>10807,\n21384=>10808,\n21386=>10809,\n21390=>10810,\n21391=>10811,\n21392=>10812,\n21393=>10813,\n21394=>10814,\n21395=>10815,\n21396=>10816,\n21398=>10817,\n21399=>10818,\n21403=>10819,\n21404=>10820,\n21406=>10821,\n21409=>10822,\n21412=>10823,\n21415=>10824,\n21418=>10825,\n21419=>10826,\n21420=>10827,\n21423=>10828,\n21424=>10829,\n21425=>10830,\n21427=>10831,\n21429=>10832,\n21431=>10833,\n21432=>10834,\n21433=>10835,\n21434=>10836,\n21436=>10837,\n21437=>10838,\n21438=>10839,\n21440=>10840,\n21444=>10841,\n21445=>10842,\n21446=>10843,\n21447=>10844,\n21454=>10845,\n21455=>10846,\n21456=>10847,\n21458=>10848,\n21459=>10849,\n21461=>10850,\n21466=>10851,\n21468=>10852,\n21469=>10853,\n21470=>10854,\n21473=>10855,\n21479=>10856,\n21492=>10857,\n21498=>10858,\n21502=>10859,\n21503=>10860,\n21504=>10861,\n21506=>10862,\n21509=>10863,\n21511=>10864,\n21515=>10865,\n21524=>10866,\n21528=>10867,\n21529=>10868,\n21530=>10869,\n21532=>10870,\n21538=>10871,\n21540=>10872,\n21541=>10873,\n21546=>10874,\n21552=>10875,\n21555=>10876,\n21558=>10877,\n21559=>10878,\n21562=>10879,\n21565=>10880,\n21567=>10881,\n21569=>10882,\n21570=>10883,\n21572=>10884,\n21573=>10885,\n21575=>10886,\n21577=>10887,\n21580=>10888,\n21581=>10889,\n21582=>10890,\n21583=>10891,\n21585=>10892,\n21594=>10893,\n21597=>10894,\n21598=>10895,\n21599=>10896,\n21600=>10897,\n21601=>10898,\n21603=>10899,\n21605=>10900,\n21607=>10901,\n21609=>10902,\n21610=>10903,\n21611=>10904,\n21612=>10905,\n21613=>10906,\n21614=>10907,\n21615=>10908,\n21616=>10909,\n21620=>10910,\n21625=>10911,\n21626=>10912,\n21630=>10913,\n21631=>10914,\n21633=>10915,\n21635=>10916,\n21637=>10917,\n21639=>10918,\n21640=>10919,\n21641=>10920,\n21642=>10921,\n21645=>10922,\n21649=>10923,\n21651=>10924,\n21655=>10925,\n21656=>10926,\n21660=>10927,\n21662=>10928,\n21663=>10929,\n21664=>10930,\n21665=>10931,\n21666=>10932,\n21669=>10933,\n21678=>10934,\n21680=>10935,\n21682=>10936,\n21685=>10937,\n21686=>10938,\n21687=>10939,\n21689=>10940,\n21690=>10941,\n21694=>10942,\n21699=>10943,\n21701=>10944,\n21706=>10945,\n21707=>10946,\n21718=>10947,\n21720=>10948,\n21723=>10949,\n21728=>10950,\n21730=>10951,\n21731=>10952,\n21732=>10953,\n21739=>10954,\n21740=>10955,\n21743=>10956,\n21744=>10957,\n21745=>10958,\n21748=>10959,\n21749=>10960,\n21750=>10961,\n21751=>10962,\n21752=>10963,\n21753=>10964,\n21755=>10965,\n21758=>10966,\n21760=>10967,\n21762=>10968,\n21763=>10969,\n21765=>10970,\n21768=>10971,\n21770=>10972,\n21771=>10973,\n21772=>10974,\n21773=>10975,\n21774=>10976,\n21778=>10977,\n21779=>10978,\n21781=>10979,\n21782=>10980,\n21783=>10981,\n21784=>10982,\n21785=>10983,\n21786=>10984,\n21788=>10985,\n21789=>10986,\n21790=>10987,\n21791=>10988,\n21793=>10989,\n21797=>10990,\n21798=>10991,\n21800=>10992,\n21801=>10993,\n21803=>10994,\n21805=>10995,\n21810=>10996,\n21812=>10997,\n21813=>10998,\n21814=>10999,\n21816=>11000,\n21817=>11001,\n21818=>11002,\n21819=>11003,\n21821=>11004,\n21824=>11005,\n21826=>11006,\n21829=>11007,\n21831=>11008,\n21832=>11009,\n21835=>11010,\n21836=>11011,\n21837=>11012,\n21838=>11013,\n21841=>11014,\n21842=>11015,\n21844=>11016,\n21847=>11017,\n21848=>11018,\n21849=>11019,\n21850=>11020,\n21851=>11021,\n21853=>11022,\n21855=>11023,\n21856=>11024,\n21858=>11025,\n21859=>11026,\n21864=>11027,\n21865=>11028,\n21867=>11029,\n21871=>11030,\n21872=>11031,\n21873=>11032,\n21874=>11033,\n21875=>11034,\n21876=>11035,\n21881=>11036,\n21882=>11037,\n21885=>11038,\n21887=>11039,\n21893=>11040,\n21894=>11041,\n21900=>11042,\n21901=>11043,\n21902=>11044,\n21904=>11045,\n21906=>11046,\n21907=>11047,\n21909=>11048,\n21910=>11049,\n21911=>11050,\n21914=>11051,\n21915=>11052,\n21918=>11053,\n21920=>11054,\n21921=>11055,\n21922=>11056,\n21923=>11057,\n21924=>11058,\n21925=>11059,\n21926=>11060,\n21928=>11061,\n21929=>11062,\n21931=>11063,\n21933=>11064,\n21935=>11065,\n21936=>11066,\n21940=>11067,\n21942=>11068,\n21944=>11069,\n21946=>11070,\n21948=>11071,\n21951=>11072,\n21952=>11073,\n21953=>11074,\n21954=>11075,\n21955=>11076,\n21960=>11077,\n21962=>11078,\n21963=>11079,\n21967=>11080,\n21968=>11081,\n21973=>11082,\n21975=>11083,\n21976=>11084,\n21977=>11085,\n21979=>11086,\n21982=>11087,\n21984=>11088,\n21986=>11089,\n21991=>11090,\n21997=>11091,\n21998=>11092,\n22000=>11093,\n22001=>11094,\n22004=>11095,\n22008=>11096,\n22009=>11097,\n22010=>11098,\n22011=>11099,\n22012=>11100,\n22015=>11101,\n22018=>11102,\n22019=>11103,\n22020=>11104,\n22021=>11105,\n22023=>11106,\n22026=>11107,\n22027=>11108,\n22032=>11109,\n22033=>11110,\n22034=>11111,\n22035=>11112,\n22037=>11113,\n22041=>11114,\n22042=>11115,\n22045=>11116,\n22048=>11117,\n22049=>11118,\n22050=>11119,\n22053=>11120,\n22054=>11121,\n22056=>11122,\n22058=>11123,\n22059=>11124,\n22067=>11125,\n22071=>11126,\n22074=>11127,\n22076=>11128,\n22077=>11129,\n22078=>11130,\n22080=>11131,\n22082=>11132,\n22083=>11133,\n22084=>11134,\n22085=>11135,\n22086=>11136,\n22087=>11137,\n22088=>11138,\n22089=>11139,\n22090=>11140,\n22091=>11141,\n22095=>11142,\n22096=>11143,\n22097=>11144,\n22098=>11145,\n22099=>11146,\n22101=>11147,\n22102=>11148,\n22106=>11149,\n22107=>11150,\n22110=>11151,\n22111=>11152,\n22113=>11153,\n22115=>11154,\n22119=>11155,\n22125=>11156,\n22126=>11157,\n22128=>11158,\n22131=>11159,\n22133=>11160,\n22135=>11161,\n22138=>11162,\n22141=>11163,\n22142=>11164,\n22143=>11165,\n22145=>11166,\n22146=>11167,\n22147=>11168,\n22148=>11169,\n22152=>11170,\n22153=>11171,\n22154=>11172,\n22155=>11173,\n22157=>11174,\n22160=>11175,\n22161=>11176,\n22162=>11177,\n22164=>11178,\n22166=>11179,\n22167=>11180,\n22168=>11181,\n22170=>11182,\n22171=>11183,\n22172=>11184,\n22173=>11185,\n22174=>11186,\n22175=>11187,\n22176=>11188,\n22177=>11189,\n22178=>11190,\n22180=>11191,\n22181=>11192,\n22183=>11193,\n22185=>11194,\n22186=>11195,\n22187=>11196,\n22188=>11197,\n22189=>11198,\n22192=>11199,\n22193=>11200,\n22194=>11201,\n22197=>11202,\n22200=>11203,\n22201=>11204,\n22202=>11205,\n22203=>11206,\n22205=>11207,\n22206=>11208,\n22207=>11209,\n22211=>11210,\n22212=>11211,\n22214=>11212,\n22215=>11213,\n22219=>11214,\n22221=>11215,\n22222=>11216,\n22223=>11217,\n22224=>11218,\n22226=>11219,\n22227=>11220,\n22229=>11221,\n22230=>11222,\n22232=>11223,\n22233=>11224,\n22236=>11225,\n22243=>11226,\n22245=>11227,\n22246=>11228,\n22247=>11229,\n22248=>11230,\n22249=>11231,\n22250=>11232,\n22252=>11233,\n22254=>11234,\n22255=>11235,\n22258=>11236,\n22259=>11237,\n22262=>11238,\n22263=>11239,\n22264=>11240,\n22267=>11241,\n22268=>11242,\n22272=>11243,\n22273=>11244,\n22274=>11245,\n22277=>11246,\n22284=>11247,\n22286=>11248,\n22287=>11249,\n22288=>11250,\n22289=>11251,\n22292=>11252,\n22293=>11253,\n22295=>11254,\n22297=>11255,\n22298=>11256,\n22299=>11257,\n22301=>11258,\n22302=>11259,\n22304=>11260,\n22305=>11261,\n22306=>11262,\n22308=>11263,\n22309=>11264,\n22310=>11265,\n22311=>11266,\n22315=>11267,\n22321=>11268,\n22322=>11269,\n22324=>11270,\n22325=>11271,\n22326=>11272,\n22327=>11273,\n22328=>11274,\n22332=>11275,\n22333=>11276,\n22335=>11277,\n22337=>11278,\n22339=>11279,\n22340=>11280,\n22341=>11281,\n22342=>11282,\n22344=>11283,\n22345=>11284,\n22347=>11285,\n22354=>11286,\n22355=>11287,\n22356=>11288,\n22357=>11289,\n22358=>11290,\n22360=>11291,\n22361=>11292,\n22370=>11293,\n22371=>11294,\n22373=>11295,\n22375=>11296,\n22380=>11297,\n22382=>11298,\n22384=>11299,\n22385=>11300,\n22386=>11301,\n22388=>11302,\n22389=>11303,\n22392=>11304,\n22393=>11305,\n22394=>11306,\n22397=>11307,\n22398=>11308,\n22399=>11309,\n22400=>11310,\n22401=>11311,\n22407=>11312,\n22408=>11313,\n22409=>11314,\n22410=>11315,\n22413=>11316,\n22414=>11317,\n22415=>11318,\n22416=>11319,\n22417=>11320,\n22420=>11321,\n22421=>11322,\n22422=>11323,\n22423=>11324,\n22424=>11325,\n22425=>11326,\n22426=>11327,\n22428=>11328,\n22429=>11329,\n22430=>11330,\n22431=>11331,\n22437=>11332,\n22440=>11333,\n22442=>11334,\n22444=>11335,\n22447=>11336,\n22448=>11337,\n22449=>11338,\n22451=>11339,\n22453=>11340,\n22454=>11341,\n22455=>11342,\n22457=>11343,\n22458=>11344,\n22459=>11345,\n22460=>11346,\n22461=>11347,\n22462=>11348,\n22463=>11349,\n22464=>11350,\n22465=>11351,\n22468=>11352,\n22469=>11353,\n22470=>11354,\n22471=>11355,\n22472=>11356,\n22473=>11357,\n22474=>11358,\n22476=>11359,\n22477=>11360,\n22480=>11361,\n22481=>11362,\n22483=>11363,\n22486=>11364,\n22487=>11365,\n22491=>11366,\n22492=>11367,\n22494=>11368,\n22498=>11369,\n22499=>11370,\n22501=>11371,\n22502=>11372,\n22503=>11373,\n22504=>11374,\n22505=>11375,\n22506=>11376,\n22507=>11377,\n22508=>11378,\n22510=>11379,\n22512=>11380,\n22513=>11381,\n22514=>11382,\n22515=>11383,\n22517=>11384,\n22518=>11385,\n22523=>11386,\n22524=>11387,\n22526=>11388,\n22527=>11389,\n22529=>11390,\n22531=>11391,\n22532=>11392,\n22536=>11393,\n22537=>11394,\n22540=>11395,\n22542=>11396,\n22543=>11397,\n22544=>11398,\n22546=>11399,\n22547=>11400,\n22548=>11401,\n22551=>11402,\n22552=>11403,\n22554=>11404,\n22555=>11405,\n22556=>11406,\n22559=>11407,\n22562=>11408,\n22563=>11409,\n22565=>11410,\n22566=>11411,\n22567=>11412,\n22568=>11413,\n22569=>11414,\n22571=>11415,\n22572=>11416,\n22573=>11417,\n22574=>11418,\n22578=>11419,\n22579=>11420,\n22582=>11421,\n22583=>11422,\n22584=>11423,\n22585=>11424,\n22586=>11425,\n22587=>11426,\n22588=>11427,\n22589=>11428,\n22590=>11429,\n22591=>11430,\n22592=>11431,\n22593=>11432,\n22594=>11433,\n22595=>11434,\n22597=>11435,\n22598=>11436,\n22599=>11437,\n22600=>11438,\n22601=>11439,\n22606=>11440,\n22608=>11441,\n22611=>11442,\n22613=>11443,\n22614=>11444,\n22617=>11445,\n22618=>11446,\n22619=>11447,\n22620=>11448,\n22621=>11449,\n22623=>11450,\n22624=>11451,\n22625=>11452,\n22627=>11453,\n22630=>11454,\n22631=>11455,\n22632=>11456,\n22633=>11457,\n22634=>11458,\n22637=>11459,\n22638=>11460,\n22639=>11461,\n22640=>11462,\n22641=>11463,\n22642=>11464,\n22643=>11465,\n22644=>11466,\n22646=>11467,\n22647=>11468,\n22648=>11469,\n22650=>11470,\n22651=>11471,\n22652=>11472,\n22653=>11473,\n22655=>11474,\n22658=>11475,\n22660=>11476,\n22662=>11477,\n22663=>11478,\n22664=>11479,\n22667=>11480,\n22668=>11481,\n22669=>11482,\n22670=>11483,\n22671=>11484,\n22672=>11485,\n22673=>11486,\n22676=>11487,\n22677=>11488,\n22678=>11489,\n22679=>11490,\n22680=>11491,\n22683=>11492,\n22685=>11493,\n22688=>11494,\n22689=>11495,\n22690=>11496,\n22691=>11497,\n22692=>11498,\n22693=>11499,\n22694=>11500,\n22695=>11501,\n22698=>11502,\n22699=>11503,\n22700=>11504,\n22701=>11505,\n22703=>11506,\n22704=>11507,\n22705=>11508,\n22706=>11509,\n22708=>11510,\n22709=>11511,\n22710=>11512,\n22711=>11513,\n22712=>11514,\n22713=>11515,\n22714=>11516,\n22717=>11517,\n22719=>11518,\n22720=>11519,\n22722=>11520,\n22723=>11521,\n22724=>11522,\n22726=>11523,\n22728=>11524,\n22729=>11525,\n22730=>11526,\n22731=>11527,\n22732=>11528,\n22733=>11529,\n22734=>11530,\n22735=>11531,\n22736=>11532,\n22738=>11533,\n22740=>11534,\n22742=>11535,\n22743=>11536,\n22747=>11537,\n22748=>11538,\n22749=>11539,\n22753=>11540,\n22755=>11541,\n22757=>11542,\n22758=>11543,\n22759=>11544,\n22760=>11545,\n22762=>11546,\n22765=>11547,\n22769=>11548,\n22770=>11549,\n22772=>11550,\n22773=>11551,\n22775=>11552,\n22776=>11553,\n22779=>11554,\n22780=>11555,\n22782=>11556,\n22783=>11557,\n22784=>11558,\n22785=>11559,\n22787=>11560,\n22789=>11561,\n22790=>11562,\n22792=>11563,\n22793=>11564,\n12066=>11565,\n22794=>11565,\n22795=>11566,\n22796=>11567,\n22798=>11568,\n22800=>11569,\n22801=>11570,\n22802=>11571,\n22803=>11572,\n22807=>11573,\n22808=>11574,\n22811=>11575,\n22813=>11576,\n22814=>11577,\n22816=>11578,\n22817=>11579,\n22819=>11580,\n22822=>11581,\n22824=>11582,\n22828=>11583,\n22832=>11584,\n22834=>11585,\n22835=>11586,\n22837=>11587,\n22838=>11588,\n22843=>11589,\n22845=>11590,\n22847=>11591,\n22848=>11592,\n22851=>11593,\n22853=>11594,\n22854=>11595,\n22858=>11596,\n22860=>11597,\n22861=>11598,\n22864=>11599,\n22866=>11600,\n22867=>11601,\n22873=>11602,\n22875=>11603,\n22876=>11604,\n22877=>11605,\n22878=>11606,\n22879=>11607,\n22881=>11608,\n22883=>11609,\n22884=>11610,\n22886=>11611,\n22887=>11612,\n22888=>11613,\n22891=>11614,\n22893=>11615,\n22895=>11616,\n22896=>11617,\n22897=>11618,\n22898=>11619,\n22901=>11620,\n22903=>11621,\n22906=>11622,\n22907=>11623,\n22908=>11624,\n22910=>11625,\n22911=>11626,\n22912=>11627,\n22917=>11628,\n22921=>11629,\n22923=>11630,\n22924=>11631,\n22926=>11632,\n22927=>11633,\n22928=>11634,\n22929=>11635,\n22932=>11636,\n22933=>11637,\n22936=>11638,\n22938=>11639,\n22939=>11640,\n22940=>11641,\n22943=>11642,\n22944=>11643,\n22945=>11644,\n22946=>11645,\n22950=>11646,\n22951=>11647,\n22956=>11648,\n22957=>11649,\n22960=>11650,\n22961=>11651,\n22963=>11652,\n22964=>11653,\n22965=>11654,\n22966=>11655,\n22967=>11656,\n22968=>11657,\n22970=>11658,\n22972=>11659,\n22973=>11660,\n22975=>11661,\n22976=>11662,\n22977=>11663,\n22978=>11664,\n22979=>11665,\n22980=>11666,\n22981=>11667,\n22983=>11668,\n22984=>11669,\n22985=>11670,\n22988=>11671,\n22989=>11672,\n22990=>11673,\n22991=>11674,\n22997=>11675,\n22998=>11676,\n23001=>11677,\n23003=>11678,\n23006=>11679,\n23007=>11680,\n23008=>11681,\n23009=>11682,\n23010=>11683,\n23012=>11684,\n23014=>11685,\n23015=>11686,\n23017=>11687,\n23018=>11688,\n23019=>11689,\n23021=>11690,\n23022=>11691,\n23023=>11692,\n23024=>11693,\n23025=>11694,\n23026=>11695,\n23027=>11696,\n23028=>11697,\n23029=>11698,\n23030=>11699,\n23031=>11700,\n23032=>11701,\n23034=>11702,\n23036=>11703,\n23037=>11704,\n23038=>11705,\n23040=>11706,\n23042=>11707,\n23050=>11708,\n23051=>11709,\n23053=>11710,\n23054=>11711,\n23055=>11712,\n23056=>11713,\n23058=>11714,\n23060=>11715,\n23061=>11716,\n23062=>11717,\n23063=>11718,\n23065=>11719,\n23066=>11720,\n23067=>11721,\n23069=>11722,\n23070=>11723,\n23073=>11724,\n23074=>11725,\n23076=>11726,\n23078=>11727,\n23079=>11728,\n23080=>11729,\n23082=>11730,\n23083=>11731,\n23084=>11732,\n23085=>11733,\n23086=>11734,\n23087=>11735,\n23088=>11736,\n23091=>11737,\n23093=>11738,\n23095=>11739,\n23096=>11740,\n23097=>11741,\n23098=>11742,\n23099=>11743,\n23101=>11744,\n23102=>11745,\n23103=>11746,\n23106=>11747,\n23107=>11748,\n23108=>11749,\n23109=>11750,\n23111=>11751,\n23112=>11752,\n23115=>11753,\n23116=>11754,\n23117=>11755,\n23118=>11756,\n23119=>11757,\n23120=>11758,\n23121=>11759,\n23122=>11760,\n23123=>11761,\n23124=>11762,\n23126=>11763,\n23127=>11764,\n23128=>11765,\n23129=>11766,\n23131=>11767,\n23132=>11768,\n23133=>11769,\n23134=>11770,\n23135=>11771,\n23136=>11772,\n23137=>11773,\n23139=>11774,\n23140=>11775,\n23141=>11776,\n23144=>11777,\n23145=>11778,\n23147=>11779,\n23148=>11780,\n23150=>11781,\n23151=>11782,\n23152=>11783,\n23153=>11784,\n23154=>11785,\n23155=>11786,\n23160=>11787,\n23161=>11788,\n23163=>11789,\n23164=>11790,\n23165=>11791,\n23166=>11792,\n23168=>11793,\n23169=>11794,\n23170=>11795,\n23171=>11796,\n23172=>11797,\n23173=>11798,\n23174=>11799,\n23175=>11800,\n23176=>11801,\n23177=>11802,\n23178=>11803,\n23179=>11804,\n23180=>11805,\n23181=>11806,\n23182=>11807,\n23183=>11808,\n23184=>11809,\n23185=>11810,\n23187=>11811,\n23188=>11812,\n23189=>11813,\n23190=>11814,\n23191=>11815,\n23192=>11816,\n23193=>11817,\n23196=>11818,\n23197=>11819,\n23198=>11820,\n23199=>11821,\n23200=>11822,\n23201=>11823,\n23202=>11824,\n23203=>11825,\n23204=>11826,\n23205=>11827,\n23206=>11828,\n23208=>11829,\n23209=>11830,\n23211=>11831,\n23212=>11832,\n23213=>11833,\n23214=>11834,\n23215=>11835,\n23216=>11836,\n23217=>11837,\n23220=>11838,\n23222=>11839,\n23223=>11840,\n23225=>11841,\n23226=>11842,\n23227=>11843,\n23228=>11844,\n23231=>11845,\n23232=>11846,\n23235=>11847,\n23236=>11848,\n23237=>11849,\n23238=>11850,\n23239=>11851,\n23240=>11852,\n23242=>11853,\n23243=>11854,\n23245=>11855,\n23246=>11856,\n23247=>11857,\n23248=>11858,\n23249=>11859,\n23251=>11860,\n23253=>11861,\n23257=>11862,\n23258=>11863,\n23259=>11864,\n23261=>11865,\n23262=>11866,\n23263=>11867,\n23266=>11868,\n23268=>11869,\n23269=>11870,\n23271=>11871,\n23272=>11872,\n23274=>11873,\n23276=>11874,\n23277=>11875,\n23278=>11876,\n23279=>11877,\n23280=>11878,\n23282=>11879,\n23283=>11880,\n23284=>11881,\n23286=>11882,\n23287=>11883,\n23288=>11884,\n23289=>11885,\n23290=>11886,\n23292=>11887,\n23293=>11888,\n23294=>11889,\n23295=>11890,\n23297=>11891,\n23298=>11892,\n23299=>11893,\n23300=>11894,\n23301=>11895,\n23302=>11896,\n23303=>11897,\n23306=>11898,\n23309=>11899,\n23310=>11900,\n23311=>11901,\n23312=>11902,\n23313=>11903,\n23314=>11904,\n23315=>11905,\n23316=>11906,\n23317=>11907,\n23320=>11908,\n23322=>11909,\n23323=>11910,\n23324=>11911,\n23325=>11912,\n23326=>11913,\n23327=>11914,\n23328=>11915,\n23330=>11916,\n23331=>11917,\n23332=>11918,\n23333=>11919,\n23334=>11920,\n23335=>11921,\n23336=>11922,\n23337=>11923,\n23339=>11924,\n23340=>11925,\n23341=>11926,\n23342=>11927,\n23343=>11928,\n23345=>11929,\n23347=>11930,\n23349=>11931,\n23350=>11932,\n23353=>11933,\n23354=>11934,\n23355=>11935,\n23356=>11936,\n23357=>11937,\n23358=>11938,\n23359=>11939,\n23361=>11940,\n23362=>11941,\n23363=>11942,\n23364=>11943,\n23365=>11944,\n23366=>11945,\n23367=>11946,\n23368=>11947,\n23369=>11948,\n23370=>11949,\n23371=>11950,\n23373=>11951,\n23374=>11952,\n23375=>11953,\n23378=>11954,\n23382=>11955,\n23390=>11956,\n23392=>11957,\n23393=>11958,\n23399=>11959,\n23400=>11960,\n23405=>11961,\n23406=>11962,\n23407=>11963,\n23410=>11964,\n23412=>11965,\n23414=>11966,\n23415=>11967,\n23417=>11968,\n23419=>11969,\n23420=>11970,\n23422=>11971,\n23426=>11972,\n23430=>11973,\n23434=>11974,\n23437=>11975,\n23438=>11976,\n23440=>11977,\n23441=>11978,\n23442=>11979,\n23444=>11980,\n23446=>11981,\n23455=>11982,\n23463=>11983,\n23464=>11984,\n23465=>11985,\n23468=>11986,\n23469=>11987,\n23470=>11988,\n23471=>11989,\n23473=>11990,\n23474=>11991,\n23479=>11992,\n23482=>11993,\n23483=>11994,\n23484=>11995,\n23488=>11996,\n23489=>11997,\n23491=>11998,\n23496=>11999,\n23497=>12000,\n23498=>12001,\n23499=>12002,\n23501=>12003,\n23502=>12004,\n23503=>12005,\n23505=>12006,\n23508=>12007,\n23509=>12008,\n23510=>12009,\n23511=>12010,\n23512=>12011,\n23513=>12012,\n23514=>12013,\n23515=>12014,\n23516=>12015,\n23520=>12016,\n23523=>12017,\n23530=>12018,\n23533=>12019,\n23535=>12020,\n23537=>12021,\n23538=>12022,\n23539=>12023,\n23540=>12024,\n23543=>12025,\n23549=>12026,\n23550=>12027,\n23552=>12028,\n23554=>12029,\n23555=>12030,\n23557=>12031,\n23564=>12032,\n23568=>12033,\n23570=>12034,\n23571=>12035,\n23575=>12036,\n23577=>12037,\n23579=>12038,\n23582=>12039,\n23583=>12040,\n23584=>12041,\n23585=>12042,\n23587=>12043,\n23590=>12044,\n23592=>12045,\n23593=>12046,\n23594=>12047,\n23595=>12048,\n23597=>12049,\n23598=>12050,\n23599=>12051,\n23600=>12052,\n23602=>12053,\n23603=>12054,\n23605=>12055,\n23606=>12056,\n23619=>12057,\n23620=>12058,\n23622=>12059,\n23623=>12060,\n23628=>12061,\n23629=>12062,\n23634=>12063,\n23635=>12064,\n23636=>12065,\n23638=>12066,\n23639=>12067,\n23640=>12068,\n23642=>12069,\n23643=>12070,\n23644=>12071,\n23645=>12072,\n23647=>12073,\n23655=>12074,\n23657=>12075,\n23658=>12076,\n23659=>12077,\n23661=>12078,\n23664=>12079,\n23666=>12080,\n23667=>12081,\n23668=>12082,\n23669=>12083,\n23670=>12084,\n23671=>12085,\n23672=>12086,\n23675=>12087,\n23676=>12088,\n23677=>12089,\n23678=>12090,\n23680=>12091,\n23683=>12092,\n23684=>12093,\n23685=>12094,\n23686=>12095,\n23687=>12096,\n23689=>12097,\n23690=>12098,\n23691=>12099,\n23694=>12100,\n23695=>12101,\n23698=>12102,\n23699=>12103,\n23701=>12104,\n23709=>12105,\n23710=>12106,\n23711=>12107,\n23712=>12108,\n23716=>12109,\n23717=>12110,\n23718=>12111,\n23719=>12112,\n23720=>12113,\n23722=>12114,\n23726=>12115,\n23727=>12116,\n23728=>12117,\n23730=>12118,\n23732=>12119,\n23734=>12120,\n23737=>12121,\n23738=>12122,\n23739=>12123,\n23740=>12124,\n23742=>12125,\n23744=>12126,\n23746=>12127,\n23747=>12128,\n23749=>12129,\n23750=>12130,\n23751=>12131,\n23752=>12132,\n23753=>12133,\n23754=>12134,\n23756=>12135,\n23757=>12136,\n23758=>12137,\n23759=>12138,\n23760=>12139,\n23761=>12140,\n23763=>12141,\n23764=>12142,\n23765=>12143,\n23766=>12144,\n23767=>12145,\n23768=>12146,\n23770=>12147,\n23771=>12148,\n23772=>12149,\n23773=>12150,\n23774=>12151,\n23775=>12152,\n23776=>12153,\n23778=>12154,\n23779=>12155,\n23783=>12156,\n23785=>12157,\n23787=>12158,\n23788=>12159,\n23790=>12160,\n23791=>12161,\n23793=>12162,\n23794=>12163,\n23795=>12164,\n23797=>12165,\n23799=>12166,\n23800=>12167,\n23801=>12168,\n23802=>12169,\n23804=>12170,\n23806=>12171,\n23807=>12172,\n23808=>12173,\n23809=>12174,\n23812=>12175,\n23813=>12176,\n23816=>12177,\n23817=>12178,\n23818=>12179,\n23819=>12180,\n23820=>12181,\n23823=>12182,\n23824=>12183,\n23825=>12184,\n23826=>12185,\n23827=>12186,\n23829=>12187,\n23832=>12188,\n23833=>12189,\n23834=>12190,\n23836=>12191,\n23837=>12192,\n23839=>12193,\n23840=>12194,\n23841=>12195,\n23842=>12196,\n23843=>12197,\n23845=>12198,\n23848=>12199,\n23850=>12200,\n23851=>12201,\n23855=>12202,\n23856=>12203,\n23857=>12204,\n23858=>12205,\n23859=>12206,\n23861=>12207,\n23862=>12208,\n23863=>12209,\n23864=>12210,\n23865=>12211,\n23866=>12212,\n23867=>12213,\n23868=>12214,\n23871=>12215,\n23872=>12216,\n23873=>12217,\n23874=>12218,\n23875=>12219,\n23876=>12220,\n23877=>12221,\n23878=>12222,\n23880=>12223,\n23881=>12224,\n23885=>12225,\n23886=>12226,\n23887=>12227,\n23889=>12228,\n23890=>12229,\n23891=>12230,\n23892=>12231,\n23893=>12232,\n23894=>12233,\n23895=>12234,\n23897=>12235,\n23898=>12236,\n23900=>12237,\n23902=>12238,\n23903=>12239,\n23904=>12240,\n23905=>12241,\n23906=>12242,\n23907=>12243,\n23908=>12244,\n23909=>12245,\n23910=>12246,\n23911=>12247,\n23912=>12248,\n23914=>12249,\n23917=>12250,\n23918=>12251,\n23920=>12252,\n23921=>12253,\n23922=>12254,\n23923=>12255,\n23925=>12256,\n23926=>12257,\n23927=>12258,\n23928=>12259,\n23929=>12260,\n23930=>12261,\n23931=>12262,\n23932=>12263,\n23933=>12264,\n23934=>12265,\n23935=>12266,\n23936=>12267,\n23939=>12268,\n23941=>12269,\n23942=>12270,\n23944=>12271,\n23945=>12272,\n23946=>12273,\n23947=>12274,\n23948=>12275,\n23949=>12276,\n23950=>12277,\n23951=>12278,\n23952=>12279,\n23953=>12280,\n23954=>12281,\n23955=>12282,\n23956=>12283,\n23957=>12284,\n23958=>12285,\n23960=>12286,\n23962=>12287,\n23963=>12288,\n23964=>12289,\n23966=>12290,\n23967=>12291,\n23969=>12292,\n23970=>12293,\n23971=>12294,\n23972=>12295,\n23973=>12296,\n23974=>12297,\n23976=>12298,\n23977=>12299,\n23978=>12300,\n23979=>12301,\n23980=>12302,\n23981=>12303,\n23982=>12304,\n23983=>12305,\n23984=>12306,\n23985=>12307,\n23986=>12308,\n23987=>12309,\n23988=>12310,\n23989=>12311,\n23990=>12312,\n23993=>12313,\n23995=>12314,\n23997=>12315,\n23998=>12316,\n23999=>12317,\n24000=>12318,\n24001=>12319,\n24002=>12320,\n24003=>12321,\n24004=>12322,\n24006=>12323,\n24007=>12324,\n24008=>12325,\n24009=>12326,\n24010=>12327,\n24012=>12328,\n24014=>12329,\n24015=>12330,\n24016=>12331,\n24017=>12332,\n24019=>12333,\n24021=>12334,\n24022=>12335,\n24023=>12336,\n24024=>12337,\n24025=>12338,\n24026=>12339,\n24028=>12340,\n24031=>12341,\n24032=>12342,\n24035=>12343,\n24036=>12344,\n24042=>12345,\n24044=>12346,\n24045=>12347,\n24053=>12348,\n24054=>12349,\n24056=>12350,\n24057=>12351,\n24058=>12352,\n24059=>12353,\n24060=>12354,\n24063=>12355,\n24064=>12356,\n24068=>12357,\n24071=>12358,\n24073=>12359,\n24074=>12360,\n24075=>12361,\n24077=>12362,\n24078=>12363,\n24082=>12364,\n24083=>12365,\n24087=>12366,\n24094=>12367,\n24095=>12368,\n24096=>12369,\n24097=>12370,\n24098=>12371,\n24099=>12372,\n24100=>12373,\n24104=>12374,\n24105=>12375,\n24106=>12376,\n24108=>12377,\n24111=>12378,\n24112=>12379,\n24114=>12380,\n24116=>12381,\n24117=>12382,\n24121=>12383,\n24122=>12384,\n24126=>12385,\n24127=>12386,\n24129=>12387,\n24134=>12388,\n24135=>12389,\n24136=>12390,\n24137=>12391,\n24138=>12392,\n24139=>12393,\n24141=>12394,\n24142=>12395,\n24143=>12396,\n24144=>12397,\n24145=>12398,\n24146=>12399,\n24147=>12400,\n24150=>12401,\n24153=>12402,\n24154=>12403,\n24156=>12404,\n24157=>12405,\n24160=>12406,\n24164=>12407,\n24165=>12408,\n24166=>12409,\n24167=>12410,\n24168=>12411,\n24169=>12412,\n24170=>12413,\n24173=>12414,\n24174=>12415,\n24175=>12416,\n24176=>12417,\n24177=>12418,\n24181=>12419,\n24183=>12420,\n24193=>12421,\n24194=>12422,\n24195=>12423,\n24197=>12424,\n24200=>12425,\n24201=>12426,\n24204=>12427,\n24205=>12428,\n24206=>12429,\n24210=>12430,\n24216=>12431,\n24219=>12432,\n24221=>12433,\n24225=>12434,\n24226=>12435,\n24227=>12436,\n24228=>12437,\n24232=>12438,\n24233=>12439,\n24234=>12440,\n24236=>12441,\n24238=>12442,\n24239=>12443,\n24240=>12444,\n24241=>12445,\n24242=>12446,\n24244=>12447,\n24250=>12448,\n24251=>12449,\n24252=>12450,\n24253=>12451,\n24255=>12452,\n24256=>12453,\n24257=>12454,\n24258=>12455,\n24259=>12456,\n24260=>12457,\n24261=>12458,\n24262=>12459,\n24263=>12460,\n24264=>12461,\n24267=>12462,\n24268=>12463,\n24269=>12464,\n24270=>12465,\n24271=>12466,\n24272=>12467,\n24276=>12468,\n24277=>12469,\n24279=>12470,\n24280=>12471,\n24281=>12472,\n24282=>12473,\n24284=>12474,\n24285=>12475,\n24286=>12476,\n24292=>12477,\n24293=>12478,\n24294=>12479,\n24295=>12480,\n24297=>12481,\n24299=>12482,\n24301=>12483,\n24302=>12484,\n24303=>12485,\n24304=>12486,\n24305=>12487,\n24306=>12488,\n24309=>12489,\n24312=>12490,\n24313=>12491,\n24315=>12492,\n24316=>12493,\n24317=>12494,\n24325=>12495,\n24326=>12496,\n24327=>12497,\n24329=>12498,\n24332=>12499,\n24333=>12500,\n24334=>12501,\n24336=>12502,\n24338=>12503,\n24340=>12504,\n24342=>12505,\n24345=>12506,\n24346=>12507,\n24348=>12508,\n24349=>12509,\n24350=>12510,\n24353=>12511,\n24354=>12512,\n24355=>12513,\n24356=>12514,\n24360=>12515,\n24363=>12516,\n24364=>12517,\n24366=>12518,\n24368=>12519,\n24370=>12520,\n24372=>12521,\n24374=>12522,\n24375=>12523,\n24376=>12524,\n24379=>12525,\n24381=>12526,\n24382=>12527,\n24383=>12528,\n24385=>12529,\n24386=>12530,\n24387=>12531,\n24388=>12532,\n24389=>12533,\n24391=>12534,\n24393=>12535,\n24394=>12536,\n24395=>12537,\n24397=>12538,\n24399=>12539,\n24401=>12540,\n24404=>12541,\n24410=>12542,\n24411=>12543,\n24412=>12544,\n24414=>12545,\n24415=>12546,\n24416=>12547,\n24419=>12548,\n24421=>12549,\n24423=>12550,\n24424=>12551,\n24427=>12552,\n24430=>12553,\n24431=>12554,\n24434=>12555,\n24436=>12556,\n24437=>12557,\n24438=>12558,\n24440=>12559,\n24442=>12560,\n24445=>12561,\n24446=>12562,\n24447=>12563,\n24451=>12564,\n24454=>12565,\n24461=>12566,\n24462=>12567,\n24463=>12568,\n24467=>12569,\n24468=>12570,\n24470=>12571,\n24474=>12572,\n24475=>12573,\n24477=>12574,\n24479=>12575,\n24482=>12576,\n24483=>12577,\n24484=>12578,\n24485=>12579,\n24486=>12580,\n24487=>12581,\n24491=>12582,\n24492=>12583,\n24495=>12584,\n24496=>12585,\n24497=>12586,\n24498=>12587,\n24499=>12588,\n24500=>12589,\n24502=>12590,\n24504=>12591,\n24506=>12592,\n24507=>12593,\n24510=>12594,\n24511=>12595,\n24512=>12596,\n24513=>12597,\n24514=>12598,\n24519=>12599,\n24520=>12600,\n24522=>12601,\n24523=>12602,\n24526=>12603,\n24531=>12604,\n24532=>12605,\n24533=>12606,\n24538=>12607,\n24539=>12608,\n24540=>12609,\n24542=>12610,\n24543=>12611,\n24546=>12612,\n24547=>12613,\n24549=>12614,\n24550=>12615,\n24552=>12616,\n24553=>12617,\n24556=>12618,\n24559=>12619,\n24560=>12620,\n24562=>12621,\n24563=>12622,\n24564=>12623,\n24566=>12624,\n24567=>12625,\n24569=>12626,\n24570=>12627,\n24572=>12628,\n24583=>12629,\n24584=>12630,\n24585=>12631,\n24587=>12632,\n24588=>12633,\n24592=>12634,\n24593=>12635,\n24595=>12636,\n24599=>12637,\n24600=>12638,\n24602=>12639,\n24606=>12640,\n24607=>12641,\n24610=>12642,\n24611=>12643,\n24612=>12644,\n24620=>12645,\n24621=>12646,\n24622=>12647,\n24624=>12648,\n24625=>12649,\n24626=>12650,\n24627=>12651,\n24628=>12652,\n24630=>12653,\n24631=>12654,\n24632=>12655,\n24633=>12656,\n24634=>12657,\n24637=>12658,\n24638=>12659,\n24640=>12660,\n24644=>12661,\n24645=>12662,\n24646=>12663,\n24647=>12664,\n24648=>12665,\n24649=>12666,\n24650=>12667,\n24652=>12668,\n24654=>12669,\n24655=>12670,\n24657=>12671,\n24659=>12672,\n24660=>12673,\n24662=>12674,\n24663=>12675,\n24664=>12676,\n24667=>12677,\n24668=>12678,\n24670=>12679,\n24671=>12680,\n24672=>12681,\n24673=>12682,\n24677=>12683,\n24678=>12684,\n24686=>12685,\n24689=>12686,\n24690=>12687,\n24692=>12688,\n24693=>12689,\n24695=>12690,\n24702=>12691,\n24704=>12692,\n24705=>12693,\n24706=>12694,\n24709=>12695,\n24710=>12696,\n24711=>12697,\n24712=>12698,\n24714=>12699,\n24715=>12700,\n24718=>12701,\n24719=>12702,\n24720=>12703,\n24721=>12704,\n24723=>12705,\n24725=>12706,\n24727=>12707,\n24728=>12708,\n24729=>12709,\n24732=>12710,\n24734=>12711,\n24737=>12712,\n24738=>12713,\n24740=>12714,\n24741=>12715,\n24743=>12716,\n24745=>12717,\n24746=>12718,\n24750=>12719,\n24752=>12720,\n24755=>12721,\n24759=>12722,\n24761=>12723,\n24762=>12724,\n24765=>12725,\n24766=>12726,\n24767=>12727,\n24768=>12728,\n24769=>12729,\n24770=>12730,\n24771=>12731,\n24772=>12732,\n24775=>12733,\n24776=>12734,\n24777=>12735,\n24780=>12736,\n24781=>12737,\n24782=>12738,\n24783=>12739,\n24784=>12740,\n24786=>12741,\n24787=>12742,\n24788=>12743,\n24790=>12744,\n24791=>12745,\n24793=>12746,\n24795=>12747,\n24798=>12748,\n24802=>12749,\n24803=>12750,\n24804=>12751,\n24805=>12752,\n24810=>12753,\n24821=>12754,\n24823=>12755,\n24824=>12756,\n24828=>12757,\n24829=>12758,\n24830=>12759,\n24831=>12760,\n24834=>12761,\n24835=>12762,\n24836=>12763,\n24837=>12764,\n24839=>12765,\n24842=>12766,\n24843=>12767,\n24844=>12768,\n24848=>12769,\n24849=>12770,\n24850=>12771,\n24851=>12772,\n24852=>12773,\n24854=>12774,\n24855=>12775,\n24856=>12776,\n24857=>12777,\n24861=>12778,\n24862=>12779,\n24865=>12780,\n24866=>12781,\n24869=>12782,\n24872=>12783,\n24873=>12784,\n24874=>12785,\n24876=>12786,\n24877=>12787,\n24878=>12788,\n24879=>12789,\n24880=>12790,\n24881=>12791,\n24882=>12792,\n24883=>12793,\n24885=>12794,\n24886=>12795,\n24888=>12796,\n24889=>12797,\n24890=>12798,\n24891=>12799,\n24892=>12800,\n24893=>12801,\n24896=>12802,\n24897=>12803,\n24898=>12804,\n24899=>12805,\n24900=>12806,\n24901=>12807,\n24902=>12808,\n24903=>12809,\n24905=>12810,\n24909=>12811,\n24911=>12812,\n24912=>12813,\n24914=>12814,\n24915=>12815,\n24916=>12816,\n24918=>12817,\n24919=>12818,\n24921=>12819,\n24923=>12820,\n24924=>12821,\n24926=>12822,\n24928=>12823,\n24929=>12824,\n24933=>12825,\n24934=>12826,\n24937=>12827,\n24940=>12828,\n24941=>12829,\n24943=>12830,\n24945=>12831,\n24946=>12832,\n24948=>12833,\n24952=>12834,\n24953=>12835,\n24954=>12836,\n24955=>12837,\n24956=>12838,\n24957=>12839,\n24958=>12840,\n24959=>12841,\n24960=>12842,\n24961=>12843,\n24963=>12844,\n24964=>12845,\n24965=>12846,\n24966=>12847,\n24967=>12848,\n24968=>12849,\n24969=>12850,\n24972=>12851,\n24973=>12852,\n24975=>12853,\n24979=>12854,\n24981=>12855,\n24982=>12856,\n24983=>12857,\n24984=>12858,\n24985=>12859,\n24987=>12860,\n24988=>12861,\n24990=>12862,\n24991=>12863,\n24992=>12864,\n24993=>12865,\n24994=>12866,\n24995=>12867,\n24997=>12868,\n24998=>12869,\n25002=>12870,\n25005=>12871,\n25007=>12872,\n25008=>12873,\n25009=>12874,\n25011=>12875,\n25012=>12876,\n25013=>12877,\n25016=>12878,\n25017=>12879,\n25018=>12880,\n25019=>12881,\n25020=>12882,\n25021=>12883,\n25023=>12884,\n25024=>12885,\n25025=>12886,\n25027=>12887,\n25028=>12888,\n25029=>12889,\n25030=>12890,\n25037=>12891,\n25038=>12892,\n25039=>12893,\n25040=>12894,\n25043=>12895,\n25045=>12896,\n25046=>12897,\n25047=>12898,\n25048=>12899,\n25049=>12900,\n25050=>12901,\n25051=>12902,\n25052=>12903,\n25053=>12904,\n25056=>12905,\n25057=>12906,\n25058=>12907,\n25060=>12908,\n25061=>12909,\n25063=>12910,\n25065=>12911,\n25066=>12912,\n25067=>12913,\n25068=>12914,\n25069=>12915,\n25070=>12916,\n25071=>12917,\n25072=>12918,\n25073=>12919,\n25075=>12920,\n25076=>12921,\n25081=>12922,\n25083=>12923,\n25085=>12924,\n25089=>12925,\n25090=>12926,\n25091=>12927,\n25092=>12928,\n25093=>12929,\n25097=>12930,\n25107=>12931,\n25113=>12932,\n25116=>12933,\n25117=>12934,\n25118=>12935,\n25120=>12936,\n25123=>12937,\n25126=>12938,\n25128=>12939,\n25129=>12940,\n25131=>12941,\n25133=>12942,\n25135=>12943,\n25137=>12944,\n25141=>12945,\n12094=>12946,\n25142=>12946,\n25144=>12947,\n25145=>12948,\n25146=>12949,\n25147=>12950,\n25148=>12951,\n25154=>12952,\n25156=>12953,\n25157=>12954,\n25158=>12955,\n25162=>12956,\n25167=>12957,\n25168=>12958,\n25173=>12959,\n25174=>12960,\n25175=>12961,\n25177=>12962,\n25178=>12963,\n25180=>12964,\n25181=>12965,\n25182=>12966,\n25183=>12967,\n25184=>12968,\n25185=>12969,\n25186=>12970,\n25188=>12971,\n25189=>12972,\n25192=>12973,\n25201=>12974,\n25202=>12975,\n25204=>12976,\n25205=>12977,\n25207=>12978,\n25208=>12979,\n25210=>12980,\n25211=>12981,\n25213=>12982,\n25217=>12983,\n25218=>12984,\n25219=>12985,\n25221=>12986,\n25222=>12987,\n25223=>12988,\n25224=>12989,\n25227=>12990,\n25228=>12991,\n25229=>12992,\n25230=>12993,\n25231=>12994,\n25232=>12995,\n25236=>12996,\n25241=>12997,\n25244=>12998,\n25245=>12999,\n25246=>13000,\n25251=>13001,\n25254=>13002,\n25255=>13003,\n25257=>13004,\n25258=>13005,\n25261=>13006,\n25262=>13007,\n25263=>13008,\n25264=>13009,\n25266=>13010,\n25267=>13011,\n25268=>13012,\n25270=>13013,\n25271=>13014,\n25272=>13015,\n25274=>13016,\n25278=>13017,\n25280=>13018,\n25281=>13019,\n25283=>13020,\n25291=>13021,\n25295=>13022,\n25297=>13023,\n25301=>13024,\n25309=>13025,\n25310=>13026,\n25312=>13027,\n25313=>13028,\n25316=>13029,\n25322=>13030,\n25323=>13031,\n25328=>13032,\n25330=>13033,\n25333=>13034,\n25336=>13035,\n25337=>13036,\n25338=>13037,\n25339=>13038,\n25344=>13039,\n25347=>13040,\n25348=>13041,\n25349=>13042,\n25350=>13043,\n25354=>13044,\n25355=>13045,\n25356=>13046,\n25357=>13047,\n25359=>13048,\n25360=>13049,\n25362=>13050,\n25363=>13051,\n25364=>13052,\n25365=>13053,\n25367=>13054,\n25368=>13055,\n25369=>13056,\n25372=>13057,\n25382=>13058,\n25383=>13059,\n25385=>13060,\n25388=>13061,\n25389=>13062,\n25390=>13063,\n25392=>13064,\n25393=>13065,\n25395=>13066,\n25396=>13067,\n25397=>13068,\n25398=>13069,\n25399=>13070,\n25400=>13071,\n25403=>13072,\n25404=>13073,\n25407=>13074,\n25408=>13075,\n25409=>13076,\n25412=>13077,\n25415=>13078,\n25416=>13079,\n25418=>13080,\n25425=>13081,\n25426=>13082,\n25427=>13083,\n25428=>13084,\n25430=>13085,\n25431=>13086,\n25432=>13087,\n25433=>13088,\n25434=>13089,\n25435=>13090,\n25436=>13091,\n25437=>13092,\n25440=>13093,\n25444=>13094,\n25445=>13095,\n25446=>13096,\n25450=>13097,\n25452=>13098,\n25455=>13099,\n25456=>13100,\n25459=>13101,\n25460=>13102,\n25461=>13103,\n25464=>13104,\n25465=>13105,\n25468=>13106,\n25469=>13107,\n25470=>13108,\n25471=>13109,\n25473=>13110,\n25477=>13111,\n25478=>13112,\n25483=>13113,\n25485=>13114,\n25489=>13115,\n25491=>13116,\n25492=>13117,\n25493=>13118,\n25495=>13119,\n25497=>13120,\n25498=>13121,\n25499=>13122,\n25500=>13123,\n25501=>13124,\n25502=>13125,\n25503=>13126,\n25505=>13127,\n25508=>13128,\n25510=>13129,\n25515=>13130,\n25519=>13131,\n25521=>13132,\n25522=>13133,\n25525=>13134,\n25526=>13135,\n25529=>13136,\n25531=>13137,\n25533=>13138,\n25535=>13139,\n25537=>13140,\n25538=>13141,\n25539=>13142,\n25541=>13143,\n25543=>13144,\n25544=>13145,\n25546=>13146,\n25547=>13147,\n25548=>13148,\n25553=>13149,\n25555=>13150,\n25556=>13151,\n25557=>13152,\n25559=>13153,\n25560=>13154,\n25561=>13155,\n25563=>13156,\n25564=>13157,\n25565=>13158,\n25567=>13159,\n25570=>13160,\n25572=>13161,\n25573=>13162,\n25574=>13163,\n25575=>13164,\n25576=>13165,\n25579=>13166,\n25580=>13167,\n25583=>13168,\n25584=>13169,\n25585=>13170,\n25587=>13171,\n25589=>13172,\n25591=>13173,\n25593=>13174,\n25594=>13175,\n25595=>13176,\n25596=>13177,\n25598=>13178,\n25603=>13179,\n25604=>13180,\n25606=>13181,\n25607=>13182,\n25608=>13183,\n25609=>13184,\n25610=>13185,\n25614=>13186,\n25617=>13187,\n25618=>13188,\n25621=>13189,\n25622=>13190,\n25624=>13191,\n25625=>13192,\n25626=>13193,\n25629=>13194,\n25631=>13195,\n25634=>13196,\n25635=>13197,\n25636=>13198,\n25637=>13199,\n25639=>13200,\n25640=>13201,\n25641=>13202,\n25643=>13203,\n25646=>13204,\n25647=>13205,\n25648=>13206,\n25649=>13207,\n25650=>13208,\n25651=>13209,\n25653=>13210,\n25655=>13211,\n25656=>13212,\n25657=>13213,\n25659=>13214,\n25660=>13215,\n25662=>13216,\n25664=>13217,\n25666=>13218,\n25667=>13219,\n25673=>13220,\n25675=>13221,\n25676=>13222,\n25677=>13223,\n25678=>13224,\n25679=>13225,\n25680=>13226,\n25683=>13227,\n25685=>13228,\n25686=>13229,\n25687=>13230,\n25689=>13231,\n25690=>13232,\n25691=>13233,\n25693=>13234,\n25696=>13235,\n25697=>13236,\n25698=>13237,\n25699=>13238,\n25700=>13239,\n25701=>13240,\n25702=>13241,\n25704=>13242,\n25706=>13243,\n25707=>13244,\n25708=>13245,\n25710=>13246,\n25712=>13247,\n25713=>13248,\n25714=>13249,\n25716=>13250,\n25717=>13251,\n25719=>13252,\n25724=>13253,\n25725=>13254,\n25726=>13255,\n25727=>13256,\n25728=>13257,\n25729=>13258,\n25731=>13259,\n25734=>13260,\n25737=>13261,\n25738=>13262,\n25739=>13263,\n25740=>13264,\n25741=>13265,\n25742=>13266,\n25743=>13267,\n25744=>13268,\n25748=>13269,\n25751=>13270,\n25752=>13271,\n25754=>13272,\n25755=>13273,\n25756=>13274,\n25757=>13275,\n25760=>13276,\n25761=>13277,\n25762=>13278,\n25766=>13279,\n25767=>13280,\n25768=>13281,\n25770=>13282,\n25775=>13283,\n25777=>13284,\n25780=>13285,\n25782=>13286,\n25785=>13287,\n25789=>13288,\n25795=>13289,\n25798=>13290,\n25800=>13291,\n25801=>13292,\n25804=>13293,\n25807=>13294,\n25809=>13295,\n25811=>13296,\n25813=>13297,\n25814=>13298,\n25817=>13299,\n25819=>13300,\n25820=>13301,\n25821=>13302,\n25823=>13303,\n25825=>13304,\n25827=>13305,\n25829=>13306,\n25831=>13307,\n25832=>13308,\n25833=>13309,\n25834=>13310,\n25835=>13311,\n25837=>13312,\n25838=>13313,\n25843=>13314,\n25845=>13315,\n25846=>13316,\n25848=>13317,\n25849=>13318,\n25853=>13319,\n25855=>13320,\n25857=>13321,\n25858=>13322,\n25859=>13323,\n25861=>13324,\n25863=>13325,\n25864=>13326,\n25866=>13327,\n25867=>13328,\n25868=>13329,\n25869=>13330,\n25870=>13331,\n25872=>13332,\n25873=>13333,\n25875=>13334,\n25877=>13335,\n25879=>13336,\n25882=>13337,\n25884=>13338,\n25886=>13339,\n25887=>13340,\n25888=>13341,\n25889=>13342,\n25894=>13343,\n25895=>13344,\n25896=>13345,\n25897=>13346,\n25901=>13347,\n25904=>13348,\n25905=>13349,\n25906=>13350,\n25907=>13351,\n25911=>13352,\n25914=>13353,\n25916=>13354,\n25917=>13355,\n25920=>13356,\n25921=>13357,\n25922=>13358,\n25923=>13359,\n25924=>13360,\n25926=>13361,\n25927=>13362,\n25930=>13363,\n25931=>13364,\n25933=>13365,\n25934=>13366,\n25936=>13367,\n25938=>13368,\n25939=>13369,\n25940=>13370,\n25944=>13371,\n25946=>13372,\n25948=>13373,\n25951=>13374,\n25952=>13375,\n25953=>13376,\n25956=>13377,\n25957=>13378,\n25959=>13379,\n25960=>13380,\n25961=>13381,\n25962=>13382,\n25965=>13383,\n25966=>13384,\n25967=>13385,\n25969=>13386,\n25971=>13387,\n25974=>13388,\n25977=>13389,\n25978=>13390,\n25979=>13391,\n25980=>13392,\n25981=>13393,\n25982=>13394,\n25983=>13395,\n25984=>13396,\n25985=>13397,\n25988=>13398,\n25989=>13399,\n25990=>13400,\n25992=>13401,\n25993=>13402,\n25994=>13403,\n25997=>13404,\n25998=>13405,\n25999=>13406,\n26002=>13407,\n26004=>13408,\n26006=>13409,\n26008=>13410,\n26010=>13411,\n26013=>13412,\n26014=>13413,\n26016=>13414,\n26018=>13415,\n26019=>13416,\n26022=>13417,\n26024=>13418,\n26026=>13419,\n26030=>13420,\n26033=>13421,\n26034=>13422,\n26035=>13423,\n26036=>13424,\n26037=>13425,\n26038=>13426,\n26040=>13427,\n26042=>13428,\n26043=>13429,\n26046=>13430,\n26047=>13431,\n26048=>13432,\n26050=>13433,\n26055=>13434,\n26056=>13435,\n26057=>13436,\n26058=>13437,\n26061=>13438,\n26064=>13439,\n26065=>13440,\n26067=>13441,\n26068=>13442,\n26069=>13443,\n26072=>13444,\n26073=>13445,\n26074=>13446,\n26075=>13447,\n26076=>13448,\n26077=>13449,\n26078=>13450,\n26079=>13451,\n26081=>13452,\n26083=>13453,\n26084=>13454,\n26090=>13455,\n26091=>13456,\n26098=>13457,\n26099=>13458,\n26100=>13459,\n26101=>13460,\n26104=>13461,\n26105=>13462,\n26107=>13463,\n26108=>13464,\n26109=>13465,\n26110=>13466,\n26111=>13467,\n26113=>13468,\n26116=>13469,\n26117=>13470,\n26119=>13471,\n26120=>13472,\n26121=>13473,\n26123=>13474,\n26125=>13475,\n26128=>13476,\n26129=>13477,\n26130=>13478,\n26134=>13479,\n26135=>13480,\n26136=>13481,\n26138=>13482,\n26139=>13483,\n26140=>13484,\n26142=>13485,\n26145=>13486,\n26146=>13487,\n26147=>13488,\n26148=>13489,\n26150=>13490,\n26153=>13491,\n26154=>13492,\n26155=>13493,\n26156=>13494,\n26158=>13495,\n26160=>13496,\n26162=>13497,\n26163=>13498,\n26167=>13499,\n26168=>13500,\n26169=>13501,\n26170=>13502,\n26171=>13503,\n26173=>13504,\n26175=>13505,\n26176=>13506,\n26180=>13507,\n26181=>13508,\n26182=>13509,\n26183=>13510,\n26184=>13511,\n26185=>13512,\n26186=>13513,\n26189=>13514,\n26190=>13515,\n26192=>13516,\n26193=>13517,\n26200=>13518,\n26201=>13519,\n26203=>13520,\n26204=>13521,\n26206=>13522,\n26208=>13523,\n26210=>13524,\n26211=>13525,\n26213=>13526,\n26215=>13527,\n26217=>13528,\n26218=>13529,\n26219=>13530,\n26220=>13531,\n26221=>13532,\n26225=>13533,\n26226=>13534,\n26227=>13535,\n26229=>13536,\n26232=>13537,\n26233=>13538,\n26235=>13539,\n26236=>13540,\n26237=>13541,\n26239=>13542,\n26240=>13543,\n26241=>13544,\n26243=>13545,\n26245=>13546,\n26246=>13547,\n26250=>13548,\n26251=>13549,\n26253=>13550,\n26254=>13551,\n26255=>13552,\n26256=>13553,\n26258=>13554,\n26259=>13555,\n26260=>13556,\n26261=>13557,\n26264=>13558,\n26265=>13559,\n26266=>13560,\n26267=>13561,\n26268=>13562,\n26270=>13563,\n26271=>13564,\n26272=>13565,\n26273=>13566,\n26275=>13567,\n26276=>13568,\n26277=>13569,\n26278=>13570,\n26281=>13571,\n26282=>13572,\n26284=>13573,\n26285=>13574,\n26287=>13575,\n26288=>13576,\n26289=>13577,\n26290=>13578,\n26291=>13579,\n26293=>13580,\n26294=>13581,\n26295=>13582,\n26296=>13583,\n26298=>13584,\n26299=>13585,\n26300=>13586,\n26301=>13587,\n26303=>13588,\n26304=>13589,\n26305=>13590,\n26306=>13591,\n26307=>13592,\n26309=>13593,\n26312=>13594,\n26314=>13595,\n26315=>13596,\n26316=>13597,\n26317=>13598,\n26318=>13599,\n26319=>13600,\n26320=>13601,\n26321=>13602,\n26322=>13603,\n26323=>13604,\n26324=>13605,\n26325=>13606,\n26327=>13607,\n26328=>13608,\n26330=>13609,\n26334=>13610,\n26335=>13611,\n26337=>13612,\n26338=>13613,\n26339=>13614,\n26340=>13615,\n26341=>13616,\n26343=>13617,\n26344=>13618,\n26346=>13619,\n26347=>13620,\n26349=>13621,\n26350=>13622,\n26351=>13623,\n26353=>13624,\n26357=>13625,\n26358=>13626,\n26362=>13627,\n26363=>13628,\n26365=>13629,\n26369=>13630,\n26370=>13631,\n26372=>13632,\n26373=>13633,\n26374=>13634,\n26375=>13635,\n26380=>13636,\n26382=>13637,\n26383=>13638,\n26385=>13639,\n26386=>13640,\n26387=>13641,\n26390=>13642,\n26392=>13643,\n26393=>13644,\n26394=>13645,\n26396=>13646,\n26398=>13647,\n26400=>13648,\n26401=>13649,\n26402=>13650,\n26403=>13651,\n26404=>13652,\n26405=>13653,\n26409=>13654,\n26414=>13655,\n26416=>13656,\n26418=>13657,\n26419=>13658,\n26422=>13659,\n26423=>13660,\n26424=>13661,\n26425=>13662,\n26427=>13663,\n26428=>13664,\n26430=>13665,\n26431=>13666,\n26433=>13667,\n26436=>13668,\n26437=>13669,\n26439=>13670,\n26442=>13671,\n26443=>13672,\n26445=>13673,\n26450=>13674,\n26452=>13675,\n26453=>13676,\n26455=>13677,\n26456=>13678,\n26457=>13679,\n26458=>13680,\n26459=>13681,\n26461=>13682,\n26466=>13683,\n26467=>13684,\n26468=>13685,\n26470=>13686,\n26471=>13687,\n26475=>13688,\n26476=>13689,\n26478=>13690,\n26484=>13691,\n26486=>13692,\n26488=>13693,\n26489=>13694,\n26490=>13695,\n26491=>13696,\n26493=>13697,\n26496=>13698,\n26498=>13699,\n26499=>13700,\n26501=>13701,\n26502=>13702,\n26504=>13703,\n26506=>13704,\n26508=>13705,\n26509=>13706,\n26510=>13707,\n26511=>13708,\n26513=>13709,\n26514=>13710,\n26515=>13711,\n26516=>13712,\n26518=>13713,\n26521=>13714,\n26523=>13715,\n26527=>13716,\n26528=>13717,\n26529=>13718,\n26532=>13719,\n26534=>13720,\n26537=>13721,\n26540=>13722,\n26542=>13723,\n26545=>13724,\n26546=>13725,\n26548=>13726,\n26553=>13727,\n26554=>13728,\n26555=>13729,\n26556=>13730,\n26557=>13731,\n26558=>13732,\n26559=>13733,\n26560=>13734,\n26562=>13735,\n26565=>13736,\n26566=>13737,\n26567=>13738,\n26568=>13739,\n26569=>13740,\n26570=>13741,\n26571=>13742,\n26572=>13743,\n26573=>13744,\n26574=>13745,\n26581=>13746,\n26582=>13747,\n26583=>13748,\n26587=>13749,\n26591=>13750,\n26593=>13751,\n26595=>13752,\n26596=>13753,\n26598=>13754,\n26599=>13755,\n26600=>13756,\n26602=>13757,\n26603=>13758,\n26605=>13759,\n26606=>13760,\n26610=>13761,\n26613=>13762,\n26614=>13763,\n26615=>13764,\n26616=>13765,\n26617=>13766,\n26618=>13767,\n26619=>13768,\n26620=>13769,\n26622=>13770,\n26625=>13771,\n26626=>13772,\n26627=>13773,\n26628=>13774,\n26630=>13775,\n26637=>13776,\n26640=>13777,\n26642=>13778,\n26644=>13779,\n26645=>13780,\n26648=>13781,\n26649=>13782,\n26650=>13783,\n26651=>13784,\n26652=>13785,\n26654=>13786,\n26655=>13787,\n26656=>13788,\n26658=>13789,\n26659=>13790,\n26660=>13791,\n26661=>13792,\n26662=>13793,\n26663=>13794,\n26664=>13795,\n26667=>13796,\n26668=>13797,\n26669=>13798,\n26670=>13799,\n26671=>13800,\n26672=>13801,\n26673=>13802,\n26676=>13803,\n26677=>13804,\n26678=>13805,\n26682=>13806,\n26683=>13807,\n26687=>13808,\n26695=>13809,\n26699=>13810,\n26701=>13811,\n26703=>13812,\n26706=>13813,\n26710=>13814,\n26711=>13815,\n26712=>13816,\n26713=>13817,\n26714=>13818,\n26715=>13819,\n26716=>13820,\n26717=>13821,\n26718=>13822,\n26719=>13823,\n26730=>13824,\n26732=>13825,\n26733=>13826,\n26734=>13827,\n26735=>13828,\n26736=>13829,\n26737=>13830,\n26738=>13831,\n26739=>13832,\n26741=>13833,\n26744=>13834,\n26745=>13835,\n26746=>13836,\n26747=>13837,\n26748=>13838,\n26749=>13839,\n26750=>13840,\n26751=>13841,\n26752=>13842,\n26754=>13843,\n26756=>13844,\n26759=>13845,\n26760=>13846,\n26761=>13847,\n26762=>13848,\n26763=>13849,\n26764=>13850,\n26765=>13851,\n26766=>13852,\n26768=>13853,\n26769=>13854,\n26770=>13855,\n26772=>13856,\n26773=>13857,\n26774=>13858,\n26777=>13859,\n26778=>13860,\n26779=>13861,\n26780=>13862,\n26782=>13863,\n26784=>13864,\n26785=>13865,\n26787=>13866,\n26788=>13867,\n26789=>13868,\n26793=>13869,\n26794=>13870,\n26795=>13871,\n26796=>13872,\n26798=>13873,\n26801=>13874,\n26802=>13875,\n26804=>13876,\n26806=>13877,\n26807=>13878,\n26808=>13879,\n26809=>13880,\n26810=>13881,\n26811=>13882,\n26812=>13883,\n26813=>13884,\n26814=>13885,\n26815=>13886,\n26817=>13887,\n26819=>13888,\n26820=>13889,\n26821=>13890,\n26822=>13891,\n26823=>13892,\n26824=>13893,\n26826=>13894,\n26828=>13895,\n26830=>13896,\n26831=>13897,\n26832=>13898,\n26833=>13899,\n26835=>13900,\n26836=>13901,\n26841=>13902,\n26843=>13903,\n26844=>13904,\n26845=>13905,\n26846=>13906,\n26849=>13907,\n26850=>13908,\n26852=>13909,\n26853=>13910,\n26854=>13911,\n26856=>13912,\n26857=>13913,\n26858=>13914,\n26859=>13915,\n26860=>13916,\n26861=>13917,\n26863=>13918,\n26866=>13919,\n26867=>13920,\n26868=>13921,\n26870=>13922,\n26871=>13923,\n26872=>13924,\n26875=>13925,\n26877=>13926,\n26878=>13927,\n26879=>13928,\n26880=>13929,\n26882=>13930,\n26883=>13931,\n26884=>13932,\n26886=>13933,\n26887=>13934,\n26888=>13935,\n26889=>13936,\n26890=>13937,\n26892=>13938,\n26897=>13939,\n26899=>13940,\n26900=>13941,\n26901=>13942,\n26902=>13943,\n26903=>13944,\n26904=>13945,\n26905=>13946,\n26906=>13947,\n26907=>13948,\n26908=>13949,\n26909=>13950,\n26910=>13951,\n26913=>13952,\n26914=>13953,\n26915=>13954,\n26917=>13955,\n26918=>13956,\n26919=>13957,\n26920=>13958,\n26921=>13959,\n26922=>13960,\n26923=>13961,\n26924=>13962,\n26926=>13963,\n26927=>13964,\n26929=>13965,\n26930=>13966,\n26931=>13967,\n26933=>13968,\n26934=>13969,\n26935=>13970,\n26936=>13971,\n26938=>13972,\n26939=>13973,\n26940=>13974,\n26942=>13975,\n26944=>13976,\n26945=>13977,\n26947=>13978,\n26948=>13979,\n26949=>13980,\n26950=>13981,\n26951=>13982,\n26952=>13983,\n26953=>13984,\n26955=>13985,\n26956=>13986,\n26957=>13987,\n26958=>13988,\n26959=>13989,\n26960=>13990,\n26961=>13991,\n26962=>13992,\n26965=>13993,\n26966=>13994,\n26968=>13995,\n26969=>13996,\n26971=>13997,\n26972=>13998,\n26975=>13999,\n26977=>14000,\n26978=>14001,\n26980=>14002,\n26981=>14003,\n26983=>14004,\n26985=>14005,\n26986=>14006,\n26988=>14007,\n26991=>14008,\n26992=>14009,\n26994=>14010,\n26995=>14011,\n26996=>14012,\n26998=>14013,\n27002=>14014,\n27003=>14015,\n27005=>14016,\n27006=>14017,\n27007=>14018,\n27009=>14019,\n27011=>14020,\n27013=>14021,\n27018=>14022,\n27019=>14023,\n27020=>14024,\n27022=>14025,\n27023=>14026,\n27024=>14027,\n27025=>14028,\n27026=>14029,\n27027=>14030,\n27030=>14031,\n27031=>14032,\n27033=>14033,\n27034=>14034,\n27037=>14035,\n27038=>14036,\n27039=>14037,\n27040=>14038,\n27041=>14039,\n27042=>14040,\n27043=>14041,\n27044=>14042,\n27045=>14043,\n27046=>14044,\n27049=>14045,\n27052=>14046,\n27055=>14047,\n27056=>14048,\n27058=>14049,\n27059=>14050,\n27061=>14051,\n27062=>14052,\n27064=>14053,\n27065=>14054,\n27066=>14055,\n27068=>14056,\n27069=>14057,\n27070=>14058,\n27072=>14059,\n27074=>14060,\n27075=>14061,\n27076=>14062,\n27077=>14063,\n27078=>14064,\n27079=>14065,\n27080=>14066,\n27081=>14067,\n27087=>14068,\n27089=>14069,\n27090=>14070,\n27091=>14071,\n27093=>14072,\n27094=>14073,\n27095=>14074,\n27096=>14075,\n27097=>14076,\n27098=>14077,\n27100=>14078,\n27101=>14079,\n27102=>14080,\n27105=>14081,\n27106=>14082,\n27107=>14083,\n27108=>14084,\n27109=>14085,\n27110=>14086,\n27112=>14087,\n27113=>14088,\n27114=>14089,\n27115=>14090,\n27116=>14091,\n27118=>14092,\n27119=>14093,\n27120=>14094,\n27121=>14095,\n27124=>14096,\n27125=>14097,\n27126=>14098,\n27127=>14099,\n27128=>14100,\n27129=>14101,\n27130=>14102,\n27131=>14103,\n27132=>14104,\n27134=>14105,\n27136=>14106,\n27139=>14107,\n27140=>14108,\n27142=>14109,\n27143=>14110,\n27144=>14111,\n27145=>14112,\n27147=>14113,\n27148=>14114,\n27149=>14115,\n27150=>14116,\n27151=>14117,\n27152=>14118,\n27153=>14119,\n27154=>14120,\n27156=>14121,\n27157=>14122,\n27158=>14123,\n27162=>14124,\n27163=>14125,\n27164=>14126,\n27165=>14127,\n27168=>14128,\n27170=>14129,\n27172=>14130,\n27173=>14131,\n27174=>14132,\n27175=>14133,\n27177=>14134,\n27179=>14135,\n27180=>14136,\n27181=>14137,\n27182=>14138,\n27184=>14139,\n27186=>14140,\n27187=>14141,\n27188=>14142,\n27190=>14143,\n27191=>14144,\n27195=>14145,\n27196=>14146,\n27199=>14147,\n27200=>14148,\n27201=>14149,\n27202=>14150,\n27203=>14151,\n27205=>14152,\n27206=>14153,\n27209=>14154,\n27210=>14155,\n27212=>14156,\n27213=>14157,\n27214=>14158,\n27215=>14159,\n27217=>14160,\n27218=>14161,\n27219=>14162,\n27220=>14163,\n27221=>14164,\n27222=>14165,\n27223=>14166,\n27226=>14167,\n27228=>14168,\n27229=>14169,\n27230=>14170,\n27232=>14171,\n27235=>14172,\n27236=>14173,\n27238=>14174,\n27239=>14175,\n27240=>14176,\n27241=>14177,\n27242=>14178,\n27243=>14179,\n27244=>14180,\n27245=>14181,\n27246=>14182,\n27247=>14183,\n27248=>14184,\n27250=>14185,\n27251=>14186,\n27252=>14187,\n27253=>14188,\n27254=>14189,\n27255=>14190,\n27256=>14191,\n27258=>14192,\n27259=>14193,\n27261=>14194,\n27262=>14195,\n27263=>14196,\n27265=>14197,\n27266=>14198,\n27267=>14199,\n27269=>14200,\n27270=>14201,\n27271=>14202,\n27272=>14203,\n27274=>14204,\n27275=>14205,\n27276=>14206,\n27277=>14207,\n27279=>14208,\n27282=>14209,\n27283=>14210,\n27285=>14211,\n27286=>14212,\n27288=>14213,\n27289=>14214,\n27290=>14215,\n27291=>14216,\n27293=>14217,\n27294=>14218,\n27295=>14219,\n27297=>14220,\n27300=>14221,\n27301=>14222,\n27302=>14223,\n27303=>14224,\n27304=>14225,\n27306=>14226,\n27309=>14227,\n27310=>14228,\n27312=>14229,\n27313=>14230,\n27314=>14231,\n27316=>14232,\n27317=>14233,\n27318=>14234,\n27319=>14235,\n27321=>14236,\n27322=>14237,\n27324=>14238,\n27325=>14239,\n27326=>14240,\n27327=>14241,\n27328=>14242,\n27329=>14243,\n27330=>14244,\n27332=>14245,\n27333=>14246,\n27334=>14247,\n27335=>14248,\n27336=>14249,\n27337=>14250,\n27338=>14251,\n27339=>14252,\n27340=>14253,\n27341=>14254,\n27342=>14255,\n27343=>14256,\n27344=>14257,\n27345=>14258,\n27346=>14259,\n27348=>14260,\n27349=>14261,\n27350=>14262,\n27351=>14263,\n27352=>14264,\n27353=>14265,\n27356=>14266,\n27360=>14267,\n27361=>14268,\n27362=>14269,\n27363=>14270,\n27364=>14271,\n27365=>14272,\n27366=>14273,\n27369=>14274,\n27371=>14275,\n27373=>14276,\n27374=>14277,\n27375=>14278,\n27376=>14279,\n27377=>14280,\n27378=>14281,\n27380=>14282,\n27381=>14283,\n27382=>14284,\n27383=>14285,\n27385=>14286,\n27386=>14287,\n27388=>14288,\n27389=>14289,\n27390=>14290,\n27391=>14291,\n27392=>14292,\n27393=>14293,\n27394=>14294,\n27395=>14295,\n27397=>14296,\n27398=>14297,\n27399=>14298,\n27400=>14299,\n27401=>14300,\n27403=>14301,\n27404=>14302,\n27405=>14303,\n27406=>14304,\n27408=>14305,\n27409=>14306,\n27411=>14307,\n27412=>14308,\n27413=>14309,\n27415=>14310,\n27416=>14311,\n27417=>14312,\n27418=>14313,\n27419=>14314,\n27420=>14315,\n27421=>14316,\n27423=>14317,\n27429=>14318,\n27430=>14319,\n27432=>14320,\n27433=>14321,\n27434=>14322,\n27435=>14323,\n27436=>14324,\n27437=>14325,\n27438=>14326,\n27439=>14327,\n27440=>14328,\n27441=>14329,\n27443=>14330,\n27444=>14331,\n27445=>14332,\n27446=>14333,\n27448=>14334,\n27451=>14335,\n27452=>14336,\n27455=>14337,\n27456=>14338,\n27457=>14339,\n27458=>14340,\n27460=>14341,\n27461=>14342,\n27464=>14343,\n27466=>14344,\n27467=>14345,\n27469=>14346,\n27470=>14347,\n27471=>14348,\n27473=>14349,\n27474=>14350,\n27475=>14351,\n27476=>14352,\n27477=>14353,\n27478=>14354,\n27479=>14355,\n27480=>14356,\n27482=>14357,\n27483=>14358,\n27484=>14359,\n27485=>14360,\n27486=>14361,\n27488=>14362,\n27496=>14363,\n27497=>14364,\n27499=>14365,\n27500=>14366,\n27501=>14367,\n27502=>14368,\n27503=>14369,\n27504=>14370,\n27505=>14371,\n27507=>14372,\n27508=>14373,\n27509=>14374,\n27510=>14375,\n27514=>14376,\n27517=>14377,\n27518=>14378,\n27519=>14379,\n27520=>14380,\n27525=>14381,\n27528=>14382,\n27532=>14383,\n27534=>14384,\n27535=>14385,\n27536=>14386,\n27537=>14387,\n27540=>14388,\n27541=>14389,\n27543=>14390,\n27545=>14391,\n27548=>14392,\n27549=>14393,\n27551=>14394,\n27552=>14395,\n27554=>14396,\n27555=>14397,\n27557=>14398,\n27558=>14399,\n27559=>14400,\n27560=>14401,\n27561=>14402,\n27564=>14403,\n27565=>14404,\n27568=>14405,\n27569=>14406,\n27574=>14407,\n27576=>14408,\n27577=>14409,\n27580=>14410,\n27581=>14411,\n27582=>14412,\n27584=>14413,\n27587=>14414,\n27588=>14415,\n27591=>14416,\n27592=>14417,\n27593=>14418,\n27594=>14419,\n27596=>14420,\n27598=>14421,\n27600=>14422,\n27601=>14423,\n27608=>14424,\n27610=>14425,\n27612=>14426,\n27613=>14427,\n27614=>14428,\n27615=>14429,\n27616=>14430,\n27618=>14431,\n27619=>14432,\n27620=>14433,\n27621=>14434,\n27622=>14435,\n27623=>14436,\n27624=>14437,\n27625=>14438,\n27628=>14439,\n27629=>14440,\n27630=>14441,\n27632=>14442,\n27633=>14443,\n27634=>14444,\n27636=>14445,\n27638=>14446,\n27639=>14447,\n27640=>14448,\n27642=>14449,\n27643=>14450,\n27644=>14451,\n27646=>14452,\n27648=>14453,\n27649=>14454,\n27650=>14455,\n27651=>14456,\n27652=>14457,\n27657=>14458,\n27658=>14459,\n27659=>14460,\n27662=>14461,\n27666=>14462,\n27671=>14463,\n27676=>14464,\n27677=>14465,\n27678=>14466,\n27680=>14467,\n27685=>14468,\n27693=>14469,\n27697=>14470,\n27699=>14471,\n27702=>14472,\n27703=>14473,\n27705=>14474,\n27706=>14475,\n27707=>14476,\n27708=>14477,\n27710=>14478,\n27711=>14479,\n27715=>14480,\n27716=>14481,\n27717=>14482,\n27720=>14483,\n27723=>14484,\n27724=>14485,\n27725=>14486,\n27726=>14487,\n27727=>14488,\n27729=>14489,\n27730=>14490,\n27731=>14491,\n27734=>14492,\n27736=>14493,\n27737=>14494,\n27738=>14495,\n27746=>14496,\n27747=>14497,\n27749=>14498,\n27750=>14499,\n27751=>14500,\n27755=>14501,\n27756=>14502,\n27757=>14503,\n27758=>14504,\n27759=>14505,\n27761=>14506,\n27763=>14507,\n27765=>14508,\n27767=>14509,\n27768=>14510,\n27770=>14511,\n27771=>14512,\n27772=>14513,\n27775=>14514,\n27776=>14515,\n27780=>14516,\n27783=>14517,\n27786=>14518,\n27787=>14519,\n27789=>14520,\n27790=>14521,\n27793=>14522,\n27794=>14523,\n27797=>14524,\n27798=>14525,\n27799=>14526,\n27800=>14527,\n27802=>14528,\n27804=>14529,\n27805=>14530,\n27806=>14531,\n27808=>14532,\n27810=>14533,\n27816=>14534,\n27820=>14535,\n27823=>14536,\n27824=>14537,\n27828=>14538,\n27829=>14539,\n27830=>14540,\n27831=>14541,\n27834=>14542,\n27840=>14543,\n27841=>14544,\n27842=>14545,\n27843=>14546,\n27846=>14547,\n27847=>14548,\n27848=>14549,\n27851=>14550,\n27853=>14551,\n27854=>14552,\n27855=>14553,\n27857=>14554,\n27858=>14555,\n27864=>14556,\n27865=>14557,\n27866=>14558,\n27868=>14559,\n27869=>14560,\n27871=>14561,\n27876=>14562,\n27878=>14563,\n27879=>14564,\n27881=>14565,\n27884=>14566,\n27885=>14567,\n27890=>14568,\n27892=>14569,\n27897=>14570,\n27903=>14571,\n27904=>14572,\n27906=>14573,\n27907=>14574,\n27909=>14575,\n27910=>14576,\n27912=>14577,\n27913=>14578,\n27914=>14579,\n27917=>14580,\n27919=>14581,\n27920=>14582,\n27921=>14583,\n27923=>14584,\n27924=>14585,\n27925=>14586,\n27926=>14587,\n27928=>14588,\n27932=>14589,\n27933=>14590,\n27935=>14591,\n27936=>14592,\n27937=>14593,\n27938=>14594,\n27939=>14595,\n27940=>14596,\n27942=>14597,\n27944=>14598,\n27945=>14599,\n27948=>14600,\n27949=>14601,\n27951=>14602,\n27952=>14603,\n27956=>14604,\n27958=>14605,\n27959=>14606,\n27960=>14607,\n27962=>14608,\n27967=>14609,\n27968=>14610,\n27970=>14611,\n27972=>14612,\n27977=>14613,\n27980=>14614,\n27984=>14615,\n27989=>14616,\n27990=>14617,\n27991=>14618,\n27992=>14619,\n27995=>14620,\n27997=>14621,\n27999=>14622,\n28001=>14623,\n28002=>14624,\n28004=>14625,\n28005=>14626,\n28007=>14627,\n28008=>14628,\n28011=>14629,\n28012=>14630,\n28013=>14631,\n28016=>14632,\n28017=>14633,\n28018=>14634,\n28019=>14635,\n28021=>14636,\n28022=>14637,\n28026=>14638,\n28027=>14639,\n28029=>14640,\n28030=>14641,\n28031=>14642,\n28032=>14643,\n28033=>14644,\n28035=>14645,\n28036=>14646,\n28038=>14647,\n28042=>14648,\n28043=>14649,\n28045=>14650,\n28047=>14651,\n28048=>14652,\n28050=>14653,\n28054=>14654,\n28055=>14655,\n28056=>14656,\n28057=>14657,\n28058=>14658,\n28060=>14659,\n28066=>14660,\n28069=>14661,\n28076=>14662,\n28077=>14663,\n28080=>14664,\n28081=>14665,\n28083=>14666,\n28084=>14667,\n28086=>14668,\n28087=>14669,\n28089=>14670,\n28090=>14671,\n28091=>14672,\n28092=>14673,\n28093=>14674,\n28094=>14675,\n28097=>14676,\n28098=>14677,\n28099=>14678,\n28104=>14679,\n28105=>14680,\n28106=>14681,\n28109=>14682,\n28110=>14683,\n28111=>14684,\n28112=>14685,\n28114=>14686,\n28115=>14687,\n28116=>14688,\n28117=>14689,\n28119=>14690,\n28122=>14691,\n28123=>14692,\n28124=>14693,\n28127=>14694,\n28130=>14695,\n28131=>14696,\n28133=>14697,\n28135=>14698,\n28136=>14699,\n28137=>14700,\n28141=>14701,\n28143=>14702,\n28144=>14703,\n28146=>14704,\n28148=>14705,\n28152=>14706,\n28157=>14707,\n28158=>14708,\n28159=>14709,\n28160=>14710,\n28161=>14711,\n28162=>14712,\n28163=>14713,\n28164=>14714,\n28166=>14715,\n28167=>14716,\n28168=>14717,\n28169=>14718,\n28171=>14719,\n28175=>14720,\n28178=>14721,\n28179=>14722,\n28181=>14723,\n28184=>14724,\n28185=>14725,\n28187=>14726,\n28188=>14727,\n28190=>14728,\n28191=>14729,\n28194=>14730,\n28199=>14731,\n28200=>14732,\n28202=>14733,\n28206=>14734,\n28208=>14735,\n28209=>14736,\n28211=>14737,\n28213=>14738,\n28214=>14739,\n28215=>14740,\n28217=>14741,\n28219=>14742,\n28220=>14743,\n28221=>14744,\n28223=>14745,\n28224=>14746,\n28225=>14747,\n28226=>14748,\n28229=>14749,\n28230=>14750,\n28231=>14751,\n28232=>14752,\n28233=>14753,\n28234=>14754,\n28235=>14755,\n28236=>14756,\n28239=>14757,\n28240=>14758,\n28241=>14759,\n28242=>14760,\n28245=>14761,\n28247=>14762,\n28249=>14763,\n28250=>14764,\n28252=>14765,\n28253=>14766,\n28256=>14767,\n28257=>14768,\n28258=>14769,\n28259=>14770,\n28260=>14771,\n28261=>14772,\n28262=>14773,\n28263=>14774,\n28264=>14775,\n28265=>14776,\n28266=>14777,\n28268=>14778,\n28269=>14779,\n28272=>14780,\n28273=>14781,\n28274=>14782,\n28275=>14783,\n28276=>14784,\n28277=>14785,\n28278=>14786,\n28279=>14787,\n28280=>14788,\n28281=>14789,\n28282=>14790,\n28283=>14791,\n28284=>14792,\n28285=>14793,\n28288=>14794,\n28289=>14795,\n28290=>14796,\n28292=>14797,\n28295=>14798,\n28296=>14799,\n28298=>14800,\n28299=>14801,\n28300=>14802,\n28301=>14803,\n28302=>14804,\n28305=>14805,\n28306=>14806,\n28307=>14807,\n28308=>14808,\n28309=>14809,\n28311=>14810,\n28313=>14811,\n28314=>14812,\n28315=>14813,\n28318=>14814,\n28320=>14815,\n28321=>14816,\n28323=>14817,\n28324=>14818,\n28326=>14819,\n28328=>14820,\n28329=>14821,\n28331=>14822,\n28332=>14823,\n28333=>14824,\n28334=>14825,\n28336=>14826,\n28339=>14827,\n28341=>14828,\n28344=>14829,\n28345=>14830,\n28348=>14831,\n28350=>14832,\n28351=>14833,\n28352=>14834,\n28355=>14835,\n28358=>14836,\n28360=>14837,\n28361=>14838,\n28362=>14839,\n28365=>14840,\n28368=>14841,\n28370=>14842,\n28374=>14843,\n28376=>14844,\n28377=>14845,\n28379=>14846,\n28380=>14847,\n28381=>14848,\n28387=>14849,\n28391=>14850,\n28394=>14851,\n28395=>14852,\n28397=>14853,\n28398=>14854,\n28400=>14855,\n28401=>14856,\n28403=>14857,\n28405=>14858,\n28406=>14859,\n28410=>14860,\n28411=>14861,\n28412=>14862,\n28413=>14863,\n28414=>14864,\n28416=>14865,\n28419=>14866,\n28420=>14867,\n28421=>14868,\n28423=>14869,\n28424=>14870,\n28426=>14871,\n28427=>14872,\n28428=>14873,\n28429=>14874,\n28430=>14875,\n28432=>14876,\n28433=>14877,\n28434=>14878,\n28438=>14879,\n28439=>14880,\n28440=>14881,\n28441=>14882,\n28443=>14883,\n28444=>14884,\n28445=>14885,\n28446=>14886,\n28447=>14887,\n28449=>14888,\n28453=>14889,\n28454=>14890,\n28455=>14891,\n28456=>14892,\n28462=>14893,\n28464=>14894,\n28468=>14895,\n28469=>14896,\n28471=>14897,\n28473=>14898,\n28474=>14899,\n28475=>14900,\n28476=>14901,\n28477=>14902,\n28480=>14903,\n28482=>14904,\n28483=>14905,\n28484=>14906,\n28485=>14907,\n28488=>14908,\n28489=>14909,\n28490=>14910,\n28492=>14911,\n28494=>14912,\n28495=>14913,\n28496=>14914,\n28498=>14915,\n28499=>14916,\n28501=>14917,\n28502=>14918,\n28503=>14919,\n28506=>14920,\n28507=>14921,\n28509=>14922,\n28511=>14923,\n28512=>14924,\n28513=>14925,\n28515=>14926,\n28517=>14927,\n28519=>14928,\n28520=>14929,\n28521=>14930,\n28522=>14931,\n28523=>14932,\n28524=>14933,\n28529=>14934,\n28531=>14935,\n28533=>14936,\n28534=>14937,\n28537=>14938,\n28539=>14939,\n28541=>14940,\n28542=>14941,\n28545=>14942,\n28546=>14943,\n28547=>14944,\n28549=>14945,\n28554=>14946,\n28555=>14947,\n28559=>14948,\n28560=>14949,\n28561=>14950,\n28562=>14951,\n28563=>14952,\n28564=>14953,\n28565=>14954,\n28566=>14955,\n28568=>14956,\n28569=>14957,\n28570=>14958,\n28571=>14959,\n28573=>14960,\n28574=>14961,\n28575=>14962,\n28578=>14963,\n28579=>14964,\n28581=>14965,\n28582=>14966,\n28584=>14967,\n28586=>14968,\n28587=>14969,\n28588=>14970,\n28589=>14971,\n28591=>14972,\n28592=>14973,\n28594=>14974,\n28596=>14975,\n28597=>14976,\n28599=>14977,\n28600=>14978,\n28602=>14979,\n28603=>14980,\n28604=>14981,\n28605=>14982,\n28606=>14983,\n28607=>14984,\n28612=>14985,\n28613=>14986,\n28614=>14987,\n28615=>14988,\n28616=>14989,\n28618=>14990,\n28619=>14991,\n28620=>14992,\n28621=>14993,\n28622=>14994,\n28623=>14995,\n28624=>14996,\n28627=>14997,\n28628=>14998,\n28630=>14999,\n28631=>15000,\n28633=>15001,\n28634=>15002,\n28636=>15003,\n28637=>15004,\n28642=>15005,\n28643=>15006,\n28645=>15007,\n28646=>15008,\n28647=>15009,\n28648=>15010,\n28649=>15011,\n28650=>15012,\n28652=>15013,\n28653=>15014,\n28658=>15015,\n28659=>15016,\n28660=>15017,\n28661=>15018,\n28662=>15019,\n28663=>15020,\n28664=>15021,\n28665=>15022,\n28667=>15023,\n28669=>15024,\n28671=>15025,\n28672=>15026,\n28673=>15027,\n28674=>15028,\n28675=>15029,\n28676=>15030,\n28679=>15031,\n28680=>15032,\n28682=>15033,\n28684=>15034,\n28685=>15035,\n28686=>15036,\n28688=>15037,\n28690=>15038,\n28691=>15039,\n28692=>15040,\n28694=>15041,\n28695=>15042,\n28697=>15043,\n28700=>15044,\n28702=>15045,\n28705=>15046,\n28706=>15047,\n28708=>15048,\n28709=>15049,\n28710=>15050,\n28713=>15051,\n28714=>15052,\n28715=>15053,\n28716=>15054,\n28717=>15055,\n28718=>15056,\n28719=>15057,\n28721=>15058,\n28723=>15059,\n28724=>15060,\n28726=>15061,\n28727=>15062,\n28728=>15063,\n28730=>15064,\n28731=>15065,\n28732=>15066,\n28733=>15067,\n28735=>15068,\n28736=>15069,\n28737=>15070,\n28738=>15071,\n28741=>15072,\n28742=>15073,\n28743=>15074,\n28744=>15075,\n28745=>15076,\n28746=>15077,\n28747=>15078,\n28749=>15079,\n28750=>15080,\n28752=>15081,\n28754=>15082,\n28755=>15083,\n28756=>15084,\n28758=>15085,\n28759=>15086,\n28761=>15087,\n28762=>15088,\n28763=>15089,\n28764=>15090,\n28767=>15091,\n28768=>15092,\n28769=>15093,\n28770=>15094,\n28773=>15095,\n28774=>15096,\n28776=>15097,\n28777=>15098,\n28778=>15099,\n28782=>15100,\n28785=>15101,\n28786=>15102,\n28787=>15103,\n28788=>15104,\n28791=>15105,\n28793=>15106,\n28794=>15107,\n28795=>15108,\n28797=>15109,\n28801=>15110,\n28802=>15111,\n28803=>15112,\n28804=>15113,\n28806=>15114,\n28807=>15115,\n28808=>15116,\n28811=>15117,\n28812=>15118,\n28813=>15119,\n28815=>15120,\n28816=>15121,\n28817=>15122,\n28819=>15123,\n28823=>15124,\n28824=>15125,\n28826=>15126,\n28827=>15127,\n28830=>15128,\n28831=>15129,\n28832=>15130,\n28833=>15131,\n28834=>15132,\n28835=>15133,\n28836=>15134,\n28837=>15135,\n28838=>15136,\n28839=>15137,\n28840=>15138,\n28841=>15139,\n28842=>15140,\n28848=>15141,\n28850=>15142,\n28852=>15143,\n28853=>15144,\n28854=>15145,\n28858=>15146,\n28862=>15147,\n28863=>15148,\n28868=>15149,\n28869=>15150,\n28870=>15151,\n28871=>15152,\n28873=>15153,\n28875=>15154,\n28876=>15155,\n28877=>15156,\n28878=>15157,\n28880=>15158,\n28881=>15159,\n28882=>15160,\n28883=>15161,\n28884=>15162,\n28885=>15163,\n28886=>15164,\n28887=>15165,\n28890=>15166,\n28892=>15167,\n28893=>15168,\n28894=>15169,\n28896=>15170,\n28897=>15171,\n28898=>15172,\n28899=>15173,\n28901=>15174,\n28906=>15175,\n28910=>15176,\n28912=>15177,\n28913=>15178,\n28914=>15179,\n28915=>15180,\n28917=>15181,\n28918=>15182,\n28920=>15183,\n28922=>15184,\n28923=>15185,\n28924=>15186,\n28926=>15187,\n28927=>15188,\n28928=>15189,\n28929=>15190,\n28930=>15191,\n28931=>15192,\n28932=>15193,\n28933=>15194,\n28934=>15195,\n28935=>15196,\n28936=>15197,\n28939=>15198,\n28940=>15199,\n28941=>15200,\n28942=>15201,\n28943=>15202,\n28945=>15203,\n28946=>15204,\n28948=>15205,\n28951=>15206,\n28955=>15207,\n28956=>15208,\n28957=>15209,\n28958=>15210,\n28959=>15211,\n28960=>15212,\n28962=>15213,\n28963=>15214,\n28964=>15215,\n28965=>15216,\n28967=>15217,\n28968=>15218,\n28969=>15219,\n28970=>15220,\n28971=>15221,\n28972=>15222,\n28973=>15223,\n28974=>15224,\n28978=>15225,\n28979=>15226,\n28980=>15227,\n28981=>15228,\n28983=>15229,\n28984=>15230,\n28985=>15231,\n28986=>15232,\n28987=>15233,\n28988=>15234,\n28989=>15235,\n28990=>15236,\n28991=>15237,\n28992=>15238,\n28993=>15239,\n28994=>15240,\n28995=>15241,\n28996=>15242,\n28998=>15243,\n28999=>15244,\n29000=>15245,\n29003=>15246,\n29005=>15247,\n29007=>15248,\n29008=>15249,\n29009=>15250,\n29011=>15251,\n29012=>15252,\n29013=>15253,\n29014=>15254,\n29015=>15255,\n29016=>15256,\n29017=>15257,\n29018=>15258,\n29019=>15259,\n29021=>15260,\n29023=>15261,\n29024=>15262,\n29025=>15263,\n29027=>15264,\n29029=>15265,\n29034=>15266,\n29035=>15267,\n29037=>15268,\n29039=>15269,\n29040=>15270,\n29041=>15271,\n29044=>15272,\n29045=>15273,\n29046=>15274,\n29047=>15275,\n29049=>15276,\n29051=>15277,\n29052=>15278,\n29054=>15279,\n29055=>15280,\n29056=>15281,\n29057=>15282,\n29058=>15283,\n29059=>15284,\n29061=>15285,\n29062=>15286,\n29063=>15287,\n29064=>15288,\n29065=>15289,\n29067=>15290,\n29068=>15291,\n29069=>15292,\n29070=>15293,\n29072=>15294,\n29073=>15295,\n29075=>15296,\n29077=>15297,\n29078=>15298,\n29082=>15299,\n29083=>15300,\n29084=>15301,\n29085=>15302,\n29086=>15303,\n29089=>15304,\n29090=>15305,\n29091=>15306,\n29092=>15307,\n29093=>15308,\n29094=>15309,\n29095=>15310,\n29097=>15311,\n29098=>15312,\n29099=>15313,\n29101=>15314,\n29102=>15315,\n29103=>15316,\n29104=>15317,\n29106=>15318,\n29108=>15319,\n29110=>15320,\n29111=>15321,\n29112=>15322,\n29114=>15323,\n29115=>15324,\n29116=>15325,\n29117=>15326,\n29119=>15327,\n29120=>15328,\n29122=>15329,\n29124=>15330,\n29125=>15331,\n29126=>15332,\n29127=>15333,\n29129=>15334,\n29130=>15335,\n29131=>15336,\n29132=>15337,\n29133=>15338,\n29135=>15339,\n29136=>15340,\n29137=>15341,\n29139=>15342,\n29142=>15343,\n29143=>15344,\n29144=>15345,\n29146=>15346,\n29147=>15347,\n29149=>15348,\n29150=>15349,\n29153=>15350,\n29154=>15351,\n29155=>15352,\n29156=>15353,\n29160=>15354,\n29161=>15355,\n29162=>15356,\n29163=>15357,\n29164=>15358,\n29167=>15359,\n29168=>15360,\n29169=>15361,\n29170=>15362,\n29171=>15363,\n29173=>15364,\n29174=>15365,\n29175=>15366,\n29176=>15367,\n29178=>15368,\n29179=>15369,\n29181=>15370,\n29183=>15371,\n29184=>15372,\n29185=>15373,\n29186=>15374,\n29187=>15375,\n29188=>15376,\n29189=>15377,\n29191=>15378,\n29192=>15379,\n29193=>15380,\n29194=>15381,\n29195=>15382,\n29196=>15383,\n29198=>15384,\n29199=>15385,\n29201=>15386,\n29202=>15387,\n29203=>15388,\n29204=>15389,\n29205=>15390,\n29206=>15391,\n29207=>15392,\n29208=>15393,\n29209=>15394,\n29210=>15395,\n29212=>15396,\n29214=>15397,\n29215=>15398,\n29216=>15399,\n29217=>15400,\n29218=>15401,\n29219=>15402,\n29220=>15403,\n29221=>15404,\n29222=>15405,\n29223=>15406,\n29225=>15407,\n29227=>15408,\n29229=>15409,\n29230=>15410,\n29231=>15411,\n29235=>15412,\n29236=>15413,\n29244=>15414,\n29248=>15415,\n29249=>15416,\n29250=>15417,\n29251=>15418,\n29252=>15419,\n29253=>15420,\n29254=>15421,\n29257=>15422,\n29258=>15423,\n29259=>15424,\n29262=>15425,\n29263=>15426,\n29264=>15427,\n29265=>15428,\n29267=>15429,\n29268=>15430,\n29269=>15431,\n29271=>15432,\n29274=>15433,\n29276=>15434,\n29278=>15435,\n29280=>15436,\n29283=>15437,\n29284=>15438,\n29285=>15439,\n29288=>15440,\n29290=>15441,\n29291=>15442,\n29292=>15443,\n29293=>15444,\n29296=>15445,\n29297=>15446,\n29299=>15447,\n29300=>15448,\n29302=>15449,\n29303=>15450,\n29304=>15451,\n29307=>15452,\n29308=>15453,\n29314=>15454,\n29315=>15455,\n29317=>15456,\n29318=>15457,\n29319=>15458,\n29320=>15459,\n29321=>15460,\n29324=>15461,\n29326=>15462,\n29328=>15463,\n29329=>15464,\n29331=>15465,\n29332=>15466,\n29333=>15467,\n29335=>15468,\n29336=>15469,\n29337=>15470,\n29338=>15471,\n29339=>15472,\n29340=>15473,\n29341=>15474,\n29342=>15475,\n29344=>15476,\n29345=>15477,\n29347=>15478,\n29348=>15479,\n29349=>15480,\n29350=>15481,\n29352=>15482,\n29353=>15483,\n29354=>15484,\n29355=>15485,\n29358=>15486,\n29361=>15487,\n29362=>15488,\n29363=>15489,\n29365=>15490,\n29370=>15491,\n29371=>15492,\n29372=>15493,\n29373=>15494,\n29374=>15495,\n29375=>15496,\n29381=>15497,\n29382=>15498,\n29383=>15499,\n29385=>15500,\n29386=>15501,\n29387=>15502,\n29388=>15503,\n29391=>15504,\n29393=>15505,\n29395=>15506,\n29396=>15507,\n29397=>15508,\n29398=>15509,\n29400=>15510,\n29402=>15511,\n29403=>15512,\n29404=>15513,\n29405=>15514,\n29407=>15515,\n29410=>15516,\n29411=>15517,\n29412=>15518,\n29413=>15519,\n29414=>15520,\n29415=>15521,\n29418=>15522,\n29419=>15523,\n29429=>15524,\n29430=>15525,\n29438=>15526,\n29439=>15527,\n29440=>15528,\n29442=>15529,\n29444=>15530,\n29445=>15531,\n29446=>15532,\n29447=>15533,\n29448=>15534,\n29449=>15535,\n29451=>15536,\n29452=>15537,\n29453=>15538,\n29455=>15539,\n29456=>15540,\n29457=>15541,\n29458=>15542,\n29460=>15543,\n29464=>15544,\n29465=>15545,\n29466=>15546,\n29471=>15547,\n29472=>15548,\n29475=>15549,\n29476=>15550,\n29478=>15551,\n29479=>15552,\n29480=>15553,\n29485=>15554,\n29487=>15555,\n29488=>15556,\n29490=>15557,\n29491=>15558,\n29493=>15559,\n29498=>15560,\n29500=>15561,\n29501=>15562,\n29504=>15563,\n29506=>15564,\n29507=>15565,\n29510=>15566,\n29511=>15567,\n29512=>15568,\n29513=>15569,\n29514=>15570,\n29515=>15571,\n29516=>15572,\n29518=>15573,\n29519=>15574,\n29521=>15575,\n29523=>15576,\n29524=>15577,\n29525=>15578,\n29526=>15579,\n29528=>15580,\n29529=>15581,\n29530=>15582,\n29531=>15583,\n29532=>15584,\n29533=>15585,\n29534=>15586,\n29535=>15587,\n29537=>15588,\n29538=>15589,\n29539=>15590,\n29540=>15591,\n29541=>15592,\n29542=>15593,\n29543=>15594,\n29545=>15595,\n29550=>15596,\n29553=>15597,\n29555=>15598,\n29556=>15599,\n29558=>15600,\n29561=>15601,\n29565=>15602,\n29567=>15603,\n29569=>15604,\n29570=>15605,\n29571=>15606,\n29573=>15607,\n29574=>15608,\n29576=>15609,\n29578=>15610,\n29580=>15611,\n29581=>15612,\n29583=>15613,\n29584=>15614,\n29586=>15615,\n29587=>15616,\n29588=>15617,\n29589=>15618,\n29591=>15619,\n29592=>15620,\n29593=>15621,\n29594=>15622,\n29596=>15623,\n29597=>15624,\n29598=>15625,\n29600=>15626,\n29601=>15627,\n29603=>15628,\n29604=>15629,\n29605=>15630,\n29606=>15631,\n29607=>15632,\n29608=>15633,\n29610=>15634,\n29612=>15635,\n29613=>15636,\n29617=>15637,\n29620=>15638,\n29621=>15639,\n29622=>15640,\n29624=>15641,\n29625=>15642,\n29628=>15643,\n29629=>15644,\n29630=>15645,\n29631=>15646,\n29633=>15647,\n29635=>15648,\n29636=>15649,\n29637=>15650,\n29638=>15651,\n29639=>15652,\n29643=>15653,\n29644=>15654,\n29646=>15655,\n29650=>15656,\n29651=>15657,\n29652=>15658,\n29653=>15659,\n29654=>15660,\n29655=>15661,\n29656=>15662,\n29658=>15663,\n29659=>15664,\n29660=>15665,\n29661=>15666,\n29663=>15667,\n29665=>15668,\n29666=>15669,\n29667=>15670,\n29668=>15671,\n29670=>15672,\n29672=>15673,\n29674=>15674,\n29675=>15675,\n29676=>15676,\n29678=>15677,\n29679=>15678,\n29680=>15679,\n29681=>15680,\n29683=>15681,\n29684=>15682,\n29685=>15683,\n29686=>15684,\n29687=>15685,\n29688=>15686,\n29689=>15687,\n29690=>15688,\n29691=>15689,\n29692=>15690,\n29693=>15691,\n29695=>15692,\n29696=>15693,\n29697=>15694,\n29698=>15695,\n29700=>15696,\n29703=>15697,\n29704=>15698,\n29707=>15699,\n29708=>15700,\n29709=>15701,\n29710=>15702,\n29713=>15703,\n29714=>15704,\n29715=>15705,\n29716=>15706,\n29717=>15707,\n29718=>15708,\n29719=>15709,\n29720=>15710,\n29721=>15711,\n29724=>15712,\n29725=>15713,\n29726=>15714,\n29727=>15715,\n29728=>15716,\n29729=>15717,\n29731=>15718,\n29732=>15719,\n29735=>15720,\n29737=>15721,\n29739=>15722,\n29741=>15723,\n29743=>15724,\n29745=>15725,\n29746=>15726,\n29751=>15727,\n29752=>15728,\n29753=>15729,\n29754=>15730,\n29755=>15731,\n29757=>15732,\n29758=>15733,\n29760=>15734,\n29762=>15735,\n29763=>15736,\n29764=>15737,\n29765=>15738,\n29766=>15739,\n29767=>15740,\n29768=>15741,\n29769=>15742,\n29770=>15743,\n29772=>15744,\n29773=>15745,\n29774=>15746,\n29775=>15747,\n29776=>15748,\n29777=>15749,\n29778=>15750,\n29779=>15751,\n29780=>15752,\n29782=>15753,\n29784=>15754,\n29789=>15755,\n29792=>15756,\n29793=>15757,\n29794=>15758,\n29796=>15759,\n29797=>15760,\n29798=>15761,\n29799=>15762,\n29800=>15763,\n29803=>15764,\n29804=>15765,\n29806=>15766,\n29807=>15767,\n29809=>15768,\n29810=>15769,\n29811=>15770,\n29812=>15771,\n29813=>15772,\n29816=>15773,\n29817=>15774,\n29818=>15775,\n29819=>15776,\n29820=>15777,\n29821=>15778,\n29823=>15779,\n29826=>15780,\n29828=>15781,\n29829=>15782,\n29830=>15783,\n29832=>15784,\n29834=>15785,\n29836=>15786,\n29837=>15787,\n29839=>15788,\n29841=>15789,\n29842=>15790,\n29843=>15791,\n29844=>15792,\n29845=>15793,\n29846=>15794,\n29847=>15795,\n29848=>15796,\n29849=>15797,\n29850=>15798,\n29851=>15799,\n29853=>15800,\n29855=>15801,\n29856=>15802,\n29857=>15803,\n29858=>15804,\n29860=>15805,\n29861=>15806,\n29866=>15807,\n29867=>15808,\n29868=>15809,\n29869=>15810,\n29870=>15811,\n29871=>15812,\n29873=>15813,\n29874=>15814,\n29875=>15815,\n29876=>15816,\n29877=>15817,\n29878=>15818,\n29879=>15819,\n29880=>15820,\n29881=>15821,\n29883=>15822,\n29884=>15823,\n29886=>15824,\n29887=>15825,\n29888=>15826,\n29889=>15827,\n29890=>15828,\n29891=>15829,\n29892=>15830,\n29893=>15831,\n29894=>15832,\n29895=>15833,\n29896=>15834,\n29897=>15835,\n29899=>15836,\n29900=>15837,\n29901=>15838,\n29902=>15839,\n29904=>15840,\n29905=>15841,\n29907=>15842,\n29909=>15843,\n29910=>15844,\n29911=>15845,\n29912=>15846,\n29913=>15847,\n29915=>15848,\n29917=>15849,\n29919=>15850,\n29921=>15851,\n29925=>15852,\n29927=>15853,\n29928=>15854,\n29929=>15855,\n29930=>15856,\n29931=>15857,\n29932=>15858,\n29933=>15859,\n29936=>15860,\n29937=>15861,\n29938=>15862,\n29939=>15863,\n29941=>15864,\n29944=>15865,\n29945=>15866,\n29946=>15867,\n29947=>15868,\n29948=>15869,\n29949=>15870,\n29950=>15871,\n29952=>15872,\n29953=>15873,\n29954=>15874,\n29955=>15875,\n29957=>15876,\n29958=>15877,\n29959=>15878,\n29960=>15879,\n29961=>15880,\n29962=>15881,\n29963=>15882,\n29966=>15883,\n29968=>15884,\n29970=>15885,\n29972=>15886,\n29973=>15887,\n29974=>15888,\n29975=>15889,\n29979=>15890,\n29981=>15891,\n29982=>15892,\n29984=>15893,\n29985=>15894,\n29986=>15895,\n29988=>15896,\n29990=>15897,\n29991=>15898,\n29994=>15899,\n29998=>15900,\n30004=>15901,\n30006=>15902,\n30009=>15903,\n30012=>15904,\n30013=>15905,\n30015=>15906,\n30017=>15907,\n30018=>15908,\n30019=>15909,\n30020=>15910,\n30022=>15911,\n30023=>15912,\n30025=>15913,\n30026=>15914,\n30029=>15915,\n30032=>15916,\n30033=>15917,\n30034=>15918,\n30035=>15919,\n30037=>15920,\n30038=>15921,\n30039=>15922,\n30040=>15923,\n30046=>15924,\n30047=>15925,\n30048=>15926,\n30049=>15927,\n30051=>15928,\n30052=>15929,\n30055=>15930,\n30056=>15931,\n30057=>15932,\n30060=>15933,\n30061=>15934,\n30062=>15935,\n30063=>15936,\n30064=>15937,\n30065=>15938,\n30067=>15939,\n30069=>15940,\n30071=>15941,\n30074=>15942,\n30075=>15943,\n30076=>15944,\n30077=>15945,\n30078=>15946,\n30080=>15947,\n30081=>15948,\n30082=>15949,\n30084=>15950,\n30085=>15951,\n30088=>15952,\n30089=>15953,\n30090=>15954,\n30092=>15955,\n30093=>15956,\n30094=>15957,\n30096=>15958,\n30099=>15959,\n30101=>15960,\n30104=>15961,\n30107=>15962,\n30108=>15963,\n30110=>15964,\n30114=>15965,\n30118=>15966,\n30119=>15967,\n30120=>15968,\n30121=>15969,\n30122=>15970,\n30125=>15971,\n30134=>15972,\n30135=>15973,\n30138=>15974,\n30139=>15975,\n30143=>15976,\n30144=>15977,\n30145=>15978,\n30150=>15979,\n30155=>15980,\n30156=>15981,\n30158=>15982,\n30159=>15983,\n30160=>15984,\n30161=>15985,\n30163=>15986,\n30167=>15987,\n30170=>15988,\n30172=>15989,\n30173=>15990,\n30175=>15991,\n30176=>15992,\n30177=>15993,\n30181=>15994,\n30185=>15995,\n30188=>15996,\n30189=>15997,\n30190=>15998,\n30191=>15999,\n30194=>16000,\n30195=>16001,\n30197=>16002,\n30198=>16003,\n30199=>16004,\n30200=>16005,\n30202=>16006,\n30203=>16007,\n30205=>16008,\n30206=>16009,\n30212=>16010,\n30214=>16011,\n30215=>16012,\n30216=>16013,\n30217=>16014,\n30222=>16015,\n30223=>16016,\n30225=>16017,\n30226=>16018,\n30227=>16019,\n30228=>16020,\n30230=>16021,\n30234=>16022,\n30236=>16023,\n30237=>16024,\n30243=>16025,\n30248=>16026,\n30252=>16027,\n30254=>16028,\n30255=>16029,\n30257=>16030,\n30258=>16031,\n30262=>16032,\n30263=>16033,\n30265=>16034,\n30266=>16035,\n30269=>16036,\n30273=>16037,\n30276=>16038,\n30277=>16039,\n30280=>16040,\n30282=>16041,\n30283=>16042,\n30286=>16043,\n30287=>16044,\n30288=>16045,\n30289=>16046,\n30290=>16047,\n30291=>16048,\n30293=>16049,\n30295=>16050,\n30297=>16051,\n30298=>16052,\n30299=>16053,\n30301=>16054,\n30304=>16055,\n30305=>16056,\n30310=>16057,\n30312=>16058,\n30314=>16059,\n30323=>16060,\n30324=>16061,\n30325=>16062,\n12136=>16063,\n30326=>16063,\n30327=>16064,\n30329=>16065,\n30330=>16066,\n30335=>16067,\n30336=>16068,\n30337=>16069,\n30339=>16070,\n30341=>16071,\n30345=>16072,\n30346=>16073,\n30348=>16074,\n30349=>16075,\n30351=>16076,\n30352=>16077,\n30354=>16078,\n30356=>16079,\n30357=>16080,\n30359=>16081,\n30360=>16082,\n30363=>16083,\n30364=>16084,\n30365=>16085,\n30366=>16086,\n30367=>16087,\n30368=>16088,\n30369=>16089,\n30370=>16090,\n30371=>16091,\n30373=>16092,\n30374=>16093,\n30375=>16094,\n30376=>16095,\n30377=>16096,\n30378=>16097,\n30379=>16098,\n30380=>16099,\n30381=>16100,\n30383=>16101,\n30384=>16102,\n30387=>16103,\n30389=>16104,\n30390=>16105,\n30391=>16106,\n30393=>16107,\n30395=>16108,\n30396=>16109,\n30397=>16110,\n30398=>16111,\n30400=>16112,\n30401=>16113,\n30403=>16114,\n30404=>16115,\n30407=>16116,\n30409=>16117,\n30411=>16118,\n30412=>16119,\n30419=>16120,\n30421=>16121,\n30425=>16122,\n30426=>16123,\n30428=>16124,\n30429=>16125,\n30432=>16126,\n30434=>16127,\n30438=>16128,\n30440=>16129,\n30441=>16130,\n30442=>16131,\n30443=>16132,\n30444=>16133,\n30445=>16134,\n30448=>16135,\n30451=>16136,\n30453=>16137,\n30454=>16138,\n30455=>16139,\n30458=>16140,\n30459=>16141,\n30461=>16142,\n30463=>16143,\n30464=>16144,\n30466=>16145,\n30467=>16146,\n30469=>16147,\n30470=>16148,\n30474=>16149,\n30476=>16150,\n30478=>16151,\n30479=>16152,\n30480=>16153,\n30481=>16154,\n30482=>16155,\n30483=>16156,\n30484=>16157,\n30485=>16158,\n30486=>16159,\n30487=>16160,\n30488=>16161,\n30491=>16162,\n30492=>16163,\n30493=>16164,\n30494=>16165,\n30497=>16166,\n30499=>16167,\n30500=>16168,\n30501=>16169,\n30503=>16170,\n30506=>16171,\n30507=>16172,\n30508=>16173,\n30510=>16174,\n30512=>16175,\n30513=>16176,\n30514=>16177,\n30515=>16178,\n30516=>16179,\n30521=>16180,\n30523=>16181,\n30525=>16182,\n30526=>16183,\n30527=>16184,\n30530=>16185,\n30532=>16186,\n30533=>16187,\n30534=>16188,\n30536=>16189,\n30537=>16190,\n30538=>16191,\n30539=>16192,\n30540=>16193,\n30541=>16194,\n30542=>16195,\n30546=>16196,\n30547=>16197,\n30548=>16198,\n30549=>16199,\n30550=>16200,\n30551=>16201,\n30552=>16202,\n30553=>16203,\n30556=>16204,\n30557=>16205,\n30559=>16206,\n30560=>16207,\n30564=>16208,\n30567=>16209,\n30569=>16210,\n30570=>16211,\n30573=>16212,\n30574=>16213,\n30575=>16214,\n30576=>16215,\n30577=>16216,\n30578=>16217,\n30579=>16218,\n30580=>16219,\n30581=>16220,\n30582=>16221,\n30583=>16222,\n30584=>16223,\n30586=>16224,\n30587=>16225,\n30588=>16226,\n30593=>16227,\n30594=>16228,\n30595=>16229,\n30598=>16230,\n30599=>16231,\n30600=>16232,\n30601=>16233,\n30602=>16234,\n30603=>16235,\n30607=>16236,\n30608=>16237,\n30611=>16238,\n30612=>16239,\n30613=>16240,\n30614=>16241,\n30615=>16242,\n30617=>16243,\n30618=>16244,\n30619=>16245,\n30620=>16246,\n30621=>16247,\n30625=>16248,\n30627=>16249,\n30628=>16250,\n30630=>16251,\n30632=>16252,\n30635=>16253,\n30638=>16254,\n30639=>16255,\n30641=>16256,\n30642=>16257,\n30644=>16258,\n30646=>16259,\n30647=>16260,\n30648=>16261,\n30649=>16262,\n30650=>16263,\n30654=>16264,\n30656=>16265,\n30657=>16266,\n30658=>16267,\n30659=>16268,\n30660=>16269,\n30661=>16270,\n30662=>16271,\n30664=>16272,\n30665=>16273,\n30666=>16274,\n30667=>16275,\n30668=>16276,\n30670=>16277,\n30671=>16278,\n30672=>16279,\n30673=>16280,\n30674=>16281,\n30675=>16282,\n30676=>16283,\n30677=>16284,\n30678=>16285,\n30680=>16286,\n30681=>16287,\n30685=>16288,\n30686=>16289,\n30687=>16290,\n30688=>16291,\n30689=>16292,\n30692=>16293,\n30694=>16294,\n30696=>16295,\n30698=>16296,\n30704=>16297,\n30705=>16298,\n30706=>16299,\n30708=>16300,\n30709=>16301,\n30711=>16302,\n30713=>16303,\n30714=>16304,\n30715=>16305,\n30716=>16306,\n30723=>16307,\n30724=>16308,\n30725=>16309,\n30726=>16310,\n30727=>16311,\n30728=>16312,\n30730=>16313,\n30731=>16314,\n30734=>16315,\n30735=>16316,\n30736=>16317,\n30739=>16318,\n30741=>16319,\n30745=>16320,\n30747=>16321,\n30750=>16322,\n30752=>16323,\n30753=>16324,\n30754=>16325,\n30756=>16326,\n30760=>16327,\n30762=>16328,\n30763=>16329,\n30766=>16330,\n30767=>16331,\n30769=>16332,\n30770=>16333,\n30771=>16334,\n30773=>16335,\n30774=>16336,\n30781=>16337,\n30783=>16338,\n30785=>16339,\n30786=>16340,\n30788=>16341,\n30790=>16342,\n30792=>16343,\n30793=>16344,\n30794=>16345,\n30795=>16346,\n30797=>16347,\n30799=>16348,\n30801=>16349,\n30803=>16350,\n30804=>16351,\n30808=>16352,\n30809=>16353,\n30810=>16354,\n30811=>16355,\n30812=>16356,\n30814=>16357,\n30815=>16358,\n30816=>16359,\n30817=>16360,\n30818=>16361,\n30819=>16362,\n30821=>16363,\n30822=>16364,\n30823=>16365,\n30825=>16366,\n30832=>16367,\n30833=>16368,\n30834=>16369,\n30835=>16370,\n30836=>16371,\n30837=>16372,\n30838=>16373,\n30840=>16374,\n30841=>16375,\n30842=>16376,\n30843=>16377,\n30845=>16378,\n30846=>16379,\n30847=>16380,\n30848=>16381,\n30849=>16382,\n30850=>16383,\n30851=>16384,\n30852=>16385,\n30853=>16386,\n30854=>16387,\n30856=>16388,\n30858=>16389,\n30859=>16390,\n30863=>16391,\n30864=>16392,\n30866=>16393,\n30868=>16394,\n30869=>16395,\n30870=>16396,\n30873=>16397,\n30877=>16398,\n30878=>16399,\n30880=>16400,\n30882=>16401,\n30884=>16402,\n30886=>16403,\n30888=>16404,\n30890=>16405,\n30891=>16406,\n30892=>16407,\n30894=>16408,\n30895=>16409,\n30901=>16410,\n30902=>16411,\n30903=>16412,\n30907=>16413,\n30909=>16414,\n30911=>16415,\n30912=>16416,\n30914=>16417,\n30915=>16418,\n30916=>16419,\n30918=>16420,\n30919=>16421,\n30920=>16422,\n30924=>16423,\n30925=>16424,\n30926=>16425,\n30927=>16426,\n30929=>16427,\n30930=>16428,\n30931=>16429,\n30934=>16430,\n30935=>16431,\n30936=>16432,\n30939=>16433,\n30940=>16434,\n30941=>16435,\n30942=>16436,\n30943=>16437,\n30944=>16438,\n30945=>16439,\n30946=>16440,\n30948=>16441,\n30949=>16442,\n30950=>16443,\n30953=>16444,\n30954=>16445,\n30955=>16446,\n30957=>16447,\n30958=>16448,\n30960=>16449,\n30961=>16450,\n30963=>16451,\n30965=>16452,\n30966=>16453,\n30968=>16454,\n30969=>16455,\n30971=>16456,\n30972=>16457,\n30974=>16458,\n30975=>16459,\n30976=>16460,\n30978=>16461,\n30979=>16462,\n30980=>16463,\n30982=>16464,\n30983=>16465,\n30984=>16466,\n30985=>16467,\n30986=>16468,\n30987=>16469,\n30988=>16470,\n30989=>16471,\n30991=>16472,\n30992=>16473,\n30993=>16474,\n30994=>16475,\n30996=>16476,\n30997=>16477,\n30998=>16478,\n30999=>16479,\n31000=>16480,\n31002=>16481,\n31003=>16482,\n31004=>16483,\n31005=>16484,\n31007=>16485,\n31008=>16486,\n31009=>16487,\n31010=>16488,\n31011=>16489,\n31013=>16490,\n31015=>16491,\n31016=>16492,\n31017=>16493,\n31021=>16494,\n31022=>16495,\n31023=>16496,\n31024=>16497,\n31026=>16498,\n31027=>16499,\n31029=>16500,\n31030=>16501,\n31031=>16502,\n31032=>16503,\n31033=>16504,\n31037=>16505,\n31039=>16506,\n31042=>16507,\n31043=>16508,\n31044=>16509,\n31045=>16510,\n31047=>16511,\n31050=>16512,\n31051=>16513,\n31052=>16514,\n31053=>16515,\n31054=>16516,\n31055=>16517,\n31056=>16518,\n31057=>16519,\n31058=>16520,\n31060=>16521,\n31061=>16522,\n31064=>16523,\n31065=>16524,\n31073=>16525,\n31075=>16526,\n31076=>16527,\n31078=>16528,\n31081=>16529,\n31082=>16530,\n31083=>16531,\n31084=>16532,\n31086=>16533,\n31088=>16534,\n31089=>16535,\n31090=>16536,\n31091=>16537,\n31092=>16538,\n31093=>16539,\n31094=>16540,\n31097=>16541,\n31099=>16542,\n31100=>16543,\n31101=>16544,\n31102=>16545,\n31103=>16546,\n31106=>16547,\n31107=>16548,\n31110=>16549,\n31111=>16550,\n31112=>16551,\n31113=>16552,\n31115=>16553,\n31116=>16554,\n31120=>16555,\n31121=>16556,\n31122=>16557,\n31123=>16558,\n31124=>16559,\n31125=>16560,\n31126=>16561,\n31127=>16562,\n31128=>16563,\n31129=>16564,\n31131=>16565,\n31132=>16566,\n31133=>16567,\n31134=>16568,\n31135=>16569,\n31136=>16570,\n31137=>16571,\n31138=>16572,\n31139=>16573,\n31140=>16574,\n31141=>16575,\n31144=>16576,\n31145=>16577,\n31147=>16578,\n31148=>16579,\n31149=>16580,\n31151=>16581,\n31154=>16582,\n31156=>16583,\n31157=>16584,\n31158=>16585,\n31159=>16586,\n12145=>16587,\n31160=>16587,\n31164=>16588,\n31167=>16589,\n31170=>16590,\n31172=>16591,\n31173=>16592,\n31175=>16593,\n31176=>16594,\n31178=>16595,\n63893=>16595,\n31180=>16596,\n31182=>16597,\n31183=>16598,\n31184=>16599,\n31187=>16600,\n31188=>16601,\n31190=>16602,\n31191=>16603,\n31193=>16604,\n31194=>16605,\n31195=>16606,\n31196=>16607,\n31197=>16608,\n31198=>16609,\n31200=>16610,\n31201=>16611,\n31202=>16612,\n31205=>16613,\n31208=>16614,\n31210=>16615,\n31212=>16616,\n31214=>16617,\n31217=>16618,\n31218=>16619,\n31219=>16620,\n31220=>16621,\n31221=>16622,\n31222=>16623,\n31223=>16624,\n31225=>16625,\n31226=>16626,\n31228=>16627,\n31230=>16628,\n31231=>16629,\n31233=>16630,\n31236=>16631,\n31237=>16632,\n31239=>16633,\n31240=>16634,\n31241=>16635,\n31242=>16636,\n31244=>16637,\n31247=>16638,\n31248=>16639,\n31249=>16640,\n31250=>16641,\n31251=>16642,\n31253=>16643,\n31254=>16644,\n31256=>16645,\n31257=>16646,\n31259=>16647,\n31260=>16648,\n31261=>16649,\n31263=>16650,\n31265=>16651,\n31266=>16652,\n31268=>16653,\n31269=>16654,\n31270=>16655,\n31271=>16656,\n31272=>16657,\n31273=>16658,\n31274=>16659,\n31275=>16660,\n31276=>16661,\n31277=>16662,\n31279=>16663,\n31280=>16664,\n31282=>16665,\n31284=>16666,\n31285=>16667,\n31286=>16668,\n31288=>16669,\n31290=>16670,\n31294=>16671,\n31297=>16672,\n31298=>16673,\n31299=>16674,\n31300=>16675,\n31301=>16676,\n31303=>16677,\n31304=>16678,\n31305=>16679,\n31306=>16680,\n31307=>16681,\n31311=>16682,\n31312=>16683,\n31314=>16684,\n31315=>16685,\n31316=>16686,\n31317=>16687,\n31318=>16688,\n31320=>16689,\n31321=>16690,\n31322=>16691,\n31323=>16692,\n31324=>16693,\n31325=>16694,\n31326=>16695,\n31327=>16696,\n31328=>16697,\n31331=>16698,\n31332=>16699,\n31333=>16700,\n31334=>16701,\n31335=>16702,\n31336=>16703,\n31338=>16704,\n31340=>16705,\n31341=>16706,\n31342=>16707,\n31343=>16708,\n31345=>16709,\n31346=>16710,\n31347=>16711,\n31349=>16712,\n31355=>16713,\n31356=>16714,\n31357=>16715,\n31358=>16716,\n31362=>16717,\n31365=>16718,\n31367=>16719,\n31369=>16720,\n31370=>16721,\n31371=>16722,\n31372=>16723,\n31374=>16724,\n31375=>16725,\n31376=>16726,\n31379=>16727,\n31380=>16728,\n31385=>16729,\n31386=>16730,\n31387=>16731,\n31390=>16732,\n31393=>16733,\n31394=>16734,\n31395=>16735,\n31396=>16736,\n31399=>16737,\n31403=>16738,\n31407=>16739,\n31408=>16740,\n31409=>16741,\n31410=>16742,\n31412=>16743,\n31413=>16744,\n31415=>16745,\n31416=>16746,\n31417=>16747,\n31419=>16748,\n31420=>16749,\n31421=>16750,\n31422=>16751,\n31424=>16752,\n31425=>16753,\n31426=>16754,\n31427=>16755,\n31430=>16756,\n31433=>16757,\n31436=>16758,\n31437=>16759,\n31438=>16760,\n31439=>16761,\n31440=>16762,\n31441=>16763,\n31442=>16764,\n31443=>16765,\n31444=>16766,\n31445=>16767,\n31447=>16768,\n31448=>16769,\n31450=>16770,\n31451=>16771,\n31452=>16772,\n31453=>16773,\n31457=>16774,\n31458=>16775,\n31460=>16776,\n31463=>16777,\n31464=>16778,\n31465=>16779,\n31467=>16780,\n31468=>16781,\n31470=>16782,\n31472=>16783,\n31473=>16784,\n31474=>16785,\n31475=>16786,\n31476=>16787,\n31477=>16788,\n31479=>16789,\n31480=>16790,\n31483=>16791,\n31484=>16792,\n31486=>16793,\n31488=>16794,\n31489=>16795,\n31490=>16796,\n31493=>16797,\n31495=>16798,\n31497=>16799,\n31500=>16800,\n31501=>16801,\n31502=>16802,\n31504=>16803,\n31506=>16804,\n31507=>16805,\n31510=>16806,\n31511=>16807,\n31512=>16808,\n31514=>16809,\n31516=>16810,\n31517=>16811,\n31519=>16812,\n31521=>16813,\n31522=>16814,\n31523=>16815,\n31527=>16816,\n31529=>16817,\n31533=>16818,\n31535=>16819,\n31536=>16820,\n31538=>16821,\n31540=>16822,\n31541=>16823,\n31542=>16824,\n31543=>16825,\n31545=>16826,\n31547=>16827,\n31549=>16828,\n31551=>16829,\n31552=>16830,\n31553=>16831,\n31554=>16832,\n31555=>16833,\n31556=>16834,\n31560=>16835,\n31562=>16836,\n31565=>16837,\n31566=>16838,\n31571=>16839,\n31573=>16840,\n31575=>16841,\n31577=>16842,\n31580=>16843,\n31582=>16844,\n31583=>16845,\n31585=>16846,\n31587=>16847,\n31588=>16848,\n31589=>16849,\n31590=>16850,\n31592=>16851,\n31593=>16852,\n31594=>16853,\n31595=>16854,\n31596=>16855,\n31597=>16856,\n31599=>16857,\n31600=>16858,\n31603=>16859,\n31604=>16860,\n31606=>16861,\n31608=>16862,\n31610=>16863,\n31612=>16864,\n31613=>16865,\n31615=>16866,\n31617=>16867,\n31618=>16868,\n31619=>16869,\n31620=>16870,\n31622=>16871,\n31623=>16872,\n31624=>16873,\n31625=>16874,\n31626=>16875,\n31628=>16876,\n31630=>16877,\n31631=>16878,\n31633=>16879,\n31634=>16880,\n31635=>16881,\n31638=>16882,\n31640=>16883,\n31641=>16884,\n31642=>16885,\n31643=>16886,\n31646=>16887,\n31647=>16888,\n31648=>16889,\n31651=>16890,\n31652=>16891,\n31653=>16892,\n31662=>16893,\n31663=>16894,\n31664=>16895,\n31666=>16896,\n31667=>16897,\n31669=>16898,\n31670=>16899,\n31671=>16900,\n31673=>16901,\n31674=>16902,\n31675=>16903,\n31676=>16904,\n31677=>16905,\n31678=>16906,\n31679=>16907,\n31682=>16908,\n31683=>16909,\n31685=>16910,\n31688=>16911,\n31690=>16912,\n31693=>16913,\n31694=>16914,\n31695=>16915,\n31696=>16916,\n31698=>16917,\n31700=>16918,\n31701=>16919,\n31702=>16920,\n31703=>16921,\n31704=>16922,\n31707=>16923,\n31708=>16924,\n31710=>16925,\n31711=>16926,\n31712=>16927,\n31714=>16928,\n31715=>16929,\n31719=>16930,\n31720=>16931,\n31723=>16932,\n31724=>16933,\n31725=>16934,\n31727=>16935,\n31728=>16936,\n31730=>16937,\n31732=>16938,\n31733=>16939,\n31734=>16940,\n31736=>16941,\n31737=>16942,\n31738=>16943,\n31739=>16944,\n31741=>16945,\n31743=>16946,\n31745=>16947,\n31746=>16948,\n31747=>16949,\n31748=>16950,\n31749=>16951,\n31750=>16952,\n31752=>16953,\n31753=>16954,\n31754=>16955,\n31758=>16956,\n31760=>16957,\n31761=>16958,\n31762=>16959,\n31763=>16960,\n31764=>16961,\n31765=>16962,\n31767=>16963,\n31768=>16964,\n31769=>16965,\n31770=>16966,\n31771=>16967,\n31772=>16968,\n31773=>16969,\n31776=>16970,\n31778=>16971,\n31780=>16972,\n31781=>16973,\n31784=>16974,\n31785=>16975,\n31788=>16976,\n31789=>16977,\n31790=>16978,\n31791=>16979,\n31792=>16980,\n31793=>16981,\n31794=>16982,\n31795=>16983,\n31796=>16984,\n31797=>16985,\n31798=>16986,\n31799=>16987,\n31801=>16988,\n31802=>16989,\n31803=>16990,\n31804=>16991,\n31810=>16992,\n31812=>16993,\n31813=>16994,\n31814=>16995,\n31815=>16996,\n31816=>16997,\n31817=>16998,\n31818=>16999,\n31819=>17000,\n31822=>17001,\n31823=>17002,\n31824=>17003,\n31825=>17004,\n31826=>17005,\n31827=>17006,\n31828=>17007,\n31829=>17008,\n31830=>17009,\n31831=>17010,\n31832=>17011,\n31833=>17012,\n31834=>17013,\n31835=>17014,\n31837=>17015,\n31838=>17016,\n31841=>17017,\n31842=>17018,\n31843=>17019,\n31845=>17020,\n31846=>17021,\n31847=>17022,\n31848=>17023,\n31851=>17024,\n31853=>17025,\n31855=>17026,\n31856=>17027,\n31857=>17028,\n31861=>17029,\n31862=>17030,\n31863=>17031,\n31864=>17032,\n31865=>17033,\n31866=>17034,\n31870=>17035,\n31871=>17036,\n31872=>17037,\n31873=>17038,\n31874=>17039,\n31875=>17040,\n31876=>17041,\n31877=>17042,\n31878=>17043,\n31879=>17044,\n31880=>17045,\n31882=>17046,\n31883=>17047,\n31884=>17048,\n31885=>17049,\n31886=>17050,\n31887=>17051,\n31888=>17052,\n31891=>17053,\n31892=>17054,\n31894=>17055,\n31897=>17056,\n31898=>17057,\n31899=>17058,\n31904=>17059,\n31905=>17060,\n31907=>17061,\n31910=>17062,\n31911=>17063,\n31912=>17064,\n31913=>17065,\n31915=>17066,\n31916=>17067,\n31917=>17068,\n31919=>17069,\n31920=>17070,\n31924=>17071,\n31925=>17072,\n31926=>17073,\n31927=>17074,\n31928=>17075,\n31930=>17076,\n31931=>17077,\n31935=>17078,\n31936=>17079,\n31938=>17080,\n31939=>17081,\n31940=>17082,\n31942=>17083,\n31945=>17084,\n31947=>17085,\n31950=>17086,\n31951=>17087,\n31952=>17088,\n31953=>17089,\n31954=>17090,\n31955=>17091,\n31956=>17092,\n31960=>17093,\n31962=>17094,\n31963=>17095,\n31969=>17096,\n31970=>17097,\n31971=>17098,\n31972=>17099,\n31973=>17100,\n31974=>17101,\n31977=>17102,\n31978=>17103,\n31979=>17104,\n31980=>17105,\n31981=>17106,\n31982=>17107,\n31985=>17108,\n31987=>17109,\n31989=>17110,\n31991=>17111,\n31994=>17112,\n31996=>17113,\n31997=>17114,\n31999=>17115,\n32001=>17116,\n32003=>17117,\n32012=>17118,\n32014=>17119,\n32015=>17120,\n32017=>17121,\n32018=>17122,\n32022=>17123,\n32024=>17124,\n32029=>17125,\n32030=>17126,\n32031=>17127,\n32035=>17128,\n32036=>17129,\n32037=>17130,\n32038=>17131,\n32040=>17132,\n32041=>17133,\n32042=>17134,\n32044=>17135,\n32045=>17136,\n32046=>17137,\n32052=>17138,\n32053=>17139,\n32054=>17140,\n32055=>17141,\n32056=>17142,\n32059=>17143,\n32061=>17144,\n32062=>17145,\n32065=>17146,\n32067=>17147,\n32069=>17148,\n32071=>17149,\n32072=>17150,\n32073=>17151,\n32074=>17152,\n32075=>17153,\n32076=>17154,\n32077=>17155,\n32079=>17156,\n32081=>17157,\n32082=>17158,\n32083=>17159,\n32084=>17160,\n32085=>17161,\n32086=>17162,\n32087=>17163,\n32088=>17164,\n32089=>17165,\n32090=>17166,\n32091=>17167,\n32092=>17168,\n32095=>17169,\n32096=>17170,\n32099=>17171,\n32100=>17172,\n32101=>17173,\n32103=>17174,\n32105=>17175,\n32106=>17176,\n32107=>17177,\n32108=>17178,\n32109=>17179,\n32111=>17180,\n32112=>17181,\n32116=>17182,\n32117=>17183,\n32120=>17184,\n32122=>17185,\n32123=>17186,\n32124=>17187,\n32125=>17188,\n32126=>17189,\n32127=>17190,\n32128=>17191,\n32130=>17192,\n32132=>17193,\n32133=>17194,\n32135=>17195,\n32138=>17196,\n32139=>17197,\n32140=>17198,\n32141=>17199,\n32142=>17200,\n32144=>17201,\n32145=>17202,\n32146=>17203,\n32148=>17204,\n32149=>17205,\n32150=>17206,\n32151=>17207,\n32152=>17208,\n32153=>17209,\n32154=>17210,\n32155=>17211,\n32157=>17212,\n32159=>17213,\n32160=>17214,\n32161=>17215,\n32164=>17216,\n32165=>17217,\n32167=>17218,\n32168=>17219,\n32169=>17220,\n32170=>17221,\n32175=>17222,\n32181=>17223,\n32182=>17224,\n32183=>17225,\n32188=>17226,\n32192=>17227,\n32193=>17228,\n32194=>17229,\n32195=>17230,\n32197=>17231,\n32198=>17232,\n32200=>17233,\n32201=>17234,\n32204=>17235,\n32205=>17236,\n32206=>17237,\n32207=>17238,\n32208=>17239,\n32211=>17240,\n32213=>17241,\n32214=>17242,\n32218=>17243,\n32219=>17244,\n32220=>17245,\n32223=>17246,\n32226=>17247,\n32228=>17248,\n32229=>17249,\n32231=>17250,\n32234=>17251,\n32235=>17252,\n32237=>17253,\n32238=>17254,\n32240=>17255,\n32243=>17256,\n32245=>17257,\n32247=>17258,\n32248=>17259,\n32250=>17260,\n32252=>17261,\n32253=>17262,\n32254=>17263,\n32255=>17264,\n32256=>17265,\n32257=>17266,\n32258=>17267,\n32259=>17268,\n32260=>17269,\n32261=>17270,\n32262=>17271,\n32263=>17272,\n32268=>17273,\n32269=>17274,\n32270=>17275,\n32271=>17276,\n32274=>17277,\n32275=>17278,\n32276=>17279,\n32277=>17280,\n32278=>17281,\n32279=>17282,\n32280=>17283,\n32281=>17284,\n32282=>17285,\n32284=>17286,\n32288=>17287,\n32289=>17288,\n32290=>17289,\n32292=>17290,\n32293=>17291,\n32294=>17292,\n32296=>17293,\n32297=>17294,\n32298=>17295,\n32300=>17296,\n32303=>17297,\n32304=>17298,\n32307=>17299,\n32312=>17300,\n32314=>17301,\n32316=>17302,\n32319=>17303,\n32320=>17304,\n32322=>17305,\n32323=>17306,\n32324=>17307,\n32328=>17308,\n32329=>17309,\n32330=>17310,\n32331=>17311,\n32332=>17312,\n32333=>17313,\n32334=>17314,\n32335=>17315,\n32336=>17316,\n32337=>17317,\n32339=>17318,\n32342=>17319,\n32343=>17320,\n32344=>17321,\n32345=>17322,\n32347=>17323,\n32348=>17324,\n32349=>17325,\n32351=>17326,\n32352=>17327,\n32353=>17328,\n32355=>17329,\n32356=>17330,\n32357=>17331,\n32358=>17332,\n32359=>17333,\n32360=>17334,\n32364=>17335,\n32369=>17336,\n32370=>17337,\n32372=>17338,\n32373=>17339,\n32374=>17340,\n32375=>17341,\n32376=>17342,\n32378=>17343,\n32379=>17344,\n32383=>17345,\n32384=>17346,\n32385=>17347,\n32387=>17348,\n32388=>17349,\n32389=>17350,\n32390=>17351,\n32391=>17352,\n32393=>17353,\n32395=>17354,\n32398=>17355,\n32400=>17356,\n32401=>17357,\n32402=>17358,\n32405=>17359,\n32407=>17360,\n32409=>17361,\n32410=>17362,\n32413=>17363,\n32414=>17364,\n32430=>17365,\n32436=>17366,\n32443=>17367,\n32444=>17368,\n32470=>17369,\n32484=>17370,\n32492=>17371,\n32505=>17372,\n32522=>17373,\n32528=>17374,\n32542=>17375,\n32567=>17376,\n32569=>17377,\n32571=>17378,\n32572=>17379,\n32573=>17380,\n32574=>17381,\n32575=>17382,\n32576=>17383,\n32577=>17384,\n32579=>17385,\n32582=>17386,\n32583=>17387,\n32584=>17388,\n32585=>17389,\n32586=>17390,\n32587=>17391,\n32589=>17392,\n32591=>17393,\n32594=>17394,\n32595=>17395,\n32598=>17396,\n32601=>17397,\n32603=>17398,\n32604=>17399,\n32605=>17400,\n32606=>17401,\n32608=>17402,\n32611=>17403,\n32612=>17404,\n32613=>17405,\n32614=>17406,\n32615=>17407,\n32619=>17408,\n32620=>17409,\n32621=>17410,\n32623=>17411,\n32627=>17412,\n32629=>17413,\n32630=>17414,\n32632=>17415,\n32634=>17416,\n32635=>17417,\n32636=>17418,\n32637=>17419,\n32639=>17420,\n32640=>17421,\n32642=>17422,\n32643=>17423,\n32644=>17424,\n32647=>17425,\n32649=>17426,\n32651=>17427,\n32653=>17428,\n32655=>17429,\n32656=>17430,\n32657=>17431,\n32658=>17432,\n32659=>17433,\n32661=>17434,\n32662=>17435,\n32663=>17436,\n32664=>17437,\n32665=>17438,\n32667=>17439,\n32668=>17440,\n32672=>17441,\n32674=>17442,\n32675=>17443,\n32678=>17444,\n32680=>17445,\n32682=>17446,\n32683=>17447,\n32684=>17448,\n32685=>17449,\n32686=>17450,\n32689=>17451,\n32691=>17452,\n32692=>17453,\n32693=>17454,\n32694=>17455,\n32695=>17456,\n32698=>17457,\n32699=>17458,\n32702=>17459,\n32704=>17460,\n32706=>17461,\n32707=>17462,\n32708=>17463,\n32710=>17464,\n32711=>17465,\n32712=>17466,\n32713=>17467,\n32715=>17468,\n32717=>17469,\n32719=>17470,\n32720=>17471,\n32721=>17472,\n32723=>17473,\n32726=>17474,\n32727=>17475,\n32729=>17476,\n32730=>17477,\n32731=>17478,\n32732=>17479,\n32733=>17480,\n32734=>17481,\n32738=>17482,\n32739=>17483,\n32740=>17484,\n32743=>17485,\n32744=>17486,\n32746=>17487,\n32747=>17488,\n32748=>17489,\n32749=>17490,\n32751=>17491,\n32754=>17492,\n32756=>17493,\n32757=>17494,\n32758=>17495,\n32759=>17496,\n32760=>17497,\n32762=>17498,\n32765=>17499,\n32766=>17500,\n32767=>17501,\n32770=>17502,\n32775=>17503,\n32776=>17504,\n32777=>17505,\n32778=>17506,\n32782=>17507,\n32783=>17508,\n32785=>17509,\n32787=>17510,\n32794=>17511,\n32795=>17512,\n32797=>17513,\n32798=>17514,\n32799=>17515,\n32801=>17516,\n32803=>17517,\n32804=>17518,\n32811=>17519,\n32813=>17520,\n32815=>17521,\n32816=>17522,\n32818=>17523,\n32820=>17524,\n32825=>17525,\n32826=>17526,\n32828=>17527,\n32830=>17528,\n32832=>17529,\n32833=>17530,\n32836=>17531,\n32837=>17532,\n32839=>17533,\n32840=>17534,\n32841=>17535,\n32846=>17536,\n32847=>17537,\n32848=>17538,\n32849=>17539,\n32851=>17540,\n32853=>17541,\n32855=>17542,\n32857=>17543,\n32859=>17544,\n32860=>17545,\n32861=>17546,\n32863=>17547,\n32864=>17548,\n32865=>17549,\n32866=>17550,\n32867=>17551,\n32868=>17552,\n32869=>17553,\n32870=>17554,\n32871=>17555,\n32872=>17556,\n32875=>17557,\n32876=>17558,\n32877=>17559,\n32878=>17560,\n32884=>17561,\n32888=>17562,\n32890=>17563,\n32891=>17564,\n32892=>17565,\n32897=>17566,\n32898=>17567,\n32904=>17568,\n32906=>17569,\n32909=>17570,\n32910=>17571,\n32911=>17572,\n32912=>17573,\n32913=>17574,\n32914=>17575,\n32916=>17576,\n32917=>17577,\n32919=>17578,\n32921=>17579,\n32926=>17580,\n32931=>17581,\n32934=>17582,\n32935=>17583,\n32936=>17584,\n32940=>17585,\n32944=>17586,\n32947=>17587,\n32949=>17588,\n32950=>17589,\n32952=>17590,\n32953=>17591,\n32955=>17592,\n32965=>17593,\n32967=>17594,\n32968=>17595,\n32969=>17596,\n32970=>17597,\n32971=>17598,\n32975=>17599,\n32976=>17600,\n32977=>17601,\n32978=>17602,\n32979=>17603,\n32980=>17604,\n32981=>17605,\n32984=>17606,\n32991=>17607,\n32992=>17608,\n32994=>17609,\n32995=>17610,\n32998=>17611,\n33006=>17612,\n33013=>17613,\n33015=>17614,\n33017=>17615,\n33019=>17616,\n33022=>17617,\n33023=>17618,\n33024=>17619,\n33025=>17620,\n33027=>17621,\n33028=>17622,\n33031=>17623,\n33032=>17624,\n33035=>17625,\n33036=>17626,\n33045=>17627,\n33047=>17628,\n33049=>17629,\n33052=>17630,\n33053=>17631,\n33055=>17632,\n33056=>17633,\n33057=>17634,\n33058=>17635,\n33059=>17636,\n33060=>17637,\n33061=>17638,\n33062=>17639,\n33063=>17640,\n33064=>17641,\n33065=>17642,\n33066=>17643,\n33067=>17644,\n33069=>17645,\n33070=>17646,\n33072=>17647,\n33075=>17648,\n33076=>17649,\n33077=>17650,\n33079=>17651,\n33082=>17652,\n33083=>17653,\n33084=>17654,\n33085=>17655,\n33087=>17656,\n33088=>17657,\n33089=>17658,\n33090=>17659,\n33091=>17660,\n33092=>17661,\n33093=>17662,\n33095=>17663,\n33097=>17664,\n33101=>17665,\n33103=>17666,\n33106=>17667,\n33111=>17668,\n33112=>17669,\n33115=>17670,\n33116=>17671,\n33117=>17672,\n33118=>17673,\n33119=>17674,\n33122=>17675,\n33123=>17676,\n33124=>17677,\n33128=>17678,\n33130=>17679,\n33132=>17680,\n33135=>17681,\n33138=>17682,\n33139=>17683,\n33141=>17684,\n33142=>17685,\n33143=>17686,\n33153=>17687,\n33155=>17688,\n33156=>17689,\n33157=>17690,\n33158=>17691,\n33159=>17692,\n33161=>17693,\n33163=>17694,\n33164=>17695,\n33165=>17696,\n33166=>17697,\n33168=>17698,\n33170=>17699,\n33171=>17700,\n33172=>17701,\n33173=>17702,\n33174=>17703,\n33175=>17704,\n33177=>17705,\n33182=>17706,\n33183=>17707,\n33185=>17708,\n33186=>17709,\n33188=>17710,\n33189=>17711,\n33191=>17712,\n33195=>17713,\n33196=>17714,\n33197=>17715,\n33198=>17716,\n33199=>17717,\n33200=>17718,\n33201=>17719,\n33202=>17720,\n33204=>17721,\n33205=>17722,\n33206=>17723,\n33207=>17724,\n33208=>17725,\n33209=>17726,\n33212=>17727,\n33220=>17728,\n33221=>17729,\n33223=>17730,\n33224=>17731,\n33227=>17732,\n33230=>17733,\n33232=>17734,\n33233=>17735,\n33234=>17736,\n33235=>17737,\n33236=>17738,\n33237=>17739,\n33238=>17740,\n33239=>17741,\n33241=>17742,\n33243=>17743,\n33244=>17744,\n33245=>17745,\n33246=>17746,\n33249=>17747,\n33250=>17748,\n33252=>17749,\n33253=>17750,\n33254=>17751,\n33257=>17752,\n33259=>17753,\n33262=>17754,\n33263=>17755,\n33264=>17756,\n33265=>17757,\n33266=>17758,\n33269=>17759,\n33270=>17760,\n33271=>17761,\n33272=>17762,\n33273=>17763,\n33277=>17764,\n33279=>17765,\n33283=>17766,\n33291=>17767,\n33294=>17768,\n33295=>17769,\n33297=>17770,\n33299=>17771,\n33301=>17772,\n33302=>17773,\n33303=>17774,\n33304=>17775,\n33305=>17776,\n33306=>17777,\n33309=>17778,\n33312=>17779,\n33316=>17780,\n33317=>17781,\n33318=>17782,\n33319=>17783,\n33321=>17784,\n33326=>17785,\n33330=>17786,\n33338=>17787,\n33340=>17788,\n33341=>17789,\n33343=>17790,\n33344=>17791,\n33345=>17792,\n33346=>17793,\n33347=>17794,\n33349=>17795,\n33350=>17796,\n33352=>17797,\n33354=>17798,\n33356=>17799,\n33357=>17800,\n33358=>17801,\n33360=>17802,\n33361=>17803,\n33362=>17804,\n33363=>17805,\n33364=>17806,\n33365=>17807,\n33366=>17808,\n33367=>17809,\n33371=>17810,\n33372=>17811,\n33373=>17812,\n33374=>17813,\n33376=>17814,\n33377=>17815,\n33378=>17816,\n33379=>17817,\n33381=>17818,\n33383=>17819,\n33385=>17820,\n33386=>17821,\n33388=>17822,\n33389=>17823,\n33397=>17824,\n33398=>17825,\n12171=>17826,\n33400=>17826,\n33403=>17827,\n33404=>17828,\n33408=>17829,\n33409=>17830,\n33411=>17831,\n33413=>17832,\n33414=>17833,\n33415=>17834,\n33417=>17835,\n33420=>17836,\n33424=>17837,\n33427=>17838,\n33428=>17839,\n33429=>17840,\n33430=>17841,\n33434=>17842,\n33435=>17843,\n33438=>17844,\n33440=>17845,\n33442=>17846,\n33443=>17847,\n33447=>17848,\n33458=>17849,\n33461=>17850,\n33462=>17851,\n33466=>17852,\n33468=>17853,\n33471=>17854,\n33472=>17855,\n33474=>17856,\n33475=>17857,\n33477=>17858,\n33478=>17859,\n33481=>17860,\n33488=>17861,\n33494=>17862,\n33497=>17863,\n33498=>17864,\n33501=>17865,\n33506=>17866,\n33512=>17867,\n33513=>17868,\n33514=>17869,\n33516=>17870,\n33517=>17871,\n33518=>17872,\n33520=>17873,\n33522=>17874,\n33523=>17875,\n33525=>17876,\n33526=>17877,\n33528=>17878,\n33530=>17879,\n33532=>17880,\n33533=>17881,\n33534=>17882,\n33535=>17883,\n33536=>17884,\n33546=>17885,\n33547=>17886,\n33549=>17887,\n33552=>17888,\n33554=>17889,\n33555=>17890,\n33558=>17891,\n33560=>17892,\n33561=>17893,\n33565=>17894,\n33566=>17895,\n33567=>17896,\n33568=>17897,\n33569=>17898,\n33570=>17899,\n33571=>17900,\n33572=>17901,\n33573=>17902,\n33574=>17903,\n33577=>17904,\n33578=>17905,\n33582=>17906,\n33584=>17907,\n33586=>17908,\n33591=>17909,\n33595=>17910,\n33597=>17911,\n33598=>17912,\n33599=>17913,\n33601=>17914,\n33602=>17915,\n33604=>17916,\n33605=>17917,\n33608=>17918,\n33610=>17919,\n33611=>17920,\n33612=>17921,\n33613=>17922,\n33614=>17923,\n33619=>17924,\n33621=>17925,\n33622=>17926,\n33623=>17927,\n33624=>17928,\n33625=>17929,\n33629=>17930,\n33634=>17931,\n33648=>17932,\n33649=>17933,\n33650=>17934,\n33651=>17935,\n33652=>17936,\n33653=>17937,\n33654=>17938,\n33657=>17939,\n33658=>17940,\n33662=>17941,\n33663=>17942,\n33664=>17943,\n33665=>17944,\n33666=>17945,\n33667=>17946,\n33668=>17947,\n33671=>17948,\n33672=>17949,\n33675=>17950,\n33676=>17951,\n33677=>17952,\n33679=>17953,\n33680=>17954,\n33681=>17955,\n33684=>17956,\n33685=>17957,\n33687=>17958,\n33689=>17959,\n33690=>17960,\n33693=>17961,\n33695=>17962,\n33697=>17963,\n33699=>17964,\n33700=>17965,\n33701=>17966,\n33702=>17967,\n33708=>17968,\n33709=>17969,\n33710=>17970,\n33711=>17971,\n33717=>17972,\n33723=>17973,\n33726=>17974,\n33727=>17975,\n33730=>17976,\n33731=>17977,\n33732=>17978,\n33734=>17979,\n33736=>17980,\n33737=>17981,\n33739=>17982,\n33741=>17983,\n33742=>17984,\n33744=>17985,\n33745=>17986,\n33746=>17987,\n33747=>17988,\n33749=>17989,\n33751=>17990,\n33753=>17991,\n33754=>17992,\n33755=>17993,\n33758=>17994,\n33762=>17995,\n33763=>17996,\n33764=>17997,\n33766=>17998,\n33767=>17999,\n33768=>18000,\n33771=>18001,\n33772=>18002,\n33773=>18003,\n33774=>18004,\n33779=>18005,\n33780=>18006,\n33781=>18007,\n33782=>18008,\n33783=>18009,\n33786=>18010,\n33787=>18011,\n33788=>18012,\n33790=>18013,\n33791=>18014,\n33792=>18015,\n33794=>18016,\n33797=>18017,\n33800=>18018,\n33801=>18019,\n33808=>18020,\n33810=>18021,\n33811=>18022,\n33812=>18023,\n33813=>18024,\n33814=>18025,\n33815=>18026,\n33817=>18027,\n33818=>18028,\n33819=>18029,\n33822=>18030,\n33823=>18031,\n33824=>18032,\n33825=>18033,\n33826=>18034,\n33827=>18035,\n33833=>18036,\n33834=>18037,\n33835=>18038,\n33837=>18039,\n33838=>18040,\n33839=>18041,\n33840=>18042,\n33842=>18043,\n33843=>18044,\n33844=>18045,\n33846=>18046,\n33847=>18047,\n33849=>18048,\n33850=>18049,\n33851=>18050,\n33854=>18051,\n33855=>18052,\n33856=>18053,\n33857=>18054,\n33858=>18055,\n33859=>18056,\n33860=>18057,\n33861=>18058,\n33863=>18059,\n33864=>18060,\n33866=>18061,\n33867=>18062,\n33868=>18063,\n33869=>18064,\n33870=>18065,\n33871=>18066,\n33872=>18067,\n33875=>18068,\n33876=>18069,\n33877=>18070,\n33878=>18071,\n33880=>18072,\n33885=>18073,\n33886=>18074,\n33887=>18075,\n33888=>18076,\n33890=>18077,\n33893=>18078,\n33895=>18079,\n33896=>18080,\n33898=>18081,\n33902=>18082,\n33904=>18083,\n33906=>18084,\n33908=>18085,\n33913=>18086,\n33915=>18087,\n33916=>18088,\n33917=>18089,\n33918=>18090,\n33919=>18091,\n33920=>18092,\n33921=>18093,\n33923=>18094,\n33924=>18095,\n33925=>18096,\n33926=>18097,\n33930=>18098,\n33933=>18099,\n33935=>18100,\n33936=>18101,\n33937=>18102,\n33938=>18103,\n33941=>18104,\n33942=>18105,\n33944=>18106,\n33946=>18107,\n33947=>18108,\n33949=>18109,\n33950=>18110,\n33951=>18111,\n33952=>18112,\n33954=>18113,\n33955=>18114,\n33956=>18115,\n33957=>18116,\n33958=>18117,\n33959=>18118,\n33960=>18119,\n33961=>18120,\n33962=>18121,\n33963=>18122,\n33964=>18123,\n33965=>18124,\n33966=>18125,\n33968=>18126,\n33969=>18127,\n33971=>18128,\n33973=>18129,\n33974=>18130,\n33975=>18131,\n33979=>18132,\n33982=>18133,\n33986=>18134,\n33987=>18135,\n33989=>18136,\n33990=>18137,\n33991=>18138,\n33992=>18139,\n33996=>18140,\n33998=>18141,\n33999=>18142,\n34002=>18143,\n34004=>18144,\n34005=>18145,\n34007=>18146,\n34008=>18147,\n34009=>18148,\n34010=>18149,\n34011=>18150,\n34012=>18151,\n34014=>18152,\n34017=>18153,\n34018=>18154,\n34020=>18155,\n34023=>18156,\n34024=>18157,\n34025=>18158,\n34026=>18159,\n34027=>18160,\n34029=>18161,\n34033=>18162,\n34034=>18163,\n34035=>18164,\n34036=>18165,\n34037=>18166,\n34038=>18167,\n34039=>18168,\n34040=>18169,\n34041=>18170,\n34042=>18171,\n34043=>18172,\n34046=>18173,\n34048=>18174,\n34049=>18175,\n34050=>18176,\n34051=>18177,\n34052=>18178,\n34053=>18179,\n34054=>18180,\n34055=>18181,\n34056=>18182,\n34057=>18183,\n34058=>18184,\n34059=>18185,\n34061=>18186,\n34062=>18187,\n34063=>18188,\n34064=>18189,\n34066=>18190,\n34069=>18191,\n34070=>18192,\n34072=>18193,\n34073=>18194,\n34075=>18195,\n34076=>18196,\n34077=>18197,\n34080=>18198,\n34082=>18199,\n34084=>18200,\n34085=>18201,\n34087=>18202,\n34088=>18203,\n34089=>18204,\n34090=>18205,\n34094=>18206,\n34095=>18207,\n34096=>18208,\n34097=>18209,\n34098=>18210,\n34099=>18211,\n34100=>18212,\n34101=>18213,\n34102=>18214,\n34110=>18215,\n34111=>18216,\n34112=>18217,\n34114=>18218,\n34116=>18219,\n34117=>18220,\n34119=>18221,\n34123=>18222,\n34124=>18223,\n34125=>18224,\n34127=>18225,\n34128=>18226,\n34129=>18227,\n34132=>18228,\n34135=>18229,\n34138=>18230,\n34139=>18231,\n34140=>18232,\n34141=>18233,\n34143=>18234,\n34144=>18235,\n34145=>18236,\n34147=>18237,\n34149=>18238,\n34150=>18239,\n34151=>18240,\n34155=>18241,\n34156=>18242,\n34158=>18243,\n34159=>18244,\n34160=>18245,\n34161=>18246,\n34163=>18247,\n34165=>18248,\n34166=>18249,\n34168=>18250,\n34172=>18251,\n34173=>18252,\n34175=>18253,\n34176=>18254,\n34177=>18255,\n34178=>18256,\n34179=>18257,\n34182=>18258,\n34185=>18259,\n34187=>18260,\n34189=>18261,\n34190=>18262,\n34192=>18263,\n34194=>18264,\n34195=>18265,\n34197=>18266,\n34198=>18267,\n34199=>18268,\n34200=>18269,\n34201=>18270,\n34202=>18271,\n34205=>18272,\n34206=>18273,\n34208=>18274,\n34209=>18275,\n34210=>18276,\n34211=>18277,\n34213=>18278,\n34215=>18279,\n34219=>18280,\n34220=>18281,\n34221=>18282,\n34225=>18283,\n34226=>18284,\n34227=>18285,\n34228=>18286,\n34229=>18287,\n34230=>18288,\n34232=>18289,\n34235=>18290,\n34236=>18291,\n34237=>18292,\n34238=>18293,\n34239=>18294,\n34240=>18295,\n34242=>18296,\n34243=>18297,\n34244=>18298,\n34245=>18299,\n34246=>18300,\n34247=>18301,\n34248=>18302,\n34250=>18303,\n34251=>18304,\n34252=>18305,\n34257=>18306,\n34258=>18307,\n34260=>18308,\n34262=>18309,\n34263=>18310,\n34264=>18311,\n34265=>18312,\n34266=>18313,\n34267=>18314,\n34270=>18315,\n34271=>18316,\n34272=>18317,\n34273=>18318,\n34274=>18319,\n34275=>18320,\n34278=>18321,\n34279=>18322,\n34280=>18323,\n34283=>18324,\n34284=>18325,\n34285=>18326,\n34286=>18327,\n34287=>18328,\n34288=>18329,\n34289=>18330,\n34290=>18331,\n34291=>18332,\n34293=>18333,\n34295=>18334,\n34296=>18335,\n34300=>18336,\n34301=>18337,\n34302=>18338,\n34304=>18339,\n34305=>18340,\n34306=>18341,\n34307=>18342,\n34312=>18343,\n34313=>18344,\n34314=>18345,\n34316=>18346,\n34317=>18347,\n34318=>18348,\n34319=>18349,\n34320=>18350,\n34322=>18351,\n34323=>18352,\n34324=>18353,\n34325=>18354,\n34327=>18355,\n34328=>18356,\n34329=>18357,\n34331=>18358,\n34332=>18359,\n34333=>18360,\n34335=>18361,\n34336=>18362,\n34337=>18363,\n34339=>18364,\n34340=>18365,\n34341=>18366,\n34342=>18367,\n34344=>18368,\n34346=>18369,\n34347=>18370,\n34348=>18371,\n34350=>18372,\n34351=>18373,\n34352=>18374,\n34353=>18375,\n34354=>18376,\n34355=>18377,\n34356=>18378,\n34357=>18379,\n34358=>18380,\n34359=>18381,\n34361=>18382,\n34363=>18383,\n34365=>18384,\n34366=>18385,\n34368=>18386,\n34369=>18387,\n34370=>18388,\n34371=>18389,\n34372=>18390,\n34373=>18391,\n34374=>18392,\n34375=>18393,\n34376=>18394,\n34377=>18395,\n34378=>18396,\n34379=>18397,\n34380=>18398,\n34386=>18399,\n34387=>18400,\n34390=>18401,\n34391=>18402,\n34392=>18403,\n34393=>18404,\n34395=>18405,\n34397=>18406,\n34400=>18407,\n34401=>18408,\n34403=>18409,\n34404=>18410,\n34405=>18411,\n34406=>18412,\n34408=>18413,\n34409=>18414,\n34410=>18415,\n34413=>18416,\n34415=>18417,\n34416=>18418,\n34418=>18419,\n34419=>18420,\n34420=>18421,\n34421=>18422,\n34422=>18423,\n34423=>18424,\n34424=>18425,\n34435=>18426,\n34436=>18427,\n34437=>18428,\n34438=>18429,\n34439=>18430,\n34440=>18431,\n34441=>18432,\n34446=>18433,\n34447=>18434,\n34448=>18435,\n34449=>18436,\n34450=>18437,\n34452=>18438,\n34454=>18439,\n34455=>18440,\n34456=>18441,\n34457=>18442,\n34458=>18443,\n34459=>18444,\n34462=>18445,\n34463=>18446,\n34464=>18447,\n34465=>18448,\n34466=>18449,\n34469=>18450,\n34470=>18451,\n34475=>18452,\n34477=>18453,\n34478=>18454,\n34482=>18455,\n34483=>18456,\n34487=>18457,\n34488=>18458,\n34489=>18459,\n34491=>18460,\n34492=>18461,\n34493=>18462,\n34494=>18463,\n34495=>18464,\n34497=>18465,\n34498=>18466,\n34499=>18467,\n34501=>18468,\n34504=>18469,\n34508=>18470,\n34509=>18471,\n34514=>18472,\n34515=>18473,\n34517=>18474,\n34518=>18475,\n34519=>18476,\n34522=>18477,\n34524=>18478,\n34525=>18479,\n34528=>18480,\n34529=>18481,\n34530=>18482,\n34531=>18483,\n34533=>18484,\n34534=>18485,\n34535=>18486,\n34536=>18487,\n34538=>18488,\n34539=>18489,\n34540=>18490,\n34543=>18491,\n34549=>18492,\n34550=>18493,\n34551=>18494,\n34555=>18495,\n34556=>18496,\n34557=>18497,\n34559=>18498,\n34561=>18499,\n34564=>18500,\n34565=>18501,\n34571=>18502,\n34572=>18503,\n34574=>18504,\n34575=>18505,\n34576=>18506,\n34577=>18507,\n34580=>18508,\n34582=>18509,\n34585=>18510,\n34587=>18511,\n34589=>18512,\n34591=>18513,\n34592=>18514,\n34596=>18515,\n34598=>18516,\n34599=>18517,\n34600=>18518,\n34602=>18519,\n34603=>18520,\n34604=>18521,\n34605=>18522,\n34607=>18523,\n34608=>18524,\n34610=>18525,\n34611=>18526,\n34613=>18527,\n34614=>18528,\n34616=>18529,\n34617=>18530,\n34618=>18531,\n34620=>18532,\n34621=>18533,\n34624=>18534,\n34625=>18535,\n34626=>18536,\n34627=>18537,\n34628=>18538,\n34629=>18539,\n34630=>18540,\n34634=>18541,\n34635=>18542,\n34637=>18543,\n34639=>18544,\n34640=>18545,\n34641=>18546,\n34642=>18547,\n34644=>18548,\n34646=>18549,\n34648=>18550,\n34650=>18551,\n34651=>18552,\n34652=>18553,\n34653=>18554,\n34654=>18555,\n34655=>18556,\n34657=>18557,\n34658=>18558,\n34663=>18559,\n34664=>18560,\n34665=>18561,\n34666=>18562,\n34667=>18563,\n34668=>18564,\n34669=>18565,\n34671=>18566,\n34673=>18567,\n34674=>18568,\n34675=>18569,\n34677=>18570,\n34679=>18571,\n34681=>18572,\n34682=>18573,\n34687=>18574,\n34688=>18575,\n34689=>18576,\n34694=>18577,\n34695=>18578,\n34697=>18579,\n34698=>18580,\n34700=>18581,\n34702=>18582,\n34703=>18583,\n34704=>18584,\n34705=>18585,\n34706=>18586,\n34708=>18587,\n34709=>18588,\n34710=>18589,\n34712=>18590,\n34713=>18591,\n34714=>18592,\n34715=>18593,\n34716=>18594,\n34717=>18595,\n34720=>18596,\n34721=>18597,\n34723=>18598,\n34724=>18599,\n34725=>18600,\n34726=>18601,\n34727=>18602,\n34729=>18603,\n34730=>18604,\n34734=>18605,\n34736=>18606,\n34737=>18607,\n34738=>18608,\n34740=>18609,\n34742=>18610,\n34743=>18611,\n34744=>18612,\n34745=>18613,\n34748=>18614,\n34750=>18615,\n34751=>18616,\n34753=>18617,\n34754=>18618,\n34755=>18619,\n34757=>18620,\n34759=>18621,\n34761=>18622,\n34764=>18623,\n34765=>18624,\n34767=>18625,\n34768=>18626,\n34772=>18627,\n34773=>18628,\n34774=>18629,\n34775=>18630,\n34776=>18631,\n34777=>18632,\n34778=>18633,\n34780=>18634,\n34781=>18635,\n34782=>18636,\n34783=>18637,\n34785=>18638,\n34786=>18639,\n34788=>18640,\n34790=>18641,\n34791=>18642,\n34792=>18643,\n34793=>18644,\n34795=>18645,\n34797=>18646,\n34800=>18647,\n34801=>18648,\n34803=>18649,\n34804=>18650,\n34805=>18651,\n34807=>18652,\n34808=>18653,\n34810=>18654,\n34812=>18655,\n34813=>18656,\n34815=>18657,\n34816=>18658,\n34817=>18659,\n34818=>18660,\n34820=>18661,\n34823=>18662,\n34824=>18663,\n34825=>18664,\n34827=>18665,\n34828=>18666,\n34829=>18667,\n34830=>18668,\n34831=>18669,\n34834=>18670,\n34836=>18671,\n34839=>18672,\n34840=>18673,\n34841=>18674,\n34842=>18675,\n34844=>18676,\n34845=>18677,\n34846=>18678,\n34848=>18679,\n34852=>18680,\n34853=>18681,\n34854=>18682,\n34855=>18683,\n34856=>18684,\n34857=>18685,\n34858=>18686,\n34859=>18687,\n34860=>18688,\n34861=>18689,\n34862=>18690,\n34863=>18691,\n34864=>18692,\n34867=>18693,\n34868=>18694,\n34869=>18695,\n34871=>18696,\n34872=>18697,\n34874=>18698,\n34877=>18699,\n34878=>18700,\n34879=>18701,\n34881=>18702,\n34882=>18703,\n34883=>18704,\n34887=>18705,\n34888=>18706,\n34889=>18707,\n34891=>18708,\n34894=>18709,\n34895=>18710,\n34896=>18711,\n34897=>18712,\n34898=>18713,\n34901=>18714,\n34902=>18715,\n34904=>18716,\n34906=>18717,\n34908=>18718,\n34910=>18719,\n34911=>18720,\n34912=>18721,\n34918=>18722,\n34919=>18723,\n34922=>18724,\n34925=>18725,\n34927=>18726,\n34929=>18727,\n34931=>18728,\n34932=>18729,\n34933=>18730,\n34934=>18731,\n34936=>18732,\n34938=>18733,\n34939=>18734,\n34940=>18735,\n34944=>18736,\n34947=>18737,\n34950=>18738,\n34951=>18739,\n34953=>18740,\n34954=>18741,\n34956=>18742,\n34958=>18743,\n34959=>18744,\n34960=>18745,\n34961=>18746,\n34963=>18747,\n34964=>18748,\n34965=>18749,\n34967=>18750,\n34968=>18751,\n34969=>18752,\n34970=>18753,\n34971=>18754,\n34973=>18755,\n34974=>18756,\n34975=>18757,\n34976=>18758,\n34977=>18759,\n34979=>18760,\n34981=>18761,\n34982=>18762,\n34983=>18763,\n34984=>18764,\n34985=>18765,\n34986=>18766,\n34988=>18767,\n34990=>18768,\n34991=>18769,\n34992=>18770,\n34994=>18771,\n34995=>18772,\n34996=>18773,\n34997=>18774,\n34998=>18775,\n35000=>18776,\n35001=>18777,\n35002=>18778,\n35003=>18779,\n35005=>18780,\n35006=>18781,\n35007=>18782,\n35008=>18783,\n35011=>18784,\n35012=>18785,\n35015=>18786,\n35016=>18787,\n35019=>18788,\n35020=>18789,\n35021=>18790,\n35024=>18791,\n35025=>18792,\n35027=>18793,\n35030=>18794,\n35031=>18795,\n35034=>18796,\n35035=>18797,\n35038=>18798,\n35040=>18799,\n35041=>18800,\n35046=>18801,\n35047=>18802,\n35049=>18803,\n35050=>18804,\n35051=>18805,\n35052=>18806,\n35053=>18807,\n35054=>18808,\n35055=>18809,\n35058=>18810,\n35061=>18811,\n35062=>18812,\n35063=>18813,\n35066=>18814,\n35067=>18815,\n35071=>18816,\n35072=>18817,\n35073=>18818,\n35075=>18819,\n35076=>18820,\n35077=>18821,\n35078=>18822,\n35080=>18823,\n35081=>18824,\n35083=>18825,\n35084=>18826,\n35085=>18827,\n35086=>18828,\n35087=>18829,\n35089=>18830,\n35092=>18831,\n35093=>18832,\n35094=>18833,\n35095=>18834,\n35096=>18835,\n35100=>18836,\n35101=>18837,\n35102=>18838,\n35103=>18839,\n35104=>18840,\n35106=>18841,\n35107=>18842,\n35108=>18843,\n35110=>18844,\n35111=>18845,\n35112=>18846,\n35113=>18847,\n35116=>18848,\n35117=>18849,\n35118=>18850,\n35119=>18851,\n35121=>18852,\n35125=>18853,\n35127=>18854,\n35129=>18855,\n35130=>18856,\n35132=>18857,\n35133=>18858,\n35134=>18859,\n35135=>18860,\n35136=>18861,\n35138=>18862,\n35139=>18863,\n35141=>18864,\n35142=>18865,\n35144=>18866,\n35145=>18867,\n35146=>18868,\n35147=>18869,\n35148=>18870,\n35149=>18871,\n35150=>18872,\n35151=>18873,\n35152=>18874,\n35153=>18875,\n35154=>18876,\n35155=>18877,\n35156=>18878,\n35157=>18879,\n35159=>18880,\n35160=>18881,\n35161=>18882,\n35162=>18883,\n35163=>18884,\n35164=>18885,\n35169=>18886,\n35170=>18887,\n35171=>18888,\n35173=>18889,\n35175=>18890,\n35176=>18891,\n35177=>18892,\n35179=>18893,\n35181=>18894,\n35182=>18895,\n35184=>18896,\n35185=>18897,\n35187=>18898,\n35188=>18899,\n35189=>18900,\n35190=>18901,\n35191=>18902,\n35192=>18903,\n35193=>18904,\n35194=>18905,\n35196=>18906,\n35197=>18907,\n12177=>18908,\n35198=>18908,\n35200=>18909,\n35202=>18910,\n35204=>18911,\n35205=>18912,\n35207=>18913,\n35208=>18914,\n35209=>18915,\n35210=>18916,\n35212=>18917,\n35213=>18918,\n35214=>18919,\n35216=>18920,\n35217=>18921,\n35218=>18922,\n35220=>18923,\n35221=>18924,\n35223=>18925,\n35225=>18926,\n35226=>18927,\n35227=>18928,\n35228=>18929,\n35229=>18930,\n35230=>18931,\n35231=>18932,\n35232=>18933,\n35234=>18934,\n35235=>18935,\n35236=>18936,\n35237=>18937,\n35239=>18938,\n35240=>18939,\n35241=>18940,\n35243=>18941,\n35245=>18942,\n35246=>18943,\n35248=>18944,\n35249=>18945,\n35251=>18946,\n35252=>18947,\n35253=>18948,\n35254=>18949,\n35256=>18950,\n35257=>18951,\n35259=>18952,\n35260=>18953,\n35262=>18954,\n35267=>18955,\n35277=>18956,\n35283=>18957,\n35284=>18958,\n35285=>18959,\n35287=>18960,\n35288=>18961,\n35289=>18962,\n35291=>18963,\n35293=>18964,\n35295=>18965,\n35296=>18966,\n35297=>18967,\n35298=>18968,\n35300=>18969,\n35303=>18970,\n35304=>18971,\n35305=>18972,\n35306=>18973,\n35308=>18974,\n35309=>18975,\n35310=>18976,\n35312=>18977,\n35313=>18978,\n35314=>18979,\n35317=>18980,\n35319=>18981,\n35321=>18982,\n35322=>18983,\n35323=>18984,\n35324=>18985,\n35325=>18986,\n35326=>18987,\n35327=>18988,\n35332=>18989,\n35333=>18990,\n35334=>18991,\n35337=>18992,\n35339=>18993,\n35341=>18994,\n35343=>18995,\n35345=>18996,\n35346=>18997,\n35348=>18998,\n35351=>18999,\n35353=>19000,\n35354=>19001,\n35356=>19002,\n35358=>19003,\n35360=>19004,\n35361=>19005,\n35362=>19006,\n35364=>19007,\n35366=>19008,\n35367=>19009,\n35368=>19010,\n35369=>19011,\n35371=>19012,\n35372=>19013,\n35374=>19014,\n35375=>19015,\n35376=>19016,\n35378=>19017,\n35379=>19018,\n35381=>19019,\n35383=>19020,\n35384=>19021,\n35385=>19022,\n35387=>19023,\n35388=>19024,\n35389=>19025,\n35391=>19026,\n35392=>19027,\n35394=>19028,\n35395=>19029,\n35396=>19030,\n35397=>19031,\n35399=>19032,\n35401=>19033,\n35402=>19034,\n35403=>19035,\n35404=>19036,\n35405=>19037,\n35407=>19038,\n35409=>19039,\n35411=>19040,\n35414=>19041,\n35415=>19042,\n35417=>19043,\n35418=>19044,\n35420=>19045,\n35421=>19046,\n35423=>19047,\n35424=>19048,\n35428=>19049,\n35429=>19050,\n35431=>19051,\n35432=>19052,\n35434=>19053,\n35439=>19054,\n35444=>19055,\n35446=>19056,\n35447=>19057,\n35448=>19058,\n35450=>19059,\n35451=>19060,\n35453=>19061,\n35454=>19062,\n35456=>19063,\n35457=>19064,\n35458=>19065,\n35459=>19066,\n35464=>19067,\n35467=>19068,\n35468=>19069,\n35470=>19070,\n35471=>19071,\n35472=>19072,\n35476=>19073,\n35478=>19074,\n35479=>19075,\n35481=>19076,\n35483=>19077,\n35484=>19078,\n35485=>19079,\n35487=>19080,\n35490=>19081,\n35495=>19082,\n35497=>19083,\n35498=>19084,\n35499=>19085,\n35501=>19086,\n35502=>19087,\n35503=>19088,\n35505=>19089,\n35507=>19090,\n35508=>19091,\n35509=>19092,\n35511=>19093,\n35512=>19094,\n35514=>19095,\n35515=>19096,\n35517=>19097,\n35518=>19098,\n35520=>19099,\n35521=>19100,\n35523=>19101,\n35525=>19102,\n35526=>19103,\n35528=>19104,\n35530=>19105,\n35532=>19106,\n35534=>19107,\n35536=>19108,\n35539=>19109,\n35540=>19110,\n35541=>19111,\n35544=>19112,\n35545=>19113,\n35546=>19114,\n35549=>19115,\n35551=>19116,\n35552=>19117,\n35553=>19118,\n35555=>19119,\n35557=>19120,\n35560=>19121,\n35561=>19122,\n35562=>19123,\n35564=>19124,\n35567=>19125,\n35568=>19126,\n35570=>19127,\n35572=>19128,\n35573=>19129,\n35577=>19130,\n35579=>19131,\n35581=>19132,\n35583=>19133,\n35587=>19134,\n35590=>19135,\n35592=>19136,\n35593=>19137,\n35595=>19138,\n35596=>19139,\n35597=>19140,\n35599=>19141,\n35601=>19142,\n35602=>19143,\n35603=>19144,\n35605=>19145,\n35608=>19146,\n35612=>19147,\n35614=>19148,\n35615=>19149,\n35616=>19150,\n35618=>19151,\n35619=>19152,\n35620=>19153,\n35621=>19154,\n35623=>19155,\n35625=>19156,\n35626=>19157,\n35630=>19158,\n35631=>19159,\n35632=>19160,\n35633=>19161,\n35634=>19162,\n35636=>19163,\n35637=>19164,\n35638=>19165,\n35639=>19166,\n35640=>19167,\n35642=>19168,\n35643=>19169,\n35644=>19170,\n35645=>19171,\n35647=>19172,\n35648=>19173,\n35649=>19174,\n35650=>19175,\n35651=>19176,\n35652=>19177,\n35653=>19178,\n35654=>19179,\n35655=>19180,\n35656=>19181,\n35658=>19182,\n35659=>19183,\n35660=>19184,\n35661=>19185,\n35664=>19186,\n35665=>19187,\n35666=>19188,\n35667=>19189,\n35668=>19190,\n35669=>19191,\n35671=>19192,\n35675=>19193,\n35677=>19194,\n35678=>19195,\n35679=>19196,\n35680=>19197,\n35681=>19198,\n35682=>19199,\n35683=>19200,\n35684=>19201,\n35685=>19202,\n35687=>19203,\n35688=>19204,\n35689=>19205,\n35690=>19206,\n35693=>19207,\n35694=>19208,\n35697=>19209,\n35698=>19210,\n35699=>19211,\n35701=>19212,\n35702=>19213,\n35704=>19214,\n35705=>19215,\n35706=>19216,\n35707=>19217,\n35708=>19218,\n35710=>19219,\n35711=>19220,\n35713=>19221,\n35714=>19222,\n35715=>19223,\n35716=>19224,\n35717=>19225,\n35718=>19226,\n35719=>19227,\n35720=>19228,\n35721=>19229,\n35723=>19230,\n35724=>19231,\n35725=>19232,\n35727=>19233,\n35728=>19234,\n35729=>19235,\n35732=>19236,\n35735=>19237,\n35736=>19238,\n35737=>19239,\n35738=>19240,\n35739=>19241,\n35741=>19242,\n35743=>19243,\n35756=>19244,\n35761=>19245,\n35771=>19246,\n35783=>19247,\n35792=>19248,\n35818=>19249,\n35849=>19250,\n35870=>19251,\n35896=>19252,\n35897=>19253,\n35898=>19254,\n35899=>19255,\n35900=>19256,\n35901=>19257,\n35902=>19258,\n35903=>19259,\n35904=>19260,\n35906=>19261,\n35907=>19262,\n35908=>19263,\n35909=>19264,\n35914=>19265,\n35915=>19266,\n35917=>19267,\n35918=>19268,\n35919=>19269,\n35921=>19270,\n35922=>19271,\n35923=>19272,\n35924=>19273,\n35926=>19274,\n35927=>19275,\n35928=>19276,\n35929=>19277,\n35931=>19278,\n35932=>19279,\n35933=>19280,\n35934=>19281,\n35935=>19282,\n35936=>19283,\n35939=>19284,\n35940=>19285,\n35941=>19286,\n35942=>19287,\n35943=>19288,\n35944=>19289,\n35945=>19290,\n35948=>19291,\n35949=>19292,\n35950=>19293,\n35951=>19294,\n35952=>19295,\n35953=>19296,\n35954=>19297,\n35956=>19298,\n35957=>19299,\n35958=>19300,\n35959=>19301,\n35963=>19302,\n35964=>19303,\n35965=>19304,\n35966=>19305,\n35967=>19306,\n35968=>19307,\n35969=>19308,\n35971=>19309,\n35972=>19310,\n35974=>19311,\n35975=>19312,\n35976=>19313,\n35979=>19314,\n35981=>19315,\n35982=>19316,\n35983=>19317,\n35984=>19318,\n35985=>19319,\n35986=>19320,\n35987=>19321,\n35989=>19322,\n35990=>19323,\n35991=>19324,\n35993=>19325,\n35994=>19326,\n35995=>19327,\n35996=>19328,\n35999=>19329,\n36003=>19330,\n36004=>19331,\n36005=>19332,\n36006=>19333,\n36013=>19334,\n36014=>19335,\n36017=>19336,\n36021=>19337,\n36025=>19338,\n36030=>19339,\n36038=>19340,\n36041=>19341,\n36043=>19342,\n36044=>19343,\n36045=>19344,\n36046=>19345,\n36047=>19346,\n36048=>19347,\n36052=>19348,\n36054=>19349,\n36055=>19350,\n36056=>19351,\n36057=>19352,\n36059=>19353,\n36061=>19354,\n36063=>19355,\n36069=>19356,\n36072=>19357,\n36073=>19358,\n36078=>19359,\n36079=>19360,\n36080=>19361,\n36081=>19362,\n36082=>19363,\n36083=>19364,\n36085=>19365,\n36086=>19366,\n36087=>19367,\n36088=>19368,\n36089=>19369,\n36095=>19370,\n36096=>19371,\n36097=>19372,\n36098=>19373,\n36099=>19374,\n36102=>19375,\n36103=>19376,\n36105=>19377,\n36108=>19378,\n36110=>19379,\n36113=>19380,\n36114=>19381,\n36115=>19382,\n36116=>19383,\n36117=>19384,\n36119=>19385,\n36120=>19386,\n36121=>19387,\n36122=>19388,\n36128=>19389,\n36177=>19390,\n36178=>19391,\n36183=>19392,\n36191=>19393,\n36197=>19394,\n36200=>19395,\n36201=>19396,\n36202=>19397,\n36204=>19398,\n36206=>19399,\n36207=>19400,\n36209=>19401,\n36210=>19402,\n36216=>19403,\n36217=>19404,\n36218=>19405,\n36219=>19406,\n36220=>19407,\n36221=>19408,\n36222=>19409,\n36223=>19410,\n36224=>19411,\n36226=>19412,\n36227=>19413,\n36230=>19414,\n36231=>19415,\n36232=>19416,\n36233=>19417,\n36236=>19418,\n36237=>19419,\n36238=>19420,\n36239=>19421,\n36240=>19422,\n36242=>19423,\n36243=>19424,\n36246=>19425,\n36247=>19426,\n36248=>19427,\n36250=>19428,\n36251=>19429,\n36252=>19430,\n36253=>19431,\n36254=>19432,\n36256=>19433,\n36257=>19434,\n36258=>19435,\n36260=>19436,\n36261=>19437,\n36262=>19438,\n36263=>19439,\n36265=>19440,\n36266=>19441,\n36267=>19442,\n36268=>19443,\n36269=>19444,\n36270=>19445,\n36271=>19446,\n36272=>19447,\n36278=>19448,\n36279=>19449,\n36281=>19450,\n36283=>19451,\n36285=>19452,\n36288=>19453,\n36289=>19454,\n36290=>19455,\n36293=>19456,\n36295=>19457,\n36296=>19458,\n36297=>19459,\n36298=>19460,\n36301=>19461,\n36304=>19462,\n36306=>19463,\n36307=>19464,\n36308=>19465,\n36309=>19466,\n36312=>19467,\n36313=>19468,\n36316=>19469,\n36320=>19470,\n36321=>19471,\n36322=>19472,\n36325=>19473,\n36326=>19474,\n36327=>19475,\n36329=>19476,\n36333=>19477,\n36334=>19478,\n36336=>19479,\n36337=>19480,\n36338=>19481,\n36340=>19482,\n36342=>19483,\n36348=>19484,\n36350=>19485,\n36351=>19486,\n36352=>19487,\n36353=>19488,\n36354=>19489,\n36355=>19490,\n36356=>19491,\n36358=>19492,\n36359=>19493,\n36360=>19494,\n36363=>19495,\n36365=>19496,\n36366=>19497,\n36369=>19498,\n36370=>19499,\n36371=>19500,\n36373=>19501,\n36374=>19502,\n36375=>19503,\n36376=>19504,\n36377=>19505,\n36378=>19506,\n36379=>19507,\n36380=>19508,\n36384=>19509,\n36385=>19510,\n36388=>19511,\n36389=>19512,\n36390=>19513,\n36391=>19514,\n36392=>19515,\n36395=>19516,\n36397=>19517,\n36400=>19518,\n36402=>19519,\n36403=>19520,\n36406=>19521,\n36407=>19522,\n36408=>19523,\n36411=>19524,\n36412=>19525,\n36414=>19526,\n36415=>19527,\n36419=>19528,\n36421=>19529,\n36422=>19530,\n36429=>19531,\n36430=>19532,\n36431=>19533,\n36432=>19534,\n36435=>19535,\n36436=>19536,\n36438=>19537,\n36439=>19538,\n36440=>19539,\n36442=>19540,\n36443=>19541,\n36444=>19542,\n36445=>19543,\n36446=>19544,\n36447=>19545,\n36448=>19546,\n36449=>19547,\n36450=>19548,\n36452=>19549,\n36453=>19550,\n36455=>19551,\n36456=>19552,\n36458=>19553,\n36459=>19554,\n36462=>19555,\n36465=>19556,\n36467=>19557,\n36469=>19558,\n36471=>19559,\n36472=>19560,\n36473=>19561,\n36475=>19562,\n36477=>19563,\n36478=>19564,\n36480=>19565,\n36482=>19566,\n36483=>19567,\n36484=>19568,\n36486=>19569,\n36488=>19570,\n36492=>19571,\n36494=>19572,\n36501=>19573,\n36502=>19574,\n36503=>19575,\n36504=>19576,\n36505=>19577,\n36507=>19578,\n36509=>19579,\n36511=>19580,\n36512=>19581,\n36514=>19582,\n36515=>19583,\n36516=>19584,\n36519=>19585,\n36520=>19586,\n36521=>19587,\n36525=>19588,\n36526=>19589,\n36528=>19590,\n36529=>19591,\n36531=>19592,\n36532=>19593,\n36533=>19594,\n36534=>19595,\n36535=>19596,\n36536=>19597,\n36537=>19598,\n36539=>19599,\n36540=>19600,\n36541=>19601,\n36542=>19602,\n36543=>19603,\n36545=>19604,\n36546=>19605,\n36547=>19606,\n36548=>19607,\n36549=>19608,\n36550=>19609,\n36551=>19610,\n36552=>19611,\n36553=>19612,\n36559=>19613,\n36560=>19614,\n36561=>19615,\n36563=>19616,\n36565=>19617,\n36566=>19618,\n36567=>19619,\n36568=>19620,\n36569=>19621,\n36570=>19622,\n36572=>19623,\n36573=>19624,\n36574=>19625,\n36576=>19626,\n36577=>19627,\n36578=>19628,\n36579=>19629,\n36581=>19630,\n36582=>19631,\n36583=>19632,\n36584=>19633,\n36585=>19634,\n36586=>19635,\n36588=>19636,\n36589=>19637,\n36590=>19638,\n36591=>19639,\n36592=>19640,\n36593=>19641,\n36595=>19642,\n36596=>19643,\n36597=>19644,\n36598=>19645,\n36599=>19646,\n36605=>19647,\n36607=>19648,\n36608=>19649,\n36609=>19650,\n36610=>19651,\n36612=>19652,\n36614=>19653,\n36616=>19654,\n36619=>19655,\n36620=>19656,\n36621=>19657,\n36622=>19658,\n36623=>19659,\n36624=>19660,\n36625=>19661,\n36627=>19662,\n36630=>19663,\n36631=>19664,\n36632=>19665,\n36633=>19666,\n36634=>19667,\n36640=>19668,\n36641=>19669,\n36642=>19670,\n36643=>19671,\n36644=>19672,\n36647=>19673,\n36648=>19674,\n36651=>19675,\n36652=>19676,\n36653=>19677,\n36654=>19678,\n36656=>19679,\n36657=>19680,\n36658=>19681,\n36660=>19682,\n36661=>19683,\n36662=>19684,\n36663=>19685,\n36665=>19686,\n36666=>19687,\n36668=>19688,\n36669=>19689,\n36672=>19690,\n36673=>19691,\n36675=>19692,\n36679=>19693,\n36680=>19694,\n36682=>19695,\n36683=>19696,\n36684=>19697,\n36687=>19698,\n36688=>19699,\n36689=>19700,\n36690=>19701,\n36691=>19702,\n36693=>19703,\n36694=>19704,\n36695=>19705,\n36696=>19706,\n36697=>19707,\n36698=>19708,\n36699=>19709,\n36700=>19710,\n36701=>19711,\n36702=>19712,\n36704=>19713,\n36707=>19714,\n36709=>19715,\n36714=>19716,\n36736=>19717,\n36748=>19718,\n36754=>19719,\n36765=>19720,\n36768=>19721,\n36769=>19722,\n36770=>19723,\n36772=>19724,\n36773=>19725,\n36775=>19726,\n36778=>19727,\n36780=>19728,\n36787=>19729,\n36788=>19730,\n12193=>19731,\n36789=>19731,\n36791=>19732,\n36792=>19733,\n36794=>19734,\n36795=>19735,\n36796=>19736,\n36799=>19737,\n36800=>19738,\n36803=>19739,\n36806=>19740,\n36809=>19741,\n36810=>19742,\n36811=>19743,\n36812=>19744,\n36813=>19745,\n36815=>19746,\n36818=>19747,\n36822=>19748,\n36823=>19749,\n36826=>19750,\n36832=>19751,\n36833=>19752,\n36835=>19753,\n36839=>19754,\n36844=>19755,\n36847=>19756,\n36849=>19757,\n36850=>19758,\n36853=>19759,\n36854=>19760,\n36858=>19761,\n36859=>19762,\n36860=>19763,\n36862=>19764,\n36863=>19765,\n36871=>19766,\n36872=>19767,\n36876=>19768,\n36878=>19769,\n36883=>19770,\n36888=>19771,\n36892=>19772,\n36900=>19773,\n36901=>19774,\n36903=>19775,\n36904=>19776,\n36905=>19777,\n36906=>19778,\n36907=>19779,\n36908=>19780,\n36912=>19781,\n36913=>19782,\n36915=>19783,\n36916=>19784,\n36919=>19785,\n36921=>19786,\n36922=>19787,\n36925=>19788,\n36927=>19789,\n36928=>19790,\n36931=>19791,\n36933=>19792,\n36934=>19793,\n36936=>19794,\n36937=>19795,\n36938=>19796,\n36940=>19797,\n36950=>19798,\n36953=>19799,\n36954=>19800,\n36957=>19801,\n36959=>19802,\n36961=>19803,\n36964=>19804,\n36966=>19805,\n36967=>19806,\n36970=>19807,\n36971=>19808,\n36972=>19809,\n36975=>19810,\n36976=>19811,\n36977=>19812,\n36979=>19813,\n36982=>19814,\n36985=>19815,\n36987=>19816,\n36990=>19817,\n36997=>19818,\n36998=>19819,\n37001=>19820,\n37004=>19821,\n37005=>19822,\n37006=>19823,\n37010=>19824,\n37012=>19825,\n37014=>19826,\n37016=>19827,\n37018=>19828,\n37020=>19829,\n37022=>19830,\n37023=>19831,\n37024=>19832,\n37028=>19833,\n37029=>19834,\n37031=>19835,\n37032=>19836,\n37033=>19837,\n37035=>19838,\n37037=>19839,\n37042=>19840,\n37047=>19841,\n37052=>19842,\n37053=>19843,\n37055=>19844,\n37056=>19845,\n37058=>19846,\n37059=>19847,\n37062=>19848,\n37064=>19849,\n37065=>19850,\n37067=>19851,\n37068=>19852,\n37069=>19853,\n37074=>19854,\n37076=>19855,\n37077=>19856,\n37078=>19857,\n37080=>19858,\n37081=>19859,\n37082=>19860,\n37086=>19861,\n37088=>19862,\n37091=>19863,\n37092=>19864,\n37093=>19865,\n37097=>19866,\n37098=>19867,\n37100=>19868,\n37102=>19869,\n37104=>19870,\n37105=>19871,\n37106=>19872,\n37107=>19873,\n37110=>19874,\n37111=>19875,\n37113=>19876,\n37114=>19877,\n37115=>19878,\n37116=>19879,\n37119=>19880,\n37120=>19881,\n37121=>19882,\n37123=>19883,\n37125=>19884,\n37127=>19885,\n37128=>19886,\n37130=>19887,\n37131=>19888,\n37132=>19889,\n37133=>19890,\n37134=>19891,\n37135=>19892,\n37136=>19893,\n37137=>19894,\n37139=>19895,\n37141=>19896,\n37143=>19897,\n37144=>19898,\n37146=>19899,\n37147=>19900,\n37148=>19901,\n37149=>19902,\n37151=>19903,\n37152=>19904,\n37153=>19905,\n37156=>19906,\n37157=>19907,\n37158=>19908,\n37160=>19909,\n37161=>19910,\n37162=>19911,\n37163=>19912,\n37164=>19913,\n37166=>19914,\n37171=>19915,\n37173=>19916,\n37175=>19917,\n37176=>19918,\n37179=>19919,\n37180=>19920,\n37181=>19921,\n37182=>19922,\n37183=>19923,\n37184=>19924,\n37185=>19925,\n37186=>19926,\n37188=>19927,\n37189=>19928,\n37191=>19929,\n37201=>19930,\n37203=>19931,\n37204=>19932,\n37205=>19933,\n37206=>19934,\n37208=>19935,\n37209=>19936,\n37211=>19937,\n37212=>19938,\n37215=>19939,\n37216=>19940,\n37222=>19941,\n37223=>19942,\n37224=>19943,\n37227=>19944,\n37229=>19945,\n37235=>19946,\n37242=>19947,\n37243=>19948,\n37244=>19949,\n37248=>19950,\n37249=>19951,\n37250=>19952,\n37251=>19953,\n37252=>19954,\n37254=>19955,\n37256=>19956,\n37258=>19957,\n37262=>19958,\n37263=>19959,\n37267=>19960,\n37268=>19961,\n37269=>19962,\n37271=>19963,\n37272=>19964,\n37273=>19965,\n37277=>19966,\n37278=>19967,\n37279=>19968,\n37280=>19969,\n37281=>19970,\n37284=>19971,\n37285=>19972,\n37286=>19973,\n37287=>19974,\n37288=>19975,\n37289=>19976,\n37296=>19977,\n37297=>19978,\n37298=>19979,\n37299=>19980,\n37302=>19981,\n37303=>19982,\n37304=>19983,\n37305=>19984,\n37307=>19985,\n37308=>19986,\n37309=>19987,\n37310=>19988,\n37311=>19989,\n37314=>19990,\n37316=>19991,\n12196=>19992,\n37318=>19992,\n37320=>19993,\n37328=>19994,\n37334=>19995,\n37338=>19996,\n37339=>19997,\n37342=>19998,\n37343=>19999,\n37344=>20000,\n37345=>20001,\n37346=>20002,\n37349=>20003,\n37350=>20004,\n37352=>20005,\n37354=>20006,\n37355=>20007,\n37356=>20008,\n37357=>20009,\n37358=>20010,\n37359=>20011,\n37360=>20012,\n37361=>20013,\n37362=>20014,\n37363=>20015,\n37364=>20016,\n37366=>20017,\n37368=>20018,\n37371=>20019,\n37372=>20020,\n37373=>20021,\n37374=>20022,\n37375=>20023,\n37378=>20024,\n37379=>20025,\n37381=>20026,\n37382=>20027,\n37383=>20028,\n37386=>20029,\n37387=>20030,\n37388=>20031,\n37391=>20032,\n37394=>20033,\n37395=>20034,\n37398=>20035,\n37399=>20036,\n37400=>20037,\n37401=>20038,\n37402=>20039,\n37403=>20040,\n37404=>20041,\n37405=>20042,\n37407=>20043,\n37408=>20044,\n37409=>20045,\n37410=>20046,\n37412=>20047,\n37416=>20048,\n37417=>20049,\n37418=>20050,\n37419=>20051,\n37420=>20052,\n37421=>20053,\n37423=>20054,\n37425=>20055,\n37426=>20056,\n37429=>20057,\n37430=>20058,\n37435=>20059,\n37436=>20060,\n37441=>20061,\n37442=>20062,\n37443=>20063,\n37444=>20064,\n37446=>20065,\n37447=>20066,\n37450=>20067,\n37451=>20068,\n37452=>20069,\n37454=>20070,\n37455=>20071,\n37456=>20072,\n37458=>20073,\n37459=>20074,\n37460=>20075,\n37462=>20076,\n37464=>20077,\n37465=>20078,\n37468=>20079,\n37469=>20080,\n37471=>20081,\n37472=>20082,\n37473=>20083,\n37475=>20084,\n37476=>20085,\n37477=>20086,\n37479=>20087,\n37480=>20088,\n37481=>20089,\n37482=>20090,\n37483=>20091,\n37486=>20092,\n37487=>20093,\n37488=>20094,\n37489=>20095,\n37490=>20096,\n37491=>20097,\n37493=>20098,\n37494=>20099,\n37495=>20100,\n37497=>20101,\n37500=>20102,\n37501=>20103,\n37502=>20104,\n37505=>20105,\n37506=>20106,\n37508=>20107,\n37510=>20108,\n37511=>20109,\n37512=>20110,\n37513=>20111,\n37514=>20112,\n37515=>20113,\n37516=>20114,\n37517=>20115,\n37519=>20116,\n37520=>20117,\n37522=>20118,\n37524=>20119,\n37525=>20120,\n37527=>20121,\n37529=>20122,\n37531=>20123,\n37533=>20124,\n37534=>20125,\n37535=>20126,\n37537=>20127,\n37538=>20128,\n37540=>20129,\n37543=>20130,\n37549=>20131,\n37551=>20132,\n37552=>20133,\n37554=>20134,\n37555=>20135,\n37556=>20136,\n37557=>20137,\n37558=>20138,\n37560=>20139,\n37562=>20140,\n37565=>20141,\n37566=>20142,\n37567=>20143,\n37568=>20144,\n37570=>20145,\n37572=>20146,\n37574=>20147,\n37577=>20148,\n37578=>20149,\n37579=>20150,\n37581=>20151,\n37582=>20152,\n37584=>20153,\n37585=>20154,\n37587=>20155,\n37588=>20156,\n37589=>20157,\n37590=>20158,\n37591=>20159,\n37592=>20160,\n37593=>20161,\n37594=>20162,\n37595=>20163,\n37596=>20164,\n37598=>20165,\n37600=>20166,\n37601=>20167,\n37602=>20168,\n37607=>20169,\n37609=>20170,\n37611=>20171,\n37612=>20172,\n37618=>20173,\n37619=>20174,\n37620=>20175,\n37621=>20176,\n37623=>20177,\n37625=>20178,\n37626=>20179,\n37627=>20180,\n37629=>20181,\n37630=>20182,\n37631=>20183,\n37632=>20184,\n37634=>20185,\n37635=>20186,\n37636=>20187,\n37637=>20188,\n37641=>20189,\n37642=>20190,\n37643=>20191,\n37644=>20192,\n37645=>20193,\n37646=>20194,\n37647=>20195,\n37649=>20196,\n37651=>20197,\n37652=>20198,\n37654=>20199,\n37655=>20200,\n37660=>20201,\n37661=>20202,\n37662=>20203,\n37665=>20204,\n37667=>20205,\n37668=>20206,\n37669=>20207,\n37671=>20208,\n37673=>20209,\n37674=>20210,\n37676=>20211,\n37677=>20212,\n37680=>20213,\n37681=>20214,\n37684=>20215,\n37685=>20216,\n37687=>20217,\n37689=>20218,\n37690=>20219,\n37691=>20220,\n37692=>20221,\n37693=>20222,\n37695=>20223,\n37698=>20224,\n37700=>20225,\n37701=>20226,\n37704=>20227,\n37705=>20228,\n37706=>20229,\n37708=>20230,\n37710=>20231,\n37711=>20232,\n37712=>20233,\n37713=>20234,\n37714=>20235,\n37715=>20236,\n37717=>20237,\n37718=>20238,\n37719=>20239,\n37721=>20240,\n37722=>20241,\n37724=>20242,\n37725=>20243,\n37726=>20244,\n37727=>20245,\n37728=>20246,\n37729=>20247,\n37730=>20248,\n37731=>20249,\n37734=>20250,\n37735=>20251,\n37736=>20252,\n37739=>20253,\n37741=>20254,\n37742=>20255,\n37743=>20256,\n37745=>20257,\n37746=>20258,\n37747=>20259,\n37748=>20260,\n37751=>20261,\n37752=>20262,\n37753=>20263,\n37755=>20264,\n37756=>20265,\n37757=>20266,\n37759=>20267,\n37760=>20268,\n37761=>20269,\n37763=>20270,\n37765=>20271,\n37766=>20272,\n37768=>20273,\n37769=>20274,\n37771=>20275,\n37772=>20276,\n37773=>20277,\n37774=>20278,\n37776=>20279,\n37777=>20280,\n37778=>20281,\n37779=>20282,\n37780=>20283,\n37781=>20284,\n37783=>20285,\n37785=>20286,\n37786=>20287,\n37787=>20288,\n37788=>20289,\n37789=>20290,\n37790=>20291,\n37791=>20292,\n37792=>20293,\n37793=>20294,\n37796=>20295,\n37797=>20296,\n37800=>20297,\n37803=>20298,\n37805=>20299,\n37807=>20300,\n37809=>20301,\n37810=>20302,\n37812=>20303,\n37814=>20304,\n37815=>20305,\n37817=>20306,\n37818=>20307,\n37819=>20308,\n37820=>20309,\n37821=>20310,\n37822=>20311,\n37824=>20312,\n37825=>20313,\n37826=>20314,\n37828=>20315,\n37829=>20316,\n37830=>20317,\n37833=>20318,\n37835=>20319,\n37838=>20320,\n37839=>20321,\n37840=>20322,\n37842=>20323,\n37843=>20324,\n37844=>20325,\n37845=>20326,\n37849=>20327,\n37850=>20328,\n37851=>20329,\n37856=>20330,\n37859=>20331,\n37861=>20332,\n37862=>20333,\n37863=>20334,\n37865=>20335,\n37866=>20336,\n37867=>20337,\n37868=>20338,\n37869=>20339,\n37870=>20340,\n37871=>20341,\n37872=>20342,\n37873=>20343,\n37874=>20344,\n37875=>20345,\n37876=>20346,\n37878=>20347,\n37880=>20348,\n37882=>20349,\n37883=>20350,\n37884=>20351,\n37885=>20352,\n37886=>20353,\n37887=>20354,\n37888=>20355,\n37889=>20356,\n37890=>20357,\n37892=>20358,\n37893=>20359,\n37894=>20360,\n37895=>20361,\n37896=>20362,\n37897=>20363,\n37898=>20364,\n37900=>20365,\n37901=>20366,\n37902=>20367,\n37903=>20368,\n37905=>20369,\n37909=>20370,\n37910=>20371,\n37911=>20372,\n37914=>20373,\n37915=>20374,\n37916=>20375,\n37918=>20376,\n37919=>20377,\n37921=>20378,\n37922=>20379,\n37923=>20380,\n37924=>20381,\n37925=>20382,\n37929=>20383,\n37930=>20384,\n37931=>20385,\n37932=>20386,\n37933=>20387,\n37935=>20388,\n37936=>20389,\n37937=>20390,\n37940=>20391,\n37942=>20392,\n37943=>20393,\n37945=>20394,\n37947=>20395,\n37948=>20396,\n37949=>20397,\n37952=>20398,\n37953=>20399,\n37954=>20400,\n37955=>20401,\n37957=>20402,\n37958=>20403,\n37959=>20404,\n37960=>20405,\n37961=>20406,\n37963=>20407,\n37965=>20408,\n37966=>20409,\n37967=>20410,\n37968=>20411,\n37969=>20412,\n37971=>20413,\n37973=>20414,\n37974=>20415,\n37975=>20416,\n37976=>20417,\n37977=>20418,\n37978=>20419,\n37979=>20420,\n37980=>20421,\n37981=>20422,\n37982=>20423,\n37983=>20424,\n37985=>20425,\n37986=>20426,\n37988=>20427,\n37990=>20428,\n37991=>20429,\n37992=>20430,\n37993=>20431,\n37994=>20432,\n37996=>20433,\n37998=>20434,\n37999=>20435,\n38001=>20436,\n38003=>20437,\n38004=>20438,\n38005=>20439,\n38006=>20440,\n38008=>20441,\n38010=>20442,\n38011=>20443,\n38016=>20444,\n38017=>20445,\n38018=>20446,\n38019=>20447,\n38020=>20448,\n38033=>20449,\n38038=>20450,\n38040=>20451,\n38087=>20452,\n38095=>20453,\n38099=>20454,\n38100=>20455,\n38106=>20456,\n38118=>20457,\n38139=>20458,\n38172=>20459,\n38176=>20460,\n38183=>20461,\n38195=>20462,\n38205=>20463,\n38211=>20464,\n38216=>20465,\n38219=>20466,\n38229=>20467,\n38234=>20468,\n38240=>20469,\n38254=>20470,\n38260=>20471,\n38261=>20472,\n38264=>20473,\n38265=>20474,\n38266=>20475,\n38267=>20476,\n38268=>20477,\n38269=>20478,\n38270=>20479,\n38273=>20480,\n38276=>20481,\n38277=>20482,\n38279=>20483,\n38280=>20484,\n38282=>20485,\n38285=>20486,\n38288=>20487,\n38290=>20488,\n38293=>20489,\n38294=>20490,\n38295=>20491,\n38297=>20492,\n38298=>20493,\n38299=>20494,\n38300=>20495,\n38301=>20496,\n38302=>20497,\n38303=>20498,\n38304=>20499,\n38306=>20500,\n38310=>20501,\n38311=>20502,\n38314=>20503,\n38318=>20504,\n38319=>20505,\n38320=>20506,\n38321=>20507,\n38323=>20508,\n38324=>20509,\n38325=>20510,\n38327=>20511,\n38328=>20512,\n38330=>20513,\n38336=>20514,\n38337=>20515,\n38338=>20516,\n38340=>20517,\n38341=>20518,\n38343=>20519,\n38345=>20520,\n38349=>20521,\n38350=>20522,\n38351=>20523,\n38353=>20524,\n38354=>20525,\n38355=>20526,\n38359=>20527,\n38360=>20528,\n38361=>20529,\n38362=>20530,\n38363=>20531,\n38365=>20532,\n38367=>20533,\n38368=>20534,\n38371=>20535,\n38372=>20536,\n38374=>20537,\n38375=>20538,\n38380=>20539,\n38399=>20540,\n38407=>20541,\n38419=>20542,\n38424=>20543,\n38427=>20544,\n38430=>20545,\n38432=>20546,\n38435=>20547,\n38436=>20548,\n38437=>20549,\n38438=>20550,\n38439=>20551,\n38440=>20552,\n38441=>20553,\n38443=>20554,\n38444=>20555,\n38445=>20556,\n38447=>20557,\n38448=>20558,\n38455=>20559,\n38456=>20560,\n38457=>20561,\n38458=>20562,\n38462=>20563,\n38465=>20564,\n38467=>20565,\n38474=>20566,\n38478=>20567,\n38479=>20568,\n38481=>20569,\n38482=>20570,\n38483=>20571,\n38486=>20572,\n38487=>20573,\n38489=>20574,\n38490=>20575,\n38492=>20576,\n38494=>20577,\n38496=>20578,\n38501=>20579,\n38502=>20580,\n38507=>20581,\n38509=>20582,\n38510=>20583,\n38511=>20584,\n38513=>20585,\n38521=>20586,\n38522=>20587,\n38523=>20588,\n38524=>20589,\n38526=>20590,\n38527=>20591,\n38528=>20592,\n38529=>20593,\n38530=>20594,\n38531=>20595,\n38532=>20596,\n38535=>20597,\n38537=>20598,\n38540=>20599,\n38545=>20600,\n38546=>20601,\n38547=>20602,\n38550=>20603,\n38554=>20604,\n38557=>20605,\n38558=>20606,\n38559=>20607,\n38560=>20608,\n38561=>20609,\n38562=>20610,\n63985=>20611,\n38563=>20611,\n38564=>20612,\n38565=>20613,\n38566=>20614,\n38569=>20615,\n38571=>20616,\n38572=>20617,\n38573=>20618,\n38574=>20619,\n38575=>20620,\n38578=>20621,\n38581=>20622,\n38583=>20623,\n38586=>20624,\n38591=>20625,\n38594=>20626,\n38595=>20627,\n38600=>20628,\n38602=>20629,\n38603=>20630,\n38608=>20631,\n38609=>20632,\n38611=>20633,\n38612=>20634,\n38615=>20635,\n38616=>20636,\n38618=>20637,\n38621=>20638,\n38622=>20639,\n38623=>20640,\n38625=>20641,\n38628=>20642,\n38629=>20643,\n38630=>20644,\n38631=>20645,\n38635=>20646,\n38636=>20647,\n38637=>20648,\n38638=>20649,\n38640=>20650,\n38641=>20651,\n38644=>20652,\n38645=>20653,\n38648=>20654,\n38650=>20655,\n38652=>20656,\n38653=>20657,\n38655=>20658,\n38658=>20659,\n38659=>20660,\n38661=>20661,\n38666=>20662,\n38667=>20663,\n38668=>20664,\n38672=>20665,\n38673=>20666,\n38674=>20667,\n38676=>20668,\n38677=>20669,\n38679=>20670,\n38680=>20671,\n38681=>20672,\n38682=>20673,\n38683=>20674,\n38685=>20675,\n38687=>20676,\n38688=>20677,\n38689=>20678,\n38690=>20679,\n38691=>20680,\n38692=>20681,\n38693=>20682,\n38694=>20683,\n38696=>20684,\n38697=>20685,\n38699=>20686,\n38700=>20687,\n38702=>20688,\n38703=>20689,\n38705=>20690,\n38707=>20691,\n38708=>20692,\n38709=>20693,\n38710=>20694,\n38711=>20695,\n38714=>20696,\n38715=>20697,\n38716=>20698,\n38719=>20699,\n38720=>20700,\n38721=>20701,\n38723=>20702,\n38725=>20703,\n38726=>20704,\n38727=>20705,\n38729=>20706,\n38730=>20707,\n38731=>20708,\n38732=>20709,\n38733=>20710,\n38734=>20711,\n38735=>20712,\n38736=>20713,\n12205=>20714,\n38737=>20714,\n38740=>20715,\n38741=>20716,\n38743=>20717,\n38744=>20718,\n38748=>20719,\n38749=>20720,\n38751=>20721,\n38755=>20722,\n38756=>20723,\n38758=>20724,\n38759=>20725,\n38762=>20726,\n38763=>20727,\n38764=>20728,\n38765=>20729,\n38766=>20730,\n38767=>20731,\n38768=>20732,\n38769=>20733,\n38770=>20734,\n38773=>20735,\n38775=>20736,\n38776=>20737,\n38777=>20738,\n38778=>20739,\n38779=>20740,\n38781=>20741,\n38782=>20742,\n38783=>20743,\n38784=>20744,\n38785=>20745,\n38786=>20746,\n38787=>20747,\n38788=>20748,\n38790=>20749,\n38791=>20750,\n38792=>20751,\n38793=>20752,\n38794=>20753,\n38796=>20754,\n38798=>20755,\n38800=>20756,\n38803=>20757,\n38805=>20758,\n38806=>20759,\n38807=>20760,\n38809=>20761,\n38810=>20762,\n38811=>20763,\n38812=>20764,\n38813=>20765,\n38814=>20766,\n38815=>20767,\n38817=>20768,\n38818=>20769,\n38820=>20770,\n38821=>20771,\n38823=>20772,\n38824=>20773,\n38825=>20774,\n38826=>20775,\n38828=>20776,\n38830=>20777,\n38832=>20778,\n38833=>20779,\n38835=>20780,\n38837=>20781,\n38838=>20782,\n38839=>20783,\n38840=>20784,\n38841=>20785,\n38842=>20786,\n38843=>20787,\n38844=>20788,\n38846=>20789,\n38847=>20790,\n38848=>20791,\n38849=>20792,\n38850=>20793,\n38852=>20794,\n38853=>20795,\n38855=>20796,\n38856=>20797,\n38858=>20798,\n38861=>20799,\n38862=>20800,\n38863=>20801,\n38864=>20802,\n38865=>20803,\n38866=>20804,\n38868=>20805,\n38869=>20806,\n38870=>20807,\n38871=>20808,\n38872=>20809,\n38874=>20810,\n38875=>20811,\n38877=>20812,\n38879=>20813,\n38880=>20814,\n38881=>20815,\n38882=>20816,\n38883=>20817,\n38884=>20818,\n38885=>20819,\n38888=>20820,\n38894=>20821,\n38895=>20822,\n38896=>20823,\n38897=>20824,\n38898=>20825,\n38900=>20826,\n38903=>20827,\n38904=>20828,\n38905=>20829,\n38906=>20830,\n38907=>20831,\n38908=>20832,\n38909=>20833,\n38910=>20834,\n38912=>20835,\n38916=>20836,\n38921=>20837,\n38923=>20838,\n38925=>20839,\n38932=>20840,\n38933=>20841,\n38934=>20842,\n38937=>20843,\n38938=>20844,\n38939=>20845,\n38941=>20846,\n38942=>20847,\n38943=>20848,\n38944=>20849,\n38946=>20850,\n38947=>20851,\n38949=>20852,\n38951=>20853,\n38952=>20854,\n38953=>20855,\n38954=>20856,\n38955=>20857,\n38956=>20858,\n38958=>20859,\n38959=>20860,\n38961=>20861,\n38962=>20862,\n38963=>20863,\n38964=>20864,\n38965=>20865,\n38966=>20866,\n38969=>20867,\n38970=>20868,\n38972=>20869,\n38974=>20870,\n38975=>20871,\n38976=>20872,\n38977=>20873,\n38978=>20874,\n38979=>20875,\n38980=>20876,\n38981=>20877,\n38983=>20878,\n38984=>20879,\n38985=>20880,\n38986=>20881,\n38987=>20882,\n38991=>20883,\n38992=>20884,\n38993=>20885,\n38994=>20886,\n38997=>20887,\n38998=>20888,\n38999=>20889,\n39002=>20890,\n39004=>20891,\n39005=>20892,\n39007=>20893,\n39008=>20894,\n39009=>20895,\n39011=>20896,\n39012=>20897,\n39014=>20898,\n39016=>20899,\n39017=>20900,\n39018=>20901,\n39021=>20902,\n39022=>20903,\n39026=>20904,\n39051=>20905,\n39054=>20906,\n39058=>20907,\n39061=>20908,\n39065=>20909,\n39075=>20910,\n39081=>20911,\n39082=>20912,\n39083=>20913,\n39084=>20914,\n39085=>20915,\n39088=>20916,\n39090=>20917,\n39092=>20918,\n39093=>20919,\n39095=>20920,\n39096=>20921,\n39097=>20922,\n39098=>20923,\n39099=>20924,\n39101=>20925,\n39102=>20926,\n39103=>20927,\n39104=>20928,\n39105=>20929,\n39106=>20930,\n39107=>20931,\n39109=>20932,\n39111=>20933,\n39113=>20934,\n39114=>20935,\n39115=>20936,\n39116=>20937,\n39117=>20938,\n39119=>20939,\n39120=>20940,\n39124=>20941,\n39126=>20942,\n39127=>20943,\n39132=>20944,\n39133=>20945,\n39137=>20946,\n39139=>20947,\n39140=>20948,\n39141=>20949,\n39142=>20950,\n39148=>20951,\n39150=>20952,\n39152=>20953,\n39153=>20954,\n39155=>20955,\n39157=>20956,\n39158=>20957,\n39159=>20958,\n39160=>20959,\n39161=>20960,\n39162=>20961,\n39163=>20962,\n39167=>20963,\n39168=>20964,\n39169=>20965,\n39170=>20966,\n39172=>20967,\n39174=>20968,\n39175=>20969,\n39176=>20970,\n39179=>20971,\n39182=>20972,\n39183=>20973,\n39188=>20974,\n39189=>20975,\n39190=>20976,\n39191=>20977,\n39193=>20978,\n39194=>20979,\n39196=>20980,\n39197=>20981,\n39199=>20982,\n39200=>20983,\n39202=>20984,\n39203=>20985,\n39204=>20986,\n39205=>20987,\n39206=>20988,\n39207=>20989,\n39209=>20990,\n39210=>20991,\n39211=>20992,\n39212=>20993,\n39213=>20994,\n39215=>20995,\n39216=>20996,\n39217=>20997,\n39218=>20998,\n39220=>20999,\n39221=>21000,\n39222=>21001,\n39224=>21002,\n39225=>21003,\n39226=>21004,\n39227=>21005,\n39229=>21006,\n39232=>21007,\n39233=>21008,\n39234=>21009,\n39236=>21010,\n39238=>21011,\n39239=>21012,\n39245=>21013,\n39246=>21014,\n39247=>21015,\n39248=>21016,\n39251=>21017,\n39254=>21018,\n39256=>21019,\n39257=>21020,\n39258=>21021,\n39259=>21022,\n39261=>21023,\n39263=>21024,\n39264=>21025,\n39265=>21026,\n39268=>21027,\n39270=>21028,\n39283=>21029,\n39288=>21030,\n39289=>21031,\n39291=>21032,\n39294=>21033,\n39298=>21034,\n39299=>21035,\n39305=>21036,\n39308=>21037,\n39310=>21038,\n39322=>21039,\n39323=>21040,\n39324=>21041,\n39325=>21042,\n39326=>21043,\n39327=>21044,\n39328=>21045,\n39329=>21046,\n39330=>21047,\n39331=>21048,\n39332=>21049,\n39334=>21050,\n39335=>21051,\n39337=>21052,\n39338=>21053,\n39339=>21054,\n39343=>21055,\n39344=>21056,\n39346=>21057,\n39349=>21058,\n39350=>21059,\n39351=>21060,\n39352=>21061,\n39353=>21062,\n39354=>21063,\n39355=>21064,\n39356=>21065,\n39357=>21066,\n39358=>21067,\n39359=>21068,\n39360=>21069,\n39362=>21070,\n39363=>21071,\n39364=>21072,\n39365=>21073,\n39366=>21074,\n39367=>21075,\n39368=>21076,\n39369=>21077,\n39370=>21078,\n39371=>21079,\n39372=>21080,\n39373=>21081,\n39374=>21082,\n39375=>21083,\n39379=>21084,\n39382=>21085,\n39383=>21086,\n39386=>21087,\n39388=>21088,\n39390=>21089,\n39392=>21090,\n39395=>21091,\n39396=>21092,\n39397=>21093,\n39398=>21094,\n39399=>21095,\n39400=>21096,\n39401=>21097,\n39402=>21098,\n39403=>21099,\n39404=>21100,\n39406=>21101,\n39407=>21102,\n39408=>21103,\n39410=>21104,\n39411=>21105,\n39412=>21106,\n39413=>21107,\n39414=>21108,\n39415=>21109,\n39416=>21110,\n39417=>21111,\n39418=>21112,\n39419=>21113,\n39420=>21114,\n39421=>21115,\n39422=>21116,\n39424=>21117,\n39426=>21118,\n39427=>21119,\n39428=>21120,\n39430=>21121,\n39431=>21122,\n39432=>21123,\n39433=>21124,\n39434=>21125,\n39435=>21126,\n39436=>21127,\n39440=>21128,\n39441=>21129,\n39442=>21130,\n39443=>21131,\n39444=>21132,\n39445=>21133,\n39447=>21134,\n39448=>21135,\n39450=>21136,\n39451=>21137,\n39452=>21138,\n39453=>21139,\n39454=>21140,\n39455=>21141,\n39456=>21142,\n39457=>21143,\n39458=>21144,\n39459=>21145,\n39460=>21146,\n39461=>21147,\n39462=>21148,\n39463=>21149,\n39464=>21150,\n39465=>21151,\n39466=>21152,\n39468=>21153,\n39471=>21154,\n39473=>21155,\n39474=>21156,\n39475=>21157,\n39476=>21158,\n39477=>21159,\n39481=>21160,\n39482=>21161,\n39483=>21162,\n39484=>21163,\n39485=>21164,\n39487=>21165,\n39494=>21166,\n39495=>21167,\n39496=>21168,\n39497=>21169,\n39499=>21170,\n39500=>21171,\n39502=>21172,\n39504=>21173,\n39505=>21174,\n39506=>21175,\n39507=>21176,\n39508=>21177,\n39510=>21178,\n39512=>21179,\n39513=>21180,\n39516=>21181,\n39517=>21182,\n39518=>21183,\n39520=>21184,\n39521=>21185,\n39523=>21186,\n39526=>21187,\n39527=>21188,\n39528=>21189,\n39529=>21190,\n39531=>21191,\n39538=>21192,\n39555=>21193,\n39561=>21194,\n39565=>21195,\n39566=>21196,\n39572=>21197,\n39573=>21198,\n39577=>21199,\n39590=>21200,\n39593=>21201,\n39594=>21202,\n39595=>21203,\n39596=>21204,\n39597=>21205,\n39598=>21206,\n39602=>21207,\n39603=>21208,\n39604=>21209,\n39605=>21210,\n39609=>21211,\n39611=>21212,\n39613=>21213,\n39614=>21214,\n39615=>21215,\n39619=>21216,\n39620=>21217,\n39622=>21218,\n39623=>21219,\n39624=>21220,\n39625=>21221,\n39626=>21222,\n39629=>21223,\n39630=>21224,\n39632=>21225,\n39639=>21226,\n39641=>21227,\n39642=>21228,\n39643=>21229,\n39644=>21230,\n39645=>21231,\n39646=>21232,\n39648=>21233,\n39650=>21234,\n39651=>21235,\n39652=>21236,\n39653=>21237,\n39655=>21238,\n39656=>21239,\n39657=>21240,\n39658=>21241,\n39660=>21242,\n39664=>21243,\n39665=>21244,\n39666=>21245,\n39667=>21246,\n39668=>21247,\n39669=>21248,\n39670=>21249,\n39671=>21250,\n39672=>21251,\n39674=>21252,\n39676=>21253,\n39677=>21254,\n39678=>21255,\n39679=>21256,\n39680=>21257,\n39681=>21258,\n39682=>21259,\n39684=>21260,\n39685=>21261,\n39687=>21262,\n39689=>21263,\n39690=>21264,\n39691=>21265,\n39692=>21266,\n39694=>21267,\n39696=>21268,\n39697=>21269,\n39698=>21270,\n39700=>21271,\n39701=>21272,\n39702=>21273,\n39703=>21274,\n39704=>21275,\n39705=>21276,\n39707=>21277,\n39708=>21278,\n39709=>21279,\n39710=>21280,\n39712=>21281,\n39713=>21282,\n39716=>21283,\n39718=>21284,\n39720=>21285,\n39722=>21286,\n39723=>21287,\n39724=>21288,\n39725=>21289,\n39728=>21290,\n39731=>21291,\n39732=>21292,\n39733=>21293,\n39734=>21294,\n39735=>21295,\n39736=>21296,\n39737=>21297,\n39738=>21298,\n39741=>21299,\n39742=>21300,\n39743=>21301,\n39744=>21302,\n39750=>21303,\n39754=>21304,\n39755=>21305,\n39756=>21306,\n39760=>21307,\n39762=>21308,\n39763=>21309,\n39765=>21310,\n39766=>21311,\n39767=>21312,\n39769=>21313,\n39771=>21314,\n39772=>21315,\n39773=>21316,\n39774=>21317,\n39775=>21318,\n39776=>21319,\n39777=>21320,\n39778=>21321,\n39779=>21322,\n39780=>21323,\n39781=>21324,\n39782=>21325,\n39783=>21326,\n39784=>21327,\n39785=>21328,\n39786=>21329,\n39787=>21330,\n39788=>21331,\n39789=>21332,\n39790=>21333,\n39792=>21334,\n39793=>21335,\n39794=>21336,\n39795=>21337,\n39797=>21338,\n39798=>21339,\n39800=>21340,\n39801=>21341,\n39802=>21342,\n39803=>21343,\n39804=>21344,\n39805=>21345,\n39806=>21346,\n39807=>21347,\n39808=>21348,\n39810=>21349,\n39812=>21350,\n39813=>21351,\n39814=>21352,\n39815=>21353,\n39816=>21354,\n39817=>21355,\n39818=>21356,\n39819=>21357,\n39820=>21358,\n39821=>21359,\n39823=>21360,\n39827=>21361,\n39828=>21362,\n39829=>21363,\n39830=>21364,\n39831=>21365,\n39832=>21366,\n39833=>21367,\n39835=>21368,\n39836=>21369,\n39839=>21370,\n39840=>21371,\n39841=>21372,\n39842=>21373,\n39843=>21374,\n39844=>21375,\n39845=>21376,\n39846=>21377,\n39847=>21378,\n39848=>21379,\n39849=>21380,\n39852=>21381,\n39855=>21382,\n39856=>21383,\n39857=>21384,\n39858=>21385,\n39859=>21386,\n39860=>21387,\n39861=>21388,\n39862=>21389,\n39863=>21390,\n39864=>21391,\n39865=>21392,\n39866=>21393,\n39867=>21394,\n39868=>21395,\n39869=>21396,\n39870=>21397,\n39871=>21398,\n39874=>21399,\n39875=>21400,\n39876=>21401,\n39877=>21402,\n39878=>21403,\n39880=>21404,\n39883=>21405,\n39884=>21406,\n39885=>21407,\n39886=>21408,\n39887=>21409,\n39888=>21410,\n39889=>21411,\n39890=>21412,\n39891=>21413,\n39893=>21414,\n39895=>21415,\n39896=>21416,\n39897=>21417,\n39898=>21418,\n39900=>21419,\n39902=>21420,\n39903=>21421,\n39904=>21422,\n39907=>21423,\n39909=>21424,\n39910=>21425,\n39913=>21426,\n39916=>21427,\n39917=>21428,\n39918=>21429,\n39919=>21430,\n39921=>21431,\n39922=>21432,\n39923=>21433,\n39925=>21434,\n39926=>21435,\n39927=>21436,\n39928=>21437,\n39929=>21438,\n39930=>21439,\n39931=>21440,\n39932=>21441,\n39934=>21442,\n39936=>21443,\n39937=>21444,\n39938=>21445,\n39939=>21446,\n39940=>21447,\n39941=>21448,\n39942=>21449,\n39943=>21450,\n39946=>21451,\n39947=>21452,\n39948=>21453,\n39950=>21454,\n39951=>21455,\n39953=>21456,\n39956=>21457,\n39957=>21458,\n39958=>21459,\n39959=>21460,\n39960=>21461,\n39961=>21462,\n39962=>21463,\n39963=>21464,\n39964=>21465,\n39965=>21466,\n39966=>21467,\n39967=>21468,\n39969=>21469,\n39970=>21470,\n39972=>21471,\n39974=>21472,\n39975=>21473,\n39978=>21474,\n39979=>21475,\n39980=>21476,\n39982=>21477,\n39983=>21478,\n39984=>21479,\n39988=>21480,\n39990=>21481,\n39992=>21482,\n39994=>21483,\n39996=>21484,\n39997=>21485,\n39999=>21486,\n40000=>21487,\n40001=>21488,\n40002=>21489,\n40003=>21490,\n40004=>21491,\n40006=>21492,\n40007=>21493,\n40010=>21494,\n40011=>21495,\n40012=>21496,\n40013=>21497,\n40014=>21498,\n40015=>21499,\n40016=>21500,\n40017=>21501,\n40019=>21502,\n40021=>21503,\n40025=>21504,\n40026=>21505,\n40027=>21506,\n40028=>21507,\n40030=>21508,\n40032=>21509,\n40033=>21510,\n40034=>21511,\n40035=>21512,\n40036=>21513,\n40037=>21514,\n40038=>21515,\n40040=>21516,\n40041=>21517,\n40042=>21518,\n40043=>21519,\n40044=>21520,\n40046=>21521,\n40047=>21522,\n40048=>21523,\n40049=>21524,\n40050=>21525,\n40051=>21526,\n40052=>21527,\n40053=>21528,\n40054=>21529,\n40055=>21530,\n40057=>21531,\n40059=>21532,\n40061=>21533,\n40062=>21534,\n40064=>21535,\n40067=>21536,\n40068=>21537,\n40073=>21538,\n40074=>21539,\n40076=>21540,\n40079=>21541,\n40083=>21542,\n40086=>21543,\n40087=>21544,\n40088=>21545,\n40089=>21546,\n40093=>21547,\n40106=>21548,\n40108=>21549,\n40111=>21550,\n40121=>21551,\n40126=>21552,\n40127=>21553,\n40128=>21554,\n40129=>21555,\n40130=>21556,\n40136=>21557,\n40137=>21558,\n40145=>21559,\n40146=>21560,\n40154=>21561,\n40155=>21562,\n40160=>21563,\n40161=>21564,\n40163=>21565,\n40164=>21566,\n40166=>21567,\n40167=>21568,\n40168=>21569,\n40170=>21570,\n40171=>21571,\n40173=>21572,\n40174=>21573,\n40175=>21574,\n40176=>21575,\n40177=>21576,\n40178=>21577,\n40181=>21578,\n40183=>21579,\n40184=>21580,\n40185=>21581,\n40186=>21582,\n40187=>21583,\n40188=>21584,\n40189=>21585,\n40190=>21586,\n40191=>21587,\n40192=>21588,\n40193=>21589,\n40194=>21590,\n40195=>21591,\n40196=>21592,\n40197=>21593,\n40200=>21594,\n40202=>21595,\n40203=>21596,\n40204=>21597,\n40205=>21598,\n40206=>21599,\n40207=>21600,\n40208=>21601,\n40209=>21602,\n40210=>21603,\n40211=>21604,\n40212=>21605,\n40214=>21606,\n40215=>21607,\n40216=>21608,\n40217=>21609,\n40218=>21610,\n40220=>21611,\n40222=>21612,\n40224=>21613,\n40225=>21614,\n40226=>21615,\n40228=>21616,\n40229=>21617,\n40231=>21618,\n40233=>21619,\n40234=>21620,\n40235=>21621,\n40236=>21622,\n40237=>21623,\n40238=>21624,\n40241=>21625,\n40242=>21626,\n40243=>21627,\n40244=>21628,\n40245=>21629,\n40246=>21630,\n40247=>21631,\n40248=>21632,\n40249=>21633,\n40250=>21634,\n40252=>21635,\n40253=>21636,\n40254=>21637,\n40256=>21638,\n40257=>21639,\n40259=>21640,\n40260=>21641,\n40261=>21642,\n40262=>21643,\n40263=>21644,\n40264=>21645,\n40265=>21646,\n40266=>21647,\n40267=>21648,\n40268=>21649,\n40269=>21650,\n40270=>21651,\n40271=>21652,\n40272=>21653,\n40276=>21654,\n40277=>21655,\n40278=>21656,\n40279=>21657,\n40280=>21658,\n40281=>21659,\n40282=>21660,\n40283=>21661,\n40286=>21662,\n40287=>21663,\n40290=>21664,\n40291=>21665,\n40292=>21666,\n40293=>21667,\n40294=>21668,\n40295=>21669,\n40296=>21670,\n40297=>21671,\n40299=>21672,\n40301=>21673,\n40302=>21674,\n40304=>21675,\n40305=>21676,\n40307=>21677,\n40308=>21678,\n40309=>21679,\n40310=>21680,\n40311=>21681,\n40312=>21682,\n40313=>21683,\n40314=>21684,\n40315=>21685,\n40316=>21686,\n40317=>21687,\n40318=>21688,\n40319=>21689,\n40320=>21690,\n40321=>21691,\n40322=>21692,\n40323=>21693,\n40324=>21694,\n40325=>21695,\n40326=>21696,\n40328=>21697,\n40330=>21698,\n40331=>21699,\n40332=>21700,\n40333=>21701,\n40334=>21702,\n40335=>21703,\n40336=>21704,\n40337=>21705,\n40338=>21706,\n40340=>21707,\n40341=>21708,\n40342=>21709,\n40343=>21710,\n40345=>21711,\n40347=>21712,\n40348=>21713,\n40349=>21714,\n40350=>21715,\n40351=>21716,\n40352=>21717,\n40353=>21718,\n40354=>21719,\n40355=>21720,\n40356=>21721,\n40358=>21722,\n40359=>21723,\n40360=>21724,\n40362=>21725,\n40363=>21726,\n40364=>21727,\n40365=>21728,\n40366=>21729,\n40368=>21730,\n40369=>21731,\n40370=>21732,\n40371=>21733,\n40373=>21734,\n40374=>21735,\n40375=>21736,\n40376=>21737,\n40377=>21738,\n40378=>21739,\n40381=>21740,\n40382=>21741,\n40383=>21742,\n40385=>21743,\n40387=>21744,\n40389=>21745,\n40390=>21746,\n40391=>21747,\n40392=>21748,\n40393=>21749,\n40394=>21750,\n40395=>21751,\n40396=>21752,\n40397=>21753,\n40398=>21754,\n40399=>21755,\n40400=>21756,\n40401=>21757,\n40402=>21758,\n40404=>21759,\n40405=>21760,\n40406=>21761,\n40408=>21762,\n40411=>21763,\n40412=>21764,\n40413=>21765,\n40414=>21766,\n40415=>21767,\n40416=>21768,\n40417=>21769,\n40418=>21770,\n40419=>21771,\n40420=>21772,\n40423=>21773,\n40424=>21774,\n40425=>21775,\n40426=>21776,\n40427=>21777,\n40428=>21778,\n40429=>21779,\n40430=>21780,\n40432=>21781,\n40433=>21782,\n40436=>21783,\n40437=>21784,\n40438=>21785,\n40439=>21786,\n40443=>21787,\n40444=>21788,\n40445=>21789,\n40446=>21790,\n40447=>21791,\n40448=>21792,\n40449=>21793,\n40450=>21794,\n40451=>21795,\n40452=>21796,\n40453=>21797,\n40454=>21798,\n40455=>21799,\n40456=>21800,\n40457=>21801,\n40458=>21802,\n40459=>21803,\n40461=>21804,\n40462=>21805,\n40463=>21806,\n40464=>21807,\n40465=>21808,\n40466=>21809,\n40467=>21810,\n40468=>21811,\n40470=>21812,\n40471=>21813,\n40472=>21814,\n40473=>21815,\n40476=>21816,\n40484=>21817,\n40487=>21818,\n40494=>21819,\n40496=>21820,\n40500=>21821,\n40507=>21822,\n40508=>21823,\n40512=>21824,\n40525=>21825,\n40528=>21826,\n40530=>21827,\n40531=>21828,\n40532=>21829,\n40534=>21830,\n40537=>21831,\n40541=>21832,\n40543=>21833,\n40544=>21834,\n40545=>21835,\n40546=>21836,\n40549=>21837,\n40558=>21838,\n40559=>21839,\n40562=>21840,\n40564=>21841,\n40566=>21842,\n40567=>21843,\n40568=>21844,\n40571=>21845,\n40576=>21846,\n40577=>21847,\n40579=>21848,\n40580=>21849,\n40581=>21850,\n40582=>21851,\n40585=>21852,\n40586=>21853,\n40588=>21854,\n40589=>21855,\n40590=>21856,\n40591=>21857,\n40592=>21858,\n40593=>21859,\n40596=>21860,\n40597=>21861,\n40598=>21862,\n40600=>21863,\n40601=>21864,\n40602=>21865,\n40603=>21866,\n40604=>21867,\n40606=>21868,\n40608=>21869,\n40609=>21870,\n40610=>21871,\n40611=>21872,\n40612=>21873,\n40615=>21874,\n40616=>21875,\n40618=>21876,\n40619=>21877,\n40620=>21878,\n40621=>21879,\n40622=>21880,\n40624=>21881,\n40625=>21882,\n40626=>21883,\n40627=>21884,\n40630=>21885,\n40631=>21886,\n40633=>21887,\n40634=>21888,\n40636=>21889,\n40639=>21890,\n40640=>21891,\n40641=>21892,\n40642=>21893,\n12232=>21894,\n40643=>21894,\n40645=>21895,\n40646=>21896,\n40647=>21897,\n40648=>21898,\n40650=>21899,\n40651=>21900,\n40656=>21901,\n40658=>21902,\n40659=>21903,\n40661=>21904,\n40662=>21905,\n40663=>21906,\n40665=>21907,\n40666=>21908,\n40673=>21909,\n40675=>21910,\n40676=>21911,\n40678=>21912,\n40683=>21913,\n40684=>21914,\n40685=>21915,\n40686=>21916,\n40688=>21917,\n40689=>21918,\n40691=>21919,\n40693=>21920,\n40694=>21921,\n40696=>21922,\n40698=>21923,\n40704=>21924,\n40705=>21925,\n40706=>21926,\n40707=>21927,\n40708=>21928,\n40709=>21929,\n40710=>21930,\n40711=>21931,\n40712=>21932,\n40714=>21933,\n40716=>21934,\n40719=>21935,\n40721=>21936,\n40722=>21937,\n40724=>21938,\n40726=>21939,\n40728=>21940,\n40730=>21941,\n40731=>21942,\n40732=>21943,\n40733=>21944,\n40734=>21945,\n40735=>21946,\n40737=>21947,\n40739=>21948,\n40740=>21949,\n40741=>21950,\n40742=>21951,\n40743=>21952,\n40744=>21953,\n40745=>21954,\n40746=>21955,\n40747=>21956,\n40749=>21957,\n40750=>21958,\n40752=>21959,\n40753=>21960,\n40754=>21961,\n40755=>21962,\n40756=>21963,\n40757=>21964,\n40758=>21965,\n40760=>21966,\n40762=>21967,\n40764=>21968,\n40767=>21969,\n40768=>21970,\n40769=>21971,\n40770=>21972,\n40771=>21973,\n40773=>21974,\n40774=>21975,\n40775=>21976,\n40776=>21977,\n40777=>21978,\n40780=>21979,\n40781=>21980,\n40782=>21981,\n40787=>21982,\n40789=>21983,\n40790=>21984,\n40791=>21985,\n40792=>21986,\n40794=>21987,\n40795=>21988,\n40797=>21989,\n40798=>21990,\n40802=>21991,\n40804=>21992,\n40805=>21993,\n40807=>21994,\n40808=>21995,\n40809=>21996,\n40811=>21997,\n40813=>21998,\n40814=>21999,\n40815=>22000,\n40816=>22001,\n40817=>22002,\n40819=>22003,\n40820=>22004,\n40821=>22005,\n40822=>22006,\n40824=>22007,\n40825=>22008,\n40826=>22009,\n40827=>22010,\n40828=>22011,\n40829=>22012,\n40830=>22013,\n40833=>22014,\n40834=>22015,\n40846=>22016,\n40847=>22017,\n40849=>22018,\n40850=>22019,\n40851=>22020,\n40854=>22021,\n40855=>22022,\n40856=>22023,\n40861=>22024,\n40862=>22025,\n40865=>22026,\n40866=>22027,\n40867=>22028,\n40868=>22029,\n40869=>22030,\n63788=>22031,\n64013=>22032,\n64014=>22033,\n64015=>22034,\n64017=>22035,\n64019=>22036,\n64020=>22037,\n64024=>22038,\n64031=>22039,\n64032=>22040,\n64033=>22041,\n64035=>22042,\n64036=>22043,\n64039=>22044,\n64040=>22045,\n64041=>22046,\n11905=>22047,\n59413=>22047,\n131207=>22048,\n59414=>22048,\n131209=>22049,\n59415=>22049,\n131276=>22050,\n59416=>22050,\n11908=>22051,\n59417=>22051,\n13427=>22052,\n59418=>22052,\n13383=>22053,\n59419=>22053,\n11912=>22054,\n59420=>22054,\n11915=>22055,\n59421=>22055,\n40884=>22056,\n59422=>22056,\n13726=>22057,\n59423=>22057,\n13850=>22058,\n59424=>22058,\n13838=>22059,\n59425=>22059,\n11916=>22060,\n59426=>22060,\n11927=>22061,\n59427=>22061,\n14702=>22062,\n59428=>22062,\n14616=>22063,\n59429=>22063,\n40885=>22064,\n59430=>22064,\n14799=>22065,\n59431=>22065,\n14815=>22066,\n59432=>22066,\n14963=>22067,\n59433=>22067,\n14800=>22068,\n59434=>22068,\n40886=>22069,\n59435=>22069,\n40887=>22070,\n59436=>22070,\n15182=>22071,\n59437=>22071,\n15470=>22072,\n59438=>22072,\n15584=>22073,\n59439=>22073,\n11943=>22074,\n59440=>22074,\n136663=>22075,\n59441=>22075,\n40888=>22076,\n59442=>22076,\n11946=>22077,\n59443=>22077,\n16470=>22078,\n59444=>22078,\n16735=>22079,\n59445=>22079,\n11950=>22080,\n59446=>22080,\n17207=>22081,\n59447=>22081,\n11955=>22082,\n59448=>22082,\n11958=>22083,\n59449=>22083,\n11959=>22084,\n59450=>22084,\n141711=>22085,\n59451=>22085,\n17329=>22086,\n59452=>22086,\n17324=>22087,\n59453=>22087,\n11963=>22088,\n59454=>22088,\n17373=>22089,\n59455=>22089,\n17622=>22090,\n59456=>22090,\n18017=>22091,\n59457=>22091,\n17996=>22092,\n59458=>22092,\n40889=>22093,\n132361=>22093,\n59459=>22093,\n18211=>22094,\n59460=>22094,\n18217=>22095,\n59461=>22095,\n18300=>22096,\n59462=>22096,\n18317=>22097,\n59463=>22097,\n11978=>22098,\n59464=>22098,\n18759=>22099,\n59465=>22099,\n18810=>22100,\n59466=>22100,\n18813=>22101,\n59467=>22101,\n18818=>22102,\n59468=>22102,\n18819=>22103,\n59469=>22103,\n18821=>22104,\n59470=>22104,\n18822=>22105,\n59471=>22105,\n18847=>22106,\n59472=>22106,\n18843=>22107,\n59473=>22107,\n18871=>22108,\n59474=>22108,\n18870=>22109,\n59475=>22109,\n40890=>22110,\n133533=>22110,\n59476=>22110,\n147966=>22111,\n59477=>22111,\n19619=>22112,\n59478=>22112,\n19615=>22113,\n59479=>22113,\n19616=>22114,\n59480=>22114,\n19617=>22115,\n59481=>22115,\n19575=>22116,\n59482=>22116,\n19618=>22117,\n59483=>22117,\n19731=>22118,\n59484=>22118,\n19732=>22119,\n59485=>22119,\n19733=>22120,\n59486=>22120,\n19734=>22121,\n59487=>22121,\n19735=>22122,\n59488=>22122,\n19736=>22123,\n59489=>22123,\n19737=>22124,\n59490=>22124,\n19886=>22125,\n59491=>22125,\n40891=>22126,\n59492=>22126,\n8364=>22353,\n59244=>22353,\n165=>22354,\n12351=>22357,\n12436=>22375,\n12535=>22390,\n12537=>22391,\n12536=>22392,\n12538=>22393,\n12339=>22395,\n12340=>22396,\n12341=>22397,\n12344=>22398,\n12345=>22399,\n12346=>22400,\n12586=>22401,\n12587=>22402,\n12588=>22403,\n12704=>22404,\n12705=>22405,\n12706=>22406,\n12707=>22407,\n12708=>22408,\n12709=>22409,\n12710=>22410,\n12711=>22411,\n12712=>22412,\n12713=>22413,\n12714=>22414,\n12715=>22415,\n12716=>22416,\n12717=>22417,\n12718=>22418,\n12719=>22419,\n12720=>22420,\n12721=>22421,\n12722=>22422,\n12723=>22423,\n12724=>22424,\n12725=>22425,\n12726=>22426,\n12727=>22427,\n11904=>22428,\n11906=>22429,\n11907=>22430,\n11909=>22431,\n11910=>22432,\n11911=>22433,\n11913=>22434,\n11914=>22435,\n11917=>22436,\n11918=>22437,\n11919=>22438,\n11920=>22439,\n11921=>22440,\n11922=>22441,\n11923=>22442,\n11924=>22443,\n11925=>22444,\n11926=>22445,\n11928=>22446,\n11929=>22447,\n11931=>22448,\n11932=>22449,\n11933=>22450,\n11934=>22451,\n11935=>22452,\n11936=>22453,\n11937=>22454,\n11938=>22455,\n11939=>22456,\n11940=>22457,\n11941=>22458,\n11942=>22459,\n11944=>22460,\n11945=>22461,\n11947=>22462,\n11948=>22463,\n11949=>22464,\n11951=>22465,\n11952=>22466,\n11953=>22467,\n11954=>22468,\n11956=>22469,\n11957=>22470,\n11960=>22471,\n11961=>22472,\n11962=>22473,\n11964=>22474,\n11965=>22475,\n11966=>22476,\n11967=>22477,\n11968=>22478,\n11969=>22479,\n11970=>22480,\n11971=>22481,\n11972=>22482,\n11973=>22483,\n11974=>22484,\n11975=>22485,\n11976=>22486,\n11977=>22487,\n11979=>22488,\n11980=>22489,\n11981=>22490,\n11982=>22491,\n11983=>22492,\n11984=>22493,\n11985=>22494,\n11986=>22495,\n11987=>22496,\n11988=>22497,\n11989=>22498,\n11990=>22499,\n11991=>22500,\n11992=>22501,\n11993=>22502,\n11994=>22503,\n11995=>22504,\n11996=>22505,\n11997=>22506,\n11998=>22507,\n11999=>22508,\n12000=>22509,\n12001=>22510,\n12002=>22511,\n12003=>22512,\n12004=>22513,\n12005=>22514,\n12006=>22515,\n12007=>22516,\n12008=>22517,\n12009=>22518,\n12010=>22519,\n12011=>22520,\n12012=>22521,\n12013=>22522,\n12014=>22523,\n12015=>22524,\n12016=>22525,\n12017=>22526,\n12018=>22527,\n12019=>22528,\n13312=>22529,\n13313=>22530,\n13314=>22531,\n13315=>22532,\n13316=>22533,\n13317=>22534,\n13318=>22535,\n13319=>22536,\n13320=>22537,\n13321=>22538,\n13322=>22539,\n13323=>22540,\n13324=>22541,\n13325=>22542,\n13326=>22543,\n13327=>22544,\n13328=>22545,\n13329=>22546,\n13330=>22547,\n13331=>22548,\n13332=>22549,\n13333=>22550,\n13334=>22551,\n13335=>22552,\n13336=>22553,\n13337=>22554,\n13338=>22555,\n13339=>22556,\n13340=>22557,\n13341=>22558,\n13342=>22559,\n13343=>22560,\n13344=>22561,\n13345=>22562,\n13346=>22563,\n13347=>22564,\n13348=>22565,\n13349=>22566,\n13350=>22567,\n13351=>22568,\n13352=>22569,\n13353=>22570,\n13354=>22571,\n13355=>22572,\n13356=>22573,\n13357=>22574,\n13358=>22575,\n13359=>22576,\n13360=>22577,\n13361=>22578,\n13362=>22579,\n13363=>22580,\n13364=>22581,\n13365=>22582,\n13366=>22583,\n13367=>22584,\n13368=>22585,\n13369=>22586,\n13370=>22587,\n13371=>22588,\n13372=>22589,\n13373=>22590,\n13374=>22591,\n13375=>22592,\n13376=>22593,\n13377=>22594,\n13378=>22595,\n13379=>22596,\n13380=>22597,\n13381=>22598,\n13382=>22599,\n13384=>22600,\n13385=>22601,\n13386=>22602,\n13387=>22603,\n13388=>22604,\n13389=>22605,\n13390=>22606,\n13391=>22607,\n13392=>22608,\n13393=>22609,\n13394=>22610,\n13395=>22611,\n13396=>22612,\n13397=>22613,\n13398=>22614,\n13399=>22615,\n13400=>22616,\n13401=>22617,\n13402=>22618,\n13403=>22619,\n13404=>22620,\n13405=>22621,\n13406=>22622,\n13407=>22623,\n13408=>22624,\n13409=>22625,\n13410=>22626,\n13411=>22627,\n13412=>22628,\n13413=>22629,\n13414=>22630,\n13415=>22631,\n13416=>22632,\n13417=>22633,\n13418=>22634,\n13419=>22635,\n13420=>22636,\n13421=>22637,\n13422=>22638,\n13423=>22639,\n13424=>22640,\n13425=>22641,\n13426=>22642,\n13428=>22643,\n13429=>22644,\n13430=>22645,\n13431=>22646,\n13432=>22647,\n13433=>22648,\n13434=>22649,\n13435=>22650,\n13436=>22651,\n13437=>22652,\n13438=>22653,\n13439=>22654,\n13440=>22655,\n13441=>22656,\n13442=>22657,\n13443=>22658,\n13444=>22659,\n13445=>22660,\n13446=>22661,\n13447=>22662,\n13448=>22663,\n13449=>22664,\n13450=>22665,\n13451=>22666,\n13452=>22667,\n13453=>22668,\n13454=>22669,\n13455=>22670,\n13456=>22671,\n13457=>22672,\n13458=>22673,\n13459=>22674,\n13460=>22675,\n13461=>22676,\n13462=>22677,\n13463=>22678,\n13464=>22679,\n13465=>22680,\n13466=>22681,\n13467=>22682,\n13468=>22683,\n13469=>22684,\n13470=>22685,\n13471=>22686,\n13472=>22687,\n13473=>22688,\n13474=>22689,\n13475=>22690,\n13476=>22691,\n13477=>22692,\n13478=>22693,\n13479=>22694,\n13480=>22695,\n13481=>22696,\n13482=>22697,\n13483=>22698,\n13484=>22699,\n13485=>22700,\n13486=>22701,\n13487=>22702,\n13488=>22703,\n13489=>22704,\n13490=>22705,\n13491=>22706,\n13492=>22707,\n13493=>22708,\n13494=>22709,\n13495=>22710,\n13496=>22711,\n13497=>22712,\n13498=>22713,\n13499=>22714,\n13500=>22715,\n13501=>22716,\n13502=>22717,\n13503=>22718,\n13504=>22719,\n13505=>22720,\n13506=>22721,\n13507=>22722,\n13508=>22723,\n13509=>22724,\n13510=>22725,\n13511=>22726,\n13512=>22727,\n13513=>22728,\n13514=>22729,\n13515=>22730,\n13516=>22731,\n13517=>22732,\n13518=>22733,\n13519=>22734,\n13520=>22735,\n13521=>22736,\n13522=>22737,\n13523=>22738,\n13524=>22739,\n13525=>22740,\n13526=>22741,\n13527=>22742,\n13528=>22743,\n13529=>22744,\n13530=>22745,\n13531=>22746,\n13532=>22747,\n13533=>22748,\n13534=>22749,\n13535=>22750,\n13536=>22751,\n13537=>22752,\n13538=>22753,\n13539=>22754,\n13540=>22755,\n13541=>22756,\n13542=>22757,\n13543=>22758,\n13544=>22759,\n13545=>22760,\n13546=>22761,\n13547=>22762,\n13548=>22763,\n13549=>22764,\n13550=>22765,\n13551=>22766,\n13552=>22767,\n13553=>22768,\n13554=>22769,\n13555=>22770,\n13556=>22771,\n13557=>22772,\n13558=>22773,\n13559=>22774,\n13560=>22775,\n13561=>22776,\n13562=>22777,\n13563=>22778,\n13564=>22779,\n13565=>22780,\n13566=>22781,\n13567=>22782,\n13568=>22783,\n13569=>22784,\n13570=>22785,\n13571=>22786,\n13572=>22787,\n13573=>22788,\n13574=>22789,\n13575=>22790,\n13576=>22791,\n13577=>22792,\n13578=>22793,\n13579=>22794,\n13580=>22795,\n13581=>22796,\n13582=>22797,\n13583=>22798,\n13584=>22799,\n13585=>22800,\n13586=>22801,\n13587=>22802,\n13588=>22803,\n13589=>22804,\n13590=>22805,\n13591=>22806,\n13592=>22807,\n13593=>22808,\n13594=>22809,\n13595=>22810,\n13596=>22811,\n13597=>22812,\n13598=>22813,\n13599=>22814,\n13600=>22815,\n13601=>22816,\n13602=>22817,\n13603=>22818,\n13604=>22819,\n13605=>22820,\n13606=>22821,\n13607=>22822,\n13608=>22823,\n13609=>22824,\n13610=>22825,\n13611=>22826,\n13612=>22827,\n13613=>22828,\n13614=>22829,\n13615=>22830,\n13616=>22831,\n13617=>22832,\n13618=>22833,\n13619=>22834,\n13620=>22835,\n13621=>22836,\n13622=>22837,\n13623=>22838,\n13624=>22839,\n13625=>22840,\n13626=>22841,\n13627=>22842,\n13628=>22843,\n13629=>22844,\n13630=>22845,\n13631=>22846,\n13632=>22847,\n13633=>22848,\n13634=>22849,\n13635=>22850,\n13636=>22851,\n13637=>22852,\n13638=>22853,\n13639=>22854,\n13640=>22855,\n13641=>22856,\n13642=>22857,\n13643=>22858,\n13644=>22859,\n13645=>22860,\n13646=>22861,\n13647=>22862,\n13648=>22863,\n13649=>22864,\n13650=>22865,\n13651=>22866,\n13652=>22867,\n13653=>22868,\n13654=>22869,\n13655=>22870,\n13656=>22871,\n13657=>22872,\n13658=>22873,\n13659=>22874,\n13660=>22875,\n13661=>22876,\n13662=>22877,\n13663=>22878,\n13664=>22879,\n13665=>22880,\n13666=>22881,\n13667=>22882,\n13668=>22883,\n13669=>22884,\n13670=>22885,\n13671=>22886,\n13672=>22887,\n13673=>22888,\n13674=>22889,\n13675=>22890,\n13676=>22891,\n13677=>22892,\n13678=>22893,\n13679=>22894,\n13680=>22895,\n13681=>22896,\n13682=>22897,\n13683=>22898,\n13684=>22899,\n13685=>22900,\n13686=>22901,\n13687=>22902,\n13688=>22903,\n13689=>22904,\n13690=>22905,\n13691=>22906,\n13692=>22907,\n13693=>22908,\n13694=>22909,\n13695=>22910,\n13696=>22911,\n13697=>22912,\n13698=>22913,\n13699=>22914,\n13700=>22915,\n13701=>22916,\n13702=>22917,\n13703=>22918,\n13704=>22919,\n13705=>22920,\n13706=>22921,\n13707=>22922,\n13708=>22923,\n13709=>22924,\n13710=>22925,\n13711=>22926,\n13712=>22927,\n13713=>22928,\n13714=>22929,\n13715=>22930,\n13716=>22931,\n13717=>22932,\n13718=>22933,\n13719=>22934,\n13720=>22935,\n13721=>22936,\n13722=>22937,\n13723=>22938,\n13724=>22939,\n13725=>22940,\n13727=>22941,\n13728=>22942,\n13729=>22943,\n13730=>22944,\n13731=>22945,\n13732=>22946,\n13733=>22947,\n13734=>22948,\n13735=>22949,\n13736=>22950,\n13737=>22951,\n13738=>22952,\n13739=>22953,\n13740=>22954,\n13741=>22955,\n13742=>22956,\n13743=>22957,\n13744=>22958,\n13745=>22959,\n13746=>22960,\n13747=>22961,\n13748=>22962,\n13749=>22963,\n13750=>22964,\n13751=>22965,\n13752=>22966,\n13753=>22967,\n13754=>22968,\n13755=>22969,\n13756=>22970,\n13757=>22971,\n13758=>22972,\n13759=>22973,\n13760=>22974,\n13761=>22975,\n13762=>22976,\n13763=>22977,\n13764=>22978,\n13765=>22979,\n13766=>22980,\n13767=>22981,\n13768=>22982,\n13769=>22983,\n13770=>22984,\n13771=>22985,\n13772=>22986,\n13773=>22987,\n13774=>22988,\n13775=>22989,\n13776=>22990,\n13777=>22991,\n13778=>22992,\n13779=>22993,\n13780=>22994,\n13781=>22995,\n13782=>22996,\n13783=>22997,\n13784=>22998,\n13785=>22999,\n13786=>23000,\n13787=>23001,\n13788=>23002,\n13789=>23003,\n13790=>23004,\n13791=>23005,\n13792=>23006,\n13793=>23007,\n13794=>23008,\n13795=>23009,\n13796=>23010,\n13797=>23011,\n13798=>23012,\n13799=>23013,\n13800=>23014,\n13801=>23015,\n13802=>23016,\n13803=>23017,\n13804=>23018,\n13805=>23019,\n13806=>23020,\n13807=>23021,\n13808=>23022,\n13809=>23023,\n13810=>23024,\n13811=>23025,\n13812=>23026,\n13813=>23027,\n13814=>23028,\n13815=>23029,\n13816=>23030,\n13817=>23031,\n13818=>23032,\n13819=>23033,\n13820=>23034,\n13821=>23035,\n13822=>23036,\n13823=>23037,\n13824=>23038,\n13825=>23039,\n13826=>23040,\n13827=>23041,\n13828=>23042,\n13829=>23043,\n13830=>23044,\n13831=>23045,\n13832=>23046,\n13833=>23047,\n13834=>23048,\n13835=>23049,\n13836=>23050,\n13837=>23051,\n13839=>23052,\n13840=>23053,\n13841=>23054,\n13842=>23055,\n13843=>23056,\n13844=>23057,\n13845=>23058,\n13846=>23059,\n13847=>23060,\n13848=>23061,\n13849=>23062,\n13851=>23063,\n13852=>23064,\n13853=>23065,\n13854=>23066,\n13855=>23067,\n13856=>23068,\n13857=>23069,\n13858=>23070,\n13859=>23071,\n13860=>23072,\n13861=>23073,\n13862=>23074,\n13863=>23075,\n13864=>23076,\n13865=>23077,\n13866=>23078,\n13867=>23079,\n13868=>23080,\n13869=>23081,\n13870=>23082,\n13871=>23083,\n13872=>23084,\n13873=>23085,\n13874=>23086,\n13875=>23087,\n13876=>23088,\n13877=>23089,\n13878=>23090,\n13879=>23091,\n13880=>23092,\n13881=>23093,\n13882=>23094,\n13883=>23095,\n13884=>23096,\n13885=>23097,\n13886=>23098,\n13887=>23099,\n13888=>23100,\n13889=>23101,\n13890=>23102,\n13891=>23103,\n13892=>23104,\n13893=>23105,\n13894=>23106,\n13895=>23107,\n13896=>23108,\n13897=>23109,\n13898=>23110,\n13899=>23111,\n13900=>23112,\n13901=>23113,\n13902=>23114,\n13903=>23115,\n13904=>23116,\n13905=>23117,\n13906=>23118,\n13907=>23119,\n13908=>23120,\n13909=>23121,\n13910=>23122,\n13911=>23123,\n13912=>23124,\n13913=>23125,\n13914=>23126,\n13915=>23127,\n13916=>23128,\n13917=>23129,\n13918=>23130,\n13919=>23131,\n13920=>23132,\n13921=>23133,\n13922=>23134,\n13923=>23135,\n13924=>23136,\n13925=>23137,\n13926=>23138,\n13927=>23139,\n13928=>23140,\n13929=>23141,\n13930=>23142,\n13931=>23143,\n13932=>23144,\n13933=>23145,\n13934=>23146,\n13935=>23147,\n13936=>23148,\n13937=>23149,\n13938=>23150,\n13939=>23151,\n13940=>23152,\n13941=>23153,\n13942=>23154,\n13943=>23155,\n13944=>23156,\n13945=>23157,\n13946=>23158,\n13947=>23159,\n13948=>23160,\n13949=>23161,\n13950=>23162,\n13951=>23163,\n13952=>23164,\n13953=>23165,\n13954=>23166,\n13955=>23167,\n13956=>23168,\n13957=>23169,\n13958=>23170,\n13959=>23171,\n13960=>23172,\n13961=>23173,\n13962=>23174,\n13963=>23175,\n13964=>23176,\n13965=>23177,\n13966=>23178,\n13967=>23179,\n13968=>23180,\n13969=>23181,\n13970=>23182,\n13971=>23183,\n13972=>23184,\n13973=>23185,\n13974=>23186,\n13975=>23187,\n13976=>23188,\n13977=>23189,\n13978=>23190,\n13979=>23191,\n13980=>23192,\n13981=>23193,\n13982=>23194,\n13983=>23195,\n13984=>23196,\n13985=>23197,\n13986=>23198,\n13987=>23199,\n13988=>23200,\n13989=>23201,\n13990=>23202,\n13991=>23203,\n13992=>23204,\n13993=>23205,\n13994=>23206,\n13995=>23207,\n13996=>23208,\n13997=>23209,\n13998=>23210,\n13999=>23211,\n14000=>23212,\n14001=>23213,\n14002=>23214,\n14003=>23215,\n14004=>23216,\n14005=>23217,\n14006=>23218,\n14007=>23219,\n14008=>23220,\n14009=>23221,\n14010=>23222,\n14011=>23223,\n14012=>23224,\n14013=>23225,\n14014=>23226,\n14015=>23227,\n14016=>23228,\n14017=>23229,\n14018=>23230,\n14019=>23231,\n14020=>23232,\n14021=>23233,\n14022=>23234,\n14023=>23235,\n14024=>23236,\n14025=>23237,\n14026=>23238,\n14027=>23239,\n14028=>23240,\n14029=>23241,\n14030=>23242,\n14031=>23243,\n14032=>23244,\n14033=>23245,\n14034=>23246,\n14035=>23247,\n14036=>23248,\n14037=>23249,\n14038=>23250,\n14039=>23251,\n14040=>23252,\n14041=>23253,\n14042=>23254,\n14043=>23255,\n14044=>23256,\n14045=>23257,\n14046=>23258,\n14047=>23259,\n14048=>23260,\n14049=>23261,\n14050=>23262,\n14051=>23263,\n14052=>23264,\n14053=>23265,\n14054=>23266,\n14055=>23267,\n14056=>23268,\n14057=>23269,\n14058=>23270,\n14059=>23271,\n14060=>23272,\n14061=>23273,\n14062=>23274,\n14063=>23275,\n14064=>23276,\n14065=>23277,\n14066=>23278,\n14067=>23279,\n14068=>23280,\n14069=>23281,\n14070=>23282,\n14071=>23283,\n14072=>23284,\n14073=>23285,\n14074=>23286,\n14075=>23287,\n14076=>23288,\n14077=>23289,\n14078=>23290,\n14079=>23291,\n14080=>23292,\n14081=>23293,\n14082=>23294,\n14083=>23295,\n14084=>23296,\n14085=>23297,\n14086=>23298,\n14087=>23299,\n14088=>23300,\n14089=>23301,\n14090=>23302,\n14091=>23303,\n14092=>23304,\n14093=>23305,\n14094=>23306,\n14095=>23307,\n14096=>23308,\n14097=>23309,\n14098=>23310,\n14099=>23311,\n14100=>23312,\n14101=>23313,\n14102=>23314,\n14103=>23315,\n14104=>23316,\n14105=>23317,\n14106=>23318,\n14107=>23319,\n14108=>23320,\n14109=>23321,\n14110=>23322,\n14111=>23323,\n14112=>23324,\n14113=>23325,\n14114=>23326,\n14115=>23327,\n14116=>23328,\n14117=>23329,\n14118=>23330,\n14119=>23331,\n14120=>23332,\n14121=>23333,\n14122=>23334,\n14123=>23335,\n14124=>23336,\n14125=>23337,\n14126=>23338,\n14127=>23339,\n14128=>23340,\n14129=>23341,\n14130=>23342,\n14131=>23343,\n14132=>23344,\n14133=>23345,\n14134=>23346,\n14135=>23347,\n14136=>23348,\n14137=>23349,\n14138=>23350,\n14139=>23351,\n14140=>23352,\n14141=>23353,\n14142=>23354,\n14143=>23355,\n14144=>23356,\n14145=>23357,\n14146=>23358,\n14147=>23359,\n14148=>23360,\n14149=>23361,\n14150=>23362,\n14151=>23363,\n14152=>23364,\n14153=>23365,\n14154=>23366,\n14155=>23367,\n14156=>23368,\n14157=>23369,\n14158=>23370,\n14159=>23371,\n14160=>23372,\n14161=>23373,\n14162=>23374,\n14163=>23375,\n14164=>23376,\n14165=>23377,\n14166=>23378,\n14167=>23379,\n14168=>23380,\n14169=>23381,\n14170=>23382,\n14171=>23383,\n14172=>23384,\n14173=>23385,\n14174=>23386,\n14175=>23387,\n14176=>23388,\n14177=>23389,\n14178=>23390,\n14179=>23391,\n14180=>23392,\n14181=>23393,\n14182=>23394,\n14183=>23395,\n14184=>23396,\n14185=>23397,\n14186=>23398,\n14187=>23399,\n14188=>23400,\n14189=>23401,\n14190=>23402,\n14191=>23403,\n14192=>23404,\n14193=>23405,\n14194=>23406,\n14195=>23407,\n14196=>23408,\n14197=>23409,\n14198=>23410,\n14199=>23411,\n14200=>23412,\n14201=>23413,\n14202=>23414,\n14203=>23415,\n14204=>23416,\n14205=>23417,\n14206=>23418,\n14207=>23419,\n14208=>23420,\n14209=>23421,\n14210=>23422,\n14211=>23423,\n14212=>23424,\n14213=>23425,\n14214=>23426,\n14215=>23427,\n14216=>23428,\n14217=>23429,\n14218=>23430,\n14219=>23431,\n14220=>23432,\n14221=>23433,\n14222=>23434,\n14223=>23435,\n14224=>23436,\n14225=>23437,\n14226=>23438,\n14227=>23439,\n14228=>23440,\n14229=>23441,\n14230=>23442,\n14231=>23443,\n14232=>23444,\n14233=>23445,\n14234=>23446,\n14235=>23447,\n14236=>23448,\n14237=>23449,\n14238=>23450,\n14239=>23451,\n14240=>23452,\n14241=>23453,\n14242=>23454,\n14243=>23455,\n14244=>23456,\n14245=>23457,\n14246=>23458,\n14247=>23459,\n14248=>23460,\n14249=>23461,\n14250=>23462,\n14251=>23463,\n14252=>23464,\n14253=>23465,\n14254=>23466,\n14255=>23467,\n14256=>23468,\n14257=>23469,\n14258=>23470,\n14259=>23471,\n14260=>23472,\n14261=>23473,\n14262=>23474,\n14263=>23475,\n14264=>23476,\n14265=>23477,\n14266=>23478,\n14267=>23479,\n14268=>23480,\n14269=>23481,\n14270=>23482,\n14271=>23483,\n14272=>23484,\n14273=>23485,\n14274=>23486,\n14275=>23487,\n14276=>23488,\n14277=>23489,\n14278=>23490,\n14279=>23491,\n14280=>23492,\n14281=>23493,\n14282=>23494,\n14283=>23495,\n14284=>23496,\n14285=>23497,\n14286=>23498,\n14287=>23499,\n14288=>23500,\n14289=>23501,\n14290=>23502,\n14291=>23503,\n14292=>23504,\n14293=>23505,\n14294=>23506,\n14295=>23507,\n14296=>23508,\n14297=>23509,\n14298=>23510,\n14299=>23511,\n14300=>23512,\n14301=>23513,\n14302=>23514,\n14303=>23515,\n14304=>23516,\n14305=>23517,\n14306=>23518,\n14307=>23519,\n14308=>23520,\n14309=>23521,\n14310=>23522,\n14311=>23523,\n14312=>23524,\n14313=>23525,\n14314=>23526,\n14315=>23527,\n14316=>23528,\n14317=>23529,\n14318=>23530,\n14319=>23531,\n14320=>23532,\n14321=>23533,\n14322=>23534,\n14323=>23535,\n14324=>23536,\n14325=>23537,\n14326=>23538,\n14327=>23539,\n14328=>23540,\n14329=>23541,\n14330=>23542,\n14331=>23543,\n14332=>23544,\n14333=>23545,\n14334=>23546,\n14335=>23547,\n14336=>23548,\n14337=>23549,\n14338=>23550,\n14339=>23551,\n14340=>23552,\n14341=>23553,\n14342=>23554,\n14343=>23555,\n14344=>23556,\n14345=>23557,\n14346=>23558,\n14347=>23559,\n14348=>23560,\n14349=>23561,\n14350=>23562,\n14351=>23563,\n14352=>23564,\n14353=>23565,\n14354=>23566,\n14355=>23567,\n14356=>23568,\n14357=>23569,\n14358=>23570,\n14359=>23571,\n14360=>23572,\n14361=>23573,\n14362=>23574,\n14363=>23575,\n14364=>23576,\n14365=>23577,\n14366=>23578,\n14367=>23579,\n14368=>23580,\n14369=>23581,\n14370=>23582,\n14371=>23583,\n14372=>23584,\n14373=>23585,\n14374=>23586,\n14375=>23587,\n14376=>23588,\n14377=>23589,\n14378=>23590,\n14379=>23591,\n14380=>23592,\n14381=>23593,\n14382=>23594,\n14383=>23595,\n14384=>23596,\n14385=>23597,\n14386=>23598,\n14387=>23599,\n14388=>23600,\n14389=>23601,\n14390=>23602,\n14391=>23603,\n14392=>23604,\n14393=>23605,\n14394=>23606,\n14395=>23607,\n14396=>23608,\n14397=>23609,\n14398=>23610,\n14399=>23611,\n14400=>23612,\n14401=>23613,\n14402=>23614,\n14403=>23615,\n14404=>23616,\n14405=>23617,\n14406=>23618,\n14407=>23619,\n14408=>23620,\n14409=>23621,\n14410=>23622,\n14411=>23623,\n14412=>23624,\n14413=>23625,\n14414=>23626,\n14415=>23627,\n14416=>23628,\n14417=>23629,\n14418=>23630,\n14419=>23631,\n14420=>23632,\n14421=>23633,\n14422=>23634,\n14423=>23635,\n14424=>23636,\n14425=>23637,\n14426=>23638,\n14427=>23639,\n14428=>23640,\n14429=>23641,\n14430=>23642,\n14431=>23643,\n14432=>23644,\n14433=>23645,\n14434=>23646,\n14435=>23647,\n14436=>23648,\n14437=>23649,\n14438=>23650,\n14439=>23651,\n14440=>23652,\n14441=>23653,\n14442=>23654,\n14443=>23655,\n14444=>23656,\n14445=>23657,\n14446=>23658,\n14447=>23659,\n14448=>23660,\n14449=>23661,\n14450=>23662,\n14451=>23663,\n14452=>23664,\n14453=>23665,\n14454=>23666,\n14455=>23667,\n14456=>23668,\n14457=>23669,\n14458=>23670,\n14459=>23671,\n14460=>23672,\n14461=>23673,\n14462=>23674,\n14463=>23675,\n14464=>23676,\n14465=>23677,\n14466=>23678,\n14467=>23679,\n14468=>23680,\n14469=>23681,\n14470=>23682,\n14471=>23683,\n14472=>23684,\n14473=>23685,\n14474=>23686,\n14475=>23687,\n14476=>23688,\n14477=>23689,\n14478=>23690,\n14479=>23691,\n14480=>23692,\n14481=>23693,\n14482=>23694,\n14483=>23695,\n14484=>23696,\n14485=>23697,\n14486=>23698,\n14487=>23699,\n14488=>23700,\n14489=>23701,\n14490=>23702,\n14491=>23703,\n14492=>23704,\n14493=>23705,\n14494=>23706,\n14495=>23707,\n14496=>23708,\n14497=>23709,\n14498=>23710,\n14499=>23711,\n14500=>23712,\n14501=>23713,\n14502=>23714,\n14503=>23715,\n14504=>23716,\n14505=>23717,\n14506=>23718,\n14507=>23719,\n14508=>23720,\n14509=>23721,\n14510=>23722,\n14511=>23723,\n14512=>23724,\n14513=>23725,\n14514=>23726,\n14515=>23727,\n14516=>23728,\n14517=>23729,\n14518=>23730,\n14519=>23731,\n14520=>23732,\n14521=>23733,\n14522=>23734,\n14523=>23735,\n14524=>23736,\n14525=>23737,\n14526=>23738,\n14527=>23739,\n14528=>23740,\n14529=>23741,\n14530=>23742,\n14531=>23743,\n14532=>23744,\n14533=>23745,\n14534=>23746,\n14535=>23747,\n14536=>23748,\n14537=>23749,\n14538=>23750,\n14539=>23751,\n14540=>23752,\n14541=>23753,\n14542=>23754,\n14543=>23755,\n14544=>23756,\n14545=>23757,\n14546=>23758,\n14547=>23759,\n14548=>23760,\n14549=>23761,\n14550=>23762,\n14551=>23763,\n14552=>23764,\n14553=>23765,\n14554=>23766,\n14555=>23767,\n14556=>23768,\n14557=>23769,\n14558=>23770,\n14559=>23771,\n14560=>23772,\n14561=>23773,\n14562=>23774,\n14563=>23775,\n14564=>23776,\n14565=>23777,\n14566=>23778,\n14567=>23779,\n14568=>23780,\n14569=>23781,\n14570=>23782,\n14571=>23783,\n14572=>23784,\n14573=>23785,\n14574=>23786,\n14575=>23787,\n14576=>23788,\n14577=>23789,\n14578=>23790,\n14579=>23791,\n14580=>23792,\n14581=>23793,\n14582=>23794,\n14583=>23795,\n14584=>23796,\n14585=>23797,\n14586=>23798,\n14587=>23799,\n14588=>23800,\n14589=>23801,\n14590=>23802,\n14591=>23803,\n14592=>23804,\n14593=>23805,\n14594=>23806,\n14595=>23807,\n14596=>23808,\n14597=>23809,\n14598=>23810,\n14599=>23811,\n14600=>23812,\n14601=>23813,\n14602=>23814,\n14603=>23815,\n14604=>23816,\n14605=>23817,\n14606=>23818,\n14607=>23819,\n14608=>23820,\n14609=>23821,\n14610=>23822,\n14611=>23823,\n14612=>23824,\n14613=>23825,\n14614=>23826,\n14615=>23827,\n14617=>23828,\n14618=>23829,\n14619=>23830,\n14620=>23831,\n14621=>23832,\n14622=>23833,\n14623=>23834,\n14624=>23835,\n14625=>23836,\n14626=>23837,\n14627=>23838,\n14628=>23839,\n14629=>23840,\n14630=>23841,\n14631=>23842,\n14632=>23843,\n14633=>23844,\n14634=>23845,\n14635=>23846,\n14636=>23847,\n14637=>23848,\n14638=>23849,\n14639=>23850,\n14640=>23851,\n14641=>23852,\n14642=>23853,\n14643=>23854,\n14644=>23855,\n14645=>23856,\n14646=>23857,\n14647=>23858,\n14648=>23859,\n14649=>23860,\n14650=>23861,\n14651=>23862,\n14652=>23863,\n14653=>23864,\n14654=>23865,\n14655=>23866,\n14656=>23867,\n14657=>23868,\n14658=>23869,\n14659=>23870,\n14660=>23871,\n14661=>23872,\n14662=>23873,\n14663=>23874,\n14664=>23875,\n14665=>23876,\n14666=>23877,\n14667=>23878,\n14668=>23879,\n14669=>23880,\n14670=>23881,\n14671=>23882,\n14672=>23883,\n14673=>23884,\n14674=>23885,\n14675=>23886,\n14676=>23887,\n14677=>23888,\n14678=>23889,\n14679=>23890,\n14680=>23891,\n14681=>23892,\n14682=>23893,\n14683=>23894,\n14684=>23895,\n14685=>23896,\n14686=>23897,\n14687=>23898,\n14688=>23899,\n14689=>23900,\n14690=>23901,\n14691=>23902,\n14692=>23903,\n14693=>23904,\n14694=>23905,\n14695=>23906,\n14696=>23907,\n14697=>23908,\n14698=>23909,\n14699=>23910,\n14700=>23911,\n14701=>23912,\n14703=>23913,\n14704=>23914,\n14705=>23915,\n14706=>23916,\n14707=>23917,\n14708=>23918,\n14709=>23919,\n14710=>23920,\n14711=>23921,\n14712=>23922,\n14713=>23923,\n14714=>23924,\n14715=>23925,\n14716=>23926,\n14717=>23927,\n14718=>23928,\n14719=>23929,\n14720=>23930,\n14721=>23931,\n14722=>23932,\n14723=>23933,\n14724=>23934,\n14725=>23935,\n14726=>23936,\n14727=>23937,\n14728=>23938,\n14729=>23939,\n14730=>23940,\n14731=>23941,\n14732=>23942,\n14733=>23943,\n14734=>23944,\n14735=>23945,\n14736=>23946,\n14737=>23947,\n14738=>23948,\n14739=>23949,\n14740=>23950,\n14741=>23951,\n14742=>23952,\n14743=>23953,\n14744=>23954,\n14745=>23955,\n14746=>23956,\n14747=>23957,\n14748=>23958,\n14749=>23959,\n14750=>23960,\n14751=>23961,\n14752=>23962,\n14753=>23963,\n14754=>23964,\n14755=>23965,\n14756=>23966,\n14757=>23967,\n14758=>23968,\n14759=>23969,\n14760=>23970,\n14761=>23971,\n14762=>23972,\n14763=>23973,\n14764=>23974,\n14765=>23975,\n14766=>23976,\n14767=>23977,\n14768=>23978,\n14769=>23979,\n14770=>23980,\n14771=>23981,\n14772=>23982,\n14773=>23983,\n14774=>23984,\n14775=>23985,\n14776=>23986,\n14777=>23987,\n14778=>23988,\n14779=>23989,\n14780=>23990,\n14781=>23991,\n14782=>23992,\n14783=>23993,\n14784=>23994,\n14785=>23995,\n14786=>23996,\n14787=>23997,\n14788=>23998,\n14789=>23999,\n14790=>24000,\n14791=>24001,\n14792=>24002,\n14793=>24003,\n14794=>24004,\n14795=>24005,\n14796=>24006,\n14797=>24007,\n14798=>24008,\n14801=>24009,\n14802=>24010,\n14803=>24011,\n14804=>24012,\n14805=>24013,\n14806=>24014,\n14807=>24015,\n14808=>24016,\n14809=>24017,\n14810=>24018,\n14811=>24019,\n14812=>24020,\n14813=>24021,\n14814=>24022,\n14816=>24023,\n14817=>24024,\n14818=>24025,\n14819=>24026,\n14820=>24027,\n14821=>24028,\n14822=>24029,\n14823=>24030,\n14824=>24031,\n14825=>24032,\n14826=>24033,\n14827=>24034,\n14828=>24035,\n14829=>24036,\n14830=>24037,\n14831=>24038,\n14832=>24039,\n14833=>24040,\n14834=>24041,\n14835=>24042,\n14836=>24043,\n14837=>24044,\n14838=>24045,\n14839=>24046,\n14840=>24047,\n14841=>24048,\n14842=>24049,\n14843=>24050,\n14844=>24051,\n14845=>24052,\n14846=>24053,\n14847=>24054,\n14848=>24055,\n14849=>24056,\n14850=>24057,\n14851=>24058,\n14852=>24059,\n14853=>24060,\n14854=>24061,\n14855=>24062,\n14856=>24063,\n14857=>24064,\n14858=>24065,\n14859=>24066,\n14860=>24067,\n14861=>24068,\n14862=>24069,\n14863=>24070,\n14864=>24071,\n14865=>24072,\n14866=>24073,\n14867=>24074,\n14868=>24075,\n14869=>24076,\n14870=>24077,\n14871=>24078,\n14872=>24079,\n14873=>24080,\n14874=>24081,\n14875=>24082,\n14876=>24083,\n14877=>24084,\n14878=>24085,\n14879=>24086,\n14880=>24087,\n14881=>24088,\n14882=>24089,\n14883=>24090,\n14884=>24091,\n14885=>24092,\n14886=>24093,\n14887=>24094,\n14888=>24095,\n14889=>24096,\n14890=>24097,\n14891=>24098,\n14892=>24099,\n14893=>24100,\n14894=>24101,\n14895=>24102,\n14896=>24103,\n14897=>24104,\n14898=>24105,\n14899=>24106,\n14900=>24107,\n14901=>24108,\n14902=>24109,\n14903=>24110,\n14904=>24111,\n14905=>24112,\n14906=>24113,\n14907=>24114,\n14908=>24115,\n14909=>24116,\n14910=>24117,\n14911=>24118,\n14912=>24119,\n14913=>24120,\n14914=>24121,\n14915=>24122,\n14916=>24123,\n14917=>24124,\n14918=>24125,\n14919=>24126,\n14920=>24127,\n14921=>24128,\n14922=>24129,\n14923=>24130,\n14924=>24131,\n14925=>24132,\n14926=>24133,\n14927=>24134,\n14928=>24135,\n14929=>24136,\n14930=>24137,\n14931=>24138,\n14932=>24139,\n14933=>24140,\n14934=>24141,\n14935=>24142,\n14936=>24143,\n14937=>24144,\n14938=>24145,\n14939=>24146,\n14940=>24147,\n14941=>24148,\n14942=>24149,\n14943=>24150,\n14944=>24151,\n14945=>24152,\n14946=>24153,\n14947=>24154,\n14948=>24155,\n14949=>24156,\n14950=>24157,\n14951=>24158,\n14952=>24159,\n14953=>24160,\n14954=>24161,\n14955=>24162,\n14956=>24163,\n14957=>24164,\n14958=>24165,\n14959=>24166,\n14960=>24167,\n14961=>24168,\n14962=>24169,\n14964=>24170,\n14965=>24171,\n14966=>24172,\n14967=>24173,\n14968=>24174,\n14969=>24175,\n14970=>24176,\n14971=>24177,\n14972=>24178,\n14973=>24179,\n14974=>24180,\n14975=>24181,\n14976=>24182,\n14977=>24183,\n14978=>24184,\n14979=>24185,\n14980=>24186,\n14981=>24187,\n14982=>24188,\n14983=>24189,\n14984=>24190,\n14985=>24191,\n14986=>24192,\n14987=>24193,\n14988=>24194,\n14989=>24195,\n14990=>24196,\n14991=>24197,\n14992=>24198,\n14993=>24199,\n14994=>24200,\n14995=>24201,\n14996=>24202,\n14997=>24203,\n14998=>24204,\n14999=>24205,\n15000=>24206,\n15001=>24207,\n15002=>24208,\n15003=>24209,\n15004=>24210,\n15005=>24211,\n15006=>24212,\n15007=>24213,\n15008=>24214,\n15009=>24215,\n15010=>24216,\n15011=>24217,\n15012=>24218,\n15013=>24219,\n15014=>24220,\n15015=>24221,\n15016=>24222,\n15017=>24223,\n15018=>24224,\n15019=>24225,\n15020=>24226,\n15021=>24227,\n15022=>24228,\n15023=>24229,\n15024=>24230,\n15025=>24231,\n15026=>24232,\n15027=>24233,\n15028=>24234,\n15029=>24235,\n15030=>24236,\n15031=>24237,\n15032=>24238,\n15033=>24239,\n15034=>24240,\n15035=>24241,\n15036=>24242,\n15037=>24243,\n15038=>24244,\n15039=>24245,\n15040=>24246,\n15041=>24247,\n15042=>24248,\n15043=>24249,\n15044=>24250,\n15045=>24251,\n15046=>24252,\n15047=>24253,\n15048=>24254,\n15049=>24255,\n15050=>24256,\n15051=>24257,\n15052=>24258,\n15053=>24259,\n15054=>24260,\n15055=>24261,\n15056=>24262,\n15057=>24263,\n15058=>24264,\n15059=>24265,\n15060=>24266,\n15061=>24267,\n15062=>24268,\n15063=>24269,\n15064=>24270,\n15065=>24271,\n15066=>24272,\n15067=>24273,\n15068=>24274,\n15069=>24275,\n15070=>24276,\n15071=>24277,\n15072=>24278,\n15073=>24279,\n15074=>24280,\n15075=>24281,\n15076=>24282,\n15077=>24283,\n15078=>24284,\n15079=>24285,\n15080=>24286,\n15081=>24287,\n15082=>24288,\n15083=>24289,\n15084=>24290,\n15085=>24291,\n15086=>24292,\n15087=>24293,\n15088=>24294,\n15089=>24295,\n15090=>24296,\n15091=>24297,\n15092=>24298,\n15093=>24299,\n15094=>24300,\n15095=>24301,\n15096=>24302,\n15097=>24303,\n15098=>24304,\n15099=>24305,\n15100=>24306,\n15101=>24307,\n15102=>24308,\n15103=>24309,\n15104=>24310,\n15105=>24311,\n15106=>24312,\n15107=>24313,\n15108=>24314,\n15109=>24315,\n15110=>24316,\n15111=>24317,\n15112=>24318,\n15113=>24319,\n15114=>24320,\n15115=>24321,\n15116=>24322,\n15117=>24323,\n15118=>24324,\n15119=>24325,\n15120=>24326,\n15121=>24327,\n15122=>24328,\n15123=>24329,\n15124=>24330,\n15125=>24331,\n15126=>24332,\n15127=>24333,\n15128=>24334,\n15129=>24335,\n15130=>24336,\n15131=>24337,\n15132=>24338,\n15133=>24339,\n15134=>24340,\n15135=>24341,\n15136=>24342,\n15137=>24343,\n15138=>24344,\n15139=>24345,\n15140=>24346,\n15141=>24347,\n15142=>24348,\n15143=>24349,\n15144=>24350,\n15145=>24351,\n15146=>24352,\n15147=>24353,\n15148=>24354,\n15149=>24355,\n15150=>24356,\n15151=>24357,\n15152=>24358,\n15153=>24359,\n15154=>24360,\n15155=>24361,\n15156=>24362,\n15157=>24363,\n15158=>24364,\n15159=>24365,\n15160=>24366,\n15161=>24367,\n15162=>24368,\n15163=>24369,\n15164=>24370,\n15165=>24371,\n15166=>24372,\n15167=>24373,\n15168=>24374,\n15169=>24375,\n15170=>24376,\n15171=>24377,\n15172=>24378,\n15173=>24379,\n15174=>24380,\n15175=>24381,\n15176=>24382,\n15177=>24383,\n15178=>24384,\n15179=>24385,\n15180=>24386,\n15181=>24387,\n15183=>24388,\n15184=>24389,\n15185=>24390,\n15186=>24391,\n15187=>24392,\n15188=>24393,\n15189=>24394,\n15190=>24395,\n15191=>24396,\n15192=>24397,\n15193=>24398,\n15194=>24399,\n15195=>24400,\n15196=>24401,\n15197=>24402,\n15198=>24403,\n15199=>24404,\n15200=>24405,\n15201=>24406,\n15202=>24407,\n15203=>24408,\n15204=>24409,\n15205=>24410,\n15206=>24411,\n15207=>24412,\n15208=>24413,\n15209=>24414,\n15210=>24415,\n15211=>24416,\n15212=>24417,\n15213=>24418,\n15214=>24419,\n15215=>24420,\n15216=>24421,\n15217=>24422,\n15218=>24423,\n15219=>24424,\n15220=>24425,\n15221=>24426,\n15222=>24427,\n15223=>24428,\n15224=>24429,\n15225=>24430,\n15226=>24431,\n15227=>24432,\n15228=>24433,\n15229=>24434,\n15230=>24435,\n15231=>24436,\n15232=>24437,\n15233=>24438,\n15234=>24439,\n15235=>24440,\n15236=>24441,\n15237=>24442,\n15238=>24443,\n15239=>24444,\n15240=>24445,\n15241=>24446,\n15242=>24447,\n15243=>24448,\n15244=>24449,\n15245=>24450,\n15246=>24451,\n15247=>24452,\n15248=>24453,\n15249=>24454,\n15250=>24455,\n15251=>24456,\n15252=>24457,\n15253=>24458,\n15254=>24459,\n15255=>24460,\n15256=>24461,\n15257=>24462,\n15258=>24463,\n15259=>24464,\n15260=>24465,\n15261=>24466,\n15262=>24467,\n15263=>24468,\n15264=>24469,\n15265=>24470,\n15266=>24471,\n15267=>24472,\n15268=>24473,\n15269=>24474,\n15270=>24475,\n15271=>24476,\n15272=>24477,\n15273=>24478,\n15274=>24479,\n15275=>24480,\n15276=>24481,\n15277=>24482,\n15278=>24483,\n15279=>24484,\n15280=>24485,\n15281=>24486,\n15282=>24487,\n15283=>24488,\n15284=>24489,\n15285=>24490,\n15286=>24491,\n15287=>24492,\n15288=>24493,\n15289=>24494,\n15290=>24495,\n15291=>24496,\n15292=>24497,\n15293=>24498,\n15294=>24499,\n15295=>24500,\n15296=>24501,\n15297=>24502,\n15298=>24503,\n15299=>24504,\n15300=>24505,\n15301=>24506,\n15302=>24507,\n15303=>24508,\n15304=>24509,\n15305=>24510,\n15306=>24511,\n15307=>24512,\n15308=>24513,\n15309=>24514,\n15310=>24515,\n15311=>24516,\n15312=>24517,\n15313=>24518,\n15314=>24519,\n15315=>24520,\n15316=>24521,\n15317=>24522,\n15318=>24523,\n15319=>24524,\n15320=>24525,\n15321=>24526,\n15322=>24527,\n15323=>24528,\n15324=>24529,\n15325=>24530,\n15326=>24531,\n15327=>24532,\n15328=>24533,\n15329=>24534,\n15330=>24535,\n15331=>24536,\n15332=>24537,\n15333=>24538,\n15334=>24539,\n15335=>24540,\n15336=>24541,\n15337=>24542,\n15338=>24543,\n15339=>24544,\n15340=>24545,\n15341=>24546,\n15342=>24547,\n15343=>24548,\n15344=>24549,\n15345=>24550,\n15346=>24551,\n15347=>24552,\n15348=>24553,\n15349=>24554,\n15350=>24555,\n15351=>24556,\n15352=>24557,\n15353=>24558,\n15354=>24559,\n15355=>24560,\n15356=>24561,\n15357=>24562,\n15358=>24563,\n15359=>24564,\n15360=>24565,\n15361=>24566,\n15362=>24567,\n15363=>24568,\n15364=>24569,\n15365=>24570,\n15366=>24571,\n15367=>24572,\n15368=>24573,\n15369=>24574,\n15370=>24575,\n15371=>24576,\n15372=>24577,\n15373=>24578,\n15374=>24579,\n15375=>24580,\n15376=>24581,\n15377=>24582,\n15378=>24583,\n15379=>24584,\n15380=>24585,\n15381=>24586,\n15382=>24587,\n15383=>24588,\n15384=>24589,\n15385=>24590,\n15386=>24591,\n15387=>24592,\n15388=>24593,\n15389=>24594,\n15390=>24595,\n15391=>24596,\n15392=>24597,\n15393=>24598,\n15394=>24599,\n15395=>24600,\n15396=>24601,\n15397=>24602,\n15398=>24603,\n15399=>24604,\n15400=>24605,\n15401=>24606,\n15402=>24607,\n15403=>24608,\n15404=>24609,\n15405=>24610,\n15406=>24611,\n15407=>24612,\n15408=>24613,\n15409=>24614,\n15410=>24615,\n15411=>24616,\n15412=>24617,\n15413=>24618,\n15414=>24619,\n15415=>24620,\n15416=>24621,\n15417=>24622,\n15418=>24623,\n15419=>24624,\n15420=>24625,\n15421=>24626,\n15422=>24627,\n15423=>24628,\n15424=>24629,\n15425=>24630,\n15426=>24631,\n15427=>24632,\n15428=>24633,\n15429=>24634,\n15430=>24635,\n15431=>24636,\n15432=>24637,\n15433=>24638,\n15434=>24639,\n15435=>24640,\n15436=>24641,\n15437=>24642,\n15438=>24643,\n15439=>24644,\n15440=>24645,\n15441=>24646,\n15442=>24647,\n15443=>24648,\n15444=>24649,\n15445=>24650,\n15446=>24651,\n15447=>24652,\n15448=>24653,\n15449=>24654,\n15450=>24655,\n15451=>24656,\n15452=>24657,\n15453=>24658,\n15454=>24659,\n15455=>24660,\n15456=>24661,\n15457=>24662,\n15458=>24663,\n15459=>24664,\n15460=>24665,\n15461=>24666,\n15462=>24667,\n15463=>24668,\n15464=>24669,\n15465=>24670,\n15466=>24671,\n15467=>24672,\n15468=>24673,\n15469=>24674,\n15471=>24675,\n15472=>24676,\n15473=>24677,\n15474=>24678,\n15475=>24679,\n15476=>24680,\n15477=>24681,\n15478=>24682,\n15479=>24683,\n15480=>24684,\n15481=>24685,\n15482=>24686,\n15483=>24687,\n15484=>24688,\n15485=>24689,\n15486=>24690,\n15487=>24691,\n15488=>24692,\n15489=>24693,\n15490=>24694,\n15491=>24695,\n15492=>24696,\n15493=>24697,\n15494=>24698,\n15495=>24699,\n15496=>24700,\n15497=>24701,\n15498=>24702,\n15499=>24703,\n15500=>24704,\n15501=>24705,\n15502=>24706,\n15503=>24707,\n15504=>24708,\n15505=>24709,\n15506=>24710,\n15507=>24711,\n15508=>24712,\n15509=>24713,\n15510=>24714,\n15511=>24715,\n15512=>24716,\n15513=>24717,\n15514=>24718,\n15515=>24719,\n15516=>24720,\n15517=>24721,\n15518=>24722,\n15519=>24723,\n15520=>24724,\n15521=>24725,\n15522=>24726,\n15523=>24727,\n15524=>24728,\n15525=>24729,\n15526=>24730,\n15527=>24731,\n15528=>24732,\n15529=>24733,\n15530=>24734,\n15531=>24735,\n15532=>24736,\n15533=>24737,\n15534=>24738,\n15535=>24739,\n15536=>24740,\n15537=>24741,\n15538=>24742,\n15539=>24743,\n15540=>24744,\n15541=>24745,\n15542=>24746,\n15543=>24747,\n15544=>24748,\n15545=>24749,\n15546=>24750,\n15547=>24751,\n15548=>24752,\n15549=>24753,\n15550=>24754,\n15551=>24755,\n15552=>24756,\n15553=>24757,\n15554=>24758,\n15555=>24759,\n15556=>24760,\n15557=>24761,\n15558=>24762,\n15559=>24763,\n15560=>24764,\n15561=>24765,\n15562=>24766,\n15563=>24767,\n15564=>24768,\n15565=>24769,\n15566=>24770,\n15567=>24771,\n15568=>24772,\n15569=>24773,\n15570=>24774,\n15571=>24775,\n15572=>24776,\n15573=>24777,\n15574=>24778,\n15575=>24779,\n15576=>24780,\n15577=>24781,\n15578=>24782,\n15579=>24783,\n15580=>24784,\n15581=>24785,\n15582=>24786,\n15583=>24787,\n15585=>24788,\n15586=>24789,\n15587=>24790,\n15588=>24791,\n15589=>24792,\n15590=>24793,\n15591=>24794,\n15592=>24795,\n15593=>24796,\n15594=>24797,\n15595=>24798,\n15596=>24799,\n15597=>24800,\n15598=>24801,\n15599=>24802,\n15600=>24803,\n15601=>24804,\n15602=>24805,\n15603=>24806,\n15604=>24807,\n15605=>24808,\n15606=>24809,\n15607=>24810,\n15608=>24811,\n15609=>24812,\n15610=>24813,\n15611=>24814,\n15612=>24815,\n15613=>24816,\n15614=>24817,\n15615=>24818,\n15616=>24819,\n15617=>24820,\n15618=>24821,\n15619=>24822,\n15620=>24823,\n15621=>24824,\n15622=>24825,\n15623=>24826,\n15624=>24827,\n15625=>24828,\n15626=>24829,\n15627=>24830,\n15628=>24831,\n15629=>24832,\n15630=>24833,\n15631=>24834,\n15632=>24835,\n15633=>24836,\n15634=>24837,\n15635=>24838,\n15636=>24839,\n15637=>24840,\n15638=>24841,\n15639=>24842,\n15640=>24843,\n15641=>24844,\n15642=>24845,\n15643=>24846,\n15644=>24847,\n15645=>24848,\n15646=>24849,\n15647=>24850,\n15648=>24851,\n15649=>24852,\n15650=>24853,\n15651=>24854,\n15652=>24855,\n15653=>24856,\n15654=>24857,\n15655=>24858,\n15656=>24859,\n15657=>24860,\n15658=>24861,\n15659=>24862,\n15660=>24863,\n15661=>24864,\n15662=>24865,\n15663=>24866,\n15664=>24867,\n15665=>24868,\n15666=>24869,\n15667=>24870,\n15668=>24871,\n15669=>24872,\n15670=>24873,\n15671=>24874,\n15672=>24875,\n15673=>24876,\n15674=>24877,\n15675=>24878,\n15676=>24879,\n15677=>24880,\n15678=>24881,\n15679=>24882,\n15680=>24883,\n15681=>24884,\n15682=>24885,\n15683=>24886,\n15684=>24887,\n15685=>24888,\n15686=>24889,\n15687=>24890,\n15688=>24891,\n15689=>24892,\n15690=>24893,\n15691=>24894,\n15692=>24895,\n15693=>24896,\n15694=>24897,\n15695=>24898,\n15696=>24899,\n15697=>24900,\n15698=>24901,\n15699=>24902,\n15700=>24903,\n15701=>24904,\n15702=>24905,\n15703=>24906,\n15704=>24907,\n15705=>24908,\n15706=>24909,\n15707=>24910,\n15708=>24911,\n15709=>24912,\n15710=>24913,\n15711=>24914,\n15712=>24915,\n15713=>24916,\n15714=>24917,\n15715=>24918,\n15716=>24919,\n15717=>24920,\n15718=>24921,\n15719=>24922,\n15720=>24923,\n15721=>24924,\n15722=>24925,\n15723=>24926,\n15724=>24927,\n15725=>24928,\n15726=>24929,\n15727=>24930,\n15728=>24931,\n15729=>24932,\n15730=>24933,\n15731=>24934,\n15732=>24935,\n15733=>24936,\n15734=>24937,\n15735=>24938,\n15736=>24939,\n15737=>24940,\n15738=>24941,\n15739=>24942,\n15740=>24943,\n15741=>24944,\n15742=>24945,\n15743=>24946,\n15744=>24947,\n15745=>24948,\n15746=>24949,\n15747=>24950,\n15748=>24951,\n15749=>24952,\n15750=>24953,\n15751=>24954,\n15752=>24955,\n15753=>24956,\n15754=>24957,\n15755=>24958,\n15756=>24959,\n15757=>24960,\n15758=>24961,\n15759=>24962,\n15760=>24963,\n15761=>24964,\n15762=>24965,\n15763=>24966,\n15764=>24967,\n15765=>24968,\n15766=>24969,\n15767=>24970,\n15768=>24971,\n15769=>24972,\n15770=>24973,\n15771=>24974,\n15772=>24975,\n15773=>24976,\n15774=>24977,\n15775=>24978,\n15776=>24979,\n15777=>24980,\n15778=>24981,\n15779=>24982,\n15780=>24983,\n15781=>24984,\n15782=>24985,\n15783=>24986,\n15784=>24987,\n15785=>24988,\n15786=>24989,\n15787=>24990,\n15788=>24991,\n15789=>24992,\n15790=>24993,\n15791=>24994,\n15792=>24995,\n15793=>24996,\n15794=>24997,\n15795=>24998,\n15796=>24999,\n15797=>25000,\n15798=>25001,\n15799=>25002,\n15800=>25003,\n15801=>25004,\n15802=>25005,\n15803=>25006,\n15804=>25007,\n15805=>25008,\n15806=>25009,\n15807=>25010,\n15808=>25011,\n15809=>25012,\n15810=>25013,\n15811=>25014,\n15812=>25015,\n15813=>25016,\n15814=>25017,\n15815=>25018,\n15816=>25019,\n15817=>25020,\n15818=>25021,\n15819=>25022,\n15820=>25023,\n15821=>25024,\n15822=>25025,\n15823=>25026,\n15824=>25027,\n15825=>25028,\n15826=>25029,\n15827=>25030,\n15828=>25031,\n15829=>25032,\n15830=>25033,\n15831=>25034,\n15832=>25035,\n15833=>25036,\n15834=>25037,\n15835=>25038,\n15836=>25039,\n15837=>25040,\n15838=>25041,\n15839=>25042,\n15840=>25043,\n15841=>25044,\n15842=>25045,\n15843=>25046,\n15844=>25047,\n15845=>25048,\n15846=>25049,\n15847=>25050,\n15848=>25051,\n15849=>25052,\n15850=>25053,\n15851=>25054,\n15852=>25055,\n15853=>25056,\n15854=>25057,\n15855=>25058,\n15856=>25059,\n15857=>25060,\n15858=>25061,\n15859=>25062,\n15860=>25063,\n15861=>25064,\n15862=>25065,\n15863=>25066,\n15864=>25067,\n15865=>25068,\n15866=>25069,\n15867=>25070,\n15868=>25071,\n15869=>25072,\n15870=>25073,\n15871=>25074,\n15872=>25075,\n15873=>25076,\n15874=>25077,\n15875=>25078,\n15876=>25079,\n15877=>25080,\n15878=>25081,\n15879=>25082,\n15880=>25083,\n15881=>25084,\n15882=>25085,\n15883=>25086,\n15884=>25087,\n15885=>25088,\n15886=>25089,\n15887=>25090,\n15888=>25091,\n15889=>25092,\n15890=>25093,\n15891=>25094,\n15892=>25095,\n15893=>25096,\n15894=>25097,\n15895=>25098,\n15896=>25099,\n15897=>25100,\n15898=>25101,\n15899=>25102,\n15900=>25103,\n15901=>25104,\n15902=>25105,\n15903=>25106,\n15904=>25107,\n15905=>25108,\n15906=>25109,\n15907=>25110,\n15908=>25111,\n15909=>25112,\n15910=>25113,\n15911=>25114,\n15912=>25115,\n15913=>25116,\n15914=>25117,\n15915=>25118,\n15916=>25119,\n15917=>25120,\n15918=>25121,\n15919=>25122,\n15920=>25123,\n15921=>25124,\n15922=>25125,\n15923=>25126,\n15924=>25127,\n15925=>25128,\n15926=>25129,\n15927=>25130,\n15928=>25131,\n15929=>25132,\n15930=>25133,\n15931=>25134,\n15932=>25135,\n15933=>25136,\n15934=>25137,\n15935=>25138,\n15936=>25139,\n15937=>25140,\n15938=>25141,\n15939=>25142,\n15940=>25143,\n15941=>25144,\n15942=>25145,\n15943=>25146,\n15944=>25147,\n15945=>25148,\n15946=>25149,\n15947=>25150,\n15948=>25151,\n15949=>25152,\n15950=>25153,\n15951=>25154,\n15952=>25155,\n15953=>25156,\n15954=>25157,\n15955=>25158,\n15956=>25159,\n15957=>25160,\n15958=>25161,\n15959=>25162,\n15960=>25163,\n15961=>25164,\n15962=>25165,\n15963=>25166,\n15964=>25167,\n15965=>25168,\n15966=>25169,\n15967=>25170,\n15968=>25171,\n15969=>25172,\n15970=>25173,\n15971=>25174,\n15972=>25175,\n15973=>25176,\n15974=>25177,\n15975=>25178,\n15976=>25179,\n15977=>25180,\n15978=>25181,\n15979=>25182,\n15980=>25183,\n15981=>25184,\n15982=>25185,\n15983=>25186,\n15984=>25187,\n15985=>25188,\n15986=>25189,\n15987=>25190,\n15988=>25191,\n15989=>25192,\n15990=>25193,\n15991=>25194,\n15992=>25195,\n15993=>25196,\n15994=>25197,\n15995=>25198,\n15996=>25199,\n15997=>25200,\n15998=>25201,\n15999=>25202,\n16000=>25203,\n16001=>25204,\n16002=>25205,\n16003=>25206,\n16004=>25207,\n16005=>25208,\n16006=>25209,\n16007=>25210,\n16008=>25211,\n16009=>25212,\n16010=>25213,\n16011=>25214,\n16012=>25215,\n16013=>25216,\n16014=>25217,\n16015=>25218,\n16016=>25219,\n16017=>25220,\n16018=>25221,\n16019=>25222,\n16020=>25223,\n16021=>25224,\n16022=>25225,\n16023=>25226,\n16024=>25227,\n16025=>25228,\n16026=>25229,\n16027=>25230,\n16028=>25231,\n16029=>25232,\n16030=>25233,\n16031=>25234,\n16032=>25235,\n16033=>25236,\n16034=>25237,\n16035=>25238,\n16036=>25239,\n16037=>25240,\n16038=>25241,\n16039=>25242,\n16040=>25243,\n16041=>25244,\n16042=>25245,\n16043=>25246,\n16044=>25247,\n16045=>25248,\n16046=>25249,\n16047=>25250,\n16048=>25251,\n16049=>25252,\n16050=>25253,\n16051=>25254,\n16052=>25255,\n16053=>25256,\n16054=>25257,\n16055=>25258,\n16056=>25259,\n16057=>25260,\n16058=>25261,\n16059=>25262,\n16060=>25263,\n16061=>25264,\n16062=>25265,\n16063=>25266,\n16064=>25267,\n16065=>25268,\n16066=>25269,\n16067=>25270,\n16068=>25271,\n16069=>25272,\n16070=>25273,\n16071=>25274,\n16072=>25275,\n16073=>25276,\n16074=>25277,\n16075=>25278,\n16076=>25279,\n16077=>25280,\n16078=>25281,\n16079=>25282,\n16080=>25283,\n16081=>25284,\n16082=>25285,\n16083=>25286,\n16084=>25287,\n16085=>25288,\n16086=>25289,\n16087=>25290,\n16088=>25291,\n16089=>25292,\n16090=>25293,\n16091=>25294,\n16092=>25295,\n16093=>25296,\n16094=>25297,\n16095=>25298,\n16096=>25299,\n16097=>25300,\n16098=>25301,\n16099=>25302,\n16100=>25303,\n16101=>25304,\n16102=>25305,\n16103=>25306,\n16104=>25307,\n16105=>25308,\n16106=>25309,\n16107=>25310,\n16108=>25311,\n16109=>25312,\n16110=>25313,\n16111=>25314,\n16112=>25315,\n16113=>25316,\n16114=>25317,\n16115=>25318,\n16116=>25319,\n16117=>25320,\n16118=>25321,\n16119=>25322,\n16120=>25323,\n16121=>25324,\n16122=>25325,\n16123=>25326,\n16124=>25327,\n16125=>25328,\n16126=>25329,\n16127=>25330,\n16128=>25331,\n16129=>25332,\n16130=>25333,\n16131=>25334,\n16132=>25335,\n16133=>25336,\n16134=>25337,\n16135=>25338,\n16136=>25339,\n16137=>25340,\n16138=>25341,\n16139=>25342,\n16140=>25343,\n16141=>25344,\n16142=>25345,\n16143=>25346,\n16144=>25347,\n16145=>25348,\n16146=>25349,\n16147=>25350,\n16148=>25351,\n16149=>25352,\n16150=>25353,\n16151=>25354,\n16152=>25355,\n16153=>25356,\n16154=>25357,\n16155=>25358,\n16156=>25359,\n16157=>25360,\n16158=>25361,\n16159=>25362,\n16160=>25363,\n16161=>25364,\n16162=>25365,\n16163=>25366,\n16164=>25367,\n16165=>25368,\n16166=>25369,\n16167=>25370,\n16168=>25371,\n16169=>25372,\n16170=>25373,\n16171=>25374,\n16172=>25375,\n16173=>25376,\n16174=>25377,\n16175=>25378,\n16176=>25379,\n16177=>25380,\n16178=>25381,\n16179=>25382,\n16180=>25383,\n16181=>25384,\n16182=>25385,\n16183=>25386,\n16184=>25387,\n16185=>25388,\n16186=>25389,\n16187=>25390,\n16188=>25391,\n16189=>25392,\n16190=>25393,\n16191=>25394,\n16192=>25395,\n16193=>25396,\n16194=>25397,\n16195=>25398,\n16196=>25399,\n16197=>25400,\n16198=>25401,\n16199=>25402,\n16200=>25403,\n16201=>25404,\n16202=>25405,\n16203=>25406,\n16204=>25407,\n16205=>25408,\n16206=>25409,\n16207=>25410,\n16208=>25411,\n16209=>25412,\n16210=>25413,\n16211=>25414,\n16212=>25415,\n16213=>25416,\n16214=>25417,\n16215=>25418,\n16216=>25419,\n16217=>25420,\n16218=>25421,\n16219=>25422,\n16220=>25423,\n16221=>25424,\n16222=>25425,\n16223=>25426,\n16224=>25427,\n16225=>25428,\n16226=>25429,\n16227=>25430,\n16228=>25431,\n16229=>25432,\n16230=>25433,\n16231=>25434,\n16232=>25435,\n16233=>25436,\n16234=>25437,\n16235=>25438,\n16236=>25439,\n16237=>25440,\n16238=>25441,\n16239=>25442,\n16240=>25443,\n16241=>25444,\n16242=>25445,\n16243=>25446,\n16244=>25447,\n16245=>25448,\n16246=>25449,\n16247=>25450,\n16248=>25451,\n16249=>25452,\n16250=>25453,\n16251=>25454,\n16252=>25455,\n16253=>25456,\n16254=>25457,\n16255=>25458,\n16256=>25459,\n16257=>25460,\n16258=>25461,\n16259=>25462,\n16260=>25463,\n16261=>25464,\n16262=>25465,\n16263=>25466,\n16264=>25467,\n16265=>25468,\n16266=>25469,\n16267=>25470,\n16268=>25471,\n16269=>25472,\n16270=>25473,\n16271=>25474,\n16272=>25475,\n16273=>25476,\n16274=>25477,\n16275=>25478,\n16276=>25479,\n16277=>25480,\n16278=>25481,\n16279=>25482,\n16280=>25483,\n16281=>25484,\n16282=>25485,\n16283=>25486,\n16284=>25487,\n16285=>25488,\n16286=>25489,\n16287=>25490,\n16288=>25491,\n16289=>25492,\n16290=>25493,\n16291=>25494,\n16292=>25495,\n16293=>25496,\n16294=>25497,\n16295=>25498,\n16296=>25499,\n16297=>25500,\n16298=>25501,\n16299=>25502,\n16300=>25503,\n16301=>25504,\n16302=>25505,\n16303=>25506,\n16304=>25507,\n16305=>25508,\n16306=>25509,\n16307=>25510,\n16308=>25511,\n16309=>25512,\n16310=>25513,\n16311=>25514,\n16312=>25515,\n16313=>25516,\n16314=>25517,\n16315=>25518,\n16316=>25519,\n16317=>25520,\n16318=>25521,\n16319=>25522,\n16320=>25523,\n16321=>25524,\n16322=>25525,\n16323=>25526,\n16324=>25527,\n16325=>25528,\n16326=>25529,\n16327=>25530,\n16328=>25531,\n16329=>25532,\n16330=>25533,\n16331=>25534,\n16332=>25535,\n16333=>25536,\n16334=>25537,\n16335=>25538,\n16336=>25539,\n16337=>25540,\n16338=>25541,\n16339=>25542,\n16340=>25543,\n16341=>25544,\n16342=>25545,\n16343=>25546,\n16344=>25547,\n16345=>25548,\n16346=>25549,\n16347=>25550,\n16348=>25551,\n16349=>25552,\n16350=>25553,\n16351=>25554,\n16352=>25555,\n16353=>25556,\n16354=>25557,\n16355=>25558,\n16356=>25559,\n16357=>25560,\n16358=>25561,\n16359=>25562,\n16360=>25563,\n16361=>25564,\n16362=>25565,\n16363=>25566,\n16364=>25567,\n16365=>25568,\n16366=>25569,\n16367=>25570,\n16368=>25571,\n16369=>25572,\n16370=>25573,\n16371=>25574,\n16372=>25575,\n16373=>25576,\n16374=>25577,\n16375=>25578,\n16376=>25579,\n16377=>25580,\n16378=>25581,\n16379=>25582,\n16380=>25583,\n16381=>25584,\n16382=>25585,\n16383=>25586,\n16384=>25587,\n16385=>25588,\n16386=>25589,\n16387=>25590,\n16388=>25591,\n16389=>25592,\n16390=>25593,\n16391=>25594,\n16392=>25595,\n16393=>25596,\n16394=>25597,\n16395=>25598,\n16396=>25599,\n16397=>25600,\n16398=>25601,\n16399=>25602,\n16400=>25603,\n16401=>25604,\n16402=>25605,\n16403=>25606,\n16404=>25607,\n16405=>25608,\n16406=>25609,\n16407=>25610,\n16408=>25611,\n16409=>25612,\n16410=>25613,\n16411=>25614,\n16412=>25615,\n16413=>25616,\n16414=>25617,\n16415=>25618,\n16416=>25619,\n16417=>25620,\n16418=>25621,\n16419=>25622,\n16420=>25623,\n16421=>25624,\n16422=>25625,\n16423=>25626,\n16424=>25627,\n16425=>25628,\n16426=>25629,\n16427=>25630,\n16428=>25631,\n16429=>25632,\n16430=>25633,\n16431=>25634,\n16432=>25635,\n16433=>25636,\n16434=>25637,\n16435=>25638,\n16436=>25639,\n16437=>25640,\n16438=>25641,\n16439=>25642,\n16440=>25643,\n16441=>25644,\n16442=>25645,\n16443=>25646,\n16444=>25647,\n16445=>25648,\n16446=>25649,\n16447=>25650,\n16448=>25651,\n16449=>25652,\n16450=>25653,\n16451=>25654,\n16452=>25655,\n16453=>25656,\n16454=>25657,\n16455=>25658,\n16456=>25659,\n16457=>25660,\n16458=>25661,\n16459=>25662,\n16460=>25663,\n16461=>25664,\n16462=>25665,\n16463=>25666,\n16464=>25667,\n16465=>25668,\n16466=>25669,\n16467=>25670,\n16468=>25671,\n16469=>25672,\n16471=>25673,\n16472=>25674,\n16473=>25675,\n16474=>25676,\n16475=>25677,\n16476=>25678,\n16477=>25679,\n16478=>25680,\n16479=>25681,\n16480=>25682,\n16481=>25683,\n16482=>25684,\n16483=>25685,\n16484=>25686,\n16485=>25687,\n16486=>25688,\n16487=>25689,\n16488=>25690,\n16489=>25691,\n16490=>25692,\n16491=>25693,\n16492=>25694,\n16493=>25695,\n16494=>25696,\n16495=>25697,\n16496=>25698,\n16497=>25699,\n16498=>25700,\n16499=>25701,\n16500=>25702,\n16501=>25703,\n16502=>25704,\n16503=>25705,\n16504=>25706,\n16505=>25707,\n16506=>25708,\n16507=>25709,\n16508=>25710,\n16509=>25711,\n16510=>25712,\n16511=>25713,\n16512=>25714,\n16513=>25715,\n16514=>25716,\n16515=>25717,\n16516=>25718,\n16517=>25719,\n16518=>25720,\n16519=>25721,\n16520=>25722,\n16521=>25723,\n16522=>25724,\n16523=>25725,\n16524=>25726,\n16525=>25727,\n16526=>25728,\n16527=>25729,\n16528=>25730,\n16529=>25731,\n16530=>25732,\n16531=>25733,\n16532=>25734,\n16533=>25735,\n16534=>25736,\n16535=>25737,\n16536=>25738,\n16537=>25739,\n16538=>25740,\n16539=>25741,\n16540=>25742,\n16541=>25743,\n16542=>25744,\n16543=>25745,\n16544=>25746,\n16545=>25747,\n16546=>25748,\n16547=>25749,\n16548=>25750,\n16549=>25751,\n16550=>25752,\n16551=>25753,\n16552=>25754,\n16553=>25755,\n16554=>25756,\n16555=>25757,\n16556=>25758,\n16557=>25759,\n16558=>25760,\n16559=>25761,\n16560=>25762,\n16561=>25763,\n16562=>25764,\n16563=>25765,\n16564=>25766,\n16565=>25767,\n16566=>25768,\n16567=>25769,\n16568=>25770,\n16569=>25771,\n16570=>25772,\n16571=>25773,\n16572=>25774,\n16573=>25775,\n16574=>25776,\n16575=>25777,\n16576=>25778,\n16577=>25779,\n16578=>25780,\n16579=>25781,\n16580=>25782,\n16581=>25783,\n16582=>25784,\n16583=>25785,\n16584=>25786,\n16585=>25787,\n16586=>25788,\n16587=>25789,\n16588=>25790,\n16589=>25791,\n16590=>25792,\n16591=>25793,\n16592=>25794,\n16593=>25795,\n16594=>25796,\n16595=>25797,\n16596=>25798,\n16597=>25799,\n16598=>25800,\n16599=>25801,\n16600=>25802,\n16601=>25803,\n16602=>25804,\n16603=>25805,\n16604=>25806,\n16605=>25807,\n16606=>25808,\n16607=>25809,\n16608=>25810,\n16609=>25811,\n16610=>25812,\n16611=>25813,\n16612=>25814,\n16613=>25815,\n16614=>25816,\n16615=>25817,\n16616=>25818,\n16617=>25819,\n16618=>25820,\n16619=>25821,\n16620=>25822,\n16621=>25823,\n16622=>25824,\n16623=>25825,\n16624=>25826,\n16625=>25827,\n16626=>25828,\n16627=>25829,\n16628=>25830,\n16629=>25831,\n16630=>25832,\n16631=>25833,\n16632=>25834,\n16633=>25835,\n16634=>25836,\n16635=>25837,\n16636=>25838,\n16637=>25839,\n16638=>25840,\n16639=>25841,\n16640=>25842,\n16641=>25843,\n16642=>25844,\n16643=>25845,\n16644=>25846,\n16645=>25847,\n16646=>25848,\n16647=>25849,\n16648=>25850,\n16649=>25851,\n16650=>25852,\n16651=>25853,\n16652=>25854,\n16653=>25855,\n16654=>25856,\n16655=>25857,\n16656=>25858,\n16657=>25859,\n16658=>25860,\n16659=>25861,\n16660=>25862,\n16661=>25863,\n16662=>25864,\n16663=>25865,\n16664=>25866,\n16665=>25867,\n16666=>25868,\n16667=>25869,\n16668=>25870,\n16669=>25871,\n16670=>25872,\n16671=>25873,\n16672=>25874,\n16673=>25875,\n16674=>25876,\n16675=>25877,\n16676=>25878,\n16677=>25879,\n16678=>25880,\n16679=>25881,\n16680=>25882,\n16681=>25883,\n16682=>25884,\n16683=>25885,\n16684=>25886,\n16685=>25887,\n16686=>25888,\n16687=>25889,\n16688=>25890,\n16689=>25891,\n16690=>25892,\n16691=>25893,\n16692=>25894,\n16693=>25895,\n16694=>25896,\n16695=>25897,\n16696=>25898,\n16697=>25899,\n16698=>25900,\n16699=>25901,\n16700=>25902,\n16701=>25903,\n16702=>25904,\n16703=>25905,\n16704=>25906,\n16705=>25907,\n16706=>25908,\n16707=>25909,\n16708=>25910,\n16709=>25911,\n16710=>25912,\n16711=>25913,\n16712=>25914,\n16713=>25915,\n16714=>25916,\n16715=>25917,\n16716=>25918,\n16717=>25919,\n16718=>25920,\n16719=>25921,\n16720=>25922,\n16721=>25923,\n16722=>25924,\n16723=>25925,\n16724=>25926,\n16725=>25927,\n16726=>25928,\n16727=>25929,\n16728=>25930,\n16729=>25931,\n16730=>25932,\n16731=>25933,\n16732=>25934,\n16733=>25935,\n16734=>25936,\n16736=>25937,\n16737=>25938,\n16738=>25939,\n16739=>25940,\n16740=>25941,\n16741=>25942,\n16742=>25943,\n16743=>25944,\n16744=>25945,\n16745=>25946,\n16746=>25947,\n16747=>25948,\n16748=>25949,\n16749=>25950,\n16750=>25951,\n16751=>25952,\n16752=>25953,\n16753=>25954,\n16754=>25955,\n16755=>25956,\n16756=>25957,\n16757=>25958,\n16758=>25959,\n16759=>25960,\n16760=>25961,\n16761=>25962,\n16762=>25963,\n16763=>25964,\n16764=>25965,\n16765=>25966,\n16766=>25967,\n16767=>25968,\n16768=>25969,\n16769=>25970,\n16770=>25971,\n16771=>25972,\n16772=>25973,\n16773=>25974,\n16774=>25975,\n16775=>25976,\n16776=>25977,\n16777=>25978,\n16778=>25979,\n16779=>25980,\n16780=>25981,\n16781=>25982,\n16782=>25983,\n16783=>25984,\n16784=>25985,\n16785=>25986,\n16786=>25987,\n16787=>25988,\n16788=>25989,\n16789=>25990,\n16790=>25991,\n16791=>25992,\n16792=>25993,\n16793=>25994,\n16794=>25995,\n16795=>25996,\n16796=>25997,\n16797=>25998,\n16798=>25999,\n16799=>26000,\n16800=>26001,\n16801=>26002,\n16802=>26003,\n16803=>26004,\n16804=>26005,\n16805=>26006,\n16806=>26007,\n16807=>26008,\n16808=>26009,\n16809=>26010,\n16810=>26011,\n16811=>26012,\n16812=>26013,\n16813=>26014,\n16814=>26015,\n16815=>26016,\n16816=>26017,\n16817=>26018,\n16818=>26019,\n16819=>26020,\n16820=>26021,\n16821=>26022,\n16822=>26023,\n16823=>26024,\n16824=>26025,\n16825=>26026,\n16826=>26027,\n16827=>26028,\n16828=>26029,\n16829=>26030,\n16830=>26031,\n16831=>26032,\n16832=>26033,\n16833=>26034,\n16834=>26035,\n16835=>26036,\n16836=>26037,\n16837=>26038,\n16838=>26039,\n16839=>26040,\n16840=>26041,\n16841=>26042,\n16842=>26043,\n16843=>26044,\n16844=>26045,\n16845=>26046,\n16846=>26047,\n16847=>26048,\n16848=>26049,\n16849=>26050,\n16850=>26051,\n16851=>26052,\n16852=>26053,\n16853=>26054,\n16854=>26055,\n16855=>26056,\n16856=>26057,\n16857=>26058,\n16858=>26059,\n16859=>26060,\n16860=>26061,\n16861=>26062,\n16862=>26063,\n16863=>26064,\n16864=>26065,\n16865=>26066,\n16866=>26067,\n16867=>26068,\n16868=>26069,\n16869=>26070,\n16870=>26071,\n16871=>26072,\n16872=>26073,\n16873=>26074,\n16874=>26075,\n16875=>26076,\n16876=>26077,\n16877=>26078,\n16878=>26079,\n16879=>26080,\n16880=>26081,\n16881=>26082,\n16882=>26083,\n16883=>26084,\n16884=>26085,\n16885=>26086,\n16886=>26087,\n16887=>26088,\n16888=>26089,\n16889=>26090,\n16890=>26091,\n16891=>26092,\n16892=>26093,\n16893=>26094,\n16894=>26095,\n16895=>26096,\n16896=>26097,\n16897=>26098,\n16898=>26099,\n16899=>26100,\n16900=>26101,\n16901=>26102,\n16902=>26103,\n16903=>26104,\n16904=>26105,\n16905=>26106,\n16906=>26107,\n16907=>26108,\n16908=>26109,\n16909=>26110,\n16910=>26111,\n16911=>26112,\n16912=>26113,\n16913=>26114,\n16914=>26115,\n16915=>26116,\n16916=>26117,\n16917=>26118,\n16918=>26119,\n16919=>26120,\n16920=>26121,\n16921=>26122,\n16922=>26123,\n16923=>26124,\n16924=>26125,\n16925=>26126,\n16926=>26127,\n16927=>26128,\n16928=>26129,\n16929=>26130,\n16930=>26131,\n16931=>26132,\n16932=>26133,\n16933=>26134,\n16934=>26135,\n16935=>26136,\n16936=>26137,\n16937=>26138,\n16938=>26139,\n16939=>26140,\n16940=>26141,\n16941=>26142,\n16942=>26143,\n16943=>26144,\n16944=>26145,\n16945=>26146,\n16946=>26147,\n16947=>26148,\n16948=>26149,\n16949=>26150,\n16950=>26151,\n16951=>26152,\n16952=>26153,\n16953=>26154,\n16954=>26155,\n16955=>26156,\n16956=>26157,\n16957=>26158,\n16958=>26159,\n16959=>26160,\n16960=>26161,\n16961=>26162,\n16962=>26163,\n16963=>26164,\n16964=>26165,\n16965=>26166,\n16966=>26167,\n16967=>26168,\n16968=>26169,\n16969=>26170,\n16970=>26171,\n16971=>26172,\n16972=>26173,\n16973=>26174,\n16974=>26175,\n16975=>26176,\n16976=>26177,\n16977=>26178,\n16978=>26179,\n16979=>26180,\n16980=>26181,\n16981=>26182,\n16982=>26183,\n16983=>26184,\n16984=>26185,\n16985=>26186,\n16986=>26187,\n16987=>26188,\n16988=>26189,\n16989=>26190,\n16990=>26191,\n16991=>26192,\n16992=>26193,\n16993=>26194,\n16994=>26195,\n16995=>26196,\n16996=>26197,\n16997=>26198,\n16998=>26199,\n16999=>26200,\n17000=>26201,\n17001=>26202,\n17002=>26203,\n17003=>26204,\n17004=>26205,\n17005=>26206,\n17006=>26207,\n17007=>26208,\n17008=>26209,\n17009=>26210,\n17010=>26211,\n17011=>26212,\n17012=>26213,\n17013=>26214,\n17014=>26215,\n17015=>26216,\n17016=>26217,\n17017=>26218,\n17018=>26219,\n17019=>26220,\n17020=>26221,\n17021=>26222,\n17022=>26223,\n17023=>26224,\n17024=>26225,\n17025=>26226,\n17026=>26227,\n17027=>26228,\n17028=>26229,\n17029=>26230,\n17030=>26231,\n17031=>26232,\n17032=>26233,\n17033=>26234,\n17034=>26235,\n17035=>26236,\n17036=>26237,\n17037=>26238,\n17038=>26239,\n17039=>26240,\n17040=>26241,\n17041=>26242,\n17042=>26243,\n17043=>26244,\n17044=>26245,\n17045=>26246,\n17046=>26247,\n17047=>26248,\n17048=>26249,\n17049=>26250,\n17050=>26251,\n17051=>26252,\n17052=>26253,\n17053=>26254,\n17054=>26255,\n17055=>26256,\n17056=>26257,\n17057=>26258,\n17058=>26259,\n17059=>26260,\n17060=>26261,\n17061=>26262,\n17062=>26263,\n17063=>26264,\n17064=>26265,\n17065=>26266,\n17066=>26267,\n17067=>26268,\n17068=>26269,\n17069=>26270,\n17070=>26271,\n17071=>26272,\n17072=>26273,\n17073=>26274,\n17074=>26275,\n17075=>26276,\n17076=>26277,\n17077=>26278,\n17078=>26279,\n17079=>26280,\n17080=>26281,\n17081=>26282,\n17082=>26283,\n17083=>26284,\n17084=>26285,\n17085=>26286,\n17086=>26287,\n17087=>26288,\n17088=>26289,\n17089=>26290,\n17090=>26291,\n17091=>26292,\n17092=>26293,\n17093=>26294,\n17094=>26295,\n17095=>26296,\n17096=>26297,\n17097=>26298,\n17098=>26299,\n17099=>26300,\n17100=>26301,\n17101=>26302,\n17102=>26303,\n17103=>26304,\n17104=>26305,\n17105=>26306,\n17106=>26307,\n17107=>26308,\n17108=>26309,\n17109=>26310,\n17110=>26311,\n17111=>26312,\n17112=>26313,\n17113=>26314,\n17114=>26315,\n17115=>26316,\n17116=>26317,\n17117=>26318,\n17118=>26319,\n17119=>26320,\n17120=>26321,\n17121=>26322,\n17122=>26323,\n17123=>26324,\n17124=>26325,\n17125=>26326,\n17126=>26327,\n17127=>26328,\n17128=>26329,\n17129=>26330,\n17130=>26331,\n17131=>26332,\n17132=>26333,\n17133=>26334,\n17134=>26335,\n17135=>26336,\n17136=>26337,\n17137=>26338,\n17138=>26339,\n17139=>26340,\n17140=>26341,\n17141=>26342,\n17142=>26343,\n17143=>26344,\n17144=>26345,\n17145=>26346,\n17146=>26347,\n17147=>26348,\n17148=>26349,\n17149=>26350,\n17150=>26351,\n17151=>26352,\n17152=>26353,\n17153=>26354,\n17154=>26355,\n17155=>26356,\n17156=>26357,\n17157=>26358,\n17158=>26359,\n17159=>26360,\n17160=>26361,\n17161=>26362,\n17162=>26363,\n17163=>26364,\n17164=>26365,\n17165=>26366,\n17166=>26367,\n17167=>26368,\n17168=>26369,\n17169=>26370,\n17170=>26371,\n17171=>26372,\n17172=>26373,\n17173=>26374,\n17174=>26375,\n17175=>26376,\n17176=>26377,\n17177=>26378,\n17178=>26379,\n17179=>26380,\n17180=>26381,\n17181=>26382,\n17182=>26383,\n17183=>26384,\n17184=>26385,\n17185=>26386,\n17186=>26387,\n17187=>26388,\n17188=>26389,\n17189=>26390,\n17190=>26391,\n17191=>26392,\n17192=>26393,\n17193=>26394,\n17194=>26395,\n17195=>26396,\n17196=>26397,\n17197=>26398,\n17198=>26399,\n17199=>26400,\n17200=>26401,\n17201=>26402,\n17202=>26403,\n17203=>26404,\n17204=>26405,\n17205=>26406,\n17206=>26407,\n17208=>26408,\n17209=>26409,\n17210=>26410,\n17211=>26411,\n17212=>26412,\n17213=>26413,\n17214=>26414,\n17215=>26415,\n17216=>26416,\n17217=>26417,\n17218=>26418,\n17219=>26419,\n17220=>26420,\n17221=>26421,\n17222=>26422,\n17223=>26423,\n17224=>26424,\n17225=>26425,\n17226=>26426,\n17227=>26427,\n17228=>26428,\n17229=>26429,\n17230=>26430,\n17231=>26431,\n17232=>26432,\n17233=>26433,\n17234=>26434,\n17235=>26435,\n17236=>26436,\n17237=>26437,\n17238=>26438,\n17239=>26439,\n17240=>26440,\n17241=>26441,\n17242=>26442,\n17243=>26443,\n17244=>26444,\n17245=>26445,\n17246=>26446,\n17247=>26447,\n17248=>26448,\n17249=>26449,\n17250=>26450,\n17251=>26451,\n17252=>26452,\n17253=>26453,\n17254=>26454,\n17255=>26455,\n17256=>26456,\n17257=>26457,\n17258=>26458,\n17259=>26459,\n17260=>26460,\n17261=>26461,\n17262=>26462,\n17263=>26463,\n17264=>26464,\n17265=>26465,\n17266=>26466,\n17267=>26467,\n17268=>26468,\n17269=>26469,\n17270=>26470,\n17271=>26471,\n17272=>26472,\n17273=>26473,\n17274=>26474,\n17275=>26475,\n17276=>26476,\n17277=>26477,\n17278=>26478,\n17279=>26479,\n17280=>26480,\n17281=>26481,\n17282=>26482,\n17283=>26483,\n17284=>26484,\n17285=>26485,\n17286=>26486,\n17287=>26487,\n17288=>26488,\n17289=>26489,\n17290=>26490,\n17291=>26491,\n17292=>26492,\n17293=>26493,\n17294=>26494,\n17295=>26495,\n17296=>26496,\n17297=>26497,\n17298=>26498,\n17299=>26499,\n17300=>26500,\n17301=>26501,\n17302=>26502,\n17303=>26503,\n17304=>26504,\n17305=>26505,\n17306=>26506,\n17307=>26507,\n17308=>26508,\n17309=>26509,\n17310=>26510,\n17311=>26511,\n17312=>26512,\n17313=>26513,\n17314=>26514,\n17315=>26515,\n17316=>26516,\n17317=>26517,\n17318=>26518,\n17319=>26519,\n17320=>26520,\n17321=>26521,\n17322=>26522,\n17323=>26523,\n17325=>26524,\n17326=>26525,\n17327=>26526,\n17328=>26527,\n17330=>26528,\n17331=>26529,\n17332=>26530,\n17333=>26531,\n17334=>26532,\n17335=>26533,\n17336=>26534,\n17337=>26535,\n17338=>26536,\n17339=>26537,\n17340=>26538,\n17341=>26539,\n17342=>26540,\n17343=>26541,\n17344=>26542,\n17345=>26543,\n17346=>26544,\n17347=>26545,\n17348=>26546,\n17349=>26547,\n17350=>26548,\n17351=>26549,\n17352=>26550,\n17353=>26551,\n17354=>26552,\n17355=>26553,\n17356=>26554,\n17357=>26555,\n17358=>26556,\n17359=>26557,\n17360=>26558,\n17361=>26559,\n17362=>26560,\n17363=>26561,\n17364=>26562,\n17365=>26563,\n17366=>26564,\n17367=>26565,\n17368=>26566,\n17369=>26567,\n17370=>26568,\n17371=>26569,\n17372=>26570,\n17374=>26571,\n17375=>26572,\n17376=>26573,\n17377=>26574,\n17378=>26575,\n17379=>26576,\n17380=>26577,\n17381=>26578,\n17382=>26579,\n17383=>26580,\n17384=>26581,\n17385=>26582,\n17386=>26583,\n17387=>26584,\n17388=>26585,\n17389=>26586,\n17390=>26587,\n17391=>26588,\n17392=>26589,\n17393=>26590,\n17394=>26591,\n17395=>26592,\n17396=>26593,\n17397=>26594,\n17398=>26595,\n17399=>26596,\n17400=>26597,\n17401=>26598,\n17402=>26599,\n17403=>26600,\n17404=>26601,\n17405=>26602,\n17406=>26603,\n17407=>26604,\n17408=>26605,\n17409=>26606,\n17410=>26607,\n17411=>26608,\n17412=>26609,\n17413=>26610,\n17414=>26611,\n17415=>26612,\n17416=>26613,\n17417=>26614,\n17418=>26615,\n17419=>26616,\n17420=>26617,\n17421=>26618,\n17422=>26619,\n17423=>26620,\n17424=>26621,\n17425=>26622,\n17426=>26623,\n17427=>26624,\n17428=>26625,\n17429=>26626,\n17430=>26627,\n17431=>26628,\n17432=>26629,\n17433=>26630,\n17434=>26631,\n17435=>26632,\n17436=>26633,\n17437=>26634,\n17438=>26635,\n17439=>26636,\n17440=>26637,\n17441=>26638,\n17442=>26639,\n17443=>26640,\n17444=>26641,\n17445=>26642,\n17446=>26643,\n17447=>26644,\n17448=>26645,\n17449=>26646,\n17450=>26647,\n17451=>26648,\n17452=>26649,\n17453=>26650,\n17454=>26651,\n17455=>26652,\n17456=>26653,\n17457=>26654,\n17458=>26655,\n17459=>26656,\n17460=>26657,\n17461=>26658,\n17462=>26659,\n17463=>26660,\n17464=>26661,\n17465=>26662,\n17466=>26663,\n17467=>26664,\n17468=>26665,\n17469=>26666,\n17470=>26667,\n17471=>26668,\n17472=>26669,\n17473=>26670,\n17474=>26671,\n17475=>26672,\n17476=>26673,\n17477=>26674,\n17478=>26675,\n17479=>26676,\n17480=>26677,\n17481=>26678,\n17482=>26679,\n17483=>26680,\n17484=>26681,\n17485=>26682,\n17486=>26683,\n17487=>26684,\n17488=>26685,\n17489=>26686,\n17490=>26687,\n17491=>26688,\n17492=>26689,\n17493=>26690,\n17494=>26691,\n17495=>26692,\n17496=>26693,\n17497=>26694,\n17498=>26695,\n17499=>26696,\n17500=>26697,\n17501=>26698,\n17502=>26699,\n17503=>26700,\n17504=>26701,\n17505=>26702,\n17506=>26703,\n17507=>26704,\n17508=>26705,\n17509=>26706,\n17510=>26707,\n17511=>26708,\n17512=>26709,\n17513=>26710,\n17514=>26711,\n17515=>26712,\n17516=>26713,\n17517=>26714,\n17518=>26715,\n17519=>26716,\n17520=>26717,\n17521=>26718,\n17522=>26719,\n17523=>26720,\n17524=>26721,\n17525=>26722,\n17526=>26723,\n17527=>26724,\n17528=>26725,\n17529=>26726,\n17530=>26727,\n17531=>26728,\n17532=>26729,\n17533=>26730,\n17534=>26731,\n17535=>26732,\n17536=>26733,\n17537=>26734,\n17538=>26735,\n17539=>26736,\n17540=>26737,\n17541=>26738,\n17542=>26739,\n17543=>26740,\n17544=>26741,\n17545=>26742,\n17546=>26743,\n17547=>26744,\n17548=>26745,\n17549=>26746,\n17550=>26747,\n17551=>26748,\n17552=>26749,\n17553=>26750,\n17554=>26751,\n17555=>26752,\n17556=>26753,\n17557=>26754,\n17558=>26755,\n17559=>26756,\n17560=>26757,\n17561=>26758,\n17562=>26759,\n17563=>26760,\n17564=>26761,\n17565=>26762,\n17566=>26763,\n17567=>26764,\n17568=>26765,\n17569=>26766,\n17570=>26767,\n17571=>26768,\n17572=>26769,\n17573=>26770,\n17574=>26771,\n17575=>26772,\n17576=>26773,\n17577=>26774,\n17578=>26775,\n17579=>26776,\n17580=>26777,\n17581=>26778,\n17582=>26779,\n17583=>26780,\n17584=>26781,\n17585=>26782,\n17586=>26783,\n17587=>26784,\n17588=>26785,\n17589=>26786,\n17590=>26787,\n17591=>26788,\n17592=>26789,\n17593=>26790,\n17594=>26791,\n17595=>26792,\n17596=>26793,\n17597=>26794,\n17598=>26795,\n17599=>26796,\n17600=>26797,\n17601=>26798,\n17602=>26799,\n17603=>26800,\n17604=>26801,\n17605=>26802,\n17606=>26803,\n17607=>26804,\n17608=>26805,\n17609=>26806,\n17610=>26807,\n17611=>26808,\n17612=>26809,\n17613=>26810,\n17614=>26811,\n17615=>26812,\n17616=>26813,\n17617=>26814,\n17618=>26815,\n17619=>26816,\n17620=>26817,\n17621=>26818,\n17623=>26819,\n17624=>26820,\n17625=>26821,\n17626=>26822,\n17627=>26823,\n17628=>26824,\n17629=>26825,\n17630=>26826,\n17631=>26827,\n17632=>26828,\n17633=>26829,\n17634=>26830,\n17635=>26831,\n17636=>26832,\n17637=>26833,\n17638=>26834,\n17639=>26835,\n17640=>26836,\n17641=>26837,\n17642=>26838,\n17643=>26839,\n17644=>26840,\n17645=>26841,\n17646=>26842,\n17647=>26843,\n17648=>26844,\n17649=>26845,\n17650=>26846,\n17651=>26847,\n17652=>26848,\n17653=>26849,\n17654=>26850,\n17655=>26851,\n17656=>26852,\n17657=>26853,\n17658=>26854,\n17659=>26855,\n17660=>26856,\n17661=>26857,\n17662=>26858,\n17663=>26859,\n17664=>26860,\n17665=>26861,\n17666=>26862,\n17667=>26863,\n17668=>26864,\n17669=>26865,\n17670=>26866,\n17671=>26867,\n17672=>26868,\n17673=>26869,\n17674=>26870,\n17675=>26871,\n17676=>26872,\n17677=>26873,\n17678=>26874,\n17679=>26875,\n17680=>26876,\n17681=>26877,\n17682=>26878,\n17683=>26879,\n17684=>26880,\n17685=>26881,\n17686=>26882,\n17687=>26883,\n17688=>26884,\n17689=>26885,\n17690=>26886,\n17691=>26887,\n17692=>26888,\n17693=>26889,\n17694=>26890,\n17695=>26891,\n17696=>26892,\n17697=>26893,\n17698=>26894,\n17699=>26895,\n17700=>26896,\n17701=>26897,\n17702=>26898,\n17703=>26899,\n17704=>26900,\n17705=>26901,\n17706=>26902,\n17707=>26903,\n17708=>26904,\n17709=>26905,\n17710=>26906,\n17711=>26907,\n17712=>26908,\n17713=>26909,\n17714=>26910,\n17715=>26911,\n17716=>26912,\n17717=>26913,\n17718=>26914,\n17719=>26915,\n17720=>26916,\n17721=>26917,\n17722=>26918,\n17723=>26919,\n17724=>26920,\n17725=>26921,\n17726=>26922,\n17727=>26923,\n17728=>26924,\n17729=>26925,\n17730=>26926,\n17731=>26927,\n17732=>26928,\n17733=>26929,\n17734=>26930,\n17735=>26931,\n17736=>26932,\n17737=>26933,\n17738=>26934,\n17739=>26935,\n17740=>26936,\n17741=>26937,\n17742=>26938,\n17743=>26939,\n17744=>26940,\n17745=>26941,\n17746=>26942,\n17747=>26943,\n17748=>26944,\n17749=>26945,\n17750=>26946,\n17751=>26947,\n17752=>26948,\n17753=>26949,\n17754=>26950,\n17755=>26951,\n17756=>26952,\n17757=>26953,\n17758=>26954,\n17759=>26955,\n17760=>26956,\n17761=>26957,\n17762=>26958,\n17763=>26959,\n17764=>26960,\n17765=>26961,\n17766=>26962,\n17767=>26963,\n17768=>26964,\n17769=>26965,\n17770=>26966,\n17771=>26967,\n17772=>26968,\n17773=>26969,\n17774=>26970,\n17775=>26971,\n17776=>26972,\n17777=>26973,\n17778=>26974,\n17779=>26975,\n17780=>26976,\n17781=>26977,\n17782=>26978,\n17783=>26979,\n17784=>26980,\n17785=>26981,\n17786=>26982,\n17787=>26983,\n17788=>26984,\n17789=>26985,\n17790=>26986,\n17791=>26987,\n17792=>26988,\n17793=>26989,\n17794=>26990,\n17795=>26991,\n17796=>26992,\n17797=>26993,\n17798=>26994,\n17799=>26995,\n17800=>26996,\n17801=>26997,\n17802=>26998,\n17803=>26999,\n17804=>27000,\n17805=>27001,\n17806=>27002,\n17807=>27003,\n17808=>27004,\n17809=>27005,\n17810=>27006,\n17811=>27007,\n17812=>27008,\n17813=>27009,\n17814=>27010,\n17815=>27011,\n17816=>27012,\n17817=>27013,\n17818=>27014,\n17819=>27015,\n17820=>27016,\n17821=>27017,\n17822=>27018,\n17823=>27019,\n17824=>27020,\n17825=>27021,\n17826=>27022,\n17827=>27023,\n17828=>27024,\n17829=>27025,\n17830=>27026,\n17831=>27027,\n17832=>27028,\n17833=>27029,\n17834=>27030,\n17835=>27031,\n17836=>27032,\n17837=>27033,\n17838=>27034,\n17839=>27035,\n17840=>27036,\n17841=>27037,\n17842=>27038,\n17843=>27039,\n17844=>27040,\n17845=>27041,\n17846=>27042,\n17847=>27043,\n17848=>27044,\n17849=>27045,\n17850=>27046,\n17851=>27047,\n17852=>27048,\n17853=>27049,\n17854=>27050,\n17855=>27051,\n17856=>27052,\n17857=>27053,\n17858=>27054,\n17859=>27055,\n17860=>27056,\n17861=>27057,\n17862=>27058,\n17863=>27059,\n17864=>27060,\n17865=>27061,\n17866=>27062,\n17867=>27063,\n17868=>27064,\n17869=>27065,\n17870=>27066,\n17871=>27067,\n17872=>27068,\n17873=>27069,\n17874=>27070,\n17875=>27071,\n17876=>27072,\n17877=>27073,\n17878=>27074,\n17879=>27075,\n17880=>27076,\n17881=>27077,\n17882=>27078,\n17883=>27079,\n17884=>27080,\n17885=>27081,\n17886=>27082,\n17887=>27083,\n17888=>27084,\n17889=>27085,\n17890=>27086,\n17891=>27087,\n17892=>27088,\n17893=>27089,\n17894=>27090,\n17895=>27091,\n17896=>27092,\n17897=>27093,\n17898=>27094,\n17899=>27095,\n17900=>27096,\n17901=>27097,\n17902=>27098,\n17903=>27099,\n17904=>27100,\n17905=>27101,\n17906=>27102,\n17907=>27103,\n17908=>27104,\n17909=>27105,\n17910=>27106,\n17911=>27107,\n17912=>27108,\n17913=>27109,\n17914=>27110,\n17915=>27111,\n17916=>27112,\n17917=>27113,\n17918=>27114,\n17919=>27115,\n17920=>27116,\n17921=>27117,\n17922=>27118,\n17923=>27119,\n17924=>27120,\n17925=>27121,\n17926=>27122,\n17927=>27123,\n17928=>27124,\n17929=>27125,\n17930=>27126,\n17931=>27127,\n17932=>27128,\n17933=>27129,\n17934=>27130,\n17935=>27131,\n17936=>27132,\n17937=>27133,\n17938=>27134,\n17939=>27135,\n17940=>27136,\n17941=>27137,\n17942=>27138,\n17943=>27139,\n17944=>27140,\n17945=>27141,\n17946=>27142,\n17947=>27143,\n17948=>27144,\n17949=>27145,\n17950=>27146,\n17951=>27147,\n17952=>27148,\n17953=>27149,\n17954=>27150,\n17955=>27151,\n17956=>27152,\n17957=>27153,\n17958=>27154,\n17959=>27155,\n17960=>27156,\n17961=>27157,\n17962=>27158,\n17963=>27159,\n17964=>27160,\n17965=>27161,\n17966=>27162,\n17967=>27163,\n17968=>27164,\n17969=>27165,\n17970=>27166,\n17971=>27167,\n17972=>27168,\n17973=>27169,\n17974=>27170,\n17975=>27171,\n17976=>27172,\n17977=>27173,\n17978=>27174,\n17979=>27175,\n17980=>27176,\n17981=>27177,\n17982=>27178,\n17983=>27179,\n17984=>27180,\n17985=>27181,\n17986=>27182,\n17987=>27183,\n17988=>27184,\n17989=>27185,\n17990=>27186,\n17991=>27187,\n17992=>27188,\n17993=>27189,\n17994=>27190,\n17995=>27191,\n17997=>27192,\n17998=>27193,\n17999=>27194,\n18000=>27195,\n18001=>27196,\n18002=>27197,\n18003=>27198,\n18004=>27199,\n18005=>27200,\n18006=>27201,\n18007=>27202,\n18008=>27203,\n18009=>27204,\n18010=>27205,\n18011=>27206,\n18012=>27207,\n18013=>27208,\n18014=>27209,\n18015=>27210,\n18016=>27211,\n18018=>27212,\n18019=>27213,\n18020=>27214,\n18021=>27215,\n18022=>27216,\n18023=>27217,\n18024=>27218,\n18025=>27219,\n18026=>27220,\n18027=>27221,\n18028=>27222,\n18029=>27223,\n18030=>27224,\n18031=>27225,\n18032=>27226,\n18033=>27227,\n18034=>27228,\n18035=>27229,\n18036=>27230,\n18037=>27231,\n18038=>27232,\n18039=>27233,\n18040=>27234,\n18041=>27235,\n18042=>27236,\n18043=>27237,\n18044=>27238,\n18045=>27239,\n18046=>27240,\n18047=>27241,\n18048=>27242,\n18049=>27243,\n18050=>27244,\n18051=>27245,\n18052=>27246,\n18053=>27247,\n18054=>27248,\n18055=>27249,\n18056=>27250,\n18057=>27251,\n18058=>27252,\n18059=>27253,\n18060=>27254,\n18061=>27255,\n18062=>27256,\n18063=>27257,\n18064=>27258,\n18065=>27259,\n18066=>27260,\n18067=>27261,\n18068=>27262,\n18069=>27263,\n18070=>27264,\n18071=>27265,\n18072=>27266,\n18073=>27267,\n18074=>27268,\n18075=>27269,\n18076=>27270,\n18077=>27271,\n18078=>27272,\n18079=>27273,\n18080=>27274,\n18081=>27275,\n18082=>27276,\n18083=>27277,\n18084=>27278,\n18085=>27279,\n18086=>27280,\n18087=>27281,\n18088=>27282,\n18089=>27283,\n18090=>27284,\n18091=>27285,\n18092=>27286,\n18093=>27287,\n18094=>27288,\n18095=>27289,\n18096=>27290,\n18097=>27291,\n18098=>27292,\n18099=>27293,\n18100=>27294,\n18101=>27295,\n18102=>27296,\n18103=>27297,\n18104=>27298,\n18105=>27299,\n18106=>27300,\n18107=>27301,\n18108=>27302,\n18109=>27303,\n18110=>27304,\n18111=>27305,\n18112=>27306,\n18113=>27307,\n18114=>27308,\n18115=>27309,\n18116=>27310,\n18117=>27311,\n18118=>27312,\n18119=>27313,\n18120=>27314,\n18121=>27315,\n18122=>27316,\n18123=>27317,\n18124=>27318,\n18125=>27319,\n18126=>27320,\n18127=>27321,\n18128=>27322,\n18129=>27323,\n18130=>27324,\n18131=>27325,\n18132=>27326,\n18133=>27327,\n18134=>27328,\n18135=>27329,\n18136=>27330,\n18137=>27331,\n18138=>27332,\n18139=>27333,\n18140=>27334,\n18141=>27335,\n18142=>27336,\n18143=>27337,\n18144=>27338,\n18145=>27339,\n18146=>27340,\n18147=>27341,\n18148=>27342,\n18149=>27343,\n18150=>27344,\n18151=>27345,\n18152=>27346,\n18153=>27347,\n18154=>27348,\n18155=>27349,\n18156=>27350,\n18157=>27351,\n18158=>27352,\n18159=>27353,\n18160=>27354,\n18161=>27355,\n18162=>27356,\n18163=>27357,\n18164=>27358,\n18165=>27359,\n18166=>27360,\n18167=>27361,\n18168=>27362,\n18169=>27363,\n18170=>27364,\n18171=>27365,\n18172=>27366,\n18173=>27367,\n18174=>27368,\n18175=>27369,\n18176=>27370,\n18177=>27371,\n18178=>27372,\n18179=>27373,\n18180=>27374,\n18181=>27375,\n18182=>27376,\n18183=>27377,\n18184=>27378,\n18185=>27379,\n18186=>27380,\n18187=>27381,\n18188=>27382,\n18189=>27383,\n18190=>27384,\n18191=>27385,\n18192=>27386,\n18193=>27387,\n18194=>27388,\n18195=>27389,\n18196=>27390,\n18197=>27391,\n18198=>27392,\n18199=>27393,\n18200=>27394,\n18201=>27395,\n18202=>27396,\n18203=>27397,\n18204=>27398,\n18205=>27399,\n18206=>27400,\n18207=>27401,\n18208=>27402,\n18209=>27403,\n18210=>27404,\n18212=>27405,\n18213=>27406,\n18214=>27407,\n18215=>27408,\n18216=>27409,\n18218=>27410,\n18219=>27411,\n18220=>27412,\n18221=>27413,\n18222=>27414,\n18223=>27415,\n18224=>27416,\n18225=>27417,\n18226=>27418,\n18227=>27419,\n18228=>27420,\n18229=>27421,\n18230=>27422,\n18231=>27423,\n18232=>27424,\n18233=>27425,\n18234=>27426,\n18235=>27427,\n18236=>27428,\n18237=>27429,\n18238=>27430,\n18239=>27431,\n18240=>27432,\n18241=>27433,\n18242=>27434,\n18243=>27435,\n18244=>27436,\n18245=>27437,\n18246=>27438,\n18247=>27439,\n18248=>27440,\n18249=>27441,\n18250=>27442,\n18251=>27443,\n18252=>27444,\n18253=>27445,\n18254=>27446,\n18255=>27447,\n18256=>27448,\n18257=>27449,\n18258=>27450,\n18259=>27451,\n18260=>27452,\n18261=>27453,\n18262=>27454,\n18263=>27455,\n18264=>27456,\n18265=>27457,\n18266=>27458,\n18267=>27459,\n18268=>27460,\n18269=>27461,\n18270=>27462,\n18271=>27463,\n18272=>27464,\n18273=>27465,\n18274=>27466,\n18275=>27467,\n18276=>27468,\n18277=>27469,\n18278=>27470,\n18279=>27471,\n18280=>27472,\n18281=>27473,\n18282=>27474,\n18283=>27475,\n18284=>27476,\n18285=>27477,\n18286=>27478,\n18287=>27479,\n18288=>27480,\n18289=>27481,\n18290=>27482,\n18291=>27483,\n18292=>27484,\n18293=>27485,\n18294=>27486,\n18295=>27487,\n18296=>27488,\n18297=>27489,\n18298=>27490,\n18299=>27491,\n18301=>27492,\n18302=>27493,\n18303=>27494,\n18304=>27495,\n18305=>27496,\n18306=>27497,\n18307=>27498,\n18308=>27499,\n18309=>27500,\n18310=>27501,\n18311=>27502,\n18312=>27503,\n18313=>27504,\n18314=>27505,\n18315=>27506,\n18316=>27507,\n18318=>27508,\n18319=>27509,\n18320=>27510,\n18321=>27511,\n18322=>27512,\n18323=>27513,\n18324=>27514,\n18325=>27515,\n18326=>27516,\n18327=>27517,\n18328=>27518,\n18329=>27519,\n18330=>27520,\n18331=>27521,\n18332=>27522,\n18333=>27523,\n18334=>27524,\n18335=>27525,\n18336=>27526,\n18337=>27527,\n18338=>27528,\n18339=>27529,\n18340=>27530,\n18341=>27531,\n18342=>27532,\n18343=>27533,\n18344=>27534,\n18345=>27535,\n18346=>27536,\n18347=>27537,\n18348=>27538,\n18349=>27539,\n18350=>27540,\n18351=>27541,\n18352=>27542,\n18353=>27543,\n18354=>27544,\n18355=>27545,\n18356=>27546,\n18357=>27547,\n18358=>27548,\n18359=>27549,\n18360=>27550,\n18361=>27551,\n18362=>27552,\n18363=>27553,\n18364=>27554,\n18365=>27555,\n18366=>27556,\n18367=>27557,\n18368=>27558,\n18369=>27559,\n18370=>27560,\n18371=>27561,\n18372=>27562,\n18373=>27563,\n18374=>27564,\n18375=>27565,\n18376=>27566,\n18377=>27567,\n18378=>27568,\n18379=>27569,\n18380=>27570,\n18381=>27571,\n18382=>27572,\n18383=>27573,\n18384=>27574,\n18385=>27575,\n18386=>27576,\n18387=>27577,\n18388=>27578,\n18389=>27579,\n18390=>27580,\n18391=>27581,\n18392=>27582,\n18393=>27583,\n18394=>27584,\n18395=>27585,\n18396=>27586,\n18397=>27587,\n18398=>27588,\n18399=>27589,\n18400=>27590,\n18401=>27591,\n18402=>27592,\n18403=>27593,\n18404=>27594,\n18405=>27595,\n18406=>27596,\n18407=>27597,\n18408=>27598,\n18409=>27599,\n18410=>27600,\n18411=>27601,\n18412=>27602,\n18413=>27603,\n18414=>27604,\n18415=>27605,\n18416=>27606,\n18417=>27607,\n18418=>27608,\n18419=>27609,\n18420=>27610,\n18421=>27611,\n18422=>27612,\n18423=>27613,\n18424=>27614,\n18425=>27615,\n18426=>27616,\n18427=>27617,\n18428=>27618,\n18429=>27619,\n18430=>27620,\n18431=>27621,\n18432=>27622,\n18433=>27623,\n18434=>27624,\n18435=>27625,\n18436=>27626,\n18437=>27627,\n18438=>27628,\n18439=>27629,\n18440=>27630,\n18441=>27631,\n18442=>27632,\n18443=>27633,\n18444=>27634,\n18445=>27635,\n18446=>27636,\n18447=>27637,\n18448=>27638,\n18449=>27639,\n18450=>27640,\n18451=>27641,\n18452=>27642,\n18453=>27643,\n18454=>27644,\n18455=>27645,\n18456=>27646,\n18457=>27647,\n18458=>27648,\n18459=>27649,\n18460=>27650,\n18461=>27651,\n18462=>27652,\n18463=>27653,\n18464=>27654,\n18465=>27655,\n18466=>27656,\n18467=>27657,\n18468=>27658,\n18469=>27659,\n18470=>27660,\n18471=>27661,\n18472=>27662,\n18473=>27663,\n18474=>27664,\n18475=>27665,\n18476=>27666,\n18477=>27667,\n18478=>27668,\n18479=>27669,\n18480=>27670,\n18481=>27671,\n18482=>27672,\n18483=>27673,\n18484=>27674,\n18485=>27675,\n18486=>27676,\n18487=>27677,\n18488=>27678,\n18489=>27679,\n18490=>27680,\n18491=>27681,\n18492=>27682,\n18493=>27683,\n18494=>27684,\n18495=>27685,\n18496=>27686,\n18497=>27687,\n18498=>27688,\n18499=>27689,\n18500=>27690,\n18501=>27691,\n18502=>27692,\n18503=>27693,\n18504=>27694,\n18505=>27695,\n18506=>27696,\n18507=>27697,\n18508=>27698,\n18509=>27699,\n18510=>27700,\n18511=>27701,\n18512=>27702,\n18513=>27703,\n18514=>27704,\n18515=>27705,\n18516=>27706,\n18517=>27707,\n18518=>27708,\n18519=>27709,\n18520=>27710,\n18521=>27711,\n18522=>27712,\n18523=>27713,\n18524=>27714,\n18525=>27715,\n18526=>27716,\n18527=>27717,\n18528=>27718,\n18529=>27719,\n18530=>27720,\n18531=>27721,\n18532=>27722,\n18533=>27723,\n18534=>27724,\n18535=>27725,\n18536=>27726,\n18537=>27727,\n18538=>27728,\n18539=>27729,\n18540=>27730,\n18541=>27731,\n18542=>27732,\n18543=>27733,\n18544=>27734,\n18545=>27735,\n18546=>27736,\n18547=>27737,\n18548=>27738,\n18549=>27739,\n18550=>27740,\n18551=>27741,\n18552=>27742,\n18553=>27743,\n18554=>27744,\n18555=>27745,\n18556=>27746,\n18557=>27747,\n18558=>27748,\n18559=>27749,\n18560=>27750,\n18561=>27751,\n18562=>27752,\n18563=>27753,\n18564=>27754,\n18565=>27755,\n18566=>27756,\n18567=>27757,\n18568=>27758,\n18569=>27759,\n18570=>27760,\n18571=>27761,\n18572=>27762,\n18573=>27763,\n18574=>27764,\n18575=>27765,\n18576=>27766,\n18577=>27767,\n18578=>27768,\n18579=>27769,\n18580=>27770,\n18581=>27771,\n18582=>27772,\n18583=>27773,\n18584=>27774,\n18585=>27775,\n18586=>27776,\n18587=>27777,\n18588=>27778,\n18589=>27779,\n18590=>27780,\n18591=>27781,\n18592=>27782,\n18593=>27783,\n18594=>27784,\n18595=>27785,\n18596=>27786,\n18597=>27787,\n18598=>27788,\n18599=>27789,\n18600=>27790,\n18601=>27791,\n18602=>27792,\n18603=>27793,\n18604=>27794,\n18605=>27795,\n18606=>27796,\n18607=>27797,\n18608=>27798,\n18609=>27799,\n18610=>27800,\n18611=>27801,\n18612=>27802,\n18613=>27803,\n18614=>27804,\n18615=>27805,\n18616=>27806,\n18617=>27807,\n18618=>27808,\n18619=>27809,\n18620=>27810,\n18621=>27811,\n18622=>27812,\n18623=>27813,\n18624=>27814,\n18625=>27815,\n18626=>27816,\n18627=>27817,\n18628=>27818,\n18629=>27819,\n18630=>27820,\n18631=>27821,\n18632=>27822,\n18633=>27823,\n18634=>27824,\n18635=>27825,\n18636=>27826,\n18637=>27827,\n18638=>27828,\n18639=>27829,\n18640=>27830,\n18641=>27831,\n18642=>27832,\n18643=>27833,\n18644=>27834,\n18645=>27835,\n18646=>27836,\n18647=>27837,\n18648=>27838,\n18649=>27839,\n18650=>27840,\n18651=>27841,\n18652=>27842,\n18653=>27843,\n18654=>27844,\n18655=>27845,\n18656=>27846,\n18657=>27847,\n18658=>27848,\n18659=>27849,\n18660=>27850,\n18661=>27851,\n18662=>27852,\n18663=>27853,\n18664=>27854,\n18665=>27855,\n18666=>27856,\n18667=>27857,\n18668=>27858,\n18669=>27859,\n18670=>27860,\n18671=>27861,\n18672=>27862,\n18673=>27863,\n18674=>27864,\n18675=>27865,\n18676=>27866,\n18677=>27867,\n18678=>27868,\n18679=>27869,\n18680=>27870,\n18681=>27871,\n18682=>27872,\n18683=>27873,\n18684=>27874,\n18685=>27875,\n18686=>27876,\n18687=>27877,\n18688=>27878,\n18689=>27879,\n18690=>27880,\n18691=>27881,\n18692=>27882,\n18693=>27883,\n18694=>27884,\n18695=>27885,\n18696=>27886,\n18697=>27887,\n18698=>27888,\n18699=>27889,\n18700=>27890,\n18701=>27891,\n18702=>27892,\n18703=>27893,\n18704=>27894,\n18705=>27895,\n18706=>27896,\n18707=>27897,\n18708=>27898,\n18709=>27899,\n18710=>27900,\n18711=>27901,\n18712=>27902,\n18713=>27903,\n18714=>27904,\n18715=>27905,\n18716=>27906,\n18717=>27907,\n18718=>27908,\n18719=>27909,\n18720=>27910,\n18721=>27911,\n18722=>27912,\n18723=>27913,\n18724=>27914,\n18725=>27915,\n18726=>27916,\n18727=>27917,\n18728=>27918,\n18729=>27919,\n18730=>27920,\n18731=>27921,\n18732=>27922,\n18733=>27923,\n18734=>27924,\n18735=>27925,\n18736=>27926,\n18737=>27927,\n18738=>27928,\n18739=>27929,\n18740=>27930,\n18741=>27931,\n18742=>27932,\n18743=>27933,\n18744=>27934,\n18745=>27935,\n18746=>27936,\n18747=>27937,\n18748=>27938,\n18749=>27939,\n18750=>27940,\n18751=>27941,\n18752=>27942,\n18753=>27943,\n18754=>27944,\n18755=>27945,\n18756=>27946,\n18757=>27947,\n18758=>27948,\n18760=>27949,\n18761=>27950,\n18762=>27951,\n18763=>27952,\n18764=>27953,\n18765=>27954,\n18766=>27955,\n18767=>27956,\n18768=>27957,\n18769=>27958,\n18770=>27959,\n18771=>27960,\n18772=>27961,\n18773=>27962,\n18774=>27963,\n18775=>27964,\n18776=>27965,\n18777=>27966,\n18778=>27967,\n18779=>27968,\n18780=>27969,\n18781=>27970,\n18782=>27971,\n18783=>27972,\n18784=>27973,\n18785=>27974,\n18786=>27975,\n18787=>27976,\n18788=>27977,\n18789=>27978,\n18790=>27979,\n18791=>27980,\n18792=>27981,\n18793=>27982,\n18794=>27983,\n18795=>27984,\n18796=>27985,\n18797=>27986,\n18798=>27987,\n18799=>27988,\n18800=>27989,\n18801=>27990,\n18802=>27991,\n18803=>27992,\n18804=>27993,\n18805=>27994,\n18806=>27995,\n18807=>27996,\n18808=>27997,\n18809=>27998,\n18811=>27999,\n18812=>28000,\n18814=>28001,\n18815=>28002,\n18816=>28003,\n18817=>28004,\n18820=>28005,\n18823=>28006,\n18824=>28007,\n18825=>28008,\n18826=>28009,\n18827=>28010,\n18828=>28011,\n18829=>28012,\n18830=>28013,\n18831=>28014,\n18832=>28015,\n18833=>28016,\n18834=>28017,\n18835=>28018,\n18836=>28019,\n18837=>28020,\n18838=>28021,\n18839=>28022,\n18840=>28023,\n18841=>28024,\n18842=>28025,\n18844=>28026,\n18845=>28027,\n18846=>28028,\n18848=>28029,\n18849=>28030,\n18850=>28031,\n18851=>28032,\n18852=>28033,\n18853=>28034,\n18854=>28035,\n18855=>28036,\n18856=>28037,\n18857=>28038,\n18858=>28039,\n18859=>28040,\n18860=>28041,\n18861=>28042,\n18862=>28043,\n18863=>28044,\n18864=>28045,\n18865=>28046,\n18866=>28047,\n18867=>28048,\n18868=>28049,\n18869=>28050,\n18872=>28051,\n18873=>28052,\n18874=>28053,\n18875=>28054,\n18876=>28055,\n18877=>28056,\n18878=>28057,\n18879=>28058,\n18880=>28059,\n18881=>28060,\n18882=>28061,\n18883=>28062,\n18884=>28063,\n18885=>28064,\n18886=>28065,\n18887=>28066,\n18888=>28067,\n18889=>28068,\n18890=>28069,\n18891=>28070,\n18892=>28071,\n18893=>28072,\n18894=>28073,\n18895=>28074,\n18896=>28075,\n18897=>28076,\n18898=>28077,\n18899=>28078,\n18900=>28079,\n18901=>28080,\n18902=>28081,\n18903=>28082,\n18904=>28083,\n18905=>28084,\n18906=>28085,\n18907=>28086,\n18908=>28087,\n18909=>28088,\n18910=>28089,\n18911=>28090,\n18912=>28091,\n18913=>28092,\n18914=>28093,\n18915=>28094,\n18916=>28095,\n18917=>28096,\n18918=>28097,\n18919=>28098,\n18920=>28099,\n18921=>28100,\n18922=>28101,\n18923=>28102,\n18924=>28103,\n18925=>28104,\n18926=>28105,\n18927=>28106,\n18928=>28107,\n18929=>28108,\n18930=>28109,\n18931=>28110,\n18932=>28111,\n18933=>28112,\n18934=>28113,\n18935=>28114,\n18936=>28115,\n18937=>28116,\n18938=>28117,\n18939=>28118,\n18940=>28119,\n18941=>28120,\n18942=>28121,\n18943=>28122,\n18944=>28123,\n18945=>28124,\n18946=>28125,\n18947=>28126,\n18948=>28127,\n18949=>28128,\n18950=>28129,\n18951=>28130,\n18952=>28131,\n18953=>28132,\n18954=>28133,\n18955=>28134,\n18956=>28135,\n18957=>28136,\n18958=>28137,\n18959=>28138,\n18960=>28139,\n18961=>28140,\n18962=>28141,\n18963=>28142,\n18964=>28143,\n18965=>28144,\n18966=>28145,\n18967=>28146,\n18968=>28147,\n18969=>28148,\n18970=>28149,\n18971=>28150,\n18972=>28151,\n18973=>28152,\n18974=>28153,\n18975=>28154,\n18976=>28155,\n18977=>28156,\n18978=>28157,\n18979=>28158,\n18980=>28159,\n18981=>28160,\n18982=>28161,\n18983=>28162,\n18984=>28163,\n18985=>28164,\n18986=>28165,\n18987=>28166,\n18988=>28167,\n18989=>28168,\n18990=>28169,\n18991=>28170,\n18992=>28171,\n18993=>28172,\n18994=>28173,\n18995=>28174,\n18996=>28175,\n18997=>28176,\n18998=>28177,\n18999=>28178,\n19000=>28179,\n19001=>28180,\n19002=>28181,\n19003=>28182,\n19004=>28183,\n19005=>28184,\n19006=>28185,\n19007=>28186,\n19008=>28187,\n19009=>28188,\n19010=>28189,\n19011=>28190,\n19012=>28191,\n19013=>28192,\n19014=>28193,\n19015=>28194,\n19016=>28195,\n19017=>28196,\n19018=>28197,\n19019=>28198,\n19020=>28199,\n19021=>28200,\n19022=>28201,\n19023=>28202,\n19024=>28203,\n19025=>28204,\n19026=>28205,\n19027=>28206,\n19028=>28207,\n19029=>28208,\n19030=>28209,\n19031=>28210,\n19032=>28211,\n19033=>28212,\n19034=>28213,\n19035=>28214,\n19036=>28215,\n19037=>28216,\n19038=>28217,\n19039=>28218,\n19040=>28219,\n19041=>28220,\n19042=>28221,\n19043=>28222,\n19044=>28223,\n19045=>28224,\n19046=>28225,\n19047=>28226,\n19048=>28227,\n19049=>28228,\n19050=>28229,\n19051=>28230,\n19052=>28231,\n19053=>28232,\n19054=>28233,\n19055=>28234,\n19056=>28235,\n19057=>28236,\n19058=>28237,\n19059=>28238,\n19060=>28239,\n19061=>28240,\n19062=>28241,\n19063=>28242,\n19064=>28243,\n19065=>28244,\n19066=>28245,\n19067=>28246,\n19068=>28247,\n19069=>28248,\n19070=>28249,\n19071=>28250,\n19072=>28251,\n19073=>28252,\n19074=>28253,\n19075=>28254,\n19076=>28255,\n19077=>28256,\n19078=>28257,\n19079=>28258,\n19080=>28259,\n19081=>28260,\n19082=>28261,\n19083=>28262,\n19084=>28263,\n19085=>28264,\n19086=>28265,\n19087=>28266,\n19088=>28267,\n19089=>28268,\n19090=>28269,\n19091=>28270,\n19092=>28271,\n19093=>28272,\n19094=>28273,\n19095=>28274,\n19096=>28275,\n19097=>28276,\n19098=>28277,\n19099=>28278,\n19100=>28279,\n19101=>28280,\n19102=>28281,\n19103=>28282,\n19104=>28283,\n19105=>28284,\n19106=>28285,\n19107=>28286,\n19108=>28287,\n19109=>28288,\n19110=>28289,\n19111=>28290,\n19112=>28291,\n19113=>28292,\n19114=>28293,\n19115=>28294,\n19116=>28295,\n19117=>28296,\n19118=>28297,\n19119=>28298,\n19120=>28299,\n19121=>28300,\n19122=>28301,\n19123=>28302,\n19124=>28303,\n19125=>28304,\n19126=>28305,\n19127=>28306,\n19128=>28307,\n19129=>28308,\n19130=>28309,\n19131=>28310,\n19132=>28311,\n19133=>28312,\n19134=>28313,\n19135=>28314,\n19136=>28315,\n19137=>28316,\n19138=>28317,\n19139=>28318,\n19140=>28319,\n19141=>28320,\n19142=>28321,\n19143=>28322,\n19144=>28323,\n19145=>28324,\n19146=>28325,\n19147=>28326,\n19148=>28327,\n19149=>28328,\n19150=>28329,\n19151=>28330,\n19152=>28331,\n19153=>28332,\n19154=>28333,\n19155=>28334,\n19156=>28335,\n19157=>28336,\n19158=>28337,\n19159=>28338,\n19160=>28339,\n19161=>28340,\n19162=>28341,\n19163=>28342,\n19164=>28343,\n19165=>28344,\n19166=>28345,\n19167=>28346,\n19168=>28347,\n19169=>28348,\n19170=>28349,\n19171=>28350,\n19172=>28351,\n19173=>28352,\n19174=>28353,\n19175=>28354,\n19176=>28355,\n19177=>28356,\n19178=>28357,\n19179=>28358,\n19180=>28359,\n19181=>28360,\n19182=>28361,\n19183=>28362,\n19184=>28363,\n19185=>28364,\n19186=>28365,\n19187=>28366,\n19188=>28367,\n19189=>28368,\n19190=>28369,\n19191=>28370,\n19192=>28371,\n19193=>28372,\n19194=>28373,\n19195=>28374,\n19196=>28375,\n19197=>28376,\n19198=>28377,\n19199=>28378,\n19200=>28379,\n19201=>28380,\n19202=>28381,\n19203=>28382,\n19204=>28383,\n19205=>28384,\n19206=>28385,\n19207=>28386,\n19208=>28387,\n19209=>28388,\n19210=>28389,\n19211=>28390,\n19212=>28391,\n19213=>28392,\n19214=>28393,\n19215=>28394,\n19216=>28395,\n19217=>28396,\n19218=>28397,\n19219=>28398,\n19220=>28399,\n19221=>28400,\n19222=>28401,\n19223=>28402,\n19224=>28403,\n19225=>28404,\n19226=>28405,\n19227=>28406,\n19228=>28407,\n19229=>28408,\n19230=>28409,\n19231=>28410,\n19232=>28411,\n19233=>28412,\n19234=>28413,\n19235=>28414,\n19236=>28415,\n19237=>28416,\n19238=>28417,\n19239=>28418,\n19240=>28419,\n19241=>28420,\n19242=>28421,\n19243=>28422,\n19244=>28423,\n19245=>28424,\n19246=>28425,\n19247=>28426,\n19248=>28427,\n19249=>28428,\n19250=>28429,\n19251=>28430,\n19252=>28431,\n19253=>28432,\n19254=>28433,\n19255=>28434,\n19256=>28435,\n19257=>28436,\n19258=>28437,\n19259=>28438,\n19260=>28439,\n19261=>28440,\n19262=>28441,\n19263=>28442,\n19264=>28443,\n19265=>28444,\n19266=>28445,\n19267=>28446,\n19268=>28447,\n19269=>28448,\n19270=>28449,\n19271=>28450,\n19272=>28451,\n19273=>28452,\n19274=>28453,\n19275=>28454,\n19276=>28455,\n19277=>28456,\n19278=>28457,\n19279=>28458,\n19280=>28459,\n19281=>28460,\n19282=>28461,\n19283=>28462,\n19284=>28463,\n19285=>28464,\n19286=>28465,\n19287=>28466,\n19288=>28467,\n19289=>28468,\n19290=>28469,\n19291=>28470,\n19292=>28471,\n19293=>28472,\n19294=>28473,\n19295=>28474,\n19296=>28475,\n19297=>28476,\n19298=>28477,\n19299=>28478,\n19300=>28479,\n19301=>28480,\n19302=>28481,\n19303=>28482,\n19304=>28483,\n19305=>28484,\n19306=>28485,\n19307=>28486,\n19308=>28487,\n19309=>28488,\n19310=>28489,\n19311=>28490,\n19312=>28491,\n19313=>28492,\n19314=>28493,\n19315=>28494,\n19316=>28495,\n19317=>28496,\n19318=>28497,\n19319=>28498,\n19320=>28499,\n19321=>28500,\n19322=>28501,\n19323=>28502,\n19324=>28503,\n19325=>28504,\n19326=>28505,\n19327=>28506,\n19328=>28507,\n19329=>28508,\n19330=>28509,\n19331=>28510,\n19332=>28511,\n19333=>28512,\n19334=>28513,\n19335=>28514,\n19336=>28515,\n19337=>28516,\n19338=>28517,\n19339=>28518,\n19340=>28519,\n19341=>28520,\n19342=>28521,\n19343=>28522,\n19344=>28523,\n19345=>28524,\n19346=>28525,\n19347=>28526,\n19348=>28527,\n19349=>28528,\n19350=>28529,\n19351=>28530,\n19352=>28531,\n19353=>28532,\n19354=>28533,\n19355=>28534,\n19356=>28535,\n19357=>28536,\n19358=>28537,\n19359=>28538,\n19360=>28539,\n19361=>28540,\n19362=>28541,\n19363=>28542,\n19364=>28543,\n19365=>28544,\n19366=>28545,\n19367=>28546,\n19368=>28547,\n19369=>28548,\n19370=>28549,\n19371=>28550,\n19372=>28551,\n19373=>28552,\n19374=>28553,\n19375=>28554,\n19376=>28555,\n19377=>28556,\n19378=>28557,\n19379=>28558,\n19380=>28559,\n19381=>28560,\n19382=>28561,\n19383=>28562,\n19384=>28563,\n19385=>28564,\n19386=>28565,\n19387=>28566,\n19388=>28567,\n19389=>28568,\n19390=>28569,\n19391=>28570,\n19392=>28571,\n19393=>28572,\n19394=>28573,\n19395=>28574,\n19396=>28575,\n19397=>28576,\n19398=>28577,\n19399=>28578,\n19400=>28579,\n19401=>28580,\n19402=>28581,\n19403=>28582,\n19404=>28583,\n19405=>28584,\n19406=>28585,\n19407=>28586,\n19408=>28587,\n19409=>28588,\n19410=>28589,\n19411=>28590,\n19412=>28591,\n19413=>28592,\n19414=>28593,\n19415=>28594,\n19416=>28595,\n19417=>28596,\n19418=>28597,\n19419=>28598,\n19420=>28599,\n19421=>28600,\n19422=>28601,\n19423=>28602,\n19424=>28603,\n19425=>28604,\n19426=>28605,\n19427=>28606,\n19428=>28607,\n19429=>28608,\n19430=>28609,\n19431=>28610,\n19432=>28611,\n19433=>28612,\n19434=>28613,\n19435=>28614,\n19436=>28615,\n19437=>28616,\n19438=>28617,\n19439=>28618,\n19440=>28619,\n19441=>28620,\n19442=>28621,\n19443=>28622,\n19444=>28623,\n19445=>28624,\n19446=>28625,\n19447=>28626,\n19448=>28627,\n19449=>28628,\n19450=>28629,\n19451=>28630,\n19452=>28631,\n19453=>28632,\n19454=>28633,\n19455=>28634,\n19456=>28635,\n19457=>28636,\n19458=>28637,\n19459=>28638,\n19460=>28639,\n19461=>28640,\n19462=>28641,\n19463=>28642,\n19464=>28643,\n19465=>28644,\n19466=>28645,\n19467=>28646,\n19468=>28647,\n19469=>28648,\n19470=>28649,\n19471=>28650,\n19472=>28651,\n19473=>28652,\n19474=>28653,\n19475=>28654,\n19476=>28655,\n19477=>28656,\n19478=>28657,\n19479=>28658,\n19480=>28659,\n19481=>28660,\n19482=>28661,\n19483=>28662,\n19484=>28663,\n19485=>28664,\n19486=>28665,\n19487=>28666,\n19488=>28667,\n19489=>28668,\n19490=>28669,\n19491=>28670,\n19492=>28671,\n19493=>28672,\n19494=>28673,\n19495=>28674,\n19496=>28675,\n19497=>28676,\n19498=>28677,\n19499=>28678,\n19500=>28679,\n19501=>28680,\n19502=>28681,\n19503=>28682,\n19504=>28683,\n19505=>28684,\n19506=>28685,\n19507=>28686,\n19508=>28687,\n19509=>28688,\n19510=>28689,\n19511=>28690,\n19512=>28691,\n19513=>28692,\n19514=>28693,\n19515=>28694,\n19516=>28695,\n19517=>28696,\n19518=>28697,\n19519=>28698,\n19520=>28699,\n19521=>28700,\n19522=>28701,\n19523=>28702,\n19524=>28703,\n19525=>28704,\n19526=>28705,\n19527=>28706,\n19528=>28707,\n19529=>28708,\n19530=>28709,\n19531=>28710,\n19532=>28711,\n19533=>28712,\n19534=>28713,\n19535=>28714,\n19536=>28715,\n19537=>28716,\n19538=>28717,\n19539=>28718,\n19540=>28719,\n19541=>28720,\n19542=>28721,\n19543=>28722,\n19544=>28723,\n19545=>28724,\n19546=>28725,\n19547=>28726,\n19548=>28727,\n19549=>28728,\n19550=>28729,\n19551=>28730,\n19552=>28731,\n19553=>28732,\n19554=>28733,\n19555=>28734,\n19556=>28735,\n19557=>28736,\n19558=>28737,\n19559=>28738,\n19560=>28739,\n19561=>28740,\n19562=>28741,\n19563=>28742,\n19564=>28743,\n19565=>28744,\n19566=>28745,\n19567=>28746,\n19568=>28747,\n19569=>28748,\n19570=>28749,\n19571=>28750,\n19572=>28751,\n19573=>28752,\n19574=>28753,\n19576=>28754,\n19577=>28755,\n19578=>28756,\n19579=>28757,\n19580=>28758,\n19581=>28759,\n19582=>28760,\n19583=>28761,\n19584=>28762,\n19585=>28763,\n19586=>28764,\n19587=>28765,\n19588=>28766,\n19589=>28767,\n19590=>28768,\n19591=>28769,\n19592=>28770,\n19593=>28771,\n19594=>28772,\n19595=>28773,\n19596=>28774,\n19597=>28775,\n19598=>28776,\n19599=>28777,\n19600=>28778,\n19601=>28779,\n19602=>28780,\n19603=>28781,\n19604=>28782,\n19605=>28783,\n19606=>28784,\n19607=>28785,\n19608=>28786,\n19609=>28787,\n19610=>28788,\n19611=>28789,\n19612=>28790,\n19613=>28791,\n19614=>28792,\n19620=>28793,\n19621=>28794,\n19622=>28795,\n19623=>28796,\n19624=>28797,\n19625=>28798,\n19626=>28799,\n19627=>28800,\n19628=>28801,\n19629=>28802,\n19630=>28803,\n19631=>28804,\n19632=>28805,\n19633=>28806,\n19634=>28807,\n19635=>28808,\n19636=>28809,\n19637=>28810,\n19638=>28811,\n19639=>28812,\n19640=>28813,\n19641=>28814,\n19642=>28815,\n19643=>28816,\n19644=>28817,\n19645=>28818,\n19646=>28819,\n19647=>28820,\n19648=>28821,\n19649=>28822,\n19650=>28823,\n19651=>28824,\n19652=>28825,\n19653=>28826,\n19654=>28827,\n19655=>28828,\n19656=>28829,\n19657=>28830,\n19658=>28831,\n19659=>28832,\n19660=>28833,\n19661=>28834,\n19662=>28835,\n19663=>28836,\n19664=>28837,\n19665=>28838,\n19666=>28839,\n19667=>28840,\n19668=>28841,\n19669=>28842,\n19670=>28843,\n19671=>28844,\n19672=>28845,\n19673=>28846,\n19674=>28847,\n19675=>28848,\n19676=>28849,\n19677=>28850,\n19678=>28851,\n19679=>28852,\n19680=>28853,\n19681=>28854,\n19682=>28855,\n19683=>28856,\n19684=>28857,\n19685=>28858,\n19686=>28859,\n19687=>28860,\n19688=>28861,\n19689=>28862,\n19690=>28863,\n19691=>28864,\n19692=>28865,\n19693=>28866,\n19694=>28867,\n19695=>28868,\n19696=>28869,\n19697=>28870,\n19698=>28871,\n19699=>28872,\n19700=>28873,\n19701=>28874,\n19702=>28875,\n19703=>28876,\n19704=>28877,\n19705=>28878,\n19706=>28879,\n19707=>28880,\n19708=>28881,\n19709=>28882,\n19710=>28883,\n19711=>28884,\n19712=>28885,\n19713=>28886,\n19714=>28887,\n19715=>28888,\n19716=>28889,\n19717=>28890,\n19718=>28891,\n19719=>28892,\n19720=>28893,\n19721=>28894,\n19722=>28895,\n19723=>28896,\n19724=>28897,\n19725=>28898,\n19726=>28899,\n19727=>28900,\n19728=>28901,\n19729=>28902,\n19730=>28903,\n19738=>28904,\n19739=>28905,\n19740=>28906,\n19741=>28907,\n19742=>28908,\n19743=>28909,\n19744=>28910,\n19745=>28911,\n19746=>28912,\n19747=>28913,\n19748=>28914,\n19749=>28915,\n19750=>28916,\n19751=>28917,\n19752=>28918,\n19753=>28919,\n19754=>28920,\n19755=>28921,\n19756=>28922,\n19757=>28923,\n19758=>28924,\n19759=>28925,\n19760=>28926,\n19761=>28927,\n19762=>28928,\n19763=>28929,\n19764=>28930,\n19765=>28931,\n19766=>28932,\n19767=>28933,\n19768=>28934,\n19769=>28935,\n19770=>28936,\n19771=>28937,\n19772=>28938,\n19773=>28939,\n19774=>28940,\n19775=>28941,\n19776=>28942,\n19777=>28943,\n19778=>28944,\n19779=>28945,\n19780=>28946,\n19781=>28947,\n19782=>28948,\n19783=>28949,\n19784=>28950,\n19785=>28951,\n19786=>28952,\n19787=>28953,\n19788=>28954,\n19789=>28955,\n19790=>28956,\n19791=>28957,\n19792=>28958,\n19793=>28959,\n19794=>28960,\n19795=>28961,\n19796=>28962,\n19797=>28963,\n19798=>28964,\n19799=>28965,\n19800=>28966,\n19801=>28967,\n19802=>28968,\n19803=>28969,\n19804=>28970,\n19805=>28971,\n19806=>28972,\n19807=>28973,\n19808=>28974,\n19809=>28975,\n19810=>28976,\n19811=>28977,\n19812=>28978,\n19813=>28979,\n19814=>28980,\n19815=>28981,\n19816=>28982,\n19817=>28983,\n19818=>28984,\n19819=>28985,\n19820=>28986,\n19821=>28987,\n19822=>28988,\n19823=>28989,\n19824=>28990,\n19825=>28991,\n19826=>28992,\n19827=>28993,\n19828=>28994,\n19829=>28995,\n19830=>28996,\n19831=>28997,\n19832=>28998,\n19833=>28999,\n19834=>29000,\n19835=>29001,\n19836=>29002,\n19837=>29003,\n19838=>29004,\n19839=>29005,\n19840=>29006,\n19841=>29007,\n19842=>29008,\n19843=>29009,\n19844=>29010,\n19845=>29011,\n19846=>29012,\n19847=>29013,\n19848=>29014,\n19849=>29015,\n19850=>29016,\n19851=>29017,\n19852=>29018,\n19853=>29019,\n19854=>29020,\n19855=>29021,\n19856=>29022,\n19857=>29023,\n19858=>29024,\n19859=>29025,\n19860=>29026,\n19861=>29027,\n19862=>29028,\n19863=>29029,\n19864=>29030,\n19865=>29031,\n19866=>29032,\n19867=>29033,\n19868=>29034,\n19869=>29035,\n19870=>29036,\n19871=>29037,\n19872=>29038,\n19873=>29039,\n19874=>29040,\n19875=>29041,\n19876=>29042,\n19877=>29043,\n19878=>29044,\n19879=>29045,\n19880=>29046,\n19881=>29047,\n19882=>29048,\n19883=>29049,\n19884=>29050,\n19885=>29051,\n19887=>29052,\n19888=>29053,\n19889=>29054,\n19890=>29055,\n19891=>29056,\n19892=>29057,\n19893=>29058,\n40960=>29064,\n40961=>29065,\n40962=>29066,\n40963=>29067,\n40964=>29068,\n40965=>29069,\n40966=>29070,\n40967=>29071,\n40968=>29072,\n40969=>29073,\n40970=>29074,\n40971=>29075,\n40972=>29076,\n40973=>29077,\n40974=>29078,\n40975=>29079,\n40976=>29080,\n40977=>29081,\n40978=>29082,\n40979=>29083,\n40980=>29084,\n40981=>29085,\n40982=>29086,\n40983=>29087,\n40984=>29088,\n40985=>29089,\n40986=>29090,\n40987=>29091,\n40988=>29092,\n40989=>29093,\n40990=>29094,\n40991=>29095,\n40992=>29096,\n40993=>29097,\n40994=>29098,\n40995=>29099,\n40996=>29100,\n40997=>29101,\n40998=>29102,\n40999=>29103,\n41000=>29104,\n41001=>29105,\n41002=>29106,\n41003=>29107,\n41004=>29108,\n41005=>29109,\n41006=>29110,\n41007=>29111,\n41008=>29112,\n41009=>29113,\n41010=>29114,\n41011=>29115,\n41012=>29116,\n41013=>29117,\n41014=>29118,\n41015=>29119,\n41016=>29120,\n41017=>29121,\n41018=>29122,\n41019=>29123,\n41020=>29124,\n41021=>29125,\n41022=>29126,\n41023=>29127,\n41024=>29128,\n41025=>29129,\n41026=>29130,\n41027=>29131,\n41028=>29132,\n41029=>29133,\n41030=>29134,\n41031=>29135,\n41032=>29136,\n41033=>29137,\n41034=>29138,\n41035=>29139,\n41036=>29140,\n41037=>29141,\n41038=>29142,\n41039=>29143,\n41040=>29144,\n41041=>29145,\n41042=>29146,\n41043=>29147,\n41044=>29148,\n41045=>29149,\n41046=>29150,\n41047=>29151,\n41048=>29152,\n41049=>29153,\n41050=>29154,\n41051=>29155,\n41052=>29156,\n41053=>29157,\n41054=>29158,\n41055=>29159,\n41056=>29160,\n41057=>29161,\n41058=>29162,\n41059=>29163,\n41060=>29164,\n41061=>29165,\n41062=>29166,\n41063=>29167,\n41064=>29168,\n41065=>29169,\n41066=>29170,\n41067=>29171,\n41068=>29172,\n41069=>29173,\n41070=>29174,\n41071=>29175,\n41072=>29176,\n41073=>29177,\n41074=>29178,\n41075=>29179,\n41076=>29180,\n41077=>29181,\n41078=>29182,\n41079=>29183,\n41080=>29184,\n41081=>29185,\n41082=>29186,\n41083=>29187,\n41084=>29188,\n41085=>29189,\n41086=>29190,\n41087=>29191,\n41088=>29192,\n41089=>29193,\n41090=>29194,\n41091=>29195,\n41092=>29196,\n41093=>29197,\n41094=>29198,\n41095=>29199,\n41096=>29200,\n41097=>29201,\n41098=>29202,\n41099=>29203,\n41100=>29204,\n41101=>29205,\n41102=>29206,\n41103=>29207,\n41104=>29208,\n41105=>29209,\n41106=>29210,\n41107=>29211,\n41108=>29212,\n41109=>29213,\n41110=>29214,\n41111=>29215,\n41112=>29216,\n41113=>29217,\n41114=>29218,\n41115=>29219,\n41116=>29220,\n41117=>29221,\n41118=>29222,\n41119=>29223,\n41120=>29224,\n41121=>29225,\n41122=>29226,\n41123=>29227,\n41124=>29228,\n41125=>29229,\n41126=>29230,\n41127=>29231,\n41128=>29232,\n41129=>29233,\n41130=>29234,\n41131=>29235,\n41132=>29236,\n41133=>29237,\n41134=>29238,\n41135=>29239,\n41136=>29240,\n41137=>29241,\n41138=>29242,\n41139=>29243,\n41140=>29244,\n41141=>29245,\n41142=>29246,\n41143=>29247,\n41144=>29248,\n41145=>29249,\n41146=>29250,\n41147=>29251,\n41148=>29252,\n41149=>29253,\n41150=>29254,\n41151=>29255,\n41152=>29256,\n41153=>29257,\n41154=>29258,\n41155=>29259,\n41156=>29260,\n41157=>29261,\n41158=>29262,\n41159=>29263,\n41160=>29264,\n41161=>29265,\n41162=>29266,\n41163=>29267,\n41164=>29268,\n41165=>29269,\n41166=>29270,\n41167=>29271,\n41168=>29272,\n41169=>29273,\n41170=>29274,\n41171=>29275,\n41172=>29276,\n41173=>29277,\n41174=>29278,\n41175=>29279,\n41176=>29280,\n41177=>29281,\n41178=>29282,\n41179=>29283,\n41180=>29284,\n41181=>29285,\n41182=>29286,\n41183=>29287,\n41184=>29288,\n41185=>29289,\n41186=>29290,\n41187=>29291,\n41188=>29292,\n41189=>29293,\n41190=>29294,\n41191=>29295,\n41192=>29296,\n41193=>29297,\n41194=>29298,\n41195=>29299,\n41196=>29300,\n41197=>29301,\n41198=>29302,\n41199=>29303,\n41200=>29304,\n41201=>29305,\n41202=>29306,\n41203=>29307,\n41204=>29308,\n41205=>29309,\n41206=>29310,\n41207=>29311,\n41208=>29312,\n41209=>29313,\n41210=>29314,\n41211=>29315,\n41212=>29316,\n41213=>29317,\n41214=>29318,\n41215=>29319,\n41216=>29320,\n41217=>29321,\n41218=>29322,\n41219=>29323,\n41220=>29324,\n41221=>29325,\n41222=>29326,\n41223=>29327,\n41224=>29328,\n41225=>29329,\n41226=>29330,\n41227=>29331,\n41228=>29332,\n41229=>29333,\n41230=>29334,\n41231=>29335,\n41232=>29336,\n41233=>29337,\n41234=>29338,\n41235=>29339,\n41236=>29340,\n41237=>29341,\n41238=>29342,\n41239=>29343,\n41240=>29344,\n41241=>29345,\n41242=>29346,\n41243=>29347,\n41244=>29348,\n41245=>29349,\n41246=>29350,\n41247=>29351,\n41248=>29352,\n41249=>29353,\n41250=>29354,\n41251=>29355,\n41252=>29356,\n41253=>29357,\n41254=>29358,\n41255=>29359,\n41256=>29360,\n41257=>29361,\n41258=>29362,\n41259=>29363,\n41260=>29364,\n41261=>29365,\n41262=>29366,\n41263=>29367,\n41264=>29368,\n41265=>29369,\n41266=>29370,\n41267=>29371,\n41268=>29372,\n41269=>29373,\n41270=>29374,\n41271=>29375,\n41272=>29376,\n41273=>29377,\n41274=>29378,\n41275=>29379,\n41276=>29380,\n41277=>29381,\n41278=>29382,\n41279=>29383,\n41280=>29384,\n41281=>29385,\n41282=>29386,\n41283=>29387,\n41284=>29388,\n41285=>29389,\n41286=>29390,\n41287=>29391,\n41288=>29392,\n41289=>29393,\n41290=>29394,\n41291=>29395,\n41292=>29396,\n41293=>29397,\n41294=>29398,\n41295=>29399,\n41296=>29400,\n41297=>29401,\n41298=>29402,\n41299=>29403,\n41300=>29404,\n41301=>29405,\n41302=>29406,\n41303=>29407,\n41304=>29408,\n41305=>29409,\n41306=>29410,\n41307=>29411,\n41308=>29412,\n41309=>29413,\n41310=>29414,\n41311=>29415,\n41312=>29416,\n41313=>29417,\n41314=>29418,\n41315=>29419,\n41316=>29420,\n41317=>29421,\n41318=>29422,\n41319=>29423,\n41320=>29424,\n41321=>29425,\n41322=>29426,\n41323=>29427,\n41324=>29428,\n41325=>29429,\n41326=>29430,\n41327=>29431,\n41328=>29432,\n41329=>29433,\n41330=>29434,\n41331=>29435,\n41332=>29436,\n41333=>29437,\n41334=>29438,\n41335=>29439,\n41336=>29440,\n41337=>29441,\n41338=>29442,\n41339=>29443,\n41340=>29444,\n41341=>29445,\n41342=>29446,\n41343=>29447,\n41344=>29448,\n41345=>29449,\n41346=>29450,\n41347=>29451,\n41348=>29452,\n41349=>29453,\n41350=>29454,\n41351=>29455,\n41352=>29456,\n41353=>29457,\n41354=>29458,\n41355=>29459,\n41356=>29460,\n41357=>29461,\n41358=>29462,\n41359=>29463,\n41360=>29464,\n41361=>29465,\n41362=>29466,\n41363=>29467,\n41364=>29468,\n41365=>29469,\n41366=>29470,\n41367=>29471,\n41368=>29472,\n41369=>29473,\n41370=>29474,\n41371=>29475,\n41372=>29476,\n41373=>29477,\n41374=>29478,\n41375=>29479,\n41376=>29480,\n41377=>29481,\n41378=>29482,\n41379=>29483,\n41380=>29484,\n41381=>29485,\n41382=>29486,\n41383=>29487,\n41384=>29488,\n41385=>29489,\n41386=>29490,\n41387=>29491,\n41388=>29492,\n41389=>29493,\n41390=>29494,\n41391=>29495,\n41392=>29496,\n41393=>29497,\n41394=>29498,\n41395=>29499,\n41396=>29500,\n41397=>29501,\n41398=>29502,\n41399=>29503,\n41400=>29504,\n41401=>29505,\n41402=>29506,\n41403=>29507,\n41404=>29508,\n41405=>29509,\n41406=>29510,\n41407=>29511,\n41408=>29512,\n41409=>29513,\n41410=>29514,\n41411=>29515,\n41412=>29516,\n41413=>29517,\n41414=>29518,\n41415=>29519,\n41416=>29520,\n41417=>29521,\n41418=>29522,\n41419=>29523,\n41420=>29524,\n41421=>29525,\n41422=>29526,\n41423=>29527,\n41424=>29528,\n41425=>29529,\n41426=>29530,\n41427=>29531,\n41428=>29532,\n41429=>29533,\n41430=>29534,\n41431=>29535,\n41432=>29536,\n41433=>29537,\n41434=>29538,\n41435=>29539,\n41436=>29540,\n41437=>29541,\n41438=>29542,\n41439=>29543,\n41440=>29544,\n41441=>29545,\n41442=>29546,\n41443=>29547,\n41444=>29548,\n41445=>29549,\n41446=>29550,\n41447=>29551,\n41448=>29552,\n41449=>29553,\n41450=>29554,\n41451=>29555,\n41452=>29556,\n41453=>29557,\n41454=>29558,\n41455=>29559,\n41456=>29560,\n41457=>29561,\n41458=>29562,\n41459=>29563,\n41460=>29564,\n41461=>29565,\n41462=>29566,\n41463=>29567,\n41464=>29568,\n41465=>29569,\n41466=>29570,\n41467=>29571,\n41468=>29572,\n41469=>29573,\n41470=>29574,\n41471=>29575,\n41472=>29576,\n41473=>29577,\n41474=>29578,\n41475=>29579,\n41476=>29580,\n41477=>29581,\n41478=>29582,\n41479=>29583,\n41480=>29584,\n41481=>29585,\n41482=>29586,\n41483=>29587,\n41484=>29588,\n41485=>29589,\n41486=>29590,\n41487=>29591,\n41488=>29592,\n41489=>29593,\n41490=>29594,\n41491=>29595,\n41492=>29596,\n41493=>29597,\n41494=>29598,\n41495=>29599,\n41496=>29600,\n41497=>29601,\n41498=>29602,\n41499=>29603,\n41500=>29604,\n41501=>29605,\n41502=>29606,\n41503=>29607,\n41504=>29608,\n41505=>29609,\n41506=>29610,\n41507=>29611,\n41508=>29612,\n41509=>29613,\n41510=>29614,\n41511=>29615,\n41512=>29616,\n41513=>29617,\n41514=>29618,\n41515=>29619,\n41516=>29620,\n41517=>29621,\n41518=>29622,\n41519=>29623,\n41520=>29624,\n41521=>29625,\n41522=>29626,\n41523=>29627,\n41524=>29628,\n41525=>29629,\n41526=>29630,\n41527=>29631,\n41528=>29632,\n41529=>29633,\n41530=>29634,\n41531=>29635,\n41532=>29636,\n41533=>29637,\n41534=>29638,\n41535=>29639,\n41536=>29640,\n41537=>29641,\n41538=>29642,\n41539=>29643,\n41540=>29644,\n41541=>29645,\n41542=>29646,\n41543=>29647,\n41544=>29648,\n41545=>29649,\n41546=>29650,\n41547=>29651,\n41548=>29652,\n41549=>29653,\n41550=>29654,\n41551=>29655,\n41552=>29656,\n41553=>29657,\n41554=>29658,\n41555=>29659,\n41556=>29660,\n41557=>29661,\n41558=>29662,\n41559=>29663,\n41560=>29664,\n41561=>29665,\n41562=>29666,\n41563=>29667,\n41564=>29668,\n41565=>29669,\n41566=>29670,\n41567=>29671,\n41568=>29672,\n41569=>29673,\n41570=>29674,\n41571=>29675,\n41572=>29676,\n41573=>29677,\n41574=>29678,\n41575=>29679,\n41576=>29680,\n41577=>29681,\n41578=>29682,\n41579=>29683,\n41580=>29684,\n41581=>29685,\n41582=>29686,\n41583=>29687,\n41584=>29688,\n41585=>29689,\n41586=>29690,\n41587=>29691,\n41588=>29692,\n41589=>29693,\n41590=>29694,\n41591=>29695,\n41592=>29696,\n41593=>29697,\n41594=>29698,\n41595=>29699,\n41596=>29700,\n41597=>29701,\n41598=>29702,\n41599=>29703,\n41600=>29704,\n41601=>29705,\n41602=>29706,\n41603=>29707,\n41604=>29708,\n41605=>29709,\n41606=>29710,\n41607=>29711,\n41608=>29712,\n41609=>29713,\n41610=>29714,\n41611=>29715,\n41612=>29716,\n41613=>29717,\n41614=>29718,\n41615=>29719,\n41616=>29720,\n41617=>29721,\n41618=>29722,\n41619=>29723,\n41620=>29724,\n41621=>29725,\n41622=>29726,\n41623=>29727,\n41624=>29728,\n41625=>29729,\n41626=>29730,\n41627=>29731,\n41628=>29732,\n41629=>29733,\n41630=>29734,\n41631=>29735,\n41632=>29736,\n41633=>29737,\n41634=>29738,\n41635=>29739,\n41636=>29740,\n41637=>29741,\n41638=>29742,\n41639=>29743,\n41640=>29744,\n41641=>29745,\n41642=>29746,\n41643=>29747,\n41644=>29748,\n41645=>29749,\n41646=>29750,\n41647=>29751,\n41648=>29752,\n41649=>29753,\n41650=>29754,\n41651=>29755,\n41652=>29756,\n41653=>29757,\n41654=>29758,\n41655=>29759,\n41656=>29760,\n41657=>29761,\n41658=>29762,\n41659=>29763,\n41660=>29764,\n41661=>29765,\n41662=>29766,\n41663=>29767,\n41664=>29768,\n41665=>29769,\n41666=>29770,\n41667=>29771,\n41668=>29772,\n41669=>29773,\n41670=>29774,\n41671=>29775,\n41672=>29776,\n41673=>29777,\n41674=>29778,\n41675=>29779,\n41676=>29780,\n41677=>29781,\n41678=>29782,\n41679=>29783,\n41680=>29784,\n41681=>29785,\n41682=>29786,\n41683=>29787,\n41684=>29788,\n41685=>29789,\n41686=>29790,\n41687=>29791,\n41688=>29792,\n41689=>29793,\n41690=>29794,\n41691=>29795,\n41692=>29796,\n41693=>29797,\n41694=>29798,\n41695=>29799,\n41696=>29800,\n41697=>29801,\n41698=>29802,\n41699=>29803,\n41700=>29804,\n41701=>29805,\n41702=>29806,\n41703=>29807,\n41704=>29808,\n41705=>29809,\n41706=>29810,\n41707=>29811,\n41708=>29812,\n41709=>29813,\n41710=>29814,\n41711=>29815,\n41712=>29816,\n41713=>29817,\n41714=>29818,\n41715=>29819,\n41716=>29820,\n41717=>29821,\n41718=>29822,\n41719=>29823,\n41720=>29824,\n41721=>29825,\n41722=>29826,\n41723=>29827,\n41724=>29828,\n41725=>29829,\n41726=>29830,\n41727=>29831,\n41728=>29832,\n41729=>29833,\n41730=>29834,\n41731=>29835,\n41732=>29836,\n41733=>29837,\n41734=>29838,\n41735=>29839,\n41736=>29840,\n41737=>29841,\n41738=>29842,\n41739=>29843,\n41740=>29844,\n41741=>29845,\n41742=>29846,\n41743=>29847,\n41744=>29848,\n41745=>29849,\n41746=>29850,\n41747=>29851,\n41748=>29852,\n41749=>29853,\n41750=>29854,\n41751=>29855,\n41752=>29856,\n41753=>29857,\n41754=>29858,\n41755=>29859,\n41756=>29860,\n41757=>29861,\n41758=>29862,\n41759=>29863,\n41760=>29864,\n41761=>29865,\n41762=>29866,\n41763=>29867,\n41764=>29868,\n41765=>29869,\n41766=>29870,\n41767=>29871,\n41768=>29872,\n41769=>29873,\n41770=>29874,\n41771=>29875,\n41772=>29876,\n41773=>29877,\n41774=>29878,\n41775=>29879,\n41776=>29880,\n41777=>29881,\n41778=>29882,\n41779=>29883,\n41780=>29884,\n41781=>29885,\n41782=>29886,\n41783=>29887,\n41784=>29888,\n41785=>29889,\n41786=>29890,\n41787=>29891,\n41788=>29892,\n41789=>29893,\n41790=>29894,\n41791=>29895,\n41792=>29896,\n41793=>29897,\n41794=>29898,\n41795=>29899,\n41796=>29900,\n41797=>29901,\n41798=>29902,\n41799=>29903,\n41800=>29904,\n41801=>29905,\n41802=>29906,\n41803=>29907,\n41804=>29908,\n41805=>29909,\n41806=>29910,\n41807=>29911,\n41808=>29912,\n41809=>29913,\n41810=>29914,\n41811=>29915,\n41812=>29916,\n41813=>29917,\n41814=>29918,\n41815=>29919,\n41816=>29920,\n41817=>29921,\n41818=>29922,\n41819=>29923,\n41820=>29924,\n41821=>29925,\n41822=>29926,\n41823=>29927,\n41824=>29928,\n41825=>29929,\n41826=>29930,\n41827=>29931,\n41828=>29932,\n41829=>29933,\n41830=>29934,\n41831=>29935,\n41832=>29936,\n41833=>29937,\n41834=>29938,\n41835=>29939,\n41836=>29940,\n41837=>29941,\n41838=>29942,\n41839=>29943,\n41840=>29944,\n41841=>29945,\n41842=>29946,\n41843=>29947,\n41844=>29948,\n41845=>29949,\n41846=>29950,\n41847=>29951,\n41848=>29952,\n41849=>29953,\n41850=>29954,\n41851=>29955,\n41852=>29956,\n41853=>29957,\n41854=>29958,\n41855=>29959,\n41856=>29960,\n41857=>29961,\n41858=>29962,\n41859=>29963,\n41860=>29964,\n41861=>29965,\n41862=>29966,\n41863=>29967,\n41864=>29968,\n41865=>29969,\n41866=>29970,\n41867=>29971,\n41868=>29972,\n41869=>29973,\n41870=>29974,\n41871=>29975,\n41872=>29976,\n41873=>29977,\n41874=>29978,\n41875=>29979,\n41876=>29980,\n41877=>29981,\n41878=>29982,\n41879=>29983,\n41880=>29984,\n41881=>29985,\n41882=>29986,\n41883=>29987,\n41884=>29988,\n41885=>29989,\n41886=>29990,\n41887=>29991,\n41888=>29992,\n41889=>29993,\n41890=>29994,\n41891=>29995,\n41892=>29996,\n41893=>29997,\n41894=>29998,\n41895=>29999,\n41896=>30000,\n41897=>30001,\n41898=>30002,\n41899=>30003,\n41900=>30004,\n41901=>30005,\n41902=>30006,\n41903=>30007,\n41904=>30008,\n41905=>30009,\n41906=>30010,\n41907=>30011,\n41908=>30012,\n41909=>30013,\n41910=>30014,\n41911=>30015,\n41912=>30016,\n41913=>30017,\n41914=>30018,\n41915=>30019,\n41916=>30020,\n41917=>30021,\n41918=>30022,\n41919=>30023,\n41920=>30024,\n41921=>30025,\n41922=>30026,\n41923=>30027,\n41924=>30028,\n41925=>30029,\n41926=>30030,\n41927=>30031,\n41928=>30032,\n41929=>30033,\n41930=>30034,\n41931=>30035,\n41932=>30036,\n41933=>30037,\n41934=>30038,\n41935=>30039,\n41936=>30040,\n41937=>30041,\n41938=>30042,\n41939=>30043,\n41940=>30044,\n41941=>30045,\n41942=>30046,\n41943=>30047,\n41944=>30048,\n41945=>30049,\n41946=>30050,\n41947=>30051,\n41948=>30052,\n41949=>30053,\n41950=>30054,\n41951=>30055,\n41952=>30056,\n41953=>30057,\n41954=>30058,\n41955=>30059,\n41956=>30060,\n41957=>30061,\n41958=>30062,\n41959=>30063,\n41960=>30064,\n41961=>30065,\n41962=>30066,\n41963=>30067,\n41964=>30068,\n41965=>30069,\n41966=>30070,\n41967=>30071,\n41968=>30072,\n41969=>30073,\n41970=>30074,\n41971=>30075,\n41972=>30076,\n41973=>30077,\n41974=>30078,\n41975=>30079,\n41976=>30080,\n41977=>30081,\n41978=>30082,\n41979=>30083,\n41980=>30084,\n41981=>30085,\n41982=>30086,\n41983=>30087,\n41984=>30088,\n41985=>30089,\n41986=>30090,\n41987=>30091,\n41988=>30092,\n41989=>30093,\n41990=>30094,\n41991=>30095,\n41992=>30096,\n41993=>30097,\n41994=>30098,\n41995=>30099,\n41996=>30100,\n41997=>30101,\n41998=>30102,\n41999=>30103,\n42000=>30104,\n42001=>30105,\n42002=>30106,\n42003=>30107,\n42004=>30108,\n42005=>30109,\n42006=>30110,\n42007=>30111,\n42008=>30112,\n42009=>30113,\n42010=>30114,\n42011=>30115,\n42012=>30116,\n42013=>30117,\n42014=>30118,\n42015=>30119,\n42016=>30120,\n42017=>30121,\n42018=>30122,\n42019=>30123,\n42020=>30124,\n42021=>30125,\n42022=>30126,\n42023=>30127,\n42024=>30128,\n42025=>30129,\n42026=>30130,\n42027=>30131,\n42028=>30132,\n42029=>30133,\n42030=>30134,\n42031=>30135,\n42032=>30136,\n42033=>30137,\n42034=>30138,\n42035=>30139,\n42036=>30140,\n42037=>30141,\n42038=>30142,\n42039=>30143,\n42040=>30144,\n42041=>30145,\n42042=>30146,\n42043=>30147,\n42044=>30148,\n42045=>30149,\n42046=>30150,\n42047=>30151,\n42048=>30152,\n42049=>30153,\n42050=>30154,\n42051=>30155,\n42052=>30156,\n42053=>30157,\n42054=>30158,\n42055=>30159,\n42056=>30160,\n42057=>30161,\n42058=>30162,\n42059=>30163,\n42060=>30164,\n42061=>30165,\n42062=>30166,\n42063=>30167,\n42064=>30168,\n42065=>30169,\n42066=>30170,\n42067=>30171,\n42068=>30172,\n42069=>30173,\n42070=>30174,\n42071=>30175,\n42072=>30176,\n42073=>30177,\n42074=>30178,\n42075=>30179,\n42076=>30180,\n42077=>30181,\n42078=>30182,\n42079=>30183,\n42080=>30184,\n42081=>30185,\n42082=>30186,\n42083=>30187,\n42084=>30188,\n42085=>30189,\n42086=>30190,\n42087=>30191,\n42088=>30192,\n42089=>30193,\n42090=>30194,\n42091=>30195,\n42092=>30196,\n42093=>30197,\n42094=>30198,\n42095=>30199,\n42096=>30200,\n42097=>30201,\n42098=>30202,\n42099=>30203,\n42100=>30204,\n42101=>30205,\n42102=>30206,\n42103=>30207,\n42104=>30208,\n42105=>30209,\n42106=>30210,\n42107=>30211,\n42108=>30212,\n42109=>30213,\n42110=>30214,\n42111=>30215,\n42112=>30216,\n42113=>30217,\n42114=>30218,\n42115=>30219,\n42116=>30220,\n42117=>30221,\n42118=>30222,\n42119=>30223,\n42120=>30224,\n42121=>30225,\n42122=>30226,\n42123=>30227,\n42124=>30228,\n42128=>30229,\n42129=>30230,\n42130=>30231,\n42131=>30232,\n42132=>30233,\n42133=>30234,\n42134=>30235,\n42135=>30236,\n42136=>30237,\n42137=>30238,\n42138=>30239,\n42139=>30240,\n42140=>30241,\n42141=>30242,\n42142=>30243,\n42143=>30244,\n42144=>30245,\n42145=>30246,\n42146=>30247,\n42147=>30248,\n42148=>30249,\n42149=>30250,\n42150=>30251,\n42151=>30252,\n42152=>30253,\n42153=>30254,\n42154=>30255,\n42155=>30256,\n42156=>30257,\n42157=>30258,\n42158=>30259,\n42159=>30260,\n42160=>30261,\n42161=>30262,\n42162=>30263,\n42163=>30264,\n42164=>30265,\n42165=>30266,\n42166=>30267,\n42167=>30268,\n42168=>30269,\n42169=>30270,\n42170=>30271,\n42171=>30272,\n42172=>30273,\n42173=>30274,\n42174=>30275,\n42175=>30276,\n42176=>30277,\n42177=>30278,\n42178=>30279,\n42179=>30280,\n42180=>30281,\n42181=>30282,\n42182=>30283,\n);\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/uni2cid_aj16.php",
    "content": "<?php\n// unicode to cid conversion table is from\n// ftp://ftp.oreilly.com/pub/examples/nutshell/cjkv/adobe/\n// cid2code.txt in aj16.tar.Z\n$cidinfo['uni2cid'] = array(\n160=>1,\n32=>1,\n33=>2,\n34=>3,\n35=>4,\n36=>5,\n37=>6,\n38=>7,\n39=>8,\n40=>9,\n41=>10,\n42=>11,\n43=>12,\n44=>13,\n8209=>14,\n45=>14,\n46=>15,\n47=>16,\n48=>17,\n49=>18,\n50=>19,\n51=>20,\n52=>21,\n53=>22,\n54=>23,\n55=>24,\n56=>25,\n57=>26,\n58=>27,\n59=>28,\n60=>29,\n61=>30,\n62=>31,\n63=>32,\n64=>33,\n65=>34,\n66=>35,\n67=>36,\n68=>37,\n69=>38,\n70=>39,\n71=>40,\n72=>41,\n73=>42,\n74=>43,\n75=>44,\n76=>45,\n77=>46,\n78=>47,\n79=>48,\n80=>49,\n81=>50,\n82=>51,\n83=>52,\n84=>53,\n85=>54,\n86=>55,\n87=>56,\n88=>57,\n89=>58,\n90=>59,\n91=>60,\n165=>61,\n93=>62,\n94=>63,\n818=>64,\n95=>64,\n768=>65,\n96=>65,\n97=>66,\n98=>67,\n99=>68,\n100=>69,\n101=>70,\n102=>71,\n103=>72,\n104=>73,\n105=>74,\n106=>75,\n107=>76,\n108=>77,\n109=>78,\n110=>79,\n111=>80,\n112=>81,\n113=>82,\n114=>83,\n115=>84,\n116=>85,\n117=>86,\n118=>87,\n119=>88,\n120=>89,\n121=>90,\n122=>91,\n123=>92,\n166=>93,\n125=>94,\n732=>95,\n771=>95,\n700=>96,\n8217=>96,\n92=>97,\n699=>98,\n8216=>98,\n124=>99,\n126=>100,\n8764=>100,\n161=>101,\n162=>102,\n163=>103,\n8260=>104,\n402=>105,\n164=>107,\n8220=>108,\n171=>109,\n8249=>110,\n8250=>111,\n64257=>112,\n64258=>113,\n8210=>114,\n8211=>114,\n183=>117,\n8729=>117,\n8226=>119,\n8218=>120,\n8222=>121,\n8221=>122,\n187=>123,\n191=>126,\n769=>127,\n710=>128,\n770=>128,\n175=>129,\n772=>129,\n774=>130,\n775=>131,\n776=>132,\n730=>133,\n778=>133,\n184=>134,\n807=>134,\n779=>135,\n808=>136,\n780=>137,\n822=>138,\n8212=>138,\n198=>139,\n170=>140,\n321=>141,\n216=>142,\n338=>143,\n186=>144,\n230=>145,\n305=>146,\n322=>147,\n248=>148,\n339=>149,\n223=>150,\n173=>151,\n169=>152,\n172=>153,\n174=>154,\n178=>157,\n179=>158,\n181=>159,\n185=>160,\n188=>161,\n189=>162,\n190=>163,\n192=>164,\n193=>165,\n194=>166,\n195=>167,\n196=>168,\n197=>169,\n199=>170,\n200=>171,\n201=>172,\n202=>173,\n203=>174,\n204=>175,\n205=>176,\n206=>177,\n207=>178,\n208=>179,\n209=>180,\n210=>181,\n211=>182,\n212=>183,\n213=>184,\n214=>185,\n217=>187,\n218=>188,\n219=>189,\n220=>190,\n221=>191,\n222=>192,\n224=>193,\n225=>194,\n226=>195,\n227=>196,\n228=>197,\n229=>198,\n231=>199,\n232=>200,\n233=>201,\n234=>202,\n235=>203,\n236=>204,\n237=>205,\n238=>206,\n239=>207,\n240=>208,\n241=>209,\n242=>210,\n243=>211,\n244=>212,\n245=>213,\n246=>214,\n249=>216,\n250=>217,\n251=>218,\n252=>219,\n253=>220,\n254=>221,\n255=>222,\n352=>223,\n376=>224,\n381=>225,\n773=>226,\n8254=>226,\n353=>227,\n8482=>228,\n382=>229,\n8194=>231,\n65512=>323,\n65377=>327,\n65378=>328,\n65379=>329,\n65380=>330,\n65381=>331,\n65382=>332,\n65383=>333,\n65384=>334,\n65385=>335,\n65386=>336,\n65387=>337,\n65388=>338,\n65389=>339,\n65390=>340,\n65391=>341,\n65392=>342,\n65393=>343,\n65394=>344,\n65395=>345,\n65396=>346,\n65397=>347,\n65398=>348,\n65399=>349,\n65400=>350,\n65401=>351,\n65402=>352,\n65403=>353,\n65404=>354,\n65405=>355,\n65406=>356,\n65407=>357,\n65408=>358,\n65409=>359,\n65410=>360,\n65411=>361,\n65412=>362,\n65413=>363,\n65414=>364,\n65415=>365,\n65416=>366,\n65417=>367,\n65418=>368,\n65419=>369,\n65420=>370,\n65421=>371,\n65422=>372,\n65423=>373,\n65424=>374,\n65425=>375,\n65426=>376,\n65427=>377,\n65428=>378,\n65429=>379,\n65430=>380,\n65431=>381,\n65432=>382,\n65433=>383,\n65434=>384,\n65435=>385,\n65436=>386,\n65437=>387,\n65438=>388,\n65439=>389,\n8195=>633,\n12288=>633,\n12289=>634,\n12290=>635,\n65292=>636,\n65294=>637,\n12539=>638,\n65306=>639,\n65307=>640,\n65311=>641,\n65281=>642,\n12443=>643,\n12444=>644,\n180=>645,\n65344=>646,\n168=>647,\n65342=>648,\n65507=>649,\n65343=>650,\n12541=>651,\n12542=>652,\n12445=>653,\n12446=>654,\n12291=>655,\n20189=>656,\n12293=>657,\n12294=>658,\n12295=>659,\n12540=>660,\n8213=>661,\n8208=>662,\n65295=>663,\n65340=>664,\n12316=>665,\n65374=>665,\n8214=>666,\n65372=>667,\n8230=>668,\n8229=>669,\n65288=>674,\n65289=>675,\n12308=>676,\n12309=>677,\n65339=>678,\n65341=>679,\n65371=>680,\n65373=>681,\n12296=>682,\n12297=>683,\n12298=>684,\n12299=>685,\n12300=>686,\n12301=>687,\n12302=>688,\n12303=>689,\n12304=>690,\n12305=>691,\n65291=>692,\n8722=>693,\n65293=>693,\n177=>694,\n215=>695,\n247=>696,\n65309=>697,\n8800=>698,\n65308=>699,\n65310=>700,\n8806=>701,\n8807=>702,\n8734=>703,\n8756=>704,\n9794=>705,\n9792=>706,\n176=>707,\n8242=>708,\n8243=>709,\n8451=>710,\n65509=>711,\n65284=>712,\n65504=>713,\n65505=>714,\n65285=>715,\n65283=>716,\n65286=>717,\n65290=>718,\n65312=>719,\n167=>720,\n9734=>721,\n9733=>722,\n9675=>723,\n9679=>724,\n9678=>725,\n9671=>726,\n9670=>727,\n9633=>728,\n9632=>729,\n9651=>730,\n9650=>731,\n9661=>732,\n9660=>733,\n8251=>734,\n12306=>735,\n8594=>736,\n8592=>737,\n8593=>738,\n8595=>739,\n12307=>740,\n8712=>741,\n8715=>742,\n8838=>743,\n8839=>744,\n8834=>745,\n8835=>746,\n8746=>747,\n8745=>748,\n8743=>749,\n8744=>750,\n65506=>751,\n8658=>752,\n8660=>753,\n8704=>754,\n8707=>755,\n8736=>756,\n8869=>757,\n8978=>758,\n8706=>759,\n8711=>760,\n8801=>761,\n8786=>762,\n8810=>763,\n8811=>764,\n8730=>765,\n8765=>766,\n8733=>767,\n8757=>768,\n8747=>769,\n8748=>770,\n8491=>771,\n8240=>772,\n9839=>773,\n9837=>774,\n9834=>775,\n8224=>776,\n8225=>777,\n182=>778,\n9711=>779,\n65296=>780,\n65297=>781,\n65298=>782,\n65299=>783,\n65300=>784,\n65301=>785,\n65302=>786,\n65303=>787,\n65304=>788,\n65305=>789,\n65313=>790,\n65314=>791,\n65315=>792,\n65316=>793,\n65317=>794,\n65318=>795,\n65319=>796,\n65320=>797,\n65321=>798,\n65322=>799,\n65323=>800,\n65324=>801,\n65325=>802,\n65326=>803,\n65327=>804,\n65328=>805,\n65329=>806,\n65330=>807,\n65331=>808,\n65332=>809,\n65333=>810,\n65334=>811,\n65335=>812,\n65336=>813,\n65337=>814,\n65338=>815,\n65345=>816,\n65346=>817,\n65347=>818,\n65348=>819,\n65349=>820,\n65350=>821,\n65351=>822,\n65352=>823,\n65353=>824,\n65354=>825,\n65355=>826,\n65356=>827,\n65357=>828,\n65358=>829,\n65359=>830,\n65360=>831,\n65361=>832,\n65362=>833,\n65363=>834,\n65364=>835,\n65365=>836,\n65366=>837,\n65367=>838,\n65368=>839,\n65369=>840,\n65370=>841,\n12353=>842,\n12354=>843,\n12355=>844,\n12356=>845,\n12357=>846,\n12358=>847,\n12359=>848,\n12360=>849,\n12361=>850,\n12362=>851,\n12363=>852,\n12364=>853,\n12365=>854,\n12366=>855,\n12367=>856,\n12368=>857,\n12369=>858,\n12370=>859,\n12371=>860,\n12372=>861,\n12373=>862,\n12374=>863,\n12375=>864,\n12376=>865,\n12377=>866,\n12378=>867,\n12379=>868,\n12380=>869,\n12381=>870,\n12382=>871,\n12383=>872,\n12384=>873,\n12385=>874,\n12386=>875,\n12387=>876,\n12388=>877,\n12389=>878,\n12390=>879,\n12391=>880,\n12392=>881,\n12393=>882,\n12394=>883,\n12395=>884,\n12396=>885,\n12397=>886,\n12398=>887,\n12399=>888,\n12400=>889,\n12401=>890,\n12402=>891,\n12403=>892,\n12404=>893,\n12405=>894,\n12406=>895,\n12407=>896,\n12408=>897,\n12409=>898,\n12410=>899,\n12411=>900,\n12412=>901,\n12413=>902,\n12414=>903,\n12415=>904,\n12416=>905,\n12417=>906,\n12418=>907,\n12419=>908,\n12420=>909,\n12421=>910,\n12422=>911,\n12423=>912,\n12424=>913,\n12425=>914,\n12426=>915,\n12427=>916,\n12428=>917,\n12429=>918,\n12430=>919,\n12431=>920,\n12432=>921,\n12433=>922,\n12434=>923,\n12435=>924,\n12449=>925,\n12450=>926,\n12451=>927,\n12452=>928,\n12453=>929,\n12454=>930,\n12455=>931,\n12456=>932,\n12457=>933,\n12458=>934,\n12459=>935,\n12460=>936,\n12461=>937,\n12462=>938,\n12463=>939,\n12464=>940,\n12465=>941,\n12466=>942,\n12467=>943,\n12468=>944,\n12469=>945,\n12470=>946,\n12471=>947,\n12472=>948,\n12473=>949,\n12474=>950,\n12475=>951,\n12476=>952,\n12477=>953,\n12478=>954,\n12479=>955,\n12480=>956,\n12481=>957,\n12482=>958,\n12483=>959,\n12484=>960,\n12485=>961,\n12486=>962,\n12487=>963,\n12488=>964,\n12489=>965,\n12490=>966,\n12491=>967,\n12492=>968,\n12493=>969,\n12494=>970,\n12495=>971,\n12496=>972,\n12497=>973,\n12498=>974,\n12499=>975,\n12500=>976,\n12501=>977,\n12502=>978,\n12503=>979,\n12504=>980,\n12505=>981,\n12506=>982,\n12507=>983,\n12508=>984,\n12509=>985,\n12510=>986,\n12511=>987,\n12512=>988,\n12513=>989,\n12514=>990,\n12515=>991,\n12516=>992,\n12517=>993,\n12518=>994,\n12519=>995,\n12520=>996,\n12521=>997,\n12522=>998,\n12523=>999,\n12524=>1000,\n12525=>1001,\n12526=>1002,\n12527=>1003,\n12528=>1004,\n12529=>1005,\n12530=>1006,\n12531=>1007,\n12532=>1008,\n12533=>1009,\n12534=>1010,\n913=>1011,\n914=>1012,\n915=>1013,\n916=>1014,\n917=>1015,\n918=>1016,\n919=>1017,\n920=>1018,\n921=>1019,\n922=>1020,\n923=>1021,\n924=>1022,\n925=>1023,\n926=>1024,\n927=>1025,\n928=>1026,\n929=>1027,\n931=>1028,\n932=>1029,\n933=>1030,\n934=>1031,\n935=>1032,\n936=>1033,\n937=>1034,\n945=>1035,\n946=>1036,\n947=>1037,\n948=>1038,\n949=>1039,\n950=>1040,\n951=>1041,\n952=>1042,\n953=>1043,\n954=>1044,\n955=>1045,\n956=>1046,\n957=>1047,\n958=>1048,\n959=>1049,\n960=>1050,\n961=>1051,\n963=>1052,\n964=>1053,\n965=>1054,\n966=>1055,\n967=>1056,\n968=>1057,\n969=>1058,\n1040=>1059,\n1041=>1060,\n1042=>1061,\n1043=>1062,\n1044=>1063,\n1045=>1064,\n1025=>1065,\n1046=>1066,\n1047=>1067,\n1048=>1068,\n1049=>1069,\n1050=>1070,\n1051=>1071,\n1052=>1072,\n1053=>1073,\n1054=>1074,\n1055=>1075,\n1056=>1076,\n1057=>1077,\n1058=>1078,\n1059=>1079,\n1060=>1080,\n1061=>1081,\n1062=>1082,\n1063=>1083,\n1064=>1084,\n1065=>1085,\n1066=>1086,\n1067=>1087,\n1068=>1088,\n1069=>1089,\n1070=>1090,\n1071=>1091,\n1072=>1092,\n1073=>1093,\n1074=>1094,\n1075=>1095,\n1076=>1096,\n1077=>1097,\n1105=>1098,\n1078=>1099,\n1079=>1100,\n1080=>1101,\n1081=>1102,\n1082=>1103,\n1083=>1104,\n1084=>1105,\n1085=>1106,\n1086=>1107,\n1087=>1108,\n1088=>1109,\n1089=>1110,\n1090=>1111,\n1091=>1112,\n1092=>1113,\n1093=>1114,\n1094=>1115,\n1095=>1116,\n1096=>1117,\n1097=>1118,\n1098=>1119,\n1099=>1120,\n1100=>1121,\n1101=>1122,\n1102=>1123,\n1103=>1124,\n20124=>1125,\n21782=>1126,\n23043=>1127,\n38463=>1128,\n21696=>1129,\n24859=>1130,\n25384=>1131,\n23030=>1132,\n36898=>1133,\n33909=>1134,\n33564=>1135,\n31312=>1136,\n24746=>1137,\n25569=>1138,\n28197=>1139,\n26093=>1140,\n33894=>1141,\n33446=>1142,\n39925=>1143,\n26771=>1144,\n22311=>1145,\n26017=>1146,\n25201=>1147,\n23451=>1148,\n22992=>1149,\n34427=>1150,\n39156=>1151,\n32098=>1152,\n32190=>1153,\n39822=>1154,\n25110=>1155,\n31903=>1156,\n34999=>1157,\n23433=>1158,\n24245=>1159,\n25353=>1160,\n26263=>1161,\n26696=>1162,\n38343=>1163,\n38797=>1164,\n26447=>1165,\n20197=>1166,\n20234=>1167,\n20301=>1168,\n20381=>1169,\n20553=>1170,\n22258=>1171,\n22839=>1172,\n22996=>1173,\n23041=>1174,\n23561=>1175,\n24799=>1176,\n24847=>1177,\n24944=>1178,\n26131=>1179,\n26885=>1180,\n28858=>1181,\n30031=>1182,\n30064=>1183,\n31227=>1184,\n32173=>1185,\n32239=>1186,\n32963=>1187,\n33806=>1188,\n12176=>1189,\n34915=>1189,\n35586=>1190,\n36949=>1191,\n36986=>1192,\n21307=>1193,\n20117=>1194,\n20133=>1195,\n22495=>1196,\n32946=>1197,\n37057=>1198,\n30959=>1199,\n12032=>1200,\n19968=>1200,\n22769=>1201,\n28322=>1202,\n36920=>1203,\n31282=>1204,\n33576=>1205,\n33419=>1206,\n39983=>1207,\n20801=>1208,\n21360=>1209,\n21693=>1210,\n21729=>1211,\n22240=>1212,\n23035=>1213,\n24341=>1214,\n39154=>1215,\n28139=>1216,\n32996=>1217,\n34093=>1218,\n38498=>1219,\n38512=>1220,\n38560=>1221,\n38907=>1222,\n21515=>1223,\n21491=>1224,\n23431=>1225,\n28879=>1226,\n12155=>1227,\n32701=>1227,\n36802=>1228,\n12204=>1229,\n38632=>1229,\n21359=>1230,\n40284=>1231,\n31418=>1232,\n19985=>1233,\n30867=>1234,\n12165=>1235,\n33276=>1235,\n28198=>1236,\n22040=>1237,\n21764=>1238,\n27421=>1239,\n34074=>1240,\n39995=>1241,\n23013=>1242,\n21417=>1243,\n28006=>1244,\n12128=>1245,\n29916=>1245,\n38287=>1246,\n22082=>1247,\n20113=>1248,\n36939=>1249,\n38642=>1250,\n33615=>1251,\n39180=>1252,\n21473=>1253,\n21942=>1254,\n23344=>1255,\n24433=>1256,\n26144=>1257,\n26355=>1258,\n26628=>1259,\n27704=>1260,\n27891=>1261,\n27945=>1262,\n29787=>1263,\n30408=>1264,\n31310=>1265,\n38964=>1266,\n33521=>1267,\n34907=>1268,\n35424=>1269,\n37613=>1270,\n28082=>1271,\n30123=>1272,\n30410=>1273,\n39365=>1274,\n24742=>1275,\n35585=>1276,\n36234=>1277,\n38322=>1278,\n27022=>1279,\n21421=>1280,\n20870=>1281,\n22290=>1282,\n22576=>1283,\n22852=>1284,\n23476=>1285,\n24310=>1286,\n24616=>1287,\n25513=>1288,\n25588=>1289,\n27839=>1290,\n28436=>1291,\n28814=>1292,\n28948=>1293,\n29017=>1294,\n29141=>1295,\n29503=>1296,\n32257=>1297,\n33398=>1298,\n33489=>1299,\n34199=>1300,\n36960=>1301,\n37467=>1302,\n40219=>1303,\n22633=>1304,\n26044=>1305,\n27738=>1306,\n29989=>1307,\n20985=>1308,\n22830=>1309,\n22885=>1310,\n24448=>1311,\n24540=>1312,\n25276=>1313,\n26106=>1314,\n27178=>1315,\n27431=>1316,\n27572=>1317,\n29579=>1318,\n32705=>1319,\n35158=>1320,\n40236=>1321,\n40206=>1322,\n12009=>1323,\n40644=>1323,\n23713=>1324,\n27798=>1325,\n33659=>1326,\n20740=>1327,\n23627=>1328,\n25014=>1329,\n33222=>1330,\n26742=>1331,\n29281=>1332,\n12036=>1333,\n20057=>1333,\n20474=>1334,\n21368=>1335,\n24681=>1336,\n28201=>1337,\n31311=>1338,\n12211=>1339,\n38899=>1339,\n19979=>1340,\n21270=>1341,\n20206=>1342,\n20309=>1343,\n20285=>1344,\n20385=>1345,\n20339=>1346,\n21152=>1347,\n21487=>1348,\n22025=>1349,\n22799=>1350,\n23233=>1351,\n23478=>1352,\n23521=>1353,\n31185=>1354,\n26247=>1355,\n26524=>1356,\n26550=>1357,\n27468=>1358,\n27827=>1359,\n12117=>1360,\n28779=>1360,\n29634=>1361,\n31117=>1362,\n12146=>1363,\n31166=>1363,\n31292=>1364,\n31623=>1365,\n33457=>1366,\n33499=>1367,\n33540=>1368,\n33655=>1369,\n33775=>1370,\n33747=>1371,\n34662=>1372,\n35506=>1373,\n22057=>1374,\n36008=>1375,\n36838=>1376,\n36942=>1377,\n38686=>1378,\n34442=>1379,\n20420=>1380,\n23784=>1381,\n25105=>1382,\n12123=>1383,\n29273=>1383,\n30011=>1384,\n33253=>1385,\n33469=>1386,\n34558=>1387,\n36032=>1388,\n38597=>1389,\n39187=>1390,\n39381=>1391,\n20171=>1392,\n20250=>1393,\n35299=>1394,\n22238=>1395,\n22602=>1396,\n22730=>1397,\n24315=>1398,\n24555=>1399,\n24618=>1400,\n24724=>1401,\n24674=>1402,\n25040=>1403,\n25106=>1404,\n25296=>1405,\n25913=>1406,\n39745=>1407,\n26214=>1408,\n26800=>1409,\n28023=>1410,\n28784=>1411,\n30028=>1412,\n30342=>1413,\n32117=>1414,\n33445=>1415,\n34809=>1416,\n38283=>1417,\n38542=>1418,\n12185=>1419,\n35997=>1419,\n20977=>1420,\n21182=>1421,\n22806=>1422,\n21683=>1423,\n23475=>1424,\n23830=>1425,\n24936=>1426,\n27010=>1427,\n28079=>1428,\n30861=>1429,\n33995=>1430,\n34903=>1431,\n35442=>1432,\n37799=>1433,\n39608=>1434,\n28012=>1435,\n39336=>1436,\n34521=>1437,\n22435=>1438,\n26623=>1439,\n34510=>1440,\n37390=>1441,\n21123=>1442,\n22151=>1443,\n21508=>1444,\n24275=>1445,\n25313=>1446,\n25785=>1447,\n26684=>1448,\n26680=>1449,\n27579=>1450,\n29554=>1451,\n30906=>1452,\n31339=>1453,\n35226=>1454,\n12179=>1455,\n35282=>1455,\n36203=>1456,\n36611=>1457,\n37101=>1458,\n38307=>1459,\n38548=>1460,\n12208=>1461,\n38761=>1461,\n23398=>1462,\n23731=>1463,\n27005=>1464,\n38989=>1465,\n38990=>1466,\n25499=>1467,\n31520=>1468,\n27179=>1469,\n27263=>1470,\n26806=>1471,\n39949=>1472,\n28511=>1473,\n21106=>1474,\n21917=>1475,\n24688=>1476,\n25324=>1477,\n27963=>1478,\n28167=>1479,\n28369=>1480,\n33883=>1481,\n35088=>1482,\n36676=>1483,\n19988=>1484,\n39993=>1485,\n21494=>1486,\n26907=>1487,\n27194=>1488,\n38788=>1489,\n26666=>1490,\n20828=>1491,\n31427=>1492,\n33970=>1493,\n37340=>1494,\n37772=>1495,\n22107=>1496,\n40232=>1497,\n26658=>1498,\n33541=>1499,\n33841=>1500,\n31909=>1501,\n21000=>1502,\n33477=>1503,\n12129=>1504,\n29926=>1504,\n20094=>1505,\n20355=>1506,\n20896=>1507,\n23506=>1508,\n21002=>1509,\n21208=>1510,\n21223=>1511,\n24059=>1512,\n21914=>1513,\n22570=>1514,\n23014=>1515,\n23436=>1516,\n23448=>1517,\n23515=>1518,\n12082=>1519,\n24178=>1519,\n24185=>1520,\n24739=>1521,\n24863=>1522,\n24931=>1523,\n25022=>1524,\n25563=>1525,\n25954=>1526,\n26577=>1527,\n26707=>1528,\n26874=>1529,\n27454=>1530,\n27475=>1531,\n27735=>1532,\n28450=>1533,\n28567=>1534,\n28485=>1535,\n29872=>1536,\n12130=>1537,\n29976=>1537,\n30435=>1538,\n30475=>1539,\n31487=>1540,\n31649=>1541,\n31777=>1542,\n32233=>1543,\n12152=>1544,\n32566=>1544,\n32752=>1545,\n32925=>1546,\n33382=>1547,\n33694=>1548,\n35251=>1549,\n35532=>1550,\n36011=>1551,\n36996=>1552,\n37969=>1553,\n38291=>1554,\n38289=>1555,\n38306=>1556,\n38501=>1557,\n38867=>1558,\n39208=>1559,\n33304=>1560,\n20024=>1561,\n21547=>1562,\n23736=>1563,\n24012=>1564,\n29609=>1565,\n30284=>1566,\n30524=>1567,\n23721=>1568,\n32747=>1569,\n36107=>1570,\n38593=>1571,\n38929=>1572,\n38996=>1573,\n39000=>1574,\n20225=>1575,\n20238=>1576,\n21361=>1577,\n21916=>1578,\n22120=>1579,\n22522=>1580,\n22855=>1581,\n23305=>1582,\n23492=>1583,\n23696=>1584,\n24076=>1585,\n24190=>1586,\n24524=>1587,\n25582=>1588,\n26426=>1589,\n26071=>1590,\n26082=>1591,\n26399=>1592,\n26827=>1593,\n26820=>1594,\n27231=>1595,\n24112=>1596,\n27589=>1597,\n27671=>1598,\n27773=>1599,\n30079=>1600,\n31048=>1601,\n23395=>1602,\n31232=>1603,\n32000=>1604,\n24509=>1605,\n35215=>1606,\n35352=>1607,\n36020=>1608,\n36215=>1609,\n36556=>1610,\n36637=>1611,\n39138=>1612,\n39438=>1613,\n12004=>1614,\n12225=>1614,\n39740=>1614,\n12018=>1615,\n20096=>1615,\n20605=>1616,\n20736=>1617,\n22931=>1618,\n23452=>1619,\n25135=>1620,\n25216=>1621,\n25836=>1622,\n27450=>1623,\n29344=>1624,\n30097=>1625,\n31047=>1626,\n32681=>1627,\n34811=>1628,\n35516=>1629,\n35696=>1630,\n25516=>1631,\n33738=>1632,\n38816=>1633,\n21513=>1634,\n21507=>1635,\n21931=>1636,\n26708=>1637,\n27224=>1638,\n35440=>1639,\n30759=>1640,\n26485=>1641,\n12233=>1642,\n40653=>1642,\n21364=>1643,\n23458=>1644,\n33050=>1645,\n34384=>1646,\n36870=>1647,\n19992=>1648,\n20037=>1649,\n20167=>1650,\n20241=>1651,\n21450=>1652,\n21560=>1653,\n23470=>1654,\n12088=>1655,\n24339=>1655,\n24613=>1656,\n25937=>1657,\n26429=>1658,\n27714=>1659,\n27762=>1660,\n27875=>1661,\n28792=>1662,\n29699=>1663,\n31350=>1664,\n31406=>1665,\n31496=>1666,\n32026=>1667,\n31998=>1668,\n32102=>1669,\n26087=>1670,\n12124=>1671,\n29275=>1671,\n21435=>1672,\n23621=>1673,\n24040=>1674,\n25298=>1675,\n25312=>1676,\n25369=>1677,\n28192=>1678,\n34394=>1679,\n35377=>1680,\n36317=>1681,\n37624=>1682,\n28417=>1683,\n31142=>1684,\n12226=>1685,\n39770=>1685,\n20136=>1686,\n20139=>1687,\n20140=>1688,\n20379=>1689,\n20384=>1690,\n20689=>1691,\n20807=>1692,\n31478=>1693,\n20849=>1694,\n20982=>1695,\n21332=>1696,\n21281=>1697,\n21375=>1698,\n21483=>1699,\n21932=>1700,\n22659=>1701,\n23777=>1702,\n24375=>1703,\n24394=>1704,\n24623=>1705,\n24656=>1706,\n24685=>1707,\n25375=>1708,\n25945=>1709,\n27211=>1710,\n27841=>1711,\n29378=>1712,\n29421=>1713,\n30703=>1714,\n33016=>1715,\n33029=>1716,\n33288=>1717,\n34126=>1718,\n37111=>1719,\n37857=>1720,\n38911=>1721,\n39255=>1722,\n39514=>1723,\n20208=>1724,\n20957=>1725,\n23597=>1726,\n26241=>1727,\n26989=>1728,\n23616=>1729,\n26354=>1730,\n26997=>1731,\n12127=>1732,\n29577=>1732,\n26704=>1733,\n31873=>1734,\n20677=>1735,\n21220=>1736,\n22343=>1737,\n12081=>1738,\n24062=>1738,\n37670=>1739,\n12100=>1740,\n26020=>1740,\n27427=>1741,\n27453=>1742,\n29748=>1743,\n31105=>1744,\n31165=>1745,\n31563=>1746,\n32202=>1747,\n33465=>1748,\n33740=>1749,\n34943=>1750,\n35167=>1751,\n35641=>1752,\n36817=>1753,\n12198=>1754,\n37329=>1754,\n21535=>1755,\n37504=>1756,\n20061=>1757,\n20534=>1758,\n21477=>1759,\n21306=>1760,\n29399=>1761,\n29590=>1762,\n30697=>1763,\n33510=>1764,\n36527=>1765,\n39366=>1766,\n39368=>1767,\n39378=>1768,\n20855=>1769,\n24858=>1770,\n34398=>1771,\n21936=>1772,\n31354=>1773,\n20598=>1774,\n23507=>1775,\n36935=>1776,\n38533=>1777,\n20018=>1778,\n27355=>1779,\n37351=>1780,\n23633=>1781,\n23624=>1782,\n25496=>1783,\n31391=>1784,\n27795=>1785,\n38772=>1786,\n36705=>1787,\n31402=>1788,\n29066=>1789,\n38536=>1790,\n31874=>1791,\n26647=>1792,\n32368=>1793,\n26705=>1794,\n37740=>1795,\n21234=>1796,\n21531=>1797,\n34219=>1798,\n35347=>1799,\n32676=>1800,\n36557=>1801,\n37089=>1802,\n21350=>1803,\n34952=>1804,\n31041=>1805,\n20418=>1806,\n20670=>1807,\n21009=>1808,\n20804=>1809,\n21843=>1810,\n22317=>1811,\n29674=>1812,\n22411=>1813,\n22865=>1814,\n24418=>1815,\n24452=>1816,\n24693=>1817,\n24950=>1818,\n24935=>1819,\n25001=>1820,\n25522=>1821,\n25658=>1822,\n25964=>1823,\n26223=>1824,\n26690=>1825,\n28179=>1826,\n30054=>1827,\n31293=>1828,\n31995=>1829,\n32076=>1830,\n32153=>1831,\n32331=>1832,\n32619=>1833,\n33550=>1834,\n33610=>1835,\n34509=>1836,\n35336=>1837,\n35427=>1838,\n35686=>1839,\n36605=>1840,\n38938=>1841,\n40335=>1842,\n33464=>1843,\n36814=>1844,\n39912=>1845,\n21127=>1846,\n25119=>1847,\n25731=>1848,\n28608=>1849,\n38553=>1850,\n26689=>1851,\n20625=>1852,\n12107=>1853,\n27424=>1853,\n27770=>1854,\n28500=>1855,\n12147=>1856,\n31348=>1856,\n32080=>1857,\n12174=>1858,\n34880=>1858,\n35363=>1859,\n12105=>1860,\n26376=>1860,\n20214=>1861,\n20537=>1862,\n20518=>1863,\n20581=>1864,\n20860=>1865,\n21048=>1866,\n21091=>1867,\n21927=>1868,\n22287=>1869,\n22533=>1870,\n23244=>1871,\n24314=>1872,\n25010=>1873,\n25080=>1874,\n25331=>1875,\n25458=>1876,\n26908=>1877,\n27177=>1878,\n29309=>1879,\n12125=>1880,\n29356=>1880,\n29486=>1881,\n30740=>1882,\n30831=>1883,\n32121=>1884,\n30476=>1885,\n32937=>1886,\n12178=>1887,\n35211=>1887,\n35609=>1888,\n36066=>1889,\n36562=>1890,\n36963=>1891,\n37749=>1892,\n38522=>1893,\n38997=>1894,\n39443=>1895,\n40568=>1896,\n20803=>1897,\n21407=>1898,\n21427=>1899,\n24187=>1900,\n24358=>1901,\n28187=>1902,\n28304=>1903,\n12126=>1904,\n29572=>1904,\n29694=>1905,\n32067=>1906,\n33335=>1907,\n12180=>1908,\n35328=>1908,\n35578=>1909,\n38480=>1910,\n20046=>1911,\n20491=>1912,\n21476=>1913,\n21628=>1914,\n22266=>1915,\n22993=>1916,\n23396=>1917,\n12080=>1918,\n24049=>1918,\n24235=>1919,\n24359=>1920,\n12094=>1921,\n25144=>1921,\n25925=>1922,\n26543=>1923,\n28246=>1924,\n29392=>1925,\n31946=>1926,\n34996=>1927,\n32929=>1928,\n32993=>1929,\n33776=>1930,\n11969=>1931,\n34382=>1931,\n35463=>1932,\n36328=>1933,\n37431=>1934,\n38599=>1935,\n39015=>1936,\n12238=>1937,\n40723=>1937,\n20116=>1938,\n20114=>1939,\n20237=>1940,\n21320=>1941,\n21577=>1942,\n21566=>1943,\n23087=>1944,\n24460=>1945,\n24481=>1946,\n24735=>1947,\n26791=>1948,\n27278=>1949,\n29786=>1950,\n30849=>1951,\n35486=>1952,\n35492=>1953,\n35703=>1954,\n37264=>1955,\n20062=>1956,\n39881=>1957,\n20132=>1958,\n20348=>1959,\n20399=>1960,\n20505=>1961,\n20502=>1962,\n20809=>1963,\n20844=>1964,\n21151=>1965,\n21177=>1966,\n21246=>1967,\n21402=>1968,\n12061=>1969,\n21475=>1969,\n21521=>1970,\n21518=>1971,\n21897=>1972,\n22353=>1973,\n22434=>1974,\n22909=>1975,\n23380=>1976,\n23389=>1977,\n23439=>1978,\n12079=>1979,\n24037=>1979,\n24039=>1980,\n24055=>1981,\n24184=>1982,\n24195=>1983,\n24218=>1984,\n24247=>1985,\n24344=>1986,\n24658=>1987,\n24908=>1988,\n25239=>1989,\n25304=>1990,\n25511=>1991,\n25915=>1992,\n26114=>1993,\n26179=>1994,\n26356=>1995,\n26477=>1996,\n26657=>1997,\n26775=>1998,\n27083=>1999,\n27743=>2000,\n27946=>2001,\n28009=>2002,\n28207=>2003,\n28317=>2004,\n30002=>2005,\n30343=>2006,\n30828=>2007,\n31295=>2008,\n31968=>2009,\n32005=>2010,\n32024=>2011,\n32094=>2012,\n32177=>2013,\n32789=>2014,\n32771=>2015,\n32943=>2016,\n32945=>2017,\n33108=>2018,\n33167=>2019,\n33322=>2020,\n33618=>2021,\n12175=>2022,\n34892=>2022,\n34913=>2023,\n35611=>2024,\n36002=>2025,\n36092=>2026,\n37066=>2027,\n37237=>2028,\n37489=>2029,\n30783=>2030,\n37628=>2031,\n38308=>2032,\n38477=>2033,\n38917=>2034,\n12217=>2035,\n39321=>2035,\n12220=>2036,\n39640=>2036,\n40251=>2037,\n21083=>2038,\n21163=>2039,\n21495=>2040,\n21512=>2041,\n22741=>2042,\n25335=>2043,\n28640=>2044,\n35946=>2045,\n36703=>2046,\n40633=>2047,\n20811=>2048,\n21051=>2049,\n21578=>2050,\n22269=>2051,\n31296=>2052,\n37239=>2053,\n40288=>2054,\n12234=>2055,\n40658=>2055,\n29508=>2056,\n28425=>2057,\n33136=>2058,\n29969=>2059,\n24573=>2060,\n24794=>2061,\n12219=>2062,\n39592=>2062,\n29403=>2063,\n36796=>2064,\n27492=>2065,\n38915=>2066,\n20170=>2067,\n22256=>2068,\n22372=>2069,\n22718=>2070,\n23130=>2071,\n24680=>2072,\n25031=>2073,\n26127=>2074,\n26118=>2075,\n26681=>2076,\n26801=>2077,\n28151=>2078,\n30165=>2079,\n32058=>2080,\n12169=>2081,\n33390=>2081,\n39746=>2082,\n20123=>2083,\n20304=>2084,\n21449=>2085,\n21766=>2086,\n23919=>2087,\n24038=>2088,\n24046=>2089,\n26619=>2090,\n27801=>2091,\n29811=>2092,\n30722=>2093,\n35408=>2094,\n37782=>2095,\n35039=>2096,\n22352=>2097,\n24231=>2098,\n25387=>2099,\n20661=>2100,\n20652=>2101,\n20877=>2102,\n26368=>2103,\n21705=>2104,\n22622=>2105,\n22971=>2106,\n23472=>2107,\n24425=>2108,\n25165=>2109,\n25505=>2110,\n26685=>2111,\n27507=>2112,\n28168=>2113,\n28797=>2114,\n37319=>2115,\n29312=>2116,\n30741=>2117,\n30758=>2118,\n31085=>2119,\n25998=>2120,\n32048=>2121,\n33756=>2122,\n35009=>2123,\n36617=>2124,\n38555=>2125,\n21092=>2126,\n22312=>2127,\n26448=>2128,\n32618=>2129,\n36001=>2130,\n20916=>2131,\n22338=>2132,\n38442=>2133,\n22586=>2134,\n27018=>2135,\n32948=>2136,\n21682=>2137,\n23822=>2138,\n22524=>2139,\n30869=>2140,\n40442=>2141,\n20316=>2142,\n21066=>2143,\n21643=>2144,\n25662=>2145,\n26152=>2146,\n26388=>2147,\n26613=>2148,\n31364=>2149,\n31574=>2150,\n32034=>2151,\n37679=>2152,\n26716=>2153,\n39853=>2154,\n31545=>2155,\n21273=>2156,\n20874=>2157,\n21047=>2158,\n23519=>2159,\n25334=>2160,\n25774=>2161,\n25830=>2162,\n26413=>2163,\n27578=>2164,\n34217=>2165,\n38609=>2166,\n30352=>2167,\n39894=>2168,\n25420=>2169,\n37638=>2170,\n39851=>2171,\n12139=>2172,\n30399=>2172,\n26194=>2173,\n19977=>2174,\n20632=>2175,\n21442=>2176,\n12077=>2177,\n23665=>2177,\n24808=>2178,\n25746=>2179,\n25955=>2180,\n26719=>2181,\n29158=>2182,\n29642=>2183,\n29987=>2184,\n31639=>2185,\n32386=>2186,\n34453=>2187,\n35715=>2188,\n36059=>2189,\n37240=>2190,\n39184=>2191,\n26028=>2192,\n26283=>2193,\n27531=>2194,\n20181=>2195,\n20180=>2196,\n20282=>2197,\n20351=>2198,\n21050=>2199,\n21496=>2200,\n21490=>2201,\n21987=>2202,\n22235=>2203,\n12064=>2204,\n22763=>2204,\n22987=>2205,\n22985=>2206,\n23039=>2207,\n12070=>2208,\n23376=>2208,\n23629=>2209,\n24066=>2210,\n24107=>2211,\n24535=>2212,\n24605=>2213,\n25351=>2214,\n12096=>2215,\n25903=>2215,\n23388=>2216,\n26031=>2217,\n26045=>2218,\n26088=>2219,\n26525=>2220,\n12108=>2221,\n27490=>2221,\n27515=>2222,\n12114=>2223,\n27663=>2223,\n29509=>2224,\n31049=>2225,\n31169=>2226,\n12151=>2227,\n31992=>2227,\n32025=>2228,\n32043=>2229,\n32930=>2230,\n33026=>2231,\n12164=>2232,\n33267=>2232,\n35222=>2233,\n35422=>2234,\n35433=>2235,\n35430=>2236,\n35468=>2237,\n35566=>2238,\n36039=>2239,\n36060=>2240,\n38604=>2241,\n39164=>2242,\n12013=>2243,\n27503=>2243,\n20107=>2244,\n20284=>2245,\n20365=>2246,\n20816=>2247,\n23383=>2248,\n23546=>2249,\n24904=>2250,\n25345=>2251,\n26178=>2252,\n27425=>2253,\n28363=>2254,\n27835=>2255,\n29246=>2256,\n29885=>2257,\n30164=>2258,\n30913=>2259,\n12144=>2260,\n31034=>2260,\n12157=>2261,\n32780=>2261,\n12159=>2262,\n32819=>2262,\n12163=>2263,\n33258=>2263,\n33940=>2264,\n36766=>2265,\n27728=>2266,\n12229=>2267,\n40575=>2267,\n24335=>2268,\n35672=>2269,\n40235=>2270,\n31482=>2271,\n36600=>2272,\n23437=>2273,\n38635=>2274,\n19971=>2275,\n21489=>2276,\n22519=>2277,\n22833=>2278,\n23241=>2279,\n23460=>2280,\n24713=>2281,\n28287=>2282,\n28422=>2283,\n30142=>2284,\n36074=>2285,\n23455=>2286,\n34048=>2287,\n31712=>2288,\n20594=>2289,\n26612=>2290,\n33437=>2291,\n23649=>2292,\n34122=>2293,\n32286=>2294,\n33294=>2295,\n20889=>2296,\n23556=>2297,\n25448=>2298,\n36198=>2299,\n26012=>2300,\n29038=>2301,\n31038=>2302,\n32023=>2303,\n32773=>2304,\n35613=>2305,\n12190=>2306,\n36554=>2306,\n36974=>2307,\n34503=>2308,\n37034=>2309,\n20511=>2310,\n21242=>2311,\n23610=>2312,\n26451=>2313,\n28796=>2314,\n29237=>2315,\n37196=>2316,\n37320=>2317,\n37675=>2318,\n33509=>2319,\n23490=>2320,\n24369=>2321,\n24825=>2322,\n20027=>2323,\n21462=>2324,\n23432=>2325,\n12095=>2326,\n25163=>2326,\n26417=>2327,\n27530=>2328,\n29417=>2329,\n29664=>2330,\n31278=>2331,\n33131=>2332,\n36259=>2333,\n37202=>2334,\n12216=>2335,\n39318=>2335,\n20754=>2336,\n21463=>2337,\n21610=>2338,\n23551=>2339,\n25480=>2340,\n27193=>2341,\n32172=>2342,\n38656=>2343,\n22234=>2344,\n21454=>2345,\n21608=>2346,\n23447=>2347,\n23601=>2348,\n24030=>2349,\n20462=>2350,\n24833=>2351,\n25342=>2352,\n27954=>2353,\n31168=>2354,\n31179=>2355,\n32066=>2356,\n32333=>2357,\n32722=>2358,\n33261=>2359,\n12168=>2360,\n33311=>2360,\n33936=>2361,\n34886=>2362,\n35186=>2363,\n35728=>2364,\n36468=>2365,\n36655=>2366,\n36913=>2367,\n37195=>2368,\n37228=>2369,\n38598=>2370,\n37276=>2371,\n20160=>2372,\n20303=>2373,\n20805=>2374,\n12055=>2375,\n21313=>2375,\n24467=>2376,\n25102=>2377,\n26580=>2378,\n27713=>2379,\n28171=>2380,\n29539=>2381,\n32294=>2382,\n37325=>2383,\n37507=>2384,\n21460=>2385,\n22809=>2386,\n23487=>2387,\n28113=>2388,\n31069=>2389,\n32302=>2390,\n31899=>2391,\n22654=>2392,\n29087=>2393,\n20986=>2394,\n34899=>2395,\n36848=>2396,\n20426=>2397,\n23803=>2398,\n26149=>2399,\n30636=>2400,\n31459=>2401,\n33308=>2402,\n39423=>2403,\n20934=>2404,\n24490=>2405,\n26092=>2406,\n26991=>2407,\n27529=>2408,\n28147=>2409,\n28310=>2410,\n28516=>2411,\n30462=>2412,\n32020=>2413,\n24033=>2414,\n36981=>2415,\n37255=>2416,\n38918=>2417,\n20966=>2418,\n21021=>2419,\n25152=>2420,\n26257=>2421,\n26329=>2422,\n28186=>2423,\n24246=>2424,\n32210=>2425,\n32626=>2426,\n26360=>2427,\n34223=>2428,\n34295=>2429,\n35576=>2430,\n21161=>2431,\n21465=>2432,\n12069=>2433,\n22899=>2433,\n24207=>2434,\n24464=>2435,\n24661=>2436,\n37604=>2437,\n38500=>2438,\n20663=>2439,\n20767=>2440,\n21213=>2441,\n21280=>2442,\n21319=>2443,\n21484=>2444,\n21736=>2445,\n21830=>2446,\n21809=>2447,\n22039=>2448,\n22888=>2449,\n22974=>2450,\n23100=>2451,\n23477=>2452,\n23558=>2453,\n12073=>2454,\n23567=>2454,\n23569=>2455,\n23578=>2456,\n24196=>2457,\n24202=>2458,\n24288=>2459,\n24432=>2460,\n25215=>2461,\n25220=>2462,\n25307=>2463,\n25484=>2464,\n25463=>2465,\n26119=>2466,\n26124=>2467,\n26157=>2468,\n26230=>2469,\n26494=>2470,\n26786=>2471,\n27167=>2472,\n27189=>2473,\n27836=>2474,\n28040=>2475,\n28169=>2476,\n28248=>2477,\n28988=>2478,\n28966=>2479,\n29031=>2480,\n30151=>2481,\n30465=>2482,\n30813=>2483,\n30977=>2484,\n31077=>2485,\n31216=>2486,\n31456=>2487,\n31505=>2488,\n31911=>2489,\n32057=>2490,\n32918=>2491,\n33750=>2492,\n33931=>2493,\n34121=>2494,\n34909=>2495,\n35059=>2496,\n35359=>2497,\n35388=>2498,\n35412=>2499,\n35443=>2500,\n35937=>2501,\n36062=>2502,\n37284=>2503,\n37478=>2504,\n37758=>2505,\n37912=>2506,\n38556=>2507,\n38808=>2508,\n19978=>2509,\n19976=>2510,\n19998=>2511,\n20055=>2512,\n20887=>2513,\n21104=>2514,\n22478=>2515,\n22580=>2516,\n22732=>2517,\n23330=>2518,\n24120=>2519,\n24773=>2520,\n25854=>2521,\n26465=>2522,\n26454=>2523,\n27972=>2524,\n29366=>2525,\n30067=>2526,\n31331=>2527,\n33976=>2528,\n35698=>2529,\n37304=>2530,\n37664=>2531,\n22065=>2532,\n22516=>2533,\n39166=>2534,\n25325=>2535,\n26893=>2536,\n27542=>2537,\n29165=>2538,\n32340=>2539,\n32887=>2540,\n12170=>2541,\n33394=>2541,\n35302=>2542,\n12215=>2543,\n39135=>2543,\n34645=>2544,\n36785=>2545,\n23611=>2546,\n20280=>2547,\n20449=>2548,\n20405=>2549,\n21767=>2550,\n23072=>2551,\n23517=>2552,\n23529=>2553,\n12092=>2554,\n24515=>2554,\n24910=>2555,\n25391=>2556,\n26032=>2557,\n26187=>2558,\n26862=>2559,\n27035=>2560,\n28024=>2561,\n28145=>2562,\n30003=>2563,\n30137=>2564,\n30495=>2565,\n31070=>2566,\n31206=>2567,\n32051=>2568,\n12162=>2569,\n33251=>2569,\n33455=>2570,\n34218=>2571,\n35242=>2572,\n35386=>2573,\n12189=>2574,\n36523=>2574,\n12191=>2575,\n36763=>2575,\n36914=>2576,\n37341=>2577,\n38663=>2578,\n12040=>2579,\n20154=>2579,\n20161=>2580,\n20995=>2581,\n22645=>2582,\n22764=>2583,\n23563=>2584,\n29978=>2585,\n23613=>2586,\n33102=>2587,\n35338=>2588,\n36805=>2589,\n38499=>2590,\n38765=>2591,\n31525=>2592,\n35535=>2593,\n38920=>2594,\n37218=>2595,\n22259=>2596,\n21416=>2597,\n36887=>2598,\n21561=>2599,\n22402=>2600,\n24101=>2601,\n25512=>2602,\n12116=>2603,\n27700=>2603,\n28810=>2604,\n30561=>2605,\n31883=>2606,\n32736=>2607,\n34928=>2608,\n36930=>2609,\n37204=>2610,\n37648=>2611,\n37656=>2612,\n38543=>2613,\n29790=>2614,\n39620=>2615,\n23815=>2616,\n23913=>2617,\n25968=>2618,\n26530=>2619,\n36264=>2620,\n38619=>2621,\n25454=>2622,\n26441=>2623,\n26905=>2624,\n33733=>2625,\n38935=>2626,\n38592=>2627,\n35070=>2628,\n28548=>2629,\n25722=>2630,\n12072=>2631,\n23544=>2631,\n19990=>2632,\n28716=>2633,\n30045=>2634,\n26159=>2635,\n20932=>2636,\n21046=>2637,\n21218=>2638,\n22995=>2639,\n24449=>2640,\n24615=>2641,\n25104=>2642,\n25919=>2643,\n25972=>2644,\n26143=>2645,\n26228=>2646,\n26866=>2647,\n26646=>2648,\n27491=>2649,\n28165=>2650,\n29298=>2651,\n12131=>2652,\n29983=>2652,\n30427=>2653,\n31934=>2654,\n32854=>2655,\n22768=>2656,\n35069=>2657,\n11972=>2658,\n35199=>2658,\n35488=>2659,\n35475=>2660,\n35531=>2661,\n36893=>2662,\n37266=>2663,\n11992=>2664,\n38738=>2664,\n38745=>2665,\n12011=>2666,\n25993=>2666,\n31246=>2667,\n33030=>2668,\n38587=>2669,\n24109=>2670,\n24796=>2671,\n25114=>2672,\n26021=>2673,\n26132=>2674,\n26512=>2675,\n12143=>2676,\n30707=>2676,\n31309=>2677,\n31821=>2678,\n32318=>2679,\n33034=>2680,\n36012=>2681,\n12186=>2682,\n36196=>2682,\n36321=>2683,\n36447=>2684,\n30889=>2685,\n20999=>2686,\n25305=>2687,\n25509=>2688,\n25666=>2689,\n25240=>2690,\n35373=>2691,\n31363=>2692,\n31680=>2693,\n35500=>2694,\n38634=>2695,\n32118=>2696,\n12166=>2697,\n33292=>2697,\n34633=>2698,\n20185=>2699,\n20808=>2700,\n21315=>2701,\n21344=>2702,\n23459=>2703,\n23554=>2704,\n23574=>2705,\n24029=>2706,\n25126=>2707,\n25159=>2708,\n25776=>2709,\n26643=>2710,\n26676=>2711,\n27849=>2712,\n27973=>2713,\n27927=>2714,\n26579=>2715,\n28508=>2716,\n29006=>2717,\n29053=>2718,\n26059=>2719,\n31359=>2720,\n31661=>2721,\n32218=>2722,\n32330=>2723,\n32680=>2724,\n33146=>2725,\n12167=>2726,\n33307=>2726,\n33337=>2727,\n34214=>2728,\n35438=>2729,\n36046=>2730,\n36341=>2731,\n36984=>2732,\n36983=>2733,\n37549=>2734,\n37521=>2735,\n38275=>2736,\n39854=>2737,\n21069=>2738,\n21892=>2739,\n28472=>2740,\n28982=>2741,\n20840=>2742,\n31109=>2743,\n32341=>2744,\n33203=>2745,\n31950=>2746,\n22092=>2747,\n22609=>2748,\n23720=>2749,\n25514=>2750,\n26366=>2751,\n26365=>2752,\n26970=>2753,\n29401=>2754,\n30095=>2755,\n30094=>2756,\n30990=>2757,\n31062=>2758,\n31199=>2759,\n31895=>2760,\n32032=>2761,\n32068=>2762,\n34311=>2763,\n35380=>2764,\n38459=>2765,\n36961=>2766,\n12239=>2767,\n40736=>2767,\n20711=>2768,\n21109=>2769,\n21452=>2770,\n21474=>2771,\n20489=>2772,\n21930=>2773,\n22766=>2774,\n22863=>2775,\n29245=>2776,\n23435=>2777,\n23652=>2778,\n21277=>2779,\n24803=>2780,\n24819=>2781,\n25436=>2782,\n25475=>2783,\n25407=>2784,\n25531=>2785,\n25805=>2786,\n26089=>2787,\n26361=>2788,\n24035=>2789,\n27085=>2790,\n27133=>2791,\n28437=>2792,\n29157=>2793,\n20105=>2794,\n30185=>2795,\n30456=>2796,\n31379=>2797,\n31967=>2798,\n32207=>2799,\n32156=>2800,\n32865=>2801,\n33609=>2802,\n33624=>2803,\n33900=>2804,\n33980=>2805,\n34299=>2806,\n35013=>2807,\n12187=>2808,\n36208=>2808,\n36865=>2809,\n36973=>2810,\n37783=>2811,\n38684=>2812,\n39442=>2813,\n20687=>2814,\n22679=>2815,\n24974=>2816,\n33235=>2817,\n34101=>2818,\n36104=>2819,\n36896=>2820,\n20419=>2821,\n20596=>2822,\n21063=>2823,\n21363=>2824,\n24687=>2825,\n25417=>2826,\n26463=>2827,\n28204=>2828,\n12188=>2829,\n36275=>2829,\n36895=>2830,\n20439=>2831,\n23646=>2832,\n36042=>2833,\n26063=>2834,\n32154=>2835,\n21330=>2836,\n34966=>2837,\n20854=>2838,\n25539=>2839,\n23384=>2840,\n23403=>2841,\n23562=>2842,\n25613=>2843,\n26449=>2844,\n36956=>2845,\n20182=>2846,\n22810=>2847,\n22826=>2848,\n27760=>2849,\n35409=>2850,\n21822=>2851,\n22549=>2852,\n22949=>2853,\n24816=>2854,\n25171=>2855,\n26561=>2856,\n33333=>2857,\n26965=>2858,\n38464=>2859,\n39364=>2860,\n39464=>2861,\n20307=>2862,\n22534=>2863,\n23550=>2864,\n32784=>2865,\n23729=>2866,\n24111=>2867,\n24453=>2868,\n24608=>2869,\n24907=>2870,\n25140=>2871,\n26367=>2872,\n27888=>2873,\n28382=>2874,\n32974=>2875,\n33151=>2876,\n33492=>2877,\n34955=>2878,\n36024=>2879,\n36864=>2880,\n36910=>2881,\n38538=>2882,\n40667=>2883,\n39899=>2884,\n20195=>2885,\n21488=>2886,\n12068=>2887,\n22823=>2887,\n31532=>2888,\n37261=>2889,\n38988=>2890,\n40441=>2891,\n28381=>2892,\n28711=>2893,\n21331=>2894,\n21828=>2895,\n23429=>2896,\n25176=>2897,\n25246=>2898,\n25299=>2899,\n27810=>2900,\n28655=>2901,\n29730=>2902,\n35351=>2903,\n37944=>2904,\n28609=>2905,\n35582=>2906,\n33592=>2907,\n20967=>2908,\n34552=>2909,\n21482=>2910,\n21481=>2911,\n20294=>2912,\n36948=>2913,\n12192=>2914,\n36784=>2914,\n22890=>2915,\n33073=>2916,\n24061=>2917,\n31466=>2918,\n36799=>2919,\n26842=>2920,\n12181=>2921,\n35895=>2921,\n29432=>2922,\n40008=>2923,\n27197=>2924,\n35504=>2925,\n20025=>2926,\n21336=>2927,\n22022=>2928,\n22374=>2929,\n25285=>2930,\n25506=>2931,\n26086=>2932,\n27470=>2933,\n28129=>2934,\n28251=>2935,\n28845=>2936,\n30701=>2937,\n31471=>2938,\n31658=>2939,\n32187=>2940,\n32829=>2941,\n32966=>2942,\n34507=>2943,\n35477=>2944,\n37723=>2945,\n22243=>2946,\n22727=>2947,\n24382=>2948,\n26029=>2949,\n26262=>2950,\n27264=>2951,\n27573=>2952,\n30007=>2953,\n35527=>2954,\n20516=>2955,\n30693=>2956,\n22320=>2957,\n24347=>2958,\n24677=>2959,\n26234=>2960,\n27744=>2961,\n30196=>2962,\n31258=>2963,\n32622=>2964,\n33268=>2965,\n34584=>2966,\n36933=>2967,\n39347=>2968,\n31689=>2969,\n30044=>2970,\n12149=>2971,\n31481=>2971,\n31569=>2972,\n33988=>2973,\n36880=>2974,\n31209=>2975,\n31378=>2976,\n33590=>2977,\n23265=>2978,\n30528=>2979,\n20013=>2980,\n20210=>2981,\n23449=>2982,\n24544=>2983,\n25277=>2984,\n26172=>2985,\n26609=>2986,\n27880=>2987,\n12173=>2988,\n34411=>2988,\n34935=>2989,\n35387=>2990,\n37198=>2991,\n37619=>2992,\n39376=>2993,\n27159=>2994,\n28710=>2995,\n29482=>2996,\n33511=>2997,\n33879=>2998,\n36015=>2999,\n19969=>3000,\n20806=>3001,\n20939=>3002,\n21899=>3003,\n23541=>3004,\n24086=>3005,\n24115=>3006,\n24193=>3007,\n24340=>3008,\n24373=>3009,\n24427=>3010,\n24500=>3011,\n25074=>3012,\n25361=>3013,\n26274=>3014,\n26397=>3015,\n28526=>3016,\n29266=>3017,\n30010=>3018,\n30522=>3019,\n32884=>3020,\n33081=>3021,\n33144=>3022,\n34678=>3023,\n35519=>3024,\n35548=>3025,\n36229=>3026,\n36339=>3027,\n37530=>3028,\n11985=>3029,\n12199=>3029,\n38263=>3029,\n38914=>3030,\n12227=>3031,\n40165=>3031,\n21189=>3032,\n25431=>3033,\n30452=>3034,\n26389=>3035,\n27784=>3036,\n29645=>3037,\n36035=>3038,\n37806=>3039,\n38515=>3040,\n27941=>3041,\n22684=>3042,\n26894=>3043,\n27084=>3044,\n36861=>3045,\n37786=>3046,\n30171=>3047,\n36890=>3048,\n22618=>3049,\n26626=>3050,\n25524=>3051,\n27131=>3052,\n20291=>3053,\n28460=>3054,\n26584=>3055,\n36795=>3056,\n34086=>3057,\n32180=>3058,\n37716=>3059,\n26943=>3060,\n28528=>3061,\n22378=>3062,\n22775=>3063,\n23340=>3064,\n32044=>3065,\n12118=>3066,\n29226=>3066,\n21514=>3067,\n37347=>3068,\n40372=>3069,\n20141=>3070,\n20302=>3071,\n20572=>3072,\n20597=>3073,\n21059=>3074,\n35998=>3075,\n21576=>3076,\n22564=>3077,\n23450=>3078,\n24093=>3079,\n24213=>3080,\n24237=>3081,\n24311=>3082,\n24351=>3083,\n24716=>3084,\n25269=>3085,\n25402=>3086,\n25552=>3087,\n26799=>3088,\n27712=>3089,\n30855=>3090,\n31118=>3091,\n31243=>3092,\n32224=>3093,\n33351=>3094,\n35330=>3095,\n35558=>3096,\n36420=>3097,\n36883=>3098,\n37048=>3099,\n37165=>3100,\n37336=>3101,\n12237=>3102,\n40718=>3102,\n27877=>3103,\n25688=>3104,\n25826=>3105,\n25973=>3106,\n28404=>3107,\n30340=>3108,\n31515=>3109,\n36969=>3110,\n37841=>3111,\n28346=>3112,\n21746=>3113,\n24505=>3114,\n25764=>3115,\n36685=>3116,\n36845=>3117,\n37444=>3118,\n20856=>3119,\n22635=>3120,\n22825=>3121,\n23637=>3122,\n24215=>3123,\n28155=>3124,\n32399=>3125,\n29980=>3126,\n36028=>3127,\n36578=>3128,\n39003=>3129,\n28857=>3130,\n20253=>3131,\n27583=>3132,\n28593=>3133,\n12133=>3134,\n30000=>3134,\n38651=>3135,\n20814=>3136,\n21520=>3137,\n22581=>3138,\n22615=>3139,\n22956=>3140,\n23648=>3141,\n24466=>3142,\n12099=>3143,\n26007=>3143,\n26460=>3144,\n28193=>3145,\n30331=>3146,\n33759=>3147,\n36077=>3148,\n36884=>3149,\n37117=>3150,\n37709=>3151,\n30757=>3152,\n30778=>3153,\n21162=>3154,\n24230=>3155,\n12063=>3156,\n22303=>3156,\n22900=>3157,\n24594=>3158,\n20498=>3159,\n20826=>3160,\n20908=>3161,\n20941=>3162,\n12049=>3163,\n20992=>3163,\n21776=>3164,\n22612=>3165,\n22616=>3166,\n22871=>3167,\n23445=>3168,\n23798=>3169,\n23947=>3170,\n24764=>3171,\n25237=>3172,\n25645=>3173,\n26481=>3174,\n26691=>3175,\n26812=>3176,\n26847=>3177,\n30423=>3178,\n28120=>3179,\n28271=>3180,\n28059=>3181,\n28783=>3182,\n29128=>3183,\n24403=>3184,\n30168=>3185,\n31095=>3186,\n31561=>3187,\n31572=>3188,\n31570=>3189,\n31958=>3190,\n32113=>3191,\n21040=>3192,\n33891=>3193,\n34153=>3194,\n34276=>3195,\n35342=>3196,\n35588=>3197,\n12182=>3198,\n35910=>3198,\n36367=>3199,\n36867=>3200,\n36879=>3201,\n37913=>3202,\n38518=>3203,\n38957=>3204,\n39472=>3205,\n38360=>3206,\n20685=>3207,\n21205=>3208,\n21516=>3209,\n22530=>3210,\n23566=>3211,\n24999=>3212,\n25758=>3213,\n27934=>3214,\n30643=>3215,\n31461=>3216,\n33012=>3217,\n33796=>3218,\n36947=>3219,\n37509=>3220,\n23776=>3221,\n40199=>3222,\n21311=>3223,\n24471=>3224,\n24499=>3225,\n28060=>3226,\n29305=>3227,\n30563=>3228,\n31167=>3229,\n31716=>3230,\n27602=>3231,\n29420=>3232,\n35501=>3233,\n26627=>3234,\n27233=>3235,\n20984=>3236,\n31361=>3237,\n26932=>3238,\n23626=>3239,\n40182=>3240,\n33515=>3241,\n23493=>3242,\n12195=>3243,\n37193=>3243,\n28702=>3244,\n22136=>3245,\n23663=>3246,\n24775=>3247,\n25958=>3248,\n27788=>3249,\n35930=>3250,\n36929=>3251,\n38931=>3252,\n21585=>3253,\n26311=>3254,\n37389=>3255,\n22856=>3256,\n37027=>3257,\n20869=>3258,\n20045=>3259,\n20970=>3260,\n34201=>3261,\n35598=>3262,\n28760=>3263,\n25466=>3264,\n37707=>3265,\n26978=>3266,\n39348=>3267,\n32260=>3268,\n30071=>3269,\n21335=>3270,\n26976=>3271,\n36575=>3272,\n38627=>3273,\n27741=>3274,\n12038=>3275,\n20108=>3275,\n23612=>3276,\n24336=>3277,\n36841=>3278,\n21250=>3279,\n36049=>3280,\n12161=>3281,\n32905=>3281,\n34425=>3282,\n24319=>3283,\n12103=>3284,\n26085=>3284,\n20083=>3285,\n12042=>3286,\n20837=>3286,\n22914=>3287,\n23615=>3288,\n38894=>3289,\n20219=>3290,\n22922=>3291,\n24525=>3292,\n35469=>3293,\n28641=>3294,\n31152=>3295,\n31074=>3296,\n23527=>3297,\n33905=>3298,\n29483=>3299,\n29105=>3300,\n24180=>3301,\n24565=>3302,\n25467=>3303,\n25754=>3304,\n29123=>3305,\n31896=>3306,\n20035=>3307,\n24316=>3308,\n20043=>3309,\n22492=>3310,\n22178=>3311,\n24745=>3312,\n28611=>3313,\n32013=>3314,\n33021=>3315,\n33075=>3316,\n33215=>3317,\n36786=>3318,\n35223=>3319,\n34468=>3320,\n24052=>3321,\n25226=>3322,\n25773=>3323,\n35207=>3324,\n26487=>3325,\n27874=>3326,\n27966=>3327,\n29750=>3328,\n30772=>3329,\n23110=>3330,\n32629=>3331,\n33453=>3332,\n12218=>3333,\n39340=>3333,\n20467=>3334,\n24259=>3335,\n25309=>3336,\n25490=>3337,\n25943=>3338,\n26479=>3339,\n30403=>3340,\n29260=>3341,\n32972=>3342,\n32954=>3343,\n36649=>3344,\n37197=>3345,\n20493=>3346,\n22521=>3347,\n23186=>3348,\n26757=>3349,\n26995=>3350,\n29028=>3351,\n29437=>3352,\n36023=>3353,\n22770=>3354,\n36064=>3355,\n38506=>3356,\n36889=>3357,\n34687=>3358,\n31204=>3359,\n30695=>3360,\n33833=>3361,\n20271=>3362,\n21093=>3363,\n21338=>3364,\n25293=>3365,\n26575=>3366,\n27850=>3367,\n12137=>3368,\n30333=>3368,\n31636=>3369,\n31893=>3370,\n33334=>3371,\n34180=>3372,\n36843=>3373,\n26333=>3374,\n28448=>3375,\n29190=>3376,\n32283=>3377,\n33707=>3378,\n39361=>3379,\n12008=>3380,\n40614=>3380,\n20989=>3381,\n31665=>3382,\n30834=>3383,\n31672=>3384,\n32903=>3385,\n31560=>3386,\n27368=>3387,\n24161=>3388,\n32908=>3389,\n30033=>3390,\n30048=>3391,\n12043=>3392,\n20843=>3392,\n37474=>3393,\n28300=>3394,\n30330=>3395,\n37271=>3396,\n39658=>3397,\n20240=>3398,\n32624=>3399,\n25244=>3400,\n31567=>3401,\n38309=>3402,\n40169=>3403,\n22138=>3404,\n22617=>3405,\n34532=>3406,\n38588=>3407,\n20276=>3408,\n21028=>3409,\n21322=>3410,\n21453=>3411,\n21467=>3412,\n24070=>3413,\n25644=>3414,\n26001=>3415,\n26495=>3416,\n27710=>3417,\n27726=>3418,\n29256=>3419,\n29359=>3420,\n29677=>3421,\n30036=>3422,\n32321=>3423,\n33324=>3424,\n34281=>3425,\n36009=>3426,\n31684=>3427,\n12196=>3428,\n37318=>3428,\n29033=>3429,\n38930=>3430,\n39151=>3431,\n25405=>3432,\n26217=>3433,\n30058=>3434,\n30436=>3435,\n30928=>3436,\n34115=>3437,\n34542=>3438,\n21290=>3439,\n21329=>3440,\n21542=>3441,\n22915=>3442,\n24199=>3443,\n24444=>3444,\n24754=>3445,\n25161=>3446,\n25209=>3447,\n25259=>3448,\n26000=>3449,\n12112=>3450,\n27604=>3450,\n27852=>3451,\n30130=>3452,\n12138=>3453,\n30382=>3453,\n30865=>3454,\n31192=>3455,\n32203=>3456,\n32631=>3457,\n32933=>3458,\n34987=>3459,\n35513=>3460,\n36027=>3461,\n36991=>3462,\n12206=>3463,\n38750=>3463,\n12214=>3464,\n39131=>3464,\n27147=>3465,\n31800=>3466,\n20633=>3467,\n23614=>3468,\n24494=>3469,\n26503=>3470,\n27608=>3471,\n29749=>3472,\n30473=>3473,\n32654=>3474,\n12240=>3475,\n40763=>3475,\n26570=>3476,\n31255=>3477,\n21305=>3478,\n12134=>3479,\n30091=>3479,\n39661=>3480,\n24422=>3481,\n33181=>3482,\n33777=>3483,\n32920=>3484,\n24380=>3485,\n24517=>3486,\n30050=>3487,\n31558=>3488,\n36924=>3489,\n26727=>3490,\n23019=>3491,\n23195=>3492,\n32016=>3493,\n30334=>3494,\n35628=>3495,\n20469=>3496,\n24426=>3497,\n27161=>3498,\n27703=>3499,\n28418=>3500,\n29922=>3501,\n31080=>3502,\n34920=>3503,\n35413=>3504,\n35961=>3505,\n24287=>3506,\n25551=>3507,\n30149=>3508,\n31186=>3509,\n33495=>3510,\n37672=>3511,\n37618=>3512,\n33948=>3513,\n34541=>3514,\n39981=>3515,\n21697=>3516,\n24428=>3517,\n25996=>3518,\n27996=>3519,\n28693=>3520,\n36007=>3521,\n36051=>3522,\n38971=>3523,\n25935=>3524,\n29942=>3525,\n19981=>3526,\n20184=>3527,\n22496=>3528,\n22827=>3529,\n23142=>3530,\n23500=>3531,\n20904=>3532,\n24067=>3533,\n24220=>3534,\n24598=>3535,\n25206=>3536,\n25975=>3537,\n26023=>3538,\n26222=>3539,\n28014=>3540,\n12119=>3541,\n29238=>3541,\n31526=>3542,\n33104=>3543,\n33178=>3544,\n33433=>3545,\n35676=>3546,\n36000=>3547,\n36070=>3548,\n36212=>3549,\n12201=>3550,\n38428=>3550,\n38468=>3551,\n20398=>3552,\n25771=>3553,\n27494=>3554,\n33310=>3555,\n33889=>3556,\n34154=>3557,\n37096=>3558,\n23553=>3559,\n26963=>3560,\n12213=>3561,\n39080=>3561,\n33914=>3562,\n34135=>3563,\n20239=>3564,\n21103=>3565,\n24489=>3566,\n24133=>3567,\n26381=>3568,\n31119=>3569,\n33145=>3570,\n35079=>3571,\n35206=>3572,\n28149=>3573,\n24343=>3574,\n25173=>3575,\n27832=>3576,\n20175=>3577,\n29289=>3578,\n39826=>3579,\n20998=>3580,\n21563=>3581,\n22132=>3582,\n22707=>3583,\n24996=>3584,\n25198=>3585,\n28954=>3586,\n22894=>3587,\n31881=>3588,\n31966=>3589,\n32027=>3590,\n38640=>3591,\n12098=>3592,\n25991=>3592,\n32862=>3593,\n19993=>3594,\n20341=>3595,\n20853=>3596,\n22592=>3597,\n24163=>3598,\n24179=>3599,\n24330=>3600,\n26564=>3601,\n20006=>3602,\n34109=>3603,\n38281=>3604,\n38491=>3605,\n12150=>3606,\n31859=>3606,\n12212=>3607,\n38913=>3607,\n20731=>3608,\n22721=>3609,\n30294=>3610,\n30887=>3611,\n21029=>3612,\n30629=>3613,\n34065=>3614,\n31622=>3615,\n20559=>3616,\n22793=>3617,\n12122=>3618,\n29255=>3618,\n31687=>3619,\n32232=>3620,\n36794=>3621,\n36820=>3622,\n36941=>3623,\n20415=>3624,\n21193=>3625,\n23081=>3626,\n24321=>3627,\n38829=>3628,\n20445=>3629,\n33303=>3630,\n37610=>3631,\n22275=>3632,\n25429=>3633,\n27497=>3634,\n29995=>3635,\n35036=>3636,\n36628=>3637,\n31298=>3638,\n21215=>3639,\n22675=>3640,\n24917=>3641,\n25098=>3642,\n26286=>3643,\n11935=>3644,\n27597=>3644,\n31807=>3645,\n33769=>3646,\n20515=>3647,\n20472=>3648,\n21253=>3649,\n21574=>3650,\n22577=>3651,\n22857=>3652,\n23453=>3653,\n23792=>3654,\n23791=>3655,\n23849=>3656,\n24214=>3657,\n25265=>3658,\n25447=>3659,\n25918=>3660,\n12101=>3661,\n26041=>3661,\n26379=>3662,\n27861=>3663,\n27873=>3664,\n28921=>3665,\n30770=>3666,\n32299=>3667,\n32990=>3668,\n33459=>3669,\n33804=>3670,\n34028=>3671,\n34562=>3672,\n35090=>3673,\n35370=>3674,\n35914=>3675,\n37030=>3676,\n37586=>3677,\n39165=>3678,\n40179=>3679,\n40300=>3680,\n20047=>3681,\n20129=>3682,\n20621=>3683,\n21078=>3684,\n22346=>3685,\n22952=>3686,\n24125=>3687,\n24536=>3688,\n24537=>3689,\n25151=>3690,\n26292=>3691,\n26395=>3692,\n26576=>3693,\n26834=>3694,\n20882=>3695,\n32033=>3696,\n32938=>3697,\n33192=>3698,\n35584=>3699,\n35980=>3700,\n36031=>3701,\n37502=>3702,\n38450=>3703,\n21536=>3704,\n38956=>3705,\n21271=>3706,\n20693=>3707,\n12056=>3708,\n21340=>3708,\n22696=>3709,\n25778=>3710,\n26420=>3711,\n29287=>3712,\n30566=>3713,\n31302=>3714,\n37350=>3715,\n21187=>3716,\n27809=>3717,\n27526=>3718,\n22528=>3719,\n24140=>3720,\n22868=>3721,\n26412=>3722,\n32763=>3723,\n20961=>3724,\n30406=>3725,\n25705=>3726,\n30952=>3727,\n39764=>3728,\n12231=>3729,\n40635=>3729,\n22475=>3730,\n22969=>3731,\n26151=>3732,\n26522=>3733,\n27598=>3734,\n21737=>3735,\n27097=>3736,\n24149=>3737,\n33180=>3738,\n26517=>3739,\n39850=>3740,\n26622=>3741,\n40018=>3742,\n26717=>3743,\n20134=>3744,\n20451=>3745,\n12060=>3746,\n21448=>3746,\n25273=>3747,\n26411=>3748,\n27819=>3749,\n36804=>3750,\n20397=>3751,\n32365=>3752,\n40639=>3753,\n19975=>3754,\n24930=>3755,\n28288=>3756,\n28459=>3757,\n34067=>3758,\n21619=>3759,\n26410=>3760,\n39749=>3761,\n11922=>3762,\n24051=>3762,\n31637=>3763,\n23724=>3764,\n23494=>3765,\n34588=>3766,\n28234=>3767,\n34001=>3768,\n31252=>3769,\n33032=>3770,\n22937=>3771,\n31885=>3772,\n11936=>3773,\n27665=>3773,\n30496=>3774,\n21209=>3775,\n22818=>3776,\n28961=>3777,\n29279=>3778,\n12141=>3779,\n30683=>3779,\n38695=>3780,\n40289=>3781,\n26891=>3782,\n23167=>3783,\n23064=>3784,\n20901=>3785,\n21517=>3786,\n21629=>3787,\n26126=>3788,\n30431=>3789,\n36855=>3790,\n37528=>3791,\n40180=>3792,\n23018=>3793,\n29277=>3794,\n28357=>3795,\n20813=>3796,\n26825=>3797,\n32191=>3798,\n32236=>3799,\n12207=>3800,\n38754=>3800,\n40634=>3801,\n25720=>3802,\n27169=>3803,\n33538=>3804,\n22916=>3805,\n23391=>3806,\n12113=>3807,\n27611=>3807,\n29467=>3808,\n30450=>3809,\n32178=>3810,\n32791=>3811,\n33945=>3812,\n20786=>3813,\n12106=>3814,\n26408=>3814,\n40665=>3815,\n12140=>3816,\n30446=>3816,\n26466=>3817,\n21247=>3818,\n39173=>3819,\n23588=>3820,\n25147=>3821,\n31870=>3822,\n36016=>3823,\n21839=>3824,\n24758=>3825,\n32011=>3826,\n12200=>3827,\n38272=>3827,\n21249=>3828,\n20063=>3829,\n20918=>3830,\n22812=>3831,\n29242=>3832,\n32822=>3833,\n37326=>3834,\n24357=>3835,\n12142=>3836,\n30690=>3836,\n21380=>3837,\n24441=>3838,\n32004=>3839,\n34220=>3840,\n35379=>3841,\n36493=>3842,\n38742=>3843,\n26611=>3844,\n34222=>3845,\n37971=>3846,\n24841=>3847,\n24840=>3848,\n27833=>3849,\n30290=>3850,\n35565=>3851,\n36664=>3852,\n21807=>3853,\n20305=>3854,\n20778=>3855,\n21191=>3856,\n21451=>3857,\n23461=>3858,\n24189=>3859,\n24736=>3860,\n24962=>3861,\n25558=>3862,\n26377=>3863,\n26586=>3864,\n28263=>3865,\n28044=>3866,\n29494=>3867,\n29495=>3868,\n30001=>3869,\n31056=>3870,\n35029=>3871,\n35480=>3872,\n36938=>3873,\n12194=>3874,\n37009=>3874,\n37109=>3875,\n38596=>3876,\n34701=>3877,\n12067=>3878,\n22805=>3878,\n20104=>3879,\n20313=>3880,\n19982=>3881,\n35465=>3882,\n36671=>3883,\n38928=>3884,\n20653=>3885,\n24188=>3886,\n22934=>3887,\n23481=>3888,\n24248=>3889,\n25562=>3890,\n25594=>3891,\n25793=>3892,\n26332=>3893,\n26954=>3894,\n27096=>3895,\n27915=>3896,\n28342=>3897,\n29076=>3898,\n12132=>3899,\n29992=>3899,\n31407=>3900,\n12154=>3901,\n32650=>3901,\n32768=>3902,\n33865=>3903,\n33993=>3904,\n35201=>3905,\n35617=>3906,\n36362=>3907,\n36965=>3908,\n38525=>3909,\n39178=>3910,\n24958=>3911,\n25233=>3912,\n27442=>3913,\n27779=>3914,\n28020=>3915,\n32716=>3916,\n32764=>3917,\n28096=>3918,\n32645=>3919,\n34746=>3920,\n35064=>3921,\n26469=>3922,\n33713=>3923,\n38972=>3924,\n38647=>3925,\n27931=>3926,\n32097=>3927,\n33853=>3928,\n37226=>3929,\n20081=>3930,\n21365=>3931,\n23888=>3932,\n27396=>3933,\n28651=>3934,\n34253=>3935,\n34349=>3936,\n35239=>3937,\n21033=>3938,\n21519=>3939,\n23653=>3940,\n26446=>3941,\n26792=>3942,\n29702=>3943,\n29827=>3944,\n30178=>3945,\n35023=>3946,\n35041=>3947,\n12197=>3948,\n37324=>3948,\n38626=>3949,\n38520=>3950,\n24459=>3951,\n29575=>3952,\n12148=>3953,\n31435=>3953,\n33870=>3954,\n25504=>3955,\n30053=>3956,\n21129=>3957,\n27969=>3958,\n28316=>3959,\n29705=>3960,\n30041=>3961,\n30827=>3962,\n31890=>3963,\n38534=>3964,\n12015=>3965,\n31452=>3965,\n12243=>3966,\n40845=>3966,\n20406=>3967,\n24942=>3968,\n26053=>3969,\n34396=>3970,\n20102=>3971,\n20142=>3972,\n20698=>3973,\n20001=>3974,\n20940=>3975,\n23534=>3976,\n26009=>3977,\n26753=>3978,\n28092=>3979,\n29471=>3980,\n30274=>3981,\n30637=>3982,\n31260=>3983,\n31975=>3984,\n33391=>3985,\n35538=>3986,\n36988=>3987,\n37327=>3988,\n38517=>3989,\n38936=>3990,\n12050=>3991,\n21147=>3991,\n32209=>3992,\n20523=>3993,\n21400=>3994,\n26519=>3995,\n28107=>3996,\n29136=>3997,\n29747=>3998,\n33256=>3999,\n36650=>4000,\n38563=>4001,\n40023=>4002,\n40607=>4003,\n29792=>4004,\n22593=>4005,\n28057=>4006,\n32047=>4007,\n39006=>4008,\n20196=>4009,\n20278=>4010,\n20363=>4011,\n20919=>4012,\n21169=>4013,\n23994=>4014,\n24604=>4015,\n29618=>4016,\n31036=>4017,\n33491=>4018,\n37428=>4019,\n38583=>4020,\n38646=>4021,\n38666=>4022,\n40599=>4023,\n40802=>4024,\n26278=>4025,\n27508=>4026,\n21015=>4027,\n21155=>4028,\n28872=>4029,\n35010=>4030,\n24265=>4031,\n24651=>4032,\n24976=>4033,\n28451=>4034,\n29001=>4035,\n31806=>4036,\n32244=>4037,\n32879=>4038,\n34030=>4039,\n36899=>4040,\n37676=>4041,\n21570=>4042,\n39791=>4043,\n27347=>4044,\n28809=>4045,\n36034=>4046,\n36335=>4047,\n38706=>4048,\n21172=>4049,\n23105=>4050,\n24266=>4051,\n24324=>4052,\n26391=>4053,\n27004=>4054,\n27028=>4055,\n28010=>4056,\n28431=>4057,\n29282=>4058,\n29436=>4059,\n31725=>4060,\n12156=>4061,\n32769=>4061,\n32894=>4062,\n34635=>4063,\n37070=>4064,\n20845=>4065,\n40595=>4066,\n31108=>4067,\n32907=>4068,\n37682=>4069,\n35542=>4070,\n20525=>4071,\n21644=>4072,\n35441=>4073,\n27498=>4074,\n36036=>4075,\n33031=>4076,\n24785=>4077,\n26528=>4078,\n40434=>4079,\n20121=>4080,\n20120=>4081,\n39952=>4082,\n35435=>4083,\n34241=>4084,\n34152=>4085,\n26880=>4086,\n28286=>4087,\n30871=>4088,\n33109=>4089,\n24332=>4090,\n19984=>4091,\n19989=>4092,\n20010=>4093,\n20017=>4094,\n12034=>4095,\n20022=>4095,\n20028=>4096,\n12035=>4097,\n20031=>4097,\n20034=>4098,\n20054=>4099,\n20056=>4100,\n20098=>4101,\n12037=>4102,\n20101=>4102,\n35947=>4103,\n20106=>4104,\n33298=>4105,\n24333=>4106,\n20110=>4107,\n20126=>4108,\n20127=>4109,\n12039=>4110,\n20128=>4110,\n20130=>4111,\n20144=>4112,\n20147=>4113,\n20150=>4114,\n20174=>4115,\n20173=>4116,\n20164=>4117,\n20166=>4118,\n20162=>4119,\n20183=>4120,\n20190=>4121,\n20205=>4122,\n20191=>4123,\n20215=>4124,\n20233=>4125,\n20314=>4126,\n20272=>4127,\n20315=>4128,\n20317=>4129,\n20311=>4130,\n20295=>4131,\n20342=>4132,\n20360=>4133,\n20367=>4134,\n20376=>4135,\n20347=>4136,\n20329=>4137,\n20336=>4138,\n20369=>4139,\n20335=>4140,\n20358=>4141,\n20374=>4142,\n20760=>4143,\n20436=>4144,\n20447=>4145,\n20430=>4146,\n20440=>4147,\n20443=>4148,\n20433=>4149,\n20442=>4150,\n20432=>4151,\n20452=>4152,\n20453=>4153,\n20506=>4154,\n20520=>4155,\n20500=>4156,\n20522=>4157,\n20517=>4158,\n20485=>4159,\n20252=>4160,\n20470=>4161,\n20513=>4162,\n20521=>4163,\n20524=>4164,\n20478=>4165,\n20463=>4166,\n20497=>4167,\n20486=>4168,\n20547=>4169,\n20551=>4170,\n26371=>4171,\n20565=>4172,\n20560=>4173,\n20552=>4174,\n20570=>4175,\n20566=>4176,\n20588=>4177,\n20600=>4178,\n20608=>4179,\n20634=>4180,\n20613=>4181,\n20660=>4182,\n20658=>4183,\n20681=>4184,\n20682=>4185,\n20659=>4186,\n20674=>4187,\n20694=>4188,\n20702=>4189,\n20709=>4190,\n20717=>4191,\n20707=>4192,\n20718=>4193,\n20729=>4194,\n20725=>4195,\n20745=>4196,\n20737=>4197,\n20738=>4198,\n20758=>4199,\n20757=>4200,\n20756=>4201,\n20762=>4202,\n20769=>4203,\n20794=>4204,\n20791=>4205,\n20796=>4206,\n20795=>4207,\n12041=>4208,\n20799=>4208,\n11918=>4209,\n20800=>4209,\n20818=>4210,\n20812=>4211,\n20820=>4212,\n20834=>4213,\n31480=>4214,\n20841=>4215,\n20842=>4216,\n20846=>4217,\n20864=>4218,\n12044=>4219,\n20866=>4219,\n22232=>4220,\n20876=>4221,\n20873=>4222,\n20879=>4223,\n20881=>4224,\n20883=>4225,\n20885=>4226,\n12045=>4227,\n20886=>4227,\n20900=>4228,\n20902=>4229,\n20898=>4230,\n20905=>4231,\n20906=>4232,\n12046=>4233,\n20907=>4233,\n20915=>4234,\n20913=>4235,\n20914=>4236,\n20912=>4237,\n20917=>4238,\n20925=>4239,\n20933=>4240,\n20937=>4241,\n20955=>4242,\n12047=>4243,\n20960=>4243,\n34389=>4244,\n20969=>4245,\n20973=>4246,\n20976=>4247,\n12048=>4248,\n20981=>4248,\n20990=>4249,\n20996=>4250,\n21003=>4251,\n21012=>4252,\n21006=>4253,\n21031=>4254,\n21034=>4255,\n21038=>4256,\n21043=>4257,\n21049=>4258,\n21071=>4259,\n21060=>4260,\n21067=>4261,\n21068=>4262,\n21086=>4263,\n21076=>4264,\n21098=>4265,\n21108=>4266,\n21097=>4267,\n21107=>4268,\n21119=>4269,\n21117=>4270,\n21133=>4271,\n21140=>4272,\n21138=>4273,\n21105=>4274,\n21128=>4275,\n21137=>4276,\n36776=>4277,\n36775=>4278,\n21164=>4279,\n21165=>4280,\n21180=>4281,\n21173=>4282,\n21185=>4283,\n21197=>4284,\n21207=>4285,\n21214=>4286,\n21219=>4287,\n21222=>4288,\n39149=>4289,\n21216=>4290,\n21235=>4291,\n21237=>4292,\n21240=>4293,\n12051=>4294,\n21241=>4294,\n21254=>4295,\n21256=>4296,\n30008=>4297,\n21261=>4298,\n21264=>4299,\n21263=>4300,\n21269=>4301,\n12052=>4301,\n21274=>4302,\n12053=>4302,\n21283=>4303,\n21295=>4304,\n21297=>4305,\n21299=>4306,\n12054=>4307,\n21304=>4307,\n21312=>4308,\n21318=>4309,\n21317=>4310,\n19991=>4311,\n21321=>4312,\n21325=>4313,\n20950=>4314,\n21342=>4315,\n12057=>4316,\n21353=>4316,\n21358=>4317,\n22808=>4318,\n21371=>4319,\n21367=>4320,\n12058=>4321,\n21378=>4321,\n21398=>4322,\n21408=>4323,\n21414=>4324,\n21413=>4325,\n21422=>4326,\n21424=>4327,\n12059=>4328,\n21430=>4328,\n21443=>4329,\n31762=>4330,\n38617=>4331,\n21471=>4332,\n26364=>4333,\n29166=>4334,\n21486=>4335,\n21480=>4336,\n21485=>4337,\n21498=>4338,\n21505=>4339,\n21565=>4340,\n21568=>4341,\n21548=>4342,\n21549=>4343,\n21564=>4344,\n21550=>4345,\n21558=>4346,\n21545=>4347,\n21533=>4348,\n21582=>4349,\n21647=>4350,\n21621=>4351,\n21646=>4352,\n21599=>4353,\n21617=>4354,\n21623=>4355,\n21616=>4356,\n21650=>4357,\n21627=>4358,\n21632=>4359,\n21622=>4360,\n21636=>4361,\n21648=>4362,\n21638=>4363,\n21703=>4364,\n21666=>4365,\n21688=>4366,\n21669=>4367,\n21676=>4368,\n21700=>4369,\n21704=>4370,\n21672=>4371,\n21675=>4372,\n21698=>4373,\n21668=>4374,\n21694=>4375,\n21692=>4376,\n21720=>4377,\n21733=>4378,\n21734=>4379,\n21775=>4380,\n21780=>4381,\n21757=>4382,\n21742=>4383,\n21741=>4384,\n21754=>4385,\n21730=>4386,\n21817=>4387,\n21824=>4388,\n21859=>4389,\n21836=>4390,\n21806=>4391,\n21852=>4392,\n21829=>4393,\n21846=>4394,\n21847=>4395,\n21816=>4396,\n21811=>4397,\n21853=>4398,\n21913=>4399,\n21888=>4400,\n21679=>4401,\n21898=>4402,\n21919=>4403,\n21883=>4404,\n21886=>4405,\n21912=>4406,\n21918=>4407,\n21934=>4408,\n21884=>4409,\n21891=>4410,\n21929=>4411,\n21895=>4412,\n21928=>4413,\n21978=>4414,\n21957=>4415,\n21983=>4416,\n21956=>4417,\n21980=>4418,\n21988=>4419,\n21972=>4420,\n22036=>4421,\n22007=>4422,\n22038=>4423,\n22014=>4424,\n22013=>4425,\n22043=>4426,\n22009=>4427,\n22094=>4428,\n22096=>4429,\n29151=>4430,\n22068=>4431,\n22070=>4432,\n22066=>4433,\n22072=>4434,\n22123=>4435,\n22116=>4436,\n22063=>4437,\n22124=>4438,\n22122=>4439,\n22150=>4440,\n22144=>4441,\n22154=>4442,\n22176=>4443,\n22164=>4444,\n22159=>4445,\n22181=>4446,\n22190=>4447,\n22198=>4448,\n22196=>4449,\n22210=>4450,\n22204=>4451,\n22209=>4452,\n22211=>4453,\n22208=>4454,\n22216=>4455,\n22222=>4456,\n22225=>4457,\n22227=>4458,\n12062=>4459,\n22231=>4459,\n22254=>4460,\n22265=>4461,\n22272=>4462,\n22271=>4463,\n22276=>4464,\n22281=>4465,\n22280=>4466,\n22283=>4467,\n22285=>4468,\n22291=>4469,\n22296=>4470,\n22294=>4471,\n21959=>4472,\n22300=>4473,\n22310=>4474,\n22327=>4475,\n22328=>4476,\n22350=>4477,\n22331=>4478,\n22336=>4479,\n22351=>4480,\n22377=>4481,\n22464=>4482,\n22408=>4483,\n22369=>4484,\n22399=>4485,\n22409=>4486,\n22419=>4487,\n22432=>4488,\n22451=>4489,\n22436=>4490,\n22442=>4491,\n22448=>4492,\n22467=>4493,\n22470=>4494,\n22484=>4495,\n22482=>4496,\n22483=>4497,\n22538=>4498,\n22486=>4499,\n22499=>4500,\n22539=>4501,\n22553=>4502,\n22557=>4503,\n22642=>4504,\n22561=>4505,\n22626=>4506,\n22603=>4507,\n22640=>4508,\n27584=>4509,\n22610=>4510,\n22589=>4511,\n22649=>4512,\n22661=>4513,\n22713=>4514,\n22687=>4515,\n22699=>4516,\n22714=>4517,\n22750=>4518,\n22715=>4519,\n22712=>4520,\n22702=>4521,\n22725=>4522,\n22739=>4523,\n22737=>4524,\n22743=>4525,\n22745=>4526,\n22744=>4527,\n22757=>4528,\n22748=>4529,\n22756=>4530,\n22751=>4531,\n22767=>4532,\n22778=>4533,\n22777=>4534,\n22779=>4535,\n22780=>4536,\n22781=>4537,\n22786=>4538,\n12065=>4538,\n22794=>4539,\n12066=>4539,\n22800=>4540,\n22811=>4541,\n26790=>4542,\n22821=>4543,\n22828=>4544,\n22829=>4545,\n22834=>4546,\n22840=>4547,\n22846=>4548,\n31442=>4549,\n22869=>4550,\n22864=>4551,\n22862=>4552,\n22874=>4553,\n22872=>4554,\n22882=>4555,\n22880=>4556,\n22887=>4557,\n22892=>4558,\n22889=>4559,\n22904=>4560,\n22913=>4561,\n22941=>4562,\n20318=>4563,\n20395=>4564,\n22947=>4565,\n22962=>4566,\n22982=>4567,\n23016=>4568,\n23004=>4569,\n22925=>4570,\n23001=>4571,\n23002=>4572,\n23077=>4573,\n23071=>4574,\n23057=>4575,\n23068=>4576,\n23049=>4577,\n23066=>4578,\n23104=>4579,\n23148=>4580,\n23113=>4581,\n23093=>4582,\n23094=>4583,\n23138=>4584,\n23146=>4585,\n23194=>4586,\n23228=>4587,\n23230=>4588,\n23243=>4589,\n23234=>4590,\n23229=>4591,\n23267=>4592,\n23255=>4593,\n23270=>4594,\n23273=>4595,\n23254=>4596,\n23290=>4597,\n23291=>4598,\n23308=>4599,\n23307=>4600,\n23318=>4601,\n23346=>4602,\n23248=>4603,\n23338=>4604,\n23350=>4605,\n23358=>4606,\n23363=>4607,\n23365=>4608,\n23360=>4609,\n23377=>4610,\n23381=>4611,\n23386=>4612,\n23387=>4613,\n23397=>4614,\n23401=>4615,\n23408=>4616,\n23411=>4617,\n23413=>4618,\n23416=>4619,\n25992=>4620,\n23418=>4621,\n12071=>4622,\n23424=>4622,\n23427=>4623,\n23462=>4624,\n23480=>4625,\n23491=>4626,\n23495=>4627,\n23497=>4628,\n23508=>4629,\n23504=>4630,\n23524=>4631,\n23526=>4632,\n23522=>4633,\n23518=>4634,\n23525=>4635,\n23531=>4636,\n23536=>4637,\n23542=>4638,\n23539=>4639,\n23557=>4640,\n23559=>4641,\n23560=>4642,\n23565=>4643,\n23571=>4644,\n23584=>4645,\n11920=>4646,\n12074=>4646,\n23586=>4646,\n23592=>4647,\n12075=>4648,\n23608=>4648,\n23609=>4649,\n23617=>4650,\n23622=>4651,\n23630=>4652,\n23635=>4653,\n23632=>4654,\n23631=>4655,\n23409=>4656,\n23660=>4657,\n12076=>4658,\n23662=>4658,\n20066=>4659,\n23670=>4660,\n23673=>4661,\n23692=>4662,\n23697=>4663,\n23700=>4664,\n22939=>4665,\n23723=>4666,\n23739=>4667,\n23734=>4668,\n23740=>4669,\n23735=>4670,\n23749=>4671,\n23742=>4672,\n23751=>4673,\n23769=>4674,\n23785=>4675,\n23805=>4676,\n23802=>4677,\n23789=>4678,\n23948=>4679,\n23786=>4680,\n23819=>4681,\n23829=>4682,\n23831=>4683,\n23900=>4684,\n23839=>4685,\n23835=>4686,\n23825=>4687,\n23828=>4688,\n23842=>4689,\n23834=>4690,\n23833=>4691,\n23832=>4692,\n23884=>4693,\n23890=>4694,\n23886=>4695,\n23883=>4696,\n23916=>4697,\n23923=>4698,\n23926=>4699,\n23943=>4700,\n23940=>4701,\n23938=>4702,\n23970=>4703,\n23965=>4704,\n23980=>4705,\n23982=>4706,\n23997=>4707,\n23952=>4708,\n23991=>4709,\n23996=>4710,\n24009=>4711,\n24013=>4712,\n24019=>4713,\n24018=>4714,\n24022=>4715,\n12078=>4716,\n24027=>4716,\n24043=>4717,\n24050=>4718,\n24053=>4719,\n24075=>4720,\n24090=>4721,\n24089=>4722,\n24081=>4723,\n24091=>4724,\n24118=>4725,\n24119=>4726,\n24132=>4727,\n24131=>4728,\n24128=>4729,\n24142=>4730,\n24151=>4731,\n24148=>4732,\n24159=>4733,\n24162=>4734,\n24164=>4735,\n24135=>4736,\n24181=>4737,\n24182=>4738,\n11923=>4739,\n12083=>4739,\n24186=>4739,\n40636=>4740,\n12084=>4741,\n24191=>4741,\n24224=>4742,\n24257=>4743,\n24258=>4744,\n24264=>4745,\n24272=>4746,\n24271=>4747,\n24278=>4748,\n24291=>4749,\n24285=>4750,\n24282=>4751,\n24283=>4752,\n24290=>4753,\n24289=>4754,\n24296=>4755,\n24297=>4756,\n24300=>4757,\n24305=>4758,\n24307=>4759,\n24304=>4760,\n12085=>4761,\n24308=>4761,\n24312=>4762,\n12086=>4763,\n24318=>4763,\n24323=>4764,\n24329=>4765,\n24413=>4766,\n24412=>4767,\n12087=>4768,\n24331=>4768,\n24337=>4769,\n24342=>4770,\n24361=>4771,\n24365=>4772,\n24376=>4773,\n24385=>4774,\n24392=>4775,\n24396=>4776,\n24398=>4777,\n24367=>4778,\n11924=>4779,\n24401=>4779,\n24406=>4780,\n24407=>4781,\n24409=>4782,\n12090=>4783,\n24417=>4783,\n24429=>4784,\n12091=>4785,\n24435=>4785,\n24439=>4786,\n24451=>4787,\n24450=>4788,\n24447=>4789,\n24458=>4790,\n24456=>4791,\n24465=>4792,\n24455=>4793,\n24478=>4794,\n24473=>4795,\n24472=>4796,\n24480=>4797,\n24488=>4798,\n24493=>4799,\n24508=>4800,\n24534=>4801,\n24571=>4802,\n24548=>4803,\n24568=>4804,\n24561=>4805,\n24541=>4806,\n24755=>4807,\n24575=>4808,\n24609=>4809,\n24672=>4810,\n24601=>4811,\n24592=>4812,\n24617=>4813,\n24590=>4814,\n24625=>4815,\n24603=>4816,\n24597=>4817,\n24619=>4818,\n24614=>4819,\n24591=>4820,\n24634=>4821,\n24666=>4822,\n24641=>4823,\n24682=>4824,\n24695=>4825,\n24671=>4826,\n24650=>4827,\n24646=>4828,\n24653=>4829,\n24675=>4830,\n24643=>4831,\n24676=>4832,\n24642=>4833,\n24684=>4834,\n24683=>4835,\n24665=>4836,\n24705=>4837,\n24717=>4838,\n24807=>4839,\n24707=>4840,\n24730=>4841,\n24708=>4842,\n24731=>4843,\n24726=>4844,\n24727=>4845,\n24722=>4846,\n24743=>4847,\n24715=>4848,\n24801=>4849,\n24760=>4850,\n24800=>4851,\n24787=>4852,\n24756=>4853,\n24560=>4854,\n24765=>4855,\n24774=>4856,\n24757=>4857,\n24792=>4858,\n24909=>4859,\n24853=>4860,\n24838=>4861,\n24822=>4862,\n24823=>4863,\n24832=>4864,\n24820=>4865,\n24826=>4866,\n24835=>4867,\n24865=>4868,\n24827=>4869,\n24817=>4870,\n24845=>4871,\n24846=>4872,\n24903=>4873,\n24894=>4874,\n24872=>4875,\n24871=>4876,\n24906=>4877,\n24895=>4878,\n24892=>4879,\n24876=>4880,\n24884=>4881,\n24893=>4882,\n24898=>4883,\n24900=>4884,\n24947=>4885,\n24951=>4886,\n24920=>4887,\n24921=>4888,\n24922=>4889,\n24939=>4890,\n24948=>4891,\n24943=>4892,\n24933=>4893,\n24945=>4894,\n24927=>4895,\n24925=>4896,\n24915=>4897,\n24949=>4898,\n24985=>4899,\n24982=>4900,\n24967=>4901,\n25004=>4902,\n24980=>4903,\n24986=>4904,\n24970=>4905,\n24977=>4906,\n25003=>4907,\n25006=>4908,\n25036=>4909,\n25034=>4910,\n25033=>4911,\n25079=>4912,\n25032=>4913,\n25027=>4914,\n25030=>4915,\n25018=>4916,\n25035=>4917,\n32633=>4918,\n25037=>4919,\n25062=>4920,\n25059=>4921,\n25078=>4922,\n25082=>4923,\n25076=>4924,\n25087=>4925,\n25085=>4926,\n25084=>4927,\n25086=>4928,\n25088=>4929,\n12093=>4930,\n25096=>4930,\n25097=>4931,\n25101=>4932,\n25100=>4933,\n25108=>4934,\n25115=>4935,\n25118=>4936,\n25121=>4937,\n25130=>4938,\n25134=>4939,\n25136=>4940,\n25138=>4941,\n25139=>4942,\n25153=>4943,\n25166=>4944,\n25182=>4945,\n25187=>4946,\n25179=>4947,\n25184=>4948,\n25192=>4949,\n25212=>4950,\n25218=>4951,\n25225=>4952,\n25214=>4953,\n25234=>4954,\n25235=>4955,\n25238=>4956,\n25300=>4957,\n25219=>4958,\n25236=>4959,\n25303=>4960,\n25297=>4961,\n25275=>4962,\n25295=>4963,\n25343=>4964,\n25286=>4965,\n25812=>4966,\n25288=>4967,\n25308=>4968,\n25292=>4969,\n25290=>4970,\n25282=>4971,\n25287=>4972,\n25243=>4973,\n25289=>4974,\n25356=>4975,\n25326=>4976,\n25329=>4977,\n25383=>4978,\n25346=>4979,\n25352=>4980,\n25327=>4981,\n25333=>4982,\n25424=>4983,\n25406=>4984,\n25421=>4985,\n25628=>4986,\n25423=>4987,\n25494=>4988,\n25486=>4989,\n25472=>4990,\n25515=>4991,\n25462=>4992,\n25507=>4993,\n25487=>4994,\n25481=>4995,\n25503=>4996,\n25525=>4997,\n25451=>4998,\n25449=>4999,\n25534=>5000,\n25577=>5001,\n25536=>5002,\n25542=>5003,\n25571=>5004,\n25545=>5005,\n25554=>5006,\n25590=>5007,\n25540=>5008,\n25622=>5009,\n25652=>5010,\n25606=>5011,\n25619=>5012,\n25638=>5013,\n25654=>5014,\n25885=>5015,\n25623=>5016,\n25640=>5017,\n25615=>5018,\n25703=>5019,\n25711=>5020,\n25718=>5021,\n25678=>5022,\n25898=>5023,\n25749=>5024,\n25747=>5025,\n25765=>5026,\n25769=>5027,\n25736=>5028,\n25788=>5029,\n25818=>5030,\n25810=>5031,\n25797=>5032,\n25799=>5033,\n25787=>5034,\n25816=>5035,\n25794=>5036,\n25841=>5037,\n25831=>5038,\n33289=>5039,\n25824=>5040,\n25825=>5041,\n25260=>5042,\n25827=>5043,\n25839=>5044,\n25900=>5045,\n25846=>5046,\n25844=>5047,\n25842=>5048,\n25850=>5049,\n25856=>5050,\n25853=>5051,\n25880=>5052,\n25884=>5053,\n25861=>5054,\n25892=>5055,\n25891=>5056,\n25899=>5057,\n12097=>5058,\n25908=>5058,\n11929=>5059,\n25909=>5059,\n25911=>5060,\n25910=>5061,\n25912=>5062,\n30027=>5063,\n25928=>5064,\n25942=>5065,\n25941=>5066,\n25933=>5067,\n25944=>5068,\n25950=>5069,\n25949=>5070,\n25970=>5071,\n25976=>5072,\n25986=>5073,\n25987=>5074,\n35722=>5075,\n26011=>5076,\n26015=>5077,\n26027=>5078,\n26039=>5079,\n26051=>5080,\n26054=>5081,\n26049=>5082,\n26052=>5083,\n26060=>5084,\n26066=>5085,\n26075=>5086,\n26073=>5087,\n12102=>5088,\n26080=>5088,\n11931=>5089,\n26081=>5089,\n26097=>5090,\n26482=>5091,\n26122=>5092,\n26115=>5093,\n26107=>5094,\n26483=>5095,\n26165=>5096,\n26166=>5097,\n26164=>5098,\n26140=>5099,\n26191=>5100,\n26180=>5101,\n26185=>5102,\n26177=>5103,\n26206=>5104,\n26205=>5105,\n26212=>5106,\n26215=>5107,\n26216=>5108,\n26207=>5109,\n26210=>5110,\n26224=>5111,\n26243=>5112,\n26248=>5113,\n26254=>5114,\n26249=>5115,\n26244=>5116,\n26264=>5117,\n26269=>5118,\n26305=>5119,\n26297=>5120,\n26313=>5121,\n26302=>5122,\n26300=>5123,\n26308=>5124,\n26296=>5125,\n26326=>5126,\n26330=>5127,\n26336=>5128,\n26175=>5129,\n26342=>5130,\n26345=>5131,\n12104=>5132,\n26352=>5132,\n26357=>5133,\n26359=>5134,\n26383=>5135,\n26390=>5136,\n26398=>5137,\n26406=>5138,\n26407=>5139,\n38712=>5140,\n26414=>5141,\n26431=>5142,\n26422=>5143,\n26433=>5144,\n26424=>5145,\n26423=>5146,\n26438=>5147,\n26462=>5148,\n26464=>5149,\n26457=>5150,\n26467=>5151,\n26468=>5152,\n26505=>5153,\n26480=>5154,\n26537=>5155,\n26492=>5156,\n26474=>5157,\n26508=>5158,\n26507=>5159,\n26534=>5160,\n26529=>5161,\n26501=>5162,\n26551=>5163,\n26607=>5164,\n26548=>5165,\n26604=>5166,\n26547=>5167,\n26601=>5168,\n26552=>5169,\n26596=>5170,\n26590=>5171,\n26589=>5172,\n26594=>5173,\n26606=>5174,\n26553=>5175,\n26574=>5176,\n26566=>5177,\n26599=>5178,\n27292=>5179,\n26654=>5180,\n26694=>5181,\n26665=>5182,\n26688=>5183,\n26701=>5184,\n26674=>5185,\n26702=>5186,\n26803=>5187,\n26667=>5188,\n26713=>5189,\n26723=>5190,\n26743=>5191,\n26751=>5192,\n26783=>5193,\n26767=>5194,\n26797=>5195,\n26772=>5196,\n26781=>5197,\n26779=>5198,\n26755=>5199,\n27310=>5200,\n26809=>5201,\n26740=>5202,\n26805=>5203,\n26784=>5204,\n26810=>5205,\n26895=>5206,\n26765=>5207,\n26750=>5208,\n26881=>5209,\n26826=>5210,\n26888=>5211,\n26840=>5212,\n26914=>5213,\n26918=>5214,\n26849=>5215,\n26892=>5216,\n26829=>5217,\n26836=>5218,\n26855=>5219,\n26837=>5220,\n26934=>5221,\n26898=>5222,\n26884=>5223,\n26839=>5224,\n26851=>5225,\n26917=>5226,\n26873=>5227,\n26848=>5228,\n26863=>5229,\n26920=>5230,\n26922=>5231,\n26906=>5232,\n26915=>5233,\n26913=>5234,\n26822=>5235,\n27001=>5236,\n26999=>5237,\n26972=>5238,\n27000=>5239,\n26987=>5240,\n26964=>5241,\n27006=>5242,\n26990=>5243,\n26937=>5244,\n26996=>5245,\n26941=>5246,\n26969=>5247,\n26928=>5248,\n26977=>5249,\n26974=>5250,\n26973=>5251,\n27009=>5252,\n26986=>5253,\n27058=>5254,\n27054=>5255,\n27088=>5256,\n27071=>5257,\n27073=>5258,\n27091=>5259,\n27070=>5260,\n27086=>5261,\n23528=>5262,\n27082=>5263,\n27101=>5264,\n27067=>5265,\n27075=>5266,\n27047=>5267,\n27182=>5268,\n27025=>5269,\n27040=>5270,\n27036=>5271,\n27029=>5272,\n27060=>5273,\n27102=>5274,\n27112=>5275,\n27138=>5276,\n27163=>5277,\n27135=>5278,\n27402=>5279,\n27129=>5280,\n27122=>5281,\n27111=>5282,\n27141=>5283,\n27057=>5284,\n27166=>5285,\n27117=>5286,\n27156=>5287,\n27115=>5288,\n27146=>5289,\n27154=>5290,\n27329=>5291,\n27171=>5292,\n27155=>5293,\n27204=>5294,\n27148=>5295,\n27250=>5296,\n27190=>5297,\n27256=>5298,\n27207=>5299,\n27234=>5300,\n27225=>5301,\n27238=>5302,\n27208=>5303,\n27192=>5304,\n27170=>5305,\n27280=>5306,\n27277=>5307,\n27296=>5308,\n27268=>5309,\n27298=>5310,\n27299=>5311,\n27287=>5312,\n34327=>5313,\n27323=>5314,\n27331=>5315,\n27330=>5316,\n27320=>5317,\n27315=>5318,\n27308=>5319,\n27358=>5320,\n27345=>5321,\n27359=>5322,\n27306=>5323,\n27354=>5324,\n27370=>5325,\n27387=>5326,\n27397=>5327,\n34326=>5328,\n27386=>5329,\n27410=>5330,\n27414=>5331,\n39729=>5332,\n27423=>5333,\n27448=>5334,\n27447=>5335,\n30428=>5336,\n27449=>5337,\n39150=>5338,\n27463=>5339,\n27459=>5340,\n27465=>5341,\n27472=>5342,\n27481=>5343,\n27476=>5344,\n27483=>5345,\n27487=>5346,\n27489=>5347,\n27512=>5348,\n12109=>5349,\n27513=>5349,\n27519=>5350,\n27520=>5351,\n27524=>5352,\n27523=>5353,\n27533=>5354,\n27544=>5355,\n27541=>5356,\n27550=>5357,\n27556=>5358,\n27562=>5359,\n27563=>5360,\n27567=>5361,\n27570=>5362,\n27569=>5363,\n12110=>5364,\n27571=>5364,\n27575=>5365,\n27580=>5366,\n27590=>5367,\n12111=>5368,\n27595=>5368,\n27603=>5369,\n27615=>5370,\n27628=>5371,\n27627=>5372,\n27635=>5373,\n27631=>5374,\n40638=>5375,\n27656=>5376,\n27667=>5377,\n12115=>5378,\n27668=>5378,\n27675=>5379,\n27684=>5380,\n27683=>5381,\n27742=>5382,\n27733=>5383,\n27746=>5384,\n27754=>5385,\n27778=>5386,\n27789=>5387,\n27802=>5388,\n27777=>5389,\n27803=>5390,\n27774=>5391,\n27752=>5392,\n27763=>5393,\n27794=>5394,\n27792=>5395,\n27844=>5396,\n27889=>5397,\n27859=>5398,\n27837=>5399,\n27863=>5400,\n27845=>5401,\n27869=>5402,\n27822=>5403,\n27825=>5404,\n27838=>5405,\n27834=>5406,\n27867=>5407,\n27887=>5408,\n27865=>5409,\n27882=>5410,\n27935=>5411,\n34893=>5412,\n27958=>5413,\n27947=>5414,\n27965=>5415,\n27960=>5416,\n27929=>5417,\n27957=>5418,\n27955=>5419,\n27922=>5420,\n27916=>5421,\n28003=>5422,\n28051=>5423,\n28004=>5424,\n27994=>5425,\n28025=>5426,\n27993=>5427,\n28046=>5428,\n28053=>5429,\n28644=>5430,\n28037=>5431,\n28153=>5432,\n28181=>5433,\n28170=>5434,\n28085=>5435,\n28103=>5436,\n28134=>5437,\n28088=>5438,\n28102=>5439,\n28140=>5440,\n28126=>5441,\n28108=>5442,\n28136=>5443,\n28114=>5444,\n28101=>5445,\n28154=>5446,\n28121=>5447,\n28132=>5448,\n28117=>5449,\n28138=>5450,\n28142=>5451,\n28205=>5452,\n28270=>5453,\n28206=>5454,\n28185=>5455,\n28274=>5456,\n28255=>5457,\n28222=>5458,\n28195=>5459,\n28267=>5460,\n28203=>5461,\n28278=>5462,\n28237=>5463,\n28191=>5464,\n28227=>5465,\n28218=>5466,\n28238=>5467,\n28196=>5468,\n28415=>5469,\n28189=>5470,\n28216=>5471,\n28290=>5472,\n28330=>5473,\n28312=>5474,\n28361=>5475,\n28343=>5476,\n28371=>5477,\n28349=>5478,\n28335=>5479,\n28356=>5480,\n28338=>5481,\n28372=>5482,\n28373=>5483,\n28303=>5484,\n28325=>5485,\n28354=>5486,\n28319=>5487,\n28481=>5488,\n28433=>5489,\n28748=>5490,\n28396=>5491,\n28408=>5492,\n28414=>5493,\n28479=>5494,\n28402=>5495,\n28465=>5496,\n28399=>5497,\n28466=>5498,\n28364=>5499,\n28478=>5500,\n28435=>5501,\n28407=>5502,\n28550=>5503,\n28538=>5504,\n28536=>5505,\n28545=>5506,\n28544=>5507,\n28527=>5508,\n28507=>5509,\n28659=>5510,\n28525=>5511,\n28546=>5512,\n28540=>5513,\n28504=>5514,\n28558=>5515,\n28561=>5516,\n28610=>5517,\n28518=>5518,\n28595=>5519,\n28579=>5520,\n28577=>5521,\n28580=>5522,\n28601=>5523,\n28614=>5524,\n28586=>5525,\n28639=>5526,\n28629=>5527,\n28652=>5528,\n28628=>5529,\n28632=>5530,\n28657=>5531,\n28654=>5532,\n28635=>5533,\n28681=>5534,\n28683=>5535,\n28666=>5536,\n28689=>5537,\n28673=>5538,\n28687=>5539,\n28670=>5540,\n28699=>5541,\n28698=>5542,\n28532=>5543,\n28701=>5544,\n28696=>5545,\n28703=>5546,\n28720=>5547,\n28734=>5548,\n28722=>5549,\n28753=>5550,\n28771=>5551,\n28825=>5552,\n28818=>5553,\n28847=>5554,\n28913=>5555,\n28844=>5556,\n28856=>5557,\n28851=>5558,\n28846=>5559,\n28895=>5560,\n28875=>5561,\n28893=>5562,\n28889=>5563,\n28937=>5564,\n28925=>5565,\n28956=>5566,\n28953=>5567,\n29029=>5568,\n29013=>5569,\n29064=>5570,\n29030=>5571,\n29026=>5572,\n29004=>5573,\n29014=>5574,\n29036=>5575,\n29071=>5576,\n29179=>5577,\n29060=>5578,\n29077=>5579,\n29096=>5580,\n29100=>5581,\n29143=>5582,\n29113=>5583,\n29118=>5584,\n29138=>5585,\n29129=>5586,\n29140=>5587,\n29134=>5588,\n29152=>5589,\n29164=>5590,\n29159=>5591,\n29173=>5592,\n29180=>5593,\n29177=>5594,\n29183=>5595,\n29197=>5596,\n29200=>5597,\n29211=>5598,\n29224=>5599,\n29229=>5600,\n29228=>5601,\n29232=>5602,\n29234=>5603,\n12120=>5604,\n29243=>5604,\n29244=>5605,\n12121=>5606,\n29247=>5606,\n29248=>5607,\n29254=>5608,\n29259=>5609,\n29272=>5610,\n29300=>5611,\n29310=>5612,\n29314=>5613,\n29313=>5614,\n29319=>5615,\n29330=>5616,\n29334=>5617,\n29346=>5618,\n29351=>5619,\n29369=>5620,\n29362=>5621,\n29379=>5622,\n29382=>5623,\n29380=>5624,\n29390=>5625,\n29394=>5626,\n29410=>5627,\n29408=>5628,\n29409=>5629,\n29433=>5630,\n29431=>5631,\n20495=>5632,\n29463=>5633,\n29450=>5634,\n29468=>5635,\n29462=>5636,\n29469=>5637,\n29492=>5638,\n29487=>5639,\n29481=>5640,\n29477=>5641,\n29502=>5642,\n29518=>5643,\n29519=>5644,\n40664=>5645,\n29527=>5646,\n29546=>5647,\n29544=>5648,\n29552=>5649,\n29560=>5650,\n29557=>5651,\n29563=>5652,\n29562=>5653,\n29640=>5654,\n29619=>5655,\n29646=>5656,\n29627=>5657,\n29632=>5658,\n29669=>5659,\n29678=>5660,\n29662=>5661,\n29858=>5662,\n29701=>5663,\n29807=>5664,\n29733=>5665,\n29688=>5666,\n29746=>5667,\n29754=>5668,\n29781=>5669,\n29759=>5670,\n29791=>5671,\n29785=>5672,\n29761=>5673,\n29788=>5674,\n29801=>5675,\n29808=>5676,\n29795=>5677,\n29802=>5678,\n29814=>5679,\n29822=>5680,\n29835=>5681,\n29854=>5682,\n29863=>5683,\n29898=>5684,\n29903=>5685,\n29908=>5686,\n29681=>5687,\n29920=>5688,\n29923=>5689,\n29927=>5690,\n29929=>5691,\n29934=>5692,\n29938=>5693,\n29936=>5694,\n29937=>5695,\n29944=>5696,\n29943=>5697,\n29956=>5698,\n29955=>5699,\n29957=>5700,\n29964=>5701,\n29966=>5702,\n29965=>5703,\n29973=>5704,\n29971=>5705,\n29982=>5706,\n29990=>5707,\n29996=>5708,\n30012=>5709,\n30020=>5710,\n30029=>5711,\n30026=>5712,\n30025=>5713,\n30043=>5714,\n30022=>5715,\n30042=>5716,\n30057=>5717,\n30052=>5718,\n30055=>5719,\n30059=>5720,\n30061=>5721,\n30072=>5722,\n30070=>5723,\n30086=>5724,\n30087=>5725,\n30068=>5726,\n30090=>5727,\n30089=>5728,\n30082=>5729,\n30100=>5730,\n30106=>5731,\n30109=>5732,\n30117=>5733,\n30115=>5734,\n30146=>5735,\n30131=>5736,\n30147=>5737,\n30133=>5738,\n30141=>5739,\n30136=>5740,\n30140=>5741,\n30129=>5742,\n30157=>5743,\n30154=>5744,\n30162=>5745,\n30169=>5746,\n30179=>5747,\n30174=>5748,\n30206=>5749,\n30207=>5750,\n30204=>5751,\n30209=>5752,\n30192=>5753,\n30202=>5754,\n30194=>5755,\n30195=>5756,\n30219=>5757,\n30221=>5758,\n30217=>5759,\n30239=>5760,\n30247=>5761,\n30240=>5762,\n30241=>5763,\n30242=>5764,\n30244=>5765,\n30260=>5766,\n30256=>5767,\n30267=>5768,\n30279=>5769,\n30280=>5770,\n30278=>5771,\n30300=>5772,\n30296=>5773,\n30305=>5774,\n30306=>5775,\n30312=>5776,\n30313=>5777,\n30314=>5778,\n30311=>5779,\n30316=>5780,\n30320=>5781,\n30322=>5782,\n12136=>5783,\n30326=>5783,\n30328=>5784,\n30332=>5785,\n30336=>5786,\n30339=>5787,\n30344=>5788,\n30347=>5789,\n30350=>5790,\n30358=>5791,\n30355=>5792,\n30361=>5793,\n30362=>5794,\n30384=>5795,\n30388=>5796,\n30392=>5797,\n30393=>5798,\n30394=>5799,\n30402=>5800,\n30413=>5801,\n30422=>5802,\n30418=>5803,\n30430=>5804,\n30433=>5805,\n30437=>5806,\n30439=>5807,\n30442=>5808,\n34351=>5809,\n30459=>5810,\n30472=>5811,\n30471=>5812,\n30468=>5813,\n30505=>5814,\n30500=>5815,\n30494=>5816,\n30501=>5817,\n30502=>5818,\n30491=>5819,\n30519=>5820,\n30520=>5821,\n30535=>5822,\n30554=>5823,\n30568=>5824,\n30571=>5825,\n30555=>5826,\n30565=>5827,\n30591=>5828,\n30590=>5829,\n30585=>5830,\n30606=>5831,\n30603=>5832,\n30609=>5833,\n30624=>5834,\n30622=>5835,\n30640=>5836,\n30646=>5837,\n30649=>5838,\n30655=>5839,\n30652=>5840,\n30653=>5841,\n30651=>5842,\n30663=>5843,\n30669=>5844,\n30679=>5845,\n30682=>5846,\n30684=>5847,\n30691=>5848,\n30702=>5849,\n30716=>5850,\n30732=>5851,\n30738=>5852,\n31014=>5853,\n30752=>5854,\n31018=>5855,\n30789=>5856,\n30862=>5857,\n30836=>5858,\n30854=>5859,\n30844=>5860,\n30874=>5861,\n30860=>5862,\n30883=>5863,\n30901=>5864,\n30890=>5865,\n30895=>5866,\n30929=>5867,\n30918=>5868,\n30923=>5869,\n30932=>5870,\n30910=>5871,\n30908=>5872,\n30917=>5873,\n30922=>5874,\n30956=>5875,\n30951=>5876,\n30938=>5877,\n30973=>5878,\n30964=>5879,\n30983=>5880,\n30994=>5881,\n30993=>5882,\n31001=>5883,\n31020=>5884,\n31019=>5885,\n31040=>5886,\n31072=>5887,\n31063=>5888,\n31071=>5889,\n31066=>5890,\n31061=>5891,\n31059=>5892,\n31098=>5893,\n31103=>5894,\n31114=>5895,\n31133=>5896,\n31143=>5897,\n40779=>5898,\n31146=>5899,\n31150=>5900,\n31155=>5901,\n31161=>5902,\n31162=>5903,\n31177=>5904,\n31189=>5905,\n31207=>5906,\n31212=>5907,\n31201=>5908,\n31203=>5909,\n31240=>5910,\n31245=>5911,\n31256=>5912,\n31257=>5913,\n31264=>5914,\n31263=>5915,\n31104=>5916,\n31281=>5917,\n31291=>5918,\n31294=>5919,\n31287=>5920,\n31299=>5921,\n31319=>5922,\n31305=>5923,\n31329=>5924,\n31330=>5925,\n31337=>5926,\n40861=>5927,\n31344=>5928,\n31353=>5929,\n31357=>5930,\n31368=>5931,\n31383=>5932,\n31381=>5933,\n31384=>5934,\n31382=>5935,\n31401=>5936,\n31432=>5937,\n31408=>5938,\n31414=>5939,\n31429=>5940,\n31428=>5941,\n31423=>5942,\n36995=>5943,\n31431=>5944,\n31434=>5945,\n31437=>5946,\n31439=>5947,\n31445=>5948,\n31443=>5949,\n31449=>5950,\n31450=>5951,\n31453=>5952,\n31457=>5953,\n31458=>5954,\n31462=>5955,\n31469=>5956,\n31472=>5957,\n31490=>5958,\n31503=>5959,\n31498=>5960,\n31494=>5961,\n31539=>5962,\n31512=>5963,\n31513=>5964,\n31518=>5965,\n31541=>5966,\n31528=>5967,\n31542=>5968,\n31568=>5969,\n31610=>5970,\n31492=>5971,\n31565=>5972,\n31499=>5973,\n31564=>5974,\n31557=>5975,\n31605=>5976,\n31589=>5977,\n31604=>5978,\n31591=>5979,\n31600=>5980,\n31601=>5981,\n31596=>5982,\n31598=>5983,\n31645=>5984,\n31640=>5985,\n31647=>5986,\n31629=>5987,\n31644=>5988,\n31642=>5989,\n31627=>5990,\n31634=>5991,\n31631=>5992,\n31581=>5993,\n31641=>5994,\n31691=>5995,\n31681=>5996,\n31692=>5997,\n31695=>5998,\n31668=>5999,\n31686=>6000,\n31709=>6001,\n31721=>6002,\n31761=>6003,\n31764=>6004,\n31718=>6005,\n31717=>6006,\n31840=>6007,\n31744=>6008,\n31751=>6009,\n31763=>6010,\n31731=>6011,\n31735=>6012,\n31767=>6013,\n31757=>6014,\n31734=>6015,\n31779=>6016,\n31783=>6017,\n31786=>6018,\n31775=>6019,\n31799=>6020,\n31787=>6021,\n31805=>6022,\n31820=>6023,\n31811=>6024,\n31828=>6025,\n31823=>6026,\n31808=>6027,\n31824=>6028,\n31832=>6029,\n31839=>6030,\n31844=>6031,\n31830=>6032,\n31845=>6033,\n31852=>6034,\n31861=>6035,\n31875=>6036,\n31888=>6037,\n31908=>6038,\n31917=>6039,\n31906=>6040,\n31915=>6041,\n31905=>6042,\n31912=>6043,\n31923=>6044,\n31922=>6045,\n31921=>6046,\n31918=>6047,\n31929=>6048,\n31933=>6049,\n31936=>6050,\n31941=>6051,\n31938=>6052,\n31960=>6053,\n31954=>6054,\n31964=>6055,\n31970=>6056,\n39739=>6057,\n31983=>6058,\n31986=>6059,\n31988=>6060,\n31990=>6061,\n31994=>6062,\n32006=>6063,\n32002=>6064,\n32028=>6065,\n32021=>6066,\n32010=>6067,\n32069=>6068,\n32075=>6069,\n32046=>6070,\n32050=>6071,\n32063=>6072,\n32053=>6073,\n32070=>6074,\n32115=>6075,\n32086=>6076,\n32078=>6077,\n32114=>6078,\n32104=>6079,\n32110=>6080,\n32079=>6081,\n32099=>6082,\n32147=>6083,\n32137=>6084,\n32091=>6085,\n32143=>6086,\n32125=>6087,\n32155=>6088,\n32186=>6089,\n32174=>6090,\n32163=>6091,\n32181=>6092,\n32199=>6093,\n32189=>6094,\n32171=>6095,\n32317=>6096,\n32162=>6097,\n32175=>6098,\n32220=>6099,\n32184=>6100,\n32159=>6101,\n32176=>6102,\n32216=>6103,\n32221=>6104,\n32228=>6105,\n32222=>6106,\n32251=>6107,\n32242=>6108,\n32225=>6109,\n32261=>6110,\n32266=>6111,\n32291=>6112,\n32289=>6113,\n32274=>6114,\n32305=>6115,\n32287=>6116,\n32265=>6117,\n32267=>6118,\n32290=>6119,\n32326=>6120,\n32358=>6121,\n32315=>6122,\n32309=>6123,\n32313=>6124,\n32323=>6125,\n32311=>6126,\n32306=>6127,\n32314=>6128,\n32359=>6129,\n32349=>6130,\n32342=>6131,\n32350=>6132,\n32345=>6133,\n32346=>6134,\n32377=>6135,\n32362=>6136,\n32361=>6137,\n32380=>6138,\n32379=>6139,\n32387=>6140,\n32213=>6141,\n32381=>6142,\n36782=>6143,\n32383=>6144,\n32392=>6145,\n32393=>6146,\n32396=>6147,\n32402=>6148,\n32400=>6149,\n32403=>6150,\n32404=>6151,\n32406=>6152,\n32398=>6153,\n32411=>6154,\n32412=>6155,\n32568=>6156,\n32570=>6157,\n32581=>6158,\n32588=>6159,\n32589=>6160,\n32590=>6161,\n32592=>6162,\n12153=>6163,\n32593=>6163,\n32597=>6164,\n32596=>6165,\n32600=>6166,\n32607=>6167,\n32608=>6168,\n32616=>6169,\n32617=>6170,\n32615=>6171,\n32632=>6172,\n32642=>6173,\n32646=>6174,\n32643=>6175,\n32648=>6176,\n32647=>6177,\n32652=>6178,\n32660=>6179,\n32670=>6180,\n32669=>6181,\n32666=>6182,\n32675=>6183,\n32687=>6184,\n32690=>6185,\n32697=>6186,\n32686=>6187,\n32694=>6188,\n32696=>6189,\n35697=>6190,\n32709=>6191,\n32710=>6192,\n32714=>6193,\n32725=>6194,\n32724=>6195,\n32737=>6196,\n32742=>6197,\n32745=>6198,\n32755=>6199,\n32761=>6200,\n39132=>6201,\n32774=>6202,\n32772=>6203,\n32779=>6204,\n12158=>6205,\n32786=>6205,\n32792=>6206,\n32793=>6207,\n32796=>6208,\n32801=>6209,\n32808=>6210,\n32831=>6211,\n32827=>6212,\n32842=>6213,\n32838=>6214,\n32850=>6215,\n32856=>6216,\n32858=>6217,\n32863=>6218,\n32866=>6219,\n32872=>6220,\n32883=>6221,\n32882=>6222,\n32880=>6223,\n32886=>6224,\n32889=>6225,\n32893=>6226,\n12160=>6227,\n32895=>6227,\n32900=>6228,\n32902=>6229,\n32901=>6230,\n32923=>6231,\n32915=>6232,\n32922=>6233,\n32941=>6234,\n20880=>6235,\n32940=>6236,\n32987=>6237,\n32997=>6238,\n32985=>6239,\n32989=>6240,\n32964=>6241,\n32986=>6242,\n32982=>6243,\n33033=>6244,\n33007=>6245,\n33009=>6246,\n33051=>6247,\n33065=>6248,\n33059=>6249,\n33071=>6250,\n33099=>6251,\n38539=>6252,\n33094=>6253,\n33086=>6254,\n33107=>6255,\n33105=>6256,\n33020=>6257,\n33137=>6258,\n33134=>6259,\n33125=>6260,\n33126=>6261,\n33140=>6262,\n33155=>6263,\n33160=>6264,\n33162=>6265,\n33152=>6266,\n33154=>6267,\n33184=>6268,\n33173=>6269,\n33188=>6270,\n33187=>6271,\n33119=>6272,\n33171=>6273,\n33193=>6274,\n33200=>6275,\n33205=>6276,\n33214=>6277,\n33208=>6278,\n33213=>6279,\n33216=>6280,\n33218=>6281,\n33210=>6282,\n33225=>6283,\n33229=>6284,\n33233=>6285,\n33241=>6286,\n33240=>6287,\n33224=>6288,\n33242=>6289,\n33247=>6290,\n33248=>6291,\n33255=>6292,\n33274=>6293,\n33275=>6294,\n33278=>6295,\n33281=>6296,\n33282=>6297,\n33285=>6298,\n33287=>6299,\n33290=>6300,\n33293=>6301,\n33296=>6302,\n33302=>6303,\n33321=>6304,\n33323=>6305,\n33336=>6306,\n33331=>6307,\n33344=>6308,\n33369=>6309,\n33368=>6310,\n33373=>6311,\n33370=>6312,\n33375=>6313,\n33380=>6314,\n33378=>6315,\n33384=>6316,\n33386=>6317,\n33387=>6318,\n33326=>6319,\n33393=>6320,\n33399=>6321,\n12171=>6322,\n33400=>6322,\n33406=>6323,\n33421=>6324,\n33426=>6325,\n33451=>6326,\n33439=>6327,\n33467=>6328,\n33452=>6329,\n33505=>6330,\n33507=>6331,\n33503=>6332,\n33490=>6333,\n33524=>6334,\n33523=>6335,\n33530=>6336,\n33683=>6337,\n33539=>6338,\n33531=>6339,\n33529=>6340,\n33502=>6341,\n33542=>6342,\n33500=>6343,\n33545=>6344,\n33497=>6345,\n33589=>6346,\n33588=>6347,\n33558=>6348,\n33586=>6349,\n33585=>6350,\n33600=>6351,\n33593=>6352,\n33616=>6353,\n33605=>6354,\n33583=>6355,\n33579=>6356,\n33559=>6357,\n33560=>6358,\n33669=>6359,\n33690=>6360,\n33706=>6361,\n33695=>6362,\n33698=>6363,\n33686=>6364,\n33571=>6365,\n33678=>6366,\n33671=>6367,\n33674=>6368,\n33660=>6369,\n33717=>6370,\n33651=>6371,\n33653=>6372,\n33696=>6373,\n33673=>6374,\n33704=>6375,\n33780=>6376,\n33811=>6377,\n33771=>6378,\n33742=>6379,\n33789=>6380,\n33795=>6381,\n33752=>6382,\n33803=>6383,\n33729=>6384,\n33783=>6385,\n33799=>6386,\n33760=>6387,\n33778=>6388,\n33805=>6389,\n33826=>6390,\n33824=>6391,\n33725=>6392,\n33848=>6393,\n34054=>6394,\n33787=>6395,\n33901=>6396,\n33834=>6397,\n33852=>6398,\n34138=>6399,\n33924=>6400,\n33911=>6401,\n33899=>6402,\n33965=>6403,\n33902=>6404,\n33922=>6405,\n33897=>6406,\n33862=>6407,\n33836=>6408,\n33903=>6409,\n33913=>6410,\n33845=>6411,\n33994=>6412,\n33890=>6413,\n33977=>6414,\n33983=>6415,\n33951=>6416,\n34009=>6417,\n33997=>6418,\n33979=>6419,\n34010=>6420,\n34000=>6421,\n33985=>6422,\n33990=>6423,\n34006=>6424,\n33953=>6425,\n34081=>6426,\n34047=>6427,\n34036=>6428,\n34071=>6429,\n34072=>6430,\n34092=>6431,\n34079=>6432,\n34069=>6433,\n34068=>6434,\n34044=>6435,\n34112=>6436,\n34147=>6437,\n34136=>6438,\n34120=>6439,\n34113=>6440,\n34306=>6441,\n34123=>6442,\n34133=>6443,\n34176=>6444,\n34212=>6445,\n34184=>6446,\n34193=>6447,\n34186=>6448,\n34216=>6449,\n34157=>6450,\n34196=>6451,\n34203=>6452,\n34282=>6453,\n34183=>6454,\n34204=>6455,\n34167=>6456,\n34174=>6457,\n34192=>6458,\n34249=>6459,\n34234=>6460,\n34255=>6461,\n34233=>6462,\n34256=>6463,\n34261=>6464,\n34269=>6465,\n34277=>6466,\n34268=>6467,\n34297=>6468,\n34314=>6469,\n34323=>6470,\n34315=>6471,\n34302=>6472,\n34298=>6473,\n34310=>6474,\n34338=>6475,\n34330=>6476,\n34352=>6477,\n34367=>6478,\n12172=>6479,\n34381=>6479,\n20053=>6480,\n34388=>6481,\n34399=>6482,\n34407=>6483,\n34417=>6484,\n34451=>6485,\n34467=>6486,\n34473=>6487,\n34474=>6488,\n34443=>6489,\n34444=>6490,\n34486=>6491,\n34479=>6492,\n34500=>6493,\n34502=>6494,\n34480=>6495,\n34505=>6496,\n34851=>6497,\n34475=>6498,\n34516=>6499,\n34526=>6500,\n34537=>6501,\n34540=>6502,\n34527=>6503,\n34523=>6504,\n34543=>6505,\n34578=>6506,\n34566=>6507,\n34568=>6508,\n34560=>6509,\n34563=>6510,\n34555=>6511,\n34577=>6512,\n34569=>6513,\n34573=>6514,\n34553=>6515,\n34570=>6516,\n34612=>6517,\n34623=>6518,\n34615=>6519,\n34619=>6520,\n34597=>6521,\n34601=>6522,\n34586=>6523,\n34656=>6524,\n34655=>6525,\n34680=>6526,\n34636=>6527,\n34638=>6528,\n34676=>6529,\n34647=>6530,\n34664=>6531,\n34670=>6532,\n34649=>6533,\n34643=>6534,\n34659=>6535,\n34666=>6536,\n34821=>6537,\n34722=>6538,\n34719=>6539,\n34690=>6540,\n34735=>6541,\n34763=>6542,\n34749=>6543,\n34752=>6544,\n34768=>6545,\n38614=>6546,\n34731=>6547,\n34756=>6548,\n34739=>6549,\n34759=>6550,\n34758=>6551,\n34747=>6552,\n34799=>6553,\n34802=>6554,\n34784=>6555,\n34831=>6556,\n34829=>6557,\n34814=>6558,\n34806=>6559,\n34807=>6560,\n34830=>6561,\n34770=>6562,\n34833=>6563,\n34838=>6564,\n34837=>6565,\n34850=>6566,\n34849=>6567,\n34865=>6568,\n34870=>6569,\n34873=>6570,\n34855=>6571,\n34875=>6572,\n34884=>6573,\n34882=>6574,\n34898=>6575,\n34905=>6576,\n34910=>6577,\n34914=>6578,\n34923=>6579,\n34945=>6580,\n34942=>6581,\n34974=>6582,\n34933=>6583,\n34941=>6584,\n34997=>6585,\n34930=>6586,\n34946=>6587,\n34967=>6588,\n34962=>6589,\n34990=>6590,\n34969=>6591,\n34978=>6592,\n34957=>6593,\n34980=>6594,\n34992=>6595,\n35007=>6596,\n34993=>6597,\n35011=>6598,\n35012=>6599,\n35028=>6600,\n35032=>6601,\n35033=>6602,\n35037=>6603,\n35065=>6604,\n35074=>6605,\n35068=>6606,\n35060=>6607,\n35048=>6608,\n35058=>6609,\n35076=>6610,\n35084=>6611,\n35082=>6612,\n35091=>6613,\n35139=>6614,\n35102=>6615,\n35109=>6616,\n35114=>6617,\n35115=>6618,\n35137=>6619,\n35140=>6620,\n35131=>6621,\n35126=>6622,\n35128=>6623,\n35148=>6624,\n35101=>6625,\n35168=>6626,\n35166=>6627,\n35174=>6628,\n35172=>6629,\n35181=>6630,\n35178=>6631,\n35183=>6632,\n35188=>6633,\n35191=>6634,\n12177=>6635,\n35198=>6635,\n35203=>6636,\n35208=>6637,\n35210=>6638,\n35219=>6639,\n35224=>6640,\n35233=>6641,\n35241=>6642,\n35238=>6643,\n35244=>6644,\n35247=>6645,\n35250=>6646,\n35258=>6647,\n35261=>6648,\n35263=>6649,\n35264=>6650,\n35290=>6651,\n35292=>6652,\n35293=>6653,\n35303=>6654,\n35316=>6655,\n35320=>6656,\n35331=>6657,\n35350=>6658,\n35344=>6659,\n35340=>6660,\n35355=>6661,\n35357=>6662,\n35365=>6663,\n35382=>6664,\n35393=>6665,\n35419=>6666,\n35410=>6667,\n35398=>6668,\n35400=>6669,\n35452=>6670,\n35437=>6671,\n35436=>6672,\n35426=>6673,\n35461=>6674,\n35458=>6675,\n35460=>6676,\n35496=>6677,\n35489=>6678,\n35473=>6679,\n35493=>6680,\n35494=>6681,\n35482=>6682,\n35491=>6683,\n35524=>6684,\n35533=>6685,\n35522=>6686,\n35546=>6687,\n35563=>6688,\n35571=>6689,\n35559=>6690,\n35556=>6691,\n35569=>6692,\n35604=>6693,\n35552=>6694,\n35554=>6695,\n35575=>6696,\n35550=>6697,\n35547=>6698,\n35596=>6699,\n35591=>6700,\n35610=>6701,\n35553=>6702,\n35606=>6703,\n35600=>6704,\n35607=>6705,\n35616=>6706,\n35635=>6707,\n38827=>6708,\n35622=>6709,\n35627=>6710,\n35646=>6711,\n35624=>6712,\n35649=>6713,\n35660=>6714,\n35663=>6715,\n35662=>6716,\n35657=>6717,\n35670=>6718,\n35675=>6719,\n35674=>6720,\n35691=>6721,\n35679=>6722,\n35692=>6723,\n35695=>6724,\n35700=>6725,\n35709=>6726,\n35712=>6727,\n35724=>6728,\n35726=>6729,\n35730=>6730,\n35731=>6731,\n35734=>6732,\n35737=>6733,\n35738=>6734,\n35898=>6735,\n35905=>6736,\n35903=>6737,\n35912=>6738,\n35916=>6739,\n35918=>6740,\n35920=>6741,\n12183=>6742,\n35925=>6742,\n35938=>6743,\n35948=>6744,\n12184=>6745,\n35960=>6745,\n35962=>6746,\n35970=>6747,\n35977=>6748,\n35973=>6749,\n35978=>6750,\n35981=>6751,\n35982=>6752,\n35988=>6753,\n35964=>6754,\n35992=>6755,\n25117=>6756,\n36013=>6757,\n36010=>6758,\n36029=>6759,\n36018=>6760,\n36019=>6761,\n36014=>6762,\n36022=>6763,\n36040=>6764,\n36033=>6765,\n36068=>6766,\n36067=>6767,\n36058=>6768,\n36093=>6769,\n36090=>6770,\n36091=>6771,\n36100=>6772,\n36101=>6773,\n36106=>6774,\n36103=>6775,\n36111=>6776,\n36109=>6777,\n36112=>6778,\n40782=>6779,\n36115=>6780,\n36045=>6781,\n36116=>6782,\n36118=>6783,\n36199=>6784,\n36205=>6785,\n36209=>6786,\n36211=>6787,\n36225=>6788,\n36249=>6789,\n36290=>6790,\n36286=>6791,\n36282=>6792,\n36303=>6793,\n36314=>6794,\n36310=>6795,\n36300=>6796,\n36315=>6797,\n36299=>6798,\n36330=>6799,\n36331=>6800,\n36319=>6801,\n36323=>6802,\n36348=>6803,\n36360=>6804,\n36361=>6805,\n36351=>6806,\n36381=>6807,\n36382=>6808,\n36368=>6809,\n36383=>6810,\n36418=>6811,\n36405=>6812,\n36400=>6813,\n36404=>6814,\n36426=>6815,\n36423=>6816,\n36425=>6817,\n36428=>6818,\n36432=>6819,\n36424=>6820,\n36441=>6821,\n36452=>6822,\n36448=>6823,\n36394=>6824,\n36451=>6825,\n36437=>6826,\n36470=>6827,\n36466=>6828,\n36476=>6829,\n36481=>6830,\n36487=>6831,\n36485=>6832,\n36484=>6833,\n36491=>6834,\n36490=>6835,\n36499=>6836,\n36497=>6837,\n36500=>6838,\n36505=>6839,\n36522=>6840,\n36513=>6841,\n36524=>6842,\n36528=>6843,\n36550=>6844,\n36529=>6845,\n36542=>6846,\n36549=>6847,\n36552=>6848,\n36555=>6849,\n36571=>6850,\n36579=>6851,\n36604=>6852,\n36603=>6853,\n36587=>6854,\n36606=>6855,\n36618=>6856,\n36613=>6857,\n36629=>6858,\n36626=>6859,\n36633=>6860,\n36627=>6861,\n36636=>6862,\n36639=>6863,\n36635=>6864,\n36620=>6865,\n36646=>6866,\n36659=>6867,\n36667=>6868,\n36665=>6869,\n36677=>6870,\n36674=>6871,\n36670=>6872,\n36684=>6873,\n36681=>6874,\n36678=>6875,\n36686=>6876,\n36695=>6877,\n36700=>6878,\n36706=>6879,\n36707=>6880,\n36708=>6881,\n36764=>6882,\n36767=>6883,\n36771=>6884,\n36781=>6885,\n36783=>6886,\n36791=>6887,\n36826=>6888,\n36837=>6889,\n36834=>6890,\n36842=>6891,\n36847=>6892,\n36999=>6893,\n36852=>6894,\n36869=>6895,\n36857=>6896,\n36858=>6897,\n36881=>6898,\n36885=>6899,\n36897=>6900,\n36877=>6901,\n36894=>6902,\n36886=>6903,\n36875=>6904,\n36903=>6905,\n36918=>6906,\n36917=>6907,\n36921=>6908,\n36856=>6909,\n36943=>6910,\n36944=>6911,\n36945=>6912,\n36946=>6913,\n36878=>6914,\n36937=>6915,\n36926=>6916,\n36950=>6917,\n36952=>6918,\n36958=>6919,\n36968=>6920,\n36975=>6921,\n36982=>6922,\n38568=>6923,\n36978=>6924,\n36994=>6925,\n36989=>6926,\n36993=>6927,\n36992=>6928,\n37002=>6929,\n37001=>6930,\n37007=>6931,\n37032=>6932,\n37039=>6933,\n37041=>6934,\n37045=>6935,\n37090=>6936,\n37092=>6937,\n25160=>6938,\n37083=>6939,\n37122=>6940,\n37138=>6941,\n37145=>6942,\n37170=>6943,\n37168=>6944,\n37194=>6945,\n37206=>6946,\n37208=>6947,\n37219=>6948,\n37221=>6949,\n37225=>6950,\n37235=>6951,\n37234=>6952,\n37259=>6953,\n37257=>6954,\n37250=>6955,\n37282=>6956,\n37291=>6957,\n37295=>6958,\n37290=>6959,\n37301=>6960,\n37300=>6961,\n37306=>6962,\n37312=>6963,\n37313=>6964,\n37321=>6965,\n37323=>6966,\n37328=>6967,\n37334=>6968,\n37343=>6969,\n37345=>6970,\n37339=>6971,\n37372=>6972,\n37365=>6973,\n37366=>6974,\n37406=>6975,\n37375=>6976,\n37396=>6977,\n37420=>6978,\n37397=>6979,\n37393=>6980,\n37470=>6981,\n37463=>6982,\n37445=>6983,\n37449=>6984,\n37476=>6985,\n37448=>6986,\n37525=>6987,\n37439=>6988,\n37451=>6989,\n37456=>6990,\n37532=>6991,\n37526=>6992,\n37523=>6993,\n37531=>6994,\n37466=>6995,\n37583=>6996,\n37561=>6997,\n37559=>6998,\n37609=>6999,\n37647=>7000,\n37626=>7001,\n37700=>7002,\n37678=>7003,\n37657=>7004,\n37666=>7005,\n37658=>7006,\n37667=>7007,\n37690=>7008,\n37685=>7009,\n37691=>7010,\n37724=>7011,\n37728=>7012,\n37756=>7013,\n37742=>7014,\n37718=>7015,\n37808=>7016,\n37804=>7017,\n37805=>7018,\n37780=>7019,\n37817=>7020,\n37846=>7021,\n37847=>7022,\n37864=>7023,\n37861=>7024,\n37848=>7025,\n37827=>7026,\n37853=>7027,\n37840=>7028,\n37832=>7029,\n37860=>7030,\n37914=>7031,\n37908=>7032,\n37907=>7033,\n37891=>7034,\n37895=>7035,\n37904=>7036,\n37942=>7037,\n37931=>7038,\n37941=>7039,\n37921=>7040,\n37946=>7041,\n37953=>7042,\n37970=>7043,\n37956=>7044,\n37979=>7045,\n37984=>7046,\n37986=>7047,\n37982=>7048,\n37994=>7049,\n37417=>7050,\n38000=>7051,\n38005=>7052,\n38007=>7053,\n38013=>7054,\n37978=>7055,\n38012=>7056,\n38014=>7057,\n38017=>7058,\n38015=>7059,\n38274=>7060,\n38279=>7061,\n38282=>7062,\n38292=>7063,\n38294=>7064,\n38296=>7065,\n38297=>7066,\n38304=>7067,\n38312=>7068,\n38311=>7069,\n38317=>7070,\n38332=>7071,\n38331=>7072,\n38329=>7073,\n38334=>7074,\n38346=>7075,\n28662=>7076,\n38339=>7077,\n38349=>7078,\n38348=>7079,\n38357=>7080,\n38356=>7081,\n38358=>7082,\n38364=>7083,\n38369=>7084,\n38373=>7085,\n38370=>7086,\n38433=>7087,\n38440=>7088,\n38446=>7089,\n38447=>7090,\n38466=>7091,\n38476=>7092,\n38479=>7093,\n38475=>7094,\n38519=>7095,\n38492=>7096,\n38494=>7097,\n38493=>7098,\n38495=>7099,\n38502=>7100,\n38514=>7101,\n38508=>7102,\n38541=>7103,\n38552=>7104,\n38549=>7105,\n38551=>7106,\n38570=>7107,\n38567=>7108,\n38577=>7109,\n38578=>7110,\n38576=>7111,\n38580=>7112,\n12202=>7113,\n38582=>7113,\n38584=>7114,\n12203=>7115,\n38585=>7115,\n38606=>7116,\n38603=>7117,\n38601=>7118,\n38605=>7119,\n35149=>7120,\n38620=>7121,\n38669=>7122,\n38613=>7123,\n38649=>7124,\n38660=>7125,\n38662=>7126,\n38664=>7127,\n38675=>7128,\n38670=>7129,\n38673=>7130,\n38671=>7131,\n38678=>7132,\n38681=>7133,\n38692=>7134,\n38698=>7135,\n38704=>7136,\n38713=>7137,\n38717=>7138,\n38718=>7139,\n38724=>7140,\n38726=>7141,\n38728=>7142,\n38722=>7143,\n38729=>7144,\n38748=>7145,\n38752=>7146,\n38756=>7147,\n38758=>7148,\n38760=>7149,\n21202=>7150,\n38763=>7151,\n38769=>7152,\n38777=>7153,\n38789=>7154,\n38780=>7155,\n38785=>7156,\n38778=>7157,\n38790=>7158,\n38795=>7159,\n38799=>7160,\n38800=>7161,\n38812=>7162,\n38824=>7163,\n38822=>7164,\n38819=>7165,\n38835=>7166,\n38836=>7167,\n38851=>7168,\n38854=>7169,\n38856=>7170,\n12209=>7171,\n38859=>7171,\n38876=>7172,\n12210=>7173,\n38893=>7173,\n40783=>7174,\n38898=>7175,\n31455=>7176,\n38902=>7177,\n38901=>7178,\n38927=>7179,\n38924=>7180,\n38968=>7181,\n38948=>7182,\n38945=>7183,\n38967=>7184,\n38973=>7185,\n38982=>7186,\n38991=>7187,\n38987=>7188,\n39019=>7189,\n39023=>7190,\n39024=>7191,\n39025=>7192,\n39028=>7193,\n39027=>7194,\n39082=>7195,\n39087=>7196,\n39089=>7197,\n39094=>7198,\n39108=>7199,\n39107=>7200,\n39110=>7201,\n39145=>7202,\n39147=>7203,\n39171=>7204,\n39177=>7205,\n39186=>7206,\n39188=>7207,\n39192=>7208,\n39201=>7209,\n39197=>7210,\n39198=>7211,\n39204=>7212,\n39200=>7213,\n39212=>7214,\n39214=>7215,\n39229=>7216,\n39230=>7217,\n39234=>7218,\n39241=>7219,\n39237=>7220,\n39248=>7221,\n39243=>7222,\n39249=>7223,\n39250=>7224,\n39244=>7225,\n39253=>7226,\n39319=>7227,\n39320=>7228,\n39333=>7229,\n39341=>7230,\n39342=>7231,\n39356=>7232,\n39391=>7233,\n39387=>7234,\n39389=>7235,\n39384=>7236,\n39377=>7237,\n39405=>7238,\n39406=>7239,\n39409=>7240,\n39410=>7241,\n39419=>7242,\n39416=>7243,\n39425=>7244,\n39439=>7245,\n39429=>7246,\n39394=>7247,\n39449=>7248,\n39467=>7249,\n39479=>7250,\n39493=>7251,\n39490=>7252,\n39488=>7253,\n39491=>7254,\n39486=>7255,\n39509=>7256,\n39501=>7257,\n39515=>7258,\n39511=>7259,\n39519=>7260,\n39522=>7261,\n39525=>7262,\n39524=>7263,\n39529=>7264,\n39531=>7265,\n39530=>7266,\n39597=>7267,\n39600=>7268,\n39612=>7269,\n39616=>7270,\n39631=>7271,\n39633=>7272,\n39635=>7273,\n39636=>7274,\n39646=>7275,\n12221=>7276,\n39647=>7276,\n39650=>7277,\n39651=>7278,\n39654=>7279,\n39663=>7280,\n39659=>7281,\n39662=>7282,\n39668=>7283,\n39665=>7284,\n39671=>7285,\n39675=>7286,\n39686=>7287,\n39704=>7288,\n39706=>7289,\n39711=>7290,\n39714=>7291,\n39715=>7292,\n12222=>7293,\n39717=>7293,\n39719=>7294,\n39720=>7295,\n39721=>7296,\n39722=>7297,\n39726=>7298,\n12223=>7299,\n39727=>7299,\n39730=>7300,\n12224=>7300,\n39748=>7301,\n39747=>7302,\n39759=>7303,\n39757=>7304,\n39758=>7305,\n39761=>7306,\n39768=>7307,\n39796=>7308,\n39827=>7309,\n39811=>7310,\n39825=>7311,\n39830=>7312,\n39831=>7313,\n39839=>7314,\n39840=>7315,\n39848=>7316,\n39860=>7317,\n39872=>7318,\n39882=>7319,\n39865=>7320,\n39878=>7321,\n39887=>7322,\n39889=>7323,\n39890=>7324,\n39907=>7325,\n39906=>7326,\n39908=>7327,\n39892=>7328,\n39905=>7329,\n39994=>7330,\n39922=>7331,\n39921=>7332,\n39920=>7333,\n39957=>7334,\n39956=>7335,\n39945=>7336,\n39955=>7337,\n39948=>7338,\n39942=>7339,\n39944=>7340,\n39954=>7341,\n39946=>7342,\n39940=>7343,\n39982=>7344,\n39963=>7345,\n39973=>7346,\n39972=>7347,\n39969=>7348,\n39984=>7349,\n40007=>7350,\n39986=>7351,\n40006=>7352,\n39998=>7353,\n40026=>7354,\n40032=>7355,\n40039=>7356,\n40054=>7357,\n40056=>7358,\n40167=>7359,\n40172=>7360,\n40176=>7361,\n40201=>7362,\n40200=>7363,\n40171=>7364,\n40195=>7365,\n40198=>7366,\n40234=>7367,\n40230=>7368,\n40367=>7369,\n40227=>7370,\n40223=>7371,\n40260=>7372,\n40213=>7373,\n40210=>7374,\n40257=>7375,\n40255=>7376,\n40254=>7377,\n40262=>7378,\n40264=>7379,\n40285=>7380,\n40286=>7381,\n40292=>7382,\n40273=>7383,\n40272=>7384,\n40281=>7385,\n40306=>7386,\n40329=>7387,\n40327=>7388,\n40363=>7389,\n40303=>7390,\n40314=>7391,\n40346=>7392,\n40356=>7393,\n40361=>7394,\n40370=>7395,\n40388=>7396,\n40385=>7397,\n40379=>7398,\n40376=>7399,\n40378=>7400,\n40390=>7401,\n40399=>7402,\n40386=>7403,\n40409=>7404,\n40403=>7405,\n40440=>7406,\n40422=>7407,\n40429=>7408,\n40431=>7409,\n40445=>7410,\n40474=>7411,\n40475=>7412,\n40478=>7413,\n12228=>7414,\n40565=>7414,\n40569=>7415,\n40573=>7416,\n40577=>7417,\n40584=>7418,\n40587=>7419,\n40588=>7420,\n40594=>7421,\n40597=>7422,\n40593=>7423,\n40605=>7424,\n12230=>7425,\n40613=>7425,\n40617=>7426,\n40632=>7427,\n40618=>7428,\n40621=>7429,\n38753=>7430,\n40652=>7431,\n40654=>7432,\n40655=>7433,\n40656=>7434,\n40660=>7435,\n40668=>7436,\n40670=>7437,\n40669=>7438,\n40672=>7439,\n40677=>7440,\n40680=>7441,\n40687=>7442,\n40692=>7443,\n40694=>7444,\n40695=>7445,\n12235=>7446,\n40697=>7446,\n40699=>7447,\n40700=>7448,\n12236=>7449,\n40701=>7449,\n40711=>7450,\n40712=>7451,\n30391=>7452,\n40725=>7453,\n40737=>7454,\n40748=>7455,\n40766=>7456,\n40778=>7457,\n12241=>7457,\n40786=>7458,\n12242=>7458,\n40788=>7459,\n40803=>7460,\n40799=>7461,\n40800=>7462,\n40801=>7463,\n40806=>7464,\n40807=>7465,\n40812=>7466,\n40810=>7467,\n40823=>7468,\n40818=>7469,\n40822=>7470,\n40853=>7471,\n40860=>7472,\n12244=>7472,\n40864=>7473,\n12245=>7473,\n22575=>7474,\n27079=>7475,\n36953=>7476,\n29796=>7477,\n9472=>7479,\n9473=>7480,\n9474=>7481,\n9475=>7482,\n9476=>7483,\n9477=>7484,\n9478=>7485,\n9479=>7486,\n9480=>7487,\n9481=>7488,\n9482=>7489,\n9483=>7490,\n9484=>7491,\n9485=>7492,\n9486=>7493,\n9487=>7494,\n9488=>7495,\n9489=>7496,\n9490=>7497,\n9491=>7498,\n9492=>7499,\n9493=>7500,\n9494=>7501,\n9495=>7502,\n9496=>7503,\n9497=>7504,\n9498=>7505,\n9499=>7506,\n9500=>7507,\n9501=>7508,\n9502=>7509,\n9503=>7510,\n9504=>7511,\n9505=>7512,\n9506=>7513,\n9507=>7514,\n9508=>7515,\n9509=>7516,\n9510=>7517,\n9511=>7518,\n9512=>7519,\n9513=>7520,\n9514=>7521,\n9515=>7522,\n9516=>7523,\n9517=>7524,\n9518=>7525,\n9519=>7526,\n9520=>7527,\n9521=>7528,\n9522=>7529,\n9523=>7530,\n9524=>7531,\n9525=>7532,\n9526=>7533,\n9527=>7534,\n9528=>7535,\n9529=>7536,\n9530=>7537,\n9531=>7538,\n9532=>7539,\n9533=>7540,\n9534=>7541,\n9535=>7542,\n9536=>7543,\n9537=>7544,\n9538=>7545,\n9539=>7546,\n9540=>7547,\n9541=>7548,\n9542=>7549,\n9543=>7550,\n9544=>7551,\n9545=>7552,\n9546=>7553,\n9547=>7554,\n9312=>7555,\n9313=>7556,\n9314=>7557,\n9315=>7558,\n9316=>7559,\n9317=>7560,\n9318=>7561,\n9319=>7562,\n9320=>7563,\n9321=>7564,\n9322=>7565,\n9323=>7566,\n9324=>7567,\n9325=>7568,\n9326=>7569,\n9327=>7570,\n9328=>7571,\n9329=>7572,\n9330=>7573,\n9331=>7574,\n8544=>7575,\n8545=>7576,\n8546=>7577,\n8547=>7578,\n8548=>7579,\n8549=>7580,\n8550=>7581,\n8551=>7582,\n8552=>7583,\n8553=>7584,\n13129=>7585,\n13076=>7586,\n13133=>7588,\n13095=>7590,\n13110=>7592,\n13137=>7593,\n13069=>7595,\n13094=>7596,\n13099=>7598,\n13130=>7599,\n13212=>7601,\n13213=>7602,\n13214=>7603,\n13198=>7604,\n13199=>7605,\n13252=>7606,\n13217=>7607,\n12317=>7608,\n12319=>7609,\n8470=>7610,\n13261=>7611,\n12964=>7613,\n12965=>7614,\n12966=>7615,\n12967=>7616,\n12968=>7617,\n12849=>7618,\n12850=>7619,\n12857=>7620,\n13182=>7621,\n13181=>7622,\n13180=>7623,\n8750=>7624,\n8721=>7625,\n8735=>7629,\n8895=>7630,\n21854=>7633,\n167133=>7641,\n28976=>7644,\n40407=>7646,\n64054=>7651,\n22169=>7654,\n15694=>7655,\n20448=>7660,\n36544=>7663,\n194797=>7665,\n153716=>7670,\n32363=>7671,\n33606=>7672,\n167670=>7673,\n40572=>7677,\n26171=>7680,\n40628=>7682,\n26629=>7687,\n23650=>7693,\n194780=>7695,\n32353=>7697,\n64070=>7700,\n34083=>7706,\n37292=>7707,\n34796=>7715,\n25620=>7724,\n39506=>7727,\n64074=>7732,\n194692=>7734,\n31774=>7739,\n64016=>7746,\n25681=>7747,\n63980=>7750,\n22625=>7751,\n39002=>7752,\n194679=>7754,\n31153=>7758,\n28678=>7760,\n22218=>7770,\n21085=>7774,\n28497=>7776,\n37297=>7777,\n64106=>7788,\n38960=>7795,\n40629=>7797,\n33802=>7807,\n63939=>7808,\n63890=>7809,\n63891=>7810,\n63897=>7811,\n34847=>7813,\n194575=>7814,\n194771=>7816,\n194584=>7817,\n137754=>7825,\n23643=>7826,\n25890=>7831,\n26618=>7834,\n26766=>7836,\n148432=>7838,\n194848=>7839,\n34110=>7861,\n30562=>7877,\n65041=>7887,\n65042=>7888,\n65075=>7890,\n65073=>7892,\n65074=>7893,\n8285=>7897,\n65049=>7897,\n8282=>7898,\n65072=>7898,\n65077=>7899,\n65078=>7900,\n65081=>7901,\n65082=>7902,\n65095=>7903,\n65096=>7904,\n65079=>7905,\n65080=>7906,\n65087=>7907,\n65088=>7908,\n65085=>7909,\n65086=>7910,\n65089=>7911,\n65090=>7912,\n65091=>7913,\n65092=>7914,\n65083=>7915,\n65084=>7916,\n12436=>7958,\n12437=>7959,\n12438=>7960,\n22099=>7963,\n65508=>8005,\n65287=>8006,\n65282=>8007,\n9665=>8009,\n9655=>8010,\n8681=>8011,\n8679=>8012,\n8678=>8013,\n8680=>8014,\n9634=>8015,\n9831=>8016,\n9825=>8017,\n9828=>8018,\n9826=>8019,\n13216=>8020,\n13218=>8021,\n13220=>8022,\n13221=>8023,\n13207=>8024,\n8467=>8025,\n13208=>8026,\n13235=>8027,\n13234=>8028,\n13233=>8029,\n13232=>8030,\n13189=>8031,\n13190=>8032,\n13191=>8033,\n13259=>8034,\n13200=>8035,\n13268=>8036,\n13206=>8037,\n13090=>8038,\n13078=>8039,\n13080=>8040,\n13077=>8041,\n13059=>8042,\n13091=>8043,\n13143=>8044,\n13122=>8045,\n13113=>8046,\n13115=>8047,\n13056=>8048,\n13105=>8049,\n13127=>8050,\n13086=>8051,\n13098=>8052,\n13183=>8054,\n8481=>8055,\n9742=>8056,\n12342=>8057,\n12320=>8058,\n9352=>8062,\n9353=>8063,\n9354=>8064,\n9355=>8065,\n9356=>8066,\n9357=>8067,\n9358=>8068,\n9359=>8069,\n9360=>8070,\n9332=>8071,\n9333=>8072,\n9334=>8073,\n9335=>8074,\n9336=>8075,\n9337=>8076,\n9338=>8077,\n9339=>8078,\n9340=>8079,\n9341=>8080,\n9342=>8081,\n9343=>8082,\n9344=>8083,\n9345=>8084,\n9346=>8085,\n9347=>8086,\n9348=>8087,\n9349=>8088,\n9350=>8089,\n9351=>8090,\n12881=>8091,\n8560=>8092,\n8561=>8093,\n8562=>8094,\n8563=>8095,\n8564=>8096,\n8565=>8097,\n8566=>8098,\n8567=>8099,\n8568=>8100,\n8569=>8101,\n12882=>8102,\n12883=>8103,\n12884=>8104,\n12885=>8105,\n12886=>8106,\n12887=>8107,\n12888=>8108,\n12889=>8109,\n12890=>8110,\n12891=>8111,\n9372=>8112,\n9373=>8113,\n9374=>8114,\n9375=>8115,\n9376=>8116,\n9377=>8117,\n9378=>8118,\n9379=>8119,\n9380=>8120,\n9381=>8121,\n9382=>8122,\n9383=>8123,\n9384=>8124,\n9385=>8125,\n9386=>8126,\n9387=>8127,\n9388=>8128,\n9389=>8129,\n9390=>8130,\n9391=>8131,\n9392=>8132,\n9393=>8133,\n9394=>8134,\n9395=>8135,\n9396=>8136,\n9397=>8137,\n12867=>8138,\n12861=>8139,\n12863=>8140,\n12852=>8141,\n12856=>8142,\n12851=>8143,\n12860=>8144,\n12866=>8145,\n12862=>8146,\n12854=>8147,\n12853=>8148,\n12859=>8149,\n12864=>8150,\n12858=>8151,\n12976=>8152,\n12973=>8153,\n12969=>8154,\n12975=>8155,\n12948=>8156,\n12970=>8157,\n12952=>8158,\n12971=>8159,\n12946=>8160,\n12945=>8161,\n12947=>8162,\n12972=>8163,\n12974=>8164,\n12950=>8165,\n9131=>8174,\n9132=>8175,\n9133=>8176,\n9127=>8178,\n9128=>8179,\n9129=>8180,\n13260=>8182,\n13061=>8183,\n13215=>8186,\n13219=>8187,\n13222=>8188,\n12958=>8191,\n13192=>8192,\n13193=>8193,\n13256=>8194,\n8749=>8195,\n12848=>8197,\n12842=>8198,\n12843=>8199,\n12844=>8200,\n12845=>8201,\n12846=>8202,\n12847=>8203,\n12855=>8204,\n12865=>8205,\n10145=>8206,\n11013=>8207,\n11014=>8208,\n11015=>8209,\n9673=>8210,\n9824=>8211,\n9829=>8212,\n9827=>8213,\n9830=>8214,\n9728=>8215,\n9729=>8216,\n9730=>8217,\n9731=>8218,\n9758=>8219,\n9756=>8220,\n9757=>8221,\n9759=>8222,\n12953=>8223,\n9450=>8224,\n8554=>8225,\n8555=>8226,\n9601=>8230,\n9602=>8231,\n9603=>8232,\n9604=>8233,\n9605=>8234,\n9606=>8235,\n9607=>8236,\n9608=>8237,\n9615=>8238,\n9614=>8239,\n9613=>8240,\n9612=>8241,\n9611=>8242,\n9610=>8243,\n9609=>8244,\n9620=>8245,\n9621=>8246,\n9581=>8247,\n9582=>8248,\n9584=>8249,\n9583=>8250,\n9552=>8251,\n9566=>8252,\n9578=>8253,\n9569=>8254,\n9698=>8255,\n9699=>8256,\n9701=>8257,\n9700=>8258,\n9585=>8261,\n9586=>8262,\n9587=>8263,\n65040=>8268,\n20956=>8284,\n29081=>8285,\n10102=>8286,\n10103=>8287,\n10104=>8288,\n10105=>8289,\n10106=>8290,\n10107=>8291,\n10108=>8292,\n10109=>8293,\n10110=>8294,\n8570=>8298,\n8571=>8299,\n8575=>8303,\n8458=>8304,\n8457=>8305,\n8507=>8307,\n12292=>8308,\n8646=>8309,\n8644=>8310,\n8645=>8311,\n12535=>8313,\n12536=>8314,\n12537=>8315,\n12538=>8316,\n12957=>8319,\n13179=>8323,\n13107=>8327,\n13134=>8328,\n32394=>8359,\n35100=>8360,\n37704=>8361,\n37512=>8362,\n34012=>8363,\n20425=>8364,\n28859=>8365,\n26161=>8366,\n26824=>8367,\n37625=>8368,\n26363=>8369,\n24389=>8370,\n12033=>8371,\n20008=>8371,\n20193=>8372,\n20220=>8373,\n20224=>8374,\n20227=>8375,\n20281=>8376,\n20310=>8377,\n20370=>8378,\n20362=>8379,\n20378=>8380,\n20372=>8381,\n20429=>8382,\n20544=>8383,\n20514=>8384,\n20479=>8385,\n20510=>8386,\n20550=>8387,\n20592=>8388,\n20546=>8389,\n20628=>8390,\n20724=>8391,\n20696=>8392,\n20810=>8393,\n20836=>8394,\n20893=>8395,\n20926=>8396,\n20972=>8397,\n21013=>8398,\n21148=>8399,\n21158=>8400,\n21184=>8401,\n21211=>8402,\n21248=>8403,\n21284=>8405,\n21362=>8406,\n21395=>8407,\n21426=>8408,\n21469=>8409,\n64014=>8410,\n21660=>8411,\n21642=>8412,\n21673=>8413,\n21759=>8414,\n21894=>8415,\n22361=>8416,\n22373=>8417,\n22444=>8418,\n22472=>8419,\n22471=>8420,\n64015=>8421,\n22686=>8423,\n22706=>8424,\n22795=>8425,\n22867=>8426,\n22875=>8427,\n22877=>8428,\n22883=>8429,\n22948=>8430,\n22970=>8431,\n23382=>8432,\n23488=>8433,\n29999=>8434,\n23512=>8435,\n23582=>8437,\n23718=>8438,\n23738=>8439,\n23797=>8440,\n23847=>8441,\n23891=>8442,\n23874=>8444,\n23917=>8445,\n23992=>8446,\n23993=>8447,\n24016=>8448,\n24353=>8449,\n24372=>8450,\n24423=>8451,\n24503=>8452,\n24542=>8453,\n24669=>8454,\n24709=>8455,\n24714=>8456,\n24798=>8457,\n24789=>8458,\n24864=>8459,\n24818=>8460,\n24849=>8461,\n24887=>8462,\n24880=>8463,\n24984=>8464,\n25107=>8465,\n25254=>8466,\n25589=>8467,\n25696=>8468,\n25757=>8469,\n25806=>8470,\n25934=>8471,\n26112=>8472,\n26133=>8473,\n26121=>8474,\n26158=>8475,\n26148=>8477,\n26213=>8478,\n26199=>8479,\n26201=>8480,\n64018=>8481,\n26227=>8482,\n26265=>8483,\n26272=>8484,\n26290=>8485,\n26303=>8486,\n26362=>8487,\n26382=>8488,\n26470=>8490,\n26555=>8491,\n26706=>8492,\n26560=>8493,\n26692=>8495,\n26831=>8496,\n64019=>8497,\n26984=>8498,\n64020=>8499,\n27032=>8500,\n27106=>8501,\n27184=>8502,\n27243=>8503,\n27206=>8504,\n27251=>8505,\n27262=>8506,\n27362=>8507,\n27364=>8508,\n27606=>8509,\n27711=>8510,\n27740=>8511,\n27782=>8512,\n27759=>8513,\n27866=>8514,\n27908=>8515,\n28039=>8516,\n28015=>8517,\n28054=>8518,\n28076=>8519,\n28111=>8520,\n28152=>8521,\n28146=>8522,\n28156=>8523,\n28217=>8524,\n28252=>8525,\n28199=>8526,\n28220=>8527,\n28351=>8528,\n28552=>8529,\n28597=>8530,\n28661=>8531,\n28677=>8532,\n28679=>8533,\n28712=>8534,\n28805=>8535,\n28843=>8536,\n28943=>8537,\n28932=>8538,\n29020=>8539,\n28998=>8540,\n28999=>8541,\n29121=>8543,\n29182=>8544,\n29361=>8545,\n29374=>8546,\n29476=>8547,\n64022=>8548,\n29559=>8549,\n29629=>8550,\n29641=>8551,\n29654=>8552,\n29667=>8553,\n29650=>8554,\n29703=>8555,\n29685=>8556,\n29734=>8557,\n29738=>8558,\n29737=>8559,\n29742=>8560,\n29833=>8562,\n29855=>8563,\n29953=>8564,\n30063=>8565,\n30338=>8566,\n30364=>8567,\n30366=>8568,\n30363=>8569,\n30374=>8570,\n64023=>8571,\n30534=>8572,\n21167=>8573,\n30753=>8574,\n30798=>8575,\n30820=>8576,\n30842=>8577,\n31024=>8578,\n64024=>8579,\n64025=>8580,\n64026=>8581,\n31124=>8582,\n64027=>8583,\n31131=>8584,\n31441=>8585,\n31463=>8586,\n64028=>8587,\n31467=>8588,\n31646=>8589,\n64029=>8590,\n32072=>8591,\n32183=>8593,\n32160=>8594,\n32214=>8595,\n32338=>8596,\n32583=>8597,\n32673=>8598,\n64030=>8599,\n33537=>8600,\n33634=>8601,\n33663=>8602,\n33735=>8603,\n33782=>8604,\n33864=>8605,\n33972=>8606,\n34131=>8607,\n34137=>8608,\n34155=>8609,\n64031=>8610,\n34224=>8611,\n64032=>8612,\n64033=>8613,\n34823=>8614,\n35061=>8615,\n35346=>8616,\n35383=>8617,\n35449=>8618,\n35495=>8619,\n35518=>8620,\n35551=>8621,\n64034=>8622,\n35574=>8623,\n35667=>8624,\n35711=>8625,\n36080=>8626,\n36084=>8627,\n36114=>8628,\n36214=>8629,\n64035=>8630,\n36559=>8631,\n64037=>8633,\n36967=>8634,\n37086=>8635,\n64038=>8636,\n37141=>8637,\n37159=>8638,\n37338=>8639,\n37335=>8640,\n37342=>8641,\n37357=>8642,\n37358=>8643,\n37348=>8644,\n37349=>8645,\n37382=>8646,\n37392=>8647,\n37386=>8648,\n37434=>8649,\n37440=>8650,\n37436=>8651,\n37454=>8652,\n37465=>8653,\n37457=>8654,\n37433=>8655,\n37479=>8656,\n37543=>8657,\n37495=>8658,\n37496=>8659,\n37607=>8660,\n37591=>8661,\n37593=>8662,\n37584=>8663,\n64039=>8664,\n37589=>8665,\n37600=>8666,\n37587=>8667,\n37669=>8668,\n37665=>8669,\n37627=>8670,\n64040=>8671,\n37662=>8672,\n37631=>8673,\n37661=>8674,\n37634=>8675,\n37744=>8676,\n37719=>8677,\n37796=>8678,\n37830=>8679,\n37854=>8680,\n37880=>8681,\n37937=>8682,\n37957=>8683,\n37960=>8684,\n38290=>8685,\n64041=>8687,\n38557=>8688,\n38575=>8689,\n38707=>8690,\n38715=>8691,\n38723=>8692,\n38733=>8693,\n38735=>8694,\n12205=>8695,\n38737=>8695,\n38999=>8697,\n39013=>8698,\n64042=>8699,\n64043=>8700,\n39207=>8701,\n64044=>8702,\n39326=>8703,\n39502=>8704,\n39641=>8705,\n39644=>8706,\n39797=>8707,\n39794=>8708,\n39823=>8709,\n39857=>8710,\n39867=>8711,\n39936=>8712,\n40304=>8713,\n40299=>8714,\n64045=>8715,\n40473=>8716,\n40657=>8717,\n8364=>9354,\n8486=>9355,\n64256=>9358,\n64259=>9359,\n64260=>9360,\n257=>9361,\n299=>9362,\n363=>9363,\n275=>9364,\n333=>9365,\n256=>9366,\n298=>9367,\n362=>9368,\n274=>9369,\n332=>9370,\n8539=>9371,\n8540=>9372,\n8541=>9373,\n8542=>9374,\n8531=>9375,\n8532=>9376,\n8304=>9377,\n8308=>9378,\n8309=>9379,\n8310=>9380,\n8311=>9381,\n8312=>9382,\n8313=>9383,\n8320=>9384,\n8321=>9385,\n8322=>9386,\n8323=>9387,\n8324=>9388,\n8325=>9389,\n8326=>9390,\n8327=>9391,\n8328=>9392,\n8329=>9393,\n461=>9394,\n282=>9395,\n7868=>9397,\n463=>9398,\n296=>9400,\n465=>9401,\n467=>9403,\n366=>9404,\n360=>9405,\n462=>9406,\n283=>9407,\n7869=>9409,\n464=>9410,\n297=>9412,\n466=>9413,\n468=>9415,\n367=>9416,\n361=>9417,\n593=>9418,\n8049=>9419,\n8048=>9420,\n509=>9421,\n596=>9423,\n601=>9426,\n602=>9429,\n603=>9432,\n8051=>9433,\n8050=>9434,\n567=>9435,\n331=>9436,\n629=>9437,\n652=>9438,\n658=>9441,\n643=>9442,\n720=>9443,\n8534=>9785,\n8535=>9786,\n8536=>9787,\n8537=>9788,\n8538=>9789,\n12832=>10126,\n12833=>10127,\n12834=>10128,\n12835=>10129,\n12836=>10130,\n12837=>10131,\n12838=>10132,\n12839=>10133,\n12840=>10134,\n12841=>10135,\n12892=>10244,\n12893=>10245,\n12894=>10246,\n12895=>10247,\n12977=>10248,\n12978=>10249,\n12979=>10250,\n12980=>10251,\n12981=>10252,\n12982=>10253,\n12983=>10254,\n12984=>10255,\n12985=>10256,\n12986=>10257,\n12987=>10258,\n12988=>10259,\n12989=>10260,\n12990=>10261,\n12991=>10262,\n9424=>10313,\n9425=>10314,\n9426=>10315,\n9427=>10316,\n9428=>10317,\n9429=>10318,\n9430=>10319,\n9431=>10320,\n9432=>10321,\n9433=>10322,\n9434=>10323,\n9435=>10324,\n9436=>10325,\n9437=>10326,\n9438=>10327,\n9439=>10328,\n9440=>10329,\n9441=>10330,\n9442=>10331,\n9443=>10332,\n9444=>10333,\n9445=>10334,\n9446=>10335,\n9447=>10336,\n9448=>10337,\n9449=>10338,\n9398=>10339,\n9399=>10340,\n9400=>10341,\n9401=>10342,\n9402=>10343,\n9403=>10344,\n9404=>10345,\n9405=>10346,\n9406=>10347,\n9407=>10348,\n9408=>10349,\n9409=>10350,\n9410=>10351,\n9411=>10352,\n9412=>10353,\n9413=>10354,\n9414=>10355,\n9415=>10356,\n9416=>10357,\n9417=>10358,\n9418=>10359,\n9419=>10360,\n9420=>10361,\n9421=>10362,\n9422=>10363,\n9423=>10364,\n13008=>10413,\n13009=>10414,\n13010=>10415,\n13011=>10416,\n13012=>10417,\n13013=>10418,\n13014=>10419,\n13015=>10420,\n13016=>10421,\n13017=>10422,\n13018=>10423,\n13019=>10424,\n13020=>10425,\n13021=>10426,\n13022=>10427,\n13023=>10428,\n13024=>10429,\n13025=>10430,\n13026=>10431,\n13027=>10432,\n13028=>10433,\n13029=>10434,\n13030=>10435,\n13031=>10436,\n13032=>10437,\n13033=>10438,\n13034=>10439,\n13035=>10440,\n13036=>10441,\n13037=>10442,\n13038=>10443,\n13039=>10444,\n13040=>10445,\n13041=>10446,\n13042=>10447,\n13043=>10448,\n13044=>10449,\n13045=>10450,\n13046=>10451,\n13047=>10452,\n13048=>10453,\n13049=>10454,\n13050=>10455,\n13051=>10456,\n13052=>10457,\n13053=>10458,\n13054=>10459,\n12928=>10461,\n12929=>10462,\n12930=>10463,\n12931=>10464,\n12932=>10465,\n12933=>10466,\n12934=>10467,\n12935=>10468,\n12936=>10469,\n12937=>10470,\n12944=>10471,\n12938=>10472,\n12939=>10473,\n12940=>10474,\n12941=>10475,\n12942=>10476,\n12943=>10477,\n12959=>10479,\n12960=>10486,\n12961=>10487,\n12955=>10488,\n12954=>10489,\n12963=>10490,\n12962=>10491,\n12951=>10492,\n12956=>10494,\n12949=>10495,\n9676=>10502,\n9471=>10503,\n10111=>10514,\n9451=>10515,\n9452=>10516,\n9453=>10517,\n9454=>10518,\n9455=>10519,\n9456=>10520,\n9457=>10521,\n9458=>10522,\n9459=>10523,\n9460=>10524,\n8414=>11035,\n13274=>11851,\n8448=>11855,\n13250=>11856,\n8453=>11859,\n13169=>11861,\n13197=>11864,\n13211=>11865,\n13271=>11869,\n13272=>11870,\n13057=>11874,\n13058=>11875,\n13060=>11876,\n13062=>11877,\n13064=>11879,\n13063=>11881,\n13066=>11882,\n13065=>11884,\n13067=>11886,\n13068=>11888,\n13070=>11889,\n13071=>11890,\n13072=>11891,\n13073=>11892,\n13074=>11893,\n13075=>11894,\n13079=>11896,\n13081=>11898,\n13082=>11900,\n13083=>11901,\n13084=>11902,\n13085=>11903,\n13087=>11904,\n13088=>11905,\n13089=>11906,\n13092=>11907,\n13093=>11909,\n13096=>11912,\n13097=>11913,\n13101=>11915,\n13102=>11918,\n13103=>11919,\n13104=>11920,\n13106=>11921,\n13108=>11924,\n13109=>11925,\n13116=>11926,\n13111=>11930,\n13112=>11932,\n13114=>11933,\n13117=>11934,\n13121=>11935,\n13118=>11936,\n13119=>11937,\n13120=>11938,\n13123=>11939,\n13124=>11940,\n13125=>11941,\n13126=>11942,\n13128=>11943,\n13131=>11944,\n13132=>11945,\n13135=>11946,\n13136=>11947,\n13138=>11950,\n13140=>11951,\n13139=>11954,\n13141=>11955,\n13142=>11956,\n8501=>12089,\n976=>12090,\n8714=>12091,\n8463=>12092,\n981=>12094,\n987=>12095,\n977=>12096,\n9832=>12098,\n9833=>12099,\n9836=>12100,\n12347=>12106,\n12339=>12108,\n12340=>12109,\n12341=>12110,\n8252=>12111,\n8265=>12112,\n8723=>12118,\n8771=>12120,\n8818=>12121,\n8819=>12122,\n12312=>12129,\n12313=>12130,\n65375=>12131,\n65376=>12132,\n9115=>12143,\n9117=>12144,\n9118=>12145,\n9120=>12146,\n9121=>12151,\n9123=>12152,\n9124=>12153,\n9126=>12154,\n9116=>12167,\n9119=>12167,\n9122=>12167,\n9125=>12167,\n9130=>12167,\n9986=>12176,\n12349=>12179,\n12447=>12181,\n8709=>12184,\n8864=>12185,\n8854=>12186,\n8856=>12187,\n8853=>12188,\n8855=>12189,\n9888=>12192,\n9664=>12194,\n9654=>12195,\n8656=>12200,\n8596=>12201,\n8600=>12202,\n8601=>12203,\n8598=>12204,\n8599=>12205,\n8652=>12206,\n8651=>12207,\n12336=>12218,\n8967=>12219,\n10048=>12228,\n10047=>12229,\n9643=>12237,\n9642=>12239,\n10010=>12241,\n9702=>12254,\n10070=>12259,\n65093=>12639,\n65094=>12640,\n64103=>13320,\n64098=>13321,\n32227=>13322,\n12232=>13323,\n40643=>13323,\n28331=>13324,\n64082=>13325,\n64061=>13326,\n64069=>13327,\n64062=>13328,\n27114=>13329,\n28212=>13330,\n64096=>13331,\n64071=>13332,\n64056=>13333,\n64066=>13334,\n64078=>13335,\n34395=>13336,\n64105=>13337,\n64052=>13338,\n64099=>13339,\n25581=>13340,\n25802=>13341,\n30799=>13342,\n64084=>13343,\n63856=>13344,\n64077=>13345,\n64097=>13346,\n64072=>13347,\n64076=>13348,\n64091=>13349,\n64092=>13350,\n64081=>13351,\n64067=>13352,\n64090=>13353,\n28041=>13354,\n29376=>13355,\n194885=>13357,\n64086=>13358,\n64080=>13359,\n64049=>13360,\n64059=>13361,\n24034=>13362,\n64063=>13363,\n64101=>13364,\n21373=>13365,\n64055=>13366,\n64095=>13367,\n24501=>13368,\n64064=>13369,\n64083=>13371,\n64085=>13373,\n64104=>13374,\n64068=>13375,\n64089=>13376,\n26202=>13377,\n64053=>13378,\n64075=>13379,\n64100=>13380,\n64065=>13381,\n64048=>13382,\n64057=>13384,\n64051=>13385,\n27493=>13386,\n64058=>13387,\n27599=>13388,\n64050=>13389,\n25150=>13390,\n64079=>13391,\n63773=>13392,\n63964=>13393,\n63798=>13394,\n28122=>13395,\n63952=>13396,\n26310=>13397,\n27511=>13398,\n64087=>13399,\n37706=>13400,\n37636=>13402,\n133390=>13523,\n35999=>13644,\n11991=>13645,\n11965=>13646,\n158033=>13646,\n37555=>13652,\n38321=>13653,\n194812=>13656,\n194965=>13670,\n194794=>13679,\n26478=>13681,\n11974=>13682,\n194594=>13684,\n156194=>13691,\n13314=>13698,\n26083=>13701,\n134071=>13706,\n171339=>13717,\n194611=>13719,\n24378=>13720,\n11945=>13729,\n20465=>13731,\n63753=>13739,\n11964=>13747,\n194732=>13750,\n26435=>13751,\n133732=>13755,\n35329=>13756,\n25142=>13757,\n21555=>13760,\n23067=>13761,\n25221=>13765,\n194819=>13768,\n21567=>13775,\n27506=>13785,\n29986=>13790,\n19256=>13791,\n24063=>13794,\n194827=>13801,\n29626=>13802,\n134047=>13803,\n194600=>13807,\n194849=>13809,\n194623=>13815,\n194675=>13832,\n11916=>13833,\n11917=>13834,\n23577=>13835,\n131083=>13839,\n23426=>13840,\n194642=>13841,\n11997=>13847,\n11999=>13848,\n39136=>13848,\n11998=>13849,\n169599=>13849,\n14221=>13850,\n11927=>13852,\n14586=>13852,\n194887=>13854,\n11909=>13856,\n20155=>13856,\n131490=>13857,\n13599=>13865,\n194738=>13867,\n11971=>13870,\n35200=>13870,\n31237=>13875,\n35498=>13880,\n32085=>13882,\n28568=>13884,\n25591=>13892,\n30246=>13893,\n11978=>13898,\n163767=>13898,\n146686=>13904,\n13351=>13910,\n33067=>13913,\n194842=>13916,\n11950=>13922,\n154327=>13922,\n194714=>13928,\n194831=>13932,\n22305=>13952,\n135741=>13953,\n194586=>13954,\n64003=>13956,\n21534=>13964,\n15240=>13965,\n20839=>13966,\n63839=>13971,\n20023=>13981,\n11946=>13995,\n150804=>13995,\n24421=>13996,\n23020=>13997,\n194658=>13998,\n24217=>14000,\n13416=>14047,\n40884=>14048,\n21200=>14056,\n38376=>14061,\n26625=>14066,\n195024=>14068,\n195039=>14069,\n153215=>14075,\n11959=>14078,\n36534=>14083,\n63775=>14084,\n63875=>14088,\n31867=>14094,\n63906=>14095,\n63898=>14097,\n11961=>14099,\n32770=>14099,\n157360=>14100,\n11911=>14105,\n132648=>14105,\n131210=>14108,\n133508=>14109,\n194604=>14109,\n11915=>14110,\n13630=>14110,\n21589=>14115,\n22841=>14117,\n23414=>14120,\n194669=>14121,\n23572=>14122,\n14306=>14123,\n23782=>14124,\n20040=>14126,\n194742=>14129,\n158105=>14134,\n25371=>14135,\n26211=>14138,\n194779=>14140,\n27126=>14143,\n27014=>14144,\n27596=>14148,\n28183=>14150,\n27818=>14153,\n11942=>14157,\n20012=>14157,\n29935=>14160,\n30069=>14161,\n30188=>14162,\n30286=>14163,\n16305=>14164,\n30570=>14165,\n30633=>14166,\n31571=>14173,\n16996=>14176,\n194924=>14180,\n32328=>14183,\n132415=>14188,\n11955=>14189,\n156266=>14189,\n33089=>14194,\n17491=>14195,\n33401=>14197,\n11966=>14197,\n64094=>14198,\n11967=>14198,\n64093=>14199,\n11968=>14199,\n20857=>14201,\n33626=>14202,\n17701=>14206,\n34292=>14208,\n131248=>14209,\n34429=>14214,\n13358=>14216,\n35014=>14217,\n18406=>14224,\n36808=>14233,\n166279=>14253,\n167447=>14256,\n38969=>14259,\n39432=>14266,\n39903=>14271,\n148206=>14282,\n21385=>14288,\n64017=>14290,\n194785=>14291,\n146622=>14293,\n132625=>14294,\n19972=>14296,\n19973=>14297,\n19999=>14298,\n20011=>14299,\n20015=>14300,\n20016=>14301,\n20032=>14302,\n20033=>14303,\n20036=>14304,\n11907=>14305,\n20058=>14305,\n20095=>14306,\n20109=>14307,\n20118=>14308,\n20153=>14309,\n20176=>14310,\n20192=>14311,\n20221=>14312,\n20223=>14313,\n20235=>14314,\n20245=>14315,\n20320=>14316,\n20283=>14317,\n20297=>14318,\n20308=>14319,\n20346=>14320,\n20349=>14321,\n20350=>14322,\n20375=>14323,\n20414=>14324,\n20431=>14325,\n20477=>14326,\n20480=>14327,\n20481=>14328,\n20496=>14329,\n20507=>14330,\n20519=>14331,\n20526=>14332,\n20567=>14333,\n20582=>14334,\n20586=>14335,\n20539=>14336,\n20623=>14337,\n20630=>14338,\n20636=>14339,\n20684=>14340,\n20710=>14341,\n20713=>14342,\n20719=>14343,\n20744=>14344,\n20747=>14345,\n20752=>14346,\n20763=>14347,\n20766=>14348,\n20831=>14349,\n20897=>14350,\n20924=>14351,\n20974=>14353,\n20980=>14354,\n20993=>14355,\n11913=>14356,\n20994=>14356,\n21011=>14357,\n21065=>14358,\n21089=>14359,\n21094=>14360,\n21139=>14361,\n21192=>14362,\n21232=>14363,\n21258=>14364,\n21259=>14365,\n21310=>14366,\n21324=>14367,\n21323=>14368,\n21345=>14369,\n21356=>14370,\n21419=>14371,\n21466=>14372,\n21478=>14373,\n21493=>14374,\n21543=>14375,\n21581=>14376,\n21606=>14377,\n21611=>14378,\n21620=>14379,\n21645=>14380,\n21654=>14381,\n21665=>14382,\n21677=>14383,\n21689=>14384,\n21695=>14385,\n21702=>14386,\n21709=>14387,\n21774=>14388,\n21803=>14389,\n21813=>14390,\n21834=>14391,\n21856=>14392,\n21896=>14394,\n21902=>14395,\n22024=>14396,\n22030=>14397,\n22031=>14398,\n22071=>14399,\n22079=>14400,\n22089=>14401,\n22091=>14402,\n22095=>14403,\n22118=>14404,\n22121=>14405,\n22127=>14406,\n22129=>14407,\n22130=>14408,\n22165=>14409,\n22170=>14410,\n22188=>14411,\n22189=>14412,\n22193=>14413,\n22217=>14414,\n22237=>14415,\n22244=>14416,\n22282=>14417,\n22293=>14418,\n22307=>14419,\n22319=>14420,\n22323=>14421,\n22324=>14422,\n22348=>14423,\n22384=>14424,\n22412=>14425,\n22428=>14426,\n22456=>14427,\n22502=>14428,\n22509=>14429,\n22517=>14430,\n22518=>14431,\n22527=>14432,\n22537=>14433,\n22560=>14434,\n22578=>14435,\n22652=>14436,\n22656=>14437,\n22697=>14438,\n22734=>14439,\n22736=>14440,\n22740=>14441,\n22746=>14442,\n22761=>14443,\n22796=>14444,\n22820=>14445,\n22831=>14446,\n22881=>14447,\n22893=>14448,\n22986=>14449,\n22994=>14450,\n23005=>14451,\n23011=>14452,\n23012=>14453,\n23044=>14454,\n23052=>14455,\n23075=>14456,\n23111=>14457,\n23125=>14458,\n23139=>14459,\n23149=>14460,\n23166=>14461,\n23198=>14462,\n23207=>14463,\n23212=>14464,\n23219=>14465,\n23264=>14466,\n23296=>14467,\n23321=>14468,\n23333=>14469,\n23341=>14470,\n23361=>14471,\n23420=>14472,\n23422=>14473,\n23423=>14474,\n23434=>14475,\n11919=>14476,\n23587=>14476,\n23595=>14477,\n23600=>14478,\n23651=>14479,\n23657=>14480,\n23676=>14481,\n23755=>14482,\n23762=>14483,\n23796=>14484,\n23844=>14485,\n23846=>14486,\n23875=>14487,\n23878=>14488,\n23882=>14489,\n23954=>14490,\n23956=>14491,\n23961=>14492,\n23968=>14493,\n24024=>14494,\n24032=>14495,\n24056=>14496,\n24064=>14497,\n24082=>14498,\n24084=>14499,\n24085=>14500,\n24088=>14501,\n24110=>14502,\n24152=>14503,\n24171=>14504,\n24172=>14505,\n24232=>14506,\n24234=>14507,\n24254=>14508,\n24255=>14509,\n24274=>14511,\n24327=>14512,\n24334=>14513,\n24348=>14514,\n24349=>14515,\n24354=>14516,\n24360=>14517,\n24374=>14518,\n24379=>14519,\n24384=>14520,\n12089=>14521,\n24400=>14521,\n24408=>14522,\n24420=>14523,\n24457=>14524,\n24476=>14525,\n24487=>14526,\n24484=>14527,\n24495=>14528,\n24504=>14529,\n11926=>14530,\n24516=>14530,\n24521=>14531,\n24545=>14532,\n24553=>14533,\n24557=>14534,\n24572=>14535,\n24599=>14536,\n24602=>14537,\n24627=>14538,\n24673=>14539,\n24703=>14540,\n24734=>14541,\n24740=>14542,\n24752=>14543,\n24779=>14544,\n24795=>14545,\n24824=>14546,\n24850=>14547,\n24851=>14548,\n24852=>14549,\n24860=>14550,\n24956=>14551,\n24973=>14552,\n24991=>14553,\n25000=>14554,\n25026=>14555,\n25055=>14556,\n25109=>14557,\n25129=>14558,\n25155=>14559,\n25158=>14560,\n11928=>14561,\n25164=>14561,\n25169=>14562,\n25174=>14563,\n25284=>14564,\n25340=>14565,\n25354=>14566,\n25357=>14567,\n25368=>14568,\n25401=>14569,\n25410=>14570,\n25411=>14571,\n25445=>14572,\n25460=>14573,\n25469=>14574,\n25476=>14575,\n25479=>14576,\n25488=>14577,\n25502=>14578,\n25553=>14579,\n25564=>14580,\n25609=>14581,\n25616=>14582,\n25634=>14583,\n25684=>14584,\n25691=>14585,\n25709=>14586,\n25723=>14587,\n25790=>14588,\n25791=>14589,\n25829=>14590,\n25847=>14591,\n25851=>14592,\n25860=>14593,\n25878=>14594,\n25881=>14595,\n25927=>14596,\n25959=>14597,\n25985=>14598,\n25989=>14599,\n26050=>14600,\n26096=>14601,\n26098=>14602,\n26156=>14603,\n26188=>14604,\n26203=>14605,\n26204=>14606,\n26209=>14607,\n26219=>14608,\n26276=>14610,\n26312=>14611,\n26348=>14612,\n26373=>14613,\n26387=>14614,\n26419=>14615,\n26440=>14616,\n26444=>14617,\n26486=>14618,\n26491=>14619,\n26544=>14620,\n26546=>14621,\n26617=>14622,\n26583=>14623,\n26585=>14624,\n26608=>14625,\n26668=>14626,\n26672=>14627,\n26673=>14628,\n26715=>14629,\n26738=>14630,\n26741=>14631,\n26746=>14632,\n26756=>14633,\n26789=>14634,\n26802=>14635,\n26832=>14636,\n26838=>14637,\n26856=>14638,\n26861=>14639,\n26864=>14640,\n26865=>14641,\n26876=>14642,\n26897=>14643,\n26899=>14644,\n26933=>14645,\n26939=>14646,\n26967=>14647,\n26979=>14648,\n26994=>14649,\n27007=>14650,\n27008=>14651,\n27046=>14652,\n27053=>14653,\n27063=>14654,\n27094=>14655,\n27095=>14656,\n27137=>14657,\n27151=>14658,\n27157=>14659,\n27176=>14660,\n27188=>14661,\n27198=>14662,\n27205=>14663,\n27216=>14664,\n27217=>14665,\n27222=>14666,\n27227=>14667,\n27267=>14668,\n27273=>14669,\n27281=>14670,\n27293=>14671,\n27294=>14672,\n27295=>14673,\n27356=>14674,\n27367=>14675,\n27372=>14676,\n27422=>14677,\n27428=>14678,\n27445=>14679,\n27462=>14680,\n27478=>14681,\n27488=>14682,\n27522=>14683,\n27582=>14684,\n27617=>14685,\n27633=>14686,\n27664=>14687,\n27699=>14688,\n27701=>14689,\n11937=>14689,\n11938=>14690,\n27737=>14691,\n27766=>14692,\n27771=>14693,\n27781=>14694,\n27797=>14695,\n27804=>14696,\n27856=>14697,\n27860=>14698,\n27862=>14699,\n27872=>14700,\n27883=>14701,\n27884=>14702,\n27886=>14703,\n27914=>14704,\n27918=>14705,\n27921=>14706,\n27950=>14707,\n27991=>14708,\n27998=>14709,\n28005=>14710,\n28034=>14711,\n28095=>14712,\n28100=>14713,\n28106=>14714,\n28118=>14715,\n28137=>14716,\n28194=>14717,\n28241=>14718,\n28359=>14719,\n28362=>14720,\n28366=>14721,\n28413=>14722,\n28442=>14723,\n28458=>14724,\n28463=>14725,\n28467=>14726,\n28506=>14727,\n28510=>14728,\n28514=>14729,\n28541=>14730,\n28555=>14731,\n28557=>14732,\n28562=>14733,\n28564=>14734,\n28570=>14735,\n28583=>14736,\n28584=>14737,\n28598=>14738,\n28634=>14739,\n28638=>14740,\n28729=>14742,\n28732=>14743,\n28756=>14745,\n28765=>14746,\n28766=>14747,\n28772=>14748,\n11939=>14749,\n28780=>14749,\n28798=>14750,\n28801=>14751,\n28821=>14752,\n28855=>14753,\n28883=>14754,\n28884=>14755,\n28888=>14756,\n28892=>14757,\n28935=>14758,\n28960=>14759,\n28977=>14760,\n29002=>14761,\n29010=>14762,\n29024=>14763,\n29049=>14764,\n29074=>14765,\n29131=>14767,\n29139=>14768,\n29142=>14769,\n29184=>14770,\n29213=>14771,\n29227=>14772,\n29240=>14773,\n29249=>14774,\n29267=>14775,\n29269=>14776,\n29270=>14777,\n29276=>14778,\n29325=>14779,\n11944=>14780,\n29357=>14780,\n29364=>14781,\n29383=>14782,\n29435=>14783,\n29444=>14784,\n29445=>14785,\n29480=>14786,\n29489=>14787,\n29507=>14788,\n29548=>14789,\n29564=>14790,\n29571=>14791,\n29573=>14792,\n29574=>14793,\n29589=>14794,\n29598=>14795,\n29599=>14796,\n29600=>14797,\n29606=>14798,\n29611=>14799,\n29621=>14800,\n29623=>14801,\n29628=>14802,\n29647=>14803,\n29657=>14804,\n29673=>14805,\n29684=>14806,\n29693=>14807,\n29700=>14808,\n29706=>14809,\n29722=>14810,\n29723=>14811,\n29732=>14812,\n29736=>14813,\n29740=>14814,\n29743=>14815,\n29744=>14816,\n29745=>14817,\n29753=>14818,\n29764=>14819,\n29767=>14820,\n29771=>14821,\n29773=>14822,\n29777=>14823,\n29783=>14824,\n29798=>14825,\n29803=>14826,\n29809=>14827,\n29824=>14828,\n29829=>14829,\n29830=>14830,\n29831=>14831,\n29840=>14832,\n29848=>14833,\n29852=>14834,\n29856=>14835,\n29859=>14836,\n29864=>14837,\n29867=>14838,\n29877=>14839,\n29887=>14840,\n29896=>14841,\n29914=>14842,\n29918=>14843,\n30030=>14844,\n30073=>14845,\n30081=>14846,\n30096=>14847,\n12135=>14848,\n30098=>14848,\n30099=>14849,\n30132=>14850,\n30180=>14851,\n30201=>14852,\n30208=>14853,\n30218=>14854,\n30229=>14855,\n30230=>14856,\n30233=>14857,\n30238=>14858,\n30253=>14859,\n30261=>14860,\n30275=>14861,\n30283=>14862,\n30309=>14863,\n30317=>14864,\n30319=>14865,\n30321=>14866,\n30324=>14867,\n30372=>14868,\n30373=>14869,\n30405=>14870,\n30412=>14871,\n30444=>14872,\n30460=>14873,\n30516=>14874,\n30518=>14875,\n30556=>14876,\n30559=>14877,\n30560=>14878,\n30578=>14879,\n30589=>14880,\n30613=>14881,\n30634=>14882,\n30694=>14883,\n30704=>14884,\n30708=>14885,\n30726=>14886,\n30754=>14887,\n30765=>14888,\n30766=>14889,\n30768=>14890,\n30773=>14891,\n30824=>14892,\n30878=>14893,\n30920=>14894,\n30924=>14895,\n30926=>14896,\n30948=>14897,\n30944=>14898,\n30945=>14899,\n30962=>14900,\n30967=>14901,\n30971=>14902,\n31025=>14903,\n11949=>14905,\n31035=>14905,\n31037=>14906,\n31045=>14907,\n31067=>14908,\n31068=>14909,\n31115=>14910,\n31126=>14911,\n31128=>14912,\n12145=>14913,\n31160=>14913,\n31163=>14914,\n31178=>14915,\n31194=>14916,\n31235=>14917,\n31241=>14918,\n31249=>14919,\n31262=>14920,\n31277=>14921,\n31289=>14922,\n31301=>14923,\n31308=>14924,\n31325=>14925,\n31341=>14927,\n31352=>14928,\n31392=>14929,\n31395=>14930,\n31411=>14931,\n31419=>14932,\n31420=>14933,\n31430=>14934,\n31495=>14935,\n31508=>14936,\n31527=>14937,\n31537=>14938,\n31559=>14939,\n31566=>14940,\n31584=>14941,\n31593=>14942,\n31597=>14943,\n31602=>14944,\n31633=>14945,\n31663=>14946,\n31703=>14947,\n31705=>14948,\n31755=>14949,\n31759=>14950,\n31776=>14951,\n31782=>14952,\n31793=>14953,\n31798=>14954,\n31825=>14955,\n31833=>14956,\n31847=>14957,\n31854=>14958,\n31856=>14959,\n31932=>14960,\n31935=>14961,\n31944=>14962,\n31945=>14963,\n31959=>14964,\n31961=>14965,\n31965=>14966,\n31979=>14967,\n32007=>14968,\n32008=>14969,\n32009=>14970,\n32019=>14971,\n32029=>14972,\n32035=>14973,\n32065=>14974,\n32083=>14975,\n32089=>14976,\n32093=>14977,\n32122=>14978,\n32134=>14979,\n32139=>14980,\n32140=>14981,\n32204=>14982,\n32235=>14983,\n32241=>14984,\n32249=>14985,\n32264=>14986,\n32273=>14987,\n32277=>14988,\n32288=>14989,\n32327=>14990,\n32354=>14991,\n32366=>14992,\n32371=>14993,\n32397=>14994,\n32401=>14995,\n32408=>14996,\n32580=>14997,\n32591=>14998,\n11947=>14999,\n11954=>14999,\n32594=>14999,\n11953=>15000,\n32595=>15000,\n32609=>15001,\n32657=>15002,\n32703=>15003,\n32718=>15004,\n32735=>15005,\n32741=>15006,\n32748=>15007,\n32750=>15008,\n32751=>15009,\n32762=>15010,\n32782=>15011,\n32785=>15012,\n32788=>15013,\n32804=>15014,\n32806=>15015,\n32826=>15016,\n32828=>15017,\n32864=>15018,\n32881=>15019,\n32885=>15020,\n32926=>15021,\n32934=>15022,\n32939=>15023,\n32983=>15024,\n32984=>15025,\n33046=>15026,\n33048=>15027,\n33082=>15028,\n33098=>15029,\n33100=>15030,\n33153=>15031,\n33156=>15032,\n33204=>15033,\n33231=>15034,\n33273=>15035,\n33283=>15036,\n33313=>15037,\n33330=>15038,\n33332=>15039,\n33350=>15040,\n33355=>15041,\n33359=>15042,\n33422=>15043,\n33454=>15044,\n33463=>15045,\n33470=>15046,\n33478=>15047,\n33534=>15048,\n33603=>15049,\n33617=>15050,\n33621=>15051,\n33670=>15052,\n33677=>15053,\n33682=>15054,\n33688=>15055,\n33705=>15056,\n33727=>15057,\n33728=>15058,\n33770=>15059,\n33807=>15060,\n33809=>15061,\n33866=>15062,\n33910=>15063,\n33960=>15064,\n33967=>15065,\n33984=>15066,\n33986=>15067,\n34032=>15068,\n34045=>15069,\n34060=>15070,\n34100=>15071,\n34142=>15072,\n34191=>15073,\n34231=>15074,\n34254=>15075,\n34221=>15076,\n34322=>15077,\n34345=>15078,\n34386=>15079,\n34403=>15080,\n34412=>15081,\n34415=>15082,\n34426=>15083,\n34445=>15084,\n34449=>15085,\n34456=>15086,\n34471=>15087,\n34472=>15088,\n34554=>15089,\n34557=>15090,\n34571=>15091,\n34579=>15092,\n34585=>15093,\n34590=>15094,\n34600=>15095,\n34622=>15096,\n34673=>15097,\n34696=>15098,\n34713=>15099,\n34732=>15100,\n34733=>15101,\n34741=>15102,\n34774=>15103,\n34795=>15104,\n34797=>15105,\n34817=>15106,\n34822=>15108,\n34827=>15109,\n34836=>15110,\n34844=>15111,\n34902=>15112,\n34911=>15113,\n11970=>15114,\n34916=>15114,\n34968=>15115,\n34986=>15116,\n35005=>15117,\n35006=>15118,\n35018=>15119,\n35026=>15120,\n35035=>15121,\n35056=>15122,\n35057=>15123,\n35078=>15124,\n35096=>15125,\n35097=>15126,\n35098=>15127,\n35111=>15128,\n35120=>15129,\n35134=>15130,\n35195=>15131,\n35284=>15132,\n35286=>15133,\n35301=>15134,\n35313=>15135,\n35335=>15136,\n35343=>15137,\n35349=>15138,\n35362=>15139,\n35406=>15140,\n35455=>15141,\n35572=>15142,\n35615=>15143,\n35639=>15144,\n35651=>15145,\n35652=>15146,\n35668=>15147,\n35740=>15148,\n35742=>15149,\n35911=>15150,\n35924=>15151,\n35955=>15152,\n36004=>15153,\n36057=>15154,\n36065=>15155,\n36088=>15156,\n36094=>15157,\n36123=>15158,\n36201=>15159,\n36204=>15160,\n36228=>15161,\n36237=>15162,\n36245=>15163,\n36262=>15164,\n36294=>15165,\n36302=>15166,\n36324=>15167,\n36332=>15168,\n36384=>15169,\n36427=>15170,\n36460=>15171,\n36464=>15172,\n36474=>15173,\n36498=>15174,\n36526=>15175,\n36531=>15176,\n36561=>15177,\n36564=>15178,\n36601=>15179,\n36631=>15180,\n36662=>15181,\n36774=>15182,\n12193=>15183,\n36789=>15183,\n11981=>15184,\n36790=>15184,\n36832=>15186,\n36836=>15187,\n36854=>15188,\n36866=>15189,\n36908=>15190,\n36932=>15191,\n37000=>15192,\n37013=>15193,\n37017=>15194,\n37019=>15195,\n37026=>15196,\n37044=>15197,\n37079=>15198,\n37085=>15199,\n37108=>15200,\n37143=>15201,\n37148=>15202,\n37169=>15203,\n37178=>15204,\n37181=>15205,\n37192=>15206,\n37211=>15207,\n37217=>15208,\n37220=>15209,\n37262=>15210,\n37278=>15211,\n37288=>15212,\n37293=>15213,\n37294=>15214,\n37298=>15215,\n37308=>15216,\n37360=>15217,\n37367=>15218,\n37371=>15219,\n37383=>15220,\n37416=>15221,\n37427=>15222,\n37432=>15223,\n37443=>15224,\n37447=>15225,\n37455=>15226,\n37472=>15227,\n37570=>15228,\n37579=>15229,\n37580=>15230,\n37599=>15231,\n37645=>15232,\n37653=>15233,\n37663=>15234,\n37671=>15235,\n37703=>15236,\n37714=>15237,\n37738=>15239,\n37741=>15240,\n37787=>15241,\n37818=>15242,\n37801=>15243,\n37825=>15244,\n37834=>15245,\n37858=>15246,\n37882=>15247,\n37885=>15248,\n37903=>15249,\n37940=>15250,\n37951=>15251,\n37973=>15252,\n37995=>15253,\n38002=>15254,\n11986=>15255,\n38264=>15255,\n38310=>15256,\n38313=>15257,\n38324=>15259,\n38333=>15260,\n38362=>15261,\n11983=>15262,\n11990=>15262,\n38429=>15262,\n38465=>15263,\n38488=>15264,\n38532=>15265,\n38564=>15266,\n38569=>15267,\n38610=>15268,\n195060=>15269,\n38622=>15270,\n38633=>15271,\n38641=>15272,\n38658=>15273,\n38665=>15274,\n38746=>15275,\n38755=>15276,\n38766=>15277,\n38771=>15278,\n38810=>15279,\n38818=>15280,\n38837=>15281,\n38838=>15282,\n38873=>15283,\n38878=>15284,\n38900=>15285,\n38922=>15286,\n38926=>15287,\n38942=>15288,\n38947=>15289,\n38955=>15290,\n38974=>15291,\n38994=>15292,\n38995=>15293,\n39001=>15294,\n39020=>15295,\n39096=>15296,\n39098=>15297,\n39103=>15298,\n39112=>15299,\n39141=>15300,\n39218=>15301,\n39219=>15302,\n39232=>15303,\n39245=>15304,\n39260=>15305,\n39263=>15306,\n39345=>15307,\n39353=>15308,\n39354=>15309,\n39369=>15310,\n39426=>15311,\n39446=>15312,\n39460=>15313,\n39463=>15314,\n39469=>15315,\n39470=>15316,\n39478=>15317,\n39480=>15318,\n39498=>15319,\n39510=>15320,\n39605=>15321,\n39606=>15322,\n39673=>15323,\n39683=>15324,\n39712=>15325,\n39731=>15326,\n39732=>15327,\n39795=>15328,\n39801=>15329,\n39847=>15330,\n39873=>15331,\n39879=>15332,\n39895=>15333,\n39911=>15334,\n39915=>15335,\n39927=>15336,\n39930=>15337,\n39933=>15338,\n39947=>15339,\n39975=>15340,\n39978=>15341,\n39990=>15342,\n40001=>15343,\n40019=>15344,\n40035=>15345,\n40048=>15346,\n40055=>15347,\n40194=>15348,\n40258=>15349,\n40263=>15350,\n40291=>15351,\n40297=>15352,\n40316=>15353,\n40318=>15354,\n40333=>15355,\n40369=>15356,\n40387=>15357,\n40391=>15358,\n40406=>15359,\n40415=>15360,\n40427=>15361,\n40436=>15362,\n40469=>15363,\n40477=>15364,\n40612=>15365,\n40616=>15366,\n40620=>15367,\n40679=>15368,\n40686=>15369,\n40720=>15370,\n40722=>15371,\n40727=>15372,\n40729=>15373,\n40751=>15374,\n40759=>15375,\n40761=>15376,\n40769=>15377,\n40773=>15378,\n40791=>15379,\n40808=>15380,\n40817=>15381,\n40821=>15382,\n40848=>15383,\n40852=>15384,\n40866=>15385,\n13317=>15387,\n194564=>15388,\n22048=>15389,\n24267=>15390,\n11925=>15391,\n144954=>15393,\n28665=>15395,\n28390=>15396,\n29107=>15397,\n11940=>15398,\n64073=>15398,\n11980=>15403,\n64102=>15403,\n23986=>15405,\n20435=>15407,\n20697=>15408,\n20720=>15409,\n20931=>15410,\n22134=>15411,\n27220=>15412,\n27905=>15413,\n28112=>15414,\n28226=>15415,\n28377=>15416,\n29668=>15417,\n29729=>15418,\n30060=>15419,\n30801=>15420,\n34805=>15421,\n144382=>15422,\n29608=>15423,\n15091=>15424,\n13531=>15425,\n17420=>15426,\n16010=>15427,\n40893=>15429,\n19432=>15430,\n40892=>15431,\n16090=>15432,\n15138=>15433,\n40894=>15434,\n17786=>15435,\n16531=>15436,\n18021=>15438,\n16643=>15439,\n17043=>15440,\n18094=>15441,\n13448=>15442,\n140809=>15443,\n63584=>15444,\n63585=>15445,\n63586=>15446,\n63610=>15447,\n63615=>15448,\n8836=>15472,\n8837=>15473,\n8842=>15474,\n8843=>15475,\n8713=>15476,\n8965=>15478,\n8966=>15479,\n8741=>15489,\n8742=>15490,\n8802=>15505,\n8773=>15507,\n8776=>15508,\n8822=>15509,\n8823=>15510,\n8487=>15515,\n8922=>15725,\n8923=>15726,\n8533=>15727,\n8984=>15728,\n7742=>15729,\n7743=>15730,\n504=>15731,\n505=>15732,\n470=>15733,\n472=>15734,\n474=>15735,\n476=>15736,\n260=>15737,\n728=>15738,\n317=>15739,\n346=>15740,\n350=>15741,\n356=>15742,\n377=>15743,\n379=>15744,\n261=>15745,\n731=>15746,\n318=>15747,\n347=>15748,\n711=>15749,\n351=>15750,\n357=>15751,\n378=>15752,\n733=>15753,\n380=>15754,\n340=>15755,\n258=>15756,\n313=>15757,\n262=>15758,\n268=>15759,\n280=>15760,\n270=>15761,\n323=>15762,\n327=>15763,\n336=>15764,\n344=>15765,\n368=>15766,\n354=>15767,\n341=>15768,\n259=>15769,\n314=>15770,\n263=>15771,\n269=>15772,\n281=>15773,\n271=>15774,\n273=>15775,\n324=>15776,\n328=>15777,\n337=>15778,\n345=>15779,\n369=>15780,\n355=>15781,\n729=>15782,\n264=>15783,\n284=>15784,\n292=>15785,\n308=>15786,\n348=>15787,\n364=>15788,\n265=>15789,\n285=>15790,\n293=>15791,\n309=>15792,\n349=>15793,\n365=>15794,\n625=>15795,\n651=>15796,\n638=>15797,\n620=>15798,\n622=>15799,\n633=>15800,\n648=>15801,\n598=>15802,\n627=>15803,\n637=>15804,\n642=>15805,\n656=>15806,\n635=>15807,\n621=>15808,\n607=>15809,\n626=>15810,\n669=>15811,\n654=>15812,\n609=>15813,\n624=>15814,\n641=>15815,\n295=>15816,\n661=>15817,\n660=>15818,\n614=>15819,\n664=>15820,\n450=>15821,\n595=>15822,\n599=>15823,\n644=>15824,\n608=>15825,\n403=>15826,\n616=>15827,\n649=>15828,\n600=>15829,\n604=>15830,\n606=>15831,\n592=>15832,\n623=>15833,\n650=>15834,\n612=>15835,\n594=>15836,\n653=>15837,\n613=>15838,\n674=>15839,\n673=>15840,\n597=>15841,\n657=>15842,\n634=>15843,\n615=>15844,\n865=>15845,\n712=>15846,\n716=>15847,\n721=>15848,\n8255=>15849,\n783=>15850,\n741=>15851,\n742=>15852,\n743=>15853,\n744=>15854,\n745=>15855,\n805=>15858,\n812=>15859,\n825=>15860,\n796=>15861,\n799=>15862,\n800=>15863,\n829=>15864,\n809=>15865,\n815=>15866,\n734=>15867,\n804=>15868,\n816=>15869,\n828=>15870,\n820=>15871,\n797=>15872,\n798=>15873,\n792=>15874,\n793=>15875,\n810=>15876,\n826=>15877,\n827=>15878,\n794=>15879,\n610=>15883,\n611=>15884,\n618=>15885,\n628=>15886,\n630=>15887,\n632=>15888,\n640=>15889,\n655=>15890,\n665=>15891,\n668=>15892,\n671=>15893,\n688=>15894,\n690=>15895,\n695=>15896,\n705=>15897,\n736=>15898,\n737=>15899,\n8862=>15906,\n12348=>16194,\n12543=>16195,\n12310=>16197,\n12311=>16198,\n9838=>16199,\n9835=>16200,\n10548=>16201,\n10549=>16202,\n10687=>16203,\n12448=>16205,\n10746=>16207,\n10747=>16208,\n962=>16222,\n9461=>16223,\n9462=>16224,\n9463=>16225,\n9464=>16226,\n9465=>16227,\n9466=>16228,\n9467=>16229,\n9468=>16230,\n9469=>16231,\n9470=>16232,\n9750=>16233,\n9751=>16234,\n9649=>16235,\n12784=>16236,\n12785=>16237,\n12786=>16238,\n12787=>16239,\n12788=>16240,\n12789=>16241,\n12790=>16242,\n12791=>16243,\n12792=>16244,\n12793=>16245,\n12794=>16247,\n12795=>16248,\n12796=>16249,\n12797=>16250,\n12798=>16251,\n12799=>16252,\n9150=>16253,\n9151=>16254,\n9152=>16255,\n9153=>16256,\n9154=>16257,\n9155=>16258,\n9156=>16259,\n9157=>16260,\n9158=>16261,\n9159=>16262,\n9160=>16263,\n9161=>16264,\n9162=>16265,\n9163=>16266,\n9164=>16267,\n10003=>16270,\n9251=>16272,\n9166=>16273,\n9680=>16274,\n9681=>16275,\n9682=>16276,\n9683=>16277,\n8263=>16278,\n8264=>16279,\n8273=>16281,\n8258=>16282,\n12688=>16283,\n12689=>16284,\n12690=>16285,\n12691=>16286,\n12692=>16287,\n12693=>16288,\n12694=>16289,\n12695=>16290,\n12696=>16291,\n12697=>16292,\n12698=>16293,\n12699=>16294,\n12700=>16295,\n12701=>16296,\n12702=>16297,\n12703=>16298,\n9136=>16312,\n9137=>16313,\n9842=>16314,\n9843=>16315,\n9844=>16316,\n9845=>16317,\n9846=>16318,\n9847=>16319,\n9848=>16320,\n9849=>16321,\n9850=>16322,\n9851=>16323,\n9852=>16324,\n9853=>16325,\n12441=>16326,\n12442=>16327,\n8413=>16328,\n20296=>16779,\n20319=>16780,\n20330=>16781,\n20332=>16782,\n20494=>16783,\n20504=>16784,\n20545=>16785,\n20722=>16786,\n20688=>16787,\n20742=>16788,\n20739=>16789,\n20789=>16790,\n20821=>16791,\n20823=>16792,\n13493=>16793,\n20938=>16794,\n20962=>16795,\n21079=>16796,\n21196=>16797,\n21206=>16798,\n21243=>16799,\n21276=>16800,\n21347=>16801,\n21405=>16802,\n21522=>16803,\n21631=>16804,\n21640=>16805,\n21840=>16806,\n21889=>16807,\n21933=>16808,\n21966=>16809,\n22075=>16810,\n22174=>16811,\n22185=>16812,\n22195=>16813,\n22391=>16814,\n22396=>16815,\n135963=>16816,\n22479=>16817,\n22500=>16818,\n22628=>16819,\n22665=>16820,\n136302=>16821,\n22738=>16822,\n22752=>16823,\n34369=>16824,\n22923=>16825,\n22930=>16826,\n22979=>16827,\n23059=>16828,\n23143=>16829,\n23159=>16830,\n23172=>16831,\n23236=>16832,\n137405=>16833,\n23421=>16834,\n23443=>16835,\n23570=>16836,\n64060=>16837,\n136884=>16838,\n23674=>16839,\n23695=>16840,\n23711=>16841,\n23715=>16842,\n23722=>16843,\n23760=>16844,\n138804=>16845,\n23821=>16846,\n23879=>16847,\n23937=>16848,\n23972=>16849,\n23975=>16850,\n24011=>16851,\n24158=>16852,\n24313=>16853,\n24320=>16854,\n24322=>16855,\n24355=>16856,\n24381=>16857,\n24404=>16858,\n24445=>16859,\n24589=>16860,\n24596=>16861,\n24600=>16862,\n24629=>16863,\n24647=>16864,\n24733=>16865,\n24788=>16866,\n24797=>16867,\n24875=>16868,\n25020=>16869,\n25017=>16870,\n25122=>16871,\n25178=>16872,\n25199=>16873,\n25302=>16874,\n25468=>16875,\n25573=>16876,\n25721=>16877,\n25796=>16878,\n25808=>16879,\n25897=>16880,\n26013=>16881,\n26170=>16882,\n26146=>16883,\n26155=>16884,\n26160=>16885,\n26163=>16886,\n26184=>16887,\n143812=>16888,\n26231=>16889,\n26232=>16890,\n26253=>16891,\n26299=>16892,\n26331=>16893,\n26344=>16894,\n26439=>16895,\n26497=>16896,\n26515=>16897,\n26520=>16898,\n26523=>16899,\n26620=>16900,\n26653=>16901,\n26787=>16902,\n26890=>16903,\n26953=>16904,\n144836=>16905,\n26946=>16906,\n26980=>16907,\n27045=>16908,\n27087=>16909,\n15286=>16910,\n15299=>16911,\n27113=>16912,\n27125=>16913,\n145215=>16914,\n27195=>16915,\n145251=>16916,\n27284=>16917,\n27301=>16918,\n15375=>16919,\n27419=>16920,\n27436=>16921,\n27495=>16922,\n27561=>16923,\n27565=>16924,\n27607=>16925,\n27647=>16926,\n27653=>16927,\n27764=>16928,\n27800=>16929,\n27899=>16930,\n27846=>16931,\n27953=>16932,\n27961=>16933,\n27967=>16934,\n27992=>16935,\n28052=>16936,\n28074=>16937,\n28123=>16938,\n28125=>16939,\n28228=>16940,\n28254=>16941,\n28337=>16942,\n28353=>16943,\n28432=>16944,\n28505=>16945,\n28513=>16946,\n28542=>16947,\n28556=>16948,\n28576=>16949,\n28604=>16950,\n28615=>16951,\n28618=>16952,\n28656=>16953,\n28750=>16954,\n28789=>16955,\n28836=>16956,\n28900=>16957,\n28971=>16958,\n28958=>16959,\n28974=>16960,\n29009=>16961,\n29032=>16962,\n29061=>16963,\n29063=>16964,\n29114=>16965,\n29124=>16966,\n29205=>16967,\n15935=>16968,\n29339=>16969,\n149489=>16970,\n29479=>16971,\n29520=>16972,\n29542=>16973,\n29602=>16974,\n29739=>16975,\n29766=>16976,\n29794=>16977,\n29805=>16978,\n29862=>16979,\n29865=>16980,\n29897=>16981,\n29951=>16982,\n29975=>16983,\n16242=>16984,\n30158=>16985,\n30210=>16986,\n30216=>16987,\n30308=>16988,\n30337=>16989,\n30365=>16990,\n30378=>16991,\n30390=>16992,\n30414=>16993,\n30420=>16994,\n30438=>16995,\n30449=>16996,\n30474=>16997,\n30489=>16998,\n30541=>16999,\n30542=>17000,\n30586=>17001,\n30592=>17002,\n30612=>17003,\n30688=>17004,\n152718=>17005,\n30787=>17006,\n30830=>17007,\n30896=>17008,\n152846=>17009,\n30893=>17010,\n30976=>17011,\n31004=>17012,\n31022=>17013,\n31028=>17014,\n31046=>17015,\n31097=>17016,\n31176=>17017,\n153457=>17018,\n31188=>17019,\n31198=>17020,\n31211=>17021,\n31213=>17022,\n31365=>17023,\n154052=>17024,\n31438=>17025,\n31485=>17026,\n31506=>17027,\n31533=>17028,\n31547=>17029,\n31599=>17030,\n31745=>17031,\n31795=>17032,\n155041=>17033,\n31853=>17034,\n31865=>17035,\n31887=>17036,\n31892=>17037,\n31904=>17038,\n31957=>17039,\n32049=>17040,\n32092=>17041,\n32131=>17042,\n32166=>17043,\n32194=>17044,\n32296=>17045,\n32663=>17046,\n32731=>17047,\n32821=>17048,\n32823=>17049,\n32970=>17050,\n32992=>17051,\n33011=>17052,\n33120=>17053,\n33127=>17054,\n33128=>17055,\n33133=>17056,\n33211=>17057,\n33226=>17058,\n33239=>17059,\n17499=>17060,\n33376=>17061,\n33396=>17062,\n158463=>17063,\n33441=>17064,\n33443=>17065,\n33444=>17066,\n33449=>17067,\n33471=>17068,\n33493=>17069,\n33533=>17070,\n33536=>17071,\n33570=>17072,\n33581=>17073,\n33594=>17074,\n33607=>17075,\n33661=>17076,\n33703=>17077,\n33743=>17078,\n33745=>17079,\n33761=>17080,\n33793=>17081,\n33798=>17082,\n33887=>17083,\n33904=>17084,\n33907=>17085,\n33925=>17086,\n33950=>17087,\n33978=>17088,\n159296=>17089,\n34098=>17090,\n34078=>17091,\n34095=>17092,\n34148=>17093,\n34170=>17094,\n34188=>17095,\n34210=>17096,\n34251=>17097,\n34285=>17098,\n34303=>17099,\n34308=>17100,\n34309=>17101,\n34320=>17102,\n159988=>17103,\n34328=>17104,\n34360=>17105,\n34391=>17106,\n34402=>17107,\n17821=>17108,\n34421=>17109,\n34488=>17110,\n34556=>17111,\n34695=>17112,\n17898=>17113,\n34826=>17114,\n34832=>17115,\n35022=>17116,\n161412=>17117,\n35122=>17118,\n35129=>17119,\n35136=>17120,\n35220=>17121,\n35318=>17122,\n35399=>17123,\n35421=>17124,\n35425=>17125,\n35445=>17126,\n35536=>17127,\n35654=>17128,\n35673=>17129,\n35689=>17130,\n35741=>17131,\n35913=>17132,\n35944=>17133,\n36271=>17134,\n36305=>17135,\n36311=>17136,\n36387=>17137,\n36413=>17138,\n36475=>17139,\n164471=>17140,\n18500=>17141,\n36602=>17142,\n36638=>17143,\n36653=>17144,\n36692=>17145,\n164813=>17146,\n36840=>17147,\n36846=>17148,\n36872=>17149,\n36909=>17150,\n37015=>17151,\n37043=>17152,\n37054=>17153,\n37060=>17154,\n37061=>17155,\n37063=>17156,\n37103=>17157,\n37140=>17158,\n37142=>17159,\n37154=>17160,\n37155=>17161,\n37167=>17162,\n37172=>17163,\n37251=>17164,\n37361=>17165,\n37705=>17166,\n37732=>17167,\n37733=>17168,\n37795=>17169,\n37855=>17170,\n37892=>17171,\n37939=>17172,\n37962=>17173,\n37987=>17174,\n38001=>17175,\n38286=>17176,\n38303=>17177,\n38316=>17178,\n38326=>17179,\n38347=>17180,\n38352=>17181,\n38355=>17182,\n18864=>17183,\n38366=>17184,\n38565=>17185,\n38639=>17186,\n38734=>17187,\n38805=>17188,\n38830=>17189,\n38842=>17190,\n38849=>17191,\n38857=>17192,\n38875=>17193,\n38998=>17194,\n39143=>17195,\n39256=>17196,\n39427=>17197,\n39617=>17198,\n39619=>17199,\n39630=>17200,\n39638=>17201,\n39682=>17202,\n39688=>17203,\n19479=>17204,\n39725=>17205,\n39774=>17206,\n39782=>17207,\n39812=>17208,\n39818=>17209,\n39838=>17210,\n39886=>17211,\n39909=>17212,\n39928=>17213,\n39971=>17214,\n40015=>17215,\n40016=>17216,\n40037=>17217,\n40221=>17218,\n40222=>17219,\n40259=>17220,\n40274=>17221,\n40330=>17222,\n40342=>17223,\n40384=>17224,\n40364=>17225,\n40380=>17226,\n172432=>17227,\n40423=>17228,\n40455=>17229,\n40606=>17230,\n40623=>17231,\n40855=>17232,\n131209=>17233,\n19970=>17234,\n19983=>17235,\n19986=>17236,\n20009=>17237,\n20014=>17238,\n20039=>17239,\n131234=>17240,\n20049=>17241,\n13318=>17242,\n131236=>17243,\n20073=>17244,\n20125=>17245,\n13356=>17246,\n20156=>17247,\n20163=>17248,\n20168=>17249,\n20203=>17250,\n20186=>17251,\n20209=>17252,\n20213=>17253,\n20246=>17254,\n20324=>17255,\n20279=>17256,\n20286=>17257,\n20312=>17258,\n131603=>17259,\n20343=>17260,\n20344=>17261,\n20354=>17262,\n20357=>17263,\n20454=>17264,\n20402=>17265,\n20421=>17266,\n20427=>17267,\n20434=>17268,\n13418=>17269,\n20466=>17270,\n20499=>17271,\n20508=>17272,\n20558=>17273,\n20563=>17274,\n20579=>17275,\n20643=>17276,\n20616=>17277,\n20626=>17278,\n20627=>17279,\n20629=>17280,\n20650=>17281,\n131883=>17282,\n20657=>17283,\n20666=>17284,\n20667=>17285,\n20676=>17286,\n20679=>17287,\n20723=>17288,\n131969=>17289,\n20686=>17290,\n131953=>17291,\n20692=>17292,\n20705=>17293,\n13458=>17294,\n132089=>17295,\n20759=>17296,\n132170=>17297,\n20832=>17298,\n132361=>17299,\n20851=>17300,\n20867=>17301,\n20875=>17302,\n13500=>17303,\n20888=>17304,\n20899=>17305,\n20909=>17306,\n13511=>17307,\n132566=>17308,\n20979=>17309,\n21010=>17310,\n21014=>17311,\n132943=>17312,\n21077=>17313,\n21084=>17314,\n21100=>17315,\n21111=>17316,\n21124=>17317,\n21122=>17318,\n133127=>17319,\n21144=>17320,\n133178=>17321,\n21156=>17322,\n21178=>17323,\n21179=>17324,\n21194=>17325,\n21201=>17326,\n133305=>17327,\n21239=>17328,\n21301=>17329,\n21314=>17330,\n133500=>17331,\n133533=>17332,\n21351=>17333,\n21370=>17334,\n21412=>17335,\n21428=>17336,\n133843=>17337,\n21431=>17338,\n21440=>17339,\n133917=>17340,\n13661=>17341,\n13662=>17342,\n21461=>17343,\n13667=>17344,\n21492=>17345,\n21540=>17346,\n21544=>17347,\n13678=>17348,\n21571=>17349,\n21602=>17350,\n21612=>17351,\n21653=>17352,\n21664=>17353,\n21670=>17354,\n21678=>17355,\n21687=>17356,\n21690=>17357,\n21699=>17358,\n134469=>17359,\n21740=>17360,\n21743=>17361,\n21745=>17362,\n21747=>17363,\n21760=>17364,\n21761=>17365,\n21769=>17366,\n21820=>17367,\n21825=>17368,\n13734=>17369,\n21831=>17370,\n13736=>17371,\n21860=>17372,\n134625=>17373,\n21885=>17374,\n21890=>17375,\n21905=>17376,\n13765=>17377,\n21970=>17378,\n134805=>17379,\n134765=>17380,\n21951=>17381,\n21961=>17382,\n21964=>17383,\n21969=>17384,\n21981=>17385,\n13786=>17386,\n21986=>17387,\n134756=>17388,\n21993=>17389,\n22056=>17390,\n135007=>17391,\n22023=>17392,\n22032=>17393,\n22064=>17394,\n13812=>17395,\n22077=>17396,\n22080=>17397,\n22087=>17398,\n22110=>17399,\n22112=>17400,\n22125=>17401,\n13829=>17402,\n22152=>17403,\n22156=>17404,\n22173=>17405,\n22184=>17406,\n22194=>17407,\n22213=>17408,\n22221=>17409,\n22239=>17410,\n22248=>17411,\n22262=>17412,\n22263=>17413,\n135681=>17414,\n135765=>17415,\n22313=>17416,\n135803=>17417,\n22341=>17418,\n22342=>17419,\n22349=>17420,\n135796=>17421,\n22376=>17422,\n22383=>17423,\n22387=>17424,\n22388=>17425,\n22389=>17426,\n22395=>17427,\n135908=>17428,\n135895=>17429,\n22426=>17430,\n22429=>17431,\n22430=>17432,\n22440=>17433,\n22487=>17434,\n135933=>17435,\n22476=>17436,\n135990=>17437,\n136004=>17438,\n22494=>17439,\n22512=>17440,\n13898=>17441,\n22520=>17442,\n22523=>17443,\n22525=>17444,\n22532=>17445,\n22558=>17446,\n22567=>17447,\n22585=>17448,\n136132=>17449,\n22601=>17450,\n22604=>17451,\n22631=>17452,\n22666=>17453,\n22667=>17454,\n22669=>17455,\n22671=>17456,\n22672=>17457,\n22676=>17458,\n22685=>17459,\n22698=>17460,\n22705=>17461,\n136301=>17462,\n22723=>17463,\n22733=>17464,\n22754=>17465,\n22771=>17466,\n22772=>17467,\n22789=>17468,\n22790=>17469,\n22797=>17470,\n22804=>17471,\n136663=>17472,\n13969=>17473,\n22845=>17474,\n13977=>17475,\n22854=>17476,\n13974=>17477,\n158761=>17478,\n22879=>17479,\n136775=>17480,\n22901=>17481,\n22902=>17482,\n22908=>17483,\n22943=>17484,\n22958=>17485,\n22972=>17486,\n22984=>17487,\n22989=>17488,\n23006=>17489,\n23015=>17490,\n23022=>17491,\n136966=>17492,\n137026=>17493,\n14031=>17494,\n23053=>17495,\n23063=>17496,\n23079=>17497,\n23085=>17498,\n23141=>17499,\n23162=>17500,\n23179=>17501,\n23196=>17502,\n23199=>17503,\n23200=>17504,\n23202=>17505,\n23217=>17506,\n23221=>17507,\n23226=>17508,\n23231=>17509,\n23258=>17510,\n23260=>17511,\n23269=>17512,\n23280=>17513,\n23278=>17514,\n23285=>17515,\n23304=>17516,\n23319=>17517,\n23348=>17518,\n23372=>17519,\n23378=>17520,\n23400=>17521,\n23407=>17522,\n23425=>17523,\n23428=>17524,\n137667=>17525,\n23446=>17526,\n23468=>17527,\n14177=>17528,\n14178=>17529,\n23502=>17530,\n23510=>17531,\n14188=>17532,\n14187=>17533,\n23537=>17534,\n23549=>17535,\n14197=>17536,\n23555=>17537,\n23593=>17538,\n138326=>17539,\n23647=>17540,\n23655=>17541,\n23656=>17542,\n23664=>17543,\n138541=>17544,\n138565=>17545,\n138616=>17546,\n138594=>17547,\n23688=>17548,\n23690=>17549,\n14273=>17550,\n138657=>17551,\n138652=>17552,\n23712=>17553,\n23714=>17554,\n23719=>17555,\n138642=>17556,\n23725=>17557,\n23733=>17558,\n138679=>17559,\n23753=>17560,\n138720=>17561,\n138803=>17562,\n23814=>17563,\n23824=>17564,\n23851=>17565,\n23837=>17566,\n23840=>17567,\n23857=>17568,\n23865=>17569,\n14312=>17570,\n23905=>17571,\n23914=>17572,\n14324=>17573,\n23920=>17574,\n139038=>17575,\n14333=>17576,\n23944=>17577,\n14336=>17578,\n23959=>17579,\n23984=>17580,\n23988=>17581,\n139126=>17582,\n24017=>17583,\n24023=>17584,\n139258=>17585,\n24036=>17586,\n24041=>17587,\n14383=>17588,\n14390=>17589,\n14400=>17590,\n24095=>17591,\n24126=>17592,\n24137=>17593,\n14428=>17594,\n24150=>17595,\n14433=>17596,\n24173=>17597,\n24174=>17598,\n139643=>17599,\n24229=>17600,\n24236=>17601,\n24249=>17602,\n24262=>17603,\n24281=>17604,\n140062=>17605,\n24317=>17606,\n24328=>17607,\n140205=>17608,\n24350=>17609,\n24391=>17610,\n24419=>17611,\n24434=>17612,\n24446=>17613,\n24463=>17614,\n24482=>17615,\n24519=>17616,\n24523=>17617,\n24530=>17618,\n24531=>17619,\n24532=>17620,\n24546=>17621,\n24558=>17622,\n24559=>17623,\n24563=>17624,\n14615=>17625,\n24610=>17626,\n24612=>17627,\n14618=>17628,\n24652=>17629,\n24725=>17630,\n24744=>17631,\n141043=>17632,\n24753=>17633,\n24766=>17634,\n24776=>17635,\n24793=>17636,\n24814=>17637,\n24821=>17638,\n24848=>17639,\n24857=>17640,\n24862=>17641,\n24890=>17642,\n14703=>17643,\n24897=>17644,\n24902=>17645,\n24928=>17646,\n141403=>17647,\n24978=>17648,\n24979=>17649,\n24983=>17650,\n24997=>17651,\n25005=>17652,\n141483=>17653,\n25045=>17654,\n25053=>17655,\n25077=>17656,\n141711=>17657,\n25123=>17658,\n25170=>17659,\n25185=>17660,\n25188=>17661,\n25211=>17662,\n25197=>17663,\n25203=>17664,\n25241=>17665,\n25301=>17666,\n142008=>17667,\n25341=>17668,\n25347=>17669,\n25360=>17670,\n142159=>17671,\n142160=>17672,\n25394=>17673,\n25397=>17674,\n25403=>17675,\n25404=>17676,\n25409=>17677,\n25412=>17678,\n25422=>17679,\n142150=>17680,\n25433=>17681,\n142365=>17682,\n142246=>17683,\n25452=>17684,\n25497=>17685,\n142372=>17686,\n25492=>17687,\n25533=>17688,\n25556=>17689,\n25557=>17690,\n25568=>17691,\n25579=>17692,\n25580=>17693,\n25586=>17694,\n25630=>17695,\n25637=>17696,\n25641=>17697,\n25647=>17698,\n25690=>17699,\n25693=>17700,\n25715=>17701,\n25725=>17702,\n25735=>17703,\n25745=>17704,\n25759=>17705,\n25803=>17706,\n25804=>17707,\n25813=>17708,\n25815=>17709,\n142817=>17710,\n25828=>17711,\n25855=>17712,\n14958=>17713,\n25871=>17714,\n25876=>17715,\n14963=>17716,\n25886=>17717,\n25906=>17718,\n25924=>17719,\n25940=>17720,\n25963=>17721,\n25978=>17722,\n25988=>17723,\n25994=>17724,\n26034=>17725,\n26037=>17726,\n26040=>17727,\n26047=>17728,\n26057=>17729,\n26068=>17730,\n15062=>17731,\n26105=>17732,\n26108=>17733,\n26116=>17734,\n26120=>17735,\n26145=>17736,\n26154=>17737,\n26181=>17738,\n26193=>17739,\n26190=>17740,\n15082=>17741,\n143811=>17742,\n143861=>17743,\n143798=>17744,\n26218=>17745,\n26220=>17746,\n26221=>17747,\n26235=>17748,\n26240=>17749,\n26256=>17750,\n26258=>17751,\n15118=>17752,\n26285=>17753,\n26289=>17754,\n26293=>17755,\n15130=>17756,\n15132=>17757,\n15063=>17758,\n26369=>17759,\n26386=>17760,\n144242=>17761,\n26393=>17762,\n144339=>17763,\n144338=>17764,\n26445=>17765,\n26452=>17766,\n26461=>17767,\n144336=>17768,\n144356=>17769,\n144341=>17770,\n26484=>17771,\n144346=>17772,\n26514=>17773,\n144351=>17774,\n33635=>17775,\n26640=>17776,\n26563=>17777,\n26568=>17778,\n26578=>17779,\n26587=>17780,\n26615=>17781,\n144458=>17782,\n144465=>17783,\n144459=>17784,\n26648=>17785,\n26655=>17786,\n26669=>17787,\n144485=>17788,\n26675=>17789,\n26683=>17790,\n26686=>17791,\n26693=>17792,\n26697=>17793,\n26700=>17794,\n26709=>17795,\n26711=>17796,\n15223=>17797,\n26731=>17798,\n26734=>17799,\n26748=>17800,\n26754=>17801,\n26768=>17802,\n26774=>17803,\n15213=>17804,\n26776=>17805,\n26777=>17806,\n26778=>17807,\n26780=>17808,\n26794=>17809,\n26795=>17810,\n26804=>17811,\n26811=>17812,\n26875=>17813,\n144612=>17814,\n144730=>17815,\n26819=>17816,\n26821=>17817,\n26828=>17818,\n26841=>17819,\n26852=>17820,\n26853=>17821,\n26860=>17822,\n26871=>17823,\n26883=>17824,\n26887=>17825,\n15239=>17826,\n144788=>17827,\n15245=>17828,\n26950=>17829,\n26985=>17830,\n26988=>17831,\n27002=>17832,\n27026=>17833,\n15268=>17834,\n27030=>17835,\n27056=>17836,\n27066=>17837,\n27068=>17838,\n27072=>17839,\n27089=>17840,\n144953=>17841,\n144967=>17842,\n144952=>17843,\n27107=>17844,\n27118=>17845,\n27119=>17846,\n27123=>17847,\n15309=>17848,\n27124=>17849,\n27134=>17850,\n27153=>17851,\n27162=>17852,\n27165=>17853,\n145180=>17854,\n27186=>17855,\n27187=>17856,\n27199=>17857,\n27209=>17858,\n27258=>17859,\n27214=>17860,\n27218=>17861,\n27236=>17862,\n145164=>17863,\n27275=>17864,\n15344=>17865,\n27297=>17866,\n145252=>17867,\n27307=>17868,\n27325=>17869,\n27334=>17870,\n27348=>17871,\n27344=>17872,\n27357=>17873,\n145407=>17874,\n145383=>17875,\n27377=>17876,\n27378=>17877,\n27379=>17878,\n27389=>17879,\n145444=>17880,\n27403=>17881,\n27407=>17882,\n27408=>17883,\n27409=>17884,\n145469=>17885,\n27415=>17886,\n15398=>17887,\n27439=>17888,\n27466=>17889,\n27480=>17890,\n27500=>17891,\n27509=>17892,\n11934=>17893,\n27514=>17893,\n27521=>17894,\n27547=>17895,\n27566=>17896,\n146072=>17897,\n27581=>17898,\n27591=>17899,\n27592=>17900,\n27593=>17901,\n27610=>17902,\n27622=>17903,\n27623=>17904,\n27630=>17905,\n27650=>17906,\n27658=>17907,\n27662=>17908,\n27702=>17909,\n146559=>17910,\n27725=>17911,\n27739=>17912,\n27757=>17913,\n27780=>17914,\n27785=>17915,\n15555=>17916,\n27796=>17917,\n27799=>17918,\n27821=>17919,\n27842=>17920,\n15570=>17921,\n27868=>17922,\n27881=>17923,\n27885=>17924,\n146688=>17925,\n27904=>17926,\n27940=>17927,\n27942=>17928,\n27943=>17929,\n27751=>17930,\n27951=>17931,\n27964=>17932,\n27995=>17933,\n28000=>17934,\n28016=>17935,\n28032=>17936,\n28033=>17937,\n28042=>17938,\n28045=>17939,\n28049=>17940,\n28056=>17941,\n146752=>17942,\n146938=>17943,\n146937=>17944,\n146899=>17945,\n28075=>17946,\n28078=>17947,\n28084=>17948,\n28098=>17949,\n27956=>17950,\n28104=>17951,\n28110=>17952,\n28127=>17953,\n28150=>17954,\n28214=>17955,\n28190=>17956,\n15633=>17957,\n28210=>17958,\n28232=>17959,\n28233=>17960,\n28235=>17961,\n28236=>17962,\n28239=>17963,\n28243=>17964,\n28244=>17965,\n28247=>17966,\n28259=>17967,\n15646=>17968,\n28307=>17969,\n28327=>17970,\n28340=>17971,\n28355=>17972,\n28469=>17973,\n28395=>17974,\n28409=>17975,\n28411=>17976,\n28426=>17977,\n28428=>17978,\n28440=>17979,\n28453=>17980,\n28470=>17981,\n28476=>17982,\n147326=>17983,\n28498=>17984,\n28503=>17985,\n28512=>17986,\n28520=>17987,\n28560=>17988,\n28566=>17989,\n28606=>17990,\n28575=>17991,\n28581=>17992,\n28591=>17993,\n15716=>17994,\n28616=>17995,\n28617=>17996,\n28649=>17997,\n147606=>17998,\n28668=>17999,\n28672=>18000,\n28682=>18001,\n28707=>18002,\n147715=>18003,\n28730=>18004,\n28739=>18005,\n28743=>18006,\n28747=>18007,\n15770=>18008,\n28773=>18009,\n28777=>18010,\n28782=>18011,\n28790=>18012,\n28806=>18013,\n28823=>18014,\n147910=>18015,\n28831=>18016,\n28849=>18017,\n147966=>18018,\n28908=>18019,\n28874=>18020,\n28881=>18021,\n28931=>18022,\n28934=>18023,\n28936=>18024,\n28940=>18025,\n15808=>18026,\n28975=>18027,\n29008=>18028,\n29011=>18029,\n29022=>18030,\n15828=>18031,\n29078=>18032,\n29056=>18033,\n29083=>18034,\n29088=>18035,\n29090=>18036,\n29102=>18037,\n29103=>18038,\n148412=>18039,\n29145=>18040,\n29148=>18041,\n29191=>18042,\n15877=>18043,\n29236=>18044,\n29241=>18045,\n29250=>18046,\n29271=>18047,\n29283=>18048,\n149033=>18049,\n29294=>18050,\n29295=>18051,\n29304=>18052,\n29311=>18053,\n29326=>18054,\n149157=>18055,\n29358=>18056,\n29360=>18057,\n29377=>18058,\n15968=>18059,\n29388=>18060,\n15974=>18061,\n15976=>18062,\n29427=>18063,\n29434=>18064,\n29447=>18065,\n29458=>18066,\n29464=>18067,\n29465=>18068,\n16003=>18069,\n29497=>18070,\n29484=>18071,\n29491=>18072,\n29501=>18073,\n29522=>18074,\n16020=>18075,\n29547=>18076,\n149654=>18077,\n29550=>18078,\n29551=>18079,\n29553=>18080,\n29569=>18081,\n29578=>18082,\n29588=>18083,\n29592=>18084,\n29596=>18085,\n29605=>18086,\n29625=>18087,\n29631=>18088,\n29637=>18089,\n29643=>18090,\n29665=>18091,\n29671=>18092,\n29689=>18093,\n29715=>18094,\n29690=>18095,\n29697=>18096,\n29779=>18097,\n29760=>18098,\n29763=>18099,\n29778=>18100,\n29789=>18101,\n29825=>18102,\n29832=>18103,\n150093=>18104,\n29842=>18105,\n29847=>18106,\n29849=>18107,\n29857=>18108,\n29861=>18109,\n29866=>18110,\n29881=>18111,\n29883=>18112,\n29882=>18113,\n29910=>18114,\n29912=>18115,\n29931=>18116,\n150358=>18117,\n29946=>18118,\n150383=>18119,\n29984=>18120,\n29988=>18121,\n29994=>18122,\n16215=>18123,\n150550=>18124,\n30013=>18125,\n30014=>18126,\n30016=>18127,\n30024=>18128,\n30032=>18129,\n30034=>18130,\n30066=>18131,\n30065=>18132,\n30074=>18133,\n30077=>18134,\n30078=>18135,\n30092=>18136,\n16245=>18137,\n30114=>18138,\n16247=>18139,\n30128=>18140,\n30135=>18141,\n30143=>18142,\n30144=>18143,\n30150=>18144,\n30159=>18145,\n30163=>18146,\n30173=>18147,\n30175=>18148,\n30176=>18149,\n30183=>18150,\n30190=>18151,\n30193=>18152,\n30211=>18153,\n30232=>18154,\n30215=>18155,\n30223=>18156,\n16302=>18157,\n151054=>18158,\n30227=>18159,\n30235=>18160,\n30236=>18161,\n151095=>18162,\n30245=>18163,\n30248=>18164,\n30268=>18165,\n30259=>18166,\n151146=>18167,\n16329=>18168,\n30273=>18169,\n151179=>18170,\n30281=>18171,\n30293=>18172,\n16343=>18173,\n30318=>18174,\n30357=>18175,\n30369=>18176,\n30368=>18177,\n30375=>18178,\n30376=>18179,\n30383=>18180,\n151626=>18181,\n30409=>18182,\n151637=>18183,\n30440=>18184,\n151842=>18185,\n30487=>18186,\n30490=>18187,\n30509=>18188,\n30517=>18189,\n151977=>18190,\n16441=>18191,\n152037=>18192,\n152013=>18193,\n30552=>18194,\n152094=>18195,\n30588=>18196,\n152140=>18197,\n16472=>18198,\n30618=>18199,\n30623=>18200,\n30626=>18201,\n30628=>18202,\n30686=>18203,\n30687=>18204,\n30692=>18205,\n30698=>18206,\n30700=>18207,\n30715=>18208,\n152622=>18209,\n30725=>18210,\n30729=>18211,\n30733=>18212,\n30745=>18213,\n30764=>18214,\n30791=>18215,\n30826=>18216,\n152793=>18217,\n30858=>18218,\n30868=>18219,\n30884=>18220,\n30877=>18221,\n30879=>18222,\n30907=>18223,\n30933=>18224,\n30950=>18225,\n30969=>18226,\n30970=>18227,\n30974=>18228,\n152999=>18229,\n30992=>18230,\n31003=>18231,\n31013=>18232,\n31050=>18233,\n31064=>18234,\n16645=>18235,\n31079=>18236,\n31090=>18237,\n31125=>18238,\n31137=>18239,\n31145=>18240,\n31156=>18241,\n31170=>18242,\n31175=>18243,\n31180=>18244,\n31181=>18245,\n31190=>18246,\n16712=>18247,\n153513=>18248,\n153524=>18249,\n16719=>18250,\n31242=>18251,\n31253=>18252,\n31259=>18253,\n16739=>18254,\n31288=>18255,\n31303=>18256,\n31318=>18257,\n31321=>18258,\n31324=>18259,\n31327=>18260,\n31335=>18261,\n31338=>18262,\n31349=>18263,\n31362=>18264,\n31370=>18265,\n31376=>18266,\n31404=>18267,\n154068=>18268,\n16820=>18269,\n31417=>18270,\n31422=>18271,\n16831=>18272,\n31436=>18273,\n31464=>18274,\n31476=>18275,\n154340=>18276,\n154339=>18277,\n154353=>18278,\n31549=>18279,\n31530=>18280,\n31534=>18281,\n31535=>18282,\n16870=>18283,\n16883=>18284,\n31615=>18285,\n31553=>18286,\n16878=>18287,\n31573=>18288,\n31609=>18289,\n31588=>18290,\n31590=>18291,\n31603=>18292,\n154546=>18293,\n16903=>18294,\n31632=>18295,\n31643=>18296,\n16910=>18297,\n31669=>18298,\n31676=>18299,\n31685=>18300,\n31690=>18301,\n154699=>18302,\n154724=>18303,\n31700=>18304,\n31702=>18305,\n31706=>18306,\n31722=>18307,\n31728=>18308,\n31747=>18309,\n31758=>18310,\n31813=>18311,\n31818=>18312,\n31831=>18313,\n31838=>18314,\n31841=>18315,\n31849=>18316,\n31855=>18317,\n155182=>18318,\n155222=>18319,\n155237=>18320,\n31910=>18321,\n155234=>18322,\n31926=>18323,\n31927=>18324,\n155352=>18325,\n31940=>18326,\n155330=>18327,\n31949=>18328,\n155368=>18329,\n155427=>18330,\n31974=>18331,\n155484=>18332,\n31989=>18333,\n32003=>18334,\n17094=>18335,\n32018=>18336,\n32030=>18337,\n155616=>18338,\n155604=>18339,\n32061=>18340,\n32062=>18341,\n32064=>18342,\n32071=>18343,\n155660=>18344,\n155643=>18345,\n17110=>18346,\n32090=>18347,\n32106=>18348,\n32112=>18349,\n17117=>18350,\n32127=>18351,\n155671=>18352,\n32136=>18353,\n32151=>18354,\n155744=>18355,\n32157=>18356,\n32167=>18357,\n32170=>18358,\n32182=>18359,\n32192=>18360,\n32215=>18361,\n32217=>18362,\n32230=>18363,\n17154=>18364,\n155885=>18365,\n64088=>18366,\n32272=>18367,\n32279=>18368,\n32285=>18369,\n32295=>18370,\n32300=>18371,\n32325=>18372,\n32373=>18373,\n32382=>18374,\n32390=>18375,\n32391=>18376,\n17195=>18377,\n32410=>18378,\n17219=>18379,\n32572=>18380,\n32571=>18381,\n32574=>18382,\n32579=>18383,\n13505=>18384,\n156272=>18385,\n156294=>18386,\n32611=>18387,\n32612=>18388,\n32621=>18389,\n32637=>18390,\n32638=>18391,\n32656=>18392,\n20859=>18393,\n146702=>18394,\n32662=>18395,\n32668=>18396,\n32685=>18397,\n156674=>18398,\n32707=>18399,\n32719=>18400,\n32739=>18401,\n32754=>18402,\n32778=>18403,\n32776=>18404,\n32790=>18405,\n32812=>18406,\n32816=>18407,\n32835=>18408,\n32870=>18409,\n32891=>18410,\n32921=>18411,\n32924=>18412,\n32932=>18413,\n32935=>18414,\n32952=>18415,\n157310=>18416,\n32965=>18417,\n32981=>18418,\n32998=>18419,\n33037=>18420,\n33013=>18421,\n33019=>18422,\n17390=>18423,\n33077=>18424,\n33054=>18425,\n17392=>18426,\n33060=>18427,\n33063=>18428,\n33068=>18429,\n157469=>18430,\n33085=>18431,\n17416=>18432,\n33129=>18433,\n17431=>18434,\n17436=>18435,\n33157=>18436,\n17442=>18437,\n33176=>18438,\n33202=>18439,\n33217=>18440,\n33219=>18441,\n33238=>18442,\n33243=>18443,\n157917=>18444,\n33252=>18445,\n157930=>18446,\n33260=>18447,\n33277=>18448,\n33279=>18449,\n158063=>18450,\n33284=>18451,\n158173=>18452,\n33305=>18453,\n33314=>18454,\n158238=>18455,\n33340=>18456,\n33353=>18457,\n33349=>18458,\n158296=>18459,\n17526=>18460,\n17530=>18461,\n33367=>18462,\n158348=>18463,\n33372=>18464,\n33379=>18465,\n158391=>18466,\n17553=>18467,\n33405=>18468,\n33407=>18469,\n33411=>18470,\n33418=>18471,\n33427=>18472,\n33447=>18473,\n33448=>18474,\n33458=>18475,\n33460=>18476,\n33466=>18477,\n33468=>18478,\n33506=>18479,\n33512=>18480,\n33527=>18481,\n33543=>18482,\n33544=>18483,\n33548=>18484,\n33620=>18485,\n33563=>18486,\n33565=>18487,\n33584=>18488,\n33596=>18489,\n33604=>18490,\n33623=>18491,\n17598=>18492,\n17620=>18493,\n17587=>18494,\n33684=>18495,\n33685=>18496,\n33691=>18497,\n33693=>18498,\n33737=>18499,\n33744=>18500,\n33748=>18501,\n33757=>18502,\n33765=>18503,\n33785=>18504,\n33813=>18505,\n158835=>18506,\n33815=>18507,\n33849=>18508,\n33871=>18509,\n33873=>18510,\n33874=>18511,\n33881=>18512,\n33882=>18513,\n33884=>18514,\n158941=>18515,\n33893=>18516,\n33912=>18517,\n33916=>18518,\n33921=>18519,\n17677=>18520,\n33943=>18521,\n33958=>18522,\n33982=>18523,\n17672=>18524,\n33998=>18525,\n33999=>18526,\n34003=>18527,\n159333=>18528,\n34023=>18529,\n34026=>18530,\n34031=>18531,\n34033=>18532,\n34042=>18533,\n34075=>18534,\n34084=>18535,\n34085=>18536,\n34091=>18537,\n34127=>18538,\n34159=>18539,\n17731=>18540,\n34129=>18541,\n34145=>18542,\n34146=>18543,\n159636=>18544,\n34171=>18545,\n34173=>18546,\n34175=>18547,\n34177=>18548,\n34182=>18549,\n34195=>18550,\n34205=>18551,\n34207=>18552,\n159736=>18553,\n159734=>18554,\n159735=>18555,\n34236=>18556,\n34247=>18557,\n34250=>18558,\n34264=>18559,\n34265=>18560,\n34271=>18561,\n34273=>18562,\n34278=>18563,\n34294=>18564,\n34304=>18565,\n34321=>18566,\n34334=>18567,\n34337=>18568,\n34340=>18569,\n34343=>18570,\n160013=>18571,\n34361=>18572,\n34364=>18573,\n160057=>18574,\n34368=>18575,\n34387=>18576,\n34390=>18577,\n34423=>18578,\n34439=>18579,\n34441=>18580,\n34460=>18581,\n34461=>18582,\n34481=>18583,\n34483=>18584,\n34497=>18585,\n34499=>18586,\n34513=>18587,\n34517=>18588,\n34519=>18589,\n34531=>18590,\n34534=>18591,\n17848=>18592,\n34565=>18593,\n34567=>18594,\n34574=>18595,\n34576=>18596,\n34591=>18597,\n34593=>18598,\n34595=>18599,\n34609=>18600,\n34618=>18601,\n34624=>18602,\n34627=>18603,\n34641=>18604,\n34648=>18605,\n34660=>18606,\n34661=>18607,\n34674=>18608,\n34684=>18609,\n160731=>18610,\n160730=>18611,\n34727=>18612,\n34697=>18613,\n34699=>18614,\n34707=>18615,\n34720=>18616,\n160766=>18617,\n17893=>18618,\n34750=>18619,\n160784=>18620,\n34753=>18621,\n34766=>18622,\n34783=>18623,\n160841=>18624,\n34787=>18625,\n34789=>18626,\n34790=>18627,\n34794=>18628,\n34835=>18629,\n34856=>18630,\n34862=>18631,\n34866=>18632,\n34876=>18633,\n17935=>18634,\n34890=>18635,\n34904=>18636,\n161301=>18637,\n161300=>18638,\n34921=>18639,\n161329=>18640,\n34927=>18641,\n34976=>18642,\n35004=>18643,\n35008=>18644,\n161427=>18645,\n35025=>18646,\n35027=>18647,\n17985=>18648,\n35073=>18649,\n161550=>18650,\n35127=>18651,\n161571=>18652,\n35138=>18653,\n35141=>18654,\n35145=>18655,\n161618=>18656,\n35170=>18657,\n35209=>18658,\n35216=>18659,\n35231=>18660,\n35248=>18661,\n35255=>18662,\n35288=>18663,\n35307=>18664,\n18081=>18665,\n35315=>18666,\n35325=>18667,\n35327=>18668,\n18095=>18669,\n35345=>18670,\n35348=>18671,\n162181=>18672,\n35361=>18673,\n35381=>18674,\n35390=>18675,\n35397=>18676,\n35405=>18677,\n35416=>18678,\n35502=>18679,\n35472=>18680,\n35511=>18681,\n35543=>18682,\n35580=>18683,\n162436=>18684,\n35594=>18685,\n35589=>18686,\n35597=>18687,\n35612=>18688,\n35629=>18689,\n18188=>18690,\n35665=>18691,\n35678=>18692,\n35702=>18693,\n35713=>18694,\n35723=>18695,\n35732=>18696,\n35733=>18697,\n35897=>18698,\n162739=>18699,\n35901=>18700,\n162750=>18701,\n162759=>18702,\n35909=>18703,\n35919=>18704,\n35927=>18705,\n35945=>18706,\n35949=>18707,\n163000=>18708,\n35987=>18709,\n35986=>18710,\n35993=>18711,\n18276=>18712,\n35995=>18713,\n36054=>18714,\n36053=>18715,\n163232=>18716,\n36081=>18717,\n163344=>18718,\n36105=>18719,\n36110=>18720,\n36296=>18721,\n36313=>18722,\n36364=>18723,\n18429=>18724,\n36349=>18725,\n36358=>18726,\n163978=>18727,\n36372=>18728,\n36374=>18729,\n36385=>18730,\n36386=>18731,\n36391=>18732,\n164027=>18733,\n18454=>18734,\n36406=>18735,\n36409=>18736,\n36436=>18737,\n36450=>18738,\n36461=>18739,\n36463=>18740,\n36504=>18741,\n36510=>18742,\n36533=>18743,\n36539=>18744,\n164482=>18745,\n18510=>18746,\n164595=>18747,\n36608=>18748,\n36616=>18749,\n36651=>18750,\n36672=>18751,\n36682=>18752,\n36696=>18753,\n164876=>18754,\n36772=>18755,\n36788=>18756,\n164949=>18757,\n36801=>18758,\n36806=>18759,\n64036=>18760,\n36810=>18761,\n36813=>18762,\n36819=>18763,\n36821=>18764,\n36849=>18765,\n36853=>18766,\n36859=>18767,\n36876=>18768,\n36919=>18769,\n165227=>18770,\n36931=>18771,\n36957=>18772,\n165320=>18773,\n165321=>18774,\n36997=>18775,\n37004=>18776,\n37008=>18777,\n37025=>18778,\n18613=>18779,\n37040=>18780,\n37046=>18781,\n37059=>18782,\n37064=>18783,\n165591=>18784,\n37084=>18785,\n37087=>18786,\n165626=>18787,\n37110=>18788,\n37106=>18789,\n37120=>18790,\n37099=>18791,\n37118=>18792,\n37119=>18793,\n37124=>18794,\n37126=>18795,\n37144=>18796,\n37150=>18797,\n37175=>18798,\n37177=>18799,\n37190=>18800,\n37191=>18801,\n37207=>18802,\n37209=>18803,\n37236=>18804,\n37241=>18805,\n37253=>18806,\n37299=>18807,\n37302=>18808,\n37315=>18809,\n37316=>18810,\n166217=>18811,\n166214=>18812,\n37356=>18813,\n37377=>18814,\n37398=>18815,\n37399=>18816,\n166251=>18817,\n37442=>18818,\n37450=>18819,\n37462=>18820,\n37473=>18821,\n37477=>18822,\n37480=>18823,\n166280=>18824,\n37500=>18825,\n37501=>18826,\n37503=>18827,\n37513=>18828,\n37517=>18829,\n37527=>18830,\n37529=>18831,\n37535=>18832,\n37547=>18833,\n166330=>18834,\n166331=>18835,\n37554=>18836,\n37567=>18837,\n37568=>18838,\n37574=>18839,\n37582=>18840,\n37605=>18841,\n37649=>18842,\n166430=>18843,\n166441=>18844,\n37623=>18845,\n37673=>18846,\n166513=>18847,\n166467=>18848,\n37713=>18849,\n37722=>18850,\n37739=>18851,\n37745=>18852,\n37747=>18853,\n37793=>18854,\n166553=>18855,\n166605=>18856,\n37768=>18857,\n37771=>18858,\n37775=>18859,\n37790=>18860,\n37877=>18861,\n166628=>18862,\n166621=>18863,\n37873=>18864,\n37831=>18865,\n37852=>18866,\n37863=>18867,\n37897=>18868,\n37910=>18869,\n37911=>18870,\n37883=>18871,\n37938=>18872,\n37947=>18873,\n166849=>18874,\n166895=>18875,\n37997=>18876,\n37999=>18877,\n38265=>18878,\n38278=>18879,\n38284=>18880,\n38285=>18881,\n167184=>18882,\n167281=>18883,\n38344=>18884,\n167419=>18885,\n167455=>18886,\n38444=>18887,\n38451=>18888,\n38452=>18889,\n167478=>18890,\n38460=>18891,\n38497=>18892,\n167561=>18893,\n38530=>18894,\n167659=>18895,\n38554=>18896,\n167730=>18897,\n18919=>18898,\n38579=>18899,\n38586=>18900,\n38589=>18901,\n18938=>18902,\n167928=>18903,\n38616=>18904,\n38618=>18905,\n38621=>18906,\n18948=>18907,\n38676=>18908,\n38691=>18909,\n18985=>18910,\n38710=>18911,\n38721=>18912,\n38727=>18913,\n38743=>18914,\n38747=>18915,\n38762=>18916,\n168608=>18917,\n168625=>18918,\n38806=>18919,\n38814=>18920,\n38833=>18921,\n38834=>18922,\n38846=>18923,\n38860=>18924,\n38865=>18925,\n38868=>18926,\n38872=>18927,\n38881=>18928,\n38897=>18929,\n38916=>18930,\n38925=>18931,\n38932=>18932,\n38934=>18933,\n19132=>18934,\n169104=>18935,\n38962=>18936,\n38963=>18937,\n38949=>18938,\n38983=>18939,\n39014=>18940,\n39083=>18941,\n39085=>18942,\n39088=>18943,\n169423=>18944,\n39095=>18945,\n39099=>18946,\n39100=>18947,\n39106=>18948,\n39111=>18949,\n39115=>18950,\n39137=>18951,\n39139=>18952,\n39146=>18953,\n39152=>18954,\n39153=>18955,\n39155=>18956,\n39176=>18957,\n19259=>18958,\n169712=>18959,\n39190=>18960,\n39191=>18961,\n169753=>18962,\n39194=>18963,\n39195=>18964,\n39196=>18965,\n169808=>18966,\n39217=>18967,\n39226=>18968,\n39227=>18969,\n39228=>18970,\n39233=>18971,\n39238=>18972,\n39246=>18973,\n39264=>18974,\n39331=>18975,\n39334=>18976,\n39357=>18977,\n39359=>18978,\n39363=>18979,\n39380=>18980,\n39385=>18981,\n39390=>18982,\n170182=>18983,\n39408=>18984,\n39417=>18985,\n39420=>18986,\n39434=>18987,\n39441=>18988,\n39450=>18989,\n39456=>18990,\n39473=>18991,\n39492=>18992,\n39500=>18993,\n39512=>18994,\n19394=>18995,\n39599=>18996,\n19402=>18997,\n39607=>18998,\n19410=>18999,\n39609=>19000,\n170610=>19001,\n39622=>19002,\n39632=>19003,\n39634=>19004,\n39637=>19005,\n39648=>19006,\n39653=>19007,\n39657=>19008,\n39692=>19009,\n39696=>19010,\n39698=>19011,\n39702=>19012,\n39708=>19013,\n39723=>19014,\n39741=>19015,\n19488=>19016,\n39755=>19017,\n39779=>19018,\n39781=>19019,\n39787=>19020,\n39788=>19021,\n39798=>19022,\n39799=>19023,\n39846=>19024,\n39852=>19025,\n171483=>19026,\n39858=>19027,\n39864=>19028,\n39870=>19029,\n39923=>19030,\n39896=>19031,\n39901=>19032,\n39914=>19033,\n39919=>19034,\n39918=>19035,\n171541=>19036,\n171658=>19037,\n171593=>19038,\n39958=>19039,\n39960=>19040,\n39961=>19041,\n39962=>19042,\n39965=>19043,\n39970=>19044,\n39977=>19045,\n171716=>19046,\n39985=>19047,\n39991=>19048,\n40005=>19049,\n40028=>19050,\n171753=>19051,\n40009=>19052,\n40010=>19053,\n171739=>19054,\n40020=>19055,\n40024=>19056,\n40027=>19057,\n40029=>19058,\n40031=>19059,\n40041=>19060,\n40042=>19061,\n40043=>19062,\n40045=>19063,\n40046=>19064,\n40050=>19065,\n40053=>19066,\n40058=>19067,\n40166=>19068,\n40178=>19069,\n40203=>19070,\n171982=>19071,\n171991=>19071,\n40209=>19072,\n40215=>19073,\n40216=>19074,\n172079=>19075,\n19652=>19076,\n172058=>19077,\n40242=>19078,\n19665=>19079,\n40266=>19080,\n40287=>19081,\n40290=>19082,\n172281=>19083,\n172162=>19084,\n40307=>19085,\n40310=>19086,\n40311=>19087,\n40324=>19088,\n40345=>19089,\n40353=>19090,\n40383=>19091,\n40373=>19092,\n40377=>19093,\n40381=>19094,\n40393=>19095,\n40410=>19096,\n40416=>19097,\n40419=>19098,\n19719=>19099,\n40458=>19100,\n40450=>19101,\n40461=>19102,\n40476=>19103,\n40571=>19104,\n139800=>19105,\n40576=>19106,\n40581=>19107,\n40603=>19108,\n172940=>19109,\n40637=>19110,\n173111=>19111,\n40671=>19112,\n40703=>19113,\n40706=>19114,\n19831=>19115,\n40707=>19116,\n40762=>19117,\n40765=>19118,\n40774=>19119,\n40787=>19120,\n40789=>19121,\n40792=>19122,\n173553=>19123,\n40797=>19124,\n173570=>19125,\n40809=>19126,\n40813=>19127,\n40816=>19128,\n173746=>19129,\n11948=>19130,\n13844=>19131,\n14509=>19132,\n15820=>19133,\n16348=>19134,\n17854=>19135,\n17936=>19136,\n19326=>19137,\n19512=>19138,\n19681=>19139,\n19980=>19140,\n20003=>19141,\n20004=>19142,\n20089=>19143,\n20211=>19144,\n20236=>19145,\n20249=>19146,\n20267=>19147,\n20270=>19148,\n20273=>19149,\n20356=>19150,\n20382=>19151,\n20407=>19152,\n20484=>19153,\n20492=>19154,\n20556=>19155,\n20575=>19156,\n20578=>19157,\n20599=>19158,\n20622=>19159,\n20638=>19160,\n20642=>19161,\n20675=>19162,\n20712=>19163,\n20721=>19164,\n20734=>19165,\n20743=>19166,\n20748=>19167,\n20749=>19168,\n20750=>19169,\n20787=>19170,\n20792=>19171,\n20852=>19172,\n20868=>19173,\n20920=>19174,\n20922=>19175,\n20936=>19176,\n20943=>19177,\n20945=>19178,\n20947=>19179,\n20948=>19180,\n20952=>19181,\n20959=>19182,\n20997=>19183,\n21030=>19184,\n21032=>19185,\n21035=>19186,\n21041=>19187,\n21042=>19188,\n21045=>19189,\n21052=>19190,\n21082=>19191,\n21088=>19192,\n21102=>19193,\n21112=>19194,\n21113=>19195,\n21130=>19196,\n21132=>19197,\n21217=>19198,\n21225=>19199,\n21233=>19200,\n21251=>19201,\n21265=>19202,\n21279=>19203,\n21293=>19204,\n21298=>19205,\n21309=>19206,\n21349=>19207,\n21357=>19208,\n21369=>19209,\n21374=>19210,\n21396=>19211,\n21401=>19212,\n21418=>19213,\n21423=>19214,\n21434=>19215,\n21441=>19216,\n21444=>19217,\n21445=>19218,\n21472=>19219,\n21523=>19220,\n21546=>19221,\n21553=>19222,\n21556=>19223,\n21557=>19224,\n21580=>19225,\n21671=>19226,\n21674=>19227,\n21681=>19228,\n21691=>19229,\n21710=>19230,\n21738=>19231,\n21756=>19232,\n21765=>19233,\n21768=>19234,\n21781=>19235,\n21799=>19236,\n21802=>19237,\n21814=>19238,\n21841=>19239,\n21862=>19240,\n21903=>19241,\n21906=>19242,\n21908=>19243,\n21924=>19244,\n21938=>19245,\n21955=>19246,\n21958=>19247,\n21971=>19248,\n21979=>19249,\n21996=>19250,\n21998=>19251,\n22001=>19252,\n22006=>19253,\n22008=>19254,\n22021=>19255,\n22029=>19256,\n22033=>19257,\n22034=>19258,\n22060=>19259,\n22069=>19260,\n22073=>19261,\n22093=>19262,\n22100=>19263,\n22149=>19264,\n22175=>19265,\n22182=>19266,\n22199=>19267,\n22220=>19268,\n22223=>19269,\n22233=>19270,\n22241=>19271,\n22251=>19272,\n22253=>19273,\n22257=>19274,\n22279=>19275,\n22284=>19276,\n22298=>19277,\n22299=>19278,\n22301=>19279,\n22316=>19280,\n22318=>19281,\n22333=>19282,\n22334=>19283,\n22367=>19284,\n22379=>19285,\n22381=>19286,\n22394=>19287,\n22403=>19288,\n22423=>19289,\n22446=>19290,\n22485=>19291,\n22503=>19292,\n22541=>19293,\n22566=>19294,\n22605=>19295,\n22607=>19296,\n22623=>19297,\n22637=>19298,\n22655=>19299,\n22657=>19300,\n22680=>19301,\n22716=>19302,\n22815=>19303,\n22819=>19304,\n22873=>19305,\n22905=>19306,\n22935=>19307,\n22959=>19308,\n22963=>19309,\n23007=>19310,\n23025=>19311,\n23032=>19312,\n23218=>19313,\n23224=>19314,\n23274=>19315,\n23286=>19316,\n23323=>19317,\n23325=>19318,\n23329=>19319,\n23352=>19320,\n23479=>19321,\n23511=>19322,\n23520=>19323,\n23583=>19324,\n23594=>19325,\n23596=>19326,\n23606=>19327,\n23641=>19328,\n23644=>19329,\n23661=>19330,\n23773=>19331,\n23809=>19332,\n23860=>19333,\n23869=>19334,\n23897=>19335,\n23934=>19336,\n23939=>19337,\n24007=>19338,\n24057=>19339,\n24104=>19340,\n24114=>19341,\n24117=>19342,\n24155=>19343,\n24168=>19344,\n24170=>19345,\n24183=>19346,\n24192=>19347,\n24203=>19348,\n24243=>19349,\n24253=>19350,\n24273=>19351,\n24276=>19352,\n24277=>19353,\n24397=>19354,\n24492=>19355,\n24554=>19356,\n24583=>19357,\n24649=>19358,\n24660=>19359,\n24679=>19360,\n24763=>19361,\n24772=>19362,\n24829=>19363,\n24842=>19364,\n24854=>19365,\n24874=>19366,\n24886=>19367,\n24926=>19368,\n24932=>19369,\n24955=>19370,\n24957=>19371,\n24959=>19372,\n24989=>19373,\n25016=>19374,\n25052=>19375,\n25058=>19376,\n25061=>19377,\n25064=>19378,\n25092=>19379,\n25095=>19380,\n25137=>19381,\n25145=>19382,\n25149=>19383,\n25210=>19384,\n25232=>19385,\n25256=>19386,\n25306=>19387,\n25332=>19388,\n25366=>19389,\n25386=>19390,\n25398=>19391,\n25414=>19392,\n25419=>19393,\n25427=>19394,\n25457=>19395,\n25461=>19396,\n25471=>19397,\n25474=>19398,\n25482=>19399,\n25518=>19400,\n25519=>19401,\n25578=>19402,\n25592=>19403,\n25593=>19404,\n25618=>19405,\n25624=>19406,\n25632=>19407,\n25636=>19408,\n25642=>19409,\n25653=>19410,\n25661=>19411,\n25663=>19412,\n25682=>19413,\n25695=>19414,\n25716=>19415,\n25744=>19416,\n25752=>19417,\n25753=>19418,\n25772=>19419,\n25779=>19420,\n25837=>19421,\n25840=>19422,\n25883=>19423,\n25887=>19424,\n25902=>19425,\n25929=>19426,\n25952=>19427,\n26002=>19428,\n26005=>19429,\n26036=>19430,\n26046=>19431,\n26056=>19432,\n26062=>19433,\n26064=>19434,\n26079=>19435,\n26238=>19436,\n26251=>19437,\n26252=>19438,\n26291=>19439,\n26304=>19440,\n26319=>19441,\n26405=>19442,\n26421=>19443,\n26453=>19444,\n26496=>19445,\n26511=>19446,\n26513=>19447,\n26532=>19448,\n26545=>19449,\n26549=>19450,\n26558=>19451,\n26664=>19452,\n26758=>19453,\n26859=>19454,\n26869=>19455,\n26903=>19456,\n26931=>19457,\n26936=>19458,\n26971=>19459,\n26981=>19460,\n27048=>19461,\n27051=>19462,\n27055=>19463,\n27109=>19464,\n27121=>19465,\n27210=>19466,\n27221=>19467,\n27239=>19468,\n27249=>19469,\n27311=>19470,\n27336=>19471,\n27337=>19472,\n27395=>19473,\n27451=>19474,\n27455=>19475,\n27517=>19476,\n27518=>19477,\n27568=>19478,\n27639=>19479,\n27641=>19480,\n27652=>19481,\n27657=>19482,\n27661=>19483,\n27692=>19484,\n27722=>19485,\n27730=>19486,\n27732=>19487,\n27769=>19488,\n27820=>19489,\n27828=>19490,\n27858=>19491,\n28001=>19492,\n28028=>19493,\n28089=>19494,\n28144=>19495,\n28229=>19496,\n28275=>19497,\n28283=>19498,\n28285=>19499,\n28297=>19500,\n28348=>19501,\n28378=>19502,\n28379=>19503,\n28454=>19504,\n28457=>19505,\n28464=>19506,\n28551=>19507,\n28573=>19508,\n28590=>19509,\n28599=>19510,\n28685=>19511,\n28704=>19512,\n28745=>19513,\n28824=>19514,\n28848=>19515,\n28885=>19516,\n28886=>19517,\n28997=>19518,\n29106=>19519,\n29172=>19520,\n29207=>19521,\n29215=>19522,\n29251=>19523,\n29263=>19524,\n29264=>19525,\n29274=>19526,\n29280=>19527,\n29288=>19528,\n29303=>19529,\n29316=>19530,\n29385=>19531,\n29413=>19532,\n29428=>19533,\n29442=>19534,\n29451=>19535,\n29470=>19536,\n29474=>19537,\n29498=>19538,\n29499=>19539,\n29517=>19540,\n29528=>19541,\n29543=>19542,\n29810=>19543,\n29871=>19544,\n29919=>19545,\n29924=>19546,\n29940=>19547,\n29947=>19548,\n29974=>19549,\n29985=>19550,\n30015=>19551,\n30046=>19552,\n30105=>19553,\n30116=>19554,\n30145=>19555,\n30148=>19556,\n30156=>19557,\n30167=>19558,\n30172=>19559,\n30177=>19560,\n30191=>19561,\n30212=>19562,\n30220=>19563,\n30237=>19564,\n30258=>19565,\n30264=>19566,\n30277=>19567,\n30282=>19568,\n30303=>19569,\n30381=>19570,\n30397=>19571,\n30425=>19572,\n30443=>19573,\n30448=>19574,\n30457=>19575,\n30464=>19576,\n30478=>19577,\n30498=>19578,\n30504=>19579,\n30511=>19580,\n30521=>19581,\n30526=>19582,\n30533=>19583,\n30538=>19584,\n30543=>19585,\n30558=>19586,\n30564=>19587,\n30567=>19588,\n30572=>19589,\n30596=>19590,\n30604=>19591,\n30605=>19592,\n30614=>19593,\n30631=>19594,\n30639=>19595,\n30647=>19596,\n30654=>19597,\n30665=>19598,\n30673=>19599,\n30681=>19600,\n30705=>19601,\n30775=>19602,\n30812=>19603,\n30846=>19604,\n30872=>19605,\n30881=>19606,\n30897=>19607,\n30899=>19608,\n30921=>19609,\n30931=>19610,\n30988=>19611,\n31007=>19612,\n31015=>19613,\n31016=>19614,\n31039=>19615,\n31042=>19616,\n31060=>19617,\n31083=>19618,\n31100=>19619,\n31147=>19620,\n31172=>19621,\n31210=>19622,\n31234=>19623,\n31244=>19624,\n31280=>19625,\n31290=>19626,\n31300=>19627,\n31360=>19628,\n31366=>19629,\n31380=>19630,\n31413=>19631,\n31421=>19632,\n31486=>19633,\n31531=>19634,\n31607=>19635,\n31648=>19636,\n31660=>19637,\n31664=>19638,\n31720=>19639,\n31730=>19640,\n31736=>19641,\n31740=>19642,\n31742=>19643,\n31753=>19644,\n31784=>19645,\n31791=>19646,\n31810=>19647,\n31826=>19648,\n31827=>19649,\n31835=>19650,\n31836=>19651,\n31837=>19652,\n31858=>19653,\n31869=>19654,\n31879=>19655,\n31902=>19656,\n31930=>19657,\n31943=>19658,\n31955=>19659,\n31962=>19660,\n32060=>19661,\n32077=>19662,\n32130=>19663,\n32133=>19664,\n32141=>19665,\n32145=>19666,\n32158=>19667,\n32179=>19668,\n32185=>19669,\n32208=>19670,\n32229=>19671,\n32245=>19672,\n32246=>19673,\n32303=>19674,\n32310=>19675,\n32324=>19676,\n32367=>19677,\n32376=>19678,\n32385=>19679,\n32573=>19680,\n32603=>19681,\n32605=>19682,\n32613=>19683,\n32625=>19684,\n32639=>19685,\n32640=>19686,\n32651=>19687,\n32674=>19688,\n32765=>19689,\n32766=>19690,\n32767=>19691,\n32775=>19692,\n32781=>19693,\n32798=>19694,\n32825=>19695,\n32904=>19696,\n32910=>19697,\n32975=>19698,\n32980=>19699,\n33005=>19700,\n33008=>19701,\n33015=>19702,\n33018=>19703,\n33022=>19704,\n33027=>19705,\n33047=>19706,\n33072=>19707,\n33111=>19708,\n33135=>19709,\n33139=>19710,\n33163=>19711,\n33168=>19712,\n33179=>19713,\n33182=>19714,\n33227=>19715,\n33237=>19716,\n33245=>19717,\n33246=>19718,\n33249=>19719,\n33263=>19720,\n33270=>19721,\n33280=>19722,\n33291=>19723,\n33299=>19724,\n33300=>19725,\n33306=>19726,\n33338=>19727,\n33348=>19728,\n33389=>19729,\n33412=>19730,\n33417=>19731,\n33425=>19732,\n33450=>19733,\n33456=>19734,\n33488=>19735,\n33514=>19736,\n33519=>19737,\n33526=>19738,\n33622=>19739,\n33656=>19740,\n33784=>19741,\n33788=>19742,\n33880=>19743,\n33939=>19744,\n33969=>19745,\n33981=>19746,\n34043=>19747,\n34118=>19748,\n34134=>19749,\n34141=>19750,\n34181=>19751,\n34200=>19752,\n34370=>19753,\n34374=>19754,\n34496=>19755,\n34580=>19756,\n34594=>19757,\n34606=>19758,\n34617=>19759,\n34653=>19760,\n34683=>19761,\n34700=>19762,\n34702=>19763,\n34711=>19764,\n34712=>19765,\n34718=>19766,\n34723=>19767,\n34734=>19768,\n34751=>19769,\n34761=>19770,\n34778=>19771,\n34840=>19772,\n34843=>19773,\n34861=>19774,\n34874=>19775,\n34885=>19776,\n34891=>19777,\n34894=>19778,\n34901=>19779,\n34906=>19780,\n34926=>19781,\n34970=>19782,\n34971=>19783,\n34972=>19784,\n35021=>19785,\n35040=>19786,\n35055=>19787,\n35086=>19788,\n35087=>19789,\n35110=>19790,\n35125=>19791,\n35162=>19792,\n35164=>19793,\n35179=>19794,\n35184=>19795,\n35196=>19796,\n35237=>19797,\n35253=>19798,\n35260=>19799,\n35285=>19800,\n35401=>19801,\n35415=>19802,\n35431=>19803,\n35454=>19804,\n35462=>19805,\n35478=>19806,\n35510=>19807,\n35529=>19808,\n35537=>19809,\n35549=>19810,\n35564=>19811,\n35573=>19812,\n35590=>19813,\n35599=>19814,\n35601=>19815,\n35653=>19816,\n35666=>19817,\n35693=>19818,\n35704=>19819,\n35708=>19820,\n35710=>19821,\n35717=>19822,\n35743=>19823,\n35915=>19824,\n35923=>19825,\n35963=>19826,\n36026=>19827,\n36037=>19828,\n36041=>19829,\n36050=>19830,\n36076=>19831,\n36085=>19832,\n36087=>19833,\n36097=>19834,\n36099=>19835,\n36119=>19836,\n36124=>19837,\n36206=>19838,\n36241=>19839,\n36255=>19840,\n36267=>19841,\n36274=>19842,\n36309=>19843,\n36327=>19844,\n36337=>19845,\n36338=>19846,\n36340=>19847,\n36353=>19848,\n36363=>19849,\n36390=>19850,\n36401=>19851,\n36416=>19852,\n36417=>19853,\n36429=>19854,\n36431=>19855,\n36444=>19856,\n36449=>19857,\n36457=>19858,\n36465=>19859,\n36469=>19860,\n36471=>19861,\n36489=>19862,\n36496=>19863,\n36501=>19864,\n36506=>19865,\n36519=>19866,\n36521=>19867,\n36525=>19868,\n36584=>19869,\n36592=>19870,\n36615=>19871,\n36632=>19872,\n36645=>19873,\n36647=>19874,\n36652=>19875,\n36661=>19876,\n36666=>19877,\n36675=>19878,\n36679=>19879,\n36689=>19880,\n36693=>19881,\n36768=>19882,\n36769=>19883,\n36770=>19884,\n36773=>19885,\n36868=>19886,\n36891=>19887,\n36911=>19888,\n36940=>19889,\n36955=>19890,\n36976=>19891,\n36980=>19892,\n36985=>19893,\n37003=>19894,\n37016=>19895,\n37024=>19896,\n37042=>19897,\n37053=>19898,\n37065=>19899,\n37104=>19900,\n37125=>19901,\n37157=>19902,\n37210=>19903,\n37223=>19904,\n37242=>19905,\n37258=>19906,\n37265=>19907,\n37269=>19908,\n37296=>19909,\n37307=>19910,\n37309=>19911,\n37314=>19912,\n37317=>19913,\n37376=>19914,\n37385=>19915,\n37411=>19916,\n37494=>19917,\n37518=>19918,\n37551=>19919,\n37563=>19920,\n37564=>19921,\n37569=>19922,\n37571=>19923,\n37573=>19924,\n37576=>19925,\n37652=>19926,\n37683=>19927,\n37686=>19928,\n37720=>19929,\n37759=>19930,\n37762=>19931,\n37770=>19932,\n37819=>19933,\n37836=>19934,\n37862=>19935,\n37881=>19936,\n37890=>19937,\n37901=>19938,\n37902=>19939,\n37934=>19940,\n37964=>19941,\n38280=>19942,\n38305=>19943,\n38335=>19944,\n38342=>19945,\n38345=>19946,\n38353=>19947,\n38354=>19948,\n38368=>19949,\n38372=>19950,\n38374=>19951,\n38436=>19952,\n38449=>19953,\n38456=>19954,\n38461=>19955,\n38484=>19956,\n38516=>19957,\n38523=>19958,\n38527=>19959,\n38529=>19960,\n38531=>19961,\n38537=>19962,\n38550=>19963,\n38574=>19964,\n38659=>19965,\n38683=>19966,\n38689=>19967,\n38690=>19968,\n38696=>19969,\n38705=>19970,\n38759=>19971,\n38774=>19972,\n38781=>19973,\n38783=>19974,\n38809=>19975,\n38815=>19976,\n38828=>19977,\n38841=>19978,\n38861=>19979,\n38880=>19980,\n38895=>19981,\n38919=>19982,\n38950=>19983,\n38958=>19984,\n39010=>19985,\n39011=>19986,\n39092=>19987,\n39109=>19988,\n39170=>19989,\n39185=>19990,\n39189=>19991,\n39221=>19992,\n39240=>19993,\n39252=>19994,\n39262=>19995,\n39393=>19996,\n39436=>19997,\n39440=>19998,\n39459=>19999,\n39489=>20000,\n39505=>20001,\n39613=>20002,\n39614=>20003,\n39681=>20004,\n39689=>20005,\n39691=>20006,\n39693=>20007,\n39694=>20008,\n39705=>20009,\n39733=>20010,\n39752=>20011,\n39765=>20012,\n39784=>20013,\n39808=>20014,\n39814=>20015,\n39824=>20016,\n39837=>20017,\n39856=>20018,\n39871=>20019,\n39880=>20020,\n39935=>20021,\n39938=>20022,\n39964=>20023,\n39989=>20024,\n40004=>20025,\n40022=>20026,\n40033=>20027,\n40040=>20028,\n40240=>20029,\n40253=>20030,\n40298=>20031,\n40315=>20032,\n40421=>20033,\n40425=>20034,\n40435=>20035,\n40570=>20036,\n40578=>20037,\n40579=>20038,\n40580=>20039,\n40624=>20040,\n40676=>20041,\n40688=>20042,\n40690=>20043,\n40713=>20044,\n40719=>20045,\n40724=>20046,\n40731=>20047,\n40738=>20048,\n40742=>20049,\n40746=>20050,\n40747=>20051,\n40756=>20052,\n40794=>20053,\n40815=>20054,\n40862=>20055,\n40869=>20056,\n131317=>20057,\n151044=>20058,\n151538=>20059,\n163187=>20060,\n194581=>20061,\n194630=>20062,\n194713=>20063,\n194726=>20064,\n194789=>20065,\n195038=>20066,\n13790=>20067,\n40895=>20068,\n40896=>20069,\n40897=>20070,\n40898=>20071,\n172722=>20072,\n131416=>20075,\n132529=>20080,\n132844=>20083,\n134488=>20090,\n154060=>20112,\n14756=>20122,\n14776=>20123,\n142914=>20124,\n14940=>20127,\n133064=>20128,\n143339=>20130,\n162228=>20133,\n15044=>20135,\n15051=>20136,\n14981=>20142,\n15347=>20151,\n27384=>20152,\n15665=>20158,\n147531=>20168,\n15936=>20170,\n14497=>20171,\n158878=>20206,\n18207=>20219,\n162876=>20220,\n18462=>20225,\n39709=>20297,\n39724=>20298,\n20482=>20299,\n20958=>20300,\n21255=>20301,\n23532=>20302,\n63784=>20303,\n26142=>20304,\n63785=>20305,\n28746=>20306,\n64021=>20307,\n21857=>20308,\n27706=>20309,\n31328=>20310,\n156492=>20311,\n34819=>20312,\n38315=>20313,\n38741=>20314,\n171581=>20315,\n173594=>20316,\n900=>20317,\n901=>20318,\n272=>20322,\n294=>20323,\n306=>20324,\n319=>20325,\n330=>20326,\n358=>20327,\n307=>20328,\n312=>20329,\n320=>20330,\n329=>20331,\n359=>20332,\n266=>20333,\n278=>20334,\n286=>20335,\n290=>20336,\n288=>20337,\n304=>20338,\n302=>20339,\n310=>20340,\n315=>20342,\n325=>20343,\n342=>20344,\n370=>20345,\n471=>20346,\n475=>20347,\n473=>20348,\n469=>20349,\n372=>20350,\n374=>20351,\n267=>20352,\n279=>20353,\n501=>20354,\n287=>20355,\n289=>20356,\n303=>20357,\n311=>20358,\n316=>20360,\n326=>20361,\n343=>20362,\n371=>20363,\n373=>20364,\n375=>20365,\n8494=>20366,\n8710=>20367,\n8719=>20368,\n8804=>20369,\n8805=>20370,\n9674=>20371,\n902=>20427,\n904=>20428,\n905=>20429,\n906=>20430,\n938=>20431,\n908=>20432,\n910=>20433,\n939=>20434,\n911=>20435,\n940=>20436,\n941=>20437,\n942=>20438,\n943=>20439,\n970=>20440,\n912=>20441,\n972=>20442,\n973=>20443,\n971=>20444,\n944=>20445,\n974=>20446,\n1026=>20447,\n1027=>20448,\n1028=>20449,\n1029=>20450,\n1030=>20451,\n1031=>20452,\n1032=>20453,\n1033=>20454,\n1034=>20455,\n1035=>20456,\n1036=>20457,\n1038=>20458,\n1039=>20459,\n1106=>20460,\n1107=>20461,\n1108=>20462,\n1109=>20463,\n1110=>20464,\n1111=>20465,\n1112=>20466,\n1113=>20467,\n1114=>20468,\n1115=>20469,\n1116=>20470,\n1118=>20471,\n1119=>20472,\n9361=>20587,\n9362=>20588,\n20021=>21075,\n20060=>21076,\n20067=>21077,\n20072=>21078,\n20084=>21079,\n20085=>21080,\n20119=>21081,\n20143=>21082,\n20187=>21083,\n20194=>21084,\n20200=>21085,\n20207=>21086,\n20222=>21087,\n20226=>21088,\n20232=>21089,\n20242=>21090,\n20247=>21091,\n20275=>21092,\n20277=>21093,\n20288=>21094,\n20290=>21095,\n20299=>21096,\n20300=>21097,\n20306=>21098,\n20323=>21099,\n20334=>21100,\n20337=>21101,\n20345=>21102,\n20353=>21103,\n20361=>21104,\n20364=>21105,\n20366=>21106,\n20368=>21107,\n20371=>21108,\n20377=>21109,\n20383=>21110,\n20409=>21111,\n20411=>21112,\n20412=>21113,\n20413=>21114,\n20416=>21115,\n20417=>21116,\n20422=>21117,\n20424=>21118,\n20428=>21119,\n20444=>21120,\n20450=>21121,\n20464=>21122,\n20476=>21123,\n20487=>21124,\n20490=>21125,\n20503=>21126,\n20509=>21127,\n20528=>21128,\n20530=>21129,\n20531=>21130,\n20533=>21131,\n20549=>21132,\n20554=>21133,\n20561=>21134,\n20562=>21135,\n20569=>21136,\n20576=>21137,\n20583=>21138,\n20589=>21139,\n20593=>21140,\n20609=>21141,\n20611=>21142,\n20612=>21143,\n20614=>21144,\n20618=>21145,\n20624=>21146,\n20635=>21147,\n20639=>21148,\n20640=>21149,\n20641=>21150,\n20655=>21151,\n20656=>21152,\n20665=>21153,\n20669=>21154,\n20672=>21155,\n20691=>21156,\n20700=>21157,\n20701=>21158,\n20703=>21159,\n20706=>21160,\n20708=>21161,\n20726=>21162,\n20730=>21163,\n20761=>21165,\n20764=>21166,\n20765=>21167,\n20771=>21168,\n20775=>21169,\n20776=>21170,\n20780=>21171,\n20781=>21172,\n20783=>21173,\n20785=>21174,\n20788=>21175,\n20793=>21176,\n20802=>21177,\n20815=>21178,\n20819=>21179,\n20824=>21180,\n20838=>21181,\n20862=>21182,\n20878=>21183,\n20927=>21184,\n20930=>21185,\n20946=>21186,\n20949=>21187,\n20965=>21188,\n20978=>21189,\n20983=>21190,\n21016=>21191,\n21026=>21192,\n21061=>21193,\n21080=>21194,\n21087=>21195,\n21120=>21196,\n21125=>21197,\n21141=>21198,\n21142=>21199,\n21143=>21200,\n21146=>21201,\n21157=>21202,\n21159=>21203,\n21168=>21204,\n21174=>21205,\n21175=>21206,\n21176=>21207,\n21181=>21208,\n21188=>21209,\n21190=>21210,\n21199=>21211,\n21204=>21212,\n21212=>21213,\n21221=>21214,\n21224=>21215,\n21226=>21216,\n21228=>21217,\n21236=>21218,\n21238=>21219,\n21260=>21220,\n21267=>21221,\n21272=>21222,\n21275=>21223,\n21278=>21224,\n21285=>21225,\n21287=>21226,\n21288=>21227,\n21289=>21228,\n21291=>21229,\n21292=>21230,\n21296=>21231,\n21308=>21232,\n21337=>21233,\n21339=>21234,\n21379=>21236,\n21383=>21237,\n21384=>21238,\n21390=>21239,\n21409=>21240,\n21429=>21241,\n21432=>21242,\n21437=>21243,\n21455=>21244,\n21458=>21245,\n21459=>21246,\n21470=>21247,\n21479=>21249,\n21506=>21250,\n21530=>21251,\n21537=>21252,\n21551=>21253,\n21572=>21254,\n21575=>21255,\n21583=>21256,\n21598=>21257,\n21604=>21258,\n21607=>21259,\n21609=>21260,\n21613=>21261,\n21614=>21262,\n21633=>21263,\n21635=>21264,\n21637=>21265,\n21641=>21266,\n21649=>21267,\n21663=>21268,\n21706=>21269,\n21728=>21270,\n21750=>21271,\n21758=>21272,\n21772=>21273,\n21773=>21274,\n21810=>21275,\n21819=>21276,\n21821=>21277,\n21833=>21278,\n21837=>21279,\n21848=>21280,\n21850=>21281,\n21851=>21282,\n21887=>21283,\n21907=>21284,\n21911=>21285,\n21923=>21286,\n21953=>21287,\n21963=>21288,\n21975=>21289,\n21976=>21290,\n21982=>21291,\n22015=>21292,\n22026=>21294,\n22041=>21295,\n22067=>21296,\n22076=>21297,\n22081=>21298,\n22083=>21299,\n22084=>21300,\n22086=>21301,\n22113=>21302,\n22114=>21303,\n22115=>21304,\n22133=>21305,\n22148=>21306,\n22155=>21307,\n22183=>21308,\n22187=>21309,\n22206=>21310,\n22219=>21311,\n22224=>21312,\n22236=>21313,\n22245=>21314,\n22246=>21315,\n22247=>21316,\n22273=>21317,\n22274=>21318,\n22289=>21319,\n22304=>21320,\n22306=>21321,\n22308=>21322,\n22309=>21323,\n22314=>21324,\n22335=>21325,\n22354=>21326,\n22370=>21327,\n22375=>21328,\n22382=>21329,\n22385=>21330,\n22393=>21331,\n22398=>21332,\n22401=>21333,\n22420=>21334,\n22425=>21335,\n22431=>21336,\n22433=>21337,\n22421=>21338,\n22439=>21339,\n22441=>21340,\n22461=>21341,\n22493=>21342,\n22505=>21343,\n22526=>21344,\n22531=>21345,\n22536=>21346,\n22497=>21347,\n22540=>21348,\n22555=>21349,\n22559=>21350,\n22573=>21351,\n22591=>21352,\n22608=>21353,\n22613=>21354,\n22632=>21355,\n22648=>21356,\n22663=>21357,\n22664=>21358,\n22668=>21359,\n22678=>21360,\n22688=>21361,\n22689=>21362,\n22690=>21363,\n22694=>21364,\n22724=>21365,\n22722=>21366,\n22728=>21367,\n22742=>21368,\n22749=>21369,\n22753=>21370,\n22802=>21372,\n22803=>21373,\n22813=>21374,\n22817=>21375,\n22824=>21376,\n22832=>21377,\n22835=>21378,\n22837=>21379,\n22838=>21380,\n22847=>21381,\n22851=>21382,\n22866=>21383,\n22878=>21384,\n22891=>21385,\n22895=>21386,\n22898=>21387,\n22907=>21388,\n22924=>21389,\n22926=>21390,\n22933=>21391,\n22951=>21392,\n22957=>21393,\n22960=>21394,\n22967=>21395,\n22977=>21396,\n22980=>21397,\n23023=>21398,\n23026=>21399,\n23028=>21400,\n23031=>21401,\n23040=>21402,\n23054=>21403,\n23058=>21404,\n23070=>21405,\n23076=>21406,\n23080=>21407,\n23082=>21408,\n23088=>21409,\n23108=>21410,\n23109=>21411,\n23112=>21412,\n23116=>21413,\n23120=>21414,\n23134=>21415,\n23163=>21416,\n23184=>21417,\n23187=>21418,\n23190=>21419,\n23193=>21420,\n23227=>21421,\n23238=>21422,\n23240=>21423,\n23247=>21424,\n23293=>21425,\n23297=>21426,\n23371=>21427,\n23390=>21428,\n23406=>21429,\n23430=>21430,\n23438=>21431,\n23440=>21432,\n23441=>21433,\n23444=>21434,\n23464=>21435,\n23465=>21436,\n23469=>21437,\n23471=>21438,\n23473=>21439,\n23474=>21440,\n23482=>21441,\n23484=>21442,\n23489=>21443,\n23501=>21444,\n23503=>21445,\n23513=>21446,\n23514=>21447,\n23535=>21448,\n23540=>21449,\n23564=>21450,\n23575=>21451,\n23590=>21452,\n23598=>21453,\n23602=>21454,\n23605=>21455,\n23642=>21456,\n23668=>21457,\n23669=>21458,\n23675=>21459,\n23677=>21460,\n23687=>21461,\n23698=>21462,\n23709=>21463,\n23730=>21464,\n23732=>21465,\n23767=>21466,\n23790=>21467,\n23793=>21468,\n23794=>21469,\n23826=>21470,\n23843=>21471,\n23871=>21472,\n23880=>21473,\n23893=>21474,\n23889=>21475,\n23903=>21476,\n23904=>21477,\n23906=>21478,\n23908=>21479,\n23929=>21480,\n23930=>21481,\n23935=>21482,\n23946=>21483,\n23955=>21484,\n23957=>21485,\n23963=>21486,\n23967=>21487,\n23979=>21488,\n24003=>21489,\n24014=>21490,\n24025=>21491,\n24071=>21492,\n24077=>21493,\n24096=>21494,\n24139=>21495,\n24144=>21496,\n24145=>21497,\n24156=>21498,\n24176=>21499,\n24206=>21500,\n24226=>21501,\n24228=>21502,\n24241=>21503,\n24268=>21504,\n24270=>21505,\n24284=>21506,\n24286=>21507,\n24293=>21508,\n24299=>21509,\n24326=>21510,\n24345=>21511,\n24356=>21512,\n24363=>21513,\n24364=>21514,\n24366=>21515,\n24368=>21516,\n24383=>21517,\n24388=>21518,\n24411=>21519,\n24416=>21520,\n24431=>21521,\n24436=>21522,\n24437=>21523,\n24440=>21524,\n24442=>21525,\n24461=>21526,\n24470=>21527,\n24477=>21528,\n24491=>21529,\n24496=>21530,\n24497=>21531,\n24520=>21532,\n24528=>21533,\n24529=>21534,\n24552=>21535,\n24556=>21536,\n24562=>21537,\n24566=>21538,\n24570=>21539,\n24586=>21540,\n24595=>21541,\n24607=>21542,\n24621=>21543,\n24640=>21544,\n24648=>21545,\n24657=>21546,\n24662=>21547,\n24663=>21548,\n24689=>21549,\n24702=>21550,\n24706=>21551,\n24710=>21552,\n24712=>21553,\n24718=>21554,\n24721=>21555,\n24723=>21556,\n24728=>21557,\n24738=>21559,\n24741=>21560,\n24759=>21561,\n24770=>21562,\n24777=>21563,\n24778=>21564,\n24782=>21565,\n24783=>21566,\n24802=>21567,\n24805=>21568,\n24828=>21569,\n24834=>21570,\n24839=>21571,\n24844=>21572,\n24855=>21573,\n24866=>21574,\n24881=>21575,\n24885=>21576,\n24889=>21577,\n24901=>21578,\n24905=>21579,\n24940=>21580,\n24946=>21581,\n24952=>21582,\n24960=>21583,\n24961=>21584,\n24963=>21585,\n24964=>21586,\n24971=>21587,\n24988=>21588,\n24992=>21589,\n25002=>21590,\n25024=>21591,\n25025=>21592,\n25038=>21593,\n25039=>21594,\n25054=>21595,\n25057=>21596,\n25063=>21597,\n25065=>21598,\n25068=>21599,\n25069=>21600,\n25071=>21601,\n25089=>21602,\n25091=>21603,\n25116=>21604,\n25120=>21605,\n25127=>21606,\n25131=>21607,\n25154=>21608,\n25156=>21609,\n25168=>21610,\n25172=>21611,\n25180=>21612,\n25213=>21613,\n25229=>21614,\n25230=>21615,\n25231=>21616,\n25267=>21617,\n25270=>21618,\n25271=>21619,\n25274=>21620,\n25278=>21621,\n25279=>21622,\n25294=>21623,\n25322=>21624,\n25330=>21625,\n25348=>21626,\n25355=>21627,\n25363=>21628,\n25385=>21629,\n25389=>21630,\n25418=>21631,\n25426=>21632,\n25428=>21633,\n25432=>21634,\n25435=>21635,\n25446=>21636,\n25453=>21637,\n25464=>21638,\n25493=>21639,\n25498=>21640,\n25508=>21641,\n25510=>21642,\n25517=>21643,\n25537=>21644,\n25541=>21645,\n25544=>21646,\n25550=>21647,\n25555=>21648,\n25587=>21649,\n25610=>21650,\n25648=>21651,\n25675=>21652,\n25679=>21653,\n25683=>21654,\n25692=>21655,\n25697=>21656,\n25699=>21657,\n25733=>21658,\n25743=>21659,\n25755=>21660,\n25761=>21661,\n25763=>21662,\n25766=>21663,\n25768=>21664,\n25789=>21665,\n25801=>21666,\n25809=>21667,\n25833=>21668,\n25834=>21669,\n25845=>21670,\n25857=>21671,\n25864=>21672,\n25865=>21673,\n25866=>21674,\n25875=>21675,\n25894=>21676,\n25905=>21677,\n25914=>21678,\n25916=>21679,\n25917=>21680,\n25923=>21681,\n25936=>21682,\n25938=>21683,\n25951=>21684,\n25981=>21685,\n26008=>21686,\n26016=>21687,\n26019=>21688,\n26022=>21689,\n26030=>21690,\n26035=>21691,\n26070=>21692,\n26072=>21693,\n26100=>21695,\n26101=>21696,\n26110=>21697,\n26111=>21698,\n26125=>21699,\n26129=>21700,\n26130=>21701,\n26134=>21702,\n26141=>21703,\n26147=>21704,\n26150=>21705,\n26153=>21706,\n26169=>21707,\n26167=>21708,\n26176=>21709,\n26182=>21710,\n26186=>21711,\n26200=>21712,\n26208=>21713,\n26229=>21714,\n26239=>21715,\n26233=>21716,\n26236=>21717,\n26266=>21718,\n26267=>21719,\n26268=>21720,\n26271=>21721,\n26306=>21723,\n26307=>21724,\n26316=>21725,\n26318=>21726,\n26324=>21727,\n26335=>21728,\n26347=>21729,\n26350=>21730,\n26375=>21731,\n26396=>21732,\n26400=>21733,\n26402=>21734,\n26430=>21735,\n26437=>21736,\n26476=>21737,\n26500=>21738,\n26510=>21739,\n26518=>21740,\n26521=>21741,\n26556=>21742,\n26557=>21743,\n26562=>21744,\n26565=>21745,\n26569=>21746,\n26588=>21747,\n26593=>21748,\n26598=>21749,\n26610=>21750,\n26614=>21751,\n26644=>21752,\n26649=>21753,\n26663=>21754,\n26671=>21755,\n26687=>21756,\n26698=>21757,\n26712=>21758,\n26735=>21759,\n26736=>21760,\n26737=>21761,\n26745=>21762,\n26747=>21763,\n26760=>21764,\n26785=>21765,\n26793=>21766,\n26798=>21767,\n26833=>21768,\n26835=>21769,\n26844=>21770,\n26845=>21771,\n26858=>21772,\n26870=>21773,\n26877=>21774,\n26886=>21775,\n26889=>21776,\n26896=>21777,\n26902=>21778,\n26929=>21779,\n26949=>21780,\n26958=>21781,\n26982=>21782,\n26992=>21783,\n26993=>21784,\n27003=>21785,\n27021=>21786,\n27041=>21787,\n27064=>21788,\n27077=>21789,\n27080=>21790,\n27136=>21792,\n27139=>21793,\n27168=>21794,\n27172=>21795,\n27191=>21796,\n27242=>21798,\n27265=>21799,\n27270=>21800,\n27271=>21801,\n27291=>21802,\n27312=>21803,\n27313=>21804,\n27316=>21805,\n27326=>21806,\n27327=>21807,\n27340=>21808,\n27349=>21809,\n27350=>21810,\n27376=>21811,\n27388=>21812,\n27394=>21813,\n27398=>21814,\n27399=>21815,\n27401=>21816,\n27432=>21817,\n27435=>21818,\n27446=>21819,\n27469=>21820,\n27474=>21821,\n27485=>21822,\n27499=>21823,\n27502=>21824,\n27504=>21825,\n27525=>21826,\n27543=>21827,\n27551=>21828,\n27552=>21829,\n27554=>21830,\n27555=>21831,\n27560=>21832,\n27564=>21833,\n27576=>21834,\n27577=>21835,\n27587=>21836,\n27588=>21837,\n27619=>21838,\n27666=>21839,\n27673=>21840,\n27679=>21841,\n27686=>21842,\n27687=>21843,\n27688=>21844,\n27694=>21845,\n27707=>21846,\n27723=>21847,\n27727=>21848,\n27755=>21849,\n27768=>21850,\n27783=>21851,\n27807=>21852,\n27824=>21853,\n27826=>21854,\n27853=>21855,\n27855=>21856,\n27857=>21857,\n27879=>21858,\n27890=>21859,\n27892=>21860,\n27911=>21861,\n27919=>21862,\n27923=>21863,\n27930=>21864,\n27944=>21865,\n27999=>21866,\n28007=>21867,\n28050=>21868,\n28055=>21869,\n28087=>21870,\n28093=>21871,\n28128=>21872,\n28130=>21873,\n28133=>21874,\n28143=>21875,\n28148=>21876,\n28160=>21877,\n28164=>21878,\n28219=>21879,\n28242=>21880,\n28253=>21881,\n28258=>21882,\n28264=>21883,\n28301=>21884,\n28313=>21885,\n28320=>21886,\n28333=>21887,\n28334=>21888,\n28339=>21889,\n28347=>21890,\n28352=>21891,\n28360=>21892,\n28365=>21893,\n28367=>21894,\n28397=>21895,\n28398=>21896,\n28420=>21897,\n28424=>21898,\n28429=>21899,\n28438=>21900,\n28443=>21901,\n28475=>21902,\n28461=>21903,\n28495=>21904,\n28499=>21905,\n28509=>21906,\n28524=>21907,\n28547=>21908,\n28563=>21909,\n28582=>21910,\n28592=>21911,\n28613=>21912,\n28648=>21913,\n28669=>21914,\n28695=>21915,\n28719=>21916,\n28724=>21917,\n28727=>21918,\n28740=>21919,\n28744=>21920,\n28757=>21921,\n28820=>21922,\n28822=>21923,\n28827=>21924,\n28852=>21925,\n28922=>21926,\n28933=>21927,\n28939=>21928,\n28973=>21929,\n28984=>21930,\n28993=>21931,\n29003=>21932,\n29015=>21934,\n29018=>21935,\n29068=>21936,\n29082=>21937,\n29104=>21938,\n29119=>21939,\n29120=>21940,\n29132=>21941,\n29146=>21942,\n29176=>21943,\n29192=>21944,\n29193=>21945,\n29203=>21946,\n29210=>21947,\n29220=>21948,\n29231=>21949,\n29253=>21950,\n29262=>21951,\n29278=>21952,\n29291=>21953,\n29297=>21954,\n29307=>21955,\n29308=>21956,\n29321=>21957,\n29331=>21958,\n29352=>21959,\n29397=>21960,\n29398=>21961,\n29400=>21962,\n29407=>21963,\n29438=>21964,\n29453=>21965,\n29459=>21966,\n29490=>21967,\n29493=>21968,\n29526=>21969,\n29533=>21970,\n29534=>21971,\n29535=>21972,\n29536=>21973,\n29545=>21974,\n29561=>21975,\n29568=>21976,\n29582=>21977,\n29584=>21978,\n29587=>21979,\n29591=>21980,\n29610=>21981,\n29613=>21982,\n29638=>21983,\n29644=>21984,\n29651=>21985,\n29661=>21986,\n29670=>21987,\n29687=>21988,\n29691=>21989,\n29695=>21990,\n29696=>21991,\n29713=>21992,\n29741=>21993,\n29799=>21994,\n29800=>21995,\n29806=>21996,\n29839=>21997,\n29841=>21998,\n29850=>21999,\n29870=>22000,\n29873=>22001,\n29874=>22002,\n29900=>22003,\n29904=>22004,\n29907=>22005,\n29915=>22007,\n29928=>22008,\n29930=>22009,\n29948=>22011,\n29958=>22012,\n29970=>22013,\n29991=>22014,\n29993=>22015,\n30006=>22016,\n30009=>22017,\n30019=>22018,\n30023=>22019,\n30039=>22020,\n30047=>22021,\n30049=>22022,\n30075=>22023,\n30076=>22024,\n30085=>22025,\n30101=>22026,\n30108=>22027,\n30138=>22028,\n30226=>22029,\n30243=>22030,\n30249=>22031,\n30265=>22032,\n30266=>22033,\n30272=>22034,\n30276=>22035,\n30297=>22036,\n30341=>22037,\n30348=>22038,\n30349=>22039,\n30367=>22040,\n30370=>22041,\n30371=>22042,\n30401=>22043,\n30411=>22044,\n30432=>22046,\n30454=>22047,\n30470=>22048,\n30482=>22049,\n30484=>22050,\n30485=>22051,\n30492=>22052,\n30510=>22053,\n30525=>22054,\n30530=>22055,\n30546=>22056,\n30550=>22057,\n30551=>22058,\n30576=>22059,\n30579=>22060,\n30580=>22061,\n30638=>22064,\n30641=>22065,\n30645=>22066,\n30659=>22067,\n30674=>22068,\n30677=>22069,\n30712=>22070,\n30734=>22071,\n30737=>22072,\n30749=>22073,\n30755=>22074,\n30788=>22075,\n30792=>22076,\n30796=>22077,\n30802=>22078,\n30814=>22079,\n30816=>22080,\n30817=>22081,\n30819=>22082,\n30863=>22083,\n30888=>22084,\n30892=>22085,\n30898=>22086,\n30909=>22087,\n30911=>22088,\n30919=>22089,\n30930=>22090,\n30934=>22091,\n30939=>22092,\n30943=>22093,\n30954=>22094,\n30963=>22095,\n30966=>22096,\n30975=>22097,\n30982=>22098,\n31002=>22099,\n31006=>22100,\n31008=>22101,\n31017=>22102,\n31021=>22103,\n31029=>22104,\n31044=>22105,\n31051=>22106,\n31055=>22107,\n31057=>22108,\n31081=>22109,\n31099=>22110,\n31102=>22111,\n31116=>22112,\n31121=>22113,\n31123=>22114,\n31132=>22115,\n31144=>22116,\n31151=>22117,\n31183=>22118,\n31197=>22119,\n31200=>22120,\n31202=>22121,\n31205=>22122,\n31217=>22123,\n31224=>22124,\n31228=>22125,\n31239=>22126,\n31265=>22127,\n31271=>22128,\n31275=>22129,\n31279=>22130,\n31284=>22131,\n31285=>22132,\n31304=>22133,\n31317=>22134,\n31333=>22135,\n31358=>22136,\n31371=>22137,\n31377=>22138,\n31390=>22139,\n31433=>22140,\n31451=>22141,\n31465=>22142,\n31468=>22143,\n31473=>22144,\n31483=>22145,\n31519=>22146,\n31523=>22147,\n31529=>22148,\n31536=>22149,\n31540=>22150,\n31551=>22151,\n31552=>22152,\n31594=>22153,\n31620=>22154,\n31625=>22155,\n31630=>22156,\n31638=>22157,\n31653=>22158,\n31666=>22159,\n31670=>22160,\n31674=>22161,\n31675=>22162,\n31677=>22163,\n31682=>22164,\n31688=>22165,\n31707=>22166,\n31732=>22167,\n31733=>22168,\n31737=>22169,\n31738=>22170,\n31746=>22171,\n31748=>22172,\n31750=>22173,\n31756=>22174,\n31769=>22175,\n31771=>22176,\n31781=>22177,\n31788=>22178,\n31796=>22179,\n31801=>22180,\n31802=>22181,\n31814=>22182,\n31829=>22183,\n31834=>22184,\n31843=>22185,\n31868=>22187,\n31878=>22188,\n31920=>22189,\n31931=>22190,\n31951=>22191,\n31956=>22192,\n31977=>22193,\n32015=>22194,\n32017=>22195,\n32022=>22196,\n32038=>22197,\n32042=>22198,\n32045=>22199,\n32081=>22200,\n32087=>22201,\n32101=>22202,\n32103=>22203,\n32120=>22204,\n32123=>22205,\n32129=>22206,\n32150=>22207,\n32195=>22208,\n32196=>22209,\n32197=>22210,\n32198=>22211,\n32205=>22212,\n32206=>22213,\n32256=>22214,\n32226=>22215,\n32234=>22216,\n32237=>22217,\n32250=>22218,\n32284=>22219,\n32301=>22220,\n32307=>22221,\n32319=>22222,\n32334=>22223,\n32336=>22224,\n32344=>22225,\n32351=>22226,\n32357=>22227,\n32405=>22228,\n32413=>22229,\n32414=>22230,\n32575=>22231,\n32604=>22232,\n32614=>22233,\n32653=>22235,\n32655=>22236,\n32678=>22237,\n32682=>22238,\n32692=>22239,\n32700=>22240,\n32704=>22241,\n32712=>22242,\n32744=>22243,\n32783=>22244,\n32787=>22245,\n32797=>22246,\n32799=>22247,\n32800=>22248,\n32814=>22249,\n32820=>22250,\n32830=>22251,\n32832=>22252,\n32836=>22253,\n32868=>22254,\n32877=>22255,\n32897=>22256,\n32953=>22257,\n32968=>22258,\n32973=>22259,\n32978=>22260,\n33006=>22261,\n33010=>22262,\n33014=>22263,\n33017=>22264,\n33035=>22265,\n33052=>22266,\n33056=>22267,\n33084=>22268,\n33093=>22269,\n33095=>22270,\n33106=>22271,\n33121=>22272,\n33143=>22273,\n33158=>22274,\n33166=>22275,\n33174=>22276,\n33186=>22277,\n33198=>22278,\n33221=>22279,\n33230=>22280,\n33259=>22281,\n33264=>22282,\n33265=>22283,\n33266=>22284,\n33269=>22285,\n33272=>22286,\n33295=>22288,\n33309=>22289,\n33320=>22290,\n33347=>22291,\n33358=>22292,\n33361=>22293,\n33366=>22294,\n33383=>22295,\n33403=>22296,\n33408=>22297,\n33409=>22298,\n33415=>22299,\n33428=>22300,\n33430=>22301,\n33432=>22302,\n33434=>22303,\n33435=>22304,\n33440=>22305,\n33498=>22306,\n33504=>22307,\n33508=>22308,\n33517=>22309,\n33546=>22310,\n33547=>22311,\n33566=>22312,\n33567=>22313,\n33569=>22314,\n33580=>22315,\n33582=>22316,\n33587=>22317,\n33591=>22318,\n33597=>22319,\n33602=>22320,\n33613=>22321,\n33614=>22322,\n33648=>22323,\n33664=>22324,\n33666=>22325,\n33668=>22326,\n33689=>22327,\n33692=>22328,\n33702=>22329,\n33708=>22330,\n33726=>22331,\n33619=>22332,\n33768=>22333,\n33817=>22334,\n33709=>22335,\n33839=>22336,\n33861=>22337,\n33863=>22338,\n33869=>22339,\n33878=>22340,\n33888=>22342,\n33892=>22343,\n33895=>22344,\n33898=>22345,\n33908=>22346,\n33917=>22347,\n33938=>22348,\n33941=>22349,\n33961=>22350,\n33962=>22351,\n33991=>22352,\n33992=>22353,\n33996=>22354,\n34034=>22355,\n34039=>22356,\n34050=>22357,\n34051=>22358,\n34055=>22359,\n34062=>22360,\n34064=>22361,\n34076=>22362,\n34082=>22363,\n34087=>22364,\n34090=>22365,\n34099=>22366,\n34102=>22367,\n34111=>22368,\n34128=>22369,\n34130=>22370,\n34140=>22371,\n34143=>22373,\n34144=>22374,\n34169=>22375,\n34185=>22376,\n34187=>22377,\n34208=>22378,\n34213=>22379,\n34215=>22380,\n34228=>22381,\n34230=>22382,\n34232=>22383,\n34237=>22384,\n34238=>22385,\n34239=>22386,\n34242=>22387,\n34266=>22388,\n34272=>22389,\n34280=>22390,\n34291=>22391,\n34300=>22392,\n34317=>22393,\n34318=>22394,\n34329=>22395,\n34331=>22396,\n34358=>22397,\n34362=>22398,\n34365=>22399,\n34392=>22400,\n34393=>22401,\n34397=>22402,\n34400=>22403,\n34401=>22404,\n34404=>22405,\n34409=>22406,\n34422=>22407,\n34454=>22408,\n34458=>22409,\n34465=>22410,\n34470=>22411,\n34477=>22412,\n34484=>22413,\n34485=>22414,\n34487=>22415,\n34489=>22416,\n34495=>22417,\n34501=>22418,\n34514=>22419,\n34522=>22420,\n34524=>22421,\n34528=>22422,\n34533=>22423,\n34535=>22424,\n34440=>22425,\n34564=>22426,\n34575=>22427,\n34607=>22428,\n34610=>22429,\n34620=>22430,\n34621=>22431,\n34629=>22432,\n34637=>22433,\n34657=>22434,\n34671=>22435,\n34691=>22436,\n34692=>22437,\n34693=>22438,\n34694=>22439,\n34704=>22440,\n34709=>22441,\n34737=>22443,\n34760=>22444,\n34762=>22445,\n34773=>22446,\n34777=>22447,\n34780=>22448,\n34786=>22449,\n34788=>22450,\n34801=>22451,\n34803=>22452,\n34808=>22453,\n34810=>22454,\n34815=>22455,\n34825=>22456,\n34841=>22457,\n34834=>22458,\n34842=>22459,\n34846=>22460,\n34864=>22461,\n34869=>22462,\n34881=>22463,\n34883=>22464,\n34888=>22465,\n34889=>22466,\n34897=>22468,\n34908=>22469,\n34912=>22470,\n34929=>22471,\n34937=>22472,\n34939=>22473,\n34944=>22474,\n34975=>22475,\n34984=>22476,\n35002=>22477,\n35019=>22478,\n35020=>22479,\n35038=>22480,\n35047=>22481,\n35063=>22482,\n35085=>22483,\n35093=>22484,\n35094=>22485,\n35104=>22486,\n35112=>22487,\n35121=>22488,\n35130=>22489,\n35142=>22490,\n35151=>22491,\n35154=>22492,\n35159=>22493,\n35163=>22494,\n35169=>22495,\n35171=>22496,\n35182=>22497,\n35187=>22498,\n35189=>22499,\n35194=>22500,\n35197=>22501,\n35213=>22502,\n35221=>22503,\n35227=>22504,\n35228=>22505,\n35232=>22506,\n35252=>22507,\n35254=>22508,\n35287=>22509,\n35305=>22510,\n35309=>22511,\n35321=>22512,\n35332=>22513,\n35333=>22514,\n35358=>22515,\n35360=>22516,\n35364=>22517,\n35366=>22518,\n35371=>22519,\n35372=>22520,\n35375=>22521,\n35389=>22522,\n35392=>22523,\n35395=>22524,\n35411=>22525,\n35414=>22526,\n35420=>22527,\n35429=>22528,\n35446=>22529,\n35447=>22530,\n35450=>22531,\n35451=>22532,\n35456=>22533,\n35459=>22534,\n35467=>22535,\n35471=>22536,\n35474=>22537,\n35479=>22538,\n35481=>22539,\n35487=>22540,\n35497=>22541,\n35503=>22542,\n35507=>22543,\n35515=>22544,\n35523=>22545,\n35526=>22546,\n35528=>22547,\n35530=>22548,\n35539=>22549,\n35540=>22550,\n35541=>22551,\n35568=>22552,\n35583=>22553,\n35595=>22554,\n35614=>22555,\n35632=>22556,\n35644=>22557,\n35650=>22558,\n35656=>22559,\n35661=>22560,\n35683=>22561,\n35705=>22562,\n35716=>22563,\n35725=>22564,\n35727=>22565,\n35896=>22566,\n35902=>22567,\n35921=>22568,\n35928=>22569,\n35931=>22570,\n35933=>22571,\n35929=>22572,\n35939=>22573,\n35940=>22574,\n35942=>22575,\n35957=>22576,\n35958=>22577,\n35966=>22578,\n35974=>22579,\n35975=>22580,\n35979=>22581,\n35984=>22582,\n35996=>22584,\n36025=>22585,\n36038=>22586,\n36043=>22587,\n36047=>22588,\n36061=>22589,\n36072=>22590,\n36079=>22591,\n36082=>22592,\n36095=>22593,\n36197=>22594,\n36223=>22595,\n36226=>22596,\n36232=>22597,\n36240=>22598,\n36254=>22599,\n36256=>22600,\n36268=>22601,\n36277=>22602,\n36279=>22603,\n36281=>22604,\n36283=>22605,\n36288=>22606,\n36293=>22607,\n36295=>22608,\n36298=>22609,\n36308=>22610,\n36325=>22611,\n36336=>22612,\n36284=>22613,\n36356=>22614,\n36357=>22615,\n36369=>22616,\n36403=>22617,\n36407=>22618,\n36408=>22619,\n36430=>22620,\n36443=>22621,\n36445=>22622,\n36446=>22623,\n36473=>22624,\n36482=>22625,\n36483=>22626,\n36507=>22627,\n36509=>22628,\n36514=>22629,\n36538=>22630,\n36545=>22631,\n36547=>22632,\n36548=>22633,\n36551=>22634,\n36572=>22635,\n36590=>22636,\n36593=>22637,\n36599=>22638,\n36589=>22639,\n36610=>22640,\n36623=>22641,\n36624=>22642,\n36630=>22643,\n36640=>22644,\n36641=>22645,\n36643=>22646,\n36648=>22647,\n36654=>22648,\n36660=>22649,\n36663=>22650,\n36673=>22651,\n36687=>22652,\n36690=>22653,\n36691=>22654,\n36701=>22655,\n36702=>22656,\n36709=>22657,\n36765=>22658,\n36792=>22659,\n36798=>22660,\n36800=>22661,\n36811=>22662,\n36816=>22663,\n36818=>22664,\n36835=>22665,\n36862=>22666,\n36888=>22667,\n36904=>22668,\n36905=>22669,\n36906=>22670,\n36915=>22671,\n36916=>22672,\n36927=>22673,\n36962=>22674,\n36966=>22675,\n36972=>22676,\n37006=>22677,\n37029=>22678,\n37068=>22679,\n37077=>22680,\n37080=>22681,\n37081=>22682,\n37093=>22683,\n37074=>22684,\n37128=>22685,\n37133=>22686,\n37136=>22687,\n37146=>22688,\n37152=>22689,\n37161=>22690,\n37166=>22691,\n37174=>22692,\n37180=>22693,\n37187=>22694,\n37199=>22695,\n37203=>22696,\n37229=>22697,\n37243=>22698,\n37249=>22699,\n37254=>22700,\n37267=>22701,\n37268=>22702,\n37272=>22703,\n37281=>22704,\n37286=>22705,\n37311=>22706,\n37331=>22707,\n37332=>22708,\n37337=>22709,\n37353=>22710,\n37354=>22711,\n37359=>22712,\n37369=>22713,\n37373=>22714,\n37380=>22715,\n37381=>22716,\n37388=>22717,\n37394=>22718,\n37395=>22719,\n37400=>22720,\n37404=>22721,\n37405=>22722,\n37412=>22723,\n37413=>22724,\n37414=>22725,\n37422=>22726,\n37423=>22727,\n37424=>22728,\n37429=>22729,\n37430=>22730,\n37438=>22731,\n37446=>22732,\n37453=>22733,\n37464=>22734,\n37468=>22735,\n37469=>22736,\n37481=>22737,\n37486=>22738,\n37487=>22739,\n37488=>22740,\n37493=>22741,\n37497=>22742,\n37499=>22743,\n37514=>22744,\n37522=>22745,\n37536=>22746,\n37540=>22747,\n37541=>22748,\n37544=>22749,\n37558=>22750,\n37560=>22751,\n37562=>22752,\n37565=>22753,\n37575=>22754,\n37581=>22755,\n37592=>22756,\n37596=>22757,\n37597=>22758,\n37601=>22759,\n37603=>22760,\n37608=>22761,\n37612=>22762,\n37614=>22763,\n37616=>22764,\n37632=>22765,\n37640=>22766,\n37660=>22767,\n37668=>22768,\n37674=>22769,\n37684=>22770,\n37687=>22771,\n37712=>22772,\n37717=>22773,\n37726=>22774,\n37735=>22775,\n37737=>22776,\n37743=>22777,\n37748=>22778,\n37750=>22779,\n37754=>22780,\n37757=>22781,\n37760=>22782,\n37761=>22783,\n37773=>22784,\n37778=>22785,\n37781=>22786,\n37784=>22787,\n37798=>22789,\n37800=>22790,\n37803=>22791,\n37812=>22792,\n37813=>22793,\n37814=>22794,\n37828=>22795,\n37829=>22796,\n37833=>22797,\n37835=>22798,\n37837=>22799,\n37843=>22800,\n37849=>22801,\n37879=>22802,\n37889=>22803,\n37896=>22804,\n37909=>22805,\n37919=>22806,\n37935=>22807,\n37949=>22808,\n37955=>22809,\n37977=>22810,\n37980=>22811,\n37983=>22812,\n37985=>22813,\n37992=>22814,\n37998=>22815,\n38020=>22816,\n38019=>22817,\n38270=>22818,\n38276=>22819,\n38301=>22820,\n38302=>22821,\n38330=>22822,\n38361=>22823,\n38365=>22824,\n38367=>22825,\n38430=>22826,\n38434=>22827,\n38437=>22828,\n38438=>22829,\n38455=>22830,\n38457=>22831,\n38458=>22832,\n38482=>22833,\n38486=>22834,\n38487=>22835,\n38510=>22836,\n38524=>22837,\n38526=>22838,\n38545=>22839,\n38559=>22840,\n38566=>22841,\n38602=>22842,\n38623=>22844,\n38650=>22845,\n38661=>22846,\n38682=>22847,\n38685=>22848,\n38730=>22850,\n38744=>22851,\n38775=>22852,\n38776=>22853,\n38779=>22854,\n38784=>22855,\n38793=>22856,\n38807=>22857,\n38840=>22858,\n38844=>22859,\n38847=>22860,\n38852=>22861,\n38853=>22862,\n38855=>22863,\n38858=>22864,\n38862=>22865,\n38864=>22866,\n38871=>22867,\n38877=>22868,\n38884=>22869,\n38903=>22870,\n38904=>22871,\n38906=>22872,\n38937=>22873,\n38940=>22874,\n38944=>22875,\n38959=>22876,\n38965=>22877,\n38980=>22878,\n38986=>22879,\n38993=>22880,\n39018=>22881,\n39086=>22882,\n39116=>22883,\n39142=>22884,\n39158=>22885,\n39175=>22886,\n39199=>22887,\n39202=>22888,\n39206=>22889,\n39211=>22890,\n39220=>22891,\n39225=>22892,\n39239=>22893,\n39257=>22894,\n39259=>22895,\n39323=>22896,\n39325=>22897,\n39327=>22898,\n39344=>22899,\n39346=>22900,\n39349=>22901,\n39379=>22902,\n39386=>22903,\n39388=>22904,\n39399=>22905,\n39402=>22906,\n39403=>22907,\n39404=>22908,\n39412=>22909,\n39413=>22910,\n39421=>22911,\n39422=>22912,\n39428=>22913,\n39435=>22914,\n39454=>22915,\n39458=>22916,\n39475=>22917,\n39477=>22918,\n39495=>22919,\n39499=>22921,\n39508=>22922,\n39517=>22923,\n39594=>22924,\n39596=>22925,\n39598=>22926,\n39602=>22927,\n39604=>22928,\n39611=>22929,\n39615=>22930,\n39624=>22931,\n39639=>22932,\n39643=>22933,\n39652=>22934,\n39655=>22935,\n39660=>22936,\n39666=>22937,\n39667=>22938,\n39669=>22939,\n39674=>22940,\n39677=>22941,\n39679=>22942,\n39680=>22943,\n39684=>22944,\n39685=>22945,\n39707=>22946,\n39718=>22947,\n39735=>22949,\n39737=>22950,\n39738=>22951,\n39756=>22952,\n39766=>22953,\n39767=>22954,\n39771=>22955,\n39777=>22956,\n39786=>22957,\n39789=>22958,\n39790=>22959,\n39800=>22960,\n39807=>22961,\n39813=>22962,\n39815=>22963,\n39817=>22964,\n39819=>22965,\n39821=>22966,\n39828=>22967,\n39834=>22968,\n39849=>22969,\n39863=>22970,\n39868=>22971,\n39888=>22972,\n39929=>22973,\n39951=>22974,\n39953=>22975,\n39966=>22976,\n39974=>22977,\n39976=>22978,\n39997=>22979,\n40003=>22980,\n40014=>22981,\n40030=>22982,\n40059=>22983,\n40183=>22984,\n40185=>22985,\n40220=>22986,\n40239=>22987,\n40243=>22988,\n40244=>22989,\n40250=>22990,\n40252=>22991,\n40261=>22992,\n40275=>22993,\n40276=>22994,\n40293=>22995,\n40323=>22996,\n40326=>22997,\n40334=>22998,\n40338=>22999,\n40339=>23000,\n40341=>23001,\n40343=>23002,\n40344=>23003,\n40362=>23004,\n40366=>23005,\n40394=>23007,\n40404=>23008,\n40405=>23009,\n40414=>23010,\n40430=>23011,\n40432=>23012,\n40446=>23013,\n40462=>23014,\n40464=>23015,\n40465=>23016,\n40466=>23017,\n40470=>23018,\n40583=>23019,\n40590=>23020,\n40591=>23021,\n40598=>23022,\n40600=>23023,\n40622=>23024,\n40627=>23025,\n40646=>23026,\n40648=>23027,\n40651=>23028,\n40661=>23029,\n40684=>23030,\n40685=>23031,\n40689=>23032,\n40693=>23033,\n40696=>23034,\n40721=>23035,\n40726=>23036,\n40730=>23037,\n40735=>23038,\n40753=>23039,\n40754=>23040,\n40764=>23041,\n40767=>23042,\n40771=>23043,\n40772=>23044,\n40775=>23045,\n40790=>23046,\n40798=>23047,\n40814=>23048,\n40819=>23049,\n40826=>23050,\n40829=>23051,\n40847=>23052,\n40849=>23053,\n40850=>23054,\n40854=>23055,\n40865=>23056,\n40867=>23057,\n);\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/uni2cid_ak12.php",
    "content": "<?php\n// unicode to cid conversion table is from\n// ftp://ftp.oreilly.com/pub/examples/nutshell/cjkv/adobe/\n// cid2code.txt in ak12.tar.Z\n$cidinfo['uni2cid'] = array(\n32=>1,\n33=>2,\n34=>3,\n35=>4,\n36=>5,\n37=>6,\n38=>7,\n39=>8,\n40=>9,\n41=>10,\n42=>11,\n43=>12,\n44=>13,\n45=>14,\n46=>15,\n47=>16,\n48=>17,\n49=>18,\n50=>19,\n51=>20,\n52=>21,\n53=>22,\n54=>23,\n55=>24,\n56=>25,\n57=>26,\n58=>27,\n59=>28,\n60=>29,\n61=>30,\n62=>31,\n63=>32,\n64=>33,\n65=>34,\n66=>35,\n67=>36,\n68=>37,\n69=>38,\n70=>39,\n71=>40,\n72=>41,\n73=>42,\n74=>43,\n75=>44,\n76=>45,\n77=>46,\n78=>47,\n79=>48,\n80=>49,\n81=>50,\n82=>51,\n83=>52,\n84=>53,\n85=>54,\n86=>55,\n87=>56,\n88=>57,\n89=>58,\n90=>59,\n91=>60,\n92=>61,\n93=>62,\n94=>63,\n95=>64,\n96=>65,\n97=>66,\n98=>67,\n99=>68,\n100=>69,\n101=>70,\n102=>71,\n103=>72,\n104=>73,\n105=>74,\n106=>75,\n107=>76,\n108=>77,\n109=>78,\n110=>79,\n111=>80,\n112=>81,\n113=>82,\n114=>83,\n115=>84,\n116=>85,\n117=>86,\n118=>87,\n119=>88,\n120=>89,\n121=>90,\n122=>91,\n123=>92,\n124=>93,\n125=>94,\n126=>95,\n8361=>96,\n8208=>97,\n169=>98,\n12644=>101,\n12288=>101,\n12289=>102,\n12290=>103,\n183=>104,\n12539=>104,\n8229=>105,\n8943=>106,\n8230=>106,\n168=>107,\n12291=>108,\n8211=>109,\n8212=>110,\n8214=>111,\n65340=>112,\n65374=>113,\n8216=>114,\n8217=>115,\n8220=>116,\n8221=>117,\n12308=>118,\n12309=>119,\n12296=>120,\n12297=>121,\n12298=>122,\n12299=>123,\n12300=>124,\n12301=>125,\n12302=>126,\n12303=>127,\n12304=>128,\n12305=>129,\n177=>130,\n215=>131,\n247=>132,\n8800=>133,\n8804=>134,\n8805=>135,\n8734=>136,\n8756=>137,\n176=>138,\n8242=>139,\n8243=>140,\n8451=>141,\n8491=>142,\n65504=>143,\n65505=>144,\n65509=>145,\n9794=>146,\n9792=>147,\n8736=>148,\n8869=>149,\n8978=>150,\n8706=>151,\n8711=>152,\n8801=>153,\n8786=>154,\n167=>155,\n8251=>156,\n9734=>157,\n9733=>158,\n9675=>159,\n9679=>160,\n9678=>161,\n9671=>162,\n9670=>163,\n9633=>164,\n9632=>165,\n9651=>166,\n9650=>167,\n9661=>168,\n9660=>169,\n8594=>170,\n8592=>171,\n8593=>172,\n8595=>173,\n8596=>174,\n12307=>175,\n171=>176,\n187=>177,\n8730=>178,\n8765=>179,\n8733=>180,\n8757=>181,\n8747=>182,\n8748=>183,\n8712=>184,\n8715=>185,\n8838=>186,\n8839=>187,\n8834=>188,\n8835=>189,\n8746=>190,\n8745=>191,\n8743=>192,\n8744=>193,\n65506=>194,\n8658=>195,\n8660=>196,\n8704=>197,\n8707=>198,\n180=>199,\n732=>200,\n711=>201,\n728=>202,\n733=>203,\n730=>204,\n729=>205,\n184=>206,\n731=>207,\n161=>208,\n191=>209,\n8758=>210,\n8750=>211,\n8721=>212,\n8719=>213,\n164=>214,\n8457=>215,\n8240=>216,\n9665=>217,\n9664=>218,\n9655=>219,\n9654=>220,\n9828=>221,\n9824=>222,\n9825=>223,\n9829=>224,\n9831=>225,\n9827=>226,\n9673=>227,\n9672=>228,\n9635=>229,\n9680=>230,\n9681=>231,\n9618=>232,\n9636=>233,\n9637=>234,\n9640=>235,\n9639=>236,\n9638=>237,\n9641=>238,\n9832=>239,\n9743=>240,\n9742=>241,\n9756=>242,\n9758=>243,\n182=>244,\n8224=>245,\n8225=>246,\n8597=>247,\n8599=>248,\n8601=>249,\n8598=>250,\n8600=>251,\n9837=>252,\n9833=>253,\n9834=>254,\n9836=>255,\n12927=>256,\n12828=>257,\n8470=>258,\n13255=>259,\n8482=>260,\n13250=>261,\n13272=>262,\n8481=>263,\n65281=>264,\n65282=>265,\n65283=>266,\n65284=>267,\n65285=>268,\n65286=>269,\n65287=>270,\n65288=>271,\n65289=>272,\n65290=>273,\n65291=>274,\n65292=>275,\n65293=>276,\n65294=>277,\n65295=>278,\n65296=>279,\n65297=>280,\n65298=>281,\n65299=>282,\n65300=>283,\n65301=>284,\n65302=>285,\n65303=>286,\n65304=>287,\n65305=>288,\n65306=>289,\n65307=>290,\n65308=>291,\n65309=>292,\n65310=>293,\n65311=>294,\n65312=>295,\n65313=>296,\n65314=>297,\n65315=>298,\n65316=>299,\n65317=>300,\n65318=>301,\n65319=>302,\n65320=>303,\n65321=>304,\n65322=>305,\n65323=>306,\n65324=>307,\n65325=>308,\n65326=>309,\n65327=>310,\n65328=>311,\n65329=>312,\n65330=>313,\n65331=>314,\n65332=>315,\n65333=>316,\n65334=>317,\n65335=>318,\n65336=>319,\n65337=>320,\n65338=>321,\n65339=>322,\n65510=>323,\n65341=>324,\n65342=>325,\n65343=>326,\n65344=>327,\n65345=>328,\n65346=>329,\n65347=>330,\n65348=>331,\n65349=>332,\n65350=>333,\n65351=>334,\n65352=>335,\n65353=>336,\n65354=>337,\n65355=>338,\n65356=>339,\n65357=>340,\n65358=>341,\n65359=>342,\n65360=>343,\n65361=>344,\n65362=>345,\n65363=>346,\n65364=>347,\n65365=>348,\n65366=>349,\n65367=>350,\n65368=>351,\n65369=>352,\n65370=>353,\n65371=>354,\n65372=>355,\n65373=>356,\n65507=>357,\n12593=>358,\n12594=>359,\n12595=>360,\n12596=>361,\n12597=>362,\n12598=>363,\n12599=>364,\n12600=>365,\n12601=>366,\n12602=>367,\n12603=>368,\n12604=>369,\n12605=>370,\n12606=>371,\n12607=>372,\n12608=>373,\n12609=>374,\n12610=>375,\n12611=>376,\n12612=>377,\n12613=>378,\n12614=>379,\n12615=>380,\n12616=>381,\n12617=>382,\n12618=>383,\n12619=>384,\n12620=>385,\n12621=>386,\n12622=>387,\n12623=>388,\n12624=>389,\n12625=>390,\n12626=>391,\n12627=>392,\n12628=>393,\n12629=>394,\n12630=>395,\n12631=>396,\n12632=>397,\n12633=>398,\n12634=>399,\n12635=>400,\n12636=>401,\n12637=>402,\n12638=>403,\n12639=>404,\n12640=>405,\n12641=>406,\n12642=>407,\n12643=>408,\n12645=>409,\n12646=>410,\n12647=>411,\n12648=>412,\n12649=>413,\n12650=>414,\n12651=>415,\n12652=>416,\n12653=>417,\n12654=>418,\n12655=>419,\n12656=>420,\n12657=>421,\n12658=>422,\n12659=>423,\n12660=>424,\n12661=>425,\n12662=>426,\n12663=>427,\n12664=>428,\n12665=>429,\n12666=>430,\n12667=>431,\n12668=>432,\n12669=>433,\n12670=>434,\n12671=>435,\n12672=>436,\n12673=>437,\n12674=>438,\n12675=>439,\n12676=>440,\n12677=>441,\n12678=>442,\n12679=>443,\n12680=>444,\n12681=>445,\n12682=>446,\n12683=>447,\n12684=>448,\n12685=>449,\n12686=>450,\n8560=>451,\n8561=>452,\n8562=>453,\n8563=>454,\n8564=>455,\n8565=>456,\n8566=>457,\n8567=>458,\n8568=>459,\n8569=>460,\n8544=>461,\n8545=>462,\n8546=>463,\n8547=>464,\n8548=>465,\n8549=>466,\n8550=>467,\n8551=>468,\n8552=>469,\n8553=>470,\n913=>471,\n914=>472,\n915=>473,\n916=>474,\n917=>475,\n918=>476,\n919=>477,\n920=>478,\n921=>479,\n922=>480,\n923=>481,\n924=>482,\n925=>483,\n926=>484,\n927=>485,\n928=>486,\n929=>487,\n931=>488,\n932=>489,\n933=>490,\n934=>491,\n935=>492,\n936=>493,\n937=>494,\n945=>495,\n946=>496,\n947=>497,\n948=>498,\n949=>499,\n950=>500,\n951=>501,\n952=>502,\n953=>503,\n954=>504,\n955=>505,\n956=>506,\n957=>507,\n958=>508,\n959=>509,\n960=>510,\n961=>511,\n963=>512,\n964=>513,\n965=>514,\n966=>515,\n967=>516,\n968=>517,\n969=>518,\n9472=>519,\n9474=>520,\n9484=>521,\n9488=>522,\n9496=>523,\n9492=>524,\n9500=>525,\n9516=>526,\n9508=>527,\n9524=>528,\n9532=>529,\n9473=>530,\n9475=>531,\n9487=>532,\n9491=>533,\n9499=>534,\n9495=>535,\n9507=>536,\n9523=>537,\n9515=>538,\n9531=>539,\n9547=>540,\n9504=>541,\n9519=>542,\n9512=>543,\n9527=>544,\n9535=>545,\n9501=>546,\n9520=>547,\n9509=>548,\n9528=>549,\n9538=>550,\n9490=>551,\n9489=>552,\n9498=>553,\n9497=>554,\n9494=>555,\n9493=>556,\n9486=>557,\n9485=>558,\n9502=>559,\n9503=>560,\n9505=>561,\n9506=>562,\n9510=>563,\n9511=>564,\n9513=>565,\n9514=>566,\n9517=>567,\n9518=>568,\n9521=>569,\n9522=>570,\n9525=>571,\n9526=>572,\n9529=>573,\n9530=>574,\n9533=>575,\n9534=>576,\n9536=>577,\n9537=>578,\n9539=>579,\n9540=>580,\n9541=>581,\n9542=>582,\n9543=>583,\n9544=>584,\n9545=>585,\n9546=>586,\n13205=>587,\n13206=>588,\n13207=>589,\n8467=>590,\n13208=>591,\n13252=>592,\n13219=>593,\n13220=>594,\n13221=>595,\n13222=>596,\n13209=>597,\n13210=>598,\n13211=>599,\n13212=>600,\n13213=>601,\n13214=>602,\n13215=>603,\n13216=>604,\n13217=>605,\n13218=>606,\n13258=>607,\n13197=>608,\n13198=>609,\n13199=>610,\n13263=>611,\n13192=>612,\n13193=>613,\n13256=>614,\n13223=>615,\n13224=>616,\n13232=>617,\n13233=>618,\n13234=>619,\n13235=>620,\n13236=>621,\n13237=>622,\n13238=>623,\n13239=>624,\n13240=>625,\n13241=>626,\n13184=>627,\n13185=>628,\n13186=>629,\n13187=>630,\n13188=>631,\n13242=>632,\n13243=>633,\n13244=>634,\n13245=>635,\n13246=>636,\n13247=>637,\n13200=>638,\n13201=>639,\n13202=>640,\n13203=>641,\n13204=>642,\n8486=>643,\n13248=>644,\n13249=>645,\n13194=>646,\n13195=>647,\n13196=>648,\n13270=>649,\n13253=>650,\n13229=>651,\n13230=>652,\n13231=>653,\n13275=>654,\n13225=>655,\n13226=>656,\n13227=>657,\n13228=>658,\n13277=>659,\n13264=>660,\n13267=>661,\n13251=>662,\n13257=>663,\n13276=>664,\n13254=>665,\n198=>666,\n208=>667,\n170=>668,\n294=>669,\n306=>670,\n319=>671,\n321=>672,\n216=>673,\n338=>674,\n186=>675,\n222=>676,\n358=>677,\n330=>678,\n12896=>679,\n12897=>680,\n12898=>681,\n12899=>682,\n12900=>683,\n12901=>684,\n12902=>685,\n12903=>686,\n12904=>687,\n12905=>688,\n12906=>689,\n12907=>690,\n12908=>691,\n12909=>692,\n12910=>693,\n12911=>694,\n12912=>695,\n12913=>696,\n12914=>697,\n12915=>698,\n12916=>699,\n12917=>700,\n12918=>701,\n12919=>702,\n12920=>703,\n12921=>704,\n12922=>705,\n12923=>706,\n9424=>707,\n9425=>708,\n9426=>709,\n9427=>710,\n9428=>711,\n9429=>712,\n9430=>713,\n9431=>714,\n9432=>715,\n9433=>716,\n9434=>717,\n9435=>718,\n9436=>719,\n9437=>720,\n9438=>721,\n9439=>722,\n9440=>723,\n9441=>724,\n9442=>725,\n9443=>726,\n9444=>727,\n9445=>728,\n9446=>729,\n9447=>730,\n9448=>731,\n9449=>732,\n9312=>733,\n9313=>734,\n9314=>735,\n9315=>736,\n9316=>737,\n9317=>738,\n9318=>739,\n9319=>740,\n9320=>741,\n9321=>742,\n9322=>743,\n9323=>744,\n9324=>745,\n9325=>746,\n9326=>747,\n189=>748,\n8531=>749,\n8532=>750,\n188=>751,\n190=>752,\n8539=>753,\n8540=>754,\n8541=>755,\n8542=>756,\n230=>757,\n273=>758,\n240=>759,\n295=>760,\n305=>761,\n307=>762,\n312=>763,\n320=>764,\n322=>765,\n248=>766,\n339=>767,\n223=>768,\n254=>769,\n359=>770,\n331=>771,\n329=>772,\n12800=>773,\n12801=>774,\n12802=>775,\n12803=>776,\n12804=>777,\n12805=>778,\n12806=>779,\n12807=>780,\n12808=>781,\n12809=>782,\n12810=>783,\n12811=>784,\n12812=>785,\n12813=>786,\n12814=>787,\n12815=>788,\n12816=>789,\n12817=>790,\n12818=>791,\n12819=>792,\n12820=>793,\n12821=>794,\n12822=>795,\n12823=>796,\n12824=>797,\n12825=>798,\n12826=>799,\n12827=>800,\n9372=>801,\n9373=>802,\n9374=>803,\n9375=>804,\n9376=>805,\n9377=>806,\n9378=>807,\n9379=>808,\n9380=>809,\n9381=>810,\n9382=>811,\n9383=>812,\n9384=>813,\n9385=>814,\n9386=>815,\n9387=>816,\n9388=>817,\n9389=>818,\n9390=>819,\n9391=>820,\n9392=>821,\n9393=>822,\n9394=>823,\n9395=>824,\n9396=>825,\n9397=>826,\n9332=>827,\n9333=>828,\n9334=>829,\n9335=>830,\n9336=>831,\n9337=>832,\n9338=>833,\n9339=>834,\n9340=>835,\n9341=>836,\n9342=>837,\n9343=>838,\n9344=>839,\n9345=>840,\n9346=>841,\n185=>842,\n178=>843,\n179=>844,\n8308=>845,\n8319=>846,\n8321=>847,\n8322=>848,\n8323=>849,\n8324=>850,\n12353=>851,\n12354=>852,\n12355=>853,\n12356=>854,\n12357=>855,\n12358=>856,\n12359=>857,\n12360=>858,\n12361=>859,\n12362=>860,\n12363=>861,\n12364=>862,\n12365=>863,\n12366=>864,\n12367=>865,\n12368=>866,\n12369=>867,\n12370=>868,\n12371=>869,\n12372=>870,\n12373=>871,\n12374=>872,\n12375=>873,\n12376=>874,\n12377=>875,\n12378=>876,\n12379=>877,\n12380=>878,\n12381=>879,\n12382=>880,\n12383=>881,\n12384=>882,\n12385=>883,\n12386=>884,\n12387=>885,\n12388=>886,\n12389=>887,\n12390=>888,\n12391=>889,\n12392=>890,\n12393=>891,\n12394=>892,\n12395=>893,\n12396=>894,\n12397=>895,\n12398=>896,\n12399=>897,\n12400=>898,\n12401=>899,\n12402=>900,\n12403=>901,\n12404=>902,\n12405=>903,\n12406=>904,\n12407=>905,\n12408=>906,\n12409=>907,\n12410=>908,\n12411=>909,\n12412=>910,\n12413=>911,\n12414=>912,\n12415=>913,\n12416=>914,\n12417=>915,\n12418=>916,\n12419=>917,\n12420=>918,\n12421=>919,\n12422=>920,\n12423=>921,\n12424=>922,\n12425=>923,\n12426=>924,\n12427=>925,\n12428=>926,\n12429=>927,\n12430=>928,\n12431=>929,\n12432=>930,\n12433=>931,\n12434=>932,\n12435=>933,\n12449=>934,\n12450=>935,\n12451=>936,\n12452=>937,\n12453=>938,\n12454=>939,\n12455=>940,\n12456=>941,\n12457=>942,\n12458=>943,\n12459=>944,\n12460=>945,\n12461=>946,\n12462=>947,\n12463=>948,\n12464=>949,\n12465=>950,\n12466=>951,\n12467=>952,\n12468=>953,\n12469=>954,\n12470=>955,\n12471=>956,\n12472=>957,\n12473=>958,\n12474=>959,\n12475=>960,\n12476=>961,\n12477=>962,\n12478=>963,\n12479=>964,\n12480=>965,\n12481=>966,\n12482=>967,\n12483=>968,\n12484=>969,\n12485=>970,\n12486=>971,\n12487=>972,\n12488=>973,\n12489=>974,\n12490=>975,\n12491=>976,\n12492=>977,\n12493=>978,\n12494=>979,\n12495=>980,\n12496=>981,\n12497=>982,\n12498=>983,\n12499=>984,\n12500=>985,\n12501=>986,\n12502=>987,\n12503=>988,\n12504=>989,\n12505=>990,\n12506=>991,\n12507=>992,\n12508=>993,\n12509=>994,\n12510=>995,\n12511=>996,\n12512=>997,\n12513=>998,\n12514=>999,\n12515=>1000,\n12516=>1001,\n12517=>1002,\n12518=>1003,\n12519=>1004,\n12520=>1005,\n12521=>1006,\n12522=>1007,\n12523=>1008,\n12524=>1009,\n12525=>1010,\n12526=>1011,\n12527=>1012,\n12528=>1013,\n12529=>1014,\n12530=>1015,\n12531=>1016,\n12532=>1017,\n12533=>1018,\n12534=>1019,\n1040=>1020,\n1041=>1021,\n1042=>1022,\n1043=>1023,\n1044=>1024,\n1045=>1025,\n1025=>1026,\n1046=>1027,\n1047=>1028,\n1048=>1029,\n1049=>1030,\n1050=>1031,\n1051=>1032,\n1052=>1033,\n1053=>1034,\n1054=>1035,\n1055=>1036,\n1056=>1037,\n1057=>1038,\n1058=>1039,\n1059=>1040,\n1060=>1041,\n1061=>1042,\n1062=>1043,\n1063=>1044,\n1064=>1045,\n1065=>1046,\n1066=>1047,\n1067=>1048,\n1068=>1049,\n1069=>1050,\n1070=>1051,\n1071=>1052,\n1072=>1053,\n1073=>1054,\n1074=>1055,\n1075=>1056,\n1076=>1057,\n1077=>1058,\n1105=>1059,\n1078=>1060,\n1079=>1061,\n1080=>1062,\n1081=>1063,\n1082=>1064,\n1083=>1065,\n1084=>1066,\n1085=>1067,\n1086=>1068,\n1087=>1069,\n1088=>1070,\n1089=>1071,\n1090=>1072,\n1091=>1073,\n1092=>1074,\n1093=>1075,\n1094=>1076,\n1095=>1077,\n1096=>1078,\n1097=>1079,\n1098=>1080,\n1099=>1081,\n1100=>1082,\n1101=>1083,\n1102=>1084,\n1103=>1085,\n44032=>1086,\n44033=>1087,\n44036=>1088,\n44039=>1089,\n44040=>1090,\n44041=>1091,\n44042=>1092,\n44048=>1093,\n44049=>1094,\n44050=>1095,\n44051=>1096,\n44052=>1097,\n44053=>1098,\n44054=>1099,\n44055=>1100,\n44057=>1101,\n44058=>1102,\n44059=>1103,\n44060=>1104,\n44061=>1105,\n44064=>1106,\n44068=>1107,\n44076=>1108,\n44077=>1109,\n44079=>1110,\n44080=>1111,\n44081=>1112,\n44088=>1113,\n44089=>1114,\n44092=>1115,\n44096=>1116,\n44107=>1117,\n44109=>1118,\n44116=>1119,\n44120=>1120,\n44124=>1121,\n44144=>1122,\n44145=>1123,\n44148=>1124,\n44151=>1125,\n44152=>1126,\n44154=>1127,\n44160=>1128,\n44161=>1129,\n44163=>1130,\n44164=>1131,\n44165=>1132,\n44166=>1133,\n44169=>1134,\n44170=>1135,\n44171=>1136,\n44172=>1137,\n44176=>1138,\n44180=>1139,\n44188=>1140,\n44189=>1141,\n44191=>1142,\n44192=>1143,\n44193=>1144,\n44200=>1145,\n44201=>1146,\n44202=>1147,\n44204=>1148,\n44207=>1149,\n44208=>1150,\n44216=>1151,\n44217=>1152,\n44219=>1153,\n44220=>1154,\n44221=>1155,\n44225=>1156,\n44228=>1157,\n44232=>1158,\n44236=>1159,\n44245=>1160,\n44247=>1161,\n44256=>1162,\n44257=>1163,\n44260=>1164,\n44263=>1165,\n44264=>1166,\n44266=>1167,\n44268=>1168,\n44271=>1169,\n44272=>1170,\n44273=>1171,\n44275=>1172,\n44277=>1173,\n44278=>1174,\n44284=>1175,\n44285=>1176,\n44288=>1177,\n44292=>1178,\n44294=>1179,\n44300=>1180,\n44301=>1181,\n44303=>1182,\n44305=>1183,\n44312=>1184,\n44316=>1185,\n44320=>1186,\n44329=>1187,\n44332=>1188,\n44333=>1189,\n44340=>1190,\n44341=>1191,\n44344=>1192,\n44348=>1193,\n44356=>1194,\n44357=>1195,\n44359=>1196,\n44361=>1197,\n44368=>1198,\n44372=>1199,\n44376=>1200,\n44385=>1201,\n44387=>1202,\n44396=>1203,\n44397=>1204,\n44400=>1205,\n44403=>1206,\n44404=>1207,\n44405=>1208,\n44406=>1209,\n44411=>1210,\n44412=>1211,\n44413=>1212,\n44415=>1213,\n44417=>1214,\n44418=>1215,\n44424=>1216,\n44425=>1217,\n44428=>1218,\n44432=>1219,\n44444=>1220,\n44445=>1221,\n44452=>1222,\n44471=>1223,\n44480=>1224,\n44481=>1225,\n44484=>1226,\n44488=>1227,\n44496=>1228,\n44497=>1229,\n44499=>1230,\n44508=>1231,\n44512=>1232,\n44516=>1233,\n44536=>1234,\n44537=>1235,\n44540=>1236,\n44543=>1237,\n44544=>1238,\n44545=>1239,\n44552=>1240,\n44553=>1241,\n44555=>1242,\n44557=>1243,\n44564=>1244,\n44592=>1245,\n44593=>1246,\n44596=>1247,\n44599=>1248,\n44600=>1249,\n44602=>1250,\n44608=>1251,\n44609=>1252,\n44611=>1253,\n44613=>1254,\n44614=>1255,\n44618=>1256,\n44620=>1257,\n44621=>1258,\n44622=>1259,\n44624=>1260,\n44628=>1261,\n44630=>1262,\n44636=>1263,\n44637=>1264,\n44639=>1265,\n44640=>1266,\n44641=>1267,\n44645=>1268,\n44648=>1269,\n44649=>1270,\n44652=>1271,\n44656=>1272,\n44664=>1273,\n44665=>1274,\n44667=>1275,\n44668=>1276,\n44669=>1277,\n44676=>1278,\n44677=>1279,\n44684=>1280,\n44732=>1281,\n44733=>1282,\n44734=>1283,\n44736=>1284,\n44740=>1285,\n44748=>1286,\n44749=>1287,\n44751=>1288,\n44752=>1289,\n44753=>1290,\n44760=>1291,\n44761=>1292,\n44764=>1293,\n44776=>1294,\n44779=>1295,\n44781=>1296,\n44788=>1297,\n44792=>1298,\n44796=>1299,\n44807=>1300,\n44808=>1301,\n44813=>1302,\n44816=>1303,\n44844=>1304,\n44845=>1305,\n44848=>1306,\n44850=>1307,\n44852=>1308,\n44860=>1309,\n44861=>1310,\n44863=>1311,\n44865=>1312,\n44866=>1313,\n44867=>1314,\n44872=>1315,\n44873=>1316,\n44880=>1317,\n44892=>1318,\n44893=>1319,\n44900=>1320,\n44901=>1321,\n44921=>1322,\n44928=>1323,\n44932=>1324,\n44936=>1325,\n44944=>1326,\n44945=>1327,\n44949=>1328,\n44956=>1329,\n44984=>1330,\n44985=>1331,\n44988=>1332,\n44992=>1333,\n44999=>1334,\n45000=>1335,\n45001=>1336,\n45003=>1337,\n45005=>1338,\n45006=>1339,\n45012=>1340,\n45020=>1341,\n45032=>1342,\n45033=>1343,\n45040=>1344,\n45041=>1345,\n45044=>1346,\n45048=>1347,\n45056=>1348,\n45057=>1349,\n45060=>1350,\n45068=>1351,\n45072=>1352,\n45076=>1353,\n45084=>1354,\n45085=>1355,\n45096=>1356,\n45124=>1357,\n45125=>1358,\n45128=>1359,\n45130=>1360,\n45132=>1361,\n45134=>1362,\n45139=>1363,\n45140=>1364,\n45141=>1365,\n45143=>1366,\n45145=>1367,\n45149=>1368,\n45180=>1369,\n45181=>1370,\n45184=>1371,\n45188=>1372,\n45196=>1373,\n45197=>1374,\n45199=>1375,\n45201=>1376,\n45208=>1377,\n45209=>1378,\n45210=>1379,\n45212=>1380,\n45215=>1381,\n45216=>1382,\n45217=>1383,\n45218=>1384,\n45224=>1385,\n45225=>1386,\n45227=>1387,\n45228=>1388,\n45229=>1389,\n45230=>1390,\n45231=>1391,\n45233=>1392,\n45235=>1393,\n45236=>1394,\n45237=>1395,\n45240=>1396,\n45244=>1397,\n45252=>1398,\n45253=>1399,\n45255=>1400,\n45256=>1401,\n45257=>1402,\n45264=>1403,\n45265=>1404,\n45268=>1405,\n45272=>1406,\n45280=>1407,\n45285=>1408,\n45320=>1409,\n45321=>1410,\n45323=>1411,\n45324=>1412,\n45328=>1413,\n45330=>1414,\n45331=>1415,\n45336=>1416,\n45337=>1417,\n45339=>1418,\n45340=>1419,\n45341=>1420,\n45347=>1421,\n45348=>1422,\n45349=>1423,\n45352=>1424,\n45356=>1425,\n45364=>1426,\n45365=>1427,\n45367=>1428,\n45368=>1429,\n45369=>1430,\n45376=>1431,\n45377=>1432,\n45380=>1433,\n45384=>1434,\n45392=>1435,\n45393=>1436,\n45396=>1437,\n45397=>1438,\n45400=>1439,\n45404=>1440,\n45408=>1441,\n45432=>1442,\n45433=>1443,\n45436=>1444,\n45440=>1445,\n45442=>1446,\n45448=>1447,\n45449=>1448,\n45451=>1449,\n45453=>1450,\n45458=>1451,\n45459=>1452,\n45460=>1453,\n45464=>1454,\n45468=>1455,\n45480=>1456,\n45516=>1457,\n45520=>1458,\n45524=>1459,\n45532=>1460,\n45533=>1461,\n45535=>1462,\n45544=>1463,\n45545=>1464,\n45548=>1465,\n45552=>1466,\n45561=>1467,\n45563=>1468,\n45565=>1469,\n45572=>1470,\n45573=>1471,\n45576=>1472,\n45579=>1473,\n45580=>1474,\n45588=>1475,\n45589=>1476,\n45591=>1477,\n45593=>1478,\n45600=>1479,\n45620=>1480,\n45628=>1481,\n45656=>1482,\n45660=>1483,\n45664=>1484,\n45672=>1485,\n45673=>1486,\n45684=>1487,\n45685=>1488,\n45692=>1489,\n45700=>1490,\n45701=>1491,\n45705=>1492,\n45712=>1493,\n45713=>1494,\n45716=>1495,\n45720=>1496,\n45721=>1497,\n45722=>1498,\n45728=>1499,\n45729=>1500,\n45731=>1501,\n45733=>1502,\n45734=>1503,\n45738=>1504,\n45740=>1505,\n45744=>1506,\n45748=>1507,\n45768=>1508,\n45769=>1509,\n45772=>1510,\n45776=>1511,\n45778=>1512,\n45784=>1513,\n45785=>1514,\n45787=>1515,\n45789=>1516,\n45794=>1517,\n45796=>1518,\n45797=>1519,\n45798=>1520,\n45800=>1521,\n45803=>1522,\n45804=>1523,\n45805=>1524,\n45806=>1525,\n45807=>1526,\n45811=>1527,\n45812=>1528,\n45813=>1529,\n45815=>1530,\n45816=>1531,\n45817=>1532,\n45818=>1533,\n45819=>1534,\n45823=>1535,\n45824=>1536,\n45825=>1537,\n45828=>1538,\n45832=>1539,\n45840=>1540,\n45841=>1541,\n45843=>1542,\n45844=>1543,\n45845=>1544,\n45852=>1545,\n45908=>1546,\n45909=>1547,\n45910=>1548,\n45912=>1549,\n45915=>1550,\n45916=>1551,\n45918=>1552,\n45919=>1553,\n45924=>1554,\n45925=>1555,\n45927=>1556,\n45929=>1557,\n45931=>1558,\n45934=>1559,\n45936=>1560,\n45937=>1561,\n45940=>1562,\n45944=>1563,\n45952=>1564,\n45953=>1565,\n45955=>1566,\n45956=>1567,\n45957=>1568,\n45964=>1569,\n45968=>1570,\n45972=>1571,\n45984=>1572,\n45985=>1573,\n45992=>1574,\n45996=>1575,\n46020=>1576,\n46021=>1577,\n46024=>1578,\n46027=>1579,\n46028=>1580,\n46030=>1581,\n46032=>1582,\n46036=>1583,\n46037=>1584,\n46039=>1585,\n46041=>1586,\n46043=>1587,\n46045=>1588,\n46048=>1589,\n46052=>1590,\n46056=>1591,\n46076=>1592,\n46096=>1593,\n46104=>1594,\n46108=>1595,\n46112=>1596,\n46120=>1597,\n46121=>1598,\n46123=>1599,\n46132=>1600,\n46160=>1601,\n46161=>1602,\n46164=>1603,\n46168=>1604,\n46176=>1605,\n46177=>1606,\n46179=>1607,\n46181=>1608,\n46188=>1609,\n46208=>1610,\n46216=>1611,\n46237=>1612,\n46244=>1613,\n46248=>1614,\n46252=>1615,\n46261=>1616,\n46263=>1617,\n46265=>1618,\n46272=>1619,\n46276=>1620,\n46280=>1621,\n46288=>1622,\n46293=>1623,\n46300=>1624,\n46301=>1625,\n46304=>1626,\n46307=>1627,\n46308=>1628,\n46310=>1629,\n46316=>1630,\n46317=>1631,\n46319=>1632,\n46321=>1633,\n46328=>1634,\n46356=>1635,\n46357=>1636,\n46360=>1637,\n46363=>1638,\n46364=>1639,\n46372=>1640,\n46373=>1641,\n46375=>1642,\n46376=>1643,\n46377=>1644,\n46378=>1645,\n46384=>1646,\n46385=>1647,\n46388=>1648,\n46392=>1649,\n46400=>1650,\n46401=>1651,\n46403=>1652,\n46404=>1653,\n46405=>1654,\n46411=>1655,\n46412=>1656,\n46413=>1657,\n46416=>1658,\n46420=>1659,\n46428=>1660,\n46429=>1661,\n46431=>1662,\n46432=>1663,\n46433=>1664,\n46496=>1665,\n46497=>1666,\n46500=>1667,\n46504=>1668,\n46506=>1669,\n46507=>1670,\n46512=>1671,\n46513=>1672,\n46515=>1673,\n46516=>1674,\n46517=>1675,\n46523=>1676,\n46524=>1677,\n46525=>1678,\n46528=>1679,\n46532=>1680,\n46540=>1681,\n46541=>1682,\n46543=>1683,\n46544=>1684,\n46545=>1685,\n46552=>1686,\n46572=>1687,\n46608=>1688,\n46609=>1689,\n46612=>1690,\n46616=>1691,\n46629=>1692,\n46636=>1693,\n46644=>1694,\n46664=>1695,\n46692=>1696,\n46696=>1697,\n46748=>1698,\n46749=>1699,\n46752=>1700,\n46756=>1701,\n46763=>1702,\n46764=>1703,\n46769=>1704,\n46804=>1705,\n46832=>1706,\n46836=>1707,\n46840=>1708,\n46848=>1709,\n46849=>1710,\n46853=>1711,\n46888=>1712,\n46889=>1713,\n46892=>1714,\n46895=>1715,\n46896=>1716,\n46904=>1717,\n46905=>1718,\n46907=>1719,\n46916=>1720,\n46920=>1721,\n46924=>1722,\n46932=>1723,\n46933=>1724,\n46944=>1725,\n46948=>1726,\n46952=>1727,\n46960=>1728,\n46961=>1729,\n46963=>1730,\n46965=>1731,\n46972=>1732,\n46973=>1733,\n46976=>1734,\n46980=>1735,\n46988=>1736,\n46989=>1737,\n46991=>1738,\n46992=>1739,\n46993=>1740,\n46994=>1741,\n46998=>1742,\n46999=>1743,\n47000=>1744,\n47001=>1745,\n47004=>1746,\n47008=>1747,\n47016=>1748,\n47017=>1749,\n47019=>1750,\n47020=>1751,\n47021=>1752,\n47028=>1753,\n47029=>1754,\n47032=>1755,\n47047=>1756,\n47049=>1757,\n47084=>1758,\n47085=>1759,\n47088=>1760,\n47092=>1761,\n47100=>1762,\n47101=>1763,\n47103=>1764,\n47104=>1765,\n47105=>1766,\n47111=>1767,\n47112=>1768,\n47113=>1769,\n47116=>1770,\n47120=>1771,\n47128=>1772,\n47129=>1773,\n47131=>1774,\n47133=>1775,\n47140=>1776,\n47141=>1777,\n47144=>1778,\n47148=>1779,\n47156=>1780,\n47157=>1781,\n47159=>1782,\n47160=>1783,\n47161=>1784,\n47168=>1785,\n47172=>1786,\n47185=>1787,\n47187=>1788,\n47196=>1789,\n47197=>1790,\n47200=>1791,\n47204=>1792,\n47212=>1793,\n47213=>1794,\n47215=>1795,\n47217=>1796,\n47224=>1797,\n47228=>1798,\n47245=>1799,\n47272=>1800,\n47280=>1801,\n47284=>1802,\n47288=>1803,\n47296=>1804,\n47297=>1805,\n47299=>1806,\n47301=>1807,\n47308=>1808,\n47312=>1809,\n47316=>1810,\n47325=>1811,\n47327=>1812,\n47329=>1813,\n47336=>1814,\n47337=>1815,\n47340=>1816,\n47344=>1817,\n47352=>1818,\n47353=>1819,\n47355=>1820,\n47357=>1821,\n47364=>1822,\n47384=>1823,\n47392=>1824,\n47420=>1825,\n47421=>1826,\n47424=>1827,\n47428=>1828,\n47436=>1829,\n47439=>1830,\n47441=>1831,\n47448=>1832,\n47449=>1833,\n47452=>1834,\n47456=>1835,\n47464=>1836,\n47465=>1837,\n47467=>1838,\n47469=>1839,\n47476=>1840,\n47477=>1841,\n47480=>1842,\n47484=>1843,\n47492=>1844,\n47493=>1845,\n47495=>1846,\n47497=>1847,\n47498=>1848,\n47501=>1849,\n47502=>1850,\n47532=>1851,\n47533=>1852,\n47536=>1853,\n47540=>1854,\n47548=>1855,\n47549=>1856,\n47551=>1857,\n47553=>1858,\n47560=>1859,\n47561=>1860,\n47564=>1861,\n47566=>1862,\n47567=>1863,\n47568=>1864,\n47569=>1865,\n47570=>1866,\n47576=>1867,\n47577=>1868,\n47579=>1869,\n47581=>1870,\n47582=>1871,\n47585=>1872,\n47587=>1873,\n47588=>1874,\n47589=>1875,\n47592=>1876,\n47596=>1877,\n47604=>1878,\n47605=>1879,\n47607=>1880,\n47608=>1881,\n47609=>1882,\n47610=>1883,\n47616=>1884,\n47617=>1885,\n47624=>1886,\n47637=>1887,\n47672=>1888,\n47673=>1889,\n47676=>1890,\n47680=>1891,\n47682=>1892,\n47688=>1893,\n47689=>1894,\n47691=>1895,\n47693=>1896,\n47694=>1897,\n47699=>1898,\n47700=>1899,\n47701=>1900,\n47704=>1901,\n47708=>1902,\n47716=>1903,\n47717=>1904,\n47719=>1905,\n47720=>1906,\n47721=>1907,\n47728=>1908,\n47729=>1909,\n47732=>1910,\n47736=>1911,\n47747=>1912,\n47748=>1913,\n47749=>1914,\n47751=>1915,\n47756=>1916,\n47784=>1917,\n47785=>1918,\n47787=>1919,\n47788=>1920,\n47792=>1921,\n47794=>1922,\n47800=>1923,\n47801=>1924,\n47803=>1925,\n47805=>1926,\n47812=>1927,\n47816=>1928,\n47832=>1929,\n47833=>1930,\n47868=>1931,\n47872=>1932,\n47876=>1933,\n47885=>1934,\n47887=>1935,\n47889=>1936,\n47896=>1937,\n47900=>1938,\n47904=>1939,\n47913=>1940,\n47915=>1941,\n47924=>1942,\n47925=>1943,\n47926=>1944,\n47928=>1945,\n47931=>1946,\n47932=>1947,\n47933=>1948,\n47934=>1949,\n47940=>1950,\n47941=>1951,\n47943=>1952,\n47945=>1953,\n47949=>1954,\n47951=>1955,\n47952=>1956,\n47956=>1957,\n47960=>1958,\n47969=>1959,\n47971=>1960,\n47980=>1961,\n48008=>1962,\n48012=>1963,\n48016=>1964,\n48036=>1965,\n48040=>1966,\n48044=>1967,\n48052=>1968,\n48055=>1969,\n48064=>1970,\n48068=>1971,\n48072=>1972,\n48080=>1973,\n48083=>1974,\n48120=>1975,\n48121=>1976,\n48124=>1977,\n48127=>1978,\n48128=>1979,\n48130=>1980,\n48136=>1981,\n48137=>1982,\n48139=>1983,\n48140=>1984,\n48141=>1985,\n48143=>1986,\n48145=>1987,\n48148=>1988,\n48149=>1989,\n48150=>1990,\n48151=>1991,\n48152=>1992,\n48155=>1993,\n48156=>1994,\n48157=>1995,\n48158=>1996,\n48159=>1997,\n48164=>1998,\n48165=>1999,\n48167=>2000,\n48169=>2001,\n48173=>2002,\n48176=>2003,\n48177=>2004,\n48180=>2005,\n48184=>2006,\n48192=>2007,\n48193=>2008,\n48195=>2009,\n48196=>2010,\n48197=>2011,\n48201=>2012,\n48204=>2013,\n48205=>2014,\n48208=>2015,\n48221=>2016,\n48260=>2017,\n48261=>2018,\n48264=>2019,\n48267=>2020,\n48268=>2021,\n48270=>2022,\n48276=>2023,\n48277=>2024,\n48279=>2025,\n48281=>2026,\n48282=>2027,\n48288=>2028,\n48289=>2029,\n48292=>2030,\n48295=>2031,\n48296=>2032,\n48304=>2033,\n48305=>2034,\n48307=>2035,\n48308=>2036,\n48309=>2037,\n48316=>2038,\n48317=>2039,\n48320=>2040,\n48324=>2041,\n48333=>2042,\n48335=>2043,\n48336=>2044,\n48337=>2045,\n48341=>2046,\n48344=>2047,\n48348=>2048,\n48372=>2049,\n48373=>2050,\n48374=>2051,\n48376=>2052,\n48380=>2053,\n48388=>2054,\n48389=>2055,\n48391=>2056,\n48393=>2057,\n48400=>2058,\n48404=>2059,\n48420=>2060,\n48428=>2061,\n48448=>2062,\n48456=>2063,\n48457=>2064,\n48460=>2065,\n48464=>2066,\n48472=>2067,\n48473=>2068,\n48484=>2069,\n48488=>2070,\n48512=>2071,\n48513=>2072,\n48516=>2073,\n48519=>2074,\n48520=>2075,\n48521=>2076,\n48522=>2077,\n48528=>2078,\n48529=>2079,\n48531=>2080,\n48533=>2081,\n48537=>2082,\n48538=>2083,\n48540=>2084,\n48548=>2085,\n48560=>2086,\n48568=>2087,\n48596=>2088,\n48597=>2089,\n48600=>2090,\n48604=>2091,\n48617=>2092,\n48624=>2093,\n48628=>2094,\n48632=>2095,\n48640=>2096,\n48643=>2097,\n48645=>2098,\n48652=>2099,\n48653=>2100,\n48656=>2101,\n48660=>2102,\n48668=>2103,\n48669=>2104,\n48671=>2105,\n48708=>2106,\n48709=>2107,\n48712=>2108,\n48716=>2109,\n48718=>2110,\n48724=>2111,\n48725=>2112,\n48727=>2113,\n48729=>2114,\n48730=>2115,\n48731=>2116,\n48736=>2117,\n48737=>2118,\n48740=>2119,\n48744=>2120,\n48746=>2121,\n48752=>2122,\n48753=>2123,\n48755=>2124,\n48756=>2125,\n48757=>2126,\n48763=>2127,\n48764=>2128,\n48765=>2129,\n48768=>2130,\n48772=>2131,\n48780=>2132,\n48781=>2133,\n48783=>2134,\n48784=>2135,\n48785=>2136,\n48792=>2137,\n48793=>2138,\n48808=>2139,\n48848=>2140,\n48849=>2141,\n48852=>2142,\n48855=>2143,\n48856=>2144,\n48864=>2145,\n48867=>2146,\n48868=>2147,\n48869=>2148,\n48876=>2149,\n48897=>2150,\n48904=>2151,\n48905=>2152,\n48920=>2153,\n48921=>2154,\n48923=>2155,\n48924=>2156,\n48925=>2157,\n48960=>2158,\n48961=>2159,\n48964=>2160,\n48968=>2161,\n48976=>2162,\n48977=>2163,\n48981=>2164,\n49044=>2165,\n49072=>2166,\n49093=>2167,\n49100=>2168,\n49101=>2169,\n49104=>2170,\n49108=>2171,\n49116=>2172,\n49119=>2173,\n49121=>2174,\n49212=>2175,\n49233=>2176,\n49240=>2177,\n49244=>2178,\n49248=>2179,\n49256=>2180,\n49257=>2181,\n49296=>2182,\n49297=>2183,\n49300=>2184,\n49304=>2185,\n49312=>2186,\n49313=>2187,\n49315=>2188,\n49317=>2189,\n49324=>2190,\n49325=>2191,\n49327=>2192,\n49328=>2193,\n49331=>2194,\n49332=>2195,\n49333=>2196,\n49334=>2197,\n49340=>2198,\n49341=>2199,\n49343=>2200,\n49344=>2201,\n49345=>2202,\n49349=>2203,\n49352=>2204,\n49353=>2205,\n49356=>2206,\n49360=>2207,\n49368=>2208,\n49369=>2209,\n49371=>2210,\n49372=>2211,\n49373=>2212,\n49380=>2213,\n49381=>2214,\n49384=>2215,\n49388=>2216,\n49396=>2217,\n49397=>2218,\n49399=>2219,\n49401=>2220,\n49408=>2221,\n49412=>2222,\n49416=>2223,\n49424=>2224,\n49429=>2225,\n49436=>2226,\n49437=>2227,\n49438=>2228,\n49439=>2229,\n49440=>2230,\n49443=>2231,\n49444=>2232,\n49446=>2233,\n49447=>2234,\n49452=>2235,\n49453=>2236,\n49455=>2237,\n49456=>2238,\n49457=>2239,\n49462=>2240,\n49464=>2241,\n49465=>2242,\n49468=>2243,\n49472=>2244,\n49480=>2245,\n49481=>2246,\n49483=>2247,\n49484=>2248,\n49485=>2249,\n49492=>2250,\n49493=>2251,\n49496=>2252,\n49500=>2253,\n49508=>2254,\n49509=>2255,\n49511=>2256,\n49512=>2257,\n49513=>2258,\n49520=>2259,\n49524=>2260,\n49528=>2261,\n49541=>2262,\n49548=>2263,\n49549=>2264,\n49550=>2265,\n49552=>2266,\n49556=>2267,\n49558=>2268,\n49564=>2269,\n49565=>2270,\n49567=>2271,\n49569=>2272,\n49573=>2273,\n49576=>2274,\n49577=>2275,\n49580=>2276,\n49584=>2277,\n49597=>2278,\n49604=>2279,\n49608=>2280,\n49612=>2281,\n49620=>2282,\n49623=>2283,\n49624=>2284,\n49632=>2285,\n49636=>2286,\n49640=>2287,\n49648=>2288,\n49649=>2289,\n49651=>2290,\n49660=>2291,\n49661=>2292,\n49664=>2293,\n49668=>2294,\n49676=>2295,\n49677=>2296,\n49679=>2297,\n49681=>2298,\n49688=>2299,\n49689=>2300,\n49692=>2301,\n49695=>2302,\n49696=>2303,\n49704=>2304,\n49705=>2305,\n49707=>2306,\n49709=>2307,\n49711=>2308,\n49713=>2309,\n49714=>2310,\n49716=>2311,\n49736=>2312,\n49744=>2313,\n49745=>2314,\n49748=>2315,\n49752=>2316,\n49760=>2317,\n49765=>2318,\n49772=>2319,\n49773=>2320,\n49776=>2321,\n49780=>2322,\n49788=>2323,\n49789=>2324,\n49791=>2325,\n49793=>2326,\n49800=>2327,\n49801=>2328,\n49808=>2329,\n49816=>2330,\n49819=>2331,\n49821=>2332,\n49828=>2333,\n49829=>2334,\n49832=>2335,\n49836=>2336,\n49837=>2337,\n49844=>2338,\n49845=>2339,\n49847=>2340,\n49849=>2341,\n49884=>2342,\n49885=>2343,\n49888=>2344,\n49891=>2345,\n49892=>2346,\n49899=>2347,\n49900=>2348,\n49901=>2349,\n49903=>2350,\n49905=>2351,\n49910=>2352,\n49912=>2353,\n49913=>2354,\n49915=>2355,\n49916=>2356,\n49920=>2357,\n49928=>2358,\n49929=>2359,\n49932=>2360,\n49933=>2361,\n49939=>2362,\n49940=>2363,\n49941=>2364,\n49944=>2365,\n49948=>2366,\n49956=>2367,\n49957=>2368,\n49960=>2369,\n49961=>2370,\n49989=>2371,\n50024=>2372,\n50025=>2373,\n50028=>2374,\n50032=>2375,\n50034=>2376,\n50040=>2377,\n50041=>2378,\n50044=>2379,\n50045=>2380,\n50052=>2381,\n50056=>2382,\n50060=>2383,\n50112=>2384,\n50136=>2385,\n50137=>2386,\n50140=>2387,\n50143=>2388,\n50144=>2389,\n50146=>2390,\n50152=>2391,\n50153=>2392,\n50157=>2393,\n50164=>2394,\n50165=>2395,\n50168=>2396,\n50184=>2397,\n50192=>2398,\n50212=>2399,\n50220=>2400,\n50224=>2401,\n50228=>2402,\n50236=>2403,\n50237=>2404,\n50248=>2405,\n50276=>2406,\n50277=>2407,\n50280=>2408,\n50284=>2409,\n50292=>2410,\n50293=>2411,\n50297=>2412,\n50304=>2413,\n50324=>2414,\n50332=>2415,\n50360=>2416,\n50364=>2417,\n50409=>2418,\n50416=>2419,\n50417=>2420,\n50420=>2421,\n50424=>2422,\n50426=>2423,\n50431=>2424,\n50432=>2425,\n50433=>2426,\n50444=>2427,\n50448=>2428,\n50452=>2429,\n50460=>2430,\n50472=>2431,\n50473=>2432,\n50476=>2433,\n50480=>2434,\n50488=>2435,\n50489=>2436,\n50491=>2437,\n50493=>2438,\n50500=>2439,\n50501=>2440,\n50504=>2441,\n50505=>2442,\n50506=>2443,\n50508=>2444,\n50509=>2445,\n50510=>2446,\n50515=>2447,\n50516=>2448,\n50517=>2449,\n50519=>2450,\n50520=>2451,\n50521=>2452,\n50525=>2453,\n50526=>2454,\n50528=>2455,\n50529=>2456,\n50532=>2457,\n50536=>2458,\n50544=>2459,\n50545=>2460,\n50547=>2461,\n50548=>2462,\n50549=>2463,\n50556=>2464,\n50557=>2465,\n50560=>2466,\n50564=>2467,\n50567=>2468,\n50572=>2469,\n50573=>2470,\n50575=>2471,\n50577=>2472,\n50581=>2473,\n50583=>2474,\n50584=>2475,\n50588=>2476,\n50592=>2477,\n50601=>2478,\n50612=>2479,\n50613=>2480,\n50616=>2481,\n50617=>2482,\n50619=>2483,\n50620=>2484,\n50621=>2485,\n50622=>2486,\n50628=>2487,\n50629=>2488,\n50630=>2489,\n50631=>2490,\n50632=>2491,\n50633=>2492,\n50634=>2493,\n50636=>2494,\n50638=>2495,\n50640=>2496,\n50641=>2497,\n50644=>2498,\n50648=>2499,\n50656=>2500,\n50657=>2501,\n50659=>2502,\n50661=>2503,\n50668=>2504,\n50669=>2505,\n50670=>2506,\n50672=>2507,\n50676=>2508,\n50678=>2509,\n50679=>2510,\n50684=>2511,\n50685=>2512,\n50686=>2513,\n50687=>2514,\n50688=>2515,\n50689=>2516,\n50693=>2517,\n50694=>2518,\n50695=>2519,\n50696=>2520,\n50700=>2521,\n50704=>2522,\n50712=>2523,\n50713=>2524,\n50715=>2525,\n50716=>2526,\n50724=>2527,\n50725=>2528,\n50728=>2529,\n50732=>2530,\n50733=>2531,\n50734=>2532,\n50736=>2533,\n50739=>2534,\n50740=>2535,\n50741=>2536,\n50743=>2537,\n50745=>2538,\n50747=>2539,\n50752=>2540,\n50753=>2541,\n50756=>2542,\n50760=>2543,\n50768=>2544,\n50769=>2545,\n50771=>2546,\n50772=>2547,\n50773=>2548,\n50780=>2549,\n50781=>2550,\n50784=>2551,\n50796=>2552,\n50799=>2553,\n50801=>2554,\n50808=>2555,\n50809=>2556,\n50812=>2557,\n50816=>2558,\n50824=>2559,\n50825=>2560,\n50827=>2561,\n50829=>2562,\n50836=>2563,\n50837=>2564,\n50840=>2565,\n50844=>2566,\n50852=>2567,\n50853=>2568,\n50855=>2569,\n50857=>2570,\n50864=>2571,\n50865=>2572,\n50868=>2573,\n50872=>2574,\n50873=>2575,\n50874=>2576,\n50880=>2577,\n50881=>2578,\n50883=>2579,\n50885=>2580,\n50892=>2581,\n50893=>2582,\n50896=>2583,\n50900=>2584,\n50908=>2585,\n50909=>2586,\n50912=>2587,\n50913=>2588,\n50920=>2589,\n50921=>2590,\n50924=>2591,\n50928=>2592,\n50936=>2593,\n50937=>2594,\n50941=>2595,\n50948=>2596,\n50949=>2597,\n50952=>2598,\n50956=>2599,\n50964=>2600,\n50965=>2601,\n50967=>2602,\n50969=>2603,\n50976=>2604,\n50977=>2605,\n50980=>2606,\n50984=>2607,\n50992=>2608,\n50993=>2609,\n50995=>2610,\n50997=>2611,\n50999=>2612,\n51004=>2613,\n51005=>2614,\n51008=>2615,\n51012=>2616,\n51018=>2617,\n51020=>2618,\n51021=>2619,\n51023=>2620,\n51025=>2621,\n51026=>2622,\n51027=>2623,\n51028=>2624,\n51029=>2625,\n51030=>2626,\n51031=>2627,\n51032=>2628,\n51036=>2629,\n51040=>2630,\n51048=>2631,\n51051=>2632,\n51060=>2633,\n51061=>2634,\n51064=>2635,\n51068=>2636,\n51069=>2637,\n51070=>2638,\n51075=>2639,\n51076=>2640,\n51077=>2641,\n51079=>2642,\n51080=>2643,\n51081=>2644,\n51082=>2645,\n51086=>2646,\n51088=>2647,\n51089=>2648,\n51092=>2649,\n51094=>2650,\n51095=>2651,\n51096=>2652,\n51098=>2653,\n51104=>2654,\n51105=>2655,\n51107=>2656,\n51108=>2657,\n51109=>2658,\n51110=>2659,\n51116=>2660,\n51117=>2661,\n51120=>2662,\n51124=>2663,\n51132=>2664,\n51133=>2665,\n51135=>2666,\n51136=>2667,\n51137=>2668,\n51144=>2669,\n51145=>2670,\n51148=>2671,\n51150=>2672,\n51152=>2673,\n51160=>2674,\n51165=>2675,\n51172=>2676,\n51176=>2677,\n51180=>2678,\n51200=>2679,\n51201=>2680,\n51204=>2681,\n51208=>2682,\n51210=>2683,\n51216=>2684,\n51217=>2685,\n51219=>2686,\n51221=>2687,\n51222=>2688,\n51228=>2689,\n51229=>2690,\n51232=>2691,\n51236=>2692,\n51244=>2693,\n51245=>2694,\n51247=>2695,\n51249=>2696,\n51256=>2697,\n51260=>2698,\n51264=>2699,\n51272=>2700,\n51273=>2701,\n51276=>2702,\n51277=>2703,\n51284=>2704,\n51312=>2705,\n51313=>2706,\n51316=>2707,\n51320=>2708,\n51322=>2709,\n51328=>2710,\n51329=>2711,\n51331=>2712,\n51333=>2713,\n51334=>2714,\n51335=>2715,\n51339=>2716,\n51340=>2717,\n51341=>2718,\n51348=>2719,\n51357=>2720,\n51359=>2721,\n51361=>2722,\n51368=>2723,\n51388=>2724,\n51389=>2725,\n51396=>2726,\n51400=>2727,\n51404=>2728,\n51412=>2729,\n51413=>2730,\n51415=>2731,\n51417=>2732,\n51424=>2733,\n51425=>2734,\n51428=>2735,\n51445=>2736,\n51452=>2737,\n51453=>2738,\n51456=>2739,\n51460=>2740,\n51461=>2741,\n51462=>2742,\n51468=>2743,\n51469=>2744,\n51471=>2745,\n51473=>2746,\n51480=>2747,\n51500=>2748,\n51508=>2749,\n51536=>2750,\n51537=>2751,\n51540=>2752,\n51544=>2753,\n51552=>2754,\n51553=>2755,\n51555=>2756,\n51564=>2757,\n51568=>2758,\n51572=>2759,\n51580=>2760,\n51592=>2761,\n51593=>2762,\n51596=>2763,\n51600=>2764,\n51608=>2765,\n51609=>2766,\n51611=>2767,\n51613=>2768,\n51648=>2769,\n51649=>2770,\n51652=>2771,\n51655=>2772,\n51656=>2773,\n51658=>2774,\n51664=>2775,\n51665=>2776,\n51667=>2777,\n51669=>2778,\n51670=>2779,\n51673=>2780,\n51674=>2781,\n51676=>2782,\n51677=>2783,\n51680=>2784,\n51682=>2785,\n51684=>2786,\n51687=>2787,\n51692=>2788,\n51693=>2789,\n51695=>2790,\n51696=>2791,\n51697=>2792,\n51704=>2793,\n51705=>2794,\n51708=>2795,\n51712=>2796,\n51720=>2797,\n51721=>2798,\n51723=>2799,\n51724=>2800,\n51725=>2801,\n51732=>2802,\n51736=>2803,\n51753=>2804,\n51788=>2805,\n51789=>2806,\n51792=>2807,\n51796=>2808,\n51804=>2809,\n51805=>2810,\n51807=>2811,\n51808=>2812,\n51809=>2813,\n51816=>2814,\n51837=>2815,\n51844=>2816,\n51864=>2817,\n51900=>2818,\n51901=>2819,\n51904=>2820,\n51908=>2821,\n51916=>2822,\n51917=>2823,\n51919=>2824,\n51921=>2825,\n51923=>2826,\n51928=>2827,\n51929=>2828,\n51936=>2829,\n51948=>2830,\n51956=>2831,\n51976=>2832,\n51984=>2833,\n51988=>2834,\n51992=>2835,\n52000=>2836,\n52001=>2837,\n52033=>2838,\n52040=>2839,\n52041=>2840,\n52044=>2841,\n52048=>2842,\n52056=>2843,\n52057=>2844,\n52061=>2845,\n52068=>2846,\n52088=>2847,\n52089=>2848,\n52124=>2849,\n52152=>2850,\n52180=>2851,\n52196=>2852,\n52199=>2853,\n52201=>2854,\n52236=>2855,\n52237=>2856,\n52240=>2857,\n52244=>2858,\n52252=>2859,\n52253=>2860,\n52257=>2861,\n52258=>2862,\n52263=>2863,\n52264=>2864,\n52265=>2865,\n52268=>2866,\n52270=>2867,\n52272=>2868,\n52280=>2869,\n52281=>2870,\n52283=>2871,\n52284=>2872,\n52285=>2873,\n52286=>2874,\n52292=>2875,\n52293=>2876,\n52296=>2877,\n52300=>2878,\n52308=>2879,\n52309=>2880,\n52311=>2881,\n52312=>2882,\n52313=>2883,\n52320=>2884,\n52324=>2885,\n52326=>2886,\n52328=>2887,\n52336=>2888,\n52341=>2889,\n52376=>2890,\n52377=>2891,\n52380=>2892,\n52384=>2893,\n52392=>2894,\n52393=>2895,\n52395=>2896,\n52396=>2897,\n52397=>2898,\n52404=>2899,\n52405=>2900,\n52408=>2901,\n52412=>2902,\n52420=>2903,\n52421=>2904,\n52423=>2905,\n52425=>2906,\n52432=>2907,\n52436=>2908,\n52452=>2909,\n52460=>2910,\n52464=>2911,\n52481=>2912,\n52488=>2913,\n52489=>2914,\n52492=>2915,\n52496=>2916,\n52504=>2917,\n52505=>2918,\n52507=>2919,\n52509=>2920,\n52516=>2921,\n52520=>2922,\n52524=>2923,\n52537=>2924,\n52572=>2925,\n52576=>2926,\n52580=>2927,\n52588=>2928,\n52589=>2929,\n52591=>2930,\n52593=>2931,\n52600=>2932,\n52616=>2933,\n52628=>2934,\n52629=>2935,\n52632=>2936,\n52636=>2937,\n52644=>2938,\n52645=>2939,\n52647=>2940,\n52649=>2941,\n52656=>2942,\n52676=>2943,\n52684=>2944,\n52688=>2945,\n52712=>2946,\n52716=>2947,\n52720=>2948,\n52728=>2949,\n52729=>2950,\n52731=>2951,\n52733=>2952,\n52740=>2953,\n52744=>2954,\n52748=>2955,\n52756=>2956,\n52761=>2957,\n52768=>2958,\n52769=>2959,\n52772=>2960,\n52776=>2961,\n52784=>2962,\n52785=>2963,\n52787=>2964,\n52789=>2965,\n52824=>2966,\n52825=>2967,\n52828=>2968,\n52831=>2969,\n52832=>2970,\n52833=>2971,\n52840=>2972,\n52841=>2973,\n52843=>2974,\n52845=>2975,\n52852=>2976,\n52853=>2977,\n52856=>2978,\n52860=>2979,\n52868=>2980,\n52869=>2981,\n52871=>2982,\n52873=>2983,\n52880=>2984,\n52881=>2985,\n52884=>2986,\n52888=>2987,\n52896=>2988,\n52897=>2989,\n52899=>2990,\n52900=>2991,\n52901=>2992,\n52908=>2993,\n52909=>2994,\n52929=>2995,\n52964=>2996,\n52965=>2997,\n52968=>2998,\n52971=>2999,\n52972=>3000,\n52980=>3001,\n52981=>3002,\n52983=>3003,\n52984=>3004,\n52985=>3005,\n52992=>3006,\n52993=>3007,\n52996=>3008,\n53000=>3009,\n53008=>3010,\n53009=>3011,\n53011=>3012,\n53013=>3013,\n53020=>3014,\n53024=>3015,\n53028=>3016,\n53036=>3017,\n53037=>3018,\n53039=>3019,\n53040=>3020,\n53041=>3021,\n53048=>3022,\n53076=>3023,\n53077=>3024,\n53080=>3025,\n53084=>3026,\n53092=>3027,\n53093=>3028,\n53095=>3029,\n53097=>3030,\n53104=>3031,\n53105=>3032,\n53108=>3033,\n53112=>3034,\n53120=>3035,\n53125=>3036,\n53132=>3037,\n53153=>3038,\n53160=>3039,\n53168=>3040,\n53188=>3041,\n53216=>3042,\n53217=>3043,\n53220=>3044,\n53224=>3045,\n53232=>3046,\n53233=>3047,\n53235=>3048,\n53237=>3049,\n53244=>3050,\n53248=>3051,\n53252=>3052,\n53265=>3053,\n53272=>3054,\n53293=>3055,\n53300=>3056,\n53301=>3057,\n53304=>3058,\n53308=>3059,\n53316=>3060,\n53317=>3061,\n53319=>3062,\n53321=>3063,\n53328=>3064,\n53332=>3065,\n53336=>3066,\n53344=>3067,\n53356=>3068,\n53357=>3069,\n53360=>3070,\n53364=>3071,\n53372=>3072,\n53373=>3073,\n53377=>3074,\n53412=>3075,\n53413=>3076,\n53416=>3077,\n53420=>3078,\n53428=>3079,\n53429=>3080,\n53431=>3081,\n53433=>3082,\n53440=>3083,\n53441=>3084,\n53444=>3085,\n53448=>3086,\n53449=>3087,\n53456=>3088,\n53457=>3089,\n53459=>3090,\n53460=>3091,\n53461=>3092,\n53468=>3093,\n53469=>3094,\n53472=>3095,\n53476=>3096,\n53484=>3097,\n53485=>3098,\n53487=>3099,\n53488=>3100,\n53489=>3101,\n53496=>3102,\n53517=>3103,\n53552=>3104,\n53553=>3105,\n53556=>3106,\n53560=>3107,\n53562=>3108,\n53568=>3109,\n53569=>3110,\n53571=>3111,\n53572=>3112,\n53573=>3113,\n53580=>3114,\n53581=>3115,\n53584=>3116,\n53588=>3117,\n53596=>3118,\n53597=>3119,\n53599=>3120,\n53601=>3121,\n53608=>3122,\n53612=>3123,\n53628=>3124,\n53636=>3125,\n53640=>3126,\n53664=>3127,\n53665=>3128,\n53668=>3129,\n53672=>3130,\n53680=>3131,\n53681=>3132,\n53683=>3133,\n53685=>3134,\n53690=>3135,\n53692=>3136,\n53696=>3137,\n53720=>3138,\n53748=>3139,\n53752=>3140,\n53767=>3141,\n53769=>3142,\n53776=>3143,\n53804=>3144,\n53805=>3145,\n53808=>3146,\n53812=>3147,\n53820=>3148,\n53821=>3149,\n53823=>3150,\n53825=>3151,\n53832=>3152,\n53852=>3153,\n53860=>3154,\n53888=>3155,\n53889=>3156,\n53892=>3157,\n53896=>3158,\n53904=>3159,\n53905=>3160,\n53909=>3161,\n53916=>3162,\n53920=>3163,\n53924=>3164,\n53932=>3165,\n53937=>3166,\n53944=>3167,\n53945=>3168,\n53948=>3169,\n53951=>3170,\n53952=>3171,\n53954=>3172,\n53960=>3173,\n53961=>3174,\n53963=>3175,\n53972=>3176,\n53976=>3177,\n53980=>3178,\n53988=>3179,\n53989=>3180,\n54000=>3181,\n54001=>3182,\n54004=>3183,\n54008=>3184,\n54016=>3185,\n54017=>3186,\n54019=>3187,\n54021=>3188,\n54028=>3189,\n54029=>3190,\n54030=>3191,\n54032=>3192,\n54036=>3193,\n54038=>3194,\n54044=>3195,\n54045=>3196,\n54047=>3197,\n54048=>3198,\n54049=>3199,\n54053=>3200,\n54056=>3201,\n54057=>3202,\n54060=>3203,\n54064=>3204,\n54072=>3205,\n54073=>3206,\n54075=>3207,\n54076=>3208,\n54077=>3209,\n54084=>3210,\n54085=>3211,\n54140=>3212,\n54141=>3213,\n54144=>3214,\n54148=>3215,\n54156=>3216,\n54157=>3217,\n54159=>3218,\n54160=>3219,\n54161=>3220,\n54168=>3221,\n54169=>3222,\n54172=>3223,\n54176=>3224,\n54184=>3225,\n54185=>3226,\n54187=>3227,\n54189=>3228,\n54196=>3229,\n54200=>3230,\n54204=>3231,\n54212=>3232,\n54213=>3233,\n54216=>3234,\n54217=>3235,\n54224=>3236,\n54232=>3237,\n54241=>3238,\n54243=>3239,\n54252=>3240,\n54253=>3241,\n54256=>3242,\n54260=>3243,\n54268=>3244,\n54269=>3245,\n54271=>3246,\n54273=>3247,\n54280=>3248,\n54301=>3249,\n54336=>3250,\n54340=>3251,\n54364=>3252,\n54368=>3253,\n54372=>3254,\n54381=>3255,\n54383=>3256,\n54392=>3257,\n54393=>3258,\n54396=>3259,\n54399=>3260,\n54400=>3261,\n54402=>3262,\n54408=>3263,\n54409=>3264,\n54411=>3265,\n54413=>3266,\n54420=>3267,\n54441=>3268,\n54476=>3269,\n54480=>3270,\n54484=>3271,\n54492=>3272,\n54495=>3273,\n54504=>3274,\n54508=>3275,\n54512=>3276,\n54520=>3277,\n54523=>3278,\n54525=>3279,\n54532=>3280,\n54536=>3281,\n54540=>3282,\n54548=>3283,\n54549=>3284,\n54551=>3285,\n54588=>3286,\n54589=>3287,\n54592=>3288,\n54596=>3289,\n54604=>3290,\n54605=>3291,\n54607=>3292,\n54609=>3293,\n54616=>3294,\n54617=>3295,\n54620=>3296,\n54624=>3297,\n54629=>3298,\n54632=>3299,\n54633=>3300,\n54635=>3301,\n54637=>3302,\n54644=>3303,\n54645=>3304,\n54648=>3305,\n54652=>3306,\n54660=>3307,\n54661=>3308,\n54663=>3309,\n54664=>3310,\n54665=>3311,\n54672=>3312,\n54693=>3313,\n54728=>3314,\n54729=>3315,\n54732=>3316,\n54736=>3317,\n54738=>3318,\n54744=>3319,\n54745=>3320,\n54747=>3321,\n54749=>3322,\n54756=>3323,\n54757=>3324,\n54760=>3325,\n54764=>3326,\n54772=>3327,\n54773=>3328,\n54775=>3329,\n54777=>3330,\n54784=>3331,\n54785=>3332,\n54788=>3333,\n54792=>3334,\n54800=>3335,\n54801=>3336,\n54803=>3337,\n54804=>3338,\n54805=>3339,\n54812=>3340,\n54816=>3341,\n54820=>3342,\n54829=>3343,\n54840=>3344,\n54841=>3345,\n54844=>3346,\n54848=>3347,\n54853=>3348,\n54856=>3349,\n54857=>3350,\n54859=>3351,\n54861=>3352,\n54865=>3353,\n54868=>3354,\n54869=>3355,\n54872=>3356,\n54876=>3357,\n54887=>3358,\n54889=>3359,\n54896=>3360,\n54897=>3361,\n54900=>3362,\n54915=>3363,\n54917=>3364,\n54924=>3365,\n54925=>3366,\n54928=>3367,\n54932=>3368,\n54941=>3369,\n54943=>3370,\n54945=>3371,\n54952=>3372,\n54956=>3373,\n54960=>3374,\n54969=>3375,\n54971=>3376,\n54980=>3377,\n54981=>3378,\n54984=>3379,\n54988=>3380,\n54993=>3381,\n54996=>3382,\n54999=>3383,\n55001=>3384,\n55008=>3385,\n55012=>3386,\n55016=>3387,\n55024=>3388,\n55029=>3389,\n55036=>3390,\n55037=>3391,\n55040=>3392,\n55044=>3393,\n55057=>3394,\n55064=>3395,\n55065=>3396,\n55068=>3397,\n55072=>3398,\n55080=>3399,\n55081=>3400,\n55083=>3401,\n55085=>3402,\n55092=>3403,\n55093=>3404,\n55096=>3405,\n55100=>3406,\n55108=>3407,\n55111=>3408,\n55113=>3409,\n55120=>3410,\n55121=>3411,\n55124=>3412,\n55126=>3413,\n55127=>3414,\n55128=>3415,\n55129=>3416,\n55136=>3417,\n55137=>3418,\n55139=>3419,\n55141=>3420,\n55145=>3421,\n55148=>3422,\n55152=>3423,\n55156=>3424,\n55164=>3425,\n55165=>3426,\n55169=>3427,\n55176=>3428,\n55177=>3429,\n55180=>3430,\n55184=>3431,\n55192=>3432,\n55193=>3433,\n55195=>3434,\n55197=>3435,\n20285=>3436,\n20339=>3437,\n20551=>3438,\n20729=>3439,\n21152=>3440,\n21487=>3441,\n21621=>3442,\n21733=>3443,\n22025=>3444,\n23233=>3445,\n23478=>3446,\n26247=>3447,\n26550=>3448,\n26551=>3449,\n26607=>3450,\n27468=>3451,\n29634=>3452,\n30146=>3453,\n31292=>3454,\n33499=>3455,\n33540=>3456,\n34903=>3457,\n34952=>3458,\n35382=>3459,\n36040=>3460,\n63747=>3460,\n36303=>3461,\n36603=>3462,\n36838=>3463,\n39381=>3464,\n21051=>3465,\n21364=>3466,\n21508=>3467,\n24682=>3468,\n24932=>3469,\n27580=>3470,\n29647=>3471,\n33050=>3472,\n35258=>3473,\n12179=>3474,\n35282=>3474,\n38307=>3475,\n20355=>3476,\n21002=>3477,\n22718=>3478,\n22904=>3479,\n23014=>3480,\n12082=>3481,\n24178=>3481,\n24185=>3482,\n25031=>3483,\n25536=>3484,\n26438=>3485,\n26604=>3486,\n26751=>3487,\n28567=>3488,\n30286=>3489,\n30475=>3490,\n30965=>3491,\n31240=>3492,\n31487=>3493,\n31777=>3494,\n32925=>3495,\n12169=>3496,\n33390=>3496,\n33393=>3497,\n35563=>3498,\n38291=>3499,\n20075=>3500,\n21917=>3501,\n26359=>3502,\n28212=>3503,\n30883=>3504,\n31469=>3505,\n33883=>3506,\n35088=>3507,\n34638=>3508,\n38824=>3509,\n21208=>3510,\n22350=>3511,\n22570=>3512,\n23884=>3513,\n24863=>3514,\n25022=>3515,\n25121=>3516,\n25954=>3517,\n26577=>3518,\n27204=>3519,\n28187=>3520,\n12130=>3521,\n29976=>3521,\n30131=>3522,\n30435=>3523,\n30640=>3524,\n32058=>3525,\n37039=>3526,\n37969=>3527,\n37970=>3528,\n40853=>3529,\n21283=>3530,\n23724=>3531,\n30002=>3532,\n32987=>3533,\n37440=>3534,\n38296=>3535,\n21083=>3536,\n22536=>3537,\n23004=>3538,\n23713=>3539,\n23831=>3540,\n24247=>3541,\n24378=>3542,\n24394=>3543,\n24951=>3544,\n27743=>3545,\n30074=>3546,\n30086=>3547,\n31968=>3548,\n32115=>3549,\n32177=>3550,\n32652=>3551,\n33108=>3552,\n33313=>3553,\n34193=>3554,\n35137=>3555,\n35611=>3556,\n37628=>3557,\n38477=>3558,\n64009=>3558,\n40007=>3559,\n20171=>3560,\n20215=>3561,\n20491=>3562,\n20977=>3563,\n22607=>3564,\n24887=>3565,\n24894=>3566,\n24936=>3567,\n25913=>3568,\n27114=>3569,\n28433=>3570,\n30117=>3571,\n30342=>3572,\n30422=>3573,\n31623=>3574,\n33445=>3575,\n33995=>3576,\n37799=>3577,\n38283=>3578,\n21888=>3579,\n23458=>3580,\n22353=>3581,\n31923=>3582,\n32697=>3583,\n37301=>3584,\n20520=>3585,\n21435=>3586,\n23621=>3587,\n24040=>3588,\n25298=>3589,\n25454=>3590,\n25818=>3591,\n25831=>3592,\n28192=>3593,\n28844=>3594,\n31067=>3595,\n36317=>3596,\n36382=>3597,\n36989=>3598,\n37445=>3599,\n37624=>3600,\n20094=>3601,\n20214=>3602,\n20581=>3603,\n12081=>3604,\n24062=>3604,\n24314=>3605,\n24838=>3606,\n26967=>3607,\n33137=>3608,\n34388=>3609,\n36423=>3610,\n37749=>3611,\n39467=>3612,\n20062=>3613,\n20625=>3614,\n26480=>3615,\n26688=>3616,\n20745=>3617,\n21133=>3618,\n21138=>3619,\n27298=>3620,\n30652=>3621,\n37392=>3622,\n40660=>3623,\n21163=>3624,\n24623=>3625,\n36850=>3626,\n20552=>3627,\n25001=>3628,\n25581=>3629,\n25802=>3630,\n26684=>3631,\n27268=>3632,\n28608=>3633,\n33160=>3634,\n35233=>3635,\n38548=>3636,\n22533=>3637,\n29309=>3638,\n12125=>3639,\n29356=>3639,\n29956=>3640,\n32121=>3641,\n32365=>3642,\n32937=>3643,\n12178=>3644,\n35211=>3644,\n64010=>3644,\n35700=>3645,\n36963=>3646,\n40273=>3647,\n25225=>3648,\n27770=>3649,\n28500=>3650,\n32080=>3651,\n32570=>3652,\n35363=>3653,\n20860=>3654,\n24906=>3655,\n31645=>3656,\n35609=>3657,\n37463=>3658,\n37772=>3659,\n20140=>3660,\n20435=>3661,\n20510=>3662,\n20670=>3663,\n20742=>3664,\n21185=>3665,\n21197=>3666,\n21375=>3667,\n22384=>3668,\n22659=>3669,\n24218=>3670,\n24465=>3671,\n24950=>3672,\n25004=>3673,\n25806=>3674,\n25964=>3675,\n26223=>3676,\n26299=>3677,\n26356=>3678,\n63745=>3678,\n26775=>3679,\n28039=>3680,\n28805=>3681,\n28913=>3682,\n29855=>3683,\n29861=>3684,\n29898=>3685,\n30169=>3686,\n30828=>3687,\n30956=>3688,\n31455=>3689,\n31478=>3690,\n32069=>3691,\n32147=>3692,\n32789=>3693,\n32831=>3694,\n33051=>3695,\n33686=>3696,\n35686=>3697,\n36629=>3698,\n36885=>3699,\n37857=>3700,\n38915=>3701,\n38968=>3702,\n39514=>3703,\n39912=>3704,\n20418=>3705,\n21843=>3706,\n22586=>3707,\n22865=>3708,\n63753=>3708,\n23395=>3709,\n23622=>3710,\n24760=>3711,\n25106=>3712,\n26690=>3713,\n26800=>3714,\n26856=>3715,\n28330=>3716,\n30028=>3717,\n30328=>3718,\n30926=>3719,\n31293=>3720,\n31995=>3721,\n32363=>3722,\n32380=>3723,\n35336=>3724,\n35489=>3725,\n35903=>3726,\n38542=>3727,\n40388=>3728,\n21476=>3729,\n21481=>3730,\n21578=>3731,\n21617=>3732,\n22266=>3733,\n22993=>3734,\n23396=>3735,\n23611=>3736,\n24235=>3737,\n25335=>3738,\n25911=>3739,\n25925=>3740,\n25970=>3741,\n26272=>3742,\n26543=>3743,\n27073=>3744,\n27837=>3745,\n30204=>3746,\n30352=>3747,\n30590=>3748,\n31295=>3749,\n32660=>3750,\n32771=>3751,\n32929=>3752,\n33167=>3753,\n33510=>3754,\n33533=>3755,\n33776=>3756,\n34241=>3757,\n34865=>3758,\n34996=>3759,\n35493=>3760,\n36764=>3761,\n37678=>3762,\n38599=>3763,\n39015=>3764,\n12220=>3765,\n39640=>3765,\n12238=>3766,\n40723=>3766,\n21741=>3767,\n26011=>3768,\n26354=>3769,\n26767=>3770,\n31296=>3771,\n12181=>3772,\n35895=>3772,\n40288=>3773,\n22256=>3774,\n22372=>3775,\n23825=>3776,\n26118=>3777,\n26801=>3778,\n26829=>3779,\n28414=>3780,\n29736=>3781,\n34974=>3782,\n39908=>3783,\n27752=>3784,\n12219=>3785,\n39592=>3785,\n20379=>3786,\n20844=>3787,\n20849=>3788,\n21151=>3789,\n23380=>3790,\n12079=>3791,\n24037=>3791,\n24656=>3792,\n24685=>3793,\n25329=>3794,\n25511=>3795,\n25915=>3796,\n29657=>3797,\n31354=>3798,\n34467=>3799,\n36002=>3800,\n38799=>3801,\n20018=>3802,\n63749=>3802,\n23521=>3803,\n12093=>3804,\n25096=>3804,\n26524=>3805,\n12128=>3806,\n29916=>3806,\n31185=>3807,\n33747=>3808,\n35463=>3809,\n35506=>3810,\n36328=>3811,\n36942=>3812,\n37707=>3813,\n38982=>3814,\n24275=>3815,\n64011=>3815,\n27112=>3816,\n34303=>3817,\n37101=>3818,\n20896=>3819,\n23448=>3820,\n23532=>3821,\n24931=>3822,\n26874=>3823,\n27454=>3824,\n28748=>3825,\n29743=>3826,\n29912=>3827,\n31649=>3828,\n32592=>3829,\n33733=>3830,\n35264=>3831,\n36011=>3832,\n38364=>3833,\n39208=>3834,\n21038=>3835,\n24669=>3836,\n25324=>3837,\n36866=>3838,\n20362=>3839,\n20809=>3840,\n21281=>3841,\n22745=>3842,\n24291=>3843,\n26336=>3844,\n27960=>3845,\n28826=>3846,\n29378=>3847,\n29654=>3848,\n31568=>3849,\n33009=>3850,\n37979=>3851,\n21350=>3852,\n25499=>3853,\n32619=>3854,\n20054=>3855,\n20608=>3856,\n22602=>3857,\n22750=>3858,\n24618=>3859,\n24871=>3860,\n25296=>3861,\n27088=>3862,\n39745=>3863,\n23439=>3864,\n32024=>3865,\n32945=>3866,\n36703=>3867,\n20132=>3868,\n20689=>3869,\n21676=>3870,\n21932=>3871,\n23308=>3872,\n23968=>3873,\n24039=>3874,\n25898=>3875,\n25934=>3876,\n26657=>3877,\n27211=>3878,\n29409=>3879,\n30350=>3880,\n30703=>3881,\n32094=>3882,\n32761=>3883,\n33184=>3884,\n34126=>3885,\n34527=>3886,\n36611=>3887,\n36686=>3888,\n37066=>3889,\n39171=>3890,\n39509=>3891,\n39851=>3892,\n19992=>3893,\n20037=>3894,\n20061=>3895,\n20167=>3896,\n20465=>3897,\n20855=>3898,\n21246=>3899,\n21312=>3900,\n12061=>3901,\n21475=>3901,\n21477=>3902,\n63750=>3902,\n21646=>3903,\n22036=>3904,\n22389=>3905,\n22434=>3906,\n23495=>3907,\n23943=>3908,\n24272=>3909,\n25084=>3910,\n25304=>3911,\n25937=>3912,\n26552=>3913,\n26601=>3914,\n27083=>3915,\n27472=>3916,\n27590=>3917,\n27628=>3918,\n27714=>3919,\n28317=>3920,\n28792=>3921,\n29399=>3922,\n29590=>3923,\n29699=>3924,\n30655=>3925,\n30697=>3926,\n31350=>3927,\n32127=>3928,\n32777=>3929,\n12165=>3930,\n33276=>3930,\n33285=>3931,\n33290=>3932,\n33503=>3933,\n34914=>3934,\n35635=>3935,\n36092=>3936,\n36544=>3937,\n36881=>3938,\n37041=>3939,\n37476=>3940,\n37558=>3941,\n39378=>3942,\n39493=>3943,\n40169=>3944,\n40407=>3945,\n12244=>3946,\n40860=>3946,\n63751=>3946,\n63752=>3946,\n22283=>3947,\n23616=>3948,\n33738=>3949,\n38816=>3950,\n38827=>3951,\n40628=>3952,\n21531=>3953,\n31384=>3954,\n32676=>3955,\n35033=>3956,\n36557=>3957,\n37089=>3958,\n22528=>3959,\n23624=>3960,\n25496=>3961,\n31391=>3962,\n23470=>3963,\n12088=>3964,\n24339=>3964,\n31353=>3965,\n31406=>3966,\n33422=>3967,\n36524=>3968,\n20518=>3969,\n21048=>3970,\n21240=>3971,\n21367=>3972,\n22280=>3973,\n25331=>3974,\n25458=>3975,\n27402=>3976,\n28099=>3977,\n30519=>3978,\n21413=>3979,\n29527=>3980,\n34152=>3981,\n36470=>3982,\n38357=>3983,\n26426=>3984,\n27331=>3985,\n28528=>3986,\n35437=>3987,\n36556=>3988,\n39243=>3989,\n26231=>3990,\n27512=>3991,\n36020=>3992,\n12225=>3993,\n39740=>3993,\n21483=>3994,\n22317=>3995,\n22862=>3996,\n25542=>3997,\n27131=>3998,\n29674=>3999,\n30789=>4000,\n31418=>4001,\n31429=>4002,\n31998=>4003,\n33909=>4004,\n35215=>4005,\n36211=>4006,\n36917=>4007,\n38312=>4008,\n21243=>4009,\n22343=>4010,\n30023=>4011,\n31584=>4012,\n33740=>4013,\n37406=>4014,\n27224=>4015,\n20811=>4016,\n21067=>4017,\n21127=>4018,\n25119=>4019,\n26840=>4020,\n26997=>4021,\n38553=>4022,\n20677=>4023,\n21156=>4024,\n21220=>4025,\n25027=>4026,\n12100=>4027,\n26020=>4027,\n26681=>4028,\n27135=>4029,\n29822=>4030,\n31563=>4031,\n33465=>4032,\n33771=>4033,\n35250=>4034,\n35641=>4035,\n36817=>4036,\n39241=>4037,\n20170=>4038,\n22935=>4039,\n25810=>4040,\n26129=>4041,\n27278=>4042,\n29748=>4043,\n31105=>4044,\n31165=>4045,\n33449=>4046,\n34942=>4047,\n34943=>4048,\n35167=>4049,\n37670=>4050,\n20235=>4051,\n21450=>4052,\n24613=>4053,\n25201=>4054,\n27762=>4055,\n32026=>4056,\n32102=>4057,\n20120=>4058,\n20834=>4059,\n30684=>4060,\n32943=>4061,\n20225=>4062,\n20238=>4063,\n20854=>4064,\n20864=>4065,\n21980=>4066,\n22120=>4067,\n22331=>4068,\n22522=>4069,\n22524=>4070,\n22804=>4071,\n22855=>4072,\n22931=>4073,\n23492=>4074,\n23696=>4075,\n23822=>4076,\n12080=>4077,\n24049=>4077,\n24190=>4078,\n24524=>4079,\n25216=>4080,\n26071=>4081,\n26083=>4082,\n26398=>4083,\n26399=>4084,\n26462=>4085,\n26827=>4086,\n26820=>4087,\n27231=>4088,\n27450=>4089,\n27683=>4090,\n27773=>4091,\n27778=>4092,\n28103=>4093,\n29592=>4094,\n29734=>4095,\n29738=>4096,\n29826=>4097,\n29859=>4098,\n30072=>4099,\n30079=>4100,\n30849=>4101,\n30959=>4102,\n31041=>4103,\n31047=>4104,\n31048=>4105,\n31098=>4106,\n31637=>4107,\n32000=>4108,\n32186=>4109,\n32648=>4110,\n32774=>4111,\n32813=>4112,\n32908=>4113,\n35352=>4114,\n35663=>4115,\n35912=>4116,\n63744=>4116,\n36215=>4117,\n37665=>4118,\n37668=>4119,\n39138=>4120,\n39249=>4121,\n39438=>4122,\n39439=>4123,\n39525=>4124,\n40594=>4125,\n32202=>4126,\n20342=>4127,\n21513=>4128,\n25326=>4129,\n26708=>4130,\n12198=>4131,\n37329=>4131,\n63754=>4131,\n21931=>4132,\n20794=>4133,\n23068=>4134,\n25062=>4135,\n25295=>4136,\n63835=>4136,\n25343=>4137,\n37027=>4138,\n35582=>4139,\n63837=>4139,\n26262=>4140,\n29014=>4141,\n38627=>4142,\n25423=>4143,\n25466=>4144,\n21335=>4145,\n26511=>4146,\n26976=>4147,\n28275=>4148,\n30007=>4149,\n32013=>4150,\n34930=>4151,\n22218=>4152,\n23064=>4153,\n20035=>4154,\n20839=>4155,\n22856=>4156,\n63756=>4156,\n26608=>4157,\n32784=>4158,\n12069=>4159,\n22899=>4159,\n63873=>4159,\n24180=>4160,\n63886=>4160,\n25754=>4161,\n63889=>4161,\n31178=>4162,\n63893=>4162,\n24565=>4163,\n63907=>4163,\n24684=>4164,\n25288=>4165,\n25467=>4166,\n63908=>4166,\n23527=>4167,\n63839=>4167,\n63914=>4167,\n23511=>4168,\n21162=>4169,\n22900=>4170,\n24361=>4171,\n24594=>4172,\n63840=>4172,\n29785=>4173,\n39377=>4174,\n28611=>4175,\n33215=>4176,\n36786=>4177,\n24817=>4178,\n33126=>4179,\n23615=>4180,\n63933=>4180,\n23273=>4181,\n35365=>4182,\n26491=>4183,\n63944=>4183,\n32016=>4184,\n63951=>4184,\n33021=>4185,\n23612=>4186,\n27877=>4187,\n63971=>4187,\n21311=>4188,\n63979=>4188,\n28346=>4189,\n63980=>4189,\n22810=>4190,\n33590=>4191,\n63998=>4191,\n20025=>4192,\n63838=>4192,\n20150=>4193,\n20294=>4194,\n21934=>4195,\n22296=>4196,\n22727=>4197,\n24406=>4198,\n26039=>4199,\n26086=>4200,\n27264=>4201,\n27573=>4202,\n28237=>4203,\n30701=>4204,\n31471=>4205,\n31774=>4206,\n32222=>4207,\n34507=>4208,\n34962=>4209,\n37170=>4210,\n37723=>4211,\n25787=>4212,\n28606=>4213,\n29562=>4214,\n30136=>4215,\n36948=>4216,\n21846=>4217,\n22349=>4218,\n25018=>4219,\n25812=>4220,\n26311=>4221,\n28129=>4222,\n28251=>4223,\n28525=>4224,\n28601=>4225,\n30192=>4226,\n32835=>4227,\n33213=>4228,\n34113=>4229,\n35203=>4230,\n35527=>4231,\n35674=>4232,\n37663=>4233,\n27795=>4234,\n30035=>4235,\n31572=>4236,\n36367=>4237,\n36957=>4238,\n21776=>4239,\n22530=>4240,\n22616=>4241,\n24162=>4242,\n25095=>4243,\n25758=>4244,\n26848=>4245,\n30070=>4246,\n31958=>4247,\n64003=>4247,\n34739=>4248,\n40680=>4249,\n20195=>4250,\n22408=>4251,\n22382=>4252,\n12068=>4253,\n22823=>4253,\n23565=>4254,\n23729=>4255,\n24118=>4256,\n24453=>4257,\n25140=>4258,\n25825=>4259,\n29619=>4260,\n33274=>4261,\n34955=>4262,\n36024=>4263,\n38538=>4264,\n40667=>4265,\n23429=>4266,\n64004=>4266,\n24503=>4267,\n24755=>4268,\n20498=>4269,\n12049=>4270,\n20992=>4270,\n21040=>4271,\n22294=>4272,\n22581=>4273,\n22615=>4274,\n23566=>4275,\n23648=>4276,\n23798=>4277,\n23947=>4278,\n24230=>4279,\n64001=>4279,\n24466=>4280,\n24764=>4281,\n25361=>4282,\n25481=>4283,\n25623=>4284,\n26691=>4285,\n26873=>4286,\n27330=>4287,\n28120=>4288,\n28193=>4289,\n28372=>4290,\n28644=>4291,\n29182=>4292,\n30428=>4293,\n30585=>4294,\n31153=>4295,\n31291=>4296,\n33796=>4297,\n35241=>4298,\n36077=>4299,\n36339=>4300,\n36424=>4301,\n36867=>4302,\n36884=>4303,\n36947=>4304,\n37117=>4305,\n37709=>4306,\n38518=>4307,\n38876=>4308,\n27602=>4309,\n28678=>4310,\n29272=>4311,\n29346=>4312,\n29544=>4313,\n30563=>4314,\n31167=>4315,\n31716=>4316,\n32411=>4317,\n35712=>4318,\n63834=>4318,\n22697=>4319,\n24775=>4320,\n25958=>4321,\n26109=>4322,\n26302=>4323,\n27788=>4324,\n28958=>4325,\n29129=>4326,\n35930=>4327,\n38931=>4328,\n20077=>4329,\n31361=>4330,\n20189=>4331,\n20908=>4332,\n20941=>4333,\n21205=>4334,\n21516=>4335,\n24999=>4336,\n26481=>4337,\n26704=>4338,\n26847=>4339,\n27934=>4340,\n64005=>4340,\n28540=>4341,\n30140=>4342,\n30643=>4343,\n31461=>4344,\n33012=>4345,\n33891=>4346,\n37509=>4347,\n20828=>4348,\n12099=>4349,\n26007=>4349,\n26460=>4350,\n26515=>4351,\n30168=>4352,\n31431=>4353,\n33651=>4354,\n12182=>4355,\n35910=>4355,\n36887=>4356,\n38957=>4357,\n23663=>4358,\n33216=>4359,\n33434=>4360,\n36929=>4361,\n36975=>4362,\n37389=>4363,\n24471=>4364,\n23965=>4365,\n27225=>4366,\n29128=>4367,\n30331=>4368,\n31561=>4369,\n34276=>4370,\n35588=>4371,\n37159=>4372,\n39472=>4373,\n21895=>4374,\n63755=>4374,\n25078=>4375,\n63757=>4375,\n30313=>4376,\n63758=>4376,\n32645=>4377,\n63759=>4377,\n34367=>4378,\n63760=>4378,\n34746=>4379,\n63761=>4379,\n35064=>4380,\n63762=>4380,\n37007=>4381,\n63763=>4381,\n27931=>4382,\n63765=>4382,\n28889=>4383,\n63766=>4383,\n29662=>4384,\n63767=>4384,\n32097=>4385,\n33853=>4386,\n63768=>4386,\n37226=>4387,\n63769=>4387,\n39409=>4388,\n63770=>4388,\n20098=>4389,\n63771=>4389,\n21365=>4390,\n63772=>4390,\n27396=>4391,\n63773=>4391,\n27410=>4392,\n28734=>4393,\n29211=>4394,\n63774=>4394,\n34349=>4395,\n63775=>4395,\n40478=>4396,\n63776=>4396,\n21068=>4397,\n36771=>4398,\n23888=>4399,\n63777=>4399,\n25829=>4400,\n25900=>4401,\n27414=>4402,\n28651=>4403,\n63778=>4403,\n31811=>4404,\n32412=>4405,\n34253=>4406,\n63779=>4406,\n35172=>4407,\n63780=>4407,\n35261=>4408,\n25289=>4409,\n63781=>4409,\n33240=>4410,\n63782=>4410,\n34847=>4411,\n63783=>4411,\n24266=>4412,\n63784=>4412,\n26391=>4413,\n63785=>4413,\n28010=>4414,\n63786=>4414,\n29436=>4415,\n63787=>4415,\n29701=>4416,\n29807=>4417,\n34690=>4418,\n37086=>4419,\n63788=>4419,\n20358=>4420,\n63789=>4420,\n23821=>4421,\n24480=>4422,\n33802=>4423,\n20919=>4424,\n63790=>4424,\n25504=>4425,\n63861=>4425,\n30053=>4426,\n63862=>4426,\n20142=>4427,\n63863=>4427,\n20486=>4428,\n20841=>4429,\n63864=>4429,\n20937=>4430,\n63865=>4430,\n26753=>4431,\n63866=>4431,\n27153=>4432,\n31918=>4433,\n31921=>4434,\n31975=>4435,\n63867=>4435,\n33391=>4436,\n63868=>4436,\n35538=>4437,\n63869=>4437,\n36635=>4438,\n37327=>4439,\n63870=>4439,\n20406=>4440,\n20791=>4441,\n21237=>4442,\n63871=>4442,\n21570=>4443,\n63872=>4443,\n24300=>4444,\n63874=>4444,\n24942=>4445,\n25150=>4446,\n26053=>4447,\n63875=>4447,\n27354=>4448,\n28670=>4449,\n63876=>4449,\n31018=>4450,\n63877=>4450,\n34268=>4451,\n34851=>4452,\n38317=>4453,\n63878=>4453,\n39522=>4454,\n39530=>4455,\n63879=>4455,\n40599=>4456,\n63880=>4456,\n40654=>4457,\n63881=>4457,\n12050=>4458,\n21147=>4458,\n63882=>4458,\n26310=>4459,\n63883=>4459,\n27511=>4460,\n63884=>4460,\n28701=>4461,\n31019=>4462,\n36706=>4463,\n63885=>4463,\n38722=>4464,\n24976=>4465,\n63887=>4465,\n25088=>4466,\n63888=>4466,\n25891=>4467,\n28451=>4468,\n63890=>4468,\n29001=>4469,\n63891=>4469,\n29833=>4470,\n63892=>4470,\n32244=>4471,\n63894=>4471,\n32879=>4472,\n63895=>4472,\n34030=>4473,\n63897=>4473,\n36646=>4474,\n63896=>4474,\n36899=>4475,\n63898=>4475,\n37706=>4476,\n63899=>4476,\n20925=>4477,\n21015=>4478,\n63900=>4478,\n21155=>4479,\n63901=>4479,\n27916=>4480,\n28872=>4481,\n63903=>4481,\n35010=>4482,\n63904=>4482,\n24265=>4483,\n63906=>4483,\n25986=>4484,\n27566=>4485,\n63909=>4485,\n28610=>4486,\n31806=>4487,\n63910=>4487,\n29557=>4488,\n63911=>4488,\n20196=>4489,\n63912=>4489,\n20278=>4490,\n22265=>4491,\n63913=>4491,\n23738=>4492,\n23994=>4493,\n63915=>4493,\n24604=>4494,\n63916=>4494,\n29618=>4495,\n63917=>4495,\n31533=>4496,\n32666=>4497,\n63919=>4497,\n32718=>4498,\n32838=>4499,\n63920=>4499,\n36894=>4500,\n37428=>4501,\n63921=>4501,\n38646=>4502,\n63922=>4502,\n38728=>4503,\n63923=>4503,\n38936=>4504,\n63924=>4504,\n40801=>4505,\n20363=>4506,\n63925=>4506,\n28583=>4507,\n31150=>4508,\n63926=>4508,\n37300=>4509,\n63927=>4509,\n38583=>4510,\n63928=>4510,\n21214=>4511,\n63791=>4511,\n25736=>4512,\n25796=>4513,\n63792=>4513,\n27347=>4514,\n63793=>4514,\n28510=>4515,\n28696=>4516,\n29200=>4517,\n63794=>4517,\n30439=>4518,\n63795=>4518,\n12156=>4519,\n32769=>4519,\n63796=>4519,\n34310=>4520,\n63797=>4520,\n34396=>4521,\n63798=>4521,\n36335=>4522,\n63799=>4522,\n36613=>4523,\n38706=>4524,\n63800=>4524,\n39791=>4525,\n63801=>4525,\n40442=>4526,\n63802=>4526,\n12228=>4527,\n40565=>4527,\n30860=>4528,\n63803=>4528,\n31103=>4529,\n63804=>4529,\n32160=>4530,\n63805=>4530,\n33737=>4531,\n63806=>4531,\n37636=>4532,\n63807=>4532,\n12229=>4533,\n40575=>4533,\n63808=>4533,\n40595=>4534,\n35542=>4535,\n63809=>4535,\n22751=>4536,\n63810=>4536,\n24324=>4537,\n63811=>4537,\n26407=>4538,\n28711=>4539,\n29903=>4540,\n31840=>4541,\n63812=>4541,\n32894=>4542,\n63813=>4542,\n20769=>4543,\n28712=>4544,\n29282=>4545,\n63814=>4545,\n30922=>4546,\n63815=>4546,\n36034=>4547,\n63816=>4547,\n36058=>4548,\n36084=>4549,\n38647=>4550,\n63817=>4550,\n20102=>4551,\n63930=>4551,\n20698=>4552,\n63931=>4552,\n23534=>4553,\n63932=>4553,\n24278=>4554,\n26009=>4555,\n63934=>4555,\n29134=>4556,\n63936=>4556,\n30274=>4557,\n63937=>4557,\n30637=>4558,\n32842=>4559,\n34044=>4560,\n63938=>4560,\n36988=>4561,\n63939=>4561,\n39719=>4562,\n12243=>4563,\n40845=>4563,\n63940=>4563,\n22744=>4564,\n63818=>4564,\n23105=>4565,\n23650=>4566,\n63819=>4566,\n27155=>4567,\n63820=>4567,\n28122=>4568,\n63821=>4568,\n28431=>4569,\n63822=>4569,\n30267=>4570,\n32047=>4571,\n63823=>4571,\n32311=>4572,\n63824=>4572,\n34078=>4573,\n35128=>4574,\n37860=>4575,\n38475=>4576,\n63825=>4576,\n21129=>4577,\n63943=>4577,\n26066=>4578,\n26611=>4579,\n63945=>4579,\n27060=>4580,\n27969=>4581,\n63946=>4581,\n28316=>4582,\n63947=>4582,\n28687=>4583,\n29705=>4584,\n63948=>4584,\n29792=>4585,\n30041=>4586,\n63949=>4586,\n30244=>4587,\n30827=>4588,\n63950=>4588,\n35628=>4589,\n39006=>4590,\n63952=>4590,\n20845=>4591,\n63953=>4591,\n25134=>4592,\n63954=>4592,\n38520=>4593,\n63955=>4593,\n20374=>4594,\n20523=>4595,\n63956=>4595,\n23833=>4596,\n63957=>4596,\n28138=>4597,\n63958=>4597,\n32184=>4598,\n36650=>4599,\n63959=>4599,\n24459=>4600,\n63960=>4600,\n24900=>4601,\n63961=>4601,\n26647=>4602,\n63962=>4602,\n38534=>4603,\n63964=>4603,\n21202=>4604,\n63826=>4604,\n32907=>4605,\n63827=>4605,\n20956=>4606,\n63828=>4606,\n20940=>4607,\n63829=>4607,\n26974=>4608,\n31260=>4609,\n63830=>4609,\n32190=>4610,\n63831=>4610,\n33777=>4611,\n63832=>4611,\n38517=>4612,\n63833=>4612,\n20442=>4613,\n21033=>4614,\n63965=>4614,\n21400=>4615,\n21519=>4616,\n63966=>4616,\n21774=>4617,\n23653=>4618,\n63967=>4618,\n24743=>4619,\n26446=>4620,\n63969=>4620,\n26792=>4621,\n63970=>4621,\n28012=>4622,\n29313=>4623,\n29432=>4624,\n29702=>4625,\n63972=>4625,\n29827=>4626,\n30178=>4627,\n63973=>4627,\n31852=>4628,\n32633=>4629,\n63974=>4629,\n32696=>4630,\n33673=>4631,\n35023=>4632,\n63975=>4632,\n35041=>4633,\n63976=>4633,\n12197=>4634,\n37324=>4634,\n63977=>4634,\n37328=>4635,\n38626=>4636,\n63978=>4636,\n39881=>4637,\n21533=>4638,\n63981=>4638,\n28542=>4639,\n29136=>4640,\n63982=>4640,\n29848=>4641,\n63983=>4641,\n34298=>4642,\n63984=>4642,\n36522=>4643,\n38563=>4644,\n63985=>4644,\n40023=>4645,\n63986=>4645,\n40607=>4646,\n63987=>4646,\n26519=>4647,\n63988=>4647,\n28107=>4648,\n63989=>4648,\n29747=>4649,\n33256=>4650,\n63990=>4650,\n38678=>4651,\n30764=>4652,\n12148=>4653,\n31435=>4653,\n63991=>4653,\n31520=>4654,\n63992=>4654,\n31890=>4655,\n63993=>4655,\n25705=>4656,\n29802=>4657,\n30194=>4658,\n30908=>4659,\n30952=>4660,\n12218=>4661,\n39340=>4661,\n39764=>4662,\n12231=>4663,\n40635=>4663,\n23518=>4664,\n24149=>4665,\n28448=>4666,\n33180=>4667,\n33707=>4668,\n37000=>4669,\n19975=>4670,\n21325=>4671,\n23081=>4672,\n24018=>4673,\n24398=>4674,\n24930=>4675,\n25405=>4676,\n26217=>4677,\n26364=>4678,\n28415=>4679,\n28459=>4680,\n28771=>4681,\n30622=>4682,\n33836=>4683,\n34067=>4684,\n34875=>4685,\n36627=>4686,\n39237=>4687,\n39995=>4688,\n21788=>4689,\n25273=>4690,\n26411=>4691,\n27819=>4692,\n33545=>4693,\n35178=>4694,\n38778=>4695,\n20129=>4696,\n22916=>4697,\n24536=>4698,\n24537=>4699,\n26395=>4700,\n32178=>4701,\n32596=>4702,\n33426=>4703,\n33579=>4704,\n33725=>4705,\n36638=>4706,\n37017=>4707,\n22475=>4708,\n22969=>4709,\n23186=>4710,\n23504=>4711,\n26151=>4712,\n26522=>4713,\n26757=>4714,\n27599=>4715,\n29028=>4716,\n32629=>4717,\n36023=>4718,\n36067=>4719,\n36993=>4720,\n39749=>4721,\n33032=>4722,\n35978=>4723,\n38476=>4724,\n39488=>4725,\n12230=>4726,\n40613=>4726,\n23391=>4727,\n27667=>4728,\n29467=>4729,\n30450=>4730,\n30431=>4731,\n33804=>4732,\n20906=>4733,\n35219=>4734,\n20813=>4735,\n20885=>4736,\n21193=>4737,\n26825=>4738,\n27796=>4739,\n30468=>4740,\n30496=>4741,\n32191=>4742,\n32236=>4743,\n12207=>4744,\n38754=>4744,\n40629=>4745,\n28357=>4746,\n34065=>4747,\n20901=>4748,\n21517=>4749,\n21629=>4750,\n26126=>4751,\n26269=>4752,\n26919=>4753,\n28319=>4754,\n12139=>4755,\n30399=>4755,\n30609=>4756,\n33559=>4757,\n33986=>4758,\n34719=>4759,\n37225=>4760,\n37528=>4761,\n40180=>4762,\n34946=>4763,\n20398=>4764,\n20882=>4765,\n21215=>4766,\n22982=>4767,\n24125=>4768,\n24917=>4769,\n25720=>4770,\n25721=>4771,\n26286=>4772,\n26576=>4773,\n27169=>4774,\n27597=>4775,\n12113=>4776,\n27611=>4776,\n29279=>4777,\n29281=>4778,\n29761=>4779,\n30520=>4780,\n12141=>4781,\n30683=>4781,\n32791=>4782,\n33468=>4783,\n33541=>4784,\n35584=>4785,\n35624=>4786,\n35980=>4787,\n12106=>4788,\n26408=>4788,\n27792=>4789,\n29287=>4790,\n12140=>4791,\n30446=>4791,\n30566=>4792,\n31302=>4793,\n40361=>4794,\n27519=>4795,\n27794=>4796,\n22818=>4797,\n26406=>4798,\n33945=>4799,\n21359=>4800,\n22675=>4801,\n22937=>4802,\n24287=>4803,\n25551=>4804,\n26164=>4805,\n26483=>4806,\n28218=>4807,\n29483=>4808,\n31447=>4809,\n33495=>4810,\n37672=>4811,\n21209=>4812,\n24043=>4813,\n25006=>4814,\n25035=>4815,\n25098=>4816,\n25287=>4817,\n25771=>4818,\n12102=>4819,\n26080=>4819,\n26969=>4820,\n27494=>4821,\n12111=>4822,\n27595=>4822,\n28961=>4823,\n29687=>4824,\n30045=>4825,\n32326=>4826,\n33310=>4827,\n33538=>4828,\n34154=>4829,\n35491=>4830,\n36031=>4831,\n38695=>4832,\n40289=>4833,\n22696=>4834,\n40664=>4835,\n20497=>4836,\n21006=>4837,\n21563=>4838,\n21839=>4839,\n12098=>4840,\n25991=>4840,\n27766=>4841,\n32010=>4842,\n32011=>4843,\n32862=>4844,\n34442=>4845,\n12200=>4846,\n38272=>4846,\n38639=>4847,\n21247=>4848,\n27797=>4849,\n29289=>4850,\n21619=>4851,\n23194=>4852,\n23614=>4853,\n23883=>4854,\n24396=>4855,\n24494=>4856,\n26410=>4857,\n26806=>4858,\n26979=>4859,\n28220=>4860,\n28228=>4861,\n30473=>4862,\n12150=>4863,\n31859=>4863,\n32654=>4864,\n34183=>4865,\n35598=>4866,\n36855=>4867,\n38753=>4868,\n40692=>4869,\n23735=>4870,\n24758=>4871,\n24845=>4872,\n25003=>4873,\n25935=>4874,\n26107=>4875,\n26108=>4876,\n27665=>4877,\n27887=>4878,\n29599=>4879,\n29641=>4880,\n32225=>4881,\n38292=>4882,\n23494=>4883,\n34588=>4884,\n35600=>4885,\n21085=>4886,\n21338=>4887,\n25293=>4888,\n25615=>4889,\n25778=>4890,\n26420=>4891,\n27192=>4892,\n27850=>4893,\n29632=>4894,\n29854=>4895,\n31636=>4896,\n31893=>4897,\n32283=>4898,\n33162=>4899,\n33334=>4900,\n34180=>4901,\n36843=>4902,\n38649=>4903,\n39361=>4904,\n20276=>4905,\n21322=>4906,\n21453=>4907,\n21467=>4908,\n25292=>4909,\n25644=>4910,\n25856=>4911,\n26001=>4912,\n27075=>4913,\n27886=>4914,\n28504=>4915,\n29677=>4916,\n30036=>4917,\n30242=>4918,\n30436=>4919,\n30460=>4920,\n30928=>4921,\n30971=>4922,\n63844=>4922,\n31020=>4923,\n32070=>4924,\n33324=>4925,\n34784=>4926,\n36820=>4927,\n38930=>4928,\n39151=>4929,\n21187=>4930,\n25300=>4931,\n25765=>4932,\n28196=>4933,\n28497=>4934,\n30332=>4935,\n36299=>4936,\n37297=>4937,\n37474=>4938,\n39662=>4939,\n39747=>4940,\n20515=>4941,\n20621=>4942,\n22346=>4943,\n22952=>4944,\n23592=>4945,\n24135=>4946,\n24439=>4947,\n25151=>4948,\n25918=>4949,\n12101=>4950,\n26041=>4950,\n26049=>4951,\n26121=>4952,\n26507=>4953,\n27036=>4954,\n28354=>4955,\n30917=>4956,\n32033=>4957,\n32938=>4958,\n33152=>4959,\n33323=>4960,\n33459=>4961,\n33953=>4962,\n34444=>4963,\n35370=>4964,\n35607=>4965,\n37030=>4966,\n38450=>4967,\n40848=>4968,\n20493=>4969,\n20467=>4970,\n22521=>4971,\n24472=>4972,\n25308=>4973,\n25490=>4974,\n26479=>4975,\n28227=>4976,\n28953=>4977,\n30403=>4978,\n32972=>4979,\n32986=>4980,\n35060=>4981,\n35061=>4982,\n35097=>4983,\n36064=>4984,\n36649=>4985,\n37197=>4986,\n38506=>4987,\n20271=>4988,\n20336=>4989,\n24091=>4990,\n26575=>4991,\n26658=>4992,\n12137=>4993,\n30333=>4993,\n30334=>4994,\n39748=>4995,\n24161=>4996,\n27146=>4997,\n29033=>4998,\n29140=>4999,\n30058=>5000,\n32321=>5001,\n34115=>5002,\n34281=>5003,\n39132=>5004,\n20240=>5005,\n31567=>5006,\n32624=>5007,\n38309=>5008,\n20961=>5009,\n24070=>5010,\n26805=>5011,\n27710=>5012,\n27726=>5013,\n27867=>5014,\n29359=>5015,\n31684=>5016,\n33539=>5017,\n27861=>5018,\n29754=>5019,\n20731=>5020,\n21128=>5021,\n22721=>5022,\n25816=>5023,\n27287=>5024,\n29863=>5025,\n30294=>5026,\n30887=>5027,\n34327=>5028,\n38370=>5029,\n38713=>5030,\n21342=>5031,\n24321=>5032,\n35722=>5033,\n36776=>5034,\n36783=>5035,\n37002=>5036,\n21029=>5037,\n30629=>5038,\n40009=>5039,\n40712=>5040,\n19993=>5041,\n20482=>5042,\n20853=>5043,\n23643=>5044,\n24183=>5045,\n26142=>5046,\n26170=>5047,\n26564=>5048,\n26821=>5049,\n28851=>5050,\n29953=>5051,\n30149=>5052,\n31177=>5053,\n31453=>5054,\n36647=>5055,\n39200=>5056,\n39432=>5057,\n20445=>5058,\n22561=>5059,\n22577=>5060,\n23542=>5061,\n26222=>5062,\n27493=>5063,\n27921=>5064,\n28282=>5065,\n28541=>5066,\n29668=>5067,\n29995=>5068,\n33769=>5069,\n35036=>5070,\n35091=>5071,\n35676=>5072,\n36628=>5073,\n20239=>5074,\n20693=>5075,\n21264=>5076,\n12056=>5077,\n21340=>5077,\n23443=>5078,\n24489=>5079,\n63846=>5079,\n26381=>5080,\n31119=>5081,\n33145=>5082,\n33583=>5083,\n34068=>5084,\n35079=>5085,\n35206=>5086,\n36665=>5087,\n36667=>5088,\n64007=>5088,\n39333=>5089,\n39954=>5090,\n26412=>5091,\n20086=>5092,\n20472=>5093,\n22857=>5094,\n23553=>5095,\n23791=>5096,\n23792=>5097,\n25447=>5098,\n26834=>5099,\n28925=>5100,\n29090=>5101,\n29739=>5102,\n32299=>5103,\n34028=>5104,\n34562=>5105,\n36898=>5106,\n37586=>5107,\n40179=>5108,\n19981=>5109,\n63847=>5109,\n20184=>5110,\n20463=>5111,\n20613=>5112,\n21078=>5113,\n21103=>5114,\n21542=>5115,\n21648=>5116,\n22496=>5117,\n22827=>5118,\n23142=>5119,\n23386=>5120,\n23413=>5121,\n23500=>5122,\n24220=>5123,\n25206=>5124,\n25975=>5125,\n26023=>5126,\n28014=>5127,\n28325=>5128,\n12119=>5129,\n29238=>5129,\n31526=>5130,\n31807=>5131,\n12152=>5132,\n32566=>5132,\n33104=>5133,\n33105=>5134,\n33178=>5135,\n33344=>5136,\n33433=>5137,\n33705=>5138,\n35331=>5139,\n36000=>5140,\n36070=>5141,\n36091=>5142,\n36212=>5143,\n36282=>5144,\n37096=>5145,\n37340=>5146,\n12201=>5147,\n38428=>5147,\n38468=>5148,\n39385=>5149,\n40167=>5150,\n21271=>5151,\n63843=>5151,\n20998=>5152,\n21545=>5153,\n22132=>5154,\n22707=>5155,\n22868=>5156,\n22894=>5157,\n24575=>5158,\n24996=>5159,\n25198=>5160,\n26128=>5161,\n27774=>5162,\n28954=>5163,\n30406=>5164,\n31881=>5165,\n31966=>5166,\n32027=>5167,\n33452=>5168,\n36033=>5169,\n38640=>5170,\n20315=>5171,\n24343=>5172,\n24447=>5173,\n25282=>5174,\n23849=>5175,\n26379=>5176,\n26842=>5177,\n30844=>5178,\n32323=>5179,\n40300=>5180,\n19989=>5181,\n20633=>5182,\n12052=>5183,\n21269=>5183,\n21290=>5184,\n21329=>5185,\n22915=>5186,\n23138=>5187,\n24199=>5188,\n24754=>5189,\n24970=>5190,\n25161=>5191,\n25209=>5192,\n26000=>5193,\n26503=>5194,\n27047=>5195,\n12112=>5196,\n27604=>5196,\n27606=>5197,\n27607=>5198,\n27608=>5199,\n27832=>5200,\n29749=>5201,\n30202=>5202,\n30738=>5203,\n30865=>5204,\n31189=>5205,\n31192=>5206,\n31875=>5207,\n32203=>5208,\n32737=>5209,\n32933=>5210,\n33086=>5211,\n33218=>5212,\n33778=>5213,\n34586=>5214,\n35048=>5215,\n35513=>5216,\n35692=>5217,\n36027=>5218,\n37145=>5219,\n12206=>5220,\n38750=>5220,\n12214=>5221,\n39131=>5221,\n12240=>5222,\n40763=>5222,\n22188=>5223,\n23338=>5224,\n24428=>5225,\n25996=>5226,\n27315=>5227,\n27567=>5228,\n27996=>5229,\n28657=>5230,\n28693=>5231,\n29277=>5232,\n29613=>5233,\n36007=>5234,\n36051=>5235,\n38971=>5236,\n24977=>5237,\n27703=>5238,\n32856=>5239,\n39425=>5240,\n20045=>5241,\n20107=>5242,\n20123=>5243,\n20181=>5244,\n20282=>5245,\n20284=>5246,\n20351=>5247,\n20447=>5248,\n20735=>5249,\n21490=>5250,\n21496=>5251,\n21766=>5252,\n21987=>5253,\n22235=>5254,\n12064=>5255,\n22763=>5255,\n22882=>5256,\n23057=>5257,\n23531=>5258,\n23546=>5259,\n23556=>5260,\n24051=>5261,\n24107=>5262,\n24473=>5263,\n24605=>5264,\n25448=>5265,\n26012=>5266,\n26031=>5267,\n26614=>5268,\n26619=>5269,\n26797=>5270,\n27515=>5271,\n27801=>5272,\n27863=>5273,\n28195=>5274,\n28681=>5275,\n29509=>5276,\n30722=>5277,\n31038=>5278,\n31040=>5279,\n31072=>5280,\n31169=>5281,\n31721=>5282,\n32023=>5283,\n32114=>5284,\n32902=>5285,\n33293=>5286,\n33678=>5287,\n34001=>5288,\n34503=>5289,\n35039=>5290,\n35408=>5291,\n35422=>5292,\n35613=>5293,\n36060=>5294,\n36198=>5295,\n36781=>5296,\n37034=>5297,\n39164=>5298,\n39391=>5299,\n40605=>5300,\n21066=>5301,\n26388=>5302,\n20632=>5303,\n21034=>5304,\n12077=>5305,\n23665=>5305,\n25955=>5306,\n27733=>5307,\n29642=>5308,\n29987=>5309,\n30109=>5310,\n31639=>5311,\n33948=>5312,\n37240=>5313,\n38704=>5314,\n20087=>5315,\n25746=>5316,\n27578=>5317,\n63856=>5317,\n29022=>5318,\n34217=>5319,\n19977=>5320,\n26441=>5321,\n26862=>5322,\n28183=>5323,\n33439=>5324,\n34072=>5325,\n34923=>5326,\n25591=>5327,\n28545=>5328,\n37394=>5329,\n39087=>5330,\n19978=>5331,\n20663=>5332,\n20687=>5333,\n20767=>5334,\n21830=>5335,\n21930=>5336,\n22039=>5337,\n23360=>5338,\n23577=>5339,\n23776=>5340,\n24120=>5341,\n24202=>5342,\n24224=>5343,\n24258=>5344,\n24819=>5345,\n26705=>5346,\n27233=>5347,\n28248=>5348,\n29245=>5349,\n29248=>5350,\n29376=>5351,\n63994=>5351,\n30456=>5352,\n31077=>5353,\n31665=>5354,\n32724=>5355,\n35059=>5356,\n35316=>5357,\n35443=>5358,\n35937=>5359,\n36062=>5360,\n38684=>5361,\n22622=>5362,\n63852=>5362,\n29885=>5363,\n36093=>5364,\n21959=>5365,\n31329=>5366,\n32034=>5367,\n63850=>5367,\n12170=>5368,\n33394=>5368,\n29298=>5369,\n12131=>5370,\n29983=>5370,\n29989=>5371,\n31513=>5372,\n22661=>5373,\n22779=>5374,\n23996=>5375,\n24207=>5376,\n24246=>5377,\n24464=>5378,\n24661=>5379,\n25234=>5380,\n25471=>5381,\n25933=>5382,\n26257=>5383,\n26329=>5384,\n26360=>5385,\n26646=>5386,\n26866=>5387,\n29312=>5388,\n29790=>5389,\n31598=>5390,\n32110=>5391,\n32214=>5392,\n32626=>5393,\n32997=>5394,\n33298=>5395,\n34223=>5396,\n35199=>5397,\n35475=>5398,\n36893=>5399,\n37604=>5400,\n12233=>5401,\n40653=>5401,\n12239=>5402,\n40736=>5402,\n12067=>5403,\n22805=>5403,\n22893=>5404,\n24109=>5405,\n24796=>5406,\n26132=>5407,\n26227=>5408,\n26512=>5409,\n27728=>5410,\n28101=>5411,\n28511=>5412,\n12143=>5413,\n30707=>5413,\n30889=>5414,\n33990=>5415,\n37323=>5416,\n37675=>5417,\n20185=>5418,\n20682=>5419,\n20808=>5420,\n21892=>5421,\n23307=>5422,\n23459=>5423,\n25159=>5424,\n25982=>5425,\n26059=>5426,\n28210=>5427,\n29053=>5428,\n29697=>5429,\n29764=>5430,\n29831=>5431,\n29887=>5432,\n30316=>5433,\n31146=>5434,\n32218=>5435,\n32341=>5436,\n32680=>5437,\n33146=>5438,\n33203=>5439,\n33337=>5440,\n34330=>5441,\n34796=>5442,\n35445=>5443,\n36323=>5444,\n36984=>5445,\n37521=>5446,\n37925=>5447,\n39245=>5448,\n39854=>5449,\n21352=>5450,\n23633=>5451,\n26964=>5452,\n27844=>5453,\n27945=>5454,\n28203=>5455,\n12166=>5456,\n33292=>5456,\n34203=>5457,\n35131=>5458,\n35373=>5459,\n35498=>5460,\n63855=>5460,\n63905=>5460,\n38634=>5461,\n40807=>5462,\n21089=>5463,\n26297=>5464,\n27570=>5465,\n32406=>5466,\n34814=>5467,\n36109=>5468,\n38275=>5469,\n38493=>5470,\n25885=>5471,\n28041=>5472,\n29166=>5473,\n22478=>5474,\n22995=>5475,\n23468=>5476,\n24615=>5477,\n24826=>5478,\n25104=>5479,\n26143=>5480,\n26207=>5481,\n29481=>5482,\n29689=>5483,\n30427=>5484,\n30465=>5485,\n63853=>5485,\n31596=>5486,\n32854=>5487,\n32882=>5488,\n33125=>5489,\n35488=>5490,\n37266=>5491,\n19990=>5492,\n21218=>5493,\n27506=>5494,\n27927=>5495,\n31237=>5496,\n31545=>5497,\n32048=>5498,\n36016=>5499,\n21484=>5500,\n22063=>5501,\n22609=>5502,\n23477=>5503,\n12073=>5504,\n23567=>5504,\n23569=>5505,\n24034=>5506,\n25152=>5507,\n25475=>5508,\n25620=>5509,\n26157=>5510,\n26803=>5511,\n27836=>5512,\n28040=>5513,\n28335=>5514,\n28703=>5515,\n28836=>5516,\n29138=>5517,\n29990=>5518,\n30095=>5519,\n30094=>5520,\n30233=>5521,\n31505=>5522,\n31712=>5523,\n31787=>5524,\n32032=>5525,\n32057=>5526,\n34092=>5527,\n34157=>5528,\n34311=>5529,\n35380=>5530,\n36877=>5531,\n36961=>5532,\n37045=>5533,\n37559=>5534,\n38902=>5535,\n39479=>5536,\n20439=>5537,\n23660=>5538,\n26463=>5539,\n28049=>5540,\n31903=>5541,\n32396=>5542,\n35606=>5543,\n36118=>5544,\n36895=>5545,\n23403=>5546,\n24061=>5547,\n25613=>5548,\n33984=>5549,\n36956=>5550,\n39137=>5551,\n29575=>5552,\n63841=>5552,\n63963=>5552,\n23435=>5553,\n24730=>5554,\n26494=>5555,\n28126=>5556,\n35359=>5557,\n35494=>5558,\n36865=>5559,\n38924=>5560,\n21047=>5561,\n28753=>5562,\n30862=>5563,\n37782=>5564,\n34928=>5565,\n37335=>5566,\n20462=>5567,\n21463=>5568,\n22013=>5569,\n22234=>5570,\n22402=>5571,\n22781=>5572,\n23234=>5573,\n23432=>5574,\n23723=>5575,\n23744=>5576,\n24101=>5577,\n24833=>5578,\n25101=>5579,\n12095=>5580,\n25163=>5580,\n25480=>5581,\n25628=>5582,\n25910=>5583,\n25976=>5584,\n63849=>5584,\n27193=>5585,\n27530=>5586,\n12116=>5587,\n27700=>5587,\n27929=>5588,\n28465=>5589,\n29159=>5590,\n29417=>5591,\n29560=>5592,\n29703=>5593,\n29874=>5594,\n30246=>5595,\n30561=>5596,\n31168=>5597,\n31319=>5598,\n31466=>5599,\n31929=>5600,\n32143=>5601,\n32172=>5602,\n32353=>5603,\n32670=>5604,\n33065=>5605,\n33585=>5606,\n33936=>5607,\n34010=>5608,\n34282=>5609,\n34966=>5610,\n35504=>5611,\n35728=>5612,\n36664=>5613,\n36930=>5614,\n36995=>5615,\n37228=>5616,\n37526=>5617,\n37561=>5618,\n38539=>5619,\n38567=>5620,\n38568=>5621,\n38614=>5622,\n38656=>5623,\n38920=>5624,\n12216=>5625,\n39318=>5625,\n39635=>5626,\n39706=>5627,\n21460=>5628,\n22654=>5629,\n22809=>5630,\n23408=>5631,\n23487=>5632,\n28113=>5633,\n28506=>5634,\n29087=>5635,\n29729=>5636,\n29881=>5637,\n32901=>5638,\n33789=>5639,\n24033=>5640,\n24455=>5641,\n24490=>5642,\n24642=>5643,\n26092=>5644,\n26642=>5645,\n26991=>5646,\n27219=>5647,\n27529=>5648,\n27957=>5649,\n28147=>5650,\n29667=>5651,\n30462=>5652,\n30636=>5653,\n31565=>5654,\n32020=>5655,\n33059=>5656,\n33308=>5657,\n33600=>5658,\n34036=>5659,\n34147=>5660,\n35426=>5661,\n35524=>5662,\n37255=>5663,\n37662=>5664,\n38918=>5665,\n39348=>5666,\n25100=>5667,\n34899=>5668,\n36848=>5669,\n37477=>5670,\n23815=>5671,\n23847=>5672,\n23913=>5673,\n29791=>5674,\n33181=>5675,\n34664=>5676,\n28629=>5677,\n25342=>5678,\n63859=>5678,\n32722=>5679,\n35126=>5680,\n35186=>5681,\n19998=>5682,\n20056=>5683,\n20711=>5684,\n21213=>5685,\n21319=>5686,\n25215=>5687,\n26119=>5688,\n32361=>5689,\n34821=>5690,\n38494=>5691,\n20365=>5692,\n21273=>5693,\n22070=>5694,\n22987=>5695,\n23204=>5696,\n12075=>5697,\n23608=>5697,\n23630=>5698,\n23629=>5699,\n24066=>5700,\n24337=>5701,\n24643=>5702,\n26045=>5703,\n26159=>5704,\n26178=>5705,\n26558=>5706,\n26612=>5707,\n29468=>5708,\n12142=>5709,\n30690=>5709,\n12144=>5710,\n31034=>5710,\n32709=>5711,\n33940=>5712,\n33997=>5713,\n35222=>5714,\n35430=>5715,\n35433=>5716,\n35553=>5717,\n12183=>5718,\n35925=>5718,\n35962=>5719,\n22516=>5720,\n23508=>5721,\n24335=>5722,\n24687=>5723,\n25325=>5724,\n26893=>5725,\n27542=>5726,\n28252=>5727,\n29060=>5728,\n31698=>5729,\n34645=>5730,\n35672=>5731,\n63996=>5731,\n36606=>5732,\n12215=>5733,\n39135=>5733,\n39166=>5734,\n20280=>5735,\n20353=>5736,\n20449=>5737,\n21627=>5738,\n23072=>5739,\n23480=>5740,\n24892=>5741,\n26032=>5742,\n26216=>5743,\n29180=>5744,\n30003=>5745,\n31070=>5746,\n32051=>5747,\n33102=>5748,\n12162=>5749,\n33251=>5749,\n33688=>5750,\n34218=>5751,\n34254=>5752,\n34563=>5753,\n35338=>5754,\n12189=>5755,\n36523=>5755,\n12191=>5756,\n36763=>5756,\n36805=>5757,\n22833=>5758,\n23460=>5759,\n23526=>5760,\n24713=>5761,\n23529=>5762,\n23563=>5763,\n12092=>5764,\n24515=>5764,\n27777=>5765,\n28145=>5766,\n28683=>5767,\n29978=>5768,\n33455=>5769,\n35574=>5770,\n20160=>5771,\n63997=>5771,\n12055=>5772,\n21313=>5772,\n38617=>5773,\n12114=>5774,\n27663=>5774,\n20126=>5775,\n20420=>5776,\n20818=>5777,\n21854=>5778,\n23077=>5779,\n23784=>5780,\n25105=>5781,\n12123=>5782,\n29273=>5782,\n33469=>5783,\n33706=>5784,\n34558=>5785,\n34905=>5786,\n35357=>5787,\n38463=>5788,\n38597=>5789,\n39187=>5790,\n40201=>5791,\n40285=>5792,\n22538=>5793,\n23731=>5794,\n23997=>5795,\n24132=>5796,\n24801=>5797,\n63929=>5797,\n24853=>5798,\n25569=>5799,\n27138=>5800,\n63764=>5800,\n63836=>5800,\n63935=>5800,\n28197=>5801,\n37122=>5802,\n37716=>5803,\n38990=>5804,\n39952=>5805,\n40823=>5806,\n23433=>5807,\n23736=>5808,\n25353=>5809,\n26191=>5810,\n26696=>5811,\n30524=>5812,\n38593=>5813,\n38797=>5814,\n38996=>5815,\n39839=>5816,\n26017=>5817,\n35585=>5818,\n36555=>5819,\n38332=>5820,\n21813=>5821,\n23721=>5822,\n24022=>5823,\n24245=>5824,\n26263=>5825,\n30284=>5826,\n33780=>5827,\n38343=>5828,\n22739=>5829,\n25276=>5830,\n29390=>5831,\n40232=>5832,\n20208=>5833,\n22830=>5834,\n24591=>5835,\n26171=>5836,\n27523=>5837,\n31207=>5838,\n40230=>5839,\n21395=>5840,\n21696=>5841,\n22467=>5842,\n23830=>5843,\n24859=>5844,\n26326=>5845,\n28079=>5846,\n30861=>5847,\n33406=>5848,\n38552=>5849,\n38724=>5850,\n21380=>5851,\n25212=>5852,\n25494=>5853,\n28082=>5854,\n32266=>5855,\n33099=>5856,\n38989=>5857,\n27387=>5858,\n32588=>5859,\n40367=>5860,\n40474=>5861,\n20063=>5862,\n20539=>5863,\n20918=>5864,\n22812=>5865,\n24825=>5866,\n25590=>5867,\n26928=>5868,\n29242=>5869,\n32822=>5870,\n37326=>5871,\n24369=>5872,\n32004=>5873,\n33509=>5874,\n63860=>5874,\n33903=>5875,\n33979=>5876,\n34277=>5877,\n36493=>5878,\n20335=>5879,\n22756=>5880,\n23363=>5881,\n24665=>5882,\n25562=>5883,\n25880=>5884,\n25965=>5885,\n26264=>5886,\n26954=>5887,\n27171=>5888,\n27915=>5889,\n28673=>5890,\n29036=>5891,\n30162=>5892,\n30221=>5893,\n31155=>5894,\n31344=>5895,\n12154=>5896,\n32650=>5896,\n35140=>5897,\n35731=>5898,\n37312=>5899,\n38525=>5900,\n39178=>5901,\n22276=>5902,\n24481=>5903,\n26044=>5904,\n28417=>5905,\n30208=>5906,\n31142=>5907,\n35486=>5908,\n39341=>5909,\n12226=>5910,\n39770=>5910,\n40812=>5911,\n20740=>5912,\n25014=>5913,\n25233=>5914,\n27277=>5915,\n33222=>5916,\n20547=>5917,\n22576=>5918,\n24422=>5919,\n28937=>5920,\n12180=>5921,\n35328=>5921,\n35578=>5922,\n23420=>5923,\n34326=>5924,\n20474=>5925,\n20796=>5926,\n22196=>5927,\n22852=>5928,\n25513=>5929,\n28153=>5930,\n23978=>5931,\n26989=>5932,\n20870=>5933,\n20104=>5934,\n20313=>5935,\n22914=>5936,\n27487=>5937,\n27741=>5938,\n29877=>5939,\n30998=>5940,\n33287=>5941,\n33349=>5942,\n33593=>5943,\n36671=>5944,\n36701=>5945,\n39192=>5946,\n20134=>5947,\n22495=>5948,\n24441=>5949,\n26131=>5950,\n63968=>5950,\n30123=>5951,\n32377=>5952,\n35695=>5953,\n36870=>5954,\n39515=>5955,\n22181=>5956,\n22567=>5957,\n23032=>5958,\n23071=>5959,\n23476=>5960,\n24310=>5961,\n25424=>5962,\n25403=>5963,\n26941=>5964,\n27783=>5965,\n27839=>5966,\n28046=>5967,\n28051=>5968,\n28149=>5969,\n28436=>5970,\n28895=>5971,\n28982=>5972,\n29017=>5973,\n29123=>5974,\n29141=>5975,\n30799=>5976,\n30831=>5977,\n31605=>5978,\n32227=>5979,\n32303=>5980,\n34893=>5981,\n36575=>5982,\n37467=>5983,\n40182=>5984,\n24709=>5985,\n28037=>5986,\n29105=>5987,\n38321=>5988,\n21421=>5989,\n26579=>5990,\n28814=>5991,\n28976=>5992,\n29744=>5993,\n33398=>5994,\n33490=>5995,\n38331=>5996,\n39653=>5997,\n40573=>5998,\n26308=>5999,\n29121=>6000,\n33865=>6001,\n63854=>6001,\n22603=>6002,\n23992=>6003,\n24433=>6004,\n26144=>6005,\n26254=>6006,\n27001=>6007,\n27054=>6008,\n27704=>6009,\n27891=>6010,\n28214=>6011,\n28481=>6012,\n28634=>6013,\n28699=>6014,\n28719=>6015,\n29008=>6016,\n29151=>6017,\n29552=>6018,\n29787=>6019,\n29908=>6020,\n30408=>6021,\n31310=>6022,\n32403=>6023,\n33521=>6024,\n35424=>6025,\n36814=>6026,\n37704=>6027,\n38681=>6028,\n20034=>6029,\n20522=>6030,\n21000=>6031,\n21473=>6032,\n26355=>6033,\n27757=>6034,\n28618=>6035,\n29450=>6036,\n30591=>6037,\n31330=>6038,\n33454=>6039,\n34269=>6040,\n34306=>6041,\n35028=>6042,\n35427=>6043,\n35709=>6044,\n35947=>6045,\n37555=>6046,\n38675=>6047,\n38928=>6048,\n20116=>6049,\n20237=>6050,\n20425=>6051,\n20658=>6052,\n21320=>6053,\n21566=>6054,\n21555=>6055,\n21978=>6056,\n22626=>6057,\n22714=>6058,\n22887=>6059,\n23067=>6060,\n23524=>6061,\n24735=>6062,\n25034=>6063,\n25942=>6064,\n26111=>6065,\n26212=>6066,\n26791=>6067,\n27738=>6068,\n28595=>6069,\n28879=>6070,\n29100=>6071,\n29522=>6072,\n31613=>6073,\n34568=>6074,\n35492=>6075,\n39986=>6076,\n40711=>6077,\n23627=>6078,\n27779=>6079,\n29508=>6080,\n12127=>6081,\n29577=>6081,\n37434=>6082,\n28331=>6083,\n29797=>6084,\n30239=>6085,\n31337=>6086,\n32277=>6087,\n34314=>6088,\n20800=>6089,\n22725=>6090,\n25793=>6091,\n29934=>6092,\n29973=>6093,\n30320=>6094,\n32705=>6095,\n37013=>6096,\n38605=>6097,\n39252=>6098,\n28198=>6099,\n12129=>6100,\n29926=>6100,\n31401=>6101,\n31402=>6102,\n33253=>6103,\n34521=>6104,\n34680=>6105,\n35355=>6106,\n23113=>6107,\n23436=>6108,\n23451=>6109,\n26785=>6110,\n26880=>6111,\n28003=>6112,\n29609=>6113,\n29715=>6114,\n29740=>6115,\n30871=>6116,\n32233=>6117,\n32747=>6118,\n33048=>6119,\n33109=>6120,\n33694=>6121,\n35916=>6122,\n38446=>6123,\n63942=>6123,\n38929=>6124,\n12104=>6125,\n26352=>6125,\n24448=>6126,\n26106=>6127,\n26505=>6128,\n27754=>6129,\n29579=>6130,\n20525=>6131,\n23043=>6132,\n27498=>6133,\n30702=>6134,\n22806=>6135,\n23916=>6136,\n24013=>6137,\n29477=>6138,\n30031=>6139,\n20709=>6140,\n20985=>6141,\n22575=>6142,\n22829=>6143,\n22934=>6144,\n23002=>6145,\n23525=>6146,\n23970=>6147,\n25303=>6148,\n25622=>6149,\n25747=>6150,\n25854=>6151,\n26332=>6152,\n27208=>6153,\n29183=>6154,\n29796=>6155,\n31368=>6156,\n31407=>6157,\n32327=>6158,\n32350=>6159,\n32768=>6160,\n33136=>6161,\n34799=>6162,\n35201=>6163,\n35616=>6164,\n36953=>6165,\n36992=>6166,\n39250=>6167,\n24958=>6168,\n27442=>6169,\n28020=>6170,\n32287=>6171,\n35109=>6172,\n36785=>6173,\n20433=>6174,\n20653=>6175,\n20887=>6176,\n21191=>6177,\n22471=>6178,\n22665=>6179,\n23481=>6180,\n24248=>6181,\n24898=>6182,\n27029=>6183,\n28044=>6184,\n28263=>6185,\n28342=>6186,\n29076=>6187,\n29794=>6188,\n12132=>6189,\n29992=>6189,\n29996=>6190,\n32883=>6191,\n33592=>6192,\n33993=>6193,\n36362=>6194,\n37780=>6195,\n37854=>6196,\n20110=>6197,\n20305=>6198,\n20598=>6199,\n20778=>6200,\n12060=>6201,\n21448=>6201,\n21451=>6202,\n21491=>6203,\n23431=>6204,\n23507=>6205,\n23588=>6206,\n24858=>6207,\n24962=>6208,\n26100=>6209,\n12124=>6210,\n29275=>6210,\n29591=>6211,\n29760=>6212,\n30402=>6213,\n31056=>6214,\n31121=>6215,\n31161=>6216,\n32006=>6217,\n12155=>6218,\n32701=>6218,\n33419=>6219,\n34261=>6220,\n34398=>6221,\n36802=>6222,\n36935=>6223,\n37109=>6224,\n37354=>6225,\n38533=>6226,\n12204=>6227,\n38632=>6227,\n38633=>6228,\n21206=>6229,\n24423=>6230,\n26093=>6231,\n26161=>6232,\n26671=>6233,\n29020=>6234,\n31286=>6235,\n37057=>6236,\n38922=>6237,\n20113=>6238,\n27218=>6239,\n27550=>6240,\n28560=>6241,\n29065=>6242,\n32792=>6243,\n33464=>6244,\n34131=>6245,\n36939=>6246,\n38549=>6247,\n38642=>6248,\n38907=>6249,\n34074=>6250,\n39729=>6251,\n20112=>6252,\n29066=>6253,\n38596=>6254,\n20803=>6255,\n21407=>6256,\n21729=>6257,\n22291=>6258,\n22290=>6259,\n22435=>6260,\n23195=>6261,\n23236=>6262,\n23491=>6263,\n24616=>6264,\n24895=>6265,\n25588=>6266,\n27781=>6267,\n27961=>6268,\n28274=>6269,\n28304=>6270,\n29232=>6271,\n29503=>6272,\n29783=>6273,\n33489=>6274,\n34945=>6275,\n36677=>6276,\n36960=>6277,\n38498=>6278,\n39000=>6279,\n40219=>6280,\n12105=>6281,\n26376=>6281,\n36234=>6282,\n37470=>6283,\n20301=>6284,\n20553=>6285,\n20702=>6286,\n21361=>6287,\n22285=>6288,\n22996=>6289,\n23041=>6290,\n23561=>6291,\n24944=>6292,\n26256=>6293,\n28205=>6294,\n29234=>6295,\n29771=>6296,\n32239=>6297,\n32963=>6298,\n33806=>6299,\n33894=>6300,\n34111=>6301,\n34655=>6302,\n34907=>6303,\n35096=>6304,\n35586=>6305,\n36949=>6306,\n12209=>6307,\n38859=>6307,\n39759=>6308,\n20083=>6309,\n20369=>6310,\n20754=>6311,\n20842=>6312,\n21807=>6313,\n21929=>6314,\n23418=>6315,\n23461=>6316,\n24188=>6317,\n24189=>6318,\n24254=>6319,\n24736=>6320,\n24799=>6321,\n24840=>6322,\n24841=>6323,\n25540=>6324,\n25912=>6325,\n26377=>6326,\n26580=>6327,\n26586=>6328,\n26977=>6329,\n26978=>6330,\n27833=>6331,\n27943=>6332,\n28216=>6333,\n28641=>6334,\n29494=>6335,\n29495=>6336,\n29788=>6337,\n30001=>6338,\n30290=>6339,\n32173=>6340,\n33278=>6341,\n33848=>6342,\n35029=>6343,\n35480=>6344,\n35547=>6345,\n35565=>6346,\n36400=>6347,\n36418=>6348,\n36938=>6349,\n36926=>6350,\n36986=>6351,\n12195=>6352,\n37193=>6352,\n37321=>6353,\n37742=>6354,\n22537=>6355,\n27603=>6356,\n12161=>6357,\n32905=>6357,\n32946=>6358,\n20801=>6359,\n22891=>6360,\n23609=>6361,\n28516=>6362,\n29607=>6363,\n32996=>6364,\n36103=>6365,\n37399=>6366,\n38287=>6367,\n12160=>6368,\n32895=>6368,\n25102=>6369,\n28700=>6370,\n32104=>6371,\n34701=>6372,\n22432=>6373,\n24681=>6374,\n24903=>6375,\n27575=>6376,\n35518=>6377,\n37504=>6378,\n38577=>6379,\n12036=>6380,\n20057=>6380,\n21535=>6381,\n28139=>6382,\n34093=>6383,\n38512=>6384,\n12211=>6385,\n38899=>6385,\n39150=>6386,\n25558=>6387,\n27875=>6388,\n12194=>6389,\n37009=>6389,\n20957=>6390,\n25033=>6391,\n33210=>6392,\n40441=>6393,\n20381=>6394,\n20506=>6395,\n20736=>6396,\n23452=>6397,\n24847=>6398,\n25087=>6399,\n25836=>6400,\n26885=>6401,\n27589=>6402,\n30097=>6403,\n30691=>6404,\n32681=>6405,\n33380=>6406,\n34191=>6407,\n34811=>6408,\n12176=>6409,\n34915=>6409,\n35516=>6410,\n35696=>6411,\n37291=>6412,\n12038=>6413,\n20108=>6413,\n20197=>6414,\n20234=>6415,\n22839=>6416,\n23016=>6417,\n24050=>6418,\n24347=>6419,\n24411=>6420,\n24609=>6421,\n29246=>6422,\n29669=>6423,\n30064=>6424,\n63842=>6424,\n30157=>6425,\n31227=>6426,\n12157=>6427,\n32780=>6427,\n12159=>6428,\n32819=>6428,\n32900=>6429,\n33505=>6430,\n33617=>6431,\n36029=>6432,\n36019=>6433,\n36999=>6434,\n39156=>6435,\n39180=>6436,\n28727=>6437,\n30410=>6438,\n32714=>6439,\n32716=>6440,\n32764=>6441,\n35610=>6442,\n12040=>6443,\n20154=>6443,\n20161=>6444,\n20995=>6445,\n21360=>6446,\n21693=>6447,\n63902=>6447,\n22240=>6448,\n23035=>6449,\n23493=>6450,\n24341=>6451,\n24525=>6452,\n28270=>6453,\n32106=>6454,\n33589=>6455,\n34451=>6456,\n35469=>6457,\n38765=>6458,\n38775=>6459,\n12032=>6460,\n19968=>6460,\n20314=>6461,\n20350=>6462,\n22777=>6463,\n12103=>6464,\n26085=>6464,\n28322=>6465,\n36920=>6466,\n37808=>6467,\n39353=>6468,\n20219=>6469,\n22764=>6470,\n22922=>6471,\n23001=>6472,\n24641=>6473,\n31252=>6474,\n33615=>6475,\n36035=>6476,\n12042=>6477,\n20837=>6477,\n21316=>6478,\n20173=>6479,\n21097=>6480,\n23381=>6481,\n33471=>6482,\n20180=>6483,\n21050=>6484,\n63999=>6484,\n21672=>6485,\n22985=>6486,\n23039=>6487,\n12070=>6488,\n23376=>6488,\n23383=>6489,\n23388=>6490,\n24675=>6491,\n24904=>6492,\n28363=>6493,\n28825=>6494,\n63995=>6494,\n29038=>6495,\n29574=>6496,\n29943=>6497,\n30133=>6498,\n30913=>6499,\n32043=>6500,\n32773=>6501,\n12163=>6502,\n33258=>6502,\n33576=>6503,\n34071=>6504,\n34249=>6505,\n35566=>6506,\n36039=>6507,\n38604=>6508,\n20316=>6509,\n21242=>6510,\n22204=>6511,\n26027=>6512,\n26152=>6513,\n28796=>6514,\n28856=>6515,\n29237=>6516,\n32189=>6517,\n33421=>6518,\n37196=>6519,\n38592=>6520,\n40306=>6521,\n23409=>6522,\n26855=>6523,\n27544=>6524,\n28538=>6525,\n30430=>6526,\n23697=>6527,\n26283=>6528,\n28507=>6529,\n31668=>6530,\n31786=>6531,\n34870=>6532,\n38620=>6533,\n19976=>6534,\n20183=>6535,\n21280=>6536,\n22580=>6537,\n22715=>6538,\n22767=>6539,\n22892=>6540,\n23559=>6541,\n24115=>6542,\n24196=>6543,\n24373=>6544,\n25484=>6545,\n26290=>6546,\n26454=>6547,\n27167=>6548,\n27299=>6549,\n27404=>6550,\n28479=>6551,\n29254=>6552,\n29520=>6553,\n29835=>6554,\n31456=>6555,\n31911=>6556,\n33144=>6557,\n33247=>6558,\n33255=>6559,\n33674=>6560,\n33900=>6561,\n34083=>6562,\n34196=>6563,\n34255=>6564,\n35037=>6565,\n36115=>6566,\n37292=>6567,\n12199=>6568,\n38263=>6568,\n38556=>6569,\n20877=>6570,\n21705=>6571,\n22312=>6572,\n23472=>6573,\n25165=>6574,\n26448=>6575,\n26685=>6576,\n26771=>6577,\n28221=>6578,\n28371=>6579,\n28797=>6580,\n32289=>6581,\n35009=>6582,\n36001=>6583,\n36617=>6584,\n40779=>6585,\n40782=>6586,\n29229=>6587,\n31631=>6588,\n35533=>6589,\n37658=>6590,\n20295=>6591,\n20302=>6592,\n20786=>6593,\n21632=>6594,\n22992=>6595,\n24213=>6596,\n25269=>6597,\n26485=>6598,\n26990=>6599,\n27159=>6600,\n27822=>6601,\n28186=>6602,\n29401=>6603,\n29482=>6604,\n30141=>6605,\n31672=>6606,\n32053=>6607,\n33511=>6608,\n33785=>6609,\n33879=>6610,\n34295=>6611,\n35419=>6612,\n36015=>6613,\n36487=>6614,\n36889=>6615,\n37048=>6616,\n38606=>6617,\n40799=>6618,\n21219=>6619,\n21514=>6620,\n23265=>6621,\n23490=>6622,\n25688=>6623,\n25973=>6624,\n28404=>6625,\n29380=>6626,\n30340=>6627,\n31309=>6628,\n31515=>6629,\n31821=>6630,\n32318=>6631,\n32735=>6632,\n33659=>6633,\n35627=>6634,\n36042=>6635,\n12186=>6636,\n36196=>6636,\n36321=>6637,\n36447=>6638,\n36842=>6639,\n36857=>6640,\n36969=>6641,\n37841=>6642,\n20291=>6643,\n20346=>6644,\n20659=>6645,\n20840=>6646,\n20856=>6647,\n21069=>6648,\n21098=>6649,\n22625=>6650,\n22652=>6651,\n22880=>6652,\n23560=>6653,\n23637=>6654,\n24283=>6655,\n24731=>6656,\n25136=>6657,\n26643=>6658,\n27583=>6659,\n27656=>6660,\n28593=>6661,\n29006=>6662,\n29728=>6663,\n12133=>6664,\n30000=>6664,\n30008=>6665,\n30033=>6666,\n30322=>6667,\n31564=>6668,\n31627=>6669,\n31661=>6670,\n31686=>6671,\n32399=>6672,\n35438=>6673,\n36670=>6674,\n36681=>6675,\n37439=>6676,\n37523=>6677,\n37666=>6678,\n37931=>6679,\n38651=>6680,\n39002=>6681,\n39019=>6682,\n39198=>6683,\n20999=>6684,\n64000=>6684,\n25130=>6685,\n25240=>6686,\n27993=>6687,\n30308=>6688,\n31434=>6689,\n31680=>6690,\n32118=>6691,\n21344=>6692,\n23742=>6693,\n24215=>6694,\n28472=>6695,\n28857=>6696,\n31896=>6697,\n38673=>6698,\n39822=>6699,\n40670=>6700,\n25509=>6701,\n25722=>6702,\n34678=>6703,\n19969=>6704,\n20117=>6705,\n20141=>6706,\n20572=>6707,\n20597=>6708,\n21576=>6709,\n22979=>6710,\n23450=>6711,\n24128=>6712,\n24237=>6713,\n24311=>6714,\n24449=>6715,\n24773=>6716,\n25402=>6717,\n25919=>6718,\n25972=>6719,\n26060=>6720,\n26230=>6721,\n26232=>6722,\n26622=>6723,\n26984=>6724,\n27273=>6725,\n27491=>6726,\n27712=>6727,\n28096=>6728,\n28136=>6729,\n28191=>6730,\n28254=>6731,\n28702=>6732,\n28833=>6733,\n29582=>6734,\n29693=>6735,\n30010=>6736,\n30555=>6737,\n30855=>6738,\n31118=>6739,\n31243=>6740,\n31357=>6741,\n31934=>6742,\n32142=>6743,\n33351=>6744,\n35330=>6745,\n35562=>6746,\n35998=>6747,\n37165=>6748,\n37194=>6749,\n37336=>6750,\n37478=>6751,\n37580=>6752,\n37664=>6753,\n38662=>6754,\n38742=>6755,\n38748=>6756,\n38914=>6757,\n12237=>6758,\n40718=>6758,\n21046=>6759,\n21137=>6760,\n21884=>6761,\n22564=>6762,\n24093=>6763,\n24351=>6764,\n24716=>6765,\n25552=>6766,\n26799=>6767,\n28639=>6768,\n31085=>6769,\n31532=>6770,\n33229=>6771,\n34234=>6772,\n35069=>6773,\n35576=>6774,\n36420=>6775,\n37261=>6776,\n38500=>6777,\n38555=>6778,\n38717=>6779,\n38988=>6780,\n12241=>6781,\n40778=>6781,\n20430=>6782,\n20806=>6783,\n20939=>6784,\n21161=>6785,\n22066=>6786,\n24340=>6787,\n24427=>6788,\n25514=>6789,\n25805=>6790,\n26089=>6791,\n26177=>6792,\n26362=>6793,\n26361=>6794,\n26397=>6795,\n26781=>6796,\n26839=>6797,\n27133=>6798,\n28437=>6799,\n28526=>6800,\n29031=>6801,\n29157=>6802,\n12118=>6803,\n29226=>6803,\n29866=>6804,\n30522=>6805,\n31062=>6806,\n31066=>6807,\n31199=>6808,\n31264=>6809,\n31381=>6810,\n31895=>6811,\n31967=>6812,\n32068=>6813,\n32368=>6814,\n32903=>6815,\n34299=>6816,\n34468=>6817,\n35412=>6818,\n35519=>6819,\n36249=>6820,\n36481=>6821,\n36896=>6822,\n36973=>6823,\n37347=>6824,\n38459=>6825,\n38613=>6826,\n12227=>6827,\n40165=>6827,\n26063=>6828,\n31751=>6829,\n12188=>6830,\n36275=>6830,\n37827=>6831,\n23384=>6832,\n23562=>6833,\n21330=>6834,\n25305=>6835,\n29469=>6836,\n20519=>6837,\n23447=>6838,\n24478=>6839,\n24752=>6840,\n24939=>6841,\n26837=>6842,\n28121=>6843,\n29742=>6844,\n31278=>6845,\n32066=>6846,\n32156=>6847,\n32305=>6848,\n33131=>6849,\n36394=>6850,\n36405=>6851,\n37758=>6852,\n37912=>6853,\n20304=>6854,\n22352=>6855,\n24038=>6856,\n24231=>6857,\n25387=>6858,\n32618=>6859,\n20027=>6860,\n20303=>6861,\n20367=>6862,\n20570=>6863,\n23005=>6864,\n32964=>6865,\n21610=>6866,\n21608=>6867,\n22014=>6868,\n22863=>6869,\n23449=>6870,\n24030=>6871,\n24282=>6872,\n26205=>6873,\n26417=>6874,\n26609=>6875,\n26666=>6876,\n27880=>6877,\n27954=>6878,\n28234=>6879,\n28557=>6880,\n28855=>6881,\n29664=>6882,\n30087=>6883,\n31820=>6884,\n32002=>6885,\n32044=>6886,\n32162=>6887,\n12168=>6888,\n33311=>6888,\n34523=>6889,\n35387=>6890,\n35461=>6891,\n12187=>6892,\n36208=>6892,\n36490=>6893,\n36659=>6894,\n36913=>6895,\n37198=>6896,\n37202=>6897,\n37956=>6898,\n39376=>6899,\n12149=>6900,\n31481=>6900,\n31909=>6901,\n20426=>6902,\n20737=>6903,\n20934=>6904,\n22472=>6905,\n23535=>6906,\n23803=>6907,\n26201=>6908,\n27197=>6909,\n27994=>6910,\n28310=>6911,\n28652=>6912,\n28940=>6913,\n30063=>6914,\n31459=>6915,\n34850=>6916,\n36897=>6917,\n36981=>6918,\n38603=>6919,\n39423=>6920,\n33537=>6921,\n20013=>6922,\n20210=>6923,\n34886=>6924,\n37325=>6925,\n21373=>6926,\n27355=>6927,\n26987=>6928,\n27713=>6929,\n33914=>6930,\n22686=>6931,\n24974=>6932,\n26366=>6933,\n25327=>6934,\n28893=>6935,\n29969=>6936,\n30151=>6937,\n32338=>6938,\n33976=>6939,\n35657=>6940,\n36104=>6941,\n20043=>6942,\n21482=>6943,\n21675=>6944,\n22320=>6945,\n22336=>6946,\n24535=>6947,\n25345=>6948,\n25351=>6949,\n25711=>6950,\n12096=>6951,\n25903=>6951,\n26088=>6952,\n26234=>6953,\n26525=>6954,\n26547=>6955,\n12108=>6956,\n27490=>6956,\n27744=>6957,\n27802=>6958,\n28460=>6959,\n30693=>6960,\n30757=>6961,\n31049=>6962,\n31063=>6963,\n32025=>6964,\n32930=>6965,\n33026=>6966,\n12164=>6967,\n33267=>6967,\n33437=>6968,\n33463=>6969,\n34584=>6970,\n35468=>6971,\n36100=>6972,\n36286=>6973,\n36978=>6974,\n30452=>6975,\n31257=>6976,\n31287=>6977,\n32340=>6978,\n32887=>6979,\n21767=>6980,\n21972=>6981,\n22645=>6982,\n25391=>6983,\n25634=>6984,\n26185=>6985,\n26187=>6986,\n26733=>6987,\n27035=>6988,\n27524=>6989,\n27941=>6990,\n28337=>6991,\n29645=>6992,\n29800=>6993,\n29857=>6994,\n30043=>6995,\n30137=>6996,\n30433=>6997,\n30494=>6998,\n30603=>6999,\n31206=>7000,\n32265=>7001,\n32285=>7002,\n33275=>7003,\n34095=>7004,\n34967=>7005,\n35386=>7006,\n36049=>7007,\n36587=>7008,\n12192=>7009,\n36784=>7009,\n63857=>7009,\n36914=>7010,\n37805=>7011,\n38499=>7012,\n38515=>7013,\n38663=>7014,\n20356=>7015,\n21489=>7016,\n23018=>7017,\n23241=>7018,\n24089=>7019,\n26702=>7020,\n29894=>7021,\n30142=>7022,\n31209=>7023,\n31378=>7024,\n33187=>7025,\n34541=>7026,\n36074=>7027,\n36300=>7028,\n36845=>7029,\n26015=>7030,\n26389=>7031,\n22519=>7032,\n28503=>7033,\n32221=>7034,\n36655=>7035,\n37878=>7036,\n38598=>7037,\n24501=>7038,\n25074=>7039,\n28548=>7040,\n19988=>7041,\n20376=>7042,\n20511=>7043,\n21449=>7044,\n21983=>7045,\n23919=>7046,\n24046=>7047,\n27425=>7048,\n27492=>7049,\n30923=>7050,\n31642=>7051,\n36425=>7052,\n12190=>7053,\n36554=>7053,\n63746=>7053,\n36974=>7054,\n25417=>7055,\n25662=>7056,\n30528=>7057,\n31364=>7058,\n37679=>7059,\n38015=>7060,\n40810=>7061,\n25776=>7062,\n28591=>7063,\n29158=>7064,\n29864=>7065,\n29914=>7066,\n31428=>7067,\n31762=>7068,\n32386=>7069,\n31922=>7070,\n32408=>7071,\n35738=>7072,\n36106=>7073,\n38013=>7074,\n39184=>7075,\n39244=>7076,\n21049=>7077,\n23519=>7078,\n25830=>7079,\n26413=>7080,\n32046=>7081,\n20717=>7082,\n21443=>7083,\n63851=>7083,\n22649=>7084,\n24920=>7085,\n24921=>7086,\n25082=>7087,\n26028=>7088,\n31449=>7089,\n35730=>7090,\n35734=>7091,\n20489=>7092,\n20513=>7093,\n21109=>7094,\n21809=>7095,\n23100=>7096,\n24288=>7097,\n24432=>7098,\n24884=>7099,\n25950=>7100,\n26124=>7101,\n26166=>7102,\n26274=>7103,\n27085=>7104,\n28356=>7105,\n28466=>7106,\n29462=>7107,\n30241=>7108,\n31379=>7109,\n33081=>7110,\n33369=>7111,\n33750=>7112,\n33980=>7113,\n20661=>7114,\n22512=>7115,\n23488=>7116,\n23528=>7117,\n24425=>7118,\n25505=>7119,\n30758=>7120,\n32181=>7121,\n33756=>7122,\n34081=>7123,\n37319=>7124,\n37365=>7125,\n20874=>7126,\n26613=>7127,\n31574=>7128,\n36012=>7129,\n20932=>7130,\n22971=>7131,\n24765=>7132,\n34389=>7133,\n20508=>7134,\n21076=>7135,\n23610=>7136,\n24957=>7137,\n25114=>7138,\n25299=>7139,\n64002=>7139,\n25842=>7140,\n26021=>7141,\n28364=>7142,\n30240=>7143,\n33034=>7144,\n36448=>7145,\n38495=>7146,\n38587=>7147,\n20191=>7148,\n21315=>7149,\n21912=>7150,\n22825=>7151,\n24029=>7152,\n25797=>7153,\n27849=>7154,\n28154=>7155,\n29588=>7156,\n31359=>7157,\n12167=>7158,\n33307=>7158,\n34214=>7159,\n36068=>7160,\n36368=>7161,\n36983=>7162,\n37351=>7163,\n38369=>7164,\n38433=>7165,\n38854=>7166,\n20984=>7167,\n21746=>7168,\n21894=>7169,\n24505=>7170,\n25764=>7171,\n28552=>7172,\n32180=>7173,\n36639=>7174,\n36685=>7175,\n37941=>7176,\n20681=>7177,\n23574=>7178,\n27838=>7179,\n28155=>7180,\n29979=>7181,\n30651=>7182,\n31805=>7183,\n31844=>7184,\n35449=>7185,\n35522=>7186,\n22558=>7187,\n22974=>7188,\n24086=>7189,\n25463=>7190,\n29266=>7191,\n30090=>7192,\n30571=>7193,\n35548=>7194,\n36028=>7195,\n36626=>7196,\n24307=>7197,\n26228=>7198,\n28152=>7199,\n32893=>7200,\n33729=>7201,\n35531=>7202,\n12205=>7203,\n38737=>7203,\n39894=>7204,\n21059=>7205,\n26367=>7206,\n28053=>7207,\n28399=>7208,\n32224=>7209,\n35558=>7210,\n36910=>7211,\n36958=>7212,\n39636=>7213,\n21021=>7214,\n21119=>7215,\n21736=>7216,\n24980=>7217,\n25220=>7218,\n25307=>7219,\n26786=>7220,\n26898=>7221,\n26970=>7222,\n27189=>7223,\n28818=>7224,\n28966=>7225,\n30813=>7226,\n30977=>7227,\n30990=>7228,\n31186=>7229,\n31245=>7230,\n32918=>7231,\n12171=>7232,\n33400=>7232,\n33493=>7233,\n33609=>7234,\n34121=>7235,\n35970=>7236,\n36229=>7237,\n37218=>7238,\n37259=>7239,\n37294=>7240,\n20419=>7241,\n22225=>7242,\n29165=>7243,\n30679=>7244,\n34560=>7245,\n35320=>7246,\n12072=>7247,\n23544=>7247,\n24534=>7248,\n26449=>7249,\n37032=>7250,\n21474=>7251,\n22618=>7252,\n23541=>7253,\n24740=>7254,\n24961=>7255,\n25696=>7256,\n32317=>7257,\n32880=>7258,\n34085=>7259,\n37507=>7260,\n25774=>7261,\n20652=>7262,\n23828=>7263,\n26368=>7264,\n22684=>7265,\n25277=>7266,\n25512=>7267,\n26894=>7268,\n27000=>7269,\n27166=>7270,\n28267=>7271,\n30394=>7272,\n31179=>7273,\n33467=>7274,\n33833=>7275,\n35535=>7276,\n36264=>7277,\n36861=>7278,\n37138=>7279,\n37195=>7280,\n37276=>7281,\n37648=>7282,\n37656=>7283,\n37786=>7284,\n38619=>7285,\n39478=>7286,\n39949=>7287,\n19985=>7288,\n30044=>7289,\n31069=>7290,\n31482=>7291,\n31569=>7292,\n31689=>7293,\n32302=>7294,\n33988=>7295,\n36441=>7296,\n36468=>7297,\n36600=>7298,\n36880=>7299,\n26149=>7300,\n26943=>7301,\n29763=>7302,\n20986=>7303,\n26414=>7304,\n40668=>7305,\n20805=>7306,\n24544=>7307,\n27798=>7308,\n34802=>7309,\n34909=>7310,\n34935=>7311,\n24756=>7312,\n33205=>7313,\n33795=>7314,\n36101=>7315,\n21462=>7316,\n21561=>7317,\n22068=>7318,\n23094=>7319,\n23601=>7320,\n28810=>7321,\n32736=>7322,\n32858=>7323,\n33030=>7324,\n33261=>7325,\n36259=>7326,\n37257=>7327,\n39519=>7328,\n40434=>7329,\n20596=>7330,\n20164=>7331,\n21408=>7332,\n24827=>7333,\n28204=>7334,\n23652=>7335,\n20360=>7336,\n20516=>7337,\n21988=>7338,\n23769=>7339,\n24159=>7340,\n24677=>7341,\n26772=>7342,\n27835=>7343,\n28100=>7344,\n29118=>7345,\n30164=>7346,\n30196=>7347,\n30305=>7348,\n31258=>7349,\n31305=>7350,\n32199=>7351,\n32251=>7352,\n32622=>7353,\n33268=>7354,\n34473=>7355,\n36636=>7356,\n38601=>7357,\n39347=>7358,\n12242=>7359,\n40786=>7359,\n21063=>7360,\n21189=>7361,\n39149=>7362,\n35242=>7363,\n19971=>7364,\n26578=>7365,\n28422=>7366,\n20405=>7367,\n23522=>7368,\n26517=>7369,\n27784=>7370,\n63858=>7370,\n28024=>7371,\n29723=>7372,\n30759=>7373,\n37341=>7374,\n37756=>7375,\n34756=>7376,\n31204=>7377,\n31281=>7378,\n24555=>7379,\n20182=>7380,\n21668=>7381,\n21822=>7382,\n22702=>7383,\n22949=>7384,\n24816=>7385,\n25171=>7386,\n25302=>7387,\n26422=>7388,\n26965=>7389,\n33333=>7390,\n38464=>7391,\n39345=>7392,\n39389=>7393,\n20524=>7394,\n21331=>7395,\n21828=>7396,\n22396=>7397,\n25176=>7398,\n25826=>7399,\n26219=>7400,\n26589=>7401,\n28609=>7402,\n28655=>7403,\n29730=>7404,\n29752=>7405,\n35351=>7406,\n37944=>7407,\n21585=>7408,\n22022=>7409,\n22374=>7410,\n24392=>7411,\n24986=>7412,\n27470=>7413,\n28760=>7414,\n28845=>7415,\n32187=>7416,\n35477=>7417,\n22890=>7418,\n33067=>7419,\n25506=>7420,\n30472=>7421,\n32829=>7422,\n36010=>7423,\n22612=>7424,\n25645=>7425,\n27067=>7426,\n23445=>7427,\n24081=>7428,\n28271=>7429,\n34153=>7430,\n20812=>7431,\n21488=>7432,\n22826=>7433,\n24608=>7434,\n24907=>7435,\n27526=>7436,\n27760=>7437,\n27888=>7438,\n31518=>7439,\n32974=>7440,\n33492=>7441,\n36294=>7442,\n37040=>7443,\n39089=>7444,\n25799=>7445,\n28580=>7446,\n25745=>7447,\n25860=>7448,\n20814=>7449,\n21520=>7450,\n12063=>7451,\n22303=>7451,\n35342=>7452,\n24927=>7453,\n26742=>7454,\n30171=>7455,\n31570=>7456,\n32113=>7457,\n36890=>7458,\n22534=>7459,\n27084=>7460,\n33151=>7461,\n35114=>7462,\n36864=>7463,\n38969=>7464,\n20600=>7465,\n22871=>7466,\n22956=>7467,\n25237=>7468,\n36879=>7469,\n39722=>7470,\n24925=>7471,\n29305=>7472,\n38358=>7473,\n22369=>7474,\n23110=>7475,\n24052=>7476,\n25226=>7477,\n25773=>7478,\n25850=>7479,\n26487=>7480,\n27874=>7481,\n27966=>7482,\n29228=>7483,\n29750=>7484,\n30772=>7485,\n32631=>7486,\n33453=>7487,\n36315=>7488,\n38935=>7489,\n21028=>7490,\n22338=>7491,\n26495=>7492,\n29256=>7493,\n29923=>7494,\n36009=>7495,\n36774=>7496,\n37393=>7497,\n38442=>7498,\n12043=>7499,\n20843=>7499,\n21485=>7500,\n25420=>7501,\n20329=>7502,\n21764=>7503,\n24726=>7504,\n25943=>7505,\n27803=>7506,\n28031=>7507,\n29260=>7508,\n29437=>7509,\n31255=>7510,\n35207=>7511,\n12185=>7512,\n35997=>7512,\n24429=>7513,\n28558=>7514,\n28921=>7515,\n33192=>7516,\n24846=>7517,\n20415=>7518,\n63845=>7518,\n20559=>7519,\n25153=>7520,\n12122=>7521,\n29255=>7521,\n31687=>7522,\n32232=>7523,\n32745=>7524,\n36941=>7525,\n38829=>7526,\n39449=>7527,\n36022=>7528,\n22378=>7529,\n24179=>7530,\n26544=>7531,\n33805=>7532,\n35413=>7533,\n21536=>7534,\n23318=>7535,\n24163=>7536,\n24290=>7537,\n24330=>7538,\n25987=>7539,\n32954=>7540,\n34109=>7541,\n38281=>7542,\n38491=>7543,\n20296=>7544,\n21253=>7545,\n21261=>7546,\n21263=>7547,\n21638=>7548,\n21754=>7549,\n22275=>7550,\n24067=>7551,\n24598=>7552,\n25243=>7553,\n25265=>7554,\n25429=>7555,\n27873=>7556,\n28006=>7557,\n30129=>7558,\n30770=>7559,\n32990=>7560,\n33071=>7561,\n33502=>7562,\n33889=>7563,\n33970=>7564,\n34957=>7565,\n35090=>7566,\n36875=>7567,\n37610=>7568,\n39165=>7569,\n39825=>7570,\n24133=>7571,\n26292=>7572,\n64006=>7572,\n26333=>7573,\n28689=>7574,\n29190=>7575,\n20469=>7576,\n21117=>7577,\n24426=>7578,\n24915=>7579,\n26451=>7580,\n27161=>7581,\n28418=>7582,\n29922=>7583,\n31080=>7584,\n34920=>7585,\n35961=>7586,\n39111=>7587,\n39108=>7588,\n39491=>7589,\n21697=>7590,\n31263=>7591,\n26963=>7592,\n35575=>7593,\n35914=>7594,\n12213=>7595,\n39080=>7595,\n39342=>7596,\n24444=>7597,\n25259=>7598,\n30130=>7599,\n12138=>7600,\n30382=>7600,\n34987=>7601,\n36991=>7602,\n38466=>7603,\n21305=>7604,\n24380=>7605,\n24517=>7606,\n27852=>7607,\n63848=>7607,\n29644=>7608,\n30050=>7609,\n12134=>7610,\n30091=>7610,\n31558=>7611,\n33534=>7612,\n39325=>7613,\n20047=>7614,\n36924=>7615,\n19979=>7616,\n20309=>7617,\n21414=>7618,\n22799=>7619,\n24264=>7620,\n26160=>7621,\n27827=>7622,\n29781=>7623,\n33655=>7624,\n34662=>7625,\n36032=>7626,\n36944=>7627,\n38686=>7628,\n39957=>7629,\n22737=>7630,\n23416=>7631,\n34384=>7632,\n35604=>7633,\n40372=>7634,\n23506=>7635,\n24680=>7636,\n24717=>7637,\n26097=>7638,\n27735=>7639,\n28450=>7640,\n28579=>7641,\n28698=>7642,\n32597=>7643,\n32752=>7644,\n38289=>7645,\n38290=>7646,\n38480=>7647,\n38867=>7648,\n21106=>7649,\n36676=>7650,\n20989=>7651,\n21547=>7652,\n21688=>7653,\n21859=>7654,\n21898=>7655,\n27323=>7656,\n28085=>7657,\n32216=>7658,\n33382=>7659,\n37532=>7660,\n38519=>7661,\n40569=>7662,\n21512=>7663,\n21704=>7664,\n30418=>7665,\n34532=>7666,\n38308=>7667,\n38356=>7668,\n38492=>7669,\n20130=>7670,\n20233=>7671,\n23022=>7672,\n23270=>7673,\n24055=>7674,\n24658=>7675,\n25239=>7676,\n26477=>7677,\n26689=>7678,\n27782=>7679,\n28207=>7680,\n32568=>7681,\n32923=>7682,\n33322=>7683,\n38917=>7684,\n20133=>7685,\n20565=>7686,\n21683=>7687,\n22419=>7688,\n22874=>7689,\n23401=>7690,\n23475=>7691,\n25032=>7692,\n26999=>7693,\n28023=>7694,\n28707=>7695,\n34809=>7696,\n35299=>7697,\n35442=>7698,\n35559=>7699,\n36994=>7700,\n39405=>7701,\n39608=>7702,\n21182=>7703,\n26680=>7704,\n20502=>7705,\n24184=>7706,\n26447=>7707,\n33607=>7708,\n12175=>7709,\n34892=>7709,\n64008=>7709,\n20139=>7710,\n21521=>7711,\n22190=>7712,\n29670=>7713,\n37141=>7714,\n38911=>7715,\n39177=>7716,\n39255=>7717,\n12217=>7718,\n39321=>7718,\n22099=>7719,\n22687=>7720,\n34395=>7721,\n35377=>7722,\n25010=>7723,\n27382=>7724,\n29563=>7725,\n36562=>7726,\n27463=>7727,\n38570=>7728,\n39511=>7729,\n22869=>7730,\n29184=>7731,\n36203=>7732,\n12208=>7733,\n38761=>7733,\n20436=>7734,\n23796=>7735,\n24358=>7736,\n25080=>7737,\n26203=>7738,\n27883=>7739,\n28843=>7740,\n12126=>7741,\n29572=>7741,\n29625=>7742,\n29694=>7743,\n30505=>7744,\n30541=>7745,\n32067=>7746,\n32098=>7747,\n32291=>7748,\n33335=>7749,\n34898=>7750,\n36066=>7751,\n37449=>7752,\n39023=>7753,\n23377=>7754,\n12147=>7755,\n31348=>7755,\n12174=>7756,\n34880=>7756,\n12212=>7757,\n38913=>7757,\n23244=>7758,\n20448=>7759,\n21332=>7760,\n22846=>7761,\n23805=>7762,\n25406=>7763,\n28025=>7764,\n29433=>7765,\n33029=>7766,\n33031=>7767,\n33698=>7768,\n37583=>7769,\n38960=>7770,\n20136=>7771,\n20804=>7772,\n21009=>7773,\n22411=>7774,\n24418=>7775,\n27842=>7776,\n28366=>7777,\n28677=>7778,\n28752=>7779,\n28847=>7780,\n29074=>7781,\n29673=>7782,\n29801=>7783,\n63918=>7783,\n33610=>7784,\n34722=>7785,\n34913=>7786,\n36872=>7787,\n37026=>7788,\n37795=>7789,\n39336=>7790,\n20846=>7791,\n24407=>7792,\n24800=>7793,\n24935=>7794,\n26291=>7795,\n34137=>7796,\n36426=>7797,\n37295=>7798,\n38795=>7799,\n20046=>7800,\n20114=>7801,\n21628=>7802,\n22741=>7803,\n22778=>7804,\n22909=>7805,\n23733=>7806,\n24359=>7807,\n12094=>7808,\n25142=>7808,\n25160=>7809,\n26122=>7810,\n26215=>7811,\n27627=>7812,\n28009=>7813,\n28111=>7814,\n28246=>7815,\n28408=>7816,\n28564=>7817,\n28640=>7818,\n28649=>7819,\n28765=>7820,\n29392=>7821,\n29733=>7822,\n29786=>7823,\n29920=>7824,\n30355=>7825,\n31068=>7826,\n31946=>7827,\n32286=>7828,\n32993=>7829,\n33446=>7830,\n33899=>7831,\n33983=>7832,\n34382=>7833,\n34399=>7834,\n34676=>7835,\n35703=>7836,\n35946=>7837,\n37804=>7838,\n38912=>7839,\n39013=>7840,\n24785=>7841,\n25110=>7842,\n37239=>7843,\n23130=>7844,\n26127=>7845,\n28151=>7846,\n28222=>7847,\n29759=>7848,\n39746=>7849,\n24573=>7850,\n24794=>7851,\n31503=>7852,\n21700=>7853,\n24344=>7854,\n27742=>7855,\n27859=>7856,\n27946=>7857,\n28888=>7858,\n32005=>7859,\n34425=>7860,\n35340=>7861,\n40251=>7862,\n21270=>7863,\n21644=>7864,\n23301=>7865,\n27194=>7866,\n12117=>7867,\n28779=>7867,\n30069=>7868,\n31117=>7869,\n12146=>7870,\n31166=>7870,\n33457=>7871,\n33775=>7872,\n35441=>7873,\n35649=>7874,\n36008=>7875,\n38772=>7876,\n25844=>7877,\n25899=>7878,\n30906=>7879,\n30907=>7880,\n31339=>7881,\n20024=>7882,\n21914=>7883,\n22864=>7884,\n23462=>7885,\n24187=>7886,\n24739=>7887,\n25563=>7888,\n27489=>7889,\n26213=>7890,\n26707=>7891,\n28185=>7892,\n29029=>7893,\n29872=>7894,\n32008=>7895,\n36996=>7896,\n39529=>7897,\n39973=>7898,\n27963=>7899,\n28369=>7900,\n63748=>7900,\n29502=>7901,\n35905=>7902,\n38346=>7903,\n20976=>7904,\n24140=>7905,\n24488=>7906,\n24653=>7907,\n24822=>7908,\n24880=>7909,\n24908=>7910,\n26179=>7911,\n26180=>7912,\n27045=>7913,\n27841=>7914,\n28255=>7915,\n28361=>7916,\n28514=>7917,\n29004=>7918,\n29852=>7919,\n30343=>7920,\n31681=>7921,\n31783=>7922,\n33618=>7923,\n34647=>7924,\n36945=>7925,\n38541=>7926,\n12232=>7927,\n40643=>7927,\n21295=>7928,\n22238=>7929,\n24315=>7930,\n24458=>7931,\n24674=>7932,\n24724=>7933,\n25079=>7934,\n26214=>7935,\n26371=>7936,\n27292=>7937,\n28142=>7938,\n28590=>7939,\n28784=>7940,\n29546=>7941,\n32362=>7942,\n33214=>7943,\n33588=>7944,\n34516=>7945,\n35496=>7946,\n36036=>7947,\n21123=>7948,\n29554=>7949,\n23446=>7950,\n27243=>7951,\n37892=>7952,\n21742=>7953,\n22150=>7954,\n23389=>7955,\n25928=>7956,\n25989=>7957,\n26313=>7958,\n26783=>7959,\n28045=>7960,\n28102=>7961,\n12120=>7962,\n29243=>7962,\n32948=>7963,\n37237=>7964,\n39501=>7965,\n20399=>7966,\n20505=>7967,\n21402=>7968,\n21518=>7969,\n21564=>7970,\n21897=>7971,\n21957=>7972,\n24127=>7973,\n24460=>7974,\n26429=>7975,\n29030=>7976,\n29661=>7977,\n36869=>7978,\n21211=>7979,\n21235=>7980,\n22628=>7981,\n22734=>7982,\n28932=>7983,\n29071=>7984,\n29179=>7985,\n34224=>7986,\n35347=>7987,\n26248=>7988,\n63941=>7988,\n34216=>7989,\n21927=>7990,\n26244=>7991,\n29002=>7992,\n33841=>7993,\n21321=>7994,\n21913=>7995,\n27585=>7996,\n24409=>7997,\n24509=>7998,\n25582=>7999,\n26249=>8000,\n28999=>8001,\n35569=>8002,\n36637=>8003,\n40638=>8004,\n20241=>8005,\n25658=>8006,\n28875=>8007,\n30054=>8008,\n34407=>8009,\n24676=>8010,\n35662=>8011,\n40440=>8012,\n20807=>8013,\n20982=>8014,\n21256=>8015,\n27958=>8016,\n33016=>8017,\n12234=>8018,\n40657=>8018,\n26133=>8019,\n27427=>8020,\n28824=>8021,\n30165=>8022,\n21507=>8023,\n23673=>8024,\n32007=>8025,\n35350=>8026,\n12107=>8027,\n27424=>8027,\n27453=>8028,\n27462=>8029,\n21560=>8030,\n24688=>8031,\n27965=>8032,\n32725=>8033,\n33288=>8034,\n20694=>8035,\n20958=>8036,\n21916=>8037,\n22123=>8038,\n22221=>8039,\n23020=>8040,\n23305=>8041,\n24076=>8042,\n24985=>8043,\n24984=>8044,\n25137=>8045,\n26206=>8046,\n26342=>8047,\n29081=>8048,\n29113=>8049,\n29114=>8050,\n29351=>8051,\n31143=>8052,\n31232=>8053,\n32690=>8054,\n35440=>8055,\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n12310=>8219,\n12311=>8220,\n12312=>8221,\n12313=>8222,\n8223=>8237,\n8219=>8238,\n8314=>8239,\n8315=>8240,\n8316=>8248,\n8317=>8250,\n8318=>8251,\n700=>8275,\n8942=>8320,\n8759=>8321,\n10122=>8342,\n10123=>8343,\n10124=>8344,\n10125=>8345,\n10126=>8346,\n10127=>8347,\n10128=>8348,\n10129=>8349,\n10130=>8350,\n10131=>8351,\n9398=>8388,\n9399=>8389,\n9400=>8390,\n9401=>8391,\n9402=>8392,\n9403=>8393,\n9404=>8394,\n9405=>8395,\n9406=>8396,\n9407=>8397,\n9408=>8398,\n9409=>8399,\n9410=>8400,\n9411=>8401,\n9412=>8402,\n9413=>8403,\n9414=>8404,\n9415=>8405,\n9416=>8406,\n9417=>8407,\n9418=>8408,\n9419=>8409,\n9420=>8410,\n9421=>8411,\n9422=>8412,\n9423=>8413,\n8826=>8475,\n8827=>8476,\n8910=>8477,\n8911=>8478,\n8832=>8479,\n8833=>8480,\n8816=>8481,\n8817=>8482,\n8818=>8483,\n8819=>8484,\n8842=>8486,\n8843=>8488,\n8822=>8489,\n8823=>8490,\n8825=>8491,\n8922=>8492,\n8923=>8493,\n8773=>8499,\n8771=>8500,\n8776=>8501,\n8868=>8503,\n8244=>8582,\n9839=>8594,\n8258=>8599,\n10045=>8604,\n8226=>8607,\n8249=>8612,\n8250=>8613,\n10010=>8630,\n10006=>8631,\n9711=>8633,\n10070=>8637,\n9676=>8639,\n9775=>8664,\n12320=>8671,\n10102=>8673,\n10103=>8674,\n10104=>8675,\n10105=>8676,\n10106=>8677,\n10107=>8678,\n10108=>8679,\n10109=>8680,\n10110=>8681,\n10111=>8682,\n12306=>8700,\n12342=>8701,\n8710=>8715,\n8735=>8717,\n8741=>8719,\n8742=>8720,\n8787=>8722,\n8785=>8723,\n8806=>8724,\n8807=>8725,\n8723=>8726,\n8853=>8727,\n8854=>8728,\n8855=>8729,\n8980=>8731,\n8802=>8734,\n9649=>8736,\n8738=>8738,\n8784=>8739,\n8867=>8742,\n8814=>8745,\n8815=>8746,\n8837=>8747,\n8836=>8748,\n8713=>8749,\n8716=>8750,\n8891=>8751,\n8892=>8752,\n8794=>8753,\n8966=>8754,\n12958=>8761,\n8252=>8763,\n9702=>8775,\n9663=>8779,\n9653=>8780,\n9657=>8781,\n9667=>8782,\n9674=>8787,\n12849=>8788,\n12857=>8789,\n13259=>8790,\n9327=>8791,\n9328=>8792,\n9329=>8793,\n9330=>8794,\n9331=>8795,\n8656=>8814,\n8655=>8815,\n8653=>8816,\n8657=>8854,\n8659=>8855,\n8626=>8864,\n8625=>8865,\n8628=>8867,\n8624=>8868,\n8627=>8869,\n8636=>8884,\n8640=>8885,\n8644=>8896,\n8645=>8897,\n9347=>9042,\n9348=>9043,\n9349=>9044,\n9350=>9045,\n9351=>9046,\n12948=>9080,\n12965=>9096,\n8672=>9190,\n8674=>9191,\n8673=>9192,\n8675=>9193,\n8678=>9198,\n8680=>9199,\n8679=>9200,\n8681=>9201,\n9757=>9222,\n9759=>9223,\n12944=>9300,\n12938=>9301,\n12939=>9302,\n12940=>9303,\n12941=>9304,\n12942=>9305,\n12943=>9306,\n12318=>9322,\n12319=>9323,\n8246=>9324,\n8245=>9326,\n12540=>9330,\n44034=>9333,\n44035=>9334,\n44037=>9335,\n44038=>9336,\n44043=>9337,\n44044=>9338,\n44045=>9339,\n44046=>9340,\n44047=>9341,\n44056=>9342,\n44062=>9343,\n44063=>9344,\n44065=>9345,\n44066=>9346,\n44067=>9347,\n44069=>9348,\n44070=>9349,\n44071=>9350,\n44072=>9351,\n44073=>9352,\n44074=>9353,\n44075=>9354,\n44078=>9355,\n44082=>9356,\n44083=>9357,\n44084=>9358,\n44085=>9359,\n44086=>9360,\n44087=>9361,\n44090=>9362,\n44091=>9363,\n44093=>9364,\n44094=>9365,\n44095=>9366,\n44097=>9367,\n44098=>9368,\n44099=>9369,\n44100=>9370,\n44101=>9371,\n44102=>9372,\n44103=>9373,\n44104=>9374,\n44105=>9375,\n44106=>9376,\n44108=>9377,\n44110=>9378,\n44111=>9379,\n44112=>9380,\n44113=>9381,\n44114=>9382,\n44115=>9383,\n44117=>9384,\n44118=>9385,\n44119=>9386,\n44121=>9387,\n44122=>9388,\n44123=>9389,\n44125=>9390,\n44126=>9391,\n44127=>9392,\n44128=>9393,\n44129=>9394,\n44130=>9395,\n44131=>9396,\n44132=>9397,\n44133=>9398,\n44134=>9399,\n44135=>9400,\n44136=>9401,\n44137=>9402,\n44138=>9403,\n44139=>9404,\n44140=>9405,\n44141=>9406,\n44142=>9407,\n44143=>9408,\n44146=>9409,\n44147=>9410,\n44149=>9411,\n44150=>9412,\n44153=>9413,\n44155=>9414,\n44156=>9415,\n44157=>9416,\n44158=>9417,\n44159=>9418,\n44162=>9419,\n44167=>9420,\n44168=>9421,\n44173=>9422,\n44174=>9423,\n44175=>9424,\n44177=>9425,\n44178=>9426,\n44179=>9427,\n44181=>9428,\n44182=>9429,\n44183=>9430,\n44184=>9431,\n44185=>9432,\n44186=>9433,\n44187=>9434,\n44190=>9435,\n44194=>9436,\n44195=>9437,\n44196=>9438,\n44197=>9439,\n44198=>9440,\n44199=>9441,\n44203=>9442,\n44205=>9443,\n44206=>9444,\n44209=>9445,\n44210=>9446,\n44211=>9447,\n44212=>9448,\n44213=>9449,\n44214=>9450,\n44215=>9451,\n44218=>9452,\n44222=>9453,\n44223=>9454,\n44224=>9455,\n44226=>9456,\n44227=>9457,\n44229=>9458,\n44230=>9459,\n44231=>9460,\n44233=>9461,\n44234=>9462,\n44235=>9463,\n44237=>9464,\n44238=>9465,\n44239=>9466,\n44240=>9467,\n44241=>9468,\n44242=>9469,\n44243=>9470,\n44244=>9471,\n44246=>9472,\n44248=>9473,\n44249=>9474,\n44250=>9475,\n44251=>9476,\n44252=>9477,\n44253=>9478,\n44254=>9479,\n44255=>9480,\n44258=>9481,\n44259=>9482,\n44261=>9483,\n44262=>9484,\n44265=>9485,\n44267=>9486,\n44269=>9487,\n44270=>9488,\n44274=>9489,\n44276=>9490,\n44279=>9491,\n44280=>9492,\n44281=>9493,\n44282=>9494,\n44283=>9495,\n44286=>9496,\n44287=>9497,\n44289=>9498,\n44290=>9499,\n44291=>9500,\n44293=>9501,\n44295=>9502,\n44296=>9503,\n44297=>9504,\n44298=>9505,\n44299=>9506,\n44302=>9507,\n44304=>9508,\n44306=>9509,\n44307=>9510,\n44308=>9511,\n44309=>9512,\n44310=>9513,\n44311=>9514,\n44313=>9515,\n44314=>9516,\n44315=>9517,\n44317=>9518,\n44318=>9519,\n44319=>9520,\n44321=>9521,\n44322=>9522,\n44323=>9523,\n44324=>9524,\n44325=>9525,\n44326=>9526,\n44327=>9527,\n44328=>9528,\n44330=>9529,\n44331=>9530,\n44334=>9531,\n44335=>9532,\n44336=>9533,\n44337=>9534,\n44338=>9535,\n44339=>9536,\n44342=>9537,\n44343=>9538,\n44345=>9539,\n44346=>9540,\n44347=>9541,\n44349=>9542,\n44350=>9543,\n44351=>9544,\n44352=>9545,\n44353=>9546,\n44354=>9547,\n44355=>9548,\n44358=>9549,\n44360=>9550,\n44362=>9551,\n44363=>9552,\n44364=>9553,\n44365=>9554,\n44366=>9555,\n44367=>9556,\n44369=>9557,\n44370=>9558,\n44371=>9559,\n44373=>9560,\n44374=>9561,\n44375=>9562,\n44377=>9563,\n44378=>9564,\n44379=>9565,\n44380=>9566,\n44381=>9567,\n44382=>9568,\n44383=>9569,\n44384=>9570,\n44386=>9571,\n44388=>9572,\n44389=>9573,\n44390=>9574,\n44391=>9575,\n44392=>9576,\n44393=>9577,\n44394=>9578,\n44395=>9579,\n44398=>9580,\n44399=>9581,\n44401=>9582,\n44402=>9583,\n44407=>9584,\n44408=>9585,\n44409=>9586,\n44410=>9587,\n44414=>9588,\n44416=>9589,\n44419=>9590,\n44420=>9591,\n44421=>9592,\n44422=>9593,\n44423=>9594,\n44426=>9595,\n44427=>9596,\n44429=>9597,\n44430=>9598,\n44431=>9599,\n44433=>9600,\n44434=>9601,\n44435=>9602,\n44436=>9603,\n44437=>9604,\n44438=>9605,\n44439=>9606,\n44440=>9607,\n44441=>9608,\n44442=>9609,\n44443=>9610,\n44446=>9611,\n44447=>9612,\n44448=>9613,\n44449=>9614,\n44450=>9615,\n44451=>9616,\n44453=>9617,\n44454=>9618,\n44455=>9619,\n44456=>9620,\n44457=>9621,\n44458=>9622,\n44459=>9623,\n44460=>9624,\n44461=>9625,\n44462=>9626,\n44463=>9627,\n44464=>9628,\n44465=>9629,\n44466=>9630,\n44467=>9631,\n44468=>9632,\n44469=>9633,\n44470=>9634,\n44472=>9635,\n44473=>9636,\n44474=>9637,\n44475=>9638,\n44476=>9639,\n44477=>9640,\n44478=>9641,\n44479=>9642,\n44482=>9643,\n44483=>9644,\n44485=>9645,\n44486=>9646,\n44487=>9647,\n44489=>9648,\n44490=>9649,\n44491=>9650,\n44492=>9651,\n44493=>9652,\n44494=>9653,\n44495=>9654,\n44498=>9655,\n44500=>9656,\n44501=>9657,\n44502=>9658,\n44503=>9659,\n44504=>9660,\n44505=>9661,\n44506=>9662,\n44507=>9663,\n44509=>9664,\n44510=>9665,\n44511=>9666,\n44513=>9667,\n44514=>9668,\n44515=>9669,\n44517=>9670,\n44518=>9671,\n44519=>9672,\n44520=>9673,\n44521=>9674,\n44522=>9675,\n44523=>9676,\n44524=>9677,\n44525=>9678,\n44526=>9679,\n44527=>9680,\n44528=>9681,\n44529=>9682,\n44530=>9683,\n44531=>9684,\n44532=>9685,\n44533=>9686,\n44534=>9687,\n44535=>9688,\n44538=>9689,\n44539=>9690,\n44541=>9691,\n44542=>9692,\n44546=>9693,\n44547=>9694,\n44548=>9695,\n44549=>9696,\n44550=>9697,\n44551=>9698,\n44554=>9699,\n44556=>9700,\n44558=>9701,\n44559=>9702,\n44560=>9703,\n44561=>9704,\n44562=>9705,\n44563=>9706,\n44565=>9707,\n44566=>9708,\n44567=>9709,\n44568=>9710,\n44569=>9711,\n44570=>9712,\n44571=>9713,\n44572=>9714,\n44573=>9715,\n44574=>9716,\n44575=>9717,\n44576=>9718,\n44577=>9719,\n44578=>9720,\n44579=>9721,\n44580=>9722,\n44581=>9723,\n44582=>9724,\n44583=>9725,\n44584=>9726,\n44585=>9727,\n44586=>9728,\n44587=>9729,\n44588=>9730,\n44589=>9731,\n44590=>9732,\n44591=>9733,\n44594=>9734,\n44595=>9735,\n44597=>9736,\n44598=>9737,\n44601=>9738,\n44603=>9739,\n44604=>9740,\n44605=>9741,\n44606=>9742,\n44607=>9743,\n44610=>9744,\n44612=>9745,\n44615=>9746,\n44616=>9747,\n44617=>9748,\n44619=>9749,\n44623=>9750,\n44625=>9751,\n44626=>9752,\n44627=>9753,\n44629=>9754,\n44631=>9755,\n44632=>9756,\n44633=>9757,\n44634=>9758,\n44635=>9759,\n44638=>9760,\n44642=>9761,\n44643=>9762,\n44644=>9763,\n44646=>9764,\n44647=>9765,\n44650=>9766,\n44651=>9767,\n44653=>9768,\n44654=>9769,\n44655=>9770,\n44657=>9771,\n44658=>9772,\n44659=>9773,\n44660=>9774,\n44661=>9775,\n44662=>9776,\n44663=>9777,\n44666=>9778,\n44670=>9779,\n44671=>9780,\n44672=>9781,\n44673=>9782,\n44674=>9783,\n44675=>9784,\n44678=>9785,\n44679=>9786,\n44680=>9787,\n44681=>9788,\n44682=>9789,\n44683=>9790,\n44685=>9791,\n44686=>9792,\n44687=>9793,\n44688=>9794,\n44689=>9795,\n44690=>9796,\n44691=>9797,\n44692=>9798,\n44693=>9799,\n44694=>9800,\n44695=>9801,\n44696=>9802,\n44697=>9803,\n44698=>9804,\n44699=>9805,\n44700=>9806,\n44701=>9807,\n44702=>9808,\n44703=>9809,\n44704=>9810,\n44705=>9811,\n44706=>9812,\n44707=>9813,\n44708=>9814,\n44709=>9815,\n44710=>9816,\n44711=>9817,\n44712=>9818,\n44713=>9819,\n44714=>9820,\n44715=>9821,\n44716=>9822,\n44717=>9823,\n44718=>9824,\n44719=>9825,\n44720=>9826,\n44721=>9827,\n44722=>9828,\n44723=>9829,\n44724=>9830,\n44725=>9831,\n44726=>9832,\n44727=>9833,\n44728=>9834,\n44729=>9835,\n44730=>9836,\n44731=>9837,\n44735=>9838,\n44737=>9839,\n44738=>9840,\n44739=>9841,\n44741=>9842,\n44742=>9843,\n44743=>9844,\n44744=>9845,\n44745=>9846,\n44746=>9847,\n44747=>9848,\n44750=>9849,\n44754=>9850,\n44755=>9851,\n44756=>9852,\n44757=>9853,\n44758=>9854,\n44759=>9855,\n44762=>9856,\n44763=>9857,\n44765=>9858,\n44766=>9859,\n44767=>9860,\n44768=>9861,\n44769=>9862,\n44770=>9863,\n44771=>9864,\n44772=>9865,\n44773=>9866,\n44774=>9867,\n44775=>9868,\n44777=>9869,\n44778=>9870,\n44780=>9871,\n44782=>9872,\n44783=>9873,\n44784=>9874,\n44785=>9875,\n44786=>9876,\n44787=>9877,\n44789=>9878,\n44790=>9879,\n44791=>9880,\n44793=>9881,\n44794=>9882,\n44795=>9883,\n44797=>9884,\n44798=>9885,\n44799=>9886,\n44800=>9887,\n44801=>9888,\n44802=>9889,\n44803=>9890,\n44804=>9891,\n44805=>9892,\n44806=>9893,\n44809=>9894,\n44810=>9895,\n44811=>9896,\n44812=>9897,\n44814=>9898,\n44815=>9899,\n44817=>9900,\n44818=>9901,\n44819=>9902,\n44820=>9903,\n44821=>9904,\n44822=>9905,\n44823=>9906,\n44824=>9907,\n44825=>9908,\n44826=>9909,\n44827=>9910,\n44828=>9911,\n44829=>9912,\n44830=>9913,\n44831=>9914,\n44832=>9915,\n44833=>9916,\n44834=>9917,\n44835=>9918,\n44836=>9919,\n44837=>9920,\n44838=>9921,\n44839=>9922,\n44840=>9923,\n44841=>9924,\n44842=>9925,\n44843=>9926,\n44846=>9927,\n44847=>9928,\n44849=>9929,\n44851=>9930,\n44853=>9931,\n44854=>9932,\n44855=>9933,\n44856=>9934,\n44857=>9935,\n44858=>9936,\n44859=>9937,\n44862=>9938,\n44864=>9939,\n44868=>9940,\n44869=>9941,\n44870=>9942,\n44871=>9943,\n44874=>9944,\n44875=>9945,\n44876=>9946,\n44877=>9947,\n44878=>9948,\n44879=>9949,\n44881=>9950,\n44882=>9951,\n44883=>9952,\n44884=>9953,\n44885=>9954,\n44886=>9955,\n44887=>9956,\n44888=>9957,\n44889=>9958,\n44890=>9959,\n44891=>9960,\n44894=>9961,\n44895=>9962,\n44896=>9963,\n44897=>9964,\n44898=>9965,\n44899=>9966,\n44902=>9967,\n44903=>9968,\n44904=>9969,\n44905=>9970,\n44906=>9971,\n44907=>9972,\n44908=>9973,\n44909=>9974,\n44910=>9975,\n44911=>9976,\n44912=>9977,\n44913=>9978,\n44914=>9979,\n44915=>9980,\n44916=>9981,\n44917=>9982,\n44918=>9983,\n44919=>9984,\n44920=>9985,\n44922=>9986,\n44923=>9987,\n44924=>9988,\n44925=>9989,\n44926=>9990,\n44927=>9991,\n44929=>9992,\n44930=>9993,\n44931=>9994,\n44933=>9995,\n44934=>9996,\n44935=>9997,\n44937=>9998,\n44938=>9999,\n44939=>10000,\n44940=>10001,\n44941=>10002,\n44942=>10003,\n44943=>10004,\n44946=>10005,\n44947=>10006,\n44948=>10007,\n44950=>10008,\n44951=>10009,\n44952=>10010,\n44953=>10011,\n44954=>10012,\n44955=>10013,\n44957=>10014,\n44958=>10015,\n44959=>10016,\n44960=>10017,\n44961=>10018,\n44962=>10019,\n44963=>10020,\n44964=>10021,\n44965=>10022,\n44966=>10023,\n44967=>10024,\n44968=>10025,\n44969=>10026,\n44970=>10027,\n44971=>10028,\n44972=>10029,\n44973=>10030,\n44974=>10031,\n44975=>10032,\n44976=>10033,\n44977=>10034,\n44978=>10035,\n44979=>10036,\n44980=>10037,\n44981=>10038,\n44982=>10039,\n44983=>10040,\n44986=>10041,\n44987=>10042,\n44989=>10043,\n44990=>10044,\n44991=>10045,\n44993=>10046,\n44994=>10047,\n44995=>10048,\n44996=>10049,\n44997=>10050,\n44998=>10051,\n45002=>10052,\n45004=>10053,\n45007=>10054,\n45008=>10055,\n45009=>10056,\n45010=>10057,\n45011=>10058,\n45013=>10059,\n45014=>10060,\n45015=>10061,\n45016=>10062,\n45017=>10063,\n45018=>10064,\n45019=>10065,\n45021=>10066,\n45022=>10067,\n45023=>10068,\n45024=>10069,\n45025=>10070,\n45026=>10071,\n45027=>10072,\n45028=>10073,\n45029=>10074,\n45030=>10075,\n45031=>10076,\n45034=>10077,\n45035=>10078,\n45036=>10079,\n45037=>10080,\n45038=>10081,\n45039=>10082,\n45042=>10083,\n45043=>10084,\n45045=>10085,\n45046=>10086,\n45047=>10087,\n45049=>10088,\n45050=>10089,\n45051=>10090,\n45052=>10091,\n45053=>10092,\n45054=>10093,\n45055=>10094,\n45058=>10095,\n45059=>10096,\n45061=>10097,\n45062=>10098,\n45063=>10099,\n45064=>10100,\n45065=>10101,\n45066=>10102,\n45067=>10103,\n45069=>10104,\n45070=>10105,\n45071=>10106,\n45073=>10107,\n45074=>10108,\n45075=>10109,\n45077=>10110,\n45078=>10111,\n45079=>10112,\n45080=>10113,\n45081=>10114,\n45082=>10115,\n45083=>10116,\n45086=>10117,\n45087=>10118,\n45088=>10119,\n45089=>10120,\n45090=>10121,\n45091=>10122,\n45092=>10123,\n45093=>10124,\n45094=>10125,\n45095=>10126,\n45097=>10127,\n45098=>10128,\n45099=>10129,\n45100=>10130,\n45101=>10131,\n45102=>10132,\n45103=>10133,\n45104=>10134,\n45105=>10135,\n45106=>10136,\n45107=>10137,\n45108=>10138,\n45109=>10139,\n45110=>10140,\n45111=>10141,\n45112=>10142,\n45113=>10143,\n45114=>10144,\n45115=>10145,\n45116=>10146,\n45117=>10147,\n45118=>10148,\n45119=>10149,\n45120=>10150,\n45121=>10151,\n45122=>10152,\n45123=>10153,\n45126=>10154,\n45127=>10155,\n45129=>10156,\n45131=>10157,\n45133=>10158,\n45135=>10159,\n45136=>10160,\n45137=>10161,\n45138=>10162,\n45142=>10163,\n45144=>10164,\n45146=>10165,\n45147=>10166,\n45148=>10167,\n45150=>10168,\n45151=>10169,\n45152=>10170,\n45153=>10171,\n45154=>10172,\n45155=>10173,\n45156=>10174,\n45157=>10175,\n45158=>10176,\n45159=>10177,\n45160=>10178,\n45161=>10179,\n45162=>10180,\n45163=>10181,\n45164=>10182,\n45165=>10183,\n45166=>10184,\n45167=>10185,\n45168=>10186,\n45169=>10187,\n45170=>10188,\n45171=>10189,\n45172=>10190,\n45173=>10191,\n45174=>10192,\n45175=>10193,\n45176=>10194,\n45177=>10195,\n45178=>10196,\n45179=>10197,\n45182=>10198,\n45183=>10199,\n45185=>10200,\n45186=>10201,\n45187=>10202,\n45189=>10203,\n45190=>10204,\n45191=>10205,\n45192=>10206,\n45193=>10207,\n45194=>10208,\n45195=>10209,\n45198=>10210,\n45200=>10211,\n45202=>10212,\n45203=>10213,\n45204=>10214,\n45205=>10215,\n45206=>10216,\n45207=>10217,\n45211=>10218,\n45213=>10219,\n45214=>10220,\n45219=>10221,\n45220=>10222,\n45221=>10223,\n45222=>10224,\n45223=>10225,\n45226=>10226,\n45232=>10227,\n45234=>10228,\n45238=>10229,\n45239=>10230,\n45241=>10231,\n45242=>10232,\n45243=>10233,\n45245=>10234,\n45246=>10235,\n45247=>10236,\n45248=>10237,\n45249=>10238,\n45250=>10239,\n45251=>10240,\n45254=>10241,\n45258=>10242,\n45259=>10243,\n45260=>10244,\n45261=>10245,\n45262=>10246,\n45263=>10247,\n45266=>10248,\n45267=>10249,\n45269=>10250,\n45270=>10251,\n45271=>10252,\n45273=>10253,\n45274=>10254,\n45275=>10255,\n45276=>10256,\n45277=>10257,\n45278=>10258,\n45279=>10259,\n45281=>10260,\n45282=>10261,\n45283=>10262,\n45284=>10263,\n45286=>10264,\n45287=>10265,\n45288=>10266,\n45289=>10267,\n45290=>10268,\n45291=>10269,\n45292=>10270,\n45293=>10271,\n45294=>10272,\n45295=>10273,\n45296=>10274,\n45297=>10275,\n45298=>10276,\n45299=>10277,\n45300=>10278,\n45301=>10279,\n45302=>10280,\n45303=>10281,\n45304=>10282,\n45305=>10283,\n45306=>10284,\n45307=>10285,\n45308=>10286,\n45309=>10287,\n45310=>10288,\n45311=>10289,\n45312=>10290,\n45313=>10291,\n45314=>10292,\n45315=>10293,\n45316=>10294,\n45317=>10295,\n45318=>10296,\n45319=>10297,\n45322=>10298,\n45325=>10299,\n45326=>10300,\n45327=>10301,\n45329=>10302,\n45332=>10303,\n45333=>10304,\n45334=>10305,\n45335=>10306,\n45338=>10307,\n45342=>10308,\n45343=>10309,\n45344=>10310,\n45345=>10311,\n45346=>10312,\n45350=>10313,\n45351=>10314,\n45353=>10315,\n45354=>10316,\n45355=>10317,\n45357=>10318,\n45358=>10319,\n45359=>10320,\n45360=>10321,\n45361=>10322,\n45362=>10323,\n45363=>10324,\n45366=>10325,\n45370=>10326,\n45371=>10327,\n45372=>10328,\n45373=>10329,\n45374=>10330,\n45375=>10331,\n45378=>10332,\n45379=>10333,\n45381=>10334,\n45382=>10335,\n45383=>10336,\n45385=>10337,\n45386=>10338,\n45387=>10339,\n45388=>10340,\n45389=>10341,\n45390=>10342,\n45391=>10343,\n45394=>10344,\n45395=>10345,\n45398=>10346,\n45399=>10347,\n45401=>10348,\n45402=>10349,\n45403=>10350,\n45405=>10351,\n45406=>10352,\n45407=>10353,\n45409=>10354,\n45410=>10355,\n45411=>10356,\n45412=>10357,\n45413=>10358,\n45414=>10359,\n45415=>10360,\n45416=>10361,\n45417=>10362,\n45418=>10363,\n45419=>10364,\n45420=>10365,\n45421=>10366,\n45422=>10367,\n45423=>10368,\n45424=>10369,\n45425=>10370,\n45426=>10371,\n45427=>10372,\n45428=>10373,\n45429=>10374,\n45430=>10375,\n45431=>10376,\n45434=>10377,\n45435=>10378,\n45437=>10379,\n45438=>10380,\n45439=>10381,\n45441=>10382,\n45443=>10383,\n45444=>10384,\n45445=>10385,\n45446=>10386,\n45447=>10387,\n45450=>10388,\n45452=>10389,\n45454=>10390,\n45455=>10391,\n45456=>10392,\n45457=>10393,\n45461=>10394,\n45462=>10395,\n45463=>10396,\n45465=>10397,\n45466=>10398,\n45467=>10399,\n45469=>10400,\n45470=>10401,\n45471=>10402,\n45472=>10403,\n45473=>10404,\n45474=>10405,\n45475=>10406,\n45476=>10407,\n45477=>10408,\n45478=>10409,\n45479=>10410,\n45481=>10411,\n45482=>10412,\n45483=>10413,\n45484=>10414,\n45485=>10415,\n45486=>10416,\n45487=>10417,\n45488=>10418,\n45489=>10419,\n45490=>10420,\n45491=>10421,\n45492=>10422,\n45493=>10423,\n45494=>10424,\n45495=>10425,\n45496=>10426,\n45497=>10427,\n45498=>10428,\n45499=>10429,\n45500=>10430,\n45501=>10431,\n45502=>10432,\n45503=>10433,\n45504=>10434,\n45505=>10435,\n45506=>10436,\n45507=>10437,\n45508=>10438,\n45509=>10439,\n45510=>10440,\n45511=>10441,\n45512=>10442,\n45513=>10443,\n45514=>10444,\n45515=>10445,\n45517=>10446,\n45518=>10447,\n45519=>10448,\n45521=>10449,\n45522=>10450,\n45523=>10451,\n45525=>10452,\n45526=>10453,\n45527=>10454,\n45528=>10455,\n45529=>10456,\n45530=>10457,\n45531=>10458,\n45534=>10459,\n45536=>10460,\n45537=>10461,\n45538=>10462,\n45539=>10463,\n45540=>10464,\n45541=>10465,\n45542=>10466,\n45543=>10467,\n45546=>10468,\n45547=>10469,\n45549=>10470,\n45550=>10471,\n45551=>10472,\n45553=>10473,\n45554=>10474,\n45555=>10475,\n45556=>10476,\n45557=>10477,\n45558=>10478,\n45559=>10479,\n45560=>10480,\n45562=>10481,\n45564=>10482,\n45566=>10483,\n45567=>10484,\n45568=>10485,\n45569=>10486,\n45570=>10487,\n45571=>10488,\n45574=>10489,\n45575=>10490,\n45577=>10491,\n45578=>10492,\n45581=>10493,\n45582=>10494,\n45583=>10495,\n45584=>10496,\n45585=>10497,\n45586=>10498,\n45587=>10499,\n45590=>10500,\n45592=>10501,\n45594=>10502,\n45595=>10503,\n45596=>10504,\n45597=>10505,\n45598=>10506,\n45599=>10507,\n45601=>10508,\n45602=>10509,\n45603=>10510,\n45604=>10511,\n45605=>10512,\n45606=>10513,\n45607=>10514,\n45608=>10515,\n45609=>10516,\n45610=>10517,\n45611=>10518,\n45612=>10519,\n45613=>10520,\n45614=>10521,\n45615=>10522,\n45616=>10523,\n45617=>10524,\n45618=>10525,\n45619=>10526,\n45621=>10527,\n45622=>10528,\n45623=>10529,\n45624=>10530,\n45625=>10531,\n45626=>10532,\n45627=>10533,\n45629=>10534,\n45630=>10535,\n45631=>10536,\n45632=>10537,\n45633=>10538,\n45634=>10539,\n45635=>10540,\n45636=>10541,\n45637=>10542,\n45638=>10543,\n45639=>10544,\n45640=>10545,\n45641=>10546,\n45642=>10547,\n45643=>10548,\n45644=>10549,\n45645=>10550,\n45646=>10551,\n45647=>10552,\n45648=>10553,\n45649=>10554,\n45650=>10555,\n45651=>10556,\n45652=>10557,\n45653=>10558,\n45654=>10559,\n45655=>10560,\n45657=>10561,\n45658=>10562,\n45659=>10563,\n45661=>10564,\n45662=>10565,\n45663=>10566,\n45665=>10567,\n45666=>10568,\n45667=>10569,\n45668=>10570,\n45669=>10571,\n45670=>10572,\n45671=>10573,\n45674=>10574,\n45675=>10575,\n45676=>10576,\n45677=>10577,\n45678=>10578,\n45679=>10579,\n45680=>10580,\n45681=>10581,\n45682=>10582,\n45683=>10583,\n45686=>10584,\n45687=>10585,\n45688=>10586,\n45689=>10587,\n45690=>10588,\n45691=>10589,\n45693=>10590,\n45694=>10591,\n45695=>10592,\n45696=>10593,\n45697=>10594,\n45698=>10595,\n45699=>10596,\n45702=>10597,\n45703=>10598,\n45704=>10599,\n45706=>10600,\n45707=>10601,\n45708=>10602,\n45709=>10603,\n45710=>10604,\n45711=>10605,\n45714=>10606,\n45715=>10607,\n45717=>10608,\n45718=>10609,\n45719=>10610,\n45723=>10611,\n45724=>10612,\n45725=>10613,\n45726=>10614,\n45727=>10615,\n45730=>10616,\n45732=>10617,\n45735=>10618,\n45736=>10619,\n45737=>10620,\n45739=>10621,\n45741=>10622,\n45742=>10623,\n45743=>10624,\n45745=>10625,\n45746=>10626,\n45747=>10627,\n45749=>10628,\n45750=>10629,\n45751=>10630,\n45752=>10631,\n45753=>10632,\n45754=>10633,\n45755=>10634,\n45756=>10635,\n45757=>10636,\n45758=>10637,\n45759=>10638,\n45760=>10639,\n45761=>10640,\n45762=>10641,\n45763=>10642,\n45764=>10643,\n45765=>10644,\n45766=>10645,\n45767=>10646,\n45770=>10647,\n45771=>10648,\n45773=>10649,\n45774=>10650,\n45775=>10651,\n45777=>10652,\n45779=>10653,\n45780=>10654,\n45781=>10655,\n45782=>10656,\n45783=>10657,\n45786=>10658,\n45788=>10659,\n45790=>10660,\n45791=>10661,\n45792=>10662,\n45793=>10663,\n45795=>10664,\n45799=>10665,\n45801=>10666,\n45802=>10667,\n45808=>10668,\n45809=>10669,\n45810=>10670,\n45814=>10671,\n45820=>10672,\n45821=>10673,\n45822=>10674,\n45826=>10675,\n45827=>10676,\n45829=>10677,\n45830=>10678,\n45831=>10679,\n45833=>10680,\n45834=>10681,\n45835=>10682,\n45836=>10683,\n45837=>10684,\n45838=>10685,\n45839=>10686,\n45842=>10687,\n45846=>10688,\n45847=>10689,\n45848=>10690,\n45849=>10691,\n45850=>10692,\n45851=>10693,\n45853=>10694,\n45854=>10695,\n45855=>10696,\n45856=>10697,\n45857=>10698,\n45858=>10699,\n45859=>10700,\n45860=>10701,\n45861=>10702,\n45862=>10703,\n45863=>10704,\n45864=>10705,\n45865=>10706,\n45866=>10707,\n45867=>10708,\n45868=>10709,\n45869=>10710,\n45870=>10711,\n45871=>10712,\n45872=>10713,\n45873=>10714,\n45874=>10715,\n45875=>10716,\n45876=>10717,\n45877=>10718,\n45878=>10719,\n45879=>10720,\n45880=>10721,\n45881=>10722,\n45882=>10723,\n45883=>10724,\n45884=>10725,\n45885=>10726,\n45886=>10727,\n45887=>10728,\n45888=>10729,\n45889=>10730,\n45890=>10731,\n45891=>10732,\n45892=>10733,\n45893=>10734,\n45894=>10735,\n45895=>10736,\n45896=>10737,\n45897=>10738,\n45898=>10739,\n45899=>10740,\n45900=>10741,\n45901=>10742,\n45902=>10743,\n45903=>10744,\n45904=>10745,\n45905=>10746,\n45906=>10747,\n45907=>10748,\n45911=>10749,\n45913=>10750,\n45914=>10751,\n45917=>10752,\n45920=>10753,\n45921=>10754,\n45922=>10755,\n45923=>10756,\n45926=>10757,\n45928=>10758,\n45930=>10759,\n45932=>10760,\n45933=>10761,\n45935=>10762,\n45938=>10763,\n45939=>10764,\n45941=>10765,\n45942=>10766,\n45943=>10767,\n45945=>10768,\n45946=>10769,\n45947=>10770,\n45948=>10771,\n45949=>10772,\n45950=>10773,\n45951=>10774,\n45954=>10775,\n45958=>10776,\n45959=>10777,\n45960=>10778,\n45961=>10779,\n45962=>10780,\n45963=>10781,\n45965=>10782,\n45966=>10783,\n45967=>10784,\n45969=>10785,\n45970=>10786,\n45971=>10787,\n45973=>10788,\n45974=>10789,\n45975=>10790,\n45976=>10791,\n45977=>10792,\n45978=>10793,\n45979=>10794,\n45980=>10795,\n45981=>10796,\n45982=>10797,\n45983=>10798,\n45986=>10799,\n45987=>10800,\n45988=>10801,\n45989=>10802,\n45990=>10803,\n45991=>10804,\n45993=>10805,\n45994=>10806,\n45995=>10807,\n45997=>10808,\n45998=>10809,\n45999=>10810,\n46000=>10811,\n46001=>10812,\n46002=>10813,\n46003=>10814,\n46004=>10815,\n46005=>10816,\n46006=>10817,\n46007=>10818,\n46008=>10819,\n46009=>10820,\n46010=>10821,\n46011=>10822,\n46012=>10823,\n46013=>10824,\n46014=>10825,\n46015=>10826,\n46016=>10827,\n46017=>10828,\n46018=>10829,\n46019=>10830,\n46022=>10831,\n46023=>10832,\n46025=>10833,\n46026=>10834,\n46029=>10835,\n46031=>10836,\n46033=>10837,\n46034=>10838,\n46035=>10839,\n46038=>10840,\n46040=>10841,\n46042=>10842,\n46044=>10843,\n46046=>10844,\n46047=>10845,\n46049=>10846,\n46050=>10847,\n46051=>10848,\n46053=>10849,\n46054=>10850,\n46055=>10851,\n46057=>10852,\n46058=>10853,\n46059=>10854,\n46060=>10855,\n46061=>10856,\n46062=>10857,\n46063=>10858,\n46064=>10859,\n46065=>10860,\n46066=>10861,\n46067=>10862,\n46068=>10863,\n46069=>10864,\n46070=>10865,\n46071=>10866,\n46072=>10867,\n46073=>10868,\n46074=>10869,\n46075=>10870,\n46077=>10871,\n46078=>10872,\n46079=>10873,\n46080=>10874,\n46081=>10875,\n46082=>10876,\n46083=>10877,\n46084=>10878,\n46085=>10879,\n46086=>10880,\n46087=>10881,\n46088=>10882,\n46089=>10883,\n46090=>10884,\n46091=>10885,\n46092=>10886,\n46093=>10887,\n46094=>10888,\n46095=>10889,\n46097=>10890,\n46098=>10891,\n46099=>10892,\n46100=>10893,\n46101=>10894,\n46102=>10895,\n46103=>10896,\n46105=>10897,\n46106=>10898,\n46107=>10899,\n46109=>10900,\n46110=>10901,\n46111=>10902,\n46113=>10903,\n46114=>10904,\n46115=>10905,\n46116=>10906,\n46117=>10907,\n46118=>10908,\n46119=>10909,\n46122=>10910,\n46124=>10911,\n46125=>10912,\n46126=>10913,\n46127=>10914,\n46128=>10915,\n46129=>10916,\n46130=>10917,\n46131=>10918,\n46133=>10919,\n46134=>10920,\n46135=>10921,\n46136=>10922,\n46137=>10923,\n46138=>10924,\n46139=>10925,\n46140=>10926,\n46141=>10927,\n46142=>10928,\n46143=>10929,\n46144=>10930,\n46145=>10931,\n46146=>10932,\n46147=>10933,\n46148=>10934,\n46149=>10935,\n46150=>10936,\n46151=>10937,\n46152=>10938,\n46153=>10939,\n46154=>10940,\n46155=>10941,\n46156=>10942,\n46157=>10943,\n46158=>10944,\n46159=>10945,\n46162=>10946,\n46163=>10947,\n46165=>10948,\n46166=>10949,\n46167=>10950,\n46169=>10951,\n46170=>10952,\n46171=>10953,\n46172=>10954,\n46173=>10955,\n46174=>10956,\n46175=>10957,\n46178=>10958,\n46180=>10959,\n46182=>10960,\n46183=>10961,\n46184=>10962,\n46185=>10963,\n46186=>10964,\n46187=>10965,\n46189=>10966,\n46190=>10967,\n46191=>10968,\n46192=>10969,\n46193=>10970,\n46194=>10971,\n46195=>10972,\n46196=>10973,\n46197=>10974,\n46198=>10975,\n46199=>10976,\n46200=>10977,\n46201=>10978,\n46202=>10979,\n46203=>10980,\n46204=>10981,\n46205=>10982,\n46206=>10983,\n46207=>10984,\n46209=>10985,\n46210=>10986,\n46211=>10987,\n46212=>10988,\n46213=>10989,\n46214=>10990,\n46215=>10991,\n46217=>10992,\n46218=>10993,\n46219=>10994,\n46220=>10995,\n46221=>10996,\n46222=>10997,\n46223=>10998,\n46224=>10999,\n46225=>11000,\n46226=>11001,\n46227=>11002,\n46228=>11003,\n46229=>11004,\n46230=>11005,\n46231=>11006,\n46232=>11007,\n46233=>11008,\n46234=>11009,\n46235=>11010,\n46236=>11011,\n46238=>11012,\n46239=>11013,\n46240=>11014,\n46241=>11015,\n46242=>11016,\n46243=>11017,\n46245=>11018,\n46246=>11019,\n46247=>11020,\n46249=>11021,\n46250=>11022,\n46251=>11023,\n46253=>11024,\n46254=>11025,\n46255=>11026,\n46256=>11027,\n46257=>11028,\n46258=>11029,\n46259=>11030,\n46260=>11031,\n46262=>11032,\n46264=>11033,\n46266=>11034,\n46267=>11035,\n46268=>11036,\n46269=>11037,\n46270=>11038,\n46271=>11039,\n46273=>11040,\n46274=>11041,\n46275=>11042,\n46277=>11043,\n46278=>11044,\n46279=>11045,\n46281=>11046,\n46282=>11047,\n46283=>11048,\n46284=>11049,\n46285=>11050,\n46286=>11051,\n46287=>11052,\n46289=>11053,\n46290=>11054,\n46291=>11055,\n46292=>11056,\n46294=>11057,\n46295=>11058,\n46296=>11059,\n46297=>11060,\n46298=>11061,\n46299=>11062,\n46302=>11063,\n46303=>11064,\n46305=>11065,\n46306=>11066,\n46309=>11067,\n46311=>11068,\n46312=>11069,\n46313=>11070,\n46314=>11071,\n46315=>11072,\n46318=>11073,\n46320=>11074,\n46322=>11075,\n46323=>11076,\n46324=>11077,\n46325=>11078,\n46326=>11079,\n46327=>11080,\n46329=>11081,\n46330=>11082,\n46331=>11083,\n46332=>11084,\n46333=>11085,\n46334=>11086,\n46335=>11087,\n46336=>11088,\n46337=>11089,\n46338=>11090,\n46339=>11091,\n46340=>11092,\n46341=>11093,\n46342=>11094,\n46343=>11095,\n46344=>11096,\n46345=>11097,\n46346=>11098,\n46347=>11099,\n46348=>11100,\n46349=>11101,\n46350=>11102,\n46351=>11103,\n46352=>11104,\n46353=>11105,\n46354=>11106,\n46355=>11107,\n46358=>11108,\n46359=>11109,\n46361=>11110,\n46362=>11111,\n46365=>11112,\n46366=>11113,\n46367=>11114,\n46368=>11115,\n46369=>11116,\n46370=>11117,\n46371=>11118,\n46374=>11119,\n46379=>11120,\n46380=>11121,\n46381=>11122,\n46382=>11123,\n46383=>11124,\n46386=>11125,\n46387=>11126,\n46389=>11127,\n46390=>11128,\n46391=>11129,\n46393=>11130,\n46394=>11131,\n46395=>11132,\n46396=>11133,\n46397=>11134,\n46398=>11135,\n46399=>11136,\n46402=>11137,\n46406=>11138,\n46407=>11139,\n46408=>11140,\n46409=>11141,\n46410=>11142,\n46414=>11143,\n46415=>11144,\n46417=>11145,\n46418=>11146,\n46419=>11147,\n46421=>11148,\n46422=>11149,\n46423=>11150,\n46424=>11151,\n46425=>11152,\n46426=>11153,\n46427=>11154,\n46430=>11155,\n46434=>11156,\n46435=>11157,\n46436=>11158,\n46437=>11159,\n46438=>11160,\n46439=>11161,\n46440=>11162,\n46441=>11163,\n46442=>11164,\n46443=>11165,\n46444=>11166,\n46445=>11167,\n46446=>11168,\n46447=>11169,\n46448=>11170,\n46449=>11171,\n46450=>11172,\n46451=>11173,\n46452=>11174,\n46453=>11175,\n46454=>11176,\n46455=>11177,\n46456=>11178,\n46457=>11179,\n46458=>11180,\n46459=>11181,\n46460=>11182,\n46461=>11183,\n46462=>11184,\n46463=>11185,\n46464=>11186,\n46465=>11187,\n46466=>11188,\n46467=>11189,\n46468=>11190,\n46469=>11191,\n46470=>11192,\n46471=>11193,\n46472=>11194,\n46473=>11195,\n46474=>11196,\n46475=>11197,\n46476=>11198,\n46477=>11199,\n46478=>11200,\n46479=>11201,\n46480=>11202,\n46481=>11203,\n46482=>11204,\n46483=>11205,\n46484=>11206,\n46485=>11207,\n46486=>11208,\n46487=>11209,\n46488=>11210,\n46489=>11211,\n46490=>11212,\n46491=>11213,\n46492=>11214,\n46493=>11215,\n46494=>11216,\n46495=>11217,\n46498=>11218,\n46499=>11219,\n46501=>11220,\n46502=>11221,\n46503=>11222,\n46505=>11223,\n46508=>11224,\n46509=>11225,\n46510=>11226,\n46511=>11227,\n46514=>11228,\n46518=>11229,\n46519=>11230,\n46520=>11231,\n46521=>11232,\n46522=>11233,\n46526=>11234,\n46527=>11235,\n46529=>11236,\n46530=>11237,\n46531=>11238,\n46533=>11239,\n46534=>11240,\n46535=>11241,\n46536=>11242,\n46537=>11243,\n46538=>11244,\n46539=>11245,\n46542=>11246,\n46546=>11247,\n46547=>11248,\n46548=>11249,\n46549=>11250,\n46550=>11251,\n46551=>11252,\n46553=>11253,\n46554=>11254,\n46555=>11255,\n46556=>11256,\n46557=>11257,\n46558=>11258,\n46559=>11259,\n46560=>11260,\n46561=>11261,\n46562=>11262,\n46563=>11263,\n46564=>11264,\n46565=>11265,\n46566=>11266,\n46567=>11267,\n46568=>11268,\n46569=>11269,\n46570=>11270,\n46571=>11271,\n46573=>11272,\n46574=>11273,\n46575=>11274,\n46576=>11275,\n46577=>11276,\n46578=>11277,\n46579=>11278,\n46580=>11279,\n46581=>11280,\n46582=>11281,\n46583=>11282,\n46584=>11283,\n46585=>11284,\n46586=>11285,\n46587=>11286,\n46588=>11287,\n46589=>11288,\n46590=>11289,\n46591=>11290,\n46592=>11291,\n46593=>11292,\n46594=>11293,\n46595=>11294,\n46596=>11295,\n46597=>11296,\n46598=>11297,\n46599=>11298,\n46600=>11299,\n46601=>11300,\n46602=>11301,\n46603=>11302,\n46604=>11303,\n46605=>11304,\n46606=>11305,\n46607=>11306,\n46610=>11307,\n46611=>11308,\n46613=>11309,\n46614=>11310,\n46615=>11311,\n46617=>11312,\n46618=>11313,\n46619=>11314,\n46620=>11315,\n46621=>11316,\n46622=>11317,\n46623=>11318,\n46624=>11319,\n46625=>11320,\n46626=>11321,\n46627=>11322,\n46628=>11323,\n46630=>11324,\n46631=>11325,\n46632=>11326,\n46633=>11327,\n46634=>11328,\n46635=>11329,\n46637=>11330,\n46638=>11331,\n46639=>11332,\n46640=>11333,\n46641=>11334,\n46642=>11335,\n46643=>11336,\n46645=>11337,\n46646=>11338,\n46647=>11339,\n46648=>11340,\n46649=>11341,\n46650=>11342,\n46651=>11343,\n46652=>11344,\n46653=>11345,\n46654=>11346,\n46655=>11347,\n46656=>11348,\n46657=>11349,\n46658=>11350,\n46659=>11351,\n46660=>11352,\n46661=>11353,\n46662=>11354,\n46663=>11355,\n46665=>11356,\n46666=>11357,\n46667=>11358,\n46668=>11359,\n46669=>11360,\n46670=>11361,\n46671=>11362,\n46672=>11363,\n46673=>11364,\n46674=>11365,\n46675=>11366,\n46676=>11367,\n46677=>11368,\n46678=>11369,\n46679=>11370,\n46680=>11371,\n46681=>11372,\n46682=>11373,\n46683=>11374,\n46684=>11375,\n46685=>11376,\n46686=>11377,\n46687=>11378,\n46688=>11379,\n46689=>11380,\n46690=>11381,\n46691=>11382,\n46693=>11383,\n46694=>11384,\n46695=>11385,\n46697=>11386,\n46698=>11387,\n46699=>11388,\n46700=>11389,\n46701=>11390,\n46702=>11391,\n46703=>11392,\n46704=>11393,\n46705=>11394,\n46706=>11395,\n46707=>11396,\n46708=>11397,\n46709=>11398,\n46710=>11399,\n46711=>11400,\n46712=>11401,\n46713=>11402,\n46714=>11403,\n46715=>11404,\n46716=>11405,\n46717=>11406,\n46718=>11407,\n46719=>11408,\n46720=>11409,\n46721=>11410,\n46722=>11411,\n46723=>11412,\n46724=>11413,\n46725=>11414,\n46726=>11415,\n46727=>11416,\n46728=>11417,\n46729=>11418,\n46730=>11419,\n46731=>11420,\n46732=>11421,\n46733=>11422,\n46734=>11423,\n46735=>11424,\n46736=>11425,\n46737=>11426,\n46738=>11427,\n46739=>11428,\n46740=>11429,\n46741=>11430,\n46742=>11431,\n46743=>11432,\n46744=>11433,\n46745=>11434,\n46746=>11435,\n46747=>11436,\n46750=>11437,\n46751=>11438,\n46753=>11439,\n46754=>11440,\n46755=>11441,\n46757=>11442,\n46758=>11443,\n46759=>11444,\n46760=>11445,\n46761=>11446,\n46762=>11447,\n46765=>11448,\n46766=>11449,\n46767=>11450,\n46768=>11451,\n46770=>11452,\n46771=>11453,\n46772=>11454,\n46773=>11455,\n46774=>11456,\n46775=>11457,\n46776=>11458,\n46777=>11459,\n46778=>11460,\n46779=>11461,\n46780=>11462,\n46781=>11463,\n46782=>11464,\n46783=>11465,\n46784=>11466,\n46785=>11467,\n46786=>11468,\n46787=>11469,\n46788=>11470,\n46789=>11471,\n46790=>11472,\n46791=>11473,\n46792=>11474,\n46793=>11475,\n46794=>11476,\n46795=>11477,\n46796=>11478,\n46797=>11479,\n46798=>11480,\n46799=>11481,\n46800=>11482,\n46801=>11483,\n46802=>11484,\n46803=>11485,\n46805=>11486,\n46806=>11487,\n46807=>11488,\n46808=>11489,\n46809=>11490,\n46810=>11491,\n46811=>11492,\n46812=>11493,\n46813=>11494,\n46814=>11495,\n46815=>11496,\n46816=>11497,\n46817=>11498,\n46818=>11499,\n46819=>11500,\n46820=>11501,\n46821=>11502,\n46822=>11503,\n46823=>11504,\n46824=>11505,\n46825=>11506,\n46826=>11507,\n46827=>11508,\n46828=>11509,\n46829=>11510,\n46830=>11511,\n46831=>11512,\n46833=>11513,\n46834=>11514,\n46835=>11515,\n46837=>11516,\n46838=>11517,\n46839=>11518,\n46841=>11519,\n46842=>11520,\n46843=>11521,\n46844=>11522,\n46845=>11523,\n46846=>11524,\n46847=>11525,\n46850=>11526,\n46851=>11527,\n46852=>11528,\n46854=>11529,\n46855=>11530,\n46856=>11531,\n46857=>11532,\n46858=>11533,\n46859=>11534,\n46860=>11535,\n46861=>11536,\n46862=>11537,\n46863=>11538,\n46864=>11539,\n46865=>11540,\n46866=>11541,\n46867=>11542,\n46868=>11543,\n46869=>11544,\n46870=>11545,\n46871=>11546,\n46872=>11547,\n46873=>11548,\n46874=>11549,\n46875=>11550,\n46876=>11551,\n46877=>11552,\n46878=>11553,\n46879=>11554,\n46880=>11555,\n46881=>11556,\n46882=>11557,\n46883=>11558,\n46884=>11559,\n46885=>11560,\n46886=>11561,\n46887=>11562,\n46890=>11563,\n46891=>11564,\n46893=>11565,\n46894=>11566,\n46897=>11567,\n46898=>11568,\n46899=>11569,\n46900=>11570,\n46901=>11571,\n46902=>11572,\n46903=>11573,\n46906=>11574,\n46908=>11575,\n46909=>11576,\n46910=>11577,\n46911=>11578,\n46912=>11579,\n46913=>11580,\n46914=>11581,\n46915=>11582,\n46917=>11583,\n46918=>11584,\n46919=>11585,\n46921=>11586,\n46922=>11587,\n46923=>11588,\n46925=>11589,\n46926=>11590,\n46927=>11591,\n46928=>11592,\n46929=>11593,\n46930=>11594,\n46931=>11595,\n46934=>11596,\n46935=>11597,\n46936=>11598,\n46937=>11599,\n46938=>11600,\n46939=>11601,\n46940=>11602,\n46941=>11603,\n46942=>11604,\n46943=>11605,\n46945=>11606,\n46946=>11607,\n46947=>11608,\n46949=>11609,\n46950=>11610,\n46951=>11611,\n46953=>11612,\n46954=>11613,\n46955=>11614,\n46956=>11615,\n46957=>11616,\n46958=>11617,\n46959=>11618,\n46962=>11619,\n46964=>11620,\n46966=>11621,\n46967=>11622,\n46968=>11623,\n46969=>11624,\n46970=>11625,\n46971=>11626,\n46974=>11627,\n46975=>11628,\n46977=>11629,\n46978=>11630,\n46979=>11631,\n46981=>11632,\n46982=>11633,\n46983=>11634,\n46984=>11635,\n46985=>11636,\n46986=>11637,\n46987=>11638,\n46990=>11639,\n46995=>11640,\n46996=>11641,\n46997=>11642,\n47002=>11643,\n47003=>11644,\n47005=>11645,\n47006=>11646,\n47007=>11647,\n47009=>11648,\n47010=>11649,\n47011=>11650,\n47012=>11651,\n47013=>11652,\n47014=>11653,\n47015=>11654,\n47018=>11655,\n47022=>11656,\n47023=>11657,\n47024=>11658,\n47025=>11659,\n47026=>11660,\n47027=>11661,\n47030=>11662,\n47031=>11663,\n47033=>11664,\n47034=>11665,\n47035=>11666,\n47036=>11667,\n47037=>11668,\n47038=>11669,\n47039=>11670,\n47040=>11671,\n47041=>11672,\n47042=>11673,\n47043=>11674,\n47044=>11675,\n47045=>11676,\n47046=>11677,\n47048=>11678,\n47050=>11679,\n47051=>11680,\n47052=>11681,\n47053=>11682,\n47054=>11683,\n47055=>11684,\n47056=>11685,\n47057=>11686,\n47058=>11687,\n47059=>11688,\n47060=>11689,\n47061=>11690,\n47062=>11691,\n47063=>11692,\n47064=>11693,\n47065=>11694,\n47066=>11695,\n47067=>11696,\n47068=>11697,\n47069=>11698,\n47070=>11699,\n47071=>11700,\n47072=>11701,\n47073=>11702,\n47074=>11703,\n47075=>11704,\n47076=>11705,\n47077=>11706,\n47078=>11707,\n47079=>11708,\n47080=>11709,\n47081=>11710,\n47082=>11711,\n47083=>11712,\n47086=>11713,\n47087=>11714,\n47089=>11715,\n47090=>11716,\n47091=>11717,\n47093=>11718,\n47094=>11719,\n47095=>11720,\n47096=>11721,\n47097=>11722,\n47098=>11723,\n47099=>11724,\n47102=>11725,\n47106=>11726,\n47107=>11727,\n47108=>11728,\n47109=>11729,\n47110=>11730,\n47114=>11731,\n47115=>11732,\n47117=>11733,\n47118=>11734,\n47119=>11735,\n47121=>11736,\n47122=>11737,\n47123=>11738,\n47124=>11739,\n47125=>11740,\n47126=>11741,\n47127=>11742,\n47130=>11743,\n47132=>11744,\n47134=>11745,\n47135=>11746,\n47136=>11747,\n47137=>11748,\n47138=>11749,\n47139=>11750,\n47142=>11751,\n47143=>11752,\n47145=>11753,\n47146=>11754,\n47147=>11755,\n47149=>11756,\n47150=>11757,\n47151=>11758,\n47152=>11759,\n47153=>11760,\n47154=>11761,\n47155=>11762,\n47158=>11763,\n47162=>11764,\n47163=>11765,\n47164=>11766,\n47165=>11767,\n47166=>11768,\n47167=>11769,\n47169=>11770,\n47170=>11771,\n47171=>11772,\n47173=>11773,\n47174=>11774,\n47175=>11775,\n47176=>11776,\n47177=>11777,\n47178=>11778,\n47179=>11779,\n47180=>11780,\n47181=>11781,\n47182=>11782,\n47183=>11783,\n47184=>11784,\n47186=>11785,\n47188=>11786,\n47189=>11787,\n47190=>11788,\n47191=>11789,\n47192=>11790,\n47193=>11791,\n47194=>11792,\n47195=>11793,\n47198=>11794,\n47199=>11795,\n47201=>11796,\n47202=>11797,\n47203=>11798,\n47205=>11799,\n47206=>11800,\n47207=>11801,\n47208=>11802,\n47209=>11803,\n47210=>11804,\n47211=>11805,\n47214=>11806,\n47216=>11807,\n47218=>11808,\n47219=>11809,\n47220=>11810,\n47221=>11811,\n47222=>11812,\n47223=>11813,\n47225=>11814,\n47226=>11815,\n47227=>11816,\n47229=>11817,\n47230=>11818,\n47231=>11819,\n47232=>11820,\n47233=>11821,\n47234=>11822,\n47235=>11823,\n47236=>11824,\n47237=>11825,\n47238=>11826,\n47239=>11827,\n47240=>11828,\n47241=>11829,\n47242=>11830,\n47243=>11831,\n47244=>11832,\n47246=>11833,\n47247=>11834,\n47248=>11835,\n47249=>11836,\n47250=>11837,\n47251=>11838,\n47252=>11839,\n47253=>11840,\n47254=>11841,\n47255=>11842,\n47256=>11843,\n47257=>11844,\n47258=>11845,\n47259=>11846,\n47260=>11847,\n47261=>11848,\n47262=>11849,\n47263=>11850,\n47264=>11851,\n47265=>11852,\n47266=>11853,\n47267=>11854,\n47268=>11855,\n47269=>11856,\n47270=>11857,\n47271=>11858,\n47273=>11859,\n47274=>11860,\n47275=>11861,\n47276=>11862,\n47277=>11863,\n47278=>11864,\n47279=>11865,\n47281=>11866,\n47282=>11867,\n47283=>11868,\n47285=>11869,\n47286=>11870,\n47287=>11871,\n47289=>11872,\n47290=>11873,\n47291=>11874,\n47292=>11875,\n47293=>11876,\n47294=>11877,\n47295=>11878,\n47298=>11879,\n47300=>11880,\n47302=>11881,\n47303=>11882,\n47304=>11883,\n47305=>11884,\n47306=>11885,\n47307=>11886,\n47309=>11887,\n47310=>11888,\n47311=>11889,\n47313=>11890,\n47314=>11891,\n47315=>11892,\n47317=>11893,\n47318=>11894,\n47319=>11895,\n47320=>11896,\n47321=>11897,\n47322=>11898,\n47323=>11899,\n47324=>11900,\n47326=>11901,\n47328=>11902,\n47330=>11903,\n47331=>11904,\n47332=>11905,\n47333=>11906,\n47334=>11907,\n47335=>11908,\n47338=>11909,\n47339=>11910,\n47341=>11911,\n47342=>11912,\n47343=>11913,\n47345=>11914,\n47346=>11915,\n47347=>11916,\n47348=>11917,\n47349=>11918,\n47350=>11919,\n47351=>11920,\n47354=>11921,\n47356=>11922,\n47358=>11923,\n47359=>11924,\n47360=>11925,\n47361=>11926,\n47362=>11927,\n47363=>11928,\n47365=>11929,\n47366=>11930,\n47367=>11931,\n47368=>11932,\n47369=>11933,\n47370=>11934,\n47371=>11935,\n47372=>11936,\n47373=>11937,\n47374=>11938,\n47375=>11939,\n47376=>11940,\n47377=>11941,\n47378=>11942,\n47379=>11943,\n47380=>11944,\n47381=>11945,\n47382=>11946,\n47383=>11947,\n47385=>11948,\n47386=>11949,\n47387=>11950,\n47388=>11951,\n47389=>11952,\n47390=>11953,\n47391=>11954,\n47393=>11955,\n47394=>11956,\n47395=>11957,\n47396=>11958,\n47397=>11959,\n47398=>11960,\n47399=>11961,\n47400=>11962,\n47401=>11963,\n47402=>11964,\n47403=>11965,\n47404=>11966,\n47405=>11967,\n47406=>11968,\n47407=>11969,\n47408=>11970,\n47409=>11971,\n47410=>11972,\n47411=>11973,\n47412=>11974,\n47413=>11975,\n47414=>11976,\n47415=>11977,\n47416=>11978,\n47417=>11979,\n47418=>11980,\n47419=>11981,\n47422=>11982,\n47423=>11983,\n47425=>11984,\n47426=>11985,\n47427=>11986,\n47429=>11987,\n47430=>11988,\n47431=>11989,\n47432=>11990,\n47433=>11991,\n47434=>11992,\n47435=>11993,\n47437=>11994,\n47438=>11995,\n47440=>11996,\n47442=>11997,\n47443=>11998,\n47444=>11999,\n47445=>12000,\n47446=>12001,\n47447=>12002,\n47450=>12003,\n47451=>12004,\n47453=>12005,\n47454=>12006,\n47455=>12007,\n47457=>12008,\n47458=>12009,\n47459=>12010,\n47460=>12011,\n47461=>12012,\n47462=>12013,\n47463=>12014,\n47466=>12015,\n47468=>12016,\n47470=>12017,\n47471=>12018,\n47472=>12019,\n47473=>12020,\n47474=>12021,\n47475=>12022,\n47478=>12023,\n47479=>12024,\n47481=>12025,\n47482=>12026,\n47483=>12027,\n47485=>12028,\n47486=>12029,\n47487=>12030,\n47488=>12031,\n47489=>12032,\n47490=>12033,\n47491=>12034,\n47494=>12035,\n47496=>12036,\n47499=>12037,\n47500=>12038,\n47503=>12039,\n47504=>12040,\n47505=>12041,\n47506=>12042,\n47507=>12043,\n47508=>12044,\n47509=>12045,\n47510=>12046,\n47511=>12047,\n47512=>12048,\n47513=>12049,\n47514=>12050,\n47515=>12051,\n47516=>12052,\n47517=>12053,\n47518=>12054,\n47519=>12055,\n47520=>12056,\n47521=>12057,\n47522=>12058,\n47523=>12059,\n47524=>12060,\n47525=>12061,\n47526=>12062,\n47527=>12063,\n47528=>12064,\n47529=>12065,\n47530=>12066,\n47531=>12067,\n47534=>12068,\n47535=>12069,\n47537=>12070,\n47538=>12071,\n47539=>12072,\n47541=>12073,\n47542=>12074,\n47543=>12075,\n47544=>12076,\n47545=>12077,\n47546=>12078,\n47547=>12079,\n47550=>12080,\n47552=>12081,\n47554=>12082,\n47555=>12083,\n47556=>12084,\n47557=>12085,\n47558=>12086,\n47559=>12087,\n47562=>12088,\n47563=>12089,\n47565=>12090,\n47571=>12091,\n47572=>12092,\n47573=>12093,\n47574=>12094,\n47575=>12095,\n47578=>12096,\n47580=>12097,\n47583=>12098,\n47584=>12099,\n47586=>12100,\n47590=>12101,\n47591=>12102,\n47593=>12103,\n47594=>12104,\n47595=>12105,\n47597=>12106,\n47598=>12107,\n47599=>12108,\n47600=>12109,\n47601=>12110,\n47602=>12111,\n47603=>12112,\n47606=>12113,\n47611=>12114,\n47612=>12115,\n47613=>12116,\n47614=>12117,\n47615=>12118,\n47618=>12119,\n47619=>12120,\n47620=>12121,\n47621=>12122,\n47622=>12123,\n47623=>12124,\n47625=>12125,\n47626=>12126,\n47627=>12127,\n47628=>12128,\n47629=>12129,\n47630=>12130,\n47631=>12131,\n47632=>12132,\n47633=>12133,\n47634=>12134,\n47635=>12135,\n47636=>12136,\n47638=>12137,\n47639=>12138,\n47640=>12139,\n47641=>12140,\n47642=>12141,\n47643=>12142,\n47644=>12143,\n47645=>12144,\n47646=>12145,\n47647=>12146,\n47648=>12147,\n47649=>12148,\n47650=>12149,\n47651=>12150,\n47652=>12151,\n47653=>12152,\n47654=>12153,\n47655=>12154,\n47656=>12155,\n47657=>12156,\n47658=>12157,\n47659=>12158,\n47660=>12159,\n47661=>12160,\n47662=>12161,\n47663=>12162,\n47664=>12163,\n47665=>12164,\n47666=>12165,\n47667=>12166,\n47668=>12167,\n47669=>12168,\n47670=>12169,\n47671=>12170,\n47674=>12171,\n47675=>12172,\n47677=>12173,\n47678=>12174,\n47679=>12175,\n47681=>12176,\n47683=>12177,\n47684=>12178,\n47685=>12179,\n47686=>12180,\n47687=>12181,\n47690=>12182,\n47692=>12183,\n47695=>12184,\n47696=>12185,\n47697=>12186,\n47698=>12187,\n47702=>12188,\n47703=>12189,\n47705=>12190,\n47706=>12191,\n47707=>12192,\n47709=>12193,\n47710=>12194,\n47711=>12195,\n47712=>12196,\n47713=>12197,\n47714=>12198,\n47715=>12199,\n47718=>12200,\n47722=>12201,\n47723=>12202,\n47724=>12203,\n47725=>12204,\n47726=>12205,\n47727=>12206,\n47730=>12207,\n47731=>12208,\n47733=>12209,\n47734=>12210,\n47735=>12211,\n47737=>12212,\n47738=>12213,\n47739=>12214,\n47740=>12215,\n47741=>12216,\n47742=>12217,\n47743=>12218,\n47744=>12219,\n47745=>12220,\n47746=>12221,\n47750=>12222,\n47752=>12223,\n47753=>12224,\n47754=>12225,\n47755=>12226,\n47757=>12227,\n47758=>12228,\n47759=>12229,\n47760=>12230,\n47761=>12231,\n47762=>12232,\n47763=>12233,\n47764=>12234,\n47765=>12235,\n47766=>12236,\n47767=>12237,\n47768=>12238,\n47769=>12239,\n47770=>12240,\n47771=>12241,\n47772=>12242,\n47773=>12243,\n47774=>12244,\n47775=>12245,\n47776=>12246,\n47777=>12247,\n47778=>12248,\n47779=>12249,\n47780=>12250,\n47781=>12251,\n47782=>12252,\n47783=>12253,\n47786=>12254,\n47789=>12255,\n47790=>12256,\n47791=>12257,\n47793=>12258,\n47795=>12259,\n47796=>12260,\n47797=>12261,\n47798=>12262,\n47799=>12263,\n47802=>12264,\n47804=>12265,\n47806=>12266,\n47807=>12267,\n47808=>12268,\n47809=>12269,\n47810=>12270,\n47811=>12271,\n47813=>12272,\n47814=>12273,\n47815=>12274,\n47817=>12275,\n47818=>12276,\n47819=>12277,\n47820=>12278,\n47821=>12279,\n47822=>12280,\n47823=>12281,\n47824=>12282,\n47825=>12283,\n47826=>12284,\n47827=>12285,\n47828=>12286,\n47829=>12287,\n47830=>12288,\n47831=>12289,\n47834=>12290,\n47835=>12291,\n47836=>12292,\n47837=>12293,\n47838=>12294,\n47839=>12295,\n47840=>12296,\n47841=>12297,\n47842=>12298,\n47843=>12299,\n47844=>12300,\n47845=>12301,\n47846=>12302,\n47847=>12303,\n47848=>12304,\n47849=>12305,\n47850=>12306,\n47851=>12307,\n47852=>12308,\n47853=>12309,\n47854=>12310,\n47855=>12311,\n47856=>12312,\n47857=>12313,\n47858=>12314,\n47859=>12315,\n47860=>12316,\n47861=>12317,\n47862=>12318,\n47863=>12319,\n47864=>12320,\n47865=>12321,\n47866=>12322,\n47867=>12323,\n47869=>12324,\n47870=>12325,\n47871=>12326,\n47873=>12327,\n47874=>12328,\n47875=>12329,\n47877=>12330,\n47878=>12331,\n47879=>12332,\n47880=>12333,\n47881=>12334,\n47882=>12335,\n47883=>12336,\n47884=>12337,\n47886=>12338,\n47888=>12339,\n47890=>12340,\n47891=>12341,\n47892=>12342,\n47893=>12343,\n47894=>12344,\n47895=>12345,\n47897=>12346,\n47898=>12347,\n47899=>12348,\n47901=>12349,\n47902=>12350,\n47903=>12351,\n47905=>12352,\n47906=>12353,\n47907=>12354,\n47908=>12355,\n47909=>12356,\n47910=>12357,\n47911=>12358,\n47912=>12359,\n47914=>12360,\n47916=>12361,\n47917=>12362,\n47918=>12363,\n47919=>12364,\n47920=>12365,\n47921=>12366,\n47922=>12367,\n47923=>12368,\n47927=>12369,\n47929=>12370,\n47930=>12371,\n47935=>12372,\n47936=>12373,\n47937=>12374,\n47938=>12375,\n47939=>12376,\n47942=>12377,\n47944=>12378,\n47946=>12379,\n47947=>12380,\n47948=>12381,\n47950=>12382,\n47953=>12383,\n47954=>12384,\n47955=>12385,\n47957=>12386,\n47958=>12387,\n47959=>12388,\n47961=>12389,\n47962=>12390,\n47963=>12391,\n47964=>12392,\n47965=>12393,\n47966=>12394,\n47967=>12395,\n47968=>12396,\n47970=>12397,\n47972=>12398,\n47973=>12399,\n47974=>12400,\n47975=>12401,\n47976=>12402,\n47977=>12403,\n47978=>12404,\n47979=>12405,\n47981=>12406,\n47982=>12407,\n47983=>12408,\n47984=>12409,\n47985=>12410,\n47986=>12411,\n47987=>12412,\n47988=>12413,\n47989=>12414,\n47990=>12415,\n47991=>12416,\n47992=>12417,\n47993=>12418,\n47994=>12419,\n47995=>12420,\n47996=>12421,\n47997=>12422,\n47998=>12423,\n47999=>12424,\n48000=>12425,\n48001=>12426,\n48002=>12427,\n48003=>12428,\n48004=>12429,\n48005=>12430,\n48006=>12431,\n48007=>12432,\n48009=>12433,\n48010=>12434,\n48011=>12435,\n48013=>12436,\n48014=>12437,\n48015=>12438,\n48017=>12439,\n48018=>12440,\n48019=>12441,\n48020=>12442,\n48021=>12443,\n48022=>12444,\n48023=>12445,\n48024=>12446,\n48025=>12447,\n48026=>12448,\n48027=>12449,\n48028=>12450,\n48029=>12451,\n48030=>12452,\n48031=>12453,\n48032=>12454,\n48033=>12455,\n48034=>12456,\n48035=>12457,\n48037=>12458,\n48038=>12459,\n48039=>12460,\n48041=>12461,\n48042=>12462,\n48043=>12463,\n48045=>12464,\n48046=>12465,\n48047=>12466,\n48048=>12467,\n48049=>12468,\n48050=>12469,\n48051=>12470,\n48053=>12471,\n48054=>12472,\n48056=>12473,\n48057=>12474,\n48058=>12475,\n48059=>12476,\n48060=>12477,\n48061=>12478,\n48062=>12479,\n48063=>12480,\n48065=>12481,\n48066=>12482,\n48067=>12483,\n48069=>12484,\n48070=>12485,\n48071=>12486,\n48073=>12487,\n48074=>12488,\n48075=>12489,\n48076=>12490,\n48077=>12491,\n48078=>12492,\n48079=>12493,\n48081=>12494,\n48082=>12495,\n48084=>12496,\n48085=>12497,\n48086=>12498,\n48087=>12499,\n48088=>12500,\n48089=>12501,\n48090=>12502,\n48091=>12503,\n48092=>12504,\n48093=>12505,\n48094=>12506,\n48095=>12507,\n48096=>12508,\n48097=>12509,\n48098=>12510,\n48099=>12511,\n48100=>12512,\n48101=>12513,\n48102=>12514,\n48103=>12515,\n48104=>12516,\n48105=>12517,\n48106=>12518,\n48107=>12519,\n48108=>12520,\n48109=>12521,\n48110=>12522,\n48111=>12523,\n48112=>12524,\n48113=>12525,\n48114=>12526,\n48115=>12527,\n48116=>12528,\n48117=>12529,\n48118=>12530,\n48119=>12531,\n48122=>12532,\n48123=>12533,\n48125=>12534,\n48126=>12535,\n48129=>12536,\n48131=>12537,\n48132=>12538,\n48133=>12539,\n48134=>12540,\n48135=>12541,\n48138=>12542,\n48142=>12543,\n48144=>12544,\n48146=>12545,\n48147=>12546,\n48153=>12547,\n48154=>12548,\n48160=>12549,\n48161=>12550,\n48162=>12551,\n48163=>12552,\n48166=>12553,\n48168=>12554,\n48170=>12555,\n48171=>12556,\n48172=>12557,\n48174=>12558,\n48175=>12559,\n48178=>12560,\n48179=>12561,\n48181=>12562,\n48182=>12563,\n48183=>12564,\n48185=>12565,\n48186=>12566,\n48187=>12567,\n48188=>12568,\n48189=>12569,\n48190=>12570,\n48191=>12571,\n48194=>12572,\n48198=>12573,\n48199=>12574,\n48200=>12575,\n48202=>12576,\n48203=>12577,\n48206=>12578,\n48207=>12579,\n48209=>12580,\n48210=>12581,\n48211=>12582,\n48212=>12583,\n48213=>12584,\n48214=>12585,\n48215=>12586,\n48216=>12587,\n48217=>12588,\n48218=>12589,\n48219=>12590,\n48220=>12591,\n48222=>12592,\n48223=>12593,\n48224=>12594,\n48225=>12595,\n48226=>12596,\n48227=>12597,\n48228=>12598,\n48229=>12599,\n48230=>12600,\n48231=>12601,\n48232=>12602,\n48233=>12603,\n48234=>12604,\n48235=>12605,\n48236=>12606,\n48237=>12607,\n48238=>12608,\n48239=>12609,\n48240=>12610,\n48241=>12611,\n48242=>12612,\n48243=>12613,\n48244=>12614,\n48245=>12615,\n48246=>12616,\n48247=>12617,\n48248=>12618,\n48249=>12619,\n48250=>12620,\n48251=>12621,\n48252=>12622,\n48253=>12623,\n48254=>12624,\n48255=>12625,\n48256=>12626,\n48257=>12627,\n48258=>12628,\n48259=>12629,\n48262=>12630,\n48263=>12631,\n48265=>12632,\n48266=>12633,\n48269=>12634,\n48271=>12635,\n48272=>12636,\n48273=>12637,\n48274=>12638,\n48275=>12639,\n48278=>12640,\n48280=>12641,\n48283=>12642,\n48284=>12643,\n48285=>12644,\n48286=>12645,\n48287=>12646,\n48290=>12647,\n48291=>12648,\n48293=>12649,\n48294=>12650,\n48297=>12651,\n48298=>12652,\n48299=>12653,\n48300=>12654,\n48301=>12655,\n48302=>12656,\n48303=>12657,\n48306=>12658,\n48310=>12659,\n48311=>12660,\n48312=>12661,\n48313=>12662,\n48314=>12663,\n48315=>12664,\n48318=>12665,\n48319=>12666,\n48321=>12667,\n48322=>12668,\n48323=>12669,\n48325=>12670,\n48326=>12671,\n48327=>12672,\n48328=>12673,\n48329=>12674,\n48330=>12675,\n48331=>12676,\n48332=>12677,\n48334=>12678,\n48338=>12679,\n48339=>12680,\n48340=>12681,\n48342=>12682,\n48343=>12683,\n48345=>12684,\n48346=>12685,\n48347=>12686,\n48349=>12687,\n48350=>12688,\n48351=>12689,\n48352=>12690,\n48353=>12691,\n48354=>12692,\n48355=>12693,\n48356=>12694,\n48357=>12695,\n48358=>12696,\n48359=>12697,\n48360=>12698,\n48361=>12699,\n48362=>12700,\n48363=>12701,\n48364=>12702,\n48365=>12703,\n48366=>12704,\n48367=>12705,\n48368=>12706,\n48369=>12707,\n48370=>12708,\n48371=>12709,\n48375=>12710,\n48377=>12711,\n48378=>12712,\n48379=>12713,\n48381=>12714,\n48382=>12715,\n48383=>12716,\n48384=>12717,\n48385=>12718,\n48386=>12719,\n48387=>12720,\n48390=>12721,\n48392=>12722,\n48394=>12723,\n48395=>12724,\n48396=>12725,\n48397=>12726,\n48398=>12727,\n48399=>12728,\n48401=>12729,\n48402=>12730,\n48403=>12731,\n48405=>12732,\n48406=>12733,\n48407=>12734,\n48408=>12735,\n48409=>12736,\n48410=>12737,\n48411=>12738,\n48412=>12739,\n48413=>12740,\n48414=>12741,\n48415=>12742,\n48416=>12743,\n48417=>12744,\n48418=>12745,\n48419=>12746,\n48421=>12747,\n48422=>12748,\n48423=>12749,\n48424=>12750,\n48425=>12751,\n48426=>12752,\n48427=>12753,\n48429=>12754,\n48430=>12755,\n48431=>12756,\n48432=>12757,\n48433=>12758,\n48434=>12759,\n48435=>12760,\n48436=>12761,\n48437=>12762,\n48438=>12763,\n48439=>12764,\n48440=>12765,\n48441=>12766,\n48442=>12767,\n48443=>12768,\n48444=>12769,\n48445=>12770,\n48446=>12771,\n48447=>12772,\n48449=>12773,\n48450=>12774,\n48451=>12775,\n48452=>12776,\n48453=>12777,\n48454=>12778,\n48455=>12779,\n48458=>12780,\n48459=>12781,\n48461=>12782,\n48462=>12783,\n48463=>12784,\n48465=>12785,\n48466=>12786,\n48467=>12787,\n48468=>12788,\n48469=>12789,\n48470=>12790,\n48471=>12791,\n48474=>12792,\n48475=>12793,\n48476=>12794,\n48477=>12795,\n48478=>12796,\n48479=>12797,\n48480=>12798,\n48481=>12799,\n48482=>12800,\n48483=>12801,\n48485=>12802,\n48486=>12803,\n48487=>12804,\n48489=>12805,\n48490=>12806,\n48491=>12807,\n48492=>12808,\n48493=>12809,\n48494=>12810,\n48495=>12811,\n48496=>12812,\n48497=>12813,\n48498=>12814,\n48499=>12815,\n48500=>12816,\n48501=>12817,\n48502=>12818,\n48503=>12819,\n48504=>12820,\n48505=>12821,\n48506=>12822,\n48507=>12823,\n48508=>12824,\n48509=>12825,\n48510=>12826,\n48511=>12827,\n48514=>12828,\n48515=>12829,\n48517=>12830,\n48518=>12831,\n48523=>12832,\n48524=>12833,\n48525=>12834,\n48526=>12835,\n48527=>12836,\n48530=>12837,\n48532=>12838,\n48534=>12839,\n48535=>12840,\n48536=>12841,\n48539=>12842,\n48541=>12843,\n48542=>12844,\n48543=>12845,\n48544=>12846,\n48545=>12847,\n48546=>12848,\n48547=>12849,\n48549=>12850,\n48550=>12851,\n48551=>12852,\n48552=>12853,\n48553=>12854,\n48554=>12855,\n48555=>12856,\n48556=>12857,\n48557=>12858,\n48558=>12859,\n48559=>12860,\n48561=>12861,\n48562=>12862,\n48563=>12863,\n48564=>12864,\n48565=>12865,\n48566=>12866,\n48567=>12867,\n48569=>12868,\n48570=>12869,\n48571=>12870,\n48572=>12871,\n48573=>12872,\n48574=>12873,\n48575=>12874,\n48576=>12875,\n48577=>12876,\n48578=>12877,\n48579=>12878,\n48580=>12879,\n48581=>12880,\n48582=>12881,\n48583=>12882,\n48584=>12883,\n48585=>12884,\n48586=>12885,\n48587=>12886,\n48588=>12887,\n48589=>12888,\n48590=>12889,\n48591=>12890,\n48592=>12891,\n48593=>12892,\n48594=>12893,\n48595=>12894,\n48598=>12895,\n48599=>12896,\n48601=>12897,\n48602=>12898,\n48603=>12899,\n48605=>12900,\n48606=>12901,\n48607=>12902,\n48608=>12903,\n48609=>12904,\n48610=>12905,\n48611=>12906,\n48612=>12907,\n48613=>12908,\n48614=>12909,\n48615=>12910,\n48616=>12911,\n48618=>12912,\n48619=>12913,\n48620=>12914,\n48621=>12915,\n48622=>12916,\n48623=>12917,\n48625=>12918,\n48626=>12919,\n48627=>12920,\n48629=>12921,\n48630=>12922,\n48631=>12923,\n48633=>12924,\n48634=>12925,\n48635=>12926,\n48636=>12927,\n48637=>12928,\n48638=>12929,\n48639=>12930,\n48641=>12931,\n48642=>12932,\n48644=>12933,\n48646=>12934,\n48647=>12935,\n48648=>12936,\n48649=>12937,\n48650=>12938,\n48651=>12939,\n48654=>12940,\n48655=>12941,\n48657=>12942,\n48658=>12943,\n48659=>12944,\n48661=>12945,\n48662=>12946,\n48663=>12947,\n48664=>12948,\n48665=>12949,\n48666=>12950,\n48667=>12951,\n48670=>12952,\n48672=>12953,\n48673=>12954,\n48674=>12955,\n48675=>12956,\n48676=>12957,\n48677=>12958,\n48678=>12959,\n48679=>12960,\n48680=>12961,\n48681=>12962,\n48682=>12963,\n48683=>12964,\n48684=>12965,\n48685=>12966,\n48686=>12967,\n48687=>12968,\n48688=>12969,\n48689=>12970,\n48690=>12971,\n48691=>12972,\n48692=>12973,\n48693=>12974,\n48694=>12975,\n48695=>12976,\n48696=>12977,\n48697=>12978,\n48698=>12979,\n48699=>12980,\n48700=>12981,\n48701=>12982,\n48702=>12983,\n48703=>12984,\n48704=>12985,\n48705=>12986,\n48706=>12987,\n48707=>12988,\n48710=>12989,\n48711=>12990,\n48713=>12991,\n48714=>12992,\n48715=>12993,\n48717=>12994,\n48719=>12995,\n48720=>12996,\n48721=>12997,\n48722=>12998,\n48723=>12999,\n48726=>13000,\n48728=>13001,\n48732=>13002,\n48733=>13003,\n48734=>13004,\n48735=>13005,\n48738=>13006,\n48739=>13007,\n48741=>13008,\n48742=>13009,\n48743=>13010,\n48745=>13011,\n48747=>13012,\n48748=>13013,\n48749=>13014,\n48750=>13015,\n48751=>13016,\n48754=>13017,\n48758=>13018,\n48759=>13019,\n48760=>13020,\n48761=>13021,\n48762=>13022,\n48766=>13023,\n48767=>13024,\n48769=>13025,\n48770=>13026,\n48771=>13027,\n48773=>13028,\n48774=>13029,\n48775=>13030,\n48776=>13031,\n48777=>13032,\n48778=>13033,\n48779=>13034,\n48782=>13035,\n48786=>13036,\n48787=>13037,\n48788=>13038,\n48789=>13039,\n48790=>13040,\n48791=>13041,\n48794=>13042,\n48795=>13043,\n48796=>13044,\n48797=>13045,\n48798=>13046,\n48799=>13047,\n48800=>13048,\n48801=>13049,\n48802=>13050,\n48803=>13051,\n48804=>13052,\n48805=>13053,\n48806=>13054,\n48807=>13055,\n48809=>13056,\n48810=>13057,\n48811=>13058,\n48812=>13059,\n48813=>13060,\n48814=>13061,\n48815=>13062,\n48816=>13063,\n48817=>13064,\n48818=>13065,\n48819=>13066,\n48820=>13067,\n48821=>13068,\n48822=>13069,\n48823=>13070,\n48824=>13071,\n48825=>13072,\n48826=>13073,\n48827=>13074,\n48828=>13075,\n48829=>13076,\n48830=>13077,\n48831=>13078,\n48832=>13079,\n48833=>13080,\n48834=>13081,\n48835=>13082,\n48836=>13083,\n48837=>13084,\n48838=>13085,\n48839=>13086,\n48840=>13087,\n48841=>13088,\n48842=>13089,\n48843=>13090,\n48844=>13091,\n48845=>13092,\n48846=>13093,\n48847=>13094,\n48850=>13095,\n48851=>13096,\n48853=>13097,\n48854=>13098,\n48857=>13099,\n48858=>13100,\n48859=>13101,\n48860=>13102,\n48861=>13103,\n48862=>13104,\n48863=>13105,\n48865=>13106,\n48866=>13107,\n48870=>13108,\n48871=>13109,\n48872=>13110,\n48873=>13111,\n48874=>13112,\n48875=>13113,\n48877=>13114,\n48878=>13115,\n48879=>13116,\n48880=>13117,\n48881=>13118,\n48882=>13119,\n48883=>13120,\n48884=>13121,\n48885=>13122,\n48886=>13123,\n48887=>13124,\n48888=>13125,\n48889=>13126,\n48890=>13127,\n48891=>13128,\n48892=>13129,\n48893=>13130,\n48894=>13131,\n48895=>13132,\n48896=>13133,\n48898=>13134,\n48899=>13135,\n48900=>13136,\n48901=>13137,\n48902=>13138,\n48903=>13139,\n48906=>13140,\n48907=>13141,\n48908=>13142,\n48909=>13143,\n48910=>13144,\n48911=>13145,\n48912=>13146,\n48913=>13147,\n48914=>13148,\n48915=>13149,\n48916=>13150,\n48917=>13151,\n48918=>13152,\n48919=>13153,\n48922=>13154,\n48926=>13155,\n48927=>13156,\n48928=>13157,\n48929=>13158,\n48930=>13159,\n48931=>13160,\n48932=>13161,\n48933=>13162,\n48934=>13163,\n48935=>13164,\n48936=>13165,\n48937=>13166,\n48938=>13167,\n48939=>13168,\n48940=>13169,\n48941=>13170,\n48942=>13171,\n48943=>13172,\n48944=>13173,\n48945=>13174,\n48946=>13175,\n48947=>13176,\n48948=>13177,\n48949=>13178,\n48950=>13179,\n48951=>13180,\n48952=>13181,\n48953=>13182,\n48954=>13183,\n48955=>13184,\n48956=>13185,\n48957=>13186,\n48958=>13187,\n48959=>13188,\n48962=>13189,\n48963=>13190,\n48965=>13191,\n48966=>13192,\n48967=>13193,\n48969=>13194,\n48970=>13195,\n48971=>13196,\n48972=>13197,\n48973=>13198,\n48974=>13199,\n48975=>13200,\n48978=>13201,\n48979=>13202,\n48980=>13203,\n48982=>13204,\n48983=>13205,\n48984=>13206,\n48985=>13207,\n48986=>13208,\n48987=>13209,\n48988=>13210,\n48989=>13211,\n48990=>13212,\n48991=>13213,\n48992=>13214,\n48993=>13215,\n48994=>13216,\n48995=>13217,\n48996=>13218,\n48997=>13219,\n48998=>13220,\n48999=>13221,\n49000=>13222,\n49001=>13223,\n49002=>13224,\n49003=>13225,\n49004=>13226,\n49005=>13227,\n49006=>13228,\n49007=>13229,\n49008=>13230,\n49009=>13231,\n49010=>13232,\n49011=>13233,\n49012=>13234,\n49013=>13235,\n49014=>13236,\n49015=>13237,\n49016=>13238,\n49017=>13239,\n49018=>13240,\n49019=>13241,\n49020=>13242,\n49021=>13243,\n49022=>13244,\n49023=>13245,\n49024=>13246,\n49025=>13247,\n49026=>13248,\n49027=>13249,\n49028=>13250,\n49029=>13251,\n49030=>13252,\n49031=>13253,\n49032=>13254,\n49033=>13255,\n49034=>13256,\n49035=>13257,\n49036=>13258,\n49037=>13259,\n49038=>13260,\n49039=>13261,\n49040=>13262,\n49041=>13263,\n49042=>13264,\n49043=>13265,\n49045=>13266,\n49046=>13267,\n49047=>13268,\n49048=>13269,\n49049=>13270,\n49050=>13271,\n49051=>13272,\n49052=>13273,\n49053=>13274,\n49054=>13275,\n49055=>13276,\n49056=>13277,\n49057=>13278,\n49058=>13279,\n49059=>13280,\n49060=>13281,\n49061=>13282,\n49062=>13283,\n49063=>13284,\n49064=>13285,\n49065=>13286,\n49066=>13287,\n49067=>13288,\n49068=>13289,\n49069=>13290,\n49070=>13291,\n49071=>13292,\n49073=>13293,\n49074=>13294,\n49075=>13295,\n49076=>13296,\n49077=>13297,\n49078=>13298,\n49079=>13299,\n49080=>13300,\n49081=>13301,\n49082=>13302,\n49083=>13303,\n49084=>13304,\n49085=>13305,\n49086=>13306,\n49087=>13307,\n49088=>13308,\n49089=>13309,\n49090=>13310,\n49091=>13311,\n49092=>13312,\n49094=>13313,\n49095=>13314,\n49096=>13315,\n49097=>13316,\n49098=>13317,\n49099=>13318,\n49102=>13319,\n49103=>13320,\n49105=>13321,\n49106=>13322,\n49107=>13323,\n49109=>13324,\n49110=>13325,\n49111=>13326,\n49112=>13327,\n49113=>13328,\n49114=>13329,\n49115=>13330,\n49117=>13331,\n49118=>13332,\n49120=>13333,\n49122=>13334,\n49123=>13335,\n49124=>13336,\n49125=>13337,\n49126=>13338,\n49127=>13339,\n49128=>13340,\n49129=>13341,\n49130=>13342,\n49131=>13343,\n49132=>13344,\n49133=>13345,\n49134=>13346,\n49135=>13347,\n49136=>13348,\n49137=>13349,\n49138=>13350,\n49139=>13351,\n49140=>13352,\n49141=>13353,\n49142=>13354,\n49143=>13355,\n49144=>13356,\n49145=>13357,\n49146=>13358,\n49147=>13359,\n49148=>13360,\n49149=>13361,\n49150=>13362,\n49151=>13363,\n49152=>13364,\n49153=>13365,\n49154=>13366,\n49155=>13367,\n49156=>13368,\n49157=>13369,\n49158=>13370,\n49159=>13371,\n49160=>13372,\n49161=>13373,\n49162=>13374,\n49163=>13375,\n49164=>13376,\n49165=>13377,\n49166=>13378,\n49167=>13379,\n49168=>13380,\n49169=>13381,\n49170=>13382,\n49171=>13383,\n49172=>13384,\n49173=>13385,\n49174=>13386,\n49175=>13387,\n49176=>13388,\n49177=>13389,\n49178=>13390,\n49179=>13391,\n49180=>13392,\n49181=>13393,\n49182=>13394,\n49183=>13395,\n49184=>13396,\n49185=>13397,\n49186=>13398,\n49187=>13399,\n49188=>13400,\n49189=>13401,\n49190=>13402,\n49191=>13403,\n49192=>13404,\n49193=>13405,\n49194=>13406,\n49195=>13407,\n49196=>13408,\n49197=>13409,\n49198=>13410,\n49199=>13411,\n49200=>13412,\n49201=>13413,\n49202=>13414,\n49203=>13415,\n49204=>13416,\n49205=>13417,\n49206=>13418,\n49207=>13419,\n49208=>13420,\n49209=>13421,\n49210=>13422,\n49211=>13423,\n49213=>13424,\n49214=>13425,\n49215=>13426,\n49216=>13427,\n49217=>13428,\n49218=>13429,\n49219=>13430,\n49220=>13431,\n49221=>13432,\n49222=>13433,\n49223=>13434,\n49224=>13435,\n49225=>13436,\n49226=>13437,\n49227=>13438,\n49228=>13439,\n49229=>13440,\n49230=>13441,\n49231=>13442,\n49232=>13443,\n49234=>13444,\n49235=>13445,\n49236=>13446,\n49237=>13447,\n49238=>13448,\n49239=>13449,\n49241=>13450,\n49242=>13451,\n49243=>13452,\n49245=>13453,\n49246=>13454,\n49247=>13455,\n49249=>13456,\n49250=>13457,\n49251=>13458,\n49252=>13459,\n49253=>13460,\n49254=>13461,\n49255=>13462,\n49258=>13463,\n49259=>13464,\n49260=>13465,\n49261=>13466,\n49262=>13467,\n49263=>13468,\n49264=>13469,\n49265=>13470,\n49266=>13471,\n49267=>13472,\n49268=>13473,\n49269=>13474,\n49270=>13475,\n49271=>13476,\n49272=>13477,\n49273=>13478,\n49274=>13479,\n49275=>13480,\n49276=>13481,\n49277=>13482,\n49278=>13483,\n49279=>13484,\n49280=>13485,\n49281=>13486,\n49282=>13487,\n49283=>13488,\n49284=>13489,\n49285=>13490,\n49286=>13491,\n49287=>13492,\n49288=>13493,\n49289=>13494,\n49290=>13495,\n49291=>13496,\n49292=>13497,\n49293=>13498,\n49294=>13499,\n49295=>13500,\n49298=>13501,\n49299=>13502,\n49301=>13503,\n49302=>13504,\n49303=>13505,\n49305=>13506,\n49306=>13507,\n49307=>13508,\n49308=>13509,\n49309=>13510,\n49310=>13511,\n49311=>13512,\n49314=>13513,\n49316=>13514,\n49318=>13515,\n49319=>13516,\n49320=>13517,\n49321=>13518,\n49322=>13519,\n49323=>13520,\n49326=>13521,\n49329=>13522,\n49330=>13523,\n49335=>13524,\n49336=>13525,\n49337=>13526,\n49338=>13527,\n49339=>13528,\n49342=>13529,\n49346=>13530,\n49347=>13531,\n49348=>13532,\n49350=>13533,\n49351=>13534,\n49354=>13535,\n49355=>13536,\n49357=>13537,\n49358=>13538,\n49359=>13539,\n49361=>13540,\n49362=>13541,\n49363=>13542,\n49364=>13543,\n49365=>13544,\n49366=>13545,\n49367=>13546,\n49370=>13547,\n49374=>13548,\n49375=>13549,\n49376=>13550,\n49377=>13551,\n49378=>13552,\n49379=>13553,\n49382=>13554,\n49383=>13555,\n49385=>13556,\n49386=>13557,\n49387=>13558,\n49389=>13559,\n49390=>13560,\n49391=>13561,\n49392=>13562,\n49393=>13563,\n49394=>13564,\n49395=>13565,\n49398=>13566,\n49400=>13567,\n49402=>13568,\n49403=>13569,\n49404=>13570,\n49405=>13571,\n49406=>13572,\n49407=>13573,\n49409=>13574,\n49410=>13575,\n49411=>13576,\n49413=>13577,\n49414=>13578,\n49415=>13579,\n49417=>13580,\n49418=>13581,\n49419=>13582,\n49420=>13583,\n49421=>13584,\n49422=>13585,\n49423=>13586,\n49425=>13587,\n49426=>13588,\n49427=>13589,\n49428=>13590,\n49430=>13591,\n49431=>13592,\n49432=>13593,\n49433=>13594,\n49434=>13595,\n49435=>13596,\n49441=>13597,\n49442=>13598,\n49445=>13599,\n49448=>13600,\n49449=>13601,\n49450=>13602,\n49451=>13603,\n49454=>13604,\n49458=>13605,\n49459=>13606,\n49460=>13607,\n49461=>13608,\n49463=>13609,\n49466=>13610,\n49467=>13611,\n49469=>13612,\n49470=>13613,\n49471=>13614,\n49473=>13615,\n49474=>13616,\n49475=>13617,\n49476=>13618,\n49477=>13619,\n49478=>13620,\n49479=>13621,\n49482=>13622,\n49486=>13623,\n49487=>13624,\n49488=>13625,\n49489=>13626,\n49490=>13627,\n49491=>13628,\n49494=>13629,\n49495=>13630,\n49497=>13631,\n49498=>13632,\n49499=>13633,\n49501=>13634,\n49502=>13635,\n49503=>13636,\n49504=>13637,\n49505=>13638,\n49506=>13639,\n49507=>13640,\n49510=>13641,\n49514=>13642,\n49515=>13643,\n49516=>13644,\n49517=>13645,\n49518=>13646,\n49519=>13647,\n49521=>13648,\n49522=>13649,\n49523=>13650,\n49525=>13651,\n49526=>13652,\n49527=>13653,\n49529=>13654,\n49530=>13655,\n49531=>13656,\n49532=>13657,\n49533=>13658,\n49534=>13659,\n49535=>13660,\n49536=>13661,\n49537=>13662,\n49538=>13663,\n49539=>13664,\n49540=>13665,\n49542=>13666,\n49543=>13667,\n49544=>13668,\n49545=>13669,\n49546=>13670,\n49547=>13671,\n49551=>13672,\n49553=>13673,\n49554=>13674,\n49555=>13675,\n49557=>13676,\n49559=>13677,\n49560=>13678,\n49561=>13679,\n49562=>13680,\n49563=>13681,\n49566=>13682,\n49568=>13683,\n49570=>13684,\n49571=>13685,\n49572=>13686,\n49574=>13687,\n49575=>13688,\n49578=>13689,\n49579=>13690,\n49581=>13691,\n49582=>13692,\n49583=>13693,\n49585=>13694,\n49586=>13695,\n49587=>13696,\n49588=>13697,\n49589=>13698,\n49590=>13699,\n49591=>13700,\n49592=>13701,\n49593=>13702,\n49594=>13703,\n49595=>13704,\n49596=>13705,\n49598=>13706,\n49599=>13707,\n49600=>13708,\n49601=>13709,\n49602=>13710,\n49603=>13711,\n49605=>13712,\n49606=>13713,\n49607=>13714,\n49609=>13715,\n49610=>13716,\n49611=>13717,\n49613=>13718,\n49614=>13719,\n49615=>13720,\n49616=>13721,\n49617=>13722,\n49618=>13723,\n49619=>13724,\n49621=>13725,\n49622=>13726,\n49625=>13727,\n49626=>13728,\n49627=>13729,\n49628=>13730,\n49629=>13731,\n49630=>13732,\n49631=>13733,\n49633=>13734,\n49634=>13735,\n49635=>13736,\n49637=>13737,\n49638=>13738,\n49639=>13739,\n49641=>13740,\n49642=>13741,\n49643=>13742,\n49644=>13743,\n49645=>13744,\n49646=>13745,\n49647=>13746,\n49650=>13747,\n49652=>13748,\n49653=>13749,\n49654=>13750,\n49655=>13751,\n49656=>13752,\n49657=>13753,\n49658=>13754,\n49659=>13755,\n49662=>13756,\n49663=>13757,\n49665=>13758,\n49666=>13759,\n49667=>13760,\n49669=>13761,\n49670=>13762,\n49671=>13763,\n49672=>13764,\n49673=>13765,\n49674=>13766,\n49675=>13767,\n49678=>13768,\n49680=>13769,\n49682=>13770,\n49683=>13771,\n49684=>13772,\n49685=>13773,\n49686=>13774,\n49687=>13775,\n49690=>13776,\n49691=>13777,\n49693=>13778,\n49694=>13779,\n49697=>13780,\n49698=>13781,\n49699=>13782,\n49700=>13783,\n49701=>13784,\n49702=>13785,\n49703=>13786,\n49706=>13787,\n49708=>13788,\n49710=>13789,\n49712=>13790,\n49715=>13791,\n49717=>13792,\n49718=>13793,\n49719=>13794,\n49720=>13795,\n49721=>13796,\n49722=>13797,\n49723=>13798,\n49724=>13799,\n49725=>13800,\n49726=>13801,\n49727=>13802,\n49728=>13803,\n49729=>13804,\n49730=>13805,\n49731=>13806,\n49732=>13807,\n49733=>13808,\n49734=>13809,\n49735=>13810,\n49737=>13811,\n49738=>13812,\n49739=>13813,\n49740=>13814,\n49741=>13815,\n49742=>13816,\n49743=>13817,\n49746=>13818,\n49747=>13819,\n49749=>13820,\n49750=>13821,\n49751=>13822,\n49753=>13823,\n49754=>13824,\n49755=>13825,\n49756=>13826,\n49757=>13827,\n49758=>13828,\n49759=>13829,\n49761=>13830,\n49762=>13831,\n49763=>13832,\n49764=>13833,\n49766=>13834,\n49767=>13835,\n49768=>13836,\n49769=>13837,\n49770=>13838,\n49771=>13839,\n49774=>13840,\n49775=>13841,\n49777=>13842,\n49778=>13843,\n49779=>13844,\n49781=>13845,\n49782=>13846,\n49783=>13847,\n49784=>13848,\n49785=>13849,\n49786=>13850,\n49787=>13851,\n49790=>13852,\n49792=>13853,\n49794=>13854,\n49795=>13855,\n49796=>13856,\n49797=>13857,\n49798=>13858,\n49799=>13859,\n49802=>13860,\n49803=>13861,\n49804=>13862,\n49805=>13863,\n49806=>13864,\n49807=>13865,\n49809=>13866,\n49810=>13867,\n49811=>13868,\n49812=>13869,\n49813=>13870,\n49814=>13871,\n49815=>13872,\n49817=>13873,\n49818=>13874,\n49820=>13875,\n49822=>13876,\n49823=>13877,\n49824=>13878,\n49825=>13879,\n49826=>13880,\n49827=>13881,\n49830=>13882,\n49831=>13883,\n49833=>13884,\n49834=>13885,\n49835=>13886,\n49838=>13887,\n49839=>13888,\n49840=>13889,\n49841=>13890,\n49842=>13891,\n49843=>13892,\n49846=>13893,\n49848=>13894,\n49850=>13895,\n49851=>13896,\n49852=>13897,\n49853=>13898,\n49854=>13899,\n49855=>13900,\n49856=>13901,\n49857=>13902,\n49858=>13903,\n49859=>13904,\n49860=>13905,\n49861=>13906,\n49862=>13907,\n49863=>13908,\n49864=>13909,\n49865=>13910,\n49866=>13911,\n49867=>13912,\n49868=>13913,\n49869=>13914,\n49870=>13915,\n49871=>13916,\n49872=>13917,\n49873=>13918,\n49874=>13919,\n49875=>13920,\n49876=>13921,\n49877=>13922,\n49878=>13923,\n49879=>13924,\n49880=>13925,\n49881=>13926,\n49882=>13927,\n49883=>13928,\n49886=>13929,\n49887=>13930,\n49889=>13931,\n49890=>13932,\n49893=>13933,\n49894=>13934,\n49895=>13935,\n49896=>13936,\n49897=>13937,\n49898=>13938,\n49902=>13939,\n49904=>13940,\n49906=>13941,\n49907=>13942,\n49908=>13943,\n49909=>13944,\n49911=>13945,\n49914=>13946,\n49917=>13947,\n49918=>13948,\n49919=>13949,\n49921=>13950,\n49922=>13951,\n49923=>13952,\n49924=>13953,\n49925=>13954,\n49926=>13955,\n49927=>13956,\n49930=>13957,\n49931=>13958,\n49934=>13959,\n49935=>13960,\n49936=>13961,\n49937=>13962,\n49938=>13963,\n49942=>13964,\n49943=>13965,\n49945=>13966,\n49946=>13967,\n49947=>13968,\n49949=>13969,\n49950=>13970,\n49951=>13971,\n49952=>13972,\n49953=>13973,\n49954=>13974,\n49955=>13975,\n49958=>13976,\n49959=>13977,\n49962=>13978,\n49963=>13979,\n49964=>13980,\n49965=>13981,\n49966=>13982,\n49967=>13983,\n49968=>13984,\n49969=>13985,\n49970=>13986,\n49971=>13987,\n49972=>13988,\n49973=>13989,\n49974=>13990,\n49975=>13991,\n49976=>13992,\n49977=>13993,\n49978=>13994,\n49979=>13995,\n49980=>13996,\n49981=>13997,\n49982=>13998,\n49983=>13999,\n49984=>14000,\n49985=>14001,\n49986=>14002,\n49987=>14003,\n49988=>14004,\n49990=>14005,\n49991=>14006,\n49992=>14007,\n49993=>14008,\n49994=>14009,\n49995=>14010,\n49996=>14011,\n49997=>14012,\n49998=>14013,\n49999=>14014,\n50000=>14015,\n50001=>14016,\n50002=>14017,\n50003=>14018,\n50004=>14019,\n50005=>14020,\n50006=>14021,\n50007=>14022,\n50008=>14023,\n50009=>14024,\n50010=>14025,\n50011=>14026,\n50012=>14027,\n50013=>14028,\n50014=>14029,\n50015=>14030,\n50016=>14031,\n50017=>14032,\n50018=>14033,\n50019=>14034,\n50020=>14035,\n50021=>14036,\n50022=>14037,\n50023=>14038,\n50026=>14039,\n50027=>14040,\n50029=>14041,\n50030=>14042,\n50031=>14043,\n50033=>14044,\n50035=>14045,\n50036=>14046,\n50037=>14047,\n50038=>14048,\n50039=>14049,\n50042=>14050,\n50043=>14051,\n50046=>14052,\n50047=>14053,\n50048=>14054,\n50049=>14055,\n50050=>14056,\n50051=>14057,\n50053=>14058,\n50054=>14059,\n50055=>14060,\n50057=>14061,\n50058=>14062,\n50059=>14063,\n50061=>14064,\n50062=>14065,\n50063=>14066,\n50064=>14067,\n50065=>14068,\n50066=>14069,\n50067=>14070,\n50068=>14071,\n50069=>14072,\n50070=>14073,\n50071=>14074,\n50072=>14075,\n50073=>14076,\n50074=>14077,\n50075=>14078,\n50076=>14079,\n50077=>14080,\n50078=>14081,\n50079=>14082,\n50080=>14083,\n50081=>14084,\n50082=>14085,\n50083=>14086,\n50084=>14087,\n50085=>14088,\n50086=>14089,\n50087=>14090,\n50088=>14091,\n50089=>14092,\n50090=>14093,\n50091=>14094,\n50092=>14095,\n50093=>14096,\n50094=>14097,\n50095=>14098,\n50096=>14099,\n50097=>14100,\n50098=>14101,\n50099=>14102,\n50100=>14103,\n50101=>14104,\n50102=>14105,\n50103=>14106,\n50104=>14107,\n50105=>14108,\n50106=>14109,\n50107=>14110,\n50108=>14111,\n50109=>14112,\n50110=>14113,\n50111=>14114,\n50113=>14115,\n50114=>14116,\n50115=>14117,\n50116=>14118,\n50117=>14119,\n50118=>14120,\n50119=>14121,\n50120=>14122,\n50121=>14123,\n50122=>14124,\n50123=>14125,\n50124=>14126,\n50125=>14127,\n50126=>14128,\n50127=>14129,\n50128=>14130,\n50129=>14131,\n50130=>14132,\n50131=>14133,\n50132=>14134,\n50133=>14135,\n50134=>14136,\n50135=>14137,\n50138=>14138,\n50139=>14139,\n50141=>14140,\n50142=>14141,\n50145=>14142,\n50147=>14143,\n50148=>14144,\n50149=>14145,\n50150=>14146,\n50151=>14147,\n50154=>14148,\n50155=>14149,\n50156=>14150,\n50158=>14151,\n50159=>14152,\n50160=>14153,\n50161=>14154,\n50162=>14155,\n50163=>14156,\n50166=>14157,\n50167=>14158,\n50169=>14159,\n50170=>14160,\n50171=>14161,\n50172=>14162,\n50173=>14163,\n50174=>14164,\n50175=>14165,\n50176=>14166,\n50177=>14167,\n50178=>14168,\n50179=>14169,\n50180=>14170,\n50181=>14171,\n50182=>14172,\n50183=>14173,\n50185=>14174,\n50186=>14175,\n50187=>14176,\n50188=>14177,\n50189=>14178,\n50190=>14179,\n50191=>14180,\n50193=>14181,\n50194=>14182,\n50195=>14183,\n50196=>14184,\n50197=>14185,\n50198=>14186,\n50199=>14187,\n50200=>14188,\n50201=>14189,\n50202=>14190,\n50203=>14191,\n50204=>14192,\n50205=>14193,\n50206=>14194,\n50207=>14195,\n50208=>14196,\n50209=>14197,\n50210=>14198,\n50211=>14199,\n50213=>14200,\n50214=>14201,\n50215=>14202,\n50216=>14203,\n50217=>14204,\n50218=>14205,\n50219=>14206,\n50221=>14207,\n50222=>14208,\n50223=>14209,\n50225=>14210,\n50226=>14211,\n50227=>14212,\n50229=>14213,\n50230=>14214,\n50231=>14215,\n50232=>14216,\n50233=>14217,\n50234=>14218,\n50235=>14219,\n50238=>14220,\n50239=>14221,\n50240=>14222,\n50241=>14223,\n50242=>14224,\n50243=>14225,\n50244=>14226,\n50245=>14227,\n50246=>14228,\n50247=>14229,\n50249=>14230,\n50250=>14231,\n50251=>14232,\n50252=>14233,\n50253=>14234,\n50254=>14235,\n50255=>14236,\n50256=>14237,\n50257=>14238,\n50258=>14239,\n50259=>14240,\n50260=>14241,\n50261=>14242,\n50262=>14243,\n50263=>14244,\n50264=>14245,\n50265=>14246,\n50266=>14247,\n50267=>14248,\n50268=>14249,\n50269=>14250,\n50270=>14251,\n50271=>14252,\n50272=>14253,\n50273=>14254,\n50274=>14255,\n50275=>14256,\n50278=>14257,\n50279=>14258,\n50281=>14259,\n50282=>14260,\n50283=>14261,\n50285=>14262,\n50286=>14263,\n50287=>14264,\n50288=>14265,\n50289=>14266,\n50290=>14267,\n50291=>14268,\n50294=>14269,\n50295=>14270,\n50296=>14271,\n50298=>14272,\n50299=>14273,\n50300=>14274,\n50301=>14275,\n50302=>14276,\n50303=>14277,\n50305=>14278,\n50306=>14279,\n50307=>14280,\n50308=>14281,\n50309=>14282,\n50310=>14283,\n50311=>14284,\n50312=>14285,\n50313=>14286,\n50314=>14287,\n50315=>14288,\n50316=>14289,\n50317=>14290,\n50318=>14291,\n50319=>14292,\n50320=>14293,\n50321=>14294,\n50322=>14295,\n50323=>14296,\n50325=>14297,\n50326=>14298,\n50327=>14299,\n50328=>14300,\n50329=>14301,\n50330=>14302,\n50331=>14303,\n50333=>14304,\n50334=>14305,\n50335=>14306,\n50336=>14307,\n50337=>14308,\n50338=>14309,\n50339=>14310,\n50340=>14311,\n50341=>14312,\n50342=>14313,\n50343=>14314,\n50344=>14315,\n50345=>14316,\n50346=>14317,\n50347=>14318,\n50348=>14319,\n50349=>14320,\n50350=>14321,\n50351=>14322,\n50352=>14323,\n50353=>14324,\n50354=>14325,\n50355=>14326,\n50356=>14327,\n50357=>14328,\n50358=>14329,\n50359=>14330,\n50361=>14331,\n50362=>14332,\n50363=>14333,\n50365=>14334,\n50366=>14335,\n50367=>14336,\n50368=>14337,\n50369=>14338,\n50370=>14339,\n50371=>14340,\n50372=>14341,\n50373=>14342,\n50374=>14343,\n50375=>14344,\n50376=>14345,\n50377=>14346,\n50378=>14347,\n50379=>14348,\n50380=>14349,\n50381=>14350,\n50382=>14351,\n50383=>14352,\n50384=>14353,\n50385=>14354,\n50386=>14355,\n50387=>14356,\n50388=>14357,\n50389=>14358,\n50390=>14359,\n50391=>14360,\n50392=>14361,\n50393=>14362,\n50394=>14363,\n50395=>14364,\n50396=>14365,\n50397=>14366,\n50398=>14367,\n50399=>14368,\n50400=>14369,\n50401=>14370,\n50402=>14371,\n50403=>14372,\n50404=>14373,\n50405=>14374,\n50406=>14375,\n50407=>14376,\n50408=>14377,\n50410=>14378,\n50411=>14379,\n50412=>14380,\n50413=>14381,\n50414=>14382,\n50415=>14383,\n50418=>14384,\n50419=>14385,\n50421=>14386,\n50422=>14387,\n50423=>14388,\n50425=>14389,\n50427=>14390,\n50428=>14391,\n50429=>14392,\n50430=>14393,\n50434=>14394,\n50435=>14395,\n50436=>14396,\n50437=>14397,\n50438=>14398,\n50439=>14399,\n50440=>14400,\n50441=>14401,\n50442=>14402,\n50443=>14403,\n50445=>14404,\n50446=>14405,\n50447=>14406,\n50449=>14407,\n50450=>14408,\n50451=>14409,\n50453=>14410,\n50454=>14411,\n50455=>14412,\n50456=>14413,\n50457=>14414,\n50458=>14415,\n50459=>14416,\n50461=>14417,\n50462=>14418,\n50463=>14419,\n50464=>14420,\n50465=>14421,\n50466=>14422,\n50467=>14423,\n50468=>14424,\n50469=>14425,\n50470=>14426,\n50471=>14427,\n50474=>14428,\n50475=>14429,\n50477=>14430,\n50478=>14431,\n50479=>14432,\n50481=>14433,\n50482=>14434,\n50483=>14435,\n50484=>14436,\n50485=>14437,\n50486=>14438,\n50487=>14439,\n50490=>14440,\n50492=>14441,\n50494=>14442,\n50495=>14443,\n50496=>14444,\n50497=>14445,\n50498=>14446,\n50499=>14447,\n50502=>14448,\n50503=>14449,\n50507=>14450,\n50511=>14451,\n50512=>14452,\n50513=>14453,\n50514=>14454,\n50518=>14455,\n50522=>14456,\n50523=>14457,\n50524=>14458,\n50527=>14459,\n50530=>14460,\n50531=>14461,\n50533=>14462,\n50534=>14463,\n50535=>14464,\n50537=>14465,\n50538=>14466,\n50539=>14467,\n50540=>14468,\n50541=>14469,\n50542=>14470,\n50543=>14471,\n50546=>14472,\n50550=>14473,\n50551=>14474,\n50552=>14475,\n50553=>14476,\n50554=>14477,\n50555=>14478,\n50558=>14479,\n50559=>14480,\n50561=>14481,\n50562=>14482,\n50563=>14483,\n50565=>14484,\n50566=>14485,\n50568=>14486,\n50569=>14487,\n50570=>14488,\n50571=>14489,\n50574=>14490,\n50576=>14491,\n50578=>14492,\n50579=>14493,\n50580=>14494,\n50582=>14495,\n50585=>14496,\n50586=>14497,\n50587=>14498,\n50589=>14499,\n50590=>14500,\n50591=>14501,\n50593=>14502,\n50594=>14503,\n50595=>14504,\n50596=>14505,\n50597=>14506,\n50598=>14507,\n50599=>14508,\n50600=>14509,\n50602=>14510,\n50603=>14511,\n50604=>14512,\n50605=>14513,\n50606=>14514,\n50607=>14515,\n50608=>14516,\n50609=>14517,\n50610=>14518,\n50611=>14519,\n50614=>14520,\n50615=>14521,\n50618=>14522,\n50623=>14523,\n50624=>14524,\n50625=>14525,\n50626=>14526,\n50627=>14527,\n50635=>14528,\n50637=>14529,\n50639=>14530,\n50642=>14531,\n50643=>14532,\n50645=>14533,\n50646=>14534,\n50647=>14535,\n50649=>14536,\n50650=>14537,\n50651=>14538,\n50652=>14539,\n50653=>14540,\n50654=>14541,\n50655=>14542,\n50658=>14543,\n50660=>14544,\n50662=>14545,\n50663=>14546,\n50664=>14547,\n50665=>14548,\n50666=>14549,\n50667=>14550,\n50671=>14551,\n50673=>14552,\n50674=>14553,\n50675=>14554,\n50677=>14555,\n50680=>14556,\n50681=>14557,\n50682=>14558,\n50683=>14559,\n50690=>14560,\n50691=>14561,\n50692=>14562,\n50697=>14563,\n50698=>14564,\n50699=>14565,\n50701=>14566,\n50702=>14567,\n50703=>14568,\n50705=>14569,\n50706=>14570,\n50707=>14571,\n50708=>14572,\n50709=>14573,\n50710=>14574,\n50711=>14575,\n50714=>14576,\n50717=>14577,\n50718=>14578,\n50719=>14579,\n50720=>14580,\n50721=>14581,\n50722=>14582,\n50723=>14583,\n50726=>14584,\n50727=>14585,\n50729=>14586,\n50730=>14587,\n50731=>14588,\n50735=>14589,\n50737=>14590,\n50738=>14591,\n50742=>14592,\n50744=>14593,\n50746=>14594,\n50748=>14595,\n50749=>14596,\n50750=>14597,\n50751=>14598,\n50754=>14599,\n50755=>14600,\n50757=>14601,\n50758=>14602,\n50759=>14603,\n50761=>14604,\n50762=>14605,\n50763=>14606,\n50764=>14607,\n50765=>14608,\n50766=>14609,\n50767=>14610,\n50770=>14611,\n50774=>14612,\n50775=>14613,\n50776=>14614,\n50777=>14615,\n50778=>14616,\n50779=>14617,\n50782=>14618,\n50783=>14619,\n50785=>14620,\n50786=>14621,\n50787=>14622,\n50788=>14623,\n50789=>14624,\n50790=>14625,\n50791=>14626,\n50792=>14627,\n50793=>14628,\n50794=>14629,\n50795=>14630,\n50797=>14631,\n50798=>14632,\n50800=>14633,\n50802=>14634,\n50803=>14635,\n50804=>14636,\n50805=>14637,\n50806=>14638,\n50807=>14639,\n50810=>14640,\n50811=>14641,\n50813=>14642,\n50814=>14643,\n50815=>14644,\n50817=>14645,\n50818=>14646,\n50819=>14647,\n50820=>14648,\n50821=>14649,\n50822=>14650,\n50823=>14651,\n50826=>14652,\n50828=>14653,\n50830=>14654,\n50831=>14655,\n50832=>14656,\n50833=>14657,\n50834=>14658,\n50835=>14659,\n50838=>14660,\n50839=>14661,\n50841=>14662,\n50842=>14663,\n50843=>14664,\n50845=>14665,\n50846=>14666,\n50847=>14667,\n50848=>14668,\n50849=>14669,\n50850=>14670,\n50851=>14671,\n50854=>14672,\n50856=>14673,\n50858=>14674,\n50859=>14675,\n50860=>14676,\n50861=>14677,\n50862=>14678,\n50863=>14679,\n50866=>14680,\n50867=>14681,\n50869=>14682,\n50870=>14683,\n50871=>14684,\n50875=>14685,\n50876=>14686,\n50877=>14687,\n50878=>14688,\n50879=>14689,\n50882=>14690,\n50884=>14691,\n50886=>14692,\n50887=>14693,\n50888=>14694,\n50889=>14695,\n50890=>14696,\n50891=>14697,\n50894=>14698,\n50895=>14699,\n50897=>14700,\n50898=>14701,\n50899=>14702,\n50901=>14703,\n50902=>14704,\n50903=>14705,\n50904=>14706,\n50905=>14707,\n50906=>14708,\n50907=>14709,\n50910=>14710,\n50911=>14711,\n50914=>14712,\n50915=>14713,\n50916=>14714,\n50917=>14715,\n50918=>14716,\n50919=>14717,\n50922=>14718,\n50923=>14719,\n50925=>14720,\n50926=>14721,\n50927=>14722,\n50929=>14723,\n50930=>14724,\n50931=>14725,\n50932=>14726,\n50933=>14727,\n50934=>14728,\n50935=>14729,\n50938=>14730,\n50939=>14731,\n50940=>14732,\n50942=>14733,\n50943=>14734,\n50944=>14735,\n50945=>14736,\n50946=>14737,\n50947=>14738,\n50950=>14739,\n50951=>14740,\n50953=>14741,\n50954=>14742,\n50955=>14743,\n50957=>14744,\n50958=>14745,\n50959=>14746,\n50960=>14747,\n50961=>14748,\n50962=>14749,\n50963=>14750,\n50966=>14751,\n50968=>14752,\n50970=>14753,\n50971=>14754,\n50972=>14755,\n50973=>14756,\n50974=>14757,\n50975=>14758,\n50978=>14759,\n50979=>14760,\n50981=>14761,\n50982=>14762,\n50983=>14763,\n50985=>14764,\n50986=>14765,\n50987=>14766,\n50988=>14767,\n50989=>14768,\n50990=>14769,\n50991=>14770,\n50994=>14771,\n50996=>14772,\n50998=>14773,\n51000=>14774,\n51001=>14775,\n51002=>14776,\n51003=>14777,\n51006=>14778,\n51007=>14779,\n51009=>14780,\n51010=>14781,\n51011=>14782,\n51013=>14783,\n51014=>14784,\n51015=>14785,\n51016=>14786,\n51017=>14787,\n51019=>14788,\n51022=>14789,\n51024=>14790,\n51033=>14791,\n51034=>14792,\n51035=>14793,\n51037=>14794,\n51038=>14795,\n51039=>14796,\n51041=>14797,\n51042=>14798,\n51043=>14799,\n51044=>14800,\n51045=>14801,\n51046=>14802,\n51047=>14803,\n51049=>14804,\n51050=>14805,\n51052=>14806,\n51053=>14807,\n51054=>14808,\n51055=>14809,\n51056=>14810,\n51057=>14811,\n51058=>14812,\n51059=>14813,\n51062=>14814,\n51063=>14815,\n51065=>14816,\n51066=>14817,\n51067=>14818,\n51071=>14819,\n51072=>14820,\n51073=>14821,\n51074=>14822,\n51078=>14823,\n51083=>14824,\n51084=>14825,\n51085=>14826,\n51087=>14827,\n51090=>14828,\n51091=>14829,\n51093=>14830,\n51097=>14831,\n51099=>14832,\n51100=>14833,\n51101=>14834,\n51102=>14835,\n51103=>14836,\n51106=>14837,\n51111=>14838,\n51112=>14839,\n51113=>14840,\n51114=>14841,\n51115=>14842,\n51118=>14843,\n51119=>14844,\n51121=>14845,\n51122=>14846,\n51123=>14847,\n51125=>14848,\n51126=>14849,\n51127=>14850,\n51128=>14851,\n51129=>14852,\n51130=>14853,\n51131=>14854,\n51134=>14855,\n51138=>14856,\n51139=>14857,\n51140=>14858,\n51141=>14859,\n51142=>14860,\n51143=>14861,\n51146=>14862,\n51147=>14863,\n51149=>14864,\n51151=>14865,\n51153=>14866,\n51154=>14867,\n51155=>14868,\n51156=>14869,\n51157=>14870,\n51158=>14871,\n51159=>14872,\n51161=>14873,\n51162=>14874,\n51163=>14875,\n51164=>14876,\n51166=>14877,\n51167=>14878,\n51168=>14879,\n51169=>14880,\n51170=>14881,\n51171=>14882,\n51173=>14883,\n51174=>14884,\n51175=>14885,\n51177=>14886,\n51178=>14887,\n51179=>14888,\n51181=>14889,\n51182=>14890,\n51183=>14891,\n51184=>14892,\n51185=>14893,\n51186=>14894,\n51187=>14895,\n51188=>14896,\n51189=>14897,\n51190=>14898,\n51191=>14899,\n51192=>14900,\n51193=>14901,\n51194=>14902,\n51195=>14903,\n51196=>14904,\n51197=>14905,\n51198=>14906,\n51199=>14907,\n51202=>14908,\n51203=>14909,\n51205=>14910,\n51206=>14911,\n51207=>14912,\n51209=>14913,\n51211=>14914,\n51212=>14915,\n51213=>14916,\n51214=>14917,\n51215=>14918,\n51218=>14919,\n51220=>14920,\n51223=>14921,\n51224=>14922,\n51225=>14923,\n51226=>14924,\n51227=>14925,\n51230=>14926,\n51231=>14927,\n51233=>14928,\n51234=>14929,\n51235=>14930,\n51237=>14931,\n51238=>14932,\n51239=>14933,\n51240=>14934,\n51241=>14935,\n51242=>14936,\n51243=>14937,\n51246=>14938,\n51248=>14939,\n51250=>14940,\n51251=>14941,\n51252=>14942,\n51253=>14943,\n51254=>14944,\n51255=>14945,\n51257=>14946,\n51258=>14947,\n51259=>14948,\n51261=>14949,\n51262=>14950,\n51263=>14951,\n51265=>14952,\n51266=>14953,\n51267=>14954,\n51268=>14955,\n51269=>14956,\n51270=>14957,\n51271=>14958,\n51274=>14959,\n51275=>14960,\n51278=>14961,\n51279=>14962,\n51280=>14963,\n51281=>14964,\n51282=>14965,\n51283=>14966,\n51285=>14967,\n51286=>14968,\n51287=>14969,\n51288=>14970,\n51289=>14971,\n51290=>14972,\n51291=>14973,\n51292=>14974,\n51293=>14975,\n51294=>14976,\n51295=>14977,\n51296=>14978,\n51297=>14979,\n51298=>14980,\n51299=>14981,\n51300=>14982,\n51301=>14983,\n51302=>14984,\n51303=>14985,\n51304=>14986,\n51305=>14987,\n51306=>14988,\n51307=>14989,\n51308=>14990,\n51309=>14991,\n51310=>14992,\n51311=>14993,\n51314=>14994,\n51315=>14995,\n51317=>14996,\n51318=>14997,\n51319=>14998,\n51321=>14999,\n51323=>15000,\n51324=>15001,\n51325=>15002,\n51326=>15003,\n51327=>15004,\n51330=>15005,\n51332=>15006,\n51336=>15007,\n51337=>15008,\n51338=>15009,\n51342=>15010,\n51343=>15011,\n51344=>15012,\n51345=>15013,\n51346=>15014,\n51347=>15015,\n51349=>15016,\n51350=>15017,\n51351=>15018,\n51352=>15019,\n51353=>15020,\n51354=>15021,\n51355=>15022,\n51356=>15023,\n51358=>15024,\n51360=>15025,\n51362=>15026,\n51363=>15027,\n51364=>15028,\n51365=>15029,\n51366=>15030,\n51367=>15031,\n51369=>15032,\n51370=>15033,\n51371=>15034,\n51372=>15035,\n51373=>15036,\n51374=>15037,\n51375=>15038,\n51376=>15039,\n51377=>15040,\n51378=>15041,\n51379=>15042,\n51380=>15043,\n51381=>15044,\n51382=>15045,\n51383=>15046,\n51384=>15047,\n51385=>15048,\n51386=>15049,\n51387=>15050,\n51390=>15051,\n51391=>15052,\n51392=>15053,\n51393=>15054,\n51394=>15055,\n51395=>15056,\n51397=>15057,\n51398=>15058,\n51399=>15059,\n51401=>15060,\n51402=>15061,\n51403=>15062,\n51405=>15063,\n51406=>15064,\n51407=>15065,\n51408=>15066,\n51409=>15067,\n51410=>15068,\n51411=>15069,\n51414=>15070,\n51416=>15071,\n51418=>15072,\n51419=>15073,\n51420=>15074,\n51421=>15075,\n51422=>15076,\n51423=>15077,\n51426=>15078,\n51427=>15079,\n51429=>15080,\n51430=>15081,\n51431=>15082,\n51432=>15083,\n51433=>15084,\n51434=>15085,\n51435=>15086,\n51436=>15087,\n51437=>15088,\n51438=>15089,\n51439=>15090,\n51440=>15091,\n51441=>15092,\n51442=>15093,\n51443=>15094,\n51444=>15095,\n51446=>15096,\n51447=>15097,\n51448=>15098,\n51449=>15099,\n51450=>15100,\n51451=>15101,\n51454=>15102,\n51455=>15103,\n51457=>15104,\n51458=>15105,\n51459=>15106,\n51463=>15107,\n51464=>15108,\n51465=>15109,\n51466=>15110,\n51467=>15111,\n51470=>15112,\n51472=>15113,\n51474=>15114,\n51475=>15115,\n51476=>15116,\n51477=>15117,\n51478=>15118,\n51479=>15119,\n51481=>15120,\n51482=>15121,\n51483=>15122,\n51484=>15123,\n51485=>15124,\n51486=>15125,\n51487=>15126,\n51488=>15127,\n51489=>15128,\n51490=>15129,\n51491=>15130,\n51492=>15131,\n51493=>15132,\n51494=>15133,\n51495=>15134,\n51496=>15135,\n51497=>15136,\n51498=>15137,\n51499=>15138,\n51501=>15139,\n51502=>15140,\n51503=>15141,\n51504=>15142,\n51505=>15143,\n51506=>15144,\n51507=>15145,\n51509=>15146,\n51510=>15147,\n51511=>15148,\n51512=>15149,\n51513=>15150,\n51514=>15151,\n51515=>15152,\n51516=>15153,\n51517=>15154,\n51518=>15155,\n51519=>15156,\n51520=>15157,\n51521=>15158,\n51522=>15159,\n51523=>15160,\n51524=>15161,\n51525=>15162,\n51526=>15163,\n51527=>15164,\n51528=>15165,\n51529=>15166,\n51530=>15167,\n51531=>15168,\n51532=>15169,\n51533=>15170,\n51534=>15171,\n51535=>15172,\n51538=>15173,\n51539=>15174,\n51541=>15175,\n51542=>15176,\n51543=>15177,\n51545=>15178,\n51546=>15179,\n51547=>15180,\n51548=>15181,\n51549=>15182,\n51550=>15183,\n51551=>15184,\n51554=>15185,\n51556=>15186,\n51557=>15187,\n51558=>15188,\n51559=>15189,\n51560=>15190,\n51561=>15191,\n51562=>15192,\n51563=>15193,\n51565=>15194,\n51566=>15195,\n51567=>15196,\n51569=>15197,\n51570=>15198,\n51571=>15199,\n51573=>15200,\n51574=>15201,\n51575=>15202,\n51576=>15203,\n51577=>15204,\n51578=>15205,\n51579=>15206,\n51581=>15207,\n51582=>15208,\n51583=>15209,\n51584=>15210,\n51585=>15211,\n51586=>15212,\n51587=>15213,\n51588=>15214,\n51589=>15215,\n51590=>15216,\n51591=>15217,\n51594=>15218,\n51595=>15219,\n51597=>15220,\n51598=>15221,\n51599=>15222,\n51601=>15223,\n51602=>15224,\n51603=>15225,\n51604=>15226,\n51605=>15227,\n51606=>15228,\n51607=>15229,\n51610=>15230,\n51612=>15231,\n51614=>15232,\n51615=>15233,\n51616=>15234,\n51617=>15235,\n51618=>15236,\n51619=>15237,\n51620=>15238,\n51621=>15239,\n51622=>15240,\n51623=>15241,\n51624=>15242,\n51625=>15243,\n51626=>15244,\n51627=>15245,\n51628=>15246,\n51629=>15247,\n51630=>15248,\n51631=>15249,\n51632=>15250,\n51633=>15251,\n51634=>15252,\n51635=>15253,\n51636=>15254,\n51637=>15255,\n51638=>15256,\n51639=>15257,\n51640=>15258,\n51641=>15259,\n51642=>15260,\n51643=>15261,\n51644=>15262,\n51645=>15263,\n51646=>15264,\n51647=>15265,\n51650=>15266,\n51651=>15267,\n51653=>15268,\n51654=>15269,\n51657=>15270,\n51659=>15271,\n51660=>15272,\n51661=>15273,\n51662=>15274,\n51663=>15275,\n51666=>15276,\n51668=>15277,\n51671=>15278,\n51672=>15279,\n51675=>15280,\n51678=>15281,\n51679=>15282,\n51681=>15283,\n51683=>15284,\n51685=>15285,\n51686=>15286,\n51688=>15287,\n51689=>15288,\n51690=>15289,\n51691=>15290,\n51694=>15291,\n51698=>15292,\n51699=>15293,\n51700=>15294,\n51701=>15295,\n51702=>15296,\n51703=>15297,\n51706=>15298,\n51707=>15299,\n51709=>15300,\n51710=>15301,\n51711=>15302,\n51713=>15303,\n51714=>15304,\n51715=>15305,\n51716=>15306,\n51717=>15307,\n51718=>15308,\n51719=>15309,\n51722=>15310,\n51726=>15311,\n51727=>15312,\n51728=>15313,\n51729=>15314,\n51730=>15315,\n51731=>15316,\n51733=>15317,\n51734=>15318,\n51735=>15319,\n51737=>15320,\n51738=>15321,\n51739=>15322,\n51740=>15323,\n51741=>15324,\n51742=>15325,\n51743=>15326,\n51744=>15327,\n51745=>15328,\n51746=>15329,\n51747=>15330,\n51748=>15331,\n51749=>15332,\n51750=>15333,\n51751=>15334,\n51752=>15335,\n51754=>15336,\n51755=>15337,\n51756=>15338,\n51757=>15339,\n51758=>15340,\n51759=>15341,\n51760=>15342,\n51761=>15343,\n51762=>15344,\n51763=>15345,\n51764=>15346,\n51765=>15347,\n51766=>15348,\n51767=>15349,\n51768=>15350,\n51769=>15351,\n51770=>15352,\n51771=>15353,\n51772=>15354,\n51773=>15355,\n51774=>15356,\n51775=>15357,\n51776=>15358,\n51777=>15359,\n51778=>15360,\n51779=>15361,\n51780=>15362,\n51781=>15363,\n51782=>15364,\n51783=>15365,\n51784=>15366,\n51785=>15367,\n51786=>15368,\n51787=>15369,\n51790=>15370,\n51791=>15371,\n51793=>15372,\n51794=>15373,\n51795=>15374,\n51797=>15375,\n51798=>15376,\n51799=>15377,\n51800=>15378,\n51801=>15379,\n51802=>15380,\n51803=>15381,\n51806=>15382,\n51810=>15383,\n51811=>15384,\n51812=>15385,\n51813=>15386,\n51814=>15387,\n51815=>15388,\n51817=>15389,\n51818=>15390,\n51819=>15391,\n51820=>15392,\n51821=>15393,\n51822=>15394,\n51823=>15395,\n51824=>15396,\n51825=>15397,\n51826=>15398,\n51827=>15399,\n51828=>15400,\n51829=>15401,\n51830=>15402,\n51831=>15403,\n51832=>15404,\n51833=>15405,\n51834=>15406,\n51835=>15407,\n51836=>15408,\n51838=>15409,\n51839=>15410,\n51840=>15411,\n51841=>15412,\n51842=>15413,\n51843=>15414,\n51845=>15415,\n51846=>15416,\n51847=>15417,\n51848=>15418,\n51849=>15419,\n51850=>15420,\n51851=>15421,\n51852=>15422,\n51853=>15423,\n51854=>15424,\n51855=>15425,\n51856=>15426,\n51857=>15427,\n51858=>15428,\n51859=>15429,\n51860=>15430,\n51861=>15431,\n51862=>15432,\n51863=>15433,\n51865=>15434,\n51866=>15435,\n51867=>15436,\n51868=>15437,\n51869=>15438,\n51870=>15439,\n51871=>15440,\n51872=>15441,\n51873=>15442,\n51874=>15443,\n51875=>15444,\n51876=>15445,\n51877=>15446,\n51878=>15447,\n51879=>15448,\n51880=>15449,\n51881=>15450,\n51882=>15451,\n51883=>15452,\n51884=>15453,\n51885=>15454,\n51886=>15455,\n51887=>15456,\n51888=>15457,\n51889=>15458,\n51890=>15459,\n51891=>15460,\n51892=>15461,\n51893=>15462,\n51894=>15463,\n51895=>15464,\n51896=>15465,\n51897=>15466,\n51898=>15467,\n51899=>15468,\n51902=>15469,\n51903=>15470,\n51905=>15471,\n51906=>15472,\n51907=>15473,\n51909=>15474,\n51910=>15475,\n51911=>15476,\n51912=>15477,\n51913=>15478,\n51914=>15479,\n51915=>15480,\n51918=>15481,\n51920=>15482,\n51922=>15483,\n51924=>15484,\n51925=>15485,\n51926=>15486,\n51927=>15487,\n51930=>15488,\n51931=>15489,\n51932=>15490,\n51933=>15491,\n51934=>15492,\n51935=>15493,\n51937=>15494,\n51938=>15495,\n51939=>15496,\n51940=>15497,\n51941=>15498,\n51942=>15499,\n51943=>15500,\n51944=>15501,\n51945=>15502,\n51946=>15503,\n51947=>15504,\n51949=>15505,\n51950=>15506,\n51951=>15507,\n51952=>15508,\n51953=>15509,\n51954=>15510,\n51955=>15511,\n51957=>15512,\n51958=>15513,\n51959=>15514,\n51960=>15515,\n51961=>15516,\n51962=>15517,\n51963=>15518,\n51964=>15519,\n51965=>15520,\n51966=>15521,\n51967=>15522,\n51968=>15523,\n51969=>15524,\n51970=>15525,\n51971=>15526,\n51972=>15527,\n51973=>15528,\n51974=>15529,\n51975=>15530,\n51977=>15531,\n51978=>15532,\n51979=>15533,\n51980=>15534,\n51981=>15535,\n51982=>15536,\n51983=>15537,\n51985=>15538,\n51986=>15539,\n51987=>15540,\n51989=>15541,\n51990=>15542,\n51991=>15543,\n51993=>15544,\n51994=>15545,\n51995=>15546,\n51996=>15547,\n51997=>15548,\n51998=>15549,\n51999=>15550,\n52002=>15551,\n52003=>15552,\n52004=>15553,\n52005=>15554,\n52006=>15555,\n52007=>15556,\n52008=>15557,\n52009=>15558,\n52010=>15559,\n52011=>15560,\n52012=>15561,\n52013=>15562,\n52014=>15563,\n52015=>15564,\n52016=>15565,\n52017=>15566,\n52018=>15567,\n52019=>15568,\n52020=>15569,\n52021=>15570,\n52022=>15571,\n52023=>15572,\n52024=>15573,\n52025=>15574,\n52026=>15575,\n52027=>15576,\n52028=>15577,\n52029=>15578,\n52030=>15579,\n52031=>15580,\n52032=>15581,\n52034=>15582,\n52035=>15583,\n52036=>15584,\n52037=>15585,\n52038=>15586,\n52039=>15587,\n52042=>15588,\n52043=>15589,\n52045=>15590,\n52046=>15591,\n52047=>15592,\n52049=>15593,\n52050=>15594,\n52051=>15595,\n52052=>15596,\n52053=>15597,\n52054=>15598,\n52055=>15599,\n52058=>15600,\n52059=>15601,\n52060=>15602,\n52062=>15603,\n52063=>15604,\n52064=>15605,\n52065=>15606,\n52066=>15607,\n52067=>15608,\n52069=>15609,\n52070=>15610,\n52071=>15611,\n52072=>15612,\n52073=>15613,\n52074=>15614,\n52075=>15615,\n52076=>15616,\n52077=>15617,\n52078=>15618,\n52079=>15619,\n52080=>15620,\n52081=>15621,\n52082=>15622,\n52083=>15623,\n52084=>15624,\n52085=>15625,\n52086=>15626,\n52087=>15627,\n52090=>15628,\n52091=>15629,\n52092=>15630,\n52093=>15631,\n52094=>15632,\n52095=>15633,\n52096=>15634,\n52097=>15635,\n52098=>15636,\n52099=>15637,\n52100=>15638,\n52101=>15639,\n52102=>15640,\n52103=>15641,\n52104=>15642,\n52105=>15643,\n52106=>15644,\n52107=>15645,\n52108=>15646,\n52109=>15647,\n52110=>15648,\n52111=>15649,\n52112=>15650,\n52113=>15651,\n52114=>15652,\n52115=>15653,\n52116=>15654,\n52117=>15655,\n52118=>15656,\n52119=>15657,\n52120=>15658,\n52121=>15659,\n52122=>15660,\n52123=>15661,\n52125=>15662,\n52126=>15663,\n52127=>15664,\n52128=>15665,\n52129=>15666,\n52130=>15667,\n52131=>15668,\n52132=>15669,\n52133=>15670,\n52134=>15671,\n52135=>15672,\n52136=>15673,\n52137=>15674,\n52138=>15675,\n52139=>15676,\n52140=>15677,\n52141=>15678,\n52142=>15679,\n52143=>15680,\n52144=>15681,\n52145=>15682,\n52146=>15683,\n52147=>15684,\n52148=>15685,\n52149=>15686,\n52150=>15687,\n52151=>15688,\n52153=>15689,\n52154=>15690,\n52155=>15691,\n52156=>15692,\n52157=>15693,\n52158=>15694,\n52159=>15695,\n52160=>15696,\n52161=>15697,\n52162=>15698,\n52163=>15699,\n52164=>15700,\n52165=>15701,\n52166=>15702,\n52167=>15703,\n52168=>15704,\n52169=>15705,\n52170=>15706,\n52171=>15707,\n52172=>15708,\n52173=>15709,\n52174=>15710,\n52175=>15711,\n52176=>15712,\n52177=>15713,\n52178=>15714,\n52179=>15715,\n52181=>15716,\n52182=>15717,\n52183=>15718,\n52184=>15719,\n52185=>15720,\n52186=>15721,\n52187=>15722,\n52188=>15723,\n52189=>15724,\n52190=>15725,\n52191=>15726,\n52192=>15727,\n52193=>15728,\n52194=>15729,\n52195=>15730,\n52197=>15731,\n52198=>15732,\n52200=>15733,\n52202=>15734,\n52203=>15735,\n52204=>15736,\n52205=>15737,\n52206=>15738,\n52207=>15739,\n52208=>15740,\n52209=>15741,\n52210=>15742,\n52211=>15743,\n52212=>15744,\n52213=>15745,\n52214=>15746,\n52215=>15747,\n52216=>15748,\n52217=>15749,\n52218=>15750,\n52219=>15751,\n52220=>15752,\n52221=>15753,\n52222=>15754,\n52223=>15755,\n52224=>15756,\n52225=>15757,\n52226=>15758,\n52227=>15759,\n52228=>15760,\n52229=>15761,\n52230=>15762,\n52231=>15763,\n52232=>15764,\n52233=>15765,\n52234=>15766,\n52235=>15767,\n52238=>15768,\n52239=>15769,\n52241=>15770,\n52242=>15771,\n52243=>15772,\n52245=>15773,\n52246=>15774,\n52247=>15775,\n52248=>15776,\n52249=>15777,\n52250=>15778,\n52251=>15779,\n52254=>15780,\n52255=>15781,\n52256=>15782,\n52259=>15783,\n52260=>15784,\n52261=>15785,\n52262=>15786,\n52266=>15787,\n52267=>15788,\n52269=>15789,\n52271=>15790,\n52273=>15791,\n52274=>15792,\n52275=>15793,\n52276=>15794,\n52277=>15795,\n52278=>15796,\n52279=>15797,\n52282=>15798,\n52287=>15799,\n52288=>15800,\n52289=>15801,\n52290=>15802,\n52291=>15803,\n52294=>15804,\n52295=>15805,\n52297=>15806,\n52298=>15807,\n52299=>15808,\n52301=>15809,\n52302=>15810,\n52303=>15811,\n52304=>15812,\n52305=>15813,\n52306=>15814,\n52307=>15815,\n52310=>15816,\n52314=>15817,\n52315=>15818,\n52316=>15819,\n52317=>15820,\n52318=>15821,\n52319=>15822,\n52321=>15823,\n52322=>15824,\n52323=>15825,\n52325=>15826,\n52327=>15827,\n52329=>15828,\n52330=>15829,\n52331=>15830,\n52332=>15831,\n52333=>15832,\n52334=>15833,\n52335=>15834,\n52337=>15835,\n52338=>15836,\n52339=>15837,\n52340=>15838,\n52342=>15839,\n52343=>15840,\n52344=>15841,\n52345=>15842,\n52346=>15843,\n52347=>15844,\n52348=>15845,\n52349=>15846,\n52350=>15847,\n52351=>15848,\n52352=>15849,\n52353=>15850,\n52354=>15851,\n52355=>15852,\n52356=>15853,\n52357=>15854,\n52358=>15855,\n52359=>15856,\n52360=>15857,\n52361=>15858,\n52362=>15859,\n52363=>15860,\n52364=>15861,\n52365=>15862,\n52366=>15863,\n52367=>15864,\n52368=>15865,\n52369=>15866,\n52370=>15867,\n52371=>15868,\n52372=>15869,\n52373=>15870,\n52374=>15871,\n52375=>15872,\n52378=>15873,\n52379=>15874,\n52381=>15875,\n52382=>15876,\n52383=>15877,\n52385=>15878,\n52386=>15879,\n52387=>15880,\n52388=>15881,\n52389=>15882,\n52390=>15883,\n52391=>15884,\n52394=>15885,\n52398=>15886,\n52399=>15887,\n52400=>15888,\n52401=>15889,\n52402=>15890,\n52403=>15891,\n52406=>15892,\n52407=>15893,\n52409=>15894,\n52410=>15895,\n52411=>15896,\n52413=>15897,\n52414=>15898,\n52415=>15899,\n52416=>15900,\n52417=>15901,\n52418=>15902,\n52419=>15903,\n52422=>15904,\n52424=>15905,\n52426=>15906,\n52427=>15907,\n52428=>15908,\n52429=>15909,\n52430=>15910,\n52431=>15911,\n52433=>15912,\n52434=>15913,\n52435=>15914,\n52437=>15915,\n52438=>15916,\n52439=>15917,\n52440=>15918,\n52441=>15919,\n52442=>15920,\n52443=>15921,\n52444=>15922,\n52445=>15923,\n52446=>15924,\n52447=>15925,\n52448=>15926,\n52449=>15927,\n52450=>15928,\n52451=>15929,\n52453=>15930,\n52454=>15931,\n52455=>15932,\n52456=>15933,\n52457=>15934,\n52458=>15935,\n52459=>15936,\n52461=>15937,\n52462=>15938,\n52463=>15939,\n52465=>15940,\n52466=>15941,\n52467=>15942,\n52468=>15943,\n52469=>15944,\n52470=>15945,\n52471=>15946,\n52472=>15947,\n52473=>15948,\n52474=>15949,\n52475=>15950,\n52476=>15951,\n52477=>15952,\n52478=>15953,\n52479=>15954,\n52480=>15955,\n52482=>15956,\n52483=>15957,\n52484=>15958,\n52485=>15959,\n52486=>15960,\n52487=>15961,\n52490=>15962,\n52491=>15963,\n52493=>15964,\n52494=>15965,\n52495=>15966,\n52497=>15967,\n52498=>15968,\n52499=>15969,\n52500=>15970,\n52501=>15971,\n52502=>15972,\n52503=>15973,\n52506=>15974,\n52508=>15975,\n52510=>15976,\n52511=>15977,\n52512=>15978,\n52513=>15979,\n52514=>15980,\n52515=>15981,\n52517=>15982,\n52518=>15983,\n52519=>15984,\n52521=>15985,\n52522=>15986,\n52523=>15987,\n52525=>15988,\n52526=>15989,\n52527=>15990,\n52528=>15991,\n52529=>15992,\n52530=>15993,\n52531=>15994,\n52532=>15995,\n52533=>15996,\n52534=>15997,\n52535=>15998,\n52536=>15999,\n52538=>16000,\n52539=>16001,\n52540=>16002,\n52541=>16003,\n52542=>16004,\n52543=>16005,\n52544=>16006,\n52545=>16007,\n52546=>16008,\n52547=>16009,\n52548=>16010,\n52549=>16011,\n52550=>16012,\n52551=>16013,\n52552=>16014,\n52553=>16015,\n52554=>16016,\n52555=>16017,\n52556=>16018,\n52557=>16019,\n52558=>16020,\n52559=>16021,\n52560=>16022,\n52561=>16023,\n52562=>16024,\n52563=>16025,\n52564=>16026,\n52565=>16027,\n52566=>16028,\n52567=>16029,\n52568=>16030,\n52569=>16031,\n52570=>16032,\n52571=>16033,\n52573=>16034,\n52574=>16035,\n52575=>16036,\n52577=>16037,\n52578=>16038,\n52579=>16039,\n52581=>16040,\n52582=>16041,\n52583=>16042,\n52584=>16043,\n52585=>16044,\n52586=>16045,\n52587=>16046,\n52590=>16047,\n52592=>16048,\n52594=>16049,\n52595=>16050,\n52596=>16051,\n52597=>16052,\n52598=>16053,\n52599=>16054,\n52601=>16055,\n52602=>16056,\n52603=>16057,\n52604=>16058,\n52605=>16059,\n52606=>16060,\n52607=>16061,\n52608=>16062,\n52609=>16063,\n52610=>16064,\n52611=>16065,\n52612=>16066,\n52613=>16067,\n52614=>16068,\n52615=>16069,\n52617=>16070,\n52618=>16071,\n52619=>16072,\n52620=>16073,\n52621=>16074,\n52622=>16075,\n52623=>16076,\n52624=>16077,\n52625=>16078,\n52626=>16079,\n52627=>16080,\n52630=>16081,\n52631=>16082,\n52633=>16083,\n52634=>16084,\n52635=>16085,\n52637=>16086,\n52638=>16087,\n52639=>16088,\n52640=>16089,\n52641=>16090,\n52642=>16091,\n52643=>16092,\n52646=>16093,\n52648=>16094,\n52650=>16095,\n52651=>16096,\n52652=>16097,\n52653=>16098,\n52654=>16099,\n52655=>16100,\n52657=>16101,\n52658=>16102,\n52659=>16103,\n52660=>16104,\n52661=>16105,\n52662=>16106,\n52663=>16107,\n52664=>16108,\n52665=>16109,\n52666=>16110,\n52667=>16111,\n52668=>16112,\n52669=>16113,\n52670=>16114,\n52671=>16115,\n52672=>16116,\n52673=>16117,\n52674=>16118,\n52675=>16119,\n52677=>16120,\n52678=>16121,\n52679=>16122,\n52680=>16123,\n52681=>16124,\n52682=>16125,\n52683=>16126,\n52685=>16127,\n52686=>16128,\n52687=>16129,\n52689=>16130,\n52690=>16131,\n52691=>16132,\n52692=>16133,\n52693=>16134,\n52694=>16135,\n52695=>16136,\n52696=>16137,\n52697=>16138,\n52698=>16139,\n52699=>16140,\n52700=>16141,\n52701=>16142,\n52702=>16143,\n52703=>16144,\n52704=>16145,\n52705=>16146,\n52706=>16147,\n52707=>16148,\n52708=>16149,\n52709=>16150,\n52710=>16151,\n52711=>16152,\n52713=>16153,\n52714=>16154,\n52715=>16155,\n52717=>16156,\n52718=>16157,\n52719=>16158,\n52721=>16159,\n52722=>16160,\n52723=>16161,\n52724=>16162,\n52725=>16163,\n52726=>16164,\n52727=>16165,\n52730=>16166,\n52732=>16167,\n52734=>16168,\n52735=>16169,\n52736=>16170,\n52737=>16171,\n52738=>16172,\n52739=>16173,\n52741=>16174,\n52742=>16175,\n52743=>16176,\n52745=>16177,\n52746=>16178,\n52747=>16179,\n52749=>16180,\n52750=>16181,\n52751=>16182,\n52752=>16183,\n52753=>16184,\n52754=>16185,\n52755=>16186,\n52757=>16187,\n52758=>16188,\n52759=>16189,\n52760=>16190,\n52762=>16191,\n52763=>16192,\n52764=>16193,\n52765=>16194,\n52766=>16195,\n52767=>16196,\n52770=>16197,\n52771=>16198,\n52773=>16199,\n52774=>16200,\n52775=>16201,\n52777=>16202,\n52778=>16203,\n52779=>16204,\n52780=>16205,\n52781=>16206,\n52782=>16207,\n52783=>16208,\n52786=>16209,\n52788=>16210,\n52790=>16211,\n52791=>16212,\n52792=>16213,\n52793=>16214,\n52794=>16215,\n52795=>16216,\n52796=>16217,\n52797=>16218,\n52798=>16219,\n52799=>16220,\n52800=>16221,\n52801=>16222,\n52802=>16223,\n52803=>16224,\n52804=>16225,\n52805=>16226,\n52806=>16227,\n52807=>16228,\n52808=>16229,\n52809=>16230,\n52810=>16231,\n52811=>16232,\n52812=>16233,\n52813=>16234,\n52814=>16235,\n52815=>16236,\n52816=>16237,\n52817=>16238,\n52818=>16239,\n52819=>16240,\n52820=>16241,\n52821=>16242,\n52822=>16243,\n52823=>16244,\n52826=>16245,\n52827=>16246,\n52829=>16247,\n52830=>16248,\n52834=>16249,\n52835=>16250,\n52836=>16251,\n52837=>16252,\n52838=>16253,\n52839=>16254,\n52842=>16255,\n52844=>16256,\n52846=>16257,\n52847=>16258,\n52848=>16259,\n52849=>16260,\n52850=>16261,\n52851=>16262,\n52854=>16263,\n52855=>16264,\n52857=>16265,\n52858=>16266,\n52859=>16267,\n52861=>16268,\n52862=>16269,\n52863=>16270,\n52864=>16271,\n52865=>16272,\n52866=>16273,\n52867=>16274,\n52870=>16275,\n52872=>16276,\n52874=>16277,\n52875=>16278,\n52876=>16279,\n52877=>16280,\n52878=>16281,\n52879=>16282,\n52882=>16283,\n52883=>16284,\n52885=>16285,\n52886=>16286,\n52887=>16287,\n52889=>16288,\n52890=>16289,\n52891=>16290,\n52892=>16291,\n52893=>16292,\n52894=>16293,\n52895=>16294,\n52898=>16295,\n52902=>16296,\n52903=>16297,\n52904=>16298,\n52905=>16299,\n52906=>16300,\n52907=>16301,\n52910=>16302,\n52911=>16303,\n52912=>16304,\n52913=>16305,\n52914=>16306,\n52915=>16307,\n52916=>16308,\n52917=>16309,\n52918=>16310,\n52919=>16311,\n52920=>16312,\n52921=>16313,\n52922=>16314,\n52923=>16315,\n52924=>16316,\n52925=>16317,\n52926=>16318,\n52927=>16319,\n52928=>16320,\n52930=>16321,\n52931=>16322,\n52932=>16323,\n52933=>16324,\n52934=>16325,\n52935=>16326,\n52936=>16327,\n52937=>16328,\n52938=>16329,\n52939=>16330,\n52940=>16331,\n52941=>16332,\n52942=>16333,\n52943=>16334,\n52944=>16335,\n52945=>16336,\n52946=>16337,\n52947=>16338,\n52948=>16339,\n52949=>16340,\n52950=>16341,\n52951=>16342,\n52952=>16343,\n52953=>16344,\n52954=>16345,\n52955=>16346,\n52956=>16347,\n52957=>16348,\n52958=>16349,\n52959=>16350,\n52960=>16351,\n52961=>16352,\n52962=>16353,\n52963=>16354,\n52966=>16355,\n52967=>16356,\n52969=>16357,\n52970=>16358,\n52973=>16359,\n52974=>16360,\n52975=>16361,\n52976=>16362,\n52977=>16363,\n52978=>16364,\n52979=>16365,\n52982=>16366,\n52986=>16367,\n52987=>16368,\n52988=>16369,\n52989=>16370,\n52990=>16371,\n52991=>16372,\n52994=>16373,\n52995=>16374,\n52997=>16375,\n52998=>16376,\n52999=>16377,\n53001=>16378,\n53002=>16379,\n53003=>16380,\n53004=>16381,\n53005=>16382,\n53006=>16383,\n53007=>16384,\n53010=>16385,\n53012=>16386,\n53014=>16387,\n53015=>16388,\n53016=>16389,\n53017=>16390,\n53018=>16391,\n53019=>16392,\n53021=>16393,\n53022=>16394,\n53023=>16395,\n53025=>16396,\n53026=>16397,\n53027=>16398,\n53029=>16399,\n53030=>16400,\n53031=>16401,\n53032=>16402,\n53033=>16403,\n53034=>16404,\n53035=>16405,\n53038=>16406,\n53042=>16407,\n53043=>16408,\n53044=>16409,\n53045=>16410,\n53046=>16411,\n53047=>16412,\n53049=>16413,\n53050=>16414,\n53051=>16415,\n53052=>16416,\n53053=>16417,\n53054=>16418,\n53055=>16419,\n53056=>16420,\n53057=>16421,\n53058=>16422,\n53059=>16423,\n53060=>16424,\n53061=>16425,\n53062=>16426,\n53063=>16427,\n53064=>16428,\n53065=>16429,\n53066=>16430,\n53067=>16431,\n53068=>16432,\n53069=>16433,\n53070=>16434,\n53071=>16435,\n53072=>16436,\n53073=>16437,\n53074=>16438,\n53075=>16439,\n53078=>16440,\n53079=>16441,\n53081=>16442,\n53082=>16443,\n53083=>16444,\n53085=>16445,\n53086=>16446,\n53087=>16447,\n53088=>16448,\n53089=>16449,\n53090=>16450,\n53091=>16451,\n53094=>16452,\n53096=>16453,\n53098=>16454,\n53099=>16455,\n53100=>16456,\n53101=>16457,\n53102=>16458,\n53103=>16459,\n53106=>16460,\n53107=>16461,\n53109=>16462,\n53110=>16463,\n53111=>16464,\n53113=>16465,\n53114=>16466,\n53115=>16467,\n53116=>16468,\n53117=>16469,\n53118=>16470,\n53119=>16471,\n53121=>16472,\n53122=>16473,\n53123=>16474,\n53124=>16475,\n53126=>16476,\n53127=>16477,\n53128=>16478,\n53129=>16479,\n53130=>16480,\n53131=>16481,\n53133=>16482,\n53134=>16483,\n53135=>16484,\n53136=>16485,\n53137=>16486,\n53138=>16487,\n53139=>16488,\n53140=>16489,\n53141=>16490,\n53142=>16491,\n53143=>16492,\n53144=>16493,\n53145=>16494,\n53146=>16495,\n53147=>16496,\n53148=>16497,\n53149=>16498,\n53150=>16499,\n53151=>16500,\n53152=>16501,\n53154=>16502,\n53155=>16503,\n53156=>16504,\n53157=>16505,\n53158=>16506,\n53159=>16507,\n53161=>16508,\n53162=>16509,\n53163=>16510,\n53164=>16511,\n53165=>16512,\n53166=>16513,\n53167=>16514,\n53169=>16515,\n53170=>16516,\n53171=>16517,\n53172=>16518,\n53173=>16519,\n53174=>16520,\n53175=>16521,\n53176=>16522,\n53177=>16523,\n53178=>16524,\n53179=>16525,\n53180=>16526,\n53181=>16527,\n53182=>16528,\n53183=>16529,\n53184=>16530,\n53185=>16531,\n53186=>16532,\n53187=>16533,\n53189=>16534,\n53190=>16535,\n53191=>16536,\n53192=>16537,\n53193=>16538,\n53194=>16539,\n53195=>16540,\n53196=>16541,\n53197=>16542,\n53198=>16543,\n53199=>16544,\n53200=>16545,\n53201=>16546,\n53202=>16547,\n53203=>16548,\n53204=>16549,\n53205=>16550,\n53206=>16551,\n53207=>16552,\n53208=>16553,\n53209=>16554,\n53210=>16555,\n53211=>16556,\n53212=>16557,\n53213=>16558,\n53214=>16559,\n53215=>16560,\n53218=>16561,\n53219=>16562,\n53221=>16563,\n53222=>16564,\n53223=>16565,\n53225=>16566,\n53226=>16567,\n53227=>16568,\n53228=>16569,\n53229=>16570,\n53230=>16571,\n53231=>16572,\n53234=>16573,\n53236=>16574,\n53238=>16575,\n53239=>16576,\n53240=>16577,\n53241=>16578,\n53242=>16579,\n53243=>16580,\n53245=>16581,\n53246=>16582,\n53247=>16583,\n53249=>16584,\n53250=>16585,\n53251=>16586,\n53253=>16587,\n53254=>16588,\n53255=>16589,\n53256=>16590,\n53257=>16591,\n53258=>16592,\n53259=>16593,\n53260=>16594,\n53261=>16595,\n53262=>16596,\n53263=>16597,\n53264=>16598,\n53266=>16599,\n53267=>16600,\n53268=>16601,\n53269=>16602,\n53270=>16603,\n53271=>16604,\n53273=>16605,\n53274=>16606,\n53275=>16607,\n53276=>16608,\n53277=>16609,\n53278=>16610,\n53279=>16611,\n53280=>16612,\n53281=>16613,\n53282=>16614,\n53283=>16615,\n53284=>16616,\n53285=>16617,\n53286=>16618,\n53287=>16619,\n53288=>16620,\n53289=>16621,\n53290=>16622,\n53291=>16623,\n53292=>16624,\n53294=>16625,\n53295=>16626,\n53296=>16627,\n53297=>16628,\n53298=>16629,\n53299=>16630,\n53302=>16631,\n53303=>16632,\n53305=>16633,\n53306=>16634,\n53307=>16635,\n53309=>16636,\n53310=>16637,\n53311=>16638,\n53312=>16639,\n53313=>16640,\n53314=>16641,\n53315=>16642,\n53318=>16643,\n53320=>16644,\n53322=>16645,\n53323=>16646,\n53324=>16647,\n53325=>16648,\n53326=>16649,\n53327=>16650,\n53329=>16651,\n53330=>16652,\n53331=>16653,\n53333=>16654,\n53334=>16655,\n53335=>16656,\n53337=>16657,\n53338=>16658,\n53339=>16659,\n53340=>16660,\n53341=>16661,\n53342=>16662,\n53343=>16663,\n53345=>16664,\n53346=>16665,\n53347=>16666,\n53348=>16667,\n53349=>16668,\n53350=>16669,\n53351=>16670,\n53352=>16671,\n53353=>16672,\n53354=>16673,\n53355=>16674,\n53358=>16675,\n53359=>16676,\n53361=>16677,\n53362=>16678,\n53363=>16679,\n53365=>16680,\n53366=>16681,\n53367=>16682,\n53368=>16683,\n53369=>16684,\n53370=>16685,\n53371=>16686,\n53374=>16687,\n53375=>16688,\n53376=>16689,\n53378=>16690,\n53379=>16691,\n53380=>16692,\n53381=>16693,\n53382=>16694,\n53383=>16695,\n53384=>16696,\n53385=>16697,\n53386=>16698,\n53387=>16699,\n53388=>16700,\n53389=>16701,\n53390=>16702,\n53391=>16703,\n53392=>16704,\n53393=>16705,\n53394=>16706,\n53395=>16707,\n53396=>16708,\n53397=>16709,\n53398=>16710,\n53399=>16711,\n53400=>16712,\n53401=>16713,\n53402=>16714,\n53403=>16715,\n53404=>16716,\n53405=>16717,\n53406=>16718,\n53407=>16719,\n53408=>16720,\n53409=>16721,\n53410=>16722,\n53411=>16723,\n53414=>16724,\n53415=>16725,\n53417=>16726,\n53418=>16727,\n53419=>16728,\n53421=>16729,\n53422=>16730,\n53423=>16731,\n53424=>16732,\n53425=>16733,\n53426=>16734,\n53427=>16735,\n53430=>16736,\n53432=>16737,\n53434=>16738,\n53435=>16739,\n53436=>16740,\n53437=>16741,\n53438=>16742,\n53439=>16743,\n53442=>16744,\n53443=>16745,\n53445=>16746,\n53446=>16747,\n53447=>16748,\n53450=>16749,\n53451=>16750,\n53452=>16751,\n53453=>16752,\n53454=>16753,\n53455=>16754,\n53458=>16755,\n53462=>16756,\n53463=>16757,\n53464=>16758,\n53465=>16759,\n53466=>16760,\n53467=>16761,\n53470=>16762,\n53471=>16763,\n53473=>16764,\n53474=>16765,\n53475=>16766,\n53477=>16767,\n53478=>16768,\n53479=>16769,\n53480=>16770,\n53481=>16771,\n53482=>16772,\n53483=>16773,\n53486=>16774,\n53490=>16775,\n53491=>16776,\n53492=>16777,\n53493=>16778,\n53494=>16779,\n53495=>16780,\n53497=>16781,\n53498=>16782,\n53499=>16783,\n53500=>16784,\n53501=>16785,\n53502=>16786,\n53503=>16787,\n53504=>16788,\n53505=>16789,\n53506=>16790,\n53507=>16791,\n53508=>16792,\n53509=>16793,\n53510=>16794,\n53511=>16795,\n53512=>16796,\n53513=>16797,\n53514=>16798,\n53515=>16799,\n53516=>16800,\n53518=>16801,\n53519=>16802,\n53520=>16803,\n53521=>16804,\n53522=>16805,\n53523=>16806,\n53524=>16807,\n53525=>16808,\n53526=>16809,\n53527=>16810,\n53528=>16811,\n53529=>16812,\n53530=>16813,\n53531=>16814,\n53532=>16815,\n53533=>16816,\n53534=>16817,\n53535=>16818,\n53536=>16819,\n53537=>16820,\n53538=>16821,\n53539=>16822,\n53540=>16823,\n53541=>16824,\n53542=>16825,\n53543=>16826,\n53544=>16827,\n53545=>16828,\n53546=>16829,\n53547=>16830,\n53548=>16831,\n53549=>16832,\n53550=>16833,\n53551=>16834,\n53554=>16835,\n53555=>16836,\n53557=>16837,\n53558=>16838,\n53559=>16839,\n53561=>16840,\n53563=>16841,\n53564=>16842,\n53565=>16843,\n53566=>16844,\n53567=>16845,\n53570=>16846,\n53574=>16847,\n53575=>16848,\n53576=>16849,\n53577=>16850,\n53578=>16851,\n53579=>16852,\n53582=>16853,\n53583=>16854,\n53585=>16855,\n53586=>16856,\n53587=>16857,\n53589=>16858,\n53590=>16859,\n53591=>16860,\n53592=>16861,\n53593=>16862,\n53594=>16863,\n53595=>16864,\n53598=>16865,\n53600=>16866,\n53602=>16867,\n53603=>16868,\n53604=>16869,\n53605=>16870,\n53606=>16871,\n53607=>16872,\n53609=>16873,\n53610=>16874,\n53611=>16875,\n53613=>16876,\n53614=>16877,\n53615=>16878,\n53616=>16879,\n53617=>16880,\n53618=>16881,\n53619=>16882,\n53620=>16883,\n53621=>16884,\n53622=>16885,\n53623=>16886,\n53624=>16887,\n53625=>16888,\n53626=>16889,\n53627=>16890,\n53629=>16891,\n53630=>16892,\n53631=>16893,\n53632=>16894,\n53633=>16895,\n53634=>16896,\n53635=>16897,\n53637=>16898,\n53638=>16899,\n53639=>16900,\n53641=>16901,\n53642=>16902,\n53643=>16903,\n53644=>16904,\n53645=>16905,\n53646=>16906,\n53647=>16907,\n53648=>16908,\n53649=>16909,\n53650=>16910,\n53651=>16911,\n53652=>16912,\n53653=>16913,\n53654=>16914,\n53655=>16915,\n53656=>16916,\n53657=>16917,\n53658=>16918,\n53659=>16919,\n53660=>16920,\n53661=>16921,\n53662=>16922,\n53663=>16923,\n53666=>16924,\n53667=>16925,\n53669=>16926,\n53670=>16927,\n53671=>16928,\n53673=>16929,\n53674=>16930,\n53675=>16931,\n53676=>16932,\n53677=>16933,\n53678=>16934,\n53679=>16935,\n53682=>16936,\n53684=>16937,\n53686=>16938,\n53687=>16939,\n53688=>16940,\n53689=>16941,\n53691=>16942,\n53693=>16943,\n53694=>16944,\n53695=>16945,\n53697=>16946,\n53698=>16947,\n53699=>16948,\n53700=>16949,\n53701=>16950,\n53702=>16951,\n53703=>16952,\n53704=>16953,\n53705=>16954,\n53706=>16955,\n53707=>16956,\n53708=>16957,\n53709=>16958,\n53710=>16959,\n53711=>16960,\n53712=>16961,\n53713=>16962,\n53714=>16963,\n53715=>16964,\n53716=>16965,\n53717=>16966,\n53718=>16967,\n53719=>16968,\n53721=>16969,\n53722=>16970,\n53723=>16971,\n53724=>16972,\n53725=>16973,\n53726=>16974,\n53727=>16975,\n53728=>16976,\n53729=>16977,\n53730=>16978,\n53731=>16979,\n53732=>16980,\n53733=>16981,\n53734=>16982,\n53735=>16983,\n53736=>16984,\n53737=>16985,\n53738=>16986,\n53739=>16987,\n53740=>16988,\n53741=>16989,\n53742=>16990,\n53743=>16991,\n53744=>16992,\n53745=>16993,\n53746=>16994,\n53747=>16995,\n53749=>16996,\n53750=>16997,\n53751=>16998,\n53753=>16999,\n53754=>17000,\n53755=>17001,\n53756=>17002,\n53757=>17003,\n53758=>17004,\n53759=>17005,\n53760=>17006,\n53761=>17007,\n53762=>17008,\n53763=>17009,\n53764=>17010,\n53765=>17011,\n53766=>17012,\n53768=>17013,\n53770=>17014,\n53771=>17015,\n53772=>17016,\n53773=>17017,\n53774=>17018,\n53775=>17019,\n53777=>17020,\n53778=>17021,\n53779=>17022,\n53780=>17023,\n53781=>17024,\n53782=>17025,\n53783=>17026,\n53784=>17027,\n53785=>17028,\n53786=>17029,\n53787=>17030,\n53788=>17031,\n53789=>17032,\n53790=>17033,\n53791=>17034,\n53792=>17035,\n53793=>17036,\n53794=>17037,\n53795=>17038,\n53796=>17039,\n53797=>17040,\n53798=>17041,\n53799=>17042,\n53800=>17043,\n53801=>17044,\n53802=>17045,\n53803=>17046,\n53806=>17047,\n53807=>17048,\n53809=>17049,\n53810=>17050,\n53811=>17051,\n53813=>17052,\n53814=>17053,\n53815=>17054,\n53816=>17055,\n53817=>17056,\n53818=>17057,\n53819=>17058,\n53822=>17059,\n53824=>17060,\n53826=>17061,\n53827=>17062,\n53828=>17063,\n53829=>17064,\n53830=>17065,\n53831=>17066,\n53833=>17067,\n53834=>17068,\n53835=>17069,\n53836=>17070,\n53837=>17071,\n53838=>17072,\n53839=>17073,\n53840=>17074,\n53841=>17075,\n53842=>17076,\n53843=>17077,\n53844=>17078,\n53845=>17079,\n53846=>17080,\n53847=>17081,\n53848=>17082,\n53849=>17083,\n53850=>17084,\n53851=>17085,\n53853=>17086,\n53854=>17087,\n53855=>17088,\n53856=>17089,\n53857=>17090,\n53858=>17091,\n53859=>17092,\n53861=>17093,\n53862=>17094,\n53863=>17095,\n53864=>17096,\n53865=>17097,\n53866=>17098,\n53867=>17099,\n53868=>17100,\n53869=>17101,\n53870=>17102,\n53871=>17103,\n53872=>17104,\n53873=>17105,\n53874=>17106,\n53875=>17107,\n53876=>17108,\n53877=>17109,\n53878=>17110,\n53879=>17111,\n53880=>17112,\n53881=>17113,\n53882=>17114,\n53883=>17115,\n53884=>17116,\n53885=>17117,\n53886=>17118,\n53887=>17119,\n53890=>17120,\n53891=>17121,\n53893=>17122,\n53894=>17123,\n53895=>17124,\n53897=>17125,\n53898=>17126,\n53899=>17127,\n53900=>17128,\n53901=>17129,\n53902=>17130,\n53903=>17131,\n53906=>17132,\n53907=>17133,\n53908=>17134,\n53910=>17135,\n53911=>17136,\n53912=>17137,\n53913=>17138,\n53914=>17139,\n53915=>17140,\n53917=>17141,\n53918=>17142,\n53919=>17143,\n53921=>17144,\n53922=>17145,\n53923=>17146,\n53925=>17147,\n53926=>17148,\n53927=>17149,\n53928=>17150,\n53929=>17151,\n53930=>17152,\n53931=>17153,\n53933=>17154,\n53934=>17155,\n53935=>17156,\n53936=>17157,\n53938=>17158,\n53939=>17159,\n53940=>17160,\n53941=>17161,\n53942=>17162,\n53943=>17163,\n53946=>17164,\n53947=>17165,\n53949=>17166,\n53950=>17167,\n53953=>17168,\n53955=>17169,\n53956=>17170,\n53957=>17171,\n53958=>17172,\n53959=>17173,\n53962=>17174,\n53964=>17175,\n53965=>17176,\n53966=>17177,\n53967=>17178,\n53968=>17179,\n53969=>17180,\n53970=>17181,\n53971=>17182,\n53973=>17183,\n53974=>17184,\n53975=>17185,\n53977=>17186,\n53978=>17187,\n53979=>17188,\n53981=>17189,\n53982=>17190,\n53983=>17191,\n53984=>17192,\n53985=>17193,\n53986=>17194,\n53987=>17195,\n53990=>17196,\n53991=>17197,\n53992=>17198,\n53993=>17199,\n53994=>17200,\n53995=>17201,\n53996=>17202,\n53997=>17203,\n53998=>17204,\n53999=>17205,\n54002=>17206,\n54003=>17207,\n54005=>17208,\n54006=>17209,\n54007=>17210,\n54009=>17211,\n54010=>17212,\n54011=>17213,\n54012=>17214,\n54013=>17215,\n54014=>17216,\n54015=>17217,\n54018=>17218,\n54020=>17219,\n54022=>17220,\n54023=>17221,\n54024=>17222,\n54025=>17223,\n54026=>17224,\n54027=>17225,\n54031=>17226,\n54033=>17227,\n54034=>17228,\n54035=>17229,\n54037=>17230,\n54039=>17231,\n54040=>17232,\n54041=>17233,\n54042=>17234,\n54043=>17235,\n54046=>17236,\n54050=>17237,\n54051=>17238,\n54052=>17239,\n54054=>17240,\n54055=>17241,\n54058=>17242,\n54059=>17243,\n54061=>17244,\n54062=>17245,\n54063=>17246,\n54065=>17247,\n54066=>17248,\n54067=>17249,\n54068=>17250,\n54069=>17251,\n54070=>17252,\n54071=>17253,\n54074=>17254,\n54078=>17255,\n54079=>17256,\n54080=>17257,\n54081=>17258,\n54082=>17259,\n54083=>17260,\n54086=>17261,\n54087=>17262,\n54088=>17263,\n54089=>17264,\n54090=>17265,\n54091=>17266,\n54092=>17267,\n54093=>17268,\n54094=>17269,\n54095=>17270,\n54096=>17271,\n54097=>17272,\n54098=>17273,\n54099=>17274,\n54100=>17275,\n54101=>17276,\n54102=>17277,\n54103=>17278,\n54104=>17279,\n54105=>17280,\n54106=>17281,\n54107=>17282,\n54108=>17283,\n54109=>17284,\n54110=>17285,\n54111=>17286,\n54112=>17287,\n54113=>17288,\n54114=>17289,\n54115=>17290,\n54116=>17291,\n54117=>17292,\n54118=>17293,\n54119=>17294,\n54120=>17295,\n54121=>17296,\n54122=>17297,\n54123=>17298,\n54124=>17299,\n54125=>17300,\n54126=>17301,\n54127=>17302,\n54128=>17303,\n54129=>17304,\n54130=>17305,\n54131=>17306,\n54132=>17307,\n54133=>17308,\n54134=>17309,\n54135=>17310,\n54136=>17311,\n54137=>17312,\n54138=>17313,\n54139=>17314,\n54142=>17315,\n54143=>17316,\n54145=>17317,\n54146=>17318,\n54147=>17319,\n54149=>17320,\n54150=>17321,\n54151=>17322,\n54152=>17323,\n54153=>17324,\n54154=>17325,\n54155=>17326,\n54158=>17327,\n54162=>17328,\n54163=>17329,\n54164=>17330,\n54165=>17331,\n54166=>17332,\n54167=>17333,\n54170=>17334,\n54171=>17335,\n54173=>17336,\n54174=>17337,\n54175=>17338,\n54177=>17339,\n54178=>17340,\n54179=>17341,\n54180=>17342,\n54181=>17343,\n54182=>17344,\n54183=>17345,\n54186=>17346,\n54188=>17347,\n54190=>17348,\n54191=>17349,\n54192=>17350,\n54193=>17351,\n54194=>17352,\n54195=>17353,\n54197=>17354,\n54198=>17355,\n54199=>17356,\n54201=>17357,\n54202=>17358,\n54203=>17359,\n54205=>17360,\n54206=>17361,\n54207=>17362,\n54208=>17363,\n54209=>17364,\n54210=>17365,\n54211=>17366,\n54214=>17367,\n54215=>17368,\n54218=>17369,\n54219=>17370,\n54220=>17371,\n54221=>17372,\n54222=>17373,\n54223=>17374,\n54225=>17375,\n54226=>17376,\n54227=>17377,\n54228=>17378,\n54229=>17379,\n54230=>17380,\n54231=>17381,\n54233=>17382,\n54234=>17383,\n54235=>17384,\n54236=>17385,\n54237=>17386,\n54238=>17387,\n54239=>17388,\n54240=>17389,\n54242=>17390,\n54244=>17391,\n54245=>17392,\n54246=>17393,\n54247=>17394,\n54248=>17395,\n54249=>17396,\n54250=>17397,\n54251=>17398,\n54254=>17399,\n54255=>17400,\n54257=>17401,\n54258=>17402,\n54259=>17403,\n54261=>17404,\n54262=>17405,\n54263=>17406,\n54264=>17407,\n54265=>17408,\n54266=>17409,\n54267=>17410,\n54270=>17411,\n54272=>17412,\n54274=>17413,\n54275=>17414,\n54276=>17415,\n54277=>17416,\n54278=>17417,\n54279=>17418,\n54281=>17419,\n54282=>17420,\n54283=>17421,\n54284=>17422,\n54285=>17423,\n54286=>17424,\n54287=>17425,\n54288=>17426,\n54289=>17427,\n54290=>17428,\n54291=>17429,\n54292=>17430,\n54293=>17431,\n54294=>17432,\n54295=>17433,\n54296=>17434,\n54297=>17435,\n54298=>17436,\n54299=>17437,\n54300=>17438,\n54302=>17439,\n54303=>17440,\n54304=>17441,\n54305=>17442,\n54306=>17443,\n54307=>17444,\n54308=>17445,\n54309=>17446,\n54310=>17447,\n54311=>17448,\n54312=>17449,\n54313=>17450,\n54314=>17451,\n54315=>17452,\n54316=>17453,\n54317=>17454,\n54318=>17455,\n54319=>17456,\n54320=>17457,\n54321=>17458,\n54322=>17459,\n54323=>17460,\n54324=>17461,\n54325=>17462,\n54326=>17463,\n54327=>17464,\n54328=>17465,\n54329=>17466,\n54330=>17467,\n54331=>17468,\n54332=>17469,\n54333=>17470,\n54334=>17471,\n54335=>17472,\n54337=>17473,\n54338=>17474,\n54339=>17475,\n54341=>17476,\n54342=>17477,\n54343=>17478,\n54344=>17479,\n54345=>17480,\n54346=>17481,\n54347=>17482,\n54348=>17483,\n54349=>17484,\n54350=>17485,\n54351=>17486,\n54352=>17487,\n54353=>17488,\n54354=>17489,\n54355=>17490,\n54356=>17491,\n54357=>17492,\n54358=>17493,\n54359=>17494,\n54360=>17495,\n54361=>17496,\n54362=>17497,\n54363=>17498,\n54365=>17499,\n54366=>17500,\n54367=>17501,\n54369=>17502,\n54370=>17503,\n54371=>17504,\n54373=>17505,\n54374=>17506,\n54375=>17507,\n54376=>17508,\n54377=>17509,\n54378=>17510,\n54379=>17511,\n54380=>17512,\n54382=>17513,\n54384=>17514,\n54385=>17515,\n54386=>17516,\n54387=>17517,\n54388=>17518,\n54389=>17519,\n54390=>17520,\n54391=>17521,\n54394=>17522,\n54395=>17523,\n54397=>17524,\n54398=>17525,\n54401=>17526,\n54403=>17527,\n54404=>17528,\n54405=>17529,\n54406=>17530,\n54407=>17531,\n54410=>17532,\n54412=>17533,\n54414=>17534,\n54415=>17535,\n54416=>17536,\n54417=>17537,\n54418=>17538,\n54419=>17539,\n54421=>17540,\n54422=>17541,\n54423=>17542,\n54424=>17543,\n54425=>17544,\n54426=>17545,\n54427=>17546,\n54428=>17547,\n54429=>17548,\n54430=>17549,\n54431=>17550,\n54432=>17551,\n54433=>17552,\n54434=>17553,\n54435=>17554,\n54436=>17555,\n54437=>17556,\n54438=>17557,\n54439=>17558,\n54440=>17559,\n54442=>17560,\n54443=>17561,\n54444=>17562,\n54445=>17563,\n54446=>17564,\n54447=>17565,\n54448=>17566,\n54449=>17567,\n54450=>17568,\n54451=>17569,\n54452=>17570,\n54453=>17571,\n54454=>17572,\n54455=>17573,\n54456=>17574,\n54457=>17575,\n54458=>17576,\n54459=>17577,\n54460=>17578,\n54461=>17579,\n54462=>17580,\n54463=>17581,\n54464=>17582,\n54465=>17583,\n54466=>17584,\n54467=>17585,\n54468=>17586,\n54469=>17587,\n54470=>17588,\n54471=>17589,\n54472=>17590,\n54473=>17591,\n54474=>17592,\n54475=>17593,\n54477=>17594,\n54478=>17595,\n54479=>17596,\n54481=>17597,\n54482=>17598,\n54483=>17599,\n54485=>17600,\n54486=>17601,\n54487=>17602,\n54488=>17603,\n54489=>17604,\n54490=>17605,\n54491=>17606,\n54493=>17607,\n54494=>17608,\n54496=>17609,\n54497=>17610,\n54498=>17611,\n54499=>17612,\n54500=>17613,\n54501=>17614,\n54502=>17615,\n54503=>17616,\n54505=>17617,\n54506=>17618,\n54507=>17619,\n54509=>17620,\n54510=>17621,\n54511=>17622,\n54513=>17623,\n54514=>17624,\n54515=>17625,\n54516=>17626,\n54517=>17627,\n54518=>17628,\n54519=>17629,\n54521=>17630,\n54522=>17631,\n54524=>17632,\n54526=>17633,\n54527=>17634,\n54528=>17635,\n54529=>17636,\n54530=>17637,\n54531=>17638,\n54533=>17639,\n54534=>17640,\n54535=>17641,\n54537=>17642,\n54538=>17643,\n54539=>17644,\n54541=>17645,\n54542=>17646,\n54543=>17647,\n54544=>17648,\n54545=>17649,\n54546=>17650,\n54547=>17651,\n54550=>17652,\n54552=>17653,\n54553=>17654,\n54554=>17655,\n54555=>17656,\n54556=>17657,\n54557=>17658,\n54558=>17659,\n54559=>17660,\n54560=>17661,\n54561=>17662,\n54562=>17663,\n54563=>17664,\n54564=>17665,\n54565=>17666,\n54566=>17667,\n54567=>17668,\n54568=>17669,\n54569=>17670,\n54570=>17671,\n54571=>17672,\n54572=>17673,\n54573=>17674,\n54574=>17675,\n54575=>17676,\n54576=>17677,\n54577=>17678,\n54578=>17679,\n54579=>17680,\n54580=>17681,\n54581=>17682,\n54582=>17683,\n54583=>17684,\n54584=>17685,\n54585=>17686,\n54586=>17687,\n54587=>17688,\n54590=>17689,\n54591=>17690,\n54593=>17691,\n54594=>17692,\n54595=>17693,\n54597=>17694,\n54598=>17695,\n54599=>17696,\n54600=>17697,\n54601=>17698,\n54602=>17699,\n54603=>17700,\n54606=>17701,\n54608=>17702,\n54610=>17703,\n54611=>17704,\n54612=>17705,\n54613=>17706,\n54614=>17707,\n54615=>17708,\n54618=>17709,\n54619=>17710,\n54621=>17711,\n54622=>17712,\n54623=>17713,\n54625=>17714,\n54626=>17715,\n54627=>17716,\n54628=>17717,\n54630=>17718,\n54631=>17719,\n54634=>17720,\n54636=>17721,\n54638=>17722,\n54639=>17723,\n54640=>17724,\n54641=>17725,\n54642=>17726,\n54643=>17727,\n54646=>17728,\n54647=>17729,\n54649=>17730,\n54650=>17731,\n54651=>17732,\n54653=>17733,\n54654=>17734,\n54655=>17735,\n54656=>17736,\n54657=>17737,\n54658=>17738,\n54659=>17739,\n54662=>17740,\n54666=>17741,\n54667=>17742,\n54668=>17743,\n54669=>17744,\n54670=>17745,\n54671=>17746,\n54673=>17747,\n54674=>17748,\n54675=>17749,\n54676=>17750,\n54677=>17751,\n54678=>17752,\n54679=>17753,\n54680=>17754,\n54681=>17755,\n54682=>17756,\n54683=>17757,\n54684=>17758,\n54685=>17759,\n54686=>17760,\n54687=>17761,\n54688=>17762,\n54689=>17763,\n54690=>17764,\n54691=>17765,\n54692=>17766,\n54694=>17767,\n54695=>17768,\n54696=>17769,\n54697=>17770,\n54698=>17771,\n54699=>17772,\n54700=>17773,\n54701=>17774,\n54702=>17775,\n54703=>17776,\n54704=>17777,\n54705=>17778,\n54706=>17779,\n54707=>17780,\n54708=>17781,\n54709=>17782,\n54710=>17783,\n54711=>17784,\n54712=>17785,\n54713=>17786,\n54714=>17787,\n54715=>17788,\n54716=>17789,\n54717=>17790,\n54718=>17791,\n54719=>17792,\n54720=>17793,\n54721=>17794,\n54722=>17795,\n54723=>17796,\n54724=>17797,\n54725=>17798,\n54726=>17799,\n54727=>17800,\n54730=>17801,\n54731=>17802,\n54733=>17803,\n54734=>17804,\n54735=>17805,\n54737=>17806,\n54739=>17807,\n54740=>17808,\n54741=>17809,\n54742=>17810,\n54743=>17811,\n54746=>17812,\n54748=>17813,\n54750=>17814,\n54751=>17815,\n54752=>17816,\n54753=>17817,\n54754=>17818,\n54755=>17819,\n54758=>17820,\n54759=>17821,\n54761=>17822,\n54762=>17823,\n54763=>17824,\n54765=>17825,\n54766=>17826,\n54767=>17827,\n54768=>17828,\n54769=>17829,\n54770=>17830,\n54771=>17831,\n54774=>17832,\n54776=>17833,\n54778=>17834,\n54779=>17835,\n54780=>17836,\n54781=>17837,\n54782=>17838,\n54783=>17839,\n54786=>17840,\n54787=>17841,\n54789=>17842,\n54790=>17843,\n54791=>17844,\n54793=>17845,\n54794=>17846,\n54795=>17847,\n54796=>17848,\n54797=>17849,\n54798=>17850,\n54799=>17851,\n54802=>17852,\n54806=>17853,\n54807=>17854,\n54808=>17855,\n54809=>17856,\n54810=>17857,\n54811=>17858,\n54813=>17859,\n54814=>17860,\n54815=>17861,\n54817=>17862,\n54818=>17863,\n54819=>17864,\n54821=>17865,\n54822=>17866,\n54823=>17867,\n54824=>17868,\n54825=>17869,\n54826=>17870,\n54827=>17871,\n54828=>17872,\n54830=>17873,\n54831=>17874,\n54832=>17875,\n54833=>17876,\n54834=>17877,\n54835=>17878,\n54836=>17879,\n54837=>17880,\n54838=>17881,\n54839=>17882,\n54842=>17883,\n54843=>17884,\n54845=>17885,\n54846=>17886,\n54847=>17887,\n54849=>17888,\n54850=>17889,\n54851=>17890,\n54852=>17891,\n54854=>17892,\n54855=>17893,\n54858=>17894,\n54860=>17895,\n54862=>17896,\n54863=>17897,\n54864=>17898,\n54866=>17899,\n54867=>17900,\n54870=>17901,\n54871=>17902,\n54873=>17903,\n54874=>17904,\n54875=>17905,\n54877=>17906,\n54878=>17907,\n54879=>17908,\n54880=>17909,\n54881=>17910,\n54882=>17911,\n54883=>17912,\n54884=>17913,\n54885=>17914,\n54886=>17915,\n54888=>17916,\n54890=>17917,\n54891=>17918,\n54892=>17919,\n54893=>17920,\n54894=>17921,\n54895=>17922,\n54898=>17923,\n54899=>17924,\n54901=>17925,\n54902=>17926,\n54903=>17927,\n54904=>17928,\n54905=>17929,\n54906=>17930,\n54907=>17931,\n54908=>17932,\n54909=>17933,\n54910=>17934,\n54911=>17935,\n54912=>17936,\n54913=>17937,\n54914=>17938,\n54916=>17939,\n54918=>17940,\n54919=>17941,\n54920=>17942,\n54921=>17943,\n54922=>17944,\n54923=>17945,\n54926=>17946,\n54927=>17947,\n54929=>17948,\n54930=>17949,\n54931=>17950,\n54933=>17951,\n54934=>17952,\n54935=>17953,\n54936=>17954,\n54937=>17955,\n54938=>17956,\n54939=>17957,\n54940=>17958,\n54942=>17959,\n54944=>17960,\n54946=>17961,\n54947=>17962,\n54948=>17963,\n54949=>17964,\n54950=>17965,\n54951=>17966,\n54953=>17967,\n54954=>17968,\n54955=>17969,\n54957=>17970,\n54958=>17971,\n54959=>17972,\n54961=>17973,\n54962=>17974,\n54963=>17975,\n54964=>17976,\n54965=>17977,\n54966=>17978,\n54967=>17979,\n54968=>17980,\n54970=>17981,\n54972=>17982,\n54973=>17983,\n54974=>17984,\n54975=>17985,\n54976=>17986,\n54977=>17987,\n54978=>17988,\n54979=>17989,\n54982=>17990,\n54983=>17991,\n54985=>17992,\n54986=>17993,\n54987=>17994,\n54989=>17995,\n54990=>17996,\n54991=>17997,\n54992=>17998,\n54994=>17999,\n54995=>18000,\n54997=>18001,\n54998=>18002,\n55000=>18003,\n55002=>18004,\n55003=>18005,\n55004=>18006,\n55005=>18007,\n55006=>18008,\n55007=>18009,\n55009=>18010,\n55010=>18011,\n55011=>18012,\n55013=>18013,\n55014=>18014,\n55015=>18015,\n55017=>18016,\n55018=>18017,\n55019=>18018,\n55020=>18019,\n55021=>18020,\n55022=>18021,\n55023=>18022,\n55025=>18023,\n55026=>18024,\n55027=>18025,\n55028=>18026,\n55030=>18027,\n55031=>18028,\n55032=>18029,\n55033=>18030,\n55034=>18031,\n55035=>18032,\n55038=>18033,\n55039=>18034,\n55041=>18035,\n55042=>18036,\n55043=>18037,\n55045=>18038,\n55046=>18039,\n55047=>18040,\n55048=>18041,\n55049=>18042,\n55050=>18043,\n55051=>18044,\n55052=>18045,\n55053=>18046,\n55054=>18047,\n55055=>18048,\n55056=>18049,\n55058=>18050,\n55059=>18051,\n55060=>18052,\n55061=>18053,\n55062=>18054,\n55063=>18055,\n55066=>18056,\n55067=>18057,\n55069=>18058,\n55070=>18059,\n55071=>18060,\n55073=>18061,\n55074=>18062,\n55075=>18063,\n55076=>18064,\n55077=>18065,\n55078=>18066,\n55079=>18067,\n55082=>18068,\n55084=>18069,\n55086=>18070,\n55087=>18071,\n55088=>18072,\n55089=>18073,\n55090=>18074,\n55091=>18075,\n55094=>18076,\n55095=>18077,\n55097=>18078,\n55098=>18079,\n55099=>18080,\n55101=>18081,\n55102=>18082,\n55103=>18083,\n55104=>18084,\n55105=>18085,\n55106=>18086,\n55107=>18087,\n55109=>18088,\n55110=>18089,\n55112=>18090,\n55114=>18091,\n55115=>18092,\n55116=>18093,\n55117=>18094,\n55118=>18095,\n55119=>18096,\n55122=>18097,\n55123=>18098,\n55125=>18099,\n55130=>18100,\n55131=>18101,\n55132=>18102,\n55133=>18103,\n55134=>18104,\n55135=>18105,\n55138=>18106,\n55140=>18107,\n55142=>18108,\n55143=>18109,\n55144=>18110,\n55146=>18111,\n55147=>18112,\n55149=>18113,\n55150=>18114,\n55151=>18115,\n55153=>18116,\n55154=>18117,\n55155=>18118,\n55157=>18119,\n55158=>18120,\n55159=>18121,\n55160=>18122,\n55161=>18123,\n55162=>18124,\n55163=>18125,\n55166=>18126,\n55167=>18127,\n55168=>18128,\n55170=>18129,\n55171=>18130,\n55172=>18131,\n55173=>18132,\n55174=>18133,\n55175=>18134,\n55178=>18135,\n55179=>18136,\n55181=>18137,\n55182=>18138,\n55183=>18139,\n55185=>18140,\n55186=>18141,\n55187=>18142,\n55188=>18143,\n55189=>18144,\n55190=>18145,\n55191=>18146,\n55194=>18147,\n55196=>18148,\n55198=>18149,\n55199=>18150,\n55200=>18151,\n55201=>18152,\n55202=>18153,\n55203=>18154,\n);\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/zapfdingbats.php",
    "content": "<?php\r\n // core font definition file for TCPDF (www.tcpdf.org)\r\n$type='core';\n$dw=788;\r\n$cw=array(0=>0,1=>0,2=>0,3=>0,4=>0,5=>0,6=>0,7=>0,8=>0,9=>0,10=>0,11=>0,12=>0,\n13=>0,14=>0,15=>0,16=>0,17=>0,18=>0,19=>0,20=>0,21=>0,22=>0,23=>0,24=>0,25=>0,\n26=>0,27=>0,28=>0,29=>0,30=>0,31=>0,32=>278,33=>974,34=>961,35=>974,36=>980,\n37=>719,38=>789,39=>790,40=>791,41=>690,42=>960,43=>939,44=>549,45=>855,46=>911,\n47=>933,48=>911,49=>945,50=>974,51=>755,52=>846,53=>762,54=>761,55=>571,56=>677,\n57=>763,58=>760,59=>759,60=>754,61=>494,62=>552,63=>537,64=>577,65=>692,66=>786,\n67=>788,68=>788,69=>790,70=>793,71=>794,72=>816,73=>823,74=>789,75=>841,76=>823,\n77=>833,78=>816,79=>831,80=>923,81=>744,82=>723,83=>749,84=>790,85=>792,86=>695,\n87=>776,88=>768,89=>792,90=>759,91=>707,92=>708,93=>682,94=>701,95=>826,96=>815,\n97=>789,98=>789,99=>707,100=>687,101=>696,102=>689,103=>786,104=>787,105=>713,\n106=>791,107=>785,108=>791,109=>873,110=>761,111=>762,112=>762,113=>759,114=>759,\n115=>892,116=>892,117=>788,118=>784,119=>438,120=>138,121=>277,122=>415,123=>392,\n124=>392,125=>668,126=>668,127=>0,128=>390,129=>390,130=>317,131=>317,132=>276,\n133=>276,134=>509,135=>509,136=>410,137=>410,138=>234,139=>234,140=>334,141=>334,\n142=>0,143=>0,144=>0,145=>0,146=>0,147=>0,148=>0,149=>0,150=>0,151=>0,152=>0,\n153=>0,154=>0,155=>0,156=>0,157=>0,158=>0,159=>0,160=>0,161=>732,162=>544,163=>544,\n164=>910,165=>667,166=>760,167=>760,168=>776,169=>595,170=>694,171=>626,172=>788,\n173=>788,174=>788,175=>788,176=>788,177=>788,178=>788,179=>788,180=>788,181=>788,\n182=>788,183=>788,184=>788,185=>788,186=>788,187=>788,188=>788,189=>788,190=>788,\n191=>788,192=>788,193=>788,194=>788,195=>788,196=>788,197=>788,198=>788,199=>788,\n200=>788,201=>788,202=>788,203=>788,204=>788,205=>788,206=>788,207=>788,208=>788,\n209=>788,210=>788,211=>788,212=>894,213=>838,214=>1016,215=>458,216=>748,217=>924,\n218=>748,219=>918,220=>927,221=>928,222=>928,223=>834,224=>873,225=>828,226=>924,\n227=>924,228=>917,229=>930,230=>931,231=>463,232=>883,233=>836,234=>836,235=>867,\n236=>867,237=>696,238=>696,239=>874,240=>0,241=>874,242=>760,243=>946,244=>771,\n245=>865,246=>771,247=>888,248=>967,249=>888,250=>831,251=>873,252=>927,253=>970,\n254=>918,255=>0);\r\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/fonts/zarbold.php",
    "content": "<?php\r\n/* \t\tMohammad Ali Golkar\r\n\t\tm.a.golkar@gmail.com\r\n\t\thttp://www.30minonline.com\r\n\t\tLICENSE : GPLv2\t*/\r\n$type='TrueTypeUnicode';\r\n$name='ZarBold';\r\n$desc=array('Ascent'=>733,'Descent'=>-317,'CapHeight'=>733,'Flags'=>32,'FontBBox'=>'[-126 -535 1164 1046]','ItalicAngle'=>0,'StemV'=>120,'MissingWidth'=>600);\r\n$up=-356;\r\n$ut=49;\n$dw=600;\r\n$cw=array(\r\n\t0=>0,32=>227,33=>235,34=>282,35=>667,36=>458,37=>493,38=>635,39=>156,40=>303,41=>303,42=>489,43=>489,44=>237,45=>489,46=>231,47=>277,\r\n\t48=>552,49=>552,50=>552,51=>552,52=>552,53=>552,54=>552,55=>552,56=>552,57=>552,58=>231,59=>237,60=>667,61=>489,62=>667,63=>448,\r\n\t64=>917,65=>604,66=>542,67=>615,68=>708,69=>479,70=>427,71=>667,72=>688,73=>302,74=>292,75=>583,76=>469,77=>885,78=>677,79=>729,\r\n\t80=>479,81=>729,82=>542,83=>448,84=>521,85=>677,86=>615,87=>969,88=>604,89=>583,90=>594,91=>208,92=>510,93=>208,94=>469,95=>500,\r\n\t96=>333,97=>469,98=>510,99=>448,100=>521,101=>438,102=>313,103=>500,104=>552,105=>271,106=>260,107=>500,108=>271,109=>802,110=>552,111=>490,\r\n\t112=>531,113=>521,114=>396,115=>365,116=>292,117=>552,118=>479,119=>750,120=>521,121=>469,122=>448,123=>479,124=>510,125=>479,126=>667,8218=>240,\r\n\t402=>531,8222=>458,8230=>1000,8224=>438,8225=>438,710=>333,8240=>1010,352=>448,8249=>250,338=>865,8216=>240,8217=>240,8220=>317,8221=>317,8226=>281,8211=>500,\r\n\t8212=>1000,8482=>906,353=>365,8250=>250,339=>823,376=>583,160=>244,161=>317,162=>448,163=>583,164=>500,165=>583,166=>200,167=>417,168=>333,169=>765,\r\n\t170=>313,171=>417,172=>667,173=>564,174=>765,175=>333,176=>375,177=>462,178=>354,179=>354,180=>333,181=>510,182=>438,183=>198,184=>333,185=>354,\r\n\t186=>323,187=>417,188=>854,189=>854,190=>854,191=>448,192=>604,711=>333,215=>462,224=>469,226=>469,231=>448,232=>438,233=>438,234=>438,235=>438,\r\n\t238=>271,239=>271,244=>490,305=>271,247=>483,249=>552,251=>552,252=>552,255=>469,9249=>781,1548=>237,1563=>237,1567=>340,1569=>426,1570=>416,1571=>238,\r\n\t1572=>429,1573=>260,1574=>817,1575=>238,1576=>853,1577=>439,1578=>853,1579=>853,1580=>720,1581=>720,1582=>720,1583=>485,1584=>485,1585=>423,1586=>423,1587=>1016,\r\n\t1588=>1016,1589=>1128,1590=>1128,1591=>794,1592=>794,1593=>685,1594=>685,1600=>371,1601=>840,1602=>696,1603=>1148,1604=>744,1605=>514,1606=>686,1607=>439,1608=>429,\r\n\t1609=>817,1610=>817,1611=>0,1612=>0,1613=>0,1614=>0,1615=>0,1616=>0,1617=>0,1618=>0,1632=>479,1633=>479,1634=>479,1635=>479,1636=>479,1637=>479,\r\n\t1638=>479,1639=>479,1640=>479,1641=>483,1642=>493,1645=>563,1648=>227,1649=>363,1652=>227,1662=>853,1670=>720,1688=>423,1700=>840,1705=>1148,1711=>1149,1740=>817,\r\n\t1749=>439,1764=>227,1776=>479,1777=>479,1778=>479,1779=>479,1780=>479,1781=>479,1782=>479,1783=>479,1784=>479,1785=>483,8204=>22,8205=>22,8206=>22,8207=>22,\r\n\t59424=>227,59425=>227,59426=>227,59427=>227,59428=>227,59429=>227,59430=>227,59431=>227,59432=>227,59433=>227,59434=>227,59435=>227,59436=>227,59416=>227,59437=>227,59442=>227,\r\n\t59443=>227,59444=>227,59445=>227,59446=>227,64336=>363,64337=>263,64342=>853,64343=>967,64344=>267,64345=>271,64362=>840,64363=>959,64364=>305,64365=>341,64378=>720,64379=>725,\r\n\t64380=>630,64381=>652,64394=>423,64395=>450,64398=>1148,64399=>1089,64400=>522,64401=>461,64402=>1149,64403=>1084,64404=>525,64405=>462,64508=>817,64509=>784,64606=>227,64607=>227,\r\n\t64608=>227,64609=>227,64610=>227,64754=>371,64755=>371,64756=>371,64828=>331,64829=>276,64830=>303,64831=>303,65010=>866,65136=>227,65137=>371,65138=>227,65140=>227,65142=>227,\r\n\t65143=>371,65144=>227,65145=>371,65146=>227,65147=>371,65148=>227,65149=>371,65150=>227,65151=>371,65152=>426,65153=>416,65154=>354,65155=>238,65156=>282,65157=>429,65158=>507,\r\n\t65159=>260,65160=>286,65161=>817,65162=>784,65163=>190,65164=>276,65165=>238,65166=>263,65167=>853,65168=>967,65169=>186,65170=>271,65171=>439,65172=>452,65173=>853,65174=>967,\r\n\t65175=>256,65176=>271,65177=>853,65178=>967,65179=>267,65180=>271,65181=>720,65182=>725,65183=>630,65184=>652,65185=>720,65186=>725,65187=>630,65188=>652,65189=>720,65190=>725,\r\n\t65191=>630,65192=>652,65193=>485,65194=>608,65195=>485,65196=>608,65197=>423,65198=>450,65199=>423,65200=>450,65201=>1016,65202=>1041,65203=>498,65204=>475,65205=>1016,65206=>1041,\r\n\t65207=>498,65208=>475,65209=>1128,65210=>1150,65211=>633,65212=>655,65213=>1128,65214=>1150,65215=>633,65216=>655,65217=>794,65218=>814,65219=>566,65220=>588,65221=>794,65222=>814,\r\n\t65223=>566,65224=>588,65225=>685,65226=>655,65227=>414,65228=>330,65229=>685,65230=>655,65231=>414,65232=>330,65233=>840,65234=>959,65235=>305,65236=>341,65237=>696,65238=>780,\r\n\t65239=>305,65240=>341,65241=>1148,65242=>1089,65243=>522,65244=>461,65245=>744,65246=>741,65247=>202,65248=>259,65249=>514,65250=>585,65251=>345,65252=>477,65253=>686,65254=>764,\r\n\t65255=>186,65256=>271,65257=>439,65258=>452,65259=>501,65260=>381,65261=>429,65262=>507,65263=>817,65264=>784,65265=>817,65266=>784,64510=>265,64511=>271,65269=>610,65270=>652,\r\n\t65271=>539,65272=>611,65273=>539,65274=>611,65275=>539,65276=>611,65279=>0,64486=>408,64487=>408);\r\n$enc='';\r\n$diff='';\r\n$file='zarbold.z';\r\n$ctg='zarbold.ctg.z';\r\n$originalsize=73296;\r\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/htmlcolors.php",
    "content": "<?php\n//============================================================+\n// File name   : htmlcolors.php\n// Begin       : 2002-04-09\n// Last Update : 2010-04-20\n// Version     : 1.0.004\n// License     : GNU LGPL (http://www.gnu.org/copyleft/lesser.html)\n// \t----------------------------------------------------------------------------\n//  Copyright (C) 2002-2009  Nicola Asuni - Tecnick.com S.r.l.\n// \t\n// \tThis program is free software: you can redistribute it and/or modify\n// \tit under the terms of the GNU Lesser General Public License as published by\n// \tthe Free Software Foundation, either version 2.1 of the License, or\n// \t(at your option) any later version.\n// \t\n// \tThis program is distributed in the hope that it will be useful,\n// \tbut WITHOUT ANY WARRANTY; without even the implied warranty of\n// \tMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n// \tGNU Lesser General Public License for more details.\n// \t\n// \tYou should have received a copy of the GNU Lesser General Public License\n// \talong with this program.  If not, see <http://www.gnu.org/licenses/>.\n// \t\n// \tSee LICENSE.TXT file for more information.\n//  ----------------------------------------------------------------------------\n//\n// Description : Array of WEB safe colors\n//\n// Author: Nicola Asuni\n//\n// (c) Copyright:\n//               Nicola Asuni\n//               Tecnick.com S.r.l.\n//               Via della Pace, 11\n//               09044 Quartucciu (CA)\n//               ITALY\n//               www.tecnick.com\n//               info@tecnick.com\n//============================================================+\n\n/**\n * Array of WEB safe colors.\n * @author Nicola Asuni\n * @copyright 2004-2009 Nicola Asuni - Tecnick.com S.r.l (www.tecnick.com) Via Della Pace, 11 - 09044 - Quartucciu (CA) - ITALY - www.tecnick.com - info@tecnick.com\n * @package com.tecnick.tcpdf\n * @link http://www.tcpdf.org\n * @license http://www.gnu.org/copyleft/lesser.html LGPL\n * @since 2.9.000 (2008-03-26)\n*/\n\n/**\n * Array of WEB safe colors\n */\nglobal $webcolor;\n$webcolor = array (\n'aliceblue' => 'f0f8ff',\n'antiquewhite' => 'faebd7',\n'aqua' => '00ffff',\n'aquamarine' => '7fffd4',\n'azure' => 'f0ffff',\n'beige' => 'f5f5dc',\n'bisque' => 'ffe4c4',\n'black' => '000000',\n'blanchedalmond' => 'ffebcd',\n'blue' => '0000ff',\n'blueviolet' => '8a2be2',\n'brown' => 'a52a2a',\n'burlywood' => 'deb887',\n'cadetblue' => '5f9ea0',\n'chartreuse' => '7fff00',\n'chocolate' => 'd2691e',\n'coral' => 'ff7f50',\n'cornflowerblue' => '6495ed',\n'cornsilk' => 'fff8dc',\n'crimson' => 'dc143c',\n'cyan' => '00ffff',\n'darkblue' => '00008b',\n'darkcyan' => '008b8b',\n'darkgoldenrod' => 'b8860b',\n'dkgray' => 'a9a9a9',\n'darkgray' => 'a9a9a9',\n'darkgrey' => 'a9a9a9',\n'darkgreen' => '006400',\n'darkkhaki' => 'bdb76b',\n'darkmagenta' => '8b008b',\n'darkolivegreen' => '556b2f',\n'darkorange' => 'ff8c00',\n'darkorchid' => '9932cc',\n'darkred' => '8b0000',\n'darksalmon' => 'e9967a',\n'darkseagreen' => '8fbc8f',\n'darkslateblue' => '483d8b',\n'darkslategray' => '2f4f4f',\n'darkslategrey' => '2f4f4f',\n'darkturquoise' => '00ced1',\n'darkviolet' => '9400d3',\n'deeppink' => 'ff1493',\n'deepskyblue' => '00bfff',\n'dimgray' => '696969',\n'dimgrey' => '696969',\n'dodgerblue' => '1e90ff',\n'firebrick' => 'b22222',\n'floralwhite' => 'fffaf0',\n'forestgreen' => '228b22',\n'fuchsia' => 'ff00ff',\n'gainsboro' => 'dcdcdc',\n'ghostwhite' => 'f8f8ff',\n'gold' => 'ffd700',\n'goldenrod' => 'daa520',\n'gray' => '808080',\n'grey' => '808080',\n'green' => '008000',\n'greenyellow' => 'adff2f',\n'honeydew' => 'f0fff0',\n'hotpink' => 'ff69b4',\n'indianred' => 'cd5c5c',\n'indigo' => '4b0082',\n'ivory' => 'fffff0',\n'khaki' => 'f0e68c',\n'lavender' => 'e6e6fa',\n'lavenderblush' => 'fff0f5',\n'lawngreen' => '7cfc00',\n'lemonchiffon' => 'fffacd',\n'lightblue' => 'add8e6',\n'lightcoral' => 'f08080',\n'lightcyan' => 'e0ffff',\n'lightgoldenrodyellow' => 'fafad2',\n'ltgray' => 'd3d3d3',\n'lightgray' => 'd3d3d3',\n'lightgrey' => 'd3d3d3',\n'lightgreen' => '90ee90',\n'lightpink' => 'ffb6c1',\n'lightsalmon' => 'ffa07a',\n'lightseagreen' => '20b2aa',\n'lightskyblue' => '87cefa',\n'lightslategray' => '778899',\n'lightslategrey' => '778899',\n'lightsteelblue' => 'b0c4de',\n'lightyellow' => 'ffffe0',\n'lime' => '00ff00',\n'limegreen' => '32cd32',\n'linen' => 'faf0e6',\n'magenta' => 'ff00ff',\n'maroon' => '800000',\n'mediumaquamarine' => '66cdaa',\n'mediumblue' => '0000cd',\n'mediumorchid' => 'ba55d3',\n'mediumpurple' => '9370d8',\n'mediumseagreen' => '3cb371',\n'mediumslateblue' => '7b68ee',\n'mediumspringgreen' => '00fa9a',\n'mediumturquoise' => '48d1cc',\n'mediumvioletred' => 'c71585',\n'midnightblue' => '191970',\n'mintcream' => 'f5fffa',\n'mistyrose' => 'ffe4e1',\n'moccasin' => 'ffe4b5',\n'navajowhite' => 'ffdead',\n'navy' => '000080',\n'oldlace' => 'fdf5e6',\n'olive' => '808000',\n'olivedrab' => '6b8e23',\n'orange' => 'ffa500',\n'orangered' => 'ff4500',\n'orchid' => 'da70d6',\n'palegoldenrod' => 'eee8aa',\n'palegreen' => '98fb98',\n'paleturquoise' => 'afeeee',\n'palevioletred' => 'd87093',\n'papayawhip' => 'ffefd5',\n'peachpuff' => 'ffdab9',\n'peru' => 'cd853f',\n'pink' => 'ffc0cb',\n'plum' => 'dda0dd',\n'powderblue' => 'b0e0e6',\n'purple' => '800080',\n'red' => 'ff0000',\n'rosybrown' => 'bc8f8f',\n'royalblue' => '4169e1',\n'saddlebrown' => '8b4513',\n'salmon' => 'fa8072',\n'sandybrown' => 'f4a460',\n'seagreen' => '2e8b57',\n'seashell' => 'fff5ee',\n'sienna' => 'a0522d',\n'silver' => 'c0c0c0',\n'skyblue' => '87ceeb',\n'slateblue' => '6a5acd',\n'slategray' => '708090',\n'slategrey' => '708090',\n'snow' => 'fffafa',\n'springgreen' => '00ff7f',\n'steelblue' => '4682b4',\n'tan' => 'd2b48c',\n'teal' => '008080',\n'thistle' => 'd8bfd8',\n'tomato' => 'ff6347',\n'turquoise' => '40e0d0',\n'violet' => 'ee82ee',\n'wheat' => 'f5deb3',\n'white' => 'ffffff',\n'whitesmoke' => 'f5f5f5',\n'yellow' => 'ffff00',\n'yellowgreen' => '9acd32'\n);\n\n//============================================================+\n// END OF FILE                                                 \n//============================================================+\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/images/read_me.txt",
    "content": "download the TCPDF package to have this resources.\r\n\r\nit has been removed because of the size of the package of HTML2PDF... "
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/qrcode.php",
    "content": "<?php\n//============================================================+\n// File name   : qrcode.php\n// Begin       : 2010-03-22\n// Last Update : 2010-03-30\n// Version     : 1.0.003\n// License     : GNU LGPL v.3 (http://www.gnu.org/copyleft/lesser.html)\n// \t----------------------------------------------------------------------------\n//\n// \tThis library is free software; you can redistribute it and/or\n// \tmodify it under the terms of the GNU Lesser General Public\n// \tLicense as published by the Free Software Foundation; either\n// \tversion 3 of the License, or any later version.\n//\n// \tThis library is distributed in the hope that it will be useful,\n// \tbut WITHOUT ANY WARRANTY; without even the implied warranty of\n// \tMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\n// \tLesser General Public License for more details.\n//\n// \tYou should have received a copy of the GNU Lesser General Public\n// \tLicense along with this library; if not, write to the Free Software\n// \tFoundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA\n//  or browse http://www.gnu.org/copyleft/lesser.html\n//\n//  ----------------------------------------------------------------------------\n//\n// DESCRIPTION :\n//\n// Class to create QR-code arrays for TCPDF class.\n// QR Code symbol is a 2D barcode that can be scanned by\n// handy terminals such as a mobile phone with CCD.\n// The capacity of QR Code is up to 7000 digits or 4000\n// characters, and has high robustness.\n// This class supports QR Code model 2, described in\n// JIS (Japanese Industrial Standards) X0510:2004\n// or ISO/IEC 18004.\n// Currently the following features are not supported:\n// ECI and FNC1 mode, Micro QR Code, QR Code model 1,\n// Structured mode.\n//\n// This class is derived from the following projects:\n// ---------------------------------------------------------\n// \"PHP QR Code encoder\"\n// License: GNU-LGPLv3\n// Copyright (C) 2010 by Dominik Dzienia <deltalab at poczta dot fm>\n// http://phpqrcode.sourceforge.net/\n// https://sourceforge.net/projects/phpqrcode/\n//\n// The \"PHP QR Code encoder\" is based on\n// \"C libqrencode library\" (ver. 3.1.1)\n// License: GNU-LGPL 2.1\n// Copyright (C) 2006-2010 by Kentaro Fukuchi\n// http://megaui.net/fukuchi/works/qrencode/index.en.html\n//\n// Reed-Solomon code encoder is written by Phil Karn, KA9Q.\n// Copyright (C) 2002-2006 Phil Karn, KA9Q\n//\n// QR Code is registered trademark of DENSO WAVE INCORPORATED\n// http://www.denso-wave.com/qrcode/index-e.html\n// ---------------------------------------------------------\n//\n// Author: Nicola Asuni\n//\n// (c) Copyright 2010:\n//               Nicola Asuni\n//               Tecnick.com S.r.l.\n//               Via della Pace, 11\n//               09044 Quartucciu (CA)\n//               ITALY\n//               www.tecnick.com\n//               info@tecnick.com\n//============================================================+\n\n/**\n * Class to create QR-code arrays for TCPDF class.\n * QR Code symbol is a 2D barcode that can be scanned by handy terminals such as a mobile phone with CCD.\n * The capacity of QR Code is up to 7000 digits or 4000 characters, and has high robustness.\n * This class supports QR Code model 2, described in JIS (Japanese Industrial Standards) X0510:2004 or ISO/IEC 18004.\n * Currently the following features are not supported: ECI and FNC1 mode, Micro QR Code, QR Code model 1, Structured mode.\n *\n * This class is derived from \"PHP QR Code encoder\" by Dominik Dzienia (http://phpqrcode.sourceforge.net/) based on \"libqrencode C library 3.1.1.\" by Kentaro Fukuchi (http://megaui.net/fukuchi/works/qrencode/index.en.html), contains Reed-Solomon code written by Phil Karn, KA9Q. QR Code is registered trademark of DENSO WAVE INCORPORATED (http://www.denso-wave.com/qrcode/index-e.html).\n * Please read comments on this class source file for full copyright and license information.\n *\n * @package com.tecnick.tcpdf\n * @abstract Class for generating QR-code array for TCPDF.\n * @author Nicola Asuni\n * @copyright 2010 Nicola Asuni - Tecnick.com S.r.l (www.tecnick.com) Via Della Pace, 11 - 09044 - Quartucciu (CA) - ITALY - www.tecnick.com - info@tecnick.com\n * @link http://www.tcpdf.org\n * @license http://www.gnu.org/copyleft/lesser.html LGPL\n * @version 1.0.003\n */\n\n// definitions\nif (!defined('QRCODEDEFS')) {\n\n\t/**\n\t * Indicate that definitions for this class are set\n\t */\n\tdefine('QRCODEDEFS', true);\n\n\t// -----------------------------------------------------\n\n\t// Encoding modes (characters which can be encoded in QRcode)\n\n\t/**\n\t * Encoding mode\n\t */\n\tdefine('QR_MODE_NL', -1);\n\n\t/**\n\t * Encoding mode numeric (0-9). 3 characters are encoded to 10bit length. In theory, 7089 characters or less can be stored in a QRcode.\n\t */\n\tdefine('QR_MODE_NM', 0);\n\n\t/**\n\t * Encoding mode alphanumeric (0-9A-Z $%*+-./:) 45characters. 2 characters are encoded to 11bit length. In theory, 4296 characters or less can be stored in a QRcode.\n\t */\n\tdefine('QR_MODE_AN', 1);\n\n\t/**\n\t * Encoding mode 8bit byte data. In theory, 2953 characters or less can be stored in a QRcode.\n\t */\n\tdefine('QR_MODE_8B', 2);\n\n\t/**\n\t * Encoding mode KANJI. A KANJI character (multibyte character) is encoded to 13bit length. In theory, 1817 characters or less can be stored in a QRcode.\n\t */\n\tdefine('QR_MODE_KJ', 3);\n\n\t/**\n\t * Encoding mode STRUCTURED (currently unsupported)\n\t */\n\tdefine('QR_MODE_ST', 4);\n\n\t// -----------------------------------------------------\n\n\t// Levels of error correction.\n\t// QRcode has a function of an error correcting for miss reading that white is black.\n\t// Error correcting is defined in 4 level as below.\n\n\t/**\n\t * Error correction level L : About 7% or less errors can be corrected.\n\t */\n\tdefine('QR_ECLEVEL_L', 0);\n\n\t/**\n\t * Error correction level M : About 15% or less errors can be corrected.\n\t */\n\tdefine('QR_ECLEVEL_M', 1);\n\n\t/**\n\t * Error correction level Q : About 25% or less errors can be corrected.\n\t */\n\tdefine('QR_ECLEVEL_Q', 2);\n\n\t/**\n\t * Error correction level H : About 30% or less errors can be corrected.\n\t */\n\tdefine('QR_ECLEVEL_H', 3);\n\n\t// -----------------------------------------------------\n\n\t// Version. Size of QRcode is defined as version.\n\t// Version is from 1 to 40.\n\t// Version 1 is 21*21 matrix. And 4 modules increases whenever 1 version increases.\n\t// So version 40 is 177*177 matrix.\n\n\t/**\n\t * Maximum QR Code version.\n\t */\n\tdefine('QRSPEC_VERSION_MAX', 40);\n\n\t/**\n\t * Maximum matrix size for maximum version (version 40 is 177*177 matrix).\n\t */\n    define('QRSPEC_WIDTH_MAX', 177);\n\n\t// -----------------------------------------------------\n\n\t/**\n\t * Matrix index to get width from $capacity array.\n\t */\n    define('QRCAP_WIDTH',    0);\n\n    /**\n\t * Matrix index to get number of words from $capacity array.\n\t */\n    define('QRCAP_WORDS',    1);\n\n    /**\n\t * Matrix index to get remainder from $capacity array.\n\t */\n    define('QRCAP_REMINDER', 2);\n\n    /**\n\t * Matrix index to get error correction level from $capacity array.\n\t */\n    define('QRCAP_EC',       3);\n\n\t// -----------------------------------------------------\n\n\t// Structure (currently usupported)\n\n\t/**\n\t * Number of header bits for structured mode\n\t */\n    define('STRUCTURE_HEADER_BITS',  20);\n\n    /**\n\t * Max number of symbols for structured mode\n\t */\n    define('MAX_STRUCTURED_SYMBOLS', 16);\n\n\t// -----------------------------------------------------\n\n    // Masks\n\n    /**\n\t * Down point base value for case 1 mask pattern (concatenation of same color in a line or a column)\n\t */\n    define('N1',  3);\n\n    /**\n\t * Down point base value for case 2 mask pattern (module block of same color)\n\t */\n\tdefine('N2',  3);\n\n    /**\n\t * Down point base value for case 3 mask pattern (1:1:3:1:1(dark:bright:dark:bright:dark)pattern in a line or a column)\n\t */\n\tdefine('N3', 40);\n\n    /**\n\t * Down point base value for case 4 mask pattern (ration of dark modules in whole)\n\t */\n\tdefine('N4', 10);\n\n\t// -----------------------------------------------------\n\n\t// Optimization settings\n\n\t/**\n\t * if true, estimates best mask (spec. default, but extremally slow; set to false to significant performance boost but (propably) worst quality code\n\t */\n\tdefine('QR_FIND_BEST_MASK', true);\n\n\t/**\n\t * if false, checks all masks available, otherwise value tells count of masks need to be checked, mask id are got randomly\n\t */\n\tdefine('QR_FIND_FROM_RANDOM', 2);\n\n\t/**\n\t * when QR_FIND_BEST_MASK === false\n\t */\n\tdefine('QR_DEFAULT_MASK', 2);\n\n\t// -----------------------------------------------------\n\n} // end of definitions\n\n// #*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#\n\nif (!class_exists('QRcode', false)) {\n\n\t// for compaibility with PHP4\n\tif (!function_exists('str_split')) {\n    \t/**\n    \t * Convert a string to an array (needed for PHP4 compatibility)\n    \t * @param string $string The input string.\n    \t * @param int $split_length Maximum length of the chunk.\n    \t * @return  If the optional split_length  parameter is specified, the returned array will be broken down into chunks with each being split_length  in length, otherwise each chunk will be one character in length. FALSE is returned if split_length is less than 1. If the split_length length exceeds the length of string , the entire string is returned as the first (and only) array element.\n    \t */\n\t\tfunction str_split($string, $split_length=1) {\n\t\t\tif ((strlen($string) > $split_length) OR (!$split_length)) {\n\t\t\t\tdo {\n\t\t\t\t\t$c = strlen($string);\n\t\t\t\t\t$parts[] = substr($string, 0, $split_length);\n\t\t\t\t\t$string = substr($string, $split_length);\n\t\t\t\t} while ($string !== false);\n\t\t\t} else {\n\t\t\t\t$parts = array($string);\n\t\t\t}\n\t\t\treturn $parts;\n\t\t}\n\t}\n\n\t// #####################################################\n\n\t/**\n\t * Class to create QR-code arrays for TCPDF class.\n\t * QR Code symbol is a 2D barcode that can be scanned by handy terminals such as a mobile phone with CCD.\n\t * The capacity of QR Code is up to 7000 digits or 4000 characters, and has high robustness.\n\t * This class supports QR Code model 2, described in JIS (Japanese Industrial Standards) X0510:2004 or ISO/IEC 18004.\n\t * Currently the following features are not supported: ECI and FNC1 mode, Micro QR Code, QR Code model 1, Structured mode.\n\t *\n\t * This class is derived from \"PHP QR Code encoder\" by Dominik Dzienia (http://phpqrcode.sourceforge.net/) based on \"libqrencode C library 3.1.1.\" by Kentaro Fukuchi (http://megaui.net/fukuchi/works/qrencode/index.en.html), contains Reed-Solomon code written by Phil Karn, KA9Q. QR Code is registered trademark of DENSO WAVE INCORPORATED (http://www.denso-wave.com/qrcode/index-e.html).\n\t * Please read comments on this class source file for full copyright and license information.\n\t *\n\t * @name QRcode\n\t * @package com.tecnick.tcpdf\n\t * @abstract Class for generating QR-code array for TCPDF.\n\t * @author Nicola Asuni\n\t * @copyright 2010 Nicola Asuni - Tecnick.com S.r.l (www.tecnick.com) Via Della Pace, 11 - 09044 - Quartucciu (CA) - ITALY - www.tecnick.com - info@tecnick.com\n\t * @link http://www.tcpdf.org\n\t * @license http://www.gnu.org/copyleft/lesser.html LGPL\n\t * @version 1.0.002\n\t */\n\tclass QRcode {\n\n\t\t/**\n\t\t * @var barcode array to be returned which is readable by TCPDF\n\t\t * @access protected\n\t\t */\n\t\tprotected $barcode_array = array();\n\n\t\t/**\n\t\t * @var QR code version. Size of QRcode is defined as version. Version is from 1 to 40. Version 1 is 21*21 matrix. And 4 modules increases whenever 1 version increases. So version 40 is 177*177 matrix.\n\t\t * @access protected\n\t\t */\n\t\tprotected $version = 0;\n\n\t\t/**\n\t\t * @var Levels of error correction. See definitions for possible values.\n\t\t * @access protected\n\t\t */\n\t\tprotected $level = QR_ECLEVEL_L;\n\n\t\t/**\n\t\t * @var Encoding mode\n\t\t * @access protected\n\t\t */\n\t\tprotected $hint = QR_MODE_8B;\n\n\t\t/**\n\t\t * @var if true the input string will be converted to uppercase\n\t\t * @access protected\n\t\t */\n\t\tprotected $casesensitive = true;\n\n\t\t/**\n\t\t * @var structured QR code (not supported yet)\n\t\t * @access protected\n\t\t */\n\t\tprotected $structured = 0;\n\n\t\t/**\n\t\t * @var mask data\n\t\t * @access protected\n\t\t */\n\t\tprotected $data;\n\n\t\t// FrameFiller\n\n\t\t/**\n\t\t * @var width\n\t\t * @access protected\n\t\t */\n\t\tprotected $width;\n\n\t\t/**\n\t\t * @var frame\n\t\t * @access protected\n\t\t */\n\t\tprotected $frame;\n\n\t\t/**\n\t\t * @var X position of bit\n\t\t * @access protected\n\t\t */\n\t\tprotected $x;\n\n\t\t/**\n\t\t * @var Y position of bit\n\t\t * @access protected\n\t\t */\n\t\tprotected $y;\n\n\t\t/**\n\t\t * @var direction\n\t\t * @access protected\n\t\t */\n\t\tprotected $dir;\n\n\t\t/**\n\t\t * @var single bit\n\t\t * @access protected\n\t\t */\n\t\tprotected $bit;\n\n\t\t// ---- QRrawcode ----\n\n\t\t/**\n\t\t * @var data code\n\t\t * @access protected\n\t\t */\n\t\tprotected $datacode = array();\n\n\t\t/**\n\t\t * @var error correction code\n\t\t * @access protected\n\t\t */\n\t\tprotected $ecccode = array();\n\n\t\t/**\n\t\t * @var blocks\n\t\t * @access protected\n\t\t */\n\t\tprotected $blocks;\n\n\t\t/**\n\t\t * @var Reed-Solomon blocks\n\t\t * @access protected\n\t\t */\n\t\tprotected $rsblocks = array(); //of RSblock\n\n\t\t/**\n\t\t * @var counter\n\t\t * @access protected\n\t\t */\n\t\tprotected $count;\n\n\t\t/**\n\t\t * @var data length\n\t\t * @access protected\n\t\t */\n\t\tprotected $dataLength;\n\n\t\t/**\n\t\t * @var error correction length\n\t\t * @access protected\n\t\t */\n\t\tprotected $eccLength;\n\n\t\t/**\n\t\t * @var b1\n\t\t * @access protected\n\t\t */\n\t\tprotected $b1;\n\n\t\t// ---- QRmask ----\n\n\t\t/**\n\t\t * @var run length\n\t\t * @access protected\n\t\t */\n\t\tprotected $runLength = array();\n\n\t\t// ---- QRsplit ----\n\n\t\t/**\n\t\t * @var input data string\n\t\t * @access protected\n\t\t */\n\t\tprotected $dataStr = '';\n\n\t\t/**\n\t\t * @var input items\n\t\t * @access protected\n\t\t */\n\t\tprotected $items;\n\n\t\t// Reed-Solomon items\n\n\t\t/**\n\t\t * @var Reed-Solomon items\n\t\t * @access protected\n\t\t */\n\t\tprotected $rsitems = array();\n\n\t\t/**\n\t\t * @var array of frames\n\t\t * @access protected\n\t\t */\n\t\tprotected $frames = array();\n\n\t\t/**\n\t\t * @var alphabet-numeric convesion table\n\t\t * @access protected\n\t\t */\n\t\tprotected $anTable = array(\n\t\t\t-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, //\n\t\t\t-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, //\n\t\t\t36, -1, -1, -1, 37, 38, -1, -1, -1, -1, 39, 40, -1, 41, 42, 43, //\n\t\t\t 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 44, -1, -1, -1, -1, -1, //\n\t\t\t-1, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, //\n\t\t\t25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, -1, -1, -1, -1, -1, //\n\t\t\t-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, //\n\t\t\t-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1  //\n\t\t\t);\n\n\t\t/**\n\t\t * @var array Table of the capacity of symbols\n\t\t * See Table 1 (pp.13) and Table 12-16 (pp.30-36), JIS X0510:2004.\n\t\t * @access protected\n\t\t */\n\t\tprotected $capacity = array(\n\t\t\tarray(  0,    0, 0, array(   0,    0,    0,    0)), //\n\t\t\tarray( 21,   26, 0, array(   7,   10,   13,   17)), //  1\n\t\t\tarray( 25,   44, 7, array(  10,   16,   22,   28)), //\n\t\t\tarray( 29,   70, 7, array(  15,   26,   36,   44)), //\n\t\t\tarray( 33,  100, 7, array(  20,   36,   52,   64)), //\n\t\t\tarray( 37,  134, 7, array(  26,   48,   72,   88)), //  5\n\t\t\tarray( 41,  172, 7, array(  36,   64,   96,  112)), //\n\t\t\tarray( 45,  196, 0, array(  40,   72,  108,  130)), //\n\t\t\tarray( 49,  242, 0, array(  48,   88,  132,  156)), //\n\t\t\tarray( 53,  292, 0, array(  60,  110,  160,  192)), //\n\t\t\tarray( 57,  346, 0, array(  72,  130,  192,  224)), // 10\n\t\t\tarray( 61,  404, 0, array(  80,  150,  224,  264)), //\n\t\t\tarray( 65,  466, 0, array(  96,  176,  260,  308)), //\n\t\t\tarray( 69,  532, 0, array( 104,  198,  288,  352)), //\n\t\t\tarray( 73,  581, 3, array( 120,  216,  320,  384)), //\n\t\t\tarray( 77,  655, 3, array( 132,  240,  360,  432)), // 15\n\t\t\tarray( 81,  733, 3, array( 144,  280,  408,  480)), //\n\t\t\tarray( 85,  815, 3, array( 168,  308,  448,  532)), //\n\t\t\tarray( 89,  901, 3, array( 180,  338,  504,  588)), //\n\t\t\tarray( 93,  991, 3, array( 196,  364,  546,  650)), //\n\t\t\tarray( 97, 1085, 3, array( 224,  416,  600,  700)), // 20\n\t\t\tarray(101, 1156, 4, array( 224,  442,  644,  750)), //\n\t\t\tarray(105, 1258, 4, array( 252,  476,  690,  816)), //\n\t\t\tarray(109, 1364, 4, array( 270,  504,  750,  900)), //\n\t\t\tarray(113, 1474, 4, array( 300,  560,  810,  960)), //\n\t\t\tarray(117, 1588, 4, array( 312,  588,  870, 1050)), // 25\n\t\t\tarray(121, 1706, 4, array( 336,  644,  952, 1110)), //\n\t\t\tarray(125, 1828, 4, array( 360,  700, 1020, 1200)), //\n\t\t\tarray(129, 1921, 3, array( 390,  728, 1050, 1260)), //\n\t\t\tarray(133, 2051, 3, array( 420,  784, 1140, 1350)), //\n\t\t\tarray(137, 2185, 3, array( 450,  812, 1200, 1440)), // 30\n\t\t\tarray(141, 2323, 3, array( 480,  868, 1290, 1530)), //\n\t\t\tarray(145, 2465, 3, array( 510,  924, 1350, 1620)), //\n\t\t\tarray(149, 2611, 3, array( 540,  980, 1440, 1710)), //\n\t\t\tarray(153, 2761, 3, array( 570, 1036, 1530, 1800)), //\n\t\t\tarray(157, 2876, 0, array( 570, 1064, 1590, 1890)), // 35\n\t\t\tarray(161, 3034, 0, array( 600, 1120, 1680, 1980)), //\n\t\t\tarray(165, 3196, 0, array( 630, 1204, 1770, 2100)), //\n\t\t\tarray(169, 3362, 0, array( 660, 1260, 1860, 2220)), //\n\t\t\tarray(173, 3532, 0, array( 720, 1316, 1950, 2310)), //\n\t\t\tarray(177, 3706, 0, array( 750, 1372, 2040, 2430))  // 40\n\t\t);\n\n\t\t/**\n\t\t * @var array Length indicator\n\t\t * @access protected\n\t\t */\n\t\tprotected $lengthTableBits = array(\n\t\t\tarray(10, 12, 14),\n\t\t\tarray( 9, 11, 13),\n\t\t\tarray( 8, 16, 16),\n\t\t\tarray( 8, 10, 12)\n\t\t);\n\n\t\t/**\n\t\t * @var array Table of the error correction code (Reed-Solomon block)\n\t\t * See Table 12-16 (pp.30-36), JIS X0510:2004.\n\t\t * @access protected\n\t\t */\n\t\tprotected $eccTable = array(\n\t\t\tarray(array( 0,  0), array( 0,  0), array( 0,  0), array( 0,  0)), //\n\t\t\tarray(array( 1,  0), array( 1,  0), array( 1,  0), array( 1,  0)), //  1\n\t\t\tarray(array( 1,  0), array( 1,  0), array( 1,  0), array( 1,  0)), //\n\t\t\tarray(array( 1,  0), array( 1,  0), array( 2,  0), array( 2,  0)), //\n\t\t\tarray(array( 1,  0), array( 2,  0), array( 2,  0), array( 4,  0)), //\n\t\t\tarray(array( 1,  0), array( 2,  0), array( 2,  2), array( 2,  2)), //  5\n\t\t\tarray(array( 2,  0), array( 4,  0), array( 4,  0), array( 4,  0)), //\n\t\t\tarray(array( 2,  0), array( 4,  0), array( 2,  4), array( 4,  1)), //\n\t\t\tarray(array( 2,  0), array( 2,  2), array( 4,  2), array( 4,  2)), //\n\t\t\tarray(array( 2,  0), array( 3,  2), array( 4,  4), array( 4,  4)), //\n\t\t\tarray(array( 2,  2), array( 4,  1), array( 6,  2), array( 6,  2)), // 10\n\t\t\tarray(array( 4,  0), array( 1,  4), array( 4,  4), array( 3,  8)), //\n\t\t\tarray(array( 2,  2), array( 6,  2), array( 4,  6), array( 7,  4)), //\n\t\t\tarray(array( 4,  0), array( 8,  1), array( 8,  4), array(12,  4)), //\n\t\t\tarray(array( 3,  1), array( 4,  5), array(11,  5), array(11,  5)), //\n\t\t\tarray(array( 5,  1), array( 5,  5), array( 5,  7), array(11,  7)), // 15\n\t\t\tarray(array( 5,  1), array( 7,  3), array(15,  2), array( 3, 13)), //\n\t\t\tarray(array( 1,  5), array(10,  1), array( 1, 15), array( 2, 17)), //\n\t\t\tarray(array( 5,  1), array( 9,  4), array(17,  1), array( 2, 19)), //\n\t\t\tarray(array( 3,  4), array( 3, 11), array(17,  4), array( 9, 16)), //\n\t\t\tarray(array( 3,  5), array( 3, 13), array(15,  5), array(15, 10)), // 20\n\t\t\tarray(array( 4,  4), array(17,  0), array(17,  6), array(19,  6)), //\n\t\t\tarray(array( 2,  7), array(17,  0), array( 7, 16), array(34,  0)), //\n\t\t\tarray(array( 4,  5), array( 4, 14), array(11, 14), array(16, 14)), //\n\t\t\tarray(array( 6,  4), array( 6, 14), array(11, 16), array(30,  2)), //\n\t\t\tarray(array( 8,  4), array( 8, 13), array( 7, 22), array(22, 13)), // 25\n\t\t\tarray(array(10,  2), array(19,  4), array(28,  6), array(33,  4)), //\n\t\t\tarray(array( 8,  4), array(22,  3), array( 8, 26), array(12, 28)), //\n\t\t\tarray(array( 3, 10), array( 3, 23), array( 4, 31), array(11, 31)), //\n\t\t\tarray(array( 7,  7), array(21,  7), array( 1, 37), array(19, 26)), //\n\t\t\tarray(array( 5, 10), array(19, 10), array(15, 25), array(23, 25)), // 30\n\t\t\tarray(array(13,  3), array( 2, 29), array(42,  1), array(23, 28)), //\n\t\t\tarray(array(17,  0), array(10, 23), array(10, 35), array(19, 35)), //\n\t\t\tarray(array(17,  1), array(14, 21), array(29, 19), array(11, 46)), //\n\t\t\tarray(array(13,  6), array(14, 23), array(44,  7), array(59,  1)), //\n\t\t\tarray(array(12,  7), array(12, 26), array(39, 14), array(22, 41)), // 35\n\t\t\tarray(array( 6, 14), array( 6, 34), array(46, 10), array( 2, 64)), //\n\t\t\tarray(array(17,  4), array(29, 14), array(49, 10), array(24, 46)), //\n\t\t\tarray(array( 4, 18), array(13, 32), array(48, 14), array(42, 32)), //\n\t\t\tarray(array(20,  4), array(40,  7), array(43, 22), array(10, 67)), //\n\t\t\tarray(array(19,  6), array(18, 31), array(34, 34), array(20, 61))  // 40\n\t\t);\n\n\t\t/**\n\t\t * @var array Positions of alignment patterns.\n\t\t * This array includes only the second and the third position of the alignment patterns. Rest of them can be calculated from the distance between them.\n\t\t * See Table 1 in Appendix E (pp.71) of JIS X0510:2004.\n\t\t * @access protected\n\t\t */\n\t\tprotected $alignmentPattern = array(\n\t\t\tarray( 0,  0),\n\t\t\tarray( 0,  0), array(18,  0), array(22,  0), array(26,  0), array(30,  0), //  1- 5\n\t\t\tarray(34,  0), array(22, 38), array(24, 42), array(26, 46), array(28, 50), //  6-10\n\t\t\tarray(30, 54), array(32, 58), array(34, 62), array(26, 46), array(26, 48), // 11-15\n\t\t\tarray(26, 50), array(30, 54), array(30, 56), array(30, 58), array(34, 62), // 16-20\n\t\t\tarray(28, 50), array(26, 50), array(30, 54), array(28, 54), array(32, 58), // 21-25\n\t\t\tarray(30, 58), array(34, 62), array(26, 50), array(30, 54), array(26, 52), // 26-30\n\t\t\tarray(30, 56), array(34, 60), array(30, 58), array(34, 62), array(30, 54), // 31-35\n\t\t\tarray(24, 50), array(28, 54), array(32, 58), array(26, 54), array(30, 58)  // 35-40\n\t\t);\n\n\t\t/**\n\t\t * @var array Version information pattern (BCH coded).\n\t\t * See Table 1 in Appendix D (pp.68) of JIS X0510:2004.\n\t\t * size: [QRSPEC_VERSION_MAX - 6]\n\t\t * @access protected\n\t\t */\n\t\tprotected $versionPattern = array(\n\t\t\t0x07c94, 0x085bc, 0x09a99, 0x0a4d3, 0x0bbf6, 0x0c762, 0x0d847, 0x0e60d, //\n\t\t\t0x0f928, 0x10b78, 0x1145d, 0x12a17, 0x13532, 0x149a6, 0x15683, 0x168c9, //\n\t\t\t0x177ec, 0x18ec4, 0x191e1, 0x1afab, 0x1b08e, 0x1cc1a, 0x1d33f, 0x1ed75, //\n\t\t\t0x1f250, 0x209d5, 0x216f0, 0x228ba, 0x2379f, 0x24b0b, 0x2542e, 0x26a64, //\n\t\t\t0x27541, 0x28c69\n\t\t);\n\n\t\t/**\n\t\t * @var array Format information\n\t\t * @access protected\n\t\t */\n\t\tprotected $formatInfo = array(\n\t\t\tarray(0x77c4, 0x72f3, 0x7daa, 0x789d, 0x662f, 0x6318, 0x6c41, 0x6976), //\n\t\t\tarray(0x5412, 0x5125, 0x5e7c, 0x5b4b, 0x45f9, 0x40ce, 0x4f97, 0x4aa0), //\n\t\t\tarray(0x355f, 0x3068, 0x3f31, 0x3a06, 0x24b4, 0x2183, 0x2eda, 0x2bed), //\n\t\t\tarray(0x1689, 0x13be, 0x1ce7, 0x19d0, 0x0762, 0x0255, 0x0d0c, 0x083b)  //\n\t\t);\n\n\n\t\t// -------------------------------------------------\n\t\t// -------------------------------------------------\n\n\n\t\t/**\n\t\t * This is the class constructor.\n\t\t * Creates a QRcode object\n\t\t * @param string $code code to represent using QRcode\n\t\t * @param string $eclevel error level: <ul><li>L : About 7% or less errors can be corrected.</li><li>M : About 15% or less errors can be corrected.</li><li>Q : About 25% or less errors can be corrected.</li><li>H : About 30% or less errors can be corrected.</li></ul>\n\t\t * @access public\n\t\t * @since 1.0.000\n\t\t */\n\t\tpublic function __construct($code, $eclevel = 'L') {\n\t\t\t$barcode_array = array();\n\t\t\tif ((is_null($code)) OR ($code == '\\0') OR ($code == '')) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t// set error correction level\n\t\t\t$this->level = array_search($eclevel, array('L', 'M', 'Q', 'H'));\n\t\t\tif ($this->level === false) {\n\t\t\t\t$this->level = QR_ECLEVEL_L;\n\t\t\t}\n\t\t\tif (($this->hint != QR_MODE_8B) AND ($this->hint != QR_MODE_KJ)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tif (($this->version < 0) OR ($this->version > QRSPEC_VERSION_MAX)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t$this->items = array();\n\t\t\t$this->encodeString($code);\n\t\t\t$qrTab = $this->binarize($this->data);\n\t\t\t$size = count($qrTab);\n\t\t\t$barcode_array['num_rows'] = $size;\n\t\t\t$barcode_array['num_cols'] = $size;\n\t\t\t$barcode_array['bcode'] = array();\n\t\t\tforeach ($qrTab as $line) {\n\t\t\t\t$arrAdd = array();\n\t\t\t\tforeach (str_split($line) as $char) {\n\t\t\t\t\t$arrAdd[] = ($char=='1')?1:0;\n\t\t\t\t}\n\t\t\t\t$barcode_array['bcode'][] = $arrAdd;\n\t\t\t}\n\t\t\t$this->barcode_array = $barcode_array;\n\t\t}\n\n\t\t/**\n\t\t * Returns a barcode array which is readable by TCPDF\n\t\t * @return array barcode array readable by TCPDF;\n\t\t * @access public\n\t\t */\n\t\tpublic function getBarcodeArray() {\n\t\t\treturn $this->barcode_array;\n\t\t}\n\n\t\t/**\n\t\t * Convert the frame in binary form\n\t\t * @param array $frame array to binarize\n\t\t * @return array frame in binary form\n\t\t */\n\t\tprotected function binarize($frame) {\n\t\t\t$len = count($frame);\n\t\t\t// the frame is square (width = height)\n\t\t\tforeach ($frame as &$frameLine) {\n\t\t\t\tfor ($i=0; $i<$len; $i++) {\n\t\t\t\t\t$frameLine[$i] = (ord($frameLine[$i])&1)?'1':'0';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $frame;\n\t\t}\n\n\t\t/**\n\t\t * Encode the input string to QR code\n\t\t * @param string $string input string to encode\n\t\t */\n\t\tprotected function encodeString($string) {\n\t\t\t$this->dataStr = $string;\n\t\t\tif (!$this->casesensitive) {\n\t\t\t\t$this->toUpper();\n\t\t\t}\n\t\t\t$ret = $this->splitString();\n\t\t\tif ($ret < 0) {\n\t\t\t\treturn NULL;\n\t\t\t}\n\t\t\t$this->encodeMask(-1);\n\t\t}\n\n\t\t/**\n\t\t * Encode mask\n\t\t * @param int $mask masking mode\n\t\t */\n\t\tprotected function encodeMask($mask) {\n\t\t\t$spec = array(0, 0, 0, 0, 0);\n\t\t\t$this->datacode = $this->getByteStream($this->items);\n\t\t\tif (is_null($this->datacode)) {\n\t\t\t\treturn NULL;\n\t\t\t}\n\t\t\t$spec = $this->getEccSpec($this->version, $this->level, $spec);\n\t\t\t$this->b1 = $this->rsBlockNum1($spec);\n\t\t\t$this->dataLength = $this->rsDataLength($spec);\n\t\t\t$this->eccLength = $this->rsEccLength($spec);\n\t\t\t$this->ecccode = array_fill(0, $this->eccLength, 0);\n\t\t\t$this->blocks = $this->rsBlockNum($spec);\n\t\t\t$ret = $this->init($spec);\n\t\t\tif ($ret < 0) {\n\t\t\t\treturn NULL;\n\t\t\t}\n\t\t\t$this->count = 0;\n\t\t\t$this->width = $this->getWidth($this->version);\n\t\t\t$this->frame = $this->newFrame($this->version);\n\t\t\t$this->x = $this->width - 1;\n\t\t\t$this->y = $this->width - 1;\n\t\t\t$this->dir = -1;\n\t\t\t$this->bit = -1;\n\t\t\t// inteleaved data and ecc codes\n\t\t\tfor ($i=0; $i < ($this->dataLength + $this->eccLength); $i++) {\n\t\t\t\t$code = $this->getCode();\n\t\t\t\t$bit = 0x80;\n\t\t\t\tfor ($j=0; $j<8; $j++) {\n\t\t\t\t\t$addr = $this->getNextPosition();\n\t\t\t\t\t$this->setFrameAt($addr, 0x02 | (($bit & $code) != 0));\n\t\t\t\t\t$bit = $bit >> 1;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// remainder bits\n\t\t\t$j = $this->getRemainder($this->version);\n\t\t\tfor ($i=0; $i<$j; $i++) {\n\t\t\t\t$addr = $this->getNextPosition();\n\t\t\t\t$this->setFrameAt($addr, 0x02);\n\t\t\t}\n\t\t\t// masking\n\t\t\t$this->runLength = array_fill(0, QRSPEC_WIDTH_MAX + 1, 0);\n\t\t\tif ($mask < 0) {\n\t\t\t\tif (QR_FIND_BEST_MASK) {\n\t\t\t\t\t$masked = $this->mask($this->width, $this->frame, $this->level);\n\t\t\t\t} else {\n\t\t\t\t\t$masked = $this->makeMask($this->width, $this->frame, (intval(QR_DEFAULT_MASK) % 8), $this->level);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t$masked = $this->makeMask($this->width, $this->frame, $mask, $this->level);\n\t\t\t}\n\t\t\tif ($masked == NULL) {\n\t\t\t\treturn NULL;\n\t\t\t}\n\t\t\t$this->data = $masked;\n\t\t}\n\n\t\t// - - - - - - - - - - - - - - - - - - - - - - - - -\n\n\t\t// FrameFiller\n\n\t\t/**\n\t\t * Set frame value at specified position\n\t\t * @param array $at x,y position\n\t\t * @param int $val value of the character to set\n\t\t */\n\t\tprotected function setFrameAt($at, $val) {\n\t\t\t$this->frame[$at['y']][$at['x']] = chr($val);\n\t\t}\n\n\t\t/**\n\t\t * Get frame value at specified position\n\t\t * @param array $at x,y position\n\t\t * @return value at specified position\n\t\t */\n\t\tprotected function getFrameAt($at) {\n\t\t\treturn ord($this->frame[$at['y']][$at['x']]);\n\t\t}\n\n\t\t/**\n\t\t * Return the next frame position\n\t\t * @return array of x,y coordinates\n\t\t */\n\t\tprotected function getNextPosition() {\n\t\t\tdo {\n\t\t\t\tif ($this->bit == -1) {\n\t\t\t\t\t$this->bit = 0;\n\t\t\t\t\treturn array('x'=>$this->x, 'y'=>$this->y);\n\t\t\t\t}\n\t\t\t\t$x = $this->x;\n\t\t\t\t$y = $this->y;\n\t\t\t\t$w = $this->width;\n\t\t\t\tif ($this->bit == 0) {\n\t\t\t\t\t$x--;\n\t\t\t\t\t$this->bit++;\n\t\t\t\t} else {\n\t\t\t\t\t$x++;\n\t\t\t\t\t$y += $this->dir;\n\t\t\t\t\t$this->bit--;\n\t\t\t\t}\n\t\t\t\tif ($this->dir < 0) {\n\t\t\t\t\tif ($y < 0) {\n\t\t\t\t\t\t$y = 0;\n\t\t\t\t\t\t$x -= 2;\n\t\t\t\t\t\t$this->dir = 1;\n\t\t\t\t\t\tif ($x == 6) {\n\t\t\t\t\t\t\t$x--;\n\t\t\t\t\t\t\t$y = 9;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif ($y == $w) {\n\t\t\t\t\t\t$y = $w - 1;\n\t\t\t\t\t\t$x -= 2;\n\t\t\t\t\t\t$this->dir = -1;\n\t\t\t\t\t\tif ($x == 6) {\n\t\t\t\t\t\t\t$x--;\n\t\t\t\t\t\t\t$y -= 8;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (($x < 0) OR ($y < 0)) {\n\t\t\t\t\treturn NULL;\n\t\t\t\t}\n\t\t\t\t$this->x = $x;\n\t\t\t\t$this->y = $y;\n\t\t\t} while(ord($this->frame[$y][$x]) & 0x80);\n\t\t\treturn array('x'=>$x, 'y'=>$y);\n\t\t}\n\n\t\t// - - - - - - - - - - - - - - - - - - - - - - - - -\n\n\t\t// QRrawcode\n\n\t\t/**\n\t\t * Initialize code.\n\t\t * @param array $spec array of ECC specification\n\t\t * @return 0 in case of success, -1 in case of error\n\t\t */\n\t\tprotected function init($spec) {\n\t\t\t$dl = $this->rsDataCodes1($spec);\n\t\t\t$el = $this->rsEccCodes1($spec);\n\t\t\t$rs = $this->init_rs(8, 0x11d, 0, 1, $el, 255 - $dl - $el);\n\t\t\t$blockNo = 0;\n\t\t\t$dataPos = 0;\n\t\t\t$eccPos = 0;\n\t\t\t$endfor = $this->rsBlockNum1($spec);\n\t\t\tfor ($i=0; $i < $endfor; ++$i) {\n\t\t\t\t$ecc = array_slice($this->ecccode, $eccPos);\n\t\t\t\t$this->rsblocks[$blockNo] = array();\n\t\t\t\t$this->rsblocks[$blockNo]['dataLength'] = $dl;\n\t\t\t\t$this->rsblocks[$blockNo]['data'] = array_slice($this->datacode, $dataPos);\n\t\t\t\t$this->rsblocks[$blockNo]['eccLength'] = $el;\n\t\t\t\t$ecc = $this->encode_rs_char($rs, $this->rsblocks[$blockNo]['data'], $ecc);\n\t\t\t\t$this->rsblocks[$blockNo]['ecc'] = $ecc;\n\t\t\t\t$this->ecccode = array_merge(array_slice($this->ecccode,0, $eccPos), $ecc);\n\t\t\t\t$dataPos += $dl;\n\t\t\t\t$eccPos += $el;\n\t\t\t\t$blockNo++;\n\t\t\t}\n\t\t\tif ($this->rsBlockNum2($spec) == 0) {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t\t$dl = $this->rsDataCodes2($spec);\n\t\t\t$el = $this->rsEccCodes2($spec);\n\t\t\t$rs = $this->init_rs(8, 0x11d, 0, 1, $el, 255 - $dl - $el);\n\t\t\tif ($rs == NULL) {\n\t\t\t\treturn -1;\n\t\t\t}\n\t\t\t$endfor = $this->rsBlockNum2($spec);\n\t\t\tfor ($i=0; $i < $endfor; ++$i) {\n\t\t\t\t$ecc = array_slice($this->ecccode, $eccPos);\n\t\t\t\t$this->rsblocks[$blockNo] = array();\n\t\t\t\t$this->rsblocks[$blockNo]['dataLength'] = $dl;\n\t\t\t\t$this->rsblocks[$blockNo]['data'] = array_slice($this->datacode, $dataPos);\n\t\t\t\t$this->rsblocks[$blockNo]['eccLength'] = $el;\n\t\t\t\t$ecc = $this->encode_rs_char($rs, $this->rsblocks[$blockNo]['data'], $ecc);\n\t\t\t\t$this->rsblocks[$blockNo]['ecc'] = $ecc;\n\t\t\t\t$this->ecccode = array_merge(array_slice($this->ecccode, 0, $eccPos), $ecc);\n\t\t\t\t$dataPos += $dl;\n\t\t\t\t$eccPos += $el;\n\t\t\t\t$blockNo++;\n\t\t\t}\n\t\t\treturn 0;\n\t\t}\n\n\t\t/**\n\t\t * Return Reed-Solomon block code.\n\t\t * @return array rsblocks\n\t\t */\n\t\tprotected function getCode() {\n\t\t\tif ($this->count < $this->dataLength) {\n\t\t\t\t$row = $this->count % $this->blocks;\n\t\t\t\t$col = $this->count / $this->blocks;\n\t\t\t\tif ($col >= $this->rsblocks[0]['dataLength']) {\n\t\t\t\t\t$row += $this->b1;\n\t\t\t\t}\n\t\t\t\t$ret = $this->rsblocks[$row]['data'][$col];\n\t\t\t} elseif ($this->count < $this->dataLength + $this->eccLength) {\n\t\t\t\t$row = ($this->count - $this->dataLength) % $this->blocks;\n\t\t\t\t$col = ($this->count - $this->dataLength) / $this->blocks;\n\t\t\t\t$ret = $this->rsblocks[$row]['ecc'][$col];\n\t\t\t} else {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t\t$this->count++;\n\t\t\treturn $ret;\n\t\t}\n\n\t\t// - - - - - - - - - - - - - - - - - - - - - - - - -\n\n\t\t// QRmask\n\n\t\t/**\n\t\t * Write Format Information on frame and returns the number of black bits\n\t\t * @param int $width frame width\n\t\t * @param array $frame frame\n\t\t * @param array $mask masking mode\n\t\t * @param int $level error correction level\n\t\t * @return int blacks\n\t\t */\n\t\t protected function writeFormatInformation($width, &$frame, $mask, $level) {\n\t\t\t$blacks = 0;\n\t\t\t$format =  $this->getFormatInfo($mask, $level);\n\t\t\tfor ($i=0; $i<8; ++$i) {\n\t\t\t\tif ($format & 1) {\n\t\t\t\t\t$blacks += 2;\n\t\t\t\t\t$v = 0x85;\n\t\t\t\t} else {\n\t\t\t\t\t$v = 0x84;\n\t\t\t\t}\n\t\t\t\t$frame[8][$width - 1 - $i] = chr($v);\n\t\t\t\tif ($i < 6) {\n\t\t\t\t\t$frame[$i][8] = chr($v);\n\t\t\t\t} else {\n\t\t\t\t\t$frame[$i + 1][8] = chr($v);\n\t\t\t\t}\n\t\t\t\t$format = $format >> 1;\n\t\t\t}\n\t\t\tfor ($i=0; $i<7; ++$i) {\n\t\t\tif ($format & 1) {\n\t\t\t\t$blacks += 2;\n\t\t\t\t$v = 0x85;\n\t\t\t} else {\n\t\t\t\t$v = 0x84;\n\t\t\t}\n\t\t\t$frame[$width - 7 + $i][8] = chr($v);\n\t\t\tif ($i == 0) {\n\t\t\t\t$frame[8][7] = chr($v);\n\t\t\t} else {\n\t\t\t\t$frame[8][6 - $i] = chr($v);\n\t\t\t}\n\t\t\t$format = $format >> 1;\n\t\t\t}\n\t\t\treturn $blacks;\n\t\t}\n\n\t\t/**\n\t\t * mask0\n\t\t * @param int $x X position\n\t\t * @param int $y Y position\n\t\t * @return int mask\n\t\t */\n\t\t protected function mask0($x, $y) {\n\t\t\treturn ($x + $y) & 1;\n\t\t}\n\n\t\t/**\n\t\t * mask1\n\t\t * @param int $x X position\n\t\t * @param int $y Y position\n\t\t * @return int mask\n\t\t */\n\t\t protected function mask1($x, $y) {\n\t\t\treturn ($y & 1);\n\t\t}\n\n\t\t/**\n\t\t * mask2\n\t\t * @param int $x X position\n\t\t * @param int $y Y position\n\t\t * @return int mask\n\t\t */\n\t\t protected function mask2($x, $y) {\n\t\t\treturn ($x % 3);\n\t\t}\n\n\t\t/**\n\t\t * mask3\n\t\t * @param int $x X position\n\t\t * @param int $y Y position\n\t\t * @return int mask\n\t\t */\n\t\t protected function mask3($x, $y) {\n\t\t\treturn ($x + $y) % 3;\n\t\t}\n\n\t\t/**\n\t\t * mask4\n\t\t * @param int $x X position\n\t\t * @param int $y Y position\n\t\t * @return int mask\n\t\t */\n\t\t protected function mask4($x, $y) {\n\t\t\treturn (((int)($y / 2)) + ((int)($x / 3))) & 1;\n\t\t}\n\n\t\t/**\n\t\t * mask5\n\t\t * @param int $x X position\n\t\t * @param int $y Y position\n\t\t * @return int mask\n\t\t */\n\t\t protected function mask5($x, $y) {\n\t\t\treturn (($x * $y) & 1) + ($x * $y) % 3;\n\t\t}\n\n\t\t/**\n\t\t * mask6\n\t\t * @param int $x X position\n\t\t * @param int $y Y position\n\t\t * @return int mask\n\t\t */\n\t\t protected function mask6($x, $y) {\n\t\t\treturn ((($x * $y) & 1) + ($x * $y) % 3) & 1;\n\t\t}\n\n\t\t/**\n\t\t * mask7\n\t\t * @param int $x X position\n\t\t * @param int $y Y position\n\t\t * @return int mask\n\t\t */\n\t\t protected function mask7($x, $y) {\n\t\t\treturn ((($x * $y) % 3) + (($x + $y) & 1)) & 1;\n\t\t}\n\n\t\t/**\n\t\t * Return bitmask\n\t\t * @param int $maskNo mask number\n\t\t * @param int $width width\n\t\t * @param array $frame frame\n\t\t * @return array bitmask\n\t\t */\n\t\tprotected function generateMaskNo($maskNo, $width, $frame) {\n\t\t\t$bitMask = array_fill(0, $width, array_fill(0, $width, 0));\n\t\t\tfor ($y=0; $y<$width; ++$y) {\n\t\t\t\tfor ($x=0; $x<$width; ++$x) {\n\t\t\t\t\tif (ord($frame[$y][$x]) & 0x80) {\n\t\t\t\t\t\t$bitMask[$y][$x] = 0;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$maskFunc = call_user_func(array($this, 'mask'.$maskNo), $x, $y);\n\t\t\t\t\t\t$bitMask[$y][$x] = ($maskFunc == 0)?1:0;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $bitMask;\n\t\t}\n\n\t\t/**\n\t\t * makeMaskNo\n\t\t * @param int $maskNo\n\t\t * @param int $width\n\t\t * @param int $s\n\t\t * @param int $d\n\t\t * @param boolean $maskGenOnly\n\t\t * @return int b\n\t\t */\n\t\t protected function makeMaskNo($maskNo, $width, $s, &$d, $maskGenOnly=false) {\n\t\t\t$b = 0;\n\t\t\t$bitMask = array();\n\t\t\t$bitMask = $this->generateMaskNo($maskNo, $width, $s, $d);\n\t\t\tif ($maskGenOnly) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t$d = $s;\n\t\t\tfor ($y=0; $y<$width; ++$y) {\n\t\t\t\tfor ($x=0; $x<$width; ++$x) {\n\t\t\t\t\tif ($bitMask[$y][$x] == 1) {\n\t\t\t\t\t\t$d[$y][$x] = chr(ord($s[$y][$x]) ^ (int)$bitMask[$y][$x]);\n\t\t\t\t\t}\n\t\t\t\t\t$b += (int)(ord($d[$y][$x]) & 1);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $b;\n\t\t}\n\n\t\t/**\n\t\t * makeMask\n\t\t * @param int $width\n\t\t * @param array $frame\n\t\t * @param int $maskNo\n\t\t * @param int $level\n\t\t * @return array mask\n\t\t */\n\t\t protected function makeMask($width, $frame, $maskNo, $level) {\n\t\t\t$masked = array_fill(0, $width, str_repeat(\"\\0\", $width));\n\t\t\t$this->makeMaskNo($maskNo, $width, $frame, $masked);\n\t\t\t$this->writeFormatInformation($width, $masked, $maskNo, $level);\n\t\t\treturn $masked;\n\t\t}\n\n\t\t/**\n\t\t * calcN1N3\n\t\t * @param int $length\n\t\t * @return int demerit\n\t\t */\n\t\t protected function calcN1N3($length) {\n\t\t\t$demerit = 0;\n\t\t\tfor ($i=0; $i<$length; ++$i) {\n\t\t\t\tif ($this->runLength[$i] >= 5) {\n\t\t\t\t\t$demerit += (N1 + ($this->runLength[$i] - 5));\n\t\t\t\t}\n\t\t\t\tif ($i & 1) {\n\t\t\t\t\tif (($i >= 3) AND ($i < ($length-2)) AND ($this->runLength[$i] % 3 == 0)) {\n\t\t\t\t\t\t$fact = (int)($this->runLength[$i] / 3);\n\t\t\t\t\t\tif (($this->runLength[$i-2] == $fact)\n\t\t\t\t\t\t\tAND ($this->runLength[$i-1] == $fact)\n\t\t\t\t\t\t\tAND ($this->runLength[$i+1] == $fact)\n\t\t\t\t\t\t\tAND ($this->runLength[$i+2] == $fact)) {\n\t\t\t\t\t\t\tif (($this->runLength[$i-3] < 0) OR ($this->runLength[$i-3] >= (4 * $fact))) {\n\t\t\t\t\t\t\t\t$demerit += N3;\n\t\t\t\t\t\t\t} elseif ((($i+3) >= $length) OR ($this->runLength[$i+3] >= (4 * $fact))) {\n\t\t\t\t\t\t\t\t$demerit += N3;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $demerit;\n\t\t}\n\n\t\t/**\n\t\t * evaluateSymbol\n\t\t * @param int $width\n\t\t * @param array $frame\n\t\t * @return int demerit\n\t\t */\n\t\t protected function evaluateSymbol($width, $frame) {\n\t\t\t$head = 0;\n\t\t\t$demerit = 0;\n\t\t\tfor ($y=0; $y<$width; ++$y) {\n\t\t\t\t$head = 0;\n\t\t\t\t$this->runLength[0] = 1;\n\t\t\t\t$frameY = $frame[$y];\n\t\t\t\tif ($y > 0) {\n\t\t\t\t\t$frameYM = $frame[$y-1];\n\t\t\t\t}\n\t\t\t\tfor ($x=0; $x<$width; ++$x) {\n\t\t\t\t\tif (($x > 0) AND ($y > 0)) {\n\t\t\t\t\t\t$b22 = ord($frameY[$x]) & ord($frameY[$x-1]) & ord($frameYM[$x]) & ord($frameYM[$x-1]);\n\t\t\t\t\t\t$w22 = ord($frameY[$x]) | ord($frameY[$x-1]) | ord($frameYM[$x]) | ord($frameYM[$x-1]);\n\t\t\t\t\t\tif (($b22 | ($w22 ^ 1)) & 1) {\n\t\t\t\t\t\t\t$demerit += N2;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif (($x == 0) AND (ord($frameY[$x]) & 1)) {\n\t\t\t\t\t\t$this->runLength[0] = -1;\n\t\t\t\t\t\t$head = 1;\n\t\t\t\t\t\t$this->runLength[$head] = 1;\n\t\t\t\t\t} elseif ($x > 0) {\n\t\t\t\t\t\tif ((ord($frameY[$x]) ^ ord($frameY[$x-1])) & 1) {\n\t\t\t\t\t\t\t$head++;\n\t\t\t\t\t\t\t$this->runLength[$head] = 1;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$this->runLength[$head]++;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t$demerit += $this->calcN1N3($head+1);\n\t\t\t}\n\t\t\tfor ($x=0; $x<$width; ++$x) {\n\t\t\t\t$head = 0;\n\t\t\t\t$this->runLength[0] = 1;\n\t\t\t\tfor ($y=0; $y<$width; ++$y) {\n\t\t\t\t\tif (($y == 0) AND (ord($frame[$y][$x]) & 1)) {\n\t\t\t\t\t\t$this->runLength[0] = -1;\n\t\t\t\t\t\t$head = 1;\n\t\t\t\t\t\t$this->runLength[$head] = 1;\n\t\t\t\t\t} elseif ($y > 0) {\n\t\t\t\t\t\tif ((ord($frame[$y][$x]) ^ ord($frame[$y-1][$x])) & 1) {\n\t\t\t\t\t\t\t$head++;\n\t\t\t\t\t\t\t$this->runLength[$head] = 1;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$this->runLength[$head]++;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t$demerit += $this->calcN1N3($head+1);\n\t\t\t}\n\t\t\treturn $demerit;\n\t\t}\n\n\t\t/**\n\t\t * mask\n\t\t * @param int $width\n\t\t * @param array $frame\n\t\t * @param int $level\n\t\t * @return array best mask\n\t\t */\n\t\t protected function mask($width, $frame, $level) {\n\t\t\t$minDemerit = PHP_INT_MAX;\n\t\t\t$bestMaskNum = 0;\n\t\t\t$bestMask = array();\n\t\t\t$checked_masks = array(0, 1, 2, 3, 4, 5, 6, 7);\n\t\t\tif (QR_FIND_FROM_RANDOM !== false) {\n\t\t\t\t$howManuOut = 8 - (QR_FIND_FROM_RANDOM % 9);\n\t\t\t\tfor ($i = 0; $i <  $howManuOut; ++$i) {\n\t\t\t\t\t$remPos = rand (0, count($checked_masks)-1);\n\t\t\t\t\tunset($checked_masks[$remPos]);\n\t\t\t\t\t$checked_masks = array_values($checked_masks);\n\t\t\t\t}\n\t\t\t}\n\t\t\t$bestMask = $frame;\n\t\t\tforeach ($checked_masks as $i) {\n\t\t\t\t$mask = array_fill(0, $width, str_repeat(\"\\0\", $width));\n\t\t\t\t$demerit = 0;\n\t\t\t\t$blacks = 0;\n\t\t\t\t$blacks  = $this->makeMaskNo($i, $width, $frame, $mask);\n\t\t\t\t$blacks += $this->writeFormatInformation($width, $mask, $i, $level);\n\t\t\t\t$blacks  = (int)(100 * $blacks / ($width * $width));\n\t\t\t\t$demerit = (int)((int)(abs($blacks - 50) / 5) * N4);\n\t\t\t\t$demerit += $this->evaluateSymbol($width, $mask);\n\t\t\t\tif ($demerit < $minDemerit) {\n\t\t\t\t\t$minDemerit = $demerit;\n\t\t\t\t\t$bestMask = $mask;\n\t\t\t\t\t$bestMaskNum = $i;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $bestMask;\n\t\t}\n\n\t\t// - - - - - - - - - - - - - - - - - - - - - - - - -\n\n\t\t// QRsplit\n\n\t\t/**\n\t\t * Return true if the character at specified position is a number\n\t\t * @param string $str string\n\t\t * @param int $pos characted position\n\t\t * @return boolean true of false\n\t\t */\n\t\t protected function isdigitat($str, $pos) {\n\t\t\tif ($pos >= strlen($str)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\treturn ((ord($str[$pos]) >= ord('0'))&&(ord($str[$pos]) <= ord('9')));\n\t\t}\n\n\t\t/**\n\t\t * Return true if the character at specified position is an alphanumeric character\n\t\t * @param string $str string\n\t\t * @param int $pos characted position\n\t\t * @return boolean true of false\n\t\t */\n\t\t protected function isalnumat($str, $pos) {\n\t\t\tif ($pos >= strlen($str)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\treturn ($this->lookAnTable(ord($str[$pos])) >= 0);\n\t\t}\n\n\t\t/**\n\t\t * identifyMode\n\t\t * @param int $pos\n\t\t * @return int mode\n\t\t */\n\t\t protected function identifyMode($pos) {\n\t\t\tif ($pos >= strlen($this->dataStr)) {\n\t\t\t\treturn QR_MODE_NL;\n\t\t\t}\n\t\t\t$c = $this->dataStr[$pos];\n\t\t\tif ($this->isdigitat($this->dataStr, $pos)) {\n\t\t\t\treturn QR_MODE_NM;\n\t\t\t} elseif ($this->isalnumat($this->dataStr, $pos)) {\n\t\t\t\treturn QR_MODE_AN;\n\t\t\t} elseif ($this->hint == QR_MODE_KJ) {\n\t\t\t\tif ($pos+1 < strlen($this->dataStr)) {\n\t\t\t\t\t$d = $this->dataStr[$pos+1];\n\t\t\t\t\t$word = (ord($c) << 8) | ord($d);\n\t\t\t\t\tif (($word >= 0x8140 && $word <= 0x9ffc) OR ($word >= 0xe040 && $word <= 0xebbf)) {\n\t\t\t\t\t\treturn QR_MODE_KJ;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn QR_MODE_8B;\n\t\t}\n\n\t\t/**\n\t\t * eatNum\n\t\t * @return int run\n\t\t */\n\t\t protected function eatNum() {\n\t\t\t$ln = $this->lengthIndicator(QR_MODE_NM, $this->version);\n\t\t\t$p = 0;\n\t\t\twhile($this->isdigitat($this->dataStr, $p)) {\n\t\t\t\t$p++;\n\t\t\t}\n\t\t\t$run = $p;\n\t\t\t$mode = $this->identifyMode($p);\n\t\t\tif ($mode == QR_MODE_8B) {\n\t\t\t\t$dif = $this->estimateBitsModeNum($run) + 4 + $ln\n\t\t\t\t+ $this->estimateBitsMode8(1)         // + 4 + l8\n\t\t\t\t- $this->estimateBitsMode8($run + 1); // - 4 - l8\n\t\t\t\tif ($dif > 0) {\n\t\t\t\t\treturn $this->eat8();\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ($mode == QR_MODE_AN) {\n\t\t\t\t$dif = $this->estimateBitsModeNum($run) + 4 + $ln\n\t\t\t\t+ $this->estimateBitsModeAn(1)        // + 4 + la\n\t\t\t\t- $this->estimateBitsModeAn($run + 1);// - 4 - la\n\t\t\t\tif ($dif > 0) {\n\t\t\t\t\treturn $this->eatAn();\n\t\t\t\t}\n\t\t\t}\n\t\t\t$this->items = $this->appendNewInputItem($this->items, QR_MODE_NM, $run, str_split($this->dataStr));\n\t\t\treturn $run;\n\t\t}\n\n\t\t/**\n\t\t * eatAn\n\t\t * @return int run\n\t\t */\n\t\t protected function eatAn() {\n\t\t\t$la = $this->lengthIndicator(QR_MODE_AN,  $this->version);\n\t\t\t$ln = $this->lengthIndicator(QR_MODE_NM, $this->version);\n\t\t\t$p = 0;\n\t\t\twhile($this->isalnumat($this->dataStr, $p)) {\n\t\t\t\tif ($this->isdigitat($this->dataStr, $p)) {\n\t\t\t\t\t$q = $p;\n\t\t\t\t\twhile($this->isdigitat($this->dataStr, $q)) {\n\t\t\t\t\t\t$q++;\n\t\t\t\t\t}\n\t\t\t\t\t$dif = $this->estimateBitsModeAn($p) // + 4 + la\n\t\t\t\t\t+ $this->estimateBitsModeNum($q - $p) + 4 + $ln\n\t\t\t\t\t- $this->estimateBitsModeAn($q); // - 4 - la\n\t\t\t\t\tif ($dif < 0) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$p = $q;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t$p++;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$run = $p;\n\t\t\tif (!$this->isalnumat($this->dataStr, $p)) {\n\t\t\t\t$dif = $this->estimateBitsModeAn($run) + 4 + $la\n\t\t\t\t+ $this->estimateBitsMode8(1) // + 4 + l8\n\t\t\t\t- $this->estimateBitsMode8($run + 1); // - 4 - l8\n\t\t\t\tif ($dif > 0) {\n\t\t\t\t\treturn $this->eat8();\n\t\t\t\t}\n\t\t\t}\n\t\t\t$this->items = $this->appendNewInputItem($this->items, QR_MODE_AN, $run, str_split($this->dataStr));\n\t\t\treturn $run;\n\t\t}\n\n\t\t/**\n\t\t * eatKanji\n\t\t * @return int run\n\t\t */\n\t\t protected function eatKanji() {\n\t\t\t$p = 0;\n\t\t\twhile($this->identifyMode($p) == QR_MODE_KJ) {\n\t\t\t\t$p += 2;\n\t\t\t}\n\t\t\t$this->items = $this->appendNewInputItem($this->items, QR_MODE_KJ, $p, str_split($this->dataStr));\n\t\t\treturn $run;\n\t\t}\n\n\t\t/**\n\t\t * eat8\n\t\t * @return int run\n\t\t */\n\t\t protected function eat8() {\n\t\t\t$la = $this->lengthIndicator(QR_MODE_AN, $this->version);\n\t\t\t$ln = $this->lengthIndicator(QR_MODE_NM, $this->version);\n\t\t\t$p = 1;\n\t\t\t$dataStrLen = strlen($this->dataStr);\n\t\t\twhile($p < $dataStrLen) {\n\t\t\t\t$mode = $this->identifyMode($p);\n\t\t\t\tif ($mode == QR_MODE_KJ) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tif ($mode == QR_MODE_NM) {\n\t\t\t\t\t$q = $p;\n\t\t\t\t\twhile($this->isdigitat($this->dataStr, $q)) {\n\t\t\t\t\t\t$q++;\n\t\t\t\t\t}\n\t\t\t\t\t$dif = $this->estimateBitsMode8($p) // + 4 + l8\n\t\t\t\t\t+ $this->estimateBitsModeNum($q - $p) + 4 + $ln\n\t\t\t\t\t- $this->estimateBitsMode8($q); // - 4 - l8\n\t\t\t\t\tif ($dif < 0) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$p = $q;\n\t\t\t\t\t}\n\t\t\t\t} elseif ($mode == QR_MODE_AN) {\n\t\t\t\t\t$q = $p;\n\t\t\t\t\twhile($this->isalnumat($this->dataStr, $q)) {\n\t\t\t\t\t\t$q++;\n\t\t\t\t\t}\n\t\t\t\t\t$dif = $this->estimateBitsMode8($p)  // + 4 + l8\n\t\t\t\t\t+ $this->estimateBitsModeAn($q - $p) + 4 + $la\n\t\t\t\t\t- $this->estimateBitsMode8($q); // - 4 - l8\n\t\t\t\t\tif ($dif < 0) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$p = $q;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t$p++;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$run = $p;\n\t\t\t$this->items = $this->appendNewInputItem($this->items, QR_MODE_8B, $run, str_split($this->dataStr));\n\t\t\treturn $run;\n\t\t}\n\n\t\t/**\n\t\t * splitString\n\t\t */\n\t\t protected function splitString() {\n\t\t\twhile (strlen($this->dataStr) > 0) {\n\t\t\t\tif ($this->dataStr == '') {\n\t\t\t\t\treturn 0;\n\t\t\t\t}\n\t\t\t\t$mode = $this->identifyMode(0);\n\t\t\t\tswitch ($mode) {\n\t\t\t\t\tcase QR_MODE_NM: {\n\t\t\t\t\t\t$length = $this->eatNum();\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase QR_MODE_AN: {\n\t\t\t\t\t\t$length = $this->eatAn();\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase QR_MODE_KJ: {\n\t\t\t\t\t\tif ($hint == QR_MODE_KJ) {\n\t\t\t\t\t\t\t$length = $this->eatKanji();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$length = $this->eat8();\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tdefault: {\n\t\t\t\t\t\t$length = $this->eat8();\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ($length == 0) {\n\t\t\t\t\treturn 0;\n\t\t\t\t}\n\t\t\t\tif ($length < 0) {\n\t\t\t\t\treturn -1;\n\t\t\t\t}\n\t\t\t\t$this->dataStr = substr($this->dataStr, $length);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * toUpper\n\t\t */\n\t\t protected function toUpper() {\n\t\t\t$stringLen = strlen($this->dataStr);\n\t\t\t$p = 0;\n\t\t\twhile ($p < $stringLen) {\n\t\t\t\t$mode = $this->identifyMode(substr($this->dataStr, $p), $this->hint);\n\t\t\t\tif ($mode == QR_MODE_KJ) {\n\t\t\t\t\t$p += 2;\n\t\t\t\t} else {\n\t\t\t\t\tif ((ord($this->dataStr[$p]) >= ord('a')) AND (ord($this->dataStr[$p]) <= ord('z'))) {\n\t\t\t\t\t\t$this->dataStr[$p] = chr(ord($this->dataStr[$p]) - 32);\n\t\t\t\t\t}\n\t\t\t\t\t$p++;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $this->dataStr;\n\t\t}\n\n\t\t// - - - - - - - - - - - - - - - - - - - - - - - - -\n\n\t\t// QRinputItem\n\n\t\t/**\n\t\t * newInputItem\n\t\t * @param int $mode\n\t\t * @param int $size\n\t\t * @param array $data\n\t\t * @param array $bstream\n\t\t * @return array input item\n\t\t */\n\t\t protected function newInputItem($mode, $size, $data, $bstream=null) {\n\t\t\t$setData = array_slice($data, 0, $size);\n\t\t\tif (count($setData) < $size) {\n\t\t\t\t$setData = array_merge($setData, array_fill(0, ($size - count($setData)), 0));\n\t\t\t}\n\t\t\tif (!$this->check($mode, $size, $setData)) {\n\t\t\t\treturn NULL;\n\t\t\t}\n\t\t\t$inputitem = array();\n\t\t\t$inputitem['mode'] = $mode;\n\t\t\t$inputitem['size'] = $size;\n\t\t\t$inputitem['data'] = $setData;\n\t\t\t$inputitem['bstream'] = $bstream;\n\t\t\treturn $inputitem;\n\t\t}\n\n\t\t/**\n\t\t * encodeModeNum\n\t\t * @param array $inputitem\n\t\t * @param int $version\n\t\t * @return array input item\n\t\t */\n\t\t protected function encodeModeNum($inputitem, $version) {\n\t\t\t$words = (int)($inputitem['size'] / 3);\n\t\t\t$inputitem['bstream'] = array();\n\t\t\t$val = 0x1;\n\t\t\t$inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 4, $val);\n\t\t\t$inputitem['bstream'] = $this->appendNum($inputitem['bstream'], $this->lengthIndicator(QR_MODE_NM, $version), $inputitem['size']);\n\t\t\tfor ($i=0; $i < $words; ++$i) {\n\t\t\t\t$val  = (ord($inputitem['data'][$i*3  ]) - ord('0')) * 100;\n\t\t\t\t$val += (ord($inputitem['data'][$i*3+1]) - ord('0')) * 10;\n\t\t\t\t$val += (ord($inputitem['data'][$i*3+2]) - ord('0'));\n\t\t\t\t$inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 10, $val);\n\t\t\t}\n\t\t\tif ($inputitem['size'] - $words * 3 == 1) {\n\t\t\t\t$val = ord($inputitem['data'][$words*3]) - ord('0');\n\t\t\t\t$inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 4, $val);\n\t\t\t} elseif (($inputitem['size'] - ($words * 3)) == 2) {\n\t\t\t\t$val  = (ord($inputitem['data'][$words*3  ]) - ord('0')) * 10;\n\t\t\t\t$val += (ord($inputitem['data'][$words*3+1]) - ord('0'));\n\t\t\t\t$inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 7, $val);\n\t\t\t}\n\t\t\treturn $inputitem;\n\t\t}\n\n\t\t/**\n\t\t * encodeModeAn\n\t\t * @param array $inputitem\n\t\t * @param int $version\n\t\t * @return array input item\n\t\t */\n\t\t protected function encodeModeAn($inputitem, $version) {\n\t\t\t$words = (int)($inputitem['size'] / 2);\n\t\t\t$inputitem['bstream'] = array();\n\t\t\t$inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 4, 0x02);\n\t\t\t$inputitem['bstream'] = $this->appendNum($inputitem['bstream'], $this->lengthIndicator(QR_MODE_AN, $version), $inputitem['size']); //DEBUG\n\t\t\tfor ($i=0; $i < $words; ++$i) {\n\t\t\t\t$val  = (int)$this->lookAnTable(ord($inputitem['data'][$i*2  ])) * 45;\n\t\t\t\t$val += (int)$this->lookAnTable(ord($inputitem['data'][$i*2+1]));\n\t\t\t\t$inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 11, $val);\n\t\t\t}\n\t\t\tif ($inputitem['size'] & 1) {\n\t\t\t\t$val = $this->lookAnTable(ord($inputitem['data'][($words * 2)]));\n\t\t\t\t$inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 6, $val);\n\t\t\t}\n\t\t\treturn $inputitem;\n\t\t}\n\n\t\t/**\n\t\t * encodeMode8\n\t\t * @param array $inputitem\n\t\t * @param int $version\n\t\t * @return array input item\n\t\t */\n\t\t protected function encodeMode8($inputitem, $version) {\n\t\t\t$inputitem['bstream'] = array();\n\t\t\t$inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 4, 0x4);\n\t\t\t$inputitem['bstream'] = $this->appendNum($inputitem['bstream'], $this->lengthIndicator(QR_MODE_8B, $version), $inputitem['size']);\n\t\t\tfor ($i=0; $i < $inputitem['size']; ++$i) {\n\t\t\t\t$inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 8, ord($inputitem['data'][$i]));\n\t\t\t}\n\t\t\treturn $inputitem;\n\t\t}\n\n\t\t/**\n\t\t * encodeModeKanji\n\t\t * @param array $inputitem\n\t\t * @param int $version\n\t\t * @return array input item\n\t\t */\n\t\t protected function encodeModeKanji($inputitem, $version) {\n\t\t\t$inputitem['bstream'] = array();\n\t\t\t$inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 4, 0x8);\n\t\t\t$inputitem['bstream'] = $this->appendNum($inputitem['bstream'], $this->lengthIndicator(QR_MODE_KJ, $version), (int)($inputitem['size'] / 2));\n\t\t\tfor ($i=0; $i<$inputitem['size']; $i+=2) {\n\t\t\t\t$val = (ord($inputitem['data'][$i]) << 8) | ord($inputitem['data'][$i+1]);\n\t\t\t\tif ($val <= 0x9ffc) {\n\t\t\t\t\t$val -= 0x8140;\n\t\t\t\t} else {\n\t\t\t\t\t$val -= 0xc140;\n\t\t\t\t}\n\t\t\t\t$h = ($val >> 8) * 0xc0;\n\t\t\t\t$val = ($val & 0xff) + $h;\n\t\t\t\t$inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 13, $val);\n\t\t\t}\n\t\t\treturn $inputitem;\n\t\t}\n\n\t\t/**\n\t\t * encodeModeStructure\n\t\t * @param array $inputitem\n\t\t * @return array input item\n\t\t */\n\t\t protected function encodeModeStructure($inputitem) {\n\t\t\t$inputitem['bstream'] = array();\n\t\t\t$inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 4, 0x03);\n\t\t\t$inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 4, ord($inputitem['data'][1]) - 1);\n\t\t\t$inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 4, ord($inputitem['data'][0]) - 1);\n\t\t\t$inputitem['bstream'] = $this->appendNum($inputitem['bstream'], 8, ord($inputitem['data'][2]));\n\t\t\treturn $inputitem;\n\t\t}\n\n\t\t/**\n\t\t * encodeBitStream\n\t\t * @param array $inputitem\n\t\t * @param int $version\n\t\t * @return array input item\n\t\t */\n\t\t protected function encodeBitStream($inputitem, $version) {\n\t\t\t$inputitem['bstream'] = array();\n\t\t\t$words = $this->maximumWords($inputitem['mode'], $version);\n\t\t\tif ($inputitem['size'] > $words) {\n\t\t\t\t$st1 = $this->newInputItem($inputitem['mode'], $words, $inputitem['data']);\n\t\t\t\t$st2 = $this->newInputItem($inputitem['mode'], $inputitem['size'] - $words, array_slice($inputitem['data'], $words));\n\t\t\t\t$st1 = $this->encodeBitStream($st1, $version);\n\t\t\t\t$st2 = $this->encodeBitStream($st2, $version);\n\t\t\t\t$inputitem['bstream'] = array();\n\t\t\t\t$inputitem['bstream'] = $this->appendBitstream($inputitem['bstream'], $st1['bstream']);\n\t\t\t\t$inputitem['bstream'] = $this->appendBitstream($inputitem['bstream'], $st2['bstream']);\n\t\t\t} else {\n\t\t\t\tswitch($inputitem['mode']) {\n\t\t\t\t\tcase QR_MODE_NM: {\n\t\t\t\t\t\t$inputitem = $this->encodeModeNum($inputitem, $version);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase QR_MODE_AN: {\n\t\t\t\t\t\t$inputitem = $this->encodeModeAn($inputitem, $version);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase QR_MODE_8B: {\n\t\t\t\t\t\t$inputitem = $this->encodeMode8($inputitem, $version);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase QR_MODE_KJ: {\n\t\t\t\t\t\t$inputitem = $this->encodeModeKanji($inputitem, $version);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase QR_MODE_ST: {\n\t\t\t\t\t\t$inputitem = $this->encodeModeStructure($inputitem);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tdefault: {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $inputitem;\n\t\t}\n\n\t\t// - - - - - - - - - - - - - - - - - - - - - - - - -\n\n\t\t// QRinput\n\n\t\t/**\n\t\t * Append data to an input object.\n\t\t * The data is copied and appended to the input object.\n\t\t * @param array items input items\n\t\t * @param int $mode encoding mode.\n\t\t * @param int $size size of data (byte).\n\t\t * @param array $data array of input data.\n\t\t * @return items\n\t\t *\n\t\t */\n\t\tprotected function appendNewInputItem($items, $mode, $size, $data) {\n\t\t\t$items[] = $this->newInputItem($mode, $size, $data);\n\t\t\treturn $items;\n\t\t}\n\n\t\t/**\n\t\t * insertStructuredAppendHeader\n\t\t * @param array $items\n\t\t * @param int $size\n\t\t * @param int $index\n\t\t * @param int $parity\n\t\t * @return array items\n\t\t */\n\t\t protected function insertStructuredAppendHeader($items, $size, $index, $parity) {\n\t\t\tif ($size > MAX_STRUCTURED_SYMBOLS) {\n\t\t\t\treturn -1;\n\t\t\t}\n\t\t\tif (($index <= 0) OR ($index > MAX_STRUCTURED_SYMBOLS)) {\n\t\t\t\treturn -1;\n\t\t\t}\n\t\t\t$buf = array($size, $index, $parity);\n\t\t\t$entry = $this->newInputItem(QR_MODE_ST, 3, buf);\n\t\t\tarray_unshift($items, $entry);\n\t\t\treturn $items;\n\t\t}\n\n\t\t/**\n\t\t * calcParity\n\t\t * @param array $items\n\t\t * @return int parity\n\t\t */\n\t\t protected function calcParity($items) {\n\t\t\t$parity = 0;\n\t\t\tforeach ($items as $item) {\n\t\t\t\tif ($item['mode'] != QR_MODE_ST) {\n\t\t\t\t\tfor ($i=$item['size']-1; $i>=0; --$i) {\n\t\t\t\t\t\t$parity ^= $item['data'][$i];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $parity;\n\t\t}\n\n\t\t/**\n\t\t * checkModeNum\n\t\t * @param int $size\n\t\t * @param array $data\n\t\t * @return boolean true or false\n\t\t */\n\t\t protected function checkModeNum($size, $data) {\n\t\t\tfor ($i=0; $i<$size; ++$i) {\n\t\t\t\tif ((ord($data[$i]) < ord('0')) OR (ord($data[$i]) > ord('9'))){\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\n\t\t/**\n\t\t * estimateBitsModeNum\n\t\t * @param int $size\n\t\t * @return int number of bits\n\t\t */\n\t\t protected function estimateBitsModeNum($size) {\n\t\t\t$w = (int)$size / 3;\n\t\t\t$bits = $w * 10;\n\t\t\tswitch($size - $w * 3) {\n\t\t\t\tcase 1: {\n\t\t\t\t\t$bits += 4;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 2: {\n\t\t\t\t\t$bits += 7;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tdefault: {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $bits;\n\t\t}\n\n\t\t/**\n\t\t * Look up the alphabet-numeric convesion table (see JIS X0510:2004, pp.19).\n\t\t * @param int $c character value\n\t\t * @return value\n\t\t */\n\t\tprotected function lookAnTable($c) {\n\t\t\treturn (($c > 127)?-1:$this->anTable[$c]);\n\t\t}\n\n\t\t/**\n\t\t * checkModeAn\n\t\t * @param int $size\n\t\t * @param array $data\n\t\t * @return boolean true or false\n\t\t */\n\t\t protected function checkModeAn($size, $data) {\n\t\t\tfor ($i=0; $i<$size; ++$i) {\n\t\t\t\tif ($this->lookAnTable(ord($data[$i])) == -1) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\n\t\t/**\n\t\t * estimateBitsModeAn\n\t\t * @param int $size\n\t\t * @return int number of bits\n\t\t */\n\t\t protected function estimateBitsModeAn($size) {\n\t\t\t$w = (int)($size / 2);\n\t\t\t$bits = $w * 11;\n\t\t\tif ($size & 1) {\n\t\t\t\t$bits += 6;\n\t\t\t}\n\t\t\treturn $bits;\n\t\t}\n\n\t\t/**\n\t\t * estimateBitsMode8\n\t\t * @param int $size\n\t\t * @return int number of bits\n\t\t */\n\t\t protected function estimateBitsMode8($size) {\n\t\t\treturn $size * 8;\n\t\t}\n\n\t\t/**\n\t\t * estimateBitsModeKanji\n\t\t * @param int $size\n\t\t * @return int number of bits\n\t\t */\n\t\t protected function estimateBitsModeKanji($size) {\n\t\t\treturn (int)(($size / 2) * 13);\n\t\t}\n\n\t\t/**\n\t\t * checkModeKanji\n\t\t * @param int $size\n\t\t * @param array $data\n\t\t * @return boolean true or false\n\t\t */\n\t\t protected function checkModeKanji($size, $data) {\n\t\t\tif ($size & 1) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tfor ($i=0; $i<$size; $i+=2) {\n\t\t\t\t$val = (ord($data[$i]) << 8) | ord($data[$i+1]);\n\t\t\t\tif (($val < 0x8140) OR (($val > 0x9ffc) AND ($val < 0xe040)) OR ($val > 0xebbf)) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\n\t\t/**\n\t\t * Validate the input data.\n\t\t * @param int $mode encoding mode.\n\t\t * @param int $size size of data (byte).\n\t\t * @param array data data to validate\n\t\t * @return boolean true in case of valid data, false otherwise\n\t\t */\n\t\tprotected function check($mode, $size, $data) {\n\t\t\tif ($size <= 0) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tswitch($mode) {\n\t\t\t\tcase QR_MODE_NM: {\n\t\t\t\t\treturn $this->checkModeNum($size, $data);\n\t\t\t\t}\n\t\t\t\tcase QR_MODE_AN: {\n\t\t\t\t\treturn $this->checkModeAn($size, $data);\n\t\t\t\t}\n\t\t\t\tcase QR_MODE_KJ: {\n\t\t\t\t\treturn $this->checkModeKanji($size, $data);\n\t\t\t\t}\n\t\t\t\tcase QR_MODE_8B: {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t\tcase QR_MODE_ST: {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t\tdefault: {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\n\t\t/**\n\t\t * estimateBitStreamSize\n\t\t * @param array $items\n\t\t * @param int $version\n\t\t * @return int bits\n\t\t */\n\t\t protected function estimateBitStreamSize($items, $version) {\n\t\t\t$bits = 0;\n\t\t\tif ($version == 0) {\n\t\t\t\t$version = 1;\n\t\t\t}\n\t\t\tforeach ($items as $item) {\n\t\t\t\tswitch($item['mode']) {\n\t\t\t\t\tcase QR_MODE_NM: {\n\t\t\t\t\t\t$bits = $this->estimateBitsModeNum($item['size']);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase QR_MODE_AN: {\n\t\t\t\t\t\t$bits = $this->estimateBitsModeAn($item['size']);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase QR_MODE_8B: {\n\t\t\t\t\t\t$bits = $this->estimateBitsMode8($item['size']);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase QR_MODE_KJ: {\n\t\t\t\t\t\t$bits = $this->estimateBitsModeKanji($item['size']);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase QR_MODE_ST: {\n\t\t\t\t\t\treturn STRUCTURE_HEADER_BITS;\n\t\t\t\t\t}\n\t\t\t\t\tdefault: {\n\t\t\t\t\t\treturn 0;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t$l = $this->lengthIndicator($item['mode'], $version);\n\t\t\t\t$m = 1 << $l;\n\t\t\t\t$num = (int)(($item['size'] + $m - 1) / $m);\n\t\t\t\t$bits += $num * (4 + $l);\n\t\t\t}\n\t\t\treturn $bits;\n\t\t}\n\n\t\t/**\n\t\t * estimateVersion\n\t\t * @param array $items\n\t\t * @return int version\n\t\t */\n\t\t protected function estimateVersion($items) {\n\t\t\t$version = 0;\n\t\t\t$prev = 0;\n\t\t\tdo {\n\t\t\t\t$prev = $version;\n\t\t\t\t$bits = $this->estimateBitStreamSize($items, $prev);\n\t\t\t\t$version = $this->getMinimumVersion((int)(($bits + 7) / 8), $this->level);\n\t\t\t\tif ($version < 0) {\n\t\t\t\t\treturn -1;\n\t\t\t\t}\n\t\t\t} while ($version > $prev);\n\t\t\treturn $version;\n\t\t}\n\n\t\t/**\n\t\t * lengthOfCode\n\t\t * @param int $mode\n\t\t * @param int $version\n\t\t * @param int $bits\n\t\t * @return int size\n\t\t */\n\t\t protected function lengthOfCode($mode, $version, $bits) {\n\t\t\t$payload = $bits - 4 - $this->lengthIndicator($mode, $version);\n\t\t\tswitch($mode) {\n\t\t\t\tcase QR_MODE_NM: {\n\t\t\t\t\t$chunks = (int)($payload / 10);\n\t\t\t\t\t$remain = $payload - $chunks * 10;\n\t\t\t\t\t$size = $chunks * 3;\n\t\t\t\t\tif ($remain >= 7) {\n\t\t\t\t\t\t$size += 2;\n\t\t\t\t\t} elseif ($remain >= 4) {\n\t\t\t\t\t\t$size += 1;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase QR_MODE_AN: {\n\t\t\t\t\t$chunks = (int)($payload / 11);\n\t\t\t\t\t$remain = $payload - $chunks * 11;\n\t\t\t\t\t$size = $chunks * 2;\n\t\t\t\t\tif ($remain >= 6) {\n\t\t\t\t\t\t++$size;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase QR_MODE_8B: {\n\t\t\t\t\t$size = (int)($payload / 8);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase QR_MODE_KJ: {\n\t\t\t\t\t$size = (int)(($payload / 13) * 2);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase QR_MODE_ST: {\n\t\t\t\t\t$size = (int)($payload / 8);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tdefault: {\n\t\t\t\t\t$size = 0;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$maxsize = $this->maximumWords($mode, $version);\n\t\t\tif ($size < 0) {\n\t\t\t\t$size = 0;\n\t\t\t}\n\t\t\tif ($size > $maxsize) {\n\t\t\t\t$size = $maxsize;\n\t\t\t}\n\t\t\treturn $size;\n\t\t}\n\n\t\t/**\n\t\t * createBitStream\n\t\t * @param array $items\n\t\t * @return array of items and total bits\n\t\t */\n\t\t protected function createBitStream($items) {\n\t\t\t$total = 0;\n\t\t\tforeach ($items as $key => $item) {\n\t\t\t\t$items[$key] = $this->encodeBitStream($item, $this->version);\n\t\t\t\t$bits = count($items[$key]['bstream']);\n\t\t\t\t$total += $bits;\n\t\t\t}\n\t\t\treturn array($items, $total);\n\t\t}\n\n\t\t/**\n\t\t * convertData\n\t\t * @param array $items\n\t\t * @return array items\n\t\t */\n\t\t protected function convertData($items) {\n\t\t\t$ver = $this->estimateVersion($items);\n\t\t\tif ($ver > $this->version) {\n\t\t\t\t$this->version = $ver;\n\t\t\t}\n\t\t\tfor (;;) {\n\t\t\t\t$cbs = $this->createBitStream($items);\n\t\t\t\t$items = $cbs[0];\n\t\t\t\t$bits = $cbs[1];\n\t\t\t\tif ($bits < 0) {\n\t\t\t\t\treturn -1;\n\t\t\t\t}\n\t\t\t\t$ver = $this->getMinimumVersion((int)(($bits + 7) / 8), $this->level);\n\t\t\t\tif ($ver < 0) {\n\t\t\t\t\treturn -1;\n\t\t\t\t} elseif ($ver > $this->version) {\n\t\t\t\t\t$this->version = $ver;\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $items;\n\t\t}\n\n\t\t/**\n\t\t * Append Padding Bit to bitstream\n\t\t * @param array $bstream\n\t\t * @return array bitstream\n\t\t */\n\t\t protected function appendPaddingBit($bstream) {\n\t\t\t$bits = count($bstream);\n\t\t\t$maxwords = $this->getDataLength($this->version, $this->level);\n\t\t\t$maxbits = $maxwords * 8;\n\t\t\tif ($maxbits == $bits) {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t\tif ($maxbits - $bits < 5) {\n\t\t\t\treturn $this->appendNum($bstream, $maxbits - $bits, 0);\n\t\t\t}\n\t\t\t$bits += 4;\n\t\t\t$words = (int)(($bits + 7) / 8);\n\t\t\t$padding = array();\n\t\t\t$padding = $this->appendNum($padding, $words * 8 - $bits + 4, 0);\n\t\t\t$padlen = $maxwords - $words;\n\t\t\tif ($padlen > 0) {\n\t\t\t\t$padbuf = array();\n\t\t\t\tfor ($i=0; $i<$padlen; ++$i) {\n\t\t\t\t\t$padbuf[$i] = ($i&1)?0x11:0xec;\n\t\t\t\t}\n\t\t\t\t$padding = $this->appendBytes($padding, $padlen, $padbuf);\n\t\t\t}\n\t\t\treturn $this->appendBitstream($bstream, $padding);\n\t\t}\n\n\t\t/**\n\t\t * mergeBitStream\n\t\t * @param array $bstream\n\t\t * @return array bitstream\n\t\t */\n\t\t protected function mergeBitStream($items) {\n\t\t\t$items = $this->convertData($items);\n\t\t\t$bstream = array();\n\t\t\tforeach ($items as $item) {\n\t\t\t\t$bstream = $this->appendBitstream($bstream, $item['bstream']);\n\t\t\t}\n\t\t\treturn $bstream;\n\t\t}\n\n\t\t/**\n\t\t * Returns a stream of bits.\n\t\t * @param int $items\n\t\t * @return array padded merged byte stream\n\t\t */\n\t\tprotected function getBitStream($items) {\n\t\t\t$bstream = $this->mergeBitStream($items);\n\t\t\treturn $this->appendPaddingBit($bstream);\n\t\t}\n\n\t\t/**\n\t\t * Pack all bit streams padding bits into a byte array.\n\t\t * @param int $items\n\t\t * @return array padded merged byte stream\n\t\t */\n\t\tprotected function getByteStream($items) {\n\t\t\t$bstream = $this->getBitStream($items);\n\t\t\treturn $this->bitstreamToByte($bstream);\n\t\t}\n\n\t\t// - - - - - - - - - - - - - - - - - - - - - - - - -\n\n\t\t// QRbitstream\n\n\t\t/**\n\t\t * Return an array with zeros\n\t\t * @param int $setLength array size\n\t\t * @return array\n\t\t */\n\t\t protected function allocate($setLength) {\n\t\t\treturn array_fill(0, $setLength, 0);\n\t\t}\n\n\t\t/**\n\t\t * Return new bitstream from number\n\t\t * @param int $bits number of bits\n\t\t * @param int $num number\n\t\t * @return array bitstream\n\t\t */\n\t\t protected function newFromNum($bits, $num) {\n\t\t\t$bstream = $this->allocate($bits);\n\t\t\t$mask = 1 << ($bits - 1);\n\t\t\tfor ($i=0; $i<$bits; ++$i) {\n\t\t\t\tif ($num & $mask) {\n\t\t\t\t\t$bstream[$i] = 1;\n\t\t\t\t} else {\n\t\t\t\t\t$bstream[$i] = 0;\n\t\t\t\t}\n\t\t\t\t$mask = $mask >> 1;\n\t\t\t}\n\t\t\treturn $bstream;\n\t\t}\n\n\t\t/**\n\t\t * Return new bitstream from bytes\n\t\t * @param int $size size\n\t\t * @param array $data bytes\n\t\t * @return array bitstream\n\t\t */\n\t\t protected function newFromBytes($size, $data) {\n\t\t\t$bstream = $this->allocate($size * 8);\n\t\t\t$p=0;\n\t\t\tfor ($i=0; $i<$size; ++$i) {\n\t\t\t\t$mask = 0x80;\n\t\t\t\tfor ($j=0; $j<8; ++$j) {\n\t\t\t\t\tif ($data[$i] & $mask) {\n\t\t\t\t\t\t$bstream[$p] = 1;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$bstream[$p] = 0;\n\t\t\t\t\t}\n\t\t\t\t\t$p++;\n\t\t\t\t\t$mask = $mask >> 1;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $bstream;\n\t\t}\n\n\t\t/**\n\t\t * Append one bitstream to another\n\t\t * @param array $bitstream original bitstream\n\t\t * @param array $append bitstream to append\n\t\t * @return array bitstream\n\t\t */\n\t\t protected function appendBitstream($bitstream, $append) {\n\t\t\tif ((!is_array($append)) OR (count($append) == 0)) {\n\t\t\t\treturn $bitstream;\n\t\t\t}\n\t\t\tif (count($bitstream) == 0) {\n\t\t\t\treturn $append;\n\t\t\t}\n\t\t\treturn array_values(array_merge($bitstream, $append));\n\t\t}\n\n\t\t/**\n\t\t * Append one bitstream created from number to another\n\t\t * @param array $bitstream original bitstream\n\t\t * @param int $bits number of bits\n\t\t * @param int $num number\n\t\t * @return array bitstream\n\t\t */\n\t\t protected function appendNum($bitstream, $bits, $num) {\n\t\t\tif ($bits == 0) {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t\t$b = $this->newFromNum($bits, $num);\n\t\t\treturn $this->appendBitstream($bitstream, $b);\n\t\t}\n\n\t\t/**\n\t\t * Append one bitstream created from bytes to another\n\t\t * @param array $bitstream original bitstream\n\t\t * @param int $size size\n\t\t * @param array $data bytes\n\t\t * @return array bitstream\n\t\t */\n\t\t protected function appendBytes($bitstream, $size, $data) {\n\t\t\tif ($size == 0) {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t\t$b = $this->newFromBytes($size, $data);\n\t\t\treturn $this->appendBitstream($bitstream, $b);\n\t\t}\n\n\t\t/**\n\t\t * Convert bitstream to bytes\n\t\t * @param array $bitstream original bitstream\n\t\t * @return array of bytes\n\t\t */\n\t\t protected function bitstreamToByte($bstream) {\n\t\t\t$size = count($bstream);\n\t\t\tif ($size == 0) {\n\t\t\t\treturn array();\n\t\t\t}\n\t\t\t$data = array_fill(0, (int)(($size + 7) / 8), 0);\n\t\t\t$bytes = (int)($size / 8);\n\t\t\t$p = 0;\n\t\t\tfor ($i=0; $i<$bytes; $i++) {\n\t\t\t\t$v = 0;\n\t\t\t\tfor ($j=0; $j<8; $j++) {\n\t\t\t\t\t$v = $v << 1;\n\t\t\t\t\t$v |= $bstream[$p];\n\t\t\t\t\t$p++;\n\t\t\t\t}\n\t\t\t\t$data[$i] = $v;\n\t\t\t}\n\t\t\tif ($size & 7) {\n\t\t\t\t$v = 0;\n\t\t\t\tfor ($j=0; $j<($size & 7); $j++) {\n\t\t\t\t\t$v = $v << 1;\n\t\t\t\t\t$v |= $bstream[$p];\n\t\t\t\t\t$p++;\n\t\t\t\t}\n\t\t\t\t$data[$bytes] = $v;\n\t\t\t}\n\t\t\treturn $data;\n\t\t}\n\n\t\t// - - - - - - - - - - - - - - - - - - - - - - - - -\n\n\t\t// QRspec\n\n\t\t/**\n\t\t * Replace a value on the array at the specified position\n\t\t * @param array $srctab\n\t\t * @param int $x X position\n\t\t * @param int $y Y position\n\t\t * @param string $repl value to replace\n\t\t * @param int $replLen length of the repl string\n\t\t * @return array srctab\n\t\t */\n\t\t protected function qrstrset($srctab, $x, $y, $repl, $replLen=false) {\n\t\t\t$srctab[$y] = substr_replace($srctab[$y], ($replLen !== false)?substr($repl,0,$replLen):$repl, $x, ($replLen !== false)?$replLen:strlen($repl));\n\t\t\treturn $srctab;\n\t\t}\n\n\t\t/**\n\t\t * Return maximum data code length (bytes) for the version.\n\t\t * @param int $version version\n\t\t * @param int $level error correction level\n\t\t * @return int maximum size (bytes)\n\t\t */\n\t\tprotected function getDataLength($version, $level) {\n\t\t\treturn $this->capacity[$version][QRCAP_WORDS] - $this->capacity[$version][QRCAP_EC][$level];\n\t\t}\n\n\t\t/**\n\t\t * Return maximum error correction code length (bytes) for the version.\n\t\t * @param int $version version\n\t\t * @param int $level error correction level\n\t\t * @return int ECC size (bytes)\n\t\t */\n\t\tprotected function getECCLength($version, $level){\n\t\t\treturn $this->capacity[$version][QRCAP_EC][$level];\n\t\t}\n\n\t\t/**\n\t\t * Return the width of the symbol for the version.\n\t\t * @param int $version version\n\t\t * @return int width\n\t\t */\n\t\tprotected function getWidth($version) {\n\t\t\treturn $this->capacity[$version][QRCAP_WIDTH];\n\t\t}\n\n\t\t/**\n\t\t * Return the numer of remainder bits.\n\t\t * @param int $version version\n\t\t * @return int number of remainder bits\n\t\t */\n\t\tprotected function getRemainder($version) {\n\t\t\treturn $this->capacity[$version][QRCAP_REMINDER];\n\t\t}\n\n\t\t/**\n\t\t * Return a version number that satisfies the input code length.\n\t\t * @param int $size input code length (byte)\n\t\t * @param int $level error correction level\n\t\t * @return int version number\n\t\t */\n\t\tprotected function getMinimumVersion($size, $level) {\n\t\t\tfor ($i=1; $i <= QRSPEC_VERSION_MAX; ++$i) {\n\t\t\t\t$words  = $this->capacity[$i][QRCAP_WORDS] - $this->capacity[$i][QRCAP_EC][$level];\n\t\t\t\tif ($words >= $size) {\n\t\t\t\t\treturn $i;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn -1;\n\t\t}\n\n\t\t/**\n\t\t * Return the size of length indicator for the mode and version.\n\t\t * @param int $mode encoding mode\n\t\t * @param int $version version\n\t\t * @return int the size of the appropriate length indicator (bits).\n\t\t */\n\t\tprotected function lengthIndicator($mode, $version) {\n\t\t\tif ($mode == QR_MODE_ST) {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t\tif ($version <= 9) {\n\t\t\t\t$l = 0;\n\t\t\t} elseif ($version <= 26) {\n\t\t\t\t$l = 1;\n\t\t\t} else {\n\t\t\t\t$l = 2;\n\t\t\t}\n\t\t\treturn $this->lengthTableBits[$mode][$l];\n\t\t}\n\n\t\t/**\n\t\t * Return the maximum length for the mode and version.\n\t\t * @param int $mode encoding mode\n\t\t * @param int $version version\n\t\t * @return int the maximum length (bytes)\n\t\t */\n\t\tprotected function maximumWords($mode, $version) {\n\t\t\tif ($mode == QR_MODE_ST) {\n\t\t\t\treturn 3;\n\t\t\t}\n\t\t\tif ($version <= 9) {\n\t\t\t\t$l = 0;\n\t\t\t} else if ($version <= 26) {\n\t\t\t\t$l = 1;\n\t\t\t} else {\n\t\t\t\t$l = 2;\n\t\t\t}\n\t\t\t$bits = $this->lengthTableBits[$mode][$l];\n\t\t\t$words = (1 << $bits) - 1;\n\t\t\tif ($mode == QR_MODE_KJ) {\n\t\t\t\t$words *= 2; // the number of bytes is required\n\t\t\t}\n\t\t\treturn $words;\n\t\t}\n\n\t\t/**\n\t\t * Return an array of ECC specification.\n\t\t * @param int $version version\n\t\t * @param int $level error correction level\n\t\t * @param array $spec an array of ECC specification contains as following: {# of type1 blocks, # of data code, # of ecc code, # of type2 blocks, # of data code}\n\t\t * @return array spec\n\t\t */\n\t\tprotected function getEccSpec($version, $level, $spec) {\n\t\t\tif (count($spec) < 5) {\n\t\t\t\t$spec = array(0, 0, 0, 0, 0);\n\t\t\t}\n\t\t\t$b1 = $this->eccTable[$version][$level][0];\n\t\t\t$b2 = $this->eccTable[$version][$level][1];\n\t\t\t$data = $this->getDataLength($version, $level);\n\t\t\t$ecc = $this->getECCLength($version, $level);\n\t\t\tif ($b2 == 0) {\n\t\t\t\t$spec[0] = $b1;\n\t\t\t\t$spec[1] = (int)($data / $b1);\n\t\t\t\t$spec[2] = (int)($ecc / $b1);\n\t\t\t\t$spec[3] = 0;\n\t\t\t\t$spec[4] = 0;\n\t\t\t} else {\n\t\t\t\t$spec[0] = $b1;\n\t\t\t\t$spec[1] = (int)($data / ($b1 + $b2));\n\t\t\t\t$spec[2] = (int)($ecc  / ($b1 + $b2));\n\t\t\t\t$spec[3] = $b2;\n\t\t\t\t$spec[4] = $spec[1] + 1;\n\t\t\t}\n\t\t\treturn $spec;\n\t\t}\n\n\t\t/**\n\t\t * Put an alignment marker.\n\t\t * @param array $frame frame\n\t\t * @param int $width width\n\t\t * @param int $ox X center coordinate of the pattern\n\t\t * @param int $oy Y center coordinate of the pattern\n\t\t * @return array frame\n\t\t */\n\t\tprotected function putAlignmentMarker($frame, $ox, $oy) {\n\t\t\t$finder = array(\n\t\t\t\t\"\\xa1\\xa1\\xa1\\xa1\\xa1\",\n\t\t\t\t\"\\xa1\\xa0\\xa0\\xa0\\xa1\",\n\t\t\t\t\"\\xa1\\xa0\\xa1\\xa0\\xa1\",\n\t\t\t\t\"\\xa1\\xa0\\xa0\\xa0\\xa1\",\n\t\t\t\t\"\\xa1\\xa1\\xa1\\xa1\\xa1\"\n\t\t\t\t);\n\t\t\t$yStart = $oy - 2;\n\t\t\t$xStart = $ox - 2;\n\t\t\tfor ($y=0; $y < 5; $y++) {\n\t\t\t\t$frame = $this->qrstrset($frame, $xStart, $yStart+$y, $finder[$y]);\n\t\t\t}\n\t\t\treturn $frame;\n\t\t}\n\n\t\t/**\n\t\t * Put an alignment pattern.\n\t\t * @param int $version version\n\t\t * @param array $fram frame\n\t\t * @param int $width width\n\t\t * @return array frame\n\t\t */\n\t\t protected function putAlignmentPattern($version, $frame, $width) {\n\t\t\tif ($version < 2) {\n\t\t\t\treturn $frame;\n\t\t\t}\n\t\t\t$d = $this->alignmentPattern[$version][1] - $this->alignmentPattern[$version][0];\n\t\t\tif ($d < 0) {\n\t\t\t\t$w = 2;\n\t\t\t} else {\n\t\t\t\t$w = (int)(($width - $this->alignmentPattern[$version][0]) / $d + 2);\n\t\t\t}\n\t\t\tif ($w * $w - 3 == 1) {\n\t\t\t\t$x = $this->alignmentPattern[$version][0];\n\t\t\t\t$y = $this->alignmentPattern[$version][0];\n\t\t\t\t$frame = $this->putAlignmentMarker($frame, $x, $y);\n\t\t\t\treturn $frame;\n\t\t\t}\n\t\t\t$cx = $this->alignmentPattern[$version][0];\n\t\t\t$wo = $w - 1;\n\t\t\tfor ($x=1; $x < $wo; ++$x) {\n\t\t\t\t$frame = $this->putAlignmentMarker($frame, 6, $cx);\n\t\t\t\t$frame = $this->putAlignmentMarker($frame, $cx,  6);\n\t\t\t\t$cx += $d;\n\t\t\t}\n\t\t\t$cy = $this->alignmentPattern[$version][0];\n\t\t\tfor ($y=0; $y < $wo; ++$y) {\n\t\t\t\t$cx = $this->alignmentPattern[$version][0];\n\t\t\t\tfor ($x=0; $x < $wo; ++$x) {\n\t\t\t\t\t$frame = $this->putAlignmentMarker($frame, $cx, $cy);\n\t\t\t\t\t$cx += $d;\n\t\t\t\t}\n\t\t\t\t$cy += $d;\n\t\t\t}\n\t\t\treturn $frame;\n\t\t}\n\n\t\t/**\n\t\t * Return BCH encoded version information pattern that is used for the symbol of version 7 or greater. Use lower 18 bits.\n\t\t * @param int $version version\n\t\t * @return BCH encoded version information pattern\n\t\t */\n\t\tprotected function getVersionPattern($version) {\n\t\t\tif (($version < 7) OR ($version > QRSPEC_VERSION_MAX)) {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t\treturn $this->versionPattern[($version - 7)];\n\t\t}\n\n\t\t/**\n\t\t * Return BCH encoded format information pattern.\n\t\t * @param array $mask\n\t\t * @param int $level error correction level\n\t\t * @return BCH encoded format information pattern\n\t\t */\n\t\tprotected function getFormatInfo($mask, $level) {\n\t\t\tif (($mask < 0) OR ($mask > 7)) {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t\tif (($level < 0) OR ($level > 3)) {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t\treturn $this->formatInfo[$level][$mask];\n\t\t}\n\n\t\t/**\n\t\t * Put a finder pattern.\n\t\t * @param array $frame frame\n\t\t * @param int $width width\n\t\t * @param int $ox X center coordinate of the pattern\n\t\t * @param int $oy Y center coordinate of the pattern\n\t\t * @return array frame\n\t\t */\n\t\tprotected function putFinderPattern($frame, $ox, $oy) {\n\t\t\t$finder = array(\n\t\t\t\"\\xc1\\xc1\\xc1\\xc1\\xc1\\xc1\\xc1\",\n\t\t\t\"\\xc1\\xc0\\xc0\\xc0\\xc0\\xc0\\xc1\",\n\t\t\t\"\\xc1\\xc0\\xc1\\xc1\\xc1\\xc0\\xc1\",\n\t\t\t\"\\xc1\\xc0\\xc1\\xc1\\xc1\\xc0\\xc1\",\n\t\t\t\"\\xc1\\xc0\\xc1\\xc1\\xc1\\xc0\\xc1\",\n\t\t\t\"\\xc1\\xc0\\xc0\\xc0\\xc0\\xc0\\xc1\",\n\t\t\t\"\\xc1\\xc1\\xc1\\xc1\\xc1\\xc1\\xc1\"\n\t\t\t);\n\t\t\tfor ($y=0; $y < 7; $y++) {\n\t\t\t\t$frame = $this->qrstrset($frame, $ox, ($oy + $y), $finder[$y]);\n\t\t\t}\n\t\t\treturn $frame;\n\t\t}\n\n\t\t/**\n\t\t * Return a copy of initialized frame.\n\t\t * @param int $version version\n\t\t * @return Array of unsigned char.\n\t\t */\n\t\tprotected function createFrame($version) {\n\t\t\t$width = $this->capacity[$version][QRCAP_WIDTH];\n\t\t\t$frameLine = str_repeat (\"\\0\", $width);\n\t\t\t$frame = array_fill(0, $width, $frameLine);\n\t\t\t// Finder pattern\n\t\t\t$frame = $this->putFinderPattern($frame, 0, 0);\n\t\t\t$frame = $this->putFinderPattern($frame, $width - 7, 0);\n\t\t\t$frame = $this->putFinderPattern($frame, 0, $width - 7);\n\t\t\t// Separator\n\t\t\t$yOffset = $width - 7;\n\t\t\tfor ($y=0; $y < 7; ++$y) {\n\t\t\t\t$frame[$y][7] = \"\\xc0\";\n\t\t\t\t$frame[$y][$width - 8] = \"\\xc0\";\n\t\t\t\t$frame[$yOffset][7] = \"\\xc0\";\n\t\t\t\t++$yOffset;\n\t\t\t}\n\t\t\t$setPattern = str_repeat(\"\\xc0\", 8);\n\t\t\t$frame = $this->qrstrset($frame, 0, 7, $setPattern);\n\t\t\t$frame = $this->qrstrset($frame, $width-8, 7, $setPattern);\n\t\t\t$frame = $this->qrstrset($frame, 0, $width - 8, $setPattern);\n\t\t\t// Format info\n\t\t\t$setPattern = str_repeat(\"\\x84\", 9);\n\t\t\t$frame = $this->qrstrset($frame, 0, 8, $setPattern);\n\t\t\t$frame = $this->qrstrset($frame, $width - 8, 8, $setPattern, 8);\n\t\t\t$yOffset = $width - 8;\n\t\t\tfor ($y=0; $y < 8; ++$y,++$yOffset) {\n\t\t\t\t$frame[$y][8] = \"\\x84\";\n\t\t\t\t$frame[$yOffset][8] = \"\\x84\";\n\t\t\t}\n\t\t\t// Timing pattern\n\t\t\t$wo = $width - 15;\n\t\t\tfor ($i=1; $i < $wo; ++$i) {\n\t\t\t\t$frame[6][7+$i] = chr(0x90 | ($i & 1));\n\t\t\t\t$frame[7+$i][6] = chr(0x90 | ($i & 1));\n\t\t\t}\n\t\t\t// Alignment pattern\n\t\t\t$frame = $this->putAlignmentPattern($version, $frame, $width);\n\t\t\t// Version information\n\t\t\tif ($version >= 7) {\n\t\t\t\t$vinf = $this->getVersionPattern($version);\n\t\t\t\t$v = $vinf;\n\t\t\t\tfor ($x=0; $x<6; ++$x) {\n\t\t\t\t\tfor ($y=0; $y<3; ++$y) {\n\t\t\t\t\t\t$frame[($width - 11)+$y][$x] = chr(0x88 | ($v & 1));\n\t\t\t\t\t\t$v = $v >> 1;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t$v = $vinf;\n\t\t\t\tfor ($y=0; $y<6; ++$y) {\n\t\t\t\t\tfor ($x=0; $x<3; ++$x) {\n\t\t\t\t\t\t$frame[$y][$x+($width - 11)] = chr(0x88 | ($v & 1));\n\t\t\t\t\t\t$v = $v >> 1;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t// and a little bit...\n\t\t\t$frame[$width - 8][8] = \"\\x81\";\n\t\t\treturn $frame;\n\t\t}\n\n\t\t/**\n\t\t * Set new frame for the specified version.\n\t\t * @param int $version version\n\t\t * @return Array of unsigned char.\n\t\t */\n\t\tprotected function newFrame($version) {\n\t\t\tif (($version < 1) OR ($version > QRSPEC_VERSION_MAX)) {\n\t\t\t\treturn NULL;\n\t\t\t}\n\t\t\tif (!isset($this->frames[$version])) {\n\t\t\t\t$this->frames[$version] = $this->createFrame($version);\n\t\t\t}\n\t\t\tif (is_null($this->frames[$version])) {\n\t\t\t\treturn NULL;\n\t\t\t}\n\t\t\treturn $this->frames[$version];\n\t\t}\n\n\t\t/**\n\t\t * Return block number 0\n\t\t * @param array $spec\n\t\t * @return int value\n\t\t */\n\t\t protected function rsBlockNum($spec) {\n\t\t\treturn ($spec[0] + $spec[3]);\n\t\t}\n\n\t\t/**\n\t\t* Return block number 1\n\t\t * @param array $spec\n\t\t * @return int value\n\t\t */\n\t\t protected function rsBlockNum1($spec) {\n\t\t\treturn $spec[0];\n\t\t}\n\n\t\t/**\n\t\t * Return data codes 1\n\t\t * @param array $spec\n\t\t * @return int value\n\t\t */\n\t\t protected function rsDataCodes1($spec) {\n\t\t\treturn $spec[1];\n\t\t}\n\n\t\t/**\n\t\t * Return ecc codes 1\n\t\t * @param array $spec\n\t\t * @return int value\n\t\t */\n\t\t protected function rsEccCodes1($spec) {\n\t\t\treturn $spec[2];\n\t\t}\n\n\t\t/**\n\t\t * Return block number 2\n\t\t * @param array $spec\n\t\t * @return int value\n\t\t */\n\t\t protected function rsBlockNum2($spec) {\n\t\t\treturn $spec[3];\n\t\t}\n\n\t\t/**\n\t\t * Return data codes 2\n\t\t * @param array $spec\n\t\t * @return int value\n\t\t */\n\t\t protected function rsDataCodes2($spec) {\n\t\t\treturn $spec[4];\n\t\t}\n\n\t\t/**\n\t\t * Return ecc codes 2\n\t\t * @param array $spec\n\t\t * @return int value\n\t\t */\n\t\t protected function rsEccCodes2($spec) {\n\t\t\treturn $spec[2];\n\t\t}\n\n\t\t/**\n\t\t * Return data length\n\t\t * @param array $spec\n\t\t * @return int value\n\t\t */\n\t\t protected function rsDataLength($spec) {\n\t\t\treturn ($spec[0] * $spec[1]) + ($spec[3] * $spec[4]);\n\t\t}\n\n\t\t/**\n\t\t * Return ecc length\n\t\t * @param array $spec\n\t\t * @return int value\n\t\t */\n\t\t protected function rsEccLength($spec) {\n\t\t\treturn ($spec[0] + $spec[3]) * $spec[2];\n\t\t}\n\n\t\t// - - - - - - - - - - - - - - - - - - - - - - - - -\n\n\t\t// QRrs\n\n\t\t/**\n\t\t * Initialize a Reed-Solomon codec and add it to existing rsitems\n\t\t * @param int $symsize symbol size, bits\n\t\t * @param int $gfpoly  Field generator polynomial coefficients\n\t\t * @param int $fcr  first root of RS code generator polynomial, index form\n\t\t * @param int $prim  primitive element to generate polynomial roots\n\t\t * @param int $nroots RS code generator polynomial degree (number of roots)\n\t\t * @param int $pad  padding bytes at front of shortened block\n\t\t * @return array Array of RS values:<ul><li>mm = Bits per symbol;</li><li>nn = Symbols per block;</li><li>alpha_to = log lookup table array;</li><li>index_of = Antilog lookup table array;</li><li>genpoly = Generator polynomial array;</li><li>nroots = Number of generator;</li><li>roots = number of parity symbols;</li><li>fcr = First consecutive root, index form;</li><li>prim = Primitive element, index form;</li><li>iprim = prim-th root of 1, index form;</li><li>pad = Padding bytes in shortened block;</li><li>gfpoly</ul>.\n\t\t */\n\t\t protected function init_rs($symsize, $gfpoly, $fcr, $prim, $nroots, $pad) {\n\t\t\tforeach ($this->rsitems as $rs) {\n\t\t\t\tif (($rs['pad'] != $pad) OR ($rs['nroots'] != $nroots) OR ($rs['mm'] != $symsize)\n\t\t\t\t\tOR ($rs['gfpoly'] != $gfpoly) OR ($rs['fcr'] != $fcr) OR ($rs['prim'] != $prim)) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\treturn $rs;\n\t\t\t}\n\t\t\t$rs = $this->init_rs_char($symsize, $gfpoly, $fcr, $prim, $nroots, $pad);\n\t\t\tarray_unshift($this->rsitems, $rs);\n\t\t\treturn $rs;\n\t\t}\n\n\t\t// - - - - - - - - - - - - - - - - - - - - - - - - -\n\n\t\t// QRrsItem\n\n\t\t/**\n\t\t * modnn\n\t\t * @param array RS values\n\t\t * @param int $x X position\n\t\t * @return int X osition\n\t\t */\n\t\t protected function modnn($rs, $x) {\n\t\t\twhile ($x >= $rs['nn']) {\n\t\t\t\t$x -= $rs['nn'];\n\t\t\t\t$x = ($x >> $rs['mm']) + ($x & $rs['nn']);\n\t\t\t}\n\t\t\treturn $x;\n\t\t}\n\n\t\t/**\n\t\t * Initialize a Reed-Solomon codec and returns an array of values.\n\t\t * @param int $symsize symbol size, bits\n\t\t * @param int $gfpoly  Field generator polynomial coefficients\n\t\t * @param int $fcr  first root of RS code generator polynomial, index form\n\t\t * @param int $prim  primitive element to generate polynomial roots\n\t\t * @param int $nroots RS code generator polynomial degree (number of roots)\n\t\t * @param int $pad  padding bytes at front of shortened block\n\t\t * @return array Array of RS values:<ul><li>mm = Bits per symbol;</li><li>nn = Symbols per block;</li><li>alpha_to = log lookup table array;</li><li>index_of = Antilog lookup table array;</li><li>genpoly = Generator polynomial array;</li><li>nroots = Number of generator;</li><li>roots = number of parity symbols;</li><li>fcr = First consecutive root, index form;</li><li>prim = Primitive element, index form;</li><li>iprim = prim-th root of 1, index form;</li><li>pad = Padding bytes in shortened block;</li><li>gfpoly</ul>.\n\t\t */\n\t\tprotected function init_rs_char($symsize, $gfpoly, $fcr, $prim, $nroots, $pad) {\n\t\t\t// Based on Reed solomon encoder by Phil Karn, KA9Q (GNU-LGPLv2)\n\t\t\t$rs = null;\n\t\t\t// Check parameter ranges\n\t\t\tif (($symsize < 0) OR ($symsize > 8)) {\n\t\t\t\treturn $rs;\n\t\t\t}\n\t\t\tif (($fcr < 0) OR ($fcr >= (1<<$symsize))) {\n\t\t\t\treturn $rs;\n\t\t\t}\n\t\t\tif (($prim <= 0) OR ($prim >= (1<<$symsize))) {\n\t\t\t\treturn $rs;\n\t\t\t}\n\t\t\tif (($nroots < 0) OR ($nroots >= (1<<$symsize))) {\n\t\t\t\treturn $rs;\n\t\t\t}\n\t\t\tif (($pad < 0) OR ($pad >= ((1<<$symsize) -1 - $nroots))) {\n\t\t\t\treturn $rs;\n\t\t\t}\n\t\t\t$rs = array();\n\t\t\t$rs['mm'] = $symsize;\n\t\t\t$rs['nn'] = (1 << $symsize) - 1;\n\t\t\t$rs['pad'] = $pad;\n\t\t\t$rs['alpha_to'] = array_fill(0, ($rs['nn'] + 1), 0);\n\t\t\t$rs['index_of'] = array_fill(0, ($rs['nn'] + 1), 0);\n\t\t\t// PHP style macro replacement ;)\n\t\t\t$NN =& $rs['nn'];\n\t\t\t$A0 =& $NN;\n\t\t\t// Generate Galois field lookup tables\n\t\t\t$rs['index_of'][0] = $A0; // log(zero) = -inf\n\t\t\t$rs['alpha_to'][$A0] = 0; // alpha**-inf = 0\n\t\t\t$sr = 1;\n\t\t\tfor ($i=0; $i<$rs['nn']; ++$i) {\n\t\t\t\t$rs['index_of'][$sr] = $i;\n\t\t\t\t$rs['alpha_to'][$i] = $sr;\n\t\t\t\t$sr <<= 1;\n\t\t\t\tif ($sr & (1 << $symsize)) {\n\t\t\t\t\t$sr ^= $gfpoly;\n\t\t\t\t}\n\t\t\t\t$sr &= $rs['nn'];\n\t\t\t}\n\t\t\tif ($sr != 1) {\n\t\t\t\t// field generator polynomial is not primitive!\n\t\t\t\treturn NULL;\n\t\t\t}\n\t\t\t// Form RS code generator polynomial from its roots\n\t\t\t$rs['genpoly'] = array_fill(0, ($nroots + 1), 0);\n\t\t\t$rs['fcr'] = $fcr;\n\t\t\t$rs['prim'] = $prim;\n\t\t\t$rs['nroots'] = $nroots;\n\t\t\t$rs['gfpoly'] = $gfpoly;\n\t\t\t// Find prim-th root of 1, used in decoding\n\t\t\tfor ($iprim=1; ($iprim % $prim) != 0; $iprim += $rs['nn']) {\n\t\t\t\t; // intentional empty-body loop!\n\t\t\t}\n\t\t\t$rs['iprim'] = (int)($iprim / $prim);\n\t\t\t$rs['genpoly'][0] = 1;\n\n\n\t\t\tfor ($i = 0,$root=$fcr*$prim; $i < $nroots; $i++, $root += $prim) {\n\t\t\t\t$rs['genpoly'][$i+1] = 1;\n\t\t\t\t// Multiply rs->genpoly[] by  @**(root + x)\n\t\t\t\tfor ($j = $i; $j > 0; --$j) {\n\t\t\t\t\tif ($rs['genpoly'][$j] != 0) {\n\t\t\t\t\t\t$rs['genpoly'][$j] = $rs['genpoly'][$j-1] ^ $rs['alpha_to'][$this->modnn($rs, $rs['index_of'][$rs['genpoly'][$j]] + $root)];\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$rs['genpoly'][$j] = $rs['genpoly'][$j-1];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// rs->genpoly[0] can never be zero\n\t\t\t\t$rs['genpoly'][0] = $rs['alpha_to'][$this->modnn($rs, $rs['index_of'][$rs['genpoly'][0]] + $root)];\n\t\t\t}\n\t\t\t// convert rs->genpoly[] to index form for quicker encoding\n\t\t\tfor ($i = 0; $i <= $nroots; ++$i) {\n\t\t\t\t$rs['genpoly'][$i] = $rs['index_of'][$rs['genpoly'][$i]];\n\t\t\t}\n\t\t\treturn $rs;\n\t\t}\n\n\t\t/**\n\t\t * Encode a Reed-Solomon codec and returns the parity array\n\t\t * @param array $rs RS values\n\t\t * @param array $data data\n\t\t * @param array $parity parity\n\t\t * @return parity array\n\t\t */\n\t\t protected function encode_rs_char($rs, $data, $parity) {\n\t\t\t$MM       =& $rs['mm']; // bits per symbol\n\t\t\t$NN       =& $rs['nn']; // the total number of symbols in a RS block\n\t\t\t$ALPHA_TO =& $rs['alpha_to']; // the address of an array of NN elements to convert Galois field elements in index (log) form to polynomial form\n\t\t\t$INDEX_OF =& $rs['index_of']; // the address of an array of NN elements to convert Galois field elements in polynomial form to index (log) form\n\t\t\t$GENPOLY  =& $rs['genpoly']; // an array of NROOTS+1 elements containing the generator polynomial in index form\n\t\t\t$NROOTS   =& $rs['nroots']; // the number of roots in the RS code generator polynomial, which is the same as the number of parity symbols in a block\n\t\t\t$FCR      =& $rs['fcr']; // first consecutive root, index form\n\t\t\t$PRIM     =& $rs['prim']; // primitive element, index form\n\t\t\t$IPRIM    =& $rs['iprim']; // prim-th root of 1, index form\n\t\t\t$PAD      =& $rs['pad']; // the number of pad symbols in a block\n\t\t\t$A0       =& $NN;\n\t\t\t$parity = array_fill(0, $NROOTS, 0);\n\t\t\tfor ($i=0; $i < ($NN - $NROOTS - $PAD); $i++) {\n\t\t\t\t$feedback = $INDEX_OF[$data[$i] ^ $parity[0]];\n\t\t\t\tif ($feedback != $A0) {\n\t\t\t\t\t// feedback term is non-zero\n\t\t\t\t\t// This line is unnecessary when GENPOLY[NROOTS] is unity, as it must\n\t\t\t\t\t// always be for the polynomials constructed by init_rs()\n\t\t\t\t\t$feedback = $this->modnn($rs, $NN - $GENPOLY[$NROOTS] + $feedback);\n\t\t\t\t\tfor ($j=1; $j < $NROOTS; ++$j) {\n\t\t\t\t\t$parity[$j] ^= $ALPHA_TO[$this->modnn($rs, $feedback + $GENPOLY[($NROOTS - $j)])];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// Shift\n\t\t\t\tarray_shift($parity);\n\t\t\t\tif ($feedback != $A0) {\n\t\t\t\t\tarray_push($parity, $ALPHA_TO[$this->modnn($rs, $feedback + $GENPOLY[0])]);\n\t\t\t\t} else {\n\t\t\t\t\tarray_push($parity, 0);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $parity;\n\t\t}\n\n\t} // end QRcode class\n\n} // END OF \"class_exists QRcode\"\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/tcpdf.crt",
    "content": "Bag Attributes\n    localKeyID: 7B AB 1B 7A BE 4C 85 C0 1A A6 DC 59 3F 79 48 C3 93 38 68 9C \nsubject=/CN=TCPDF DEMO/O=TCPDF/OU=DEMO/emailAddress=you@example.com/C=IT\nissuer=/CN=TCPDF DEMO/O=TCPDF/OU=DEMO/emailAddress=you@example.com/C=IT\n-----BEGIN CERTIFICATE-----\nMIIC1TCCAj6gAwIBAgIKkehOL/XGkB5cjjANBgkqhkiG9w0BAQUFADBhMRMwEQYD\nVQQDEwpUQ1BERiBERU1PMQ4wDAYDVQQKEwVUQ1BERjENMAsGA1UECxMEREVNTzEe\nMBwGCSqGSIb3DQEJARYPeW91QGV4YW1wbGUuY29tMQswCQYDVQQGEwJJVDAeFw0w\nOTA4MjExMjU0NDhaFw0xNDA4MjExMjU0NDhaMGExEzARBgNVBAMTClRDUERGIERF\nTU8xDjAMBgNVBAoTBVRDUERGMQ0wCwYDVQQLEwRERU1PMR4wHAYJKoZIhvcNAQkB\nFg95b3VAZXhhbXBsZS5jb20xCzAJBgNVBAYTAklUMIGfMA0GCSqGSIb3DQEBAQUA\nA4GNADCBiQKBgQDAqIL0uGKmTR98Lxx2vEEE1OGKkMXFo0JViitALe7Onhxxqx0H\nXMUDKF5mvEVu1rcvh7/oAnAfrCuEpL/up3u1mQCgBE7WXBnFFE/AE3jCksh9OkS0\nZ0Xj9woN5bzxRDsGoPiOu/4xzk5qSEXt8jf2Ep90QuNkqLIRT4swAzpDbwIDAQAB\no4GTMIGQMDcGA1UdEgQwMC6gEQYDVQQDDApUQ1BERiBERU1PoAwGA1UECgwFVENQ\nREagCwYDVQQLDARERU1PMDcGA1UdEQQwMC6gEQYDVQQDDApUQ1BERiBERU1PoAwG\nA1UECgwFVENQREagCwYDVQQLDARERU1PMA8GCSqGSIb3LwEBCgQCBQAwCwYDVR0P\nBAQDAgSQMA0GCSqGSIb3DQEBBQUAA4GBAEhTQfqX3ZNdHmpTLDbIj22RHXii2roE\nOavCbu9WsHoWpva0qSd+yIoD594VHvYAd29sfzDfiN+7W0aiZfDhq5jpaSQMVlN8\nRGYMupbHY/+a9Gz1wqxnR84mlTtIkZVRYAhsfPwy6M1BEjdMqfdh9h40JIdkdjtb\n8faTCfXPePWQ\n-----END CERTIFICATE-----\nBag Attributes\n    localKeyID: 7B AB 1B 7A BE 4C 85 C0 1A A6 DC 59 3F 79 48 C3 93 38 68 9C \nKey Attributes: <No Attributes>\n-----BEGIN RSA PRIVATE KEY-----\nMIICXQIBAAKBgQDAqIL0uGKmTR98Lxx2vEEE1OGKkMXFo0JViitALe7Onhxxqx0H\nXMUDKF5mvEVu1rcvh7/oAnAfrCuEpL/up3u1mQCgBE7WXBnFFE/AE3jCksh9OkS0\nZ0Xj9woN5bzxRDsGoPiOu/4xzk5qSEXt8jf2Ep90QuNkqLIRT4swAzpDbwIDAQAB\nAoGAXc+wNMmz/5Z+RlIKYia44klmqbplEx+0JULqXI4BQsrqvs67i+I4bJkznoL+\nrEIRYSuQ3sCRKFsFtckjTGpxadnxkB+uwGKc6pZChv99BFX6HFR4hgBlT/BBRAQA\nhMDlM2JIRr4S4SMVXR7MHwGMUf9mUeanGLR3ZWtU3aXJrIECQQD7OaYUVYNEEnM9\nuXyjm22CuHyqyEf5gb13sK0uQty67547yJTMUQZd/sQc9KGwhzBbhrob2LO2jAhh\nS+f+NSRnAkEAxFHm3fMI5RgXmswxlGm4QW07a/Ueo7ZJG6xjTkFXluJhd+XHswRD\ndQIO3zG9nGjNUoeMrPhXhPvKqFc2F9RDuQJAQBEGin74N77gxqfr4ik79y8nE8J5\noGZ2s/RJZdfFRKLg3mwbjjNHhWb4Ck5UgZkoOt8TzRApXG8/n9hktE5HFwJBALur\nM5AueO1Pl5kB489lNJ9OxUQRYUXMxpxuscuoCQwSwmv0O2+0/qtG2WKhUQnI4aYo\nL+FV0YwtivBb1jj3T/kCQQDIWOxq8eRowdaMzvJpRUHFgMcf1AVZExKyrugwYOWd\nKNsDxC4KaQOsPt8iT/Ulo4g/MJC0HolCOhWibKmR9Ayl\n-----END RSA PRIVATE KEY-----\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/tcpdf.php",
    "content": "<?php\n//============================================================+\n// File name   : tcpdf.php\n// Begin       : 2002-08-03\n// Last Update : 2010-05-06\n// Author      : Nicola Asuni - info@tecnick.com - http://www.tcpdf.org\n// Version     : 5.0.002\n// License     : GNU LGPL (http://www.gnu.org/copyleft/lesser.html)\n// \t----------------------------------------------------------------------------\n//  Copyright (C) 2002-2010  Nicola Asuni - Tecnick.com S.r.l.\n//\n// \tThis program is free software: you can redistribute it and/or modify\n// \tit under the terms of the GNU Lesser General Public License as published by\n// \tthe Free Software Foundation, either version 2.1 of the License, or\n// \t(at your option) any later version.\n//\n// \tThis program is distributed in the hope that it will be useful,\n// \tbut WITHOUT ANY WARRANTY; without even the implied warranty of\n// \tMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n// \tGNU Lesser General Public License for more details.\n//\n// \tYou should have received a copy of the GNU Lesser General Public License\n// \talong with this program.  If not, see <http://www.gnu.org/licenses/>.\n//\n// \tSee LICENSE.TXT file for more information.\n//  ----------------------------------------------------------------------------\n//\n// Description : This is a PHP class for generating PDF documents without\n//               requiring external extensions.\n//\n// NOTE:\n// This class was originally derived in 2002 from the Public\n// Domain FPDF class by Olivier Plathey (http://www.fpdf.org),\n// but now is almost entirely rewritten.\n//\n// Main features:\n//  * no external libraries are required for the basic functions;\n//  * all ISO page formats, custom page formats, custom margins and units of measure;\n//  * UTF-8 Unicode and Right-To-Left languages;\n//  * TrueTypeUnicode, OpenTypeUnicode, TrueType, OpenType, Type1 and CID-0 fonts;\n//  * methods to publish some XHTML code, Javascript and Forms;\n//  * images, graphic (geometric figures) and transformation methods;\n//  * supports JPEG, PNG and SVG images natively, all images supported by GD (GD, GD2, GD2PART, GIF, JPEG, PNG, BMP, XBM, XPM) and all images supported via ImagMagick (http://www.imagemagick.org/www/formats.html)\n//  * 1D and 2D barcodes: CODE 39, ANSI MH10.8M-1983, USD-3, 3 of 9, CODE 93, USS-93, Standard 2 of 5, Interleaved 2 of 5, CODE 128 A/B/C, 2 and 5 Digits UPC-Based Extention, EAN 8, EAN 13, UPC-A, UPC-E, MSI, POSTNET, PLANET, RMS4CC (Royal Mail 4-state Customer Code), CBC (Customer Bar Code), KIX (Klant index - Customer index), Intelligent Mail Barcode, Onecode, USPS-B-3200, CODABAR, CODE 11, PHARMACODE, PHARMACODE TWO-TRACKS, QR-Code;\n//  * Grayscale, RGB, CMYK, Spot Colors and Transparencies;\n//  * automatic page header and footer management;\n//  * document encryption and digital signature certifications;\n//  * transactions to UNDO commands;\n//  * PDF annotations, including links, text and file attachments;\n//  * text rendering modes (fill, stroke and clipping);\n//  * multiple columns mode;\n//  * bookmarks and table of content;\n//  * text hyphenation;\n//  * automatic page break, line break and text alignments including justification;\n//  * automatic page numbering and page groups;\n//  * move and delete pages;\n//  * page compression (requires php-zlib extension);\n//\n// -----------------------------------------------------------\n// THANKS TO:\n//\n// Olivier Plathey (http://www.fpdf.org) for original FPDF.\n// Efthimios Mavrogeorgiadis (emavro@yahoo.com) for suggestions on RTL language support.\n// Klemen Vodopivec (http://www.fpdf.de/downloads/addons/37/) for Encryption algorithm.\n// Warren Sherliker (wsherliker@gmail.com) for better image handling.\n// dullus for text Justification.\n// Bob Vincent (pillarsdotnet@users.sourceforge.net) for <li> value attribute.\n// Patrick Benny for text stretch suggestion on Cell().\n// Johannes Gntert for JavaScript support.\n// Denis Van Nuffelen for Dynamic Form.\n// Jacek Czekaj for multibyte justification\n// Anthony Ferrara for the reintroduction of legacy image methods.\n// Sourceforge user 1707880 (hucste) for line-trough mode.\n// Larry Stanbery for page groups.\n// Martin Hall-May for transparency.\n// Aaron C. Spike for Polycurve method.\n// Mohamad Ali Golkar, Saleh AlMatrafe, Charles Abbott for Arabic and Persian support.\n// Moritz Wagner and Andreas Wurmser for graphic functions.\n// Andrew Whitehead for core fonts support.\n// Esteban Jol Marn for OpenType font conversion.\n// Teus Hagen for several suggestions and fixes.\n// Yukihiro Nakadaira for CID-0 CJK fonts fixes.\n// Kosmas Papachristos for some CSS improvements.\n// Marcel Partap for some fixes.\n// Won Kyu Park for several suggestions, fixes and patches.\n// Dominik Dzienia for QR-code support.\n// Laurent Minguet for some suggestions.\n// Anyone that has reported a bug or sent a suggestion.\n//============================================================+\n\n/**\n * This is a PHP class for generating PDF documents without requiring external extensions.<br>\n * TCPDF project (http://www.tcpdf.org) was originally derived in 2002 from the Public Domain FPDF class by Olivier Plathey (http://www.fpdf.org), but now is almost entirely rewritten.<br>\n * <h3>TCPDF main features are:</h3>\n * <ul>\n * <li>no external libraries are required for the basic functions;</li>\n * <li>all ISO page formats, custom page formats, custom margins and units of measure;</li>\n * <li>UTF-8 Unicode and Right-To-Left languages;</li>\n * <li>TrueTypeUnicode, OpenTypeUnicode, TrueType, OpenType, Type1 and CID-0 fonts;</li>\n * <li>methods to publish some XHTML code, Javascript and Forms;</li>\n * <li>images, graphic (geometric figures) and transformation methods;\n * <li>supports JPEG, PNG and SVG images natively, all images supported by GD (GD, GD2, GD2PART, GIF, JPEG, PNG, BMP, XBM, XPM) and all images supported via ImagMagick (http://www.imagemagick.org/www/formats.html)</li>\n * <li>1D and 2D barcodes: CODE 39, ANSI MH10.8M-1983, USD-3, 3 of 9, CODE 93, USS-93, Standard 2 of 5, Interleaved 2 of 5, CODE 128 A/B/C, 2 and 5 Digits UPC-Based Extention, EAN 8, EAN 13, UPC-A, UPC-E, MSI, POSTNET, PLANET, RMS4CC (Royal Mail 4-state Customer Code), CBC (Customer Bar Code), KIX (Klant index - Customer index), Intelligent Mail Barcode, Onecode, USPS-B-3200, CODABAR, CODE 11, PHARMACODE, PHARMACODE TWO-TRACKS, QR-Code;</li>\n * <li>Grayscale, RGB, CMYK, Spot Colors and Transparencies;</li>\n * <li>automatic page header and footer management;</li>\n * <li>document encryption and digital signature certifications;</li>\n * <li>transactions to UNDO commands;</li>\n * <li>PDF annotations, including links, text and file attachments;</li>\n * <li>text rendering modes (fill, stroke and clipping);</li>\n * <li>multiple columns mode;</li>\n * <li>bookmarks and table of content;</li>\n * <li>text hyphenation;</li>\n * <li>automatic page break, line break and text alignments including justification;</li>\n * <li>automatic page numbering and page groups;</li>\n * <li>move and delete pages;</li>\n * <li>page compression (requires php-zlib extension);</li>\n * </ul>\n * Tools to encode your unicode fonts are on fonts/utils directory.</p>\n * @package com.tecnick.tcpdf\n * @abstract Class for generating PDF files on-the-fly without requiring external extensions.\n * @author Nicola Asuni\n * @copyright 2002-2010 Nicola Asuni - Tecnick.com S.r.l (www.tecnick.com) Via Della Pace, 11 - 09044 - Quartucciu (CA) - ITALY - www.tecnick.com - info@tecnick.com\n * @link http://www.tcpdf.org\n * @license http://www.gnu.org/copyleft/lesser.html LGPL\n * @version 5.0.002\n */\n\n/**\n * main configuration file\n */\nrequire_once(dirname(__FILE__).'/config/tcpdf_config.php');\n\n// includes some support files\n\n/**\n * unicode data\n */\nrequire_once(dirname(__FILE__).'/unicode_data.php');\n\n/**\n * html colors table\n */\nrequire_once(dirname(__FILE__).'/htmlcolors.php');\n\nif (!class_exists('TCPDF', false)) {\n\t/**\n\t * define default PDF document producer\n\t */\n\tdefine('PDF_PRODUCER', 'TCPDF 5.0.002 (http://www.tcpdf.org)');\n\n\t/**\n\t* This is a PHP class for generating PDF documents without requiring external extensions.<br>\n\t* TCPDF project (http://www.tcpdf.org) has been originally derived in 2002 from the Public Domain FPDF class by Olivier Plathey (http://www.fpdf.org), but now is almost entirely rewritten.<br>\n\t* @name TCPDF\n\t* @package com.tecnick.tcpdf\n\t* @version 5.0.002\n\t* @author Nicola Asuni - info@tecnick.com\n\t* @link http://www.tcpdf.org\n\t* @license http://www.gnu.org/copyleft/lesser.html LGPL\n\t*/\n\tclass TCPDF {\n\n\t\t// protected or Protected properties\n\n\t\t/**\n\t\t * @var current page number\n\t\t * @access protected\n\t\t */\n\t\tprotected $page;\n\n\t\t/**\n\t\t * @var current object number\n\t\t * @access protected\n\t\t */\n\t\tprotected $n;\n\n\t\t/**\n\t\t * @var array of object offsets\n\t\t * @access protected\n\t\t */\n\t\tprotected $offsets;\n\n\t\t/**\n\t\t * @var buffer holding in-memory PDF\n\t\t * @access protected\n\t\t */\n\t\tprotected $buffer;\n\n\t\t/**\n\t\t * @var array containing pages\n\t\t * @access protected\n\t\t */\n\t\tprotected $pages = array();\n\n\t\t/**\n\t\t * @var current document state\n\t\t * @access protected\n\t\t */\n\t\tprotected $state;\n\n\t\t/**\n\t\t * @var compression flag\n\t\t * @access protected\n\t\t */\n\t\tprotected $compress;\n\n\t\t/**\n\t\t * @var current page orientation (P = Portrait, L = Landscape)\n\t\t * @access protected\n\t\t */\n\t\tprotected $CurOrientation;\n\n\t\t/**\n\t\t * @var array that stores page dimensions and graphic status.<ul><li>$this->pagedim[$this->page]['w'] => page_width_in_points</li><li>$this->pagedim[$this->page]['h'] => height in points</li><li>$this->pagedim[$this->page]['wk'] => page_width_in_points</li><li>$this->pagedim[$this->page]['hk'] => height</li><li>$this->pagedim[$this->page]['tm'] => top_margin</li><li>$this->pagedim[$this->page]['bm'] => bottom_margin</li><li>$this->pagedim[$this->page]['lm'] => left_margin</li><li>$this->pagedim[$this->page]['rm'] => right_margin</li><li>$this->pagedim[$this->page]['pb'] => auto_page_break</li><li>$this->pagedim[$this->page]['or'] => page_orientation</li><li>$this->pagedim[$this->page]['olm'] => original_left_margin</li><li>$this->pagedim[$this->page]['orm'] => original_right_margin</li></ul>\n\t\t * @access protected\n\t\t */\n\t\tprotected $pagedim = array();\n\n\t\t/**\n\t\t * @var scale factor (number of points in user unit)\n\t\t * @access protected\n\t\t */\n\t\tprotected $k;\n\n\t\t/**\n\t\t * @var width of page format in points\n\t\t * @access protected\n\t\t */\n\t\tprotected $fwPt;\n\n\t\t/**\n\t\t * @var height of page format in points\n\t\t * @access protected\n\t\t */\n\t\tprotected $fhPt;\n\n\t\t/**\n\t\t * @var current width of page in points\n\t\t * @access protected\n\t\t */\n\t\tprotected $wPt;\n\n\t\t/**\n\t\t * @var current height of page in points\n\t\t * @access protected\n\t\t */\n\t\tprotected $hPt;\n\n\t\t/**\n\t\t * @var current width of page in user unit\n\t\t * @access protected\n\t\t */\n\t\tprotected $w;\n\n\t\t/**\n\t\t * @var current height of page in user unit\n\t\t * @access protected\n\t\t */\n\t\tprotected $h;\n\n\t\t/**\n\t\t * @var left margin\n\t\t * @access protected\n\t\t */\n\t\tprotected $lMargin;\n\n\t\t/**\n\t\t * @var top margin\n\t\t * @access protected\n\t\t */\n\t\tprotected $tMargin;\n\n\t\t/**\n\t\t * @var right margin\n\t\t * @access protected\n\t\t */\n\t\tprotected $rMargin;\n\n\t\t/**\n\t\t * @var page break margin\n\t\t * @access protected\n\t\t */\n\t\tprotected $bMargin;\n\n\t\t/**\n\t\t * @var cell internal padding\n\t\t * @access protected\n\t\t */\n\t\t//protected\n\t\tpublic $cMargin;\n\n\t\t/**\n\t\t * @var cell internal padding (previous value)\n\t\t * @access protected\n\t\t */\n\t\tprotected $oldcMargin;\n\n\t\t/**\n\t\t * @var current horizontal position in user unit for cell positioning\n\t\t * @access protected\n\t\t */\n\t\tprotected $x;\n\n\t\t/**\n\t\t * @var current vertical position in user unit for cell positioning\n\t\t * @access protected\n\t\t */\n\t\tprotected $y;\n\n\t\t/**\n\t\t * @var height of last cell printed\n\t\t * @access protected\n\t\t */\n\t\tprotected $lasth;\n\n\t\t/**\n\t\t * @var line width in user unit\n\t\t * @access protected\n\t\t */\n\t\tprotected $LineWidth;\n\n\t\t/**\n\t\t * @var array of standard font names\n\t\t * @access protected\n\t\t */\n\t\tprotected $CoreFonts;\n\n\t\t/**\n\t\t * @var array of used fonts\n\t\t * @access protected\n\t\t */\n\t\tprotected $fonts = array();\n\n\t\t/**\n\t\t * @var array of font files\n\t\t * @access protected\n\t\t */\n\t\tprotected $FontFiles = array();\n\n\t\t/**\n\t\t * @var array of encoding differences\n\t\t * @access protected\n\t\t */\n\t\tprotected $diffs = array();\n\n\t\t/**\n\t\t * @var array of used images\n\t\t * @access protected\n\t\t */\n\t\tprotected $images = array();\n\n\t\t/**\n\t\t * @var array of Annotations in pages\n\t\t * @access protected\n\t\t */\n\t\tprotected $PageAnnots = array();\n\n\t\t/**\n\t\t * @var array of internal links\n\t\t * @access protected\n\t\t */\n\t\tprotected $links = array();\n\n\t\t/**\n\t\t * @var current font family\n\t\t * @access protected\n\t\t */\n\t\tprotected $FontFamily;\n\n\t\t/**\n\t\t * @var current font style\n\t\t * @access protected\n\t\t */\n\t\tprotected $FontStyle;\n\n\t\t/**\n\t\t * @var current font ascent (distance between font top and baseline)\n\t\t * @access protected\n\t\t * @since 2.8.000 (2007-03-29)\n\t\t */\n\t\tprotected $FontAscent;\n\n\t\t/**\n\t\t * @var current font descent (distance between font bottom and baseline)\n\t\t * @access protected\n\t\t * @since 2.8.000 (2007-03-29)\n\t\t */\n\t\tprotected $FontDescent;\n\n\t\t/**\n\t\t * @var underlining flag\n\t\t * @access protected\n\t\t */\n\t\tprotected $underline;\n\n\t\t/**\n\t\t * @var overlining flag\n\t\t * @access protected\n\t\t */\n\t\tprotected $overline;\n\n\t\t/**\n\t\t * @var current font info\n\t\t * @access protected\n\t\t */\n\t\tprotected $CurrentFont;\n\n\t\t/**\n\t\t * @var current font size in points\n\t\t * @access protected\n\t\t */\n\t\tprotected $FontSizePt;\n\n\t\t/**\n\t\t * @var current font size in user unit\n\t\t * @access protected\n\t\t */\n\t\tprotected $FontSize;\n\n\t\t/**\n\t\t * @var commands for drawing color\n\t\t * @access protected\n\t\t */\n\t\tprotected $DrawColor;\n\n\t\t/**\n\t\t * @var commands for filling color\n\t\t * @access protected\n\t\t */\n\t\tprotected $FillColor;\n\n\t\t/**\n\t\t * @var commands for text color\n\t\t * @access protected\n\t\t */\n\t\tprotected $TextColor;\n\n\t\t/**\n\t\t * @var indicates whether fill and text colors are different\n\t\t * @access protected\n\t\t */\n\t\tprotected $ColorFlag;\n\n\t\t/**\n\t\t * @var automatic page breaking\n\t\t * @access protected\n\t\t */\n\t\tprotected $AutoPageBreak;\n\n\t\t/**\n\t\t * @var threshold used to trigger page breaks\n\t\t * @access protected\n\t\t */\n\t\tprotected $PageBreakTrigger;\n\n\t\t/**\n\t\t * @var flag set when processing footer\n\t\t * @access protected\n\t\t */\n\t\tprotected $InFooter = false;\n\n\t\t/**\n\t\t * @var zoom display mode\n\t\t * @access protected\n\t\t */\n\t\tprotected $ZoomMode;\n\n\t\t/**\n\t\t * @var layout display mode\n\t\t * @access protected\n\t\t */\n\t\tprotected $LayoutMode;\n\n\t\t/**\n\t\t * @var title\n\t\t * @access protected\n\t\t */\n\t\tprotected $title = '';\n\n\t\t/**\n\t\t * @var subject\n\t\t * @access protected\n\t\t */\n\t\tprotected $subject = '';\n\n\t\t/**\n\t\t * @var author\n\t\t * @access protected\n\t\t */\n\t\tprotected $author = '';\n\n\t\t/**\n\t\t * @var keywords\n\t\t * @access protected\n\t\t */\n\t\tprotected $keywords = '';\n\n\t\t/**\n\t\t * @var creator\n\t\t * @access protected\n\t\t */\n\t\tprotected $creator = '';\n\n\t\t/**\n\t\t * @var alias for total number of pages\n\t\t * @access protected\n\t\t */\n\t\tprotected $AliasNbPages = '{nb}';\n\n\t\t/**\n\t\t * @var alias for page number\n\t\t * @access protected\n\t\t */\n\t\tprotected $AliasNumPage = '{pnb}';\n\n\t\t/**\n\t\t * @var right-bottom corner X coordinate of inserted image\n\t\t * @since 2002-07-31\n\t\t * @author Nicola Asuni\n\t\t * @access protected\n\t\t */\n\t\tprotected $img_rb_x;\n\n\t\t/**\n\t\t * @var right-bottom corner Y coordinate of inserted image\n\t\t * @since 2002-07-31\n\t\t * @author Nicola Asuni\n\t\t * @access protected\n\t\t */\n\t\tprotected $img_rb_y;\n\n\t\t/**\n\t\t * @var adjusting factor to convert pixels to user units.\n\t\t * @since 2004-06-14\n\t\t * @author Nicola Asuni\n\t\t * @access protected\n\t\t */\n\t\tprotected $imgscale = 1;\n\n\t\t/**\n\t\t * @var boolean set to true when the input text is unicode (require unicode fonts)\n\t\t * @since 2005-01-02\n\t\t * @author Nicola Asuni\n\t\t * @access protected\n\t\t */\n\t\tprotected $isunicode = false;\n\n\t\t/**\n\t\t * @var PDF version\n\t\t * @since 1.5.3\n\t\t * @access protected\n\t\t */\n\t\tprotected $PDFVersion = '1.7';\n\n\t\t/**\n\t\t * @var Minimum distance between header and top page margin.\n\t\t * @access protected\n\t\t */\n\t\tprotected $header_margin;\n\n\t\t/**\n\t\t * @var Minimum distance between footer and bottom page margin.\n\t\t * @access protected\n\t\t */\n\t\tprotected $footer_margin;\n\n\t\t/**\n\t\t * @var original left margin value\n\t\t * @access protected\n\t\t * @since 1.53.0.TC013\n\t\t */\n\t\tprotected $original_lMargin;\n\n\t\t/**\n\t\t * @var original right margin value\n\t\t * @access protected\n\t\t * @since 1.53.0.TC013\n\t\t */\n\t\tprotected $original_rMargin;\n\n\t\t/**\n\t\t * @var Header font.\n\t\t * @access protected\n\t\t */\n\t\tprotected $header_font;\n\n\t\t/**\n\t\t * @var Footer font.\n\t\t * @access protected\n\t\t */\n\t\tprotected $footer_font;\n\n\t\t/**\n\t\t * @var Language templates.\n\t\t * @access protected\n\t\t */\n\t\tprotected $l;\n\n\t\t/**\n\t\t * @var Barcode to print on page footer (only if set).\n\t\t * @access protected\n\t\t */\n\t\tprotected $barcode = false;\n\n\t\t/**\n\t\t * @var If true prints header\n\t\t * @access protected\n\t\t */\n\t\tprotected $print_header = true;\n\n\t\t/**\n\t\t * @var If true prints footer.\n\t\t * @access protected\n\t\t */\n\t\tprotected $print_footer = true;\n\n\t\t/**\n\t\t * @var Header image logo.\n\t\t * @access protected\n\t\t */\n\t\tprotected $header_logo = '';\n\n\t\t/**\n\t\t * @var Header image logo width in mm.\n\t\t * @access protected\n\t\t */\n\t\tprotected $header_logo_width = 30;\n\n\t\t/**\n\t\t * @var String to print as title on document header.\n\t\t * @access protected\n\t\t */\n\t\tprotected $header_title = '';\n\n\t\t/**\n\t\t * @var String to print on document header.\n\t\t * @access protected\n\t\t */\n\t\tprotected $header_string = '';\n\n\t\t/**\n\t\t * @var Default number of columns for html table.\n\t\t * @access protected\n\t\t */\n\t\tprotected $default_table_columns = 4;\n\n\n\t\t// variables for html parser\n\n\t\t/**\n\t\t * @var HTML PARSER: array to store current link and rendering styles.\n\t\t * @access protected\n\t\t */\n\t\tprotected $HREF = array();\n\n\t\t/**\n\t\t * @var store a list of available fonts on filesystem.\n\t\t * @access protected\n\t\t */\n\t\tprotected $fontlist = array();\n\n\t\t/**\n\t\t * @var current foreground color\n\t\t * @access protected\n\t\t */\n\t\tprotected $fgcolor;\n\n\t\t/**\n\t\t * @var HTML PARSER: array of boolean values, true in case of ordered list (OL), false otherwise.\n\t\t * @access protected\n\t\t */\n\t\tprotected $listordered = array();\n\n\t\t/**\n\t\t * @var HTML PARSER: array count list items on nested lists.\n\t\t * @access protected\n\t\t */\n\t\tprotected $listcount = array();\n\n\t\t/**\n\t\t * @var HTML PARSER: current list nesting level.\n\t\t * @access protected\n\t\t */\n\t\tprotected $listnum = 0;\n\n\t\t/**\n\t\t * @var HTML PARSER: indent amount for lists.\n\t\t * @access protected\n\t\t */\n\t\tprotected $listindent = 0;\n\n\t\t/**\n\t\t * @var HTML PARSER: current list indententation level.\n\t\t * @access protected\n\t\t */\n\t\tprotected $listindentlevel = 0;\n\n\t\t/**\n\t\t * @var current background color\n\t\t * @access protected\n\t\t */\n\t\tprotected $bgcolor;\n\n\t\t/**\n\t\t * @var Store temporary font size in points.\n\t\t * @access protected\n\t\t */\n\t\tprotected $tempfontsize = 10;\n\n\t\t/**\n\t\t * @var spacer for LI tags.\n\t\t * @access protected\n\t\t */\n\t\tprotected $lispacer = '';\n\n\t\t/**\n\t\t * @var default encoding\n\t\t * @access protected\n\t\t * @since 1.53.0.TC010\n\t\t */\n\t\tprotected $encoding = 'UTF-8';\n\n\t\t/**\n\t\t * @var PHP internal encoding\n\t\t * @access protected\n\t\t * @since 1.53.0.TC016\n\t\t */\n\t\tprotected $internal_encoding;\n\n\t\t/**\n\t\t * @var indicates if the document language is Right-To-Left\n\t\t * @access protected\n\t\t * @since 2.0.000\n\t\t */\n\t\tprotected $rtl = false;\n\n\t\t/**\n\t\t * @var used to force RTL or LTR string inversion\n\t\t * @access protected\n\t\t * @since 2.0.000\n\t\t */\n\t\tprotected $tmprtl = false;\n\n\t\t// --- Variables used for document encryption:\n\n\t\t/**\n\t\t * Indicates whether document is protected\n\t\t * @access protected\n\t\t * @since 2.0.000 (2008-01-02)\n\t\t */\n\t\tprotected $encrypted;\n\n\t\t/**\n\t\t * U entry in pdf document\n\t\t * @access protected\n\t\t * @since 2.0.000 (2008-01-02)\n\t\t */\n\t\tprotected $Uvalue;\n\n\t\t/**\n\t\t * O entry in pdf document\n\t\t * @access protected\n\t\t * @since 2.0.000 (2008-01-02)\n\t\t */\n\t\tprotected $Ovalue;\n\n\t\t/**\n\t\t * P entry in pdf document\n\t\t * @access protected\n\t\t * @since 2.0.000 (2008-01-02)\n\t\t */\n\t\tprotected $Pvalue;\n\n\t\t/**\n\t\t * encryption object id\n\t\t * @access protected\n\t\t * @since 2.0.000 (2008-01-02)\n\t\t */\n\t\tprotected $enc_obj_id;\n\n\t\t/**\n\t\t * last RC4 key encrypted (cached for optimisation)\n\t\t * @access protected\n\t\t * @since 2.0.000 (2008-01-02)\n\t\t */\n\t\tprotected $last_rc4_key;\n\n\t\t/**\n\t\t * last RC4 computed key\n\t\t * @access protected\n\t\t * @since 2.0.000 (2008-01-02)\n\t\t */\n\t\tprotected $last_rc4_key_c;\n\n\t\t/**\n\t\t * RC4 padding\n\t\t * @access protected\n\t\t */\n\t\tprotected $padding = \"\\x28\\xBF\\x4E\\x5E\\x4E\\x75\\x8A\\x41\\x64\\x00\\x4E\\x56\\xFF\\xFA\\x01\\x08\\x2E\\x2E\\x00\\xB6\\xD0\\x68\\x3E\\x80\\x2F\\x0C\\xA9\\xFE\\x64\\x53\\x69\\x7A\";\n\n\t\t/**\n\t\t * RC4 encryption key\n\t\t * @access protected\n\t\t */\n\t\tprotected $encryption_key;\n\n\t\t// --- bookmark ---\n\n\t\t/**\n\t\t * Outlines for bookmark\n\t\t * @access protected\n\t\t * @since 2.1.002 (2008-02-12)\n\t\t */\n\t\tprotected $outlines = array();\n\n\t\t/**\n\t\t * Outline root for bookmark\n\t\t * @access protected\n\t\t * @since 2.1.002 (2008-02-12)\n\t\t */\n\t\tprotected $OutlineRoot;\n\n\n\t\t// --- javascript and form ---\n\n\t\t/**\n\t\t * javascript code\n\t\t * @access protected\n\t\t * @since 2.1.002 (2008-02-12)\n\t\t */\n\t\tprotected $javascript = '';\n\n\t\t/**\n\t\t * javascript counter\n\t\t * @access protected\n\t\t * @since 2.1.002 (2008-02-12)\n\t\t */\n\t\tprotected $n_js;\n\n\t\t/**\n\t\t * line trough state\n\t\t * @access protected\n\t\t * @since 2.8.000 (2008-03-19)\n\t\t */\n\t\tprotected $linethrough;\n\n\t\t// --- Variables used for User's Rights ---\n\t\t// See PDF reference chapter 8.7 Digital Signatures\n\n\t\t/**\n\t\t * If true enables user's rights on PDF reader\n\t\t * @access protected\n\t\t * @since 2.9.000 (2008-03-26)\n\t\t */\n\t\tprotected $ur;\n\n\t\t/**\n\t\t * Names specifying additional document-wide usage rights for the document.\n\t\t * @access protected\n\t\t * @since 2.9.000 (2008-03-26)\n\t\t */\n\t\tprotected $ur_document;\n\n\t\t/**\n\t\t * Names specifying additional annotation-related usage rights for the document.\n\t\t * @access protected\n\t\t * @since 2.9.000 (2008-03-26)\n\t\t */\n\t\tprotected $ur_annots;\n\n\t\t/**\n\t\t * Names specifying additional form-field-related usage rights for the document.\n\t\t * @access protected\n\t\t * @since 2.9.000 (2008-03-26)\n\t\t */\n\t\tprotected $ur_form;\n\n\t\t/**\n\t\t * Names specifying additional signature-related usage rights for the document.\n\t\t * @access protected\n\t\t * @since 2.9.000 (2008-03-26)\n\t\t */\n\t\tprotected $ur_signature;\n\n\t\t/**\n\t\t * Dot Per Inch Document Resolution (do not change)\n\t\t * @access protected\n\t\t * @since 3.0.000 (2008-03-27)\n\t\t */\n\t\tprotected $dpi = 72;\n\n\t\t/**\n\t\t * Array of page numbers were a new page group was started\n\t\t * @access protected\n\t\t * @since 3.0.000 (2008-03-27)\n\t\t */\n\t\tprotected $newpagegroup = array();\n\n\t\t/**\n\t\t * Contains the number of pages of the groups\n\t\t * @access protected\n\t\t * @since 3.0.000 (2008-03-27)\n\t\t */\n\t\tprotected $pagegroups;\n\n\t\t/**\n\t\t * Contains the alias of the current page group\n\t\t * @access protected\n\t\t * @since 3.0.000 (2008-03-27)\n\t\t */\n\t\tprotected $currpagegroup;\n\n\t\t/**\n\t\t * Restrict the rendering of some elements to screen or printout.\n\t\t * @access protected\n\t\t * @since 3.0.000 (2008-03-27)\n\t\t */\n\t\tprotected $visibility = 'all';\n\n\t\t/**\n\t\t * Print visibility.\n\t\t * @access protected\n\t\t * @since 3.0.000 (2008-03-27)\n\t\t */\n\t\tprotected $n_ocg_print;\n\n\t\t/**\n\t\t * View visibility.\n\t\t * @access protected\n\t\t * @since 3.0.000 (2008-03-27)\n\t\t */\n\t\tprotected $n_ocg_view;\n\n\t\t/**\n\t\t * Array of transparency objects and parameters.\n\t\t * @access protected\n\t\t * @since 3.0.000 (2008-03-27)\n\t\t */\n\t\tprotected $extgstates;\n\n\t\t/**\n\t\t * Set the default JPEG compression quality (1-100)\n\t\t * @access protected\n\t\t * @since 3.0.000 (2008-03-27)\n\t\t */\n\t\tprotected $jpeg_quality;\n\n\t\t/**\n\t\t * Default cell height ratio.\n\t\t * @access protected\n\t\t * @since 3.0.014 (2008-05-23)\n\t\t */\n\t\tprotected $cell_height_ratio = K_CELL_HEIGHT_RATIO;\n\n\t\t/**\n\t\t * PDF viewer preferences.\n\t\t * @access protected\n\t\t * @since 3.1.000 (2008-06-09)\n\t\t */\n\t\tprotected $viewer_preferences;\n\n\t\t/**\n\t\t * A name object specifying how the document should be displayed when opened.\n\t\t * @access protected\n\t\t * @since 3.1.000 (2008-06-09)\n\t\t */\n\t\tprotected $PageMode;\n\n\t\t/**\n\t\t * Array for storing gradient information.\n\t\t * @access protected\n\t\t * @since 3.1.000 (2008-06-09)\n\t\t */\n\t\tprotected $gradients = array();\n\n\t\t/**\n\t\t * Array used to store positions inside the pages buffer.\n\t\t * keys are the page numbers\n\t\t * @access protected\n\t\t * @since 3.2.000 (2008-06-26)\n\t\t */\n\t\tprotected $intmrk = array();\n\n\t\t/**\n\t\t * Array used to store content positions inside the pages buffer.\n\t\t * keys are the page numbers\n\t\t * @access protected\n\t\t * @since 4.6.021 (2009-07-20)\n\t\t */\n\t\tprotected $cntmrk = array();\n\n\t\t/**\n\t\t * Array used to store footer positions of each page.\n\t\t * @access protected\n\t\t * @since 3.2.000 (2008-07-01)\n\t\t */\n\t\tprotected $footerpos = array();\n\n\n\t\t/**\n\t\t * Array used to store footer length of each page.\n\t\t * @access protected\n\t\t * @since 4.0.014 (2008-07-29)\n\t\t */\n\t\tprotected $footerlen = array();\n\n\t\t/**\n\t\t * True if a newline is created.\n\t\t * @access protected\n\t\t * @since 3.2.000 (2008-07-01)\n\t\t */\n\t\tprotected $newline = true;\n\n\t\t/**\n\t\t * End position of the latest inserted line\n\t\t * @access protected\n\t\t * @since 3.2.000 (2008-07-01)\n\t\t */\n\t\tprotected $endlinex = 0;\n\n\t\t/**\n\t\t * PDF string for last line width\n\t\t * @access protected\n\t\t * @since 4.0.006 (2008-07-16)\n\t\t */\n\t\tprotected $linestyleWidth = '';\n\n\t\t/**\n\t\t * PDF string for last line width\n\t\t * @access protected\n\t\t * @since 4.0.006 (2008-07-16)\n\t\t */\n\t\tprotected $linestyleCap = '0 J';\n\n\t\t/**\n\t\t * PDF string for last line width\n\t\t * @access protected\n\t\t * @since 4.0.006 (2008-07-16)\n\t\t */\n\t\tprotected $linestyleJoin = '0 j';\n\n\t\t/**\n\t\t * PDF string for last line width\n\t\t * @access protected\n\t\t * @since 4.0.006 (2008-07-16)\n\t\t */\n\t\tprotected $linestyleDash = '[] 0 d';\n\n\t\t/**\n\t\t * True if marked-content sequence is open\n\t\t * @access protected\n\t\t * @since 4.0.013 (2008-07-28)\n\t\t */\n\t\tprotected $openMarkedContent = false;\n\n\t\t/**\n\t\t * Count the latest inserted vertical spaces on HTML\n\t\t * @access protected\n\t\t * @since 4.0.021 (2008-08-24)\n\t\t */\n\t\tprotected $htmlvspace = 0;\n\n\t\t/**\n\t\t * Array of Spot colors\n\t\t * @access protected\n\t\t * @since 4.0.024 (2008-09-12)\n\t\t */\n\t\tprotected $spot_colors = array();\n\n\t\t/**\n\t\t * Symbol used for HTML unordered list items\n\t\t * @access protected\n\t\t * @since 4.0.028 (2008-09-26)\n\t\t */\n\t\tprotected $lisymbol = '';\n\n\t\t/**\n\t\t * String used to mark the beginning and end of EPS image blocks\n\t\t * @access protected\n\t\t * @since 4.1.000 (2008-10-18)\n\t\t */\n\t\tprotected $epsmarker = 'x#!#EPS#!#x';\n\n\t\t/**\n\t\t * Array of transformation matrix\n\t\t * @access protected\n\t\t * @since 4.2.000 (2008-10-29)\n\t\t */\n\t\tprotected $transfmatrix = array();\n\n\t\t/**\n\t\t * Current key for transformation matrix\n\t\t * @access protected\n\t\t * @since 4.8.005 (2009-09-17)\n\t\t */\n\t\tprotected $transfmatrix_key = 0;\n\n\t\t/**\n\t\t * Booklet mode for double-sided pages\n\t\t * @access protected\n\t\t * @since 4.2.000 (2008-10-29)\n\t\t */\n\t\tprotected $booklet = false;\n\n\t\t/**\n\t\t * Epsilon value used for float calculations\n\t\t * @access protected\n\t\t * @since 4.2.000 (2008-10-29)\n\t\t */\n\t\tprotected $feps = 0.005;\n\n\t\t/**\n\t\t * Array used for custom vertical spaces for HTML tags\n\t\t * @access protected\n\t\t * @since 4.2.001 (2008-10-30)\n\t\t */\n\t\tprotected $tagvspaces = array();\n\n\t\t/**\n\t\t * @var HTML PARSER: custom indent amount for lists.\n\t\t * Negative value means disabled.\n\t\t * @access protected\n\t\t * @since 4.2.007 (2008-11-12)\n\t\t */\n\t\tprotected $customlistindent = -1;\n\n\t\t/**\n\t\t * @var if true keeps the border open for the cell sides that cross the page.\n\t\t * @access protected\n\t\t * @since 4.2.010 (2008-11-14)\n\t\t */\n\t\tprotected $opencell = true;\n\n\t\t/**\n\t\t * @var array of files to embedd\n\t\t * @access protected\n\t\t * @since 4.4.000 (2008-12-07)\n\t\t */\n\t\tprotected $embeddedfiles = array();\n\n\t\t/**\n\t\t * @var boolean true when inside html pre tag\n\t\t * @access protected\n\t\t * @since 4.4.001 (2008-12-08)\n\t\t */\n\t\tprotected $premode = false;\n\n\t\t/**\n\t\t * Array used to store positions of graphics transformation blocks inside the page buffer.\n\t\t * keys are the page numbers\n\t\t * @access protected\n\t\t * @since 4.4.002 (2008-12-09)\n\t\t */\n\t\tprotected $transfmrk = array();\n\n\t\t/**\n\t\t * Default color for html links\n\t\t * @access protected\n\t\t * @since 4.4.003 (2008-12-09)\n\t\t */\n\t\tprotected $htmlLinkColorArray = array(0, 0, 255);\n\n\t\t/**\n\t\t * Default font style to add to html links\n\t\t * @access protected\n\t\t * @since 4.4.003 (2008-12-09)\n\t\t */\n\t\tprotected $htmlLinkFontStyle = 'U';\n\n\t\t/**\n\t\t * Counts the number of pages.\n\t\t * @access protected\n\t\t * @since 4.5.000 (2008-12-31)\n\t\t */\n\t\tprotected $numpages = 0;\n\n\t\t/**\n\t\t * Array containing page lengths in bytes.\n\t\t * @access protected\n\t\t * @since 4.5.000 (2008-12-31)\n\t\t */\n\t\tprotected $pagelen = array();\n\n\t\t/**\n\t\t * Counts the number of pages.\n\t\t * @access protected\n\t\t * @since 4.5.000 (2008-12-31)\n\t\t */\n\t\tprotected $numimages = 0;\n\n\t\t/**\n\t\t * Store the image keys.\n\t\t * @access protected\n\t\t * @since 4.5.000 (2008-12-31)\n\t\t */\n\t\tprotected $imagekeys = array();\n\n\t\t/**\n\t\t * Length of the buffer in bytes.\n\t\t * @access protected\n\t\t * @since 4.5.000 (2008-12-31)\n\t\t */\n\t\tprotected $bufferlen = 0;\n\n\t\t/**\n\t\t * If true enables disk caching.\n\t\t * @access protected\n\t\t * @since 4.5.000 (2008-12-31)\n\t\t */\n\t\tprotected $diskcache = false;\n\n\t\t/**\n\t\t * Counts the number of fonts.\n\t\t * @access protected\n\t\t * @since 4.5.000 (2009-01-02)\n\t\t */\n\t\tprotected $numfonts = 0;\n\n\t\t/**\n\t\t * Store the font keys.\n\t\t * @access protected\n\t\t * @since 4.5.000 (2009-01-02)\n\t\t */\n\t\tprotected $fontkeys = array();\n\n\t\t/**\n\t\t * Store the font object IDs.\n\t\t * @access protected\n\t\t * @since 4.8.001 (2009-09-09)\n\t\t */\n\t\tprotected $font_obj_ids = array();\n\n\t\t/**\n\t\t * Store the fage status (true when opened, false when closed).\n\t\t * @access protected\n\t\t * @since 4.5.000 (2009-01-02)\n\t\t */\n\t\tprotected $pageopen = array();\n\n\t\t/**\n\t\t * Default monospaced font\n\t\t * @access protected\n\t\t * @since 4.5.025 (2009-03-10)\n\t\t */\n\t\tprotected $default_monospaced_font = 'courier';\n\n\t\t/**\n\t\t * Used to store a cloned copy of the current class object\n\t\t * @access protected\n\t\t * @since 4.5.029 (2009-03-19)\n\t\t */\n\t\tprotected $objcopy;\n\n\t\t/**\n\t\t * Array used to store the lengths of cache files\n\t\t * @access protected\n\t\t * @since 4.5.029 (2009-03-19)\n\t\t */\n\t\tprotected $cache_file_length = array();\n\n\t\t/**\n\t\t * Table header content to be repeated on each new page\n\t\t * @access protected\n\t\t * @since 4.5.030 (2009-03-20)\n\t\t */\n\t\tprotected $thead = '';\n\n\t\t/**\n\t\t * Margins used for table header.\n\t\t * @access protected\n\t\t * @since 4.5.030 (2009-03-20)\n\t\t */\n\t\tprotected $theadMargins = array();\n\n\t\t/**\n\t\t * Cache array for UTF8StringToArray() method.\n\t\t * @access protected\n\t\t * @since 4.5.037 (2009-04-07)\n\t\t */\n\t\tprotected $cache_UTF8StringToArray = array();\n\n\t\t/**\n\t\t * Maximum size of cache array used for UTF8StringToArray() method.\n\t\t * @access protected\n\t\t * @since 4.5.037 (2009-04-07)\n\t\t */\n\t\tprotected $cache_maxsize_UTF8StringToArray = 8;\n\n\t\t/**\n\t\t * Current size of cache array used for UTF8StringToArray() method.\n\t\t * @access protected\n\t\t * @since 4.5.037 (2009-04-07)\n\t\t */\n\t\tprotected $cache_size_UTF8StringToArray = 0;\n\n\t\t/**\n\t\t * If true enables document signing\n\t\t * @access protected\n\t\t * @since 4.6.005 (2009-04-24)\n\t\t */\n\t\tprotected $sign = false;\n\n\t\t/**\n\t\t * Signature data\n\t\t * @access protected\n\t\t * @since 4.6.005 (2009-04-24)\n\t\t */\n\t\tprotected $signature_data = array();\n\n\t\t/**\n\t\t * Signature max length\n\t\t * @access protected\n\t\t * @since 4.6.005 (2009-04-24)\n\t\t */\n\t\tprotected $signature_max_length = 11742;\n\n\t\t/**\n\t\t * Regular expression used to find blank characters used for word-wrapping.\n\t\t * @access protected\n\t\t * @since 4.6.006 (2009-04-28)\n\t\t */\n\t\tprotected $re_spaces = '/[\\s]/';\n\n\t\t/**\n\t\t * Signature object ID\n\t\t * @access protected\n\t\t * @since 4.6.022 (2009-06-23)\n\t\t */\n\t\tprotected $sig_obj_id = 0;\n\n\t\t/**\n\t\t * ByteRange placemark used during signature process.\n\t\t * @access protected\n\t\t * @since 4.6.028 (2009-08-25)\n\t\t */\n\t\tprotected $byterange_string = '/ByteRange[0 ********** ********** **********]';\n\n\t\t/**\n\t\t * Placemark used during signature process.\n\t\t * @access protected\n\t\t * @since 4.6.028 (2009-08-25)\n\t\t */\n\t\tprotected $sig_annot_ref = '***SIGANNREF*** 0 R';\n\n\t\t/**\n\t\t * ID of page objects\n\t\t * @access protected\n\t\t * @since 4.7.000 (2009-08-29)\n\t\t */\n\t\tprotected $page_obj_id = array();\n\n\t\t/**\n\t\t * Start ID for embedded file objects\n\t\t * @access protected\n\t\t * @since 4.7.000 (2009-08-29)\n\t\t */\n\t\tprotected $embedded_start_obj_id = 100000;\n\n\t\t/**\n\t\t * Start ID for annotation objects\n\t\t * @access protected\n\t\t * @since 4.7.000 (2009-08-29)\n\t\t */\n\t\tprotected $annots_start_obj_id = 200000;\n\n\t\t/**\n\t\t * Max ID of annotation object\n\t\t * @access protected\n\t\t * @since 4.7.000 (2009-08-29)\n\t\t */\n\t\tprotected $annot_obj_id = 200000;\n\n\t\t/**\n\t\t * Current ID of annotation object\n\t\t * @access protected\n\t\t * @since 4.8.003 (2009-09-15)\n\t\t */\n\t\tprotected $curr_annot_obj_id = 200000;\n\n\t\t/**\n\t\t * List of form annotations IDs\n\t\t * @access protected\n\t\t * @since 4.8.000 (2009-09-07)\n\t\t */\n\t\tprotected $form_obj_id = array();\n\n\t\t/**\n\t\t * Deafult Javascript field properties. Possible values are described on official Javascript for Acrobat API reference. Annotation options can be directly specified using the 'aopt' entry.\n\t\t * @access protected\n\t\t * @since 4.8.000 (2009-09-07)\n\t\t */\n\t\tprotected $default_form_prop = array('lineWidth'=>1, 'borderStyle'=>'solid', 'fillColor'=>array(255, 255, 255), 'strokeColor'=>array(128, 128, 128));\n\n\t\t/**\n\t\t * Javascript objects array\n\t\t * @access protected\n\t\t * @since 4.8.000 (2009-09-07)\n\t\t */\n\t\tprotected $js_objects = array();\n\n\t\t/**\n\t\t * Start ID for javascript objects\n\t\t * @access protected\n\t\t * @since 4.8.000 (2009-09-07)\n\t\t */\n\t\tprotected $js_start_obj_id = 300000;\n\n\t\t/**\n\t\t * Current ID of javascript object\n\t\t * @access protected\n\t\t * @since 4.8.000 (2009-09-07)\n\t\t */\n\t\tprotected $js_obj_id = 300000;\n\n\t\t/**\n\t\t * Current form action (used during XHTML rendering)\n\t\t * @access protected\n\t\t * @since 4.8.000 (2009-09-07)\n\t\t */\n\t\tprotected $form_action = '';\n\n\t\t/**\n\t\t * Current form encryption type (used during XHTML rendering)\n\t\t * @access protected\n\t\t * @since 4.8.000 (2009-09-07)\n\t\t */\n\t\tprotected $form_enctype = 'application/x-www-form-urlencoded';\n\n\t\t/**\n\t\t * Current method to submit forms.\n\t\t * @access protected\n\t\t * @since 4.8.000 (2009-09-07)\n\t\t */\n\t\tprotected $form_mode = 'post';\n\n\t\t/**\n\t\t * Start ID for appearance streams XObjects\n\t\t * @access protected\n\t\t * @since 4.8.001 (2009-09-09)\n\t\t */\n\t\tprotected $apxo_start_obj_id = 400000;\n\n\t\t/**\n\t\t * Current ID of appearance streams XObjects\n\t\t * @access protected\n\t\t * @since 4.8.001 (2009-09-09)\n\t\t */\n\t\tprotected $apxo_obj_id = 400000;\n\n\t\t/**\n\t\t * List of fonts used on form fields (fontname => fontkey).\n\t\t * @access protected\n\t\t * @since 4.8.001 (2009-09-09)\n\t\t */\n\t\tprotected $annotation_fonts = array();\n\n\t\t/**\n\t\t * List of radio buttons parent objects.\n\t\t * @access protected\n\t\t * @since 4.8.001 (2009-09-09)\n\t\t */\n\t\tprotected $radiobutton_groups = array();\n\n\t\t/**\n\t\t * List of radio group objects IDs\n\t\t * @access protected\n\t\t * @since 4.8.001 (2009-09-09)\n\t\t */\n\t\tprotected $radio_groups = array();\n\n\t\t/**\n\t\t * Text indentation value (used for text-indent CSS attribute)\n\t\t * @access protected\n\t\t * @since 4.8.006 (2009-09-23)\n\t\t */\n\t\tprotected $textindent = 0;\n\n\t\t/**\n\t\t * Store page number when startTransaction() is called.\n\t\t * @access protected\n\t\t * @since 4.8.006 (2009-09-23)\n\t\t */\n\t\tprotected $start_transaction_page = 0;\n\n\t\t/**\n\t\t * Store Y position when startTransaction() is called.\n\t\t * @access protected\n\t\t * @since 4.9.001 (2010-03-28)\n\t\t */\n\t\tprotected $start_transaction_y = 0;\n\n\t\t/**\n\t\t * True when we are printing the thead section on a new page\n\t\t * @access protected\n\t\t * @since 4.8.027 (2010-01-25)\n\t\t */\n\t\tprotected $inthead = false;\n\n\t\t/**\n\t\t * Array of column measures (width, space, starting Y position)\n\t\t * @access protected\n\t\t * @since 4.9.001 (2010-03-28)\n\t\t */\n\t\tprotected $columns = array();\n\n\t\t/**\n\t\t * Number of colums\n\t\t * @access protected\n\t\t * @since 4.9.001 (2010-03-28)\n\t\t */\n\t\tprotected $num_columns = 0;\n\n\t\t/**\n\t\t * Current column number\n\t\t * @access protected\n\t\t * @since 4.9.001 (2010-03-28)\n\t\t */\n\t\tprotected $current_column = 0;\n\n\t\t/**\n\t\t * Starting page for columns\n\t\t * @access protected\n\t\t * @since 4.9.001 (2010-03-28)\n\t\t */\n\t\tprotected $column_start_page = 0;\n\n\t\t/**\n\t\t * Text rendering mode: 0 = Fill text; 1 = Stroke text; 2 = Fill, then stroke text; 3 = Neither fill nor stroke text (invisible); 4 = Fill text and add to path for clipping; 5 = Stroke text and add to path for clipping; 6 = Fill, then stroke text and add to path for clipping; 7 = Add text to path for clipping.\n\t\t * @access protected\n\t\t * @since 4.9.008 (2010-04-03)\n\t\t */\n\t\tprotected $textrendermode = 0;\n\n\t\t/**\n\t\t * Text stroke width in doc units\n\t\t * @access protected\n\t\t * @since 4.9.008 (2010-04-03)\n\t\t */\n\t\tprotected $textstrokewidth = 0;\n\n\t\t/**\n\t\t * @var current stroke color\n\t\t * @access protected\n\t\t * @since 4.9.008 (2010-04-03)\n\t\t */\n\t\tprotected $strokecolor;\n\n\t\t/**\n\t\t * @var default unit of measure for document\n\t\t * @access protected\n\t\t * @since 5.0.000 (2010-04-22)\n\t\t */\n\t\tprotected $pdfunit = 'mm';\n\n\t\t/**\n\t\t * @var true when we are on TOC (Table Of Content) page\n\t\t * @access protected\n\t\t */\n\t\tprotected $tocpage = false;\n\n\t\t/**\n\t\t * @var If true convert vector images (SVG, EPS) to raster image using GD or ImageMagick library.\n\t\t * @access protected\n\t\t * @since 5.0.000 (2010-04-26)\n\t\t */\n\t\tprotected $rasterize_vector_images = false;\n\n\t\t/**\n\t\t * @var directory used for the last SVG image\n\t\t * @access protected\n\t\t * @since 5.0.000 (2010-05-05)\n\t\t */\n\t\tprotected $svgdir = '';\n\n\t\t/**\n\t\t * @var Deafult unit of measure for SVG\n\t\t * @access protected\n\t\t * @since 5.0.000 (2010-05-02)\n\t\t */\n\t\tprotected $svgunit = 'px';\n\n\t\t/**\n\t\t * @var array of SVG gradients\n\t\t * @access protected\n\t\t * @since 5.0.000 (2010-05-02)\n\t\t */\n\t\tprotected $svggradients = array();\n\n\t\t/**\n\t\t * @var ID of last SVG gradient\n\t\t * @access protected\n\t\t * @since 5.0.000 (2010-05-02)\n\t\t */\n\t\tprotected $svggradientid = 0;\n\n\t\t/**\n\t\t * @var true when in SVG defs group\n\t\t * @access protected\n\t\t * @since 5.0.000 (2010-05-02)\n\t\t */\n\t\tprotected $svgdefsmode = false;\n\n\t\t/**\n\t\t * @var array of SVG defs\n\t\t * @access protected\n\t\t * @since 5.0.000 (2010-05-02)\n\t\t */\n\t\tprotected $svgdefs = array();\n\n\t\t/**\n\t\t * @var true when in SVG clipPath tag\n\t\t * @access protected\n\t\t * @since 5.0.000 (2010-04-26)\n\t\t */\n\t\tprotected $svgclipmode = false;\n\n\t\t/**\n\t\t * @var array of SVG clipPath commands\n\t\t * @access protected\n\t\t * @since 5.0.000 (2010-05-02)\n\t\t */\n\t\tprotected $svgclippaths = array();\n\n\t\t/**\n\t\t * @var ID of last SVG clipPath\n\t\t * @access protected\n\t\t * @since 5.0.000 (2010-05-02)\n\t\t */\n\t\tprotected $svgclipid = 0;\n\n\t\t/**\n\t\t * @var svg text\n\t\t * @access protected\n\t\t * @since 5.0.000 (2010-05-02)\n\t\t */\n\t\tprotected $svgtext = '';\n\n\t\t/**\n\t\t * @var array of hinheritable SVG properties\n\t\t * @access protected\n\t\t * @since 5.0.000 (2010-05-02)\n\t\t */\n\t\tprotected $svginheritprop = array('clip-rule', 'color', 'color-interpolation', 'color-interpolation-filters', 'color-profile', 'color-rendering', 'cursor', 'direction', 'fill', 'fill-opacity', 'fill-rule', 'font', 'font-family', 'font-size', 'font-size-adjust', 'font-stretch', 'font-style', 'font-variant', 'font-weight', 'glyph-orientation-horizontal', 'glyph-orientation-vertical', 'image-rendering', 'kerning', 'letter-spacing', 'marker', 'marker-end', 'marker-mid', 'marker-start', 'pointer-events', 'shape-rendering', 'stroke', 'stroke-dasharray', 'stroke-dashoffset', 'stroke-linecap', 'stroke-linejoin', 'stroke-miterlimit', 'stroke-opacity', 'stroke-width', 'text-anchor', 'text-rendering', 'visibility', 'word-spacing', 'writing-mode');\n\n\t\t/**\n\t\t * @var array of SVG properties\n\t\t * @access protected\n\t\t * @since 5.0.000 (2010-05-02)\n\t\t */\n\t\tprotected $svgstyles = array(array(\n\t\t\t'alignment-baseline' => 'auto',\n\t\t\t'baseline-shift' => 'baseline',\n\t\t\t'clip' => 'auto',\n\t\t\t'clip-path' => 'none',\n\t\t\t'clip-rule' => 'nonzero',\n\t\t\t'color' => 'black',\n\t\t\t'color-interpolation' => 'sRGB',\n\t\t\t'color-interpolation-filters' => 'linearRGB',\n\t\t\t'color-profile' => 'auto',\n\t\t\t'color-rendering' => 'auto',\n\t\t\t'cursor' => 'auto',\n\t\t\t'direction' => 'ltr',\n\t\t\t'display' => 'inline',\n\t\t\t'dominant-baseline' => 'auto',\n\t\t\t'enable-background' => 'accumulate',\n\t\t\t'fill' => 'black',\n\t\t\t'fill-opacity' => 1,\n\t\t\t'fill-rule' => 'nonzero',\n\t\t\t'filter' => 'none',\n\t\t\t'flood-color' => 'black',\n\t\t\t'flood-opacity' => 1,\n\t\t\t'font' => '',\n\t\t\t'font-family' => 'helvetica',\n\t\t\t'font-size' => 'medium',\n\t\t\t'font-size-adjust' => 'none',\n\t\t\t'font-stretch' => 'normal',\n\t\t\t'font-style' => 'normal',\n\t\t\t'font-variant' => 'normal',\n\t\t\t'font-weight' => 'normal',\n\t\t\t'glyph-orientation-horizontal' => '0deg',\n\t\t\t'glyph-orientation-vertical' => 'auto',\n\t\t\t'image-rendering' => 'auto',\n\t\t\t'kerning' => 'auto',\n\t\t\t'letter-spacing' => 'normal',\n\t\t\t'lighting-color' => 'white',\n\t\t\t'marker' => '',\n\t\t\t'marker-end' => 'none',\n\t\t\t'marker-mid' => 'none',\n\t\t\t'marker-start' => 'none',\n\t\t\t'mask' => 'none',\n\t\t\t'opacity' => 1,\n\t\t\t'overflow' => 'auto',\n\t\t\t'pointer-events' => 'visiblePainted',\n\t\t\t'shape-rendering' => 'auto',\n\t\t\t'stop-color' => 'black',\n\t\t\t'stop-opacity' => 1,\n\t\t\t'stroke' => 'none',\n\t\t\t'stroke-dasharray' => 'none',\n\t\t\t'stroke-dashoffset' => 0,\n\t\t\t'stroke-linecap' => 'butt',\n\t\t\t'stroke-linejoin' => 'miter',\n\t\t\t'stroke-miterlimit' => 4,\n\t\t\t'stroke-opacity' => 1,\n\t\t\t'stroke-width' => 1,\n\t\t\t'text-anchor' => 'start',\n\t\t\t'text-decoration' => 'none',\n\t\t\t'text-rendering' => 'auto',\n\t\t\t'unicode-bidi' => 'normal',\n\t\t\t'visibility' => 'visible',\n\t\t\t'word-spacing' => 'normal',\n\t\t\t'writing-mode' => 'lr-tb',\n\t\t\t'text-color' => 'black',\n\t\t\t'transfmatrix' => array(1, 0, 0, 1, 0, 0)\n\t\t\t));\n\n\t\t//------------------------------------------------------------\n\t\t// METHODS\n\t\t//------------------------------------------------------------\n\n\t\t/**\n\t\t * This is the class constructor.\n\t\t * It allows to set up the page format, the orientation and\n\t\t * the measure unit used in all the methods (except for the font sizes).\n\t\t * @since 1.0\n\t\t * @param string $orientation page orientation. Possible values are (case insensitive):<ul><li>P or Portrait (default)</li><li>L or Landscape</li></ul>\n\t\t * @param string $unit User measure unit. Possible values are:<ul><li>pt: point</li><li>mm: millimeter (default)</li><li>cm: centimeter</li><li>in: inch</li></ul><br />A point equals 1/72 of inch, that is to say about 0.35 mm (an inch being 2.54 cm). This is a very common unit in typography; font sizes are expressed in that unit.\n\t\t * @param mixed $format The format used for pages. It can be either one of the following values (case insensitive) or a custom format in the form of a two-element array containing the width and the height (expressed in the unit given by unit).<ul><li>4A0</li><li>2A0</li><li>A0</li><li>A1</li><li>A2</li><li>A3</li><li>A4 (default)</li><li>A5</li><li>A6</li><li>A7</li><li>A8</li><li>A9</li><li>A10</li><li>B0</li><li>B1</li><li>B2</li><li>B3</li><li>B4</li><li>B5</li><li>B6</li><li>B7</li><li>B8</li><li>B9</li><li>B10</li><li>C0</li><li>C1</li><li>C2</li><li>C3</li><li>C4</li><li>C5</li><li>C6</li><li>C7</li><li>C8</li><li>C9</li><li>C10</li><li>RA0</li><li>RA1</li><li>RA2</li><li>RA3</li><li>RA4</li><li>SRA0</li><li>SRA1</li><li>SRA2</li><li>SRA3</li><li>SRA4</li><li>LETTER</li><li>LEGAL</li><li>EXECUTIVE</li><li>FOLIO</li></ul>\n\t\t * @param boolean $unicode TRUE means that the input text is unicode (default = true)\n\t\t * @param boolean $diskcache if TRUE reduce the RAM memory usage by caching temporary data on filesystem (slower).\n\t\t * @param String $encoding charset encoding; default is UTF-8\n\t\t * @access public\n\t\t */\n\t\tpublic function __construct($orientation='P', $unit='mm', $format='A4', $unicode=true, $encoding='UTF-8', $diskcache=false) {\n\t\t\t/* Set internal character encoding to ASCII */\n\t\t\tif (function_exists('mb_internal_encoding') AND mb_internal_encoding()) {\n\t\t\t\t$this->internal_encoding = mb_internal_encoding();\n\t\t\t\tmb_internal_encoding('ASCII');\n\t\t\t}\n\t\t\t// set disk caching\n\t\t\t$this->diskcache = $diskcache ? true : false;\n\t\t\t// set language direction\n\t\t\t$this->rtl = false;\n\t\t\t$this->tmprtl = false;\n\t\t\t//Some checks\n\t\t\t$this->_dochecks();\n\t\t\t//Initialization of properties\n\t\t\t$this->isunicode = $unicode;\n\t\t\t$this->page = 0;\n\t\t\t$this->transfmrk[0] = array();\n\t\t\t$this->pagedim = array();\n\t\t\t$this->n = 2;\n\t\t\t$this->buffer = '';\n\t\t\t$this->pages = array();\n\t\t\t$this->state = 0;\n\t\t\t$this->fonts = array();\n\t\t\t$this->FontFiles = array();\n\t\t\t$this->diffs = array();\n\t\t\t$this->images = array();\n\t\t\t$this->links = array();\n\t\t\t$this->gradients = array();\n\t\t\t$this->InFooter = false;\n\t\t\t$this->lasth = 0;\n\t\t\t$this->FontFamily = 'helvetica';\n\t\t\t$this->FontStyle = '';\n\t\t\t$this->FontSizePt = 12;\n\t\t\t$this->underline = false;\n\t\t\t$this->overline = false;\n\t\t\t$this->linethrough = false;\n\t\t\t$this->DrawColor = '0 G';\n\t\t\t$this->FillColor = '0 g';\n\t\t\t$this->TextColor = '0 g';\n\t\t\t$this->ColorFlag = false;\n\t\t\t// encryption values\n\t\t\t$this->encrypted = false;\n\t\t\t$this->last_rc4_key = '';\n\t\t\t$this->padding = \"\\x28\\xBF\\x4E\\x5E\\x4E\\x75\\x8A\\x41\\x64\\x00\\x4E\\x56\\xFF\\xFA\\x01\\x08\\x2E\\x2E\\x00\\xB6\\xD0\\x68\\x3E\\x80\\x2F\\x0C\\xA9\\xFE\\x64\\x53\\x69\\x7A\";\n\t\t\t//Standard Unicode fonts\n\t\t\t$this->CoreFonts = array(\n\t\t\t\t'courier'=>'Courier',\n\t\t\t\t'courierB'=>'Courier-Bold',\n\t\t\t\t'courierI'=>'Courier-Oblique',\n\t\t\t\t'courierBI'=>'Courier-BoldOblique',\n\t\t\t\t'helvetica'=>'Helvetica',\n\t\t\t\t'helveticaB'=>'Helvetica-Bold',\n\t\t\t\t'helveticaI'=>'Helvetica-Oblique',\n\t\t\t\t'helveticaBI'=>'Helvetica-BoldOblique',\n\t\t\t\t'times'=>'Times-Roman',\n\t\t\t\t'timesB'=>'Times-Bold',\n\t\t\t\t'timesI'=>'Times-Italic',\n\t\t\t\t'timesBI'=>'Times-BoldItalic',\n\t\t\t\t'symbol'=>'Symbol',\n\t\t\t\t'zapfdingbats'=>'ZapfDingbats'\n\t\t\t);\n\t\t\t//Set scale factor\n\t\t\t$this->setPageUnit($unit);\n\t\t\t// set page format and orientation\n\t\t\t$this->setPageFormat($format, $orientation);\n\t\t\t//Page margins (1 cm)\n\t\t\t$margin = 28.35 / $this->k;\n\t\t\t$this->SetMargins($margin, $margin);\n\t\t\t//Interior cell margin\n\t\t\t$this->cMargin = $margin / 10;\n\t\t\t//Line width (0.2 mm)\n\t\t\t$this->LineWidth = 0.57 / $this->k;\n\t\t\t$this->linestyleWidth = sprintf('%.2F w', ($this->LineWidth * $this->k));\n\t\t\t$this->linestyleCap = '0 J';\n\t\t\t$this->linestyleJoin = '0 j';\n\t\t\t$this->linestyleDash = '[] 0 d';\n\t\t\t//Automatic page break\n\t\t\t$this->SetAutoPageBreak(true, (2 * $margin));\n\t\t\t//Full width display mode\n\t\t\t$this->SetDisplayMode('fullwidth');\n\t\t\t//Compression\n\t\t\t$this->SetCompression(true);\n\t\t\t//Set default PDF version number\n\t\t\t$this->PDFVersion = '1.7';\n\t\t\t$this->encoding = $encoding;\n\t\t\t$this->HREF = array();\n\t\t\t$this->getFontsList();\n\t\t\t$this->fgcolor = array('R' => 0, 'G' => 0, 'B' => 0);\n\t\t\t$this->strokecolor = array('R' => 0, 'G' => 0, 'B' => 0);\n\t\t\t$this->bgcolor = array('R' => 255, 'G' => 255, 'B' => 255);\n\t\t\t$this->extgstates = array();\n\t\t\t// user's rights\n\t\t\t$this->sign = false;\n\t\t\t$this->ur = false;\n\t\t\t$this->ur_document = '/FullSave';\n\t\t\t$this->ur_annots = '/Create/Delete/Modify/Copy/Import/Export';\n\t\t\t$this->ur_form = '/Add/Delete/FillIn/Import/Export/SubmitStandalone/SpawnTemplate';\n\t\t\t$this->ur_signature = '/Modify';\n\t\t\t// set default JPEG quality\n\t\t\t$this->jpeg_quality = 75;\n\t\t\t// initialize some settings\n\t\t\t$this->utf8Bidi(array(''), '');\n\t\t\t// set default font\n\t\t\t$this->SetFont($this->FontFamily, $this->FontStyle, $this->FontSizePt);\n\t\t\t// check if PCRE Unicode support is enabled\n\t\t\tif ($this->isunicode AND (@preg_match('/\\pL/u', 'a') == 1)) {\n\t\t\t\t// PCRE unicode support is turned ON\n\t\t\t\t// \\p{Z} or \\p{Separator}: any kind of Unicode whitespace or invisible separator.\n\t\t\t\t// \\p{Lo} or \\p{Other_Letter}: a Unicode letter or ideograph that does not have lowercase and uppercase variants.\n\t\t\t\t// \\p{Lo} is needed because Chinese characters are packed next to each other without spaces in between.\n\t\t\t\t//$this->re_spaces = '/[\\s\\p{Z}\\p{Lo}]/u';\n\t\t\t\t$this->re_spaces = '/[\\s\\p{Z}]/u';\n\t\t\t} else {\n\t\t\t\t// PCRE unicode support is turned OFF\n\t\t\t\t$this->re_spaces = '/[\\s]/';\n\t\t\t}\n\t\t\t$this->annot_obj_id = $this->annots_start_obj_id;\n\t\t\t$this->curr_annot_obj_id = $this->annots_start_obj_id;\n\t\t\t$this->apxo_obj_id = $this->apxo_start_obj_id;\n\t\t\t$this->js_obj_id = $this->js_start_obj_id;\n\t\t\t$this->default_form_prop = array('lineWidth'=>1, 'borderStyle'=>'solid', 'fillColor'=>array(255, 255, 255), 'strokeColor'=>array(128, 128, 128));\n\t\t}\n\n\t\t/**\n\t\t * Default destructor.\n\t\t * @access public\n\t\t * @since 1.53.0.TC016\n\t\t */\n\t\tpublic function __destruct() {\n\t\t\t// restore internal encoding\n\t\t\tif (isset($this->internal_encoding) AND !empty($this->internal_encoding)) {\n\t\t\t\tmb_internal_encoding($this->internal_encoding);\n\t\t\t}\n\t\t\t// unset all class variables\n\t\t\t$this->_destroy(true);\n\t\t}\n\n\t\t/**\n\t\t * Set the units of measure for the document.\n\t\t * @param string $unit User measure unit. Possible values are:<ul><li>pt: point</li><li>mm: millimeter (default)</li><li>cm: centimeter</li><li>in: inch</li></ul><br />A point equals 1/72 of inch, that is to say about 0.35 mm (an inch being 2.54 cm). This is a very common unit in typography; font sizes are expressed in that unit.\n\t\t * @access public\n\t\t * @since 3.0.015 (2008-06-06)\n\t\t */\n\t\tpublic function setPageUnit($unit) {\n\t\t\t$unit = strtolower($unit);\n\t\t\t//Set scale factor\n\t\t\tswitch ($unit) {\n\t\t\t\t// points\n\t\t\t\tcase 'px':\n\t\t\t\tcase 'pt': {\n\t\t\t\t\t$this->k = 1;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t// millimeters\n\t\t\t\tcase 'mm': {\n\t\t\t\t\t$this->k = $this->dpi / 25.4;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t// centimeters\n\t\t\t\tcase 'cm': {\n\t\t\t\t\t$this->k = $this->dpi / 2.54;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t// inches\n\t\t\t\tcase 'in': {\n\t\t\t\t\t$this->k = $this->dpi;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t// unsupported unit\n\t\t\t\tdefault : {\n\t\t\t\t\t$this->Error('Incorrect unit: '.$unit);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$this->pdfunit = $unit;\n\t\t\tif (isset($this->CurOrientation)) {\n\t\t\t\t\t$this->setPageOrientation($this->CurOrientation);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Set the page format\n\t\t * @param mixed $format The format used for pages. It can be either one of the following values (case insensitive) or a custom format in the form of a two-element array containing the width and the height (expressed in the unit given by unit).<ul><li>4A0</li><li>2A0</li><li>A0</li><li>A1</li><li>A2</li><li>A3</li><li>A4 (default)</li><li>A5</li><li>A6</li><li>A7</li><li>A8</li><li>A9</li><li>A10</li><li>B0</li><li>B1</li><li>B2</li><li>B3</li><li>B4</li><li>B5</li><li>B6</li><li>B7</li><li>B8</li><li>B9</li><li>B10</li><li>C0</li><li>C1</li><li>C2</li><li>C3</li><li>C4</li><li>C5</li><li>C6</li><li>C7</li><li>C8</li><li>C9</li><li>C10</li><li>RA0</li><li>RA1</li><li>RA2</li><li>RA3</li><li>RA4</li><li>SRA0</li><li>SRA1</li><li>SRA2</li><li>SRA3</li><li>SRA4</li><li>LETTER</li><li>LEGAL</li><li>EXECUTIVE</li><li>FOLIO</li></ul>\n\t\t * @param string $orientation page orientation. Possible values are (case insensitive):<ul><li>P or PORTRAIT (default)</li><li>L or LANDSCAPE</li></ul>\n\t\t * @access public\n\t\t * @since 3.0.015 (2008-06-06)\n\t\t */\n\t\tpublic function setPageFormat($format, $orientation='P') {\n\t\t\t//Page format\n\t\t\tif (is_string($format)) {\n\t\t\t\t// Page formats (45 standard ISO paper formats and 4 american common formats).\n\t\t\t\t// Paper cordinates are calculated in this way: (inches * 72) where (1 inch = 2.54 cm)\n\t\t\t\tswitch (strtoupper($format)) {\n\t\t\t\t\tcase '4A0': {$format = array(4767.87,6740.79); break;}\n\t\t\t\t\tcase '2A0': {$format = array(3370.39,4767.87); break;}\n\t\t\t\t\tcase 'A0': {$format = array(2383.94,3370.39); break;}\n\t\t\t\t\tcase 'A1': {$format = array(1683.78,2383.94); break;}\n\t\t\t\t\tcase 'A2': {$format = array(1190.55,1683.78); break;}\n\t\t\t\t\tcase 'A3': {$format = array(841.89,1190.55); break;}\n\t\t\t\t\tcase 'A4': default: {$format = array(595.28,841.89); break;}\n\t\t\t\t\tcase 'A5': {$format = array(419.53,595.28); break;}\n\t\t\t\t\tcase 'A6': {$format = array(297.64,419.53); break;}\n\t\t\t\t\tcase 'A7': {$format = array(209.76,297.64); break;}\n\t\t\t\t\tcase 'A8': {$format = array(147.40,209.76); break;}\n\t\t\t\t\tcase 'A9': {$format = array(104.88,147.40); break;}\n\t\t\t\t\tcase 'A10': {$format = array(73.70,104.88); break;}\n\t\t\t\t\tcase 'B0': {$format = array(2834.65,4008.19); break;}\n\t\t\t\t\tcase 'B1': {$format = array(2004.09,2834.65); break;}\n\t\t\t\t\tcase 'B2': {$format = array(1417.32,2004.09); break;}\n\t\t\t\t\tcase 'B3': {$format = array(1000.63,1417.32); break;}\n\t\t\t\t\tcase 'B4': {$format = array(708.66,1000.63); break;}\n\t\t\t\t\tcase 'B5': {$format = array(498.90,708.66); break;}\n\t\t\t\t\tcase 'B6': {$format = array(354.33,498.90); break;}\n\t\t\t\t\tcase 'B7': {$format = array(249.45,354.33); break;}\n\t\t\t\t\tcase 'B8': {$format = array(175.75,249.45); break;}\n\t\t\t\t\tcase 'B9': {$format = array(124.72,175.75); break;}\n\t\t\t\t\tcase 'B10': {$format = array(87.87,124.72); break;}\n\t\t\t\t\tcase 'C0': {$format = array(2599.37,3676.54); break;}\n\t\t\t\t\tcase 'C1': {$format = array(1836.85,2599.37); break;}\n\t\t\t\t\tcase 'C2': {$format = array(1298.27,1836.85); break;}\n\t\t\t\t\tcase 'C3': {$format = array(918.43,1298.27); break;}\n\t\t\t\t\tcase 'C4': {$format = array(649.13,918.43); break;}\n\t\t\t\t\tcase 'C5': {$format = array(459.21,649.13); break;}\n\t\t\t\t\tcase 'C6': {$format = array(323.15,459.21); break;}\n\t\t\t\t\tcase 'C7': {$format = array(229.61,323.15); break;}\n\t\t\t\t\tcase 'C8': {$format = array(161.57,229.61); break;}\n\t\t\t\t\tcase 'C9': {$format = array(113.39,161.57); break;}\n\t\t\t\t\tcase 'C10': {$format = array(79.37,113.39); break;}\n\t\t\t\t\tcase 'RA0': {$format = array(2437.80,3458.27); break;}\n\t\t\t\t\tcase 'RA1': {$format = array(1729.13,2437.80); break;}\n\t\t\t\t\tcase 'RA2': {$format = array(1218.90,1729.13); break;}\n\t\t\t\t\tcase 'RA3': {$format = array(864.57,1218.90); break;}\n\t\t\t\t\tcase 'RA4': {$format = array(609.45,864.57); break;}\n\t\t\t\t\tcase 'SRA0': {$format = array(2551.18,3628.35); break;}\n\t\t\t\t\tcase 'SRA1': {$format = array(1814.17,2551.18); break;}\n\t\t\t\t\tcase 'SRA2': {$format = array(1275.59,1814.17); break;}\n\t\t\t\t\tcase 'SRA3': {$format = array(907.09,1275.59); break;}\n\t\t\t\t\tcase 'SRA4': {$format = array(637.80,907.09); break;}\n\t\t\t\t\tcase 'LETTER': {$format = array(612.00,792.00); break;}\n\t\t\t\t\tcase 'LEGAL': {$format = array(612.00,1008.00); break;}\n\t\t\t\t\tcase 'EXECUTIVE': {$format = array(521.86,756.00); break;}\n\t\t\t\t\tcase 'FOLIO': {$format = array(612.00,936.00); break;}\n\t\t\t\t}\n\t\t\t\t$this->fwPt = $format[0];\n\t\t\t\t$this->fhPt = $format[1];\n\t\t\t} else {\n\t\t\t\t$this->fwPt = $format[0] * $this->k;\n\t\t\t\t$this->fhPt = $format[1] * $this->k;\n\t\t\t}\n\t\t\t$this->setPageOrientation($orientation);\n\t\t}\n\n\t\t/**\n\t\t * Set page orientation.\n\t\t * @param string $orientation page orientation. Possible values are (case insensitive):<ul><li>P or PORTRAIT (default)</li><li>L or LANDSCAPE</li></ul>\n\t\t * @param boolean $autopagebreak Boolean indicating if auto-page-break mode should be on or off.\n\t\t * @param float $bottommargin bottom margin of the page.\n\t\t * @access public\n\t\t * @since 3.0.015 (2008-06-06)\n\t\t */\n\t\tpublic function setPageOrientation($orientation, $autopagebreak='', $bottommargin='') {\n\t\t\tif ($this->fwPt > $this->fhPt) {\n\t\t\t\t// landscape\n\t\t\t\t$default_orientation = 'L';\n\t\t\t} else {\n\t\t\t\t// portrait\n\t\t\t\t$default_orientation = 'P';\n\t\t\t}\n\t\t\t$valid_orientations = array('P', 'L');\n\t\t\tif (empty($orientation)) {\n\t\t\t\t$orientation = $default_orientation;\n\t\t\t} else {\n\t\t\t\t$orientation = $orientation{0};\n\t\t\t\t$orientation = strtoupper($orientation);\n\t\t\t}\n\t\t\tif (in_array($orientation, $valid_orientations) AND ($orientation != $default_orientation)) {\n\t\t\t\t$this->CurOrientation = $orientation;\n\t\t\t\t$this->wPt = $this->fhPt;\n\t\t\t\t$this->hPt = $this->fwPt;\n\t\t\t} else {\n\t\t\t\t$this->CurOrientation = $default_orientation;\n\t\t\t\t$this->wPt = $this->fwPt;\n\t\t\t\t$this->hPt = $this->fhPt;\n\t\t\t}\n\t\t\t$this->w = $this->wPt / $this->k;\n\t\t\t$this->h = $this->hPt / $this->k;\n\t\t\tif ($this->empty_string($autopagebreak)) {\n\t\t\t\tif (isset($this->AutoPageBreak)) {\n\t\t\t\t\t$autopagebreak = $this->AutoPageBreak;\n\t\t\t\t} else {\n\t\t\t\t\t$autopagebreak = true;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ($this->empty_string($bottommargin)) {\n\t\t\t\tif (isset($this->bMargin)) {\n\t\t\t\t\t$bottommargin = $this->bMargin;\n\t\t\t\t} else {\n\t\t\t\t\t// default value = 2 cm\n\t\t\t\t\t$bottommargin = 2 * 28.35 / $this->k;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$this->SetAutoPageBreak($autopagebreak, $bottommargin);\n\t\t\t// store page dimensions\n\t\t\t$this->pagedim[$this->page] = array('w' => $this->wPt, 'h' => $this->hPt, 'wk' => $this->w, 'hk' => $this->h, 'tm' => $this->tMargin, 'bm' => $bottommargin, 'lm' => $this->lMargin, 'rm' => $this->rMargin, 'pb' => $autopagebreak, 'or' => $this->CurOrientation, 'olm' => $this->original_lMargin, 'orm' => $this->original_rMargin);\n\t\t}\n\n\t\t/**\n\t\t * Set regular expression to detect withespaces or word separators.\n\t\t * @param string $re regular expression (leave empty for default).\n\t\t * @access public\n\t\t * @since 4.6.016 (2009-06-15)\n\t\t */\n\t\tpublic function setSpacesRE($re='/[\\s]/') {\n\t\t\t// if PCRE unicode support is turned ON:\n\t\t\t// \t\\p{Z} or \\p{Separator}: any kind of Unicode whitespace or invisible separator.\n\t\t\t// \t\\p{Lo} or \\p{Other_Letter}: a Unicode letter or ideograph that does not have lowercase and uppercase variants.\n\t\t\t// \t\\p{Lo} is needed because Chinese characters are packed next to each other without spaces in between.\n\t\t\t$this->re_spaces = $re;\n\t\t}\n\n\t\t/**\n\t\t * Enable or disable Right-To-Left language mode\n\t\t * @param Boolean $enable if true enable Right-To-Left language mode.\n\t\t * @param Boolean $resetx if true reset the X position on direction change.\n\t\t * @access public\n\t\t * @since 2.0.000 (2008-01-03)\n\t\t */\n\t\tpublic function setRTL($enable, $resetx=true) {\n\t\t\t$enable = $enable ? true : false;\n\t\t\t$resetx = ($resetx AND ($enable != $this->rtl));\n\t\t\t$this->rtl = $enable;\n\t\t\t$this->tmprtl = false;\n\t\t\tif ($resetx) {\n\t\t\t\t$this->Ln(0);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Return the RTL status\n\t\t * @return boolean\n\t\t * @access public\n\t\t * @since 4.0.012 (2008-07-24)\n\t\t */\n\t\tpublic function getRTL() {\n\t\t\treturn $this->rtl;\n\t\t}\n\n\t\t/**\n\t\t * Force temporary RTL language direction\n\t\t * @param mixed $mode can be false, 'L' for LTR or 'R' for RTL\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-09)\n\t\t */\n\t\tpublic function setTempRTL($mode) {\n\t\t\t$newmode = false;\n\t\t\tswitch ($mode) {\n\t\t\t\tcase 'ltr':\n\t\t\t\tcase 'LTR':\n\t\t\t\tcase 'L': {\n\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t$newmode = 'L';\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'rtl':\n\t\t\t\tcase 'RTL':\n\t\t\t\tcase 'R': {\n\t\t\t\t\tif (!$this->rtl) {\n\t\t\t\t\t\t$newmode = 'R';\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase false:\n\t\t\t\tdefault: {\n\t\t\t\t\t$newmode = false;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$this->tmprtl = $newmode;\n\t\t}\n\n\t\t/**\n\t\t * Return the current temporary RTL status\n\t\t * @return boolean\n\t\t * @access public\n\t\t * @since 4.8.014 (2009-11-04)\n\t\t */\n\t\tpublic function isRTLTextDir() {\n\t\t\treturn ($this->rtl OR ($this->tmprtl == 'R'));\n\t\t}\n\n\t\t/**\n\t\t * Set the last cell height.\n\t\t * @param float $h cell height.\n\t\t * @author Nicola Asuni\n\t\t * @access public\n\t\t * @since 1.53.0.TC034\n\t\t */\n\t\tpublic function setLastH($h) {\n\t\t\t$this->lasth = $h;\n\t\t}\n\n\t\t/**\n\t\t * Get the last cell height.\n\t\t * @return last cell height\n\t\t * @access public\n\t\t * @since 4.0.017 (2008-08-05)\n\t\t */\n\t\tpublic function getLastH() {\n\t\t\treturn $this->lasth;\n\t\t}\n\n\t\t/**\n\t\t * Set the adjusting factor to convert pixels to user units.\n\t\t * @param float $scale adjusting factor to convert pixels to user units.\n\t\t * @author Nicola Asuni\n\t\t * @access public\n\t\t * @since 1.5.2\n\t\t */\n\t\tpublic function setImageScale($scale) {\n\t\t\t$this->imgscale = $scale;\n\t\t}\n\n\t\t/**\n\t\t * Returns the adjusting factor to convert pixels to user units.\n\t\t * @return float adjusting factor to convert pixels to user units.\n\t\t * @author Nicola Asuni\n\t\t * @access public\n\t\t * @since 1.5.2\n\t\t */\n\t\tpublic function getImageScale() {\n\t\t\treturn $this->imgscale;\n\t\t}\n\n\t\t/**\n\t\t * Returns an array of page dimensions:\n\t\t * <ul><li>$this->pagedim[$this->page]['w'] => page_width_in_points</li><li>$this->pagedim[$this->page]['h'] => height in points</li><li>$this->pagedim[$this->page]['wk'] => page_width_in_points</li><li>$this->pagedim[$this->page]['hk'] => height</li><li>$this->pagedim[$this->page]['tm'] => top_margin</li><li>$this->pagedim[$this->page]['bm'] => bottom_margin</li><li>$this->pagedim[$this->page]['lm'] => left_margin</li><li>$this->pagedim[$this->page]['rm'] => right_margin</li><li>$this->pagedim[$this->page]['pb'] => auto_page_break</li><li>$this->pagedim[$this->page]['or'] => page_orientation</li><li>$this->pagedim[$this->page]['olm'] => original_left_margin</li><li>$this->pagedim[$this->page]['orm'] => original_right_margin</li></ul>\n\t\t * @param int $pagenum page number (empty = current page)\n\t\t * @return array of page dimensions.\n\t\t * @author Nicola Asuni\n\t\t * @access public\n\t\t * @since 4.5.027 (2009-03-16)\n\t\t */\n\t\tpublic function getPageDimensions($pagenum='') {\n\t\t\tif (empty($pagenum)) {\n\t\t\t\t$pagenum = $this->page;\n\t\t\t}\n\t\t\treturn $this->pagedim[$pagenum];\n\t\t}\n\n\t\t/**\n\t\t * Returns the page width in units.\n\t\t * @param int $pagenum page number (empty = current page)\n\t\t * @return int page width.\n\t\t * @author Nicola Asuni\n\t\t * @access public\n\t\t * @since 1.5.2\n\t\t * @see getPageDimensions()\n\t\t */\n\t\tpublic function getPageWidth($pagenum='') {\n\t\t\tif (empty($pagenum)) {\n\t\t\t\treturn $this->w;\n\t\t\t}\n\t\t\treturn $this->pagedim[$pagenum]['w'];\n\t\t}\n\n\t\t/**\n\t\t * Returns the page height in units.\n\t\t * @param int $pagenum page number (empty = current page)\n\t\t * @return int page height.\n\t\t * @author Nicola Asuni\n\t\t * @access public\n\t\t * @since 1.5.2\n\t\t * @see getPageDimensions()\n\t\t */\n\t\tpublic function getPageHeight($pagenum='') {\n\t\t\tif (empty($pagenum)) {\n\t\t\t\treturn $this->h;\n\t\t\t}\n\t\t\treturn $this->pagedim[$pagenum]['h'];\n\t\t}\n\n\t\t/**\n\t\t * Returns the page break margin.\n\t\t * @param int $pagenum page number (empty = current page)\n\t\t * @return int page break margin.\n\t\t * @author Nicola Asuni\n\t\t * @access public\n\t\t * @since 1.5.2\n\t\t * @see getPageDimensions()\n\t\t */\n\t\tpublic function getBreakMargin($pagenum='') {\n\t\t\tif (empty($pagenum)) {\n\t\t\t\treturn $this->bMargin;\n\t\t\t}\n\t\t\treturn $this->pagedim[$pagenum]['bm'];\n\t\t}\n\n\t\t/**\n\t\t * Returns the scale factor (number of points in user unit).\n\t\t * @return int scale factor.\n\t\t * @author Nicola Asuni\n\t\t * @access public\n\t\t * @since 1.5.2\n\t\t */\n\t\tpublic function getScaleFactor() {\n\t\t\treturn $this->k;\n\t\t}\n\n\t\t/**\n\t\t * Defines the left, top and right margins.\n\t\t * @param float $left Left margin.\n\t\t * @param float $top Top margin.\n\t\t * @param float $right Right margin. Default value is the left one.\n\t\t * @param boolean $keepmargins if true overwrites the default page margins\n\t\t * @access public\n\t\t * @since 1.0\n\t\t * @see SetLeftMargin(), SetTopMargin(), SetRightMargin(), SetAutoPageBreak()\n\t\t */\n\t\tpublic function SetMargins($left, $top, $right=-1, $keepmargins=false) {\n\t\t\t//Set left, top and right margins\n\t\t\t$this->lMargin = $left;\n\t\t\t$this->tMargin = $top;\n\t\t\tif ($right == -1) {\n\t\t\t\t$right = $left;\n\t\t\t}\n\t\t\t$this->rMargin = $right;\n\t\t\tif ($keepmargins) {\n\t\t\t\t// overwrite original values\n\t\t\t\t$this->original_lMargin = $this->lMargin;\n\t\t\t\t$this->original_rMargin = $this->rMargin;\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Defines the left margin. The method can be called before creating the first page. If the current abscissa gets out of page, it is brought back to the margin.\n\t\t * @param float $margin The margin.\n\t\t * @access public\n\t\t * @since 1.4\n\t\t * @see SetTopMargin(), SetRightMargin(), SetAutoPageBreak(), SetMargins()\n\t\t */\n\t\tpublic function SetLeftMargin($margin) {\n\t\t\t//Set left margin\n\t\t\t$this->lMargin=$margin;\n\t\t\tif (($this->page > 0) AND ($this->x < $margin)) {\n\t\t\t\t$this->x = $margin;\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Defines the top margin. The method can be called before creating the first page.\n\t\t * @param float $margin The margin.\n\t\t * @access public\n\t\t * @since 1.5\n\t\t * @see SetLeftMargin(), SetRightMargin(), SetAutoPageBreak(), SetMargins()\n\t\t */\n\t\tpublic function SetTopMargin($margin) {\n\t\t\t//Set top margin\n\t\t\t$this->tMargin=$margin;\n\t\t\tif (($this->page > 0) AND ($this->y < $margin)) {\n\t\t\t\t$this->y = $margin;\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Defines the right margin. The method can be called before creating the first page.\n\t\t * @param float $margin The margin.\n\t\t * @access public\n\t\t * @since 1.5\n\t\t * @see SetLeftMargin(), SetTopMargin(), SetAutoPageBreak(), SetMargins()\n\t\t */\n\t\tpublic function SetRightMargin($margin) {\n\t\t\t$this->rMargin=$margin;\n\t\t\tif (($this->page > 0) AND ($this->x > ($this->w - $margin))) {\n\t\t\t\t$this->x = $this->w - $margin;\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Set the internal Cell padding.\n\t\t * @param float $pad internal padding.\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-09)\n\t\t * @see Cell(), SetLeftMargin(), SetTopMargin(), SetAutoPageBreak(), SetMargins()\n\t\t */\n\t\tpublic function SetCellPadding($pad) {\n\t\t\t$this->cMargin = $pad;\n\t\t}\n\n\t\t/**\n\t\t * Enables or disables the automatic page breaking mode. When enabling, the second parameter is the distance from the bottom of the page that defines the triggering limit. By default, the mode is on and the margin is 2 cm.\n\t\t * @param boolean $auto Boolean indicating if mode should be on or off.\n\t\t * @param float $margin Distance from the bottom of the page.\n\t\t * @access public\n\t\t * @since 1.0\n\t\t * @see Cell(), MultiCell(), AcceptPageBreak()\n\t\t */\n\t\tpublic function SetAutoPageBreak($auto, $margin=0) {\n\t\t\t//Set auto page break mode and triggering margin\n\t\t\t$this->AutoPageBreak = $auto;\n\t\t\t$this->bMargin = $margin;\n\t\t\t$this->PageBreakTrigger = $this->h - $margin;\n\t\t}\n\n\t\t/**\n\t\t * Defines the way the document is to be displayed by the viewer.\n\t\t * @param mixed $zoom The zoom to use. It can be one of the following string values or a number indicating the zooming factor to use. <ul><li>fullpage: displays the entire page on screen </li><li>fullwidth: uses maximum width of window</li><li>real: uses real size (equivalent to 100% zoom)</li><li>default: uses viewer default mode</li></ul>\n\t\t * @param string $layout The page layout. Possible values are:<ul><li>SinglePage Display one page at a time</li><li>OneColumn Display the pages in one column</li><li>TwoColumnLeft Display the pages in two columns, with odd-numbered pages on the left</li><li>TwoColumnRight Display the pages in two columns, with odd-numbered pages on the right</li><li>TwoPageLeft (PDF 1.5) Display the pages two at a time, with odd-numbered pages on the left</li><li>TwoPageRight (PDF 1.5) Display the pages two at a time, with odd-numbered pages on the right</li></ul>\n\t\t * @param string $mode A name object specifying how the document should be displayed when opened:<ul><li>UseNone Neither document outline nor thumbnail images visible</li><li>UseOutlines Document outline visible</li><li>UseThumbs Thumbnail images visible</li><li>FullScreen Full-screen mode, with no menu bar, window controls, or any other window visible</li><li>UseOC (PDF 1.5) Optional content group panel visible</li><li>UseAttachments (PDF 1.6) Attachments panel visible</li></ul>\n\t\t * @access public\n\t\t * @since 1.2\n\t\t */\n\t\tpublic function SetDisplayMode($zoom, $layout='SinglePage', $mode='UseNone') {\n\t\t\t//Set display mode in viewer\n\t\t\tif (($zoom == 'fullpage') OR ($zoom == 'fullwidth') OR ($zoom == 'real') OR ($zoom == 'default') OR (!is_string($zoom))) {\n\t\t\t\t$this->ZoomMode = $zoom;\n\t\t\t} else {\n\t\t\t\t$this->Error('Incorrect zoom display mode: '.$zoom);\n\t\t\t}\n\t\t\tswitch ($layout) {\n\t\t\t\tcase 'default':\n\t\t\t\tcase 'single':\n\t\t\t\tcase 'SinglePage': {\n\t\t\t\t\t$this->LayoutMode = 'SinglePage';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'continuous':\n\t\t\t\tcase 'OneColumn': {\n\t\t\t\t\t$this->LayoutMode = 'OneColumn';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'two':\n\t\t\t\tcase 'TwoColumnLeft': {\n\t\t\t\t\t$this->LayoutMode = 'TwoColumnLeft';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'TwoColumnRight': {\n\t\t\t\t\t$this->LayoutMode = 'TwoColumnRight';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'TwoPageLeft': {\n\t\t\t\t\t$this->LayoutMode = 'TwoPageLeft';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'TwoPageRight': {\n\t\t\t\t\t$this->LayoutMode = 'TwoPageRight';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tdefault: {\n\t\t\t\t\t$this->LayoutMode = 'SinglePage';\n\t\t\t\t}\n\t\t\t}\n\t\t\tswitch ($mode) {\n\t\t\t\tcase 'UseNone': {\n\t\t\t\t\t$this->PageMode = 'UseNone';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'UseOutlines': {\n\t\t\t\t\t$this->PageMode = 'UseOutlines';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'UseThumbs': {\n\t\t\t\t\t$this->PageMode = 'UseThumbs';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'FullScreen': {\n\t\t\t\t\t$this->PageMode = 'FullScreen';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'UseOC': {\n\t\t\t\t\t$this->PageMode = 'UseOC';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase '': {\n\t\t\t\t\t$this->PageMode = 'UseAttachments';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tdefault: {\n\t\t\t\t\t$this->PageMode = 'UseNone';\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Activates or deactivates page compression. When activated, the internal representation of each page is compressed, which leads to a compression ratio of about 2 for the resulting document. Compression is on by default.\n\t\t * Note: the Zlib extension is required for this feature. If not present, compression will be turned off.\n\t\t * @param boolean $compress Boolean indicating if compression must be enabled.\n\t\t * @access public\n\t\t * @since 1.4\n\t\t */\n\t\tpublic function SetCompression($compress) {\n\t\t\t//Set page compression\n\t\t\tif (function_exists('gzcompress')) {\n\t\t\t\t$this->compress = $compress;\n\t\t\t} else {\n\t\t\t\t$this->compress = false;\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Defines the title of the document.\n\t\t * @param string $title The title.\n\t\t * @access public\n\t\t * @since 1.2\n\t\t * @see SetAuthor(), SetCreator(), SetKeywords(), SetSubject()\n\t\t */\n\t\tpublic function SetTitle($title) {\n\t\t\t//Title of document\n\t\t\t$this->title = $title;\n\t\t}\n\n\t\t/**\n\t\t * Defines the subject of the document.\n\t\t * @param string $subject The subject.\n\t\t * @access public\n\t\t * @since 1.2\n\t\t * @see SetAuthor(), SetCreator(), SetKeywords(), SetTitle()\n\t\t */\n\t\tpublic function SetSubject($subject) {\n\t\t\t//Subject of document\n\t\t\t$this->subject = $subject;\n\t\t}\n\n\t\t/**\n\t\t * Defines the author of the document.\n\t\t * @param string $author The name of the author.\n\t\t * @access public\n\t\t * @since 1.2\n\t\t * @see SetCreator(), SetKeywords(), SetSubject(), SetTitle()\n\t\t */\n\t\tpublic function SetAuthor($author) {\n\t\t\t//Author of document\n\t\t\t$this->author = $author;\n\t\t}\n\n\t\t/**\n\t\t * Associates keywords with the document, generally in the form 'keyword1 keyword2 ...'.\n\t\t * @param string $keywords The list of keywords.\n\t\t * @access public\n\t\t * @since 1.2\n\t\t * @see SetAuthor(), SetCreator(), SetSubject(), SetTitle()\n\t\t */\n\t\tpublic function SetKeywords($keywords) {\n\t\t\t//Keywords of document\n\t\t\t$this->keywords = $keywords;\n\t\t}\n\n\t\t/**\n\t\t * Defines the creator of the document. This is typically the name of the application that generates the PDF.\n\t\t * @param string $creator The name of the creator.\n\t\t * @access public\n\t\t * @since 1.2\n\t\t * @see SetAuthor(), SetKeywords(), SetSubject(), SetTitle()\n\t\t */\n\t\tpublic function SetCreator($creator) {\n\t\t\t//Creator of document\n\t\t\t$this->creator = $creator;\n\t\t}\n\n\t\t/**\n\t\t * This method is automatically called in case of fatal error; it simply outputs the message and halts the execution. An inherited class may override it to customize the error handling but should always halt the script, or the resulting document would probably be invalid.\n\t\t * 2004-06-11 :: Nicola Asuni : changed bold tag with strong\n\t\t * @param string $msg The error message\n\t\t * @access public\n\t\t * @since 1.0\n\t\t */\n\t\tpublic function Error($msg) {\n\t\t\t// unset all class variables\n\t\t\t$this->_destroy(true);\n\t\t\t// exit program and print error\n\t\t\tdie('<strong>TCPDF ERROR: </strong>'.$msg);\n\t\t}\n\n\t\t/**\n\t\t * This method begins the generation of the PDF document.\n\t\t * It is not necessary to call it explicitly because AddPage() does it automatically.\n\t\t * Note: no page is created by this method\n\t\t * @access public\n\t\t * @since 1.0\n\t\t * @see AddPage(), Close()\n\t\t */\n\t\tpublic function Open() {\n\t\t\t//Begin document\n\t\t\t$this->state = 1;\n\t\t}\n\n\t\t/**\n\t\t * Terminates the PDF document.\n\t\t * It is not necessary to call this method explicitly because Output() does it automatically.\n\t\t * If the document contains no page, AddPage() is called to prevent from getting an invalid document.\n\t\t * @access public\n\t\t * @since 1.0\n\t\t * @see Open(), Output()\n\t\t */\n\t\tpublic function Close() {\n\t\t\tif ($this->state == 3) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif ($this->page == 0) {\n\t\t\t\t$this->AddPage();\n\t\t\t}\n\t\t\t// close page\n\t\t\t$this->endPage();\n\t\t\t// close document\n\t\t\t$this->_enddoc();\n\t\t\t// unset all class variables (except critical ones)\n\t\t\t$this->_destroy(false);\n\t\t}\n\n\t\t/**\n\t\t * Move pointer at the specified document page and update page dimensions.\n\t\t * @param int $pnum page number (1 ... numpages)\n\t\t * @param boolean $resetmargins if true reset left, right, top margins and Y position.\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-07)\n\t\t * @see getPage(), lastpage(), getNumPages()\n\t\t */\n\t\tpublic function setPage($pnum, $resetmargins=false) {\n\t\t\tif ($pnum == $this->page) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (($pnum > 0) AND ($pnum <= $this->numpages)) {\n\t\t\t\t$this->state = 2;\n\t\t\t\t// save current graphic settings\n\t\t\t\t//$gvars = $this->getGraphicVars();\n\t\t\t\t$oldpage = $this->page;\n\t\t\t\t$this->page = $pnum;\n\t\t\t\t$this->wPt = $this->pagedim[$this->page]['w'];\n\t\t\t\t$this->hPt = $this->pagedim[$this->page]['h'];\n\t\t\t\t$this->w = $this->wPt / $this->k;\n\t\t\t\t$this->h = $this->hPt / $this->k;\n\t\t\t\t$this->tMargin = $this->pagedim[$this->page]['tm'];\n\t\t\t\t$this->bMargin = $this->pagedim[$this->page]['bm'];\n\t\t\t\t$this->original_lMargin = $this->pagedim[$this->page]['olm'];\n\t\t\t\t$this->original_rMargin = $this->pagedim[$this->page]['orm'];\n\t\t\t\t$this->AutoPageBreak = $this->pagedim[$this->page]['pb'];\n\t\t\t\t$this->CurOrientation = $this->pagedim[$this->page]['or'];\n\t\t\t\t$this->SetAutoPageBreak($this->AutoPageBreak, $this->bMargin);\n\t\t\t\t// restore graphic settings\n\t\t\t\t//$this->setGraphicVars($gvars);\n\t\t\t\tif ($resetmargins) {\n\t\t\t\t\t$this->lMargin = $this->pagedim[$this->page]['olm'];\n\t\t\t\t\t$this->rMargin = $this->pagedim[$this->page]['orm'];\n\t\t\t\t\t$this->SetY($this->tMargin);\n\t\t\t\t} else {\n\t\t\t\t\t// account for booklet mode\n\t\t\t\t\tif ($this->pagedim[$this->page]['olm'] != $this->pagedim[$oldpage]['olm']) {\n\t\t\t\t\t\t$deltam = $this->pagedim[$this->page]['olm'] - $this->pagedim[$this->page]['orm'];\n\t\t\t\t\t\t$this->lMargin += $deltam;\n\t\t\t\t\t\t$this->rMargin -= $deltam;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t$this->Error('Wrong page number on setPage() function.');\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Reset pointer to the last document page.\n\t\t * @param boolean $resetmargins if true reset left, right, top margins and Y position.\n\t\t * @access public\n\t\t * @since 2.0.000 (2008-01-04)\n\t\t * @see setPage(), getPage(), getNumPages()\n\t\t */\n\t\tpublic function lastPage($resetmargins=false) {\n\t\t\t$this->setPage($this->getNumPages(), $resetmargins);\n\t\t}\n\n\t\t/**\n\t\t * Get current document page number.\n\t\t * @return int page number\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-07)\n\t\t * @see setPage(), lastpage(), getNumPages()\n\t\t */\n\t\tpublic function getPage() {\n\t\t\treturn $this->page;\n\t\t}\n\n\n\t\t/**\n\t\t * Get the total number of insered pages.\n\t\t * @return int number of pages\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-07)\n\t\t * @see setPage(), getPage(), lastpage()\n\t\t */\n\t\tpublic function getNumPages() {\n\t\t\treturn $this->numpages;\n\t\t}\n\n\t\t/**\n\t\t * Adds a new TOC (Table Of Content) page to the document.\n\t\t * @param string $orientation page orientation.\n\t\t * @param boolean $keepmargins if true overwrites the default page margins with the current margins\n\t\t * @access public\n\t\t * @since 5.0.001 (2010-05-06)\n\t\t * @see AddPage(), startPage(), endPage(), endTOCPage()\n\t\t */\n\t\tpublic function addTOCPage($orientation='', $format='', $keepmargins=false) {\n\t\t\t$this->AddPage($orientation, $format, $keepmargins, true);\n\t\t}\n\n\t\t/**\n\t\t * Terminate the current TOC (Table Of Content) page\n\t\t * @access public\n\t\t * @since 5.0.001 (2010-05-06)\n\t\t * @see AddPage(), startPage(), endPage(), addTOCPage()\n\t\t */\n\t\tpublic function endTOCPage() {\n\t\t\t$this->endPage(true);\n\t\t}\n\n\t\t/**\n\t\t * Adds a new page to the document. If a page is already present, the Footer() method is called first to output the footer (if enabled). Then the page is added, the current position set to the top-left corner according to the left and top margins (or top-right if in RTL mode), and Header() is called to display the header (if enabled).\n\t\t * The origin of the coordinate system is at the top-left corner (or top-right for RTL) and increasing ordinates go downwards.\n\t\t * @param string $orientation page orientation. Possible values are (case insensitive):<ul><li>P or PORTRAIT (default)</li><li>L or LANDSCAPE</li></ul>\n\t\t * @param mixed $format The format used for pages. It can be either one of the following values (case insensitive) or a custom format in the form of a two-element array containing the width and the height (expressed in the unit given by unit).<ul><li>4A0</li><li>2A0</li><li>A0</li><li>A1</li><li>A2</li><li>A3</li><li>A4 (default)</li><li>A5</li><li>A6</li><li>A7</li><li>A8</li><li>A9</li><li>A10</li><li>B0</li><li>B1</li><li>B2</li><li>B3</li><li>B4</li><li>B5</li><li>B6</li><li>B7</li><li>B8</li><li>B9</li><li>B10</li><li>C0</li><li>C1</li><li>C2</li><li>C3</li><li>C4</li><li>C5</li><li>C6</li><li>C7</li><li>C8</li><li>C9</li><li>C10</li><li>RA0</li><li>RA1</li><li>RA2</li><li>RA3</li><li>RA4</li><li>SRA0</li><li>SRA1</li><li>SRA2</li><li>SRA3</li><li>SRA4</li><li>LETTER</li><li>LEGAL</li><li>EXECUTIVE</li><li>FOLIO</li></ul>\n\t\t * @param boolean $keepmargins if true overwrites the default page margins with the current margins\n\t\t * @param boolean $tocpage if true set the tocpage state to true (the added page will be used to display Table Of Content).\n\t\t * @access public\n\t\t * @since 1.0\n\t\t * @see startPage(), endPage(), addTOCPage(), endTOCPage()\n\t\t */\n\t\tpublic function AddPage($orientation='', $format='', $keepmargins=false, $tocpage=false) {\n\t\t\tif (!isset($this->original_lMargin) OR $keepmargins) {\n\t\t\t\t$this->original_lMargin = $this->lMargin;\n\t\t\t}\n\t\t\tif (!isset($this->original_rMargin) OR $keepmargins) {\n\t\t\t\t$this->original_rMargin = $this->rMargin;\n\t\t\t}\n\t\t\t// terminate previous page\n\t\t\t$this->endPage();\n\t\t\t// start new page\n\t\t\t$this->startPage($orientation, $format, $tocpage);\n\t\t}\n\n\t\t/**\n\t\t * Terminate the current page\n\t\t * @param boolean $tocpage if true set the tocpage state to false (end the page used to display Table Of Content).\n\t\t * @access public\n\t\t * @since 4.2.010 (2008-11-14)\n\t\t * @see AddPage(), startPage(), addTOCPage(), endTOCPage()\n\t\t */\n\t\tpublic function endPage($tocpage=false) {\n\t\t\t// check if page is already closed\n\t\t\tif (($this->page == 0) OR ($this->numpages > $this->page) OR (!$this->pageopen[$this->page])) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t$this->InFooter = true;\n\t\t\t// print page footer\n\t\t\t$this->setFooter();\n\t\t\t// close page\n\t\t\t$this->_endpage();\n\t\t\t// mark page as closed\n\t\t\t$this->pageopen[$this->page] = false;\n\t\t\t$this->InFooter = false;\n\t\t\tif ($tocpage) {\n\t\t\t\t$this->tocpage = false;\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Starts a new page to the document. The page must be closed using the endPage() function.\n\t\t * The origin of the coordinate system is at the top-left corner and increasing ordinates go downwards.\n\t\t * @param string $orientation page orientation. Possible values are (case insensitive):<ul><li>P or PORTRAIT (default)</li><li>L or LANDSCAPE</li></ul>\n\t\t * @param mixed $format The format used for pages. It can be either one of the following values (case insensitive) or a custom format in the form of a two-element array containing the width and the height (expressed in the unit given by unit).<ul><li>4A0</li><li>2A0</li><li>A0</li><li>A1</li><li>A2</li><li>A3</li><li>A4 (default)</li><li>A5</li><li>A6</li><li>A7</li><li>A8</li><li>A9</li><li>A10</li><li>B0</li><li>B1</li><li>B2</li><li>B3</li><li>B4</li><li>B5</li><li>B6</li><li>B7</li><li>B8</li><li>B9</li><li>B10</li><li>C0</li><li>C1</li><li>C2</li><li>C3</li><li>C4</li><li>C5</li><li>C6</li><li>C7</li><li>C8</li><li>C9</li><li>C10</li><li>RA0</li><li>RA1</li><li>RA2</li><li>RA3</li><li>RA4</li><li>SRA0</li><li>SRA1</li><li>SRA2</li><li>SRA3</li><li>SRA4</li><li>LETTER</li><li>LEGAL</li><li>EXECUTIVE</li><li>FOLIO</li></ul>\n\t\t * @param boolean $tocpage if true set the tocpage state to true (the added page will be used to display Table of Content).\n\t\t * @access public\n\t\t * @since 4.2.010 (2008-11-14)\n\t\t * @see AddPage(), endPage(), addTOCPage(), endTOCPage()\n\t\t */\n\t\tpublic function startPage($orientation='', $format='', $tocpage=false) {\n\t\t\tif ($tocpage) {\n\t\t\t\t$this->tocpage = true;\n\t\t\t}\n\t\t\tif ($this->numpages > $this->page) {\n\t\t\t\t// this page has been already added\n\t\t\t\t$this->setPage($this->page + 1);\n\t\t\t\t$this->SetY($this->tMargin);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// start a new page\n\t\t\tif ($this->state == 0) {\n\t\t\t\t$this->Open();\n\t\t\t}\n\t\t\t++$this->numpages;\n\t\t\t$this->swapMargins($this->booklet);\n\t\t\t// save current graphic settings\n\t\t\t$gvars = $this->getGraphicVars();\n\t\t\t// start new page\n\t\t\t$this->_beginpage($orientation, $format);\n\t\t\t// mark page as open\n\t\t\t$this->pageopen[$this->page] = true;\n\t\t\t// restore graphic settings\n\t\t\t$this->setGraphicVars($gvars);\n\t\t\t// mark this point\n\t\t\t$this->setPageMark();\n\t\t\t// print page header\n\t\t\t$this->setHeader();\n\t\t\t// restore graphic settings\n\t\t\t$this->setGraphicVars($gvars);\n\t\t\t// mark this point\n\t\t\t$this->setPageMark();\n\t\t\t// print table header (if any)\n\t\t\t$this->setTableHeader();\n\t\t}\n\n\t\t/**\n\t \t * Set start-writing mark on current page stream used to put borders and fills.\n\t \t * Borders and fills are always created after content and inserted on the position marked by this method.\n\t \t * This function must be called after calling Image() function for a background image.\n\t \t * Background images must be always inserted before calling Multicell() or WriteHTMLCell() or WriteHTML() functions.\n\t \t * @access public\n\t \t * @since 4.0.016 (2008-07-30)\n\t\t */\n\t\tpublic function setPageMark() {\n\t\t\t$this->intmrk[$this->page] = $this->pagelen[$this->page];\n\t\t\t$this->setContentMark();\n\t\t}\n\n\t\t/**\n\t \t * Set start-writing mark on selected page.\n\t \t * Borders and fills are always created after content and inserted on the position marked by this method.\n\t \t * @param int $page page number (default is the current page)\n\t \t * @access protected\n\t \t * @since 4.6.021 (2009-07-20)\n\t\t */\n\t\tprotected function setContentMark($page=0) {\n\t\t\tif ($page <= 0) {\n\t\t\t\t$page = $this->page;\n\t\t\t}\n\t\t\tif (isset($this->footerlen[$page])) {\n\t\t\t\t$this->cntmrk[$page] = $this->pagelen[$page] - $this->footerlen[$page];\n\t\t\t} else {\n\t\t\t\t$this->cntmrk[$page] = $this->pagelen[$page];\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t \t * Set header data.\n\t\t * @param string $ln header image logo\n\t\t * @param string $lw header image logo width in mm\n\t\t * @param string $ht string to print as title on document header\n\t\t * @param string $hs string to print on document header\n\t\t * @access public\n\t\t */\n\t\tpublic function setHeaderData($ln='', $lw=0, $ht='', $hs='') {\n\t\t\t$this->header_logo = $ln;\n\t\t\t$this->header_logo_width = $lw;\n\t\t\t$this->header_title = $ht;\n\t\t\t$this->header_string = $hs;\n\t\t}\n\n\t\t/**\n\t \t * Returns header data:\n\t \t * <ul><li>$ret['logo'] = logo image</li><li>$ret['logo_width'] = width of the image logo in user units</li><li>$ret['title'] = header title</li><li>$ret['string'] = header description string</li></ul>\n\t\t * @return array()\n\t\t * @access public\n\t\t * @since 4.0.012 (2008-07-24)\n\t\t */\n\t\tpublic function getHeaderData() {\n\t\t\t$ret = array();\n\t\t\t$ret['logo'] = $this->header_logo;\n\t\t\t$ret['logo_width'] = $this->header_logo_width;\n\t\t\t$ret['title'] = $this->header_title;\n\t\t\t$ret['string'] = $this->header_string;\n\t\t\treturn $ret;\n\t\t}\n\n\t\t/**\n\t \t * Set header margin.\n\t\t * (minimum distance between header and top page margin)\n\t\t * @param int $hm distance in user units\n\t\t * @access public\n\t\t */\n\t\tpublic function setHeaderMargin($hm=10) {\n\t\t\t$this->header_margin = $hm;\n\t\t}\n\n\t\t/**\n\t \t * Returns header margin in user units.\n\t\t * @return float\n\t\t * @since 4.0.012 (2008-07-24)\n\t\t * @access public\n\t\t */\n\t\tpublic function getHeaderMargin() {\n\t\t\treturn $this->header_margin;\n\t\t}\n\n\t\t/**\n\t \t * Set footer margin.\n\t\t * (minimum distance between footer and bottom page margin)\n\t\t * @param int $fm distance in user units\n\t\t * @access public\n\t\t */\n\t\tpublic function setFooterMargin($fm=10) {\n\t\t\t$this->footer_margin = $fm;\n\t\t}\n\n\t\t/**\n\t \t * Returns footer margin in user units.\n\t\t * @return float\n\t\t * @since 4.0.012 (2008-07-24)\n\t\t * @access public\n\t\t */\n\t\tpublic function getFooterMargin() {\n\t\t\treturn $this->footer_margin;\n\t\t}\n\t\t/**\n\t \t * Set a flag to print page header.\n\t\t * @param boolean $val set to true to print the page header (default), false otherwise.\n\t\t * @access public\n\t\t */\n\t\tpublic function setPrintHeader($val=true) {\n\t\t\t$this->print_header = $val;\n\t\t}\n\n\t\t/**\n\t \t * Set a flag to print page footer.\n\t\t * @param boolean $value set to true to print the page footer (default), false otherwise.\n\t\t * @access public\n\t\t */\n\t\tpublic function setPrintFooter($val=true) {\n\t\t\t$this->print_footer = $val;\n\t\t}\n\n\t\t/**\n\t \t * Return the right-bottom (or left-bottom for RTL) corner X coordinate of last inserted image\n\t\t * @return float\n\t\t * @access public\n\t\t */\n\t\tpublic function getImageRBX() {\n\t\t\treturn $this->img_rb_x;\n\t\t}\n\n\t\t/**\n\t \t * Return the right-bottom (or left-bottom for RTL) corner Y coordinate of last inserted image\n\t\t * @return float\n\t\t * @access public\n\t\t */\n\t\tpublic function getImageRBY() {\n\t\t\treturn $this->img_rb_y;\n\t\t}\n\n\t\t/**\n\t \t * This method is used to render the page header.\n\t \t * It is automatically called by AddPage() and could be overwritten in your own inherited class.\n\t\t * @access public\n\t\t */\n\t\tpublic function Header() {\n\t\t\t$ormargins = $this->getOriginalMargins();\n\t\t\t$headerfont = $this->getHeaderFont();\n\t\t\t$headerdata = $this->getHeaderData();\n\t\t\tif (($headerdata['logo']) AND ($headerdata['logo'] != K_BLANK_IMAGE)) {\n\t\t\t\t$this->Image(K_PATH_IMAGES.$headerdata['logo'], $this->GetX(), $this->getHeaderMargin(), $headerdata['logo_width']);\n\t\t\t\t$imgy = $this->getImageRBY();\n\t\t\t} else {\n\t\t\t\t$imgy = $this->GetY();\n\t\t\t}\n\t\t\t$cell_height = round(($this->getCellHeightRatio() * $headerfont[2]) / $this->getScaleFactor(), 2);\n\t\t\t// set starting margin for text data cell\n\t\t\tif ($this->getRTL()) {\n\t\t\t\t$header_x = $ormargins['right'] + ($headerdata['logo_width'] * 1.1);\n\t\t\t} else {\n\t\t\t\t$header_x = $ormargins['left'] + ($headerdata['logo_width'] * 1.1);\n\t\t\t}\n\t\t\t$this->SetTextColor(0, 0, 0);\n\t\t\t// header title\n\t\t\t$this->SetFont($headerfont[0], 'B', $headerfont[2] + 1);\n\t\t\t$this->SetX($header_x);\n\t\t\t$this->Cell(0, $cell_height, $headerdata['title'], 0, 1, '', 0, '', 0);\n\t\t\t// header string\n\t\t\t$this->SetFont($headerfont[0], $headerfont[1], $headerfont[2]);\n\t\t\t$this->SetX($header_x);\n\t\t\t$this->MultiCell(0, $cell_height, $headerdata['string'], 0, '', 0, 1, '', '', true, 0, false);\n\t\t\t// print an ending header line\n\t\t\t$this->SetLineStyle(array('width' => 0.85 / $this->getScaleFactor(), 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0)));\n\t\t\t$this->SetY((2.835 / $this->getScaleFactor()) + max($imgy, $this->GetY()));\n\t\t\tif ($this->getRTL()) {\n\t\t\t\t$this->SetX($ormargins['right']);\n\t\t\t} else {\n\t\t\t\t$this->SetX($ormargins['left']);\n\t\t\t}\n\t\t\t$this->Cell(0, 0, '', 'T', 0, 'C');\n\t\t}\n\n\t\t/**\n\t \t * This method is used to render the page footer.\n\t \t * It is automatically called by AddPage() and could be overwritten in your own inherited class.\n\t\t * @access public\n\t\t */\n\t\tpublic function Footer() {\n\t\t\t$cur_y = $this->GetY();\n\t\t\t$ormargins = $this->getOriginalMargins();\n\t\t\t$this->SetTextColor(0, 0, 0);\n\t\t\t//set style for cell border\n\t\t\t$line_width = 0.85 / $this->getScaleFactor();\n\t\t\t$this->SetLineStyle(array('width' => $line_width, 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => array(0, 0, 0)));\n\t\t\t//print document barcode\n\t\t\t$barcode = $this->getBarcode();\n\t\t\tif (!empty($barcode)) {\n\t\t\t\t$this->Ln($line_width);\n\t\t\t\t$barcode_width = round(($this->getPageWidth() - $ormargins['left'] - $ormargins['right'])/3);\n\t\t\t\t$this->write1DBarcode($barcode, 'C128B', $this->GetX(), $cur_y + $line_width, $barcode_width, (($this->getFooterMargin() / 3) - $line_width), 0.3, '', '');\n\t\t\t}\n\t\t\tif (empty($this->pagegroups)) {\n\t\t\t\t$pagenumtxt = $this->l['w_page'].' '.$this->getAliasNumPage().' / '.$this->getAliasNbPages();\n\t\t\t} else {\n\t\t\t\t$pagenumtxt = $this->l['w_page'].' '.$this->getPageNumGroupAlias().' / '.$this->getPageGroupAlias();\n\t\t\t}\n\t\t\t$this->SetY($cur_y);\n\t\t\t//Print page number\n\t\t\tif ($this->getRTL()) {\n\t\t\t\t$this->SetX($ormargins['right']);\n\t\t\t\t$this->Cell(0, 0, $pagenumtxt, 'T', 0, 'L');\n\t\t\t} else {\n\t\t\t\t$this->SetX($ormargins['left']);\n\t\t\t\t$this->Cell(0, 0, $pagenumtxt, 'T', 0, 'R');\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t \t * This method is used to render the page header.\n\t \t * @access protected\n\t \t * @since 4.0.012 (2008-07-24)\n\t\t */\n\t\tprotected function setHeader() {\n\t\t\tif ($this->print_header) {\n\t\t\t\t$temp_thead = $this->thead;\n    \t\t\t$temp_theadMargins = $this->theadMargins;\n\t\t\t\t$lasth = $this->lasth;\n\t\t\t\t$this->_out('q');\n\t\t\t\t$this->rMargin = $this->original_rMargin;\n\t\t\t\t$this->lMargin = $this->original_lMargin;\n\t\t\t\t$this->cMargin = 0;\n\t\t\t\t//set current position\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$this->SetXY($this->original_rMargin, $this->header_margin);\n\t\t\t\t} else {\n\t\t\t\t\t$this->SetXY($this->original_lMargin, $this->header_margin);\n\t\t\t\t}\n\t\t\t\t$this->SetFont($this->header_font[0], $this->header_font[1], $this->header_font[2]);\n\t\t\t\t$this->Header();\n\t\t\t\t//restore position\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$this->SetXY($this->original_rMargin, $this->tMargin);\n\t\t\t\t} else {\n\t\t\t\t\t$this->SetXY($this->original_lMargin, $this->tMargin);\n\t\t\t\t}\n\t\t\t\t$this->_out('Q');\n\t\t\t\t$this->lasth = $lasth;\n\t\t\t\t$this->thead = $temp_thead;\n\t\t\t\t$this->theadMargins = $temp_theadMargins;\n\t\t\t\t$this->newline = false;\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t \t * This method is used to render the page footer.\n\t \t * @access protected\n\t \t * @since 4.0.012 (2008-07-24)\n\t\t */\n\t\tprotected function setFooter() {\n\t\t\t//Page footer\n\t\t\t// save current graphic settings\n\t\t\t$gvars = $this->getGraphicVars();\n\t\t\t// mark this point\n\t\t\t$this->footerpos[$this->page] = $this->pagelen[$this->page];\n\t\t\t$this->_out(\"\\n\");\n\t\t\tif ($this->print_footer) {\n\t\t\t\t$temp_thead = $this->thead;\n    \t\t\t$temp_theadMargins = $this->theadMargins;\n\t\t\t\t$lasth = $this->lasth;\n\t\t\t\t$this->_out('q');\n\t\t\t\t$this->rMargin = $this->original_rMargin;\n\t\t\t\t$this->lMargin = $this->original_lMargin;\n\t\t\t\t$this->cMargin = 0;\n\t\t\t\t//set current position\n\t\t\t\t$footer_y = $this->h - $this->footer_margin;\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$this->SetXY($this->original_rMargin, $footer_y);\n\t\t\t\t} else {\n\t\t\t\t\t$this->SetXY($this->original_lMargin, $footer_y);\n\t\t\t\t}\n\t\t\t\t$this->SetFont($this->footer_font[0], $this->footer_font[1], $this->footer_font[2]);\n\t\t\t\t$this->Footer();\n\t\t\t\t//restore position\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$this->SetXY($this->original_rMargin, $this->tMargin);\n\t\t\t\t} else {\n\t\t\t\t\t$this->SetXY($this->original_lMargin, $this->tMargin);\n\t\t\t\t}\n\t\t\t\t$this->_out('Q');\n\t\t\t\t$this->lasth = $lasth;\n\t\t\t\t$this->thead = $temp_thead;\n\t\t\t\t$this->theadMargins = $temp_theadMargins;\n\t\t\t}\n\t\t\t// restore graphic settings\n\t\t\t$this->setGraphicVars($gvars);\n\t\t\t// calculate footer length\n\t\t\t$this->footerlen[$this->page] = $this->pagelen[$this->page] - $this->footerpos[$this->page] + 1;\n\t\t}\n\n\t\t/**\n\t \t * This method is used to render the table header on new page (if any).\n\t \t * @access protected\n\t \t * @since 4.5.030 (2009-03-25)\n\t\t */\n\t\tprotected function setTableHeader() {\n\t\t\tif ($this->num_columns > 1) {\n\t\t\t\t// multi column mode\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (isset($this->theadMargins['top'])) {\n\t\t\t\t// restore the original top-margin\n\t\t\t\t$this->tMargin = $this->theadMargins['top'];\n\t\t\t\t$this->pagedim[$this->page]['tm'] = $this->tMargin;\n\t\t\t\t$this->y = $this->tMargin;\n\t\t\t}\n\t\t\tif (!$this->empty_string($this->thead) AND (!$this->inthead)) {\n\t\t\t\t// set margins\n\t\t\t\t$prev_lMargin = $this->lMargin;\n\t\t\t\t$prev_rMargin = $this->rMargin;\n\t\t\t\t$this->lMargin = $this->pagedim[$this->page]['olm'];\n\t\t\t\t$this->rMargin = $this->pagedim[$this->page]['orm'];\n\t\t\t\t$this->cMargin = $this->theadMargins['cmargin'];\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$this->x = $this->w - $this->rMargin;\n\t\t\t\t} else {\n\t\t\t\t\t$this->x = $this->lMargin;\n\t\t\t\t}\n\t\t\t\t// print table header\n\t\t\t\t$this->writeHTML($this->thead, false, false, false, false, '');\n\t\t\t\t// set new top margin to skip the table headers\n\t\t\t\tif (!isset($this->theadMargins['top'])) {\n\t\t\t\t\t$this->theadMargins['top'] = $this->tMargin;\n\t\t\t\t}\n\t\t\t\t$this->tMargin = $this->y;\n\t\t\t\t$this->pagedim[$this->page]['tm'] = $this->tMargin;\n\t\t\t\t$this->lasth = 0;\n\t\t\t\t$this->lMargin = $prev_lMargin;\n\t\t\t\t$this->rMargin = $prev_rMargin;\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Returns the current page number.\n\t\t * @return int page number\n\t\t * @access public\n\t\t * @since 1.0\n\t\t * @see AliasNbPages(), getAliasNbPages()\n\t\t */\n\t\tpublic function PageNo() {\n\t\t\treturn $this->page;\n\t\t}\n\n\t\t/**\n\t\t * Defines a new spot color.\n\t\t * It can be expressed in RGB components or gray scale.\n\t\t * The method can be called before the first page is created and the value is retained from page to page.\n\t\t * @param int $c Cyan color for CMYK. Value between 0 and 255\n\t\t * @param int $m Magenta color for CMYK. Value between 0 and 255\n\t\t * @param int $y Yellow color for CMYK. Value between 0 and 255\n\t\t * @param int $k Key (Black) color for CMYK. Value between 0 and 255\n\t\t * @access public\n\t\t * @since 4.0.024 (2008-09-12)\n\t\t * @see SetDrawSpotColor(), SetFillSpotColor(), SetTextSpotColor()\n\t\t */\n\t\tpublic function AddSpotColor($name, $c, $m, $y, $k) {\n\t\t\tif (!isset($this->spot_colors[$name])) {\n\t\t\t\t$i = 1 + count($this->spot_colors);\n\t\t\t\t$this->spot_colors[$name] = array('i' => $i, 'c' => $c, 'm' => $m, 'y' => $y, 'k' => $k);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Defines the color used for all drawing operations (lines, rectangles and cell borders).\n\t\t * It can be expressed in RGB components or gray scale.\n\t\t * The method can be called before the first page is created and the value is retained from page to page.\n\t\t * @param array $color array of colors\n\t\t * @access public\n\t\t * @since 3.1.000 (2008-06-11)\n\t\t * @see SetDrawColor()\n\t\t */\n\t\tpublic function SetDrawColorArray($color) {\n\t\t\tif (isset($color)) {\n\t\t\t\t$color = array_values($color);\n\t\t\t\t$r = isset($color[0]) ? $color[0] : -1;\n\t\t\t\t$g = isset($color[1]) ? $color[1] : -1;\n\t\t\t\t$b = isset($color[2]) ? $color[2] : -1;\n\t\t\t\t$k = isset($color[3]) ? $color[3] : -1;\n\t\t\t\tif ($r >= 0) {\n\t\t\t\t\t$this->SetDrawColor($r, $g, $b, $k);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Defines the color used for all drawing operations (lines, rectangles and cell borders). It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page.\n\t\t * @param int $col1 Gray level for single color, or Red color for RGB, or Cyan color for CMYK. Value between 0 and 255\n\t\t * @param int $col2 Green color for RGB, or Magenta color for CMYK. Value between 0 and 255\n\t\t * @param int $col3 Blue color for RGB, or Yellow color for CMYK. Value between 0 and 255\n\t\t * @param int $col4 Key (Black) color for CMYK. Value between 0 and 255\n\t\t * @access public\n\t\t * @since 1.3\n\t\t * @see SetDrawColorArray(), SetFillColor(), SetTextColor(), Line(), Rect(), Cell(), MultiCell()\n\t\t */\n\t\tpublic function SetDrawColor($col1=0, $col2=-1, $col3=-1, $col4=-1) {\n\t\t\t// set default values\n\t\t\tif (!is_numeric($col1)) {\n\t\t\t\t$col1 = 0;\n\t\t\t}\n\t\t\tif (!is_numeric($col2)) {\n\t\t\t\t$col2 = -1;\n\t\t\t}\n\t\t\tif (!is_numeric($col3)) {\n\t\t\t\t$col3 = -1;\n\t\t\t}\n\t\t\tif (!is_numeric($col4)) {\n\t\t\t\t$col4 = -1;\n\t\t\t}\n\t\t\t//Set color for all stroking operations\n\t\t\tif (($col2 == -1) AND ($col3 == -1) AND ($col4 == -1)) {\n\t\t\t\t// Grey scale\n\t\t\t\t$this->DrawColor = sprintf('%.3F G', $col1/255);\n\t\t\t\t$this->strokecolor = array('G' => $col1);\n\t\t\t} elseif ($col4 == -1) {\n\t\t\t\t// RGB\n\t\t\t\t$this->DrawColor = sprintf('%.3F %.3F %.3F RG', $col1/255, $col2/255, $col3/255);\n\t\t\t\t$this->strokecolor = array('R' => $col1, 'G' => $col2, 'B' => $col3);\n\t\t\t} else {\n\t\t\t\t// CMYK\n\t\t\t\t$this->DrawColor = sprintf('%.3F %.3F %.3F %.3F K', $col1/100, $col2/100, $col3/100, $col4/100);\n\t\t\t\t$this->strokecolor = array('C' => $col1, 'M' => $col2, 'Y' => $col3, 'K' => $col4);\n\t\t\t}\n\t\t\tif ($this->page > 0) {\n\t\t\t\t$this->_out($this->DrawColor);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Defines the spot color used for all drawing operations (lines, rectangles and cell borders).\n\t\t * @param string $name name of the spot color\n\t\t * @param int $tint the intensity of the color (from 0 to 100 ; 100 = full intensity by default).\n\t\t * @access public\n\t\t * @since 4.0.024 (2008-09-12)\n\t\t * @see AddSpotColor(), SetFillSpotColor(), SetTextSpotColor()\n\t\t */\n\t\tpublic function SetDrawSpotColor($name, $tint=100) {\n\t\t\tif (!isset($this->spot_colors[$name])) {\n\t\t\t\t$this->Error('Undefined spot color: '.$name);\n\t\t\t}\n\t\t\t$this->DrawColor = sprintf('/CS%d CS %.3F SCN', $this->spot_colors[$name]['i'], $tint/100);\n\t\t\tif ($this->page > 0) {\n\t\t\t\t$this->_out($this->DrawColor);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Defines the color used for all filling operations (filled rectangles and cell backgrounds).\n\t\t * It can be expressed in RGB components or gray scale.\n\t\t * The method can be called before the first page is created and the value is retained from page to page.\n\t\t * @param array $color array of colors\n\t\t * @access public\n\t\t * @since 3.1.000 (2008-6-11)\n\t\t * @see SetFillColor()\n\t\t */\n\t\tpublic function SetFillColorArray($color) {\n\t\t\tif (isset($color)) {\n\t\t\t\t$color = array_values($color);\n\t\t\t\t$r = isset($color[0]) ? $color[0] : -1;\n\t\t\t\t$g = isset($color[1]) ? $color[1] : -1;\n\t\t\t\t$b = isset($color[2]) ? $color[2] : -1;\n\t\t\t\t$k = isset($color[3]) ? $color[3] : -1;\n\t\t\t\tif ($r >= 0) {\n\t\t\t\t\t$this->SetFillColor($r, $g, $b, $k);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Defines the color used for all filling operations (filled rectangles and cell backgrounds). It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page.\n\t\t * @param int $col1 Gray level for single color, or Red color for RGB, or Cyan color for CMYK. Value between 0 and 255\n\t\t * @param int $col2 Green color for RGB, or Magenta color for CMYK. Value between 0 and 255\n\t\t * @param int $col3 Blue color for RGB, or Yellow color for CMYK. Value between 0 and 255\n\t\t * @param int $col4 Key (Black) color for CMYK. Value between 0 and 255\n\t\t * @access public\n\t\t * @since 1.3\n\t\t * @see SetFillColorArray(), SetDrawColor(), SetTextColor(), Rect(), Cell(), MultiCell()\n\t\t */\n\t\tpublic function SetFillColor($col1=0, $col2=-1, $col3=-1, $col4=-1) {\n\t\t\t// set default values\n\t\t\tif (!is_numeric($col1)) {\n\t\t\t\t$col1 = 0;\n\t\t\t}\n\t\t\tif (!is_numeric($col2)) {\n\t\t\t\t$col2 = -1;\n\t\t\t}\n\t\t\tif (!is_numeric($col3)) {\n\t\t\t\t$col3 = -1;\n\t\t\t}\n\t\t\tif (!is_numeric($col4)) {\n\t\t\t\t$col4 = -1;\n\t\t\t}\n\t\t\t//Set color for all filling operations\n\t\t\tif (($col2 == -1) AND ($col3 == -1) AND ($col4 == -1)) {\n\t\t\t\t// Grey scale\n\t\t\t\t$this->FillColor = sprintf('%.3F g', $col1/255);\n\t\t\t\t$this->bgcolor = array('G' => $col1);\n\t\t\t} elseif ($col4 == -1) {\n\t\t\t\t// RGB\n\t\t\t\t$this->FillColor = sprintf('%.3F %.3F %.3F rg', $col1/255, $col2/255, $col3/255);\n\t\t\t\t$this->bgcolor = array('R' => $col1, 'G' => $col2, 'B' => $col3);\n\t\t\t} else {\n\t\t\t\t// CMYK\n\t\t\t\t$this->FillColor = sprintf('%.3F %.3F %.3F %.3F k', $col1/100, $col2/100, $col3/100, $col4/100);\n\t\t\t\t$this->bgcolor = array('C' => $col1, 'M' => $col2, 'Y' => $col3, 'K' => $col4);\n\t\t\t}\n\t\t\t$this->ColorFlag = ($this->FillColor != $this->TextColor);\n\t\t\tif ($this->page > 0) {\n\t\t\t\t$this->_out($this->FillColor);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Defines the spot color used for all filling operations (filled rectangles and cell backgrounds).\n\t\t * @param string $name name of the spot color\n\t\t * @param int $tint the intensity of the color (from 0 to 100 ; 100 = full intensity by default).\n\t\t * @access public\n\t\t * @since 4.0.024 (2008-09-12)\n\t\t * @see AddSpotColor(), SetDrawSpotColor(), SetTextSpotColor()\n\t\t */\n\t\tpublic function SetFillSpotColor($name, $tint=100) {\n\t\t\tif (!isset($this->spot_colors[$name])) {\n\t\t\t\t$this->Error('Undefined spot color: '.$name);\n\t\t\t}\n\t\t\t$this->FillColor = sprintf('/CS%d cs %.3F scn', $this->spot_colors[$name]['i'], $tint/100);\n\t\t\t$this->ColorFlag = ($this->FillColor != $this->TextColor);\n\t\t\tif ($this->page > 0) {\n\t\t\t\t$this->_out($this->FillColor);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Defines the color used for text. It can be expressed in RGB components or gray scale.\n\t\t * The method can be called before the first page is created and the value is retained from page to page.\n\t\t * @param array $color array of colors\n\t\t * @access public\n\t\t * @since 3.1.000 (2008-6-11)\n\t\t * @see SetFillColor()\n\t\t */\n\t\tpublic function SetTextColorArray($color) {\n\t\t\tif (isset($color)) {\n\t\t\t\t$color = array_values($color);\n\t\t\t\t$r = isset($color[0]) ? $color[0] : -1;\n\t\t\t\t$g = isset($color[1]) ? $color[1] : -1;\n\t\t\t\t$b = isset($color[2]) ? $color[2] : -1;\n\t\t\t\t$k = isset($color[3]) ? $color[3] : -1;\n\t\t\t\tif ($r >= 0) {\n\t\t\t\t\t$this->SetTextColor($r, $g, $b, $k);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Defines the color used for text. It can be expressed in RGB components or gray scale. The method can be called before the first page is created and the value is retained from page to page.\n\t\t * @param int $col1 Gray level for single color, or Red color for RGB, or Cyan color for CMYK. Value between 0 and 255\n\t\t * @param int $col2 Green color for RGB, or Magenta color for CMYK. Value between 0 and 255\n\t\t * @param int $col3 Blue color for RGB, or Yellow color for CMYK. Value between 0 and 255\n\t\t * @param int $col4 Key (Black) color for CMYK. Value between 0 and 255\n\t\t * @access public\n\t\t * @since 1.3\n\t\t * @see SetTextColorArray(), SetDrawColor(), SetFillColor(), Text(), Cell(), MultiCell()\n\t\t */\n\t\tpublic function SetTextColor($col1=0, $col2=-1, $col3=-1, $col4=-1) {\n\t\t\t// set default values\n\t\t\tif (!is_numeric($col1)) {\n\t\t\t\t$col1 = 0;\n\t\t\t}\n\t\t\tif (!is_numeric($col2)) {\n\t\t\t\t$col2 = -1;\n\t\t\t}\n\t\t\tif (!is_numeric($col3)) {\n\t\t\t\t$col3 = -1;\n\t\t\t}\n\t\t\tif (!is_numeric($col4)) {\n\t\t\t\t$col4 = -1;\n\t\t\t}\n\t\t\t//Set color for text\n\t\t\tif (($col2 == -1) AND ($col3 == -1) AND ($col4 == -1)) {\n\t\t\t\t// Grey scale\n\t\t\t\t$this->TextColor = sprintf('%.3F g', $col1/255);\n\t\t\t\t$this->fgcolor = array('G' => $col1);\n\t\t\t} elseif ($col4 == -1) {\n\t\t\t\t// RGB\n\t\t\t\t$this->TextColor = sprintf('%.3F %.3F %.3F rg', $col1/255, $col2/255, $col3/255);\n\t\t\t\t$this->fgcolor = array('R' => $col1, 'G' => $col2, 'B' => $col3);\n\t\t\t} else {\n\t\t\t\t// CMYK\n\t\t\t\t$this->TextColor = sprintf('%.3F %.3F %.3F %.3F k', $col1/100, $col2/100, $col3/100, $col4/100);\n\t\t\t\t$this->fgcolor = array('C' => $col1, 'M' => $col2, 'Y' => $col3, 'K' => $col4);\n\t\t\t}\n\t\t\t$this->ColorFlag = ($this->FillColor != $this->TextColor);\n\t\t}\n\n\t\t/**\n\t\t * Defines the spot color used for text.\n\t\t * @param string $name name of the spot color\n\t\t * @param int $tint the intensity of the color (from 0 to 100 ; 100 = full intensity by default).\n\t\t * @access public\n\t\t * @since 4.0.024 (2008-09-12)\n\t\t * @see AddSpotColor(), SetDrawSpotColor(), SetFillSpotColor()\n\t\t */\n\t\tpublic function SetTextSpotColor($name, $tint=100) {\n\t\t\tif (!isset($this->spot_colors[$name])) {\n\t\t\t\t$this->Error('Undefined spot color: '.$name);\n\t\t\t}\n\t\t\t$this->TextColor = sprintf('/CS%d cs %.3F scn', $this->spot_colors[$name]['i'], $tint/100);\n\t\t\t$this->ColorFlag = ($this->FillColor != $this->TextColor);\n\t\t\tif ($this->page > 0) {\n\t\t\t\t$this->_out($this->TextColor);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Returns the length of a string in user unit. A font must be selected.<br>\n\t\t * @param string $s The string whose length is to be computed\n\t\t * @param string $fontname Family font. It can be either a name defined by AddFont() or one of the standard families. It is also possible to pass an empty string, in that case, the current family is retained.\n\t\t * @param string $fontstyle Font style. Possible values are (case insensitive):<ul><li>empty string: regular</li><li>B: bold</li><li>I: italic</li><li>U: underline</li><li>D: line-trough</li><li>O: overline</li></ul> or any combination. The default value is regular.\n\t\t * @param float $fontsize Font size in points. The default value is the current size.\n\t\t * @param boolean $getarray if true returns an array of characters widths, if false returns the total length.\n\t\t * @return mixed int total string length or array of characted widths\n\t\t * @author Nicola Asuni\n\t\t * @access public\n\t\t * @since 1.2\n\t\t */\n\t\tpublic function GetStringWidth($s, $fontname='', $fontstyle='', $fontsize=0, $getarray=false) {\n\t\t\treturn $this->GetArrStringWidth($this->utf8Bidi($this->UTF8StringToArray($s), $s, $this->tmprtl), $fontname, $fontstyle, $fontsize, $getarray);\n\t\t}\n\n\t\t/**\n\t\t * Returns the string length of an array of chars in user unit or an array of characters widths. A font must be selected.<br>\n\t\t * @param string $sa The array of chars whose total length is to be computed\n\t\t * @param string $fontname Family font. It can be either a name defined by AddFont() or one of the standard families. It is also possible to pass an empty string, in that case, the current family is retained.\n\t\t * @param string $fontstyle Font style. Possible values are (case insensitive):<ul><li>empty string: regular</li><li>B: bold</li><li>I: italic</li><li>U: underline</li><li>D: line trough</li><li>O: overline</li></ul> or any combination. The default value is regular.\n\t\t * @param float $fontsize Font size in points. The default value is the current size.\n\t\t * @param boolean $getarray if true returns an array of characters widths, if false returns the total length.\n\t\t * @return mixed int total string length or array of characted widths\n\t\t * @author Nicola Asuni\n\t\t * @access public\n\t\t * @since 2.4.000 (2008-03-06)\n\t\t */\n\t\tpublic function GetArrStringWidth($sa, $fontname='', $fontstyle='', $fontsize=0, $getarray=false) {\n\t\t\t// store current values\n\t\t\tif (!$this->empty_string($fontname)) {\n\t\t\t\t$prev_FontFamily = $this->FontFamily;\n\t\t\t\t$prev_FontStyle = $this->FontStyle;\n\t\t\t\t$prev_FontSizePt = $this->FontSizePt;\n\t\t\t\t$this->SetFont($fontname, $fontstyle, $fontsize);\n\t\t\t}\n\t\t\t// convert UTF-8 array to Latin1 if required\n\t\t\t$sa = $this->UTF8ArrToLatin1($sa);\n\t\t\t$w = 0; // total width\n\t\t\t$wa = array(); // array of characters widths\n\t\t\tforeach ($sa as $char) {\n\t\t\t\t// character width\n\t\t\t\t$cw = $this->GetCharWidth($char);\n\t\t\t\t$wa[] = $cw;\n\t\t\t\t$w += $cw;\n\t\t\t}\n\t\t\t// restore previous values\n\t\t\tif (!$this->empty_string($fontname)) {\n\t\t\t\t$this->SetFont($prev_FontFamily, $prev_FontStyle, $prev_FontSizePt);\n\t\t\t}\n\t\t\tif ($getarray) {\n\t\t\t\treturn $wa;\n\t\t\t}\n\t\t\treturn $w;\n\t\t}\n\n\t\t/**\n\t\t * Returns the length of the char in user unit for the current font.\n\t\t * @param int $char The char code whose length is to be returned\n\t\t * @return int char width\n\t\t * @author Nicola Asuni\n\t\t * @access public\n\t\t * @since 2.4.000 (2008-03-06)\n\t\t */\n\t\tpublic function GetCharWidth($char) {\n\t\t\tif ($char == 173) {\n\t\t\t\t// SHY character will not be printed\n\t\t\t\treturn (0);\n\t\t\t}\n\t\t\t$cw = &$this->CurrentFont['cw'];\n\t\t\tif (isset($cw[$char])) {\n\t\t\t\t$w = $cw[$char];\n\t\t\t} elseif (isset($this->CurrentFont['dw'])) {\n\t\t\t\t// default width\n\t\t\t\t$w = $this->CurrentFont['dw'];\n\t\t\t} elseif (isset($cw[32])) {\n\t\t\t\t// default width\n\t\t\t\t$w = $cw[32];\n\t\t\t} else {\n\t\t\t\t$w = 600;\n\t\t\t}\n\t\t\treturn ($w * $this->FontSize / 1000);\n\t\t}\n\n\t\t/**\n\t\t * Returns the numbero of characters in a string.\n\t\t * @param string $s The input string.\n\t\t * @return int number of characters\n\t\t * @access public\n\t\t * @since 2.0.0001 (2008-01-07)\n\t\t */\n\t\tpublic function GetNumChars($s) {\n\t\t\tif (($this->CurrentFont['type'] == 'TrueTypeUnicode') OR ($this->CurrentFont['type'] == 'cidfont0')) {\n\t\t\t\treturn count($this->UTF8StringToArray($s));\n\t\t\t}\n\t\t\treturn strlen($s);\n\t\t}\n\n\t\t/**\n\t\t * Fill the list of available fonts ($this->fontlist).\n\t\t * @access protected\n\t\t * @since 4.0.013 (2008-07-28)\n\t\t */\n\t\tprotected function getFontsList() {\n\t\t\t$fontsdir = opendir($this->_getfontpath());\n\t\t\twhile (($file = readdir($fontsdir)) !== false) {\n\t\t\t\tif (substr($file, -4) == '.php') {\n\t\t\t\t\tarray_push($this->fontlist, strtolower(basename($file, '.php')));\n\t\t\t\t}\n\t\t\t}\n\t\t\tclosedir($fontsdir);\n\t\t}\n\n\t\t/**\n\t\t * Imports a TrueType, Type1, core, or CID0 font and makes it available.\n\t\t * It is necessary to generate a font definition file first (read /fonts/utils/README.TXT).\n\t\t * The definition file (and the font file itself when embedding) must be present either in the current directory or in the one indicated by K_PATH_FONTS if the constant is defined. If it could not be found, the error \"Could not include font definition file\" is generated.\n\t\t * @param string $family Font family. The name can be chosen arbitrarily. If it is a standard family name, it will override the corresponding font.\n\t\t * @param string $style Font style. Possible values are (case insensitive):<ul><li>empty string: regular (default)</li><li>B: bold</li><li>I: italic</li><li>BI or IB: bold italic</li></ul>\n\t\t * @param string $fontfile The font definition file. By default, the name is built from the family and style, in lower case with no spaces.\n\t\t * @return array containing the font data, or false in case of error.\n\t\t * @access public\n\t\t * @since 1.5\n\t\t * @see SetFont()\n\t\t */\n\t\tpublic function AddFont($family, $style='', $fontfile='') {\n\t\t\tif ($this->empty_string($family)) {\n\t\t\t\tif (!$this->empty_string($this->FontFamily)) {\n\t\t\t\t\t$family = $this->FontFamily;\n\t\t\t\t} else {\n\t\t\t\t\t$this->Error('Empty font family');\n\t\t\t\t}\n\t\t\t}\n\t\t\t$family = strtolower($family);\n\t\t\tif ((!$this->isunicode) AND ($family == 'arial')) {\n\t\t\t\t$family = 'helvetica';\n\t\t\t}\n\t\t\tif (($family == 'symbol') OR ($family == 'zapfdingbats')) {\n\t\t\t\t$style = '';\n\t\t\t}\n\t\t\t$tempstyle = strtoupper($style);\n\t\t\t$style = '';\n\t\t\t// underline\n\t\t\tif (strpos($tempstyle, 'U') !== false) {\n\t\t\t\t$this->underline = true;\n\t\t\t} else {\n\t\t\t\t$this->underline = false;\n\t\t\t}\n\t\t\t// line-through (deleted)\n\t\t\tif (strpos($tempstyle, 'D') !== false) {\n\t\t\t\t$this->linethrough = true;\n\t\t\t} else {\n\t\t\t\t$this->linethrough = false;\n\t\t\t}\n\t\t\t// overline\n\t\t\tif (strpos($tempstyle, 'O') !== false) {\n\t\t\t\t$this->overline = true;\n\t\t\t} else {\n\t\t\t\t$this->overline = false;\n\t\t\t}\n\t\t\t// bold\n\t\t\tif (strpos($tempstyle, 'B') !== false) {\n\t\t\t\t$style .= 'B';\n\t\t\t}\n\t\t\t// oblique\n\t\t\tif (strpos($tempstyle, 'I') !== false) {\n\t\t\t\t$style .= 'I';\n\t\t\t}\n\t\t\t$bistyle = $style;\n\t\t\t$fontkey = $family.$style;\n\t\t\t$font_style = $style.($this->underline ? 'U' : '').($this->linethrough ? 'D' : '').($this->overline ? 'O' : '');\n\t\t\t$fontdata = array('fontkey' => $fontkey, 'family' => $family, 'style' => $font_style);\n\t\t\t// check if the font has been already added\n\t\t\tif ($this->getFontBuffer($fontkey) !== false) {\n\t\t\t\treturn $fontdata;\n\t\t\t}\n\t\t\tif (isset($type)) {\n\t\t\t\tunset($type);\n\t\t\t}\n\t\t\tif (isset($cw)) {\n\t\t\t\tunset($cw);\n\t\t\t}\n\t\t\t// get specified font directory (if any)\n\t\t\t$fontdir = false;\n\t\t\tif (!$this->empty_string($fontfile)) {\n\t\t\t\t$fontdir = dirname($fontfile);\n\t\t\t\tif ($this->empty_string($fontdir) OR ($fontdir == '.')) {\n\t\t\t\t\t$fontdir = '';\n\t\t\t\t} else {\n\t\t\t\t\t$fontdir .= '/';\n\t\t\t\t}\n\t\t\t}\n\t\t\t// search and include font file\n\t\t\tif ($this->empty_string($fontfile) OR (!file_exists($fontfile))) {\n\t\t\t\t// build a standard filenames for specified font\n\t\t\t\t$fontfile1 = str_replace(' ', '', $family).strtolower($style).'.php';\n\t\t\t\t$fontfile2 = str_replace(' ', '', $family).'.php';\n\t\t\t\t// search files on various directories\n\t\t\t\tif (($fontdir !== false) AND file_exists($fontdir.$fontfile1)) {\n\t\t\t\t\t$fontfile = $fontdir.$fontfile1;\n\t\t\t\t} elseif (file_exists($this->_getfontpath().$fontfile1)) {\n\t\t\t\t\t$fontfile = $this->_getfontpath().$fontfile1;\n\t\t\t\t} elseif (file_exists($fontfile1)) {\n\t\t\t\t\t$fontfile = $fontfile1;\n\t\t\t\t} elseif (($fontdir !== false) AND file_exists($fontdir.$fontfile2)) {\n\t\t\t\t\t$fontfile = $fontdir.$fontfile2;\n\t\t\t\t} elseif (file_exists($this->_getfontpath().$fontfile2)) {\n\t\t\t\t\t$fontfile = $this->_getfontpath().$fontfile2;\n\t\t\t\t} else {\n\t\t\t\t\t$fontfile = $fontfile2;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// include font file\n\t\t\tif (file_exists($fontfile)) {\n\t\t\t\tinclude($fontfile);\n\t\t\t} else {\n\t\t\t\t$this->Error('Could not include font definition file: '.$family.'');\n\t\t\t}\n\t\t\t// check font parameters\n\t\t\tif ((!isset($type)) OR (!isset($cw))) {\n\t\t\t\t$this->Error('The font definition file has a bad format: '.$fontfile.'');\n\t\t\t}\n\t\t\t// SET default parameters\n\t\t\tif (!isset($file) OR $this->empty_string($file)) {\n\t\t\t\t$file = '';\n\t\t\t}\n\t\t\tif (!isset($enc) OR $this->empty_string($enc)) {\n\t\t\t\t$enc = '';\n\t\t\t}\n\t\t\tif (!isset($cidinfo) OR $this->empty_string($cidinfo)) {\n\t\t\t\t$cidinfo = array('Registry'=>'Adobe','Ordering'=>'Identity','Supplement'=>0);\n\t\t\t\t$cidinfo['uni2cid'] = array();\n\t\t\t}\n\t\t\tif (!isset($ctg) OR $this->empty_string($ctg)) {\n\t\t\t\t$ctg = '';\n\t\t\t}\n\t\t\tif (!isset($desc) OR $this->empty_string($desc)) {\n\t\t\t\t$desc = array();\n\t\t\t}\n\t\t\tif (!isset($up) OR $this->empty_string($up)) {\n\t\t\t\t$up = -100;\n\t\t\t}\n\t\t\tif (!isset($ut) OR $this->empty_string($ut)) {\n\t\t\t\t$ut = 50;\n\t\t\t}\n\t\t\tif (!isset($cw) OR $this->empty_string($cw)) {\n\t\t\t\t$cw = array();\n\t\t\t}\n\t\t\tif (!isset($dw) OR $this->empty_string($dw)) {\n\t\t\t\t// set default width\n\t\t\t\tif (isset($desc['MissingWidth']) AND ($desc['MissingWidth'] > 0)) {\n\t\t\t\t\t$dw = $desc['MissingWidth'];\n\t\t\t\t} elseif (isset($cw[32])) {\n\t\t\t\t\t$dw = $cw[32];\n\t\t\t\t} else {\n\t\t\t\t\t$dw = 600;\n\t\t\t\t}\n\t\t\t}\n\t\t\t++$this->numfonts;\n\t\t\tif ($type == 'cidfont0') {\n\t\t\t\t// register CID font (all styles at once)\n\t\t\t\t$styles = array('' => '', 'B' => ',Bold', 'I' => ',Italic', 'BI' => ',BoldItalic');\n\t\t\t\t$sname = $name.$styles[$bistyle];\n\t\t\t\t// artificial bold\n\t\t\t\tif (strpos($bistyle, 'B') !== false) {\n\t\t\t\t\tif (isset($desc['StemV'])) {\n\t\t\t\t\t\t$desc['StemV'] *= 2;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$desc['StemV'] = 120;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// artificial italic\n\t\t\t\tif (strpos($bistyle, 'I') !== false) {\n\t\t\t\t\tif (isset($desc['ItalicAngle'])) {\n\t\t\t\t\t\t$desc['ItalicAngle'] -= 11;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$desc['ItalicAngle'] = -11;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} elseif ($type == 'core') {\n\t\t\t\t$name = $this->CoreFonts[$fontkey];\n\t\t\t} elseif (($type == 'TrueType') OR ($type == 'Type1')) {\n\t\t\t\t// ...\n\t\t\t} elseif ($type == 'TrueTypeUnicode') {\n\t\t\t\t$enc = 'Identity-H';\n\t\t\t} else {\n\t\t\t\t$this->Error('Unknow font type: '.$type.'');\n\t\t\t}\n\t\t\t$this->setFontBuffer($fontkey, array('i' => $this->numfonts, 'type' => $type, 'name' => $name, 'desc' => $desc, 'up' => $up, 'ut' => $ut, 'cw' => $cw, 'dw' => $dw, 'enc' => $enc, 'cidinfo' => $cidinfo, 'file' => $file, 'ctg' => $ctg));\n\t\t\tif (isset($diff) AND (!empty($diff))) {\n\t\t\t\t//Search existing encodings\n\t\t\t\t$d = 0;\n\t\t\t\t$nb = count($this->diffs);\n\t\t\t\tfor ($i=1; $i <= $nb; ++$i) {\n\t\t\t\t\tif ($this->diffs[$i] == $diff) {\n\t\t\t\t\t\t$d = $i;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ($d == 0) {\n\t\t\t\t\t$d = $nb + 1;\n\t\t\t\t\t$this->diffs[$d] = $diff;\n\t\t\t\t}\n\t\t\t\t$this->setFontSubBuffer($fontkey, 'diff', $d);\n\t\t\t}\n\t\t\tif (!$this->empty_string($file)) {\n\t\t\t\tif ((strcasecmp($type,'TrueType') == 0) OR (strcasecmp($type, 'TrueTypeUnicode') == 0)) {\n\t\t\t\t\t$this->FontFiles[$file] = array('length1' => $originalsize, 'fontdir' => $fontdir);\n\t\t\t\t} elseif ($type != 'core') {\n\t\t\t\t\t$this->FontFiles[$file] = array('length1' => $size1, 'length2' => $size2, 'fontdir' => $fontdir);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $fontdata;\n\t\t}\n\n\t\t/**\n\t\t * Sets the font used to print character strings.\n\t\t * The font can be either a standard one or a font added via the AddFont() method. Standard fonts use Windows encoding cp1252 (Western Europe).\n\t\t * The method can be called before the first page is created and the font is retained from page to page.\n\t\t * If you just wish to change the current font size, it is simpler to call SetFontSize().\n\t\t * Note: for the standard fonts, the font metric files must be accessible. There are three possibilities for this:<ul><li>They are in the current directory (the one where the running script lies)</li><li>They are in one of the directories defined by the include_path parameter</li><li>They are in the directory defined by the K_PATH_FONTS constant</li></ul><br />\n\t\t * @param string $family Family font. It can be either a name defined by AddFont() or one of the standard Type1 families (case insensitive):<ul><li>times (Times-Roman)</li><li>timesb (Times-Bold)</li><li>timesi (Times-Italic)</li><li>timesbi (Times-BoldItalic)</li><li>helvetica (Helvetica)</li><li>helveticab (Helvetica-Bold)</li><li>helveticai (Helvetica-Oblique)</li><li>helveticabi (Helvetica-BoldOblique)</li><li>courier (Courier)</li><li>courierb (Courier-Bold)</li><li>courieri (Courier-Oblique)</li><li>courierbi (Courier-BoldOblique)</li><li>symbol (Symbol)</li><li>zapfdingbats (ZapfDingbats)</li></ul> It is also possible to pass an empty string. In that case, the current family is retained.\n\t\t * @param string $style Font style. Possible values are (case insensitive):<ul><li>empty string: regular</li><li>B: bold</li><li>I: italic</li><li>U: underline</li><li>D: line trough</li><li>O: overline</li></ul> or any combination. The default value is regular. Bold and italic styles do not apply to Symbol and ZapfDingbats basic fonts or other fonts when not defined.\n\t\t * @param float $size Font size in points. The default value is the current size. If no size has been specified since the beginning of the document, the value taken is 12\n\t\t * @param string $fontfile The font definition file. By default, the name is built from the family and style, in lower case with no spaces.\n\t\t * @access public\n\t\t * @since 1.0\n\t\t * @see AddFont(), SetFontSize()\n\t\t */\n\t\tpublic function SetFont($family, $style='', $size=0, $fontfile='') {\n\t\t\t//Select a font; size given in points\n\t\t\tif ($size == 0) {\n\t\t\t\t$size = $this->FontSizePt;\n\t\t\t}\n\t\t\t// try to add font (if not already added)\n\t\t\t$fontdata = $this->AddFont($family, $style, $fontfile);\n\t\t\t$this->FontFamily = $fontdata['family'];\n\t\t\t$this->FontStyle = $fontdata['style'];\n\t\t\t$this->CurrentFont = $this->getFontBuffer($fontdata['fontkey']);\n\t\t\t$this->SetFontSize($size);\n\t\t}\n\n\t\t/**\n\t\t * Defines the size of the current font.\n\t\t * @param float $size The size (in points)\n\t\t * @access public\n\t\t * @since 1.0\n\t\t * @see SetFont()\n\t\t */\n\t\tpublic function SetFontSize($size) {\n\t\t\t//Set font size in points\n\t\t\t$this->FontSizePt = $size;\n\t\t\t$this->FontSize = $size / $this->k;\n\t\t\tif (isset($this->CurrentFont['desc']['Ascent']) AND ($this->CurrentFont['desc']['Ascent'] > 0)) {\n\t\t\t\t$this->FontAscent = $this->CurrentFont['desc']['Ascent'] * $this->FontSize / 1000;\n\t\t\t} else {\n\t\t\t\t$this->FontAscent = 0.85 * $this->FontSize;\n\t\t\t}\n\t\t\tif (isset($this->CurrentFont['desc']['Descent']) AND ($this->CurrentFont['desc']['Descent'] <= 0)) {\n\t\t\t\t$this->FontDescent = - $this->CurrentFont['desc']['Descent'] * $this->FontSize / 1000;\n\t\t\t} else {\n\t\t\t\t$this->FontDescent = 0.15 * $this->FontSize;\n\t\t\t}\n\t\t\tif (($this->page > 0) AND (isset($this->CurrentFont['i']))) {\n\t\t\t\t$this->_out(sprintf('BT /F%d %.2F Tf ET', $this->CurrentFont['i'], $this->FontSizePt));\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Return the font descent value\n\t\t * @param string $font font name\n\t\t * @param string $style font style\n\t\t * @param float $size The size (in points)\n\t\t * @return int font descent\n\t\t * @access public\n\t\t * @since 4.9.003 (2010-03-30)\n\t\t */\n\t\tpublic function getFontDescent($font, $style='', $size=0) {\n\t\t\t//Set font size in points\n\t\t\t$sizek = $size / $this->k;\n\t\t\t$fontdata = $this->AddFont($font, $style);\n\t\t\tif (isset($fontdata['desc']['Descent']) AND ($fontdata['desc']['Descent'] <= 0)) {\n\t\t\t\t$descent = - $fontdata['desc']['Descent'] * $sizek / 1000;\n\t\t\t} else {\n\t\t\t\t$descent = 0.15 * $sizek;\n\t\t\t}\n\t\t\treturn $descent;\n\t\t}\n\n\t\t/**\n\t\t * Return the font ascent value\n\t\t * @param string $font font name\n\t\t * @param string $style font style\n\t\t * @param float $size The size (in points)\n\t\t * @return int font ascent\n\t\t * @access public\n\t\t * @since 4.9.003 (2010-03-30)\n\t\t */\n\t\tpublic function getFontAscent($font, $style='', $size=0) {\n\t\t\t//Set font size in points\n\t\t\t$sizek = $size / $this->k;\n\t\t\t$fontdata = $this->AddFont($font, $style);\n\t\t\tif (isset($fontdata['desc']['Ascent']) AND ($fontdata['desc']['Ascent'] > 0)) {\n\t\t\t\t$ascent = $fontdata['desc']['Ascent'] * $sizek / 1000;\n\t\t\t} else {\n\t\t\t\t$ascent = 0.85 * $sizek;\n\t\t\t}\n\t\t\treturn $ascent;\n\t\t}\n\n\t\t/**\n\t\t * Defines the default monospaced font.\n\t\t * @param string $font Font name.\n\t\t * @access public\n\t\t * @since 4.5.025\n\t\t */\n\t\tpublic function SetDefaultMonospacedFont($font) {\n\t\t\t$this->default_monospaced_font = $font;\n\t\t}\n\n\t\t/**\n\t\t * Creates a new internal link and returns its identifier. An internal link is a clickable area which directs to another place within the document.<br />\n\t\t * The identifier can then be passed to Cell(), Write(), Image() or Link(). The destination is defined with SetLink().\n\t\t * @access public\n\t\t * @since 1.5\n\t\t * @see Cell(), Write(), Image(), Link(), SetLink()\n\t\t */\n\t\tpublic function AddLink() {\n\t\t\t//Create a new internal link\n\t\t\t$n = count($this->links) + 1;\n\t\t\t$this->links[$n] = array(0, 0);\n\t\t\treturn $n;\n\t\t}\n\n\t\t/**\n\t\t * Defines the page and position a link points to.\n\t\t * @param int $link The link identifier returned by AddLink()\n\t\t * @param float $y Ordinate of target position; -1 indicates the current position. The default value is 0 (top of page)\n\t\t * @param int $page Number of target page; -1 indicates the current page. This is the default value\n\t\t * @access public\n\t\t * @since 1.5\n\t\t * @see AddLink()\n\t\t */\n\t\tpublic function SetLink($link, $y=0, $page=-1) {\n\t\t\tif ($y == -1) {\n\t\t\t\t$y = $this->y;\n\t\t\t}\n\t\t\tif ($page == -1) {\n\t\t\t\t$page = $this->page;\n\t\t\t}\n\t\t\t$this->links[$link] = array($page, $y);\n\t\t}\n\n\t\t/**\n\t\t * Puts a link on a rectangular area of the page.\n\t\t * Text or image links are generally put via Cell(), Write() or Image(), but this method can be useful for instance to define a clickable area inside an image.\n\t\t * @param float $x Abscissa of the upper-left corner of the rectangle\n\t\t * @param float $y Ordinate of the upper-left corner of the rectangle\n\t\t * @param float $w Width of the rectangle\n\t\t * @param float $h Height of the rectangle\n\t\t * @param mixed $link URL or identifier returned by AddLink()\n\t\t * @param int $spaces number of spaces on the text to link\n\t\t * @access public\n\t\t * @since 1.5\n\t\t * @see AddLink(), Annotation(), Cell(), Write(), Image()\n\t\t */\n\t\tpublic function Link($x, $y, $w, $h, $link, $spaces=0) {\n\t\t\t$this->Annotation($x, $y, $w, $h, $link, array('Subtype'=>'Link'), $spaces);\n\t\t}\n\n\t\t/**\n\t\t * Puts a markup annotation on a rectangular area of the page.\n\t\t * !!!!THE ANNOTATION SUPPORT IS NOT YET FULLY IMPLEMENTED !!!!\n\t\t * @param float $x Abscissa of the upper-left corner of the rectangle\n\t\t * @param float $y Ordinate of the upper-left corner of the rectangle\n\t\t * @param float $w Width of the rectangle\n\t\t * @param float $h Height of the rectangle\n\t\t * @param string $text annotation text or alternate content\n\t\t * @param array $opt array of options (see section 8.4 of PDF reference 1.7).\n\t\t * @param int $spaces number of spaces on the text to link\n\t\t * @access public\n\t\t * @since 4.0.018 (2008-08-06)\n\t\t */\n\t\tpublic function Annotation($x, $y, $w, $h, $text, $opt=array('Subtype'=>'Text'), $spaces=0) {\n\t\t\tif ($x === '') {\n\t\t\t\t$x = $this->x;\n\t\t\t}\n\t\t\tif ($y === '') {\n\t\t\t\t$y = $this->y;\n\t\t\t}\n\t\t\t// recalculate coordinates to account for graphic transformations\n\t\t\tif (isset($this->transfmatrix)) {\n\t\t\t\tfor ($i=$this->transfmatrix_key; $i > 0; --$i) {\n\t\t\t\t\t$maxid = count($this->transfmatrix[$i]) - 1;\n\t\t\t\t\tfor ($j=$maxid; $j >= 0; --$j) {\n\t\t\t\t\t\t$ctm = $this->transfmatrix[$i][$j];\n\t\t\t\t\t\tif (isset($ctm['a'])) {\n\t\t\t\t\t\t\t$x = $x * $this->k;\n\t\t\t\t\t\t\t$y = ($this->h - $y) * $this->k;\n\t\t\t\t\t\t\t$w = $w * $this->k;\n\t\t\t\t\t\t\t$h = $h * $this->k;\n\t\t\t\t\t\t\t// top left\n\t\t\t\t\t\t\t$xt = $x;\n\t\t\t\t\t\t\t$yt = $y;\n\t\t\t\t\t\t\t$x1 = ($ctm['a'] * $xt) + ($ctm['c'] * $yt) + $ctm['e'];\n\t\t\t\t\t\t\t$y1 = ($ctm['b'] * $xt) + ($ctm['d'] * $yt) + $ctm['f'];\n\t\t\t\t\t\t\t// top right\n\t\t\t\t\t\t\t$xt = $x + $w;\n\t\t\t\t\t\t\t$yt = $y;\n\t\t\t\t\t\t\t$x2 = ($ctm['a'] * $xt) + ($ctm['c'] * $yt) + $ctm['e'];\n\t\t\t\t\t\t\t$y2 = ($ctm['b'] * $xt) + ($ctm['d'] * $yt) + $ctm['f'];\n\t\t\t\t\t\t\t// bottom left\n\t\t\t\t\t\t\t$xt = $x;\n\t\t\t\t\t\t\t$yt = $y - $h;\n\t\t\t\t\t\t\t$x3 = ($ctm['a'] * $xt) + ($ctm['c'] * $yt) + $ctm['e'];\n\t\t\t\t\t\t\t$y3 = ($ctm['b'] * $xt) + ($ctm['d'] * $yt) + $ctm['f'];\n\t\t\t\t\t\t\t// bottom right\n\t\t\t\t\t\t\t$xt = $x + $w;\n\t\t\t\t\t\t\t$yt = $y - $h;\n\t\t\t\t\t\t\t$x4 = ($ctm['a'] * $xt) + ($ctm['c'] * $yt) + $ctm['e'];\n\t\t\t\t\t\t\t$y4 = ($ctm['b'] * $xt) + ($ctm['d'] * $yt) + $ctm['f'];\n\t\t\t\t\t\t\t// new coordinates (rectangle area)\n\t\t\t\t\t\t\t$x = min($x1, $x2, $x3, $x4);\n\t\t\t\t\t\t\t$y = max($y1, $y2, $y3, $y4);\n\t\t\t\t\t\t\t$w = (max($x1, $x2, $x3, $x4) - $x) / $this->k;\n\t\t\t\t\t\t\t$h = ($y - min($y1, $y2, $y3, $y4)) / $this->k;\n\t\t\t\t\t\t\t$x = $x / $this->k;\n\t\t\t\t\t\t\t$y = $this->h - ($y / $this->k);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ($this->page <= 0) {\n\t\t\t\t$page = 1;\n\t\t\t} else {\n\t\t\t\t$page = $this->page;\n\t\t\t}\n\t\t\tif (!isset($this->PageAnnots[$page])) {\n\t\t\t\t$this->PageAnnots[$page] = array();\n\t\t\t}\n\t\t\t$this->PageAnnots[$page][] = array('x' => $x, 'y' => $y, 'w' => $w, 'h' => $h, 'txt' => $text, 'opt' => $opt, 'numspaces' => $spaces);\n\t\t\tif ((($opt['Subtype'] == 'FileAttachment') OR ($opt['Subtype'] == 'Sound')) AND (!$this->empty_string($opt['FS'])) AND file_exists($opt['FS']) AND (!isset($this->embeddedfiles[basename($opt['FS'])]))) {\n\t\t\t\t$this->embeddedfiles[basename($opt['FS'])] = array('file' => $opt['FS'], 'n' => (count($this->embeddedfiles) + $this->embedded_start_obj_id));\n\t\t\t}\n\t\t\t// Add widgets annotation's icons\n\t\t\tif (isset($opt['mk']['i']) AND file_exists($opt['mk']['i'])) {\n\t\t\t\t$this->Image($opt['mk']['i'], '', '', 10, 10, '', '', '', false, 300, '', false, false, 0, false, true);\n\t\t\t}\n\t\t\tif (isset($opt['mk']['ri']) AND file_exists($opt['mk']['ri'])) {\n\t\t\t\t$this->Image($opt['mk']['ri'], '', '', 0, 0, '', '', '', false, 300, '', false, false, 0, false, true);\n\t\t\t}\n\t\t\tif (isset($opt['mk']['ix']) AND file_exists($opt['mk']['ix'])) {\n\t\t\t\t$this->Image($opt['mk']['ix'], '', '', 0, 0, '', '', '', false, 300, '', false, false, 0, false, true);\n\t\t\t}\n\t\t\t++$this->annot_obj_id;\n\t\t}\n\n\t\t/**\n\t\t * Embedd the attached files.\n\t\t * @since 4.4.000 (2008-12-07)\n\t\t * @access protected\n\t\t * @see Annotation()\n\t\t */\n\t\tprotected function _putEmbeddedFiles() {\n\t\t\treset($this->embeddedfiles);\n\t\t\tforeach ($this->embeddedfiles as $filename => $filedata) {\n\t\t\t\t$data = file_get_contents($filedata['file']);\n\t\t\t\t$filter = '';\n\t\t\t\tif ($this->compress) {\n\t\t\t\t\t$data = gzcompress($data);\n\t\t\t\t\t$filter = ' /Filter /FlateDecode';\n\t\t\t\t}\n\t\t\t\t$this->offsets[$filedata['n']] = $this->bufferlen;\n\t\t\t\t$out = $filedata['n'].' 0 obj';\n\t\t\t\t$out .= ' <</Type /EmbeddedFile'.$filter.' /Length '.strlen($data).' >>';\n\t\t\t\t$out .= ' '.$this->_getstream($data, $filedata['n']);\n\t\t\t\t$out .= ' endobj';\n\t\t\t\t$this->_out($out);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Prints a text cell at the specified position.\n\t\t * The origin is on the left of the first charcter, on the baseline.\n\t\t * This method allows to place a string precisely on the page.\n\t\t * @param float $x Abscissa of the cell origin\n\t\t * @param float $y Ordinate of the cell origin\n\t\t * @param string $txt String to print\n\t\t * @param int $fstroke outline size in user units (false = disable)\n\t\t * @param boolean $fclip if true activate clipping mode (you must call StartTransform() before this function and StopTransform() to stop the clipping tranformation).\n\t\t * @param boolean $ffill if true fills the text\n\t\t * @param mixed $border Indicates if borders must be drawn around the cell. The value can be either a number:<ul><li>0: no border (default)</li><li>1: frame</li></ul>or a string containing some or all of the following characters (in any order):<ul><li>L: left</li><li>T: top</li><li>R: right</li><li>B: bottom</li></ul>\n\t\t * @param int $ln Indicates where the current position should go after the call. Possible values are:<ul><li>0: to the right (or left for RTL languages)</li><li>1: to the beginning of the next line</li><li>2: below</li></ul>Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: 0.\n\t\t * @param string $align Allows to center or align the text. Possible values are:<ul><li>L or empty string: left align (default value)</li><li>C: center</li><li>R: right align</li><li>J: justify</li></ul>\n\t\t * @param int $fill Indicates if the cell background must be painted (1) or transparent (0). Default value: 0.\n\t\t * @param mixed $link URL or identifier returned by AddLink().\n\t\t * @param int $stretch stretch carachter mode: <ul><li>0 = disabled</li><li>1 = horizontal scaling only if necessary</li><li>2 = forced horizontal scaling</li><li>3 = character spacing only if necessary</li><li>4 = forced character spacing</li></ul>\n\t\t * @param boolean $ignore_min_height if true ignore automatic minimum height value.\n\t\t * @param string $calign cell vertical alignment relative to the specified Y value. Possible values are:<ul><li>T : cell top</li><li>A : font top</li><li>L : font baseline</li><li>D : font bottom</li><li>B : cell bottom</li></ul>\n\t\t * @param string $valign text vertical alignment inside the cell. Possible values are:<ul><li>T : top</li><li>C : center</li><li>B : bottom</li></ul>\n\t\t * @param boolean $rtloff if true uses the page top-left corner as origin of axis for $x and $y initial position.\n\t\t * @access public\n\t\t * @since 1.0\n\t\t * @see Cell(), Write(), MultiCell(), WriteHTML(), WriteHTMLCell()\n\t\t */\n\t\tpublic function Text($x, $y, $txt, $fstroke=false, $fclip=false, $ffill=true, $border=0, $ln=0, $align='', $fill=0, $link='', $stretch=0, $ignore_min_height=false, $calign='T', $valign='M', $rtloff=false) {\n\t\t\t$textrendermode = $this->textrendermode;\n\t\t\t$textstrokewidth = $this->textstrokewidth;\n\t\t\t$this->setTextRenderingMode($fstroke, $ffill, $fclip);\n\t\t\t$this->SetXY($x, $y, $rtloff);\n\t\t\t$this->Cell(0, 0, $txt, $border, $ln, $align, $fill, $link, $stretch, $ignore_min_height, $calign, $valign);\n\t\t\t// restore previous rendering mode\n\t\t\t$this->textrendermode = $textrendermode;\n\t\t\t$this->textstrokewidth = $textstrokewidth;\n\t\t}\n\n\t\t/**\n\t\t * Whenever a page break condition is met, the method is called, and the break is issued or not depending on the returned value.\n\t\t * The default implementation returns a value according to the mode selected by SetAutoPageBreak().<br />\n\t\t * This method is called automatically and should not be called directly by the application.\n\t\t * @return boolean\n\t\t * @access public\n\t\t * @since 1.4\n\t\t * @see SetAutoPageBreak()\n\t\t */\n\t\tpublic function AcceptPageBreak() {\n\t\t\tif ($this->num_columns > 1) {\n\t\t\t\t// multi column mode\n\t\t\t\tif($this->current_column < ($this->num_columns - 1)) {\n\t\t\t\t\t// go to next column\n\t\t\t\t\t$this->selectColumn($this->current_column + 1);\n\t\t\t\t} else {\n\t\t\t\t\t// add a new page\n\t\t\t\t\t$this->AddPage();\n\t\t\t\t\t// set first column\n\t\t\t\t\t$this->selectColumn(0);\n\t\t\t\t}\n\t\t\t\t// avoid page breaking from checkPageBreak()\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\treturn $this->AutoPageBreak;\n\t\t}\n\n\t\t/**\n\t\t * Add page if needed.\n\t\t * @param float $h Cell height. Default value: 0.\n\t\t * @param mixed $y starting y position, leave empty for current position.\n\t\t * @param boolean $addpage if true add a page, otherwise only return the true/false state\n\t\t * @return boolean true in case of page break, false otherwise.\n\t\t * @since 3.2.000 (2008-07-01)\n\t\t * @access protected\n\t\t */\n\t\tprotected function checkPageBreak($h=0, $y='', $addpage=true) {\n\t\t\tif ($this->empty_string($y)) {\n\t\t\t\t$y = $this->y;\n\t\t\t}\n\t\t\tif ((($y + $h) > $this->PageBreakTrigger) AND (!$this->InFooter) AND ($this->AcceptPageBreak())) {\n\t\t\t\tif ($addpage) {\n\t\t\t\t\t//Automatic page break\n\t\t\t\t\t$x = $this->x;\n\t\t\t\t\t$this->AddPage($this->CurOrientation);\n\t\t\t\t\t$this->y = $this->tMargin;\n\t\t\t\t\t$oldpage = $this->page - 1;\n\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\tif ($this->pagedim[$this->page]['orm'] != $this->pagedim[$oldpage]['orm']) {\n\t\t\t\t\t\t\t$this->x = $x - ($this->pagedim[$this->page]['orm'] - $this->pagedim[$oldpage]['orm']);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$this->x = $x;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif ($this->pagedim[$this->page]['olm'] != $this->pagedim[$oldpage]['olm']) {\n\t\t\t\t\t\t\t$this->x = $x + ($this->pagedim[$this->page]['olm'] - $this->pagedim[$oldpage]['olm']);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$this->x = $x;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\n\t\t/**\n\t\t * Prints a cell (rectangular area) with optional borders, background color and character string. The upper-left corner of the cell corresponds to the current position. The text can be aligned or centered. After the call, the current position moves to the right or to the next line. It is possible to put a link on the text.<br />\n\t\t * If automatic page breaking is enabled and the cell goes beyond the limit, a page break is done before outputting.\n\t\t * @param float $w Cell width. If 0, the cell extends up to the right margin.\n\t\t * @param float $h Cell height. Default value: 0.\n\t\t * @param string $txt String to print. Default value: empty string.\n\t\t * @param mixed $border Indicates if borders must be drawn around the cell. The value can be either a number:<ul><li>0: no border (default)</li><li>1: frame</li></ul>or a string containing some or all of the following characters (in any order):<ul><li>L: left</li><li>T: top</li><li>R: right</li><li>B: bottom</li></ul>\n\t\t * @param int $ln Indicates where the current position should go after the call. Possible values are:<ul><li>0: to the right (or left for RTL languages)</li><li>1: to the beginning of the next line</li><li>2: below</li></ul>\n\t\tPutting 1 is equivalent to putting 0 and calling Ln() just after. Default value: 0.\n\t\t * @param string $align Allows to center or align the text. Possible values are:<ul><li>L or empty string: left align (default value)</li><li>C: center</li><li>R: right align</li><li>J: justify</li></ul>\n\t\t * @param int $fill Indicates if the cell background must be painted (1) or transparent (0). Default value: 0.\n\t\t * @param mixed $link URL or identifier returned by AddLink().\n\t\t * @param int $stretch stretch carachter mode: <ul><li>0 = disabled</li><li>1 = horizontal scaling only if necessary</li><li>2 = forced horizontal scaling</li><li>3 = character spacing only if necessary</li><li>4 = forced character spacing</li></ul>\n\t\t * @param boolean $ignore_min_height if true ignore automatic minimum height value.\n\t\t * @param string $calign cell vertical alignment relative to the specified Y value. Possible values are:<ul><li>T : cell top</li><li>C : center</li><li>B : cell bottom</li><li>A : font top</li><li>L : font baseline</li><li>D : font bottom</li></ul>\n\t\t * @param string $valign text vertical alignment inside the cell. Possible values are:<ul><li>T : top</li><li>C : center</li><li>B : bottom</li></ul>\n\t\t * @access public\n\t\t * @since 1.0\n\t\t * @see SetFont(), SetDrawColor(), SetFillColor(), SetTextColor(), SetLineWidth(), AddLink(), Ln(), MultiCell(), Write(), SetAutoPageBreak()\n\t\t */\n\t\tpublic function Cell($w, $h=0, $txt='', $border=0, $ln=0, $align='', $fill=0, $link='', $stretch=0, $ignore_min_height=false, $calign='T', $valign='M') {\n\t\t\tif (!$ignore_min_height) {\n\t\t\t\t$min_cell_height = $this->FontSize * $this->cell_height_ratio;\n\t\t\t\tif ($h < $min_cell_height) {\n\t\t\t\t\t$h = $min_cell_height;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$this->checkPageBreak($h);\n\t\t\t$this->_out($this->getCellCode($w, $h, $txt, $border, $ln, $align, $fill, $link, $stretch, $ignore_min_height, $calign, $valign));\n\t\t}\n\n\t\t/**\n\t\t * Removes SHY characters from text.\n\t\t * @param string $txt input string\n\t\t * @return string without SHY characters.\n\t\t * @access public\n\t\t * @since (4.5.019) 2009-02-28\n\t\t */\n\t\tpublic function removeSHY($txt='') {\n\t\t\t/*\n\t\t\t* Unicode Data\n\t\t\t* Name : SOFT HYPHEN, commonly abbreviated as SHY\n\t\t\t* HTML Entity (decimal): &#173;\n\t\t\t* HTML Entity (hex): &#xad;\n\t\t\t* HTML Entity (named): &shy;\n\t\t\t* How to type in Microsoft Windows: [Alt +00AD] or [Alt 0173]\n\t\t\t* UTF-8 (hex): 0xC2 0xAD (c2ad)\n\t\t\t* UTF-8 character: chr(194).chr(173)\n\t\t\t*/\n\t\t\t$txt = preg_replace('/([\\\\xc2]{1}[\\\\xad]{1})/', '', $txt);\n\t\t\tif (!$this->isunicode) {\n\t\t\t\t$txt = preg_replace('/([\\\\xad]{1})/', '', $txt);\n\t\t\t}\n\t\t\treturn $txt;\n\t\t}\n\n\t\t/**\n\t\t * Returns the PDF string code to print a cell (rectangular area) with optional borders, background color and character string. The upper-left corner of the cell corresponds to the current position. The text can be aligned or centered. After the call, the current position moves to the right or to the next line. It is possible to put a link on the text.<br />\n\t\t * If automatic page breaking is enabled and the cell goes beyond the limit, a page break is done before outputting.\n\t\t * @param float $w Cell width. If 0, the cell extends up to the right margin.\n\t\t * @param float $h Cell height. Default value: 0.\n\t\t * @param string $txt String to print. Default value: empty string.\n\t\t * @param mixed $border Indicates if borders must be drawn around the cell. The value can be either a number:<ul><li>0: no border (default)</li><li>1: frame</li></ul>or a string containing some or all of the following characters (in any order):<ul><li>L: left</li><li>T: top</li><li>R: right</li><li>B: bottom</li></ul>\n\t\t * @param int $ln Indicates where the current position should go after the call. Possible values are:<ul><li>0: to the right (or left for RTL languages)</li><li>1: to the beginning of the next line</li><li>2: below</li></ul>Putting 1 is equivalent to putting 0 and calling Ln() just after. Default value: 0.\n\t\t * @param string $align Allows to center or align the text. Possible values are:<ul><li>L or empty string: left align (default value)</li><li>C: center</li><li>R: right align</li><li>J: justify</li></ul>\n\t\t * @param int $fill Indicates if the cell background must be painted (1) or transparent (0). Default value: 0.\n\t\t * @param mixed $link URL or identifier returned by AddLink().\n\t\t * @param int $stretch stretch carachter mode: <ul><li>0 = disabled</li><li>1 = horizontal scaling only if necessary</li><li>2 = forced horizontal scaling</li><li>3 = character spacing only if necessary</li><li>4 = forced character spacing</li></ul>\n\t\t * @param boolean $ignore_min_height if true ignore automatic minimum height value.\n\t\t * @param string $calign cell vertical alignment relative to the specified Y value. Possible values are:<ul><li>T : cell top</li><li>C : center</li><li>B : cell bottom</li><li>A : font top</li><li>L : font baseline</li><li>D : font bottom</li></ul>\n\t\t * @param string $valign text vertical alignment inside the cell. Possible values are:<ul><li>T : top</li><li>C : center</li><li>B : bottom</li></ul>\n\t\t * @access protected\n\t\t * @since 1.0\n\t\t * @see Cell()\n\t\t */\n\t\tprotected function getCellCode($w, $h=0, $txt='', $border=0, $ln=0, $align='', $fill=0, $link='', $stretch=0, $ignore_min_height=false, $calign='T', $valign='M') {\n\t\t\t$txt = $this->removeSHY($txt);\n\t\t\t$rs = ''; //string to be returned\n\t\t\tif (!$ignore_min_height) {\n\t\t\t\t$min_cell_height = $this->FontSize * $this->cell_height_ratio;\n\t\t\t\tif ($h < $min_cell_height) {\n\t\t\t\t\t$h = $min_cell_height;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$k = $this->k;\n\t\t\t$x = $this->x;\n\t\t\t$y = $this->y;\n\t\t\t// cell vertical alignment\n\t\t\tswitch ($calign) {\n\t\t\t\tcase 'A': {\n\t\t\t\t\t// font top\n\t\t\t\t\tswitch ($valign) {\n\t\t\t\t\t\tcase 'T': {\n\t\t\t\t\t\t\t// top\n\t\t\t\t\t\t\t$y -= ($this->LineWidth / 2);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcase 'B': {\n\t\t\t\t\t\t\t// bottom\n\t\t\t\t\t\t\t$y -= ($h - $this->FontAscent - $this->FontDescent - ($this->LineWidth / 2));\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\tcase 'M': {\n\t\t\t\t\t\t\t// center\n\t\t\t\t\t\t\t$y -= (($h - $this->FontAscent - $this->FontDescent) / 2);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'L': {\n\t\t\t\t\t// font baseline\n\t\t\t\t\tswitch ($valign) {\n\t\t\t\t\t\tcase 'T': {\n\t\t\t\t\t\t\t// top\n\t\t\t\t\t\t\t$y -= ($this->FontAscent + ($this->LineWidth / 2));\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcase 'B': {\n\t\t\t\t\t\t\t// bottom\n\t\t\t\t\t\t\t$y -= ($h - $this->FontDescent - ($this->LineWidth / 2));\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\tcase 'M': {\n\t\t\t\t\t\t\t// center\n\t\t\t\t\t\t\t$y -= (($h + $this->FontAscent - $this->FontDescent) / 2);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'D': {\n\t\t\t\t\t// font bottom\n\t\t\t\t\tswitch ($valign) {\n\t\t\t\t\t\tcase 'T': {\n\t\t\t\t\t\t\t// top\n\t\t\t\t\t\t\t$y -= ($this->FontAscent + $this->FontDescent + ($this->LineWidth / 2));\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcase 'B': {\n\t\t\t\t\t\t\t// bottom\n\t\t\t\t\t\t\t$y -= ($h - ($this->LineWidth / 2));\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\tcase 'M': {\n\t\t\t\t\t\t\t// center\n\t\t\t\t\t\t\t$y -= (($h + $this->FontAscent + $this->FontDescent) / 2);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'B': {\n\t\t\t\t\t// cell bottom\n\t\t\t\t\t$y -= $h;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'C': {\n\t\t\t\t\t// cell center\n\t\t\t\t\t$y -= ($h / 2);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tdefault:\n\t\t\t\tcase 'T': {\n\t\t\t\t\t// cell top\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// text vertical alignment\n\t\t\tswitch ($valign) {\n\t\t\t\tcase 'T': {\n\t\t\t\t\t// top\n\t\t\t\t\t$basefonty = $y + $this->FontAscent + ($this->LineWidth / 2);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'B': {\n\t\t\t\t\t// bottom\n\t\t\t\t\t$basefonty = $y + $h - $this->FontDescent - ($this->LineWidth / 2);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tdefault:\n\t\t\t\tcase 'M': {\n\t\t\t\t\t// center\n\t\t\t\t\t$basefonty = $y + (($h + $this->FontAscent - $this->FontDescent) / 2);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ($this->empty_string($w) OR ($w <= 0)) {\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$w = $x - $this->lMargin;\n\t\t\t\t} else {\n\t\t\t\t\t$w = $this->w - $this->rMargin - $x;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$s = '';\n\t\t\t// fill and borders\n\t\t\tif (($fill == 1) OR ($border == 1)) {\n\t\t\t\tif ($fill == 1) {\n\t\t\t\t\t$op = ($border == 1) ? 'B' : 'f';\n\t\t\t\t} else {\n\t\t\t\t\t$op = 'S';\n\t\t\t\t}\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$xk = (($this->x  - $w) * $k);\n\t\t\t\t} else {\n\t\t\t\t\t$xk = ($this->x * $k);\n\t\t\t\t}\n\t\t\t\t$s .= sprintf('%.2F %.2F %.2F %.2F re %s ', $xk, (($this->h - $y) * $k), ($w * $k), (-$h * $k), $op);\n\t\t\t}\n\t\t\tif (is_string($border)) {\n\t\t\t\t$lm = ($this->LineWidth / 2);\n\t\t\t\tif (strpos($border,'L') !== false) {\n\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t$xk = ($x - $w) * $k;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$xk = $x * $k;\n\t\t\t\t\t}\n\t\t\t\t\t$s .= sprintf('%.2F %.2F m %.2F %.2F l S ', $xk, (($this->h - $y + $lm) * $k), $xk, (($this->h - ($y + $h + $lm)) * $k));\n\t\t\t\t}\n\t\t\t\tif (strpos($border,'T') !== false) {\n\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t$xk = ($x - $w + $lm) * $k;\n\t\t\t\t\t\t$xwk = ($x - $lm) * $k;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$xk = ($x - $lm) * $k;\n\t\t\t\t\t\t$xwk = ($x + $w + $lm) * $k;\n\t\t\t\t\t}\n\t\t\t\t\t$s .= sprintf('%.2F %.2F m %.2F %.2F l S ', $xk, (($this->h - $y) * $k), $xwk, (($this->h - $y) * $k));\n\t\t\t\t}\n\t\t\t\tif (strpos($border,'R') !== false) {\n\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t$xk = $x * $k;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$xk = ($x + $w) * $k;\n\t\t\t\t\t}\n\t\t\t\t\t$s .= sprintf('%.2F %.2F m %.2F %.2F l S ', $xk, (($this->h - $y + $lm) * $k), $xk, (($this->h - ($y + $h + $lm))* $k));\n\t\t\t\t}\n\t\t\t\tif (strpos($border,'B') !== false) {\n\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t$xk = ($x - $w + $lm) * $k;\n\t\t\t\t\t\t$xwk = ($x - $lm) * $k;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$xk = ($x - $lm) * $k;\n\t\t\t\t\t\t$xwk = ($x + $w + $lm) * $k;\n\t\t\t\t\t}\n\t\t\t\t\t$s .= sprintf('%.2F %.2F m %.2F %.2F l S ', $xk, (($this->h - ($y + $h)) * $k), $xwk, (($this->h - ($y + $h)) * $k));\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ($txt != '') {\n\t\t\t\t$txt2 = $txt;\n\t\t\t\tif ($this->isunicode) {\n\t\t\t\t\tif (($this->CurrentFont['type'] == 'core') OR ($this->CurrentFont['type'] == 'TrueType') OR ($this->CurrentFont['type'] == 'Type1')) {\n\t\t\t\t\t\t$txt2 = $this->UTF8ToLatin1($txt2);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$unicode = $this->UTF8StringToArray($txt); // array of UTF-8 unicode values\n\t\t\t\t\t\t$unicode = $this->utf8Bidi($unicode, '', $this->tmprtl);\n\t\t\t\t\t\tif (defined('K_THAI_TOPCHARS') AND (K_THAI_TOPCHARS == true)) {\n\t\t\t\t\t\t\t// ---- Fix for bug #2977340 \"Incorrect Thai characters position arrangement\" ----\n\t\t\t\t\t\t\t// NOTE: this doesn't work with HTML justification\n\t\t\t\t\t\t\t// Symbols that could overlap on the font top (only works in LTR)\n\t\t\t\t\t\t\t$topchar = array(3611, 3613, 3615, 3650, 3651, 3652); // chars that extends on top\n\t\t\t\t\t\t\t$topsym = array(3633, 3636, 3637, 3638, 3639, 3655, 3656, 3657, 3658, 3659, 3660, 3661, 3662); // symbols with top position\n\t\t\t\t\t\t\t$numchars = count($unicode); // number of chars\n\t\t\t\t\t\t\t$unik = 0;\n\t\t\t\t\t\t\t$uniblock = array();\n\t\t\t\t\t\t\t$uniblock[$unik] = array();\n\t\t\t\t\t\t\t$uniblock[$unik][] = $unicode[0];\n\t\t\t\t\t\t\t// resolve overlapping conflicts by splitting the string in several parts\n\t\t\t\t\t\t\tfor ($i = 1; $i < $numchars; ++$i) {\n\t\t\t\t\t\t\t\t// check if symbols overlaps at top\n\t\t\t\t\t\t\t\tif (in_array($unicode[$i], $topsym) AND (in_array($unicode[($i - 1)], $topsym) OR in_array($unicode[($i - 1)], $topchar))) {\n\t\t\t\t\t\t\t\t\t// move symbols to another array\n\t\t\t\t\t\t\t\t\t++$unik;\n\t\t\t\t\t\t\t\t\t$uniblock[$unik] = array();\n\t\t\t\t\t\t\t\t\t$uniblock[$unik][] = $unicode[$i];\n\t\t\t\t\t\t\t\t\t++$unik;\n\t\t\t\t\t\t\t\t\t$uniblock[$unik] = array();\n\t\t\t\t\t\t\t\t\t$unicode[$i] = 8203; // Unicode Character 'ZERO WIDTH SPACE' (U+200B)\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t$uniblock[$unik][] = $unicode[$i];\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// ---- END OF Fix for bug #2977340\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$txt2 = $this->arrUTF8ToUTF16BE($unicode, false);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t$txt2 = $this->_escape($txt2);\n\t\t\t\t// text length\n\t\t\t\t$txwidth = $this->GetStringWidth($txt);\n\t\t\t\t$width = $txwidth;\n\t\t\t\t// ratio between cell length and text length\n\t\t\t\tif ($width <= 0) {\n\t\t\t\t\t$ratio = 1;\n\t\t\t\t} else {\n\t\t\t\t\t$ratio = ($w - (2 * $this->cMargin)) / $width;\n\t\t\t\t}\n\t\t\t\t// stretch text if required\n\t\t\t\tif (($stretch > 0) AND (($ratio < 1) OR (($ratio > 1) AND (($stretch % 2) == 0)))) {\n\t\t\t\t\tif ($stretch > 2) {\n\t\t\t\t\t\t// spacing\n\t\t\t\t\t\t//Calculate character spacing in points\n\t\t\t\t\t\t$char_space = (($w - $width - (2 * $this->cMargin)) * $this->k) / max($this->GetNumChars($txt)-1,1);\n\t\t\t\t\t\t//Set character spacing\n\t\t\t\t\t\t$rs .= sprintf('BT %.2F Tc ET ', $char_space);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// scaling\n\t\t\t\t\t\t//Calculate horizontal scaling\n\t\t\t\t\t\t$horiz_scale = $ratio * 100.0;\n\t\t\t\t\t\t//Set horizontal scaling\n\t\t\t\t\t\t$rs .= sprintf('BT %.2F Tz ET ', $horiz_scale);\n\t\t\t\t\t}\n\t\t\t\t\t$align = '';\n\t\t\t\t\t$width = $w - (2 * $this->cMargin);\n\t\t\t\t} else {\n\t\t\t\t\t$stretch == 0;\n\t\t\t\t}\n\t\t\t\tif ($this->ColorFlag) {\n\t\t\t\t\t$s .= 'q '.$this->TextColor.' ';\n\t\t\t\t}\n\t\t\t\t// rendering mode\n\t\t\t\t$s .= sprintf('BT %d Tr %.2F w ET ', $this->textrendermode, $this->textstrokewidth);\n\t\t\t\t// count number of spaces\n\t\t\t\t$ns = substr_count($txt, ' ');\n\t\t\t\t// Justification\n\t\t\t\t$spacewidth = 0;\n\t\t\t\tif (($align == 'J') AND ($ns > 0)) {\n\t\t\t\t\tif (($this->CurrentFont['type'] == 'TrueTypeUnicode') OR ($this->CurrentFont['type'] == 'cidfont0')) {\n\t\t\t\t\t\t\t// get string width without spaces\n\t\t\t\t\t\t\t$width = $this->GetStringWidth(str_replace(' ', '', $txt));\n\t\t\t\t\t\t\t// calculate average space width\n\t\t\t\t\t\t\t$spacewidth = -1000 * ($w - $width - (2 * $this->cMargin)) / ($ns?$ns:1) / $this->FontSize;\n\t\t\t\t\t\t\t// set word position to be used with TJ operator\n\t\t\t\t\t\t\t$txt2 = str_replace(chr(0).chr(32), ') '.sprintf('%.3F', $spacewidth).' (', $txt2);\n\t\t\t\t\t\t\t$unicode_justification = true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// get string width\n\t\t\t\t\t\t$width = $txwidth;\n\t\t\t\t\t\t$spacewidth = (($w - $width - (2 * $this->cMargin)) / ($ns?$ns:1)) * $this->k;\n\t\t\t\t\t\t// set word spacing\n\t\t\t\t\t\t$rs .= sprintf('BT %.3F Tw ET ', $spacewidth);\n\t\t\t\t\t}\n\t\t\t\t\t$width = $w - (2 * $this->cMargin);\n\t\t\t\t}\n\t\t\t\t// replace carriage return characters\n\t\t\t\t$txt2 = str_replace(\"\\r\", ' ', $txt2);\n\t\t\t\tswitch ($align) {\n\t\t\t\t\tcase 'C': {\n\t\t\t\t\t\t$dx = ($w - $width) / 2;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'R': {\n\t\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t\t$dx = $this->cMargin;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$dx = $w - $width - $this->cMargin;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'L': {\n\t\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t\t$dx = $w - $width - $this->cMargin;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$dx = $this->cMargin;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'J':\n\t\t\t\t\tdefault: {\n\t\t\t\t\t\t$dx = $this->cMargin;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$xdx = $this->x - $dx - $width;\n\t\t\t\t} else {\n\t\t\t\t\t$xdx = $this->x + $dx;\n\t\t\t\t}\n\t\t\t\t$xdk = $xdx * $k;\n\t\t\t\t// print text\n\t\t\t\t$s .= sprintf('BT %.2F %.2F Td [(%s)] TJ ET', $xdk, (($this->h - $basefonty) * $k), $txt2);\n\t\t\t\tif (isset($uniblock)) {\n\t\t\t\t\t// print overlapping characters as separate string\n\t\t\t\t\t$xshift = 0; // horizontal shift\n\t\t\t\t\t$ty = (($this->h - $basefonty + (0.2 * $this->FontSize)) * $k);\n\t\t\t\t\t$spw = (($w - $txwidth - (2 * $this->cMargin)) / ($ns?$ns:1));\n\t\t\t\t\tforeach ($uniblock as $uk => $uniarr) {\n\t\t\t\t\t\tif (($uk % 2) == 0) {\n\t\t\t\t\t\t\t// x space to skip\n\t\t\t\t\t\t\tif ($spacewidth != 0) {\n\t\t\t\t\t\t\t\t// justification shift\n\t\t\t\t\t\t\t\t$xshift += (count(array_keys($uniarr, 32)) * $spw);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$xshift += $this->GetArrStringWidth($uniarr); // + shift justification\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// character to print\n\t\t\t\t\t\t\t$topchr = $this->arrUTF8ToUTF16BE($uniarr, false);\n\t\t\t\t\t\t\t$topchr = $this->_escape($topchr);\n\t\t\t\t\t\t\t$s .= sprintf(' BT %.2F %.2F Td [(%s)] TJ ET', ($xdk + ($xshift * $k)), $ty, $topchr);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ($this->underline)  {\n\t\t\t\t\t$s .= ' '.$this->_dounderlinew($xdx, $basefonty, $width);\n\t\t\t\t}\n\t\t\t\tif ($this->linethrough) {\n\t\t\t\t\t$s .= ' '.$this->_dolinethroughw($xdx, $basefonty, $width);\n\t\t\t\t}\n\t\t\t\tif ($this->overline)  {\n\t\t\t\t\t$s .= ' '.$this->_dooverlinew($xdx, $basefonty, $width);\n\t\t\t\t}\n\t\t\t\tif ($this->ColorFlag) {\n\t\t\t\t\t$s .= ' Q';\n\t\t\t\t}\n\t\t\t\tif ($link) {\n\t\t\t\t\t$this->Link($xdx, $y + (($h - $this->FontSize)/2), $width, $this->FontSize, $link, $ns);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// output cell\n\t\t\tif ($s) {\n\t\t\t\t// output cell\n\t\t\t\t$rs .= $s;\n\t\t\t\t// reset text stretching\n\t\t\t\tif ($stretch > 2) {\n\t\t\t\t\t//Reset character horizontal spacing\n\t\t\t\t\t$rs .= ' BT 0 Tc ET';\n\t\t\t\t} elseif ($stretch > 0) {\n\t\t\t\t\t//Reset character horizontal scaling\n\t\t\t\t\t$rs .= ' BT 100 Tz ET';\n\t\t\t\t}\n\t\t\t}\n\t\t\t// reset word spacing\n\t\t\tif (!(($this->CurrentFont['type'] == 'TrueTypeUnicode') OR ($this->CurrentFont['type'] == 'cidfont0')) AND ($align == 'J')) {\n\t\t\t\t$rs .= ' BT 0 Tw ET';\n\t\t\t}\n\t\t\t$this->lasth = $h;\n\t\t\tif ($ln > 0) {\n\t\t\t\t//Go to the beginning of the next line\n\t\t\t\t$this->y = $y + $h;\n\t\t\t\tif ($ln == 1) {\n\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t$this->x = $this->w - $this->rMargin;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->x = $this->lMargin;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// go left or right by case\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$this->x -= $w;\n\t\t\t\t} else {\n\t\t\t\t\t$this->x += $w;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$gstyles = ''.$this->linestyleWidth.' '.$this->linestyleCap.' '.$this->linestyleJoin.' '.$this->linestyleDash.' '.$this->DrawColor.' '.$this->FillColor.\"\\n\";\n\t\t\t$rs = $gstyles.$rs;\n\t\t\treturn $rs;\n\t\t}\n\n\t\t/**\n\t\t * This method allows printing text with line breaks.\n\t\t * They can be automatic (as soon as the text reaches the right border of the cell) or explicit (via the \\n character). As many cells as necessary are output, one below the other.<br />\n\t\t * Text can be aligned, centered or justified. The cell block can be framed and the background painted.\n\t\t * @param float $w Width of cells. If 0, they extend up to the right margin of the page.\n\t\t * @param float $h Cell minimum height. The cell extends automatically if needed.\n\t\t * @param string $txt String to print\n\t\t * @param mixed $border Indicates if borders must be drawn around the cell block. The value can be either a number:<ul><li>0: no border (default)</li><li>1: frame</li></ul>or a string containing some or all of the following characters (in any order):<ul><li>L: left</li><li>T: top</li><li>R: right</li><li>B: bottom</li></ul>\n\t\t * @param string $align Allows to center or align the text. Possible values are:<ul><li>L or empty string: left align</li><li>C: center</li><li>R: right align</li><li>J: justification (default value when $ishtml=false)</li></ul>\n\t\t * @param int $fill Indicates if the cell background must be painted (1) or transparent (0). Default value: 0.\n\t\t * @param int $ln Indicates where the current position should go after the call. Possible values are:<ul><li>0: to the right</li><li>1: to the beginning of the next line [DEFAULT]</li><li>2: below</li></ul>\n\t\t * @param float $x x position in user units\n\t\t * @param float $y y position in user units\n\t\t * @param boolean $reseth if true reset the last cell height (default true).\n\t\t * @param int $stretch stretch carachter mode: <ul><li>0 = disabled</li><li>1 = horizontal scaling only if necessary</li><li>2 = forced horizontal scaling</li><li>3 = character spacing only if necessary</li><li>4 = forced character spacing</li></ul>\n\t\t * @param boolean $ishtml set to true if $txt is HTML content (default = false).\n\t\t * @param boolean $autopadding if true, uses internal padding and automatically adjust it to account for line width.\n\t\t * @param float $maxh maximum height. It should be >= $h and less then remaining space to the bottom of the page, or 0 for disable this feature. This feature works only when $ishtml=false.\n\t\t * @return int Return the number of cells or 1 for html mode.\n\t\t * @access public\n\t\t * @since 1.3\n\t\t * @see SetFont(), SetDrawColor(), SetFillColor(), SetTextColor(), SetLineWidth(), Cell(), Write(), SetAutoPageBreak()\n\t\t */\n\t\tpublic function MultiCell($w, $h, $txt, $border=0, $align='J', $fill=0, $ln=1, $x='', $y='', $reseth=true, $stretch=0, $ishtml=false, $autopadding=true, $maxh=0) {\n\t\t\tif ($this->empty_string($this->lasth) OR $reseth) {\n\t\t\t\t//set row height\n\t\t\t\t$this->lasth = $this->FontSize * $this->cell_height_ratio;\n\t\t\t}\n\t\t\tif (!$this->empty_string($y)) {\n\t\t\t\t$this->SetY($y);\n\t\t\t} else {\n\t\t\t\t$y = $this->GetY();\n\t\t\t}\n\t\t\t// check for page break\n\t\t\t$this->checkPageBreak($h);\n\t\t\t$y = $this->GetY();\n\t\t\t// get current page number\n\t\t\t$startpage = $this->page;\n\t\t\tif (!$this->empty_string($x)) {\n\t\t\t\t$this->SetX($x);\n\t\t\t} else {\n\t\t\t\t$x = $this->GetX();\n\t\t\t}\n\t\t\tif ($this->empty_string($w) OR ($w <= 0)) {\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$w = $this->x - $this->lMargin;\n\t\t\t\t} else {\n\t\t\t\t\t$w = $this->w - $this->rMargin - $this->x;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// store original margin values\n\t\t\t$lMargin = $this->lMargin;\n\t\t\t$rMargin = $this->rMargin;\n\t\t\tif ($this->rtl) {\n\t\t\t\t$this->SetRightMargin($this->w - $this->x);\n\t\t\t\t$this->SetLeftMargin($this->x - $w);\n\t\t\t} else {\n\t\t\t\t$this->SetLeftMargin($this->x);\n\t\t\t\t$this->SetRightMargin($this->w - $this->x - $w);\n\t\t\t}\n\t\t\t$starty = $this->y;\n\t\t\tif ($autopadding) {\n\t\t\t\t// Adjust internal padding\n\t\t\t\tif ($this->cMargin < ($this->LineWidth / 2)) {\n\t\t\t\t\t$this->cMargin = ($this->LineWidth / 2);\n\t\t\t\t}\n\t\t\t\t// Add top space if needed\n\t\t\t\tif (($this->lasth - $this->FontSize) < $this->LineWidth) {\n\t\t\t\t\t$this->y += $this->LineWidth / 2;\n\t\t\t\t}\n\t\t\t\t// add top padding\n\t\t\t\t$this->y += $this->cMargin;\n\t\t\t}\n\t\t\tif ($ishtml) {\n\t\t\t\t// ******* Write HTML text\n\t\t\t\t$this->writeHTML($txt, true, 0, $reseth, true, $align);\n\t\t\t\t$nl = 1;\n\t\t\t} else {\n\t\t\t\t// ******* Write text\n\t\t\t\t$nl = $this->Write($this->lasth, $txt, '', 0, $align, true, $stretch, false, true, $maxh);\n\t\t\t}\n\t\t\tif ($autopadding) {\n\t\t\t\t// add bottom padding\n\t\t\t\t$this->y += $this->cMargin;\n\t\t\t\t// Add bottom space if needed\n\t\t\t\tif (($this->lasth - $this->FontSize) < $this->LineWidth) {\n\t\t\t\t\t$this->y += $this->LineWidth / 2;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Get end-of-text Y position\n\t\t\t$currentY = $this->y;\n\t\t\t// get latest page number\n\t\t\t$endpage = $this->page;\n\t\t\t// check if a new page has been created\n\t\t\tif ($endpage > $startpage) {\n\t\t\t\t// design borders around HTML cells.\n\t\t\t\tfor ($page=$startpage; $page <= $endpage; ++$page) {\n\t\t\t\t\t$this->setPage($page);\n\t\t\t\t\tif ($page == $startpage) {\n\t\t\t\t\t\t$this->y = $starty; // put cursor at the beginning of cell on the first page\n\t\t\t\t\t\t$h = $this->getPageHeight() - $starty - $this->getBreakMargin();\n\t\t\t\t\t\t$cborder = $this->getBorderMode($border, $position='start');\n\t\t\t\t\t} elseif ($page == $endpage) {\n\t\t\t\t\t\t$this->y = $this->tMargin; // put cursor at the beginning of last page\n\t\t\t\t\t\t$h = $currentY - $this->tMargin;\n\t\t\t\t\t\t$cborder = $this->getBorderMode($border, $position='end');\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->y = $this->tMargin; // put cursor at the beginning of the current page\n\t\t\t\t\t\t$h = $this->getPageHeight() - $this->tMargin - $this->getBreakMargin();\n\t\t\t\t\t\t$cborder = $this->getBorderMode($border, $position='middle');\n\t\t\t\t\t}\n\t\t\t\t\t$nx = $x;\n\t\t\t\t\t// account for margin changes\n\t\t\t\t\tif ($page > $startpage) {\n\t\t\t\t\t\tif (($this->rtl) AND ($this->pagedim[$page]['orm'] != $this->pagedim[$startpage]['orm'])) {\n\t\t\t\t\t\t\t$nx = $x + ($this->pagedim[$page]['orm'] - $this->pagedim[$startpage]['orm']);\n\t\t\t\t\t\t} elseif ((!$this->rtl) AND ($this->pagedim[$page]['olm'] != $this->pagedim[$startpage]['olm'])) {\n\t\t\t\t\t\t\t$nx = $x + ($this->pagedim[$page]['olm'] - $this->pagedim[$startpage]['olm']);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t$this->SetX($nx);\n\t\t\t\t\t$ccode = $this->getCellCode($w, $h, '', $cborder, 1, '', $fill, '', 0, false);\n\t\t\t\t\tif ($cborder OR $fill) {\n\t\t\t\t\t\t$pagebuff = $this->getPageBuffer($this->page);\n\t\t\t\t\t\t$pstart = substr($pagebuff, 0, $this->intmrk[$this->page]);\n\t\t\t\t\t\t$pend = substr($pagebuff, $this->intmrk[$this->page]);\n\t\t\t\t\t\t$this->setPageBuffer($this->page, $pstart.$ccode.\"\\n\".$pend);\n\t\t\t\t\t\t$this->intmrk[$this->page] += strlen($ccode.\"\\n\");\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t$h = max($h, ($currentY - $y));\n\t\t\t\t// put cursor at the beginning of text\n\t\t\t\t$this->SetY($y);\n\t\t\t\t$this->SetX($x);\n\t\t\t\t// design a cell around the text\n\t\t\t\t$ccode = $this->getCellCode($w, $h, '', $border, 1, '', $fill, '', 0, true);\n\t\t\t\tif ($border OR $fill) {\n\t\t\t\t\tif (end($this->transfmrk[$this->page]) !== false) {\n\t\t\t\t\t\t$pagemarkkey = key($this->transfmrk[$this->page]);\n\t\t\t\t\t\t$pagemark = &$this->transfmrk[$this->page][$pagemarkkey];\n\t\t\t\t\t} elseif ($this->InFooter) {\n\t\t\t\t\t\t$pagemark = &$this->footerpos[$this->page];\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$pagemark = &$this->intmrk[$this->page];\n\t\t\t\t\t}\n\t\t\t\t\t$pagebuff = $this->getPageBuffer($this->page);\n\t\t\t\t\t$pstart = substr($pagebuff, 0, $pagemark);\n\t\t\t\t\t$pend = substr($pagebuff, $pagemark);\n\t\t\t\t\t$this->setPageBuffer($this->page, $pstart.$ccode.\"\\n\".$pend);\n\t\t\t\t\t$pagemark += strlen($ccode.\"\\n\");\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Get end-of-cell Y position\n\t\t\t$currentY = $this->GetY();\n\t\t\t// restore original margin values\n\t\t\t$this->SetLeftMargin($lMargin);\n\t\t\t$this->SetRightMargin($rMargin);\n\t\t\tif ($ln > 0) {\n\t\t\t\t//Go to the beginning of the next line\n\t\t\t\t$this->SetY($currentY);\n\t\t\t\tif ($ln == 2) {\n\t\t\t\t\t$this->SetX($x + $w);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// go left or right by case\n\t\t\t\t$this->setPage($startpage);\n\t\t\t\t$this->y = $y;\n\t\t\t\t$this->SetX($x + $w);\n\t\t\t}\n\t\t\t$this->setContentMark();\n\t\t\treturn $nl;\n\t\t}\n\n\t\t/**\n\t\t * Get the border mode accounting for multicell position (opens bottom side of multicell crossing pages)\n\t\t * @param mixed $border Indicates if borders must be drawn around the cell block. The value can be either a number:<ul><li>0: no border (default)</li><li>1: frame</li></ul>or a string containing some or all of the following characters (in any order):<ul><li>L: left</li><li>T: top</li><li>R: right</li><li>B: bottom</li></ul>\n\t\t * @param string multicell position: 'start', 'middle', 'end'\n\t\t * @return border mode\n\t\t * @access protected\n\t\t * @since 4.4.002 (2008-12-09)\n\t\t */\n\t\tprotected function getBorderMode($border, $position='start') {\n\t\t\tif ((!$this->opencell) AND ($border == 1)) {\n\t\t\t\treturn 1;\n\t\t\t}\n\t\t\t$cborder = '';\n\t\t\tswitch ($position) {\n\t\t\t\tcase 'start': {\n\t\t\t\t\tif ($border == 1) {\n\t\t\t\t\t\t$cborder = 'LTR';\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (!(false === strpos($border, 'L'))) {\n\t\t\t\t\t\t\t$cborder .= 'L';\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (!(false === strpos($border, 'T'))) {\n\t\t\t\t\t\t\t$cborder .= 'T';\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (!(false === strpos($border, 'R'))) {\n\t\t\t\t\t\t\t$cborder .= 'R';\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ((!$this->opencell) AND (!(false === strpos($border, 'B')))) {\n\t\t\t\t\t\t\t$cborder .= 'B';\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'middle': {\n\t\t\t\t\tif ($border == 1) {\n\t\t\t\t\t\t$cborder = 'LR';\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (!(false === strpos($border, 'L'))) {\n\t\t\t\t\t\t\t$cborder .= 'L';\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ((!$this->opencell) AND (!(false === strpos($border, 'T')))) {\n\t\t\t\t\t\t\t$cborder .= 'T';\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (!(false === strpos($border, 'R'))) {\n\t\t\t\t\t\t\t$cborder .= 'R';\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ((!$this->opencell) AND (!(false === strpos($border, 'B')))) {\n\t\t\t\t\t\t\t$cborder .= 'B';\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'end': {\n\t\t\t\t\tif ($border == 1) {\n\t\t\t\t\t\t$cborder = 'LRB';\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (!(false === strpos($border, 'L'))) {\n\t\t\t\t\t\t\t$cborder .= 'L';\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ((!$this->opencell) AND (!(false === strpos($border, 'T')))) {\n\t\t\t\t\t\t\t$cborder .= 'T';\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (!(false === strpos($border, 'R'))) {\n\t\t\t\t\t\t\t$cborder .= 'R';\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (!(false === strpos($border, 'B'))) {\n\t\t\t\t\t\t\t$cborder .= 'B';\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tdefault: {\n\t\t\t\t\t$cborder = $border;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $cborder;\n\t\t}\n\n\t\t/**\n\t\t * This method returns the estimated number of lines required to print the text (not the real number just a quick estimation).\n\t\t * If you want o know the exact number of lines you have to use the following technique:\n\t\t * <pre>\n\t\t *  // store current object\n\t\t *  $pdf->startTransaction();\n\t\t *  // get the number of lines for multicell\n\t\t *  $lines = $pdf->MultiCell($w, 0, $txt, 0, 'L', 0, 0, '', '', true, 0, false, true, 0);\n\t\t *  // restore previous object\n\t\t *  $pdf = $pdf->rollbackTransaction();\n\t\t * </pre>\n\t\t * @param string $txt text to print\n\t\t * @param float $w width of cell. If 0, they extend up to the right margin of the page.\n\t\t * @return int Return the estimated number of lines.\n\t\t * @access public\n\t\t * @since 4.5.011\n\t\t */\n\t\tpublic function getNumLines($txt, $w=0) {\n\t\t\t$lines = 0;\n\t\t\tif ($this->empty_string($w) OR ($w <= 0)) {\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$w = $this->x - $this->lMargin;\n\t\t\t\t} else {\n\t\t\t\t\t$w = $this->w - $this->rMargin - $this->x;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// max column width\n\t\t\t$wmax = $w - (2 * $this->cMargin);\n\t\t\t// remove carriage returns\n\t\t\t$txt = str_replace(\"\\r\", '', $txt);\n\t\t\t// remove last newline (if any)\n\t\t\tif (substr($txt,-1) == \"\\n\") {\n\t\t\t\t$txt = substr($txt, 0, -1);\n\t\t\t}\n\t\t\t// divide text in blocks\n\t\t\t$txtblocks = explode(\"\\n\", $txt);\n\t\t\t// for each text block\n\t\t\tforeach ($txtblocks as $block) {\n\t\t\t\t// estimate the number of lines\n\t\t\t\t$lines += $this->empty_string($block) ? 1 : (ceil($this->GetStringWidth($block) / $wmax));\n\t\t\t}\n\t\t\t// return the number of lines\n\t\t\treturn $lines;\n\t\t}\n\n\t\t/**\n\t\t * This method prints text from the current position.<br />\n\t\t * @param float $h Line height\n\t\t * @param string $txt String to print\n\t\t * @param mixed $link URL or identifier returned by AddLink()\n\t\t * @param int $fill Indicates if the background must be painted (1) or transparent (0). Default value: 0.\n\t\t * @param string $align Allows to center or align the text. Possible values are:<ul><li>L or empty string: left align (default value)</li><li>C: center</li><li>R: right align</li><li>J: justify</li></ul>\n\t\t * @param boolean $ln if true set cursor at the bottom of the line, otherwise set cursor at the top of the line.\n\t\t * @param int $stretch stretch carachter mode: <ul><li>0 = disabled</li><li>1 = horizontal scaling only if necessary</li><li>2 = forced horizontal scaling</li><li>3 = character spacing only if necessary</li><li>4 = forced character spacing</li></ul>\n\t\t * @param boolean $firstline if true prints only the first line and return the remaining string.\n\t\t * @param boolean $firstblock if true the string is the starting of a line.\n\t\t * @param float $maxh maximum height. The remaining unprinted text will be returned. It should be >= $h and less then remaining space to the bottom of the page, or 0 for disable this feature.\n\t\t * @return mixed Return the number of cells or the remaining string if $firstline = true.\n\t\t * @access public\n\t\t * @since 1.5\n\t\t */\n\t\tpublic function Write($h, $txt, $link='', $fill=0, $align='', $ln=false, $stretch=0, $firstline=false, $firstblock=false, $maxh=0) {\n\t\t\tif (strlen($txt) == 0) {\n\t\t\t\t$txt = ' ';\n\t\t\t}\n\t\t\t// remove carriage returns\n\t\t\t$s = str_replace(\"\\r\", '', $txt);\n\t\t\t// check if string contains arabic text\n\t\t\tif (preg_match(K_RE_PATTERN_ARABIC, $s)) {\n\t\t\t\t$arabic = true;\n\t\t\t} else {\n\t\t\t\t$arabic = false;\n\t\t\t}\n\t\t\t// check if string contains RTL text\n\t\t\tif ($arabic OR ($this->tmprtl == 'R') OR preg_match(K_RE_PATTERN_RTL, $txt)) {\n\t\t\t\t$rtlmode = true;\n\t\t\t} else {\n\t\t\t\t$rtlmode = false;\n\t\t\t}\n\t\t\t// get a char width\n\t\t\t$chrwidth = $this->GetCharWidth('.');\n\t\t\t// get array of unicode values\n\t\t\t$chars = $this->UTF8StringToArray($s);\n\t\t\t// get array of chars\n\t\t\t$uchars = $this->UTF8ArrayToUniArray($chars);\n\t\t\t// get the number of characters\n\t\t\t$nb = count($chars);\n\t\t\t// replacement for SHY character (minus symbol)\n\t\t\t$shy_replacement = 45;\n\t\t\t$shy_replacement_char = $this->unichr($shy_replacement);\n\t\t\t// widht for SHY replacement\n\t\t\t$shy_replacement_width = $this->GetCharWidth($shy_replacement);\n\t\t\t// store current position\n\t\t\t$prevx = $this->x;\n\t\t\t$prevy = $this->y;\n\t\t\t// max Y\n\t\t\t$maxy = $this->y + $maxh - $h - (2 * $this->cMargin);\n\t\t\t// calculate remaining line width ($w)\n\t\t\tif ($this->rtl) {\n\t\t\t\t$w = $this->x - $this->lMargin;\n\t\t\t} else {\n\t\t\t\t$w = $this->w - $this->rMargin - $this->x;\n\t\t\t}\n\t\t\t// max column width\n\t\t\t$wmax = $w - (2 * $this->cMargin);\n\t\t\tif ((!$firstline) AND (($chrwidth > $wmax) OR ($this->GetCharWidth($chars[0]) > $wmax))) {\n\t\t\t\t// a single character do not fit on column\n\t\t\t\treturn '';\n\t\t\t}\n\t\t\t$i = 0; // character position\n\t\t\t$j = 0; // current starting position\n\t\t\t$sep = -1; // position of the last blank space\n\t\t\t$shy = false; // true if the last blank is a soft hypen (SHY)\n\t\t\t$l = 0; // current string length\n\t\t\t$nl = 0; //number of lines\n\t\t\t$linebreak = false;\n\t\t\t$pc = 0; // previous character\n\t\t\t// for each character\n\t\t\twhile ($i < $nb) {\n\t\t\t\tif (($maxh > 0) AND ($this->y >= $maxy) ) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t//Get the current character\n\t\t\t\t$c = $chars[$i];\n\t\t\t\tif ($c == 10) { // 10 = \"\\n\" = new line\n\t\t\t\t\t//Explicit line break\n\t\t\t\t\tif ($align == 'J') {\n\t\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t\t$talign = 'R';\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$talign = 'L';\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$talign = $align;\n\t\t\t\t\t}\n\t\t\t\t\t$tmpstr = $this->UniArrSubString($uchars, $j, $i);\n\t\t\t\t\tif ($firstline) {\n\t\t\t\t\t\t$startx = $this->x;\n\t\t\t\t\t\t$tmparr = array_slice($chars, $j, ($i - $j));\n\t\t\t\t\t\tif ($rtlmode) {\n\t\t\t\t\t\t\t$tmparr = $this->utf8Bidi($tmparr, $tmpstr, $this->tmprtl);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$linew = $this->GetArrStringWidth($tmparr);\n\t\t\t\t\t\tunset($tmparr);\n\t\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t\t$this->endlinex = $startx - $linew;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$this->endlinex = $startx + $linew;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$w = $linew;\n\t\t\t\t\t\t$tmpcmargin = $this->cMargin;\n\t\t\t\t\t\tif ($maxh == 0) {\n\t\t\t\t\t\t\t$this->cMargin = 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif ($firstblock AND $this->isRTLTextDir()) {\n\t\t\t\t\t\t$tmpstr = rtrim($tmpstr);\n\t\t\t\t\t}\n\t\t\t\t\t$this->Cell($w, $h, $tmpstr, 0, 1, $talign, $fill, $link, $stretch);\n\t\t\t\t\tunset($tmpstr);\n\t\t\t\t\tif ($firstline) {\n\t\t\t\t\t\t$this->cMargin = $tmpcmargin;\n\t\t\t\t\t\treturn ($this->UniArrSubString($uchars, $i));\n\t\t\t\t\t}\n\t\t\t\t\t++$nl;\n\t\t\t\t\t$j = $i + 1;\n\t\t\t\t\t$l = 0;\n\t\t\t\t\t$sep = -1;\n\t\t\t\t\t$shy = false;\n\t\t\t\t\t// account for margin changes\n\t\t\t\t\tif ((($this->y + $this->lasth) > $this->PageBreakTrigger) AND (!$this->InFooter)) {\n\t\t\t\t\t\t// AcceptPageBreak() may be overriden on extended classed to include margin changes\n\t\t\t\t\t\t$this->AcceptPageBreak();\n\t\t\t\t\t}\n\t\t\t\t\t$w = $this->getRemainingWidth();\n\t\t\t\t\t$wmax = $w - (2 * $this->cMargin);\n\t\t\t\t} else {\n\t\t\t\t\t// 160 is the non-breaking space.\n\t\t\t\t\t// 173 is SHY (Soft Hypen).\n\t\t\t\t\t// \\p{Z} or \\p{Separator}: any kind of Unicode whitespace or invisible separator.\n\t\t\t\t\t// \\p{Lo} or \\p{Other_Letter}: a Unicode letter or ideograph that does not have lowercase and uppercase variants.\n\t\t\t\t\t// \\p{Lo} is needed because Chinese characters are packed next to each other without spaces in between.\n\t\t\t\t\tif (($c != 160) AND (($c == 173) OR preg_match($this->re_spaces, $this->unichr($c)))) {\n\t\t\t\t\t\t// update last blank space position\n\t\t\t\t\t\t$sep = $i;\n\t\t\t\t\t\t// check if is a SHY\n\t\t\t\t\t\tif ($c == 173) {\n\t\t\t\t\t\t\t$shy = true;\n\t\t\t\t\t\t\tif ($pc == 45) {\n\t\t\t\t\t\t\t\t$tmp_shy_replacement_width = 0;\n\t\t\t\t\t\t\t\t$tmp_shy_replacement_char = '';\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$tmp_shy_replacement_width = $shy_replacement_width;\n\t\t\t\t\t\t\t\t$tmp_shy_replacement_char = $shy_replacement_char;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$shy = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t// update string length\n\t\t\t\t\tif ((($this->CurrentFont['type'] == 'TrueTypeUnicode') OR ($this->CurrentFont['type'] == 'cidfont0')) AND ($arabic)) {\n\t\t\t\t\t\t// with bidirectional algorithm some chars may be changed affecting the line length\n\t\t\t\t\t\t// *** very slow ***\n\t\t\t\t\t\t$l = $this->GetArrStringWidth($this->utf8Bidi(array_slice($chars, $j, ($i - $j)), '', $this->tmprtl));\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$l += $this->GetCharWidth($c);\n\t\t\t\t\t}\n\t\t\t\t\tif (($l > $wmax) OR (($c == 173) AND (($l + $tmp_shy_replacement_width) > $wmax)) ) {\n\t\t\t\t\t\t// we have reached the end of column\n\t\t\t\t\t\tif ($sep == -1) {\n\t\t\t\t\t\t\t// check if the line was already started\n\t\t\t\t\t\t\tif (($this->rtl AND ($this->x <= ($this->w - $this->rMargin - $chrwidth)))\n\t\t\t\t\t\t\t\tOR ((!$this->rtl) AND ($this->x >= ($this->lMargin + $chrwidth)))) {\n\t\t\t\t\t\t\t\t// print a void cell and go to next line\n\t\t\t\t\t\t\t\t$this->Cell($w, $h, '', 0, 1);\n\t\t\t\t\t\t\t\t$linebreak = true;\n\t\t\t\t\t\t\t\tif ($firstline) {\n\t\t\t\t\t\t\t\t\treturn ($this->UniArrSubString($uchars, $j));\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t// truncate the word because do not fit on column\n\t\t\t\t\t\t\t\t$tmpstr = $this->UniArrSubString($uchars, $j, $i);\n\t\t\t\t\t\t\t\tif ($firstline) {\n\t\t\t\t\t\t\t\t\t$startx = $this->x;\n\t\t\t\t\t\t\t\t\t$tmparr = array_slice($chars, $j, ($i - $j));\n\t\t\t\t\t\t\t\t\tif ($rtlmode) {\n\t\t\t\t\t\t\t\t\t\t$tmparr = $this->utf8Bidi($tmparr, $tmpstr, $this->tmprtl);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t$linew = $this->GetArrStringWidth($tmparr);\n\t\t\t\t\t\t\t\t\tunset($tmparr);\n\t\t\t\t\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t\t\t\t\t$this->endlinex = $startx - $linew;\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t$this->endlinex = $startx + $linew;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t$w = $linew;\n\t\t\t\t\t\t\t\t\t$tmpcmargin = $this->cMargin;\n\t\t\t\t\t\t\t\t\tif ($maxh == 0) {\n\t\t\t\t\t\t\t\t\t\t$this->cMargin = 0;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ($firstblock AND $this->isRTLTextDir()) {\n\t\t\t\t\t\t\t\t\t$tmpstr = rtrim($tmpstr);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$this->Cell($w, $h, $tmpstr, 0, 1, $align, $fill, $link, $stretch);\n\t\t\t\t\t\t\t\tunset($tmpstr);\n\t\t\t\t\t\t\t\tif ($firstline) {\n\t\t\t\t\t\t\t\t\t$this->cMargin = $tmpcmargin;\n\t\t\t\t\t\t\t\t\treturn ($this->UniArrSubString($uchars, $i));\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$j = $i;\n\t\t\t\t\t\t\t\t--$i;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// word wrapping\n\t\t\t\t\t\t\tif ($this->rtl AND (!$firstblock)) {\n\t\t\t\t\t\t\t\t$endspace = 1;\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$endspace = 0;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ($shy) {\n\t\t\t\t\t\t\t\t// add hypen (minus symbol) at the end of the line\n\t\t\t\t\t\t\t\t$shy_width = $tmp_shy_replacement_width;\n\t\t\t\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t\t\t\t$shy_char_left = $tmp_shy_replacement_char;\n\t\t\t\t\t\t\t\t\t$shy_char_right = '';\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t$shy_char_left = '';\n\t\t\t\t\t\t\t\t\t$shy_char_right = $tmp_shy_replacement_char;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$shy_width = 0;\n\t\t\t\t\t\t\t\t$shy_char_left = '';\n\t\t\t\t\t\t\t\t$shy_char_right = '';\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$tmpstr = $this->UniArrSubString($uchars, $j, ($sep + $endspace));\n\t\t\t\t\t\t\tif ($firstline) {\n\t\t\t\t\t\t\t\t$startx = $this->x;\n\t\t\t\t\t\t\t\t$tmparr = array_slice($chars, $j, (($sep + $endspace) - $j));\n\t\t\t\t\t\t\t\tif ($rtlmode) {\n\t\t\t\t\t\t\t\t\t$tmparr = $this->utf8Bidi($tmparr, $tmpstr, $this->tmprtl);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$linew = $this->GetArrStringWidth($tmparr);\n\t\t\t\t\t\t\t\tunset($tmparr);\n\t\t\t\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t\t\t\t$this->endlinex = $startx - $linew - $shy_width;\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t$this->endlinex = $startx + $linew + $shy_width;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$w = $linew;\n\t\t\t\t\t\t\t\t$tmpcmargin = $this->cMargin;\n\t\t\t\t\t\t\t\tif ($maxh == 0) {\n\t\t\t\t\t\t\t\t\t$this->cMargin = 0;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// print the line\n\t\t\t\t\t\t\tif ($firstblock AND $this->isRTLTextDir()) {\n\t\t\t\t\t\t\t\t$tmpstr = rtrim($tmpstr);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$this->Cell($w, $h, $shy_char_left.$tmpstr.$shy_char_right, 0, 1, $align, $fill, $link, $stretch);\n\t\t\t\t\t\t\tunset($tmpstr);\n\t\t\t\t\t\t\tif ($firstline) {\n\t\t\t\t\t\t\t\t// return the remaining text\n\t\t\t\t\t\t\t\t$this->cMargin = $tmpcmargin;\n\t\t\t\t\t\t\t\treturn ($this->UniArrSubString($uchars, ($sep + $endspace)));\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$i = $sep;\n\t\t\t\t\t\t\t$sep = -1;\n\t\t\t\t\t\t\t$shy = false;\n\t\t\t\t\t\t\t$j = ($i+1);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// account for margin changes\n\t\t\t\t\t\tif ((($this->y + $this->lasth) > $this->PageBreakTrigger) AND (!$this->InFooter)) {\n\t\t\t\t\t\t\t// AcceptPageBreak() may be overriden on extended classed to include margin changes\n\t\t\t\t\t\t\t$this->AcceptPageBreak();\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$w = $this->getRemainingWidth();\n\t\t\t\t\t\t$wmax = $w - (2 * $this->cMargin);\n\t\t\t\t\t\tif ($linebreak) {\n\t\t\t\t\t\t\t$linebreak = false;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t++$nl;\n\t\t\t\t\t\t\t$l = 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// save last character\n\t\t\t\t$pc = $c;\n\t\t\t\t++$i;\n\t\t\t} // end while i < nb\n\t\t\t// print last substring (if any)\n\t\t\tif ($l > 0) {\n\t\t\t\tswitch ($align) {\n\t\t\t\t\tcase 'J':\n\t\t\t\t\tcase 'C': {\n\t\t\t\t\t\t$w = $w;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'L': {\n\t\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t\t$w = $w;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$w = $l;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'R': {\n\t\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t\t$w = $l;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$w = $w;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tdefault: {\n\t\t\t\t\t\t$w = $l;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t$tmpstr = $this->UniArrSubString($uchars, $j, $nb);\n\t\t\t\tif ($firstline) {\n\t\t\t\t\t$startx = $this->x;\n\t\t\t\t\t$tmparr = array_slice($chars, $j, ($nb - $j));\n\t\t\t\t\tif ($rtlmode) {\n\t\t\t\t\t\t$tmparr = $this->utf8Bidi($tmparr, $tmpstr, $this->tmprtl);\n\t\t\t\t\t}\n\t\t\t\t\t$linew = $this->GetArrStringWidth($tmparr);\n\t\t\t\t\tunset($tmparr);\n\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t$this->endlinex = $startx - $linew;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->endlinex = $startx + $linew;\n\t\t\t\t\t}\n\t\t\t\t\t$w = $linew;\n\t\t\t\t\t$tmpcmargin = $this->cMargin;\n\t\t\t\t\tif ($maxh == 0) {\n\t\t\t\t\t\t$this->cMargin = 0;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ($firstblock AND $this->isRTLTextDir()) {\n\t\t\t\t\t$tmpstr = rtrim($tmpstr);\n\t\t\t\t}\n\t\t\t\t$this->Cell($w, $h, $tmpstr, 0, $ln, $align, $fill, $link, $stretch);\n\t\t\t\tunset($tmpstr);\n\t\t\t\tif ($firstline) {\n\t\t\t\t\t$this->cMargin = $tmpcmargin;\n\t\t\t\t\treturn ($this->UniArrSubString($uchars, $nb));\n\t\t\t\t}\n\t\t\t\t++$nl;\n\t\t\t}\n\t\t\tif ($firstline) {\n\t\t\t\treturn '';\n\t\t\t}\n\t\t\treturn $nl;\n\t\t}\n\n\t\t/**\n\t\t * Returns the remaining width between the current position and margins.\n\t\t * @return int Return the remaining width\n\t\t * @access protected\n\t\t */\n\t\tprotected function getRemainingWidth() {\n\t\t\tif ($this->rtl) {\n\t\t\t\treturn ($this->x - $this->lMargin);\n\t\t\t} else {\n\t\t\t\treturn ($this->w - $this->rMargin - $this->x);\n\t\t\t}\n\t\t}\n\n\t \t/**\n\t\t * Extract a slice of the $strarr array and return it as string.\n\t\t * @param string $strarr The input array of characters.\n\t\t * @param int $start the starting element of $strarr.\n\t\t * @param int $end first element that will not be returned.\n\t\t * @return Return part of a string\n\t\t * @access public\n\t\t */\n\t\tpublic function UTF8ArrSubString($strarr, $start='', $end='') {\n\t\t\tif (strlen($start) == 0) {\n\t\t\t\t$start = 0;\n\t\t\t}\n\t\t\tif (strlen($end) == 0) {\n\t\t\t\t$end = count($strarr);\n\t\t\t}\n\t\t\t$string = '';\n\t\t\tfor ($i=$start; $i < $end; ++$i) {\n\t\t\t\t$string .= $this->unichr($strarr[$i]);\n\t\t\t}\n\t\t\treturn $string;\n\t\t}\n\n\t \t/**\n\t\t * Extract a slice of the $uniarr array and return it as string.\n\t\t * @param string $uniarr The input array of characters.\n\t\t * @param int $start the starting element of $strarr.\n\t\t * @param int $end first element that will not be returned.\n\t\t * @return Return part of a string\n\t\t * @access public\n\t\t * @since 4.5.037 (2009-04-07)\n\t\t */\n\t\tpublic function UniArrSubString($uniarr, $start='', $end='') {\n\t\t\tif (strlen($start) == 0) {\n\t\t\t\t$start = 0;\n\t\t\t}\n\t\t\tif (strlen($end) == 0) {\n\t\t\t\t$end = count($uniarr);\n\t\t\t}\n\t\t\t$string = '';\n\t\t\tfor ($i=$start; $i < $end; ++$i) {\n\t\t\t\t$string .= $uniarr[$i];\n\t\t\t}\n\t\t\treturn $string;\n\t\t}\n\n\t \t/**\n\t\t * Convert an array of UTF8 values to array of unicode characters\n\t\t * @param string $ta The input array of UTF8 values.\n\t\t * @return Return array of unicode characters\n\t\t * @access public\n\t\t * @since 4.5.037 (2009-04-07)\n\t\t */\n\t\tpublic function UTF8ArrayToUniArray($ta) {\n\t\t\treturn array_map(array($this, 'unichr'), $ta);\n\t\t}\n\n\t\t/**\n\t\t * Returns the unicode caracter specified by UTF-8 value\n\t\t * @param int $c UTF-8 value\n\t\t * @return Returns the specified character.\n\t\t * @author Miguel Perez, Nicola Asuni\n\t\t * @access public\n\t\t * @since 2.3.000 (2008-03-05)\n\t\t */\n\t\tpublic function unichr($c) {\n\t\t\tif (!$this->isunicode) {\n\t\t\t\treturn chr($c);\n\t\t\t} elseif ($c <= 0x7F) {\n\t\t\t\t// one byte\n\t\t\t\treturn chr($c);\n\t\t\t} elseif ($c <= 0x7FF) {\n\t\t\t\t// two bytes\n\t\t\t\treturn chr(0xC0 | $c >> 6).chr(0x80 | $c & 0x3F);\n\t\t\t} elseif ($c <= 0xFFFF) {\n\t\t\t\t// three bytes\n\t\t\t\treturn chr(0xE0 | $c >> 12).chr(0x80 | $c >> 6 & 0x3F).chr(0x80 | $c & 0x3F);\n\t\t\t} elseif ($c <= 0x10FFFF) {\n\t\t\t\t// four bytes\n\t\t\t\treturn chr(0xF0 | $c >> 18).chr(0x80 | $c >> 12 & 0x3F).chr(0x80 | $c >> 6 & 0x3F).chr(0x80 | $c & 0x3F);\n\t\t\t} else {\n\t\t\t\treturn '';\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Return the image type given the file name or array returned by getimagesize() function.\n\t\t * @param string $imgfile image file name\n\t\t * @param array $iminfo array of image information returned by getimagesize() function.\n\t\t * @return string image type\n\t\t * @since 4.8.017 (2009-11-27)\n\t\t */\n\t\tpublic function getImageFileType($imgfile, $iminfo=array()) {\n\t\t\tif (isset($iminfo['mime']) AND !empty($iminfo['mime'])) {\n\t\t\t\t$mime = explode('/', $iminfo['mime']);\n\t\t\t\tif ((count($mime) > 1) AND ($mime[0] == 'image') AND (!empty($mime[1]))) {\n\t\t\t\t\treturn trim($mime[1]);\n\t\t\t\t}\n\t\t\t}\n\t\t\t$type = '';\n\t\t\t$fileinfo = pathinfo($imgfile);\n\t\t\tif (isset($fileinfo['extension']) AND (!$this->empty_string($fileinfo['extension']))) {\n\t\t\t\t$type = strtolower(trim($fileinfo['extension']));\n\t\t\t}\n\t\t\tif ($type == 'jpg') {\n\t\t\t\t$type = 'jpeg';\n\t\t\t}\n\t\t\treturn $type;\n\t\t}\n\n\t\t/**\n\t\t * Puts an image in the page.\n\t\t * The upper-left corner must be given.\n\t\t * The dimensions can be specified in different ways:<ul>\n\t\t * <li>explicit width and height (expressed in user unit)</li>\n\t\t * <li>one explicit dimension, the other being calculated automatically in order to keep the original proportions</li>\n\t\t * <li>no explicit dimension, in which case the image is put at 72 dpi</li></ul>\n\t\t * Supported formats are JPEG and PNG images whitout GD library and all images supported by GD: GD, GD2, GD2PART, GIF, JPEG, PNG, BMP, XBM, XPM;\n\t\t * The format can be specified explicitly or inferred from the file extension.<br />\n\t\t * It is possible to put a link on the image.<br />\n\t\t * Remark: if an image is used several times, only one copy will be embedded in the file.<br />\n\t\t * @param string $file Name of the file containing the image.\n\t\t * @param float $x Abscissa of the upper-left corner.\n\t\t * @param float $y Ordinate of the upper-left corner.\n\t\t * @param float $w Width of the image in the page. If not specified or equal to zero, it is automatically calculated.\n\t\t * @param float $h Height of the image in the page. If not specified or equal to zero, it is automatically calculated.\n\t\t * @param string $type Image format. Possible values are (case insensitive): JPEG and PNG (whitout GD library) and all images supported by GD: GD, GD2, GD2PART, GIF, JPEG, PNG, BMP, XBM, XPM;. If not specified, the type is inferred from the file extension.\n\t\t * @param mixed $link URL or identifier returned by AddLink().\n\t\t * @param string $align Indicates the alignment of the pointer next to image insertion relative to image height. The value can be:<ul><li>T: top-right for LTR or top-left for RTL</li><li>M: middle-right for LTR or middle-left for RTL</li><li>B: bottom-right for LTR or bottom-left for RTL</li><li>N: next line</li></ul>\n\t\t * @param mixed $resize If true resize (reduce) the image to fit $w and $h (requires GD or ImageMagick library); if false do not resize; if 2 force resize in all cases (upscaling and downscaling).\n\t\t * @param int $dpi dot-per-inch resolution used on resize\n\t\t * @param string $palign Allows to center or align the image on the current line. Possible values are:<ul><li>L : left align</li><li>C : center</li><li>R : right align</li><li>'' : empty string : left for LTR or right for RTL</li></ul>\n\t\t * @param boolean $ismask true if this image is a mask, false otherwise\n\t\t * @param mixed $imgmask image object returned by this function or false\n\t\t * @param mixed $border Indicates if borders must be drawn around the image. The value can be either a number:<ul><li>0: no border (default)</li><li>1: frame</li></ul>or a string containing some or all of the following characters (in any order):<ul><li>L: left</li><li>T: top</li><li>R: right</li><li>B: bottom</li></ul>\n\t\t * @param boolean $fitbox If true scale image dimensions proportionally to fit within the ($w, $h) box.\n\t\t * @param boolean $hidden if true do not display the image.\n\t\t * @param boolean $fitonpage if true the image is resized to not exceed page dimensions.\n\t\t * @return image information\n\t\t * @access public\n\t\t * @since 1.1\n\t\t */\n\t\tpublic function Image($file, $x='', $y='', $w=0, $h=0, $type='', $link='', $align='', $resize=false, $dpi=300, $palign='', $ismask=false, $imgmask=false, $border=0, $fitbox=false, $hidden=false, $fitonpage=false) {\n\t\t\tif ($x === '') {\n\t\t\t\t$x = $this->x;\n\t\t\t}\n\t\t\tif ($y === '') {\n\t\t\t\t$y = $this->y;\n\t\t\t}\n\t\t\t// get image dimensions\n\t\t\t$imsize = @getimagesize($file);\n\t\t\tif ($imsize === FALSE) {\n\t\t\t\t// encode spaces on filename\n\t\t\t\t$file = str_replace(' ', '%20', $file);\n\t\t\t\t$imsize = @getimagesize($file);\n\t\t\t\tif ($imsize === FALSE) {\n\t\t\t\t\tif (($w > 0) AND ($h > 0)) {\n\t\t\t\t\t\t$pw = $this->getHTMLUnitToUnits($w, 0, $this->pdfunit, true) * $this->imgscale * $this->k;\n\t\t\t\t\t\t$ph = $this->getHTMLUnitToUnits($h, 0, $this->pdfunit, true) * $this->imgscale * $this->k;\n\t\t\t\t\t\t$imsize = array($pw, $ph);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->Error('[Image] Unable to get image width and height: '.$file);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t// get original image width and height in pixels\n\t\t\tlist($pixw, $pixh) = $imsize;\n\t\t\t// calculate image width and height on document\n\t\t\tif (($w <= 0) AND ($h <= 0)) {\n\t\t\t\t// convert image size to document unit\n\t\t\t\t$w = $this->pixelsToUnits($pixw);\n\t\t\t\t$h = $this->pixelsToUnits($pixh);\n\t\t\t} elseif ($w <= 0) {\n\t\t\t\t$w = $h * $pixw / $pixh;\n\t\t\t} elseif ($h <= 0) {\n\t\t\t\t$h = $w * $pixh / $pixw;\n\t\t\t} elseif ($fitbox AND ($w > 0) AND ($h > 0)) {\n\t\t\t\t// scale image dimensions proportionally to fit within the ($w, $h) box\n\t\t\t\tif ((($w * $pixh) / ($h * $pixw)) < 1) {\n\t\t\t\t\t$h = $w * $pixh / $pixw;\n\t\t\t\t} else {\n\t\t\t\t\t$w = $h * $pixw / $pixh;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Check whether we need a new page first as this does not fit\n\t\t\t$prev_x = $this->x;\n\t\t\tif ($this->checkPageBreak($h, $y)) {\n\t\t\t\t$y = $this->y;\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$x += ($prev_x - $this->x);\n\t\t\t\t} else {\n\t\t\t\t\t$x += ($this->x - $prev_x);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// resize image to be contained on a single page\n\t\t\tif ($fitonpage) {\n\t\t\t\t$ratio_wh = $w / $h;\n\t\t\t\tif (($y + $h) > $this->PageBreakTrigger) {\n\t\t\t\t\t$h = $this->PageBreakTrigger - $y;\n\t\t\t\t\t$w = $h * $ratio_wh;\n\t\t\t\t}\n\t\t\t\tif (($x + $w) > ($this->w - $this->rMargin)) {\n\t\t\t\t\t$w = $this->w - $this->rMargin - $x;\n\t\t\t\t\t$h = $w / $ratio_wh;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// calculate new minimum dimensions in pixels\n\t\t\t$neww = round($w * $this->k * $dpi / $this->dpi);\n\t\t\t$newh = round($h * $this->k * $dpi / $this->dpi);\n\t\t\t// check if resize is necessary (resize is used only to reduce the image)\n\t\t\t$newsize = ($neww * $newh);\n\t\t\t$pixsize = ($pixw * $pixh);\n\t\t\tif (intval($resize) == 2) {\n\t\t\t\t$resize = true;\n\t\t\t} elseif ($newsize >= $pixsize) {\n\t\t\t\t$resize = false;\n\t\t\t}\n\t\t\t// check if image has been already added on document\n\t\t\t$newimage = true;\n\t\t\tif (in_array($file, $this->imagekeys)) {\n\t\t\t\t$newimage = false;\n\t\t\t\t// get existing image data\n\t\t\t\t$info = $this->getImageBuffer($file);\n\t\t\t\t// check if the newer image is larger\n\t\t\t\t$oldsize = ($info['w'] * $info['h']);\n\t\t\t\tif ((($oldsize < $newsize) AND ($resize)) OR (($oldsize < $pixsize) AND (!$resize))) {\n\t\t\t\t\t$newimage = true;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ($newimage) {\n\t\t\t\t//First use of image, get info\n\t\t\t\tif ($type == '') {\n\t\t\t\t\t$type = $this->getImageFileType($file, $imsize);\n\t\t\t\t}\n\t\t\t\t$mqr = $this->get_mqr();\n\t\t\t\t$this->set_mqr(false);\n\t\t\t\t// Specific image handlers\n\t\t\t\t$mtd = '_parse'.$type;\n\t\t\t\t// GD image handler function\n\t\t\t\t$gdfunction = 'imagecreatefrom'.$type;\n\t\t\t\t$info = false;\n\t\t\t\tif ((method_exists($this, $mtd)) AND (!($resize AND function_exists($gdfunction)))) {\n\t\t\t\t\t// TCPDF image functions\n\t\t\t\t\t$info = $this->$mtd($file);\n\t\t\t\t\tif ($info == 'pngalpha') {\n\t\t\t\t\t\treturn $this->ImagePngAlpha($file, $x, $y, $w, $h, 'PNG', $link, $align, $resize, $dpi, $palign);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (!$info) {\n\t\t\t\t\tif (function_exists($gdfunction)) {\n\t\t\t\t\t\t// GD library\n\t\t\t\t\t\t$img = $gdfunction($file);\n\t\t\t\t\t\tif ($resize) {\n\t\t\t\t\t\t\t$imgr = imagecreatetruecolor($neww, $newh);\n\t\t\t\t\t\t\tif (($type == 'gif') OR ($type == 'png')) {\n\t\t\t\t\t\t\t\t$imgr = $this->_setGDImageTransparency($imgr, $img);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\timagecopyresampled($imgr, $img, 0, 0, 0, 0, $neww, $newh, $pixw, $pixh);\n\t\t\t\t\t\t\tif (($type == 'gif') OR ($type == 'png')) {\n\t\t\t\t\t\t\t\t$info = $this->_toPNG($imgr);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$info = $this->_toJPEG($imgr);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tif (($type == 'gif') OR ($type == 'png')) {\n\t\t\t\t\t\t\t\t$info = $this->_toPNG($img);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$info = $this->_toJPEG($img);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t} elseif (extension_loaded('imagick')) {\n\t\t\t\t\t\t// ImageMagick library\n\t\t\t\t\t\t$img = new Imagick();\n\t\t\t\t\t\tif ($type == 'SVG') {\n\t\t\t\t\t\t\t// get SBG file content\n\t\t\t\t\t\t\t$svgimg = file_get_contents($file);\n\t\t\t\t\t\t\t// get width and height\n\t\t\t\t\t\t\t$regs = array();\n\t\t\t\t\t\t\tif (preg_match('/<svg([^\\>]*)>/si', $svgimg, $regs)) {\n\t\t\t\t\t\t\t\t$tmp = array();\n\t\t\t\t\t\t\t\tif (preg_match('/[\\s]+width[\\s]*=[\\s]*\"([^\"]*)\"/si', $regs[1], $tmp)) {\n\t\t\t\t\t\t\t\t\t$ow = $this->getHTMLUnitToUnits($tmp[1], 1, $this->svgunit, false) * $dpi / 72;\n\t\t\t\t\t\t\t\t\t$svgimg = preg_replace('/[\\s]+width[\\s]*=[\\s]*\"[^\"]*\"/si', ' width=\"'.$ow.$this->pdfunit.'\"', $svgimg);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$tmp = array();\n\t\t\t\t\t\t\t\tif (preg_match('/[\\s]+height[\\s]*=[\\s]*\"([^\"]*)\"/si', $regs[1], $tmp)) {\n\t\t\t\t\t\t\t\t\t$oh = $this->getHTMLUnitToUnits($tmp[1], 1, $this->svgunit, false) * $dpi / 72;\n\t\t\t\t\t\t\t\t\t$svgimg = preg_replace('/[\\s]+height[\\s]*=[\\s]*\"[^\"]*\"/si', ' height=\"'.$oh.$this->pdfunit.'\"', $svgimg);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$tmp = array();\n\t\t\t\t\t\t\t\tif (!preg_match('/[\\s]+viewBox[\\s]*=[\\s]*\"[\\s]*([0-9\\.]+)[\\s]+([0-9\\.]+)[\\s]+([0-9\\.]+)[\\s]+([0-9\\.]+)[\\s]*\"/si', $regs[1], $tmp)) {\n\t\t\t\t\t\t\t\t\t$vbw = $ow * (72 / $dpi) * $this->imgscale * $this->k;\n\t\t\t\t\t\t\t\t\t$vbh = $oh * (72 / $dpi) * $this->imgscale * $this->k;\n\t\t\t\t\t\t\t\t\t$svgimg = preg_replace('/<svg/si', '<svg viewBox=\"0 0 '.$vbw.' '.$vbh.'\"', $svgimg);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$img->readImageBlob($svgimg);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$img->readImage($file);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ($resize) {\n\t\t\t\t\t\t\t$img->resizeImage($neww, $newh, 10, 1, false);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$img->setCompressionQuality($this->jpeg_quality);\n\t\t\t\t\t\t$img->setImageFormat('jpeg');\n\t\t\t\t\t\t$tempname = tempnam(K_PATH_CACHE, 'jpg_');\n\t\t\t\t\t\t$img->writeImage($tempname);\n\t\t\t\t\t\t$info = $this->_parsejpeg($tempname);\n\t\t\t\t\t\tunlink($tempname);\n\t\t\t\t\t\t$img->destroy();\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ($info === false) {\n\t\t\t\t\t//If false, we cannot process image\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\t$this->set_mqr($mqr);\n\t\t\t\tif ($ismask) {\n\t\t\t\t\t// force grayscale\n\t\t\t\t\t$info['cs'] = 'DeviceGray';\n\t\t\t\t}\n\t\t\t\t$info['i'] = $this->numimages;\n\t\t\t\tif (!in_array($file, $this->imagekeys)) {\n\t\t\t\t\t++$info['i'];\n\t\t\t\t}\n\t\t\t\tif ($imgmask !== false) {\n\t\t\t\t\t$info['masked'] = $imgmask;\n\t\t\t\t}\n\t\t\t\t// add image to document\n\t\t\t\t$this->setImageBuffer($file, $info);\n\t\t\t}\n\t\t\t// set alignment\n\t\t\t$this->img_rb_y = $y + $h;\n\t\t\t// set alignment\n\t\t\tif ($this->rtl) {\n\t\t\t\tif ($palign == 'L') {\n\t\t\t\t\t$ximg = $this->lMargin;\n\t\t\t\t} elseif ($palign == 'C') {\n\t\t\t\t\t$ximg = ($this->w - $w) / 2;\n\t\t\t\t} elseif ($palign == 'R') {\n\t\t\t\t\t$ximg = $this->w - $this->rMargin - $w;\n\t\t\t\t} else {\n\t\t\t\t\t$ximg = $this->w - $x - $w;\n\t\t\t\t}\n\t\t\t\t$this->img_rb_x = $ximg;\n\t\t\t} else {\n\t\t\t\tif ($palign == 'L') {\n\t\t\t\t\t$ximg = $this->lMargin;\n\t\t\t\t} elseif ($palign == 'C') {\n\t\t\t\t\t$ximg = ($this->w - $w) / 2;\n\t\t\t\t} elseif ($palign == 'R') {\n\t\t\t\t\t$ximg = $this->w - $this->rMargin - $w;\n\t\t\t\t} else {\n\t\t\t\t\t$ximg = $x;\n\t\t\t\t}\n\t\t\t\t$this->img_rb_x = $ximg + $w;\n\t\t\t}\n\t\t\tif ($ismask OR $hidden) {\n\t\t\t\t// image is not displayed\n\t\t\t\treturn $info['i'];\n\t\t\t}\n\t\t\t$xkimg = $ximg * $this->k;\n\t\t\t$this->_out(sprintf('q %.2F 0 0 %.2F %.2F %.2F cm /I%d Do Q', ($w * $this->k), ($h * $this->k), $xkimg, (($this->h - ($y + $h)) * $this->k), $info['i']));\n\t\t\tif (!empty($border)) {\n\t\t\t\t$bx = $x;\n\t\t\t\t$by = $y;\n\t\t\t\t$this->x = $ximg;\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$this->x += $w;\n\t\t\t\t}\n\t\t\t\t$this->y = $y;\n\t\t\t\t$this->Cell($w, $h, '', $border, 0, '', 0, '', 0);\n\t\t\t\t$this->x = $bx;\n\t\t\t\t$this->y = $by;\n\t\t\t}\n\t\t\tif ($link) {\n\t\t\t\t$this->Link($ximg, $y, $w, $h, $link, 0);\n\t\t\t}\n\t\t\t// set pointer to align the successive text/objects\n\t\t\tswitch($align) {\n\t\t\t\tcase 'T': {\n\t\t\t\t\t$this->y = $y;\n\t\t\t\t\t$this->x = $this->img_rb_x;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'M': {\n\t\t\t\t\t$this->y = $y + round($h/2);\n\t\t\t\t\t$this->x = $this->img_rb_x;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'B': {\n\t\t\t\t\t$this->y = $this->img_rb_y;\n\t\t\t\t\t$this->x = $this->img_rb_x;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'N': {\n\t\t\t\t\t$this->SetY($this->img_rb_y);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tdefault:{\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$this->endlinex = $this->img_rb_x;\n\t\t\treturn $info['i'];\n\t\t}\n\n\t\t/**\n\t\t * Sets the current active configuration setting of magic_quotes_runtime (if the set_magic_quotes_runtime function exist)\n\t\t * @param boolean $mqr FALSE for off, TRUE for on.\n\t\t * @since 4.6.025 (2009-08-17)\n\t\t */\n\t\tpublic function set_mqr($mqr) {\n\t\t\tif(!defined('PHP_VERSION_ID')) {\n\t\t\t\t$version = PHP_VERSION;\n\t\t\t\tdefine('PHP_VERSION_ID', (($version{0} * 10000) + ($version{2} * 100) + $version{4}));\n\t\t\t}\n\t\t\tif (PHP_VERSION_ID < 50300) {\n\t\t\t\t@set_magic_quotes_runtime($mqr);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Gets the current active configuration setting of magic_quotes_runtime (if the get_magic_quotes_runtime function exist)\n\t\t * @return Returns 0 if magic quotes runtime is off or get_magic_quotes_runtime doesn't exist, 1 otherwise.\n\t\t * @since 4.6.025 (2009-08-17)\n\t\t */\n\t\tpublic function get_mqr() {\n\t\t\tif(!defined('PHP_VERSION_ID')) {\n\t\t\t\t$version = PHP_VERSION;\n\t\t\t\tdefine('PHP_VERSION_ID', (($version{0} * 10000) + ($version{2} * 100) + $version{4}));\n\t\t\t}\n\t\t\tif (PHP_VERSION_ID < 50300) {\n\t\t\t\treturn @get_magic_quotes_runtime();\n\t\t\t}\n\t\t\treturn 0;\n\t\t}\n\n\t\t/**\n\t\t * Convert the loaded image to a JPEG and then return a structure for the PDF creator.\n\t\t * This function requires GD library and write access to the directory defined on K_PATH_CACHE constant.\n\t\t * @param string $file Image file name.\n\t\t * @param image $image Image object.\n\t\t * return image JPEG image object.\n\t\t * @access protected\n\t\t */\n\t\tprotected function _toJPEG($image) {\n\t\t\t$tempname = tempnam(K_PATH_CACHE, 'jpg_');\n\t\t\timagejpeg($image, $tempname, $this->jpeg_quality);\n\t\t\timagedestroy($image);\n\t\t\t$retvars = $this->_parsejpeg($tempname);\n\t\t\t// tidy up by removing temporary image\n\t\t\tunlink($tempname);\n\t\t\treturn $retvars;\n\t\t}\n\n\t\t/**\n\t\t * Convert the loaded image to a PNG and then return a structure for the PDF creator.\n\t\t * This function requires GD library and write access to the directory defined on K_PATH_CACHE constant.\n\t\t * @param string $file Image file name.\n\t\t * @param image $image Image object.\n\t\t * return image PNG image object.\n\t\t * @access protected\n\t\t * @since 4.9.016 (2010-04-20)\n\t\t */\n\t\tprotected function _toPNG($image) {\n\t\t\t$tempname = tempnam(K_PATH_CACHE, 'jpg_');\n\t\t\timagepng($image, $tempname);\n\t\t\timagedestroy($image);\n\t\t\t$retvars = $this->_parsepng($tempname);\n\t\t\t// tidy up by removing temporary image\n\t\t\tunlink($tempname);\n\t\t\treturn $retvars;\n\t\t}\n\n\t\t/**\n\t\t * Set the transparency for the given GD image.\n\t\t * @param image $new_image GD image object\n\t\t * @param image $image GD image object.\n\t\t * return GD image object.\n\t\t * @access protected\n\t\t * @since 4.9.016 (2010-04-20)\n\t\t */\n\t\tprotected function _setGDImageTransparency($new_image, $image) {\n\t\t\t// transparency index\n\t\t\t$tid = imagecolortransparent($image);\n\t\t\t// default transparency color\n\t\t\t$tcol = array('red' => 255, 'green' => 255, 'blue' => 255);\n\t\t\tif ($tid >= 0) {\n\t\t\t\t// get the colors for the transparency index\n\t\t\t\t$tcol = imagecolorsforindex($image, $tid);\n\t\t\t}\n\t\t\t$tid = imagecolorallocate($new_image, $tcol['red'], $tcol['green'], $tcol['blue']);\n\t\t\timagefill($new_image, 0, 0, $tid);\n\t\t\timagecolortransparent($new_image, $tid);\n\t\t\treturn $new_image;\n\t\t}\n\n\t\t/**\n\t\t * Extract info from a JPEG file without using the GD library.\n\t\t * @param string $file image file to parse\n\t\t * @return array structure containing the image data\n\t\t * @access protected\n\t\t */\n\t\tprotected function _parsejpeg($file) {\n\t\t\t$a = getimagesize($file);\n\t\t\tif (empty($a)) {\n\t\t\t\t$this->Error('Missing or incorrect image file: '.$file);\n\t\t\t}\n\t\t\tif ($a[2] != 2) {\n\t\t\t\t$this->Error('Not a JPEG file: '.$file);\n\t\t\t}\n\t\t\tif ((!isset($a['channels'])) OR ($a['channels'] == 3)) {\n\t\t\t\t$colspace = 'DeviceRGB';\n\t\t\t} elseif ($a['channels'] == 4) {\n\t\t\t\t$colspace = 'DeviceCMYK';\n\t\t\t} else {\n\t\t\t\t$colspace = 'DeviceGray';\n\t\t\t}\n\t\t\t$bpc = isset($a['bits']) ? $a['bits'] : 8;\n\t\t\t$data = file_get_contents($file);\n\t\t\treturn array('w' => $a[0], 'h' => $a[1], 'cs' => $colspace, 'bpc' => $bpc, 'f' => 'DCTDecode', 'data' => $data);\n\t\t}\n\n\t\t/**\n\t\t * Extract info from a PNG file without using the GD library.\n\t\t * @param string $file image file to parse\n\t\t * @return array structure containing the image data\n\t\t * @access protected\n\t\t */\n\t\tprotected function _parsepng($file) {\n\t\t\t$f = fopen($file, 'rb');\n\t\t\tif ($f === false) {\n\t\t\t\t$this->Error('Can\\'t open image file: '.$file);\n\t\t\t}\n\t\t\t//Check signature\n\t\t\tif (fread($f, 8) != chr(137).'PNG'.chr(13).chr(10).chr(26).chr(10)) {\n\t\t\t\t$this->Error('Not a PNG file: '.$file);\n\t\t\t}\n\t\t\t//Read header chunk\n\t\t\tfread($f, 4);\n\t\t\tif (fread($f, 4) != 'IHDR') {\n\t\t\t\t$this->Error('Incorrect PNG file: '.$file);\n\t\t\t}\n\t\t\t$w = $this->_freadint($f);\n\t\t\t$h = $this->_freadint($f);\n\t\t\t$bpc = ord(fread($f, 1));\n\t\t\tif ($bpc > 8) {\n\t\t\t\t//$this->Error('16-bit depth not supported: '.$file);\n\t\t\t\tfclose($f);\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t$ct = ord(fread($f, 1));\n\t\t\tif ($ct == 0) {\n\t\t\t\t$colspace = 'DeviceGray';\n\t\t\t} elseif ($ct == 2) {\n\t\t\t\t$colspace = 'DeviceRGB';\n\t\t\t} elseif ($ct == 3) {\n\t\t\t\t$colspace = 'Indexed';\n\t\t\t} else {\n\t\t\t\t// alpha channel\n\t\t\t\tfclose($f);\n\t\t\t\treturn 'pngalpha';\n\t\t\t}\n\t\t\tif (ord(fread($f, 1)) != 0) {\n\t\t\t\t//$this->Error('Unknown compression method: '.$file);\n\t\t\t\tfclose($f);\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tif (ord(fread($f, 1)) != 0) {\n\t\t\t\t//$this->Error('Unknown filter method: '.$file);\n\t\t\t\tfclose($f);\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tif (ord(fread($f, 1)) != 0) {\n\t\t\t\t//$this->Error('Interlacing not supported: '.$file);\n\t\t\t\tfclose($f);\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tfread($f, 4);\n\t\t\t$parms = '/DecodeParms <</Predictor 15 /Colors '.($ct==2 ? 3 : 1).' /BitsPerComponent '.$bpc.' /Columns '.$w.'>>';\n\t\t\t//Scan chunks looking for palette, transparency and image data\n\t\t\t$pal = '';\n\t\t\t$trns = '';\n\t\t\t$data = '';\n\t\t\tdo {\n\t\t\t\t$n = $this->_freadint($f);\n\t\t\t\t$type = fread($f, 4);\n\t\t\t\tif ($type == 'PLTE') {\n\t\t\t\t\t//Read palette\n\t\t\t\t\t$pal = $this->rfread($f, $n);\n\t\t\t\t\tfread($f, 4);\n\t\t\t\t} elseif ($type == 'tRNS') {\n\t\t\t\t\t//Read transparency info\n\t\t\t\t\t$t = $this->rfread($f, $n);\n\t\t\t\t\tif ($ct == 0) {\n\t\t\t\t\t\t$trns = array(ord(substr($t, 1, 1)));\n\t\t\t\t\t} elseif ($ct == 2) {\n\t\t\t\t\t\t$trns = array(ord(substr($t, 1, 1)), ord(substr($t, 3, 1)), ord(substr($t, 5, 1)));\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$pos = strpos($t, chr(0));\n\t\t\t\t\t\tif ($pos !== false) {\n\t\t\t\t\t\t\t$trns = array($pos);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tfread($f, 4);\n\t\t\t\t} elseif ($type == 'IDAT') {\n\t\t\t\t\t//Read image data block\n\t\t\t\t\t$data .= $this->rfread($f, $n);\n\t\t\t\t\tfread($f, 4);\n\t\t\t\t} elseif ($type == 'IEND') {\n\t\t\t\t\tbreak;\n\t\t\t\t} else {\n\t\t\t\t\t$this->rfread($f, $n + 4);\n\t\t\t\t}\n\t\t\t} while ($n);\n\t\t\tif (($colspace == 'Indexed') AND (empty($pal))) {\n\t\t\t\t//$this->Error('Missing palette in '.$file);\n\t\t\t\tfclose($f);\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tfclose($f);\n\t\t\treturn array('w' => $w, 'h' => $h, 'cs' => $colspace, 'bpc' => $bpc, 'f' => 'FlateDecode', 'parms' => $parms, 'pal' => $pal, 'trns' => $trns, 'data' => $data);\n\t\t}\n\n\t\t/**\n\t\t * Binary-safe and URL-safe file read.\n\t\t * Reads up to length  bytes from the file pointer referenced by handle. Reading stops as soon as one of the following conditions is met: length bytes have been read; EOF (end of file) is reached.\n\t\t * @param resource $handle\n\t\t * @param int $length\n\t\t * @return Returns the read string or FALSE in case of error.\n\t\t * @author Nicola Asuni\n\t\t * @access protected\n\t\t * @since 4.5.027 (2009-03-16)\n\t\t */\n\t\tprotected function rfread($handle, $length) {\n\t\t\t$data = fread($handle, $length);\n\t\t\tif ($data === false) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t$rest = $length - strlen($data);\n\t\t\tif ($rest > 0) {\n\t\t\t\t$data .= $this->rfread($handle, $rest);\n\t\t\t}\n\t\t\treturn $data;\n\t\t}\n\n\t\t/**\n\t\t * Extract info from a PNG image with alpha channel using the GD library.\n\t\t * @param string $file Name of the file containing the image.\n\t\t * @param float $x Abscissa of the upper-left corner.\n\t\t * @param float $y Ordinate of the upper-left corner.\n\t\t * @param float $w Width of the image in the page. If not specified or equal to zero, it is automatically calculated.\n\t\t * @param float $h Height of the image in the page. If not specified or equal to zero, it is automatically calculated.\n\t\t * @param string $type Image format. Possible values are (case insensitive): JPEG and PNG (whitout GD library) and all images supported by GD: GD, GD2, GD2PART, GIF, JPEG, PNG, BMP, XBM, XPM;. If not specified, the type is inferred from the file extension.\n\t\t * @param mixed $link URL or identifier returned by AddLink().\n\t\t * @param string $align Indicates the alignment of the pointer next to image insertion relative to image height. The value can be:<ul><li>T: top-right for LTR or top-left for RTL</li><li>M: middle-right for LTR or middle-left for RTL</li><li>B: bottom-right for LTR or bottom-left for RTL</li><li>N: next line</li></ul>\n\t\t * @param boolean $resize If true resize (reduce) the image to fit $w and $h (requires GD library).\n\t\t * @param int $dpi dot-per-inch resolution used on resize\n\t\t * @param string $palign Allows to center or align the image on the current line. Possible values are:<ul><li>L : left align</li><li>C : center</li><li>R : right align</li><li>'' : empty string : left for LTR or right for RTL</li></ul>\n\t\t * @author Valentin Schmidt, Nicola Asuni\n\t\t * @access protected\n\t\t * @since 4.3.007 (2008-12-04)\n\t\t * @see Image()\n\t\t */\n\t\tprotected function ImagePngAlpha($file, $x='', $y='', $w=0, $h=0, $type='', $link='', $align='', $resize=false, $dpi=300, $palign='') {\n\t\t\t// get image size\n\t\t\tlist($wpx, $hpx) = getimagesize($file);\n\t\t\t// generate images\n\t\t\t$img = imagecreatefrompng($file);\n\t\t\t$imgalpha = imagecreate($wpx, $hpx);\n\t\t\t// generate gray scale pallete\n\t\t\tfor ($c = 0; $c < 256; ++$c) {\n\t\t\t\tImageColorAllocate($imgalpha, $c, $c, $c);\n\t\t\t}\n\t\t\t// extract alpha channel\n\t\t\tfor ($xpx = 0; $xpx < $wpx; ++$xpx) {\n\t\t\t\tfor ($ypx = 0; $ypx < $hpx; ++$ypx) {\n\t\t\t\t\t$colorindex = imagecolorat($img, $xpx, $ypx);\n\t\t\t\t\t$col = imagecolorsforindex($img, $colorindex);\n\t\t\t\t\timagesetpixel($imgalpha, $xpx, $ypx, $this->getGDgamma((127 - $col['alpha']) * 255 / 127));\n\t\t\t\t}\n\t\t\t}\n\t\t\t// create temp alpha file\n\t\t\t$tempfile_alpha = tempnam(K_PATH_CACHE, 'mska_');\n\t\t\timagepng($imgalpha, $tempfile_alpha);\n\t\t\timagedestroy($imgalpha);\n\t\t\t// extract image without alpha channel\n\t\t\t$imgplain = imagecreatetruecolor($wpx, $hpx);\n\t\t\timagecopy($imgplain, $img, 0, 0, 0, 0, $wpx, $hpx);\n\t\t\t// create temp image file\n\t\t\t$tempfile_plain = tempnam(K_PATH_CACHE, 'mskp_');\n\t\t\timagepng($imgplain, $tempfile_plain);\n\t\t\timagedestroy($imgplain);\n\t\t\t// embed mask image\n\t\t\t$imgmask = $this->Image($tempfile_alpha, $x, $y, $w, $h, 'PNG', '', '', $resize, $dpi, '', true, false);\n\t\t\t// embed image, masked with previously embedded mask\n\t\t\t$this->Image($tempfile_plain, $x, $y, $w, $h, $type, $link, $align, $resize, $dpi, $palign, false, $imgmask);\n\t\t\t// remove temp files\n\t\t\tunlink($tempfile_alpha);\n\t\t\tunlink($tempfile_plain);\n\t\t}\n\n\t\t/**\n\t\t * Correct the gamma value to be used with GD library\n\t\t * @param float $v the gamma value to be corrected\n\t\t * @access protected\n\t\t * @since 4.3.007 (2008-12-04)\n\t\t */\n\t\tprotected function getGDgamma($v) {\n\t\t\treturn (pow(($v / 255), 2.2) * 255);\n\t\t}\n\n\t\t/**\n\t\t * Performs a line break.\n\t\t * The current abscissa goes back to the left margin and the ordinate increases by the amount passed in parameter.\n\t\t * @param float $h The height of the break. By default, the value equals the height of the last printed cell.\n\t\t * @param boolean $cell if true add a cMargin to the x coordinate\n\t\t * @access public\n\t\t * @since 1.0\n\t\t * @see Cell()\n\t\t */\n\t\tpublic function Ln($h='', $cell=false) {\n\t\t\tif (($this->num_columns > 0) AND ($this->y == $this->columns[$this->current_column]['y']) AND isset($this->columns[$this->current_column]['x']) AND ($this->x == $this->columns[$this->current_column]['x'])) {\n\t\t\t\t// revove vertical space from the top of the column\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif ($cell) {\n\t\t\t\t$cellmargin = $this->cMargin;\n\t\t\t} else {\n\t\t\t\t$cellmargin = 0;\n\t\t\t}\n\t\t\tif ($this->rtl) {\n\t\t\t\t$this->x = $this->w - $this->rMargin - $cellmargin;\n\t\t\t} else {\n\t\t\t\t$this->x = $this->lMargin + $cellmargin;\n\t\t\t}\n\t\t\tif (is_string($h)) {\n\t\t\t\t$this->y += $this->lasth;\n\t\t\t} else {\n\t\t\t\t$this->y += $h;\n\t\t\t}\n\t\t\t$this->newline = true;\n\t\t}\n\n\t\t/**\n\t\t * Returns the relative X value of current position.\n\t\t * The value is relative to the left border for LTR languages and to the right border for RTL languages.\n\t\t * @return float\n\t\t * @access public\n\t\t * @since 1.2\n\t\t * @see SetX(), GetY(), SetY()\n\t\t */\n\t\tpublic function GetX() {\n\t\t\t//Get x position\n\t\t\tif ($this->rtl) {\n\t\t\t\treturn ($this->w - $this->x);\n\t\t\t} else {\n\t\t\t\treturn $this->x;\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Returns the absolute X value of current position.\n\t\t * @return float\n\t\t * @access public\n\t\t * @since 1.2\n\t\t * @see SetX(), GetY(), SetY()\n\t\t */\n\t\tpublic function GetAbsX() {\n\t\t\treturn $this->x;\n\t\t}\n\n\t\t/**\n\t\t * Returns the ordinate of the current position.\n\t\t * @return float\n\t\t * @access public\n\t\t * @since 1.0\n\t\t * @see SetY(), GetX(), SetX()\n\t\t */\n\t\tpublic function GetY() {\n\t\t\treturn $this->y;\n\t\t}\n\n\t\t/**\n\t\t * Defines the abscissa of the current position.\n\t\t * If the passed value is negative, it is relative to the right of the page (or left if language is RTL).\n\t\t * @param float $x The value of the abscissa.\n\t\t * @param boolean $rtloff if true always uses the page top-left corner as origin of axis.\n\t\t * @access public\n\t\t * @since 1.2\n\t\t * @see GetX(), GetY(), SetY(), SetXY()\n\t\t */\n\t\tpublic function SetX($x, $rtloff=false) {\n\t\t\tif (!$rtloff AND $this->rtl) {\n\t\t\t\tif ($x >= 0) {\n\t\t\t\t\t$this->x = $this->w - $x;\n\t\t\t\t} else {\n\t\t\t\t\t$this->x = abs($x);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif ($x >= 0) {\n\t\t\t\t\t$this->x = $x;\n\t\t\t\t} else {\n\t\t\t\t\t$this->x = $this->w + $x;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ($this->x < 0) {\n\t\t\t\t$this->x = 0;\n\t\t\t}\n\t\t\tif ($this->x > $this->w) {\n\t\t\t\t$this->x = $this->w;\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Moves the current abscissa back to the left margin and sets the ordinate.\n\t\t * If the passed value is negative, it is relative to the bottom of the page.\n\t\t * @param float $y The value of the ordinate.\n\t\t * @param bool $resetx if true (default) reset the X position.\n\t\t * @param boolean $rtloff if true always uses the page top-left corner as origin of axis.\n\t\t * @access public\n\t\t * @since 1.0\n\t\t * @see GetX(), GetY(), SetY(), SetXY()\n\t\t */\n\t\tpublic function SetY($y, $resetx=true, $rtloff=false) {\n\t\t\tif ($resetx) {\n\t\t\t\t//reset x\n\t\t\t\tif (!$rtloff AND $this->rtl) {\n\t\t\t\t\t$this->x = $this->w - $this->rMargin;\n\t\t\t\t} else {\n\t\t\t\t\t$this->x = $this->lMargin;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ($y >= 0) {\n\t\t\t\t$this->y = $y;\n\t\t\t} else {\n\t\t\t\t$this->y = $this->h + $y;\n\t\t\t}\n\t\t\tif ($this->y < 0) {\n\t\t\t\t$this->y = 0;\n\t\t\t}\n\t\t\tif ($this->y > $this->h) {\n\t\t\t\t$this->y = $this->h;\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Defines the abscissa and ordinate of the current position.\n\t\t * If the passed values are negative, they are relative respectively to the right and bottom of the page.\n\t\t * @param float $x The value of the abscissa.\n\t\t * @param float $y The value of the ordinate.\n\t\t * @param boolean $rtloff if true always uses the page top-left corner as origin of axis.\n\t\t * @access public\n\t\t * @since 1.2\n\t\t * @see SetX(), SetY()\n\t\t */\n\t\tpublic function SetXY($x, $y, $rtloff=false) {\n\t\t\t$this->SetY($y, false, $rtloff);\n\t\t\t$this->SetX($x, $rtloff);\n\t\t}\n\n\t\t/**\n\t\t * Send the document to a given destination: string, local file or browser.\n\t\t * In the last case, the plug-in may be used (if present) or a download (\"Save as\" dialog box) may be forced.<br />\n\t\t * The method first calls Close() if necessary to terminate the document.\n\t\t * @param string $name The name of the file when saved. Note that special characters are removed and blanks characters are replaced with the underscore character.\n\t\t * @param string $dest Destination where to send the document. It can take one of the following values:<ul><li>I: send the file inline to the browser (default). The plug-in is used if available. The name given by name is used when one selects the \"Save as\" option on the link generating the PDF.</li><li>D: send to the browser and force a file download with the name given by name.</li><li>F: save to a local server file with the name given by name.</li><li>S: return the document as a string. name is ignored.</li><li>FI: equivalent to F + I option</li><li>FD: equivalent to F + D option</li></ul>\n\t\t * @access public\n\t\t * @since 1.0\n\t\t * @see Close()\n\t\t */\n\t\tpublic function Output($name='doc.pdf', $dest='I') {\n\t\t\t//Output PDF to some destination\n\t\t\t//Finish document if necessary\n\t\t\t$this->lastpage();\n\t\t\tif ($this->state < 3) {\n\t\t\t\t$this->Close();\n\t\t\t}\n\t\t\t//Normalize parameters\n\t\t\tif (is_bool($dest)) {\n\t\t\t\t$dest = $dest ? 'D' : 'F';\n\t\t\t}\n\t\t\t$dest = strtoupper($dest);\n\t\t\tif ($dest != 'F') {\n\t\t\t\t$name = preg_replace('/[\\s]+/', '_', $name);\n\t\t\t\t$name = preg_replace('/[^a-zA-Z0-9_\\.-]/', '', $name);\n\t\t\t}\n\t\t\tif ($this->sign) {\n\t\t\t\t// *** apply digital signature to the document ***\n\t\t\t\t// get the document content\n\t\t\t\t$pdfdoc = $this->getBuffer();\n\t\t\t\t// remove last newline\n\t\t\t\t$pdfdoc = substr($pdfdoc, 0, -1);\n\t\t\t\t// Remove the original buffer\n\t\t\t\tif (isset($this->diskcache) AND $this->diskcache) {\n\t\t\t\t\t// remove buffer file from cache\n\t\t\t\t\tunlink($this->buffer);\n\t\t\t\t}\n\t\t\t\tunset($this->buffer);\n\t\t\t\t// remove filler space\n\t\t\t\t$byterange_string_len = strlen($this->byterange_string);\n\t\t\t\t// define the ByteRange\n\t\t\t\t$byte_range = array();\n\t\t\t\t$byte_range[0] = 0;\n\t\t\t\t$byte_range[1] = strpos($pdfdoc, $this->byterange_string) + $byterange_string_len + 10;\n\t\t\t\t$byte_range[2] = $byte_range[1] + $this->signature_max_length + 2;\n\t\t\t\t$byte_range[3] = strlen($pdfdoc) - $byte_range[2];\n\t\t\t\t$pdfdoc = substr($pdfdoc, 0, $byte_range[1]).substr($pdfdoc, $byte_range[2]);\n\t\t\t\t// replace the ByteRange\n\t\t\t\t$byterange = sprintf('/ByteRange[0 %u %u %u]', $byte_range[1], $byte_range[2], $byte_range[3]);\n\t\t\t\t$byterange .= str_repeat(' ', ($byterange_string_len - strlen($byterange)));\n\t\t\t\t$pdfdoc = str_replace($this->byterange_string, $byterange, $pdfdoc);\n\t\t\t\t// write the document to a temporary folder\n\t\t\t\t$tempdoc = tempnam(K_PATH_CACHE, 'tmppdf_');\n\t\t\t\t$f = fopen($tempdoc, 'wb');\n\t\t\t\tif (!$f) {\n\t\t\t\t\t$this->Error('Unable to create temporary file: '.$tempdoc);\n\t\t\t\t}\n\t\t\t\t$pdfdoc_length = strlen($pdfdoc);\n\t\t\t\tfwrite($f, $pdfdoc, $pdfdoc_length);\n\t\t\t\tfclose($f);\n\t\t\t\t// get digital signature via openssl library\n\t\t\t\t$tempsign = tempnam(K_PATH_CACHE, 'tmpsig_');\n\t\t\t\tif (empty($this->signature_data['extracerts'])) {\n\t\t\t\t\topenssl_pkcs7_sign($tempdoc, $tempsign, $this->signature_data['signcert'], array($this->signature_data['privkey'], $this->signature_data['password']), array(), PKCS7_BINARY | PKCS7_DETACHED);\n\t\t\t\t} else {\n\t\t\t\t\topenssl_pkcs7_sign($tempdoc, $tempsign, $this->signature_data['signcert'], array($this->signature_data['privkey'], $this->signature_data['password']), array(), PKCS7_BINARY | PKCS7_DETACHED, $this->signature_data['extracerts']);\n\t\t\t\t}\n\t\t\t\tunlink($tempdoc);\n\t\t\t\t// read signature\n\t\t\t\t$signature = file_get_contents($tempsign, false, null, $pdfdoc_length);\n\t\t\t\tunlink($tempsign);\n\t\t\t\t// extract signature\n\t\t\t\t$signature = substr($signature, (strpos($signature, \"%%EOF\\n\\n------\") + 13));\n\t\t\t\t$tmparr = explode(\"\\n\\n\", $signature);\n\t\t\t\t$signature = $tmparr[1];\n\t\t\t\tunset($tmparr);\n\t\t\t\t// decode signature\n\t\t\t\t$signature = base64_decode(trim($signature));\n\t\t\t\t// convert signature to hex\n\t\t\t\t$signature = current(unpack('H*', $signature));\n\t\t\t\t$signature = str_pad($signature, $this->signature_max_length, '0');\n\t\t\t\t// Add signature to the document\n\t\t\t\t$pdfdoc = substr($pdfdoc, 0, $byte_range[1]).'<'.$signature.'>'.substr($pdfdoc, ($byte_range[1]));\n\t\t\t\t$this->diskcache = false;\n\t\t\t\t$this->buffer = &$pdfdoc;\n\t\t\t\t$this->bufferlen = strlen($pdfdoc);\n\t\t\t}\n\t\t\tswitch($dest) {\n\t\t\t\tcase 'I': {\n\t\t\t\t\t// Send PDF to the standard output\n\t\t\t\t\tif (ob_get_contents()) {\n\t\t\t\t\t\t$this->Error('Some data has already been output, can\\'t send PDF file');\n\t\t\t\t\t}\n\t\t\t\t\tif (php_sapi_name() != 'cli') {\n\t\t\t\t\t\t//We send to a browser\n\t\t\t\t\t\theader('Content-Type: application/pdf');\n\t\t\t\t\t\tif (headers_sent()) {\n\t\t\t\t\t\t\t$this->Error('Some data has already been output to browser, can\\'t send PDF file');\n\t\t\t\t\t\t}\n\t\t\t\t\t\theader('Cache-Control: public, must-revalidate, max-age=0'); // HTTP/1.1\n\t\t\t\t\t\theader('Pragma: public');\n\t\t\t\t\t\theader('Expires: Sat, 26 Jul 1997 05:00:00 GMT'); // Date in the past\n\t\t\t\t\t\theader('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');\n\t\t\t\t\t\theader('Content-Length: '.$this->bufferlen);\n\t\t\t\t\t\theader('Content-Disposition: inline; filename=\"'.basename($name).'\";');\n\t\t\t\t\t}\n\t\t\t\t\techo $this->getBuffer();\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'D': {\n\t\t\t\t\t// Download PDF as file\n\t\t\t\t\tif (ob_get_contents()) {\n\t\t\t\t\t\t$this->Error('Some data has already been output, can\\'t send PDF file');\n\t\t\t\t\t}\n\t\t\t\t\theader('Content-Description: File Transfer');\n\t\t\t\t\tif (headers_sent()) {\n\t\t\t\t\t\t$this->Error('Some data has already been output to browser, can\\'t send PDF file');\n\t\t\t\t\t}\n\t\t\t\t\theader('Cache-Control: public, must-revalidate, max-age=0'); // HTTP/1.1\n\t\t\t\t\theader('Pragma: public');\n\t\t\t\t\theader('Expires: Sat, 26 Jul 1997 05:00:00 GMT'); // Date in the past\n\t\t\t\t\theader('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');\n\t\t\t\t\t// force download dialog\n\t\t\t\t\theader('Content-Type: application/force-download');\n\t\t\t\t\theader('Content-Type: application/octet-stream', false);\n\t\t\t\t\theader('Content-Type: application/download', false);\n\t\t\t\t\theader('Content-Type: application/pdf', false);\n\t\t\t\t\t// use the Content-Disposition header to supply a recommended filename\n\t\t\t\t\theader('Content-Disposition: attachment; filename=\"'.basename($name).'\";');\n\t\t\t\t\theader('Content-Transfer-Encoding: binary');\n\t\t\t\t\theader('Content-Length: '.$this->bufferlen);\n\t\t\t\t\techo $this->getBuffer();\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'F':\n\t\t\t\tcase 'FI':\n\t\t\t\tcase 'FD': {\n\t\t\t\t\t// Save PDF to a local file\n\t\t\t\t\tif ($this->diskcache) {\n\t\t\t\t\t\tcopy($this->buffer, $name);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$f = fopen($name, 'wb');\n\t\t\t\t\t\tif (!$f) {\n\t\t\t\t\t\t\t$this->Error('Unable to create output file: '.$name);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tfwrite($f, $this->getBuffer(), $this->bufferlen);\n\t\t\t\t\t\tfclose($f);\n\t\t\t\t\t}\n\t\t\t\t\tif ($dest == 'FI') {\n\t\t\t\t\t\t// send headers to browser\n\t\t\t\t\t\theader('Content-Type: application/pdf');\n\t\t\t\t\t\theader('Cache-Control: public, must-revalidate, max-age=0'); // HTTP/1.1\n\t\t\t\t\t\theader('Pragma: public');\n\t\t\t\t\t\theader('Expires: Sat, 26 Jul 1997 05:00:00 GMT'); // Date in the past\n\t\t\t\t\t\theader('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');\n\t\t\t\t\t\theader('Content-Length: '.filesize($name));\n\t\t\t\t\t\theader('Content-Disposition: inline; filename=\"'.basename($name).'\";');\n\t\t\t\t\t\t// send document to the browser\n\t\t\t\t\t\techo file_get_contents($name);\n\t\t\t\t\t} elseif ($dest == 'FD') {\n\t\t\t\t\t\t// send headers to browser\n\t\t\t\t\t\tif (ob_get_contents()) {\n\t\t\t\t\t\t\t$this->Error('Some data has already been output, can\\'t send PDF file');\n\t\t\t\t\t\t}\n\t\t\t\t\t\theader('Content-Description: File Transfer');\n\t\t\t\t\t\tif (headers_sent()) {\n\t\t\t\t\t\t\t$this->Error('Some data has already been output to browser, can\\'t send PDF file');\n\t\t\t\t\t\t}\n\t\t\t\t\t\theader('Cache-Control: public, must-revalidate, max-age=0'); // HTTP/1.1\n\t\t\t\t\t\theader('Pragma: public');\n\t\t\t\t\t\theader('Expires: Sat, 26 Jul 1997 05:00:00 GMT'); // Date in the past\n\t\t\t\t\t\theader('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');\n\t\t\t\t\t\t// force download dialog\n\t\t\t\t\t\theader('Content-Type: application/force-download');\n\t\t\t\t\t\theader('Content-Type: application/octet-stream', false);\n\t\t\t\t\t\theader('Content-Type: application/download', false);\n\t\t\t\t\t\theader('Content-Type: application/pdf', false);\n\t\t\t\t\t\t// use the Content-Disposition header to supply a recommended filename\n\t\t\t\t\t\theader('Content-Disposition: attachment; filename=\"'.basename($name).'\";');\n\t\t\t\t\t\theader('Content-Transfer-Encoding: binary');\n\t\t\t\t\t\theader('Content-Length: '.filesize($name));\n\t\t\t\t\t\t// send document to the browser\n\t\t\t\t\t\techo file_get_contents($name);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'S': {\n\t\t\t\t\t// Returns PDF as a string\n\t\t\t\t\treturn $this->getBuffer();\n\t\t\t\t}\n\t\t\t\tdefault: {\n\t\t\t\t\t$this->Error('Incorrect output destination: '.$dest);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn '';\n\t\t}\n\n\t\t/**\n\t\t * Unset all class variables except the following critical variables: internal_encoding, state, bufferlen, buffer and diskcache.\n\t\t * @param boolean $destroyall if true destroys all class variables, otherwise preserves critical variables.\n\t\t * @param boolean $preserve_objcopy if true preserves the objcopy variable\n\t\t * @access public\n\t\t * @since 4.5.016 (2009-02-24)\n\t\t */\n\t\tpublic function _destroy($destroyall=false, $preserve_objcopy=false) {\n\t\t\tif ($destroyall AND isset($this->diskcache) AND $this->diskcache AND (!$preserve_objcopy) AND (!$this->empty_string($this->buffer))) {\n\t\t\t\t// remove buffer file from cache\n\t\t\t\tunlink($this->buffer);\n\t\t\t}\n\t\t\tforeach (array_keys(get_object_vars($this)) as $val) {\n\t\t\t\tif ($destroyall OR (\n\t\t\t\t\t($val != 'internal_encoding')\n\t\t\t\t\tAND ($val != 'state')\n\t\t\t\t\tAND ($val != 'bufferlen')\n\t\t\t\t\tAND ($val != 'buffer')\n\t\t\t\t\tAND ($val != 'diskcache')\n\t\t\t\t\tAND ($val != 'sign')\n\t\t\t\t\tAND ($val != 'signature_data')\n\t\t\t\t\tAND ($val != 'signature_max_length')\n\t\t\t\t\tAND ($val != 'byterange_string')\n\t\t\t\t\t)) {\n\t\t\t\t\tif ((!$preserve_objcopy OR ($val != 'objcopy')) AND isset($this->$val)) {\n\t\t\t\t\t\tunset($this->$val);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Check for locale-related bug\n\t\t * @access protected\n\t\t */\n\t\tprotected function _dochecks() {\n\t\t\t//Check for locale-related bug\n\t\t\tif (1.1 == 1) {\n\t\t\t\t$this->Error('Don\\'t alter the locale before including class file');\n\t\t\t}\n\t\t\t//Check for decimal separator\n\t\t\tif (sprintf('%.1F', 1.0) != '1.0') {\n\t\t\t\tsetlocale(LC_NUMERIC, 'C');\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Return fonts path\n\t\t * @return string\n\t\t * @access protected\n\t\t */\n\t\tprotected function _getfontpath() {\n\t\t\tif (!defined('K_PATH_FONTS') AND is_dir(dirname(__FILE__).'/fonts')) {\n\t\t\t\tdefine('K_PATH_FONTS', dirname(__FILE__).'/fonts/');\n\t\t\t}\n\t\t\treturn defined('K_PATH_FONTS') ? K_PATH_FONTS : '';\n\t\t}\n\n\t\t/**\n\t\t * Output pages.\n\t\t * @access protected\n\t\t */\n\t\tprotected function _putpages() {\n\t\t\t$nb = $this->numpages;\n\t\t\tif (!empty($this->AliasNbPages)) {\n\t\t\t\t$nbs = $this->formatPageNumber($nb);\n\t\t\t\t$nbu = $this->UTF8ToUTF16BE($nbs, false); // replacement for unicode font\n\t\t\t\t$alias_a = $this->_escape($this->AliasNbPages);\n\t\t\t\t$alias_au = $this->_escape('{'.$this->AliasNbPages.'}');\n\t\t\t\tif ($this->isunicode) {\n\t\t\t\t\t$alias_b = $this->_escape($this->UTF8ToLatin1($this->AliasNbPages));\n\t\t\t\t\t$alias_bu = $this->_escape($this->UTF8ToLatin1('{'.$this->AliasNbPages.'}'));\n\t\t\t\t\t$alias_c = $this->_escape($this->utf8StrRev($this->AliasNbPages, false, $this->tmprtl));\n\t\t\t\t\t$alias_cu = $this->_escape($this->utf8StrRev('{'.$this->AliasNbPages.'}', false, $this->tmprtl));\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (!empty($this->AliasNumPage)) {\n\t\t\t\t$alias_pa = $this->_escape($this->AliasNumPage);\n\t\t\t\t$alias_pau = $this->_escape('{'.$this->AliasNumPage.'}');\n\t\t\t\tif ($this->isunicode) {\n\t\t\t\t\t$alias_pb = $this->_escape($this->UTF8ToLatin1($this->AliasNumPage));\n\t\t\t\t\t$alias_pbu = $this->_escape($this->UTF8ToLatin1('{'.$this->AliasNumPage.'}'));\n\t\t\t\t\t$alias_pc = $this->_escape($this->utf8StrRev($this->AliasNumPage, false, $this->tmprtl));\n\t\t\t\t\t$alias_pcu = $this->_escape($this->utf8StrRev('{'.$this->AliasNumPage.'}', false, $this->tmprtl));\n\t\t\t\t}\n\t\t\t}\n\t\t\t$pagegroupnum = 0;\n\t\t\t$filter = ($this->compress) ? '/Filter /FlateDecode ' : '';\n\t\t\tfor ($n=1; $n <= $nb; ++$n) {\n\t\t\t\t$temppage = $this->getPageBuffer($n);\n\t\t\t\tif (!empty($this->pagegroups)) {\n\t\t\t\t\tif(isset($this->newpagegroup[$n])) {\n\t\t\t\t\t\t$pagegroupnum = 0;\n\t\t\t\t\t}\n\t\t\t\t\t++$pagegroupnum;\n\t\t\t\t\tforeach ($this->pagegroups as $k => $v) {\n\t\t\t\t\t\t// replace total pages group numbers\n\t\t\t\t\t\t$vs = $this->formatPageNumber($v);\n\t\t\t\t\t\t$vu = $this->UTF8ToUTF16BE($vs, false);\n\t\t\t\t\t\t$alias_ga = $this->_escape($k);\n\t\t\t\t\t\t$alias_gau = $this->_escape('{'.$k.'}');\n\t\t\t\t\t\tif ($this->isunicode) {\n\t\t\t\t\t\t\t$alias_gb = $this->_escape($this->UTF8ToLatin1($k));\n\t\t\t\t\t\t\t$alias_gbu = $this->_escape($this->UTF8ToLatin1('{'.$k.'}'));\n\t\t\t\t\t\t\t$alias_gc = $this->_escape($this->utf8StrRev($k, false, $this->tmprtl));\n\t\t\t\t\t\t\t$alias_gcu = $this->_escape($this->utf8StrRev('{'.$k.'}', false, $this->tmprtl));\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$temppage = str_replace($alias_gau, $vu, $temppage);\n\t\t\t\t\t\tif ($this->isunicode) {\n\t\t\t\t\t\t\t$temppage = str_replace($alias_gbu, $vu, $temppage);\n\t\t\t\t\t\t\t$temppage = str_replace($alias_gcu, $vu, $temppage);\n\t\t\t\t\t\t\t$temppage = str_replace($alias_gb, $vs, $temppage);\n\t\t\t\t\t\t\t$temppage = str_replace($alias_gc, $vs, $temppage);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$temppage = str_replace($alias_ga, $vs, $temppage);\n\t\t\t\t\t\t// replace page group numbers\n\t\t\t\t\t\t$pvs = $this->formatPageNumber($pagegroupnum);\n\t\t\t\t\t\t$pvu = $this->UTF8ToUTF16BE($pvs, false);\n\t\t\t\t\t\t$pk = str_replace('{nb', '{pnb', $k);\n\t\t\t\t\t\t$alias_pga = $this->_escape($pk);\n\t\t\t\t\t\t$alias_pgau = $this->_escape('{'.$pk.'}');\n\t\t\t\t\t\tif ($this->isunicode) {\n\t\t\t\t\t\t\t$alias_pgb = $this->_escape($this->UTF8ToLatin1($pk));\n\t\t\t\t\t\t\t$alias_pgbu = $this->_escape($this->UTF8ToLatin1('{'.$pk.'}'));\n\t\t\t\t\t\t\t$alias_pgc = $this->_escape($this->utf8StrRev($pk, false, $this->tmprtl));\n\t\t\t\t\t\t\t$alias_pgcu = $this->_escape($this->utf8StrRev('{'.$pk.'}', false, $this->tmprtl));\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$temppage = str_replace($alias_pgau, $pvu, $temppage);\n\t\t\t\t\t\tif ($this->isunicode) {\n\t\t\t\t\t\t\t$temppage = str_replace($alias_pgbu, $pvu, $temppage);\n\t\t\t\t\t\t\t$temppage = str_replace($alias_pgcu, $pvu, $temppage);\n\t\t\t\t\t\t\t$temppage = str_replace($alias_pgb, $pvs, $temppage);\n\t\t\t\t\t\t\t$temppage = str_replace($alias_pgc, $pvs, $temppage);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$temppage = str_replace($alias_pga, $pvs, $temppage);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (!empty($this->AliasNbPages)) {\n\t\t\t\t\t// replace total pages number\n\t\t\t\t\t$temppage = str_replace($alias_au, $nbu, $temppage);\n\t\t\t\t\tif ($this->isunicode) {\n\t\t\t\t\t\t$temppage = str_replace($alias_bu, $nbu, $temppage);\n\t\t\t\t\t\t$temppage = str_replace($alias_cu, $nbu, $temppage);\n\t\t\t\t\t\t$temppage = str_replace($alias_b, $nbs, $temppage);\n\t\t\t\t\t\t$temppage = str_replace($alias_c, $nbs, $temppage);\n\t\t\t\t\t}\n\t\t\t\t\t$temppage = str_replace($alias_a, $nbs, $temppage);\n\t\t\t\t}\n\t\t\t\tif (!empty($this->AliasNumPage)) {\n\t\t\t\t\t// replace page number\n\t\t\t\t\t$pnbs = $this->formatPageNumber($n);\n\t\t\t\t\t$pnbu = $this->UTF8ToUTF16BE($pnbs, false); // replacement for unicode font\n\t\t\t\t\t$temppage = str_replace($alias_pau, $pnbu, $temppage);\n\t\t\t\t\tif ($this->isunicode) {\n\t\t\t\t\t\t$temppage = str_replace($alias_pbu, $pnbu, $temppage);\n\t\t\t\t\t\t$temppage = str_replace($alias_pcu, $pnbu, $temppage);\n\t\t\t\t\t\t$temppage = str_replace($alias_pb, $pnbs, $temppage);\n\t\t\t\t\t\t$temppage = str_replace($alias_pc, $pnbs, $temppage);\n\t\t\t\t\t}\n\t\t\t\t\t$temppage = str_replace($alias_pa, $pnbs, $temppage);\n\t\t\t\t}\n\t\t\t\t$temppage = str_replace($this->epsmarker, '', $temppage);\n\t\t\t\t//Page\n\t\t\t\t$this->page_obj_id[$n] = $this->_newobj();\n\t\t\t\t$out = '<</Type /Page';\n\t\t\t\t$out .= ' /Parent 1 0 R';\n\t\t\t\t$out .= ' '.sprintf('/MediaBox [0 0 %.2F %.2F]', $this->pagedim[$n]['w'], $this->pagedim[$n]['h']);\n\t\t\t\t$out .= ' /Group << /Type /Group /S /Transparency /CS /DeviceRGB >>';\n\t\t\t\t$out .= ' /Resources 2 0 R';\n\t\t\t\t$this->_out($out);\n\t\t\t\t$this->_putannotsrefs($n);\n\t\t\t\t$this->_out('/Contents '.($this->n + 1).' 0 R>> endobj');\n\t\t\t\t//Page content\n\t\t\t\t$p = ($this->compress) ? gzcompress($temppage) : $temppage;\n\t\t\t\t$this->_newobj();\n\t\t\t\t$this->_out('<<'.$filter.'/Length '.strlen($p).'>> '.$this->_getstream($p).' endobj');\n\t\t\t\tif ($this->diskcache) {\n\t\t\t\t\t// remove temporary files\n\t\t\t\t\tunlink($this->pages[$n]);\n\t\t\t\t}\n\t\t\t}\n\t\t\t//Pages root\n\t\t\t$this->offsets[1] = $this->bufferlen;\n\t\t\t$out = '1 0 obj <</Type /Pages  /Kids [';\n\t\t\tforeach($this->page_obj_id as $page_obj) {\n\t\t\t\t$out .= ' '.$page_obj.' 0 R';\n\t\t\t}\n\t\t\t$out .= ' ] /Count '.$nb.' >>  endobj';\n\t\t\t$this->_out($out);\n\t\t}\n\n\t\t/**\n\t\t * Output references to page annotations\n\t\t * @param int $n page number\n\t\t * @access protected\n\t\t * @author Nicola Asuni\n\t\t * @since 4.7.000 (2008-08-29)\n\t\t */\n\t\tprotected function _putannotsrefs($n) {\n\t\t\tif (!(isset($this->PageAnnots[$n]) OR ($this->sign AND isset($this->signature_data['cert_type'])))) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t$out = '/Annots [';\n\t\t\tif (isset($this->PageAnnots[$n])) {\n\t\t\t\t$num_annots = count($this->PageAnnots[$n]);\n\t\t\t\tfor ($i = 0; $i < $num_annots; ++$i) {\n\t\t\t\t\t++$this->curr_annot_obj_id;\n\t\t\t\t\tif (!in_array($this->curr_annot_obj_id, $this->radio_groups)) {\n\t\t\t\t\t\t$out .= ' '.$this->curr_annot_obj_id.' 0 R';\n\t\t\t\t\t} else {\n\t\t\t\t\t\t++$num_annots;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (($n==1) AND $this->sign AND isset($this->signature_data['cert_type'])) {\n\t\t\t\t// set reference for signature object\n\t\t\t\t$out .= ' '.$this->sig_annot_ref;\n\t\t\t}\n\t\t\t$out .= ' ]';\n\t\t\t$this->_out($out);\n\t\t}\n\n\t\t/**\n\t\t * Output annotations objects for all pages.\n\t\t * !!! THIS METHOD IS NOT YET COMPLETED !!!\n\t\t * See section 12.5 of PDF 32000_2008 reference.\n\t\t * @access protected\n\t\t * @author Nicola Asuni\n\t\t * @since 4.0.018 (2008-08-06)\n\t\t */\n\t\tprotected function _putannotsobjs() {\n\t\t\t// reset object counter\n\t\t\t$this->annot_obj_id = $this->annots_start_obj_id;\n\t\t\tfor ($n=1; $n <= $this->numpages; ++$n) {\n\t\t\t\tif (isset($this->PageAnnots[$n])) {\n\t\t\t\t\t// set page annotations\n\t\t\t\t\tforeach ($this->PageAnnots[$n] as $key => $pl) {\n\t\t\t\t\t\t// create annotation object for grouping radiobuttons\n\t\t\t\t\t\tif (isset($this->radiobutton_groups[$n][$pl['txt']]) AND is_array($this->radiobutton_groups[$n][$pl['txt']])) {\n\t\t\t\t\t\t\t$annots = '<<';\n\t\t\t\t\t\t\t$annots .= ' /Type /Annot';\n\t\t\t\t\t\t\t$annots .= ' /Subtype /Widget';\n\t\t\t\t\t\t\t$annots .= ' /T '.$this->_dataannobjstring($pl['txt']);\n\t\t\t\t\t\t\t$annots .= ' /FT /Btn';\n\t\t\t\t\t\t\t$annots .= ' /Ff 49152';\n\t\t\t\t\t\t\t$annots .= ' /Kids [';\n\t\t\t\t\t\t\tforeach ($this->radiobutton_groups[$n][$pl['txt']] as $data) {\n\t\t\t\t\t\t\t\t$annots .= ' '.$data['kid'].' 0 R';\n\t\t\t\t\t\t\t\tif ($data['def'] !== 'Off') {\n\t\t\t\t\t\t\t\t\t$defval = $data['def'];\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$annots .= ' ]';\n\t\t\t\t\t\t\tif (isset($defval)) {\n\t\t\t\t\t\t\t\t$annots .= ' /V /'.$defval;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$annots .= ' >>';\n\t\t\t\t\t\t\t++$this->annot_obj_id;\n\t\t\t\t\t\t\t$this->offsets[$this->annot_obj_id] = $this->bufferlen;\n\t\t\t\t\t\t\t$this->_out($this->annot_obj_id.' 0 obj '.$annots.' endobj');\n\t\t\t\t\t\t\t$this->form_obj_id[] = $this->annot_obj_id;\n\t\t\t\t\t\t\t// store object id to be used on Parent entry of Kids\n\t\t\t\t\t\t\t$this->radiobutton_groups[$n][$pl['txt']] = $this->annot_obj_id;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$formfield = false;\n\t\t\t\t\t\t$pl['opt'] = array_change_key_case($pl['opt'], CASE_LOWER);\n\t\t\t\t\t\t$a = $pl['x'] * $this->k;\n\t\t\t\t\t\t$b = $this->pagedim[$n]['h'] - (($pl['y'] + $pl['h'])  * $this->k);\n\t\t\t\t\t\t$c = $pl['w'] * $this->k;\n\t\t\t\t\t\t$d = $pl['h'] * $this->k;\n\t\t\t\t\t\t$rect = sprintf('%.2F %.2F %.2F %.2F', $a, $b, $a+$c, $b+$d);\n\t\t\t\t\t\t// create new annotation object\n\t\t\t\t\t\t$annots = '<</Type /Annot';\n\t\t\t\t\t\t$annots .= ' /Subtype /'.$pl['opt']['subtype'];\n\t\t\t\t\t\t$annots .= ' /Rect ['.$rect.']';\n\t\t\t\t\t\t$ft = array('Btn', 'Tx', 'Ch', 'Sig');\n\t\t\t\t\t\tif (isset($pl['opt']['ft']) AND in_array($pl['opt']['ft'], $ft)) {\n\t\t\t\t\t\t\t$annots .= ' /FT /'.$pl['opt']['ft'];\n\t\t\t\t\t\t\t$formfield = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$annots .= ' /Contents '.$this->_textannobjstring($pl['txt']);\n\t\t\t\t\t\t$annots .= ' /P '.$this->page_obj_id[$n].' 0 R';\n\t\t\t\t\t\t$annots .= ' /NM '.$this->_dataannobjstring(sprintf('%04u-%04u', $n, $key));\n\t\t\t\t\t\t$annots .= ' /M '.$this->_datestring();\n\t\t\t\t\t\tif (isset($pl['opt']['f'])) {\n\t\t\t\t\t\t\t$val = 0;\n\t\t\t\t\t\t\tif (is_array($pl['opt']['f'])) {\n\t\t\t\t\t\t\t\tforeach ($pl['opt']['f'] as $f) {\n\t\t\t\t\t\t\t\t\tswitch (strtolower($f)) {\n\t\t\t\t\t\t\t\t\t\tcase 'invisible': {\n\t\t\t\t\t\t\t\t\t\t\t$val += 1 << 0;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tcase 'hidden': {\n\t\t\t\t\t\t\t\t\t\t\t$val += 1 << 1;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tcase 'print': {\n\t\t\t\t\t\t\t\t\t\t\t$val += 1 << 2;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tcase 'nozoom': {\n\t\t\t\t\t\t\t\t\t\t\t$val += 1 << 3;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tcase 'norotate': {\n\t\t\t\t\t\t\t\t\t\t\t$val += 1 << 4;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tcase 'noview': {\n\t\t\t\t\t\t\t\t\t\t\t$val += 1 << 5;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tcase 'readonly': {\n\t\t\t\t\t\t\t\t\t\t\t$val += 1 << 6;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tcase 'locked': {\n\t\t\t\t\t\t\t\t\t\t\t$val += 1 << 8;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tcase 'togglenoview': {\n\t\t\t\t\t\t\t\t\t\t\t$val += 1 << 9;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tcase 'lockedcontents': {\n\t\t\t\t\t\t\t\t\t\t\t$val += 1 << 10;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tdefault: {\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$val = intval($pl['opt']['f']);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$annots .= ' /F '.intval($val);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (isset($pl['opt']['as']) AND is_string($pl['opt']['as'])) {\n\t\t\t\t\t\t\t$annots .= ' /AS /'.$pl['opt']['as'];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (isset($pl['opt']['ap'])) {\n\t\t\t\t\t\t\t// appearance stream\n\t\t\t\t\t\t\t$annots .= ' /AP <<';\n\t\t\t\t\t\t\tif (is_array($pl['opt']['ap'])) {\n\t\t\t\t\t\t\t\tforeach ($pl['opt']['ap'] as $apmode => $apdef) {\n\t\t\t\t\t\t\t\t\t// $apmode can be: n = normal; r = rollover; d = down;\n\t\t\t\t\t\t\t\t\t$annots .= ' /'.strtoupper($apmode);\n\t\t\t\t\t\t\t\t\tif (is_array($apdef)) {\n\t\t\t\t\t\t\t\t\t\t$annots .= ' <<';\n\t\t\t\t\t\t\t\t\t\tforeach ($apdef as $apstate => $stream) {\n\t\t\t\t\t\t\t\t\t\t\t// reference to XObject that define the appearance for this mode-state\n\t\t\t\t\t\t\t\t\t\t\t$apsobjid = $this->_putAPXObject($c, $d, $stream);\n\t\t\t\t\t\t\t\t\t\t\t$annots .= ' /'.$apstate.' '.$apsobjid.' 0 R';\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t$annots .= ' >>';\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t// reference to XObject that define the appearance for this mode\n\t\t\t\t\t\t\t\t\t\t$apsobjid = $this->_putAPXObject($c, $d, $apdef);\n\t\t\t\t\t\t\t\t\t\t$annots .= ' '.$apsobjid.' 0 R';\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$annots .= $pl['opt']['ap'];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$annots .= ' >>';\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (isset($pl['opt']['bs']) AND (is_array($pl['opt']['bs']))) {\n\t\t\t\t\t\t\t$annots .= ' /BS <<';\n\t\t\t\t\t\t\t$annots .= ' /Type /Border';\n\t\t\t\t\t\t\tif (isset($pl['opt']['bs']['w'])) {\n\t\t\t\t\t\t\t\t$annots .= ' /W '.intval($pl['opt']['bs']['w']);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$bstyles = array('S', 'D', 'B', 'I', 'U');\n\t\t\t\t\t\t\tif (isset($pl['opt']['bs']['s']) AND in_array($pl['opt']['bs']['s'], $bstyles)) {\n\t\t\t\t\t\t\t\t$annots .= ' /S /'.$pl['opt']['bs']['s'];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (isset($pl['opt']['bs']['d']) AND (is_array($pl['opt']['bs']['d']))) {\n\t\t\t\t\t\t\t\t$annots .= ' /D [';\n\t\t\t\t\t\t\t\tforeach ($pl['opt']['bs']['d'] as $cord) {\n\t\t\t\t\t\t\t\t\t$annots .= ' '.intval($cord);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$annots .= ']';\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$annots .= ' >>';\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$annots .= ' /Border [';\n\t\t\t\t\t\t\tif (isset($pl['opt']['border']) AND (count($pl['opt']['border']) >= 3)) {\n\t\t\t\t\t\t\t\t$annots .= intval($pl['opt']['border'][0]).' ';\n\t\t\t\t\t\t\t\t$annots .= intval($pl['opt']['border'][1]).' ';\n\t\t\t\t\t\t\t\t$annots .= intval($pl['opt']['border'][2]);\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['border'][3]) AND is_array($pl['opt']['border'][3])) {\n\t\t\t\t\t\t\t\t\t$annots .= ' [';\n\t\t\t\t\t\t\t\t\tforeach ($pl['opt']['border'][3] as $dash) {\n\t\t\t\t\t\t\t\t\t\t$annots .= intval($dash).' ';\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t$annots .= ']';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$annots .= '0 0 0';\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$annots .= ']';\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (isset($pl['opt']['be']) AND (is_array($pl['opt']['be']))) {\n\t\t\t\t\t\t\t$annots .= ' /BE <<';\n\t\t\t\t\t\t\t$bstyles = array('S', 'C');\n\t\t\t\t\t\t\tif (isset($pl['opt']['be']['s']) AND in_array($pl['opt']['be']['s'], $markups)) {\n\t\t\t\t\t\t\t\t$annots .= ' /S /'.$pl['opt']['bs']['s'];\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$annots .= ' /S /S';\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (isset($pl['opt']['be']['i']) AND ($pl['opt']['be']['i'] >= 0) AND ($pl['opt']['be']['i'] <= 2)) {\n\t\t\t\t\t\t\t\t$annots .= ' /I '.sprintf(' %.4F', $pl['opt']['be']['i']);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$annots .= '>>';\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (isset($pl['opt']['c']) AND (is_array($pl['opt']['c'])) AND !empty($pl['opt']['c'])) {\n\t\t\t\t\t\t\t$annots .= ' /C [';\n\t\t\t\t\t\t\tforeach ($pl['opt']['c'] as $col) {\n\t\t\t\t\t\t\t\t$col = intval($col);\n\t\t\t\t\t\t\t\t$color = $col <= 0 ? 0 : ($col >= 255 ? 1 : $col / 255);\n\t\t\t\t\t\t\t\t$annots .= sprintf(' %.4F', $color);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$annots .= ']';\n\t\t\t\t\t\t}\n\t\t\t\t\t\t//$annots .= ' /StructParent ';\n\t\t\t\t\t\t//$annots .= ' /OC ';\n\t\t\t\t\t\t$markups = array('text', 'freetext', 'line', 'square', 'circle', 'polygon', 'polyline', 'highlight', 'underline', 'squiggly', 'strikeout', 'stamp', 'caret', 'ink', 'fileattachment', 'sound');\n\t\t\t\t\t\tif (in_array(strtolower($pl['opt']['subtype']), $markups)) {\n\t\t\t\t\t\t\t// this is a markup type\n\t\t\t\t\t\t\tif (isset($pl['opt']['t']) AND is_string($pl['opt']['t'])) {\n\t\t\t\t\t\t\t\t$annots .= ' /T '.$this->_textannobjstring($pl['opt']['t']);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t//$annots .= ' /Popup ';\n\t\t\t\t\t\t\tif (isset($pl['opt']['ca'])) {\n\t\t\t\t\t\t\t\t$annots .= ' /CA '.sprintf('%.4F', floatval($pl['opt']['ca']));\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (isset($pl['opt']['rc'])) {\n\t\t\t\t\t\t\t\t$annots .= ' /RC '.$this->_textannobjstring($pl['opt']['rc']);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$annots .= ' /CreationDate '.$this->_datestring();\n\t\t\t\t\t\t\t//$annots .= ' /IRT ';\n\t\t\t\t\t\t\tif (isset($pl['opt']['subj'])) {\n\t\t\t\t\t\t\t\t$annots .= ' /Subj '.$this->_textannobjstring($pl['opt']['subj']);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t//$annots .= ' /RT ';\n\t\t\t\t\t\t\t//$annots .= ' /IT ';\n\t\t\t\t\t\t\t//$annots .= ' /ExData ';\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$lineendings = array('Square', 'Circle', 'Diamond', 'OpenArrow', 'ClosedArrow', 'None', 'Butt', 'ROpenArrow', 'RClosedArrow', 'Slash');\n\t\t\t\t\t\tswitch (strtolower($pl['opt']['subtype'])) {\n\t\t\t\t\t\t\tcase 'text': {\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['open'])) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /Open '. (strtolower($pl['opt']['open']) == 'true' ? 'true' : 'false');\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$iconsapp = array('Comment', 'Help', 'Insert', 'Key', 'NewParagraph', 'Note', 'Paragraph');\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['name']) AND in_array($pl['opt']['name'], $iconsapp)) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /Name /'.$pl['opt']['name'];\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t$annots .= ' /Name /Note';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$statemodels = array('Marked', 'Review');\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['statemodel']) AND in_array($pl['opt']['statemodel'], $statemodels)) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /StateModel /'.$pl['opt']['statemodel'];\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t$pl['opt']['statemodel'] = 'Marked';\n\t\t\t\t\t\t\t\t\t$annots .= ' /StateModel /'.$pl['opt']['statemodel'];\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ($pl['opt']['statemodel'] == 'Marked') {\n\t\t\t\t\t\t\t\t\t$states = array('Accepted', 'Unmarked');\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t$states = array('Accepted', 'Rejected', 'Cancelled', 'Completed', 'None');\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['state']) AND in_array($pl['opt']['state'], $states)) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /State /'.$pl['opt']['state'];\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tif ($pl['opt']['statemodel'] == 'Marked') {\n\t\t\t\t\t\t\t\t\t\t$annots .= ' /State /Unmarked';\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t$annots .= ' /State /None';\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'link': {\n\t\t\t\t\t\t\t\tif(is_string($pl['txt'])) {\n\t\t\t\t\t\t\t\t\t// external URI link\n\t\t\t\t\t\t\t\t\t$annots .= ' /A <</S /URI /URI '.$this->_dataannobjstring($this->unhtmlentities($pl['txt'])).'>>';\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t// internal link\n\t\t\t\t\t\t\t\t\t$l = $this->links[$pl['txt']];\n\t\t\t\t\t\t\t\t\t$annots .= sprintf(' /Dest [%d 0 R /XYZ 0 %.2F null]', (1 + (2 * $l[0])), ($this->pagedim[$l[0]]['h'] - ($l[1] * $this->k)));\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$hmodes = array('N', 'I', 'O', 'P');\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['h']) AND in_array($pl['opt']['h'], $hmodes)) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /H /'.$pl['opt']['h'];\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t$annots .= ' /H /I';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t//$annots .= ' /PA ';\n\t\t\t\t\t\t\t\t//$annots .= ' /Quadpoints ';\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'freetext': {\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['da']) AND !empty($pl['opt']['da'])) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /DA ('.$pl['opt']['da'].')';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['q']) AND ($pl['opt']['q'] >= 0) AND ($pl['opt']['q'] <= 2)) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /Q '.intval($pl['opt']['q']);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['rc'])) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /RC '.$this->_textannobjstring($pl['opt']['rc']);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['ds'])) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /DS '.$this->_textannobjstring($pl['opt']['ds']);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['cl']) AND is_array($pl['opt']['cl'])) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /CL [';\n\t\t\t\t\t\t\t\t\tforeach ($pl['opt']['cl'] as $cl) {\n\t\t\t\t\t\t\t\t\t\t$annots .= sprintf('%.4F ', $cl * $this->k);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t$annots .= ']';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$tfit = array('FreeText', 'FreeTextCallout', 'FreeTextTypeWriter');\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['it']) AND in_array($pl['opt']['it'], $tfit)) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /IT '.$pl['opt']['it'];\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['rd']) AND is_array($pl['opt']['rd'])) {\n\t\t\t\t\t\t\t\t\t$l = $pl['opt']['rd'][0] * $this->k;\n\t\t\t\t\t\t\t\t\t$r = $pl['opt']['rd'][1] * $this->k;\n\t\t\t\t\t\t\t\t\t$t = $pl['opt']['rd'][2] * $this->k;\n\t\t\t\t\t\t\t\t\t$b = $pl['opt']['rd'][3] * $this->k;\n\t\t\t\t\t\t\t\t\t$annots .= ' /RD ['.sprintf('%.2F %.2F %.2F %.2F', $l, $r, $t, $b).']';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['le']) AND in_array($pl['opt']['le'], $lineendings)) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /LE /'.$pl['opt']['le'];\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'line': {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'square': {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'circle': {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'polygon': {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'polyline': {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'highlight': {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'underline': {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'squiggly': {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'strikeout': {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'stamp': {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'caret': {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'ink': {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'popup': {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'fileattachment': {\n\t\t\t\t\t\t\t\tif (!isset($pl['opt']['fs'])) {\n\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$filename = basename($pl['opt']['fs']);\n\t\t\t\t\t\t\t\tif (isset($this->embeddedfiles[$filename]['n'])) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /FS <</Type /Filespec /F '.$this->_dataannobjstring($filename).' /EF <</F '.$this->embeddedfiles[$filename]['n'].' 0 R>> >>';\n\t\t\t\t\t\t\t\t\t$iconsapp = array('Graph', 'Paperclip', 'PushPin', 'Tag');\n\t\t\t\t\t\t\t\t\tif (isset($pl['opt']['name']) AND in_array($pl['opt']['name'], $iconsapp)) {\n\t\t\t\t\t\t\t\t\t\t$annots .= ' /Name /'.$pl['opt']['name'];\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t$annots .= ' /Name /PushPin';\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'sound': {\n\t\t\t\t\t\t\t\tif (!isset($pl['opt']['fs'])) {\n\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$filename = basename($pl['opt']['fs']);\n\t\t\t\t\t\t\t\tif (isset($this->embeddedfiles[$filename]['n'])) {\n\t\t\t\t\t\t\t\t\t// ... TO BE COMPLETED ...\n\t\t\t\t\t\t\t\t\t// /R /C /B /E /CO /CP\n\t\t\t\t\t\t\t\t\t$annots .= ' /Sound <</Type /Filespec /F '.$this->_dataannobjstring($filename).' /EF <</F '.$this->embeddedfiles[$filename]['n'].' 0 R>> >>';\n\t\t\t\t\t\t\t\t\t$iconsapp = array('Speaker', 'Mic');\n\t\t\t\t\t\t\t\t\tif (isset($pl['opt']['name']) AND in_array($pl['opt']['name'], $iconsapp)) {\n\t\t\t\t\t\t\t\t\t\t$annots .= ' /Name /'.$pl['opt']['name'];\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t$annots .= ' /Name /Speaker';\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'movie': {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'widget': {\n\t\t\t\t\t\t\t\t$hmode = array('N', 'I', 'O', 'P', 'T');\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['h']) AND in_array($pl['opt']['h'], $hmode)) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /H /'.$pl['opt']['h'];\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t \tif (isset($pl['opt']['mk']) AND (is_array($pl['opt']['mk'])) AND !empty($pl['opt']['mk'])) {\n\t\t\t\t\t\t\t \t\t$annots .= ' /MK <<';\n\t\t\t\t\t\t\t \t\tif (isset($pl['opt']['mk']['r'])) {\n\t\t\t\t\t\t\t \t\t\t$annots .= ' /R '.$pl['opt']['mk']['r'];\n\t\t\t\t\t\t\t \t\t}\n\t\t\t\t\t\t\t \t\tif (isset($pl['opt']['mk']['bc']) AND (is_array($pl['opt']['mk']['bc']))) {\n\t\t\t\t\t\t\t \t\t\t$annots .= ' /BC [';\n\t\t\t\t\t\t\t \t\t\tforeach($pl['opt']['mk']['bc'] AS $col) {\n\t\t\t\t\t\t\t \t\t\t\t$col = intval($col);\n\t\t\t\t\t\t\t\t\t\t\t$color = $col <= 0 ? 0 : ($col >= 255 ? 1 : $col / 255);\n\t\t\t\t\t\t\t \t\t\t\t$annots .= sprintf(' %.2F', $color);\n\t\t\t\t\t\t\t \t\t\t}\n\t\t\t\t\t\t\t \t\t\t$annots .= ']';\n\t\t\t\t\t\t\t \t\t}\n\t\t\t\t\t\t\t \t\tif (isset($pl['opt']['mk']['bg']) AND (is_array($pl['opt']['mk']['bg']))) {\n\t\t\t\t\t\t\t \t\t\t$annots .= ' /BG [';\n\t\t\t\t\t\t\t \t\t\tforeach($pl['opt']['mk']['bg'] AS $col) {\n\t\t\t\t\t\t\t \t\t\t\t$col = intval($col);\n\t\t\t\t\t\t\t\t\t\t\t$color = $col <= 0 ? 0 : ($col >= 255 ? 1 : $col / 255);\n\t\t\t\t\t\t\t \t\t\t\t$annots .= sprintf(' %.2F', $color);\n\t\t\t\t\t\t\t \t\t\t}\n\t\t\t\t\t\t\t \t\t\t$annots .= ']';\n\t\t\t\t\t\t\t \t\t}\n\t\t\t\t\t\t\t \t\tif (isset($pl['opt']['mk']['ca'])) {\n\t\t\t\t\t\t\t \t\t\t$annots .= ' /CA '.$pl['opt']['mk']['ca'].'';\n\t\t\t\t\t\t\t \t\t}\n\t\t\t\t\t\t\t \t\tif (isset($pl['opt']['mk']['rc'])) {\n\t\t\t\t\t\t\t \t\t\t$annots .= ' /RC '.$pl['opt']['mk']['ca'].'';\n\t\t\t\t\t\t\t \t\t}\n\t\t\t\t\t\t\t \t\tif (isset($pl['opt']['mk']['ac'])) {\n\t\t\t\t\t\t\t \t\t\t$annots .= ' /AC '.$pl['opt']['mk']['ca'].'';\n\t\t\t\t\t\t\t \t\t}\n\t\t\t\t\t\t\t \t\tif (isset($pl['opt']['mk']['i'])) {\n\t\t\t\t\t\t\t \t\t\t$info = $this->getImageBuffer($pl['opt']['mk']['i']);\n\t\t\t\t\t\t\t \t\t\tif ($info !== false) {\n\t\t\t\t\t\t\t \t\t\t\t$annots .= ' /I '.$info['n'].' 0 R';\n\t\t\t\t\t\t\t \t\t\t}\n\t\t\t\t\t\t\t \t\t}\n\t\t\t\t\t\t\t \t\tif (isset($pl['opt']['mk']['ri'])) {\n\t\t\t\t\t\t\t \t\t\t$info = $this->getImageBuffer($pl['opt']['mk']['ri']);\n\t\t\t\t\t\t\t \t\t\tif ($info !== false) {\n\t\t\t\t\t\t\t \t\t\t\t$annots .= ' /RI '.$info['n'].' 0 R';\n\t\t\t\t\t\t\t \t\t\t}\n\t\t\t\t\t\t\t \t\t}\n\t\t\t\t\t\t\t \t\tif (isset($pl['opt']['mk']['ix'])) {\n\t\t\t\t\t\t\t \t\t\t$info = $this->getImageBuffer($pl['opt']['mk']['ix']);\n\t\t\t\t\t\t\t \t\t\tif ($info !== false) {\n\t\t\t\t\t\t\t \t\t\t\t$annots .= ' /IX '.$info['n'].' 0 R';\n\t\t\t\t\t\t\t \t\t\t}\n\t\t\t\t\t\t\t \t\t}\n\t\t\t\t\t\t\t \t\tif (isset($pl['opt']['mk']['if']) AND (is_array($pl['opt']['mk']['if'])) AND !empty($pl['opt']['mk']['if'])) {\n\t\t\t\t\t\t\t \t\t\t$annots .= ' /IF <<';\n\t\t\t\t\t\t\t \t\t\t$if_sw = array('A', 'B', 'S', 'N');\n\t\t\t\t\t\t\t\t\t\tif (isset($pl['opt']['mk']['if']['sw']) AND in_array($pl['opt']['mk']['if']['sw'], $if_sw)) {\n\t\t\t\t\t\t\t\t\t\t\t$annots .= ' /SW /'.$pl['opt']['mk']['if']['sw'];\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t \t\t\t$if_s = array('A', 'P');\n\t\t\t\t\t\t\t\t\t\tif (isset($pl['opt']['mk']['if']['s']) AND in_array($pl['opt']['mk']['if']['s'], $if_s)) {\n\t\t\t\t\t\t\t\t\t\t\t$annots .= ' /S /'.$pl['opt']['mk']['if']['s'];\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tif (isset($pl['opt']['mk']['if']['a']) AND (is_array($pl['opt']['mk']['if']['a'])) AND !empty($pl['opt']['mk']['if']['a'])) {\n\t\t\t\t\t\t\t\t\t\t\t$annots .= sprintf(' /A [%.2F  %.2F]', $pl['opt']['mk']['if']['a'][0], $pl['opt']['mk']['if']['a'][1]);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tif (isset($pl['opt']['mk']['if']['fb']) AND ($pl['opt']['mk']['if']['fb'])) {\n\t\t\t\t\t\t\t\t\t\t\t$annots .= ' /FB true';\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t \t\t\t$annots .= '>>';\n\t\t\t\t\t\t\t \t\t}\n\t\t\t\t\t\t\t \t\tif (isset($pl['opt']['mk']['tp']) AND ($pl['opt']['mk']['tp'] >= 0) AND ($pl['opt']['mk']['tp'] <= 6)) {\n\t\t\t\t\t\t\t \t\t\t$annots .= ' /TP '.intval($pl['opt']['mk']['tp']);\n\t\t\t\t\t\t\t \t\t} else {\n\t\t\t\t\t\t\t \t\t\t$annots .= ' /TP 0';\n\t\t\t\t\t\t\t \t\t}\n\t\t\t\t\t\t\t \t\t$annots .= '>>';\n\t\t\t\t\t\t\t \t} // end MK\n\t\t\t\t\t\t\t \t// --- Entries for field dictionaries ---\n\t\t\t\t\t\t\t \tif (isset($this->radiobutton_groups[$n][$pl['txt']])) {\n\t\t\t\t\t\t\t \t\t// set parent\n\t\t\t\t\t\t\t \t\t$annots .= ' /Parent '.$this->radiobutton_groups[$n][$pl['txt']].' 0 R';\n\t\t\t\t\t\t\t \t}\n\t\t\t\t\t\t\t \tif (isset($pl['opt']['t']) AND is_string($pl['opt']['t'])) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /T '.$this->_dataannobjstring($pl['opt']['t']);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['tu']) AND is_string($pl['opt']['tu'])) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /TU '.$this->_dataannobjstring($pl['opt']['tu']);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['tm']) AND is_string($pl['opt']['tm'])) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /TM '.$this->_dataannobjstring($pl['opt']['tm']);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['ff'])) {\n\t\t\t\t\t\t\t\t\tif (is_array($pl['opt']['ff'])) {\n\t\t\t\t\t\t\t\t\t\t// array of bit settings\n\t\t\t\t\t\t\t\t\t\t$flag = 0;\n\t\t\t\t\t\t\t\t\t\tforeach($pl['opt']['ff'] as $val) {\n\t\t\t\t\t\t\t\t\t\t\t$flag += 1 << ($val - 1);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t$flag = intval($pl['opt']['ff']);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t$annots .= ' /Ff '.$flag;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['maxlen'])) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /MaxLen '.intval($pl['opt']['maxlen']);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['v'])) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /V';\n\t\t\t\t\t\t\t\t\tif (is_array($pl['opt']['v'])) {\n\t\t\t\t\t\t\t\t\t\tforeach ($pl['opt']['v'] AS $optval) {\n\t\t\t\t\t\t\t\t\t\t\tif (is_float($optval)) {\n\t\t\t\t\t\t\t\t\t\t\t\t$optval = sprintf('%.2F', $optval);\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t$annots .= ' '.$optval;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t$annots .= ' '.$this->_textannobjstring($pl['opt']['v']);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['dv'])) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /DV';\n\t\t\t\t\t\t\t\t\tif (is_array($pl['opt']['dv'])) {\n\t\t\t\t\t\t\t\t\t\tforeach ($pl['opt']['dv'] AS $optval) {\n\t\t\t\t\t\t\t\t\t\t\tif (is_float($optval)) {\n\t\t\t\t\t\t\t\t\t\t\t\t$optval = sprintf('%.2F', $optval);\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t$annots .= ' '.$optval;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t$annots .= ' '.$this->_textannobjstring($pl['opt']['dv']);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['rv'])) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /RV';\n\t\t\t\t\t\t\t\t\tif (is_array($pl['opt']['rv'])) {\n\t\t\t\t\t\t\t\t\t\tforeach ($pl['opt']['rv'] AS $optval) {\n\t\t\t\t\t\t\t\t\t\t\tif (is_float($optval)) {\n\t\t\t\t\t\t\t\t\t\t\t\t$optval = sprintf('%.2F', $optval);\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t$annots .= ' '.$optval;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t$annots .= ' '.$this->_textannobjstring($pl['opt']['rv']);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['a']) AND !empty($pl['opt']['a'])) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /A << '.$pl['opt']['a'].' >>';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['aa']) AND !empty($pl['opt']['aa'])) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /AA << '.$pl['opt']['aa'].' >>';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['da']) AND !empty($pl['opt']['da'])) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /DA ('.$pl['opt']['da'].')';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['q']) AND ($pl['opt']['q'] >= 0) AND ($pl['opt']['q'] <= 2)) {\n\t\t\t\t\t\t\t\t\t$annots .= ' /Q '.intval($pl['opt']['q']);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (isset($pl['opt']['opt']) AND (is_array($pl['opt']['opt'])) AND !empty($pl['opt']['opt'])) {\n\t\t\t\t\t\t \t\t\t$annots .= ' /Opt [';\n\t\t\t\t\t\t \t\t\tforeach($pl['opt']['opt'] AS $copt) {\n\t\t\t\t\t\t \t\t\t\tif (is_array($copt)) {\n\t\t\t\t\t\t \t\t\t\t\t$annots .= ' ['.$this->_textannobjstring($copt[0]).' '.$this->_textannobjstring($copt[1]).']';\n\t\t\t\t\t\t \t\t\t\t} else {\n\t\t\t\t\t\t \t\t\t\t\t$annots .= ' '.$this->_textannobjstring($copt);\n\t\t\t\t\t\t \t\t\t\t}\n\t\t\t\t\t\t \t\t\t}\n\t\t\t\t\t\t \t\t\t$annots .= ']';\n\t\t\t\t\t\t \t\t}\n\t\t\t\t\t\t \t\tif (isset($pl['opt']['ti'])) {\n\t\t\t\t\t\t \t\t\t$annots .= ' /TI '.intval($pl['opt']['ti']);\n\t\t\t\t\t\t \t\t}\n\t\t\t\t\t\t \t\tif (isset($pl['opt']['i']) AND (is_array($pl['opt']['i'])) AND !empty($pl['opt']['i'])) {\n\t\t\t\t\t\t \t\t\t$annots .= ' /I [';\n\t\t\t\t\t\t \t\t\tforeach($pl['opt']['i'] AS $copt) {\n\t\t\t\t\t\t \t\t\t\t$annots .= intval($copt).' ';\n\t\t\t\t\t\t \t\t\t}\n\t\t\t\t\t\t \t\t\t$annots .= ']';\n\t\t\t\t\t\t \t\t}\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'screen': {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'printermark': {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'trapnet': {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'watermark': {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase '3d': {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tdefault: {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$annots .= '>>';\n\t\t\t\t\t\t// create new annotation object\n\t\t\t\t\t\t++$this->annot_obj_id;\n\t\t\t\t\t\t$this->offsets[$this->annot_obj_id] = $this->bufferlen;\n\t\t\t\t\t\t$this->_out($this->annot_obj_id.' 0 obj '.$annots.' endobj');\n\t\t\t\t\t\tif ($formfield AND ! isset($this->radiobutton_groups[$n][$pl['txt']])) {\n\t\t\t\t\t\t\t// store reference of form object\n\t\t\t\t\t\t\t$this->form_obj_id[] = $this->annot_obj_id;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} // end for each page\n\t\t}\n\n\t\t/**\n\t\t * Put appearance streams XObject used to define annotation's appearance states\n\t\t * @param int $w annotation width\n\t\t * @param int $h annotation height\n\t\t * @param string $stream appearance stream\n\t\t * @return int object ID\n\t\t * @access protected\n\t\t * @since 4.8.001 (2009-09-09)\n\t\t */\n\t\tprotected function _putAPXObject($w=0, $h=0, $stream='') {\n\t\t\t$stream = trim($stream);\n\t\t\t++$this->apxo_obj_id;\n\t\t\t$this->offsets[$this->apxo_obj_id] = $this->bufferlen;\n\t\t\t$out = $this->apxo_obj_id.' 0 obj';\n\t\t\t$out .= ' <<';\n\t\t\t$out .= ' /Type /XObject';\n\t\t\t$out .= ' /Subtype /Form';\n\t\t\t$out .= ' /FormType 1';\n\t\t\tif ($this->compress) {\n\t\t\t\t$stream = gzcompress($stream);\n\t\t\t\t$out .= ' /Filter /FlateDecode';\n\t\t\t}\n\t\t\t$rect = sprintf('%.2F %.2F', $w, $h);\n\t\t\t$out .= ' /BBox [0 0 '.$rect.']';\n\t\t\t$out .= ' /Matrix [1 0 0 1 0 0]';\n\t\t\t$out .= ' /Resources <</ProcSet [/PDF]>>';\n\t\t\t$out .= ' /Length '.strlen($stream);\n\t\t\t$out .= ' >>';\n\t\t\t$out .= ' '.$this->_getstream($stream);\n\t\t\t$out .= ' endobj';\n\t\t\t$this->_out($out);\n\t\t\treturn $this->apxo_obj_id;\n\t\t}\n\n\t\t/**\n\t\t * Output fonts.\n\t\t * @access protected\n\t\t */\n\t\tprotected function _putfonts() {\n\t\t\t$nf = $this->n;\n\t\t\tforeach ($this->diffs as $diff) {\n\t\t\t\t//Encodings\n\t\t\t\t$this->_newobj();\n\t\t\t\t$this->_out('<</Type /Encoding /BaseEncoding /WinAnsiEncoding /Differences ['.$diff.']>> endobj');\n\t\t\t}\n\t\t\t$mqr = $this->get_mqr();\n\t\t\t$this->set_mqr(false);\n\t\t\tforeach ($this->FontFiles as $file => $info) {\n\t\t\t\t// search and get font file to embedd\n\t\t\t\t$fontdir = $info['fontdir'];\n\t\t\t\t$file = strtolower($file);\n\t\t\t\t$fontfile = '';\n\t\t\t\t// search files on various directories\n\t\t\t\tif (($fontdir !== false) AND file_exists($fontdir.$file)) {\n\t\t\t\t\t$fontfile = $fontdir.$file;\n\t\t\t\t} elseif (file_exists($this->_getfontpath().$file)) {\n\t\t\t\t\t$fontfile = $this->_getfontpath().$file;\n\t\t\t\t} elseif (file_exists($file)) {\n\t\t\t\t\t$fontfile = $file;\n\t\t\t\t}\n\t\t\t\tif (!$this->empty_string($fontfile)) {\n\t\t\t\t\t$font = file_get_contents($fontfile);\n\t\t\t\t\t$compressed = (substr($file, -2) == '.z');\n\t\t\t\t\tif ((!$compressed) AND (isset($info['length2']))) {\n\t\t\t\t\t\t$header = (ord($font{0}) == 128);\n\t\t\t\t\t\tif ($header) {\n\t\t\t\t\t\t\t//Strip first binary header\n\t\t\t\t\t\t\t$font = substr($font, 6);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ($header AND (ord($font{$info['length1']}) == 128)) {\n\t\t\t\t\t\t\t//Strip second binary header\n\t\t\t\t\t\t\t$font = substr($font, 0, $info['length1']).substr($font, ($info['length1'] + 6));\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t$this->_newobj();\n\t\t\t\t\t$this->FontFiles[$file]['n'] = $this->n;\n\t\t\t\t\t$out = '<</Length '.strlen($font);\n\t\t\t\t\tif ($compressed) {\n\t\t\t\t\t\t$out .= ' /Filter /FlateDecode';\n\t\t\t\t\t}\n\t\t\t\t\t$out .= ' /Length1 '.$info['length1'];\n\t\t\t\t\tif (isset($info['length2'])) {\n\t\t\t\t\t\t$out .= ' /Length2 '.$info['length2'].' /Length3 0';\n\t\t\t\t\t}\n\t\t\t\t\t$out .= ' >>';\n\t\t\t\t\t$out .= ' '.$this->_getstream($font);\n\t\t\t\t\t$out .= ' endobj';\n\t\t\t\t\t$this->_out($out);\n\t\t\t\t}\n\t\t\t}\n\t\t\t$this->set_mqr($mqr);\n\t\t\tforeach ($this->fontkeys as $k) {\n\t\t\t\t//Font objects\n\t\t\t\t$this->setFontSubBuffer($k, 'n', $this->n + 1);\n\t\t\t\t$font = $this->getFontBuffer($k);\n\t\t\t\t$type = $font['type'];\n\t\t\t\t$name = $font['name'];\n\t\t\t\tif ($type == 'core') {\n\t\t\t\t\t//Standard font\n\t\t\t\t\t$obj_id = $this->_newobj();\n\t\t\t\t\t$out = '<</Type /Font';\n\t\t\t\t\t$out .= ' /Subtype /Type1';\n\t\t\t\t\t$out .= ' /BaseFont /'.$name;\n\t\t\t\t\t$out .= ' /Name /F'.$font['i'];\n\t\t\t\t\tif ((strtolower($name) != 'symbol') AND (strtolower($name) != 'zapfdingbats')) {\n\t\t\t\t\t\t$out .= ' /Encoding /WinAnsiEncoding';\n\t\t\t\t\t}\n\t\t\t\t\tif (strtolower($name) == 'helvetica') {\n\t\t\t\t\t\t// add default font for annotations\n\t\t\t\t\t\t$this->annotation_fonts['helvetica'] = $k;\n\t\t\t\t\t}\n\t\t\t\t\t$out .= ' >> endobj';\n\t\t\t\t\t$this->_out($out);\n\t\t\t\t} elseif (($type == 'Type1') OR ($type == 'TrueType')) {\n\t\t\t\t\t//Additional Type1 or TrueType font\n\t\t\t\t\t$obj_id = $this->_newobj();\n\t\t\t\t\t$out = '<</Type /Font';\n\t\t\t\t\t$out .= ' /Subtype /'.$type;\n\t\t\t\t\t$out .= ' /BaseFont /'.$name;\n\t\t\t\t\t$out .= ' /Name /F'.$font['i'];\n\t\t\t\t\t$out .= ' /FirstChar 32 /LastChar 255';\n\t\t\t\t\t$out .= ' /Widths '.($this->n + 1).' 0 R';\n\t\t\t\t\t$out .= ' /FontDescriptor '.($this->n + 2).' 0 R';\n\t\t\t\t\tif ($font['enc']) {\n\t\t\t\t\t\tif (isset($font['diff'])) {\n\t\t\t\t\t\t\t$out .= ' /Encoding '.($nf + $font['diff']).' 0 R';\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$out .= ' /Encoding /WinAnsiEncoding';\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t$out .= ' >> endobj';\n\t\t\t\t\t$this->_out($out);\n\t\t\t\t\t// Widths\n\t\t\t\t\t$this->_newobj();\n\t\t\t\t\t$cw = &$font['cw'];\n\t\t\t\t\t$s = '[';\n\t\t\t\t\tfor ($i = 32; $i < 256; ++$i) {\n\t\t\t\t\t\t$s .= $cw[$i].' ';\n\t\t\t\t\t}\n\t\t\t\t\t$this->_out($s.'] endobj');\n\t\t\t\t\t//Descriptor\n\t\t\t\t\t$this->_newobj();\n\t\t\t\t\t$s = '<</Type /FontDescriptor /FontName /'.$name;\n\t\t\t\t\tforeach ($font['desc'] as $fdk => $fdv) {\n\t\t\t\t\t\tif(is_float($fdv)) {\n\t\t\t\t\t\t\t$fdv = sprintf('%.3F', $fdv);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$s .= ' /'.$fdk.' '.$fdv.'';\n\t\t\t\t\t}\n\t\t\t\t\tif (!$this->empty_string($font['file'])) {\n\t\t\t\t\t\t$s .= ' /FontFile'.($type == 'Type1' ? '' : '2').' '.$this->FontFiles[$font['file']]['n'].' 0 R';\n\t\t\t\t\t}\n\t\t\t\t\t$this->_out($s.'>> endobj');\n\t\t\t\t} else {\n\t\t\t\t\t//Allow for additional types\n\t\t\t\t\t$mtd = '_put'.strtolower($type);\n\t\t\t\t\tif (!method_exists($this, $mtd)) {\n\t\t\t\t\t\t$this->Error('Unsupported font type: '.$type);\n\t\t\t\t\t}\n\t\t\t\t\t$obj_id = $this->$mtd($font);\n\t\t\t\t}\n\t\t\t\t// store object ID for current font\n\t\t\t\t$this->font_obj_ids[$k] = $obj_id;\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Outputs font widths\n\t\t * @parameter array $font font data\n\t\t * @parameter int $cidoffset offset for CID values\n\t\t * @return PDF command string for font widths\n\t\t * @author Nicola Asuni\n\t\t * @access protected\n\t\t * @since 4.4.000 (2008-12-07)\n\t\t */\n\t\tprotected function _putfontwidths($font, $cidoffset=0) {\n\t\t\tksort($font['cw']);\n\t\t\t$rangeid = 0;\n\t\t\t$range = array();\n\t\t\t$prevcid = -2;\n\t\t\t$prevwidth = -1;\n\t\t\t$interval = false;\n\t\t\t// for each character\n\t\t\tforeach ($font['cw'] as $cid => $width) {\n\t\t\t\t$cid -= $cidoffset;\n\t\t\t\tif ($width != $font['dw']) {\n\t\t\t\t\tif ($cid == ($prevcid + 1)) {\n\t\t\t\t\t\t// consecutive CID\n\t\t\t\t\t\tif ($width == $prevwidth) {\n\t\t\t\t\t\t\tif ($width == $range[$rangeid][0]) {\n\t\t\t\t\t\t\t\t$range[$rangeid][] = $width;\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tarray_pop($range[$rangeid]);\n\t\t\t\t\t\t\t\t// new range\n\t\t\t\t\t\t\t\t$rangeid = $prevcid;\n\t\t\t\t\t\t\t\t$range[$rangeid] = array();\n\t\t\t\t\t\t\t\t$range[$rangeid][] = $prevwidth;\n\t\t\t\t\t\t\t\t$range[$rangeid][] = $width;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$interval = true;\n\t\t\t\t\t\t\t$range[$rangeid]['interval'] = true;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tif ($interval) {\n\t\t\t\t\t\t\t\t// new range\n\t\t\t\t\t\t\t\t$rangeid = $cid;\n\t\t\t\t\t\t\t\t$range[$rangeid] = array();\n\t\t\t\t\t\t\t\t$range[$rangeid][] = $width;\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$range[$rangeid][] = $width;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$interval = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// new range\n\t\t\t\t\t\t$rangeid = $cid;\n\t\t\t\t\t\t$range[$rangeid] = array();\n\t\t\t\t\t\t$range[$rangeid][] = $width;\n\t\t\t\t\t\t$interval = false;\n\t\t\t\t\t}\n\t\t\t\t\t$prevcid = $cid;\n\t\t\t\t\t$prevwidth = $width;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// optimize ranges\n\t\t\t$prevk = -1;\n\t\t\t$nextk = -1;\n\t\t\t$prevint = false;\n\t\t\tforeach ($range as $k => $ws) {\n\t\t\t\t$cws = count($ws);\n\t\t\t\tif (($k == $nextk) AND (!$prevint) AND ((!isset($ws['interval'])) OR ($cws < 4))) {\n\t\t\t\t\tif (isset($range[$k]['interval'])) {\n\t\t\t\t\t\tunset($range[$k]['interval']);\n\t\t\t\t\t}\n\t\t\t\t\t$range[$prevk] = array_merge($range[$prevk], $range[$k]);\n\t\t\t\t\tunset($range[$k]);\n\t\t\t\t} else {\n\t\t\t\t\t$prevk = $k;\n\t\t\t\t}\n\t\t\t\t$nextk = $k + $cws;\n\t\t\t\tif (isset($ws['interval'])) {\n\t\t\t\t\tif ($cws > 3) {\n\t\t\t\t\t\t$prevint = true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$prevint = false;\n\t\t\t\t\t}\n\t\t\t\t\tunset($range[$k]['interval']);\n\t\t\t\t\t--$nextk;\n\t\t\t\t} else {\n\t\t\t\t\t$prevint = false;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// output data\n\t\t\t$w = '';\n\t\t\tforeach ($range as $k => $ws) {\n\t\t\t\tif (count(array_count_values($ws)) == 1) {\n\t\t\t\t\t// interval mode is more compact\n\t\t\t\t\t$w .= ' '.$k.' '.($k + count($ws) - 1).' '.$ws[0];\n\t\t\t\t} else {\n\t\t\t\t\t// range mode\n\t\t\t\t\t$w .= ' '.$k.' [ '.implode(' ', $ws).' ]';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn '/W ['.$w.' ]';\n\t\t}\n\n\t\t/**\n\t\t * Adds unicode fonts.<br>\n\t\t * Based on PDF Reference 1.3 (section 5)\n\t\t * @parameter array $font font data\n\t\t * @return int font object ID\n\t\t * @access protected\n\t\t * @author Nicola Asuni\n\t\t * @since 1.52.0.TC005 (2005-01-05)\n\t\t */\n\t\tprotected function _puttruetypeunicode($font) {\n\t\t\t// Type0 Font\n\t\t\t// A composite font composed of other fonts, organized hierarchically\n\t\t\t$obj_id = $this->_newobj();\n\t\t\t$out = '<</Type /Font';\n\t\t\t$out .= ' /Subtype /Type0';\n\t\t\t$out .= ' /BaseFont /'.$font['name'].'';\n\t\t\t$out .= ' /Name /F'.$font['i'];\n\t\t\t$out .= ' /Encoding /'.$font['enc'];\n\t\t\t$out .= ' /ToUnicode /Identity-H';\n\t\t\t$out .= ' /DescendantFonts ['.($this->n + 1).' 0 R]';\n\t\t\t$out .= ' >>';\n\t\t\t$out .= ' endobj';\n\t\t\t$this->_out($out);\n\t\t\t// CIDFontType2\n\t\t\t// A CIDFont whose glyph descriptions are based on TrueType font technology\n\t\t\t$this->_newobj();\n\t\t\t$out = '<</Type /Font';\n\t\t\t$out .= ' /Subtype /CIDFontType2';\n\t\t\t$out .= ' /BaseFont /'.$font['name'];\n\t\t\t// A dictionary containing entries that define the character collection of the CIDFont.\n\t\t\t$cidinfo = '/Registry '.$this->_datastring($font['cidinfo']['Registry']);\n\t\t\t$cidinfo .= ' /Ordering '.$this->_datastring($font['cidinfo']['Ordering']);\n\t\t\t$cidinfo .= ' /Supplement '.$font['cidinfo']['Supplement'];\n\t\t\t$out .= ' /CIDSystemInfo <<'.$cidinfo.'>>';\n\t\t\t$out .= ' /FontDescriptor '.($this->n + 1).' 0 R';\n\t\t\t$out .= ' /DW '.$font['dw']; // default width\n\t\t\t$out .= \"\\n\".$this->_putfontwidths($font, 0);\n\t\t\t$out .= ' /CIDToGIDMap '.($this->n + 2).' 0 R >> endobj';\n\t\t\t$this->_out($out);\n\t\t\t// Font descriptor\n\t\t\t// A font descriptor describing the CIDFont default metrics other than its glyph widths\n\t\t\t$this->_newobj();\n\t\t\t$out = '<</Type /FontDescriptor';\n\t\t\t$out .= ' /FontName /'.$font['name'];\n\t\t\tforeach ($font['desc'] as $key => $value) {\n\t\t\t\tif(is_float($value)) {\n\t\t\t\t\t$value = sprintf('%.3F', $value);\n\t\t\t\t}\n\t\t\t\t$out .= ' /'.$key.' '.$value;\n\t\t\t}\n\t\t\t$fontdir = false;\n\t\t\tif (!$this->empty_string($font['file'])) {\n\t\t\t\t// A stream containing a TrueType font\n\t\t\t\t$out .= ' /FontFile2 '.$this->FontFiles[$font['file']]['n'].' 0 R';\n\t\t\t\t$fontdir = $this->FontFiles[$font['file']]['fontdir'];\n\t\t\t}\n\t\t\t$out .= ' >> endobj';\n\t\t\t$this->_out($out);\n\t\t\tif (isset($font['ctg']) AND (!$this->empty_string($font['ctg']))) {\n\t\t\t\t$this->_newobj();\n\t\t\t\t// Embed CIDToGIDMap\n\t\t\t\t// A specification of the mapping from CIDs to glyph indices\n\t\t\t\t// search and get CTG font file to embedd\n\t\t\t\t$ctgfile = strtolower($font['ctg']);\n\t\t\t\t// search and get ctg font file to embedd\n\t\t\t\t$fontfile = '';\n\t\t\t\t// search files on various directories\n\t\t\t\tif (($fontdir !== false) AND file_exists($fontdir.$ctgfile)) {\n\t\t\t\t\t$fontfile = $fontdir.$ctgfile;\n\t\t\t\t} elseif (file_exists($this->_getfontpath().$ctgfile)) {\n\t\t\t\t\t$fontfile = $this->_getfontpath().$ctgfile;\n\t\t\t\t} elseif (file_exists($ctgfile)) {\n\t\t\t\t\t$fontfile = $ctgfile;\n\t\t\t\t}\n\t\t\t\tif ($this->empty_string($fontfile)) {\n\t\t\t\t\t$this->Error('Font file not found: '.$ctgfile);\n\t\t\t\t}\n\t\t\t\t$size = filesize($fontfile);\n\t\t\t\t$out = '<</Length '.$size.'';\n\t\t\t\tif (substr($fontfile, -2) == '.z') { // check file extension\n\t\t\t\t\t// Decompresses data encoded using the public-domain\n\t\t\t\t\t// zlib/deflate compression method, reproducing the\n\t\t\t\t\t// original text or binary data\n\t\t\t\t\t$out .= ' /Filter /FlateDecode';\n\t\t\t\t}\n\t\t\t\t$out .= ' >>';\n\t\t\t\t$out .= ' '.$this->_getstream(file_get_contents($fontfile));\n\t\t\t\t$out .= ' endobj';\n\t\t\t\t$this->_out($out);\n\t\t\t}\n\t\t\treturn $obj_id;\n\t\t}\n\n\t\t/**\n\t\t * Output CID-0 fonts.\n\t\t * A Type 0 CIDFont contains glyph descriptions based on the Adobe Type 1 font format\n\t\t * @param array $font font data\n\t\t * @return int font object ID\n\t\t * @access protected\n\t\t * @author Andrew Whitehead, Nicola Asuni, Yukihiro Nakadaira\n\t\t * @since 3.2.000 (2008-06-23)\n\t\t */\n\t\tprotected function _putcidfont0($font) {\n\t\t\t$cidoffset = 0;\n\t\t\tif (!isset($font['cw'][1])) {\n\t\t\t\t$cidoffset = 31;\n\t\t\t}\n\t\t\tif (isset($font['cidinfo']['uni2cid'])) {\n\t\t\t\t// convert unicode to cid.\n\t\t\t\t$uni2cid = $font['cidinfo']['uni2cid'];\n\t\t\t\t$cw = array();\n\t\t\t\tforeach ($font['cw'] as $uni => $width) {\n\t\t\t\t\tif (isset($uni2cid[$uni])) {\n\t\t\t\t\t\t$cw[($uni2cid[$uni] + $cidoffset)] = $width;\n\t\t\t\t\t} elseif ($uni < 256) {\n\t\t\t\t\t\t$cw[$uni] = $width;\n\t\t\t\t\t} // else unknown character\n\t\t\t\t}\n\t\t\t\t$font = array_merge($font, array('cw' => $cw));\n\t\t\t}\n\t\t\t$name = $font['name'];\n\t\t\t$enc = $font['enc'];\n\t\t\tif ($enc) {\n\t\t\t\t$longname = $name.'-'.$enc;\n\t\t\t} else {\n\t\t\t\t$longname = $name;\n\t\t\t}\n\t\t\t$obj_id = $this->_newobj();\n\t\t\t$out = '<</Type /Font';\n\t\t\t$out .= ' /Subtype /Type0';\n\t\t\t$out .= ' /BaseFont /'.$longname;\n\t\t\t$out .= ' /Name /F'.$font['i'];\n\t\t\tif ($enc) {\n\t\t\t\t$out .= ' /Encoding /'.$enc;\n\t\t\t}\n\t\t\t$out .= ' /DescendantFonts ['.($this->n + 1).' 0 R]';\n\t\t\t$out .= ' >> endobj';\n\t\t\t$this->_out($out);\n\t\t\t$this->_newobj();\n\t\t\t$out = '<</Type /Font';\n\t\t\t$out .= ' /Subtype /CIDFontType0';\n\t\t\t$out .= ' /BaseFont /'.$name;\n\t\t\t$cidinfo = '/Registry '.$this->_datastring($font['cidinfo']['Registry']);\n\t\t\t$cidinfo .= ' /Ordering '.$this->_datastring($font['cidinfo']['Ordering']);\n\t\t\t$cidinfo .= ' /Supplement '.$font['cidinfo']['Supplement'];\n\t\t\t$out .= ' /CIDSystemInfo <<'.$cidinfo.'>>';\n\t\t\t$out .= ' /FontDescriptor '.($this->n + 1).' 0 R';\n\t\t\t$out .= ' /DW '.$font['dw'];\n\t\t\t$out .= \"\\n\".$this->_putfontwidths($font, $cidoffset);\n\t\t\t$out .= ' >> endobj';\n\t\t\t$this->_out($out);\n\t\t\t$this->_newobj();\n\t\t\t$s = '<</Type /FontDescriptor /FontName /'.$name;\n\t\t\tforeach ($font['desc'] as $k => $v) {\n\t\t\t\tif ($k != 'Style') {\n\t\t\t\t\tif(is_float($v)) {\n\t\t\t\t\t\t$v = sprintf('%.3F', $v);\n\t\t\t\t\t}\n\t\t\t\t\t$s .= ' /'.$k.' '.$v.'';\n\t\t\t\t}\n\t\t\t}\n\t\t\t$this->_out($s.'>> endobj');\n\t\t\treturn $obj_id;\n\t\t}\n\n\t\t/**\n\t\t * Output images.\n\t\t * @access protected\n\t\t */\n\t\tprotected function _putimages() {\n\t\t\t$filter = ($this->compress) ? '/Filter /FlateDecode ' : '';\n\t\t\tforeach ($this->imagekeys as $file) {\n\t\t\t\t$info = $this->getImageBuffer($file);\n\t\t\t\t$this->_newobj();\n\t\t\t\t$this->setImageSubBuffer($file, 'n', $this->n);\n\t\t\t\t$out = '<</Type /XObject';\n\t\t\t\t$out .= ' /Subtype /Image';\n\t\t\t\t$out .= ' /Width '.$info['w'];\n\t\t\t\t$out .= ' /Height '.$info['h'];\n\t\t\t\tif (array_key_exists('masked', $info)) {\n\t\t\t\t\t$out .= ' /SMask '.($this->n - 1).' 0 R';\n\t\t\t\t}\n\t\t\t\tif ($info['cs'] == 'Indexed') {\n\t\t\t\t\t$out .= ' /ColorSpace [/Indexed /DeviceRGB '.((strlen($info['pal']) / 3) - 1).' '.($this->n + 1).' 0 R]';\n\t\t\t\t} else {\n\t\t\t\t\t$out .= ' /ColorSpace /'.$info['cs'];\n\t\t\t\t\tif ($info['cs'] == 'DeviceCMYK') {\n\t\t\t\t\t\t$out .= ' /Decode [1 0 1 0 1 0 1 0]';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t$out .= ' /BitsPerComponent '.$info['bpc'];\n\t\t\t\tif (isset($info['f'])) {\n\t\t\t\t\t$out .= ' /Filter /'.$info['f'];\n\t\t\t\t}\n\t\t\t\tif (isset($info['parms'])) {\n\t\t\t\t\t$out .= ' '.$info['parms'];\n\t\t\t\t}\n\t\t\t\tif (isset($info['trns']) AND is_array($info['trns'])) {\n\t\t\t\t\t$trns='';\n\t\t\t\t\t$count_info = count($info['trns']);\n\t\t\t\t\tfor ($i=0; $i < $count_info; ++$i) {\n\t\t\t\t\t\t$trns .= $info['trns'][$i].' '.$info['trns'][$i].' ';\n\t\t\t\t\t}\n\t\t\t\t\t$out .= ' /Mask ['.$trns.']';\n\t\t\t\t}\n\t\t\t\t$out .= ' /Length '.strlen($info['data']).' >>';\n\t\t\t\t$out .= ' '.$this->_getstream($info['data']);\n\t\t\t\t$out .= ' endobj';\n\t\t\t\t$this->_out($out);\n\t\t\t\t//Palette\n\t\t\t\tif ($info['cs'] == 'Indexed') {\n\t\t\t\t\t$this->_newobj();\n\t\t\t\t\t$pal = ($this->compress) ? gzcompress($info['pal']) : $info['pal'];\n\t\t\t\t\t$this->_out('<<'.$filter.'/Length '.strlen($pal).'>> '.$this->_getstream($pal).' endobj');\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Output Spot Colors Resources.\n\t\t * @access protected\n\t\t * @since 4.0.024 (2008-09-12)\n\t\t */\n\t\tprotected function _putspotcolors() {\n\t\t\tforeach ($this->spot_colors as $name => $color) {\n\t\t\t\t$this->_newobj();\n\t\t\t\t$this->spot_colors[$name]['n'] = $this->n;\n\t\t\t\t$out = '[/Separation /'.str_replace(' ', '#20', $name);\n\t\t\t\t$out .= ' /DeviceCMYK <<';\n\t\t\t\t$out .= ' /Range [0 1 0 1 0 1 0 1] /C0 [0 0 0 0]';\n\t\t\t\t$out .= ' '.sprintf('/C1 [%.4F %.4F %.4F %.4F] ', $color['c']/100, $color['m']/100, $color['y']/100, $color['k']/100);\n\t\t\t\t$out .= ' /FunctionType 2 /Domain [0 1] /N 1>>]';\n\t\t\t\t$out .= ' endobj';\n\t\t\t\t$this->_out($out);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Output Resources Dictionary.\n\t\t * @access protected\n\t\t */\n\t\tprotected function _putresourcedict() {\n\t\t\t$out = '2 0 obj';\n\t\t\t$out .= ' << /ProcSet [/PDF /Text /ImageB /ImageC /ImageI]';\n\t\t\t$out .= ' /Font <<';\n\t\t\tforeach ($this->fontkeys as $fontkey) {\n\t\t\t\t$font = $this->getFontBuffer($fontkey);\n\t\t\t\t$out .= ' /F'.$font['i'].' '.$font['n'].' 0 R';\n\t\t\t}\n\t\t\t$out .= ' >>';\n\t\t\t$out .= ' /XObject <<';\n\t\t\tforeach ($this->imagekeys as $file) {\n\t\t\t\t$info = $this->getImageBuffer($file);\n\t\t\t\t$out .= ' /I'.$info['i'].' '.$info['n'].' 0 R';\n\t\t\t}\n\t\t\t$out .= ' >>';\n\t\t\t// visibility\n\t\t\t$out .= ' /Properties <</OC1 '.$this->n_ocg_print.' 0 R /OC2 '.$this->n_ocg_view.' 0 R>>';\n\t\t\t// transparency\n\t\t\t$out .= ' /ExtGState <<';\n\t\t\tforeach ($this->extgstates as $k => $extgstate) {\n\t\t\t\tif (isset($extgstate['name'])) {\n\t\t\t\t\t$out .= ' /'.$extgstate['name'];\n\t\t\t\t} else {\n\t\t\t\t\t$out .= ' /GS'.$k;\n\t\t\t\t}\n\t\t\t\t$out .= ' '.$extgstate['n'].' 0 R';\n\t\t\t}\n\t\t\t$out .= ' >>';\n\t\t\t// gradient patterns\n\t\t\tif (isset($this->gradients) AND (count($this->gradients) > 0)) {\n\t\t\t\t$out .= ' /Pattern <<';\n\t\t\t\tforeach ($this->gradients as $id => $grad) {\n\t\t\t\t\t$out .= ' /p'.$id.' '.$grad['pattern'].' 0 R';\n\t\t\t\t}\n\t\t\t\t$out .= ' >>';\n\t\t\t}\n\t\t\t// gradient shadings\n\t\t\tif (isset($this->gradients) AND (count($this->gradients) > 0)) {\n\t\t\t\t$out .= ' /Shading <<';\n\t\t\t\tforeach ($this->gradients as $id => $grad) {\n\t\t\t\t\t$out .= ' /Sh'.$id.' '.$grad['id'].' 0 R';\n\t\t\t\t}\n\t\t\t\t$out .= ' >>';\n\t\t\t}\n\t\t\t// spot colors\n\t\t\tif (isset($this->spot_colors) AND (count($this->spot_colors) > 0)) {\n\t\t\t\t$out .= ' /ColorSpace <<';\n\t\t\t\tforeach ($this->spot_colors as $color) {\n\t\t\t\t\t$out .= ' /CS'.$color['i'].' '.$color['n'].' 0 R';\n\t\t\t\t}\n\t\t\t\t$out .= ' >>';\n\t\t\t}\n\t\t\t$out .= ' >> endobj';\n\t\t\t$this->_out($out);\n\t\t}\n\n\t\t/**\n\t\t * Output Resources.\n\t\t * @access protected\n\t\t */\n\t\tprotected function _putresources() {\n\t\t\t$this->_putextgstates();\n\t\t\t$this->_putocg();\n\t\t\t$this->_putfonts();\n\t\t\t$this->_putimages();\n\t\t\t$this->_putspotcolors();\n\t\t\t$this->_putshaders();\n\t\t\t//Resource dictionary\n\t\t\t$this->offsets[2] = $this->bufferlen;\n\t\t\t$this->_putresourcedict();\n\t\t\t$this->_putbookmarks();\n\t\t\t$this->_putEmbeddedFiles();\n\t\t\t$this->_putannotsobjs();\n\t\t\t$this->_putjavascript();\n\t\t\t// encryption\n\t\t\t$this->_putencryption();\n\t\t}\n\n\t\t/**\n\t\t * Adds some Metadata information (Document Information Dictionary)\n\t\t * (see Chapter 14.3.3 Document Information Dictionary of PDF32000_2008.pdf Reference)\n\t\t * @access protected\n\t\t */\n\t\tprotected function _putinfo() {\n\t\t\t$this->_newobj();\n\t\t\t$out = '<<';\n\t\t\tif (!$this->empty_string($this->title)) {\n\t\t\t\t// The document's title.\n\t\t\t\t$out .= ' /Title '.$this->_textstring($this->title);\n\t\t\t}\n\t\t\tif (!$this->empty_string($this->author)) {\n\t\t\t\t// The name of the person who created the document.\n\t\t\t\t$out .= ' /Author '.$this->_textstring($this->author);\n\t\t\t}\n\t\t\tif (!$this->empty_string($this->subject)) {\n\t\t\t\t// The subject of the document.\n\t\t\t\t$out .= ' /Subject '.$this->_textstring($this->subject);\n\t\t\t}\n\t\t\tif (!$this->empty_string($this->keywords)) {\n\t\t\t\t// Keywords associated with the document.\n\t\t\t\t$out .= ' /Keywords '.$this->_textstring($this->keywords.' TCP'.'DF');\n\t\t\t}\n\t\t\tif (!$this->empty_string($this->creator)) {\n\t\t\t\t// If the document was converted to PDF from another format, the name of the conforming product that created the original document from which it was converted.\n\t\t\t\t$out .= ' /Creator '.$this->_textstring($this->creator);\n\t\t\t}\n\t\t\tif (defined('PDF_PRODUCER')) {\n\t\t\t\t// If the document was converted to PDF from another format, the name of the conforming product that converted it to PDF.\n\t\t\t\t$out .= ' /Producer '.$this->_textstring(PDF_PRODUCER.' (TCP'.'DF)');\n\t\t\t} else {\n\t\t\t\t// default producer\n\t\t\t\t$out .= ' /Producer '.$this->_textstring('TCP'.'DF');\n\t\t\t}\n\t\t\t// The date and time the document was created, in human-readable form\n\t\t\t$out .= ' /CreationDate '.$this->_datestring();\n\t\t\t// The date and time the document was most recently modified, in human-readable form\n\t\t\t$out .= ' /ModDate '.$this->_datestring();\n\t\t\t// A name object indicating whether the document has been modified to include trapping information\n\t\t\t//$out .= ' /Trapped /False');\n\t\t\t$out .= ' >> endobj';\n\t\t\t$this->_out($out);\n\t\t}\n\n\t\t/**\n\t\t * Output Catalog.\n\t\t * @access protected\n\t\t */\n\t\tprotected function _putcatalog() {\n\t\t\t$this->_newobj();\n\t\t\t$out = '<< /Type /Catalog';\n\t\t\t$out .= ' /Pages 1 0 R';\n\t\t\tif ($this->ZoomMode == 'fullpage') {\n\t\t\t\t$out .= ' /OpenAction [3 0 R /Fit]';\n\t\t\t} elseif ($this->ZoomMode == 'fullwidth') {\n\t\t\t\t$out .= ' /OpenAction [3 0 R /FitH null]';\n\t\t\t} elseif ($this->ZoomMode == 'real') {\n\t\t\t\t$out .= ' /OpenAction [3 0 R /XYZ null null 1]';\n\t\t\t} elseif (!is_string($this->ZoomMode)) {\n\t\t\t\t$out .= ' /OpenAction [3 0 R /XYZ null null '.($this->ZoomMode / 100).']';\n\t\t\t}\n\t\t\tif (isset($this->LayoutMode) AND (!$this->empty_string($this->LayoutMode))) {\n\t\t\t\t$out .= ' /PageLayout /'.$this->LayoutMode;\n\t\t\t}\n\t\t\tif (isset($this->PageMode) AND (!$this->empty_string($this->PageMode))) {\n\t\t\t\t$out .= ' /PageMode /'.$this->PageMode;\n\t\t\t}\n\t\t\tif (isset($this->l['a_meta_language'])) {\n\t\t\t\t$out .= ' /Lang /'.$this->l['a_meta_language'];\n\t\t\t}\n\t\t\t$out .= ' /Names <<';\n\t\t\tif ((!empty($this->javascript)) OR (!empty($this->js_objects))) {\n\t\t\t\t$out .= ' /JavaScript '.($this->n_js).' 0 R';\n\t\t\t}\n\t\t\t$out .= ' >>';\n\t\t\tif (count($this->outlines) > 0) {\n\t\t\t\t$out .= ' /Outlines '.$this->OutlineRoot.' 0 R';\n\t\t\t\t$out .= ' /PageMode /UseOutlines';\n\t\t\t}\n\t\t\t$out .= ' '.$this->_putviewerpreferences();\n\t\t\t$p = $this->n_ocg_print.' 0 R';\n\t\t\t$v = $this->n_ocg_view.' 0 R';\n\t\t\t$as = '<</Event /Print /OCGs ['.$p.' '.$v.'] /Category [/Print]>> <</Event /View /OCGs ['.$p.' '.$v.'] /Category [/View]>>';\n\t\t\t$out .= ' /OCProperties <</OCGs ['.$p.' '.$v.'] /D <</ON ['.$p.'] /OFF ['.$v.'] /AS ['.$as.']>>>>';\n\t\t\t// AcroForm\n\t\t\tif (!empty($this->form_obj_id) OR ($this->sign AND isset($this->signature_data['cert_type']))) {\n\t\t\t\t$out .= ' /AcroForm<<';\n\t\t\t\t$objrefs = '';\n\t\t\t\tif ($this->sign AND isset($this->signature_data['cert_type'])) {\n\t\t\t\t\t$objrefs .= $this->sig_obj_id.' 0 R';\n\t\t\t\t}\n\t\t\t\tif (!empty($this->form_obj_id)) {\n\t\t\t\t\tforeach($this->form_obj_id as $objid) {\n\t\t\t\t\t\t$objrefs .= ' '.$objid.' 0 R';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t$out .= ' /Fields ['.$objrefs.']';\n\t\t\t\t$out .= ' /NeedAppearances '.(empty($this->form_obj_id)?'false':'true');\n\t\t\t\tif ($this->sign AND isset($this->signature_data['cert_type'])) {\n\t\t\t\t\t$out .= ' /SigFlags 3';\n\t\t\t\t}\n\t\t\t\t//$out .= ' /CO ';\n\t\t\t\tif (isset($this->annotation_fonts) AND !empty($this->annotation_fonts)) {\n\t\t\t\t\t$out .= ' /DR <<';\n\t\t\t\t\t$out .= ' /Font <<';\n\t\t\t\t\tforeach ($this->annotation_fonts as $font => $fontkey) {\n\t\t\t\t\t\t$out .= ' /F'.($fontkey + 1).' '.$this->font_obj_ids[$font].' 0 R';\n\t\t\t\t\t}\n\t\t\t\t\t$out .= ' >> >>';\n\t\t\t\t}\n\t\t\t\t$out .= ' /DA (/F'.(array_search('helvetica', $this->fontkeys) + 1).' 0 Tf 0 g)';\n\t\t\t\t$out .= ' /Q '.(($this->rtl)?'2':'0');\n\t\t\t\t//$out .= ' /XFA ';\n\t\t\t\t$out .= ' >>';\n\t\t\t\t// signatures\n\t\t\t\tif ($this->sign AND isset($this->signature_data['cert_type'])) {\n\t\t\t\t\tif ($this->signature_data['cert_type'] > 0) {\n\t\t\t\t\t\t$out .= ' /Perms<</DocMDP '.($this->sig_obj_id + 1).' 0 R>>';\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$out .= ' /Perms<</UR3 '.($this->sig_obj_id + 1).' 0 R>>';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t$out .= ' >> endobj';\n\t\t\t$this->_out($out);\n\t\t}\n\n\t\t/**\n\t\t * Output viewer preferences.\n\t\t * @return string for viewer preferences\n\t\t * @author Nicola asuni\n\t\t * @since 3.1.000 (2008-06-09)\n\t\t * @access protected\n\t\t */\n\t\tprotected function _putviewerpreferences() {\n\t\t\t$out = '/ViewerPreferences <<';\n\t\t\tif ($this->rtl) {\n\t\t\t\t$out .= ' /Direction /R2L';\n\t\t\t} else {\n\t\t\t\t$out .= ' /Direction /L2R';\n\t\t\t}\n\t\t\tif (isset($this->viewer_preferences['HideToolbar']) AND ($this->viewer_preferences['HideToolbar'])) {\n\t\t\t\t$out .= ' /HideToolbar true';\n\t\t\t}\n\t\t\tif (isset($this->viewer_preferences['HideMenubar']) AND ($this->viewer_preferences['HideMenubar'])) {\n\t\t\t\t$out .= ' /HideMenubar true';\n\t\t\t}\n\t\t\tif (isset($this->viewer_preferences['HideWindowUI']) AND ($this->viewer_preferences['HideWindowUI'])) {\n\t\t\t\t$out .= ' /HideWindowUI true';\n\t\t\t}\n\t\t\tif (isset($this->viewer_preferences['FitWindow']) AND ($this->viewer_preferences['FitWindow'])) {\n\t\t\t\t$out .= ' /FitWindow true';\n\t\t\t}\n\t\t\tif (isset($this->viewer_preferences['CenterWindow']) AND ($this->viewer_preferences['CenterWindow'])) {\n\t\t\t\t$out .= ' /CenterWindow true';\n\t\t\t}\n\t\t\tif (isset($this->viewer_preferences['DisplayDocTitle']) AND ($this->viewer_preferences['DisplayDocTitle'])) {\n\t\t\t\t$out .= ' /DisplayDocTitle true';\n\t\t\t}\n\t\t\tif (isset($this->viewer_preferences['NonFullScreenPageMode'])) {\n\t\t\t\t$out .= ' /NonFullScreenPageMode /'.$this->viewer_preferences['NonFullScreenPageMode'];\n\t\t\t}\n\t\t\tif (isset($this->viewer_preferences['ViewArea'])) {\n\t\t\t\t$out .= ' /ViewArea /'.$this->viewer_preferences['ViewArea'];\n\t\t\t}\n\t\t\tif (isset($this->viewer_preferences['ViewClip'])) {\n\t\t\t\t$out .= ' /ViewClip /'.$this->viewer_preferences['ViewClip'];\n\t\t\t}\n\t\t\tif (isset($this->viewer_preferences['PrintArea'])) {\n\t\t\t\t$out .= ' /PrintArea /'.$this->viewer_preferences['PrintArea'];\n\t\t\t}\n\t\t\tif (isset($this->viewer_preferences['PrintClip'])) {\n\t\t\t\t$out .= ' /PrintClip /'.$this->viewer_preferences['PrintClip'];\n\t\t\t}\n\t\t\tif (isset($this->viewer_preferences['PrintScaling'])) {\n\t\t\t\t$out .= ' /PrintScaling /'.$this->viewer_preferences['PrintScaling'];\n\t\t\t}\n\t\t\tif (isset($this->viewer_preferences['Duplex']) AND (!$this->empty_string($this->viewer_preferences['Duplex']))) {\n\t\t\t\t$out .= ' /Duplex /'.$this->viewer_preferences['Duplex'];\n\t\t\t}\n\t\t\tif (isset($this->viewer_preferences['PickTrayByPDFSize'])) {\n\t\t\t\tif ($this->viewer_preferences['PickTrayByPDFSize']) {\n\t\t\t\t\t$out .= ' /PickTrayByPDFSize true';\n\t\t\t\t} else {\n\t\t\t\t\t$out .= ' /PickTrayByPDFSize false';\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (isset($this->viewer_preferences['PrintPageRange'])) {\n\t\t\t\t$PrintPageRangeNum = '';\n\t\t\t\tforeach ($this->viewer_preferences['PrintPageRange'] as $k => $v) {\n\t\t\t\t\t$PrintPageRangeNum .= ' '.($v - 1).'';\n\t\t\t\t}\n\t\t\t\t$out .= ' /PrintPageRange ['.substr($PrintPageRangeNum,1).']';\n\t\t\t}\n\t\t\tif (isset($this->viewer_preferences['NumCopies'])) {\n\t\t\t\t$out .= ' /NumCopies '.intval($this->viewer_preferences['NumCopies']);\n\t\t\t}\n\t\t\t$out .= ' >>';\n\t\t\treturn $out;\n\t\t}\n\n\t\t/**\n\t\t * Output trailer.\n\t\t * @access protected\n\t\t */\n\t\tprotected function _puttrailer() {\n\t\t\t$out = 'trailer <<';\n\t\t\t$out .= ' /Size '.($this->n + 1);\n\t\t\t$out .= ' /Root '.$this->n.' 0 R';\n\t\t\t$out .= ' /Info '.($this->n - 1).' 0 R';\n\t\t\tif ($this->encrypted) {\n\t\t\t\t$out .= ' /Encrypt '.$this->enc_obj_id.' 0 R';\n\t\t\t\t$out .= ' /ID [()()]';\n\t\t\t}\n\t\t\t$out .= ' >>';\n\t\t\t$this->_out($out);\n\t\t}\n\n\t\t/**\n\t\t * Output PDF header.\n\t\t * @access protected\n\t\t */\n\t\tprotected function _putheader() {\n\t\t\t$this->_out('%PDF-'.$this->PDFVersion);\n\t\t}\n\n\t\t/**\n\t\t * Output end of document (EOF).\n\t\t * @access protected\n\t\t */\n\t\tprotected function _enddoc() {\n\t\t\t$this->state = 1;\n\t\t\t$this->_putheader();\n\t\t\t$this->_putpages();\n\t\t\t$this->_putresources();\n\t\t\t// Signature\n\t\t\tif ($this->sign AND isset($this->signature_data['cert_type'])) {\n\t\t\t\t// widget annotation for signature\n\t\t\t\t$this->sig_obj_id = $this->_newobj();\n\t\t\t\t// --- replace signature ID on the first page ---\n\t\t\t\t// get the document content\n\t\t\t\t$pdfdoc = $this->getBuffer();\n\t\t\t\t// Remove the original buffer\n\t\t\t\tif (isset($this->diskcache) AND $this->diskcache) {\n\t\t\t\t\t// remove buffer file from cache\n\t\t\t\t\tunlink($this->buffer);\n\t\t\t\t}\n\t\t\t\tunset($this->buffer);\n\t\t\t\t$signature_widget_ref = sprintf('%u 0 R', $this->sig_obj_id);\n\t\t\t\t$signature_widget_ref .= str_repeat(' ', (strlen($this->sig_annot_ref) - strlen($signature_widget_ref)));\n\t\t\t\t$pdfdoc = str_replace($this->sig_annot_ref, $signature_widget_ref, $pdfdoc);\n\t\t\t\t$this->diskcache = false;\n\t\t\t\t$this->buffer = &$pdfdoc;\n\t\t\t\t$this->bufferlen = strlen($pdfdoc);\n\t\t\t\t// ---\n\t\t\t\t$out = '<< /Type /Annot /Subtype /Widget /Rect [0 0 0 0]';\n\t\t\t\t$out .= ' /P 3 0 R'; // link to first page object\n\t\t\t\t$out .= ' /FT /Sig';\n\t\t\t\t$out .= ' /T '.$this->_textstring('Signature');\n\t\t\t\t$out .= ' /Ff 0';\n\t\t\t\t$out .= ' /V '.($this->sig_obj_id + 1).' 0 R';\n\t\t\t\t$out .= ' >> endobj';\n\t\t\t\t$this->_out($out);\n\t\t\t\t// signature\n\t\t\t\t$this->_putsignature();\n\t\t\t}\n\t\t\t// Info\n\t\t\t$this->_putinfo();\n\t\t\t// Catalog\n\t\t\t$this->_putcatalog();\n\t\t\t// Cross-ref\n\t\t\t$o = $this->bufferlen;\n\t\t\t$this->_out('xref');\n\t\t\t$this->_out('0 '.($this->n + 1));\n\t\t\t$this->_out('0000000000 65535 f ');\n\t\t\tfor ($i=1; $i <= $this->n; ++$i) {\n\t\t\t\t$this->_out(sprintf('%010d 00000 n ', $this->offsets[$i]));\n\t\t\t}\n\t\t\t// Embedded Files\n\t\t\tif (isset($this->embeddedfiles) AND count($this->embeddedfiles) > 0) {\n\t\t\t\t$this->_out($this->embedded_start_obj_id.' '.count($this->embeddedfiles));\n\t\t\t\tforeach ($this->embeddedfiles as $filename => $filedata) {\n\t\t\t\t\t$this->_out(sprintf('%010d 00000 n ', $this->offsets[$filedata['n']]));\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Annotation Objects\n\t\t\tif ($this->annot_obj_id > $this->annots_start_obj_id) {\n\t\t\t\t$this->_out(($this->annots_start_obj_id + 1).' '.($this->annot_obj_id - $this->annots_start_obj_id));\n\t\t\t\tfor ($i = ($this->annots_start_obj_id + 1); $i <= $this->annot_obj_id; ++$i) {\n\t\t\t\t\t$this->_out(sprintf('%010d 00000 n ', $this->offsets[$i]));\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Javascript Objects\n\t\t\tif ($this->js_obj_id > $this->js_start_obj_id) {\n\t\t\t\t$this->_out(($this->js_start_obj_id + 1).' '.($this->js_obj_id - $this->js_start_obj_id));\n\t\t\t\tfor ($i = ($this->js_start_obj_id + 1); $i <= $this->js_obj_id; ++$i) {\n\t\t\t\t\t$this->_out(sprintf('%010d 00000 n ', $this->offsets[$i]));\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Appearance streams XObjects\n\t\t\tif ($this->apxo_obj_id > $this->apxo_start_obj_id) {\n\t\t\t\t$this->_out(($this->apxo_start_obj_id + 1).' '.($this->apxo_obj_id - $this->apxo_start_obj_id));\n\t\t\t\tfor ($i = ($this->apxo_start_obj_id + 1); $i <= $this->apxo_obj_id; ++$i) {\n\t\t\t\t\t$this->_out(sprintf('%010d 00000 n ', $this->offsets[$i]));\n\t\t\t\t}\n\t\t\t}\n\t\t\t//Trailer\n\t\t\t$this->_puttrailer();\n\t\t\t$this->_out('startxref');\n\t\t\t$this->_out($o);\n\t\t\t$this->_out('%%EOF');\n\t\t\t$this->state = 3; // end-of-doc\n\t\t\tif ($this->diskcache) {\n\t\t\t\t// remove temporary files used for images\n\t\t\t\tforeach ($this->imagekeys as $key) {\n\t\t\t\t\t// remove temporary files\n\t\t\t\t\tunlink($this->images[$key]);\n\t\t\t\t}\n\t\t\t\tforeach ($this->fontkeys as $key) {\n\t\t\t\t\t// remove temporary files\n\t\t\t\t\tunlink($this->fonts[$key]);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Initialize a new page.\n\t\t * @param string $orientation page orientation. Possible values are (case insensitive):<ul><li>P or PORTRAIT (default)</li><li>L or LANDSCAPE</li></ul>\n\t\t * @param mixed $format The format used for pages. It can be either one of the following values (case insensitive) or a custom format in the form of a two-element array containing the width and the height (expressed in the unit given by unit).<ul><li>4A0</li><li>2A0</li><li>A0</li><li>A1</li><li>A2</li><li>A3</li><li>A4 (default)</li><li>A5</li><li>A6</li><li>A7</li><li>A8</li><li>A9</li><li>A10</li><li>B0</li><li>B1</li><li>B2</li><li>B3</li><li>B4</li><li>B5</li><li>B6</li><li>B7</li><li>B8</li><li>B9</li><li>B10</li><li>C0</li><li>C1</li><li>C2</li><li>C3</li><li>C4</li><li>C5</li><li>C6</li><li>C7</li><li>C8</li><li>C9</li><li>C10</li><li>RA0</li><li>RA1</li><li>RA2</li><li>RA3</li><li>RA4</li><li>SRA0</li><li>SRA1</li><li>SRA2</li><li>SRA3</li><li>SRA4</li><li>LETTER</li><li>LEGAL</li><li>EXECUTIVE</li><li>FOLIO</li></ul>\n\t\t * @access protected\n\t\t */\n\t\tprotected function _beginpage($orientation='', $format='') {\n\t\t\t++$this->page;\n\t\t\t$this->setPageBuffer($this->page, '');\n\t\t\t// initialize array for graphics tranformation positions inside a page buffer\n\t\t\t$this->transfmrk[$this->page] = array();\n\t\t\t$this->state = 2;\n\t\t\tif ($this->empty_string($orientation)) {\n\t\t\t\tif (isset($this->CurOrientation)) {\n\t\t\t\t\t$orientation = $this->CurOrientation;\n\t\t\t\t} else {\n\t\t\t\t\t$orientation = 'P';\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ($this->empty_string($format)) {\n\t\t\t\t$this->setPageOrientation($orientation);\n\t\t\t} else {\n\t\t\t\t$this->setPageFormat($format, $orientation);\n\t\t\t}\n\t\t\tif ($this->rtl) {\n\t\t\t\t$this->x = $this->w - $this->rMargin;\n\t\t\t} else {\n\t\t\t\t$this->x = $this->lMargin;\n\t\t\t}\n\t\t\t$this->y = $this->tMargin;\n\t\t\tif (isset($this->newpagegroup[$this->page])) {\n\t\t\t\t// start a new group\n\t\t\t\t$n = sizeof($this->pagegroups) + 1;\n\t\t\t\t$alias = '{nb'.$n.'}';\n\t\t\t\t$this->pagegroups[$alias] = 1;\n\t\t\t\t$this->currpagegroup = $alias;\n\t\t\t} elseif ($this->currpagegroup) {\n\t\t\t\t++$this->pagegroups[$this->currpagegroup];\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Mark end of page.\n\t\t * @access protected\n\t\t */\n\t\tprotected function _endpage() {\n\t\t\t$this->setVisibility('all');\n\t\t\t$this->state = 1;\n\t\t}\n\n\t\t/**\n\t\t * Begin a new object and return the object number.\n\t\t * @return int object number\n\t\t * @access protected\n\t\t */\n\t\tprotected function _newobj() {\n\t\t\t++$this->n;\n\t\t\t$this->offsets[$this->n] = $this->bufferlen;\n\t\t\t$this->_out($this->n.' 0 obj');\n\t\t\treturn $this->n;\n\t\t}\n\n\t\t/**\n\t\t * Underline text.\n\t\t * @param int $x X coordinate\n\t\t * @param int $y Y coordinate\n\t\t * @param string $txt text to underline\n\t\t * @access protected\n\t\t */\n\t\tprotected function _dounderline($x, $y, $txt) {\n\t\t\t$w = $this->GetStringWidth($txt);\n\t\t\treturn $this->_dounderlinew($x, $y, $w);\n\t\t}\n\n\t\t/**\n\t\t * Underline for rectangular text area.\n\t\t * @param int $x X coordinate\n\t\t * @param int $y Y coordinate\n\t\t * @param int $w width to underline\n\t\t * @access protected\n\t\t * @since 4.8.008 (2009-09-29)\n\t\t */\n\t\tprotected function _dounderlinew($x, $y, $w) {\n\t\t\t$linew = - $this->CurrentFont['ut'] / 1000 * $this->FontSizePt;\n\t\t\treturn sprintf('%.2F %.2F %.2F %.2F re f', $x * $this->k, ($this->h - $y + ($linew / 2)) * $this->k, $w * $this->k, $linew);\n\t\t}\n\n\t\t/**\n\t\t * Line through text.\n\t\t * @param int $x X coordinate\n\t\t * @param int $y Y coordinate\n\t\t * @param string $txt text to linethrough\n\t\t * @access protected\n\t\t */\n\t\tprotected function _dolinethrough($x, $y, $txt) {\n\t\t\t$w = $this->GetStringWidth($txt);\n\t\t\treturn $this->_dolinethroughw($x, $y, $w);\n\t\t}\n\n\t\t/**\n\t\t * Line through for rectangular text area.\n\t\t * @param int $x X coordinate\n\t\t * @param int $y Y coordinate\n\t\t * @param string $txt text to linethrough\n\t\t * @access protected\n\t\t * @since 4.9.008 (2009-09-29)\n\t\t */\n\t\tprotected function _dolinethroughw($x, $y, $w) {\n\t\t\t$linew = - $this->CurrentFont['ut'] / 1000 * $this->FontSizePt;\n\t\t\treturn sprintf('%.2F %.2F %.2F %.2F re f', $x * $this->k, ($this->h - $y + ($this->FontSize / 3) + ($linew / 2)) * $this->k, $w * $this->k, $linew);\n\t\t}\n\n\t\t/**\n\t\t * Overline text.\n\t\t * @param int $x X coordinate\n\t\t * @param int $y Y coordinate\n\t\t * @param string $txt text to overline\n\t\t * @access protected\n\t\t * @since 4.9.015 (2010-04-19)\n\t\t */\n\t\tprotected function _dooverline($x, $y, $txt) {\n\t\t\t$w = $this->GetStringWidth($txt);\n\t\t\treturn $this->_dooverlinew($x, $y, $w);\n\t\t}\n\n\t\t/**\n\t\t * Overline for rectangular text area.\n\t\t * @param int $x X coordinate\n\t\t * @param int $y Y coordinate\n\t\t * @param int $w width to overline\n\t\t * @access protected\n\t\t * @since 4.9.015 (2010-04-19)\n\t\t */\n\t\tprotected function _dooverlinew($x, $y, $w) {\n\t\t\t$linew = - $this->CurrentFont['ut'] / 1000 * $this->FontSizePt;\n\t\t\treturn sprintf('%.2F %.2F %.2F %.2F re f', $x * $this->k, ($this->h - $y + $this->FontAscent - ($linew / 2)) * $this->k, $w * $this->k, $linew);\n\n\t\t}\n\n\t\t/**\n\t\t * Read a 4-byte integer from file.\n\t\t * @param string $f file name.\n\t\t * @return 4-byte integer\n\t\t * @access protected\n\t\t */\n\t\tprotected function _freadint($f) {\n\t\t\t$a = unpack('Ni', fread($f, 4));\n\t\t\treturn $a['i'];\n\t\t}\n\n\t\t/**\n\t\t * Add \"\\\" before \"\\\", \"(\" and \")\"\n\t\t * @param string $s string to escape.\n\t\t * @return string escaped string.\n\t\t * @access protected\n\t\t */\n\t\tprotected function _escape($s) {\n\t\t\t// the chr(13) substitution fixes the Bugs item #1421290.\n\t\t\treturn strtr($s, array(')' => '\\\\)', '(' => '\\\\(', '\\\\' => '\\\\\\\\', chr(13) => '\\r'));\n\t\t}\n\n\t\t/**\n\t\t * Format a data string for meta information\n\t\t * @param string $s data string to escape.\n\t\t * @return string escaped string.\n\t\t * @access protected\n\t\t */\n\t\tprotected function _datastring($s) {\n\t\t\tif ($this->encrypted) {\n\t\t\t\t$s = $this->_RC4($this->_objectkey($this->n), $s);\n\t\t\t}\n\t\t\treturn '('. $this->_escape($s).')';\n\t\t}\n\n\t\t/**\n\t\t * Format a data string for annotation objects\n\t\t * @param string $s data string to escape.\n\t\t * @return string escaped string.\n\t\t * @access protected\n\t\t */\n\t\tprotected function _dataannobjstring($s) {\n\t\t\tif ($this->encrypted) {\n\t\t\t\t$s = $this->_RC4($this->_objectkey($this->annot_obj_id + 1), $s);\n\t\t\t}\n\t\t\treturn '('. $this->_escape($s).')';\n\t\t}\n\n\t\t/**\n\t\t * Returns a formatted date for meta information\n\t\t * @return string escaped date string.\n\t\t * @access protected\n\t\t * @since 4.6.028 (2009-08-25)\n\t\t */\n\t\tprotected function _datestring() {\n\t\t\t$current_time = substr_replace(date('YmdHisO'), '\\'', (0 - 2), 0).'\\'';\n\t\t\treturn $this->_datastring('D:'.$current_time);\n\t\t}\n\n\t\t/**\n\t\t * Format a text string for meta information\n\t\t * @param string $s string to escape.\n\t\t * @return string escaped string.\n\t\t * @access protected\n\t\t */\n\t\tprotected function _textstring($s) {\n\t\t\tif ($this->isunicode) {\n\t\t\t\t//Convert string to UTF-16BE\n\t\t\t\t$s = $this->UTF8ToUTF16BE($s, true);\n\t\t\t}\n\t\t\treturn $this->_datastring($s);\n\t\t}\n\n\t\t/**\n\t\t * Format a UTF-8 text string for meta information on annotations\n\t\t * @param string $s string to escape.\n\t\t * @return string escaped string.\n\t\t * @access protected\n\t\t */\n\t\tprotected function _textannobjstring($s) {\n\t\t\tif ($this->isunicode) {\n\t\t\t\t//Convert string to UTF-16BE\n\t\t\t\t$s = $this->UTF8ToUTF16BE($s, true);\n\t\t\t}\n\t\t\treturn $this->_dataannobjstring($s);\n\t\t}\n\n\t\t/**\n\t\t * Format a text string\n\t\t * @param string $s string to escape.\n\t\t * @return string escaped string.\n\t\t * @access protected\n\t\t */\n\t\tprotected function _escapetext($s) {\n\t\t\tif ($this->isunicode) {\n\t\t\t\tif (($this->CurrentFont['type'] == 'core') OR ($this->CurrentFont['type'] == 'TrueType') OR ($this->CurrentFont['type'] == 'Type1')) {\n\t\t\t\t\t$s = $this->UTF8ToLatin1($s);\n\t\t\t\t} else {\n\t\t\t\t\t//Convert string to UTF-16BE and reverse RTL language\n\t\t\t\t\t$s = $this->utf8StrRev($s, false, $this->tmprtl);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $this->_escape($s);\n\t\t}\n\n\t\t/**\n\t\t * Format output stream.\n\t\t * @param string $s string to output.\n\t\t * @param int $n object reference for encryption mode\n\t\t * @access protected\n\t\t */\n\t\tprotected function _getstream($s, $n=0) {\n\t\t\tif ($this->encrypted) {\n\t\t\t\tif ($n <= 0) {\n\t\t\t\t\t// default to current object\n\t\t\t\t\t$n = $this->n;\n\t\t\t\t}\n\t\t\t\t$s = $this->_RC4($this->_objectkey($n), $s);\n\t\t\t}\n\t\t\treturn \"stream\\n\".$s.\"\\nendstream\";\n\t\t}\n\n\t\t/**\n\t\t * Output a stream.\n\t\t * @param string $s string to output.\n\t\t * @param int $n object reference for encryption mode\n\t\t * @access protected\n\t\t */\n\t\tprotected function _putstream($s, $n=0) {\n\t\t\t$this->_out($this->_getstream($s, $n));\n\t\t}\n\n\t\t/**\n\t\t * Output a string to the document.\n\t\t * @param string $s string to output.\n\t\t * @access protected\n\t\t */\n\t\tprotected function _out($s) {\n\t\t\tif ($this->state == 2) {\n\t\t\t\tif ((!$this->InFooter) AND isset($this->footerlen[$this->page]) AND ($this->footerlen[$this->page] > 0)) {\n\t\t\t\t\t// puts data before page footer\n\t\t\t\t\t$pagebuff = $this->getPageBuffer($this->page);\n\t\t\t\t\t$page = substr($pagebuff, 0, -$this->footerlen[$this->page]);\n\t\t\t\t\t$footer = substr($pagebuff, -$this->footerlen[$this->page]);\n\t\t\t\t\t$this->setPageBuffer($this->page, $page.$s.\"\\n\".$footer);\n\t\t\t\t\t// update footer position\n\t\t\t\t\t$this->footerpos[$this->page] += strlen($s.\"\\n\");\n\t\t\t\t} else {\n\t\t\t\t\t$this->setPageBuffer($this->page, $s.\"\\n\", true);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t$this->setBuffer($s.\"\\n\");\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Converts UTF-8 strings to codepoints array.<br>\n\t\t * Invalid byte sequences will be replaced with 0xFFFD (replacement character)<br>\n\t\t * Based on: http://www.faqs.org/rfcs/rfc3629.html\n\t\t * <pre>\n\t\t *    Char. number range  |        UTF-8 octet sequence\n\t\t *       (hexadecimal)    |              (binary)\n\t\t *    --------------------+-----------------------------------------------\n\t\t *    0000 0000-0000 007F | 0xxxxxxx\n\t\t *    0000 0080-0000 07FF | 110xxxxx 10xxxxxx\n\t\t *    0000 0800-0000 FFFF | 1110xxxx 10xxxxxx 10xxxxxx\n\t\t *    0001 0000-0010 FFFF | 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx\n\t\t *    ---------------------------------------------------------------------\n\t\t *\n\t\t *   ABFN notation:\n\t\t *   ---------------------------------------------------------------------\n\t\t *   UTF8-octets = *( UTF8-char )\n\t\t *   UTF8-char   = UTF8-1 / UTF8-2 / UTF8-3 / UTF8-4\n\t\t *   UTF8-1      = %x00-7F\n\t\t *   UTF8-2      = %xC2-DF UTF8-tail\n\t\t *\n\t\t *   UTF8-3      = %xE0 %xA0-BF UTF8-tail / %xE1-EC 2( UTF8-tail ) /\n\t\t *                 %xED %x80-9F UTF8-tail / %xEE-EF 2( UTF8-tail )\n\t\t *   UTF8-4      = %xF0 %x90-BF 2( UTF8-tail ) / %xF1-F3 3( UTF8-tail ) /\n\t\t *                 %xF4 %x80-8F 2( UTF8-tail )\n\t\t *   UTF8-tail   = %x80-BF\n\t\t *   ---------------------------------------------------------------------\n\t\t * </pre>\n\t\t * @param string $str string to process.\n\t\t * @return array containing codepoints (UTF-8 characters values)\n\t\t * @access protected\n\t\t * @author Nicola Asuni\n\t\t * @since 1.53.0.TC005 (2005-01-05)\n\t\t */\n\t\tprotected function UTF8StringToArray($str) {\n\t\t\tif (isset($this->cache_UTF8StringToArray['_'.$str])) {\n\t\t\t\t// return cached value\n\t\t\t\treturn($this->cache_UTF8StringToArray['_'.$str]);\n\t\t\t}\n\t\t\t// check cache size\n\t\t\tif ($this->cache_size_UTF8StringToArray >= $this->cache_maxsize_UTF8StringToArray) {\n\t\t\t\t// remove first element\n\t\t\t\tarray_shift($this->cache_UTF8StringToArray);\n\t\t\t}\n\t\t\t++$this->cache_size_UTF8StringToArray;\n\t\t\tif (!$this->isunicode) {\n\t\t\t\t// split string into array of equivalent codes\n\t\t\t\t$strarr = array();\n\t\t\t\t$strlen = strlen($str);\n\t\t\t\tfor ($i=0; $i < $strlen; ++$i) {\n\t\t\t\t\t$strarr[] = ord($str{$i});\n\t\t\t\t}\n\t\t\t\t// insert new value on cache\n\t\t\t\t$this->cache_UTF8StringToArray['_'.$str] = $strarr;\n\t\t\t\treturn $strarr;\n\t\t\t}\n\t\t\t$unicode = array(); // array containing unicode values\n\t\t\t$bytes  = array(); // array containing single character byte sequences\n\t\t\t$numbytes  = 1; // number of octetc needed to represent the UTF-8 character\n\t\t\t$str .= ''; // force $str to be a string\n\t\t\t$length = strlen($str);\n\t\t\tfor ($i = 0; $i < $length; ++$i) {\n\t\t\t\t$char = ord($str{$i}); // get one string character at time\n\t\t\t\tif (count($bytes) == 0) { // get starting octect\n\t\t\t\t\tif ($char <= 0x7F) {\n\t\t\t\t\t\t$unicode[] = $char; // use the character \"as is\" because is ASCII\n\t\t\t\t\t\t$numbytes = 1;\n\t\t\t\t\t} elseif (($char >> 0x05) == 0x06) { // 2 bytes character (0x06 = 110 BIN)\n\t\t\t\t\t\t$bytes[] = ($char - 0xC0) << 0x06;\n\t\t\t\t\t\t$numbytes = 2;\n\t\t\t\t\t} elseif (($char >> 0x04) == 0x0E) { // 3 bytes character (0x0E = 1110 BIN)\n\t\t\t\t\t\t$bytes[] = ($char - 0xE0) << 0x0C;\n\t\t\t\t\t\t$numbytes = 3;\n\t\t\t\t\t} elseif (($char >> 0x03) == 0x1E) { // 4 bytes character (0x1E = 11110 BIN)\n\t\t\t\t\t\t$bytes[] = ($char - 0xF0) << 0x12;\n\t\t\t\t\t\t$numbytes = 4;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// use replacement character for other invalid sequences\n\t\t\t\t\t\t$unicode[] = 0xFFFD;\n\t\t\t\t\t\t$bytes = array();\n\t\t\t\t\t\t$numbytes = 1;\n\t\t\t\t\t}\n\t\t\t\t} elseif (($char >> 0x06) == 0x02) { // bytes 2, 3 and 4 must start with 0x02 = 10 BIN\n\t\t\t\t\t$bytes[] = $char - 0x80;\n\t\t\t\t\tif (count($bytes) == $numbytes) {\n\t\t\t\t\t\t// compose UTF-8 bytes to a single unicode value\n\t\t\t\t\t\t$char = $bytes[0];\n\t\t\t\t\t\tfor ($j = 1; $j < $numbytes; ++$j) {\n\t\t\t\t\t\t\t$char += ($bytes[$j] << (($numbytes - $j - 1) * 0x06));\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ((($char >= 0xD800) AND ($char <= 0xDFFF)) OR ($char >= 0x10FFFF)) {\n\t\t\t\t\t\t\t/* The definition of UTF-8 prohibits encoding character numbers between\n\t\t\t\t\t\t\tU+D800 and U+DFFF, which are reserved for use with the UTF-16\n\t\t\t\t\t\t\tencoding form (as surrogate pairs) and do not directly represent\n\t\t\t\t\t\t\tcharacters. */\n\t\t\t\t\t\t\t$unicode[] = 0xFFFD; // use replacement character\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$unicode[] = $char; // add char to array\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// reset data for next char\n\t\t\t\t\t\t$bytes = array();\n\t\t\t\t\t\t$numbytes = 1;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t// use replacement character for other invalid sequences\n\t\t\t\t\t$unicode[] = 0xFFFD;\n\t\t\t\t\t$bytes = array();\n\t\t\t\t\t$numbytes = 1;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// insert new value on cache\n\t\t\t$this->cache_UTF8StringToArray['_'.$str] = $unicode;\n\t\t\treturn $unicode;\n\t\t}\n\n\t\t/**\n\t\t * Converts UTF-8 strings to UTF16-BE.<br>\n\t\t * @param string $str string to process.\n\t\t * @param boolean $setbom if true set the Byte Order Mark (BOM = 0xFEFF)\n\t\t * @return string\n\t\t * @access protected\n\t\t * @author Nicola Asuni\n\t\t * @since 1.53.0.TC005 (2005-01-05)\n\t\t * @uses UTF8StringToArray(), arrUTF8ToUTF16BE()\n\t\t */\n\t\tprotected function UTF8ToUTF16BE($str, $setbom=true) {\n\t\t\tif (!$this->isunicode) {\n\t\t\t\treturn $str; // string is not in unicode\n\t\t\t}\n\t\t\t$unicode = $this->UTF8StringToArray($str); // array containing UTF-8 unicode values\n\t\t\treturn $this->arrUTF8ToUTF16BE($unicode, $setbom);\n\t\t}\n\n\t\t/**\n\t\t * Converts UTF-8 strings to Latin1 when using the standard 14 core fonts.<br>\n\t\t * @param string $str string to process.\n\t\t * @return string\n\t\t * @author Andrew Whitehead, Nicola Asuni\n\t\t * @access protected\n\t\t * @since 3.2.000 (2008-06-23)\n\t\t */\n\t\tprotected function UTF8ToLatin1($str) {\n\t\t\tglobal $utf8tolatin;\n\t\t\tif (!$this->isunicode) {\n\t\t\t\treturn $str; // string is not in unicode\n\t\t\t}\n\t\t\t$outstr = ''; // string to be returned\n\t\t\t$unicode = $this->UTF8StringToArray($str); // array containing UTF-8 unicode values\n\t\t\tforeach ($unicode as $char) {\n\t\t\t\tif ($char < 256) {\n\t\t\t\t\t$outstr .= chr($char);\n\t\t\t\t} elseif (array_key_exists($char, $utf8tolatin)) {\n\t\t\t\t\t// map from UTF-8\n\t\t\t\t\t$outstr .= chr($utf8tolatin[$char]);\n\t\t\t\t} elseif ($char == 0xFFFD) {\n\t\t\t\t\t// skip\n\t\t\t\t} else {\n\t\t\t\t\t$outstr .= '?';\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $outstr;\n\t\t}\n\n\t\t/**\n\t\t * Converts UTF-8 characters array to array of Latin1 characters<br>\n\t\t * @param array $unicode array containing UTF-8 unicode values\n\t\t * @return array\n\t\t * @author Nicola Asuni\n\t\t * @access protected\n\t\t * @since 4.8.023 (2010-01-15)\n\t\t */\n\t\tprotected function UTF8ArrToLatin1($unicode) {\n\t\t\tglobal $utf8tolatin;\n\t\t\tif ((!$this->isunicode) OR ($this->CurrentFont['type'] == 'TrueTypeUnicode') OR ($this->CurrentFont['type'] == 'cidfont0')) {\n\t\t\t\treturn $unicode; // string is not in unicode\n\t\t\t}\n\t\t\t$outarr = array(); // array to be returned\n\t\t\tforeach ($unicode as $char) {\n\t\t\t\tif ($char < 256) {\n\t\t\t\t\t$outarr[] = $char;\n\t\t\t\t} elseif (array_key_exists($char, $utf8tolatin)) {\n\t\t\t\t\t// map from UTF-8\n\t\t\t\t\t$outarr[] = $utf8tolatin[$char];\n\t\t\t\t} elseif ($char == 0xFFFD) {\n\t\t\t\t\t// skip\n\t\t\t\t} else {\n\t\t\t\t\t$outarr[] = 63; // '?' character\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $outarr;\n\t\t}\n\n\t\t/**\n\t\t * Converts array of UTF-8 characters to UTF16-BE string.<br>\n\t\t * Based on: http://www.faqs.org/rfcs/rfc2781.html\n\t \t * <pre>\n\t\t *   Encoding UTF-16:\n\t\t *\n \t\t *   Encoding of a single character from an ISO 10646 character value to\n\t\t *    UTF-16 proceeds as follows. Let U be the character number, no greater\n\t\t *    than 0x10FFFF.\n\t\t *\n\t\t *    1) If U < 0x10000, encode U as a 16-bit unsigned integer and\n\t\t *       terminate.\n\t\t *\n\t\t *    2) Let U' = U - 0x10000. Because U is less than or equal to 0x10FFFF,\n\t\t *       U' must be less than or equal to 0xFFFFF. That is, U' can be\n\t\t *       represented in 20 bits.\n\t\t *\n\t\t *    3) Initialize two 16-bit unsigned integers, W1 and W2, to 0xD800 and\n\t\t *       0xDC00, respectively. These integers each have 10 bits free to\n\t\t *       encode the character value, for a total of 20 bits.\n\t\t *\n\t\t *    4) Assign the 10 high-order bits of the 20-bit U' to the 10 low-order\n\t\t *       bits of W1 and the 10 low-order bits of U' to the 10 low-order\n\t\t *       bits of W2. Terminate.\n\t\t *\n\t\t *    Graphically, steps 2 through 4 look like:\n\t\t *    U' = yyyyyyyyyyxxxxxxxxxx\n\t\t *    W1 = 110110yyyyyyyyyy\n\t\t *    W2 = 110111xxxxxxxxxx\n\t\t * </pre>\n\t\t * @param array $unicode array containing UTF-8 unicode values\n\t\t * @param boolean $setbom if true set the Byte Order Mark (BOM = 0xFEFF)\n\t\t * @return string\n\t\t * @access protected\n\t\t * @author Nicola Asuni\n\t\t * @since 2.1.000 (2008-01-08)\n\t\t * @see UTF8ToUTF16BE()\n\t\t */\n\t\tprotected function arrUTF8ToUTF16BE($unicode, $setbom=true) {\n\t\t\t$outstr = ''; // string to be returned\n\t\t\tif ($setbom) {\n\t\t\t\t$outstr .= \"\\xFE\\xFF\"; // Byte Order Mark (BOM)\n\t\t\t}\n\t\t\tforeach ($unicode as $char) {\n\t\t\t\tif ($char == 0xFFFD) {\n\t\t\t\t\t$outstr .= \"\\xFF\\xFD\"; // replacement character\n\t\t\t\t} elseif ($char < 0x10000) {\n\t\t\t\t\t$outstr .= chr($char >> 0x08);\n\t\t\t\t\t$outstr .= chr($char & 0xFF);\n\t\t\t\t} else {\n\t\t\t\t\t$char -= 0x10000;\n\t\t\t\t\t$w1 = 0xD800 | ($char >> 0x10);\n\t\t\t\t\t$w2 = 0xDC00 | ($char & 0x3FF);\n\t\t\t\t\t$outstr .= chr($w1 >> 0x08);\n\t\t\t\t\t$outstr .= chr($w1 & 0xFF);\n\t\t\t\t\t$outstr .= chr($w2 >> 0x08);\n\t\t\t\t\t$outstr .= chr($w2 & 0xFF);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $outstr;\n\t\t}\n\t\t// ====================================================\n\n\t\t/**\n\t \t * Set header font.\n\t\t * @param array $font font\n\t\t * @access public\n\t\t * @since 1.1\n\t\t */\n\t\tpublic function setHeaderFont($font) {\n\t\t\t$this->header_font = $font;\n\t\t}\n\n\t\t/**\n\t \t * Get header font.\n\t \t * @return array()\n\t\t * @access public\n\t\t * @since 4.0.012 (2008-07-24)\n\t\t */\n\t\tpublic function getHeaderFont() {\n\t\t\treturn $this->header_font;\n\t\t}\n\n\t\t/**\n\t \t * Set footer font.\n\t\t * @param array $font font\n\t\t * @access public\n\t\t * @since 1.1\n\t\t */\n\t\tpublic function setFooterFont($font) {\n\t\t\t$this->footer_font = $font;\n\t\t}\n\n\t\t/**\n\t \t * Get Footer font.\n\t \t * @return array()\n\t\t * @access public\n\t\t * @since 4.0.012 (2008-07-24)\n\t\t */\n\t\tpublic function getFooterFont() {\n\t\t\treturn $this->footer_font;\n\t\t}\n\n\t\t/**\n\t \t * Set language array.\n\t\t * @param array $language\n\t\t * @access public\n\t\t * @since 1.1\n\t\t */\n\t\tpublic function setLanguageArray($language) {\n\t\t\t$this->l = $language;\n\t\t\tif (isset($this->l['a_meta_dir'])) {\n\t\t\t\t$this->rtl = $this->l['a_meta_dir']=='rtl' ? true : false;\n\t\t\t} else {\n\t\t\t\t$this->rtl = false;\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Returns the PDF data.\n\t\t * @access public\n\t\t */\n\t\tpublic function getPDFData() {\n\t\t\tif ($this->state < 3) {\n\t\t\t\t$this->Close();\n\t\t\t}\n\t\t\treturn $this->buffer;\n\t\t}\n\n\t\t/**\n\t\t * Output anchor link.\n\t\t * @param string $url link URL or internal link (i.e.: &lt;a href=\"#23\"&gt;link to page 23&lt;/a&gt;)\n\t\t * @param string $name link name\n\t\t * @param int $fill Indicates if the cell background must be painted (1) or transparent (0). Default value: 0.\n\t\t * @param boolean $firstline if true prints only the first line and return the remaining string.\n\t\t * @param array $color array of RGB text color\n\t\t * @param string $style font style (U, D, B, I)\n\t\t * @param boolean $firstblock if true the string is the starting of a line.\n\t\t * @return the number of cells used or the remaining text if $firstline = true;\n\t\t * @access public\n\t\t */\n\t\tpublic function addHtmlLink($url, $name, $fill=0, $firstline=false, $color='', $style=-1, $firstblock=false) {\n\t\t\tif (!$this->empty_string($url) AND ($url{0} == '#')) {\n\t\t\t\t// convert url to internal link\n\t\t\t\t$page = intval(substr($url, 1));\n\t\t\t\t$url = $this->AddLink();\n\t\t\t\t$this->SetLink($url, 0, $page);\n\t\t\t}\n\t\t\t// store current settings\n\t\t\t$prevcolor = $this->fgcolor;\n\t\t\t$prevstyle = $this->FontStyle;\n\t\t\tif (empty($color)) {\n\t\t\t\t$this->SetTextColorArray($this->htmlLinkColorArray);\n\t\t\t} else {\n\t\t\t\t$this->SetTextColorArray($color);\n\t\t\t}\n\t\t\tif ($style == -1) {\n\t\t\t\t$this->SetFont('', $this->FontStyle.$this->htmlLinkFontStyle);\n\t\t\t} else {\n\t\t\t\t$this->SetFont('', $this->FontStyle.$style);\n\t\t\t}\n\t\t\t$ret = $this->Write($this->lasth, $name, $url, $fill, '', false, 0, $firstline, $firstblock, 0);\n\t\t\t// restore settings\n\t\t\t$this->SetFont('', $prevstyle);\n\t\t\t$this->SetTextColorArray($prevcolor);\n\t\t\treturn $ret;\n\t\t}\n\n\t\t/**\n\t\t * Returns an associative array (keys: R,G,B) from an html color name or a six-digit or three-digit hexadecimal color representation (i.e. #3FE5AA or #7FF).\n\t\t * @param string $color html color\n\t\t * @return array RGB color or false in case of error.\n\t\t * @access public\n\t\t */\n\t\tpublic function convertHTMLColorToDec($color='#FFFFFF') {\n\t\t\tglobal $webcolor;\n\t\t\t$returncolor = false;\n\t\t\t$color = preg_replace('/[\\s]*/', '', $color); // remove extra spaces\n\t\t\t$color = strtolower($color);\n\t\t\tif (($dotpos = strpos($color, '.')) !== false) {\n\t\t\t\t// remove class parent (i.e.: color.red)\n\t\t\t\t$color = substr($color, ($dotpos + 1));\n\t\t\t}\n\t\t\tif (strlen($color) == 0) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tif (substr($color, 0, 3) == 'rgb') {\n\t\t\t\t$codes = substr($color, 4);\n\t\t\t\t$codes = str_replace(')', '', $codes);\n\t\t\t\t$returncolor = explode(',', $codes, 3);\n\t\t\t\treturn $returncolor;\n\t\t\t}\n\t\t\tif (substr($color, 0, 1) != '#') {\n\t\t\t\t// decode color name\n\t\t\t\tif (isset($webcolor[$color])) {\n\t\t\t\t\t$color_code = $webcolor[$color];\n\t\t\t\t} else {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t$color_code = substr($color, 1);\n\t\t\t}\n\t\t\tswitch (strlen($color_code)) {\n\t\t\t\tcase 3: {\n\t\t\t\t\t// three-digit hexadecimal representation\n\t\t\t\t\t$r = substr($color_code, 0, 1);\n\t\t\t\t\t$g = substr($color_code, 1, 1);\n\t\t\t\t\t$b = substr($color_code, 2, 1);\n\t\t\t\t\t$returncolor['R'] = hexdec($r.$r);\n\t\t\t\t\t$returncolor['G'] = hexdec($g.$g);\n\t\t\t\t\t$returncolor['B'] = hexdec($b.$b);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 6: {\n\t\t\t\t\t// six-digit hexadecimal representation\n\t\t\t\t\t$returncolor['R'] = hexdec(substr($color_code, 0, 2));\n\t\t\t\t\t$returncolor['G'] = hexdec(substr($color_code, 2, 2));\n\t\t\t\t\t$returncolor['B'] = hexdec(substr($color_code, 4, 2));\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $returncolor;\n\t\t}\n\n\t\t/**\n\t\t * Converts pixels to User's Units.\n\t\t * @param int $px pixels\n\t\t * @return float value in user's unit\n\t\t * @access public\n\t\t * @see setImageScale(), getImageScale()\n\t\t */\n\t\tpublic function pixelsToUnits($px) {\n\t\t\treturn ($px / ($this->imgscale * $this->k));\n\t\t}\n\n\t\t/**\n\t\t * Reverse function for htmlentities.\n\t\t * Convert entities in UTF-8.\n\t\t * @param $text_to_convert Text to convert.\n\t\t * @return string converted\n\t\t * @access public\n\t\t */\n\t\tpublic function unhtmlentities($text_to_convert) {\n\t\t\treturn html_entity_decode($text_to_convert, ENT_QUOTES, $this->encoding);\n\t\t}\n\n\t\t// ENCRYPTION METHODS ----------------------------------\n\t\t// SINCE 2.0.000 (2008-01-02)\n\n\t\t/**\n\t\t * Compute encryption key depending on object number where the encrypted data is stored\n\t\t * @param int $n object number\n\t\t * @access protected\n\t\t * @since 2.0.000 (2008-01-02)\n\t\t */\n\t\tprotected function _objectkey($n) {\n\t\t\treturn substr($this->_md5_16($this->encryption_key.pack('VXxx', $n)), 0, 10);\n\t\t}\n\n\t\t/**\n\t\t * Put encryption on PDF document.\n\t\t * @access protected\n\t\t * @since 2.0.000 (2008-01-02)\n\t\t */\n\t\tprotected function _putencryption() {\n\t\t\tif (!$this->encrypted) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t$this->_newobj();\n\t\t\t$this->enc_obj_id = $this->n;\n\t\t\t$out = '<< /Filter /Standard /V 1 /R 2';\n\t\t\t$out .= ' /O ('.$this->_escape($this->Ovalue).')';\n\t\t\t$out .= ' /U ('.$this->_escape($this->Uvalue).')';\n\t\t\t$out .= ' /P '.$this->Pvalue;\n\t\t\t$out .= ' >> endobj';\n\t\t\t$this->_out($out);\n\t\t}\n\n\t\t/**\n\t\t * Returns the input text exrypted using RC4 algorithm and the specified key.\n\t\t * RC4 is the standard encryption algorithm used in PDF format\n\t\t * @param string $key encryption key\n\t\t * @param String $text input text to be encrypted\n\t\t * @return String encrypted text\n\t\t * @access protected\n\t\t * @since 2.0.000 (2008-01-02)\n\t\t * @author Klemen Vodopivec\n\t\t */\n\t\tprotected function _RC4($key, $text) {\n\t\t\tif ($this->last_rc4_key != $key) {\n\t\t\t\t$k = str_repeat($key, ((256 / strlen($key)) + 1));\n\t\t\t\t$rc4 = range(0, 255);\n\t\t\t\t$j = 0;\n\t\t\t\tfor ($i = 0; $i < 256; ++$i) {\n\t\t\t\t\t$t = $rc4[$i];\n\t\t\t\t\t$j = ($j + $t + ord($k{$i})) % 256;\n\t\t\t\t\t$rc4[$i] = $rc4[$j];\n\t\t\t\t\t$rc4[$j] = $t;\n\t\t\t\t}\n\t\t\t\t$this->last_rc4_key = $key;\n\t\t\t\t$this->last_rc4_key_c = $rc4;\n\t\t\t} else {\n\t\t\t\t$rc4 = $this->last_rc4_key_c;\n\t\t\t}\n\t\t\t$len = strlen($text);\n\t\t\t$a = 0;\n\t\t\t$b = 0;\n\t\t\t$out = '';\n\t\t\tfor ($i = 0; $i < $len; ++$i) {\n\t\t\t\t$a = ($a + 1) % 256;\n\t\t\t\t$t = $rc4[$a];\n\t\t\t\t$b = ($b + $t) % 256;\n\t\t\t\t$rc4[$a] = $rc4[$b];\n\t\t\t\t$rc4[$b] = $t;\n\t\t\t\t$k = $rc4[($rc4[$a] + $rc4[$b]) % 256];\n\t\t\t\t$out .= chr(ord($text{$i}) ^ $k);\n\t\t\t}\n\t\t\treturn $out;\n\t\t}\n\n\t\t/**\n\t\t * Encrypts a string using MD5 and returns it's value as a binary string.\n\t\t * @param string $str input string\n\t\t * @return String MD5 encrypted binary string\n\t\t * @access protected\n\t\t * @since 2.0.000 (2008-01-02)\n\t\t * @author Klemen Vodopivec\n\t\t */\n\t\tprotected function _md5_16($str) {\n\t\t\treturn pack('H*', md5($str));\n\t\t}\n\n\t\t/**\n\t\t * Compute O value (used for RC4 encryption)\n\t\t * @param String $user_pass user password\n\t\t * @param String $owner_pass user password\n\t\t * @return String O value\n\t\t * @access protected\n\t\t * @since 2.0.000 (2008-01-02)\n\t\t * @author Klemen Vodopivec\n\t\t */\n\t\tprotected function _Ovalue($user_pass, $owner_pass) {\n\t\t\t$tmp = $this->_md5_16($owner_pass);\n\t\t\t$owner_RC4_key = substr($tmp, 0, 5);\n\t\t\treturn $this->_RC4($owner_RC4_key, $user_pass);\n\t\t}\n\n\t\t/**\n\t\t * Compute U value (used for RC4 encryption)\n\t\t * @return String U value\n\t\t * @access protected\n\t\t * @since 2.0.000 (2008-01-02)\n\t\t * @author Klemen Vodopivec\n\t\t */\n\t\tprotected function _Uvalue() {\n\t\t\treturn $this->_RC4($this->encryption_key, $this->padding);\n\t\t}\n\n\t\t/**\n\t\t * Compute encryption key\n\t\t * @param String $user_pass user password\n\t\t * @param String $owner_pass user password\n\t\t * @param String $protection protection type\n\t\t * @access protected\n\t\t * @since 2.0.000 (2008-01-02)\n\t\t * @author Klemen Vodopivec\n\t\t */\n\t\tprotected function _generateencryptionkey($user_pass, $owner_pass, $protection) {\n\t\t\t// Pad passwords\n\t\t\t$user_pass = substr($user_pass.$this->padding, 0, 32);\n\t\t\t$owner_pass = substr($owner_pass.$this->padding, 0, 32);\n\t\t\t// Compute O value\n\t\t\t$this->Ovalue = $this->_Ovalue($user_pass, $owner_pass);\n\t\t\t// Compute encyption key\n\t\t\t$tmp = $this->_md5_16($user_pass.$this->Ovalue.chr($protection).\"\\xFF\\xFF\\xFF\");\n\t\t\t$this->encryption_key = substr($tmp, 0, 5);\n\t\t\t// Compute U value\n\t\t\t$this->Uvalue = $this->_Uvalue();\n\t\t\t// Compute P value\n\t\t\t$this->Pvalue = -(($protection^255) + 1);\n\t\t}\n\n\t\t/**\n\t\t * Set document protection\n\t\t * The permission array is composed of values taken from the following ones:\n\t\t * - copy: copy text and images to the clipboard\n\t\t * - print: print the document\n\t\t * - modify: modify it (except for annotations and forms)\n\t\t * - annot-forms: add annotations and forms\n\t\t * Remark: the protection against modification is for people who have the full Acrobat product.\n\t\t * If you don't set any password, the document will open as usual. If you set a user password, the PDF viewer will ask for it before displaying the document. The master password, if different from the user one, can be used to get full access.\n\t\t * Note: protecting a document requires to encrypt it, which increases the processing time a lot. This can cause a PHP time-out in some cases, especially if the document contains images or fonts.\n\t\t * @param Array $permissions the set of permissions. Empty by default (only viewing is allowed). (print, modify, copy, annot-forms)\n\t\t * @param String $user_pass user password. Empty by default.\n\t\t * @param String $owner_pass owner password. If not specified, a random value is used.\n\t\t * @access public\n\t\t * @since 2.0.000 (2008-01-02)\n\t\t * @author Klemen Vodopivec\n\t\t */\n\t\tpublic function SetProtection($permissions=array(), $user_pass='', $owner_pass=null) {\n\t\t\t$options = array('print' => 4, 'modify' => 8, 'copy' => 16, 'annot-forms' => 32);\n\t\t\t$protection = 192;\n\t\t\tforeach ($permissions as $permission) {\n\t\t\t\tif (!isset($options[$permission])) {\n\t\t\t\t\t$this->Error('Incorrect permission: '.$permission);\n\t\t\t\t}\n\t\t\t\t$protection += $options[$permission];\n\t\t\t}\n\t\t\tif ($owner_pass === null) {\n\t\t\t\t$owner_pass = uniqid(rand());\n\t\t\t}\n\t\t\t$this->encrypted = true;\n\t\t\t$this->_generateencryptionkey($user_pass, $owner_pass, $protection);\n\t\t}\n\n\t\t// END OF ENCRYPTION FUNCTIONS -------------------------\n\n\t\t// START TRANSFORMATIONS SECTION -----------------------\n\n\t\t/**\n\t\t * Starts a 2D tranformation saving current graphic state.\n\t\t * This function must be called before scaling, mirroring, translation, rotation and skewing.\n\t\t * Use StartTransform() before, and StopTransform() after the transformations to restore the normal behavior.\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-07)\n\t\t * @see StartTransform(), StopTransform()\n\t\t */\n\t\tpublic function StartTransform() {\n\t\t\t$this->_out('q');\n\t\t\t$this->transfmrk[$this->page][] = $this->pagelen[$this->page];\n\t\t\t++$this->transfmatrix_key;\n\t\t\t$this->transfmatrix[$this->transfmatrix_key] = array();\n\t\t}\n\n\t\t/**\n\t\t * Stops a 2D tranformation restoring previous graphic state.\n\t\t * This function must be called after scaling, mirroring, translation, rotation and skewing.\n\t\t * Use StartTransform() before, and StopTransform() after the transformations to restore the normal behavior.\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-07)\n\t\t * @see StartTransform(), StopTransform()\n\t\t */\n\t\tpublic function StopTransform() {\n\t\t\t$this->_out('Q');\n\t\t\tif (isset($this->transfmatrix[$this->transfmatrix_key])) {\n\t\t\t\tarray_pop($this->transfmatrix[$this->transfmatrix_key]);\n\t\t\t\t--$this->transfmatrix_key;\n\t\t\t}\n\t\t\tarray_pop($this->transfmrk[$this->page]);\n\t\t}\n\t\t/**\n\t\t * Horizontal Scaling.\n\t\t * @param float $s_x scaling factor for width as percent. 0 is not allowed.\n\t\t * @param int $x abscissa of the scaling center. Default is current x position\n\t\t * @param int $y ordinate of the scaling center. Default is current y position\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-07)\n\t\t * @see StartTransform(), StopTransform()\n\t\t */\n\t\tpublic function ScaleX($s_x, $x='', $y='') {\n\t\t\t$this->Scale($s_x, 100, $x, $y);\n\t\t}\n\n\t\t/**\n\t\t * Vertical Scaling.\n\t\t * @param float $s_y scaling factor for height as percent. 0 is not allowed.\n\t\t * @param int $x abscissa of the scaling center. Default is current x position\n\t\t * @param int $y ordinate of the scaling center. Default is current y position\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-07)\n\t\t * @see StartTransform(), StopTransform()\n\t\t */\n\t\tpublic function ScaleY($s_y, $x='', $y='') {\n\t\t\t$this->Scale(100, $s_y, $x, $y);\n\t\t}\n\n\t\t/**\n\t\t * Vertical and horizontal proportional Scaling.\n\t\t * @param float $s scaling factor for width and height as percent. 0 is not allowed.\n\t\t * @param int $x abscissa of the scaling center. Default is current x position\n\t\t * @param int $y ordinate of the scaling center. Default is current y position\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-07)\n\t\t * @see StartTransform(), StopTransform()\n\t\t */\n\t\tpublic function ScaleXY($s, $x='', $y='') {\n\t\t\t$this->Scale($s, $s, $x, $y);\n\t\t}\n\n\t\t/**\n\t\t * Vertical and horizontal non-proportional Scaling.\n\t\t * @param float $s_x scaling factor for width as percent. 0 is not allowed.\n\t\t * @param float $s_y scaling factor for height as percent. 0 is not allowed.\n\t\t * @param int $x abscissa of the scaling center. Default is current x position\n\t\t * @param int $y ordinate of the scaling center. Default is current y position\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-07)\n\t\t * @see StartTransform(), StopTransform()\n\t\t */\n\t\tpublic function Scale($s_x, $s_y, $x='', $y='') {\n\t\t\tif ($x === '') {\n\t\t\t\t$x = $this->x;\n\t\t\t}\n\t\t\tif ($y === '') {\n\t\t\t\t$y = $this->y;\n\t\t\t}\n\t\t\tif (($s_x == 0) OR ($s_y == 0)) {\n\t\t\t\t$this->Error('Please do not use values equal to zero for scaling');\n\t\t\t}\n\t\t\t$y = ($this->h - $y) * $this->k;\n\t\t\t$x *= $this->k;\n\t\t\t//calculate elements of transformation matrix\n\t\t\t$s_x /= 100;\n\t\t\t$s_y /= 100;\n\t\t\t$tm[0] = $s_x;\n\t\t\t$tm[1] = 0;\n\t\t\t$tm[2] = 0;\n\t\t\t$tm[3] = $s_y;\n\t\t\t$tm[4] = $x * (1 - $s_x);\n\t\t\t$tm[5] = $y * (1 - $s_y);\n\t\t\t//scale the coordinate system\n\t\t\t$this->Transform($tm);\n\t\t}\n\n\t\t/**\n\t\t * Horizontal Mirroring.\n\t\t * @param int $x abscissa of the point. Default is current x position\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-07)\n\t\t * @see StartTransform(), StopTransform()\n\t\t */\n\t\tpublic function MirrorH($x='') {\n\t\t\t$this->Scale(-100, 100, $x);\n\t\t}\n\n\t\t/**\n\t\t * Verical Mirroring.\n\t\t * @param int $y ordinate of the point. Default is current y position\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-07)\n\t\t * @see StartTransform(), StopTransform()\n\t\t */\n\t\tpublic function MirrorV($y='') {\n\t\t\t$this->Scale(100, -100, '', $y);\n\t\t}\n\n\t\t/**\n\t\t * Point reflection mirroring.\n\t\t * @param int $x abscissa of the point. Default is current x position\n\t\t * @param int $y ordinate of the point. Default is current y position\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-07)\n\t\t * @see StartTransform(), StopTransform()\n\t\t */\n\t\tpublic function MirrorP($x='',$y='') {\n\t\t\t$this->Scale(-100, -100, $x, $y);\n\t\t}\n\n\t\t/**\n\t\t * Reflection against a straight line through point (x, y) with the gradient angle (angle).\n\t\t * @param float $angle gradient angle of the straight line. Default is 0 (horizontal line).\n\t\t * @param int $x abscissa of the point. Default is current x position\n\t\t * @param int $y ordinate of the point. Default is current y position\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-07)\n\t\t * @see StartTransform(), StopTransform()\n\t\t */\n\t\tpublic function MirrorL($angle=0, $x='',$y='') {\n\t\t\t$this->Scale(-100, 100, $x, $y);\n\t\t\t$this->Rotate(-2*($angle-90), $x, $y);\n\t\t}\n\n\t\t/**\n\t\t * Translate graphic object horizontally.\n\t\t * @param int $t_x movement to the right (or left for RTL)\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-07)\n\t\t * @see StartTransform(), StopTransform()\n\t\t */\n\t\tpublic function TranslateX($t_x) {\n\t\t\t$this->Translate($t_x, 0);\n\t\t}\n\n\t\t/**\n\t\t * Translate graphic object vertically.\n\t\t * @param int $t_y movement to the bottom\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-07)\n\t\t * @see StartTransform(), StopTransform()\n\t\t */\n\t\tpublic function TranslateY($t_y) {\n\t\t\t$this->Translate(0, $t_y);\n\t\t}\n\n\t\t/**\n\t\t * Translate graphic object horizontally and vertically.\n\t\t * @param int $t_x movement to the right\n\t\t * @param int $t_y movement to the bottom\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-07)\n\t\t * @see StartTransform(), StopTransform()\n\t\t */\n\t\tpublic function Translate($t_x, $t_y) {\n\t\t\t//calculate elements of transformation matrix\n\t\t\t$tm[0] = 1;\n\t\t\t$tm[1] = 0;\n\t\t\t$tm[2] = 0;\n\t\t\t$tm[3] = 1;\n\t\t\t$tm[4] = $t_x * $this->k;\n\t\t\t$tm[5] = -$t_y * $this->k;\n\t\t\t//translate the coordinate system\n\t\t\t$this->Transform($tm);\n\t\t}\n\n\t\t/**\n\t\t * Rotate object.\n\t\t * @param float $angle angle in degrees for counter-clockwise rotation\n\t\t * @param int $x abscissa of the rotation center. Default is current x position\n\t\t * @param int $y ordinate of the rotation center. Default is current y position\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-07)\n\t\t * @see StartTransform(), StopTransform()\n\t\t */\n\t\tpublic function Rotate($angle, $x='', $y='') {\n\t\t\tif ($x === '') {\n\t\t\t\t$x = $this->x;\n\t\t\t}\n\t\t\tif ($y === '') {\n\t\t\t\t$y = $this->y;\n\t\t\t}\n\t\t\t$y = ($this->h - $y) * $this->k;\n\t\t\t$x *= $this->k;\n\t\t\t//calculate elements of transformation matrix\n\t\t\t$tm[0] = cos(deg2rad($angle));\n\t\t\t$tm[1] = sin(deg2rad($angle));\n\t\t\t$tm[2] = -$tm[1];\n\t\t\t$tm[3] = $tm[0];\n\t\t\t$tm[4] = $x + ($tm[1] * $y) - ($tm[0] * $x);\n\t\t\t$tm[5] = $y - ($tm[0] * $y) - ($tm[1] * $x);\n\t\t\t//rotate the coordinate system around ($x,$y)\n\t\t\t$this->Transform($tm);\n\t\t}\n\n\t\t/**\n\t\t * Skew horizontally.\n\t\t * @param float $angle_x angle in degrees between -90 (skew to the left) and 90 (skew to the right)\n\t\t * @param int $x abscissa of the skewing center. default is current x position\n\t\t * @param int $y ordinate of the skewing center. default is current y position\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-07)\n\t\t * @see StartTransform(), StopTransform()\n\t\t */\n\t\tpublic function SkewX($angle_x, $x='', $y='') {\n\t\t\t$this->Skew($angle_x, 0, $x, $y);\n\t\t}\n\n\t\t/**\n\t\t * Skew vertically.\n\t\t * @param float $angle_y angle in degrees between -90 (skew to the bottom) and 90 (skew to the top)\n\t\t * @param int $x abscissa of the skewing center. default is current x position\n\t\t * @param int $y ordinate of the skewing center. default is current y position\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-07)\n\t\t * @see StartTransform(), StopTransform()\n\t\t */\n\t\tpublic function SkewY($angle_y, $x='', $y='') {\n\t\t\t$this->Skew(0, $angle_y, $x, $y);\n\t\t}\n\n\t\t/**\n\t\t * Skew.\n\t\t * @param float $angle_x angle in degrees between -90 (skew to the left) and 90 (skew to the right)\n\t\t * @param float $angle_y angle in degrees between -90 (skew to the bottom) and 90 (skew to the top)\n\t\t * @param int $x abscissa of the skewing center. default is current x position\n\t\t * @param int $y ordinate of the skewing center. default is current y position\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-07)\n\t\t * @see StartTransform(), StopTransform()\n\t\t */\n\t\tpublic function Skew($angle_x, $angle_y, $x='', $y='') {\n\t\t\tif ($x === '') {\n\t\t\t\t$x = $this->x;\n\t\t\t}\n\t\t\tif ($y === '') {\n\t\t\t\t$y = $this->y;\n\t\t\t}\n\t\t\tif (($angle_x <= -90) OR ($angle_x >= 90) OR ($angle_y <= -90) OR ($angle_y >= 90)) {\n\t\t\t\t$this->Error('Please use values between -90 and +90 degrees for Skewing.');\n\t\t\t}\n\t\t\t$x *= $this->k;\n\t\t\t$y = ($this->h - $y) * $this->k;\n\t\t\t//calculate elements of transformation matrix\n\t\t\t$tm[0] = 1;\n\t\t\t$tm[1] = tan(deg2rad($angle_y));\n\t\t\t$tm[2] = tan(deg2rad($angle_x));\n\t\t\t$tm[3] = 1;\n\t\t\t$tm[4] = -$tm[2] * $y;\n\t\t\t$tm[5] = -$tm[1] * $x;\n\t\t\t//skew the coordinate system\n\t\t\t$this->Transform($tm);\n\t\t}\n\n\t\t/**\n\t\t * Apply graphic transformations.\n\t\t * @param array $tm transformation matrix\n\t\t * @access protected\n\t\t * @since 2.1.000 (2008-01-07)\n\t\t * @see StartTransform(), StopTransform()\n\t\t */\n\t\tprotected function Transform($tm) {\n\t\t\t$this->_out(sprintf('%.3F %.3F %.3F %.3F %.3F %.3F cm', $tm[0], $tm[1], $tm[2], $tm[3], $tm[4], $tm[5]));\n\t\t\t// add tranformation matrix\n\t\t\t$this->transfmatrix[$this->transfmatrix_key][] = array('a' => $tm[0], 'b' => $tm[1], 'c' => $tm[2], 'd' => $tm[3], 'e' => $tm[4], 'f' => $tm[5]);\n\t\t\t// update tranformation mark\n\t\t\tif (end($this->transfmrk[$this->page]) !== false) {\n\t\t\t\t$key = key($this->transfmrk[$this->page]);\n\t\t\t\t$this->transfmrk[$this->page][$key] = $this->pagelen[$this->page];\n\t\t\t}\n\t\t}\n\n\t\t// END TRANSFORMATIONS SECTION -------------------------\n\n\n\t\t// START GRAPHIC FUNCTIONS SECTION ---------------------\n\t\t// The following section is based on the code provided by David Hernandez Sanz\n\n\t\t/**\n\t\t * Defines the line width. By default, the value equals 0.2 mm. The method can be called before the first page is created and the value is retained from page to page.\n\t\t * @param float $width The width.\n\t\t * @access public\n\t\t * @since 1.0\n\t\t * @see Line(), Rect(), Cell(), MultiCell()\n\t\t */\n\t\tpublic function SetLineWidth($width) {\n\t\t\t//Set line width\n\t\t\t$this->LineWidth = $width;\n\t\t\t$this->linestyleWidth = sprintf('%.2F w', ($width * $this->k));\n\t\t\tif ($this->page > 0) {\n\t\t\t\t$this->_out($this->linestyleWidth);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Returns the current the line width.\n\t\t * @return int Line width\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-07)\n\t\t * @see Line(), SetLineWidth()\n\t\t */\n\t\tpublic function GetLineWidth() {\n\t\t\treturn $this->LineWidth;\n\t\t}\n\n\t\t/**\n\t\t * Set line style.\n\t\t * @param array $style Line style. Array with keys among the following:\n\t\t * <ul>\n\t\t *\t <li>width (float): Width of the line in user units.</li>\n\t\t *\t <li>cap (string): Type of cap to put on the line. Possible values are:\n\t\t * butt, round, square. The difference between \"square\" and \"butt\" is that\n\t\t * \"square\" projects a flat end past the end of the line.</li>\n\t\t *\t <li>join (string): Type of join. Possible values are: miter, round,\n\t\t * bevel.</li>\n\t\t *\t <li>dash (mixed): Dash pattern. Is 0 (without dash) or string with\n\t\t * series of length values, which are the lengths of the on and off dashes.\n\t\t * For example: \"2\" represents 2 on, 2 off, 2 on, 2 off, ...; \"2,1\" is 2 on,\n\t\t * 1 off, 2 on, 1 off, ...</li>\n\t\t *\t <li>phase (integer): Modifier on the dash pattern which is used to shift\n\t\t * the point at which the pattern starts.</li>\n\t\t *\t <li>color (array): Draw color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K).</li>\n\t\t * </ul>\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-08)\n\t\t */\n\t\tpublic function SetLineStyle($style) {\n\t\t\tif (!is_array($style)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\textract($style);\n\t\t\tif (isset($width)) {\n\t\t\t\t$width_prev = $this->LineWidth;\n\t\t\t\t$this->SetLineWidth($width);\n\t\t\t\t$this->LineWidth = $width_prev;\n\t\t\t}\n\t\t\tif (isset($cap)) {\n\t\t\t\t$ca = array('butt' => 0, 'round'=> 1, 'square' => 2);\n\t\t\t\tif (isset($ca[$cap])) {\n\t\t\t\t\t$this->linestyleCap = $ca[$cap].' J';\n\t\t\t\t\t$this->_out($this->linestyleCap);\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (isset($join)) {\n\t\t\t\t$ja = array('miter' => 0, 'round' => 1, 'bevel' => 2);\n\t\t\t\tif (isset($ja[$join])) {\n\t\t\t\t\t$this->linestyleJoin = $ja[$join].' j';\n\t\t\t\t\t$this->_out($this->linestyleJoin);\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (isset($dash)) {\n\t\t\t\t$dash_string = '';\n\t\t\t\tif ($dash) {\n\t\t\t\t\tif (preg_match('/^.+,/', $dash) > 0) {\n\t\t\t\t\t\t$tab = explode(',', $dash);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$tab = array($dash);\n\t\t\t\t\t}\n\t\t\t\t\t$dash_string = '';\n\t\t\t\t\tforeach ($tab as $i => $v) {\n\t\t\t\t\t\tif ($i) {\n\t\t\t\t\t\t\t$dash_string .= ' ';\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$dash_string .= sprintf('%.2F', $v);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (!isset($phase) OR !$dash) {\n\t\t\t\t\t$phase = 0;\n\t\t\t\t}\n\t\t\t\t$this->linestyleDash = sprintf('[%s] %.2F d', $dash_string, $phase);\n\t\t\t\t$this->_out($this->linestyleDash);\n\t\t\t}\n\t\t\tif (isset($color)) {\n\t\t\t\t$this->SetDrawColorArray($color);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Begin a new subpath by moving the current point to coordinates (x, y), omitting any connecting line segment.\n\t\t * @param float $x Abscissa of point.\n\t\t * @param float $y Ordinate of point.\n\t\t * @access protected\n\t\t * @since 2.1.000 (2008-01-08)\n\t\t */\n\t\tprotected function _outPoint($x, $y) {\n\t\t\t$this->_out(sprintf('%.2F %.2F m', $x * $this->k, ($this->h - $y) * $this->k));\n\t\t}\n\n\t\t/**\n\t\t * Append a straight line segment from the current point to the point (x, y).\n\t\t * The new current point shall be (x, y).\n\t\t * @param float $x Abscissa of end point.\n\t\t * @param float $y Ordinate of end point.\n\t\t * @access protected\n\t\t * @since 2.1.000 (2008-01-08)\n\t\t */\n\t\tprotected function _outLine($x, $y) {\n\t\t\t$this->_out(sprintf('%.2F %.2F l', $x * $this->k, ($this->h - $y) * $this->k));\n\t\t}\n\n\t\t/**\n\t\t * Append a rectangle to the current path as a complete subpath, with lower-left corner (x, y) and dimensions widthand height in user space.\n\t\t * @param float $x Abscissa of upper-left corner (or upper-right corner for RTL language).\n\t\t * @param float $y Ordinate of upper-left corner (or upper-right corner for RTL language).\n\t\t * @param float $w Width.\n\t\t * @param float $h Height.\n\t\t * @param string $op options\n\t\t * @access protected\n\t\t * @since 2.1.000 (2008-01-08)\n\t\t */\n\t\tprotected function _outRect($x, $y, $w, $h, $op) {\n\t\t\t$this->_out(sprintf('%.2F %.2F %.2F %.2F re %s', $x * $this->k, ($this->h - $y) * $this->k, $w * $this->k, -$h * $this->k, $op));\n\t\t}\n\n\t\t/**\n\t\t * Append a cubic Bzier curve to the current path. The curve shall extend from the current point to the point (x3, y3), using (x1, y1) and (x2, y2) as the Bzier control points.\n\t\t * The new current point shall be (x3, y3).\n\t\t * @param float $x1 Abscissa of control point 1.\n\t\t * @param float $y1 Ordinate of control point 1.\n\t\t * @param float $x2 Abscissa of control point 2.\n\t\t * @param float $y2 Ordinate of control point 2.\n\t\t * @param float $x3 Abscissa of end point.\n\t\t * @param float $y3 Ordinate of end point.\n\t\t * @access protected\n\t\t * @since 2.1.000 (2008-01-08)\n\t\t */\n\t\tprotected function _outCurve($x1, $y1, $x2, $y2, $x3, $y3) {\n\t\t\t$this->_out(sprintf('%.2F %.2F %.2F %.2F %.2F %.2F c', $x1 * $this->k, ($this->h - $y1) * $this->k, $x2 * $this->k, ($this->h - $y2) * $this->k, $x3 * $this->k, ($this->h - $y3) * $this->k));\n\t\t}\n\n\t\t/**\n\t\t * Append a cubic Bzier curve to the current path. The curve shall extend from the current point to the point (x3, y3), using the current point and (x2, y2) as the Bzier control points.\n\t\t * The new current point shall be (x3, y3).\n\t\t * @param float $x2 Abscissa of control point 2.\n\t\t * @param float $y2 Ordinate of control point 2.\n\t\t * @param float $x3 Abscissa of end point.\n\t\t * @param float $y3 Ordinate of end point.\n\t\t * @access protected\n\t\t * @since 4.9.019 (2010-04-26)\n\t\t */\n\t\tprotected function _outCurveV($x2, $y2, $x3, $y3) {\n\t\t\t$this->_out(sprintf('%.2F %.2F %.2F %.2F v', $x2 * $this->k, ($this->h - $y2) * $this->k, $x3 * $this->k, ($this->h - $y3) * $this->k));\n\t\t}\n\n\t\t/**\n\t\t * Append a cubic Bzier curve to the current path. The curve shall extend from the current point to the point (x3, y3), using (x1, y1) and (x3, y3) as the Bzier control points.\n\t\t * The new current point shall be (x3, y3).\n\t\t * @param float $x1 Abscissa of control point 1.\n\t\t * @param float $y1 Ordinate of control point 1.\n\t\t * @param float $x2 Abscissa of control point 2.\n\t\t * @param float $y2 Ordinate of control point 2.\n\t\t * @param float $x3 Abscissa of end point.\n\t\t * @param float $y3 Ordinate of end point.\n\t\t * @access protected\n\t\t * @since 2.1.000 (2008-01-08)\n\t\t */\n\t\tprotected function _outCurveY($x1, $y1, $x3, $y3) {\n\t\t\t$this->_out(sprintf('%.2F %.2F %.2F %.2F y', $x1 * $this->k, ($this->h - $y1) * $this->k, $x3 * $this->k, ($this->h - $y3) * $this->k));\n\t\t}\n\n\t\t/**\n\t\t * Draws a line between two points.\n\t\t * @param float $x1 Abscissa of first point.\n\t\t * @param float $y1 Ordinate of first point.\n\t\t * @param float $x2 Abscissa of second point.\n\t\t * @param float $y2 Ordinate of second point.\n\t\t * @param array $style Line style. Array like for {@link SetLineStyle SetLineStyle}. Default value: default line style (empty array).\n\t\t * @access public\n\t\t * @since 1.0\n\t\t * @see SetLineWidth(), SetDrawColor(), SetLineStyle()\n\t\t */\n\t\tpublic function Line($x1, $y1, $x2, $y2, $style=array()) {\n\t\t\tif (is_array($style)) {\n\t\t\t\t$this->SetLineStyle($style);\n\t\t\t}\n\t\t\t$this->_outPoint($x1, $y1);\n\t\t\t$this->_outLine($x2, $y2);\n\t\t\t$this->_out('S');\n\t\t}\n\n\t\t/**\n\t\t * Draws a rectangle.\n\t\t * @param float $x Abscissa of upper-left corner (or upper-right corner for RTL language).\n\t\t * @param float $y Ordinate of upper-left corner (or upper-right corner for RTL language).\n\t\t * @param float $w Width.\n\t\t * @param float $h Height.\n\t\t * @param string $style Style of rendering. See the getPathPaintOperator() function for more information.\n\t\t * @param array $border_style Border style of rectangle. Array with keys among the following:\n\t\t * <ul>\n\t\t *\t <li>all: Line style of all borders. Array like for {@link SetLineStyle SetLineStyle}.</li>\n\t\t *\t <li>L, T, R, B or combinations: Line style of left, top, right or bottom border. Array like for {@link SetLineStyle SetLineStyle}.</li>\n\t\t * </ul>\n\t\t * If a key is not present or is null, not draws the border. Default value: default line style (empty array).\n\t\t * @param array $border_style Border style of rectangle. Array like for {@link SetLineStyle SetLineStyle}. Default value: default line style (empty array).\n\t\t * @param array $fill_color Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K). Default value: default color (empty array).\n\t\t * @access public\n\t\t * @since 1.0\n\t\t * @see SetLineStyle()\n\t\t */\n\t\tpublic function Rect($x, $y, $w, $h, $style='', $border_style=array(), $fill_color=array()) {\n\t\t\tif (!(false === strpos($style, 'F')) AND !empty($fill_color)) {\n\t\t\t\t$this->SetFillColorArray($fill_color);\n\t\t\t}\n\t\t\t$op = $this->getPathPaintOperator($style);\n\t\t\tif ((!$border_style) OR (isset($border_style['all']))) {\n\t\t\t\tif (isset($border_style['all']) AND $border_style['all']) {\n\t\t\t\t\t$this->SetLineStyle($border_style['all']);\n\t\t\t\t\t$border_style = array();\n\t\t\t\t}\n\t\t\t}\n\t\t\t$this->_outRect($x, $y, $w, $h, $op);\n\n\t\t\tif ($border_style) {\n\t\t\t\t$border_style2 = array();\n\t\t\t\tforeach ($border_style as $line => $value) {\n\t\t\t\t\t$length = strlen($line);\n\t\t\t\t\tfor ($i = 0; $i < $length; ++$i) {\n\t\t\t\t\t\t$border_style2[$line[$i]] = $value;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t$border_style = $border_style2;\n\t\t\t\tif (isset($border_style['L']) AND $border_style['L']) {\n\t\t\t\t\t$this->Line($x, $y, $x, $y + $h, $border_style['L']);\n\t\t\t\t}\n\t\t\t\tif (isset($border_style['T']) AND $border_style['T']) {\n\t\t\t\t\t$this->Line($x, $y, $x + $w, $y, $border_style['T']);\n\t\t\t\t}\n\t\t\t\tif (isset($border_style['R']) AND $border_style['R']) {\n\t\t\t\t\t$this->Line($x + $w, $y, $x + $w, $y + $h, $border_style['R']);\n\t\t\t\t}\n\t\t\t\tif (isset($border_style['B']) AND $border_style['B']) {\n\t\t\t\t\t$this->Line($x, $y + $h, $x + $w, $y + $h, $border_style['B']);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Draws a Bezier curve.\n\t\t * The Bezier curve is a tangent to the line between the control points at\n\t\t * either end of the curve.\n\t\t * @param float $x0 Abscissa of start point.\n\t\t * @param float $y0 Ordinate of start point.\n\t\t * @param float $x1 Abscissa of control point 1.\n\t\t * @param float $y1 Ordinate of control point 1.\n\t\t * @param float $x2 Abscissa of control point 2.\n\t\t * @param float $y2 Ordinate of control point 2.\n\t\t * @param float $x3 Abscissa of end point.\n\t\t * @param float $y3 Ordinate of end point.\n\t\t * @param string $style Style of rendering. See the getPathPaintOperator() function for more information.\n\t\t * @param array $line_style Line style of curve. Array like for {@link SetLineStyle SetLineStyle}. Default value: default line style (empty array).\n\t\t * @param array $fill_color Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K). Default value: default color (empty array).\n\t\t * @access public\n\t\t * @see SetLineStyle()\n\t\t * @since 2.1.000 (2008-01-08)\n\t\t */\n\t\tpublic function Curve($x0, $y0, $x1, $y1, $x2, $y2, $x3, $y3, $style='', $line_style=array(), $fill_color=array()) {\n\t\t\tif (!(false === strpos($style, 'F')) AND isset($fill_color)) {\n\t\t\t\t$this->SetFillColorArray($fill_color);\n\t\t\t}\n\t\t\t$op = $this->getPathPaintOperator($style);\n\t\t\tif ($line_style) {\n\t\t\t\t$this->SetLineStyle($line_style);\n\t\t\t}\n\t\t\t$this->_outPoint($x0, $y0);\n\t\t\t$this->_outCurve($x1, $y1, $x2, $y2, $x3, $y3);\n\t\t\t$this->_out($op);\n\t\t}\n\n\t\t/**\n\t\t * Draws a poly-Bezier curve.\n\t\t * Each Bezier curve segment is a tangent to the line between the control points at\n\t\t * either end of the curve.\n\t\t * @param float $x0 Abscissa of start point.\n\t\t * @param float $y0 Ordinate of start point.\n\t\t * @param float $segments An array of bezier descriptions. Format: array(x1, y1, x2, y2, x3, y3).\n\t\t * @param string $style Style of rendering. See the getPathPaintOperator() function for more information.\n\t\t * @param array $line_style Line style of curve. Array like for {@link SetLineStyle SetLineStyle}. Default value: default line style (empty array).\n\t\t * @param array $fill_color Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K). Default value: default color (empty array).\n\t\t * @access public\n\t\t * @see SetLineStyle()\n\t\t * @since 3.0008 (2008-05-12)\n\t\t */\n\t\tpublic function Polycurve($x0, $y0, $segments, $style='', $line_style=array(), $fill_color=array()) {\n\t\t\tif (!(false === strpos($style, 'F')) AND isset($fill_color)) {\n\t\t\t\t$this->SetFillColorArray($fill_color);\n\t\t\t}\n\t\t\t$op = $this->getPathPaintOperator($style);\n\t\t\tif ($op == 'f') {\n\t\t\t\t$line_style = array();\n\t\t\t}\n\t\t\tif ($line_style) {\n\t\t\t\t$this->SetLineStyle($line_style);\n\t\t\t}\n\t\t\t$this->_outPoint($x0, $y0);\n\t\t\tforeach ($segments as $segment) {\n\t\t\t\tlist($x1, $y1, $x2, $y2, $x3, $y3) = $segment;\n\t\t\t\t$this->_outCurve($x1, $y1, $x2, $y2, $x3, $y3);\n\t\t\t}\n\t\t\t$this->_out($op);\n\t\t}\n\n\t\t/**\n\t\t * Draws an ellipse.\n\t\t * An ellipse is formed from n Bezier curves.\n\t\t * @param float $x0 Abscissa of center point.\n\t\t * @param float $y0 Ordinate of center point.\n\t\t * @param float $rx Horizontal radius.\n\t\t * @param float $ry Vertical radius (if ry = 0 then is a circle, see {@link Circle Circle}). Default value: 0.\n\t\t * @param float $angle: Angle oriented (anti-clockwise). Default value: 0.\n\t\t * @param float $astart: Angle start of draw line. Default value: 0.\n\t\t * @param float $afinish: Angle finish of draw line. Default value: 360.\n\t\t * @param string $style Style of rendering. See the getPathPaintOperator() function for more information.\n\t\t * @param array $line_style Line style of ellipse. Array like for {@link SetLineStyle SetLineStyle}. Default value: default line style (empty array).\n\t\t * @param array $fill_color Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K). Default value: default color (empty array).\n\t\t * @param integer $nc Number of curves used to draw a 90 degrees portion of ellipse.\n\t\t * @author Nicola Asuni\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-08)\n\t\t */\n\t\tpublic function Ellipse($x0, $y0, $rx, $ry='', $angle=0, $astart=0, $afinish=360, $style='', $line_style=array(), $fill_color=array(), $nc=2) {\n\t\t\tif ($this->empty_string($ry) OR ($ry == 0)) {\n\t\t\t\t$ry = $rx;\n\t\t\t}\n\t\t\tif (!(false === strpos($style, 'F')) AND isset($fill_color)) {\n\t\t\t\t$this->SetFillColorArray($fill_color);\n\t\t\t}\n\t\t\t$op = $this->getPathPaintOperator($style);\n\t\t\tif ($op == 'f') {\n\t\t\t\t$line_style = array();\n\t\t\t}\n\t\t\tif ($line_style) {\n\t\t\t\t$this->SetLineStyle($line_style);\n\t\t\t}\n\t\t\t$this->_outellipticalarc($x0, $y0, $rx, $ry, $angle, $astart, $afinish, false, $nc);\n\t\t\t$this->_out($op);\n\t\t}\n\n\t\t/**\n\t\t * Append an elliptical arc to the current path.\n\t\t * An ellipse is formed from n Bezier curves.\n\t\t * @param float $xc Abscissa of center point.\n\t\t * @param float $yc Ordinate of center point.\n\t\t * @param float $rx Horizontal radius.\n\t\t * @param float $ry Vertical radius (if ry = 0 then is a circle, see {@link Circle Circle}). Default value: 0.\n\t\t * @param float $xang: Angle between the X-axis and the major axis of the ellipse. Default value: 0.\n\t\t * @param float $angs: Angle start of draw line. Default value: 0.\n\t\t * @param float $angf: Angle finish of draw line. Default value: 360.\n\t\t * @param boolean $pie if true do not mark the border point (used to draw pie sectors).\n\t\t * @param integer $nc Number of curves used to draw a 90 degrees portion of ellipse.\n\t\t * @author Nicola Asuni\n\t\t * @access protected\n\t\t * @since 4.9.019 (2010-04-26)\n\t\t */\n\t\tprotected function _outellipticalarc($xc, $yc, $rx, $ry, $xang=0, $angs=0, $angf=360, $pie=false, $nc=2) {\n\t\t\t$k = $this->k;\n\t\t\tif ($nc < 2) {\n\t\t\t\t$nc = 2;\n\t\t\t}\n\t\t\tif ($pie) {\n\t\t\t\t// center of the arc\n\t\t\t\t$this->_outPoint($xc, $yc);\n\t\t\t}\n\t\t\t$xang = deg2rad((float) $xang);\n\t\t\t$angs = deg2rad((float) $angs);\n\t\t\t$angf = deg2rad((float) $angf);\n\t\t\t$as = atan2((sin($angs) / $ry), (cos($angs) / $rx));\n\t\t\t$af = atan2((sin($angf) / $ry), (cos($angf) / $rx));\n\t\t\tif ($as < 0) {\n\t\t\t\t$as += (2 * M_PI);\n\t\t\t}\n\t\t\tif ($af < 0) {\n\t\t\t\t$af += (2 * M_PI);\n\t\t\t}\n\t\t\tif ($as > $af) {\n\t\t\t\t// reverse rotation go clockwise\n\t\t\t\t$as -= (2 * M_PI);\n\t\t\t}\n\t\t\t$total_angle = ($af - $as);\n\t\t\tif ($nc < 2) {\n\t\t\t\t$nc = 2;\n\t\t\t}\n\t\t\t// total arcs to draw\n\t\t\t$nc *= (2 * abs($total_angle) / M_PI);\n\t\t\t$nc = round($nc) + 1;\n\t\t\t// angle of each arc\n\t\t\t$arcang = $total_angle / $nc;\n\t\t\t// center point in PDF coordiantes\n\t\t\t$x0 = $xc;\n\t\t\t$y0 = ($this->h - $yc);\n\t\t\t// starting angle\n\t\t\t$ang = $as;\n\t\t\t$alpha = sin($arcang) * ((sqrt(4 + (3 * pow(tan(($arcang) / 2), 2))) - 1) / 3);\n\t\t\t$cos_xang = cos($xang);\n\t\t\t$sin_xang = sin($xang);\n\t\t\t$cos_ang = cos($ang);\n\t\t\t$sin_ang = sin($ang);\n\t\t\t// first arc point\n\t\t\t$px1 = $x0 + ($rx * $cos_xang * $cos_ang) - ($ry * $sin_xang * $sin_ang);\n\t\t\t$py1 = $y0 + ($rx * $sin_xang * $cos_ang) + ($ry * $cos_xang * $sin_ang);\n\t\t\t// first Bezier control point\n\t\t\t$qx1 = ($alpha * ((-$rx * $cos_xang * $sin_ang) - ($ry * $sin_xang * $cos_ang)));\n\t\t\t$qy1 = ($alpha * ((-$rx * $sin_xang * $sin_ang) + ($ry * $cos_xang * $cos_ang)));\n\t\t\tif ($pie) {\n\t\t\t\t$this->_outLine($px1, $this->h - $py1);\n\t\t\t} else {\n\t\t\t\t$this->_outPoint($px1, $this->h - $py1);\n\t\t\t}\n\t\t\t// draw arcs\n\t\t\tfor ($i = 1; $i <= $nc; ++$i) {\n\t\t\t\t// starting angle\n\t\t\t\t$ang = $as + ($i * $arcang);\n\t\t\t\t$cos_xang = cos($xang);\n\t\t\t\t$sin_xang = sin($xang);\n\t\t\t\t$cos_ang = cos($ang);\n\t\t\t\t$sin_ang = sin($ang);\n\t\t\t\t// second arc point\n\t\t\t\t$px2 = $x0 + ($rx * $cos_xang * $cos_ang) - ($ry * $sin_xang * $sin_ang);\n\t\t\t\t$py2 = $y0 + ($rx * $sin_xang * $cos_ang) + ($ry * $cos_xang * $sin_ang);\n\t\t\t\t// second Bezier control point\n\t\t\t\t$qx2 = ($alpha * ((-$rx * $cos_xang * $sin_ang) - ($ry * $sin_xang * $cos_ang)));\n\t\t\t\t$qy2 = ($alpha * ((-$rx * $sin_xang * $sin_ang) + ($ry * $cos_xang * $cos_ang)));\n\t\t\t\t// draw arc\n\t\t\t\t$this->_outCurve(($px1 + $qx1), ($this->h - ($py1 + $qy1)), ($px2 - $qx2), ($this->h - ($py2 - $qy2)), $px2, ($this->h - $py2));\n\t\t\t\t// move to next point\n\t\t\t\t$px1 = $px2;\n\t\t\t\t$py1 = $py2;\n\t\t\t\t$qx1 = $qx2;\n\t\t\t\t$qy1 = $qy2;\n\t\t\t}\n\t\t\tif ($pie) {\n\t\t\t\t$this->_outLine($xc, $yc);\n\t\t\t}\n\t\t}\n\n\n\t\t/**\n\t\t * Draws a circle.\n\t\t * A circle is formed from n Bezier curves.\n\t\t * @param float $x0 Abscissa of center point.\n\t\t * @param float $y0 Ordinate of center point.\n\t\t * @param float $r Radius.\n\t\t * @param float $angstr: Angle start of draw line. Default value: 0.\n\t\t * @param float $angend: Angle finish of draw line. Default value: 360.\n\t\t * @param string $style Style of rendering. See the getPathPaintOperator() function for more information.\n\t\t * @param array $line_style Line style of circle. Array like for {@link SetLineStyle SetLineStyle}. Default value: default line style (empty array).\n\t\t * @param array $fill_color Fill color. Format: array(red, green, blue). Default value: default color (empty array).\n\t\t * @param integer $nc Number of curves used to draw a 90 degrees portion of circle.\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-08)\n\t\t */\n\t\tpublic function Circle($x0, $y0, $r, $angstr=0, $angend=360, $style='', $line_style=array(), $fill_color=array(), $nc=2) {\n\t\t\t$this->Ellipse($x0, $y0, $r, $r, 0, $angstr, $angend, $style, $line_style, $fill_color, $nc);\n\t\t}\n\n\t\t/**\n\t\t * Draws a polygonal line\n\t\t * @param array $p Points 0 to ($np - 1). Array with values (x0, y0, x1, y1,..., x(np-1), y(np - 1))\n\t\t * @param string $style Style of rendering. See the getPathPaintOperator() function for more information.\n\t\t * @param array $line_style Line style of polygon. Array with keys among the following:\n\t\t * <ul>\n\t\t *\t <li>all: Line style of all lines. Array like for {@link SetLineStyle SetLineStyle}.</li>\n\t\t *\t <li>0 to ($np - 1): Line style of each line. Array like for {@link SetLineStyle SetLineStyle}.</li>\n\t\t * </ul>\n\t\t * If a key is not present or is null, not draws the line. Default value is default line style (empty array).\n\t\t * @param array $fill_color Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K). Default value: default color (empty array).\n\t\t * @param boolean $closed if true the polygon is closes, otherwise will remain open\n\t\t * @access public\n\t\t * @since 4.8.003 (2009-09-15)\n\t\t */\n\t\tpublic function PolyLine($p, $style='', $line_style=array(), $fill_color=array()) {\n\t\t\t$this->Polygon($p, $style, $line_style, $fill_color, false);\n\t\t}\n\n\t\t/**\n\t\t * Draws a polygon.\n\t\t * @param array $p Points 0 to ($np - 1). Array with values (x0, y0, x1, y1,..., x(np-1), y(np - 1))\n\t\t * @param string $style Style of rendering. See the getPathPaintOperator() function for more information.\n\t\t * @param array $line_style Line style of polygon. Array with keys among the following:\n\t\t * <ul>\n\t\t *\t <li>all: Line style of all lines. Array like for {@link SetLineStyle SetLineStyle}.</li>\n\t\t *\t <li>0 to ($np - 1): Line style of each line. Array like for {@link SetLineStyle SetLineStyle}.</li>\n\t\t * </ul>\n\t\t * If a key is not present or is null, not draws the line. Default value is default line style (empty array).\n\t\t * @param array $fill_color Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K). Default value: default color (empty array).\n\t\t * @param boolean $closed if true the polygon is closes, otherwise will remain open\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-08)\n\t\t */\n\t\tpublic function Polygon($p, $style='', $line_style=array(), $fill_color=array(), $closed=true) {\n\t\t\t$nc = count($p); // number of coordinates\n\t\t\t$np = $nc / 2; // number of points\n\t\t\tif ($closed) {\n\t\t\t\t// close polygon by adding the first 2 points at the end (one line)\n\t\t\t\tfor ($i = 0; $i < 4; ++$i) {\n\t\t\t\t\t$p[$nc + $i] = $p[$i];\n\t\t\t\t}\n\t\t\t\t// copy style for the last added line\n\t\t\t\tif (isset($line_style[0])) {\n\t\t\t\t\t$line_style[$np] = $line_style[0];\n\t\t\t\t}\n\t\t\t\t$nc += 4;\n\t\t\t}\n\t\t\tif (!(false === strpos($style, 'F')) AND isset($fill_color)) {\n\t\t\t\t$this->SetFillColorArray($fill_color);\n\t\t\t}\n\t\t\t$op = $this->getPathPaintOperator($style);\n\t\t\tif ($op == 'f') {\n\t\t\t\t$line_style = array();\n\t\t\t}\n\t\t\t$draw = true;\n\t\t\tif ($line_style) {\n\t\t\t\tif (isset($line_style['all'])) {\n\t\t\t\t\t$this->SetLineStyle($line_style['all']);\n\t\t\t\t} else {\n\t\t\t\t\t$draw = false;\n\t\t\t\t\tif ($op == 'B') {\n\t\t\t\t\t\t// draw fill\n\t\t\t\t\t\t$op = 'f';\n\t\t\t\t\t\t$this->_outPoint($p[0], $p[1]);\n\t\t\t\t\t\tfor ($i = 2; $i < $nc; $i = $i + 2) {\n\t\t\t\t\t\t\t$this->_outLine($p[$i], $p[$i + 1]);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$this->_out($op);\n\t\t\t\t\t}\n\t\t\t\t\t// draw outline\n\t\t\t\t\t$this->_outPoint($p[0], $p[1]);\n\t\t\t\t\tfor ($i = 2; $i < $nc; $i = $i + 2) {\n\t\t\t\t\t\t$line_num = ($i / 2) - 1;\n\t\t\t\t\t\tif (isset($line_style[$line_num])) {\n\t\t\t\t\t\t\tif ($line_style[$line_num] != 0) {\n\t\t\t\t\t\t\t\tif (is_array($line_style[$line_num])) {\n\t\t\t\t\t\t\t\t\t$this->_out('S');\n\t\t\t\t\t\t\t\t\t$this->SetLineStyle($line_style[$line_num]);\n\t\t\t\t\t\t\t\t\t$this->_outPoint($p[$i - 2], $p[$i - 1]);\n\t\t\t\t\t\t\t\t\t$this->_outLine($p[$i], $p[$i + 1]);\n\t\t\t\t\t\t\t\t\t$this->_out('S');\n\t\t\t\t\t\t\t\t\t$this->_outPoint($p[$i], $p[$i + 1]);\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t$this->_outLine($p[$i], $p[$i + 1]);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$this->_outLine($p[$i], $p[$i + 1]);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t$this->_out($op);\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ($draw) {\n\t\t\t\t$this->_outPoint($p[0], $p[1]);\n\t\t\t\tfor ($i = 2; $i < $nc; $i = $i + 2) {\n\t\t\t\t\t$this->_outLine($p[$i], $p[$i + 1]);\n\t\t\t\t}\n\t\t\t\t$this->_out($op);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Draws a regular polygon.\n\t\t * @param float $x0 Abscissa of center point.\n\t\t * @param float $y0 Ordinate of center point.\n\t\t * @param float $r: Radius of inscribed circle.\n\t\t * @param integer $ns Number of sides.\n\t\t * @param float $angle Angle oriented (anti-clockwise). Default value: 0.\n\t\t * @param boolean $draw_circle Draw inscribed circle or not. Default value: false.\n\t\t * @param string $style Style of rendering. See the getPathPaintOperator() function for more information.\n\t\t * @param array $line_style Line style of polygon sides. Array with keys among the following:\n\t\t * <ul>\n\t\t *\t <li>all: Line style of all sides. Array like for {@link SetLineStyle SetLineStyle}.</li>\n\t\t *\t <li>0 to ($ns - 1): Line style of each side. Array like for {@link SetLineStyle SetLineStyle}.</li>\n\t\t * </ul>\n\t\t * If a key is not present or is null, not draws the side. Default value is default line style (empty array).\n\t\t * @param array $fill_color Fill color. Format: array(red, green, blue). Default value: default color (empty array).\n\t\t * @param string $circle_style Style of rendering of inscribed circle (if draws). Possible values are:\n\t\t * <ul>\n\t\t *\t <li>D or empty string: Draw (default).</li>\n\t\t *\t <li>F: Fill.</li>\n\t\t *\t <li>DF or FD: Draw and fill.</li>\n\t\t *\t <li>CNZ: Clipping mode (using the even-odd rule to determine which regions lie inside the clipping path).</li>\n\t\t *\t <li>CEO: Clipping mode (using the nonzero winding number rule to determine which regions lie inside the clipping path).</li>\n\t\t * </ul>\n\t\t * @param array $circle_outLine_style Line style of inscribed circle (if draws). Array like for {@link SetLineStyle SetLineStyle}. Default value: default line style (empty array).\n\t\t * @param array $circle_fill_color Fill color of inscribed circle (if draws). Format: array(red, green, blue). Default value: default color (empty array).\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-08)\n\t\t */\n\t\tpublic function RegularPolygon($x0, $y0, $r, $ns, $angle=0, $draw_circle=false, $style='', $line_style=array(), $fill_color=array(), $circle_style='', $circle_outLine_style=array(), $circle_fill_color=array()) {\n\t\t\tif (3 > $ns) {\n\t\t\t\t$ns = 3;\n\t\t\t}\n\t\t\tif ($draw_circle) {\n\t\t\t\t$this->Circle($x0, $y0, $r, 0, 360, $circle_style, $circle_outLine_style, $circle_fill_color);\n\t\t\t}\n\t\t\t$p = array();\n\t\t\tfor ($i = 0; $i < $ns; ++$i) {\n\t\t\t\t$a = $angle + ($i * 360 / $ns);\n\t\t\t\t$a_rad = deg2rad((float) $a);\n\t\t\t\t$p[] = $x0 + ($r * sin($a_rad));\n\t\t\t\t$p[] = $y0 + ($r * cos($a_rad));\n\t\t\t}\n\t\t\t$this->Polygon($p, $style, $line_style, $fill_color);\n\t\t}\n\n\t\t/**\n\t\t * Draws a star polygon\n\t\t * @param float $x0 Abscissa of center point.\n\t\t * @param float $y0 Ordinate of center point.\n\t\t * @param float $r Radius of inscribed circle.\n\t\t * @param integer $nv Number of vertices.\n\t\t * @param integer $ng Number of gap (if ($ng % $nv = 1) then is a regular polygon).\n\t\t * @param float $angle: Angle oriented (anti-clockwise). Default value: 0.\n\t\t * @param boolean $draw_circle: Draw inscribed circle or not. Default value is false.\n\t\t * @param string $style Style of rendering. See the getPathPaintOperator() function for more information.\n\t\t * @param array $line_style Line style of polygon sides. Array with keys among the following:\n\t\t * <ul>\n\t\t *\t <li>all: Line style of all sides. Array like for\n\t\t * {@link SetLineStyle SetLineStyle}.</li>\n\t\t *\t <li>0 to (n - 1): Line style of each side. Array like for {@link SetLineStyle SetLineStyle}.</li>\n\t\t * </ul>\n\t\t * If a key is not present or is null, not draws the side. Default value is default line style (empty array).\n\t\t * @param array $fill_color Fill color. Format: array(red, green, blue). Default value: default color (empty array).\n\t\t * @param string $circle_style Style of rendering of inscribed circle (if draws). Possible values are:\n\t\t * <ul>\n\t\t *\t <li>D or empty string: Draw (default).</li>\n\t\t *\t <li>F: Fill.</li>\n\t\t *\t <li>DF or FD: Draw and fill.</li>\n\t\t *\t <li>CNZ: Clipping mode (using the even-odd rule to determine which regions lie inside the clipping path).</li>\n\t\t *\t <li>CEO: Clipping mode (using the nonzero winding number rule to determine which regions lie inside the clipping path).</li>\n\t\t * </ul>\n\t\t * @param array $circle_outLine_style Line style of inscribed circle (if draws). Array like for {@link SetLineStyle SetLineStyle}. Default value: default line style (empty array).\n\t\t * @param array $circle_fill_color Fill color of inscribed circle (if draws). Format: array(red, green, blue). Default value: default color (empty array).\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-08)\n\t\t */\n\t\tpublic function StarPolygon($x0, $y0, $r, $nv, $ng, $angle=0, $draw_circle=false, $style='', $line_style=array(), $fill_color=array(), $circle_style='', $circle_outLine_style=array(), $circle_fill_color=array()) {\n\t\t\tif ($nv < 2) {\n\t\t\t\t$nv = 2;\n\t\t\t}\n\t\t\tif ($draw_circle) {\n\t\t\t\t$this->Circle($x0, $y0, $r, 0, 360, $circle_style, $circle_outLine_style, $circle_fill_color);\n\t\t\t}\n\t\t\t$p2 = array();\n\t\t\t$visited = array();\n\t\t\tfor ($i = 0; $i < $nv; ++$i) {\n\t\t\t\t$a = $angle + ($i * 360 / $nv);\n\t\t\t\t$a_rad = deg2rad((float) $a);\n\t\t\t\t$p2[] = $x0 + ($r * sin($a_rad));\n\t\t\t\t$p2[] = $y0 + ($r * cos($a_rad));\n\t\t\t\t$visited[] = false;\n\t\t\t}\n\t\t\t$p = array();\n\t\t\t$i = 0;\n\t\t\tdo {\n\t\t\t\t$p[] = $p2[$i * 2];\n\t\t\t\t$p[] = $p2[($i * 2) + 1];\n\t\t\t\t$visited[$i] = true;\n\t\t\t\t$i += $ng;\n\t\t\t\t$i %= $nv;\n\t\t\t} while (!$visited[$i]);\n\t\t\t$this->Polygon($p, $style, $line_style, $fill_color);\n\t\t}\n\n\t\t/**\n\t\t * Draws a rounded rectangle.\n\t\t * @param float $x Abscissa of upper-left corner.\n\t\t * @param float $y Ordinate of upper-left corner.\n\t\t * @param float $w Width.\n\t\t * @param float $h Height.\n\t\t * @param float $r the radius of the circle used to round off the corners of the rectangle.\n\t\t * @param string $round_corner Draws rounded corner or not. String with a 0 (not rounded i-corner) or 1 (rounded i-corner) in i-position. Positions are, in order and begin to 0: top left, top right, bottom right and bottom left. Default value: all rounded corner (\"1111\").\n\t\t * @param string $style Style of rendering. See the getPathPaintOperator() function for more information.\n\t\t * @param array $border_style Border style of rectangle. Array like for {@link SetLineStyle SetLineStyle}. Default value: default line style (empty array).\n\t\t * @param array $fill_color Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K). Default value: default color (empty array).\n\t\t * @access public\n\t\t * @since 2.1.000 (2008-01-08)\n\t\t */\n\t\tpublic function RoundedRect($x, $y, $w, $h, $r, $round_corner='1111', $style='', $border_style=array(), $fill_color=array()) {\n\t\t\t$this->RoundedRectXY($x, $y, $w, $h, $r, $r, $round_corner, $style, $border_style, $fill_color);\n\t\t}\n\n\t\t/**\n\t\t * Draws a rounded rectangle.\n\t\t * @param float $x Abscissa of upper-left corner.\n\t\t * @param float $y Ordinate of upper-left corner.\n\t\t * @param float $w Width.\n\t\t * @param float $h Height.\n\t\t * @param float $rx the x-axis radius of the ellipse used to round off the corners of the rectangle.\n\t\t * @param float $ry the y-axis radius of the ellipse used to round off the corners of the rectangle.\n\t\t * @param string $round_corner Draws rounded corner or not. String with a 0 (not rounded i-corner) or 1 (rounded i-corner) in i-position. Positions are, in order and begin to 0: top left, top right, bottom right and bottom left. Default value: all rounded corner (\"1111\").\n\t\t * @param string $style Style of rendering. See the getPathPaintOperator() function for more information.\n\t\t * @param array $border_style Border style of rectangle. Array like for {@link SetLineStyle SetLineStyle}. Default value: default line style (empty array).\n\t\t * @param array $fill_color Fill color. Format: array(GREY) or array(R,G,B) or array(C,M,Y,K). Default value: default color (empty array).\n\t\t * @access public\n\t\t * @since 4.9.019 (2010-04-22)\n\t\t */\n\t\tpublic function RoundedRectXY($x, $y, $w, $h, $rx, $ry, $round_corner='1111', $style='', $border_style=array(), $fill_color=array()) {\n\t\t\tif (($round_corner == '0000') OR (($rx == $ry) AND ($rx == 0))) {\n\t\t\t\t// Not rounded\n\t\t\t\t$this->Rect($x, $y, $w, $h, $style, $border_style, $fill_color);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// Rounded\n\t\t\tif (!(false === strpos($style, 'F')) AND isset($fill_color)) {\n\t\t\t\t$this->SetFillColorArray($fill_color);\n\t\t\t}\n\t\t\t$op = $this->getPathPaintOperator($style);\n\t\t\tif ($op == 'f') {\n\t\t\t\t$border_style = array();\n\t\t\t}\n\t\t\tif ($border_style) {\n\t\t\t\t$this->SetLineStyle($border_style);\n\t\t\t}\n\t\t\t$MyArc = 4 / 3 * (sqrt(2) - 1);\n\t\t\t$this->_outPoint($x + $rx, $y);\n\t\t\t$xc = $x + $w - $rx;\n\t\t\t$yc = $y + $ry;\n\t\t\t$this->_outLine($xc, $y);\n\t\t\tif ($round_corner[0]) {\n\t\t\t\t$this->_outCurve($xc + ($rx * $MyArc), $yc - $ry, $xc + $rx, $yc - ($ry * $MyArc), $xc + $rx, $yc);\n\t\t\t} else {\n\t\t\t\t$this->_outLine($x + $w, $y);\n\t\t\t}\n\t\t\t$xc = $x + $w - $rx;\n\t\t\t$yc = $y + $h - $ry;\n\t\t\t$this->_outLine($x + $w, $yc);\n\t\t\tif ($round_corner[1]) {\n\t\t\t\t$this->_outCurve($xc + $rx, $yc + ($ry * $MyArc), $xc + ($rx * $MyArc), $yc + $ry, $xc, $yc + $ry);\n\t\t\t} else {\n\t\t\t\t$this->_outLine($x + $w, $y + $h);\n\t\t\t}\n\t\t\t$xc = $x + $rx;\n\t\t\t$yc = $y + $h - $ry;\n\t\t\t$this->_outLine($xc, $y + $h);\n\t\t\tif ($round_corner[2]) {\n\t\t\t\t$this->_outCurve($xc - ($rx * $MyArc), $yc + $ry, $xc - $rx, $yc + ($ry * $MyArc), $xc - $rx, $yc);\n\t\t\t} else {\n\t\t\t\t$this->_outLine($x, $y + $h);\n\t\t\t}\n\t\t\t$xc = $x + $rx;\n\t\t\t$yc = $y + $ry;\n\t\t\t$this->_outLine($x, $yc);\n\t\t\tif ($round_corner[3]) {\n\t\t\t\t$this->_outCurve($xc - $rx, $yc - ($ry * $MyArc), $xc - ($rx * $MyArc), $yc - $ry, $xc, $yc - $ry);\n\t\t\t} else {\n\t\t\t\t$this->_outLine($x, $y);\n\t\t\t\t$this->_outLine($x + $rx, $y);\n\t\t\t}\n\t\t\t$this->_out($op);\n\t\t}\n\n\t\t/**\n\t\t * Draws a grahic arrow.\n\t\t * @parameter float $x0 Abscissa of first point.\n\t\t * @parameter float $y0 Ordinate of first point.\n\t\t * @parameter float $x0 Abscissa of second point.\n\t\t * @parameter float $y1 Ordinate of second point.\n\t\t * @parameter int $head_style (0 = draw only arrowhead arms, 1 = draw closed arrowhead, but no fill, 2 = closed and filled arrowhead, 3 = filled arrowhead)\n\t\t * @parameter float $arm_size length of arrowhead arms\n\t\t * @parameter int $arm_angle angle between an arm and the shaft\n\t\t * @author Piotr Galecki, Nicola Asuni, Andy Meier\n\t\t * @since 4.6.018 (2009-07-10)\n\t\t */\n\t\tpublic function Arrow($x0, $y0, $x1, $y1, $head_style=0, $arm_size=5, $arm_angle=15) {\n\t\t\t// getting arrow direction angle\n\t\t\t// 0 deg angle is when both arms go along X axis. angle grows clockwise.\n\t\t\t$dir_angle = atan2(($y0 - $y1), ($x0 - $x1));\n\t\t\tif ($dir_angle < 0) {\n\t\t\t\t$dir_angle += (2 * M_PI);\n\t\t\t}\n\t\t\t$arm_angle = deg2rad($arm_angle);\n\t\t\t$sx1 = $x1;\n\t\t\t$sy1 = $y1;\n\t\t\tif ($head_style > 0) {\n\t\t\t\t// calculate the stopping point for the arrow shaft\n\t\t\t\t$sx1 = $x1 + (($arm_size - $this->LineWidth) * cos($dir_angle));\n\t\t\t\t$sy1 = $y1 + (($arm_size - $this->LineWidth) * sin($dir_angle));\n\t\t\t}\n\t\t\t// main arrow line / shaft\n\t\t\t$this->Line($x0, $y0, $sx1, $sy1);\n\t\t\t// left arrowhead arm tip\n\t\t\t$x2L = $x1 + ($arm_size * cos($dir_angle + $arm_angle));\n\t\t\t$y2L = $y1 + ($arm_size * sin($dir_angle + $arm_angle));\n\t\t\t// right arrowhead arm tip\n\t\t\t$x2R = $x1 + ($arm_size * cos($dir_angle - $arm_angle));\n\t\t\t$y2R = $y1 + ($arm_size * sin($dir_angle - $arm_angle));\n\t\t\t$mode = 'D';\n\t\t\t$style = array();\n\t\t\tswitch ($head_style) {\n\t\t\t\tcase 0: {\n\t\t\t\t\t// draw only arrowhead arms\n\t\t\t\t\t$mode = 'D';\n\t\t\t\t\t$style = array(1, 1, 0);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 1: {\n\t\t\t\t\t// draw closed arrowhead, but no fill\n\t\t\t\t\t$mode = 'D';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 2: {\n\t\t\t\t\t// closed and filled arrowhead\n\t\t\t\t\t$mode = 'DF';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 3: {\n\t\t\t\t\t// filled arrowhead\n\t\t\t\t\t$mode = 'F';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$this->Polygon(array($x2L, $y2L, $x1, $y1, $x2R, $y2R), $mode, $style, array());\n\t\t}\n\n\t\t// END GRAPHIC FUNCTIONS SECTION -----------------------\n\n\t\t// BIDIRECTIONAL TEXT SECTION --------------------------\n\n\t\t/**\n\t\t * Reverse the RLT substrings using the Bidirectional Algorithm (http://unicode.org/reports/tr9/).\n\t\t * @param string $str string to manipulate.\n\t\t * @param bool $setbom  if true set the Byte Order Mark (BOM = 0xFEFF)\n\t\t * @param bool $forcertl if true forces RTL text direction\n\t\t * @return string\n\t\t * @access protected\n\t\t * @author Nicola Asuni\n\t\t * @since 2.1.000 (2008-01-08)\n\t\t */\n\t\tprotected function utf8StrRev($str, $setbom=false, $forcertl=false) {\n\t\t\treturn $this->utf8StrArrRev($this->UTF8StringToArray($str), $str, $setbom, $forcertl);\n\t\t}\n\n\t\t/**\n\t\t * Reverse the RLT substrings array using the Bidirectional Algorithm (http://unicode.org/reports/tr9/).\n\t\t * @param array $arr array of unicode values.\n\t\t * @param string $str string to manipulate (or empty value).\n\t\t * @param bool $setbom  if true set the Byte Order Mark (BOM = 0xFEFF)\n\t\t * @param bool $forcertl if true forces RTL text direction\n\t\t * @return string\n\t\t * @access protected\n\t\t * @author Nicola Asuni\n\t\t * @since 4.9.000 (2010-03-27)\n\t\t */\n\t\tprotected function utf8StrArrRev($arr, $str='', $setbom=false, $forcertl=false) {\n\t\t\treturn $this->arrUTF8ToUTF16BE($this->utf8Bidi($arr, $str, $forcertl), $setbom);\n\t\t}\n\n\t\t/**\n\t\t * Reverse the RLT substrings using the Bidirectional Algorithm (http://unicode.org/reports/tr9/).\n\t\t * @param array $ta array of characters composing the string.\n\t\t * @param string $str string to process\n\t\t * @param bool $forcertl if 'R' forces RTL, if 'L' forces LTR\n\t\t * @return array of unicode chars\n\t\t * @author Nicola Asuni\n\t\t * @access protected\n\t\t * @since 2.4.000 (2008-03-06)\n\t\t */\n\t\tprotected function utf8Bidi($ta, $str='', $forcertl=false) {\n\t\t\tglobal $unicode, $unicode_mirror, $unicode_arlet, $laa_array, $diacritics;\n\t\t\t// paragraph embedding level\n\t\t\t$pel = 0;\n\t\t\t// max level\n\t\t\t$maxlevel = 0;\n\t\t\tif ($this->empty_string($str)) {\n\t\t\t\t// create string from array\n\t\t\t\t$str = $this->UTF8ArrSubString($ta);\n\t\t\t}\n\t\t\t// check if string contains arabic text\n\t\t\tif (preg_match(K_RE_PATTERN_ARABIC, $str)) {\n\t\t\t\t$arabic = true;\n\t\t\t} else {\n\t\t\t\t$arabic = false;\n\t\t\t}\n\t\t\t// check if string contains RTL text\n\t\t\tif (!($forcertl OR $arabic OR preg_match(K_RE_PATTERN_RTL, $str))) {\n\t\t\t\treturn $ta;\n\t\t\t}\n\n\t\t\t// get number of chars\n\t\t\t$numchars = count($ta);\n\n\t\t\tif ($forcertl == 'R') {\n\t\t\t\t$pel = 1;\n\t\t\t} elseif ($forcertl == 'L') {\n\t\t\t\t$pel = 0;\n\t\t\t} else {\n\t\t\t\t// P2. In each paragraph, find the first character of type L, AL, or R.\n\t\t\t\t// P3. If a character is found in P2 and it is of type AL or R, then set the paragraph embedding level to one; otherwise, set it to zero.\n\t\t\t\tfor ($i=0; $i < $numchars; ++$i) {\n\t\t\t\t\t$type = $unicode[$ta[$i]];\n\t\t\t\t\tif ($type == 'L') {\n\t\t\t\t\t\t$pel = 0;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t} elseif (($type == 'AL') OR ($type == 'R')) {\n\t\t\t\t\t\t$pel = 1;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Current Embedding Level\n\t\t\t$cel = $pel;\n\t\t\t// directional override status\n\t\t\t$dos = 'N';\n\t\t\t$remember = array();\n\t\t\t// start-of-level-run\n\t\t\t$sor = $pel % 2 ? 'R' : 'L';\n\t\t\t$eor = $sor;\n\n\t\t\t// Array of characters data\n\t\t\t$chardata = Array();\n\n\t\t\t// X1. Begin by setting the current embedding level to the paragraph embedding level. Set the directional override status to neutral. Process each character iteratively, applying rules X2 through X9. Only embedding levels from 0 to 61 are valid in this phase.\n\t\t\t// \tIn the resolution of levels in rules I1 and I2, the maximum embedding level of 62 can be reached.\n\t\t\tfor ($i=0; $i < $numchars; ++$i) {\n\t\t\t\tif ($ta[$i] == K_RLE) {\n\t\t\t\t\t// X2. With each RLE, compute the least greater odd embedding level.\n\t\t\t\t\t//\ta. If this new level would be valid, then this embedding code is valid. Remember (push) the current embedding level and override status. Reset the current level to this new level, and reset the override status to neutral.\n\t\t\t\t\t//\tb. If the new level would not be valid, then this code is invalid. Do not change the current level or override status.\n\t\t\t\t\t$next_level = $cel + ($cel % 2) + 1;\n\t\t\t\t\tif ($next_level < 62) {\n\t\t\t\t\t\t$remember[] = array('num' => K_RLE, 'cel' => $cel, 'dos' => $dos);\n\t\t\t\t\t\t$cel = $next_level;\n\t\t\t\t\t\t$dos = 'N';\n\t\t\t\t\t\t$sor = $eor;\n\t\t\t\t\t\t$eor = $cel % 2 ? 'R' : 'L';\n\t\t\t\t\t}\n\t\t\t\t} elseif ($ta[$i] == K_LRE) {\n\t\t\t\t\t// X3. With each LRE, compute the least greater even embedding level.\n\t\t\t\t\t//\ta. If this new level would be valid, then this embedding code is valid. Remember (push) the current embedding level and override status. Reset the current level to this new level, and reset the override status to neutral.\n\t\t\t\t\t//\tb. If the new level would not be valid, then this code is invalid. Do not change the current level or override status.\n\t\t\t\t\t$next_level = $cel + 2 - ($cel % 2);\n\t\t\t\t\tif ( $next_level < 62 ) {\n\t\t\t\t\t\t$remember[] = array('num' => K_LRE, 'cel' => $cel, 'dos' => $dos);\n\t\t\t\t\t\t$cel = $next_level;\n\t\t\t\t\t\t$dos = 'N';\n\t\t\t\t\t\t$sor = $eor;\n\t\t\t\t\t\t$eor = $cel % 2 ? 'R' : 'L';\n\t\t\t\t\t}\n\t\t\t\t} elseif ($ta[$i] == K_RLO) {\n\t\t\t\t\t// X4. With each RLO, compute the least greater odd embedding level.\n\t\t\t\t\t//\ta. If this new level would be valid, then this embedding code is valid. Remember (push) the current embedding level and override status. Reset the current level to this new level, and reset the override status to right-to-left.\n\t\t\t\t\t//\tb. If the new level would not be valid, then this code is invalid. Do not change the current level or override status.\n\t\t\t\t\t$next_level = $cel + ($cel % 2) + 1;\n\t\t\t\t\tif ($next_level < 62) {\n\t\t\t\t\t\t$remember[] = array('num' => K_RLO, 'cel' => $cel, 'dos' => $dos);\n\t\t\t\t\t\t$cel = $next_level;\n\t\t\t\t\t\t$dos = 'R';\n\t\t\t\t\t\t$sor = $eor;\n\t\t\t\t\t\t$eor = $cel % 2 ? 'R' : 'L';\n\t\t\t\t\t}\n\t\t\t\t} elseif ($ta[$i] == K_LRO) {\n\t\t\t\t\t// X5. With each LRO, compute the least greater even embedding level.\n\t\t\t\t\t//\ta. If this new level would be valid, then this embedding code is valid. Remember (push) the current embedding level and override status. Reset the current level to this new level, and reset the override status to left-to-right.\n\t\t\t\t\t//\tb. If the new level would not be valid, then this code is invalid. Do not change the current level or override status.\n\t\t\t\t\t$next_level = $cel + 2 - ($cel % 2);\n\t\t\t\t\tif ( $next_level < 62 ) {\n\t\t\t\t\t\t$remember[] = array('num' => K_LRO, 'cel' => $cel, 'dos' => $dos);\n\t\t\t\t\t\t$cel = $next_level;\n\t\t\t\t\t\t$dos = 'L';\n\t\t\t\t\t\t$sor = $eor;\n\t\t\t\t\t\t$eor = $cel % 2 ? 'R' : 'L';\n\t\t\t\t\t}\n\t\t\t\t} elseif ($ta[$i] == K_PDF) {\n\t\t\t\t\t// X7. With each PDF, determine the matching embedding or override code. If there was a valid matching code, restore (pop) the last remembered (pushed) embedding level and directional override.\n\t\t\t\t\tif (count($remember)) {\n\t\t\t\t\t\t$last = count($remember ) - 1;\n\t\t\t\t\t\tif (($remember[$last]['num'] == K_RLE) OR\n\t\t\t\t\t\t\t($remember[$last]['num'] == K_LRE) OR\n\t\t\t\t\t\t\t($remember[$last]['num'] == K_RLO) OR\n\t\t\t\t\t\t\t($remember[$last]['num'] == K_LRO)) {\n\t\t\t\t\t\t\t$match = array_pop($remember);\n\t\t\t\t\t\t\t$cel = $match['cel'];\n\t\t\t\t\t\t\t$dos = $match['dos'];\n\t\t\t\t\t\t\t$sor = $eor;\n\t\t\t\t\t\t\t$eor = ($cel > $match['cel'] ? $cel : $match['cel']) % 2 ? 'R' : 'L';\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} elseif (($ta[$i] != K_RLE) AND\n\t\t\t\t\t\t\t\t ($ta[$i] != K_LRE) AND\n\t\t\t\t\t\t\t\t ($ta[$i] != K_RLO) AND\n\t\t\t\t\t\t\t\t ($ta[$i] != K_LRO) AND\n\t\t\t\t\t\t\t\t ($ta[$i] != K_PDF)) {\n\t\t\t\t\t// X6. For all types besides RLE, LRE, RLO, LRO, and PDF:\n\t\t\t\t\t//\ta. Set the level of the current character to the current embedding level.\n\t\t\t\t\t//\tb. Whenever the directional override status is not neutral, reset the current character type to the directional override status.\n\t\t\t\t\tif ($dos != 'N') {\n\t\t\t\t\t\t$chardir = $dos;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (isset($unicode[$ta[$i]])) {\n\t\t\t\t\t\t\t$chardir = $unicode[$ta[$i]];\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$chardir = 'L';\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t// stores string characters and other information\n\t\t\t\t\t$chardata[] = array('char' => $ta[$i], 'level' => $cel, 'type' => $chardir, 'sor' => $sor, 'eor' => $eor);\n\t\t\t\t}\n\t\t\t} // end for each char\n\n\t\t\t// X8. All explicit directional embeddings and overrides are completely terminated at the end of each paragraph. Paragraph separators are not included in the embedding.\n\t\t\t// X9. Remove all RLE, LRE, RLO, LRO, PDF, and BN codes.\n\t\t\t// X10. The remaining rules are applied to each run of characters at the same level. For each run, determine the start-of-level-run (sor) and end-of-level-run (eor) type, either L or R. This depends on the higher of the two levels on either side of the boundary (at the start or end of the paragraph, the level of the 'other' run is the base embedding level). If the higher level is odd, the type is R; otherwise, it is L.\n\n\t\t\t// 3.3.3 Resolving Weak Types\n\t\t\t// Weak types are now resolved one level run at a time. At level run boundaries where the type of the character on the other side of the boundary is required, the type assigned to sor or eor is used.\n\t\t\t// Nonspacing marks are now resolved based on the previous characters.\n\t\t\t$numchars = count($chardata);\n\n\t\t\t// W1. Examine each nonspacing mark (NSM) in the level run, and change the type of the NSM to the type of the previous character. If the NSM is at the start of the level run, it will get the type of sor.\n\t\t\t$prevlevel = -1; // track level changes\n\t\t\t$levcount = 0; // counts consecutive chars at the same level\n\t\t\tfor ($i=0; $i < $numchars; ++$i) {\n\t\t\t\tif ($chardata[$i]['type'] == 'NSM') {\n\t\t\t\t\tif ($levcount) {\n\t\t\t\t\t\t$chardata[$i]['type'] = $chardata[$i]['sor'];\n\t\t\t\t\t} elseif ($i > 0) {\n\t\t\t\t\t\t$chardata[$i]['type'] = $chardata[($i-1)]['type'];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ($chardata[$i]['level'] != $prevlevel) {\n\t\t\t\t\t$levcount = 0;\n\t\t\t\t} else {\n\t\t\t\t\t++$levcount;\n\t\t\t\t}\n\t\t\t\t$prevlevel = $chardata[$i]['level'];\n\t\t\t}\n\n\t\t\t// W2. Search backward from each instance of a European number until the first strong type (R, L, AL, or sor) is found. If an AL is found, change the type of the European number to Arabic number.\n\t\t\t$prevlevel = -1;\n\t\t\t$levcount = 0;\n\t\t\tfor ($i=0; $i < $numchars; ++$i) {\n\t\t\t\tif ($chardata[$i]['char'] == 'EN') {\n\t\t\t\t\tfor ($j=$levcount; $j >= 0; $j--) {\n\t\t\t\t\t\tif ($chardata[$j]['type'] == 'AL') {\n\t\t\t\t\t\t\t$chardata[$i]['type'] = 'AN';\n\t\t\t\t\t\t} elseif (($chardata[$j]['type'] == 'L') OR ($chardata[$j]['type'] == 'R')) {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ($chardata[$i]['level'] != $prevlevel) {\n\t\t\t\t\t$levcount = 0;\n\t\t\t\t} else {\n\t\t\t\t\t++$levcount;\n\t\t\t\t}\n\t\t\t\t$prevlevel = $chardata[$i]['level'];\n\t\t\t}\n\n\t\t\t// W3. Change all ALs to R.\n\t\t\tfor ($i=0; $i < $numchars; ++$i) {\n\t\t\t\tif ($chardata[$i]['type'] == 'AL') {\n\t\t\t\t\t$chardata[$i]['type'] = 'R';\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// W4. A single European separator between two European numbers changes to a European number. A single common separator between two numbers of the same type changes to that type.\n\t\t\t$prevlevel = -1;\n\t\t\t$levcount = 0;\n\t\t\tfor ($i=0; $i < $numchars; ++$i) {\n\t\t\t\tif (($levcount > 0) AND (($i+1) < $numchars) AND ($chardata[($i+1)]['level'] == $prevlevel)) {\n\t\t\t\t\tif (($chardata[$i]['type'] == 'ES') AND ($chardata[($i-1)]['type'] == 'EN') AND ($chardata[($i+1)]['type'] == 'EN')) {\n\t\t\t\t\t\t$chardata[$i]['type'] = 'EN';\n\t\t\t\t\t} elseif (($chardata[$i]['type'] == 'CS') AND ($chardata[($i-1)]['type'] == 'EN') AND ($chardata[($i+1)]['type'] == 'EN')) {\n\t\t\t\t\t\t$chardata[$i]['type'] = 'EN';\n\t\t\t\t\t} elseif (($chardata[$i]['type'] == 'CS') AND ($chardata[($i-1)]['type'] == 'AN') AND ($chardata[($i+1)]['type'] == 'AN')) {\n\t\t\t\t\t\t$chardata[$i]['type'] = 'AN';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ($chardata[$i]['level'] != $prevlevel) {\n\t\t\t\t\t$levcount = 0;\n\t\t\t\t} else {\n\t\t\t\t\t++$levcount;\n\t\t\t\t}\n\t\t\t\t$prevlevel = $chardata[$i]['level'];\n\t\t\t}\n\n\t\t\t// W5. A sequence of European terminators adjacent to European numbers changes to all European numbers.\n\t\t\t$prevlevel = -1;\n\t\t\t$levcount = 0;\n\t\t\tfor ($i=0; $i < $numchars; ++$i) {\n\t\t\t\tif ($chardata[$i]['type'] == 'ET') {\n\t\t\t\t\tif (($levcount > 0) AND ($chardata[($i-1)]['type'] == 'EN')) {\n\t\t\t\t\t\t$chardata[$i]['type'] = 'EN';\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$j = $i+1;\n\t\t\t\t\t\twhile (($j < $numchars) AND ($chardata[$j]['level'] == $prevlevel)) {\n\t\t\t\t\t\t\tif ($chardata[$j]['type'] == 'EN') {\n\t\t\t\t\t\t\t\t$chardata[$i]['type'] = 'EN';\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t} elseif ($chardata[$j]['type'] != 'ET') {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t++$j;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ($chardata[$i]['level'] != $prevlevel) {\n\t\t\t\t\t$levcount = 0;\n\t\t\t\t} else {\n\t\t\t\t\t++$levcount;\n\t\t\t\t}\n\t\t\t\t$prevlevel = $chardata[$i]['level'];\n\t\t\t}\n\n\t\t\t// W6. Otherwise, separators and terminators change to Other Neutral.\n\t\t\t$prevlevel = -1;\n\t\t\t$levcount = 0;\n\t\t\tfor ($i=0; $i < $numchars; ++$i) {\n\t\t\t\tif (($chardata[$i]['type'] == 'ET') OR ($chardata[$i]['type'] == 'ES') OR ($chardata[$i]['type'] == 'CS')) {\n\t\t\t\t\t$chardata[$i]['type'] = 'ON';\n\t\t\t\t}\n\t\t\t\tif ($chardata[$i]['level'] != $prevlevel) {\n\t\t\t\t\t$levcount = 0;\n\t\t\t\t} else {\n\t\t\t\t\t++$levcount;\n\t\t\t\t}\n\t\t\t\t$prevlevel = $chardata[$i]['level'];\n\t\t\t}\n\n\t\t\t//W7. Search backward from each instance of a European number until the first strong type (R, L, or sor) is found. If an L is found, then change the type of the European number to L.\n\t\t\t$prevlevel = -1;\n\t\t\t$levcount = 0;\n\t\t\tfor ($i=0; $i < $numchars; ++$i) {\n\t\t\t\tif ($chardata[$i]['char'] == 'EN') {\n\t\t\t\t\tfor ($j=$levcount; $j >= 0; $j--) {\n\t\t\t\t\t\tif ($chardata[$j]['type'] == 'L') {\n\t\t\t\t\t\t\t$chardata[$i]['type'] = 'L';\n\t\t\t\t\t\t} elseif ($chardata[$j]['type'] == 'R') {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ($chardata[$i]['level'] != $prevlevel) {\n\t\t\t\t\t$levcount = 0;\n\t\t\t\t} else {\n\t\t\t\t\t++$levcount;\n\t\t\t\t}\n\t\t\t\t$prevlevel = $chardata[$i]['level'];\n\t\t\t}\n\n\t\t\t// N1. A sequence of neutrals takes the direction of the surrounding strong text if the text on both sides has the same direction. European and Arabic numbers act as if they were R in terms of their influence on neutrals. Start-of-level-run (sor) and end-of-level-run (eor) are used at level run boundaries.\n\t\t\t$prevlevel = -1;\n\t\t\t$levcount = 0;\n\t\t\tfor ($i=0; $i < $numchars; ++$i) {\n\t\t\t\tif (($levcount > 0) AND (($i+1) < $numchars) AND ($chardata[($i+1)]['level'] == $prevlevel)) {\n\t\t\t\t\tif (($chardata[$i]['type'] == 'N') AND ($chardata[($i-1)]['type'] == 'L') AND ($chardata[($i+1)]['type'] == 'L')) {\n\t\t\t\t\t\t$chardata[$i]['type'] = 'L';\n\t\t\t\t\t} elseif (($chardata[$i]['type'] == 'N') AND\n\t\t\t\t\t (($chardata[($i-1)]['type'] == 'R') OR ($chardata[($i-1)]['type'] == 'EN') OR ($chardata[($i-1)]['type'] == 'AN')) AND\n\t\t\t\t\t (($chardata[($i+1)]['type'] == 'R') OR ($chardata[($i+1)]['type'] == 'EN') OR ($chardata[($i+1)]['type'] == 'AN'))) {\n\t\t\t\t\t\t$chardata[$i]['type'] = 'R';\n\t\t\t\t\t} elseif ($chardata[$i]['type'] == 'N') {\n\t\t\t\t\t\t// N2. Any remaining neutrals take the embedding direction\n\t\t\t\t\t\t$chardata[$i]['type'] = $chardata[$i]['sor'];\n\t\t\t\t\t}\n\t\t\t\t} elseif (($levcount == 0) AND (($i+1) < $numchars) AND ($chardata[($i+1)]['level'] == $prevlevel)) {\n\t\t\t\t\t// first char\n\t\t\t\t\tif (($chardata[$i]['type'] == 'N') AND ($chardata[$i]['sor'] == 'L') AND ($chardata[($i+1)]['type'] == 'L')) {\n\t\t\t\t\t\t$chardata[$i]['type'] = 'L';\n\t\t\t\t\t} elseif (($chardata[$i]['type'] == 'N') AND\n\t\t\t\t\t (($chardata[$i]['sor'] == 'R') OR ($chardata[$i]['sor'] == 'EN') OR ($chardata[$i]['sor'] == 'AN')) AND\n\t\t\t\t\t (($chardata[($i+1)]['type'] == 'R') OR ($chardata[($i+1)]['type'] == 'EN') OR ($chardata[($i+1)]['type'] == 'AN'))) {\n\t\t\t\t\t\t$chardata[$i]['type'] = 'R';\n\t\t\t\t\t} elseif ($chardata[$i]['type'] == 'N') {\n\t\t\t\t\t\t// N2. Any remaining neutrals take the embedding direction\n\t\t\t\t\t\t$chardata[$i]['type'] = $chardata[$i]['sor'];\n\t\t\t\t\t}\n\t\t\t\t} elseif (($levcount > 0) AND ((($i+1) == $numchars) OR (($i+1) < $numchars) AND ($chardata[($i+1)]['level'] != $prevlevel))) {\n\t\t\t\t\t//last char\n\t\t\t\t\tif (($chardata[$i]['type'] == 'N') AND ($chardata[($i-1)]['type'] == 'L') AND ($chardata[$i]['eor'] == 'L')) {\n\t\t\t\t\t\t$chardata[$i]['type'] = 'L';\n\t\t\t\t\t} elseif (($chardata[$i]['type'] == 'N') AND\n\t\t\t\t\t (($chardata[($i-1)]['type'] == 'R') OR ($chardata[($i-1)]['type'] == 'EN') OR ($chardata[($i-1)]['type'] == 'AN')) AND\n\t\t\t\t\t (($chardata[$i]['eor'] == 'R') OR ($chardata[$i]['eor'] == 'EN') OR ($chardata[$i]['eor'] == 'AN'))) {\n\t\t\t\t\t\t$chardata[$i]['type'] = 'R';\n\t\t\t\t\t} elseif ($chardata[$i]['type'] == 'N') {\n\t\t\t\t\t\t// N2. Any remaining neutrals take the embedding direction\n\t\t\t\t\t\t$chardata[$i]['type'] = $chardata[$i]['sor'];\n\t\t\t\t\t}\n\t\t\t\t} elseif ($chardata[$i]['type'] == 'N') {\n\t\t\t\t\t// N2. Any remaining neutrals take the embedding direction\n\t\t\t\t\t$chardata[$i]['type'] = $chardata[$i]['sor'];\n\t\t\t\t}\n\t\t\t\tif ($chardata[$i]['level'] != $prevlevel) {\n\t\t\t\t\t$levcount = 0;\n\t\t\t\t} else {\n\t\t\t\t\t++$levcount;\n\t\t\t\t}\n\t\t\t\t$prevlevel = $chardata[$i]['level'];\n\t\t\t}\n\n\t\t\t// I1. For all characters with an even (left-to-right) embedding direction, those of type R go up one level and those of type AN or EN go up two levels.\n\t\t\t// I2. For all characters with an odd (right-to-left) embedding direction, those of type L, EN or AN go up one level.\n\t\t\tfor ($i=0; $i < $numchars; ++$i) {\n\t\t\t\t$odd = $chardata[$i]['level'] % 2;\n\t\t\t\tif ($odd) {\n\t\t\t\t\tif (($chardata[$i]['type'] == 'L') OR ($chardata[$i]['type'] == 'AN') OR ($chardata[$i]['type'] == 'EN')) {\n\t\t\t\t\t\t$chardata[$i]['level'] += 1;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif ($chardata[$i]['type'] == 'R') {\n\t\t\t\t\t\t$chardata[$i]['level'] += 1;\n\t\t\t\t\t} elseif (($chardata[$i]['type'] == 'AN') OR ($chardata[$i]['type'] == 'EN')) {\n\t\t\t\t\t\t$chardata[$i]['level'] += 2;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t$maxlevel = max($chardata[$i]['level'],$maxlevel);\n\t\t\t}\n\n\t\t\t// L1. On each line, reset the embedding level of the following characters to the paragraph embedding level:\n\t\t\t//\t1. Segment separators,\n\t\t\t//\t2. Paragraph separators,\n\t\t\t//\t3. Any sequence of whitespace characters preceding a segment separator or paragraph separator, and\n\t\t\t//\t4. Any sequence of white space characters at the end of the line.\n\t\t\tfor ($i=0; $i < $numchars; ++$i) {\n\t\t\t\tif (($chardata[$i]['type'] == 'B') OR ($chardata[$i]['type'] == 'S')) {\n\t\t\t\t\t$chardata[$i]['level'] = $pel;\n\t\t\t\t} elseif ($chardata[$i]['type'] == 'WS') {\n\t\t\t\t\t$j = $i+1;\n\t\t\t\t\twhile ($j < $numchars) {\n\t\t\t\t\t\tif ((($chardata[$j]['type'] == 'B') OR ($chardata[$j]['type'] == 'S')) OR\n\t\t\t\t\t\t\t(($j == ($numchars-1)) AND ($chardata[$j]['type'] == 'WS'))) {\n\t\t\t\t\t\t\t$chardata[$i]['level'] = $pel;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t} elseif ($chardata[$j]['type'] != 'WS') {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t++$j;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Arabic Shaping\n\t\t\t// Cursively connected scripts, such as Arabic or Syriac, require the selection of positional character shapes that depend on adjacent characters. Shaping is logically applied after the Bidirectional Algorithm is used and is limited to characters within the same directional run.\n\t\t\tif ($arabic) {\n\t\t\t\t$endedletter = array(1569,1570,1571,1572,1573,1575,1577,1583,1584,1585,1586,1608,1688);\n\t\t\t\t$alfletter = array(1570,1571,1573,1575);\n\t\t\t\t$chardata2 = $chardata;\n\t\t\t\t$laaletter = false;\n\t\t\t\t$charAL = array();\n\t\t\t\t$x = 0;\n\t\t\t\tfor ($i=0; $i < $numchars; ++$i) {\n\t\t\t\t\tif (($unicode[$chardata[$i]['char']] == 'AL') OR ($chardata[$i]['char'] == 32) OR ($chardata[$i]['char'] == 8204)) {\n\t\t\t\t\t\t$charAL[$x] = $chardata[$i];\n\t\t\t\t\t\t$charAL[$x]['i'] = $i;\n\t\t\t\t\t\t$chardata[$i]['x'] = $x;\n\t\t\t\t\t\t++$x;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t$numAL = $x;\n\t\t\t\tfor ($i=0; $i < $numchars; ++$i) {\n\t\t\t\t\t$thischar = $chardata[$i];\n\t\t\t\t\tif ($i > 0) {\n\t\t\t\t\t\t$prevchar = $chardata[($i-1)];\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$prevchar = false;\n\t\t\t\t\t}\n\t\t\t\t\tif (($i+1) < $numchars) {\n\t\t\t\t\t\t$nextchar = $chardata[($i+1)];\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$nextchar = false;\n\t\t\t\t\t}\n\t\t\t\t\tif ($unicode[$thischar['char']] == 'AL') {\n\t\t\t\t\t\t$x = $thischar['x'];\n\t\t\t\t\t\tif ($x > 0) {\n\t\t\t\t\t\t\t$prevchar = $charAL[($x-1)];\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$prevchar = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (($x+1) < $numAL) {\n\t\t\t\t\t\t\t$nextchar = $charAL[($x+1)];\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$nextchar = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// if laa letter\n\t\t\t\t\t\tif (($prevchar !== false) AND ($prevchar['char'] == 1604) AND (in_array($thischar['char'], $alfletter))) {\n\t\t\t\t\t\t\t$arabicarr = $laa_array;\n\t\t\t\t\t\t\t$laaletter = true;\n\t\t\t\t\t\t\tif ($x > 1) {\n\t\t\t\t\t\t\t\t$prevchar = $charAL[($x-2)];\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$prevchar = false;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$arabicarr = $unicode_arlet;\n\t\t\t\t\t\t\t$laaletter = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (($prevchar !== false) AND ($nextchar !== false) AND\n\t\t\t\t\t\t\t(($unicode[$prevchar['char']] == 'AL') OR ($unicode[$prevchar['char']] == 'NSM')) AND\n\t\t\t\t\t\t\t(($unicode[$nextchar['char']] == 'AL') OR ($unicode[$nextchar['char']] == 'NSM')) AND\n\t\t\t\t\t\t\t($prevchar['type'] == $thischar['type']) AND\n\t\t\t\t\t\t\t($nextchar['type'] == $thischar['type']) AND\n\t\t\t\t\t\t\t($nextchar['char'] != 1567)) {\n\t\t\t\t\t\t\tif (in_array($prevchar['char'], $endedletter)) {\n\t\t\t\t\t\t\t\tif (isset($arabicarr[$thischar['char']][2])) {\n\t\t\t\t\t\t\t\t\t// initial\n\t\t\t\t\t\t\t\t\t$chardata2[$i]['char'] = $arabicarr[$thischar['char']][2];\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tif (isset($arabicarr[$thischar['char']][3])) {\n\t\t\t\t\t\t\t\t\t// medial\n\t\t\t\t\t\t\t\t\t$chardata2[$i]['char'] = $arabicarr[$thischar['char']][3];\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} elseif (($nextchar !== false) AND\n\t\t\t\t\t\t\t(($unicode[$nextchar['char']] == 'AL') OR ($unicode[$nextchar['char']] == 'NSM')) AND\n\t\t\t\t\t\t\t($nextchar['type'] == $thischar['type']) AND\n\t\t\t\t\t\t\t($nextchar['char'] != 1567)) {\n\t\t\t\t\t\t\tif (isset($arabicarr[$chardata[$i]['char']][2])) {\n\t\t\t\t\t\t\t\t// initial\n\t\t\t\t\t\t\t\t$chardata2[$i]['char'] = $arabicarr[$thischar['char']][2];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} elseif ((($prevchar !== false) AND\n\t\t\t\t\t\t\t(($unicode[$prevchar['char']] == 'AL') OR ($unicode[$prevchar['char']] == 'NSM')) AND\n\t\t\t\t\t\t\t($prevchar['type'] == $thischar['type'])) OR\n\t\t\t\t\t\t\t(($nextchar !== false) AND ($nextchar['char'] == 1567))) {\n\t\t\t\t\t\t\t// final\n\t\t\t\t\t\t\tif (($i > 1) AND ($thischar['char'] == 1607) AND\n\t\t\t\t\t\t\t\t($chardata[$i-1]['char'] == 1604) AND\n\t\t\t\t\t\t\t\t($chardata[$i-2]['char'] == 1604)) {\n\t\t\t\t\t\t\t\t//Allah Word\n\t\t\t\t\t\t\t\t// mark characters to delete with false\n\t\t\t\t\t\t\t\t$chardata2[$i-2]['char'] = false;\n\t\t\t\t\t\t\t\t$chardata2[$i-1]['char'] = false;\n\t\t\t\t\t\t\t\t$chardata2[$i]['char'] = 65010;\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tif (($prevchar !== false) AND in_array($prevchar['char'], $endedletter)) {\n\t\t\t\t\t\t\t\t\tif (isset($arabicarr[$thischar['char']][0])) {\n\t\t\t\t\t\t\t\t\t\t// isolated\n\t\t\t\t\t\t\t\t\t\t$chardata2[$i]['char'] = $arabicarr[$thischar['char']][0];\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tif (isset($arabicarr[$thischar['char']][1])) {\n\t\t\t\t\t\t\t\t\t\t// final\n\t\t\t\t\t\t\t\t\t\t$chardata2[$i]['char'] = $arabicarr[$thischar['char']][1];\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} elseif (isset($arabicarr[$thischar['char']][0])) {\n\t\t\t\t\t\t\t// isolated\n\t\t\t\t\t\t\t$chardata2[$i]['char'] = $arabicarr[$thischar['char']][0];\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// if laa letter\n\t\t\t\t\t\tif ($laaletter) {\n\t\t\t\t\t\t\t// mark characters to delete with false\n\t\t\t\t\t\t\t$chardata2[($charAL[($x-1)]['i'])]['char'] = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t} // end if AL (Arabic Letter)\n\t\t\t\t} // end for each char\n\t\t\t\t/*\n\t\t\t\t * Combining characters that can occur with Arabic Shadda (0651 HEX, 1617 DEC) are replaced.\n\t\t\t\t * Putting the combining mark and shadda in the same glyph allows us to avoid the two marks overlapping each other in an illegible manner.\n\t\t\t\t */\n\t\t\t\t$cw = &$this->CurrentFont['cw'];\n\t\t\t\tfor ($i = 0; $i < ($numchars-1); ++$i) {\n\t\t\t\t\tif (($chardata2[$i]['char'] == 1617) AND (isset($diacritics[($chardata2[$i+1]['char'])]))) {\n\t\t\t\t\t\t// check if the subtitution font is defined on current font\n\t\t\t\t\t\tif (isset($cw[($diacritics[($chardata2[$i+1]['char'])])])) {\n\t\t\t\t\t\t\t$chardata2[$i]['char'] = false;\n\t\t\t\t\t\t\t$chardata2[$i+1]['char'] = $diacritics[($chardata2[$i+1]['char'])];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// remove marked characters\n\t\t\t\tforeach ($chardata2 as $key => $value) {\n\t\t\t\t\tif ($value['char'] === false) {\n\t\t\t\t\t\tunset($chardata2[$key]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t$chardata = array_values($chardata2);\n\t\t\t\t$numchars = count($chardata);\n\t\t\t\tunset($chardata2);\n\t\t\t\tunset($arabicarr);\n\t\t\t\tunset($laaletter);\n\t\t\t\tunset($charAL);\n\t\t\t}\n\n\t\t\t// L2. From the highest level found in the text to the lowest odd level on each line, including intermediate levels not actually present in the text, reverse any contiguous sequence of characters that are at that level or higher.\n\t\t\tfor ($j=$maxlevel; $j > 0; $j--) {\n\t\t\t\t$ordarray = Array();\n\t\t\t\t$revarr = Array();\n\t\t\t\t$onlevel = false;\n\t\t\t\tfor ($i=0; $i < $numchars; ++$i) {\n\t\t\t\t\tif ($chardata[$i]['level'] >= $j) {\n\t\t\t\t\t\t$onlevel = true;\n\t\t\t\t\t\tif (isset($unicode_mirror[$chardata[$i]['char']])) {\n\t\t\t\t\t\t\t// L4. A character is depicted by a mirrored glyph if and only if (a) the resolved directionality of that character is R, and (b) the Bidi_Mirrored property value of that character is true.\n\t\t\t\t\t\t\t$chardata[$i]['char'] = $unicode_mirror[$chardata[$i]['char']];\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$revarr[] = $chardata[$i];\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif ($onlevel) {\n\t\t\t\t\t\t\t$revarr = array_reverse($revarr);\n\t\t\t\t\t\t\t$ordarray = array_merge($ordarray, $revarr);\n\t\t\t\t\t\t\t$revarr = Array();\n\t\t\t\t\t\t\t$onlevel = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$ordarray[] = $chardata[$i];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ($onlevel) {\n\t\t\t\t\t$revarr = array_reverse($revarr);\n\t\t\t\t\t$ordarray = array_merge($ordarray, $revarr);\n\t\t\t\t}\n\t\t\t\t$chardata = $ordarray;\n\t\t\t}\n\n\t\t\t$ordarray = array();\n\t\t\tfor ($i=0; $i < $numchars; ++$i) {\n\t\t\t\t$ordarray[] = $chardata[$i]['char'];\n\t\t\t}\n\n\t\t\treturn $ordarray;\n\t\t}\n\n\t\t// END OF BIDIRECTIONAL TEXT SECTION -------------------\n\n\t\t/**\n\t\t * Adds a bookmark.\n\t\t * @param string $txt bookmark description.\n\t\t * @param int $level bookmark level (minimum value is 0).\n\t\t * @param float $y Ordinate of the boorkmark position (default = -1 = current position).\n\t\t * @param int $page target page number (leave empty for current page).\n\t\t * @access public\n\t\t * @author Olivier Plathey, Nicola Asuni\n\t\t * @since 2.1.002 (2008-02-12)\n\t\t */\n\t\tpublic function Bookmark($txt, $level=0, $y=-1, $page='') {\n\t\t\tif ($level < 0) {\n\t\t\t\t$level = 0;\n\t\t\t}\n\t\t\tif (isset($this->outlines[0])) {\n\t\t\t\t$lastoutline = end($this->outlines);\n\t\t\t\t$maxlevel = $lastoutline['l'] + 1;\n\t\t\t} else {\n\t\t\t\t$maxlevel = 0;\n\t\t\t}\n\t\t\tif ($level > $maxlevel) {\n\t\t\t\t$level = $maxlevel;\n\t\t\t}\n\t\t\tif ($y == -1) {\n\t\t\t\t$y = $this->GetY();\n\t\t\t}\n\t\t\tif (empty($page)) {\n\t\t\t\t$page = $this->PageNo();\n\t\t\t}\n\t\t\t$this->outlines[] = array('t' => $txt, 'l' => $level, 'y' => $y, 'p' => $page);\n\t\t}\n\n\t\t/**\n\t\t * Create a bookmark PDF string.\n\t\t * @access protected\n\t\t * @author Olivier Plathey, Nicola Asuni\n\t\t * @since 2.1.002 (2008-02-12)\n\t\t */\n\t\tprotected function _putbookmarks() {\n\t\t\t$nb = count($this->outlines);\n\t\t\tif ($nb == 0) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// get sorting columns\n\t\t\t$outline_p = array();\n\t\t\t$outline_y = array();\n\t\t\tforeach ($this->outlines as $key => $row) {\n\t\t\t\t$outline_p[$key]  = $row['p'];\n\t\t\t\t$outline_k[$key] = $key;\n\t\t\t}\n\t\t\t// sort outlines by page and original position\n\t\t\tarray_multisort($outline_p, SORT_NUMERIC, SORT_ASC, $outline_k, SORT_NUMERIC, SORT_ASC, $this->outlines);\n\t\t\t$lru = array();\n\t\t\t$level = 0;\n\t\t\tforeach ($this->outlines as $i => $o) {\n\t\t\t\tif ($o['l'] > 0) {\n\t\t\t\t\t$parent = $lru[($o['l'] - 1)];\n\t\t\t\t\t//Set parent and last pointers\n\t\t\t\t\t$this->outlines[$i]['parent'] = $parent;\n\t\t\t\t\t$this->outlines[$parent]['last'] = $i;\n\t\t\t\t\tif ($o['l'] > $level) {\n\t\t\t\t\t\t//Level increasing: set first pointer\n\t\t\t\t\t\t$this->outlines[$parent]['first'] = $i;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t$this->outlines[$i]['parent'] = $nb;\n\t\t\t\t}\n\t\t\t\tif (($o['l'] <= $level) AND ($i > 0)) {\n\t\t\t\t\t//Set prev and next pointers\n\t\t\t\t\t$prev = $lru[$o['l']];\n\t\t\t\t\t$this->outlines[$prev]['next'] = $i;\n\t\t\t\t\t$this->outlines[$i]['prev'] = $prev;\n\t\t\t\t}\n\t\t\t\t$lru[$o['l']] = $i;\n\t\t\t\t$level = $o['l'];\n\t\t\t}\n\t\t\t//Outline items\n\t\t\t$n = $this->n + 1;\n\t\t\tforeach ($this->outlines as $i => $o) {\n\t\t\t\t$this->_newobj();\n\t\t\t\t// covert HTML title to string\n\t\t\t\t$nltags = '/<br[\\s]?\\/>|<\\/(blockquote|dd|dl|div|dt|h1|h2|h3|h4|h5|h6|hr|li|ol|p|pre|ul|tcpdf|table|tr|td)>/si';\n\t\t\t\t$title = preg_replace($nltags, \"\\n\", $o['t']);\n\t\t\t\t$title = preg_replace(\"/[\\r]+/si\", '', $title);\n\t\t\t\t$title = preg_replace(\"/[\\n]+/si\", \"\\n\", $title);\n\t\t\t\t$title = strip_tags(trim($title));\n\t\t\t\t$out = '<</Title '.$this->_textstring($title);\n\t\t\t\t$out .= ' /Parent '.($n + $o['parent']).' 0 R';\n\t\t\t\tif (isset($o['prev'])) {\n\t\t\t\t\t$out .= ' /Prev '.($n + $o['prev']).' 0 R';\n\t\t\t\t}\n\t\t\t\tif (isset($o['next'])) {\n\t\t\t\t\t$out .= ' /Next '.($n + $o['next']).' 0 R';\n\t\t\t\t}\n\t\t\t\tif (isset($o['first'])) {\n\t\t\t\t\t$out .= ' /First '.($n + $o['first']).' 0 R';\n\t\t\t\t}\n\t\t\t\tif (isset($o['last'])) {\n\t\t\t\t\t$out .= ' /Last '.($n + $o['last']).' 0 R';\n\t\t\t\t}\n\t\t\t\t$out .= ' '.sprintf('/Dest [%d 0 R /XYZ 0 %.2F null]', (1 + (2 * $o['p'])), ($this->pagedim[$o['p']]['h'] - ($o['y'] * $this->k)));\n\t\t\t\t$out .= ' /Count 0 >> endobj';\n\t\t\t\t$this->_out($out);\n\t\t\t}\n\t\t\t//Outline root\n\t\t\t$this->_newobj();\n\t\t\t$this->OutlineRoot = $this->n;\n\t\t\t$this->_out('<< /Type /Outlines /First '.$n.' 0 R /Last '.($n + $lru[0]).' 0 R >> endobj');\n\t\t}\n\n\t\t// --- JAVASCRIPT ------------------------------------------------------\n\n\t\t/**\n\t\t * Adds a javascript\n\t\t * @param string $script Javascript code\n\t\t * @access public\n\t\t * @author Johannes Gntert, Nicola Asuni\n\t\t * @since 2.1.002 (2008-02-12)\n\t\t */\n\t\tpublic function IncludeJS($script) {\n\t\t\t$this->javascript .= $script;\n\t\t}\n\n\t\t/**\n\t\t * Adds a javascript object and return object ID\n\t\t * @param string $script Javascript code\n\t\t * @param boolean $onload if true executes this object when opening the document\n\t\t * @return int internal object ID\n\t\t * @access public\n\t\t * @author Nicola Asuni\n\t\t * @since 4.8.000 (2009-09-07)\n\t\t */\n\t\tpublic function addJavascriptObject($script, $onload=false) {\n\t\t\t++$this->js_obj_id;\n\t\t\t$this->js_objects[$this->js_obj_id] = array('js' => $script, 'onload' => $onload);\n\t\t\treturn $this->js_obj_id;\n\t\t}\n\n\t\t/**\n\t\t * Create a javascript PDF string.\n\t\t * @access protected\n\t\t * @author Johannes Gntert, Nicola Asuni\n\t\t * @since 2.1.002 (2008-02-12)\n\t\t */\n\t\tprotected function _putjavascript() {\n\t\t\tif (empty($this->javascript) AND empty($this->js_objects)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (strpos($this->javascript, 'this.addField') > 0) {\n\t\t\t\tif (!$this->ur) {\n\t\t\t\t\t//$this->setUserRights();\n\t\t\t\t}\n\t\t\t\t// the following two lines are used to avoid form fields duplication after saving\n\t\t\t\t// The addField method only works on Acrobat Writer, unless the document is signed with Adobe private key (UR3)\n\t\t\t\t$jsa = sprintf(\"ftcpdfdocsaved=this.addField('%s','%s',%d,[%.2F,%.2F,%.2F,%.2F]);\", 'tcpdfdocsaved', 'text', 0, 0, 1, 0, 1);\n\t\t\t\t$jsb = \"getField('tcpdfdocsaved').value='saved';\";\n\t\t\t\t$this->javascript = $jsa.\"\\n\".$this->javascript.\"\\n\".$jsb;\n\t\t\t}\n\t\t\t$this->n_js = $this->_newobj();\n\t\t\t$out = ' << /Names [';\n\t\t\tif (!empty($this->javascript)) {\n\t\t\t\t$out .= ' (EmbeddedJS) '.($this->n + 1).' 0 R';\n\t\t\t}\n\t\t\tif (!empty($this->js_objects)) {\n\t\t\t\tforeach ($this->js_objects as $key => $val) {\n\t\t\t\t\tif ($val['onload']) {\n\t\t\t\t\t\t$out .= ' (JS'.$key.') '.$key.' 0 R';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t$out .= ' ] >> endobj';\n\t\t\t$this->_out($out);\n\t\t\t// default Javascript object\n\t\t\tif (!empty($this->javascript)) {\n\t\t\t\t$this->_newobj();\n\t\t\t\t$out = '<< /S /JavaScript';\n\t\t\t\t$out .= ' /JS '.$this->_textstring($this->javascript);\n\t\t\t\t$out .= ' >> endobj';\n\t\t\t\t$this->_out($out);\n\t\t\t}\n\t\t\t// additional Javascript objects\n\t\t\tif (!empty($this->js_objects)) {\n\t\t\t\tforeach ($this->js_objects as $key => $val) {\n\t\t\t\t\t$this->offsets[$key] = $this->bufferlen;\n\t\t\t\t\t$out = $key.' 0 obj'.\"\\n\".' << /S /JavaScript /JS '.$this->_textstring($val['js']).' >> endobj';\n\t\t\t\t\t$this->_out($out);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Convert color to javascript color.\n\t\t * @param string $color color name or #RRGGBB\n\t\t * @access protected\n\t\t * @author Denis Van Nuffelen, Nicola Asuni\n\t\t * @since 2.1.002 (2008-02-12)\n\t\t */\n\t\tprotected function _JScolor($color) {\n\t\t\tstatic $aColors = array('transparent', 'black', 'white', 'red', 'green', 'blue', 'cyan', 'magenta', 'yellow', 'dkGray', 'gray', 'ltGray');\n\t\t\tif (substr($color,0,1) == '#') {\n\t\t\t\treturn sprintf(\"['RGB',%.3F,%.3F,%.3F]\", hexdec(substr($color,1,2))/255, hexdec(substr($color,3,2))/255, hexdec(substr($color,5,2))/255);\n\t\t\t}\n\t\t\tif (!in_array($color,$aColors)) {\n\t\t\t\t$this->Error('Invalid color: '.$color);\n\t\t\t}\n\t\t\treturn 'color.'.$color;\n\t\t}\n\n\t\t/**\n\t\t * Adds a javascript form field.\n\t\t * @param string $type field type\n\t\t * @param string $name field name\n\t\t * @param int $x horizontal position\n\t\t * @param int $y vertical position\n\t\t * @param int $w width\n\t\t * @param int $h height\n\t\t * @param array $prop javascript field properties. Possible values are described on official Javascript for Acrobat API reference.\n\t\t * @access protected\n\t\t * @author Denis Van Nuffelen, Nicola Asuni\n\t\t * @since 2.1.002 (2008-02-12)\n\t\t */\n\t\tprotected function _addfield($type, $name, $x, $y, $w, $h, $prop) {\n\t\t\tif ($this->rtl) {\n\t\t\t\t$x = $x - $w;\n\t\t\t}\n\t\t\t// the followind avoid fields duplication after saving the document\n\t\t\t$this->javascript .= \"if(getField('tcpdfdocsaved').value != 'saved') {\";\n\t\t\t$k = $this->k;\n\t\t\t$this->javascript .= sprintf(\"f\".$name.\"=this.addField('%s','%s',%d,[%.2F,%.2F,%.2F,%.2F]);\", $name, $type, $this->PageNo()-1, $x*$k, ($this->h-$y)*$k+1, ($x+$w)*$k, ($this->h-$y-$h)*$k+1).\"\\n\";\n\t\t\t$this->javascript .= 'f'.$name.'.textSize='.$this->FontSizePt.\";\\n\";\n\t\t\twhile (list($key, $val) = each($prop)) {\n\t\t\t\tif (strcmp(substr($key, -5), 'Color') == 0) {\n\t\t\t\t\t$val = $this->_JScolor($val);\n\t\t\t\t} else {\n\t\t\t\t\t$val = \"'\".$val.\"'\";\n\t\t\t\t}\n\t\t\t\t$this->javascript .= 'f'.$name.'.'.$key.'='.$val.\";\\n\";\n\t\t\t}\n\t\t\tif ($this->rtl) {\n\t\t\t\t$this->x -= $w;\n\t\t\t} else {\n\t\t\t\t$this->x += $w;\n\t\t\t}\n\t\t\t$this->javascript .= '}';\n\t\t}\n\n\t\t// --- FORM FIELDS -----------------------------------------------------\n\n\t\t/**\n\t\t * Convert JavaScript form fields properties array to Annotation Properties array.\n\t\t * @param array $prop javascript field properties. Possible values are described on official Javascript for Acrobat API reference.\n\t\t * @return array of annotation properties\n\t\t * @access protected\n\t\t * @author Nicola Asuni\n\t\t * @since 4.8.000 (2009-09-06)\n\t\t */\n\t\tprotected function getAnnotOptFromJSProp($prop) {\n\t\t\tif (isset($prop['aopt']) AND is_array($prop['aopt'])) {\n\t\t\t\t// the annotation options area lready defined\n\t\t\t\treturn $prop['aopt'];\n\t\t\t}\n\t\t\t$opt = array(); // value to be returned\n\t\t\t// alignment: Controls how the text is laid out within the text field.\n\t\t\tif (isset($prop['alignment'])) {\n\t\t\t\tswitch ($prop['alignment']) {\n\t\t\t\t\tcase 'left': {\n\t\t\t\t\t\t$opt['q'] = 0;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'center': {\n\t\t\t\t\t\t$opt['q'] = 1;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'right': {\n\t\t\t\t\t\t$opt['q'] = 2;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tdefault: {\n\t\t\t\t\t\t$opt['q'] = ($this->rtl)?2:0;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t// lineWidth: Specifies the thickness of the border when stroking the perimeter of a field's rectangle.\n\t\t\tif (isset($prop['lineWidth'])) {\n\t\t\t\t$linewidth = intval($prop['lineWidth']);\n\t\t\t} else {\n\t\t\t\t$linewidth = 1;\n\t\t\t}\n\t\t\t// borderStyle: The border style for a field.\n\t\t\tif (isset($prop['borderStyle'])) {\n\t\t\t\tswitch ($prop['borderStyle']) {\n\t\t\t\t\tcase 'border.d':\n\t\t\t\t\tcase 'dashed': {\n\t\t\t\t\t\t$opt['border'] = array(0, 0, $linewidth, array(3, 2));\n\t\t\t\t\t\t$opt['bs'] = array('w'=>$linewidth, 's'=>'D', 'd'=>array(3, 2));\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'border.b':\n\t\t\t\t\tcase 'beveled': {\n\t\t\t\t\t\t$opt['border'] = array(0, 0, $linewidth);\n\t\t\t\t\t\t$opt['bs'] = array('w'=>$linewidth, 's'=>'B');\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'border.i':\n\t\t\t\t\tcase 'inset': {\n\t\t\t\t\t\t$opt['border'] = array(0, 0, $linewidth);\n\t\t\t\t\t\t$opt['bs'] = array('w'=>$linewidth, 's'=>'I');\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'border.u':\n\t\t\t\t\tcase 'underline': {\n\t\t\t\t\t\t$opt['border'] = array(0, 0, $linewidth);\n\t\t\t\t\t\t$opt['bs'] = array('w'=>$linewidth, 's'=>'U');\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tdefault:\n\t\t\t\t\tcase 'border.s':\n\t\t\t\t\tcase 'solid': {\n\t\t\t\t\t\t$opt['border'] = array(0, 0, $linewidth);\n\t\t\t\t\t\t$opt['bs'] = array('w'=>$linewidth, 's'=>'S');\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (isset($prop['border']) AND is_array($prop['border'])) {\n\t\t\t\t$opt['border'] = $prop['border'];\n\t\t\t}\n\t\t\tif (!isset($opt['mk'])) {\n\t\t\t\t$opt['mk'] = array();\n\t\t\t}\n\t\t\tif (!isset($opt['mk']['if'])) {\n\t\t\t\t$opt['mk']['if'] = array();\n\t\t\t}\n\t\t\t$opt['mk']['if']['a'] = array(0.5, 0.5);\n\t\t\t// buttonAlignX: Controls how space is distributed from the left of the button face with respect to the icon.\n\t\t\tif (isset($prop['buttonAlignX'])) {\n\t\t\t\t$opt['mk']['if']['a'][0] = $prop['buttonAlignX'];\n\t\t\t}\n\t\t\t// buttonAlignY: Controls how unused space is distributed from the bottom of the button face with respect to the icon.\n\t\t\tif (isset($prop['buttonAlignY'])) {\n\t\t\t\t$opt['mk']['if']['a'][1] = $prop['buttonAlignY'];\n\t\t\t}\n\t\t\t// buttonFitBounds: If true, the extent to which the icon may be scaled is set to the bounds of the button field.\n\t\t\tif (isset($prop['buttonFitBounds']) AND ($prop['buttonFitBounds'] == 'true')) {\n\t\t\t\t$opt['mk']['if']['fb'] = true;\n\t\t\t}\n\t\t\t// buttonScaleHow: Controls how the icon is scaled (if necessary) to fit inside the button face.\n\t\t\tif (isset($prop['buttonScaleHow'])) {\n\t\t\t\tswitch ($prop['buttonScaleHow']) {\n\t\t\t\t\tcase 'scaleHow.proportional': {\n\t\t\t\t\t\t$opt['mk']['if']['s'] = 'P';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'scaleHow.anamorphic': {\n\t\t\t\t\t\t$opt['mk']['if']['s'] = 'A';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t// buttonScaleWhen: Controls when an icon is scaled to fit inside the button face.\n\t\t\tif (isset($prop['buttonScaleWhen'])) {\n\t\t\t\tswitch ($prop['buttonScaleWhen']) {\n\t\t\t\t\tcase 'scaleWhen.always': {\n\t\t\t\t\t\t$opt['mk']['if']['sw'] = 'A';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'scaleWhen.never': {\n\t\t\t\t\t\t$opt['mk']['if']['sw'] = 'N';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'scaleWhen.tooBig': {\n\t\t\t\t\t\t$opt['mk']['if']['sw'] = 'B';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'scaleWhen.tooSmall': {\n\t\t\t\t\t\t$opt['mk']['if']['sw'] = 'S';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t// buttonPosition: Controls how the text and the icon of the button are positioned with respect to each other within the button face.\n\t\t\tif (isset($prop['buttonPosition'])) {\n\t\t\t\tswitch ($prop['buttonPosition']) {\n\t\t\t\t\tcase 0:\n\t\t\t\t\tcase 'position.textOnly': {\n\t\t\t\t\t\t$opt['mk']['tp'] = 0;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 1:\n\t\t\t\t\tcase 'position.iconOnly': {\n\t\t\t\t\t\t$opt['mk']['tp'] = 1;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 2:\n\t\t\t\t\tcase 'position.iconTextV': {\n\t\t\t\t\t\t$opt['mk']['tp'] = 2;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 3:\n\t\t\t\t\tcase 'position.textIconV': {\n\t\t\t\t\t\t$opt['mk']['tp'] = 3;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 4:\n\t\t\t\t\tcase 'position.iconTextH': {\n\t\t\t\t\t\t$opt['mk']['tp'] = 4;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 5:\n\t\t\t\t\tcase 'position.textIconH': {\n\t\t\t\t\t\t$opt['mk']['tp'] = 5;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 6:\n\t\t\t\t\tcase 'position.overlay': {\n\t\t\t\t\t\t$opt['mk']['tp'] = 6;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t// fillColor: Specifies the background color for a field.\n\t\t\tif (isset($prop['fillColor'])) {\n\t\t\t\tif (is_array($prop['fillColor'])) {\n\t\t\t\t\t$opt['mk']['bg'] = $prop['fillColor'];\n\t\t\t\t} else {\n\t\t\t\t\t$opt['mk']['bg'] = $this->convertHTMLColorToDec($prop['fillColor']);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// strokeColor: Specifies the stroke color for a field that is used to stroke the rectangle of the field with a line as large as the line width.\n\t\t\tif (isset($prop['strokeColor'])) {\n\t\t\t\tif (is_array($prop['strokeColor'])) {\n\t\t\t\t\t$opt['mk']['bc'] = $prop['strokeColor'];\n\t\t\t\t} else {\n\t\t\t\t\t$opt['mk']['bc'] = $this->convertHTMLColorToDec($prop['strokeColor']);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// rotation: The rotation of a widget in counterclockwise increments.\n\t\t\tif (isset($prop['rotation'])) {\n\t\t\t\t$opt['mk']['r'] = $prop['rotation'];\n\t\t\t}\n\t\t\t// charLimit: Limits the number of characters that a user can type into a text field.\n\t\t\tif (isset($prop['charLimit'])) {\n\t\t\t\t$opt['maxlen'] = intval($prop['charLimit']);\n\t\t\t}\n\t\t\tif (!isset($ff)) {\n\t\t\t\t$ff = 0;\n\t\t\t}\n\t\t\t// readonly: The read-only characteristic of a field. If a field is read-only, the user can see the field but cannot change it.\n\t\t\tif (isset($prop['readonly']) AND ($prop['readonly'] == 'true')) {\n\t\t\t\t$ff += 1 << 0;\n\t\t\t}\n\t\t\t// required: Specifies whether a field requires a value.\n\t\t\tif (isset($prop['required']) AND ($prop['required'] == 'true')) {\n\t\t\t\t$ff += 1 << 1;\n\t\t\t}\n\t\t\t// multiline: Controls how text is wrapped within the field.\n\t\t\tif (isset($prop['multiline']) AND ($prop['multiline'] == 'true')) {\n\t\t\t\t$ff += 1 << 12;\n\t\t\t}\n\t\t\t// password: Specifies whether the field should display asterisks when data is entered in the field.\n\t\t\tif (isset($prop['password']) AND ($prop['password'] == 'true')) {\n\t\t\t\t$ff += 1 << 13;\n\t\t\t}\n\t\t\t// NoToggleToOff: If set, exactly one radio button shall be selected at all times; selecting the currently selected button has no effect.\n\t\t\tif (isset($prop['NoToggleToOff']) AND ($prop['NoToggleToOff'] == 'true')) {\n\t\t\t\t$ff += 1 << 14;\n\t\t\t}\n\t\t\t// Radio: If set, the field is a set of radio buttons.\n\t\t\tif (isset($prop['Radio']) AND ($prop['Radio'] == 'true')) {\n\t\t\t\t$ff += 1 << 15;\n\t\t\t}\n\t\t\t// Pushbutton: If set, the field is a pushbutton that does not retain a permanent value.\n\t\t\tif (isset($prop['Pushbutton']) AND ($prop['Pushbutton'] == 'true')) {\n\t\t\t\t$ff += 1 << 16;\n\t\t\t}\n\t\t\t// Combo: If set, the field is a combo box; if clear, the field is a list box.\n\t\t\tif (isset($prop['Combo']) AND ($prop['Combo'] == 'true')) {\n\t\t\t\t$ff += 1 << 17;\n\t\t\t}\n\t\t\t// editable: Controls whether a combo box is editable.\n\t\t\tif (isset($prop['editable']) AND ($prop['editable'] == 'true')) {\n\t\t\t\t$ff += 1 << 18;\n\t\t\t}\n\t\t\t// Sort: If set, the field's option items shall be sorted alphabetically.\n\t\t\tif (isset($prop['Sort']) AND ($prop['Sort'] == 'true')) {\n\t\t\t\t$ff += 1 << 19;\n\t\t\t}\n\t\t\t// fileSelect: If true, sets the file-select flag in the Options tab of the text field (Field is Used for File Selection).\n\t\t\tif (isset($prop['fileSelect']) AND ($prop['fileSelect'] == 'true')) {\n\t\t\t\t$ff += 1 << 20;\n\t\t\t}\n\t\t\t// multipleSelection: If true, indicates that a list box allows a multiple selection of items.\n\t\t\tif (isset($prop['multipleSelection']) AND ($prop['multipleSelection'] == 'true')) {\n\t\t\t\t$ff += 1 << 21;\n\t\t\t}\n\t\t\t// doNotSpellCheck: If true, spell checking is not performed on this editable text field.\n\t\t\tif (isset($prop['doNotSpellCheck']) AND ($prop['doNotSpellCheck'] == 'true')) {\n\t\t\t\t$ff += 1 << 22;\n\t\t\t}\n\t\t\t// doNotScroll: If true, the text field does not scroll and the user, therefore, is limited by the rectangular region designed for the field.\n\t\t\tif (isset($prop['doNotScroll']) AND ($prop['doNotScroll'] == 'true')) {\n\t\t\t\t$ff += 1 << 23;\n\t\t\t}\n\t\t\t// comb: If set to true, the field background is drawn as series of boxes (one for each character in the value of the field) and each character of the content is drawn within those boxes. The number of boxes drawn is determined from the charLimit property. It applies only to text fields. The setter will also raise if any of the following field properties are also set multiline, password, and fileSelect. A side-effect of setting this property is that the doNotScroll property is also set.\n\t\t\tif (isset($prop['comb']) AND ($prop['comb'] == 'true')) {\n\t\t\t\t$ff += 1 << 24;\n\t\t\t}\n\t\t\t// radiosInUnison: If false, even if a group of radio buttons have the same name and export value, they behave in a mutually exclusive fashion, like HTML radio buttons.\n\t\t\tif (isset($prop['radiosInUnison']) AND ($prop['radiosInUnison'] == 'true')) {\n\t\t\t\t$ff += 1 << 25;\n\t\t\t}\n\t\t\t// richText: If true, the field allows rich text formatting.\n\t\t\tif (isset($prop['richText']) AND ($prop['richText'] == 'true')) {\n\t\t\t\t$ff += 1 << 25;\n\t\t\t}\n\t\t\t// commitOnSelChange: Controls whether a field value is committed after a selection change.\n\t\t\tif (isset($prop['commitOnSelChange']) AND ($prop['commitOnSelChange'] == 'true')) {\n\t\t\t\t$ff += 1 << 26;\n\t\t\t}\n\t\t\t$opt['ff'] = $ff;\n\t\t\t// defaultValue: The default value of a field - that is, the value that the field is set to when the form is reset.\n\t\t\tif (isset($prop['defaultValue'])) {\n\t\t\t\t$opt['dv'] = $prop['defaultValue'];\n\t\t\t}\n\t\t\t$f = 4; // default value for annotation flags\n\t\t\t// readonly: The read-only characteristic of a field. If a field is read-only, the user can see the field but cannot change it.\n\t\t\tif (isset($prop['readonly']) AND ($prop['readonly'] == 'true')) {\n\t\t\t\t$f += 1 << 6;\n\t\t\t}\n\t\t\t// display: Controls whether the field is hidden or visible on screen and in print.\n\t\t\tif (isset($prop['display'])) {\n\t\t\t\tif ($prop['display'] == 'display.visible') {\n\t\t\t\t\t//\n\t\t\t\t} elseif ($prop['display'] == 'display.hidden') {\n\t\t\t\t\t$f += 1 << 1;\n\t\t\t\t} elseif ($prop['display'] == 'display.noPrint') {\n\t\t\t\t\t$f -= 1 << 2;\n\t\t\t\t} elseif ($prop['display'] == 'display.noView') {\n\t\t\t\t\t$f += 1 << 5;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$opt['f'] = $f;\n\t\t\t// currentValueIndices: Reads and writes single or multiple values of a list box or combo box.\n\t\t\tif (isset($prop['currentValueIndices']) AND is_array($prop['currentValueIndices'])) {\n\t\t\t\t$opt['i'] = $prop['currentValueIndices'];\n\t\t\t}\n\t\t\t// value: The value of the field data that the user has entered.\n\t\t\tif (isset($prop['value'])) {\n\t\t\t\tif (is_array($prop['value'])) {\n\t\t\t\t\t$opt['opt'] = array();\n\t\t\t\t\tforeach ($prop['value'] AS $key => $optval) {\n\t\t\t\t\t\t// exportValues: An array of strings representing the export values for the field.\n\t\t\t\t\t\tif (isset($prop['exportValues'][$key])) {\n\t\t\t\t\t\t\t$opt['opt'][$key] = array($prop['exportValues'][$key], $prop['value'][$key]);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$opt['opt'][$key] = $prop['value'][$key];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t$opt['v'] = $prop['value'];\n\t\t\t\t}\n\t\t\t}\n\t\t\t// richValue: This property specifies the text contents and formatting of a rich text field.\n\t\t\tif (isset($prop['richValue'])) {\n\t\t\t\t$opt['rv'] = $prop['richValue'];\n\t\t\t}\n\t\t\t// submitName: If nonempty, used during form submission instead of name. Only applicable if submitting in HTML format (that is, URL-encoded).\n\t\t\tif (isset($prop['submitName'])) {\n\t\t\t\t$opt['tm'] = $prop['submitName'];\n\t\t\t}\n\t\t\t// name: Fully qualified field name.\n\t\t\tif (isset($prop['name'])) {\n\t\t\t\t$opt['t'] = $prop['name'];\n\t\t\t}\n\t\t\t// userName: The user name (short description string) of the field.\n\t\t\tif (isset($prop['userName'])) {\n\t\t\t\t$opt['tu'] = $prop['userName'];\n\t\t\t}\n\t\t\t// highlight: Defines how a button reacts when a user clicks it.\n\t\t\tif (isset($prop['highlight'])) {\n\t\t\t\tswitch ($prop['highlight']) {\n\t\t\t\t\tcase 'none':\n\t\t\t\t\tcase 'highlight.n': {\n\t\t\t\t\t\t$opt['h'] = 'N';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'invert':\n\t\t\t\t\tcase 'highlight.i': {\n\t\t\t\t\t\t$opt['h'] = 'i';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'push':\n\t\t\t\t\tcase 'highlight.p': {\n\t\t\t\t\t\t$opt['h'] = 'P';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'outline':\n\t\t\t\t\tcase 'highlight.o': {\n\t\t\t\t\t\t$opt['h'] = 'O';\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Unsupported options:\n\t\t\t// - calcOrderIndex: Changes the calculation order of fields in the document.\n\t\t\t// - delay: Delays the redrawing of a field's appearance.\n\t\t\t// - defaultStyle: This property defines the default style attributes for the form field.\n\t\t\t// - style: Allows the user to set the glyph style of a check box or radio button.\n\t\t\t// - textColor, textFont, textSize\n\t\t\treturn $opt;\n\t\t}\n\n\t\t/**\n\t\t * Set default properties for form fields.\n\t\t * @param array $prop javascript field properties. Possible values are described on official Javascript for Acrobat API reference.\n\t\t * @access public\n\t\t * @author Nicola Asuni\n\t\t * @since 4.8.000 (2009-09-06)\n\t\t */\n\t\tpublic function setFormDefaultProp($prop=array()) {\n\t\t\t$this->default_form_prop = $prop;\n\t\t}\n\n\t\t/**\n\t\t * Return the default properties for form fields.\n\t\t * @return array $prop javascript field properties. Possible values are described on official Javascript for Acrobat API reference.\n\t\t * @access public\n\t\t * @author Nicola Asuni\n\t\t * @since 4.8.000 (2009-09-06)\n\t\t */\n\t\tpublic function getFormDefaultProp() {\n\t\t\treturn $this->default_form_prop;\n\t\t}\n\n\t\t/**\n\t\t * Creates a text field\n\t\t * @param string $name field name\n\t\t * @param float $w Width of the rectangle\n\t\t * @param float $h Height of the rectangle\n\t\t * @param array $prop javascript field properties. Possible values are described on official Javascript for Acrobat API reference.\n\t\t * @param array $opt annotation parameters. Possible values are described on official PDF32000_2008 reference.\n\t\t * @param float $x Abscissa of the upper-left corner of the rectangle\n\t\t * @param float $y Ordinate of the upper-left corner of the rectangle\n\t\t * @param boolean $js if true put the field using JavaScript (requires Acrobat Writer to be rendered).\n\t\t * @access public\n\t\t * @author Nicola Asuni\n\t\t * @since 4.8.000 (2009-09-07)\n\t\t */\n\t\tpublic function TextField($name, $w, $h, $prop=array(), $opt=array(), $x='', $y='', $js=false) {\n\t\t\tif ($x === '') {\n\t\t\t\t$x = $this->x;\n\t\t\t}\n\t\t\tif ($y === '') {\n\t\t\t\t$y = $this->y;\n\t\t\t}\n\t\t\tif ($js) {\n\t\t\t\t$this->_addfield('text', $name, $x, $y, $w, $h, $prop);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// get default style\n\t\t\t$prop = array_merge($this->getFormDefaultProp(), $prop);\n\t\t\t// get annotation data\n\t\t\t$popt = $this->getAnnotOptFromJSProp($prop);\n\t\t\t// set default appearance stream\n\t\t\t$font = $this->FontFamily;\n\t\t\t$fontkey = array_search($font, $this->fontkeys);\n\t\t\tif (!in_array($fontkey, $this->annotation_fonts)) {\n\t\t\t\t$this->annotation_fonts[$font] = $fontkey;\n\t\t\t}\n\t\t\t$fontstyle = sprintf('/F%d %.2F Tf %s', ($fontkey + 1), $this->FontSizePt, $this->TextColor);\n\t\t\t$popt['da'] = $fontstyle;\n\t\t\t$popt['ap'] = array();\n\t\t\t$popt['ap']['n'] = 'q BT '.$fontstyle.' ET Q';\n\t\t\t// merge options\n\t\t\t$opt = array_merge($popt, $opt);\n\t\t\t// remove some conflicting options\n\t\t\tunset($opt['bs']);\n\t\t\t// set remaining annotation data\n\t\t\t$opt['Subtype'] = 'Widget';\n\t\t\t$opt['ft'] = 'Tx';\n\t\t\t$opt['t'] = $name;\n\t\t\t/*\n\t\t\tAdditional annotation's parameters (check _putannotsobj() method):\n\t\t\t//$opt['f']\n\t\t\t//$opt['ap']\n\t\t\t//$opt['as']\n\t\t\t//$opt['bs']\n\t\t\t//$opt['be']\n\t\t\t//$opt['c']\n\t\t\t//$opt['border']\n\t\t\t//$opt['h']\n\t\t\t//$opt['mk']\n\t\t\t//$opt['mk']['r']\n\t\t\t//$opt['mk']['bc']\n\t\t\t//$opt['mk']['bg']\n\t\t\t//$opt['mk']['ca']\n\t\t\t//$opt['mk']['rc']\n\t\t\t//$opt['mk']['ac']\n\t\t\t//$opt['mk']['i']\n\t\t\t//$opt['mk']['ri']\n\t\t\t//$opt['mk']['ix']\n\t\t\t//$opt['mk']['if']\n\t\t\t//$opt['mk']['if']['sw']\n\t\t\t//$opt['mk']['if']['s']\n\t\t\t//$opt['mk']['if']['a']\n\t\t\t//$opt['mk']['if']['fb']\n\t\t\t//$opt['mk']['tp']\n\t\t\t//$opt['tu']\n\t\t\t//$opt['tm']\n\t\t\t//$opt['ff']\n\t\t\t//$opt['v']\n\t\t\t//$opt['dv']\n\t\t\t//$opt['a']\n\t\t\t//$opt['aa']\n\t\t\t//$opt['q']\n\t\t\t*/\n\t\t\t$this->Annotation($x, $y, $w, $h, $name, $opt, 0);\n\t\t\tif ($this->rtl) {\n\t\t\t\t$this->x -= $w;\n\t\t\t} else {\n\t\t\t\t$this->x += $w;\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Creates a RadioButton field\n\t\t * @param string $name field name\n\t\t * @param int $w width\n\t\t * @param array $prop javascript field properties. Possible values are described on official Javascript for Acrobat API reference.\n\t\t * @param array $opt annotation parameters. Possible values are described on official PDF32000_2008 reference.\n\t\t * @param string $onvalue value to be returned if selected.\n\t\t * @param boolean $checked define the initial state.\n\t\t * @param float $x Abscissa of the upper-left corner of the rectangle\n\t\t * @param float $y Ordinate of the upper-left corner of the rectangle\n\t\t * @param boolean $js if true put the field using JavaScript (requires Acrobat Writer to be rendered).\n\t\t * @access public\n\t\t * @author Nicola Asuni\n\t\t * @since 4.8.000 (2009-09-07)\n\t\t */\n\t\tpublic function RadioButton($name, $w, $prop=array(), $opt=array(), $onvalue='On', $checked=false, $x='', $y='', $js=false) {\n\t\t\tif ($x === '') {\n\t\t\t\t$x = $this->x;\n\t\t\t}\n\t\t\tif ($y === '') {\n\t\t\t\t$y = $this->y;\n\t\t\t}\n\t\t\tif ($js) {\n\t\t\t\t$this->_addfield('radiobutton', $name, $x, $y, $w, $w, $prop);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif ($this->empty_string($onvalue)) {\n\t\t\t\t$onvalue = 'On';\n\t\t\t}\n\t\t\tif ($checked) {\n\t\t\t\t$defval = $onvalue;\n\t\t\t} else {\n\t\t\t\t$defval = 'Off';\n\t\t\t}\n\t\t\t// set data for parent group\n\t\t\tif (!isset($this->radiobutton_groups[$this->page])) {\n\t\t\t\t$this->radiobutton_groups[$this->page] = array();\n\t\t\t}\n\t\t\tif (!isset($this->radiobutton_groups[$this->page][$name])) {\n\t\t\t\t$this->radiobutton_groups[$this->page][$name] = array();\n\t\t\t\t++$this->annot_obj_id;\n\t\t\t\t$this->radio_groups[] = $this->annot_obj_id;\n\t\t\t}\n\t\t\t// save object ID to be added on Kids entry on parent object\n\t\t\t$this->radiobutton_groups[$this->page][$name][] = array('kid' => ($this->annot_obj_id + 1), 'def' => $defval);\n\t\t\t// get default style\n\t\t\t$prop = array_merge($this->getFormDefaultProp(), $prop);\n\t\t\t$prop['NoToggleToOff'] = 'true';\n\t\t\t$prop['Radio'] = 'true';\n\t\t\t$prop['borderStyle'] = 'inset';\n\t\t\t// get annotation data\n\t\t\t$popt = $this->getAnnotOptFromJSProp($prop);\n\t\t\t// set additional default values\n\t\t\t$font = 'zapfdingbats';\n\t\t\t$this->AddFont($font);\n\t\t\t$fontkey = array_search($font, $this->fontkeys);\n\t\t\tif (!in_array($fontkey, $this->annotation_fonts)) {\n\t\t\t\t$this->annotation_fonts[$font] = $fontkey;\n\t\t\t}\n\t\t\t$fontstyle = sprintf('/F%d %.2F Tf %s', ($fontkey + 1), $this->FontSizePt, $this->TextColor);\n\t\t\t$popt['da'] = $fontstyle;\n\t\t\t$popt['ap'] = array();\n\t\t\t$popt['ap']['n'] = array();\n\t\t\t$popt['ap']['n'][$onvalue] = 'q BT '.$fontstyle.' 0 0 Td (8) Tj ET Q';\n\t\t\t$popt['ap']['n']['Off'] = 'q BT '.$fontstyle.' 0 0 Td (8) Tj ET Q';\n\t\t\tif (!isset($popt['mk'])) {\n\t\t\t\t$popt['mk'] = array();\n\t\t\t}\n\t\t\t$popt['mk']['ca'] = '(l)';\n\t\t\t// merge options\n\t\t\t$opt = array_merge($popt, $opt);\n\t\t\t// set remaining annotation data\n\t\t\t$opt['Subtype'] = 'Widget';\n\t\t\t$opt['ft'] = 'Btn';\n\t\t\tif ($checked) {\n\t\t\t\t$opt['v'] = array('/'.$onvalue);\n\t\t\t\t$opt['as'] = $onvalue;\n\t\t\t} else {\n\t\t\t\t$opt['as'] = 'Off';\n\t\t\t}\n\t\t\t$this->Annotation($x, $y, $w, $w, $name, $opt, 0);\n\t\t\tif ($this->rtl) {\n\t\t\t\t$this->x -= $w;\n\t\t\t} else {\n\t\t\t\t$this->x += $w;\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Creates a List-box field\n\t\t * @param string $name field name\n\t\t * @param int $w width\n\t\t * @param int $h height\n\t\t * @param array $values array containing the list of values.\n\t\t * @param array $prop javascript field properties. Possible values are described on official Javascript for Acrobat API reference.\n\t\t * @param array $opt annotation parameters. Possible values are described on official PDF32000_2008 reference.\n\t\t * @param float $x Abscissa of the upper-left corner of the rectangle\n\t\t * @param float $y Ordinate of the upper-left corner of the rectangle\n\t\t * @param boolean $js if true put the field using JavaScript (requires Acrobat Writer to be rendered).\n\t\t * @access public\n\t\t * @author Nicola Asuni\n\t\t * @since 4.8.000 (2009-09-07)\n\t\t */\n\t\tpublic function ListBox($name, $w, $h, $values, $prop=array(), $opt=array(), $x='', $y='', $js=false) {\n\t\t\tif ($x === '') {\n\t\t\t\t$x = $this->x;\n\t\t\t}\n\t\t\tif ($y === '') {\n\t\t\t\t$y = $this->y;\n\t\t\t}\n\t\t\tif ($js) {\n\t\t\t\t$this->_addfield('listbox', $name, $x, $y, $w, $h, $prop);\n\t\t\t\t$s = '';\n\t\t\t\tforeach ($values as $value) {\n\t\t\t\t\t$s .= \"'\".addslashes($value).\"',\";\n\t\t\t\t}\n\t\t\t\t$this->javascript .= 'f'.$name.'.setItems(['.substr($s, 0, -1).\"]);\\n\";\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// get default style\n\t\t\t$prop = array_merge($this->getFormDefaultProp(), $prop);\n\t\t\t// get annotation data\n\t\t\t$popt = $this->getAnnotOptFromJSProp($prop);\n\t\t\t// set additional default values\n\t\t\t$font = $this->FontFamily;\n\t\t\t$fontkey = array_search($font, $this->fontkeys);\n\t\t\tif (!in_array($fontkey, $this->annotation_fonts)) {\n\t\t\t\t$this->annotation_fonts[$font] = $fontkey;\n\t\t\t}\n\t\t\t$fontstyle = sprintf('/F%d %.2F Tf %s', ($fontkey + 1), $this->FontSizePt, $this->TextColor);\n\t\t\t$popt['da'] = $fontstyle;\n\t\t\t$popt['ap'] = array();\n\t\t\t$popt['ap']['n'] = 'q BT '.$fontstyle.' ET Q';\n\t\t\t// merge options\n\t\t\t$opt = array_merge($popt, $opt);\n\t\t\t// set remaining annotation data\n\t\t\t$opt['Subtype'] = 'Widget';\n\t\t\t$opt['ft'] = 'Ch';\n\t\t\t$opt['t'] = $name;\n\t\t\t$opt['opt'] = $values;\n\t\t\t$this->Annotation($x, $y, $w, $h, $name, $opt, 0);\n\t\t\tif ($this->rtl) {\n\t\t\t\t$this->x -= $w;\n\t\t\t} else {\n\t\t\t\t$this->x += $w;\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Creates a Combo-box field\n\t\t * @param string $name field name\n\t\t * @param int $w width\n\t\t * @param int $h height\n\t\t * @param array $values array containing the list of values.\n\t\t * @param array $prop javascript field properties. Possible values are described on official Javascript for Acrobat API reference.\n\t\t * @param array $opt annotation parameters. Possible values are described on official PDF32000_2008 reference.\n\t\t * @param float $x Abscissa of the upper-left corner of the rectangle\n\t\t * @param float $y Ordinate of the upper-left corner of the rectangle\n\t\t * @param boolean $js if true put the field using JavaScript (requires Acrobat Writer to be rendered).\n\t\t * @access public\n\t\t * @author Nicola Asuni\n\t\t * @since 4.8.000 (2009-09-07)\n\t\t */\n\t\tpublic function ComboBox($name, $w, $h, $values, $prop=array(), $opt=array(), $x='', $y='', $js=false) {\n\t\t\tif ($x === '') {\n\t\t\t\t$x = $this->x;\n\t\t\t}\n\t\t\tif ($y === '') {\n\t\t\t\t$y = $this->y;\n\t\t\t}\n\t\t\tif ($js) {\n\t\t\t\t$this->_addfield('combobox', $name, $x, $y, $w, $h, $prop);\n\t\t\t\t$s = '';\n\t\t\t\tforeach ($values as $value) {\n\t\t\t\t\t$s .= \"'\".addslashes($value).\"',\";\n\t\t\t\t}\n\t\t\t\t$this->javascript .= 'f'.$name.'.setItems(['.substr($s, 0, -1).\"]);\\n\";\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// get default style\n\t\t\t$prop = array_merge($this->getFormDefaultProp(), $prop);\n\t\t\t$prop['Combo'] = true;\n\t\t\t// get annotation data\n\t\t\t$popt = $this->getAnnotOptFromJSProp($prop);\n\t\t\t// set additional default options\n\t\t\t$font = $this->FontFamily;\n\t\t\t$fontkey = array_search($font, $this->fontkeys);\n\t\t\tif (!in_array($fontkey, $this->annotation_fonts)) {\n\t\t\t\t$this->annotation_fonts[$font] = $fontkey;\n\t\t\t}\n\t\t\t$fontstyle = sprintf('/F%d %.2F Tf %s', ($fontkey + 1), $this->FontSizePt, $this->TextColor);\n\t\t\t$popt['da'] = $fontstyle;\n\t\t\t$popt['ap'] = array();\n\t\t\t$popt['ap']['n'] = 'q BT '.$fontstyle.' ET Q';\n\t\t\t// merge options\n\t\t\t$opt = array_merge($popt, $opt);\n\t\t\t// set remaining annotation data\n\t\t\t$opt['Subtype'] = 'Widget';\n\t\t\t$opt['ft'] = 'Ch';\n\t\t\t$opt['t'] = $name;\n\t\t\t$opt['opt'] = $values;\n\t\t\t$this->Annotation($x, $y, $w, $h, $name, $opt, 0);\n\t\t\tif ($this->rtl) {\n\t\t\t\t$this->x -= $w;\n\t\t\t} else {\n\t\t\t\t$this->x += $w;\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Creates a CheckBox field\n\t\t * @param string $name field name\n\t\t * @param int $w width\n\t\t * @param boolean $checked define the initial state.\n\t\t * @param array $prop javascript field properties. Possible values are described on official Javascript for Acrobat API reference.\n\t\t * @param array $opt annotation parameters. Possible values are described on official PDF32000_2008 reference.\n\t\t * @param string $onvalue value to be returned if selected.\n\t\t * @param float $x Abscissa of the upper-left corner of the rectangle\n\t\t * @param float $y Ordinate of the upper-left corner of the rectangle\n\t\t * @param boolean $js if true put the field using JavaScript (requires Acrobat Writer to be rendered).\n\t\t * @access public\n\t\t * @author Nicola Asuni\n\t\t * @since 4.8.000 (2009-09-07)\n\t\t */\n\t\tpublic function CheckBox($name, $w, $checked=false, $prop=array(), $opt=array(), $onvalue='Yes', $x='', $y='', $js=false) {\n\t\t\tif ($x === '') {\n\t\t\t\t$x = $this->x;\n\t\t\t}\n\t\t\tif ($y === '') {\n\t\t\t\t$y = $this->y;\n\t\t\t}\n\t\t\tif ($js) {\n\t\t\t\t$this->_addfield('checkbox', $name, $x, $y, $w, $w, $prop);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (!isset($prop['value'])) {\n\t\t\t\t$prop['value'] = array('Yes');\n\t\t\t}\n\t\t\t// get default style\n\t\t\t$prop = array_merge($this->getFormDefaultProp(), $prop);\n\t\t\t$prop['borderStyle'] = 'inset';\n\t\t\t// get annotation data\n\t\t\t$popt = $this->getAnnotOptFromJSProp($prop);\n\t\t\t// set additional default options\n\t\t\t$font = 'zapfdingbats';\n\t\t\t$this->AddFont($font);\n\t\t\t$fontkey = array_search($font, $this->fontkeys);\n\t\t\tif (!in_array($fontkey, $this->annotation_fonts)) {\n\t\t\t\t$this->annotation_fonts[$font] = $fontkey;\n\t\t\t}\n\t\t\t$fontstyle = sprintf('/F%d %.2F Tf %s', ($fontkey + 1), $this->FontSizePt, $this->TextColor);\n\t\t\t$popt['da'] = $fontstyle;\n\t\t\t$popt['ap'] = array();\n\t\t\t$popt['ap']['n'] = array();\n\t\t\t$popt['ap']['n']['Yes'] = 'q BT '.$fontstyle.' 0 0 Td (8) Tj ET Q';\n\t\t\t$popt['ap']['n']['Off'] = 'q BT '.$fontstyle.' 0 0 Td (8) Tj ET Q';\n\t\t\t// merge options\n\t\t\t$opt = array_merge($popt, $opt);\n\t\t\t// set remaining annotation data\n\t\t\t$opt['Subtype'] = 'Widget';\n\t\t\t$opt['ft'] = 'Btn';\n\t\t\t$opt['t'] = $name;\n\t\t\t$opt['opt'] = array($onvalue);\n\t\t\tif ($checked) {\n\t\t\t\t$opt['v'] = array('/0');\n\t\t\t\t$opt['as'] = 'Yes';\n\t\t\t} else {\n\t\t\t\t$opt['v'] = array('/Off');\n\t\t\t\t$opt['as'] = 'Off';\n\t\t\t}\n\t\t\t$this->Annotation($x, $y, $w, $w, $name, $opt, 0);\n\t\t\tif ($this->rtl) {\n\t\t\t\t$this->x -= $w;\n\t\t\t} else {\n\t\t\t\t$this->x += $w;\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Creates a button field\n\t\t * @param string $name field name\n\t\t * @param int $w width\n\t\t * @param int $h height\n\t\t * @param string $caption caption.\n\t\t * @param mixed $action action triggered by pressing the button. Use a string to specify a javascript action. Use an array to specify a form action options as on section 12.7.5 of PDF32000_2008.\n\t\t * @param array $prop javascript field properties. Possible values are described on official Javascript for Acrobat API reference.\n\t\t * @param array $opt annotation parameters. Possible values are described on official PDF32000_2008 reference.\n\t\t * @param float $x Abscissa of the upper-left corner of the rectangle\n\t\t * @param float $y Ordinate of the upper-left corner of the rectangle\n\t\t * @param boolean $js if true put the field using JavaScript (requires Acrobat Writer to be rendered).\n\t\t * @access public\n\t\t * @author Nicola Asuni\n\t\t * @since 4.8.000 (2009-09-07)\n\t\t */\n\t\tpublic function Button($name, $w, $h, $caption, $action, $prop=array(), $opt=array(), $x='', $y='', $js=false) {\n\t\t\tif ($x === '') {\n\t\t\t\t$x = $this->x;\n\t\t\t}\n\t\t\tif ($y === '') {\n\t\t\t\t$y = $this->y;\n\t\t\t}\n\t\t\tif ($js) {\n\t\t\t\t$this->_addfield('button', $name, $this->x, $this->y, $w, $h, $prop);\n\t\t\t\t$this->javascript .= 'f'.$name.\".buttonSetCaption('\".addslashes($caption).\"');\\n\";\n\t\t\t\t$this->javascript .= 'f'.$name.\".setAction('MouseUp','\".addslashes($action).\"');\\n\";\n\t\t\t\t$this->javascript .= 'f'.$name.\".highlight='push';\\n\";\n\t\t\t\t$this->javascript .= 'f'.$name.\".print=false;\\n\";\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// get default style\n\t\t\t$prop = array_merge($this->getFormDefaultProp(), $prop);\n\t\t\t$prop['Pushbutton'] = 'true';\n\t\t\t$prop['highlight'] = 'push';\n\t\t\t$prop['display'] = 'display.noPrint';\n\t\t\t// get annotation data\n\t\t\t$popt = $this->getAnnotOptFromJSProp($prop);\n\t\t\t// set additional default options\n\t\t\tif (!isset($popt['mk'])) {\n\t\t\t\t$popt['mk'] = array();\n\t\t\t}\n\t\t\t$popt['mk']['ca'] = $this->_textstring($caption);\n\t\t\t$popt['mk']['rc'] = $this->_textstring($caption);\n\t\t\t$popt['mk']['ac'] = $this->_textstring($caption);\n\t\t\t$font = $this->FontFamily;\n\t\t\t$fontkey = array_search($font, $this->fontkeys);\n\t\t\tif (!in_array($fontkey, $this->annotation_fonts)) {\n\t\t\t\t$this->annotation_fonts[$font] = $fontkey;\n\t\t\t}\n\t\t\t$fontstyle = sprintf('/F%d %.2F Tf %s', ($fontkey + 1), $this->FontSizePt, $this->TextColor);\n\t\t\t$popt['da'] = $fontstyle;\n\t\t\t$popt['ap'] = array();\n\t\t\t$popt['ap']['n'] = 'q BT '.$fontstyle.' ET Q';\n\t\t\t// merge options\n\t\t\t$opt = array_merge($popt, $opt);\n\t\t\t// set remaining annotation data\n\t\t\t$opt['Subtype'] = 'Widget';\n\t\t\t$opt['ft'] = 'Btn';\n\t\t\t$opt['t'] = $caption;\n\t\t\t$opt['v'] = $name;\n\t\t\tif (!empty($action)) {\n\t\t\t\tif (is_array($action)) {\n\t\t\t\t\t// form action options as on section 12.7.5 of PDF32000_2008.\n\t\t\t\t\t$opt['aa'] = '/D <<';\n\t\t\t\t\t$bmode = array('SubmitForm', 'ResetForm', 'ImportData');\n\t\t\t\t\tforeach ($action AS $key => $val) {\n\t\t\t\t\t\tif (($key == 'S') AND in_array($val, $bmode)) {\n\t\t\t\t\t\t\t$opt['aa'] .= ' /S /'.$val;\n\t\t\t\t\t\t} elseif (($key == 'F') AND (!empty($val))) {\n\t\t\t\t\t\t\t$opt['aa'] .= ' /F '.$this->_datastring($val);\n\t\t\t\t\t\t} elseif (($key == 'Fields') AND is_array($val) AND !empty($val)) {\n\t\t\t\t\t\t\t$opt['aa'] .= ' /Fields [';\n\t\t\t\t\t\t\tforeach ($val AS $field) {\n\t\t\t\t\t\t\t\t$opt['aa'] .= ' '.$this->_textstring($field);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$opt['aa'] .= ']';\n\t\t\t\t\t\t} elseif (($key == 'Flags')) {\n\t\t\t\t\t\t\t$ff = 0;\n\t\t\t\t\t\t\tif (is_array($val)) {\n\t\t\t\t\t\t\t\tforeach ($val AS $flag) {\n\t\t\t\t\t\t\t\t\tswitch ($flag) {\n\t\t\t\t\t\t\t\t\t\tcase 'Include/Exclude': {\n\t\t\t\t\t\t\t\t\t\t\t$ff += 1 << 0;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tcase 'IncludeNoValueFields': {\n\t\t\t\t\t\t\t\t\t\t\t$ff += 1 << 1;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tcase 'ExportFormat': {\n\t\t\t\t\t\t\t\t\t\t\t$ff += 1 << 2;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tcase 'GetMethod': {\n\t\t\t\t\t\t\t\t\t\t\t$ff += 1 << 3;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tcase 'SubmitCoordinates': {\n\t\t\t\t\t\t\t\t\t\t\t$ff += 1 << 4;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tcase 'XFDF': {\n\t\t\t\t\t\t\t\t\t\t\t$ff += 1 << 5;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tcase 'IncludeAppendSaves': {\n\t\t\t\t\t\t\t\t\t\t\t$ff += 1 << 6;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tcase 'IncludeAnnotations': {\n\t\t\t\t\t\t\t\t\t\t\t$ff += 1 << 7;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tcase 'SubmitPDF': {\n\t\t\t\t\t\t\t\t\t\t\t$ff += 1 << 8;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tcase 'CanonicalFormat': {\n\t\t\t\t\t\t\t\t\t\t\t$ff += 1 << 9;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tcase 'ExclNonUserAnnots': {\n\t\t\t\t\t\t\t\t\t\t\t$ff += 1 << 10;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tcase 'ExclFKey': {\n\t\t\t\t\t\t\t\t\t\t\t$ff += 1 << 11;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tcase 'EmbedForm': {\n\t\t\t\t\t\t\t\t\t\t\t$ff += 1 << 13;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$ff = intval($val);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$opt['aa'] .= ' /Flags '.$ff;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t$opt['aa'] .= ' >>';\n\t\t\t\t} else {\n\t\t\t\t\t// Javascript action or raw action command\n\t\t\t\t\t$js_obj_id = $this->addJavascriptObject($action);\n\t\t\t\t\t$opt['aa'] = '/D '.$js_obj_id.' 0 R';\n\t\t\t\t}\n\t\t\t}\n\t\t\t$this->Annotation($x, $y, $w, $h, $name, $opt, 0);\n\t\t\tif ($this->rtl) {\n\t\t\t\t$this->x -= $w;\n\t\t\t} else {\n\t\t\t\t$this->x += $w;\n\t\t\t}\n\t\t}\n\n\t\t// --- END FORMS FIELDS ------------------------------------------------\n\n\t\t/**\n\t\t * Add certification signature (DocMDP or UR3)\n\t\t * You can set only one signature type\n\t\t * @access protected\n\t\t * @author Nicola Asuni\n\t\t * @since 4.6.008 (2009-05-07)\n\t\t */\n\t\tprotected function _putsignature() {\n\t\t\tif ((!$this->sign) OR (!isset($this->signature_data['cert_type']))) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t$this->_newobj();\n\t\t\t$out = ' << /Type /Sig';\n\t\t\t$out .= ' /Filter /Adobe.PPKLite';\n\t\t\t$out .= ' /SubFilter /adbe.pkcs7.detached';\n\t\t\t$out .= ' '.$this->byterange_string;\n\t\t\t$out .= ' /Contents<>'.str_repeat(' ', $this->signature_max_length);\n\t\t\t$out .= ' /Reference';\n\t\t\t$out .= ' [';\n\t\t\t$out .= ' << /Type /SigRef';\n\t\t\tif ($this->signature_data['cert_type'] > 0) {\n\t\t\t\t$out .= ' /TransformMethod /DocMDP';\n\t\t\t\t$out .= ' /TransformParams';\n\t\t\t\t$out .= ' <<';\n\t\t\t\t$out .= ' /Type /TransformParams';\n\t\t\t\t$out .= ' /V /1.2';\n\t\t\t\t$out .= ' /P '.$this->signature_data['cert_type'];\n\t\t\t} else {\n\t\t\t\t$out .= ' /TransformMethod /UR3';\n\t\t\t\t$out .= ' /TransformParams';\n\t\t\t\t$out .= ' << /Type /TransformParams';\n\t\t\t\t$out .= ' /V /2.2';\n\t\t\t\tif (!$this->empty_string($this->ur_document)) {\n\t\t\t\t\t$out .= ' /Document['.$this->ur_document.']';\n\t\t\t\t}\n\t\t\t\tif (!$this->empty_string($this->ur_annots)) {\n\t\t\t\t\t$out .= ' /Annots['.$this->ur_annots.']';\n\t\t\t\t}\n\t\t\t\tif (!$this->empty_string($this->ur_form)) {\n\t\t\t\t\t$out .= ' /Form['.$this->ur_form.']';\n\t\t\t\t}\n\t\t\t\tif (!$this->empty_string($this->ur_signature)) {\n\t\t\t\t\t$out .= ' /Signature['.$this->ur_signature.']';\n\t\t\t\t}\n\t\t\t}\n\t\t\t$out .= ' >> >> ]';\n\t\t\tif (isset($this->signature_data['info']['Name']) AND !$this->empty_string($this->signature_data['info']['Name'])) {\n\t\t\t\t$out .= ' /Name '.$this->_textstring($this->signature_data['info']['Name']);\n\t\t\t}\n\t\t\tif (isset($this->signature_data['info']['Location']) AND !$this->empty_string($this->signature_data['info']['Location'])) {\n\t\t\t\t$out .= ' /Location '.$this->_textstring($this->signature_data['info']['Location']);\n\t\t\t}\n\t\t\tif (isset($this->signature_data['info']['Reason']) AND !$this->empty_string($this->signature_data['info']['Reason'])) {\n\t\t\t\t$out .= ' /Reason '.$this->_textstring($this->signature_data['info']['Reason']);\n\t\t\t}\n\t\t\tif (isset($this->signature_data['info']['ContactInfo']) AND !$this->empty_string($this->signature_data['info']['ContactInfo'])) {\n\t\t\t\t$out .= ' /ContactInfo '.$this->_textstring($this->signature_data['info']['ContactInfo']);\n\t\t\t}\n\t\t\t$out .= ' /M '.$this->_datestring();\n\t\t\t$out .= ' >> endobj';\n\t\t\t$this->_out($out);\n\t\t}\n\n\t\t/**\n\t\t * Set User's Rights for PDF Reader\n\t\t * WARNING: This works only using the Adobe private key with the setSignature() method!.\n\t\t * Check the PDF Reference 8.7.1 Transform Methods,\n\t\t * Table 8.105 Entries in the UR transform parameters dictionary\n\t\t * @param boolean $enable if true enable user's rights on PDF reader\n\t\t * @param string $document Names specifying additional document-wide usage rights for the document. The only defined value is \"/FullSave\", which permits a user to save the document along with modified form and/or annotation data.\n\t\t * @param string $annots Names specifying additional annotation-related usage rights for the document. Valid names in PDF 1.5 and later are /Create/Delete/Modify/Copy/Import/Export, which permit the user to perform the named operation on annotations.\n\t\t * @param string $form Names specifying additional form-field-related usage rights for the document. Valid names are: /Add/Delete/FillIn/Import/Export/SubmitStandalone/SpawnTemplate\n\t\t * @param string $signature Names specifying additional signature-related usage rights for the document. The only defined value is /Modify, which permits a user to apply a digital signature to an existing signature form field or clear a signed signature form field.\n\t\t * @access public\n\t\t * @author Nicola Asuni\n\t\t * @since 2.9.000 (2008-03-26)\n\t\t */\n\t\tpublic function setUserRights(\n\t\t\t\t$enable=true,\n\t\t\t\t$document='/FullSave',\n\t\t\t\t$annots='/Create/Delete/Modify/Copy/Import/Export',\n\t\t\t\t$form='/Add/Delete/FillIn/Import/Export/SubmitStandalone/SpawnTemplate',\n\t\t\t\t$signature='/Modify') {\n\t\t\t$this->ur = $enable;\n\t\t\t$this->ur_document = $document;\n\t\t\t$this->ur_annots = $annots;\n\t\t\t$this->ur_form = $form;\n\t\t\t$this->ur_signature = $signature;\n\t\t\tif (!$this->sign) {\n\t\t\t\t// This signature only works using the Adobe Private key that is unavailable!\n\t\t\t\t$this->setSignature('', '', '', '', 0, array());\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Enable document signature (requires the OpenSSL Library).\n\t\t * The digital signature improve document authenticity and integrity and allows o enable extra features on Acrobat Reader.\n\t\t * @param mixed $signing_cert signing certificate (string or filename prefixed with 'file://')\n\t\t * @param mixed $private_key private key (string or filename prefixed with 'file://')\n\t\t * @param string $private_key_password password\n\t\t * @param string $extracerts specifies the name of a file containing a bunch of extra certificates to include in the signature which can for example be used to help the recipient to verify the certificate that you used.\n\t\t * @param int $cert_type The access permissions granted for this document. Valid values shall be: 1 = No changes to the document shall be permitted; any change to the document shall invalidate the signature; 2 = Permitted changes shall be filling in forms, instantiating page templates, and signing; other changes shall invalidate the signature; 3 = Permitted changes shall be the same as for 2, as well as annotation creation, deletion, and modification; other changes shall invalidate the signature.\n\t\t * @param array $info array of option information: Name, Location, Reason, ContactInfo.\n\t\t * @access public\n\t\t * @author Nicola Asuni\n\t\t * @since 4.6.005 (2009-04-24)\n\t\t */\n\t\tpublic function setSignature($signing_cert='', $private_key='', $private_key_password='', $extracerts='', $cert_type=2, $info=array()) {\n\t\t\t// to create self-signed signature: openssl req -x509 -nodes -days 365000 -newkey rsa:1024 -keyout tcpdf.crt -out tcpdf.crt\n\t\t\t// to convert pfx certificate to pem: openssl\n\t\t\t//     OpenSSL> pkcs12 -in <cert.pfx> -out <cert.crt> -nodes\n\t\t\t$this->sign = true;\n\t\t\t$this->signature_data = array();\n\t\t\tif (strlen($signing_cert) == 0) {\n\t\t\t\t$signing_cert = 'file://'.dirname(__FILE__).'/tcpdf.crt';\n\t\t\t\t$private_key_password = 'tcpdfdemo';\n\t\t\t}\n\t\t\tif (strlen($private_key) == 0) {\n\t\t\t\t$private_key = $signing_cert;\n\t\t\t}\n\t\t\t$this->signature_data['signcert'] = $signing_cert;\n\t\t\t$this->signature_data['privkey'] = $private_key;\n\t\t\t$this->signature_data['password'] = $private_key_password;\n\t\t\t$this->signature_data['extracerts'] = $extracerts;\n\t\t\t$this->signature_data['cert_type'] = $cert_type;\n\t\t\t$this->signature_data['info'] = $info;\n\t\t}\n\n\t\t/**\n\t\t * Create a new page group.\n\t\t * NOTE: call this function before calling AddPage()\n\t\t * @param int $page starting group page (leave empty for next page).\n\t\t * @access public\n\t\t * @since 3.0.000 (2008-03-27)\n\t\t */\n\t\tpublic function startPageGroup($page='') {\n\t\t\tif (empty($page)) {\n\t\t\t\t$page = $this->page + 1;\n\t\t\t}\n\t\t\t$this->newpagegroup[$page] = true;\n\t\t}\n\n\t\t/**\n\t\t * Defines an alias for the total number of pages.\n\t\t * It will be substituted as the document is closed.\n\t\t * @param string $alias The alias.\n\t\t * @access public\n\t\t * @since 1.4\n\t\t * @see getAliasNbPages(), PageNo(), Footer()\n\t\t */\n\t\tpublic function AliasNbPages($alias='{nb}') {\n\t\t\t$this->AliasNbPages = $alias;\n\t\t}\n\n\t\t/**\n\t\t * Returns the string alias used for the total number of pages.\n         * If the current font is unicode type, the returned string is surrounded by additional curly braces.\n\t\t * @return string\n\t\t * @access public\n\t\t * @since 4.0.018 (2008-08-08)\n\t\t * @see AliasNbPages(), PageNo(), Footer()\n\t\t */\n\t\tpublic function getAliasNbPages() {\n\t\t\tif (($this->CurrentFont['type'] == 'TrueTypeUnicode') OR ($this->CurrentFont['type'] == 'cidfont0')) {\n\t\t\t\treturn '{'.$this->AliasNbPages.'}';\n            }\n\t\t\treturn $this->AliasNbPages;\n\t\t}\n\n\t\t/**\n\t\t * Defines an alias for the page number.\n\t\t * It will be substituted as the document is closed.\n\t\t * @param string $alias The alias.\n\t\t * @access public\n\t\t * @since 4.5.000 (2009-01-02)\n\t\t * @see getAliasNbPages(), PageNo(), Footer()\n\t\t */\n\t\tpublic function AliasNumPage($alias='{pnb}') {\n\t\t\t//Define an alias for total number of pages\n\t\t\t$this->AliasNumPage = $alias;\n\t\t}\n\n\t\t/**\n\t\t * Returns the string alias used for the page number.\n         * If the current font is unicode type, the returned string is surrounded by additional curly braces.\n\t\t * @return string\n\t\t * @access public\n\t\t * @since 4.5.000 (2009-01-02)\n\t\t * @see AliasNbPages(), PageNo(), Footer()\n\t\t */\n\t\tpublic function getAliasNumPage() {\n\t\t\tif (($this->CurrentFont['type'] == 'TrueTypeUnicode') OR ($this->CurrentFont['type'] == 'cidfont0')) {\n\t\t\t\treturn '{'.$this->AliasNumPage.'}';\n            }\n\t\t\treturn $this->AliasNumPage;\n\t\t}\n\n\t\t/**\n\t\t * Return the current page in the group.\n\t\t * @return current page in the group\n\t\t * @access public\n\t\t * @since 3.0.000 (2008-03-27)\n\t\t */\n\t\tpublic function getGroupPageNo() {\n\t\t\treturn $this->pagegroups[$this->currpagegroup];\n\t\t}\n\n\t\t/**\n\t\t * Returns the current group page number formatted as a string.\n\t\t * @access public\n\t\t * @since 4.3.003 (2008-11-18)\n\t\t * @see PaneNo(), formatPageNumber()\n\t\t */\n\t\tpublic function getGroupPageNoFormatted() {\n\t\t\treturn $this->formatPageNumber($this->getGroupPageNo());\n        }\n\n\t\t/**\n\t\t * Return the alias of the current page group\n         * If the current font is unicode type, the returned string is surrounded by additional curly braces.\n\t\t * (will be replaced by the total number of pages in this group).\n\t\t * @return alias of the current page group\n\t\t * @access public\n\t\t * @since 3.0.000 (2008-03-27)\n\t\t */\n\t\tpublic function getPageGroupAlias() {\n\t\t\tif (($this->CurrentFont['type'] == 'TrueTypeUnicode') OR ($this->CurrentFont['type'] == 'cidfont0')) {\n\t\t\t\treturn '{'.$this->currpagegroup.'}';\n            }\n\t\t\treturn $this->currpagegroup;\n\t\t}\n\n\t\t/**\n\t\t * Return the alias for the page number on the current page group\n         * If the current font is unicode type, the returned string is surrounded by additional curly braces.\n\t\t * (will be replaced by the total number of pages in this group).\n\t\t * @return alias of the current page group\n\t\t * @access public\n\t\t * @since 4.5.000 (2009-01-02)\n\t\t */\n\t\tpublic function getPageNumGroupAlias() {\n\t\t\tif (($this->CurrentFont['type'] == 'TrueTypeUnicode') OR ($this->CurrentFont['type'] == 'cidfont0')) {\n\t\t\t\treturn '{'.str_replace('{nb', '{pnb', $this->currpagegroup).'}';\n            }\n\t\t\treturn str_replace('{nb', '{pnb', $this->currpagegroup);\n\t\t}\n\n\t\t/**\n\t\t * Format the page numbers.\n\t\t * This method can be overriden for custom formats.\n\t\t * @param int $num page number\n\t\t * @access protected\n\t\t * @since 4.2.005 (2008-11-06)\n\t\t */\n\t\tprotected function formatPageNumber($num) {\n\t\t\treturn number_format((float)$num, 0, '', '.');\n\t\t}\n\n\t\t/**\n\t\t * Format the page numbers on the Table Of Content.\n\t\t * This method can be overriden for custom formats.\n\t\t * @param int $num page number\n\t\t * @access protected\n\t\t * @since 4.5.001 (2009-01-04)\n\t\t * @see addTOC(), addHTMLTOC()\n\t\t */\n\t\tprotected function formatTOCPageNumber($num) {\n\t\t\treturn number_format((float)$num, 0, '', '.');\n\t\t}\n\n        /**\n\t\t * Returns the current page number formatted as a string.\n\t\t * @access public\n\t\t * @since 4.2.005 (2008-11-06)\n\t\t * @see PaneNo(), formatPageNumber()\n\t\t */\n\t\tpublic function PageNoFormatted() {\n\t\t\treturn $this->formatPageNumber($this->PageNo());\n        }\n\n        /**\n\t\t * Put visibility settings.\n\t\t * @access protected\n\t\t * @since 3.0.000 (2008-03-27)\n\t\t */\n\t\tprotected function _putocg() {\n\t\t\t$this->_newobj();\n\t\t\t$this->n_ocg_print = $this->n;\n\t\t\t$this->_out('<< /Type /OCG /Name '.$this->_textstring('print').' /Usage << /Print <</PrintState /ON>> /View <</ViewState /OFF>> >> >> endobj');\n\t\t\t$this->_newobj();\n\t\t\t$this->n_ocg_view = $this->n;\n\t\t\t$this->_out('<< /Type /OCG /Name '.$this->_textstring('view').' /Usage << /Print <</PrintState /OFF>> /View <</ViewState /ON>> >> >> endobj');\n\t\t}\n\n\t\t/**\n\t\t * Set the visibility of the successive elements.\n\t\t * This can be useful, for instance, to put a background\n\t\t * image or color that will show on screen but won't print.\n\t\t * @param string $v visibility mode. Legal values are: all, print, screen.\n\t\t * @access public\n\t\t * @since 3.0.000 (2008-03-27)\n\t\t */\n\t\tpublic function setVisibility($v) {\n\t\t\tif ($this->openMarkedContent) {\n\t\t\t\t// close existing open marked-content\n\t\t\t\t$this->_out('EMC');\n\t\t\t\t$this->openMarkedContent = false;\n\t\t\t}\n\t\t\tswitch($v) {\n\t\t\t\tcase 'print': {\n\t\t\t\t\t$this->_out('/OC /OC1 BDC');\n\t\t\t\t\t$this->openMarkedContent = true;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'screen': {\n\t\t\t\t\t$this->_out('/OC /OC2 BDC');\n\t\t\t\t\t$this->openMarkedContent = true;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'all': {\n\t\t\t\t\t$this->_out('');\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tdefault: {\n\t\t\t\t\t$this->Error('Incorrect visibility: '.$v);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$this->visibility = $v;\n\t\t}\n\n\t\t/**\n\t\t * Add transparency parameters to the current extgstate\n\t\t * @param array $params parameters\n\t\t * @return the number of extgstates\n\t\t * @access protected\n\t\t * @since 3.0.000 (2008-03-27)\n\t\t */\n\t\tprotected function addExtGState($parms) {\n\t\t\t$n = count($this->extgstates) + 1;\n\t\t\t// check if this ExtGState already exist\n\t\t\tfor ($i = 1; $i < $n; ++$i) {\n\t\t\t\tif ($this->extgstates[$i]['parms'] == $parms) {\n\t\t\t\t\t// return reference to existing ExtGState\n\t\t\t\t\treturn $i;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$this->extgstates[$n]['parms'] = $parms;\n\t\t\treturn $n;\n\t\t}\n\n\t\t/**\n\t\t * Add an extgstate\n\t\t * @param array $gs extgstate\n\t\t * @access protected\n\t\t * @since 3.0.000 (2008-03-27)\n\t\t */\n\t\tprotected function setExtGState($gs) {\n\t\t\t$this->_out(sprintf('/GS%d gs', $gs));\n\t\t}\n\n\t\t/**\n\t\t * Put extgstates for object transparency\n\t\t * @param array $gs extgstate\n\t\t * @access protected\n\t\t * @since 3.0.000 (2008-03-27)\n\t\t */\n\t\tprotected function _putextgstates() {\n\t\t\t$ne = count($this->extgstates);\n\t\t\tfor ($i = 1; $i <= $ne; ++$i) {\n\t\t\t\t$this->_newobj();\n\t\t\t\t$this->extgstates[$i]['n'] = $this->n;\n\t\t\t\t$out = '<< /Type /ExtGState';\n\t\t\t\tforeach ($this->extgstates[$i]['parms'] as $k => $v) {\n\t\t\t\t\tif (is_float($v)) {\n\t\t\t\t\t\t$v = sprintf('%.2F', $v);\n\t\t\t\t\t}\n\t\t\t\t\t$out .= ' /'.$k.' '.$v;\n\t\t\t\t}\n\t\t\t\t$out .= ' >> endobj';\n\t\t\t\t$this->_out($out);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Set alpha for stroking (CA) and non-stroking (ca) operations.\n\t\t * @param float $alpha real value from 0 (transparent) to 1 (opaque)\n\t\t * @param string $bm blend mode, one of the following: Normal, Multiply, Screen, Overlay, Darken, Lighten, ColorDodge, ColorBurn, HardLight, SoftLight, Difference, Exclusion, Hue, Saturation, Color, Luminosity\n\t\t * @access public\n\t\t * @since 3.0.000 (2008-03-27)\n\t\t */\n\t\tpublic function setAlpha($alpha, $bm='Normal') {\n\t\t\t$gs = $this->addExtGState(array('ca' => $alpha, 'CA' => $alpha, 'BM' => '/'.$bm, 'AIS' => 'false'));\n\t\t\t$this->setExtGState($gs);\n\t\t}\n\n\t\t/**\n\t\t * Set the default JPEG compression quality (1-100)\n\t\t * @param int $quality JPEG quality, integer between 1 and 100\n\t\t * @access public\n\t\t * @since 3.0.000 (2008-03-27)\n\t\t */\n\t\tpublic function setJPEGQuality($quality) {\n\t\t\tif (($quality < 1) OR ($quality > 100)) {\n\t\t\t\t$quality = 75;\n\t\t\t}\n\t\t\t$this->jpeg_quality = intval($quality);\n\t\t}\n\n\t\t/**\n\t\t * Set the default number of columns in a row for HTML tables.\n\t\t * @param int $cols number of columns\n\t\t * @access public\n\t\t * @since 3.0.014 (2008-06-04)\n\t\t */\n\t\tpublic function setDefaultTableColumns($cols=4) {\n\t\t\t$this->default_table_columns = intval($cols);\n\t\t}\n\n\t\t/**\n\t\t * Set the height of the cell (line height) respect the font height.\n\t\t * @param int $h cell proportion respect font height (typical value = 1.25).\n\t\t * @access public\n\t\t * @since 3.0.014 (2008-06-04)\n\t\t */\n\t\tpublic function setCellHeightRatio($h) {\n\t\t\t$this->cell_height_ratio = $h;\n\t\t}\n\n\t\t/**\n\t\t * return the height of cell repect font height.\n\t\t * @access public\n\t\t * @since 4.0.012 (2008-07-24)\n\t\t */\n\t\tpublic function getCellHeightRatio() {\n\t\t\treturn $this->cell_height_ratio;\n\t\t}\n\n\t\t/**\n\t\t * Set the PDF version (check PDF reference for valid values).\n\t\t * Default value is 1.t\n\t\t * @access public\n\t\t * @since 3.1.000 (2008-06-09)\n\t\t */\n\t\tpublic function setPDFVersion($version='1.7') {\n\t\t\t$this->PDFVersion = $version;\n\t\t}\n\n\t\t/**\n\t\t * Set the viewer preferences dictionary controlling the way the document is to be presented on the screen or in print.\n\t\t * (see Section 8.1 of PDF reference, \"Viewer Preferences\").\n\t\t * <ul><li>HideToolbar boolean (Optional) A flag specifying whether to hide the viewer application's tool bars when the document is active. Default value: false.</li><li>HideMenubar boolean (Optional) A flag specifying whether to hide the viewer application's menu bar when the document is active. Default value: false.</li><li>HideWindowUI boolean (Optional) A flag specifying whether to hide user interface elements in the document's window (such as scroll bars and navigation controls), leaving only the document's contents displayed. Default value: false.</li><li>FitWindow boolean (Optional) A flag specifying whether to resize the document's window to fit the size of the first displayed page. Default value: false.</li><li>CenterWindow boolean (Optional) A flag specifying whether to position the document's window in the center of the screen. Default value: false.</li><li>DisplayDocTitle boolean (Optional; PDF 1.4) A flag specifying whether the window's title bar should display the document title taken from the Title entry of the document information dictionary (see Section 10.2.1, \"Document Information Dictionary\"). If false, the title bar should instead display the name of the PDF file containing the document. Default value: false.</li><li>NonFullScreenPageMode name (Optional) The document's page mode, specifying how to display the document on exiting full-screen mode:<ul><li>UseNone Neither document outline nor thumbnail images visible</li><li>UseOutlines Document outline visible</li><li>UseThumbs Thumbnail images visible</li><li>UseOC Optional content group panel visible</li></ul>This entry is meaningful only if the value of the PageMode entry in the catalog dictionary (see Section 3.6.1, \"Document Catalog\") is FullScreen; it is ignored otherwise. Default value: UseNone.</li><li>ViewArea name (Optional; PDF 1.4) The name of the page boundary representing the area of a page to be displayed when viewing the document on the screen. Valid values are (see Section 10.10.1, \"Page Boundaries\").:<ul><li>MediaBox</li><li>CropBox (default)</li><li>BleedBox</li><li>TrimBox</li><li>ArtBox</li></ul></li><li>ViewClip name (Optional; PDF 1.4) The name of the page boundary to which the contents of a page are to be clipped when viewing the document on the screen. Valid values are (see Section 10.10.1, \"Page Boundaries\").:<ul><li>MediaBox</li><li>CropBox (default)</li><li>BleedBox</li><li>TrimBox</li><li>ArtBox</li></ul></li><li>PrintArea name (Optional; PDF 1.4) The name of the page boundary representing the area of a page to be rendered when printing the document. Valid values are (see Section 10.10.1, \"Page Boundaries\").:<ul><li>MediaBox</li><li>CropBox (default)</li><li>BleedBox</li><li>TrimBox</li><li>ArtBox</li></ul></li><li>PrintClip name (Optional; PDF 1.4) The name of the page boundary to which the contents of a page are to be clipped when printing the document. Valid values are (see Section 10.10.1, \"Page Boundaries\").:<ul><li>MediaBox</li><li>CropBox (default)</li><li>BleedBox</li><li>TrimBox</li><li>ArtBox</li></ul></li><li>PrintScaling name (Optional; PDF 1.6) The page scaling option to be selected when a print dialog is displayed for this document. Valid values are: <ul><li>None, which indicates that the print dialog should reflect no page scaling</li><li>AppDefault (default), which indicates that applications should use the current print scaling</li></ul></li><li>Duplex name (Optional; PDF 1.7) The paper handling option to use when printing the file from the print dialog. The following values are valid:<ul><li>Simplex - Print single-sided</li><li>DuplexFlipShortEdge - Duplex and flip on the short edge of the sheet</li><li>DuplexFlipLongEdge - Duplex and flip on the long edge of the sheet</li></ul>Default value: none</li><li>PickTrayByPDFSize boolean (Optional; PDF 1.7) A flag specifying whether the PDF page size is used to select the input paper tray. This setting influences only the preset values used to populate the print dialog presented by a PDF viewer application. If PickTrayByPDFSize is true, the check box in the print dialog associated with input paper tray is checked. Note: This setting has no effect on Mac OS systems, which do not provide the ability to pick the input tray by size.</li><li>PrintPageRange array (Optional; PDF 1.7) The page numbers used to initialize the print dialog box when the file is printed. The first page of the PDF file is denoted by 1. Each pair consists of the first and last pages in the sub-range. An odd number of integers causes this entry to be ignored. Negative numbers cause the entire array to be ignored. Default value: as defined by PDF viewer application</li><li>NumCopies integer (Optional; PDF 1.7) The number of copies to be printed when the print dialog is opened for this file. Supported values are the integers 2 through 5. Values outside this range are ignored. Default value: as defined by PDF viewer application, but typically 1</li></ul>\n\t\t * @param array $preferences array of options.\n\t\t * @author Nicola Asuni\n\t\t * @access public\n\t\t * @since 3.1.000 (2008-06-09)\n\t\t */\n\t\tpublic function setViewerPreferences($preferences) {\n\t\t\t$this->viewer_preferences = $preferences;\n\t\t}\n\n\t\t/**\n\t\t * Paints color transition registration bars\n\t\t * @param float $x abscissa of the top left corner of the rectangle.\n\t\t * @param float $y ordinate of the top left corner of the rectangle.\n\t\t * @param float $w width of the rectangle.\n\t\t * @param float $h height of the rectangle.\n\t\t * @param boolean $transition if true prints tcolor transitions to white.\n\t\t * @param boolean $vertical if true prints bar vertically.\n\t\t * @param string $colors colors to print, one letter per color separated by comma (for example 'A,W,R,G,B,C,M,Y,K'): A=black, W=white, R=red, G=green, B=blue, C=cyan, M=magenta, Y=yellow, K=black.\n\t\t * @author Nicola Asuni\n\t\t * @since 4.9.000 (2010-03-26)\n\t\t * @access public\n\t\t */\n\t\tpublic function colorRegistrationBar($x, $y, $w, $h, $transition=true, $vertical=false, $colors='A,R,G,B,C,M,Y,K') {\n\t\t\t$bars = explode(',', $colors);\n\t\t\t$numbars = count($bars); // number of bars to print\n\t\t\t// set bar measures\n\t\t\tif ($vertical) {\n\t\t\t\t$coords = array(0, 0, 0, 1);\n\t\t\t\t$wb = $w / $numbars; // bar width\n\t\t\t\t$hb = $h; // bar height\n\t\t\t\t$xd = $wb; // delta x\n\t\t\t\t$yd = 0; // delta y\n\t\t\t} else {\n\t\t\t\t$coords = array(1, 0, 0, 0);\n\t\t\t\t$wb = $w; // bar width\n\t\t\t\t$hb = $h / $numbars; // bar height\n\t\t\t\t$xd = 0; // delta x\n\t\t\t\t$yd = $hb; // delta y\n\t\t\t}\n\t\t\t$xb = $x;\n\t\t\t$yb = $y;\n\t\t\tforeach ($bars as $col) {\n\t\t\t\tswitch ($col) {\n\t\t\t\t\t// set transition colors\n\t\t\t\t\tcase 'A': { // BLACK\n\t\t\t\t\t\t$col_a = array(255);\n\t\t\t\t\t\t$col_b = array(0);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'W': { // WHITE\n\t\t\t\t\t\t$col_a = array(0);\n\t\t\t\t\t\t$col_b = array(255);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'R': { // R\n\t\t\t\t\t\t$col_a = array(255,255,255);\n\t\t\t\t\t\t$col_b = array(255,0,0);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'G': { // G\n\t\t\t\t\t\t$col_a = array(255,255,255);\n\t\t\t\t\t\t$col_b = array(0,255,0);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'B': { // B\n\t\t\t\t\t\t$col_a = array(255,255,255);\n\t\t\t\t\t\t$col_b = array(0,0,255);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'C': { // C\n\t\t\t\t\t\t$col_a = array(0,0,0,0);\n\t\t\t\t\t\t$col_b = array(100,0,0,0);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'M': { // M\n\t\t\t\t\t\t$col_a = array(0,0,0,0);\n\t\t\t\t\t\t$col_b = array(0,100,0,0);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'Y': { // Y\n\t\t\t\t\t\t$col_a = array(0,0,0,0);\n\t\t\t\t\t\t$col_b = array(0,0,100,0);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'K': { // K\n\t\t\t\t\t\t$col_a = array(0,0,0,0);\n\t\t\t\t\t\t$col_b = array(0,0,0,100);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tdefault: { // GRAY\n\t\t\t\t\t\t$col_a = array(255);\n\t\t\t\t\t\t$col_b = array(0);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ($transition) {\n\t\t\t\t\t// color gradient\n\t\t\t\t\t$this->LinearGradient($xb, $yb, $wb, $hb, $col_a, $col_b, $coords);\n\t\t\t\t} else {\n\t\t\t\t\t// color rectangle\n\t\t\t\t\t$this->SetFillColorArray($col_b);\n\t\t\t\t\t$this->Rect($xb, $yb, $wb, $hb, 'F', array());\n\t\t\t\t}\n\t\t\t\t$xb += $xd;\n\t\t\t\t$yb += $yd;\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Paints crop mark\n\t\t * @param float $x abscissa of the crop mark center.\n\t\t * @param float $y ordinate of the crop mark center.\n\t\t * @param float $w width of the crop mark.\n\t\t * @param float $h height of the crop mark.\n\t\t * @param string $type type of crop mark, one sybol per type separated by comma: A = top left, B = top right, C = bottom left, D = bottom right.\n\t\t * @param array $color crop mark color (default black).\n\t\t * @author Nicola Asuni\n\t\t * @since 4.9.000 (2010-03-26)\n\t\t * @access public\n\t\t */\n\t\tpublic function cropMark($x, $y, $w, $h, $type='A,B,C,D', $color=array(0,0,0)) {\n\t\t\t$this->SetLineStyle(array('width' => (0.5 / $this->k), 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => $color));\n\t\t\t$crops = explode(',', $type);\n\t\t\t$numcrops = count($crops); // number of crop marks to print\n\t\t\t$dw = $w / 4; // horizontal space to leave before the intersection point\n\t\t\t$dh = $h / 4; // vertical space to leave before the intersection point\n\t\t\tforeach ($crops as $crop) {\n\t\t\t\tswitch ($crop) {\n\t\t\t\t\tcase 'A': {\n\t\t\t\t\t\t$x1 = $x;\n\t\t\t\t\t\t$y1 = $y - $h;\n\t\t\t\t\t\t$x2 = $x;\n\t\t\t\t\t\t$y2 = $y - $dh;\n\t\t\t\t\t\t$x3 = $x - $w;\n\t\t\t\t\t\t$y3 = $y;\n\t\t\t\t\t\t$x4 = $x - $dw;\n\t\t\t\t\t\t$y4 = $y;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'B': {\n\t\t\t\t\t\t$x1 = $x;\n\t\t\t\t\t\t$y1 = $y - $h;\n\t\t\t\t\t\t$x2 = $x;\n\t\t\t\t\t\t$y2 = $y - $dh;\n\t\t\t\t\t\t$x3 = $x + $dw;\n\t\t\t\t\t\t$y3 = $y;\n\t\t\t\t\t\t$x4 = $x + $w;\n\t\t\t\t\t\t$y4 = $y;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'C': {\n\t\t\t\t\t\t$x1 = $x - $w;\n\t\t\t\t\t\t$y1 = $y;\n\t\t\t\t\t\t$x2 = $x - $dw;\n\t\t\t\t\t\t$y2 = $y;\n\t\t\t\t\t\t$x3 = $x;\n\t\t\t\t\t\t$y3 = $y + $dh;\n\t\t\t\t\t\t$x4 = $x;\n\t\t\t\t\t\t$y4 = $y + $h;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'D': {\n\t\t\t\t\t\t$x1 = $x + $dw;\n\t\t\t\t\t\t$y1 = $y;\n\t\t\t\t\t\t$x2 = $x + $w;\n\t\t\t\t\t\t$y2 = $y;\n\t\t\t\t\t\t$x3 = $x;\n\t\t\t\t\t\t$y3 = $y + $dh;\n\t\t\t\t\t\t$x4 = $x;\n\t\t\t\t\t\t$y4 = $y + $h;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t$this->Line($x1, $y1, $x2, $y2);\n\t\t\t\t$this->Line($x3, $y3, $x4, $y4);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Paints a registration mark\n\t\t * @param float $x abscissa of the registration mark center.\n\t\t * @param float $y ordinate of the registration mark center.\n\t\t * @param float $r radius of the crop mark.\n\t\t * @param boolean $double if true print two concentric crop marks.\n\t\t * @param array $cola crop mark color (default black).\n\t\t * @param array $colb second crop mark color.\n\t\t * @author Nicola Asuni\n\t\t * @since 4.9.000 (2010-03-26)\n\t\t * @access public\n\t\t */\n\t\tpublic function registrationMark($x, $y, $r, $double=false, $cola=array(0,0,0), $colb=array(255,255,255)) {\n\t\t\t$line_style = array('width' => (0.5 / $this->k), 'cap' => 'butt', 'join' => 'miter', 'dash' => 0, 'color' => $cola);\n\t\t\t$this->SetFillColorArray($cola);\n\t\t\t$this->PieSector($x, $y, $r, 90, 180, 'F');\n\t\t\t$this->PieSector($x, $y, $r, 270, 360, 'F');\n\t\t\t$this->Circle($x, $y, $r, 0, 360, 'C', $line_style, array(), 8);\n\t\t\tif ($double) {\n\t\t\t\t$r2 = $r * 0.5;\n\t\t\t\t$this->SetFillColorArray($colb);\n\t\t\t\t$this->PieSector($x, $y, $r2, 90, 180, 'F');\n\t\t\t\t$this->PieSector($x, $y, $r2, 270, 360, 'F');\n\t\t\t\t$this->SetFillColorArray($cola);\n\t\t\t\t$this->PieSector($x, $y, $r2, 0, 90, 'F');\n\t\t\t\t$this->PieSector($x, $y, $r2, 180, 270, 'F');\n\t\t\t\t$this->Circle($x, $y, $r2, 0, 360, 'C', $line_style, array(), 8);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Paints a linear colour gradient.\n\t\t * @param float $x abscissa of the top left corner of the rectangle.\n\t\t * @param float $y ordinate of the top left corner of the rectangle.\n\t\t * @param float $w width of the rectangle.\n\t\t * @param float $h height of the rectangle.\n\t\t * @param array $col1 first color (Grayscale, RGB or CMYK components).\n\t\t * @param array $col2 second color (Grayscale, RGB or CMYK components).\n\t\t * @param array $coords array of the form (x1, y1, x2, y2) which defines the gradient vector (see linear_gradient_coords.jpg). The default value is from left to right (x1=0, y1=0, x2=1, y2=0).\n\t\t * @author Andreas Wrmser, Nicola Asuni\n\t\t * @since 3.1.000 (2008-06-09)\n\t\t * @access public\n\t\t */\n\t\tpublic function LinearGradient($x, $y, $w, $h, $col1=array(), $col2=array(), $coords=array(0,0,1,0)) {\n\t\t\t$this->Clip($x, $y, $w, $h);\n\t\t\t$this->Gradient(2, $coords, array(array('color' => $col1, 'offset' => 0, 'exponent' => 1), array('color' => $col2, 'offset' => 1, 'exponent' => 1)), array(), false);\n\t\t}\n\n\t\t/**\n\t\t * Paints a radial colour gradient.\n\t\t * @param float $x abscissa of the top left corner of the rectangle.\n\t\t * @param float $y ordinate of the top left corner of the rectangle.\n\t\t * @param float $w width of the rectangle.\n\t\t * @param float $h height of the rectangle.\n\t\t * @param array $col1 first color (Grayscale, RGB or CMYK components).\n\t\t * @param array $col2 second color (Grayscale, RGB or CMYK components).\n\t\t * @param array $coords array of the form (fx, fy, cx, cy, r) where (fx, fy) is the starting point of the gradient with color1, (cx, cy) is the center of the circle with color2, and r is the radius of the circle (see radial_gradient_coords.jpg). (fx, fy) should be inside the circle, otherwise some areas will not be defined.\n\t\t * @author Andreas Wrmser, Nicola Asuni\n\t\t * @since 3.1.000 (2008-06-09)\n\t\t * @access public\n\t\t */\n\t\tpublic function RadialGradient($x, $y, $w, $h, $col1=array(), $col2=array(), $coords=array(0.5,0.5,0.5,0.5,1)) {\n\t\t\t$this->Clip($x, $y, $w, $h);\n\t\t\t$this->Gradient(3, $coords, array(array('color' => $col1, 'offset' => 0, 'exponent' => 1), array('color' => $col2, 'offset' => 1, 'exponent' => 1)), array(), false);\n\t\t}\n\n\t\t/**\n\t\t * Paints a coons patch mesh.\n\t\t * @param float $x abscissa of the top left corner of the rectangle.\n\t\t * @param float $y ordinate of the top left corner of the rectangle.\n\t\t * @param float $w width of the rectangle.\n\t\t * @param float $h height of the rectangle.\n\t\t * @param array $col1 first color (lower left corner) (RGB components).\n\t\t * @param array $col2 second color (lower right corner) (RGB components).\n\t\t * @param array $col3 third color (upper right corner) (RGB components).\n\t\t * @param array $col4 fourth color (upper left corner) (RGB components).\n\t\t * @param array $coords <ul><li>for one patch mesh: array(float x1, float y1, .... float x12, float y12): 12 pairs of coordinates (normally from 0 to 1) which specify the Bezier control points that define the patch. First pair is the lower left edge point, next is its right control point (control point 2). Then the other points are defined in the order: control point 1, edge point, control point 2 going counter-clockwise around the patch. Last (x12, y12) is the first edge point's left control point (control point 1).</li><li>for two or more patch meshes: array[number of patches]: arrays with the following keys for each patch: f: where to put that patch (0 = first patch, 1, 2, 3 = right, top and left of precedent patch - I didn't figure this out completely - just try and error ;-) points: 12 pairs of coordinates of the Bezier control points as above for the first patch, 8 pairs of coordinates for the following patches, ignoring the coordinates already defined by the precedent patch (I also didn't figure out the order of these - also: try and see what's happening) colors: must be 4 colors for the first patch, 2 colors for the following patches</li></ul>\n\t\t * @param array $coords_min minimum value used by the coordinates. If a coordinate's value is smaller than this it will be cut to coords_min. default: 0\n\t\t * @param array $coords_max maximum value used by the coordinates. If a coordinate's value is greater than this it will be cut to coords_max. default: 1\n\t\t * @param boolean $antialias A flag indicating whether to filter the shading function to prevent aliasing artifacts.\n\t\t * @author Andreas Wrmser, Nicola Asuni\n\t\t * @since 3.1.000 (2008-06-09)\n\t\t * @access public\n\t\t */\n\t\tpublic function CoonsPatchMesh($x, $y, $w, $h, $col1=array(), $col2=array(), $col3=array(), $col4=array(), $coords=array(0.00,0.0,0.33,0.00,0.67,0.00,1.00,0.00,1.00,0.33,1.00,0.67,1.00,1.00,0.67,1.00,0.33,1.00,0.00,1.00,0.00,0.67,0.00,0.33), $coords_min=0, $coords_max=1, $antialias=false) {\n\t\t\t$this->Clip($x, $y, $w, $h);\n\t\t\t$n = count($this->gradients) + 1;\n\t\t\t$this->gradients[$n] = array();\n\t\t\t$this->gradients[$n]['type'] = 6; //coons patch mesh\n\t\t\t$this->gradients[$n]['coords'] = array();\n\t\t\t$this->gradients[$n]['antialias'] = $antialias;\n\t\t\t$this->gradients[$n]['colors'] = array();\n\t\t\t$this->gradients[$n]['transparency'] = false;\n\t\t\t//check the coords array if it is the simple array or the multi patch array\n\t\t\tif (!isset($coords[0]['f'])) {\n\t\t\t\t//simple array -> convert to multi patch array\n\t\t\t\tif (!isset($col1[1])) {\n\t\t\t\t\t$col1[1] = $col1[2] = $col1[0];\n\t\t\t\t}\n\t\t\t\tif (!isset($col2[1])) {\n\t\t\t\t\t$col2[1] = $col2[2] = $col2[0];\n\t\t\t\t}\n\t\t\t\tif (!isset($col3[1])) {\n\t\t\t\t\t$col3[1] = $col3[2] = $col3[0];\n\t\t\t\t}\n\t\t\t\tif (!isset($col4[1])) {\n\t\t\t\t\t$col4[1] = $col4[2] = $col4[0];\n\t\t\t\t}\n\t\t\t\t$patch_array[0]['f'] = 0;\n\t\t\t\t$patch_array[0]['points'] = $coords;\n\t\t\t\t$patch_array[0]['colors'][0]['r'] = $col1[0];\n\t\t\t\t$patch_array[0]['colors'][0]['g'] = $col1[1];\n\t\t\t\t$patch_array[0]['colors'][0]['b'] = $col1[2];\n\t\t\t\t$patch_array[0]['colors'][1]['r'] = $col2[0];\n\t\t\t\t$patch_array[0]['colors'][1]['g'] = $col2[1];\n\t\t\t\t$patch_array[0]['colors'][1]['b'] = $col2[2];\n\t\t\t\t$patch_array[0]['colors'][2]['r'] = $col3[0];\n\t\t\t\t$patch_array[0]['colors'][2]['g'] = $col3[1];\n\t\t\t\t$patch_array[0]['colors'][2]['b'] = $col3[2];\n\t\t\t\t$patch_array[0]['colors'][3]['r'] = $col4[0];\n\t\t\t\t$patch_array[0]['colors'][3]['g'] = $col4[1];\n\t\t\t\t$patch_array[0]['colors'][3]['b'] = $col4[2];\n\t\t\t} else {\n\t\t\t\t//multi patch array\n\t\t\t\t$patch_array = $coords;\n\t\t\t}\n\t\t\t$bpcd = 65535; //16 bits per coordinate\n\t\t\t//build the data stream\n\t\t\t$this->gradients[$n]['stream'] = '';\n\t\t\t$count_patch = count($patch_array);\n\t\t\tfor ($i=0; $i < $count_patch; ++$i) {\n\t\t\t\t$this->gradients[$n]['stream'] .= chr($patch_array[$i]['f']); //start with the edge flag as 8 bit\n\t\t\t\t$count_points = count($patch_array[$i]['points']);\n\t\t\t\tfor ($j=0; $j < $count_points; ++$j) {\n\t\t\t\t\t//each point as 16 bit\n\t\t\t\t\t$patch_array[$i]['points'][$j] = (($patch_array[$i]['points'][$j] - $coords_min) / ($coords_max - $coords_min)) * $bpcd;\n\t\t\t\t\tif ($patch_array[$i]['points'][$j] < 0) {\n\t\t\t\t\t\t$patch_array[$i]['points'][$j] = 0;\n\t\t\t\t\t}\n\t\t\t\t\tif ($patch_array[$i]['points'][$j] > $bpcd) {\n\t\t\t\t\t\t$patch_array[$i]['points'][$j] = $bpcd;\n\t\t\t\t\t}\n\t\t\t\t\t$this->gradients[$n]['stream'] .= chr(floor($patch_array[$i]['points'][$j] / 256));\n\t\t\t\t\t$this->gradients[$n]['stream'] .= chr(floor($patch_array[$i]['points'][$j] % 256));\n\t\t\t\t}\n\t\t\t\t$count_cols = count($patch_array[$i]['colors']);\n\t\t\t\tfor ($j=0; $j < $count_cols; ++$j) {\n\t\t\t\t\t//each color component as 8 bit\n\t\t\t\t\t$this->gradients[$n]['stream'] .= chr($patch_array[$i]['colors'][$j]['r']);\n\t\t\t\t\t$this->gradients[$n]['stream'] .= chr($patch_array[$i]['colors'][$j]['g']);\n\t\t\t\t\t$this->gradients[$n]['stream'] .= chr($patch_array[$i]['colors'][$j]['b']);\n\t\t\t\t}\n\t\t\t}\n\t\t\t//paint the gradient\n\t\t\t$this->_out('/Sh'.$n.' sh');\n\t\t\t//restore previous Graphic State\n\t\t\t$this->_out('Q');\n\t\t}\n\n\t\t/**\n\t\t * Set a rectangular clipping area.\n\t\t * @param float $x abscissa of the top left corner of the rectangle (or top right corner for RTL mode).\n\t\t * @param float $y ordinate of the top left corner of the rectangle.\n\t\t * @param float $w width of the rectangle.\n\t\t * @param float $h height of the rectangle.\n\t\t * @author Andreas Wrmser, Nicola Asuni\n\t\t * @since 3.1.000 (2008-06-09)\n\t\t * @access protected\n\t\t */\n\t\tprotected function Clip($x, $y, $w, $h) {\n\t\t\tif ($this->rtl) {\n\t\t\t\t$x = $this->w - $x - $w;\n\t\t\t}\n\t\t\t//save current Graphic State\n\t\t\t$s = 'q';\n\t\t\t//set clipping area\n\t\t\t$s .= sprintf(' %.2F %.2F %.2F %.2F re W n', $x*$this->k, ($this->h-$y)*$this->k, $w*$this->k, -$h*$this->k);\n\t\t\t//set up transformation matrix for gradient\n\t\t\t$s .= sprintf(' %.3F 0 0 %.3F %.3F %.3F cm', $w*$this->k, $h*$this->k, $x*$this->k, ($this->h-($y+$h))*$this->k);\n\t\t\t$this->_out($s);\n\t\t}\n\n\t\t/**\n\t\t * Output gradient.\n\t\t * @param int $type type of gradient (1 Function-based shading; 2 Axial shading; 3 Radial shading; 4 Free-form Gouraud-shaded triangle mesh; 5 Lattice-form Gouraud-shaded triangle mesh; 6 Coons patch mesh; 7 Tensor-product patch mesh). (Not all types are currently supported)\n\t\t * @param array $coords array of coordinates.\n\t\t * @param array $stops array gradient color components: color = array of GRAY, RGB or CMYK color components; offset = (0 to 1) represents a location along the gradient vector; exponent = exponent of the exponential interpolation function (default = 1).\n\t\t * @param array $background An array of colour components appropriate to the colour space, specifying a single background colour value.\n\t\t * @param boolean $antialias A flag indicating whether to filter the shading function to prevent aliasing artifacts.\n\t\t * @author Nicola Asuni\n\t\t * @since 3.1.000 (2008-06-09)\n\t\t * @access public\n\t\t */\n\t\tpublic function Gradient($type, $coords, $stops, $background=array(), $antialias=false) {\n\t\t\t$n = count($this->gradients) + 1;\n\t\t\t$this->gradients[$n] = array();\n\t\t\t$this->gradients[$n]['type'] = $type;\n\t\t\t$this->gradients[$n]['coords'] = $coords;\n\t\t\t$this->gradients[$n]['antialias'] = $antialias;\n\t\t\t$this->gradients[$n]['colors'] = array();\n\t\t\t$this->gradients[$n]['transparency'] = false;\n\t\t\t// color space\n\t\t\t$numcolspace = count($stops[0]['color']);\n\t\t\t$bcolor = array_values($background);\n\t\t\tswitch($numcolspace) {\n\t\t\t\tcase 4: { // CMYK\n\t\t\t\t\t$this->gradients[$n]['colspace'] = 'DeviceCMYK';\n\t\t\t\t\tif (!empty($background)) {\n\t\t\t\t\t\t$this->gradients[$n]['background'] = sprintf('%.3F %.3F %.3F %.3F', $bcolor[0]/100, $bcolor[1]/100, $bcolor[2]/100, $bcolor[3]/100);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 3: { // RGB\n\t\t\t\t\t$this->gradients[$n]['colspace'] = 'DeviceRGB';\n\t\t\t\t\tif (!empty($background)) {\n\t\t\t\t\t\t$this->gradients[$n]['background'] = sprintf('%.3F %.3F %.3F', $bcolor[0]/255, $bcolor[1]/255, $bcolor[2]/255);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 1: { // Gray scale\n\t\t\t\t\t$this->gradients[$n]['colspace'] = 'DeviceGray';\n\t\t\t\t\tif (!empty($background)) {\n\t\t\t\t\t\t$this->gradients[$n]['background'] = sprintf('%.3F', $bcolor[0]/255);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$num_stops = count($stops);\n\t\t\t$last_stop_id = $num_stops - 1;\n\t\t\tforeach ($stops as $key => $stop) {\n\t\t\t\t$this->gradients[$n]['colors'][$key] = array();\n\t\t\t\t// offset represents a location along the gradient vector\n\t\t\t\tif (isset($stop['offset'])) {\n\t\t\t\t\t$this->gradients[$n]['colors'][$key]['offset'] = $stop['offset'];\n\t\t\t\t} else {\n\t\t\t\t\tif ($key == 0) {\n\t\t\t\t\t\t$this->gradients[$n]['colors'][$key]['offset'] = 0;\n\t\t\t\t\t} elseif ($key == $last_stop_id) {\n\t\t\t\t\t\t$this->gradients[$n]['colors'][$key]['offset'] = 1;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$offsetstep = (1 - $this->gradients[$n]['colors'][($key - 1)]['offset']) / ($num_stops - $key);\n\t\t\t\t\t\t$this->gradients[$n]['colors'][$key]['offset'] = $this->gradients[$n]['colors'][($key - 1)]['offset'] + $offsetstep;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (isset($stop['opacity'])) {\n\t\t\t\t\t$this->gradients[$n]['colors'][$key]['opacity'] = $stop['opacity'];\n\t\t\t\t\tif ($stop['opacity'] < 1) {\n\t\t\t\t\t\t$this->gradients[$n]['transparency'] = true;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t$this->gradients[$n]['colors'][$key]['opacity'] = 1;\n\t\t\t\t}\n\t\t\t\t// exponent for the exponential interpolation function\n\t\t\t\tif (isset($stop['exponent'])) {\n\t\t\t\t\t$this->gradients[$n]['colors'][$key]['exponent'] = $stop['exponent'];\n\t\t\t\t} else {\n\t\t\t\t\t$this->gradients[$n]['colors'][$key]['exponent'] = 1;\n\t\t\t\t}\n\t\t\t\t// set colors\n\t\t\t\t$color = array_values($stop['color']);\n\t\t\t\tswitch($numcolspace) {\n\t\t\t\t\tcase 4: { // CMYK\n\t\t\t\t\t\t$this->gradients[$n]['colors'][$key]['color'] = sprintf('%.3F %.3F %.3F %.3F', $color[0]/100, $color[1]/100, $color[2]/100, $color[3]/100);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 3: { // RGB\n\t\t\t\t\t\t$this->gradients[$n]['colors'][$key]['color'] = sprintf('%.3F %.3F %.3F', $color[0]/255, $color[1]/255, $color[2]/255);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 1: { // Gray scale\n\t\t\t\t\t\t$this->gradients[$n]['colors'][$key]['color'] = sprintf('%.3F', $color[0]/255);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ($this->gradients[$n]['transparency']) {\n\t\t\t\t// paint luminosity gradient\n\t\t\t\t$this->_out('/TGS'.$n.' gs');\n\t\t\t}\n\t\t\t//paint the gradient\n\t\t\t$this->_out('/Sh'.$n.' sh');\n\t\t\t//restore previous Graphic State\n\t\t\t$this->_out('Q');\n\t\t}\n\n\t\t/**\n\t\t * Output gradient shaders.\n\t\t * @author Nicola Asuni\n\t\t * @since 3.1.000 (2008-06-09)\n\t\t * @access protected\n\t\t */\n\t\tfunction _putshaders() {\n\t\t\t$idt = count($this->gradients); //index for transparency gradients\n\t\t\tforeach ($this->gradients as $id => $grad) {\n\t\t\t\tif (($grad['type'] == 2) OR ($grad['type'] == 3)) {\n\t\t\t\t\t$this->_newobj();\n\t\t\t\t\t$fc = $this->n;\n\t\t\t\t\t$out = '<<';\n\t\t\t\t\t$out .= ' /FunctionType 3';\n\t\t\t\t\t$out .= ' /Domain [0 1]';\n\t\t\t\t\t$functions = '';\n\t\t\t\t\t$bounds = '';\n\t\t\t\t\t$encode = '';\n\t\t\t\t\t$i = 1;\n\t\t\t\t\t$num_cols = count($grad['colors']);\n\t\t\t\t\t$lastcols = $num_cols - 1;\n\t\t\t\t\tfor ($i = 1; $i < $num_cols; ++$i) {\n\t\t\t\t\t\t$functions .= ($fc + $i).' 0 R ';\n\t\t\t\t\t\tif ($i < $lastcols) {\r\n\t\t\t\t\t\t\t$bounds .= sprintf('%.3F ', $grad['colors'][$i]['offset']);\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t$encode .= '0 1 ';\n\t\t\t\t\t}\n\t\t\t\t\t$out .= ' /Functions ['.trim($functions).']';\n\t\t\t\t\t$out .= ' /Bounds ['.trim($bounds).']';\n\t\t\t\t\t$out .= ' /Encode ['.trim($encode).']';\n\t\t\t\t\t$out .= ' >>';\n\t\t\t\t\t$out .= ' endobj';\n\t\t\t\t\t$this->_out($out);\n\t\t\t\t\tfor ($i = 1; $i < $num_cols; ++$i) {\n\t\t\t\t\t\t$this->_newobj();\n\t\t\t\t\t\t$out = '<<';\n\t\t\t\t\t\t$out .= ' /FunctionType 2';\n\t\t\t\t\t\t$out .= ' /Domain [0 1]';\n\t\t\t\t\t\t$out .= ' /C0 ['.$grad['colors'][($i - 1)]['color'].']';\n\t\t\t\t\t\t$out .= ' /C1 ['.$grad['colors'][$i]['color'].']';\n\t\t\t\t\t\t$out .= ' /N '.$grad['colors'][$i]['exponent'];\n\t\t\t\t\t\t$out .= ' >>';\n\t\t\t\t\t\t$out .= ' endobj';\n\t\t\t\t\t\t$this->_out($out);\n\t\t\t\t\t}\n\t\t\t\t\t// set transparency fuctions\n\t\t\t\t\tif ($grad['transparency']) {\n\t\t\t\t\t\t$this->_newobj();\n\t\t\t\t\t\t$ft = $this->n;\n\t\t\t\t\t\t$out = '<<';\n\t\t\t\t\t\t$out .= ' /FunctionType 3';\n\t\t\t\t\t\t$out .= ' /Domain [0 1]';\n\t\t\t\t\t\t$functions = '';\n\t\t\t\t\t\t$i = 1;\n\t\t\t\t\t\t$num_cols = count($grad['colors']);\n\t\t\t\t\t\tfor ($i = 1; $i < $num_cols; ++$i) {\n\t\t\t\t\t\t\t$functions .= ($ft + $i).' 0 R ';\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$out .= ' /Functions ['.trim($functions).']';\n\t\t\t\t\t\t$out .= ' /Bounds ['.trim($bounds).']';\n\t\t\t\t\t\t$out .= ' /Encode ['.trim($encode).']';\n\t\t\t\t\t\t$out .= ' >>';\n\t\t\t\t\t\t$out .= ' endobj';\n\t\t\t\t\t\t$this->_out($out);\n\t\t\t\t\t\tfor ($i = 1; $i < $num_cols; ++$i) {\n\t\t\t\t\t\t\t$this->_newobj();\n\t\t\t\t\t\t\t$out = '<<';\n\t\t\t\t\t\t\t$out .= ' /FunctionType 2';\n\t\t\t\t\t\t\t$out .= ' /Domain [0 1]';\n\t\t\t\t\t\t\t$out .= ' /C0 ['.$grad['colors'][($i - 1)]['opacity'].']';\n\t\t\t\t\t\t\t$out .= ' /C1 ['.$grad['colors'][$i]['opacity'].']';\n\t\t\t\t\t\t\t$out .= ' /N '.$grad['colors'][$i]['exponent'];\n\t\t\t\t\t\t\t$out .= ' >>';\n\t\t\t\t\t\t\t$out .= ' endobj';\n\t\t\t\t\t\t\t$this->_out($out);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// set shading object\n\t\t\t\t$this->_newobj();\n\t\t\t\t$out = '<< /ShadingType '.$grad['type'];\n\t\t\t\tif (isset($grad['colspace'])) {\n\t\t\t\t\t$out .= ' /ColorSpace /'.$grad['colspace'];\n\t\t\t\t} else {\n\t\t\t\t\t$out .= ' /ColorSpace /DeviceRGB';\n\t\t\t\t}\n\t\t\t\tif (isset($grad['background']) AND !empty($grad['background'])) {\n\t\t\t\t\t$out .= ' /Background ['.$grad['background'].']';\n\t\t\t\t}\n\t\t\t\tif (isset($grad['antialias']) AND ($grad['antialias'] === true)) {\n\t\t\t\t\t$out .= ' /AntiAlias true';\n\t\t\t\t}\n\t\t\t\tif ($grad['type'] == 2) {\n\t\t\t\t\t$out .= ' '.sprintf('/Coords [%.3F %.3F %.3F %.3F]', $grad['coords'][0], $grad['coords'][1], $grad['coords'][2], $grad['coords'][3]);\n\t\t\t\t\t$out .= ' /Domain [0 1]';\n\t\t\t\t\t$out .= ' /Function '.$fc.' 0 R';\n\t\t\t\t\t$out .= ' /Extend [true true]';\n\t\t\t\t\t$out .= ' >>';\n\t\t\t\t} elseif ($grad['type'] == 3) {\n\t\t\t\t\t//x0, y0, r0, x1, y1, r1\n\t\t\t\t\t//at this this time radius of inner circle is 0\n\t\t\t\t\t$out .= ' '.sprintf('/Coords [%.3F %.3F 0 %.3F %.3F %.3F]', $grad['coords'][0], $grad['coords'][1], $grad['coords'][2], $grad['coords'][3], $grad['coords'][4]);\n\t\t\t\t\t$out .= ' /Domain [0 1]';\n\t\t\t\t\t$out .= ' /Function '.$fc.' 0 R';\n\t\t\t\t\t$out .= ' /Extend [true true]';\n\t\t\t\t\t$out .= ' >>';\n\t\t\t\t} elseif ($grad['type'] == 6) {\n\t\t\t\t\t$out .= ' /BitsPerCoordinate 16';\n\t\t\t\t\t$out .= ' /BitsPerComponent 8';\n\t\t\t\t\t$out .= ' /Decode[0 1 0 1 0 1 0 1 0 1]';\n\t\t\t\t\t$out .= ' /BitsPerFlag 8';\n\t\t\t\t\t$out .= ' /Length '.strlen($grad['stream']);\n\t\t\t\t\t$out .= ' >>';\n\t\t\t\t\t$out .= ' '.$this->_getstream($grad['stream']);\n\t\t\t\t}\n\t\t\t\t$out .= ' endobj';\n\t\t\t\t$this->_out($out);\n\t\t\t\tif ($grad['transparency']) {\n\t\t\t\t\t$shading_transparency = preg_replace('/\\/ColorSpace \\/[^\\s]+/si', '/ColorSpace /DeviceGray', $out);\n\t\t\t\t\t$shading_transparency = preg_replace('/\\/Function [0-9]+ /si', '/Function '.$ft.' ', $shading_transparency);\n\t\t\t\t}\n\t\t\t\t$this->gradients[$id]['id'] = $this->n;\n\t\t\t\t// set pattern object\n\t\t\t\t$this->_newobj();\n\t\t\t\t$out = '<< /Type /Pattern /PatternType 2';\n\t\t\t\t$out .= ' /Shading '.$this->gradients[$id]['id'].' 0 R';\n\t\t\t\t$out .= ' >> endobj';\n\t\t\t\t$this->_out($out);\n\t\t\t\t$this->gradients[$id]['pattern'] = $this->n;\n\t\t\t\t// set shading and pattern for transparency mask\n\t\t\t\tif ($grad['transparency']) {\n\t\t\t\t\t// luminosity pattern\n\t\t\t\t\t$idgs = $id + $idt;\n\t\t\t\t\t$this->_newobj();\n\t\t\t\t\t$this->_out($shading_transparency);\n\t\t\t\t\t$this->gradients[$idgs]['id'] = $this->n;\n\t\t\t\t\t$this->_newobj();\n\t\t\t\t\t$out = '<< /Type /Pattern /PatternType 2';\n\t\t\t\t\t$out .= ' /Shading '.$this->gradients[$idgs]['id'].' 0 R';\n\t\t\t\t\t$out .= ' >> endobj';\n\t\t\t\t\t$this->_out($out);\n\t\t\t\t\t$this->gradients[$idgs]['pattern'] = $this->n;\n\t\t\t\t\t// luminosity XObject\n\t\t\t\t\t$this->_newobj();\n\t\t\t\t\t$filter = ($this->compress)?' /Filter /FlateDecode':'';\n\t\t\t\t\t$out = '<< /Type /XObject /Subtype /Form /FormType 1'.$filter;\n\t\t\t\t\t$stream = 'q /a0 gs /Pattern cs /p'.$idgs.' scn 0 0 '.$this->wPt.' '.$this->hPt.' re f Q';\n\t\t\t\t\t$out .= ' /Length '.strlen($stream);\n\t\t\t\t\t$out .= ' /BBox [0 0 '.$this->wPt.' '.$this->hPt.']';\n\t\t\t\t\t$out .= ' /Group << /Type /Group /S /Transparency /CS /DeviceGray >>';\n\t\t\t\t\t$out .= ' /Resources <<';\n\t\t\t\t\t$out .= ' /ExtGState << /a0 << /ca 1 /CA 1 >> >>';\n\t\t\t\t\t$out .= ' /Pattern << /p'.$idgs.' '.$this->gradients[$idgs]['pattern'].' 0 R >>';\n\t\t\t\t\t$out .= ' >>';\n\t\t\t\t\t$out .= ' >> ';\n\t\t\t\t\t$out .= $this->_getstream($stream);\n\t\t\t\t\t$out .= ' endobj';\n\t\t\t\t\t$this->_out($out);\n\t\t\t\t\t// SMask\n\t\t\t\t\t$this->_newobj();\n\t\t\t\t\t$out = '<< /Type /Mask /S /Luminosity /G '.($this->n - 1).' 0 R >> endobj';\n\t\t\t\t\t$this->_out($out);\n\t\t\t\t\t// ExtGState\n\t\t\t\t\t$this->_newobj();\n\t\t\t\t\t$out = '<< /Type /ExtGState /SMask '.($this->n - 1).' 0 R /AIS false >> endobj';\n\t\t\t\t\t$this->_out($out);\n\t\t\t\t\t$this->extgstates[] = array('n' => $this->n, 'name' => 'TGS'.$id);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Draw the sector of a circle.\n\t\t * It can be used for instance to render pie charts.\n\t\t * @param float $xc abscissa of the center.\n\t\t * @param float $yc ordinate of the center.\n\t\t * @param float $r radius.\n\t\t * @param float $a start angle (in degrees).\n\t\t * @param float $b end angle (in degrees).\n\t\t * @param string $style Style of rendering. See the getPathPaintOperator() function for more information.\n\t\t * @param float $cw: indicates whether to go clockwise (default: true).\n\t\t * @param float $o: origin of angles (0 for 3 o'clock, 90 for noon, 180 for 9 o'clock, 270 for 6 o'clock). Default: 90.\n\t\t * @author Maxime Delorme, Nicola Asuni\n\t\t * @since 3.1.000 (2008-06-09)\n\t\t * @access public\n\t\t */\n\t\tpublic function PieSector($xc, $yc, $r, $a, $b, $style='FD', $cw=true, $o=90) {\n\t\t\t$this->PieSectorXY($xc, $yc, $r, $r, $a, $b, $style, $cw, $o);\n\t\t}\n\n\t\t/**\n\t\t * Draw the sector of an ellipse.\n\t\t * It can be used for instance to render pie charts.\n\t\t * @param float $xc abscissa of the center.\n\t\t * @param float $yc ordinate of the center.\n\t\t * @param float $rx the x-axis radius.\n\t\t * @param float $ry the y-axis radius.\n\t\t * @param float $a start angle (in degrees).\n\t\t * @param float $b end angle (in degrees).\n\t\t * @param string $style Style of rendering. See the getPathPaintOperator() function for more information.\n\t\t * @param float $cw: indicates whether to go clockwise.\n\t\t * @param float $o: origin of angles (0 for 3 o'clock, 90 for noon, 180 for 9 o'clock, 270 for 6 o'clock).\n\t\t * @param integer $nc Number of curves used to draw a 90 degrees portion of arc.\n\t\t * @author Maxime Delorme, Nicola Asuni\n\t\t * @since 3.1.000 (2008-06-09)\n\t\t * @access public\n\t\t */\n\t\tpublic function PieSectorXY($xc, $yc, $rx, $ry, $a, $b, $style='FD', $cw=false, $o=0, $nc=2) {\n\t\t\tif ($this->rtl) {\n\t\t\t\t$xc = $this->w - $xc;\n\t\t\t}\n\t\t\t$op = $this->getPathPaintOperator($style);\n\t\t\tif ($op == 'f') {\n\t\t\t\t$line_style = array();\n\t\t\t}\n\t\t\tif ($cw) {\n\t\t\t\t$d = $b;\n\t\t\t\t$b = 360 - $a + $o;\n\t\t\t\t$a = 360 - $d + $o;\n\t\t\t} else {\n\t\t\t\t$b += $o;\n\t\t\t\t$a += $o;\n\t\t\t}\n\t\t\t$this->_outellipticalarc($xc, $yc, $rx, $ry, 0, $a, $b, true, $nc);\n\t\t\t$this->_out($op);\n\t\t}\n\n\t\t/**\n\t\t * Embed vector-based Adobe Illustrator (AI) or AI-compatible EPS files.\n\t\t * NOTE: EPS is not yet fully implemented, use the setRasterizeVectorImages() method to enable/disable rasterization of SVG images using ImageMagick library.\n\t\t * Only vector drawing is supported, not text or bitmap.\n\t\t * Although the script was successfully tested with various AI format versions, best results are probably achieved with files that were exported in the AI3 format (tested with Illustrator CS2, Freehand MX and Photoshop CS2).\n\t\t * @param string $file Name of the file containing the image.\n\t\t * @param float $x Abscissa of the upper-left corner.\n\t\t * @param float $y Ordinate of the upper-left corner.\n\t\t * @param float $w Width of the image in the page. If not specified or equal to zero, it is automatically calculated.\n\t\t * @param float $h Height of the image in the page. If not specified or equal to zero, it is automatically calculated.\n\t\t * @param mixed $link URL or identifier returned by AddLink().\n\t\t * @param boolean useBoundingBox specifies whether to position the bounding box (true) or the complete canvas (false) at location (x,y). Default value is true.\n\t\t * @param string $align Indicates the alignment of the pointer next to image insertion relative to image height. The value can be:<ul><li>T: top-right for LTR or top-left for RTL</li><li>M: middle-right for LTR or middle-left for RTL</li><li>B: bottom-right for LTR or bottom-left for RTL</li><li>N: next line</li></ul>\n\t\t * @param string $palign Allows to center or align the image on the current line. Possible values are:<ul><li>L : left align</li><li>C : center</li><li>R : right align</li><li>'' : empty string : left for LTR or right for RTL</li></ul>\n\t\t * @param mixed $border Indicates if borders must be drawn around the image. The value can be either a number:<ul><li>0: no border (default)</li><li>1: frame</li></ul>or a string containing some or all of the following characters (in any order):<ul><li>L: left</li><li>T: top</li><li>R: right</li><li>B: bottom</li></ul>\n\t\t * @param boolean $fitonpage if true the image is resized to not exceed page dimensions.\n\t\t * @author Valentin Schmidt, Nicola Asuni\n\t\t * @since 3.1.000 (2008-06-09)\n\t\t * @access public\n\t\t */\n\t\tpublic function ImageEps($file, $x='', $y='', $w=0, $h=0, $link='', $useBoundingBox=true, $align='', $palign='', $border=0, $fitonpage=false) {\n\t\t\tif ($this->rasterize_vector_images) {\n\t\t\t\t// convert SVG to raster image using GD or ImageMagick libraries\n\t\t\t\treturn $this->Image($file, $x, $y, $w, $h, 'EPS', $link, $align, true, 300, $palign, false, false, $border, false, false, $fitonpage);\n\t\t\t}\n\t\t\tif ($x === '') {\n\t\t\t\t$x = $this->x;\n\t\t\t}\n\t\t\tif ($y === '') {\n\t\t\t\t$y = $this->y;\n\t\t\t}\n\t\t\t$k = $this->k;\n\t\t\t$data = file_get_contents($file);\n\t\t\tif ($data === false) {\n\t\t\t\t$this->Error('EPS file not found: '.$file);\n\t\t\t}\n\t\t\t$regs = array();\n\t\t\t// EPS/AI compatibility check (only checks files created by Adobe Illustrator!)\n\t\t\tpreg_match(\"/%%Creator:([^\\r\\n]+)/\", $data, $regs); # find Creator\n\t\t\tif (count($regs) > 1) {\n\t\t\t\t$version_str = trim($regs[1]); # e.g. \"Adobe Illustrator(R) 8.0\"\n\t\t\t\tif (strpos($version_str, 'Adobe Illustrator') !== false) {\n\t\t\t\t\t$versexp = explode(' ', $version_str);\n\t\t\t\t\t$version = (float)array_pop($versexp);\n\t\t\t\t\tif ($version >= 9) {\n\t\t\t\t\t\t$this->Error('This version of Adobe Illustrator file is not supported: '.$file);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t// strip binary bytes in front of PS-header\n\t\t\t$start = strpos($data, '%!PS-Adobe');\n\t\t\tif ($start > 0) {\n\t\t\t\t$data = substr($data, $start);\n\t\t\t}\n\t\t\t// find BoundingBox params\n\t\t\tpreg_match(\"/%%BoundingBox:([^\\r\\n]+)/\", $data, $regs);\n\t\t\tif (count($regs) > 1) {\n\t\t\t\tlist($x1, $y1, $x2, $y2) = explode(' ', trim($regs[1]));\n\t\t\t} else {\n\t\t\t\t$this->Error('No BoundingBox found in EPS file: '.$file);\n\t\t\t}\n\t\t\t$start = strpos($data, '%%EndSetup');\n\t\t\tif ($start === false) {\n\t\t\t\t$start = strpos($data, '%%EndProlog');\n\t\t\t}\n\t\t\tif ($start === false) {\n\t\t\t\t$start = strpos($data, '%%BoundingBox');\n\t\t\t}\n\t\t\t$data = substr($data, $start);\n\t\t\t$end = strpos($data, '%%PageTrailer');\n\t\t\tif ($end===false) {\n\t\t\t\t$end = strpos($data, 'showpage');\n\t\t\t}\n\t\t\tif ($end) {\n\t\t\t\t$data = substr($data, 0, $end);\n\t\t\t}\n\t\t\t// calculate image width and height on document\n\t\t\tif (($w <= 0) AND ($h <= 0)) {\n\t\t\t\t$w = ($x2 - $x1) / $k;\n\t\t\t\t$h = ($y2 - $y1) / $k;\n\t\t\t} elseif ($w <= 0) {\n\t\t\t\t$w = ($x2-$x1) / $k * ($h / (($y2 - $y1) / $k));\n\t\t\t} elseif ($h <= 0) {\n\t\t\t\t$h = ($y2 - $y1) / $k * ($w / (($x2 - $x1) / $k));\n\t\t\t}\n\t\t\t// Check whether we need a new page first as this does not fit\n\t\t\t$prev_x = $this->x;\n\t\t\tif ($this->checkPageBreak($h, $y)) {\n\t\t\t\t$y = $this->y;\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$x += ($prev_x - $this->x);\n\t\t\t\t} else {\n\t\t\t\t\t$x += ($this->x - $prev_x);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// resize image to be contained on a single page\n\t\t\tif ($fitonpage) {\n\t\t\t\t$ratio_wh = $w / $h;\n\t\t\t\tif (($y + $h) > $this->PageBreakTrigger) {\n\t\t\t\t\t$h = $this->PageBreakTrigger - $y;\n\t\t\t\t\t$w = $h * $ratio_wh;\n\t\t\t\t}\n\t\t\t\tif (($x + $w) > ($this->w - $this->rMargin)) {\n\t\t\t\t\t$w = $this->w - $this->rMargin - $x;\n\t\t\t\t\t$h = $w / $ratio_wh;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// set scaling factors\n\t\t\t$scale_x = $w / (($x2 - $x1) / $k);\n\t\t\t$scale_y = $h / (($y2 - $y1) / $k);\n\t\t\t// set alignment\n\t\t\t$this->img_rb_y = $y + $h;\n\t\t\t// set alignment\n\t\t\tif ($this->rtl) {\n\t\t\t\tif ($palign == 'L') {\n\t\t\t\t\t$ximg = $this->lMargin;\n\t\t\t\t} elseif ($palign == 'C') {\n\t\t\t\t\t$ximg = ($this->w - $w) / 2;\n\t\t\t\t} elseif ($palign == 'R') {\n\t\t\t\t\t$ximg = $this->w - $this->rMargin - $w;\n\t\t\t\t} else {\n\t\t\t\t\t$ximg = $this->w - $x - $w;\n\t\t\t\t}\n\t\t\t\t$this->img_rb_x = $ximg;\n\t\t\t} else {\n\t\t\t\tif ($palign == 'L') {\n\t\t\t\t\t$ximg = $this->lMargin;\n\t\t\t\t} elseif ($palign == 'C') {\n\t\t\t\t\t$ximg = ($this->w - $w) / 2;\n\t\t\t\t} elseif ($palign == 'R') {\n\t\t\t\t\t$ximg = $this->w - $this->rMargin - $w;\n\t\t\t\t} else {\n\t\t\t\t\t$ximg = $x;\n\t\t\t\t}\n\t\t\t\t$this->img_rb_x = $ximg + $w;\n\t\t\t}\n\t\t\tif ($useBoundingBox) {\n\t\t\t\t$dx = $ximg * $k - $x1;\n\t\t\t\t$dy = $y * $k - $y1;\n\t\t\t} else {\n\t\t\t\t$dx = $ximg * $k;\n\t\t\t\t$dy = $y * $k;\n\t\t\t}\n\t\t\t// save the current graphic state\n\t\t\t$this->_out('q'.$this->epsmarker);\n\t\t\t// translate\n\t\t\t$this->_out(sprintf('%.3F %.3F %.3F %.3F %.3F %.3F cm', 1, 0, 0, 1, $dx, $dy + ($this->hPt - (2 * $y * $k) - ($y2 - $y1))));\n\t\t\t// scale\n\t\t\tif (isset($scale_x)) {\n\t\t\t\t$this->_out(sprintf('%.3F %.3F %.3F %.3F %.3F %.3F cm', $scale_x, 0, 0, $scale_y, $x1 * (1 - $scale_x), $y2 * (1 - $scale_y)));\n\t\t\t}\n\t\t\t// handle pc/unix/mac line endings\n\t\t\tpreg_match('/[\\r\\n]+/s', $data, $regs);\n\t\t\t$lines = explode($regs[0], $data);\n\t\t\t$u=0;\n\t\t\t$cnt = count($lines);\n\t\t\tfor ($i=0; $i < $cnt; ++$i) {\n\t\t\t\t$line = $lines[$i];\n\t\t\t\tif (($line == '') OR ($line{0} == '%')) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\t$len = strlen($line);\n\t\t\t\t$chunks = explode(' ', $line);\n\t\t\t\t$cmd = array_pop($chunks);\n\t\t\t\t// RGB\n\t\t\t\tif (($cmd == 'Xa') OR ($cmd == 'XA')) {\n\t\t\t\t\t$b = array_pop($chunks);\n\t\t\t\t\t$g = array_pop($chunks);\n\t\t\t\t\t$r = array_pop($chunks);\n\t\t\t\t\t$this->_out(''.$r.' '.$g.' '.$b.' '.($cmd=='Xa'?'rg':'RG')); //substr($line, 0, -2).'rg' -> in EPS (AI8): c m y k r g b rg!\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tswitch ($cmd) {\n\t\t\t\t\tcase 'm':\n\t\t\t\t\tcase 'l':\n\t\t\t\t\tcase 'v':\n\t\t\t\t\tcase 'y':\n\t\t\t\t\tcase 'c':\n\t\t\t\t\tcase 'k':\n\t\t\t\t\tcase 'K':\n\t\t\t\t\tcase 'g':\n\t\t\t\t\tcase 'G':\n\t\t\t\t\tcase 's':\n\t\t\t\t\tcase 'S':\n\t\t\t\t\tcase 'J':\n\t\t\t\t\tcase 'j':\n\t\t\t\t\tcase 'w':\n\t\t\t\t\tcase 'M':\n\t\t\t\t\tcase 'd':\n\t\t\t\t\tcase 'n': {\n\t\t\t\t\t\t$this->_out($line);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'x': {// custom fill color\n\t\t\t\t\t\tlist($c,$m,$y,$k) = $chunks;\n\t\t\t\t\t\t$this->_out(''.$c.' '.$m.' '.$y.' '.$k.' k');\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'X': { // custom stroke color\n\t\t\t\t\t\tlist($c,$m,$y,$k) = $chunks;\n\t\t\t\t\t\t$this->_out(''.$c.' '.$m.' '.$y.' '.$k.' K');\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'Y':\n\t\t\t\t\tcase 'N':\n\t\t\t\t\tcase 'V':\n\t\t\t\t\tcase 'L':\n\t\t\t\t\tcase 'C': {\n\t\t\t\t\t\t$line{$len-1} = strtolower($cmd);\n\t\t\t\t\t\t$this->_out($line);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'b':\n\t\t\t\t\tcase 'B': {\n\t\t\t\t\t\t$this->_out($cmd . '*');\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'f':\n\t\t\t\t\tcase 'F': {\n\t\t\t\t\t\tif ($u > 0) {\n\t\t\t\t\t\t\t$isU = false;\n\t\t\t\t\t\t\t$max = min($i+5, $cnt);\n\t\t\t\t\t\t\tfor ($j=$i+1; $j < $max; ++$j) {\n\t\t\t\t\t\t\t\t$isU = ($isU OR (($lines[$j] == 'U') OR ($lines[$j] == '*U')));\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ($isU) {\n\t\t\t\t\t\t\t\t$this->_out('f*');\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$this->_out('f*');\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase '*u': {\n\t\t\t\t\t\t++$u;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase '*U': {\n\t\t\t\t\t\t--$u;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t// restore previous graphic state\n\t\t\t$this->_out($this->epsmarker.'Q');\n\t\t\tif (!empty($border)) {\n\t\t\t\t$bx = $x;\n\t\t\t\t$by = $y;\n\t\t\t\t$this->x = $ximg;\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$this->x += $w;\n\t\t\t\t}\n\t\t\t\t$this->y = $y;\n\t\t\t\t$this->Cell($w, $h, '', $border, 0, '', 0, '', 0);\n\t\t\t\t$this->x = $bx;\n\t\t\t\t$this->y = $by;\n\t\t\t}\n\t\t\tif ($link) {\n\t\t\t\t$this->Link($ximg, $y, $w, $h, $link, 0);\n\t\t\t}\n\t\t\t// set pointer to align the successive text/objects\n\t\t\tswitch($align) {\n\t\t\t\tcase 'T':{\n\t\t\t\t\t$this->y = $y;\n\t\t\t\t\t$this->x = $this->img_rb_x;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'M':{\n\t\t\t\t\t$this->y = $y + round($h/2);\n\t\t\t\t\t$this->x = $this->img_rb_x;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'B':{\n\t\t\t\t\t$this->y = $this->img_rb_y;\n\t\t\t\t\t$this->x = $this->img_rb_x;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'N':{\n\t\t\t\t\t$this->SetY($this->img_rb_y);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tdefault:{\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$this->endlinex = $this->img_rb_x;\n\t\t}\n\n\t\t/**\n\t \t * Set document barcode.\n\t\t * @param string $bc barcode\n\t\t * @access public\n\t\t */\n\t\tpublic function setBarcode($bc='') {\n\t\t\t$this->barcode = $bc;\n\t\t}\n\n\t\t/**\n\t \t * Get current barcode.\n\t\t * @return string\n\t\t * @access public\n\t\t * @since 4.0.012 (2008-07-24)\n\t\t */\n\t\tpublic function getBarcode() {\n\t\t\treturn $this->barcode;\n\t\t}\n\n\t\t/**\n\t \t * Print a Linear Barcode.\n\t \t * @param string $code code to print\n\t \t * @param string $type type of barcode (see barcodes.php for supported formats).\n\t\t * @param int $x x position in user units\n\t\t * @param int $y y position in user units\n\t\t * @param int $w width in user units\n\t\t * @param int $h height in user units\n\t\t * @param float $xres width of the smallest bar in user units\n\t\t * @param array $style array of options:<ul><li>string $style['position'] barcode position inside the specified width: L = left (default for LTR); C = center; R = right (default for RTL); S = stretch</li><li>boolean $style['border'] if true prints a border around the barcode</li><li>int $style['padding'] padding to leave around the barcode in user units (set to 'auto' for automatic padding)</li><li>array $style['fgcolor'] color array for bars and text</li><li>mixed $style['bgcolor'] color array for background or false for transparent</li><li>boolean $style[\"text\"] boolean if true prints text below the barcode</li><li>string $style['font'] font name for text</li><li>int $style['fontsize'] font size for text</li><li>int $style['stretchtext']: 0 = disabled; 1 = horizontal scaling only if necessary; 2 = forced horizontal scaling; 3 = character spacing only if necessary; 4 = forced character spacing</li></ul>\n\t\t * @param string $align Indicates the alignment of the pointer next to barcode insertion relative to barcode height. The value can be:<ul><li>T: top-right for LTR or top-left for RTL</li><li>M: middle-right for LTR or middle-left for RTL</li><li>B: bottom-right for LTR or bottom-left for RTL</li><li>N: next line</li></ul>\n\t\t * @author Nicola Asuni\n\t\t * @since 3.1.000 (2008-06-09)\n\t\t * @access public\n\t\t */\n\t\tpublic function write1DBarcode($code, $type, $x='', $y='', $w='', $h='', $xres=0.4, $style='', $align='') {\n\t\t\tif ($this->empty_string($code)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\trequire_once(dirname(__FILE__).'/barcodes.php');\n\t\t\t// save current graphic settings\n\t\t\t$gvars = $this->getGraphicVars();\n\t\t\t// create new barcode object\n\t\t\t$barcodeobj = new TCPDFBarcode($code, $type);\n\t\t\t$arrcode = $barcodeobj->getBarcodeArray();\n\t\t\tif ($arrcode === false) {\n\t\t\t\t$this->Error('Error in 1D barcode string');\n\t\t\t}\n\t\t\t// set default values\n\t\t\tif (!isset($style['position'])) {\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$style['position'] = 'R';\n\t\t\t\t} else {\n\t\t\t\t\t$style['position'] = 'L';\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (!isset($style['fgcolor'])) {\n\t\t\t\t$style['fgcolor'] = array(0,0,0); // default black\n\t\t\t}\n\t\t\tif (!isset($style['bgcolor'])) {\n\t\t\t\t$style['bgcolor'] = false; // default transparent\n\t\t\t}\n\t\t\tif (!isset($style['border'])) {\n\t\t\t\t$style['border'] = false;\n\t\t\t}\n\t\t\t$fontsize = 0;\n\t\t\tif (!isset($style['text'])) {\n\t\t\t\t$style['text'] = false;\n\t\t\t}\n\t\t\tif ($style['text'] AND isset($style['font'])) {\n\t\t\t\tif (isset($style['fontsize'])) {\n\t\t\t\t\t$fontsize = $style['fontsize'];\n\t\t\t\t}\n\t\t\t\t$this->SetFont($style['font'], '', $fontsize);\n\t\t\t}\n\t\t\tif (!isset($style['stretchtext'])) {\n\t\t\t\t$style['stretchtext'] = 4;\n\t\t\t}\n\t\t\t// set foreground color\n\t\t\t$this->SetDrawColorArray($style['fgcolor']);\n\t\t\t$this->SetTextColorArray($style['fgcolor']);\n\t\t\tif ($this->empty_string($w) OR ($w <= 0)) {\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$w = $this->x - $this->lMargin;\n\t\t\t\t} else {\n\t\t\t\t\t$w = $this->w - $this->rMargin - $this->x;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ($this->empty_string($x)) {\n\t\t\t\t$x = $this->GetX();\n\t\t\t}\n\t\t\tif ($this->rtl) {\n\t\t\t\t$x = $this->w - $x;\n\t\t\t}\n\t\t\tif ($this->empty_string($y)) {\n\t\t\t\t$y = $this->GetY();\n\t\t\t}\n\t\t\tif ($this->empty_string($xres)) {\n\t\t\t\t$xres = 0.4;\n\t\t\t}\n\t\t\tif ($this->empty_string($h) OR ($h <= 0)) {\n\t\t\t\t$h = $w / 3;\n\t\t\t}\n\t\t\t// padding\n\t\t\tif (!isset($style['padding'])) {\n\t\t\t\t$style['padding'] = 0;\n\t\t\t} elseif ($style['padding'] === 'auto') {\n\t\t\t\t$style['padding'] = $h / 4;\n\t\t\t}\n\t\t\t$fbw = ($arrcode['maxw'] * $xres) + (2 * $style['padding']);\n\t\t\t$extraspace = ($this->cell_height_ratio * $fontsize / $this->k) + (2 * $style['padding']);\n\t\t\t$prev_x = $this->x;\n\t\t\t// maximum bar height\n\t\t\t$barh = $h;\n\t\t\t$h += $extraspace;\n\t\t\tif ($this->checkPageBreak($h, $y)) {\n\t\t\t\t$y = $this->GetY() + $this->cMargin;\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$x += ($prev_x - $this->x);\n\t\t\t\t} else {\n\t\t\t\t\t$x += ($this->x - $prev_x);\n\t\t\t\t}\n\t\t\t}\n\t\t\tswitch ($style['position']) {\n\t\t\t\tcase 'L': { // left\n\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t$xpos = $x - $w;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$xpos = $x;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'C': { // center\n\t\t\t\t\t$xdiff = (($w - $fbw) / 2);\n\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t$xpos = $x - $w + $xdiff;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$xpos = $x + $xdiff;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'R': { // right\n\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t$xpos = $x - $fbw;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$xpos = $x + $w - $fbw;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'S': { // stretch\n\t\t\t\t\t$fbw = $w;\n\t\t\t\t\t$xres = ($w - (2 * $style['padding'])) / $arrcode['maxw'];\n\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t$xpos = $x - $w;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$xpos = $x;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$xpos_rect = $xpos;\n\t\t\t$xpos = $xpos_rect + $style['padding'];\n\t\t\t$xpos_text = $xpos;\n\t\t\t// barcode is always printed in LTR direction\n\t\t\t$tempRTL = $this->rtl;\n\t\t\t$this->rtl = false;\n\t\t\t// print background color\n\t\t\tif ($style['bgcolor']) {\n\t\t\t\t$this->Rect($xpos_rect, $y, $fbw, $h, $style['border'] ? 'DF' : 'F', '', $style['bgcolor']);\n\t\t\t} elseif ($style['border']) {\n\t\t\t\t$this->Rect($xpos_rect, $y, $fbw, $h, 'D');\n\t\t\t}\n\t\t\t// print bars\n\t\t\tif ($arrcode !== false) {\n\t\t\t\tforeach ($arrcode['bcode'] as $k => $v) {\n\t\t\t\t\t$bw = ($v['w'] * $xres);\n\t\t\t\t\tif ($v['t']) {\n\t\t\t\t\t\t// draw a vertical bar\n\t\t\t\t\t\t$ypos = $y + $style['padding'] + ($v['p'] * $barh / $arrcode['maxh']);\n\t\t\t\t\t\t$this->Rect($xpos, $ypos, $bw, ($v['h'] * $barh  / $arrcode['maxh']), 'F', array(), $style['fgcolor']);\n\t\t\t\t\t}\n\t\t\t\t\t$xpos += $bw;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// print text\n\t\t\tif ($style['text']) {\n\t\t\t\t// print text\n\t\t\t\t$this->x = $xpos_text;\n\t\t\t\t$this->y = $y + $style['padding'] + $barh;\n\t\t\t\t$this->Cell(($arrcode['maxw'] * $xres), ($this->cell_height_ratio * $fontsize / $this->k), $code, 0, 0, 'C', 0, '', $style['stretchtext']);\n\t\t\t}\n\t\t\t// restore original direction\n\t\t\t$this->rtl = $tempRTL;\n\t\t\t// restore previous settings\n\t\t\t$this->setGraphicVars($gvars);\n\t\t\t// set bottomcoordinates\n\t\t\t$this->img_rb_y = $y + $h;\n\t\t\tif ($this->rtl) {\n\t\t\t\t// set left side coordinate\n\t\t\t\t$this->img_rb_x = ($this->w - $x - $w);\n\t\t\t} else {\n\t\t\t\t// set right side coordinate\n\t\t\t\t$this->img_rb_x = $x + $w;\n\t\t\t}\n\t\t\t// set pointer to align the successive text/objects\n\t\t\tswitch($align) {\n\t\t\t\tcase 'T':{\n\t\t\t\t\t$this->y = $y;\n\t\t\t\t\t$this->x = $this->img_rb_x;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'M':{\n\t\t\t\t\t$this->y = $y + round($h/2);\n\t\t\t\t\t$this->x = $this->img_rb_x;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'B':{\n\t\t\t\t\t$this->y = $this->img_rb_y;\n\t\t\t\t\t$this->x = $this->img_rb_x;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'N':{\n\t\t\t\t\t$this->SetY($this->img_rb_y);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tdefault:{\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t \t * This function is DEPRECATED, please use the new write1DBarcode() function.\n\t\t * @param int $x x position in user units\n\t\t * @param int $y y position in user units\n\t\t * @param int $w width in user units\n\t\t * @param int $h height position in user units\n\t\t * @param string $type type of barcode (I25, C128A, C128B, C128C, C39)\n\t\t * @param string $style barcode style\n\t\t * @param string $font font for text\n\t\t * @param int $xres x resolution\n\t\t * @param string $code code to print\n\t\t * @deprecated deprecated since version 3.1.000 (2008-06-10)\n\t\t * @access public\n\t\t * @see write1DBarcode()\n\t\t */\n\t\tpublic function writeBarcode($x, $y, $w, $h, $type, $style, $font, $xres, $code) {\n\t\t\t// convert old settings for the new write1DBarcode() function.\n\t\t\t$xres = 1 / $xres;\n\t\t\t$newstyle = array(\n\t\t\t\t'position' => 'L',\n\t\t\t\t'border' => false,\n\t\t\t\t'padding' => 0,\n\t\t\t\t'fgcolor' => array(0,0,0),\n\t\t\t\t'bgcolor' => false,\n\t\t\t\t'text' => true,\n\t\t\t\t'font' => $font,\n\t\t\t\t'fontsize' => 8,\n\t\t\t\t'stretchtext' => 4\n\t\t\t);\n\t\t\tif ($style & 1) {\n\t\t\t\t$newstyle['border'] = true;\n\t\t\t}\n\t\t\tif ($style & 2) {\n\t\t\t\t$newstyle['bgcolor'] = false;\n\t\t\t}\n\t\t\tif ($style & 4) {\n\t\t\t\t$newstyle['position'] = 'C';\n\t\t\t} elseif ($style & 8) {\n\t\t\t\t$newstyle['position'] = 'L';\n\t\t\t} elseif ($style & 16) {\n\t\t\t\t$newstyle['position'] = 'R';\n\t\t\t}\n\t\t\tif ($style & 128) {\n\t\t\t\t$newstyle['text'] = true;\n\t\t\t}\n\t\t\tif ($style & 256) {\n\t\t\t\t$newstyle['stretchtext'] = 4;\n\t\t\t}\n\t\t\t$this->write1DBarcode($code, $type, $x, $y, $w, $h, $xres, $newstyle, '');\n\t\t}\n\n\t\t/**\n\t \t * Print 2D Barcode.\n\t \t * @param string $code code to print\n\t \t * @param string $type type of barcode (see 2dbarcodes.php for supported formats).\n\t\t * @param int $x x position in user units\n\t\t * @param int $y y position in user units\n\t\t * @param int $w width in user units\n\t\t * @param int $h height in user units\n\t\t * @param array $style array of options:<ul><li>boolean $style['border'] if true prints a border around the barcode</li><li>int $style['padding'] padding to leave around the barcode in user units (set to 'auto' for automatic padding)</li><li>array $style['fgcolor'] color array for bars and text</li><li>mixed $style['bgcolor'] color array for background or false for transparent</li></ul>\n\t\t * @param string $align Indicates the alignment of the pointer next to barcode insertion relative to barcode height. The value can be:<ul><li>T: top-right for LTR or top-left for RTL</li><li>M: middle-right for LTR or middle-left for RTL</li><li>B: bottom-right for LTR or bottom-left for RTL</li><li>N: next line</li></ul>\n\t\t * @author Nicola Asuni\n\t\t * @since 4.5.037 (2009-04-07)\n\t\t * @access public\n\t\t */\n\t\tpublic function write2DBarcode($code, $type, $x='', $y='', $w='', $h='', $style='', $align='') {\n\t\t\tif ($this->empty_string($code)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\trequire_once(dirname(__FILE__).'/2dbarcodes.php');\n\t\t\t// save current graphic settings\n\t\t\t$gvars = $this->getGraphicVars();\n\t\t\t// create new barcode object\n\t\t\t$barcodeobj = new TCPDF2DBarcode($code, $type);\n\t\t\t$arrcode = $barcodeobj->getBarcodeArray();\n\t\t\tif ($arrcode === false) {\n\t\t\t\t$this->Error('Error in 2D barcode string');\n\t\t\t}\n\t\t\t// set default values\n\t\t\tif (!isset($style['fgcolor'])) {\n\t\t\t\t$style['fgcolor'] = array(0,0,0); // default black\n\t\t\t}\n\t\t\tif (!isset($style['bgcolor'])) {\n\t\t\t\t$style['bgcolor'] = false; // default transparent\n\t\t\t}\n\t\t\tif (!isset($style['border'])) {\n\t\t\t\t$style['border'] = false;\n\t\t\t}\n\t\t\t// set foreground color\n\t\t\t$this->SetDrawColorArray($style['fgcolor']);\n\t\t\tif ($this->empty_string($x)) {\n\t\t\t\t$x = $this->GetX();\n\t\t\t}\n\t\t\tif ($this->rtl) {\n\t\t\t\t$x = $this->w - $x;\n\t\t\t}\n\t\t\tif ($this->empty_string($y)) {\n\t\t\t\t$y = $this->GetY();\n\t\t\t}\n\t\t\tif ($this->empty_string($w) OR ($w <= 0)) {\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$w = $x - $this->lMargin;\n\t\t\t\t} else {\n\t\t\t\t\t$w = $this->w - $this->rMargin - $x;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ($this->empty_string($h) OR ($h <= 0)) {\n\t\t\t\t// 2d barcodes are square by default\n\t\t\t\t$h = $w;\n\t\t\t}\n\t\t\t$prev_x = $this->x;\n\t\t\tif ($this->checkPageBreak($h, $y)) {\n\t\t\t\t$y = $this->GetY() + $this->cMargin;\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$x += ($prev_x - $this->x);\n\t\t\t\t} else {\n\t\t\t\t\t$x += ($this->x - $prev_x);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// padding\n\t\t\tif (!isset($style['padding'])) {\n\t\t\t\t$style['padding'] = 0;\n\t\t\t} elseif ($style['padding'] === 'auto') {\n\t\t\t\t$style['padding'] = 4 * $w / (8 + $arrcode['num_cols']);\n\t\t\t}\n\t\t\t// calculate barcode size (excluding padding)\n\t\t\t$bw = $w - (2 * $style['padding']);\n\t\t\t$bh = $h - (2 * $style['padding']);\n\t\t\t// calculate starting coordinates\n\t\t\tif ($this->rtl) {\n\t\t\t\t$xpos = $x - $w;\n\t\t\t} else {\n\t\t\t\t$xpos = $x;\n\t\t\t}\n\t\t\t$xpos += $style['padding'];\n\t\t\t$ypos = $y + $style['padding'];\n\t\t\t// barcode is always printed in LTR direction\n\t\t\t$tempRTL = $this->rtl;\n\t\t\t$this->rtl = false;\n\t\t\t// print background color\n\t\t\tif ($style['bgcolor']) {\n\t\t\t\t$this->Rect($x, $y, $w, $h, $style['border'] ? 'DF' : 'F', '', $style['bgcolor']);\n\t\t\t} elseif ($style['border']) {\n\t\t\t\t$this->Rect($x, $y, $w, $h, 'D');\n\t\t\t}\n\t\t\t// print barcode cells\n\t\t\tif ($arrcode !== false) {\n\t\t\t\t$rows = $arrcode['num_rows'];\n\t\t\t\t$cols = $arrcode['num_cols'];\n\t\t\t\t// calculate dimension of single barcode cell\n\t\t\t\t$cw = $bw / $cols;\n\t\t\t\t$ch = $bh / $rows;\n\t\t\t\t// for each row\n\t\t\t\tfor ($r = 0; $r < $rows; ++$r) {\n\t\t\t\t\t$xr = $xpos;\n\t\t\t\t\t// for each column\n\t\t\t\t\tfor ($c = 0; $c < $cols; ++$c) {\n\t\t\t\t\t\tif ($arrcode['bcode'][$r][$c] == 1) {\n\t\t\t\t\t\t\t// draw a single barcode cell\n\t\t\t\t\t\t\t$this->Rect($xr, $ypos, $cw, $ch, 'F', array(), $style['fgcolor']);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$xr += $cw;\n\t\t\t\t\t}\n\t\t\t\t\t$ypos += $ch;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// restore original direction\n\t\t\t$this->rtl = $tempRTL;\n\t\t\t// restore previous settings\n\t\t\t$this->setGraphicVars($gvars);\n\t\t\t// set bottomcoordinates\n\t\t\t$this->img_rb_y = $y + $h;\n\t\t\tif ($this->rtl) {\n\t\t\t\t// set left side coordinate\n\t\t\t\t$this->img_rb_x = ($this->w - $x - $w);\n\t\t\t} else {\n\t\t\t\t// set right side coordinate\n\t\t\t\t$this->img_rb_x = $x + $w;\n\t\t\t}\n\t\t\t// set pointer to align the successive text/objects\n\t\t\tswitch($align) {\n\t\t\t\tcase 'T':{\n\t\t\t\t\t$this->y = $y;\n\t\t\t\t\t$this->x = $this->img_rb_x;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'M':{\n\t\t\t\t\t$this->y = $y + round($h/2);\n\t\t\t\t\t$this->x = $this->img_rb_x;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'B':{\n\t\t\t\t\t$this->y = $this->img_rb_y;\n\t\t\t\t\t$this->x = $this->img_rb_x;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'N':{\n\t\t\t\t\t$this->SetY($this->img_rb_y);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tdefault:{\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Returns an array containing current margins:\n\t\t * <ul>\n\t\t\t\t<li>$ret['left'] = left  margin</li>\n\t\t\t\t<li>$ret['right'] = right margin</li>\n\t\t\t\t<li>$ret['top'] = top margin</li>\n\t\t\t\t<li>$ret['bottom'] = bottom margin</li>\n\t\t\t\t<li>$ret['header'] = header margin</li>\n\t\t\t\t<li>$ret['footer'] = footer margin</li>\n\t\t\t\t<li>$ret['cell'] = cell margin</li>\n\t\t * </ul>\n\t\t * @return array containing all margins measures\n\t\t * @access public\n\t\t * @since 3.2.000 (2008-06-23)\n\t\t */\n\t\tpublic function getMargins() {\n\t\t\t$ret = array(\n\t\t\t\t'left' => $this->lMargin,\n\t\t\t\t'right' => $this->rMargin,\n\t\t\t\t'top' => $this->tMargin,\n\t\t\t\t'bottom' => $this->bMargin,\n\t\t\t\t'header' => $this->header_margin,\n\t\t\t\t'footer' => $this->footer_margin,\n\t\t\t\t'cell' => $this->cMargin,\n\t\t\t);\n\t\t\treturn $ret;\n\t\t}\n\n\t\t/**\n\t\t * Returns an array containing original margins:\n\t\t * <ul>\n\t\t\t\t<li>$ret['left'] = left  margin</li>\n\t\t\t\t<li>$ret['right'] = right margin</li>\n\t\t * </ul>\n\t\t * @return array containing all margins measures\n\t\t * @access public\n\t\t * @since 4.0.012 (2008-07-24)\n\t\t */\n\t\tpublic function getOriginalMargins() {\n\t\t\t$ret = array(\n\t\t\t\t'left' => $this->original_lMargin,\n\t\t\t\t'right' => $this->original_rMargin\n\t\t\t);\n\t\t\treturn $ret;\n\t\t}\n\n\t\t/**\n\t\t * Returns the current font size.\n\t\t * @return current font size\n\t\t * @access public\n\t\t * @since 3.2.000 (2008-06-23)\n\t\t */\n\t\tpublic function getFontSize() {\n\t\t\treturn $this->FontSize;\n\t\t}\n\n\t\t/**\n\t\t * Returns the current font size in points unit.\n\t\t * @return current font size in points unit\n\t\t * @access public\n\t\t * @since 3.2.000 (2008-06-23)\n\t\t */\n\t\tpublic function getFontSizePt() {\n\t\t\treturn $this->FontSizePt;\n\t\t}\n\n\t\t/**\n\t\t * Returns the current font family name.\n\t\t * @return string current font family name\n\t\t * @access public\n\t\t * @since 4.3.008 (2008-12-05)\n\t\t */\n\t\tpublic function getFontFamily() {\n\t\t\treturn $this->FontFamily;\n\t\t}\n\n\t\t/**\n\t\t * Returns the current font style.\n\t\t * @return string current font style\n\t\t * @access public\n\t\t * @since 4.3.008 (2008-12-05)\n\t\t */\n\t\tpublic function getFontStyle() {\n\t\t\treturn $this->FontStyle;\n\t\t}\n\n\t\t/**\n\t\t * Prints a cell (rectangular area) with optional borders, background color and html text string.\n\t\t * The upper-left corner of the cell corresponds to the current position. After the call, the current position moves to the right or to the next line.<br />\n\t\t * If automatic page breaking is enabled and the cell goes beyond the limit, a page break is done before outputting.\n\t\t * @param float $w Cell width. If 0, the cell extends up to the right margin.\n\t\t * @param float $h Cell minimum height. The cell extends automatically if needed.\n\t\t * @param float $x upper-left corner X coordinate\n\t\t * @param float $y upper-left corner Y coordinate\n\t\t * @param string $html html text to print. Default value: empty string.\n\t\t * @param mixed $border Indicates if borders must be drawn around the cell. The value can be either a number:<ul><li>0: no border (default)</li><li>1: frame</li></ul>or a string containing some or all of the following characters (in any order):<ul><li>L: left</li><li>T: top</li><li>R: right</li><li>B: bottom</li></ul>\n\t\t * @param int $ln Indicates where the current position should go after the call. Possible values are:<ul><li>0: to the right (or left for RTL language)</li><li>1: to the beginning of the next line</li><li>2: below</li></ul>\n\tPutting 1 is equivalent to putting 0 and calling Ln() just after. Default value: 0.\n\t\t * @param int $fill Indicates if the cell background must be painted (1) or transparent (0). Default value: 0.\n\t\t * @param boolean $reseth if true reset the last cell height (default true).\n\t\t * @param string $align Allows to center or align the text. Possible values are:<ul><li>L : left align</li><li>C : center</li><li>R : right align</li><li>'' : empty string : left for LTR or right for RTL</li></ul>\n\t\t * @param boolean $autopadding if true, uses internal padding and automatically adjust it to account for line width.\n\t\t * @access public\n\t\t * @uses MultiCell()\n\t\t * @see Multicell(), writeHTML()\n\t\t */\n\t\tpublic function writeHTMLCell($w, $h, $x, $y, $html='', $border=0, $ln=0, $fill=0, $reseth=true, $align='', $autopadding=true) {\n\t\t\treturn $this->MultiCell($w, $h, $html, $border, $align, $fill, $ln, $x, $y, $reseth, 0, true, $autopadding, 0);\n\t\t}\n\n\t\t/**\n\t \t * Returns the HTML DOM array.\n\t \t * <ul><li>$dom[$key]['tag'] = true if tag, false otherwise;</li><li>$dom[$key]['value'] = tag name or text;</li><li>$dom[$key]['opening'] = true if opening tag, false otherwise;</li><li>$dom[$key]['attribute'] = array of attributes (attribute name is the key);</li><li>$dom[$key]['style'] = array of style attributes (attribute name is the key);</li><li>$dom[$key]['parent'] = id of parent element;</li><li>$dom[$key]['fontname'] = font family name;</li><li>$dom[$key]['fontstyle'] = font style;</li><li>$dom[$key]['fontsize'] = font size in points;</li><li>$dom[$key]['bgcolor'] = RGB array of background color;</li><li>$dom[$key]['fgcolor'] = RGB array of foreground color;</li><li>$dom[$key]['width'] = width in pixels;</li><li>$dom[$key]['height'] = height in pixels;</li><li>$dom[$key]['align'] = text alignment;</li><li>$dom[$key]['cols'] = number of colums in table;</li><li>$dom[$key]['rows'] = number of rows in table;</li></ul>\n\t\t * @param string $html html code\n\t\t * @return array\n\t\t * @access protected\n\t\t * @since 3.2.000 (2008-06-20)\n\t\t */\n\t\tprotected function getHtmlDomArray($html) {\n\t\t\t// define block tags\n\t\t\t$blocktags = array('blockquote','br','dd','dl','div','dt','h1','h2','h3','h4','h5','h6','hr','li','ol','p','pre','ul','tcpdf','table','tr','td');\n\t\t\t// remove all unsupported tags (the line below lists all supported tags)\n\t\t\t$html = strip_tags($html, '<marker/><a><b><blockquote><body><br><br/><dd><del><div><dl><dt><em><font><form><h1><h2><h3><h4><h5><h6><hr><i><img><input><label><li><ol><option><p><pre><select><small><span><strong><sub><sup><table><tablehead><tcpdf><td><textarea><th><thead><tr><tt><u><ul>');\n\t\t\t//replace some blank characters\n\t\t\t$html = preg_replace('/<pre/', '<xre', $html); // preserve pre tag\n\t\t\t$html = preg_replace('/<(table|tr|td|th|tcpdf|blockquote|dd|div|dl|dt|form|h1|h2|h3|h4|h5|h6|br|hr|li|ol|ul|p)([^\\>]*)>[\\n\\r\\t]+/', '<\\\\1\\\\2>', $html);\n\t\t\t$html = preg_replace('@(\\r\\n|\\r)@', \"\\n\", $html);\n\t\t\t$repTable = array(\"\\t\" => ' ', \"\\0\" => ' ', \"\\x0B\" => ' ', \"\\\\\" => \"\\\\\\\\\");\n\t\t\t$html = strtr($html, $repTable);\n\t\t\t$offset = 0;\n\t\t\twhile (($offset < strlen($html)) AND ($pos = strpos($html, '</pre>', $offset)) !== false) {\n\t\t\t\t$html_a = substr($html, 0, $offset);\n\t\t\t\t$html_b = substr($html, $offset, ($pos - $offset + 6));\n\t\t\t\twhile (preg_match(\"'<xre([^\\>]*)>(.*?)\\n(.*?)</pre>'si\", $html_b)) {\n\t\t\t\t\t// preserve newlines on <pre> tag\n\t\t\t\t\t$html_b = preg_replace(\"'<xre([^\\>]*)>(.*?)\\n(.*?)</pre>'si\", \"<xre\\\\1>\\\\2<br />\\\\3</pre>\", $html_b);\n\t\t\t\t}\n\t\t\t\t$html = $html_a.$html_b.substr($html, $pos + 6);\n\t\t\t\t$offset = strlen($html_a.$html_b);\n\t\t\t}\n\t\t\t$offset = 0;\n\t\t\twhile (($offset < strlen($html)) AND ($pos = strpos($html, '</textarea>', $offset)) !== false) {\n\t\t\t\t$html_a = substr($html, 0, $offset);\n\t\t\t\t$html_b = substr($html, $offset, ($pos - $offset + 11));\n\t\t\t\twhile (preg_match(\"'<textarea([^\\>]*)>(.*?)\\n(.*?)</textarea>'si\", $html_b)) {\n\t\t\t\t\t// preserve newlines on <textarea> tag\n\t\t\t\t\t$html_b = preg_replace(\"'<textarea([^\\>]*)>(.*?)\\n(.*?)</textarea>'si\", \"<textarea\\\\1>\\\\2<TBR>\\\\3</textarea>\", $html_b);\n\t\t\t\t\t$html_b = preg_replace(\"'<textarea([^\\>]*)>(.*?)[\\\"](.*?)</textarea>'si\", \"<textarea\\\\1>\\\\2''\\\\3</textarea>\", $html_b);\n\t\t\t\t}\n\t\t\t\t$html = $html_a.$html_b.substr($html, $pos + 11);\n\t\t\t\t$offset = strlen($html_a.$html_b);\n\t\t\t}\n\t\t\t$html = preg_replace(\"'([\\s]*)<option'si\", \"<option\", $html);\n\t\t\t$html = preg_replace(\"'</option>([\\s]*)'si\", \"</option>\", $html);\n\t\t\t$offset = 0;\n\t\t\twhile (($offset < strlen($html)) AND ($pos = strpos($html, '</option>', $offset)) !== false) {\n\t\t\t\t$html_a = substr($html, 0, $offset);\n\t\t\t\t$html_b = substr($html, $offset, ($pos - $offset + 9));\n\t\t\t\twhile (preg_match(\"'<option([^\\>]*)>(.*?)</option>'si\", $html_b)) {\n\t\t\t\t\t$html_b = preg_replace(\"'<option([\\s]+)value=\\\"([^\\\"]*)\\\"([^\\>]*)>(.*?)</option>'si\", \"\\\\2\\t\\\\4\\r\", $html_b);\n\t\t\t\t\t$html_b = preg_replace(\"'<option([^\\>]*)>(.*?)</option>'si\", \"\\\\2\\r\", $html_b);\n\t\t\t\t}\n\t\t\t\t$html = $html_a.$html_b.substr($html, $pos + 9);\n\t\t\t\t$offset = strlen($html_a.$html_b);\n\t\t\t}\n\t\t\t$html = preg_replace(\"'<select([^\\>]*)>'si\", \"<select\\\\1 opt=\\\"\", $html);\n\t\t\t$html = preg_replace(\"'([\\s]+)</select>'si\", \"\\\" />\", $html);\n\t\t\t$html = str_replace(\"\\n\", ' ', $html);\n\t\t\t// restore textarea newlines\n\t\t\t$html = str_replace('<TBR>', \"\\n\", $html);\n\t\t\t// remove extra spaces from code\n\t\t\t$html = preg_replace('/[\\s]+<\\/(table|tr|td|th|ul|ol|li|dl|dt|dd)>/', '</\\\\1>', $html);\n\t\t\t$html = preg_replace('/[\\s]+<(tr|td|th|ul|ol|li|dl|dt|dd|br)/', '<\\\\1', $html);\n\t\t\t$html = preg_replace('/<\\/(table|tr|td|th|blockquote|dd|dt|dl|div|dt|h1|h2|h3|h4|h5|h6|hr|li|ol|ul|p)>[\\s]+</', '</\\\\1><', $html);\n\t\t\t$html = preg_replace('/<\\/(td|th)>/', '<marker style=\"font-size:0\"/></\\\\1>', $html);\n\t\t\t$html = preg_replace('/<\\/table>([\\s]*)<marker style=\"font-size:0\"\\/>/', '</table>', $html);\n\t\t\t$html = preg_replace('/[\\s]*<img/', ' <img', $html);\n\t\t\t$html = preg_replace('/<img([^\\>]*)>/xi', '<img\\\\1><span><marker style=\"font-size:0\"/></span>', $html);\n\t\t\t$html = preg_replace('/<xre/', '<pre', $html); // restore pre tag\n\t\t\t$html = preg_replace('/<textarea([^\\>]*)>/xi', '<textarea\\\\1 value=\"', $html);\n\t\t\t$html = preg_replace('/<\\/textarea>/', '\" />', $html);\n\t\t\t// trim string\n\t\t\t$html = preg_replace('/^[\\s]+/', '', $html);\n\t\t\t$html = preg_replace('/[\\s]+$/', '', $html);\n\t\t\t// pattern for generic tag\n\t\t\t$tagpattern = '/(<[^>]+>)/';\n\t\t\t// explodes the string\n\t\t\t$a = preg_split($tagpattern, $html, -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY);\n\t\t\t// count elements\n\t\t\t$maxel = count($a);\n\t\t\t$elkey = 0;\n\t\t\t$key = 0;\n\t\t\t// create an array of elements\n\t\t\t$dom = array();\n\t\t\t$dom[$key] = array();\n\t\t\t// set first void element\n\t\t\t$dom[$key]['tag'] = false;\n\t\t\t$dom[$key]['block'] = false;\n\t\t\t$dom[$key]['value'] = '';\n\t\t\t$dom[$key]['parent'] = 0;\n\t\t\t$dom[$key]['fontname'] = $this->FontFamily;\n\t\t\t$dom[$key]['fontstyle'] = $this->FontStyle;\n\t\t\t$dom[$key]['fontsize'] = $this->FontSizePt;\n\t\t\t$dom[$key]['stroke'] = $this->textstrokewidth;\n\t\t\t$dom[$key]['fill'] = (($this->textrendermode % 2) == 0);\n\t\t\t$dom[$key]['clip'] = ($this->textrendermode > 3);\n\t\t\t$dom[$key]['line-height'] = $this->cell_height_ratio;\n\t\t\t$dom[$key]['bgcolor'] = false;\n\t\t\t$dom[$key]['fgcolor'] = $this->fgcolor;\n\t\t\t$dom[$key]['strokecolor'] = $this->strokecolor;\n\t\t\t$dom[$key]['align'] = '';\n\t\t\t$dom[$key]['listtype'] = '';\n\t\t\t$dom[$key]['text-indent'] = 0;\n\t\t\t$thead = false; // true when we are inside the THEAD tag\n\t\t\t++$key;\n\t\t\t$level = array();\n\t\t\tarray_push($level, 0); // root\n\t\t\twhile ($elkey < $maxel) {\n\t\t\t\t$dom[$key] = array();\n\t\t\t\t$element = $a[$elkey];\n\t\t\t\t$dom[$key]['elkey'] = $elkey;\n\t\t\t\tif (preg_match($tagpattern, $element)) {\n\t\t\t\t\t// html tag\n\t\t\t\t\t$element = substr($element, 1, -1);\n\t\t\t\t\t// get tag name\n\t\t\t\t\tpreg_match('/[\\/]?([a-zA-Z0-9]*)/', $element, $tag);\n\t\t\t\t\t$tagname = strtolower($tag[1]);\n\t\t\t\t\t// check if we are inside a table header\n\t\t\t\t\tif ($tagname == 'thead') {\n\t\t\t\t\t\tif ($element{0} == '/') {\n\t\t\t\t\t\t\t$thead = false;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$thead = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t++$elkey;\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\t\t\t\t\t$dom[$key]['tag'] = true;\n\t\t\t\t\t$dom[$key]['value'] = $tagname;\n\t\t\t\t\tif (in_array($dom[$key]['value'], $blocktags)) {\n\t\t\t\t\t\t$dom[$key]['block'] = true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$dom[$key]['block'] = false;\n\t\t\t\t\t}\n\t\t\t\t\tif ($element{0} == '/') {\n\t\t\t\t\t\t// *** closing html tag\n\t\t\t\t\t\t$dom[$key]['opening'] = false;\n\t\t\t\t\t\t$dom[$key]['parent'] = end($level);\n\t\t\t\t\t\tarray_pop($level);\n\t\t\t\t\t\t$dom[$key]['fontname'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['fontname'];\n\t\t\t\t\t\t$dom[$key]['fontstyle'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['fontstyle'];\n\t\t\t\t\t\t$dom[$key]['fontsize'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['fontsize'];\n\t\t\t\t\t\t$dom[$key]['stroke'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['stroke'];\n\t\t\t\t\t\t$dom[$key]['fill'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['fill'];\n\t\t\t\t\t\t$dom[$key]['clip'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['clip'];\n\t\t\t\t\t\t$dom[$key]['line-height'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['line-height'];\n\t\t\t\t\t\t$dom[$key]['bgcolor'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['bgcolor'];\n\t\t\t\t\t\t$dom[$key]['fgcolor'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['fgcolor'];\n\t\t\t\t\t\t$dom[$key]['strokecolor'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['strokecolor'];\n\t\t\t\t\t\t$dom[$key]['align'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['align'];\n\t\t\t\t\t\tif (isset($dom[($dom[($dom[$key]['parent'])]['parent'])]['listtype'])) {\n\t\t\t\t\t\t\t$dom[$key]['listtype'] = $dom[($dom[($dom[$key]['parent'])]['parent'])]['listtype'];\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// set the number of columns in table tag\n\t\t\t\t\t\tif (($dom[$key]['value'] == 'tr') AND (!isset($dom[($dom[($dom[$key]['parent'])]['parent'])]['cols']))) {\n\t\t\t\t\t\t\t$dom[($dom[($dom[$key]['parent'])]['parent'])]['cols'] = $dom[($dom[$key]['parent'])]['cols'];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (($dom[$key]['value'] == 'td') OR ($dom[$key]['value'] == 'th')) {\n\t\t\t\t\t\t\t$dom[($dom[$key]['parent'])]['content'] = '';\n\t\t\t\t\t\t\tfor ($i = ($dom[$key]['parent'] + 1); $i < $key; ++$i) {\n\t\t\t\t\t\t\t\t$dom[($dom[$key]['parent'])]['content'] .= $a[$dom[$i]['elkey']];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$key = $i;\n\t\t\t\t\t\t\t// mark nested tables\n\t\t\t\t\t\t\t$dom[($dom[$key]['parent'])]['content'] = str_replace('<table', '<table nested=\"true\"', $dom[($dom[$key]['parent'])]['content']);\n\t\t\t\t\t\t\t// remove thead sections from nested tables\n\t\t\t\t\t\t\t$dom[($dom[$key]['parent'])]['content'] = str_replace('<thead>', '', $dom[($dom[$key]['parent'])]['content']);\n\t\t\t\t\t\t\t$dom[($dom[$key]['parent'])]['content'] = str_replace('</thead>', '', $dom[($dom[$key]['parent'])]['content']);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// store header rows on a new table\n\t\t\t\t\t\tif (($dom[$key]['value'] == 'tr') AND ($dom[($dom[$key]['parent'])]['thead'] === true)) {\n\t\t\t\t\t\t\tif ($this->empty_string($dom[($dom[($dom[$key]['parent'])]['parent'])]['thead'])) {\n\t\t\t\t\t\t\t\t$dom[($dom[($dom[$key]['parent'])]['parent'])]['thead'] = $a[$dom[($dom[($dom[$key]['parent'])]['parent'])]['elkey']];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tfor ($i = $dom[$key]['parent']; $i <= $key; ++$i) {\n\t\t\t\t\t\t\t\t$dom[($dom[($dom[$key]['parent'])]['parent'])]['thead'] .= $a[$dom[$i]['elkey']];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (!isset($dom[($dom[$key]['parent'])]['attribute'])) {\n\t\t\t\t\t\t\t\t$dom[($dom[$key]['parent'])]['attribute'] = array();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// header elements must be always contained in a single page\n\t\t\t\t\t\t\t$dom[($dom[$key]['parent'])]['attribute']['nobr'] = 'true';\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (($dom[$key]['value'] == 'table') AND (!$this->empty_string($dom[($dom[$key]['parent'])]['thead']))) {\n\t\t\t\t\t\t\t// remove the nobr attributes from the table header\n\t\t\t\t\t\t\t$dom[($dom[$key]['parent'])]['thead'] = str_replace(' nobr=\"true\"', '', $dom[($dom[$key]['parent'])]['thead']);\n\t\t\t\t\t\t\t$dom[($dom[$key]['parent'])]['thead'] .= '</tablehead>';\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// *** opening html tag\n\t\t\t\t\t\t$dom[$key]['opening'] = true;\n\t\t\t\t\t\t$dom[$key]['parent'] = end($level);\n\t\t\t\t\t\tif (substr($element, -1, 1) != '/') {\n\t\t\t\t\t\t\t// not self-closing tag\n\t\t\t\t\t\t\tarray_push($level, $key);\n\t\t\t\t\t\t\t$dom[$key]['self'] = false;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$dom[$key]['self'] = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// copy some values from parent\n\t\t\t\t\t\t$parentkey = 0;\n\t\t\t\t\t\tif ($key > 0) {\n\t\t\t\t\t\t\t$parentkey = $dom[$key]['parent'];\n\t\t\t\t\t\t\t$dom[$key]['fontname'] = $dom[$parentkey]['fontname'];\n\t\t\t\t\t\t\t$dom[$key]['fontstyle'] = $dom[$parentkey]['fontstyle'];\n\t\t\t\t\t\t\t$dom[$key]['fontsize'] = $dom[$parentkey]['fontsize'];\n\t\t\t\t\t\t\t$dom[$key]['stroke'] = $dom[$parentkey]['stroke'];\n\t\t\t\t\t\t\t$dom[$key]['fill'] = $dom[$parentkey]['fill'];\n\t\t\t\t\t\t\t$dom[$key]['clip'] = $dom[$parentkey]['clip'];\n\t\t\t\t\t\t\t$dom[$key]['line-height'] = $dom[$parentkey]['line-height'];\n\t\t\t\t\t\t\t$dom[$key]['bgcolor'] = $dom[$parentkey]['bgcolor'];\n\t\t\t\t\t\t\t$dom[$key]['fgcolor'] = $dom[$parentkey]['fgcolor'];\n\t\t\t\t\t\t\t$dom[$key]['strokecolor'] = $dom[$parentkey]['strokecolor'];\n\t\t\t\t\t\t\t$dom[$key]['align'] = $dom[$parentkey]['align'];\n\t\t\t\t\t\t\t$dom[$key]['listtype'] = $dom[$parentkey]['listtype'];\n\t\t\t\t\t\t\t$dom[$key]['text-indent'] = $dom[$parentkey]['text-indent'];\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// get attributes\n\t\t\t\t\t\tpreg_match_all('/([^=\\s]*)=[\"]?([^\"]*)[\"]?/', $element, $attr_array, PREG_PATTERN_ORDER);\n\t\t\t\t\t\t$dom[$key]['attribute'] = array(); // reset attribute array\n\t\t\t\t\t\twhile (list($id, $name) = each($attr_array[1])) {\n\t\t\t\t\t\t\t$dom[$key]['attribute'][strtolower($name)] = $attr_array[2][$id];\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// split style attributes\n\t\t\t\t\t\tif (isset($dom[$key]['attribute']['style'])) {\n\t\t\t\t\t\t\t// get style attributes\n\t\t\t\t\t\t\tpreg_match_all('/([^;:\\s]*):([^;]*)/', $dom[$key]['attribute']['style'], $style_array, PREG_PATTERN_ORDER);\n\t\t\t\t\t\t\t$dom[$key]['style'] = array(); // reset style attribute array\n\t\t\t\t\t\t\twhile (list($id, $name) = each($style_array[1])) {\n\t\t\t\t\t\t\t\t$dom[$key]['style'][strtolower($name)] = trim($style_array[2][$id]);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// --- get some style attributes ---\n\t\t\t\t\t\t\tif (isset($dom[$key]['style']['font-family'])) {\n\t\t\t\t\t\t\t\t// font family\n\t\t\t\t\t\t\t\tif (isset($dom[$key]['style']['font-family'])) {\n\t\t\t\t\t\t\t\t\t$fontslist = preg_split('/[,]/', strtolower($dom[$key]['style']['font-family']));\n\t\t\t\t\t\t\t\t\tforeach ($fontslist as $font) {\n\t\t\t\t\t\t\t\t\t\t$font = trim(strtolower($font));\n\t\t\t\t\t\t\t\t\t\tif (in_array($font, $this->fontlist) OR in_array($font, $this->fontkeys)) {\n\t\t\t\t\t\t\t\t\t\t\t$dom[$key]['fontname'] = $font;\n\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// list-style-type\n\t\t\t\t\t\t\tif (isset($dom[$key]['style']['list-style-type'])) {\n\t\t\t\t\t\t\t\t$dom[$key]['listtype'] = trim(strtolower($dom[$key]['style']['list-style-type']));\n\t\t\t\t\t\t\t\tif ($dom[$key]['listtype'] == 'inherit') {\n\t\t\t\t\t\t\t\t\t$dom[$key]['listtype'] = $dom[$parentkey]['listtype'];\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// text-indent\n\t\t\t\t\t\t\tif (isset($dom[$key]['style']['text-indent'])) {\n\t\t\t\t\t\t\t\t$dom[$key]['text-indent'] = $this->getHTMLUnitToUnits($dom[$key]['style']['text-indent']);\n\t\t\t\t\t\t\t\tif ($dom[$key]['text-indent'] == 'inherit') {\n\t\t\t\t\t\t\t\t\t$dom[$key]['text-indent'] = $dom[$parentkey]['text-indent'];\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// font size\n\t\t\t\t\t\t\tif (isset($dom[$key]['style']['font-size'])) {\n\t\t\t\t\t\t\t\t$fsize = trim($dom[$key]['style']['font-size']);\n\t\t\t\t\t\t\t\tswitch ($fsize) {\n\t\t\t\t\t\t\t\t\t// absolute-size\n\t\t\t\t\t\t\t\t\tcase 'xx-small': {\n\t\t\t\t\t\t\t\t\t\t$dom[$key]['fontsize'] = $dom[0]['fontsize'] - 4;\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tcase 'x-small': {\n\t\t\t\t\t\t\t\t\t\t$dom[$key]['fontsize'] = $dom[0]['fontsize'] - 3;\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tcase 'small': {\n\t\t\t\t\t\t\t\t\t\t$dom[$key]['fontsize'] = $dom[0]['fontsize'] - 2;\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tcase 'medium': {\n\t\t\t\t\t\t\t\t\t\t$dom[$key]['fontsize'] = $dom[0]['fontsize'];\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tcase 'large': {\n\t\t\t\t\t\t\t\t\t\t$dom[$key]['fontsize'] = $dom[0]['fontsize'] + 2;\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tcase 'x-large': {\n\t\t\t\t\t\t\t\t\t\t$dom[$key]['fontsize'] = $dom[0]['fontsize'] + 4;\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tcase 'xx-large': {\n\t\t\t\t\t\t\t\t\t\t$dom[$key]['fontsize'] = $dom[0]['fontsize'] + 6;\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t// relative-size\n\t\t\t\t\t\t\t\t\tcase 'smaller': {\n\t\t\t\t\t\t\t\t\t\t$dom[$key]['fontsize'] = $dom[$parentkey]['fontsize'] - 3;\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tcase 'larger': {\n\t\t\t\t\t\t\t\t\t\t$dom[$key]['fontsize'] = $dom[$parentkey]['fontsize'] + 3;\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tdefault: {\n\t\t\t\t\t\t\t\t\t\t$dom[$key]['fontsize'] = $this->getHTMLUnitToUnits($fsize, $dom[$parentkey]['fontsize'], 'pt', true);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// line-height\n\t\t\t\t\t\t\tif (isset($dom[$key]['style']['line-height'])) {\n\t\t\t\t\t\t\t\t$lineheight = trim($dom[$key]['style']['line-height']);\n\t\t\t\t\t\t\t\tswitch ($lineheight) {\n\t\t\t\t\t\t\t\t\t// A normal line height. This is default\n\t\t\t\t\t\t\t\t\tcase 'normal': {\n\t\t\t\t\t\t\t\t\t\t$dom[$key]['line-height'] = $dom[0]['line-height'];\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tdefault: {\n\t\t\t\t\t\t\t\t\t\tif (is_numeric($lineheight)) {\n\t\t\t\t\t\t\t\t\t\t\t$lineheight = $lineheight * 100;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t$dom[$key]['line-height'] = $this->getHTMLUnitToUnits($lineheight, 1, '%', true);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// font style\n\t\t\t\t\t\t\tif (isset($dom[$key]['style']['font-weight']) AND (strtolower($dom[$key]['style']['font-weight']{0}) == 'b')) {\n\t\t\t\t\t\t\t\t$dom[$key]['fontstyle'] .= 'B';\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (isset($dom[$key]['style']['font-style']) AND (strtolower($dom[$key]['style']['font-style']{0}) == 'i')) {\n\t\t\t\t\t\t\t\t$dom[$key]['fontstyle'] .= 'I';\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// font color\n\t\t\t\t\t\t\tif (isset($dom[$key]['style']['color']) AND (!$this->empty_string($dom[$key]['style']['color']))) {\n\t\t\t\t\t\t\t\t$dom[$key]['fgcolor'] = $this->convertHTMLColorToDec($dom[$key]['style']['color']);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// background color\n\t\t\t\t\t\t\tif (isset($dom[$key]['style']['background-color']) AND (!$this->empty_string($dom[$key]['style']['background-color']))) {\n\t\t\t\t\t\t\t\t$dom[$key]['bgcolor'] = $this->convertHTMLColorToDec($dom[$key]['style']['background-color']);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// text-decoration\n\t\t\t\t\t\t\tif (isset($dom[$key]['style']['text-decoration'])) {\n\t\t\t\t\t\t\t\t$decors = explode(' ', strtolower($dom[$key]['style']['text-decoration']));\n\t\t\t\t\t\t\t\tforeach ($decors as $dec) {\n\t\t\t\t\t\t\t\t\t$dec = trim($dec);\n\t\t\t\t\t\t\t\t\tif (!$this->empty_string($dec)) {\n\t\t\t\t\t\t\t\t\t\tif ($dec{0} == 'u') {\n\t\t\t\t\t\t\t\t\t\t\t// underline\n\t\t\t\t\t\t\t\t\t\t\t$dom[$key]['fontstyle'] .= 'U';\n\t\t\t\t\t\t\t\t\t\t} elseif ($dec{0} == 'l') {\n\t\t\t\t\t\t\t\t\t\t\t// line-trough\n\t\t\t\t\t\t\t\t\t\t\t$dom[$key]['fontstyle'] .= 'D';\n\t\t\t\t\t\t\t\t\t\t} elseif ($dec{0} == 'o') {\n\t\t\t\t\t\t\t\t\t\t\t// overline\n\t\t\t\t\t\t\t\t\t\t\t$dom[$key]['fontstyle'] .= 'O';\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// check for width attribute\n\t\t\t\t\t\t\tif (isset($dom[$key]['style']['width'])) {\n\t\t\t\t\t\t\t\t$dom[$key]['width'] = $dom[$key]['style']['width'];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// check for height attribute\n\t\t\t\t\t\t\tif (isset($dom[$key]['style']['height'])) {\n\t\t\t\t\t\t\t\t$dom[$key]['height'] = $dom[$key]['style']['height'];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// check for text alignment\n\t\t\t\t\t\t\tif (isset($dom[$key]['style']['text-align'])) {\n\t\t\t\t\t\t\t\t$dom[$key]['align'] = strtoupper($dom[$key]['style']['text-align']{0});\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// check for border attribute\n\t\t\t\t\t\t\tif (isset($dom[$key]['style']['border'])) {\n\t\t\t\t\t\t\t\t$dom[$key]['attribute']['border'] = $dom[$key]['style']['border'];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// page-break-inside\n\t\t\t\t\t\t\tif (isset($dom[$key]['style']['page-break-inside']) AND ($dom[$key]['style']['page-break-inside'] == 'avoid')) {\n\t\t\t\t\t\t\t\t$dom[$key]['attribute']['nobr'] = 'true';\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// page-break-before\n\t\t\t\t\t\t\tif (isset($dom[$key]['style']['page-break-before'])) {\n\t\t\t\t\t\t\t\tif ($dom[$key]['style']['page-break-before'] == 'always') {\n\t\t\t\t\t\t\t\t\t$dom[$key]['attribute']['pagebreak'] = 'true';\n\t\t\t\t\t\t\t\t} elseif ($dom[$key]['style']['page-break-before'] == 'left') {\n\t\t\t\t\t\t\t\t\t$dom[$key]['attribute']['pagebreak'] = 'left';\n\t\t\t\t\t\t\t\t} elseif ($dom[$key]['style']['page-break-before'] == 'right') {\n\t\t\t\t\t\t\t\t\t$dom[$key]['attribute']['pagebreak'] = 'right';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// page-break-after\n\t\t\t\t\t\t\tif (isset($dom[$key]['style']['page-break-after'])) {\n\t\t\t\t\t\t\t\tif ($dom[$key]['style']['page-break-after'] == 'always') {\n\t\t\t\t\t\t\t\t\t$dom[$key]['attribute']['pagebreakafter'] = 'true';\n\t\t\t\t\t\t\t\t} elseif ($dom[$key]['style']['page-break-after'] == 'left') {\n\t\t\t\t\t\t\t\t\t$dom[$key]['attribute']['pagebreakafter'] = 'left';\n\t\t\t\t\t\t\t\t} elseif ($dom[$key]['style']['page-break-after'] == 'right') {\n\t\t\t\t\t\t\t\t\t$dom[$key]['attribute']['pagebreakafter'] = 'right';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// check for font tag\n\t\t\t\t\t\tif ($dom[$key]['value'] == 'font') {\n\t\t\t\t\t\t\t// font family\n\t\t\t\t\t\t\tif (isset($dom[$key]['attribute']['face'])) {\n\t\t\t\t\t\t\t\t$fontslist = preg_split('/[,]/', strtolower($dom[$key]['attribute']['face']));\n\t\t\t\t\t\t\t\tforeach ($fontslist as $font) {\n\t\t\t\t\t\t\t\t\t$font = trim(strtolower($font));\n\t\t\t\t\t\t\t\t\tif (in_array($font, $this->fontlist) OR in_array($font, $this->fontkeys)) {\n\t\t\t\t\t\t\t\t\t\t$dom[$key]['fontname'] = $font;\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// font size\n\t\t\t\t\t\t\tif (isset($dom[$key]['attribute']['size'])) {\n\t\t\t\t\t\t\t\tif ($key > 0) {\n\t\t\t\t\t\t\t\t\tif ($dom[$key]['attribute']['size']{0} == '+') {\n\t\t\t\t\t\t\t\t\t\t$dom[$key]['fontsize'] = $dom[($dom[$key]['parent'])]['fontsize'] + intval(substr($dom[$key]['attribute']['size'], 1));\n\t\t\t\t\t\t\t\t\t} elseif ($dom[$key]['attribute']['size']{0} == '-') {\n\t\t\t\t\t\t\t\t\t\t$dom[$key]['fontsize'] = $dom[($dom[$key]['parent'])]['fontsize'] - intval(substr($dom[$key]['attribute']['size'], 1));\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t$dom[$key]['fontsize'] = intval($dom[$key]['attribute']['size']);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t$dom[$key]['fontsize'] = intval($dom[$key]['attribute']['size']);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// force natural alignment for lists\n\t\t\t\t\t\tif ((($dom[$key]['value'] == 'ul') OR ($dom[$key]['value'] == 'ol') OR ($dom[$key]['value'] == 'dl'))\n\t\t\t\t\t\t\tAND (!isset($dom[$key]['align']) OR $this->empty_string($dom[$key]['align']) OR ($dom[$key]['align'] != 'J'))) {\n\t\t\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t\t\t$dom[$key]['align'] = 'R';\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$dom[$key]['align'] = 'L';\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (($dom[$key]['value'] == 'small') OR ($dom[$key]['value'] == 'sup') OR ($dom[$key]['value'] == 'sub')) {\n\t\t\t\t\t\t\t$dom[$key]['fontsize'] = $dom[$key]['fontsize'] * K_SMALL_RATIO;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (($dom[$key]['value'] == 'strong') OR ($dom[$key]['value'] == 'b')) {\n\t\t\t\t\t\t\t$dom[$key]['fontstyle'] .= 'B';\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (($dom[$key]['value'] == 'em') OR ($dom[$key]['value'] == 'i')) {\n\t\t\t\t\t\t\t$dom[$key]['fontstyle'] .= 'I';\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ($dom[$key]['value'] == 'u') {\n\t\t\t\t\t\t\t$dom[$key]['fontstyle'] .= 'U';\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ($dom[$key]['value'] == 'del') {\n\t\t\t\t\t\t\t$dom[$key]['fontstyle'] .= 'D';\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (($dom[$key]['value'] == 'pre') OR ($dom[$key]['value'] == 'tt')) {\n\t\t\t\t\t\t\t$dom[$key]['fontname'] = $this->default_monospaced_font;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (($dom[$key]['value']{0} == 'h') AND (intval($dom[$key]['value']{1}) > 0) AND (intval($dom[$key]['value']{1}) < 7)) {\n\t\t\t\t\t\t\t$headsize = (4 - intval($dom[$key]['value']{1})) * 2;\n\t\t\t\t\t\t\t$dom[$key]['fontsize'] = $dom[0]['fontsize'] + $headsize;\n\t\t\t\t\t\t\t$dom[$key]['fontstyle'] .= 'B';\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (($dom[$key]['value'] == 'table')) {\n\t\t\t\t\t\t\t$dom[$key]['rows'] = 0; // number of rows\n\t\t\t\t\t\t\t$dom[$key]['trids'] = array(); // IDs of TR elements\n\t\t\t\t\t\t\t$dom[$key]['thead'] = ''; // table header rows\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (($dom[$key]['value'] == 'tr')) {\n\t\t\t\t\t\t\t$dom[$key]['cols'] = 0;\n\t\t\t\t\t\t\tif ($thead) {\n\t\t\t\t\t\t\t\t$dom[$key]['thead'] = true;\n\t\t\t\t\t\t\t\t// rows on thead block are printed as a separate table\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$dom[$key]['thead'] = false;\n\t\t\t\t\t\t\t\t// store the number of rows on table element\n\t\t\t\t\t\t\t\t++$dom[($dom[$key]['parent'])]['rows'];\n\t\t\t\t\t\t\t\t// store the TR elements IDs on table element\n\t\t\t\t\t\t\t\tarray_push($dom[($dom[$key]['parent'])]['trids'], $key);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (($dom[$key]['value'] == 'th') OR ($dom[$key]['value'] == 'td')) {\n\t\t\t\t\t\t\tif (isset($dom[$key]['attribute']['colspan'])) {\n\t\t\t\t\t\t\t\t$colspan = intval($dom[$key]['attribute']['colspan']);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$colspan = 1;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$dom[$key]['attribute']['colspan'] = $colspan;\n\t\t\t\t\t\t\t$dom[($dom[$key]['parent'])]['cols'] += $colspan;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// set foreground color attribute\n\t\t\t\t\t\tif (isset($dom[$key]['attribute']['color']) AND (!$this->empty_string($dom[$key]['attribute']['color']))) {\n\t\t\t\t\t\t\t$dom[$key]['fgcolor'] = $this->convertHTMLColorToDec($dom[$key]['attribute']['color']);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// set background color attribute\n\t\t\t\t\t\tif (isset($dom[$key]['attribute']['bgcolor']) AND (!$this->empty_string($dom[$key]['attribute']['bgcolor']))) {\n\t\t\t\t\t\t\t$dom[$key]['bgcolor'] = $this->convertHTMLColorToDec($dom[$key]['attribute']['bgcolor']);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// set stroke color attribute\n\t\t\t\t\t\tif (isset($dom[$key]['attribute']['strokecolor']) AND (!$this->empty_string($dom[$key]['attribute']['strokecolor']))) {\n\t\t\t\t\t\t\t$dom[$key]['strokecolor'] = $this->convertHTMLColorToDec($dom[$key]['attribute']['strokecolor']);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// check for width attribute\n\t\t\t\t\t\tif (isset($dom[$key]['attribute']['width'])) {\n\t\t\t\t\t\t\t$dom[$key]['width'] = $dom[$key]['attribute']['width'];\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// check for height attribute\n\t\t\t\t\t\tif (isset($dom[$key]['attribute']['height'])) {\n\t\t\t\t\t\t\t$dom[$key]['height'] = $dom[$key]['attribute']['height'];\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// check for text alignment\n\t\t\t\t\t\tif (isset($dom[$key]['attribute']['align']) AND (!$this->empty_string($dom[$key]['attribute']['align'])) AND ($dom[$key]['value'] !== 'img')) {\n\t\t\t\t\t\t\t$dom[$key]['align'] = strtoupper($dom[$key]['attribute']['align']{0});\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// check for text rendering mode (the following attributes do not exist in HTML)\n\t\t\t\t\t\tif (isset($dom[$key]['attribute']['stroke'])) {\n\t\t\t\t\t\t\t// font stroke width\n\t\t\t\t\t\t\t$dom[$key]['stroke'] = $this->getHTMLUnitToUnits($dom[$key]['attribute']['stroke'], $dom[$key]['fontsize'], 'pt', true);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (isset($dom[$key]['attribute']['fill'])) {\n\t\t\t\t\t\t\t// font fill\n\t\t\t\t\t\t\tif ($dom[$key]['attribute']['fill'] == 'true') {\n\t\t\t\t\t\t\t\t$dom[$key]['fill'] = true;\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$dom[$key]['fill'] = false;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (isset($dom[$key]['attribute']['clip'])) {\n\t\t\t\t\t\t\t// clipping mode\n\t\t\t\t\t\t\tif ($dom[$key]['attribute']['clip'] == 'true') {\n\t\t\t\t\t\t\t\t$dom[$key]['clip'] = true;\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$dom[$key]['clip'] = false;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t} // end opening tag\n\t\t\t\t} else {\n\t\t\t\t\t// text\n\t\t\t\t\t$dom[$key]['tag'] = false;\n\t\t\t\t\t$dom[$key]['block'] = false;\n\t\t\t\t\t$dom[$key]['value'] = stripslashes($this->unhtmlentities($element));\n\t\t\t\t\t$dom[$key]['parent'] = end($level);\n\t\t\t\t}\n\t\t\t\t++$elkey;\n\t\t\t\t++$key;\n\t\t\t}\n\t\t\treturn $dom;\n\t\t}\n\n\t\t/**\n\t\t * Returns the string used to find spaces\n\t\t * @return string\n\t\t * @access protected\n\t\t * @author Nicola Asuni\n\t\t * @since 4.8.024 (2010-01-15)\n\t\t */\n\t\tprotected function getSpaceString() {\n\t\t\t$spacestr = chr(32);\n\t\t\tif (($this->CurrentFont['type'] == 'TrueTypeUnicode') OR ($this->CurrentFont['type'] == 'cidfont0')) {\n\t\t\t\t$spacestr = chr(0).chr(32);\n\t\t\t}\n\t\t\treturn $spacestr;\n\t\t}\n\n\t\t/**\n\t\t * Allows to preserve some HTML formatting (limited support).<br />\n\t\t * IMPORTANT: The HTML must be well formatted - try to clean-up it using an application like HTML-Tidy before submitting.\n\t\t * Supported tags are: a, b, blockquote, br, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, img, li, ol, p, pre, small, span, strong, sub, sup, table, tcpdf, td, th, thead, tr, tt, u, ul\n\t\t * @param string $html text to display\n\t\t * @param boolean $ln if true add a new line after text (default = true)\n\t\t * @param int $fill Indicates if the background must be painted (true) or transparent (false).\n\t\t * @param boolean $reseth if true reset the last cell height (default false).\n\t\t * @param boolean $cell if true add the default cMargin space to each Write (default false).\n\t\t * @param string $align Allows to center or align the text. Possible values are:<ul><li>L : left align</li><li>C : center</li><li>R : right align</li><li>'' : empty string : left for LTR or right for RTL</li></ul>\n\t\t * @access public\n\t\t */\n\t\tpublic function writeHTML($html, $ln=true, $fill=false, $reseth=false, $cell=false, $align='') {\n\t\t\t$gvars = $this->getGraphicVars();\n\t\t\t// store current values\n\t\t\t$prevPage = $this->page;\n\t\t\t$prevlMargin = $this->lMargin;\n\t\t\t$prevrMargin = $this->rMargin;\n\t\t\t$curfontname = $this->FontFamily;\n\t\t\t$curfontstyle = $this->FontStyle;\n\t\t\t$curfontsize = $this->FontSizePt;\n\t\t\t$curfontascent = $this->getFontAscent($curfontname, $curfontstyle, $curfontsize);\n\t\t\t$curfontdescent = $this->getFontDescent($curfontname, $curfontstyle, $curfontsize);\n\t\t\t$this->newline = true;\n\t\t\t$startlinepage = $this->page;\n\t\t\t$minstartliney = $this->y;\n\t\t\t$maxbottomliney = 0;\n\t\t\t$startlinex = $this->x;\n\t\t\t$startliney = $this->y;\n\t\t\t$yshift = 0;\n\t\t\t$newline = true;\n\t\t\t$loop = 0;\n\t\t\t$curpos = 0;\n\t\t\t$this_method_vars = array();\n\t\t\t$undo = false;\n\t\t\t$fontaligned = false;\n\t\t\t$this->premode = false;\n\t\t\tif (isset($this->PageAnnots[$this->page])) {\n\t\t\t\t$pask = count($this->PageAnnots[$this->page]);\n\t\t\t} else {\n\t\t\t\t$pask = 0;\n\t\t\t}\n\t\t\tif (!$this->InFooter) {\n\t\t\t\tif (isset($this->footerlen[$this->page])) {\n\t\t\t\t\t$this->footerpos[$this->page] = $this->pagelen[$this->page] - $this->footerlen[$this->page];\n\t\t\t\t} else {\n\t\t\t\t\t$this->footerpos[$this->page] = $this->pagelen[$this->page];\n\t\t\t\t}\n\t\t\t\t$startlinepos = $this->footerpos[$this->page];\n\t\t\t} else {\n\t\t\t\t$startlinepos = $this->pagelen[$this->page];\n\t\t\t}\n\t\t\t$lalign = $align;\n\t\t\t$plalign = $align;\n\t\t\tif ($this->rtl) {\n\t\t\t\t$w = $this->x - $this->lMargin;\n\t\t\t} else {\n\t\t\t\t$w = $this->w - $this->rMargin - $this->x;\n\t\t\t}\n\t\t\t$w -= (2 * $this->cMargin);\n\t\t\tif ($cell) {\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$this->x -= $this->cMargin;\n\t\t\t\t} else {\n\t\t\t\t\t$this->x += $this->cMargin;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ($this->customlistindent >= 0) {\n\t\t\t\t$this->listindent = $this->customlistindent;\n\t\t\t} else {\n\t\t\t\t$this->listindent = $this->GetStringWidth('0000');\n\t\t\t}\n\t\t\t$this->listindentlevel = 0;\n\t\t\t// save previous states\n\t\t\t$prev_cell_height_ratio = $this->cell_height_ratio;\n\t\t\t$prev_listnum = $this->listnum;\n\t\t\t$prev_listordered = $this->listordered;\n\t\t\t$prev_listcount = $this->listcount;\n\t\t\t$prev_lispacer = $this->lispacer;\n\t\t\t$this->listnum = 0;\n\t\t\t$this->listordered = array();\n\t\t\t$this->listcount = array();\n\t\t\t$this->lispacer = '';\n\t\t\tif (($this->empty_string($this->lasth)) OR ($reseth)) {\n\t\t\t\t//set row height\n\t\t\t\t$this->lasth = $this->FontSize * $this->cell_height_ratio;\n\t\t\t}\n\t\t\t$dom = $this->getHtmlDomArray($html);\n\t\t\t$maxel = count($dom);\n\t\t\t$key = 0;\n\t\t\twhile ($key < $maxel) {\n\t\t\t\tif ($dom[$key]['tag'] AND isset($dom[$key]['attribute']['pagebreak'])) {\n\t\t\t\t\t// check for pagebreak\n\t\t\t\t\tif (($dom[$key]['attribute']['pagebreak'] == 'true') OR ($dom[$key]['attribute']['pagebreak'] == 'left') OR ($dom[$key]['attribute']['pagebreak'] == 'right')) {\n\t\t\t\t\t\t// add a page (or trig AcceptPageBreak() for multicolumn mode)\n\t\t\t\t\t\t$this->checkPageBreak($this->PageBreakTrigger + 1);\n\t\t\t\t\t}\n\t\t\t\t\tif ((($dom[$key]['attribute']['pagebreak'] == 'left') AND (((!$this->rtl) AND (($this->page % 2) == 0)) OR (($this->rtl) AND (($this->page % 2) != 0))))\n\t\t\t\t\t\tOR (($dom[$key]['attribute']['pagebreak'] == 'right') AND (((!$this->rtl) AND (($this->page % 2) != 0)) OR (($this->rtl) AND (($this->page % 2) == 0))))) {\n\t\t\t\t\t\t// add a page (or trig AcceptPageBreak() for multicolumn mode)\n\t\t\t\t\t\t$this->checkPageBreak($this->PageBreakTrigger + 1);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ($dom[$key]['tag'] AND $dom[$key]['opening'] AND isset($dom[$key]['attribute']['nobr']) AND ($dom[$key]['attribute']['nobr'] == 'true')) {\n\t\t\t\t\tif (isset($dom[($dom[$key]['parent'])]['attribute']['nobr']) AND ($dom[($dom[$key]['parent'])]['attribute']['nobr'] == 'true')) {\n\t\t\t\t\t\t$dom[$key]['attribute']['nobr'] = false;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// store current object\n\t\t\t\t\t\t$this->startTransaction();\n\t\t\t\t\t\t// save this method vars\n\t\t\t\t\t\t$this_method_vars['html'] = $html;\n\t\t\t\t\t\t$this_method_vars['ln'] = $ln;\n\t\t\t\t\t\t$this_method_vars['fill'] = $fill;\n\t\t\t\t\t\t$this_method_vars['reseth'] = $reseth;\n\t\t\t\t\t\t$this_method_vars['cell'] = $cell;\n\t\t\t\t\t\t$this_method_vars['align'] = $align;\n\t\t\t\t\t\t$this_method_vars['gvars'] = $gvars;\n\t\t\t\t\t\t$this_method_vars['prevPage'] = $prevPage;\n\t\t\t\t\t\t$this_method_vars['prevlMargin'] = $prevlMargin;\n\t\t\t\t\t\t$this_method_vars['prevrMargin'] = $prevrMargin;\n\t\t\t\t\t\t$this_method_vars['curfontname'] = $curfontname;\n\t\t\t\t\t\t$this_method_vars['curfontstyle'] = $curfontstyle;\n\t\t\t\t\t\t$this_method_vars['curfontsize'] = $curfontsize;\n\t\t\t\t\t\t$this_method_vars['curfontascent'] = $curfontascent;\n\t\t\t\t\t\t$this_method_vars['curfontdescent'] = $curfontdescent;\n\t\t\t\t\t\t$this_method_vars['minstartliney'] = $minstartliney;\n\t\t\t\t\t\t$this_method_vars['maxbottomliney'] = $maxbottomliney;\n\t\t\t\t\t\t$this_method_vars['yshift'] = $yshift;\n\t\t\t\t\t\t$this_method_vars['startlinepage'] = $startlinepage;\n\t\t\t\t\t\t$this_method_vars['startlinepos'] = $startlinepos;\n\t\t\t\t\t\t$this_method_vars['startlinex'] = $startlinex;\n\t\t\t\t\t\t$this_method_vars['startliney'] = $startliney;\n\t\t\t\t\t\t$this_method_vars['newline'] = $newline;\n\t\t\t\t\t\t$this_method_vars['loop'] = $loop;\n\t\t\t\t\t\t$this_method_vars['curpos'] = $curpos;\n\t\t\t\t\t\t$this_method_vars['pask'] = $pask;\n\t\t\t\t\t\t$this_method_vars['lalign'] = $lalign;\n\t\t\t\t\t\t$this_method_vars['plalign'] = $plalign;\n\t\t\t\t\t\t$this_method_vars['w'] = $w;\n\t\t\t\t\t\t$this_method_vars['prev_cell_height_ratio'] = $prev_cell_height_ratio;\n\t\t\t\t\t\t$this_method_vars['prev_listnum'] = $prev_listnum;\n\t\t\t\t\t\t$this_method_vars['prev_listordered'] = $prev_listordered;\n\t\t\t\t\t\t$this_method_vars['prev_listcount'] = $prev_listcount;\n\t\t\t\t\t\t$this_method_vars['prev_lispacer'] = $prev_lispacer;\n\t\t\t\t\t\t$this_method_vars['fontaligned'] = $fontaligned;\n\t\t\t\t\t\t$this_method_vars['key'] = $key;\n\t\t\t\t\t\t$this_method_vars['dom'] = $dom;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// print THEAD block\n\t\t\t\tif (($dom[$key]['value'] == 'tr') AND isset($dom[$key]['thead']) AND $dom[$key]['thead']) {\n\t\t\t\t\tif (isset($dom[$key]['parent']) AND isset($dom[$dom[$key]['parent']]['thead']) AND !$this->empty_string($dom[$dom[$key]['parent']]['thead'])) {\n\t\t\t\t\t\t$this->inthead = true;\n\t\t\t\t\t\t// print table header (thead)\n\t\t\t\t\t\t$this->writeHTML($this->thead, false, false, false, false, '');\n\t\t\t\t\t\tif (($this->start_transaction_page == ($this->numpages - 1)) OR ($this->y < $this->start_transaction_y) OR ($this->checkPageBreak($this->lasth, '', false))) {\n\t\t\t\t\t\t\t// restore previous object\n\t\t\t\t\t\t\t$this->rollbackTransaction(true);\n\t\t\t\t\t\t\t// restore previous values\n\t\t\t\t\t\t\tforeach ($this_method_vars as $vkey => $vval) {\n\t\t\t\t\t\t\t\t$$vkey = $vval;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// add a page (or trig AcceptPageBreak() for multicolumn mode)\n\t\t\t\t\t\t\t$pre_y = $this->y;\n\t\t\t\t\t\t\tif ((!$this->checkPageBreak($this->PageBreakTrigger + 1)) AND ($this->y < $pre_y)) {\n\t\t\t\t\t\t\t\t// fix for multicolumn mode\n\t\t\t\t\t\t\t\t$startliney = $this->y;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$this->start_transaction_page = $this->page;\n\t\t\t\t\t\t\t$this->start_transaction_y = $this->y;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t// move $key index forward to skip THEAD block\n\t\t\t\t\twhile ( ($key < $maxel) AND (!(\n\t\t\t\t\t\t($dom[$key]['tag'] AND $dom[$key]['opening'] AND ($dom[$key]['value'] == 'tr') AND (!isset($dom[$key]['thead']) OR !$dom[$key]['thead']))\n\t\t\t\t\t\tOR ($dom[$key]['tag'] AND (!$dom[$key]['opening']) AND ($dom[$key]['value'] == 'table'))) )) {\n\t\t\t\t\t\t++$key;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ($dom[$key]['tag'] OR ($key == 0)) {\n\t\t\t\t\tif (isset($dom[$key]['line-height'])) {\n\t\t\t\t\t\t// set line height\n\t\t\t\t\t\t$this->cell_height_ratio = $dom[$key]['line-height'];\n\t\t\t\t\t\t$this->lasth = $this->FontSize * $this->cell_height_ratio;\n\t\t\t\t\t}\n\t\t\t\t\tif ((($dom[$key]['value'] == 'table') OR ($dom[$key]['value'] == 'tr')) AND (isset($dom[$key]['align']))) {\n\t\t\t\t\t\t$dom[$key]['align'] = ($this->rtl) ? 'R' : 'L';\n\t\t\t\t\t}\n\t\t\t\t\t// vertically align image in line\n\t\t\t\t\tif ((!$this->newline) AND ($dom[$key]['value'] == 'img') AND (isset($dom[$key]['attribute']['height'])) AND ($dom[$key]['attribute']['height'] > 0)) {\n\t\t\t\t\t\t// get image height\n\t\t\t\t\t\t$imgh = $this->getHTMLUnitToUnits($dom[$key]['attribute']['height'], $this->lasth, 'px');\n\t\t\t\t\t\t// check for automatic line break\n\t\t\t\t\t\t$autolinebreak = false;\n\t\t\t\t\t\tif (isset($dom[$key]['attribute']['width']) AND ($dom[$key]['attribute']['width'] > 0)) {\n\t\t\t\t\t\t\t$imgw = $this->getHTMLUnitToUnits($dom[$key]['attribute']['width'], 1, 'px', false);\n\t\t\t\t\t\t\tif (($this->rtl AND (($this->x - $imgw) < ($this->lMargin + $this->cMargin)))\n\t\t\t\t\t\t\t\tOR (!$this->rtl AND (($this->x + $imgw) > ($this->w - $this->rMargin - $this->cMargin)))) {\n\t\t\t\t\t\t\t\t// add automatic line break\n\t\t\t\t\t\t\t\t$autolinebreak = true;\n\t\t\t\t\t\t\t\t$this->Ln('', $cell);\n\t\t\t\t\t\t\t\t// go back to evaluate this line break\n\t\t\t\t\t\t\t\t--$key;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (!$autolinebreak) {\n\t\t\t\t\t\t\tif (!$this->InFooter) {\n\t\t\t\t\t\t\t\t$pre_y = $this->y;\n\t\t\t\t\t\t\t\t// check for page break\n\t\t\t\t\t\t\t\tif ((!$this->checkPageBreak($imgh)) AND ($this->y < $pre_y)) {\n\t\t\t\t\t\t\t\t\t// fix for multicolumn mode\n\t\t\t\t\t\t\t\t\t$startliney = $this->y;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ($this->page > $startlinepage) {\n\t\t\t\t\t\t\t\t// fix line splitted over two pages\n\t\t\t\t\t\t\t\tif (isset($this->footerlen[$startlinepage])) {\n\t\t\t\t\t\t\t\t\t$curpos = $this->pagelen[$startlinepage] - $this->footerlen[$startlinepage];\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t// line to be moved one page forward\n\t\t\t\t\t\t\t\t$pagebuff = $this->getPageBuffer($startlinepage);\n\t\t\t\t\t\t\t\t$linebeg = substr($pagebuff, $startlinepos, ($curpos - $startlinepos));\n\t\t\t\t\t\t\t\t$tstart = substr($pagebuff, 0, $startlinepos);\n\t\t\t\t\t\t\t\t$tend = substr($this->getPageBuffer($startlinepage), $curpos);\n\t\t\t\t\t\t\t\t// remove line from previous page\n\t\t\t\t\t\t\t\t$this->setPageBuffer($startlinepage, $tstart.''.$tend);\n\t\t\t\t\t\t\t\t$pagebuff = $this->getPageBuffer($this->page);\n\t\t\t\t\t\t\t\t$tstart = substr($pagebuff, 0, $this->cntmrk[$this->page]);\n\t\t\t\t\t\t\t\t$tend = substr($pagebuff, $this->cntmrk[$this->page]);\n\t\t\t\t\t\t\t\t// add line start to current page\n\t\t\t\t\t\t\t\t$yshift = $minstartliney - $this->y;\n\t\t\t\t\t\t\t\tif ($fontaligned) {\n\t\t\t\t\t\t\t\t\t$yshift += ($curfontsize / $this->k);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$try = sprintf('1 0 0 1 0 %.3F cm', ($yshift * $this->k));\n\t\t\t\t\t\t\t\t$this->setPageBuffer($this->page, $tstart.\"\\nq\\n\".$try.\"\\n\".$linebeg.\"\\nQ\\n\".$tend);\n\t\t\t\t\t\t\t\t// shift the annotations and links\n\t\t\t\t\t\t\t\tif (isset($this->PageAnnots[$this->page])) {\n\t\t\t\t\t\t\t\t\t$next_pask = count($this->PageAnnots[$this->page]);\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t$next_pask = 0;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (isset($this->PageAnnots[$startlinepage])) {\n\t\t\t\t\t\t\t\t\tforeach ($this->PageAnnots[$startlinepage] as $pak => $pac) {\n\t\t\t\t\t\t\t\t\t\tif ($pak >= $pask) {\n\t\t\t\t\t\t\t\t\t\t\t$this->PageAnnots[$this->page][] = $pac;\n\t\t\t\t\t\t\t\t\t\t\tunset($this->PageAnnots[$startlinepage][$pak]);\n\t\t\t\t\t\t\t\t\t\t\t$npak = count($this->PageAnnots[$this->page]) - 1;\n\t\t\t\t\t\t\t\t\t\t\t$this->PageAnnots[$this->page][$npak]['y'] -= $yshift;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$pask = $next_pask;\n\t\t\t\t\t\t\t\t$startlinepos = $this->cntmrk[$this->page];\n\t\t\t\t\t\t\t\t$startlinepage = $this->page;\n\t\t\t\t\t\t\t\t$startliney = $this->y;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$this->y += ((($curfontsize * $this->cell_height_ratio / $this->k) + $curfontascent - $curfontdescent) / 2) - $imgh;\n\t\t\t\t\t\t\t$minstartliney = min($this->y, $minstartliney);\n\t\t\t\t\t\t\t$maxbottomliney = ($startliney + ($this->FontSize * $this->cell_height_ratio));\n\t\t\t\t\t\t}\n\t\t\t\t\t} elseif (isset($dom[$key]['fontname']) OR isset($dom[$key]['fontstyle']) OR isset($dom[$key]['fontsize'])) {\n\t\t\t\t\t\t// account for different font size\n\t\t\t\t\t\t$pfontname = $curfontname;\n\t\t\t\t\t\t$pfontstyle = $curfontstyle;\n\t\t\t\t\t\t$pfontsize = $curfontsize;\n\t\t\t\t\t\t$fontname = isset($dom[$key]['fontname']) ? $dom[$key]['fontname'] : $curfontname;\n\t\t\t\t\t\t$fontstyle = isset($dom[$key]['fontstyle']) ? $dom[$key]['fontstyle'] : $curfontstyle;\n\t\t\t\t\t\t$fontsize = isset($dom[$key]['fontsize']) ? $dom[$key]['fontsize'] : $curfontsize;\n\t\t\t\t\t\t$fontascent = $this->getFontAscent($fontname, $fontstyle, $fontsize);\n\t\t\t\t\t\t$fontdescent = $this->getFontDescent($fontname, $fontstyle, $fontsize);\n\t\t\t\t\t\tif (($fontname != $curfontname) OR ($fontstyle != $curfontstyle) OR ($fontsize != $curfontsize)) {\n\t\t\t\t\t\t\tif (is_numeric($fontsize) AND ($fontsize >= 0)\n\t\t\t\t\t\t\t\tAND is_numeric($curfontsize) AND ($curfontsize >= 0)\n\t\t\t\t\t\t\t\tAND ($fontsize != $curfontsize) AND (!$this->newline)\n\t\t\t\t\t\t\t\tAND ($key < ($maxel - 1))\n\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\tif ((!$this->newline) AND ($this->page > $startlinepage)) {\n\t\t\t\t\t\t\t\t\t// fix lines splitted over two pages\n\t\t\t\t\t\t\t\t\tif (isset($this->footerlen[$startlinepage])) {\n\t\t\t\t\t\t\t\t\t\t$curpos = $this->pagelen[$startlinepage] - $this->footerlen[$startlinepage];\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t// line to be moved one page forward\n\t\t\t\t\t\t\t\t\t$pagebuff = $this->getPageBuffer($startlinepage);\n\t\t\t\t\t\t\t\t\t$linebeg = substr($pagebuff, $startlinepos, ($curpos - $startlinepos));\n\t\t\t\t\t\t\t\t\t$tstart = substr($pagebuff, 0, $startlinepos);\n\t\t\t\t\t\t\t\t\t$tend = substr($this->getPageBuffer($startlinepage), $curpos);\n\t\t\t\t\t\t\t\t\t// remove line start from previous page\n\t\t\t\t\t\t\t\t\t$this->setPageBuffer($startlinepage, $tstart.''.$tend);\n\t\t\t\t\t\t\t\t\t$pagebuff = $this->getPageBuffer($this->page);\n\t\t\t\t\t\t\t\t\t$tstart = substr($pagebuff, 0, $this->cntmrk[$this->page]);\n\t\t\t\t\t\t\t\t\t$tend = substr($pagebuff, $this->cntmrk[$this->page]);\n\t\t\t\t\t\t\t\t\t// add line start to current page\n\t\t\t\t\t\t\t\t\t$yshift = $minstartliney - $this->y;\n\t\t\t\t\t\t\t\t\t$try = sprintf('1 0 0 1 0 %.3F cm', ($yshift * $this->k));\n\t\t\t\t\t\t\t\t\t$this->setPageBuffer($this->page, $tstart.\"\\nq\\n\".$try.\"\\n\".$linebeg.\"\\nQ\\n\".$tend);\n\t\t\t\t\t\t\t\t\t// shift the annotations and links\n\t\t\t\t\t\t\t\t\tif (isset($this->PageAnnots[$this->page])) {\n\t\t\t\t\t\t\t\t\t\t$next_pask = count($this->PageAnnots[$this->page]);\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t$next_pask = 0;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tif (isset($this->PageAnnots[$startlinepage])) {\n\t\t\t\t\t\t\t\t\t\tforeach ($this->PageAnnots[$startlinepage] as $pak => $pac) {\n\t\t\t\t\t\t\t\t\t\t\tif ($pak >= $pask) {\n\t\t\t\t\t\t\t\t\t\t\t\t$this->PageAnnots[$this->page][] = $pac;\n\t\t\t\t\t\t\t\t\t\t\t\tunset($this->PageAnnots[$startlinepage][$pak]);\n\t\t\t\t\t\t\t\t\t\t\t\t$npak = count($this->PageAnnots[$this->page]) - 1;\n\t\t\t\t\t\t\t\t\t\t\t\t$this->PageAnnots[$this->page][$npak]['y'] -= $yshift;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t$pask = $next_pask;\n\t\t\t\t\t\t\t\t\t$startlinepos = $this->cntmrk[$this->page];\n\t\t\t\t\t\t\t\t\t$startlinepage = $this->page;\n\t\t\t\t\t\t\t\t\t$startliney = $this->y;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (!$dom[$key]['block']) {\n\t\t\t\t\t\t\t\t\t$this->y += ((($curfontsize - $fontsize) * $this->cell_height_ratio / $this->k) + $curfontascent - $fontascent - $curfontdescent + $fontdescent) / 2;\n\t\t\t\t\t\t\t\t\t$minstartliney = min($this->y, $minstartliney);\n\t\t\t\t\t\t\t\t\t$maxbottomliney = max(($this->y + (($fontsize * $this->cell_height_ratio) / $this->k)), $maxbottomliney);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$fontaligned = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$this->SetFont($fontname, $fontstyle, $fontsize);\n\t\t\t\t\t\t\t$this->lasth = $this->FontSize * $this->cell_height_ratio;\n\t\t\t\t\t\t\t$curfontname = $fontname;\n\t\t\t\t\t\t\t$curfontstyle = $fontstyle;\n\t\t\t\t\t\t\t$curfontsize = $fontsize;\n\t\t\t\t\t\t\t$curfontascent = $fontascent;\n\t\t\t\t\t\t\t$curfontdescent = $fontdescent;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t// set text rendering mode\n\t\t\t\t\t$textstroke = isset($dom[$key]['stroke']) ? $dom[$key]['stroke'] : $this->textstrokewidth;\n\t\t\t\t\t$textfill = isset($dom[$key]['fill']) ? $dom[$key]['fill'] : (($this->textrendermode % 2) == 0);\n\t\t\t\t\t$textclip = isset($dom[$key]['clip']) ? $dom[$key]['clip'] : ($this->textrendermode > 3);\n\t\t\t\t\t$this->setTextRenderingMode($textstroke, $textfill, $textclip);\n\t\t\t\t\tif (($plalign == 'J') AND $dom[$key]['block']) {\n\t\t\t\t\t\t$plalign = '';\n\t\t\t\t\t}\n\t\t\t\t\t// get current position on page buffer\n\t\t\t\t\t$curpos = $this->pagelen[$startlinepage];\n\t\t\t\t\tif (isset($dom[$key]['bgcolor']) AND ($dom[$key]['bgcolor'] !== false)) {\n\t\t\t\t\t\t$this->SetFillColorArray($dom[$key]['bgcolor']);\n\t\t\t\t\t\t$wfill = true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$wfill = $fill | false;\n\t\t\t\t\t}\n\t\t\t\t\tif (isset($dom[$key]['fgcolor']) AND ($dom[$key]['fgcolor'] !== false)) {\n\t\t\t\t\t\t$this->SetTextColorArray($dom[$key]['fgcolor']);\n\t\t\t\t\t}\n\t\t\t\t\tif (isset($dom[$key]['strokecolor']) AND ($dom[$key]['strokecolor'] !== false)) {\n\t\t\t\t\t\t$this->SetDrawColorArray($dom[$key]['strokecolor']);\n\t\t\t\t\t}\n\t\t\t\t\tif (isset($dom[$key]['align'])) {\n\t\t\t\t\t\t$lalign = $dom[$key]['align'];\n\t\t\t\t\t}\n\t\t\t\t\tif ($this->empty_string($lalign)) {\n\t\t\t\t\t\t$lalign = $align;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// align lines\n\t\t\t\tif ($this->newline AND (strlen($dom[$key]['value']) > 0) AND ($dom[$key]['value'] != 'td') AND ($dom[$key]['value'] != 'th')) {\n\t\t\t\t\t$newline = true;\n\t\t\t\t\t$fontaligned = false;\n\t\t\t\t\t// we are at the beginning of a new line\n\t\t\t\t\tif (isset($startlinex)) {\n\t\t\t\t\t\t$yshift = $minstartliney - $startliney;\n\t\t\t\t\t\tif (($yshift > 0) OR ($this->page > $startlinepage)) {\n\t\t\t\t\t\t\t$yshift = 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$t_x = 0;\n\t\t\t\t\t\t// the last line must be shifted to be aligned as requested\n\t\t\t\t\t\t$linew = abs($this->endlinex - $startlinex);\n\t\t\t\t\t\t$pstart = substr($this->getPageBuffer($startlinepage), 0, $startlinepos);\n\t\t\t\t\t\tif (isset($opentagpos) AND isset($this->footerlen[$startlinepage]) AND (!$this->InFooter)) {\n\t\t\t\t\t\t\t$this->footerpos[$startlinepage] = $this->pagelen[$startlinepage] - $this->footerlen[$startlinepage];\n\t\t\t\t\t\t\t$midpos = min($opentagpos, $this->footerpos[$startlinepage]);\n\t\t\t\t\t\t} elseif (isset($opentagpos)) {\n\t\t\t\t\t\t\t$midpos = $opentagpos;\n\t\t\t\t\t\t} elseif (isset($this->footerlen[$startlinepage]) AND (!$this->InFooter)) {\n\t\t\t\t\t\t\t$this->footerpos[$startlinepage] = $this->pagelen[$startlinepage] - $this->footerlen[$startlinepage];\n\t\t\t\t\t\t\t$midpos = $this->footerpos[$startlinepage];\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$midpos = 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ($midpos > 0) {\n\t\t\t\t\t\t\t$pmid = substr($this->getPageBuffer($startlinepage), $startlinepos, ($midpos - $startlinepos));\n\t\t\t\t\t\t\t$pend = substr($this->getPageBuffer($startlinepage), $midpos);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$pmid = substr($this->getPageBuffer($startlinepage), $startlinepos);\n\t\t\t\t\t\t\t$pend = '';\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ((isset($plalign) AND ((($plalign == 'C') OR ($plalign == 'J') OR (($plalign == 'R') AND (!$this->rtl)) OR (($plalign == 'L') AND ($this->rtl))))) OR ($yshift < 0)) {\n\t\t\t\t\t\t\t// calculate shifting amount\n\t\t\t\t\t\t\t$tw = $w;\n\t\t\t\t\t\t\tif (($plalign == 'J') AND $this->isRTLTextDir() AND ($this->num_columns > 1)) {\n\t\t\t\t\t\t\t\t$tw += $this->cMargin;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ($this->lMargin != $prevlMargin) {\n\t\t\t\t\t\t\t\t$tw += ($prevlMargin - $this->lMargin);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ($this->rMargin != $prevrMargin) {\n\t\t\t\t\t\t\t\t$tw += ($prevrMargin - $this->rMargin);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$one_space_width = $this->GetStringWidth(chr(32));\n\t\t\t\t\t\t\t$mdiff = abs($tw - $linew);\n\t\t\t\t\t\t\tif ($plalign == 'C') {\n\t\t\t\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t\t\t\t$t_x = -($mdiff / 2);\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t$t_x = ($mdiff / 2);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} elseif (($plalign == 'R') AND (!$this->rtl)) {\n\t\t\t\t\t\t\t\t// right alignment on LTR document\n\t\t\t\t\t\t\t\tif (intval($this->revstrpos($pmid, ')]')) == (intval($this->revstrpos($pmid, ' )]')) + 1)) {\n\t\t\t\t\t\t\t\t\t// remove last space (if any)\n\t\t\t\t\t\t\t\t\t$linew -= $one_space_width;\n\t\t\t\t\t\t\t\t\t$mdiff = abs($tw - $linew);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$t_x = $mdiff;\n\t\t\t\t\t\t\t} elseif (($plalign == 'L') AND ($this->rtl)) {\n\t\t\t\t\t\t\t\t// left alignment on RTL document\n\t\t\t\t\t\t\t\tif (($this->revstrpos($pmid, '[(') > 0) AND ((intval($this->revstrpos($pmid, '[( ')) == intval($this->revstrpos($pmid, '[('))) OR (intval($this->revstrpos($pmid, '[('.chr(0).chr(32))) == intval($this->revstrpos($pmid, '[('))))) {\n\t\t\t\t\t\t\t\t\t// remove first space (if any)\n\t\t\t\t\t\t\t\t\t$linew -= $one_space_width;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ((strpos($pmid, '[(') > 0) AND (intval(strpos($pmid, '[(')) == (intval($this->revstrpos($pmid, '[('))))) {\n\t\t\t\t\t\t\t\t\t// remove last space (if any)\n\t\t\t\t\t\t\t\t\t$linew -= $one_space_width;\n\t\t\t\t\t\t\t\t\tif (($this->CurrentFont['type'] == 'TrueTypeUnicode') OR ($this->CurrentFont['type'] == 'cidfont0')) {\n\t\t\t\t\t\t\t\t\t\t$linew -= $one_space_width;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$mdiff = abs($tw - $linew);\n\t\t\t\t\t\t\t\t$t_x = -$mdiff;\n\t\t\t\t\t\t\t} elseif (($plalign == 'J') AND ($plalign == $lalign)) {\n\t\t\t\t\t\t\t\t// Justification\n\t\t\t\t\t\t\t\tif ($this->isRTLTextDir()) {\n\t\t\t\t\t\t\t\t\t$t_x = $this->lMargin - $this->endlinex + $this->cMargin;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$no = 0; // spaces without trim\n\t\t\t\t\t\t\t\t$ns = 0; // spaces with trim\n\t\t\t\t\t\t\t\t$pmidtemp = $pmid;\n\t\t\t\t\t\t\t\t// escape special characters\n\t\t\t\t\t\t\t\t$pmidtemp = preg_replace('/[\\\\\\][\\(]/x', '\\\\#!#OP#!#', $pmidtemp);\n\t\t\t\t\t\t\t\t$pmidtemp = preg_replace('/[\\\\\\][\\)]/x', '\\\\#!#CP#!#', $pmidtemp);\n\t\t\t\t\t\t\t\t// search spaces\n\t\t\t\t\t\t\t\tif (preg_match_all('/\\[\\(([^\\)]*)\\)\\]/x', $pmidtemp, $lnstring, PREG_PATTERN_ORDER)) {\n\t\t\t\t\t\t\t\t\t$spacestr = $this->getSpaceString();\n\t\t\t\t\t\t\t\t\t$maxkk = count($lnstring[1]) - 1;\n\t\t\t\t\t\t\t\t\tfor ($kk=0; $kk <= $maxkk; ++$kk) {\n\t\t\t\t\t\t\t\t\t\t// restore special characters\n\t\t\t\t\t\t\t\t\t\t$lnstring[1][$kk] = str_replace('#!#OP#!#', '(', $lnstring[1][$kk]);\n\t\t\t\t\t\t\t\t\t\t$lnstring[1][$kk] = str_replace('#!#CP#!#', ')', $lnstring[1][$kk]);\n\t\t\t\t\t\t\t\t\t\tif ($kk == $maxkk) {\n\t\t\t\t\t\t\t\t\t\t\tif ($this->isRTLTextDir()) {\n\t\t\t\t\t\t\t\t\t\t\t\t$tvalue = ltrim($lnstring[1][$kk]);\n\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\t$tvalue = rtrim($lnstring[1][$kk]);\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t$tvalue = $lnstring[1][$kk];\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t// store number of spaces on the strings\n\t\t\t\t\t\t\t\t\t\t$lnstring[2][$kk] = substr_count($lnstring[1][$kk], $spacestr);\n\t\t\t\t\t\t\t\t\t\t$lnstring[3][$kk] = substr_count($tvalue, $spacestr);\n\t\t\t\t\t\t\t\t\t\t// count total spaces on line\n\t\t\t\t\t\t\t\t\t\t$no += $lnstring[2][$kk];\n\t\t\t\t\t\t\t\t\t\t$ns += $lnstring[3][$kk];\n\t\t\t\t\t\t\t\t\t\t$lnstring[4][$kk] = $no;\n\t\t\t\t\t\t\t\t\t\t$lnstring[5][$kk] = $ns;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tif ($this->isRTLTextDir()) {\n\t\t\t\t\t\t\t\t\t\t$t_x = $this->lMargin - $this->endlinex + $this->cMargin - (($no - $ns) * $one_space_width);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t// calculate additional space to add to each space\n\t\t\t\t\t\t\t\t\t$spacelen = $one_space_width;\n\t\t\t\t\t\t\t\t\t$spacewidth = ((($tw - $linew) + (($no - $ns) * $spacelen)) / ($ns?$ns:1)) * $this->k;\n\t\t\t\t\t\t\t\t\t$spacewidthu = -1000 * (($tw - $linew) + ($no * $spacelen)) / ($ns?$ns:1) / $this->FontSize;\n\t\t\t\t\t\t\t\t\t$nsmax = $ns;\n\t\t\t\t\t\t\t\t\t$ns = 0;\n\t\t\t\t\t\t\t\t\treset($lnstring);\n\t\t\t\t\t\t\t\t\t$offset = 0;\n\t\t\t\t\t\t\t\t\t$strcount = 0;\n\t\t\t\t\t\t\t\t\t$prev_epsposbeg = 0;\n\t\t\t\t\t\t\t\t\t$textpos = 0;\n\t\t\t\t\t\t\t\t\tif ($this->isRTLTextDir()) {\n\t\t\t\t\t\t\t\t\t\t$textpos = $this->wPt;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tglobal $spacew;\n\t\t\t\t\t\t\t\t\twhile (preg_match('/([0-9\\.\\+\\-]*)[\\s](Td|cm|m|l|c|re)[\\s]/x', $pmid, $strpiece, PREG_OFFSET_CAPTURE, $offset) == 1) {\n\t\t\t\t\t\t\t\t\t\t// check if we are inside a string section '[( ... )]'\n\t\t\t\t\t\t\t\t\t\t$stroffset = strpos($pmid, '[(', $offset);\n\t\t\t\t\t\t\t\t\t\tif (($stroffset !== false) AND ($stroffset <= $strpiece[2][1])) {\n\t\t\t\t\t\t\t\t\t\t\t// set offset to the end of string section\n\t\t\t\t\t\t\t\t\t\t\t$offset = strpos($pmid, ')]', $stroffset);\n\t\t\t\t\t\t\t\t\t\t\twhile (($offset !== false) AND ($pmid{($offset - 1)} == '\\\\')) {\n\t\t\t\t\t\t\t\t\t\t\t\t$offset = strpos($pmid, ')]', ($offset + 1));\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tif ($offset === false) {\n\t\t\t\t\t\t\t\t\t\t\t\t$this->Error('HTML Justification: malformed PDF code.');\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tif ($this->isRTLTextDir()) {\n\t\t\t\t\t\t\t\t\t\t\t$spacew = ($spacewidth * ($nsmax - $ns));\n\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t$spacew = ($spacewidth * $ns);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t$offset = $strpiece[2][1] + strlen($strpiece[2][0]);\n\t\t\t\t\t\t\t\t\t\t$epsposbeg = strpos($pmid, 'q'.$this->epsmarker, $offset);\n\t\t\t\t\t\t\t\t\t\t$epsposend = strpos($pmid, $this->epsmarker.'Q', $offset) + strlen($this->epsmarker.'Q');\n\t\t\t\t\t\t\t\t\t\tif ((($epsposbeg > 0) AND ($epsposend > 0) AND ($offset > $epsposbeg) AND ($offset < $epsposend))\n\t\t\t\t\t\t\t\t\t\t\tOR (($epsposbeg === false) AND ($epsposend > 0) AND ($offset < $epsposend))) {\n\t\t\t\t\t\t\t\t\t\t\t// shift EPS images\n\t\t\t\t\t\t\t\t\t\t\t$trx = sprintf('1 0 0 1 %.3F 0 cm', $spacew);\n\t\t\t\t\t\t\t\t\t\t\t$epsposbeg = strpos($pmid, 'q'.$this->epsmarker, ($prev_epsposbeg - 6));\n\t\t\t\t\t\t\t\t\t\t\t$pmid_b = substr($pmid, 0, $epsposbeg);\n\t\t\t\t\t\t\t\t\t\t\t$pmid_m = substr($pmid, $epsposbeg, ($epsposend - $epsposbeg));\n\t\t\t\t\t\t\t\t\t\t\t$pmid_e = substr($pmid, $epsposend);\n\t\t\t\t\t\t\t\t\t\t\t$pmid = $pmid_b.\"\\nq\\n\".$trx.\"\\n\".$pmid_m.\"\\nQ\\n\".$pmid_e;\n\t\t\t\t\t\t\t\t\t\t\t$offset = $epsposend;\n\t\t\t\t\t\t\t\t\t\t\tcontinue;\n\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t$prev_epsposbeg = $epsposbeg;\n\t\t\t\t\t\t\t\t\t\t$currentxpos = 0;\n\t\t\t\t\t\t\t\t\t\t// shift blocks of code\n\t\t\t\t\t\t\t\t\t\tswitch ($strpiece[2][0]) {\n\t\t\t\t\t\t\t\t\t\t\tcase 'Td':\n\t\t\t\t\t\t\t\t\t\t\tcase 'cm':\n\t\t\t\t\t\t\t\t\t\t\tcase 'm':\n\t\t\t\t\t\t\t\t\t\t\tcase 'l': {\n\t\t\t\t\t\t\t\t\t\t\t\t// get current X position\n\t\t\t\t\t\t\t\t\t\t\t\tpreg_match('/([0-9\\.\\+\\-]*)[\\s]('.$strpiece[1][0].')[\\s]('.$strpiece[2][0].')([\\s]*)/x', $pmid, $xmatches);\n\t\t\t\t\t\t\t\t\t\t\t\t$currentxpos = $xmatches[1];\n\t\t\t\t\t\t\t\t\t\t\t\t$textpos = $currentxpos;\n\t\t\t\t\t\t\t\t\t\t\t\tif (($strcount <= $maxkk) AND ($strpiece[2][0] == 'Td')) {\n\t\t\t\t\t\t\t\t\t\t\t\t\tif ($strcount == $maxkk) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tif ($this->isRTLTextDir()) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t$tvalue = $lnstring[1][$strcount];\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t$tvalue = rtrim($lnstring[1][$strcount]);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t$tvalue = $lnstring[1][$strcount];\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t$ns += substr_count($tvalue, $spacestr);\n\t\t\t\t\t\t\t\t\t\t\t\t\t++$strcount;\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\tif ($this->isRTLTextDir()) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t$spacew = ($spacewidth * ($nsmax - $ns));\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t// justify block\n\t\t\t\t\t\t\t\t\t\t\t\t$pmid = preg_replace_callback('/([0-9\\.\\+\\-]*)[\\s]('.$strpiece[1][0].')[\\s]('.$strpiece[2][0].')([\\s]*)/x',\n\t\t\t\t\t\t\t\t\t\t\t\t\tcreate_function('$matches', 'global $spacew;\n\t\t\t\t\t\t\t\t\t\t\t\t\t$newx = sprintf(\"%.2F\",(floatval($matches[1]) + $spacew));\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn \"\".$newx.\" \".$matches[2].\" x*#!#*x\".$matches[3].$matches[4];'), $pmid, 1);\n\t\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tcase 're': {\n\t\t\t\t\t\t\t\t\t\t\t\t// justify block\n\t\t\t\t\t\t\t\t\t\t\t\tpreg_match('/([0-9\\.\\+\\-]*)[\\s]([0-9\\.\\+\\-]*)[\\s]([0-9\\.\\+\\-]*)[\\s]('.$strpiece[1][0].')[\\s](re)([\\s]*)/x', $pmid, $xmatches);\n\t\t\t\t\t\t\t\t\t\t\t\t$currentxpos = $xmatches[1];\n\t\t\t\t\t\t\t\t\t\t\t\tglobal $x_diff, $w_diff;\n\t\t\t\t\t\t\t\t\t\t\t\t$x_diff = 0;\n\t\t\t\t\t\t\t\t\t\t\t\t$w_diff = 0;\n\t\t\t\t\t\t\t\t\t\t\t\tif ($this->isRTLTextDir()) { // RTL\n\t\t\t\t\t\t\t\t\t\t\t\t\tif ($currentxpos < $textpos) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t$x_diff = ($spacewidth * ($nsmax - $lnstring[5][$strcount]));\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t$w_diff = ($spacewidth * $lnstring[3][$strcount]);\n\t\t\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tif ($strcount > 0) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t$x_diff = ($spacewidth * ($nsmax - $lnstring[5][($strcount - 1)]));\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t$w_diff = ($spacewidth * $lnstring[3][($strcount - 1)]);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t} else { // LTR\n\t\t\t\t\t\t\t\t\t\t\t\t\tif ($currentxpos > $textpos) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tif ($strcount > 0) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t$x_diff = ($spacewidth * $lnstring[4][($strcount - 1)]);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t$w_diff = ($spacewidth * $lnstring[3][$strcount]);\n\t\t\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tif ($strcount > 1) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t$x_diff = ($spacewidth * $lnstring[4][($strcount - 2)]);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tif ($strcount > 0) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t$w_diff = ($spacewidth * $lnstring[3][($strcount - 1)]);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t$pmid = preg_replace_callback('/('.$xmatches[1].')[\\s]('.$xmatches[2].')[\\s]('.$xmatches[3].')[\\s]('.$strpiece[1][0].')[\\s](re)([\\s]*)/x',\n\t\t\t\t\t\t\t\t\t\t\t\t\tcreate_function('$matches', 'global $x_diff, $w_diff;\n\t\t\t\t\t\t\t\t\t\t\t\t\t$newx = sprintf(\"%.2F\",(floatval($matches[1]) + $x_diff));\n\t\t\t\t\t\t\t\t\t\t\t\t\t$neww = sprintf(\"%.2F\",(floatval($matches[3]) + $w_diff));\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn \"\".$newx.\" \".$matches[2].\" \".$neww.\" \".$matches[4].\" x*#!#*x\".$matches[5].$matches[6];'), $pmid, 1);\n\t\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tcase 'c': {\n\t\t\t\t\t\t\t\t\t\t\t\t// get current X position\n\t\t\t\t\t\t\t\t\t\t\t\tpreg_match('/([0-9\\.\\+\\-]*)[\\s]([0-9\\.\\+\\-]*)[\\s]([0-9\\.\\+\\-]*)[\\s]([0-9\\.\\+\\-]*)[\\s]([0-9\\.\\+\\-]*)[\\s]('.$strpiece[1][0].')[\\s](c)([\\s]*)/x', $pmid, $xmatches);\n\t\t\t\t\t\t\t\t\t\t\t\t$currentxpos = $xmatches[1];\n\t\t\t\t\t\t\t\t\t\t\t\t// justify block\n\t\t\t\t\t\t\t\t\t\t\t\t$pmid = preg_replace_callback('/('.$xmatches[1].')[\\s]('.$xmatches[2].')[\\s]('.$xmatches[3].')[\\s]('.$xmatches[4].')[\\s]('.$xmatches[5].')[\\s]('.$strpiece[1][0].')[\\s](c)([\\s]*)/x',\n\t\t\t\t\t\t\t\t\t\t\t\t\tcreate_function('$matches', 'global $spacew;\n\t\t\t\t\t\t\t\t\t\t\t\t\t$newx1 = sprintf(\"%.3F\",(floatval($matches[1]) + $spacew));\n\t\t\t\t\t\t\t\t\t\t\t\t\t$newx2 = sprintf(\"%.3F\",(floatval($matches[3]) + $spacew));\n\t\t\t\t\t\t\t\t\t\t\t\t\t$newx3 = sprintf(\"%.3F\",(floatval($matches[5]) + $spacew));\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn \"\".$newx1.\" \".$matches[2].\" \".$newx2.\" \".$matches[4].\" \".$newx3.\" \".$matches[6].\" x*#!#*x\".$matches[7].$matches[8];'), $pmid, 1);\n\t\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t// shift the annotations and links\n\t\t\t\t\t\t\t\t\t\tif (isset($this->PageAnnots[$this->page])) {\n\t\t\t\t\t\t\t\t\t\t\t$cxpos = ($currentxpos / $this->k);\n\t\t\t\t\t\t\t\t\t\t\t$lmpos = ($this->lMargin + $this->cMargin + $this->feps);\n\t\t\t\t\t\t\t\t\t\t\tforeach ($this->PageAnnots[$this->page] as $pak => $pac) {\n\t\t\t\t\t\t\t\t\t\t\t\tif (($pac['y'] >= $minstartliney) AND (($pac['x'] * $this->k) >= ($currentxpos - $this->feps)) AND (($pac['x'] * $this->k) <= ($currentxpos + $this->feps))) {\n\t\t\t\t\t\t\t\t\t\t\t\t\tif ($cxpos > $lmpos) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t$this->PageAnnots[$this->page][$pak]['x'] += (($spacew - $one_space_width) / $this->k);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t$this->PageAnnots[$this->page][$pak]['w'] += (($spacewidth * $pac['numspaces']) / $this->k);\n\t\t\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t$this->PageAnnots[$this->page][$pak]['w'] += ((($spacewidth * $pac['numspaces']) - $one_space_width) / $this->k);\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t} // end of while\n\t\t\t\t\t\t\t\t\t// remove markers\n\t\t\t\t\t\t\t\t\t$pmid = str_replace('x*#!#*x', '', $pmid);\n\t\t\t\t\t\t\t\t\tif (($this->CurrentFont['type'] == 'TrueTypeUnicode') OR ($this->CurrentFont['type'] == 'cidfont0')) {\n\t\t\t\t\t\t\t\t\t\t// multibyte characters\n\t\t\t\t\t\t\t\t\t\t$spacew = $spacewidthu;\n\t\t\t\t\t\t\t\t\t\t$pmidtemp = $pmid;\n\t\t\t\t\t\t\t\t\t\t// escape special characters\n\t\t\t\t\t\t\t\t\t\t$pmidtemp = preg_replace('/[\\\\\\][\\(]/x', '\\\\#!#OP#!#', $pmidtemp);\n\t\t\t\t\t\t\t\t\t\t$pmidtemp = preg_replace('/[\\\\\\][\\)]/x', '\\\\#!#CP#!#', $pmidtemp);\n\t\t\t\t\t\t\t\t\t\t$pmid = preg_replace_callback(\"/\\[\\(([^\\)]*)\\)\\]/x\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tcreate_function('$matches', 'global $spacew;\n\t\t\t\t\t\t\t\t\t\t\t\t\t$matches[1] = str_replace(\"#!#OP#!#\", \"(\", $matches[1]);\n\t\t\t\t\t\t\t\t\t\t\t\t\t$matches[1] = str_replace(\"#!#CP#!#\", \")\", $matches[1]);\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn \"[(\".str_replace(chr(0).chr(32), \") \".sprintf(\"%.3F\", $spacew).\" (\", $matches[1]).\")]\";'), $pmidtemp);\n\t\t\t\t\t\t\t\t\t\t$this->setPageBuffer($startlinepage, $pstart.\"\\n\".$pmid.\"\\n\".$pend);\n\t\t\t\t\t\t\t\t\t\t$endlinepos = strlen($pstart.\"\\n\".$pmid.\"\\n\");\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t// non-unicode (single-byte characters)\n\t\t\t\t\t\t\t\t\t\t$rs = sprintf('%.3F Tw', $spacewidth);\n\t\t\t\t\t\t\t\t\t\t$pmid = preg_replace(\"/\\[\\(/x\", $rs.' [(', $pmid);\n\t\t\t\t\t\t\t\t\t\t$this->setPageBuffer($startlinepage, $pstart.\"\\n\".$pmid.\"\\nBT 0 Tw ET\\n\".$pend);\n\t\t\t\t\t\t\t\t\t\t$endlinepos = strlen($pstart.\"\\n\".$pmid.\"\\nBT 0 Tw ET\\n\");\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} // end of J\n\t\t\t\t\t\t} // end if $startlinex\n\t\t\t\t\t\tif (($t_x != 0) OR ($yshift < 0)) {\n\t\t\t\t\t\t\t// shift the line\n\t\t\t\t\t\t\t$trx = sprintf('1 0 0 1 %.3F %.3F cm', ($t_x * $this->k), ($yshift * $this->k));\n\t\t\t\t\t\t\t$this->setPageBuffer($startlinepage, $pstart.\"\\nq\\n\".$trx.\"\\n\".$pmid.\"\\nQ\\n\".$pend);\n\t\t\t\t\t\t\t$endlinepos = strlen($pstart.\"\\nq\\n\".$trx.\"\\n\".$pmid.\"\\nQ\\n\");\n\t\t\t\t\t\t\t// shift the annotations and links\n\t\t\t\t\t\t\tif (isset($this->PageAnnots[$this->page])) {\n\t\t\t\t\t\t\t\tforeach ($this->PageAnnots[$this->page] as $pak => $pac) {\n\t\t\t\t\t\t\t\t\tif ($pak >= $pask) {\n\t\t\t\t\t\t\t\t\t\t$this->PageAnnots[$this->page][$pak]['x'] += $t_x;\n\t\t\t\t\t\t\t\t\t\t$this->PageAnnots[$this->page][$pak]['y'] -= $yshift;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$this->y -= $yshift;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t$this->newline = false;\n\t\t\t\t\t$pbrk = $this->checkPageBreak($this->lasth);\n\t\t\t\t\t$startlinex = $this->x;\n\t\t\t\t\t$startliney = $this->y;\n\t\t\t\t\t$minstartliney = $startliney;\n\t\t\t\t\t$maxbottomliney = ($this->y + (($fontsize * $this->cell_height_ratio) / $this->k));\n\t\t\t\t\t$startlinepage = $this->page;\n\t\t\t\t\tif (isset($endlinepos) AND (!$pbrk)) {\n\t\t\t\t\t\t$startlinepos = $endlinepos;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (!$this->InFooter) {\n\t\t\t\t\t\t\tif (isset($this->footerlen[$this->page])) {\n\t\t\t\t\t\t\t\t$this->footerpos[$this->page] = $this->pagelen[$this->page] - $this->footerlen[$this->page];\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$this->footerpos[$this->page] = $this->pagelen[$this->page];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$startlinepos = $this->footerpos[$this->page];\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$startlinepos = $this->pagelen[$this->page];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tunset($endlinepos);\n\t\t\t\t\t$plalign = $lalign;\n\t\t\t\t\tif (isset($this->PageAnnots[$this->page])) {\n\t\t\t\t\t\t$pask = count($this->PageAnnots[$this->page]);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$pask = 0;\n\t\t\t\t\t}\n\t\t\t\t\t$this->SetFont($fontname, $fontstyle, $fontsize);\n\t\t\t\t\tif ($wfill) {\n\t\t\t\t\t\t$this->SetFillColorArray($this->bgcolor);\n\t\t\t\t\t}\n\t\t\t\t} // end newline\n\t\t\t\tif (isset($opentagpos)) {\n\t\t\t\t\tunset($opentagpos);\n\t\t\t\t}\n\t\t\t\tif ($dom[$key]['tag']) {\n\t\t\t\t\tif ($dom[$key]['opening']) {\n\t\t\t\t\t\t// get text indentation (if any)\n\t\t\t\t\t\tif (isset($dom[$key]['text-indent']) AND $dom[$key]['block']) {\n\t\t\t\t\t\t\t$this->textindent = $dom[$key]['text-indent'];\n\t\t\t\t\t\t\t$this->newline = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ($dom[$key]['value'] == 'table') {\n\t\t\t\t\t\t\t// available page width\n\t\t\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t\t\t$wtmp = $this->x - $this->lMargin;\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$wtmp = $this->w - $this->rMargin - $this->x;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (isset($dom[$key]['attribute']['nested']) AND ($dom[$key]['attribute']['nested'] == 'true')) {\n\t\t\t\t\t\t\t\t// add margin for nested tables\n\t\t\t\t\t\t\t\t$wtmp -= $this->cMargin;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// table width\n\t\t\t\t\t\t\tif (isset($dom[$key]['width'])) {\n\t\t\t\t\t\t\t\t$table_width = $this->getHTMLUnitToUnits($dom[$key]['width'], $wtmp, 'px');\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$table_width = $wtmp;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (($dom[$key]['value'] == 'td') OR ($dom[$key]['value'] == 'th')) {\n\t\t\t\t\t\t\t$trid = $dom[$key]['parent'];\n\t\t\t\t\t\t\t$table_el = $dom[$trid]['parent'];\n\t\t\t\t\t\t\tif (!isset($dom[$table_el]['cols'])) {\n\t\t\t\t\t\t\t\t$dom[$table_el]['cols'] = $dom[$trid]['cols'];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$oldmargin = $this->cMargin;\n\t\t\t\t\t\t\tif (isset($dom[($dom[$trid]['parent'])]['attribute']['cellpadding'])) {\n\t\t\t\t\t\t\t\t$currentcmargin = $this->getHTMLUnitToUnits($dom[($dom[$trid]['parent'])]['attribute']['cellpadding'], 1, 'px');\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$currentcmargin = 0;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$this->cMargin = $currentcmargin;\n\t\t\t\t\t\t\tif (isset($dom[($dom[$trid]['parent'])]['attribute']['cellspacing'])) {\n\t\t\t\t\t\t\t\t$cellspacing = $this->getHTMLUnitToUnits($dom[($dom[$trid]['parent'])]['attribute']['cellspacing'], 1, 'px');\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$cellspacing = 0;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t\t\t$cellspacingx = -$cellspacing;\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$cellspacingx = $cellspacing;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$colspan = $dom[$key]['attribute']['colspan'];\n\t\t\t\t\t\t\t$table_columns_width = ($table_width - ($cellspacing * ($dom[$table_el]['cols'] - 1)));\n\t\t\t\t\t\t\t$wtmp = ($colspan * ($table_columns_width / $dom[$table_el]['cols'])) + (($colspan - 1) * $cellspacing);\n\t\t\t\t\t\t\tif (isset($dom[$key]['width'])) {\n\t\t\t\t\t\t\t\t$cellw = $this->getHTMLUnitToUnits($dom[$key]['width'], $table_columns_width, 'px');\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$cellw = $wtmp;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (isset($dom[$key]['height'])) {\n\t\t\t\t\t\t\t\t// minimum cell height\n\t\t\t\t\t\t\t\t$cellh = $this->getHTMLUnitToUnits($dom[$key]['height'], 0, 'px');\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$cellh = 0;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (isset($dom[$key]['content'])) {\n\t\t\t\t\t\t\t\t$cell_content = $dom[$key]['content'];\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$cell_content = '&nbsp;';\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$tagtype = $dom[$key]['value'];\n\t\t\t\t\t\t\t$parentid = $key;\n\t\t\t\t\t\t\twhile (($key < $maxel) AND (!(($dom[$key]['tag']) AND (!$dom[$key]['opening']) AND ($dom[$key]['value'] == $tagtype) AND ($dom[$key]['parent'] == $parentid)))) {\n\t\t\t\t\t\t\t\t// move $key index forward\n\t\t\t\t\t\t\t\t++$key;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (!isset($dom[$trid]['startpage'])) {\n\t\t\t\t\t\t\t\t$dom[$trid]['startpage'] = $this->page;\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$this->setPage($dom[$trid]['startpage']);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (!isset($dom[$trid]['starty'])) {\n\t\t\t\t\t\t\t\t$dom[$trid]['starty'] = $this->y;\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$this->y = $dom[$trid]['starty'];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (!isset($dom[$trid]['startx'])) {\n\t\t\t\t\t\t\t\t$dom[$trid]['startx'] = $this->x;\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$this->x += ($cellspacingx / 2);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (isset($dom[$parentid]['attribute']['rowspan'])) {\n\t\t\t\t\t\t\t\t$rowspan = intval($dom[$parentid]['attribute']['rowspan']);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$rowspan = 1;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// skip row-spanned cells started on the previous rows\n\t\t\t\t\t\t\tif (isset($dom[$table_el]['rowspans'])) {\n\t\t\t\t\t\t\t\t$rsk = 0;\n\t\t\t\t\t\t\t\t$rskmax = count($dom[$table_el]['rowspans']);\n\t\t\t\t\t\t\t\twhile ($rsk < $rskmax) {\n\t\t\t\t\t\t\t\t\t$trwsp = $dom[$table_el]['rowspans'][$rsk];\n\t\t\t\t\t\t\t\t\t$rsstartx = $trwsp['startx'];\n\t\t\t\t\t\t\t\t\t$rsendx = $trwsp['endx'];\n\t\t\t\t\t\t\t\t\t// account for margin changes\n\t\t\t\t\t\t\t\t\tif ($trwsp['startpage'] < $this->page) {\n\t\t\t\t\t\t\t\t\t\tif (($this->rtl) AND ($this->pagedim[$this->page]['orm'] != $this->pagedim[$trwsp['startpage']]['orm'])) {\n\t\t\t\t\t\t\t\t\t\t\t$dl = ($this->pagedim[$this->page]['orm'] - $this->pagedim[$trwsp['startpage']]['orm']);\n\t\t\t\t\t\t\t\t\t\t\t$rsstartx -= $dl;\n\t\t\t\t\t\t\t\t\t\t\t$rsendx -= $dl;\n\t\t\t\t\t\t\t\t\t\t} elseif ((!$this->rtl) AND ($this->pagedim[$this->page]['olm'] != $this->pagedim[$trwsp['startpage']]['olm'])) {\n\t\t\t\t\t\t\t\t\t\t\t$dl = ($this->pagedim[$this->page]['olm'] - $this->pagedim[$trwsp['startpage']]['olm']);\n\t\t\t\t\t\t\t\t\t\t\t$rsstartx += $dl;\n\t\t\t\t\t\t\t\t\t\t\t$rsendx += $dl;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tif  (($trwsp['rowspan'] > 0)\n\t\t\t\t\t\t\t\t\t\tAND ($rsstartx > ($this->x - $cellspacing - $currentcmargin - $this->feps))\n\t\t\t\t\t\t\t\t\t\tAND ($rsstartx < ($this->x + $cellspacing + $currentcmargin + $this->feps))\n\t\t\t\t\t\t\t\t\t\tAND (($trwsp['starty'] < ($this->y - $this->feps)) OR ($trwsp['startpage'] < $this->page))) {\n\t\t\t\t\t\t\t\t\t\t// set the starting X position of the current cell\n\t\t\t\t\t\t\t\t\t\t$this->x = $rsendx + $cellspacingx;\n\t\t\t\t\t\t\t\t\t\tif (($trwsp['rowspan'] == 1)\n\t\t\t\t\t\t\t\t\t\t\tAND (isset($dom[$trid]['endy']))\n\t\t\t\t\t\t\t\t\t\t\tAND (isset($dom[$trid]['endpage']))\n\t\t\t\t\t\t\t\t\t\t\tAND ($trwsp['endpage'] == $dom[$trid]['endpage'])) {\n\t\t\t\t\t\t\t\t\t\t\t// set ending Y position for row\n\t\t\t\t\t\t\t\t\t\t\t$dom[$table_el]['rowspans'][$rsk]['endy'] = max($dom[$trid]['endy'], $trwsp['endy']);\n\t\t\t\t\t\t\t\t\t\t\t$dom[$trid]['endy'] = $dom[$table_el]['rowspans'][$rsk]['endy'];\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t$rsk = 0;\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t++$rsk;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// add rowspan information to table element\n\t\t\t\t\t\t\tif ($rowspan > 1) {\n\t\t\t\t\t\t\t\t$trsid = array_push($dom[$table_el]['rowspans'], array('trid' => $trid, 'rowspan' => $rowspan, 'mrowspan' => $rowspan, 'colspan' => $colspan, 'startpage' => $this->page, 'startx' => $this->x, 'starty' => $this->y));\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$cellid = array_push($dom[$trid]['cellpos'], array('startx' => $this->x));\n\t\t\t\t\t\t\tif ($rowspan > 1) {\n\t\t\t\t\t\t\t\t$dom[$trid]['cellpos'][($cellid - 1)]['rowspanid'] = ($trsid - 1);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// push background colors\n\t\t\t\t\t\t\tif (isset($dom[$parentid]['bgcolor']) AND ($dom[$parentid]['bgcolor'] !== false)) {\n\t\t\t\t\t\t\t\t$dom[$trid]['cellpos'][($cellid - 1)]['bgcolor'] = $dom[$parentid]['bgcolor'];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$prevLastH = $this->lasth;\n\t\t\t\t\t\t\t// ****** write the cell content ******\n\t\t\t\t\t\t\t$this->MultiCell($cellw, $cellh, $cell_content, false, $lalign, false, 2, '', '', true, 0, true);\n\t\t\t\t\t\t\t$this->lasth = $prevLastH;\n\t\t\t\t\t\t\t$this->cMargin = $oldmargin;\n\t\t\t\t\t\t\t$dom[$trid]['cellpos'][($cellid - 1)]['endx'] = $this->x;\n\t\t\t\t\t\t\t// update the end of row position\n\t\t\t\t\t\t\tif ($rowspan <= 1) {\n\t\t\t\t\t\t\t\tif (isset($dom[$trid]['endy'])) {\n\t\t\t\t\t\t\t\t\tif ($this->page == $dom[$trid]['endpage']) {\n\t\t\t\t\t\t\t\t\t\t$dom[$trid]['endy'] = max($this->y, $dom[$trid]['endy']);\n\t\t\t\t\t\t\t\t\t} elseif ($this->page > $dom[$trid]['endpage']) {\n\t\t\t\t\t\t\t\t\t\t$dom[$trid]['endy'] = $this->y;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t$dom[$trid]['endy'] = $this->y;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (isset($dom[$trid]['endpage'])) {\n\t\t\t\t\t\t\t\t\t$dom[$trid]['endpage'] = max($this->page, $dom[$trid]['endpage']);\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t$dom[$trid]['endpage'] = $this->page;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t// account for row-spanned cells\n\t\t\t\t\t\t\t\t$dom[$table_el]['rowspans'][($trsid - 1)]['endx'] = $this->x;\n\t\t\t\t\t\t\t\t$dom[$table_el]['rowspans'][($trsid - 1)]['endy'] = $this->y;\n\t\t\t\t\t\t\t\t$dom[$table_el]['rowspans'][($trsid - 1)]['endpage'] = $this->page;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (isset($dom[$table_el]['rowspans'])) {\n\t\t\t\t\t\t\t\t// update endy and endpage on rowspanned cells\n\t\t\t\t\t\t\t\tforeach ($dom[$table_el]['rowspans'] as $k => $trwsp) {\n\t\t\t\t\t\t\t\t\tif ($trwsp['rowspan'] > 0) {\n\t\t\t\t\t\t\t\t\t\tif (isset($dom[$trid]['endpage'])) {\n\t\t\t\t\t\t\t\t\t\t\tif ($trwsp['endpage'] == $dom[$trid]['endpage']) {\n\t\t\t\t\t\t\t\t\t\t\t\t$dom[$table_el]['rowspans'][$k]['endy'] = max($dom[$trid]['endy'], $trwsp['endy']);\n\t\t\t\t\t\t\t\t\t\t\t} elseif ($trwsp['endpage'] < $dom[$trid]['endpage']) {\n\t\t\t\t\t\t\t\t\t\t\t\t$dom[$table_el]['rowspans'][$k]['endy'] = $dom[$trid]['endy'];\n\t\t\t\t\t\t\t\t\t\t\t\t$dom[$table_el]['rowspans'][$k]['endpage'] = $dom[$trid]['endpage'];\n\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\t$dom[$trid]['endy'] = $this->pagedim[$dom[$trid]['endpage']]['hk'] - $this->pagedim[$dom[$trid]['endpage']]['bm'];\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$this->x += ($cellspacingx / 2);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// opening tag (or self-closing tag)\n\t\t\t\t\t\t\tif (!isset($opentagpos)) {\n\t\t\t\t\t\t\t\tif (!$this->InFooter) {\n\t\t\t\t\t\t\t\t\tif (isset($this->footerlen[$this->page])) {\n\t\t\t\t\t\t\t\t\t\t$this->footerpos[$this->page] = $this->pagelen[$this->page] - $this->footerlen[$this->page];\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t$this->footerpos[$this->page] = $this->pagelen[$this->page];\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t$opentagpos = $this->footerpos[$this->page];\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$this->openHTMLTagHandler($dom, $key, $cell);\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// closing tag\n\t\t\t\t\t\t$this->closeHTMLTagHandler($dom, $key, $cell, $maxbottomliney);\n\t\t\t\t\t}\n\t\t\t\t} elseif (strlen($dom[$key]['value']) > 0) {\n\t\t\t\t\t// print list-item\n\t\t\t\t\tif (!$this->empty_string($this->lispacer)) {\n\t\t\t\t\t\t$this->SetFont($pfontname, $pfontstyle, $pfontsize);\n\t\t\t\t\t\t$this->lasth = $this->FontSize * $this->cell_height_ratio;\n\t\t\t\t\t\t$minstartliney = $this->y;\n\t\t\t\t\t\t$maxbottomliney = ($startliney + ($this->FontSize * $this->cell_height_ratio));\n\t\t\t\t\t\t$this->putHtmlListBullet($this->listnum, $this->lispacer, $pfontsize);\n\t\t\t\t\t\t$this->SetFont($curfontname, $curfontstyle, $curfontsize);\n\t\t\t\t\t\t$this->lasth = $this->FontSize * $this->cell_height_ratio;\n\t\t\t\t\t\tif (is_numeric($pfontsize) AND ($pfontsize > 0) AND is_numeric($curfontsize) AND ($curfontsize > 0) AND ($pfontsize != $curfontsize)) {\n\t\t\t\t\t\t\t$pfontascent = $this->getFontAscent($pfontname, $pfontstyle, $pfontsize);\n\t\t\t\t\t\t\t$pfontdescent = $this->getFontDescent($pfontname, $pfontstyle, $pfontsize);\n\t\t\t\t\t\t\t$this->y += ((($pfontsize - $curfontsize) * $this->cell_height_ratio / $this->k) + $pfontascent - $curfontascent - $pfontdescent + $curfontdescent) / 2;\n\t\t\t\t\t\t\t$minstartliney = min($this->y, $minstartliney);\n\t\t\t\t\t\t\t$maxbottomliney = max(($this->y + (($pfontsize * $this->cell_height_ratio) / $this->k)), $maxbottomliney);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t// text\n\t\t\t\t\t$this->htmlvspace = 0;\n\t\t\t\t\tif ((!$this->premode) AND $this->isRTLTextDir()) {\n\t\t\t\t\t\t// reverse spaces order\n\t\t\t\t\t\t$len1 = strlen($dom[$key]['value']);\n\t\t\t\t\t\t$lsp = $len1 - strlen(ltrim($dom[$key]['value']));\n\t\t\t\t\t\t$rsp = $len1 - strlen(rtrim($dom[$key]['value']));\n\t\t\t\t\t\t$tmpstr = '';\n\t\t\t\t\t\tif ($rsp > 0) {\n\t\t\t\t\t\t\t$tmpstr .= substr($dom[$key]['value'], -$rsp);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$tmpstr .= trim($dom[$key]['value']);\n\t\t\t\t\t\tif ($lsp > 0) {\n\t\t\t\t\t\t\t$tmpstr .= substr($dom[$key]['value'], 0, $lsp);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$dom[$key]['value'] = $tmpstr;\n\t\t\t\t\t}\n\t\t\t\t\tif ($newline) {\n\t\t\t\t\t\tif (!$this->premode) {\n\t\t\t\t\t\t\t$prelen = strlen($dom[$key]['value']);\n\t\t\t\t\t\t\tif ($this->isRTLTextDir()) {\n\t\t\t\t\t\t\t\t$dom[$key]['value'] = rtrim($dom[$key]['value']).chr(0);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$dom[$key]['value'] = ltrim($dom[$key]['value']);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$postlen = strlen($dom[$key]['value']);\n\t\t\t\t\t\t\tif (($postlen == 0) AND ($prelen > 0)) {\n\t\t\t\t\t\t\t\t$dom[$key]['trimmed_space'] = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$newline = false;\n\t\t\t\t\t\t$firstblock = true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$firstblock = false;\n\t\t\t\t\t}\n\t\t\t\t\t$strrest = '';\n\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t$this->x -= $this->textindent;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->x += $this->textindent;\n\t\t\t\t\t}\n\t\t\t\t\tif (!empty($this->HREF) AND (isset($this->HREF['url']))) {\n\t\t\t\t\t\t// HTML <a> Link\n\t\t\t\t\t\t$strrest = $this->addHtmlLink($this->HREF['url'], $dom[$key]['value'], $wfill, true, $this->HREF['color'], $this->HREF['style'], true);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// ****** write only until the end of the line and get the rest ******\n\t\t\t\t\t\t$strrest = $this->Write($this->lasth, $dom[$key]['value'], '', $wfill, '', false, 0, true, $firstblock, 0);\n\t\t\t\t\t}\n\t\t\t\t\t$this->textindent = 0;\n\n\t\t\t\t\tif (strlen($strrest) > 0) {\n\t\t\t\t\t\t// store the remaining string on the previous $key position\n\t\t\t\t\t\t$this->newline = true;\n\t\t\t\t\t\tif ($cell) {\n\t\t\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t\t\t$this->x -= $this->cMargin;\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$this->x += $this->cMargin;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ($strrest == $dom[$key]['value']) {\n\t\t\t\t\t\t\t// used to avoid infinite loop\n\t\t\t\t\t\t\t++$loop;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$loop = 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (!empty($this->HREF) AND (isset($this->HREF['url']))) {\n\t\t\t\t\t\t\t$dom[$key]['value'] = trim($strrest);\n\t\t\t\t\t\t} elseif ($this->premode) {\n\t\t\t\t\t\t\t$dom[$key]['value'] = $strrest;\n\t\t\t\t\t\t} elseif ($this->isRTLTextDir()) {\n\t\t\t\t\t\t\t$dom[$key]['value'] = rtrim($strrest);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$dom[$key]['value'] = ltrim($strrest);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ($loop < 3) {\n\t\t\t\t\t\t\t--$key;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$loop = 0;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t++$key;\n\t\t\t\tif (isset($dom[$key]['tag']) AND $dom[$key]['tag'] AND (!isset($dom[$key]['opening']) OR !$dom[$key]['opening']) AND isset($dom[($dom[$key]['parent'])]['attribute']['nobr']) AND ($dom[($dom[$key]['parent'])]['attribute']['nobr'] == 'true')) {\n\t\t\t\t\tif ( (!$undo) AND (($this->start_transaction_page == ($this->numpages - 1)) OR ($this->y < $this->start_transaction_y))) {\n\t\t\t\t\t\t// restore previous object\n\t\t\t\t\t\t$this->rollbackTransaction(true);\n\t\t\t\t\t\t// restore previous values\n\t\t\t\t\t\tforeach ($this_method_vars as $vkey => $vval) {\n\t\t\t\t\t\t\t$$vkey = $vval;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// add a page (or trig AcceptPageBreak() for multicolumn mode)\n\t\t\t\t\t\t$pre_y = $this->y;\n\t\t\t\t\t\tif ((!$this->checkPageBreak($this->PageBreakTrigger + 1)) AND ($this->y < $pre_y)) {\n\t\t\t\t\t\t\t$startliney = $this->y;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$undo = true; // avoid infinite loop\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$undo = false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} // end for each $key\n\t\t\t// align the last line\n\t\t\tif (isset($startlinex)) {\n\t\t\t\t$yshift = $minstartliney - $startliney;\n\t\t\t\tif (($yshift > 0) OR ($this->page > $startlinepage)) {\n\t\t\t\t\t$yshift = 0;\n\t\t\t\t}\n\t\t\t\t$t_x = 0;\n\t\t\t\t// the last line must be shifted to be aligned as requested\n\t\t\t\t$linew = abs($this->endlinex - $startlinex);\n\t\t\t\t$pstart = substr($this->getPageBuffer($startlinepage), 0, $startlinepos);\n\t\t\t\tif (isset($opentagpos) AND isset($this->footerlen[$startlinepage]) AND (!$this->InFooter)) {\n\t\t\t\t\t$this->footerpos[$startlinepage] = $this->pagelen[$startlinepage] - $this->footerlen[$startlinepage];\n\t\t\t\t\t$midpos = min($opentagpos, $this->footerpos[$startlinepage]);\n\t\t\t\t} elseif (isset($opentagpos)) {\n\t\t\t\t\t$midpos = $opentagpos;\n\t\t\t\t} elseif (isset($this->footerlen[$startlinepage]) AND (!$this->InFooter)) {\n\t\t\t\t\t$this->footerpos[$startlinepage] = $this->pagelen[$startlinepage] - $this->footerlen[$startlinepage];\n\t\t\t\t\t$midpos = $this->footerpos[$startlinepage];\n\t\t\t\t} else {\n\t\t\t\t\t$midpos = 0;\n\t\t\t\t}\n\t\t\t\tif ($midpos > 0) {\n\t\t\t\t\t$pmid = substr($this->getPageBuffer($startlinepage), $startlinepos, ($midpos - $startlinepos));\n\t\t\t\t\t$pend = substr($this->getPageBuffer($startlinepage), $midpos);\n\t\t\t\t} else {\n\t\t\t\t\t$pmid = substr($this->getPageBuffer($startlinepage), $startlinepos);\n\t\t\t\t\t$pend = '';\n\t\t\t\t}\n\t\t\t\tif ((isset($plalign) AND ((($plalign == 'C') OR (($plalign == 'R') AND (!$this->rtl)) OR (($plalign == 'L') AND ($this->rtl))))) OR ($yshift < 0)) {\n\t\t\t\t\t// calculate shifting amount\n\t\t\t\t\t$tw = $w;\n\t\t\t\t\tif ($this->lMargin != $prevlMargin) {\n\t\t\t\t\t\t$tw += ($prevlMargin - $this->lMargin);\n\t\t\t\t\t}\n\t\t\t\t\tif ($this->rMargin != $prevrMargin) {\n\t\t\t\t\t\t$tw += ($prevrMargin - $this->rMargin);\n\t\t\t\t\t}\n\t\t\t\t\t$one_space_width = $this->GetStringWidth(chr(32));\n\t\t\t\t\t$mdiff = abs($tw - $linew);\n\t\t\t\t\tif ($plalign == 'C') {\n\t\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t\t$t_x = -($mdiff / 2);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$t_x = ($mdiff / 2);\n\t\t\t\t\t\t}\n\t\t\t\t\t} elseif (($plalign == 'R') AND (!$this->rtl)) {\n\t\t\t\t\t\t// right alignment on LTR document\n\t\t\t\t\t\tif (intval($this->revstrpos($pmid, ')]')) == (intval($this->revstrpos($pmid, ' )]')) + 1)) {\n\t\t\t\t\t\t\t// remove last space (if any)\n\t\t\t\t\t\t\t$linew -= $one_space_width;\n\t\t\t\t\t\t\t$mdiff = abs($tw - $linew);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$t_x = $mdiff;\n\t\t\t\t\t} elseif (($plalign == 'L') AND ($this->rtl)) {\n\t\t\t\t\t\t// left alignment on RTL document\n\t\t\t\t\t\tif (($this->revstrpos($pmid, '[(') > 0) AND ((intval($this->revstrpos($pmid, '[( ')) == intval($this->revstrpos($pmid, '[('))) OR (intval($this->revstrpos($pmid, '[('.chr(0).chr(32))) == intval($this->revstrpos($pmid, '[('))))) {\n\t\t\t\t\t\t\t// remove first space (if any)\n\t\t\t\t\t\t\t$linew -= $one_space_width;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ((strpos($pmid, '[(') > 0) AND (intval(strpos($pmid, '[(')) == (intval($this->revstrpos($pmid, '[('))))) {\n\t\t\t\t\t\t\t// remove last space (if any)\n\t\t\t\t\t\t\t$linew -= $one_space_width;\n\t\t\t\t\t\t\tif (($this->CurrentFont['type'] == 'TrueTypeUnicode') OR ($this->CurrentFont['type'] == 'cidfont0')) {\n\t\t\t\t\t\t\t\t$linew -= $one_space_width;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$mdiff = abs($tw - $linew);\n\t\t\t\t\t\t$t_x = -$mdiff;\n\t\t\t\t\t}\n\t\t\t\t} // end if startlinex\n\t\t\t\tif (($t_x != 0) OR ($yshift < 0)) {\n\t\t\t\t\t// shift the line\n\t\t\t\t\t$trx = sprintf('1 0 0 1 %.3F %.3F cm', ($t_x * $this->k), ($yshift * $this->k));\n\t\t\t\t\t$this->setPageBuffer($startlinepage, $pstart.\"\\nq\\n\".$trx.\"\\n\".$pmid.\"\\nQ\\n\".$pend);\n\t\t\t\t\t$endlinepos = strlen($pstart.\"\\nq\\n\".$trx.\"\\n\".$pmid.\"\\nQ\\n\");\n\t\t\t\t\t// shift the annotations and links\n\t\t\t\t\tif (isset($this->PageAnnots[$this->page])) {\n\t\t\t\t\t\tforeach ($this->PageAnnots[$this->page] as $pak => $pac) {\n\t\t\t\t\t\t\tif ($pak >= $pask) {\n\t\t\t\t\t\t\t\t$this->PageAnnots[$this->page][$pak]['x'] += $t_x;\n\t\t\t\t\t\t\t\t$this->PageAnnots[$this->page][$pak]['y'] -= $yshift;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t$this->y -= $yshift;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ($ln AND (!($cell AND ($dom[$key-1]['value'] == 'table')))) {\n\t\t\t\t$this->Ln($this->lasth);\n\t\t\t\tif ($this->y < $maxbottomliney) {\n\t\t\t\t\t$this->y = $maxbottomliney;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// restore previous values\n\t\t\t$this->setGraphicVars($gvars);\n\t\t\tif ($this->page > $prevPage) {\n\t\t\t\t$this->lMargin = $this->pagedim[$this->page]['olm'];\n\t\t\t\t$this->rMargin = $this->pagedim[$this->page]['orm'];\n\t\t\t}\n\t\t\t// restore previous list state\n\t\t\t$this->cell_height_ratio = $prev_cell_height_ratio;\n\t\t\t$this->listnum = $prev_listnum;\n\t\t\t$this->listordered = $prev_listordered;\n\t\t\t$this->listcount = $prev_listcount;\n\t\t\t$this->lispacer = $prev_lispacer;\n\t\t\tunset($dom);\n\t\t}\n\n\t\t/**\n\t\t * Process opening tags.\n\t\t * @param array $dom html dom array\n\t\t * @param int $key current element id\n\t\t * @param boolean $cell if true add the default cMargin space to each new line (default false).\n\t\t * @access protected\n\t\t */\n\t\tprotected function openHTMLTagHandler(&$dom, $key, $cell) {\n\t\t\t$tag = $dom[$key];\n\t\t\t$parent = $dom[($dom[$key]['parent'])];\n\t\t\t$firstorlast = ($key == 1);\n\t\t\t// check for text direction attribute\n\t\t\tif (isset($tag['attribute']['dir'])) {\n\t\t\t\t$this->setTempRTL($tag['attribute']['dir']);\n\t\t\t} else {\n\t\t\t\t$this->tmprtl = false;\n\t\t\t}\n\t\t\tif ($tag['block']) {\n\t\t\t\t$hbz = 0; // distance from y to line bottom\n\t\t\t\t$hb = 0; // vertical space between block tags\n\t\t\t\t// calculate vertical space for block tags\n\t\t\t\tif (isset($this->tagvspaces[$tag['value']][0]['h']) AND ($this->tagvspaces[$tag['value']][0]['h'] >= 0)) {\n\t\t\t\t\t$cur_h = $this->tagvspaces[$tag['value']][0]['h'];\n\t\t\t\t} elseif (isset($tag['fontsize'])) {\n\t\t\t\t\t$cur_h = ($tag['fontsize'] / $this->k) * $this->cell_height_ratio;\n\t\t\t\t} else {\n\t\t\t\t\t$cur_h = $this->FontSize * $this->cell_height_ratio;\n\t\t\t\t}\n\t\t\t\tif (isset($this->tagvspaces[$tag['value']][0]['n'])) {\n\t\t\t\t\t$n = $this->tagvspaces[$tag['value']][0]['n'];\n\t\t\t\t} elseif (preg_match('/[h][0-9]/', $tag['value']) > 0) {\n\t\t\t\t\t$n = 0.6;\n\t\t\t\t} else {\n\t\t\t\t\t$n = 1;\n\t\t\t\t}\n\t\t\t\t$hb = ($n * $cur_h);\n\t\t\t\tif (($this->htmlvspace <= 0) AND ($n > 0)) {\n\t\t\t\t\tif (isset($parent['fontsize'])) {\n\t\t\t\t\t\t$hbz = (($parent['fontsize'] / $this->k) * $this->cell_height_ratio);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$hbz = $this->FontSize * $this->cell_height_ratio;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t//Opening tag\n\t\t\tswitch($tag['value']) {\n\t\t\t\tcase 'table': {\n\t\t\t\t\t$cp = 0;\n\t\t\t\t\t$cs = 0;\n\t\t\t\t\t$dom[$key]['rowspans'] = array();\n\t\t\t\t\tif (!isset($dom[$key]['attribute']['nested']) OR ($dom[$key]['attribute']['nested'] != 'true')) {\n\t\t\t\t\t\t// set table header\n\t\t\t\t\t\tif (!$this->empty_string($dom[$key]['thead'])) {\n\t\t\t\t\t\t\t// set table header\n\t\t\t\t\t\t\t$this->thead = $dom[$key]['thead'];\n\t\t\t\t\t\t\tif (!isset($this->theadMargins) OR (empty($this->theadMargins))) {\n\t\t\t\t\t\t\t\t$this->theadMargins = array();\n\t\t\t\t\t\t\t\t$this->theadMargins['cmargin'] = $this->cMargin;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif (isset($tag['attribute']['cellpadding'])) {\n\t\t\t\t\t\t$cp = $this->getHTMLUnitToUnits($tag['attribute']['cellpadding'], 1, 'px');\n\t\t\t\t\t\t$this->oldcMargin = $this->cMargin;\n\t\t\t\t\t\t$this->cMargin = $cp;\n\t\t\t\t\t}\n\t\t\t\t\tif (isset($tag['attribute']['cellspacing'])) {\n\t\t\t\t\t\t$cs = $this->getHTMLUnitToUnits($tag['attribute']['cellspacing'], 1, 'px');\n\t\t\t\t\t}\n\t\t\t\t\tif ($this->checkPageBreak(((2 * $cp) + (2 * $cs) + $this->lasth), '', false)) {\n\t\t\t\t\t\t$this->inthead = true;\n\t\t\t\t\t\t// add a page (or trig AcceptPageBreak() for multicolumn mode)\n\t\t\t\t\t\t$this->checkPageBreak($this->PageBreakTrigger + 1);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'tr': {\n\t\t\t\t\t// array of columns positions\n\t\t\t\t\t$dom[$key]['cellpos'] = array();\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'hr': {\n\t\t\t\t\t$wtmp = $this->w - $this->lMargin - $this->rMargin;\n\t\t\t\t\tif ((isset($tag['attribute']['width'])) AND ($tag['attribute']['width'] != '')) {\n\t\t\t\t\t\t$hrWidth = $this->getHTMLUnitToUnits($tag['attribute']['width'], $wtmp, 'px');\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$hrWidth = $wtmp;\n\t\t\t\t\t}\n\t\t\t\t\tif ((isset($tag['height'])) AND ($tag['height'] != '')) {\n\t\t\t\t\t\t$hrHeight = $this->getHTMLUnitToUnits($tag['height'], 1, 'px');\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$hrHeight = $this->GetLineWidth();\n\t\t\t\t\t}\n\t\t\t\t\t$this->addHTMLVertSpace($hbz, ($hrHeight / 2), $cell, $firstorlast);\n\t\t\t\t\t$x = $this->GetX();\n\t\t\t\t\t$y = $this->GetY();\n\t\t\t\t\t$prevlinewidth = $this->GetLineWidth();\n\t\t\t\t\t$this->SetLineWidth($hrHeight);\n\t\t\t\t\t$this->Line($x, $y, $x + $hrWidth, $y);\n\t\t\t\t\t$this->SetLineWidth($prevlinewidth);\n\t\t\t\t\t$this->addHTMLVertSpace(($hrHeight / 2), 0, $cell, !isset($dom[($key + 1)]));\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'a': {\n\t\t\t\t\tif (array_key_exists('href', $tag['attribute'])) {\n\t\t\t\t\t\t$this->HREF['url'] = $tag['attribute']['href'];\n\t\t\t\t\t}\n\t\t\t\t\t$this->HREF['color'] = $this->htmlLinkColorArray;\n\t\t\t\t\t$this->HREF['style'] = $this->htmlLinkFontStyle;\n\t\t\t\t\tif (array_key_exists('style', $tag['attribute'])) {\n\t\t\t\t\t\t// get style attributes\n\t\t\t\t\t\tpreg_match_all('/([^;:\\s]*):([^;]*)/', $tag['attribute']['style'], $style_array, PREG_PATTERN_ORDER);\n\t\t\t\t\t\t$astyle = array();\n\t\t\t\t\t\twhile (list($id, $name) = each($style_array[1])) {\n\t\t\t\t\t\t\t$name = strtolower($name);\n\t\t\t\t\t\t\t$astyle[$name] = trim($style_array[2][$id]);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (isset($astyle['color'])) {\n\t\t\t\t\t\t\t$this->HREF['color'] = $this->convertHTMLColorToDec($astyle['color']);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (isset($astyle['text-decoration'])) {\n\t\t\t\t\t\t\t$this->HREF['style'] = '';\n\t\t\t\t\t\t\t$decors = explode(' ', strtolower($astyle['text-decoration']));\n\t\t\t\t\t\t\tforeach ($decors as $dec) {\n\t\t\t\t\t\t\t\t$dec = trim($dec);\n\t\t\t\t\t\t\t\tif (!$this->empty_string($dec)) {\n\t\t\t\t\t\t\t\t\tif ($dec{0} == 'u') {\n\t\t\t\t\t\t\t\t\t\t// underline\n\t\t\t\t\t\t\t\t\t\t$this->HREF['style'] .= 'U';\n\t\t\t\t\t\t\t\t\t} elseif ($dec{0} == 'l') {\n\t\t\t\t\t\t\t\t\t\t// line-trough\n\t\t\t\t\t\t\t\t\t\t$this->HREF['style'] .= 'D';\n\t\t\t\t\t\t\t\t\t} elseif ($dec{0} == 'o') {\n\t\t\t\t\t\t\t\t\t\t// overline\n\t\t\t\t\t\t\t\t\t\t$this->HREF['style'] .= 'O';\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'img': {\n\t\t\t\t\tif (isset($tag['attribute']['src'])) {\n\t\t\t\t\t\t// replace relative path with real server path\n\t\t\t\t\t\tif (($tag['attribute']['src'][0] == '/') AND ($_SERVER['DOCUMENT_ROOT'] != '/')) {\n\t\t\t\t\t\t\t$findroot = strpos($tag['attribute']['src'], $_SERVER['DOCUMENT_ROOT']);\n\t\t\t\t\t\t\tif (($findroot === false) OR ($findroot > 1)) {\n\t\t\t\t\t\t\t\t$tag['attribute']['src'] = $_SERVER['DOCUMENT_ROOT'].$tag['attribute']['src'];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$tag['attribute']['src'] = urldecode($tag['attribute']['src']);\n\t\t\t\t\t\t$type = $this->getImageFileType($tag['attribute']['src']);\n\t\t\t\t\t\t$testscrtype = @parse_url($tag['attribute']['src']);\n\t\t\t\t\t\tif (!isset($testscrtype['query']) OR empty($testscrtype['query'])) {\n\t\t\t\t\t\t\t// convert URL to server path\n\t\t\t\t\t\t\t$tag['attribute']['src'] = str_replace(K_PATH_URL, K_PATH_MAIN, $tag['attribute']['src']);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (!isset($tag['attribute']['width'])) {\n\t\t\t\t\t\t\t$tag['attribute']['width'] = 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (!isset($tag['attribute']['height'])) {\n\t\t\t\t\t\t\t$tag['attribute']['height'] = 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t//if (!isset($tag['attribute']['align'])) {\n\t\t\t\t\t\t\t// the only alignment supported is \"bottom\"\n\t\t\t\t\t\t\t// further development is required for other modes.\n\t\t\t\t\t\t\t$tag['attribute']['align'] = 'bottom';\n\t\t\t\t\t\t//}\n\t\t\t\t\t\tswitch($tag['attribute']['align']) {\n\t\t\t\t\t\t\tcase 'top': {\n\t\t\t\t\t\t\t\t$align = 'T';\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'middle': {\n\t\t\t\t\t\t\t\t$align = 'M';\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'bottom': {\n\t\t\t\t\t\t\t\t$align = 'B';\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tdefault: {\n\t\t\t\t\t\t\t\t$align = 'B';\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$prevy = $this->y;\n\t\t\t\t\t\t$xpos = $this->GetX();\n\t\t\t\t\t\t// eliminate marker spaces\n\t\t\t\t\t\tif (isset($dom[($key - 1)])) {\n\t\t\t\t\t\t\tif (($dom[($key - 1)]['value'] == ' ') OR (isset($dom[($key - 1)]['trimmed_space']))) {\n\t\t\t\t\t\t\t\t$xpos -= $this->GetStringWidth(chr(32));\n\t\t\t\t\t\t\t} elseif ($this->rtl AND $dom[($key - 1)]['value'] == '  ') {\n\t\t\t\t\t\t\t\t$xpos -= (2 * $this->GetStringWidth(chr(32)));\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$imglink = '';\n\t\t\t\t\t\tif (isset($this->HREF['url']) AND !$this->empty_string($this->HREF['url'])) {\n\t\t\t\t\t\t\t$imglink = $this->HREF['url'];\n\t\t\t\t\t\t\tif ($imglink{0} == '#') {\n\t\t\t\t\t\t\t\t// convert url to internal link\n\t\t\t\t\t\t\t\t$page = intval(substr($imglink, 1));\n\t\t\t\t\t\t\t\t$imglink = $this->AddLink();\n\t\t\t\t\t\t\t\t$this->SetLink($imglink, 0, $page);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$border = 0;\n\t\t\t\t\t\tif (isset($tag['attribute']['border']) AND !empty($tag['attribute']['border'])) {\n\t\t\t\t\t\t\t// currently only support 1 (frame) or a combination of 'LTRB'\n\t\t\t\t\t\t\t$border = $tag['attribute']['border'];\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$iw = '';\n\t\t\t\t\t\tif (isset($tag['attribute']['width'])) {\n\t\t\t\t\t\t\t$iw = $this->getHTMLUnitToUnits($tag['attribute']['width'], 1, 'px', false);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$ih = '';\n\t\t\t\t\t\tif (isset($tag['attribute']['height'])) {\n\t\t\t\t\t\t\t$ih = $this->getHTMLUnitToUnits($tag['attribute']['height'], 1, 'px', false);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (($type == 'eps') OR ($type == 'ai')) {\n\t\t\t\t\t\t\t$this->ImageEps($tag['attribute']['src'], $xpos, $this->y, $iw, $ih, $imglink, true, $align, '', $border, true);\n\t\t\t\t\t\t} elseif ($type == 'svg') {\n\t\t\t\t\t\t\t$this->ImageSVG($tag['attribute']['src'], $xpos, $this->y, $iw, $ih, $imglink, $align, '', $border, true);\n\t\t\t\t\t\t} else  {\n\t\t\t\t\t\t\t$this->Image($tag['attribute']['src'], $xpos, $this->y, $iw, $ih, '', $imglink, $align, false, 300, '', false, false, $border, false, false, true);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tswitch($align) {\n\t\t\t\t\t\t\tcase 'T': {\n\t\t\t\t\t\t\t\t$this->y = $prevy;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'M': {\n\t\t\t\t\t\t\t\t$this->y = (($this->img_rb_y + $prevy - ($tag['fontsize'] / $this->k)) / 2) ;\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 'B': {\n\t\t\t\t\t\t\t\t$this->y = $this->img_rb_y - ($tag['fontsize'] / $this->k);\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'dl': {\n\t\t\t\t\t++$this->listnum;\n\t\t\t\t\tif ($this->listnum == 1) {\n\t\t\t\t\t\t$this->addHTMLVertSpace($hbz, $hb, $cell, $firstorlast);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->addHTMLVertSpace(0, 0, $cell, $firstorlast);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'dt': {\n\t\t\t\t\t$this->addHTMLVertSpace($hbz, 0, $cell, $firstorlast);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'dd': {\n\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t$this->rMargin += $this->listindent;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->lMargin += $this->listindent;\n\t\t\t\t\t}\n\t\t\t\t\t++$this->listindentlevel;\n\t\t\t\t\t$this->addHTMLVertSpace($hbz, 0, $cell, $firstorlast);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'ul':\n\t\t\t\tcase 'ol': {\n\t\t\t\t\t++$this->listnum;\n\t\t\t\t\tif ($tag['value'] == 'ol') {\n\t\t\t\t\t\t$this->listordered[$this->listnum] = true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->listordered[$this->listnum] = false;\n\t\t\t\t\t}\n\t\t\t\t\tif (isset($tag['attribute']['start'])) {\n\t\t\t\t\t\t$this->listcount[$this->listnum] = intval($tag['attribute']['start']) - 1;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->listcount[$this->listnum] = 0;\n\t\t\t\t\t}\n\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t$this->rMargin += $this->listindent;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->lMargin += $this->listindent;\n\t\t\t\t\t}\n\t\t\t\t\t++$this->listindentlevel;\n\t\t\t\t\tif ($this->listnum == 1) {\n\t\t\t\t\t\t$this->addHTMLVertSpace($hbz, $hb, $cell, $firstorlast);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->addHTMLVertSpace(0, 0, $cell, $firstorlast);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'li': {\n\t\t\t\t\t$this->addHTMLVertSpace($hbz, 0, $cell, $firstorlast);\n\t\t\t\t\tif ($this->listordered[$this->listnum]) {\n\t\t\t\t\t\t// ordered item\n\t\t\t\t\t\tif (isset($parent['attribute']['type']) AND !$this->empty_string($parent['attribute']['type'])) {\n\t\t\t\t\t\t\t$this->lispacer = $parent['attribute']['type'];\n\t\t\t\t\t\t} elseif (isset($parent['listtype']) AND !$this->empty_string($parent['listtype'])) {\n\t\t\t\t\t\t\t$this->lispacer = $parent['listtype'];\n\t\t\t\t\t\t} elseif (isset($this->lisymbol) AND !$this->empty_string($this->lisymbol)) {\n\t\t\t\t\t\t\t$this->lispacer = $this->lisymbol;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$this->lispacer = '#';\n\t\t\t\t\t\t}\n\t\t\t\t\t\t++$this->listcount[$this->listnum];\n\t\t\t\t\t\tif (isset($tag['attribute']['value'])) {\n\t\t\t\t\t\t\t$this->listcount[$this->listnum] = intval($tag['attribute']['value']);\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// unordered item\n\t\t\t\t\t\tif (isset($parent['attribute']['type']) AND !$this->empty_string($parent['attribute']['type'])) {\n\t\t\t\t\t\t\t$this->lispacer = $parent['attribute']['type'];\n\t\t\t\t\t\t} elseif (isset($parent['listtype']) AND !$this->empty_string($parent['listtype'])) {\n\t\t\t\t\t\t\t$this->lispacer = $parent['listtype'];\n\t\t\t\t\t\t} elseif (isset($this->lisymbol) AND !$this->empty_string($this->lisymbol)) {\n\t\t\t\t\t\t\t$this->lispacer = $this->lisymbol;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$this->lispacer = '!';\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'blockquote': {\n\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t$this->rMargin += $this->listindent;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->lMargin += $this->listindent;\n\t\t\t\t\t}\n\t\t\t\t\t++$this->listindentlevel;\n\t\t\t\t\t$this->addHTMLVertSpace($hbz, $hb, $cell, $firstorlast);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'br': {\n\t\t\t\t\t$this->addHTMLVertSpace($hbz, 0, $cell, $firstorlast);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'div': {\n\t\t\t\t\t$this->addHTMLVertSpace($hbz, 0, $cell, $firstorlast);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'p': {\n\t\t\t\t\t$this->addHTMLVertSpace($hbz, $hb, $cell, $firstorlast);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'pre': {\n\t\t\t\t\t$this->addHTMLVertSpace($hbz, $hb, $cell, $firstorlast);\n\t\t\t\t\t$this->premode = true;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'sup': {\n\t\t\t\t\t$this->SetXY($this->GetX(), $this->GetY() - ((0.7 * $this->FontSizePt) / $this->k));\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'sub': {\n\t\t\t\t\t$this->SetXY($this->GetX(), $this->GetY() + ((0.3 * $this->FontSizePt) / $this->k));\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'h1':\n\t\t\t\tcase 'h2':\n\t\t\t\tcase 'h3':\n\t\t\t\tcase 'h4':\n\t\t\t\tcase 'h5':\n\t\t\t\tcase 'h6': {\n\t\t\t\t\t$this->addHTMLVertSpace($hbz, $hb, $cell, $firstorlast);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t// Form fields (since 4.8.000 - 2009-09-07)\n\t\t\t\tcase 'form': {\n\t\t\t\t\tif (isset($tag['attribute']['action'])) {\n\t\t\t\t\t\t$this->form_action = $tag['attribute']['action'];\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->form_action = K_PATH_URL.$_SERVER['SCRIPT_NAME'];\n\t\t\t\t\t}\n\t\t\t\t\tif (isset($tag['attribute']['enctype'])) {\n\t\t\t\t\t\t$this->form_enctype = $tag['attribute']['enctype'];\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->form_enctype = 'application/x-www-form-urlencoded';\n\t\t\t\t\t}\n\t\t\t\t\tif (isset($tag['attribute']['method'])) {\n\t\t\t\t\t\t$this->form_mode = $tag['attribute']['method'];\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->form_mode = 'post';\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'input': {\n\t\t\t\t\tif (isset($tag['attribute']['name']) AND !$this->empty_string($tag['attribute']['name'])) {\n\t\t\t\t\t\t$name = $tag['attribute']['name'];\n\t\t\t\t\t} else {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\t$prop = array();\n\t\t\t\t\t$opt = array();\n\t\t\t\t\tif (isset($tag['attribute']['value']) AND !$this->empty_string($tag['attribute']['value'])) {\n\t\t\t\t\t\t$value = $tag['attribute']['value'];\n\t\t\t\t\t}\n\t\t\t\t\tif (isset($tag['attribute']['maxlength']) AND !$this->empty_string($tag['attribute']['maxlength'])) {\n\t\t\t\t\t\t$opt['maxlen'] = intval($tag['attribute']['value']);\n\t\t\t\t\t}\n\t\t\t\t\t$h = $this->FontSize * $this->cell_height_ratio;\n\t\t\t\t\tif (isset($tag['attribute']['size']) AND !$this->empty_string($tag['attribute']['size'])) {\n\t\t\t\t\t\t$w = intval($tag['attribute']['size']) * $this->GetStringWidth(chr(32)) * 2;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$w = $h;\n\t\t\t\t\t}\n\t\t\t\t\tif (isset($tag['attribute']['checked']) AND (($tag['attribute']['checked'] == 'checked') OR ($tag['attribute']['checked'] == 'true'))) {\n\t\t\t\t\t\t$checked = true;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$checked = false;\n\t\t\t\t\t}\n\t\t\t\t\tswitch ($tag['attribute']['type']) {\n\t\t\t\t\t\tcase 'text': {\n\t\t\t\t\t\t\tif (isset($value)) {\n\t\t\t\t\t\t\t\t$opt['v'] = $value;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$this->TextField($name, $w, $h, $prop, $opt, '', '', false);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcase 'password': {\n\t\t\t\t\t\t\tif (isset($value)) {\n\t\t\t\t\t\t\t\t$opt['v'] = $value;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$prop['password'] = 'true';\n\t\t\t\t\t\t\t$this->TextField($name, $w, $h, $prop, $opt, '', '', false);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcase 'checkbox': {\n\t\t\t\t\t\t\t$this->CheckBox($name, $w, $checked, $prop, $opt, $value, '', '', false);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcase 'radio': {\n\t\t\t\t\t\t\t$this->RadioButton($name, $w, $prop, $opt, $value, $checked, '', '', false);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcase 'submit': {\n\t\t\t\t\t\t\t$w = $this->GetStringWidth($value) * 1.5;\n\t\t\t\t\t\t\t$h *= 1.6;\n\t\t\t\t\t\t\t$prop = array('lineWidth'=>1, 'borderStyle'=>'beveled', 'fillColor'=>array(196, 196, 196), 'strokeColor'=>array(255, 255, 255));\n\t\t\t\t\t\t\t$action = array();\n\t\t\t\t\t\t\t$action['S'] = 'SubmitForm';\n\t\t\t\t\t\t\t$action['F'] = $this->form_action;\n\t\t\t\t\t\t\tif ($this->form_enctype != 'FDF') {\n\t\t\t\t\t\t\t\t$action['Flags'] = array('ExportFormat');\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ($this->form_mode == 'get') {\n\t\t\t\t\t\t\t\t$action['Flags'] = array('GetMethod');\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$this->Button($name, $w, $h, $value, $action, $prop, $opt, '', '', false);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcase 'reset': {\n\t\t\t\t\t\t\t$w = $this->GetStringWidth($value) * 1.5;\n\t\t\t\t\t\t\t$h *= 1.6;\n\t\t\t\t\t\t\t$prop = array('lineWidth'=>1, 'borderStyle'=>'beveled', 'fillColor'=>array(196, 196, 196), 'strokeColor'=>array(255, 255, 255));\n\t\t\t\t\t\t\t$this->Button($name, $w, $h, $value, array('S'=>'ResetForm'), $prop, $opt, '', '', false);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcase 'file': {\n\t\t\t\t\t\t\t$prop['fileSelect'] = 'true';\n\t\t\t\t\t\t\t$this->TextField($name, $w, $h, $prop, $opt, '', '', false);\n\t\t\t\t\t\t\tif (!isset($value)) {\n\t\t\t\t\t\t\t\t$value = '*';\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$w = $this->GetStringWidth($value) * 2;\n\t\t\t\t\t\t\t$h *= 1.2;\n\t\t\t\t\t\t\t$prop = array('lineWidth'=>1, 'borderStyle'=>'beveled', 'fillColor'=>array(196, 196, 196), 'strokeColor'=>array(255, 255, 255));\n\t\t\t\t\t\t\t$jsaction = 'var f=this.getField(\\''.$name.'\\'); f.browseForFileToSubmit();';\n\t\t\t\t\t\t\t$this->Button('FB_'.$name, $w, $h, $value, $jsaction, $prop, $opt, '', '', false);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcase 'hidden': {\n\t\t\t\t\t\t\tif (isset($value)) {\n\t\t\t\t\t\t\t\t$opt['v'] = $value;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$opt['f'] = array('invisible', 'hidden');\n\t\t\t\t\t\t\t$this->TextField($name, 0, 0, $prop, $opt, '', '', false);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcase 'image': {\n\t\t\t\t\t\t\t// THIS TYPE MUST BE FIXED\n\t\t\t\t\t\t\tif (isset($tag['attribute']['src']) AND !$this->empty_string($tag['attribute']['src'])) {\n\t\t\t\t\t\t\t\t$img = $tag['attribute']['src'];\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$value = 'img';\n\t\t\t\t\t\t\t//$opt['mk'] = array('i'=>$img, 'tp'=>1, 'if'=>array('sw'=>'A', 's'=>'A', 'fb'=>false));\n\t\t\t\t\t\t\tif (isset($tag['attribute']['onclick']) AND !empty($tag['attribute']['onclick'])) {\n\t\t\t\t\t\t\t\t$jsaction = $tag['attribute']['onclick'];\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$jsaction = '';\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$this->Button($name, $w, $h, $value, $jsaction, $prop, $opt, '', '', false);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcase 'button': {\n\t\t\t\t\t\t\t$w = $this->GetStringWidth($value) * 1.5;\n\t\t\t\t\t\t\t$h *= 1.6;\n\t\t\t\t\t\t\t$prop = array('lineWidth'=>1, 'borderStyle'=>'beveled', 'fillColor'=>array(196, 196, 196), 'strokeColor'=>array(255, 255, 255));\n\t\t\t\t\t\t\tif (isset($tag['attribute']['onclick']) AND !empty($tag['attribute']['onclick'])) {\n\t\t\t\t\t\t\t\t$jsaction = $tag['attribute']['onclick'];\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$jsaction = '';\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$this->Button($name, $w, $h, $value, $jsaction, $prop, $opt, '', '', false);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'textarea': {\n\t\t\t\t\t$prop = array();\n\t\t\t\t\t$opt = array();\n\t\t\t\t\tif (isset($tag['attribute']['name']) AND !$this->empty_string($tag['attribute']['name'])) {\n\t\t\t\t\t\t$name = $tag['attribute']['name'];\n\t\t\t\t\t} else {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tif (isset($tag['attribute']['value']) AND !$this->empty_string($tag['attribute']['value'])) {\n\t\t\t\t\t\t$opt['v'] = $tag['attribute']['value'];\n\t\t\t\t\t}\n\t\t\t\t\tif (isset($tag['attribute']['cols']) AND !$this->empty_string($tag['attribute']['cols'])) {\n\t\t\t\t\t\t$w = intval($tag['attribute']['cols']) * $this->GetStringWidth(chr(32)) * 2;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$w = 40;\n\t\t\t\t\t}\n\t\t\t\t\tif (isset($tag['attribute']['rows']) AND !$this->empty_string($tag['attribute']['rows'])) {\n\t\t\t\t\t\t$h = intval($tag['attribute']['rows']) * $this->FontSize * $this->cell_height_ratio;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$h = 10;\n\t\t\t\t\t}\n\t\t\t\t\t$prop['multiline'] = 'true';\n\t\t\t\t\t$this->TextField($name, $w, $h, $prop, $opt, '', '', false);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'select': {\n\t\t\t\t\t$h = $this->FontSize * $this->cell_height_ratio;\n\t\t\t\t\tif (isset($tag['attribute']['size']) AND !$this->empty_string($tag['attribute']['size'])) {\n\t\t\t\t\t\t$h *= ($tag['attribute']['size'] + 1);\n\t\t\t\t\t}\n\t\t\t\t\t$prop = array();\n\t\t\t\t\t$opt = array();\n\t\t\t\t\tif (isset($tag['attribute']['name']) AND !$this->empty_string($tag['attribute']['name'])) {\n\t\t\t\t\t\t$name = $tag['attribute']['name'];\n\t\t\t\t\t} else {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\t$w = 0;\n\t\t\t\t\tif (isset($tag['attribute']['opt']) AND !$this->empty_string($tag['attribute']['opt'])) {\n\t\t\t\t\t\t$options = explode (\"\\r\", $tag['attribute']['opt']);\n\t\t\t\t\t\t$values = array();\n\t\t\t\t\t\tforeach ($options as $val) {\n\t\t\t\t\t\t\tif (strpos($val, \"\\t\") !== false) {\n\t\t\t\t\t\t\t\t$opts = explode(\"\\t\", $val);\n\t\t\t\t\t\t\t\t$values[] = $opts;\n\t\t\t\t\t\t\t\t$w = max($w, $this->GetStringWidth($opts[1]));\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$values[] = $val;\n\t\t\t\t\t\t\t\t$w = max($w, $this->GetStringWidth($val));\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\t$w *= 2;\n\t\t\t\t\tif (isset($tag['attribute']['multiple']) AND ($tag['attribute']['multiple']='multiple')) {\n\t\t\t\t\t\t$prop['multipleSelection'] = 'true';\n\t\t\t\t\t\t$this->ListBox($name, $w, $h, $values, $prop, $opt, '', '', false);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->ComboBox($name, $w, $h, $values, $prop, $opt, '', '', false);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'tcpdf': {\n\t\t\t\t\tif (defined('K_TCPDF_CALLS_IN_HTML') AND (K_TCPDF_CALLS_IN_HTML === true)) {\n\t\t\t\t\t\t// Special tag used to call TCPDF methods\n\t\t\t\t\t\tif (isset($tag['attribute']['method'])) {\n\t\t\t\t\t\t\t$tcpdf_method = $tag['attribute']['method'];\n\t\t\t\t\t\t\tif (method_exists($this, $tcpdf_method)) {\n\t\t\t\t\t\t\t\tif (isset($tag['attribute']['params']) AND (!empty($tag['attribute']['params']))) {\n\t\t\t\t\t\t\t\t\t$params = unserialize(urldecode($tag['attribute']['params']));\n\t\t\t\t\t\t\t\t\tcall_user_func_array(array($this, $tcpdf_method), $params);\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t$this->$tcpdf_method();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$this->newline = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tdefault: {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ($dom[$key]['self'] AND isset($dom[$key]['attribute']['pagebreakafter'])) {\n\t\t\t\t$pba = $dom[$key]['attribute']['pagebreakafter'];\n\t\t\t\t// check for pagebreak\n\t\t\t\tif (($pba == 'true') OR ($pba == 'left') OR ($pba == 'right')) {\n\t\t\t\t\t// add a page (or trig AcceptPageBreak() for multicolumn mode)\n\t\t\t\t\t$this->checkPageBreak($this->PageBreakTrigger + 1);\n\t\t\t\t}\n\t\t\t\tif ((($pba == 'left') AND (((!$this->rtl) AND (($this->page % 2) == 0)) OR (($this->rtl) AND (($this->page % 2) != 0))))\n\t\t\t\t\tOR (($pba == 'right') AND (((!$this->rtl) AND (($this->page % 2) != 0)) OR (($this->rtl) AND (($this->page % 2) == 0))))) {\n\t\t\t\t\t// add a page (or trig AcceptPageBreak() for multicolumn mode)\n\t\t\t\t\t$this->checkPageBreak($this->PageBreakTrigger + 1);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Process closing tags.\n\t\t * @param array $dom html dom array\n\t\t * @param int $key current element id\n\t\t * @param boolean $cell if true add the default cMargin space to each new line (default false).\n\t\t * @param int $maxbottomliney maximum y value of current line\n\t\t * @access protected\n\t\t */\n\t\tprotected function closeHTMLTagHandler(&$dom, $key, $cell, $maxbottomliney=0) {\n\t\t\t$tag = $dom[$key];\n\t\t\t$parent = $dom[($dom[$key]['parent'])];\n\t\t\t$firstorlast = ((!isset($dom[($key + 1)])) OR ((!isset($dom[($key + 2)])) AND ($dom[($key + 1)]['value'] == 'marker')));\n\t\t\t$in_table_head = false;\n\t\t\tif ($tag['block']) {\n\t\t\t\t$hbz = 0; // distance from y to line bottom\n\t\t\t\t$hb = 0; // vertical space between block tags\n\t\t\t\t// calculate vertical space for block tags\n\t\t\t\tif (isset($this->tagvspaces[$tag['value']][1]['h']) AND ($this->tagvspaces[$tag['value']][1]['h'] >= 0)) {\n\t\t\t\t\t$pre_h = $this->tagvspaces[$tag['value']][1]['h'];\n\t\t\t\t} elseif (isset($parent['fontsize'])) {\n\t\t\t\t\t$pre_h = (($parent['fontsize'] / $this->k) * $this->cell_height_ratio);\n\t\t\t\t} else {\n\t\t\t\t\t$pre_h = $this->FontSize * $this->cell_height_ratio;\n\t\t\t\t}\n\t\t\t\tif (isset($this->tagvspaces[$tag['value']][1]['n'])) {\n\t\t\t\t\t$n = $this->tagvspaces[$tag['value']][1]['n'];\n\t\t\t\t} elseif (preg_match('/[h][0-9]/', $tag['value']) > 0) {\n\t\t\t\t\t$n = 0.6;\n\t\t\t\t} else {\n\t\t\t\t\t$n = 1;\n\t\t\t\t}\n\t\t\t\t$hb = ($n * $pre_h);\n\t\t\t\tif ($this->y < $maxbottomliney) {\n\t\t\t\t\t$hbz = ($maxbottomliney - $this->y);\n\t\t\t\t}\n\t\t\t}\n\t\t\t//Closing tag\n\t\t\tswitch($tag['value']) {\n\t\t\t\tcase 'tr': {\n\t\t\t\t\t$table_el = $dom[($dom[$key]['parent'])]['parent'];\n\t\t\t\t\tif (!isset($parent['endy'])) {\n\t\t\t\t\t\t$dom[($dom[$key]['parent'])]['endy'] = $this->y;\n\t\t\t\t\t\t$parent['endy'] = $this->y;\n\t\t\t\t\t}\n\t\t\t\t\tif (!isset($parent['endpage'])) {\n\t\t\t\t\t\t$dom[($dom[$key]['parent'])]['endpage'] = $this->page;\n\t\t\t\t\t\t$parent['endpage'] = $this->page;\n\t\t\t\t\t}\n\t\t\t\t\t// update row-spanned cells\n\t\t\t\t\tif (isset($dom[$table_el]['rowspans'])) {\n\t\t\t\t\t\tforeach ($dom[$table_el]['rowspans'] as $k => $trwsp) {\n\t\t\t\t\t\t\t$dom[$table_el]['rowspans'][$k]['rowspan'] -= 1;\n\t\t\t\t\t\t\tif ($dom[$table_el]['rowspans'][$k]['rowspan'] == 0) {\n\t\t\t\t\t\t\t\tif ($dom[$table_el]['rowspans'][$k]['endpage'] == $parent['endpage']) {\n\t\t\t\t\t\t\t\t\t$dom[($dom[$key]['parent'])]['endy'] = max($dom[$table_el]['rowspans'][$k]['endy'], $parent['endy']);\n\t\t\t\t\t\t\t\t} elseif ($dom[$table_el]['rowspans'][$k]['endpage'] > $parent['endpage']) {\n\t\t\t\t\t\t\t\t\t$dom[($dom[$key]['parent'])]['endy'] = $dom[$table_el]['rowspans'][$k]['endy'];\n\t\t\t\t\t\t\t\t\t$dom[($dom[$key]['parent'])]['endpage'] = $dom[$table_el]['rowspans'][$k]['endpage'];\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// report new endy and endpage to the rowspanned cells\n\t\t\t\t\t\tforeach ($dom[$table_el]['rowspans'] as $k => $trwsp) {\n\t\t\t\t\t\t\tif ($dom[$table_el]['rowspans'][$k]['rowspan'] == 0) {\n\t\t\t\t\t\t\t\t$dom[$table_el]['rowspans'][$k]['endpage'] = max($dom[$table_el]['rowspans'][$k]['endpage'], $dom[($dom[$key]['parent'])]['endpage']);\n\t\t\t\t\t\t\t\t$dom[($dom[$key]['parent'])]['endpage'] = $dom[$table_el]['rowspans'][$k]['endpage'];\n\t\t\t\t\t\t\t\t$dom[$table_el]['rowspans'][$k]['endy'] = max($dom[$table_el]['rowspans'][$k]['endy'], $dom[($dom[$key]['parent'])]['endy']);\n\t\t\t\t\t\t\t\t$dom[($dom[$key]['parent'])]['endy'] = $dom[$table_el]['rowspans'][$k]['endy'];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// update remaining rowspanned cells\n\t\t\t\t\t\tforeach ($dom[$table_el]['rowspans'] as $k => $trwsp) {\n\t\t\t\t\t\t\tif ($dom[$table_el]['rowspans'][$k]['rowspan'] == 0) {\n\t\t\t\t\t\t\t\t$dom[$table_el]['rowspans'][$k]['endpage'] = $dom[($dom[$key]['parent'])]['endpage'];\n\t\t\t\t\t\t\t\t$dom[$table_el]['rowspans'][$k]['endy'] = $dom[($dom[$key]['parent'])]['endy'];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif (($this->num_columns > 1) AND ($dom[($dom[$key]['parent'])]['endy'] >= ($this->PageBreakTrigger - $this->lasth)) AND ($this->y < $dom[($dom[$key]['parent'])]['endy'])) {\n\t\t\t\t\t\t$this->Ln(0, $cell);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->setPage($dom[($dom[$key]['parent'])]['endpage']);\n\t\t\t\t\t\t$this->y = $dom[($dom[$key]['parent'])]['endy'];\n\t\t\t\t\t\tif (isset($dom[$table_el]['attribute']['cellspacing'])) {\n\t\t\t\t\t\t\t$cellspacing = $this->getHTMLUnitToUnits($dom[$table_el]['attribute']['cellspacing'], 1, 'px');\n\t\t\t\t\t\t\t$this->y += $cellspacing;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$this->Ln(0, $cell);\n\t\t\t\t\t\t$this->x = $parent['startx'];\n\t\t\t\t\t\t// account for booklet mode\n\t\t\t\t\t\tif ($this->page > $parent['startpage']) {\n\t\t\t\t\t\t\tif (($this->rtl) AND ($this->pagedim[$this->page]['orm'] != $this->pagedim[$parent['startpage']]['orm'])) {\n\t\t\t\t\t\t\t\t$this->x -= ($this->pagedim[$this->page]['orm'] - $this->pagedim[$parent['startpage']]['orm']);\n\t\t\t\t\t\t\t} elseif ((!$this->rtl) AND ($this->pagedim[$this->page]['olm'] != $this->pagedim[$parent['startpage']]['olm'])) {\n\t\t\t\t\t\t\t\t$this->x += ($this->pagedim[$this->page]['olm'] - $this->pagedim[$parent['startpage']]['olm']);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'tablehead':\n\t\t\t\t\t// closing tag used for the thead part\n\t\t\t\t\t$in_table_head = true;\n\t\t\t\t\t$this->inthead = false;\n\t\t\t\tcase 'table': {\n\t\t\t\t\t$table_el = $parent;\n\t\t\t\t\t// draw borders\n\t\t\t\t\tif ((isset($table_el['attribute']['border']) AND ($table_el['attribute']['border'] > 0))\n\t\t\t\t\t\tOR (isset($table_el['style']['border']) AND ($table_el['style']['border'] > 0))) {\n\t\t\t\t\t\t\t$border = 1;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$border = 0;\n\t\t\t\t\t}\n\t\t\t\t\t// fix bottom line alignment of last line before page break\n\t\t\t\t\tforeach ($dom[($dom[$key]['parent'])]['trids'] as $j => $trkey) {\n\t\t\t\t\t\t// update row-spanned cells\n\t\t\t\t\t\tif (isset($dom[($dom[$key]['parent'])]['rowspans'])) {\n\t\t\t\t\t\t\tforeach ($dom[($dom[$key]['parent'])]['rowspans'] as $k => $trwsp) {\n\t\t\t\t\t\t\t\tif ($trwsp['trid'] == $trkey) {\n\t\t\t\t\t\t\t\t\t$dom[($dom[$key]['parent'])]['rowspans'][$k]['mrowspan'] -= 1;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (isset($prevtrkey) AND ($trwsp['trid'] == $prevtrkey) AND ($trwsp['mrowspan'] >= 0)) {\n\t\t\t\t\t\t\t\t\t$dom[($dom[$key]['parent'])]['rowspans'][$k]['trid'] = $trkey;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (isset($prevtrkey) AND ($dom[$trkey]['startpage'] > $dom[$prevtrkey]['endpage'])) {\n\t\t\t\t\t\t\t$pgendy = $this->pagedim[$dom[$prevtrkey]['endpage']]['hk'] - $this->pagedim[$dom[$prevtrkey]['endpage']]['bm'];\n\t\t\t\t\t\t\t$dom[$prevtrkey]['endy'] = $pgendy;\n\t\t\t\t\t\t\t// update row-spanned cells\n\t\t\t\t\t\t\tif (isset($dom[($dom[$key]['parent'])]['rowspans'])) {\n\t\t\t\t\t\t\t\tforeach ($dom[($dom[$key]['parent'])]['rowspans'] as $k => $trwsp) {\n\t\t\t\t\t\t\t\t\tif (($trwsp['trid'] == $trkey) AND ($trwsp['mrowspan'] > 1) AND ($trwsp['endpage'] == $dom[$prevtrkey]['endpage'])) {\n\t\t\t\t\t\t\t\t\t\t$dom[($dom[$key]['parent'])]['rowspans'][$k]['endy'] = $pgendy;\n\t\t\t\t\t\t\t\t\t\t$dom[($dom[$key]['parent'])]['rowspans'][$k]['mrowspan'] = -1;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$prevtrkey = $trkey;\n\t\t\t\t\t\t$table_el = $dom[($dom[$key]['parent'])];\n\t\t\t\t\t}\n\t\t\t\t\t// for each row\n\t\t\t\t\tforeach ($table_el['trids'] as $j => $trkey) {\n\t\t\t\t\t\t$parent = $dom[$trkey];\n\t\t\t\t\t\t// for each cell on the row\n\t\t\t\t\t\tforeach ($parent['cellpos'] as $k => $cellpos) {\n\t\t\t\t\t\t\tif (isset($cellpos['rowspanid']) AND ($cellpos['rowspanid'] >= 0)) {\n\t\t\t\t\t\t\t\t$cellpos['startx'] = $table_el['rowspans'][($cellpos['rowspanid'])]['startx'];\n\t\t\t\t\t\t\t\t$cellpos['endx'] = $table_el['rowspans'][($cellpos['rowspanid'])]['endx'];\n\t\t\t\t\t\t\t\t$endy = $table_el['rowspans'][($cellpos['rowspanid'])]['endy'];\n\t\t\t\t\t\t\t\t$startpage = $table_el['rowspans'][($cellpos['rowspanid'])]['startpage'];\n\t\t\t\t\t\t\t\t$endpage = $table_el['rowspans'][($cellpos['rowspanid'])]['endpage'];\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$endy = $parent['endy'];\n\t\t\t\t\t\t\t\t$startpage = $parent['startpage'];\n\t\t\t\t\t\t\t\t$endpage = $parent['endpage'];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ($endpage > $startpage) {\n\t\t\t\t\t\t\t\t// design borders around HTML cells.\n\t\t\t\t\t\t\t\tfor ($page=$startpage; $page <= $endpage; ++$page) {\n\t\t\t\t\t\t\t\t\t$this->setPage($page);\n\t\t\t\t\t\t\t\t\tif ($page == $startpage) {\n\t\t\t\t\t\t\t\t\t\t$this->y = $parent['starty']; // put cursor at the beginning of row on the first page\n\t\t\t\t\t\t\t\t\t\t$ch = $this->getPageHeight() - $parent['starty'] - $this->getBreakMargin();\n\t\t\t\t\t\t\t\t\t\t$cborder = $this->getBorderMode($border, $position='start');\n\t\t\t\t\t\t\t\t\t} elseif ($page == $endpage) {\n\t\t\t\t\t\t\t\t\t\t$this->y = $this->tMargin; // put cursor at the beginning of last page\n\t\t\t\t\t\t\t\t\t\t$ch = $endy - $this->tMargin;\n\t\t\t\t\t\t\t\t\t\t$cborder = $this->getBorderMode($border, $position='end');\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t$this->y = $this->tMargin; // put cursor at the beginning of the current page\n\t\t\t\t\t\t\t\t\t\t$ch = $this->getPageHeight() - $this->tMargin - $this->getBreakMargin();\n\t\t\t\t\t\t\t\t\t\t$cborder = $this->getBorderMode($border, $position='middle');\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tif (isset($cellpos['bgcolor']) AND ($cellpos['bgcolor']) !== false) {\n\t\t\t\t\t\t\t\t\t\t$this->SetFillColorArray($cellpos['bgcolor']);\n\t\t\t\t\t\t\t\t\t\t$fill = true;\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t$fill = false;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t$cw = abs($cellpos['endx'] - $cellpos['startx']);\n\t\t\t\t\t\t\t\t\t$this->x = $cellpos['startx'];\n\t\t\t\t\t\t\t\t\t// account for margin changes\n\t\t\t\t\t\t\t\t\tif ($page > $startpage) {\n\t\t\t\t\t\t\t\t\t\tif (($this->rtl) AND ($this->pagedim[$page]['orm'] != $this->pagedim[$startpage]['orm'])) {\n\t\t\t\t\t\t\t\t\t\t\t$this->x -= ($this->pagedim[$page]['orm'] - $this->pagedim[$startpage]['orm']);\n\t\t\t\t\t\t\t\t\t\t} elseif ((!$this->rtl) AND ($this->pagedim[$page]['lm'] != $this->pagedim[$startpage]['olm'])) {\n\t\t\t\t\t\t\t\t\t\t\t$this->x += ($this->pagedim[$page]['olm'] - $this->pagedim[$startpage]['olm']);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t// design a cell around the text\n\t\t\t\t\t\t\t\t\t$ccode = $this->FillColor.\"\\n\".$this->getCellCode($cw, $ch, '', $cborder, 1, '', $fill, '', 0, true);\n\t\t\t\t\t\t\t\t\tif ($cborder OR $fill) {\n\t\t\t\t\t\t\t\t\t\t$pagebuff = $this->getPageBuffer($this->page);\n\t\t\t\t\t\t\t\t\t\t$pstart = substr($pagebuff, 0, $this->intmrk[$this->page]);\n\t\t\t\t\t\t\t\t\t\t$pend = substr($pagebuff, $this->intmrk[$this->page]);\n\t\t\t\t\t\t\t\t\t\t$this->setPageBuffer($this->page, $pstart.$ccode.\"\\n\".$pend);\n\t\t\t\t\t\t\t\t\t\t$this->intmrk[$this->page] += strlen($ccode.\"\\n\");\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$this->setPage($startpage);\n\t\t\t\t\t\t\t\tif (isset($cellpos['bgcolor']) AND ($cellpos['bgcolor']) !== false) {\n\t\t\t\t\t\t\t\t\t$this->SetFillColorArray($cellpos['bgcolor']);\n\t\t\t\t\t\t\t\t\t$fill = true;\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t$fill = false;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$this->x = $cellpos['startx'];\n\t\t\t\t\t\t\t\t$this->y = $parent['starty'];\n\t\t\t\t\t\t\t\t$cw = abs($cellpos['endx'] - $cellpos['startx']);\n\t\t\t\t\t\t\t\t$ch = $endy - $parent['starty'];\n\t\t\t\t\t\t\t\t// design a cell around the text\n\t\t\t\t\t\t\t\t$ccode = $this->FillColor.\"\\n\".$this->getCellCode($cw, $ch, '', $border, 1, '', $fill, '', 0, true);\n\t\t\t\t\t\t\t\tif ($border OR $fill) {\n\t\t\t\t\t\t\t\t\tif (end($this->transfmrk[$this->page]) !== false) {\n\t\t\t\t\t\t\t\t\t\t$pagemarkkey = key($this->transfmrk[$this->page]);\n\t\t\t\t\t\t\t\t\t\t$pagemark = &$this->transfmrk[$this->page][$pagemarkkey];\n\t\t\t\t\t\t\t\t\t} elseif ($this->InFooter) {\n\t\t\t\t\t\t\t\t\t\t$pagemark = &$this->footerpos[$this->page];\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t$pagemark = &$this->intmrk[$this->page];\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t$pagebuff = $this->getPageBuffer($this->page);\n\t\t\t\t\t\t\t\t\t$pstart = substr($pagebuff, 0, $pagemark);\n\t\t\t\t\t\t\t\t\t$pend = substr($pagebuff, $pagemark);\n\t\t\t\t\t\t\t\t\t$this->setPageBuffer($this->page, $pstart.$ccode.\"\\n\".$pend);\n\t\t\t\t\t\t\t\t\t$pagemark += strlen($ccode.\"\\n\");\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (isset($table_el['attribute']['cellspacing'])) {\n\t\t\t\t\t\t\t$cellspacing = $this->getHTMLUnitToUnits($table_el['attribute']['cellspacing'], 1, 'px');\n\t\t\t\t\t\t\t$this->y += $cellspacing;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$this->Ln(0, $cell);\n\t\t\t\t\t\t$this->x = $parent['startx'];\n\t\t\t\t\t\tif ($endpage > $startpage) {\n\t\t\t\t\t\t\tif (($this->rtl) AND ($this->pagedim[$endpage]['orm'] != $this->pagedim[$startpage]['orm'])) {\n\t\t\t\t\t\t\t\t$this->x += ($this->pagedim[$endpage]['orm'] - $this->pagedim[$startpage]['orm']);\n\t\t\t\t\t\t\t} elseif ((!$this->rtl) AND ($this->pagedim[$endpage]['olm'] != $this->pagedim[$startpage]['olm'])) {\n\t\t\t\t\t\t\t\t$this->x += ($this->pagedim[$endpage]['olm'] - $this->pagedim[$startpage]['olm']);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif (!$in_table_head) {\n\t\t\t\t\t\t// we are not inside a thead section\n\t\t\t\t\t\tif (isset($parent['cellpadding'])) {\n\t\t\t\t\t\t\t$this->cMargin = $this->oldcMargin;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$this->lasth = $this->FontSize * $this->cell_height_ratio;\n\t\t\t\t\t\tif (isset($this->theadMargins['top'])) {\n\t\t\t\t\t\t\tif (($this->theadMargins['top'] == $this->tMargin) AND ($this->page == ($this->numpages - 1))) {\n\t\t\t\t\t\t\t\t// remove last page containing only THEAD\n\t\t\t\t\t\t\t\t$this->deletePage($this->numpages);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// restore top margin\n\t\t\t\t\t\t\t$this->tMargin = $this->theadMargins['top'];\n\t\t\t\t\t\t\t$this->pagedim[$this->page]['tm'] = $this->tMargin;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (!isset($table_el['attribute']['nested']) OR ($table_el['attribute']['nested'] != 'true')) {\n\t\t\t\t\t\t\t// reset main table header\n\t\t\t\t\t\t\t$this->thead = '';\n\t\t\t\t\t\t\t$this->theadMargins = array();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'a': {\n\t\t\t\t\t$this->HREF = '';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'sup': {\n\t\t\t\t\t$this->SetXY($this->GetX(), $this->GetY() + ((0.7 * $parent['fontsize']) / $this->k));\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'sub': {\n\t\t\t\t\t$this->SetXY($this->GetX(), $this->GetY() - ((0.3 * $parent['fontsize'])/$this->k));\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'div': {\n\t\t\t\t\t$this->addHTMLVertSpace($hbz, 0, $cell, $firstorlast);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'blockquote': {\n\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t$this->rMargin -= $this->listindent;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->lMargin -= $this->listindent;\n\t\t\t\t\t}\n\t\t\t\t\t--$this->listindentlevel;\n\t\t\t\t\t$this->addHTMLVertSpace($hbz, $hb, $cell, $firstorlast);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'p': {\n\t\t\t\t\t$this->addHTMLVertSpace($hbz, $hb, $cell, $firstorlast);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'pre': {\n\t\t\t\t\t$this->addHTMLVertSpace($hbz, $hb, $cell, $firstorlast);\n\t\t\t\t\t$this->premode = false;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'dl': {\n\t\t\t\t\t--$this->listnum;\n\t\t\t\t\tif ($this->listnum <= 0) {\n\t\t\t\t\t\t$this->listnum = 0;\n\t\t\t\t\t\t$this->addHTMLVertSpace($hbz, $hb, $cell, $firstorlast);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->addHTMLVertSpace(0, 0, $cell, $firstorlast);\n\t\t\t\t\t}\n\t\t\t\t\t$this->lasth = $this->FontSize * $this->cell_height_ratio;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'dt': {\n\t\t\t\t\t$this->lispacer = '';\n\t\t\t\t\t$this->addHTMLVertSpace(0, 0, $cell, $firstorlast);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'dd': {\n\t\t\t\t\t$this->lispacer = '';\n\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t$this->rMargin -= $this->listindent;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->lMargin -= $this->listindent;\n\t\t\t\t\t}\n\t\t\t\t\t--$this->listindentlevel;\n\t\t\t\t\t$this->addHTMLVertSpace(0, 0, $cell, $firstorlast);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'ul':\n\t\t\t\tcase 'ol': {\n\t\t\t\t\t--$this->listnum;\n\t\t\t\t\t$this->lispacer = '';\n\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t$this->rMargin -= $this->listindent;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->lMargin -= $this->listindent;\n\t\t\t\t\t}\n\t\t\t\t\t--$this->listindentlevel;\n\t\t\t\t\tif ($this->listnum <= 0) {\n\t\t\t\t\t\t$this->listnum = 0;\n\t\t\t\t\t\t$this->addHTMLVertSpace($hbz, $hb, $cell, $firstorlast);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->addHTMLVertSpace(0, 0, $cell, $firstorlast);\n\t\t\t\t\t}\n\t\t\t\t\t$this->lasth = $this->FontSize * $this->cell_height_ratio;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'li': {\n\t\t\t\t\t$this->lispacer = '';\n\t\t\t\t\t$this->addHTMLVertSpace(0, 0, $cell, $firstorlast);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'h1':\n\t\t\t\tcase 'h2':\n\t\t\t\tcase 'h3':\n\t\t\t\tcase 'h4':\n\t\t\t\tcase 'h5':\n\t\t\t\tcase 'h6': {\n\t\t\t\t\t$this->addHTMLVertSpace($hbz, $hb, $cell, $firstorlast);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t// Form fields (since 4.8.000 - 2009-09-07)\n\t\t\t\tcase 'form': {\n\t\t\t\t\t$this->form_action = '';\n\t\t\t\t\t$this->form_enctype = 'application/x-www-form-urlencoded';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tdefault : {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (isset($dom[($dom[$key]['parent'])]['attribute']['pagebreakafter'])) {\n\t\t\t\t$pba = $dom[($dom[$key]['parent'])]['attribute']['pagebreakafter'];\n\t\t\t\t// check for pagebreak\n\t\t\t\tif (($pba == 'true') OR ($pba == 'left') OR ($pba == 'right')) {\n\t\t\t\t\t// add a page (or trig AcceptPageBreak() for multicolumn mode)\n\t\t\t\t\t$this->checkPageBreak($this->PageBreakTrigger + 1);\n\t\t\t\t}\n\t\t\t\tif ((($pba == 'left') AND (((!$this->rtl) AND (($this->page % 2) == 0)) OR (($this->rtl) AND (($this->page % 2) != 0))))\n\t\t\t\t\tOR (($pba == 'right') AND (((!$this->rtl) AND (($this->page % 2) != 0)) OR (($this->rtl) AND (($this->page % 2) == 0))))) {\n\t\t\t\t\t// add a page (or trig AcceptPageBreak() for multicolumn mode)\n\t\t\t\t\t$this->checkPageBreak($this->PageBreakTrigger + 1);\n\t\t\t\t}\n\t\t\t}\n\t\t\t$this->tmprtl = false;\n\t\t}\n\n\t\t/**\n\t\t * Add vertical spaces if needed.\n\t\t * @param string $hbz Distance between current y and line bottom.\n\t\t * @param string $hb The height of the break.\n\t\t * @param boolean $cell if true add the default cMargin space to each new line (default false).\n\t\t * @param boolean $firstorlast if true do not print additional empty lines.\n\t\t * @access protected\n\t\t */\n\t\tprotected function addHTMLVertSpace($hbz=0, $hb=0, $cell=false, $firstorlast=false) {\n\t\t\tif ($firstorlast) {\n\t\t\t\t$this->Ln(0, $cell);\n\t\t\t\t$this->htmlvspace = 0;\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif ($hb < $this->htmlvspace) {\n\t\t\t\t$hd = 0;\n\t\t\t} else {\n\t\t\t\t$hd = $hb - $this->htmlvspace;\n\t\t\t\t$this->htmlvspace = $hb;\n\t\t\t}\n\t\t\t$this->Ln(($hbz + $hd), $cell);\n\t\t}\n\n\t\t/**\n\t\t * Set the default bullet to be used as LI bullet symbol\n\t\t * @param string $symbol character or string to be used (legal values are: '' = automatic, '!' = auto bullet, '#' = auto numbering, 'disc', 'disc', 'circle', 'square', '1', 'decimal', 'decimal-leading-zero', 'i', 'lower-roman', 'I', 'upper-roman', 'a', 'lower-alpha', 'lower-latin', 'A', 'upper-alpha', 'upper-latin', 'lower-greek')\n\t\t * @access public\n\t\t * @since 4.0.028 (2008-09-26)\n\t\t */\n\t\tpublic function setLIsymbol($symbol='!') {\n\t\t\t$symbol = strtolower($symbol);\n\t\t\tswitch ($symbol) {\n\t\t\t\tcase '!' :\n\t\t\t\tcase '#' :\n\t\t\t\tcase 'disc' :\n\t\t\t\tcase 'circle' :\n\t\t\t\tcase 'square' :\n\t\t\t\tcase '1':\n\t\t\t\tcase 'decimal':\n\t\t\t\tcase 'decimal-leading-zero':\n\t\t\t\tcase 'i':\n\t\t\t\tcase 'lower-roman':\n\t\t\t\tcase 'I':\n\t\t\t\tcase 'upper-roman':\n\t\t\t\tcase 'a':\n\t\t\t\tcase 'lower-alpha':\n\t\t\t\tcase 'lower-latin':\n\t\t\t\tcase 'A':\n\t\t\t\tcase 'upper-alpha':\n\t\t\t\tcase 'upper-latin':\n\t\t\t\tcase 'lower-greek': {\n\t\t\t\t\t$this->lisymbol = $symbol;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tdefault : {\n\t\t\t\t\t$this->lisymbol = '';\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Set the booklet mode for double-sided pages.\n\t\t * @param boolean $booklet true set the booklet mode on, fals eotherwise.\n\t\t * @param float $inner Inner page margin.\n\t\t * @param float $outer Outer page margin.\n\t\t * @access public\n\t\t * @since 4.2.000 (2008-10-29)\n\t\t */\n\t\tpublic function SetBooklet($booklet=true, $inner=-1, $outer=-1) {\n\t\t\t$this->booklet = $booklet;\n\t\t\tif ($inner >= 0) {\n\t\t\t\t$this->lMargin = $inner;\n\t\t\t}\n\t\t\tif ($outer >= 0) {\n\t\t\t\t$this->rMargin = $outer;\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Swap the left and right margins.\n\t\t * @param boolean $reverse if true swap left and right margins.\n\t\t * @access protected\n\t\t * @since 4.2.000 (2008-10-29)\n\t\t */\n\t\tprotected function swapMargins($reverse=true) {\n\t\t\tif ($reverse) {\n\t\t\t\t// swap left and right margins\n\t\t\t\t$mtemp = $this->original_lMargin;\n\t\t\t\t$this->original_lMargin = $this->original_rMargin;\n\t\t\t\t$this->original_rMargin = $mtemp;\n\t\t\t\t$deltam = $this->original_lMargin - $this->original_rMargin;\n\t\t\t\t$this->lMargin += $deltam;\n\t\t\t\t$this->rMargin -= $deltam;\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Set the vertical spaces for HTML tags.\n\t\t * The array must have the following structure (example):\n\t\t * $tagvs = array('h1' => array(0 => array('h' => '', 'n' => 2), 1 => array('h' => 1.3, 'n' => 1)));\n\t\t * The first array level contains the tag names,\n\t\t * the second level contains 0 for opening tags or 1 for closing tags,\n\t\t * the third level contains the vertical space unit (h) and the number spaces to add (n).\n\t\t * If the h parameter is not specified, default values are used.\n\t\t * @param array $tagvs array of tags and relative vertical spaces.\n\t\t * @access public\n\t\t * @since 4.2.001 (2008-10-30)\n\t\t */\n\t\tpublic function setHtmlVSpace($tagvs) {\n\t\t\t$this->tagvspaces = $tagvs;\n\t\t}\n\n        /**\n\t\t * Set custom width for list indentation.\n\t\t * @param float $width width of the indentation. Use negative value to disable it.\n\t\t * @access public\n\t\t * @since 4.2.007 (2008-11-12)\n\t\t */\n\t\tpublic function setListIndentWidth($width) {\n\t\t\treturn $this->customlistindent = floatval($width);\n        }\n\n        /**\n\t\t * Set the top/bottom cell sides to be open or closed when the cell cross the page.\n\t\t * @param boolean $isopen if true keeps the top/bottom border open for the cell sides that cross the page.\n\t\t * @access public\n\t\t * @since 4.2.010 (2008-11-14)\n\t\t */\n\t\tpublic function setOpenCell($isopen) {\n\t\t\t$this->opencell = $isopen;\n        }\n\n        /**\n\t\t * Set the color and font style for HTML links.\n\t\t * @param array $color RGB array of colors\n\t\t * @param string $fontstyle additional font styles to add\n\t\t * @access public\n\t\t * @since 4.4.003 (2008-12-09)\n\t\t */\n\t\tpublic function setHtmlLinksStyle($color=array(0,0,255), $fontstyle='U') {\n\t\t\t$this->htmlLinkColorArray = $color;\n\t\t\t$this->htmlLinkFontStyle = $fontstyle;\n        }\n\n        /**\n\t\t * Convert HTML string containing value and unit of measure to user's units or points.\n\t\t * @param string $htmlval string containing values and unit\n\t\t * @param string $refsize reference value in points\n\t\t * @param string $defaultunit default unit (can be one of the following: %, em, ex, px, in, mm, pc, pt).\n\t\t * @param boolean $point if true returns points, otherwise returns value in user's units\n\t\t * @return float value in user's unit or point if $points=true\n\t\t * @access public\n\t\t * @since 4.4.004 (2008-12-10)\n\t\t */\n        public function getHTMLUnitToUnits($htmlval, $refsize=1, $defaultunit='px', $points=false) {\n\t\t\t$supportedunits = array('%', 'em', 'ex', 'px', 'in', 'cm', 'mm', 'pc', 'pt');\n\t\t\t$retval = 0;\n\t\t\t$value = 0;\n\t\t\t$unit = 'px';\n\t\t\t$k = $this->k;\n\t\t\tif ($points) {\n\t\t\t\t$k = 1;\n\t\t\t}\n\t\t\tif (in_array($defaultunit, $supportedunits)) {\n\t\t\t\t$unit = $defaultunit;\n\t\t\t}\n\t\t\tif (is_numeric($htmlval)) {\n\t\t\t\t$value = floatval($htmlval);\n\t\t\t} elseif (preg_match('/([0-9\\.\\-\\+]+)/', $htmlval, $mnum)) {\n\t\t\t\t$value = floatval($mnum[1]);\n\t\t\t\tif (preg_match('/([a-z%]+)/', $htmlval, $munit)) {\n\t\t\t\t\tif (in_array($munit[1], $supportedunits)) {\n\t\t\t\t\t\t$unit = $munit[1];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tswitch ($unit) {\n\t\t\t\t// percentage\n\t\t\t\tcase '%': {\n\t\t\t\t\t$retval = (($value * $refsize) / 100);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t// relative-size\n\t\t\t\tcase 'em': {\n\t\t\t\t\t$retval = ($value * $refsize);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'ex': {\n\t\t\t\t\t$retval = $value * ($refsize / 2);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t// absolute-size\n\t\t\t\tcase 'in': {\n\t\t\t\t\t$retval = ($value * $this->dpi) / $k;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'cm': {\n\t\t\t\t\t$retval = ($value / 2.54 * $this->dpi) / $k;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'mm': {\n\t\t\t\t\t$retval = ($value / 25.4 * $this->dpi) / $k;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'pc': {\n\t\t\t\t\t// one pica is 12 points\n\t\t\t\t\t$retval = ($value * 12) / $k;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'pt': {\n\t\t\t\t\t$retval = $value / $k;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'px': {\n\t\t\t\t\t$retval = $this->pixelsToUnits($value);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $retval;\n\t\t}\n\n\t\t/**\n\t\t * Returns the Roman representation of an integer number\n\t\t * @param int number to convert\n\t\t * @return string roman representation of the specified number\n\t\t * @access public\n\t\t * @since 4.4.004 (2008-12-10)\n\t\t */\n\t\tpublic function intToRoman($number) {\n\t\t\t$roman = '';\n\t\t\twhile ($number >= 1000) {\n\t\t\t\t$roman .= 'M';\n\t\t\t\t$number -= 1000;\n\t\t\t}\n\t\t\twhile ($number >= 900) {\n\t\t\t\t$roman .= 'CM';\n\t\t\t\t$number -= 900;\n\t\t\t}\n\t\t\twhile ($number >= 500) {\n\t\t\t\t$roman .= 'D';\n\t\t\t\t$number -= 500;\n\t\t\t}\n\t\t\twhile ($number >= 400) {\n\t\t\t\t$roman .= 'CD';\n\t\t\t\t$number -= 400;\n\t\t\t}\n\t\t\twhile ($number >= 100) {\n\t\t\t\t$roman .= 'C';\n\t\t\t\t$number -= 100;\n\t\t\t}\n\t\t\twhile ($number >= 90) {\n\t\t\t\t$roman .= 'XC';\n\t\t\t\t$number -= 90;\n\t\t\t}\n\t\t\twhile ($number >= 50) {\n\t\t\t\t$roman .= 'L';\n\t\t\t\t$number -= 50;\n\t\t\t}\n\t\t\twhile ($number >= 40) {\n\t\t\t\t$roman .= 'XL';\n\t\t\t\t$number -= 40;\n\t\t\t}\n\t\t\twhile ($number >= 10) {\n\t\t\t\t$roman .= 'X';\n\t\t\t\t$number -= 10;\n\t\t\t}\n\t\t\twhile ($number >= 9) {\n\t\t\t\t$roman .= 'IX';\n\t\t\t\t$number -= 9;\n\t\t\t}\n\t\t\twhile ($number >= 5) {\n\t\t\t\t$roman .= 'V';\n\t\t\t\t$number -= 5;\n\t\t\t}\n\t\t\twhile ($number >= 4) {\n\t\t\t\t$roman .= 'IV';\n\t\t\t\t$number -= 4;\n\t\t\t}\n\t\t\twhile ($number >= 1) {\n\t\t\t\t$roman .= 'I';\n\t\t\t\t--$number;\n\t\t\t}\n\t\t\treturn $roman;\n\t\t}\n\n\t\t/**\n\t\t * Output an HTML list bullet or ordered item symbol\n\t\t * @param int $listdepth list nesting level\n\t\t * @param string $listtype type of list\n\t\t * @param float $size current font size\n\t\t * @access protected\n\t\t * @since 4.4.004 (2008-12-10)\n\t\t */\n\t\tprotected function putHtmlListBullet($listdepth, $listtype='', $size=10) {\n\t\t\t$size /= $this->k;\n\t\t\t$fill = '';\n\t\t\t$color = $this->fgcolor;\n\t\t\t$width = 0;\n\t\t\t$textitem = '';\n\t\t\t$tmpx = $this->x;\n\t\t\t$lspace = $this->GetStringWidth('  ');\n\t\t\tif ($listtype == '!') {\n\t\t\t\t// set default list type for unordered list\n\t\t\t\t$deftypes = array('disc', 'circle', 'square');\n\t\t\t\t$listtype = $deftypes[($listdepth - 1) % 3];\n\t\t\t} elseif ($listtype == '#') {\n\t\t\t\t// set default list type for ordered list\n\t\t\t\t$listtype = 'decimal';\n\t\t\t}\n        \tswitch ($listtype) {\n        \t\t// unordered types\n\t\t\t\tcase 'none': {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'disc': {\n\t\t\t\t\t$fill = 'F';\n\t\t\t\t}\n\t\t\t\tcase 'circle': {\n\t\t\t\t\t$fill .= 'D';\n\t\t\t\t\t$r = $size / 6;\n\t\t\t\t\t$lspace += (2 * $r);\n\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t$this->x += $lspace;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->x -= $lspace;\n\t\t\t\t\t}\n\t\t\t\t\t$this->Circle(($this->x + $r), ($this->y + ($this->lasth / 2)), $r, 0, 360, $fill, array('color'=>$color), $color, 8);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'square': {\n\t\t\t\t\t$l = $size / 3;\n\t\t\t\t\t$lspace += $l;\n\t\t\t\t\tif ($this->rtl) {;\n\t\t\t\t\t\t$this->x += $lspace;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->x -= $lspace;\n\t\t\t\t\t}\n\t\t\t\t\t$this->Rect($this->x, ($this->y + (($this->lasth - $l)/ 2)), $l, $l, 'F', array(), $color);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t// ordered types\n\t\t\t\t// $this->listcount[$this->listnum];\n\t\t\t\t// $textitem\n\t\t\t\tcase '1':\n\t\t\t\tcase 'decimal': {\n\t\t\t\t\t$textitem = $this->listcount[$this->listnum];\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'decimal-leading-zero': {\n\t\t\t\t\t$textitem = sprintf('%02d', $this->listcount[$this->listnum]);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'i':\n\t\t\t\tcase 'lower-roman': {\n\t\t\t\t\t$textitem = strtolower($this->intToRoman($this->listcount[$this->listnum]));\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'I':\n\t\t\t\tcase 'upper-roman': {\n\t\t\t\t\t$textitem = $this->intToRoman($this->listcount[$this->listnum]);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'a':\n\t\t\t\tcase 'lower-alpha':\n\t\t\t\tcase 'lower-latin': {\n\t\t\t\t\t$textitem = chr(97 + $this->listcount[$this->listnum] - 1);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'A':\n\t\t\t\tcase 'upper-alpha':\n\t\t\t\tcase 'upper-latin': {\n\t\t\t\t\t$textitem = chr(65 + $this->listcount[$this->listnum] - 1);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'lower-greek': {\n\t\t\t\t\t$textitem = $this->unichr(945 + $this->listcount[$this->listnum] - 1);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t/*\n\t\t\t\t// Types to be implemented (special handling)\n\t\t\t\tcase 'hebrew': {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'armenian': {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'georgian': {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'cjk-ideographic': {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'hiragana': {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'katakana': {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'hiragana-iroha': {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'katakana-iroha': {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t*/\n\t\t\t\tdefault: {\n\t\t\t\t\t$textitem = $this->listcount[$this->listnum];\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (!$this->empty_string($textitem)) {\n\t\t\t\t// print ordered item\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$textitem = '.'.$textitem;\n\t\t\t\t} else {\n\t\t\t\t\t$textitem = $textitem.'.';\n\t\t\t\t}\n\t\t\t\t$lspace += $this->GetStringWidth($textitem);\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$this->x += $lspace;\n\t\t\t\t} else {\n\t\t\t\t\t$this->x -= $lspace;\n\t\t\t\t}\n\t\t\t\t$this->Write($this->lasth, $textitem, '', false, '', false, 0, false);\n\t\t\t}\n\t\t\t$this->x = $tmpx;\n\t\t\t$this->lispacer = '';\n\t\t}\n\n        /**\n\t\t * Returns current graphic variables as array.\n\t\t * @return array graphic variables\n\t\t * @access protected\n\t\t * @since 4.2.010 (2008-11-14)\n\t\t */\n\t\tprotected function getGraphicVars() {\n\t\t\t$grapvars = array(\n\t\t\t\t'FontFamily' => $this->FontFamily,\n\t\t\t\t'FontStyle' => $this->FontStyle,\n\t\t\t\t'FontSizePt' => $this->FontSizePt,\n\t\t\t\t'rMargin' => $this->rMargin,\n\t\t\t\t'lMargin' => $this->lMargin,\n\t\t\t\t'cMargin' => $this->cMargin,\n\t\t\t\t'LineWidth' => $this->LineWidth,\n\t\t\t\t'linestyleWidth' => $this->linestyleWidth,\n\t\t\t\t'linestyleCap' => $this->linestyleCap,\n\t\t\t\t'linestyleJoin' => $this->linestyleJoin,\n\t\t\t\t'linestyleDash' => $this->linestyleDash,\n\t\t\t\t'textrendermode' => $this->textrendermode,\n\t\t\t\t'textstrokewidth' => $this->textstrokewidth,\n\t\t\t\t'DrawColor' => $this->DrawColor,\n\t\t\t\t'FillColor' => $this->FillColor,\n\t\t\t\t'TextColor' => $this->TextColor,\n\t\t\t\t'ColorFlag' => $this->ColorFlag,\n\t\t\t\t'bgcolor' => $this->bgcolor,\n\t\t\t\t'fgcolor' => $this->fgcolor,\n\t\t\t\t'htmlvspace' => $this->htmlvspace,\n\t\t\t\t'lasth' => $this->lasth\n\t\t\t\t);\n\t\t\treturn $grapvars;\n\t\t}\n\n        /**\n\t\t * Set graphic variables.\n\t\t * @param $gvars array graphic variables\n\t\t * @access protected\n\t\t * @since 4.2.010 (2008-11-14)\n\t\t */\n\t\tprotected function setGraphicVars($gvars) {\n\t\t\t$this->FontFamily = $gvars['FontFamily'];\n\t\t\t$this->FontStyle = $gvars['FontStyle'];\n\t\t\t$this->FontSizePt = $gvars['FontSizePt'];\n\t\t\t$this->rMargin = $gvars['rMargin'];\n\t\t\t$this->lMargin = $gvars['lMargin'];\n\t\t\t$this->cMargin = $gvars['cMargin'];\n\t\t\t$this->LineWidth = $gvars['LineWidth'];\n\t\t\t$this->linestyleWidth = $gvars['linestyleWidth'];\n\t\t\t$this->linestyleCap = $gvars['linestyleCap'];\n\t\t\t$this->linestyleJoin = $gvars['linestyleJoin'];\n\t\t\t$this->linestyleDash = $gvars['linestyleDash'];\n\t\t\t$this->textrendermode = $gvars['textrendermode'];\n\t\t\t$this->textstrokewidth = $gvars['textstrokewidth'];\n\t\t\t$this->DrawColor = $gvars['DrawColor'];\n\t\t\t$this->FillColor = $gvars['FillColor'];\n\t\t\t$this->TextColor = $gvars['TextColor'];\n\t\t\t$this->ColorFlag = $gvars['ColorFlag'];\n\t\t\t$this->bgcolor = $gvars['bgcolor'];\n\t\t\t$this->fgcolor = $gvars['fgcolor'];\n\t\t\t$this->htmlvspace = $gvars['htmlvspace'];\n\t\t\t//$this->lasth = $gvars['lasth'];\n\t\t\t$this->_out(''.$this->linestyleWidth.' '.$this->linestyleCap.' '.$this->linestyleJoin.' '.$this->linestyleDash.' '.$this->DrawColor.' '.$this->FillColor.'');\n\t\t\tif (!$this->empty_string($this->FontFamily)) {\n\t\t\t\t$this->SetFont($this->FontFamily, $this->FontStyle, $this->FontSizePt);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Returns a temporary filename for caching object on filesystem.\n\t\t * @param string $prefix prefix to add to filename\n\t\t * return string filename.\n\t\t * @access protected\n\t\t * @since 4.5.000 (2008-12-31)\n\t\t */\n\t\tprotected function getObjFilename($name) {\n\t\t\treturn tempnam(K_PATH_CACHE, $name.'_');\n\t\t}\n\n        /**\n\t\t * Writes data to a temporary file on filesystem.\n\t\t * @param string $file file name\n\t\t * @param mixed $data data to write on file\n\t\t * @param boolean $append if true append data, false replace.\n\t\t * @access protected\n\t\t * @since 4.5.000 (2008-12-31)\n\t\t */\n\t\tprotected function writeDiskCache($filename, $data, $append=false) {\n\t\t\tif ($append) {\n\t\t\t\t$fmode = 'ab+';\n\t\t\t} else {\n\t\t\t\t$fmode = 'wb+';\n\t\t\t}\n\t\t\t$f = @fopen($filename, $fmode);\n\t\t\tif (!$f) {\n\t\t\t\t$this->Error('Unable to write cache file: '.$filename);\n\t\t\t} else {\n\t\t\t\tfwrite($f, $data);\n\t\t\t\tfclose($f);\n\t\t\t}\n\t\t\t// update file length (needed for transactions)\n\t\t\tif (!isset($this->cache_file_length['_'.$filename])) {\n\t\t\t\t$this->cache_file_length['_'.$filename] = strlen($data);\n\t\t\t} else {\n\t\t\t\t$this->cache_file_length['_'.$filename] += strlen($data);\n\t\t\t}\n\t\t}\n\n        /**\n\t\t * Read data from a temporary file on filesystem.\n\t\t * @param string $file file name\n\t\t * @return mixed retrieved data\n\t\t * @access protected\n\t\t * @since 4.5.000 (2008-12-31)\n\t\t */\n\t\tprotected function readDiskCache($filename) {\n\t\t\treturn file_get_contents($filename);\n\t\t}\n\n\t\t/**\n\t\t * Set buffer content (always append data).\n\t\t * @param string $data data\n\t\t * @access protected\n\t\t * @since 4.5.000 (2009-01-02)\n\t\t */\n\t\tprotected function setBuffer($data) {\n\t\t\t$this->bufferlen += strlen($data);\n\t\t\tif ($this->diskcache) {\n\t\t\t\tif (!isset($this->buffer) OR $this->empty_string($this->buffer)) {\n\t\t\t\t\t$this->buffer = $this->getObjFilename('buffer');\n\t\t\t\t}\n\t\t\t\t$this->writeDiskCache($this->buffer, $data, true);\n\t\t\t} else {\n\t\t\t\t$this->buffer .= $data;\n\t\t\t}\n\t\t}\n\n        /**\n\t\t * Get buffer content.\n\t\t * @return string buffer content\n\t\t * @access protected\n\t\t * @since 4.5.000 (2009-01-02)\n\t\t */\n\t\tprotected function getBuffer() {\n\t\t\tif ($this->diskcache) {\n\t\t\t\treturn $this->readDiskCache($this->buffer);\n\t\t\t} else {\n\t\t\t\treturn $this->buffer;\n\t\t\t}\n\t\t}\n\n        /**\n\t\t * Set page buffer content.\n\t\t * @param int $page page number\n\t\t * @param string $data page data\n\t\t * @param boolean $append if true append data, false replace.\n\t\t * @access protected\n\t\t * @since 4.5.000 (2008-12-31)\n\t\t */\n\t\tprotected function setPageBuffer($page, $data, $append=false) {\n\t\t\tif ($this->diskcache) {\n\t\t\t\tif (!isset($this->pages[$page])) {\n\t\t\t\t\t$this->pages[$page] = $this->getObjFilename('page'.$page);\n\t\t\t\t}\n\t\t\t\t$this->writeDiskCache($this->pages[$page], $data, $append);\n\t\t\t} else {\n\t\t\t\tif ($append) {\n\t\t\t\t\t$this->pages[$page] .= $data;\n\t\t\t\t} else {\n\t\t\t\t\t$this->pages[$page] = $data;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ($append AND isset($this->pagelen[$page])) {\n\t\t\t\t$this->pagelen[$page] += strlen($data);\n\t\t\t} else {\n\t\t\t\t$this->pagelen[$page] = strlen($data);\n\t\t\t}\n\t\t}\n\n        /**\n\t\t * Get page buffer content.\n\t\t * @param int $page page number\n\t\t * @return string page buffer content or false in case of error\n\t\t * @access protected\n\t\t * @since 4.5.000 (2008-12-31)\n\t\t */\n\t\tprotected function getPageBuffer($page) {\n\t\t\tif ($this->diskcache) {\n\t\t\t\treturn $this->readDiskCache($this->pages[$page]);\n\t\t\t} elseif (isset($this->pages[$page])) {\n\t\t\t\treturn $this->pages[$page];\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\n        /**\n\t\t * Set image buffer content.\n\t\t * @param string $image image key\n\t\t * @param array $data image data\n\t\t * @access protected\n\t\t * @since 4.5.000 (2008-12-31)\n\t\t */\n\t\tprotected function setImageBuffer($image, $data) {\n\t\t\tif ($this->diskcache) {\n\t\t\t\tif (!isset($this->images[$image])) {\n\t\t\t\t\t$this->images[$image] = $this->getObjFilename('image'.$image);\n\t\t\t\t}\n\t\t\t\t$this->writeDiskCache($this->images[$image], serialize($data));\n\t\t\t} else {\n\t\t\t\t$this->images[$image] = $data;\n\t\t\t}\n\t\t\tif (!in_array($image, $this->imagekeys)) {\n\t\t\t\t$this->imagekeys[] = $image;\n\t\t\t\t++$this->numimages;\n\t\t\t}\n\t\t}\n\n        /**\n\t\t * Set image buffer content for a specified sub-key.\n\t\t * @param string $image image key\n\t\t * @param string $key image sub-key\n\t\t * @param array $data image data\n\t\t * @access protected\n\t\t * @since 4.5.000 (2008-12-31)\n\t\t */\n\t\tprotected function setImageSubBuffer($image, $key, $data) {\n\t\t\tif (!isset($this->images[$image])) {\n\t\t\t\t$this->setImageBuffer($image, array());\n\t\t\t}\n\t\t\tif ($this->diskcache) {\n\t\t\t\t$tmpimg = $this->getImageBuffer($image);\n\t\t\t\t$tmpimg[$key] = $data;\n\t\t\t\t$this->writeDiskCache($this->images[$image], serialize($tmpimg));\n\t\t\t} else {\n\t\t\t\t$this->images[$image][$key] = $data;\n\t\t\t}\n\t\t}\n\n        /**\n\t\t * Get image buffer content.\n\t\t * @param string $image image key\n\t\t * @return string image buffer content or false in case of error\n\t\t * @access protected\n\t\t * @since 4.5.000 (2008-12-31)\n\t\t */\n\t\tprotected function getImageBuffer($image) {\n\t\t\tif ($this->diskcache AND isset($this->images[$image])) {\n\t\t\t\treturn unserialize($this->readDiskCache($this->images[$image]));\n\t\t\t} elseif (isset($this->images[$image])) {\n\t\t\t\treturn $this->images[$image];\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\n\t\t/**\n\t\t * Set font buffer content.\n\t\t * @param string $font font key\n\t\t * @param array $data font data\n\t\t * @access protected\n\t\t * @since 4.5.000 (2009-01-02)\n\t\t */\n\t\tprotected function setFontBuffer($font, $data) {\n\t\t\tif ($this->diskcache) {\n\t\t\t\tif (!isset($this->fonts[$font])) {\n\t\t\t\t\t$this->fonts[$font] = $this->getObjFilename('font');\n\t\t\t\t}\n\t\t\t\t$this->writeDiskCache($this->fonts[$font], serialize($data));\n\t\t\t} else {\n\t\t\t\t$this->fonts[$font] = $data;\n\t\t\t}\n\t\t\tif (!in_array($font, $this->fontkeys)) {\n\t\t\t\t$this->fontkeys[] = $font;\n\t\t\t}\n\t\t}\n\n        /**\n\t\t * Set font buffer content.\n\t\t * @param string $font font key\n\t\t * @param string $key font sub-key\n\t\t * @param array $data font data\n\t\t * @access protected\n\t\t * @since 4.5.000 (2009-01-02)\n\t\t */\n\t\tprotected function setFontSubBuffer($font, $key, $data) {\n\t\t\tif (!isset($this->fonts[$font])) {\n\t\t\t\t$this->setFontBuffer($font, array());\n\t\t\t}\n\t\t\tif ($this->diskcache) {\n\t\t\t\t$tmpfont = $this->getFontBuffer($font);\n\t\t\t\t$tmpfont[$key] = $data;\n\t\t\t\t$this->writeDiskCache($this->fonts[$font], serialize($tmpfont));\n\t\t\t} else {\n\t\t\t\t$this->fonts[$font][$key] = $data;\n\t\t\t}\n\t\t}\n\n        /**\n\t\t * Get font buffer content.\n\t\t * @param string $font font key\n\t\t * @return string font buffer content or false in case of error\n\t\t * @access protected\n\t\t * @since 4.5.000 (2009-01-02)\n\t\t */\n\t\tprotected function getFontBuffer($font) {\n\t\t\tif ($this->diskcache AND isset($this->fonts[$font])) {\n\t\t\t\treturn unserialize($this->readDiskCache($this->fonts[$font]));\n\t\t\t} elseif (isset($this->fonts[$font])) {\n\t\t\t\treturn $this->fonts[$font];\n\t\t\t}\n\t\t\treturn false;\n\t\t}\n\n\t\t/**\n\t\t * Move a page to a previous position.\n\t\t * @param int $frompage number of the source page\n\t\t * @param int $topage number of the destination page (must be less than $frompage)\n\t\t * @return true in case of success, false in case of error.\n\t\t * @access public\n\t\t * @since 4.5.000 (2009-01-02)\n\t\t */\n\t\tpublic function movePage($frompage, $topage) {\n\t\t\tif (($frompage > $this->numpages) OR ($frompage <= $topage)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tif ($frompage == $this->page) {\n\t\t\t\t// close the page before moving it\n\t\t\t\t$this->endPage();\n\t\t\t}\n\t\t\t// move all page-related states\n\t\t\t$tmppage = $this->pages[$frompage];\n\t\t\t$tmppagedim = $this->pagedim[$frompage];\n\t\t\t$tmppagelen = $this->pagelen[$frompage];\n\t\t\t$tmpintmrk = $this->intmrk[$frompage];\n\t\t\tif (isset($this->footerpos[$frompage])) {\n\t\t\t\t$tmpfooterpos = $this->footerpos[$frompage];\n\t\t\t}\n\t\t\tif (isset($this->footerlen[$frompage])) {\n\t\t\t\t$tmpfooterlen = $this->footerlen[$frompage];\n\t\t\t}\n\t\t\tif (isset($this->transfmrk[$frompage])) {\n\t\t\t\t$tmptransfmrk = $this->transfmrk[$frompage];\n\t\t\t}\n\t\t\tif (isset($this->PageAnnots[$frompage])) {\n\t\t\t\t$tmpannots = $this->PageAnnots[$frompage];\n\t\t\t}\n\t\t\tif (isset($this->newpagegroup[$frompage])) {\n\t\t\t\t$tmpnewpagegroup = $this->newpagegroup[$frompage];\n\t\t\t}\n\t\t\tfor ($i = $frompage; $i > $topage; --$i) {\n\t\t\t\t$j = $i - 1;\n\t\t\t\t// shift pages down\n\t\t\t\t$this->pages[$i] = $this->pages[$j];\n\t\t\t\t$this->pagedim[$i] = $this->pagedim[$j];\n\t\t\t\t$this->pagelen[$i] = $this->pagelen[$j];\n\t\t\t\t$this->intmrk[$i] = $this->intmrk[$j];\n\t\t\t\tif (isset($this->footerpos[$j])) {\n\t\t\t\t\t$this->footerpos[$i] = $this->footerpos[$j];\n\t\t\t\t} elseif (isset($this->footerpos[$i])) {\n\t\t\t\t\tunset($this->footerpos[$i]);\n\t\t\t\t}\n\t\t\t\tif (isset($this->footerlen[$j])) {\n\t\t\t\t\t$this->footerlen[$i] = $this->footerlen[$j];\n\t\t\t\t} elseif (isset($this->footerlen[$i])) {\n\t\t\t\t\tunset($this->footerlen[$i]);\n\t\t\t\t}\n\t\t\t\tif (isset($this->transfmrk[$j])) {\n\t\t\t\t\t$this->transfmrk[$i] = $this->transfmrk[$j];\n\t\t\t\t} elseif (isset($this->transfmrk[$i])) {\n\t\t\t\t\tunset($this->transfmrk[$i]);\n\t\t\t\t}\n\t\t\t\tif (isset($this->PageAnnots[$j])) {\n\t\t\t\t\t$this->PageAnnots[$i] = $this->PageAnnots[$j];\n\t\t\t\t} elseif (isset($this->PageAnnots[$i])) {\n\t\t\t\t\tunset($this->PageAnnots[$i]);\n\t\t\t\t}\n\t\t\t\tif (isset($this->newpagegroup[$j])) {\n\t\t\t\t\t$this->newpagegroup[$i] = $this->newpagegroup[$j];\n\t\t\t\t} elseif (isset($this->newpagegroup[$i])) {\n\t\t\t\t\tunset($this->newpagegroup[$i]);\n\t\t\t\t}\n\t\t\t}\n\t\t\t$this->pages[$topage] = $tmppage;\n\t\t\t$this->pagedim[$topage] = $tmppagedim;\n\t\t\t$this->pagelen[$topage] = $tmppagelen;\n\t\t\t$this->intmrk[$topage] = $tmpintmrk;\n\t\t\tif (isset($tmpfooterpos)) {\n\t\t\t\t$this->footerpos[$topage] = $tmpfooterpos;\n\t\t\t} elseif (isset($this->footerpos[$topage])) {\n\t\t\t\tunset($this->footerpos[$topage]);\n\t\t\t}\n\t\t\tif (isset($tmpfooterlen)) {\n\t\t\t\t$this->footerlen[$topage] = $tmpfooterlen;\n\t\t\t} elseif (isset($this->footerlen[$topage])) {\n\t\t\t\tunset($this->footerlen[$topage]);\n\t\t\t}\n\t\t\tif (isset($tmptransfmrk)) {\n\t\t\t\t$this->transfmrk[$topage] = $tmptransfmrk;\n\t\t\t} elseif (isset($this->transfmrk[$topage])) {\n\t\t\t\tunset($this->transfmrk[$topage]);\n\t\t\t}\n\t\t\tif (isset($tmpannots)) {\n\t\t\t\t$this->PageAnnots[$topage] = $tmpannots;\n\t\t\t} elseif (isset($this->PageAnnots[$topage])) {\n\t\t\t\tunset($this->PageAnnots[$topage]);\n\t\t\t}\n\t\t\tif (isset($tmpnewpagegroup)) {\n\t\t\t\t$this->newpagegroup[$topage] = $tmpnewpagegroup;\n\t\t\t} elseif (isset($this->newpagegroup[$topage])) {\n\t\t\t\tunset($this->newpagegroup[$topage]);\n\t\t\t}\n\t\t\t// adjust outlines\n\t\t\t$tmpoutlines = $this->outlines;\n\t\t\tforeach ($tmpoutlines as $key => $outline) {\n\t\t\t\tif (($outline['p'] >= $topage) AND ($outline['p'] < $frompage)) {\n\t\t\t\t\t$this->outlines[$key]['p'] = $outline['p'] + 1;\n\t\t\t\t} elseif ($outline['p'] == $frompage) {\n\t\t\t\t\t$this->outlines[$key]['p'] = $topage;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// adjust links\n\t\t\t$tmplinks = $this->links;\n\t\t\tforeach ($tmplinks as $key => $link) {\n\t\t\t\tif (($link[0] >= $topage) AND ($link[0] < $frompage)) {\n\t\t\t\t\t$this->links[$key][0] = $link[0] + 1;\n\t\t\t\t} elseif ($link[0] == $frompage) {\n\t\t\t\t\t$this->links[$key][0] = $topage;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// adjust javascript\n\t\t\t$tmpjavascript = $this->javascript;\n\t\t\tglobal $jfrompage, $jtopage;\n\t\t\t$jfrompage = $frompage;\n\t\t\t$jtopage = $topage;\n\t\t\t$this->javascript = preg_replace_callback('/this\\.addField\\(\\'([^\\']*)\\',\\'([^\\']*)\\',([0-9]+)/',\n\t\t\t\tcreate_function('$matches', 'global $jfrompage, $jtopage;\n\t\t\t\t$pagenum = intval($matches[3]) + 1;\n\t\t\t\tif (($pagenum >= $jtopage) AND ($pagenum < $jfrompage)) {\n\t\t\t\t\t$newpage = ($pagenum + 1);\n\t\t\t\t} elseif ($pagenum == $jfrompage) {\n\t\t\t\t\t$newpage = $jtopage;\n\t\t\t\t} else {\n\t\t\t\t\t$newpage = $pagenum;\n\t\t\t\t}\n\t\t\t\t--$newpage;\n\t\t\t\treturn \"this.addField(\\'\".$matches[1].\"\\',\\'\".$matches[2].\"\\',\".$newpage.\"\";'), $tmpjavascript);\n\t\t\t// return to last page\n\t\t\t$this->lastPage(true);\n\t\t\treturn true;\n\t\t}\n\n        /**\n\t\t * Remove the specified page.\n\t\t * @param int $page page to remove\n\t\t * @return true in case of success, false in case of error.\n\t\t * @access public\n\t\t * @since 4.6.004 (2009-04-23)\n\t\t */\n\t\tpublic function deletePage($page) {\n\t\t\tif ($page > $this->numpages) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t// delete current page\n\t\t\tunset($this->pages[$page]);\n\t\t\tunset($this->pagedim[$page]);\n\t\t\tunset($this->pagelen[$page]);\n\t\t\tunset($this->intmrk[$page]);\n\t\t\tif (isset($this->footerpos[$page])) {\n\t\t\t\tunset($this->footerpos[$page]);\n\t\t\t}\n\t\t\tif (isset($this->footerlen[$page])) {\n\t\t\t\tunset($this->footerlen[$page]);\n\t\t\t}\n\t\t\tif (isset($this->transfmrk[$page])) {\n\t\t\t\tunset($this->transfmrk[$page]);\n\t\t\t}\n\t\t\tif (isset($this->PageAnnots[$page])) {\n\t\t\t\tunset($this->PageAnnots[$page]);\n\t\t\t}\n\t\t\tif (isset($this->newpagegroup[$page])) {\n\t\t\t\tunset($this->newpagegroup[$page]);\n\t\t\t}\n\t\t\tif (isset($this->pageopen[$page])) {\n\t\t\t\tunset($this->pageopen[$page]);\n\t\t\t}\n\t\t\t// update remaining pages\n\t\t\tfor ($i = $page; $i < $this->numpages; ++$i) {\n\t\t\t\t$j = $i + 1;\n\t\t\t\t// shift pages\n\t\t\t\t$this->pages[$i] = $this->pages[$j];\n\t\t\t\t$this->pagedim[$i] = $this->pagedim[$j];\n\t\t\t\t$this->pagelen[$i] = $this->pagelen[$j];\n\t\t\t\t$this->intmrk[$i] = $this->intmrk[$j];\n\t\t\t\tif (isset($this->footerpos[$j])) {\n\t\t\t\t\t$this->footerpos[$i] = $this->footerpos[$j];\n\t\t\t\t} elseif (isset($this->footerpos[$i])) {\n\t\t\t\t\tunset($this->footerpos[$i]);\n\t\t\t\t}\n\t\t\t\tif (isset($this->footerlen[$j])) {\n\t\t\t\t\t$this->footerlen[$i] = $this->footerlen[$j];\n\t\t\t\t} elseif (isset($this->footerlen[$i])) {\n\t\t\t\t\tunset($this->footerlen[$i]);\n\t\t\t\t}\n\t\t\t\tif (isset($this->transfmrk[$j])) {\n\t\t\t\t\t$this->transfmrk[$i] = $this->transfmrk[$j];\n\t\t\t\t} elseif (isset($this->transfmrk[$i])) {\n\t\t\t\t\tunset($this->transfmrk[$i]);\n\t\t\t\t}\n\t\t\t\tif (isset($this->PageAnnots[$j])) {\n\t\t\t\t\t$this->PageAnnots[$i] = $this->PageAnnots[$j];\n\t\t\t\t} elseif (isset($this->PageAnnots[$i])) {\n\t\t\t\t\tunset($this->PageAnnots[$i]);\n\t\t\t\t}\n\t\t\t\tif (isset($this->newpagegroup[$j])) {\n\t\t\t\t\t$this->newpagegroup[$i] = $this->newpagegroup[$j];\n\t\t\t\t} elseif (isset($this->newpagegroup[$i])) {\n\t\t\t\t\tunset($this->newpagegroup[$i]);\n\t\t\t\t}\n\t\t\t\tif (isset($this->pageopen[$j])) {\n\t\t\t\t\t$this->pageopen[$i] = $this->pageopen[$j];\n\t\t\t\t} elseif (isset($this->pageopen[$i])) {\n\t\t\t\t\tunset($this->pageopen[$i]);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// remove last page\n\t\t\tunset($this->pages[$this->numpages]);\n\t\t\tunset($this->pagedim[$this->numpages]);\n\t\t\tunset($this->pagelen[$this->numpages]);\n\t\t\tunset($this->intmrk[$this->numpages]);\n\t\t\tif (isset($this->footerpos[$this->numpages])) {\n\t\t\t\tunset($this->footerpos[$this->numpages]);\n\t\t\t}\n\t\t\tif (isset($this->footerlen[$this->numpages])) {\n\t\t\t\tunset($this->footerlen[$this->numpages]);\n\t\t\t}\n\t\t\tif (isset($this->transfmrk[$this->numpages])) {\n\t\t\t\tunset($this->transfmrk[$this->numpages]);\n\t\t\t}\n\t\t\tif (isset($this->PageAnnots[$this->numpages])) {\n\t\t\t\tunset($this->PageAnnots[$this->numpages]);\n\t\t\t}\n\t\t\tif (isset($this->newpagegroup[$this->numpages])) {\n\t\t\t\tunset($this->newpagegroup[$this->numpages]);\n\t\t\t}\n\t\t\tif (isset($this->pageopen[$this->numpages])) {\n\t\t\t\tunset($this->pageopen[$this->numpages]);\n\t\t\t}\n\t\t\t--$this->numpages;\n\t\t\t$this->page = $this->numpages;\n\t\t\t// adjust outlines\n\t\t\t$tmpoutlines = $this->outlines;\n\t\t\tforeach ($tmpoutlines as $key => $outline) {\n\t\t\t\tif ($outline['p'] > $page) {\n\t\t\t\t\t$this->outlines[$key]['p'] = $outline['p'] - 1;\n\t\t\t\t} elseif ($outline['p'] == $page) {\n\t\t\t\t\tunset($this->outlines[$key]);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// adjust links\n\t\t\t$tmplinks = $this->links;\n\t\t\tforeach ($tmplinks as $key => $link) {\n\t\t\t\tif ($link[0] > $page) {\n\t\t\t\t\t$this->links[$key][0] = $link[0] - 1;\n\t\t\t\t} elseif ($link[0] == $page) {\n\t\t\t\t\tunset($this->links[$key]);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// adjust javascript\n\t\t\t$tmpjavascript = $this->javascript;\n\t\t\tglobal $jpage;\n\t\t\t$jpage = $page;\n\t\t\t$this->javascript = preg_replace_callback('/this\\.addField\\(\\'([^\\']*)\\',\\'([^\\']*)\\',([0-9]+)/',\n\t\t\t\tcreate_function('$matches', 'global $jpage;\n\t\t\t\t$pagenum = intval($matches[3]) + 1;\n\t\t\t\tif ($pagenum >= $jpage) {\n\t\t\t\t\t$newpage = ($pagenum - 1);\n\t\t\t\t} elseif ($pagenum == $jpage) {\n\t\t\t\t\t$newpage = 1;\n\t\t\t\t} else {\n\t\t\t\t\t$newpage = $pagenum;\n\t\t\t\t}\n\t\t\t\t--$newpage;\n\t\t\t\treturn \"this.addField(\\'\".$matches[1].\"\\',\\'\".$matches[2].\"\\',\".$newpage.\"\";'), $tmpjavascript);\n\t\t\t// return to last page\n\t\t\t$this->lastPage(true);\n\t\t\treturn true;\n\t\t}\n\n\t\t/**\n\t\t * Clone the specified page to a new page.\n\t\t * @param int $page number of page to copy (0 = current page)\n\t\t * @return true in case of success, false in case of error.\n\t\t * @access public\n\t\t * @since 4.9.015 (2010-04-20)\n\t\t */\n\t\tpublic function copyPage($page=0) {\n\t\t\tif ($page == 0) {\n\t\t\t\t// default value\n\t\t\t\t$page = $this->page;\n\t\t\t}\n\t\t\tif ($page > $this->numpages) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tif ($page == $this->page) {\n\t\t\t\t// close the page before cloning it\n\t\t\t\t$this->endPage();\n\t\t\t}\n\t\t\t// copy all page-related states\n\t\t\t++$this->numpages;\n\t\t\t$this->page = $this->numpages;\n\t\t\t$this->pages[$this->page] = $this->pages[$page];\n\t\t\t$this->pagedim[$this->page] = $this->pagedim[$page];\n\t\t\t$this->pagelen[$this->page] = $this->pagelen[$page];\n\t\t\t$this->intmrk[$this->page] = $this->intmrk[$page];\n\t\t\t$this->pageopen[$this->page] = false;\n\t\t\tif (isset($this->footerpos[$page])) {\n\t\t\t\t$this->footerpos[$this->page] = $this->footerpos[$page];\n\t\t\t}\n\t\t\tif (isset($this->footerlen[$page])) {\n\t\t\t\t$this->footerlen[$this->page] = $this->footerlen[$page];\n\t\t\t}\n\t\t\tif (isset($this->transfmrk[$page])) {\n\t\t\t\t$this->transfmrk[$this->page] = $this->transfmrk[$page];\n\t\t\t}\n\t\t\tif (isset($this->PageAnnots[$page])) {\n\t\t\t\t$this->PageAnnots[$this->page] = $this->PageAnnots[$page];\n\t\t\t}\n\t\t\tif (isset($this->newpagegroup[$page])) {\n\t\t\t\t$this->newpagegroup[$this->page] = $this->newpagegroup[$page];\n\t\t\t}\n\t\t\t// copy outlines\n\t\t\t$tmpoutlines = $this->outlines;\n\t\t\tforeach ($tmpoutlines as $key => $outline) {\n\t\t\t\tif ($outline['p'] == $page) {\n\t\t\t\t\t$this->outlines[] = array('t' => $outline['t'], 'l' => $outline['l'], 'y' => $outline['y'], 'p' => $this->page);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// copy links\n\t\t\t$tmplinks = $this->links;\n\t\t\tforeach ($tmplinks as $key => $link) {\n\t\t\t\tif ($link[0] == $page) {\n\t\t\t\t\t$this->links[] = array($this->page, $link[1]);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// return to last page\n\t\t\t$this->lastPage(true);\n\t\t\treturn true;\n\t\t}\n\n\t\t/**\n\t\t * Output a Table of Content Index (TOC).\n\t\t * Before calling this method you have to open the page using the addTOCPage() method.\n\t\t * After calling this method you have to call endTOCPage() to close the TOC page.\n\t\t * You can override this method to achieve different styles.\n\t\t * @param int $page page number where this TOC should be inserted (leave empty for current page).\n\t\t * @param string $numbersfont set the font for page numbers (please use monospaced font for better alignment).\n\t\t * @param string $filler string used to fill the space between text and page number.\n\t\t * @param string $toc_name name to use for TOC bookmark.\n\t\t * @access public\n\t\t * @author Nicola Asuni\n\t\t * @since 4.5.000 (2009-01-02)\n\t\t * @see addTOCPage(), endTOCPage(), addHTMLTOC()\n\t\t */\n\t\tpublic function addTOC($page='', $numbersfont='', $filler='.', $toc_name='TOC') {\n\t\t\t$fontsize = $this->FontSizePt;\n\t\t\t$fontfamily = $this->FontFamily;\n\t\t\t$fontstyle = $this->FontStyle;\n\t\t\t$w = $this->w - $this->lMargin - $this->rMargin;\n\t\t\t$spacer = $this->GetStringWidth(chr(32)) * 4;\n\t\t\t$page_first = $this->getPage();\n\t\t\t$lmargin = $this->lMargin;\n\t\t\t$rmargin = $this->rMargin;\n\t\t\t$x_start = $this->GetX();\n\t\t\tif ($this->empty_string($numbersfont)) {\n\t\t\t\t$numbersfont = $this->default_monospaced_font;\n\t\t\t}\n\t\t\tif ($this->empty_string($filler)) {\n\t\t\t\t$filler = ' ';\n\t\t\t}\n\t\t\tif ($this->empty_string($page)) {\n\t\t\t\t$gap = ' ';\n\t\t\t} else {\n\t\t\t\t$gap = '';\n\t\t\t}\n\t\t\tforeach ($this->outlines as $key => $outline) {\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$aligntext = 'R';\n\t\t\t\t\t$alignnum = 'L';\n\t\t\t\t} else {\n\t\t\t\t\t$aligntext = 'L';\n\t\t\t\t\t$alignnum = 'R';\n\t\t\t\t}\n\t\t\t\tif ($outline['l'] == 0) {\n\t\t\t\t\t$this->SetFont($fontfamily, $fontstyle.'B', $fontsize);\n\t\t\t\t} else {\n\t\t\t\t\t$this->SetFont($fontfamily, $fontstyle, $fontsize - $outline['l']);\n\t\t\t\t}\n\t\t\t\t$indent = ($spacer * $outline['l']);\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$this->rMargin += $indent;\n\t\t\t\t\t$this->x -= $indent;\n\t\t\t\t} else {\n\t\t\t\t\t$this->lMargin += $indent;\n\t\t\t\t\t$this->x += $indent;\n\t\t\t\t}\n\t\t\t\t$link = $this->AddLink();\n\t\t\t\t$this->SetLink($link, 0, $outline['p']);\n\t\t\t\t// write the text\n\t\t\t\t$this->Write(0, $outline['t'], $link, 0, $aligntext, false, 0, false, false, 0);\n\t\t\t\t$this->SetFont($numbersfont, $fontstyle, $fontsize);\n\t\t\t\tif ($this->empty_string($page)) {\n\t\t\t\t\t$pagenum = $outline['p'];\n\t\t\t\t} else {\n\t\t\t\t\t// placemark to be replaced with the correct number\n\t\t\t\t\t$pagenum = '{#'.($outline['p']).'}';\n\t\t\t\t\tif (($this->CurrentFont['type'] == 'TrueTypeUnicode') OR ($this->CurrentFont['type'] == 'cidfont0')) {\n\t\t\t\t\t\t$pagenum = '{'.$pagenum.'}';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t$numwidth = $this->GetStringWidth($pagenum);\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$tw = $this->x - $this->lMargin;\n\t\t\t\t} else {\n\t\t\t\t\t$tw = $this->w - $this->rMargin - $this->x;\n\t\t\t\t}\n\t\t\t\t$fw = $tw - $numwidth - $this->GetStringWidth(chr(32));\n\t\t\t\t$numfills = floor($fw / $this->GetStringWidth($filler));\n\t\t\t\tif ($numfills > 0) {\n\t\t\t\t\t$rowfill = str_repeat($filler, $numfills);\n\t\t\t\t} else {\n\t\t\t\t\t$rowfill = '';\n\t\t\t\t}\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$pagenum = $pagenum.$gap.$rowfill.' ';\n\t\t\t\t} else {\n\t\t\t\t\t$pagenum = ' '.$rowfill.$gap.$pagenum;\n\t\t\t\t}\n\t\t\t\t// write the number\n\t\t\t\t$this->Cell($tw, 0, $pagenum, 0, 1, $alignnum, 0, $link, 0);\n\t\t\t\t$this->SetX($x_start);\n\t\t\t\t$this->lMargin = $lmargin;\n\t\t\t\t$this->rMargin = $rmargin;\n\t\t\t}\n\t\t\t$page_last = $this->getPage();\n\t\t\t$numpages = $page_last - $page_first + 1;\n\t\t\tif (!$this->empty_string($page)) {\n\t\t\t\tfor ($p = $page_first; $p <= $page_last; ++$p) {\n\t\t\t\t\t// get page data\n\t\t\t\t\t$temppage = $this->getPageBuffer($p);\n\t\t\t\t\tfor ($n = 1; $n <= $this->numpages; ++$n) {\n\t\t\t\t\t\t// update page numbers\n\t\t\t\t\t\t$k = '{#'.$n.'}';\n\t\t\t\t\t\t$ku = '{'.$k.'}';\n\t\t\t\t\t\t$alias_a = $this->_escape($k);\n\t\t\t\t\t\t$alias_au = $this->_escape('{'.$k.'}');\n\t\t\t\t\t\tif ($this->isunicode) {\n\t\t\t\t\t\t\t$alias_b = $this->_escape($this->UTF8ToLatin1($k));\n\t\t\t\t\t\t\t$alias_bu = $this->_escape($this->UTF8ToLatin1($ku));\n\t\t\t\t\t\t\t$alias_c = $this->_escape($this->utf8StrRev($k, false, $this->tmprtl));\n\t\t\t\t\t\t\t$alias_cu = $this->_escape($this->utf8StrRev($ku, false, $this->tmprtl));\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ($n >= $page) {\n\t\t\t\t\t\t\t$np = $n + $numpages;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$np = $n;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$ns = $this->formatTOCPageNumber($np);\n\t\t\t\t\t\t$nu = $ns;\n\t\t\t\t\t\t$sdiff = strlen($k) - strlen($ns) - 1;\n\t\t\t\t\t\t$sdiffu = strlen($ku) - strlen($ns) - 1;\n\t\t\t\t\t\t$sfill = str_repeat($filler, $sdiff);\n\t\t\t\t\t\t$sfillu = str_repeat($filler, $sdiffu);\n\t\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t\t$ns = $ns.' '.$sfill;\n\t\t\t\t\t\t\t$nu = $nu.' '.$sfillu;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$ns = $sfill.' '.$ns;\n\t\t\t\t\t\t\t$nu = $sfillu.' '.$nu;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$nu = $this->UTF8ToUTF16BE($nu, false);\n\t\t\t\t\t\t$temppage = str_replace($alias_au, $nu, $temppage);\n\t\t\t\t\t\tif ($this->isunicode) {\n\t\t\t\t\t\t\t$temppage = str_replace($alias_bu, $nu, $temppage);\n\t\t\t\t\t\t\t$temppage = str_replace($alias_cu, $nu, $temppage);\n\t\t\t\t\t\t\t$temppage = str_replace($alias_b, $ns, $temppage);\n\t\t\t\t\t\t\t$temppage = str_replace($alias_c, $ns, $temppage);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$temppage = str_replace($alias_a, $ns, $temppage);\n\t\t\t\t\t}\n\t\t\t\t\t// save changes\n\t\t\t\t\t$this->setPageBuffer($p, $temppage);\n\t\t\t\t}\n\t\t\t\t// move pages\n\t\t\t\t$this->Bookmark($toc_name, 0, 0, $page_first);\n\t\t\t\tfor ($i = 0; $i < $numpages; ++$i) {\n\t\t\t\t\t$this->movePage($page_last, $page);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Output a Table Of Content Index (TOC) using HTML templates.\n\t\t * Before calling this method you have to open the page using the addTOCPage() method.\n\t\t * After calling this method you have to call endTOCPage() to close the TOC page.\n\t\t * @param int $page page number where this TOC should be inserted (leave empty for current page).\n\t\t * @param string $toc_name name to use for TOC bookmark.\n\t\t * @param array $templates array of html templates. Use: #TOC_DESCRIPTION# for bookmark title, #TOC_PAGE_NUMBER# for page number.\n\t\t * @parma boolean $correct_align if true correct the number alignment (numbers must be in monospaced font like courier and right aligned on LTR, or left aligned on RTL)\n\t\t * @access public\n\t\t * @author Nicola Asuni\n\t\t * @since 5.0.001 (2010-05-06)\n\t\t * @see addTOCPage(), endTOCPage(), addTOC()\n\t\t */\n\t\tpublic function addHTMLTOC($page='', $toc_name='TOC', $templates=array(), $correct_align=true) {\n\t\t\t$prev_htmlLinkColorArray = $this->htmlLinkColorArray;\n\t\t\t$prev_htmlLinkFontStyle = $this->htmlLinkFontStyle;\n\t\t\t// set new style for link\n\t\t\t$this->htmlLinkColorArray = array();\n\t\t\t$this->htmlLinkFontStyle = '';\n\t\t\t$page_first = $this->getPage();\n\t\t\tforeach ($this->outlines as $key => $outline) {\n\t\t\t\tif ($this->empty_string($page)) {\n\t\t\t\t\t$pagenum = $outline['p'];\n\t\t\t\t} else {\n\t\t\t\t\t// placemark to be replaced with the correct number\n\t\t\t\t\t$pagenum = '{#'.($outline['p']).'}';\n\t\t\t\t\tif (($this->CurrentFont['type'] == 'TrueTypeUnicode') OR ($this->CurrentFont['type'] == 'cidfont0')) {\n\t\t\t\t\t\t$pagenum = '{'.$pagenum.'}';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// get HTML template\n\t\t\t\t$row = $templates[$outline['l']];\n\t\t\t\t// replace templates with current values\n\t\t\t\t$row = str_replace('#TOC_DESCRIPTION#', $outline['t'], $row);\n\t\t\t\t$row = str_replace('#TOC_PAGE_NUMBER#', $pagenum, $row);\n\t\t\t\t// add link to page\n\t\t\t\t$row = '<a href=\"#'.$outline['p'].'\">'.$row.'</a>';\n\t\t\t\t// write bookmark entry\n\t\t\t\t$this->writeHTML($row, false, false, true, false, '');\n\t\t\t}\n\t\t\t// restore link styles\n\t\t\t$this->htmlLinkColorArray = $prev_htmlLinkColorArray;\n\t\t\t$this->htmlLinkFontStyle = $prev_htmlLinkFontStyle;\n\t\t\t// move TOC page and replace numbers\n\t\t\t$page_last = $this->getPage();\n\t\t\t$numpages = $page_last - $page_first + 1;\n\t\t\tif (!$this->empty_string($page)) {\n\t\t\t\tfor ($p = $page_first; $p <= $page_last; ++$p) {\n\t\t\t\t\t// get page data\n\t\t\t\t\t$temppage = $this->getPageBuffer($p);\n\t\t\t\t\tfor ($n = 1; $n <= $this->numpages; ++$n) {\n\t\t\t\t\t\t// update page numbers\n\t\t\t\t\t\t$k = '{#'.$n.'}';\n\t\t\t\t\t\t$ku = '{'.$k.'}';\n\t\t\t\t\t\t$alias_a = $this->_escape($k);\n\t\t\t\t\t\t$alias_au = $this->_escape('{'.$k.'}');\n\t\t\t\t\t\tif ($this->isunicode) {\n\t\t\t\t\t\t\t$alias_b = $this->_escape($this->UTF8ToLatin1($k));\n\t\t\t\t\t\t\t$alias_bu = $this->_escape($this->UTF8ToLatin1($ku));\n\t\t\t\t\t\t\t$alias_c = $this->_escape($this->utf8StrRev($k, false, $this->tmprtl));\n\t\t\t\t\t\t\t$alias_cu = $this->_escape($this->utf8StrRev($ku, false, $this->tmprtl));\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ($n >= $page) {\n\t\t\t\t\t\t\t$np = $n + $numpages;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$np = $n;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$ns = $this->formatTOCPageNumber($np);\n\t\t\t\t\t\t$nu = $ns;\n\t\t\t\t\t\tif ($correct_align) {\n\t\t\t\t\t\t\t$sdiff = strlen($k) - strlen($ns);\n\t\t\t\t\t\t\t$sdiffu = strlen($ku) - strlen($ns);\n\t\t\t\t\t\t\t$sfill = str_repeat(' ', $sdiff);\n\t\t\t\t\t\t\t$sfillu = str_repeat(' ', $sdiffu);\n\t\t\t\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t\t\t\t$ns = $ns.$sfill;\n\t\t\t\t\t\t\t\t$nu = $nu.$sfillu;\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$ns = $sfill.$ns;\n\t\t\t\t\t\t\t\t$nu = $sfillu.$nu;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$nu = $this->UTF8ToUTF16BE($nu, false);\n\t\t\t\t\t\t$temppage = str_replace($alias_au, $nu, $temppage);\n\t\t\t\t\t\tif ($this->isunicode) {\n\t\t\t\t\t\t\t$temppage = str_replace($alias_bu, $nu, $temppage);\n\t\t\t\t\t\t\t$temppage = str_replace($alias_cu, $nu, $temppage);\n\t\t\t\t\t\t\t$temppage = str_replace($alias_b, $ns, $temppage);\n\t\t\t\t\t\t\t$temppage = str_replace($alias_c, $ns, $temppage);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$temppage = str_replace($alias_a, $ns, $temppage);\n\t\t\t\t\t}\n\t\t\t\t\t// save changes\n\t\t\t\t\t$this->setPageBuffer($p, $temppage);\n\t\t\t\t}\n\t\t\t\t// move pages\n\t\t\t\t$this->Bookmark($toc_name, 0, 0, $page_first);\n\t\t\t\tfor ($i = 0; $i < $numpages; ++$i) {\n\t\t\t\t\t$this->movePage($page_last, $page);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Stores a copy of the current TCPDF object used for undo operation.\n\t\t * @access public\n\t\t * @since 4.5.029 (2009-03-19)\n\t\t */\n\t\tpublic function startTransaction() {\n\t\t\tif (isset($this->objcopy)) {\n\t\t\t\t// remove previous copy\n\t\t\t\t$this->commitTransaction();\n\t\t\t}\n\t\t\t// record current page number and Y position\n\t\t\t$this->start_transaction_page = $this->page;\n\t\t\t$this->start_transaction_y = $this->y;\n\t\t\t// clone current object\n\t\t\t$this->objcopy = $this->objclone($this);\n\t\t}\n\n\t\t/**\n\t\t * Delete the copy of the current TCPDF object used for undo operation.\n\t\t * @access public\n\t\t * @since 4.5.029 (2009-03-19)\n\t\t */\n\t\tpublic function commitTransaction() {\n\t\t\tif (isset($this->objcopy)) {\n\t\t\t\t$this->objcopy->_destroy(true, true);\n\t\t\t\tunset($this->objcopy);\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * This method allows to undo the latest transaction by returning the latest saved TCPDF object with startTransaction().\n\t\t * @param boolean $self if true restores current class object to previous state without the need of reassignment via the returned value.\n\t\t * @return TCPDF object.\n\t\t * @access public\n\t\t * @since 4.5.029 (2009-03-19)\n\t\t */\n\t\tpublic function rollbackTransaction($self=false) {\n\t\t\tif (isset($this->objcopy)) {\n\t\t\t\tif (isset($this->objcopy->diskcache) AND $this->objcopy->diskcache) {\n\t\t\t\t\t// truncate files to previous values\n\t\t\t\t\tforeach ($this->objcopy->cache_file_length as $file => $length) {\n\t\t\t\t\t\t$file = substr($file, 1);\n\t\t\t\t\t\t$handle = fopen($file, 'r+');\n\t\t\t\t\t\tftruncate($handle, $length);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t$this->_destroy(true, true);\n\t\t\t\tif ($self) {\n\t\t\t\t\t$objvars = get_object_vars($this->objcopy);\n\t\t\t\t\tforeach ($objvars as $key => $value) {\n\t\t\t\t\t\t$this->$key = $value;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn $this->objcopy;\n\t\t\t}\n\t\t\treturn $this;\n\t\t}\n\n\t\t/**\n\t\t * Creates a copy of a class object\n\t\t * @param object $object class object to be cloned\n\t\t * @return cloned object\n\t\t * @access public\n\t\t * @since 4.5.029 (2009-03-19)\n\t\t */\n\t\tpublic function objclone($object) {\n\t\t\treturn @clone($object);\n\t\t}\n\n\t\t/**\n\t\t * Determine whether a string is empty.\n\t\t * @param string $str string to be checked\n\t\t * @return boolean true if string is empty\n\t\t * @access public\n\t\t * @since 4.5.044 (2009-04-16)\n\t\t */\n\t\tpublic function empty_string($str) {\n\t\t\treturn (is_null($str) OR (is_string($str) AND (strlen($str) == 0)));\n\t\t}\n\n\t\t/**\n\t\t * Find position of last occurrence of a substring in a string\n\t\t * @param string $haystack The string to search in.\n\t\t * @param string $needle substring to search.\n\t\t * @param int $offset May be specified to begin searching an arbitrary number of characters into the string.\n\t\t * @return Returns the position where the needle exists. Returns FALSE if the needle was not found.\n\t\t * @access public\n\t\t * @since 4.8.038 (2010-03-13)\n\t\t */\n\t\tpublic function revstrpos($haystack, $needle, $offset = 0) {\n\t\t\t$length = strlen($haystack);\n\t\t\t$offset = ($offset > 0)?($length - $offset):abs($offset);\n\t\t\t$pos = strpos(strrev($haystack), strrev($needle), $offset);\n\t\t\treturn ($pos === false)?false:($length - $pos - strlen($needle));\n\t\t}\n\n\t\t// --- MULTI COLUMNS METHODS -----------------------\n\n\t\t/**\n\t\t * Set multiple columns of the same size\n\t\t * @param int $numcols number of columns (set to zero to disable columns mode)\n\t\t * @param int $width column width\n\t\t * @param int $y column starting Y position (leave empty for current Y position)\n\t\t * @access public\n\t \t * @since 4.9.001 (2010-03-28)\n\t\t */\n\t\tpublic function setEqualColumns($numcols=0, $width=0, $y='') {\n\t\t\t$this->columns = array();\n\t\t\tif ($numcols < 2) {\n\t\t\t\t$numcols = 0;\n\t\t\t\t$this->columns = array();\n\t\t\t} else {\n\t\t\t\t// maximum column width\n\t\t\t\t$maxwidth = ($this->w - $this->original_lMargin - $this->original_rMargin) / $numcols;\n\t\t\t\tif ($width > $maxwidth) {\n\t\t\t\t\t$width = $maxwidth;\n\t\t\t\t}\n\t\t\t\tif ($this->empty_string($y)) {\n\t\t\t\t\t$y = $this->y;\n\t\t\t\t}\n\t\t\t\t// space between columns\n\t\t\t\t$space = (($this->w - $this->original_lMargin - $this->original_rMargin - ($numcols * $width)) / ($numcols - 1));\n\t\t\t\t// fill the columns array (with, space, starting Y position)\n\t\t\t\tfor ($i = 0; $i < $numcols; ++$i) {\n\t\t\t\t\t$this->columns[$i] = array('w' => $width, 's' => $space, 'y' => $y);\n\t\t\t\t}\n\t\t\t}\n\t\t\t$this->num_columns = $numcols;\n\t\t\t$this->current_column = 0;\n\t\t\t$this->column_start_page = $this->page;\n\t\t}\n\n\t\t/**\n\t\t * Set columns array.\n\t\t * Each column is represented by and array with the following keys: (w = width, s = space between columns, y = column top position).\n\t\t * @param array $columns\n\t\t * @access public\n\t \t * @since 4.9.001 (2010-03-28)\n\t\t */\n\t\tpublic function setColumnsArray($columns) {\n\t\t\t$this->columns = $columns;\n\t\t\t$this->num_columns = count($columns);\n\t\t\t$this->current_column = 0;\n\t\t\t$this->column_start_page = $this->page;\n\t\t}\n\n\t\t/**\n\t\t * Set position at a given column\n\t\t * @param int $col column number (from 0 to getNumberOfColumns()-1); empty string = current column.\n\t\t * @access public\n\t \t * @since 4.9.001 (2010-03-28)\n\t\t */\n\t\tpublic function selectColumn($col='') {\n\t\t\tif (is_string($col)) {\n\t\t\t\t$col = $this->current_column;\n\t\t\t} elseif($col >= $this->num_columns) {\n\t\t\t\t$col = 0;\n\t\t\t}\n\t\t\tif ($this->num_columns > 1) {\n\t\t\t\tif ($col != $this->current_column) {\n\t\t\t\t\t// move pointer at column top on the first page\n\t\t\t\t\tif ($this->column_start_page == $this->page) {\n\t\t\t\t\t\t$this->y = $this->columns[$col]['y'];\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->y = $this->tMargin;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// set X position of the current column by case\n\t\t\t\t$listindent = ($this->listindentlevel * $this->listindent);\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$x = $this->w - $this->original_rMargin - ($col * ($this->columns[$col]['w'] + $this->columns[$col]['s']));\n\t\t\t\t\t$this->SetRightMargin($this->w - $x + $listindent);\n\t\t\t\t\t$this->SetLeftMargin($x - $this->columns[$col]['w']);\n\t\t\t\t\t$this->x = $x - $listindent;\n\t\t\t\t} else {\n\t\t\t\t\t$x = $this->original_lMargin + ($col * ($this->columns[$col]['w'] + $this->columns[$col]['s']));\n\t\t\t\t\t$this->SetLeftMargin($x + $listindent);\n\t\t\t\t\t$this->SetRightMargin($this->w - $x - $this->columns[$col]['w']);\n\t\t\t\t\t$this->x = $x + $listindent;\n\t\t\t\t}\n\t\t\t\t$this->columns[$col]['x'] = $x;\n\t\t\t}\n\t\t\t$this->current_column = $col;\n\t\t\t// fix for HTML mode\n\t\t\t$this->newline = true;\n\t\t\t// print HTML table header (if any)\n\t\t\tif (!$this->empty_string($this->thead) AND (!$this->inthead)) {\n\t\t\t\t// print table header\n\t\t\t\t$this->writeHTML($this->thead, false, false, false, false, '');\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Serialize an array of parameters to be used with TCPDF tag in HTML code.\n\t\t * @param array $pararray parameters array\n\t\t * @return sting containing serialized data\n\t\t * @access public\n\t \t * @since 4.9.006 (2010-04-02)\n\t\t */\n\t\tpublic function serializeTCPDFtagParameters($pararray) {\n\t\t\treturn urlencode(serialize($pararray));\n\t\t}\n\n\t\t/**\n\t\t * Set Text rendering mode.\n\t\t * @param int $stroke outline size in user units (0 = disable).\n\t\t * @param boolean $fill if true fills the text (default).\n\t\t * @param boolean $clip if true activate clipping mode\n\t\t * @access public\n\t\t * @since 4.9.008 (2009-04-02)\n\t\t */\n\t\tpublic function setTextRenderingMode($stroke=0, $fill=true, $clip=false) {\n\t\t\t// Ref.: PDF 32000-1:2008 - 9.3.6 Text Rendering Mode\n\t\t\t// convert text rendering parameters\n\t\t\tif ($stroke < 0) {\n\t\t\t\t$stroke = 0;\n\t\t\t}\n\t\t\tif ($fill === true) {\n\t\t\t\tif ($stroke > 0) {\n\t\t\t\t\tif ($clip === true) {\n\t\t\t\t\t\t// Fill, then stroke text and add to path for clipping\n\t\t\t\t\t\t$textrendermode = 6;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Fill, then stroke text\n\t\t\t\t\t\t$textrendermode = 2;\n\t\t\t\t\t}\n\t\t\t\t\t$textstrokewidth = $stroke;\n\t\t\t\t} else {\n\t\t\t\t\tif ($clip === true) {\n\t\t\t\t\t\t// Fill text and add to path for clipping\n\t\t\t\t\t\t$textrendermode = 4;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Fill text\n\t\t\t\t\t\t$textrendermode = 0;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif ($stroke > 0) {\n\t\t\t\t\tif ($clip === true) {\n\t\t\t\t\t\t// Stroke text and add to path for clipping\n\t\t\t\t\t\t$textrendermode = 5;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Stroke text\n\t\t\t\t\t\t$textrendermode = 1;\n\t\t\t\t\t}\n\t\t\t\t\t$textstrokewidth = $stroke;\n\t\t\t\t} else {\n\t\t\t\t\tif ($clip === true) {\n\t\t\t\t\t\t// Add text to path for clipping\n\t\t\t\t\t\t$textrendermode = 7;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Neither fill nor stroke text (invisible)\n\t\t\t\t\t\t$textrendermode = 3;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t$this->textrendermode = $textrendermode;\n\t\t\t$this->textstrokewidth = $stroke * $this->k;\n\t\t}\n\n\t\t/**\n\t\t * Returns an array of chars containing soft hyphens.\n\t\t * @param array $word array of chars\n\t\t * @param array $patterns Array of hypenation patterns.\n\t\t * @param array $dictionary Array of words to be returned without applying the hyphenation algoritm.\n\t\t * @param int $leftmin Minimum number of character to leave on the left of the word without applying the hyphens.\n\t\t * @param int $rightmin Minimum number of character to leave on the right of the word without applying the hyphens.\n\t\t * @param int $charmin Minimum word lenght to apply the hyphenation algoritm.\n\t\t * @param int $charmax Maximum lenght of broken piece of word.\n\t\t * @return array text with soft hyphens\n\t\t * @author Nicola Asuni\n\t\t * @since 4.9.012 (2010-04-12)\n\t\t * @access protected\n\t\t */\n\t\tprotected function hyphenateWord($word, $patterns, $dictionary=array(), $leftmin=1, $rightmin=2, $charmin=1, $charmax=8) {\n\t\t\t$hyphenword = array(); // hyphens positions\n\t\t\t$numchars = count($word);\n\t\t\tif ($numchars <= $charmin) {\n\t\t\t\treturn $word;\n\t\t\t}\n\t\t\t$word_string = $this->UTF8ArrSubString($word);\n\t\t\t// some words will be returned as-is\n\t\t\t$pattern = '/^([a-zA-Z0-9_\\.\\-]+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([a-zA-Z0-9\\-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$/';\n\t\t\tif (preg_match($pattern, $word_string) > 0) {\n\t\t\t\t// email\n\t\t\t\treturn $word;\n\t\t\t}\n\t\t\t$pattern = '/(([a-zA-Z0-9\\-]+\\.)?)((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([a-zA-Z0-9\\-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$/';\n\t\t\tif (preg_match($pattern, $word_string) > 0) {\n\t\t\t\t// URL\n\t\t\t\treturn $word;\n\t\t\t}\n\t\t\tif (isset($dictionary[$word_string])) {\n\t\t\t\treturn $this->UTF8StringToArray($dictionary[$word_string]);\n\t\t\t}\n\t\t\t// suround word with '_' characters\n\t\t\t$tmpword = array_merge(array(95), $word, array(95));\n\t\t\t$tmpnumchars = $numchars + 2;\n\t\t\t$maxpos = $tmpnumchars - $charmin;\n\t\t\tfor ($pos = 0; $pos < $maxpos; ++$pos) {\n\t\t\t\t$imax = min(($tmpnumchars - $pos), $charmax);\n\t\t\t\tfor ($i = $charmin; $i <= $imax; ++$i) {\n\t\t\t\t\t$subword = strtolower($this->UTF8ArrSubString($tmpword, $pos, $pos + $i));\n\t\t\t\t\tif (isset($patterns[$subword])) {\n\t\t\t\t\t\t$pattern = $this->UTF8StringToArray($patterns[$subword]);\n\t\t\t\t\t\t$pattern_length = count($pattern);\n\t\t\t\t\t\t$digits = 1;\n\t\t\t\t\t\tfor ($j = 0; $j < $pattern_length; ++$j) {\n\t\t\t\t\t\t\t// check if $pattern[$j] is a number\n\t\t\t\t\t\t\tif (($pattern[$j] >= 48) AND ($pattern[$j] <= 57)) {\n\t\t\t\t\t\t\t\tif ($j == 0) {\n\t\t\t\t\t\t\t\t\t$zero = $pos - 1;\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t$zero = $pos + $j - $digits;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif (!isset($hyphenword[$zero]) OR ($hyphenword[$zero] != $pattern[$j])) {\n\t\t\t\t\t\t\t\t\t$hyphenword[$zero] = $this->unichr($pattern[$j]);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t++$digits;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t$inserted = 0;\n\t\t\t$maxpos = $numchars - $rightmin;\n\t\t\tfor($i = $leftmin; $i <= $maxpos; ++$i) {\n\t\t\t\tif(isset($hyphenword[$i]) AND (($hyphenword[$i] % 2) != 0)) {\n\t\t\t\t\t// 173 = soft hyphen character\n\t\t\t\t\tarray_splice($word, $i + $inserted, 0, 173);\n\t\t\t\t\t++$inserted;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $word;\n\t\t}\n\n\t\t/**\n\t\t * Returns an array of hyphenation patterns.\n\t\t * @param string $file TEX file containing hypenation patterns. TEX pattrns can be downloaded from http://www.ctan.org/tex-archive/language/hyph-utf8/tex/generic/hyph-utf8/patterns/\n\t\t * @return array of hyphenation patterns\n\t\t * @author Nicola Asuni\n\t\t * @since 4.9.012 (2010-04-12)\n\t\t * @access public\n\t\t */\n\t\tpublic function getHyphenPatternsFromTEX($file) {\n\t\t\t// TEX patterns are available at:\n\t\t\t// http://www.ctan.org/tex-archive/language/hyph-utf8/tex/generic/hyph-utf8/patterns/\n\t\t\t$data = file_get_contents($file);\n\t\t\t$patterns = array();\n\t\t\t// remove comments\n\t\t\t$data = preg_replace('/\\%[^\\n]*/', '', $data);\n\t\t\t// extract the patterns part\n\t\t\tpreg_match('/\\\\\\\\patterns\\{([^\\}]*)\\}/i', $data, $matches);\n\t\t\t$data = trim(substr($matches[0], 10, -1));\n\t\t\t// extract each pattern\n\t\t\t$patterns_array = preg_split('/[\\s]+/', $data);\n\t\t\t// create new language array of patterns\n\t\t\t$patterns = array();\n\t\t\tforeach($patterns_array as $val) {\n\t\t\t\tif (!$this->empty_string($val)) {\n\t\t\t\t\t$val = trim($val);\n\t\t\t\t\t$val = str_replace('\\'', '\\\\\\'', $val);\n\t\t\t\t\t$key = preg_replace('/[0-9]+/', '', $val);\n\t\t\t\t\t$patterns[$key] = $val;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $patterns;\n\t\t}\n\n\t\t/**\n\t\t * Returns text with soft hyphens.\n\t\t * @param string $text text to process\n\t\t * @param mixed $patterns Array of hypenation patterns or a TEX file containing hypenation patterns. TEX patterns can be downloaded from http://www.ctan.org/tex-archive/language/hyph-utf8/tex/generic/hyph-utf8/patterns/\n\t\t * @param array $dictionary Array of words to be returned without applying the hyphenation algoritm.\n\t\t * @param int $leftmin Minimum number of character to leave on the left of the word without applying the hyphens.\n\t\t * @param int $rightmin Minimum number of character to leave on the right of the word without applying the hyphens.\n\t\t * @param int $charmin Minimum word lenght to apply the hyphenation algoritm.\n\t\t * @param int $charmax Maximum lenght of broken piece of word.\n\t\t * @return array text with soft hyphens\n\t\t * @author Nicola Asuni\n\t\t * @since 4.9.012 (2010-04-12)\n\t\t * @access public\n\t\t */\n\t\tpublic function hyphenateText($text, $patterns, $dictionary=array(), $leftmin=1, $rightmin=2, $charmin=1, $charmax=8) {\n\t\t\tglobal $unicode;\n\t\t\t$text = $this->unhtmlentities($text);\n\t\t\t$word = array(); // last word\n\t\t\t$txtarr = array(); // text to be returned\n\t\t\t$intag = false; // true if we are inside an HTML tag\n\t\t\tif (!is_array($patterns)) {\n\t\t\t\t$patterns = $this->getHyphenPatternsFromTEX($patterns);\n\t\t\t}\n\t\t\t// get array of characters\n\t\t\t$unichars = $this->UTF8StringToArray($text);\n\t\t\t// for each char\n\t\t\tforeach ($unichars as $char) {\n\t\t\t\tif ((!$intag) AND $unicode[$char] == 'L') {\n\t\t\t\t\t// letter character\n\t\t\t\t\t$word[] = $char;\n\t\t\t\t} else {\n\t\t\t\t\t// other type of character\n\t\t\t\t\tif (!$this->empty_string($word)) {\n\t\t\t\t\t\t// hypenate the word\n\t\t\t\t\t\t$txtarr = array_merge($txtarr, $this->hyphenateWord($word, $patterns, $dictionary, $leftmin, $rightmin, $charmin, $charmax));\n\t\t\t\t\t\t$word = array();\n\t\t\t\t\t}\n\t\t\t\t\t$txtarr[] = $char;\n\t\t\t\t\tif (chr($char) == '<') {\n\t\t\t\t\t\t// we are inside an HTML tag\n\t\t\t\t\t\t$intag = true;\n\t\t\t\t\t} elseif ($intag AND (chr($char) == '>')) {\n\t\t\t\t\t\t// end of HTML tag\n\t\t\t\t\t\t$intag = false;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (!$this->empty_string($word)) {\n\t\t\t\t// hypenate the word\n\t\t\t\t$txtarr = array_merge($txtarr, $this->hyphenateWord($word, $patterns, $dictionary, $leftmin, $rightmin, $charmin, $charmax));\n\t\t\t}\n\t\t\t// convert char array to string and return\n\t\t\treturn $this->UTF8ArrSubString($txtarr);\n\t\t}\n\n\t\t/**\n\t\t * Enable/disable rasterization of SVG images using ImageMagick library.\n\t\t * @param boolean $mode if true enable rasterization, false otherwise.\n\t\t * @access public\n\t\t * @since 5.0.000 (2010-04-27)\n\t\t */\n\t\tpublic function setRasterizeVectorImages($mode) {\n\t\t\t$this->rasterize_vector_images = $mode;\n\t\t}\n\n\t\t/**\n\t\t * Get the Path-Painting Operators.\n\t\t * @param string $style Style of rendering. Possible values are:\n\t\t * <ul>\n\t\t *   <li>S or D: Stroke the path.</li>\n\t\t *   <li>s or d: Close and stroke the path.</li>\n\t\t *   <li>f or F: Fill the path, using the nonzero winding number rule to determine the region to fill.</li>\n\t\t *   <li>f* or F*: Fill the path, using the even-odd rule to determine the region to fill.</li>\n\t\t *   <li>B or FD or DF: Fill and then stroke the path, using the nonzero winding number rule to determine the region to fill.</li>\n\t\t *   <li>B* or F*D or DF*: Fill and then stroke the path, using the even-odd rule to determine the region to fill.</li>\n\t\t *   <li>b or fd or df: Close, fill, and then stroke the path, using the nonzero winding number rule to determine the region to fill.</li>\n\t\t *   <li>b or f*d or df*: Close, fill, and then stroke the path, using the even-odd rule to determine the region to fill.</li>\n\t\t *   <li>CNZ: Clipping mode using the even-odd rule to determine which regions lie inside the clipping path.</li>\n\t\t *   <li>CEO: Clipping mode using the nonzero winding number rule to determine which regions lie inside the clipping path</li>\n\t\t *   <li>n: End the path object without filling or stroking it.</li>\n\t\t * </ul>\n\t\t * @param string $default default style\n\t\t * @param boolean $mode if true enable rasterization, false otherwise.\n\t\t * @author Nicola Asuni\n\t\t * @access protected\n\t\t * @since 5.0.000 (2010-04-30)\n\t\t */\n\t\tprotected function getPathPaintOperator($style, $default='S') {\n\t\t\t$op = '';\n\t\t\tswitch($style) {\n\t\t\t\tcase 'S':\n\t\t\t\tcase 'D': {\n\t\t\t\t\t$op = 'S';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 's':\n\t\t\t\tcase 'd': {\n\t\t\t\t\t$op = 's';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'f':\n\t\t\t\tcase 'F': {\n\t\t\t\t\t$op = 'f';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'f*':\n\t\t\t\tcase 'F*': {\n\t\t\t\t\t$op = 'f*';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'B':\n\t\t\t\tcase 'FD':\n\t\t\t\tcase 'DF': {\n\t\t\t\t\t$op = 'B';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'B*':\n\t\t\t\tcase 'F*D':\n\t\t\t\tcase 'DF*': {\n\t\t\t\t\t$op = 'B*';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'b':\n\t\t\t\tcase 'fd':\n\t\t\t\tcase 'df': {\n\t\t\t\t\t$op = 'b';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'b*':\n\t\t\t\tcase 'f*d':\n\t\t\t\tcase 'df*': {\n\t\t\t\t\t$op = 'b*';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'CNZ': {\n\t\t\t\t\t$op = 'W n';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'CEO': {\n\t\t\t\t\t$op = 'W* n';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'n': {\n\t\t\t\t\t$op = 'n';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tdefault: {\n\t\t\t\t\tif (!empty($default)) {\n\t\t\t\t\t\t$op = $this->getPathPaintOperator($default, '');\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$op = '';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $op;\n\t\t}\n\n\t\t// -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-\n\t\t// SVG METHODS\n\t\t// -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-\n\n\t\t/**\n\t\t * Embedd a Scalable Vector Graphics (SVG) image.\n\t\t * NOTE: SVG standard is not yet fully implemented, use the setRasterizeVectorImages() method to enable/disable rasterization of SVG images using ImageMagick library.\n\t\t * @param string $file Name of the SVG file.\n\t\t * @param float $x Abscissa of the upper-left corner.\n\t\t * @param float $y Ordinate of the upper-left corner.\n\t\t * @param float $w Width of the image in the page. If not specified or equal to zero, it is automatically calculated.\n\t\t * @param float $h Height of the image in the page. If not specified or equal to zero, it is automatically calculated.\n\t\t * @param mixed $link URL or identifier returned by AddLink().\n\t\t * @param string $align Indicates the alignment of the pointer next to image insertion relative to image height. The value can be:<ul><li>T: top-right for LTR or top-left for RTL</li><li>M: middle-right for LTR or middle-left for RTL</li><li>B: bottom-right for LTR or bottom-left for RTL</li><li>N: next line</li></ul>\n\t\t * @param string $palign Allows to center or align the image on the current line. Possible values are:<ul><li>L : left align</li><li>C : center</li><li>R : right align</li><li>'' : empty string : left for LTR or right for RTL</li></ul>\n\t\t * @param mixed $border Indicates if borders must be drawn around the image. The value can be either a number:<ul><li>0: no border (default)</li><li>1: frame</li></ul>or a string containing some or all of the following characters (in any order):<ul><li>L: left</li><li>T: top</li><li>R: right</li><li>B: bottom</li></ul>\n\t\t * @param boolean $fitonpage if true the image is resized to not exceed page dimensions.\n\t\t * @author Nicola Asuni\n\t\t * @since 5.0.000 (2010-05-02)\n\t\t * @access public\n\t\t */\n\t\tpublic function ImageSVG($file, $x='', $y='', $w=0, $h=0, $link='', $align='', $palign='', $border=0, $fitonpage=false) {\n\t\t\tif ($this->rasterize_vector_images) {\n\t\t\t\t// convert SVG to raster image using GD or ImageMagick libraries\n\t\t\t\treturn $this->Image($file, $x, $y, $w, $h, 'SVG', $link, $align, true, 300, $palign, false, false, $border, false, false, false);\n\t\t\t}\n\t\t\t$this->svgdir = dirname($file);\n\t\t\t$svgdata = file_get_contents($file);\n\t\t\tif ($svgdata === false) {\n\t\t\t\t$this->Error('SVG file not found: '.$file);\n\t\t\t}\n\t\t\tif ($x === '') {\n\t\t\t\t$x = $this->x;\n\t\t\t}\n\t\t\tif ($y === '') {\n\t\t\t\t$y = $this->y;\n\t\t\t}\n\t\t\t$k = $this->k;\n\t\t\t$ox = 0;\n\t\t\t$oy = 0;\n\t\t\t$ow = $w;\n\t\t\t$oh = $h;\n\t\t\t$aspect_ratio_align = 'xMidYMid';\n\t\t\t$aspect_ratio_ms = 'meet';\n\t\t\t$regs = array();\n\t\t\t// get original image width and height\n\t\t\tpreg_match('/<svg([^\\>]*)>/si', $svgdata, $regs);\n\t\t\tif (isset($regs[1]) AND !empty($regs[1])) {\n\t\t\t\t$tmp = array();\n\t\t\t\tif (preg_match('/[\\s]+x[\\s]*=[\\s]*\"([^\"]*)\"/si', $regs[1], $tmp)) {\n\t\t\t\t\t$ox = $this->getHTMLUnitToUnits($tmp[1], 0, $this->svgunit, false);\n\t\t\t\t}\n\t\t\t\t$tmp = array();\n\t\t\t\tif (preg_match('/[\\s]+y[\\s]*=[\\s]*\"([^\"]*)\"/si', $regs[1], $tmp)) {\n\t\t\t\t\t$oy = $this->getHTMLUnitToUnits($tmp[1], 0, $this->svgunit, false);\n\t\t\t\t}\n\t\t\t\t$tmp = array();\n\t\t\t\tif (preg_match('/[\\s]+width[\\s]*=[\\s]*\"([^\"]*)\"/si', $regs[1], $tmp)) {\n\t\t\t\t\t$ow = $this->getHTMLUnitToUnits($tmp[1], 1, $this->svgunit, false);\n\t\t\t\t}\n\t\t\t\t$tmp = array();\n\t\t\t\tif (preg_match('/[\\s]+height[\\s]*=[\\s]*\"([^\"]*)\"/si', $regs[1], $tmp)) {\n\t\t\t\t\t$oh = $this->getHTMLUnitToUnits($tmp[1], 1, $this->svgunit, false);\n\t\t\t\t}\n\t\t\t\t$tmp = array();\n\t\t\t\t$view_box = array();\n\t\t\t\tif (preg_match('/[\\s]+viewBox[\\s]*=[\\s]*\"[\\s]*([0-9\\.\\-]+)[\\s]+([0-9\\.\\-]+)[\\s]+([0-9\\.]+)[\\s]+([0-9\\.]+)[\\s]*\"/si', $regs[1], $tmp)) {\n\t\t\t\t\tif (count($tmp) == 5) {\n\t\t\t\t\t\tarray_shift($tmp);\n\t\t\t\t\t\tforeach ($tmp as $key => $val) {\n\t\t\t\t\t\t\t$view_box[$key] = $this->getHTMLUnitToUnits($val, 0, $this->svgunit, false);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$ox = $view_box[0];\n\t\t\t\t\t\t$oy = $view_box[1];\n\t\t\t\t\t}\n\t\t\t\t\t// get aspect ratio\n\t\t\t\t\t$tmp = array();\n\t\t\t\t\tif (preg_match('/[\\s]+preserveAspectRatio[\\s]*=[\\s]*\"([^\"]*)\"/si', $regs[1], $tmp)) {\n\t\t\t\t\t\t$aspect_ratio = preg_split(\"/[\\s]+/si\", $tmp[1]);\n\t\t\t\t\t\tswitch (count($aspect_ratio)) {\n\t\t\t\t\t\t\tcase 3: {\n\t\t\t\t\t\t\t\t$aspect_ratio_align = $aspect_ratio[1];\n\t\t\t\t\t\t\t\t$aspect_ratio_ms = $aspect_ratio[2];\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 2: {\n\t\t\t\t\t\t\t\t$aspect_ratio_align = $aspect_ratio[0];\n\t\t\t\t\t\t\t\t$aspect_ratio_ms = $aspect_ratio[1];\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcase 1: {\n\t\t\t\t\t\t\t\t$aspect_ratio_align = $aspect_ratio[0];\n\t\t\t\t\t\t\t\t$aspect_ratio_ms = 'meet';\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t// calculate image width and height on document\n\t\t\tif (($w <= 0) AND ($h <= 0)) {\n\t\t\t\t// convert image size to document unit\n\t\t\t\t$w = $ow;\n\t\t\t\t$h = $oh;\n\t\t\t} elseif ($w <= 0) {\n\t\t\t\t$w = $h * $ow / $oh;\n\t\t\t} elseif ($h <= 0) {\n\t\t\t\t$h = $w * $oh / $ow;\n\t\t\t}\n\t\t\t// Check whether we need a new page first as this does not fit\n\t\t\t$prev_x = $this->x;\n\t\t\tif ($this->checkPageBreak($h, $y)) {\n\t\t\t\t$y = $this->y;\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$x += ($prev_x - $this->x);\n\t\t\t\t} else {\n\t\t\t\t\t$x += ($this->x - $prev_x);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// resize image to be contained on a single page\n\t\t\tif ($fitonpage) {\n\t\t\t\t$ratio_wh = $w / $h;\n\t\t\t\tif (($y + $h) > $this->PageBreakTrigger) {\n\t\t\t\t\t$h = $this->PageBreakTrigger - $y;\n\t\t\t\t\t$w = $h * $ratio_wh;\n\t\t\t\t}\n\t\t\t\tif (($x + $w) > ($this->w - $this->rMargin)) {\n\t\t\t\t\t$w = $this->w - $this->rMargin - $x;\n\t\t\t\t\t$h = $w / $ratio_wh;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// set alignment\n\t\t\t$this->img_rb_y = $y + $h;\n\t\t\t// set alignment\n\t\t\tif ($this->rtl) {\n\t\t\t\tif ($palign == 'L') {\n\t\t\t\t\t$ximg = $this->lMargin;\n\t\t\t\t} elseif ($palign == 'C') {\n\t\t\t\t\t$ximg = ($this->w - $w) / 2;\n\t\t\t\t} elseif ($palign == 'R') {\n\t\t\t\t\t$ximg = $this->w - $this->rMargin - $w;\n\t\t\t\t} else {\n\t\t\t\t\t$ximg = $this->w - $x - $w;\n\t\t\t\t}\n\t\t\t\t$this->img_rb_x = $ximg;\n\t\t\t} else {\n\t\t\t\tif ($palign == 'L') {\n\t\t\t\t\t$ximg = $this->lMargin;\n\t\t\t\t} elseif ($palign == 'C') {\n\t\t\t\t\t$ximg = ($this->w - $w) / 2;\n\t\t\t\t} elseif ($palign == 'R') {\n\t\t\t\t\t$ximg = $this->w - $this->rMargin - $w;\n\t\t\t\t} else {\n\t\t\t\t\t$ximg = $x;\n\t\t\t\t}\n\t\t\t\t$this->img_rb_x = $ximg + $w;\n\t\t\t}\n\t\t\t// store current graphic vars\n\t\t\t$gvars = $this->getGraphicVars();\n\t\t\t// store SVG position and scale factors\n\t\t\t$svgoffset_x = ($ximg - $ox) * $this->k;\n\t\t\t$svgoffset_y = -($y - $oy) * $this->k;\n\t\t\tif (isset($view_box[2]) AND ($view_box[2] > 0) AND ($view_box[3] > 0)) {\n\t\t\t\t$ow = $view_box[2];\n\t\t\t\t$oh = $view_box[3];\n\t\t\t}\n\t\t\t$svgscale_x = $w / $ow;\n\t\t\t$svgscale_y = $h / $oh;\n\t\t\t// scaling and alignment\n\t\t\tif ($aspect_ratio_align != 'none') {\n\t\t\t\t// store current scaling values\n\t\t\t\t$svgscale_old_x = $svgscale_x;\n\t\t\t\t$svgscale_old_y = $svgscale_y;\n\t\t\t\t// force uniform scaling\n\t\t\t\tif ($aspect_ratio_ms == 'slice') {\n\t\t\t\t\t// the entire viewport is covered by the viewBox\n\t\t\t\t\tif ($svgscale_x > $svgscale_y) {\n\t\t\t\t\t\t$svgscale_y = $svgscale_x;\n\t\t\t\t\t} elseif ($svgscale_x < $svgscale_y) {\n\t\t\t\t\t\t$svgscale_x = $svgscale_y;\n\t\t\t\t\t}\n\t\t\t\t} else { // meet\n\t\t\t\t\t// the entire viewBox is visible within the viewport\n\t\t\t\t\tif ($svgscale_x < $svgscale_y) {\n\t\t\t\t\t\t$svgscale_y = $svgscale_x;\n\t\t\t\t\t} elseif ($svgscale_x > $svgscale_y) {\n\t\t\t\t\t\t$svgscale_x = $svgscale_y;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// correct X alignment\n\t\t\t\tswitch (substr($aspect_ratio_align, 1, 3)) {\n\t\t\t\t\tcase 'Min': {\n\t\t\t\t\t\t// do nothing\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'Max': {\n\t\t\t\t\t\t$svgoffset_x += (($w * $this->k) - ($ow * $this->k * $svgscale_x));\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tdefault:\n\t\t\t\t\tcase 'Mid': {\n\t\t\t\t\t\t$svgoffset_x += ((($w * $this->k) - ($ow * $this->k * $svgscale_x)) / 2);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// correct Y alignment\n\t\t\t\tswitch (substr($aspect_ratio_align, 5)) {\n\t\t\t\t\tcase 'Min': {\n\t\t\t\t\t\t// do nothing\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'Max': {\n\t\t\t\t\t\t$svgoffset_y -= (($h * $this->k) - ($oh * $this->k * $svgscale_y));\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tdefault:\n\t\t\t\t\tcase 'Mid': {\n\t\t\t\t\t\t$svgoffset_y -= ((($h * $this->k) - ($oh * $this->k * $svgscale_y)) / 2);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t// save the current graphic state\n\t\t\t$this->_out('q'.$this->epsmarker);\n\t\t\t// set initial clipping mask\n\t\t\t$this->Rect($x, $y, $w, $h, 'CNZ', array(), array());\n\t\t\t// scale and translate\n\t\t\t$e = $ox * $this->k * (1 - $svgscale_x);\n\t\t\t$f = ($this->h - $oy) * $this->k * (1 - $svgscale_y);\n\t\t\t$this->_out(sprintf('%.3F %.3F %.3F %.3F %.3F %.3F cm', $svgscale_x, 0, 0, $svgscale_y, $e + $svgoffset_x, $f + $svgoffset_y));\n\t\t\t// creates a new XML parser to be used by the other XML functions\r\n\t\t\t$this->parser = xml_parser_create('UTF-8');\r\n\t\t\t// the following function allows to use parser inside object\r\n\t\t\txml_set_object($this->parser, $this);\r\n\t\t\t// disable case-folding for this XML parser\r\n\t\t\txml_parser_set_option($this->parser, XML_OPTION_CASE_FOLDING, 0);\r\n\t\t\t// sets the element handler functions for the XML parser\r\n\t\t\txml_set_element_handler($this->parser, 'startSVGElementHandler', 'endSVGElementHandler');\n\t\t\t// sets the character data handler function for the XML parser\r\n\t\t\txml_set_character_data_handler($this->parser, 'segSVGContentHandler');\r\n\t\t\t// start parsing an XML document\r\n\t\t\tif(!xml_parse($this->parser, $svgdata)) {\r\n\t\t\t\t$error_message = sprintf(\"SVG Error: %s at line %d\", xml_error_string(xml_get_error_code($this->parser)), xml_get_current_line_number($this->parser));\n\t\t\t\t$this->Error($error_message);\r\n\t\t\t}\r\n\t\t\t// free this XML parser\r\n\t\t\txml_parser_free($this->parser);\n\t\t\t// restore previous graphic state\n\t\t\t$this->_out($this->epsmarker.'Q');\n\t\t\t// restore  graphic vars\n\t\t\t$this->setGraphicVars($gvars);\n\t\t\tif (!empty($border)) {\n\t\t\t\t$bx = $x;\n\t\t\t\t$by = $y;\n\t\t\t\t$this->x = $ximg;\n\t\t\t\tif ($this->rtl) {\n\t\t\t\t\t$this->x += $w;\n\t\t\t\t}\n\t\t\t\t$this->y = $y;\n\t\t\t\t$this->Cell($w, $h, '', $border, 0, '', 0, '', 0);\n\t\t\t\t$this->x = $bx;\n\t\t\t\t$this->y = $by;\n\t\t\t}\n\t\t\tif ($link) {\n\t\t\t\t$this->Link($ximg, $y, $w, $h, $link, 0);\n\t\t\t}\n\t\t\t// set pointer to align the successive text/objects\n\t\t\tswitch($align) {\n\t\t\t\tcase 'T':{\n\t\t\t\t\t$this->y = $y;\n\t\t\t\t\t$this->x = $this->img_rb_x;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'M':{\n\t\t\t\t\t$this->y = $y + round($h/2);\n\t\t\t\t\t$this->x = $this->img_rb_x;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'B':{\n\t\t\t\t\t$this->y = $this->img_rb_y;\n\t\t\t\t\t$this->x = $this->img_rb_x;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'N':{\n\t\t\t\t\t$this->SetY($this->img_rb_y);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tdefault:{\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$this->endlinex = $this->img_rb_x;\n\t\t}\n\n\t\t/**\r\n\t\t * Get the tranformation matrix from SVG transform attribute\r\n\t\t * @param string transformation\r\n\t\t * @return array of transformations\r\n\t\t * @author Nicola Asuni\n\t\t * @since 5.0.000 (2010-05-02)\n\t\t * @access protected\r\n\t\t */\r\n\t\tprotected function getSVGTransformMatrix($attribute) {\n\t\t\t// identity matrix\n\t\t\t$tm = array(1, 0, 0, 1, 0, 0);\n\t\t\t$continue = true;\n\t\t\twhile ($continue) {\n\t\t\t\t$continue = false;\n\t\t\t\t// matrix\n\t\t\t\t$regs = array();\n\t\t\t\tif (preg_match('/matrix\\(([a-z0-9\\-\\.]+)[\\,\\s]+([a-z0-9\\-\\.]+)[\\,\\s]+([a-z0-9\\-\\.]+)[\\,\\s]+([a-z0-9\\-\\.]+)[\\,\\s]+([a-z0-9\\-\\.]+)[\\,\\s]+([a-z0-9\\-\\.]+)\\)/si', $attribute, $regs)) {\n\t\t\t\t\t$attribute = str_replace($regs[0], '', $attribute);\n\t\t\t\t\t$continue = true;\n\t\t\t\t\t$a = $regs[1];\n\t\t\t\t\t$b = $regs[2];\n\t\t\t\t\t$c = $regs[3];\n\t\t\t\t\t$d = $regs[4];\n\t\t\t\t\t$e = $regs[5];\n\t\t\t\t\t$f = $regs[6];\n\t\t\t\t\t$tm = $this->getTransformationMatrixProduct($tm, array($a, $b, $c, $d, $e, $f));\n\t\t\t\t}\n\t\t\t\t// translate x\n\t\t\t\t$regs = array();\n\t\t\t\tif (preg_match('/translate\\(([a-z0-9\\-\\.]+)\\)/si', $attribute, $regs)) {\n\t\t\t\t\t$attribute = str_replace($regs[0], 'translate('.$regs[1].',0)', $attribute);\n\t\t\t\t\t$continue = true;\n\t\t\t\t}\n\t\t\t\t// translate x,y\n\t\t\t\t$regs = array();\n\t\t\t\tif (preg_match('/translate\\(([a-z0-9\\-\\.]+)[\\,\\s]+([a-z0-9\\-\\.]+)\\)/si', $attribute, $regs)) {\n\t\t\t\t\t$attribute = str_replace($regs[0], '', $attribute);\n\t\t\t\t\t$continue = true;\n\t\t\t\t\t$e = $regs[1];\n\t\t\t\t\t$f = $regs[2];\n\t\t\t\t\t$tm = $this->getTransformationMatrixProduct($tm, array(1, 0, 0, 1, $e, $f));\n\t\t\t\t}\n\t\t\t\t// scale x\n\t\t\t\t$regs = array();\n\t\t\t\tif (preg_match('/scale\\(([a-z0-9\\-\\.]+)\\)/si', $attribute, $regs)) {\n\t\t\t\t\t$attribute = str_replace($regs[0], 'scale('.$regs[1].','.$regs[1].')', $attribute);\n\t\t\t\t\t$continue = true;\n\t\t\t\t}\n\t\t\t\t// scale x,y\n\t\t\t\t$regs = array();\n\t\t\t\tif (preg_match('/scale\\(([a-z0-9\\-\\.]+)[\\,\\s]+([a-z0-9\\-\\.]+)\\)/si', $attribute, $regs)) {\n\t\t\t\t\t$attribute = str_replace($regs[0], '', $attribute);\n\t\t\t\t\t$continue = true;\n\t\t\t\t\t$a = $regs[1];\n\t\t\t\t\tif (isset($regs[2]) AND (strlen(trim($regs[2])) > 0)) {\n\t\t\t\t\t\t$d = $regs[2];\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$d = $a;\n\t\t\t\t\t}\n\t\t\t\t\t$tm = $this->getTransformationMatrixProduct($tm, array($a, 0, 0, $d, 0, 0));\n\t\t\t\t}\n\t\t\t\t// rotate ang\n\t\t\t\t$regs = array();\n\t\t\t\tif (preg_match('/rotate\\(([a-z0-9\\-\\.]+)\\)/si', $attribute, $regs)) {\n\t\t\t\t\t$attribute = str_replace($regs[0], 'rotate('.$regs[1].',0,0)', $attribute);\n\t\t\t\t\t$continue = true;\n\t\t\t\t}\n\t\t\t\t// rotate ang,x,y\n\t\t\t\t$regs = array();\n\t\t\t\tif (preg_match('/rotate\\(([0-9\\-\\.]+)[\\,\\s]+([a-z0-9\\-\\.]+)[\\,\\s]+([a-z0-9\\-\\.]+)\\)/si', $attribute, $regs)) {\n\t\t\t\t\t$attribute = str_replace($regs[0], '', $attribute);\n\t\t\t\t\t$continue = true;\n\t\t\t\t\t$ang = deg2rad($regs[1]);\n\t\t\t\t\t$a = cos($ang);\n\t\t\t\t\t$b = sin($ang);\n\t\t\t\t\t$c = -$b;\n\t\t\t\t\t$d = $a;\n\t\t\t\t\t$x = $regs[2];\n\t\t\t\t\t$y = $regs[3];\n\t\t\t\t\t$e = ($x * (1 - $a)) - ($y * $c);\n\t\t\t\t\t$f = ($y * (1 - $d)) - ($x * $b);\n\t\t\t\t\t$tm = $this->getTransformationMatrixProduct($tm, array($a, $b, $c, $d, $e, $f));\n\t\t\t\t}\n\t\t\t\t// skewX\n\t\t\t\t$regs = array();\n\t\t\t\tif (preg_match('/skewX\\(([0-9\\-\\.]+)\\)/si', $attribute, $regs)) {\n\t\t\t\t\t$attribute = str_replace($regs[0], '', $attribute);\n\t\t\t\t\t$continue = true;\n\t\t\t\t\t$c = tan(deg2rad($regs[1]));\n\t\t\t\t\t$tm = $this->getTransformationMatrixProduct($tm, array(1, 0, $c, 1, 0, 0));\n\t\t\t\t}\n\t\t\t\t// skewY\n\t\t\t\t$regs = array();\n\t\t\t\tif (preg_match('/skewY\\(([0-9\\-\\.]+)\\)/si', $attribute, $regs)) {\n\t\t\t\t\t$attribute = str_replace($regs[0], '', $attribute);\n\t\t\t\t\t$continue = true;\n\t\t\t\t\t$b = tan(deg2rad($regs[1]));\n\t\t\t\t\t$tm = $this->getTransformationMatrixProduct($tm, array(1, $b, 0, 1, 0, 0));\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $tm;\n\t\t}\n\n\t\t/**\r\n\t\t * Get the product of two SVG tranformation matrices\r\n\t\t * @param array $ta first SVG tranformation matrix\n\t\t * @param array $tb second SVG tranformation matrix\r\n\t\t * @return transformation array\r\n\t\t * @author Nicola Asuni\n\t\t * @since 5.0.000 (2010-05-02)\n\t\t * @access protected\r\n\t\t */\r\n\t\tprotected function getTransformationMatrixProduct($ta, $tb)  {\n\t\t\t$tm = array();\n\t\t\t$tm[0] = ($ta[0] * $tb[0]) + ($ta[2] * $tb[1]);\n\t\t\t$tm[1] = ($ta[1] * $tb[0]) + ($ta[3] * $tb[1]);\n\t\t\t$tm[2] = ($ta[0] * $tb[2]) + ($ta[2] * $tb[3]);\n\t\t\t$tm[3] = ($ta[1] * $tb[2]) + ($ta[3] * $tb[3]);\n\t\t\t$tm[4] = ($ta[0] * $tb[4]) + ($ta[2] * $tb[5]) + $ta[4];\n\t\t\t$tm[5] = ($ta[1] * $tb[4]) + ($ta[3] * $tb[5]) + $ta[5];\n\t\t\treturn $tm;\n\t\t}\n\n\t\t/**\n\t\t * Convert SVG transformation matrix to PDF.\n\t\t * @param array $tm original SVG transformation matrix\n\t\t * @return array transformation matrix\n\t\t * @access protected\n\t\t * @since 5.0.000 (2010-05-02)\n\t\t */\n\t\tprotected function convertSVGtMatrix($tm) {\n\t\t\t$a = $tm[0];\n\t\t\t$b = -$tm[1];\n\t\t\t$c = -$tm[2];\n\t\t\t$d = $tm[3];\n\t\t\t$e = $this->getHTMLUnitToUnits($tm[4], 1, $this->svgunit, false) * $this->k;\n\t\t\t$f = -$this->getHTMLUnitToUnits($tm[5], 1, $this->svgunit, false) * $this->k;\n\t\t\t$x = 0;\n\t\t\t$y = $this->h * $this->k;\n\t\t\t$e = ($x * (1 - $a)) - ($y * $c) + $e;\n\t\t\t$f = ($y * (1 - $d)) - ($x * $b) + $f;\n\t\t\treturn array($a, $b, $c, $d, $e, $f);\n\t\t}\n\n\t\t/**\n\t\t * Apply SVG graphic transformation matrix.\n\t\t * @param array $tm original SVG transformation matrix\n\t\t * @access protected\n\t\t * @since 5.0.000 (2010-05-02)\n\t\t */\n\t\tprotected function SVGTransform($tm) {\n\t\t\t$this->Transform($this->convertSVGtMatrix($tm));\n\t\t}\n\n\t\t/**\r\n\t\t * Apply the requested SVG styles (*** TO BE COMPLETED ***)\r\n\t\t * @param array $svgstyle array of SVG styles to apply\n\t\t * @param array $prevsvgstyle array of previous SVG style\n\t\t * @param int $x X origin of the bounding box\n\t\t * @param int $y Y origin of the bounding box\n\t\t * @param int $w width of the bounding box\n\t\t * @param int $h height of the bounding box\n\t\t * @param string $clip_function clip function\n\t\t * @param array $clip_params array of parameters for clipping function\n\t\t * @return object style\r\n\t\t * @author Nicola Asuni\n\t\t * @since 5.0.000 (2010-05-02)\n\t\t * @access protected\r\n\t\t */\r\n\t\tprotected function setSVGStyles($svgstyle, $prevsvgstyle, $x=0, $y=0, $w=1, $h=1, $clip_function='', $clip_params=array())  {\n\t\t\t$objstyle = '';\n\t\t\tif(!isset($svgstyle['opacity'])) {\n\t\t\t\treturn $objstyle;\n\t\t\t}\n\t\t\t// clip-path\n\t\t\t$regs = array();\n\t\t\tif (preg_match('/url\\([\\s]*\\#([^\\)]*)\\)/si', $svgstyle['clip-path'], $regs)) {\n\t\t\t\t$clip_path = $this->svgclippaths[$regs[1]];\n\t\t\t\tforeach ($clip_path as $cp) {\n\t\t\t\t\t$this->startSVGElementHandler('clip-path', $cp['name'], $cp['attribs']);\n\t\t\t\t}\n\t\t\t}\n\t\t\t//$this->SetAlpha(1); // reset alpha\n\t\t\t// opacity\n\t\t\tif ($svgstyle['opacity'] != 1) {\n\t\t\t\t$this->SetAlpha($svgstyle['opacity']);\n\t\t\t}\n\t\t\t// color\n\t\t\t$fill_color = $this->convertHTMLColorToDec($svgstyle['color']);\n\t\t\t$this->SetFillColorArray($fill_color);\n\t\t\t// text color\n\t\t\t$text_color = $this->convertHTMLColorToDec($svgstyle['text-color']);\n\t\t\t$this->SetTextColorArray($text_color);\n\t\t\t// clip\n\t\t\tif (preg_match('/rect\\(([a-z0-9\\-\\.]*)[\\s]*([a-z0-9\\-\\.]*)[\\s]*([a-z0-9\\-\\.]*)[\\s]*([a-z0-9\\-\\.]*)\\)/si', $svgstyle['clip'], $regs)) {\n\t\t\t\t$top = (isset($regs[1])?$this->getHTMLUnitToUnits($regs[1], 0, $this->svgunit, false):0);\n\t\t\t\t$right = (isset($regs[2])?$this->getHTMLUnitToUnits($regs[2], 0, $this->svgunit, false):0);\n\t\t\t\t$bottom = (isset($regs[3])?$this->getHTMLUnitToUnits($regs[3], 0, $this->svgunit, false):0);\n\t\t\t\t$left = (isset($regs[4])?$this->getHTMLUnitToUnits($regs[4], 0, $this->svgunit, false):0);\n\t\t\t\t$cx = $x + $left;\n\t\t\t\t$cy = $y + $top;\n\t\t\t\t$cw = $w - $left - $right;\n\t\t\t\t$ch = $h - $top - $bottom;\n\t\t\t\tif ($svgstyle['clip-rule'] == 'evenodd') {\n\t\t\t\t\t$clip_rule = 'CNZ';\n\t\t\t\t} else {\n\t\t\t\t\t$clip_rule = 'CEO';\n\t\t\t\t}\n\t\t\t\t$this->Rect($cx, $cy, $cw, $ch, $clip_rule, array(), array());\n\t\t\t}\n\t\t\t// fill\n\t\t\t$regs = array();\n\t\t\tif (preg_match('/url\\([\\s]*\\#([^\\)]*)\\)/si', $svgstyle['fill'], $regs)) {\n\t\t\t\t// gradient\n\t\t\t\t$gradient = $this->svggradients[$regs[1]];\n\t\t\t\tif (isset($gradient['xref'])) {\n\t\t\t\t\t// reference to another gradient definition\n\t\t\t\t\t$newgradient = $this->svggradients[$gradient['xref']];\n\t\t\t\t\t$newgradient['coords'] = $gradient['coords'];\n\t\t\t\t\t$newgradient['mode'] = $gradient['mode'];\n\t\t\t\t\t$newgradient['gradientUnits'] = $gradient['gradientUnits'];\n\t\t\t\t\tif (isset($gradient['gradientTransform'])) {\n\t\t\t\t\t\t$newgradient['gradientTransform'] = $gradient['gradientTransform'];\n\t\t\t\t\t}\n\t\t\t\t\t$gradient = $newgradient;\n\t\t\t\t}\n\t\t\t\t//save current Graphic State\n\t\t\t\t$this->_out('q');\n\t\t\t\t//set clipping area\n\t\t\t\tif (!empty($clip_function) AND method_exists($this, $clip_function)) {\n\t\t\t\t\t$bbox = call_user_func_array(array($this, $clip_function), $clip_params);\n\t\t\t\t\tif (is_array($bbox) AND (count($bbox) == 4)) {\n\t\t\t\t\t\tlist($x, $y, $w, $h) = $bbox;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ($gradient['mode'] == 'measure') {\n\t\t\t\t\tif (isset($gradient['gradientTransform']) AND !empty($gradient['gradientTransform'])) {\n\t\t\t\t\t\t$gtm = $gradient['gradientTransform'];\n\t\t\t\t\t\t// apply transformation matrix\n\t\t\t\t\t\t$xa = ($gtm[0] * $gradient['coords'][0]) + ($gtm[2] * $gradient['coords'][1]) + $gtm[4];\n\t\t\t\t\t\t$ya = ($gtm[1] * $gradient['coords'][0]) + ($gtm[3] * $gradient['coords'][1]) + $gtm[5];\n\t\t\t\t\t\t$xb = ($gtm[0] * $gradient['coords'][2]) + ($gtm[2] * $gradient['coords'][3]) + $gtm[4];\n\t\t\t\t\t\t$yb = ($gtm[1] * $gradient['coords'][2]) + ($gtm[3] * $gradient['coords'][3]) + $gtm[5];\n\t\t\t\t\t\tif (isset($gradient['coords'][4])) {\n\t\t\t\t\t\t\t$gradient['coords'][4] = sqrt(pow(($gtm[0] * $gradient['coords'][4]), 2) + pow(($gtm[1] * $gradient['coords'][4]), 2));\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$gradient['coords'][0] = $xa;\n\t\t\t\t\t\t$gradient['coords'][1] = $ya;\n\t\t\t\t\t\t$gradient['coords'][2] = $xb;\n\t\t\t\t\t\t$gradient['coords'][3] = $yb;\n\n\t\t\t\t\t}\n\t\t\t\t\t// convert SVG coordinates to user units\n\t\t\t\t\t$gradient['coords'][0] = $this->getHTMLUnitToUnits($gradient['coords'][0], 0, $this->svgunit, false);\n\t\t\t\t\t$gradient['coords'][1] = $this->getHTMLUnitToUnits($gradient['coords'][1], 0, $this->svgunit, false);\n\t\t\t\t\t$gradient['coords'][2] = $this->getHTMLUnitToUnits($gradient['coords'][2], 0, $this->svgunit, false);\n\t\t\t\t\t$gradient['coords'][3] = $this->getHTMLUnitToUnits($gradient['coords'][3], 0, $this->svgunit, false);\n\t\t\t\t\tif (isset($gradient['coords'][4])) {\n\t\t\t\t\t\t$gradient['coords'][4] = $this->getHTMLUnitToUnits($gradient['coords'][4], 0, $this->svgunit, false);\n\t\t\t\t\t}\n\t\t\t\t\t// shift units\n\t\t\t\t\tif ($gradient['gradientUnits'] == 'objectBoundingBox') {\n\t\t\t\t\t\t// convert to SVG coordinate system\n\t\t\t\t\t\t$gradient['coords'][0] += $x;\n\t\t\t\t\t\t$gradient['coords'][1] += $y;\n\t\t\t\t\t\t$gradient['coords'][2] += $x;\n\t\t\t\t\t\t$gradient['coords'][3] += $y;\n\t\t\t\t\t}\n\t\t\t\t\t// calculate percentages\n\t\t\t\t\t$gradient['coords'][0] = ($gradient['coords'][0] - $x) / $w;\n\t\t\t\t\t$gradient['coords'][1] = ($gradient['coords'][1] - $y) / $h;\n\t\t\t\t\t$gradient['coords'][2] = ($gradient['coords'][2] - $x) / $w;\n\t\t\t\t\t$gradient['coords'][3] = ($gradient['coords'][3] - $y) / $h;\n\t\t\t\t\tif (isset($gradient['coords'][4])) {\n\t\t\t\t\t\t$gradient['coords'][4] /= $w;\n\t\t\t\t\t}\n\t\t\t\t\t// fix values\n\t\t\t\t\tforeach($gradient['coords'] as $key => $val) {\n\t\t\t\t\t\tif ($val < 0) {\n\t\t\t\t\t\t\t$gradient['coords'][$key] = 0;\n\t\t\t\t\t\t} elseif ($val > 1) {\n\t\t\t\t\t\t\t$gradient['coords'][$key] = 1;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif (($gradient['type'] == 2) AND ($gradient['coords'][0] == $gradient['coords'][2]) AND ($gradient['coords'][1] == $gradient['coords'][3])) {\n\t\t\t\t\t\t// single color (no shading)\n\t\t\t\t\t\t$gradient['coords'][0] = 1;\n\t\t\t\t\t\t$gradient['coords'][1] = 0;\n\t\t\t\t\t\t$gradient['coords'][2] = 0.999;\n\t\t\t\t\t\t$gradient['coords'][3] = 0;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// swap Y coordinates\n\t\t\t\t$tmp = $gradient['coords'][1];\n\t\t\t\t$gradient['coords'][1] = $gradient['coords'][3];\n\t\t\t\t$gradient['coords'][3] = $tmp;\n\t\t\t\t// set transformation map for gradient\n\t\t\t\tif (($gradient['type'] == 3) AND ($gradient['mode'] == 'measure')) {\n\t\t\t\t\t// gradient is always circular\n\t\t\t\t\t$cy = $this->h - $y - ($gradient['coords'][1] * ($w + $h));\n\t\t\t\t\t$this->_out(sprintf('%.3F 0 0 %.3F %.3F %.3F cm', $w*$this->k, $w*$this->k, $x*$this->k, $cy*$this->k));\n\t\t\t\t} else {\n\t\t\t\t\t$this->_out(sprintf('%.3F 0 0 %.3F %.3F %.3F cm', $w*$this->k, $h*$this->k, $x*$this->k, ($this->h-($y+$h))*$this->k));\n\t\t\t\t}\n\t\t\t\tif (count($gradient['stops']) > 1) {\n\t\t\t\t\t$this->Gradient($gradient['type'], $gradient['coords'], $gradient['stops'], array(), false);\n\t\t\t\t}\n\t\t\t} elseif ($svgstyle['fill'] != 'none') {\n\t\t\t\t$fill_color = $this->convertHTMLColorToDec($svgstyle['fill']);\n\t\t\t\tif ($svgstyle['fill-opacity'] != 1) {\n\t\t\t\t\t$this->SetAlpha($svgstyle['fill-opacity']);\n\t\t\t\t}\n\t\t\t\t$this->SetFillColorArray($fill_color);\n\t\t\t\tif ($svgstyle['fill-rule'] == 'evenodd') {\n\t\t\t\t\t$objstyle .= 'F*';\n\t\t\t\t} else {\n\t\t\t\t\t$objstyle .= 'F';\n\t\t\t\t}\n\t\t\t}\n\t\t\t// stroke\n\t\t\tif ($svgstyle['stroke'] != 'none') {\n\t\t\t\t$stroke_style = array(\n\t\t\t\t\t'color' => $this->convertHTMLColorToDec($svgstyle['stroke']),\n\t\t\t\t\t'width' => $this->getHTMLUnitToUnits($svgstyle['stroke-width'], 0, $this->svgunit, false),\n\t\t\t\t\t'cap' => $svgstyle['stroke-linecap'],\n\t\t\t\t\t'join' => $svgstyle['stroke-linejoin']\n\t\t\t\t\t);\n\t\t\t\tif (isset($svgstyle['stroke-dasharray']) AND !empty($svgstyle['stroke-dasharray']) AND ($svgstyle['stroke-dasharray'] != 'none')) {\n\t\t\t\t\t$stroke_style['dash'] = $svgstyle['stroke-dasharray'];\n\t\t\t\t}\n\t\t\t\t$this->SetLineStyle($stroke_style);\n\t\t\t\t$objstyle .= 'D';\n\t\t\t}\n\t\t\t// font\n\t\t\t$regs = array();\n\t\t\tif (!empty($svgstyle['font'])) {\n\t\t\t\tif (preg_match('/font-family[\\s]*:[\\s]*([^\\s\\;\\\"]*)/si', $svgstyle['font'], $regs)) {\n\t\t\t\t\t$font_family = trim($regs[1]);\n\t\t\t\t} else {\n\t\t\t\t\t$font_family = $svgstyle['font-family'];\n\t\t\t\t}\n\t\t\t\tif (preg_match('/font-size[\\s]*:[\\s]*([^\\s\\;\\\"]*)/si', $svgstyle['font'], $regs)) {\n\t\t\t\t\t$font_size = trim($regs[1]);\n\t\t\t\t} else {\n\t\t\t\t\t$font_size = $svgstyle['font-size'];\n\t\t\t\t}\n\t\t\t\tif (preg_match('/font-style[\\s]*:[\\s]*([^\\s\\;\\\"]*)/si', $svgstyle['font'], $regs)) {\n\t\t\t\t\t$font_style = trim($regs[1]);\n\t\t\t\t} else {\n\t\t\t\t\t$font_style = $svgstyle['font-style'];\n\t\t\t\t}\n\t\t\t\tif (preg_match('/font-weight[\\s]*:[\\s]*([^\\s\\;\\\"]*)/si', $svgstyle['font'], $regs)) {\n\t\t\t\t\t$font_weight = trim($regs[1]);\n\t\t\t\t} else {\n\t\t\t\t\t$font_weight = $svgstyle['font-weight'];\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t$font_family = $svgstyle['font-family'];\n\t\t\t\t$font_size = $svgstyle['font-size'];\n\t\t\t\t$font_style = $svgstyle['font-style'];\n\t\t\t\t$font_weight = $svgstyle['font-weight'];\n\t\t\t}\n\t\t\t$font_size = $this->getHTMLUnitToUnits($font_size, $prevsvgstyle['font-size'], $this->svgunit, false) * $this->k;\n\t\t\tswitch ($font_style) {\n\t\t\t\tcase 'italic': {\n\t\t\t\t\t$font_style = 'I';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'oblique': {\n\t\t\t\t\t$font_style = 'I';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tdefault:\n\t\t\t\tcase 'normal': {\n\t\t\t\t\t$font_style = '';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\tswitch ($font_weight) {\n\t\t\t\tcase 'bold':\n\t\t\t\tcase 'bolder': {\n\t\t\t\t\t$font_style .= 'B';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\tswitch ($svgstyle['text-decoration']) {\n\t\t\t\tcase 'underline': {\n\t\t\t\t\t$font_style .= 'U';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'overline': {\n\t\t\t\t\t$font_style .= 'O';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'line-through': {\n\t\t\t\t\t$font_style .= 'D';\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tdefault:\n\t\t\t\tcase 'none': {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$this->SetFont($font_family, $font_style, $font_size);\n\t\t\treturn $objstyle;\n\t\t}\n\n\t\t/**\r\n\t\t * Draws an SVG path\r\n\t\t * @param string $d attribute d of the path SVG element\n\t\t * @param string $style Style of rendering. Possible values are:\n\t\t * <ul>\n\t\t *\t <li>D or empty string: Draw (default).</li>\n\t\t *\t <li>F: Fill.</li>\n\t\t *\t <li>F*: Fill using the even-odd rule to determine which regions lie inside the clipping path.</li>\n\t\t *\t <li>DF or FD: Draw and fill.</li>\n\t\t *\t <li>DF* or FD*: Draw and fill using the even-odd rule to determine which regions lie inside the clipping path.</li>\n\t\t *\t <li>CNZ: Clipping mode (using the even-odd rule to determine which regions lie inside the clipping path).</li>\n\t\t *\t <li>CEO: Clipping mode (using the nonzero winding number rule to determine which regions lie inside the clipping path).</li>\n\t\t * </ul>\n\t\t * @return array of container box measures (x, y, w, h)\r\n\t\t * @author Nicola Asuni\n\t\t * @since 5.0.000 (2010-05-02)\n\t\t * @access protected\r\n\t\t */\r\n\t\tprotected function SVGPath($d, $style='') {\n\t\t\t// set fill/stroke style\n\t\t\t$op = $this->getPathPaintOperator($style, '');\n\t\t\tif (empty($op)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t$paths = array();\n\t\t\tpreg_match_all('/([a-zA-Z])[\\s]*([^a-zA-Z\\\"]*)/si', $d, $paths, PREG_SET_ORDER);\n\t\t\t$x = 0;\n\t\t\t$y = 0;\n\t\t\t$x1 = 0;\n\t\t\t$y1 = 0;\n\t\t\t$x2 = 0;\n\t\t\t$y2 = 0;\n\t\t\t$xmin = 2147483647;\n\t\t\t$xmax = 0;\n\t\t\t$ymin = 2147483647;\n\t\t\t$ymax = 0;\n\t\t\t$relcoord = false;\n\t\t\t// draw curve pieces\n\t\t\tforeach ($paths as $key => $val) {\n\t\t\t\t// get curve type\n\t\t\t\t$cmd = trim($val[1]);\n\t\t\t\tif (strtolower($cmd) == $cmd) {\n\t\t\t\t\t// use relative coordinated instead of absolute\n\t\t\t\t\t$relcoord = true;\n\t\t\t\t\t$xoffset = $x;\n\t\t\t\t\t$yoffset = $y;\n\t\t\t\t} else {\n\t\t\t\t\t$relcoord = false;\n\t\t\t\t\t$xoffset = 0;\n\t\t\t\t\t$yoffset = 0;\n\t\t\t\t}\n\t\t\t\t$params = array();\n\t\t\t\tif (isset($val[2])) {\n\t\t\t\t\t// get curve parameters\n\t\t\t\t\t$rawparams = preg_split('/([\\,\\s]+)/si', trim($val[2]));\n\t\t\t\t\t$params = array();\n\t\t\t\t\tforeach ($rawparams as $ck => $cp) {\n\t\t\t\t\t\t$params[$ck] = $this->getHTMLUnitToUnits($cp, 0, $this->svgunit, false);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tswitch (strtoupper($cmd)) {\n\t\t\t\t\tcase 'M': { // moveto\n\t\t\t\t\t\tforeach ($params as $ck => $cp) {\n\t\t\t\t\t\t\tif (($ck % 2) == 0) {\n\t\t\t\t\t\t\t\t$x = $cp + $xoffset;\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$y = $cp + $yoffset;\n\t\t\t\t\t\t\t\tif ($ck == 1) {\n\t\t\t\t\t\t\t\t\t$this->_outPoint($x, $y);\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t$this->_outLine($x, $y);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$xmin = min($xmin, $x);\n\t\t\t\t\t\t\t\t$ymin = min($ymin, $y);\n\t\t\t\t\t\t\t\t$xmax = max($xmax, $x);\n\t\t\t\t\t\t\t\t$ymax = max($ymax, $y);\n\t\t\t\t\t\t\t\tif ($relcoord) {\n\t\t\t\t\t\t\t\t\t$xoffset = $x;\n\t\t\t\t\t\t\t\t\t$yoffset = $y;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'L': { // lineto\n\t\t\t\t\t\tforeach ($params as $ck => $cp) {\n\t\t\t\t\t\t\tif (($ck % 2) == 0) {\n\t\t\t\t\t\t\t\t$x = $cp + $xoffset;\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$y = $cp + $yoffset;\n\t\t\t\t\t\t\t\t$this->_outLine($x, $y);\n\t\t\t\t\t\t\t\t$xmin = min($xmin, $x);\n\t\t\t\t\t\t\t\t$ymin = min($ymin, $y);\n\t\t\t\t\t\t\t\t$xmax = max($xmax, $x);\n\t\t\t\t\t\t\t\t$ymax = max($ymax, $y);\n\t\t\t\t\t\t\t\tif ($relcoord) {\n\t\t\t\t\t\t\t\t\t$xoffset = $x;\n\t\t\t\t\t\t\t\t\t$yoffset = $y;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'H': { // horizontal lineto\n\t\t\t\t\t\tforeach ($params as $ck => $cp) {\n\t\t\t\t\t\t\t$x = $cp + $xoffset;\n\t\t\t\t\t\t\t$this->_outLine($x, $y);\n\t\t\t\t\t\t\t$xmin = min($xmin, $x);\n\t\t\t\t\t\t\t$xmax = max($xmax, $x);\n\t\t\t\t\t\t\tif ($relcoord) {\n\t\t\t\t\t\t\t\t$xoffset = $x;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'V': { // vertical lineto\n\t\t\t\t\t\tforeach ($params as $ck => $cp) {\n\t\t\t\t\t\t\t$y = $cp + $yoffset;\n\t\t\t\t\t\t\t$this->_outLine($x, $y);\n\t\t\t\t\t\t\t$ymin = min($ymin, $y);\n\t\t\t\t\t\t\t$ymax = max($ymax, $y);\n\t\t\t\t\t\t\tif ($relcoord) {\n\t\t\t\t\t\t\t\t$yoffset = $y;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'C': { // curveto\n\t\t\t\t\t\tforeach ($params as $ck => $cp) {\n\t\t\t\t\t\t\t$params[$ck] = $cp;\n\t\t\t\t\t\t\tif ((($ck + 1) % 6) == 0) {\n\t\t\t\t\t\t\t\t$x1 = $params[($ck - 5)] + $xoffset;\n\t\t\t\t\t\t\t\t$y1 = $params[($ck - 4)] + $yoffset;\n\t\t\t\t\t\t\t\t$x2 = $params[($ck - 3)] + $xoffset;\n\t\t\t\t\t\t\t\t$y2 = $params[($ck - 2)] + $yoffset;\n\t\t\t\t\t\t\t\t$x = $params[($ck - 1)] + $xoffset;\n\t\t\t\t\t\t\t\t$y = $params[($ck)] + $yoffset;\n\t\t\t\t\t\t\t\t$this->_outCurve($x1, $y1, $x2, $y2, $x, $y);\n\t\t\t\t\t\t\t\t$xmin = min($xmin, $x, $x1, $x2);\n\t\t\t\t\t\t\t\t$ymin = min($ymin, $y, $y1, $y2);\n\t\t\t\t\t\t\t\t$xmax = max($xmax, $x, $x1, $x2);\n\t\t\t\t\t\t\t\t$ymax = max($ymax, $y, $y1, $y2);\n\t\t\t\t\t\t\t\tif ($relcoord) {\n\t\t\t\t\t\t\t\t\t$xoffset = $x;\n\t\t\t\t\t\t\t\t\t$yoffset = $y;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'S': { // shorthand/smooth curveto\n\t\t\t\t\t\tforeach ($params as $ck => $cp) {\n\t\t\t\t\t\t\t$params[$ck] = $cp;\n\t\t\t\t\t\t\tif ((($ck + 1) % 4) == 0) {\n\t\t\t\t\t\t\t\tif (($key > 0) AND ((strtoupper($paths[($key - 1)][1]) == 'C') OR (strtoupper($paths[($key - 1)][1]) == 'S'))) {\n\t\t\t\t\t\t\t\t\t$x1 = (2 * $x) - $x2;\n\t\t\t\t\t\t\t\t\t$y1 = (2 * $y) - $y2;\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t$x1 = $x;\n\t\t\t\t\t\t\t\t\t$y1 = $y;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$x2 = $params[($ck - 3)] + $xoffset;\n\t\t\t\t\t\t\t\t$y2 = $params[($ck - 2)] + $yoffset;\n\t\t\t\t\t\t\t\t$x = $params[($ck - 1)] + $xoffset;\n\t\t\t\t\t\t\t\t$y = $params[($ck)] + $yoffset;\n\t\t\t\t\t\t\t\t$this->_outCurve($x1, $y1, $x2, $y2, $x, $y);\n\t\t\t\t\t\t\t\t$xmin = min($xmin, $x, $x1, $x2);\n\t\t\t\t\t\t\t\t$ymin = min($ymin, $y, $y1, $y2);\n\t\t\t\t\t\t\t\t$xmax = max($xmax, $x, $x1, $x2);\n\t\t\t\t\t\t\t\t$ymax = max($ymax, $y, $y1, $y2);\n\t\t\t\t\t\t\t\tif ($relcoord) {\n\t\t\t\t\t\t\t\t\t$xoffset = $x;\n\t\t\t\t\t\t\t\t\t$yoffset = $y;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'Q': { // quadratic Bzier curveto\n\t\t\t\t\t\tforeach ($params as $ck => $cp) {\n\t\t\t\t\t\t\t$params[$ck] = $cp;\n\t\t\t\t\t\t\tif ((($ck + 1) % 4) == 0) {\n\t\t\t\t\t\t\t\t// convert quadratic points to cubic points\n\t\t\t\t\t\t\t\t$x1 = $params[($ck - 3)] + $xoffset;\n\t\t\t\t\t\t\t\t$y1 = $params[($ck - 2)] + $yoffset;\n\t\t\t\t\t\t\t\t$xa = ($x + (2 * $x1)) / 3;\n\t\t\t\t\t\t\t\t$ya = ($y + (2 * $y1)) / 3;\n\t\t\t\t\t\t\t\t$x = $params[($ck - 1)] + $xoffset;\n\t\t\t\t\t\t\t\t$y = $params[($ck)] + $yoffset;\n\t\t\t\t\t\t\t\t$xb = ($x + (2 * $x1)) / 3;\n\t\t\t\t\t\t\t\t$yb = ($y + (2 * $y1)) / 3;\n\t\t\t\t\t\t\t\t$this->_outCurve($xa, $ya, $xb, $yb, $x, $y);\n\t\t\t\t\t\t\t\t$xmin = min($xmin, $x, $xa, $xb);\n\t\t\t\t\t\t\t\t$ymin = min($ymin, $y, $ya, $yb);\n\t\t\t\t\t\t\t\t$xmax = max($xmax, $x, $xa, $xb);\n\t\t\t\t\t\t\t\t$ymax = max($ymax, $y, $ya, $yb);\n\t\t\t\t\t\t\t\tif ($relcoord) {\n\t\t\t\t\t\t\t\t\t$xoffset = $x;\n\t\t\t\t\t\t\t\t\t$yoffset = $y;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'T': { // shorthand/smooth quadratic Bzier curveto\n\t\t\t\t\t\tforeach ($params as $ck => $cp) {\n\t\t\t\t\t\t\t$params[$ck] = $cp;\n\t\t\t\t\t\t\tif (($ck % 2) != 0) {\n\t\t\t\t\t\t\t\tif (($key > 0) AND ((strtoupper($paths[($key - 1)][1]) == 'Q') OR (strtoupper($paths[($key - 1)][1]) == 'T'))) {\n\t\t\t\t\t\t\t\t\t$x1 = (2 * $x) - $x1;\n\t\t\t\t\t\t\t\t\t$y1 = (2 * $y) - $y1;\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t$x1 = $x;\n\t\t\t\t\t\t\t\t\t$y1 = $y;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t// convert quadratic points to cubic points\n\t\t\t\t\t\t\t\t$xa = ($x + (2 * $x1)) / 3;\n\t\t\t\t\t\t\t\t$ya = ($y + (2 * $y1)) / 3;\n\t\t\t\t\t\t\t\t$x = $params[($ck - 1)] + $xoffset;\n\t\t\t\t\t\t\t\t$y = $params[($ck)] + $yoffset;\n\t\t\t\t\t\t\t\t$xb = ($x + (2 * $x1)) / 3;\n\t\t\t\t\t\t\t\t$yb = ($y + (2 * $y1)) / 3;\n\t\t\t\t\t\t\t\t$this->_outCurve($xa, $ya, $xb, $yb, $x, $y);\n\t\t\t\t\t\t\t\t$xmin = min($xmin, $x, $x1, $x2);\n\t\t\t\t\t\t\t\t$ymin = min($ymin, $y, $y1, $y2);\n\t\t\t\t\t\t\t\t$xmax = max($xmax, $x, $x1, $x2);\n\t\t\t\t\t\t\t\t$ymax = max($ymax, $y, $y1, $y2);\n\t\t\t\t\t\t\t\tif ($relcoord) {\n\t\t\t\t\t\t\t\t\t$xoffset = $x;\n\t\t\t\t\t\t\t\t\t$yoffset = $y;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'A': { // elliptical arc\n\t\t\t\t\t\tforeach ($params as $ck => $cp) {\n\t\t\t\t\t\t\t$params[$ck] = $cp;\n\t\t\t\t\t\t\tif ((($ck + 1) % 7) == 0) {\n\t\t\t\t\t\t\t\t$x0 = $x;\n\t\t\t\t\t\t\t\t$y0 = $y;\n\t\t\t\t\t\t\t\t$rx = abs($params[($ck - 6)]);\n\t\t\t\t\t\t\t\t$ry = abs($params[($ck - 5)]);\n\t\t\t\t\t\t\t\t$ang = -$rawparams[($ck - 4)];\n\t\t\t\t\t\t\t\t$angle = deg2rad($ang);\n\t\t\t\t\t\t\t\t$fa = $rawparams[($ck - 3)]; // large-arc-flag\n\t\t\t\t\t\t\t\t$fs = $rawparams[($ck - 2)]; // sweep-flag\n\t\t\t\t\t\t\t\t$x = $params[($ck - 1)] + $xoffset;\n\t\t\t\t\t\t\t\t$y = $params[$ck] + $yoffset;\n\t\t\t\t\t\t\t\t$cos_ang = cos($angle);\n\t\t\t\t\t\t\t\t$sin_ang = sin($angle);\n\t\t\t\t\t\t\t\t$a = ($x0 - $x) / 2;\n\t\t\t\t\t\t\t\t$b = ($y0 - $y) / 2;\n\t\t\t\t\t\t\t\t$xa = ($a * $cos_ang) - ($b * $sin_ang);\n\t\t\t\t\t\t\t\t$ya = ($a * $sin_ang) + ($b * $cos_ang);\n\t\t\t\t\t\t\t\t$rx2 = $rx * $rx;\n\t\t\t\t\t\t\t\t$ry2 = $ry * $ry;\n\t\t\t\t\t\t\t\t$xa2 = $xa * $xa;\n\t\t\t\t\t\t\t\t$ya2 = $ya * $ya;\n\t\t\t\t\t\t\t\t$delta = ($xa2 / $rx2) + ($ya2 / $ry2);\n\t\t\t\t\t\t\t\tif ($delta > 1) {\n\t\t\t\t\t\t\t\t\t$rx *= sqrt($delta);\n\t\t\t\t\t\t\t\t\t$ry *= sqrt($delta);\n\t\t\t\t\t\t\t\t\t$rx2 = $rx * $rx;\n\t\t\t\t\t\t\t\t\t$ry2 = $ry * $ry;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$numerator = (($rx2 * $ry2) - ($rx2 * $ya2) - ($ry2 * $xa2));\n\t\t\t\t\t\t\t\tif ($numerator < 0) {\n\t\t\t\t\t\t\t\t\t$root = 0;\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t$root = sqrt($numerator / (($rx2 * $ya2) + ($ry2 * $xa2)));\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ($fa == $fs) {\n\t\t\t\t\t\t\t\t\t$root *= -1;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$cax = $root * (($rx * $ya) / $ry);\n\t\t\t\t\t\t\t\t$cay = -$root * (($ry * $xa) / $rx);\n\t\t\t\t\t\t\t\t// coordinates of ellipse center\n\t\t\t\t\t\t\t\t$cx = ($cax * $cos_ang) - ($cay * $sin_ang) + (($x0 + $x) / 2);\n\t\t\t\t\t\t\t\t$cy = ($cax * $sin_ang) + ($cay * $cos_ang) + (($y0 + $y) / 2);\n\t\t\t\t\t\t\t\t// get angles\n\t\t\t\t\t\t\t\t$angs = $this->getVectorsAngle(1, 0, (($xa - $cax) / $rx), (($cay - $ya) / $ry));\n\t\t\t\t\t\t\t\t$dang = $this->getVectorsAngle((($xa - $cax) / $rx), (($ya - $cay) / $ry), ((-$xa - $cax) / $rx), ((-$ya - $cay) / $ry));\n\t\t\t\t\t\t\t\tif (($fs == 0) AND ($dang > 0)) {\n\t\t\t\t\t\t\t\t\t$dang -= (2 * M_PI);\n\t\t\t\t\t\t\t\t} elseif (($fs == 1) AND ($dang < 0)) {\n\t\t\t\t\t\t\t\t\t$dang += (2 * M_PI);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$angf = $angs - $dang;\n\t\t\t\t\t\t\t\tif (($fs == 1) AND ($angs > $angf)) {\n\t\t\t\t\t\t\t\t\t$tmp = $angs;\n\t\t\t\t\t\t\t\t\t$angs = $angf;\n\t\t\t\t\t\t\t\t\t$angf = $tmp;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$angs = rad2deg($angs);\n\t\t\t\t\t\t\t\t$angf = rad2deg($angf);\n\t\t\t\t\t\t\t\t$pie = false;\n\t\t\t\t\t\t\t\tif ((isset($paths[($key + 1)][1])) AND (trim($paths[($key + 1)][1]) == 'z')) {\n\t\t\t\t\t\t\t\t\t$pie = true;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t$this->_outellipticalarc($cx, $cy, $rx, $ry, $ang, $angs, $angf, $pie, 2);\n\t\t\t\t\t\t\t\t$this->_outPoint($x, $y);\n\t\t\t\t\t\t\t\t$xmin = min($xmin, $x);\n\t\t\t\t\t\t\t\t$ymin = min($ymin, $y);\n\t\t\t\t\t\t\t\t$xmax = max($xmax, $x);\n\t\t\t\t\t\t\t\t$ymax = max($ymax, $y);\n\t\t\t\t\t\t\t\tif ($relcoord) {\n\t\t\t\t\t\t\t\t\t$xoffset = $x;\n\t\t\t\t\t\t\t\t\t$yoffset = $y;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase 'Z': {\n\t\t\t\t\t\t$this->_out('h');\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} // end foreach\n\t\t\tif (!empty($op)) {\n\t\t\t\t$this->_out($op);\n\t\t\t}\n\t\t\treturn array($xmin, $ymin, ($xmax - $xmin), ($ymax - $ymin));\n\t\t}\n\n\t\t/**\r\n\t\t * Returns the angle in  radiants between two vectors\r\n\t\t * @param int $x1 X coordiante of first vector point\n\t\t * @param int $y1 Y coordiante of first vector point\n\t\t * @param int $x2 X coordiante of second vector point\n\t\t * @param int $y2 Y coordiante of second vector point\r\n\t\t * @author Nicola Asuni\n\t\t * @since 5.0.000 (2010-05-04)\n\t\t * @access protected\r\n\t\t */\r\n\t\tprotected function getVectorsAngle($x1, $y1, $x2, $y2) {\n\t\t\t$dprod = ($x1 * $x2) + ($y1 * $y2);\n\t\t\t$dist1 = sqrt(($x1 * $x1) + ($y1 * $y1));\n\t\t\t$dist2 = sqrt(($x2 * $x2) + ($y2 * $y2));\n\t\t\t$angle = acos($dprod / ($dist1 * $dist2));\n\t\t\tif (is_nan($angle)) {\n\t\t\t\t$angle = M_PI;\n\t\t\t}\n\t\t\tif ((($x1 * $y2) - ($x2 * $y1)) < 0) {\n\t\t\t\t$angle *= -1;\n\t\t\t}\n\t\t\treturn $angle;\n\t\t}\n\n\t\t/**\r\n\t\t * Sets the opening SVG element handler function for the XML parser. (*** TO BE COMPLETED ***)\r\n\t\t * @param resource $parser The first parameter, parser, is a reference to the XML parser calling the handler.\r\n\t\t * @param string $name The second parameter, name, contains the name of the element for which this handler is called. If case-folding is in effect for this parser, the element name will be in uppercase letters. \r\n\t\t * @param array $attribs The third parameter, attribs, contains an associative array with the element's attributes (if any). The keys of this array are the attribute names, the values are the attribute values. Attribute names are case-folded on the same criteria as element names. Attribute values are not case-folded. The original order of the attributes can be retrieved by walking through attribs the normal way, using each(). The first key in the array was the first attribute, and so on. \r\n\t\t * @author Nicola Asuni\n\t\t * @since 5.0.000 (2010-05-02)\n\t\t * @access protected\r\n\t\t */\r\n\t\tprotected function startSVGElementHandler($parser, $name, $attribs) {\n\t\t\t// check if we are in clip mode\n\t\t\tif ($this->svgclipmode) {\n\t\t\t\t$this->svgclippaths[$this->svgclipid][] = array('name' => $name, 'attribs' => $attribs);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif ($this->svgdefsmode AND !in_array($name, array('clipPath', 'linearGradient', 'radialGradient', 'stop'))) {\n\t\t\t\t$this->svgdefs[$attribs['id']] = array('name' => $name, 'attribs' => $attribs);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t$clipping = false;\n\t\t\tif ($parser == 'clip-path') {\n\t\t\t\t// set clipping mode\n\t\t\t\t$clipping = true;\n\t\t\t}\n\t\t\t// get styling properties\n\t\t\t$prev_svgstyle = $this->svgstyles[(count($this->svgstyles) - 1)]; // previous style\r\n\t\t\t$svgstyle = array(); // current style\n\t\t\tif (isset($attribs['style'])) {\n\t\t\t\t$attribs['style'] = ';'.$attribs['style'];\n\t\t\t}\n\t\t\tforeach ($prev_svgstyle as $key => $val) {\n\t\t\t\tif (isset($attribs[$key])) {\n\t\t\t\t\tif ($attribs[$key] == 'inherit') {\n\t\t\t\t\t\t$svgstyle[$key] = $val;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$svgstyle[$key] = $attribs[$key];\n\t\t\t\t\t}\n\t\t\t\t} elseif (isset($attribs['style'])) {\n\t\t\t\t\t// CSS style syntax\n\t\t\t\t\t$attrval = array();\n\t\t\t\t\tif (preg_match('/[;\\\"\\s]{1}'.$key.'[\\s]*:[\\s]*([^;\\\"\\s]*)/si', $attribs['style'], $attrval) AND isset($attrval[1])) {\n\t\t\t\t\t\tif ($attrval[1] == 'inherit') {\n\t\t\t\t\t\t\t$svgstyle[$key] = $val;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$svgstyle[$key] = $attrval[1];\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// default value\n\t\t\t\t\t\t$svgstyle[$key] = $this->svgstyles[0][$key];\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif (in_array($key, $this->svginheritprop)) {\n\t\t\t\t\t\t// inherit previous value\n\t\t\t\t\t\t$svgstyle[$key] = $val;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// default value\n\t\t\t\t\t\t$svgstyle[$key] = $this->svgstyles[0][$key];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t// transformation matrix\n\t\t\t$tm = $this->svgstyles[(count($this->svgstyles) - 1)]['transfmatrix'];\n\t\t\tif (isset($attribs['transform']) AND !empty($attribs['transform'])) {\n\t\t\t\t$tm = $this->getTransformationMatrixProduct($tm, $this->getSVGTransformMatrix($attribs['transform']));\n\t\t\t}\n\t\t\t$svgstyle['transfmatrix'] = $tm;\n\t\t\t// process tag\n\t\t\tswitch($name) {\r\n\t\t\t\tcase 'defs': {\r\n\t\t\t\t\t$this->svgdefsmode = true;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\n\t\t\t\t// clipPath\n\t\t\t\tcase 'clipPath': {\n\t\t\t\t\t$this->svgclipmode = true;\n\t\t\t\t\t$this->svgclipid = $attribs['id'];\n\t\t\t\t\t$this->svgclippaths[$this->svgclipid] = array();\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'svg': {\r\n\t\t\t\t\t// start of SVG object\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t\tcase 'g': {\r\n\t\t\t\t\t// group together related graphics elements\r\n\t\t\t\t\tarray_push($this->svgstyles, $svgstyle);\n\t\t\t\t\t$this->StartTransform();\n\t\t\t\t\t$this->setSVGStyles($svgstyle, $prev_svgstyle);\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\n\t\t\t\tcase 'linearGradient': {\n\t\t\t\t\t$this->svggradientid = $attribs['id'];\n\t\t\t\t\t$this->svggradients[$this->svggradientid] = array();\n\t\t\t\t\t$this->svggradients[$this->svggradientid]['type'] = 2;\n\t\t\t\t\t$this->svggradients[$this->svggradientid]['stops'] = array();\n\t\t\t\t\tif (isset($attribs['gradientUnits'])) {\n\t\t\t\t\t\t$this->svggradients[$this->svggradientid]['gradientUnits'] = $attribs['gradientUnits'];\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->svggradients[$this->svggradientid]['gradientUnits'] = 'objectBoundingBox';\n\t\t\t\t\t}\n\t\t\t\t\t//$attribs['spreadMethod']\n\t\t\t\t\t$x1 = (isset($attribs['x1'])?$attribs['x1']:0);\n\t\t\t\t\t$y1 = (isset($attribs['y1'])?$attribs['y1']:0);\n\t\t\t\t\t$x2 = (isset($attribs['x2'])?$attribs['x2']:1);\n\t\t\t\t\t$y2 = (isset($attribs['y2'])?$attribs['y2']:0);\n\t\t\t\t\tif (isset($attribs['x1']) AND (substr($attribs['x1'], -1) != '%')) {\n\t\t\t\t\t\t$this->svggradients[$this->svggradientid]['mode'] = 'measure';\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->svggradients[$this->svggradientid]['mode'] = 'percentage';\n\t\t\t\t\t}\n\t\t\t\t\tif (isset($attribs['gradientTransform'])) {\n\t\t\t\t\t\t$this->svggradients[$this->svggradientid]['gradientTransform'] = $this->getSVGTransformMatrix($attribs['gradientTransform']);\n\t\t\t\t\t}\n\t\t\t\t\t$this->svggradients[$this->svggradientid]['coords'] = array($x1, $y1, $x2, $y2);\n\t\t\t\t\tif (isset($attribs['xlink:href']) AND !empty($attribs['xlink:href'])) {\n\t\t\t\t\t\t// gradient is defined on another place\n\t\t\t\t\t\t$this->svggradients[$this->svggradientid]['xref'] = substr($attribs['xlink:href'], 1);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'radialGradient': {\n\t\t\t\t\t$this->svggradientid = $attribs['id'];\n\t\t\t\t\t$this->svggradients[$this->svggradientid] = array();\n\t\t\t\t\t$this->svggradients[$this->svggradientid]['type'] = 3;\n\t\t\t\t\t$this->svggradients[$this->svggradientid]['stops'] = array();\n\t\t\t\t\tif (isset($attribs['gradientUnits'])) {\n\t\t\t\t\t\t$this->svggradients[$this->svggradientid]['gradientUnits'] = $attribs['gradientUnits'];\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->svggradients[$this->svggradientid]['gradientUnits'] = 'objectBoundingBox';\n\t\t\t\t\t}\n\t\t\t\t\t//$attribs['spreadMethod']\n\t\t\t\t\t$cx = (isset($attribs['cx'])?$attribs['cx']:0.5);\n\t\t\t\t\t$cy = (isset($attribs['cy'])?$attribs['cy']:0.5);\n\t\t\t\t\t$fx = (isset($attribs['fx'])?$attribs['fx']:$cx);\n\t\t\t\t\t$fy = (isset($attribs['fy'])?$attribs['fy']:$cy);\n\t\t\t\t\t$r = (isset($attribs['r'])?$attribs['r']:0.5);\n\t\t\t\t\tif (isset($attribs['cx']) AND (substr($attribs['cx'], -1) != '%')) {\n\t\t\t\t\t\t$this->svggradients[$this->svggradientid]['mode'] = 'measure';\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->svggradients[$this->svggradientid]['mode'] = 'percentage';\n\t\t\t\t\t}\n\t\t\t\t\tif (isset($attribs['gradientTransform'])) {\n\t\t\t\t\t\t$this->svggradients[$this->svggradientid]['gradientTransform'] = $this->getSVGTransformMatrix($attribs['gradientTransform']);\n\t\t\t\t\t}\n\t\t\t\t\t$this->svggradients[$this->svggradientid]['coords'] = array($cx, $cy, $fx, $fy, $r);\n\t\t\t\t\tif (isset($attribs['xlink:href']) AND !empty($attribs['xlink:href'])) {\n\t\t\t\t\t\t// gradient is defined on another place\n\t\t\t\t\t\t$this->svggradients[$this->svggradientid]['xref'] = substr($attribs['xlink:href'], 1);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'stop': {\n\t\t\t\t\t// gradient stops\n\t\t\t\t\tif (substr($attribs['offset'], -1) == '%') {\n\t\t\t\t\t\t$offset = floatval(substr($attribs['offset'], -1)) / 100;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$offset = floatval($attribs['offset']);\n\t\t\t\t\t\tif ($offset > 1) {\n\t\t\t\t\t\t\t$offset /= 100;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t$stop_color = isset($svgstyle['stop-color'])?$this->convertHTMLColorToDec($svgstyle['stop-color']):'black';\n\t\t\t\t\t$opacity = isset($svgstyle['stop-opacity'])?$svgstyle['stop-opacity']:1;\n\t\t\t\t\t$this->svggradients[$this->svggradientid]['stops'][] = array('offset' => $offset, 'color' => $stop_color, 'opacity' => $opacity);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t// paths\n\t\t\t\tcase 'path': {\n\t\t\t\t\t$d = trim($attribs['d']);\n\t\t\t\t\tif ($clipping) {\n\t\t\t\t\t\t$this->SVGTransform($tm);\n\t\t\t\t\t\t$this->SVGPath($d, 'CNZ');\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->StartTransform();\n\t\t\t\t\t\t$this->SVGTransform($tm);\n\t\t\t\t\t\t$obstyle = $this->setSVGStyles($svgstyle, $prev_svgstyle, 0, 0, 1, 1, 'SVGPath', array($d, 'CNZ'));\n\t\t\t\t\t\tif (!empty($obstyle)) {\n\t\t\t\t\t\t\t$this->SVGPath($d, $obstyle);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$this->StopTransform();\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t// shapes\n\t\t\t\tcase 'rect': {\n\t\t\t\t\t$x = (isset($attribs['x'])?$this->getHTMLUnitToUnits($attribs['x'], 0, $this->svgunit, false):0);\n\t\t\t\t\t$y = (isset($attribs['y'])?$this->getHTMLUnitToUnits($attribs['y'], 0, $this->svgunit, false):0);\n\t\t\t\t\t$w = (isset($attribs['width'])?$this->getHTMLUnitToUnits($attribs['width'], 0, $this->svgunit, false):0);\n\t\t\t\t\t$h = (isset($attribs['height'])?$this->getHTMLUnitToUnits($attribs['height'], 0, $this->svgunit, false):0);\n\t\t\t\t\t$rx = (isset($attribs['rx'])?$this->getHTMLUnitToUnits($attribs['rx'], 0, $this->svgunit, false):0);\n\t\t\t\t\t$ry = (isset($attribs['ry'])?$this->getHTMLUnitToUnits($attribs['ry'], 0, $this->svgunit, false):$rx);\n\t\t\t\t\tif ($clipping) {\n\t\t\t\t\t\t$this->SVGTransform($tm);\n\t\t\t\t\t\t$this->RoundedRectXY($x, $y, $w, $h, $rx, $ry, '1111', 'CNZ', array(), array());\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->StartTransform();\n\t\t\t\t\t\t$this->SVGTransform($tm);\n\t\t\t\t\t\t$obstyle = $this->setSVGStyles($svgstyle, $prev_svgstyle, $x, $y, $w, $h, 'RoundedRectXY', array($x, $y, $w, $h, $rx, $ry, '1111', 'CNZ'));\n\t\t\t\t\t\tif (!empty($obstyle)) {\n\t\t\t\t\t\t\t$this->RoundedRectXY($x, $y, $w, $h, $rx, $ry, '1111', $obstyle, array(), array());\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$this->StopTransform();\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'circle': {\n\t\t\t\t\t$cx = (isset($attribs['cx'])?$this->getHTMLUnitToUnits($attribs['cx'], 0, $this->svgunit, false):0);\n\t\t\t\t\t$cy = (isset($attribs['cy'])?$this->getHTMLUnitToUnits($attribs['cy'], 0, $this->svgunit, false):0);\n\t\t\t\t\t$r = (isset($attribs['r'])?$this->getHTMLUnitToUnits($attribs['r'], 0, $this->svgunit, false):0);\n\t\t\t\t\t$x = $cx - $r;\n\t\t\t\t\t$y = $cy - $r;\n\t\t\t\t\t$w = 2 * $r;\n\t\t\t\t\t$h = $w;\n\t\t\t\t\tif ($clipping) {\n\t\t\t\t\t\t$this->SVGTransform($tm);\n\t\t\t\t\t\t$this->Circle($cx, $cy, $r, 0, 360, 'CNZ', array(), array(), 8);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->StartTransform();\n\t\t\t\t\t\t$this->SVGTransform($tm);\n\t\t\t\t\t\t$obstyle = $this->setSVGStyles($svgstyle, $prev_svgstyle, $x, $y, $w, $h, 'Circle', array($cx, $cy, $r, 0, 360, 'CNZ'));\n\t\t\t\t\t\tif (!empty($obstyle)) {\n\t\t\t\t\t\t\t$this->Circle($cx, $cy, $r, 0, 360, $obstyle, array(), array(), 8);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$this->StopTransform();\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'ellipse': {\n\t\t\t\t\t$cx = (isset($attribs['cx'])?$this->getHTMLUnitToUnits($attribs['cx'], 0, $this->svgunit, false):0);\n\t\t\t\t\t$cy = (isset($attribs['cy'])?$this->getHTMLUnitToUnits($attribs['cy'], 0, $this->svgunit, false):0);\n\t\t\t\t\t$rx = (isset($attribs['rx'])?$this->getHTMLUnitToUnits($attribs['rx'], 0, $this->svgunit, false):0);\n\t\t\t\t\t$ry = (isset($attribs['ry'])?$this->getHTMLUnitToUnits($attribs['ry'], 0, $this->svgunit, false):0);\n\t\t\t\t\t$x = $cx - $rx;\n\t\t\t\t\t$y = $cy - $ry;\n\t\t\t\t\t$w = 2 * $rx;\n\t\t\t\t\t$h = 2 * $ry;\n\t\t\t\t\tif ($clipping) {\n\t\t\t\t\t\t$this->SVGTransform($tm);\n\t\t\t\t\t\t$this->Ellipse($cx, $cy, $rx, $ry, 0, 0, 360, 'CNZ', array(), array(), 8);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$this->StartTransform();\n\t\t\t\t\t\t$this->SVGTransform($tm);\n\t\t\t\t\t\t$obstyle = $this->setSVGStyles($svgstyle, $prev_svgstyle, $x, $y, $w, $h, 'Ellipse', array($cx, $cy, $rx, $ry, 0, 0, 360, 'CNZ'));\n\t\t\t\t\t\tif (!empty($obstyle)) {\n\t\t\t\t\t\t\t$this->Ellipse($cx, $cy, $rx, $ry, 0, 0, 360, $obstyle, array(), array(), 8);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$this->StopTransform();\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'line': {\n\t\t\t\t\t$x1 = (isset($attribs['x1'])?$this->getHTMLUnitToUnits($attribs['x1'], 0, $this->svgunit, false):0);\n\t\t\t\t\t$y1 = (isset($attribs['y1'])?$this->getHTMLUnitToUnits($attribs['y1'], 0, $this->svgunit, false):0);\n\t\t\t\t\t$x2 = (isset($attribs['x2'])?$this->getHTMLUnitToUnits($attribs['x2'], 0, $this->svgunit, false):0);\n\t\t\t\t\t$y2 = (isset($attribs['y2'])?$this->getHTMLUnitToUnits($attribs['y2'], 0, $this->svgunit, false):0);\n\t\t\t\t\t$x = $x1;\n\t\t\t\t\t$y = $y1;\n\t\t\t\t\t$w = abs($x2 - $x1);\n\t\t\t\t\t$h = abs($y2 - $y1);\n\t\t\t\t\tif (!$clipping) {\n\t\t\t\t\t\t$this->StartTransform();\n\t\t\t\t\t\t$this->SVGTransform($tm);\n\t\t\t\t\t\t$obstyle = $this->setSVGStyles($svgstyle, $prev_svgstyle, $x, $y, $w, $h, 'Line', array($x1, $y1, $x2, $y2));\n\t\t\t\t\t\t$this->Line($x1, $y1, $x2, $y2);\n\t\t\t\t\t\t$this->StopTransform();\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'polyline':\n\t\t\t\tcase 'polygon': {\n\t\t\t\t\t$points = (isset($attribs['points'])?$attribs['points']:'0 0');\n\t\t\t\t\t$points = trim($points);\n\t\t\t\t\t// note that point may use a complex syntax not covered here\n\t\t\t\t\t$points = preg_split('/[\\,\\s]+/si', $points);\n\t\t\t\t\tif (count($points) < 4) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\t$p = array();\n\t\t\t\t\t$xmin = 2147483647;\n\t\t\t\t\t$xmax = 0;\n\t\t\t\t\t$ymin = 2147483647;\n\t\t\t\t\t$ymax = 0;\n\t\t\t\t\tforeach ($points as $key => $val) {\n\t\t\t\t\t\t$p[$key] = $this->getHTMLUnitToUnits($val, 0, $this->svgunit, false);\n\t\t\t\t\t\tif (($key % 2) == 0) {\n\t\t\t\t\t\t\t// X coordinate\n\t\t\t\t\t\t\t$xmin = min($xmin, $p[$key]);\n\t\t\t\t\t\t\t$xmax = max($xmax, $p[$key]);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// Y coordinate\n\t\t\t\t\t\t\t$ymin = min($ymin, $p[$key]);\n\t\t\t\t\t\t\t$ymax = max($ymax, $p[$key]);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t$x = $xmin;\n\t\t\t\t\t$y = $ymin;\n\t\t\t\t\t$w = ($xmax - $xmin);\n\t\t\t\t\t$h = ($ymax - $ymin);\n\t\t\t\t\tif ($name == 'polyline') {\n\t\t\t\t\t\t$this->StartTransform();\n\t\t\t\t\t\t$this->SVGTransform($tm);\n\t\t\t\t\t\t$obstyle = $this->setSVGStyles($svgstyle, $prev_svgstyle, $x, $y, $w, $h, 'PolyLine', array($p, 'CNZ'));\n\t\t\t\t\t\t$this->PolyLine($p, 'D', array(), array());\n\t\t\t\t\t\t$this->StopTransform();\n\t\t\t\t\t} else { // polygon\n\t\t\t\t\t\tif ($clipping) {\n\t\t\t\t\t\t\t$this->SVGTransform($tm);\n\t\t\t\t\t\t\t$this->Polygon($p, 'CNZ', array(), array(), true);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$this->StartTransform();\n\t\t\t\t\t\t\t$this->SVGTransform($tm);\n\t\t\t\t\t\t\t$obstyle = $this->setSVGStyles($svgstyle, $prev_svgstyle, $x, $y, $w, $h, 'Polygon', array($p, 'CNZ'));\n\t\t\t\t\t\t\tif (!empty($obstyle)) {\n\t\t\t\t\t\t\t\t$this->Polygon($p, $obstyle, array(), array(), true);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t$this->StopTransform();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t// image\n\t\t\t\tcase 'image': {\n\t\t\t\t\tif (!isset($attribs['xlink:href']) OR empty($attribs['xlink:href'])) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\t$x = (isset($attribs['x'])?$this->getHTMLUnitToUnits($attribs['x'], 0, $this->svgunit, false):0);\n\t\t\t\t\t$y = (isset($attribs['y'])?$this->getHTMLUnitToUnits($attribs['y'], 0, $this->svgunit, false):0);\n\t\t\t\t\t$w = (isset($attribs['width'])?$this->getHTMLUnitToUnits($attribs['width'], 0, $this->svgunit, false):0);\n\t\t\t\t\t$h = (isset($attribs['height'])?$this->getHTMLUnitToUnits($attribs['height'], 0, $this->svgunit, false):0);\n\t\t\t\t\t$img = $attribs['xlink:href'];\n\t\t\t\t\tif (!$clipping) {\n\t\t\t\t\t\t$this->StartTransform();\n\t\t\t\t\t\t$this->SVGTransform($tm);\n\t\t\t\t\t\t$obstyle = $this->setSVGStyles($svgstyle, $prev_svgstyle, $x, $y, $w, $h);\n\t\t\t\t\t\t// fix image path\n\t\t\t\t\t\tif (!$this->empty_string($this->svgdir) AND (($img{0} == '.') OR (basename($img) == $img))) {\n\t\t\t\t\t\t\t// replace relative path with full server path\n\t\t\t\t\t\t\t$img = $this->svgdir.'/'.$img;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (($img{0} == '/') AND ($_SERVER['DOCUMENT_ROOT'] != '/')) {\n\t\t\t\t\t\t\t$findroot = strpos($img, $_SERVER['DOCUMENT_ROOT']);\n\t\t\t\t\t\t\tif (($findroot === false) OR ($findroot > 1)) {\n\t\t\t\t\t\t\t\t// replace relative path with full server path\n\t\t\t\t\t\t\t\t$img = $_SERVER['DOCUMENT_ROOT'].$img;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$img = urldecode($img);\n\t\t\t\t\t\t$testscrtype = @parse_url($img);\n\t\t\t\t\t\tif (!isset($testscrtype['query']) OR empty($testscrtype['query'])) {\n\t\t\t\t\t\t\t// convert URL to server path\n\t\t\t\t\t\t\t$img = str_replace(K_PATH_URL, K_PATH_MAIN, $img);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$this->Image($img, $x, $y, $w, $h);\n\t\t\t\t\t\t$this->StopTransform();\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t// text\n\t\t\t\tcase 'text':\n\t\t\t\tcase 'tspan': {\n\t\t\t\t\t// only basic support - advanced features must be implemented\n\t\t\t\t\t$x = (isset($attribs['x'])?$this->getHTMLUnitToUnits($attribs['x'], 0, $this->svgunit, false):0);\n\t\t\t\t\t$y = (isset($attribs['y'])?$this->getHTMLUnitToUnits($attribs['y'], 0, $this->svgunit, false):0);\n\t\t\t\t\t$svgstyle['text-color'] = $svgstyle['fill'];\n\t\t\t\t\t$this->svgtext = '';\n\t\t\t\t\t$this->StartTransform();\n\t\t\t\t\t$this->SVGTransform($tm);\n\t\t\t\t\t$obstyle = $this->setSVGStyles($svgstyle, $prev_svgstyle, $x, $y, 1, 1);\n\t\t\t\t\t$this->SetXY($x, $y, true);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\t// use\n\t\t\t\tcase 'use': {\n\t\t\t\t\tif (isset($attribs['xlink:href'])) {\n\t\t\t\t\t\t$use = $this->svgdefs[substr($attribs['xlink:href'], 1)];\n\t\t\t\t\t\tif (isset($attribs['xlink:href'])) {\n\t\t\t\t\t\t\tunset($attribs['xlink:href']);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (isset($attribs['id'])) {\n\t\t\t\t\t\t\tunset($attribs['id']);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$attribs = array_merge($use['attribs'], $attribs);\n\t\t\t\t\t\t$this->startSVGElementHandler($parser, $use['name'], $use['attribs']);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\t}\r\n\t\t\t\tdefault: {\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * Sets the closing SVG element handler function for the XML parser.\r\n\t\t * @param resource $parser The first parameter, parser, is a reference to the XML parser calling the handler.\r\n\t\t * @param string $name The second parameter, name, contains the name of the element for which this handler is called. If case-folding is in effect for this parser, the element name will be in uppercase letters. \r\n\t\t * @author Nicola Asuni\n\t\t * @since 5.0.000 (2010-05-02)\n\t\t * @access protected\r\n\t\t */\r\n\t\tprotected function endSVGElementHandler($parser, $name) {\r\n\t\t\tswitch($name) {\n\t\t\t\tcase 'defs': {\r\n\t\t\t\t\t$this->svgdefsmode = false;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\n\t\t\t\t// clipPath\n\t\t\t\tcase 'clipPath': {\n\t\t\t\t\t$this->svgclipmode = false;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tcase 'g': {\n\t\t\t\t\t// ungroup: remove last style from array\r\n\t\t\t\t\tarray_pop($this->svgstyles);\n\t\t\t\t\t$this->StopTransform();\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\n\t\t\t\tcase 'text':\n\t\t\t\tcase 'tspan': {\r\n\t\t\t\t\t// print text\n\t\t\t\t\t$this->Cell(0, 0, trim($this->svgtext), 0, 0, '', 0, '', 0, false, 'L', 'T');\n\t\t\t\t\t$this->StopTransform();\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t\tdefault: {\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\n\r\n\t\t/**\r\n\t\t * Sets the character data handler function for the XML parser.\r\n\t\t * @param resource $parser The first parameter, parser, is a reference to the XML parser calling the handler.\r\n\t\t * @param string $data The second parameter, data, contains the character data as a string. \r\n\t\t * @author Nicola Asuni\n\t\t * @since 5.0.000 (2010-05-02)\n\t\t * @access protected\r\n\t\t */\r\n\t\tprotected function segSVGContentHandler($parser, $data) {\r\n\t\t\t$this->svgtext .= $data;\r\n\t\t}\n\n\t} // END OF TCPDF CLASS\n}\n//============================================================+\n// END OF FILE\n//============================================================+\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/_tcpdf_5.0.002/unicode_data.php",
    "content": "<?php\n//============================================================+\n// File name   : unicode_data.php\n// Begin       : 2008-01-01\n// Last Update : 2009-08-17\n// License     : GNU LGPL (http://www.gnu.org/copyleft/lesser.html)\n// \t----------------------------------------------------------------------------\n//  Copyright (C) 2002-2009  Nicola Asuni - Tecnick.com S.r.l.\n// \t\n// \tThis program is free software: you can redistribute it and/or modify\n// \tit under the terms of the GNU Lesser General Public License as published by\n// \tthe Free Software Foundation, either version 2.1 of the License, or\n// \t(at your option) any later version.\n// \t\n// \tThis program is distributed in the hope that it will be useful,\n// \tbut WITHOUT ANY WARRANTY; without even the implied warranty of\n// \tMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n// \tGNU Lesser General Public License for more details.\n// \t\n// \tYou should have received a copy of the GNU Lesser General Public License\n// \talong with this program.  If not, see <http://www.gnu.org/licenses/>.\n// \t\n// \tSee LICENSE.TXT file for more information.\n//  ----------------------------------------------------------------------------\n//\n// Description : Unicode Include file for TCPDF.\n//\n// Author: Nicola Asuni\n//\n// (c) Copyright:\n//               Nicola Asuni\n//               Tecnick.com s.r.l.\n//               Via Della Pace, 11\n//               09044 Quartucciu (CA)\n//               ITALY\n//               www.tecnick.com\n//               info@tecnick.com\n//============================================================+\n// THANKS TO\n// Efthimios Mavrogeorgiadis\n// Saleh AlMatrafe\n\n/**\n * Unicode Include file for TCPDF.\n * @author Nicola Asuni\n * @copyright 2004-2009 Nicola Asuni - Tecnick.com S.r.l (www.tecnick.com) Via Della Pace, 11 - 09044 - Quartucciu (CA) - ITALY - www.tecnick.com - info@tecnick.com\n * @package com.tecnick.tcpdf\n * @link http://www.tcpdf.org\n * @license http://www.gnu.org/copyleft/lesser.html LGPL\n * @since 2.1.000 (2008-01-08)\n*/\n\n/**\n* Left-to-Right Mark\n*/\ndefine('K_LRM', 8206);\n/**\n* Right-to-Left Mark\n*/\ndefine('K_RLM', 8207);\n/**\n* Left-to-Right Embedding\n*/\ndefine('K_LRE', 8234);\n/**\n* Right-to-Left Embedding\n*/\ndefine('K_RLE', 8235);\n/**\n* Pop Directional Format\n*/\ndefine('K_PDF', 8236);\n/**\n* Left-to-Right Override\n*/\ndefine('K_LRO', 8237);\n/**\n* Right-to-Left Override\n*/\ndefine('K_RLO', 8238);\n\n/*\n * Pattern to test RTL (Righ-To-Left) strings using regular expressions.\n */\ndefine('K_RE_PATTERN_RTL', \"/(\n\t  \\xD6\\xBE                                             # R\n\t| \\xD7[\\x80\\x83\\x86\\x90-\\xAA\\xB0-\\xB4]                 # R\n\t| \\xDF[\\x80-\\xAA\\xB4\\xB5\\xBA]                          # R\n\t| \\xE2\\x80\\x8F                                         # R\n\t| \\xEF\\xAC[\\x9D\\x9F\\xA0-\\xA8\\xAA-\\xB6\\xB8-\\xBC\\xBE]    # R\n\t| \\xEF\\xAD[\\x80\\x81\\x83\\x84\\x86-\\x8F]                  # R\n\t| \\xF0\\x90\\xA0[\\x80-\\x85\\x88\\x8A-\\xB5\\xB7\\xB8\\xBC\\xBF] # R\n\t| \\xF0\\x90\\xA4[\\x80-\\x99]                              # R\n\t| \\xF0\\x90\\xA8[\\x80\\x90-\\x93\\x95-\\x97\\x99-\\xB3]        # R\n\t| \\xF0\\x90\\xA9[\\x80-\\x87\\x90-\\x98]                     # R\n\t| \\xE2\\x80[\\xAB\\xAE]                                   # RLE & RLO\n\t)/x\");\n\n/*\n * Pattern to test Arabic strings using regular expressions.\n * source: http://www.w3.org/International/questions/qa-forms-utf-8\n */\ndefine(\"K_RE_PATTERN_ARABIC\", \"/(\n\t\t  \\xD8[\\x80-\\x83\\x8B\\x8D\\x9B\\x9E\\x9F\\xA1-\\xBA]  # AL\n\t\t| \\xD9[\\x80-\\x8A\\xAD-\\xAF\\xB1-\\xBF]             # AL\n\t\t| \\xDA[\\x80-\\xBF]                               # AL\n\t\t| \\xDB[\\x80-\\x95\\x9D\\xA5\\xA6\\xAE\\xAF\\xBA-\\xBF]  # AL\n\t\t| \\xDC[\\x80-\\x8D\\x90\\x92-\\xAF]                  # AL\n\t\t| \\xDD[\\x8D-\\xAD]                               # AL\n\t\t| \\xDE[\\x80-\\xA5\\xB1]                           # AL\n\t\t| \\xEF\\xAD[\\x90-\\xBF]                           # AL\n\t\t| \\xEF\\xAE[\\x80-\\xB1]                           # AL\n\t\t| \\xEF\\xAF[\\x93-\\xBF]                           # AL\n\t\t| \\xEF[\\xB0-\\xB3][\\x80-\\xBF]                    # AL\n\t\t| \\xEF\\xB4[\\x80-\\xBD]                           # AL\n\t\t| \\xEF\\xB5[\\x90-\\xBF]                           # AL\n\t\t| \\xEF\\xB6[\\x80-\\x8F\\x92-\\xBF]                  # AL\n\t\t| \\xEF\\xB7[\\x80-\\x87\\xB0-\\xBC]                  # AL\n\t\t| \\xEF\\xB9[\\xB0-\\xB4\\xB6-\\xBF]                  # AL\n\t\t| \\xEF\\xBA[\\x80-\\xBF]                           # AL\n\t\t| \\xEF\\xBB[\\x80-\\xBC]                           # AL\n\t\t| \\xD9[\\xA0-\\xA9\\xAB\\xAC]                       # AN\n\t\t)/x\");\n\n/**\n * Array of unicode types\n */\nglobal $unicode;\n$unicode = array(\n0=>'BN',\n1=>'BN',\n2=>'BN',\n3=>'BN',\n4=>'BN',\n5=>'BN',\n6=>'BN',\n7=>'BN',\n8=>'BN',\n9=>'S',\n10=>'B',\n11=>'S',\n12=>'WS',\n13=>'B',\n14=>'BN',\n15=>'BN',\n16=>'BN',\n17=>'BN',\n18=>'BN',\n19=>'BN',\n20=>'BN',\n21=>'BN',\n22=>'BN',\n23=>'BN',\n24=>'BN',\n25=>'BN',\n26=>'BN',\n27=>'BN',\n28=>'B',\n29=>'B',\n30=>'B',\n31=>'S',\n32=>'WS',\n33=>'ON',\n34=>'ON',\n35=>'ET',\n36=>'ET',\n37=>'ET',\n38=>'ON',\n39=>'ON',\n40=>'ON',\n41=>'ON',\n42=>'ON',\n43=>'ES',\n44=>'CS',\n45=>'ES',\n46=>'CS',\n47=>'CS',\n48=>'EN',\n49=>'EN',\n50=>'EN',\n51=>'EN',\n52=>'EN',\n53=>'EN',\n54=>'EN',\n55=>'EN',\n56=>'EN',\n57=>'EN',\n58=>'CS',\n59=>'ON',\n60=>'ON',\n61=>'ON',\n62=>'ON',\n63=>'ON',\n64=>'ON',\n65=>'L',\n66=>'L',\n67=>'L',\n68=>'L',\n69=>'L',\n70=>'L',\n71=>'L',\n72=>'L',\n73=>'L',\n74=>'L',\n75=>'L',\n76=>'L',\n77=>'L',\n78=>'L',\n79=>'L',\n80=>'L',\n81=>'L',\n82=>'L',\n83=>'L',\n84=>'L',\n85=>'L',\n86=>'L',\n87=>'L',\n88=>'L',\n89=>'L',\n90=>'L',\n91=>'ON',\n92=>'ON',\n93=>'ON',\n94=>'ON',\n95=>'ON',\n96=>'ON',\n97=>'L',\n98=>'L',\n99=>'L',\n100=>'L',\n101=>'L',\n102=>'L',\n103=>'L',\n104=>'L',\n105=>'L',\n106=>'L',\n107=>'L',\n108=>'L',\n109=>'L',\n110=>'L',\n111=>'L',\n112=>'L',\n113=>'L',\n114=>'L',\n115=>'L',\n116=>'L',\n117=>'L',\n118=>'L',\n119=>'L',\n120=>'L',\n121=>'L',\n122=>'L',\n123=>'ON',\n124=>'ON',\n125=>'ON',\n126=>'ON',\n127=>'BN',\n128=>'BN',\n129=>'BN',\n130=>'BN',\n131=>'BN',\n132=>'BN',\n133=>'B',\n134=>'BN',\n135=>'BN',\n136=>'BN',\n137=>'BN',\n138=>'BN',\n139=>'BN',\n140=>'BN',\n141=>'BN',\n142=>'BN',\n143=>'BN',\n144=>'BN',\n145=>'BN',\n146=>'BN',\n147=>'BN',\n148=>'BN',\n149=>'BN',\n150=>'BN',\n151=>'BN',\n152=>'BN',\n153=>'BN',\n154=>'BN',\n155=>'BN',\n156=>'BN',\n157=>'BN',\n158=>'BN',\n159=>'BN',\n160=>'CS',\n161=>'ON',\n162=>'ET',\n163=>'ET',\n164=>'ET',\n165=>'ET',\n166=>'ON',\n167=>'ON',\n168=>'ON',\n169=>'ON',\n170=>'L',\n171=>'ON',\n172=>'ON',\n173=>'BN',\n174=>'ON',\n175=>'ON',\n176=>'ET',\n177=>'ET',\n178=>'EN',\n179=>'EN',\n180=>'ON',\n181=>'L',\n182=>'ON',\n183=>'ON',\n184=>'ON',\n185=>'EN',\n186=>'L',\n187=>'ON',\n188=>'ON',\n189=>'ON',\n190=>'ON',\n191=>'ON',\n192=>'L',\n193=>'L',\n194=>'L',\n195=>'L',\n196=>'L',\n197=>'L',\n198=>'L',\n199=>'L',\n200=>'L',\n201=>'L',\n202=>'L',\n203=>'L',\n204=>'L',\n205=>'L',\n206=>'L',\n207=>'L',\n208=>'L',\n209=>'L',\n210=>'L',\n211=>'L',\n212=>'L',\n213=>'L',\n214=>'L',\n215=>'ON',\n216=>'L',\n217=>'L',\n218=>'L',\n219=>'L',\n220=>'L',\n221=>'L',\n222=>'L',\n223=>'L',\n224=>'L',\n225=>'L',\n226=>'L',\n227=>'L',\n228=>'L',\n229=>'L',\n230=>'L',\n231=>'L',\n232=>'L',\n233=>'L',\n234=>'L',\n235=>'L',\n236=>'L',\n237=>'L',\n238=>'L',\n239=>'L',\n240=>'L',\n241=>'L',\n242=>'L',\n243=>'L',\n244=>'L',\n245=>'L',\n246=>'L',\n247=>'ON',\n248=>'L',\n249=>'L',\n250=>'L',\n251=>'L',\n252=>'L',\n253=>'L',\n254=>'L',\n255=>'L',\n256=>'L',\n257=>'L',\n258=>'L',\n259=>'L',\n260=>'L',\n261=>'L',\n262=>'L',\n263=>'L',\n264=>'L',\n265=>'L',\n266=>'L',\n267=>'L',\n268=>'L',\n269=>'L',\n270=>'L',\n271=>'L',\n272=>'L',\n273=>'L',\n274=>'L',\n275=>'L',\n276=>'L',\n277=>'L',\n278=>'L',\n279=>'L',\n280=>'L',\n281=>'L',\n282=>'L',\n283=>'L',\n284=>'L',\n285=>'L',\n286=>'L',\n287=>'L',\n288=>'L',\n289=>'L',\n290=>'L',\n291=>'L',\n292=>'L',\n293=>'L',\n294=>'L',\n295=>'L',\n296=>'L',\n297=>'L',\n298=>'L',\n299=>'L',\n300=>'L',\n301=>'L',\n302=>'L',\n303=>'L',\n304=>'L',\n305=>'L',\n306=>'L',\n307=>'L',\n308=>'L',\n309=>'L',\n310=>'L',\n311=>'L',\n312=>'L',\n313=>'L',\n314=>'L',\n315=>'L',\n316=>'L',\n317=>'L',\n318=>'L',\n319=>'L',\n320=>'L',\n321=>'L',\n322=>'L',\n323=>'L',\n324=>'L',\n325=>'L',\n326=>'L',\n327=>'L',\n328=>'L',\n329=>'L',\n330=>'L',\n331=>'L',\n332=>'L',\n333=>'L',\n334=>'L',\n335=>'L',\n336=>'L',\n337=>'L',\n338=>'L',\n339=>'L',\n340=>'L',\n341=>'L',\n342=>'L',\n343=>'L',\n344=>'L',\n345=>'L',\n346=>'L',\n347=>'L',\n348=>'L',\n349=>'L',\n350=>'L',\n351=>'L',\n352=>'L',\n353=>'L',\n354=>'L',\n355=>'L',\n356=>'L',\n357=>'L',\n358=>'L',\n359=>'L',\n360=>'L',\n361=>'L',\n362=>'L',\n363=>'L',\n364=>'L',\n365=>'L',\n366=>'L',\n367=>'L',\n368=>'L',\n369=>'L',\n370=>'L',\n371=>'L',\n372=>'L',\n373=>'L',\n374=>'L',\n375=>'L',\n376=>'L',\n377=>'L',\n378=>'L',\n379=>'L',\n380=>'L',\n381=>'L',\n382=>'L',\n383=>'L',\n384=>'L',\n385=>'L',\n386=>'L',\n387=>'L',\n388=>'L',\n389=>'L',\n390=>'L',\n391=>'L',\n392=>'L',\n393=>'L',\n394=>'L',\n395=>'L',\n396=>'L',\n397=>'L',\n398=>'L',\n399=>'L',\n400=>'L',\n401=>'L',\n402=>'L',\n403=>'L',\n404=>'L',\n405=>'L',\n406=>'L',\n407=>'L',\n408=>'L',\n409=>'L',\n410=>'L',\n411=>'L',\n412=>'L',\n413=>'L',\n414=>'L',\n415=>'L',\n416=>'L',\n417=>'L',\n418=>'L',\n419=>'L',\n420=>'L',\n421=>'L',\n422=>'L',\n423=>'L',\n424=>'L',\n425=>'L',\n426=>'L',\n427=>'L',\n428=>'L',\n429=>'L',\n430=>'L',\n431=>'L',\n432=>'L',\n433=>'L',\n434=>'L',\n435=>'L',\n436=>'L',\n437=>'L',\n438=>'L',\n439=>'L',\n440=>'L',\n441=>'L',\n442=>'L',\n443=>'L',\n444=>'L',\n445=>'L',\n446=>'L',\n447=>'L',\n448=>'L',\n449=>'L',\n450=>'L',\n451=>'L',\n452=>'L',\n453=>'L',\n454=>'L',\n455=>'L',\n456=>'L',\n457=>'L',\n458=>'L',\n459=>'L',\n460=>'L',\n461=>'L',\n462=>'L',\n463=>'L',\n464=>'L',\n465=>'L',\n466=>'L',\n467=>'L',\n468=>'L',\n469=>'L',\n470=>'L',\n471=>'L',\n472=>'L',\n473=>'L',\n474=>'L',\n475=>'L',\n476=>'L',\n477=>'L',\n478=>'L',\n479=>'L',\n480=>'L',\n481=>'L',\n482=>'L',\n483=>'L',\n484=>'L',\n485=>'L',\n486=>'L',\n487=>'L',\n488=>'L',\n489=>'L',\n490=>'L',\n491=>'L',\n492=>'L',\n493=>'L',\n494=>'L',\n495=>'L',\n496=>'L',\n497=>'L',\n498=>'L',\n499=>'L',\n500=>'L',\n501=>'L',\n502=>'L',\n503=>'L',\n504=>'L',\n505=>'L',\n506=>'L',\n507=>'L',\n508=>'L',\n509=>'L',\n510=>'L',\n511=>'L',\n512=>'L',\n513=>'L',\n514=>'L',\n515=>'L',\n516=>'L',\n517=>'L',\n518=>'L',\n519=>'L',\n520=>'L',\n521=>'L',\n522=>'L',\n523=>'L',\n524=>'L',\n525=>'L',\n526=>'L',\n527=>'L',\n528=>'L',\n529=>'L',\n530=>'L',\n531=>'L',\n532=>'L',\n533=>'L',\n534=>'L',\n535=>'L',\n536=>'L',\n537=>'L',\n538=>'L',\n539=>'L',\n540=>'L',\n541=>'L',\n542=>'L',\n543=>'L',\n544=>'L',\n545=>'L',\n546=>'L',\n547=>'L',\n548=>'L',\n549=>'L',\n550=>'L',\n551=>'L',\n552=>'L',\n553=>'L',\n554=>'L',\n555=>'L',\n556=>'L',\n557=>'L',\n558=>'L',\n559=>'L',\n560=>'L',\n561=>'L',\n562=>'L',\n563=>'L',\n564=>'L',\n565=>'L',\n566=>'L',\n567=>'L',\n568=>'L',\n569=>'L',\n570=>'L',\n571=>'L',\n572=>'L',\n573=>'L',\n574=>'L',\n575=>'L',\n576=>'L',\n577=>'L',\n578=>'L',\n579=>'L',\n580=>'L',\n581=>'L',\n582=>'L',\n583=>'L',\n584=>'L',\n585=>'L',\n586=>'L',\n587=>'L',\n588=>'L',\n589=>'L',\n590=>'L',\n591=>'L',\n592=>'L',\n593=>'L',\n594=>'L',\n595=>'L',\n596=>'L',\n597=>'L',\n598=>'L',\n599=>'L',\n600=>'L',\n601=>'L',\n602=>'L',\n603=>'L',\n604=>'L',\n605=>'L',\n606=>'L',\n607=>'L',\n608=>'L',\n609=>'L',\n610=>'L',\n611=>'L',\n612=>'L',\n613=>'L',\n614=>'L',\n615=>'L',\n616=>'L',\n617=>'L',\n618=>'L',\n619=>'L',\n620=>'L',\n621=>'L',\n622=>'L',\n623=>'L',\n624=>'L',\n625=>'L',\n626=>'L',\n627=>'L',\n628=>'L',\n629=>'L',\n630=>'L',\n631=>'L',\n632=>'L',\n633=>'L',\n634=>'L',\n635=>'L',\n636=>'L',\n637=>'L',\n638=>'L',\n639=>'L',\n640=>'L',\n641=>'L',\n642=>'L',\n643=>'L',\n644=>'L',\n645=>'L',\n646=>'L',\n647=>'L',\n648=>'L',\n649=>'L',\n650=>'L',\n651=>'L',\n652=>'L',\n653=>'L',\n654=>'L',\n655=>'L',\n656=>'L',\n657=>'L',\n658=>'L',\n659=>'L',\n660=>'L',\n661=>'L',\n662=>'L',\n663=>'L',\n664=>'L',\n665=>'L',\n666=>'L',\n667=>'L',\n668=>'L',\n669=>'L',\n670=>'L',\n671=>'L',\n672=>'L',\n673=>'L',\n674=>'L',\n675=>'L',\n676=>'L',\n677=>'L',\n678=>'L',\n679=>'L',\n680=>'L',\n681=>'L',\n682=>'L',\n683=>'L',\n684=>'L',\n685=>'L',\n686=>'L',\n687=>'L',\n688=>'L',\n689=>'L',\n690=>'L',\n691=>'L',\n692=>'L',\n693=>'L',\n694=>'L',\n695=>'L',\n696=>'L',\n697=>'ON',\n698=>'ON',\n699=>'L',\n700=>'L',\n701=>'L',\n702=>'L',\n703=>'L',\n704=>'L',\n705=>'L',\n706=>'ON',\n707=>'ON',\n708=>'ON',\n709=>'ON',\n710=>'ON',\n711=>'ON',\n712=>'ON',\n713=>'ON',\n714=>'ON',\n715=>'ON',\n716=>'ON',\n717=>'ON',\n718=>'ON',\n719=>'ON',\n720=>'L',\n721=>'L',\n722=>'ON',\n723=>'ON',\n724=>'ON',\n725=>'ON',\n726=>'ON',\n727=>'ON',\n728=>'ON',\n729=>'ON',\n730=>'ON',\n731=>'ON',\n732=>'ON',\n733=>'ON',\n734=>'ON',\n735=>'ON',\n736=>'L',\n737=>'L',\n738=>'L',\n739=>'L',\n740=>'L',\n741=>'ON',\n742=>'ON',\n743=>'ON',\n744=>'ON',\n745=>'ON',\n746=>'ON',\n747=>'ON',\n748=>'ON',\n749=>'ON',\n750=>'L',\n751=>'ON',\n752=>'ON',\n753=>'ON',\n754=>'ON',\n755=>'ON',\n756=>'ON',\n757=>'ON',\n758=>'ON',\n759=>'ON',\n760=>'ON',\n761=>'ON',\n762=>'ON',\n763=>'ON',\n764=>'ON',\n765=>'ON',\n766=>'ON',\n767=>'ON',\n768=>'NSM',\n769=>'NSM',\n770=>'NSM',\n771=>'NSM',\n772=>'NSM',\n773=>'NSM',\n774=>'NSM',\n775=>'NSM',\n776=>'NSM',\n777=>'NSM',\n778=>'NSM',\n779=>'NSM',\n780=>'NSM',\n781=>'NSM',\n782=>'NSM',\n783=>'NSM',\n784=>'NSM',\n785=>'NSM',\n786=>'NSM',\n787=>'NSM',\n788=>'NSM',\n789=>'NSM',\n790=>'NSM',\n791=>'NSM',\n792=>'NSM',\n793=>'NSM',\n794=>'NSM',\n795=>'NSM',\n796=>'NSM',\n797=>'NSM',\n798=>'NSM',\n799=>'NSM',\n800=>'NSM',\n801=>'NSM',\n802=>'NSM',\n803=>'NSM',\n804=>'NSM',\n805=>'NSM',\n806=>'NSM',\n807=>'NSM',\n808=>'NSM',\n809=>'NSM',\n810=>'NSM',\n811=>'NSM',\n812=>'NSM',\n813=>'NSM',\n814=>'NSM',\n815=>'NSM',\n816=>'NSM',\n817=>'NSM',\n818=>'NSM',\n819=>'NSM',\n820=>'NSM',\n821=>'NSM',\n822=>'NSM',\n823=>'NSM',\n824=>'NSM',\n825=>'NSM',\n826=>'NSM',\n827=>'NSM',\n828=>'NSM',\n829=>'NSM',\n830=>'NSM',\n831=>'NSM',\n832=>'NSM',\n833=>'NSM',\n834=>'NSM',\n835=>'NSM',\n836=>'NSM',\n837=>'NSM',\n838=>'NSM',\n839=>'NSM',\n840=>'NSM',\n841=>'NSM',\n842=>'NSM',\n843=>'NSM',\n844=>'NSM',\n845=>'NSM',\n846=>'NSM',\n847=>'NSM',\n848=>'NSM',\n849=>'NSM',\n850=>'NSM',\n851=>'NSM',\n852=>'NSM',\n853=>'NSM',\n854=>'NSM',\n855=>'NSM',\n856=>'NSM',\n857=>'NSM',\n858=>'NSM',\n859=>'NSM',\n860=>'NSM',\n861=>'NSM',\n862=>'NSM',\n863=>'NSM',\n864=>'NSM',\n865=>'NSM',\n866=>'NSM',\n867=>'NSM',\n868=>'NSM',\n869=>'NSM',\n870=>'NSM',\n871=>'NSM',\n872=>'NSM',\n873=>'NSM',\n874=>'NSM',\n875=>'NSM',\n876=>'NSM',\n877=>'NSM',\n878=>'NSM',\n879=>'NSM',\n884=>'ON',\n885=>'ON',\n890=>'L',\n891=>'L',\n892=>'L',\n893=>'L',\n894=>'ON',\n900=>'ON',\n901=>'ON',\n902=>'L',\n903=>'ON',\n904=>'L',\n905=>'L',\n906=>'L',\n908=>'L',\n910=>'L',\n911=>'L',\n912=>'L',\n913=>'L',\n914=>'L',\n915=>'L',\n916=>'L',\n917=>'L',\n918=>'L',\n919=>'L',\n920=>'L',\n921=>'L',\n922=>'L',\n923=>'L',\n924=>'L',\n925=>'L',\n926=>'L',\n927=>'L',\n928=>'L',\n929=>'L',\n931=>'L',\n932=>'L',\n933=>'L',\n934=>'L',\n935=>'L',\n936=>'L',\n937=>'L',\n938=>'L',\n939=>'L',\n940=>'L',\n941=>'L',\n942=>'L',\n943=>'L',\n944=>'L',\n945=>'L',\n946=>'L',\n947=>'L',\n948=>'L',\n949=>'L',\n950=>'L',\n951=>'L',\n952=>'L',\n953=>'L',\n954=>'L',\n955=>'L',\n956=>'L',\n957=>'L',\n958=>'L',\n959=>'L',\n960=>'L',\n961=>'L',\n962=>'L',\n963=>'L',\n964=>'L',\n965=>'L',\n966=>'L',\n967=>'L',\n968=>'L',\n969=>'L',\n970=>'L',\n971=>'L',\n972=>'L',\n973=>'L',\n974=>'L',\n976=>'L',\n977=>'L',\n978=>'L',\n979=>'L',\n980=>'L',\n981=>'L',\n982=>'L',\n983=>'L',\n984=>'L',\n985=>'L',\n986=>'L',\n987=>'L',\n988=>'L',\n989=>'L',\n990=>'L',\n991=>'L',\n992=>'L',\n993=>'L',\n994=>'L',\n995=>'L',\n996=>'L',\n997=>'L',\n998=>'L',\n999=>'L',\n1000=>'L',\n1001=>'L',\n1002=>'L',\n1003=>'L',\n1004=>'L',\n1005=>'L',\n1006=>'L',\n1007=>'L',\n1008=>'L',\n1009=>'L',\n1010=>'L',\n1011=>'L',\n1012=>'L',\n1013=>'L',\n1014=>'ON',\n1015=>'L',\n1016=>'L',\n1017=>'L',\n1018=>'L',\n1019=>'L',\n1020=>'L',\n1021=>'L',\n1022=>'L',\n1023=>'L',\n1024=>'L',\n1025=>'L',\n1026=>'L',\n1027=>'L',\n1028=>'L',\n1029=>'L',\n1030=>'L',\n1031=>'L',\n1032=>'L',\n1033=>'L',\n1034=>'L',\n1035=>'L',\n1036=>'L',\n1037=>'L',\n1038=>'L',\n1039=>'L',\n1040=>'L',\n1041=>'L',\n1042=>'L',\n1043=>'L',\n1044=>'L',\n1045=>'L',\n1046=>'L',\n1047=>'L',\n1048=>'L',\n1049=>'L',\n1050=>'L',\n1051=>'L',\n1052=>'L',\n1053=>'L',\n1054=>'L',\n1055=>'L',\n1056=>'L',\n1057=>'L',\n1058=>'L',\n1059=>'L',\n1060=>'L',\n1061=>'L',\n1062=>'L',\n1063=>'L',\n1064=>'L',\n1065=>'L',\n1066=>'L',\n1067=>'L',\n1068=>'L',\n1069=>'L',\n1070=>'L',\n1071=>'L',\n1072=>'L',\n1073=>'L',\n1074=>'L',\n1075=>'L',\n1076=>'L',\n1077=>'L',\n1078=>'L',\n1079=>'L',\n1080=>'L',\n1081=>'L',\n1082=>'L',\n1083=>'L',\n1084=>'L',\n1085=>'L',\n1086=>'L',\n1087=>'L',\n1088=>'L',\n1089=>'L',\n1090=>'L',\n1091=>'L',\n1092=>'L',\n1093=>'L',\n1094=>'L',\n1095=>'L',\n1096=>'L',\n1097=>'L',\n1098=>'L',\n1099=>'L',\n1100=>'L',\n1101=>'L',\n1102=>'L',\n1103=>'L',\n1104=>'L',\n1105=>'L',\n1106=>'L',\n1107=>'L',\n1108=>'L',\n1109=>'L',\n1110=>'L',\n1111=>'L',\n1112=>'L',\n1113=>'L',\n1114=>'L',\n1115=>'L',\n1116=>'L',\n1117=>'L',\n1118=>'L',\n1119=>'L',\n1120=>'L',\n1121=>'L',\n1122=>'L',\n1123=>'L',\n1124=>'L',\n1125=>'L',\n1126=>'L',\n1127=>'L',\n1128=>'L',\n1129=>'L',\n1130=>'L',\n1131=>'L',\n1132=>'L',\n1133=>'L',\n1134=>'L',\n1135=>'L',\n1136=>'L',\n1137=>'L',\n1138=>'L',\n1139=>'L',\n1140=>'L',\n1141=>'L',\n1142=>'L',\n1143=>'L',\n1144=>'L',\n1145=>'L',\n1146=>'L',\n1147=>'L',\n1148=>'L',\n1149=>'L',\n1150=>'L',\n1151=>'L',\n1152=>'L',\n1153=>'L',\n1154=>'L',\n1155=>'NSM',\n1156=>'NSM',\n1157=>'NSM',\n1158=>'NSM',\n1160=>'NSM',\n1161=>'NSM',\n1162=>'L',\n1163=>'L',\n1164=>'L',\n1165=>'L',\n1166=>'L',\n1167=>'L',\n1168=>'L',\n1169=>'L',\n1170=>'L',\n1171=>'L',\n1172=>'L',\n1173=>'L',\n1174=>'L',\n1175=>'L',\n1176=>'L',\n1177=>'L',\n1178=>'L',\n1179=>'L',\n1180=>'L',\n1181=>'L',\n1182=>'L',\n1183=>'L',\n1184=>'L',\n1185=>'L',\n1186=>'L',\n1187=>'L',\n1188=>'L',\n1189=>'L',\n1190=>'L',\n1191=>'L',\n1192=>'L',\n1193=>'L',\n1194=>'L',\n1195=>'L',\n1196=>'L',\n1197=>'L',\n1198=>'L',\n1199=>'L',\n1200=>'L',\n1201=>'L',\n1202=>'L',\n1203=>'L',\n1204=>'L',\n1205=>'L',\n1206=>'L',\n1207=>'L',\n1208=>'L',\n1209=>'L',\n1210=>'L',\n1211=>'L',\n1212=>'L',\n1213=>'L',\n1214=>'L',\n1215=>'L',\n1216=>'L',\n1217=>'L',\n1218=>'L',\n1219=>'L',\n1220=>'L',\n1221=>'L',\n1222=>'L',\n1223=>'L',\n1224=>'L',\n1225=>'L',\n1226=>'L',\n1227=>'L',\n1228=>'L',\n1229=>'L',\n1230=>'L',\n1231=>'L',\n1232=>'L',\n1233=>'L',\n1234=>'L',\n1235=>'L',\n1236=>'L',\n1237=>'L',\n1238=>'L',\n1239=>'L',\n1240=>'L',\n1241=>'L',\n1242=>'L',\n1243=>'L',\n1244=>'L',\n1245=>'L',\n1246=>'L',\n1247=>'L',\n1248=>'L',\n1249=>'L',\n1250=>'L',\n1251=>'L',\n1252=>'L',\n1253=>'L',\n1254=>'L',\n1255=>'L',\n1256=>'L',\n1257=>'L',\n1258=>'L',\n1259=>'L',\n1260=>'L',\n1261=>'L',\n1262=>'L',\n1263=>'L',\n1264=>'L',\n1265=>'L',\n1266=>'L',\n1267=>'L',\n1268=>'L',\n1269=>'L',\n1270=>'L',\n1271=>'L',\n1272=>'L',\n1273=>'L',\n1274=>'L',\n1275=>'L',\n1276=>'L',\n1277=>'L',\n1278=>'L',\n1279=>'L',\n1280=>'L',\n1281=>'L',\n1282=>'L',\n1283=>'L',\n1284=>'L',\n1285=>'L',\n1286=>'L',\n1287=>'L',\n1288=>'L',\n1289=>'L',\n1290=>'L',\n1291=>'L',\n1292=>'L',\n1293=>'L',\n1294=>'L',\n1295=>'L',\n1296=>'L',\n1297=>'L',\n1298=>'L',\n1299=>'L',\n1329=>'L',\n1330=>'L',\n1331=>'L',\n1332=>'L',\n1333=>'L',\n1334=>'L',\n1335=>'L',\n1336=>'L',\n1337=>'L',\n1338=>'L',\n1339=>'L',\n1340=>'L',\n1341=>'L',\n1342=>'L',\n1343=>'L',\n1344=>'L',\n1345=>'L',\n1346=>'L',\n1347=>'L',\n1348=>'L',\n1349=>'L',\n1350=>'L',\n1351=>'L',\n1352=>'L',\n1353=>'L',\n1354=>'L',\n1355=>'L',\n1356=>'L',\n1357=>'L',\n1358=>'L',\n1359=>'L',\n1360=>'L',\n1361=>'L',\n1362=>'L',\n1363=>'L',\n1364=>'L',\n1365=>'L',\n1366=>'L',\n1369=>'L',\n1370=>'L',\n1371=>'L',\n1372=>'L',\n1373=>'L',\n1374=>'L',\n1375=>'L',\n1377=>'L',\n1378=>'L',\n1379=>'L',\n1380=>'L',\n1381=>'L',\n1382=>'L',\n1383=>'L',\n1384=>'L',\n1385=>'L',\n1386=>'L',\n1387=>'L',\n1388=>'L',\n1389=>'L',\n1390=>'L',\n1391=>'L',\n1392=>'L',\n1393=>'L',\n1394=>'L',\n1395=>'L',\n1396=>'L',\n1397=>'L',\n1398=>'L',\n1399=>'L',\n1400=>'L',\n1401=>'L',\n1402=>'L',\n1403=>'L',\n1404=>'L',\n1405=>'L',\n1406=>'L',\n1407=>'L',\n1408=>'L',\n1409=>'L',\n1410=>'L',\n1411=>'L',\n1412=>'L',\n1413=>'L',\n1414=>'L',\n1415=>'L',\n1417=>'L',\n1418=>'ON',\n1425=>'NSM',\n1426=>'NSM',\n1427=>'NSM',\n1428=>'NSM',\n1429=>'NSM',\n1430=>'NSM',\n1431=>'NSM',\n1432=>'NSM',\n1433=>'NSM',\n1434=>'NSM',\n1435=>'NSM',\n1436=>'NSM',\n1437=>'NSM',\n1438=>'NSM',\n1439=>'NSM',\n1440=>'NSM',\n1441=>'NSM',\n1442=>'NSM',\n1443=>'NSM',\n1444=>'NSM',\n1445=>'NSM',\n1446=>'NSM',\n1447=>'NSM',\n1448=>'NSM',\n1449=>'NSM',\n1450=>'NSM',\n1451=>'NSM',\n1452=>'NSM',\n1453=>'NSM',\n1454=>'NSM',\n1455=>'NSM',\n1456=>'NSM',\n1457=>'NSM',\n1458=>'NSM',\n1459=>'NSM',\n1460=>'NSM',\n1461=>'NSM',\n1462=>'NSM',\n1463=>'NSM',\n1464=>'NSM',\n1465=>'NSM',\n1466=>'NSM',\n1467=>'NSM',\n1468=>'NSM',\n1469=>'NSM',\n1470=>'R',\n1471=>'NSM',\n1472=>'R',\n1473=>'NSM',\n1474=>'NSM',\n1475=>'R',\n1476=>'NSM',\n1477=>'NSM',\n1478=>'R',\n1479=>'NSM',\n1488=>'R',\n1489=>'R',\n1490=>'R',\n1491=>'R',\n1492=>'R',\n1493=>'R',\n1494=>'R',\n1495=>'R',\n1496=>'R',\n1497=>'R',\n1498=>'R',\n1499=>'R',\n1500=>'R',\n1501=>'R',\n1502=>'R',\n1503=>'R',\n1504=>'R',\n1505=>'R',\n1506=>'R',\n1507=>'R',\n1508=>'R',\n1509=>'R',\n1510=>'R',\n1511=>'R',\n1512=>'R',\n1513=>'R',\n1514=>'R',\n1520=>'R',\n1521=>'R',\n1522=>'R',\n1523=>'R',\n1524=>'R',\n1536=>'AL',\n1537=>'AL',\n1538=>'AL',\n1539=>'AL',\n1547=>'AL',\n1548=>'CS',\n1549=>'AL',\n1550=>'ON',\n1551=>'ON',\n1552=>'NSM',\n1553=>'NSM',\n1554=>'NSM',\n1555=>'NSM',\n1556=>'NSM',\n1557=>'NSM',\n1563=>'AL',\n1566=>'AL',\n1567=>'AL',\n1569=>'AL',\n1570=>'AL',\n1571=>'AL',\n1572=>'AL',\n1573=>'AL',\n1574=>'AL',\n1575=>'AL',\n1576=>'AL',\n1577=>'AL',\n1578=>'AL',\n1579=>'AL',\n1580=>'AL',\n1581=>'AL',\n1582=>'AL',\n1583=>'AL',\n1584=>'AL',\n1585=>'AL',\n1586=>'AL',\n1587=>'AL',\n1588=>'AL',\n1589=>'AL',\n1590=>'AL',\n1591=>'AL',\n1592=>'AL',\n1593=>'AL',\n1594=>'AL',\n1600=>'AL',\n1601=>'AL',\n1602=>'AL',\n1603=>'AL',\n1604=>'AL',\n1605=>'AL',\n1606=>'AL',\n1607=>'AL',\n1608=>'AL',\n1609=>'AL',\n1610=>'AL',\n1611=>'NSM',\n1612=>'NSM',\n1613=>'NSM',\n1614=>'NSM',\n1615=>'NSM',\n1616=>'NSM',\n1617=>'NSM',\n1618=>'NSM',\n1619=>'NSM',\n1620=>'NSM',\n1621=>'NSM',\n1622=>'NSM',\n1623=>'NSM',\n1624=>'NSM',\n1625=>'NSM',\n1626=>'NSM',\n1627=>'NSM',\n1628=>'NSM',\n1629=>'NSM',\n1630=>'NSM',\n1632=>'AN',\n1633=>'AN',\n1634=>'AN',\n1635=>'AN',\n1636=>'AN',\n1637=>'AN',\n1638=>'AN',\n1639=>'AN',\n1640=>'AN',\n1641=>'AN',\n1642=>'ET',\n1643=>'AN',\n1644=>'AN',\n1645=>'AL',\n1646=>'AL',\n1647=>'AL',\n1648=>'NSM',\n1649=>'AL',\n1650=>'AL',\n1651=>'AL',\n1652=>'AL',\n1653=>'AL',\n1654=>'AL',\n1655=>'AL',\n1656=>'AL',\n1657=>'AL',\n1658=>'AL',\n1659=>'AL',\n1660=>'AL',\n1661=>'AL',\n1662=>'AL',\n1663=>'AL',\n1664=>'AL',\n1665=>'AL',\n1666=>'AL',\n1667=>'AL',\n1668=>'AL',\n1669=>'AL',\n1670=>'AL',\n1671=>'AL',\n1672=>'AL',\n1673=>'AL',\n1674=>'AL',\n1675=>'AL',\n1676=>'AL',\n1677=>'AL',\n1678=>'AL',\n1679=>'AL',\n1680=>'AL',\n1681=>'AL',\n1682=>'AL',\n1683=>'AL',\n1684=>'AL',\n1685=>'AL',\n1686=>'AL',\n1687=>'AL',\n1688=>'AL',\n1689=>'AL',\n1690=>'AL',\n1691=>'AL',\n1692=>'AL',\n1693=>'AL',\n1694=>'AL',\n1695=>'AL',\n1696=>'AL',\n1697=>'AL',\n1698=>'AL',\n1699=>'AL',\n1700=>'AL',\n1701=>'AL',\n1702=>'AL',\n1703=>'AL',\n1704=>'AL',\n1705=>'AL',\n1706=>'AL',\n1707=>'AL',\n1708=>'AL',\n1709=>'AL',\n1710=>'AL',\n1711=>'AL',\n1712=>'AL',\n1713=>'AL',\n1714=>'AL',\n1715=>'AL',\n1716=>'AL',\n1717=>'AL',\n1718=>'AL',\n1719=>'AL',\n1720=>'AL',\n1721=>'AL',\n1722=>'AL',\n1723=>'AL',\n1724=>'AL',\n1725=>'AL',\n1726=>'AL',\n1727=>'AL',\n1728=>'AL',\n1729=>'AL',\n1730=>'AL',\n1731=>'AL',\n1732=>'AL',\n1733=>'AL',\n1734=>'AL',\n1735=>'AL',\n1736=>'AL',\n1737=>'AL',\n1738=>'AL',\n1739=>'AL',\n1740=>'AL',\n1741=>'AL',\n1742=>'AL',\n1743=>'AL',\n1744=>'AL',\n1745=>'AL',\n1746=>'AL',\n1747=>'AL',\n1748=>'AL',\n1749=>'AL',\n1750=>'NSM',\n1751=>'NSM',\n1752=>'NSM',\n1753=>'NSM',\n1754=>'NSM',\n1755=>'NSM',\n1756=>'NSM',\n1757=>'AL',\n1758=>'NSM',\n1759=>'NSM',\n1760=>'NSM',\n1761=>'NSM',\n1762=>'NSM',\n1763=>'NSM',\n1764=>'NSM',\n1765=>'AL',\n1766=>'AL',\n1767=>'NSM',\n1768=>'NSM',\n1769=>'ON',\n1770=>'NSM',\n1771=>'NSM',\n1772=>'NSM',\n1773=>'NSM',\n1774=>'AL',\n1775=>'AL',\n1776=>'EN',\n1777=>'EN',\n1778=>'EN',\n1779=>'EN',\n1780=>'EN',\n1781=>'EN',\n1782=>'EN',\n1783=>'EN',\n1784=>'EN',\n1785=>'EN',\n1786=>'AL',\n1787=>'AL',\n1788=>'AL',\n1789=>'AL',\n1790=>'AL',\n1791=>'AL',\n1792=>'AL',\n1793=>'AL',\n1794=>'AL',\n1795=>'AL',\n1796=>'AL',\n1797=>'AL',\n1798=>'AL',\n1799=>'AL',\n1800=>'AL',\n1801=>'AL',\n1802=>'AL',\n1803=>'AL',\n1804=>'AL',\n1805=>'AL',\n1807=>'BN',\n1808=>'AL',\n1809=>'NSM',\n1810=>'AL',\n1811=>'AL',\n1812=>'AL',\n1813=>'AL',\n1814=>'AL',\n1815=>'AL',\n1816=>'AL',\n1817=>'AL',\n1818=>'AL',\n1819=>'AL',\n1820=>'AL',\n1821=>'AL',\n1822=>'AL',\n1823=>'AL',\n1824=>'AL',\n1825=>'AL',\n1826=>'AL',\n1827=>'AL',\n1828=>'AL',\n1829=>'AL',\n1830=>'AL',\n1831=>'AL',\n1832=>'AL',\n1833=>'AL',\n1834=>'AL',\n1835=>'AL',\n1836=>'AL',\n1837=>'AL',\n1838=>'AL',\n1839=>'AL',\n1840=>'NSM',\n1841=>'NSM',\n1842=>'NSM',\n1843=>'NSM',\n1844=>'NSM',\n1845=>'NSM',\n1846=>'NSM',\n1847=>'NSM',\n1848=>'NSM',\n1849=>'NSM',\n1850=>'NSM',\n1851=>'NSM',\n1852=>'NSM',\n1853=>'NSM',\n1854=>'NSM',\n1855=>'NSM',\n1856=>'NSM',\n1857=>'NSM',\n1858=>'NSM',\n1859=>'NSM',\n1860=>'NSM',\n1861=>'NSM',\n1862=>'NSM',\n1863=>'NSM',\n1864=>'NSM',\n1865=>'NSM',\n1866=>'NSM',\n1869=>'AL',\n1870=>'AL',\n1871=>'AL',\n1872=>'AL',\n1873=>'AL',\n1874=>'AL',\n1875=>'AL',\n1876=>'AL',\n1877=>'AL',\n1878=>'AL',\n1879=>'AL',\n1880=>'AL',\n1881=>'AL',\n1882=>'AL',\n1883=>'AL',\n1884=>'AL',\n1885=>'AL',\n1886=>'AL',\n1887=>'AL',\n1888=>'AL',\n1889=>'AL',\n1890=>'AL',\n1891=>'AL',\n1892=>'AL',\n1893=>'AL',\n1894=>'AL',\n1895=>'AL',\n1896=>'AL',\n1897=>'AL',\n1898=>'AL',\n1899=>'AL',\n1900=>'AL',\n1901=>'AL',\n1920=>'AL',\n1921=>'AL',\n1922=>'AL',\n1923=>'AL',\n1924=>'AL',\n1925=>'AL',\n1926=>'AL',\n1927=>'AL',\n1928=>'AL',\n1929=>'AL',\n1930=>'AL',\n1931=>'AL',\n1932=>'AL',\n1933=>'AL',\n1934=>'AL',\n1935=>'AL',\n1936=>'AL',\n1937=>'AL',\n1938=>'AL',\n1939=>'AL',\n1940=>'AL',\n1941=>'AL',\n1942=>'AL',\n1943=>'AL',\n1944=>'AL',\n1945=>'AL',\n1946=>'AL',\n1947=>'AL',\n1948=>'AL',\n1949=>'AL',\n1950=>'AL',\n1951=>'AL',\n1952=>'AL',\n1953=>'AL',\n1954=>'AL',\n1955=>'AL',\n1956=>'AL',\n1957=>'AL',\n1958=>'NSM',\n1959=>'NSM',\n1960=>'NSM',\n1961=>'NSM',\n1962=>'NSM',\n1963=>'NSM',\n1964=>'NSM',\n1965=>'NSM',\n1966=>'NSM',\n1967=>'NSM',\n1968=>'NSM',\n1969=>'AL',\n1984=>'R',\n1985=>'R',\n1986=>'R',\n1987=>'R',\n1988=>'R',\n1989=>'R',\n1990=>'R',\n1991=>'R',\n1992=>'R',\n1993=>'R',\n1994=>'R',\n1995=>'R',\n1996=>'R',\n1997=>'R',\n1998=>'R',\n1999=>'R',\n2000=>'R',\n2001=>'R',\n2002=>'R',\n2003=>'R',\n2004=>'R',\n2005=>'R',\n2006=>'R',\n2007=>'R',\n2008=>'R',\n2009=>'R',\n2010=>'R',\n2011=>'R',\n2012=>'R',\n2013=>'R',\n2014=>'R',\n2015=>'R',\n2016=>'R',\n2017=>'R',\n2018=>'R',\n2019=>'R',\n2020=>'R',\n2021=>'R',\n2022=>'R',\n2023=>'R',\n2024=>'R',\n2025=>'R',\n2026=>'R',\n2027=>'NSM',\n2028=>'NSM',\n2029=>'NSM',\n2030=>'NSM',\n2031=>'NSM',\n2032=>'NSM',\n2033=>'NSM',\n2034=>'NSM',\n2035=>'NSM',\n2036=>'R',\n2037=>'R',\n2038=>'ON',\n2039=>'ON',\n2040=>'ON',\n2041=>'ON',\n2042=>'R',\n2305=>'NSM',\n2306=>'NSM',\n2307=>'L',\n2308=>'L',\n2309=>'L',\n2310=>'L',\n2311=>'L',\n2312=>'L',\n2313=>'L',\n2314=>'L',\n2315=>'L',\n2316=>'L',\n2317=>'L',\n2318=>'L',\n2319=>'L',\n2320=>'L',\n2321=>'L',\n2322=>'L',\n2323=>'L',\n2324=>'L',\n2325=>'L',\n2326=>'L',\n2327=>'L',\n2328=>'L',\n2329=>'L',\n2330=>'L',\n2331=>'L',\n2332=>'L',\n2333=>'L',\n2334=>'L',\n2335=>'L',\n2336=>'L',\n2337=>'L',\n2338=>'L',\n2339=>'L',\n2340=>'L',\n2341=>'L',\n2342=>'L',\n2343=>'L',\n2344=>'L',\n2345=>'L',\n2346=>'L',\n2347=>'L',\n2348=>'L',\n2349=>'L',\n2350=>'L',\n2351=>'L',\n2352=>'L',\n2353=>'L',\n2354=>'L',\n2355=>'L',\n2356=>'L',\n2357=>'L',\n2358=>'L',\n2359=>'L',\n2360=>'L',\n2361=>'L',\n2364=>'NSM',\n2365=>'L',\n2366=>'L',\n2367=>'L',\n2368=>'L',\n2369=>'NSM',\n2370=>'NSM',\n2371=>'NSM',\n2372=>'NSM',\n2373=>'NSM',\n2374=>'NSM',\n2375=>'NSM',\n2376=>'NSM',\n2377=>'L',\n2378=>'L',\n2379=>'L',\n2380=>'L',\n2381=>'NSM',\n2384=>'L',\n2385=>'NSM',\n2386=>'NSM',\n2387=>'NSM',\n2388=>'NSM',\n2392=>'L',\n2393=>'L',\n2394=>'L',\n2395=>'L',\n2396=>'L',\n2397=>'L',\n2398=>'L',\n2399=>'L',\n2400=>'L',\n2401=>'L',\n2402=>'NSM',\n2403=>'NSM',\n2404=>'L',\n2405=>'L',\n2406=>'L',\n2407=>'L',\n2408=>'L',\n2409=>'L',\n2410=>'L',\n2411=>'L',\n2412=>'L',\n2413=>'L',\n2414=>'L',\n2415=>'L',\n2416=>'L',\n2427=>'L',\n2428=>'L',\n2429=>'L',\n2430=>'L',\n2431=>'L',\n2433=>'NSM',\n2434=>'L',\n2435=>'L',\n2437=>'L',\n2438=>'L',\n2439=>'L',\n2440=>'L',\n2441=>'L',\n2442=>'L',\n2443=>'L',\n2444=>'L',\n2447=>'L',\n2448=>'L',\n2451=>'L',\n2452=>'L',\n2453=>'L',\n2454=>'L',\n2455=>'L',\n2456=>'L',\n2457=>'L',\n2458=>'L',\n2459=>'L',\n2460=>'L',\n2461=>'L',\n2462=>'L',\n2463=>'L',\n2464=>'L',\n2465=>'L',\n2466=>'L',\n2467=>'L',\n2468=>'L',\n2469=>'L',\n2470=>'L',\n2471=>'L',\n2472=>'L',\n2474=>'L',\n2475=>'L',\n2476=>'L',\n2477=>'L',\n2478=>'L',\n2479=>'L',\n2480=>'L',\n2482=>'L',\n2486=>'L',\n2487=>'L',\n2488=>'L',\n2489=>'L',\n2492=>'NSM',\n2493=>'L',\n2494=>'L',\n2495=>'L',\n2496=>'L',\n2497=>'NSM',\n2498=>'NSM',\n2499=>'NSM',\n2500=>'NSM',\n2503=>'L',\n2504=>'L',\n2507=>'L',\n2508=>'L',\n2509=>'NSM',\n2510=>'L',\n2519=>'L',\n2524=>'L',\n2525=>'L',\n2527=>'L',\n2528=>'L',\n2529=>'L',\n2530=>'NSM',\n2531=>'NSM',\n2534=>'L',\n2535=>'L',\n2536=>'L',\n2537=>'L',\n2538=>'L',\n2539=>'L',\n2540=>'L',\n2541=>'L',\n2542=>'L',\n2543=>'L',\n2544=>'L',\n2545=>'L',\n2546=>'ET',\n2547=>'ET',\n2548=>'L',\n2549=>'L',\n2550=>'L',\n2551=>'L',\n2552=>'L',\n2553=>'L',\n2554=>'L',\n2561=>'NSM',\n2562=>'NSM',\n2563=>'L',\n2565=>'L',\n2566=>'L',\n2567=>'L',\n2568=>'L',\n2569=>'L',\n2570=>'L',\n2575=>'L',\n2576=>'L',\n2579=>'L',\n2580=>'L',\n2581=>'L',\n2582=>'L',\n2583=>'L',\n2584=>'L',\n2585=>'L',\n2586=>'L',\n2587=>'L',\n2588=>'L',\n2589=>'L',\n2590=>'L',\n2591=>'L',\n2592=>'L',\n2593=>'L',\n2594=>'L',\n2595=>'L',\n2596=>'L',\n2597=>'L',\n2598=>'L',\n2599=>'L',\n2600=>'L',\n2602=>'L',\n2603=>'L',\n2604=>'L',\n2605=>'L',\n2606=>'L',\n2607=>'L',\n2608=>'L',\n2610=>'L',\n2611=>'L',\n2613=>'L',\n2614=>'L',\n2616=>'L',\n2617=>'L',\n2620=>'NSM',\n2622=>'L',\n2623=>'L',\n2624=>'L',\n2625=>'NSM',\n2626=>'NSM',\n2631=>'NSM',\n2632=>'NSM',\n2635=>'NSM',\n2636=>'NSM',\n2637=>'NSM',\n2649=>'L',\n2650=>'L',\n2651=>'L',\n2652=>'L',\n2654=>'L',\n2662=>'L',\n2663=>'L',\n2664=>'L',\n2665=>'L',\n2666=>'L',\n2667=>'L',\n2668=>'L',\n2669=>'L',\n2670=>'L',\n2671=>'L',\n2672=>'NSM',\n2673=>'NSM',\n2674=>'L',\n2675=>'L',\n2676=>'L',\n2689=>'NSM',\n2690=>'NSM',\n2691=>'L',\n2693=>'L',\n2694=>'L',\n2695=>'L',\n2696=>'L',\n2697=>'L',\n2698=>'L',\n2699=>'L',\n2700=>'L',\n2701=>'L',\n2703=>'L',\n2704=>'L',\n2705=>'L',\n2707=>'L',\n2708=>'L',\n2709=>'L',\n2710=>'L',\n2711=>'L',\n2712=>'L',\n2713=>'L',\n2714=>'L',\n2715=>'L',\n2716=>'L',\n2717=>'L',\n2718=>'L',\n2719=>'L',\n2720=>'L',\n2721=>'L',\n2722=>'L',\n2723=>'L',\n2724=>'L',\n2725=>'L',\n2726=>'L',\n2727=>'L',\n2728=>'L',\n2730=>'L',\n2731=>'L',\n2732=>'L',\n2733=>'L',\n2734=>'L',\n2735=>'L',\n2736=>'L',\n2738=>'L',\n2739=>'L',\n2741=>'L',\n2742=>'L',\n2743=>'L',\n2744=>'L',\n2745=>'L',\n2748=>'NSM',\n2749=>'L',\n2750=>'L',\n2751=>'L',\n2752=>'L',\n2753=>'NSM',\n2754=>'NSM',\n2755=>'NSM',\n2756=>'NSM',\n2757=>'NSM',\n2759=>'NSM',\n2760=>'NSM',\n2761=>'L',\n2763=>'L',\n2764=>'L',\n2765=>'NSM',\n2768=>'L',\n2784=>'L',\n2785=>'L',\n2786=>'NSM',\n2787=>'NSM',\n2790=>'L',\n2791=>'L',\n2792=>'L',\n2793=>'L',\n2794=>'L',\n2795=>'L',\n2796=>'L',\n2797=>'L',\n2798=>'L',\n2799=>'L',\n2801=>'ET',\n2817=>'NSM',\n2818=>'L',\n2819=>'L',\n2821=>'L',\n2822=>'L',\n2823=>'L',\n2824=>'L',\n2825=>'L',\n2826=>'L',\n2827=>'L',\n2828=>'L',\n2831=>'L',\n2832=>'L',\n2835=>'L',\n2836=>'L',\n2837=>'L',\n2838=>'L',\n2839=>'L',\n2840=>'L',\n2841=>'L',\n2842=>'L',\n2843=>'L',\n2844=>'L',\n2845=>'L',\n2846=>'L',\n2847=>'L',\n2848=>'L',\n2849=>'L',\n2850=>'L',\n2851=>'L',\n2852=>'L',\n2853=>'L',\n2854=>'L',\n2855=>'L',\n2856=>'L',\n2858=>'L',\n2859=>'L',\n2860=>'L',\n2861=>'L',\n2862=>'L',\n2863=>'L',\n2864=>'L',\n2866=>'L',\n2867=>'L',\n2869=>'L',\n2870=>'L',\n2871=>'L',\n2872=>'L',\n2873=>'L',\n2876=>'NSM',\n2877=>'L',\n2878=>'L',\n2879=>'NSM',\n2880=>'L',\n2881=>'NSM',\n2882=>'NSM',\n2883=>'NSM',\n2887=>'L',\n2888=>'L',\n2891=>'L',\n2892=>'L',\n2893=>'NSM',\n2902=>'NSM',\n2903=>'L',\n2908=>'L',\n2909=>'L',\n2911=>'L',\n2912=>'L',\n2913=>'L',\n2918=>'L',\n2919=>'L',\n2920=>'L',\n2921=>'L',\n2922=>'L',\n2923=>'L',\n2924=>'L',\n2925=>'L',\n2926=>'L',\n2927=>'L',\n2928=>'L',\n2929=>'L',\n2946=>'NSM',\n2947=>'L',\n2949=>'L',\n2950=>'L',\n2951=>'L',\n2952=>'L',\n2953=>'L',\n2954=>'L',\n2958=>'L',\n2959=>'L',\n2960=>'L',\n2962=>'L',\n2963=>'L',\n2964=>'L',\n2965=>'L',\n2969=>'L',\n2970=>'L',\n2972=>'L',\n2974=>'L',\n2975=>'L',\n2979=>'L',\n2980=>'L',\n2984=>'L',\n2985=>'L',\n2986=>'L',\n2990=>'L',\n2991=>'L',\n2992=>'L',\n2993=>'L',\n2994=>'L',\n2995=>'L',\n2996=>'L',\n2997=>'L',\n2998=>'L',\n2999=>'L',\n3000=>'L',\n3001=>'L',\n3006=>'L',\n3007=>'L',\n3008=>'NSM',\n3009=>'L',\n3010=>'L',\n3014=>'L',\n3015=>'L',\n3016=>'L',\n3018=>'L',\n3019=>'L',\n3020=>'L',\n3021=>'NSM',\n3031=>'L',\n3046=>'L',\n3047=>'L',\n3048=>'L',\n3049=>'L',\n3050=>'L',\n3051=>'L',\n3052=>'L',\n3053=>'L',\n3054=>'L',\n3055=>'L',\n3056=>'L',\n3057=>'L',\n3058=>'L',\n3059=>'ON',\n3060=>'ON',\n3061=>'ON',\n3062=>'ON',\n3063=>'ON',\n3064=>'ON',\n3065=>'ET',\n3066=>'ON',\n3073=>'L',\n3074=>'L',\n3075=>'L',\n3077=>'L',\n3078=>'L',\n3079=>'L',\n3080=>'L',\n3081=>'L',\n3082=>'L',\n3083=>'L',\n3084=>'L',\n3086=>'L',\n3087=>'L',\n3088=>'L',\n3090=>'L',\n3091=>'L',\n3092=>'L',\n3093=>'L',\n3094=>'L',\n3095=>'L',\n3096=>'L',\n3097=>'L',\n3098=>'L',\n3099=>'L',\n3100=>'L',\n3101=>'L',\n3102=>'L',\n3103=>'L',\n3104=>'L',\n3105=>'L',\n3106=>'L',\n3107=>'L',\n3108=>'L',\n3109=>'L',\n3110=>'L',\n3111=>'L',\n3112=>'L',\n3114=>'L',\n3115=>'L',\n3116=>'L',\n3117=>'L',\n3118=>'L',\n3119=>'L',\n3120=>'L',\n3121=>'L',\n3122=>'L',\n3123=>'L',\n3125=>'L',\n3126=>'L',\n3127=>'L',\n3128=>'L',\n3129=>'L',\n3134=>'NSM',\n3135=>'NSM',\n3136=>'NSM',\n3137=>'L',\n3138=>'L',\n3139=>'L',\n3140=>'L',\n3142=>'NSM',\n3143=>'NSM',\n3144=>'NSM',\n3146=>'NSM',\n3147=>'NSM',\n3148=>'NSM',\n3149=>'NSM',\n3157=>'NSM',\n3158=>'NSM',\n3168=>'L',\n3169=>'L',\n3174=>'L',\n3175=>'L',\n3176=>'L',\n3177=>'L',\n3178=>'L',\n3179=>'L',\n3180=>'L',\n3181=>'L',\n3182=>'L',\n3183=>'L',\n3202=>'L',\n3203=>'L',\n3205=>'L',\n3206=>'L',\n3207=>'L',\n3208=>'L',\n3209=>'L',\n3210=>'L',\n3211=>'L',\n3212=>'L',\n3214=>'L',\n3215=>'L',\n3216=>'L',\n3218=>'L',\n3219=>'L',\n3220=>'L',\n3221=>'L',\n3222=>'L',\n3223=>'L',\n3224=>'L',\n3225=>'L',\n3226=>'L',\n3227=>'L',\n3228=>'L',\n3229=>'L',\n3230=>'L',\n3231=>'L',\n3232=>'L',\n3233=>'L',\n3234=>'L',\n3235=>'L',\n3236=>'L',\n3237=>'L',\n3238=>'L',\n3239=>'L',\n3240=>'L',\n3242=>'L',\n3243=>'L',\n3244=>'L',\n3245=>'L',\n3246=>'L',\n3247=>'L',\n3248=>'L',\n3249=>'L',\n3250=>'L',\n3251=>'L',\n3253=>'L',\n3254=>'L',\n3255=>'L',\n3256=>'L',\n3257=>'L',\n3260=>'NSM',\n3261=>'L',\n3262=>'L',\n3263=>'L',\n3264=>'L',\n3265=>'L',\n3266=>'L',\n3267=>'L',\n3268=>'L',\n3270=>'L',\n3271=>'L',\n3272=>'L',\n3274=>'L',\n3275=>'L',\n3276=>'NSM',\n3277=>'NSM',\n3285=>'L',\n3286=>'L',\n3294=>'L',\n3296=>'L',\n3297=>'L',\n3298=>'NSM',\n3299=>'NSM',\n3302=>'L',\n3303=>'L',\n3304=>'L',\n3305=>'L',\n3306=>'L',\n3307=>'L',\n3308=>'L',\n3309=>'L',\n3310=>'L',\n3311=>'L',\n3313=>'ON',\n3314=>'ON',\n3330=>'L',\n3331=>'L',\n3333=>'L',\n3334=>'L',\n3335=>'L',\n3336=>'L',\n3337=>'L',\n3338=>'L',\n3339=>'L',\n3340=>'L',\n3342=>'L',\n3343=>'L',\n3344=>'L',\n3346=>'L',\n3347=>'L',\n3348=>'L',\n3349=>'L',\n3350=>'L',\n3351=>'L',\n3352=>'L',\n3353=>'L',\n3354=>'L',\n3355=>'L',\n3356=>'L',\n3357=>'L',\n3358=>'L',\n3359=>'L',\n3360=>'L',\n3361=>'L',\n3362=>'L',\n3363=>'L',\n3364=>'L',\n3365=>'L',\n3366=>'L',\n3367=>'L',\n3368=>'L',\n3370=>'L',\n3371=>'L',\n3372=>'L',\n3373=>'L',\n3374=>'L',\n3375=>'L',\n3376=>'L',\n3377=>'L',\n3378=>'L',\n3379=>'L',\n3380=>'L',\n3381=>'L',\n3382=>'L',\n3383=>'L',\n3384=>'L',\n3385=>'L',\n3390=>'L',\n3391=>'L',\n3392=>'L',\n3393=>'NSM',\n3394=>'NSM',\n3395=>'NSM',\n3398=>'L',\n3399=>'L',\n3400=>'L',\n3402=>'L',\n3403=>'L',\n3404=>'L',\n3405=>'NSM',\n3415=>'L',\n3424=>'L',\n3425=>'L',\n3430=>'L',\n3431=>'L',\n3432=>'L',\n3433=>'L',\n3434=>'L',\n3435=>'L',\n3436=>'L',\n3437=>'L',\n3438=>'L',\n3439=>'L',\n3458=>'L',\n3459=>'L',\n3461=>'L',\n3462=>'L',\n3463=>'L',\n3464=>'L',\n3465=>'L',\n3466=>'L',\n3467=>'L',\n3468=>'L',\n3469=>'L',\n3470=>'L',\n3471=>'L',\n3472=>'L',\n3473=>'L',\n3474=>'L',\n3475=>'L',\n3476=>'L',\n3477=>'L',\n3478=>'L',\n3482=>'L',\n3483=>'L',\n3484=>'L',\n3485=>'L',\n3486=>'L',\n3487=>'L',\n3488=>'L',\n3489=>'L',\n3490=>'L',\n3491=>'L',\n3492=>'L',\n3493=>'L',\n3494=>'L',\n3495=>'L',\n3496=>'L',\n3497=>'L',\n3498=>'L',\n3499=>'L',\n3500=>'L',\n3501=>'L',\n3502=>'L',\n3503=>'L',\n3504=>'L',\n3505=>'L',\n3507=>'L',\n3508=>'L',\n3509=>'L',\n3510=>'L',\n3511=>'L',\n3512=>'L',\n3513=>'L',\n3514=>'L',\n3515=>'L',\n3517=>'L',\n3520=>'L',\n3521=>'L',\n3522=>'L',\n3523=>'L',\n3524=>'L',\n3525=>'L',\n3526=>'L',\n3530=>'NSM',\n3535=>'L',\n3536=>'L',\n3537=>'L',\n3538=>'NSM',\n3539=>'NSM',\n3540=>'NSM',\n3542=>'NSM',\n3544=>'L',\n3545=>'L',\n3546=>'L',\n3547=>'L',\n3548=>'L',\n3549=>'L',\n3550=>'L',\n3551=>'L',\n3570=>'L',\n3571=>'L',\n3572=>'L',\n3585=>'L',\n3586=>'L',\n3587=>'L',\n3588=>'L',\n3589=>'L',\n3590=>'L',\n3591=>'L',\n3592=>'L',\n3593=>'L',\n3594=>'L',\n3595=>'L',\n3596=>'L',\n3597=>'L',\n3598=>'L',\n3599=>'L',\n3600=>'L',\n3601=>'L',\n3602=>'L',\n3603=>'L',\n3604=>'L',\n3605=>'L',\n3606=>'L',\n3607=>'L',\n3608=>'L',\n3609=>'L',\n3610=>'L',\n3611=>'L',\n3612=>'L',\n3613=>'L',\n3614=>'L',\n3615=>'L',\n3616=>'L',\n3617=>'L',\n3618=>'L',\n3619=>'L',\n3620=>'L',\n3621=>'L',\n3622=>'L',\n3623=>'L',\n3624=>'L',\n3625=>'L',\n3626=>'L',\n3627=>'L',\n3628=>'L',\n3629=>'L',\n3630=>'L',\n3631=>'L',\n3632=>'L',\n3633=>'NSM',\n3634=>'L',\n3635=>'L',\n3636=>'NSM',\n3637=>'NSM',\n3638=>'NSM',\n3639=>'NSM',\n3640=>'NSM',\n3641=>'NSM',\n3642=>'NSM',\n3647=>'ET',\n3648=>'L',\n3649=>'L',\n3650=>'L',\n3651=>'L',\n3652=>'L',\n3653=>'L',\n3654=>'L',\n3655=>'NSM',\n3656=>'NSM',\n3657=>'NSM',\n3658=>'NSM',\n3659=>'NSM',\n3660=>'NSM',\n3661=>'NSM',\n3662=>'NSM',\n3663=>'L',\n3664=>'L',\n3665=>'L',\n3666=>'L',\n3667=>'L',\n3668=>'L',\n3669=>'L',\n3670=>'L',\n3671=>'L',\n3672=>'L',\n3673=>'L',\n3674=>'L',\n3675=>'L',\n3713=>'L',\n3714=>'L',\n3716=>'L',\n3719=>'L',\n3720=>'L',\n3722=>'L',\n3725=>'L',\n3732=>'L',\n3733=>'L',\n3734=>'L',\n3735=>'L',\n3737=>'L',\n3738=>'L',\n3739=>'L',\n3740=>'L',\n3741=>'L',\n3742=>'L',\n3743=>'L',\n3745=>'L',\n3746=>'L',\n3747=>'L',\n3749=>'L',\n3751=>'L',\n3754=>'L',\n3755=>'L',\n3757=>'L',\n3758=>'L',\n3759=>'L',\n3760=>'L',\n3761=>'NSM',\n3762=>'L',\n3763=>'L',\n3764=>'NSM',\n3765=>'NSM',\n3766=>'NSM',\n3767=>'NSM',\n3768=>'NSM',\n3769=>'NSM',\n3771=>'NSM',\n3772=>'NSM',\n3773=>'L',\n3776=>'L',\n3777=>'L',\n3778=>'L',\n3779=>'L',\n3780=>'L',\n3782=>'L',\n3784=>'NSM',\n3785=>'NSM',\n3786=>'NSM',\n3787=>'NSM',\n3788=>'NSM',\n3789=>'NSM',\n3792=>'L',\n3793=>'L',\n3794=>'L',\n3795=>'L',\n3796=>'L',\n3797=>'L',\n3798=>'L',\n3799=>'L',\n3800=>'L',\n3801=>'L',\n3804=>'L',\n3805=>'L',\n3840=>'L',\n3841=>'L',\n3842=>'L',\n3843=>'L',\n3844=>'L',\n3845=>'L',\n3846=>'L',\n3847=>'L',\n3848=>'L',\n3849=>'L',\n3850=>'L',\n3851=>'L',\n3852=>'L',\n3853=>'L',\n3854=>'L',\n3855=>'L',\n3856=>'L',\n3857=>'L',\n3858=>'L',\n3859=>'L',\n3860=>'L',\n3861=>'L',\n3862=>'L',\n3863=>'L',\n3864=>'NSM',\n3865=>'NSM',\n3866=>'L',\n3867=>'L',\n3868=>'L',\n3869=>'L',\n3870=>'L',\n3871=>'L',\n3872=>'L',\n3873=>'L',\n3874=>'L',\n3875=>'L',\n3876=>'L',\n3877=>'L',\n3878=>'L',\n3879=>'L',\n3880=>'L',\n3881=>'L',\n3882=>'L',\n3883=>'L',\n3884=>'L',\n3885=>'L',\n3886=>'L',\n3887=>'L',\n3888=>'L',\n3889=>'L',\n3890=>'L',\n3891=>'L',\n3892=>'L',\n3893=>'NSM',\n3894=>'L',\n3895=>'NSM',\n3896=>'L',\n3897=>'NSM',\n3898=>'ON',\n3899=>'ON',\n3900=>'ON',\n3901=>'ON',\n3902=>'L',\n3903=>'L',\n3904=>'L',\n3905=>'L',\n3906=>'L',\n3907=>'L',\n3908=>'L',\n3909=>'L',\n3910=>'L',\n3911=>'L',\n3913=>'L',\n3914=>'L',\n3915=>'L',\n3916=>'L',\n3917=>'L',\n3918=>'L',\n3919=>'L',\n3920=>'L',\n3921=>'L',\n3922=>'L',\n3923=>'L',\n3924=>'L',\n3925=>'L',\n3926=>'L',\n3927=>'L',\n3928=>'L',\n3929=>'L',\n3930=>'L',\n3931=>'L',\n3932=>'L',\n3933=>'L',\n3934=>'L',\n3935=>'L',\n3936=>'L',\n3937=>'L',\n3938=>'L',\n3939=>'L',\n3940=>'L',\n3941=>'L',\n3942=>'L',\n3943=>'L',\n3944=>'L',\n3945=>'L',\n3946=>'L',\n3953=>'NSM',\n3954=>'NSM',\n3955=>'NSM',\n3956=>'NSM',\n3957=>'NSM',\n3958=>'NSM',\n3959=>'NSM',\n3960=>'NSM',\n3961=>'NSM',\n3962=>'NSM',\n3963=>'NSM',\n3964=>'NSM',\n3965=>'NSM',\n3966=>'NSM',\n3967=>'L',\n3968=>'NSM',\n3969=>'NSM',\n3970=>'NSM',\n3971=>'NSM',\n3972=>'NSM',\n3973=>'L',\n3974=>'NSM',\n3975=>'NSM',\n3976=>'L',\n3977=>'L',\n3978=>'L',\n3979=>'L',\n3984=>'NSM',\n3985=>'NSM',\n3986=>'NSM',\n3987=>'NSM',\n3988=>'NSM',\n3989=>'NSM',\n3990=>'NSM',\n3991=>'NSM',\n3993=>'NSM',\n3994=>'NSM',\n3995=>'NSM',\n3996=>'NSM',\n3997=>'NSM',\n3998=>'NSM',\n3999=>'NSM',\n4000=>'NSM',\n4001=>'NSM',\n4002=>'NSM',\n4003=>'NSM',\n4004=>'NSM',\n4005=>'NSM',\n4006=>'NSM',\n4007=>'NSM',\n4008=>'NSM',\n4009=>'NSM',\n4010=>'NSM',\n4011=>'NSM',\n4012=>'NSM',\n4013=>'NSM',\n4014=>'NSM',\n4015=>'NSM',\n4016=>'NSM',\n4017=>'NSM',\n4018=>'NSM',\n4019=>'NSM',\n4020=>'NSM',\n4021=>'NSM',\n4022=>'NSM',\n4023=>'NSM',\n4024=>'NSM',\n4025=>'NSM',\n4026=>'NSM',\n4027=>'NSM',\n4028=>'NSM',\n4030=>'L',\n4031=>'L',\n4032=>'L',\n4033=>'L',\n4034=>'L',\n4035=>'L',\n4036=>'L',\n4037=>'L',\n4038=>'NSM',\n4039=>'L',\n4040=>'L',\n4041=>'L',\n4042=>'L',\n4043=>'L',\n4044=>'L',\n4047=>'L',\n4048=>'L',\n4049=>'L',\n4096=>'L',\n4097=>'L',\n4098=>'L',\n4099=>'L',\n4100=>'L',\n4101=>'L',\n4102=>'L',\n4103=>'L',\n4104=>'L',\n4105=>'L',\n4106=>'L',\n4107=>'L',\n4108=>'L',\n4109=>'L',\n4110=>'L',\n4111=>'L',\n4112=>'L',\n4113=>'L',\n4114=>'L',\n4115=>'L',\n4116=>'L',\n4117=>'L',\n4118=>'L',\n4119=>'L',\n4120=>'L',\n4121=>'L',\n4122=>'L',\n4123=>'L',\n4124=>'L',\n4125=>'L',\n4126=>'L',\n4127=>'L',\n4128=>'L',\n4129=>'L',\n4131=>'L',\n4132=>'L',\n4133=>'L',\n4134=>'L',\n4135=>'L',\n4137=>'L',\n4138=>'L',\n4140=>'L',\n4141=>'NSM',\n4142=>'NSM',\n4143=>'NSM',\n4144=>'NSM',\n4145=>'L',\n4146=>'NSM',\n4150=>'NSM',\n4151=>'NSM',\n4152=>'L',\n4153=>'NSM',\n4160=>'L',\n4161=>'L',\n4162=>'L',\n4163=>'L',\n4164=>'L',\n4165=>'L',\n4166=>'L',\n4167=>'L',\n4168=>'L',\n4169=>'L',\n4170=>'L',\n4171=>'L',\n4172=>'L',\n4173=>'L',\n4174=>'L',\n4175=>'L',\n4176=>'L',\n4177=>'L',\n4178=>'L',\n4179=>'L',\n4180=>'L',\n4181=>'L',\n4182=>'L',\n4183=>'L',\n4184=>'NSM',\n4185=>'NSM',\n4256=>'L',\n4257=>'L',\n4258=>'L',\n4259=>'L',\n4260=>'L',\n4261=>'L',\n4262=>'L',\n4263=>'L',\n4264=>'L',\n4265=>'L',\n4266=>'L',\n4267=>'L',\n4268=>'L',\n4269=>'L',\n4270=>'L',\n4271=>'L',\n4272=>'L',\n4273=>'L',\n4274=>'L',\n4275=>'L',\n4276=>'L',\n4277=>'L',\n4278=>'L',\n4279=>'L',\n4280=>'L',\n4281=>'L',\n4282=>'L',\n4283=>'L',\n4284=>'L',\n4285=>'L',\n4286=>'L',\n4287=>'L',\n4288=>'L',\n4289=>'L',\n4290=>'L',\n4291=>'L',\n4292=>'L',\n4293=>'L',\n4304=>'L',\n4305=>'L',\n4306=>'L',\n4307=>'L',\n4308=>'L',\n4309=>'L',\n4310=>'L',\n4311=>'L',\n4312=>'L',\n4313=>'L',\n4314=>'L',\n4315=>'L',\n4316=>'L',\n4317=>'L',\n4318=>'L',\n4319=>'L',\n4320=>'L',\n4321=>'L',\n4322=>'L',\n4323=>'L',\n4324=>'L',\n4325=>'L',\n4326=>'L',\n4327=>'L',\n4328=>'L',\n4329=>'L',\n4330=>'L',\n4331=>'L',\n4332=>'L',\n4333=>'L',\n4334=>'L',\n4335=>'L',\n4336=>'L',\n4337=>'L',\n4338=>'L',\n4339=>'L',\n4340=>'L',\n4341=>'L',\n4342=>'L',\n4343=>'L',\n4344=>'L',\n4345=>'L',\n4346=>'L',\n4347=>'L',\n4348=>'L',\n4352=>'L',\n4353=>'L',\n4354=>'L',\n4355=>'L',\n4356=>'L',\n4357=>'L',\n4358=>'L',\n4359=>'L',\n4360=>'L',\n4361=>'L',\n4362=>'L',\n4363=>'L',\n4364=>'L',\n4365=>'L',\n4366=>'L',\n4367=>'L',\n4368=>'L',\n4369=>'L',\n4370=>'L',\n4371=>'L',\n4372=>'L',\n4373=>'L',\n4374=>'L',\n4375=>'L',\n4376=>'L',\n4377=>'L',\n4378=>'L',\n4379=>'L',\n4380=>'L',\n4381=>'L',\n4382=>'L',\n4383=>'L',\n4384=>'L',\n4385=>'L',\n4386=>'L',\n4387=>'L',\n4388=>'L',\n4389=>'L',\n4390=>'L',\n4391=>'L',\n4392=>'L',\n4393=>'L',\n4394=>'L',\n4395=>'L',\n4396=>'L',\n4397=>'L',\n4398=>'L',\n4399=>'L',\n4400=>'L',\n4401=>'L',\n4402=>'L',\n4403=>'L',\n4404=>'L',\n4405=>'L',\n4406=>'L',\n4407=>'L',\n4408=>'L',\n4409=>'L',\n4410=>'L',\n4411=>'L',\n4412=>'L',\n4413=>'L',\n4414=>'L',\n4415=>'L',\n4416=>'L',\n4417=>'L',\n4418=>'L',\n4419=>'L',\n4420=>'L',\n4421=>'L',\n4422=>'L',\n4423=>'L',\n4424=>'L',\n4425=>'L',\n4426=>'L',\n4427=>'L',\n4428=>'L',\n4429=>'L',\n4430=>'L',\n4431=>'L',\n4432=>'L',\n4433=>'L',\n4434=>'L',\n4435=>'L',\n4436=>'L',\n4437=>'L',\n4438=>'L',\n4439=>'L',\n4440=>'L',\n4441=>'L',\n4447=>'L',\n4448=>'L',\n4449=>'L',\n4450=>'L',\n4451=>'L',\n4452=>'L',\n4453=>'L',\n4454=>'L',\n4455=>'L',\n4456=>'L',\n4457=>'L',\n4458=>'L',\n4459=>'L',\n4460=>'L',\n4461=>'L',\n4462=>'L',\n4463=>'L',\n4464=>'L',\n4465=>'L',\n4466=>'L',\n4467=>'L',\n4468=>'L',\n4469=>'L',\n4470=>'L',\n4471=>'L',\n4472=>'L',\n4473=>'L',\n4474=>'L',\n4475=>'L',\n4476=>'L',\n4477=>'L',\n4478=>'L',\n4479=>'L',\n4480=>'L',\n4481=>'L',\n4482=>'L',\n4483=>'L',\n4484=>'L',\n4485=>'L',\n4486=>'L',\n4487=>'L',\n4488=>'L',\n4489=>'L',\n4490=>'L',\n4491=>'L',\n4492=>'L',\n4493=>'L',\n4494=>'L',\n4495=>'L',\n4496=>'L',\n4497=>'L',\n4498=>'L',\n4499=>'L',\n4500=>'L',\n4501=>'L',\n4502=>'L',\n4503=>'L',\n4504=>'L',\n4505=>'L',\n4506=>'L',\n4507=>'L',\n4508=>'L',\n4509=>'L',\n4510=>'L',\n4511=>'L',\n4512=>'L',\n4513=>'L',\n4514=>'L',\n4520=>'L',\n4521=>'L',\n4522=>'L',\n4523=>'L',\n4524=>'L',\n4525=>'L',\n4526=>'L',\n4527=>'L',\n4528=>'L',\n4529=>'L',\n4530=>'L',\n4531=>'L',\n4532=>'L',\n4533=>'L',\n4534=>'L',\n4535=>'L',\n4536=>'L',\n4537=>'L',\n4538=>'L',\n4539=>'L',\n4540=>'L',\n4541=>'L',\n4542=>'L',\n4543=>'L',\n4544=>'L',\n4545=>'L',\n4546=>'L',\n4547=>'L',\n4548=>'L',\n4549=>'L',\n4550=>'L',\n4551=>'L',\n4552=>'L',\n4553=>'L',\n4554=>'L',\n4555=>'L',\n4556=>'L',\n4557=>'L',\n4558=>'L',\n4559=>'L',\n4560=>'L',\n4561=>'L',\n4562=>'L',\n4563=>'L',\n4564=>'L',\n4565=>'L',\n4566=>'L',\n4567=>'L',\n4568=>'L',\n4569=>'L',\n4570=>'L',\n4571=>'L',\n4572=>'L',\n4573=>'L',\n4574=>'L',\n4575=>'L',\n4576=>'L',\n4577=>'L',\n4578=>'L',\n4579=>'L',\n4580=>'L',\n4581=>'L',\n4582=>'L',\n4583=>'L',\n4584=>'L',\n4585=>'L',\n4586=>'L',\n4587=>'L',\n4588=>'L',\n4589=>'L',\n4590=>'L',\n4591=>'L',\n4592=>'L',\n4593=>'L',\n4594=>'L',\n4595=>'L',\n4596=>'L',\n4597=>'L',\n4598=>'L',\n4599=>'L',\n4600=>'L',\n4601=>'L',\n4608=>'L',\n4609=>'L',\n4610=>'L',\n4611=>'L',\n4612=>'L',\n4613=>'L',\n4614=>'L',\n4615=>'L',\n4616=>'L',\n4617=>'L',\n4618=>'L',\n4619=>'L',\n4620=>'L',\n4621=>'L',\n4622=>'L',\n4623=>'L',\n4624=>'L',\n4625=>'L',\n4626=>'L',\n4627=>'L',\n4628=>'L',\n4629=>'L',\n4630=>'L',\n4631=>'L',\n4632=>'L',\n4633=>'L',\n4634=>'L',\n4635=>'L',\n4636=>'L',\n4637=>'L',\n4638=>'L',\n4639=>'L',\n4640=>'L',\n4641=>'L',\n4642=>'L',\n4643=>'L',\n4644=>'L',\n4645=>'L',\n4646=>'L',\n4647=>'L',\n4648=>'L',\n4649=>'L',\n4650=>'L',\n4651=>'L',\n4652=>'L',\n4653=>'L',\n4654=>'L',\n4655=>'L',\n4656=>'L',\n4657=>'L',\n4658=>'L',\n4659=>'L',\n4660=>'L',\n4661=>'L',\n4662=>'L',\n4663=>'L',\n4664=>'L',\n4665=>'L',\n4666=>'L',\n4667=>'L',\n4668=>'L',\n4669=>'L',\n4670=>'L',\n4671=>'L',\n4672=>'L',\n4673=>'L',\n4674=>'L',\n4675=>'L',\n4676=>'L',\n4677=>'L',\n4678=>'L',\n4679=>'L',\n4680=>'L',\n4682=>'L',\n4683=>'L',\n4684=>'L',\n4685=>'L',\n4688=>'L',\n4689=>'L',\n4690=>'L',\n4691=>'L',\n4692=>'L',\n4693=>'L',\n4694=>'L',\n4696=>'L',\n4698=>'L',\n4699=>'L',\n4700=>'L',\n4701=>'L',\n4704=>'L',\n4705=>'L',\n4706=>'L',\n4707=>'L',\n4708=>'L',\n4709=>'L',\n4710=>'L',\n4711=>'L',\n4712=>'L',\n4713=>'L',\n4714=>'L',\n4715=>'L',\n4716=>'L',\n4717=>'L',\n4718=>'L',\n4719=>'L',\n4720=>'L',\n4721=>'L',\n4722=>'L',\n4723=>'L',\n4724=>'L',\n4725=>'L',\n4726=>'L',\n4727=>'L',\n4728=>'L',\n4729=>'L',\n4730=>'L',\n4731=>'L',\n4732=>'L',\n4733=>'L',\n4734=>'L',\n4735=>'L',\n4736=>'L',\n4737=>'L',\n4738=>'L',\n4739=>'L',\n4740=>'L',\n4741=>'L',\n4742=>'L',\n4743=>'L',\n4744=>'L',\n4746=>'L',\n4747=>'L',\n4748=>'L',\n4749=>'L',\n4752=>'L',\n4753=>'L',\n4754=>'L',\n4755=>'L',\n4756=>'L',\n4757=>'L',\n4758=>'L',\n4759=>'L',\n4760=>'L',\n4761=>'L',\n4762=>'L',\n4763=>'L',\n4764=>'L',\n4765=>'L',\n4766=>'L',\n4767=>'L',\n4768=>'L',\n4769=>'L',\n4770=>'L',\n4771=>'L',\n4772=>'L',\n4773=>'L',\n4774=>'L',\n4775=>'L',\n4776=>'L',\n4777=>'L',\n4778=>'L',\n4779=>'L',\n4780=>'L',\n4781=>'L',\n4782=>'L',\n4783=>'L',\n4784=>'L',\n4786=>'L',\n4787=>'L',\n4788=>'L',\n4789=>'L',\n4792=>'L',\n4793=>'L',\n4794=>'L',\n4795=>'L',\n4796=>'L',\n4797=>'L',\n4798=>'L',\n4800=>'L',\n4802=>'L',\n4803=>'L',\n4804=>'L',\n4805=>'L',\n4808=>'L',\n4809=>'L',\n4810=>'L',\n4811=>'L',\n4812=>'L',\n4813=>'L',\n4814=>'L',\n4815=>'L',\n4816=>'L',\n4817=>'L',\n4818=>'L',\n4819=>'L',\n4820=>'L',\n4821=>'L',\n4822=>'L',\n4824=>'L',\n4825=>'L',\n4826=>'L',\n4827=>'L',\n4828=>'L',\n4829=>'L',\n4830=>'L',\n4831=>'L',\n4832=>'L',\n4833=>'L',\n4834=>'L',\n4835=>'L',\n4836=>'L',\n4837=>'L',\n4838=>'L',\n4839=>'L',\n4840=>'L',\n4841=>'L',\n4842=>'L',\n4843=>'L',\n4844=>'L',\n4845=>'L',\n4846=>'L',\n4847=>'L',\n4848=>'L',\n4849=>'L',\n4850=>'L',\n4851=>'L',\n4852=>'L',\n4853=>'L',\n4854=>'L',\n4855=>'L',\n4856=>'L',\n4857=>'L',\n4858=>'L',\n4859=>'L',\n4860=>'L',\n4861=>'L',\n4862=>'L',\n4863=>'L',\n4864=>'L',\n4865=>'L',\n4866=>'L',\n4867=>'L',\n4868=>'L',\n4869=>'L',\n4870=>'L',\n4871=>'L',\n4872=>'L',\n4873=>'L',\n4874=>'L',\n4875=>'L',\n4876=>'L',\n4877=>'L',\n4878=>'L',\n4879=>'L',\n4880=>'L',\n4882=>'L',\n4883=>'L',\n4884=>'L',\n4885=>'L',\n4888=>'L',\n4889=>'L',\n4890=>'L',\n4891=>'L',\n4892=>'L',\n4893=>'L',\n4894=>'L',\n4895=>'L',\n4896=>'L',\n4897=>'L',\n4898=>'L',\n4899=>'L',\n4900=>'L',\n4901=>'L',\n4902=>'L',\n4903=>'L',\n4904=>'L',\n4905=>'L',\n4906=>'L',\n4907=>'L',\n4908=>'L',\n4909=>'L',\n4910=>'L',\n4911=>'L',\n4912=>'L',\n4913=>'L',\n4914=>'L',\n4915=>'L',\n4916=>'L',\n4917=>'L',\n4918=>'L',\n4919=>'L',\n4920=>'L',\n4921=>'L',\n4922=>'L',\n4923=>'L',\n4924=>'L',\n4925=>'L',\n4926=>'L',\n4927=>'L',\n4928=>'L',\n4929=>'L',\n4930=>'L',\n4931=>'L',\n4932=>'L',\n4933=>'L',\n4934=>'L',\n4935=>'L',\n4936=>'L',\n4937=>'L',\n4938=>'L',\n4939=>'L',\n4940=>'L',\n4941=>'L',\n4942=>'L',\n4943=>'L',\n4944=>'L',\n4945=>'L',\n4946=>'L',\n4947=>'L',\n4948=>'L',\n4949=>'L',\n4950=>'L',\n4951=>'L',\n4952=>'L',\n4953=>'L',\n4954=>'L',\n4959=>'NSM',\n4960=>'L',\n4961=>'L',\n4962=>'L',\n4963=>'L',\n4964=>'L',\n4965=>'L',\n4966=>'L',\n4967=>'L',\n4968=>'L',\n4969=>'L',\n4970=>'L',\n4971=>'L',\n4972=>'L',\n4973=>'L',\n4974=>'L',\n4975=>'L',\n4976=>'L',\n4977=>'L',\n4978=>'L',\n4979=>'L',\n4980=>'L',\n4981=>'L',\n4982=>'L',\n4983=>'L',\n4984=>'L',\n4985=>'L',\n4986=>'L',\n4987=>'L',\n4988=>'L',\n4992=>'L',\n4993=>'L',\n4994=>'L',\n4995=>'L',\n4996=>'L',\n4997=>'L',\n4998=>'L',\n4999=>'L',\n5000=>'L',\n5001=>'L',\n5002=>'L',\n5003=>'L',\n5004=>'L',\n5005=>'L',\n5006=>'L',\n5007=>'L',\n5008=>'ON',\n5009=>'ON',\n5010=>'ON',\n5011=>'ON',\n5012=>'ON',\n5013=>'ON',\n5014=>'ON',\n5015=>'ON',\n5016=>'ON',\n5017=>'ON',\n5024=>'L',\n5025=>'L',\n5026=>'L',\n5027=>'L',\n5028=>'L',\n5029=>'L',\n5030=>'L',\n5031=>'L',\n5032=>'L',\n5033=>'L',\n5034=>'L',\n5035=>'L',\n5036=>'L',\n5037=>'L',\n5038=>'L',\n5039=>'L',\n5040=>'L',\n5041=>'L',\n5042=>'L',\n5043=>'L',\n5044=>'L',\n5045=>'L',\n5046=>'L',\n5047=>'L',\n5048=>'L',\n5049=>'L',\n5050=>'L',\n5051=>'L',\n5052=>'L',\n5053=>'L',\n5054=>'L',\n5055=>'L',\n5056=>'L',\n5057=>'L',\n5058=>'L',\n5059=>'L',\n5060=>'L',\n5061=>'L',\n5062=>'L',\n5063=>'L',\n5064=>'L',\n5065=>'L',\n5066=>'L',\n5067=>'L',\n5068=>'L',\n5069=>'L',\n5070=>'L',\n5071=>'L',\n5072=>'L',\n5073=>'L',\n5074=>'L',\n5075=>'L',\n5076=>'L',\n5077=>'L',\n5078=>'L',\n5079=>'L',\n5080=>'L',\n5081=>'L',\n5082=>'L',\n5083=>'L',\n5084=>'L',\n5085=>'L',\n5086=>'L',\n5087=>'L',\n5088=>'L',\n5089=>'L',\n5090=>'L',\n5091=>'L',\n5092=>'L',\n5093=>'L',\n5094=>'L',\n5095=>'L',\n5096=>'L',\n5097=>'L',\n5098=>'L',\n5099=>'L',\n5100=>'L',\n5101=>'L',\n5102=>'L',\n5103=>'L',\n5104=>'L',\n5105=>'L',\n5106=>'L',\n5107=>'L',\n5108=>'L',\n5121=>'L',\n5122=>'L',\n5123=>'L',\n5124=>'L',\n5125=>'L',\n5126=>'L',\n5127=>'L',\n5128=>'L',\n5129=>'L',\n5130=>'L',\n5131=>'L',\n5132=>'L',\n5133=>'L',\n5134=>'L',\n5135=>'L',\n5136=>'L',\n5137=>'L',\n5138=>'L',\n5139=>'L',\n5140=>'L',\n5141=>'L',\n5142=>'L',\n5143=>'L',\n5144=>'L',\n5145=>'L',\n5146=>'L',\n5147=>'L',\n5148=>'L',\n5149=>'L',\n5150=>'L',\n5151=>'L',\n5152=>'L',\n5153=>'L',\n5154=>'L',\n5155=>'L',\n5156=>'L',\n5157=>'L',\n5158=>'L',\n5159=>'L',\n5160=>'L',\n5161=>'L',\n5162=>'L',\n5163=>'L',\n5164=>'L',\n5165=>'L',\n5166=>'L',\n5167=>'L',\n5168=>'L',\n5169=>'L',\n5170=>'L',\n5171=>'L',\n5172=>'L',\n5173=>'L',\n5174=>'L',\n5175=>'L',\n5176=>'L',\n5177=>'L',\n5178=>'L',\n5179=>'L',\n5180=>'L',\n5181=>'L',\n5182=>'L',\n5183=>'L',\n5184=>'L',\n5185=>'L',\n5186=>'L',\n5187=>'L',\n5188=>'L',\n5189=>'L',\n5190=>'L',\n5191=>'L',\n5192=>'L',\n5193=>'L',\n5194=>'L',\n5195=>'L',\n5196=>'L',\n5197=>'L',\n5198=>'L',\n5199=>'L',\n5200=>'L',\n5201=>'L',\n5202=>'L',\n5203=>'L',\n5204=>'L',\n5205=>'L',\n5206=>'L',\n5207=>'L',\n5208=>'L',\n5209=>'L',\n5210=>'L',\n5211=>'L',\n5212=>'L',\n5213=>'L',\n5214=>'L',\n5215=>'L',\n5216=>'L',\n5217=>'L',\n5218=>'L',\n5219=>'L',\n5220=>'L',\n5221=>'L',\n5222=>'L',\n5223=>'L',\n5224=>'L',\n5225=>'L',\n5226=>'L',\n5227=>'L',\n5228=>'L',\n5229=>'L',\n5230=>'L',\n5231=>'L',\n5232=>'L',\n5233=>'L',\n5234=>'L',\n5235=>'L',\n5236=>'L',\n5237=>'L',\n5238=>'L',\n5239=>'L',\n5240=>'L',\n5241=>'L',\n5242=>'L',\n5243=>'L',\n5244=>'L',\n5245=>'L',\n5246=>'L',\n5247=>'L',\n5248=>'L',\n5249=>'L',\n5250=>'L',\n5251=>'L',\n5252=>'L',\n5253=>'L',\n5254=>'L',\n5255=>'L',\n5256=>'L',\n5257=>'L',\n5258=>'L',\n5259=>'L',\n5260=>'L',\n5261=>'L',\n5262=>'L',\n5263=>'L',\n5264=>'L',\n5265=>'L',\n5266=>'L',\n5267=>'L',\n5268=>'L',\n5269=>'L',\n5270=>'L',\n5271=>'L',\n5272=>'L',\n5273=>'L',\n5274=>'L',\n5275=>'L',\n5276=>'L',\n5277=>'L',\n5278=>'L',\n5279=>'L',\n5280=>'L',\n5281=>'L',\n5282=>'L',\n5283=>'L',\n5284=>'L',\n5285=>'L',\n5286=>'L',\n5287=>'L',\n5288=>'L',\n5289=>'L',\n5290=>'L',\n5291=>'L',\n5292=>'L',\n5293=>'L',\n5294=>'L',\n5295=>'L',\n5296=>'L',\n5297=>'L',\n5298=>'L',\n5299=>'L',\n5300=>'L',\n5301=>'L',\n5302=>'L',\n5303=>'L',\n5304=>'L',\n5305=>'L',\n5306=>'L',\n5307=>'L',\n5308=>'L',\n5309=>'L',\n5310=>'L',\n5311=>'L',\n5312=>'L',\n5313=>'L',\n5314=>'L',\n5315=>'L',\n5316=>'L',\n5317=>'L',\n5318=>'L',\n5319=>'L',\n5320=>'L',\n5321=>'L',\n5322=>'L',\n5323=>'L',\n5324=>'L',\n5325=>'L',\n5326=>'L',\n5327=>'L',\n5328=>'L',\n5329=>'L',\n5330=>'L',\n5331=>'L',\n5332=>'L',\n5333=>'L',\n5334=>'L',\n5335=>'L',\n5336=>'L',\n5337=>'L',\n5338=>'L',\n5339=>'L',\n5340=>'L',\n5341=>'L',\n5342=>'L',\n5343=>'L',\n5344=>'L',\n5345=>'L',\n5346=>'L',\n5347=>'L',\n5348=>'L',\n5349=>'L',\n5350=>'L',\n5351=>'L',\n5352=>'L',\n5353=>'L',\n5354=>'L',\n5355=>'L',\n5356=>'L',\n5357=>'L',\n5358=>'L',\n5359=>'L',\n5360=>'L',\n5361=>'L',\n5362=>'L',\n5363=>'L',\n5364=>'L',\n5365=>'L',\n5366=>'L',\n5367=>'L',\n5368=>'L',\n5369=>'L',\n5370=>'L',\n5371=>'L',\n5372=>'L',\n5373=>'L',\n5374=>'L',\n5375=>'L',\n5376=>'L',\n5377=>'L',\n5378=>'L',\n5379=>'L',\n5380=>'L',\n5381=>'L',\n5382=>'L',\n5383=>'L',\n5384=>'L',\n5385=>'L',\n5386=>'L',\n5387=>'L',\n5388=>'L',\n5389=>'L',\n5390=>'L',\n5391=>'L',\n5392=>'L',\n5393=>'L',\n5394=>'L',\n5395=>'L',\n5396=>'L',\n5397=>'L',\n5398=>'L',\n5399=>'L',\n5400=>'L',\n5401=>'L',\n5402=>'L',\n5403=>'L',\n5404=>'L',\n5405=>'L',\n5406=>'L',\n5407=>'L',\n5408=>'L',\n5409=>'L',\n5410=>'L',\n5411=>'L',\n5412=>'L',\n5413=>'L',\n5414=>'L',\n5415=>'L',\n5416=>'L',\n5417=>'L',\n5418=>'L',\n5419=>'L',\n5420=>'L',\n5421=>'L',\n5422=>'L',\n5423=>'L',\n5424=>'L',\n5425=>'L',\n5426=>'L',\n5427=>'L',\n5428=>'L',\n5429=>'L',\n5430=>'L',\n5431=>'L',\n5432=>'L',\n5433=>'L',\n5434=>'L',\n5435=>'L',\n5436=>'L',\n5437=>'L',\n5438=>'L',\n5439=>'L',\n5440=>'L',\n5441=>'L',\n5442=>'L',\n5443=>'L',\n5444=>'L',\n5445=>'L',\n5446=>'L',\n5447=>'L',\n5448=>'L',\n5449=>'L',\n5450=>'L',\n5451=>'L',\n5452=>'L',\n5453=>'L',\n5454=>'L',\n5455=>'L',\n5456=>'L',\n5457=>'L',\n5458=>'L',\n5459=>'L',\n5460=>'L',\n5461=>'L',\n5462=>'L',\n5463=>'L',\n5464=>'L',\n5465=>'L',\n5466=>'L',\n5467=>'L',\n5468=>'L',\n5469=>'L',\n5470=>'L',\n5471=>'L',\n5472=>'L',\n5473=>'L',\n5474=>'L',\n5475=>'L',\n5476=>'L',\n5477=>'L',\n5478=>'L',\n5479=>'L',\n5480=>'L',\n5481=>'L',\n5482=>'L',\n5483=>'L',\n5484=>'L',\n5485=>'L',\n5486=>'L',\n5487=>'L',\n5488=>'L',\n5489=>'L',\n5490=>'L',\n5491=>'L',\n5492=>'L',\n5493=>'L',\n5494=>'L',\n5495=>'L',\n5496=>'L',\n5497=>'L',\n5498=>'L',\n5499=>'L',\n5500=>'L',\n5501=>'L',\n5502=>'L',\n5503=>'L',\n5504=>'L',\n5505=>'L',\n5506=>'L',\n5507=>'L',\n5508=>'L',\n5509=>'L',\n5510=>'L',\n5511=>'L',\n5512=>'L',\n5513=>'L',\n5514=>'L',\n5515=>'L',\n5516=>'L',\n5517=>'L',\n5518=>'L',\n5519=>'L',\n5520=>'L',\n5521=>'L',\n5522=>'L',\n5523=>'L',\n5524=>'L',\n5525=>'L',\n5526=>'L',\n5527=>'L',\n5528=>'L',\n5529=>'L',\n5530=>'L',\n5531=>'L',\n5532=>'L',\n5533=>'L',\n5534=>'L',\n5535=>'L',\n5536=>'L',\n5537=>'L',\n5538=>'L',\n5539=>'L',\n5540=>'L',\n5541=>'L',\n5542=>'L',\n5543=>'L',\n5544=>'L',\n5545=>'L',\n5546=>'L',\n5547=>'L',\n5548=>'L',\n5549=>'L',\n5550=>'L',\n5551=>'L',\n5552=>'L',\n5553=>'L',\n5554=>'L',\n5555=>'L',\n5556=>'L',\n5557=>'L',\n5558=>'L',\n5559=>'L',\n5560=>'L',\n5561=>'L',\n5562=>'L',\n5563=>'L',\n5564=>'L',\n5565=>'L',\n5566=>'L',\n5567=>'L',\n5568=>'L',\n5569=>'L',\n5570=>'L',\n5571=>'L',\n5572=>'L',\n5573=>'L',\n5574=>'L',\n5575=>'L',\n5576=>'L',\n5577=>'L',\n5578=>'L',\n5579=>'L',\n5580=>'L',\n5581=>'L',\n5582=>'L',\n5583=>'L',\n5584=>'L',\n5585=>'L',\n5586=>'L',\n5587=>'L',\n5588=>'L',\n5589=>'L',\n5590=>'L',\n5591=>'L',\n5592=>'L',\n5593=>'L',\n5594=>'L',\n5595=>'L',\n5596=>'L',\n5597=>'L',\n5598=>'L',\n5599=>'L',\n5600=>'L',\n5601=>'L',\n5602=>'L',\n5603=>'L',\n5604=>'L',\n5605=>'L',\n5606=>'L',\n5607=>'L',\n5608=>'L',\n5609=>'L',\n5610=>'L',\n5611=>'L',\n5612=>'L',\n5613=>'L',\n5614=>'L',\n5615=>'L',\n5616=>'L',\n5617=>'L',\n5618=>'L',\n5619=>'L',\n5620=>'L',\n5621=>'L',\n5622=>'L',\n5623=>'L',\n5624=>'L',\n5625=>'L',\n5626=>'L',\n5627=>'L',\n5628=>'L',\n5629=>'L',\n5630=>'L',\n5631=>'L',\n5632=>'L',\n5633=>'L',\n5634=>'L',\n5635=>'L',\n5636=>'L',\n5637=>'L',\n5638=>'L',\n5639=>'L',\n5640=>'L',\n5641=>'L',\n5642=>'L',\n5643=>'L',\n5644=>'L',\n5645=>'L',\n5646=>'L',\n5647=>'L',\n5648=>'L',\n5649=>'L',\n5650=>'L',\n5651=>'L',\n5652=>'L',\n5653=>'L',\n5654=>'L',\n5655=>'L',\n5656=>'L',\n5657=>'L',\n5658=>'L',\n5659=>'L',\n5660=>'L',\n5661=>'L',\n5662=>'L',\n5663=>'L',\n5664=>'L',\n5665=>'L',\n5666=>'L',\n5667=>'L',\n5668=>'L',\n5669=>'L',\n5670=>'L',\n5671=>'L',\n5672=>'L',\n5673=>'L',\n5674=>'L',\n5675=>'L',\n5676=>'L',\n5677=>'L',\n5678=>'L',\n5679=>'L',\n5680=>'L',\n5681=>'L',\n5682=>'L',\n5683=>'L',\n5684=>'L',\n5685=>'L',\n5686=>'L',\n5687=>'L',\n5688=>'L',\n5689=>'L',\n5690=>'L',\n5691=>'L',\n5692=>'L',\n5693=>'L',\n5694=>'L',\n5695=>'L',\n5696=>'L',\n5697=>'L',\n5698=>'L',\n5699=>'L',\n5700=>'L',\n5701=>'L',\n5702=>'L',\n5703=>'L',\n5704=>'L',\n5705=>'L',\n5706=>'L',\n5707=>'L',\n5708=>'L',\n5709=>'L',\n5710=>'L',\n5711=>'L',\n5712=>'L',\n5713=>'L',\n5714=>'L',\n5715=>'L',\n5716=>'L',\n5717=>'L',\n5718=>'L',\n5719=>'L',\n5720=>'L',\n5721=>'L',\n5722=>'L',\n5723=>'L',\n5724=>'L',\n5725=>'L',\n5726=>'L',\n5727=>'L',\n5728=>'L',\n5729=>'L',\n5730=>'L',\n5731=>'L',\n5732=>'L',\n5733=>'L',\n5734=>'L',\n5735=>'L',\n5736=>'L',\n5737=>'L',\n5738=>'L',\n5739=>'L',\n5740=>'L',\n5741=>'L',\n5742=>'L',\n5743=>'L',\n5744=>'L',\n5745=>'L',\n5746=>'L',\n5747=>'L',\n5748=>'L',\n5749=>'L',\n5750=>'L',\n5760=>'WS',\n5761=>'L',\n5762=>'L',\n5763=>'L',\n5764=>'L',\n5765=>'L',\n5766=>'L',\n5767=>'L',\n5768=>'L',\n5769=>'L',\n5770=>'L',\n5771=>'L',\n5772=>'L',\n5773=>'L',\n5774=>'L',\n5775=>'L',\n5776=>'L',\n5777=>'L',\n5778=>'L',\n5779=>'L',\n5780=>'L',\n5781=>'L',\n5782=>'L',\n5783=>'L',\n5784=>'L',\n5785=>'L',\n5786=>'L',\n5787=>'ON',\n5788=>'ON',\n5792=>'L',\n5793=>'L',\n5794=>'L',\n5795=>'L',\n5796=>'L',\n5797=>'L',\n5798=>'L',\n5799=>'L',\n5800=>'L',\n5801=>'L',\n5802=>'L',\n5803=>'L',\n5804=>'L',\n5805=>'L',\n5806=>'L',\n5807=>'L',\n5808=>'L',\n5809=>'L',\n5810=>'L',\n5811=>'L',\n5812=>'L',\n5813=>'L',\n5814=>'L',\n5815=>'L',\n5816=>'L',\n5817=>'L',\n5818=>'L',\n5819=>'L',\n5820=>'L',\n5821=>'L',\n5822=>'L',\n5823=>'L',\n5824=>'L',\n5825=>'L',\n5826=>'L',\n5827=>'L',\n5828=>'L',\n5829=>'L',\n5830=>'L',\n5831=>'L',\n5832=>'L',\n5833=>'L',\n5834=>'L',\n5835=>'L',\n5836=>'L',\n5837=>'L',\n5838=>'L',\n5839=>'L',\n5840=>'L',\n5841=>'L',\n5842=>'L',\n5843=>'L',\n5844=>'L',\n5845=>'L',\n5846=>'L',\n5847=>'L',\n5848=>'L',\n5849=>'L',\n5850=>'L',\n5851=>'L',\n5852=>'L',\n5853=>'L',\n5854=>'L',\n5855=>'L',\n5856=>'L',\n5857=>'L',\n5858=>'L',\n5859=>'L',\n5860=>'L',\n5861=>'L',\n5862=>'L',\n5863=>'L',\n5864=>'L',\n5865=>'L',\n5866=>'L',\n5867=>'L',\n5868=>'L',\n5869=>'L',\n5870=>'L',\n5871=>'L',\n5872=>'L',\n5888=>'L',\n5889=>'L',\n5890=>'L',\n5891=>'L',\n5892=>'L',\n5893=>'L',\n5894=>'L',\n5895=>'L',\n5896=>'L',\n5897=>'L',\n5898=>'L',\n5899=>'L',\n5900=>'L',\n5902=>'L',\n5903=>'L',\n5904=>'L',\n5905=>'L',\n5906=>'NSM',\n5907=>'NSM',\n5908=>'NSM',\n5920=>'L',\n5921=>'L',\n5922=>'L',\n5923=>'L',\n5924=>'L',\n5925=>'L',\n5926=>'L',\n5927=>'L',\n5928=>'L',\n5929=>'L',\n5930=>'L',\n5931=>'L',\n5932=>'L',\n5933=>'L',\n5934=>'L',\n5935=>'L',\n5936=>'L',\n5937=>'L',\n5938=>'NSM',\n5939=>'NSM',\n5940=>'NSM',\n5941=>'L',\n5942=>'L',\n5952=>'L',\n5953=>'L',\n5954=>'L',\n5955=>'L',\n5956=>'L',\n5957=>'L',\n5958=>'L',\n5959=>'L',\n5960=>'L',\n5961=>'L',\n5962=>'L',\n5963=>'L',\n5964=>'L',\n5965=>'L',\n5966=>'L',\n5967=>'L',\n5968=>'L',\n5969=>'L',\n5970=>'NSM',\n5971=>'NSM',\n5984=>'L',\n5985=>'L',\n5986=>'L',\n5987=>'L',\n5988=>'L',\n5989=>'L',\n5990=>'L',\n5991=>'L',\n5992=>'L',\n5993=>'L',\n5994=>'L',\n5995=>'L',\n5996=>'L',\n5998=>'L',\n5999=>'L',\n6000=>'L',\n6002=>'NSM',\n6003=>'NSM',\n6016=>'L',\n6017=>'L',\n6018=>'L',\n6019=>'L',\n6020=>'L',\n6021=>'L',\n6022=>'L',\n6023=>'L',\n6024=>'L',\n6025=>'L',\n6026=>'L',\n6027=>'L',\n6028=>'L',\n6029=>'L',\n6030=>'L',\n6031=>'L',\n6032=>'L',\n6033=>'L',\n6034=>'L',\n6035=>'L',\n6036=>'L',\n6037=>'L',\n6038=>'L',\n6039=>'L',\n6040=>'L',\n6041=>'L',\n6042=>'L',\n6043=>'L',\n6044=>'L',\n6045=>'L',\n6046=>'L',\n6047=>'L',\n6048=>'L',\n6049=>'L',\n6050=>'L',\n6051=>'L',\n6052=>'L',\n6053=>'L',\n6054=>'L',\n6055=>'L',\n6056=>'L',\n6057=>'L',\n6058=>'L',\n6059=>'L',\n6060=>'L',\n6061=>'L',\n6062=>'L',\n6063=>'L',\n6064=>'L',\n6065=>'L',\n6066=>'L',\n6067=>'L',\n6068=>'L',\n6069=>'L',\n6070=>'L',\n6071=>'NSM',\n6072=>'NSM',\n6073=>'NSM',\n6074=>'NSM',\n6075=>'NSM',\n6076=>'NSM',\n6077=>'NSM',\n6078=>'L',\n6079=>'L',\n6080=>'L',\n6081=>'L',\n6082=>'L',\n6083=>'L',\n6084=>'L',\n6085=>'L',\n6086=>'NSM',\n6087=>'L',\n6088=>'L',\n6089=>'NSM',\n6090=>'NSM',\n6091=>'NSM',\n6092=>'NSM',\n6093=>'NSM',\n6094=>'NSM',\n6095=>'NSM',\n6096=>'NSM',\n6097=>'NSM',\n6098=>'NSM',\n6099=>'NSM',\n6100=>'L',\n6101=>'L',\n6102=>'L',\n6103=>'L',\n6104=>'L',\n6105=>'L',\n6106=>'L',\n6107=>'ET',\n6108=>'L',\n6109=>'NSM',\n6112=>'L',\n6113=>'L',\n6114=>'L',\n6115=>'L',\n6116=>'L',\n6117=>'L',\n6118=>'L',\n6119=>'L',\n6120=>'L',\n6121=>'L',\n6128=>'ON',\n6129=>'ON',\n6130=>'ON',\n6131=>'ON',\n6132=>'ON',\n6133=>'ON',\n6134=>'ON',\n6135=>'ON',\n6136=>'ON',\n6137=>'ON',\n6144=>'ON',\n6145=>'ON',\n6146=>'ON',\n6147=>'ON',\n6148=>'ON',\n6149=>'ON',\n6150=>'ON',\n6151=>'ON',\n6152=>'ON',\n6153=>'ON',\n6154=>'ON',\n6155=>'NSM',\n6156=>'NSM',\n6157=>'NSM',\n6158=>'WS',\n6160=>'L',\n6161=>'L',\n6162=>'L',\n6163=>'L',\n6164=>'L',\n6165=>'L',\n6166=>'L',\n6167=>'L',\n6168=>'L',\n6169=>'L',\n6176=>'L',\n6177=>'L',\n6178=>'L',\n6179=>'L',\n6180=>'L',\n6181=>'L',\n6182=>'L',\n6183=>'L',\n6184=>'L',\n6185=>'L',\n6186=>'L',\n6187=>'L',\n6188=>'L',\n6189=>'L',\n6190=>'L',\n6191=>'L',\n6192=>'L',\n6193=>'L',\n6194=>'L',\n6195=>'L',\n6196=>'L',\n6197=>'L',\n6198=>'L',\n6199=>'L',\n6200=>'L',\n6201=>'L',\n6202=>'L',\n6203=>'L',\n6204=>'L',\n6205=>'L',\n6206=>'L',\n6207=>'L',\n6208=>'L',\n6209=>'L',\n6210=>'L',\n6211=>'L',\n6212=>'L',\n6213=>'L',\n6214=>'L',\n6215=>'L',\n6216=>'L',\n6217=>'L',\n6218=>'L',\n6219=>'L',\n6220=>'L',\n6221=>'L',\n6222=>'L',\n6223=>'L',\n6224=>'L',\n6225=>'L',\n6226=>'L',\n6227=>'L',\n6228=>'L',\n6229=>'L',\n6230=>'L',\n6231=>'L',\n6232=>'L',\n6233=>'L',\n6234=>'L',\n6235=>'L',\n6236=>'L',\n6237=>'L',\n6238=>'L',\n6239=>'L',\n6240=>'L',\n6241=>'L',\n6242=>'L',\n6243=>'L',\n6244=>'L',\n6245=>'L',\n6246=>'L',\n6247=>'L',\n6248=>'L',\n6249=>'L',\n6250=>'L',\n6251=>'L',\n6252=>'L',\n6253=>'L',\n6254=>'L',\n6255=>'L',\n6256=>'L',\n6257=>'L',\n6258=>'L',\n6259=>'L',\n6260=>'L',\n6261=>'L',\n6262=>'L',\n6263=>'L',\n6272=>'L',\n6273=>'L',\n6274=>'L',\n6275=>'L',\n6276=>'L',\n6277=>'L',\n6278=>'L',\n6279=>'L',\n6280=>'L',\n6281=>'L',\n6282=>'L',\n6283=>'L',\n6284=>'L',\n6285=>'L',\n6286=>'L',\n6287=>'L',\n6288=>'L',\n6289=>'L',\n6290=>'L',\n6291=>'L',\n6292=>'L',\n6293=>'L',\n6294=>'L',\n6295=>'L',\n6296=>'L',\n6297=>'L',\n6298=>'L',\n6299=>'L',\n6300=>'L',\n6301=>'L',\n6302=>'L',\n6303=>'L',\n6304=>'L',\n6305=>'L',\n6306=>'L',\n6307=>'L',\n6308=>'L',\n6309=>'L',\n6310=>'L',\n6311=>'L',\n6312=>'L',\n6313=>'NSM',\n6400=>'L',\n6401=>'L',\n6402=>'L',\n6403=>'L',\n6404=>'L',\n6405=>'L',\n6406=>'L',\n6407=>'L',\n6408=>'L',\n6409=>'L',\n6410=>'L',\n6411=>'L',\n6412=>'L',\n6413=>'L',\n6414=>'L',\n6415=>'L',\n6416=>'L',\n6417=>'L',\n6418=>'L',\n6419=>'L',\n6420=>'L',\n6421=>'L',\n6422=>'L',\n6423=>'L',\n6424=>'L',\n6425=>'L',\n6426=>'L',\n6427=>'L',\n6428=>'L',\n6432=>'NSM',\n6433=>'NSM',\n6434=>'NSM',\n6435=>'L',\n6436=>'L',\n6437=>'L',\n6438=>'L',\n6439=>'NSM',\n6440=>'NSM',\n6441=>'NSM',\n6442=>'NSM',\n6443=>'NSM',\n6448=>'L',\n6449=>'L',\n6450=>'NSM',\n6451=>'L',\n6452=>'L',\n6453=>'L',\n6454=>'L',\n6455=>'L',\n6456=>'L',\n6457=>'NSM',\n6458=>'NSM',\n6459=>'NSM',\n6464=>'ON',\n6468=>'ON',\n6469=>'ON',\n6470=>'L',\n6471=>'L',\n6472=>'L',\n6473=>'L',\n6474=>'L',\n6475=>'L',\n6476=>'L',\n6477=>'L',\n6478=>'L',\n6479=>'L',\n6480=>'L',\n6481=>'L',\n6482=>'L',\n6483=>'L',\n6484=>'L',\n6485=>'L',\n6486=>'L',\n6487=>'L',\n6488=>'L',\n6489=>'L',\n6490=>'L',\n6491=>'L',\n6492=>'L',\n6493=>'L',\n6494=>'L',\n6495=>'L',\n6496=>'L',\n6497=>'L',\n6498=>'L',\n6499=>'L',\n6500=>'L',\n6501=>'L',\n6502=>'L',\n6503=>'L',\n6504=>'L',\n6505=>'L',\n6506=>'L',\n6507=>'L',\n6508=>'L',\n6509=>'L',\n6512=>'L',\n6513=>'L',\n6514=>'L',\n6515=>'L',\n6516=>'L',\n6528=>'L',\n6529=>'L',\n6530=>'L',\n6531=>'L',\n6532=>'L',\n6533=>'L',\n6534=>'L',\n6535=>'L',\n6536=>'L',\n6537=>'L',\n6538=>'L',\n6539=>'L',\n6540=>'L',\n6541=>'L',\n6542=>'L',\n6543=>'L',\n6544=>'L',\n6545=>'L',\n6546=>'L',\n6547=>'L',\n6548=>'L',\n6549=>'L',\n6550=>'L',\n6551=>'L',\n6552=>'L',\n6553=>'L',\n6554=>'L',\n6555=>'L',\n6556=>'L',\n6557=>'L',\n6558=>'L',\n6559=>'L',\n6560=>'L',\n6561=>'L',\n6562=>'L',\n6563=>'L',\n6564=>'L',\n6565=>'L',\n6566=>'L',\n6567=>'L',\n6568=>'L',\n6569=>'L',\n6576=>'L',\n6577=>'L',\n6578=>'L',\n6579=>'L',\n6580=>'L',\n6581=>'L',\n6582=>'L',\n6583=>'L',\n6584=>'L',\n6585=>'L',\n6586=>'L',\n6587=>'L',\n6588=>'L',\n6589=>'L',\n6590=>'L',\n6591=>'L',\n6592=>'L',\n6593=>'L',\n6594=>'L',\n6595=>'L',\n6596=>'L',\n6597=>'L',\n6598=>'L',\n6599=>'L',\n6600=>'L',\n6601=>'L',\n6608=>'L',\n6609=>'L',\n6610=>'L',\n6611=>'L',\n6612=>'L',\n6613=>'L',\n6614=>'L',\n6615=>'L',\n6616=>'L',\n6617=>'L',\n6622=>'ON',\n6623=>'ON',\n6624=>'ON',\n6625=>'ON',\n6626=>'ON',\n6627=>'ON',\n6628=>'ON',\n6629=>'ON',\n6630=>'ON',\n6631=>'ON',\n6632=>'ON',\n6633=>'ON',\n6634=>'ON',\n6635=>'ON',\n6636=>'ON',\n6637=>'ON',\n6638=>'ON',\n6639=>'ON',\n6640=>'ON',\n6641=>'ON',\n6642=>'ON',\n6643=>'ON',\n6644=>'ON',\n6645=>'ON',\n6646=>'ON',\n6647=>'ON',\n6648=>'ON',\n6649=>'ON',\n6650=>'ON',\n6651=>'ON',\n6652=>'ON',\n6653=>'ON',\n6654=>'ON',\n6655=>'ON',\n6656=>'L',\n6657=>'L',\n6658=>'L',\n6659=>'L',\n6660=>'L',\n6661=>'L',\n6662=>'L',\n6663=>'L',\n6664=>'L',\n6665=>'L',\n6666=>'L',\n6667=>'L',\n6668=>'L',\n6669=>'L',\n6670=>'L',\n6671=>'L',\n6672=>'L',\n6673=>'L',\n6674=>'L',\n6675=>'L',\n6676=>'L',\n6677=>'L',\n6678=>'L',\n6679=>'NSM',\n6680=>'NSM',\n6681=>'L',\n6682=>'L',\n6683=>'L',\n6686=>'L',\n6687=>'L',\n6912=>'NSM',\n6913=>'NSM',\n6914=>'NSM',\n6915=>'NSM',\n6916=>'L',\n6917=>'L',\n6918=>'L',\n6919=>'L',\n6920=>'L',\n6921=>'L',\n6922=>'L',\n6923=>'L',\n6924=>'L',\n6925=>'L',\n6926=>'L',\n6927=>'L',\n6928=>'L',\n6929=>'L',\n6930=>'L',\n6931=>'L',\n6932=>'L',\n6933=>'L',\n6934=>'L',\n6935=>'L',\n6936=>'L',\n6937=>'L',\n6938=>'L',\n6939=>'L',\n6940=>'L',\n6941=>'L',\n6942=>'L',\n6943=>'L',\n6944=>'L',\n6945=>'L',\n6946=>'L',\n6947=>'L',\n6948=>'L',\n6949=>'L',\n6950=>'L',\n6951=>'L',\n6952=>'L',\n6953=>'L',\n6954=>'L',\n6955=>'L',\n6956=>'L',\n6957=>'L',\n6958=>'L',\n6959=>'L',\n6960=>'L',\n6961=>'L',\n6962=>'L',\n6963=>'L',\n6964=>'NSM',\n6965=>'L',\n6966=>'NSM',\n6967=>'NSM',\n6968=>'NSM',\n6969=>'NSM',\n6970=>'NSM',\n6971=>'L',\n6972=>'NSM',\n6973=>'L',\n6974=>'L',\n6975=>'L',\n6976=>'L',\n6977=>'L',\n6978=>'NSM',\n6979=>'L',\n6980=>'L',\n6981=>'L',\n6982=>'L',\n6983=>'L',\n6984=>'L',\n6985=>'L',\n6986=>'L',\n6987=>'L',\n6992=>'L',\n6993=>'L',\n6994=>'L',\n6995=>'L',\n6996=>'L',\n6997=>'L',\n6998=>'L',\n6999=>'L',\n7000=>'L',\n7001=>'L',\n7002=>'L',\n7003=>'L',\n7004=>'L',\n7005=>'L',\n7006=>'L',\n7007=>'L',\n7008=>'L',\n7009=>'L',\n7010=>'L',\n7011=>'L',\n7012=>'L',\n7013=>'L',\n7014=>'L',\n7015=>'L',\n7016=>'L',\n7017=>'L',\n7018=>'L',\n7019=>'NSM',\n7020=>'NSM',\n7021=>'NSM',\n7022=>'NSM',\n7023=>'NSM',\n7024=>'NSM',\n7025=>'NSM',\n7026=>'NSM',\n7027=>'NSM',\n7028=>'L',\n7029=>'L',\n7030=>'L',\n7031=>'L',\n7032=>'L',\n7033=>'L',\n7034=>'L',\n7035=>'L',\n7036=>'L',\n7424=>'L',\n7425=>'L',\n7426=>'L',\n7427=>'L',\n7428=>'L',\n7429=>'L',\n7430=>'L',\n7431=>'L',\n7432=>'L',\n7433=>'L',\n7434=>'L',\n7435=>'L',\n7436=>'L',\n7437=>'L',\n7438=>'L',\n7439=>'L',\n7440=>'L',\n7441=>'L',\n7442=>'L',\n7443=>'L',\n7444=>'L',\n7445=>'L',\n7446=>'L',\n7447=>'L',\n7448=>'L',\n7449=>'L',\n7450=>'L',\n7451=>'L',\n7452=>'L',\n7453=>'L',\n7454=>'L',\n7455=>'L',\n7456=>'L',\n7457=>'L',\n7458=>'L',\n7459=>'L',\n7460=>'L',\n7461=>'L',\n7462=>'L',\n7463=>'L',\n7464=>'L',\n7465=>'L',\n7466=>'L',\n7467=>'L',\n7468=>'L',\n7469=>'L',\n7470=>'L',\n7471=>'L',\n7472=>'L',\n7473=>'L',\n7474=>'L',\n7475=>'L',\n7476=>'L',\n7477=>'L',\n7478=>'L',\n7479=>'L',\n7480=>'L',\n7481=>'L',\n7482=>'L',\n7483=>'L',\n7484=>'L',\n7485=>'L',\n7486=>'L',\n7487=>'L',\n7488=>'L',\n7489=>'L',\n7490=>'L',\n7491=>'L',\n7492=>'L',\n7493=>'L',\n7494=>'L',\n7495=>'L',\n7496=>'L',\n7497=>'L',\n7498=>'L',\n7499=>'L',\n7500=>'L',\n7501=>'L',\n7502=>'L',\n7503=>'L',\n7504=>'L',\n7505=>'L',\n7506=>'L',\n7507=>'L',\n7508=>'L',\n7509=>'L',\n7510=>'L',\n7511=>'L',\n7512=>'L',\n7513=>'L',\n7514=>'L',\n7515=>'L',\n7516=>'L',\n7517=>'L',\n7518=>'L',\n7519=>'L',\n7520=>'L',\n7521=>'L',\n7522=>'L',\n7523=>'L',\n7524=>'L',\n7525=>'L',\n7526=>'L',\n7527=>'L',\n7528=>'L',\n7529=>'L',\n7530=>'L',\n7531=>'L',\n7532=>'L',\n7533=>'L',\n7534=>'L',\n7535=>'L',\n7536=>'L',\n7537=>'L',\n7538=>'L',\n7539=>'L',\n7540=>'L',\n7541=>'L',\n7542=>'L',\n7543=>'L',\n7544=>'L',\n7545=>'L',\n7546=>'L',\n7547=>'L',\n7548=>'L',\n7549=>'L',\n7550=>'L',\n7551=>'L',\n7552=>'L',\n7553=>'L',\n7554=>'L',\n7555=>'L',\n7556=>'L',\n7557=>'L',\n7558=>'L',\n7559=>'L',\n7560=>'L',\n7561=>'L',\n7562=>'L',\n7563=>'L',\n7564=>'L',\n7565=>'L',\n7566=>'L',\n7567=>'L',\n7568=>'L',\n7569=>'L',\n7570=>'L',\n7571=>'L',\n7572=>'L',\n7573=>'L',\n7574=>'L',\n7575=>'L',\n7576=>'L',\n7577=>'L',\n7578=>'L',\n7579=>'L',\n7580=>'L',\n7581=>'L',\n7582=>'L',\n7583=>'L',\n7584=>'L',\n7585=>'L',\n7586=>'L',\n7587=>'L',\n7588=>'L',\n7589=>'L',\n7590=>'L',\n7591=>'L',\n7592=>'L',\n7593=>'L',\n7594=>'L',\n7595=>'L',\n7596=>'L',\n7597=>'L',\n7598=>'L',\n7599=>'L',\n7600=>'L',\n7601=>'L',\n7602=>'L',\n7603=>'L',\n7604=>'L',\n7605=>'L',\n7606=>'L',\n7607=>'L',\n7608=>'L',\n7609=>'L',\n7610=>'L',\n7611=>'L',\n7612=>'L',\n7613=>'L',\n7614=>'L',\n7615=>'L',\n7616=>'NSM',\n7617=>'NSM',\n7618=>'NSM',\n7619=>'NSM',\n7620=>'NSM',\n7621=>'NSM',\n7622=>'NSM',\n7623=>'NSM',\n7624=>'NSM',\n7625=>'NSM',\n7626=>'NSM',\n7678=>'NSM',\n7679=>'NSM',\n7680=>'L',\n7681=>'L',\n7682=>'L',\n7683=>'L',\n7684=>'L',\n7685=>'L',\n7686=>'L',\n7687=>'L',\n7688=>'L',\n7689=>'L',\n7690=>'L',\n7691=>'L',\n7692=>'L',\n7693=>'L',\n7694=>'L',\n7695=>'L',\n7696=>'L',\n7697=>'L',\n7698=>'L',\n7699=>'L',\n7700=>'L',\n7701=>'L',\n7702=>'L',\n7703=>'L',\n7704=>'L',\n7705=>'L',\n7706=>'L',\n7707=>'L',\n7708=>'L',\n7709=>'L',\n7710=>'L',\n7711=>'L',\n7712=>'L',\n7713=>'L',\n7714=>'L',\n7715=>'L',\n7716=>'L',\n7717=>'L',\n7718=>'L',\n7719=>'L',\n7720=>'L',\n7721=>'L',\n7722=>'L',\n7723=>'L',\n7724=>'L',\n7725=>'L',\n7726=>'L',\n7727=>'L',\n7728=>'L',\n7729=>'L',\n7730=>'L',\n7731=>'L',\n7732=>'L',\n7733=>'L',\n7734=>'L',\n7735=>'L',\n7736=>'L',\n7737=>'L',\n7738=>'L',\n7739=>'L',\n7740=>'L',\n7741=>'L',\n7742=>'L',\n7743=>'L',\n7744=>'L',\n7745=>'L',\n7746=>'L',\n7747=>'L',\n7748=>'L',\n7749=>'L',\n7750=>'L',\n7751=>'L',\n7752=>'L',\n7753=>'L',\n7754=>'L',\n7755=>'L',\n7756=>'L',\n7757=>'L',\n7758=>'L',\n7759=>'L',\n7760=>'L',\n7761=>'L',\n7762=>'L',\n7763=>'L',\n7764=>'L',\n7765=>'L',\n7766=>'L',\n7767=>'L',\n7768=>'L',\n7769=>'L',\n7770=>'L',\n7771=>'L',\n7772=>'L',\n7773=>'L',\n7774=>'L',\n7775=>'L',\n7776=>'L',\n7777=>'L',\n7778=>'L',\n7779=>'L',\n7780=>'L',\n7781=>'L',\n7782=>'L',\n7783=>'L',\n7784=>'L',\n7785=>'L',\n7786=>'L',\n7787=>'L',\n7788=>'L',\n7789=>'L',\n7790=>'L',\n7791=>'L',\n7792=>'L',\n7793=>'L',\n7794=>'L',\n7795=>'L',\n7796=>'L',\n7797=>'L',\n7798=>'L',\n7799=>'L',\n7800=>'L',\n7801=>'L',\n7802=>'L',\n7803=>'L',\n7804=>'L',\n7805=>'L',\n7806=>'L',\n7807=>'L',\n7808=>'L',\n7809=>'L',\n7810=>'L',\n7811=>'L',\n7812=>'L',\n7813=>'L',\n7814=>'L',\n7815=>'L',\n7816=>'L',\n7817=>'L',\n7818=>'L',\n7819=>'L',\n7820=>'L',\n7821=>'L',\n7822=>'L',\n7823=>'L',\n7824=>'L',\n7825=>'L',\n7826=>'L',\n7827=>'L',\n7828=>'L',\n7829=>'L',\n7830=>'L',\n7831=>'L',\n7832=>'L',\n7833=>'L',\n7834=>'L',\n7835=>'L',\n7840=>'L',\n7841=>'L',\n7842=>'L',\n7843=>'L',\n7844=>'L',\n7845=>'L',\n7846=>'L',\n7847=>'L',\n7848=>'L',\n7849=>'L',\n7850=>'L',\n7851=>'L',\n7852=>'L',\n7853=>'L',\n7854=>'L',\n7855=>'L',\n7856=>'L',\n7857=>'L',\n7858=>'L',\n7859=>'L',\n7860=>'L',\n7861=>'L',\n7862=>'L',\n7863=>'L',\n7864=>'L',\n7865=>'L',\n7866=>'L',\n7867=>'L',\n7868=>'L',\n7869=>'L',\n7870=>'L',\n7871=>'L',\n7872=>'L',\n7873=>'L',\n7874=>'L',\n7875=>'L',\n7876=>'L',\n7877=>'L',\n7878=>'L',\n7879=>'L',\n7880=>'L',\n7881=>'L',\n7882=>'L',\n7883=>'L',\n7884=>'L',\n7885=>'L',\n7886=>'L',\n7887=>'L',\n7888=>'L',\n7889=>'L',\n7890=>'L',\n7891=>'L',\n7892=>'L',\n7893=>'L',\n7894=>'L',\n7895=>'L',\n7896=>'L',\n7897=>'L',\n7898=>'L',\n7899=>'L',\n7900=>'L',\n7901=>'L',\n7902=>'L',\n7903=>'L',\n7904=>'L',\n7905=>'L',\n7906=>'L',\n7907=>'L',\n7908=>'L',\n7909=>'L',\n7910=>'L',\n7911=>'L',\n7912=>'L',\n7913=>'L',\n7914=>'L',\n7915=>'L',\n7916=>'L',\n7917=>'L',\n7918=>'L',\n7919=>'L',\n7920=>'L',\n7921=>'L',\n7922=>'L',\n7923=>'L',\n7924=>'L',\n7925=>'L',\n7926=>'L',\n7927=>'L',\n7928=>'L',\n7929=>'L',\n7936=>'L',\n7937=>'L',\n7938=>'L',\n7939=>'L',\n7940=>'L',\n7941=>'L',\n7942=>'L',\n7943=>'L',\n7944=>'L',\n7945=>'L',\n7946=>'L',\n7947=>'L',\n7948=>'L',\n7949=>'L',\n7950=>'L',\n7951=>'L',\n7952=>'L',\n7953=>'L',\n7954=>'L',\n7955=>'L',\n7956=>'L',\n7957=>'L',\n7960=>'L',\n7961=>'L',\n7962=>'L',\n7963=>'L',\n7964=>'L',\n7965=>'L',\n7968=>'L',\n7969=>'L',\n7970=>'L',\n7971=>'L',\n7972=>'L',\n7973=>'L',\n7974=>'L',\n7975=>'L',\n7976=>'L',\n7977=>'L',\n7978=>'L',\n7979=>'L',\n7980=>'L',\n7981=>'L',\n7982=>'L',\n7983=>'L',\n7984=>'L',\n7985=>'L',\n7986=>'L',\n7987=>'L',\n7988=>'L',\n7989=>'L',\n7990=>'L',\n7991=>'L',\n7992=>'L',\n7993=>'L',\n7994=>'L',\n7995=>'L',\n7996=>'L',\n7997=>'L',\n7998=>'L',\n7999=>'L',\n8000=>'L',\n8001=>'L',\n8002=>'L',\n8003=>'L',\n8004=>'L',\n8005=>'L',\n8008=>'L',\n8009=>'L',\n8010=>'L',\n8011=>'L',\n8012=>'L',\n8013=>'L',\n8016=>'L',\n8017=>'L',\n8018=>'L',\n8019=>'L',\n8020=>'L',\n8021=>'L',\n8022=>'L',\n8023=>'L',\n8025=>'L',\n8027=>'L',\n8029=>'L',\n8031=>'L',\n8032=>'L',\n8033=>'L',\n8034=>'L',\n8035=>'L',\n8036=>'L',\n8037=>'L',\n8038=>'L',\n8039=>'L',\n8040=>'L',\n8041=>'L',\n8042=>'L',\n8043=>'L',\n8044=>'L',\n8045=>'L',\n8046=>'L',\n8047=>'L',\n8048=>'L',\n8049=>'L',\n8050=>'L',\n8051=>'L',\n8052=>'L',\n8053=>'L',\n8054=>'L',\n8055=>'L',\n8056=>'L',\n8057=>'L',\n8058=>'L',\n8059=>'L',\n8060=>'L',\n8061=>'L',\n8064=>'L',\n8065=>'L',\n8066=>'L',\n8067=>'L',\n8068=>'L',\n8069=>'L',\n8070=>'L',\n8071=>'L',\n8072=>'L',\n8073=>'L',\n8074=>'L',\n8075=>'L',\n8076=>'L',\n8077=>'L',\n8078=>'L',\n8079=>'L',\n8080=>'L',\n8081=>'L',\n8082=>'L',\n8083=>'L',\n8084=>'L',\n8085=>'L',\n8086=>'L',\n8087=>'L',\n8088=>'L',\n8089=>'L',\n8090=>'L',\n8091=>'L',\n8092=>'L',\n8093=>'L',\n8094=>'L',\n8095=>'L',\n8096=>'L',\n8097=>'L',\n8098=>'L',\n8099=>'L',\n8100=>'L',\n8101=>'L',\n8102=>'L',\n8103=>'L',\n8104=>'L',\n8105=>'L',\n8106=>'L',\n8107=>'L',\n8108=>'L',\n8109=>'L',\n8110=>'L',\n8111=>'L',\n8112=>'L',\n8113=>'L',\n8114=>'L',\n8115=>'L',\n8116=>'L',\n8118=>'L',\n8119=>'L',\n8120=>'L',\n8121=>'L',\n8122=>'L',\n8123=>'L',\n8124=>'L',\n8125=>'ON',\n8126=>'L',\n8127=>'ON',\n8128=>'ON',\n8129=>'ON',\n8130=>'L',\n8131=>'L',\n8132=>'L',\n8134=>'L',\n8135=>'L',\n8136=>'L',\n8137=>'L',\n8138=>'L',\n8139=>'L',\n8140=>'L',\n8141=>'ON',\n8142=>'ON',\n8143=>'ON',\n8144=>'L',\n8145=>'L',\n8146=>'L',\n8147=>'L',\n8150=>'L',\n8151=>'L',\n8152=>'L',\n8153=>'L',\n8154=>'L',\n8155=>'L',\n8157=>'ON',\n8158=>'ON',\n8159=>'ON',\n8160=>'L',\n8161=>'L',\n8162=>'L',\n8163=>'L',\n8164=>'L',\n8165=>'L',\n8166=>'L',\n8167=>'L',\n8168=>'L',\n8169=>'L',\n8170=>'L',\n8171=>'L',\n8172=>'L',\n8173=>'ON',\n8174=>'ON',\n8175=>'ON',\n8178=>'L',\n8179=>'L',\n8180=>'L',\n8182=>'L',\n8183=>'L',\n8184=>'L',\n8185=>'L',\n8186=>'L',\n8187=>'L',\n8188=>'L',\n8189=>'ON',\n8190=>'ON',\n8192=>'WS',\n8193=>'WS',\n8194=>'WS',\n8195=>'WS',\n8196=>'WS',\n8197=>'WS',\n8198=>'WS',\n8199=>'WS',\n8200=>'WS',\n8201=>'WS',\n8202=>'WS',\n8203=>'BN',\n8204=>'BN',\n8205=>'BN',\n8206=>'L',\n8207=>'R',\n8208=>'ON',\n8209=>'ON',\n8210=>'ON',\n8211=>'ON',\n8212=>'ON',\n8213=>'ON',\n8214=>'ON',\n8215=>'ON',\n8216=>'ON',\n8217=>'ON',\n8218=>'ON',\n8219=>'ON',\n8220=>'ON',\n8221=>'ON',\n8222=>'ON',\n8223=>'ON',\n8224=>'ON',\n8225=>'ON',\n8226=>'ON',\n8227=>'ON',\n8228=>'ON',\n8229=>'ON',\n8230=>'ON',\n8231=>'ON',\n8232=>'WS',\n8233=>'B',\n8234=>'LRE',\n8235=>'RLE',\n8236=>'PDF',\n8237=>'LRO',\n8238=>'RLO',\n8239=>'CS',\n8240=>'ET',\n8241=>'ET',\n8242=>'ET',\n8243=>'ET',\n8244=>'ET',\n8245=>'ON',\n8246=>'ON',\n8247=>'ON',\n8248=>'ON',\n8249=>'ON',\n8250=>'ON',\n8251=>'ON',\n8252=>'ON',\n8253=>'ON',\n8254=>'ON',\n8255=>'ON',\n8256=>'ON',\n8257=>'ON',\n8258=>'ON',\n8259=>'ON',\n8260=>'CS',\n8261=>'ON',\n8262=>'ON',\n8263=>'ON',\n8264=>'ON',\n8265=>'ON',\n8266=>'ON',\n8267=>'ON',\n8268=>'ON',\n8269=>'ON',\n8270=>'ON',\n8271=>'ON',\n8272=>'ON',\n8273=>'ON',\n8274=>'ON',\n8275=>'ON',\n8276=>'ON',\n8277=>'ON',\n8278=>'ON',\n8279=>'ON',\n8280=>'ON',\n8281=>'ON',\n8282=>'ON',\n8283=>'ON',\n8284=>'ON',\n8285=>'ON',\n8286=>'ON',\n8287=>'WS',\n8288=>'BN',\n8289=>'BN',\n8290=>'BN',\n8291=>'BN',\n8298=>'BN',\n8299=>'BN',\n8300=>'BN',\n8301=>'BN',\n8302=>'BN',\n8303=>'BN',\n8304=>'EN',\n8305=>'L',\n8308=>'EN',\n8309=>'EN',\n8310=>'EN',\n8311=>'EN',\n8312=>'EN',\n8313=>'EN',\n8314=>'ES',\n8315=>'ES',\n8316=>'ON',\n8317=>'ON',\n8318=>'ON',\n8319=>'L',\n8320=>'EN',\n8321=>'EN',\n8322=>'EN',\n8323=>'EN',\n8324=>'EN',\n8325=>'EN',\n8326=>'EN',\n8327=>'EN',\n8328=>'EN',\n8329=>'EN',\n8330=>'ES',\n8331=>'ES',\n8332=>'ON',\n8333=>'ON',\n8334=>'ON',\n8336=>'L',\n8337=>'L',\n8338=>'L',\n8339=>'L',\n8340=>'L',\n8352=>'ET',\n8353=>'ET',\n8354=>'ET',\n8355=>'ET',\n8356=>'ET',\n8357=>'ET',\n8358=>'ET',\n8359=>'ET',\n8360=>'ET',\n8361=>'ET',\n8362=>'ET',\n8363=>'ET',\n8364=>'ET',\n8365=>'ET',\n8366=>'ET',\n8367=>'ET',\n8368=>'ET',\n8369=>'ET',\n8370=>'ET',\n8371=>'ET',\n8372=>'ET',\n8373=>'ET',\n8400=>'NSM',\n8401=>'NSM',\n8402=>'NSM',\n8403=>'NSM',\n8404=>'NSM',\n8405=>'NSM',\n8406=>'NSM',\n8407=>'NSM',\n8408=>'NSM',\n8409=>'NSM',\n8410=>'NSM',\n8411=>'NSM',\n8412=>'NSM',\n8413=>'NSM',\n8414=>'NSM',\n8415=>'NSM',\n8416=>'NSM',\n8417=>'NSM',\n8418=>'NSM',\n8419=>'NSM',\n8420=>'NSM',\n8421=>'NSM',\n8422=>'NSM',\n8423=>'NSM',\n8424=>'NSM',\n8425=>'NSM',\n8426=>'NSM',\n8427=>'NSM',\n8428=>'NSM',\n8429=>'NSM',\n8430=>'NSM',\n8431=>'NSM',\n8448=>'ON',\n8449=>'ON',\n8450=>'L',\n8451=>'ON',\n8452=>'ON',\n8453=>'ON',\n8454=>'ON',\n8455=>'L',\n8456=>'ON',\n8457=>'ON',\n8458=>'L',\n8459=>'L',\n8460=>'L',\n8461=>'L',\n8462=>'L',\n8463=>'L',\n8464=>'L',\n8465=>'L',\n8466=>'L',\n8467=>'L',\n8468=>'ON',\n8469=>'L',\n8470=>'ON',\n8471=>'ON',\n8472=>'ON',\n8473=>'L',\n8474=>'L',\n8475=>'L',\n8476=>'L',\n8477=>'L',\n8478=>'ON',\n8479=>'ON',\n8480=>'ON',\n8481=>'ON',\n8482=>'ON',\n8483=>'ON',\n8484=>'L',\n8485=>'ON',\n8486=>'L',\n8487=>'ON',\n8488=>'L',\n8489=>'ON',\n8490=>'L',\n8491=>'L',\n8492=>'L',\n8493=>'L',\n8494=>'ET',\n8495=>'L',\n8496=>'L',\n8497=>'L',\n8498=>'L',\n8499=>'L',\n8500=>'L',\n8501=>'L',\n8502=>'L',\n8503=>'L',\n8504=>'L',\n8505=>'L',\n8506=>'ON',\n8507=>'ON',\n8508=>'L',\n8509=>'L',\n8510=>'L',\n8511=>'L',\n8512=>'ON',\n8513=>'ON',\n8514=>'ON',\n8515=>'ON',\n8516=>'ON',\n8517=>'L',\n8518=>'L',\n8519=>'L',\n8520=>'L',\n8521=>'L',\n8522=>'ON',\n8523=>'ON',\n8524=>'ON',\n8525=>'ON',\n8526=>'L',\n8531=>'ON',\n8532=>'ON',\n8533=>'ON',\n8534=>'ON',\n8535=>'ON',\n8536=>'ON',\n8537=>'ON',\n8538=>'ON',\n8539=>'ON',\n8540=>'ON',\n8541=>'ON',\n8542=>'ON',\n8543=>'ON',\n8544=>'L',\n8545=>'L',\n8546=>'L',\n8547=>'L',\n8548=>'L',\n8549=>'L',\n8550=>'L',\n8551=>'L',\n8552=>'L',\n8553=>'L',\n8554=>'L',\n8555=>'L',\n8556=>'L',\n8557=>'L',\n8558=>'L',\n8559=>'L',\n8560=>'L',\n8561=>'L',\n8562=>'L',\n8563=>'L',\n8564=>'L',\n8565=>'L',\n8566=>'L',\n8567=>'L',\n8568=>'L',\n8569=>'L',\n8570=>'L',\n8571=>'L',\n8572=>'L',\n8573=>'L',\n8574=>'L',\n8575=>'L',\n8576=>'L',\n8577=>'L',\n8578=>'L',\n8579=>'L',\n8580=>'L',\n8592=>'ON',\n8593=>'ON',\n8594=>'ON',\n8595=>'ON',\n8596=>'ON',\n8597=>'ON',\n8598=>'ON',\n8599=>'ON',\n8600=>'ON',\n8601=>'ON',\n8602=>'ON',\n8603=>'ON',\n8604=>'ON',\n8605=>'ON',\n8606=>'ON',\n8607=>'ON',\n8608=>'ON',\n8609=>'ON',\n8610=>'ON',\n8611=>'ON',\n8612=>'ON',\n8613=>'ON',\n8614=>'ON',\n8615=>'ON',\n8616=>'ON',\n8617=>'ON',\n8618=>'ON',\n8619=>'ON',\n8620=>'ON',\n8621=>'ON',\n8622=>'ON',\n8623=>'ON',\n8624=>'ON',\n8625=>'ON',\n8626=>'ON',\n8627=>'ON',\n8628=>'ON',\n8629=>'ON',\n8630=>'ON',\n8631=>'ON',\n8632=>'ON',\n8633=>'ON',\n8634=>'ON',\n8635=>'ON',\n8636=>'ON',\n8637=>'ON',\n8638=>'ON',\n8639=>'ON',\n8640=>'ON',\n8641=>'ON',\n8642=>'ON',\n8643=>'ON',\n8644=>'ON',\n8645=>'ON',\n8646=>'ON',\n8647=>'ON',\n8648=>'ON',\n8649=>'ON',\n8650=>'ON',\n8651=>'ON',\n8652=>'ON',\n8653=>'ON',\n8654=>'ON',\n8655=>'ON',\n8656=>'ON',\n8657=>'ON',\n8658=>'ON',\n8659=>'ON',\n8660=>'ON',\n8661=>'ON',\n8662=>'ON',\n8663=>'ON',\n8664=>'ON',\n8665=>'ON',\n8666=>'ON',\n8667=>'ON',\n8668=>'ON',\n8669=>'ON',\n8670=>'ON',\n8671=>'ON',\n8672=>'ON',\n8673=>'ON',\n8674=>'ON',\n8675=>'ON',\n8676=>'ON',\n8677=>'ON',\n8678=>'ON',\n8679=>'ON',\n8680=>'ON',\n8681=>'ON',\n8682=>'ON',\n8683=>'ON',\n8684=>'ON',\n8685=>'ON',\n8686=>'ON',\n8687=>'ON',\n8688=>'ON',\n8689=>'ON',\n8690=>'ON',\n8691=>'ON',\n8692=>'ON',\n8693=>'ON',\n8694=>'ON',\n8695=>'ON',\n8696=>'ON',\n8697=>'ON',\n8698=>'ON',\n8699=>'ON',\n8700=>'ON',\n8701=>'ON',\n8702=>'ON',\n8703=>'ON',\n8704=>'ON',\n8705=>'ON',\n8706=>'ON',\n8707=>'ON',\n8708=>'ON',\n8709=>'ON',\n8710=>'ON',\n8711=>'ON',\n8712=>'ON',\n8713=>'ON',\n8714=>'ON',\n8715=>'ON',\n8716=>'ON',\n8717=>'ON',\n8718=>'ON',\n8719=>'ON',\n8720=>'ON',\n8721=>'ON',\n8722=>'ES',\n8723=>'ET',\n8724=>'ON',\n8725=>'ON',\n8726=>'ON',\n8727=>'ON',\n8728=>'ON',\n8729=>'ON',\n8730=>'ON',\n8731=>'ON',\n8732=>'ON',\n8733=>'ON',\n8734=>'ON',\n8735=>'ON',\n8736=>'ON',\n8737=>'ON',\n8738=>'ON',\n8739=>'ON',\n8740=>'ON',\n8741=>'ON',\n8742=>'ON',\n8743=>'ON',\n8744=>'ON',\n8745=>'ON',\n8746=>'ON',\n8747=>'ON',\n8748=>'ON',\n8749=>'ON',\n8750=>'ON',\n8751=>'ON',\n8752=>'ON',\n8753=>'ON',\n8754=>'ON',\n8755=>'ON',\n8756=>'ON',\n8757=>'ON',\n8758=>'ON',\n8759=>'ON',\n8760=>'ON',\n8761=>'ON',\n8762=>'ON',\n8763=>'ON',\n8764=>'ON',\n8765=>'ON',\n8766=>'ON',\n8767=>'ON',\n8768=>'ON',\n8769=>'ON',\n8770=>'ON',\n8771=>'ON',\n8772=>'ON',\n8773=>'ON',\n8774=>'ON',\n8775=>'ON',\n8776=>'ON',\n8777=>'ON',\n8778=>'ON',\n8779=>'ON',\n8780=>'ON',\n8781=>'ON',\n8782=>'ON',\n8783=>'ON',\n8784=>'ON',\n8785=>'ON',\n8786=>'ON',\n8787=>'ON',\n8788=>'ON',\n8789=>'ON',\n8790=>'ON',\n8791=>'ON',\n8792=>'ON',\n8793=>'ON',\n8794=>'ON',\n8795=>'ON',\n8796=>'ON',\n8797=>'ON',\n8798=>'ON',\n8799=>'ON',\n8800=>'ON',\n8801=>'ON',\n8802=>'ON',\n8803=>'ON',\n8804=>'ON',\n8805=>'ON',\n8806=>'ON',\n8807=>'ON',\n8808=>'ON',\n8809=>'ON',\n8810=>'ON',\n8811=>'ON',\n8812=>'ON',\n8813=>'ON',\n8814=>'ON',\n8815=>'ON',\n8816=>'ON',\n8817=>'ON',\n8818=>'ON',\n8819=>'ON',\n8820=>'ON',\n8821=>'ON',\n8822=>'ON',\n8823=>'ON',\n8824=>'ON',\n8825=>'ON',\n8826=>'ON',\n8827=>'ON',\n8828=>'ON',\n8829=>'ON',\n8830=>'ON',\n8831=>'ON',\n8832=>'ON',\n8833=>'ON',\n8834=>'ON',\n8835=>'ON',\n8836=>'ON',\n8837=>'ON',\n8838=>'ON',\n8839=>'ON',\n8840=>'ON',\n8841=>'ON',\n8842=>'ON',\n8843=>'ON',\n8844=>'ON',\n8845=>'ON',\n8846=>'ON',\n8847=>'ON',\n8848=>'ON',\n8849=>'ON',\n8850=>'ON',\n8851=>'ON',\n8852=>'ON',\n8853=>'ON',\n8854=>'ON',\n8855=>'ON',\n8856=>'ON',\n8857=>'ON',\n8858=>'ON',\n8859=>'ON',\n8860=>'ON',\n8861=>'ON',\n8862=>'ON',\n8863=>'ON',\n8864=>'ON',\n8865=>'ON',\n8866=>'ON',\n8867=>'ON',\n8868=>'ON',\n8869=>'ON',\n8870=>'ON',\n8871=>'ON',\n8872=>'ON',\n8873=>'ON',\n8874=>'ON',\n8875=>'ON',\n8876=>'ON',\n8877=>'ON',\n8878=>'ON',\n8879=>'ON',\n8880=>'ON',\n8881=>'ON',\n8882=>'ON',\n8883=>'ON',\n8884=>'ON',\n8885=>'ON',\n8886=>'ON',\n8887=>'ON',\n8888=>'ON',\n8889=>'ON',\n8890=>'ON',\n8891=>'ON',\n8892=>'ON',\n8893=>'ON',\n8894=>'ON',\n8895=>'ON',\n8896=>'ON',\n8897=>'ON',\n8898=>'ON',\n8899=>'ON',\n8900=>'ON',\n8901=>'ON',\n8902=>'ON',\n8903=>'ON',\n8904=>'ON',\n8905=>'ON',\n8906=>'ON',\n8907=>'ON',\n8908=>'ON',\n8909=>'ON',\n8910=>'ON',\n8911=>'ON',\n8912=>'ON',\n8913=>'ON',\n8914=>'ON',\n8915=>'ON',\n8916=>'ON',\n8917=>'ON',\n8918=>'ON',\n8919=>'ON',\n8920=>'ON',\n8921=>'ON',\n8922=>'ON',\n8923=>'ON',\n8924=>'ON',\n8925=>'ON',\n8926=>'ON',\n8927=>'ON',\n8928=>'ON',\n8929=>'ON',\n8930=>'ON',\n8931=>'ON',\n8932=>'ON',\n8933=>'ON',\n8934=>'ON',\n8935=>'ON',\n8936=>'ON',\n8937=>'ON',\n8938=>'ON',\n8939=>'ON',\n8940=>'ON',\n8941=>'ON',\n8942=>'ON',\n8943=>'ON',\n8944=>'ON',\n8945=>'ON',\n8946=>'ON',\n8947=>'ON',\n8948=>'ON',\n8949=>'ON',\n8950=>'ON',\n8951=>'ON',\n8952=>'ON',\n8953=>'ON',\n8954=>'ON',\n8955=>'ON',\n8956=>'ON',\n8957=>'ON',\n8958=>'ON',\n8959=>'ON',\n8960=>'ON',\n8961=>'ON',\n8962=>'ON',\n8963=>'ON',\n8964=>'ON',\n8965=>'ON',\n8966=>'ON',\n8967=>'ON',\n8968=>'ON',\n8969=>'ON',\n8970=>'ON',\n8971=>'ON',\n8972=>'ON',\n8973=>'ON',\n8974=>'ON',\n8975=>'ON',\n8976=>'ON',\n8977=>'ON',\n8978=>'ON',\n8979=>'ON',\n8980=>'ON',\n8981=>'ON',\n8982=>'ON',\n8983=>'ON',\n8984=>'ON',\n8985=>'ON',\n8986=>'ON',\n8987=>'ON',\n8988=>'ON',\n8989=>'ON',\n8990=>'ON',\n8991=>'ON',\n8992=>'ON',\n8993=>'ON',\n8994=>'ON',\n8995=>'ON',\n8996=>'ON',\n8997=>'ON',\n8998=>'ON',\n8999=>'ON',\n9000=>'ON',\n9001=>'ON',\n9002=>'ON',\n9003=>'ON',\n9004=>'ON',\n9005=>'ON',\n9006=>'ON',\n9007=>'ON',\n9008=>'ON',\n9009=>'ON',\n9010=>'ON',\n9011=>'ON',\n9012=>'ON',\n9013=>'ON',\n9014=>'L',\n9015=>'L',\n9016=>'L',\n9017=>'L',\n9018=>'L',\n9019=>'L',\n9020=>'L',\n9021=>'L',\n9022=>'L',\n9023=>'L',\n9024=>'L',\n9025=>'L',\n9026=>'L',\n9027=>'L',\n9028=>'L',\n9029=>'L',\n9030=>'L',\n9031=>'L',\n9032=>'L',\n9033=>'L',\n9034=>'L',\n9035=>'L',\n9036=>'L',\n9037=>'L',\n9038=>'L',\n9039=>'L',\n9040=>'L',\n9041=>'L',\n9042=>'L',\n9043=>'L',\n9044=>'L',\n9045=>'L',\n9046=>'L',\n9047=>'L',\n9048=>'L',\n9049=>'L',\n9050=>'L',\n9051=>'L',\n9052=>'L',\n9053=>'L',\n9054=>'L',\n9055=>'L',\n9056=>'L',\n9057=>'L',\n9058=>'L',\n9059=>'L',\n9060=>'L',\n9061=>'L',\n9062=>'L',\n9063=>'L',\n9064=>'L',\n9065=>'L',\n9066=>'L',\n9067=>'L',\n9068=>'L',\n9069=>'L',\n9070=>'L',\n9071=>'L',\n9072=>'L',\n9073=>'L',\n9074=>'L',\n9075=>'L',\n9076=>'L',\n9077=>'L',\n9078=>'L',\n9079=>'L',\n9080=>'L',\n9081=>'L',\n9082=>'L',\n9083=>'ON',\n9084=>'ON',\n9085=>'ON',\n9086=>'ON',\n9087=>'ON',\n9088=>'ON',\n9089=>'ON',\n9090=>'ON',\n9091=>'ON',\n9092=>'ON',\n9093=>'ON',\n9094=>'ON',\n9095=>'ON',\n9096=>'ON',\n9097=>'ON',\n9098=>'ON',\n9099=>'ON',\n9100=>'ON',\n9101=>'ON',\n9102=>'ON',\n9103=>'ON',\n9104=>'ON',\n9105=>'ON',\n9106=>'ON',\n9107=>'ON',\n9108=>'ON',\n9109=>'L',\n9110=>'ON',\n9111=>'ON',\n9112=>'ON',\n9113=>'ON',\n9114=>'ON',\n9115=>'ON',\n9116=>'ON',\n9117=>'ON',\n9118=>'ON',\n9119=>'ON',\n9120=>'ON',\n9121=>'ON',\n9122=>'ON',\n9123=>'ON',\n9124=>'ON',\n9125=>'ON',\n9126=>'ON',\n9127=>'ON',\n9128=>'ON',\n9129=>'ON',\n9130=>'ON',\n9131=>'ON',\n9132=>'ON',\n9133=>'ON',\n9134=>'ON',\n9135=>'ON',\n9136=>'ON',\n9137=>'ON',\n9138=>'ON',\n9139=>'ON',\n9140=>'ON',\n9141=>'ON',\n9142=>'ON',\n9143=>'ON',\n9144=>'ON',\n9145=>'ON',\n9146=>'ON',\n9147=>'ON',\n9148=>'ON',\n9149=>'ON',\n9150=>'ON',\n9151=>'ON',\n9152=>'ON',\n9153=>'ON',\n9154=>'ON',\n9155=>'ON',\n9156=>'ON',\n9157=>'ON',\n9158=>'ON',\n9159=>'ON',\n9160=>'ON',\n9161=>'ON',\n9162=>'ON',\n9163=>'ON',\n9164=>'ON',\n9165=>'ON',\n9166=>'ON',\n9167=>'ON',\n9168=>'ON',\n9169=>'ON',\n9170=>'ON',\n9171=>'ON',\n9172=>'ON',\n9173=>'ON',\n9174=>'ON',\n9175=>'ON',\n9176=>'ON',\n9177=>'ON',\n9178=>'ON',\n9179=>'ON',\n9180=>'ON',\n9181=>'ON',\n9182=>'ON',\n9183=>'ON',\n9184=>'ON',\n9185=>'ON',\n9186=>'ON',\n9187=>'ON',\n9188=>'ON',\n9189=>'ON',\n9190=>'ON',\n9191=>'ON',\n9216=>'ON',\n9217=>'ON',\n9218=>'ON',\n9219=>'ON',\n9220=>'ON',\n9221=>'ON',\n9222=>'ON',\n9223=>'ON',\n9224=>'ON',\n9225=>'ON',\n9226=>'ON',\n9227=>'ON',\n9228=>'ON',\n9229=>'ON',\n9230=>'ON',\n9231=>'ON',\n9232=>'ON',\n9233=>'ON',\n9234=>'ON',\n9235=>'ON',\n9236=>'ON',\n9237=>'ON',\n9238=>'ON',\n9239=>'ON',\n9240=>'ON',\n9241=>'ON',\n9242=>'ON',\n9243=>'ON',\n9244=>'ON',\n9245=>'ON',\n9246=>'ON',\n9247=>'ON',\n9248=>'ON',\n9249=>'ON',\n9250=>'ON',\n9251=>'ON',\n9252=>'ON',\n9253=>'ON',\n9254=>'ON',\n9280=>'ON',\n9281=>'ON',\n9282=>'ON',\n9283=>'ON',\n9284=>'ON',\n9285=>'ON',\n9286=>'ON',\n9287=>'ON',\n9288=>'ON',\n9289=>'ON',\n9290=>'ON',\n9312=>'ON',\n9313=>'ON',\n9314=>'ON',\n9315=>'ON',\n9316=>'ON',\n9317=>'ON',\n9318=>'ON',\n9319=>'ON',\n9320=>'ON',\n9321=>'ON',\n9322=>'ON',\n9323=>'ON',\n9324=>'ON',\n9325=>'ON',\n9326=>'ON',\n9327=>'ON',\n9328=>'ON',\n9329=>'ON',\n9330=>'ON',\n9331=>'ON',\n9332=>'ON',\n9333=>'ON',\n9334=>'ON',\n9335=>'ON',\n9336=>'ON',\n9337=>'ON',\n9338=>'ON',\n9339=>'ON',\n9340=>'ON',\n9341=>'ON',\n9342=>'ON',\n9343=>'ON',\n9344=>'ON',\n9345=>'ON',\n9346=>'ON',\n9347=>'ON',\n9348=>'ON',\n9349=>'ON',\n9350=>'ON',\n9351=>'ON',\n9352=>'EN',\n9353=>'EN',\n9354=>'EN',\n9355=>'EN',\n9356=>'EN',\n9357=>'EN',\n9358=>'EN',\n9359=>'EN',\n9360=>'EN',\n9361=>'EN',\n9362=>'EN',\n9363=>'EN',\n9364=>'EN',\n9365=>'EN',\n9366=>'EN',\n9367=>'EN',\n9368=>'EN',\n9369=>'EN',\n9370=>'EN',\n9371=>'EN',\n9372=>'L',\n9373=>'L',\n9374=>'L',\n9375=>'L',\n9376=>'L',\n9377=>'L',\n9378=>'L',\n9379=>'L',\n9380=>'L',\n9381=>'L',\n9382=>'L',\n9383=>'L',\n9384=>'L',\n9385=>'L',\n9386=>'L',\n9387=>'L',\n9388=>'L',\n9389=>'L',\n9390=>'L',\n9391=>'L',\n9392=>'L',\n9393=>'L',\n9394=>'L',\n9395=>'L',\n9396=>'L',\n9397=>'L',\n9398=>'L',\n9399=>'L',\n9400=>'L',\n9401=>'L',\n9402=>'L',\n9403=>'L',\n9404=>'L',\n9405=>'L',\n9406=>'L',\n9407=>'L',\n9408=>'L',\n9409=>'L',\n9410=>'L',\n9411=>'L',\n9412=>'L',\n9413=>'L',\n9414=>'L',\n9415=>'L',\n9416=>'L',\n9417=>'L',\n9418=>'L',\n9419=>'L',\n9420=>'L',\n9421=>'L',\n9422=>'L',\n9423=>'L',\n9424=>'L',\n9425=>'L',\n9426=>'L',\n9427=>'L',\n9428=>'L',\n9429=>'L',\n9430=>'L',\n9431=>'L',\n9432=>'L',\n9433=>'L',\n9434=>'L',\n9435=>'L',\n9436=>'L',\n9437=>'L',\n9438=>'L',\n9439=>'L',\n9440=>'L',\n9441=>'L',\n9442=>'L',\n9443=>'L',\n9444=>'L',\n9445=>'L',\n9446=>'L',\n9447=>'L',\n9448=>'L',\n9449=>'L',\n9450=>'ON',\n9451=>'ON',\n9452=>'ON',\n9453=>'ON',\n9454=>'ON',\n9455=>'ON',\n9456=>'ON',\n9457=>'ON',\n9458=>'ON',\n9459=>'ON',\n9460=>'ON',\n9461=>'ON',\n9462=>'ON',\n9463=>'ON',\n9464=>'ON',\n9465=>'ON',\n9466=>'ON',\n9467=>'ON',\n9468=>'ON',\n9469=>'ON',\n9470=>'ON',\n9471=>'ON',\n9472=>'ON',\n9473=>'ON',\n9474=>'ON',\n9475=>'ON',\n9476=>'ON',\n9477=>'ON',\n9478=>'ON',\n9479=>'ON',\n9480=>'ON',\n9481=>'ON',\n9482=>'ON',\n9483=>'ON',\n9484=>'ON',\n9485=>'ON',\n9486=>'ON',\n9487=>'ON',\n9488=>'ON',\n9489=>'ON',\n9490=>'ON',\n9491=>'ON',\n9492=>'ON',\n9493=>'ON',\n9494=>'ON',\n9495=>'ON',\n9496=>'ON',\n9497=>'ON',\n9498=>'ON',\n9499=>'ON',\n9500=>'ON',\n9501=>'ON',\n9502=>'ON',\n9503=>'ON',\n9504=>'ON',\n9505=>'ON',\n9506=>'ON',\n9507=>'ON',\n9508=>'ON',\n9509=>'ON',\n9510=>'ON',\n9511=>'ON',\n9512=>'ON',\n9513=>'ON',\n9514=>'ON',\n9515=>'ON',\n9516=>'ON',\n9517=>'ON',\n9518=>'ON',\n9519=>'ON',\n9520=>'ON',\n9521=>'ON',\n9522=>'ON',\n9523=>'ON',\n9524=>'ON',\n9525=>'ON',\n9526=>'ON',\n9527=>'ON',\n9528=>'ON',\n9529=>'ON',\n9530=>'ON',\n9531=>'ON',\n9532=>'ON',\n9533=>'ON',\n9534=>'ON',\n9535=>'ON',\n9536=>'ON',\n9537=>'ON',\n9538=>'ON',\n9539=>'ON',\n9540=>'ON',\n9541=>'ON',\n9542=>'ON',\n9543=>'ON',\n9544=>'ON',\n9545=>'ON',\n9546=>'ON',\n9547=>'ON',\n9548=>'ON',\n9549=>'ON',\n9550=>'ON',\n9551=>'ON',\n9552=>'ON',\n9553=>'ON',\n9554=>'ON',\n9555=>'ON',\n9556=>'ON',\n9557=>'ON',\n9558=>'ON',\n9559=>'ON',\n9560=>'ON',\n9561=>'ON',\n9562=>'ON',\n9563=>'ON',\n9564=>'ON',\n9565=>'ON',\n9566=>'ON',\n9567=>'ON',\n9568=>'ON',\n9569=>'ON',\n9570=>'ON',\n9571=>'ON',\n9572=>'ON',\n9573=>'ON',\n9574=>'ON',\n9575=>'ON',\n9576=>'ON',\n9577=>'ON',\n9578=>'ON',\n9579=>'ON',\n9580=>'ON',\n9581=>'ON',\n9582=>'ON',\n9583=>'ON',\n9584=>'ON',\n9585=>'ON',\n9586=>'ON',\n9587=>'ON',\n9588=>'ON',\n9589=>'ON',\n9590=>'ON',\n9591=>'ON',\n9592=>'ON',\n9593=>'ON',\n9594=>'ON',\n9595=>'ON',\n9596=>'ON',\n9597=>'ON',\n9598=>'ON',\n9599=>'ON',\n9600=>'ON',\n9601=>'ON',\n9602=>'ON',\n9603=>'ON',\n9604=>'ON',\n9605=>'ON',\n9606=>'ON',\n9607=>'ON',\n9608=>'ON',\n9609=>'ON',\n9610=>'ON',\n9611=>'ON',\n9612=>'ON',\n9613=>'ON',\n9614=>'ON',\n9615=>'ON',\n9616=>'ON',\n9617=>'ON',\n9618=>'ON',\n9619=>'ON',\n9620=>'ON',\n9621=>'ON',\n9622=>'ON',\n9623=>'ON',\n9624=>'ON',\n9625=>'ON',\n9626=>'ON',\n9627=>'ON',\n9628=>'ON',\n9629=>'ON',\n9630=>'ON',\n9631=>'ON',\n9632=>'ON',\n9633=>'ON',\n9634=>'ON',\n9635=>'ON',\n9636=>'ON',\n9637=>'ON',\n9638=>'ON',\n9639=>'ON',\n9640=>'ON',\n9641=>'ON',\n9642=>'ON',\n9643=>'ON',\n9644=>'ON',\n9645=>'ON',\n9646=>'ON',\n9647=>'ON',\n9648=>'ON',\n9649=>'ON',\n9650=>'ON',\n9651=>'ON',\n9652=>'ON',\n9653=>'ON',\n9654=>'ON',\n9655=>'ON',\n9656=>'ON',\n9657=>'ON',\n9658=>'ON',\n9659=>'ON',\n9660=>'ON',\n9661=>'ON',\n9662=>'ON',\n9663=>'ON',\n9664=>'ON',\n9665=>'ON',\n9666=>'ON',\n9667=>'ON',\n9668=>'ON',\n9669=>'ON',\n9670=>'ON',\n9671=>'ON',\n9672=>'ON',\n9673=>'ON',\n9674=>'ON',\n9675=>'ON',\n9676=>'ON',\n9677=>'ON',\n9678=>'ON',\n9679=>'ON',\n9680=>'ON',\n9681=>'ON',\n9682=>'ON',\n9683=>'ON',\n9684=>'ON',\n9685=>'ON',\n9686=>'ON',\n9687=>'ON',\n9688=>'ON',\n9689=>'ON',\n9690=>'ON',\n9691=>'ON',\n9692=>'ON',\n9693=>'ON',\n9694=>'ON',\n9695=>'ON',\n9696=>'ON',\n9697=>'ON',\n9698=>'ON',\n9699=>'ON',\n9700=>'ON',\n9701=>'ON',\n9702=>'ON',\n9703=>'ON',\n9704=>'ON',\n9705=>'ON',\n9706=>'ON',\n9707=>'ON',\n9708=>'ON',\n9709=>'ON',\n9710=>'ON',\n9711=>'ON',\n9712=>'ON',\n9713=>'ON',\n9714=>'ON',\n9715=>'ON',\n9716=>'ON',\n9717=>'ON',\n9718=>'ON',\n9719=>'ON',\n9720=>'ON',\n9721=>'ON',\n9722=>'ON',\n9723=>'ON',\n9724=>'ON',\n9725=>'ON',\n9726=>'ON',\n9727=>'ON',\n9728=>'ON',\n9729=>'ON',\n9730=>'ON',\n9731=>'ON',\n9732=>'ON',\n9733=>'ON',\n9734=>'ON',\n9735=>'ON',\n9736=>'ON',\n9737=>'ON',\n9738=>'ON',\n9739=>'ON',\n9740=>'ON',\n9741=>'ON',\n9742=>'ON',\n9743=>'ON',\n9744=>'ON',\n9745=>'ON',\n9746=>'ON',\n9747=>'ON',\n9748=>'ON',\n9749=>'ON',\n9750=>'ON',\n9751=>'ON',\n9752=>'ON',\n9753=>'ON',\n9754=>'ON',\n9755=>'ON',\n9756=>'ON',\n9757=>'ON',\n9758=>'ON',\n9759=>'ON',\n9760=>'ON',\n9761=>'ON',\n9762=>'ON',\n9763=>'ON',\n9764=>'ON',\n9765=>'ON',\n9766=>'ON',\n9767=>'ON',\n9768=>'ON',\n9769=>'ON',\n9770=>'ON',\n9771=>'ON',\n9772=>'ON',\n9773=>'ON',\n9774=>'ON',\n9775=>'ON',\n9776=>'ON',\n9777=>'ON',\n9778=>'ON',\n9779=>'ON',\n9780=>'ON',\n9781=>'ON',\n9782=>'ON',\n9783=>'ON',\n9784=>'ON',\n9785=>'ON',\n9786=>'ON',\n9787=>'ON',\n9788=>'ON',\n9789=>'ON',\n9790=>'ON',\n9791=>'ON',\n9792=>'ON',\n9793=>'ON',\n9794=>'ON',\n9795=>'ON',\n9796=>'ON',\n9797=>'ON',\n9798=>'ON',\n9799=>'ON',\n9800=>'ON',\n9801=>'ON',\n9802=>'ON',\n9803=>'ON',\n9804=>'ON',\n9805=>'ON',\n9806=>'ON',\n9807=>'ON',\n9808=>'ON',\n9809=>'ON',\n9810=>'ON',\n9811=>'ON',\n9812=>'ON',\n9813=>'ON',\n9814=>'ON',\n9815=>'ON',\n9816=>'ON',\n9817=>'ON',\n9818=>'ON',\n9819=>'ON',\n9820=>'ON',\n9821=>'ON',\n9822=>'ON',\n9823=>'ON',\n9824=>'ON',\n9825=>'ON',\n9826=>'ON',\n9827=>'ON',\n9828=>'ON',\n9829=>'ON',\n9830=>'ON',\n9831=>'ON',\n9832=>'ON',\n9833=>'ON',\n9834=>'ON',\n9835=>'ON',\n9836=>'ON',\n9837=>'ON',\n9838=>'ON',\n9839=>'ON',\n9840=>'ON',\n9841=>'ON',\n9842=>'ON',\n9843=>'ON',\n9844=>'ON',\n9845=>'ON',\n9846=>'ON',\n9847=>'ON',\n9848=>'ON',\n9849=>'ON',\n9850=>'ON',\n9851=>'ON',\n9852=>'ON',\n9853=>'ON',\n9854=>'ON',\n9855=>'ON',\n9856=>'ON',\n9857=>'ON',\n9858=>'ON',\n9859=>'ON',\n9860=>'ON',\n9861=>'ON',\n9862=>'ON',\n9863=>'ON',\n9864=>'ON',\n9865=>'ON',\n9866=>'ON',\n9867=>'ON',\n9868=>'ON',\n9869=>'ON',\n9870=>'ON',\n9871=>'ON',\n9872=>'ON',\n9873=>'ON',\n9874=>'ON',\n9875=>'ON',\n9876=>'ON',\n9877=>'ON',\n9878=>'ON',\n9879=>'ON',\n9880=>'ON',\n9881=>'ON',\n9882=>'ON',\n9883=>'ON',\n9884=>'ON',\n9888=>'ON',\n9889=>'ON',\n9890=>'ON',\n9891=>'ON',\n9892=>'ON',\n9893=>'ON',\n9894=>'ON',\n9895=>'ON',\n9896=>'ON',\n9897=>'ON',\n9898=>'ON',\n9899=>'ON',\n9900=>'L',\n9901=>'ON',\n9902=>'ON',\n9903=>'ON',\n9904=>'ON',\n9905=>'ON',\n9906=>'ON',\n9985=>'ON',\n9986=>'ON',\n9987=>'ON',\n9988=>'ON',\n9990=>'ON',\n9991=>'ON',\n9992=>'ON',\n9993=>'ON',\n9996=>'ON',\n9997=>'ON',\n9998=>'ON',\n9999=>'ON',\n10000=>'ON',\n10001=>'ON',\n10002=>'ON',\n10003=>'ON',\n10004=>'ON',\n10005=>'ON',\n10006=>'ON',\n10007=>'ON',\n10008=>'ON',\n10009=>'ON',\n10010=>'ON',\n10011=>'ON',\n10012=>'ON',\n10013=>'ON',\n10014=>'ON',\n10015=>'ON',\n10016=>'ON',\n10017=>'ON',\n10018=>'ON',\n10019=>'ON',\n10020=>'ON',\n10021=>'ON',\n10022=>'ON',\n10023=>'ON',\n10025=>'ON',\n10026=>'ON',\n10027=>'ON',\n10028=>'ON',\n10029=>'ON',\n10030=>'ON',\n10031=>'ON',\n10032=>'ON',\n10033=>'ON',\n10034=>'ON',\n10035=>'ON',\n10036=>'ON',\n10037=>'ON',\n10038=>'ON',\n10039=>'ON',\n10040=>'ON',\n10041=>'ON',\n10042=>'ON',\n10043=>'ON',\n10044=>'ON',\n10045=>'ON',\n10046=>'ON',\n10047=>'ON',\n10048=>'ON',\n10049=>'ON',\n10050=>'ON',\n10051=>'ON',\n10052=>'ON',\n10053=>'ON',\n10054=>'ON',\n10055=>'ON',\n10056=>'ON',\n10057=>'ON',\n10058=>'ON',\n10059=>'ON',\n10061=>'ON',\n10063=>'ON',\n10064=>'ON',\n10065=>'ON',\n10066=>'ON',\n10070=>'ON',\n10072=>'ON',\n10073=>'ON',\n10074=>'ON',\n10075=>'ON',\n10076=>'ON',\n10077=>'ON',\n10078=>'ON',\n10081=>'ON',\n10082=>'ON',\n10083=>'ON',\n10084=>'ON',\n10085=>'ON',\n10086=>'ON',\n10087=>'ON',\n10088=>'ON',\n10089=>'ON',\n10090=>'ON',\n10091=>'ON',\n10092=>'ON',\n10093=>'ON',\n10094=>'ON',\n10095=>'ON',\n10096=>'ON',\n10097=>'ON',\n10098=>'ON',\n10099=>'ON',\n10100=>'ON',\n10101=>'ON',\n10102=>'ON',\n10103=>'ON',\n10104=>'ON',\n10105=>'ON',\n10106=>'ON',\n10107=>'ON',\n10108=>'ON',\n10109=>'ON',\n10110=>'ON',\n10111=>'ON',\n10112=>'ON',\n10113=>'ON',\n10114=>'ON',\n10115=>'ON',\n10116=>'ON',\n10117=>'ON',\n10118=>'ON',\n10119=>'ON',\n10120=>'ON',\n10121=>'ON',\n10122=>'ON',\n10123=>'ON',\n10124=>'ON',\n10125=>'ON',\n10126=>'ON',\n10127=>'ON',\n10128=>'ON',\n10129=>'ON',\n10130=>'ON',\n10131=>'ON',\n10132=>'ON',\n10136=>'ON',\n10137=>'ON',\n10138=>'ON',\n10139=>'ON',\n10140=>'ON',\n10141=>'ON',\n10142=>'ON',\n10143=>'ON',\n10144=>'ON',\n10145=>'ON',\n10146=>'ON',\n10147=>'ON',\n10148=>'ON',\n10149=>'ON',\n10150=>'ON',\n10151=>'ON',\n10152=>'ON',\n10153=>'ON',\n10154=>'ON',\n10155=>'ON',\n10156=>'ON',\n10157=>'ON',\n10158=>'ON',\n10159=>'ON',\n10161=>'ON',\n10162=>'ON',\n10163=>'ON',\n10164=>'ON',\n10165=>'ON',\n10166=>'ON',\n10167=>'ON',\n10168=>'ON',\n10169=>'ON',\n10170=>'ON',\n10171=>'ON',\n10172=>'ON',\n10173=>'ON',\n10174=>'ON',\n10176=>'ON',\n10177=>'ON',\n10178=>'ON',\n10179=>'ON',\n10180=>'ON',\n10181=>'ON',\n10182=>'ON',\n10183=>'ON',\n10184=>'ON',\n10185=>'ON',\n10186=>'ON',\n10192=>'ON',\n10193=>'ON',\n10194=>'ON',\n10195=>'ON',\n10196=>'ON',\n10197=>'ON',\n10198=>'ON',\n10199=>'ON',\n10200=>'ON',\n10201=>'ON',\n10202=>'ON',\n10203=>'ON',\n10204=>'ON',\n10205=>'ON',\n10206=>'ON',\n10207=>'ON',\n10208=>'ON',\n10209=>'ON',\n10210=>'ON',\n10211=>'ON',\n10212=>'ON',\n10213=>'ON',\n10214=>'ON',\n10215=>'ON',\n10216=>'ON',\n10217=>'ON',\n10218=>'ON',\n10219=>'ON',\n10224=>'ON',\n10225=>'ON',\n10226=>'ON',\n10227=>'ON',\n10228=>'ON',\n10229=>'ON',\n10230=>'ON',\n10231=>'ON',\n10232=>'ON',\n10233=>'ON',\n10234=>'ON',\n10235=>'ON',\n10236=>'ON',\n10237=>'ON',\n10238=>'ON',\n10239=>'ON',\n10240=>'L',\n10241=>'L',\n10242=>'L',\n10243=>'L',\n10244=>'L',\n10245=>'L',\n10246=>'L',\n10247=>'L',\n10248=>'L',\n10249=>'L',\n10250=>'L',\n10251=>'L',\n10252=>'L',\n10253=>'L',\n10254=>'L',\n10255=>'L',\n10256=>'L',\n10257=>'L',\n10258=>'L',\n10259=>'L',\n10260=>'L',\n10261=>'L',\n10262=>'L',\n10263=>'L',\n10264=>'L',\n10265=>'L',\n10266=>'L',\n10267=>'L',\n10268=>'L',\n10269=>'L',\n10270=>'L',\n10271=>'L',\n10272=>'L',\n10273=>'L',\n10274=>'L',\n10275=>'L',\n10276=>'L',\n10277=>'L',\n10278=>'L',\n10279=>'L',\n10280=>'L',\n10281=>'L',\n10282=>'L',\n10283=>'L',\n10284=>'L',\n10285=>'L',\n10286=>'L',\n10287=>'L',\n10288=>'L',\n10289=>'L',\n10290=>'L',\n10291=>'L',\n10292=>'L',\n10293=>'L',\n10294=>'L',\n10295=>'L',\n10296=>'L',\n10297=>'L',\n10298=>'L',\n10299=>'L',\n10300=>'L',\n10301=>'L',\n10302=>'L',\n10303=>'L',\n10304=>'L',\n10305=>'L',\n10306=>'L',\n10307=>'L',\n10308=>'L',\n10309=>'L',\n10310=>'L',\n10311=>'L',\n10312=>'L',\n10313=>'L',\n10314=>'L',\n10315=>'L',\n10316=>'L',\n10317=>'L',\n10318=>'L',\n10319=>'L',\n10320=>'L',\n10321=>'L',\n10322=>'L',\n10323=>'L',\n10324=>'L',\n10325=>'L',\n10326=>'L',\n10327=>'L',\n10328=>'L',\n10329=>'L',\n10330=>'L',\n10331=>'L',\n10332=>'L',\n10333=>'L',\n10334=>'L',\n10335=>'L',\n10336=>'L',\n10337=>'L',\n10338=>'L',\n10339=>'L',\n10340=>'L',\n10341=>'L',\n10342=>'L',\n10343=>'L',\n10344=>'L',\n10345=>'L',\n10346=>'L',\n10347=>'L',\n10348=>'L',\n10349=>'L',\n10350=>'L',\n10351=>'L',\n10352=>'L',\n10353=>'L',\n10354=>'L',\n10355=>'L',\n10356=>'L',\n10357=>'L',\n10358=>'L',\n10359=>'L',\n10360=>'L',\n10361=>'L',\n10362=>'L',\n10363=>'L',\n10364=>'L',\n10365=>'L',\n10366=>'L',\n10367=>'L',\n10368=>'L',\n10369=>'L',\n10370=>'L',\n10371=>'L',\n10372=>'L',\n10373=>'L',\n10374=>'L',\n10375=>'L',\n10376=>'L',\n10377=>'L',\n10378=>'L',\n10379=>'L',\n10380=>'L',\n10381=>'L',\n10382=>'L',\n10383=>'L',\n10384=>'L',\n10385=>'L',\n10386=>'L',\n10387=>'L',\n10388=>'L',\n10389=>'L',\n10390=>'L',\n10391=>'L',\n10392=>'L',\n10393=>'L',\n10394=>'L',\n10395=>'L',\n10396=>'L',\n10397=>'L',\n10398=>'L',\n10399=>'L',\n10400=>'L',\n10401=>'L',\n10402=>'L',\n10403=>'L',\n10404=>'L',\n10405=>'L',\n10406=>'L',\n10407=>'L',\n10408=>'L',\n10409=>'L',\n10410=>'L',\n10411=>'L',\n10412=>'L',\n10413=>'L',\n10414=>'L',\n10415=>'L',\n10416=>'L',\n10417=>'L',\n10418=>'L',\n10419=>'L',\n10420=>'L',\n10421=>'L',\n10422=>'L',\n10423=>'L',\n10424=>'L',\n10425=>'L',\n10426=>'L',\n10427=>'L',\n10428=>'L',\n10429=>'L',\n10430=>'L',\n10431=>'L',\n10432=>'L',\n10433=>'L',\n10434=>'L',\n10435=>'L',\n10436=>'L',\n10437=>'L',\n10438=>'L',\n10439=>'L',\n10440=>'L',\n10441=>'L',\n10442=>'L',\n10443=>'L',\n10444=>'L',\n10445=>'L',\n10446=>'L',\n10447=>'L',\n10448=>'L',\n10449=>'L',\n10450=>'L',\n10451=>'L',\n10452=>'L',\n10453=>'L',\n10454=>'L',\n10455=>'L',\n10456=>'L',\n10457=>'L',\n10458=>'L',\n10459=>'L',\n10460=>'L',\n10461=>'L',\n10462=>'L',\n10463=>'L',\n10464=>'L',\n10465=>'L',\n10466=>'L',\n10467=>'L',\n10468=>'L',\n10469=>'L',\n10470=>'L',\n10471=>'L',\n10472=>'L',\n10473=>'L',\n10474=>'L',\n10475=>'L',\n10476=>'L',\n10477=>'L',\n10478=>'L',\n10479=>'L',\n10480=>'L',\n10481=>'L',\n10482=>'L',\n10483=>'L',\n10484=>'L',\n10485=>'L',\n10486=>'L',\n10487=>'L',\n10488=>'L',\n10489=>'L',\n10490=>'L',\n10491=>'L',\n10492=>'L',\n10493=>'L',\n10494=>'L',\n10495=>'L',\n10496=>'ON',\n10497=>'ON',\n10498=>'ON',\n10499=>'ON',\n10500=>'ON',\n10501=>'ON',\n10502=>'ON',\n10503=>'ON',\n10504=>'ON',\n10505=>'ON',\n10506=>'ON',\n10507=>'ON',\n10508=>'ON',\n10509=>'ON',\n10510=>'ON',\n10511=>'ON',\n10512=>'ON',\n10513=>'ON',\n10514=>'ON',\n10515=>'ON',\n10516=>'ON',\n10517=>'ON',\n10518=>'ON',\n10519=>'ON',\n10520=>'ON',\n10521=>'ON',\n10522=>'ON',\n10523=>'ON',\n10524=>'ON',\n10525=>'ON',\n10526=>'ON',\n10527=>'ON',\n10528=>'ON',\n10529=>'ON',\n10530=>'ON',\n10531=>'ON',\n10532=>'ON',\n10533=>'ON',\n10534=>'ON',\n10535=>'ON',\n10536=>'ON',\n10537=>'ON',\n10538=>'ON',\n10539=>'ON',\n10540=>'ON',\n10541=>'ON',\n10542=>'ON',\n10543=>'ON',\n10544=>'ON',\n10545=>'ON',\n10546=>'ON',\n10547=>'ON',\n10548=>'ON',\n10549=>'ON',\n10550=>'ON',\n10551=>'ON',\n10552=>'ON',\n10553=>'ON',\n10554=>'ON',\n10555=>'ON',\n10556=>'ON',\n10557=>'ON',\n10558=>'ON',\n10559=>'ON',\n10560=>'ON',\n10561=>'ON',\n10562=>'ON',\n10563=>'ON',\n10564=>'ON',\n10565=>'ON',\n10566=>'ON',\n10567=>'ON',\n10568=>'ON',\n10569=>'ON',\n10570=>'ON',\n10571=>'ON',\n10572=>'ON',\n10573=>'ON',\n10574=>'ON',\n10575=>'ON',\n10576=>'ON',\n10577=>'ON',\n10578=>'ON',\n10579=>'ON',\n10580=>'ON',\n10581=>'ON',\n10582=>'ON',\n10583=>'ON',\n10584=>'ON',\n10585=>'ON',\n10586=>'ON',\n10587=>'ON',\n10588=>'ON',\n10589=>'ON',\n10590=>'ON',\n10591=>'ON',\n10592=>'ON',\n10593=>'ON',\n10594=>'ON',\n10595=>'ON',\n10596=>'ON',\n10597=>'ON',\n10598=>'ON',\n10599=>'ON',\n10600=>'ON',\n10601=>'ON',\n10602=>'ON',\n10603=>'ON',\n10604=>'ON',\n10605=>'ON',\n10606=>'ON',\n10607=>'ON',\n10608=>'ON',\n10609=>'ON',\n10610=>'ON',\n10611=>'ON',\n10612=>'ON',\n10613=>'ON',\n10614=>'ON',\n10615=>'ON',\n10616=>'ON',\n10617=>'ON',\n10618=>'ON',\n10619=>'ON',\n10620=>'ON',\n10621=>'ON',\n10622=>'ON',\n10623=>'ON',\n10624=>'ON',\n10625=>'ON',\n10626=>'ON',\n10627=>'ON',\n10628=>'ON',\n10629=>'ON',\n10630=>'ON',\n10631=>'ON',\n10632=>'ON',\n10633=>'ON',\n10634=>'ON',\n10635=>'ON',\n10636=>'ON',\n10637=>'ON',\n10638=>'ON',\n10639=>'ON',\n10640=>'ON',\n10641=>'ON',\n10642=>'ON',\n10643=>'ON',\n10644=>'ON',\n10645=>'ON',\n10646=>'ON',\n10647=>'ON',\n10648=>'ON',\n10649=>'ON',\n10650=>'ON',\n10651=>'ON',\n10652=>'ON',\n10653=>'ON',\n10654=>'ON',\n10655=>'ON',\n10656=>'ON',\n10657=>'ON',\n10658=>'ON',\n10659=>'ON',\n10660=>'ON',\n10661=>'ON',\n10662=>'ON',\n10663=>'ON',\n10664=>'ON',\n10665=>'ON',\n10666=>'ON',\n10667=>'ON',\n10668=>'ON',\n10669=>'ON',\n10670=>'ON',\n10671=>'ON',\n10672=>'ON',\n10673=>'ON',\n10674=>'ON',\n10675=>'ON',\n10676=>'ON',\n10677=>'ON',\n10678=>'ON',\n10679=>'ON',\n10680=>'ON',\n10681=>'ON',\n10682=>'ON',\n10683=>'ON',\n10684=>'ON',\n10685=>'ON',\n10686=>'ON',\n10687=>'ON',\n10688=>'ON',\n10689=>'ON',\n10690=>'ON',\n10691=>'ON',\n10692=>'ON',\n10693=>'ON',\n10694=>'ON',\n10695=>'ON',\n10696=>'ON',\n10697=>'ON',\n10698=>'ON',\n10699=>'ON',\n10700=>'ON',\n10701=>'ON',\n10702=>'ON',\n10703=>'ON',\n10704=>'ON',\n10705=>'ON',\n10706=>'ON',\n10707=>'ON',\n10708=>'ON',\n10709=>'ON',\n10710=>'ON',\n10711=>'ON',\n10712=>'ON',\n10713=>'ON',\n10714=>'ON',\n10715=>'ON',\n10716=>'ON',\n10717=>'ON',\n10718=>'ON',\n10719=>'ON',\n10720=>'ON',\n10721=>'ON',\n10722=>'ON',\n10723=>'ON',\n10724=>'ON',\n10725=>'ON',\n10726=>'ON',\n10727=>'ON',\n10728=>'ON',\n10729=>'ON',\n10730=>'ON',\n10731=>'ON',\n10732=>'ON',\n10733=>'ON',\n10734=>'ON',\n10735=>'ON',\n10736=>'ON',\n10737=>'ON',\n10738=>'ON',\n10739=>'ON',\n10740=>'ON',\n10741=>'ON',\n10742=>'ON',\n10743=>'ON',\n10744=>'ON',\n10745=>'ON',\n10746=>'ON',\n10747=>'ON',\n10748=>'ON',\n10749=>'ON',\n10750=>'ON',\n10751=>'ON',\n10752=>'ON',\n10753=>'ON',\n10754=>'ON',\n10755=>'ON',\n10756=>'ON',\n10757=>'ON',\n10758=>'ON',\n10759=>'ON',\n10760=>'ON',\n10761=>'ON',\n10762=>'ON',\n10763=>'ON',\n10764=>'ON',\n10765=>'ON',\n10766=>'ON',\n10767=>'ON',\n10768=>'ON',\n10769=>'ON',\n10770=>'ON',\n10771=>'ON',\n10772=>'ON',\n10773=>'ON',\n10774=>'ON',\n10775=>'ON',\n10776=>'ON',\n10777=>'ON',\n10778=>'ON',\n10779=>'ON',\n10780=>'ON',\n10781=>'ON',\n10782=>'ON',\n10783=>'ON',\n10784=>'ON',\n10785=>'ON',\n10786=>'ON',\n10787=>'ON',\n10788=>'ON',\n10789=>'ON',\n10790=>'ON',\n10791=>'ON',\n10792=>'ON',\n10793=>'ON',\n10794=>'ON',\n10795=>'ON',\n10796=>'ON',\n10797=>'ON',\n10798=>'ON',\n10799=>'ON',\n10800=>'ON',\n10801=>'ON',\n10802=>'ON',\n10803=>'ON',\n10804=>'ON',\n10805=>'ON',\n10806=>'ON',\n10807=>'ON',\n10808=>'ON',\n10809=>'ON',\n10810=>'ON',\n10811=>'ON',\n10812=>'ON',\n10813=>'ON',\n10814=>'ON',\n10815=>'ON',\n10816=>'ON',\n10817=>'ON',\n10818=>'ON',\n10819=>'ON',\n10820=>'ON',\n10821=>'ON',\n10822=>'ON',\n10823=>'ON',\n10824=>'ON',\n10825=>'ON',\n10826=>'ON',\n10827=>'ON',\n10828=>'ON',\n10829=>'ON',\n10830=>'ON',\n10831=>'ON',\n10832=>'ON',\n10833=>'ON',\n10834=>'ON',\n10835=>'ON',\n10836=>'ON',\n10837=>'ON',\n10838=>'ON',\n10839=>'ON',\n10840=>'ON',\n10841=>'ON',\n10842=>'ON',\n10843=>'ON',\n10844=>'ON',\n10845=>'ON',\n10846=>'ON',\n10847=>'ON',\n10848=>'ON',\n10849=>'ON',\n10850=>'ON',\n10851=>'ON',\n10852=>'ON',\n10853=>'ON',\n10854=>'ON',\n10855=>'ON',\n10856=>'ON',\n10857=>'ON',\n10858=>'ON',\n10859=>'ON',\n10860=>'ON',\n10861=>'ON',\n10862=>'ON',\n10863=>'ON',\n10864=>'ON',\n10865=>'ON',\n10866=>'ON',\n10867=>'ON',\n10868=>'ON',\n10869=>'ON',\n10870=>'ON',\n10871=>'ON',\n10872=>'ON',\n10873=>'ON',\n10874=>'ON',\n10875=>'ON',\n10876=>'ON',\n10877=>'ON',\n10878=>'ON',\n10879=>'ON',\n10880=>'ON',\n10881=>'ON',\n10882=>'ON',\n10883=>'ON',\n10884=>'ON',\n10885=>'ON',\n10886=>'ON',\n10887=>'ON',\n10888=>'ON',\n10889=>'ON',\n10890=>'ON',\n10891=>'ON',\n10892=>'ON',\n10893=>'ON',\n10894=>'ON',\n10895=>'ON',\n10896=>'ON',\n10897=>'ON',\n10898=>'ON',\n10899=>'ON',\n10900=>'ON',\n10901=>'ON',\n10902=>'ON',\n10903=>'ON',\n10904=>'ON',\n10905=>'ON',\n10906=>'ON',\n10907=>'ON',\n10908=>'ON',\n10909=>'ON',\n10910=>'ON',\n10911=>'ON',\n10912=>'ON',\n10913=>'ON',\n10914=>'ON',\n10915=>'ON',\n10916=>'ON',\n10917=>'ON',\n10918=>'ON',\n10919=>'ON',\n10920=>'ON',\n10921=>'ON',\n10922=>'ON',\n10923=>'ON',\n10924=>'ON',\n10925=>'ON',\n10926=>'ON',\n10927=>'ON',\n10928=>'ON',\n10929=>'ON',\n10930=>'ON',\n10931=>'ON',\n10932=>'ON',\n10933=>'ON',\n10934=>'ON',\n10935=>'ON',\n10936=>'ON',\n10937=>'ON',\n10938=>'ON',\n10939=>'ON',\n10940=>'ON',\n10941=>'ON',\n10942=>'ON',\n10943=>'ON',\n10944=>'ON',\n10945=>'ON',\n10946=>'ON',\n10947=>'ON',\n10948=>'ON',\n10949=>'ON',\n10950=>'ON',\n10951=>'ON',\n10952=>'ON',\n10953=>'ON',\n10954=>'ON',\n10955=>'ON',\n10956=>'ON',\n10957=>'ON',\n10958=>'ON',\n10959=>'ON',\n10960=>'ON',\n10961=>'ON',\n10962=>'ON',\n10963=>'ON',\n10964=>'ON',\n10965=>'ON',\n10966=>'ON',\n10967=>'ON',\n10968=>'ON',\n10969=>'ON',\n10970=>'ON',\n10971=>'ON',\n10972=>'ON',\n10973=>'ON',\n10974=>'ON',\n10975=>'ON',\n10976=>'ON',\n10977=>'ON',\n10978=>'ON',\n10979=>'ON',\n10980=>'ON',\n10981=>'ON',\n10982=>'ON',\n10983=>'ON',\n10984=>'ON',\n10985=>'ON',\n10986=>'ON',\n10987=>'ON',\n10988=>'ON',\n10989=>'ON',\n10990=>'ON',\n10991=>'ON',\n10992=>'ON',\n10993=>'ON',\n10994=>'ON',\n10995=>'ON',\n10996=>'ON',\n10997=>'ON',\n10998=>'ON',\n10999=>'ON',\n11000=>'ON',\n11001=>'ON',\n11002=>'ON',\n11003=>'ON',\n11004=>'ON',\n11005=>'ON',\n11006=>'ON',\n11007=>'ON',\n11008=>'ON',\n11009=>'ON',\n11010=>'ON',\n11011=>'ON',\n11012=>'ON',\n11013=>'ON',\n11014=>'ON',\n11015=>'ON',\n11016=>'ON',\n11017=>'ON',\n11018=>'ON',\n11019=>'ON',\n11020=>'ON',\n11021=>'ON',\n11022=>'ON',\n11023=>'ON',\n11024=>'ON',\n11025=>'ON',\n11026=>'ON',\n11027=>'ON',\n11028=>'ON',\n11029=>'ON',\n11030=>'ON',\n11031=>'ON',\n11032=>'ON',\n11033=>'ON',\n11034=>'ON',\n11040=>'ON',\n11041=>'ON',\n11042=>'ON',\n11043=>'ON',\n11264=>'L',\n11265=>'L',\n11266=>'L',\n11267=>'L',\n11268=>'L',\n11269=>'L',\n11270=>'L',\n11271=>'L',\n11272=>'L',\n11273=>'L',\n11274=>'L',\n11275=>'L',\n11276=>'L',\n11277=>'L',\n11278=>'L',\n11279=>'L',\n11280=>'L',\n11281=>'L',\n11282=>'L',\n11283=>'L',\n11284=>'L',\n11285=>'L',\n11286=>'L',\n11287=>'L',\n11288=>'L',\n11289=>'L',\n11290=>'L',\n11291=>'L',\n11292=>'L',\n11293=>'L',\n11294=>'L',\n11295=>'L',\n11296=>'L',\n11297=>'L',\n11298=>'L',\n11299=>'L',\n11300=>'L',\n11301=>'L',\n11302=>'L',\n11303=>'L',\n11304=>'L',\n11305=>'L',\n11306=>'L',\n11307=>'L',\n11308=>'L',\n11309=>'L',\n11310=>'L',\n11312=>'L',\n11313=>'L',\n11314=>'L',\n11315=>'L',\n11316=>'L',\n11317=>'L',\n11318=>'L',\n11319=>'L',\n11320=>'L',\n11321=>'L',\n11322=>'L',\n11323=>'L',\n11324=>'L',\n11325=>'L',\n11326=>'L',\n11327=>'L',\n11328=>'L',\n11329=>'L',\n11330=>'L',\n11331=>'L',\n11332=>'L',\n11333=>'L',\n11334=>'L',\n11335=>'L',\n11336=>'L',\n11337=>'L',\n11338=>'L',\n11339=>'L',\n11340=>'L',\n11341=>'L',\n11342=>'L',\n11343=>'L',\n11344=>'L',\n11345=>'L',\n11346=>'L',\n11347=>'L',\n11348=>'L',\n11349=>'L',\n11350=>'L',\n11351=>'L',\n11352=>'L',\n11353=>'L',\n11354=>'L',\n11355=>'L',\n11356=>'L',\n11357=>'L',\n11358=>'L',\n11360=>'L',\n11361=>'L',\n11362=>'L',\n11363=>'L',\n11364=>'L',\n11365=>'L',\n11366=>'L',\n11367=>'L',\n11368=>'L',\n11369=>'L',\n11370=>'L',\n11371=>'L',\n11372=>'L',\n11380=>'L',\n11381=>'L',\n11382=>'L',\n11383=>'L',\n11392=>'L',\n11393=>'L',\n11394=>'L',\n11395=>'L',\n11396=>'L',\n11397=>'L',\n11398=>'L',\n11399=>'L',\n11400=>'L',\n11401=>'L',\n11402=>'L',\n11403=>'L',\n11404=>'L',\n11405=>'L',\n11406=>'L',\n11407=>'L',\n11408=>'L',\n11409=>'L',\n11410=>'L',\n11411=>'L',\n11412=>'L',\n11413=>'L',\n11414=>'L',\n11415=>'L',\n11416=>'L',\n11417=>'L',\n11418=>'L',\n11419=>'L',\n11420=>'L',\n11421=>'L',\n11422=>'L',\n11423=>'L',\n11424=>'L',\n11425=>'L',\n11426=>'L',\n11427=>'L',\n11428=>'L',\n11429=>'L',\n11430=>'L',\n11431=>'L',\n11432=>'L',\n11433=>'L',\n11434=>'L',\n11435=>'L',\n11436=>'L',\n11437=>'L',\n11438=>'L',\n11439=>'L',\n11440=>'L',\n11441=>'L',\n11442=>'L',\n11443=>'L',\n11444=>'L',\n11445=>'L',\n11446=>'L',\n11447=>'L',\n11448=>'L',\n11449=>'L',\n11450=>'L',\n11451=>'L',\n11452=>'L',\n11453=>'L',\n11454=>'L',\n11455=>'L',\n11456=>'L',\n11457=>'L',\n11458=>'L',\n11459=>'L',\n11460=>'L',\n11461=>'L',\n11462=>'L',\n11463=>'L',\n11464=>'L',\n11465=>'L',\n11466=>'L',\n11467=>'L',\n11468=>'L',\n11469=>'L',\n11470=>'L',\n11471=>'L',\n11472=>'L',\n11473=>'L',\n11474=>'L',\n11475=>'L',\n11476=>'L',\n11477=>'L',\n11478=>'L',\n11479=>'L',\n11480=>'L',\n11481=>'L',\n11482=>'L',\n11483=>'L',\n11484=>'L',\n11485=>'L',\n11486=>'L',\n11487=>'L',\n11488=>'L',\n11489=>'L',\n11490=>'L',\n11491=>'L',\n11492=>'L',\n11493=>'ON',\n11494=>'ON',\n11495=>'ON',\n11496=>'ON',\n11497=>'ON',\n11498=>'ON',\n11513=>'ON',\n11514=>'ON',\n11515=>'ON',\n11516=>'ON',\n11517=>'ON',\n11518=>'ON',\n11519=>'ON',\n11520=>'L',\n11521=>'L',\n11522=>'L',\n11523=>'L',\n11524=>'L',\n11525=>'L',\n11526=>'L',\n11527=>'L',\n11528=>'L',\n11529=>'L',\n11530=>'L',\n11531=>'L',\n11532=>'L',\n11533=>'L',\n11534=>'L',\n11535=>'L',\n11536=>'L',\n11537=>'L',\n11538=>'L',\n11539=>'L',\n11540=>'L',\n11541=>'L',\n11542=>'L',\n11543=>'L',\n11544=>'L',\n11545=>'L',\n11546=>'L',\n11547=>'L',\n11548=>'L',\n11549=>'L',\n11550=>'L',\n11551=>'L',\n11552=>'L',\n11553=>'L',\n11554=>'L',\n11555=>'L',\n11556=>'L',\n11557=>'L',\n11568=>'L',\n11569=>'L',\n11570=>'L',\n11571=>'L',\n11572=>'L',\n11573=>'L',\n11574=>'L',\n11575=>'L',\n11576=>'L',\n11577=>'L',\n11578=>'L',\n11579=>'L',\n11580=>'L',\n11581=>'L',\n11582=>'L',\n11583=>'L',\n11584=>'L',\n11585=>'L',\n11586=>'L',\n11587=>'L',\n11588=>'L',\n11589=>'L',\n11590=>'L',\n11591=>'L',\n11592=>'L',\n11593=>'L',\n11594=>'L',\n11595=>'L',\n11596=>'L',\n11597=>'L',\n11598=>'L',\n11599=>'L',\n11600=>'L',\n11601=>'L',\n11602=>'L',\n11603=>'L',\n11604=>'L',\n11605=>'L',\n11606=>'L',\n11607=>'L',\n11608=>'L',\n11609=>'L',\n11610=>'L',\n11611=>'L',\n11612=>'L',\n11613=>'L',\n11614=>'L',\n11615=>'L',\n11616=>'L',\n11617=>'L',\n11618=>'L',\n11619=>'L',\n11620=>'L',\n11621=>'L',\n11631=>'L',\n11648=>'L',\n11649=>'L',\n11650=>'L',\n11651=>'L',\n11652=>'L',\n11653=>'L',\n11654=>'L',\n11655=>'L',\n11656=>'L',\n11657=>'L',\n11658=>'L',\n11659=>'L',\n11660=>'L',\n11661=>'L',\n11662=>'L',\n11663=>'L',\n11664=>'L',\n11665=>'L',\n11666=>'L',\n11667=>'L',\n11668=>'L',\n11669=>'L',\n11670=>'L',\n11680=>'L',\n11681=>'L',\n11682=>'L',\n11683=>'L',\n11684=>'L',\n11685=>'L',\n11686=>'L',\n11688=>'L',\n11689=>'L',\n11690=>'L',\n11691=>'L',\n11692=>'L',\n11693=>'L',\n11694=>'L',\n11696=>'L',\n11697=>'L',\n11698=>'L',\n11699=>'L',\n11700=>'L',\n11701=>'L',\n11702=>'L',\n11704=>'L',\n11705=>'L',\n11706=>'L',\n11707=>'L',\n11708=>'L',\n11709=>'L',\n11710=>'L',\n11712=>'L',\n11713=>'L',\n11714=>'L',\n11715=>'L',\n11716=>'L',\n11717=>'L',\n11718=>'L',\n11720=>'L',\n11721=>'L',\n11722=>'L',\n11723=>'L',\n11724=>'L',\n11725=>'L',\n11726=>'L',\n11728=>'L',\n11729=>'L',\n11730=>'L',\n11731=>'L',\n11732=>'L',\n11733=>'L',\n11734=>'L',\n11736=>'L',\n11737=>'L',\n11738=>'L',\n11739=>'L',\n11740=>'L',\n11741=>'L',\n11742=>'L',\n11776=>'ON',\n11777=>'ON',\n11778=>'ON',\n11779=>'ON',\n11780=>'ON',\n11781=>'ON',\n11782=>'ON',\n11783=>'ON',\n11784=>'ON',\n11785=>'ON',\n11786=>'ON',\n11787=>'ON',\n11788=>'ON',\n11789=>'ON',\n11790=>'ON',\n11791=>'ON',\n11792=>'ON',\n11793=>'ON',\n11794=>'ON',\n11795=>'ON',\n11796=>'ON',\n11797=>'ON',\n11798=>'ON',\n11799=>'ON',\n11804=>'ON',\n11805=>'ON',\n11904=>'ON',\n11905=>'ON',\n11906=>'ON',\n11907=>'ON',\n11908=>'ON',\n11909=>'ON',\n11910=>'ON',\n11911=>'ON',\n11912=>'ON',\n11913=>'ON',\n11914=>'ON',\n11915=>'ON',\n11916=>'ON',\n11917=>'ON',\n11918=>'ON',\n11919=>'ON',\n11920=>'ON',\n11921=>'ON',\n11922=>'ON',\n11923=>'ON',\n11924=>'ON',\n11925=>'ON',\n11926=>'ON',\n11927=>'ON',\n11928=>'ON',\n11929=>'ON',\n11931=>'ON',\n11932=>'ON',\n11933=>'ON',\n11934=>'ON',\n11935=>'ON',\n11936=>'ON',\n11937=>'ON',\n11938=>'ON',\n11939=>'ON',\n11940=>'ON',\n11941=>'ON',\n11942=>'ON',\n11943=>'ON',\n11944=>'ON',\n11945=>'ON',\n11946=>'ON',\n11947=>'ON',\n11948=>'ON',\n11949=>'ON',\n11950=>'ON',\n11951=>'ON',\n11952=>'ON',\n11953=>'ON',\n11954=>'ON',\n11955=>'ON',\n11956=>'ON',\n11957=>'ON',\n11958=>'ON',\n11959=>'ON',\n11960=>'ON',\n11961=>'ON',\n11962=>'ON',\n11963=>'ON',\n11964=>'ON',\n11965=>'ON',\n11966=>'ON',\n11967=>'ON',\n11968=>'ON',\n11969=>'ON',\n11970=>'ON',\n11971=>'ON',\n11972=>'ON',\n11973=>'ON',\n11974=>'ON',\n11975=>'ON',\n11976=>'ON',\n11977=>'ON',\n11978=>'ON',\n11979=>'ON',\n11980=>'ON',\n11981=>'ON',\n11982=>'ON',\n11983=>'ON',\n11984=>'ON',\n11985=>'ON',\n11986=>'ON',\n11987=>'ON',\n11988=>'ON',\n11989=>'ON',\n11990=>'ON',\n11991=>'ON',\n11992=>'ON',\n11993=>'ON',\n11994=>'ON',\n11995=>'ON',\n11996=>'ON',\n11997=>'ON',\n11998=>'ON',\n11999=>'ON',\n12000=>'ON',\n12001=>'ON',\n12002=>'ON',\n12003=>'ON',\n12004=>'ON',\n12005=>'ON',\n12006=>'ON',\n12007=>'ON',\n12008=>'ON',\n12009=>'ON',\n12010=>'ON',\n12011=>'ON',\n12012=>'ON',\n12013=>'ON',\n12014=>'ON',\n12015=>'ON',\n12016=>'ON',\n12017=>'ON',\n12018=>'ON',\n12019=>'ON',\n12032=>'ON',\n12033=>'ON',\n12034=>'ON',\n12035=>'ON',\n12036=>'ON',\n12037=>'ON',\n12038=>'ON',\n12039=>'ON',\n12040=>'ON',\n12041=>'ON',\n12042=>'ON',\n12043=>'ON',\n12044=>'ON',\n12045=>'ON',\n12046=>'ON',\n12047=>'ON',\n12048=>'ON',\n12049=>'ON',\n12050=>'ON',\n12051=>'ON',\n12052=>'ON',\n12053=>'ON',\n12054=>'ON',\n12055=>'ON',\n12056=>'ON',\n12057=>'ON',\n12058=>'ON',\n12059=>'ON',\n12060=>'ON',\n12061=>'ON',\n12062=>'ON',\n12063=>'ON',\n12064=>'ON',\n12065=>'ON',\n12066=>'ON',\n12067=>'ON',\n12068=>'ON',\n12069=>'ON',\n12070=>'ON',\n12071=>'ON',\n12072=>'ON',\n12073=>'ON',\n12074=>'ON',\n12075=>'ON',\n12076=>'ON',\n12077=>'ON',\n12078=>'ON',\n12079=>'ON',\n12080=>'ON',\n12081=>'ON',\n12082=>'ON',\n12083=>'ON',\n12084=>'ON',\n12085=>'ON',\n12086=>'ON',\n12087=>'ON',\n12088=>'ON',\n12089=>'ON',\n12090=>'ON',\n12091=>'ON',\n12092=>'ON',\n12093=>'ON',\n12094=>'ON',\n12095=>'ON',\n12096=>'ON',\n12097=>'ON',\n12098=>'ON',\n12099=>'ON',\n12100=>'ON',\n12101=>'ON',\n12102=>'ON',\n12103=>'ON',\n12104=>'ON',\n12105=>'ON',\n12106=>'ON',\n12107=>'ON',\n12108=>'ON',\n12109=>'ON',\n12110=>'ON',\n12111=>'ON',\n12112=>'ON',\n12113=>'ON',\n12114=>'ON',\n12115=>'ON',\n12116=>'ON',\n12117=>'ON',\n12118=>'ON',\n12119=>'ON',\n12120=>'ON',\n12121=>'ON',\n12122=>'ON',\n12123=>'ON',\n12124=>'ON',\n12125=>'ON',\n12126=>'ON',\n12127=>'ON',\n12128=>'ON',\n12129=>'ON',\n12130=>'ON',\n12131=>'ON',\n12132=>'ON',\n12133=>'ON',\n12134=>'ON',\n12135=>'ON',\n12136=>'ON',\n12137=>'ON',\n12138=>'ON',\n12139=>'ON',\n12140=>'ON',\n12141=>'ON',\n12142=>'ON',\n12143=>'ON',\n12144=>'ON',\n12145=>'ON',\n12146=>'ON',\n12147=>'ON',\n12148=>'ON',\n12149=>'ON',\n12150=>'ON',\n12151=>'ON',\n12152=>'ON',\n12153=>'ON',\n12154=>'ON',\n12155=>'ON',\n12156=>'ON',\n12157=>'ON',\n12158=>'ON',\n12159=>'ON',\n12160=>'ON',\n12161=>'ON',\n12162=>'ON',\n12163=>'ON',\n12164=>'ON',\n12165=>'ON',\n12166=>'ON',\n12167=>'ON',\n12168=>'ON',\n12169=>'ON',\n12170=>'ON',\n12171=>'ON',\n12172=>'ON',\n12173=>'ON',\n12174=>'ON',\n12175=>'ON',\n12176=>'ON',\n12177=>'ON',\n12178=>'ON',\n12179=>'ON',\n12180=>'ON',\n12181=>'ON',\n12182=>'ON',\n12183=>'ON',\n12184=>'ON',\n12185=>'ON',\n12186=>'ON',\n12187=>'ON',\n12188=>'ON',\n12189=>'ON',\n12190=>'ON',\n12191=>'ON',\n12192=>'ON',\n12193=>'ON',\n12194=>'ON',\n12195=>'ON',\n12196=>'ON',\n12197=>'ON',\n12198=>'ON',\n12199=>'ON',\n12200=>'ON',\n12201=>'ON',\n12202=>'ON',\n12203=>'ON',\n12204=>'ON',\n12205=>'ON',\n12206=>'ON',\n12207=>'ON',\n12208=>'ON',\n12209=>'ON',\n12210=>'ON',\n12211=>'ON',\n12212=>'ON',\n12213=>'ON',\n12214=>'ON',\n12215=>'ON',\n12216=>'ON',\n12217=>'ON',\n12218=>'ON',\n12219=>'ON',\n12220=>'ON',\n12221=>'ON',\n12222=>'ON',\n12223=>'ON',\n12224=>'ON',\n12225=>'ON',\n12226=>'ON',\n12227=>'ON',\n12228=>'ON',\n12229=>'ON',\n12230=>'ON',\n12231=>'ON',\n12232=>'ON',\n12233=>'ON',\n12234=>'ON',\n12235=>'ON',\n12236=>'ON',\n12237=>'ON',\n12238=>'ON',\n12239=>'ON',\n12240=>'ON',\n12241=>'ON',\n12242=>'ON',\n12243=>'ON',\n12244=>'ON',\n12245=>'ON',\n12272=>'ON',\n12273=>'ON',\n12274=>'ON',\n12275=>'ON',\n12276=>'ON',\n12277=>'ON',\n12278=>'ON',\n12279=>'ON',\n12280=>'ON',\n12281=>'ON',\n12282=>'ON',\n12283=>'ON',\n12288=>'WS',\n12289=>'ON',\n12290=>'ON',\n12291=>'ON',\n12292=>'ON',\n12293=>'L',\n12294=>'L',\n12295=>'L',\n12296=>'ON',\n12297=>'ON',\n12298=>'ON',\n12299=>'ON',\n12300=>'ON',\n12301=>'ON',\n12302=>'ON',\n12303=>'ON',\n12304=>'ON',\n12305=>'ON',\n12306=>'ON',\n12307=>'ON',\n12308=>'ON',\n12309=>'ON',\n12310=>'ON',\n12311=>'ON',\n12312=>'ON',\n12313=>'ON',\n12314=>'ON',\n12315=>'ON',\n12316=>'ON',\n12317=>'ON',\n12318=>'ON',\n12319=>'ON',\n12320=>'ON',\n12321=>'L',\n12322=>'L',\n12323=>'L',\n12324=>'L',\n12325=>'L',\n12326=>'L',\n12327=>'L',\n12328=>'L',\n12329=>'L',\n12330=>'NSM',\n12331=>'NSM',\n12332=>'NSM',\n12333=>'NSM',\n12334=>'NSM',\n12335=>'NSM',\n12336=>'ON',\n12337=>'L',\n12338=>'L',\n12339=>'L',\n12340=>'L',\n12341=>'L',\n12342=>'ON',\n12343=>'ON',\n12344=>'L',\n12345=>'L',\n12346=>'L',\n12347=>'L',\n12348=>'L',\n12349=>'ON',\n12350=>'ON',\n12351=>'ON',\n12353=>'L',\n12354=>'L',\n12355=>'L',\n12356=>'L',\n12357=>'L',\n12358=>'L',\n12359=>'L',\n12360=>'L',\n12361=>'L',\n12362=>'L',\n12363=>'L',\n12364=>'L',\n12365=>'L',\n12366=>'L',\n12367=>'L',\n12368=>'L',\n12369=>'L',\n12370=>'L',\n12371=>'L',\n12372=>'L',\n12373=>'L',\n12374=>'L',\n12375=>'L',\n12376=>'L',\n12377=>'L',\n12378=>'L',\n12379=>'L',\n12380=>'L',\n12381=>'L',\n12382=>'L',\n12383=>'L',\n12384=>'L',\n12385=>'L',\n12386=>'L',\n12387=>'L',\n12388=>'L',\n12389=>'L',\n12390=>'L',\n12391=>'L',\n12392=>'L',\n12393=>'L',\n12394=>'L',\n12395=>'L',\n12396=>'L',\n12397=>'L',\n12398=>'L',\n12399=>'L',\n12400=>'L',\n12401=>'L',\n12402=>'L',\n12403=>'L',\n12404=>'L',\n12405=>'L',\n12406=>'L',\n12407=>'L',\n12408=>'L',\n12409=>'L',\n12410=>'L',\n12411=>'L',\n12412=>'L',\n12413=>'L',\n12414=>'L',\n12415=>'L',\n12416=>'L',\n12417=>'L',\n12418=>'L',\n12419=>'L',\n12420=>'L',\n12421=>'L',\n12422=>'L',\n12423=>'L',\n12424=>'L',\n12425=>'L',\n12426=>'L',\n12427=>'L',\n12428=>'L',\n12429=>'L',\n12430=>'L',\n12431=>'L',\n12432=>'L',\n12433=>'L',\n12434=>'L',\n12435=>'L',\n12436=>'L',\n12437=>'L',\n12438=>'L',\n12441=>'NSM',\n12442=>'NSM',\n12443=>'ON',\n12444=>'ON',\n12445=>'L',\n12446=>'L',\n12447=>'L',\n12448=>'ON',\n12449=>'L',\n12450=>'L',\n12451=>'L',\n12452=>'L',\n12453=>'L',\n12454=>'L',\n12455=>'L',\n12456=>'L',\n12457=>'L',\n12458=>'L',\n12459=>'L',\n12460=>'L',\n12461=>'L',\n12462=>'L',\n12463=>'L',\n12464=>'L',\n12465=>'L',\n12466=>'L',\n12467=>'L',\n12468=>'L',\n12469=>'L',\n12470=>'L',\n12471=>'L',\n12472=>'L',\n12473=>'L',\n12474=>'L',\n12475=>'L',\n12476=>'L',\n12477=>'L',\n12478=>'L',\n12479=>'L',\n12480=>'L',\n12481=>'L',\n12482=>'L',\n12483=>'L',\n12484=>'L',\n12485=>'L',\n12486=>'L',\n12487=>'L',\n12488=>'L',\n12489=>'L',\n12490=>'L',\n12491=>'L',\n12492=>'L',\n12493=>'L',\n12494=>'L',\n12495=>'L',\n12496=>'L',\n12497=>'L',\n12498=>'L',\n12499=>'L',\n12500=>'L',\n12501=>'L',\n12502=>'L',\n12503=>'L',\n12504=>'L',\n12505=>'L',\n12506=>'L',\n12507=>'L',\n12508=>'L',\n12509=>'L',\n12510=>'L',\n12511=>'L',\n12512=>'L',\n12513=>'L',\n12514=>'L',\n12515=>'L',\n12516=>'L',\n12517=>'L',\n12518=>'L',\n12519=>'L',\n12520=>'L',\n12521=>'L',\n12522=>'L',\n12523=>'L',\n12524=>'L',\n12525=>'L',\n12526=>'L',\n12527=>'L',\n12528=>'L',\n12529=>'L',\n12530=>'L',\n12531=>'L',\n12532=>'L',\n12533=>'L',\n12534=>'L',\n12535=>'L',\n12536=>'L',\n12537=>'L',\n12538=>'L',\n12539=>'ON',\n12540=>'L',\n12541=>'L',\n12542=>'L',\n12543=>'L',\n12549=>'L',\n12550=>'L',\n12551=>'L',\n12552=>'L',\n12553=>'L',\n12554=>'L',\n12555=>'L',\n12556=>'L',\n12557=>'L',\n12558=>'L',\n12559=>'L',\n12560=>'L',\n12561=>'L',\n12562=>'L',\n12563=>'L',\n12564=>'L',\n12565=>'L',\n12566=>'L',\n12567=>'L',\n12568=>'L',\n12569=>'L',\n12570=>'L',\n12571=>'L',\n12572=>'L',\n12573=>'L',\n12574=>'L',\n12575=>'L',\n12576=>'L',\n12577=>'L',\n12578=>'L',\n12579=>'L',\n12580=>'L',\n12581=>'L',\n12582=>'L',\n12583=>'L',\n12584=>'L',\n12585=>'L',\n12586=>'L',\n12587=>'L',\n12588=>'L',\n12593=>'L',\n12594=>'L',\n12595=>'L',\n12596=>'L',\n12597=>'L',\n12598=>'L',\n12599=>'L',\n12600=>'L',\n12601=>'L',\n12602=>'L',\n12603=>'L',\n12604=>'L',\n12605=>'L',\n12606=>'L',\n12607=>'L',\n12608=>'L',\n12609=>'L',\n12610=>'L',\n12611=>'L',\n12612=>'L',\n12613=>'L',\n12614=>'L',\n12615=>'L',\n12616=>'L',\n12617=>'L',\n12618=>'L',\n12619=>'L',\n12620=>'L',\n12621=>'L',\n12622=>'L',\n12623=>'L',\n12624=>'L',\n12625=>'L',\n12626=>'L',\n12627=>'L',\n12628=>'L',\n12629=>'L',\n12630=>'L',\n12631=>'L',\n12632=>'L',\n12633=>'L',\n12634=>'L',\n12635=>'L',\n12636=>'L',\n12637=>'L',\n12638=>'L',\n12639=>'L',\n12640=>'L',\n12641=>'L',\n12642=>'L',\n12643=>'L',\n12644=>'L',\n12645=>'L',\n12646=>'L',\n12647=>'L',\n12648=>'L',\n12649=>'L',\n12650=>'L',\n12651=>'L',\n12652=>'L',\n12653=>'L',\n12654=>'L',\n12655=>'L',\n12656=>'L',\n12657=>'L',\n12658=>'L',\n12659=>'L',\n12660=>'L',\n12661=>'L',\n12662=>'L',\n12663=>'L',\n12664=>'L',\n12665=>'L',\n12666=>'L',\n12667=>'L',\n12668=>'L',\n12669=>'L',\n12670=>'L',\n12671=>'L',\n12672=>'L',\n12673=>'L',\n12674=>'L',\n12675=>'L',\n12676=>'L',\n12677=>'L',\n12678=>'L',\n12679=>'L',\n12680=>'L',\n12681=>'L',\n12682=>'L',\n12683=>'L',\n12684=>'L',\n12685=>'L',\n12686=>'L',\n12688=>'L',\n12689=>'L',\n12690=>'L',\n12691=>'L',\n12692=>'L',\n12693=>'L',\n12694=>'L',\n12695=>'L',\n12696=>'L',\n12697=>'L',\n12698=>'L',\n12699=>'L',\n12700=>'L',\n12701=>'L',\n12702=>'L',\n12703=>'L',\n12704=>'L',\n12705=>'L',\n12706=>'L',\n12707=>'L',\n12708=>'L',\n12709=>'L',\n12710=>'L',\n12711=>'L',\n12712=>'L',\n12713=>'L',\n12714=>'L',\n12715=>'L',\n12716=>'L',\n12717=>'L',\n12718=>'L',\n12719=>'L',\n12720=>'L',\n12721=>'L',\n12722=>'L',\n12723=>'L',\n12724=>'L',\n12725=>'L',\n12726=>'L',\n12727=>'L',\n12736=>'ON',\n12737=>'ON',\n12738=>'ON',\n12739=>'ON',\n12740=>'ON',\n12741=>'ON',\n12742=>'ON',\n12743=>'ON',\n12744=>'ON',\n12745=>'ON',\n12746=>'ON',\n12747=>'ON',\n12748=>'ON',\n12749=>'ON',\n12750=>'ON',\n12751=>'ON',\n12784=>'L',\n12785=>'L',\n12786=>'L',\n12787=>'L',\n12788=>'L',\n12789=>'L',\n12790=>'L',\n12791=>'L',\n12792=>'L',\n12793=>'L',\n12794=>'L',\n12795=>'L',\n12796=>'L',\n12797=>'L',\n12798=>'L',\n12799=>'L',\n12800=>'L',\n12801=>'L',\n12802=>'L',\n12803=>'L',\n12804=>'L',\n12805=>'L',\n12806=>'L',\n12807=>'L',\n12808=>'L',\n12809=>'L',\n12810=>'L',\n12811=>'L',\n12812=>'L',\n12813=>'L',\n12814=>'L',\n12815=>'L',\n12816=>'L',\n12817=>'L',\n12818=>'L',\n12819=>'L',\n12820=>'L',\n12821=>'L',\n12822=>'L',\n12823=>'L',\n12824=>'L',\n12825=>'L',\n12826=>'L',\n12827=>'L',\n12828=>'L',\n12829=>'ON',\n12830=>'ON',\n12832=>'L',\n12833=>'L',\n12834=>'L',\n12835=>'L',\n12836=>'L',\n12837=>'L',\n12838=>'L',\n12839=>'L',\n12840=>'L',\n12841=>'L',\n12842=>'L',\n12843=>'L',\n12844=>'L',\n12845=>'L',\n12846=>'L',\n12847=>'L',\n12848=>'L',\n12849=>'L',\n12850=>'L',\n12851=>'L',\n12852=>'L',\n12853=>'L',\n12854=>'L',\n12855=>'L',\n12856=>'L',\n12857=>'L',\n12858=>'L',\n12859=>'L',\n12860=>'L',\n12861=>'L',\n12862=>'L',\n12863=>'L',\n12864=>'L',\n12865=>'L',\n12866=>'L',\n12867=>'L',\n12880=>'ON',\n12881=>'ON',\n12882=>'ON',\n12883=>'ON',\n12884=>'ON',\n12885=>'ON',\n12886=>'ON',\n12887=>'ON',\n12888=>'ON',\n12889=>'ON',\n12890=>'ON',\n12891=>'ON',\n12892=>'ON',\n12893=>'ON',\n12894=>'ON',\n12895=>'ON',\n12896=>'L',\n12897=>'L',\n12898=>'L',\n12899=>'L',\n12900=>'L',\n12901=>'L',\n12902=>'L',\n12903=>'L',\n12904=>'L',\n12905=>'L',\n12906=>'L',\n12907=>'L',\n12908=>'L',\n12909=>'L',\n12910=>'L',\n12911=>'L',\n12912=>'L',\n12913=>'L',\n12914=>'L',\n12915=>'L',\n12916=>'L',\n12917=>'L',\n12918=>'L',\n12919=>'L',\n12920=>'L',\n12921=>'L',\n12922=>'L',\n12923=>'L',\n12924=>'ON',\n12925=>'ON',\n12926=>'ON',\n12927=>'L',\n12928=>'L',\n12929=>'L',\n12930=>'L',\n12931=>'L',\n12932=>'L',\n12933=>'L',\n12934=>'L',\n12935=>'L',\n12936=>'L',\n12937=>'L',\n12938=>'L',\n12939=>'L',\n12940=>'L',\n12941=>'L',\n12942=>'L',\n12943=>'L',\n12944=>'L',\n12945=>'L',\n12946=>'L',\n12947=>'L',\n12948=>'L',\n12949=>'L',\n12950=>'L',\n12951=>'L',\n12952=>'L',\n12953=>'L',\n12954=>'L',\n12955=>'L',\n12956=>'L',\n12957=>'L',\n12958=>'L',\n12959=>'L',\n12960=>'L',\n12961=>'L',\n12962=>'L',\n12963=>'L',\n12964=>'L',\n12965=>'L',\n12966=>'L',\n12967=>'L',\n12968=>'L',\n12969=>'L',\n12970=>'L',\n12971=>'L',\n12972=>'L',\n12973=>'L',\n12974=>'L',\n12975=>'L',\n12976=>'L',\n12977=>'ON',\n12978=>'ON',\n12979=>'ON',\n12980=>'ON',\n12981=>'ON',\n12982=>'ON',\n12983=>'ON',\n12984=>'ON',\n12985=>'ON',\n12986=>'ON',\n12987=>'ON',\n12988=>'ON',\n12989=>'ON',\n12990=>'ON',\n12991=>'ON',\n12992=>'L',\n12993=>'L',\n12994=>'L',\n12995=>'L',\n12996=>'L',\n12997=>'L',\n12998=>'L',\n12999=>'L',\n13000=>'L',\n13001=>'L',\n13002=>'L',\n13003=>'L',\n13004=>'ON',\n13005=>'ON',\n13006=>'ON',\n13007=>'ON',\n13008=>'L',\n13009=>'L',\n13010=>'L',\n13011=>'L',\n13012=>'L',\n13013=>'L',\n13014=>'L',\n13015=>'L',\n13016=>'L',\n13017=>'L',\n13018=>'L',\n13019=>'L',\n13020=>'L',\n13021=>'L',\n13022=>'L',\n13023=>'L',\n13024=>'L',\n13025=>'L',\n13026=>'L',\n13027=>'L',\n13028=>'L',\n13029=>'L',\n13030=>'L',\n13031=>'L',\n13032=>'L',\n13033=>'L',\n13034=>'L',\n13035=>'L',\n13036=>'L',\n13037=>'L',\n13038=>'L',\n13039=>'L',\n13040=>'L',\n13041=>'L',\n13042=>'L',\n13043=>'L',\n13044=>'L',\n13045=>'L',\n13046=>'L',\n13047=>'L',\n13048=>'L',\n13049=>'L',\n13050=>'L',\n13051=>'L',\n13052=>'L',\n13053=>'L',\n13054=>'L',\n13056=>'L',\n13057=>'L',\n13058=>'L',\n13059=>'L',\n13060=>'L',\n13061=>'L',\n13062=>'L',\n13063=>'L',\n13064=>'L',\n13065=>'L',\n13066=>'L',\n13067=>'L',\n13068=>'L',\n13069=>'L',\n13070=>'L',\n13071=>'L',\n13072=>'L',\n13073=>'L',\n13074=>'L',\n13075=>'L',\n13076=>'L',\n13077=>'L',\n13078=>'L',\n13079=>'L',\n13080=>'L',\n13081=>'L',\n13082=>'L',\n13083=>'L',\n13084=>'L',\n13085=>'L',\n13086=>'L',\n13087=>'L',\n13088=>'L',\n13089=>'L',\n13090=>'L',\n13091=>'L',\n13092=>'L',\n13093=>'L',\n13094=>'L',\n13095=>'L',\n13096=>'L',\n13097=>'L',\n13098=>'L',\n13099=>'L',\n13100=>'L',\n13101=>'L',\n13102=>'L',\n13103=>'L',\n13104=>'L',\n13105=>'L',\n13106=>'L',\n13107=>'L',\n13108=>'L',\n13109=>'L',\n13110=>'L',\n13111=>'L',\n13112=>'L',\n13113=>'L',\n13114=>'L',\n13115=>'L',\n13116=>'L',\n13117=>'L',\n13118=>'L',\n13119=>'L',\n13120=>'L',\n13121=>'L',\n13122=>'L',\n13123=>'L',\n13124=>'L',\n13125=>'L',\n13126=>'L',\n13127=>'L',\n13128=>'L',\n13129=>'L',\n13130=>'L',\n13131=>'L',\n13132=>'L',\n13133=>'L',\n13134=>'L',\n13135=>'L',\n13136=>'L',\n13137=>'L',\n13138=>'L',\n13139=>'L',\n13140=>'L',\n13141=>'L',\n13142=>'L',\n13143=>'L',\n13144=>'L',\n13145=>'L',\n13146=>'L',\n13147=>'L',\n13148=>'L',\n13149=>'L',\n13150=>'L',\n13151=>'L',\n13152=>'L',\n13153=>'L',\n13154=>'L',\n13155=>'L',\n13156=>'L',\n13157=>'L',\n13158=>'L',\n13159=>'L',\n13160=>'L',\n13161=>'L',\n13162=>'L',\n13163=>'L',\n13164=>'L',\n13165=>'L',\n13166=>'L',\n13167=>'L',\n13168=>'L',\n13169=>'L',\n13170=>'L',\n13171=>'L',\n13172=>'L',\n13173=>'L',\n13174=>'L',\n13175=>'ON',\n13176=>'ON',\n13177=>'ON',\n13178=>'ON',\n13179=>'L',\n13180=>'L',\n13181=>'L',\n13182=>'L',\n13183=>'L',\n13184=>'L',\n13185=>'L',\n13186=>'L',\n13187=>'L',\n13188=>'L',\n13189=>'L',\n13190=>'L',\n13191=>'L',\n13192=>'L',\n13193=>'L',\n13194=>'L',\n13195=>'L',\n13196=>'L',\n13197=>'L',\n13198=>'L',\n13199=>'L',\n13200=>'L',\n13201=>'L',\n13202=>'L',\n13203=>'L',\n13204=>'L',\n13205=>'L',\n13206=>'L',\n13207=>'L',\n13208=>'L',\n13209=>'L',\n13210=>'L',\n13211=>'L',\n13212=>'L',\n13213=>'L',\n13214=>'L',\n13215=>'L',\n13216=>'L',\n13217=>'L',\n13218=>'L',\n13219=>'L',\n13220=>'L',\n13221=>'L',\n13222=>'L',\n13223=>'L',\n13224=>'L',\n13225=>'L',\n13226=>'L',\n13227=>'L',\n13228=>'L',\n13229=>'L',\n13230=>'L',\n13231=>'L',\n13232=>'L',\n13233=>'L',\n13234=>'L',\n13235=>'L',\n13236=>'L',\n13237=>'L',\n13238=>'L',\n13239=>'L',\n13240=>'L',\n13241=>'L',\n13242=>'L',\n13243=>'L',\n13244=>'L',\n13245=>'L',\n13246=>'L',\n13247=>'L',\n13248=>'L',\n13249=>'L',\n13250=>'L',\n13251=>'L',\n13252=>'L',\n13253=>'L',\n13254=>'L',\n13255=>'L',\n13256=>'L',\n13257=>'L',\n13258=>'L',\n13259=>'L',\n13260=>'L',\n13261=>'L',\n13262=>'L',\n13263=>'L',\n13264=>'L',\n13265=>'L',\n13266=>'L',\n13267=>'L',\n13268=>'L',\n13269=>'L',\n13270=>'L',\n13271=>'L',\n13272=>'L',\n13273=>'L',\n13274=>'L',\n13275=>'L',\n13276=>'L',\n13277=>'L',\n13278=>'ON',\n13279=>'ON',\n13280=>'L',\n13281=>'L',\n13282=>'L',\n13283=>'L',\n13284=>'L',\n13285=>'L',\n13286=>'L',\n13287=>'L',\n13288=>'L',\n13289=>'L',\n13290=>'L',\n13291=>'L',\n13292=>'L',\n13293=>'L',\n13294=>'L',\n13295=>'L',\n13296=>'L',\n13297=>'L',\n13298=>'L',\n13299=>'L',\n13300=>'L',\n13301=>'L',\n13302=>'L',\n13303=>'L',\n13304=>'L',\n13305=>'L',\n13306=>'L',\n13307=>'L',\n13308=>'L',\n13309=>'L',\n13310=>'L',\n13311=>'ON',\n13312=>'L',\n19893=>'L',\n19904=>'ON',\n19905=>'ON',\n19906=>'ON',\n19907=>'ON',\n19908=>'ON',\n19909=>'ON',\n19910=>'ON',\n19911=>'ON',\n19912=>'ON',\n19913=>'ON',\n19914=>'ON',\n19915=>'ON',\n19916=>'ON',\n19917=>'ON',\n19918=>'ON',\n19919=>'ON',\n19920=>'ON',\n19921=>'ON',\n19922=>'ON',\n19923=>'ON',\n19924=>'ON',\n19925=>'ON',\n19926=>'ON',\n19927=>'ON',\n19928=>'ON',\n19929=>'ON',\n19930=>'ON',\n19931=>'ON',\n19932=>'ON',\n19933=>'ON',\n19934=>'ON',\n19935=>'ON',\n19936=>'ON',\n19937=>'ON',\n19938=>'ON',\n19939=>'ON',\n19940=>'ON',\n19941=>'ON',\n19942=>'ON',\n19943=>'ON',\n19944=>'ON',\n19945=>'ON',\n19946=>'ON',\n19947=>'ON',\n19948=>'ON',\n19949=>'ON',\n19950=>'ON',\n19951=>'ON',\n19952=>'ON',\n19953=>'ON',\n19954=>'ON',\n19955=>'ON',\n19956=>'ON',\n19957=>'ON',\n19958=>'ON',\n19959=>'ON',\n19960=>'ON',\n19961=>'ON',\n19962=>'ON',\n19963=>'ON',\n19964=>'ON',\n19965=>'ON',\n19966=>'ON',\n19967=>'ON',\n19968=>'L',\n40891=>'L',\n40960=>'L',\n40961=>'L',\n40962=>'L',\n40963=>'L',\n40964=>'L',\n40965=>'L',\n40966=>'L',\n40967=>'L',\n40968=>'L',\n40969=>'L',\n40970=>'L',\n40971=>'L',\n40972=>'L',\n40973=>'L',\n40974=>'L',\n40975=>'L',\n40976=>'L',\n40977=>'L',\n40978=>'L',\n40979=>'L',\n40980=>'L',\n40981=>'L',\n40982=>'L',\n40983=>'L',\n40984=>'L',\n40985=>'L',\n40986=>'L',\n40987=>'L',\n40988=>'L',\n40989=>'L',\n40990=>'L',\n40991=>'L',\n40992=>'L',\n40993=>'L',\n40994=>'L',\n40995=>'L',\n40996=>'L',\n40997=>'L',\n40998=>'L',\n40999=>'L',\n41000=>'L',\n41001=>'L',\n41002=>'L',\n41003=>'L',\n41004=>'L',\n41005=>'L',\n41006=>'L',\n41007=>'L',\n41008=>'L',\n41009=>'L',\n41010=>'L',\n41011=>'L',\n41012=>'L',\n41013=>'L',\n41014=>'L',\n41015=>'L',\n41016=>'L',\n41017=>'L',\n41018=>'L',\n41019=>'L',\n41020=>'L',\n41021=>'L',\n41022=>'L',\n41023=>'L',\n41024=>'L',\n41025=>'L',\n41026=>'L',\n41027=>'L',\n41028=>'L',\n41029=>'L',\n41030=>'L',\n41031=>'L',\n41032=>'L',\n41033=>'L',\n41034=>'L',\n41035=>'L',\n41036=>'L',\n41037=>'L',\n41038=>'L',\n41039=>'L',\n41040=>'L',\n41041=>'L',\n41042=>'L',\n41043=>'L',\n41044=>'L',\n41045=>'L',\n41046=>'L',\n41047=>'L',\n41048=>'L',\n41049=>'L',\n41050=>'L',\n41051=>'L',\n41052=>'L',\n41053=>'L',\n41054=>'L',\n41055=>'L',\n41056=>'L',\n41057=>'L',\n41058=>'L',\n41059=>'L',\n41060=>'L',\n41061=>'L',\n41062=>'L',\n41063=>'L',\n41064=>'L',\n41065=>'L',\n41066=>'L',\n41067=>'L',\n41068=>'L',\n41069=>'L',\n41070=>'L',\n41071=>'L',\n41072=>'L',\n41073=>'L',\n41074=>'L',\n41075=>'L',\n41076=>'L',\n41077=>'L',\n41078=>'L',\n41079=>'L',\n41080=>'L',\n41081=>'L',\n41082=>'L',\n41083=>'L',\n41084=>'L',\n41085=>'L',\n41086=>'L',\n41087=>'L',\n41088=>'L',\n41089=>'L',\n41090=>'L',\n41091=>'L',\n41092=>'L',\n41093=>'L',\n41094=>'L',\n41095=>'L',\n41096=>'L',\n41097=>'L',\n41098=>'L',\n41099=>'L',\n41100=>'L',\n41101=>'L',\n41102=>'L',\n41103=>'L',\n41104=>'L',\n41105=>'L',\n41106=>'L',\n41107=>'L',\n41108=>'L',\n41109=>'L',\n41110=>'L',\n41111=>'L',\n41112=>'L',\n41113=>'L',\n41114=>'L',\n41115=>'L',\n41116=>'L',\n41117=>'L',\n41118=>'L',\n41119=>'L',\n41120=>'L',\n41121=>'L',\n41122=>'L',\n41123=>'L',\n41124=>'L',\n41125=>'L',\n41126=>'L',\n41127=>'L',\n41128=>'L',\n41129=>'L',\n41130=>'L',\n41131=>'L',\n41132=>'L',\n41133=>'L',\n41134=>'L',\n41135=>'L',\n41136=>'L',\n41137=>'L',\n41138=>'L',\n41139=>'L',\n41140=>'L',\n41141=>'L',\n41142=>'L',\n41143=>'L',\n41144=>'L',\n41145=>'L',\n41146=>'L',\n41147=>'L',\n41148=>'L',\n41149=>'L',\n41150=>'L',\n41151=>'L',\n41152=>'L',\n41153=>'L',\n41154=>'L',\n41155=>'L',\n41156=>'L',\n41157=>'L',\n41158=>'L',\n41159=>'L',\n41160=>'L',\n41161=>'L',\n41162=>'L',\n41163=>'L',\n41164=>'L',\n41165=>'L',\n41166=>'L',\n41167=>'L',\n41168=>'L',\n41169=>'L',\n41170=>'L',\n41171=>'L',\n41172=>'L',\n41173=>'L',\n41174=>'L',\n41175=>'L',\n41176=>'L',\n41177=>'L',\n41178=>'L',\n41179=>'L',\n41180=>'L',\n41181=>'L',\n41182=>'L',\n41183=>'L',\n41184=>'L',\n41185=>'L',\n41186=>'L',\n41187=>'L',\n41188=>'L',\n41189=>'L',\n41190=>'L',\n41191=>'L',\n41192=>'L',\n41193=>'L',\n41194=>'L',\n41195=>'L',\n41196=>'L',\n41197=>'L',\n41198=>'L',\n41199=>'L',\n41200=>'L',\n41201=>'L',\n41202=>'L',\n41203=>'L',\n41204=>'L',\n41205=>'L',\n41206=>'L',\n41207=>'L',\n41208=>'L',\n41209=>'L',\n41210=>'L',\n41211=>'L',\n41212=>'L',\n41213=>'L',\n41214=>'L',\n41215=>'L',\n41216=>'L',\n41217=>'L',\n41218=>'L',\n41219=>'L',\n41220=>'L',\n41221=>'L',\n41222=>'L',\n41223=>'L',\n41224=>'L',\n41225=>'L',\n41226=>'L',\n41227=>'L',\n41228=>'L',\n41229=>'L',\n41230=>'L',\n41231=>'L',\n41232=>'L',\n41233=>'L',\n41234=>'L',\n41235=>'L',\n41236=>'L',\n41237=>'L',\n41238=>'L',\n41239=>'L',\n41240=>'L',\n41241=>'L',\n41242=>'L',\n41243=>'L',\n41244=>'L',\n41245=>'L',\n41246=>'L',\n41247=>'L',\n41248=>'L',\n41249=>'L',\n41250=>'L',\n41251=>'L',\n41252=>'L',\n41253=>'L',\n41254=>'L',\n41255=>'L',\n41256=>'L',\n41257=>'L',\n41258=>'L',\n41259=>'L',\n41260=>'L',\n41261=>'L',\n41262=>'L',\n41263=>'L',\n41264=>'L',\n41265=>'L',\n41266=>'L',\n41267=>'L',\n41268=>'L',\n41269=>'L',\n41270=>'L',\n41271=>'L',\n41272=>'L',\n41273=>'L',\n41274=>'L',\n41275=>'L',\n41276=>'L',\n41277=>'L',\n41278=>'L',\n41279=>'L',\n41280=>'L',\n41281=>'L',\n41282=>'L',\n41283=>'L',\n41284=>'L',\n41285=>'L',\n41286=>'L',\n41287=>'L',\n41288=>'L',\n41289=>'L',\n41290=>'L',\n41291=>'L',\n41292=>'L',\n41293=>'L',\n41294=>'L',\n41295=>'L',\n41296=>'L',\n41297=>'L',\n41298=>'L',\n41299=>'L',\n41300=>'L',\n41301=>'L',\n41302=>'L',\n41303=>'L',\n41304=>'L',\n41305=>'L',\n41306=>'L',\n41307=>'L',\n41308=>'L',\n41309=>'L',\n41310=>'L',\n41311=>'L',\n41312=>'L',\n41313=>'L',\n41314=>'L',\n41315=>'L',\n41316=>'L',\n41317=>'L',\n41318=>'L',\n41319=>'L',\n41320=>'L',\n41321=>'L',\n41322=>'L',\n41323=>'L',\n41324=>'L',\n41325=>'L',\n41326=>'L',\n41327=>'L',\n41328=>'L',\n41329=>'L',\n41330=>'L',\n41331=>'L',\n41332=>'L',\n41333=>'L',\n41334=>'L',\n41335=>'L',\n41336=>'L',\n41337=>'L',\n41338=>'L',\n41339=>'L',\n41340=>'L',\n41341=>'L',\n41342=>'L',\n41343=>'L',\n41344=>'L',\n41345=>'L',\n41346=>'L',\n41347=>'L',\n41348=>'L',\n41349=>'L',\n41350=>'L',\n41351=>'L',\n41352=>'L',\n41353=>'L',\n41354=>'L',\n41355=>'L',\n41356=>'L',\n41357=>'L',\n41358=>'L',\n41359=>'L',\n41360=>'L',\n41361=>'L',\n41362=>'L',\n41363=>'L',\n41364=>'L',\n41365=>'L',\n41366=>'L',\n41367=>'L',\n41368=>'L',\n41369=>'L',\n41370=>'L',\n41371=>'L',\n41372=>'L',\n41373=>'L',\n41374=>'L',\n41375=>'L',\n41376=>'L',\n41377=>'L',\n41378=>'L',\n41379=>'L',\n41380=>'L',\n41381=>'L',\n41382=>'L',\n41383=>'L',\n41384=>'L',\n41385=>'L',\n41386=>'L',\n41387=>'L',\n41388=>'L',\n41389=>'L',\n41390=>'L',\n41391=>'L',\n41392=>'L',\n41393=>'L',\n41394=>'L',\n41395=>'L',\n41396=>'L',\n41397=>'L',\n41398=>'L',\n41399=>'L',\n41400=>'L',\n41401=>'L',\n41402=>'L',\n41403=>'L',\n41404=>'L',\n41405=>'L',\n41406=>'L',\n41407=>'L',\n41408=>'L',\n41409=>'L',\n41410=>'L',\n41411=>'L',\n41412=>'L',\n41413=>'L',\n41414=>'L',\n41415=>'L',\n41416=>'L',\n41417=>'L',\n41418=>'L',\n41419=>'L',\n41420=>'L',\n41421=>'L',\n41422=>'L',\n41423=>'L',\n41424=>'L',\n41425=>'L',\n41426=>'L',\n41427=>'L',\n41428=>'L',\n41429=>'L',\n41430=>'L',\n41431=>'L',\n41432=>'L',\n41433=>'L',\n41434=>'L',\n41435=>'L',\n41436=>'L',\n41437=>'L',\n41438=>'L',\n41439=>'L',\n41440=>'L',\n41441=>'L',\n41442=>'L',\n41443=>'L',\n41444=>'L',\n41445=>'L',\n41446=>'L',\n41447=>'L',\n41448=>'L',\n41449=>'L',\n41450=>'L',\n41451=>'L',\n41452=>'L',\n41453=>'L',\n41454=>'L',\n41455=>'L',\n41456=>'L',\n41457=>'L',\n41458=>'L',\n41459=>'L',\n41460=>'L',\n41461=>'L',\n41462=>'L',\n41463=>'L',\n41464=>'L',\n41465=>'L',\n41466=>'L',\n41467=>'L',\n41468=>'L',\n41469=>'L',\n41470=>'L',\n41471=>'L',\n41472=>'L',\n41473=>'L',\n41474=>'L',\n41475=>'L',\n41476=>'L',\n41477=>'L',\n41478=>'L',\n41479=>'L',\n41480=>'L',\n41481=>'L',\n41482=>'L',\n41483=>'L',\n41484=>'L',\n41485=>'L',\n41486=>'L',\n41487=>'L',\n41488=>'L',\n41489=>'L',\n41490=>'L',\n41491=>'L',\n41492=>'L',\n41493=>'L',\n41494=>'L',\n41495=>'L',\n41496=>'L',\n41497=>'L',\n41498=>'L',\n41499=>'L',\n41500=>'L',\n41501=>'L',\n41502=>'L',\n41503=>'L',\n41504=>'L',\n41505=>'L',\n41506=>'L',\n41507=>'L',\n41508=>'L',\n41509=>'L',\n41510=>'L',\n41511=>'L',\n41512=>'L',\n41513=>'L',\n41514=>'L',\n41515=>'L',\n41516=>'L',\n41517=>'L',\n41518=>'L',\n41519=>'L',\n41520=>'L',\n41521=>'L',\n41522=>'L',\n41523=>'L',\n41524=>'L',\n41525=>'L',\n41526=>'L',\n41527=>'L',\n41528=>'L',\n41529=>'L',\n41530=>'L',\n41531=>'L',\n41532=>'L',\n41533=>'L',\n41534=>'L',\n41535=>'L',\n41536=>'L',\n41537=>'L',\n41538=>'L',\n41539=>'L',\n41540=>'L',\n41541=>'L',\n41542=>'L',\n41543=>'L',\n41544=>'L',\n41545=>'L',\n41546=>'L',\n41547=>'L',\n41548=>'L',\n41549=>'L',\n41550=>'L',\n41551=>'L',\n41552=>'L',\n41553=>'L',\n41554=>'L',\n41555=>'L',\n41556=>'L',\n41557=>'L',\n41558=>'L',\n41559=>'L',\n41560=>'L',\n41561=>'L',\n41562=>'L',\n41563=>'L',\n41564=>'L',\n41565=>'L',\n41566=>'L',\n41567=>'L',\n41568=>'L',\n41569=>'L',\n41570=>'L',\n41571=>'L',\n41572=>'L',\n41573=>'L',\n41574=>'L',\n41575=>'L',\n41576=>'L',\n41577=>'L',\n41578=>'L',\n41579=>'L',\n41580=>'L',\n41581=>'L',\n41582=>'L',\n41583=>'L',\n41584=>'L',\n41585=>'L',\n41586=>'L',\n41587=>'L',\n41588=>'L',\n41589=>'L',\n41590=>'L',\n41591=>'L',\n41592=>'L',\n41593=>'L',\n41594=>'L',\n41595=>'L',\n41596=>'L',\n41597=>'L',\n41598=>'L',\n41599=>'L',\n41600=>'L',\n41601=>'L',\n41602=>'L',\n41603=>'L',\n41604=>'L',\n41605=>'L',\n41606=>'L',\n41607=>'L',\n41608=>'L',\n41609=>'L',\n41610=>'L',\n41611=>'L',\n41612=>'L',\n41613=>'L',\n41614=>'L',\n41615=>'L',\n41616=>'L',\n41617=>'L',\n41618=>'L',\n41619=>'L',\n41620=>'L',\n41621=>'L',\n41622=>'L',\n41623=>'L',\n41624=>'L',\n41625=>'L',\n41626=>'L',\n41627=>'L',\n41628=>'L',\n41629=>'L',\n41630=>'L',\n41631=>'L',\n41632=>'L',\n41633=>'L',\n41634=>'L',\n41635=>'L',\n41636=>'L',\n41637=>'L',\n41638=>'L',\n41639=>'L',\n41640=>'L',\n41641=>'L',\n41642=>'L',\n41643=>'L',\n41644=>'L',\n41645=>'L',\n41646=>'L',\n41647=>'L',\n41648=>'L',\n41649=>'L',\n41650=>'L',\n41651=>'L',\n41652=>'L',\n41653=>'L',\n41654=>'L',\n41655=>'L',\n41656=>'L',\n41657=>'L',\n41658=>'L',\n41659=>'L',\n41660=>'L',\n41661=>'L',\n41662=>'L',\n41663=>'L',\n41664=>'L',\n41665=>'L',\n41666=>'L',\n41667=>'L',\n41668=>'L',\n41669=>'L',\n41670=>'L',\n41671=>'L',\n41672=>'L',\n41673=>'L',\n41674=>'L',\n41675=>'L',\n41676=>'L',\n41677=>'L',\n41678=>'L',\n41679=>'L',\n41680=>'L',\n41681=>'L',\n41682=>'L',\n41683=>'L',\n41684=>'L',\n41685=>'L',\n41686=>'L',\n41687=>'L',\n41688=>'L',\n41689=>'L',\n41690=>'L',\n41691=>'L',\n41692=>'L',\n41693=>'L',\n41694=>'L',\n41695=>'L',\n41696=>'L',\n41697=>'L',\n41698=>'L',\n41699=>'L',\n41700=>'L',\n41701=>'L',\n41702=>'L',\n41703=>'L',\n41704=>'L',\n41705=>'L',\n41706=>'L',\n41707=>'L',\n41708=>'L',\n41709=>'L',\n41710=>'L',\n41711=>'L',\n41712=>'L',\n41713=>'L',\n41714=>'L',\n41715=>'L',\n41716=>'L',\n41717=>'L',\n41718=>'L',\n41719=>'L',\n41720=>'L',\n41721=>'L',\n41722=>'L',\n41723=>'L',\n41724=>'L',\n41725=>'L',\n41726=>'L',\n41727=>'L',\n41728=>'L',\n41729=>'L',\n41730=>'L',\n41731=>'L',\n41732=>'L',\n41733=>'L',\n41734=>'L',\n41735=>'L',\n41736=>'L',\n41737=>'L',\n41738=>'L',\n41739=>'L',\n41740=>'L',\n41741=>'L',\n41742=>'L',\n41743=>'L',\n41744=>'L',\n41745=>'L',\n41746=>'L',\n41747=>'L',\n41748=>'L',\n41749=>'L',\n41750=>'L',\n41751=>'L',\n41752=>'L',\n41753=>'L',\n41754=>'L',\n41755=>'L',\n41756=>'L',\n41757=>'L',\n41758=>'L',\n41759=>'L',\n41760=>'L',\n41761=>'L',\n41762=>'L',\n41763=>'L',\n41764=>'L',\n41765=>'L',\n41766=>'L',\n41767=>'L',\n41768=>'L',\n41769=>'L',\n41770=>'L',\n41771=>'L',\n41772=>'L',\n41773=>'L',\n41774=>'L',\n41775=>'L',\n41776=>'L',\n41777=>'L',\n41778=>'L',\n41779=>'L',\n41780=>'L',\n41781=>'L',\n41782=>'L',\n41783=>'L',\n41784=>'L',\n41785=>'L',\n41786=>'L',\n41787=>'L',\n41788=>'L',\n41789=>'L',\n41790=>'L',\n41791=>'L',\n41792=>'L',\n41793=>'L',\n41794=>'L',\n41795=>'L',\n41796=>'L',\n41797=>'L',\n41798=>'L',\n41799=>'L',\n41800=>'L',\n41801=>'L',\n41802=>'L',\n41803=>'L',\n41804=>'L',\n41805=>'L',\n41806=>'L',\n41807=>'L',\n41808=>'L',\n41809=>'L',\n41810=>'L',\n41811=>'L',\n41812=>'L',\n41813=>'L',\n41814=>'L',\n41815=>'L',\n41816=>'L',\n41817=>'L',\n41818=>'L',\n41819=>'L',\n41820=>'L',\n41821=>'L',\n41822=>'L',\n41823=>'L',\n41824=>'L',\n41825=>'L',\n41826=>'L',\n41827=>'L',\n41828=>'L',\n41829=>'L',\n41830=>'L',\n41831=>'L',\n41832=>'L',\n41833=>'L',\n41834=>'L',\n41835=>'L',\n41836=>'L',\n41837=>'L',\n41838=>'L',\n41839=>'L',\n41840=>'L',\n41841=>'L',\n41842=>'L',\n41843=>'L',\n41844=>'L',\n41845=>'L',\n41846=>'L',\n41847=>'L',\n41848=>'L',\n41849=>'L',\n41850=>'L',\n41851=>'L',\n41852=>'L',\n41853=>'L',\n41854=>'L',\n41855=>'L',\n41856=>'L',\n41857=>'L',\n41858=>'L',\n41859=>'L',\n41860=>'L',\n41861=>'L',\n41862=>'L',\n41863=>'L',\n41864=>'L',\n41865=>'L',\n41866=>'L',\n41867=>'L',\n41868=>'L',\n41869=>'L',\n41870=>'L',\n41871=>'L',\n41872=>'L',\n41873=>'L',\n41874=>'L',\n41875=>'L',\n41876=>'L',\n41877=>'L',\n41878=>'L',\n41879=>'L',\n41880=>'L',\n41881=>'L',\n41882=>'L',\n41883=>'L',\n41884=>'L',\n41885=>'L',\n41886=>'L',\n41887=>'L',\n41888=>'L',\n41889=>'L',\n41890=>'L',\n41891=>'L',\n41892=>'L',\n41893=>'L',\n41894=>'L',\n41895=>'L',\n41896=>'L',\n41897=>'L',\n41898=>'L',\n41899=>'L',\n41900=>'L',\n41901=>'L',\n41902=>'L',\n41903=>'L',\n41904=>'L',\n41905=>'L',\n41906=>'L',\n41907=>'L',\n41908=>'L',\n41909=>'L',\n41910=>'L',\n41911=>'L',\n41912=>'L',\n41913=>'L',\n41914=>'L',\n41915=>'L',\n41916=>'L',\n41917=>'L',\n41918=>'L',\n41919=>'L',\n41920=>'L',\n41921=>'L',\n41922=>'L',\n41923=>'L',\n41924=>'L',\n41925=>'L',\n41926=>'L',\n41927=>'L',\n41928=>'L',\n41929=>'L',\n41930=>'L',\n41931=>'L',\n41932=>'L',\n41933=>'L',\n41934=>'L',\n41935=>'L',\n41936=>'L',\n41937=>'L',\n41938=>'L',\n41939=>'L',\n41940=>'L',\n41941=>'L',\n41942=>'L',\n41943=>'L',\n41944=>'L',\n41945=>'L',\n41946=>'L',\n41947=>'L',\n41948=>'L',\n41949=>'L',\n41950=>'L',\n41951=>'L',\n41952=>'L',\n41953=>'L',\n41954=>'L',\n41955=>'L',\n41956=>'L',\n41957=>'L',\n41958=>'L',\n41959=>'L',\n41960=>'L',\n41961=>'L',\n41962=>'L',\n41963=>'L',\n41964=>'L',\n41965=>'L',\n41966=>'L',\n41967=>'L',\n41968=>'L',\n41969=>'L',\n41970=>'L',\n41971=>'L',\n41972=>'L',\n41973=>'L',\n41974=>'L',\n41975=>'L',\n41976=>'L',\n41977=>'L',\n41978=>'L',\n41979=>'L',\n41980=>'L',\n41981=>'L',\n41982=>'L',\n41983=>'L',\n41984=>'L',\n41985=>'L',\n41986=>'L',\n41987=>'L',\n41988=>'L',\n41989=>'L',\n41990=>'L',\n41991=>'L',\n41992=>'L',\n41993=>'L',\n41994=>'L',\n41995=>'L',\n41996=>'L',\n41997=>'L',\n41998=>'L',\n41999=>'L',\n42000=>'L',\n42001=>'L',\n42002=>'L',\n42003=>'L',\n42004=>'L',\n42005=>'L',\n42006=>'L',\n42007=>'L',\n42008=>'L',\n42009=>'L',\n42010=>'L',\n42011=>'L',\n42012=>'L',\n42013=>'L',\n42014=>'L',\n42015=>'L',\n42016=>'L',\n42017=>'L',\n42018=>'L',\n42019=>'L',\n42020=>'L',\n42021=>'L',\n42022=>'L',\n42023=>'L',\n42024=>'L',\n42025=>'L',\n42026=>'L',\n42027=>'L',\n42028=>'L',\n42029=>'L',\n42030=>'L',\n42031=>'L',\n42032=>'L',\n42033=>'L',\n42034=>'L',\n42035=>'L',\n42036=>'L',\n42037=>'L',\n42038=>'L',\n42039=>'L',\n42040=>'L',\n42041=>'L',\n42042=>'L',\n42043=>'L',\n42044=>'L',\n42045=>'L',\n42046=>'L',\n42047=>'L',\n42048=>'L',\n42049=>'L',\n42050=>'L',\n42051=>'L',\n42052=>'L',\n42053=>'L',\n42054=>'L',\n42055=>'L',\n42056=>'L',\n42057=>'L',\n42058=>'L',\n42059=>'L',\n42060=>'L',\n42061=>'L',\n42062=>'L',\n42063=>'L',\n42064=>'L',\n42065=>'L',\n42066=>'L',\n42067=>'L',\n42068=>'L',\n42069=>'L',\n42070=>'L',\n42071=>'L',\n42072=>'L',\n42073=>'L',\n42074=>'L',\n42075=>'L',\n42076=>'L',\n42077=>'L',\n42078=>'L',\n42079=>'L',\n42080=>'L',\n42081=>'L',\n42082=>'L',\n42083=>'L',\n42084=>'L',\n42085=>'L',\n42086=>'L',\n42087=>'L',\n42088=>'L',\n42089=>'L',\n42090=>'L',\n42091=>'L',\n42092=>'L',\n42093=>'L',\n42094=>'L',\n42095=>'L',\n42096=>'L',\n42097=>'L',\n42098=>'L',\n42099=>'L',\n42100=>'L',\n42101=>'L',\n42102=>'L',\n42103=>'L',\n42104=>'L',\n42105=>'L',\n42106=>'L',\n42107=>'L',\n42108=>'L',\n42109=>'L',\n42110=>'L',\n42111=>'L',\n42112=>'L',\n42113=>'L',\n42114=>'L',\n42115=>'L',\n42116=>'L',\n42117=>'L',\n42118=>'L',\n42119=>'L',\n42120=>'L',\n42121=>'L',\n42122=>'L',\n42123=>'L',\n42124=>'L',\n42128=>'ON',\n42129=>'ON',\n42130=>'ON',\n42131=>'ON',\n42132=>'ON',\n42133=>'ON',\n42134=>'ON',\n42135=>'ON',\n42136=>'ON',\n42137=>'ON',\n42138=>'ON',\n42139=>'ON',\n42140=>'ON',\n42141=>'ON',\n42142=>'ON',\n42143=>'ON',\n42144=>'ON',\n42145=>'ON',\n42146=>'ON',\n42147=>'ON',\n42148=>'ON',\n42149=>'ON',\n42150=>'ON',\n42151=>'ON',\n42152=>'ON',\n42153=>'ON',\n42154=>'ON',\n42155=>'ON',\n42156=>'ON',\n42157=>'ON',\n42158=>'ON',\n42159=>'ON',\n42160=>'ON',\n42161=>'ON',\n42162=>'ON',\n42163=>'ON',\n42164=>'ON',\n42165=>'ON',\n42166=>'ON',\n42167=>'ON',\n42168=>'ON',\n42169=>'ON',\n42170=>'ON',\n42171=>'ON',\n42172=>'ON',\n42173=>'ON',\n42174=>'ON',\n42175=>'ON',\n42176=>'ON',\n42177=>'ON',\n42178=>'ON',\n42179=>'ON',\n42180=>'ON',\n42181=>'ON',\n42182=>'ON',\n42752=>'ON',\n42753=>'ON',\n42754=>'ON',\n42755=>'ON',\n42756=>'ON',\n42757=>'ON',\n42758=>'ON',\n42759=>'ON',\n42760=>'ON',\n42761=>'ON',\n42762=>'ON',\n42763=>'ON',\n42764=>'ON',\n42765=>'ON',\n42766=>'ON',\n42767=>'ON',\n42768=>'ON',\n42769=>'ON',\n42770=>'ON',\n42771=>'ON',\n42772=>'ON',\n42773=>'ON',\n42774=>'ON',\n42775=>'ON',\n42776=>'ON',\n42777=>'ON',\n42778=>'ON',\n42784=>'ON',\n42785=>'ON',\n43008=>'L',\n43009=>'L',\n43010=>'NSM',\n43011=>'L',\n43012=>'L',\n43013=>'L',\n43014=>'NSM',\n43015=>'L',\n43016=>'L',\n43017=>'L',\n43018=>'L',\n43019=>'NSM',\n43020=>'L',\n43021=>'L',\n43022=>'L',\n43023=>'L',\n43024=>'L',\n43025=>'L',\n43026=>'L',\n43027=>'L',\n43028=>'L',\n43029=>'L',\n43030=>'L',\n43031=>'L',\n43032=>'L',\n43033=>'L',\n43034=>'L',\n43035=>'L',\n43036=>'L',\n43037=>'L',\n43038=>'L',\n43039=>'L',\n43040=>'L',\n43041=>'L',\n43042=>'L',\n43043=>'L',\n43044=>'L',\n43045=>'NSM',\n43046=>'NSM',\n43047=>'L',\n43048=>'ON',\n43049=>'ON',\n43050=>'ON',\n43051=>'ON',\n43072=>'L',\n43073=>'L',\n43074=>'L',\n43075=>'L',\n43076=>'L',\n43077=>'L',\n43078=>'L',\n43079=>'L',\n43080=>'L',\n43081=>'L',\n43082=>'L',\n43083=>'L',\n43084=>'L',\n43085=>'L',\n43086=>'L',\n43087=>'L',\n43088=>'L',\n43089=>'L',\n43090=>'L',\n43091=>'L',\n43092=>'L',\n43093=>'L',\n43094=>'L',\n43095=>'L',\n43096=>'L',\n43097=>'L',\n43098=>'L',\n43099=>'L',\n43100=>'L',\n43101=>'L',\n43102=>'L',\n43103=>'L',\n43104=>'L',\n43105=>'L',\n43106=>'L',\n43107=>'L',\n43108=>'L',\n43109=>'L',\n43110=>'L',\n43111=>'L',\n43112=>'L',\n43113=>'L',\n43114=>'L',\n43115=>'L',\n43116=>'L',\n43117=>'L',\n43118=>'L',\n43119=>'L',\n43120=>'L',\n43121=>'L',\n43122=>'L',\n43123=>'L',\n43124=>'ON',\n43125=>'ON',\n43126=>'ON',\n43127=>'ON',\n44032=>'L',\n55203=>'L',\n55296=>'L',\n56191=>'L',\n56192=>'L',\n56319=>'L',\n56320=>'L',\n57343=>'L',\n57344=>'L',\n63743=>'L',\n63744=>'L',\n63745=>'L',\n63746=>'L',\n63747=>'L',\n63748=>'L',\n63749=>'L',\n63750=>'L',\n63751=>'L',\n63752=>'L',\n63753=>'L',\n63754=>'L',\n63755=>'L',\n63756=>'L',\n63757=>'L',\n63758=>'L',\n63759=>'L',\n63760=>'L',\n63761=>'L',\n63762=>'L',\n63763=>'L',\n63764=>'L',\n63765=>'L',\n63766=>'L',\n63767=>'L',\n63768=>'L',\n63769=>'L',\n63770=>'L',\n63771=>'L',\n63772=>'L',\n63773=>'L',\n63774=>'L',\n63775=>'L',\n63776=>'L',\n63777=>'L',\n63778=>'L',\n63779=>'L',\n63780=>'L',\n63781=>'L',\n63782=>'L',\n63783=>'L',\n63784=>'L',\n63785=>'L',\n63786=>'L',\n63787=>'L',\n63788=>'L',\n63789=>'L',\n63790=>'L',\n63791=>'L',\n63792=>'L',\n63793=>'L',\n63794=>'L',\n63795=>'L',\n63796=>'L',\n63797=>'L',\n63798=>'L',\n63799=>'L',\n63800=>'L',\n63801=>'L',\n63802=>'L',\n63803=>'L',\n63804=>'L',\n63805=>'L',\n63806=>'L',\n63807=>'L',\n63808=>'L',\n63809=>'L',\n63810=>'L',\n63811=>'L',\n63812=>'L',\n63813=>'L',\n63814=>'L',\n63815=>'L',\n63816=>'L',\n63817=>'L',\n63818=>'L',\n63819=>'L',\n63820=>'L',\n63821=>'L',\n63822=>'L',\n63823=>'L',\n63824=>'L',\n63825=>'L',\n63826=>'L',\n63827=>'L',\n63828=>'L',\n63829=>'L',\n63830=>'L',\n63831=>'L',\n63832=>'L',\n63833=>'L',\n63834=>'L',\n63835=>'L',\n63836=>'L',\n63837=>'L',\n63838=>'L',\n63839=>'L',\n63840=>'L',\n63841=>'L',\n63842=>'L',\n63843=>'L',\n63844=>'L',\n63845=>'L',\n63846=>'L',\n63847=>'L',\n63848=>'L',\n63849=>'L',\n63850=>'L',\n63851=>'L',\n63852=>'L',\n63853=>'L',\n63854=>'L',\n63855=>'L',\n63856=>'L',\n63857=>'L',\n63858=>'L',\n63859=>'L',\n63860=>'L',\n63861=>'L',\n63862=>'L',\n63863=>'L',\n63864=>'L',\n63865=>'L',\n63866=>'L',\n63867=>'L',\n63868=>'L',\n63869=>'L',\n63870=>'L',\n63871=>'L',\n63872=>'L',\n63873=>'L',\n63874=>'L',\n63875=>'L',\n63876=>'L',\n63877=>'L',\n63878=>'L',\n63879=>'L',\n63880=>'L',\n63881=>'L',\n63882=>'L',\n63883=>'L',\n63884=>'L',\n63885=>'L',\n63886=>'L',\n63887=>'L',\n63888=>'L',\n63889=>'L',\n63890=>'L',\n63891=>'L',\n63892=>'L',\n63893=>'L',\n63894=>'L',\n63895=>'L',\n63896=>'L',\n63897=>'L',\n63898=>'L',\n63899=>'L',\n63900=>'L',\n63901=>'L',\n63902=>'L',\n63903=>'L',\n63904=>'L',\n63905=>'L',\n63906=>'L',\n63907=>'L',\n63908=>'L',\n63909=>'L',\n63910=>'L',\n63911=>'L',\n63912=>'L',\n63913=>'L',\n63914=>'L',\n63915=>'L',\n63916=>'L',\n63917=>'L',\n63918=>'L',\n63919=>'L',\n63920=>'L',\n63921=>'L',\n63922=>'L',\n63923=>'L',\n63924=>'L',\n63925=>'L',\n63926=>'L',\n63927=>'L',\n63928=>'L',\n63929=>'L',\n63930=>'L',\n63931=>'L',\n63932=>'L',\n63933=>'L',\n63934=>'L',\n63935=>'L',\n63936=>'L',\n63937=>'L',\n63938=>'L',\n63939=>'L',\n63940=>'L',\n63941=>'L',\n63942=>'L',\n63943=>'L',\n63944=>'L',\n63945=>'L',\n63946=>'L',\n63947=>'L',\n63948=>'L',\n63949=>'L',\n63950=>'L',\n63951=>'L',\n63952=>'L',\n63953=>'L',\n63954=>'L',\n63955=>'L',\n63956=>'L',\n63957=>'L',\n63958=>'L',\n63959=>'L',\n63960=>'L',\n63961=>'L',\n63962=>'L',\n63963=>'L',\n63964=>'L',\n63965=>'L',\n63966=>'L',\n63967=>'L',\n63968=>'L',\n63969=>'L',\n63970=>'L',\n63971=>'L',\n63972=>'L',\n63973=>'L',\n63974=>'L',\n63975=>'L',\n63976=>'L',\n63977=>'L',\n63978=>'L',\n63979=>'L',\n63980=>'L',\n63981=>'L',\n63982=>'L',\n63983=>'L',\n63984=>'L',\n63985=>'L',\n63986=>'L',\n63987=>'L',\n63988=>'L',\n63989=>'L',\n63990=>'L',\n63991=>'L',\n63992=>'L',\n63993=>'L',\n63994=>'L',\n63995=>'L',\n63996=>'L',\n63997=>'L',\n63998=>'L',\n63999=>'L',\n64000=>'L',\n64001=>'L',\n64002=>'L',\n64003=>'L',\n64004=>'L',\n64005=>'L',\n64006=>'L',\n64007=>'L',\n64008=>'L',\n64009=>'L',\n64010=>'L',\n64011=>'L',\n64012=>'L',\n64013=>'L',\n64014=>'L',\n64015=>'L',\n64016=>'L',\n64017=>'L',\n64018=>'L',\n64019=>'L',\n64020=>'L',\n64021=>'L',\n64022=>'L',\n64023=>'L',\n64024=>'L',\n64025=>'L',\n64026=>'L',\n64027=>'L',\n64028=>'L',\n64029=>'L',\n64030=>'L',\n64031=>'L',\n64032=>'L',\n64033=>'L',\n64034=>'L',\n64035=>'L',\n64036=>'L',\n64037=>'L',\n64038=>'L',\n64039=>'L',\n64040=>'L',\n64041=>'L',\n64042=>'L',\n64043=>'L',\n64044=>'L',\n64045=>'L',\n64048=>'L',\n64049=>'L',\n64050=>'L',\n64051=>'L',\n64052=>'L',\n64053=>'L',\n64054=>'L',\n64055=>'L',\n64056=>'L',\n64057=>'L',\n64058=>'L',\n64059=>'L',\n64060=>'L',\n64061=>'L',\n64062=>'L',\n64063=>'L',\n64064=>'L',\n64065=>'L',\n64066=>'L',\n64067=>'L',\n64068=>'L',\n64069=>'L',\n64070=>'L',\n64071=>'L',\n64072=>'L',\n64073=>'L',\n64074=>'L',\n64075=>'L',\n64076=>'L',\n64077=>'L',\n64078=>'L',\n64079=>'L',\n64080=>'L',\n64081=>'L',\n64082=>'L',\n64083=>'L',\n64084=>'L',\n64085=>'L',\n64086=>'L',\n64087=>'L',\n64088=>'L',\n64089=>'L',\n64090=>'L',\n64091=>'L',\n64092=>'L',\n64093=>'L',\n64094=>'L',\n64095=>'L',\n64096=>'L',\n64097=>'L',\n64098=>'L',\n64099=>'L',\n64100=>'L',\n64101=>'L',\n64102=>'L',\n64103=>'L',\n64104=>'L',\n64105=>'L',\n64106=>'L',\n64112=>'L',\n64113=>'L',\n64114=>'L',\n64115=>'L',\n64116=>'L',\n64117=>'L',\n64118=>'L',\n64119=>'L',\n64120=>'L',\n64121=>'L',\n64122=>'L',\n64123=>'L',\n64124=>'L',\n64125=>'L',\n64126=>'L',\n64127=>'L',\n64128=>'L',\n64129=>'L',\n64130=>'L',\n64131=>'L',\n64132=>'L',\n64133=>'L',\n64134=>'L',\n64135=>'L',\n64136=>'L',\n64137=>'L',\n64138=>'L',\n64139=>'L',\n64140=>'L',\n64141=>'L',\n64142=>'L',\n64143=>'L',\n64144=>'L',\n64145=>'L',\n64146=>'L',\n64147=>'L',\n64148=>'L',\n64149=>'L',\n64150=>'L',\n64151=>'L',\n64152=>'L',\n64153=>'L',\n64154=>'L',\n64155=>'L',\n64156=>'L',\n64157=>'L',\n64158=>'L',\n64159=>'L',\n64160=>'L',\n64161=>'L',\n64162=>'L',\n64163=>'L',\n64164=>'L',\n64165=>'L',\n64166=>'L',\n64167=>'L',\n64168=>'L',\n64169=>'L',\n64170=>'L',\n64171=>'L',\n64172=>'L',\n64173=>'L',\n64174=>'L',\n64175=>'L',\n64176=>'L',\n64177=>'L',\n64178=>'L',\n64179=>'L',\n64180=>'L',\n64181=>'L',\n64182=>'L',\n64183=>'L',\n64184=>'L',\n64185=>'L',\n64186=>'L',\n64187=>'L',\n64188=>'L',\n64189=>'L',\n64190=>'L',\n64191=>'L',\n64192=>'L',\n64193=>'L',\n64194=>'L',\n64195=>'L',\n64196=>'L',\n64197=>'L',\n64198=>'L',\n64199=>'L',\n64200=>'L',\n64201=>'L',\n64202=>'L',\n64203=>'L',\n64204=>'L',\n64205=>'L',\n64206=>'L',\n64207=>'L',\n64208=>'L',\n64209=>'L',\n64210=>'L',\n64211=>'L',\n64212=>'L',\n64213=>'L',\n64214=>'L',\n64215=>'L',\n64216=>'L',\n64217=>'L',\n64256=>'L',\n64257=>'L',\n64258=>'L',\n64259=>'L',\n64260=>'L',\n64261=>'L',\n64262=>'L',\n64275=>'L',\n64276=>'L',\n64277=>'L',\n64278=>'L',\n64279=>'L',\n64285=>'R',\n64286=>'NSM',\n64287=>'R',\n64288=>'R',\n64289=>'R',\n64290=>'R',\n64291=>'R',\n64292=>'R',\n64293=>'R',\n64294=>'R',\n64295=>'R',\n64296=>'R',\n64297=>'ES',\n64298=>'R',\n64299=>'R',\n64300=>'R',\n64301=>'R',\n64302=>'R',\n64303=>'R',\n64304=>'R',\n64305=>'R',\n64306=>'R',\n64307=>'R',\n64308=>'R',\n64309=>'R',\n64310=>'R',\n64312=>'R',\n64313=>'R',\n64314=>'R',\n64315=>'R',\n64316=>'R',\n64318=>'R',\n64320=>'R',\n64321=>'R',\n64323=>'R',\n64324=>'R',\n64326=>'R',\n64327=>'R',\n64328=>'R',\n64329=>'R',\n64330=>'R',\n64331=>'R',\n64332=>'R',\n64333=>'R',\n64334=>'R',\n64335=>'R',\n64336=>'AL',\n64337=>'AL',\n64338=>'AL',\n64339=>'AL',\n64340=>'AL',\n64341=>'AL',\n64342=>'AL',\n64343=>'AL',\n64344=>'AL',\n64345=>'AL',\n64346=>'AL',\n64347=>'AL',\n64348=>'AL',\n64349=>'AL',\n64350=>'AL',\n64351=>'AL',\n64352=>'AL',\n64353=>'AL',\n64354=>'AL',\n64355=>'AL',\n64356=>'AL',\n64357=>'AL',\n64358=>'AL',\n64359=>'AL',\n64360=>'AL',\n64361=>'AL',\n64362=>'AL',\n64363=>'AL',\n64364=>'AL',\n64365=>'AL',\n64366=>'AL',\n64367=>'AL',\n64368=>'AL',\n64369=>'AL',\n64370=>'AL',\n64371=>'AL',\n64372=>'AL',\n64373=>'AL',\n64374=>'AL',\n64375=>'AL',\n64376=>'AL',\n64377=>'AL',\n64378=>'AL',\n64379=>'AL',\n64380=>'AL',\n64381=>'AL',\n64382=>'AL',\n64383=>'AL',\n64384=>'AL',\n64385=>'AL',\n64386=>'AL',\n64387=>'AL',\n64388=>'AL',\n64389=>'AL',\n64390=>'AL',\n64391=>'AL',\n64392=>'AL',\n64393=>'AL',\n64394=>'AL',\n64395=>'AL',\n64396=>'AL',\n64397=>'AL',\n64398=>'AL',\n64399=>'AL',\n64400=>'AL',\n64401=>'AL',\n64402=>'AL',\n64403=>'AL',\n64404=>'AL',\n64405=>'AL',\n64406=>'AL',\n64407=>'AL',\n64408=>'AL',\n64409=>'AL',\n64410=>'AL',\n64411=>'AL',\n64412=>'AL',\n64413=>'AL',\n64414=>'AL',\n64415=>'AL',\n64416=>'AL',\n64417=>'AL',\n64418=>'AL',\n64419=>'AL',\n64420=>'AL',\n64421=>'AL',\n64422=>'AL',\n64423=>'AL',\n64424=>'AL',\n64425=>'AL',\n64426=>'AL',\n64427=>'AL',\n64428=>'AL',\n64429=>'AL',\n64430=>'AL',\n64431=>'AL',\n64432=>'AL',\n64433=>'AL',\n64467=>'AL',\n64468=>'AL',\n64469=>'AL',\n64470=>'AL',\n64471=>'AL',\n64472=>'AL',\n64473=>'AL',\n64474=>'AL',\n64475=>'AL',\n64476=>'AL',\n64477=>'AL',\n64478=>'AL',\n64479=>'AL',\n64480=>'AL',\n64481=>'AL',\n64482=>'AL',\n64483=>'AL',\n64484=>'AL',\n64485=>'AL',\n64486=>'AL',\n64487=>'AL',\n64488=>'AL',\n64489=>'AL',\n64490=>'AL',\n64491=>'AL',\n64492=>'AL',\n64493=>'AL',\n64494=>'AL',\n64495=>'AL',\n64496=>'AL',\n64497=>'AL',\n64498=>'AL',\n64499=>'AL',\n64500=>'AL',\n64501=>'AL',\n64502=>'AL',\n64503=>'AL',\n64504=>'AL',\n64505=>'AL',\n64506=>'AL',\n64507=>'AL',\n64508=>'AL',\n64509=>'AL',\n64510=>'AL',\n64511=>'AL',\n64512=>'AL',\n64513=>'AL',\n64514=>'AL',\n64515=>'AL',\n64516=>'AL',\n64517=>'AL',\n64518=>'AL',\n64519=>'AL',\n64520=>'AL',\n64521=>'AL',\n64522=>'AL',\n64523=>'AL',\n64524=>'AL',\n64525=>'AL',\n64526=>'AL',\n64527=>'AL',\n64528=>'AL',\n64529=>'AL',\n64530=>'AL',\n64531=>'AL',\n64532=>'AL',\n64533=>'AL',\n64534=>'AL',\n64535=>'AL',\n64536=>'AL',\n64537=>'AL',\n64538=>'AL',\n64539=>'AL',\n64540=>'AL',\n64541=>'AL',\n64542=>'AL',\n64543=>'AL',\n64544=>'AL',\n64545=>'AL',\n64546=>'AL',\n64547=>'AL',\n64548=>'AL',\n64549=>'AL',\n64550=>'AL',\n64551=>'AL',\n64552=>'AL',\n64553=>'AL',\n64554=>'AL',\n64555=>'AL',\n64556=>'AL',\n64557=>'AL',\n64558=>'AL',\n64559=>'AL',\n64560=>'AL',\n64561=>'AL',\n64562=>'AL',\n64563=>'AL',\n64564=>'AL',\n64565=>'AL',\n64566=>'AL',\n64567=>'AL',\n64568=>'AL',\n64569=>'AL',\n64570=>'AL',\n64571=>'AL',\n64572=>'AL',\n64573=>'AL',\n64574=>'AL',\n64575=>'AL',\n64576=>'AL',\n64577=>'AL',\n64578=>'AL',\n64579=>'AL',\n64580=>'AL',\n64581=>'AL',\n64582=>'AL',\n64583=>'AL',\n64584=>'AL',\n64585=>'AL',\n64586=>'AL',\n64587=>'AL',\n64588=>'AL',\n64589=>'AL',\n64590=>'AL',\n64591=>'AL',\n64592=>'AL',\n64593=>'AL',\n64594=>'AL',\n64595=>'AL',\n64596=>'AL',\n64597=>'AL',\n64598=>'AL',\n64599=>'AL',\n64600=>'AL',\n64601=>'AL',\n64602=>'AL',\n64603=>'AL',\n64604=>'AL',\n64605=>'AL',\n64606=>'AL',\n64607=>'AL',\n64608=>'AL',\n64609=>'AL',\n64610=>'AL',\n64611=>'AL',\n64612=>'AL',\n64613=>'AL',\n64614=>'AL',\n64615=>'AL',\n64616=>'AL',\n64617=>'AL',\n64618=>'AL',\n64619=>'AL',\n64620=>'AL',\n64621=>'AL',\n64622=>'AL',\n64623=>'AL',\n64624=>'AL',\n64625=>'AL',\n64626=>'AL',\n64627=>'AL',\n64628=>'AL',\n64629=>'AL',\n64630=>'AL',\n64631=>'AL',\n64632=>'AL',\n64633=>'AL',\n64634=>'AL',\n64635=>'AL',\n64636=>'AL',\n64637=>'AL',\n64638=>'AL',\n64639=>'AL',\n64640=>'AL',\n64641=>'AL',\n64642=>'AL',\n64643=>'AL',\n64644=>'AL',\n64645=>'AL',\n64646=>'AL',\n64647=>'AL',\n64648=>'AL',\n64649=>'AL',\n64650=>'AL',\n64651=>'AL',\n64652=>'AL',\n64653=>'AL',\n64654=>'AL',\n64655=>'AL',\n64656=>'AL',\n64657=>'AL',\n64658=>'AL',\n64659=>'AL',\n64660=>'AL',\n64661=>'AL',\n64662=>'AL',\n64663=>'AL',\n64664=>'AL',\n64665=>'AL',\n64666=>'AL',\n64667=>'AL',\n64668=>'AL',\n64669=>'AL',\n64670=>'AL',\n64671=>'AL',\n64672=>'AL',\n64673=>'AL',\n64674=>'AL',\n64675=>'AL',\n64676=>'AL',\n64677=>'AL',\n64678=>'AL',\n64679=>'AL',\n64680=>'AL',\n64681=>'AL',\n64682=>'AL',\n64683=>'AL',\n64684=>'AL',\n64685=>'AL',\n64686=>'AL',\n64687=>'AL',\n64688=>'AL',\n64689=>'AL',\n64690=>'AL',\n64691=>'AL',\n64692=>'AL',\n64693=>'AL',\n64694=>'AL',\n64695=>'AL',\n64696=>'AL',\n64697=>'AL',\n64698=>'AL',\n64699=>'AL',\n64700=>'AL',\n64701=>'AL',\n64702=>'AL',\n64703=>'AL',\n64704=>'AL',\n64705=>'AL',\n64706=>'AL',\n64707=>'AL',\n64708=>'AL',\n64709=>'AL',\n64710=>'AL',\n64711=>'AL',\n64712=>'AL',\n64713=>'AL',\n64714=>'AL',\n64715=>'AL',\n64716=>'AL',\n64717=>'AL',\n64718=>'AL',\n64719=>'AL',\n64720=>'AL',\n64721=>'AL',\n64722=>'AL',\n64723=>'AL',\n64724=>'AL',\n64725=>'AL',\n64726=>'AL',\n64727=>'AL',\n64728=>'AL',\n64729=>'AL',\n64730=>'AL',\n64731=>'AL',\n64732=>'AL',\n64733=>'AL',\n64734=>'AL',\n64735=>'AL',\n64736=>'AL',\n64737=>'AL',\n64738=>'AL',\n64739=>'AL',\n64740=>'AL',\n64741=>'AL',\n64742=>'AL',\n64743=>'AL',\n64744=>'AL',\n64745=>'AL',\n64746=>'AL',\n64747=>'AL',\n64748=>'AL',\n64749=>'AL',\n64750=>'AL',\n64751=>'AL',\n64752=>'AL',\n64753=>'AL',\n64754=>'AL',\n64755=>'AL',\n64756=>'AL',\n64757=>'AL',\n64758=>'AL',\n64759=>'AL',\n64760=>'AL',\n64761=>'AL',\n64762=>'AL',\n64763=>'AL',\n64764=>'AL',\n64765=>'AL',\n64766=>'AL',\n64767=>'AL',\n64768=>'AL',\n64769=>'AL',\n64770=>'AL',\n64771=>'AL',\n64772=>'AL',\n64773=>'AL',\n64774=>'AL',\n64775=>'AL',\n64776=>'AL',\n64777=>'AL',\n64778=>'AL',\n64779=>'AL',\n64780=>'AL',\n64781=>'AL',\n64782=>'AL',\n64783=>'AL',\n64784=>'AL',\n64785=>'AL',\n64786=>'AL',\n64787=>'AL',\n64788=>'AL',\n64789=>'AL',\n64790=>'AL',\n64791=>'AL',\n64792=>'AL',\n64793=>'AL',\n64794=>'AL',\n64795=>'AL',\n64796=>'AL',\n64797=>'AL',\n64798=>'AL',\n64799=>'AL',\n64800=>'AL',\n64801=>'AL',\n64802=>'AL',\n64803=>'AL',\n64804=>'AL',\n64805=>'AL',\n64806=>'AL',\n64807=>'AL',\n64808=>'AL',\n64809=>'AL',\n64810=>'AL',\n64811=>'AL',\n64812=>'AL',\n64813=>'AL',\n64814=>'AL',\n64815=>'AL',\n64816=>'AL',\n64817=>'AL',\n64818=>'AL',\n64819=>'AL',\n64820=>'AL',\n64821=>'AL',\n64822=>'AL',\n64823=>'AL',\n64824=>'AL',\n64825=>'AL',\n64826=>'AL',\n64827=>'AL',\n64828=>'AL',\n64829=>'AL',\n64830=>'ON',\n64831=>'ON',\n64848=>'AL',\n64849=>'AL',\n64850=>'AL',\n64851=>'AL',\n64852=>'AL',\n64853=>'AL',\n64854=>'AL',\n64855=>'AL',\n64856=>'AL',\n64857=>'AL',\n64858=>'AL',\n64859=>'AL',\n64860=>'AL',\n64861=>'AL',\n64862=>'AL',\n64863=>'AL',\n64864=>'AL',\n64865=>'AL',\n64866=>'AL',\n64867=>'AL',\n64868=>'AL',\n64869=>'AL',\n64870=>'AL',\n64871=>'AL',\n64872=>'AL',\n64873=>'AL',\n64874=>'AL',\n64875=>'AL',\n64876=>'AL',\n64877=>'AL',\n64878=>'AL',\n64879=>'AL',\n64880=>'AL',\n64881=>'AL',\n64882=>'AL',\n64883=>'AL',\n64884=>'AL',\n64885=>'AL',\n64886=>'AL',\n64887=>'AL',\n64888=>'AL',\n64889=>'AL',\n64890=>'AL',\n64891=>'AL',\n64892=>'AL',\n64893=>'AL',\n64894=>'AL',\n64895=>'AL',\n64896=>'AL',\n64897=>'AL',\n64898=>'AL',\n64899=>'AL',\n64900=>'AL',\n64901=>'AL',\n64902=>'AL',\n64903=>'AL',\n64904=>'AL',\n64905=>'AL',\n64906=>'AL',\n64907=>'AL',\n64908=>'AL',\n64909=>'AL',\n64910=>'AL',\n64911=>'AL',\n64914=>'AL',\n64915=>'AL',\n64916=>'AL',\n64917=>'AL',\n64918=>'AL',\n64919=>'AL',\n64920=>'AL',\n64921=>'AL',\n64922=>'AL',\n64923=>'AL',\n64924=>'AL',\n64925=>'AL',\n64926=>'AL',\n64927=>'AL',\n64928=>'AL',\n64929=>'AL',\n64930=>'AL',\n64931=>'AL',\n64932=>'AL',\n64933=>'AL',\n64934=>'AL',\n64935=>'AL',\n64936=>'AL',\n64937=>'AL',\n64938=>'AL',\n64939=>'AL',\n64940=>'AL',\n64941=>'AL',\n64942=>'AL',\n64943=>'AL',\n64944=>'AL',\n64945=>'AL',\n64946=>'AL',\n64947=>'AL',\n64948=>'AL',\n64949=>'AL',\n64950=>'AL',\n64951=>'AL',\n64952=>'AL',\n64953=>'AL',\n64954=>'AL',\n64955=>'AL',\n64956=>'AL',\n64957=>'AL',\n64958=>'AL',\n64959=>'AL',\n64960=>'AL',\n64961=>'AL',\n64962=>'AL',\n64963=>'AL',\n64964=>'AL',\n64965=>'AL',\n64966=>'AL',\n64967=>'AL',\n65008=>'AL',\n65009=>'AL',\n65010=>'AL',\n65011=>'AL',\n65012=>'AL',\n65013=>'AL',\n65014=>'AL',\n65015=>'AL',\n65016=>'AL',\n65017=>'AL',\n65018=>'AL',\n65019=>'AL',\n65020=>'AL',\n65021=>'ON',\n65024=>'NSM',\n65025=>'NSM',\n65026=>'NSM',\n65027=>'NSM',\n65028=>'NSM',\n65029=>'NSM',\n65030=>'NSM',\n65031=>'NSM',\n65032=>'NSM',\n65033=>'NSM',\n65034=>'NSM',\n65035=>'NSM',\n65036=>'NSM',\n65037=>'NSM',\n65038=>'NSM',\n65039=>'NSM',\n65040=>'ON',\n65041=>'ON',\n65042=>'ON',\n65043=>'ON',\n65044=>'ON',\n65045=>'ON',\n65046=>'ON',\n65047=>'ON',\n65048=>'ON',\n65049=>'ON',\n65056=>'NSM',\n65057=>'NSM',\n65058=>'NSM',\n65059=>'NSM',\n65072=>'ON',\n65073=>'ON',\n65074=>'ON',\n65075=>'ON',\n65076=>'ON',\n65077=>'ON',\n65078=>'ON',\n65079=>'ON',\n65080=>'ON',\n65081=>'ON',\n65082=>'ON',\n65083=>'ON',\n65084=>'ON',\n65085=>'ON',\n65086=>'ON',\n65087=>'ON',\n65088=>'ON',\n65089=>'ON',\n65090=>'ON',\n65091=>'ON',\n65092=>'ON',\n65093=>'ON',\n65094=>'ON',\n65095=>'ON',\n65096=>'ON',\n65097=>'ON',\n65098=>'ON',\n65099=>'ON',\n65100=>'ON',\n65101=>'ON',\n65102=>'ON',\n65103=>'ON',\n65104=>'CS',\n65105=>'ON',\n65106=>'CS',\n65108=>'ON',\n65109=>'CS',\n65110=>'ON',\n65111=>'ON',\n65112=>'ON',\n65113=>'ON',\n65114=>'ON',\n65115=>'ON',\n65116=>'ON',\n65117=>'ON',\n65118=>'ON',\n65119=>'ET',\n65120=>'ON',\n65121=>'ON',\n65122=>'ES',\n65123=>'ES',\n65124=>'ON',\n65125=>'ON',\n65126=>'ON',\n65128=>'ON',\n65129=>'ET',\n65130=>'ET',\n65131=>'ON',\n65136=>'AL',\n65137=>'AL',\n65138=>'AL',\n65139=>'AL',\n65140=>'AL',\n65142=>'AL',\n65143=>'AL',\n65144=>'AL',\n65145=>'AL',\n65146=>'AL',\n65147=>'AL',\n65148=>'AL',\n65149=>'AL',\n65150=>'AL',\n65151=>'AL',\n65152=>'AL',\n65153=>'AL',\n65154=>'AL',\n65155=>'AL',\n65156=>'AL',\n65157=>'AL',\n65158=>'AL',\n65159=>'AL',\n65160=>'AL',\n65161=>'AL',\n65162=>'AL',\n65163=>'AL',\n65164=>'AL',\n65165=>'AL',\n65166=>'AL',\n65167=>'AL',\n65168=>'AL',\n65169=>'AL',\n65170=>'AL',\n65171=>'AL',\n65172=>'AL',\n65173=>'AL',\n65174=>'AL',\n65175=>'AL',\n65176=>'AL',\n65177=>'AL',\n65178=>'AL',\n65179=>'AL',\n65180=>'AL',\n65181=>'AL',\n65182=>'AL',\n65183=>'AL',\n65184=>'AL',\n65185=>'AL',\n65186=>'AL',\n65187=>'AL',\n65188=>'AL',\n65189=>'AL',\n65190=>'AL',\n65191=>'AL',\n65192=>'AL',\n65193=>'AL',\n65194=>'AL',\n65195=>'AL',\n65196=>'AL',\n65197=>'AL',\n65198=>'AL',\n65199=>'AL',\n65200=>'AL',\n65201=>'AL',\n65202=>'AL',\n65203=>'AL',\n65204=>'AL',\n65205=>'AL',\n65206=>'AL',\n65207=>'AL',\n65208=>'AL',\n65209=>'AL',\n65210=>'AL',\n65211=>'AL',\n65212=>'AL',\n65213=>'AL',\n65214=>'AL',\n65215=>'AL',\n65216=>'AL',\n65217=>'AL',\n65218=>'AL',\n65219=>'AL',\n65220=>'AL',\n65221=>'AL',\n65222=>'AL',\n65223=>'AL',\n65224=>'AL',\n65225=>'AL',\n65226=>'AL',\n65227=>'AL',\n65228=>'AL',\n65229=>'AL',\n65230=>'AL',\n65231=>'AL',\n65232=>'AL',\n65233=>'AL',\n65234=>'AL',\n65235=>'AL',\n65236=>'AL',\n65237=>'AL',\n65238=>'AL',\n65239=>'AL',\n65240=>'AL',\n65241=>'AL',\n65242=>'AL',\n65243=>'AL',\n65244=>'AL',\n65245=>'AL',\n65246=>'AL',\n65247=>'AL',\n65248=>'AL',\n65249=>'AL',\n65250=>'AL',\n65251=>'AL',\n65252=>'AL',\n65253=>'AL',\n65254=>'AL',\n65255=>'AL',\n65256=>'AL',\n65257=>'AL',\n65258=>'AL',\n65259=>'AL',\n65260=>'AL',\n65261=>'AL',\n65262=>'AL',\n65263=>'AL',\n65264=>'AL',\n65265=>'AL',\n65266=>'AL',\n65267=>'AL',\n65268=>'AL',\n65269=>'AL',\n65270=>'AL',\n65271=>'AL',\n65272=>'AL',\n65273=>'AL',\n65274=>'AL',\n65275=>'AL',\n65276=>'AL',\n65279=>'BN',\n65281=>'ON',\n65282=>'ON',\n65283=>'ET',\n65284=>'ET',\n65285=>'ET',\n65286=>'ON',\n65287=>'ON',\n65288=>'ON',\n65289=>'ON',\n65290=>'ON',\n65291=>'ES',\n65292=>'CS',\n65293=>'ES',\n65294=>'CS',\n65295=>'CS',\n65296=>'EN',\n65297=>'EN',\n65298=>'EN',\n65299=>'EN',\n65300=>'EN',\n65301=>'EN',\n65302=>'EN',\n65303=>'EN',\n65304=>'EN',\n65305=>'EN',\n65306=>'CS',\n65307=>'ON',\n65308=>'ON',\n65309=>'ON',\n65310=>'ON',\n65311=>'ON',\n65312=>'ON',\n65313=>'L',\n65314=>'L',\n65315=>'L',\n65316=>'L',\n65317=>'L',\n65318=>'L',\n65319=>'L',\n65320=>'L',\n65321=>'L',\n65322=>'L',\n65323=>'L',\n65324=>'L',\n65325=>'L',\n65326=>'L',\n65327=>'L',\n65328=>'L',\n65329=>'L',\n65330=>'L',\n65331=>'L',\n65332=>'L',\n65333=>'L',\n65334=>'L',\n65335=>'L',\n65336=>'L',\n65337=>'L',\n65338=>'L',\n65339=>'ON',\n65340=>'ON',\n65341=>'ON',\n65342=>'ON',\n65343=>'ON',\n65344=>'ON',\n65345=>'L',\n65346=>'L',\n65347=>'L',\n65348=>'L',\n65349=>'L',\n65350=>'L',\n65351=>'L',\n65352=>'L',\n65353=>'L',\n65354=>'L',\n65355=>'L',\n65356=>'L',\n65357=>'L',\n65358=>'L',\n65359=>'L',\n65360=>'L',\n65361=>'L',\n65362=>'L',\n65363=>'L',\n65364=>'L',\n65365=>'L',\n65366=>'L',\n65367=>'L',\n65368=>'L',\n65369=>'L',\n65370=>'L',\n65371=>'ON',\n65372=>'ON',\n65373=>'ON',\n65374=>'ON',\n65375=>'ON',\n65376=>'ON',\n65377=>'ON',\n65378=>'ON',\n65379=>'ON',\n65380=>'ON',\n65381=>'ON',\n65382=>'L',\n65383=>'L',\n65384=>'L',\n65385=>'L',\n65386=>'L',\n65387=>'L',\n65388=>'L',\n65389=>'L',\n65390=>'L',\n65391=>'L',\n65392=>'L',\n65393=>'L',\n65394=>'L',\n65395=>'L',\n65396=>'L',\n65397=>'L',\n65398=>'L',\n65399=>'L',\n65400=>'L',\n65401=>'L',\n65402=>'L',\n65403=>'L',\n65404=>'L',\n65405=>'L',\n65406=>'L',\n65407=>'L',\n65408=>'L',\n65409=>'L',\n65410=>'L',\n65411=>'L',\n65412=>'L',\n65413=>'L',\n65414=>'L',\n65415=>'L',\n65416=>'L',\n65417=>'L',\n65418=>'L',\n65419=>'L',\n65420=>'L',\n65421=>'L',\n65422=>'L',\n65423=>'L',\n65424=>'L',\n65425=>'L',\n65426=>'L',\n65427=>'L',\n65428=>'L',\n65429=>'L',\n65430=>'L',\n65431=>'L',\n65432=>'L',\n65433=>'L',\n65434=>'L',\n65435=>'L',\n65436=>'L',\n65437=>'L',\n65438=>'L',\n65439=>'L',\n65440=>'L',\n65441=>'L',\n65442=>'L',\n65443=>'L',\n65444=>'L',\n65445=>'L',\n65446=>'L',\n65447=>'L',\n65448=>'L',\n65449=>'L',\n65450=>'L',\n65451=>'L',\n65452=>'L',\n65453=>'L',\n65454=>'L',\n65455=>'L',\n65456=>'L',\n65457=>'L',\n65458=>'L',\n65459=>'L',\n65460=>'L',\n65461=>'L',\n65462=>'L',\n65463=>'L',\n65464=>'L',\n65465=>'L',\n65466=>'L',\n65467=>'L',\n65468=>'L',\n65469=>'L',\n65470=>'L',\n65474=>'L',\n65475=>'L',\n65476=>'L',\n65477=>'L',\n65478=>'L',\n65479=>'L',\n65482=>'L',\n65483=>'L',\n65484=>'L',\n65485=>'L',\n65486=>'L',\n65487=>'L',\n65490=>'L',\n65491=>'L',\n65492=>'L',\n65493=>'L',\n65494=>'L',\n65495=>'L',\n65498=>'L',\n65499=>'L',\n65500=>'L',\n65504=>'ET',\n65505=>'ET',\n65506=>'ON',\n65507=>'ON',\n65508=>'ON',\n65509=>'ET',\n65510=>'ET',\n65512=>'ON',\n65513=>'ON',\n65514=>'ON',\n65515=>'ON',\n65516=>'ON',\n65517=>'ON',\n65518=>'ON',\n65529=>'ON',\n65530=>'ON',\n65531=>'ON',\n65532=>'ON',\n65533=>'ON',\n65536=>'L',\n65537=>'L',\n65538=>'L',\n65539=>'L',\n65540=>'L',\n65541=>'L',\n65542=>'L',\n65543=>'L',\n65544=>'L',\n65545=>'L',\n65546=>'L',\n65547=>'L',\n65549=>'L',\n65550=>'L',\n65551=>'L',\n65552=>'L',\n65553=>'L',\n65554=>'L',\n65555=>'L',\n65556=>'L',\n65557=>'L',\n65558=>'L',\n65559=>'L',\n65560=>'L',\n65561=>'L',\n65562=>'L',\n65563=>'L',\n65564=>'L',\n65565=>'L',\n65566=>'L',\n65567=>'L',\n65568=>'L',\n65569=>'L',\n65570=>'L',\n65571=>'L',\n65572=>'L',\n65573=>'L',\n65574=>'L',\n65576=>'L',\n65577=>'L',\n65578=>'L',\n65579=>'L',\n65580=>'L',\n65581=>'L',\n65582=>'L',\n65583=>'L',\n65584=>'L',\n65585=>'L',\n65586=>'L',\n65587=>'L',\n65588=>'L',\n65589=>'L',\n65590=>'L',\n65591=>'L',\n65592=>'L',\n65593=>'L',\n65594=>'L',\n65596=>'L',\n65597=>'L',\n65599=>'L',\n65600=>'L',\n65601=>'L',\n65602=>'L',\n65603=>'L',\n65604=>'L',\n65605=>'L',\n65606=>'L',\n65607=>'L',\n65608=>'L',\n65609=>'L',\n65610=>'L',\n65611=>'L',\n65612=>'L',\n65613=>'L',\n65616=>'L',\n65617=>'L',\n65618=>'L',\n65619=>'L',\n65620=>'L',\n65621=>'L',\n65622=>'L',\n65623=>'L',\n65624=>'L',\n65625=>'L',\n65626=>'L',\n65627=>'L',\n65628=>'L',\n65629=>'L',\n65664=>'L',\n65665=>'L',\n65666=>'L',\n65667=>'L',\n65668=>'L',\n65669=>'L',\n65670=>'L',\n65671=>'L',\n65672=>'L',\n65673=>'L',\n65674=>'L',\n65675=>'L',\n65676=>'L',\n65677=>'L',\n65678=>'L',\n65679=>'L',\n65680=>'L',\n65681=>'L',\n65682=>'L',\n65683=>'L',\n65684=>'L',\n65685=>'L',\n65686=>'L',\n65687=>'L',\n65688=>'L',\n65689=>'L',\n65690=>'L',\n65691=>'L',\n65692=>'L',\n65693=>'L',\n65694=>'L',\n65695=>'L',\n65696=>'L',\n65697=>'L',\n65698=>'L',\n65699=>'L',\n65700=>'L',\n65701=>'L',\n65702=>'L',\n65703=>'L',\n65704=>'L',\n65705=>'L',\n65706=>'L',\n65707=>'L',\n65708=>'L',\n65709=>'L',\n65710=>'L',\n65711=>'L',\n65712=>'L',\n65713=>'L',\n65714=>'L',\n65715=>'L',\n65716=>'L',\n65717=>'L',\n65718=>'L',\n65719=>'L',\n65720=>'L',\n65721=>'L',\n65722=>'L',\n65723=>'L',\n65724=>'L',\n65725=>'L',\n65726=>'L',\n65727=>'L',\n65728=>'L',\n65729=>'L',\n65730=>'L',\n65731=>'L',\n65732=>'L',\n65733=>'L',\n65734=>'L',\n65735=>'L',\n65736=>'L',\n65737=>'L',\n65738=>'L',\n65739=>'L',\n65740=>'L',\n65741=>'L',\n65742=>'L',\n65743=>'L',\n65744=>'L',\n65745=>'L',\n65746=>'L',\n65747=>'L',\n65748=>'L',\n65749=>'L',\n65750=>'L',\n65751=>'L',\n65752=>'L',\n65753=>'L',\n65754=>'L',\n65755=>'L',\n65756=>'L',\n65757=>'L',\n65758=>'L',\n65759=>'L',\n65760=>'L',\n65761=>'L',\n65762=>'L',\n65763=>'L',\n65764=>'L',\n65765=>'L',\n65766=>'L',\n65767=>'L',\n65768=>'L',\n65769=>'L',\n65770=>'L',\n65771=>'L',\n65772=>'L',\n65773=>'L',\n65774=>'L',\n65775=>'L',\n65776=>'L',\n65777=>'L',\n65778=>'L',\n65779=>'L',\n65780=>'L',\n65781=>'L',\n65782=>'L',\n65783=>'L',\n65784=>'L',\n65785=>'L',\n65786=>'L',\n65792=>'L',\n65793=>'ON',\n65794=>'L',\n65799=>'L',\n65800=>'L',\n65801=>'L',\n65802=>'L',\n65803=>'L',\n65804=>'L',\n65805=>'L',\n65806=>'L',\n65807=>'L',\n65808=>'L',\n65809=>'L',\n65810=>'L',\n65811=>'L',\n65812=>'L',\n65813=>'L',\n65814=>'L',\n65815=>'L',\n65816=>'L',\n65817=>'L',\n65818=>'L',\n65819=>'L',\n65820=>'L',\n65821=>'L',\n65822=>'L',\n65823=>'L',\n65824=>'L',\n65825=>'L',\n65826=>'L',\n65827=>'L',\n65828=>'L',\n65829=>'L',\n65830=>'L',\n65831=>'L',\n65832=>'L',\n65833=>'L',\n65834=>'L',\n65835=>'L',\n65836=>'L',\n65837=>'L',\n65838=>'L',\n65839=>'L',\n65840=>'L',\n65841=>'L',\n65842=>'L',\n65843=>'L',\n65847=>'L',\n65848=>'L',\n65849=>'L',\n65850=>'L',\n65851=>'L',\n65852=>'L',\n65853=>'L',\n65854=>'L',\n65855=>'L',\n65856=>'ON',\n65857=>'ON',\n65858=>'ON',\n65859=>'ON',\n65860=>'ON',\n65861=>'ON',\n65862=>'ON',\n65863=>'ON',\n65864=>'ON',\n65865=>'ON',\n65866=>'ON',\n65867=>'ON',\n65868=>'ON',\n65869=>'ON',\n65870=>'ON',\n65871=>'ON',\n65872=>'ON',\n65873=>'ON',\n65874=>'ON',\n65875=>'ON',\n65876=>'ON',\n65877=>'ON',\n65878=>'ON',\n65879=>'ON',\n65880=>'ON',\n65881=>'ON',\n65882=>'ON',\n65883=>'ON',\n65884=>'ON',\n65885=>'ON',\n65886=>'ON',\n65887=>'ON',\n65888=>'ON',\n65889=>'ON',\n65890=>'ON',\n65891=>'ON',\n65892=>'ON',\n65893=>'ON',\n65894=>'ON',\n65895=>'ON',\n65896=>'ON',\n65897=>'ON',\n65898=>'ON',\n65899=>'ON',\n65900=>'ON',\n65901=>'ON',\n65902=>'ON',\n65903=>'ON',\n65904=>'ON',\n65905=>'ON',\n65906=>'ON',\n65907=>'ON',\n65908=>'ON',\n65909=>'ON',\n65910=>'ON',\n65911=>'ON',\n65912=>'ON',\n65913=>'ON',\n65914=>'ON',\n65915=>'ON',\n65916=>'ON',\n65917=>'ON',\n65918=>'ON',\n65919=>'ON',\n65920=>'ON',\n65921=>'ON',\n65922=>'ON',\n65923=>'ON',\n65924=>'ON',\n65925=>'ON',\n65926=>'ON',\n65927=>'ON',\n65928=>'ON',\n65929=>'ON',\n65930=>'ON',\n66304=>'L',\n66305=>'L',\n66306=>'L',\n66307=>'L',\n66308=>'L',\n66309=>'L',\n66310=>'L',\n66311=>'L',\n66312=>'L',\n66313=>'L',\n66314=>'L',\n66315=>'L',\n66316=>'L',\n66317=>'L',\n66318=>'L',\n66319=>'L',\n66320=>'L',\n66321=>'L',\n66322=>'L',\n66323=>'L',\n66324=>'L',\n66325=>'L',\n66326=>'L',\n66327=>'L',\n66328=>'L',\n66329=>'L',\n66330=>'L',\n66331=>'L',\n66332=>'L',\n66333=>'L',\n66334=>'L',\n66336=>'L',\n66337=>'L',\n66338=>'L',\n66339=>'L',\n66352=>'L',\n66353=>'L',\n66354=>'L',\n66355=>'L',\n66356=>'L',\n66357=>'L',\n66358=>'L',\n66359=>'L',\n66360=>'L',\n66361=>'L',\n66362=>'L',\n66363=>'L',\n66364=>'L',\n66365=>'L',\n66366=>'L',\n66367=>'L',\n66368=>'L',\n66369=>'L',\n66370=>'L',\n66371=>'L',\n66372=>'L',\n66373=>'L',\n66374=>'L',\n66375=>'L',\n66376=>'L',\n66377=>'L',\n66378=>'L',\n66432=>'L',\n66433=>'L',\n66434=>'L',\n66435=>'L',\n66436=>'L',\n66437=>'L',\n66438=>'L',\n66439=>'L',\n66440=>'L',\n66441=>'L',\n66442=>'L',\n66443=>'L',\n66444=>'L',\n66445=>'L',\n66446=>'L',\n66447=>'L',\n66448=>'L',\n66449=>'L',\n66450=>'L',\n66451=>'L',\n66452=>'L',\n66453=>'L',\n66454=>'L',\n66455=>'L',\n66456=>'L',\n66457=>'L',\n66458=>'L',\n66459=>'L',\n66460=>'L',\n66461=>'L',\n66463=>'L',\n66464=>'L',\n66465=>'L',\n66466=>'L',\n66467=>'L',\n66468=>'L',\n66469=>'L',\n66470=>'L',\n66471=>'L',\n66472=>'L',\n66473=>'L',\n66474=>'L',\n66475=>'L',\n66476=>'L',\n66477=>'L',\n66478=>'L',\n66479=>'L',\n66480=>'L',\n66481=>'L',\n66482=>'L',\n66483=>'L',\n66484=>'L',\n66485=>'L',\n66486=>'L',\n66487=>'L',\n66488=>'L',\n66489=>'L',\n66490=>'L',\n66491=>'L',\n66492=>'L',\n66493=>'L',\n66494=>'L',\n66495=>'L',\n66496=>'L',\n66497=>'L',\n66498=>'L',\n66499=>'L',\n66504=>'L',\n66505=>'L',\n66506=>'L',\n66507=>'L',\n66508=>'L',\n66509=>'L',\n66510=>'L',\n66511=>'L',\n66512=>'L',\n66513=>'L',\n66514=>'L',\n66515=>'L',\n66516=>'L',\n66517=>'L',\n66560=>'L',\n66561=>'L',\n66562=>'L',\n66563=>'L',\n66564=>'L',\n66565=>'L',\n66566=>'L',\n66567=>'L',\n66568=>'L',\n66569=>'L',\n66570=>'L',\n66571=>'L',\n66572=>'L',\n66573=>'L',\n66574=>'L',\n66575=>'L',\n66576=>'L',\n66577=>'L',\n66578=>'L',\n66579=>'L',\n66580=>'L',\n66581=>'L',\n66582=>'L',\n66583=>'L',\n66584=>'L',\n66585=>'L',\n66586=>'L',\n66587=>'L',\n66588=>'L',\n66589=>'L',\n66590=>'L',\n66591=>'L',\n66592=>'L',\n66593=>'L',\n66594=>'L',\n66595=>'L',\n66596=>'L',\n66597=>'L',\n66598=>'L',\n66599=>'L',\n66600=>'L',\n66601=>'L',\n66602=>'L',\n66603=>'L',\n66604=>'L',\n66605=>'L',\n66606=>'L',\n66607=>'L',\n66608=>'L',\n66609=>'L',\n66610=>'L',\n66611=>'L',\n66612=>'L',\n66613=>'L',\n66614=>'L',\n66615=>'L',\n66616=>'L',\n66617=>'L',\n66618=>'L',\n66619=>'L',\n66620=>'L',\n66621=>'L',\n66622=>'L',\n66623=>'L',\n66624=>'L',\n66625=>'L',\n66626=>'L',\n66627=>'L',\n66628=>'L',\n66629=>'L',\n66630=>'L',\n66631=>'L',\n66632=>'L',\n66633=>'L',\n66634=>'L',\n66635=>'L',\n66636=>'L',\n66637=>'L',\n66638=>'L',\n66639=>'L',\n66640=>'L',\n66641=>'L',\n66642=>'L',\n66643=>'L',\n66644=>'L',\n66645=>'L',\n66646=>'L',\n66647=>'L',\n66648=>'L',\n66649=>'L',\n66650=>'L',\n66651=>'L',\n66652=>'L',\n66653=>'L',\n66654=>'L',\n66655=>'L',\n66656=>'L',\n66657=>'L',\n66658=>'L',\n66659=>'L',\n66660=>'L',\n66661=>'L',\n66662=>'L',\n66663=>'L',\n66664=>'L',\n66665=>'L',\n66666=>'L',\n66667=>'L',\n66668=>'L',\n66669=>'L',\n66670=>'L',\n66671=>'L',\n66672=>'L',\n66673=>'L',\n66674=>'L',\n66675=>'L',\n66676=>'L',\n66677=>'L',\n66678=>'L',\n66679=>'L',\n66680=>'L',\n66681=>'L',\n66682=>'L',\n66683=>'L',\n66684=>'L',\n66685=>'L',\n66686=>'L',\n66687=>'L',\n66688=>'L',\n66689=>'L',\n66690=>'L',\n66691=>'L',\n66692=>'L',\n66693=>'L',\n66694=>'L',\n66695=>'L',\n66696=>'L',\n66697=>'L',\n66698=>'L',\n66699=>'L',\n66700=>'L',\n66701=>'L',\n66702=>'L',\n66703=>'L',\n66704=>'L',\n66705=>'L',\n66706=>'L',\n66707=>'L',\n66708=>'L',\n66709=>'L',\n66710=>'L',\n66711=>'L',\n66712=>'L',\n66713=>'L',\n66714=>'L',\n66715=>'L',\n66716=>'L',\n66717=>'L',\n66720=>'L',\n66721=>'L',\n66722=>'L',\n66723=>'L',\n66724=>'L',\n66725=>'L',\n66726=>'L',\n66727=>'L',\n66728=>'L',\n66729=>'L',\n67584=>'R',\n67585=>'R',\n67586=>'R',\n67587=>'R',\n67588=>'R',\n67589=>'R',\n67592=>'R',\n67594=>'R',\n67595=>'R',\n67596=>'R',\n67597=>'R',\n67598=>'R',\n67599=>'R',\n67600=>'R',\n67601=>'R',\n67602=>'R',\n67603=>'R',\n67604=>'R',\n67605=>'R',\n67606=>'R',\n67607=>'R',\n67608=>'R',\n67609=>'R',\n67610=>'R',\n67611=>'R',\n67612=>'R',\n67613=>'R',\n67614=>'R',\n67615=>'R',\n67616=>'R',\n67617=>'R',\n67618=>'R',\n67619=>'R',\n67620=>'R',\n67621=>'R',\n67622=>'R',\n67623=>'R',\n67624=>'R',\n67625=>'R',\n67626=>'R',\n67627=>'R',\n67628=>'R',\n67629=>'R',\n67630=>'R',\n67631=>'R',\n67632=>'R',\n67633=>'R',\n67634=>'R',\n67635=>'R',\n67636=>'R',\n67637=>'R',\n67639=>'R',\n67640=>'R',\n67644=>'R',\n67647=>'R',\n67840=>'R',\n67841=>'R',\n67842=>'R',\n67843=>'R',\n67844=>'R',\n67845=>'R',\n67846=>'R',\n67847=>'R',\n67848=>'R',\n67849=>'R',\n67850=>'R',\n67851=>'R',\n67852=>'R',\n67853=>'R',\n67854=>'R',\n67855=>'R',\n67856=>'R',\n67857=>'R',\n67858=>'R',\n67859=>'R',\n67860=>'R',\n67861=>'R',\n67862=>'R',\n67863=>'R',\n67864=>'R',\n67865=>'R',\n67871=>'ON',\n68096=>'R',\n68097=>'NSM',\n68098=>'NSM',\n68099=>'NSM',\n68101=>'NSM',\n68102=>'NSM',\n68108=>'NSM',\n68109=>'NSM',\n68110=>'NSM',\n68111=>'NSM',\n68112=>'R',\n68113=>'R',\n68114=>'R',\n68115=>'R',\n68117=>'R',\n68118=>'R',\n68119=>'R',\n68121=>'R',\n68122=>'R',\n68123=>'R',\n68124=>'R',\n68125=>'R',\n68126=>'R',\n68127=>'R',\n68128=>'R',\n68129=>'R',\n68130=>'R',\n68131=>'R',\n68132=>'R',\n68133=>'R',\n68134=>'R',\n68135=>'R',\n68136=>'R',\n68137=>'R',\n68138=>'R',\n68139=>'R',\n68140=>'R',\n68141=>'R',\n68142=>'R',\n68143=>'R',\n68144=>'R',\n68145=>'R',\n68146=>'R',\n68147=>'R',\n68152=>'NSM',\n68153=>'NSM',\n68154=>'NSM',\n68159=>'NSM',\n68160=>'R',\n68161=>'R',\n68162=>'R',\n68163=>'R',\n68164=>'R',\n68165=>'R',\n68166=>'R',\n68167=>'R',\n68176=>'R',\n68177=>'R',\n68178=>'R',\n68179=>'R',\n68180=>'R',\n68181=>'R',\n68182=>'R',\n68183=>'R',\n68184=>'R',\n73728=>'L',\n73729=>'L',\n73730=>'L',\n73731=>'L',\n73732=>'L',\n73733=>'L',\n73734=>'L',\n73735=>'L',\n73736=>'L',\n73737=>'L',\n73738=>'L',\n73739=>'L',\n73740=>'L',\n73741=>'L',\n73742=>'L',\n73743=>'L',\n73744=>'L',\n73745=>'L',\n73746=>'L',\n73747=>'L',\n73748=>'L',\n73749=>'L',\n73750=>'L',\n73751=>'L',\n73752=>'L',\n73753=>'L',\n73754=>'L',\n73755=>'L',\n73756=>'L',\n73757=>'L',\n73758=>'L',\n73759=>'L',\n73760=>'L',\n73761=>'L',\n73762=>'L',\n73763=>'L',\n73764=>'L',\n73765=>'L',\n73766=>'L',\n73767=>'L',\n73768=>'L',\n73769=>'L',\n73770=>'L',\n73771=>'L',\n73772=>'L',\n73773=>'L',\n73774=>'L',\n73775=>'L',\n73776=>'L',\n73777=>'L',\n73778=>'L',\n73779=>'L',\n73780=>'L',\n73781=>'L',\n73782=>'L',\n73783=>'L',\n73784=>'L',\n73785=>'L',\n73786=>'L',\n73787=>'L',\n73788=>'L',\n73789=>'L',\n73790=>'L',\n73791=>'L',\n73792=>'L',\n73793=>'L',\n73794=>'L',\n73795=>'L',\n73796=>'L',\n73797=>'L',\n73798=>'L',\n73799=>'L',\n73800=>'L',\n73801=>'L',\n73802=>'L',\n73803=>'L',\n73804=>'L',\n73805=>'L',\n73806=>'L',\n73807=>'L',\n73808=>'L',\n73809=>'L',\n73810=>'L',\n73811=>'L',\n73812=>'L',\n73813=>'L',\n73814=>'L',\n73815=>'L',\n73816=>'L',\n73817=>'L',\n73818=>'L',\n73819=>'L',\n73820=>'L',\n73821=>'L',\n73822=>'L',\n73823=>'L',\n73824=>'L',\n73825=>'L',\n73826=>'L',\n73827=>'L',\n73828=>'L',\n73829=>'L',\n73830=>'L',\n73831=>'L',\n73832=>'L',\n73833=>'L',\n73834=>'L',\n73835=>'L',\n73836=>'L',\n73837=>'L',\n73838=>'L',\n73839=>'L',\n73840=>'L',\n73841=>'L',\n73842=>'L',\n73843=>'L',\n73844=>'L',\n73845=>'L',\n73846=>'L',\n73847=>'L',\n73848=>'L',\n73849=>'L',\n73850=>'L',\n73851=>'L',\n73852=>'L',\n73853=>'L',\n73854=>'L',\n73855=>'L',\n73856=>'L',\n73857=>'L',\n73858=>'L',\n73859=>'L',\n73860=>'L',\n73861=>'L',\n73862=>'L',\n73863=>'L',\n73864=>'L',\n73865=>'L',\n73866=>'L',\n73867=>'L',\n73868=>'L',\n73869=>'L',\n73870=>'L',\n73871=>'L',\n73872=>'L',\n73873=>'L',\n73874=>'L',\n73875=>'L',\n73876=>'L',\n73877=>'L',\n73878=>'L',\n73879=>'L',\n73880=>'L',\n73881=>'L',\n73882=>'L',\n73883=>'L',\n73884=>'L',\n73885=>'L',\n73886=>'L',\n73887=>'L',\n73888=>'L',\n73889=>'L',\n73890=>'L',\n73891=>'L',\n73892=>'L',\n73893=>'L',\n73894=>'L',\n73895=>'L',\n73896=>'L',\n73897=>'L',\n73898=>'L',\n73899=>'L',\n73900=>'L',\n73901=>'L',\n73902=>'L',\n73903=>'L',\n73904=>'L',\n73905=>'L',\n73906=>'L',\n73907=>'L',\n73908=>'L',\n73909=>'L',\n73910=>'L',\n73911=>'L',\n73912=>'L',\n73913=>'L',\n73914=>'L',\n73915=>'L',\n73916=>'L',\n73917=>'L',\n73918=>'L',\n73919=>'L',\n73920=>'L',\n73921=>'L',\n73922=>'L',\n73923=>'L',\n73924=>'L',\n73925=>'L',\n73926=>'L',\n73927=>'L',\n73928=>'L',\n73929=>'L',\n73930=>'L',\n73931=>'L',\n73932=>'L',\n73933=>'L',\n73934=>'L',\n73935=>'L',\n73936=>'L',\n73937=>'L',\n73938=>'L',\n73939=>'L',\n73940=>'L',\n73941=>'L',\n73942=>'L',\n73943=>'L',\n73944=>'L',\n73945=>'L',\n73946=>'L',\n73947=>'L',\n73948=>'L',\n73949=>'L',\n73950=>'L',\n73951=>'L',\n73952=>'L',\n73953=>'L',\n73954=>'L',\n73955=>'L',\n73956=>'L',\n73957=>'L',\n73958=>'L',\n73959=>'L',\n73960=>'L',\n73961=>'L',\n73962=>'L',\n73963=>'L',\n73964=>'L',\n73965=>'L',\n73966=>'L',\n73967=>'L',\n73968=>'L',\n73969=>'L',\n73970=>'L',\n73971=>'L',\n73972=>'L',\n73973=>'L',\n73974=>'L',\n73975=>'L',\n73976=>'L',\n73977=>'L',\n73978=>'L',\n73979=>'L',\n73980=>'L',\n73981=>'L',\n73982=>'L',\n73983=>'L',\n73984=>'L',\n73985=>'L',\n73986=>'L',\n73987=>'L',\n73988=>'L',\n73989=>'L',\n73990=>'L',\n73991=>'L',\n73992=>'L',\n73993=>'L',\n73994=>'L',\n73995=>'L',\n73996=>'L',\n73997=>'L',\n73998=>'L',\n73999=>'L',\n74000=>'L',\n74001=>'L',\n74002=>'L',\n74003=>'L',\n74004=>'L',\n74005=>'L',\n74006=>'L',\n74007=>'L',\n74008=>'L',\n74009=>'L',\n74010=>'L',\n74011=>'L',\n74012=>'L',\n74013=>'L',\n74014=>'L',\n74015=>'L',\n74016=>'L',\n74017=>'L',\n74018=>'L',\n74019=>'L',\n74020=>'L',\n74021=>'L',\n74022=>'L',\n74023=>'L',\n74024=>'L',\n74025=>'L',\n74026=>'L',\n74027=>'L',\n74028=>'L',\n74029=>'L',\n74030=>'L',\n74031=>'L',\n74032=>'L',\n74033=>'L',\n74034=>'L',\n74035=>'L',\n74036=>'L',\n74037=>'L',\n74038=>'L',\n74039=>'L',\n74040=>'L',\n74041=>'L',\n74042=>'L',\n74043=>'L',\n74044=>'L',\n74045=>'L',\n74046=>'L',\n74047=>'L',\n74048=>'L',\n74049=>'L',\n74050=>'L',\n74051=>'L',\n74052=>'L',\n74053=>'L',\n74054=>'L',\n74055=>'L',\n74056=>'L',\n74057=>'L',\n74058=>'L',\n74059=>'L',\n74060=>'L',\n74061=>'L',\n74062=>'L',\n74063=>'L',\n74064=>'L',\n74065=>'L',\n74066=>'L',\n74067=>'L',\n74068=>'L',\n74069=>'L',\n74070=>'L',\n74071=>'L',\n74072=>'L',\n74073=>'L',\n74074=>'L',\n74075=>'L',\n74076=>'L',\n74077=>'L',\n74078=>'L',\n74079=>'L',\n74080=>'L',\n74081=>'L',\n74082=>'L',\n74083=>'L',\n74084=>'L',\n74085=>'L',\n74086=>'L',\n74087=>'L',\n74088=>'L',\n74089=>'L',\n74090=>'L',\n74091=>'L',\n74092=>'L',\n74093=>'L',\n74094=>'L',\n74095=>'L',\n74096=>'L',\n74097=>'L',\n74098=>'L',\n74099=>'L',\n74100=>'L',\n74101=>'L',\n74102=>'L',\n74103=>'L',\n74104=>'L',\n74105=>'L',\n74106=>'L',\n74107=>'L',\n74108=>'L',\n74109=>'L',\n74110=>'L',\n74111=>'L',\n74112=>'L',\n74113=>'L',\n74114=>'L',\n74115=>'L',\n74116=>'L',\n74117=>'L',\n74118=>'L',\n74119=>'L',\n74120=>'L',\n74121=>'L',\n74122=>'L',\n74123=>'L',\n74124=>'L',\n74125=>'L',\n74126=>'L',\n74127=>'L',\n74128=>'L',\n74129=>'L',\n74130=>'L',\n74131=>'L',\n74132=>'L',\n74133=>'L',\n74134=>'L',\n74135=>'L',\n74136=>'L',\n74137=>'L',\n74138=>'L',\n74139=>'L',\n74140=>'L',\n74141=>'L',\n74142=>'L',\n74143=>'L',\n74144=>'L',\n74145=>'L',\n74146=>'L',\n74147=>'L',\n74148=>'L',\n74149=>'L',\n74150=>'L',\n74151=>'L',\n74152=>'L',\n74153=>'L',\n74154=>'L',\n74155=>'L',\n74156=>'L',\n74157=>'L',\n74158=>'L',\n74159=>'L',\n74160=>'L',\n74161=>'L',\n74162=>'L',\n74163=>'L',\n74164=>'L',\n74165=>'L',\n74166=>'L',\n74167=>'L',\n74168=>'L',\n74169=>'L',\n74170=>'L',\n74171=>'L',\n74172=>'L',\n74173=>'L',\n74174=>'L',\n74175=>'L',\n74176=>'L',\n74177=>'L',\n74178=>'L',\n74179=>'L',\n74180=>'L',\n74181=>'L',\n74182=>'L',\n74183=>'L',\n74184=>'L',\n74185=>'L',\n74186=>'L',\n74187=>'L',\n74188=>'L',\n74189=>'L',\n74190=>'L',\n74191=>'L',\n74192=>'L',\n74193=>'L',\n74194=>'L',\n74195=>'L',\n74196=>'L',\n74197=>'L',\n74198=>'L',\n74199=>'L',\n74200=>'L',\n74201=>'L',\n74202=>'L',\n74203=>'L',\n74204=>'L',\n74205=>'L',\n74206=>'L',\n74207=>'L',\n74208=>'L',\n74209=>'L',\n74210=>'L',\n74211=>'L',\n74212=>'L',\n74213=>'L',\n74214=>'L',\n74215=>'L',\n74216=>'L',\n74217=>'L',\n74218=>'L',\n74219=>'L',\n74220=>'L',\n74221=>'L',\n74222=>'L',\n74223=>'L',\n74224=>'L',\n74225=>'L',\n74226=>'L',\n74227=>'L',\n74228=>'L',\n74229=>'L',\n74230=>'L',\n74231=>'L',\n74232=>'L',\n74233=>'L',\n74234=>'L',\n74235=>'L',\n74236=>'L',\n74237=>'L',\n74238=>'L',\n74239=>'L',\n74240=>'L',\n74241=>'L',\n74242=>'L',\n74243=>'L',\n74244=>'L',\n74245=>'L',\n74246=>'L',\n74247=>'L',\n74248=>'L',\n74249=>'L',\n74250=>'L',\n74251=>'L',\n74252=>'L',\n74253=>'L',\n74254=>'L',\n74255=>'L',\n74256=>'L',\n74257=>'L',\n74258=>'L',\n74259=>'L',\n74260=>'L',\n74261=>'L',\n74262=>'L',\n74263=>'L',\n74264=>'L',\n74265=>'L',\n74266=>'L',\n74267=>'L',\n74268=>'L',\n74269=>'L',\n74270=>'L',\n74271=>'L',\n74272=>'L',\n74273=>'L',\n74274=>'L',\n74275=>'L',\n74276=>'L',\n74277=>'L',\n74278=>'L',\n74279=>'L',\n74280=>'L',\n74281=>'L',\n74282=>'L',\n74283=>'L',\n74284=>'L',\n74285=>'L',\n74286=>'L',\n74287=>'L',\n74288=>'L',\n74289=>'L',\n74290=>'L',\n74291=>'L',\n74292=>'L',\n74293=>'L',\n74294=>'L',\n74295=>'L',\n74296=>'L',\n74297=>'L',\n74298=>'L',\n74299=>'L',\n74300=>'L',\n74301=>'L',\n74302=>'L',\n74303=>'L',\n74304=>'L',\n74305=>'L',\n74306=>'L',\n74307=>'L',\n74308=>'L',\n74309=>'L',\n74310=>'L',\n74311=>'L',\n74312=>'L',\n74313=>'L',\n74314=>'L',\n74315=>'L',\n74316=>'L',\n74317=>'L',\n74318=>'L',\n74319=>'L',\n74320=>'L',\n74321=>'L',\n74322=>'L',\n74323=>'L',\n74324=>'L',\n74325=>'L',\n74326=>'L',\n74327=>'L',\n74328=>'L',\n74329=>'L',\n74330=>'L',\n74331=>'L',\n74332=>'L',\n74333=>'L',\n74334=>'L',\n74335=>'L',\n74336=>'L',\n74337=>'L',\n74338=>'L',\n74339=>'L',\n74340=>'L',\n74341=>'L',\n74342=>'L',\n74343=>'L',\n74344=>'L',\n74345=>'L',\n74346=>'L',\n74347=>'L',\n74348=>'L',\n74349=>'L',\n74350=>'L',\n74351=>'L',\n74352=>'L',\n74353=>'L',\n74354=>'L',\n74355=>'L',\n74356=>'L',\n74357=>'L',\n74358=>'L',\n74359=>'L',\n74360=>'L',\n74361=>'L',\n74362=>'L',\n74363=>'L',\n74364=>'L',\n74365=>'L',\n74366=>'L',\n74367=>'L',\n74368=>'L',\n74369=>'L',\n74370=>'L',\n74371=>'L',\n74372=>'L',\n74373=>'L',\n74374=>'L',\n74375=>'L',\n74376=>'L',\n74377=>'L',\n74378=>'L',\n74379=>'L',\n74380=>'L',\n74381=>'L',\n74382=>'L',\n74383=>'L',\n74384=>'L',\n74385=>'L',\n74386=>'L',\n74387=>'L',\n74388=>'L',\n74389=>'L',\n74390=>'L',\n74391=>'L',\n74392=>'L',\n74393=>'L',\n74394=>'L',\n74395=>'L',\n74396=>'L',\n74397=>'L',\n74398=>'L',\n74399=>'L',\n74400=>'L',\n74401=>'L',\n74402=>'L',\n74403=>'L',\n74404=>'L',\n74405=>'L',\n74406=>'L',\n74407=>'L',\n74408=>'L',\n74409=>'L',\n74410=>'L',\n74411=>'L',\n74412=>'L',\n74413=>'L',\n74414=>'L',\n74415=>'L',\n74416=>'L',\n74417=>'L',\n74418=>'L',\n74419=>'L',\n74420=>'L',\n74421=>'L',\n74422=>'L',\n74423=>'L',\n74424=>'L',\n74425=>'L',\n74426=>'L',\n74427=>'L',\n74428=>'L',\n74429=>'L',\n74430=>'L',\n74431=>'L',\n74432=>'L',\n74433=>'L',\n74434=>'L',\n74435=>'L',\n74436=>'L',\n74437=>'L',\n74438=>'L',\n74439=>'L',\n74440=>'L',\n74441=>'L',\n74442=>'L',\n74443=>'L',\n74444=>'L',\n74445=>'L',\n74446=>'L',\n74447=>'L',\n74448=>'L',\n74449=>'L',\n74450=>'L',\n74451=>'L',\n74452=>'L',\n74453=>'L',\n74454=>'L',\n74455=>'L',\n74456=>'L',\n74457=>'L',\n74458=>'L',\n74459=>'L',\n74460=>'L',\n74461=>'L',\n74462=>'L',\n74463=>'L',\n74464=>'L',\n74465=>'L',\n74466=>'L',\n74467=>'L',\n74468=>'L',\n74469=>'L',\n74470=>'L',\n74471=>'L',\n74472=>'L',\n74473=>'L',\n74474=>'L',\n74475=>'L',\n74476=>'L',\n74477=>'L',\n74478=>'L',\n74479=>'L',\n74480=>'L',\n74481=>'L',\n74482=>'L',\n74483=>'L',\n74484=>'L',\n74485=>'L',\n74486=>'L',\n74487=>'L',\n74488=>'L',\n74489=>'L',\n74490=>'L',\n74491=>'L',\n74492=>'L',\n74493=>'L',\n74494=>'L',\n74495=>'L',\n74496=>'L',\n74497=>'L',\n74498=>'L',\n74499=>'L',\n74500=>'L',\n74501=>'L',\n74502=>'L',\n74503=>'L',\n74504=>'L',\n74505=>'L',\n74506=>'L',\n74507=>'L',\n74508=>'L',\n74509=>'L',\n74510=>'L',\n74511=>'L',\n74512=>'L',\n74513=>'L',\n74514=>'L',\n74515=>'L',\n74516=>'L',\n74517=>'L',\n74518=>'L',\n74519=>'L',\n74520=>'L',\n74521=>'L',\n74522=>'L',\n74523=>'L',\n74524=>'L',\n74525=>'L',\n74526=>'L',\n74527=>'L',\n74528=>'L',\n74529=>'L',\n74530=>'L',\n74531=>'L',\n74532=>'L',\n74533=>'L',\n74534=>'L',\n74535=>'L',\n74536=>'L',\n74537=>'L',\n74538=>'L',\n74539=>'L',\n74540=>'L',\n74541=>'L',\n74542=>'L',\n74543=>'L',\n74544=>'L',\n74545=>'L',\n74546=>'L',\n74547=>'L',\n74548=>'L',\n74549=>'L',\n74550=>'L',\n74551=>'L',\n74552=>'L',\n74553=>'L',\n74554=>'L',\n74555=>'L',\n74556=>'L',\n74557=>'L',\n74558=>'L',\n74559=>'L',\n74560=>'L',\n74561=>'L',\n74562=>'L',\n74563=>'L',\n74564=>'L',\n74565=>'L',\n74566=>'L',\n74567=>'L',\n74568=>'L',\n74569=>'L',\n74570=>'L',\n74571=>'L',\n74572=>'L',\n74573=>'L',\n74574=>'L',\n74575=>'L',\n74576=>'L',\n74577=>'L',\n74578=>'L',\n74579=>'L',\n74580=>'L',\n74581=>'L',\n74582=>'L',\n74583=>'L',\n74584=>'L',\n74585=>'L',\n74586=>'L',\n74587=>'L',\n74588=>'L',\n74589=>'L',\n74590=>'L',\n74591=>'L',\n74592=>'L',\n74593=>'L',\n74594=>'L',\n74595=>'L',\n74596=>'L',\n74597=>'L',\n74598=>'L',\n74599=>'L',\n74600=>'L',\n74601=>'L',\n74602=>'L',\n74603=>'L',\n74604=>'L',\n74605=>'L',\n74606=>'L',\n74752=>'L',\n74753=>'L',\n74754=>'L',\n74755=>'L',\n74756=>'L',\n74757=>'L',\n74758=>'L',\n74759=>'L',\n74760=>'L',\n74761=>'L',\n74762=>'L',\n74763=>'L',\n74764=>'L',\n74765=>'L',\n74766=>'L',\n74767=>'L',\n74768=>'L',\n74769=>'L',\n74770=>'L',\n74771=>'L',\n74772=>'L',\n74773=>'L',\n74774=>'L',\n74775=>'L',\n74776=>'L',\n74777=>'L',\n74778=>'L',\n74779=>'L',\n74780=>'L',\n74781=>'L',\n74782=>'L',\n74783=>'L',\n74784=>'L',\n74785=>'L',\n74786=>'L',\n74787=>'L',\n74788=>'L',\n74789=>'L',\n74790=>'L',\n74791=>'L',\n74792=>'L',\n74793=>'L',\n74794=>'L',\n74795=>'L',\n74796=>'L',\n74797=>'L',\n74798=>'L',\n74799=>'L',\n74800=>'L',\n74801=>'L',\n74802=>'L',\n74803=>'L',\n74804=>'L',\n74805=>'L',\n74806=>'L',\n74807=>'L',\n74808=>'L',\n74809=>'L',\n74810=>'L',\n74811=>'L',\n74812=>'L',\n74813=>'L',\n74814=>'L',\n74815=>'L',\n74816=>'L',\n74817=>'L',\n74818=>'L',\n74819=>'L',\n74820=>'L',\n74821=>'L',\n74822=>'L',\n74823=>'L',\n74824=>'L',\n74825=>'L',\n74826=>'L',\n74827=>'L',\n74828=>'L',\n74829=>'L',\n74830=>'L',\n74831=>'L',\n74832=>'L',\n74833=>'L',\n74834=>'L',\n74835=>'L',\n74836=>'L',\n74837=>'L',\n74838=>'L',\n74839=>'L',\n74840=>'L',\n74841=>'L',\n74842=>'L',\n74843=>'L',\n74844=>'L',\n74845=>'L',\n74846=>'L',\n74847=>'L',\n74848=>'L',\n74849=>'L',\n74850=>'L',\n74864=>'L',\n74865=>'L',\n74866=>'L',\n74867=>'L',\n118784=>'L',\n118785=>'L',\n118786=>'L',\n118787=>'L',\n118788=>'L',\n118789=>'L',\n118790=>'L',\n118791=>'L',\n118792=>'L',\n118793=>'L',\n118794=>'L',\n118795=>'L',\n118796=>'L',\n118797=>'L',\n118798=>'L',\n118799=>'L',\n118800=>'L',\n118801=>'L',\n118802=>'L',\n118803=>'L',\n118804=>'L',\n118805=>'L',\n118806=>'L',\n118807=>'L',\n118808=>'L',\n118809=>'L',\n118810=>'L',\n118811=>'L',\n118812=>'L',\n118813=>'L',\n118814=>'L',\n118815=>'L',\n118816=>'L',\n118817=>'L',\n118818=>'L',\n118819=>'L',\n118820=>'L',\n118821=>'L',\n118822=>'L',\n118823=>'L',\n118824=>'L',\n118825=>'L',\n118826=>'L',\n118827=>'L',\n118828=>'L',\n118829=>'L',\n118830=>'L',\n118831=>'L',\n118832=>'L',\n118833=>'L',\n118834=>'L',\n118835=>'L',\n118836=>'L',\n118837=>'L',\n118838=>'L',\n118839=>'L',\n118840=>'L',\n118841=>'L',\n118842=>'L',\n118843=>'L',\n118844=>'L',\n118845=>'L',\n118846=>'L',\n118847=>'L',\n118848=>'L',\n118849=>'L',\n118850=>'L',\n118851=>'L',\n118852=>'L',\n118853=>'L',\n118854=>'L',\n118855=>'L',\n118856=>'L',\n118857=>'L',\n118858=>'L',\n118859=>'L',\n118860=>'L',\n118861=>'L',\n118862=>'L',\n118863=>'L',\n118864=>'L',\n118865=>'L',\n118866=>'L',\n118867=>'L',\n118868=>'L',\n118869=>'L',\n118870=>'L',\n118871=>'L',\n118872=>'L',\n118873=>'L',\n118874=>'L',\n118875=>'L',\n118876=>'L',\n118877=>'L',\n118878=>'L',\n118879=>'L',\n118880=>'L',\n118881=>'L',\n118882=>'L',\n118883=>'L',\n118884=>'L',\n118885=>'L',\n118886=>'L',\n118887=>'L',\n118888=>'L',\n118889=>'L',\n118890=>'L',\n118891=>'L',\n118892=>'L',\n118893=>'L',\n118894=>'L',\n118895=>'L',\n118896=>'L',\n118897=>'L',\n118898=>'L',\n118899=>'L',\n118900=>'L',\n118901=>'L',\n118902=>'L',\n118903=>'L',\n118904=>'L',\n118905=>'L',\n118906=>'L',\n118907=>'L',\n118908=>'L',\n118909=>'L',\n118910=>'L',\n118911=>'L',\n118912=>'L',\n118913=>'L',\n118914=>'L',\n118915=>'L',\n118916=>'L',\n118917=>'L',\n118918=>'L',\n118919=>'L',\n118920=>'L',\n118921=>'L',\n118922=>'L',\n118923=>'L',\n118924=>'L',\n118925=>'L',\n118926=>'L',\n118927=>'L',\n118928=>'L',\n118929=>'L',\n118930=>'L',\n118931=>'L',\n118932=>'L',\n118933=>'L',\n118934=>'L',\n118935=>'L',\n118936=>'L',\n118937=>'L',\n118938=>'L',\n118939=>'L',\n118940=>'L',\n118941=>'L',\n118942=>'L',\n118943=>'L',\n118944=>'L',\n118945=>'L',\n118946=>'L',\n118947=>'L',\n118948=>'L',\n118949=>'L',\n118950=>'L',\n118951=>'L',\n118952=>'L',\n118953=>'L',\n118954=>'L',\n118955=>'L',\n118956=>'L',\n118957=>'L',\n118958=>'L',\n118959=>'L',\n118960=>'L',\n118961=>'L',\n118962=>'L',\n118963=>'L',\n118964=>'L',\n118965=>'L',\n118966=>'L',\n118967=>'L',\n118968=>'L',\n118969=>'L',\n118970=>'L',\n118971=>'L',\n118972=>'L',\n118973=>'L',\n118974=>'L',\n118975=>'L',\n118976=>'L',\n118977=>'L',\n118978=>'L',\n118979=>'L',\n118980=>'L',\n118981=>'L',\n118982=>'L',\n118983=>'L',\n118984=>'L',\n118985=>'L',\n118986=>'L',\n118987=>'L',\n118988=>'L',\n118989=>'L',\n118990=>'L',\n118991=>'L',\n118992=>'L',\n118993=>'L',\n118994=>'L',\n118995=>'L',\n118996=>'L',\n118997=>'L',\n118998=>'L',\n118999=>'L',\n119000=>'L',\n119001=>'L',\n119002=>'L',\n119003=>'L',\n119004=>'L',\n119005=>'L',\n119006=>'L',\n119007=>'L',\n119008=>'L',\n119009=>'L',\n119010=>'L',\n119011=>'L',\n119012=>'L',\n119013=>'L',\n119014=>'L',\n119015=>'L',\n119016=>'L',\n119017=>'L',\n119018=>'L',\n119019=>'L',\n119020=>'L',\n119021=>'L',\n119022=>'L',\n119023=>'L',\n119024=>'L',\n119025=>'L',\n119026=>'L',\n119027=>'L',\n119028=>'L',\n119029=>'L',\n119040=>'L',\n119041=>'L',\n119042=>'L',\n119043=>'L',\n119044=>'L',\n119045=>'L',\n119046=>'L',\n119047=>'L',\n119048=>'L',\n119049=>'L',\n119050=>'L',\n119051=>'L',\n119052=>'L',\n119053=>'L',\n119054=>'L',\n119055=>'L',\n119056=>'L',\n119057=>'L',\n119058=>'L',\n119059=>'L',\n119060=>'L',\n119061=>'L',\n119062=>'L',\n119063=>'L',\n119064=>'L',\n119065=>'L',\n119066=>'L',\n119067=>'L',\n119068=>'L',\n119069=>'L',\n119070=>'L',\n119071=>'L',\n119072=>'L',\n119073=>'L',\n119074=>'L',\n119075=>'L',\n119076=>'L',\n119077=>'L',\n119078=>'L',\n119082=>'L',\n119083=>'L',\n119084=>'L',\n119085=>'L',\n119086=>'L',\n119087=>'L',\n119088=>'L',\n119089=>'L',\n119090=>'L',\n119091=>'L',\n119092=>'L',\n119093=>'L',\n119094=>'L',\n119095=>'L',\n119096=>'L',\n119097=>'L',\n119098=>'L',\n119099=>'L',\n119100=>'L',\n119101=>'L',\n119102=>'L',\n119103=>'L',\n119104=>'L',\n119105=>'L',\n119106=>'L',\n119107=>'L',\n119108=>'L',\n119109=>'L',\n119110=>'L',\n119111=>'L',\n119112=>'L',\n119113=>'L',\n119114=>'L',\n119115=>'L',\n119116=>'L',\n119117=>'L',\n119118=>'L',\n119119=>'L',\n119120=>'L',\n119121=>'L',\n119122=>'L',\n119123=>'L',\n119124=>'L',\n119125=>'L',\n119126=>'L',\n119127=>'L',\n119128=>'L',\n119129=>'L',\n119130=>'L',\n119131=>'L',\n119132=>'L',\n119133=>'L',\n119134=>'L',\n119135=>'L',\n119136=>'L',\n119137=>'L',\n119138=>'L',\n119139=>'L',\n119140=>'L',\n119141=>'L',\n119142=>'L',\n119143=>'NSM',\n119144=>'NSM',\n119145=>'NSM',\n119146=>'L',\n119147=>'L',\n119148=>'L',\n119149=>'L',\n119150=>'L',\n119151=>'L',\n119152=>'L',\n119153=>'L',\n119154=>'L',\n119155=>'BN',\n119156=>'BN',\n119157=>'BN',\n119158=>'BN',\n119159=>'BN',\n119160=>'BN',\n119161=>'BN',\n119162=>'BN',\n119163=>'NSM',\n119164=>'NSM',\n119165=>'NSM',\n119166=>'NSM',\n119167=>'NSM',\n119168=>'NSM',\n119169=>'NSM',\n119170=>'NSM',\n119171=>'L',\n119172=>'L',\n119173=>'NSM',\n119174=>'NSM',\n119175=>'NSM',\n119176=>'NSM',\n119177=>'NSM',\n119178=>'NSM',\n119179=>'NSM',\n119180=>'L',\n119181=>'L',\n119182=>'L',\n119183=>'L',\n119184=>'L',\n119185=>'L',\n119186=>'L',\n119187=>'L',\n119188=>'L',\n119189=>'L',\n119190=>'L',\n119191=>'L',\n119192=>'L',\n119193=>'L',\n119194=>'L',\n119195=>'L',\n119196=>'L',\n119197=>'L',\n119198=>'L',\n119199=>'L',\n119200=>'L',\n119201=>'L',\n119202=>'L',\n119203=>'L',\n119204=>'L',\n119205=>'L',\n119206=>'L',\n119207=>'L',\n119208=>'L',\n119209=>'L',\n119210=>'NSM',\n119211=>'NSM',\n119212=>'NSM',\n119213=>'NSM',\n119214=>'L',\n119215=>'L',\n119216=>'L',\n119217=>'L',\n119218=>'L',\n119219=>'L',\n119220=>'L',\n119221=>'L',\n119222=>'L',\n119223=>'L',\n119224=>'L',\n119225=>'L',\n119226=>'L',\n119227=>'L',\n119228=>'L',\n119229=>'L',\n119230=>'L',\n119231=>'L',\n119232=>'L',\n119233=>'L',\n119234=>'L',\n119235=>'L',\n119236=>'L',\n119237=>'L',\n119238=>'L',\n119239=>'L',\n119240=>'L',\n119241=>'L',\n119242=>'L',\n119243=>'L',\n119244=>'L',\n119245=>'L',\n119246=>'L',\n119247=>'L',\n119248=>'L',\n119249=>'L',\n119250=>'L',\n119251=>'L',\n119252=>'L',\n119253=>'L',\n119254=>'L',\n119255=>'L',\n119256=>'L',\n119257=>'L',\n119258=>'L',\n119259=>'L',\n119260=>'L',\n119261=>'L',\n119296=>'ON',\n119297=>'ON',\n119298=>'ON',\n119299=>'ON',\n119300=>'ON',\n119301=>'ON',\n119302=>'ON',\n119303=>'ON',\n119304=>'ON',\n119305=>'ON',\n119306=>'ON',\n119307=>'ON',\n119308=>'ON',\n119309=>'ON',\n119310=>'ON',\n119311=>'ON',\n119312=>'ON',\n119313=>'ON',\n119314=>'ON',\n119315=>'ON',\n119316=>'ON',\n119317=>'ON',\n119318=>'ON',\n119319=>'ON',\n119320=>'ON',\n119321=>'ON',\n119322=>'ON',\n119323=>'ON',\n119324=>'ON',\n119325=>'ON',\n119326=>'ON',\n119327=>'ON',\n119328=>'ON',\n119329=>'ON',\n119330=>'ON',\n119331=>'ON',\n119332=>'ON',\n119333=>'ON',\n119334=>'ON',\n119335=>'ON',\n119336=>'ON',\n119337=>'ON',\n119338=>'ON',\n119339=>'ON',\n119340=>'ON',\n119341=>'ON',\n119342=>'ON',\n119343=>'ON',\n119344=>'ON',\n119345=>'ON',\n119346=>'ON',\n119347=>'ON',\n119348=>'ON',\n119349=>'ON',\n119350=>'ON',\n119351=>'ON',\n119352=>'ON',\n119353=>'ON',\n119354=>'ON',\n119355=>'ON',\n119356=>'ON',\n119357=>'ON',\n119358=>'ON',\n119359=>'ON',\n119360=>'ON',\n119361=>'ON',\n119362=>'NSM',\n119363=>'NSM',\n119364=>'NSM',\n119365=>'ON',\n119552=>'ON',\n119553=>'ON',\n119554=>'ON',\n119555=>'ON',\n119556=>'ON',\n119557=>'ON',\n119558=>'ON',\n119559=>'ON',\n119560=>'ON',\n119561=>'ON',\n119562=>'ON',\n119563=>'ON',\n119564=>'ON',\n119565=>'ON',\n119566=>'ON',\n119567=>'ON',\n119568=>'ON',\n119569=>'ON',\n119570=>'ON',\n119571=>'ON',\n119572=>'ON',\n119573=>'ON',\n119574=>'ON',\n119575=>'ON',\n119576=>'ON',\n119577=>'ON',\n119578=>'ON',\n119579=>'ON',\n119580=>'ON',\n119581=>'ON',\n119582=>'ON',\n119583=>'ON',\n119584=>'ON',\n119585=>'ON',\n119586=>'ON',\n119587=>'ON',\n119588=>'ON',\n119589=>'ON',\n119590=>'ON',\n119591=>'ON',\n119592=>'ON',\n119593=>'ON',\n119594=>'ON',\n119595=>'ON',\n119596=>'ON',\n119597=>'ON',\n119598=>'ON',\n119599=>'ON',\n119600=>'ON',\n119601=>'ON',\n119602=>'ON',\n119603=>'ON',\n119604=>'ON',\n119605=>'ON',\n119606=>'ON',\n119607=>'ON',\n119608=>'ON',\n119609=>'ON',\n119610=>'ON',\n119611=>'ON',\n119612=>'ON',\n119613=>'ON',\n119614=>'ON',\n119615=>'ON',\n119616=>'ON',\n119617=>'ON',\n119618=>'ON',\n119619=>'ON',\n119620=>'ON',\n119621=>'ON',\n119622=>'ON',\n119623=>'ON',\n119624=>'ON',\n119625=>'ON',\n119626=>'ON',\n119627=>'ON',\n119628=>'ON',\n119629=>'ON',\n119630=>'ON',\n119631=>'ON',\n119632=>'ON',\n119633=>'ON',\n119634=>'ON',\n119635=>'ON',\n119636=>'ON',\n119637=>'ON',\n119638=>'ON',\n119648=>'L',\n119649=>'L',\n119650=>'L',\n119651=>'L',\n119652=>'L',\n119653=>'L',\n119654=>'L',\n119655=>'L',\n119656=>'L',\n119657=>'L',\n119658=>'L',\n119659=>'L',\n119660=>'L',\n119661=>'L',\n119662=>'L',\n119663=>'L',\n119664=>'L',\n119665=>'L',\n119808=>'L',\n119809=>'L',\n119810=>'L',\n119811=>'L',\n119812=>'L',\n119813=>'L',\n119814=>'L',\n119815=>'L',\n119816=>'L',\n119817=>'L',\n119818=>'L',\n119819=>'L',\n119820=>'L',\n119821=>'L',\n119822=>'L',\n119823=>'L',\n119824=>'L',\n119825=>'L',\n119826=>'L',\n119827=>'L',\n119828=>'L',\n119829=>'L',\n119830=>'L',\n119831=>'L',\n119832=>'L',\n119833=>'L',\n119834=>'L',\n119835=>'L',\n119836=>'L',\n119837=>'L',\n119838=>'L',\n119839=>'L',\n119840=>'L',\n119841=>'L',\n119842=>'L',\n119843=>'L',\n119844=>'L',\n119845=>'L',\n119846=>'L',\n119847=>'L',\n119848=>'L',\n119849=>'L',\n119850=>'L',\n119851=>'L',\n119852=>'L',\n119853=>'L',\n119854=>'L',\n119855=>'L',\n119856=>'L',\n119857=>'L',\n119858=>'L',\n119859=>'L',\n119860=>'L',\n119861=>'L',\n119862=>'L',\n119863=>'L',\n119864=>'L',\n119865=>'L',\n119866=>'L',\n119867=>'L',\n119868=>'L',\n119869=>'L',\n119870=>'L',\n119871=>'L',\n119872=>'L',\n119873=>'L',\n119874=>'L',\n119875=>'L',\n119876=>'L',\n119877=>'L',\n119878=>'L',\n119879=>'L',\n119880=>'L',\n119881=>'L',\n119882=>'L',\n119883=>'L',\n119884=>'L',\n119885=>'L',\n119886=>'L',\n119887=>'L',\n119888=>'L',\n119889=>'L',\n119890=>'L',\n119891=>'L',\n119892=>'L',\n119894=>'L',\n119895=>'L',\n119896=>'L',\n119897=>'L',\n119898=>'L',\n119899=>'L',\n119900=>'L',\n119901=>'L',\n119902=>'L',\n119903=>'L',\n119904=>'L',\n119905=>'L',\n119906=>'L',\n119907=>'L',\n119908=>'L',\n119909=>'L',\n119910=>'L',\n119911=>'L',\n119912=>'L',\n119913=>'L',\n119914=>'L',\n119915=>'L',\n119916=>'L',\n119917=>'L',\n119918=>'L',\n119919=>'L',\n119920=>'L',\n119921=>'L',\n119922=>'L',\n119923=>'L',\n119924=>'L',\n119925=>'L',\n119926=>'L',\n119927=>'L',\n119928=>'L',\n119929=>'L',\n119930=>'L',\n119931=>'L',\n119932=>'L',\n119933=>'L',\n119934=>'L',\n119935=>'L',\n119936=>'L',\n119937=>'L',\n119938=>'L',\n119939=>'L',\n119940=>'L',\n119941=>'L',\n119942=>'L',\n119943=>'L',\n119944=>'L',\n119945=>'L',\n119946=>'L',\n119947=>'L',\n119948=>'L',\n119949=>'L',\n119950=>'L',\n119951=>'L',\n119952=>'L',\n119953=>'L',\n119954=>'L',\n119955=>'L',\n119956=>'L',\n119957=>'L',\n119958=>'L',\n119959=>'L',\n119960=>'L',\n119961=>'L',\n119962=>'L',\n119963=>'L',\n119964=>'L',\n119966=>'L',\n119967=>'L',\n119970=>'L',\n119973=>'L',\n119974=>'L',\n119977=>'L',\n119978=>'L',\n119979=>'L',\n119980=>'L',\n119982=>'L',\n119983=>'L',\n119984=>'L',\n119985=>'L',\n119986=>'L',\n119987=>'L',\n119988=>'L',\n119989=>'L',\n119990=>'L',\n119991=>'L',\n119992=>'L',\n119993=>'L',\n119995=>'L',\n119997=>'L',\n119998=>'L',\n119999=>'L',\n120000=>'L',\n120001=>'L',\n120002=>'L',\n120003=>'L',\n120005=>'L',\n120006=>'L',\n120007=>'L',\n120008=>'L',\n120009=>'L',\n120010=>'L',\n120011=>'L',\n120012=>'L',\n120013=>'L',\n120014=>'L',\n120015=>'L',\n120016=>'L',\n120017=>'L',\n120018=>'L',\n120019=>'L',\n120020=>'L',\n120021=>'L',\n120022=>'L',\n120023=>'L',\n120024=>'L',\n120025=>'L',\n120026=>'L',\n120027=>'L',\n120028=>'L',\n120029=>'L',\n120030=>'L',\n120031=>'L',\n120032=>'L',\n120033=>'L',\n120034=>'L',\n120035=>'L',\n120036=>'L',\n120037=>'L',\n120038=>'L',\n120039=>'L',\n120040=>'L',\n120041=>'L',\n120042=>'L',\n120043=>'L',\n120044=>'L',\n120045=>'L',\n120046=>'L',\n120047=>'L',\n120048=>'L',\n120049=>'L',\n120050=>'L',\n120051=>'L',\n120052=>'L',\n120053=>'L',\n120054=>'L',\n120055=>'L',\n120056=>'L',\n120057=>'L',\n120058=>'L',\n120059=>'L',\n120060=>'L',\n120061=>'L',\n120062=>'L',\n120063=>'L',\n120064=>'L',\n120065=>'L',\n120066=>'L',\n120067=>'L',\n120068=>'L',\n120069=>'L',\n120071=>'L',\n120072=>'L',\n120073=>'L',\n120074=>'L',\n120077=>'L',\n120078=>'L',\n120079=>'L',\n120080=>'L',\n120081=>'L',\n120082=>'L',\n120083=>'L',\n120084=>'L',\n120086=>'L',\n120087=>'L',\n120088=>'L',\n120089=>'L',\n120090=>'L',\n120091=>'L',\n120092=>'L',\n120094=>'L',\n120095=>'L',\n120096=>'L',\n120097=>'L',\n120098=>'L',\n120099=>'L',\n120100=>'L',\n120101=>'L',\n120102=>'L',\n120103=>'L',\n120104=>'L',\n120105=>'L',\n120106=>'L',\n120107=>'L',\n120108=>'L',\n120109=>'L',\n120110=>'L',\n120111=>'L',\n120112=>'L',\n120113=>'L',\n120114=>'L',\n120115=>'L',\n120116=>'L',\n120117=>'L',\n120118=>'L',\n120119=>'L',\n120120=>'L',\n120121=>'L',\n120123=>'L',\n120124=>'L',\n120125=>'L',\n120126=>'L',\n120128=>'L',\n120129=>'L',\n120130=>'L',\n120131=>'L',\n120132=>'L',\n120134=>'L',\n120138=>'L',\n120139=>'L',\n120140=>'L',\n120141=>'L',\n120142=>'L',\n120143=>'L',\n120144=>'L',\n120146=>'L',\n120147=>'L',\n120148=>'L',\n120149=>'L',\n120150=>'L',\n120151=>'L',\n120152=>'L',\n120153=>'L',\n120154=>'L',\n120155=>'L',\n120156=>'L',\n120157=>'L',\n120158=>'L',\n120159=>'L',\n120160=>'L',\n120161=>'L',\n120162=>'L',\n120163=>'L',\n120164=>'L',\n120165=>'L',\n120166=>'L',\n120167=>'L',\n120168=>'L',\n120169=>'L',\n120170=>'L',\n120171=>'L',\n120172=>'L',\n120173=>'L',\n120174=>'L',\n120175=>'L',\n120176=>'L',\n120177=>'L',\n120178=>'L',\n120179=>'L',\n120180=>'L',\n120181=>'L',\n120182=>'L',\n120183=>'L',\n120184=>'L',\n120185=>'L',\n120186=>'L',\n120187=>'L',\n120188=>'L',\n120189=>'L',\n120190=>'L',\n120191=>'L',\n120192=>'L',\n120193=>'L',\n120194=>'L',\n120195=>'L',\n120196=>'L',\n120197=>'L',\n120198=>'L',\n120199=>'L',\n120200=>'L',\n120201=>'L',\n120202=>'L',\n120203=>'L',\n120204=>'L',\n120205=>'L',\n120206=>'L',\n120207=>'L',\n120208=>'L',\n120209=>'L',\n120210=>'L',\n120211=>'L',\n120212=>'L',\n120213=>'L',\n120214=>'L',\n120215=>'L',\n120216=>'L',\n120217=>'L',\n120218=>'L',\n120219=>'L',\n120220=>'L',\n120221=>'L',\n120222=>'L',\n120223=>'L',\n120224=>'L',\n120225=>'L',\n120226=>'L',\n120227=>'L',\n120228=>'L',\n120229=>'L',\n120230=>'L',\n120231=>'L',\n120232=>'L',\n120233=>'L',\n120234=>'L',\n120235=>'L',\n120236=>'L',\n120237=>'L',\n120238=>'L',\n120239=>'L',\n120240=>'L',\n120241=>'L',\n120242=>'L',\n120243=>'L',\n120244=>'L',\n120245=>'L',\n120246=>'L',\n120247=>'L',\n120248=>'L',\n120249=>'L',\n120250=>'L',\n120251=>'L',\n120252=>'L',\n120253=>'L',\n120254=>'L',\n120255=>'L',\n120256=>'L',\n120257=>'L',\n120258=>'L',\n120259=>'L',\n120260=>'L',\n120261=>'L',\n120262=>'L',\n120263=>'L',\n120264=>'L',\n120265=>'L',\n120266=>'L',\n120267=>'L',\n120268=>'L',\n120269=>'L',\n120270=>'L',\n120271=>'L',\n120272=>'L',\n120273=>'L',\n120274=>'L',\n120275=>'L',\n120276=>'L',\n120277=>'L',\n120278=>'L',\n120279=>'L',\n120280=>'L',\n120281=>'L',\n120282=>'L',\n120283=>'L',\n120284=>'L',\n120285=>'L',\n120286=>'L',\n120287=>'L',\n120288=>'L',\n120289=>'L',\n120290=>'L',\n120291=>'L',\n120292=>'L',\n120293=>'L',\n120294=>'L',\n120295=>'L',\n120296=>'L',\n120297=>'L',\n120298=>'L',\n120299=>'L',\n120300=>'L',\n120301=>'L',\n120302=>'L',\n120303=>'L',\n120304=>'L',\n120305=>'L',\n120306=>'L',\n120307=>'L',\n120308=>'L',\n120309=>'L',\n120310=>'L',\n120311=>'L',\n120312=>'L',\n120313=>'L',\n120314=>'L',\n120315=>'L',\n120316=>'L',\n120317=>'L',\n120318=>'L',\n120319=>'L',\n120320=>'L',\n120321=>'L',\n120322=>'L',\n120323=>'L',\n120324=>'L',\n120325=>'L',\n120326=>'L',\n120327=>'L',\n120328=>'L',\n120329=>'L',\n120330=>'L',\n120331=>'L',\n120332=>'L',\n120333=>'L',\n120334=>'L',\n120335=>'L',\n120336=>'L',\n120337=>'L',\n120338=>'L',\n120339=>'L',\n120340=>'L',\n120341=>'L',\n120342=>'L',\n120343=>'L',\n120344=>'L',\n120345=>'L',\n120346=>'L',\n120347=>'L',\n120348=>'L',\n120349=>'L',\n120350=>'L',\n120351=>'L',\n120352=>'L',\n120353=>'L',\n120354=>'L',\n120355=>'L',\n120356=>'L',\n120357=>'L',\n120358=>'L',\n120359=>'L',\n120360=>'L',\n120361=>'L',\n120362=>'L',\n120363=>'L',\n120364=>'L',\n120365=>'L',\n120366=>'L',\n120367=>'L',\n120368=>'L',\n120369=>'L',\n120370=>'L',\n120371=>'L',\n120372=>'L',\n120373=>'L',\n120374=>'L',\n120375=>'L',\n120376=>'L',\n120377=>'L',\n120378=>'L',\n120379=>'L',\n120380=>'L',\n120381=>'L',\n120382=>'L',\n120383=>'L',\n120384=>'L',\n120385=>'L',\n120386=>'L',\n120387=>'L',\n120388=>'L',\n120389=>'L',\n120390=>'L',\n120391=>'L',\n120392=>'L',\n120393=>'L',\n120394=>'L',\n120395=>'L',\n120396=>'L',\n120397=>'L',\n120398=>'L',\n120399=>'L',\n120400=>'L',\n120401=>'L',\n120402=>'L',\n120403=>'L',\n120404=>'L',\n120405=>'L',\n120406=>'L',\n120407=>'L',\n120408=>'L',\n120409=>'L',\n120410=>'L',\n120411=>'L',\n120412=>'L',\n120413=>'L',\n120414=>'L',\n120415=>'L',\n120416=>'L',\n120417=>'L',\n120418=>'L',\n120419=>'L',\n120420=>'L',\n120421=>'L',\n120422=>'L',\n120423=>'L',\n120424=>'L',\n120425=>'L',\n120426=>'L',\n120427=>'L',\n120428=>'L',\n120429=>'L',\n120430=>'L',\n120431=>'L',\n120432=>'L',\n120433=>'L',\n120434=>'L',\n120435=>'L',\n120436=>'L',\n120437=>'L',\n120438=>'L',\n120439=>'L',\n120440=>'L',\n120441=>'L',\n120442=>'L',\n120443=>'L',\n120444=>'L',\n120445=>'L',\n120446=>'L',\n120447=>'L',\n120448=>'L',\n120449=>'L',\n120450=>'L',\n120451=>'L',\n120452=>'L',\n120453=>'L',\n120454=>'L',\n120455=>'L',\n120456=>'L',\n120457=>'L',\n120458=>'L',\n120459=>'L',\n120460=>'L',\n120461=>'L',\n120462=>'L',\n120463=>'L',\n120464=>'L',\n120465=>'L',\n120466=>'L',\n120467=>'L',\n120468=>'L',\n120469=>'L',\n120470=>'L',\n120471=>'L',\n120472=>'L',\n120473=>'L',\n120474=>'L',\n120475=>'L',\n120476=>'L',\n120477=>'L',\n120478=>'L',\n120479=>'L',\n120480=>'L',\n120481=>'L',\n120482=>'L',\n120483=>'L',\n120484=>'L',\n120485=>'L',\n120488=>'L',\n120489=>'L',\n120490=>'L',\n120491=>'L',\n120492=>'L',\n120493=>'L',\n120494=>'L',\n120495=>'L',\n120496=>'L',\n120497=>'L',\n120498=>'L',\n120499=>'L',\n120500=>'L',\n120501=>'L',\n120502=>'L',\n120503=>'L',\n120504=>'L',\n120505=>'L',\n120506=>'L',\n120507=>'L',\n120508=>'L',\n120509=>'L',\n120510=>'L',\n120511=>'L',\n120512=>'L',\n120513=>'L',\n120514=>'L',\n120515=>'L',\n120516=>'L',\n120517=>'L',\n120518=>'L',\n120519=>'L',\n120520=>'L',\n120521=>'L',\n120522=>'L',\n120523=>'L',\n120524=>'L',\n120525=>'L',\n120526=>'L',\n120527=>'L',\n120528=>'L',\n120529=>'L',\n120530=>'L',\n120531=>'L',\n120532=>'L',\n120533=>'L',\n120534=>'L',\n120535=>'L',\n120536=>'L',\n120537=>'L',\n120538=>'L',\n120539=>'L',\n120540=>'L',\n120541=>'L',\n120542=>'L',\n120543=>'L',\n120544=>'L',\n120545=>'L',\n120546=>'L',\n120547=>'L',\n120548=>'L',\n120549=>'L',\n120550=>'L',\n120551=>'L',\n120552=>'L',\n120553=>'L',\n120554=>'L',\n120555=>'L',\n120556=>'L',\n120557=>'L',\n120558=>'L',\n120559=>'L',\n120560=>'L',\n120561=>'L',\n120562=>'L',\n120563=>'L',\n120564=>'L',\n120565=>'L',\n120566=>'L',\n120567=>'L',\n120568=>'L',\n120569=>'L',\n120570=>'L',\n120571=>'L',\n120572=>'L',\n120573=>'L',\n120574=>'L',\n120575=>'L',\n120576=>'L',\n120577=>'L',\n120578=>'L',\n120579=>'L',\n120580=>'L',\n120581=>'L',\n120582=>'L',\n120583=>'L',\n120584=>'L',\n120585=>'L',\n120586=>'L',\n120587=>'L',\n120588=>'L',\n120589=>'L',\n120590=>'L',\n120591=>'L',\n120592=>'L',\n120593=>'L',\n120594=>'L',\n120595=>'L',\n120596=>'L',\n120597=>'L',\n120598=>'L',\n120599=>'L',\n120600=>'L',\n120601=>'L',\n120602=>'L',\n120603=>'L',\n120604=>'L',\n120605=>'L',\n120606=>'L',\n120607=>'L',\n120608=>'L',\n120609=>'L',\n120610=>'L',\n120611=>'L',\n120612=>'L',\n120613=>'L',\n120614=>'L',\n120615=>'L',\n120616=>'L',\n120617=>'L',\n120618=>'L',\n120619=>'L',\n120620=>'L',\n120621=>'L',\n120622=>'L',\n120623=>'L',\n120624=>'L',\n120625=>'L',\n120626=>'L',\n120627=>'L',\n120628=>'L',\n120629=>'L',\n120630=>'L',\n120631=>'L',\n120632=>'L',\n120633=>'L',\n120634=>'L',\n120635=>'L',\n120636=>'L',\n120637=>'L',\n120638=>'L',\n120639=>'L',\n120640=>'L',\n120641=>'L',\n120642=>'L',\n120643=>'L',\n120644=>'L',\n120645=>'L',\n120646=>'L',\n120647=>'L',\n120648=>'L',\n120649=>'L',\n120650=>'L',\n120651=>'L',\n120652=>'L',\n120653=>'L',\n120654=>'L',\n120655=>'L',\n120656=>'L',\n120657=>'L',\n120658=>'L',\n120659=>'L',\n120660=>'L',\n120661=>'L',\n120662=>'L',\n120663=>'L',\n120664=>'L',\n120665=>'L',\n120666=>'L',\n120667=>'L',\n120668=>'L',\n120669=>'L',\n120670=>'L',\n120671=>'L',\n120672=>'L',\n120673=>'L',\n120674=>'L',\n120675=>'L',\n120676=>'L',\n120677=>'L',\n120678=>'L',\n120679=>'L',\n120680=>'L',\n120681=>'L',\n120682=>'L',\n120683=>'L',\n120684=>'L',\n120685=>'L',\n120686=>'L',\n120687=>'L',\n120688=>'L',\n120689=>'L',\n120690=>'L',\n120691=>'L',\n120692=>'L',\n120693=>'L',\n120694=>'L',\n120695=>'L',\n120696=>'L',\n120697=>'L',\n120698=>'L',\n120699=>'L',\n120700=>'L',\n120701=>'L',\n120702=>'L',\n120703=>'L',\n120704=>'L',\n120705=>'L',\n120706=>'L',\n120707=>'L',\n120708=>'L',\n120709=>'L',\n120710=>'L',\n120711=>'L',\n120712=>'L',\n120713=>'L',\n120714=>'L',\n120715=>'L',\n120716=>'L',\n120717=>'L',\n120718=>'L',\n120719=>'L',\n120720=>'L',\n120721=>'L',\n120722=>'L',\n120723=>'L',\n120724=>'L',\n120725=>'L',\n120726=>'L',\n120727=>'L',\n120728=>'L',\n120729=>'L',\n120730=>'L',\n120731=>'L',\n120732=>'L',\n120733=>'L',\n120734=>'L',\n120735=>'L',\n120736=>'L',\n120737=>'L',\n120738=>'L',\n120739=>'L',\n120740=>'L',\n120741=>'L',\n120742=>'L',\n120743=>'L',\n120744=>'L',\n120745=>'L',\n120746=>'L',\n120747=>'L',\n120748=>'L',\n120749=>'L',\n120750=>'L',\n120751=>'L',\n120752=>'L',\n120753=>'L',\n120754=>'L',\n120755=>'L',\n120756=>'L',\n120757=>'L',\n120758=>'L',\n120759=>'L',\n120760=>'L',\n120761=>'L',\n120762=>'L',\n120763=>'L',\n120764=>'L',\n120765=>'L',\n120766=>'L',\n120767=>'L',\n120768=>'L',\n120769=>'L',\n120770=>'L',\n120771=>'L',\n120772=>'L',\n120773=>'L',\n120774=>'L',\n120775=>'L',\n120776=>'L',\n120777=>'L',\n120778=>'L',\n120779=>'L',\n120782=>'EN',\n120783=>'EN',\n120784=>'EN',\n120785=>'EN',\n120786=>'EN',\n120787=>'EN',\n120788=>'EN',\n120789=>'EN',\n120790=>'EN',\n120791=>'EN',\n120792=>'EN',\n120793=>'EN',\n120794=>'EN',\n120795=>'EN',\n120796=>'EN',\n120797=>'EN',\n120798=>'EN',\n120799=>'EN',\n120800=>'EN',\n120801=>'EN',\n120802=>'EN',\n120803=>'EN',\n120804=>'EN',\n120805=>'EN',\n120806=>'EN',\n120807=>'EN',\n120808=>'EN',\n120809=>'EN',\n120810=>'EN',\n120811=>'EN',\n120812=>'EN',\n120813=>'EN',\n120814=>'EN',\n120815=>'EN',\n120816=>'EN',\n120817=>'EN',\n120818=>'EN',\n120819=>'EN',\n120820=>'EN',\n120821=>'EN',\n120822=>'EN',\n120823=>'EN',\n120824=>'EN',\n120825=>'EN',\n120826=>'EN',\n120827=>'EN',\n120828=>'EN',\n120829=>'EN',\n120830=>'EN',\n120831=>'EN',\n131072=>'L',\n173782=>'L',\n194560=>'L',\n194561=>'L',\n194562=>'L',\n194563=>'L',\n194564=>'L',\n194565=>'L',\n194566=>'L',\n194567=>'L',\n194568=>'L',\n194569=>'L',\n194570=>'L',\n194571=>'L',\n194572=>'L',\n194573=>'L',\n194574=>'L',\n194575=>'L',\n194576=>'L',\n194577=>'L',\n194578=>'L',\n194579=>'L',\n194580=>'L',\n194581=>'L',\n194582=>'L',\n194583=>'L',\n194584=>'L',\n194585=>'L',\n194586=>'L',\n194587=>'L',\n194588=>'L',\n194589=>'L',\n194590=>'L',\n194591=>'L',\n194592=>'L',\n194593=>'L',\n194594=>'L',\n194595=>'L',\n194596=>'L',\n194597=>'L',\n194598=>'L',\n194599=>'L',\n194600=>'L',\n194601=>'L',\n194602=>'L',\n194603=>'L',\n194604=>'L',\n194605=>'L',\n194606=>'L',\n194607=>'L',\n194608=>'L',\n194609=>'L',\n194610=>'L',\n194611=>'L',\n194612=>'L',\n194613=>'L',\n194614=>'L',\n194615=>'L',\n194616=>'L',\n194617=>'L',\n194618=>'L',\n194619=>'L',\n194620=>'L',\n194621=>'L',\n194622=>'L',\n194623=>'L',\n194624=>'L',\n194625=>'L',\n194626=>'L',\n194627=>'L',\n194628=>'L',\n194629=>'L',\n194630=>'L',\n194631=>'L',\n194632=>'L',\n194633=>'L',\n194634=>'L',\n194635=>'L',\n194636=>'L',\n194637=>'L',\n194638=>'L',\n194639=>'L',\n194640=>'L',\n194641=>'L',\n194642=>'L',\n194643=>'L',\n194644=>'L',\n194645=>'L',\n194646=>'L',\n194647=>'L',\n194648=>'L',\n194649=>'L',\n194650=>'L',\n194651=>'L',\n194652=>'L',\n194653=>'L',\n194654=>'L',\n194655=>'L',\n194656=>'L',\n194657=>'L',\n194658=>'L',\n194659=>'L',\n194660=>'L',\n194661=>'L',\n194662=>'L',\n194663=>'L',\n194664=>'L',\n194665=>'L',\n194666=>'L',\n194667=>'L',\n194668=>'L',\n194669=>'L',\n194670=>'L',\n194671=>'L',\n194672=>'L',\n194673=>'L',\n194674=>'L',\n194675=>'L',\n194676=>'L',\n194677=>'L',\n194678=>'L',\n194679=>'L',\n194680=>'L',\n194681=>'L',\n194682=>'L',\n194683=>'L',\n194684=>'L',\n194685=>'L',\n194686=>'L',\n194687=>'L',\n194688=>'L',\n194689=>'L',\n194690=>'L',\n194691=>'L',\n194692=>'L',\n194693=>'L',\n194694=>'L',\n194695=>'L',\n194696=>'L',\n194697=>'L',\n194698=>'L',\n194699=>'L',\n194700=>'L',\n194701=>'L',\n194702=>'L',\n194703=>'L',\n194704=>'L',\n194705=>'L',\n194706=>'L',\n194707=>'L',\n194708=>'L',\n194709=>'L',\n194710=>'L',\n194711=>'L',\n194712=>'L',\n194713=>'L',\n194714=>'L',\n194715=>'L',\n194716=>'L',\n194717=>'L',\n194718=>'L',\n194719=>'L',\n194720=>'L',\n194721=>'L',\n194722=>'L',\n194723=>'L',\n194724=>'L',\n194725=>'L',\n194726=>'L',\n194727=>'L',\n194728=>'L',\n194729=>'L',\n194730=>'L',\n194731=>'L',\n194732=>'L',\n194733=>'L',\n194734=>'L',\n194735=>'L',\n194736=>'L',\n194737=>'L',\n194738=>'L',\n194739=>'L',\n194740=>'L',\n194741=>'L',\n194742=>'L',\n194743=>'L',\n194744=>'L',\n194745=>'L',\n194746=>'L',\n194747=>'L',\n194748=>'L',\n194749=>'L',\n194750=>'L',\n194751=>'L',\n194752=>'L',\n194753=>'L',\n194754=>'L',\n194755=>'L',\n194756=>'L',\n194757=>'L',\n194758=>'L',\n194759=>'L',\n194760=>'L',\n194761=>'L',\n194762=>'L',\n194763=>'L',\n194764=>'L',\n194765=>'L',\n194766=>'L',\n194767=>'L',\n194768=>'L',\n194769=>'L',\n194770=>'L',\n194771=>'L',\n194772=>'L',\n194773=>'L',\n194774=>'L',\n194775=>'L',\n194776=>'L',\n194777=>'L',\n194778=>'L',\n194779=>'L',\n194780=>'L',\n194781=>'L',\n194782=>'L',\n194783=>'L',\n194784=>'L',\n194785=>'L',\n194786=>'L',\n194787=>'L',\n194788=>'L',\n194789=>'L',\n194790=>'L',\n194791=>'L',\n194792=>'L',\n194793=>'L',\n194794=>'L',\n194795=>'L',\n194796=>'L',\n194797=>'L',\n194798=>'L',\n194799=>'L',\n194800=>'L',\n194801=>'L',\n194802=>'L',\n194803=>'L',\n194804=>'L',\n194805=>'L',\n194806=>'L',\n194807=>'L',\n194808=>'L',\n194809=>'L',\n194810=>'L',\n194811=>'L',\n194812=>'L',\n194813=>'L',\n194814=>'L',\n194815=>'L',\n194816=>'L',\n194817=>'L',\n194818=>'L',\n194819=>'L',\n194820=>'L',\n194821=>'L',\n194822=>'L',\n194823=>'L',\n194824=>'L',\n194825=>'L',\n194826=>'L',\n194827=>'L',\n194828=>'L',\n194829=>'L',\n194830=>'L',\n194831=>'L',\n194832=>'L',\n194833=>'L',\n194834=>'L',\n194835=>'L',\n194836=>'L',\n194837=>'L',\n194838=>'L',\n194839=>'L',\n194840=>'L',\n194841=>'L',\n194842=>'L',\n194843=>'L',\n194844=>'L',\n194845=>'L',\n194846=>'L',\n194847=>'L',\n194848=>'L',\n194849=>'L',\n194850=>'L',\n194851=>'L',\n194852=>'L',\n194853=>'L',\n194854=>'L',\n194855=>'L',\n194856=>'L',\n194857=>'L',\n194858=>'L',\n194859=>'L',\n194860=>'L',\n194861=>'L',\n194862=>'L',\n194863=>'L',\n194864=>'L',\n194865=>'L',\n194866=>'L',\n194867=>'L',\n194868=>'L',\n194869=>'L',\n194870=>'L',\n194871=>'L',\n194872=>'L',\n194873=>'L',\n194874=>'L',\n194875=>'L',\n194876=>'L',\n194877=>'L',\n194878=>'L',\n194879=>'L',\n194880=>'L',\n194881=>'L',\n194882=>'L',\n194883=>'L',\n194884=>'L',\n194885=>'L',\n194886=>'L',\n194887=>'L',\n194888=>'L',\n194889=>'L',\n194890=>'L',\n194891=>'L',\n194892=>'L',\n194893=>'L',\n194894=>'L',\n194895=>'L',\n194896=>'L',\n194897=>'L',\n194898=>'L',\n194899=>'L',\n194900=>'L',\n194901=>'L',\n194902=>'L',\n194903=>'L',\n194904=>'L',\n194905=>'L',\n194906=>'L',\n194907=>'L',\n194908=>'L',\n194909=>'L',\n194910=>'L',\n194911=>'L',\n194912=>'L',\n194913=>'L',\n194914=>'L',\n194915=>'L',\n194916=>'L',\n194917=>'L',\n194918=>'L',\n194919=>'L',\n194920=>'L',\n194921=>'L',\n194922=>'L',\n194923=>'L',\n194924=>'L',\n194925=>'L',\n194926=>'L',\n194927=>'L',\n194928=>'L',\n194929=>'L',\n194930=>'L',\n194931=>'L',\n194932=>'L',\n194933=>'L',\n194934=>'L',\n194935=>'L',\n194936=>'L',\n194937=>'L',\n194938=>'L',\n194939=>'L',\n194940=>'L',\n194941=>'L',\n194942=>'L',\n194943=>'L',\n194944=>'L',\n194945=>'L',\n194946=>'L',\n194947=>'L',\n194948=>'L',\n194949=>'L',\n194950=>'L',\n194951=>'L',\n194952=>'L',\n194953=>'L',\n194954=>'L',\n194955=>'L',\n194956=>'L',\n194957=>'L',\n194958=>'L',\n194959=>'L',\n194960=>'L',\n194961=>'L',\n194962=>'L',\n194963=>'L',\n194964=>'L',\n194965=>'L',\n194966=>'L',\n194967=>'L',\n194968=>'L',\n194969=>'L',\n194970=>'L',\n194971=>'L',\n194972=>'L',\n194973=>'L',\n194974=>'L',\n194975=>'L',\n194976=>'L',\n194977=>'L',\n194978=>'L',\n194979=>'L',\n194980=>'L',\n194981=>'L',\n194982=>'L',\n194983=>'L',\n194984=>'L',\n194985=>'L',\n194986=>'L',\n194987=>'L',\n194988=>'L',\n194989=>'L',\n194990=>'L',\n194991=>'L',\n194992=>'L',\n194993=>'L',\n194994=>'L',\n194995=>'L',\n194996=>'L',\n194997=>'L',\n194998=>'L',\n194999=>'L',\n195000=>'L',\n195001=>'L',\n195002=>'L',\n195003=>'L',\n195004=>'L',\n195005=>'L',\n195006=>'L',\n195007=>'L',\n195008=>'L',\n195009=>'L',\n195010=>'L',\n195011=>'L',\n195012=>'L',\n195013=>'L',\n195014=>'L',\n195015=>'L',\n195016=>'L',\n195017=>'L',\n195018=>'L',\n195019=>'L',\n195020=>'L',\n195021=>'L',\n195022=>'L',\n195023=>'L',\n195024=>'L',\n195025=>'L',\n195026=>'L',\n195027=>'L',\n195028=>'L',\n195029=>'L',\n195030=>'L',\n195031=>'L',\n195032=>'L',\n195033=>'L',\n195034=>'L',\n195035=>'L',\n195036=>'L',\n195037=>'L',\n195038=>'L',\n195039=>'L',\n195040=>'L',\n195041=>'L',\n195042=>'L',\n195043=>'L',\n195044=>'L',\n195045=>'L',\n195046=>'L',\n195047=>'L',\n195048=>'L',\n195049=>'L',\n195050=>'L',\n195051=>'L',\n195052=>'L',\n195053=>'L',\n195054=>'L',\n195055=>'L',\n195056=>'L',\n195057=>'L',\n195058=>'L',\n195059=>'L',\n195060=>'L',\n195061=>'L',\n195062=>'L',\n195063=>'L',\n195064=>'L',\n195065=>'L',\n195066=>'L',\n195067=>'L',\n195068=>'L',\n195069=>'L',\n195070=>'L',\n195071=>'L',\n195072=>'L',\n195073=>'L',\n195074=>'L',\n195075=>'L',\n195076=>'L',\n195077=>'L',\n195078=>'L',\n195079=>'L',\n195080=>'L',\n195081=>'L',\n195082=>'L',\n195083=>'L',\n195084=>'L',\n195085=>'L',\n195086=>'L',\n195087=>'L',\n195088=>'L',\n195089=>'L',\n195090=>'L',\n195091=>'L',\n195092=>'L',\n195093=>'L',\n195094=>'L',\n195095=>'L',\n195096=>'L',\n195097=>'L',\n195098=>'L',\n195099=>'L',\n195100=>'L',\n195101=>'L',\n917505=>'BN',\n917536=>'BN',\n917537=>'BN',\n917538=>'BN',\n917539=>'BN',\n917540=>'BN',\n917541=>'BN',\n917542=>'BN',\n917543=>'BN',\n917544=>'BN',\n917545=>'BN',\n917546=>'BN',\n917547=>'BN',\n917548=>'BN',\n917549=>'BN',\n917550=>'BN',\n917551=>'BN',\n917552=>'BN',\n917553=>'BN',\n917554=>'BN',\n917555=>'BN',\n917556=>'BN',\n917557=>'BN',\n917558=>'BN',\n917559=>'BN',\n917560=>'BN',\n917561=>'BN',\n917562=>'BN',\n917563=>'BN',\n917564=>'BN',\n917565=>'BN',\n917566=>'BN',\n917567=>'BN',\n917568=>'BN',\n917569=>'BN',\n917570=>'BN',\n917571=>'BN',\n917572=>'BN',\n917573=>'BN',\n917574=>'BN',\n917575=>'BN',\n917576=>'BN',\n917577=>'BN',\n917578=>'BN',\n917579=>'BN',\n917580=>'BN',\n917581=>'BN',\n917582=>'BN',\n917583=>'BN',\n917584=>'BN',\n917585=>'BN',\n917586=>'BN',\n917587=>'BN',\n917588=>'BN',\n917589=>'BN',\n917590=>'BN',\n917591=>'BN',\n917592=>'BN',\n917593=>'BN',\n917594=>'BN',\n917595=>'BN',\n917596=>'BN',\n917597=>'BN',\n917598=>'BN',\n917599=>'BN',\n917600=>'BN',\n917601=>'BN',\n917602=>'BN',\n917603=>'BN',\n917604=>'BN',\n917605=>'BN',\n917606=>'BN',\n917607=>'BN',\n917608=>'BN',\n917609=>'BN',\n917610=>'BN',\n917611=>'BN',\n917612=>'BN',\n917613=>'BN',\n917614=>'BN',\n917615=>'BN',\n917616=>'BN',\n917617=>'BN',\n917618=>'BN',\n917619=>'BN',\n917620=>'BN',\n917621=>'BN',\n917622=>'BN',\n917623=>'BN',\n917624=>'BN',\n917625=>'BN',\n917626=>'BN',\n917627=>'BN',\n917628=>'BN',\n917629=>'BN',\n917630=>'BN',\n917631=>'BN',\n917760=>'NSM',\n917761=>'NSM',\n917762=>'NSM',\n917763=>'NSM',\n917764=>'NSM',\n917765=>'NSM',\n917766=>'NSM',\n917767=>'NSM',\n917768=>'NSM',\n917769=>'NSM',\n917770=>'NSM',\n917771=>'NSM',\n917772=>'NSM',\n917773=>'NSM',\n917774=>'NSM',\n917775=>'NSM',\n917776=>'NSM',\n917777=>'NSM',\n917778=>'NSM',\n917779=>'NSM',\n917780=>'NSM',\n917781=>'NSM',\n917782=>'NSM',\n917783=>'NSM',\n917784=>'NSM',\n917785=>'NSM',\n917786=>'NSM',\n917787=>'NSM',\n917788=>'NSM',\n917789=>'NSM',\n917790=>'NSM',\n917791=>'NSM',\n917792=>'NSM',\n917793=>'NSM',\n917794=>'NSM',\n917795=>'NSM',\n917796=>'NSM',\n917797=>'NSM',\n917798=>'NSM',\n917799=>'NSM',\n917800=>'NSM',\n917801=>'NSM',\n917802=>'NSM',\n917803=>'NSM',\n917804=>'NSM',\n917805=>'NSM',\n917806=>'NSM',\n917807=>'NSM',\n917808=>'NSM',\n917809=>'NSM',\n917810=>'NSM',\n917811=>'NSM',\n917812=>'NSM',\n917813=>'NSM',\n917814=>'NSM',\n917815=>'NSM',\n917816=>'NSM',\n917817=>'NSM',\n917818=>'NSM',\n917819=>'NSM',\n917820=>'NSM',\n917821=>'NSM',\n917822=>'NSM',\n917823=>'NSM',\n917824=>'NSM',\n917825=>'NSM',\n917826=>'NSM',\n917827=>'NSM',\n917828=>'NSM',\n917829=>'NSM',\n917830=>'NSM',\n917831=>'NSM',\n917832=>'NSM',\n917833=>'NSM',\n917834=>'NSM',\n917835=>'NSM',\n917836=>'NSM',\n917837=>'NSM',\n917838=>'NSM',\n917839=>'NSM',\n917840=>'NSM',\n917841=>'NSM',\n917842=>'NSM',\n917843=>'NSM',\n917844=>'NSM',\n917845=>'NSM',\n917846=>'NSM',\n917847=>'NSM',\n917848=>'NSM',\n917849=>'NSM',\n917850=>'NSM',\n917851=>'NSM',\n917852=>'NSM',\n917853=>'NSM',\n917854=>'NSM',\n917855=>'NSM',\n917856=>'NSM',\n917857=>'NSM',\n917858=>'NSM',\n917859=>'NSM',\n917860=>'NSM',\n917861=>'NSM',\n917862=>'NSM',\n917863=>'NSM',\n917864=>'NSM',\n917865=>'NSM',\n917866=>'NSM',\n917867=>'NSM',\n917868=>'NSM',\n917869=>'NSM',\n917870=>'NSM',\n917871=>'NSM',\n917872=>'NSM',\n917873=>'NSM',\n917874=>'NSM',\n917875=>'NSM',\n917876=>'NSM',\n917877=>'NSM',\n917878=>'NSM',\n917879=>'NSM',\n917880=>'NSM',\n917881=>'NSM',\n917882=>'NSM',\n917883=>'NSM',\n917884=>'NSM',\n917885=>'NSM',\n917886=>'NSM',\n917887=>'NSM',\n917888=>'NSM',\n917889=>'NSM',\n917890=>'NSM',\n917891=>'NSM',\n917892=>'NSM',\n917893=>'NSM',\n917894=>'NSM',\n917895=>'NSM',\n917896=>'NSM',\n917897=>'NSM',\n917898=>'NSM',\n917899=>'NSM',\n917900=>'NSM',\n917901=>'NSM',\n917902=>'NSM',\n917903=>'NSM',\n917904=>'NSM',\n917905=>'NSM',\n917906=>'NSM',\n917907=>'NSM',\n917908=>'NSM',\n917909=>'NSM',\n917910=>'NSM',\n917911=>'NSM',\n917912=>'NSM',\n917913=>'NSM',\n917914=>'NSM',\n917915=>'NSM',\n917916=>'NSM',\n917917=>'NSM',\n917918=>'NSM',\n917919=>'NSM',\n917920=>'NSM',\n917921=>'NSM',\n917922=>'NSM',\n917923=>'NSM',\n917924=>'NSM',\n917925=>'NSM',\n917926=>'NSM',\n917927=>'NSM',\n917928=>'NSM',\n917929=>'NSM',\n917930=>'NSM',\n917931=>'NSM',\n917932=>'NSM',\n917933=>'NSM',\n917934=>'NSM',\n917935=>'NSM',\n917936=>'NSM',\n917937=>'NSM',\n917938=>'NSM',\n917939=>'NSM',\n917940=>'NSM',\n917941=>'NSM',\n917942=>'NSM',\n917943=>'NSM',\n917944=>'NSM',\n917945=>'NSM',\n917946=>'NSM',\n917947=>'NSM',\n917948=>'NSM',\n917949=>'NSM',\n917950=>'NSM',\n917951=>'NSM',\n917952=>'NSM',\n917953=>'NSM',\n917954=>'NSM',\n917955=>'NSM',\n917956=>'NSM',\n917957=>'NSM',\n917958=>'NSM',\n917959=>'NSM',\n917960=>'NSM',\n917961=>'NSM',\n917962=>'NSM',\n917963=>'NSM',\n917964=>'NSM',\n917965=>'NSM',\n917966=>'NSM',\n917967=>'NSM',\n917968=>'NSM',\n917969=>'NSM',\n917970=>'NSM',\n917971=>'NSM',\n917972=>'NSM',\n917973=>'NSM',\n917974=>'NSM',\n917975=>'NSM',\n917976=>'NSM',\n917977=>'NSM',\n917978=>'NSM',\n917979=>'NSM',\n917980=>'NSM',\n917981=>'NSM',\n917982=>'NSM',\n917983=>'NSM',\n917984=>'NSM',\n917985=>'NSM',\n917986=>'NSM',\n917987=>'NSM',\n917988=>'NSM',\n917989=>'NSM',\n917990=>'NSM',\n917991=>'NSM',\n917992=>'NSM',\n917993=>'NSM',\n917994=>'NSM',\n917995=>'NSM',\n917996=>'NSM',\n917997=>'NSM',\n917998=>'NSM',\n917999=>'NSM',\n983040=>'L',\n1048573=>'L',\n1048576=>'L',\n1114109=>'L'\n);\n\n/**\n * Mirror unicode characters.\n * For information on bidi mirroring, see UAX #9: Bidirectional Algorithm, \n * at http://www.unicode.org/unicode/reports/tr9/\n */\nglobal $unicode_mirror;\n$unicode_mirror = array (\n0x0028=>0x0029,\n0x0029=>0x0028,\n0x003C=>0x003E,\n0x003E=>0x003C,\n0x005B=>0x005D,\n0x005D=>0x005B,\n0x007B=>0x007D,\n0x007D=>0x007B,\n0x00AB=>0x00BB,\n0x00BB=>0x00AB,\n0x0F3A=>0x0F3B,\n0x0F3B=>0x0F3A,\n0x0F3C=>0x0F3D,\n0x0F3D=>0x0F3C,\n0x169B=>0x169C,\n0x169C=>0x169B,\n0x2018=>0x2019,\n0x2019=>0x2018,\n0x201C=>0x201D,\n0x201D=>0x201C,\n0x2039=>0x203A,\n0x203A=>0x2039,\n0x2045=>0x2046,\n0x2046=>0x2045,\n0x207D=>0x207E,\n0x207E=>0x207D,\n0x208D=>0x208E,\n0x208E=>0x208D,\n0x2208=>0x220B,\n0x2209=>0x220C,\n0x220A=>0x220D,\n0x220B=>0x2208,\n0x220C=>0x2209,\n0x220D=>0x220A,\n0x2215=>0x29F5,\n0x223C=>0x223D,\n0x223D=>0x223C,\n0x2243=>0x22CD,\n0x2252=>0x2253,\n0x2253=>0x2252,\n0x2254=>0x2255,\n0x2255=>0x2254,\n0x2264=>0x2265,\n0x2265=>0x2264,\n0x2266=>0x2267,\n0x2267=>0x2266,\n0x2268=>0x2269,\n0x2269=>0x2268,\n0x226A=>0x226B,\n0x226B=>0x226A,\n0x226E=>0x226F,\n0x226F=>0x226E,\n0x2270=>0x2271,\n0x2271=>0x2270,\n0x2272=>0x2273,\n0x2273=>0x2272,\n0x2274=>0x2275,\n0x2275=>0x2274,\n0x2276=>0x2277,\n0x2277=>0x2276,\n0x2278=>0x2279,\n0x2279=>0x2278,\n0x227A=>0x227B,\n0x227B=>0x227A,\n0x227C=>0x227D,\n0x227D=>0x227C,\n0x227E=>0x227F,\n0x227F=>0x227E,\n0x2280=>0x2281,\n0x2281=>0x2280,\n0x2282=>0x2283,\n0x2283=>0x2282,\n0x2284=>0x2285,\n0x2285=>0x2284,\n0x2286=>0x2287,\n0x2287=>0x2286,\n0x2288=>0x2289,\n0x2289=>0x2288,\n0x228A=>0x228B,\n0x228B=>0x228A,\n0x228F=>0x2290,\n0x2290=>0x228F,\n0x2291=>0x2292,\n0x2292=>0x2291,\n0x2298=>0x29B8,\n0x22A2=>0x22A3,\n0x22A3=>0x22A2,\n0x22A6=>0x2ADE,\n0x22A8=>0x2AE4,\n0x22A9=>0x2AE3,\n0x22AB=>0x2AE5,\n0x22B0=>0x22B1,\n0x22B1=>0x22B0,\n0x22B2=>0x22B3,\n0x22B3=>0x22B2,\n0x22B4=>0x22B5,\n0x22B5=>0x22B4,\n0x22B6=>0x22B7,\n0x22B7=>0x22B6,\n0x22C9=>0x22CA,\n0x22CA=>0x22C9,\n0x22CB=>0x22CC,\n0x22CC=>0x22CB,\n0x22CD=>0x2243,\n0x22D0=>0x22D1,\n0x22D1=>0x22D0,\n0x22D6=>0x22D7,\n0x22D7=>0x22D6,\n0x22D8=>0x22D9,\n0x22D9=>0x22D8,\n0x22DA=>0x22DB,\n0x22DB=>0x22DA,\n0x22DC=>0x22DD,\n0x22DD=>0x22DC,\n0x22DE=>0x22DF,\n0x22DF=>0x22DE,\n0x22E0=>0x22E1,\n0x22E1=>0x22E0,\n0x22E2=>0x22E3,\n0x22E3=>0x22E2,\n0x22E4=>0x22E5,\n0x22E5=>0x22E4,\n0x22E6=>0x22E7,\n0x22E7=>0x22E6,\n0x22E8=>0x22E9,\n0x22E9=>0x22E8,\n0x22EA=>0x22EB,\n0x22EB=>0x22EA,\n0x22EC=>0x22ED,\n0x22ED=>0x22EC,\n0x22F0=>0x22F1,\n0x22F1=>0x22F0,\n0x22F2=>0x22FA,\n0x22F3=>0x22FB,\n0x22F4=>0x22FC,\n0x22F6=>0x22FD,\n0x22F7=>0x22FE,\n0x22FA=>0x22F2,\n0x22FB=>0x22F3,\n0x22FC=>0x22F4,\n0x22FD=>0x22F6,\n0x22FE=>0x22F7,\n0x2308=>0x2309,\n0x2309=>0x2308,\n0x230A=>0x230B,\n0x230B=>0x230A,\n0x2329=>0x232A,\n0x232A=>0x2329,\n0x2768=>0x2769,\n0x2769=>0x2768,\n0x276A=>0x276B,\n0x276B=>0x276A,\n0x276C=>0x276D,\n0x276D=>0x276C,\n0x276E=>0x276F,\n0x276F=>0x276E,\n0x2770=>0x2771,\n0x2771=>0x2770,\n0x2772=>0x2773,\n0x2773=>0x2772,\n0x2774=>0x2775,\n0x2775=>0x2774,\n0x27C3=>0x27C4,\n0x27C4=>0x27C3,\n0x27C5=>0x27C6,\n0x27C6=>0x27C5,\n0x27D5=>0x27D6,\n0x27D6=>0x27D5,\n0x27DD=>0x27DE,\n0x27DE=>0x27DD,\n0x27E2=>0x27E3,\n0x27E3=>0x27E2,\n0x27E4=>0x27E5,\n0x27E5=>0x27E4,\n0x27E6=>0x27E7,\n0x27E7=>0x27E6,\n0x27E8=>0x27E9,\n0x27E9=>0x27E8,\n0x27EA=>0x27EB,\n0x27EB=>0x27EA,\n0x2983=>0x2984,\n0x2984=>0x2983,\n0x2985=>0x2986,\n0x2986=>0x2985,\n0x2987=>0x2988,\n0x2988=>0x2987,\n0x2989=>0x298A,\n0x298A=>0x2989,\n0x298B=>0x298C,\n0x298C=>0x298B,\n0x298D=>0x2990,\n0x298E=>0x298F,\n0x298F=>0x298E,\n0x2990=>0x298D,\n0x2991=>0x2992,\n0x2992=>0x2991,\n0x2993=>0x2994,\n0x2994=>0x2993,\n0x2995=>0x2996,\n0x2996=>0x2995,\n0x2997=>0x2998,\n0x2998=>0x2997,\n0x29B8=>0x2298,\n0x29C0=>0x29C1,\n0x29C1=>0x29C0,\n0x29C4=>0x29C5,\n0x29C5=>0x29C4,\n0x29CF=>0x29D0,\n0x29D0=>0x29CF,\n0x29D1=>0x29D2,\n0x29D2=>0x29D1,\n0x29D4=>0x29D5,\n0x29D5=>0x29D4,\n0x29D8=>0x29D9,\n0x29D9=>0x29D8,\n0x29DA=>0x29DB,\n0x29DB=>0x29DA,\n0x29F5=>0x2215,\n0x29F8=>0x29F9,\n0x29F9=>0x29F8,\n0x29FC=>0x29FD,\n0x29FD=>0x29FC,\n0x2A2B=>0x2A2C,\n0x2A2C=>0x2A2B,\n0x2A2D=>0x2A2E,\n0x2A2E=>0x2A2D,\n0x2A34=>0x2A35,\n0x2A35=>0x2A34,\n0x2A3C=>0x2A3D,\n0x2A3D=>0x2A3C,\n0x2A64=>0x2A65,\n0x2A65=>0x2A64,\n0x2A79=>0x2A7A,\n0x2A7A=>0x2A79,\n0x2A7D=>0x2A7E,\n0x2A7E=>0x2A7D,\n0x2A7F=>0x2A80,\n0x2A80=>0x2A7F,\n0x2A81=>0x2A82,\n0x2A82=>0x2A81,\n0x2A83=>0x2A84,\n0x2A84=>0x2A83,\n0x2A8B=>0x2A8C,\n0x2A8C=>0x2A8B,\n0x2A91=>0x2A92,\n0x2A92=>0x2A91,\n0x2A93=>0x2A94,\n0x2A94=>0x2A93,\n0x2A95=>0x2A96,\n0x2A96=>0x2A95,\n0x2A97=>0x2A98,\n0x2A98=>0x2A97,\n0x2A99=>0x2A9A,\n0x2A9A=>0x2A99,\n0x2A9B=>0x2A9C,\n0x2A9C=>0x2A9B,\n0x2AA1=>0x2AA2,\n0x2AA2=>0x2AA1,\n0x2AA6=>0x2AA7,\n0x2AA7=>0x2AA6,\n0x2AA8=>0x2AA9,\n0x2AA9=>0x2AA8,\n0x2AAA=>0x2AAB,\n0x2AAB=>0x2AAA,\n0x2AAC=>0x2AAD,\n0x2AAD=>0x2AAC,\n0x2AAF=>0x2AB0,\n0x2AB0=>0x2AAF,\n0x2AB3=>0x2AB4,\n0x2AB4=>0x2AB3,\n0x2ABB=>0x2ABC,\n0x2ABC=>0x2ABB,\n0x2ABD=>0x2ABE,\n0x2ABE=>0x2ABD,\n0x2ABF=>0x2AC0,\n0x2AC0=>0x2ABF,\n0x2AC1=>0x2AC2,\n0x2AC2=>0x2AC1,\n0x2AC3=>0x2AC4,\n0x2AC4=>0x2AC3,\n0x2AC5=>0x2AC6,\n0x2AC6=>0x2AC5,\n0x2ACD=>0x2ACE,\n0x2ACE=>0x2ACD,\n0x2ACF=>0x2AD0,\n0x2AD0=>0x2ACF,\n0x2AD1=>0x2AD2,\n0x2AD2=>0x2AD1,\n0x2AD3=>0x2AD4,\n0x2AD4=>0x2AD3,\n0x2AD5=>0x2AD6,\n0x2AD6=>0x2AD5,\n0x2ADE=>0x22A6,\n0x2AE3=>0x22A9,\n0x2AE4=>0x22A8,\n0x2AE5=>0x22AB,\n0x2AEC=>0x2AED,\n0x2AED=>0x2AEC,\n0x2AF7=>0x2AF8,\n0x2AF8=>0x2AF7,\n0x2AF9=>0x2AFA,\n0x2AFA=>0x2AF9,\n0x2E02=>0x2E03,\n0x2E03=>0x2E02,\n0x2E04=>0x2E05,\n0x2E05=>0x2E04,\n0x2E09=>0x2E0A,\n0x2E0A=>0x2E09,\n0x2E0C=>0x2E0D,\n0x2E0D=>0x2E0C,\n0x2E1C=>0x2E1D,\n0x2E1D=>0x2E1C,\n0x3008=>0x3009,\n0x3009=>0x3008,\n0x300A=>0x300B,\n0x300B=>0x300A,\n0x300C=>0x300D,\n0x300D=>0x300C,\n0x300E=>0x300F,\n0x300F=>0x300E,\n0x3010=>0x3011,\n0x3011=>0x3010,\n0x3014=>0x3015,\n0x3015=>0x3014,\n0x3016=>0x3017,\n0x3017=>0x3016,\n0x3018=>0x3019,\n0x3019=>0x3018,\n0x301A=>0x301B,\n0x301B=>0x301A,\n0x301D=>0x301E,\n0x301E=>0x301D,\n0xFE59=>0xFE5A,\n0xFE5A=>0xFE59,\n0xFE5B=>0xFE5C,\n0xFE5C=>0xFE5B,\n0xFE5D=>0xFE5E,\n0xFE5E=>0xFE5D,\n0xFE64=>0xFE65,\n0xFE65=>0xFE64,\n0xFF08=>0xFF09,\n0xFF09=>0xFF08,\n0xFF1C=>0xFF1E,\n0xFF1E=>0xFF1C,\n0xFF3B=>0xFF3D,\n0xFF3D=>0xFF3B,\n0xFF5B=>0xFF5D,\n0xFF5D=>0xFF5B,\n0xFF5F=>0xFF60,\n0xFF60=>0xFF5F,\n0xFF62=>0xFF63,\n0xFF63=>0xFF62);\n\n/**\n * Arabic shape subtitutions\n * char code=>isolated, final, initial, medial\n */\nglobal $unicode_arlet;\n$unicode_arlet = array(\n1569=>array(65152),\n1570=>array(65153, 65154, 65153, 65154),\n1571=>array(65155, 65156, 65155, 65156),\n1572=>array(65157, 65158),\n1573=>array(65159, 65160, 65159, 65160),\n1574=>array(65161, 65162, 65163, 65164),\n1575=>array(65165, 65166, 65165, 65166),\n1576=>array(65167, 65168, 65169, 65170),\n1577=>array(65171, 65172),\n1578=>array(65173, 65174, 65175, 65176),\n1579=>array(65177, 65178, 65179, 65180),\n1580=>array(65181, 65182, 65183, 65184),\n1581=>array(65185, 65186, 65187, 65188),\n1582=>array(65189, 65190, 65191, 65192),\n1583=>array(65193, 65194, 65193, 65194),\n1584=>array(65195, 65196, 65195, 65196),\n1585=>array(65197, 65198, 65197, 65198),\n1586=>array(65199, 65200, 65199, 65200),\n1587=>array(65201, 65202, 65203, 65204),\n1588=>array(65205, 65206, 65207, 65208),\n1589=>array(65209, 65210, 65211, 65212),\n1590=>array(65213, 65214, 65215, 65216),\n1591=>array(65217, 65218, 65219, 65220),\n1592=>array(65221, 65222, 65223, 65224),\n1593=>array(65225, 65226, 65227, 65228),\n1594=>array(65229, 65230, 65231, 65232),\n1601=>array(65233, 65234, 65235, 65236),\n1602=>array(65237, 65238, 65239, 65240),\n1603=>array(65241, 65242, 65243, 65244),\n1604=>array(65245, 65246, 65247, 65248),\n1605=>array(65249, 65250, 65251, 65252),\n1606=>array(65253, 65254, 65255, 65256),\n1607=>array(65257, 65258, 65259, 65260),\n1608=>array(65261, 65262, 65261, 65262),\n1609=>array(65263, 65264, 64488, 64489),\n1610=>array(65265, 65266, 65267, 65268),\n1649=>array(64336, 64337),\n1655=>array(64477),\n1657=>array(64358, 64359, 64360, 64361),\n1658=>array(64350, 64351, 64352, 64353),\n1659=>array(64338, 64339, 64340, 64341),\n1662=>array(64342, 64343, 64344, 64345),\n1663=>array(64354, 64355, 64356, 64357),\n1664=>array(64346, 64347, 64348, 64349),\n1667=>array(64374, 64375, 64376, 64377),\n1668=>array(64370, 64371, 64372, 64373),\n1670=>array(64378, 64379, 64380, 64381),\n1671=>array(64382, 64383, 64384, 64385),\n1672=>array(64392, 64393),\n1676=>array(64388, 64389),\n1677=>array(64386, 64387),\n1678=>array(64390, 64391),\n1681=>array(64396, 64397),\n1688=>array(64394, 64395, 64394, 64395),\n1700=>array(64362, 64363, 64364, 64365),\n1702=>array(64366, 64367, 64368, 64369),\n1705=>array(64398, 64399, 64400, 64401),\n1709=>array(64467, 64468, 64469, 64470),\n1711=>array(64402, 64403, 64404, 64405),\n1713=>array(64410, 64411, 64412, 64413),\n1715=>array(64406, 64407, 64408, 64409),\n1722=>array(64414, 64415),\n1723=>array(64416, 64417, 64418, 64419),\n1726=>array(64426, 64427, 64428, 64429),\n1728=>array(64420, 64421),\n1729=>array(64422, 64423, 64424, 64425),\n1733=>array(64480, 64481),\n1734=>array(64473, 64474),\n1735=>array(64471, 64472),\n1736=>array(64475, 64476),\n1737=>array(64482, 64483),\n1739=>array(64478, 64479),\n1740=>array(64508, 64509, 64510, 64511),\n1744=>array(64484, 64485, 64486, 64487),\n1746=>array(64430, 64431),\n1747=>array(64432, 64433)\n);\n\n/**\n * Arabic laa letter\n * char code=>isolated, final, initial, medial\n */\nglobal $laa_array;\n$laa_array = array (\n1570 =>array(65269, 65270, 65269, 65270),\n1571 =>array(65271, 65272, 65271, 65272),\n1573 =>array(65273, 65274, 65273, 65274),\n1575 =>array(65275, 65276, 65275, 65276)\n);\n\n/**\n * Array of character substitutions for sequences of two diacritics symbols starting with SHADDA (0651 HEX, 1617 DEC).\n * Combining characters that can occur with Shadda (U0651) are placed in UE586-UE594. \n * Putting the combining mark and shadda in the same glyph allows us to avoid the two marks overlapping each other in an illegible manner.\n * second NSM char code=>substitution char\n */\nglobal $diacritics;\n$diacritics = array (\n1612=>64606, # Shadda + Dammatan\n1613=>64607, # Shadda + Kasratan\n1614=>64608, # Shadda + Fatha\n1615=>64609, # Shadda + Damma\n1616=>64610  # Shadda + Kasra\n);\n\n/**\n * Array of character substitutions from UTF-8 unicode to latin1\n */\nglobal $utf8tolatin;\n$utf8tolatin = array (\n8364=>128, # Euro1\n338=>140,  # OE\n352=>138,  # Scaron\n376=>159,  # Ydieresis\n381=>142,  # Zcaron2\n8226=>149, # bullet3\n710=>136,  # circumflex\n8224=>134, # dagger\n8225=>135, # daggerdbl\n8230=>133, # ellipsis\n8212=>151, # emdash\n8211=>150, # endash\n402=>131,  # florin\n8249=>139, # guilsinglleft\n8250=>155, # guilsinglright\n339=>156,  # oe\n8240=>137, # perthousand\n8222=>132, # quotedblbase\n8220=>147, # quotedblleft\n8221=>148, # quotedblright\n8216=>145, # quoteleft\n8217=>146, # quoteright\n8218=>130, # quotesinglbase\n353=>154,  # scaron\n732=>152,  # tilde\n8482=>153, # trademark\n382=>158   # zcaron2\n);\n\n//============================================================+\n// END OF FILE\n//============================================================+\n?>\n"
  },
  {
    "path": "newscoop/include/html2pdf/html2pdf.class.php",
    "content": "<?php\n/**\n * HTML2PDF Librairy - main class\n *\n * HTML => PDF convertor\n * distributed under the LGPL License\n *\n * @author  Laurent MINGUET <webmaster@html2pdf.fr>\n * @version 4.03\n */\n\nif (!defined('__CLASS_HTML2PDF__')) {\n\n    define('__CLASS_HTML2PDF__', '4.03');\n    define('HTML2PDF_USED_TCPDF_VERSION', '5.0.002');\n\n    require_once(dirname(__FILE__).'/_class/exception.class.php');\n    require_once(dirname(__FILE__).'/_class/locale.class.php');\n    require_once(dirname(__FILE__).'/_class/myPdf.class.php');\n    require_once(dirname(__FILE__).'/_class/parsingHtml.class.php');\n    require_once(dirname(__FILE__).'/_class/parsingCss.class.php');\n\n    class HTML2PDF\n    {\n        /**\n         * HTML2PDF_myPdf object, extends from TCPDF\n         * @var HTML2PDF_myPdf\n         */\n        public $pdf = null;\n\n        /**\n         * CSS parsing\n         * @var HTML2PDF_parsingCss\n         */\n        public $parsingCss = null;\n\n        /**\n         * HTML parsing\n         * @var HTML2PDF_parsingHtml\n         */\n        public $parsingHtml = null;\n\n        protected $_langue           = 'fr';        // locale of the messages\n        protected $_orientation      = 'P';         // page orientation : Portrait ou Landscape\n        protected $_format           = 'A4';        // page format : A4, A3, ...\n        protected $_encoding         = '';          // charset encoding\n        protected $_unicode          = true;        // means that the input text is unicode (default = true)\n\n        protected $_testTdInOnepage  = true;        // test of TD that can not take more than one page\n        protected $_testIsImage      = true;        // test if the images exist or not\n        protected $_testIsDeprecated = false;       // test the deprecated functions\n\n        protected $_parsePos         = 0;           // position in the parsing\n        protected $_tempPos          = 0;           // temporary position for complex table\n        protected $_page             = 0;           // current page number\n\n        protected $_subHtml          = null;        // sub html\n        protected $_subPart          = false;       // sub HTML2PDF\n        protected $_subHEADER        = array();     // sub action to make the header\n        protected $_subFOOTER        = array();     // sub action to make the footer\n        protected $_subSTATES        = array();     // array to save some parameters\n\n        protected $_isSubPart        = false;       // flag : in a sub html2pdf\n        protected $_isInThead        = false;       // flag : in a thead\n        protected $_isInTfoot        = false;       // flag : in a tfoot\n        protected $_isInOverflow     = false;       // flag : in a overflow\n        protected $_isInFooter       = false;       // flag : in a footer\n        protected $_isInDraw         = null;        // flag : in a draw (svg)\n        protected $_isAfterFloat     = false;       // flag : is just after a float\n        protected $_isInForm         = false;       // flag : is in a float. false / action of the form\n        protected $_isInLink         = '';          // flag : is in a link. empty / href of the link\n        protected $_isInParagraph    = false;       // flag : is in a paragraph\n        protected $_isForOneLine     = false;       // flag : in a specific sub html2pdf to have the height of the next line\n\n        protected $_maxX             = 0;           // maximum X of the current zone\n        protected $_maxY             = 0;           // maximum Y of the current zone\n        protected $_maxE             = 0;           // number of elements in the current zone\n        protected $_maxH             = 0;           // maximum height of the line in the current zone\n        protected $_maxSave          = array();     // save the maximums of the current zone\n        protected $_currentH         = 0;           // height of the current line\n\n        protected $_defaultLeft      = 0;           // default marges of the page\n        protected $_defaultTop       = 0;\n        protected $_defaultRight     = 0;\n        protected $_defaultBottom    = 0;\n        protected $_defaultFont      = null;        // default font to use, is the asked font does not exist\n\n        protected $_margeLeft        = 0;           // current marges of the page\n        protected $_margeTop         = 0;\n        protected $_margeRight       = 0;\n        protected $_margeBottom      = 0;\n        protected $_marges           = array();     // save the different marges of the current page\n        protected $_pageMarges       = array();     // float marges of the current page\n        protected $_background       = array();     // background informations\n\n\n        protected $_firstPage        = true;        // flag : first page\n        protected $_defList          = array();     // table to save the stats of the tags UL and OL\n\n        protected $_lstAnchor        = array();     // list of the anchors\n        protected $_lstField         = array();     // list of the fields\n        protected $_lstSelect        = array();     // list of the options of the current select\n        protected $_previousCall     = null;        // last action called\n\n        protected $_debugActif       = false;       // flag : mode debug is active\n        protected $_debugOkUsage     = false;       // flag : the function memory_get_usage exist\n        protected $_debugOkPeak      = false;       // flag : the function memory_get_peak_usage exist\n        protected $_debugLevel       = 0;           // level in the debug\n        protected $_debugStartTime   = 0;           // debug start time\n        protected $_debugLastTime    = 0;           // debug stop time\n\n        static protected $_subobj    = null;        // object html2pdf prepared in order to accelerate the creation of sub html2pdf\n        static protected $_tables    = array();     // static table to prepare the nested html tables\n\n        /**\n         * class constructor\n         *\n         * @access public\n         * @param  string   $orientation page orientation, same as TCPDF\n         * @param  mixed    $format      The format used for pages, same as TCPDF\n         * @param  $tring   $langue      Langue : fr, en, it...\n         * @param  boolean  $unicode     TRUE means that the input text is unicode (default = true)\n         * @param  String   $encoding    charset encoding; default is UTF-8\n         * @param  array    $marges      Default marges (left, top, right, bottom)\n         * @return HTML2PDF $this\n         */\n        public function __construct($orientation = 'P', $format = 'A4', $langue='fr', $unicode=true, $encoding='UTF-8', $marges = array(5, 5, 5, 8))\n        {\n            // init the page number\n            $this->_page         = 0;\n            $this->_firstPage    = true;\n\n            // save the parameters\n            $this->_orientation  = $orientation;\n            $this->_format       = $format;\n            $this->_langue       = strtolower($langue);\n            $this->_unicode      = $unicode;\n            $this->_encoding     = $encoding;\n\n            // load the Local\n            HTML2PDF_locale::load($this->_langue);\n\n            // create the  HTML2PDF_myPdf object\n            $this->pdf = new HTML2PDF_myPdf($orientation, 'mm', $format, $unicode, $encoding);\n\n            // init the CSS parsing object\n            $this->parsingCss = new HTML2PDF_parsingCss($this->pdf);\n            $this->parsingCss->fontSet();\n            $this->_defList = array();\n\n            // init some tests\n            $this->setTestTdInOnePage(true);\n            $this->setTestIsImage(true);\n            $this->setTestIsDeprecated(true);\n\n            // init the default font\n            $this->setDefaultFont(null);\n\n            // init the HTML parsing object\n            $this->parsingHtml = new HTML2PDF_parsingHtml($this->_encoding);\n            $this->_subHtml = null;\n            $this->_subPart = false;\n\n            // init the marges of the page\n            if (!is_array($marges)) $marges = array($marges, $marges, $marges, $marges);\n            $this->_setDefaultMargins($marges[0], $marges[1], $marges[2], $marges[3]);\n            $this->_setMargins();\n            $this->_marges = array();\n\n            // init the form's fields\n            $this->_lstField = array();\n\n            return $this;\n        }\n\n        /**\n         * Destructor\n         *\n         * @access public\n         * @return null\n         */\n        public function __destruct()\n        {\n\n        }\n\n        /**\n         * Clone to create a sub HTML2PDF from HTML2PDF::$_subobj\n         *\n         * @access public\n         */\n        public function __clone()\n        {\n            $this->pdf = clone $this->pdf;\n            $this->parsingHtml = clone $this->parsingHtml;\n            $this->parsingCss = clone $this->parsingCss;\n            $this->parsingCss->setPdfParent($this->pdf);\n        }\n\n        /**\n         * set the debug mode to On\n         *\n         * @access public\n         * @return HTML2PDF $this\n         */\n        public function setModeDebug()\n        {\n            $time = microtime(true);\n\n            $this->_debugActif     = true;\n            $this->_debugOkUsage   = function_exists('memory_get_usage');\n            $this->_debugOkPeak    = function_exists('memory_get_peak_usage');\n            $this->_debugStartTime = $time;\n            $this->_debugLastTime  = $time;\n\n            $this->_DEBUG_stepline('step', 'time', 'delta', 'memory', 'peak');\n            $this->_DEBUG_add('Init debug');\n\n            return $this;\n        }\n\n        /**\n         * Set the test of TD thdat can not take more than one page\n         *\n         * @access public\n         * @param  boolean  $mode\n         * @return HTML2PDF $this\n         */\n        public function setTestTdInOnePage($mode = true)\n        {\n            $this->_testTdInOnepage = $mode ? true : false;\n\n            return $this;\n        }\n\n        /**\n         * Set the test if the images exist or not\n         *\n         * @access public\n         * @param  boolean  $mode\n         * @return HTML2PDF $this\n         */\n        public function setTestIsImage($mode = true)\n        {\n            $this->_testIsImage = $mode ? true : false;\n\n            return $this;\n        }\n\n        /**\n         * Set the test on deprecated functions\n         *\n         * @access public\n         * @param  boolean  $mode\n         * @return HTML2PDF $this\n         */\n        public function setTestIsDeprecated($mode = true)\n        {\n            $this->_testIsDeprecated = $mode ? true : false;\n\n            return $this;\n        }\n\n        /**\n         * Set the default font to use, if no font is specify, or if the asked font does not exist\n         *\n         * @access public\n         * @param  string   $default name of the default font to use. If null : Arial is no font is specify, and error if the asked font does not exist\n         * @return HTML2PDF $this\n         */\n        public function setDefaultFont($default = null)\n        {\n            $this->_defaultFont = $default;\n            $this->parsingCss->setDefaultFont($default);\n\n            return $this;\n        }\n\n        /**\n         * add a font, see TCPDF function addFont\n         *\n         * @access public\n         * @param string $family Font family. The name can be chosen arbitrarily. If it is a standard family name, it will override the corresponding font.\n         * @param string $style Font style. Possible values are (case insensitive):<ul><li>empty string: regular (default)</li><li>B: bold</li><li>I: italic</li><li>BI or IB: bold italic</li></ul>\n         * @param string $fontfile The font definition file. By default, the name is built from the family and style, in lower case with no spaces.\n         * @return HTML2PDF $this\n         * @see TCPDF::addFont\n         */\n        public function addFont($family, $style='', $file='')\n        {\n            $this->pdf->AddFont($family, $style, $file);\n\n            return $this;\n        }\n\n        /**\n         * display a automatic index, from the bookmarks\n         *\n         * @access public\n         * @param  string  $titre         index title\n         * @param  int     $sizeTitle     font size of the index title, in mm\n         * @param  int     $sizeBookmark  font size of the index, in mm\n         * @param  boolean $bookmarkTitle add a bookmark for the index, at his beginning\n         * @param  boolean $displayPage   display the page numbers\n         * @param  int     $onPage        if null : at the end of the document on a new page, else on the $onPage page\n         * @param  string  $fontName      font name to use\n         * @return null\n         */\n        public function createIndex($titre = 'Index', $sizeTitle = 20, $sizeBookmark = 15, $bookmarkTitle = true, $displayPage = true, $onPage = null, $fontName = 'helvetica')\n        {\n            $oldPage = $this->_INDEX_NewPage($onPage);\n            $this->pdf->createIndex($this, $titre, $sizeTitle, $sizeBookmark, $bookmarkTitle, $displayPage, $onPage, $fontName);\n            if ($oldPage) $this->pdf->setPage($oldPage);\n        }\n\n        /**\n         * clean up the objects\n         *\n         * @access protected\n         */\n        protected function _cleanUp()\n        {\n            HTML2PDF::$_subobj = null;\n            HTML2PDF::$_tables = array();\n        }\n\n        /**\n         * Send the document to a given destination: string, local file or browser.\n         * Dest can be :\n         *  I : send the file inline to the browser (default). The plug-in is used if available. The name given by name is used when one selects the \"Save as\" option on the link generating the PDF.\n         *  D : send to the browser and force a file download with the name given by name.\n         *  F : save to a local server file with the name given by name.\n         *  S : return the document as a string. name is ignored.\n         *  FI: equivalent to F + I option\n         *  FD: equivalent to F + D option\n         *  true  => I\n         *  false => S\n         *\n         * @param  string $name The name of the file when saved.\n         * @param  string $dest Destination where to send the document.\n         * @return string content of the PDF, if $dest=S\n         * @see TCPDF::close\n         * @access public\n\n         */\n        public function Output($name = '', $dest = false)\n        {\n            // close the pdf and clean up\n            $this->_cleanUp();\n\n            // if on debug mode\n            if ($this->_debugActif) {\n                $this->_DEBUG_add('Before output');\n                $this->pdf->Close();\n                exit;\n            }\n\n            // complete parameters\n            if ($dest===false) $dest = 'I';\n            if ($dest===true)  $dest = 'S';\n            if ($dest==='')    $dest = 'I';\n            if ($name=='')     $name='document.pdf';\n\n            // clean up the destination\n            $dest = strtoupper($dest);\n            if (!in_array($dest, array('I', 'D', 'F', 'S', 'FI','FD'))) $dest = 'I';\n\n            // the name must be a PDF name\n            if (strtolower(substr($name, -4))!='.pdf') {\n                throw new HTML2PDF_exception(0, 'The output document name \"'.$name.'\" is not a PDF name');\n            }\n\n            // call the output of TCPDF\n            return $this->pdf->Output($name, $dest);\n        }\n\n        /**\n         * convert HTML to PDF\n         *\n         * @access public\n         * @param  string   $html\n         * @param  boolean  $debugVue  enable the HTML debug vue\n         * @return null\n         */\n        public function writeHTML($html, $debugVue = false)\n        {\n            // if it is a real html page, we have to convert it\n            if (preg_match('/<body/isU', $html))\n                $html = $this->getHtmlFromPage($html);\n\n            $html = str_replace('[[date_y]]', date('Y'), $html);\n            $html = str_replace('[[date_m]]', date('m'), $html);\n            $html = str_replace('[[date_d]]', date('d'), $html);\n\n            $html = str_replace('[[date_h]]', date('H'), $html);\n            $html = str_replace('[[date_i]]', date('i'), $html);\n            $html = str_replace('[[date_s]]', date('s'), $html);\n\n            // If we are in HTML debug vue : display the HTML\n            if ($debugVue) {\n                return $this->_vueHTML($html);\n            }\n\n            // convert HTMl to PDF\n            $this->parsingCss->readStyle($html);\n            $this->parsingHtml->setHTML($html);\n            $this->parsingHtml->parse();\n            $this->_makeHTMLcode();\n        }\n\n        /**\n         * convert the HTML of a real page, to a code adapted to HTML2PDF\n         *\n         * @access public\n         * @param  string HTML of a real page\n         * @return string HTML adapted to HTML2PDF\n         */\n        public function getHtmlFromPage($html)\n        {\n            $html = str_replace('<BODY', '<body', $html);\n            $html = str_replace('</BODY', '</body', $html);\n\n            // extract the content\n            $res = explode('<body', $html);\n            if (count($res)<2) return $html;\n            $content = '<page'.$res[1];\n            $content = explode('</body', $content);\n            $content = $content[0].'</page>';\n\n            // extract the link tags\n            preg_match_all('/<link([^>]*)>/isU', $html, $match);\n            foreach ($match[0] as $src)\n                $content = $src.'</link>'.$content;\n\n            // extract the css style tags\n            preg_match_all('/<style[^>]*>(.*)<\\/style[^>]*>/isU', $html, $match);\n            foreach ($match[0] as $src)\n                $content = $src.$content;\n\n            return $content;\n        }\n\n        /**\n         * init a sub HTML2PDF. does not use it directly. Only the method createSubHTML must use it\n         *\n         * @access public\n         * @param  string  $format\n         * @param  string  $orientation\n         * @param  array   $marge\n         * @param  integer $page\n         * @param  array   $defLIST\n         * @param  integer $myLastPageGroup\n         * @param  integer $myLastPageGroupNb\n         */\n        public function initSubHtml($format, $orientation, $marge, $page, $defLIST, $myLastPageGroup, $myLastPageGroupNb)\n        {\n            $this->_isSubPart = true;\n\n            $this->parsingCss->setOnlyLeft();\n\n            $this->_setNewPage($format, $orientation, null, null, ($myLastPageGroup!==null));\n\n            $this->_saveMargin(0, 0, $marge);\n            $this->_defList = $defLIST;\n\n            $this->_page = $page;\n            $this->pdf->setMyLastPageGroup($myLastPageGroup);\n            $this->pdf->setMyLastPageGroupNb($myLastPageGroupNb);\n            $this->pdf->setXY(0, 0);\n            $this->parsingCss->fontSet();\n        }\n\n        /**\n         * display the content in HTML moden for debug\n         *\n         * @access protected\n         * @param  string $contenu\n         */\n        protected function _vueHTML($content)\n        {\n            $content = preg_replace('/<page_header([^>]*)>/isU', '<hr>'.HTML2PDF_locale::get('vue01').' : $1<hr><div$1>', $content);\n            $content = preg_replace('/<page_footer([^>]*)>/isU', '<hr>'.HTML2PDF_locale::get('vue02').' : $1<hr><div$1>', $content);\n            $content = preg_replace('/<page([^>]*)>/isU', '<hr>'.HTML2PDF_locale::get('vue03').' : $1<hr><div$1>', $content);\n            $content = preg_replace('/<\\/page([^>]*)>/isU', '</div><hr>', $content);\n            $content = preg_replace('/<bookmark([^>]*)>/isU', '<hr>bookmark : $1<hr>', $content);\n            $content = preg_replace('/<\\/bookmark([^>]*)>/isU', '', $content);\n            $content = preg_replace('/<barcode([^>]*)>/isU', '<hr>barcode : $1<hr>', $content);\n            $content = preg_replace('/<\\/barcode([^>]*)>/isU', '', $content);\n            $content = preg_replace('/<qrcode([^>]*)>/isU', '<hr>qrcode : $1<hr>', $content);\n            $content = preg_replace('/<\\/qrcode([^>]*)>/isU', '', $content);\n\n            echo '<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\n<html>\n    <head>\n        <title>'.HTML2PDF_locale::get('vue04').' HTML</title>\n        <meta http-equiv=\"Content-Type\" content=\"text/html; charset='.$this->_encoding.'\" >\n    </head>\n    <body style=\"padding: 10px; font-size: 10pt;font-family:    Verdana;\">\n'.$content.'\n    </body>\n</html>';\n            exit;\n        }\n\n        /**\n         * set the default margins of the page\n         *\n         * @access protected\n         * @param  int $left   (mm, left margin)\n         * @param  int $top    (mm, top margin)\n         * @param  int $right  (mm, right margin, if null => left=right)\n         * @param  int $bottom (mm, bottom margin, if null => bottom=8mm)\n         */\n        protected function _setDefaultMargins($left, $top, $right = null, $bottom = null)\n        {\n            if ($right===null)  $right = $left;\n            if ($bottom===null) $bottom = 8;\n\n            $this->_defaultLeft   = $this->parsingCss->ConvertToMM($left.'mm');\n            $this->_defaultTop    = $this->parsingCss->ConvertToMM($top.'mm');\n            $this->_defaultRight  = $this->parsingCss->ConvertToMM($right.'mm');\n            $this->_defaultBottom = $this->parsingCss->ConvertToMM($bottom.'mm');\n        }\n\n        /**\n         * create a new page\n         *\n         * @access protected\n         * @param  mixed   $format\n         * @param  string  $orientation\n         * @param  array   $background background information\n         * @param  integer $curr real position in the html parseur (if break line in the write of a text)\n         * @param  boolean $resetPageNumber\n         */\n        protected function _setNewPage($format = null, $orientation = '', $background = null, $curr = null, $resetPageNumber=false)\n        {\n            $this->_firstPage = false;\n\n            $this->_format = $format ? $format : $this->_format;\n            $this->_orientation = $orientation ? $orientation : $this->_orientation;\n            $this->_background = $background!==null ? $background : $this->_background;\n            $this->_maxY = 0;\n            $this->_maxX = 0;\n            $this->_maxH = 0;\n            $this->_maxE = 0;\n\n            $this->pdf->SetMargins($this->_defaultLeft, $this->_defaultTop, $this->_defaultRight);\n\n            if ($resetPageNumber) {\n                $this->pdf->startPageGroup();\n            }\n\n            $this->pdf->AddPage($this->_orientation, $this->_format);\n\n            if ($resetPageNumber) {\n                $this->pdf->myStartPageGroup();\n            }\n\n            $this->_page++;\n\n            if (!$this->_subPart && !$this->_isSubPart) {\n                if (is_array($this->_background)) {\n                    if (isset($this->_background['color']) && $this->_background['color']) {\n                        $this->pdf->setFillColorArray($this->_background['color']);\n                        $this->pdf->Rect(0, 0, $this->pdf->getW(), $this->pdf->getH(), 'F');\n                    }\n\n                    if (isset($this->_background['img']) && $this->_background['img'])\n                        $this->pdf->Image($this->_background['img'], $this->_background['posX'], $this->_background['posY'], $this->_background['width']);\n                }\n\n                $this->_setPageHeader();\n                $this->_setPageFooter();\n            }\n\n            $this->_setMargins();\n            $this->pdf->setY($this->_margeTop);\n\n            $this->_setNewPositionForNewLine($curr);\n            $this->_maxH = 0;\n        }\n\n        /**\n         * set the real margin, using the default margins and the page margins\n         *\n         * @access protected\n         */\n        protected function _setMargins()\n        {\n            // prepare the margins\n            $this->_margeLeft   = $this->_defaultLeft   + (isset($this->_background['left'])   ? $this->_background['left']   : 0);\n            $this->_margeRight  = $this->_defaultRight  + (isset($this->_background['right'])  ? $this->_background['right']  : 0);\n            $this->_margeTop    = $this->_defaultTop    + (isset($this->_background['top'])    ? $this->_background['top']    : 0);\n            $this->_margeBottom = $this->_defaultBottom + (isset($this->_background['bottom']) ? $this->_background['bottom'] : 0);\n\n            // set the PDF margins\n            $this->pdf->SetMargins($this->_margeLeft, $this->_margeTop, $this->_margeRight);\n            $this->pdf->SetAutoPageBreak(false, $this->_margeBottom);\n\n            // set the float Margins\n            $this->_pageMarges = array();\n            if ($this->_isInParagraph!==false) {\n                $this->_pageMarges[floor($this->_margeTop*100)] = array($this->_isInParagraph[0], $this->pdf->getW()-$this->_isInParagraph[1]);\n            } else {\n                $this->_pageMarges[floor($this->_margeTop*100)] = array($this->_margeLeft, $this->pdf->getW()-$this->_margeRight);\n            }\n        }\n\n        /**\n         * add a debug step\n         *\n         * @access protected\n         * @param  string  $name step name\n         * @param  boolean $level (true=up, false=down, null=nothing to do)\n         * @return $this\n         */\n        protected function _DEBUG_add($name, $level=null)\n        {\n            // if true : UP\n            if ($level===true) $this->_debugLevel++;\n\n            $name   = str_repeat('  ', $this->_debugLevel). $name.($level===true ? ' Begin' : ($level===false ? ' End' : ''));\n            $time  = microtime(true);\n            $usage = ($this->_debugOkUsage ? memory_get_usage() : 0);\n            $peak  = ($this->_debugOkPeak ? memory_get_peak_usage() : 0);\n\n            $this->_DEBUG_stepline(\n                $name,\n                number_format(($time - $this->_debugStartTime)*1000, 1, '.', ' ').' ms',\n                number_format(($time - $this->_debugLastTime)*1000, 1, '.', ' ').' ms',\n                number_format($usage/1024, 1, '.', ' ').' Ko',\n                number_format($peak/1024, 1, '.', ' ').' Ko'\n            );\n\n            $this->_debugLastTime = $time;\n\n            // it false : DOWN\n            if ($level===false) $this->_debugLevel--;\n\n            return $this;\n        }\n\n        /**\n         * display a debug line\n         *\n         *\n         * @access protected\n         * @param  string $name\n         * @param  string $timeTotal\n         * @param  string $timeStep\n         * @param  string $memoryUsage\n         * @param  string $memoryPeak\n         */\n        protected function _DEBUG_stepline($name, $timeTotal, $timeStep, $memoryUsage, $memoryPeak)\n        {\n            $txt = str_pad($name, 30, ' ', STR_PAD_RIGHT).\n                    str_pad($timeTotal, 12, ' ', STR_PAD_LEFT).\n                    str_pad($timeStep, 12, ' ', STR_PAD_LEFT).\n                    str_pad($memoryUsage, 15, ' ', STR_PAD_LEFT).\n                    str_pad($memoryPeak, 15, ' ', STR_PAD_LEFT);\n\n            echo '<pre style=\"padding:0; margin:0\">'.$txt.'</pre>';\n        }\n\n        /**\n         * get the Min and Max X, for Y (use the float margins)\n         *\n         * @access protected\n         * @param  float $y\n         * @return array(float, float)\n         */\n        protected function _getMargins($y)\n        {\n            $y = floor($y*100);\n            $x = array($this->pdf->getlMargin(), $this->pdf->getW()-$this->pdf->getrMargin());\n\n            foreach ($this->_pageMarges as $mY => $mX)\n                if ($mY<=$y) $x = $mX;\n\n            return $x;\n        }\n\n        /**\n         * Add margins, for a float\n         *\n         * @access protected\n         * @param  string $float (left / right)\n         * @param  float  $xLeft\n         * @param  float  $yTop\n         * @param  float  $xRight\n         * @param  float  $yBottom\n         */\n        protected function _addMargins($float, $xLeft, $yTop, $xRight, $yBottom)\n        {\n            // get the current float margins, for top and bottom\n            $oldTop    = $this->_getMargins($yTop);\n            $oldBottom = $this->_getMargins($yBottom);\n\n            // update the top float margin\n            if ($float=='left'  && $oldTop[0]<$xRight) $oldTop[0] = $xRight;\n            if ($float=='right' && $oldTop[1]>$xLeft)  $oldTop[1] = $xLeft;\n\n            $yTop = floor($yTop*100);\n            $yBottom = floor($yBottom*100);\n\n            // erase all the float margins that are smaller than the new one\n            foreach ($this->_pageMarges as $mY => $mX) {\n                if ($mY<$yTop) continue;\n                if ($mY>$yBottom) break;\n                if ($float=='left' && $this->_pageMarges[$mY][0]<$xRight)  unset($this->_pageMarges[$mY]);\n                if ($float=='right' && $this->_pageMarges[$mY][1]>$xLeft) unset($this->_pageMarges[$mY]);\n            }\n\n            // save the new Top and Bottom margins\n            $this->_pageMarges[$yTop] = $oldTop;\n            $this->_pageMarges[$yBottom] = $oldBottom;\n\n            // sort the margins\n            ksort($this->_pageMarges);\n\n            // we are just after float\n            $this->_isAfterFloat = true;\n        }\n\n        /**\n         * Save old margins (push), and set new ones\n         *\n         * @access protected\n         * @param  float  $ml left margin\n         * @param  float  $mt top margin\n         * @param  float  $mr right margin\n         */\n        protected function _saveMargin($ml, $mt, $mr)\n        {\n            // save old margins\n            $this->_marges[] = array('l' => $this->pdf->getlMargin(), 't' => $this->pdf->gettMargin(), 'r' => $this->pdf->getrMargin(), 'page' => $this->_pageMarges);\n\n            // set new ones\n            $this->pdf->SetMargins($ml, $mt, $mr);\n\n            // prepare for float margins\n            $this->_pageMarges = array();\n            $this->_pageMarges[floor($mt*100)] = array($ml, $this->pdf->getW()-$mr);\n        }\n\n        /**\n         * load the last saved margins (pop)\n         *\n         * @access protected\n         */\n        protected function _loadMargin()\n        {\n            $old = array_pop($this->_marges);\n            if ($old) {\n                $ml = $old['l'];\n                $mt = $old['t'];\n                $mr = $old['r'];\n                $mP = $old['page'];\n            } else {\n                $ml = $this->_margeLeft;\n                $mt = 0;\n                $mr = $this->_margeRight;\n                $mP = array($mt => array($ml, $this->pdf->getW()-$mr));\n            }\n\n            $this->pdf->SetMargins($ml, $mt, $mr);\n            $this->_pageMarges = $mP;\n        }\n\n        /**\n         * save the current maxs (push)\n         *\n         * @access protected\n         */\n        protected function _saveMax()\n        {\n            $this->_maxSave[] = array($this->_maxX, $this->_maxY, $this->_maxH, $this->_maxE);\n        }\n\n        /**\n         * load the last saved current maxs (pop)\n         *\n         * @access protected\n         */\n        protected function _loadMax()\n        {\n            $old = array_pop($this->_maxSave);\n\n            if ($old) {\n                $this->_maxX = $old[0];\n                $this->_maxY = $old[1];\n                $this->_maxH = $old[2];\n                $this->_maxE = $old[3];\n            } else {\n                $this->_maxX = 0;\n                $this->_maxY = 0;\n                $this->_maxH = 0;\n                $this->_maxE = 0;\n            }\n        }\n\n        /**\n         * draw the PDF header with the HTML in page_header\n         *\n         * @access protected\n         */\n        protected function _setPageHeader()\n        {\n            if (!count($this->_subHEADER)) return false;\n\n            $oldParsePos = $this->_parsePos;\n            $oldParseCode = $this->parsingHtml->code;\n\n            $this->_parsePos = 0;\n            $this->parsingHtml->code = $this->_subHEADER;\n            $this->_makeHTMLcode();\n\n            $this->_parsePos = $oldParsePos;\n            $this->parsingHtml->code = $oldParseCode;\n        }\n\n        /**\n         * draw the PDF footer with the HTML in page_footer\n         *\n         * @access protected\n         */\n        protected function _setPageFooter()\n        {\n            if (!count($this->_subFOOTER)) return false;\n\n            $oldParsePos = $this->_parsePos;\n            $oldParseCode = $this->parsingHtml->code;\n\n            $this->_parsePos = 0;\n            $this->parsingHtml->code = $this->_subFOOTER;\n            $this->_isInFooter = true;\n            $this->_makeHTMLcode();\n            $this->_isInFooter = false;\n\n            $this->_parsePos = $oldParsePos;\n            $this->parsingHtml->code = $oldParseCode;\n        }\n\n        /**\n         * new line, with a specific height\n         *\n         * @access protected\n         * @param float   $h\n         * @param integer $curr real current position in the text, if new line in the write of a text\n         */\n        protected function _setNewLine($h, $curr = null)\n        {\n            $this->pdf->Ln($h);\n            $this->_setNewPositionForNewLine($curr);\n        }\n\n        /**\n         * calculate the start position of the next line,  depending on the text-align\n         *\n         * @access protected\n         * @param  integer $curr real current position in the text, if new line in the write of a text\n         */\n        protected function _setNewPositionForNewLine($curr = null)\n        {\n            // get the margins for the current line\n            list($lx, $rx) = $this->_getMargins($this->pdf->getY());\n            $this->pdf->setX($lx);\n            $wMax = $rx-$lx;\n            $this->_currentH = 0;\n\n            // if subPart => return because align left\n            if ($this->_subPart || $this->_isSubPart || $this->_isForOneLine) {\n                $this->pdf->setWordSpacing(0);\n                return null;\n            }\n\n            // create the sub object\n            $sub = null;\n            $this->_createSubHTML($sub);\n            $sub->_saveMargin(0, 0, $sub->pdf->getW()-$wMax);\n            $sub->_isForOneLine = true;\n            $sub->_parsePos = $this->_parsePos;\n            $sub->parsingHtml->code = $this->parsingHtml->code;\n\n            // if $curr => adapt the current position of the parsing\n            if ($curr!==null && $sub->parsingHtml->code[$this->_parsePos]['name']=='write') {\n                $txt = $sub->parsingHtml->code[$this->_parsePos]['param']['txt'];\n                $txt = str_replace('[[page_cu]]', $sub->pdf->getMyNumPage($this->_page), $txt);\n                $sub->parsingHtml->code[$this->_parsePos]['param']['txt'] = substr($txt, $curr+1);\n            } else\n                $sub->_parsePos++;\n\n            // for each element of the parsing => load the action\n            $res = null;\n            for ($sub->_parsePos; $sub->_parsePos<count($sub->parsingHtml->code); $sub->_parsePos++) {\n                $action = $sub->parsingHtml->code[$sub->_parsePos];\n                $res = $sub->_executeAction($action);\n                if (!$res) break;\n            }\n\n            $w = $sub->_maxX; // max width\n            $h = $sub->_maxH; // max height\n            $e = ($res===null ? $sub->_maxE : 0); // maxnumber of elemets on the line\n\n            // destroy the sub HTML\n            $this->_destroySubHTML($sub);\n\n            // adapt the start of the line, depending on the text-align\n            if ($this->parsingCss->value['text-align']=='center')\n                $this->pdf->setX(($rx+$this->pdf->getX()-$w)*0.5-0.01);\n            else if ($this->parsingCss->value['text-align']=='right')\n                $this->pdf->setX($rx-$w-0.01);\n            else\n                $this->pdf->setX($lx);\n\n            // set the height of the line\n            $this->_currentH = $h;\n\n            // if justify => set the word spacing\n            if ($this->parsingCss->value['text-align']=='justify' && $e>1) {\n                $this->pdf->setWordSpacing(($wMax-$w)/($e-1));\n            } else {\n                $this->pdf->setWordSpacing(0);\n            }\n        }\n\n        /**\n         * prepare HTML2PDF::$_subobj (used for create the sub HTML2PDF objects\n         *\n         * @access protected\n         */\n        protected function _prepareSubObj()\n        {\n            $pdf = null;\n\n            // create the sub object\n            HTML2PDF::$_subobj = new HTML2PDF(\n                                        $this->_orientation,\n                                        $this->_format,\n                                        $this->_langue,\n                                        $this->_unicode,\n                                        $this->_encoding,\n                                        array($this->_defaultLeft,$this->_defaultTop,$this->_defaultRight,$this->_defaultBottom)\n                                    );\n\n            // init\n            HTML2PDF::$_subobj->setTestTdInOnePage($this->_testTdInOnepage);\n            HTML2PDF::$_subobj->setTestIsImage($this->_testIsImage);\n            HTML2PDF::$_subobj->setTestIsDeprecated($this->_testIsDeprecated);\n            HTML2PDF::$_subobj->setDefaultFont($this->_defaultFont);\n            HTML2PDF::$_subobj->parsingCss->css            = &$this->parsingCss->css;\n            HTML2PDF::$_subobj->parsingCss->cssKeys        = &$this->parsingCss->cssKeys;\n\n            // clone font from the original PDF\n            HTML2PDF::$_subobj->pdf->cloneFontFrom($this->pdf);\n\n            // remove the link to the parent\n            HTML2PDF::$_subobj->parsingCss->setPdfParent($pdf);\n        }\n\n        /**\n         * create a sub HTML2PDF, to calculate the multi-tables\n         *\n         * @access protected\n         * @param  &HTML2PDF $subHtml sub HTML2PDF to create\n         * @param  integer   $cellmargin if in a TD : cellmargin of this td\n         */\n        protected function _createSubHTML(&$subHtml, $cellmargin=0)\n        {\n            // prepare the subObject, if never prepare before\n            if (HTML2PDF::$_subobj===null) {\n                $this->_prepareSubObj();\n            }\n\n            // calculate the width to use\n            if ($this->parsingCss->value['width']) {\n                $marge = $cellmargin*2;\n                $marge+= $this->parsingCss->value['padding']['l'] + $this->parsingCss->value['padding']['r'];\n                $marge+= $this->parsingCss->value['border']['l']['width'] + $this->parsingCss->value['border']['r']['width'];\n                $marge = $this->pdf->getW() - $this->parsingCss->value['width'] + $marge;\n            } else {\n                $marge = $this->_margeLeft+$this->_margeRight;\n            }\n\n            // BUGFIX : we have to call the method, because of a bug in php 5.1.6\n            HTML2PDF::$_subobj->pdf->getPage();\n\n            // clone the sub oject\n            $subHtml = clone HTML2PDF::$_subobj;\n            $subHtml->parsingCss->table = $this->parsingCss->table;\n            $subHtml->parsingCss->value = $this->parsingCss->value;\n            $subHtml->initSubHtml(\n                $this->_format,\n                $this->_orientation,\n                $marge,\n                $this->_page,\n                $this->_defList,\n                $this->pdf->getMyLastPageGroup(),\n                $this->pdf->getMyLastPageGroupNb()\n            );\n        }\n\n        /**\n         * destroy a subHTML2PDF\n         *\n         * @access protected\n         */\n        protected function _destroySubHTML(&$subHtml)\n        {\n            unset($subHtml);\n            $subHtml = null;\n        }\n\n        /**\n         * Convert a arabic number in roman number\n         *\n         * @access protected\n         * @param  integer $nbArabic\n         * @return string  $nbRoman\n         */\n        protected function _listeArab2Rom($nbArabic)\n        {\n            $nbBaseTen    = array('I','X','C','M');\n            $nbBaseFive    = array('V','L','D');\n            $nbRoman    = '';\n\n            if ($nbArabic<1)    return $nbArabic;\n            if ($nbArabic>3999) return $nbArabic;\n\n            for ($i=3; $i>=0 ; $i--) {\n                $chiffre=floor($nbArabic/pow(10, $i));\n                if ($chiffre>=1) {\n                    $nbArabic=$nbArabic-$chiffre*pow(10, $i);\n                    if ($chiffre<=3) {\n                        for ($j=$chiffre; $j>=1; $j--) {\n                            $nbRoman=$nbRoman.$nbBaseTen[$i];\n                        }\n                    } else if ($chiffre==9) {\n                        $nbRoman=$nbRoman.$nbBaseTen[$i].$nbBaseTen[$i+1];\n                    } else if ($chiffre==4) {\n                    $nbRoman=$nbRoman.$nbBaseTen[$i].$nbBaseFive[$i];\n                    } else {\n                        $nbRoman=$nbRoman.$nbBaseFive[$i];\n                        for ($j=$chiffre-5; $j>=1; $j--) {\n                            $nbRoman=$nbRoman.$nbBaseTen[$i];\n                        }\n                    }\n                }\n            }\n            return $nbRoman;\n        }\n\n        /**\n         * add a LI to the current level\n         *\n         * @access protected\n         */\n        protected function _listeAddLi()\n        {\n            $this->_defList[count($this->_defList)-1]['nb']++;\n        }\n\n        /**\n         * get the width to use for the column of the list\n         *\n         * @access protected\n         * @return string $width\n         */\n        protected function _listeGetWidth()\n        {\n            return '7mm';\n        }\n\n        /**\n         * get the padding to use for the column of the list\n         *\n         * @access protected\n         * @return string $padding\n         */\n        protected function _listeGetPadding()\n        {\n            return '1mm';\n        }\n\n        /**\n         * get the information of the li on the current level\n         *\n         * @access protected\n         * @return array(fontName, small size, string)\n         */\n        protected function _listeGetLi()\n        {\n            $im = $this->_defList[count($this->_defList)-1]['img'];\n            $st = $this->_defList[count($this->_defList)-1]['style'];\n            $nb = $this->_defList[count($this->_defList)-1]['nb'];\n            $up = (substr($st, 0, 6)=='upper-');\n\n            if ($im) return array(false, false, $im);\n\n            switch($st)\n            {\n                case 'none':\n                    return array('helvetica', true, ' ');\n\n                case 'upper-alpha':\n                case 'lower-alpha':\n                    $str = '';\n                    while ($nb>26) {\n                        $str = chr(96+$nb%26).$str;\n                        $nb = floor($nb/26);\n                    }\n                    $str = chr(96+$nb).$str;\n\n                    return array('helvetica', false, ($up ? strtoupper($str) : $str).'.');\n\n                case 'upper-roman':\n                case 'lower-roman':\n                    $str = $this->_listeArab2Rom($nb);\n\n                    return array('helvetica', false, ($up ? strtoupper($str) : $str).'.');\n\n                case 'decimal':\n                    return array('helvetica', false, $nb.'.');\n\n                case 'square':\n                    return array('zapfdingbats', true, chr(110));\n\n                case 'circle':\n                    return array('zapfdingbats', true, chr(109));\n\n                case 'disc':\n                default:\n                    return array('zapfdingbats', true, chr(108));\n            }\n        }\n\n        /**\n         * add a level to the list\n         *\n         * @access protected\n         * @param  string $type  : ul, ol\n         * @param  string $style : lower-alpha, ...\n         * @param  string $img\n         */\n        protected function _listeAddLevel($type = 'ul', $style = '', $img = null)\n        {\n            // get the url of the image, if we want to use a image\n            if ($img) {\n                if (preg_match('/^url\\(([^)]+)\\)$/isU', trim($img), $match)) {\n                    $img = $match[1];\n                } else {\n                    $img = null;\n                }\n            } else {\n                $img = null;\n            }\n\n            // prepare the datas\n            if (!in_array($type, array('ul', 'ol'))) $type = 'ul';\n            if (!in_array($style, array('lower-alpha', 'upper-alpha', 'upper-roman', 'lower-roman', 'decimal', 'square', 'circle', 'disc', 'none'))) $style = '';\n\n            if (!$style) {\n                if ($type=='ul')    $style = 'disc';\n                else                $style = 'decimal';\n            }\n\n            // add the new level\n            $this->_defList[count($this->_defList)] = array('style' => $style, 'nb' => 0, 'img' => $img);\n        }\n\n        /**\n         * remove a level to the list\n         *\n         * @access protected\n         */\n        protected function _listeDelLevel()\n        {\n            if (count($this->_defList)) {\n                unset($this->_defList[count($this->_defList)-1]);\n                $this->_defList = array_values($this->_defList);\n            }\n        }\n\n        /**\n         * execute the actions to convert the html\n         *\n         * @access protected\n         */\n        protected function _makeHTMLcode()\n        {\n            // foreach elements of the parsing\n            for ($this->_parsePos=0; $this->_parsePos<count($this->parsingHtml->code); $this->_parsePos++) {\n\n                // get the action to do\n                $action = $this->parsingHtml->code[$this->_parsePos];\n\n                // if it is a opening of table / ul / ol\n                if (in_array($action['name'], array('table', 'ul', 'ol')) && !$action['close']) {\n\n                    //  we will work as a sub HTML to calculate the size of the element\n                    $this->_subPart = true;\n\n                    // get the name of the opening tag\n                    $tagOpen = $action['name'];\n\n                    // save the actual pos on the parsing\n                    $this->_tempPos = $this->_parsePos;\n\n                    // foreach elements, while we are in the opened tag\n                    while (isset($this->parsingHtml->code[$this->_tempPos]) && !($this->parsingHtml->code[$this->_tempPos]['name']==$tagOpen && $this->parsingHtml->code[$this->_tempPos]['close'])) {\n                        // make the action\n                        $this->_executeAction($this->parsingHtml->code[$this->_tempPos]);\n                        $this->_tempPos++;\n                    }\n\n                    // execute the closure of the tag\n                    if (isset($this->parsingHtml->code[$this->_tempPos])) {\n                        $this->_executeAction($this->parsingHtml->code[$this->_tempPos]);\n                    }\n\n                    // end of the sub part\n                    $this->_subPart = false;\n                }\n\n                // execute the action\n                $this->_executeAction($action);\n            }\n        }\n\n        /**\n         * execute the action from the parsing\n         *\n         * @access protected\n         * @param  array $action\n         */\n        protected function _executeAction($action)\n        {\n            // name of the action\n            $fnc = ($action['close'] ? '_tag_close_' : '_tag_open_').strtoupper($action['name']);\n\n            // parameters of the action\n            $param = $action['param'];\n\n            // if it the first action of the first page, and if it is not a open tag of PAGE => create the new page\n            if ($fnc!='_tag_open_PAGE' && $this->_firstPage) {\n                $this->_setNewPage();\n            }\n\n            // the action must exist\n            if (!is_callable(array(&$this, $fnc))) {\n                throw new HTML2PDF_exception(1, strtoupper($action['name']), $this->parsingHtml->getHtmlErrorCode($action['html_pos']));\n            }\n\n            // lauch the action\n            $res = $this->{$fnc}($param);\n\n            // save the name of the action\n            $this->_previousCall = $fnc;\n\n            // return the result\n            return $res;\n        }\n\n        /**\n         * get the position of the element on the current line, depending on his height\n         *\n         * @access protected\n         * @param  float $h\n         * @return float\n         */\n        protected function _getElementY($h)\n        {\n            if ($this->_subPart || $this->_isSubPart || !$this->_currentH || $this->_currentH<$h)\n                return 0;\n\n            return ($this->_currentH-$h)*0.8;\n        }\n\n        /**\n         * make a break line\n         *\n         * @access protected\n         * @param  float $h current line height\n         * @param  integer $curr real current position in the text, if new line in the write of a text\n         */\n        protected function _makeBreakLine($h, $curr = null)\n        {\n            if ($h) {\n                if (($this->pdf->getY()+$h<$this->pdf->getH() - $this->pdf->getbMargin()) || $this->_isInOverflow || $this->_isInFooter)\n                    $this->_setNewLine($h, $curr);\n                else\n                    $this->_setNewPage(null, '', null, $curr);\n            } else {\n                $this->_setNewPositionForNewLine($curr);\n            }\n\n            $this->_maxH = 0;\n            $this->_maxE = 0;\n        }\n\n        /**\n         * display a image\n         *\n         * @access protected\n         * @param  string $src\n         * @param  boolean $subLi if true=image of a list\n         * @return boolean depending on \"isForOneLine\"\n         */\n        protected function _drawImage($src, $subLi=false)\n        {\n            // get the size of the image\n            // WARNING : if URL, \"allow_url_fopen\" must turned to \"on\" in php.ini\n            $infos=@getimagesize($src);\n\n            // if the image does not exist, or can not be loaded\n            if (count($infos)<2) {\n                // if the test is activ => exception\n                if ($this->_testIsImage) {\n                    throw new HTML2PDF_exception(6, $src);\n                }\n\n                // else, display a gray rectangle\n                $src = null;\n                $infos = array(16, 16);\n            }\n\n            // convert the size of the image in the unit of the PDF\n            $imageWidth = $infos[0]/$this->pdf->getK();\n            $imageHeight = $infos[1]/$this->pdf->getK();\n\n            // calculate the size from the css style\n            if ($this->parsingCss->value['width'] && $this->parsingCss->value['height']) {\n                $w = $this->parsingCss->value['width'];\n                $h = $this->parsingCss->value['height'];\n            } else if ($this->parsingCss->value['width']) {\n                $w = $this->parsingCss->value['width'];\n                $h = $imageHeight*$w/$imageWidth;\n            } else if ($this->parsingCss->value['height']) {\n                $h = $this->parsingCss->value['height'];\n                $w = $imageWidth*$h/$imageHeight;\n            } else {\n                // convert px to pt\n                $w = 72./96.*$imageWidth;\n                $h = 72./96.*$imageHeight;\n            }\n\n            // are we in a float\n            $float = $this->parsingCss->getFloat();\n\n            // if we are in a float, but if something else if on the line => Break Line\n            if ($float && $this->_maxH) {\n                // make the break line (false if we are in \"_isForOneLine\" mode)\n                if (!$this->_tag_open_BR(array())) {\n                    return false;\n                }\n            }\n\n            // position of the image\n            $x = $this->pdf->getX();\n            $y = $this->pdf->getY();\n\n            // if the image can not be put on the current line => new line\n            if (!$float && ($x + $w>$this->pdf->getW() - $this->pdf->getrMargin()) && $this->_maxH) {\n                if ($this->_isForOneLine) {\n                    return false;\n                }\n\n                // set the new line\n                $hnl = max($this->_maxH, $this->parsingCss->getLineHeight());\n                $this->_setNewLine($hnl);\n\n                // get the new position\n                $x = $this->pdf->getX();\n                $y = $this->pdf->getY();\n            }\n\n            // if the image can not be put on the current page\n            if (($y + $h>$this->pdf->getH() - $this->pdf->getbMargin()) && !$this->_isInOverflow) {\n                // new page\n                $this->_setNewPage();\n\n                // get the new position\n                $x = $this->pdf->getX();\n                $y = $this->pdf->getY();\n            }\n\n            // correction for display the image of a list\n            $hT = 0.80*$this->parsingCss->value['font-size'];\n            if ($subLi && $h<$hT) {\n                $y+=($hT-$h);\n            }\n\n            // add the margin top\n            $yc = $y-$this->parsingCss->value['margin']['t'];\n\n            // get the width and the position of the parent\n            $old = $this->parsingCss->getOldValues();\n            if ( $old['width']) {\n                $parentWidth = $old['width'];\n                $parentX = $x;\n            } else {\n                $parentWidth = $this->pdf->getW() - $this->pdf->getlMargin() - $this->pdf->getrMargin();\n                $parentX = $this->pdf->getlMargin();\n            }\n\n            // if we are in a gloat => adapt the parent position and width\n            if ($float) {\n                list($lx, $rx) = $this->_getMargins($yc);\n                $parentX = $lx;\n                $parentWidth = $rx-$lx;\n            }\n\n            // calculate the position of the image, if align to the right\n            if ($parentWidth>$w && $float!='left') {\n                if ($float=='right' || $this->parsingCss->value['text-align']=='li_right')    $x = $parentX + $parentWidth - $w-$this->parsingCss->value['margin']['r']-$this->parsingCss->value['margin']['l'];\n            }\n\n            // display the image\n            if (!$this->_subPart && !$this->_isSubPart) {\n                if ($src) {\n                    $this->pdf->Image($src, $x, $y, $w, $h, '', $this->_isInLink);\n                } else {\n                    // rectangle if the image can not be loaded\n                    $this->pdf->setFillColorArray(array(240, 220, 220));\n                    $this->pdf->Rect($x, $y, $w, $h, 'F');\n                }\n            }\n\n            // apply the margins\n            $x-= $this->parsingCss->value['margin']['l'];\n            $y-= $this->parsingCss->value['margin']['t'];\n            $w+= $this->parsingCss->value['margin']['l'] + $this->parsingCss->value['margin']['r'];\n            $h+= $this->parsingCss->value['margin']['t'] + $this->parsingCss->value['margin']['b'];\n\n            if ($float=='left') {\n                // save the current max\n                $this->_maxX = max($this->_maxX, $x+$w);\n                $this->_maxY = max($this->_maxY, $y+$h);\n\n                // add the image to the margins\n                $this->_addMargins($float, $x, $y, $x+$w, $y+$h);\n\n                // get the new position\n                list($lx, $rx) = $this->_getMargins($yc);\n                $this->pdf->setXY($lx, $yc);\n            } else if ($float=='right') {\n                // save the current max. We don't save the X because it is not the real max of the line\n                $this->_maxY = max($this->_maxY, $y+$h);\n\n                // add the image to the margins\n                $this->_addMargins($float, $x, $y, $x+$w, $y+$h);\n\n                // get the new position\n                list($lx, $rx) = $this->_getMargins($yc);\n                $this->pdf->setXY($lx, $yc);\n            } else {\n                // set the new position at the end of the image\n                $this->pdf->setX($x+$w);\n\n                // save the current max\n                $this->_maxX = max($this->_maxX, $x+$w);\n                $this->_maxY = max($this->_maxY, $y+$h);\n                $this->_maxH = max($this->_maxH, $h);\n            }\n\n            return true;\n        }\n\n        /**\n         * draw a rectangle\n         *\n         * @access protected\n         * @param  float $x\n         * @param  float $y\n         * @param  float $w\n         * @param  float $h\n         * @param  array $border\n         * @param  float $padding - internal marge of the rectanble => not used, but...\n         * @param  float $margin  - external marge of the rectanble\n         * @param  array $background\n         * @return boolean\n         */\n        protected function _drawRectangle($x, $y, $w, $h, $border, $padding, $margin, $background)\n        {\n            // if we are in a subpart or if height is null => return false\n            if ($this->_subPart || $this->_isSubPart || $h===null) return false;\n\n            // add the margin\n            $x+= $margin;\n            $y+= $margin;\n            $w-= $margin*2;\n            $h-= $margin*2;\n\n            // get the radius of the border\n            $outTL = $border['radius']['tl'];\n            $outTR = $border['radius']['tr'];\n            $outBR = $border['radius']['br'];\n            $outBL = $border['radius']['bl'];\n\n            // prepare the out radius\n            $outTL = ($outTL[0] && $outTL[1]) ? $outTL : null;\n            $outTR = ($outTR[0] && $outTR[1]) ? $outTR : null;\n            $outBR = ($outBR[0] && $outBR[1]) ? $outBR : null;\n            $outBL = ($outBL[0] && $outBL[1]) ? $outBL : null;\n\n            // prepare the in radius\n            $inTL = $outTL;\n            $inTR = $outTR;\n            $inBR = $outBR;\n            $inBL = $outBL;\n\n            if (is_array($inTL)) {\n                $inTL[0]-= $border['l']['width'];\n                $inTL[1]-= $border['t']['width'];\n            }\n            if (is_array($inTR)) {\n                $inTR[0]-= $border['r']['width'];\n                $inTR[1]-= $border['t']['width'];\n            }\n            if (is_array($inBR)) {\n                $inBR[0]-= $border['r']['width'];\n                $inBR[1]-= $border['b']['width'];\n            }\n            if (is_array($inBL)) {\n                $inBL[0]-= $border['l']['width'];\n                $inBL[1]-= $border['b']['width'];\n            }\n\n            if ($inTL[0]<=0 || $inTL[1]<=0) $inTL = null;\n            if ($inTR[0]<=0 || $inTR[1]<=0) $inTR = null;\n            if ($inBR[0]<=0 || $inBR[1]<=0) $inBR = null;\n            if ($inBL[0]<=0 || $inBL[1]<=0) $inBL = null;\n\n            // prepare the background color\n            $pdfStyle = '';\n            if ($background['color']) {\n                $this->pdf->setFillColorArray($background['color']);\n                $pdfStyle.= 'F';\n            }\n\n            // if we have a background to fill => fill it with a path (because of the radius)\n            if ($pdfStyle) {\n                $this->pdf->clippingPathStart($x, $y, $w, $h, $outTL, $outTR, $outBL, $outBR);\n                $this->pdf->Rect($x, $y, $w, $h, $pdfStyle);\n                $this->pdf->clippingPathStop();\n            }\n\n            // prepare the background image\n            if ($background['image']) {\n                $iName      = $background['image'];\n                $iPosition  = $background['position']!==null ? $background['position'] : array(0, 0);\n                $iRepeat    = $background['repeat']!==null   ? $background['repeat']   : array(true, true);\n\n                // size of the background without the borders\n                $bX = $x;\n                $bY = $y;\n                $bW = $w;\n                $bH = $h;\n\n                if ($border['b']['width']) {\n                    $bH-= $border['b']['width'];\n                }\n                if ($border['l']['width']) {\n                    $bW-= $border['l']['width'];\n                    $bX+= $border['l']['width'];\n                }\n                if ($border['t']['width']) {\n                    $bH-= $border['t']['width'];\n                    $bY+= $border['t']['width'];\n                }\n                if ($border['r']['width']) {\n                    $bW-= $border['r']['width'];\n                }\n\n                // get the size of the image\n                // WARNING : if URL, \"allow_url_fopen\" must turned to \"on\" in php.ini\n                $imageInfos=@getimagesize($iName);\n\n                // if the image can not be loaded\n                if (count($imageInfos)<2) {\n                    if ($this->_testIsImage) {\n                        throw new HTML2PDF_exception(6, $iName);\n                    }\n                } else {\n                    // convert the size of the image from pixel to the unit of the PDF\n                    $imageWidth    = 72./96.*$imageInfos[0]/$this->pdf->getK();\n                    $imageHeight    = 72./96.*$imageInfos[1]/$this->pdf->getK();\n\n                    // prepare the position of the backgroung\n                    if ($iRepeat[0]) $iPosition[0] = $bX;\n                    else if (preg_match('/^([-]?[0-9\\.]+)%/isU', $iPosition[0], $match)) $iPosition[0] = $bX + $match[1]*($bW-$imageWidth)/100;\n                    else $iPosition[0] = $bX+$iPosition[0];\n\n                    if ($iRepeat[1]) $iPosition[1] = $bY;\n                    else if (preg_match('/^([-]?[0-9\\.]+)%/isU', $iPosition[1], $match)) $iPosition[1] = $bY + $match[1]*($bH-$imageHeight)/100;\n                    else $iPosition[1] = $bY+$iPosition[1];\n\n                    $imageXmin = $bX;\n                    $imageXmax = $bX+$bW;\n                    $imageYmin = $bY;\n                    $imageYmax = $bY+$bH;\n\n                    if (!$iRepeat[0] && !$iRepeat[1]) {\n                        $imageXmin =     $iPosition[0]; $imageXmax =     $iPosition[0]+$imageWidth;\n                        $imageYmin =     $iPosition[1]; $imageYmax =     $iPosition[1]+$imageHeight;\n                    } else if ($iRepeat[0] && !$iRepeat[1]) {\n                        $imageYmin =     $iPosition[1]; $imageYmax =     $iPosition[1]+$imageHeight;\n                    } else if (!$iRepeat[0] && $iRepeat[1]) {\n                        $imageXmin =     $iPosition[0]; $imageXmax =     $iPosition[0]+$imageWidth;\n                    }\n\n                    // build the path to display the image (because of radius)\n                    $this->pdf->clippingPathStart($bX, $bY, $bW, $bH, $inTL, $inTR, $inBL, $inBR);\n\n                    // repeat the image\n                    for ($iY=$imageYmin; $iY<$imageYmax; $iY+=$imageHeight) {\n                        for ($iX=$imageXmin; $iX<$imageXmax; $iX+=$imageWidth) {\n                            $cX = null;\n                            $cY = null;\n                            $cW = $imageWidth;\n                            $cH = $imageHeight;\n                            if ($imageYmax-$iY<$imageHeight) {\n                                $cX = $iX;\n                                $cY = $iY;\n                                $cH = $imageYmax-$iY;\n                            }\n                            if ($imageXmax-$iX<$imageWidth) {\n                                $cX = $iX;\n                                $cY = $iY;\n                                $cW = $imageXmax-$iX;\n                            }\n\n                            $this->pdf->Image($iName, $iX, $iY, $imageWidth, $imageHeight, '', '');\n                        }\n                    }\n\n                    // end of the path\n                    $this->pdf->clippingPathStop();\n                }\n            }\n\n            // adding some loose (0.01mm)\n            $loose = 0.01;\n            $x-= $loose;\n            $y-= $loose;\n            $w+= 2.*$loose;\n            $h+= 2.*$loose;\n            if ($border['l']['width']) $border['l']['width']+= 2.*$loose;\n            if ($border['t']['width']) $border['t']['width']+= 2.*$loose;\n            if ($border['r']['width']) $border['r']['width']+= 2.*$loose;\n            if ($border['b']['width']) $border['b']['width']+= 2.*$loose;\n\n            // prepare the test on borders\n            $testBl = ($border['l']['width'] && $border['l']['color'][0]!==null);\n            $testBt = ($border['t']['width'] && $border['t']['color'][0]!==null);\n            $testBr = ($border['r']['width'] && $border['r']['color'][0]!==null);\n            $testBb = ($border['b']['width'] && $border['b']['color'][0]!==null);\n\n            // draw the radius bottom-left\n            if (is_array($outBL) && ($testBb || $testBl)) {\n                if ($inBL) {\n                    $courbe = array();\n                    $courbe[] = $x+$outBL[0];              $courbe[] = $y+$h;\n                    $courbe[] = $x;                        $courbe[] = $y+$h-$outBL[1];\n                    $courbe[] = $x+$outBL[0];              $courbe[] = $y+$h-$border['b']['width'];\n                    $courbe[] = $x+$border['l']['width'];  $courbe[] = $y+$h-$outBL[1];\n                    $courbe[] = $x+$outBL[0];              $courbe[] = $y+$h-$outBL[1];\n                } else {\n                    $courbe = array();\n                    $courbe[] = $x+$outBL[0];              $courbe[] = $y+$h;\n                    $courbe[] = $x;                        $courbe[] = $y+$h-$outBL[1];\n                    $courbe[] = $x+$border['l']['width'];  $courbe[] = $y+$h-$border['b']['width'];\n                    $courbe[] = $x+$outBL[0];              $courbe[] = $y+$h-$outBL[1];\n                }\n                $this->_drawCurve($courbe, $border['l']['color']);\n            }\n\n            // draw the radius left-top\n            if (is_array($outTL) && ($testBt || $testBl)) {\n                if ($inTL) {\n                    $courbe = array();\n                    $courbe[] = $x;                        $courbe[] = $y+$outTL[1];\n                    $courbe[] = $x+$outTL[0];              $courbe[] = $y;\n                    $courbe[] = $x+$border['l']['width'];  $courbe[] = $y+$outTL[1];\n                    $courbe[] = $x+$outTL[0];              $courbe[] = $y+$border['t']['width'];\n                    $courbe[] = $x+$outTL[0];              $courbe[] = $y+$outTL[1];\n                } else {\n                    $courbe = array();\n                    $courbe[] = $x;                        $courbe[] = $y+$outTL[1];\n                    $courbe[] = $x+$outTL[0];              $courbe[] = $y;\n                    $courbe[] = $x+$border['l']['width'];  $courbe[] = $y+$border['t']['width'];\n                    $courbe[] = $x+$outTL[0];              $courbe[] = $y+$outTL[1];\n                }\n                $this->_drawCurve($courbe, $border['t']['color']);\n            }\n\n            // draw the radius top-right\n            if (is_array($outTR) && ($testBt || $testBr)) {\n                if ($inTR) {\n                    $courbe = array();\n                    $courbe[] = $x+$w-$outTR[0];             $courbe[] = $y;\n                    $courbe[] = $x+$w;                       $courbe[] = $y+$outTR[1];\n                    $courbe[] = $x+$w-$outTR[0];             $courbe[] = $y+$border['t']['width'];\n                    $courbe[] = $x+$w-$border['r']['width']; $courbe[] = $y+$outTR[1];\n                    $courbe[] = $x+$w-$outTR[0];             $courbe[] = $y+$outTR[1];\n                } else {\n                    $courbe = array();\n                    $courbe[] = $x+$w-$outTR[0];             $courbe[] = $y;\n                    $courbe[] = $x+$w;                       $courbe[] = $y+$outTR[1];\n                    $courbe[] = $x+$w-$border['r']['width']; $courbe[] = $y+$border['t']['width'];\n                    $courbe[] = $x+$w-$outTR[0];             $courbe[] = $y+$outTR[1];\n                }\n                $this->_drawCurve($courbe, $border['r']['color']);\n            }\n\n            // draw the radius right-bottom\n            if (is_array($outBR) && ($testBb || $testBr)) {\n                if ($inBR) {\n                    $courbe = array();\n                    $courbe[] = $x+$w;                       $courbe[] = $y+$h-$outBR[1];\n                    $courbe[] = $x+$w-$outBR[0];             $courbe[] = $y+$h;\n                    $courbe[] = $x+$w-$border['r']['width']; $courbe[] = $y+$h-$outBR[1];\n                    $courbe[] = $x+$w-$outBR[0];             $courbe[] = $y+$h-$border['b']['width'];\n                    $courbe[] = $x+$w-$outBR[0];             $courbe[] = $y+$h-$outBR[1];\n                } else {\n                    $courbe = array();\n                    $courbe[] = $x+$w;                       $courbe[] = $y+$h-$outBR[1];\n                    $courbe[] = $x+$w-$outBR[0];             $courbe[] = $y+$h;\n                    $courbe[] = $x+$w-$border['r']['width']; $courbe[] = $y+$h-$border['b']['width'];\n                    $courbe[] = $x+$w-$outBR[0];             $courbe[] = $y+$h-$outBR[1];\n                }\n                $this->_drawCurve($courbe, $border['b']['color']);\n            }\n\n            // draw the left border\n            if ($testBl) {\n                $pt = array();\n                $pt[] = $x;                       $pt[] = $y+$h;\n                $pt[] = $x;                       $pt[] = $y+$h-$border['b']['width'];\n                $pt[] = $x;                       $pt[] = $y+$border['t']['width'];\n                $pt[] = $x;                       $pt[] = $y;\n                $pt[] = $x+$border['l']['width']; $pt[] = $y+$border['t']['width'];\n                $pt[] = $x+$border['l']['width']; $pt[] = $y+$h-$border['b']['width'];\n\n                $bord = 3;\n                if (is_array($outBL)) {\n                    $bord-=1;\n                    $pt[3] -= $outBL[1] - $border['b']['width'];\n                    if ($inBL) $pt[11]-= $inBL[1];\n                    unset($pt[0]);unset($pt[1]);\n                }\n                if (is_array($outTL)) {\n                    $bord-=2;\n                    $pt[5] += $outTL[1]-$border['t']['width'];\n                    if ($inTL) $pt[9] += $inTL[1];\n                    unset($pt[6]);unset($pt[7]);\n                }\n\n                $pt = array_values($pt);\n                $this->_drawLine($pt, $border['l']['color'], $border['l']['type'], $border['l']['width'], $bord);\n            }\n\n            // draw the top border\n            if ($testBt) {\n                $pt = array();\n                $pt[] = $x;                          $pt[] = $y;\n                $pt[] = $x+$border['l']['width'];    $pt[] = $y;\n                $pt[] = $x+$w-$border['r']['width']; $pt[] = $y;\n                $pt[] = $x+$w;                       $pt[] = $y;\n                $pt[] = $x+$w-$border['r']['width']; $pt[] = $y+$border['t']['width'];\n                $pt[] = $x+$border['l']['width'];    $pt[] = $y+$border['t']['width'];\n\n                $bord = 3;\n                if (is_array($outTL)) {\n                    $bord-=1;\n                    $pt[2] += $outTL[0] - $border['l']['width'];\n                    if ($inTL) $pt[10]+= $inTL[0];\n                    unset($pt[0]);unset($pt[1]);\n                }\n                if (is_array($outTR)) {\n                    $bord-=2;\n                    $pt[4] -= $outTR[0] - $border['r']['width'];\n                    if ($inTR) $pt[8] -= $inTR[0];\n                    unset($pt[6]);unset($pt[7]);\n                }\n\n                $pt = array_values($pt);\n                $this->_drawLine($pt, $border['t']['color'], $border['t']['type'], $border['t']['width'], $bord);\n            }\n\n            // draw the right border\n            if ($testBr) {\n                $pt = array();\n                $pt[] = $x+$w;                       $pt[] = $y;\n                $pt[] = $x+$w;                       $pt[] = $y+$border['t']['width'];\n                $pt[] = $x+$w;                       $pt[] = $y+$h-$border['b']['width'];\n                $pt[] = $x+$w;                       $pt[] = $y+$h;\n                $pt[] = $x+$w-$border['r']['width']; $pt[] = $y+$h-$border['b']['width'];\n                $pt[] = $x+$w-$border['r']['width']; $pt[] = $y+$border['t']['width'];\n\n                $bord = 3;\n                if (is_array($outTR)) {\n                    $bord-=1;\n                    $pt[3] += $outTR[1] - $border['t']['width'];\n                    if ($inTR) $pt[11]+= $inTR[1];\n                    unset($pt[0]);unset($pt[1]);\n                }\n                if (is_array($outBR)) {\n                    $bord-=2;\n                    $pt[5] -= $outBR[1] - $border['b']['width'];\n                    if ($inBR) $pt[9] -= $inBR[1];\n                    unset($pt[6]);unset($pt[7]);\n                }\n\n                $pt = array_values($pt);\n                $this->_drawLine($pt, $border['r']['color'], $border['r']['type'], $border['r']['width'], $bord);\n            }\n\n            // draw the bottom border\n            if ($testBb) {\n                $pt = array();\n                $pt[] = $x+$w;                       $pt[] = $y+$h;\n                $pt[] = $x+$w-$border['r']['width']; $pt[] = $y+$h;\n                $pt[] = $x+$border['l']['width'];    $pt[] = $y+$h;\n                $pt[] = $x;                          $pt[] = $y+$h;\n                $pt[] = $x+$border['l']['width'];    $pt[] = $y+$h-$border['b']['width'];\n                $pt[] = $x+$w-$border['r']['width']; $pt[] = $y+$h-$border['b']['width'];\n\n                $bord = 3;\n                if (is_array($outBL)) {\n                    $bord-=2;\n                    $pt[4] += $outBL[0] - $border['l']['width'];\n                    if ($inBL) $pt[8] += $inBL[0];\n                    unset($pt[6]);unset($pt[7]);\n                }\n                if (is_array($outBR)) {\n                    $bord-=1;\n                    $pt[2] -= $outBR[0] - $border['r']['width'];\n                    if ($inBR) $pt[10]-= $inBR[0];\n                    unset($pt[0]);unset($pt[1]);\n\n                }\n\n                $pt = array_values($pt);\n                $this->_drawLine($pt, $border['b']['color'], $border['b']['type'], $border['b']['width'], $bord);\n            }\n\n            if ($background['color']) {\n                $this->pdf->setFillColorArray($background['color']);\n            }\n\n            return true;\n        }\n\n        /**\n         * draw a curve (for border radius)\n         *\n         * @access protected\n         * @param  array $pt\n         * @param  array $color\n         */\n        protected function _drawCurve($pt, $color)\n        {\n            $this->pdf->setFillColorArray($color);\n\n            if (count($pt)==10)\n                $this->pdf->drawCurve($pt[0], $pt[1], $pt[2], $pt[3], $pt[4], $pt[5], $pt[6], $pt[7], $pt[8], $pt[9]);\n            else\n                $this->pdf->drawCorner($pt[0], $pt[1], $pt[2], $pt[3], $pt[4], $pt[5], $pt[6], $pt[7]);\n        }\n\n        /**\n         * draw a ligne with a specific type, and specific start and end for radius\n         *\n         * @access protected\n         * @param  array   $pt\n         * @param  float   $color\n         * @param  string  $type (dashed, dotted, double, solid)\n         * @param  float   $width\n         * @param  integer $radius (binary from 0 to 3 with 1=>start with a radius, 2=>end with a radius)\n         */\n        protected function _drawLine($pt, $color, $type, $width, $radius=3)\n        {\n            // set the fill color\n            $this->pdf->setFillColorArray($color);\n\n            // if dashed or dotted\n            if ($type=='dashed' || $type=='dotted') {\n\n                // clean the end of the line, if radius\n                if ($radius==1) {\n                    $tmp = array(); $tmp[]=$pt[0]; $tmp[]=$pt[1]; $tmp[]=$pt[2]; $tmp[]=$pt[3]; $tmp[]=$pt[8]; $tmp[]=$pt[9];\n                    $this->pdf->Polygon($tmp, 'F');\n\n                    $tmp = array(); $tmp[]=$pt[2]; $tmp[]=$pt[3]; $tmp[]=$pt[4]; $tmp[]=$pt[5]; $tmp[]=$pt[6]; $tmp[]=$pt[7]; $tmp[]=$pt[8]; $tmp[]=$pt[9];\n                    $pt = $tmp;\n                } else if ($radius==2) {\n                    $tmp = array(); $tmp[]=$pt[2]; $tmp[]=$pt[3]; $tmp[]=$pt[4]; $tmp[]=$pt[5]; $tmp[]=$pt[6]; $tmp[]=$pt[7];\n                    $this->pdf->Polygon($tmp, 'F');\n\n                    $tmp = array(); $tmp[]=$pt[0]; $tmp[]=$pt[1]; $tmp[]=$pt[2]; $tmp[]=$pt[3]; $tmp[]=$pt[6]; $tmp[]=$pt[7]; $tmp[]=$pt[8]; $tmp[]=$pt[9];\n                    $pt = $tmp;\n                } else if ($radius==3) {\n                    $tmp = array(); $tmp[]=$pt[0]; $tmp[]=$pt[1]; $tmp[]=$pt[2]; $tmp[]=$pt[3]; $tmp[]=$pt[10]; $tmp[]=$pt[11];\n                    $this->pdf->Polygon($tmp, 'F');\n\n                    $tmp = array(); $tmp[]=$pt[4]; $tmp[]=$pt[5]; $tmp[]=$pt[6]; $tmp[]=$pt[7]; $tmp[]=$pt[8]; $tmp[]=$pt[9];\n                    $this->pdf->Polygon($tmp, 'F');\n\n                    $tmp = array(); $tmp[]=$pt[2]; $tmp[]=$pt[3]; $tmp[]=$pt[4]; $tmp[]=$pt[5]; $tmp[]=$pt[8]; $tmp[]=$pt[9]; $tmp[]=$pt[10]; $tmp[]=$pt[11];\n                    $pt = $tmp;\n                }\n\n                // horisontal or vertical line\n                if ($pt[2]==$pt[0]) {\n                    $l = abs(($pt[3]-$pt[1])*0.5);\n                    $px = 0;\n                    $py = $width;\n                    $x1 = $pt[0]; $y1 = ($pt[3]+$pt[1])*0.5;\n                    $x2 = $pt[6]; $y2 = ($pt[7]+$pt[5])*0.5;\n                } else {\n                    $l = abs(($pt[2]-$pt[0])*0.5);\n                    $px = $width;\n                    $py = 0;\n                    $x1 = ($pt[2]+$pt[0])*0.5; $y1 = $pt[1];\n                    $x2 = ($pt[6]+$pt[4])*0.5; $y2 = $pt[7];\n                }\n\n                // if dashed : 3x bigger than dotted\n                if ($type=='dashed') {\n                    $px = $px*3.;\n                    $py = $py*3.;\n                }\n                $mode = ($l/($px+$py)<.5);\n\n                // display the dotted/dashed line\n                for ($i=0; $l-($px+$py)*($i-0.5)>0; $i++) {\n                    if (($i%2)==$mode) {\n                        $j = $i-0.5;\n                        $lx1 = $px*($j);   if ($lx1<-$l) $lx1 =-$l;\n                        $ly1 = $py*($j);   if ($ly1<-$l) $ly1 =-$l;\n                        $lx2 = $px*($j+1); if ($lx2>$l)  $lx2 = $l;\n                        $ly2 = $py*($j+1); if ($ly2>$l)  $ly2 = $l;\n\n                        $tmp = array();\n                        $tmp[] = $x1+$lx1; $tmp[] = $y1+$ly1;\n                        $tmp[] = $x1+$lx2; $tmp[] = $y1+$ly2;\n                        $tmp[] = $x2+$lx2; $tmp[] = $y2+$ly2;\n                        $tmp[] = $x2+$lx1; $tmp[] = $y2+$ly1;\n                        $this->pdf->Polygon($tmp, 'F');\n\n                        if ($j>0) {\n                            $tmp = array();\n                            $tmp[] = $x1-$lx1; $tmp[] = $y1-$ly1;\n                            $tmp[] = $x1-$lx2; $tmp[] = $y1-$ly2;\n                            $tmp[] = $x2-$lx2; $tmp[] = $y2-$ly2;\n                            $tmp[] = $x2-$lx1; $tmp[] = $y2-$ly1;\n                            $this->pdf->Polygon($tmp, 'F');\n                        }\n                    }\n                }\n            } else if ($type=='double') {\n\n                // if double, 2 lines : 0=>1/3 and 2/3=>1\n                $pt1 = $pt;\n                $pt2 = $pt;\n\n                if (count($pt)==12) {\n                    // line 1\n                    $pt1[0] = ($pt[0]-$pt[10])*0.33 + $pt[10];\n                    $pt1[1] = ($pt[1]-$pt[11])*0.33 + $pt[11];\n                    $pt1[2] = ($pt[2]-$pt[10])*0.33 + $pt[10];\n                    $pt1[3] = ($pt[3]-$pt[11])*0.33 + $pt[11];\n                    $pt1[4] = ($pt[4]-$pt[8])*0.33 + $pt[8];\n                    $pt1[5] = ($pt[5]-$pt[9])*0.33 + $pt[9];\n                    $pt1[6] = ($pt[6]-$pt[8])*0.33 + $pt[8];\n                    $pt1[7] = ($pt[7]-$pt[9])*0.33 + $pt[9];\n                    $pt2[10]= ($pt[10]-$pt[0])*0.33 + $pt[0];\n                    $pt2[11]= ($pt[11]-$pt[1])*0.33 + $pt[1];\n\n                    // line 2\n                    $pt2[2] = ($pt[2] -$pt[0])*0.33 + $pt[0];\n                    $pt2[3] = ($pt[3] -$pt[1])*0.33 + $pt[1];\n                    $pt2[4] = ($pt[4] -$pt[6])*0.33 + $pt[6];\n                    $pt2[5] = ($pt[5] -$pt[7])*0.33 + $pt[7];\n                    $pt2[8] = ($pt[8] -$pt[6])*0.33 + $pt[6];\n                    $pt2[9] = ($pt[9] -$pt[7])*0.33 + $pt[7];\n                } else {\n                    // line 1\n                    $pt1[0] = ($pt[0]-$pt[6])*0.33 + $pt[6];\n                    $pt1[1] = ($pt[1]-$pt[7])*0.33 + $pt[7];\n                    $pt1[2] = ($pt[2]-$pt[4])*0.33 + $pt[4];\n                    $pt1[3] = ($pt[3]-$pt[5])*0.33 + $pt[5];\n\n                    // line 2\n                    $pt2[6] = ($pt[6]-$pt[0])*0.33 + $pt[0];\n                    $pt2[7] = ($pt[7]-$pt[1])*0.33 + $pt[1];\n                    $pt2[4] = ($pt[4]-$pt[2])*0.33 + $pt[2];\n                    $pt2[5] = ($pt[5]-$pt[3])*0.33 + $pt[3];\n                }\n                $this->pdf->Polygon($pt1, 'F');\n                $this->pdf->Polygon($pt2, 'F');\n            } else if ($type=='solid') {\n                // solid line : draw directly the polygon\n                $this->pdf->Polygon($pt, 'F');\n            }\n        }\n\n        /**\n         * prepare a transform matrix, only for drawing a SVG graphic\n         *\n         * @access protected\n         * @param  string $transform\n         * @return array  $matrix\n         */\n        protected function _prepareTransform($transform)\n        {\n            // it can not be  empty\n            if (!$transform) return null;\n\n            // sctions must be like scale(...)\n            if (!preg_match_all('/([a-z]+)\\(([^\\)]*)\\)/isU', $transform, $match)) return null;\n\n            // prepare the list of the actions\n            $actions = array();\n\n            // for actions\n            for ($k=0; $k<count($match[0]); $k++) {\n\n                // get the name of the action\n                $name = strtolower($match[1][$k]);\n\n                // get the parameters of the action\n                $val = explode(',', trim($match[2][$k]));\n                foreach ($val as $i => $j) {\n                    $val[$i] = trim($j);\n                }\n\n                // prepare the matrix, depending on the action\n                switch($name)\n                {\n                    case 'scale':\n                        if (!isset($val[0])) $val[0] = 1.;      else $val[0] = 1.*$val[0];\n                        if (!isset($val[1])) $val[1] = $val[0]; else $val[1] = 1.*$val[1];\n                        $actions[] = array($val[0],0,0,$val[1],0,0);\n                        break;\n\n                    case 'translate':\n                        if (!isset($val[0])) $val[0] = 0.; else $val[0] = $this->parsingCss->ConvertToMM($val[0], $this->_isInDraw['w']);\n                        if (!isset($val[1])) $val[1] = 0.; else $val[1] = $this->parsingCss->ConvertToMM($val[1], $this->_isInDraw['h']);\n                        $actions[] = array(1,0,0,1,$val[0],$val[1]);\n                        break;\n\n                    case 'rotate':\n                        if (!isset($val[0])) $val[0] = 0.; else $val[0] = $val[0]*M_PI/180.;\n                        if (!isset($val[1])) $val[1] = 0.; else $val[1] = $this->parsingCss->ConvertToMM($val[1], $this->_isInDraw['w']);\n                        if (!isset($val[2])) $val[2] = 0.; else $val[2] = $this->parsingCss->ConvertToMM($val[2], $this->_isInDraw['h']);\n                        if ($val[1] || $val[2]) $actions[] = array(1,0,0,1,-$val[1],-$val[2]);\n                        $actions[] = array(cos($val[0]),sin($val[0]),-sin($val[0]),cos($val[0]),0,0);\n                        if ($val[1] || $val[2]) $actions[] = array(1,0,0,1,$val[1],$val[2]);\n                        break;\n\n                    case 'skewx':\n                        if (!isset($val[0])) $val[0] = 0.; else $val[0] = $val[0]*M_PI/180.;\n                        $actions[] = array(1,0,tan($val[0]),1,0,0);\n                        break;\n\n                    case 'skewy':\n                        if (!isset($val[0])) $val[0] = 0.; else $val[0] = $val[0]*M_PI/180.;\n                        $actions[] = array(1,tan($val[0]),0,1,0,0);\n                        break;\n                    case 'matrix':\n                        if (!isset($val[0])) $val[0] = 0.; else $val[0] = $val[0]*1.;\n                        if (!isset($val[1])) $val[1] = 0.; else $val[1] = $val[1]*1.;\n                        if (!isset($val[2])) $val[2] = 0.; else $val[2] = $val[2]*1.;\n                        if (!isset($val[3])) $val[3] = 0.; else $val[3] = $val[3]*1.;\n                        if (!isset($val[4])) $val[4] = 0.; else $val[4] = $this->parsingCss->ConvertToMM($val[4], $this->_isInDraw['w']);\n                        if (!isset($val[5])) $val[5] = 0.; else $val[5] = $this->parsingCss->ConvertToMM($val[5], $this->_isInDraw['h']);\n                        $actions[] =$val;\n                        break;\n                }\n            }\n\n            // if ther is no actions => return\n            if (!$actions) return null;\n\n            // get the first matrix\n            $m = $actions[0]; unset($actions[0]);\n\n            // foreach matrix => multiply to the last matrix\n            foreach ($actions as $n) {\n                $m = array(\n                    $m[0]*$n[0]+$m[2]*$n[1],\n                    $m[1]*$n[0]+$m[3]*$n[1],\n                    $m[0]*$n[2]+$m[2]*$n[3],\n                    $m[1]*$n[2]+$m[3]*$n[3],\n                    $m[0]*$n[4]+$m[2]*$n[5]+$m[4],\n                    $m[1]*$n[4]+$m[3]*$n[5]+$m[5]\n                );\n            }\n\n            // return the matrix\n            return $m;\n        }\n\n        /**\n         * @access protected\n         * @param  &array $cases\n         * @param  &array $corr\n         */\n        protected function _calculateTableCellSize(&$cases, &$corr)\n        {\n            if (!isset($corr[0])) return true;\n\n            // for each cell without colspan, we get the max width for each column\n            $sw = array();\n            for ($x=0; $x<count($corr[0]); $x++) {\n                $m=0;\n                for ($y=0; $y<count($corr); $y++) {\n                    if (isset($corr[$y][$x]) && is_array($corr[$y][$x]) && $corr[$y][$x][2]==1) {\n                        $m = max($m, $cases[$corr[$y][$x][1]][$corr[$y][$x][0]]['w']);\n                    }\n                }\n                $sw[$x] = $m;\n            }\n\n            // for each cell with colspan, we adapt the width of each column\n            for ($x=0; $x<count($corr[0]); $x++) {\n                for ($y=0; $y<count($corr); $y++) {\n                    if (isset($corr[$y][$x]) && is_array($corr[$y][$x]) && $corr[$y][$x][2]>1) {\n\n                        // sum the max width of each column in colspan\n                        $s = 0; for ($i=0; $i<$corr[$y][$x][2]; $i++) $s+= $sw[$x+$i];\n\n                        // if the max width is < the width of the cell with colspan => we adapt the width of each max width\n                        if ($s>0 && $s<$cases[$corr[$y][$x][1]][$corr[$y][$x][0]]['w']) {\n                            for ($i=0; $i<$corr[$y][$x][2]; $i++) {\n                                $sw[$x+$i] = $sw[$x+$i]/$s*$cases[$corr[$y][$x][1]][$corr[$y][$x][0]]['w'];\n                            }\n                        }\n                    }\n                }\n            }\n\n            // set the new width, for each cell\n            for ($x=0; $x<count($corr[0]); $x++) {\n                for ($y=0; $y<count($corr); $y++) {\n                    if (isset($corr[$y][$x]) && is_array($corr[$y][$x])) {\n                        // without colspan\n                        if ($corr[$y][$x][2]==1) {\n                            $cases[$corr[$y][$x][1]][$corr[$y][$x][0]]['w'] = $sw[$x];\n                        // with colspan\n                        } else {\n                            $s = 0;\n                            for ($i=0; $i<$corr[$y][$x][2]; $i++) {\n                                $s+= $sw[$x+$i];\n                            }\n                            $cases[$corr[$y][$x][1]][$corr[$y][$x][0]]['w'] = $s;\n                        }\n                    }\n                }\n            }\n\n            // for each cell without rowspan, we get the max height for each line\n            $sh = array();\n            for ($y=0; $y<count($corr); $y++) {\n                $m=0;\n                for ($x=0; $x<count($corr[0]); $x++) {\n                    if (isset($corr[$y][$x]) && is_array($corr[$y][$x]) && $corr[$y][$x][3]==1) {\n                        $m = max($m, $cases[$corr[$y][$x][1]][$corr[$y][$x][0]]['h']);\n                    }\n                }\n                $sh[$y] = $m;\n            }\n\n            // for each cell with rowspan, we adapt the height of each line\n            for ($y=0; $y<count($corr); $y++) {\n                for ($x=0; $x<count($corr[0]); $x++) {\n                    if (isset($corr[$y][$x]) && is_array($corr[$y][$x]) && $corr[$y][$x][3]>1) {\n\n                        // sum the max height of each line in rowspan\n                        $s = 0; for ($i=0; $i<$corr[$y][$x][3]; $i++) $s+= $sh[$y+$i];\n\n                        // if the max height is < the height of the cell with rowspan => we adapt the height of each max height\n                        if ($s>0 && $s<$cases[$corr[$y][$x][1]][$corr[$y][$x][0]]['h']) {\n                            for ($i=0; $i<$corr[$y][$x][3]; $i++) {\n                                $sh[$y+$i] = $sh[$y+$i]/$s*$cases[$corr[$y][$x][1]][$corr[$y][$x][0]]['h'];\n                            }\n                        }\n                    }\n                }\n            }\n\n            // set the new height, for each cell\n            for ($y=0; $y<count($corr); $y++) {\n                for ($x=0; $x<count($corr[0]); $x++) {\n                    if (isset($corr[$y][$x]) && is_array($corr[$y][$x])) {\n                        // without rowspan\n                        if ($corr[$y][$x][3]==1) {\n                            $cases[$corr[$y][$x][1]][$corr[$y][$x][0]]['h'] = $sh[$y];\n                        // with rowspan\n                        } else {\n                            $s = 0;\n                            for ($i=0; $i<$corr[$y][$x][3]; $i++) {\n                                $s+= $sh[$y+$i];\n                            }\n                            $cases[$corr[$y][$x][1]][$corr[$y][$x][0]]['h'] = $s;\n\n                            for ($j=1; $j<$corr[$y][$x][3]; $j++) {\n                                $tx = $x+1;\n                                $ty = $y+$j;\n                                for (true; isset($corr[$ty][$tx]) && !is_array($corr[$ty][$tx]); $tx++);\n                                if (isset($corr[$ty][$tx])) {\n                                    $cases[$corr[$ty][$tx][1]][$corr[$ty][$tx][0]]['dw']+= $cases[$corr[$y][$x][1]][$corr[$y][$x][0]]['w'];\n                                }\n                            }\n                        }\n                    }\n                }\n            }\n        }\n\n        /**\n         * tag : PAGE\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_PAGE($param)\n        {\n            if ($this->_isForOneLine) return false;\n            if ($this->_debugActif) $this->_DEBUG_add('PAGE '.($this->_page+1), true);\n\n            $newPageSet= (!isset($param['pageset']) || $param['pageset']!='old');\n\n            $resetPageNumber = (isset($param['pagegroup']) && $param['pagegroup']=='new');\n\n            $this->_maxH = 0;\n\n            // if new page set asked\n            if ($newPageSet) {\n                $this->_subHEADER = array();\n                $this->_subFOOTER = array();\n\n                // orientation\n                $orientation = '';\n                if (isset($param['orientation'])) {\n                    $param['orientation'] = strtolower($param['orientation']);\n                    if ($param['orientation']=='p')         $orientation = 'P';\n                    if ($param['orientation']=='portrait')  $orientation = 'P';\n\n                    if ($param['orientation']=='l')         $orientation = 'L';\n                    if ($param['orientation']=='paysage')   $orientation = 'L';\n                    if ($param['orientation']=='landscape') $orientation = 'L';\n                }\n\n                // format\n                $format = null;\n                if (isset($param['format'])) {\n                    $format = strtolower($param['format']);\n                    if (preg_match('/^([0-9]+)x([0-9]+)$/isU', $format, $match)) {\n                        $format = array(intval($match[1]), intval($match[2]));\n                    }\n                }\n\n                // background\n                $background = array();\n                if (isset($param['backimg'])) {\n                    $background['img']    = isset($param['backimg'])  ? $param['backimg']  : '';       // src of the image\n                    $background['posX']   = isset($param['backimgx']) ? $param['backimgx'] : 'center'; // horizontale position of the image\n                    $background['posY']   = isset($param['backimgy']) ? $param['backimgy'] : 'middle'; // vertical position of the image\n                    $background['width']  = isset($param['backimgw']) ? $param['backimgw'] : '100%';   // width of the image (100% = page width)\n\n                    // convert the src of the image, if parameters\n                    $background['img'] = str_replace('&amp;', '&', $background['img']);\n\n                    // convert the positions\n                    if ($background['posX']=='left')    $background['posX'] = '0%';\n                    if ($background['posX']=='center')  $background['posX'] = '50%';\n                    if ($background['posX']=='right')   $background['posX'] = '100%';\n                    if ($background['posY']=='top')     $background['posY'] = '0%';\n                    if ($background['posY']=='middle')  $background['posY'] = '50%';\n                    if ($background['posY']=='bottom')  $background['posY'] = '100%';\n\n                    if ($background['img']) {\n                        // get the size of the image\n                        // WARNING : if URL, \"allow_url_fopen\" must turned to \"on\" in php.ini\n                        $infos=@getimagesize($background['img']);\n                        if (count($infos)>1) {\n                            $imageWidth = $this->parsingCss->ConvertToMM($background['width'], $this->pdf->getW());\n                            $imageHeight = $imageWidth*$infos[1]/$infos[0];\n\n                            $background['width'] = $imageWidth;\n                            $background['posX']  = $this->parsingCss->ConvertToMM($background['posX'], $this->pdf->getW() - $imageWidth);\n                            $background['posY']  = $this->parsingCss->ConvertToMM($background['posY'], $this->pdf->getH() - $imageHeight);\n                        } else {\n                            $background = array();\n                        }\n                    } else {\n                        $background = array();\n                    }\n                }\n\n                // margins of the page\n                $background['top']    = isset($param['backtop'])    ? $param['backtop']    : '0';\n                $background['bottom'] = isset($param['backbottom']) ? $param['backbottom'] : '0';\n                $background['left']   = isset($param['backleft'])   ? $param['backleft']   : '0';\n                $background['right']  = isset($param['backright'])  ? $param['backright']  : '0';\n\n                // if no unit => mm\n                if (preg_match('/^([0-9]*)$/isU', $background['top']))    $background['top']    .= 'mm';\n                if (preg_match('/^([0-9]*)$/isU', $background['bottom'])) $background['bottom'] .= 'mm';\n                if (preg_match('/^([0-9]*)$/isU', $background['left']))   $background['left']   .= 'mm';\n                if (preg_match('/^([0-9]*)$/isU', $background['right']))  $background['right']  .= 'mm';\n\n                // convert to mm\n                $background['top']    = $this->parsingCss->ConvertToMM($background['top'], $this->pdf->getH());\n                $background['bottom'] = $this->parsingCss->ConvertToMM($background['bottom'], $this->pdf->getH());\n                $background['left']   = $this->parsingCss->ConvertToMM($background['left'], $this->pdf->getW());\n                $background['right']  = $this->parsingCss->ConvertToMM($background['right'], $this->pdf->getW());\n\n                // get the background color\n                $res = false;\n                $background['color']    = isset($param['backcolor'])    ? $this->parsingCss->convertToColor($param['backcolor'], $res) : null;\n                if (!$res) $background['color'] = null;\n\n                $this->parsingCss->save();\n                $this->parsingCss->analyse('PAGE', $param);\n                $this->parsingCss->setPosition();\n                $this->parsingCss->fontSet();\n\n                // new page\n                $this->_setNewPage($format, $orientation, $background, null, $resetPageNumber);\n\n                // automatic footer\n                if (isset($param['footer'])) {\n                    $lst = explode(';', $param['footer']);\n                    foreach ($lst as $key => $val) $lst[$key] = trim(strtolower($val));\n                    $page    = in_array('page', $lst);\n                    $date    = in_array('date', $lst);\n                    $hour    = in_array('heure', $lst);\n                    $form    = in_array('form', $lst);\n                } else {\n                    $page    = null;\n                    $date    = null;\n                    $hour    = null;\n                    $form    = null;\n                }\n                $this->pdf->SetMyFooter($page, $date, $hour, $form);\n            // else => we use the last page set used\n            } else {\n                $this->parsingCss->save();\n                $this->parsingCss->analyse('PAGE', $param);\n                $this->parsingCss->setPosition();\n                $this->parsingCss->fontSet();\n\n                $this->_setNewPage(null, null, null, null, $resetPageNumber);\n            }\n\n            return true;\n        }\n\n        /**\n         * tag : PAGE\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_PAGE($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->_maxH = 0;\n\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            if ($this->_debugActif) $this->_DEBUG_add('PAGE '.$this->_page, false);\n\n            return true;\n        }\n\n        /**\n         * tag : PAGE_HEADER\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_PAGE_HEADER($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->_subHEADER = array();\n            for ($this->_parsePos; $this->_parsePos<count($this->parsingHtml->code); $this->_parsePos++) {\n                $action = $this->parsingHtml->code[$this->_parsePos];\n                if ($action['name']=='page_header') $action['name']='page_header_sub';\n                $this->_subHEADER[] = $action;\n                if (strtolower($action['name'])=='page_header_sub' && $action['close']) break;\n            }\n\n            $this->_setPageHeader();\n\n            return true;\n        }\n\n        /**\n         * tag : PAGE_FOOTER\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_PAGE_FOOTER($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->_subFOOTER = array();\n            for ($this->_parsePos; $this->_parsePos<count($this->parsingHtml->code); $this->_parsePos++) {\n                $action = $this->parsingHtml->code[$this->_parsePos];\n                if ($action['name']=='page_footer') $action['name']='page_footer_sub';\n                $this->_subFOOTER[] = $action;\n                if (strtolower($action['name'])=='page_footer_sub' && $action['close']) break;\n            }\n\n            $this->_setPageFooter();\n\n            return true;\n        }\n\n        /**\n         * It is not a real tag. Does not use it directly\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_PAGE_HEADER_SUB($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            // save the current stat\n            $this->_subSTATES = array();\n            $this->_subSTATES['x']  = $this->pdf->getX();\n            $this->_subSTATES['y']  = $this->pdf->getY();\n            $this->_subSTATES['s']  = $this->parsingCss->value;\n            $this->_subSTATES['t']  = $this->parsingCss->table;\n            $this->_subSTATES['ml'] = $this->_margeLeft;\n            $this->_subSTATES['mr'] = $this->_margeRight;\n            $this->_subSTATES['mt'] = $this->_margeTop;\n            $this->_subSTATES['mb'] = $this->_margeBottom;\n            $this->_subSTATES['mp'] = $this->_pageMarges;\n\n            // new stat for the header\n            $this->_pageMarges = array();\n            $this->_margeLeft    = $this->_defaultLeft;\n            $this->_margeRight   = $this->_defaultRight;\n            $this->_margeTop     = $this->_defaultTop;\n            $this->_margeBottom  = $this->_defaultBottom;\n            $this->pdf->SetMargins($this->_margeLeft, $this->_margeTop, $this->_margeRight);\n            $this->pdf->SetAutoPageBreak(false, $this->_margeBottom);\n            $this->pdf->setXY($this->_defaultLeft, $this->_defaultTop);\n\n            $this->parsingCss->initStyle();\n            $this->parsingCss->resetStyle();\n            $this->parsingCss->value['width'] = $this->pdf->getW() - $this->_defaultLeft - $this->_defaultRight;\n            $this->parsingCss->table = array();\n\n            $this->parsingCss->save();\n            $this->parsingCss->analyse('page_header_sub', $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n            $this->_setNewPositionForNewLine();\n            return true;\n        }\n\n        /**\n         * It is not a real tag. Does not use it directly\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_PAGE_HEADER_SUB($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->parsingCss->load();\n\n            // restore the stat\n            $this->parsingCss->value = $this->_subSTATES['s'];\n            $this->parsingCss->table = $this->_subSTATES['t'];\n            $this->_pageMarges       = $this->_subSTATES['mp'];\n            $this->_margeLeft        = $this->_subSTATES['ml'];\n            $this->_margeRight       = $this->_subSTATES['mr'];\n            $this->_margeTop         = $this->_subSTATES['mt'];\n            $this->_margeBottom      = $this->_subSTATES['mb'];\n            $this->pdf->SetMargins($this->_margeLeft, $this->_margeTop, $this->_margeRight);\n            $this->pdf->setbMargin($this->_margeBottom);\n            $this->pdf->SetAutoPageBreak(false, $this->_margeBottom);\n            $this->pdf->setXY($this->_subSTATES['x'], $this->_subSTATES['y']);\n\n            $this->parsingCss->fontSet();\n            $this->_maxH = 0;\n\n            return true;\n        }\n\n        /**\n         * It is not a real tag. Does not use it directly\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_PAGE_FOOTER_SUB($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            // save the current stat\n            $this->_subSTATES = array();\n            $this->_subSTATES['x']    = $this->pdf->getX();\n            $this->_subSTATES['y']    = $this->pdf->getY();\n            $this->_subSTATES['s']    = $this->parsingCss->value;\n            $this->_subSTATES['t']    = $this->parsingCss->table;\n            $this->_subSTATES['ml']    = $this->_margeLeft;\n            $this->_subSTATES['mr']    = $this->_margeRight;\n            $this->_subSTATES['mt']    = $this->_margeTop;\n            $this->_subSTATES['mb']    = $this->_margeBottom;\n            $this->_subSTATES['mp']    = $this->_pageMarges;\n\n            // new stat for the footer\n            $this->_pageMarges  = array();\n            $this->_margeLeft   = $this->_defaultLeft;\n            $this->_margeRight  = $this->_defaultRight;\n            $this->_margeTop    = $this->_defaultTop;\n            $this->_margeBottom = $this->_defaultBottom;\n            $this->pdf->SetMargins($this->_margeLeft, $this->_margeTop, $this->_margeRight);\n            $this->pdf->SetAutoPageBreak(false, $this->_margeBottom);\n            $this->pdf->setXY($this->_defaultLeft, $this->_defaultTop);\n\n            $this->parsingCss->initStyle();\n            $this->parsingCss->resetStyle();\n            $this->parsingCss->value['width']    = $this->pdf->getW() - $this->_defaultLeft - $this->_defaultRight;\n            $this->parsingCss->table                = array();\n\n            // we create a sub HTML2PFDF, and we execute on it the content of the footer, to get the height of it\n            $sub = null;\n            $this->_createSubHTML($sub);\n            $sub->parsingHtml->code = $this->parsingHtml->getLevel($this->_parsePos);\n            $sub->_makeHTMLcode();\n            $this->pdf->setY($this->pdf->getH() - $sub->_maxY - $this->_defaultBottom - 0.01);\n            $this->_destroySubHTML($sub);\n\n            $this->parsingCss->save();\n            $this->parsingCss->analyse('page_footer_sub', $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n            $this->_setNewPositionForNewLine();\n\n            return true;\n        }\n\n        /**\n         * It is not a real tag. Does not use it directly\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_PAGE_FOOTER_SUB($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->parsingCss->load();\n\n            $this->parsingCss->value                = $this->_subSTATES['s'];\n            $this->parsingCss->table                = $this->_subSTATES['t'];\n            $this->_pageMarges                 = $this->_subSTATES['mp'];\n            $this->_margeLeft                = $this->_subSTATES['ml'];\n            $this->_margeRight                = $this->_subSTATES['mr'];\n            $this->_margeTop                    = $this->_subSTATES['mt'];\n            $this->_margeBottom                = $this->_subSTATES['mb'];\n            $this->pdf->SetMargins($this->_margeLeft, $this->_margeTop, $this->_margeRight);\n            $this->pdf->SetAutoPageBreak(false, $this->_margeBottom);\n            $this->pdf->setXY($this->_subSTATES['x'], $this->_subSTATES['y']);\n\n            $this->parsingCss->fontSet();\n            $this->_maxH = 0;\n\n            return true;\n        }\n\n        /**\n         * tag : NOBREAK\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_NOBREAK($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->_maxH = 0;\n\n            // create a sub HTML2PDF to execute the content of the tag, to get the dimensions\n            $sub = null;\n            $this->_createSubHTML($sub);\n            $sub->parsingHtml->code = $this->parsingHtml->getLevel($this->_parsePos);\n            $sub->_makeHTMLcode();\n            $y = $this->pdf->getY();\n\n            // if the content does not fit on the page => new page\n            if (\n                $sub->_maxY < ($this->pdf->getH() - $this->pdf->gettMargin()-$this->pdf->getbMargin()) &&\n                $y + $sub->_maxY>=($this->pdf->getH() - $this->pdf->getbMargin())\n            ) {\n                $this->_setNewPage();\n            }\n\n            // destroy the sub HTML2PDF\n            $this->_destroySubHTML($sub);\n\n            return true;\n        }\n\n\n        /**\n         * tag : NOBREAK\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_NOBREAK($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->_maxH = 0;\n\n            return true;\n        }\n\n        /**\n         * tag : DIV\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @param  string $other name of tag that used the div tag\n         * @return boolean\n         */\n        protected function _tag_open_DIV($param, $other = 'div')\n        {\n            if ($this->_isForOneLine) return false;\n            if ($this->_debugActif) $this->_DEBUG_add(strtoupper($other), true);\n\n            $this->parsingCss->save();\n            $this->parsingCss->analyse($other, $param);\n            $this->parsingCss->fontSet();\n\n            // for fieldset and legend\n            if (in_array($other, array('fieldset', 'legend'))) {\n                if (isset($param['moveTop']))  $this->parsingCss->value['margin']['t']    += $param['moveTop'];\n                if (isset($param['moveLeft'])) $this->parsingCss->value['margin']['l']    += $param['moveLeft'];\n                if (isset($param['moveDown'])) $this->parsingCss->value['margin']['b']    += $param['moveDown'];\n            }\n\n            $alignObject = null;\n            if ($this->parsingCss->value['margin-auto']) $alignObject = 'center';\n\n            $marge = array();\n            $marge['l'] = $this->parsingCss->value['border']['l']['width'] + $this->parsingCss->value['padding']['l']+0.03;\n            $marge['r'] = $this->parsingCss->value['border']['r']['width'] + $this->parsingCss->value['padding']['r']+0.03;\n            $marge['t'] = $this->parsingCss->value['border']['t']['width'] + $this->parsingCss->value['padding']['t']+0.03;\n            $marge['b'] = $this->parsingCss->value['border']['b']['width'] + $this->parsingCss->value['padding']['b']+0.03;\n\n            // extract the content of the div\n            $level = $this->parsingHtml->getLevel($this->_parsePos);\n\n            // create a sub HTML2PDF to get the dimensions of the content of the div\n            $w = 0; $h = 0;\n            if (count($level)) {\n                $sub = null;\n                $this->_createSubHTML($sub);\n                $sub->parsingHtml->code = $level;\n                $sub->_makeHTMLcode();\n                $w = $sub->_maxX;\n                $h = $sub->_maxY;\n                $this->_destroySubHTML($sub);\n            }\n            $wReel = $w;\n            $hReel = $h;\n\n            $w+= $marge['l']+$marge['r']+0.001;\n            $h+= $marge['t']+$marge['b']+0.001;\n\n            if ($this->parsingCss->value['overflow']=='hidden') {\n                $overW = max($w, $this->parsingCss->value['width']);\n                $overH = max($h, $this->parsingCss->value['height']);\n                $overflow = true;\n                $this->parsingCss->value['old_maxX'] = $this->_maxX;\n                $this->parsingCss->value['old_maxY'] = $this->_maxY;\n                $this->parsingCss->value['old_maxH'] = $this->_maxH;\n                $this->parsingCss->value['old_overflow'] = $this->_isInOverflow;\n                $this->_isInOverflow = true;\n            } else {\n                $overW = null;\n                $overH = null;\n                $overflow = false;\n                $this->parsingCss->value['width']    = max($w, $this->parsingCss->value['width']);\n                $this->parsingCss->value['height']    = max($h, $this->parsingCss->value['height']);\n            }\n\n            switch($this->parsingCss->value['rotate'])\n            {\n                case 90:\n                    $tmp = $overH; $overH = $overW; $overW = $tmp;\n                    $tmp = $hReel; $hReel = $wReel; $wReel = $tmp;\n                    unset($tmp);\n                    $w = $this->parsingCss->value['height'];\n                    $h = $this->parsingCss->value['width'];\n                    $tX =-$h;\n                    $tY = 0;\n                    break;\n\n                case 180:\n                    $w = $this->parsingCss->value['width'];\n                    $h = $this->parsingCss->value['height'];\n                    $tX = -$w;\n                    $tY = -$h;\n                    break;\n\n                case 270:\n                    $tmp = $overH; $overH = $overW; $overW = $tmp;\n                    $tmp = $hReel; $hReel = $wReel; $wReel = $tmp;\n                    unset($tmp);\n                    $w = $this->parsingCss->value['height'];\n                    $h = $this->parsingCss->value['width'];\n                    $tX = 0;\n                    $tY =-$w;\n                    break;\n\n                default:\n                    $w = $this->parsingCss->value['width'];\n                    $h = $this->parsingCss->value['height'];\n                    $tX = 0;\n                    $tY = 0;\n                    break;\n            }\n\n            if (!$this->parsingCss->value['position']) {\n                if (\n                    $w < ($this->pdf->getW() - $this->pdf->getlMargin()-$this->pdf->getrMargin()) &&\n                    $this->pdf->getX() + $w>=($this->pdf->getW() - $this->pdf->getrMargin())\n                    )\n                    $this->_tag_open_BR(array());\n\n                if (\n                        ($h < ($this->pdf->getH() - $this->pdf->gettMargin()-$this->pdf->getbMargin())) &&\n                        ($this->pdf->getY() + $h>=($this->pdf->getH() - $this->pdf->getbMargin())) &&\n                        !$this->_isInOverflow\n                    )\n                    $this->_setNewPage();\n\n                $old = $this->parsingCss->getOldValues();\n                $parentWidth = $old['width'] ? $old['width'] : $this->pdf->getW() - $this->pdf->getlMargin() - $this->pdf->getrMargin();\n\n                if ($parentWidth>$w) {\n                    if ($alignObject=='center')        $this->pdf->setX($this->pdf->getX() + ($parentWidth-$w)*0.5);\n                    else if ($alignObject=='right')    $this->pdf->setX($this->pdf->getX() + $parentWidth-$w);\n                }\n\n                $this->parsingCss->setPosition();\n            } else {\n                $old = $this->parsingCss->getOldValues();\n                $parentWidth = $old['width'] ? $old['width'] : $this->pdf->getW() - $this->pdf->getlMargin() - $this->pdf->getrMargin();\n\n                if ($parentWidth>$w) {\n                    if ($alignObject=='center')        $this->pdf->setX($this->pdf->getX() + ($parentWidth-$w)*0.5);\n                    else if ($alignObject=='right')    $this->pdf->setX($this->pdf->getX() + $parentWidth-$w);\n                }\n\n                $this->parsingCss->setPosition();\n                $this->_saveMax();\n                $this->_maxX = 0;\n                $this->_maxY = 0;\n                $this->_maxH = 0;\n                $this->_maxE = 0;\n            }\n\n            if ($this->parsingCss->value['rotate']) {\n                $this->pdf->startTransform();\n                $this->pdf->setRotation($this->parsingCss->value['rotate']);\n                $this->pdf->setTranslate($tX, $tY);\n            }\n\n            $this->_drawRectangle(\n                $this->parsingCss->value['x'],\n                $this->parsingCss->value['y'],\n                $this->parsingCss->value['width'],\n                $this->parsingCss->value['height'],\n                $this->parsingCss->value['border'],\n                $this->parsingCss->value['padding'],\n                0,\n                $this->parsingCss->value['background']\n            );\n\n            $marge = array();\n            $marge['l'] = $this->parsingCss->value['border']['l']['width'] + $this->parsingCss->value['padding']['l']+0.03;\n            $marge['r'] = $this->parsingCss->value['border']['r']['width'] + $this->parsingCss->value['padding']['r']+0.03;\n            $marge['t'] = $this->parsingCss->value['border']['t']['width'] + $this->parsingCss->value['padding']['t']+0.03;\n            $marge['b'] = $this->parsingCss->value['border']['b']['width'] + $this->parsingCss->value['padding']['b']+0.03;\n\n            $this->parsingCss->value['width'] -= $marge['l']+$marge['r'];\n            $this->parsingCss->value['height']-= $marge['t']+$marge['b'];\n\n            $xCorr = 0;\n            $yCorr = 0;\n            if (!$this->_subPart && !$this->_isSubPart) {\n                switch($this->parsingCss->value['text-align'])\n                {\n                    case 'right':\n                        $xCorr = ($this->parsingCss->value['width']-$wReel);\n                        break;\n                    case 'center':\n                        $xCorr = ($this->parsingCss->value['width']-$wReel)*0.5;\n                        break;\n                }\n                if ($xCorr>0) $xCorr=0;\n                switch($this->parsingCss->value['vertical-align'])\n                {\n                    case 'bottom':\n                        $yCorr = ($this->parsingCss->value['height']-$hReel);\n                        break;\n                    case 'middle':\n                        $yCorr = ($this->parsingCss->value['height']-$hReel)*0.5;\n                        break;\n                }\n            }\n\n            if ($overflow) {\n                $overW-= $marge['l']+$marge['r'];\n                $overH-= $marge['t']+$marge['b'];\n                $this->pdf->clippingPathStart(\n                    $this->parsingCss->value['x']+$marge['l'],\n                    $this->parsingCss->value['y']+$marge['t'],\n                    $this->parsingCss->value['width'],\n                    $this->parsingCss->value['height']\n                );\n\n                $this->parsingCss->value['x']+= $xCorr;\n\n                // marges from the dimension of the content\n                $mL = $this->parsingCss->value['x']+$marge['l'];\n                $mR = $this->pdf->getW() - $mL - $overW;\n            } else {\n                // marges from the dimension of the div\n                $mL = $this->parsingCss->value['x']+$marge['l'];\n                $mR = $this->pdf->getW() - $mL - $this->parsingCss->value['width'];\n            }\n\n            $x = $this->parsingCss->value['x']+$marge['l'];\n            $y = $this->parsingCss->value['y']+$marge['t']+$yCorr;\n            $this->_saveMargin($mL, 0, $mR);\n            $this->pdf->setXY($x, $y);\n\n            $this->_setNewPositionForNewLine();\n\n            return true;\n        }\n\n        /**\n         * tag : BLOCKQUOTE\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_BLOCKQUOTE($param)\n        {\n            return $this->_tag_open_DIV($param, 'blockquote');\n        }\n\n        /**\n         * tag : LEGEND\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_LEGEND($param)\n        {\n            return $this->_tag_open_DIV($param, 'legend');\n        }\n\n        /**\n         * tag : FIELDSET\n         * mode : OPEN\n         *\n         * @author Pavel Kochman\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_FIELDSET($param)\n        {\n\n            $this->parsingCss->save();\n            $this->parsingCss->analyse('fieldset', $param);\n\n            // get height of LEGEND element and make fieldset corrections\n            for ($tempPos = $this->_parsePos + 1; $tempPos<count($this->parsingHtml->code); $tempPos++) {\n                $action = $this->parsingHtml->code[$tempPos];\n                if ($action['name'] == 'fieldset') break;\n                if ($action['name'] == 'legend' && !$action['close']) {\n                    $legendOpenPos = $tempPos;\n\n                    $sub = null;\n                    $this->_createSubHTML($sub);\n                    $sub->parsingHtml->code = $this->parsingHtml->getLevel($tempPos - 1);\n\n                    $res = null;\n                    for ($sub->_parsePos = 0; $sub->_parsePos<count($sub->parsingHtml->code); $sub->_parsePos++) {\n                        $action = $sub->parsingHtml->code[$sub->_parsePos];\n                        $sub->_executeAction($action);\n\n                        if ($action['name'] == 'legend' && $action['close'])\n                            break;\n                    }\n\n                    $legendH = $sub->_maxY;\n                    $this->_destroySubHTML($sub);\n\n                    $move = $this->parsingCss->value['padding']['t'] + $this->parsingCss->value['border']['t']['width'] + 0.03;\n\n                    $param['moveTop'] = $legendH / 2;\n\n                    $this->parsingHtml->code[$legendOpenPos]['param']['moveTop'] = - ($legendH / 2 + $move);\n                    $this->parsingHtml->code[$legendOpenPos]['param']['moveLeft'] = 2 - $this->parsingCss->value['border']['l']['width'] - $this->parsingCss->value['padding']['l'];\n                    $this->parsingHtml->code[$legendOpenPos]['param']['moveDown'] = $move;\n                    break;\n                }\n            }\n            $this->parsingCss->load();\n\n            return $this->_tag_open_DIV($param, 'fieldset');\n        }\n\n        /**\n         * tag : DIV\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @param  string $other name of tag that used the div tag\n         * @return boolean\n         */\n        protected function _tag_close_DIV($param, $other='div')\n        {\n            if ($this->_isForOneLine) return false;\n\n            if ($this->parsingCss->value['overflow']=='hidden') {\n                $this->_maxX = $this->parsingCss->value['old_maxX'];\n                $this->_maxY = $this->parsingCss->value['old_maxY'];\n                $this->_maxH = $this->parsingCss->value['old_maxH'];\n                $this->_isInOverflow = $this->parsingCss->value['old_overflow'];\n                $this->pdf->clippingPathStop();\n            }\n\n            if ($this->parsingCss->value['rotate'])\n                $this->pdf->stopTransform();\n\n            $marge = array();\n            $marge['l'] = $this->parsingCss->value['border']['l']['width'] + $this->parsingCss->value['padding']['l']+0.03;\n            $marge['r'] = $this->parsingCss->value['border']['r']['width'] + $this->parsingCss->value['padding']['r']+0.03;\n            $marge['t'] = $this->parsingCss->value['border']['t']['width'] + $this->parsingCss->value['padding']['t']+0.03;\n            $marge['b'] = $this->parsingCss->value['border']['b']['width'] + $this->parsingCss->value['padding']['b']+0.03;\n\n            $x = $this->parsingCss->value['x'];\n            $y = $this->parsingCss->value['y'];\n            $w = $this->parsingCss->value['width']+$marge['l']+$marge['r']+$this->parsingCss->value['margin']['r'];\n            $h = $this->parsingCss->value['height']+$marge['t']+$marge['b']+$this->parsingCss->value['margin']['b'];\n\n            switch($this->parsingCss->value['rotate'])\n            {\n                case 90:\n                    $t = $w; $w = $h; $h = $t;\n                    break;\n\n                case 270:\n                    $t = $w; $w = $h; $h = $t;\n                    break;\n\n                default:\n                    break;\n            }\n\n\n            if ($this->parsingCss->value['position']!='absolute') {\n                $this->pdf->setXY($x+$w, $y);\n\n                $this->_maxX = max($this->_maxX, $x+$w);\n                $this->_maxY = max($this->_maxY, $y+$h);\n                $this->_maxH = max($this->_maxH, $h);\n            } else {\n                $this->pdf->setXY($this->parsingCss->value['xc'], $this->parsingCss->value['yc']);\n\n                $this->_loadMax();\n            }\n\n            $block = ($this->parsingCss->value['display']!='inline' && $this->parsingCss->value['position']!='absolute');\n\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n            $this->_loadMargin();\n\n            if ($block) $this->_tag_open_BR(array());\n            if ($this->_debugActif) $this->_DEBUG_add(strtoupper($other), false);\n\n            return true;\n        }\n\n        /**\n         * tag : BLOCKQUOTE\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_BLOCKQUOTE($param)\n        {\n            return $this->_tag_close_DIV($param, 'blockquote');\n        }\n\n        /**\n         * tag : FIELDSET\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_FIELDSET($param)\n        {\n            return $this->_tag_close_DIV($param, 'fieldset');\n        }\n\n        /**\n         * tag : LEGEND\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_LEGEND($param)\n        {\n            return $this->_tag_close_DIV($param, 'legend');\n        }\n\n        /**\n         * tag : BARCODE\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_BARCODE($param)\n        {\n            // for  compatibility with old versions < 3.29\n            $lstBarcode = array();\n            $lstBarcode['UPC_A']  =    'UPCA';\n            $lstBarcode['CODE39'] =    'C39';\n\n            if (!isset($param['type']))     $param['type'] = 'C39';\n            if (!isset($param['value']))    $param['value']    = 0;\n            if (!isset($param['label']))    $param['label']    = 'label';\n            if (!isset($param['style']['color'])) $param['style']['color'] = '#000000';\n\n            if ($this->_testIsDeprecated && (isset($param['bar_h']) || isset($param['bar_w'])))\n                throw new HTML2PDF_exception(9, array('BARCODE', 'bar_h, bar_w'));\n\n            $param['type'] = strtoupper($param['type']);\n            if (isset($lstBarcode[$param['type']])) $param['type'] = $lstBarcode[$param['type']];\n\n            $this->parsingCss->save();\n            $this->parsingCss->analyse('barcode', $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            $x = $this->pdf->getX();\n            $y = $this->pdf->getY();\n            $w = $this->parsingCss->value['width'];    if (!$w) $w = $this->parsingCss->ConvertToMM('50mm');\n            $h = $this->parsingCss->value['height'];    if (!$h) $h = $this->parsingCss->ConvertToMM('10mm');\n            $txt = ($param['label']!=='none' ? $this->parsingCss->value['font-size'] : false);\n            $c = $this->parsingCss->value['color'];\n            $infos = $this->pdf->myBarcode($param['value'], $param['type'], $x, $y, $w, $h, $txt, $c);\n\n            $this->_maxX = max($this->_maxX, $x+$infos[0]);\n            $this->_maxY = max($this->_maxY, $y+$infos[1]);\n            $this->_maxH = max($this->_maxH, $infos[1]);\n            $this->_maxE++;\n\n            $this->pdf->setXY($x+$infos[0], $y);\n\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : BARCODE\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_BARCODE($param)\n        {\n            // there is nothing to do here\n\n            return true;\n        }\n\n        /**\n         * tag : QRCODE\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_QRCODE($param)\n        {\n            if ($this->_testIsDeprecated && (isset($param['size']) || isset($param['noborder'])))\n                throw new HTML2PDF_exception(9, array('QRCODE', 'size, noborder'));\n\n            if ($this->_debugActif) $this->_DEBUG_add('QRCODE');\n\n            if (!isset($param['value']))                     $param['value'] = '';\n            if (!isset($param['ec']))                        $param['ec'] = 'H';\n            if (!isset($param['style']['color']))            $param['style']['color'] = '#000000';\n            if (!isset($param['style']['background-color'])) $param['style']['background-color'] = '#FFFFFF';\n            if (isset($param['style']['border'])) {\n                $borders = $param['style']['border']!='none';\n                unset($param['style']['border']);\n            } else {\n                $borders = true;\n            }\n\n            if ($param['value']==='') return true;\n            if (!in_array($param['ec'], array('L', 'M', 'Q', 'H'))) $param['ec'] = 'H';\n\n            $this->parsingCss->save();\n            $this->parsingCss->analyse('qrcode', $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            $x = $this->pdf->getX();\n            $y = $this->pdf->getY();\n            $w = $this->parsingCss->value['width'];\n            $h = $this->parsingCss->value['height'];\n            $size = max($w, $h); if (!$size) $size = $this->parsingCss->ConvertToMM('50mm');\n\n            $style = array(\n                    'fgcolor' => $this->parsingCss->value['color'],\n                    'bgcolor' => $this->parsingCss->value['background']['color'],\n                );\n\n            if ($borders) {\n                $style['border'] = true;\n                $style['padding'] = 'auto';\n            } else {\n                $style['border'] = false;\n                $style['padding'] = 0;\n            }\n\n            if (!$this->_subPart && !$this->_isSubPart) {\n                $this->pdf->write2DBarcode($param['value'], 'QRCODE,'.$param['ec'], $x, $y, $size, $size, $style);\n            }\n\n            $this->_maxX = max($this->_maxX, $x+$size);\n            $this->_maxY = max($this->_maxY, $y+$size);\n            $this->_maxH = max($this->_maxH, $size);\n            $this->_maxE++;\n\n            $this->pdf->setX($x+$size);\n\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : QRCODE\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_QRCODE($param)\n        {\n            // there is nothing to do here\n\n            return true;\n        }\n\n        /**\n         * tag : BOOKMARK\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_BOOKMARK($param)\n        {\n            $titre = isset($param['title']) ? trim($param['title']) : '';\n            $level = isset($param['level']) ? floor($param['level']) : 0;\n\n            if ($level<0) $level = 0;\n            if ($titre) $this->pdf->Bookmark($titre, $level, -1);\n\n            return true;\n        }\n\n        /**\n         * tag : BOOKMARK\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_BOOKMARK($param)\n        {\n            // there is nothing to do here\n\n            return true;\n        }\n\n        /**\n         * this is not a real TAG, it is just to write texts\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_WRITE($param)\n        {\n            $fill = ($this->parsingCss->value['background']['color']!==null && $this->parsingCss->value['background']['image']===null);\n            if (in_array($this->parsingCss->value['id_tag'], array('fieldset', 'legend', 'div', 'table', 'tr', 'td', 'th'))) {\n                $fill = false;\n            }\n\n            // get the text to write\n            $txt = $param['txt'];\n\n            if ($this->_isAfterFloat) {\n                $txt = ltrim($txt);\n                $this->_isAfterFloat = false;\n            }\n\n            $txt = str_replace('[[page_nb]]', $this->pdf->getMyAliasNbPages(), $txt);\n            $txt = str_replace('[[page_cu]]', $this->pdf->getMyNumPage($this->_page), $txt);\n\n            if ($this->parsingCss->value['text-transform']!='none') {\n                if ($this->parsingCss->value['text-transform']=='capitalize')\n                    $txt = ucwords($txt);\n                else if ($this->parsingCss->value['text-transform']=='uppercase')\n                    $txt = strtoupper($txt);\n                else if ($this->parsingCss->value['text-transform']=='lowercase')\n                    $txt = strtolower($txt);\n            }\n\n            // size of the text\n            $h  = 1.08*$this->parsingCss->value['font-size'];\n            $dh = $h*$this->parsingCss->value['mini-decal'];\n            $lh = $this->parsingCss->getLineHeight();\n\n            // identify the align\n            $align = 'L';\n            if ($this->parsingCss->value['text-align']=='li_right') {\n                $w = $this->parsingCss->value['width'];\n                $align = 'R';\n            }\n\n            // calculate the width of each words, and of all the sentence\n            $w = 0;\n            $words = explode(' ', $txt);\n            foreach ($words as $k => $word) {\n                $words[$k] = array($word, $this->pdf->GetStringWidth($word));\n                $w+= $words[$k][1];\n            }\n            $space = $this->pdf->GetStringWidth(' ');\n            $w+= $space*(count($words)-1);\n\n            // position in the text\n            $currPos = 0;\n\n            // the bigger width of the text, after automatic break line\n            $maxX = 0;\n\n            // position of the text\n            $x = $this->pdf->getX();\n            $y = $this->pdf->getY();\n            $dy = $this->_getElementY($lh);\n\n            // margins\n            list($left, $right) = $this->_getMargins($y);\n\n            // number of lines after automatic break line\n            $nb = 0;\n\n            // while we have words, and the text does not fit on the line => we cut the sentence\n            while ($x+$w>$right && $x<$right+$space && count($words)) {\n                // adding words 1 by 1 to fit on the line\n                $i=0;\n                $old = array('', 0);\n                $str = $words[0];\n                $add = false;\n                while (($x+$str[1])<$right) {\n                    $i++;\n                    $add = true;\n\n                    array_shift($words);\n                    $old = $str;\n\n                    if (!count($words)) break;\n                    $str[0].= ' '.$words[0][0];\n                    $str[1]+= $space+$words[0][1];\n                }\n                $str = $old;\n\n                // if  nothing fit on the line, and if the first word does not fit on the line => the word is too long, we put it\n                if ($i==0 && (($left+$words[0][1])>=$right)) {\n                    $str = $words[0];\n                    array_shift($words);\n                    $i++;\n                    $add = true;\n                }\n                $currPos+= ($currPos ? 1 : 0)+strlen($str[0]);\n\n                // write the extract sentence that fit on the page\n                $wc = ($align=='L' ? $str[1] : $this->parsingCss->value['width']);\n                if ($right - $left<$wc) $wc = $right - $left;\n\n                if (strlen($str[0])) {\n                    $this->pdf->setXY($this->pdf->getX(), $y+$dh+$dy);\n                    $this->pdf->Cell($wc, $h, $str[0], 0, 0, $align, $fill, $this->_isInLink);\n                    $this->pdf->setXY($this->pdf->getX(), $y);\n                }\n                $this->_maxH = max($this->_maxH, $lh);\n\n                // max width\n                $maxX = max($maxX, $this->pdf->getX());\n\n                // new position and new width for the \"while\"\n                $w-= $str[1];\n                $y = $this->pdf->getY();\n                $x = $this->pdf->getX();\n                $dy = $this->_getElementY($lh);\n\n                // if we have again words to write\n                if (count($words)) {\n                    // remove the space at the end\n                    if ($add) $w-= $space;\n\n                    // if we don't add any word, and if the first word is empty => useless space to skip\n                    if (!$add && $words[0][0]==='') {\n                        array_shift($words);\n                    }\n\n                    // if it is just to calculate for one line => adding the number of words\n                    if ($this->_isForOneLine) {\n                        $this->_maxE+= $i;\n                        $this->_maxX = max($this->_maxX, $maxX);\n                        return null;\n                    }\n\n                    // automatic line break\n                    $this->_tag_open_BR(array('style' => ''), $currPos);\n\n                    // new position\n                    $y = $this->pdf->getY();\n                    $x = $this->pdf->getX();\n                    $dy = $this->_getElementY($lh);\n\n                    // if the next line does  not fit on the page => new page\n                    if ($y + $h>=$this->pdf->getH() - $this->pdf->getbMargin()) {\n                        if (!$this->_isInOverflow && !$this->_isInFooter) {\n                            $this->_setNewPage(null, '', null, $currPos);\n                            $y = $this->pdf->getY();\n                            $x = $this->pdf->getX();\n                            $dy = $this->_getElementY($lh);\n                        }\n                    }\n\n                    // if more than 10000 line => error\n                    $nb++;\n                    if ($nb>10000) {\n                        $txt = ''; foreach ($words as $k => $word) $txt.= ($k ? ' ' : '').$word[0];\n                        throw new HTML2PDF_exception(2, array($txt, $right-$left, $w));\n                    }\n\n                    // new margins for the new line\n                    list($left, $right) = $this->_getMargins($y);\n                }\n            }\n\n            // if we have words after automatic cut, it is because they fit on the line => we write the text\n            if (count($words)) {\n                $txt = ''; foreach ($words as $k => $word) $txt.= ($k ? ' ' : '').$word[0];\n                $w+= $this->pdf->getWordSpacing()*(count($words));\n                $this->pdf->setXY($this->pdf->getX(), $y+$dh+$dy);\n                $this->pdf->Cell(($align=='L' ? $w : $this->parsingCss->value['width']), $h, $txt, 0, 0, $align, $fill, $this->_isInLink);\n                $this->pdf->setXY($this->pdf->getX(), $y);\n                $this->_maxH = max($this->_maxH, $lh);\n                $this->_maxE+= count($words);\n            }\n\n            $maxX = max($maxX, $this->pdf->getX());\n            $maxY = $this->pdf->getY()+$h;\n\n            $this->_maxX = max($this->_maxX, $maxX);\n            $this->_maxY = max($this->_maxY, $maxY);\n\n            return true;\n        }\n\n        /**\n         * tag : BR\n         * mode : OPEN\n         *\n         * @param  array   $param\n         * @param  integer $curr real position in the html parseur (if break line in the write of a text)\n         * @return boolean\n         */\n        protected function _tag_open_BR($param, $curr = null)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $h = max($this->_maxH, $this->parsingCss->getLineHeight());\n\n            if ($this->_maxH==0) $this->_maxY = max($this->_maxY, $this->pdf->getY()+$h);\n\n            $this->_makeBreakLine($h, $curr);\n\n            $this->_maxH = 0;\n            $this->_maxE = 0;\n\n            return true;\n        }\n\n        /**\n         * tag : HR\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_HR($param)\n        {\n            if ($this->_isForOneLine) return false;\n            $oldAlign = $this->parsingCss->value['text-align'];\n            $this->parsingCss->value['text-align'] = 'left';\n\n            if ($this->_maxH) $this->_tag_open_BR($param);\n\n            $fontSize = $this->parsingCss->value['font-size'];\n            $this->parsingCss->value['font-size']=$fontSize*0.5; $this->_tag_open_BR($param);\n            $this->parsingCss->value['font-size']=0;\n\n            $param['style']['width'] = '100%';\n\n            $this->parsingCss->save();\n            $this->parsingCss->value['height']=$this->parsingCss->ConvertToMM('1mm');\n\n            $this->parsingCss->analyse('hr', $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            $h = $this->parsingCss->value['height'];\n            if ($h)    $h-= $this->parsingCss->value['border']['t']['width']+$this->parsingCss->value['border']['b']['width'];\n            if ($h<=0) $h = $this->parsingCss->value['border']['t']['width']+$this->parsingCss->value['border']['b']['width'];\n\n            $this->_drawRectangle($this->pdf->getX(), $this->pdf->getY(), $this->parsingCss->value['width'], $h, $this->parsingCss->value['border'], 0, 0, $this->parsingCss->value['background']);\n            $this->_maxH = $h;\n\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            $this->_tag_open_BR($param);\n\n            $this->parsingCss->value['font-size']=$fontSize*0.5; $this->_tag_open_BR($param);\n            $this->parsingCss->value['font-size']=$fontSize;\n\n            $this->parsingCss->value['text-align'] = $oldAlign;\n            $this->_setNewPositionForNewLine();\n\n            return true;\n        }\n\n        /**\n         * tag : B\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @param  string $other\n         * @return boolean\n         */\n        protected function _tag_open_B($param, $other = 'b')\n        {\n            $this->parsingCss->save();\n            $this->parsingCss->value['font-bold'] = true;\n            $this->parsingCss->analyse($other, $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : STRONG\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_STRONG($param)\n        {\n            return $this->_tag_open_B($param, 'strong');\n        }\n\n        /**\n         * tag : B\n         * mode : CLOSE\n         *\n         * @param    array $param\n         * @return boolean\n         */\n        protected function _tag_close_B($param)\n        {\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : STRONG\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_STRONG($param)\n        {\n            return $this->_tag_close_B($param);\n        }\n\n        /**\n         * tag : I\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @param  string $other\n         * @return boolean\n         */\n        protected function _tag_open_I($param, $other = 'i')\n        {\n            $this->parsingCss->save();\n            $this->parsingCss->value['font-italic'] = true;\n            $this->parsingCss->analyse($other, $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : ADDRESS\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_ADDRESS($param)\n        {\n            return $this->_tag_open_I($param, 'address');\n        }\n\n        /**\n         * tag : CITE\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_CITE($param)\n        {\n            return $this->_tag_open_I($param, 'cite');\n        }\n\n        /**\n         * tag : EM\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_EM($param)\n        {\n            return $this->_tag_open_I($param, 'em');\n        }\n\n        /**\n         * tag : SAMP\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_SAMP($param)\n        {\n            return $this->_tag_open_I($param, 'samp');\n        }\n\n        /**\n         * tag : I\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_I($param)\n        {\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : ADDRESS\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_ADDRESS($param)\n        {\n            return $this->_tag_close_I($param);\n        }\n\n        /**\n         * tag : CITE\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_CITE($param)\n        {\n            return $this->_tag_close_I($param);\n        }\n\n        /**\n         * tag : EM\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_EM($param)\n        {\n            return $this->_tag_close_I($param);\n        }\n\n        /**\n         * tag : SAMP\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_SAMP($param)\n        {\n            return $this->_tag_close_I($param);\n        }\n\n        /**\n         * tag : S\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @param  string $other\n         * @return boolean\n         */\n        protected function _tag_open_S($param, $other = 's')\n        {\n            $this->parsingCss->save();\n            $this->parsingCss->value['font-linethrough'] = true;\n            $this->parsingCss->analyse($other, $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : DEL\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_DEL($param)\n        {\n            return $this->_tag_open_S($param, 'del');\n        }\n\n        /**\n         * tag : S\n         * mode : CLOSE\n         *\n         * @param    array $param\n         * @return boolean\n         */\n        protected function _tag_close_S($param)\n        {\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : DEL\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_DEL($param)\n        {\n            return $this->_tag_close_S($param);\n        }\n\n        /**\n         * tag : U\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @param  string $other\n         * @return boolean\n         */\n        protected function _tag_open_U($param, $other='u')\n        {\n            $this->parsingCss->save();\n            $this->parsingCss->value['font-underline'] = true;\n            $this->parsingCss->analyse($other, $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : INS\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_INS($param)\n        {\n            return $this->_tag_open_U($param, 'ins');\n        }\n\n        /**\n         * tag : U\n         * mode : CLOSE\n         *\n         * @param    array $param\n         * @return boolean\n         */\n        protected function _tag_close_U($param)\n        {\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : INS\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_INS($param)\n        {\n            return $this->_tag_close_U($param);\n        }\n\n        /**\n         * tag : A\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_A($param)\n        {\n            $this->_isInLink = str_replace('&amp;', '&', isset($param['href']) ? $param['href'] : '');\n\n            if (isset($param['name'])) {\n                $name =     $param['name'];\n                if (!isset($this->_lstAnchor[$name])) $this->_lstAnchor[$name] = array($this->pdf->AddLink(), false);\n\n                if (!$this->_lstAnchor[$name][1]) {\n                    $this->_lstAnchor[$name][1] = true;\n                    $this->pdf->SetLink($this->_lstAnchor[$name][0], -1, -1);\n                }\n            }\n\n            if (preg_match('/^#([^#]+)$/isU', $this->_isInLink, $match)) {\n                $name = $match[1];\n                if (!isset($this->_lstAnchor[$name])) $this->_lstAnchor[$name] = array($this->pdf->AddLink(), false);\n\n                $this->_isInLink = $this->_lstAnchor[$name][0];\n            }\n\n            $this->parsingCss->save();\n            $this->parsingCss->value['font-underline'] = true;\n            $this->parsingCss->value['color'] = array(20, 20, 250);\n            $this->parsingCss->analyse('a', $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : A\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_A($param)\n        {\n            $this->_isInLink    = '';\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : H1\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @param  string $other\n         * @return boolean\n         */\n        protected function _tag_open_H1($param, $other = 'h1')\n        {\n            if ($this->_isForOneLine) return false;\n\n            if ($this->_maxH) $this->_tag_open_BR(array());\n            $this->parsingCss->save();\n            $this->parsingCss->value['font-bold'] = true;\n\n            $size = array('h1' => '28px', 'h2' => '24px', 'h3' => '20px', 'h4' => '16px', 'h5' => '12px', 'h6' => '9px');\n            $this->parsingCss->value['margin']['l'] = 0;\n            $this->parsingCss->value['margin']['r'] = 0;\n            $this->parsingCss->value['margin']['t'] = $this->parsingCss->ConvertToMM('16px');\n            $this->parsingCss->value['margin']['b'] = $this->parsingCss->ConvertToMM('16px');\n            $this->parsingCss->value['font-size'] = $this->parsingCss->ConvertToMM($size[$other]);\n\n            $this->parsingCss->analyse($other, $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n            $this->_setNewPositionForNewLine();\n\n            return true;\n        }\n\n        /**\n         * tag : H2\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_H2($param)\n        {\n            return $this->_tag_open_H1($param, 'h2');\n        }\n\n        /**\n         * tag : H3\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_H3($param)\n        {\n            return $this->_tag_open_H1($param, 'h3');\n        }\n\n        /**\n         * tag : H4\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_H4($param)\n        {\n            return $this->_tag_open_H1($param, 'h4');\n        }\n\n        /**\n         * tag : H5\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_H5($param)\n        {\n            return $this->_tag_open_H1($param, 'h5');\n        }\n\n        /**\n         * tag : H6\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_H6($param)\n        {\n            return $this->_tag_open_H1($param, 'h6');\n        }\n\n        /**\n         * tag : H1\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_H1($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->_maxH+= $this->parsingCss->value['margin']['b'];\n            $h = max($this->_maxH, $this->parsingCss->getLineHeight());\n\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            $this->_makeBreakLine($h);\n            $this->_maxH = 0;\n\n            $this->_maxY = max($this->_maxY, $this->pdf->getY());\n\n            return true;\n        }\n\n        /**\n         * tag : H2\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_H2($param)\n        {\n            return $this->_tag_close_H1($param);\n        }\n\n        /**\n         * tag : H3\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_H3($param)\n        {\n            return $this->_tag_close_H1($param);\n        }\n\n        /**\n         * tag : H4\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_H4($param)\n        {\n            return $this->_tag_close_H1($param);\n        }\n\n        /**\n         * tag : H5\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_H5($param)\n        {\n            return $this->_tag_close_H1($param);\n        }\n\n        /**\n         * tag : H6\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_H6($param)\n        {\n            return $this->_tag_close_H1($param);\n        }\n\n        /**\n         * tag : SPAN\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @param  string $other\n         * @return boolean\n         */\n        protected function _tag_open_SPAN($param, $other = 'span')\n        {\n            $this->parsingCss->save();\n            $this->parsingCss->analyse($other, $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : FONT\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_FONT($param)\n        {\n            return $this->_tag_open_SPAN($param, 'font');\n        }\n\n        /**\n         * tag : LABEL\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_LABEL($param)\n        {\n            return $this->_tag_open_SPAN($param, 'label');\n        }\n\n        /**\n         * tag : SPAN\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_SPAN($param)\n        {\n            $this->parsingCss->restorePosition();\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : FONT\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_FONT($param)\n        {\n            return $this->_tag_close_SPAN($param);\n        }\n\n        /**\n         * tag : LABEL\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_LABEL($param)\n        {\n            return $this->_tag_close_SPAN($param);\n        }\n\n        /**\n         * tag : P\n         * mode : OPEN\n         *\n         * @param    array $param\n         * @return boolean\n         */\n        protected function _tag_open_P($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            if (!in_array($this->_previousCall, array('_tag_close_P', '_tag_close_UL'))) {\n                if ($this->_maxH) $this->_tag_open_BR(array());\n            }\n\n            $this->parsingCss->save();\n            $this->parsingCss->analyse('p', $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n             // cancel the effects of the setPosition\n            $this->pdf->setXY($this->pdf->getX()-$this->parsingCss->value['margin']['l'], $this->pdf->getY()-$this->parsingCss->value['margin']['t']);\n\n            list($mL, $mR) = $this->_getMargins($this->pdf->getY());\n            $mR = $this->pdf->getW()-$mR;\n            $mL+= $this->parsingCss->value['margin']['l']+$this->parsingCss->value['padding']['l'];\n            $mR+= $this->parsingCss->value['margin']['r']+$this->parsingCss->value['padding']['r'];\n            $this->_saveMargin($mL, 0, $mR);\n\n            if ($this->parsingCss->value['text-indent']>0) {\n                $y = $this->pdf->getY()+$this->parsingCss->value['margin']['t']+$this->parsingCss->value['padding']['t'];\n                $this->_pageMarges[floor($y*100)] = array($mL+$this->parsingCss->value['text-indent'], $this->pdf->getW()-$mR);\n                $y+= $this->parsingCss->getLineHeight()*0.1;\n                $this->_pageMarges[floor($y*100)] = array($mL, $this->pdf->getW()-$mR);\n            }\n            $this->_makeBreakLine($this->parsingCss->value['margin']['t']+$this->parsingCss->value['padding']['t']);\n            $this->_isInParagraph = array($mL, $mR);\n            return true;\n        }\n\n        /**\n         * tag : P\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_P($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            if ($this->_maxH) $this->_tag_open_BR(array());\n            $this->_isInParagraph = false;\n            $this->_loadMargin();\n            $h = $this->parsingCss->value['margin']['b']+$this->parsingCss->value['padding']['b'];\n\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n            $this->_makeBreakLine($h);\n\n            return true;\n        }\n\n        /**\n         * tag : PRE\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @param  string $other\n         * @return boolean\n         */\n        protected function _tag_open_PRE($param, $other = 'pre')\n        {\n            if ($other=='pre' && $this->_maxH) $this->_tag_open_BR(array());\n\n            $this->parsingCss->save();\n            $this->parsingCss->value['font-family'] = 'courier';\n            $this->parsingCss->analyse($other, $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            if ($other=='pre') return $this->_tag_open_DIV($param, $other);\n\n            return true;\n        }\n\n        /**\n         * tag : CODE\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @param  string $other\n         * @return boolean\n         */\n        protected function _tag_open_CODE($param)\n        {\n            return $this->_tag_open_PRE($param, 'code');\n        }\n\n        /**\n         * tag : PRE\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @param  string $other\n         * @return boolean\n         */\n        protected function _tag_close_PRE($param, $other = 'pre')\n        {\n            if ($other=='pre') {\n                if ($this->_isForOneLine) return false;\n\n                $this->_tag_close_DIV($param, $other);\n                $this->_tag_open_BR(array());\n            }\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : CODE\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_CODE($param)\n        {\n            return $this->_tag_close_PRE($param, 'code');\n        }\n\n        /**\n         * tag : BIG\n         * mode : OPEN\n         *\n         * @param    array $param\n         * @return boolean\n         */\n        protected function _tag_open_BIG($param)\n        {\n            $this->parsingCss->save();\n            $this->parsingCss->value['mini-decal']-= $this->parsingCss->value['mini-size']*0.12;\n            $this->parsingCss->value['mini-size'] *= 1.2;\n            $this->parsingCss->analyse('big', $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n            return true;\n        }\n\n        /**\n         * tag : BIG\n         * mode : CLOSE\n         *\n         * @param    array $param\n         * @return boolean\n         */\n        protected function _tag_close_BIG($param)\n        {\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : SMALL\n         * mode : OPEN\n         *\n         * @param    array $param\n         * @return boolean\n         */\n        protected function _tag_open_SMALL($param)\n        {\n            $this->parsingCss->save();\n            $this->parsingCss->value['mini-decal']+= $this->parsingCss->value['mini-size']*0.05;\n            $this->parsingCss->value['mini-size'] *= 0.82;\n            $this->parsingCss->analyse('small', $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n            return true;\n        }\n\n        /**\n         * tag : SMALL\n         * mode : CLOSE\n         *\n         * @param    array $param\n         * @return boolean\n         */\n        protected function _tag_close_SMALL($param)\n        {\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : SUP\n         * mode : OPEN\n         *\n         * @param    array $param\n         * @return boolean\n         */\n        protected function _tag_open_SUP($param)\n        {\n            $this->parsingCss->save();\n            $this->parsingCss->value['mini-decal']-= $this->parsingCss->value['mini-size']*0.15;\n            $this->parsingCss->value['mini-size'] *= 0.75;\n            $this->parsingCss->analyse('sup', $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : SUP\n         * mode : CLOSE\n         *\n         * @param    array $param\n         * @return boolean\n         */\n        protected function _tag_close_SUP($param)\n        {\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : SUB\n         * mode : OPEN\n         *\n         * @param    array $param\n         * @return boolean\n         */\n        protected function _tag_open_SUB($param)\n        {\n            $this->parsingCss->save();\n            $this->parsingCss->value['mini-decal']+= $this->parsingCss->value['mini-size']*0.15;\n            $this->parsingCss->value['mini-size'] *= 0.75;\n            $this->parsingCss->analyse('sub', $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n            return true;\n        }\n\n        /**\n         * tag : SUB\n         * mode : CLOSE\n         *\n         * @param    array $param\n         * @return boolean\n         */\n        protected function _tag_close_SUB($param)\n        {\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : UL\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @param  string $other\n         * @return boolean\n         */\n        protected function _tag_open_UL($param, $other = 'ul')\n        {\n            if ($this->_isForOneLine) return false;\n\n            if (!in_array($this->_previousCall, array('_tag_close_P', '_tag_close_UL'))) {\n                if ($this->_maxH) $this->_tag_open_BR(array());\n                if (!count($this->_defList)) $this->_tag_open_BR(array());\n            }\n\n            if (!isset($param['style']['width'])) $param['allwidth'] = true;\n            $param['cellspacing'] = 0;\n\n            // a list is like a table\n            $this->_tag_open_TABLE($param, $other);\n\n            // add a level of list\n            $this->_listeAddLevel($other, $this->parsingCss->value['list-style-type'], $this->parsingCss->value['list-style-image']);\n\n            return true;\n        }\n\n        /**\n         * tag : OL\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_OL($param)\n        {\n            return $this->_tag_open_UL($param, 'ol');\n        }\n\n        /**\n         * tag : UL\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_UL($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->_tag_close_TABLE($param);\n\n            $this->_listeDelLevel();\n\n            if (!$this->_subPart) {\n                if (!count($this->_defList)) $this->_tag_open_BR(array());\n            }\n\n            return true;\n        }\n\n        /**\n         * tag : OL\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_OL($param)\n        {\n            return $this->_tag_close_UL($param);\n        }\n\n        /**\n         * tag : LI\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_LI($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->_listeAddLi();\n\n            if (!isset($param['style']['width'])) $param['style']['width'] = '100%';\n\n            $paramPUCE = $param;\n\n            $inf = $this->_listeGetLi();\n            if ($inf[0]) {\n                $paramPUCE['style']['font-family']     = $inf[0];\n                $paramPUCE['style']['text-align']      = 'li_right';\n                $paramPUCE['style']['vertical-align']  = 'top';\n                $paramPUCE['style']['width']           = $this->_listeGetWidth();\n                $paramPUCE['style']['padding-right']   = $this->_listeGetPadding();\n                $paramPUCE['txt'] = $inf[2];\n            } else {\n                $paramPUCE['style']['text-align']      = 'li_right';\n                $paramPUCE['style']['vertical-align']  = 'top';\n                $paramPUCE['style']['width']           = $this->_listeGetWidth();\n                $paramPUCE['style']['padding-right']   = $this->_listeGetPadding();\n                $paramPUCE['src'] = $inf[2];\n                $paramPUCE['sub_li'] = true;\n            }\n\n            $this->_tag_open_TR($param, 'li');\n\n            $this->parsingCss->save();\n\n            // if small LI\n            if ($inf[1]) {\n                $this->parsingCss->value['mini-decal']+= $this->parsingCss->value['mini-size']*0.045;\n                $this->parsingCss->value['mini-size'] *= 0.75;\n            }\n\n            // if we are in a sub html => prepare. Else : display\n            if ($this->_subPart) {\n                // TD for the puce\n                $tmpPos = $this->_tempPos;\n                $tmpLst1 = $this->parsingHtml->code[$tmpPos+1];\n                $tmpLst2 = $this->parsingHtml->code[$tmpPos+2];\n                $this->parsingHtml->code[$tmpPos+1] = array();\n                $this->parsingHtml->code[$tmpPos+1]['name']    = (isset($paramPUCE['src'])) ? 'img' : 'write';\n                $this->parsingHtml->code[$tmpPos+1]['param']    = $paramPUCE; unset($this->parsingHtml->code[$tmpPos+1]['param']['style']['width']);\n                $this->parsingHtml->code[$tmpPos+1]['close']    = 0;\n                $this->parsingHtml->code[$tmpPos+2] = array();\n                $this->parsingHtml->code[$tmpPos+2]['name']    = 'li';\n                $this->parsingHtml->code[$tmpPos+2]['param']    = $paramPUCE;\n                $this->parsingHtml->code[$tmpPos+2]['close']    = 1;\n                $this->_tag_open_TD($paramPUCE, 'li_sub');\n                $this->_tag_close_TD($param);\n                $this->_tempPos = $tmpPos;\n                $this->parsingHtml->code[$tmpPos+1] = $tmpLst1;\n                $this->parsingHtml->code[$tmpPos+2] = $tmpLst2;\n            } else {\n                // TD for the puce\n                $this->_tag_open_TD($paramPUCE, 'li_sub');\n                unset($paramPUCE['style']['width']);\n                if (isset($paramPUCE['src']))    $this->_tag_open_IMG($paramPUCE);\n                else                            $this->_tag_open_WRITE($paramPUCE);\n                $this->_tag_close_TD($paramPUCE);\n            }\n            $this->parsingCss->load();\n\n\n            // TD for the content\n            $this->_tag_open_TD($param, 'li');\n\n            return true;\n        }\n\n        /**\n         * tag : LI\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_LI($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->_tag_close_TD($param);\n\n            $this->_tag_close_TR($param);\n\n            return true;\n        }\n\n        /**\n         * tag : TBODY\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_TBODY($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->parsingCss->save();\n            $this->parsingCss->analyse('tbody', $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : TBODY\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_TBODY($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : THEAD\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_THEAD($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->parsingCss->save();\n            $this->parsingCss->analyse('thead', $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            // if we are in a sub part, save the number of the first TR in the thead\n            if ($this->_subPart) {\n                HTML2PDF::$_tables[$param['num']]['thead']['tr'][0] = HTML2PDF::$_tables[$param['num']]['tr_curr'];\n                HTML2PDF::$_tables[$param['num']]['thead']['code'] = array();\n                for ($pos=$this->_tempPos; $pos<count($this->parsingHtml->code); $pos++) {\n                    $action = $this->parsingHtml->code[$pos];\n                    if (strtolower($action['name'])=='thead') $action['name'] = 'thead_sub';\n                    HTML2PDF::$_tables[$param['num']]['thead']['code'][] = $action;\n                    if (strtolower($action['name'])=='thead_sub' && $action['close']) break;\n                }\n            } else {\n                $level = $this->parsingHtml->getLevel($this->_parsePos);\n                $this->_parsePos+= count($level);\n                HTML2PDF::$_tables[$param['num']]['tr_curr']+= count(HTML2PDF::$_tables[$param['num']]['thead']['tr']);\n            }\n\n            return true;\n        }\n\n        /**\n         * tag : THEAD\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_THEAD($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            // if we are in a sub HTM, construct the list of the TR in the thead\n            if ($this->_subPart) {\n                $min = HTML2PDF::$_tables[$param['num']]['thead']['tr'][0];\n                $max = HTML2PDF::$_tables[$param['num']]['tr_curr']-1;\n                HTML2PDF::$_tables[$param['num']]['thead']['tr'] = range($min, $max);\n            }\n\n            return true;\n        }\n\n        /**\n         * tag : TFOOT\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_TFOOT($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->parsingCss->save();\n            $this->parsingCss->analyse('tfoot', $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            // if we are in a sub part, save the number of the first TR in the tfoot\n            if ($this->_subPart) {\n                HTML2PDF::$_tables[$param['num']]['tfoot']['tr'][0] = HTML2PDF::$_tables[$param['num']]['tr_curr'];\n                HTML2PDF::$_tables[$param['num']]['tfoot']['code'] = array();\n                for ($pos=$this->_tempPos; $pos<count($this->parsingHtml->code); $pos++) {\n                    $action = $this->parsingHtml->code[$pos];\n                    if (strtolower($action['name'])=='tfoot') $action['name'] = 'tfoot_sub';\n                    HTML2PDF::$_tables[$param['num']]['tfoot']['code'][] = $action;\n                    if (strtolower($action['name'])=='tfoot_sub' && $action['close']) break;\n                }\n            } else {\n                $level = $this->parsingHtml->getLevel($this->_parsePos);\n                $this->_parsePos+= count($level);\n                HTML2PDF::$_tables[$param['num']]['tr_curr']+= count(HTML2PDF::$_tables[$param['num']]['tfoot']['tr']);\n            }\n\n            return true;\n        }\n\n        /**\n         * tag : TFOOT\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_TFOOT($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            // if we are in a sub HTM, construct the list of the TR in the tfoot\n            if ($this->_subPart) {\n                $min = HTML2PDF::$_tables[$param['num']]['tfoot']['tr'][0];\n                $max = HTML2PDF::$_tables[$param['num']]['tr_curr']-1;\n                HTML2PDF::$_tables[$param['num']]['tfoot']['tr'] = range($min, $max);\n            }\n\n            return true;\n        }\n\n        /**\n         * It is not a real TAG, does not use it !\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_THEAD_SUB($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->parsingCss->save();\n            $this->parsingCss->analyse('thead', $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * It is not a real TAG, does not use it !\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_THEAD_SUB($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * It is not a real TAG, does not use it !\n         *\n         * @param    array $param\n         * @return boolean\n         */\n        protected function _tag_open_TFOOT_SUB($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->parsingCss->save();\n            $this->parsingCss->analyse('tfoot', $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * It is not a real TAG, does not use it !\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_TFOOT_SUB($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : FORM\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_FORM($param)\n        {\n            $this->parsingCss->save();\n            $this->parsingCss->analyse('form', $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            $this->pdf->setFormDefaultProp(\n                array(\n                    'lineWidth'=>1,\n                    'borderStyle'=>'solid',\n                    'fillColor'=>array(220, 220, 255),\n                    'strokeColor'=>array(128, 128, 200)\n                )\n            );\n\n            $this->_isInForm = isset($param['action']) ? $param['action'] : '';\n\n            return true;\n        }\n\n        /**\n         * tag : FORM\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_FORM($param)\n        {\n            $this->_isInForm = false;\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : TABLE\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_TABLE($param, $other = 'table')\n        {\n            if ($this->_maxH) {\n                if ($this->_isForOneLine) return false;\n                $this->_tag_open_BR(array());\n            }\n\n            if ($this->_isForOneLine) {\n                $this->_maxX = $this->pdf->getW() - $this->pdf->getlMargin() - $this->pdf->getrMargin();\n                return false;\n            }\n\n            $this->_maxH = 0;\n\n            $alignObject = isset($param['align']) ? strtolower($param['align']) : 'left';\n            if (isset($param['align'])) unset($param['align']);\n            if (!in_array($alignObject, array('left', 'center', 'right'))) $alignObject = 'left';\n\n            $this->parsingCss->save();\n            $this->parsingCss->analyse($other, $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            if ($this->parsingCss->value['margin-auto']) $alignObject = 'center';\n\n            // collapse table ?\n            $collapse = false;\n            if ($other=='table') {\n                $collapse = isset($this->parsingCss->value['border']['collapse']) ? $this->parsingCss->value['border']['collapse'] : false;\n            }\n\n            // if collapse => no borders for the table, only for TD\n            if ($collapse) {\n                $param['style']['border'] = 'none';\n                $param['cellspacing'] = 0;\n                $none = $this->parsingCss->readBorder('none');\n                $this->parsingCss->value['border']['t'] = $none;\n                $this->parsingCss->value['border']['r'] = $none;\n                $this->parsingCss->value['border']['b'] = $none;\n                $this->parsingCss->value['border']['l'] = $none;\n            }\n\n            // if we are in a SUB html => prepare the properties of the table\n            if ($this->_subPart) {\n                if ($this->_debugActif) $this->_DEBUG_add('Table n'.$param['num'], true);\n                HTML2PDF::$_tables[$param['num']] = array();\n                HTML2PDF::$_tables[$param['num']]['border']          = isset($param['border']) ? $this->parsingCss->readBorder($param['border']) : null;\n                HTML2PDF::$_tables[$param['num']]['cellpadding']     = $this->parsingCss->ConvertToMM(isset($param['cellpadding']) ? $param['cellpadding'] : '1px');\n                HTML2PDF::$_tables[$param['num']]['cellspacing']     = $this->parsingCss->ConvertToMM(isset($param['cellspacing']) ? $param['cellspacing'] : '2px');\n                HTML2PDF::$_tables[$param['num']]['cases']           = array();          // properties of each TR/TD\n                HTML2PDF::$_tables[$param['num']]['corr']            = array();          // link between TR/TD and colspan/rowspan\n                HTML2PDF::$_tables[$param['num']]['corr_x']          = 0;                // position in 'cases'\n                HTML2PDF::$_tables[$param['num']]['corr_y']          = 0;                // position in 'cases'\n                HTML2PDF::$_tables[$param['num']]['td_curr']         = 0;                // current column\n                HTML2PDF::$_tables[$param['num']]['tr_curr']         = 0;                // current row\n                HTML2PDF::$_tables[$param['num']]['curr_x']          = $this->pdf->getX();\n                HTML2PDF::$_tables[$param['num']]['curr_y']          = $this->pdf->getY();\n                HTML2PDF::$_tables[$param['num']]['width']           = 0;                // global width\n                HTML2PDF::$_tables[$param['num']]['height']          = 0;                // global height\n                HTML2PDF::$_tables[$param['num']]['align']           = $alignObject;\n                HTML2PDF::$_tables[$param['num']]['marge']           = array();\n                HTML2PDF::$_tables[$param['num']]['marge']['t']      = $this->parsingCss->value['padding']['t']+$this->parsingCss->value['border']['t']['width']+HTML2PDF::$_tables[$param['num']]['cellspacing']*0.5;\n                HTML2PDF::$_tables[$param['num']]['marge']['r']      = $this->parsingCss->value['padding']['r']+$this->parsingCss->value['border']['r']['width']+HTML2PDF::$_tables[$param['num']]['cellspacing']*0.5;\n                HTML2PDF::$_tables[$param['num']]['marge']['b']      = $this->parsingCss->value['padding']['b']+$this->parsingCss->value['border']['b']['width']+HTML2PDF::$_tables[$param['num']]['cellspacing']*0.5;\n                HTML2PDF::$_tables[$param['num']]['marge']['l']      = $this->parsingCss->value['padding']['l']+$this->parsingCss->value['border']['l']['width']+HTML2PDF::$_tables[$param['num']]['cellspacing']*0.5;\n                HTML2PDF::$_tables[$param['num']]['page']            = 0;                // number of pages\n                HTML2PDF::$_tables[$param['num']]['new_page']        = true;             // flag : new page for the current TR\n                HTML2PDF::$_tables[$param['num']]['style_value']     = null;             // CSS style of the table\n                HTML2PDF::$_tables[$param['num']]['thead']           = array();          // properties on the thead\n                HTML2PDF::$_tables[$param['num']]['tfoot']           = array();          // properties on the tfoot\n                HTML2PDF::$_tables[$param['num']]['thead']['tr']     = array();          // list of the TRs in the thead\n                HTML2PDF::$_tables[$param['num']]['tfoot']['tr']     = array();          // list of the TRs in the tfoot\n                HTML2PDF::$_tables[$param['num']]['thead']['height']    = 0;             // thead height\n                HTML2PDF::$_tables[$param['num']]['tfoot']['height']    = 0;             // tfoot height\n                HTML2PDF::$_tables[$param['num']]['thead']['code'] = array();            // HTML content of the thead\n                HTML2PDF::$_tables[$param['num']]['tfoot']['code'] = array();            // HTML content of the tfoot\n                HTML2PDF::$_tables[$param['num']]['cols']        = array();              // properties of the COLs\n\n                $this->_saveMargin($this->pdf->getlMargin(), $this->pdf->gettMargin(), $this->pdf->getrMargin());\n\n                $this->parsingCss->value['width']-= HTML2PDF::$_tables[$param['num']]['marge']['l'] + HTML2PDF::$_tables[$param['num']]['marge']['r'];\n            } else {\n                // we start from the first page and the first page of the table\n                HTML2PDF::$_tables[$param['num']]['page'] = 0;\n                HTML2PDF::$_tables[$param['num']]['td_curr']    = 0;\n                HTML2PDF::$_tables[$param['num']]['tr_curr']    = 0;\n                HTML2PDF::$_tables[$param['num']]['td_x']        = HTML2PDF::$_tables[$param['num']]['marge']['l']+HTML2PDF::$_tables[$param['num']]['curr_x'];\n                HTML2PDF::$_tables[$param['num']]['td_y']        = HTML2PDF::$_tables[$param['num']]['marge']['t']+HTML2PDF::$_tables[$param['num']]['curr_y'];\n\n                // draw the borders/background of the first page/part of the table\n                $this->_drawRectangle(\n                    HTML2PDF::$_tables[$param['num']]['curr_x'],\n                    HTML2PDF::$_tables[$param['num']]['curr_y'],\n                    HTML2PDF::$_tables[$param['num']]['width'],\n                    isset(HTML2PDF::$_tables[$param['num']]['height'][0]) ? HTML2PDF::$_tables[$param['num']]['height'][0] : null,\n                    $this->parsingCss->value['border'],\n                    $this->parsingCss->value['padding'],\n                    0,\n                    $this->parsingCss->value['background']\n                );\n\n                HTML2PDF::$_tables[$param['num']]['style_value'] = $this->parsingCss->value;\n            }\n\n            return true;\n        }\n\n        /**\n         * tag : TABLE\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_TABLE($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->_maxH = 0;\n\n            // if we are in a sub HTML\n            if ($this->_subPart) {\n                // calculate the size of each case\n                $this->_calculateTableCellSize(HTML2PDF::$_tables[$param['num']]['cases'], HTML2PDF::$_tables[$param['num']]['corr']);\n\n                // calculate the height of the thead and the tfoot\n                $lst = array('thead', 'tfoot');\n                foreach ($lst as $mode) {\n                    HTML2PDF::$_tables[$param['num']][$mode]['height'] = 0;\n                    foreach (HTML2PDF::$_tables[$param['num']][$mode]['tr'] as $tr) {\n                        // hauteur de la ligne tr\n                        $h = 0;\n                        for ($i=0; $i<count(HTML2PDF::$_tables[$param['num']]['cases'][$tr]); $i++)\n                            if (HTML2PDF::$_tables[$param['num']]['cases'][$tr][$i]['rowspan']==1)\n                                $h = max($h, HTML2PDF::$_tables[$param['num']]['cases'][$tr][$i]['h']);\n                        HTML2PDF::$_tables[$param['num']][$mode]['height']+= $h;\n                    }\n                }\n\n                // calculate the width of the table\n                HTML2PDF::$_tables[$param['num']]['width'] = HTML2PDF::$_tables[$param['num']]['marge']['l'] + HTML2PDF::$_tables[$param['num']]['marge']['r'];\n                if (isset(HTML2PDF::$_tables[$param['num']]['cases'][0])) {\n                    foreach (HTML2PDF::$_tables[$param['num']]['cases'][0] as $case) {\n                        HTML2PDF::$_tables[$param['num']]['width']+= $case['w'];\n                    }\n                }\n\n                // X position of the table\n                $old = $this->parsingCss->getOldValues();\n                $parentWidth = $old['width'] ? $old['width'] : $this->pdf->getW() - $this->pdf->getlMargin() - $this->pdf->getrMargin();\n                $x = HTML2PDF::$_tables[$param['num']]['curr_x'];\n                $w = HTML2PDF::$_tables[$param['num']]['width'];\n                if ($parentWidth>$w) {\n                    if (HTML2PDF::$_tables[$param['num']]['align']=='center')\n                        $x = $x + ($parentWidth-$w)*0.5;\n                    else if (HTML2PDF::$_tables[$param['num']]['align']=='right')\n                        $x = $x + $parentWidth-$w;\n\n                    HTML2PDF::$_tables[$param['num']]['curr_x'] = $x;\n                }\n\n                // calculate the height of the table\n                HTML2PDF::$_tables[$param['num']]['height'] = array();\n\n                // minimum of the height because of margins, and of the thead and tfoot height\n                $h0 = HTML2PDF::$_tables[$param['num']]['marge']['t'] + HTML2PDF::$_tables[$param['num']]['marge']['b'];\n                $h0+= HTML2PDF::$_tables[$param['num']]['thead']['height'] + HTML2PDF::$_tables[$param['num']]['tfoot']['height'];\n\n                // max height of the page\n                $max = $this->pdf->getH() - $this->pdf->getbMargin();\n\n                // current position on the page\n                $y = HTML2PDF::$_tables[$param['num']]['curr_y'];\n                $height = $h0;\n\n                // we get the height of each line\n                for ($k=0; $k<count(HTML2PDF::$_tables[$param['num']]['cases']); $k++) {\n\n                    // if it is a TR of the thead or of the tfoot => skip\n                    if (in_array($k, HTML2PDF::$_tables[$param['num']]['thead']['tr'])) continue;\n                    if (in_array($k, HTML2PDF::$_tables[$param['num']]['tfoot']['tr'])) continue;\n\n                    // height of the line\n                    $th = 0;\n                    $h = 0;\n                    for ($i=0; $i<count(HTML2PDF::$_tables[$param['num']]['cases'][$k]); $i++) {\n                        $h = max($h, HTML2PDF::$_tables[$param['num']]['cases'][$k][$i]['h']);\n\n                        if (HTML2PDF::$_tables[$param['num']]['cases'][$k][$i]['rowspan']==1)\n                            $th = max($th, HTML2PDF::$_tables[$param['num']]['cases'][$k][$i]['h']);\n                    }\n\n                    // if the row does not fit on the page => new page\n                    if ($y+$h+$height>$max) {\n                        if ($height==$h0) $height = null;\n                        HTML2PDF::$_tables[$param['num']]['height'][] = $height;\n                        $height = $h0;\n                        $y = $this->_margeTop;\n                    }\n                    $height+= $th;\n                }\n\n                // if ther is a height at the end, add it\n                if ($height!=$h0 || $k==0) HTML2PDF::$_tables[$param['num']]['height'][] = $height;\n            } else {\n                // if we have tfoor, draw it\n                if (count(HTML2PDF::$_tables[$param['num']]['tfoot']['code'])) {\n                    $tmpTR = HTML2PDF::$_tables[$param['num']]['tr_curr'];\n                    $tmpTD = HTML2PDF::$_tables[$param['num']]['td_curr'];\n                    $oldParsePos = $this->_parsePos;\n                    $oldParseCode = $this->parsingHtml->code;\n\n                    HTML2PDF::$_tables[$param['num']]['tr_curr'] = HTML2PDF::$_tables[$param['num']]['tfoot']['tr'][0];\n                    HTML2PDF::$_tables[$param['num']]['td_curr'] = 0;\n                    $this->_parsePos = 0;\n                    $this->parsingHtml->code = HTML2PDF::$_tables[$param['num']]['tfoot']['code'];\n                    $this->_isInTfoot = true;\n                    $this->_makeHTMLcode();\n                    $this->_isInTfoot = false;\n\n                    $this->_parsePos =     $oldParsePos;\n                    $this->parsingHtml->code = $oldParseCode;\n                    HTML2PDF::$_tables[$param['num']]['tr_curr'] = $tmpTR;\n                    HTML2PDF::$_tables[$param['num']]['td_curr'] = $tmpTD;\n                }\n\n                // get the positions of the end of the table\n                $x = HTML2PDF::$_tables[$param['num']]['curr_x'] + HTML2PDF::$_tables[$param['num']]['width'];\n                if (count(HTML2PDF::$_tables[$param['num']]['height'])>1)\n                    $y = $this->_margeTop+HTML2PDF::$_tables[$param['num']]['height'][count(HTML2PDF::$_tables[$param['num']]['height'])-1];\n                else if (count(HTML2PDF::$_tables[$param['num']]['height'])==1)\n                    $y = HTML2PDF::$_tables[$param['num']]['curr_y']+HTML2PDF::$_tables[$param['num']]['height'][count(HTML2PDF::$_tables[$param['num']]['height'])-1];\n                else\n                    $y = HTML2PDF::$_tables[$param['num']]['curr_y'];\n\n                $this->_maxX = max($this->_maxX, $x);\n                $this->_maxY = max($this->_maxY, $y);\n\n                $this->pdf->setXY($this->pdf->getlMargin(), $y);\n\n                $this->_loadMargin();\n\n                if ($this->_debugActif) $this->_DEBUG_add('Table '.$param['num'], false);\n            }\n\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n\n            return true;\n        }\n\n        /**\n         * tag : COL\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_COL($param)\n        {\n            $span = isset($param['span']) ? $param['span'] : 1;\n            for ($k=0; $k<$span; $k++)\n                HTML2PDF::$_tables[$param['num']]['cols'][] = $param;\n        }\n\n        /**\n         * tag : COL\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_COL($param)\n        {\n            // there is nothing to do here\n\n            return true;\n        }\n\n        /**\n         * tag : TR\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_TR($param, $other = 'tr')\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->_maxH = 0;\n\n            $this->parsingCss->save();\n            $this->parsingCss->analyse($other, $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            // position in the table\n            HTML2PDF::$_tables[$param['num']]['tr_curr']++;\n            HTML2PDF::$_tables[$param['num']]['td_curr']= 0;\n\n            // if we are not in a sub html\n            if (!$this->_subPart) {\n\n                // Y after the row\n                $ty=null;\n                for ($ii=0; $ii<count(HTML2PDF::$_tables[$param['num']]['cases'][HTML2PDF::$_tables[$param['num']]['tr_curr']-1]); $ii++) {\n                    $ty = max($ty, HTML2PDF::$_tables[$param['num']]['cases'][HTML2PDF::$_tables[$param['num']]['tr_curr']-1][$ii]['h']);\n                }\n\n                // height of the tfoot\n                $hfoot = HTML2PDF::$_tables[$param['num']]['tfoot']['height'];\n\n                // if the line does not fit on the page => new page\n                if (!$this->_isInTfoot && HTML2PDF::$_tables[$param['num']]['td_y'] + HTML2PDF::$_tables[$param['num']]['marge']['b'] + $ty +$hfoot> $this->pdf->getH() - $this->pdf->getbMargin()) {\n\n                    // fi ther is a tfoot => draw it\n                    if (count(HTML2PDF::$_tables[$param['num']]['tfoot']['code'])) {\n                        $tmpTR = HTML2PDF::$_tables[$param['num']]['tr_curr'];\n                        $tmpTD = HTML2PDF::$_tables[$param['num']]['td_curr'];\n                        $oldParsePos = $this->_parsePos;\n                        $oldParseCode = $this->parsingHtml->code;\n\n                        HTML2PDF::$_tables[$param['num']]['tr_curr'] = HTML2PDF::$_tables[$param['num']]['tfoot']['tr'][0];\n                        HTML2PDF::$_tables[$param['num']]['td_curr'] = 0;\n                        $this->_parsePos = 0;\n                        $this->parsingHtml->code = HTML2PDF::$_tables[$param['num']]['tfoot']['code'];\n                        $this->_isInTfoot = true;\n                        $this->_makeHTMLcode();\n                        $this->_isInTfoot = false;\n\n                        $this->_parsePos =     $oldParsePos;\n                        $this->parsingHtml->code = $oldParseCode;\n                        HTML2PDF::$_tables[$param['num']]['tr_curr'] = $tmpTR;\n                        HTML2PDF::$_tables[$param['num']]['td_curr'] = $tmpTD;\n                    }\n\n                    // new page\n                    HTML2PDF::$_tables[$param['num']]['new_page'] = true;\n                    $this->_setNewPage();\n\n                    // new position\n                    HTML2PDF::$_tables[$param['num']]['page']++;\n                    HTML2PDF::$_tables[$param['num']]['curr_y'] = $this->pdf->getY();\n                    HTML2PDF::$_tables[$param['num']]['td_y'] = HTML2PDF::$_tables[$param['num']]['curr_y']+HTML2PDF::$_tables[$param['num']]['marge']['t'];\n\n                    // if we have the height of the tbale on the page => draw borders and background\n                    if (isset(HTML2PDF::$_tables[$param['num']]['height'][HTML2PDF::$_tables[$param['num']]['page']])) {\n                        $old = $this->parsingCss->value;\n                        $this->parsingCss->value = HTML2PDF::$_tables[$param['num']]['style_value'];\n\n                        $this->_drawRectangle(\n                            HTML2PDF::$_tables[$param['num']]['curr_x'],\n                            HTML2PDF::$_tables[$param['num']]['curr_y'],\n                            HTML2PDF::$_tables[$param['num']]['width'],\n                            HTML2PDF::$_tables[$param['num']]['height'][HTML2PDF::$_tables[$param['num']]['page']],\n                            $this->parsingCss->value['border'],\n                            $this->parsingCss->value['padding'],\n                            HTML2PDF::$_tables[$param['num']]['cellspacing']*0.5,\n                            $this->parsingCss->value['background']\n                        );\n\n                        $this->parsingCss->value = $old;\n                    }\n                }\n\n                // if we are in a new page, and if we have a thead => draw it\n                if (HTML2PDF::$_tables[$param['num']]['new_page'] && count(HTML2PDF::$_tables[$param['num']]['thead']['code'])) {\n                    HTML2PDF::$_tables[$param['num']]['new_page'] = false;\n                    $tmpTR = HTML2PDF::$_tables[$param['num']]['tr_curr'];\n                    $tmpTD = HTML2PDF::$_tables[$param['num']]['td_curr'];\n                    $oldParsePos = $this->_parsePos;\n                    $oldParseCode = $this->parsingHtml->code;\n\n                    HTML2PDF::$_tables[$param['num']]['tr_curr'] = HTML2PDF::$_tables[$param['num']]['thead']['tr'][0];\n                    HTML2PDF::$_tables[$param['num']]['td_curr'] = 0;\n                    $this->_parsePos = 0;\n                    $this->parsingHtml->code = HTML2PDF::$_tables[$param['num']]['thead']['code'];\n                    $this->_isInThead = true;\n                    $this->_makeHTMLcode();\n                    $this->_isInThead = false;\n\n                    $this->_parsePos =     $oldParsePos;\n                    $this->parsingHtml->code = $oldParseCode;\n                    HTML2PDF::$_tables[$param['num']]['tr_curr'] = $tmpTR;\n                    HTML2PDF::$_tables[$param['num']]['td_curr'] = $tmpTD;\n                    HTML2PDF::$_tables[$param['num']]['new_page'] = true;\n                }\n            // else (in a sub HTML)\n            } else {\n                // prepare it\n                HTML2PDF::$_tables[$param['num']]['cases'][HTML2PDF::$_tables[$param['num']]['tr_curr']-1] = array();\n                if (!isset(HTML2PDF::$_tables[$param['num']]['corr'][HTML2PDF::$_tables[$param['num']]['corr_y']]))\n                    HTML2PDF::$_tables[$param['num']]['corr'][HTML2PDF::$_tables[$param['num']]['corr_y']] = array();\n\n                HTML2PDF::$_tables[$param['num']]['corr_x']=0;\n                while(isset(HTML2PDF::$_tables[$param['num']]['corr'][HTML2PDF::$_tables[$param['num']]['corr_y']][HTML2PDF::$_tables[$param['num']]['corr_x']]))\n                    HTML2PDF::$_tables[$param['num']]['corr_x']++;\n            }\n\n            return true;\n        }\n\n        /**\n         * tag : TR\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_TR($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->_maxH = 0;\n\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            // if we are not in a sub HTML\n            if (!$this->_subPart) {\n\n                // Y of the current line\n                $ty=null;\n                for ($ii=0; $ii<count(HTML2PDF::$_tables[$param['num']]['cases'][HTML2PDF::$_tables[$param['num']]['tr_curr']-1]); $ii++) {\n                    if (HTML2PDF::$_tables[$param['num']]['cases'][HTML2PDF::$_tables[$param['num']]['tr_curr']-1][$ii]['rowspan']==1) {\n                        $ty = HTML2PDF::$_tables[$param['num']]['cases'][HTML2PDF::$_tables[$param['num']]['tr_curr']-1][$ii]['h'];\n                    }\n                }\n\n                // new position\n                HTML2PDF::$_tables[$param['num']]['td_x'] = HTML2PDF::$_tables[$param['num']]['curr_x']+HTML2PDF::$_tables[$param['num']]['marge']['l'];\n                HTML2PDF::$_tables[$param['num']]['td_y']+= $ty;\n                HTML2PDF::$_tables[$param['num']]['new_page'] = false;\n            } else {\n                HTML2PDF::$_tables[$param['num']]['corr_y']++;\n            }\n\n            return true;\n        }\n\n        /**\n         * tag : TD\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_TD($param, $other = 'td')\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->_maxH = 0;\n\n            $param['cellpadding'] = HTML2PDF::$_tables[$param['num']]['cellpadding'].'mm';\n            $param['cellspacing'] = HTML2PDF::$_tables[$param['num']]['cellspacing'].'mm';\n\n            // specific style for LI\n            if ($other=='li') {\n                $specialLi = true;\n            } else {\n                $specialLi = false;\n                if ($other=='li_sub') {\n                    $param['style']['border'] = 'none';\n                    $param['style']['background-color']    = 'transparent';\n                    $param['style']['background-image']    = 'none';\n                    $param['style']['background-position'] = '';\n                    $param['style']['background-repeat']   = '';\n                    $other = 'li';\n                }\n            }\n\n            // get the properties of the TD\n            $x = HTML2PDF::$_tables[$param['num']]['td_curr'];\n            $y = HTML2PDF::$_tables[$param['num']]['tr_curr']-1;\n            $colspan = isset($param['colspan']) ? $param['colspan'] : 1;\n            $rowspan = isset($param['rowspan']) ? $param['rowspan'] : 1;\n\n            // flag for collapse table\n            $collapse = false;\n\n            // specific traitment for TD and TH\n            if (in_array($other, array('td', 'th'))) {\n                // id of the column\n                $numCol = isset(HTML2PDF::$_tables[$param['num']]['cases'][$y][$x]['Xr']) ? HTML2PDF::$_tables[$param['num']]['cases'][$y][$x]['Xr'] : HTML2PDF::$_tables[$param['num']]['corr_x'];\n\n                // we get the properties of the COL tag, if exist\n                if (isset(HTML2PDF::$_tables[$param['num']]['cols'][$numCol])) {\n\n                    $colParam = HTML2PDF::$_tables[$param['num']]['cols'][$numCol];\n\n                    // for colspans => we get all the neede widths\n                    $colParam['style']['width'] = array();\n                    for ($k=0; $k<$colspan; $k++) {\n                        if (isset(HTML2PDF::$_tables[$param['num']]['cols'][$numCol+$k]['style']['width'])) {\n                            $colParam['style']['width'][] = HTML2PDF::$_tables[$param['num']]['cols'][$numCol+$k]['style']['width'];\n                        }\n                    }\n\n                    // calculate the total width of the column\n                    $total = '';\n                    $last = $this->parsingCss->getLastWidth();\n                    if (count($colParam['style']['width'])) {\n                        $total = $colParam['style']['width'][0]; unset($colParam['style']['width'][0]);\n                        foreach ($colParam['style']['width'] as $width) {\n                            if (substr($total, -1)=='%' && substr($width, -1)=='%')\n                                $total = (str_replace('%', '', $total)+str_replace('%', '', $width)).'%';\n                            else\n                                $total = ($this->parsingCss->ConvertToMM($total, $last) + $this->parsingCss->ConvertToMM($width, $last)).'mm';\n                        }\n                    }\n\n                    // get the final width\n                    if ($total) {\n                        $colParam['style']['width'] = $total;\n                    } else {\n                        unset($colParam['style']['width']);\n                    }\n\n\n                    // merge the styles of the COL and the TD\n                    $param['style'] = array_merge($colParam['style'], $param['style']);\n\n                    // merge the class of the COL and the TD\n                    if (isset($colParam['class'])) {\n                        $param['class'] = $colParam['class'].(isset($param['class']) ? ' '.$param['class'] : '');\n                    }\n                }\n\n                $collapse = isset($this->parsingCss->value['border']['collapse']) ? $this->parsingCss->value['border']['collapse'] : false;\n            }\n\n            $this->parsingCss->save();\n\n            // legacy for TD and TH\n            $legacy = null;\n            if (in_array($other, array('td', 'th'))) {\n                $legacy = array();\n\n                $old = $this->parsingCss->getLastValue('background');\n                if ($old && ($old['color'] || $old['image']))\n                    $legacy['background'] = $old;\n\n                if (HTML2PDF::$_tables[$param['num']]['border']) {\n                    $legacy['border'] = array();\n                    $legacy['border']['l'] = HTML2PDF::$_tables[$param['num']]['border'];\n                    $legacy['border']['t'] = HTML2PDF::$_tables[$param['num']]['border'];\n                    $legacy['border']['r'] = HTML2PDF::$_tables[$param['num']]['border'];\n                    $legacy['border']['b'] = HTML2PDF::$_tables[$param['num']]['border'];\n                }\n            }\n            $return = $this->parsingCss->analyse($other, $param, $legacy);\n\n            if ($specialLi) {\n                $this->parsingCss->value['width']-= $this->parsingCss->ConvertToMM($this->_listeGetWidth());\n                $this->parsingCss->value['width']-= $this->parsingCss->ConvertToMM($this->_listeGetPadding());\n            }\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            // if tale collapse => modify the borders\n            if ($collapse) {\n                if (!$this->_subPart) {\n                    if (\n                        (HTML2PDF::$_tables[$param['num']]['tr_curr']>1 && !HTML2PDF::$_tables[$param['num']]['new_page']) ||\n                        (!$this->_isInThead && count(HTML2PDF::$_tables[$param['num']]['thead']['code']))\n                    ) {\n                        $this->parsingCss->value['border']['t'] = $this->parsingCss->readBorder('none');\n                    }\n                }\n\n                if (HTML2PDF::$_tables[$param['num']]['td_curr']>0) {\n                    if (!$return) $this->parsingCss->value['width']+= $this->parsingCss->value['border']['l']['width'];\n                    $this->parsingCss->value['border']['l'] = $this->parsingCss->readBorder('none');\n                }\n            }\n\n            // margins of the table\n            $marge = array();\n            $marge['t'] = $this->parsingCss->value['padding']['t']+0.5*HTML2PDF::$_tables[$param['num']]['cellspacing']+$this->parsingCss->value['border']['t']['width'];\n            $marge['r'] = $this->parsingCss->value['padding']['r']+0.5*HTML2PDF::$_tables[$param['num']]['cellspacing']+$this->parsingCss->value['border']['r']['width'];\n            $marge['b'] = $this->parsingCss->value['padding']['b']+0.5*HTML2PDF::$_tables[$param['num']]['cellspacing']+$this->parsingCss->value['border']['b']['width'];\n            $marge['l'] = $this->parsingCss->value['padding']['l']+0.5*HTML2PDF::$_tables[$param['num']]['cellspacing']+$this->parsingCss->value['border']['l']['width'];\n\n            // if we are in a sub HTML\n            if ($this->_subPart) {\n                // new position in the table\n                HTML2PDF::$_tables[$param['num']]['td_curr']++;\n                HTML2PDF::$_tables[$param['num']]['cases'][$y][$x] = array();\n                HTML2PDF::$_tables[$param['num']]['cases'][$y][$x]['w'] = 0;\n                HTML2PDF::$_tables[$param['num']]['cases'][$y][$x]['h'] = 0;\n                HTML2PDF::$_tables[$param['num']]['cases'][$y][$x]['dw'] = 0;\n                HTML2PDF::$_tables[$param['num']]['cases'][$y][$x]['colspan'] = $colspan;\n                HTML2PDF::$_tables[$param['num']]['cases'][$y][$x]['rowspan'] = $rowspan;\n                HTML2PDF::$_tables[$param['num']]['cases'][$y][$x]['Xr'] = HTML2PDF::$_tables[$param['num']]['corr_x'];\n                HTML2PDF::$_tables[$param['num']]['cases'][$y][$x]['Yr'] = HTML2PDF::$_tables[$param['num']]['corr_y'];\n\n                // prepare the mapping for rowspan and colspan\n                for ($j=0; $j<$rowspan; $j++) {\n                    for ($i=0; $i<$colspan; $i++) {\n                        HTML2PDF::$_tables[$param['num']]['corr']\n                            [HTML2PDF::$_tables[$param['num']]['corr_y']+$j]\n                            [HTML2PDF::$_tables[$param['num']]['corr_x']+$i] = ($i+$j>0) ? '' : array($x,$y,$colspan,$rowspan);\n                    }\n                }\n                HTML2PDF::$_tables[$param['num']]['corr_x']+= $colspan;\n                while (isset(HTML2PDF::$_tables[$param['num']]['corr'][HTML2PDF::$_tables[$param['num']]['corr_y']][HTML2PDF::$_tables[$param['num']]['corr_x']])) {\n                    HTML2PDF::$_tables[$param['num']]['corr_x']++;\n                }\n\n                // extract the content of the TD, and calculate his size\n                $level = $this->parsingHtml->getLevel($this->_tempPos);\n                $this->_createSubHTML($this->_subHtml);\n                $this->_subHtml->parsingHtml->code = $level;\n                $this->_subHtml->_makeHTMLcode();\n                $this->_tempPos+= count($level);\n            } else {\n                // new position in the table\n                HTML2PDF::$_tables[$param['num']]['td_curr']++;\n                HTML2PDF::$_tables[$param['num']]['td_x']+= HTML2PDF::$_tables[$param['num']]['cases'][$y][$x]['dw'];\n\n                // borders and background of the TD\n                $this->_drawRectangle(\n                    HTML2PDF::$_tables[$param['num']]['td_x'],\n                    HTML2PDF::$_tables[$param['num']]['td_y'],\n                    HTML2PDF::$_tables[$param['num']]['cases'][$y][$x]['w'],\n                    HTML2PDF::$_tables[$param['num']]['cases'][$y][$x]['h'],\n                    $this->parsingCss->value['border'],\n                    $this->parsingCss->value['padding'],\n                    HTML2PDF::$_tables[$param['num']]['cellspacing']*0.5,\n                    $this->parsingCss->value['background']\n                );\n\n                $this->parsingCss->value['width'] = HTML2PDF::$_tables[$param['num']]['cases'][$y][$x]['w'] - $marge['l'] - $marge['r'];\n\n                // marges = size of the TD\n                $mL = HTML2PDF::$_tables[$param['num']]['td_x']+$marge['l'];\n                $mR = $this->pdf->getW() - $mL - $this->parsingCss->value['width'];\n                $this->_saveMargin($mL, 0, $mR);\n\n                // position of the content, from vertical-align\n                $hCorr = HTML2PDF::$_tables[$param['num']]['cases'][$y][$x]['h'];\n                $hReel = HTML2PDF::$_tables[$param['num']]['cases'][$y][$x]['real_h'];\n                switch($this->parsingCss->value['vertical-align'])\n                {\n                    case 'bottom':\n                        $yCorr = $hCorr-$hReel;\n                        break;\n\n                    case 'middle':\n                        $yCorr = ($hCorr-$hReel)*0.5;\n                        break;\n\n                    case 'top':\n                    default:\n                        $yCorr = 0;\n                        break;\n                }\n\n                //  position of the content\n                $x = HTML2PDF::$_tables[$param['num']]['td_x']+$marge['l'];\n                $y = HTML2PDF::$_tables[$param['num']]['td_y']+$marge['t']+$yCorr;\n                $this->pdf->setXY($x, $y);\n                $this->_setNewPositionForNewLine();\n            }\n\n            return true;\n        }\n\n        /**\n         * tag : TD\n         * mode : CLOSE\n         *\n         * @param    array $param\n         * @return boolean\n         */\n        protected function _tag_close_TD($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->_maxH = 0;\n\n            // get the margins\n            $marge = array();\n            $marge['t'] = $this->parsingCss->value['padding']['t']+0.5*HTML2PDF::$_tables[$param['num']]['cellspacing']+$this->parsingCss->value['border']['t']['width'];\n            $marge['r'] = $this->parsingCss->value['padding']['r']+0.5*HTML2PDF::$_tables[$param['num']]['cellspacing']+$this->parsingCss->value['border']['r']['width'];\n            $marge['b'] = $this->parsingCss->value['padding']['b']+0.5*HTML2PDF::$_tables[$param['num']]['cellspacing']+$this->parsingCss->value['border']['b']['width'];\n            $marge['l'] = $this->parsingCss->value['padding']['l']+0.5*HTML2PDF::$_tables[$param['num']]['cellspacing']+$this->parsingCss->value['border']['l']['width'];\n            $marge['t']+= 0.001;\n            $marge['r']+= 0.001;\n            $marge['b']+= 0.001;\n            $marge['l']+= 0.001;\n\n            // if we are in a sub HTML\n            if ($this->_subPart) {\n\n                // it msut take only one page\n                if ($this->_testTdInOnepage && $this->_subHtml->pdf->getPage()>1) {\n                    throw new HTML2PDF_exception(7);\n                }\n\n                // size of the content of the TD\n                $w0 = $this->_subHtml->_maxX + $marge['l'] + $marge['r'];\n                $h0 = $this->_subHtml->_maxY + $marge['t'] + $marge['b'];\n\n                // size from the CSS style\n                $w2 = $this->parsingCss->value['width'] + $marge['l'] + $marge['r'];\n                $h2 = $this->parsingCss->value['height'] + $marge['t'] + $marge['b'];\n\n                // final size of the TD\n                HTML2PDF::$_tables[$param['num']]['cases'][HTML2PDF::$_tables[$param['num']]['tr_curr']-1][HTML2PDF::$_tables[$param['num']]['td_curr']-1]['w'] = max(array($w0, $w2));\n                HTML2PDF::$_tables[$param['num']]['cases'][HTML2PDF::$_tables[$param['num']]['tr_curr']-1][HTML2PDF::$_tables[$param['num']]['td_curr']-1]['h'] = max(array($h0, $h2));\n\n                // real position of the content\n                HTML2PDF::$_tables[$param['num']]['cases'][HTML2PDF::$_tables[$param['num']]['tr_curr']-1][HTML2PDF::$_tables[$param['num']]['td_curr']-1]['real_w'] = $w0;\n                HTML2PDF::$_tables[$param['num']]['cases'][HTML2PDF::$_tables[$param['num']]['tr_curr']-1][HTML2PDF::$_tables[$param['num']]['td_curr']-1]['real_h'] = $h0;\n\n                // destroy the sub HTML\n                $this->_destroySubHTML($this->_subHtml);\n            } else {\n                $this->_loadMargin();\n\n                HTML2PDF::$_tables[$param['num']]['td_x']+= HTML2PDF::$_tables[$param['num']]['cases'][HTML2PDF::$_tables[$param['num']]['tr_curr']-1][HTML2PDF::$_tables[$param['num']]['td_curr']-1]['w'];\n            }\n\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n\n        /**\n         * tag : TH\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_TH($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->parsingCss->save();\n            $this->parsingCss->value['font-bold'] = true;\n\n            $this->_tag_open_TD($param, 'th');\n\n            return true;\n        }\n\n        /**\n         * tag : TH\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_TH($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->_tag_close_TD($param);\n\n            $this->parsingCss->load();\n\n            return true;\n        }\n\n        /**\n         * tag : IMG\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_IMG($param)\n        {\n            $src    = str_replace('&amp;', '&', $param['src']);\n\n            $this->parsingCss->save();\n            $this->parsingCss->value['width']    = 0;\n            $this->parsingCss->value['height']    = 0;\n            $this->parsingCss->value['border']    = array('type' => 'none', 'width' => 0, 'color' => array(0, 0, 0));\n            $this->parsingCss->value['background'] = array('color' => null, 'image' => null, 'position' => null, 'repeat' => null);\n            $this->parsingCss->analyse('img', $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            $res = $this->_drawImage($src, isset($param['sub_li']));\n            if (!$res) return $res;\n\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n            $this->_maxE++;\n\n            return true;\n        }\n\n        /**\n         * tag : SELECT\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_SELECT($param)\n        {\n            if (!isset($param['name'])) {\n                $param['name'] = 'champs_pdf_'.(count($this->_lstField)+1);\n            }\n\n            $param['name'] = strtolower($param['name']);\n\n            if (isset($this->_lstField[$param['name']])) {\n                $this->_lstField[$param['name']]++;\n            } else {\n                $this->_lstField[$param['name']] = 1;\n            }\n\n            $this->parsingCss->save();\n            $this->parsingCss->analyse('select', $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            $this->_lstSelect = array();\n            $this->_lstSelect['name']    = $param['name'];\n            $this->_lstSelect['multi']    = isset($param['multiple']) ? true : false;\n            $this->_lstSelect['size']    = isset($param['size']) ? $param['size'] : 1;\n            $this->_lstSelect['options']    = array();\n\n            if ($this->_lstSelect['multi'] && $this->_lstSelect['size']<3) $this->_lstSelect['size'] = 3;\n\n            return true;\n        }\n\n        /**\n         * tag : OPTION\n         * mode : OPEN\n         *\n         * @param    array $param\n         * @return boolean\n         */\n        protected function _tag_open_OPTION($param)\n        {\n            // get the content of the option : it is the text of the option\n            $level = $this->parsingHtml->getLevel($this->_parsePos);\n            $this->_parsePos+= count($level);\n            $value = isset($param['value']) ? $param['value'] : 'aut_tag_open_opt_'.(count($this->_lstSelect)+1);\n\n            $this->_lstSelect['options'][$value] = isset($level[0]['param']['txt']) ? $level[0]['param']['txt'] : '';\n\n            return true;\n        }\n\n        /**\n         * tag : OPTION\n         * mode : CLOSE\n         *\n         * @param    array $param\n         * @return boolean\n         */\n        protected function _tag_close_OPTION($param)\n        {\n            // nothing to do here\n\n            return true;\n        }\n\n        /**\n         * tag : SELECT\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_SELECT()\n        {\n            // position of the select\n            $x = $this->pdf->getX();\n            $y = $this->pdf->getY();\n            $f = 1.08*$this->parsingCss->value['font-size'];\n\n            // width\n            $w = $this->parsingCss->value['width']; if (!$w) $w = 50;\n\n            // height (automatic)\n            $h = ($f*1.07*$this->_lstSelect['size'] + 1);\n\n            $prop = $this->parsingCss->getFormStyle();\n\n            // multy select\n            if ($this->_lstSelect['multi']) {\n                $prop['multipleSelection'] = 'true';\n            }\n\n\n            // single or multi select\n            if ($this->_lstSelect['size']>1) {\n                $this->pdf->ListBox($this->_lstSelect['name'], $w, $h, $this->_lstSelect['options'], $prop);\n            } else {\n                $this->pdf->ComboBox($this->_lstSelect['name'], $w, $h, $this->_lstSelect['options'], $prop);\n            }\n\n            $this->_maxX = max($this->_maxX, $x+$w);\n            $this->_maxY = max($this->_maxY, $y+$h);\n            $this->_maxH = max($this->_maxH, $h);\n            $this->_maxE++;\n            $this->pdf->setX($x+$w);\n\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            $this->_lstSelect = array();\n\n            return true;\n        }\n\n        /**\n         * tag : TEXTAREA\n         * mode : OPEN\n         *\n         * @param    array $param\n         * @return boolean\n         */\n        protected function _tag_open_TEXTAREA($param)\n        {\n            if (!isset($param['name'])) {\n                $param['name'] = 'champs_pdf_'.(count($this->_lstField)+1);\n            }\n\n            $param['name'] = strtolower($param['name']);\n\n            if (isset($this->_lstField[$param['name']])) {\n                $this->_lstField[$param['name']]++;\n            } else {\n                $this->_lstField[$param['name']] = 1;\n            }\n\n            $this->parsingCss->save();\n            $this->parsingCss->analyse('textarea', $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            $x = $this->pdf->getX();\n            $y = $this->pdf->getY();\n            $fx = 0.65*$this->parsingCss->value['font-size'];\n            $fy = 1.08*$this->parsingCss->value['font-size'];\n\n            // extract the content the textarea : value\n            $level = $this->parsingHtml->getLevel($this->_parsePos);\n            $this->_parsePos+= count($level);\n\n            // automatic size, from cols and rows properties\n            $w = $fx*(isset($param['cols']) ? $param['cols'] : 22)+1;\n            $h = $fy*1.07*(isset($param['rows']) ? $param['rows'] : 3)+3;\n\n            $prop = $this->parsingCss->getFormStyle();\n\n            $prop['multiline'] = true;\n            $prop['value'] = isset($level[0]['param']['txt']) ? $level[0]['param']['txt'] : '';\n\n            $this->pdf->TextField($param['name'], $w, $h, $prop, array(), $x, $y);\n\n            $this->_maxX = max($this->_maxX, $x+$w);\n            $this->_maxY = max($this->_maxY, $y+$h);\n            $this->_maxH = max($this->_maxH, $h);\n            $this->_maxE++;\n            $this->pdf->setX($x+$w);\n\n            return true;\n        }\n\n        /**\n         * tag : TEXTAREA\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_TEXTAREA()\n        {\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : INPUT\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_INPUT($param)\n        {\n            if (!isset($param['name']))  $param['name']  = 'champs_pdf_'.(count($this->_lstField)+1);\n            if (!isset($param['value'])) $param['value'] = '';\n            if (!isset($param['type']))  $param['type']  = 'text';\n\n            $param['name'] = strtolower($param['name']);\n            $param['type'] = strtolower($param['type']);\n\n            // the type must be valid\n            if (!in_array($param['type'], array('text', 'checkbox', 'radio', 'hidden', 'submit', 'reset', 'button'))) {\n                $param['type'] = 'text';\n            }\n\n            if (isset($this->_lstField[$param['name']])) {\n                $this->_lstField[$param['name']]++;\n            } else {\n                $this->_lstField[$param['name']] = 1;\n            }\n\n            $this->parsingCss->save();\n            $this->parsingCss->analyse('input', $param);\n            $this->parsingCss->setPosition();\n            $this->parsingCss->fontSet();\n\n            $name = $param['name'];\n\n            $x = $this->pdf->getX();\n            $y = $this->pdf->getY();\n            $f = 1.08*$this->parsingCss->value['font-size'];\n\n            $prop = $this->parsingCss->getFormStyle();\n\n            switch($param['type'])\n            {\n                case 'checkbox':\n                    $w = 3;\n                    $h = $w;\n                    if ($h<$f) $y+= ($f-$h)*0.5;\n                    $checked = (isset($param['checked']) && $param['checked']=='checked');\n                    $this->pdf->CheckBox($name, $w, $checked, $prop, array(), ($param['value'] ? $param['value'] : 'Yes'), $x, $y);\n                    break;\n\n                case 'radio':\n                    $w = 3;\n                    $h = $w;\n                    if ($h<$f) $y+= ($f-$h)*0.5;\n                    $checked = (isset($param['checked']) && $param['checked']=='checked');\n                    $this->pdf->RadioButton($name, $w, $prop, array(), ($param['value'] ? $param['value'] : 'On'), $checked, $x, $y);\n                    break;\n\n                case 'hidden':\n                    $w = 0;\n                    $h = 0;\n                    $prop['value'] = $param['value'];\n                    $this->pdf->TextField($name, $w, $h, $prop, array(), $x, $y);\n                    break;\n\n                case 'text':\n                    $w = $this->parsingCss->value['width']; if (!$w) $w = 40;\n                    $h = $f*1.3;\n                    $prop['value'] = $param['value'];\n                    $this->pdf->TextField($name, $w, $h, $prop, array(), $x, $y);\n                    break;\n\n                case 'submit':\n                    $w = $this->parsingCss->value['width'];    if (!$w) $w = 40;\n                    $h = $this->parsingCss->value['height'];    if (!$h) $h = $f*1.3;\n                    $action = array('S'=>'SubmitForm', 'F'=>$this->_isInForm, 'Flags'=>array('ExportFormat'));\n                    $this->pdf->Button($name, $w, $h, $param['value'], $action, $prop, array(), $x, $y);\n                    break;\n\n                case 'reset':\n                    $w = $this->parsingCss->value['width'];    if (!$w) $w = 40;\n                    $h = $this->parsingCss->value['height'];    if (!$h) $h = $f*1.3;\n                    $action = array('S'=>'ResetForm');\n                    $this->pdf->Button($name, $w, $h, $param['value'], $action, $prop, array(), $x, $y);\n                    break;\n\n                case 'button':\n                    $w = $this->parsingCss->value['width'];    if (!$w) $w = 40;\n                    $h = $this->parsingCss->value['height'];    if (!$h) $h = $f*1.3;\n                    $action = isset($param['onclick']) ? $param['onclick'] : '';\n                    $this->pdf->Button($name, $w, $h, $param['value'], $action, $prop, array(), $x, $y);\n                    break;\n\n                default:\n                    $w = 0;\n                    $h = 0;\n                    break;\n            }\n\n            $this->_maxX = max($this->_maxX, $x+$w);\n            $this->_maxY = max($this->_maxY, $y+$h);\n            $this->_maxH = max($this->_maxH, $h);\n            $this->_maxE++;\n            $this->pdf->setX($x+$w);\n\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n\n            return true;\n        }\n\n        /**\n         * tag : DRAW\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_DRAW($param)\n        {\n            if ($this->_isForOneLine) return false;\n            if ($this->_debugActif) $this->_DEBUG_add('DRAW', true);\n\n            $this->parsingCss->save();\n            $this->parsingCss->analyse('draw', $param);\n            $this->parsingCss->fontSet();\n\n            $alignObject = null;\n            if ($this->parsingCss->value['margin-auto']) $alignObject = 'center';\n\n            $overW = $this->parsingCss->value['width'];\n            $overH = $this->parsingCss->value['height'];\n            $this->parsingCss->value['old_maxX'] = $this->_maxX;\n            $this->parsingCss->value['old_maxY'] = $this->_maxY;\n            $this->parsingCss->value['old_maxH'] = $this->_maxH;\n\n            $w = $this->parsingCss->value['width'];\n            $h = $this->parsingCss->value['height'];\n\n            if (!$this->parsingCss->value['position']) {\n                if (\n                    $w < ($this->pdf->getW() - $this->pdf->getlMargin()-$this->pdf->getrMargin()) &&\n                    $this->pdf->getX() + $w>=($this->pdf->getW() - $this->pdf->getrMargin())\n                    )\n                    $this->_tag_open_BR(array());\n\n                if (\n                        ($h < ($this->pdf->getH() - $this->pdf->gettMargin()-$this->pdf->getbMargin())) &&\n                        ($this->pdf->getY() + $h>=($this->pdf->getH() - $this->pdf->getbMargin())) &&\n                        !$this->_isInOverflow\n                    )\n                    $this->_setNewPage();\n\n                $old = $this->parsingCss->getOldValues();\n                $parentWidth = $old['width'] ? $old['width'] : $this->pdf->getW() - $this->pdf->getlMargin() - $this->pdf->getrMargin();\n\n                if ($parentWidth>$w) {\n                    if ($alignObject=='center')        $this->pdf->setX($this->pdf->getX() + ($parentWidth-$w)*0.5);\n                    else if ($alignObject=='right')    $this->pdf->setX($this->pdf->getX() + $parentWidth-$w);\n                }\n\n                $this->parsingCss->setPosition();\n            } else {\n                $old = $this->parsingCss->getOldValues();\n                $parentWidth = $old['width'] ? $old['width'] : $this->pdf->getW() - $this->pdf->getlMargin() - $this->pdf->getrMargin();\n\n                if ($parentWidth>$w) {\n                    if ($alignObject=='center')        $this->pdf->setX($this->pdf->getX() + ($parentWidth-$w)*0.5);\n                    else if ($alignObject=='right')    $this->pdf->setX($this->pdf->getX() + $parentWidth-$w);\n                }\n\n                $this->parsingCss->setPosition();\n                $this->_saveMax();\n                $this->_maxX = 0;\n                $this->_maxY = 0;\n                $this->_maxH = 0;\n                $this->_maxE = 0;\n            }\n\n            $this->_drawRectangle(\n                $this->parsingCss->value['x'],\n                $this->parsingCss->value['y'],\n                $this->parsingCss->value['width'],\n                $this->parsingCss->value['height'],\n                $this->parsingCss->value['border'],\n                $this->parsingCss->value['padding'],\n                0,\n                $this->parsingCss->value['background']\n            );\n\n            $marge = array();\n            $marge['l'] = $this->parsingCss->value['border']['l']['width'];\n            $marge['r'] = $this->parsingCss->value['border']['r']['width'];\n            $marge['t'] = $this->parsingCss->value['border']['t']['width'];\n            $marge['b'] = $this->parsingCss->value['border']['b']['width'];\n\n            $this->parsingCss->value['width'] -= $marge['l']+$marge['r'];\n            $this->parsingCss->value['height']-= $marge['t']+$marge['b'];\n\n            $overW-= $marge['l']+$marge['r'];\n            $overH-= $marge['t']+$marge['b'];\n\n            // clipping to draw only in the size opf the DRAW tag\n            $this->pdf->clippingPathStart(\n                $this->parsingCss->value['x']+$marge['l'],\n                $this->parsingCss->value['y']+$marge['t'],\n                $this->parsingCss->value['width'],\n                $this->parsingCss->value['height']\n            );\n\n            // left and right of the DRAW tag\n            $mL = $this->parsingCss->value['x']+$marge['l'];\n            $mR = $this->pdf->getW() - $mL - $overW;\n\n            // position of the DRAW tag\n            $x = $this->parsingCss->value['x']+$marge['l'];\n            $y = $this->parsingCss->value['y']+$marge['t'];\n\n            // prepare the drawing area\n            $this->_saveMargin($mL, 0, $mR);\n            $this->pdf->setXY($x, $y);\n\n            // we are in a draw tag\n            $this->_isInDraw = array(\n                'x' => $x,\n                'y' => $y,\n                'w' => $overW,\n                'h' => $overH,\n            );\n\n            // init the translate matrix : (0,0) => ($x, $y)\n            $this->pdf->doTransform(array(1,0,0,1,$x,$y));\n            $this->pdf->SetAlpha(1.);\n            return true;\n        }\n\n        /**\n         * tag : DRAW\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_DRAW($param)\n        {\n            if ($this->_isForOneLine) return false;\n\n            $this->pdf->SetAlpha(1.);\n            $this->pdf->undoTransform();\n            $this->pdf->clippingPathStop();\n\n            $this->_maxX = $this->parsingCss->value['old_maxX'];\n            $this->_maxY = $this->parsingCss->value['old_maxY'];\n            $this->_maxH = $this->parsingCss->value['old_maxH'];\n\n            $marge = array();\n            $marge['l'] = $this->parsingCss->value['border']['l']['width'];\n            $marge['r'] = $this->parsingCss->value['border']['r']['width'];\n            $marge['t'] = $this->parsingCss->value['border']['t']['width'];\n            $marge['b'] = $this->parsingCss->value['border']['b']['width'];\n\n            $x = $this->parsingCss->value['x'];\n            $y = $this->parsingCss->value['y'];\n            $w = $this->parsingCss->value['width']+$marge['l']+$marge['r'];\n            $h = $this->parsingCss->value['height']+$marge['t']+$marge['b'];\n\n            if ($this->parsingCss->value['position']!='absolute') {\n                $this->pdf->setXY($x+$w, $y);\n\n                $this->_maxX = max($this->_maxX, $x+$w);\n                $this->_maxY = max($this->_maxY, $y+$h);\n                $this->_maxH = max($this->_maxH, $h);\n                $this->_maxE++;\n            } else {\n                // position\n                $this->pdf->setXY($this->parsingCss->value['xc'], $this->parsingCss->value['yc']);\n\n                $this->_loadMax();\n            }\n\n            $block = ($this->parsingCss->value['display']!='inline' && $this->parsingCss->value['position']!='absolute');\n\n            $this->parsingCss->load();\n            $this->parsingCss->fontSet();\n            $this->_loadMargin();\n\n            if ($block) $this->_tag_open_BR(array());\n            if ($this->_debugActif) $this->_DEBUG_add('DRAW', false);\n\n            $this->_isInDraw = null;\n\n            return true;\n        }\n\n        /**\n         * tag : LINE\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_LINE($param)\n        {\n            if (!$this->_isInDraw) throw new HTML2PDF_exception(8, 'LINE');\n\n            $this->pdf->doTransform(isset($param['transform']) ? $this->_prepareTransform($param['transform']) : null);\n            $this->parsingCss->save();\n            $styles = $this->parsingCss->getSvgStyle('path', $param);\n            $styles['fill'] = null;\n            $style = $this->pdf->svgSetStyle($styles);\n\n            $x1 = isset($param['x1']) ? $this->parsingCss->ConvertToMM($param['x1'], $this->_isInDraw['w']) : 0.;\n            $y1 = isset($param['y1']) ? $this->parsingCss->ConvertToMM($param['y1'], $this->_isInDraw['h']) : 0.;\n            $x2 = isset($param['x2']) ? $this->parsingCss->ConvertToMM($param['x2'], $this->_isInDraw['w']) : 0.;\n            $y2 = isset($param['y2']) ? $this->parsingCss->ConvertToMM($param['y2'], $this->_isInDraw['h']) : 0.;\n            $this->pdf->svgLine($x1, $y1, $x2, $y2);\n\n            $this->pdf->undoTransform();\n            $this->parsingCss->load();\n        }\n\n        /**\n         * tag : RECT\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_RECT($param)\n        {\n            if (!$this->_isInDraw) throw new HTML2PDF_exception(8, 'RECT');\n\n            $this->pdf->doTransform(isset($param['transform']) ? $this->_prepareTransform($param['transform']) : null);\n            $this->parsingCss->save();\n            $styles = $this->parsingCss->getSvgStyle('path', $param);\n            $style = $this->pdf->svgSetStyle($styles);\n\n            $x = isset($param['x']) ? $this->parsingCss->ConvertToMM($param['x'], $this->_isInDraw['w']) : 0.;\n            $y = isset($param['y']) ? $this->parsingCss->ConvertToMM($param['y'], $this->_isInDraw['h']) : 0.;\n            $w = isset($param['w']) ? $this->parsingCss->ConvertToMM($param['w'], $this->_isInDraw['w']) : 0.;\n            $h = isset($param['h']) ? $this->parsingCss->ConvertToMM($param['h'], $this->_isInDraw['h']) : 0.;\n\n            $this->pdf->svgRect($x, $y, $w, $h, $style);\n\n            $this->pdf->undoTransform();\n            $this->parsingCss->load();\n        }\n\n        /**\n         * tag : CIRCLE\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_CIRCLE($param)\n        {\n            if (!$this->_isInDraw) throw new HTML2PDF_exception(8, 'CIRCLE');\n\n            $this->pdf->doTransform(isset($param['transform']) ? $this->_prepareTransform($param['transform']) : null);\n            $this->parsingCss->save();\n            $styles = $this->parsingCss->getSvgStyle('path', $param);\n            $style = $this->pdf->svgSetStyle($styles);\n\n            $cx = isset($param['cx']) ? $this->parsingCss->ConvertToMM($param['cx'], $this->_isInDraw['w']) : 0.;\n            $cy = isset($param['cy']) ? $this->parsingCss->ConvertToMM($param['cy'], $this->_isInDraw['h']) : 0.;\n            $r = isset($param['r']) ? $this->parsingCss->ConvertToMM($param['r'], $this->_isInDraw['w']) : 0.;\n            $this->pdf->svgEllipse($cx, $cy, $r, $r, $style);\n\n            $this->pdf->undoTransform();\n            $this->parsingCss->load();\n        }\n\n        /**\n         * tag : ELLIPSE\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_ELLIPSE($param)\n        {\n            if (!$this->_isInDraw) throw new HTML2PDF_exception(8, 'ELLIPSE');\n\n            $this->pdf->doTransform(isset($param['transform']) ? $this->_prepareTransform($param['transform']) : null);\n            $this->parsingCss->save();\n            $styles = $this->parsingCss->getSvgStyle('path', $param);\n            $style = $this->pdf->svgSetStyle($styles);\n\n            $cx = isset($param['cx']) ? $this->parsingCss->ConvertToMM($param['cx'], $this->_isInDraw['w']) : 0.;\n            $cy = isset($param['cy']) ? $this->parsingCss->ConvertToMM($param['cy'], $this->_isInDraw['h']) : 0.;\n            $rx = isset($param['ry']) ? $this->parsingCss->ConvertToMM($param['rx'], $this->_isInDraw['w']) : 0.;\n            $ry = isset($param['rx']) ? $this->parsingCss->ConvertToMM($param['ry'], $this->_isInDraw['h']) : 0.;\n            $this->pdf->svgEllipse($cx, $cy, $rx, $ry, $style);\n\n            $this->pdf->undoTransform();\n            $this->parsingCss->load();\n        }\n\n\n        /**\n         * tag : POLYLINE\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_POLYLINE($param)\n        {\n            if (!$this->_isInDraw) throw new HTML2PDF_exception(8, 'POLYGON');\n\n            $this->pdf->doTransform(isset($param['transform']) ? $this->_prepareTransform($param['transform']) : null);\n            $this->parsingCss->save();\n            $styles = $this->parsingCss->getSvgStyle('path', $param);\n            $style = $this->pdf->svgSetStyle($styles);\n\n            $path = isset($param['points']) ? $param['points'] : null;\n            if ($path) {\n                $path = str_replace(',', ' ', $path);\n                $path = preg_replace('/[\\s]+/', ' ', trim($path));\n\n                // prepare the path\n                $path = explode(' ', $path);\n                foreach ($path as $k => $v) {\n                    $path[$k] = trim($v);\n                    if ($path[$k]==='') unset($path[$k]);\n                }\n                $path = array_values($path);\n\n                $actions = array();\n                for ($k=0; $k<count($path); $k+=2) {\n                    $actions[] = array(\n                        ($k ? 'L' : 'M') ,\n                        $this->parsingCss->ConvertToMM($path[$k+0], $this->_isInDraw['w']),\n                        $this->parsingCss->ConvertToMM($path[$k+1], $this->_isInDraw['h'])\n                    );\n                }\n\n                // drawing\n                $this->pdf->svgPolygone($actions, $style);\n            }\n\n            $this->pdf->undoTransform();\n            $this->parsingCss->load();\n        }\n\n        /**\n         * tag : POLYGON\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_POLYGON($param)\n        {\n            if (!$this->_isInDraw) throw new HTML2PDF_exception(8, 'POLYGON');\n\n            $this->pdf->doTransform(isset($param['transform']) ? $this->_prepareTransform($param['transform']) : null);\n            $this->parsingCss->save();\n            $styles = $this->parsingCss->getSvgStyle('path', $param);\n            $style = $this->pdf->svgSetStyle($styles);\n\n            $path = (isset($param['points']) ? $param['points'] : null);\n            if ($path) {\n                $path = str_replace(',', ' ', $path);\n                $path = preg_replace('/[\\s]+/', ' ', trim($path));\n\n                // prepare the path\n                $path = explode(' ', $path);\n                foreach ($path as $k => $v) {\n                    $path[$k] = trim($v);\n                    if ($path[$k]==='') unset($path[$k]);\n                }\n                $path = array_values($path);\n\n                $actions = array();\n                for ($k=0; $k<count($path); $k+=2) {\n                    $actions[] = array(\n                        ($k ? 'L' : 'M') ,\n                        $this->parsingCss->ConvertToMM($path[$k+0], $this->_isInDraw['w']),\n                        $this->parsingCss->ConvertToMM($path[$k+1], $this->_isInDraw['h'])\n                    );\n                }\n                $actions[] = array('z');\n\n                // drawing\n                $this->pdf->svgPolygone($actions, $style);\n            }\n\n            $this->pdf->undoTransform();\n            $this->parsingCss->load();\n        }\n\n        /**\n         * tag : PATH\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_PATH($param)\n        {\n            if (!$this->_isInDraw) throw new HTML2PDF_exception(8, 'PATH');\n\n            $this->pdf->doTransform(isset($param['transform']) ? $this->_prepareTransform($param['transform']) : null);\n            $this->parsingCss->save();\n            $styles = $this->parsingCss->getSvgStyle('path', $param);\n            $style = $this->pdf->svgSetStyle($styles);\n\n            $path = isset($param['d']) ? $param['d'] : null;\n\n            if ($path) {\n                // prepare the path\n                $path = str_replace(',', ' ', $path);\n                $path = preg_replace('/([a-zA-Z])([0-9\\.\\-])/', '$1 $2', $path);\n                $path = preg_replace('/([0-9\\.])([a-zA-Z])/', '$1 $2', $path);\n                $path = preg_replace('/[\\s]+/', ' ', trim($path));\n                $path = preg_replace('/ ([a-z]{2})/', '$1', $path);\n\n                $path = explode(' ', $path);\n                foreach ($path as $k => $v) {\n                    $path[$k] = trim($v);\n                    if ($path[$k]==='') unset($path[$k]);\n                }\n                $path = array_values($path);\n\n                // read each actions in the path\n                $actions = array();\n                $action = array();\n                $lastAction = null; // last action found\n                for ($k=0; $k<count($path);true) {\n\n                    // for this actions, we can not have multi coordonate\n                    if (in_array($lastAction, array('z', 'Z'))) {\n                        $lastAction = null;\n                    }\n\n                    // read the new action (forcing if no action before)\n                    if (preg_match('/^[a-z]+$/i', $path[$k]) || $lastAction===null) {\n                        $lastAction = $path[$k];\n                        $k++;\n                    }\n\n                    // current action\n                    $action = array();\n                    $action[] = $lastAction;\n                    switch($lastAction)\n                    {\n                        case 'C':\n                        case 'c':\n                            $action[] = $this->parsingCss->ConvertToMM($path[$k+0], $this->_isInDraw['w']);    // x1\n                            $action[] = $this->parsingCss->ConvertToMM($path[$k+1], $this->_isInDraw['h']);    // y1\n                            $action[] = $this->parsingCss->ConvertToMM($path[$k+2], $this->_isInDraw['w']);    // x2\n                            $action[] = $this->parsingCss->ConvertToMM($path[$k+3], $this->_isInDraw['h']);    // y2\n                            $action[] = $this->parsingCss->ConvertToMM($path[$k+4], $this->_isInDraw['w']);    // x\n                            $action[] = $this->parsingCss->ConvertToMM($path[$k+5], $this->_isInDraw['h']);    // y\n                            $k+= 6;\n                            break;\n\n                        case 'Q':\n                        case 'S':\n                        case 'q':\n                        case 's':\n                            $action[] = $this->parsingCss->ConvertToMM($path[$k+0], $this->_isInDraw['w']);    // x2\n                            $action[] = $this->parsingCss->ConvertToMM($path[$k+1], $this->_isInDraw['h']);    // y2\n                            $action[] = $this->parsingCss->ConvertToMM($path[$k+2], $this->_isInDraw['w']);    // x\n                            $action[] = $this->parsingCss->ConvertToMM($path[$k+3], $this->_isInDraw['h']);    // y\n                            $k+= 4;\n                            break;\n\n                        case 'A':\n                        case 'a':\n                            $action[] = $this->parsingCss->ConvertToMM($path[$k+0], $this->_isInDraw['w']);    // rx\n                            $action[] = $this->parsingCss->ConvertToMM($path[$k+1], $this->_isInDraw['h']);    // ry\n                            $action[] = 1.*$path[$k+2];                                                        // angle de deviation de l'axe X\n                            $action[] = ($path[$k+3]=='1') ? 1 : 0;                                            // large-arc-flag\n                            $action[] = ($path[$k+4]=='1') ? 1 : 0;                                            // sweep-flag\n                            $action[] = $this->parsingCss->ConvertToMM($path[$k+5], $this->_isInDraw['w']);    // x\n                            $action[] = $this->parsingCss->ConvertToMM($path[$k+6], $this->_isInDraw['h']);    // y\n                            $k+= 7;\n                            break;\n\n                        case 'M':\n                        case 'L':\n                        case 'T':\n                        case 'm':\n                        case 'l':\n                        case 't':\n                            $action[] = $this->parsingCss->ConvertToMM($path[$k+0], $this->_isInDraw['w']);    // x\n                            $action[] = $this->parsingCss->ConvertToMM($path[$k+1], $this->_isInDraw['h']);    // y\n                            $k+= 2;\n                            break;\n\n                        case 'H':\n                        case 'h':\n                            $action[] = $this->parsingCss->ConvertToMM($path[$k+0], $this->_isInDraw['w']);    // x\n                            $k+= 1;\n                            break;\n\n                        case 'V':\n                        case 'v':\n                            $action[] = $this->parsingCss->ConvertToMM($path[$k+0], $this->_isInDraw['h']);    // y\n                            $k+= 1;\n                            break;\n\n                        case 'z':\n                        case 'Z':\n                        default:\n                            break;\n                    }\n                    // add the action\n                    $actions[] = $action;\n                }\n\n                // drawing\n                $this->pdf->svgPolygone($actions, $style);\n            }\n\n            $this->pdf->undoTransform();\n            $this->parsingCss->load();\n        }\n\n        /**\n         * tag : G\n         * mode : OPEN\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_open_G($param)\n        {\n            if (!$this->_isInDraw) throw new HTML2PDF_exception(8, 'G');\n\n            $this->pdf->doTransform(isset($param['transform']) ? $this->_prepareTransform($param['transform']) : null);\n            $this->parsingCss->save();\n            $styles = $this->parsingCss->getSvgStyle('path', $param);\n            $style = $this->pdf->svgSetStyle($styles);\n        }\n\n        /**\n         * tag : G\n         * mode : CLOSE\n         *\n         * @param  array $param\n         * @return boolean\n         */\n        protected function _tag_close_G($param)\n        {\n            $this->pdf->undoTransform();\n            $this->parsingCss->load();\n        }\n\n        /**\n         * new page for the automatic Index, does not use thie method. Only HTML2PDF_myPdf could use it !!!!\n         *\n         * @param  &int $page\n         * @return integer $oldPage\n         */\n        public function _INDEX_NewPage(&$page)\n        {\n            if ($page) {\n                $oldPage = $this->pdf->getPage();\n                $this->pdf->setPage($page);\n                $this->pdf->setXY($this->_margeLeft, $this->_margeTop);\n                $this->_maxH = 0;\n                $page++;\n                return $oldPage;\n            } else {\n                $this->_setNewPage();\n                return null;\n            }\n        }\n\n    }\n}"
  },
  {
    "path": "newscoop/include/html2pdf/locale/ca.csv",
    "content": "\"err01\",\"L'etiqueta <b>&lt;[[OTHER]]&gt;</b> encara no existeix.<br><br>Si voleu afegir-la, heu de crear els mètodes <b>o_[[OTHER]]</b> (per l'obertura) i <b>c_[[OTHER]]</b> (pel tancament) seguint el model de les etiquetes existents.<br><br>A més, si creeu nous mètodes, envieu-ho a webmaster@html2pdf.fr per tal d'afegir-los a les següents versions d'HTML2PDF, i que tothom en pugui gaudir.\"\n\"err02\",\"Frase de 1000 línies => massa llarga<br><b>Frase :</b> [[OTHER_0]]<br><b>Mida casella :</b> [[OTHER_1]]<br><b>Mida text :</b> [[OTHER_2]]<br>\"\n\"err03\",\"Codi HTML no vàlid, una etiqueta té un tancament de més : <b>&lt;[[OTHER]]&gt;</b>\"\n\"err04\",\"Codi HTML no vàlid, les etiquetes no estan tancades en l'ordre correcte.<br>Estat : <pre>[[OTHER]]</pre>\"\n\"err05\",\"Codi HTML no vàlid, totes les etiquetes han de tenir el seu tancament.<br>Estat : <pre>[[OTHER]]</pre>\"\n\"err06\",\"Impossible carregar la imatge <b>[[OTHER]]</b>\"\n\"err07\",\"El contingut d'una etiqueta TD no quep en una sola pàgina\"\n\"err08\",\"<b>&lt;[[OTHER]]&gt;</b> tag not in a &lt;DRAW&gt; tag\"\n\"err09\",\"The using of the <b>&lt;[[OTHER_0]]&gt;</b>> tag has changed, you can not use [[OTHER_1]] anymore. Read the WIKI\"\n\"txt01\",\"ERROR n°\"\n\"txt02\",\"Fitxer :\"\n\"txt03\",\"Línia :\"\n\"pdf01\",\"Document generat el [[date_d]]/[[date_m]]/[[date_y]]\"\n\"pdf02\",\"Document generat a les [[date_h]]:[[date_i]]\"\n\"pdf03\",\"Document generat el [[date_d]]/[[date_m]]/[[date_y]] a les [[date_h]]:[[date_i]]\"\n\"pdf04\",\"Pàgina [[page_cu]]/[[page_nb]]\"\n\"pdf05\",\"Els formularis requereixen l'ús de l'Adobe Reader 9\"\n\"vue01\",\"CAPÇALERA\"\n\"vue02\",\"PEU DE PÀGINA\"\n\"vue03\",\"PÀGINA\"\n\"vue04\",\"Visualització\"\n"
  },
  {
    "path": "newscoop/include/html2pdf/locale/cs.csv",
    "content": "\"﻿err01\",\"Element <b>&lt;[[OTHER]]&gt;</b> neexistuje.<br><br>Pokud ho chcete přidat, musíte vytvořit metodu <b>o_[[OTHER]]</b> (pro otevření) a <b>c_[[OTHER]]</b> (pro zavření) k začlenění do modelu jako existující element.<br><br>Pokud vytvoříte metodu, nebojte se poslat email na webmaster@html2pdf.fr k zařazení do další verze HTML2PDF.\"\n\"err02\",\"Sentence of 1000 lines => too long<br><b>Sentence :</b> [[OTHER_0]]<br><b>Width box :</b> [[OTHER_1]]<br><b>Length text :</b> [[OTHER_2]]<br>\"\n\"err03\",\"Chyba v HTML, element je příliš mnohokrát zavřen: <b>&lt;[[OTHER]]&gt;</b>\"\n\"err04\",\"Chyba v HTML, element není uzavřen ve správném pořadí.<br>Stav : <pre>[[OTHER]]</pre>\"\n\"err05\",\"Chyba v HTML, všechny elementy musí být zavřeny.<br>Stav : <pre>[[OTHER]]</pre>\"\n\"err06\",\"Menohu načíst orbázek <b>[[OTHER]]</b>\"\n\"err07\",\"Obsah TD elementu se nevejde na jednu stránku\"\n\"err08\",\"<b>&lt;[[OTHER]]&gt;</b> element není v &lt;DRAW&gt; elementu\"\n\"err09\",\"The using of the <b>&lt;[[OTHER_0]]&gt;</b>> tag has changed, you can not use [[OTHER_1]] anymore. Read the WIKI\"\n\"txt01\",\"CHYBA č.\"\n\"txt02\",\"Soubor :\"\n\"txt03\",\"Řádek :\"\n\"pdf01\",\"Dokument vytvořen dne [[date_d]].[[date_m]].[[date_y]]\"\n\"pdf02\",\"Dokument vytvořen v [[date_h]]:[[date_i]]\"\n\"pdf03\",\"Dokument vytvořen dne [[date_d]].[[date_m]].[[date_y]] v [[date_h]]:[[date_i]]\"\n\"pdf04\",\"Stránka [[page_cu]]/[[page_nb]]\"\n\"pdf05\",\"Formuláře vyžadují Adobe Reader 9\"\n\"vue01\",\"HLAVIČKA\"\n\"vue02\",\"PATIČKA\"\n\"vue03\",\"STRÁNKA\"\n\"vue04\",\"POHLED\"\n"
  },
  {
    "path": "newscoop/include/html2pdf/locale/da.csv",
    "content": "\"err01\",\"Tag <b>&lt;[[OTHER]]&gt;</b> endnu ikke eksisterer.<br><br>Hvis du ønsker at tilføje det, skal du oprette de metoder <b>o_[[OTHER]]</b> (for åbning) og <b>c_[[OTHER]]</b> (for lukning) ved at følge den model af eksisterende tags.<br><br>Hvis du opretter disse metoder, så tøv ikke med at send mig en e-mail til webmaster@html2pdf.fr til indsat dem i den næste version af HTML2PDF.\"\n\"err02\",\"Sætning af 1000 lines => er for lang<br><b>sætning :</b> [[OTHER_0]]<br><b>Bredde boksen :</b> [[OTHER_1]]<br><b>Længde tekst :</b> [[OTHER_2]]<br>\"\n\"err03\",\"HTML-kode er ugyldig, et tag er lukket for mange gange: <b>&lt;[[OTHER]]&gt;</b>\"\n\"err04\",\"HTML-kode er ugyldig, tags er ikke afsluttet på en ordentlig måde.<br>Status : <pre>[[OTHER]]</pre>\"\n\"err05\",\"HTML-kode er ugyldig, alle tags skal lukkes. <br>Status : <pre>[[OTHER]]</pre>\"\n\"err06\",\"Umuligt at indlæse billedet <b>[[OTHER]]</b>\"\n\"err07\",\"Indholdet af en TD tag ikke passer på én side\"\n\"err08\",\"<b>&lt;[[OTHER]]&gt;</b> tag not in a &lt;DRAW&gt; tag\"\n\"err09\",\"The using of the <b>&lt;[[OTHER_0]]&gt;</b>> tag has changed, you can not use [[OTHER_1]] anymore. Read the WIKI\"\n\"txt01\",\"FEJL n°\"\n\"txt02\",\"File :\"\n\"txt03\",\"Linje :\"\n\"pdf01\",\"Siden oprettet d. [[date_y]]-[[date_m]]-[[date_d]]\"\n\"pdf02\",\"Siden oprettet d. [[date_h]]:[[date_i]]\"\n\"pdf03\",\"Siden oprettet d. [[date_y]]-[[date_m]]-[[date_d]] at [[date_h]]:[[date_i]]\"\n\"pdf04\",\"Side [[page_cu]]/[[page_nb]]\"\n\"pdf05\",\"De formularer kræver brug af Adobe Reader 9\"\n\"vue01\",\"HEADER\"\n\"vue02\",\"FOOTER\"\n\"vue03\",\"PAGE\"\n\"vue04\",\"View\"\n"
  },
  {
    "path": "newscoop/include/html2pdf/locale/de.csv",
    "content": "\"err01\",\"Das Tag <b>&lt;[[OTHER]]&gt;</b> existiert noch nicht.<br><br>Wenn Sie es hinzufügen möchten, sollen Sie die Methoden<b>o_[[OTHER]]</b> (zu öffnen) und <b>c_[[OTHER]]</b> (zu schließen) nach dem Modell den existierenden Tags.<br><br>Wenn Sie diese Methoden außerdem aufbauen, bitte teilen Sie sie duch eine E-Mail an meine Adresse : webmaster@html2pdf.fr, so daß sie künftig in die nächste Version von HTML2PDF erscheinen.\"\n\"err02\",\"1000-Linien Satz => zu lang<br><b>Satz :</b> [[OTHER_0]]<br><b>Breite des Eingabefelds :</b> [[OTHER_1]]<br><b>Länge des Texts :</b> [[OTHER_2]]<br>\"\n\"err03\",\"Falsches HTML Code, überzähliges geschloßene Tag : <b>&lt;[[OTHER]]&gt;</b>\"\n\"err04\",\"Falsches HTML Code, die Tags sind nicht in richtiger Ordnung geschloßen.<br>Status : <pre>[[OTHER]]</pre>\"\n\"err05\",\"Falsches HTML Code, alle Tags sollen geschloßen sein.<br>Status : <pre>[[OTHER]]</pre>\"\n\"err06\",\"Ladung des Bilds unmöglich <b>[[OTHER]]</b>\"\n\"err07\",\"Er Inhalt eines TD-Tag passt nicht nur auf einer Seite\"\n\"err08\",\"<b>&lt;[[OTHER]]&gt;</b> tag not in a &lt;DRAW&gt; tag\"\n\"err09\",\"The using of the <b>&lt;[[OTHER_0]]&gt;</b>> tag has changed, you can not use [[OTHER_1]] anymore. Read the WIKI\"\n\"txt01\",\"Fehler n°\"\n\"txt02\",\"Datei :\"\n\"txt03\",\"Linie :\"\n\"pdf01\",\"Datei aufgebaut am [[date_d]]/[[date_m]]/[[date_y]]\"\n\"pdf02\",\"Datei aufgebaut um [[date_h]]:[[date_m]]\"\n\"pdf03\",\"Datei aufgebaut am [[date_d]]/[[date_m]]/[[date_y]] um [[date_h]]:[[date_i]]\"\n\"pdf04\",\"Seite [[page_cu]]/[[page_nb]]\"\n\"pdf05\",\"Die Formulare benötigen Sie den Adobe Reader 9\"\n\"vue01\",\"Seite-Header\"\n\"vue02\",\"Fußzeile\"\n\"vue03\",\"Seite\"\n\"vue04\",\"Visualisierung\"\n"
  },
  {
    "path": "newscoop/include/html2pdf/locale/en.csv",
    "content": "\"err01\",\"The tag <b>&lt;[[OTHER]]&gt;</b> does not yet exist.<br><br>If you want to add it, you must create the methods <b>o_[[OTHER]]</b> (for opening) and <b>c_[[OTHER]]</b> (for closure) by following the model of existing tags.<br><br>If you create these methods, do not hesitate to send me an email to webmaster@html2pdf.fr to included them in the next version of HTML2PDF.\"\n\"err02\",\"Sentence of 1000 lines => too long<br><b>Sentence :</b> [[OTHER_0]]<br><b>Width box :</b> [[OTHER_1]]<br><b>Length text :</b> [[OTHER_2]]<br>\"\n\"err03\",\"HTML code invalid, a tag is closed too many times: <b>&lt;[[OTHER]]&gt;</b>\"\n\"err04\",\"HTML code invalid, the tags are not closed in an orderly fashion.<br>Status : <pre>[[OTHER]]</pre>\"\n\"err05\",\"HTML code invalid, all tags must be closed.<br>Status : <pre>[[OTHER]]</pre>\"\n\"err06\",\"Impossible to load the image <b>[[OTHER]]</b>\"\n\"err07\",\"The content of a TD tag does not fit on only one page\"\n\"err08\",\"<b>&lt;[[OTHER]]&gt;</b> tag not in a &lt;DRAW&gt; tag\"\n\"err09\",\"The using of the <b>&lt;[[OTHER_0]]&gt;</b>> tag has changed, you can not use [[OTHER_1]] anymore. Read the WIKI\"\n\"txt01\",\"ERROR n°\"\n\"txt02\",\"File :\"\n\"txt03\",\"Line :\"\n\"pdf01\",\"Document generated on [[date_y]]-[[date_m]]-[[date_d]]\"\n\"pdf02\",\"Document generated at [[date_h]]:[[date_i]]\"\n\"pdf03\",\"Document generated on [[date_y]]-[[date_m]]-[[date_d]] at [[date_h]]:[[date_i]]\"\n\"pdf04\",\"Page [[page_cu]]/[[page_nb]]\"\n\"pdf05\",\"The forms require the use of Adobe Reader 9\"\n\"vue01\",\"HEADER\"\n\"vue02\",\"FOOTER\"\n\"vue03\",\"PAGE\"\n\"vue04\",\"View\"\n"
  },
  {
    "path": "newscoop/include/html2pdf/locale/es.csv",
    "content": "\"err01\",\"La etiqueta <b>&lt;[[OTHER]]&gt;</b> todavía no existe.<br><br>Si quiere añadirla, debe crear los métodos <b>o_[[OTHER]]</b> (para la apertura) y <b>c_[[OTHER]]</b> (para el cierre) siguiendo el modelo de las etiquetas existentes.<br><br>Si crea nuevos métodos, envíelos a webmaster@html2pdf.fr para añadirlos a las siguientes versiones de HTML2PDF, y que todo el mundo se pueda beneficiar.\"\n\"err02\",\"Frase de 1000 líneas => demasiado larga<br><b>Frase :</b> [[OTHER_0]]<br><b>Tamaño casilla :</b> [[OTHER_1]]<br><b>Tamaño texto :</b> [[OTHER_2]]<br>\"\n\"err03\",\"Código HTML no válido, una etiqueta tiene un cierre de más : <b>&lt;[[OTHER]]&gt;</b>\"\n\"err04\",\"Código HTML no válido, las etiquetas no estan cerradas en el orden correcto.<br>Estado : <pre>[[OTHER]]</pre>\"\n\"err05\",\"Código HTML no válido, todas las etiquetas deben tener su cierre.<br>Estado : <pre>[[OTHER]]</pre>\"\n\"err06\",\"Imposible cargar la imagen <b>[[OTHER]]</b>\"\n\"err07\",\"El contenido de una etiqueta TD no encaja en una sola página\"\n\"err08\",\"<b>&lt;[[OTHER]]&gt;</b> tag not in a &lt;DRAW&gt; tag\"\n\"err09\",\"The using of the <b>&lt;[[OTHER_0]]&gt;</b>> tag has changed, you can not use [[OTHER_1]] anymore. Read the WIKI\"\n\"txt01\",\"ERROR n°\"\n\"txt02\",\"Fichero :\"\n\"txt03\",\"Línea :\"\n\"pdf01\",\"Documento generado el [[date_d]]/[[date_m]]/[[date_y]]\"\n\"pdf02\",\"Documento generado a las [[date_h]]:[[date_i]]\"\n\"pdf03\",\"Documento generado el [[date_d]]/[[date_m]]/[[date_y]] a las [[date_h]]:[[date_i]]\"\n\"pdf04\",\"Página [[page_cu]]/[[page_nb]]\"\n\"pdf05\",\"Los formularios requieren el uso de Adobe Reader 9\"\n\"vue01\",\"ENCABEZADO\"\n\"vue02\",\"PIE DE PÁGINA\"\n\"vue03\",\"PÁGINA\"\n\"vue04\",\"Visualización\"\n"
  },
  {
    "path": "newscoop/include/html2pdf/locale/fr.csv",
    "content": "\"err01\",\"La balise <b>&lt;[[OTHER]]&gt;</b> n'existe pas encore.<br><br>Si vous voulez la rajouter, vous devez créer les méthodes <b>o_[[OTHER]]</b> (pour l'ouverture) et <b>c_[[OTHER]]</b> (pour la fermeture) en suivant le modèle des balises existantes.<br><br>De plus, si vous créez ces méthodes, n'hésitez pas à en faire profiter tout le monde en m'écrivant sur webmaster@html2pdf.fr afin qu'elles se retrouvent dans la prochaine version d'HTML2PDF.\"\n\"err02\",\"Phrase de 1000 lignes => trop long<br><b>Phrase :</b> [[OTHER_0]]<br><b>Largeur case :</b> [[OTHER_1]]<br><b>Longueur text :</b> [[OTHER_2]]<br>\"\n\"err03\",\"Code HTML non valide, une balise est fermée en trop : <b>&lt;[[OTHER]]&gt;</b>\"\n\"err04\",\"Code HTML non valide, les balises ne sont pas fermées dans le bon ordre.<br>Etat : <pre>[[OTHER]]</pre>\"\n\"err05\",\"Code HTML non valide, toutes les balises doivent être fermées.<br>Etat : <pre>[[OTHER]]</pre>\"\n\"err06\",\"Impossible de charger l'image <b>[[OTHER]]</b>\"\n\"err07\",\"le contenu d'une balise TD ne rentre pas sur une seule page\"\n\"err08\",\"Balise <b>&lt;[[OTHER]]&gt;</b> non contenu dans une balise &lt;DRAW&gt;\"\n\"err09\",\"L'utilisation de la balise <b>&lt;[[OTHER_0]]&gt;</b> a changé, vous ne pouvez plus utiliser [[OTHER_1]]. Lisez le WIKI\"\n\"txt01\",\"ERREUR n°\"\n\"txt02\",\"Fichier :\"\n\"txt03\",\"Ligne :\"\n\"pdf01\",\"Document généré le [[date_d]]/[[date_m]]/[[date_y]]\"\n\"pdf02\",\"Document généré à [[date_h]]:[[date_i]]\"\n\"pdf03\",\"Document généré le [[date_d]]/[[date_m]]/[[date_y]] à [[date_h]]:[[date_i]]\"\n\"pdf04\",\"Page [[page_cu]]/[[page_nb]]\"\n\"pdf05\",\"Les formulaires nécessitent  l'utilisation de Adobe Reader 9\"\n\"vue01\",\"HEADER\"\n\"vue02\",\"FOOTER\"\n\"vue03\",\"PAGE\"\n\"vue04\",\"Restitution\"\n"
  },
  {
    "path": "newscoop/include/html2pdf/locale/it.csv",
    "content": "\"err01\",\"Il tag <b>&lt;[[OTHER]]&gt;</b> non esiste ancora.<br><br>Se si desidera aggiungere, è necessario creare metodi <b>o_[[OTHER]]</b> (di apertura) e <b>C_[[OTHER]]</b> (per la chiusura) secondo il modello esistente di tag.<br><br>Inoltre, se si creare questi metodi, non esitate a portare il mondo intero ha scritto su webmaster@html2pdf.fr in modo che alla fine nella prossima versione di HTML2PDF.\"\n\"err02\",\"Citazione di 1000 linee => troppo lungo<br><b>frase :</b> [[OTHER_0]]<br><b>casella Larghezza :</b> [[OTHER_1]]<br><b>Lunghezza testo :</b> [[OTHER_2]]<br>\"\n\"err03\",\"HTML non valido, un tag è chiusa troppo <b>&lt;[[OTHER]]&gt;</ b>\"\n\"err04\",\"HTML non validi, i tag non sono chiusi nel corretto ordine.<br>Stato :<pre>[[OTHER]]</pre>\"\n\"err05\",\"HTML non valido, tutte le tag deve essere chiuso.<br>Stato :<pre>[[OTHER]]</pre>\"\n\"err06\",\"Impossibile caricare l'immagine <b>[[OTHER]]</b>\"\n\"err07\",\"il contenuto di un tag TD non rientra in una sola pagina\"\n\"err08\",\"<b>&lt;[[OTHER]]&gt;</b> tag not in a &lt;DRAW&gt; tag\"\n\"err09\",\"The using of the <b>&lt;[[OTHER_0]]&gt;</b>> tag has changed, you can not use [[OTHER_1]] anymore. Read the WIKI\"\n\"txt01\",\"ERRORE n°\"\n\"txt02\",\"File :\"\n\"txt03\",\"Linea :\"\n\"pdf01\",\"Documento generato il [[date_d]]/[[date_m]]/[[date_y]]\"\n\"pdf02\",\"Documento generato [[date_h]]:[[date_i]]\"\n\"pdf03\",\"Documento generato il [[date_d]]/[[date_m]]/[[date_y]] nel [[date_h]]:[[date_i]]\"\n\"pdf04\",\"Pagina [[page_cu]]/[[page_nb]]\"\n\"pdf05\",\"I moduli richiedono l'uso di Adobe Reader 9\"\n\"vue01\",\"HEADER\"\n\"vue02\",\"FOOTER\"\n\"vue03\",\"PAGINA\"\n\"vue04\",\"Visualization\"\n"
  },
  {
    "path": "newscoop/include/html2pdf/locale/nl.csv",
    "content": "\"err01\",\"De tag <b>&lt;[[OTHER]]&gt;</b> bestaat nog niet.<br><br>Om deze toe te voegen, gebruik de methods <b>o_[[OTHER]]</b> (om te openen) en <b>c_[[OTHER]]</b> (om te sluiten) volgens het model van de bestaande tags.<br><br>Als u deze methods maakt, stuur deze dan a.u.b. via e-mail naar webmaster@html2pdf.fr voor opname in de volgende versie van HTML2PDF.\"\n\"err02\",\"Zin van 1000 regels => te lang<br><b>Zin :</b> [[OTHER_0]]<br><b>Kaderbreedte :</b> [[OTHER_1]]<br><b>Tekstlengte :</b> [[OTHER_2]]<br>\"\n\"err03\",\"Ongeldige HTML code, overvloedig afgesloten tag : <b>&lt;[[OTHER]]&gt;</b>\"\n\"err04\",\"Ongeldige HTML code, de tags zijn niet correct afgesloten.<br>Status : <pre>[[OTHER]]</pre>\"\n\"err05\",\"Ongeldige HTML code, alle tags dienen te zijn gesloten.<br>Status : <pre>[[OTHER]]</pre>\"\n\"err06\",\"Kan afbeelding niet laden: <b>[[OTHER]]</b>\"\n\"err07\",\"De inhoud van de cel (<TD>) past niet op een pagina\"\n\"err08\",\"<b>&lt;[[OTHER]]&gt;</b> tag not in a &lt;DRAW&gt; tag\"\n\"err09\",\"The using of the <b>&lt;[[OTHER_0]]&gt;</b>> tag has changed, you can not use [[OTHER_1]] anymore. Read the WIKI\"\n\"txt01\",\"Fout nr\"\n\"txt02\",\"Bestand :\"\n\"txt03\",\"Regel :\"\n\"pdf01\",\"Document gemaakt op [[date_d]]-[[date_m]]-[[date_y]]\"\n\"pdf02\",\"Document gemaakt om [[date_h]]:[[date_i]]\"\n\"pdf03\",\"Document gemaakt op [[date_d]]-[[date_m]]-[[date_y]] om [[date_h]]:[[date_i]]\"\n\"pdf04\",\"Pagina [[page_cu]] van [[page_nb]]\"\n\"pdf05\",\"De formulieren vereisen het gebruik van Adobe Reader 9\"\n\"vue01\",\"Paginakop\"\n\"vue02\",\"Paginavoet\"\n\"vue03\",\"Pagina\"\n\"vue04\",\"Bekijken\"\n"
  },
  {
    "path": "newscoop/include/html2pdf/locale/pt.csv",
    "content": "\"err01\",\"A tag <b>&lt;[[OTHER]]&gt;</b> ainda não existe.<br><br>Se você quer inserí-la, deve criar os métodos <b>o_[[OTHER]]</b> (para abrí-la) e <b>c_[[OTHER]]</b> (para fechá-la) seguindo o modelo das tags existentes.<br><br>Se você criar novos métodos, os envie para webmaster@html2pdf.fr para que as próximas versões de HTML2PDF, e o restante do mundo se beneficie com isso.\"\n\"err02\",\"Frase de 1000 linhas => muito grande<br><b>Frase :</b> [[OTHER_0]]<br><b>Tamanho do quadro :</b> [[OTHER_1]]<br><b>Tamanho do texto :</b> [[OTHER_2]]<br>\"\n\"err03\",\"Código HTML não válido, uma tag está com fechamento sobrando : <b>&lt;[[OTHER]]&gt;</b>\"\n\"err04\",\"Código HTML não válido, as tags não estão fechadas na ordem correta.<br>Estado : <pre>[[OTHER]]</pre>\"\n\"err05\",\"Código HTML não válido, todas as tags devem ser fechadas.<br>Estado : <pre>[[OTHER]]</pre>\"\n\"err06\",\"Impossível carregar imagem <b>[[OTHER]]</b>\"\n\"err07\",\"O conteúdo de uma tag TD não se encaixa em apenas uma página\"\n\"err08\",\"<b>&lt;[[OTHER]]&gt;</b> tag not in a &lt;DRAW&gt; tag\"\n\"err09\",\"The using of the <b>&lt;[[OTHER_0]]&gt;</b>> tag has changed, you can not use [[OTHER_1]] anymore. Read the WIKI\"\n\"txt01\",\"ERRO n°\"\n\"txt02\",\"Arquivo :\"\n\"txt03\",\"Linha :\"\n\"pdf01\",\"Documento generado em [[date_d]]/[[date_m]]/[[date_y]]\"\n\"pdf02\",\"Documento generado às [[date_h]]:[[date_i]]\"\n\"pdf03\",\"Documento generado em [[date_d]]/[[date_m]]/[[date_y]] às [[date_h]]:[[date_i]]\"\n\"pdf04\",\"Página [[page_cu]]/[[page_nb]]\"\n\"pdf05\",\"Os formulários exigem a utilização do Adobe Reader 9\"\n\"vue01\",\"CABEÇALHO\"\n\"vue02\",\"RODAPÉ\"\n\"vue03\",\"PÁGINA\"\n\"vue04\",\"Visualização\"\n"
  },
  {
    "path": "newscoop/include/html2pdf/locale/tr.csv",
    "content": "\"err01\",\"<b>&lt;[[OTHER]]&gt;</b> etiketi bulunamadý.<br><br>Eklemek isterseniz, <b>o_[[OTHER]]</b> þeklinde açýp, <b>c_[[OTHER]]</b> þeklinde kapatabilirsiniz.<br><br> Bu þekilde etiketler üretirseniz lütfen daha sonraki HTML2PDF versiyonuna eklenmek üzere bana gönderin. ( webmaster@html2pdf.fr ).\"\n\"err02\",\"Ýçerik 1000 satýrdan fazla ve gerekenden uzun <br><b>Konu :</b> [[OTHER_0]]<br><b>Geniþlik :</b> [[OTHER_1]]<br><b>Yazý boyutu :</b> [[OTHER_2]]<br>\"\n\"err03\",\"HTML kodu hatalý, etiket birden fazla defa kapatýlmýþ: <b>&lt;[[OTHER]]&gt;</b>\"\n\"err04\",\"HTML kodu hatalý, etiketler gereken düzen içinde kapatýlmamýþ.<br>Durum : <pre>[[OTHER]]</pre>\"\n\"err05\",\"HTML kodu hatalý, bütün etiketler kapatýlmalý.<br>Durum : <pre>[[OTHER]]</pre>\"\n\"err06\",\"Resim dosyasý okunamýyor <b>[[OTHER]]</b>\"\n\"err07\",\"TD içeriði bir sayfaya sýðmýyor\"\n\"err08\",\"<b>&lt;[[OTHER]]&gt;</b> tag not in a &lt;DRAW&gt; tag\"\n\"err09\",\"The using of the <b>&lt;[[OTHER_0]]&gt;</b>> tag has changed, you can not use [[OTHER_1]] anymore. Read the WIKI\"\n\"txt01\",\"HATA n°\"\n\"txt02\",\"Dosya :\"\n\"txt03\",\"Satýr :\"\n\"pdf01\",\"Doküman üretilme tarihi [[date_y]]-[[date_m]]-[[date_d]]\"\n\"pdf02\",\"Doküman üretilme tarihi [[date_h]]:[[date_i]]\"\n\"pdf03\",\"Doküman üretilme tarihi [[date_y]]-[[date_m]]-[[date_d]] saati [[date_h]]:[[date_i]]\"\n\"pdf04\",\"Sayfa [[page_cu]]/[[page_nb]]\"\n\"pdf05\",\"Adobe Reader 9 gerektirir\"\n\"vue01\",\"DOSYA ÜSTÜ\"\n\"vue02\",\"DOSYA ALTI\"\n\"vue03\",\"SAYFA\"\n\"vue04\",\"Görünüm\"\n"
  },
  {
    "path": "newscoop/include/mime_content_type.php",
    "content": "<?php\nif(!function_exists('mime_content_type')) {\n\n    function mime_content_type($filename) {\n\n        // falback array extension to mimetype\n        $mime_types = array(\n\n            'txt' => 'text/plain',\n            'htm' => 'text/html',\n            'html' => 'text/html',\n            'php' => 'text/html',\n            'css' => 'text/css',\n            'js' => 'application/javascript',\n            'json' => 'application/json',\n            'xml' => 'application/xml',\n            'swf' => 'application/x-shockwave-flash',\n            'flv' => 'video/x-flv',\n\n            // images\n            'png' => 'image/png',\n            'jpe' => 'image/jpeg',\n            'jpeg' => 'image/jpeg',\n            'jpg' => 'image/jpeg',\n            'gif' => 'image/gif',\n            'bmp' => 'image/bmp',\n            'ico' => 'image/vnd.microsoft.icon',\n            'tiff' => 'image/tiff',\n            'tif' => 'image/tiff',\n            'svg' => 'image/svg+xml',\n            'svgz' => 'image/svg+xml',\n\n            // archives\n            'zip' => 'application/zip',\n            'rar' => 'application/x-rar-compressed',\n            'exe' => 'application/x-msdownload',\n            'msi' => 'application/x-msdownload',\n            'cab' => 'application/vnd.ms-cab-compressed',\n\n            // audio/video\n            'mp3' => 'audio/mpeg',\n            'qt' => 'video/quicktime',\n            'mov' => 'video/quicktime',\n\n            // adobe\n            'pdf' => 'application/pdf',\n            'psd' => 'image/vnd.adobe.photoshop',\n            'ai' => 'application/postscript',\n            'eps' => 'application/postscript',\n            'ps' => 'application/postscript',\n\n            // ms office\n            'doc' => 'application/msword',\n            'rtf' => 'application/rtf',\n            'xls' => 'application/vnd.ms-excel',\n            'ppt' => 'application/vnd.ms-powerpoint',\n\n            // open office\n            'odt' => 'application/vnd.oasis.opendocument.text',\n            'ods' => 'application/vnd.oasis.opendocument.spreadsheet',\n        );\n\n        if (function_exists('finfo_open')) {\n            $finfo = finfo_open(FILEINFO_MIME);\n            $mimetype = finfo_file($finfo, $filename);\n            finfo_close($finfo);\n            return $mimetype;\n        }\n        elseif (array_key_exists($ext, $mime_types)) {\n            $ext = strtolower(array_pop(explode('.',$filename)));\n            return $mime_types[$ext];\n        }\n        else {\n            return 'application/octet-stream';\n        }\n    }\n}"
  },
  {
    "path": "newscoop/include/pearcmd.php",
    "content": "<?php\n/**\n * PEAR, the PHP Extension and Application Repository\n *\n * Command line interface\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Tomas V.V.Cox <cox@idecnet.com>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: pearcmd.php 296932 2010-03-27 15:13:06Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n */\n\nob_end_clean();\nif (!defined('PEAR_RUNTYPE')) {\n    // this is defined in peclcmd.php as 'pecl'\n    define('PEAR_RUNTYPE', 'pear');\n}\ndefine('PEAR_IGNORE_BACKTRACE', 1);\n/**\n * @nodep Gtk\n */\nif ('/usr/share/php' != '@'.'include_path'.'@') {\n    ini_set('include_path', '/usr/share/php');\n    $raw = false;\n} else {\n    // this is a raw, uninstalled pear, either a cvs checkout, or php distro\n    $raw = true;\n}\n@ini_set('allow_url_fopen', true);\nif (!ini_get('safe_mode')) {\n    @set_time_limit(0);\n}\nob_implicit_flush(true);\n@ini_set('track_errors', true);\n@ini_set('html_errors', false);\n@ini_set('magic_quotes_runtime', false);\n$_PEAR_PHPDIR = '#$%^&*';\nset_error_handler('error_handler');\n\n$pear_package_version = \"1.9.1\";\n\nrequire_once 'PEAR.php';\nrequire_once 'PEAR/Frontend.php';\nrequire_once 'PEAR/Config.php';\nrequire_once 'PEAR/Command.php';\nrequire_once 'Console/Getopt.php';\n\n\nPEAR_Command::setFrontendType('CLI');\n$all_commands = PEAR_Command::getCommands();\n\n// remove this next part when we stop supporting that crap-ass PHP 4.2\nif (!isset($_SERVER['argv']) && !isset($argv) && !isset($HTTP_SERVER_VARS['argv'])) {\n    echo 'ERROR: either use the CLI php executable, or set register_argc_argv=On in php.ini';\n    exit(1);\n}\n\n$argv = Console_Getopt::readPHPArgv();\n// fix CGI sapi oddity - the -- in pear.bat/pear is not removed\nif (php_sapi_name() != 'cli' && isset($argv[1]) && $argv[1] == '--') {\n    unset($argv[1]);\n    $argv = array_values($argv);\n}\n$progname = PEAR_RUNTYPE;\narray_shift($argv);\n$options = Console_Getopt::getopt2($argv, \"c:C:d:D:Gh?sSqu:vV\");\nif (PEAR::isError($options)) {\n    usage($options);\n}\n\n$opts = $options[0];\n\n$fetype = 'CLI';\nif ($progname == 'gpear' || $progname == 'pear-gtk') {\n    $fetype = 'Gtk';\n} else {\n    foreach ($opts as $opt) {\n        if ($opt[0] == 'G') {\n            $fetype = 'Gtk';\n        }\n    }\n}\n//Check if Gtk and PHP >= 5.1.0\nif ($fetype == 'Gtk' && version_compare(phpversion(), '5.1.0', '>=')) {\n    $fetype = 'Gtk2';\n}\n\n$pear_user_config = '';\n$pear_system_config = '';\n$store_user_config = false;\n$store_system_config = false;\n$verbose = 1;\n\nforeach ($opts as $opt) {\n    switch ($opt[0]) {\n        case 'c':\n            $pear_user_config = $opt[1];\n            break;\n        case 'C':\n            $pear_system_config = $opt[1];\n            break;\n    }\n}\n\nPEAR_Command::setFrontendType($fetype);\n$ui = &PEAR_Command::getFrontendObject();\n$config = &PEAR_Config::singleton($pear_user_config, $pear_system_config);\n\nif (PEAR::isError($config)) {\n    $_file = '';\n    if ($pear_user_config !== false) {\n       $_file .= $pear_user_config;\n    }\n    if ($pear_system_config !== false) {\n       $_file .= '/' . $pear_system_config;\n    }\n    if ($_file == '/') {\n        $_file = 'The default config file';\n    }\n    $config->getMessage();\n    $ui->outputData(\"ERROR: $_file is not a valid config file or is corrupted.\");\n    // We stop, we have no idea where we are :)\n    exit(1);\n}\n\n// this is used in the error handler to retrieve a relative path\n$_PEAR_PHPDIR = $config->get('php_dir');\n$ui->setConfig($config);\nPEAR::setErrorHandling(PEAR_ERROR_CALLBACK, array($ui, \"displayFatalError\"));\nif (ini_get('safe_mode')) {\n    $ui->outputData('WARNING: running in safe mode requires that all files created ' .\n        'be the same uid as the current script.  PHP reports this script is uid: ' .\n        @getmyuid() . ', and current user is: ' . @get_current_user());\n}\n\n$verbose = $config->get(\"verbose\");\n$cmdopts = array();\n\nif ($raw) {\n    if (!$config->isDefinedLayer('user') && !$config->isDefinedLayer('system')) {\n        $found = false;\n        foreach ($opts as $opt) {\n            if ($opt[0] == 'd' || $opt[0] == 'D') {\n                $found = true; // the user knows what they are doing, and are setting config values\n            }\n        }\n        if (!$found) {\n            // no prior runs, try to install PEAR\n            if (strpos(dirname(__FILE__), 'scripts')) {\n                $packagexml = dirname(dirname(__FILE__)) . DIRECTORY_SEPARATOR . 'package2.xml';\n                $pearbase = dirname(dirname(__FILE__));\n            } else {\n                $packagexml = dirname(__FILE__) . DIRECTORY_SEPARATOR . 'package2.xml';\n                $pearbase = dirname(__FILE__);\n            }\n            if (file_exists($packagexml)) {\n                $options[1] = array(\n                    'install',\n                    $packagexml\n                );\n                $config->set('php_dir', $pearbase . DIRECTORY_SEPARATOR . 'php');\n                $config->set('data_dir', $pearbase . DIRECTORY_SEPARATOR . 'data');\n                $config->set('doc_dir', $pearbase . DIRECTORY_SEPARATOR . 'docs');\n                $config->set('test_dir', $pearbase . DIRECTORY_SEPARATOR . 'tests');\n                $config->set('ext_dir', $pearbase . DIRECTORY_SEPARATOR . 'extensions');\n                $config->set('bin_dir', $pearbase);\n                $config->mergeConfigFile($pearbase . 'pear.ini', false);\n                $config->store();\n                $config->set('auto_discover', 1);\n            }\n        }\n    }\n}\nforeach ($opts as $opt) {\n    $param = !empty($opt[1]) ? $opt[1] : true;\n    switch ($opt[0]) {\n        case 'd':\n            if ($param === true) {\n                die('Invalid usage of \"-d\" option, expected -d config_value=value, ' .\n                    'received \"-d\"' . \"\\n\");\n            }\n            $possible = explode('=', $param);\n            if (count($possible) != 2) {\n                die('Invalid usage of \"-d\" option, expected -d config_value=value, received \"' .\n                    $param . '\"' . \"\\n\");\n            }\n            list($key, $value) = explode('=', $param);\n            $config->set($key, $value, 'user');\n            break;\n        case 'D':\n            if ($param === true) {\n                die('Invalid usage of \"-d\" option, expected -d config_value=value, ' .\n                    'received \"-d\"' . \"\\n\");\n            }\n            $possible = explode('=', $param);\n            if (count($possible) != 2) {\n                die('Invalid usage of \"-d\" option, expected -d config_value=value, received \"' .\n                    $param . '\"' . \"\\n\");\n            }\n            list($key, $value) = explode('=', $param);\n            $config->set($key, $value, 'system');\n            break;\n        case 's':\n            $store_user_config = true;\n            break;\n        case 'S':\n            $store_system_config = true;\n            break;\n        case 'u':\n            $config->remove($param, 'user');\n            break;\n        case 'v':\n            $config->set('verbose', $config->get('verbose') + 1);\n            break;\n        case 'q':\n            $config->set('verbose', $config->get('verbose') - 1);\n            break;\n        case 'V':\n            usage(null, 'version');\n        case 'c':\n        case 'C':\n            break;\n        default:\n            // all non pear params goes to the command\n            $cmdopts[$opt[0]] = $param;\n            break;\n    }\n}\n\nif ($store_system_config) {\n    $config->store('system');\n}\n\nif ($store_user_config) {\n    $config->store('user');\n}\n\n$command = (isset($options[1][0])) ? $options[1][0] : null;\nif (empty($command) && ($store_user_config || $store_system_config)) {\n    exit;\n}\n\nif ($fetype == 'Gtk' || $fetype == 'Gtk2') {\n    if (!$config->validConfiguration()) {\n        PEAR::raiseError('CRITICAL ERROR: no existing valid configuration files found in files ' .\n            \"'$pear_user_config' or '$pear_system_config', please copy an existing configuration\" .\n            'file to one of these locations, or use the -c and -s options to create one');\n    }\n    Gtk::main();\n} else do {\n    if ($command == 'help') {\n        usage(null, @$options[1][1]);\n    }\n\n    if (!$config->validConfiguration()) {\n        PEAR::raiseError('CRITICAL ERROR: no existing valid configuration files found in files ' .\n            \"'$pear_user_config' or '$pear_system_config', please copy an existing configuration\" .\n            'file to one of these locations, or use the -c and -s options to create one');\n    }\n\n    PEAR::pushErrorHandling(PEAR_ERROR_RETURN);\n    $cmd = PEAR_Command::factory($command, $config);\n    PEAR::popErrorHandling();\n    if (PEAR::isError($cmd)) {\n        usage(null, @$options[1][0]);\n    }\n\n    $short_args = $long_args = null;\n    PEAR_Command::getGetoptArgs($command, $short_args, $long_args);\n    array_shift($options[1]);\n    $tmp = Console_Getopt::getopt2($options[1], $short_args, $long_args);\n\n    if (PEAR::isError($tmp)) {\n        break;\n    }\n\n    list($tmpopt, $params) = $tmp;\n    $opts = array();\n    foreach ($tmpopt as $foo => $tmp2) {\n        list($opt, $value) = $tmp2;\n        if ($value === null) {\n            $value = true; // options without args\n        }\n\n        if (strlen($opt) == 1) {\n            $cmdoptions = $cmd->getOptions($command);\n            foreach ($cmdoptions as $o => $d) {\n                if (isset($d['shortopt']) && $d['shortopt'] == $opt) {\n                    $opts[$o] = $value;\n                }\n            }\n        } else {\n            if (substr($opt, 0, 2) == '--') {\n                $opts[substr($opt, 2)] = $value;\n            }\n        }\n    }\n\n    $ok = $cmd->run($command, $opts, $params);\n    if ($ok === false) {\n        PEAR::raiseError(\"unknown command `$command'\");\n    }\n\n    if (PEAR::isError($ok)) {\n        PEAR::setErrorHandling(PEAR_ERROR_CALLBACK, array($ui, \"displayFatalError\"));\n        PEAR::raiseError($ok);\n    }\n} while (false);\n\n// {{{ usage()\n\nfunction usage($error = null, $helpsubject = null)\n{\n    global $progname, $all_commands;\n    $stdout = fopen('php://stdout', 'w');\n    if (PEAR::isError($error)) {\n        fputs($stdout, $error->getMessage() . \"\\n\");\n    } elseif ($error !== null) {\n        fputs($stdout, \"$error\\n\");\n    }\n\n    if ($helpsubject != null) {\n        $put = cmdHelp($helpsubject);\n    } else {\n        $put = \"Commands:\\n\";\n        $maxlen = max(array_map(\"strlen\", $all_commands));\n        $formatstr = \"%-{$maxlen}s  %s\\n\";\n        ksort($all_commands);\n        foreach ($all_commands as $cmd => $class) {\n            $put .= sprintf($formatstr, $cmd, PEAR_Command::getDescription($cmd));\n        }\n        $put .=\n            \"Usage: $progname [options] command [command-options] <parameters>\\n\".\n            \"Type \\\"$progname help options\\\" to list all options.\\n\".\n            \"Type \\\"$progname help shortcuts\\\" to list all command shortcuts.\\n\".\n            \"Type \\\"$progname help <command>\\\" to get the help for the specified command.\";\n    }\n    fputs($stdout, \"$put\\n\");\n    fclose($stdout);\n    exit(1);\n}\n\nfunction cmdHelp($command)\n{\n    global $progname, $all_commands, $config;\n    if ($command == \"options\") {\n        return\n        \"Options:\\n\".\n        \"     -v         increase verbosity level (default 1)\\n\".\n        \"     -q         be quiet, decrease verbosity level\\n\".\n        \"     -c file    find user configuration in `file'\\n\".\n        \"     -C file    find system configuration in `file'\\n\".\n        \"     -d foo=bar set user config variable `foo' to `bar'\\n\".\n        \"     -D foo=bar set system config variable `foo' to `bar'\\n\".\n        \"     -G         start in graphical (Gtk) mode\\n\".\n        \"     -s         store user configuration\\n\".\n        \"     -S         store system configuration\\n\".\n        \"     -u foo     unset `foo' in the user configuration\\n\".\n        \"     -h, -?     display help/usage (this message)\\n\".\n        \"     -V         version information\\n\";\n    } elseif ($command == \"shortcuts\") {\n        $sc = PEAR_Command::getShortcuts();\n        $ret = \"Shortcuts:\\n\";\n        foreach ($sc as $s => $c) {\n            $ret .= sprintf(\"     %-8s %s\\n\", $s, $c);\n        }\n        return $ret;\n\n    } elseif ($command == \"version\") {\n        return \"PEAR Version: \".$GLOBALS['pear_package_version'].\n               \"\\nPHP Version: \".phpversion().\n               \"\\nZend Engine Version: \".zend_version().\n               \"\\nRunning on: \".php_uname();\n\n    } elseif ($help = PEAR_Command::getHelp($command)) {\n        if (is_string($help)) {\n            return \"$progname $command [options] $help\\n\";\n        }\n\n        if ($help[1] === null) {\n            return \"$progname $command $help[0]\";\n        }\n\n        return \"$progname $command [options] $help[0]\\n$help[1]\";\n    }\n\n    return \"Command '$command' is not valid, try '$progname help'\";\n}\n\n// }}}\n\nfunction error_handler($errno, $errmsg, $file, $line, $vars) {\n    if ((defined('E_STRICT') && $errno & E_STRICT) || (defined('E_DEPRECATED') &&\n          $errno & E_DEPRECATED) || !error_reporting()) {\n        if (defined('E_STRICT') && $errno & E_STRICT) {\n            return; // E_STRICT\n        }\n        if (defined('E_DEPRECATED') && $errno & E_DEPRECATED) {\n            return; // E_DEPRECATED\n        }\n        if ($GLOBALS['config']->get('verbose') < 4) {\n            return false; // @silenced error, show all if debug is high enough\n        }\n    }\n    $errortype = array (\n        E_ERROR   =>  \"Error\",\n        E_WARNING   =>  \"Warning\",\n        E_PARSE   =>  \"Parsing Error\",\n        E_NOTICE   =>  \"Notice\",\n        E_CORE_ERROR  =>  \"Core Error\",\n        E_CORE_WARNING  =>  \"Core Warning\",\n        E_COMPILE_ERROR  =>  \"Compile Error\",\n        E_COMPILE_WARNING =>  \"Compile Warning\",\n        E_USER_ERROR =>  \"User Error\",\n        E_USER_WARNING =>  \"User Warning\",\n        E_USER_NOTICE =>  \"User Notice\"\n    );\n    $prefix = $errortype[$errno];\n    global $_PEAR_PHPDIR;\n    if (stristr($file, $_PEAR_PHPDIR)) {\n        $file = substr($file, strlen($_PEAR_PHPDIR) + 1);\n    } else {\n        $file = basename($file);\n    }\n    print \"\\n$prefix: $errmsg in $file on line $line\\n\";\n    return false;\n}\n\n\n/*\n * Local variables:\n * tab-width: 4\n * c-basic-offset: 4\n * indent-tabs-mode: nil\n * mode: php\n * End:\n */\n// vim600:syn=php"
  },
  {
    "path": "newscoop/include/peclcmd.php",
    "content": "<?php\n/**\n * PEAR, the PHP Extension and Application Repository\n *\n * Command line interface\n *\n * PHP versions 4 and 5\n *\n * @category   pear\n * @package    PEAR\n * @author     Stig Bakken <ssb@php.net>\n * @author     Tomas V.V.Cox <cox@idecnet.com>\n * @copyright  1997-2009 The Authors\n * @license    http://opensource.org/licenses/bsd-license.php New BSD License\n * @version    CVS: $Id: peclcmd.php 276392 2009-02-25 00:06:23Z dufuz $\n * @link       http://pear.php.net/package/PEAR\n */\n\n/**\n * @nodep Gtk\n */\nif ('/usr/share/php' != '@'.'include_path'.'@') {\n    ini_set('include_path', '/usr/share/php');\n    $raw = false;\n} else {\n    // this is a raw, uninstalled pear, either a cvs checkout, or php distro\n    $raw = true;\n}\ndefine('PEAR_RUNTYPE', 'pecl');\nrequire_once 'pearcmd.php';\n/*\n * Local variables:\n * tab-width: 4\n * c-basic-offset: 4\n * indent-tabs-mode: nil\n * mode: php\n * End:\n */\n// vim600:syn=php\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.assetic.php",
    "content": "<?php\n/*\n * Smarty plugin\n * ------------------------------------------------------------\n * Type:       block\n * Name:       assetic\n * Purpose:    smarty plugin for Assetic\n * Author:     Pierre-Jean Parra, Paweł Mikołajczuk\n * Version:    1.0\n *\n * ------------------------------------------------------------\n */\nuse Assetic\\AssetManager;\nuse Assetic\\FilterManager;\nuse Assetic\\Filter;\nuse Assetic\\Factory\\AssetFactory;\nuse Assetic\\Factory\\Worker\\CacheBustingWorker;\nuse Assetic\\AssetWriter;\nuse Assetic\\Asset\\AssetCache;\nuse Assetic\\Cache\\FilesystemCache;\n\n\nif (isset($_SERVER['LESSPHP'])) {\n    require_once $_SERVER['LESSPHP'];\n}\n\nfunction smarty_block_assetic($params, $content, $template, &$repeat)\n{\n    // In debug mode, we have to be able to loop a certain number of times, so we use a static counter\n    static $count;\n    static $assetsUrls;\n\n    $realpath = realpath( __DIR__.'/../../../'.$params['config_path']);\n    $root = realpath($realpath.'/../').'/';\n    $base_path = null;\n    $bundles = null;\n    $dependencies = null;\n\n\n    $themesService = \\Zend_Registry::get('container')->getService('newscoop_newscoop.themes_service');\n    $themePath = $themesService->getThemePath();\n    $viewBildPath = '/themes/'.$themePath.$params['build_path'];\n    $params['build_path'] = $root.$params['build_path'];\n\n    // Set defaults\n    if (!array_key_exists('debug', $params)) {\n        $params['debug'] = false;\n    }\n\n    // Read config file\n    if (isset($params['config_path'])){\n        $base_path = __DIR__.'/../../../'. $params['config_path'];\n    }\n    $config = json_decode(file_get_contents($base_path . '/config.json'));\n\n    // Opening tag (first call only)\n    if ($repeat) {\n        // Read bundles and dependencies config files\n        if (file_exists($base_path . '/bundles.json')) {\n            $bundles = json_decode(file_get_contents($base_path . '/bundles.json'));\n        }\n        if (file_exists($base_path . '/dependencies.json')) {\n            $dependencies = json_decode(file_get_contents($base_path . '/dependencies.json'));\n        }\n\n        $am = new AssetManager();\n\n        $fm = new FilterManager();\n\n        if (property_exists($config, 'cssembed_path')) {\n            $cssEmbedFilter = new Filter\\CssEmbedFilter($config->cssembed_path, $config->java_path);\n            $cssEmbedFilter->setRoot($root);\n            $fm->set('cssembed', $cssEmbedFilter);\n        }\n\n        if (property_exists($config, 'yuicompressor_path') && property_exists($config, 'java_path')) {\n            $fm->set('yui_js', new Filter\\Yui\\JsCompressorFilter($config->yuicompressor_path, $config->java_path));\n            $fm->set('yui_css', new Filter\\Yui\\CssCompressorFilter($config->yuicompressor_path, $config->java_path));\n        }\n        $fm->set('less', new Filter\\LessphpFilter());\n        $fm->set('sass', new Filter\\Sass\\SassFilter());\n        $fm->set('closure_api', new Filter\\GoogleClosure\\CompilerApiFilter());\n        $fm->set('rewrite', new Filter\\CssRewriteFilter());\n        if (property_exists($config, 'closurejar_path') && property_exists($config, 'java_path')) {\n            $fm->set('closure_jar', new Filter\\GoogleClosure\\CompilerJarFilter($config->closurejar_path, $config->java_path));\n        }\n\n        // Factory setup\n        $factory = new AssetFactory($root);\n        $factory->setAssetManager($am);\n        $factory->setFilterManager($fm);\n        $factory->setDefaultOutput('*.'.$params['output']);\n        $factory->setDebug($params['debug']);\n\n        if (isset($params['filters'])) {\n            $filters = explode(',', $params['filters']);\n        } else {\n            $filters = array();\n        }\n\n        // Prepare the assets writer\n        $writer = new AssetWriter($params['build_path']);\n\n        // If a bundle name is provided\n        if (isset($params['bundle'])) {\n            $asset = $factory->createAsset(\n                $bundles->$params['output']->$params['bundle'],\n                $filters\n            );\n\n            $cache = new AssetCache(\n                $asset,\n                new FilesystemCache($params['build_path'])\n            );\n\n            $writer->writeAsset($cache);\n        // If individual assets are provided\n        } elseif (isset($params['assets'])) {\n            $assets = array();\n            // Include only the references first\n            foreach (explode(',', $params['assets']) as $a) {\n                // If the asset is found in the dependencies file, let's create it\n                // If it is not found in the assets but is needed by another asset and found in the references, don't worry, it will be automatically created\n                if (isset($dependencies->$params['output']->assets->$a)) {\n                    // Create the reference assets if they don't exist\n                    foreach ($dependencies->$params['output']->assets->$a as $ref) {\n                        try {\n                            $am->get($ref);\n                        }\n                        catch (InvalidArgumentException $e) {\n                            $path = $dependencies->$params['output']->references->$ref;\n\n                            $assetTmp = $factory->createAsset($path);\n                            $am->set($ref, $assetTmp);\n                            $assets[] = '@'.$ref;\n                        }\n                    }\n                }\n            }\n\n            // Now, include assets\n            foreach (explode(',', $params['assets']) as $a) {\n                // Add the asset to the list if not already present, as a reference or as a simple asset\n                $ref = null;\n                if (isset($dependencies->$params['output'])) {\n                    foreach ($dependencies->$params['output']->references as $name => $file) {\n                        if ($file == $a) {\n                            $ref = $name;\n                            break;\n                        }\n                    }\n                }\n\n                if (array_search($a, $assets) === FALSE && ($ref === null || array_search('@' . $ref, $assets) === FALSE)) {\n                    $assets[] = $a;\n                }\n            }\n\n            // Create the asset\n            $asset = $factory->createAsset(\n                $assets,\n                $filters\n            );\n\n            $cache = new AssetCache(\n                $asset,\n                new FilesystemCache($params['build_path'])\n            );\n\n            $writer->writeAsset($cache);\n        }\n\n        // If debug mode is active, we want to include assets separately\n        if ($params['debug']) {\n            $assetsUrls = array();\n            foreach ($asset as $a) {\n\n                $cache = new AssetCache(\n                    $a,\n                    new FilesystemCache($params['build_path'])\n                );\n\n                $writer->writeAsset($cache);\n                $assetsUrls[] = $a->getTargetPath();\n            }\n            // It's easier to fetch the array backwards, so we reverse it to insert assets in the right order\n            $assetsUrls = array_reverse($assetsUrls);\n\n            $count = count($assetsUrls);\n\n            if (isset($config->site_url))\n                $template->assign($params['asset_url'], $config->site_url.'/'.$params['build_path'].'/'.$assetsUrls[$count-1]);\n            else\n                $template->assign($params['asset_url'], $viewBildPath.'/'.$assetsUrls[$count-1]);\n\n\n        // Production mode, include an all-in-one asset\n        } else {\n            if (isset($config->site_url)) {\n                $template->assign($params['asset_url'], $config->site_url.'/'.$params['build_path'].'/'.$asset->getTargetPath());\n            } else {\n                $template->assign($params['asset_url'], $viewBildPath.'/'.$asset->getTargetPath());\n            }\n\n        }\n\n    // Closing tag\n    } else {\n        if (isset($content)) {\n            // If debug mode is active, we want to include assets separately\n            if ($params['debug']) {\n                $count--;\n                if ($count > 0) {\n                    if (isset($config->site_url))\n                        $template->assign($params['asset_url'], $config->site_url.'/'.$params['build_path'].'/'.$assetsUrls[$count-1]);\n                    else\n                        $template->assign($params['asset_url'], '/'.$params['build_path'].'/'.$assetsUrls[$count-1]);\n                }\n                $repeat = $count > 0;\n            }\n\n            return $content;\n        }\n    }\n\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.comment_form.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n\n/**\n * Campsite comment_form block plugin\n *\n * Type:     block\n * Name:     comment_form\n * Purpose:  Displays a form for comment input\n *\n * @param string\n *     $p_params\n * @param string\n *     $p_smarty\n * @param string\n *     $p_content\n *\n * @return\n *\n */\nfunction smarty_block_comment_form($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n    if (!isset($p_content)) {\n        return '';\n    }\n\n    $p_smarty->smarty->loadPlugin('smarty_shared_escape_special_chars');\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    if (!$campsite->article->comments_enabled) {\n        return '';\n    }\n\n    $url = $campsite->url;\n    $url->uri_parameter = \"\";\n    $template = null;\n    if (isset($p_params['template'])) {\n        $themePath = $campsite->issue->defined() ? $campsite->issue->theme_path : $campsite->publication->theme_path;\n        $template = new MetaTemplate($p_params['template'], $themePath);\n        if (!$template->defined()) {\n            CampTemplate::singleton()->trigger_error('invalid template \"' . $p_params['template']\n            . '\" specified in the comment form');\n            return false;\n        }\n    } elseif (is_numeric($url->get_parameter('tpl'))) {\n        $template = $campsite->default_template;\n    }\n    if (!isset($p_params['submit_button'])) {\n        $p_params['submit_button'] = 'Submit';\n    }\n    $anchor = isset($p_params['anchor']) ? '#'.$p_params['anchor'] : null;\n    if (!isset($p_params['html_code']) || empty($p_params['html_code'])) {\n        $p_params['html_code'] = '';\n    }\n    if (!isset($p_params['button_html_code']) || empty($p_params['button_html_code'])) {\n        $p_params['button_html_code'] = '';\n    }\n\n    if (isset($template)) {\n        $url->uri_parameter = \"template \" . str_replace(' ', \"\\\\ \", $template->name);\n    }\n    $html = \"<form name=\\\"submit_comment\\\" action=\\\"\" . $url->uri_path . \"$anchor\\\" \"\n    . \"method=\\\"post\\\" \" . $p_params['html_code'] . \">\\n\";\n    if (isset($template)) {\n        $html .= \"<input type=\\\"hidden\\\" name=\\\"tpl\\\" value=\\\"\" . $template->identifier . \"\\\" />\\n\";\n    }\n    foreach ($campsite->url->form_parameters as $param) {\n        if ($param['name'] == 'tpl') {\n            continue;\n        }\n        $html .= '<input type=\"hidden\" name=\"'.$param['name']\n        .'\" value=\"'.htmlentities($param['value']).\"\\\" />\\n\";\n    }\n    if ($campsite->comment->identifier > 0) {\n        $html .= \"<input type=\\\"hidden\\\" name=\\\"acid\\\" \"\n        .\"value=\\\"\".$campsite->comment->identifier.\"\\\" />\\n\";\n    }\n    $html .= $p_content;\n    $html .=    '<span style=\"display:none;visibility:hidden;\">\n                <label for=\"f_comment_email_protect\">\n                Ignore this text box. It is used to detect spammers. \n                If you enter anything into this text box, your message \n                will not be sent.\n                </label>\n                <input type=\"text\" name=\"f_comment_email_protect\" size=\"20\" value=\"\" />\n                </span>';\n    $html .= \"<input type=\\\"submit\\\" name=\\\"f_submit_comment\\\" \"\n    .\"id=\\\"article_comment_submit\\\" value=\\\"\"\n    .smarty_function_escape_special_chars($p_params['submit_button'])\n    .\"\\\" \" . $p_params['button_html_code'] . \" />\\n\";\n    if (isset($p_params['preview_button']) && !empty($p_params['preview_button'])) {\n        $html .= \"<input type=\\\"submit\\\" name=\\\"f_preview_comment\\\" \"\n        .\"id=\\\"article_comment_preview\\\" value=\\\"\"\n        .smarty_function_escape_special_chars($p_params['preview_button'])\n        .\"\\\" \" . $p_params['button_html_code'] . \" />\\n\";\n    }\n    $html .= \"</form>\\n\";\n\n    return $html;\n} // fn smarty_block_comment_form\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.dynamic.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite tr block plugin\n *\n * Type:     block\n * Name:     dynamic\n * Purpose:  Used to avoid template caching\n *\n * @param array\n *     $p_params\n * @param string\n *     $p_content\n * @param object\n *     $p_smarty\n */\nfunction smarty_block_dynamic($p_params, $p_content, &$p_smarty)\n{\n    return $p_content;\n}\n\n?>"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.form_topics.php",
    "content": "<?php\n/**\n */\n\n/**\n * Follow topics form.\n *\n * @param string $params\n * @param string $content\n * @param object $smarty\n *\n * @return string\n */\nfunction smarty_block_form_topics($params, $content, $smarty)\n{\n    if (!isset($content)) {\n        return;\n    }\n\n    $view = $smarty->getTemplateVars('view');\n\n    $params += array(\n        'method' => 'POST',\n        'action' => $view->url(array('controller' => 'dashboard', 'action' => 'save-topics'), 'default'),\n    );\n\n    return $view->form('follow_topics', $params, $content);\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.image.php",
    "content": "<?php\n/**\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Image block\n *\n * @param array $params\n * @param string $content\n * @param Smarty_Internal_Template $smarty\n * @param bool $repeat\n * @return void\n */\nfunction smarty_block_image(array $params, $content, Smarty_Internal_Template $smarty, &$repeat)\n{\n    if (!$repeat) {\n        $content = $smarty->getTemplateVars('image') ? $content : '';\n        $smarty->assign('image', null);\n        return $content;\n    }\n\n    if (!array_key_exists('rendition', $params)) {\n        throw new \\InvalidArgumentException(\"Rendition not set\");\n    }\n\n    $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n    $renditionService = \\Zend_Registry::get('container')->getService('image.rendition');\n\n    $cacheKey = $cacheService->getCacheKey(array('theme_renditions'), 'theme');\n    if ($cacheService->contains($cacheKey)) {\n        $renditions = $cacheService->fetch($cacheKey);\n    } else {\n        $renditions = $renditionService->getRenditions();\n        $cacheService->save($cacheKey, $renditions);\n    }\n\n    if (!array_key_exists($params['rendition'], $renditions)) {\n        throw new \\InvalidArgumentException(\n            sprintf('Unknown rendition: \\'%s\\'. Make sure it is defined in your theme\\'s theme.xml file.', $params['rendition'])\n        );\n    }\n\n    $article = $smarty->getTemplateVars('gimme')->article;\n    if (!$article) {\n        throw new \\RuntimeException(\"Not in article context.\");\n    }\n\n    $articleRenditions = $article->getRenditions();\n    $articleRendition = $articleRenditions[$renditions[$params['rendition']]];\n    if ($articleRendition === null) {\n        $smarty->assign('image', false);\n        $repeat = false;\n        return;\n    }\n\n    $image = null;\n    if (array_key_exists('width', $params) && array_key_exists('height', $params)) {\n        $image = $renditionService->getArticleRenditionImage($article->number, $params['rendition'], $params['width'], $params['height']);\n    } else {\n        $image = $renditionService->getArticleRenditionImage($article->number, $params['rendition']);\n    }\n\n    $imageService = \\Zend_Registry::get('container')->getService('image');\n    $preferencesService = \\Zend_Registry::get('container')->getService('preferences');\n    $caption = $imageService->getCaption($articleRendition->getImage(), $article->number, $article->language->number);\n    if ($preferencesService->get('MediaRichTextCaptions', 'N') == 'N') {\n        $caption = MetaDbObject::htmlFilter($caption);\n    }\n\n    $smarty->assign('image', (object) array(\n        'src' => \\Zend_Registry::get('view')->url(array('src' => $image['src']), 'image', true, false),\n        'width' => $image['width'],\n        'height' => $image['height'],\n        'caption' => $caption,\n        'description' => $articleRendition->getImage()->getDescription(),\n        'photographer' => $articleRendition->getImage()->getPhotographer(),\n        'original' => $image['original'],\n    ));\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_article_attachments.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n\n/**\n * Campsite list_article_attachments block plugin\n *\n * Type:     block\n * Name:     list_article_attachments\n * Purpose:  Provides a...\n *\n * @param string\n *     $p_params\n * @param string\n *     $p_smarty\n * @param string\n *     $p_content\n *\n * @return\n *\n */\nfunction smarty_block_list_article_attachments($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n    $p_smarty->smarty->loadPlugin('smarty_shared_escape_special_chars');\n    $campContext = $p_smarty->getTemplateVars('gimme');\n\n    if (!isset($p_content)) {\n        $start = $campContext->next_list_start('ArticleAttachmentsList');\n    \t$articleAttachmentsList = new ArticleAttachmentsList($start, $p_params);\n    \tif ($articleAttachmentsList->isEmpty()) {\n            $campContext->setCurrentList($articleAttachmentsList, array());\n            $campContext->resetCurrentList();\n    \t\t$p_repeat = false;\n    \t    return null;\n    \t}\n    \t$campContext->setCurrentList($articleAttachmentsList, array('attachment'));\n    \t$campContext->attachment = $campContext->current_article_attachments_list->current;\n    \t$p_repeat = true;\n    } else {\n        $campContext->current_article_attachments_list->defaultIterator()->next();\n        if (!is_null($campContext->current_article_attachments_list->current)) {\n            $campContext->attachment = $campContext->current_article_attachments_list->current;\n            $p_repeat = true;\n        } else {\n            $campContext->resetCurrentList();\n            $p_repeat = false;\n        }\n    }\n\n    return $p_content;\n}\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_article_authors.php",
    "content": "<?php\n/**\n * @package Newscoop\n */\n\n/**\n * Newscoop list_article_authors block plugin\n *\n * Type:     block\n * Name:     list_article_authors\n * Purpose:  Provides a...\n *\n * @param string\n *     $p_params\n * @param string\n *     $p_smarty\n * @param string\n *     $p_content\n *\n * @return\n *\n */\nfunction smarty_block_list_article_authors($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n    // gets the context variable\n    $context = $p_smarty->getTemplateVars('gimme');\n\n    if (!isset($p_content)) {\n        $start = $context->next_list_start('ArticleAuthorsList');\n        $articleAuthorsList = new ArticleAuthorsList($start, $p_params);\n        if ($articleAuthorsList->isEmpty()) {\n            $context->setCurrentList($articleAuthorsList, array());\n            $context->resetCurrentList();\n        \t$p_repeat = false;\n            return null;\n        }\n    \t$context->setCurrentList($articleAuthorsList, array('author'));\n    \t$context->author = $context->current_article_authors_list->current;\n    \t$p_repeat = true;\n    } else {\n        $context->current_article_authors_list->defaultIterator()->next();\n        if (!is_null($context->current_article_authors_list->current)) {\n            $context->author = $context->current_article_authors_list->current;\n            $p_repeat = true;\n        } else {\n            $context->resetCurrentList();\n            $p_repeat = false;\n        }\n    }\n\n    return $p_content;\n}\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_article_comments.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n\n/**\n * Campsite list_article_comments block plugin\n *\n * Type:     block\n * Name:     list_article_comments\n * Purpose:  Provides a...\n *\n * @param string\n *     $p_params\n * @param string\n *     $p_smarty\n * @param string\n *     $p_content\n *\n * @return\n *\n */\nfunction smarty_block_list_article_comments($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n    $p_smarty->smarty->loadPlugin('smarty_shared_escape_special_chars');\n    $campContext = $p_smarty->getTemplateVars('gimme');\n    $html = '';\n\n    if (!isset($p_content)) {\n        $start = $campContext->next_list_start('ArticleCommentsList');\n        $articleCommentsList = new ArticleCommentsList($start, $p_params);\n        if ($articleCommentsList->isEmpty()) {\n            $campContext->setCurrentList($articleCommentsList, array());\n            $campContext->resetCurrentList();\n        \t$p_repeat = false;\n            return null;\n        }\n        $campContext->setCurrentList($articleCommentsList, array('comment', 'language',\n        'issue', 'section', 'article'));\n        $campContext->comment = $campContext->current_article_comments_list->current;\n        $campContext->url->set_parameter('acid', $campContext->comment->identifier);\n        $p_repeat = true;\n    } else {\n        $campContext->current_article_comments_list->defaultIterator()->next();\n        if (!is_null($campContext->current_article_comments_list->current)) {\n            $campContext->comment = $campContext->current_article_comments_list->current;\n            $campContext->url->set_parameter('acid', $campContext->comment->identifier);\n            $p_repeat = true;\n        } else {\n            $campContext->url->reset_parameter('acid');\n            $campContext->resetCurrentList();\n            $p_repeat = false;\n        }\n    }\n\n    return $p_content;\n}\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_article_images.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n\n/**\n * Campsite list_article_images block plugin\n *\n * Type:     block\n * Name:     list_article_images\n * Purpose:  Provides a...\n *\n * @param string\n *     $p_params\n * @param string\n *     $p_smarty\n * @param string\n *     $p_content\n *\n * @return\n *\n */\nfunction smarty_block_list_article_images($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n    $p_smarty->smarty->loadPlugin('smarty_shared_escape_special_chars');\n    $campContext = $p_smarty->getTemplateVars('gimme');\n\n    if (!isset($p_content)) {\n        $start = $campContext->next_list_start('ArticleImagesList');\n        $articleImagesList = new ArticleImagesList($start, $p_params);\n        if ($articleImagesList->isEmpty()) {\n            $campContext->setCurrentList($articleImagesList, array());\n            $campContext->resetCurrentList();\n        \t$p_repeat = false;\n            return null;\n        }\n    \t$campContext->setCurrentList($articleImagesList, array('image'));\n    \t$campContext->image = $campContext->current_article_images_list->current;\n    \t$p_repeat = true;\n    } else {\n        $campContext->current_article_images_list->defaultIterator()->next();\n        if (!is_null($campContext->current_article_images_list->current)) {\n            $campContext->image = $campContext->current_article_images_list->current;\n            $p_repeat = true;\n        } else {\n            $campContext->resetCurrentList();\n            $p_repeat = false;\n        }\n    }\n\n    return $p_content;\n}\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_article_locations.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite list_article_locations block plugin\n *\n * Type:     block\n * Name:     list_article_locations\n * Purpose:  Provides a list of map locations for the article in context\n *\n * @param string $p_params\n * @param string $p_smarty\n * @param string $p_content\n *\n * @return string\n */\nfunction smarty_block_list_article_locations($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n    // gets the context variable\n    $campContext = $p_smarty->getTemplateVars('gimme');\n\n    if (!isset($p_content)) {\n        $start = $campContext->next_list_start('ArticleLocationsList');\n        $articleLocationsList = new ArticleLocationsList($start, $p_params);\n        if ($articleLocationsList->isEmpty()) {\n            $campContext->setCurrentList($articleLocationsList, array());\n            $campContext->resetCurrentList();\n            $p_repeat = false;\n            return null;\n        }\n        $campContext->setCurrentList($articleLocationsList, array('location'));\n        $campContext->location = $campContext->current_article_locations_list->current;\n        $p_repeat = true;\n    } else {\n        $campContext->current_article_locations_list->defaultIterator()->next();\n        if (!is_null($campContext->current_article_locations_list->current)) {\n            $campContext->location = $campContext->current_article_locations_list->current;\n            $p_repeat = true;\n        } else {\n            $campContext->resetCurrentList();\n            $p_repeat = false;\n        }\n    }\n    return $p_content;\n}\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_article_topics.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n\n/**\n * Campsite list_article_topics block plugin\n *\n * Type:     block\n * Name:     list_article_topics\n * Purpose:  Provides a...\n *\n * @param string\n *     $p_params\n * @param string\n *     $p_smarty\n * @param string\n *     $p_content\n *\n * @return\n *\n */\nfunction smarty_block_list_article_topics($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n    $p_smarty->smarty->loadPlugin('smarty_shared_escape_special_chars');\n    $campContext = $p_smarty->getTemplateVars('gimme');\n\n    if (!isset($p_content)) {\n        $start = $campContext->next_list_start('ArticleTopicsList');\n        $articleTopicsList = new ArticleTopicsList($start, $p_params);\n        if ($articleTopicsList->isEmpty()) {\n            $campContext->setCurrentList($articleTopicsList, array());\n            $campContext->resetCurrentList();\n        \t$p_repeat = false;\n            return null;\n        }\n    \t$campContext->setCurrentList($articleTopicsList, array('topic'));\n    \t$campContext->topic = $campContext->current_article_topics_list->current;\n    \t$p_repeat = true;\n    } else {\n        $campContext->current_article_topics_list->defaultIterator()->next();\n        if (!is_null($campContext->current_article_topics_list->current)) {\n            $campContext->topic = $campContext->current_article_topics_list->current;\n            $p_repeat = true;\n        } else {\n            $campContext->resetCurrentList();\n            $p_repeat = false;\n        }\n    }\n\n    return $p_content;\n}\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_articles.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n\n/**\n * Campsite list_articles block plugin\n *\n * Type:     block\n * Name:     list_articles\n * Purpose:  Provides a...\n *\n * @param string\n *     $p_params\n * @param string\n *     $p_smarty\n * @param string\n *     $p_content\n *\n * @return\n *\n */\nfunction smarty_block_list_articles($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n    $p_smarty->smarty->loadPlugin('smarty_shared_escape_special_chars');\n    $campContext = $p_smarty->getTemplateVars('gimme');\n\n    if (!isset($p_content)) {\n        $start = $campContext->next_list_start('ArticlesList');\n        $articlesList = new ArticlesList($start, $p_params);\n\n        if ($articlesList->isEmpty()) {\n            $campContext->setCurrentList($articlesList, array());\n            $campContext->resetCurrentList();\n        \t$p_repeat = false;\n            return null;\n        }\n    \t$campContext->setCurrentList($articlesList, array('publication', 'language',\n    \t                                                  'issue', 'section', 'article',\n    \t                                                  'image', 'attachment', 'comment',\n    \t                                                  'subtitle'));\n    \t$campContext->article = $campContext->current_articles_list->current;\n    \t$p_repeat = true;\n    } else {\n        $campContext->current_articles_list->defaultIterator()->next();\n    \tif (!is_null($campContext->current_articles_list->current)) {\n    \t    $campContext->article = $campContext->current_articles_list->current;\n    \t    $p_repeat = true;\n    \t} else {\n    \t    $campContext->resetCurrentList();\n            $p_repeat = false;\n    \t}\n    }\n\n    return $p_content;\n}\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_images.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n\n/**\n * Campsite list_images block plugin\n *\n * Type:     block\n * Name:     list_images\n * Purpose:  Provides a...\n *\n * @param string\n *     $p_params\n * @param string\n *     $p_smarty\n * @param string\n *     $p_content\n *\n * @return\n *\n */\nfunction smarty_block_list_images($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n    // gets the context variable\n    $campContext = $p_smarty->getTemplateVars('gimme');\n\n    if (!isset($p_content)) {\n        $start = $campContext->next_list_start('ImagesList');\n        $imagesList = new ImagesList($start, $p_params);\n        if ($imagesList->isEmpty()) {\n            $campContext->setCurrentList($imagesList, array());\n            $campContext->resetCurrentList();\n            $p_repeat = false;\n            return null;\n        }\n        $campContext->setCurrentList($imagesList, array('image'));\n        $campContext->image = $campContext->current_images_list->current;\n        $p_repeat = true;\n    } else {\n        $campContext->current_images_list->defaultIterator()->next();\n        if (!is_null($campContext->current_images_list->current)) {\n            $campContext->image = $campContext->current_images_list->current;\n            $p_repeat = true;\n        } else {\n            $campContext->resetCurrentList();\n            $p_repeat = false;\n        }\n    }\n\n    return $p_content;\n}\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_issues.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n\n/**\n * Campsite list_issues block plugin\n *\n * Type:     block\n * Name:     list_issues\n * Purpose:  Provides a...\n *\n * @param string\n *     $p_params\n * @param string\n *     $p_smarty\n * @param string\n *     $p_content\n *\n * @return\n *\n */\nfunction smarty_block_list_issues($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n    $p_smarty->smarty->loadPlugin('smarty_shared_escape_special_chars');\n    $campContext = $p_smarty->getTemplateVars('gimme');\n\n    if (!isset($p_content)) {\n        $start = $campContext->next_list_start('IssuesList');\n    \t$issuesList = new IssuesList($start, $p_params);\n    \tif ($issuesList->isEmpty()) {\n            $campContext->setCurrentList($issuesList, array());\n            $campContext->resetCurrentList();\n    \t\t$p_repeat = false;\n    \t    return null;\n    \t}\n    \t$campContext->setCurrentList($issuesList, array('publication', 'language',\n    \t                                                'issue', 'section', 'article',\n    \t                                                'image', 'attachment', 'comment',\n    \t                                                'subtitle'));\n    \t$campContext->issue = $campContext->current_issues_list->current;\n    \t$p_repeat = true;\n    } else {\n        $campContext->current_issues_list->defaultIterator()->next();\n        if (!is_null($campContext->current_issues_list->current)) {\n            $campContext->issue = $campContext->current_issues_list->current;\n            $p_repeat = true;\n        } else {\n            $campContext->resetCurrentList();\n            $p_repeat = false;\n        }\n    }\n\n    return $p_content;\n}\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_languages.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n\n/**\n * Campsite list_languages block plugin\n *\n * Type:     block\n * Name:     list_languages\n * Purpose:  Provides a...\n *\n * @param string\n *     $p_params\n * @param string\n *     $p_smarty\n * @param string\n *     $p_content\n *\n * @return\n *\n */\nfunction smarty_block_list_languages($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n    $p_smarty->smarty->loadPlugin('smarty_shared_escape_special_chars');\n    $campContext = $p_smarty->getTemplateVars('gimme');\n\n    if (!isset($p_content)) {\n        $start = $campContext->next_list_start('LanguagesList');\n        $languagesList = new LanguagesList($start, $p_params);\n        if ($languagesList->isEmpty()) {\n            $campContext->setCurrentList($languagesList, array());\n            $campContext->resetCurrentList();\n        \t$p_repeat = false;\n            return null;\n        }\n    \t$campContext->setCurrentList($languagesList, array('publication', 'language',\n    \t                                                  'issue', 'section', 'article',\n    \t                                                  'image', 'attachment', 'comment',\n    \t                                                  'subtitle'));\n    \t$campContext->language = $campContext->current_list->current;\n    \t$p_repeat = true;\n    } else {\n        $campContext->current_list->defaultIterator()->next();\n    \tif (!is_null($campContext->current_list->current)) {\n    \t    $campContext->language = $campContext->current_list->current;\n    \t    $p_repeat = true;\n    \t} else {\n    \t    $campContext->resetCurrentList();\n            $p_repeat = false;\n    \t}\n    }\n\n    return $p_content;\n}\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_map_articles.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n\n/**\n * Campsite list_map_articles block plugin\n *\n * Type:     block\n * Name:     list_map_articles\n * Purpose:  Provides a list of articles for the multi-map in context\n *\n * @param string\n *     $p_params\n * @param string\n *     $p_smarty\n * @param string\n *     $p_content\n *\n * @return\n *\n */\nfunction smarty_block_list_map_articles($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n    $p_smarty->smarty->loadPlugin('smarty_shared_escape_special_chars');\n    $campContext = $p_smarty->getTemplateVars('gimme');\n\n    if (!isset($p_content)) {\n        $start = $campContext->next_list_start('MapArticlesList');\n        $mapArticlesList = new MapArticlesList($start, $p_params);\n        if ($mapArticlesList->isEmpty()) {\n            $campContext->setCurrentList($mapArticlesList, array());\n            $campContext->resetCurrentList();\n            $p_repeat = false;\n            return null;\n        }\n        $campContext->setCurrentList($mapArticlesList, array('publication', 'language',\n                                                          'issue', 'section', 'article',\n                                                          'image', 'attachment', 'comment',\n                                                          'subtitle'));\n        $campContext->article = $campContext->current_map_articles_list->current;\n        $p_repeat = true;\n    } else {\n        $campContext->current_map_articles_list->defaultIterator()->next();\n        if (!is_null($campContext->current_map_articles_list->current)) {\n            $campContext->article = $campContext->current_map_articles_list->current;\n            $p_repeat = true;\n        } else {\n            $campContext->resetCurrentList();\n            $p_repeat = false;\n        }\n    }\n\n    return $p_content;\n}\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_map_locations.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite list_map_locations block plugin\n *\n * Type:     block\n * Name:     list_map_locations\n * Purpose:  Provides a list of locations for the multi-map in context\n *\n * @param string $p_params\n * @param string $p_smarty\n * @param string $p_content\n *\n * @return string\n */\nfunction smarty_block_list_map_locations($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n    $campContext = $p_smarty->getTemplateVars('gimme');\n\n    if (!isset($p_content)) {\n        $start = $campContext->next_list_start('MapLocationsList');\n        $mapLocationsList = new MapLocationsList($start, $p_params);\n        if ($mapLocationsList->isEmpty()) {\n            $campContext->setCurrentList($mapLocationsList, array());\n            $campContext->resetCurrentList();\n            $p_repeat = false;\n            return null;\n        }\n        $campContext->setCurrentList($mapLocationsList, array('location'));\n        $campContext->location = $campContext->current_map_locations_list->current;\n        $p_repeat = true;\n    } else {\n        $campContext->current_map_locations_list->defaultIterator()->next();\n        if (!is_null($campContext->current_map_locations_list->current)) {\n            $campContext->location = $campContext->current_map_locations_list->current;\n            $p_repeat = true;\n        } else {\n            $campContext->resetCurrentList();\n            $p_repeat = false;\n        }\n    }\n    return $p_content;\n}\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_playlist_articles.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n\n/**\n * Campsite list_articles block plugin\n *\n * Type:     block\n * Name:     list_article_playlist\n * Purpose:  Provides a...\n *\n * @param string\n *     $p_params\n * @param string\n *     $p_smarty\n * @param string\n *     $p_content\n *\n * @return\n *\n */\nfunction smarty_block_list_playlist_articles($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n    $p_smarty->smarty->loadPlugin('smarty_shared_escape_special_chars');\n    $campContext = $p_smarty->getTemplateVars('gimme');\n\t/* @var $campContext CampContext */\n\n    if (!isset($p_content))\n    {\n        $start = $campContext->next_list_start('PlaylistList');\n    \t$articlesList = new PlaylistList($start, $p_params);\n    \tif ($articlesList->isEmpty())\n    \t{\n            $campContext->setCurrentList($articlesList, array());\n            $campContext->resetCurrentList();\n    \t\t$p_repeat = false;\n    \t    return null;\n    \t}\n    \t$campContext->setCurrentList($articlesList, array('publication', 'language',\n    \t                                                  'issue', 'section', 'article',\n    \t                                                  'image', 'attachment', 'comment',\n    \t                                                  'subtitle'));\n    \t$campContext->article = $campContext->current_list->current;\n    \t$p_repeat = true;\n    }\n    else\n    {\n        $campContext->current_list->defaultIterator()->next();\n        if (!is_null($campContext->current_list->current))\n        {\n            $campContext->article = $campContext->current_list->current;\n            $p_repeat = true;\n        }\n        else\n        {\n            $campContext->resetCurrentList();\n            $p_repeat = false;\n        }\n    }\n\n    return $p_content;\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_related_articles.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite list_related_articles block plugin\n *\n * Type:     block\n * Name:     list_related_articles\n * Purpose:  Provides a...\n *\n * @param string\n *     $p_params\n * @param string\n *     $p_smarty\n * @param string\n *     $p_content\n *\n * @return\n *\n */\nfunction smarty_block_list_related_articles($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n\t$p_smarty->smarty->loadPlugin('smarty_shared_escape_special_chars');\n\t$campContext = $p_smarty->getTemplateVars('gimme');\n\n\t// Default to true, but not when previewing\n\tif (!isset($p_params['published']) && !$campContext->preview) {\n\t\t$p_params['published'] = 'true';\n\t}\n\n\tif (!isset($p_content)) {\n\t\t$start = $campContext->next_list_start('BoxArticlesList');\n\t\t$boxArticlesList = new BoxArticlesList($start, $p_params);\n\t\tif ($boxArticlesList->isEmpty()) {\n\t\t\t$campContext->setCurrentList($boxArticlesList, array());\n\t\t\t$campContext->resetCurrentList();\n\t\t\t$p_repeat = false;\n\t\t\treturn null;\n\t\t}\n\t\t$campContext->setCurrentList($boxArticlesList, array('publication', 'language',\n    \t                                                'issue', 'section', 'article',\n    \t                                                'image', 'attachment', 'comment',\n    \t                                                'subtitle'));\n\t\t$campContext->article = $campContext->current_list->current;\n\t\t$p_repeat = true;\n\t} else {\n\t\t$campContext->current_list->defaultIterator()->next();\n\t\tif (!is_null($campContext->current_list->current)) {\n\t\t\t$campContext->article = $campContext->current_list->current;\n\t\t\t$p_repeat = true;\n\t\t} else {\n\t\t\t$campContext->resetCurrentList();\n\t\t\t$p_repeat = false;\n\t\t}\n\t}\n\n\treturn $p_content;\n}\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_search_results.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n\n/**\n * Campsite list_search_results block plugin\n *\n * Type:     block\n * Name:     list_search_results\n * Purpose:  Provides a...\n *\n * @param string\n *     $p_params\n * @param string\n *     $p_smarty\n * @param string\n *     $p_content\n *\n * @return\n *\n */\nfunction smarty_block_list_search_results($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n    $p_smarty->smarty->loadPlugin('smarty_shared_escape_special_chars');\n    $campContext = $p_smarty->getTemplateVars('gimme');\n\n    if (!$campContext->search_articles_action->defined\n    || $campContext->search_articles_action->is_error) {\n        $p_repeat = false;\n        return '';\n    }\n\n    if (!isset($p_content)) {\n        $start = $campContext->next_list_start('SearchResultsList');\n\n        $p_params['template'] = $campContext->search_articles_action->template->name;\n        $p_params['match_all'] = $campContext->search_articles_action->match_all;\n        $p_params['search_level'] = $campContext->search_articles_action->search_level;\n        $p_params['search_phrase'] = $campContext->search_articles_action->search_phrase;\r\n        $p_params['search_results'] = $campContext->search_articles_action->search_results;\r\n        $p_params['search_issue'] = $campContext->search_articles_action->search_issue;\n        $p_params['search_section'] = $campContext->search_articles_action->search_section;\n        $p_params['start_date'] = $campContext->search_articles_action->start_date;\n        $p_params['end_date'] = $campContext->search_articles_action->end_date;\n        $p_params['topic_id'] = $campContext->search_articles_action->topic_id;\n        $p_params['scope'] = $campContext->search_articles_action->scope;\n\r\n        $searchResultsList = new SearchResultsList($start, $p_params);\n        if ($searchResultsList->isEmpty()) {\n        \t$campContext->setCurrentList($searchResultsList, array());\n            $campContext->resetCurrentList();\n        \t$p_repeat = false;\n            return null;\n        }\n\n        $campContext->url->set_parameter('f_search_articles', $campContext->search_articles_action->submit_button);\n        $campContext->url->set_parameter('f_match_all', $p_params['match_all']);\n        $campContext->url->set_parameter('f_search_level', $p_params['search_level']);\n        $campContext->url->set_parameter('f_search_keywords', $p_params['search_phrase']);\n        $campContext->url->set_parameter('f_search_issue', $p_params['search_issue']);\n        $campContext->url->set_parameter('f_search_section', $p_params['search_section']);\n        $campContext->url->set_parameter('f_search_start_date', $p_params['start_date']);\n        $campContext->url->set_parameter('f_search_end_date', $p_params['end_date']);\n        $campContext->url->set_parameter('f_search_topic', $p_params['topic_id']);\n        $campContext->url->set_parameter('f_search_scope', $p_params['scope']);\n\n        $campContext->setCurrentList($searchResultsList, array('publication', 'language',\n    \t                                                       'issue', 'section', 'article',\n    \t                                                       'image', 'attachment', 'comment',\n    \t                                                       'subtitle'));\n        $campContext->article = $campContext->current_search_results_list->current;\n        $p_repeat = true;\n    } else {\n        $campContext->current_search_results_list->defaultIterator()->next();\n        if (!is_null($campContext->current_search_results_list->current)) {\n            $campContext->article = $campContext->current_search_results_list->current;\n            $p_repeat = true;\n        } else {\n            $fields = array('f_search_articles', 'f_match_all', 'f_search_level',\n                            'f_search_keywords', 'f_search_issue', 'f_search_section',\n                            'f_search_start_date', 'f_search_end_date', 'f_search_topic',\n                            'f_search_scope', $campContext->current_list_id());\n            foreach ($fields as $field) {\n                $campContext->url->reset_parameter($field);\n            }\n            $campContext->resetCurrentList();\n            $p_repeat = false;\n        }\n    }\n\n    return $p_content;\n}\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_section_authors.php",
    "content": "<?php\n/**\n * @package Newscoop\n */\n\n/**\n * Newscoop list_section_authors block plugin\n *\n * Type:     block\n * Name:     list_section_authors\n * Purpose:  Provides a list of section authors\n *\n * @param string\n *     $p_params\n * @param string\n *     $p_smarty\n * @param string\n *     $p_content\n *\n * @return\n *\n */\nfunction smarty_block_list_section_authors($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n    // gets the context variable\n    $context = $p_smarty->getTemplateVars('gimme');\n\n    if (!isset($p_content)) {\n        $start = $context->next_list_start('SectionAuthorsList');\n        $sectionAuthorsList = new SectionAuthorsList($start, $p_params);\n        \n        if ($sectionAuthorsList->isEmpty()) {error_log('current_before before');\n            $context->setCurrentList($sectionAuthorsList, array());\n            $context->resetCurrentList();\n            $p_repeat = false;\n            return null;\n        }\n\n        $context->setCurrentList($sectionAuthorsList, array('author'));\n        $context->author = $context->current_section_authors_list->current;\n        $p_repeat = true;\n    } else {\n        $context->current_section_authors_list->defaultIterator()->next();\n        if (!is_null($context->current_section_authors_list->current)) {\n            $context->author = $context->current_section_authors_list->current;\n            $p_repeat = true;\n        } else {\n            $context->resetCurrentList();\n            $p_repeat = false;\n        }\n    }\n\n    return $p_content;\n}\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_sections.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n\n/**\n * Campsite list_sections block plugin\n *\n * Type:     block\n * Name:     list_sections\n * Purpose:  Provides a...\n *\n * @param string\n *     $p_params\n * @param string\n *     $p_smarty\n * @param string\n *     $p_content\n *\n * @return\n *\n */\nfunction smarty_block_list_sections($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n    $p_smarty->smarty->loadPlugin('smarty_shared_escape_special_chars');\n    $campContext = $p_smarty->getTemplateVars('gimme');\n\n    if (!isset($p_content)) {\n        $start = $campContext->next_list_start('SectionsList');\n    \t$sectionsList = new SectionsList($start, $p_params);\n    \tif ($sectionsList->isEmpty()) {\n            $campContext->setCurrentList($sectionsList, array());\n            $campContext->resetCurrentList();\n    \t\t$p_repeat = false;\n    \t    return null;\n    \t}\n    \t$campContext->setCurrentList($sectionsList, array('publication', 'language',\n    \t                                                  'issue', 'section', 'article',\n    \t                                                  'image', 'attachment', 'comment',\n    \t                                                  'subtitle'));\n    \t$campContext->section = $campContext->current_sections_list->current;\n    \t$p_repeat = true;\n    } else {\n        $campContext->current_sections_list->defaultIterator()->next();\n        if (!is_null($campContext->current_sections_list->current)) {\n            $campContext->section = $campContext->current_sections_list->current;\n            $p_repeat = true;\n        } else {\n            $campContext->resetCurrentList();\n            $p_repeat = false;\n        }\n    }\n\n    return $p_content;\n}\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_slideshow_items.php",
    "content": "<?php\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\n/**\n * Newscoop list_slideshow_items block plugin\n *\n * Type:     block\n * Name:     list_slideshow_items\n *\n * @param array   $params\n * @param mixed   $content\n * @param object  $smarty\n * @param boolean $repeat\n *\n * @return string\n */\nfunction smarty_block_list_slideshow_items($params, $content, &$smarty, &$repeat)\n{\n    $context = $smarty->getTemplateVars('gimme');\n    $paginatorService = \\Zend_Registry::get('container')->get('newscoop.listpaginator.service');\n    $cacheService = \\Zend_Registry::get('container')->get('newscoop.cache');\n\n    if (!isset($content)) { // init\n        $start = $context->next_list_start('Newscoop\\TemplateList\\SlideshowItemsList');\n        $list = new \\Newscoop\\TemplateList\\SlideshowItemsList(\n            new \\Newscoop\\Criteria\\SlideshowItemCriteria(),\n            $paginatorService,\n            $cacheService\n        );\n\n        $list->setPageParameterName($context->next_list_id($context->getListName($list)));\n        $list->setPageNumber(\\Zend_Registry::get('container')->get('request')->get($list->getPageParameterName(), 1));\n\n        $list->getList(0, $params);\n        if ($list->isEmpty()) {\n            $context->setCurrentList($list, array());\n            $context->resetCurrentList();\n            $repeat = false;\n\n            return null;\n        }\n\n        $context->setCurrentList($list, array('slideshow_item', 'pagination'));\n        $context->slideshow_item = $context->current_slideshow_items_list->current;\n        $repeat = true;\n    } else { // next\n        $context->current_slideshow_items_list->defaultIterator()->next();\n        if (!is_null($context->current_slideshow_items_list->current)) {\n            $context->slideshow_item = $context->current_slideshow_items_list->current;\n            $repeat = true;\n        } else {\n            $context->resetCurrentList();\n            $repeat = false;\n        }\n    }\n\n    return $content;\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_slideshows.php",
    "content": "<?php\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\n/**\n * Newscoop list_slideshows block plugin\n *\n * Type:     block\n * Name:     list_slideshows\n *\n * @param array   $params\n * @param mixed   $content\n * @param object  $smarty\n * @param boolean $repeat\n *\n * @return string\n */\nfunction smarty_block_list_slideshows($params, $content, &$smarty, &$repeat)\n{\n    $context = $smarty->getTemplateVars('gimme');\n    $paginatorService = \\Zend_Registry::get('container')->get('newscoop.listpaginator.service');\n    $cacheService = \\Zend_Registry::get('container')->get('newscoop.cache');\n\n    if (!isset($content)) { // init\n        $start = $context->next_list_start('Newscoop\\TemplateList\\SlideshowsList');\n        $list = new \\Newscoop\\TemplateList\\SlideshowsList(\n            new \\Newscoop\\Criteria\\SlideshowCriteria(),\n            $paginatorService,\n            $cacheService\n        );\n\n        $list->setPageParameterName($context->next_list_id($context->getListName($list)));\n        $list->setPageNumber(\\Zend_Registry::get('container')->get('request')->get($list->getPageParameterName(), 1));\n\n        $list->getList(0, $params);\n        if ($list->isEmpty()) {\n            $context->setCurrentList($list, array());\n            $context->resetCurrentList();\n            $repeat = false;\n\n            return null;\n        }\n\n        $context->setCurrentList($list, array('slideshow', 'pagination'));\n        $context->slideshow = $context->current_slideshows_list->current;\n        $repeat = true;\n    } else { // next\n        $context->current_slideshows_list->defaultIterator()->next();\n        if (!is_null($context->current_slideshows_list->current)) {\n            $context->slideshow = $context->current_slideshows_list->current;\n            $repeat = true;\n        } else {\n            $context->resetCurrentList();\n            $repeat = false;\n        }\n    }\n\n    return $content;\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_subtitles.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n\n/**\n * Campsite list_subtitles block plugin\n *\n * Type:     block\n * Name:     list_subtitles\n * Purpose:  Provides a...\n *\n * @param string\n *     $p_params\n * @param string\n *     $p_smarty\n * @param string\n *     $p_content\n *\n * @return\n *\n */\nfunction smarty_block_list_subtitles($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n    $p_smarty->smarty->loadPlugin('smarty_shared_escape_special_chars');\n    $campContext = $p_smarty->getTemplateVars('gimme');\n\n    static $subtitleURLId = null;\n\n    if (!isset($p_content)) {\n        $start = $campContext->next_list_start('SubtitlesList');\n        $subtitlesList = new SubtitlesList($start, $p_params);\n        if ($subtitlesList->isEmpty()) {\n            $campContext->setCurrentList($subtitlesList, array());\n            $campContext->resetCurrentList();\n        \t$p_repeat = false;\n            return null;\n        }\n        $campContext->setCurrentList($subtitlesList, array('subtitle'));\n        $campContext->subtitle = $campContext->current_subtitles_list->current;\n        $subtitleURLId = $campContext->article->subtitle_url_id($campContext->subtitle->field_name);\n        $campContext->url->set_parameter($subtitleURLId, $campContext->subtitle->number);\n        $p_repeat = true;\n    } else {\n        $campContext->current_subtitles_list->defaultIterator()->next();\n        if (!is_null($campContext->current_subtitles_list->current)) {\n            $campContext->subtitle = $campContext->current_subtitles_list->current;\n            $subtitleURLId = $campContext->article->subtitle_url_id($campContext->subtitle->field_name);\n            $campContext->url->set_parameter($subtitleURLId, $campContext->subtitle->number);\n            $p_repeat = true;\n        } else {\n            $campContext->url->reset_parameter($subtitleURLId);\n            $campContext->resetCurrentList();\n            $p_repeat = false;\n        }\n    }\n\n    return $p_content;\n}\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_subtopics.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n\n/**\n * Campsite list_subtopics block plugin\n *\n * Type:     block\n * Name:     list_subtopics\n * Purpose:  Provides a...\n *\n * @param string\n *     $p_params\n * @param string\n *     $p_smarty\n * @param string\n *     $p_content\n *\n * @return\n *\n */\nfunction smarty_block_list_subtopics($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n    $p_smarty->smarty->loadPlugin('smarty_shared_escape_special_chars');\n    $campContext = $p_smarty->getTemplateVars('gimme');\n\n    if (!isset($p_content)) {\n        $start = $campContext->next_list_start('SubtopicsList');\n    \t$subtopicsList = new SubtopicsList($start, $p_params);\n    \tif ($subtopicsList->isEmpty()) {\n            $campContext->setCurrentList($subtopicsList, array());\n            $campContext->resetCurrentList();\n    \t\t$p_repeat = false;\n    \t    return null;\n    \t}\n    \t$campContext->setCurrentList($subtopicsList, array('topic'));\n    \t$campContext->topic = $campContext->current_subtopics_list->current;\n    \t$p_repeat = true;\n    } else {\n        $campContext->current_subtopics_list->defaultIterator()->next();\n        if (!is_null($campContext->current_subtopics_list->current)) {\n            $campContext->topic = $campContext->current_subtopics_list->current;\n            $p_repeat = true;\n        } else {\n            $campContext->resetCurrentList();\n            $p_repeat = false;\n        }\n    }\n\n    return $p_content;\n}\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_user_comments.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Newscoop list_users block plugin\n *\n * Type:     block\n * Name:     list_users\n *\n * @param array $params\n * @param mixed $content\n * @param object $smarty\n * @param bool $repeat\n * @return string\n */\nfunction smarty_block_list_user_comments($params, $content, &$smarty, &$repeat)\n{\n    $context = $smarty->getTemplateVars('gimme');\n\n    if (!isset($content)) { // init\n        $start = $context->next_list_start('UserCommentsList');\n        $list = new UserCommentsList($start, $params);\n        if ($list->isEmpty()) {\n            $context->setCurrentList($list, array());\n            $context->resetCurrentList();\n            $repeat = false;\n            return;\n        }\n\n        $context->setCurrentList($list, array('user_comment'));\n        $context->user_comment = $context->current_user_comments_list->current;\n        $repeat = true;\n    } else { // next\n        $context->current_user_comments_list->defaultIterator()->next();\n        if (!is_null($context->current_user_comments_list->current)) {\n            $context->user_comment = $context->current_user_comments_list->current;\n            $repeat = true;\n        } else {\n            $context->resetCurrentList();\n            $repeat = false;\n        }\n    }\n\n    return $content;\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_user_topics.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\View\\ViewCollection;\n\n/**\n * Newscoop list_user_topics block plugin\n *\n * @param array $params\n * @param mixed $content\n * @param object $smarty\n * @param bool $repeat\n * @return string\n */\nfunction smarty_block_list_user_topics($params, $content, $smarty, &$repeat)\n{\n    $gimme = $smarty->getTemplateVars('gimme');\n    if (!$gimme->user->defined) {\n        $repeat = false;\n\n        return;\n    }\n\n    static $lists;\n    if (!isset($lists)) {\n        $lists = new SplStack();\n    }\n\n    if (!isset($content)) {\n        $service = Zend_Registry::get('container')->getService('user.topic');\n        $lists->push(new ViewCollection($service->getTopics($gimme->user->identifier, $gimme->language->code)));\n    }\n\n    $list = $lists->pop();\n    if ($repeat = $list->valid()) {\n        $smarty->assign('topic', $list->current());\n        $list->next();\n        $smarty->assign('last', !$list->valid());\n        $lists->push($list);\n    }\n\n    return $content;\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.list_users.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Newscoop list_users block plugin\n *\n * Type:     block\n * Name:     list_users\n *\n * @param array $params\n * @param mixed $content\n * @param object $smarty\n * @param bool $repeat\n * @return string\n */\nfunction smarty_block_list_users($params, $content, &$smarty, &$repeat)\n{\n    $context = $smarty->getTemplateVars('gimme');\n    $paginatorService = \\Zend_Registry::get('container')->get('newscoop.listpaginator.service');\n    $cacheService = \\Zend_Registry::get('container')->get('newscoop.cache');\n\n    if (!isset($content)) {\n        $start = $context->next_list_start('Newscoop\\TemplateList\\UsersList');\n        $list = new Newscoop\\TemplateList\\UsersList(\n            new Newscoop\\User\\UserCriteria(),\n            $paginatorService,\n            $cacheService\n        );\n\n        $list->setPageParameterName($context->next_list_id($context->getListName($list)));\n        $list->setPageNumber(\\Zend_Registry::get('container')->get('request')->get($list->getPageParameterName(), 1));\n\n        $list->getList($start, $params);\n        if ($list->isEmpty()) {\n            $context->setCurrentList($list, array());\n            $context->resetCurrentList();\n            $repeat = false;\n            return null;\n        }\n\n        $context->setCurrentList($list, array('list_user'));\n        $context->list_user = $context->current_users_list->current;\n\n        $repeat = true;\n    } else {\n        $context->current_users_list->defaultIterator()->next();\n        if (!is_null($context->current_users_list->current)) {\n            $context->list_user = $context->current_users_list->current;\n            $repeat = true;\n        } else {\n            $context->resetCurrentList();\n            $repeat = false;\n        }\n    }\n\n    return $content;\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.local.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n\n/**\n * Campsite list_issues block plugin\n *\n * Type:     block\n * Name:     list_issues\n * Purpose:  Provides a \n *\n * @param string\n *     $p_params\n * @param string\n *     $p_smarty\n * @param string\n *     $p_content\n *\n * @return\n *\n */\nfunction smarty_block_local($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n    // gets the context variable\n    $campContext = $p_smarty->getTemplateVars('gimme');\n\n    if (!isset($p_content)) {\n        $campContext->saveCurrentContext();\n        $p_repeat = true;\n    } else {\n        $campContext->restoreContext();\n        $p_repeat = false;\n    }\n\n    return $p_content;\n}\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.login_form.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite login_form block plugin\n *\n * Type:     block\n * Name:     login_form\n * Purpose:  Provides a...\n *\n * @param string\n *     $p_params\n * @param string\n *     $p_smarty\n * @param string\n *     $p_content\n *\n * @return\n *\n */\nfunction smarty_block_login_form($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n    if (!isset($p_content)) {\n        return '';\n    }\n\n    $p_smarty->smarty->loadPlugin('smarty_shared_escape_special_chars');\n\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    $url = $campsite->url;\n    $url->uri_parameter = \"\";\n    $template = null;\n    if (isset($p_params['template'])) {\n        $themePath = $campsite->issue->defined() ? $campsite->issue->theme_path : $campsite->publication->theme_path;\n        $template = new MetaTemplate($p_params['template'], $themePath);\n        if (!$template->defined()) {\n            CampTemplate::singleton()->trigger_error('invalid template \"' . $p_params['template']\n            . '\" specified in the login form');\n            return false;\n        }\n    } elseif (is_numeric($url->get_parameter('tpl'))) {\n        $template = $campsite->default_template;\n    }\n    if (!isset($p_params['submit_button'])) {\n        $p_params['submit_button'] = 'Submit';\n    }\n    if (!isset($p_params['html_code']) || empty($p_params['html_code'])) {\n        $p_params['html_code'] = '';\n    }\n    if (!isset($p_params['button_html_code']) || empty($p_params['button_html_code'])) {\n        $p_params['button_html_code'] = '';\n    }\n\n    if (isset($template)) {\n        $url->uri_parameter = \"template \" . str_replace(' ', \"\\\\ \", $template->name);\n    }\n    $html = \"<form name=\\\"login\\\" action=\\\"\" . $url->uri_path . \"\\\" method=\\\"post\\\" \"\n    . $p_params['html_code'] . \">\\n\";\n    if (isset($template)) {\n        $html .= \"<input type=\\\"hidden\\\" name=\\\"tpl\\\" value=\\\"\".$template->identifier.\"\\\" />\\n\";\n    }\n    foreach ($campsite->url->form_parameters as $param) {\n        if ($param['name'] == 'tpl') {\n            continue;\n        }\n        $html .= '<input type=\"hidden\" name=\"'.$param['name']\n        .'\" value=\"'.htmlentities($param['value']).\"\\\" />\\n\";\n    }\n    $html .= $p_content;\n    $html .= \"<input type=\\\"submit\\\" name=\\\"f_login\\\" value=\\\"\"\n    .smarty_function_escape_special_chars($p_params['submit_button'])\n    .\"\\\" \".$p_params['button_html_code'].\" />\\n</form>\\n\";\n\n    return $html;\n} // fn smarty_block_login_form\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.search_form.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite search_form block plugin\n *\n * Type:     block\n * Name:     search_form\n * Purpose:  Provides a...\n *\n * @param string $p_params\n *\n * @param string $p_content\n *\n * @param string $p_smarty\n *\n *\n * @return string $html\n */\nfunction smarty_block_search_form($p_params, $p_content, $p_smarty)\n{\n    if (!isset($p_content)) {\n        return '';\n    }\n\n    $p_smarty->smarty->loadPlugin('smarty_shared_escape_special_chars');\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    $url = $campsite->url;\n    $url->uri_parameter = \"\";\n    $template = null;\n    if (isset($p_params['template'])) {\n        $themePath = $campsite->issue->defined() ? $campsite->issue->theme_path : $campsite->publication->theme_path;\n        $template = new MetaTemplate($p_params['template'], $themePath);\n        if (!$template->defined()) {\n            CampTemplate::singleton()->trigger_error('invalid template \"' . $p_params['template']\n            . '\" specified in the search form');\n            return false;\n        }\n    } elseif (is_numeric($url->get_parameter('tpl'))) {\n        $template = $campsite->default_template;\n    }\n    if (!isset($p_params['submit_button'])) {\n        $p_params['submit_button'] = 'Submit';\n    }\n    if (!isset($p_params['html_code']) || empty($p_params['html_code'])) {\n        $p_params['html_code'] = '';\n    }\n    if (!isset($p_params['button_html_code']) || empty($p_params['button_html_code'])) {\n        $p_params['button_html_code'] = '';\n    }\n\n    $searchListIdPrefix = $campsite->list_id_prefix('SearchResultsList');\n    if (isset($template)) {\n        $url->uri_parameter = \"template \" . str_replace(' ', \"\\\\ \", $template->name);\n    }\n    $html = \"<form name=\\\"search_articles\\\" action=\\\"\" . $url->uri_path . \"\\\" method=\\\"post\\\" \"\n    .$p_params['html_code'].\">\\n\";\n    if (isset($template)) {\n        $html .= \"<input type=\\\"hidden\\\" name=\\\"tpl\\\" value=\\\"\" . $template->identifier . \"\\\" />\\n\";\n    }\n    foreach ($campsite->url->form_parameters as $param) {\n        if (is_array($param['value'])) {\n            continue;\n        }\n\n        if (strncasecmp($param['name'], $searchListIdPrefix, strlen($searchListIdPrefix)) == 0) {\n            continue;\n        }\n\n        if ($param['name'] == 'tpl') {\n            continue;\n        }\n\n        $html .= '<input type=\"hidden\" name=\"'.$param['name']\n        .'\" value=\"'.htmlentities($param['value']).\"\\\" />\\n\";\n    }\n    $html .= $p_content;\n    $html .= \"<input type=\\\"submit\\\" name=\\\"f_search_articles\\\" value=\\\"\"\n    .smarty_function_escape_special_chars($p_params['submit_button'])\n    .\"\\\" \".$p_params['button_html_code'].\" />\\n</form>\\n\";\n\n    return $html;\n} // fn smarty_block_search_form\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.subscription_form.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n\n/**\n * Campsite subscription_form block plugin\n *\n * Type:     block\n * Name:     subscription_form\n * Purpose:  Provides a...\n *\n * @param string\n *     $p_params\n * @param string\n *     $p_smarty\n * @param string\n *     $p_content\n *\n * @return\n *\n */\nfunction smarty_block_subscription_form($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n    if (!isset($p_params['type'])\n    || (strtolower($p_params['type']) != 'by_section'\n    && strtolower($p_params['type']) != 'by_publication')) {\n        return null;\n    }\n\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n      // gets the URL base\n    $urlString = $campsite->url->base;\n\n    if (strtolower($p_params['type']) == 'by_publication') {\n        $campsite->subs_by_type = 'publication';\n    } elseif (strtolower($p_params['type']) == 'by_section') {\n        $campsite->subs_by_type = 'section';\n    }\n\n    $p_smarty->smarty->loadPlugin('smarty_function_get_resource_id');\n    $resourceId = smarty_function_get_resource_id($p_params, $p_smarty);\n\n\n    if (!isset($p_content)) {\n        return null;\n    }\n\n    $p_smarty->smarty->loadPlugin('smarty_shared_escape_special_chars');\n\n    $url = $campsite->url;\n    $url->uri_parameter = \"\";\n    $template = null;\n\n    if (isset($p_params['template'])) {\n        $template = new MetaTemplate($resourceId);\n        if (!$template->defined()) {\n            CampTemplate::singleton()->trigger_error('invalid template \"' . $p_params['template']\n            . '\" specified in the subscription form');\n            return false;\n        }\n    } elseif (is_numeric($url->get_parameter('tpl'))) {\n        $template = $campsite->default_template;\n    }\n    if (!isset($p_params['submit_button'])) {\n        $p_params['submit_button'] = 'Submit';\n    }\n    if (!isset($p_params['html_code']) || empty($p_params['html_code'])) {\n        $p_params['html_code'] = '';\n    }\n    if (!isset($p_params['button_html_code']) || empty($p_params['button_html_code'])) {\n        $p_params['button_html_code'] = '';\n    }\n\n    $subsType = strtolower(CampRequest::GetVar('SubsType'));\n    if ($subsType != 'trial' && $subsType != 'paid') {\n        return null;\n    }\n\n    $publication = $campsite->publication;\n    $timeUnits = $subsType == 'trial' ? $publication->subscription_trial_time : $publication->subscription_paid_time;\n    $sectionsNumber = Section::GetNumUniqueSections($publication->identifier, false);\n\n    if (isset($template)) {\n        $url->uri_parameter = \"template \" . str_replace(' ', \"\\\\ \", $template->name);\n    }\n    $html = \"<form name=\\\"subscription_form\\\" action=\\\"\" . $url->uri_path\n    . \"\\\" method=\\\"post\\\" \".$p_params['html_code'].\">\\n\";\n    $html .= \"<input type=\\\"hidden\\\" name=\\\"subs_by_type\\\" value=\\\"\"\n    . $campsite->subs_by_type . \"\\\" />\\n\";\n    if (isset($template)) {\n        $html .= \"<input type=\\\"hidden\\\" name=\\\"tpl\\\" value=\\\"\".$template->identifier.\"\\\" />\\n\";\n    }\n    $html .= \"<input type=\\\"hidden\\\" name=\\\"SubsType\\\" value=\\\"$subsType\\\" />\\n\"\n    .\"<input type=\\\"hidden\\\" name=\\\"tx_subs\\\" value=\\\"$timeUnits\\\" />\\n\"\n    .\"<input type=\\\"hidden\\\" name=\\\"nos\\\" value=\\\"$sectionsNumber\\\" />\\n\"\n    .\"<input type=\\\"hidden\\\" name=\\\"unitcost\\\" value=\\\"\"\n    .$publication->subscription_unit_cost.\"\\\" />\\n\"\n    .\"<input type=\\\"hidden\\\" name=\\\"unitcostalllang\\\" value=\\\"\"\n    .$publication->subscription_unit_cost_all_lang.\"\\\" />\\n\";\n    foreach ($campsite->url->form_parameters as $param) {\n        if ($param['name'] == 'tpl') {\n            continue;\n        }\n        $html .= '<input type=\"hidden\" name=\"'.$param['name']\n            .'\" value=\"'.htmlentities($param['value']).\"\\\" />\\n\";\n    }\n\n    $html .= $p_content;\n\n    if ($subsType == 'paid' && isset($p_params['total']) != '') {\n        $html .= $p_params['total'].\" <input type=\\\"text\\\" name=\\\"suma\\\" size=\\\"10\\\" \"\n        .\"READONLY /> \".$currency;\n    }\n\n    $html .= \"<input type=\\\"submit\\\" name=\\\"f_edit_subscription\\\" \"\n    .\"id=\\\"subscriptionEdit\\\" value=\\\"\"\n    .smarty_function_escape_special_chars($p_params['submit_button'])\n    .\"\\\" \".$p_params['button_html_code'].\" />\\n\";\n    $html .= \"</form>\\n\";\n\n?>\n<script type=\"text/javascript\">\n/**\n * Returns true if the given object had the given property.\n */\nfunction element_exists(object, property) {\n\tfor (i in object) {\n\t\tif (object[i].name == property) {\n\t\t\treturn true\n\t\t}\n\t}\n\treturn false\n}\n\n/**\n * Used in subscription form; computes the subscription cost and updates\n * the corresponding field in the form.\n */\nfunction update_subscription_payment() {\n\tvar sum = 0\n\tvar i\n\tvar my_form = document.forms[\"subscription_form\"]\n\tvar subs_all_lang = false\n\tvar unitcost = my_form.unitcost.value\n\tvar lang_count = 1\n\tif (element_exists(my_form.elements, \"subs_all_languages\")\n\t\t&& my_form.subs_all_languages.checked) {\n\t\tunitcost = my_form.unitcostalllang.value\n\t} else if (element_exists(my_form.elements, \"subscription_language[]\")) {\n\t\tlang_count = 0\n\t\tfor (i=0; i<my_form[\"subscription_language[]\"].options.length; i++) {\n\t\t\tif (my_form[\"subscription_language[]\"].options[i].selected) {\n\t\t\t\tlang_count++\n\t\t\t}\n\t\t}\n\t}\n\tfor (i = 0; i < my_form.nos.value; i++) {\n\t\tif (element_exists(my_form.elements, \"by\")\n\t\t\t&& my_form.by.value == \"publication\") {\n\t\t\tsum = parseInt(sum) + parseInt(my_form[\"tx_subs\"].value)\n\t\t\tcontinue\n\t\t}\n\t\tif (!my_form[\"cb_subs[]\"][i].checked) {\n\t\t\tcontinue\n\t\t}\n\t\tvar section = my_form[\"cb_subs[]\"][i].value\n\t\tvar time_var_name = \"tx_subs\" + section\n\t\tif (element_exists(my_form.elements, time_var_name)) {\n\t\t\tsum = parseInt(sum) + parseInt(my_form[time_var_name].value)\n\t\t} else if (element_exists(my_form.elements, \"tx_subs\")) {\n\t\t\tsum = parseInt(sum) + parseInt(my_form[\"tx_subs\"].value)\n\t\t}\n\t}\n\tmy_form.suma.value = Math.round(100 * sum * unitcost * lang_count) / 100\n}\n\nfunction ToggleElementEnabled(id) {\n\tif (document.getElementById(id).disabled) {\n\t\tdocument.getElementById(id).disabled = false\n\t} else {\n\t\tdocument.getElementById(id).disabled = true\n\t}\n}\n</script>\n<?php\n\nreturn $html;\n} // fn smarty_block_subscription_form\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.tr.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite tr block plugin\n *\n * Type:     block\n * Name:     tr\n * Purpose:  Translates the given string to the current language\n *\n * @param array\n *     $p_params The string to be translated\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_block_tr($p_params, $p_content, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n    if (!$campsite->language->defined) {\n        return;\n    }\n\n    return translate($p_content, $campsite->language->number);\n} // fn smarty_block_tr\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/block.user_form.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n\n/**\n * Campsite user_form block plugin\n *\n * Type:     block\n * Name:     user_form\n * Purpose:  Provides a...\n *\n * @param string\n *     $p_params\n * @param string\n *     $p_smarty\n * @param string\n *     $p_content\n *\n * @return\n *\n */\nfunction smarty_block_user_form($p_params, $p_content, &$p_smarty, &$p_repeat)\n{\n\n    $p_smarty->smarty->loadPlugin('smarty_function_get_resource_id');\n    $resourceId = smarty_function_get_resource_id($p_params, $p_smarty);\n\n\tif (!isset($p_content)) {\n        return null;\n    }\n\n    $translator = \\Zend_Registry::get('container')->getService('translator');\n    $p_smarty->smarty->loadPlugin('smarty_shared_escape_special_chars');\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    $url = $campsite->url;\n    $url->uri_parameter = \"\";\n    $template = null;\n\n    if (isset($p_params['template'])) {\n        $template = new MetaTemplate($resourceId);\n        if (!$template->defined()) {\n            CampTemplate::singleton()->trigger_error('invalid template \"' . $p_params['template']\n            . '\" specified in the user form');\n            return false;\n        }\n    } elseif (is_numeric($url->get_parameter('tpl'))) {\n        $template = $campsite->default_template;\n    }\n    if (!isset($p_params['submit_button'])) {\n    \t$p_params['submit_button'] = $translator->trans('Submit');\n    }\n    if (!isset($p_params['html_code']) || empty($p_params['html_code'])) {\n        $p_params['html_code'] = '';\n    }\n    if (!isset($p_params['button_html_code']) || empty($p_params['button_html_code'])) {\n        $p_params['button_html_code'] = '';\n    }\n\n    if (isset($template)) {\n        $url->uri_parameter = \"template \" . str_replace(' ', \"\\\\ \", $template->name);\n    }\n    if ($campsite->user->defined && $campsite->user->subscription->defined) {\n        $subsType = $campsite->user->subscription->type == 'T' ? 'trial' : 'paid';\n    } else {\n        $subsType = null;\n    }\n    $html = \"<form name=\\\"edit_user\\\" action=\\\"\" . $url->uri_path\n    . \"\\\" method=\\\"post\\\" \".$p_params['html_code'].\">\\n\";\n    if (!is_null($subsType)) {\n        $html .= \"<input type=\\\"hidden\\\" name=\\\"f_substype\\\" value=\\\"\".$subsType.\"\\\" />\\n\";\n    }\n    if (isset($template)) {\n        $html .= \"<input type=\\\"hidden\\\" name=\\\"tpl\\\" value=\\\"\".$template->identifier.\"\\\" />\\n\";\n    }\n    foreach ($campsite->url->form_parameters as $param) {\n        if ($param['name'] == 'tpl') {\n            continue;\n        }\n        $html .= '<input type=\"hidden\" name=\"'.$param['name']\n        .'\" value=\"'.htmlentities($param['value']).\"\\\" />\\n\";\n    }\n    $html.= $p_content;\n    $html.= \"<input type=\\\"submit\\\" name=\\\"f_edit_user\\\" value=\\\"\"\n    .smarty_function_escape_special_chars($p_params['submit_button'])\n    .\"\\\" \".$p_params['button_html_code'].\" />\\n</form>\\n\";\n\n    return $html;\n} // fn smarty_block_user_form\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/cacheresource.newscoop.php",
    "content": "<?php\n/**\n * Smarty Cache Resource for Newscoop\n *\n * @package Newscoop\n * @subpackage Smarty Cacher\n */\n\nclass Smarty_CacheResource_Newscoop extends Smarty_CacheResource_Custom\n{\n    private $cacheClass;\n\n    public function __construct()\n    {\n        $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n        $this->cacheClass = 'TemplateCacheHandler_' . $preferencesService->TemplateCacheHandler;\n    }\n\n    /**\n     * fetch cached content and its modification time from data source\n     *\n     * @param  string  $id            unique cache content identifier\n     * @param  string  $tpl_name      template name\n     * @param  string  $cache_id      cache id\n     * @param  string  $compile_id    compile id\n     * @param  string  $content       cached content\n     * @param  integer $mtime         cache modification timestamp (epoch)\n     * @param  integer $cacheLifetime cache lifetime in seconds\n     * @return void\n     */\n    protected function fetch($id, $tpl_name, $cache_id, $compile_id, &$content, &$mtime, $cacheLifetime = 0)\n    {\n        $handler = new $this->cacheClass;\n        $expired = $handler->handler('read', $cache_content, $tpl_name, null, null, null);\n\n        if ($cacheLifetime == 0) {\n            $themesService = \\Zend_Registry::get('container')->getService('newscoop_newscoop.themes_service');\n            $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n            $cacheKey = $cacheService->getCacheKey(array('cacheLifetime', $themesService->getThemePath(), $tpl_name), 'template');\n            if ($cacheService->contains($cacheKey)) {\n                $cacheLifetime = $cacheService->fetch($cacheKey);\n            } else {\n                $template = new Template($themesService->getThemePath() . $tpl_name);\n                $cacheLifetime = (int) $template->getCacheLifetime();\n                $cacheService->save($cacheKey, $cacheLifetime);\n            }\n        }\n\n        if ($expired != false) {\n            $content = $cache_content;\n            $mtime = $expired - $cacheLifetime;\n        }\n    }\n\n    /**\n     * Save content to cache\n     *\n     * @param  string       $id             unique cache content identifier\n     * @param  string       $tpl_name       template name\n     * @param  string       $cache_id       cache id\n     * @param  string       $compile_id     compile id\n     * @param  integer|null $exp_time       seconds till expiration or null\n     * @param  string       $content        content to cache\n     * @param  array        $campsiteVector Newscoop's CampsiteVector for defining which page is being cached\n     * @return boolean      success\n     */\n    protected function save($id, $tpl_name, $cache_id, $compile_id, $exp_time, $content, $campsiteVector = array())\n    {\n        $handler = new $this->cacheClass;\n\n        return $handler->handler('write', $content, $tpl_name, null, null, $exp_time);\n    }\n\n    /**\n     * Delete content from cache\n     *\n     * @param  string       $tpl_name   template name\n     * @param  string       $cache_id   cache id\n     * @param  string       $compile_id compile id\n     * @param  integer|null $exp_time   seconds till expiration time in seconds or null\n     * @return integer      number of deleted caches\n     */\n    protected function delete($tpl_name, $cache_id, $compile_id, $exp_time)\n    {\n        $handler = new $this->cacheClass;\n\n        return $handler->handler('clean', null, $tpl_name, null, null, null);\n    }\n\n    /**\n     * Write the rendered template output to cache\n     *\n     * @param  Smarty_Internal_Template $_template template object\n     * @param  string                   $content   content to cache\n     * @return boolean                  success\n     */\n    public function writeCachedContent(Smarty_Internal_Template $_template, $content)\n    {\n        return $this->save(\n            $_template->cached->filepath,\n            $_template->source->name,\n            $_template->cache_id,\n            $_template->compile_id,\n            $_template->properties['cache_lifetime'],\n            $content,\n            $_template->smarty->campsiteVector\n        );\n    }\n\n    /**\n     * populate Cached Object with timestamp and exists from Resource\n     *\n     * @param  Smarty_Template_Cached $source cached object\n     * @return void\n     */\n    public function populateTimestamp(Smarty_Template_Cached $cached)\n    {\n        $mtime = $this->fetchTimestamp($cached->filepath, $cached->source->name, $cached->cache_id, $cached->compile_id, $cached->source->smarty->cache_lifetime);\n        if ($mtime !== null) {\n            $cached->timestamp = $mtime;\n            $cached->exists = !!$cached->timestamp;\n\n            return;\n        }\n        $timestamp = null;\n        $this->fetch($cached->filepath, $cached->source->name, $cached->cache_id, $cached->compile_id, $cached->content, $timestamp, $cached->source->smarty->cache_lifetime);\n        $cached->timestamp = isset($timestamp) ? $timestamp : false;\n        $cached->exists = !!$cached->timestamp;\n    }\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.article_pdf.php",
    "content": "<?php\n/**\n * Newscoop customized Smarty plugin\n * @package Newscoop\n */\n\n/**\n * Newscoop article_pdf function plugin\n *\n * Type:     function\n * Name:     article_pdf\n * Purpose:\n *\n * @param array\n *     $params[template]\n *     $params[prefix]\n * @param object\n *     $smarty The Smarty object\n */\nfunction smarty_function_article_pdf($params, &$smarty)\n{\n    // gets the context variable\n    $gimme = $smarty->getTemplateVars('gimme');\n\n    if (isset($params['template'])) {\n        $template = $params['template'];\n    }\n\n    $pdf_filename = '';\n    if (isset($params['prefix'])) {\n        $pdf_filename = $params['prefix'] . '-';\n    }\n    $publish = new DateTime($gimme->article->publish_date);\n    $pdf_filename .= 'p' . $publish->format('Ymd') . '-n' . $gimme->article->number . '.pdf';\n    $pdf_file = 'public/pdf/' . $pdf_filename;\n\n    if (!file_exists($pdf_file) || $gimme->article->last_update > date('Y-m-d h:i:s', filemtime($pdf_file)))  {\n        require('include/html2pdf/html2pdf.class.php');\n        try {\n            $content = $smarty->fetch($template);\n            $html2pdf = new HTML2PDF('P', 'A4', 'de');\n            $html2pdf->pdf->SetDisplayMode('real');\n            $html2pdf->writeHTML($content);\n            $html2pdf->Output($pdf_file, 'F');\n        } catch (HTML2PDF_exception $e) {\n            return '';\n        }\n    }\n\n    return $pdf_file;\n}\n\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.breadcrumb.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite breadcrumb function plugin\n *\n * Type:     function\n * Name:     breadcrumb\n * Purpose:  builds the breadcrumb for the current page. A 'first_level'\n *           attribute can be passed who indicates where the breadcrumb\n *           should start.\n *\n * @param array\n *     $p_params the date in unixtime format from $smarty.now\n * @param object\n *     $p_smarty The Smarty object\n *\n * @return\n *     string the html string for the breadcrumb\n *\n * @todo make it linkable\n */\nfunction smarty_function_breadcrumb($p_params, &$p_smarty)\n{\n    $p_smarty->smarty->loadPlugin('smarty_shared_escape_special_chars');\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    if (!isset($p_params['first_level']) || empty($p_params['first_level'])) {\n        $p_params['first_level'] = 'home';\n    }\n    if (!isset($p_params['separator']) || empty($p_params['separator'])) {\n        $p_params['separator'] = '&nbsp;&gt;&nbsp;';\n    }\n\n    $html = '';\n    $breadcrumbStarted = 0;\n    if ($p_params['first_level'] == 'home') {\n        $html .= 'Home ' . $p_params['separator'];\n        $breadcrumbStarted = 1;\n    }\n    if ($p_params['first_level'] == 'publication' || $breadcrumbStarted == 1\n            && $campsite->publication->defined) {\n        $html .= smarty_function_escape_special_chars($campsite->publication->name)\n              . $p_params['separator'];\n        $breadcrumbStarted = 1;\n    }\n    if ($p_params['first_level'] == 'issue' || $breadcrumbStarted == 1\n            && $campsite->issue->defined) {\n        $html .= smarty_function_escape_special_chars($campsite->issue->name)\n              . $p_params['separator'];\n        $breadcrumbStarted = 1;\n    }\n    if ($p_params['first_level'] == 'section' || $breadcrumbStarted == 1\n            && $campsite->section->defined) {\n        $html .= smarty_function_escape_special_chars($campsite->section->name)\n              . $p_params['separator'];\n        $breadcrumbStarted = 1;\n    }\n    if ($campsite->article->defined) {\n        $html .= smarty_function_escape_special_chars($campsite->article->name)\n              . $p_params['separator'];\n    }\n\n    return $html;\n\n} // fn smarty_function_breadcrumb\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.calendar.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n\n/**\n * Campsite calendar function plugin\n *\n * Type:     function\n * Name:     calendar\n * Purpose:  \n *\n * @param array\n *     $p_params List of parameters from template\n * @param object\n *     $p_smarty Smarty template object\n *\n * @return\n *     string The html content\n */\nfunction smarty_function_calendar($p_params, &$p_smarty)\n{\n    global $g_ado_db;\n\n    // if mandatory fields are missed, do nothing\n    if (!isset($p_params['container']) || !isset($p_params['url'])) {\n        return;\n    }\n\n    // get the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n    $html = '';\n\n    // language must be set in context, otherwise function does nothing\n    if (!$campsite->language->defined) {\n        return;\n    }\n\n    // get parameters\n    $container = $p_params['container'];\n    $url = $p_params['url'];\n    $style = (isset($p_params['style'])) ? $p_params['style'] : 'search-calendar';\n    $clickableDates = (isset($p_params['clickable_dates'])) ? isValidClickableDatesType($p_params['clickable_dates']) : 'all';\n    if ($clickableDates == false) {\n        return;\n    }\n    $minDate = (isset($p_params['min_date'])) ? $p_params['min_date'] : '';\n    $maxDate = (isset($p_params['max_date'])) ? $p_params['max_date'] : '';\n\n    // get list of clickable dates\n    $issues = array();\n    $articles = array();\n    switch($clickableDates) {\n    case 'issuesarticles':\n        $articles = Article::GetPublicationDates($campsite->publication->identifier,\n                                                 $campsite->language->number);\n        $issues = Issue::GetPublicationDates($campsite->publication->identifier,\n                                             $campsite->language->number);\n        break;\n    case 'articles':\n        $articles = Article::GetPublicationDates($campsite->publication->identifier,\n                                                 $campsite->language->number);\n        break;\n    case 'issues':\n        $issues = Issue::GetPublicationDates($campsite->publication->identifier,\n                                             $campsite->language->number);\n        break;\n    }\n\n    if ($clickableDates != 'all') {\n        $issuesDates = array();\n        if (is_array($issues)) {\n            foreach ($issues as $publicationDate) {\n                $publishDate = explode(' ', $publicationDate);\n                list($year, $month, $day) = explode('-', $publishDate[0]);\n                $issuesDates[] = '\"' . $year . '-' . $month . '-' . $day . '\"';\n            }\n            $issuesDates = array_unique($issuesDates);\n        }\n        $articlesDates = array();\n        if (is_array($articles)) {\n            foreach ($articles as $publicationDate) {\n                $publishDate = explode(' ', $publicationDate);\n                list($year, $month, $day) = explode('-', $publishDate[0]);\n                $articlesDates[] = '\"' . $year . '-' . $month . '-' . $day . '\"';\n            }\n            $articlesDates = array_unique($articlesDates);\n        }\n        if (sizeof($articlesDates) >= sizeof($issuesDates)) {\n            $articlesDates = array_diff($articlesDates, $issuesDates);\n        }\n\n        $publishDates = array_unique(array_merge($issuesDates, $articlesDates));\n    }\n\n    $datepickerSettings = 'dateFormat: \"yy-mm-dd\", ';\n    if (!empty($minDate)) {\n        $datepickerSettings .= 'minDate: \"' . $minDate . '\", ';\n    }\n    if (!empty($maxDate)) {\n        $datepickerSettings .= 'maxDate: \"' . $maxDate . \"\\\",\\n\";\n    }\n\n    // build javascript code\n    $html = '\n<!-- Begin Calendar widget //-->\n<div class=\"' . $style . '\">\n<div id=\"' . $container . '\"></div>\n<form method=\"post\" action=\"#\" name=\"dates\" id=\"dates\">\n  <input type=\"text\" id=\"datepicker\" />\n  <input type=\"submit\" id=\"submit\" value=\"submit\" style=\"display:none;\">\n</form>\n<script type=\"text/javascript\">\n    $(function() {\n        var issueDates = new Array(' . implode(',', $issuesDates) . ');\n        var articleDates = new Array(' . implode(',', $articlesDates) . ');\n        $.datepicker.setDefaults($.datepicker.regional[\"' . $campsite->language->code . '\"]);\n        $(\"#datepicker\").datepicker({';\n    $html .= $datepickerSettings;\n    if ($clickableDates != 'all') {\n        $html .= 'beforeShowDay: function(displayedDate) {\n                      var dDate = \"\";\n                      var dDay = displayedDate.getDate();\n                      var dMonth = displayedDate.getMonth() + 1;\n\n                      if (dDay < 10) dDay = \"0\" + dDay;\n                      if (dMonth < 10) dMonth = \"0\" + dMonth;\n                      dDate = displayedDate.getFullYear() + \"-\" + dMonth + \"-\" + dDay;\n\n                      for (i = 0; i < issueDates.length; i++) {\n                          if (dDate == issueDates[i]) {\n                              return [false,\"ui-state-active\",\"\"];\n                          }\n                      }\n                      for (i = 0; i < articleDates.length; i++) {\n                          if (dDate == articleDates[i]) {\n                              return [true, \"ui-state-active\", \"\"];\n                          }\n                      }\n                      return [false, \"\"]; // disable all other days\n                  },';\n        $html .= 'onSelect: function(selectedDate) {\n                      var contentDates = new Array(' . implode(',', $publishDates) . ');\n                      for (var i in contentDates) {\n                          if (selectedDate == contentDates[i]) {\n                              var linkTo = \"' . $url . '&date=\" + selectedDate;\n                              window.location = linkTo;\n                          }\n                      }\n                  }';\n    } else {\n        $html .= 'onSelect: function(selectedDate) {\n                      var linkTo = \"' . $url . '&date=\" + selectedDate;\n                      window.location = linkTo;\n                  }';\n    }\n    $html .= '});\n    });\n</script>\n</div>\n<div style=\"clear:both\" ></div>\n<!--End Calendar widget //-->\n';\n\n    return $html;\n} // fn smarty_function_calendar\n\n\n/**\n * @param string $p_clickableDates\n *      Type of clickable dates\n * @return string/boolean\n *      The type name if valid, otherwise FALSE\n */\nfunction isValidClickableDatesType($p_clickableDates)\n{\n    $p_clickableDates = strtolower($p_clickableDates);\n    $validTypes = array('articles','issues','issues,articles','articles,issues','all');\n    if (in_array($p_clickableDates, $validTypes)) {\n        if ($p_clickableDates == 'issues,articles' || $p_clickableDates == 'articles,issues') {\n            $p_clickableDates = 'issuesarticles';\n        }\n        return $p_clickableDates;\n    }\n    return false;\n} // fn isValidClickableDatesType\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.camp_edit.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n\n/**\n * Campsite camp_edit function plugin\n *\n * Type:     function\n * Name:     camp_edit\n * Purpose:  \n *\n * @param array\n *     $p_params the date in unixtime format from $smarty.now\n * @param object\n *     $p_smarty the date format wanted\n *\n * @return\n *     string the html form element\n *     string empty if something is wrong\n */\nfunction smarty_function_camp_edit($p_params, &$p_smarty)\n{\n    global $g_ado_db;\n    \n    static $calendarIncludesSent = false;\n\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n    $html = '';\n\n    if (!isset($p_params['object']) || !isset($p_params['attribute'])) {\n        return $html;\n    }\n    if (!isset($p_params['html_code']) || empty($p_params['html_code'])) {\n        $p_params['html_code'] = '';\n    }\n    if (!isset($p_params['size']) || !ctype_digit($p_params['size'])) {\n        $p_params['size'] = 10;\n    }\n\n    $object = strtolower($p_params['object']);\n    $attribute = strtolower($p_params['attribute']);\n\n    switch ($object) {\n    case 'user':\n        // gets the attribute value from the context\n        $fieldValue = $campsite->default_url->get_parameter('f_user_'.$attribute);\n        if (is_null($fieldValue)\n        && strncasecmp($attribute, 'password', strlen('password')) != 0\n        && strcasecmp($attribute, 'subscription') != 0) {\n            $fieldValue = $campsite->user->$attribute;\n        }\n        \n        $passwdFields = array('password','passwordagain');\n        $txtAreaFields = array('interests','improvements','text1','text2','text3');\n        $otherFields = array('name', 'uname', 'email', 'city', 'str_address', 'state',\n        'phone', 'fax', 'contact', 'second_phone', 'postal_code', 'employer', 'position',\n        'how', 'languages', 'field1', 'field2', 'field3', 'field4', 'field5');\n\n        if (in_array($attribute, $passwdFields)) {\n            $html = '<input type=\"password\" name=\"f_user_'.$attribute.'\" size=\"32\" '\n                .'maxlength=\"32\" '.$p_params['html_code'].' value=\"'\n                .smarty_function_escape_special_chars($fieldValue).'\" />';\n        } elseif (in_array($attribute, $txtAreaFields)) {\n        \t$cols = isset($p_params['columns']) ? (int)$p_params['columns'] : 40;\n        \t$rows = isset($p_params['rows']) ? (int)$p_params['rows'] : 4;\n        \t$html = '<textarea name=\"f_user_'.$attribute.\"\\\" cols=\\\"$cols\\\" rows=\\\"$rows\\\" \"\n                .$p_params['html_code'].'>'\n                .smarty_function_escape_special_chars($fieldValue).'</textarea>';\n        } elseif (in_array($attribute, $otherFields)) {\n            $length = substr($row['Type'], strpos($row['Type'], '(') + 1, -1);\n            $html = '<input type=\"text\" name=\"f_user_'.$attribute\n                .'\" size=\"'.($length > 32 ? 32 : $length)\n                .'\" maxlength=\"'.$length.'\" '\n                .'value=\"'.smarty_function_escape_special_chars($fieldValue).'\" ';\n            $html .= $p_params['html_code'].' />';\n        }\n        break;\n\n    case 'subscription':\n        $html = '<input type=\"hidden\" name=\"f_subs_'.$campsite->section->number\n            .'\" value=\"'. $campsite->publication->subscription_time.'\" '\n            .$p_params['html_code'].' />'.$campsite->publication->subscription_time;\n        break;\n\n    case 'login':\n        if ($attribute == 'password') {\n            $fieldType = 'password';\n        } elseif ($attribute == 'uname') {\n            $fieldType = 'text';\n        }\n        $html = '<input type=\"'.$fieldType.'\" name=\"f_login_'.$attribute\n            .'\" maxlength=\"32\" size=\"10\" '.$p_params['html_code'].' />';\n        break;\n\n    case 'search':\n        if ($attribute == 'keywords') {\n            $html = '<input type=\"text\" name=\"f_search_'.$attribute.'\" '\n                .'maxlength=\"255\" size=\"'.$p_params['size'].'\" value=\"';\n            if (isset($campsite->search)) {\n                $html.= smarty_function_escape_special_chars($campsite->search->keywords);\n            }\n            $html .= '\" '.$p_params['html_code'].' />';\n        } elseif ($attribute == 'start_date' || $attribute == 'end_date') {\n        \tif (!$calendarIncludesSent) {\n        \t\t$html = camp_get_calendar_include($campsite->language->code);\n        \t\t$calendarIncludesSent = true;\n        \t}\n        \t$html .= camp_get_calendar_field('f_search_' . $attribute, null, $p_params['html_code']);\n        }\n        break;\n\n    case 'comment':\n        if ($campsite->article->comments_enabled == 1) {\n            $fieldValue = $campsite->default_url->get_parameter('f_comment_'.$attribute);\n            if ($attribute == 'content') {\n            \t$cols = isset($p_params['columns']) ? (int)$p_params['columns'] : 40;\n            \t$rows = isset($p_params['rows']) ? (int)$p_params['rows'] : 4;\n                $html = '<textarea name=\"f_comment_'.$attribute.\"\\\" cols=\\\"$cols\\\" rows=\\\"$rows\\\" \"\n                    .$p_params['html_code'].'>'\n                    .smarty_function_escape_special_chars($fieldValue)\n                    .'</textarea>';\n            } elseif ($attribute == 'subject' || $attribute == 'reader_email'\n                      || $attribute == 'nickname') {\n                $html = '<input type=\"text\" name=\"f_comment_'.$attribute\n                    .'\" maxlength=\"255\" size=\"'.$p_params['size'].'\" value=\"'\n                    .smarty_function_escape_special_chars($fieldValue)\n                    .'\" '.$p_params['html_code'].' />';\n            } elseif ($attribute == 'is_anonymous') {\n                $html = '<input type=\"hidden\" name=\"f_comment_'.$attribute\n\t\t\t\t\t.'\" value=\"0\"><input type=\"checkbox\" name=\"f_comment_'.$attribute\n                    .'\" value=\"1\" '.$p_params['html_code'].' />';\n            } elseif ($attribute == 'parent') {\n                $html = '<input type=\"hidden\" name=\"f_comment_parent\" '.$p_params['html_code'].' />';\n            }\n        }\n        break;\n\n    case 'captcha':\n        $html = '<input type=\"text\" name=\"f_captcha_code\" '\n            .'size=\"'.$p_params['size'].'\" maxlength=\"255\" '\n            .$p_params['html_code'].' />';\n        break;\n    }\n\n    return $html;\n} // fn smarty_function_camp_edit\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.camp_select.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n\n/**\n * Campsite camp_select function plugin\n *\n * Type:     function\n * Name:     camp_select\n * Purpose:  Provides a...\n *\n * @param string\n *     $p_unixtime the date in unixtime format from $smarty.now\n * @param string\n *     $p_format the date format wanted\n *\n * @return\n *     string the formatted date\n *     null in case a non-valid format was passed\n */\nfunction smarty_function_camp_select($p_params, &$p_smarty)\n{\n    global $g_ado_db;\n\n    $translator = \\Zend_Registry::get('container')->getService('translator');\n\n    $p_smarty->loadPlugin('smarty_function_html_options');\n\n    if (!isset($p_params['object']) || !isset($p_params['attribute'])) {\n        return;\n    }\n    if (!isset($p_params['html_code']) || empty($p_params['html_code'])) {\n        $p_params['html_code'] = '';\n    }\n\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n    $html = '';\n\n    $object = strtolower($p_params['object']);\n    $attribute = strtolower($p_params['attribute']);\n    $selectTag = false;\n\n    switch($object) {\n    case 'user':\n        $fieldValue = CampRequest::GetVar('f_user_'.$attribute);\n        if ($attribute == 'gender') {\n            if (is_null($fieldValue)) {\n                $fieldValue = $campsite->user->$attribute;\n            }\n            $html = '<input type=\"radio\" name=\"f_user_'.$attribute\n                .'\" value=\"M\" '.(($fieldValue == 'M') ? 'checked' : '').' '\n                . $p_params['html_code'] . '/> '\n                .smarty_function_escape_special_chars($p_params['male_name'])\n                .' <input type=\"radio\" name=\"f_user_'.$attribute\n                .'\" value=\"F\" '.(($fieldValue == 'F') ? 'checked' : '').' '\n                . $p_params['html_code'] . ' /> '\n                .smarty_function_escape_special_chars($p_params['female_name']);\n        } elseif ($attribute == 'title') {\n        \tif (is_null($fieldValue)) {\n                $fieldValue = $campsite->user->$attribute;\n            }\n            $selectTag = true;\n            $output = array($translator->trans('Mr.', array(), 'users'), $translator->trans('Mrs.', array(), 'users'), $translator->trans('Ms.', array(), 'users'), $translator->trans('Dr.', array(), 'users'));\n            $values = array('Mr.', 'Mrs.', 'Ms.', 'Dr.');\n            $html = '<select name=\"f_user_'.$attribute.'\" ' . $p_params['html_code'] . '>';\n        } elseif ($attribute == 'country') {\n            if (is_null($fieldValue)) {\n                $fieldValue = $campsite->user->country_code;\n            }\n            $sqlQuery = 'SELECT Code, Name FROM Countries '\n                       .'GROUP BY Code ASC ORDER BY Name ASC';\n            $data = $g_ado_db->GetAll($sqlQuery);\n            foreach($data as $country) {\n                $output[] = $country['Name'];\n                $values[] = $country['Code'];\n            }\n            $selectTag = true;\n            $html = '<select name=\"f_user_'.$attribute.'\" ' . $p_params['html_code'] . '>';\n        } elseif ($attribute == 'age') {\n            if (is_null($fieldValue)) {\n                $fieldValue = $campsite->user->$attribute;\n            }\n            $selectTag = true;\n            $output = array('0-17', '18-24', '25-39', '40-49', '50-65', '65 or over');\n            $values = array('0-17', '18-24', '25-39', '40-49', '50-65', '65-');\n            $html = '<select name=\"f_user_'.$attribute.'\" ' . $p_params['html_code'] . '>';\n        } elseif ($attribute == 'employertype') {\n        \tif (is_null($fieldValue)) {\n                $fieldValue = $campsite->user->$attribute;\n            }\n            $selectTag = true;\n            $output = array($translator->trans('Corporate', array(), 'users'), $translator->trans('Non-Governmental', array(), 'users'), $translator->trans('Government Agency', array(), 'users'), $translator->trans('Academic', array(), 'users'), $translator->trans('Media', array(), 'users'), $translator->trans('Other', array(), 'users'));\n            $values = array('Corporate', 'NGO', 'Government Agency', 'Academic', 'Media', 'Other');\n            $html = '<select name=\"f_user_'.$attribute.'\" ' . $p_params['html_code'] . '>';\n        } elseif (substr($attribute, 0, 4) == 'pref') {\n            if (is_null($fieldValue)) {\n                $fieldValue = $campsite->user->$attribute;\n            }\n            $html = '<input type=\"checkbox\" name=\"f_user_'.$attribute.'\" '\n                .(($attrValue == 'Y') ? ' value=\"on\" checked />' : ' />')\n                .'<input type=\"hidden\" name=\"f_has_pref'\n                .substr($attribute, 4, 1).'\" value=\"1\" ' . $p_params['html_code'] . ' />';\n        }\n        break;\n\n    case 'login':\n        if ($attribute == 'rememberuser') {\n            if (is_null($fieldValue)) {\n                $fieldValue = $campsite->user->$attribute;\n            }\n            $html = '<input type=\"checkbox\" name=\"f_login_'.$attribute.'\" '\n            . $p_params['html_code'] . ' />';\n        }\n        break;\n\n    case 'subscription':\n    \t$subsType = strtolower(CampRequest::GetVar('SubsType'));\n    \tif ($subsType != 'trial' && $subsType != 'paid') {\n    \t\treturn null;\n    \t}\n    \tif ($attribute == 'languages') {\n            $publicationLanguages = $campsite->publication->languages_list(false);\n            foreach ($publicationLanguages as $language) {\n                $output[] = $language->name;\n                $values[] = $language->number;\n            }\n            $selectTag = true;\n            $html = '<select name=\"subscription_language[]\" multiple size=\"3\" ';\n            if ($subsType == 'paid') {\n                $html .= 'onchange=\"update_subscription_payment();\" ';\n            }\n            $html .= 'id=\"select_language\" ' . $p_params['html_code'] . '>';\n        } elseif ($attribute == 'alllanguages') {\n        \t$html = '<input type=\"checkbox\" name=\"subs_all_languages\" '\n                .'onchange=\"ToggleElementEnabled(\\'select_language\\');';\n            if ($subsType == 'paid') {\n                $html .= ' update_subscription_payment();';\n            }\n            $html .= '\" ' . $p_params['html_code'] . ' />';\n        } elseif ($attribute == 'section') {\n            if ($campsite->subs_by_type == 'publication') {\n                $html = '<input type=\"hidden\" name=\"cb_subs[]\" value=\"'\n                    .$campsite->section->number.'\" />';\n            } elseif ($campsite->subs_by_type == 'section') {\n                $html = '<input type=\"checkbox\" name=\"cb_subs[]\" value=\"'\n                    .$campsite->section->number.'\" '\n                    .'onchange=\"update_subscription_payment();\" '\n                    . $p_params['html_code'] . ' />';\n            }\n        }\n        break;\n\n    case 'search':\n        if ($attribute == 'mode') {\n            $html = '<input type=\"checkbox\" name=\"f_match_all\" '\n            . $p_params['html_code'] . ' />';\n        } elseif ($attribute == 'level') {\n            $html = '<select name=\"f_search_'.$attribute.'\" ' . $p_params['html_code'] . '>'\n                .'<option value=\"1\" selected=\"selected\">' . $translator->trans('Publication') . '</option>'\n                .'<option value=\"2\">' . $translator->trans('Issue') . '</option>'\n                .'<option value=\"3\">' . $translator->trans('Section') . '</option>'\n                .'</select>';\n        } elseif ($attribute == 'section') {\n        \t$constraints = array();\n            $operator = new Operator('is', 'integer');\n            if ($campsite->publication->defined) {\n            \t$constraints[] = new ComparisonOperation('IdPublication', $operator, $campsite->publication->identifier);\n            }\n            if ($campsite->language->defined) {\n            \t$constraints[] = new ComparisonOperation('IdLanguage', $operator, $campsite->language->number);\n            }\n            if ($campsite->issue->defined) {\n            \t$constraints[] = new ComparisonOperation('NrIssue', $operator, $campsite->issue->number);\n            }\n            $sectionsList = Section::GetList($constraints, array('Name'=>'ASC'), 0, 0, $count);\n            \n            $html = '<select name=\"f_search_section\" ' . $p_params['html_code'] . '>';\n            $html .= '<option value=\"0\" selected=\"selected\">' . $translator->trans('-- ALL SECTIONS --') . '</option>';\n            foreach ($sectionsList as $section) {\n            \t$html .= '<option value=\"' . $section->getSectionNumber() . '\">'\n            \t      . htmlspecialchars($section->getName()) . '</option>';\n            }\n            $html .= '</select>';\n        } elseif ($attribute == 'issue') {\n        \t$constraints = array();\n            $operator = new Operator('is', 'integer');\n            if ($campsite->publication->defined) {\n                $constraints[] = new ComparisonOperation('IdPublication', $operator, $campsite->publication->identifier);\n            }\n            if ($campsite->language->defined) {\n                $constraints[] = new ComparisonOperation('IdLanguage', $operator, $campsite->language->number);\n            }\n            $constraints[] = new ComparisonOperation('published', $operator, 'true');\n            $issuesList = Issue::GetList($constraints,\n                                         array(array('field'=>'bynumber', 'dir'=>'DESC')),\n                                         0, 0, $count);\n            $html = '<select name=\"f_search_issue\" ' . $p_params['html_code'] . '>';\n            $html .= '<option value=\"0\" selected=\"selected\">&nbsp;</option>';\n            foreach ($issuesList as $issue) {\n            \t$issueDesc = $issue->getIssueNumber() . '. '\n            \t           . $issue->getName()\n            \t           . ' ('. $issue->getPublicationDate() . ')';\n                $html .= '<option value=\"' . $issue->getIssueNumber() . '\">'\n                      . htmlspecialchars($issueDesc) . '</option>';\n            }\n            $html .= '</select>';\n        }\n    }\n\n    if ($selectTag == true) {\n        $html.= smarty_function_html_options(array('output' => $output,\n                                                   'values' => $values,\n                                                   'selected' => $fieldValue,\n                                                   'print_result' => false),\n                                             $p_smarty);\n        $html.= '</select>';\n    }\n\n    return $html;\n} // fn smarty_function_camp_select\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.captcha_image_link.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite captcha_image_link function plugin\n *\n * Type:     function\n * Name:     captcha_image_link\n * Purpose:\n *\n * @param empty\n *\n * @param object\n *     $p_smarty The Smarty object\n *\n * @return\n *     string the html string for the breadcrumb\n */\nfunction smarty_function_captcha_image_link($p_params)\n{\n    $html = $GLOBALS['Campsite']['SUBDIR'].'/include/captcha/image.php';\n    return $html;\n} // fn smarty_function_captcha_image_link\n\n?>"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.count.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\nrequire_once($GLOBALS['g_campsiteDir'] . '/admin-files/lib_campsite.php');\n\n/**\n * Campsite Map function plugin\n *\n * Type:     function\n * Name:     count\n * Purpose:  Triggers a statistics counting request\n *\n * @param array\n *     $p_params List of parameters from template\n * @param object\n *     $p_smarty Smarty template object\n *\n * @return\n *     string The html content\n */\nfunction smarty_function_count($p_params, &$p_smarty)\n{\n    global $Campsite;\n\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    $content = '';\n    {\n\n        $art_number = 0;\n        $art_language_num = 0;\n        $art_language_code = '';\n\n        if (isset($p_params['article']) && is_numeric($p_params['article'])) {\n            $art_number = $p_params['article'];\n        }\n\n        if (isset($p_params['language'])) {\n            $langs = array();\n            if (is_numeric($p_params['language'])) {\n                $langs = \\Language::GetLanguages($p_params['language']);\n            }\n            else {\n                $langs = \\Language::GetLanguages(null, $p_params['language']);\n            }\n            if (!isset($langs[0])) {\n                return ''; // 'no lang'\n            }\n            $art_language_obj = $langs[0];\n            $art_language_num = $art_language_obj->getLanguageId();\n            $art_language_code = $art_language_obj->getCode();\n        }\n\n        $count_automatically = true;\n        if (isset($p_params['dont_count_automatically'])) {\n            $count_automatically = false;\n        }\n\n        if ((!$art_number) || (!$art_language_num)) {\n            $meta_article = $campsite->article;\n            if ($meta_article->defined) {\n                if (!$art_number) {\n                    $art_number = $meta_article->number;\n                }\n                if (!$art_language_num) {\n                    $art_language_meta = $meta_article->language;\n                    $art_language_num = $art_language_meta->number;\n                    $art_language_code = $art_language_meta->code;\n                }\n            }\n        }\n\n        if (!$art_language_num) {\n            $art_language_meta = $campsite->language;\n            $art_language_num = $art_language_meta->number;\n            $art_language_code = $art_language_meta->code;\n        }\n\n        if ((!$art_number) || (!$art_language_num)) {\n            return ''; // 'no art_num or lang'\n        }\n\n        $article = new \\Article($art_language_num, $art_number);\n        if (!$article->exists()) {\n            return ''; // 'no art'\n        }\n\n        try {\n                $requestObjectId = $article->getProperty('object_id');\n                $updateArticle = empty($requestObjectId);\n\n                $objectType = new \\ObjectType('article');\n                $object_type_id = $objectType->getObjectTypeId();\n\n                if ($updateArticle) {\n                    $requestObject = new \\RequestObject($requestObjectId);\n                    if (!$requestObject->exists()) {\n                        $requestObject->create(array('object_type_id'=>$objectType->getObjectTypeId()));\n                        $requestObjectId = $requestObject->getObjectId();\n                    }\n                    $article->setProperty('object_id', $requestObjectId);\n                }\n\n                // statistics shall be only gathered if the site admin set it on (and not for editor previews)\n                if (!$campsite->preview) {\n                    $stat_web_url = $Campsite['WEBSITE_URL'];\n                    if ('/' != $stat_web_url[strlen($stat_web_url)-1]) {\n                        $stat_web_url .= '/';\n                    }\n                    $article_number = $article->getProperty('Number');\n                    $name_spec = '_' . $article_number . '_' . $art_language_code;\n\n                    $content .= \\Statistics::JavaScriptTrigger(array('count_automatically' => $count_automatically,'name_spec' => $name_spec, 'object_type_id' => $object_type_id, 'request_object_id' => $requestObjectId));\n                }\n        } catch (\\Exception $ex) {\n                return '';\n        }\n    }\n\n    return $content;\n\n} // fn smarty_function_count\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.disable_html_encoding.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite disable_html_encoding function plugin\n *\n * Type:     function\n * Name:     disable_html_encoding\n * Purpose:\n *\n * @param array\n *     $p_params empty\n * @param object\n *     $p_smarty The Smarty object\n *\n * @return void\n */\nfunction smarty_function_disable_html_encoding($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    if ($campsite->htmlencoding == true) {\n        $campsite->htmlencoding = false;\n    }\n} // fn smarty_function_disable_html_encoding\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.enable_html_encoding.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite enable_html_encoding function plugin\n *\n * Type:     function\n * Name:     enable_html_encoding\n * Purpose:\n *\n * @param array\n *     $p_params[name] The Name of the publication to be set\n *     $p_params[identifier] The Identifier of the publication to be set\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_enable_html_encoding($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    if ($campsite->htmlencoding == false) {\n        $campsite->htmlencoding = true;\n    }\n} // fn smarty_function_enable_html_encoding\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.form_hidden.php",
    "content": "<?php\n/**\n * @package Newscoop\n */\n\n/**\n * Form Hidden Field\n *\n * @param array $params\n * @param object $smarty\n * @return string\n */\nfunction smarty_function_form_hidden($params, $smarty)\n{\n    if (empty($params['name'])) {\n        return;\n    }\n\n    $view = $smarty->getTemplateVars('view');\n\n    return $view->formHidden(\n        $params['name'],\n        isset($params['value']) ? $params['value'] : null,\n        $params\n    );\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.form_register.php",
    "content": "<?php\n\nuse Newscoop\\EventDispatcher\\Events\\GenericEvent;\n\n// todo fix autoloading error\nrequire_once APPLICATION_PATH . '/forms/Register.php';\nrequire_once APPLICATION_PATH . '/forms/Confirm.php';\n\n/**\n * Render widget\n *\n * @param array $params\n * @param array $smarty\n * @return void\n */\nfunction smarty_function_form_register($params, $smarty)\n{\n    global $controller;\n\n    $formRegister = new Form_Register();\n    $formConfirm = new Form_Confirm();\n    $userService = $controller->getHelper('service')->getService('user');\n    $session = new Zend_Session_Namespace('Form_Register');\n\n    $request = $controller->getRequest();\n    if ($request->isPost()) {\n        $request->setPost('password', $session->password);\n        if ($formRegister->isValid($request->getPost())) { // handle confirm form\n            if ($request->has('username') && $formConfirm->isValid($request->getPost())) {\n                $values = $formConfirm->getValues();\n                $values['password'] = empty($values['password_change']) ? $session->password : $values['password_change'];\n                $user = $userService->create($values);\n\n                $dispatcher = $controller->getHelper('service')->getService('dispatcher');\n                $dispatcher->dispatch('user.register', new GenericEvent($smarty, array(\n                    'user' => $user,\n                )));\n\n                $controller->getHelper('redirector')->gotoSimple('index', 'index', 'default');\n            } elseif (!$request->has('username')) { // init confirm form\n                $values = $formRegister->getValues();\n                $session->password = $values['password'];\n                $values['username'] = $userService->generateUsername($values['first_name'], $values['last_name']);\n                $formConfirm->setDefaults($values + array(\n                    'terms_of_services' => 'Terms of services text',\n                ));\n            }\n\n            echo $formConfirm;\n            return;\n        }\n    } else {\n        $session->password = null;\n    }\n\n    echo $formRegister;\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.form_submit.php",
    "content": "<?php\n/**\n * @package Newscoop\n */\n\n/**\n * Form Submit Field\n *\n * @param array $params\n * @param object $smarty\n * @return string\n */\nfunction smarty_function_form_submit($params, $smarty)\n{\n    if (empty($params['value'])) {\n        return;\n    }\n\n    $view = $smarty->getTemplateVars('view');\n    return $view->formSubmit(\n        isset($param['name']) ? $params['name'] : '',\n        $params['value'],\n        $params\n    );\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.form_text.php",
    "content": "<?php\n/**\n * @package Newscoop\n */\n\n/**\n * Form Text Field\n *\n * @param array $params\n * @param object $smarty\n * @return string\n */\nfunction smarty_function_form_text($params, $smarty)\n{\n    if (empty($params['name'])) {\n        return;\n    }\n\n    $view = $smarty->getTemplateVars('view');\n    return $view->formText(\n        $params['name'],\n        isset($params['value']) ? $params['value'] : null,\n        $params\n    );\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.formparameters.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite formparameters function plugin\n *\n * Type:     function\n * Name:     formparameters\n * Purpose:\n *\n * @param array $p_params\n *\n * @return string $uriString\n *      The Form parameters requested\n */\nfunction smarty_function_formparameters($p_params, &$p_smarty)\n{\n    $context = $p_smarty->getTemplateVars('gimme');\n\n    if (!isset($p_params['options'])) {\n        $formParameters = $context->url->form_parameters;\n    } else {\n        $option = null;\n        $options = preg_split('/ /', $p_params['options']);\n        $option = strtolower($options[0]);\n        switch($option) {\n        case 'from_start':\n            $formParameters = $context->default_url->form_parameters;\n            break;\n        case 'article_comment':\n            $formParameters = $context->url->form_parameters;\n            if ($context->comment->defined == true) {\n                $i = sizeof($formParameters);\n                $formParameters[$i] = array('name' => 'IdComment',\n                                            'value' => $context->comment->identifier);\n            }\n            break;\n        default:\n            // trigger error invalid option\n            return false;\n        }\n    }\n\n    $html = '';\n    foreach ($formParameters as $param) {\n        $html .= '<input type=\"hidden\" name=\"'.$param['name']\n            .'\" value=\"'.htmlentities($param['value']).\"\\\" />\\n\";\n    }\n\n    return $html;\n} // fn smarty_function_formparameters\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.generate_edit_uri.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2015 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Generate edit uri for article (to current assigned to user editor)\n * \n * Result of that that function should be cached in template (as it fetch article object for every call).\n *\n * examle:\n *     {{ generate_edit_uri articleNumber=\"1\" language=\"en\" }}\n *\n * Type:     function\n * Name:     generate_edit_uri\n * Purpose:  Get article edit uri (for backend editor)\n *\n * @param array\n *     $params Parameters\n * @param object\n *     $smarty The Smarty object\n */\nfunction smarty_function_generate_edit_uri($params, &$smarty)\n{\n    $editorService = \\Zend_Registry::get('container')->get('newscoop.editor');\n    $em = \\Zend_Registry::get('container')->get('em');\n\n    $article = $em->getRepository('Newscoop\\Entity\\Article')\n        ->getArticle($params['articleNumber'], $params['language'])\n        ->getOneOrNullResult();\n\n    if (!$article) {\n        return null;\n    }\n\n    return $editorService->getLink($article);\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.generate_url.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Generate url for symfony route\n *\n * Type:     function\n * Name:     generate_url\n * Purpose:  Get url for symfony route\n *\n * @param array\n *     $params Parameters\n * @param object\n *     $smarty The Smarty object\n */\nfunction smarty_function_generate_url($params, &$smarty)\n{\n    $router = \\Zend_Registry::get('container')->get('router');\n\n    $acceptedParameters = array('route', 'parameters', 'absolute');\n    $route = null;\n    $parameters = array();\n    $absolute = false;\n\n    foreach ($params as $key => $value) {\n        if (in_array($key, $acceptedParameters)) {\n            if ($key == 'route') {\n                $route = $value;\n            } else if ($key == 'parameters' && is_array($value)) {\n                $parameters = $value;\n            } else if ($key == 'absolute') {\n                $absolute = $value;\n            }\n        }\n    }\n\n    return $router->generate($route, $parameters, $absolute);\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.get_request_param.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Get parameter from symfony Request object\n *\n * usage:\n *         {{ get_request_param assign=\"request\" }} - get request object\n *         {{ $request }} - request object is under $request smarty variable\n *\n *         {{ get_request_param name=\"param name\" default=\"null\" }} - get single parameter value from post and get\n *\n * Type:     function\n * Name:     get_request_param\n * Purpose:  Get parameters from request\n *\n * @param array\n *     $params Parameters\n * @param object\n *     $smarty The Smarty object\n */\nfunction smarty_function_get_request_param($params, &$smarty)\n{\n    $request = \\Zend_Registry::get('container')->get('request');\n\n    if (!array_key_exists('name', $params) && !array_key_exists('assign', $params)) {\n        throw new \\Newscoop\\NewscoopException('Parameter \"name\" is required');\n    } elseif (array_key_exists('assign', $params) && count($params) == 1) {\n        $smarty->assign($params['assign'], $request);\n\n        return;\n    }\n\n    $result = $request->get($params['name'], array_key_exists('default', $params)? $params['default'] : '');\n\n    if (array_key_exists('assign', $params)) {\n        $smarty->assign($params['assign'], $result);\n    } else {\n        return $result;\n    }\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.get_resource_id.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite get_resource_id function plugin\n *\n * Type:     function\n * Name:     get_resource_id\n * Purpose:\n *\n * @param empty\n *     $p_params\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_get_resource_id($p_params, &$p_smarty)\n{\n    $context = $p_smarty->getTemplateVars('gimme');\n    // gets the URL base\n    $urlString = $context->url->base;\n\n    // includes the smarty camp uri plugin\n    $p_smarty->smarty->loadPlugin('smarty_function_uri');\n    // appends the URI path and query values to the base\n    $urlString = smarty_function_uri(array(\"options\"=>\"id \".$p_params['template']), $p_smarty);\n    $resourceId = NULL;\n\n    $urlStringParams =  explode('=', $urlString);\n    for($i = 0; $i < count($urlStringParams) - 1; $i++) {\n        if( (substr($urlStringParams[$i], -3) == 'tpl')  ) {\n            $resourceIdArray = explode('&', $urlStringParams[$i + 1]);\n            $resourceId = $resourceIdArray[0];\n            break;\n        }\n    }\n\n    return $resourceId;\n\n} // fn smarty_function_get_resource_id\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.link_follow_topic.php",
    "content": "<?php\n/**\n * @package Newscoop\n */\n\n/**\n * Newscoop follow topic function\n *\n * Type:     function\n * Name:     follow_topic\n * Purpose:  Render follow topic link\n *\n * @param array $params\n * @param object $smarty\n * @return string\n */\nfunction smarty_function_link_follow_topic($params, $smarty)\n{\n    $context = $smarty->getTemplateVars('gimme');\n\n    $topic = !empty($params['topic']) ? $params['topic'] : $context->topic;\n    if (empty($topic)) {\n         '';\n    }\n\n    $user = $context->user;\n    if (!$user->logged_in) {\n        return '';\n    }\n\n    if (in_array($topic->identifier, array_keys($user->topics))) { // @todo make unfollow link\n        return '';\n    }\n\n    return sprintf('<a href=\"%s\">%s</a>',\n        $smarty->getTemplateVars('view')\n            ->url(array(\n                'module' => 'default',\n                'controller' => 'dashboard',\n                'action' => 'follow-topic',\n                'topic' => $topic->identifier,\n            ), 'default'),\n            !empty($params['link_text']) ? $params['link_text'] : \"Follow\");\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.listpagination.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Render list pagination\n *\n * Type:     function\n * Name:     listpagination\n * Purpose:  Render nice pagination for current list\n *\n * @param array\n *     $params Parameters\n * @param object\n *     $smarty The Smarty object\n */\nfunction smarty_function_listpagination($params, &$smarty)\n{\n    $context = $smarty->getTemplateVars('gimme');\n\n    if (!is_subclass_of($context->current_list, '\\Newscoop\\TemplateList\\PaginatedBaseList')) {\n        return;\n    }\n\n    if (\n        $context->current_list->getIndex() === $context->current_list->getEnd() &&\n        is_subclass_of($context->current_list->pagination, '\\Knp\\Component\\Pager\\Pagination\\PaginationInterface')\n    ) {\n        $templatesService = \\Zend_Registry::get('container')->get('newscoop.templates.service');\n        if (array_key_exists('file', $params)) {\n            $context->current_list->pagination->renderer = function ($data) use ($templatesService, $params) {\n                return $templatesService->fetchTemplate($params['file'], array('data' => $data));\n            };\n        } else {\n            $context->current_list->pagination->renderer = function ($data) use ($templatesService, $params) {\n                return $templatesService->fetchTemplate('_pagination/twitter_bootstrap_v2_pagination.tpl', array('data' => $data));\n            };\n        }\n\n        return $context->current_list->pagination;\n    }\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.map.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\nrequire_once($GLOBALS['g_campsiteDir'] . '/admin-files/lib_campsite.php');\n\n/**\n * Campsite Map function plugin\n *\n * Type:     function\n * Name:     map\n * Purpose:  Render a geo map\n *\n * @param array\n *     $p_params List of parameters from template\n * @param object\n *     $p_smarty Smarty template object\n *\n * @return\n *     string The html content\n */\nfunction smarty_function_map($p_params, &$p_smarty)\n{\n    // the strings are translated via Geo_Preferences::TemplateGeoStrings()\n    // if you change some of the strings, put them there too\n    $translator = \\Zend_Registry::get('container')->getService('translator');\n\n    // Default text for the reset link\n    define('DEFAULT_RESET_TEXT', $translator->trans('Show original map', array(), 'api'));\n    define('DEFAULT_OPEN_TEXT', $translator->trans('Open large map', array(), 'api'));\n\n    // get the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n    $html = '';\n\n    $map_common_header_set = $campsite->map_common_header_set;\n    $map_load_common_header = !$map_common_header_set;\n\n    // get show locations list parameter\n    $showLocationsList = FALSE;\n    if (isset($p_params['show_locations_list'])) {\n        if (is_string($p_params['show_locations_list'])) {\n            if (strtolower(trim((string) $p_params['show_locations_list'])) == 'true') {\n                $showLocationsList = TRUE;\n            }\n        }\n        if (is_bool($p_params['show_locations_list'])) {\n            if ($p_params['show_locations_list']) {\n                $showLocationsList = TRUE;\n            }\n        }\n    }\n\n    // get show reset link parameter\n    $showResetLink = TRUE;\n    $resetLinkText = DEFAULT_RESET_TEXT;\n    if (isset($p_params['show_reset_link'])) {\n        $resetLinkText_param = trim((string) $p_params['show_reset_link']);\n        if (('1' != $resetLinkText_param) && ('0' != $resetLinkText_param)) {\n            $resetLinkText = $resetLinkText_param;\n        }\n        if (strtolower($resetLinkText_param) == 'false') {\n            $showResetLink = FALSE;\n        }\n        if (empty($p_params['show_reset_link'])) {\n            $showResetLink = FALSE;\n        }\n    }\n    if (strtolower($resetLinkText) == 'true') {\n            $resetLinkText = DEFAULT_RESET_TEXT;\n    }\n\n    // get show open link parameter\n    $showOpenLink = TRUE;\n    $openLinkText = DEFAULT_OPEN_TEXT;\n    if (isset($p_params['show_open_link'])) {\n        $openLinkText_param = trim((string) $p_params['show_open_link']);\n        if (('1' != $openLinkText_param) && ('0' != $openLinkText_param)) {\n            $openLinkText = $openLinkText_param;\n        }\n        if (strtolower($openLinkText) == 'false') {\n            $showOpenLink = FALSE;\n        }\n        if (empty($p_params['show_open_link'])) {\n            $showOpenLink = FALSE;\n        }\n    }\n    if (strtolower($openLinkText) == 'true') {\n            $openLinkText = DEFAULT_OPEN_TEXT;\n    }\n\n    // should be the map a simple one, with opening the large map on any click\n    $openMapOnClick = false;\n    if (isset($p_params['open_map_on_click'])) {\n        $openMapOnClick_param = strtolower(trim((string) $p_params['open_map_on_click']));\n        if (('false' != $openMapOnClick_param) && ('0' != $openMapOnClick_param) && (!empty($p_params['open_map_on_click']))) {\n            $openMapOnClick = true;\n        }\n    }\n\n    // get map width and height\n    $width_dyn = false;\n    $height_dyn = false;\n    $width = 0;\n    $height = 0;\n\n    if (isset($p_params['width'])) {\n        $param_width = strtolower(trim((string) $p_params['width']));\n        $param_width_arr = explode('%', $param_width);\n        if (1 < count($param_width_arr)) {\n            $width_dyn = true;\n            $width = (int) $param_width_arr[0];\n            if (100 < $width) {\n                $width = 100;\n            }\n        }\n        else {\n            $width = (int) $p_params['width'];\n        }\n        if (0 > $width) {\n            $width = 0;\n        }\n    }\n\n    if (isset($p_params['height'])) {\n        $param_height = strtolower(trim((string) $p_params['height']));\n        $param_height_arr = explode('%', $param_height);\n        if (1 < count($param_height_arr)) {\n            $height_dyn = true;\n            $height = (int) $param_height_arr[0];\n            if (100 < $height) {\n                $height = 100;\n            }\n        }\n        else {\n            $height = (int) $p_params['height'];\n        }\n        if (0 > $height) {\n            $height = 0;\n        }\n    }\n\n    $width_large = isset($p_params['popup_width']) ? (int) $p_params['popup_width'] : 800;\n    $height_large = isset($p_params['popup_height']) ? (int) $p_params['popup_height'] : 600;\n    $max_zoom = isset($p_params['max_zoom']) ? (int) $p_params['max_zoom'] : null;\n    $map_margin = isset($p_params['map_margin']) ? (int) $p_params['map_margin'] : null;\n\n    $area_show = isset($p_params['area_show']) ? (string) $p_params['area_show'] : null;\n\n    // if we shall display a multi-map\n    if ((!is_null($campsite->map_dynamic_points_raw)) || (!is_null($campsite->map_dynamic_constraints))) {\n        // language must be set in context\n        if (!$campsite->language->defined) {\n            return;\n        }\n\n        $offset = 0;\n        $limit = $campsite->map_dynamic_max_points;\n        if (!$limit) {$limit = 2000;}\n\n        $multi_map_rank = $campsite->map_dynamic_id_counter;\n\n        $map_language = (int) $campsite->language->number;\n\n        $multi_map_part = \"<!-- Begin Map //-->\\n\";\n        $multi_map_body = '';\n        $multi_map_header = '';\n        $multi_poi_list = '';\n\n        $multi_map_points = $campsite->map_dynamic_points_raw;\n        $multi_map_label = $campsite->map_dynamic_map_label;\n\n        $multi_options = array();\n        $multi_options['max_zoom'] = $max_zoom;\n        $multi_options['map_margin'] = $map_margin;\n        $multi_options['load_common'] = $map_load_common_header;\n        $multi_options['pois_retrieved'] = false;\n        $multi_options['width_dyn'] = $width_dyn;\n        $multi_options['height_dyn'] = $height_dyn;\n\n        $multi_options['large_map_on_click'] = $openMapOnClick;\n        $multi_options['large_map_open'] = $showOpenLink;\n        $multi_options['large_map_width'] = $width_large;\n        $multi_options['large_map_height'] = $height_large;\n        $multi_options['large_map_label'] = $multi_map_label;\n\n        if ($campsite->map_dynamic_areas) {\n            if ('focus' == strtolower($area_show)) {\n                $multi_options['area_points'] = $campsite->map_dynamic_areas;\n            }\n            if ('focus_empty' == strtolower($area_show)) {\n                $multi_options['area_points'] = $campsite->map_dynamic_areas;\n                $multi_options['area_points_empty_only'] = true;\n            }\n        }\n\n        if ($multi_map_points) {\n            $multi_options['pois_retrieved'] = true;\n\n            $multi_map_header = Geo_Map::GetMultiMapTagHeader($map_language, $multi_map_points, $multi_options, $offset, $limit, $width, $height, $multi_map_rank);\n            $multi_poi_list = Geo_Map::GetMultiMapTagList($map_language, $multi_map_points, $multi_options, $multi_map_label, $offset, $limit, $multi_map_rank);\n        }\n        else {\n            $multi_map_constraints = $campsite->map_dynamic_constraints;\n            $multi_map_header = Geo_Map::GetMultiMapTagHeader($map_language, $multi_map_constraints, $multi_options, $offset, $limit, $width, $height, $multi_map_rank);\n            $multi_poi_list = Geo_Map::GetMultiMapTagList($map_language, $multi_map_constraints, $multi_options, $multi_map_label, $offset, $limit, $multi_map_rank);\n        }\n\n        $multi_map_center = Geo_Map::GetMultiMapTagCenter($map_language, $multi_map_rank);\n        $multi_map_open = Geo_Map::GetMultiMapTagOpen($map_language, $multi_map_rank);\n        $multi_map_div = Geo_Map::GetMultiMapTagBody($map_language, $multi_map_rank);\n\n        $multi_map_body .= '\n        <div class=\"geomap_container\">';\n\n        if ($showLocationsList == TRUE) {\n            $multi_map_body .= '\n                <div class=\"geomap_locations\">\n                    ' . $multi_poi_list . '\n                </div>';\n        }\n        if ($showResetLink == TRUE) {\n            $multi_map_body .= '\n                <div class=\"geomap_menu\">\n                    <a href=\"#\" onClick=\"' . $multi_map_center . 'return false;\">' . camp_javascriptspecialchars($resetLinkText) . '</a>\n                </div>';\n        }\n        if ($showOpenLink == TRUE) {\n            $multi_map_body .= '\n                <div class=\"geomap_open_large_map\">\n                    <a href=\"#\" onClick=\"' . $multi_map_open . 'return false;\">' . camp_javascriptspecialchars($openLinkText) . '</a>\n                </div>';\n        }\n        $multi_map_body .= '\n            <div class=\"geomap_map\">\n                ' . $multi_map_div . '\n            </div>\n        </div>\n        <div style=\"clear:both\" ></div>\n        <!--End Map //-->\n';\n\n        $multi_map_part .= $multi_map_header . $multi_map_body;\n\n        $campsite->map_common_header_set = true;\n        return $multi_map_part;\n    }\n    // the end of the multi-map part; the article map is processed below\n\n\n    // language and article must be set in context\n    if (!$campsite->language->defined || !$campsite->article->defined) {\n        return;\n    }\n\n    // do nothing if article does not have a map\n    if ($campsite->article->has_map == FALSE) {\n        return;\n    }\n\n    // get article and language from context\n    $article = (int) $campsite->article->number;\n    $language = (int) $campsite->language->number;\n\n    $auto_focus = isset($p_params['auto_focus']) ? (bool) $p_params['auto_focus'] : null;\n\n    // get core pieces to display the map\n    $map_options = array();\n    $map_options['auto_focus'] = $auto_focus;\n    $map_options['max_zoom'] = $max_zoom;\n    $map_options['map_margin'] = $map_margin;\n    $map_options['load_common'] = $map_load_common_header;\n    $map_options['width_dyn'] = $width_dyn;\n    $map_options['height_dyn'] = $height_dyn;\n\n    $map_options['large_map_on_click'] = $openMapOnClick;\n    $map_options['large_map_open'] = $showOpenLink;\n    $map_options['large_map_width'] = $width_large;\n    $map_options['large_map_height'] = $height_large;\n\n    $mapHeader = MetaMap::GetMapTagHeader($article, $language, $width, $height, $map_options);\n    $mapMain = MetaMap::GetMapTagBody($article, $language);\n\n    // build javascript code\n    $html = '\n        <!-- Begin Map //-->'\n        . $mapHeader . '\n        <div class=\"geomap_container\">';\n    if ($showLocationsList == TRUE) {\n        $local = array('map' => $translator->trans('Map', array(), 'api'), 'center' => $translator->trans('Center', array(), 'api'));\n        $mapLocationsList = MetaMap::GetMapTagList($article, $language, $local);\n        $html .= '\n            <div class=\"geomap_locations\">'\n            . $mapLocationsList . '\n            </div>';\n    }\n    if ($showResetLink == TRUE) {\n        $mapResetLink = MetaMap::GetMapTagCenter($article, $language);\n        $html .= '\n            <div class=\"geomap_menu\">\n                <a href=\"#\" onClick=\"' . $mapResetLink . '\n                 return false;\">' . camp_javascriptspecialchars($resetLinkText) . '</a>\n            </div>';\n    }\n    if ($showOpenLink == TRUE) {\n        $mapOpenLink = Geo_Map::GetMapTagOpen($article, $language);\n        $html .= '\n            <div class=\"geomap_open_large_map\">\n                <a href=\"#\" onClick=\"' . $mapOpenLink . 'return false;\">' . camp_javascriptspecialchars($openLinkText) . '</a>\n            </div>';\n    }\n    $html .= '\n            <div class=\"geomap_map\">'\n            . $mapMain . '\n            </div>\n        </div>\n        <div style=\"clear:both\" ></div>\n        <!--End Map //-->\n    ';\n\n    $campsite->map_common_header_set = true;\n    return $html;\n} // fn smarty_function_map\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.omnibox.php",
    "content": "<?php\n\nfunction smarty_function_omnibox($p_params, &$p_smarty)\n{\n    global $controller;\n    \n    $gimme = $p_smarty->getTemplateVars('gimme');\n\t\n\t$parameters = $p_params;\n\t$parameters['gimme'] = $gimme;\n    \n    try {\n\t\t$p_content = $controller->view->action(\n\t\t\t'index',\n\t\t\t'omnibox',\n\t\t\t'default',\n\t\t\t$parameters\n\t\t);\n\t}\n\tcatch (Exception $e) {\n\t\t$p_content = '';\n\t}\n    \n    return($p_content);\n}\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.render.php",
    "content": "<?php\n\n/* Newscoop render function plugin\n *\n * Newscoop caching save cached template file content with special vector parameters.\n * By default vector is filled with 5 parameters:\n *  * language\n *  * publication\n *  * issue\n *  * section\n *  * article\n *\n * There is also \"params\" parameter where we can save  array of custom parameters (serialized into string) or string.\n *\n * To ignore one or more parameters (to make cached template this same for many articles, sections, issues etc) just set it value to \"off\"\n *\n * You can also provide custom cache lifetime (or set it in admin themes management) - use \"cache\" parameter. Setting \"cache\" to off will not cache this rendered file.\n *\n * Examples:\n *\n * {{ render file=\"_tpl/_html-head.tpl\" cache=\"3200\" }} - cache \"_tpl/_html-head.tpl\" file for 3200 seconds with current context vector\n *\n * {{ render file=\"_tpl/_html-head.tpl\" publication=\"2\" }} - change default publication value in vector to 2\n *\n * {{ render file=\"_tpl/_html-head.tpl\" article=\"off\" cache=\"3200\" }} - cache \"_tpl/_html-head.tpl\" file for 3200 seconds for all articles in current vector (section, issue, publication and language)\n *\n * Type:     function\n * Name:     render\n * Purpose:  template rendering\n *\n * @param array\n *     $p_params\n * @param object\n *     $p_smarty The Smarty object\n *\n * @return\n *     rendered content\n */\nfunction smarty_function_render($p_params, &$p_smarty)\n{\n    if (empty($p_params['file'])) {\n        return null;\n    }\n\n    $smarty = CampTemplate::singleton();\n    $cache_lifetimeBak = $smarty->cache_lifetime;\n    $campsiteVectorBak = $smarty->campsiteVector;\n    $cache_statusBak = $smarty->caching;\n\n    if ($smarty->templateCacheHandler) {\n        $campsiteVector = $smarty->campsiteVector;\n        foreach ($campsiteVector as $key => $value) {\n            if (isset($p_params[$key])) {\n                if (empty($p_params[$key]) || (is_string($p_params[$key]) && strtolower($p_params[$key]) == 'off')) {\n                    $campsiteVector[$key] = null;\n                }\n                if (is_int($p_params[$key])) {\n                    $campsiteVector[$key] = $p_params[$key];\n                }\n            }\n        }\n        if (isset($p_params['params'])) {\n            if (is_array($p_params['params'])) {\n                $campsiteVector['params'] = '';\n                foreach ($p_params['params'] as $key => $value) {\n                    $campsiteVector['params'] .= $key .'__'. $value;\n                }\n            } else {\n                $campsiteVector['params'] = $p_params['params'];\n            }\n        } else {\n            $campsiteVector['params'] = null;\n        }\n        $smarty->campsiteVector = $campsiteVector;\n\n        if (empty($p_params['cache'])) {\n            $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n            $themesService = \\Zend_Registry::get('container')->getService('newscoop_newscoop.themes_service');\n            $cacheKey = $cacheService->getCacheKey(array('template', $themesService->getThemePath(), $p_params['file']), 'template');\n            if ($cacheService->contains($cacheKey)) {\n                $smarty->cache_lifetime = $cacheService->fetch($cacheKey);\n            } else {\n                $template = new Template($themesService->getThemePath() . $p_params['file']);\n                $smarty->cache_lifetime = (int) $template->getCacheLifetime();\n                $cacheService->save($cacheKey, $smarty->cache_lifetime);\n            }\n        } elseif ($p_params['cache'] == 'off') {\n           $smarty->caching = 0;\n        } else {\n            $smarty->cache_lifetime = (int) $p_params['cache'];\n        }\n    }\n\n    // add parameters as variables in rendered file\n    foreach ($p_params as $key => $value) {\n        if ($key != 'params' && $key != 'file') {\n            $smarty->assign($key, $value);\n        }\n    }\n\n    // make sure that every diffirent set of parameters will get his own cache instance\n    $smarty->display($p_params['file'], sha1(serialize($smarty->campsiteVector)));\n\n    // clear assigned variables\n    foreach ($p_params as $key => $value) {\n        if ($key != 'params' && $key != 'file') {\n            $smarty->clearAssign($key);\n        }\n    }\n    $smarty->cache_lifetime = $cache_lifetimeBak;\n    $smarty->campsiteVector = $campsiteVectorBak;\n    $smarty->caching = $cache_statusBak;\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.set_article.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite set_article function plugin\n *\n * Type:     function\n * Name:     set_article\n * Purpose:\n *\n * @param array\n *     $p_params[name] The Name of the article to be set\n *     $p_params[number] The Number of the article to be set\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_set_article($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    if (isset($p_params['number'])) {\n    \t$attrName = 'number';\n        $attrValue = $p_params['number'];\n        $articleNumber = intval($p_params['number']);\n    } elseif (isset($p_params['name'])) {\n    \t$articles = Article::GetByName($p_params['name'],\n    \t\t\t\t\t\t\t\t   $campsite->publication->identifier,\n    \t\t\t\t\t\t\t\t   $campsite->issue->number,\n    \t\t\t\t\t\t\t\t   $campsite->section->number,\n    \t\t\t\t\t\t\t\t   $campsite->language->number);\n        if (isset($articles[0])) {\n        \t$attrName = 'name';\n        \t$attrValue = $p_params['name'];\n            $articleNumber = intval($articles[0]->getArticleNumber());\n        } else {\n\t    \t$campsite->article->trigger_invalid_value_error($attrName, $attrValue, $p_smarty);\n        \treturn false;\n        }\n    } else {\n    \t$property = array_shift(array_keys($p_params));\n    \tCampTemplate::singleton()->trigger_error(\"invalid parameter '$property' in set_article\");\n        return false;\n    }\n\n    $articleObj = new MetaArticle($campsite->language->number, $articleNumber);\n    if ($articleObj->defined) {\n        $campsite->article = $articleObj;\n    } else {\n    \t$campsite->article->trigger_invalid_value_error($attrName, $attrValue, $p_smarty);\n    }\n} // fn smarty_function_set_article\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.set_current_issue.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite set_current_issue function plugin\n *\n * Type:     function\n * Name:     set_current_issue\n * Purpose:\n *\n * @param array\n *     $p_params[name] The Name of the publication to be set\n *     $p_params[identifier] The Identifier of the publication to be set\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_set_current_issue($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    $currentIssue = Issue::GetCurrentIssue($campsite->publication->identifier,\n    \t\t\t\t\t\t\t\t\t\t$campsite->language->number);\n    if (is_null($currentIssue)) {\n        return false;\n    }\n\n    // if the current issue was already the context do nothing\n    if ($campsite->issue->defined\n            && $campsite->issue->number == $currentIssue->getIssueNumber()) {\n        return;\n    }\n\n    $issueObj = new MetaIssue($campsite->publication->identifier,\n                              $campsite->language->number,\n                              $currentIssue->getIssueNumber());\n    if ($issueObj->defined) {\n        $campsite->issue = $issueObj;\n    }\n} // fn smarty_function_set_current_issue\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.set_default_article.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite set_default_article function plugin\n *\n * Type:     function\n * Name:     set_default_article\n * Purpose:\n *\n * @param array\n *     $p_params[name] The Name of the article to be set\n *     $p_params[number] The Number of the article to be set\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_set_default_article($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    $campsite->article = $campsite->default_article;\n} // fn smarty_function_set_default_article\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.set_default_issue.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite set_default_issue function plugin\n *\n * Type:     function\n * Name:     set_default_issue\n * Purpose:\n *\n * @param array\n *     $p_params The number of the issue to be set\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_set_default_issue($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    $campsite->issue = $campsite->default_issue;\n} // fn smarty_function_set_default_issue\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.set_default_language.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite set_default_language function plugin\n *\n * Type:     function\n * Name:     set_language\n * Purpose:\n *\n * @param array\n *     $p_params The English name of the language to be set\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_set_default_language($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    $campsite->language = $campsite->default_language;\n} // fn smarty_function_set_default_language\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.set_default_publication.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite set_default_publication function plugin\n *\n * Type:     function\n * Name:     set_default_publication\n * Purpose:\n *\n * @param array\n *     $p_params[name] The Name of the publication to be set\n *     $p_params[identifier] The Identifier of the publication to be set\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_set_default_publication($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    $campsite->publication = $campsite->default_publication;\n} // fn smarty_function_set_default_publication\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.set_default_section.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite set_default_section function plugin\n *\n * Type:     function\n * Name:     set_default_section\n * Purpose:\n *\n * @param array\n *     $p_params[name] The Name of the section to be set\n *     $p_params[number] The Number of the section to be set\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_set_default_section($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    $campsite->section = $campsite->default_section;\n} // fn smarty_function_set_default_section\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.set_default_topic.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite set_default_topic function plugin\n *\n * Type:     function\n * Name:     set_default_topic\n * Purpose:\n *\n * @param array\n *     $p_params[name] The Name of the topic to be set\n *     $p_params[identifier] The Identifier of the topic to be set\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_set_default_topic($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    $campsite->topic = $campsite->default_topic;\n} // fn smarty_function_set_default_topic\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.set_http_response_code.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Set http response code\n *\n * @param array $params\n * @param object $smarty\n * @return void\n */\nfunction smarty_function_set_http_response_code($params, $smarty)\n{\n    if (!isset($params['code']) || !is_numeric($params['code'])) {\n        return;\n    }\n\n    $front = Zend_Controller_Front::getInstance();\n    $front->getResponse()->setHttpResponseCode((int) $params['code']);\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.set_issue.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite set_issue function plugin\n *\n * Type:     function\n * Name:     set_issue\n * Purpose:\n *\n * @param array\n *     $p_params The number of the issue to be set\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_set_issue($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    if (isset($p_params['number'])) {\n    \t$issueNumber = intval($p_params['number']);\n    } else {\n    \t$property = array_shift(array_keys($p_params));\n        CampTemplate::singleton()->trigger_error(\"invalid parameter '$property' in set_issue\");\n    \treturn false;\n    }\n\n    if ($campsite->issue->defined\n            && $campsite->issue->number == $issueNumber) {\n        return;\n    }\n\n    $issueObj = new MetaIssue($campsite->publication->identifier,\n                              $campsite->language->number, $issueNumber);\n    if ($issueObj->defined) {\n        $campsite->issue = $issueObj;\n    } else {\n    \t$campsite->issue->trigger_invalid_value_error('number', $p_params['number'], $p_smarty);\n    }\n} // fn smarty_function_set_issue\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.set_language.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite set_language function plugin\n *\n * Type:     function\n * Name:     set_language\n * Purpose:\n *\n * @param array\n *     $p_params The English name of the language to be set\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_set_language($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    if (isset($p_params['name'])) {\n    \t$languageName = $p_params['name'];\n    } else {\n    \t$property = array_shift(array_keys($p_params));\n        CampTemplate::singleton()->trigger_error(\"invalid parameter '$property' in set_language\");\n    \treturn false;\n    }\n\n    if ($campsite->language->defined\n            && $campsite->language->english_name == $languageName) {\n        return;\n    }\n\n    $languages = Language::GetLanguages(null, null, $languageName);\n    if (empty($languages)) {\n    \t$campsite->language->trigger_invalid_value_error('name', $languageName, $p_smarty);\n    \treturn false;\n    }\n    $campsite->language = new MetaLanguage($languages[0]->getLanguageId());\n} // fn smarty_function_set_language\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.set_map.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Auxiliar function for parsing area map constraints\n *\n * @param string\n *     $p_areaSpec The area(s) constraint\n * @param array\n *     $p_areaCons The array with parsed area constraints\n */\nfunction aux_parser_set_map_area($p_areaSpec, &$p_areaCons)\n{\n    $area_val = strtolower(str_replace('\"', '\"\"', trim($p_areaSpec)));\n    $area_val_tmp = explode(' ', $area_val);\n    $area_val_arr = array();\n    foreach ($area_val_tmp as $area_part) {\n        $area_part = strtolower(trim($area_part));\n        if (0 < strlen($area_part)) {\n            $area_val_arr[] = $area_part;\n        }\n    }\n\n    $parsed_polygon_name = '';\n    $parsed_polygon_values = array();\n    $inside_area = false;\n\n    $known_area_types = array('rectangle' => true, 'polygon' => true);\n    $cur_corner = array('latitude' => '', 'longitude' => '');\n    $cur_corner_stage = 'latitude';\n\n    foreach ($area_val_arr as $area_token) {\n        $area_token = trim($area_token, ',;:');\n        if (array_key_exists($area_token, $known_area_types)) {\n            if ($inside_area) {\n                $p_areaCons[] = array($parsed_polygon_name => $parsed_polygon_values);\n            }\n            $inside_area = true;\n            $parsed_polygon_values = array();\n            $parsed_polygon_name = $area_token;\n            $cur_corner_stage = 'latitude';\n            continue;\n        }\n        if (!$inside_area) {break;} // wrong area spec.\n\n        $cur_corner[$cur_corner_stage] = $area_token;\n        if ('latitude' == $cur_corner_stage) {\n            $cur_corner_stage = 'longitude';\n        }\n        else {\n            $cur_corner_stage = 'latitude';\n            $parsed_polygon_values[] = $cur_corner;\n        }\n    }\n\n    if ($inside_area) {\n        $p_areaCons[] = array($parsed_polygon_name => $parsed_polygon_values);\n    }\n\n} // fn aux_parser_set_map_area\n\n/**\n * Campsite set_map function plugin\n *\n * Type:     function\n * Name:     set_map\n * Purpose:\n *\n * @param array\n *     $p_params the map constarints set at the template\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_set_map($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n    $run_article = ($campsite->article->defined) ? $campsite->article : null;\n    $run_language = $campsite->language;\n    $run_topic = ($campsite->topic->defined) ? $campsite->topic : null;\n\n    $parameters = array();\n    $running = '_current';\n    $of_article = '_article';\n\n    $map_label = '';\n    $map_max_points = 0;\n\n    $con_article_types = array();\n    $con_authors = array();\n    $con_articles = array();\n    $con_issues_num = array();\n    $con_sections_num = array();\n    $con_sections_str = array();\n    $con_topics = array();\n    $con_match_all_topics = array();\n    $con_has_multimedia = array();\n    $con_start_date = array();\n    $con_end_date = array();\n    $con_date = array();\n    $con_areas = array();\n    $con_match_any_area = array();\n    $con_exact_area = array();\n    $con_icons = array();\n\n    if (isset($p_params['label'])) {\n        $map_label = trim('' . $p_params['label']);\n    }\n    if (isset($p_params['max_points'])) {\n        $map_max_points = trim('' . $p_params['max_points']);\n        if (!is_numeric($map_max_points)) { $map_max_points = 0; }\n        $map_max_points = 0 + $map_max_points;\n    }\n    $campsite->map_dynamic_max_points = $map_max_points;\n\n    if (isset($p_params['article_types'])) {\n        foreach (explode(',', $p_params['article_types']) as $one_article_type) {\n            $one_article_type = trim('' . $one_article_type);\n            if (0 < strlen($one_article_type)) {\n                if ($of_article == $one_article_type) {\n                    if ($run_article) {\n                        $con_article_types[] = $run_article->type_name;\n                    }\n                }\n                else {\n                    $con_article_types[] = $one_article_type;\n                }\n            }\n        }\n    }\n\n    if (isset($p_params['authors'])) {\n        foreach (explode(',', $p_params['authors']) as $one_author) {\n            $one_author = trim('' . $one_author);\n            if (0 < strlen($one_author)) {\n                if ($of_article == $one_author) {\n                    if ($run_article) {\n                        $run_authors = $run_article->authors;\n                        foreach ($run_authors as $art_author) {\n                            $con_authors[] = $art_author->name;\n                        }\n                    }\n                }\n                else {\n                    $con_authors[] = $one_author;\n                }\n            }\n        }\n    }\n\n    if (isset($p_params['articles'])) {\n        foreach (explode(',', '' . $p_params['articles']) as $one_article) {\n            $one_article = trim('' . $one_article);\n            if (is_numeric($one_article)) {\n                $con_articles[] = $one_article;\n            }\n        }\n    }\n\n    if (isset($p_params['issues'])) {\n        foreach (explode(',', $p_params['issues']) as $one_issue) {\n            $one_issue = trim('' . $one_issue);\n            if ($running == $one_issue) {\n                if ($run_article) {\n                    $run_issue = $run_article->issue;\n                    if ($run_issue) {\n                        $con_issues_num[] = $run_issue->number;\n                    }\n                }\n            }\n            else {\n                if (is_numeric($one_issue)) {\n                    $con_issues_num[] = $one_issue;\n                }\n            }\n        }\n    }\n\n    if (isset($p_params['sections'])) {\n        foreach (explode(',', $p_params['sections']) as $one_section) {\n            $one_section = trim('' . $one_section);\n            if ($running == $one_section) {\n                if ($run_article) {\n                    $run_section = $run_article->section;\n                    if ($run_section) {\n                        $con_sections_num[] = $run_section->number;\n                    }\n                }\n            }\n            elseif (is_numeric($one_section)) {\n                $con_sections_num[] = $one_section;\n            }\n            elseif (0 < strlen($one_section)) {\n                $one_section = trim($one_section);\n                $con_sections_str[] = $one_section;\n            }\n        }\n    }\n\n    if (isset($p_params['topics'])) {\n        foreach (explode(',', $p_params['topics']) as $one_topic) {\n            $one_topic = trim('' . $one_topic);\n            if (0 < strlen($one_topic)) {\n                if ($of_article == $one_topic) {\n                    if ($run_article) {\n                        $run_topics = $run_article->topics;\n                        foreach ($run_topics as $art_topic) {\n                            $con_topics[] = $art_topic . ':' . $run_language->code;\n                        }\n                    }\n                }\n                elseif ($running == $one_topic) {\n                    if ($run_topic) {\n                        $cur_topic = $run_topic->name;\n                        if (!empty($cur_topic)) {\n                            $con_topics[] = htmlspecialchars_decode($cur_topic);\n                        }\n                    }\n                }\n                else {\n                    $one_topic = trim($one_topic);\n                    $con_topics[] = $one_topic;\n                }\n            }\n        }\n    }\n\n    $values_known_yes = array('true' => true, 'yes' => true);\n    $values_known_no = array('false' => true, 'no' => true);\n\n    if (isset($p_params['match_all_topics'])) {\n        $match_all_topics_val = $p_params['match_all_topics'];\n        if (is_bool($match_all_topics_val)) {\n            $con_match_all_topics[0] = $match_all_topics_val;\n        }\n        elseif (is_string($match_all_topics_val)) {\n            $match_all_topics_val = trim(strtolower($match_all_topics_val));\n            if (array_key_exists($match_all_topics_val, $values_known_yes)) {$con_match_all_topics[0] = true;}\n            if (array_key_exists($match_all_topics_val, $values_known_no)) {$con_match_all_topics[0] = false;}\n        }\n    }\n\n    if (isset($p_params['match_any_topic'])) {\n        $match_any_topic_val = $p_params['match_any_topic'];\n        if (is_bool($match_any_topic_val)) {\n            $con_match_all_topics[0] = !$match_any_topic_val;\n        }\n        elseif (is_string($match_any_topic_val)) {\n            $match_any_topic_val = trim(strtolower($match_any_topic_val));\n            if (array_key_exists($match_any_topic_val, $values_known_yes)) {$con_match_all_topics[0] = false;}\n            if (array_key_exists($match_any_topic_val, $values_known_no)) {$con_match_all_topics[0] = true;}\n        }\n    }\n\n    if (isset($p_params['has_multimedia'])) {\n        $has_multimedia_val = $p_params['has_multimedia'];\n        if (is_bool($has_multimedia_val)) {\n            if ($has_multimedia_val) {\n                $con_has_multimedia[0] = 'any';\n            }\n            else {\n                $con_has_multimedia = array();\n            }\n        }\n        elseif (is_string($has_multimedia_val)) {\n            $has_multimedia_val = trim(strtolower($has_multimedia_val));\n            if (array_key_exists($has_multimedia_val, $values_known_yes)) {$con_has_multimedia[0] = 'any';}\n            if (array_key_exists($has_multimedia_val, $values_known_no)) {$con_has_multimedia = array();}\n            if ('video' == $has_multimedia_val) {$con_has_multimedia[0] = 'video';};\n            if ('image' == $has_multimedia_val) {$con_has_multimedia[0] = 'image';};\n        }\n    }\n\n    if (isset($p_params['start_date'])) {\n        $start_date_val = trim($p_params['start_date']);\n        $start_date_val = str_replace('\"', '\"\"', trim($start_date_val));\n        if (0 < strlen($start_date_val)) {\n            $con_start_date[0] = $start_date_val;\n        }\n    }\n\n    if (isset($p_params['end_date'])) {\n        $end_date_val = trim($p_params['end_date']);\n        $end_date_val = str_replace('\"', '\"\"', trim($end_date_val));\n        if (0 < strlen($end_date_val)) {\n            $con_end_date[0] = $end_date_val;\n        }\n    }\n\n    if (isset($p_params['date'])) {\n        $date_val = trim($p_params['date']);\n        $date_val = str_replace('\"', '\"\"', trim($date_val));\n        if (0 < strlen($date_val)) {\n            $con_date[0] = $date_val;\n        }\n    }\n\n    if (isset($p_params['area'])) {\n        $area_val = trim($p_params['area']);\n\n        if (0 < strlen($area_val)) {\n            aux_parser_set_map_area($area_val, $con_areas);\n        }\n\n    }\n\n    if (isset($p_params['areas'])) {\n        $area_val = trim($p_params['areas']);\n\n        if (0 < strlen($area_val)) {\n            aux_parser_set_map_area($area_val, $con_areas);\n        }\n\n    }\n\n    if (isset($p_params['area_match'])) {\n\n        $area_match_val = $p_params['area_match'];\n        if (is_string($area_match_val)) {\n            $area_match_val = strtolower($area_match_val);\n            if ('intersection' == $area_match_val) {$con_match_any_area[0] = false;}\n            if ('union' == $area_match_val) {$con_match_any_area[0] = true;}\n        }\n    }\n\n    if (isset($p_params['area_exact'])) {\n\n        $area_exact_val = $p_params['area_exact'];\n        if (is_string($area_exact_val)) {\n            $area_exact_val = strtolower($area_exact_val);\n            if ('false' == $area_exact_val) {$con_exact_area[0] = false;}\n            if ('true' == $area_exact_val) {$con_exact_area[0] = true;}\n        }\n        else {\n            if ($area_exact_val) {$con_exact_area[0] = true;}\n            else {$con_exact_area[0] = false;}\n        }\n    }\n\n    if (isset($p_params['icons'])) {\n        $icons_val = trim($p_params['icons']);\n        foreach (explode(',', $icons_val) as $cur_icon) {\n            $cur_icon = str_replace('\"', '\"\"', trim($cur_icon));\n            if (0 < strlen($cur_icon)) {\n                $con_icons[] = $cur_icon;\n            }\n        }\n    }\n\n    // to put the read constraints into parameters list\n\n    foreach ($con_article_types as $one_article_type) {\n        $leftOperand = 'article_type';\n        $rightOperand = $one_article_type;\n        $operator = new Operator('is', 'sql');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $parameters[] = $constraint;\n    }\n\n    foreach ($con_authors as $one_author) {\n        $leftOperand = 'author';\n        $rightOperand = $one_author;\n        $operator = new Operator('is', 'sql');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $parameters[] = $constraint;\n    }\n\n    foreach ($con_articles as $one_article) {\n        $leftOperand = 'article';\n        $rightOperand = $one_article;\n        $operator = new Operator('is', 'sql');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $parameters[] = $constraint;\n    }\n\n    foreach ($con_issues_num as $one_issue) {\n        $leftOperand = 'issue';\n        $rightOperand = $one_issue;\n        $operator = new Operator('is', 'sql');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $parameters[] = $constraint;\n    }\n\n    foreach ($con_sections_num as $one_section) {\n        $leftOperand = 'section';\n        $rightOperand = $one_section;\n        $operator = new Operator('is', 'sql');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $parameters[] = $constraint;\n    }\n\n    foreach ($con_sections_str as $one_section) {\n        $leftOperand = 'section_name';\n        $rightOperand = $one_section;\n        $operator = new Operator('is', 'sql');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $parameters[] = $constraint;\n    }\n\n    foreach ($con_topics as $one_topic) {\n        $leftOperand = 'topic_name';\n        $rightOperand = $one_topic;\n        $operator = new Operator('is', 'sql');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $parameters[] = $constraint;\n    }\n\n    if (1 == count($con_match_all_topics)) {\n        $leftOperand = 'matchalltopics';\n        $rightOperand = $con_match_all_topics[0];\n        $operator = new Operator('is', 'sql');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $parameters[] = $constraint;\n    }\n\n    foreach ($con_has_multimedia as $one_multimedia) {\n        $leftOperand = 'multimedia';\n        $rightOperand = $one_multimedia;\n        $operator = new Operator('is', 'php');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $parameters[] = $constraint;\n    }\n\n    if (0 < count($con_start_date)) {\n        $leftOperand = 'date';\n        $rightOperand = $con_start_date;\n        $operator = new Operator('greater_equal', 'sql');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $parameters[] = $constraint;\n    }\n\n    if (0 < count($con_end_date)) {\n        $leftOperand = 'date';\n        $rightOperand = $con_end_date;\n        $operator = new Operator('smaller_equal', 'sql');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $parameters[] = $constraint;\n    }\n\n    if (0 < count($con_date)) {\n        $leftOperand = 'date';\n        $rightOperand = $con_date;\n        $operator = new Operator('is', 'sql');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $parameters[] = $constraint;\n    }\n\n    foreach ($con_areas as $one_area) {\n        $leftOperand = 'area';\n        $rightOperand = json_encode($one_area);\n        $operator = new Operator('is', 'php');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $parameters[] = $constraint;\n    }\n\n    if (0 < count($con_match_any_area)) {\n        $leftOperand = 'matchanyarea';\n        $rightOperand = $con_match_any_area[0];\n        $operator = new Operator('is', 'sql');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $parameters[] = $constraint;\n    }\n\n    if (0 < count($con_exact_area)) {\n        $leftOperand = 'exactarea';\n        $rightOperand = $con_exact_area[0];\n        $operator = new Operator('is', 'sql');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $parameters[] = $constraint;\n    }\n\n    foreach ($con_icons as $one_icon) {\n        $leftOperand = 'icon';\n        $rightOperand = $one_icon;\n        $operator = new Operator('is', 'sql');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $parameters[] = $constraint;\n    }\n\n    // publication id has to be set for all multi-maps\n    {\n        $run_publicationId = 0;\n        if (CampTemplate::singleton()) {\n            $Context = CampTemplate::singleton()->context();\n            if ($Context->publication) {\n                $run_publicationId = $Context->publication->identifier;\n            }\n        }\n\n        $leftOperand = 'publication';\n        $rightOperand = $run_publicationId;\n        $operator = new Operator('is', 'sql');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $parameters[] = $constraint;\n\n    }\n\n    $campsite->map_dynamic_constraints = $parameters;\n    if (!empty($con_areas)) {\n        $campsite->map_dynamic_areas = json_encode($con_areas);\n    }\n    else {\n        $campsite->map_dynamic_areas = null;\n    }\n    $campsite->map_dynamic_map_label = $map_label;\n\n    // to retrieve the points for next usage\n    {\n\n        $leftOperand = 'as_array';\n        $rightOperand = true;\n        $operator = new Operator('is', 'php');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $parameters[] = $constraint;\n\n        $leftOperand = 'active_only';\n        $rightOperand = true;\n        $operator = new Operator('is', 'php');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $parameters[] = $constraint;\n\n        $leftOperand = 'text_only';\n        $rightOperand = false;\n        $operator = new Operator('is', 'php');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $parameters[] = $constraint;\n\n        $leftOperand = 'language';\n        $rightOperand = (int) $run_language->number;\n        $operator = new Operator('is', 'php');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $parameters[] = $constraint;\n\n        $leftOperand = 'constrained';\n        $rightOperand = true;\n        $operator = new Operator('is', 'php');\n        $constraint = new ComparisonOperation($leftOperand, $operator, $rightOperand);\n        $parameters[] = $constraint;\n\n        $poi_count = 0;\n        $poi_array = array();\n        $poi_objects = Geo_MapLocation::GetListExt($parameters, array(), 0, $map_max_points, $poi_count, false, $poi_array);\n\n        $campsite->map_dynamic_tot_points = $poi_count;\n\n        $map_art_ids = array();\n        $art_backlinks = array();\n        $meta_art_objs = array();\n\n        $arts_per_pois = array();\n\n        $poi_retrieved_count = count($poi_array);\n        for ($poi_idx = 0; $poi_idx < $poi_retrieved_count; $poi_idx++) {\n            $poi_arts = array();\n\n            $articleNos = $poi_array[$poi_idx]['art_numbers'];\n            if (0 < strlen($articleNos)) {\n                foreach (explode(',', $articleNos) as $one_art) {\n                    $one_art = trim($one_art);\n                    if (0 == strlen($one_art)) {continue;}\n                    if (!is_numeric($one_art)) {continue;}\n                    $one_art = 0 + $one_art;\n\n                    $poi_arts[] = $one_art;\n                    $map_art_ids[$one_art] = true;\n                }\n            }\n\n            if (0 == count($poi_arts)) {\n                $articleNo = $poi_array[$poi_idx]['art_number'];\n                if (is_numeric($articleNo)) {\n                    $articleNo = 0 + $articleNo;\n                    if (0 < $articleNo) {\n                        $poi_arts[] = $articleNo;\n                        $map_art_ids[$articleNo] = true;\n                    }\n                }\n            }\n            $arts_per_pois[] = $poi_arts;\n\n        }\n\n        foreach ($map_art_ids as $one_art_id => $one_art_aux) {\n            $myArticle = new MetaArticle((int) $run_language->number, $one_art_id);\n            $meta_art_objs[$one_art_id] = $myArticle;\n            $url = CampSite::GetURIInstance();\n            $url->publication = $myArticle->publication;\n            $url->issue = $myArticle->issue;\n            $url->section = $myArticle->section;\n            $url->article = $myArticle;\n            $articleURI = $url->getURI('article');\n            $article_name = $myArticle->name;\n\n            $art_backlinks[$one_art_id] = array('link' => $articleURI, 'label' => $article_name);\n        }\n        krsort($meta_art_objs);\n\n        for ($poi_idx = 0; $poi_idx < $poi_retrieved_count; $poi_idx++) {\n            $curr_back_list = array();\n\n            $curr_art_ids = $arts_per_pois[$poi_idx];\n            foreach ($curr_art_ids as $one_art_id) {\n                $curr_back_list[] = $art_backlinks[$one_art_id];\n            }\n            if (0 < count($curr_back_list)) {\n                $poi_array[$poi_idx]['backlinks'] = $curr_back_list;\n            }\n\n        }\n\n\n        $campsite->map_dynamic_points_raw = $poi_array;\n        $campsite->map_dynamic_points_objects = $poi_objects;\n        $campsite->map_dynamic_meta_article_objects = $meta_art_objs;\n\n        $campsite->map_dynamic_id_counter += 1;\n\n    }\n\n} // fn smarty_function_set_map\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.set_placeholder.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Sets placeholder in templates\n *\n * Type:     function\n * Name:     set_placeholder\n * Purpose:  Sets placeholders\n *\n * @param array\n *     $params Parameters\n * @param object\n *     $smarty The Smarty object\n */\nfunction smarty_function_set_placeholder($params, &$smarty)\n{\n    $placeholdersService = \\Zend_Registry::get('container')->get('newscoop.placeholders.service');\n\n    foreach ($params as $key => $value) {\n        $placeholdersService->set($key, $value);\n    }\n}\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.set_publication.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite set_publication function plugin\n *\n * Type:     function\n * Name:     set_publication\n * Purpose:\n *\n * @param array\n *     $p_params[name] The Name of the publication to be set\n *     $p_params[identifier] The Identifier of the publication to be set\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_set_publication($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    if (isset($p_params['identifier'])) {\n    \t$attrName = 'identifier';\n    \t$attrValue = $p_params['identifier'];\n        $publicationId = intval($p_params['identifier']);\n    } elseif (isset($p_params['name'])) {\n    \t$attrName = 'name';\n    \t$attrValue = $p_params['name'];\n    \t$publications = Publication::GetPublications($p_params['name']);\n        if (!empty($publications)) {\n            $publicationId = $publications[0]->getPublicationId();\n        } else {\n\t    \t$campsite->publication->trigger_invalid_value_error($attrName, $attrValue, $p_smarty);\n        \treturn false;\n        }\n    } elseif (isset($p_params['alias'])) {\n        $aliasObj = new Alias($p_params['alias']);\n\n        if (!$aliasObj->exists()) {\n            $campsite->publication->trigger_invalid_value_error($attrName, $attrValue, $p_smarty);\n            return false;\n        }\n\n        $publicationId = $aliasObj->getPublicationId();\n    } else {\n    \t$property = array_shift(array_keys($p_params));\n        CampTemplate::singleton()->trigger_error(\"invalid parameter '$property' in set_publication\");\n    \treturn false;\n    }\n\n    if ($campsite->publication->defined\n            && $campsite->publication->identifier == $publicationId) {\n        return;\n    }\n\n    $publicationObj = new MetaPublication($publicationId);\n    if ($publicationObj->defined) {\n        $campsite->publication = $publicationObj;\n    } else {\n    \t$campsite->publication->trigger_invalid_value_error($attrName, $attrValue, $p_smarty);\n    }\n} // fn smarty_function_set_publication\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.set_section.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite set_section function plugin\n *\n * Type:     function\n * Name:     set_section\n * Purpose:\n *\n * @param array\n *     $p_params[name] The Name of the section to be set\n *     $p_params[number] The Number of the section to be set\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_set_section($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    if (isset($p_params['number'])) {\n    \t$attrName = 'number';\n        $attrValue = $p_params['number'];\n        $sectionNumber = intval($p_params['number']);\n    } elseif (isset($p_params['name'])) {\n    \t$sections = Section::GetSections($campsite->publication->identifier,\n    \t\t\t\t\t\t\t\t\t $campsite->issue->number,\n    \t\t\t\t\t\t\t\t\t $campsite->language->number,\n    \t\t\t\t\t\t\t\t\t null,\n    \t\t\t\t\t\t\t\t\t $p_params['name']);\n        if (isset($sections[0])) {\n        \t$attrName = 'name';\n        \t$attrValue = $p_params['name'];\n            $sectionNumber = intval($sections[0]->getSectionNumber());\n        } else {\n\t    \t$campsite->section->trigger_invalid_value_error($attrName, $attrValue, $p_smarty);\n        \treturn false;\n        }\n    } else {\n    \t$property = array_shift(array_keys($p_params));\n        CampTemplate::singleton()->trigger_error(\"invalid parameter '$property' in set_section\");\n    \treturn false;\n    }\n\n    if ($campsite->section->defined\n            && $campsite->section->number == $sectionNumber) {\n        return;\n    }\n\n    $sectionObj = new MetaSection($campsite->publication->identifier,\n\t\t\t\t\t\t\t\t  $campsite->issue->number,\n\t\t\t\t\t\t\t\t  $campsite->language->number,\n\t\t\t\t\t\t\t\t  $sectionNumber);\n    if ($sectionObj->defined) {\n        $campsite->section = $sectionObj;\n    }\n} // fn smarty_function_set_section\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.set_topic.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite set_topic function plugin\n *\n * Type:     function\n * Name:     set_topic\n * Purpose:\n *\n * @param array\n *     $p_params[name] The Name of the topic to be set\n *     $p_params[identifier] The Identifier of the topic to be set\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_set_topic($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    if (isset($p_params['identifier'])) {\n        $attrName = 'identifier';\n        $attrValue = $p_params['identifier'];\n        $topicId = intval($p_params['identifier']);\n    } elseif (isset($p_params['name'])) {\n        $attrName = 'name';\n        $attrValue = $p_params['name'];\n        $topicService = \\Zend_Registry::get('container')->getService('topic');\n        $topic = $topicService->getTopicBy($attrValue, $campsite->language->code);\n        if (!$topic) {\n            $campsite->topic->trigger_invalid_value_error($attrName, $attrValue, $p_smarty);\n\n            return false;\n        }\n\n        $topicId = $topic->getId();\n    } else {\n        $property = array_shift(array_keys($p_params));\n        CampTemplate::singleton()->trigger_error(\"invalid parameter '$property' in set_topic\");\n\n        return false;\n    }\n\n    if ($campsite->topic->defined\n            && $campsite->topic->identifier == $topicId) {\n        return;\n    }\n\n    $topicObj = new MetaTopic($topicId);\n    if ($topicObj->defined) {\n        $campsite->topic = $topicObj;\n    } else {\n        $campsite->topic->trigger_invalid_value_error($attrName, $attrValue, $p_smarty);\n    }\n} // fn smarty_function_set_topic\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.unset_article.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite unset_article function plugin\n *\n * Type:     function\n * Name:     unset_article\n * Purpose:\n *\n * @param empty\n *     $p_params\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_unset_article($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n    if (!is_object($campsite->article) || !$campsite->article->defined) {\n        return;\n    }\n\n    $campsite->article = new MetaArticle();\n} // fn smarty_function_unset_article\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.unset_comment.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite unset_article_comment function plugin\n *\n * Type:     function\n * Name:     unset_article_comment\n * Purpose:\n *\n * @param empty\n *     $p_params\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_unset_comment($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n    if (!is_object($campsite->comment)\n            || !$campsite->comment->defined) {\n        return;\n    }\n\n    $campsite->comment = new MetaComment();\n\n} // fn smarty_function_unset_article_comment\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.unset_issue.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite unset_issue function plugin\n *\n * Type:     function\n * Name:     unset_issue\n * Purpose:  \n *\n * @param empty\n *     $p_params\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_unset_issue($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n    if (!is_object($campsite->issue) || !$campsite->issue->defined) {\n        return;\n    }\n\n    $campsite->issue = new MetaIssue();\n\n} // fn smarty_function_unset_issue\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.unset_language.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite unset_language function plugin\n *\n * Type:     function\n * Name:     unset_language\n * Purpose:  \n *\n * @param empty\n *     $p_params\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_unset_language($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    if (!is_object($campsite->language) || !$campsite->language->defined) {\n        return;\n    }\n\n    $campsite->language = new MetaLanguage();\n\n} // fn smarty_function_unset_language\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.unset_map.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite unset_map function plugin\n *\n * Type:     function\n * Name:     unset_map\n * Purpose:\n *\n * @param empty\n *     $p_params\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_unset_map($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n\n    $campsite->map_dynamic_constraints = null;\n    $campsite->map_dynamic_areas = null;\n    $campsite->map_dynamic_max_points = 0;\n    $campsite->map_dynamic_tot_points = 0;\n    $campsite->map_dynamic_points_raw = null;\n    $campsite->map_dynamic_points_objects = null;\n    $campsite->map_dynamic_meta_article_objects = null;\n    $campsite->map_dynamic_map_label = \"\";\n} // fn smarty_function_unset_map\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.unset_publication.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite unset_publication function plugin\n *\n * Type:     function\n * Name:     unset_publication\n * Purpose:  \n *\n * @param empty\n *     $p_params\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_unset_publication($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n    if (!is_object($campsite->publication) || !$campsite->publication->defined) {\n        return;\n    }\n\n    $campsite->publication = new MetaPublication();\n\n} // fn smarty_function_unset_publication\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.unset_section.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite unset_section function plugin\n *\n * Type:     function\n * Name:     unset_section\n * Purpose:  \n *\n * @param empty\n *     $p_params\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_unset_section($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n    if (!is_object($campsite->section) || !$campsite->section->defined) {\n        return;\n    }\n\n    $campsite->section = new MetaSection();\n\n} // fn smarty_function_unset_section\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.unset_topic.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite unset_topic function plugin\n *\n * Type:     function\n * Name:     unset_topic\n * Purpose:\n *\n * @param empty\n *     $p_params\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_unset_topic($p_params, &$p_smarty)\n{\n    // gets the context variable\n    $campsite = $p_smarty->getTemplateVars('gimme');\n    if (!is_object($campsite->topic) || !$campsite->topic->defined) {\n        return;\n    }\n\n    $campsite->topic = new MetaTopic();\n\n} // fn smarty_function_unset_topic\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.uri.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite uri function plugin\n *\n * Type:     function\n * Name:     uri\n * Purpose:\n *\n * @param array $p_params\n *\n * @return string $uriString\n *      The requested URI\n */\nif (!function_exists('smarty_function_uri'))\n{\n    function smarty_function_uri($p_params, &$p_smarty)\n    {\n        $context = $p_smarty->getTemplateVars('gimme');\n\n        if (!isset($p_params['options'])) {\n            $p_params['options'] = '';\n        }\n\n        $url = 'url';\n        if (isset($p_params['static_file']) && !empty($p_params['static_file'])) {\n        \t$p_params['options'] = 'static_file ' . $p_params['static_file'];\n        } else {\n        \t$params = preg_split(\"/[\\s]+/\", $p_params['options']);\n        \tforeach ($params as $index=>$param) {\n        \t\tif (strcasecmp('fromstart', $param) == 0) {\n        \t\t\t$url = 'default_url';\n        \t\t\tunset($params[$index]);\n        \t\t\t$p_params['options'] = implode(', ', $params);\n        \t\t\tbreak;\n        \t\t}\n        \t}\n        }\n\n        if ($p_params['options'] === 'author') {\n            $view = $p_smarty->getTemplateVars('view');\n            return $view->url(array('author' => $context->author->name), 'author');\n        }\n\n        if ($p_params['options'] === 'topic') {\n            $view = $p_smarty->getTemplateVars('view');\n            return $view->url(array('id' => $context->topic->identifier, 'language' => $context->language->code, 'topicName' => $context->topic->name), 'topic');\n        }\n\n        // sets the URL parameter option\n        $context->$url->uri_parameter = $p_params['options'];\n\n        return $context->$url->uri;\n    } // fn smarty_function_uri\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.uripath.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite uripath function plugin\n *\n * Type: function\n * Name: uripath\n * Purpose:\n *\n * @param array $p_params\n * @param object $p_smarty\n *      The Smarty object\n *\n * @return string $uriString\n *      The URI path\n */\nfunction smarty_function_uripath($p_params, &$p_smarty)\n{\n    $context = $p_smarty->getTemplateVars('gimme');\n\n    $url = 'url';\n    $params = preg_split(\"/[\\s]+/\", $p_params['options']);\n    foreach ($params as $index=>$param) {\n        if (strcasecmp('fromstart', $param) == 0) {\n            $url = 'default_url';\n            unset($params[$index]);\n            $p_params['options'] = implode(', ', $params);\n            break;\n        }\n    }\n\n    // sets the URL parameter option\n    $context->$url->uri_parameter = $p_params['options'];\n\n    return $context->$url->uri_path;\n} // fn smarty_function_uripath\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.url.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\nrequire_once dirname(__FILE__) . '/function.uri.php';\n\n/**\n * Campsite url function plugin\n *\n * Type:     function\n * Name:     url\n * Purpose:\n *\n * @param array $p_params\n * @param object $p_smarty\n *      The Smarty object\n *\n * @return string $urlString\n *      The full URL string\n */\nfunction smarty_function_url($p_params, &$p_smarty)\n{\n    $context = $p_smarty->getTemplateVars('gimme');\n    $validValues = array('true', 'false', 'http', 'https');\n\n    if (isset($p_params['useprotocol']) && in_array($p_params['useprotocol'], $validValues)) {\n        $useprotocol = $p_params['useprotocol'];\n    } else {\n        $useprotocol = $p_smarty->useprotocol;\n    }\n\n    switch ($useprotocol) {\n        case 'true':\n                $urlString = $context->url->base;\n            break;\n        case 'false':\n                $urlString = $context->url->base_relative;\n            break;\n        case 'http':\n                $urlString = 'http:'. $context->url->base_relative;\n            break;\n        case 'https':\n                $urlString = 'https:'. $context->url->base_relative;\n            break;\n    }\n\n    // appends the URI path and query values to the base\n    $urlString .= smarty_function_uri($p_params, $p_smarty);\n\n    return $urlString;\n} // fn smarty_function_url\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.urlparameters.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite urlparameters function plugin\n *\n * Type:     function\n * Name:     urlparameters\n * Purpose:\n *\n * @param array $p_params\n *\n * @return string $uriString\n *      The URL parameters requested\n */\nfunction smarty_function_urlparameters($p_params = array(), &$p_smarty)\n{\n    $context = $p_smarty->getTemplateVars('gimme');\n\n    if (!array_key_exists('options', $p_params)) {\n        $p_params['options'] = '';\n    }\n\n    $url = 'url';\n    $params = preg_split(\"/[\\s]+/\", $p_params['options']);\n    foreach ($params as $index=>$param) {\n        if (strcasecmp('fromstart', $param) == 0) {\n            $url = 'default_url';\n            unset($params[$index]);\n            $p_params['options'] = implode(', ', $params);\n            break;\n        }\n    }\n\n    // sets the URL parameter option\n    $context->$url->uri_parameter = $p_params['options'];\n\n    return $context->$url->url_parameters;\n} // fn smarty_function_urlparameters\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.video_player.php",
    "content": "<?php\n/**\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Get video player\n *\n * @param array $params\n * @param Smarty_Internal_Template $smarty\n * @return string\n */\nfunction smarty_function_video_player(array $params, Smarty_Internal_Template $smarty)\n{\n    if (!array_key_exists('video', $params)) {\n        throw new InvalidArgumentException(\"Video not set\");\n    }\n\n    $code = array_pop(explode('/', trim($params['video']->url, '/')));\n    if (is_numeric($code)) {\n        return sprintf('<iframe src=\"http://player.vimeo.com/video/%d?portrait=0&amp;color=ffffff\" width=\"%d\" height=\"%d\" frameborder=\"0\" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>',\n            $code, $params['video']->width, $params['video']->height);\n    } else {\n        return sprintf('<iframe width=\"%d\" height=\"%d\" src=\"http://www.youtube.com/embed/%s?rel=0\" frameborder=\"0\" allowfullscreen></iframe>',\n            $params['video']->width, $params['video']->height, $code);\n\n    }\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/function.wrap_in_element.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Wrap a string in a html-element, if the string doesnt start with this element.\n *\n * Type:     function\n * Name:     wrap_in_element\n * Purpose:\n *\n * @param array\n *     $p_params[string]     The text to wrap\n *     $p_params[element]    The element to use when wrapping\n *     $p_params[attributes] Optional attributes for the element\n * @param object\n *     $p_smarty The Smarty object\n */\nfunction smarty_function_wrap_in_element(array $p_params, &$p_smarty)\n{\n    $elementAttributes = '';\n    $wrappableString = $p_params['string'];\n    $wrapElement = $p_params['element'];\n    if (array_key_exists('attributes', $p_params)) {\n        $elementAttributes = ' '.$p_params['attributes'];\n    }\n    $pattern = '/^\\<'.$wrapElement.'\\>/';\n\n    if (preg_match($pattern, $wrappableString)) {\n        return $wrappableString;\n    } else {\n        return sprintf('<%s%s>%s</%s>', $wrapElement, $elementAttributes, $wrappableString, $wrapElement);\n    }\n} // fn smarty_function_wrap_in_element\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/modifier.bbcode.php",
    "content": "<?php\n/*\n * Smarty plugin\n * ------------------------------------------------------------\n * Type:       modifier\n * Name:       bbcode2html\n * Purpose:    Converts BBCode style tags to HTML\n * Author:     Andre Rabold\n * Version:    1.4\n * Remarks:    Notice that this function does not check for\n *             correct syntax. Try not to use it with invalid\n *             BBCode because this could lead to unexpected\n *             results ;-)\n *             It seems that this function ignores manual \n *             line breaks. IMO this can be fixed by adding \n *             '/\\n/' => \"<br>\" to $preg\n *\n * What's new: - Rewrote some preg expressions for more\n *               stability.\n *             - renamed CSS classes to be more generic. (Example\n *               CSS file attached.)\n *             - Support for escaped tags. Add a backslash\n *               infront of a tag if you don't want to transform\n *               it. For example: \\[b]\n *\n *             Version 1.3c\n *             - Fixed a bug with <li>...</li> tags (thanks\n *               to Rob Schultz for pointing this out)\n *\n *             Version 1.3b\n *             - Added more support for phpBB2:\n *               [list]...[/list:u] unordered lists\n *               [list]...[/list:o] ordered lists\n *             \n *             Version 1.3\n *             - added support for phpBB2 like tag identifier\n *               like [b:b6a0cef7ea]This is bold[/b:b6a0cef7ea]\n *               (thanks to Rob Schultz)\n *             - added support for quotes within the quote tag\n *               so [quote=\"foo\"]bar[/quote] does work now\n *               correctly\n *             - removed str_replace functions\n *\n *             Version 1.2\n *             - now supports CSS classes:\n *                  ng_email      (mailto links)\n *                  ng_url        (www links)\n *                  ng_quote      (quotes)\n *                  ng_quote_body (quotes)\n *                  ng_code       (source code)\n *                  ng_list       (html lists)\n *                  ng_list_item  (list items)\n *             - replaced slow ereg_replace() functions\n *             - Alterned [quote] and [code] to use CSS classes\n *               instead of HTML <blockquote />, <hr />, ... tags.\n *             - Additional BBCode tags [list] and [*] to display\n *               nice HTML lists. Example:\n *                 [list]\n *                   [*]first item\n *                   [*]second item\n *                   [*]third item\n *                 [/list]\n *               The [list] tag can have an additional parameter:\n *                 [list]   unorderer list with bullets\n *                 [list=1] ordered list 1,2,3,4,...\n *                 [list=i] ordered list i,ii,iii,iv,...\n *                 [list=I] ordered list I,II,III,IV,...\n *                 [list=a] ordered list a,b,c,d,...\n *                 [list=A] ordered list A,B,C,D,...\n *             - produces well-formed output\n *             - cleaned up the code\n * ------------------------------------------------------------\n */\nfunction smarty_modifier_bbcode($message) {\n     $preg = array(\n          '/(?<!\\\\\\\\)\\[color(?::\\w+)?=(.*?)\\](.*?)\\[\\/color(?::\\w+)?\\]/si' => \"<span style=\\\"color:\\\\1\\\">\\\\2</span>\",\n          '/(?<!\\\\\\\\)\\[size(?::\\w+)?=(.*?)\\](.*?)\\[\\/size(?::\\w+)?\\]/si' => \"<span style=\\\"font-size:\\\\1\\\">\\\\2</span>\",\n          '/(?<!\\\\\\\\)\\[font(?::\\w+)?=(.*?)\\](.*?)\\[\\/font(?::\\w+)?\\]/si' => \"<span style=\\\"font-family:\\\\1\\\">\\\\2</span>\",\n          '/(?<!\\\\\\\\)\\[align(?::\\w+)?=(.*?)\\](.*?)\\[\\/align(?::\\w+)?\\]/si' => \"<div style=\\\"text-align:\\\\1\\\">\\\\2</div>\",\n          '/(?<!\\\\\\\\)\\[b(?::\\w+)?\\](.*?)\\[\\/b(?::\\w+)?\\]/si' => \"<span style=\\\"font-weight:bold\\\">\\\\1</span>\",\n          '/(?<!\\\\\\\\)\\[i(?::\\w+)?\\](.*?)\\[\\/i(?::\\w+)?\\]/si' => \"<span style=\\\"font-style:italic\\\">\\\\1</span>\",\n          '/(?<!\\\\\\\\)\\[u(?::\\w+)?\\](.*?)\\[\\/u(?::\\w+)?\\]/si' => \"<span style=\\\"text-decoration:underline\\\">\\\\1</span>\",\n          '/(?<!\\\\\\\\)\\[center(?::\\w+)?\\](.*?)\\[\\/center(?::\\w+)?\\]/si' => \"<div style=\\\"text-align:center\\\">\\\\1</div>\",\n\n          // [code] & [php]\n          '/(?<!\\\\\\\\)\\[code(?::\\w+)?\\](.*?)\\[\\/code(?::\\w+)?\\]/si' => \"<div class=\\\"bb-code\\\">\\\\1</div>\",\n          '/(?<!\\\\\\\\)\\[php(?::\\w+)?\\](.*?)\\[\\/php(?::\\w+)?\\]/si' => \"<div class=\\\"bb-php\\\">\\\\1</div>\",\n          // [email]\n          '/(?<!\\\\\\\\)\\[email(?::\\w+)?\\](.*?)\\[\\/email(?::\\w+)?\\]/si' => \"<a href=\\\"mailto:\\\\1\\\" class=\\\"bb-email\\\">\\\\1</a>\",\n          '/(?<!\\\\\\\\)\\[email(?::\\w+)?=(.*?)\\](.*?)\\[\\/email(?::\\w+)?\\]/si' => \"<a href=\\\"mailto:\\\\1\\\" class=\\\"bb-email\\\">\\\\2</a>\",\n          // [url]\n          '/(?<!\\\\\\\\)\\[url(?::\\w+)?\\]www\\.(.*?)\\[\\/url(?::\\w+)?\\]/si' => \"<a href=\\\"http://www.\\\\1\\\" target=\\\"_blank\\\" class=\\\"bb-url\\\">\\\\1</a>\",\n          '/(?<!\\\\\\\\)\\[url(?::\\w+)?\\](.*?)\\[\\/url(?::\\w+)?\\]/si' => \"<a href=\\\"\\\\1\\\" target=\\\"_blank\\\" class=\\\"bb-url\\\">\\\\1</a>\",\n          '/(?<!\\\\\\\\)\\[url(?::\\w+)?=(.*?)?\\](.*?)\\[\\/url(?::\\w+)?\\]/si' => \"<a href=\\\"\\\\1\\\" target=\\\"_blank\\\" class=\\\"bb-url\\\">\\\\2</a>\",\n          // [img]\n          '/(?<!\\\\\\\\)\\[img(?::\\w+)?\\](.*?)\\[\\/img(?::\\w+)?\\]/si' => \"<img src=\\\"\\\\1\\\" alt=\\\"\\\\1\\\" class=\\\"bb-image\\\" />\",\n          '/(?<!\\\\\\\\)\\[img(?::\\w+)?=(.*?)x(.*?)\\](.*?)\\[\\/img(?::\\w+)?\\]/si' => \"<img width=\\\"\\\\1\\\" height=\\\"\\\\2\\\" src=\\\"\\\\3\\\" alt=\\\"\\\\3\\\" class=\\\"bb-image\\\" />\",\n          // [quote]\n          '/(?<!\\\\\\\\)\\[quote(?::\\w+)?\\](.*?)\\[\\/quote(?::\\w+)?\\]/si' => \"<div>Quote:<div class=\\\"bb-quote\\\">\\\\1</div></div>\",\n          '/(?<!\\\\\\\\)\\[quote(?::\\w+)?=(?:&quot;|\"|\\')?(.*?)[\"\\']?(?:&quot;|\"|\\')?\\](.*?)\\[\\/quote\\]/si' => \"<div>Quote \\\\1:<div class=\\\"bb-quote\\\">\\\\2</div></div>\",\n          // [list]\n          '/(?<!\\\\\\\\)(?:\\s*<br\\s*\\/?>\\s*)?\\[\\*(?::\\w+)?\\](.*?)(?=(?:\\s*<br\\s*\\/?>\\s*)?\\[\\*|(?:\\s*<br\\s*\\/?>\\s*)?\\[\\/?list)/si' => \"\\n<li class=\\\"bb-listitem\\\">\\\\1</li>\",\n          '/(?<!\\\\\\\\)(?:\\s*<br\\s*\\/?>\\s*)?\\[\\/list(:(?!u|o)\\w+)?\\](?:<br\\s*\\/?>)?/si' => \"\\n</ul>\",\n          '/(?<!\\\\\\\\)(?:\\s*<br\\s*\\/?>\\s*)?\\[\\/list:u(:\\w+)?\\](?:<br\\s*\\/?>)?/si' => \"\\n</ul>\",\n          '/(?<!\\\\\\\\)(?:\\s*<br\\s*\\/?>\\s*)?\\[\\/list:o(:\\w+)?\\](?:<br\\s*\\/?>)?/si' => \"\\n</ol>\",\n          '/(?<!\\\\\\\\)(?:\\s*<br\\s*\\/?>\\s*)?\\[list(:(?!u|o)\\w+)?\\]\\s*(?:<br\\s*\\/?>)?/si' => \"\\n<ul class=\\\"bb-list-unordered\\\">\",\n          '/(?<!\\\\\\\\)(?:\\s*<br\\s*\\/?>\\s*)?\\[list:u(:\\w+)?\\]\\s*(?:<br\\s*\\/?>)?/si' => \"\\n<ul class=\\\"bb-list-unordered\\\">\",\n          '/(?<!\\\\\\\\)(?:\\s*<br\\s*\\/?>\\s*)?\\[list:o(:\\w+)?\\]\\s*(?:<br\\s*\\/?>)?/si' => \"\\n<ol class=\\\"bb-list-ordered\\\">\",\n          '/(?<!\\\\\\\\)(?:\\s*<br\\s*\\/?>\\s*)?\\[list(?::o)?(:\\w+)?=1\\]\\s*(?:<br\\s*\\/?>)?/si' => \"\\n<ol class=\\\"bb-list-ordered,bb-list-ordered-d\\\">\",\n          '/(?<!\\\\\\\\)(?:\\s*<br\\s*\\/?>\\s*)?\\[list(?::o)?(:\\w+)?=i\\]\\s*(?:<br\\s*\\/?>)?/s' => \"\\n<ol class=\\\"bb-list-ordered,bb-list-ordered-lr\\\">\",\n          '/(?<!\\\\\\\\)(?:\\s*<br\\s*\\/?>\\s*)?\\[list(?::o)?(:\\w+)?=I\\]\\s*(?:<br\\s*\\/?>)?/s' => \"\\n<ol class=\\\"bb-list-ordered,bb-list-ordered-ur\\\">\",\n          '/(?<!\\\\\\\\)(?:\\s*<br\\s*\\/?>\\s*)?\\[list(?::o)?(:\\w+)?=a\\]\\s*(?:<br\\s*\\/?>)?/s' => \"\\n<ol class=\\\"bb-list-ordered,bb-list-ordered-la\\\">\",\n          '/(?<!\\\\\\\\)(?:\\s*<br\\s*\\/?>\\s*)?\\[list(?::o)?(:\\w+)?=A\\]\\s*(?:<br\\s*\\/?>)?/s' => \"\\n<ol class=\\\"bb-list-ordered,bb-list-ordered-ua\\\">\",\n          // escaped tags like \\[b], \\[color], \\[url], ...\n          '/\\\\\\\\(\\[\\/?\\w+(?::\\w+)*\\])/' => \"\\\\1\"\n\n     );\n\n     $message = preg_replace(array_keys($preg), array_values($preg), $message);\n\n     return $message;\n}"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/modifier.camp_date_format.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite camp_date_format modifier plugin\n *\n * Type:     modifier\n * Name:     camp_date_format\n * Purpose:  format datestamps via MySQL date and time functions\n *\n * @param string\n *     $p_unixtime the date in unixtime format from $smarty.now\n * @param string\n *     $p_format the date format wanted\n *\n * @return\n *     string the formatted date\n *     null in case a non-valid format was passed\n */\nfunction smarty_modifier_camp_date_format($p_unixtime, $p_format = null, $p_onlyEnglish = false)\n{\n    static $attributes = array('year'=>'%Y', 'mon'=>'%c', 'mday'=>'%e', 'yday'=>'%j',\n                        'wday'=>'%w', 'hour'=>'%H', 'min'=>'%i', 'sec'=>'%S',\n                        'mon_name'=>'%M', 'wday_name'=>'%W');\n    static $specifiersMap = array('%h'=>'%I', '%i'=>'%M', '%s'=>'%S');\n    static $conversionMap = array('%M'=>'__month_name__', '%W'=>'__weekday_name__',\n                                  '%c'=>'__month__', '%e'=>'__day_of_the_month__',\n                                  '%D'=>'__day_of_the_month_suffix__', '%l'=>'__hour_12_clock__');\n    static $numberSuffix = array(0=>'th', 1=>'st', 2=>'nd', 3=>'rd', 4=>'th', 5=>'th', 6=>'th',\n                                 7=>'th', 8=>'th', 9=>'th');\n\n    if (array_key_exists(trim(strtolower($p_format)), $attributes)) {\n        $p_format = $attributes[trim(strtolower($p_format))];\n    }\n\n    // gets the context variable\n    $campsite = CampTemplate::singleton()->getTemplateVars('gimme');\n\n    // makes sure $p_unixtime is unixtime stamp\n    CampTemplate::singleton()->loadPlugin('smarty_shared_make_timestamp');\n    $p_unixtime = smarty_make_timestamp($p_unixtime);\n\n    if (is_null($p_format) || empty($p_format)) {\n    \treturn strftime('%D %T', $p_unixtime);\n    }\n\n    $p_replaceCount = 0;\n    $p_format = str_replace(array_keys($conversionMap), array_values($conversionMap),\n    $p_format, $p_replaceCount);\n\n    $p_format = str_replace(array_keys($specifiersMap), array_values($specifiersMap), $p_format);\n\n    $formattedDate = strftime($p_format, $p_unixtime);\n    if ($p_replaceCount > 0) {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('languageObj', $campsite->language->number), 'language');\n        if ($cacheService->contains($cacheKey)) {\n            $languageObj = $cacheService->fetch($cacheKey);\n        } else {\n            $languageObj = new Language($campsite->language->number);\n            $cacheService->save($cacheKey, $languageObj);\n        }\n        if (!$languageObj->exists()) {\n            $languageObj = new Language(1);\n        }\n        $timeArray = getdate($p_unixtime);\n        $suffixNo = $timeArray['mday'] % 10;\n        $hour = $timeArray['hours'] % 12;\n        if ($hour == 0) {\n        \t$hour = 12;\n        }\n        $replaceValues = array($languageObj->getProperty('Month'.$timeArray['mon']),\n                               $languageObj->getProperty('WDay'.(1+$timeArray['wday'])),\n                               $timeArray['mon'],\n                               $timeArray['mday'],\n                               $timeArray['mday'].$numberSuffix[$suffixNo],\n                               $hour);\n        $formattedDate = str_replace(array_values($conversionMap), $replaceValues, $formattedDate);\n    }\n    return $formattedDate;\n} // fn smarty_modifier_camp_date_format\n\n?>\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/modifier.camp_filesize_format.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite camp_filesize_format modifier plugin\n *\n * Type:    modifier\n * Name:    camp_filesize_format\n * Purpose: formats the size for the given file to human-readable format\n *\n * Usage:   In the template, use for example (assuming file size = 89522 bytes)\n *          {{ $campsite->attachment->size_b|camp_filesize_format }}\n *          which result in => 87.42 KB\n *          or\n *          {{ $campsite->attachment->size_b|camp_filesize_format:\"MB\" }}\n *          which result in => 0.09 MB\n *          or\n *          use whichever of the other format types as:\n *          B = Bytes\n *          KB = Kilobytes\n *          MB = Megabytes\n *          GB = Gigabytes\n *          TB = Terabytes\n *\n * @param string $p_size\n *      The original file size (in bytes)\n * @param string $p_format\n *      The file size format wanted\n * @param integer $p_precision\n *      The rounding preicision\n *\n * @return string\n *      The formatted file size\n */\nfunction smarty_modifier_camp_filesize_format($p_size,\n                                              $p_format = null,\n                                              $p_precision = 2)\n{\n    $sizes = array(\n                   'TB' => 1099511627776,\n                   'GB' => 1073741824,\n                   'MB' => 1048576,\n                   'KB' => 1024,\n                   'B'  => 1\n                   );\n\n    if (!empty($p_format) && !array_key_exists(strtoupper($p_format), $sizes)) {\n        return $p_size;\n    }\n    \n    foreach($sizes as $unit => $bytes) {\n        if($p_size > $bytes || $unit == strtoupper($p_format)) {\n            return number_format($p_size / $bytes, $p_precision) . \" \" . $unit;\n        }\n    }\n} // fn smarty_modifier_camp_filesize_format\n\n?>"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/modifier.create_links.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Create links from urls\n *\n * @param string $input\n * @return string\n */\nfunction smarty_modifier_create_links($input)\n{\n    return preg_replace_callback(array(\n        '@(^|\\s)https?://[a-z0-9][a-z0-9-]+(?:[.][a-z0-9-]+)*[.][a-z]{2,4}(?:/\\S*)?@i',\n        '@(^|\\s)(www)(?:[.][a-z0-9-]+)+[.][a-z]{2,4}(?:/\\S*)?@i',\n    ), function($url) {\n        return sprintf('%s<a rel=\"nofollow\" href=\"%s\">%s</a>',\n            $url[1],\n            htmlspecialchars((!empty($url[2]) ? 'http://' : '') .trim($url[0]), ENT_QUOTES), // add http:// to www. links\n            htmlspecialchars(preg_replace('@^https?://@', '', trim($url[0])), ENT_QUOTES)\n        );\n    }, $input);\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/modifier.dump.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Newscoop dump modifier plugin\n *\n * Type:     modifier\n * Name:     dump\n * Purpose:  Dump given object\n *\n * @param Object to dump\n *     $object\n */\n\nfunction smarty_modifier_dump($object)\n{\n    if (function_exists('ladybug_dump')) {\n        ladybug_dump($object);\n    } else {\n        print_r($object);\n    }\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/modifier.obfuscate_email.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Campsite obfuscate_email modifier plugin\n *\n * Type:    modifier\n * Name:    obfuscate_email\n * Purpose: obfuscates the email address so that spambot web crawlers \n *          won't be able to find it.\n *\n * @param string $p_email\n *      The email address\n *\n * @return string\n *      The obfuscated email address\n */\nfunction smarty_modifier_obfuscate_email($p_email)\n{\n    if (empty($p_email)) {\n        return;\n    }\n\n    $buffer = '';\n    for ($i = 0; $i < strlen($p_email); $i++) {\n        $buffer .= '&#' . ord($p_email[$i]) . ';';\n    }\n\n    return $buffer;\n} // fn smarty_modifier_obfuscate_email\n\n?>"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/modifier.teaser.php",
    "content": "<?php\n/**\n * Campsite customized Smarty plugin\n * @package Campsite\n */\n\n/**\n * Includes the {@link shared.make_timestamp.php} plugin\n */\n$smarty->smarty->loadPlugin('smarty_shared_make_timestamp');\n\n/**\n * Campsite teaser modifier plugin\n *\n * Type:     modifier\n * Name:     teaser\n * Purpose:  build an teaser our of input\n *\n * @param string\n *     $p_input the string or object\n * @param string\n *     $p_format the date format wanted\n *\n * @return\n *     string the formatted date\n *     null in case a non-valid format was passed\n */\nfunction smarty_modifier_teaser($p_input, $p_length=null)\n{   \n    $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n\n    if (empty($length)) {\n        $length = is_null($preferencesService->teaser_length) ? 100 : $preferencesService->teaser_length;\n    }\n    $pattern = '/<!-- *break *-->/i';\n\n    if (is_object($p_input) && method_exists($p_input, '__toString')) {\n        $input = $p_input->__toString();\n    } else {\n        $input = (string) $p_input;\n    }\n\n    $output = node_teaser($input, null, $length);\n\n    return $output;\n} // fn smarty_modifier_camp_date_format\n\n\n/**\n * Generate a teaser for a node body.\n *\n * If the end of the teaser is not indicated using the <!--break--> delimiter\n * then we generate the teaser automatically, trying to end it at a sensible\n * place such as the end of a paragraph, a line break, or the end of a\n * sentence (in that order of preference).\n *\n * @param $body\n *   The content for which a teaser will be generated.\n * @param $format\n *   The format of the content. If the content contains PHP code, we do not\n *   split it up to prevent parse errors. If the line break filter is present\n *   then we treat newlines embedded in $body as line breaks.\n * @param $size\n *   The desired character length of the teaser. If omitted, the default\n *   value will be used. Ignored if the special delimiter is present\n *   in $body.\n * @return\n *   The generated teaser.\n */\nfunction node_teaser($body, $format = NULL, $size = NULL) {\n\n    /*\n    if (!isset($size)) {\n        $size = variable_get('teaser_length', 600);\n    }\n    */\n\n    // Find where the delimiter is in the body\n    $delimiter = strpos($body, '<!--break-->');\n\n    // If the size is zero, and there is no delimiter, the entire body is the teaser.\n    if ($size == 0 && $delimiter === FALSE) {\n        return $body;\n    }\n\n    // If a valid delimiter has been specified, use it to chop off the teaser.\n    if ($delimiter !== FALSE) {\n        return substr($body, 0, $delimiter);\n    }\n\n    /*\n    // We check for the presence of the PHP evaluator filter in the current\n    // format. If the body contains PHP code, we do not split it up to prevent\n    // parse errors.\n    if (isset($format)) {\n    $filters = filter_list_format($format);\n    if (isset($filters['php/0']) && strpos($body, '<?') !== FALSE) {\n    return $body;\n    }\n    }\n    */\n\n    // If we have a short body, the entire body is the teaser.\n    if (drupal_strlen($body) <= $size) {\n        return $body;\n    }\n\n    // If the delimiter has not been specified, try to split at paragraph or\n    // sentence boundaries.\n\n    // The teaser may not be longer than maximum length specified. Initial slice.\n    $teaser = truncate_utf8($body, $size);\n\n    // Store the actual length of the UTF8 string -- which might not be the same\n    // as $size.\n    $max_rpos = strlen($teaser);\n\n    // How much to cut off the end of the teaser so that it doesn't end in the\n    // middle of a paragraph, sentence, or word.\n    // Initialize it to maximum in order to find the minimum.\n    $min_rpos = $max_rpos;\n\n    // Store the reverse of the teaser.  We use strpos on the reversed needle and\n    // haystack for speed and convenience.\n    $reversed = strrev($teaser);\n\n    // Build an array of arrays of break points grouped by preference.\n    $break_points = array();\n\n    // A paragraph near the end of sliced teaser is most preferable.\n    $break_points[] = array('</p>' => 0);\n\n    // If no complete paragraph then treat line breaks as paragraphs.\n    $line_breaks = array('<br />' => 6, '<br>' => 4);\n    // Newline only indicates a line break if line break converter\n    // filter is present.\n    if (isset($filters['filter/1'])) {\n        $line_breaks[\"\\n\"] = 1;\n    }\n    $break_points[] = $line_breaks;\n\n    // If the first paragraph is too long, split at the end of a sentence.\n    $break_points[] = array('. ' => 1, '! ' => 1, '? ' => 1, '。' => 0, '؟ ' => 1);\n\n    // Iterate over the groups of break points until a break point is found.\n    foreach ($break_points as $points) {\n        // Look for each break point, starting at the end of the teaser.\n        foreach ($points as $point => $offset) {\n            // The teaser is already reversed, but the break point isn't.\n            $rpos = strpos($reversed, strrev($point));\n            if ($rpos !== FALSE) {\n                $min_rpos = min($rpos + $offset, $min_rpos);\n            }\n        }\n\n        // If a break point was found in this group, slice and return the teaser.\n        if ($min_rpos !== $max_rpos) {\n            // Don't slice with length 0.  Length must be <0 to slice from RHS.\n            return ($min_rpos === 0) ? $teaser : substr($teaser, 0, 0 - $min_rpos);\n        }\n    }\n\n    // If a break point was not found, still return a teaser.\n    return $teaser;\n}\n\n\n\n/**\n * Count the amount of characters in a UTF-8 string. This is less than or\n * equal to the byte count.\n */\nfunction drupal_strlen($text) {\n    global $multibyte;\n    if ($multibyte == UNICODE_MULTIBYTE) {\n        return mb_strlen($text);\n    }\n    else {\n        // Do not count UTF-8 continuation bytes.\n        return strlen(preg_replace(\"/[\\x80-\\xBF]/\", '', $text));\n    }\n}\n\n\n\n/**\n * Truncate a UTF-8-encoded string safely to a number of characters.\n *\n * @param $string\n *   The string to truncate.\n * @param $len\n *   An upper limit on the returned string length.\n * @param $wordsafe\n *   Flag to truncate at last space within the upper limit. Defaults to FALSE.\n * @param $dots\n *   Flag to add trailing dots. Defaults to FALSE.\n * @return\n *   The truncated string.\n */\nfunction truncate_utf8($string, $len, $wordsafe = FALSE, $dots = FALSE) {\n\n    if (drupal_strlen($string) <= $len) {\n        return $string;\n    }\n\n    if ($dots) {\n        $len -= 4;\n    }\n\n    if ($wordsafe) {\n        $string = drupal_substr($string, 0, $len + 1); // leave one more character\n        if ($last_space = strrpos($string, ' ')) { // space exists AND is not on position 0\n        $string = substr($string, 0, $last_space);\n        }\n        else {\n            $string = drupal_substr($string, 0, $len);\n        }\n    }\n    else {\n        $string = drupal_substr($string, 0, $len);\n    }\n\n    if ($dots) {\n        $string .= ' ...';\n    }\n\n    return $string;\n}\n\n\n/**\n * Cut off a piece of a string based on character indices and counts. Follows\n * the same behavior as PHP's own substr() function.\n *\n * Note that for cutting off a string at a known character/substring\n * location, the usage of PHP's normal strpos/substr is safe and\n * much faster.\n */\nfunction drupal_substr($text, $start, $length = NULL) {\n    global $multibyte;\n    if ($multibyte == UNICODE_MULTIBYTE) {\n        return $length === NULL ? mb_substr($text, $start) : mb_substr($text, $start, $length);\n    }\n    else {\n        $strlen = strlen($text);\n        // Find the starting byte offset\n        $bytes = 0;\n        if ($start > 0) {\n            // Count all the continuation bytes from the start until we have found\n            // $start characters\n            $bytes = -1; $chars = -1;\n            while ($bytes < $strlen && $chars < $start) {\n                $bytes++;\n                $c = ord($text[$bytes]);\n                if ($c < 0x80 || $c >= 0xC0) {\n                    $chars++;\n                }\n            }\n        }\n        else if ($start < 0) {\n            // Count all the continuation bytes from the end until we have found\n            // abs($start) characters\n            $start = abs($start);\n            $bytes = $strlen; $chars = 0;\n            while ($bytes > 0 && $chars < $start) {\n                $bytes--;\n                $c = ord($text[$bytes]);\n                if ($c < 0x80 || $c >= 0xC0) {\n                    $chars++;\n                }\n            }\n        }\n        $istart = $bytes;\n\n        // Find the ending byte offset\n        if ($length === NULL) {\n            $bytes = $strlen - 1;\n        }\n        else if ($length > 0) {\n            // Count all the continuation bytes from the starting index until we have\n            // found $length + 1 characters. Then backtrack one byte.\n            $bytes = $istart; $chars = 0;\n            while ($bytes < $strlen && $chars < $length) {\n                $bytes++;\n                $c = ord($text[$bytes]);\n                if ($c < 0x80 || $c >= 0xC0) {\n                    $chars++;\n                }\n            }\n            $bytes--;\n        }\n        else if ($length < 0) {\n            // Count all the continuation bytes from the end until we have found\n            // abs($length) characters\n            $length = abs($length);\n            $bytes = $strlen - 1; $chars = 0;\n            while ($bytes >= 0 && $chars < $length) {\n                $c = ord($text[$bytes]);\n                if ($c < 0x80 || $c >= 0xC0) {\n                    $chars++;\n                }\n                $bytes--;\n            }\n        }\n        $iend = $bytes;\n\n        return substr($text, $istart, max(0, $iend - $istart + 1));\n    }\n}\n?>"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/modifier.translate.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Newscoop translate modifier plugin\n *\n * Type:     modifier\n * Name:     translate\n * Purpose:  Translates given string\n *\n * @param String to translate\n *     $string\n * @param Translation domain\n *     $domain\n  * @param params\n *     $params\n *\n * @return string\n *\n */\n\nfunction smarty_modifier_translate($string, $domain = null, $params = array())\n{\n    if (!isset($string)) {\n        return '';\n    }\n\n    if (is_null($domain)) {\n        $domain = 'theme_translation';\n    }\n\n    $translator = \\Zend_Registry::get('container')->getService('translator');\n\n    return $translator->trans($string, $params, $domain);\n}\n"
  },
  {
    "path": "newscoop/include/smarty/campsite_plugins/modifier.truncate_utf8.php",
    "content": "<?php\n/**\n * Smarty plugin\n * @package Smarty\n * @subpackage plugins\n */\n\n\n/**\n * Smarty truncate modifier plugin\n *\n * Type:     modifier<br>\n * Name:     truncate<br>\n * Purpose:  Truncate a string to a certain length if necessary,\n *           optionally splitting in the middle of a word, and\n *           appending the $etc string or inserting $etc into the middle.\n * @link http://smarty.php.net/manual/en/language.modifier.truncate.php\n *          truncate (Smarty online manual)\n * @author Monte Ohrt <monte at ohrt dot com> & Mugur Rus <mugur.rus at sourcefabric dot org>\n * @param string\n * @param integer\n * @param string\n * @param boolean\n * @param boolean\n * @return string\n */\n\nfunction smarty_utf8_substr($str,$from,$len){\n# utf8 substr\n# www.yeap.lv\n  return preg_replace('#^(?:[\\x00-\\x7F]|[\\xC0-\\xFF][\\x80-\\xBF]+){0,'.$from.'}'.\n                       '((?:[\\x00-\\x7F]|[\\xC0-\\xFF][\\x80-\\xBF]+){0,'.$len.'}).*#s',\n                       '$1',$str);\n} // fn smarty_utf8_substr\n\n\nfunction smarty_modifier_truncate_utf8($string, $length = 80, $etc = '...',\n\t\t\t\t\t\t\t\t\t   $break_words = false, $middle = false)\n{\n    if ($length == 0) {\n        return '';\n    }\n\n    if (strlen(utf8_decode($string)) > $length) {\n        $length -= strlen(utf8_decode($etc));\n        $initial_length = $length;\n        $str_length = 0;\n\n        // compute the cut length by adding the HTML tags\n        $matches_no = preg_match_all('/(<[^>]+>)*([^<]*)/', $string, $matches, PREG_PATTERN_ORDER);\n        for ($index = 0; $index < $matches_no; $index++) {\n        \t$length += mb_strlen($matches[1][$index]);\n        \t$str_length += mb_strlen($matches[2][$index]);\n        \tif ($str_length >= $initial_length) {\n        \t\tbreak;\n        \t}\n        }\n        $html_length = $length;\n\n        // compute the cut length by adding the size of international characters encoded in HTML\n        $str_length = 0;\n        $matches_no = preg_match_all('/([^&]*)(&[a-zA-Z]+;|&#[0-9]+;)/', $string, $matches, PREG_PATTERN_ORDER);\n        for ($index = 0; $index < $matches_no; $index++) {\n        \t$str_length += mb_strlen($matches[1][$index]) + 1;\n        \tif ($str_length >= $html_length) {\n        \t\tbreak;\n        \t}\n        \t$length += mb_strlen($matches[2][$index]) - 1;\n        }\n\n        if (!$break_words && !$middle) {\n            $string = preg_replace('/\\s+?(\\S+)?$/u', '', smarty_utf8_substr($string, 0, $length+1));\n        }\n        if(!$middle) {\n            return smarty_utf8_substr($string, 0, $length).$etc;\n        } else {\n            return smarty_utf8_substr($string, 0, $length/2) . $etc . smarty_utf8_substr($string, -$length/2);\n        }\n    } else {\n        return $string;\n    }\n} // smarty_modifier_truncate\n\n?>"
  },
  {
    "path": "newscoop/include/versions.txt",
    "content": "Archive_Tar              1.3.7    stable\nConsole_Getopt           1.2.3    stable\nDB                       1.7.13   stable\nDate                     1.4.7    stable\nEvent_Dispatcher         1.1.0    stable\nFile                     1.3.0    stable\nFile_Find                1.3.1    stable\nMail                     1.2.0    stable\nMail_Mime                1.8.0    stable\nNet_Socket               1.0.9    stable\nNet_URL                  1.0.15   stable\nPEAR                     1.9.1    stable\nsmarty                   2.6.26   stable\nStructures_Graph         1.0.3    stable\nXML_Parser               1.3.2    stable\nXML_RPC                  1.5.4    stable\nXML_Serializer           0.20.0   beta\nXML_Util                 1.2.1    stable\n"
  },
  {
    "path": "newscoop/index.php",
    "content": "<?php\n$uri = '';\nif (isset($_SERVER)) {\n    $installPrefix = pathinfo($_SERVER['SCRIPT_NAME'], PATHINFO_DIRNAME);\n    $uri = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH);\n    $uri = substr($uri, strlen($installPrefix)) ?: '';\n    $uri = ltrim($uri, '/');\n}\n\nswitch (true) {\n    case substr($uri, 0, strlen('_statistics')) === '_statistics':\n        require_once __DIR__ . '/classes/Statistics.php';\n        $stats_only = false;\n        Statistics::ProcessStats($stats_only);\n        exit(0);\n        break;\n\n    default:\n        require_once __DIR__ . '/public/index.php';\n}\n"
  },
  {
    "path": "newscoop/install/.htaccess",
    "content": "RewriteEngine On\n\nRewriteRule ^/?fixer\\.php$ - [F,L]\n\nRewriteCond %{REQUEST_FILENAME} -s [OR]\nRewriteCond %{REQUEST_FILENAME} -l [OR]\nRewriteCond %{REQUEST_FILENAME} -d\nRewriteRule ^.*$ - [NC,L]\nRewriteRule ^.*$ index.php [NC,L]\n\n"
  },
  {
    "path": "newscoop/install/Resources/assets/css/main.css",
    "content": "body {\n\tfont-family: Arial, Helvetica, sans-serif;\n\tfont-size: 14px;\n\tcolor: #575a5c;\n\tline-height: 170%;\n\tbackground: #f5f5f5;\n}\n\n.logo {\n\tmargin: 50px auto 0px auto;\n\tdisplay: block;\n}\n\n.main_box {\n\tposition: relative;\n\tmargin: 50px auto 0px auto;\n\twidth: 100%;\n\tmax-width: 700px;\n\tbackground: #fff;\n\tpadding: 20px 30px 30px 30px;\n\t-webkit-box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.25);\n\t-moz-box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.25);\n\tbox-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.25);\n\t-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */\n\t-moz-box-sizing: border-box;    /* Firefox, other Gecko */\n\tbox-sizing: border-box;         /* Opera/IE 8+ */\n}\n\n.main_box.fixed {\n\tposition: fixed;\n\tmargin-top: 0px;\n\tmargin-left: -350px;\n\tleft: 50%;\n\ttop: 150px;\n\tbottom: 100px;\n}\n\n.top {\n\tborder-bottom: 1px solid #d9d9d9;\n\tmargin: 0px -30px 20px -30px;\n\tpadding-left: 30px;\n}\n\n.middle {\n\tposition: absolute;\n\toverflow: auto;\n\ttop: 65px;\n\tright: 30px;\n\tbottom: 80px;\n\tleft: 30px;\n\tpadding-right: 40px;\n}\n\n.bottom {\n\tposition: relative;\n\tborder-top: 1px solid #d9d9d9;\n\tbackground: #f5f5f5;\n\twidth: 100%;\n\theight: auto;\n\tpadding: 20px 30px 40px 30px;\n\tmargin: 30px -30px -30px -30px;\n}\n\n.fixed .bottom {\n\tbottom: 0px;\n\tleft: 0px;\n\tposition: absolute;\n\tborder-top: 1px solid #d9d9d9;\n\tbackground: #f5f5f5;\n\twidth: 100%;\n\theight: 69px;\n\t-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */\n\t-moz-box-sizing: border-box;    /* Firefox, other Gecko */\n\tbox-sizing: border-box;         /* Opera/IE 8+ */\n\tpadding: 20px 30px;\n\tmargin: 0px;\n}\n\n.main_box ul {\n\tpadding-left: 0px;\n}\n\n.main_box ul li {\n\tbackground: url('correct.png') no-repeat;\n\tbackground-position: left 5px;\n\tpadding-left: 25px;\n}\n\n.main_box ul li.fail {\n\tbackground: url('fail.png') no-repeat;\n\tbackground-position: left 5px;\n\tcolor: #972929;\n}\n\n.main_box ul li.alert {\n\tbackground: url('warning.png') no-repeat;\n\tbackground-position: left 5px;\n\tcolor: #c38e0f;\n}\n\n.main_box h2 {\n\tfont-size: 20px;\n\tfont-weight: normal;\n\tcolor: #393c3e;\n\tmargin-top: 0px;\n\tmargin-bottom: 14px;\n}\n\n.main_box h3 {\n\tfont-size: 18px;\n\tfont-weight: normal;\n\tcolor: #393c3e;\n\tmargin-top: 10px;\n}\n\n.version_num {\n\tfont-size: 12px;\n\tposition: absolute;\n\tbottom: -70px;\n\tleft: 0px;\n\tline-height: 20px;\n\ttext-align: center;\n\tleft: 140px;\n}\n\n.version_num a {\n\tcolor: #015476;\n\ttext-decoration: none;\n}\n\n.bottom.notification {\n\tbackground: #e8f5e0;\n\tborder-top: 1px solid #bde889;\n}\n\n.notification span {\n\tcolor: #489729;\n\tbackground: url('correct.png') no-repeat;\n\tbackground-position: 0px center;\n\tfont-size: 12px;\n\tpadding: 2px 15px 3px 25px;\n\tdisplay: inline-block;\n\tfloat: left;\n\twidth: 100%;\n\tmax-width: 380px;\n}\n\n.bottom.notification.fail {\n\tbackground: #f5e0e0; \n\tborder-top: 1px solid #FABEBE;\n}\n\n.notification.fail span {\n\tcolor: #cb1d1d;\n\tbackground: url('fail.png') no-repeat;\n\tbackground-position: 0px center;\n}\n\n.bottom.notification.alert {\n\tbackground: #fafaef;\n\tborder-top: 1px solid #E8DD89;\n}\n\n.notification.alert span {\n\tcolor: #c38e0f;\n\tbackground: url('warning.png') no-repeat;\n\tbackground-position: 0px center;\n}\n\n.btn {\n\tpadding: 4px 10px;\n\tbackground-image: -webkit-linear-gradient(top, #f6f5f6 0%, #e8e5e8 100%);\n\tbackground-image: -webkit-gradient(linear, left top, left bottom, from(#f6f5f6), to(#e8e5e8));\n\tbackground-image: linear-gradient(to bottom, #f6f5f6 0%, #e8e5e8 100%);\n\tfilter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff6f5f6', endColorstr='#ffe8e5e8', GradientType=0);\n\tfilter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n\tbackground-repeat: repeat-x;\n\ttext-shadow: 0 1px 0 #fff;\n\tfont-size: 13px;\n\tbox-shadow: 0 1px 0 #ffffff, inset 0 1px 0 #ffffff;\n\tborder-radius: 2px;\n\tline-height: 1.5;\n\tcolor: #333333;\n\tbackground-color: #f6f5f6;\n\tdisplay: inline-block;\n\tfont-weight: normal;\n\ttext-align: center;\n\tvertical-align: middle;\n\tcursor: pointer;\n\tborder: 1px solid #cecece;\n\ttext-decoration: none;\n\tmin-width: 60px;\n}\n\n.btn:hover {\n\tbackground-color: #e8e5e8;\n\tbackground-position: 0 -25px;\n}\n\n.bottom .btn {\n\tfloat: right;\n\tmargin: 0px 0px 0px 20px;\n\n}\n\n.btn.btn-blue {\n\tbackground-image: -webkit-linear-gradient(top, #2591be 0%, #207da4 100%);\n\tbackground-image: -webkit-gradient(linear, left top, left bottom, from(#2591be), to(#207da4));\n\tbackground-image: linear-gradient(to bottom, #2591be 0%, #207da4 100%);\n\tfilter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff2591be', endColorstr='#ff207da4', GradientType=0);\n\tfilter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n\tbackground-repeat: repeat-x;\n\tborder-color: #1d7093;\n\tcolor: #ffffff;\n\tbackground-color: #2591be;\n\tborder-color: #2181a9;\n\ttext-shadow: 0 1px 0 #000;\n\tbox-shadow: 0 1px 0 #FFFFFF, inset 0 1px 0 rgba(255, 255, 255, 0.4);\n}\n\n.btn.btn-blue:hover {\n\tcolor: #ffffff;\n\tbackground-color: #2591be;\n\tborder-color: #2181a9;\n\tcolor: #ffffff;\n\tbackground-color: #1d7093;\n}\n\n.main_box label {\n\twidth: 100%;\n\tmax-width: 230px;\n\tdisplay: inline-block;\n}\n\n.text_links .btn {\n\tfloat: none;\n}\n\n.main_box input[type=\"text\"] {\n\twidth: 100%;\n\tmax-width: 240px;\n\tborder: 1px solid #d0d0d0;\n\tresize: none;\n\tmargin: 5px 0;\n\tpadding: 5px;\n\tfont-size: 90%;\n}\n\n.main_box input[type=\"password\"] {\n\twidth: 100%;\n\tmax-width: 240px;\n\tborder: 1px solid #d0d0d0;\n\tresize: none;\n\tmargin: 5px 0;\n\tpadding: 5px;\n\tfont-size: 90%;\n}\n\n.main_box input[type=\"email\"] {\n\twidth: 100%;\n\tmax-width: 240px;\n\tborder: 1px solid #d0d0d0;\n\tresize: none;\n\tmargin: 5px 0;\n\tpadding: 5px;\n\tfont-size: 90%;\n}\n\n.main_box input[type=\"checkbox\"] {\n\tmargin-right: 10px;\n\tvertical-align: middle;\n}\n\n@media screen and (max-width: 720px)  {\n\t.main_box.fixed {\n\t\tposition: relative;\n\t\tmargin-left: auto;\n\t\ttop: 60px;\n\t\tleft: auto;\n\t}\n\n\t.middle {\n\t\tposition: relative;\n\t\ttop: auto;\n\t\tleft: auto;\n\t\tright: auto;\n\t\tbottom: auto;\n\t\tpadding-bottom: 40px;\n\t}\n\n\t.notification span {\n\t\twidth: auto;\n\t}\n}\n"
  },
  {
    "path": "newscoop/install/Resources/sample_data/files/placeholder",
    "content": ""
  },
  {
    "path": "newscoop/install/Resources/sql/CityNames.csv",
    "content": "\"3039163\";\"Sant Julià de Lòria\";\"main\"\n\"3039163\";\"Sant Julia de Loria\";\"ascii\"\n\"3039163\";\"San Julia\";\"other\"\n\"3039163\";\"San Julià\";\"other\"\n\"3039163\";\"San-Dzhulija-de-Lorija\";\"other\"\n\"3039163\";\"San-Khulija-de-Lorija\";\"other\"\n\"3039163\";\"sheng hu li ya-de luo li ya\";\"other\"\n\"3039163\";\"Сан-Джулия-де-Лория\";\"other\"\n\"3039163\";\"Сан-Хулия-де-Лория\";\"other\"\n\"3039163\";\"サン・ジュリア・デ・ロリア教区\";\"other\"\n\"3039163\";\"圣胡利娅-德洛里亚\";\"other\"\n\"3039163\";\"圣胡利娅－德洛里亚\";\"other\"\n\"3039604\";\"Pas de la Casa\";\"main\"\n\"3039604\";\"Pas de la Kasa\";\"other\"\n\"3039604\";\"Пас де ла Каса\";\"other\"\n\"3039678\";\"Ordino\";\"main\"\n\"3039678\";\"ao er di nuo\";\"other\"\n\"3039678\";\"orudino jiao qu\";\"other\"\n\"3039678\";\"Ордино\";\"other\"\n\"3039678\";\"オルディノ教区\";\"other\"\n\"3039678\";\"奥尔迪诺\";\"other\"\n\"3040051\";\"les Escaldes\";\"main\"\n\"3040051\";\"Ehskal'des-Ehndzhordani\";\"other\"\n\"3040051\";\"Escaldes\";\"other\"\n\"3040051\";\"Escaldes-Engordany\";\"other\"\n\"3040051\";\"Les Escaldes\";\"other\"\n\"3040051\";\"esukarudesu=engorudani jiao qu\";\"other\"\n\"3040051\";\"lai sai si ka er de-en ge er da\";\"other\"\n\"3040051\";\"Эскальдес-Энджордани\";\"other\"\n\"3040051\";\"エスカルデス＝エンゴルダニ教区\";\"other\"\n\"3040051\";\"萊塞斯卡爾德-恩戈爾達\";\"other\"\n\"3040051\";\"萊塞斯卡爾德－恩戈爾達\";\"other\"\n\"3040132\";\"la Massana\";\"main\"\n\"3040132\";\"La Macana\";\"other\"\n\"3040132\";\"La Massana\";\"other\"\n\"3040132\";\"La Maçana\";\"other\"\n\"3040132\";\"La-Massana\";\"other\"\n\"3040132\";\"ma sa na\";\"other\"\n\"3040132\";\"Ла-Массана\";\"other\"\n\"3040132\";\"ラ・マサナ教区\";\"other\"\n\"3040132\";\"马萨纳\";\"other\"\n\"3040686\";\"Encamp\";\"main\"\n\"3040686\";\"Ehnkam\";\"other\"\n\"3040686\";\"en kan pu\";\"other\"\n\"3040686\";\"enkanpu jiao qu\";\"other\"\n\"3040686\";\"Энкам\";\"other\"\n\"3040686\";\"エンカンプ教区\";\"other\"\n\"3040686\";\"恩坎普\";\"other\"\n\"3041204\";\"Canillo\";\"main\"\n\"3041204\";\"Kanil'o\";\"other\"\n\"3041204\";\"ka ni e\";\"other\"\n\"3041204\";\"kaniryo jiao qu\";\"other\"\n\"3041204\";\"Канильо\";\"other\"\n\"3041204\";\"カニーリョ教区\";\"other\"\n\"3041204\";\"卡尼略\";\"other\"\n\"3041519\";\"Arinsal\";\"main\"\n\"3041519\";\"Аринсал\";\"other\"\n\"3041563\";\"Andorra la Vella\";\"main\"\n\"3041563\";\"Ando-la-Vyey\";\"other\"\n\"3041563\";\"Andora\";\"other\"\n\"3041563\";\"Andora la Vela\";\"other\"\n\"3041563\";\"Andora la Velja\";\"other\"\n\"3041563\";\"Andora lja Vehl'ja\";\"other\"\n\"3041563\";\"Andoro Malnova\";\"other\"\n\"3041563\";\"Andorra\";\"other\"\n\"3041563\";\"Andorra Tuan\";\"other\"\n\"3041563\";\"Andorra a Vella\";\"other\"\n\"3041563\";\"Andorra la Biella\";\"other\"\n\"3041563\";\"Andorra la Vielha\";\"other\"\n\"3041563\";\"Andorra-a-Velha\";\"other\"\n\"3041563\";\"Andorra-la-Vel'ja\";\"other\"\n\"3041563\";\"Andorra-la-Vielye\";\"other\"\n\"3041563\";\"Andorre-la-Vieille\";\"other\"\n\"3041563\";\"Andò-la-Vyèy\";\"other\"\n\"3041563\";\"Andòrra la Vièlha\";\"other\"\n\"3041563\";\"an dao er cheng\";\"other\"\n\"3041563\";\"andolalabeya\";\"other\"\n\"3041563\";\"andwra la fyla\";\"other\"\n\"3041563\";\"Ανδόρρα\";\"other\"\n\"3041563\";\"Андора ла Веля\";\"other\"\n\"3041563\";\"Андора ла Веља\";\"other\"\n\"3041563\";\"Андора ля Вэлья\";\"other\"\n\"3041563\";\"Андорра-ла-Велья\";\"other\"\n\"3041563\";\"אנדורה לה וולה\";\"other\"\n\"3041563\";\"أندورا لا فيلا\";\"other\"\n\"3041563\";\"አንዶራ ላ ቬላ\";\"other\"\n\"3041563\";\"アンドラ・ラ・ヴェリャ\";\"other\"\n\"3041563\";\"安道爾城\";\"other\"\n\"3041563\";\"안도라라베야\";\"other\"\n\"290594\";\"Umm al Qaywayn\";\"main\"\n\"290594\";\"Um al Quweim\";\"other\"\n\"290594\";\"Umm al Qaiwain\";\"other\"\n\"290594\";\"Umm al Qawain\";\"other\"\n\"290594\";\"Yumul al Quwain\";\"other\"\n\"291074\";\"Ra's al Khaymah\";\"main\"\n\"291074\";\"Julfa\";\"other\"\n\"291074\";\"Khaimah\";\"other\"\n\"291074\";\"Ras al Khaima\";\"other\"\n\"291074\";\"Ras al Khaimah\";\"other\"\n\"291074\";\"Rās al Khaima\";\"other\"\n\"291279\";\"Muzayri‘\";\"main\"\n\"291279\";\"Muzayri`\";\"ascii\"\n\"291279\";\"Mezaira'a\";\"other\"\n\"291279\";\"Mezaira’a\";\"other\"\n\"291279\";\"Mizeir`ah\";\"other\"\n\"291279\";\"Mizeir‘ah\";\"other\"\n\"291279\";\"Mozayri`\";\"other\"\n\"291279\";\"Mozayri‘\";\"other\"\n\"291696\";\"Khawr Fakkān\";\"main\"\n\"291696\";\"Khawr Fakkan\";\"ascii\"\n\"291696\";\"Fakkan\";\"other\"\n\"291696\";\"Fakkān\";\"other\"\n\"291696\";\"Khawr al Fakkan\";\"other\"\n\"291696\";\"Khawr al Fakkān\";\"other\"\n\"291696\";\"Khor Fakhan\";\"other\"\n\"291696\";\"Khor Fakkan\";\"other\"\n\"291696\";\"Khor Fakkān\";\"other\"\n\"291696\";\"Khor al Fakhan\";\"other\"\n\"291696\";\"Khor al Fakkan\";\"other\"\n\"291696\";\"Khor al Fākhān\";\"other\"\n\"291696\";\"Khorfakan\";\"other\"\n\"291696\";\"Port Khor Fakkan\";\"other\"\n\"292223\";\"Dubai\";\"main\"\n\"292223\";\"Dabei\";\"other\"\n\"292223\";\"Dibai\";\"other\"\n\"292223\";\"Dibay\";\"other\"\n\"292223\";\"Doubayi\";\"other\"\n\"292223\";\"Dubae\";\"other\"\n\"292223\";\"Dubai emiraat\";\"other\"\n\"292223\";\"Dubaj\";\"other\"\n\"292223\";\"Dubajo\";\"other\"\n\"292223\";\"Dubajus\";\"other\"\n\"292223\";\"Dubay\";\"other\"\n\"292223\";\"Dubayy\";\"other\"\n\"292223\";\"Dubaï\";\"other\"\n\"292223\";\"Dúbæ\";\"other\"\n\"292223\";\"Fort Dabei\";\"other\"\n\"292223\";\"dby\";\"other\"\n\"292223\";\"dbyy\";\"other\"\n\"292223\";\"di bai\";\"other\"\n\"292223\";\"dobai\";\"other\"\n\"292223\";\"du bai\";\"other\"\n\"292223\";\"duba'i\";\"other\"\n\"292223\";\"dubai\";\"other\"\n\"292223\";\"dubi\";\"other\"\n\"292223\";\"tupay\";\"other\"\n\"292223\";\"Дубаи\";\"other\"\n\"292223\";\"Дубай\";\"other\"\n\"292223\";\"דובאי\";\"other\"\n\"292223\";\"دبئی\";\"other\"\n\"292223\";\"دبي\";\"other\"\n\"292223\";\"دبی\";\"other\"\n\"292223\";\"दुबई\";\"other\"\n\"292223\";\"துபாய்\";\"other\"\n\"292223\";\"ดูไบ\";\"other\"\n\"292223\";\"ドバイ\";\"other\"\n\"292223\";\"杜拜\";\"other\"\n\"292223\";\"迪拜\";\"other\"\n\"292223\";\"두바이\";\"other\"\n\"292239\";\"Dibā\";\"main\"\n\"292239\";\"Diba\";\"ascii\"\n\"292239\";\"Daba\";\"other\"\n\"292239\";\"Daba al-Hisn\";\"other\"\n\"292239\";\"Dabā\";\"other\"\n\"292239\";\"Dabā al-Ḥiṣn\";\"other\"\n\"292239\";\"Diba al Hisn\";\"other\"\n\"292239\";\"Dibah\";\"other\"\n\"292239\";\"Dibba\";\"other\"\n\"292239\";\"Dibba Al'-Khisn\";\"other\"\n\"292239\";\"Dibbah\";\"other\"\n\"292239\";\"Dibā al Ḩişn\";\"other\"\n\"292239\";\"Dībā al Ḩişn\";\"other\"\n\"292239\";\"Hisn Diba\";\"other\"\n\"292239\";\"Husn Dibba\";\"other\"\n\"292239\";\"Дибба Аль-Хисн\";\"other\"\n\"292239\";\"Ḩişn Dibā\";\"other\"\n\"292672\";\"Sharjah\";\"main\"\n\"292672\";\"Al Sharjah\";\"other\"\n\"292672\";\"Ash 'Mariqah\";\"other\"\n\"292672\";\"Ash Shariqa\";\"other\"\n\"292672\";\"Ash Shariqah\";\"other\"\n\"292672\";\"Ash Shāriqa\";\"other\"\n\"292672\";\"Ash Shāriqah\";\"other\"\n\"292672\";\"Ash-Shariqah' emiraat\";\"other\"\n\"292672\";\"Ash-Shāriqah' emiraat\";\"other\"\n\"292672\";\"Sarjo\";\"other\"\n\"292672\";\"Schardscha\";\"other\"\n\"292672\";\"Shardzha\";\"other\"\n\"292672\";\"Sharga\";\"other\"\n\"292672\";\"Sharijah\";\"other\"\n\"292672\";\"Shariqah\";\"other\"\n\"292672\";\"Sharja\";\"other\"\n\"292672\";\"Sharzha\";\"other\"\n\"292672\";\"Shārijah\";\"other\"\n\"292672\";\"Shāriqah\";\"other\"\n\"292672\";\"Shārja\";\"other\"\n\"292672\";\"carja\";\"other\"\n\"292672\";\"sharjh\";\"other\"\n\"292672\";\"sharqt\";\"other\"\n\"292672\";\"sharuja\";\"other\"\n\"292672\";\"xia er jia\";\"other\"\n\"292672\";\"Ŝarĵo\";\"other\"\n\"292672\";\"Шарджа\";\"other\"\n\"292672\";\"Шаржа\";\"other\"\n\"292672\";\"שארג'ה\";\"other\"\n\"292672\";\"شارجه\";\"other\"\n\"292672\";\"شارقة\";\"other\"\n\"292672\";\"சார்ஜா\";\"other\"\n\"292672\";\"シャールジャ\";\"other\"\n\"292672\";\"夏尔迦\";\"other\"\n\"292688\";\"Ar Ruways\";\"main\"\n\"292688\";\"Ar Ru'ays\";\"other\"\n\"292688\";\"Ar Ru’ays\";\"other\"\n\"292688\";\"Ruwais\";\"other\"\n\"292878\";\"Al Fujayrah\";\"main\"\n\"292878\";\"Al-Fudjayra\";\"other\"\n\"292878\";\"Al-Fujayrah' emiraat\";\"other\"\n\"292878\";\"Fudschaira\";\"other\"\n\"292878\";\"Fudzhejra\";\"other\"\n\"292878\";\"Fujaira\";\"other\"\n\"292878\";\"Fujairah\";\"other\"\n\"292878\";\"Fujajro\";\"other\"\n\"292878\";\"Fujayrah\";\"other\"\n\"292878\";\"Fuĵajro\";\"other\"\n\"292878\";\"fjyrt\";\"other\"\n\"292878\";\"fu ji la\";\"other\"\n\"292878\";\"fujaira\";\"other\"\n\"292878\";\"Фуджейра\";\"other\"\n\"292878\";\"فجيرة\";\"other\"\n\"292878\";\"フジャイラ\";\"other\"\n\"292878\";\"富吉拉\";\"other\"\n\"292913\";\"Al ‘Ayn\";\"main\"\n\"292913\";\"Al `Ayn\";\"ascii\"\n\"292913\";\"Al Ain\";\"other\"\n\"292913\";\"Al Ajn\";\"other\"\n\"292913\";\"Al'-Ajn\";\"other\"\n\"292913\";\"Al-Ain\";\"other\"\n\"292913\";\"Al-Ayn\";\"other\"\n\"292913\";\"Аль-Айн\";\"other\"\n\"292913\";\"العين\";\"other\"\n\"292932\";\"`Ajmān\";\"main\"\n\"292932\";\"`Ajman\";\"ascii\"\n\"292932\";\"Ajman\";\"other\"\n\"292932\";\"Al Ajman\";\"other\"\n\"292932\";\"`Ujman\";\"other\"\n\"292932\";\"`Ujmān\";\"other\"\n\"292953\";\"Adh Dhayd\";\"main\"\n\"292953\";\"Adh Dhaid\";\"other\"\n\"292953\";\"Al Daid\";\"other\"\n\"292953\";\"Al-Dhayd\";\"other\"\n\"292953\";\"Dayd\";\"other\"\n\"292953\";\"Dhaid\";\"other\"\n\"292953\";\"Dhayd\";\"other\"\n\"292953\";\"Duhayd\";\"other\"\n\"292953\";\"Ihaid\";\"other\"\n\"292953\";\"Ḑayd\";\"other\"\n\"292968\";\"Abu Dhabi\";\"main\"\n\"292968\";\"AEbu Saby\";\"other\"\n\"292968\";\"Abu Dabi\";\"other\"\n\"292968\";\"Abu Dabis\";\"other\"\n\"292968\";\"Abu Dhabi emiraat\";\"other\"\n\"292968\";\"Abu Zabi\";\"other\"\n\"292968\";\"Abu Zaby\";\"other\"\n\"292968\";\"Abu Zabye\";\"other\"\n\"292968\";\"Abu Zabyo\";\"other\"\n\"292968\";\"Abu Ḑabi\";\"other\"\n\"292968\";\"Abu-Dabi\";\"other\"\n\"292968\";\"Abu-Dabio\";\"other\"\n\"292968\";\"Abud Dhabi\";\"other\"\n\"292968\";\"Abú Dabí\";\"other\"\n\"292968\";\"Abú Dhabí\";\"other\"\n\"292968\";\"Abú Zabí\";\"other\"\n\"292968\";\"Abū Z̧aby\";\"other\"\n\"292968\";\"Abū Z̧abye\";\"other\"\n\"292968\";\"Abū Z̧abyo\";\"other\"\n\"292968\";\"Abū Z̧abī\";\"other\"\n\"292968\";\"Ampou Ntampi\";\"other\"\n\"292968\";\"Emirato de Abu Dabi\";\"other\"\n\"292968\";\"a bu zha bi\";\"other\"\n\"292968\";\"abudabi\";\"other\"\n\"292968\";\"abwzby\";\"other\"\n\"292968\";\"Äbu Saby\";\"other\"\n\"292968\";\"Αμπου Νταμπι\";\"other\"\n\"292968\";\"Αμπού Ντάμπι\";\"other\"\n\"292968\";\"Абу Даби\";\"other\"\n\"292968\";\"Абу-Даби\";\"other\"\n\"292968\";\"Абу-Дабі\";\"other\"\n\"292968\";\"אבו דאבי\";\"other\"\n\"292968\";\"أبوظبي\";\"other\"\n\"292968\";\"アブダビ\";\"other\"\n\"292968\";\"阿布扎比\";\"other\"\n\"292968\";\"아부다비\";\"other\"\n\"1120483\";\"Kōhistān\";\"main\"\n\"1120483\";\"Kohistan\";\"ascii\"\n\"1120483\";\"Kohsan\";\"other\"\n\"1120483\";\"Kohsān\";\"other\"\n\"1120483\";\"Koshan\";\"other\"\n\"1120483\";\"Kuhestan\";\"other\"\n\"1120483\";\"Kuhsan\";\"other\"\n\"1120483\";\"Kūhestān\";\"other\"\n\"1120483\";\"Кошан\";\"other\"\n\"1120487\";\"Tukzār\";\"main\"\n\"1120487\";\"Tukzar\";\"ascii\"\n\"1120487\";\"Kala Sangcharak\";\"other\"\n\"1120487\";\"Kala Sangchārak\";\"other\"\n\"1120487\";\"Qal`eh Sangcharek\";\"other\"\n\"1120487\";\"Qala Sangcharak\";\"other\"\n\"1120487\";\"Qal‘eh Sangchārek\";\"other\"\n\"1120487\";\"Sangcarak\";\"other\"\n\"1120487\";\"Sangcharak\";\"other\"\n\"1120487\";\"Sangcārak\";\"other\"\n\"1120487\";\"Takzar\";\"other\"\n\"1120487\";\"Tokzar\";\"other\"\n\"1120487\";\"Tokzār\";\"other\"\n\"1120487\";\"Tuksar\";\"other\"\n\"1120487\";\"Tākzār\";\"other\"\n\"1120487\";\"Токзар\";\"other\"\n\"1120487\";\"تکزار\";\"other\"\n\"1120711\";\"Zindah Jān\";\"main\"\n\"1120711\";\"Zindah Jan\";\"ascii\"\n\"1120711\";\"Fusanj\";\"other\"\n\"1120711\";\"Fushanj\";\"other\"\n\"1120711\";\"Fus̄anj\";\"other\"\n\"1120711\";\"Fūshanj\";\"other\"\n\"1120711\";\"Zendajan\";\"other\"\n\"1120711\";\"Zendeh Jan\";\"other\"\n\"1120711\";\"Zendeh Jān\";\"other\"\n\"1120711\";\"Zenḏajān\";\"other\"\n\"1120711\";\"Zindajan\";\"other\"\n\"1120711\";\"Zindajān\";\"other\"\n\"1120711\";\"زنده جان\";\"other\"\n\"1120863\";\"Zarghūn Shahr\";\"main\"\n\"1120863\";\"Zarghun Shahr\";\"ascii\"\n\"1120863\";\"Katawaz\";\"other\"\n\"1120863\";\"Katāwāz\";\"other\"\n\"1120863\";\"Khayr Kot\";\"other\"\n\"1120863\";\"Khayr Kut\";\"other\"\n\"1120863\";\"Khayr Kūṯ\";\"other\"\n\"1120863\";\"Khayṟ Kot\";\"other\"\n\"1120863\";\"Zaraghun Sahr\";\"other\"\n\"1120863\";\"Zaraghūn S̄ahr\";\"other\"\n\"1120863\";\"Zarghun Sahr\";\"other\"\n\"1120863\";\"Zargun Shahr\";\"other\"\n\"1120863\";\"Zargunsahr\";\"other\"\n\"1120863\";\"Zaṟghun Sahr\";\"other\"\n\"1120863\";\"Zaṟgūns̄ahr\";\"other\"\n\"1120879\";\"Zaṟah Sharan\";\"main\"\n\"1120879\";\"Zarah Sharan\";\"ascii\"\n\"1120879\";\"Sharan\";\"other\"\n\"1120879\";\"Sharnah\";\"other\"\n\"1120879\";\"Sherana\";\"other\"\n\"1120879\";\"Sheranna\";\"other\"\n\"1120879\";\"Zara Saran\";\"other\"\n\"1120879\";\"Zara Šaran\";\"other\"\n\"1120879\";\"Zara-Sharan\";\"other\"\n\"1120879\";\"Zareh Sharan\";\"other\"\n\"1120879\";\"زړه شرن\";\"other\"\n\"1120985\";\"Zaranj\";\"main\"\n\"1120985\";\"Zaranas\";\"other\"\n\"1120985\";\"Zarani\";\"other\"\n\"1120985\";\"Zhazang\";\"other\"\n\"1120985\";\"Зарани\";\"other\"\n\"1121271\";\"Yangī Qal‘ah\";\"main\"\n\"1121271\";\"Yangi Qal`ah\";\"ascii\"\n\"1121271\";\"Yangi Kala\";\"other\"\n\"1121271\";\"Yangi Qal`eh\";\"other\"\n\"1121271\";\"Yangi Qala\";\"other\"\n\"1121271\";\"Yangī Qal‘eh\";\"other\"\n\"1121271\";\"Yengi Qal`eh\";\"other\"\n\"1121271\";\"Yengī Qal‘eh\";\"other\"\n\"1121271\";\"ینگی قلعه\";\"other\"\n\"1122408\";\"Tīr Pul\";\"main\"\n\"1122408\";\"Tir Pul\";\"ascii\"\n\"1122408\";\"Tir Pol\";\"other\"\n\"1122408\";\"Tirpul\";\"other\"\n\"1122408\";\"Tīr Pol\";\"other\"\n\"1122408\";\"تیر پل\";\"other\"\n\"1122747\";\"Tarinkot\";\"main\"\n\"1122747\";\"Tarin Kot\";\"other\"\n\"1122747\";\"Tarin Kowt\";\"other\"\n\"1122747\";\"Tarīn Kowt\";\"other\"\n\"1122747\";\"Tarīn Kōṯ\";\"other\"\n\"1122747\";\"Taṟīn Kōt\";\"other\"\n\"1122747\";\"Terin Kowt\";\"other\"\n\"1122747\";\"Terīn Kowt\";\"other\"\n\"1122747\";\"Tirin\";\"other\"\n\"1122747\";\"Tirinkot\";\"other\"\n\"1122747\";\"Tori\";\"other\"\n\"1122747\";\"Tōrī\";\"other\"\n\"1122747\";\"Tōṟi\";\"other\"\n\"1122747\";\"tryn kwt\";\"other\"\n\"1122747\";\"ترين كوت\";\"other\"\n\"1122747\";\"توری\";\"other\"\n\"1123004\";\"Taloqan\";\"main\"\n\"1123004\";\"Khanabad\";\"other\"\n\"1123004\";\"Taikhan\";\"other\"\n\"1123004\";\"Taleqan\";\"other\"\n\"1123004\";\"Talikan\";\"other\"\n\"1123004\";\"Talikhan\";\"other\"\n\"1123004\";\"Taliqan\";\"other\"\n\"1123004\";\"Talkan\";\"other\"\n\"1123004\";\"Talugan\";\"other\"\n\"1123004\";\"Talukan\";\"other\"\n\"1123004\";\"Taluqan\";\"other\"\n\"1123004\";\"Tologan\";\"other\"\n\"1123004\";\"Tāleqān\";\"other\"\n\"1123004\";\"Tāloqān\";\"other\"\n\"1123004\";\"Tāluqān\";\"other\"\n\"1123004\";\"Tālīqān\";\"other\"\n\"1123004\";\"talqan\";\"other\"\n\"1123004\";\"Таликан\";\"other\"\n\"1123004\";\"تالقان\";\"other\"\n\"1123343\";\"Tagāw-Bāy\";\"main\"\n\"1123343\";\"Tagaw-Bay\";\"ascii\"\n\"1123343\";\"Bai\";\"other\"\n\"1123343\";\"Bay\";\"other\"\n\"1123343\";\"Bāy\";\"other\"\n\"1123343\";\"Tagaw-bay\";\"other\"\n\"1123343\";\"Tagaw-bāy\";\"other\"\n\"1123343\";\"Tagow Bay\";\"other\"\n\"1123343\";\"Tagow Bāy\";\"other\"\n\"1123343\";\"تگاو بای\";\"other\"\n\"1123424\";\"Tagāb\";\"main\"\n\"1123424\";\"Tagab\";\"ascii\"\n\"1123424\";\"Pagab\";\"other\"\n\"1123424\";\"Tagao\";\"other\"\n\"1123424\";\"تگاب\";\"other\"\n\"1125155\";\"Shīnḏanḏ\";\"main\"\n\"1125155\";\"Shindand\";\"ascii\"\n\"1125155\";\"Asfazar\";\"other\"\n\"1125155\";\"Asfazār\";\"other\"\n\"1125155\";\"Sabzavar\";\"other\"\n\"1125155\";\"Sabzavār\";\"other\"\n\"1125155\";\"Sabzawar\";\"other\"\n\"1125155\";\"Sabzevar\";\"other\"\n\"1125155\";\"Sabzevār\";\"other\"\n\"1125155\";\"Shīndand\";\"other\"\n\"1125155\";\"Sindand\";\"other\"\n\"1125155\";\"Šīndand\";\"other\"\n\"1125155\";\"Шинданд\";\"other\"\n\"1125155\";\"شيندند\";\"other\"\n\"1125155\";\"شیندند\";\"other\"\n\"1125155\";\"شینډنډ\";\"other\"\n\"1125444\";\"Shibirghan\";\"main\"\n\"1125444\";\"Seberghan\";\"other\"\n\"1125444\";\"Sebeṟghān\";\"other\"\n\"1125444\";\"Shahr-e Sheberghan\";\"other\"\n\"1125444\";\"Shahr-e Sheberghān\";\"other\"\n\"1125444\";\"Shayurgan\";\"other\"\n\"1125444\";\"Shebergan\";\"other\"\n\"1125444\";\"Sheberghan\";\"other\"\n\"1125444\";\"Sheberghān\";\"other\"\n\"1125444\";\"Sheberkhan\";\"other\"\n\"1125444\";\"Shefrogan\";\"other\"\n\"1125444\";\"Shibarghan\";\"other\"\n\"1125444\";\"Shibarghān\";\"other\"\n\"1125444\";\"Shibergan\";\"other\"\n\"1125444\";\"Шеберган\";\"other\"\n\"1125444\";\"شبرغن\";\"other\"\n\"1125896\";\"Shahrak\";\"main\"\n\"1125896\";\"Bati Dara\";\"other\"\n\"1125896\";\"Kala Shaharak\";\"other\"\n\"1125896\";\"Kala Shahrak\";\"other\"\n\"1125896\";\"Kala Shahārak\";\"other\"\n\"1125896\";\"Markaz-e Shahrak\";\"other\"\n\"1125896\";\"Qal`eh Shaharak\";\"other\"\n\"1125896\";\"Qal`eh-ye Bati Darrah\";\"other\"\n\"1125896\";\"Qala Bati Dara\";\"other\"\n\"1125896\";\"Qala Batī Dara\";\"other\"\n\"1125896\";\"Qala Shaharak\";\"other\"\n\"1125896\";\"Qala Shahārak\";\"other\"\n\"1125896\";\"Qala Sharak\";\"other\"\n\"1125896\";\"Qal‘eh Shahārak\";\"other\"\n\"1125896\";\"Qal‘eh-ye Bati Darrah\";\"other\"\n\"1125896\";\"Sahrak\";\"other\"\n\"1125896\";\"Shahrag\";\"other\"\n\"1125896\";\"Shakhrak\";\"other\"\n\"1125896\";\"Sharak\";\"other\"\n\"1125896\";\"Shāhrag\";\"other\"\n\"1125896\";\"Shāhrak\";\"other\"\n\"1125896\";\"Wala Shahrak\";\"other\"\n\"1125896\";\"Šahrak\";\"other\"\n\"1125896\";\"شهرک\";\"other\"\n\"1127110\";\"Sar-e Pul\";\"main\"\n\"1127110\";\"Sar-e Pol\";\"other\"\n\"1127110\";\"Sar-i-Pul\";\"other\"\n\"1127110\";\"Sari-Pul'\";\"other\"\n\"1127110\";\"Сари-Пуль\";\"other\"\n\"1127110\";\"سر پل\";\"other\"\n\"1127547\";\"Sangīn\";\"main\"\n\"1127547\";\"Sangin\";\"ascii\"\n\"1127547\";\"Sandzhin\";\"other\"\n\"1127547\";\"Sarban Qal`eh\";\"other\"\n\"1127547\";\"Sārbān Qal‘eh\";\"other\"\n\"1127547\";\"Санджин\";\"other\"\n\"1127547\";\"سنگین\";\"other\"\n\"1127628\";\"Sang-e Chārak\";\"main\"\n\"1127628\";\"Sang-e Charak\";\"ascii\"\n\"1127664\";\"Sang Atesh\";\"main\"\n\"1127664\";\"Sang Ates Mamaka\";\"other\"\n\"1127664\";\"Sang Atesh Mamakah\";\"other\"\n\"1127664\";\"Sang Atish Mamakah\";\"other\"\n\"1127664\";\"Sang Ātesh Māmākah\";\"other\"\n\"1127664\";\"Sang Ātes̄ Māmāka\";\"other\"\n\"1127664\";\"Sang Ātish Māmākah\";\"other\"\n\"1127664\";\"سنگ آتش ماماکه\";\"other\"\n\"1127768\";\"Āybak\";\"main\"\n\"1127768\";\"Aybak\";\"ascii\"\n\"1127768\";\"Aibak\";\"other\"\n\"1127768\";\"Eybak\";\"other\"\n\"1127768\";\"Haibak\";\"other\"\n\"1127768\";\"Samagan\";\"other\"\n\"1127768\";\"Samangan\";\"other\"\n\"1127768\";\"Samangān\";\"other\"\n\"1127768\";\"Саманган\";\"other\"\n\"1127768\";\"آیبک\";\"other\"\n\"1127768\";\"سمنگان\";\"other\"\n\"1128239\";\"Rūdbār\";\"main\"\n\"1128239\";\"Rudbar\";\"ascii\"\n\"1128265\";\"Rustāq\";\"main\"\n\"1128265\";\"Rustaq\";\"ascii\"\n\"1128265\";\"Rostaq\";\"other\"\n\"1128265\";\"Rostāq\";\"other\"\n\"1128265\";\"Rustak\";\"other\"\n\"1128265\";\"رستاق\";\"other\"\n\"1128265\";\"Ṟustāq\";\"other\"\n\"1129516\";\"Qarqīn\";\"main\"\n\"1129516\";\"Qarqin\";\"ascii\"\n\"1129516\";\"Karkin\";\"other\"\n\"1129516\";\"Karkin Bazar\";\"other\"\n\"1129516\";\"Kkhanika\";\"other\"\n\"1129516\";\"Qarkin\";\"other\"\n\"1129516\";\"Quarkin\";\"other\"\n\"1129516\";\"Кханика\";\"other\"\n\"1129516\";\"قرقین\";\"other\"\n\"1129636\";\"Qarchī Gak\";\"main\"\n\"1129636\";\"Qarchi Gak\";\"ascii\"\n\"1129636\";\"قرچی گک\";\"other\"\n\"1129648\";\"Qarāwul\";\"main\"\n\"1129648\";\"Qarawul\";\"ascii\"\n\"1129648\";\"Hazrat Imam\";\"other\"\n\"1129648\";\"Hazrat Imam Saiyid\";\"other\"\n\"1129648\";\"Hazrat Imām\";\"other\"\n\"1129648\";\"Karaul\";\"other\"\n\"1129648\";\"Qaravol\";\"other\"\n\"1129648\";\"Qarāvol\";\"other\"\n\"1129648\";\"Qaṟāwul\";\"other\"\n\"1129648\";\"قراول\";\"other\"\n\"1129678\";\"Qarah Bāgh\";\"main\"\n\"1129678\";\"Qarah Bagh\";\"ascii\"\n\"1129678\";\"Karabagh\";\"other\"\n\"1129678\";\"Karabāgh\";\"other\"\n\"1129678\";\"Kharabagh\";\"other\"\n\"1129678\";\"Qara Baqh\";\"other\"\n\"1129678\";\"Qarabagh\";\"other\"\n\"1129678\";\"Qarabāgh\";\"other\"\n\"1129678\";\"Qareh Bagh\";\"other\"\n\"1129678\";\"Qareh Bāgh\";\"other\"\n\"1129678\";\"Qaṟa Bāqh\";\"other\"\n\"1129678\";\"قره باغ\";\"other\"\n\"1129867\";\"Qala i Naw\";\"main\"\n\"1129867\";\"Kala Nao\";\"other\"\n\"1129867\";\"Kalai-Naw\";\"other\"\n\"1129867\";\"Kalayi-Nau\";\"other\"\n\"1129867\";\"Qal'eh Now\";\"other\"\n\"1129867\";\"Qal`a-i-Naw\";\"other\"\n\"1129867\";\"Qal`ah-ye Now\";\"other\"\n\"1129867\";\"Qal`eh Nau\";\"other\"\n\"1129867\";\"Qal`eh-ye Now\";\"other\"\n\"1129867\";\"Qala Nau\";\"other\"\n\"1129867\";\"Qala Naw\";\"other\"\n\"1129867\";\"Qala-e-Nau\";\"other\"\n\"1129867\";\"Qala-i-Nau\";\"other\"\n\"1129867\";\"Qalaenaw\";\"other\"\n\"1129867\";\"Qal‘a-i-Naw\";\"other\"\n\"1129867\";\"Qal‘ah-ye Now\";\"other\"\n\"1129867\";\"Qal‘eh Nau\";\"other\"\n\"1129867\";\"Qal‘eh-ye Now\";\"other\"\n\"1129867\";\"Qal’eh Now\";\"other\"\n\"1129867\";\"Qula-i-nau\";\"other\"\n\"1129867\";\"Shehr Qaleh\";\"other\"\n\"1129867\";\"Shehr Qeleh\";\"other\"\n\"1129867\";\"قلعۀ نو\";\"other\"\n\"1130065\";\"Qal‘ah-ye Shahr\";\"main\"\n\"1130065\";\"Qal`ah-ye Shahr\";\"ascii\"\n\"1130065\";\"Faoghan\";\"other\"\n\"1130065\";\"Fāoghān\";\"other\"\n\"1130065\";\"Kala Shahar\";\"other\"\n\"1130065\";\"Kala Shāhar\";\"other\"\n\"1130065\";\"Qal`a-i-Sahr\";\"other\"\n\"1130065\";\"Qal`eh Shahar\";\"other\"\n\"1130065\";\"Qal`eh Shahr\";\"other\"\n\"1130065\";\"Qala Sahr\";\"other\"\n\"1130065\";\"Qala Shahar\";\"other\"\n\"1130065\";\"Qala Shāhār\";\"other\"\n\"1130065\";\"Qala S̄ahṟ\";\"other\"\n\"1130065\";\"Qal‘a-i-S̄ahṟ\";\"other\"\n\"1130065\";\"Qal‘eh Shahr\";\"other\"\n\"1130065\";\"Qal‘eh Shāhār\";\"other\"\n\"1130065\";\"قلعۀ شهر\";\"other\"\n\"1130131\";\"Qalāt\";\"main\"\n\"1130131\";\"Qalat\";\"ascii\"\n\"1130131\";\"Kalat\";\"other\"\n\"1130131\";\"Kalat-i-Ghilzai\";\"other\"\n\"1130131\";\"Kalāt-i-Ghilzai\";\"other\"\n\"1130131\";\"qlat\";\"other\"\n\"1130131\";\"قلات\";\"other\"\n\"1130233\";\"Qādis\";\"main\"\n\"1130233\";\"Qadis\";\"ascii\"\n\"1130233\";\"Kadis\";\"other\"\n\"1130233\";\"Qaddis\";\"other\"\n\"1130233\";\"Qades\";\"other\"\n\"1130233\";\"Qādes\";\"other\"\n\"1130233\";\"Qāḏis\";\"other\"\n\"1130233\";\"قادس\";\"other\"\n\"1130490\";\"Pul-e Khumrī\";\"main\"\n\"1130490\";\"Pul-e Khumri\";\"ascii\"\n\"1130490\";\"Pol-e Khomri\";\"other\"\n\"1130490\";\"Pol-e Khomrī\";\"other\"\n\"1130490\";\"Pul-i-Khomri\";\"other\"\n\"1130490\";\"Pul-i-Khumri\";\"other\"\n\"1130490\";\"Pule Khumri\";\"other\"\n\"1130490\";\"Pule Khumṟi\";\"other\"\n\"1130490\";\"Puli-Khumri\";\"other\"\n\"1130490\";\"Пули-Хумри\";\"other\"\n\"1130490\";\"پل خمری\";\"other\"\n\"1130497\";\"Pul-e ‘Alam\";\"main\"\n\"1130497\";\"Pul-e `Alam\";\"ascii\"\n\"1130497\";\"Pol-e `Alam\";\"other\"\n\"1130497\";\"Pol-e ‘Alam\";\"other\"\n\"1130497\";\"Pul-i-Alam\";\"other\"\n\"1130497\";\"Pule Alam\";\"other\"\n\"1130497\";\"پلٔ علم\";\"other\"\n\"1131162\";\"Panjāb\";\"main\"\n\"1131162\";\"Panjab\";\"ascii\"\n\"1131162\";\"Pandzhab\";\"other\"\n\"1131162\";\"Pandzhau\";\"other\"\n\"1131162\";\"Panjao\";\"other\"\n\"1131162\";\"Panjaw\";\"other\"\n\"1131162\";\"Панджаб\";\"other\"\n\"1131316\";\"Paghmān\";\"main\"\n\"1131316\";\"Paghman\";\"ascii\"\n\"1131316\";\"Paghman Palace\";\"other\"\n\"1131316\";\"Pagman\";\"other\"\n\"1131316\";\"Пагман\";\"other\"\n\"1131462\";\"Uruzgān\";\"main\"\n\"1131462\";\"Uruzgan\";\"ascii\"\n\"1131462\";\"Orozgan\";\"other\"\n\"1131462\";\"Orozgān\";\"other\"\n\"1131462\";\"Oruzgan\";\"other\"\n\"1131462\";\"Orūzgān\";\"other\"\n\"1131462\";\"Qala-i-Hazar Qadam\";\"other\"\n\"1131462\";\"Qala-i-Hazār Qadam\";\"other\"\n\"1131462\";\"ارزگان\";\"other\"\n\"1131462\";\"اروزگان\";\"other\"\n\"1131627\";\"Nūristān\";\"main\"\n\"1131627\";\"Nuristan\";\"ascii\"\n\"1131627\";\"Nurestan\";\"other\"\n\"1131627\";\"Nūrestān\";\"other\"\n\"1132495\";\"Nahrīn\";\"main\"\n\"1132495\";\"Nahrin\";\"ascii\"\n\"1132495\";\"Nakhrin\";\"other\"\n\"1132495\";\"Narain\";\"other\"\n\"1132495\";\"Narin\";\"other\"\n\"1132495\";\"Narīn\";\"other\"\n\"1132495\";\"Нахрин\";\"other\"\n\"1132495\";\"نهرین\";\"other\"\n\"1132770\";\"Bala Murghab\";\"main\"\n\"1132770\";\"Bālā Murghāb\";\"other\"\n\"1132770\";\"Bālā Muṟghāb\";\"other\"\n\"1132770\";\"Morghab\";\"other\"\n\"1132770\";\"Morghāb\";\"other\"\n\"1132770\";\"بالا مرغاب\";\"other\"\n\"1133270\";\"Mīr Bachah Kōṯ\";\"main\"\n\"1133270\";\"Mir Bachah Kot\";\"ascii\"\n\"1133270\";\"Mir Bachcheh Kowt\";\"other\"\n\"1133270\";\"Mir Bachcheh Kut\";\"other\"\n\"1133270\";\"Mir Bachchen Kut\";\"other\"\n\"1133270\";\"Mir Bacheh Kowt\";\"other\"\n\"1133270\";\"Mir Bacheh Kut\";\"other\"\n\"1133270\";\"Mir Dacha Kote\";\"other\"\n\"1133270\";\"Mirbaca Kot\";\"other\"\n\"1133270\";\"Mirbachakot\";\"other\"\n\"1133270\";\"Mīr Bachcheh Kowt\";\"other\"\n\"1133270\";\"Mīr Bachcheh Kūt\";\"other\"\n\"1133270\";\"Mīr Bachchen Kūt\";\"other\"\n\"1133270\";\"Mīr Bacheh Kowt\";\"other\"\n\"1133270\";\"Mīr Bacheh Kūt\";\"other\"\n\"1133270\";\"Mīrbača Kot\";\"other\"\n\"1133270\";\"Sara-ye Khvajeh\";\"other\"\n\"1133270\";\"Sarai Khwaja\";\"other\"\n\"1133270\";\"Saray Khvajah\";\"other\"\n\"1133270\";\"Saray-Khwaja\";\"other\"\n\"1133270\";\"Saray-Khwajah\";\"other\"\n\"1133270\";\"Saraykhodzha\";\"other\"\n\"1133270\";\"Sarā-ye Khvājeh\";\"other\"\n\"1133270\";\"Sarāi Khwāja\";\"other\"\n\"1133270\";\"Sarāy Khvājah\";\"other\"\n\"1133270\";\"Sarāy-Khwājah\";\"other\"\n\"1133270\";\"Saṟāy-Khwāja\";\"other\"\n\"1133270\";\"myr bchh kwt\";\"other\"\n\"1133270\";\"سرای خواجه\";\"other\"\n\"1133270\";\"مير بچه كوت\";\"other\"\n\"1133270\";\"میر بچه کوټ\";\"other\"\n\"1133310\";\"Mīrābād\";\"main\"\n\"1133310\";\"Mirabad\";\"ascii\"\n\"1133310\";\"Mirabad-e Mohammad Akbar\";\"other\"\n\"1133310\";\"Mīrābād-e Moḩammad Akbar\";\"other\"\n\"1133310\";\"میر آباد\";\"other\"\n\"1133453\";\"Maymana\";\"main\"\n\"1133453\";\"Maimana\";\"other\"\n\"1133453\";\"Maimanah\";\"other\"\n\"1133453\";\"Maimāna\";\"other\"\n\"1133453\";\"Maīmanah\";\"other\"\n\"1133453\";\"Mejmene\";\"other\"\n\"1133453\";\"Meymaneh\";\"other\"\n\"1133453\";\"Mimana\";\"other\"\n\"1133453\";\"mai ma na\";\"other\"\n\"1133453\";\"mymnh\";\"other\"\n\"1133453\";\"Меймене\";\"other\"\n\"1133453\";\"میمنه\";\"other\"\n\"1133453\";\"迈马纳\";\"other\"\n\"1133574\";\"Mehtar Lām\";\"main\"\n\"1133574\";\"Mehtar Lam\";\"ascii\"\n\"1133574\";\"Laghman\";\"other\"\n\"1133574\";\"Mekhtarlam\";\"other\"\n\"1133574\";\"Metarlam\";\"other\"\n\"1133574\";\"Mir Talam Saheb Ziarat\";\"other\"\n\"1133574\";\"Mitarlam\";\"other\"\n\"1133574\";\"Miterlam\";\"other\"\n\"1133574\";\"Mīr Talām Şāḩeb Zīārat\";\"other\"\n\"1133574\";\"Nawar Lam\";\"other\"\n\"1133574\";\"Nāwar Lam\";\"other\"\n\"1133574\";\"Митарлам\";\"other\"\n\"1133616\";\"Mazār-e Sharīf\";\"main\"\n\"1133616\";\"Mazar-e Sharif\";\"ascii\"\n\"1133616\";\"Masar-e Scharif\";\"other\"\n\"1133616\";\"Mazar-e Sarif\";\"other\"\n\"1133616\";\"Mazar-e Šarif\";\"other\"\n\"1133616\";\"Mazar-e-Sharif\";\"other\"\n\"1133616\";\"Mazar-i Szarif\";\"other\"\n\"1133616\";\"Mazar-i-Sharif\";\"other\"\n\"1133616\";\"Mazare Srif\";\"other\"\n\"1133616\";\"Mazari Sharif\";\"other\"\n\"1133616\";\"Mazari-Sharif\";\"other\"\n\"1133616\";\"Mazār-e Šarīf\";\"other\"\n\"1133616\";\"Mazār-i-Sharīf\";\"other\"\n\"1133616\";\"Mazāre S̄rīf\";\"other\"\n\"1133616\";\"majaleu-isyalipeu\";\"other\"\n\"1133616\";\"mazarisharifu\";\"other\"\n\"1133616\";\"mzar shryf\";\"other\"\n\"1133616\";\"Мазари-Шариф\";\"other\"\n\"1133616\";\"مزار شريف\";\"other\"\n\"1133616\";\"مزار شریف\";\"other\"\n\"1133616\";\"マザーリシャリーフ\";\"other\"\n\"1133616\";\"마자르이샤리프\";\"other\"\n\"1134720\";\"Lashkar Gāh\";\"main\"\n\"1134720\";\"Lashkar Gah\";\"ascii\"\n\"1134720\";\"Bist\";\"other\"\n\"1134720\";\"Bost\";\"other\"\n\"1134720\";\"Bust\";\"other\"\n\"1134720\";\"Lashkargah Bust\";\"other\"\n\"1134720\";\"Lashkargakh\";\"other\"\n\"1134720\";\"Laskargah\";\"other\"\n\"1134720\";\"Las̲h̲kargāh Busṯ\";\"other\"\n\"1134720\";\"Laškargāh\";\"other\"\n\"1134720\";\"Nawab City\";\"other\"\n\"1134720\";\"لشكر گاه\";\"other\"\n\"1134720\";\"لښکرگاه بسټ\";\"other\"\n\"1134762\";\"Larkird\";\"main\"\n\"1134762\";\"Lar Gerd\";\"other\"\n\"1134762\";\"Largird\";\"other\"\n\"1134762\";\"Largirid\";\"other\"\n\"1134762\";\"Larkerd\";\"other\"\n\"1134762\";\"Лар Герд\";\"other\"\n\"1134762\";\"لرکرد\";\"other\"\n\"1135158\";\"Kushk\";\"main\"\n\"1135158\";\"Kusk\";\"other\"\n\"1135158\";\"Kus̄k\";\"other\"\n\"1135158\";\"Kūshk\";\"other\"\n\"1135158\";\"Кушк\";\"other\"\n\"1135158\";\"کشک\";\"other\"\n\"1135689\";\"Qunduz\";\"main\"\n\"1135689\";\"Kondoz\";\"other\"\n\"1135689\";\"Konduz\";\"other\"\n\"1135689\";\"Kondūz\";\"other\"\n\"1135689\";\"Kundus\";\"other\"\n\"1135689\";\"Kunduz\";\"other\"\n\"1135689\";\"Kundūz\";\"other\"\n\"1135689\";\"Qonduz\";\"other\"\n\"1135689\";\"Qondūz\";\"other\"\n\"1135689\";\"Qunḏūz\";\"other\"\n\"1135689\";\"Shahr-e Qondoz\";\"other\"\n\"1135689\";\"kndwz\";\"other\"\n\"1135689\";\"kndz\";\"other\"\n\"1135689\";\"kundo~uzu zhou\";\"other\"\n\"1135689\";\"kundujeu ju\";\"other\"\n\"1135689\";\"Кундуз\";\"other\"\n\"1135689\";\"قندز\";\"other\"\n\"1135689\";\"كندز\";\"other\"\n\"1135689\";\"کندوز\";\"other\"\n\"1135689\";\"クンドゥズ州\";\"other\"\n\"1135689\";\"쿤두즈 주\";\"other\"\n\"1136469\";\"Khōst\";\"main\"\n\"1136469\";\"Khost\";\"ascii\"\n\"1136469\";\"Khowst\";\"other\"\n\"1136469\";\"Matun\";\"other\"\n\"1136469\";\"Matūn\";\"other\"\n\"1136469\";\"khwst\";\"other\"\n\"1136469\";\"Хост\";\"other\"\n\"1136469\";\"خوست\";\"other\"\n\"1136469\";\"متون\";\"other\"\n\"1136575\";\"Tāshqurghān\";\"main\"\n\"1136575\";\"Tashqurghan\";\"ascii\"\n\"1136575\";\"Kholm\";\"other\"\n\"1136575\";\"Khulm\";\"other\"\n\"1136575\";\"Tashkurgan\";\"other\"\n\"1136575\";\"Tashkurghan\";\"other\"\n\"1136575\";\"Tashqorghan\";\"other\"\n\"1136575\";\"Tāshkurghān\";\"other\"\n\"1136575\";\"Tāshqorghān\";\"other\"\n\"1136575\";\"Ташкурган\";\"other\"\n\"1136575\";\"تاشقرغان\";\"other\"\n\"1136863\";\"Khāsh\";\"main\"\n\"1136863\";\"Khash\";\"ascii\"\n\"1136863\";\"Khas\";\"other\"\n\"1136863\";\"Khās̄\";\"other\"\n\"1136863\";\"خاش\";\"other\"\n\"1137148\";\"Khandūd\";\"main\"\n\"1137148\";\"Khandud\";\"ascii\"\n\"1137148\";\"Khandud (1)\";\"other\"\n\"1137148\";\"Khandut\";\"other\"\n\"1137148\";\"Khanḏūḏ (1)\";\"other\"\n\"1137168\";\"Khanabad\";\"main\"\n\"1137168\";\"Khānābād\";\"other\"\n\"1137168\";\"Ханабад\";\"other\"\n\"1137168\";\"خان آباد\";\"other\"\n\"1137807\";\"Karukh\";\"main\"\n\"1137807\";\"Karokh\";\"other\"\n\"1137807\";\"Karrukh\";\"other\"\n\"1137807\";\"Kaṟukh\";\"other\"\n\"1137807\";\"کرخ\";\"other\"\n\"1138336\";\"Kandahār\";\"main\"\n\"1138336\";\"Kandahar\";\"ascii\"\n\"1138336\";\"Candahar\";\"other\"\n\"1138336\";\"Kandagar\";\"other\"\n\"1138336\";\"Kandaharo\";\"other\"\n\"1138336\";\"Kandhar\";\"other\"\n\"1138336\";\"Qandahar\";\"other\"\n\"1138336\";\"Qandahār\";\"other\"\n\"1138336\";\"Qanḏahāṟ\";\"other\"\n\"1138336\";\"kan da ha\";\"other\"\n\"1138336\";\"kandaharu\";\"other\"\n\"1138336\";\"qndhar\";\"other\"\n\"1138336\";\"Кандагар\";\"other\"\n\"1138336\";\"קנדאהר\";\"other\"\n\"1138336\";\"قندهار\";\"other\"\n\"1138336\";\"كندهار\";\"other\"\n\"1138336\";\"カンダハール\";\"other\"\n\"1138336\";\"坎大哈\";\"other\"\n\"1138958\";\"Kabul\";\"main\"\n\"1138958\";\"Cabool\";\"other\"\n\"1138958\";\"Caboul\";\"other\"\n\"1138958\";\"Cabul\";\"other\"\n\"1138958\";\"Cabul - kabl\";\"other\"\n\"1138958\";\"Cabul - کابل\";\"other\"\n\"1138958\";\"Cabúl\";\"other\"\n\"1138958\";\"Caubul\";\"other\"\n\"1138958\";\"Kabil\";\"other\"\n\"1138958\";\"Kaboel\";\"other\"\n\"1138958\";\"Kabol\";\"other\"\n\"1138958\";\"Kaboul\";\"other\"\n\"1138958\";\"Kabula\";\"other\"\n\"1138958\";\"Kabulas\";\"other\"\n\"1138958\";\"Kabuli\";\"other\"\n\"1138958\";\"Kabulo\";\"other\"\n\"1138958\";\"Kabura\";\"other\"\n\"1138958\";\"Kabúl\";\"other\"\n\"1138958\";\"Kabûl\";\"other\"\n\"1138958\";\"Kampoul\";\"other\"\n\"1138958\";\"Kobul\";\"other\"\n\"1138958\";\"Kubha\";\"other\"\n\"1138958\";\"Kábul\";\"other\"\n\"1138958\";\"Kābol\";\"other\"\n\"1138958\";\"kabl\";\"other\"\n\"1138958\";\"kabul\";\"other\"\n\"1138958\";\"kabula\";\"other\"\n\"1138958\";\"kabuli\";\"other\"\n\"1138958\";\"kaburu\";\"other\"\n\"1138958\";\"kabwl\";\"other\"\n\"1138958\";\"kapul\";\"other\"\n\"1138958\";\"ke bu er\";\"other\"\n\"1138958\";\"khabul\";\"other\"\n\"1138958\";\"Καμπούλ\";\"other\"\n\"1138958\";\"Кабул\";\"other\"\n\"1138958\";\"Кобул\";\"other\"\n\"1138958\";\"Քաբուլ\";\"other\"\n\"1138958\";\"קאבול\";\"other\"\n\"1138958\";\"كابل\";\"other\"\n\"1138958\";\"كابول\";\"other\"\n\"1138958\";\"کابل\";\"other\"\n\"1138958\";\"काबुल\";\"other\"\n\"1138958\";\"কাবুল\";\"other\"\n\"1138958\";\"காபூல்\";\"other\"\n\"1138958\";\"คาบูล\";\"other\"\n\"1138958\";\"ཀ་བུར\";\"other\"\n\"1138958\";\"ქაბული\";\"other\"\n\"1138958\";\"ካቡል\";\"other\"\n\"1138958\";\"カブール\";\"other\"\n\"1138958\";\"カーブル\";\"other\"\n\"1138958\";\"喀布尔\";\"other\"\n\"1138958\";\"카불\";\"other\"\n\"1139085\";\"Jarm\";\"main\"\n\"1139085\";\"Jorm\";\"other\"\n\"1139085\";\"Jurm\";\"other\"\n\"1139085\";\"Jurn\";\"other\"\n\"1139085\";\"Shahr-e Jorm\";\"other\"\n\"1139085\";\"jrm\";\"other\"\n\"1139085\";\"جرم\";\"other\"\n\"1139335\";\"Jawand\";\"main\"\n\"1139335\";\"Javand\";\"other\"\n\"1139335\";\"Jowand\";\"other\"\n\"1139715\";\"Jalālābād\";\"main\"\n\"1139715\";\"Jalalabad\";\"ascii\"\n\"1139715\";\"Djelalabad\";\"other\"\n\"1139715\";\"Dschalalabad\";\"other\"\n\"1139715\";\"Dzalalabad\";\"other\"\n\"1139715\";\"Dzhalalabad\";\"other\"\n\"1139715\";\"Dzhelalabad\";\"other\"\n\"1139715\";\"Dżalalabad\";\"other\"\n\"1139715\";\"Jalakot\";\"other\"\n\"1139715\";\"Jalal-Kut\";\"other\"\n\"1139715\";\"Jalalkoat\";\"other\"\n\"1139715\";\"Jalalkot\";\"other\"\n\"1139715\";\"Jalālkot\";\"other\"\n\"1139715\";\"Jelalabad\";\"other\"\n\"1139715\";\"Tarun City\";\"other\"\n\"1139715\";\"jalalabada\";\"other\"\n\"1139715\";\"jlal abad\";\"other\"\n\"1139715\";\"Джалалабад\";\"other\"\n\"1139715\";\"جلال آباد\";\"other\"\n\"1139715\";\"جلال‌آباد\";\"other\"\n\"1139715\";\"জালালাবাদ\";\"other\"\n\"1139807\";\"Jabal os Saraj\";\"main\"\n\"1139807\";\"Djabal-ul-Seradj\";\"other\"\n\"1139807\";\"Dzhabal'-Ussaradzh\";\"other\"\n\"1139807\";\"Dzhabal’-Ussaradzh\";\"other\"\n\"1139807\";\"Jabal Saraj\";\"other\"\n\"1139807\";\"Jabal os Sarāj\";\"other\"\n\"1139807\";\"Jabal us Siraj\";\"other\"\n\"1139807\";\"Jabal us Sirāj\";\"other\"\n\"1139807\";\"Jabal-us-Sirai\";\"other\"\n\"1139807\";\"Jabalussaraj\";\"other\"\n\"1139807\";\"Jabalussaṟāj\";\"other\"\n\"1139807\";\"Jabl-us-Seraj\";\"other\"\n\"1139807\";\"Jabl-us-Siraj\";\"other\"\n\"1139807\";\"Jabul Saraj\";\"other\"\n\"1139807\";\"Jibal-as-Seraj\";\"other\"\n\"1139807\";\"Parwan\";\"other\"\n\"1139807\";\"jbl alsraj\";\"other\"\n\"1139807\";\"جبل السراج\";\"other\"\n\"1140026\";\"Herāt\";\"main\"\n\"1140026\";\"Herat\";\"ascii\"\n\"1140026\";\"Gerat\";\"other\"\n\"1140026\";\"Hérat\";\"other\"\n\"1140026\";\"Kherat\";\"other\"\n\"1140026\";\"Shahr-e Herat\";\"other\"\n\"1140026\";\"Shahr-e Herāt\";\"other\"\n\"1140026\";\"he la te\";\"other\"\n\"1140026\";\"herato\";\"other\"\n\"1140026\";\"hrat\";\"other\"\n\"1140026\";\"Герат\";\"other\"\n\"1140026\";\"Херат\";\"other\"\n\"1140026\";\"هرات\";\"other\"\n\"1140026\";\"ヘラート\";\"other\"\n\"1140026\";\"赫拉特\";\"other\"\n\"1141089\";\"Ghormach\";\"main\"\n\"1141089\";\"Garmak\";\"other\"\n\"1141089\";\"Ghormac\";\"other\"\n\"1141089\";\"Ghormāch\";\"other\"\n\"1141089\";\"Ghowrmach\";\"other\"\n\"1141089\";\"Ghowrmāch\";\"other\"\n\"1141089\";\"Ghōrmāc\";\"other\"\n\"1141089\";\"Ghōrmāch\";\"other\"\n\"1141089\";\"ghwrmch\";\"other\"\n\"1141089\";\"غورماچ\";\"other\"\n\"1141089\";\"غورمچ\";\"other\"\n\"1141269\";\"Ghazni\";\"main\"\n\"1141269\";\"Gazni\";\"other\"\n\"1141269\";\"Ghaznī\";\"other\"\n\"1141269\";\"Shahr-e Ghazni\";\"other\"\n\"1141269\";\"Shahr-e Ghaznī\";\"other\"\n\"1141269\";\"gazni\";\"other\"\n\"1141269\";\"gazuni\";\"other\"\n\"1141269\";\"ghznt\";\"other\"\n\"1141269\";\"ghznyn\";\"other\"\n\"1141269\";\"Газни\";\"other\"\n\"1141269\";\"غزنة\";\"other\"\n\"1141269\";\"غزنی\";\"other\"\n\"1141269\";\"غزنین\";\"other\"\n\"1141269\";\"ガズニー\";\"other\"\n\"1141540\";\"Girishk\";\"main\"\n\"1141540\";\"Gereshk\";\"other\"\n\"1141540\";\"Geresk\";\"other\"\n\"1141540\";\"Gerešk\";\"other\"\n\"1141540\";\"Nahr-e Saraj\";\"other\"\n\"1141540\";\"Nahr-e Sarāj\";\"other\"\n\"1141540\";\"Герешк\";\"other\"\n\"1141540\";\"گرشک\";\"other\"\n\"1141857\";\"Gardēz\";\"main\"\n\"1141857\";\"Gardez\";\"ascii\"\n\"1141857\";\"Gardeyz\";\"other\"\n\"1141857\";\"Gardiz\";\"other\"\n\"1141857\";\"Gardêz\";\"other\"\n\"1141857\";\"Gardīz\";\"other\"\n\"1141857\";\"Gaṟḏēz\";\"other\"\n\"1141857\";\"Гардез\";\"other\"\n\"1141857\";\"گرديز\";\"other\"\n\"1141857\";\"گردېز\";\"other\"\n\"1142170\";\"Fayzabad\";\"main\"\n\"1142170\";\"Faizabad\";\"other\"\n\"1142170\";\"Faizābād\";\"other\"\n\"1142170\";\"Fajzabad\";\"other\"\n\"1142170\";\"Faydz Abad\";\"other\"\n\"1142170\";\"Fayḏẕ Ābāḏ\";\"other\"\n\"1142170\";\"Fazelabad\";\"other\"\n\"1142170\";\"Faīẕābād\";\"other\"\n\"1142170\";\"Feyzabad\";\"other\"\n\"1142170\";\"Feyẕābād\";\"other\"\n\"1142170\";\"fyd abad\";\"other\"\n\"1142170\";\"Файзабад\";\"other\"\n\"1142170\";\"فیض آباد\";\"other\"\n\"1142239\";\"Farkhār\";\"main\"\n\"1142239\";\"Farkhar\";\"ascii\"\n\"1142239\";\"فرخار\";\"other\"\n\"1142264\";\"Farāh\";\"main\"\n\"1142264\";\"Farah\";\"ascii\"\n\"1142264\";\"Farakh\";\"other\"\n\"1142264\";\"فراه\";\"other\"\n\"1142404\";\"Islām Qal‘ah\";\"main\"\n\"1142404\";\"Islam Qal`ah\";\"ascii\"\n\"1142404\";\"Eslam Qal`eh\";\"other\"\n\"1142404\";\"Eslamqal`a\";\"other\"\n\"1142404\";\"Eslamqal‘a\";\"other\"\n\"1142404\";\"Eslām Qal‘eh\";\"other\"\n\"1142404\";\"Islam Kala\";\"other\"\n\"1142404\";\"Islam Killa\";\"other\"\n\"1142404\";\"Islam Qala\";\"other\"\n\"1142404\";\"Islām Kala\";\"other\"\n\"1142404\";\"Islām Qala\";\"other\"\n\"1142404\";\"Kafar Qal`eh\";\"other\"\n\"1142404\";\"Kafir Kala\";\"other\"\n\"1142404\";\"Kafir Qala\";\"other\"\n\"1142404\";\"Kāfar Qal‘eh\";\"other\"\n\"1142545\";\"Imām Şāḩib\";\"main\"\n\"1142545\";\"Imam Sahib\";\"ascii\"\n\"1142545\";\"Emam Saheb\";\"other\"\n\"1142545\";\"Emām Şāḩeb\";\"other\"\n\"1142545\";\"Hazrat\";\"other\"\n\"1142545\";\"Imam Saheb\";\"other\"\n\"1142545\";\"Imamsakhib\";\"other\"\n\"1142545\";\"Imām Sāẖeb\";\"other\"\n\"1142545\";\"Khwaja\";\"other\"\n\"1142545\";\"Khwaja Imam Saiyid\";\"other\"\n\"1142545\";\"Khwaja Iman Saiyid\";\"other\"\n\"1142545\";\"Khwāja Imām Saiyid\";\"other\"\n\"1142545\";\"Khwāja Imān Saiyid\";\"other\"\n\"1142545\";\"امام صاحب\";\"other\"\n\"1143838\";\"Dasht-e Archī\";\"main\"\n\"1143838\";\"Dasht-e Archi\";\"ascii\"\n\"1143874\";\"Darẕāb\";\"main\"\n\"1143874\";\"Darzab\";\"ascii\"\n\"1143874\";\"Durzab\";\"other\"\n\"1143874\";\"Durzāb\";\"other\"\n\"1143901\";\"Markaz-e Ḩukūmatī Darwayshān\";\"main\"\n\"1143901\";\"Markaz-e Hukumati Darwayshan\";\"ascii\"\n\"1143901\";\"Darvishan\";\"other\"\n\"1143901\";\"Darvīshān\";\"other\"\n\"1143901\";\"Darwesan\";\"other\"\n\"1143901\";\"Markaze Hokumati Darwesan\";\"other\"\n\"1143901\";\"Maṟkaze Hokūmatī Darwēsān\";\"other\"\n\"1143901\";\"مرکز حکومتی درویشان\";\"other\"\n\"1143901\";\"Ḏaṟwes̄ān\";\"other\"\n\"1144559\";\"Ḩukūmatī Dahānah-ye Ghōrī\";\"main\"\n\"1144559\";\"Hukumati Dahanah-ye Ghori\";\"ascii\"\n\"1144559\";\"Dahana\";\"other\"\n\"1144559\";\"Dahana Ghori\";\"other\"\n\"1144559\";\"Dahana-i-Ghori\";\"other\"\n\"1144559\";\"Dahanae Ghori\";\"other\"\n\"1144559\";\"Dahaneh-ye Ghowri\";\"other\"\n\"1144559\";\"Dahaneh-ye Ghowṟī\";\"other\"\n\"1144559\";\"Dahna\";\"other\"\n\"1144559\";\"Dahāna\";\"other\"\n\"1144559\";\"Dananeh-ye Ghowri\";\"other\"\n\"1144559\";\"Dananeh-ye Ghowrī\";\"other\"\n\"1144559\";\"Hokumati Dahana-i-Ghori Dahana\";\"other\"\n\"1144559\";\"Hokūmatī Ḏahana-i-Ghōṟi Dahana\";\"other\"\n\"1144559\";\"حکومتی دهانۀ غوری\";\"other\"\n\"1144559\";\"Ḏahana-i-Ghōṟi\";\"other\"\n\"1144559\";\"Ḏahanae Ghōṟi\";\"other\"\n\"1144942\";\"Chīras\";\"main\"\n\"1144942\";\"Chiras\";\"ascii\"\n\"1144942\";\"Ciras\";\"other\"\n\"1144942\";\"Cīras\";\"other\"\n\"1145352\";\"Charikar\";\"main\"\n\"1145352\";\"Caharikar\";\"other\"\n\"1145352\";\"Carikar\";\"other\"\n\"1145352\";\"Chaharikar\";\"other\"\n\"1145352\";\"Chahārīkār\";\"other\"\n\"1145352\";\"Chairkar\";\"other\"\n\"1145352\";\"Charekar\";\"other\"\n\"1145352\";\"Chāirkār\";\"other\"\n\"1145352\";\"Chārīkār\";\"other\"\n\"1145352\";\"Cāṟikāṟ\";\"other\"\n\"1145352\";\"Čahārikār\";\"other\"\n\"1145352\";\"Чарикар\";\"other\"\n\"1145352\";\"چاريكار\";\"other\"\n\"1145866\";\"Chahār Burj\";\"main\"\n\"1145866\";\"Chahar Burj\";\"ascii\"\n\"1145866\";\"Car Burj\";\"other\"\n\"1145866\";\"Chahar Borj\";\"other\"\n\"1145866\";\"Chahar Burjak\";\"other\"\n\"1145866\";\"Chahār Borj\";\"other\"\n\"1145866\";\"Chahār Burjak\";\"other\"\n\"1145866\";\"Char Burj\";\"other\"\n\"1145866\";\"Charburdzh\";\"other\"\n\"1145866\";\"Chār Burj\";\"other\"\n\"1145866\";\"chhar brj\";\"other\"\n\"1145866\";\"Čār Burj\";\"other\"\n\"1145866\";\"چهار برج\";\"other\"\n\"1146822\";\"Bāsowul\";\"main\"\n\"1146822\";\"Basowul\";\"ascii\"\n\"1146822\";\"Basavul'\";\"other\"\n\"1146822\";\"Basavul’\";\"other\"\n\"1146822\";\"Basawul\";\"other\"\n\"1146822\";\"Bāsawul\";\"other\"\n\"1146822\";\"Mohmand Darrah\";\"other\"\n\"1146822\";\"باسول\";\"other\"\n\"1147066\";\"Barakī Barak\";\"main\"\n\"1147066\";\"Baraki Barak\";\"ascii\"\n\"1147066\";\"Baraki Burak\";\"other\"\n\"1147066\";\"Barakibarak\";\"other\"\n\"1147066\";\"Barqi Barq\";\"other\"\n\"1147242\";\"Bāmyān\";\"main\"\n\"1147242\";\"Bamyan\";\"ascii\"\n\"1147242\";\"Bamian\";\"other\"\n\"1147242\";\"Bamiyan\";\"other\"\n\"1147242\";\"Bāmīān\";\"other\"\n\"1147242\";\"Kala Sarkari\";\"other\"\n\"1147242\";\"Qal`a Sarkarit\";\"other\"\n\"1147242\";\"Qala Sarkari\";\"other\"\n\"1147242\";\"Qala Sarkāri\";\"other\"\n\"1147242\";\"Qal‘a Sarkārit\";\"other\"\n\"1147290\";\"Balkh\";\"main\"\n\"1147290\";\"Bactra\";\"other\"\n\"1147290\";\"Bactresh\";\"other\"\n\"1147290\";\"Bakhtar\";\"other\"\n\"1147290\";\"Balch\";\"other\"\n\"1147290\";\"Balh\";\"other\"\n\"1147290\";\"Balhika\";\"other\"\n\"1147290\";\"Bamik\";\"other\"\n\"1147290\";\"Bazirabad\";\"other\"\n\"1147290\";\"Bkahdi\";\"other\"\n\"1147290\";\"Bākhtar\";\"other\"\n\"1147290\";\"Vazirabad\";\"other\"\n\"1147290\";\"ba er he\";\"other\"\n\"1147290\";\"blkh\";\"other\"\n\"1147290\";\"Балх\";\"other\"\n\"1147290\";\"Вазирабад\";\"other\"\n\"1147290\";\"بلخ\";\"other\"\n\"1147290\";\"巴尔赫\";\"other\"\n\"1147540\";\"Baghlān\";\"main\"\n\"1147540\";\"Baghlan\";\"ascii\"\n\"1147540\";\"Baghlan - bghlan\";\"other\"\n\"1147540\";\"Baghlan - بغلان\";\"other\"\n\"1147540\";\"Baghlin\";\"other\"\n\"1147540\";\"Baglan\";\"other\"\n\"1147540\";\"Bagolaggo\";\"other\"\n\"1147540\";\"Sana `Ati\";\"other\"\n\"1147540\";\"Sana`ati\";\"other\"\n\"1147540\";\"bghlan\";\"other\"\n\"1147540\";\"Şanā ‘Ati\";\"other\"\n\"1147540\";\"Şanā‘atī\";\"other\"\n\"1147540\";\"Баглан\";\"other\"\n\"1147540\";\"بغلان\";\"other\"\n\"1147540\";\"صناعتی\";\"other\"\n\"1147851\";\"Ḩukūmatī Azrow\";\"main\"\n\"1147851\";\"Hukumati Azrow\";\"ascii\"\n\"1147851\";\"Azra\";\"other\"\n\"1147851\";\"Azrah\";\"other\"\n\"1147851\";\"Azraw\";\"other\"\n\"1147851\";\"Azreh\";\"other\"\n\"1147851\";\"Azrow\";\"other\"\n\"1147851\";\"Azru\";\"other\"\n\"1147851\";\"Azrū\";\"other\"\n\"1147851\";\"Azṟa\";\"other\"\n\"1147851\";\"Azṟaw\";\"other\"\n\"1147851\";\"Hazrah\";\"other\"\n\"1147851\";\"Hazro\";\"other\"\n\"1147851\";\"Hokumati Azraw\";\"other\"\n\"1147851\";\"Hokumati Azrow\";\"other\"\n\"1147851\";\"Khukumati-Azrau\";\"other\"\n\"1147851\";\"Āzrah\";\"other\"\n\"1147851\";\"Āzreh\";\"other\"\n\"1147851\";\"ازرو\";\"other\"\n\"1147851\";\"حکومتی ازرو\";\"other\"\n\"1147851\";\"Ḩokūmatī Azṟaw\";\"other\"\n\"1147851\";\"Ḩokūmatī Āzrow\";\"other\"\n\"1148106\";\"Ārt Khwājah\";\"main\"\n\"1148106\";\"Art Khwajah\";\"ascii\"\n\"1148106\";\"Art Khvajeh (1)\";\"other\"\n\"1148106\";\"At Khvajeh\";\"other\"\n\"1148106\";\"At Khwaja\";\"other\"\n\"1148106\";\"Āt Khvājeh\";\"other\"\n\"1148106\";\"Āt Khwāja\";\"other\"\n\"1148106\";\"Āṟt Khvājeh (1)\";\"other\"\n\"1148106\";\"آرت خواجه\";\"other\"\n\"1148205\";\"Āsmār\";\"main\"\n\"1148205\";\"Asmar\";\"ascii\"\n\"1148205\";\"Asma\";\"other\"\n\"1148205\";\"Asmār\";\"other\"\n\"1148205\";\"asmar\";\"other\"\n\"1148205\";\"Āsmā\";\"other\"\n\"1148205\";\"آسمار\";\"other\"\n\"1148205\";\"اسمار\";\"other\"\n\"1148268\";\"Ashkāsham\";\"main\"\n\"1148268\";\"Ashkasham\";\"ascii\"\n\"1148311\";\"Asadābād\";\"main\"\n\"1148311\";\"Asadabad\";\"ascii\"\n\"1148311\";\"Assad-Abad\";\"other\"\n\"1148311\";\"Caghasaray\";\"other\"\n\"1148311\";\"Chagha Serai\";\"other\"\n\"1148311\";\"Chagha-Sari\";\"other\"\n\"1148311\";\"Chaghah Saray\";\"other\"\n\"1148311\";\"Chaghah Sarāy\";\"other\"\n\"1148311\";\"Chaghasarai\";\"other\"\n\"1148311\";\"Chaghasaray\";\"other\"\n\"1148311\";\"Chaghasarāy\";\"other\"\n\"1148311\";\"Chagsarai\";\"other\"\n\"1148311\";\"Chegheh Saray\";\"other\"\n\"1148311\";\"Chegheh Sarāy\";\"other\"\n\"1148311\";\"Chigha Sarai\";\"other\"\n\"1148311\";\"Chigha Sarāi\";\"other\"\n\"1148311\";\"Chigha Serai\";\"other\"\n\"1148311\";\"Chigkhasaray\";\"other\"\n\"1148311\";\"Čaghasarāy\";\"other\"\n\"1148311\";\"Асадабад\";\"other\"\n\"1148311\";\"اسد آباد\";\"other\"\n\"1148390\";\"Arghestān\";\"main\"\n\"1148390\";\"Arghestan\";\"ascii\"\n\"1148390\";\"Arghastan\";\"other\"\n\"1148390\";\"Aṟghastān\";\"other\"\n\"1148658\";\"Andkhōy\";\"main\"\n\"1148658\";\"Andkhoy\";\"ascii\"\n\"1148658\";\"Andkhoi\";\"other\"\n\"1148658\";\"Andkhui\";\"other\"\n\"1148658\";\"Andkhvoy\";\"other\"\n\"1148658\";\"Andkhōī\";\"other\"\n\"1148658\";\"Andkhūi\";\"other\"\n\"1148658\";\"Ankhoi\";\"other\"\n\"1148658\";\"اندخوی\";\"other\"\n\"1148709\";\"Anār Darah\";\"main\"\n\"1148709\";\"Anar Darah\";\"ascii\"\n\"1148709\";\"Anar Dara\";\"other\"\n\"1148709\";\"Anar Darrah\";\"other\"\n\"1148709\";\"Anar Darreh\";\"other\"\n\"1148709\";\"Anardara\";\"other\"\n\"1148709\";\"Anardarra\";\"other\"\n\"1148709\";\"Anār Darrah\";\"other\"\n\"1148709\";\"Anār Darreh\";\"other\"\n\"1148709\";\"Anārdarra\";\"other\"\n\"1148709\";\"Saykh Abad\";\"other\"\n\"1148709\";\"Shaykh Abad\";\"other\"\n\"1148709\";\"Shaykh Ābād\";\"other\"\n\"1148709\";\"S̄aykh Ābāḏ\";\"other\"\n\"1148709\";\"Анар Дара\";\"other\"\n\"1148709\";\"انار دره\";\"other\"\n\"1148709\";\"شیخ آباد\";\"other\"\n\"1149052\";\"‘Alāqahdārī Deh-e Shū\";\"main\"\n\"1149052\";\"`Alaqahdari Deh-e Shu\";\"ascii\"\n\"1149052\";\"`Alaqadari Dehe Su\";\"other\"\n\"1149052\";\"`Alaqehdari Deh-e Shu\";\"other\"\n\"1149052\";\"علاقهداری ده شو\";\"other\"\n\"1149052\";\"‘Alāqaḏāṟī Dehe S̄u\";\"other\"\n\"1149052\";\"‘Alāqehdārī Deh-e Shū\";\"other\"\n\"1456960\";\"Maīdān Shahr\";\"main\"\n\"1456960\";\"Maidan Shahr\";\"ascii\"\n\"1456960\";\"Maidan Shar\";\"other\"\n\"1456960\";\"Maydanshakhr\";\"other\"\n\"1456960\";\"Maīdān S̲h̲ār\";\"other\"\n\"1456960\";\"Meydan Shahr\";\"other\"\n\"1456960\";\"Meydān Shahr\";\"other\"\n\"1465349\";\"Lab-Sar\";\"main\"\n\"1469706\";\"Markaz-e Woluswalī-ye Āchīn\";\"main\"\n\"1469706\";\"Markaz-e Woluswali-ye Achin\";\"ascii\"\n\"1469706\";\"Achin\";\"other\"\n\"1469706\";\"Achin-Ulusvali\";\"other\"\n\"1469706\";\"Acin Oluswali\";\"other\"\n\"1469706\";\"Āchīn\";\"other\"\n\"1469706\";\"Āčīn Oluswāli\";\"other\"\n\"1469706\";\"آچين\";\"other\"\n\"6692413\";\"Cool űrhajó\";\"main\"\n\"6692413\";\"Cool urhajo\";\"ascii\"\n\"7104361\";\"Markaz-e Woluswālī-ye Yōsuf Khēl\";\"main\"\n\"7104361\";\"Markaz-e Woluswali-ye Yosuf Khel\";\"ascii\"\n\"7110596\";\"Markaz-e Woluswālī-ye Nārī\";\"main\"\n\"7110596\";\"Markaz-e Woluswali-ye Nari\";\"ascii\"\n\"3576022\";\"Saint John’s\";\"main\"\n\"3576022\";\"Saint John's\";\"ascii\"\n\"3576022\";\"Saint John\";\"other\"\n\"3576022\";\"Sent Dzonsas\";\"other\"\n\"3576022\";\"Sent Džonsas\";\"other\"\n\"3576022\";\"Sent Tzons\";\"other\"\n\"3576022\";\"Sent-Dzhons\";\"other\"\n\"3576022\";\"St Johns\";\"other\"\n\"3576022\";\"St. John's\";\"other\"\n\"3576022\";\"St.John.s\";\"other\"\n\"3576022\";\"seinteujonseu\";\"other\"\n\"3576022\";\"sentojonzu\";\"other\"\n\"3576022\";\"sheng yue han\";\"other\"\n\"3576022\";\"sheng yue han shi\";\"other\"\n\"3576022\";\"snt g'wns\";\"other\"\n\"3576022\";\"Σεντ Τζονς\";\"other\"\n\"3576022\";\"Сент-Джонс\";\"other\"\n\"3576022\";\"סנט ג'ונס\";\"other\"\n\"3576022\";\"ሴንት ጆንስ፥ አንቲጋ እና ባርቡዳ\";\"other\"\n\"3576022\";\"セントジョンズ\";\"other\"\n\"3576022\";\"圣约翰\";\"other\"\n\"3576022\";\"圣约翰市\";\"other\"\n\"3576022\";\"세인트존스\";\"other\"\n\"3576050\";\"Potters Village\";\"main\"\n\"3576050\";\"Potters\";\"other\"\n\"3576050\";\"Potters-Villadzh\";\"other\"\n\"3576050\";\"Поттерс-Вилладж\";\"other\"\n\"3576144\";\"Liberta\";\"main\"\n\"3576144\";\"Liberta Village\";\"other\"\n\"3576144\";\"Либерта\";\"other\"\n\"3576361\";\"Bolans\";\"main\"\n\"3576361\";\"Boland Village\";\"other\"\n\"3576361\";\"Bolands\";\"other\"\n\"3576397\";\"All Saints\";\"main\"\n\"3576397\";\"All Saints Village\";\"other\"\n\"3573374\";\"The Valley\";\"main\"\n\"3573374\";\"De Balei\";\"other\"\n\"3573374\";\"Valley\";\"other\"\n\"3573374\";\"Valli\";\"other\"\n\"3573374\";\"bare\";\"other\"\n\"3573374\";\"deobaelli\";\"other\"\n\"3573374\";\"Δε Βάλεϊ\";\"other\"\n\"3573374\";\"Валли\";\"other\"\n\"3573374\";\"ואלי\";\"other\"\n\"3573374\";\"バレー\";\"other\"\n\"3573374\";\"더밸리\";\"other\"\n\"3573380\";\"Stoney Ground\";\"main\"\n\"363243\";\"Sarandë\";\"main\"\n\"363243\";\"Sarande\";\"ascii\"\n\"363243\";\"Agioi\";\"other\"\n\"363243\";\"Agioi Saranta\";\"other\"\n\"363243\";\"Ayii Saranda\";\"other\"\n\"363243\";\"Hagios Saranta\";\"other\"\n\"363243\";\"Porto Edda\";\"other\"\n\"363243\";\"Santa Quaranta\";\"other\"\n\"363243\";\"Santi Quaranta\";\"other\"\n\"363243\";\"Saranda\";\"other\"\n\"363243\";\"Saranta\";\"other\"\n\"363243\";\"Zogaj\";\"other\"\n\"363243\";\"Άγιοι Σαράντα\";\"other\"\n\"363243\";\"Саранда\";\"other\"\n\"363320\";\"Konispol\";\"main\"\n\"363320\";\"Conispolis\";\"other\"\n\"363320\";\"Konispoje\";\"other\"\n\"363320\";\"Konispol'\";\"other\"\n\"363320\";\"Konispoli\";\"other\"\n\"363320\";\"Konispolis\";\"other\"\n\"363320\";\"Конисполь\";\"other\"\n\"363383\";\"Delvinë\";\"main\"\n\"363383\";\"Delvine\";\"ascii\"\n\"363383\";\"Del'vina\";\"other\"\n\"363383\";\"Delvina\";\"other\"\n\"363383\";\"Delvino\";\"other\"\n\"363383\";\"Delvinon\";\"other\"\n\"363383\";\"Zelvinou\";\"other\"\n\"363383\";\"Дельвина\";\"other\"\n\"781443\";\"Tepelenë\";\"main\"\n\"781443\";\"Tepelene\";\"ascii\"\n\"781443\";\"Tepelen\";\"other\"\n\"781443\";\"Tepelena\";\"other\"\n\"781443\";\"Tepeleni\";\"other\"\n\"781443\";\"Тепелена\";\"other\"\n\"781919\";\"Përrenjas-Fshat\";\"main\"\n\"781919\";\"Perrenjas-Fshat\";\"ascii\"\n\"781919\";\"Prrenjas-Fshat\";\"other\"\n\"781919\";\"Prrenjasi\";\"other\"\n\"781979\";\"Poliçan\";\"main\"\n\"781979\";\"Polican\";\"ascii\"\n\"781979\";\"Policani\";\"other\"\n\"781979\";\"Polichan\";\"other\"\n\"781979\";\"Poliçani\";\"other\"\n\"781979\";\"Поличан\";\"other\"\n\"782061\";\"Peshkopi\";\"main\"\n\"782061\";\"Dibra\";\"other\"\n\"782061\";\"Dibre\";\"other\"\n\"782061\";\"Dibrë\";\"other\"\n\"782061\";\"Peshkepija\";\"other\"\n\"782061\";\"Peshkepije\";\"other\"\n\"782061\";\"Peshkopeja\";\"other\"\n\"782061\";\"Peshkopia\";\"other\"\n\"782061\";\"Peshkopie\";\"other\"\n\"782061\";\"Peshkopija\";\"other\"\n\"782061\";\"Peshkopije\";\"other\"\n\"782061\";\"Peshkopië\";\"other\"\n\"782061\";\"Peshkopla\";\"other\"\n\"782061\";\"Peshkëpijë\";\"other\"\n\"782061\";\"Piscopeia\";\"other\"\n\"782061\";\"Pishcopeja\";\"other\"\n\"782061\";\"Pishkopeja\";\"other\"\n\"782061\";\"pei shen ke bi\";\"other\"\n\"782061\";\"peshukopi\";\"other\"\n\"782061\";\"Пешкопеја\";\"other\"\n\"782061\";\"Пешкопия\";\"other\"\n\"782061\";\"ペシュコピ\";\"other\"\n\"782061\";\"佩什科比\";\"other\"\n\"782070\";\"Përmet\";\"main\"\n\"782070\";\"Permet\";\"ascii\"\n\"782070\";\"Permeti\";\"other\"\n\"782070\";\"Premet\";\"other\"\n\"782070\";\"Premete\";\"other\"\n\"782070\";\"Premeti\";\"other\"\n\"782070\";\"Premetē\";\"other\"\n\"782070\";\"Prëmet\";\"other\"\n\"782070\";\"Пермет\";\"other\"\n\"782393\";\"Maliq\";\"main\"\n\"782393\";\"Malik\";\"other\"\n\"782393\";\"Maliqi\";\"other\"\n\"782393\";\"Малик\";\"other\"\n\"782523\";\"Libohovë\";\"main\"\n\"782523\";\"Libohove\";\"ascii\"\n\"782523\";\"Libhova\";\"other\"\n\"782523\";\"Libohov\";\"other\"\n\"782523\";\"Libohova\";\"other\"\n\"782523\";\"Libohova Qender\";\"other\"\n\"782523\";\"Libohova Qendër\";\"other\"\n\"782523\";\"Libohovo\";\"other\"\n\"782523\";\"Libokhova\";\"other\"\n\"782523\";\"Libokhovon\";\"other\"\n\"782523\";\"Либохова\";\"other\"\n\"782535\";\"Leskovik\";\"main\"\n\"782535\";\"Leskoviku\";\"other\"\n\"782535\";\"Leskoviqi\";\"other\"\n\"782535\";\"Liascovik\";\"other\"\n\"782535\";\"Liascovitsi\";\"other\"\n\"782535\";\"Liaskoviki\";\"other\"\n\"782535\";\"Ljakovici\";\"other\"\n\"782535\";\"Лесковик\";\"other\"\n\"782632\";\"Kurbnesh\";\"main\"\n\"782632\";\"Kurbnesha\";\"other\"\n\"782632\";\"Kurbneshi\";\"other\"\n\"782632\";\"Курбнеш\";\"other\"\n\"782661\";\"Kukës\";\"main\"\n\"782661\";\"Kukes\";\"ascii\"\n\"782661\";\"Cucus\";\"other\"\n\"782661\";\"Kukesi\";\"other\"\n\"782661\";\"Kuks\";\"other\"\n\"782661\";\"Kuksi\";\"other\"\n\"782661\";\"Kukuch\";\"other\"\n\"782661\";\"Kukus\";\"other\"\n\"782661\";\"Kukësi\";\"other\"\n\"782661\";\"Кукес\";\"other\"\n\"782661\";\"Кукъс\";\"other\"\n\"782756\";\"Korçë\";\"main\"\n\"782756\";\"Korce\";\"ascii\"\n\"782756\";\"Corce\";\"other\"\n\"782756\";\"Corcë\";\"other\"\n\"782756\";\"Coritsa\";\"other\"\n\"782756\";\"Coritza\";\"other\"\n\"782756\";\"Coriza\";\"other\"\n\"782756\";\"Corizza\";\"other\"\n\"782756\";\"Corriza\";\"other\"\n\"782756\";\"Ghiortsa Corcia\";\"other\"\n\"782756\";\"Gorica\";\"other\"\n\"782756\";\"Goritsa\";\"other\"\n\"782756\";\"Korca\";\"other\"\n\"782756\";\"Korcha\";\"other\"\n\"782756\";\"Korche\";\"other\"\n\"782756\";\"Korcza\";\"other\"\n\"782756\";\"Korica\";\"other\"\n\"782756\";\"Korice\";\"other\"\n\"782756\";\"Koritsa\";\"other\"\n\"782756\";\"Koritza\";\"other\"\n\"782756\";\"Korrca\";\"other\"\n\"782756\";\"Korrce\";\"other\"\n\"782756\";\"Korrça\";\"other\"\n\"782756\";\"Korrçë\";\"other\"\n\"782756\";\"Korytsa\";\"other\"\n\"782756\";\"Korça\";\"other\"\n\"782756\";\"Körice\";\"other\"\n\"782756\";\"Корча\";\"other\"\n\"782843\";\"Këlcyrë\";\"main\"\n\"782843\";\"Kelcyre\";\"ascii\"\n\"782843\";\"Kel'cira\";\"other\"\n\"782843\";\"Kelcyra\";\"other\"\n\"782843\";\"Kelcyres\";\"other\"\n\"782843\";\"Kelcyrës\";\"other\"\n\"782843\";\"Kleisoura\";\"other\"\n\"782843\";\"Klisura\";\"other\"\n\"782843\";\"Këlcyra\";\"other\"\n\"782843\";\"Кельцира\";\"other\"\n\"783059\";\"Gramsh\";\"main\"\n\"783059\";\"Gramish\";\"other\"\n\"783059\";\"Gramsci\";\"other\"\n\"783059\";\"Gramshi\";\"other\"\n\"783059\";\"Грамш\";\"other\"\n\"783148\";\"Gjirokastër\";\"main\"\n\"783148\";\"Gjirokaster\";\"ascii\"\n\"783148\";\"Agirocastro\";\"other\"\n\"783148\";\"Arghirocastru\";\"other\"\n\"783148\";\"Arghyrocastro\";\"other\"\n\"783148\";\"Argirocastro\";\"other\"\n\"783148\";\"Argirokastro\";\"other\"\n\"783148\";\"Argyrokastro\";\"other\"\n\"783148\";\"Argyrokastron\";\"other\"\n\"783148\";\"Aryirokastro\";\"other\"\n\"783148\";\"Aryirokastron\";\"other\"\n\"783148\";\"Ergheni\";\"other\"\n\"783148\";\"Ergiri\";\"other\"\n\"783148\";\"Ghinokastre\";\"other\"\n\"783148\";\"Girokastra\";\"other\"\n\"783148\";\"Girokastro\";\"other\"\n\"783148\";\"Gjinokaster\";\"other\"\n\"783148\";\"Gjinokastra\";\"other\"\n\"783148\";\"Gjinokastre\";\"other\"\n\"783148\";\"Gjinokastrer\";\"other\"\n\"783148\";\"Gjinokastër\";\"other\"\n\"783148\";\"Gjirokastra\";\"other\"\n\"783148\";\"Gjirokastre\";\"other\"\n\"783148\";\"Gjirokastrë\";\"other\"\n\"783148\";\"ji nuo ka si te\";\"other\"\n\"783148\";\"Αργυρόκαστρο\";\"other\"\n\"783148\";\"Ђирокастра\";\"other\"\n\"783148\";\"Аргирокастро\";\"other\"\n\"783148\";\"Гирокастра\";\"other\"\n\"783148\";\"Гирокастро\";\"other\"\n\"783148\";\"吉诺卡斯特\";\"other\"\n\"783214\";\"Fushë-Arrëz\";\"main\"\n\"783214\";\"Fushe-Arrez\";\"ascii\"\n\"783214\";\"Arres\";\"other\"\n\"783214\";\"Arrës\";\"other\"\n\"783214\";\"Arsi\";\"other\"\n\"783214\";\"Arst\";\"other\"\n\"783214\";\"Fusha e Arezit\";\"other\"\n\"783214\";\"Fusha e Arrezit\";\"other\"\n\"783214\";\"Fusha e Arrëzit\";\"other\"\n\"783214\";\"Fusha e Arsit\";\"other\"\n\"783214\";\"Fusha e Arëzit\";\"other\"\n\"783214\";\"Fusha-Arres\";\"other\"\n\"783214\";\"Fusha-e-Arresit\";\"other\"\n\"783214\";\"Fushe Arrezi\";\"other\"\n\"783214\";\"Fushe e Arrezit\";\"other\"\n\"783214\";\"Fushe-Ares\";\"other\"\n\"783214\";\"Fushe-Aresi\";\"other\"\n\"783214\";\"Fushe-Arezi\";\"other\"\n\"783214\";\"Fushe-Arezit\";\"other\"\n\"783214\";\"Fushe-Arresi\";\"other\"\n\"783214\";\"Fushë e Arrëzit\";\"other\"\n\"783214\";\"Fushë-Arrësi\";\"other\"\n\"783214\";\"Fushë-Arëzi\";\"other\"\n\"783214\";\"Fushë-Arëzit\";\"other\"\n\"783214\";\"Фуша-Аррес\";\"other\"\n\"783259\";\"Ersekë\";\"main\"\n\"783259\";\"Erseke\";\"ascii\"\n\"783259\";\"Colonia\";\"other\"\n\"783259\";\"Ehrseka\";\"other\"\n\"783259\";\"Erseg Giatseg\";\"other\"\n\"783259\";\"Ersek\";\"other\"\n\"783259\";\"Erseka\";\"other\"\n\"783259\";\"Kolonija\";\"other\"\n\"783259\";\"Kolonije\";\"other\"\n\"783259\";\"Kolonijë\";\"other\"\n\"783259\";\"Kolonja\";\"other\"\n\"783259\";\"Kolonje\";\"other\"\n\"783259\";\"Kolonjë\";\"other\"\n\"783259\";\"Эрсека\";\"other\"\n\"783263\";\"Elbasan\";\"main\"\n\"783263\";\"Ehl'basan\";\"other\"\n\"783263\";\"Elbasani\";\"other\"\n\"783263\";\"Elbassan\";\"other\"\n\"783263\";\"Эльбасан\";\"other\"\n\"783408\";\"Çorovodë\";\"main\"\n\"783408\";\"Corovode\";\"ascii\"\n\"783408\";\"Cerevoda\";\"other\"\n\"783408\";\"Cerevode\";\"other\"\n\"783408\";\"Cerevodë\";\"other\"\n\"783408\";\"Chorovoda\";\"other\"\n\"783408\";\"Corovoda\";\"other\"\n\"783408\";\"Gjavan\";\"other\"\n\"783408\";\"Zhaban\";\"other\"\n\"783408\";\"Çorovoda\";\"other\"\n\"783408\";\"Чоровода\";\"other\"\n\"783493\";\"Burrel\";\"main\"\n\"783493\";\"Burela\";\"other\"\n\"783493\";\"Burele\";\"other\"\n\"783493\";\"Bureli\";\"other\"\n\"783493\";\"Burelë\";\"other\"\n\"783493\";\"Burrel'\";\"other\"\n\"783493\";\"Burrele\";\"other\"\n\"783493\";\"Burreli\";\"other\"\n\"783493\";\"Burrelë\";\"other\"\n\"783493\";\"Буррель\";\"other\"\n\"783508\";\"Bulqizë\";\"main\"\n\"783508\";\"Bulqize\";\"ascii\"\n\"783508\";\"Bul'kiza\";\"other\"\n\"783508\";\"Bulkiza\";\"other\"\n\"783508\";\"Bulqiza\";\"other\"\n\"783508\";\"Bulquize\";\"other\"\n\"783508\";\"Булькиза\";\"other\"\n\"783606\";\"Bilisht\";\"main\"\n\"783606\";\"Biclishta\";\"other\"\n\"783606\";\"Biglista\";\"other\"\n\"783606\";\"Biklishta\";\"other\"\n\"783606\";\"Bilishte\";\"other\"\n\"783606\";\"Bilishti\";\"other\"\n\"783606\";\"Bilishtë\";\"other\"\n\"783606\";\"Bilisthi\";\"other\"\n\"783606\";\"Билишти\";\"other\"\n\"832209\";\"Librazhd-Qendër\";\"main\"\n\"832209\";\"Librazhd-Qender\";\"ascii\"\n\"832209\";\"Hala\";\"other\"\n\"832209\";\"Librazhd Qendre\";\"other\"\n\"832209\";\"Librazhd Qëndre\";\"other\"\n\"3183708\";\"Vorë\";\"main\"\n\"3183708\";\"Vore\";\"ascii\"\n\"3183708\";\"Vora\";\"other\"\n\"3183708\";\"Vorra\";\"other\"\n\"3183708\";\"Vorre\";\"other\"\n\"3183708\";\"Vorrë\";\"other\"\n\"3183708\";\"Вора\";\"other\"\n\"3183719\";\"Vlorë\";\"main\"\n\"3183719\";\"Vlore\";\"ascii\"\n\"3183719\";\"Au'lon\";\"other\"\n\"3183719\";\"Au’lon\";\"other\"\n\"3183719\";\"Avlon\";\"other\"\n\"3183719\";\"Avlona\";\"other\"\n\"3183719\";\"Avlonya\";\"other\"\n\"3183719\";\"Vallona\";\"other\"\n\"3183719\";\"Valona\";\"other\"\n\"3183719\";\"Vl'ora\";\"other\"\n\"3183719\";\"Vljora\";\"other\"\n\"3183719\";\"Vlona\";\"other\"\n\"3183719\";\"Vlone\";\"other\"\n\"3183719\";\"Vlonë\";\"other\"\n\"3183719\";\"Vlora\";\"other\"\n\"3183719\";\"Vļora\";\"other\"\n\"3183719\";\"Валона\";\"other\"\n\"3183719\";\"Вльора\";\"other\"\n\"3183719\";\"Влёра\";\"other\"\n\"3183814\";\"Ura Vajgurore\";\"main\"\n\"3183814\";\"Ur'e Hasan Beut\";\"other\"\n\"3183814\";\"Ura Asan Beut\";\"other\"\n\"3183814\";\"Ura e Hasan Beut\";\"other\"\n\"3183814\";\"Ura-Khasan-Beut\";\"other\"\n\"3183814\";\"Ura-Vaygurore\";\"other\"\n\"3183814\";\"Ure-Vajgurore\";\"other\"\n\"3183814\";\"Urë-Vajgurore\";\"other\"\n\"3183814\";\"Ur’e Hasan Beut\";\"other\"\n\"3183814\";\"Yefira Hassan Beut\";\"other\"\n\"3183875\";\"Tirana\";\"main\"\n\"3183875\";\"Tiran\";\"other\"\n\"3183875\";\"Tirane\";\"other\"\n\"3183875\";\"Tirano\";\"other\"\n\"3183875\";\"Tiranë\";\"other\"\n\"3183875\";\"Tirāna\";\"other\"\n\"3183875\";\"Tyrana\";\"other\"\n\"3183875\";\"Tyranna\";\"other\"\n\"3183875\";\"Tírana\";\"other\"\n\"3183875\";\"de la na\";\"other\"\n\"3183875\";\"tilana\";\"other\"\n\"3183875\";\"tirana\";\"other\"\n\"3183875\";\"tyrana\";\"other\"\n\"3183875\";\"tyrnh\";\"other\"\n\"3183875\";\"Τίρανα\";\"other\"\n\"3183875\";\"Тирана\";\"other\"\n\"3183875\";\"Тырана\";\"other\"\n\"3183875\";\"טירנה\";\"other\"\n\"3183875\";\"تىرانا\";\"other\"\n\"3183875\";\"تيرانا\";\"other\"\n\"3183875\";\"ティラナ\";\"other\"\n\"3183875\";\"地拉那\";\"other\"\n\"3183875\";\"티라나\";\"other\"\n\"3184081\";\"Shkodër\";\"main\"\n\"3184081\";\"Shkoder\";\"ascii\"\n\"3184081\";\"Iskodra\";\"other\"\n\"3184081\";\"Scutari\";\"other\"\n\"3184081\";\"Shkodra\";\"other\"\n\"3184081\";\"Skadar\";\"other\"\n\"3184081\";\"Skodra\";\"other\"\n\"3184081\";\"Szkodra\";\"other\"\n\"3184081\";\"sqwdr\";\"other\"\n\"3184081\";\"İşkodra\";\"other\"\n\"3184081\";\"Škodra\";\"other\"\n\"3184081\";\"Скадар\";\"other\"\n\"3184081\";\"Шкодер\";\"other\"\n\"3184081\";\"Шкодра\";\"other\"\n\"3184081\";\"שקודר\";\"other\"\n\"3184099\";\"Shijak\";\"main\"\n\"3184099\";\"Bazar Sciak\";\"other\"\n\"3184099\";\"San Giacomo\";\"other\"\n\"3184099\";\"Shejak\";\"other\"\n\"3184099\";\"Shejaku\";\"other\"\n\"3184099\";\"Shijaku\";\"other\"\n\"3184099\";\"Shjak\";\"other\"\n\"3184099\";\"Shyaku\";\"other\"\n\"3184099\";\"Shëjaku\";\"other\"\n\"3184099\";\"Sjak\";\"other\"\n\"3184099\";\"Šjak\";\"other\"\n\"3184099\";\"Шияку\";\"other\"\n\"3184136\";\"Shëngjin\";\"main\"\n\"3184136\";\"Shengjin\";\"ascii\"\n\"3184136\";\"Saint Giovanni di Medua\";\"other\"\n\"3184136\";\"San Giovanni di Medua\";\"other\"\n\"3184136\";\"San Njin\";\"other\"\n\"3184136\";\"Sen Dovani di Medua\";\"other\"\n\"3184136\";\"Sh'njini\";\"other\"\n\"3184136\";\"Shen Ghen\";\"other\"\n\"3184136\";\"Shengin\";\"other\"\n\"3184136\";\"Shengjini\";\"other\"\n\"3184136\";\"Shëngjini\";\"other\"\n\"3184136\";\"Sh’njini\";\"other\"\n\"3184136\";\"Sveti Jovan Medovski\";\"other\"\n\"3184136\";\"Šen Ðovani di Medua\";\"other\"\n\"3184136\";\"Шенгин\";\"other\"\n\"3184197\";\"Selenicë\";\"main\"\n\"3184197\";\"Selenice\";\"ascii\"\n\"3184197\";\"Selenic\";\"other\"\n\"3184197\";\"Selenica\";\"other\"\n\"3184197\";\"Selenitsa\";\"other\"\n\"3184197\";\"Seleniza\";\"other\"\n\"3184197\";\"Selenizza\";\"other\"\n\"3184197\";\"Селеница\";\"other\"\n\"3184238\";\"Rubik\";\"main\"\n\"3184238\";\"Rrubig\";\"other\"\n\"3184238\";\"Rrubigu\";\"other\"\n\"3184238\";\"Rrumbiku\";\"other\"\n\"3184238\";\"Rubig\";\"other\"\n\"3184238\";\"Rubiku\";\"other\"\n\"3184238\";\"Рубик\";\"other\"\n\"3184252\";\"Rrogozhinë\";\"main\"\n\"3184252\";\"Rrogozhine\";\"ascii\"\n\"3184252\";\"Rogozhina\";\"other\"\n\"3184252\";\"Rogozhine\";\"other\"\n\"3184252\";\"Rogozhinë\";\"other\"\n\"3184252\";\"Rogozin\";\"other\"\n\"3184252\";\"Rogozina\";\"other\"\n\"3184252\";\"Rogožin\";\"other\"\n\"3184252\";\"Rrogozesa\";\"other\"\n\"3184252\";\"Rrogozhina\";\"other\"\n\"3184252\";\"Rrogozësa\";\"other\"\n\"3184252\";\"Rrogzhine\";\"other\"\n\"3184252\";\"Рогожина\";\"other\"\n\"3184264\";\"Rrëshen\";\"main\"\n\"3184264\";\"Rreshen\";\"ascii\"\n\"3184264\";\"Reshen\";\"other\"\n\"3184264\";\"Resheni\";\"other\"\n\"3184264\";\"Rresheni\";\"other\"\n\"3184264\";\"Rrshen\";\"other\"\n\"3184264\";\"Rrsheni\";\"other\"\n\"3184264\";\"Rshen\";\"other\"\n\"3184264\";\"Rsheni\";\"other\"\n\"3184264\";\"Rëshen\";\"other\"\n\"3184264\";\"Rëshëni\";\"other\"\n\"3184264\";\"Решен\";\"other\"\n\"3184290\";\"Roskovec\";\"main\"\n\"3184290\";\"Roscovec\";\"other\"\n\"3184290\";\"Roskoveci\";\"other\"\n\"3184290\";\"Rroskoveci\";\"other\"\n\"3184290\";\"Treg i Frasherit\";\"other\"\n\"3184290\";\"Tregu-Frasherit\";\"other\"\n\"3184290\";\"Росковец\";\"other\"\n\"3184388\";\"Pukë\";\"main\"\n\"3184388\";\"Puke\";\"ascii\"\n\"3184388\";\"Puca\";\"other\"\n\"3184388\";\"Puka\";\"other\"\n\"3184388\";\"Puka Katund\";\"other\"\n\"3184388\";\"Пука\";\"other\"\n\"3184497\";\"Peqin\";\"main\"\n\"3184497\";\"Pecin\";\"other\"\n\"3184497\";\"Pekin\";\"other\"\n\"3184497\";\"Pekini\";\"other\"\n\"3184497\";\"Pekinj\";\"other\"\n\"3184497\";\"Peqini\";\"other\"\n\"3184497\";\"Peqinj\";\"other\"\n\"3184497\";\"Пекин\";\"other\"\n\"3184517\";\"Patos Fshat\";\"main\"\n\"3184517\";\"Patosi Fshat\";\"other\"\n\"3184575\";\"Orikum\";\"main\"\n\"3184575\";\"Orik\";\"other\"\n\"3184575\";\"Oriku\";\"other\"\n\"3184575\";\"Orikumi\";\"other\"\n\"3184575\";\"Орикум\";\"other\"\n\"3184702\";\"Milot\";\"main\"\n\"3184702\";\"Milet\";\"other\"\n\"3184702\";\"Miljoti\";\"other\"\n\"3184702\";\"Miloti\";\"other\"\n\"3184702\";\"Милет\";\"other\"\n\"3184743\";\"Memaliaj\";\"main\"\n\"3184743\";\"Mamaliaga\";\"other\"\n\"3184743\";\"Mamaliaj\";\"other\"\n\"3184743\";\"Memalianji\";\"other\"\n\"3184743\";\"Мемалиай\";\"other\"\n\"3184806\";\"Mamurras\";\"main\"\n\"3184806\";\"Mamuras\";\"other\"\n\"3184806\";\"Mamurasi\";\"other\"\n\"3184806\";\"Mamuraz\";\"other\"\n\"3184806\";\"Mamurrasi\";\"other\"\n\"3184806\";\"Murrizaj\";\"other\"\n\"3184806\";\"Мамуррас\";\"other\"\n\"3184862\";\"Lushnjë\";\"main\"\n\"3184862\";\"Lushnje\";\"ascii\"\n\"3184862\";\"Ljushna Cod a Gomares\";\"other\"\n\"3184862\";\"Ljushnja\";\"other\"\n\"3184862\";\"Ljusnje\";\"other\"\n\"3184862\";\"Ljušnje\";\"other\"\n\"3184862\";\"Lousnia\";\"other\"\n\"3184862\";\"Lushne\";\"other\"\n\"3184862\";\"Lushnja\";\"other\"\n\"3184862\";\"Lusnje\";\"other\"\n\"3184862\";\"Lušnje\";\"other\"\n\"3184862\";\"Люшня\";\"other\"\n\"3184935\";\"Lezhë\";\"main\"\n\"3184935\";\"Lezhe\";\"ascii\"\n\"3184935\";\"Alessio\";\"other\"\n\"3184935\";\"Lesh\";\"other\"\n\"3184935\";\"Leshe\";\"other\"\n\"3184935\";\"Leshi\";\"other\"\n\"3184935\";\"Lezh\";\"other\"\n\"3184935\";\"Lezha\";\"other\"\n\"3184935\";\"Lisi\";\"other\"\n\"3184935\";\"Ljes\";\"other\"\n\"3184935\";\"Lješ\";\"other\"\n\"3184935\";\"Lyesh\";\"other\"\n\"3184935\";\"Лежа\";\"other\"\n\"3185012\";\"Laç\";\"main\"\n\"3185012\";\"Lac\";\"ascii\"\n\"3185012\";\"Laci\";\"other\"\n\"3185012\";\"Lak\";\"other\"\n\"3185012\";\"Latsch\";\"other\"\n\"3185012\";\"Laçi\";\"other\"\n\"3185012\";\"Лак\";\"other\"\n\"3185060\";\"Kuçovë\";\"main\"\n\"3185060\";\"Kucove\";\"ascii\"\n\"3185060\";\"Kuchova\";\"other\"\n\"3185060\";\"Kucova\";\"other\"\n\"3185060\";\"Kuçova\";\"other\"\n\"3185060\";\"Petrolia\";\"other\"\n\"3185060\";\"Qyteti Stalin\";\"other\"\n\"3185060\";\"Stalin\";\"other\"\n\"3185060\";\"Кучова\";\"other\"\n\"3185082\";\"Krujë\";\"main\"\n\"3185082\";\"Kruje\";\"ascii\"\n\"3185082\";\"Akcehisar\";\"other\"\n\"3185082\";\"Akçehisar\";\"other\"\n\"3185082\";\"Croia\";\"other\"\n\"3185082\";\"Cruja\";\"other\"\n\"3185082\";\"Krna\";\"other\"\n\"3185082\";\"Kroia\";\"other\"\n\"3185082\";\"Kroja\";\"other\"\n\"3185082\";\"Kroya\";\"other\"\n\"3185082\";\"Kroïa\";\"other\"\n\"3185082\";\"Krue\";\"other\"\n\"3185082\";\"Krueja\";\"other\"\n\"3185082\";\"Kruja\";\"other\"\n\"3185082\";\"Круе\";\"other\"\n\"3185087\";\"Krrabë\";\"main\"\n\"3185087\";\"Krrabe\";\"ascii\"\n\"3185087\";\"Kerraba\";\"other\"\n\"3185087\";\"Kerrabe\";\"other\"\n\"3185087\";\"Kraba e Vogel\";\"other\"\n\"3185087\";\"Kraba e Vogël\";\"other\"\n\"3185087\";\"Krraba\";\"other\"\n\"3185087\";\"Krraba Vogel\";\"other\"\n\"3185087\";\"Krraba e Vogel\";\"other\"\n\"3185087\";\"Krraba e Vogël\";\"other\"\n\"3185087\";\"Krrabe e Vog\";\"other\"\n\"3185087\";\"Kërraba\";\"other\"\n\"3185087\";\"Kërrabë\";\"other\"\n\"3185133\";\"Koplik\";\"main\"\n\"3185133\";\"Koplik Poster\";\"other\"\n\"3185133\";\"Koplik Pošter\";\"other\"\n\"3185133\";\"Koplik i Poshtem\";\"other\"\n\"3185133\";\"Koplik i Poshtëm\";\"other\"\n\"3185133\";\"Kopliku\";\"other\"\n\"3185133\";\"Kopliku i Poshtem\";\"other\"\n\"3185133\";\"Kopliku i Poshtëm\";\"other\"\n\"3185133\";\"Kopliku-e Poshtem\";\"other\"\n\"3185133\";\"Kopliku-e Poshtëm\";\"other\"\n\"3185133\";\"Коплик\";\"other\"\n\"3185211\";\"Kavajë\";\"main\"\n\"3185211\";\"Kavaje\";\"ascii\"\n\"3185211\";\"Cavaia\";\"other\"\n\"3185211\";\"Cavaja\";\"other\"\n\"3185211\";\"Kavaia\";\"other\"\n\"3185211\";\"Kavaj\";\"other\"\n\"3185211\";\"Kavaja\";\"other\"\n\"3185211\";\"Kavaïa\";\"other\"\n\"3185211\";\"Кавайе\";\"other\"\n\"3185211\";\"Кавая\";\"other\"\n\"3185270\";\"Kamëz\";\"main\"\n\"3185270\";\"Kamez\";\"ascii\"\n\"3185270\";\"Camza\";\"other\"\n\"3185270\";\"Kambeza\";\"other\"\n\"3185270\";\"Kambëza\";\"other\"\n\"3185270\";\"Kamza\";\"other\"\n\"3185270\";\"Kamze\";\"other\"\n\"3185270\";\"Kamzë\";\"other\"\n\"3185377\";\"Himarë\";\"main\"\n\"3185377\";\"Himare\";\"ascii\"\n\"3185377\";\"Chimara\";\"other\"\n\"3185377\";\"Cimarre\";\"other\"\n\"3185377\";\"Himara\";\"other\"\n\"3185377\";\"Imara\";\"other\"\n\"3185377\";\"Kheimara\";\"other\"\n\"3185377\";\"Khimara\";\"other\"\n\"3185377\";\"Химара\";\"other\"\n\"3185638\";\"Fushë-Krujë\";\"main\"\n\"3185638\";\"Fushe-Kruje\";\"ascii\"\n\"3185638\";\"Fus e Krujs\";\"other\"\n\"3185638\";\"Fush' e Krujes\";\"other\"\n\"3185638\";\"Fush-Kruja\";\"other\"\n\"3185638\";\"Fusha-Kruja\";\"other\"\n\"3185638\";\"Fushe Kruja\";\"other\"\n\"3185638\";\"Fushe e Krujes\";\"other\"\n\"3185638\";\"Fushë Kruja\";\"other\"\n\"3185638\";\"Fushë e Krujës\";\"other\"\n\"3185638\";\"Fush’ e Krujës\";\"other\"\n\"3185638\";\"Fuš e Krujs\";\"other\"\n\"3185638\";\"Teke Fuscia Crujs\";\"other\"\n\"3185638\";\"Фуша-Круя\";\"other\"\n\"3185670\";\"Fier-Çifçi\";\"main\"\n\"3185670\";\"Fier-Cifci\";\"ascii\"\n\"3185672\";\"Fier\";\"main\"\n\"3185672\";\"Fearica\";\"other\"\n\"3185672\";\"Fieri\";\"other\"\n\"3185672\";\"Fjeri\";\"other\"\n\"3185672\";\"fei xia er\";\"other\"\n\"3185672\";\"Фиери\";\"other\"\n\"3185672\";\"非夏爾\";\"other\"\n\"3185728\";\"Durrës\";\"main\"\n\"3185728\";\"Durres\";\"ascii\"\n\"3185728\";\"Drac\";\"other\"\n\"3185728\";\"Drach\";\"other\"\n\"3185728\";\"Drač\";\"other\"\n\"3185728\";\"Duraso\";\"other\"\n\"3185728\";\"Durazzo\";\"other\"\n\"3185728\";\"Durehs\";\"other\"\n\"3185728\";\"Dures\";\"other\"\n\"3185728\";\"Duresi\";\"other\"\n\"3185728\";\"Durresa\";\"other\"\n\"3185728\";\"Durresi\";\"other\"\n\"3185728\";\"Durrsi\";\"other\"\n\"3185728\";\"Durrësi\";\"other\"\n\"3185728\";\"Durts\";\"other\"\n\"3185728\";\"Durus\";\"other\"\n\"3185728\";\"Durz\";\"other\"\n\"3185728\";\"Durësi\";\"other\"\n\"3185728\";\"Dyrrachio\";\"other\"\n\"3185728\";\"Dyrrachium\";\"other\"\n\"3185728\";\"Dyrrakhion\";\"other\"\n\"3185728\";\"Dyrrhachium\";\"other\"\n\"3185728\";\"Epidamnos\";\"other\"\n\"3185728\";\"dou la si\";\"other\"\n\"3185728\";\"do~urasu\";\"other\"\n\"3185728\";\"dwrs\";\"other\"\n\"3185728\";\"Δυρράχιο\";\"other\"\n\"3185728\";\"Драч\";\"other\"\n\"3185728\";\"Дуррес\";\"other\"\n\"3185728\";\"Дуръс\";\"other\"\n\"3185728\";\"Дурэс\";\"other\"\n\"3185728\";\"דורס\";\"other\"\n\"3185728\";\"ドゥラス\";\"other\"\n\"3185728\";\"都拉斯\";\"other\"\n\"3185897\";\"Cërrik\";\"main\"\n\"3185897\";\"Cerrik\";\"ascii\"\n\"3185897\";\"Cerriku\";\"other\"\n\"3185897\";\"Valasi\";\"other\"\n\"3185897\";\"Церрик\";\"other\"\n\"3186084\";\"Berat\";\"main\"\n\"3186084\";\"Beligrad\";\"other\"\n\"3186084\";\"Berati\";\"other\"\n\"3186084\";\"Beration\";\"other\"\n\"3186084\";\"Berta\";\"other\"\n\"3186084\";\"Lezskigrad\";\"other\"\n\"3186084\";\"Verati\";\"other\"\n\"3186084\";\"Veration\";\"other\"\n\"3186084\";\"berato\";\"other\"\n\"3186084\";\"pei la te\";\"other\"\n\"3186084\";\"Берат\";\"other\"\n\"3186084\";\"בראט\";\"other\"\n\"3186084\";\"ベラト\";\"other\"\n\"3186084\";\"培拉特\";\"other\"\n\"3186145\";\"Ballsh\";\"main\"\n\"3186145\";\"Bal'shi\";\"other\"\n\"3186145\";\"Baleri\";\"other\"\n\"3186145\";\"Ballesh\";\"other\"\n\"3186145\";\"Balleshi\";\"other\"\n\"3186145\";\"Ballshi\";\"other\"\n\"3186145\";\"Ballësh\";\"other\"\n\"3186145\";\"Ballëshi\";\"other\"\n\"3186145\";\"Bals\";\"other\"\n\"3186145\";\"Balš\";\"other\"\n\"3186145\";\"Бальши\";\"other\"\n\"174703\";\"Zarrit’ap’\";\"main\"\n\"174703\";\"Zarrit'ap'\";\"ascii\"\n\"174703\";\"Azizbekov\";\"other\"\n\"174703\";\"Pashaghu\";\"other\"\n\"174703\";\"Pashalu\";\"other\"\n\"174703\";\"Zaritap\";\"other\"\n\"174704\";\"Zangakatun\";\"main\"\n\"174704\";\"Chanakhchi\";\"other\"\n\"174704\";\"Nizhniye Chanakhchi\";\"other\"\n\"174704\";\"Sovetashen\";\"other\"\n\"174704\";\"Зангакатун\";\"other\"\n\"174706\";\"Yenikend\";\"main\"\n\"174706\";\"Gorovan\";\"other\"\n\"174709\";\"Yeghegnavan\";\"main\"\n\"174709\";\"Ekhegnavan\";\"other\"\n\"174709\";\"Shidlu\";\"other\"\n\"174709\";\"Ехегнаван\";\"other\"\n\"174710\";\"Yeghegnadzor\";\"main\"\n\"174710\";\"Egegnajor\";\"other\"\n\"174710\";\"Ekhegnadzor\";\"other\"\n\"174710\";\"Keshishkend\";\"other\"\n\"174710\";\"Keshishkent\";\"other\"\n\"174710\";\"Mikoyan\";\"other\"\n\"174710\";\"Yeghegik\";\"other\"\n\"174710\";\"Yekhegnadzor\";\"other\"\n\"174710\";\"Ехегнадзор\";\"other\"\n\"174710\";\"Եղեգնաձոր\";\"other\"\n\"174713\";\"Vostan\";\"main\"\n\"174713\";\"Bedzhazlu\";\"other\"\n\"174713\";\"Востан\";\"other\"\n\"174714\";\"Vosketap’\";\"main\"\n\"174714\";\"Vosketap'\";\"ascii\"\n\"174714\";\"Shiraz\";\"other\"\n\"174714\";\"Shirazlu\";\"other\"\n\"174716\";\"Vernashen\";\"main\"\n\"174716\";\"Bashkend\";\"other\"\n\"174716\";\"Вернашен\";\"other\"\n\"174717\";\"Verishen\";\"main\"\n\"174725\";\"Vedi\";\"main\"\n\"174725\";\"Beyuk-Vedi\";\"other\"\n\"174725\";\"Biyuk-Vedi\";\"other\"\n\"174725\";\"Веди\";\"other\"\n\"174726\";\"Vayk’\";\"main\"\n\"174726\";\"Vayk'\";\"ascii\"\n\"174726\";\"Azizbekov\";\"other\"\n\"174726\";\"Soylan\";\"other\"\n\"174743\";\"Tegh\";\"main\"\n\"174743\";\"Dyg\";\"other\"\n\"174743\";\"Lekh\";\"other\"\n\"174743\";\"Tekh\";\"other\"\n\"174743\";\"Тех\";\"other\"\n\"174743\";\"Տեղ\";\"other\"\n\"174755\";\"Surenavan\";\"main\"\n\"174764\";\"Sisavan\";\"main\"\n\"174764\";\"Yengidzha\";\"other\"\n\"174764\";\"Сисаван\";\"other\"\n\"174769\";\"Shinuhayr\";\"main\"\n\"174769\";\"Shinuair\";\"other\"\n\"174769\";\"Shinuayr\";\"other\"\n\"174769\";\"Sinuayr\";\"other\"\n\"174769\";\"Şinuayr\";\"other\"\n\"174769\";\"Шинуайр\";\"other\"\n\"174769\";\"Շինուհայր\";\"other\"\n\"174775\";\"Shahumyan\";\"main\"\n\"174775\";\"Shahumian\";\"other\"\n\"174775\";\"Shaumjan\";\"other\"\n\"174775\";\"Shaumyan\";\"other\"\n\"174775\";\"Yuva\";\"other\"\n\"174775\";\"Шаумян\";\"other\"\n\"174776\";\"Shatin\";\"main\"\n\"174776\";\"Gasankend\";\"other\"\n\"174776\";\"Hasankand\";\"other\"\n\"174776\";\"Hesan Kand\";\"other\"\n\"174776\";\"Shatik\";\"other\"\n\"174776\";\"Шатин\";\"other\"\n\"174782\";\"Shaghat\";\"main\"\n\"174782\";\"Shagat\";\"other\"\n\"174794\";\"Rrind\";\"main\"\n\"174794\";\"Rind\";\"other\"\n\"174805\";\"Noyakert\";\"main\"\n\"174805\";\"Khalisa\";\"other\"\n\"174805\";\"Nojakert\";\"other\"\n\"174805\";\"Ноякерт\";\"other\"\n\"174820\";\"Mrgavan\";\"main\"\n\"174820\";\"Gedaklu\";\"other\"\n\"174820\";\"Mgravan\";\"other\"\n\"174820\";\"Мграван\";\"other\"\n\"174823\";\"Meghri\";\"main\"\n\"174823\";\"Megri\";\"other\"\n\"174823\";\"Megry\";\"other\"\n\"174823\";\"Mergi\";\"other\"\n\"174823\";\"Mogri\";\"other\"\n\"174823\";\"Мегри\";\"other\"\n\"174828\";\"Malishka\";\"main\"\n\"174849\";\"Khndzoresk\";\"main\"\n\"174849\";\"Խնձորեսկ\";\"other\"\n\"174875\";\"Kapan\";\"main\"\n\"174875\";\"Ghap'an\";\"other\"\n\"174875\";\"Ghap’an\";\"other\"\n\"174875\";\"Kafan\";\"other\"\n\"174875\";\"Kafin\";\"other\"\n\"174875\";\"Katan\";\"other\"\n\"174875\";\"Madan\";\"other\"\n\"174875\";\"Qafan\";\"other\"\n\"174875\";\"Zangezur\";\"other\"\n\"174875\";\"kapan\";\"other\"\n\"174875\";\"Капан\";\"other\"\n\"174875\";\"Կապան\";\"other\"\n\"174875\";\"کاپان\";\"other\"\n\"174884\";\"Jermuk\";\"main\"\n\"174884\";\"Dzhermuk\";\"other\"\n\"174884\";\"Джермук\";\"other\"\n\"174895\";\"Goris\";\"main\"\n\"174895\";\"Geryusy\";\"other\"\n\"174895\";\"Горис\";\"other\"\n\"174895\";\"Գորիս\";\"other\"\n\"174904\";\"Gladzor\";\"main\"\n\"174904\";\"Ortakend\";\"other\"\n\"174904\";\"Гладзор\";\"other\"\n\"174907\";\"Getap’\";\"main\"\n\"174907\";\"Getap'\";\"ascii\"\n\"174907\";\"Ghyotur\";\"other\"\n\"174907\";\"Koytur\";\"other\"\n\"174918\";\"Dzorastan\";\"main\"\n\"174918\";\"Akhtakhana\";\"other\"\n\"174918\";\"Khlatag\";\"other\"\n\"174931\";\"Dalar\";\"main\"\n\"174931\";\"Dalular\";\"other\"\n\"174931\";\"Далар\";\"other\"\n\"174940\";\"Burastan\";\"main\"\n\"174940\";\"Karagamzalu\";\"other\"\n\"174940\";\"Tamamlu\";\"other\"\n\"174941\";\"Brun\";\"main\"\n\"174941\";\"Բրուն\";\"other\"\n\"174942\";\"Brrnakot’\";\"main\"\n\"174942\";\"Brrnakot'\";\"ascii\"\n\"174942\";\"Brnakot\";\"other\"\n\"174947\";\"Berkanush\";\"main\"\n\"174947\";\"Ogurbeklu\";\"other\"\n\"174964\";\"Aygezard\";\"main\"\n\"174964\";\"Ajgezard\";\"other\"\n\"174964\";\"Anastasavan\";\"other\"\n\"174964\";\"Aygedzor\";\"other\"\n\"174964\";\"Dargalu\";\"other\"\n\"174964\";\"Айгезард\";\"other\"\n\"174965\";\"Aygepat\";\"main\"\n\"174965\";\"Ajgepat\";\"other\"\n\"174965\";\"Dargalu Verkhniy\";\"other\"\n\"174965\";\"Masumlu\";\"other\"\n\"174965\";\"Verkhniy Dargalu\";\"other\"\n\"174965\";\"Айгепат\";\"other\"\n\"174968\";\"Aygavan\";\"main\"\n\"174968\";\"Ajgavan\";\"other\"\n\"174968\";\"Reganlu\";\"other\"\n\"174968\";\"Айгаван\";\"other\"\n\"174969\";\"Avshar\";\"main\"\n\"174972\";\"Hats’avan\";\"main\"\n\"174972\";\"Hats'avan\";\"ascii\"\n\"174972\";\"Acavan\";\"other\"\n\"174972\";\"Atsavan\";\"other\"\n\"174972\";\"Sisian\";\"other\"\n\"174972\";\"Ацаван\";\"other\"\n\"174979\";\"Artashat\";\"main\"\n\"174979\";\"Kamarl\";\"other\"\n\"174979\";\"Kamarlu\";\"other\"\n\"174979\";\"Kamarlyu\";\"other\"\n\"174979\";\"Арташат\";\"other\"\n\"174980\";\"Artabuynk’\";\"main\"\n\"174980\";\"Artabuynk'\";\"ascii\"\n\"174980\";\"Alagyaz\";\"other\"\n\"174980\";\"Alayaz\";\"other\"\n\"174980\";\"Artabuynk\";\"other\"\n\"174980\";\"Erdapin\";\"other\"\n\"174980\";\"Yeghegis\";\"other\"\n\"174980\";\"Yekhegis\";\"other\"\n\"174983\";\"Armash\";\"main\"\n\"174984\";\"Areni\";\"main\"\n\"174984\";\"Arpa\";\"other\"\n\"174984\";\"Арени\";\"other\"\n\"174991\";\"Ararat\";\"main\"\n\"174991\";\"Davalinskiy Tsemzavod\";\"other\"\n\"174991\";\"Арарат\";\"other\"\n\"174997\";\"Angeghakot’\";\"main\"\n\"174997\";\"Angeghakot'\";\"ascii\"\n\"174997\";\"Angekhakot\";\"other\"\n\"174997\";\"Angelaut\";\"other\"\n\"175002\";\"Aghavnadzor\";\"main\"\n\"175002\";\"Agavnadzor\";\"other\"\n\"175002\";\"Akhavnadzor\";\"other\"\n\"175002\";\"Aynadzor\";\"other\"\n\"175002\";\"Агавнадзор\";\"other\"\n\"175006\";\"Agarakadzor\";\"main\"\n\"175006\";\"Ayar\";\"other\"\n\"175006\";\"Агаракадзор\";\"other\"\n\"175007\";\"Agarak\";\"main\"\n\"175007\";\"Aqarak\";\"other\"\n\"175007\";\"Агарак\";\"other\"\n\"391233\";\"Aralek\";\"main\"\n\"612561\";\"Horrom\";\"main\"\n\"612561\";\"Horom\";\"other\"\n\"612561\";\"Orom\";\"other\"\n\"612561\";\"Ором\";\"other\"\n\"613075\";\"Margara\";\"main\"\n\"613075\";\"Markara\";\"other\"\n\"613075\";\"Маргара\";\"other\"\n\"613075\";\"Маркара\";\"other\"\n\"616034\";\"Zovuni\";\"main\"\n\"616034\";\"Molla Kasum\";\"other\"\n\"616034\";\"Зовуни\";\"other\"\n\"616037\";\"Zovaber\";\"main\"\n\"616037\";\"Yaydzhi\";\"other\"\n\"616037\";\"Зовабер\";\"other\"\n\"616039\";\"Zorak\";\"main\"\n\"616039\";\"Donguzyan\";\"other\"\n\"616039\";\"Zangilar\";\"other\"\n\"616039\";\"Зорак\";\"other\"\n\"616046\";\"Zarr\";\"main\"\n\"616046\";\"Zar\";\"other\"\n\"616046\";\"Зар\";\"other\"\n\"616052\";\"Yerevan\";\"main\"\n\"616052\";\"Ayrivan\";\"other\"\n\"616052\";\"EREVAN\";\"other\"\n\"616052\";\"Ereban\";\"other\"\n\"616052\";\"Erehvan\";\"other\"\n\"616052\";\"Ereun\";\"other\"\n\"616052\";\"Erevan\";\"other\"\n\"616052\";\"Erevano\";\"other\"\n\"616052\";\"Ereván\";\"other\"\n\"616052\";\"Erewan\";\"other\"\n\"616052\";\"Erivan\";\"other\"\n\"616052\";\"Eriwan\";\"other\"\n\"616052\";\"Erywan\";\"other\"\n\"616052\";\"Erywań\";\"other\"\n\"616052\";\"Ierevan - Erevan\";\"other\"\n\"616052\";\"Iereván - Երեվան\";\"other\"\n\"616052\";\"Iravan\";\"other\"\n\"616052\";\"Jerevan\";\"other\"\n\"616052\";\"Jerevanas\";\"other\"\n\"616052\";\"Jereván\";\"other\"\n\"616052\";\"Revan\";\"other\"\n\"616052\";\"Yervandavan\";\"other\"\n\"616052\";\"Yiriwan\";\"other\"\n\"616052\";\"Yèrèvan\";\"other\"\n\"616052\";\"ayrwan\";\"other\"\n\"616052\";\"ereban\";\"other\"\n\"616052\";\"erevani\";\"other\"\n\"616052\";\"iyerebhana\";\"other\"\n\"616052\";\"shhr ayrwan\";\"other\"\n\"616052\";\"ye li wen\";\"other\"\n\"616052\";\"yeleban\";\"other\"\n\"616052\";\"yerevana\";\"other\"\n\"616052\";\"yryfan\";\"other\"\n\"616052\";\"Êrîvan\";\"other\"\n\"616052\";\"İrəvan\";\"other\"\n\"616052\";\"Ερεβάν\";\"other\"\n\"616052\";\"Єреван\";\"other\"\n\"616052\";\"Јереван\";\"other\"\n\"616052\";\"ЕРЕВАН\";\"other\"\n\"616052\";\"Ереван\";\"other\"\n\"616052\";\"Ерэван\";\"other\"\n\"616052\";\"Երեվան\";\"other\"\n\"616052\";\"Երևան\";\"other\"\n\"616052\";\"ירוואן\";\"other\"\n\"616052\";\"ایروان\";\"other\"\n\"616052\";\"شهر ایروان\";\"other\"\n\"616052\";\"يريفان\";\"other\"\n\"616052\";\"येरेवान\";\"other\"\n\"616052\";\"ইয়েরেভান\";\"other\"\n\"616052\";\"ერევანი\";\"other\"\n\"616052\";\"ዬሬቫን\";\"other\"\n\"616052\";\"エレバン\";\"other\"\n\"616052\";\"葉里溫\";\"other\"\n\"616052\";\"예레반\";\"other\"\n\"616053\";\"Yerazgavors\";\"main\"\n\"616053\";\"Aralykh\";\"other\"\n\"616053\";\"Erazgavors\";\"other\"\n\"616053\";\"Еразгаворс\";\"other\"\n\"616055\";\"Yeraskhahun\";\"main\"\n\"616055\";\"Kuru-Araz\";\"other\"\n\"616055\";\"Yeraskhaun\";\"other\"\n\"616056\";\"Yeranos\";\"main\"\n\"616056\";\"Eranos\";\"other\"\n\"616056\";\"Еранос\";\"other\"\n\"616060\";\"Yeghegnut\";\"main\"\n\"616060\";\"Ekheknut\";\"other\"\n\"616060\";\"Kamyshkut\";\"other\"\n\"616060\";\"Yegegnut\";\"other\"\n\"616060\";\"Yekhegnut\";\"other\"\n\"616060\";\"Yekheknut\";\"other\"\n\"616060\";\"Ехекнут\";\"other\"\n\"616061\";\"Yeghegnut\";\"main\"\n\"616061\";\"Badal\";\"other\"\n\"616061\";\"Ekhegnut\";\"other\"\n\"616061\";\"Molla Badal\";\"other\"\n\"616061\";\"Yekheknut\";\"other\"\n\"616061\";\"Ехегнут\";\"other\"\n\"616062\";\"Ejmiatsin\";\"main\"\n\"616062\";\"Artemed\";\"other\"\n\"616062\";\"Avan Vardgesi\";\"other\"\n\"616062\";\"EHCHMIADZIN\";\"other\"\n\"616062\";\"Echmiadzin\";\"other\"\n\"616062\";\"Echmiatsin\";\"other\"\n\"616062\";\"Ecmiadzin\";\"other\"\n\"616062\";\"Eczmiadzyn\";\"other\"\n\"616062\";\"Etchmiadzine\";\"other\"\n\"616062\";\"Etschmiadsin\";\"other\"\n\"616062\";\"Ečmiadzin\";\"other\"\n\"616062\";\"Iejmiatsin\";\"other\"\n\"616062\";\"Kaynepolis\";\"other\"\n\"616062\";\"Kayrak'aghak'\";\"other\"\n\"616062\";\"Kayrak’aghak’\";\"other\"\n\"616062\";\"Norak'aghak'\";\"other\"\n\"616062\";\"Norak’aghak’\";\"other\"\n\"616062\";\"Uch'k'ilisa\";\"other\"\n\"616062\";\"Uch’k’ilisa\";\"other\"\n\"616062\";\"Uckilise\";\"other\"\n\"616062\";\"Vagarsapat\";\"other\"\n\"616062\";\"Vagarshapat\";\"other\"\n\"616062\";\"Vagharshapat\";\"other\"\n\"616062\";\"Valeroktista\";\"other\"\n\"616062\";\"Vardgesavan\";\"other\"\n\"616062\";\"achmyadzyn\";\"other\"\n\"616062\";\"echmiadzini\";\"other\"\n\"616062\";\"ehchmiadzin\";\"other\"\n\"616062\";\"Üçkilise\";\"other\"\n\"616062\";\"Вагаршапат\";\"other\"\n\"616062\";\"ЭЧМИАДЗИН\";\"other\"\n\"616062\";\"Эчмиадзин\";\"other\"\n\"616062\";\"Վաղարշապատ\";\"other\"\n\"616062\";\"اچمیادزین\";\"other\"\n\"616062\";\"ეჩმიაძინი\";\"other\"\n\"616065\";\"Yeghvard\";\"main\"\n\"616065\";\"Egvard\";\"other\"\n\"616065\";\"Jegward\";\"other\"\n\"616065\";\"Yegvard\";\"other\"\n\"616065\";\"Yegvart\";\"other\"\n\"616065\";\"Yevgard\";\"other\"\n\"616065\";\"Егвард\";\"other\"\n\"616071\";\"Voskevaz\";\"main\"\n\"616071\";\"Kiziltamur\";\"other\"\n\"616071\";\"Воскеваз\";\"other\"\n\"616072\";\"Voskevan\";\"main\"\n\"616072\";\"Koshkotan\";\"other\"\n\"616072\";\"Воскеван\";\"other\"\n\"616076\";\"Voskehask\";\"main\"\n\"616076\";\"Molla Musa\";\"other\"\n\"616076\";\"Musakan\";\"other\"\n\"616076\";\"Voskeask\";\"other\"\n\"616076\";\"Воскеаск\";\"other\"\n\"616094\";\"Verin Getashen\";\"main\"\n\"616094\";\"Nerkin Getashen\";\"other\"\n\"616094\";\"Verin Adyaman\";\"other\"\n\"616094\";\"Verkhniy Adyaman\";\"other\"\n\"616094\";\"Неркин Геташен\";\"other\"\n\"616097\";\"Verin Dvin\";\"main\"\n\"616097\";\"Aysori Dvin\";\"other\"\n\"616097\";\"Verkhniy Dvin\";\"other\"\n\"616097\";\"Верин Двин\";\"other\"\n\"616100\";\"Verin Artashat\";\"main\"\n\"616100\";\"Ardashar\";\"other\"\n\"616100\";\"Artashat\";\"other\"\n\"616100\";\"Verkhniy Artashat\";\"other\"\n\"616100\";\"Верин Арташат\";\"other\"\n\"616101\";\"Verin Akhtala\";\"main\"\n\"616101\";\"Verkhnyaya Akhtala\";\"other\"\n\"616103\";\"Varser\";\"main\"\n\"616103\";\"Chirchir\";\"other\"\n\"616103\";\"Варсер\";\"other\"\n\"616108\";\"Vardenis\";\"main\"\n\"616108\";\"Basargech'ar\";\"other\"\n\"616108\";\"Basargech’ar\";\"other\"\n\"616108\";\"VARDENIS\";\"other\"\n\"616108\";\"ВАРДЕНИС\";\"other\"\n\"616109\";\"Vardenik\";\"main\"\n\"616109\";\"Gezeldara\";\"other\"\n\"616109\";\"Nerkin Gezaldara\";\"other\"\n\"616109\";\"Nizhnyaya Gezaldara\";\"other\"\n\"616109\";\"Варденик\";\"other\"\n\"616117\";\"Vahan\";\"main\"\n\"616117\";\"Ordzhonikidze\";\"other\"\n\"616117\";\"Орджоникидзе\";\"other\"\n\"616119\";\"Vaghashen\";\"main\"\n\"616119\";\"Avdalagalu\";\"other\"\n\"616119\";\"Vagashen\";\"other\"\n\"616119\";\"Vakhashen\";\"other\"\n\"616119\";\"Вахашен\";\"other\"\n\"616120\";\"Vahagni\";\"main\"\n\"616120\";\"Shagali\";\"other\"\n\"616120\";\"Vaagni\";\"other\"\n\"616120\";\"Ваагни\";\"other\"\n\"616121\";\"Ushi\";\"main\"\n\"616123\";\"Urrut\";\"main\"\n\"616123\";\"Urut\";\"other\"\n\"616123\";\"Урут\";\"other\"\n\"616136\";\"Tsovinar\";\"main\"\n\"616136\";\"Covinar\";\"other\"\n\"616136\";\"Kolakran\";\"other\"\n\"616136\";\"Цовинар\";\"other\"\n\"616137\";\"Tsovazard\";\"main\"\n\"616137\";\"Covazard\";\"other\"\n\"616137\";\"Gadzhi Mukhan\";\"other\"\n\"616137\";\"Mukhan\";\"other\"\n\"616137\";\"Цовазард\";\"other\"\n\"616138\";\"Tsovak\";\"main\"\n\"616138\";\"Covak\";\"other\"\n\"616138\";\"Nerkin Zagalu\";\"other\"\n\"616138\";\"Nizhniy Zagalu\";\"other\"\n\"616138\";\"Цовак\";\"other\"\n\"616139\";\"Tsovagyugh\";\"main\"\n\"616139\";\"Chabukhly\";\"other\"\n\"616139\";\"Chibukhly\";\"other\"\n\"616139\";\"Chubukhly\";\"other\"\n\"616139\";\"Chubuliki\";\"other\"\n\"616139\";\"Covagjukh\";\"other\"\n\"616139\";\"Tsovagyukh\";\"other\"\n\"616139\";\"Tzovagyugh\";\"other\"\n\"616139\";\"Цовагюх\";\"other\"\n\"616150\";\"Tsaghkunk’\";\"main\"\n\"616150\";\"Tsaghkunk'\";\"ascii\"\n\"616150\";\"Tsakhkunk\";\"other\"\n\"616150\";\"Verin Aylanlu\";\"other\"\n\"616150\";\"Verkhnyaya Aylanlu\";\"other\"\n\"616158\";\"Tsaghkahovit\";\"main\"\n\"616158\";\"Cakhkaovit\";\"other\"\n\"616158\";\"Gadzhi-Khalil\";\"other\"\n\"616158\";\"Tsakhkaovit\";\"other\"\n\"616158\";\"Tzaghkahovit\";\"other\"\n\"616158\";\"Цахкаовит\";\"other\"\n\"616159\";\"Tsaghkaber\";\"main\"\n\"616159\";\"Avdibek\";\"other\"\n\"616159\";\"Cakhkaber\";\"other\"\n\"616159\";\"Tsakhkaber\";\"other\"\n\"616159\";\"Tsakhkashen\";\"other\"\n\"616159\";\"Tzaghkaber\";\"other\"\n\"616159\";\"Цахкабер\";\"other\"\n\"616160\";\"Tsaghkadzor\";\"main\"\n\"616160\";\"CAKHKADZOR\";\"other\"\n\"616160\";\"Darachichag\";\"other\"\n\"616160\";\"Tsakhkadzor\";\"other\"\n\"616160\";\"ЦАХКАДЗОР\";\"other\"\n\"616174\";\"T’azagyugh\";\"main\"\n\"616174\";\"T'azagyugh\";\"ascii\"\n\"616174\";\"Tazagyukh\";\"other\"\n\"616178\";\"Tashir\";\"main\"\n\"616178\";\"Kaliniko\";\"other\"\n\"616178\";\"Kalinin\";\"other\"\n\"616178\";\"Kalinino\";\"other\"\n\"616178\";\"TASHIR\";\"other\"\n\"616178\";\"Vorontsovka\";\"other\"\n\"616178\";\"ТАШИР\";\"other\"\n\"616184\";\"Tandzut\";\"main\"\n\"616184\";\"Armutlu\";\"other\"\n\"616184\";\"Тандзут\";\"other\"\n\"616187\";\"T’alin\";\"main\"\n\"616187\";\"T'alin\";\"ascii\"\n\"616187\";\"Verin Talin\";\"other\"\n\"616187\";\"Verkhniy Talin\";\"other\"\n\"616199\";\"Spitak\";\"main\"\n\"616199\";\"Amamlu\";\"other\"\n\"616199\";\"Amamth\";\"other\"\n\"616199\";\"Спитак\";\"other\"\n\"616202\";\"Spandaryan\";\"main\"\n\"616202\";\"Kulidzhan\";\"other\"\n\"616202\";\"Spandarjan\";\"other\"\n\"616202\";\"Спандарян\";\"other\"\n\"616208\";\"Sovetakan\";\"main\"\n\"616208\";\"Kyarimarkh\";\"other\"\n\"616208\";\"Советакан\";\"other\"\n\"616211\";\"Solak\";\"main\"\n\"616211\";\"Солак\";\"other\"\n\"616213\";\"Sis\";\"main\"\n\"616213\";\"Sarvanlar\";\"other\"\n\"616213\";\"Uliya Sarvanlar\";\"other\"\n\"616213\";\"Сис\";\"other\"\n\"616220\";\"Shnogh\";\"main\"\n\"616220\";\"Shnokh\";\"other\"\n\"616220\";\"Шнох\";\"other\"\n\"616224\";\"Shirak\";\"main\"\n\"616224\";\"Konakhkran\";\"other\"\n\"616224\";\"Kunakhkran\";\"other\"\n\"616224\";\"Ширак\";\"other\"\n\"616230\";\"Shenavan\";\"main\"\n\"616230\";\"Blkher\";\"other\"\n\"616230\";\"Шенаван\";\"other\"\n\"616231\";\"Shenavan\";\"main\"\n\"616231\";\"Kyalagarkh\";\"other\"\n\"616231\";\"Шенаван\";\"other\"\n\"616250\";\"Sevan\";\"main\"\n\"616250\";\"SEVAN\";\"other\"\n\"616250\";\"Ssewan\";\"other\"\n\"616250\";\"Yelenovka\";\"other\"\n\"616250\";\"СЕВАН\";\"other\"\n\"616255\";\"Sarukhan\";\"main\"\n\"616255\";\"Dalikardash\";\"other\"\n\"616255\";\"Сарухан\";\"other\"\n\"616259\";\"Sarigyugh\";\"main\"\n\"616259\";\"Sarigyukh\";\"other\"\n\"616259\";\"Srigekh\";\"other\"\n\"616259\";\"Srygekh\";\"other\"\n\"616262\";\"Saratak\";\"main\"\n\"616262\";\"Imrkhan\";\"other\"\n\"616262\";\"Саратак\";\"other\"\n\"616265\";\"Saramech\";\"main\"\n\"616265\";\"Chotur\";\"other\"\n\"616265\";\"Сарамеч\";\"other\"\n\"616273\";\"Sarahart’\";\"main\"\n\"616273\";\"Sarahart'\";\"ascii\"\n\"616273\";\"Gyullidzha\";\"other\"\n\"616273\";\"Saraart\";\"other\"\n\"616278\";\"Samaghar\";\"main\"\n\"616278\";\"Gekhakert\";\"other\"\n\"616278\";\"Samagar\";\"other\"\n\"616278\";\"Samakhar\";\"other\"\n\"616278\";\"Самахар\";\"other\"\n\"616288\";\"Ptghni\";\"main\"\n\"616288\";\"Ptgni\";\"other\"\n\"616288\";\"Ptkhni\";\"other\"\n\"616288\";\"Ptykhni\";\"other\"\n\"616288\";\"Птхни\";\"other\"\n\"616289\";\"Ptghunk’\";\"main\"\n\"616289\";\"Ptghunk'\";\"ascii\"\n\"616289\";\"Ptkhunk\";\"other\"\n\"616290\";\"Pshatavan\";\"main\"\n\"616290\";\"Igdalu\";\"other\"\n\"616290\";\"Пшатаван\";\"other\"\n\"616291\";\"Prroshyan\";\"main\"\n\"616291\";\"Proshian\";\"other\"\n\"616291\";\"Proshyan\";\"other\"\n\"616297\";\"Pokr Mantash\";\"main\"\n\"616297\";\"Malyy Mantash\";\"other\"\n\"616297\";\"Pokr Arkhvali\";\"other\"\n\"616297\";\"Покр Манташ\";\"other\"\n\"616299\";\"Zoravan\";\"main\"\n\"616299\";\"Kargavank\";\"other\"\n\"616299\";\"Pokravan\";\"other\"\n\"616299\";\"Зораван\";\"other\"\n\"616303\";\"Pemzashen\";\"main\"\n\"616303\";\"Magmudzhuk\";\"other\"\n\"616303\";\"Mahmutcuk\";\"other\"\n\"616303\";\"Makhmudzhug\";\"other\"\n\"616303\";\"PEMZASHEN\";\"other\"\n\"616303\";\"ПЕМЗАШЕН\";\"other\"\n\"616306\";\"Parravak’ar\";\"main\"\n\"616306\";\"Parravak'ar\";\"ascii\"\n\"616306\";\"Paravakar\";\"other\"\n\"616306\";\"Paravaker\";\"other\"\n\"616306\";\"Паравакар\";\"other\"\n\"616320\";\"Oshakan\";\"main\"\n\"616320\";\"Ошакан\";\"other\"\n\"616328\";\"Hoktember\";\"main\"\n\"616328\";\"OKTEMBERJAN\";\"other\"\n\"616328\";\"Oktember\";\"other\"\n\"616328\";\"Sardarapat\";\"other\"\n\"616328\";\"ОКТЕМБЕРЯН\";\"other\"\n\"616330\";\"Odzun\";\"main\"\n\"616330\";\"Dzun\";\"other\"\n\"616330\";\"Usuklyar\";\"other\"\n\"616330\";\"Uzunlar\";\"other\"\n\"616330\";\"Одзун\";\"other\"\n\"616333\";\"Noyemberyan\";\"main\"\n\"616333\";\"Baran\";\"other\"\n\"616333\";\"Barana\";\"other\"\n\"616333\";\"NOEMBERJAN\";\"other\"\n\"616333\";\"НОЕМБЕРЯН\";\"other\"\n\"616340\";\"Nor Gyugh\";\"main\"\n\"616340\";\"Nor Gyukh\";\"other\"\n\"616340\";\"Tazagyukh\";\"other\"\n\"616341\";\"Nor Geghi\";\"main\"\n\"616341\";\"Bazmavan\";\"other\"\n\"616341\";\"Chatkran\";\"other\"\n\"616341\";\"Nor Gekhi\";\"other\"\n\"616341\";\"Нор Гехи\";\"other\"\n\"616345\";\"Norashen\";\"main\"\n\"616345\";\"Bogdanovka\";\"other\"\n\"616345\";\"Норашен\";\"other\"\n\"616350\";\"Norashen\";\"main\"\n\"616350\";\"Verin Kurdkend\";\"other\"\n\"616350\";\"Норашен\";\"other\"\n\"616352\";\"Nor Armavir\";\"main\"\n\"616356\";\"Noramarg\";\"main\"\n\"616356\";\"Abilkend\";\"other\"\n\"616356\";\"Ablkend\";\"other\"\n\"616356\";\"Bulagli\";\"other\"\n\"616356\";\"Bulakhly\";\"other\"\n\"616356\";\"Imeni Kalinina\";\"other\"\n\"616356\";\"Kalinin\";\"other\"\n\"616356\";\"Poselok Imeni Kalinina\";\"other\"\n\"616356\";\"Posëlok Imeni Kalinina\";\"other\"\n\"616356\";\"Норамарг\";\"other\"\n\"616359\";\"Norakert\";\"main\"\n\"616361\";\"Noratus\";\"main\"\n\"616361\";\"Noraduz\";\"other\"\n\"616361\";\"Норадуз\";\"other\"\n\"616375\";\"Nerk’in Getashen\";\"main\"\n\"616375\";\"Nerk'in Getashen\";\"ascii\"\n\"616375\";\"Nerkin Adyaman\";\"other\"\n\"616375\";\"Nizhniy Adyaman\";\"other\"\n\"616383\";\"Navur\";\"main\"\n\"616383\";\"Навур\";\"other\"\n\"616385\";\"Nalbandyan\";\"main\"\n\"616385\";\"Mets Shagriar\";\"other\"\n\"616385\";\"Nalbandjan\";\"other\"\n\"616385\";\"Shagriar\";\"other\"\n\"616385\";\"Shagriar Bol'shoy\";\"other\"\n\"616385\";\"Налбандян\";\"other\"\n\"616391\";\"Musayelyan\";\"main\"\n\"616391\";\"Mets Kyapanak\";\"other\"\n\"616391\";\"Musaeljan\";\"other\"\n\"616391\";\"Мусаелян\";\"other\"\n\"616396\";\"Hovtamej\";\"main\"\n\"616396\";\"Mugan\";\"other\"\n\"616396\";\"Ovtamech\";\"other\"\n\"616399\";\"Mrgashen\";\"main\"\n\"616400\";\"Mrgashat\";\"main\"\n\"616400\";\"Gecherlau\";\"other\"\n\"616400\";\"Gechrlu\";\"other\"\n\"616400\";\"Мргашат\";\"other\"\n\"616401\";\"Mrganush\";\"main\"\n\"616401\";\"Zograblu\";\"other\"\n\"616401\";\"Мргануш\";\"other\"\n\"616403\";\"Mosesgegh\";\"main\"\n\"616403\";\"Mosesgekh\";\"other\"\n\"616403\";\"Мосесгех\";\"other\"\n\"616410\";\"Mets Parni\";\"main\"\n\"616410\";\"Bekyand\";\"other\"\n\"616410\";\"Mec-Parni\";\"other\"\n\"616410\";\"Parni\";\"other\"\n\"616410\";\"Мец-Парни\";\"other\"\n\"616411\";\"Mets Masrik\";\"main\"\n\"616411\";\"Bol'shaya Mazra\";\"other\"\n\"616411\";\"Bol’shaya Mazra\";\"other\"\n\"616411\";\"Mazra\";\"other\"\n\"616411\";\"Mec Mazra\";\"other\"\n\"616411\";\"Mets-Mazra\";\"other\"\n\"616411\";\"Мец Мазра\";\"other\"\n\"616412\";\"Mets Mant’ash\";\"main\"\n\"616412\";\"Mets Mant'ash\";\"ascii\"\n\"616412\";\"Bol'shoy Mantash\";\"other\"\n\"616412\";\"Bol’shoy Mantash\";\"other\"\n\"616412\";\"Mantash\";\"other\"\n\"616412\";\"Mec-Mantash\";\"other\"\n\"616412\";\"Mets Arikhvali\";\"other\"\n\"616412\";\"Metz Mantash\";\"other\"\n\"616412\";\"Мец-Манташ\";\"other\"\n\"616416\";\"Metsavan\";\"main\"\n\"616416\";\"Mecavan\";\"other\"\n\"616416\";\"Shakhnazar\";\"other\"\n\"616416\";\"Мецаван\";\"other\"\n\"616417\";\"Metsamor\";\"main\"\n\"616417\";\"Kamarlu\";\"other\"\n\"616417\";\"Mecamor\";\"other\"\n\"616417\";\"Мецамор\";\"other\"\n\"616418\";\"Mertsavan\";\"main\"\n\"616418\";\"Merdzavan\";\"other\"\n\"616418\";\"Мердзаван\";\"other\"\n\"616421\";\"Meghrashen\";\"main\"\n\"616421\";\"Kazanchi\";\"other\"\n\"616421\";\"Megrashen\";\"other\"\n\"616421\";\"Меграшен\";\"other\"\n\"616424\";\"Meghradzor\";\"main\"\n\"616424\";\"Megradzor\";\"other\"\n\"616424\";\"Taycharukh\";\"other\"\n\"616424\";\"Меградзор\";\"other\"\n\"616429\";\"Mayakovski\";\"main\"\n\"616429\";\"Majakovskij\";\"other\"\n\"616429\";\"Mayakovskiy\";\"other\"\n\"616429\";\"Shaab\";\"other\"\n\"616429\";\"Маяковский\";\"other\"\n\"616435\";\"Masis\";\"main\"\n\"616435\";\"Hrazdan\";\"other\"\n\"616435\";\"Narimanlu\";\"other\"\n\"616435\";\"Razdan\";\"other\"\n\"616435\";\"Takhanshalu\";\"other\"\n\"616435\";\"Tokhanshalu\";\"other\"\n\"616435\";\"Ulukhanlu\";\"other\"\n\"616435\";\"Zangibasar\";\"other\"\n\"616435\";\"Масис\";\"other\"\n\"616438\";\"Martuni\";\"main\"\n\"616438\";\"Karanlug\";\"other\"\n\"616438\";\"MARTUNI\";\"other\"\n\"616438\";\"Martuki\";\"other\"\n\"616438\";\"Martuny\";\"other\"\n\"616438\";\"Nerkin Karanlukh\";\"other\"\n\"616438\";\"Nizhniy-Karanlug\";\"other\"\n\"616438\";\"МАРТУНИ\";\"other\"\n\"616441\";\"Marmarashen\";\"main\"\n\"616441\";\"Marmorashen\";\"other\"\n\"616441\";\"Мармарашен\";\"other\"\n\"616442\";\"Marmashen\";\"main\"\n\"616442\";\"Kanlidzha\";\"other\"\n\"616442\";\"Verin Kanlidzha\";\"other\"\n\"616442\";\"Мармашен\";\"other\"\n\"616445\";\"Margahovit\";\"main\"\n\"616445\";\"Bozigekh\";\"other\"\n\"616445\";\"Gamzachemanskaya\";\"other\"\n\"616445\";\"Gamzachiman\";\"other\"\n\"616445\";\"Hamgach'iman\";\"other\"\n\"616445\";\"Hamgach’iman\";\"other\"\n\"616445\";\"Margaovit\";\"other\"\n\"616445\";\"Маргаовит\";\"other\"\n\"616446\";\"Maralik\";\"main\"\n\"616446\";\"MARALIK\";\"other\"\n\"616446\";\"Molla Gekcha\";\"other\"\n\"616446\";\"Molla Gëkcha\";\"other\"\n\"616446\";\"МАРАЛИК\";\"other\"\n\"616453\";\"Mayisyan\";\"main\"\n\"616453\";\"Maisian\";\"other\"\n\"616453\";\"Maisjan\";\"other\"\n\"616453\";\"Maisyan\";\"other\"\n\"616453\";\"Ortakilisa\";\"other\"\n\"616453\";\"Маисян\";\"other\"\n\"616456\";\"Madina\";\"main\"\n\"616456\";\"Мадина\";\"other\"\n\"616464\";\"Lukashin\";\"main\"\n\"616464\";\"Imeni Mikoyana\";\"other\"\n\"616464\";\"Лукашин\";\"other\"\n\"616465\";\"Lorut\";\"main\"\n\"616465\";\"Лорут\";\"other\"\n\"616471\";\"Lichk’\";\"main\"\n\"616471\";\"Lichk'\";\"ascii\"\n\"616471\";\"Gel\";\"other\"\n\"616471\";\"Gël\";\"other\"\n\"616471\";\"Lichk\";\"other\"\n\"616471\";\"Личк\";\"other\"\n\"616474\";\"Lernavan\";\"main\"\n\"616474\";\"Kachagan\";\"other\"\n\"616474\";\"Лернаван\";\"other\"\n\"616476\";\"Lerrnapat\";\"main\"\n\"616476\";\"Gadzhikara\";\"other\"\n\"616476\";\"Lernapat\";\"other\"\n\"616476\";\"Makarashen\";\"other\"\n\"616479\";\"Spitak\";\"main\"\n\"616479\";\"Lernantsk\";\"other\"\n\"616479\";\"Lerrnants'k'\";\"other\"\n\"616479\";\"Lerrnants’k’\";\"other\"\n\"616479\";\"Спитак\";\"other\"\n\"616480\";\"Lerrnanist\";\"main\"\n\"616480\";\"Lernanist\";\"other\"\n\"616480\";\"Verin Akhta\";\"other\"\n\"616480\";\"Verkhnyaya Akhta\";\"other\"\n\"616480\";\"Лернанист\";\"other\"\n\"616481\";\"Lerrnakert\";\"main\"\n\"616481\";\"Lernakert\";\"other\"\n\"616481\";\"Shirvan\";\"other\"\n\"616481\";\"Shirvandzhug\";\"other\"\n\"616484\";\"Khoronk’\";\"main\"\n\"616484\";\"Khoronk'\";\"ascii\"\n\"616484\";\"Lenughi\";\"other\"\n\"616484\";\"Lenugi\";\"other\"\n\"616484\";\"Nerkin Aylanlu\";\"other\"\n\"616484\";\"Nizhniy Aylanlu\";\"other\"\n\"616488\";\"Lchashen\";\"main\"\n\"616488\";\"Ordaklu\";\"other\"\n\"616488\";\"Лчашен\";\"other\"\n\"616489\";\"Lchap’\";\"main\"\n\"616489\";\"Lchap'\";\"ascii\"\n\"616489\";\"Agzibir\";\"other\"\n\"616489\";\"Lchap\";\"other\"\n\"616489\";\"Lehap\";\"other\"\n\"616489\";\"Лчап\";\"other\"\n\"616492\";\"Lanjaghbyur\";\"main\"\n\"616492\";\"Kyuzadzhik\";\"other\"\n\"616492\";\"Landzhakhbjur\";\"other\"\n\"616492\";\"Landzhakhpyur\";\"other\"\n\"616492\";\"Ланджахбюр\";\"other\"\n\"616522\";\"Kotayk’\";\"main\"\n\"616522\";\"Kotayk'\";\"ascii\"\n\"616522\";\"Yelgovan\";\"other\"\n\"616523\";\"Kosh\";\"main\"\n\"616523\";\"Кош\";\"other\"\n\"616530\";\"Vanadzor\";\"main\"\n\"616530\";\"Gharak'ilisa\";\"other\"\n\"616530\";\"Gharak’ilisa\";\"other\"\n\"616530\";\"KIROVAKAN\";\"other\"\n\"616530\";\"Karakhs\";\"other\"\n\"616530\";\"Karakilis\";\"other\"\n\"616530\";\"Karaklis\";\"other\"\n\"616530\";\"Kirovakan\";\"other\"\n\"616530\";\"Kirowakan\";\"other\"\n\"616530\";\"Korovakan\";\"other\"\n\"616530\";\"Mets Karakilisa\";\"other\"\n\"616530\";\"Vanajor\";\"other\"\n\"616530\";\"Wanadsor\";\"other\"\n\"616530\";\"Wanadzor\";\"other\"\n\"616530\";\"wanadzwr\";\"other\"\n\"616530\";\"Ванадзор\";\"other\"\n\"616530\";\"КИРОВАКАН\";\"other\"\n\"616530\";\"Վանաձոր\";\"other\"\n\"616530\";\"وانادزور\";\"other\"\n\"616535\";\"Hnaberd\";\"main\"\n\"616535\";\"Khnaberd\";\"other\"\n\"616535\";\"Kirkhdagirman\";\"other\"\n\"616535\";\"Kyrkhdagirman\";\"other\"\n\"616535\";\"Хнаберд\";\"other\"\n\"616537\";\"Khasht’arrak\";\"main\"\n\"616537\";\"Khasht'arrak\";\"ascii\"\n\"616537\";\"Khashtarak\";\"other\"\n\"616537\";\"Хаштарак\";\"other\"\n\"616554\";\"Kasakh\";\"main\"\n\"616554\";\"Chamrlu\";\"other\"\n\"616554\";\"Chamyrlu\";\"other\"\n\"616554\";\"Касах\";\"other\"\n\"616572\";\"Karchaghbyur\";\"main\"\n\"616572\";\"Gedakbulag\";\"other\"\n\"616572\";\"Karchaghpyur\";\"other\"\n\"616572\";\"Karchakhpjur\";\"other\"\n\"616572\";\"Karchakhpyur\";\"other\"\n\"616572\";\"Карчахпюр\";\"other\"\n\"616573\";\"Karbi\";\"main\"\n\"616573\";\"Карби\";\"other\"\n\"616576\";\"Karanlukh\";\"main\"\n\"616576\";\"Verkhniy Karanlug\";\"other\"\n\"616590\";\"Kaputan\";\"main\"\n\"616590\";\"Geykilisa\";\"other\"\n\"616590\";\"Gëykilisa\";\"other\"\n\"616590\";\"Капутан\";\"other\"\n\"616593\";\"K’anak’erravan\";\"main\"\n\"616593\";\"K'anak'erravan\";\"ascii\"\n\"616593\";\"Kanakeravan\";\"other\"\n\"616593\";\"Kenaker\";\"other\"\n\"616593\";\"Kenakeravan\";\"other\"\n\"616593\";\"Murad Tapa\";\"other\"\n\"616598\";\"Kamo\";\"main\"\n\"616598\";\"Gadzhi Nazar\";\"other\"\n\"616598\";\"Камо\";\"other\"\n\"616599\";\"Gavarr\";\"main\"\n\"616599\";\"Gavar\";\"other\"\n\"616599\";\"KAMO\";\"other\"\n\"616599\";\"Kamo\";\"other\"\n\"616599\";\"Kyavar\";\"other\"\n\"616599\";\"Nor Bayazet\";\"other\"\n\"616599\";\"Nor-Bajaset\";\"other\"\n\"616599\";\"Novo Bayazet\";\"other\"\n\"616599\";\"Novyi Bayaset\";\"other\"\n\"616599\";\"КАМО\";\"other\"\n\"616617\";\"Zhdanov\";\"main\"\n\"616617\";\"Imeni Beriya\";\"other\"\n\"616617\";\"Imeni Zhdanova\";\"other\"\n\"616617\";\"Жданов\";\"other\"\n\"616620\";\"Shahumyan\";\"main\"\n\"616620\";\"Imeni Shaumyana\";\"other\"\n\"616620\";\"Shahumian\";\"other\"\n\"616620\";\"Shahumyani Anvan Avazan\";\"other\"\n\"616620\";\"Shaumjan\";\"other\"\n\"616620\";\"Shaumyan\";\"other\"\n\"616620\";\"Шаумян\";\"other\"\n\"616627\";\"Ijevan\";\"main\"\n\"616627\";\"IDZHEVAN\";\"other\"\n\"616627\";\"Idzhevan\";\"other\"\n\"616627\";\"Istibulagh\";\"other\"\n\"616627\";\"K'aravansaray\";\"other\"\n\"616627\";\"K'arvansara\";\"other\"\n\"616627\";\"K'ervansera\";\"other\"\n\"616627\";\"Karavan Savan\";\"other\"\n\"616627\";\"Karavansarai\";\"other\"\n\"616627\";\"K’aravansaray\";\"other\"\n\"616627\";\"K’arvansara\";\"other\"\n\"616627\";\"K’ervansera\";\"other\"\n\"616627\";\"ИДЖЕВАН\";\"other\"\n\"616629\";\"Hrazdan\";\"main\"\n\"616629\";\"Akhta\";\"other\"\n\"616629\";\"Akhtala\";\"other\"\n\"616629\";\"Akhti\";\"other\"\n\"616629\";\"Nerkin Akhta\";\"other\"\n\"616629\";\"Nizhne Akhti\";\"other\"\n\"616629\";\"Nizhniye Akhty\";\"other\"\n\"616629\";\"Nizhnyaya Akhta\";\"other\"\n\"616629\";\"Razdan\";\"other\"\n\"616629\";\"Раздан\";\"other\"\n\"616631\";\"Armavir\";\"main\"\n\"616631\";\"Hoktemberyan\";\"other\"\n\"616631\";\"Oktember\";\"other\"\n\"616631\";\"Oktemberyan\";\"other\"\n\"616631\";\"Sardar-Abad\";\"other\"\n\"616631\";\"Sardarapat\";\"other\"\n\"616631\";\"Октембер\";\"other\"\n\"616632\";\"Hayanist\";\"main\"\n\"616632\";\"Dostlug\";\"other\"\n\"616634\";\"Haghartsin\";\"main\"\n\"616634\";\"Dzharkhech\";\"other\"\n\"616634\";\"Dzharkhedzh\";\"other\"\n\"616634\";\"Haghardzin\";\"other\"\n\"616634\";\"Kujbyshev\";\"other\"\n\"616634\";\"Kuybishev\";\"other\"\n\"616634\";\"Kuybyshev\";\"other\"\n\"616634\";\"Куйбышев\";\"other\"\n\"616635\";\"Gyumri\";\"main\"\n\"616635\";\"Alek'pol\";\"other\"\n\"616635\";\"Alek'sandrapol\";\"other\"\n\"616635\";\"Alek'sandrobol\";\"other\"\n\"616635\";\"Aleksandropol'\";\"other\"\n\"616635\";\"Aleksandropol’\";\"other\"\n\"616635\";\"Alek’pol\";\"other\"\n\"616635\";\"Alek’sandrapol\";\"other\"\n\"616635\";\"Alek’sandrobol\";\"other\"\n\"616635\";\"Alexandropol'\";\"other\"\n\"616635\";\"Alexandropol’\";\"other\"\n\"616635\";\"GJUMRI\";\"other\"\n\"616635\";\"Gimri\";\"other\"\n\"616635\";\"Giumri\";\"other\"\n\"616635\";\"Gjumri\";\"other\"\n\"616635\";\"Guemrue\";\"other\"\n\"616635\";\"Gumri\";\"other\"\n\"616635\";\"Gumru\";\"other\"\n\"616635\";\"Gumry\";\"other\"\n\"616635\";\"Gümrü\";\"other\"\n\"616635\";\"Kumayri\";\"other\"\n\"616635\";\"Kumri\";\"other\"\n\"616635\";\"Kyumayri\";\"other\"\n\"616635\";\"Kyumri\";\"other\"\n\"616635\";\"Kümri\";\"other\"\n\"616635\";\"Leninakan\";\"other\"\n\"616635\";\"gyumuri\";\"other\"\n\"616635\";\"gywmry\";\"other\"\n\"616635\";\"jiu mu li\";\"other\"\n\"616635\";\"ГЮМРИ\";\"other\"\n\"616635\";\"Гюмри\";\"other\"\n\"616635\";\"Гјумри\";\"other\"\n\"616635\";\"Գյումրի\";\"other\"\n\"616635\";\"گیومری\";\"other\"\n\"616635\";\"ギュムリ\";\"other\"\n\"616635\";\"久姆里\";\"other\"\n\"616639\";\"Gyulagarak\";\"main\"\n\"616639\";\"Gjulagarak\";\"other\"\n\"616639\";\"Gyulabarrak\";\"other\"\n\"616639\";\"Gyulagorak\";\"other\"\n\"616639\";\"Гюлагарак\";\"other\"\n\"616645\";\"Ghukasavan\";\"main\"\n\"616645\";\"Gukasavan\";\"other\"\n\"616645\";\"Kalara\";\"other\"\n\"616645\";\"Гукасаван\";\"other\"\n\"616646\";\"Geghamasar\";\"main\"\n\"616646\";\"Gukarrich\";\"other\"\n\"616646\";\"Shishkaja\";\"other\"\n\"616646\";\"Shishkaya\";\"other\"\n\"616646\";\"Sisqaya\";\"other\"\n\"616646\";\"Şişqaya\";\"other\"\n\"616646\";\"Шишкая\";\"other\"\n\"616648\";\"Gugark’\";\"main\"\n\"616648\";\"Gugark'\";\"ascii\"\n\"616648\";\"Gugark\";\"other\"\n\"616648\";\"Meghrut\";\"other\"\n\"616648\";\"Megrut\";\"other\"\n\"616648\";\"Yagublu\";\"other\"\n\"616648\";\"Гугарк\";\"other\"\n\"616650\";\"Tsiatsan\";\"main\"\n\"616650\";\"Ciacan\";\"other\"\n\"616650\";\"Grampa\";\"other\"\n\"616650\";\"Циацан\";\"other\"\n\"616657\";\"Goght’\";\"main\"\n\"616657\";\"Goght'\";\"ascii\"\n\"616657\";\"Gokht\";\"other\"\n\"616659\";\"Gogaran\";\"main\"\n\"616659\";\"Geran\";\"other\"\n\"616659\";\"Gëran\";\"other\"\n\"616659\";\"Гогаран\";\"other\"\n\"616668\";\"Getazat\";\"main\"\n\"616668\";\"Agdzhakishlag\";\"other\"\n\"616668\";\"Getashen\";\"other\"\n\"616668\";\"Гетазат\";\"other\"\n\"616669\";\"Getashen\";\"main\"\n\"616669\";\"Dzhafarabat\";\"other\"\n\"616669\";\"Kalagar\";\"other\"\n\"616669\";\"Геташен\";\"other\"\n\"616682\";\"Geghanist\";\"main\"\n\"616682\";\"Gekhanist\";\"other\"\n\"616682\";\"Getapnia\";\"other\"\n\"616682\";\"Geygmbet\";\"other\"\n\"616682\";\"Gëygmbet\";\"other\"\n\"616682\";\"Геханист\";\"other\"\n\"616692\";\"Geghamavan\";\"main\"\n\"616692\";\"Gegamavan\";\"other\"\n\"616692\";\"Shagriz\";\"other\"\n\"616692\";\"Гегамаван\";\"other\"\n\"616697\";\"Garrni\";\"main\"\n\"616697\";\"Bash Gyarni\";\"other\"\n\"616697\";\"Garni\";\"other\"\n\"616697\";\"Гарни\";\"other\"\n\"616699\";\"Gagarin\";\"main\"\n\"616699\";\"GAGARIN\";\"other\"\n\"616699\";\"ГАГАРИН\";\"other\"\n\"616701\";\"Fantan\";\"main\"\n\"616701\";\"Fontan\";\"other\"\n\"616702\";\"Fioletovo\";\"main\"\n\"616702\";\"Nikitino\";\"other\"\n\"616702\";\"Фиолетово\";\"other\"\n\"616712\";\"Dzoraghbyur\";\"main\"\n\"616712\";\"Dzhorakhpyur\";\"other\"\n\"616712\";\"Dzoraghp'yur\";\"other\"\n\"616712\";\"Dzoraghp’yur\";\"other\"\n\"616712\";\"Dzorakhbjur\";\"other\"\n\"616712\";\"Dzorakhpyur\";\"other\"\n\"616712\";\"Tedshirabad\";\"other\"\n\"616712\";\"Tedzhirabad\";\"other\"\n\"616712\";\"Tedzhrabak\";\"other\"\n\"616712\";\"Дзорахбюр\";\"other\"\n\"616716\";\"Dzoragyugh\";\"main\"\n\"616716\";\"Dzoraget\";\"other\"\n\"616716\";\"Dzoragyukh\";\"other\"\n\"616716\";\"Vali Agalu\";\"other\"\n\"616716\";\"Дзорагет\";\"other\"\n\"616719\";\"Dzit’hank’ov\";\"main\"\n\"616719\";\"Dzit'hank'ov\";\"ascii\"\n\"616719\";\"Bazirkhana\";\"other\"\n\"616719\";\"Dzitankov\";\"other\"\n\"616719\";\"Dzitkhankov\";\"other\"\n\"616719\";\"Дзитанков\";\"other\"\n\"616722\";\"Jrashen\";\"main\"\n\"616722\";\"Dzhrashen\";\"other\"\n\"616722\";\"Vardnav\";\"other\"\n\"616722\";\"Vordnav\";\"other\"\n\"616722\";\"Vortnav\";\"other\"\n\"616722\";\"Джрашен\";\"other\"\n\"616724\";\"Jrashen\";\"main\"\n\"616724\";\"Dzhrashen\";\"other\"\n\"616724\";\"Nor Dzhrashen\";\"other\"\n\"616724\";\"Джрашен\";\"other\"\n\"616729\";\"Jrahovit\";\"main\"\n\"616729\";\"Dzhabachalu\";\"other\"\n\"616729\";\"Dzharovit\";\"other\"\n\"616729\";\"Dzhraovit\";\"other\"\n\"616729\";\"Джаровит\";\"other\"\n\"616735\";\"Janfida\";\"main\"\n\"616735\";\"Dzhanfida\";\"other\"\n\"616735\";\"Джанфида\";\"other\"\n\"616741\";\"Dvin\";\"main\"\n\"616741\";\"Dvin Armyanskiy\";\"other\"\n\"616741\";\"Nerkin Dvin\";\"other\"\n\"616741\";\"Nizhniy Dvin\";\"other\"\n\"616741\";\"Двин\";\"other\"\n\"616742\";\"Dsegh\";\"main\"\n\"616742\";\"Dsekh\";\"other\"\n\"616742\";\"Tumanyan\";\"other\"\n\"616742\";\"Дсех\";\"other\"\n\"616744\";\"Drakhtik\";\"main\"\n\"616744\";\"Tokhludzha\";\"other\"\n\"616744\";\"Тохлуджа\";\"other\"\n\"616748\";\"Doghs\";\"main\"\n\"616748\";\"Dokhs\";\"other\"\n\"616752\";\"Dilijan\";\"main\"\n\"616752\";\"DILIZHAN\";\"other\"\n\"616752\";\"Delijan\";\"other\"\n\"616752\";\"Delishan\";\"other\"\n\"616752\";\"Delizhan\";\"other\"\n\"616752\";\"Dili\";\"other\"\n\"616752\";\"Dili P'ok'r\";\"other\"\n\"616752\";\"Dili P’ok’r\";\"other\"\n\"616752\";\"Dilichan\";\"other\"\n\"616752\";\"Dilishan\";\"other\"\n\"616752\";\"Dilizhan\";\"other\"\n\"616752\";\"Hin\";\"other\"\n\"616752\";\"Tili\";\"other\"\n\"616752\";\"Tilichan\";\"other\"\n\"616752\";\"ДИЛИЖАН\";\"other\"\n\"616757\";\"Ddmashen\";\"main\"\n\"616757\";\"Dodmashen\";\"other\"\n\"616757\";\"Totmashen\";\"other\"\n\"616757\";\"Ддмашен\";\"other\"\n\"616763\";\"Darpas\";\"main\"\n\"616763\";\"Darbas\";\"other\"\n\"616763\";\"Дарпас\";\"other\"\n\"616769\";\"Dalarik\";\"main\"\n\"616769\";\"Mastara\";\"other\"\n\"616769\";\"Даларик\";\"other\"\n\"616773\";\"Chochkan\";\"main\"\n\"616786\";\"Chambarak\";\"main\"\n\"616786\";\"CHAMBARAK\";\"other\"\n\"616786\";\"Kraside\";\"other\"\n\"616786\";\"Krasnosel'sk\";\"other\"\n\"616786\";\"Krasnosel’sk\";\"other\"\n\"616786\";\"Krasnoye\";\"other\"\n\"616786\";\"Mikhaylovka\";\"other\"\n\"616786\";\"ЧАМБАРАК\";\"other\"\n\"616789\";\"Bjni\";\"main\"\n\"616789\";\"Bzhni\";\"other\"\n\"616790\";\"Byureghavan\";\"main\"\n\"616790\";\"Bjuregavan\";\"other\"\n\"616790\";\"Byuregavan\";\"other\"\n\"616790\";\"Бюрегаван\";\"other\"\n\"616791\";\"Byurakan\";\"main\"\n\"616791\";\"Biurakan\";\"other\"\n\"616791\";\"Bjurakan\";\"other\"\n\"616791\";\"Burakan\";\"other\"\n\"616791\";\"Бюракан\";\"other\"\n\"616792\";\"Buzhakan\";\"main\"\n\"616792\";\"Babakishi\";\"other\"\n\"616792\";\"Бужакан\";\"other\"\n\"616802\";\"Berd\";\"main\"\n\"616802\";\"BERD\";\"other\"\n\"616802\";\"Berrdagyugh\";\"other\"\n\"616802\";\"Berrdgyugh\";\"other\"\n\"616802\";\"Bert\";\"other\"\n\"616802\";\"Ghalak'yand\";\"other\"\n\"616802\";\"Ghalak’yand\";\"other\"\n\"616802\";\"Shlorut\";\"other\"\n\"616802\";\"T'auzk'end\";\"other\"\n\"616802\";\"T'auzkala\";\"other\"\n\"616802\";\"T'avuzghala\";\"other\"\n\"616802\";\"T'ous\";\"other\"\n\"616802\";\"T'ous Gale\";\"other\"\n\"616802\";\"T'ovuz\";\"other\"\n\"616802\";\"T'uzukala\";\"other\"\n\"616802\";\"Taua Kale\";\"other\"\n\"616802\";\"Taya-Kala\";\"other\"\n\"616802\";\"Tovuz\";\"other\"\n\"616802\";\"Tovuzkala\";\"other\"\n\"616802\";\"T’auzkala\";\"other\"\n\"616802\";\"T’auzk’end\";\"other\"\n\"616802\";\"T’avuzghala\";\"other\"\n\"616802\";\"T’ous\";\"other\"\n\"616802\";\"T’ous Gale\";\"other\"\n\"616802\";\"T’ovuz\";\"other\"\n\"616802\";\"T’uzukala\";\"other\"\n\"616802\";\"Volorut\";\"other\"\n\"616802\";\"БЕРД\";\"other\"\n\"616802\";\"Товуз\";\"other\"\n\"616806\";\"Bazum\";\"main\"\n\"616806\";\"Bzovdal\";\"other\"\n\"616806\";\"Базум\";\"other\"\n\"616822\";\"Byuravan\";\"main\"\n\"616822\";\"Bambakavan\";\"other\"\n\"616822\";\"Bjuravan\";\"other\"\n\"616822\";\"Verin Kuylasar\";\"other\"\n\"616822\";\"Verkhniy Kuylasar\";\"other\"\n\"616822\";\"Бюраван\";\"other\"\n\"616823\";\"Bambakashat\";\"main\"\n\"616823\";\"Molla Bayazet\";\"other\"\n\"616823\";\"Бамбакашат\";\"other\"\n\"616824\";\"Balahovit\";\"main\"\n\"616824\";\"Balakhovit\";\"other\"\n\"616824\";\"Balaovit\";\"other\"\n\"616824\";\"Mehub\";\"other\"\n\"616824\";\"Mekhub\";\"other\"\n\"616824\";\"Mgub\";\"other\"\n\"616824\";\"Балаовит\";\"other\"\n\"616824\";\"Балаховит\";\"other\"\n\"616828\";\"Bagratashen\";\"main\"\n\"616828\";\"Баграташен\";\"other\"\n\"616835\";\"Azatan\";\"main\"\n\"616835\";\"Karakhs\";\"other\"\n\"616835\";\"Karakilisa\";\"other\"\n\"616835\";\"Pokr Karakilisa\";\"other\"\n\"616835\";\"Азатан\";\"other\"\n\"616844\";\"Haykavan\";\"main\"\n\"616844\";\"Ajkavan\";\"other\"\n\"616844\";\"Aykavan\";\"other\"\n\"616844\";\"Badzhogli\";\"other\"\n\"616844\";\"Айкаван\";\"other\"\n\"616849\";\"Aygestan\";\"main\"\n\"616849\";\"Ajgestan\";\"other\"\n\"616849\";\"Ayaslu\";\"other\"\n\"616849\";\"Айгестан\";\"other\"\n\"616850\";\"Aygeshat\";\"main\"\n\"616850\";\"Ajgeshat\";\"other\"\n\"616850\";\"Gadzhikara\";\"other\"\n\"616850\";\"Айгешат\";\"other\"\n\"616851\";\"Aygeshat\";\"main\"\n\"616851\";\"Ajgeshat\";\"other\"\n\"616851\";\"Kuzigidan\";\"other\"\n\"616851\";\"Айгешат\";\"other\"\n\"616853\";\"Aknalich\";\"main\"\n\"616853\";\"Aygerlich\";\"other\"\n\"616853\";\"Акналич\";\"other\"\n\"616855\";\"Aygehovit\";\"main\"\n\"616855\";\"Ajgeovit\";\"other\"\n\"616855\";\"Aygeovit\";\"other\"\n\"616855\";\"Onut\";\"other\"\n\"616855\";\"Uzuntala\";\"other\"\n\"616855\";\"Айгеовит\";\"other\"\n\"616872\";\"Artimet\";\"main\"\n\"616872\";\"Alibeklu\";\"other\"\n\"616872\";\"Atarbekyan\";\"other\"\n\"616872\";\"Артимет\";\"other\"\n\"616874\";\"Astghadzor\";\"main\"\n\"616874\";\"Alikrykh\";\"other\"\n\"616874\";\"Astkhadzor\";\"other\"\n\"616874\";\"Астхадзор\";\"other\"\n\"616877\";\"Ashtarak\";\"main\"\n\"616877\";\"ASHTARAK\";\"other\"\n\"616877\";\"Achtarak\";\"other\"\n\"616877\";\"Aschtarak\";\"other\"\n\"616877\";\"Ashtarakats' Gyugh\";\"other\"\n\"616877\";\"Ashtarakats’ Gyugh\";\"other\"\n\"616877\";\"Astarak\";\"other\"\n\"616877\";\"Aştarak\";\"other\"\n\"616877\";\"Aštarak\";\"other\"\n\"616877\";\"ashtarak\";\"other\"\n\"616877\";\"АШТАРАК\";\"other\"\n\"616877\";\"Аштарак\";\"other\"\n\"616877\";\"Աշտարակ\";\"other\"\n\"616877\";\"آشتاراک\";\"other\"\n\"616879\";\"Ashnak\";\"main\"\n\"616879\";\"Ашнак\";\"other\"\n\"616881\";\"Arzni\";\"main\"\n\"616881\";\"ARZNI\";\"other\"\n\"616881\";\"АРЗНИ\";\"other\"\n\"616882\";\"Arzakan\";\"main\"\n\"616882\";\"Arzakyand\";\"other\"\n\"616882\";\"Арзакан\";\"other\"\n\"616888\";\"Arteni\";\"main\"\n\"616888\";\"Bogutlu\";\"other\"\n\"616888\";\"Артени\";\"other\"\n\"616898\";\"Arshaluys\";\"main\"\n\"616898\";\"Arshalujs\";\"other\"\n\"616898\";\"Kerpalu\";\"other\"\n\"616898\";\"Kërpalu\";\"other\"\n\"616898\";\"Аршалуйс\";\"other\"\n\"616902\";\"Armavir\";\"main\"\n\"616902\";\"Kurdukuli\";\"other\"\n\"616902\";\"Армавир\";\"other\"\n\"616912\";\"Argel\";\"main\"\n\"616912\";\"ARGEL\";\"other\"\n\"616912\";\"Arkel\";\"other\"\n\"616912\";\"Lusakert\";\"other\"\n\"616912\";\"АРГЕЛ\";\"other\"\n\"616913\";\"Argavand\";\"main\"\n\"616913\";\"Dzhafarapat\";\"other\"\n\"616913\";\"Аргаванд\";\"other\"\n\"616914\";\"Argavand\";\"main\"\n\"616914\";\"Uzunoba\";\"other\"\n\"616914\";\"Аргаванд\";\"other\"\n\"616915\";\"Arevshat\";\"main\"\n\"616915\";\"Yekan\";\"other\"\n\"616915\";\"Yekanlar\";\"other\"\n\"616915\";\"Аревшат\";\"other\"\n\"616916\";\"Arevshat\";\"main\"\n\"616916\";\"Arpavar\";\"other\"\n\"616916\";\"Lusakert\";\"other\"\n\"616916\";\"Nerkin Agbash\";\"other\"\n\"616916\";\"Nizhniy Agbash\";\"other\"\n\"616916\";\"Аревшат\";\"other\"\n\"616917\";\"Arevik\";\"main\"\n\"616917\";\"Tapadolag\";\"other\"\n\"616917\";\"Tapadolak\";\"other\"\n\"616917\";\"Аревик\";\"other\"\n\"616918\";\"Arevik\";\"main\"\n\"616918\";\"Agdzharkh\";\"other\"\n\"616918\";\"Аревик\";\"other\"\n\"616920\";\"Arevashogh\";\"main\"\n\"616920\";\"Arevashokh\";\"other\"\n\"616920\";\"Chigdamal\";\"other\"\n\"616920\";\"Chikdamal\";\"other\"\n\"616920\";\"Аревашох\";\"other\"\n\"616921\";\"Arevashat\";\"main\"\n\"616921\";\"Arevashet\";\"other\"\n\"616921\";\"Varmaziar\";\"other\"\n\"616921\";\"Аревашат\";\"other\"\n\"616931\";\"Archis\";\"main\"\n\"616932\";\"Arbat’\";\"main\"\n\"616932\";\"Arbat'\";\"ascii\"\n\"616933\";\"Arazap\";\"main\"\n\"616933\";\"Evdzhilar\";\"other\"\n\"616933\";\"Аразап\";\"other\"\n\"616935\";\"Arrap’i\";\"main\"\n\"616935\";\"Arrap'i\";\"ascii\"\n\"616935\";\"Arapi\";\"other\"\n\"616935\";\"Odzhakhkuli\";\"other\"\n\"616936\";\"Aramus\";\"main\"\n\"616938\";\"Arak’s\";\"main\"\n\"616938\";\"Arak's\";\"ascii\"\n\"616938\";\"Nerkin Karkhun\";\"other\"\n\"616938\";\"Nizhniy Karkhun\";\"other\"\n\"616944\";\"Aragats\";\"main\"\n\"616944\";\"Aragac\";\"other\"\n\"616944\";\"Kaznafar\";\"other\"\n\"616944\";\"Арагац\";\"other\"\n\"616953\";\"Aparan\";\"main\"\n\"616953\";\"APARAN\";\"other\"\n\"616953\";\"Abaran\";\"other\"\n\"616953\";\"Abaran Verin\";\"other\"\n\"616953\";\"Aparan Verin\";\"other\"\n\"616953\";\"Aparanbol\";\"other\"\n\"616953\";\"Aparanpol\";\"other\"\n\"616953\";\"Bash Abaran\";\"other\"\n\"616953\";\"Bash Aparan\";\"other\"\n\"616953\";\"Dash Abaron\";\"other\"\n\"616953\";\"K'asagh\";\"other\"\n\"616953\";\"K'asakh\";\"other\"\n\"616953\";\"K’asagh\";\"other\"\n\"616953\";\"K’asakh\";\"other\"\n\"616953\";\"P'araznavert\";\"other\"\n\"616953\";\"Pash Aparan\";\"other\"\n\"616953\";\"P’araznavert\";\"other\"\n\"616953\";\"АПАРАН\";\"other\"\n\"616954\";\"Apaga\";\"main\"\n\"616954\";\"Verin Turkmenlu\";\"other\"\n\"616954\";\"Апага\";\"other\"\n\"616955\";\"Anushavan\";\"main\"\n\"616955\";\"Parni\";\"other\"\n\"616955\";\"Pokr Parni\";\"other\"\n\"616955\";\"Анушаван\";\"other\"\n\"616971\";\"Amasia\";\"main\"\n\"616971\";\"Amasija\";\"other\"\n\"616971\";\"Amasiya\";\"other\"\n\"616971\";\"Gukasyan\";\"other\"\n\"616971\";\"Амасия\";\"other\"\n\"616974\";\"Alaverdi\";\"main\"\n\"616974\";\"ALAVERDI\";\"other\"\n\"616974\";\"Alaverdy\";\"other\"\n\"616974\";\"Alawerdy\";\"other\"\n\"616974\";\"Allaverdy\";\"other\"\n\"616974\";\"Aławerdy\";\"other\"\n\"616974\";\"Manes\";\"other\"\n\"616974\";\"АЛАВЕРДИ\";\"other\"\n\"616974\";\"Алаверди\";\"other\"\n\"616974\";\"Ալավերդի\";\"other\"\n\"616974\";\"الله‌وردی\";\"other\"\n\"616981\";\"Akunk’\";\"main\"\n\"616981\";\"Akunk'\";\"ascii\"\n\"616981\";\"Bashgyukh\";\"other\"\n\"616982\";\"Akunk’\";\"main\"\n\"616982\";\"Akunk'\";\"ascii\"\n\"616982\";\"Kirkhbulag\";\"other\"\n\"616989\";\"Akhuryan\";\"main\"\n\"616989\";\"Akhurjan\";\"other\"\n\"616989\";\"Duzk'end\";\"other\"\n\"616989\";\"Duzk'end Mets\";\"other\"\n\"616989\";\"Duzk'yand\";\"other\"\n\"616989\";\"Duzk’end\";\"other\"\n\"616989\";\"Duzk’end Mets\";\"other\"\n\"616989\";\"Duzk’yand\";\"other\"\n\"616989\";\"Ахурян\";\"other\"\n\"617002\";\"Aghavnatun\";\"main\"\n\"617002\";\"Agavnatun\";\"other\"\n\"617002\";\"Akhavnatukh\";\"other\"\n\"617002\";\"Akhavnatun\";\"other\"\n\"617002\";\"Агавнатун\";\"other\"\n\"617002\";\"Ахавнатун\";\"other\"\n\"617003\";\"Aghavnadzor\";\"main\"\n\"617003\";\"Agavnadzor\";\"other\"\n\"617003\";\"Akhavnadzor\";\"other\"\n\"617003\";\"Babakishi\";\"other\"\n\"617003\";\"Агавнадзор\";\"other\"\n\"617018\";\"Agarak\";\"main\"\n\"617019\";\"Agarak\";\"main\"\n\"617026\";\"Abovyan\";\"main\"\n\"617026\";\"ABOVJAN\";\"other\"\n\"617026\";\"Elar\";\"other\"\n\"617026\";\"АБОВЯН\";\"other\"\n\"617027\";\"Abovyan\";\"main\"\n\"617027\";\"Abovjan\";\"other\"\n\"617027\";\"Agbash\";\"other\"\n\"617027\";\"Verin Agbash\";\"other\"\n\"617027\";\"Verkhniy Agbash\";\"other\"\n\"617027\";\"Абовян\";\"other\"\n\"793638\";\"Vardablur\";\"main\"\n\"793638\";\"Verdablur\";\"other\"\n\"793638\";\"Вардаблур\";\"other\"\n\"793672\";\"Bartsrashen\";\"main\"\n\"793672\";\"Bardzrashen\";\"other\"\n\"793693\";\"Nshavan\";\"main\"\n\"799614\";\"Norabats’\";\"main\"\n\"799614\";\"Norabats'\";\"ascii\"\n\"799614\";\"Norashen\";\"other\"\n\"823723\";\"Berdavan\";\"main\"\n\"823745\";\"Shirakamut\";\"main\"\n\"823745\";\"Ширакамут\";\"other\"\n\"823748\";\"Azatamut\";\"main\"\n\"823748\";\"AZANUT\";\"other\"\n\"823748\";\"АЗАНУТ\";\"other\"\n\"823749\";\"Getahovit\";\"main\"\n\"823755\";\"Artsvaberd\";\"main\"\n\"823755\";\"Arcvaberd\";\"other\"\n\"823755\";\"Арцваберд\";\"other\"\n\"823791\";\"Nor Yerznka\";\"main\"\n\"823793\";\"Nor Sasunik\";\"main\"\n\"823793\";\"Sasunik\";\"other\"\n\"823797\";\"Kamaris\";\"main\"\n\"823800\";\"Gandzak\";\"main\"\n\"823802\";\"Myasnikyan\";\"main\"\n\"823802\";\"Mjasnikjan\";\"other\"\n\"823802\";\"Мясникян\";\"other\"\n\"823805\";\"Lenughi\";\"main\"\n\"823807\";\"Metsamor\";\"main\"\n\"823807\";\"MECAMOR\";\"other\"\n\"823807\";\"МЕЦАМОР\";\"other\"\n\"823808\";\"Gay\";\"main\"\n\"823809\";\"Baghramyan\";\"main\"\n\"823809\";\"Bagramyan\";\"other\"\n\"823810\";\"Musalerr\";\"main\"\n\"823810\";\"Musaler\";\"other\"\n\"823811\";\"Darakert\";\"main\"\n\"823812\";\"Dashtavan\";\"main\"\n\"823813\";\"Nizami\";\"main\"\n\"823818\";\"Artsvanist\";\"main\"\n\"859714\";\"Vardadzor\";\"main\"\n\"866081\";\"Taronik\";\"main\"\n\"866089\";\"Aknashen\";\"main\"\n\"866090\";\"Haykashen\";\"main\"\n\"866090\";\"Aykashen\";\"other\"\n\"866091\";\"Hovtashat\";\"main\"\n\"866091\";\"Ovtashat\";\"other\"\n\"866092\";\"Sayat’-Nova\";\"main\"\n\"866092\";\"Sayat'-Nova\";\"ascii\"\n\"866093\";\"Voskehat\";\"main\"\n\"866093\";\"Voskeat\";\"other\"\n\"866095\";\"Griboyedov\";\"main\"\n\"866097\";\"Amberd\";\"main\"\n\"866098\";\"Aygek\";\"main\"\n\"866134\";\"Hovtashen\";\"main\"\n\"866134\";\"Ovtashen\";\"other\"\n\"866135\";\"Dimitrov\";\"main\"\n\"866137\";\"Mrgavet\";\"main\"\n\"866138\";\"Arevabuyr\";\"main\"\n\"3513090\";\"Willemstad\";\"main\"\n\"3513090\";\"Vilemstad\";\"other\"\n\"3513090\";\"billemseutadeu\";\"other\"\n\"3513090\";\"u~iremusutaddo\";\"other\"\n\"3513090\";\"wei lian si ta de\";\"other\"\n\"3513090\";\"Вилемстад\";\"other\"\n\"3513090\";\"וילמסטאד\";\"other\"\n\"3513090\";\"ウィレムスタッド\";\"other\"\n\"3513090\";\"威廉斯塔德\";\"other\"\n\"3513090\";\"빌렘스타드\";\"other\"\n\"3513221\";\"Sint Michiel Liber\";\"main\"\n\"3513392\";\"Philipsburg\";\"main\"\n\"3513392\";\"Filipsburg\";\"other\"\n\"3513392\";\"Great Bay\";\"other\"\n\"3513392\";\"Филипсбург\";\"other\"\n\"3513426\";\"Oranjestad\";\"main\"\n\"3513426\";\"Orange Town\";\"other\"\n\"3513445\";\"Newport\";\"main\"\n\"3513445\";\"Nieuwpoort\";\"other\"\n\"3513563\";\"Kralendijk\";\"main\"\n\"3513563\";\"Playa\";\"other\"\n\"3513760\";\"Dorp Tera Kora\";\"main\"\n\"3513760\";\"Dorp Tera Cora\";\"other\"\n\"3513760\";\"Dorp Tera Corá\";\"other\"\n\"3513760\";\"Terra Corra\";\"other\"\n\"3513761\";\"Dorp Soto\";\"main\"\n\"3513761\";\"Soto\";\"other\"\n\"3513765\";\"Dorp Rincón\";\"main\"\n\"3513765\";\"Dorp Rincon\";\"ascii\"\n\"3513765\";\"Dorp Rincan\";\"other\"\n\"3513765\";\"Rincon\";\"other\"\n\"3513765\";\"Rincón\";\"other\"\n\"3513768\";\"Dorp Antriol\";\"main\"\n\"3513768\";\"Deenterra\";\"other\"\n\"3513768\";\"Dentera\";\"other\"\n\"3513768\";\"Entrejol\";\"other\"\n\"3513794\";\"Duth Cul de Sac\";\"main\"\n\"3513794\";\"Cul de Sac\";\"other\"\n\"3513936\";\"Barber\";\"main\"\n\"145531\";\"Saurimo\";\"main\"\n\"145531\";\"Henrique de Carvalho\";\"other\"\n\"145531\";\"Saurimu\";\"other\"\n\"145531\";\"Vila Henrique de Carvalho\";\"other\"\n\"145531\";\"Сауримо\";\"other\"\n\"145724\";\"Lucapa\";\"main\"\n\"145724\";\"Lukapa\";\"other\"\n\"145724\";\"Лукапа\";\"other\"\n\"876123\";\"Lumeje\";\"main\"\n\"876123\";\"Cameia\";\"other\"\n\"876123\";\"Lumege\";\"other\"\n\"876123\";\"Lumezhe\";\"other\"\n\"876123\";\"Лумеже\";\"other\"\n\"876177\";\"Luau\";\"main\"\n\"876177\";\"Luao\";\"other\"\n\"876177\";\"Teixeira de Sousa\";\"other\"\n\"876177\";\"Teixera de Sousa\";\"other\"\n\"876177\";\"Texeira-de Susa\";\"other\"\n\"876177\";\"Vila Teixeira de Sousa\";\"other\"\n\"876177\";\"Vila Teixeira de Souza\";\"other\"\n\"876177\";\"Vila Teixera de Souza\";\"other\"\n\"876177\";\"Vila Texeira de Sousa\";\"other\"\n\"876177\";\"Луау\";\"other\"\n\"876233\";\"Leúa\";\"main\"\n\"876233\";\"Leua\";\"ascii\"\n\"876233\";\"Sandando\";\"other\"\n\"876485\";\"Cazage\";\"main\"\n\"876485\";\"Cazaje\";\"other\"\n\"876485\";\"Kazagi\";\"other\"\n\"2236568\";\"Uíge\";\"main\"\n\"2236568\";\"Uige\";\"ascii\"\n\"2236568\";\"Carmona\";\"other\"\n\"2236568\";\"Uije\";\"other\"\n\"2236568\";\"Uizhe\";\"other\"\n\"2236568\";\"Vila Marchel Carmona\";\"other\"\n\"2236568\";\"Уиже\";\"other\"\n\"2236967\";\"Soyo\";\"main\"\n\"2236967\";\"Saint Antonio do Zaire\";\"other\"\n\"2236967\";\"San Antonio\";\"other\"\n\"2236967\";\"Santo Antoni\";\"other\"\n\"2236967\";\"Santo Antonio do Zaire\";\"other\"\n\"2236967\";\"Santo António do Zaire\";\"other\"\n\"2236967\";\"Santo-Antonio\";\"other\"\n\"2236967\";\"Santo-António\";\"other\"\n\"2236967\";\"Sao Antonio\";\"other\"\n\"2236967\";\"Sazaire\";\"other\"\n\"2236967\";\"Soju\";\"other\"\n\"2236967\";\"São Antônio\";\"other\"\n\"2236967\";\"Сойу\";\"other\"\n\"2239001\";\"N’zeto\";\"main\"\n\"2239001\";\"N'zeto\";\"ascii\"\n\"2239001\";\"Ambrisette\";\"other\"\n\"2239001\";\"Ambrizete\";\"other\"\n\"2239001\";\"Ambrizette\";\"other\"\n\"2239001\";\"Nzeto\";\"other\"\n\"2239001\";\"Нзето\";\"other\"\n\"2239076\";\"N’dalatando\";\"main\"\n\"2239076\";\"N'dalatando\";\"ascii\"\n\"2239076\";\"Dalatando\";\"other\"\n\"2239076\";\"Ndalatanda\";\"other\"\n\"2239076\";\"Salazar\";\"other\"\n\"2239076\";\"Vila Salazar\";\"other\"\n\"2239076\";\"Villa Salazar\";\"other\"\n\"2239520\";\"M’banza Congo\";\"main\"\n\"2239520\";\"M'banza Congo\";\"ascii\"\n\"2239520\";\"Mbanza Kongo\";\"other\"\n\"2239520\";\"San Salvador\";\"other\"\n\"2239520\";\"Sao Salvador\";\"other\"\n\"2239520\";\"Sao Salvador do Congo\";\"other\"\n\"2239520\";\"São Salvador\";\"other\"\n\"2239520\";\"São Salvador do Congo\";\"other\"\n\"2239862\";\"Malanje\";\"main\"\n\"2239862\";\"Malandje\";\"other\"\n\"2239862\";\"Malange\";\"other\"\n\"2239862\";\"Malanzhe\";\"other\"\n\"2239862\";\"Маланже\";\"other\"\n\"2240449\";\"Luanda\";\"main\"\n\"2240449\";\"Loanda\";\"other\"\n\"2240449\";\"Louanta\";\"other\"\n\"2240449\";\"Sao Paolo de Loanda\";\"other\"\n\"2240449\";\"Sao Paulo da Assuncao de Luanda\";\"other\"\n\"2240449\";\"Sao Paulo de Loanda\";\"other\"\n\"2240449\";\"Sao Paulo de Luanda\";\"other\"\n\"2240449\";\"São Paolo de Loanda\";\"other\"\n\"2240449\";\"São Paulo da Assunção de Luanda\";\"other\"\n\"2240449\";\"São Paulo de Loanda\";\"other\"\n\"2240449\";\"São Paulo de Luanda\";\"other\"\n\"2240449\";\"luanda\";\"other\"\n\"2240449\";\"luo an da\";\"other\"\n\"2240449\";\"lwanda\";\"other\"\n\"2240449\";\"ruanda\";\"other\"\n\"2240449\";\"Λουάντα\";\"other\"\n\"2240449\";\"Луанда\";\"other\"\n\"2240449\";\"לואנדה\";\"other\"\n\"2240449\";\"لوآندا\";\"other\"\n\"2240449\";\"ሏንዳ\";\"other\"\n\"2240449\";\"ルアンダ\";\"other\"\n\"2240449\";\"罗安达\";\"other\"\n\"2240449\";\"루안다\";\"other\"\n\"2242001\";\"Caxito\";\"main\"\n\"2242001\";\"Kashito\";\"other\"\n\"2242001\";\"Kaxito\";\"other\"\n\"2242001\";\"Кашито\";\"other\"\n\"2242885\";\"Camabatela\";\"main\"\n\"2242885\";\"Ambaca\";\"other\"\n\"2242885\";\"Kamabatela\";\"other\"\n\"2242885\";\"Камабатела\";\"other\"\n\"2243271\";\"Cabinda\";\"main\"\n\"2243271\";\"Kabinda\";\"other\"\n\"2243271\";\"Кабинда\";\"other\"\n\"3345497\";\"Waku Kungo\";\"main\"\n\"3345497\";\"Cela\";\"other\"\n\"3345497\";\"Santa Comba\";\"other\"\n\"3345497\";\"Santa Comba Dao\";\"other\"\n\"3345497\";\"Santa Comba Dão\";\"other\"\n\"3345497\";\"Vaku Kungu\";\"other\"\n\"3345497\";\"Vila de Santa Comba Dao\";\"other\"\n\"3345497\";\"Vila de Santa Comba Dão\";\"other\"\n\"3345497\";\"Waco-Kungo\";\"other\"\n\"3345497\";\"Ваку Кунгу\";\"other\"\n\"3346015\";\"Sumbe\";\"main\"\n\"3346015\";\"Angungescapolo\";\"other\"\n\"3346015\";\"Ngunza\";\"other\"\n\"3346015\";\"Nova Redonda\";\"other\"\n\"3346015\";\"Nova Redondo\";\"other\"\n\"3346015\";\"Novo Redondo\";\"other\"\n\"3346015\";\"Сумбе\";\"other\"\n\"3346598\";\"Quibala\";\"main\"\n\"3346598\";\"Kibala\";\"other\"\n\"3346598\";\"Кибала\";\"other\"\n\"3346821\";\"Ondjiva\";\"main\"\n\"3346821\";\"N'Giva\";\"other\"\n\"3346821\";\"N'Jiva\";\"other\"\n\"3346821\";\"N’Giva\";\"other\"\n\"3346821\";\"N’Jiva\";\"other\"\n\"3346821\";\"Ondyiva\";\"other\"\n\"3346821\";\"Ondzhiva\";\"other\"\n\"3346821\";\"Ongiva\";\"other\"\n\"3346821\";\"Onjiva\";\"other\"\n\"3346821\";\"Pereira d'Eca\";\"other\"\n\"3346821\";\"Pereira de Eca\";\"other\"\n\"3346821\";\"Pereira d’Eca\";\"other\"\n\"3346821\";\"Vila Pereira d'Eca\";\"other\"\n\"3346821\";\"Vila Pereira de Eca\";\"other\"\n\"3346821\";\"Vila Pereira de Eco\";\"other\"\n\"3346821\";\"Vila Pereira de Eça\";\"other\"\n\"3346821\";\"Vila Pereira d’Eça\";\"other\"\n\"3346821\";\"Онджива\";\"other\"\n\"3347019\";\"Namibe\";\"main\"\n\"3347019\";\"Mocamedes\";\"other\"\n\"3347019\";\"Mossamedes\";\"other\"\n\"3347019\";\"Moçâmedes\";\"other\"\n\"3347019\";\"Намибе\";\"other\"\n\"3347353\";\"Menongue\";\"main\"\n\"3347353\";\"Menonge\";\"other\"\n\"3347353\";\"Serpa Pinto\";\"other\"\n\"3347353\";\"Vila Serpa Pinto\";\"other\"\n\"3347353\";\"Менонге\";\"other\"\n\"3347719\";\"Luena\";\"main\"\n\"3347719\";\"Luehna\";\"other\"\n\"3347719\";\"Luene\";\"other\"\n\"3347719\";\"Luso\";\"other\"\n\"3347719\";\"Luzo\";\"other\"\n\"3347719\";\"Vila Luso\";\"other\"\n\"3347719\";\"Vila Luzo\";\"other\"\n\"3347719\";\"Vila Luzu\";\"other\"\n\"3347719\";\"Villa Luso\";\"other\"\n\"3347719\";\"Луэна\";\"other\"\n\"3347762\";\"Lubango\";\"main\"\n\"3347762\";\"Sa da Bandeira\";\"other\"\n\"3347762\";\"Sá da Bandeira\";\"other\"\n\"3347762\";\"Лубанго\";\"other\"\n\"3347853\";\"Longonjo\";\"main\"\n\"3347853\";\"Congonjo\";\"other\"\n\"3347853\";\"Logonzhu\";\"other\"\n\"3347853\";\"Логонжу\";\"other\"\n\"3347939\";\"Lobito\";\"main\"\n\"3347939\";\"Lobitu\";\"other\"\n\"3347939\";\"robito\";\"other\"\n\"3347939\";\"Лобиту\";\"other\"\n\"3347939\";\"ロビト\";\"other\"\n\"3348078\";\"Kuito\";\"main\"\n\"3348078\";\"Bie\";\"other\"\n\"3348078\";\"Bihe\";\"other\"\n\"3348078\";\"Bihé\";\"other\"\n\"3348078\";\"Bié\";\"other\"\n\"3348078\";\"Silva Porto\";\"other\"\n\"3348078\";\"Vila Salva Porto\";\"other\"\n\"3348078\";\"Куито\";\"other\"\n\"3348313\";\"Huambo\";\"main\"\n\"3348313\";\"Nova Lisboa\";\"other\"\n\"3348313\";\"Uambo\";\"other\"\n\"3348313\";\"Уамбо\";\"other\"\n\"3349580\";\"Chissamba\";\"main\"\n\"3350246\";\"Catumbela\";\"main\"\n\"3350246\";\"Asseiceira\";\"other\"\n\"3350246\";\"Catumbella\";\"other\"\n\"3350246\";\"Katumbela\";\"other\"\n\"3350246\";\"Катумбела\";\"other\"\n\"3350372\";\"Catabola\";\"main\"\n\"3350372\";\"Katabola\";\"other\"\n\"3350372\";\"Nova Sintra\";\"other\"\n\"3350372\";\"Катабола\";\"other\"\n\"3351014\";\"Camacupa\";\"main\"\n\"3351014\";\"General Machado\";\"other\"\n\"3351014\";\"General Machado Villa\";\"other\"\n\"3351014\";\"General Mathado\";\"other\"\n\"3351014\";\"Kamakupa\";\"other\"\n\"3351014\";\"Machado\";\"other\"\n\"3351014\";\"Vila General Machado\";\"other\"\n\"3351014\";\"Камакупа\";\"other\"\n\"3351024\";\"Caluquembe\";\"main\"\n\"3351024\";\"Caluquembo\";\"other\"\n\"3351024\";\"Caluquemo\";\"other\"\n\"3351024\";\"Kalukembe\";\"other\"\n\"3351024\";\"Калукембе\";\"other\"\n\"3351380\";\"Caconda\";\"main\"\n\"3351380\";\"Kakonda\";\"other\"\n\"3351380\";\"Каконда\";\"other\"\n\"3351500\";\"Caála\";\"main\"\n\"3351500\";\"Caala\";\"ascii\"\n\"3351500\";\"Cahala\";\"other\"\n\"3351500\";\"Kaala\";\"other\"\n\"3351500\";\"Kaale\";\"other\"\n\"3351500\";\"Robert Williams\";\"other\"\n\"3351500\";\"Roberto Williams\";\"other\"\n\"3351500\";\"Vila Robert Williams\";\"other\"\n\"3351500\";\"Каале\";\"other\"\n\"3351663\";\"Benguela\";\"main\"\n\"3351663\";\"Bengela\";\"other\"\n\"3351663\";\"Benguella\";\"other\"\n\"3351663\";\"Sao Felipe de Benguela\";\"other\"\n\"3351663\";\"São Félipe de Benguela\";\"other\"\n\"3351663\";\"ben ji la\";\"other\"\n\"3351663\";\"Бенгела\";\"other\"\n\"3351663\";\"本吉拉\";\"other\"\n\"6696480\";\"McMurdo Station\";\"main\"\n\"3427213\";\"Zárate\";\"main\"\n\"3427213\";\"Zarate\";\"ascii\"\n\"3427213\";\"General J.F. Uriburu\";\"other\"\n\"3427213\";\"General Jose F. Uriburu\";\"other\"\n\"3427213\";\"General José F. Uriburu\";\"other\"\n\"3427213\";\"General Uriburu\";\"other\"\n\"3427213\";\"Sarate\";\"other\"\n\"3427213\";\"Saratė\";\"other\"\n\"3427213\";\"Зарате\";\"other\"\n\"3427273\";\"Yataity Calle\";\"main\"\n\"3427273\";\"Yatayti Calle\";\"other\"\n\"3427273\";\"Yataytí Calle\";\"other\"\n\"3427279\";\"Yapeyú\";\"main\"\n\"3427279\";\"Yapeyu\";\"ascii\"\n\"3427279\";\"San Martin\";\"other\"\n\"3427386\";\"Villa Paranacito\";\"main\"\n\"3427386\";\"Paranacito\";\"other\"\n\"3427388\";\"Villa Ocampo\";\"main\"\n\"3427388\";\"Ocampo\";\"other\"\n\"3427399\";\"Villa María Grande\";\"main\"\n\"3427399\";\"Villa Maria Grande\";\"ascii\"\n\"3427399\";\"Maria Grande\";\"other\"\n\"3427399\";\"María Grande\";\"other\"\n\"3427404\";\"Villa Mantero\";\"main\"\n\"3427404\";\"Mantero\";\"other\"\n\"3427420\";\"Villa Hernandarias\";\"main\"\n\"3427420\";\"Hernandarias\";\"other\"\n\"3427428\";\"Villaguay\";\"main\"\n\"3427431\";\"Villa Gesell\";\"main\"\n\"3427431\";\"Vil'ja-Khesel'\";\"other\"\n\"3427431\";\"Вилья-Хесель\";\"other\"\n\"3427439\";\"Villa Escolar\";\"main\"\n\"3427439\";\"Villa Escobar Navegacion Rio Bermejo\";\"other\"\n\"3427439\";\"Villa Escobar Navegación Río Bermejo\";\"other\"\n\"3427443\";\"Villa Elisa\";\"main\"\n\"3427454\";\"Villa del Rosario\";\"main\"\n\"3427454\";\"Villa Rosario\";\"other\"\n\"3427537\";\"Veinticinco de Mayo\";\"main\"\n\"3427537\";\"25 de Mayo\";\"other\"\n\"3427582\";\"Urdinarrain\";\"main\"\n\"3427593\";\"Ubajay\";\"main\"\n\"3427659\";\"Tres Capones\";\"main\"\n\"3427833\";\"Tandil\";\"main\"\n\"3427833\";\"Tandil'\";\"other\"\n\"3427833\";\"Тандиль\";\"other\"\n\"3427885\";\"Tabossi\";\"main\"\n\"3427885\";\"Tobosy\";\"other\"\n\"3427994\";\"Sauce de Luna\";\"main\"\n\"3428068\";\"San Vicente\";\"main\"\n\"3428071\";\"Santo Tomé\";\"main\"\n\"3428071\";\"Santo Tome\";\"ascii\"\n\"3428079\";\"Santo Pipó\";\"main\"\n\"3428079\";\"Santo Pipo\";\"ascii\"\n\"3428079\";\"Colonia Santo Pipo\";\"other\"\n\"3428079\";\"Colonia Santo Pipó\";\"other\"\n\"3428079\";\"San Pipo\";\"other\"\n\"3428182\";\"Santa Rosa\";\"main\"\n\"3428182\";\"Colonia Santa Rosa\";\"other\"\n\"3428182\";\"Colonia Tabay\";\"other\"\n\"3428182\";\"Santa-Rosa\";\"other\"\n\"3428182\";\"Санта-Роса\";\"other\"\n\"3428264\";\"Santa María\";\"main\"\n\"3428264\";\"Santa Maria\";\"ascii\"\n\"3428264\";\"Colonia Santa Maria\";\"other\"\n\"3428264\";\"Colonia Santa María\";\"other\"\n\"3428264\";\"Hubbart\";\"other\"\n\"3428287\";\"Santa Lucía\";\"main\"\n\"3428287\";\"Santa Lucia\";\"ascii\"\n\"3428359\";\"Santa Elena\";\"main\"\n\"3428424\";\"Santa Anita\";\"main\"\n\"3428424\";\"Aldea Santa Anita\";\"other\"\n\"3428453\";\"Santa Ana\";\"main\"\n\"3428481\";\"San Salvador\";\"main\"\n\"3428577\";\"San Pedro\";\"main\"\n\"3428644\";\"San Miguel\";\"main\"\n\"3428708\";\"San Luis del Palmar\";\"main\"\n\"3428759\";\"San Lorenzo\";\"main\"\n\"3428776\";\"San Justo\";\"main\"\n\"3428776\";\"Villa San Justo\";\"other\"\n\"3428858\";\"San José de Feliciano\";\"main\"\n\"3428858\";\"San Jose de Feliciano\";\"ascii\"\n\"3428928\";\"San José\";\"main\"\n\"3428928\";\"San Jose\";\"ascii\"\n\"3428975\";\"San Javier\";\"main\"\n\"3429024\";\"San Gustavo\";\"main\"\n\"3429054\";\"San Francisco de Laishí\";\"main\"\n\"3429054\";\"San Francisco de Laishi\";\"ascii\"\n\"3429054\";\"La Mision\";\"other\"\n\"3429054\";\"La Mision San Francisco de Laishi\";\"other\"\n\"3429054\";\"La Misión\";\"other\"\n\"3429054\";\"La Misión San Francisco de Laishi\";\"other\"\n\"3429054\";\"Mision San Francisco de Laishi\";\"other\"\n\"3429054\";\"Misión San Francisco de Laishi\";\"other\"\n\"3429157\";\"San Cosme\";\"main\"\n\"3429160\";\"San Clemente del Tuyú\";\"main\"\n\"3429160\";\"San Clemente del Tuyu\";\"ascii\"\n\"3429160\";\"Balneario San Clemente\";\"other\"\n\"3429160\";\"Balneario San Clemente del Tuyu\";\"other\"\n\"3429160\";\"Balneario San Clemente del Tuyú\";\"other\"\n\"3429160\";\"San-Klemente-del'-Tuju\";\"other\"\n\"3429160\";\"Сан-Клементе-дель-Тую\";\"other\"\n\"3429210\";\"San Carlos\";\"main\"\n\"3429403\";\"Saladas\";\"main\"\n\"3429426\";\"Ruiz de Montoya\";\"main\"\n\"3429439\";\"Rosario del Tala\";\"main\"\n\"3429439\";\"Rosario Tala\";\"other\"\n\"3429439\";\"Rosario de Tala\";\"other\"\n\"3429439\";\"Tala\";\"other\"\n\"3429560\";\"Riachuelo\";\"main\"\n\"3429567\";\"Riacho Eh-Eh\";\"main\"\n\"3429567\";\"Riacho He He\";\"other\"\n\"3429576\";\"Retiro\";\"main\"\n\"3429577\";\"Resistencia\";\"main\"\n\"3429577\";\"Resistensija\";\"other\"\n\"3429577\";\"Ресистенсия\";\"other\"\n\"3429594\";\"Reconquista\";\"main\"\n\"3429594\";\"Rekonkista\";\"other\"\n\"3429594\";\"Реконкиста\";\"other\"\n\"3429652\";\"Quilmes\";\"main\"\n\"3429652\";\"Kil'mes\";\"other\"\n\"3429652\";\"Кильмес\";\"other\"\n\"3429710\";\"Puerto Yeruá\";\"main\"\n\"3429710\";\"Puerto Yerua\";\"ascii\"\n\"3429710\";\"Punta Yerua\";\"other\"\n\"3429713\";\"Puerto Vilelas\";\"main\"\n\"3429721\";\"Puerto Tirol\";\"main\"\n\"3429732\";\"Puerto Rico\";\"main\"\n\"3429732\";\"Libertador General San Martin\";\"other\"\n\"3429732\";\"Libertador General San Martín\";\"other\"\n\"3429732\";\"Puerto Libertador General San Martin\";\"other\"\n\"3429732\";\"Puerto Libertador General San Martín\";\"other\"\n\"3429732\";\"Puerto San Alberto\";\"other\"\n\"3429738\";\"Puerto Piray\";\"main\"\n\"3429764\";\"Puerto Libertad\";\"main\"\n\"3429765\";\"Puerto Leoni\";\"main\"\n\"3429765\";\"Leoni\";\"other\"\n\"3429777\";\"Puerto Iguazú\";\"main\"\n\"3429777\";\"Puerto Iguazu\";\"ascii\"\n\"3429777\";\"Eva Peron\";\"other\"\n\"3429777\";\"Eva Perón\";\"other\"\n\"3429777\";\"Iguassu\";\"other\"\n\"3429777\";\"Iguazu\";\"other\"\n\"3429777\";\"Iguazú\";\"other\"\n\"3429777\";\"Puehrto-Iguasu\";\"other\"\n\"3429777\";\"Puerto Aguirre\";\"other\"\n\"3429777\";\"Puerto Igvasu\";\"other\"\n\"3429777\";\"Пуэрто-Игуасу\";\"other\"\n\"3429778\";\"Puerto Ibicuy\";\"main\"\n\"3429778\";\"Punta Ibicuy\";\"other\"\n\"3429786\";\"Puerto Esperanza\";\"main\"\n\"3429786\";\"Esperanza\";\"other\"\n\"3429801\";\"Puerto Bermejo\";\"main\"\n\"3429801\";\"Bermejo\";\"other\"\n\"3429820\";\"Pueblo Libertador\";\"main\"\n\"3429820\";\"Colonia Bahia de Astrada\";\"other\"\n\"3429820\";\"Colonia Bahía de Astrada\";\"other\"\n\"3429820\";\"Colonia Beron de Astrada\";\"other\"\n\"3429820\";\"Colonia Berón de Astrada\";\"other\"\n\"3429843\";\"Pronunciamiento\";\"main\"\n\"3429864\";\"Presidencia Roca\";\"main\"\n\"3429864\";\"Presidente Roca\";\"other\"\n\"3429866\";\"Presidencia de la Plaza\";\"main\"\n\"3429866\";\"Presidente de la Plaza\";\"other\"\n\"3429866\";\"Puerto de la Plaza\";\"other\"\n\"3429886\";\"Posadas\";\"main\"\n\"3429886\";\"Посадас\";\"other\"\n\"3429949\";\"Pirané\";\"main\"\n\"3429949\";\"Pirane\";\"ascii\"\n\"3429996\";\"Piedras Blancas\";\"main\"\n\"3430015\";\"Picada Gobernador López\";\"main\"\n\"3430015\";\"Picada Gobernador Lopez\";\"ascii\"\n\"3430015\";\"Gobernador Lopez\";\"other\"\n\"3430015\";\"Gobernador López\";\"other\"\n\"3430015\";\"Picada Lopez\";\"other\"\n\"3430015\";\"Picada López\";\"other\"\n\"3430029\";\"Perugorría\";\"main\"\n\"3430029\";\"Perugorria\";\"ascii\"\n\"3430029\";\"Perrugorria\";\"other\"\n\"3430029\";\"Perrugorría\";\"other\"\n\"3430029\";\"Perugurria\";\"other\"\n\"3430064\";\"Pedro R. Fernández\";\"main\"\n\"3430064\";\"Pedro R. Fernandez\";\"ascii\"\n\"3430064\";\"Manuel F. Mantilla\";\"other\"\n\"3430064\";\"Morro Furo Mantilla\";\"other\"\n\"3430064\";\"San Diego\";\"other\"\n\"3430104\";\"Paso de los Libres\";\"main\"\n\"3430105\";\"Paso de la Patria\";\"main\"\n\"3430178\";\"Panambí\";\"main\"\n\"3430178\";\"Panambi\";\"ascii\"\n\"3430178\";\"Puerto Panambi\";\"other\"\n\"3430180\";\"Pampa del Indio\";\"main\"\n\"3430182\";\"Pampa Almirón\";\"main\"\n\"3430182\";\"Pampa Almiron\";\"ascii\"\n\"3430186\";\"Palo Santo\";\"main\"\n\"3430219\";\"Palmar Grande\";\"main\"\n\"3430340\";\"Oberá\";\"main\"\n\"3430340\";\"Obera\";\"ascii\"\n\"3430340\";\"Yerbal Viejo\";\"other\"\n\"3430340\";\"Обера\";\"other\"\n\"3430383\";\"Nueve de Julio\";\"main\"\n\"3430383\";\"9 de Julio\";\"other\"\n\"3430402\";\"Nuestra Señora del Rosario de Caa Catí\";\"main\"\n\"3430402\";\"Nuestra Senora del Rosario de Caa Cati\";\"ascii\"\n\"3430402\";\"Caa Cati\";\"other\"\n\"3430402\";\"Caa Catí\";\"other\"\n\"3430402\";\"General Paz\";\"other\"\n\"3430443\";\"Necochea\";\"main\"\n\"3430598\";\"Monte Caseros\";\"main\"\n\"3430601\";\"Montecarlo\";\"main\"\n\"3430601\";\"Puerto Montecarlo\";\"other\"\n\"3430631\";\"Mojón Grande\";\"main\"\n\"3430631\";\"Mojon Grande\";\"ascii\"\n\"3430648\";\"Mocoretá\";\"main\"\n\"3430648\";\"Mocoreta\";\"ascii\"\n\"3430708\";\"Mercedes\";\"main\"\n\"3430709\";\"Mercedes\";\"main\"\n\"3430709\";\"Mersedes\";\"other\"\n\"3430709\";\"Мерседес\";\"other\"\n\"3430760\";\"Mburucuyá\";\"main\"\n\"3430760\";\"Mburucuya\";\"ascii\"\n\"3430798\";\"Mártires\";\"main\"\n\"3430798\";\"Martires\";\"ascii\"\n\"3430836\";\"Mariano I. Loza\";\"main\"\n\"3430836\";\"Justino Solari\";\"other\"\n\"3430836\";\"Solari\";\"other\"\n\"3430857\";\"Margarita Belén\";\"main\"\n\"3430857\";\"Margarita Belen\";\"ascii\"\n\"3430857\";\"M. Belen\";\"other\"\n\"3430857\";\"M. Belén\";\"other\"\n\"3430857\";\"Margarita BeTen\";\"other\"\n\"3430857\";\"Margarita BeTén\";\"other\"\n\"3430863\";\"Mar del Plata\";\"main\"\n\"3430863\";\"Mar de Plata\";\"other\"\n\"3430863\";\"Mar-del'-Plata\";\"other\"\n\"3430863\";\"Мар дел Плата\";\"other\"\n\"3430863\";\"Мар-дель-Плата\";\"other\"\n\"3430863\";\"マル・デル・プラタ\";\"other\"\n\"3430940\";\"Malabrigo\";\"main\"\n\"3430940\";\"Colonia Ella\";\"other\"\n\"3430943\";\"Makallé\";\"main\"\n\"3430943\";\"Makalle\";\"ascii\"\n\"3430968\";\"Maciá\";\"main\"\n\"3430968\";\"Macia\";\"ascii\"\n\"3430988\";\"Luján\";\"main\"\n\"3430988\";\"Lujan\";\"ascii\"\n\"3430988\";\"Lukhan\";\"other\"\n\"3430988\";\"Лухан\";\"other\"\n\"3431005\";\"Lucas González\";\"main\"\n\"3431005\";\"Lucas Gonzalez\";\"ascii\"\n\"3431005\";\"L. Gonzalez\";\"other\"\n\"3431005\";\"L. González\";\"other\"\n\"3431161\";\"Los Helechos\";\"main\"\n\"3431184\";\"Los Conquistadores\";\"main\"\n\"3431188\";\"Los Charrúas\";\"main\"\n\"3431188\";\"Los Charruas\";\"ascii\"\n\"3431244\";\"Loreto\";\"main\"\n\"3431245\";\"Loreto\";\"main\"\n\"3431272\";\"Lomas de Vallejos\";\"main\"\n\"3431367\";\"Libertad\";\"main\"\n\"3431367\";\"Colonia Libertad\";\"other\"\n\"3431460\";\"La Verde\";\"main\"\n\"3431606\";\"Las Toscas\";\"main\"\n\"3431606\";\"Las Tocas\";\"other\"\n\"3431777\";\"Las Garcitas\";\"main\"\n\"3431777\";\"Colonia Las Garcitas\";\"other\"\n\"3431916\";\"Larroque\";\"main\"\n\"3431916\";\"Larrogue\";\"other\"\n\"3431916\";\"Villa Larroque\";\"other\"\n\"3432043\";\"La Plata\";\"main\"\n\"3432043\";\"Eva Peron\";\"other\"\n\"3432043\";\"Eva Perón\";\"other\"\n\"3432043\";\"La-Plata\";\"other\"\n\"3432043\";\"lablata\";\"other\"\n\"3432043\";\"rapurata\";\"other\"\n\"3432043\";\"Ла Плата\";\"other\"\n\"3432043\";\"Ла-Плата\";\"other\"\n\"3432043\";\"لابلاتا\";\"other\"\n\"3432043\";\"ラプラタ\";\"other\"\n\"3432079\";\"La Paz\";\"main\"\n\"3432122\";\"Lapachito\";\"main\"\n\"3432355\";\"La Leonesa\";\"main\"\n\"3432463\";\"Laguna Naick-Neck\";\"main\"\n\"3432463\";\"Laguna Naineck\";\"other\"\n\"3432466\";\"Laguna Limpia\";\"main\"\n\"3432653\";\"La Escondida\";\"main\"\n\"3432653\";\"Desvio La Escondida\";\"other\"\n\"3432707\";\"La Eduvigis\";\"main\"\n\"3432760\";\"La Cruz\";\"main\"\n\"3432768\";\"La Criolla\";\"main\"\n\"3433291\";\"Juan Pujol\";\"main\"\n\"3433349\";\"Jardín América\";\"main\"\n\"3433349\";\"Jardin America\";\"ascii\"\n\"3433363\";\"Itatí\";\"main\"\n\"3433363\";\"Itati\";\"ascii\"\n\"3433373\";\"Itá Ibaté\";\"main\"\n\"3433373\";\"Ita Ibate\";\"ascii\"\n\"3433373\";\"Italbate\";\"other\"\n\"3433373\";\"Ite-Ibata\";\"other\"\n\"3433373\";\"Ité-Ibata\";\"other\"\n\"3433513\";\"Ibarreta\";\"main\"\n\"3433564\";\"Herrera\";\"main\"\n\"3433564\";\"Villa San Miguel\";\"other\"\n\"3433567\";\"Herradura\";\"main\"\n\"3433567\";\"Colonia Herradura\";\"other\"\n\"3433575\";\"Herlitzka\";\"main\"\n\"3433580\";\"Hasenkamp\";\"main\"\n\"3433648\";\"Guaraní\";\"main\"\n\"3433648\";\"Guarani\";\"ascii\"\n\"3433648\";\"Pueblo Guarani\";\"other\"\n\"3433648\";\"Pueblo Guaraní\";\"other\"\n\"3433658\";\"Gualeguaychú\";\"main\"\n\"3433658\";\"Gualeguaychu\";\"ascii\"\n\"3433658\";\"Gualeguajchu\";\"other\"\n\"3433658\";\"Гуалегуайчу\";\"other\"\n\"3433663\";\"Gualeguay\";\"main\"\n\"3433715\";\"Goya\";\"main\"\n\"3433715\";\"Goja\";\"other\"\n\"3433715\";\"Gojja\";\"other\"\n\"3433715\";\"Гойя\";\"other\"\n\"3433743\";\"Gobernador Roca\";\"main\"\n\"3433743\";\"Colonia Corpus\";\"other\"\n\"3433747\";\"Gobernador Mansilla\";\"main\"\n\"3433747\";\"Mansilla\";\"other\"\n\"3433751\";\"Gobernador Juan E. Martínez\";\"main\"\n\"3433751\";\"Gobernador Juan E. Martinez\";\"ascii\"\n\"3433751\";\"Gobernador J.F. Martinez\";\"other\"\n\"3433751\";\"Gobernador J.F. Martínez\";\"other\"\n\"3433751\";\"Gobernador Martinez\";\"other\"\n\"3433751\";\"Gobernador Martínez\";\"other\"\n\"3433751\";\"Golfo Martinez\";\"other\"\n\"3433751\";\"Yatay\";\"other\"\n\"3433753\";\"Gobernador Ingeniero Valentín Virasoro\";\"main\"\n\"3433753\";\"Gobernador Ingeniero Valentin Virasoro\";\"ascii\"\n\"3433753\";\"Vuelta del Ombu\";\"other\"\n\"3433753\";\"Vuelta del Ombú\";\"other\"\n\"3433773\";\"General Vedia\";\"main\"\n\"3433773\";\"General Verde\";\"other\"\n\"3433803\";\"General José de San Martín\";\"main\"\n\"3433803\";\"General Jose de San Martin\";\"ascii\"\n\"3433803\";\"Colonia Zapallar\";\"other\"\n\"3433803\";\"El Zapallar\";\"other\"\n\"3433803\";\"General San Martin\";\"other\"\n\"3433803\";\"General San Martín\";\"other\"\n\"3433803\";\"Zapallar\";\"other\"\n\"3433809\";\"General Galarza\";\"main\"\n\"3433809\";\"Galarza\";\"other\"\n\"3433815\";\"General Campos\";\"main\"\n\"3433815\";\"Campos\";\"other\"\n\"3433815\";\"Colonia General Campos\";\"other\"\n\"3433820\";\"General Alvear\";\"main\"\n\"3433836\";\"Garupá\";\"main\"\n\"3433836\";\"Garupa\";\"ascii\"\n\"3433839\";\"Garuhapé\";\"main\"\n\"3433839\";\"Garuhape\";\"ascii\"\n\"3433839\";\"Garuape\";\"other\"\n\"3433839\";\"Garuapé\";\"other\"\n\"3433842\";\"Garruchos\";\"main\"\n\"3433899\";\"Formosa\";\"main\"\n\"3433899\";\"Formoza\";\"other\"\n\"3433899\";\"Формоза\";\"other\"\n\"3433899\";\"Формоса\";\"other\"\n\"3433901\";\"Fontana\";\"main\"\n\"3433919\";\"Florentino Ameghino\";\"main\"\n\"3433944\";\"Felipe Yofré\";\"main\"\n\"3433944\";\"Felipe Yofre\";\"ascii\"\n\"3433944\";\"Yofre\";\"other\"\n\"3433944\";\"Yofré\";\"other\"\n\"3433956\";\"Federal\";\"main\"\n\"3433956\";\"Villa Federal\";\"other\"\n\"3433959\";\"Federación\";\"main\"\n\"3433959\";\"Federacion\";\"ascii\"\n\"3434095\";\"Esquina\";\"main\"\n\"3434291\";\"El Soberbio\";\"main\"\n\"3434731\";\"El Colorado\";\"main\"\n\"3434932\";\"El Alcázar\";\"main\"\n\"3434932\";\"El Alcazar\";\"ascii\"\n\"3434995\";\"Dos de Mayo\";\"main\"\n\"3434995\";\"2 de Mayo\";\"other\"\n\"3434997\";\"Dos Arroyos\";\"main\"\n\"3435030\";\"Domínguez\";\"main\"\n\"3435030\";\"Dominguez\";\"ascii\"\n\"3435030\";\"Colonia Clara\";\"other\"\n\"3435030\";\"Villa Dominguez\";\"other\"\n\"3435030\";\"Villa Domínguez\";\"other\"\n\"3435038\";\"Dolores\";\"main\"\n\"3435103\";\"Curuzú Cuatiá\";\"main\"\n\"3435103\";\"Curuzu Cuatia\";\"ascii\"\n\"3435178\";\"Cruz de los Milagros\";\"main\"\n\"3435196\";\"Coté-Lai\";\"main\"\n\"3435196\";\"Cote-Lai\";\"ascii\"\n\"3435217\";\"Corrientes\";\"main\"\n\"3435217\";\"Korientes\";\"other\"\n\"3435217\";\"Korientesas\";\"other\"\n\"3435217\";\"Korrientes\";\"other\"\n\"3435217\";\"kwryynts\";\"other\"\n\"3435217\";\"Кориентес\";\"other\"\n\"3435217\";\"Корриентес\";\"other\"\n\"3435217\";\"كوريينتس\";\"other\"\n\"3435258\";\"Conscripto Bernardi\";\"main\"\n\"3435258\";\"Kilometro 101\";\"other\"\n\"3435258\";\"Kilómetro 101\";\"other\"\n\"3435261\";\"Concordia\";\"main\"\n\"3435261\";\"Konkordija\";\"other\"\n\"3435261\";\"Конкордия\";\"other\"\n\"3435264\";\"Concepción del Uruguay\";\"main\"\n\"3435264\";\"Concepcion del Uruguay\";\"ascii\"\n\"3435264\";\"Konseps'on-del'-Urugvaj\";\"other\"\n\"3435264\";\"Konsepsion del Urugvajus\";\"other\"\n\"3435264\";\"Консепсьон-дель-Уругвай\";\"other\"\n\"3435266\";\"Concepción de la Sierra\";\"main\"\n\"3435266\";\"Concepcion de la Sierra\";\"ascii\"\n\"3435273\";\"Concepción\";\"main\"\n\"3435273\";\"Concepcion\";\"ascii\"\n\"3435283\";\"Comandante Fontana\";\"main\"\n\"3435290\";\"Colonia Wanda\";\"main\"\n\"3435295\";\"Colonias Unidas\";\"main\"\n\"3435295\";\"Colonia Unidas\";\"other\"\n\"3435330\";\"Colonia Elisa\";\"main\"\n\"3435331\";\"Colonia Elía\";\"main\"\n\"3435331\";\"Colonia Elia\";\"ascii\"\n\"3435340\";\"Colonia Benítez\";\"main\"\n\"3435340\";\"Colonia Benitez\";\"ascii\"\n\"3435340\";\"Benitez\";\"other\"\n\"3435340\";\"Benítez\";\"other\"\n\"3435344\";\"Colonia Aurora\";\"main\"\n\"3435356\";\"Colegiales\";\"main\"\n\"3435364\";\"Clorinda\";\"main\"\n\"3435364\";\"Klorinda\";\"other\"\n\"3435364\";\"Клоринда\";\"other\"\n\"3435399\";\"Ciervo Petiso\";\"main\"\n\"3435399\";\"Ciervo Petizo\";\"other\"\n\"3435444\";\"Chavarría\";\"main\"\n\"3435444\";\"Chavarria\";\"ascii\"\n\"3435453\";\"Charadai\";\"main\"\n\"3435453\";\"Charaday\";\"other\"\n\"3435486\";\"Chajarí\";\"main\"\n\"3435486\";\"Chajari\";\"ascii\"\n\"3435525\";\"Cerro Corá\";\"main\"\n\"3435525\";\"Cerro Cora\";\"ascii\"\n\"3435525\";\"Colonia Cerro Cora\";\"other\"\n\"3435525\";\"Colonia Cerro Corá\";\"other\"\n\"3435532\";\"Cerro Azul\";\"main\"\n\"3435570\";\"Ceibas\";\"main\"\n\"3435612\";\"Caseros\";\"main\"\n\"3435612\";\"Colonia Caseros\";\"other\"\n\"3435679\";\"Caraguatay\";\"main\"\n\"3435679\";\"Puerto Caraguatay\";\"other\"\n\"3435688\";\"Capitán Solari\";\"main\"\n\"3435688\";\"Capitan Solari\";\"ascii\"\n\"3435701\";\"Capioví\";\"main\"\n\"3435701\";\"Capiovi\";\"ascii\"\n\"3435734\";\"Candelaria\";\"main\"\n\"3435750\";\"Campo Viera\";\"main\"\n\"3435765\";\"Campo Ramón\";\"main\"\n\"3435765\";\"Campo Ramon\";\"ascii\"\n\"3435789\";\"Campo Grande\";\"main\"\n\"3435810\";\"Campana\";\"main\"\n\"3435810\";\"Kampana\";\"other\"\n\"3435810\";\"Кампана\";\"other\"\n\"3435910\";\"Buenos Aires\";\"main\"\n\"3435910\";\"Buehnos-Ajres\";\"other\"\n\"3435910\";\"Ciudad Autonoma de Buenos Aires\";\"other\"\n\"3435910\";\"Ciudad Autónoma de Buenos Aires\";\"other\"\n\"3435910\";\"Μπουένος ΄Aιρες\";\"other\"\n\"3435910\";\"Буэнос-Айрес\";\"other\"\n\"3435966\";\"Bovril\";\"main\"\n\"3435988\";\"Bonpland\";\"main\"\n\"3435988\";\"Bompland\";\"other\"\n\"3435989\";\"Bonpland\";\"main\"\n\"3436030\";\"Bernardo de Irigoyen\";\"main\"\n\"3436030\";\"Barracon\";\"other\"\n\"3436100\";\"Basail\";\"main\"\n\"3436124\";\"Barranqueras\";\"main\"\n\"3436199\";\"Azul\";\"main\"\n\"3436199\";\"Азул\";\"other\"\n\"3436205\";\"Azara\";\"main\"\n\"3436230\";\"Avellaneda\";\"main\"\n\"3436230\";\"Estacion Ewald\";\"other\"\n\"3436230\";\"Estación Ewald\";\"other\"\n\"3436267\";\"Arroyo del Medio\";\"main\"\n\"3436287\";\"Aristóbulo del Valle\";\"main\"\n\"3436287\";\"Aristobulo del Valle\";\"ascii\"\n\"3436370\";\"Alvear\";\"main\"\n\"3436398\";\"Almafuerte\";\"main\"\n\"3436433\";\"Aldea San Antonio\";\"main\"\n\"3436433\";\"San Antonio\";\"other\"\n\"3436448\";\"Alba Posse\";\"main\"\n\"3832080\";\"Zonda\";\"main\"\n\"3832132\";\"Zapala\";\"main\"\n\"3832189\";\"Yuto\";\"main\"\n\"3832260\";\"Yerba Buena\";\"main\"\n\"3832376\";\"Yacimiento Río Turbio\";\"main\"\n\"3832376\";\"Yacimiento Rio Turbio\";\"ascii\"\n\"3832376\";\"Rio Turbio\";\"other\"\n\"3832376\";\"Río Turbio\";\"other\"\n\"3832376\";\"Yacimientos de Rio Turbio\";\"other\"\n\"3832376\";\"Yacimientos de Río Turbio\";\"other\"\n\"3832388\";\"Winifreda\";\"main\"\n\"3832398\";\"Wenceslao Escalante\";\"main\"\n\"3832398\";\"Escalante\";\"other\"\n\"3832398\";\"Medanos de las Canas\";\"other\"\n\"3832398\";\"Médanos de las Cañas\";\"other\"\n\"3832518\";\"Vista Alegre\";\"main\"\n\"3832518\";\"Colonia Vista Alegre\";\"other\"\n\"3832560\";\"Vinchina\";\"main\"\n\"3832602\";\"Villa Valeria\";\"main\"\n\"3832603\";\"Villa Urquiza\";\"main\"\n\"3832607\";\"Villa Tulumba\";\"main\"\n\"3832607\";\"Tulumba\";\"other\"\n\"3832608\";\"Villa Trinidad\";\"main\"\n\"3832631\";\"Villa Rumipal\";\"main\"\n\"3832631\";\"Rumipal\";\"other\"\n\"3832647\";\"Villa Regina\";\"main\"\n\"3832648\";\"Villa Reducción\";\"main\"\n\"3832648\";\"Villa Reduccion\";\"ascii\"\n\"3832648\";\"Reduccion\";\"other\"\n\"3832648\";\"Reducción\";\"other\"\n\"3832653\";\"Villa Paula de Sarmiento\";\"main\"\n\"3832653\";\"Paula A. de Sarmiento\";\"other\"\n\"3832658\";\"Villa Ojo de Agua\";\"main\"\n\"3832658\";\"Ojo de Agua\";\"other\"\n\"3832662\";\"Villa Nueva\";\"main\"\n\"3832694\";\"Villa María\";\"main\"\n\"3832694\";\"Villa Maria\";\"ascii\"\n\"3832694\";\"Vilja Marija\";\"other\"\n\"3832705\";\"Villa Las Rosas\";\"main\"\n\"3832705\";\"Las Rosas\";\"other\"\n\"3832705\";\"Villa de Las Rosas\";\"other\"\n\"3832711\";\"Villa La Angostura\";\"main\"\n\"3832719\";\"Villa Huidobro\";\"main\"\n\"3832719\";\"Canada Verde\";\"other\"\n\"3832719\";\"Cañada Verde\";\"other\"\n\"3832729\";\"Villa Giardino\";\"main\"\n\"3832733\";\"Villa General Mitre\";\"main\"\n\"3832733\";\"General Mitre\";\"other\"\n\"3832733\";\"Pinto\";\"other\"\n\"3832734\";\"Villa General Belgrano\";\"main\"\n\"3832756\";\"Villa Dolores\";\"main\"\n\"3832756\";\"Dolores\";\"other\"\n\"3832759\";\"Villa de Soto\";\"main\"\n\"3832759\";\"Soto\";\"other\"\n\"3832763\";\"Villa del Totoral\";\"main\"\n\"3832763\";\"Totoral\";\"other\"\n\"3832769\";\"Villa del Dique\";\"main\"\n\"3832769\";\"Villa Dique\";\"other\"\n\"3832769\";\"Villa de Dique\";\"other\"\n\"3832773\";\"Villa Cura Brochero\";\"main\"\n\"3832773\";\"Transito\";\"other\"\n\"3832773\";\"Transito de San Alberto\";\"other\"\n\"3832773\";\"Tránsito de San Alberto\";\"other\"\n\"3832778\";\"Villa Constitución\";\"main\"\n\"3832778\";\"Villa Constitucion\";\"ascii\"\n\"3832779\";\"Villa Concepción del Tío\";\"main\"\n\"3832779\";\"Villa Concepcion del Tio\";\"ascii\"\n\"3832779\";\"Concepcion\";\"other\"\n\"3832779\";\"Concepción\";\"other\"\n\"3832779\";\"Villa Concepcion\";\"other\"\n\"3832779\";\"Villa Concepción\";\"other\"\n\"3832791\";\"Villa Carlos Paz\";\"main\"\n\"3832791\";\"Karlos-Paz\";\"other\"\n\"3832791\";\"Vilja Karlos Pasas\";\"other\"\n\"3832791\";\"Карлос-Паз\";\"other\"\n\"3832793\";\"Villa Cañás\";\"main\"\n\"3832793\";\"Villa Canas\";\"ascii\"\n\"3832795\";\"Villa Bustos\";\"main\"\n\"3832795\";\"Sanagasta\";\"other\"\n\"3832797\";\"Villa Berthet\";\"main\"\n\"3832805\";\"Villa Atamisqui\";\"main\"\n\"3832805\";\"Atamisqui\";\"other\"\n\"3832806\";\"Villa Ascasubi\";\"main\"\n\"3832806\";\"Ascasubi\";\"other\"\n\"3832811\";\"Villa Ángela\";\"main\"\n\"3832811\";\"Villa Angela\";\"ascii\"\n\"3832815\";\"Villa Allende\";\"main\"\n\"3832899\";\"Viedma\";\"main\"\n\"3832899\";\"V'edma\";\"other\"\n\"3832899\";\"Вьедма\";\"other\"\n\"3832917\";\"Vicuña Mackenna\";\"main\"\n\"3832917\";\"Vicuna Mackenna\";\"ascii\"\n\"3832917\";\"Mackenna\";\"other\"\n\"3832923\";\"Victorica\";\"main\"\n\"3832934\";\"Victoria\";\"main\"\n\"3832934\";\"Viktorija\";\"other\"\n\"3832934\";\"Виктория\";\"other\"\n\"3832957\";\"Viamonte\";\"main\"\n\"3832957\";\"General Viamonte\";\"other\"\n\"3832959\";\"Viale\";\"main\"\n\"3833027\";\"Vera\";\"main\"\n\"3833027\";\"Jobson\";\"other\"\n\"3833062\";\"Venado Tuerto\";\"main\"\n\"3833062\";\"Neuken\";\"other\"\n\"3833062\";\"Неукен\";\"other\"\n\"3833094\";\"Veintiocho de Noviembre\";\"main\"\n\"3833094\";\"28 de Noviembre\";\"other\"\n\"3833111\";\"Veinticinco de Mayo\";\"main\"\n\"3833111\";\"25 de Mayo\";\"other\"\n\"3833111\";\"Colonia Los Viejos\";\"other\"\n\"3833111\";\"Colonia Veinticinco de Mayo\";\"other\"\n\"3833112\";\"Veinticinco de Mayo\";\"main\"\n\"3833112\";\"25 de Mayo\";\"other\"\n\"3833211\";\"Valle Hermoso\";\"main\"\n\"3833283\";\"Valcheta\";\"main\"\n\"3833367\";\"Ushuaia\";\"main\"\n\"3833367\";\"Ushuaja\";\"other\"\n\"3833367\";\"Ushuajja\";\"other\"\n\"3833367\";\"Ushuaïa\";\"other\"\n\"3833367\";\"Usuaja\";\"other\"\n\"3833367\";\"Ušuaja\";\"other\"\n\"3833367\";\"usyuaia\";\"other\"\n\"3833367\";\"wu si huai ya\";\"other\"\n\"3833367\";\"Ушуайя\";\"other\"\n\"3833367\";\"Ушуая\";\"other\"\n\"3833367\";\"אושואיה\";\"other\"\n\"3833367\";\"乌斯怀亚\";\"other\"\n\"3833367\";\"우슈아이아\";\"other\"\n\"3833391\";\"Uriburu\";\"main\"\n\"3833412\";\"Unquillo\";\"main\"\n\"3833424\";\"Unión\";\"main\"\n\"3833424\";\"Union\";\"ascii\"\n\"3833463\";\"Ucacha\";\"main\"\n\"3833675\";\"Trevelín\";\"main\"\n\"3833675\";\"Trevelin\";\"ascii\"\n\"3833794\";\"Tres Isletas\";\"main\"\n\"3833859\";\"Tres Arroyos\";\"main\"\n\"3833880\";\"Trenel\";\"main\"\n\"3833883\";\"Trelew\";\"main\"\n\"3833883\";\"Trelju\";\"other\"\n\"3833947\";\"Trancas\";\"main\"\n\"3833995\";\"Totoras\";\"main\"\n\"3833995\";\"Santa Teresa\";\"other\"\n\"3834048\";\"Tostado\";\"main\"\n\"3834251\";\"Toledo\";\"main\"\n\"3834339\";\"Tío Pujio\";\"main\"\n\"3834339\";\"Tio Pujio\";\"ascii\"\n\"3834352\";\"Tintina\";\"main\"\n\"3834361\";\"Tinogasta\";\"main\"\n\"3834397\";\"Tilisarao\";\"main\"\n\"3834403\";\"Tilcara\";\"main\"\n\"3834459\";\"Ticino\";\"main\"\n\"3834502\";\"Termas de Río Hondo\";\"main\"\n\"3834502\";\"Termas de Rio Hondo\";\"ascii\"\n\"3834502\";\"Banos\";\"other\"\n\"3834502\";\"Baños\";\"other\"\n\"3834502\";\"Las Termas\";\"other\"\n\"3834502\";\"Las Termas de Rio Hondo\";\"other\"\n\"3834502\";\"Las Termas de Río Hondo\";\"other\"\n\"3834502\";\"Termas del Rio Hondo\";\"other\"\n\"3834502\";\"Termas del Río Hondo\";\"other\"\n\"3834542\";\"Telén\";\"main\"\n\"3834542\";\"Telen\";\"ascii\"\n\"3834601\";\"Tartagal\";\"main\"\n\"3834601\";\"Тартагал\";\"other\"\n\"3834665\";\"Tancacha\";\"main\"\n\"3834813\";\"Tafí Viejo\";\"main\"\n\"3834813\";\"Tafi Viejo\";\"ascii\"\n\"3834813\";\"Tafi\";\"other\"\n\"3834813\";\"Tafí\";\"other\"\n\"3834814\";\"Tafí del Valle\";\"main\"\n\"3834814\";\"Tafi del Valle\";\"ascii\"\n\"3834814\";\"Tafi\";\"other\"\n\"3834814\";\"Tafí\";\"other\"\n\"3834843\";\"Taco Pozo\";\"main\"\n\"3834961\";\"Suncho Corral\";\"main\"\n\"3834961\";\"Suncha Corral\";\"other\"\n\"3834971\";\"Sunchales\";\"main\"\n\"3834985\";\"Sumampa\";\"main\"\n\"3835238\";\"Simoca\";\"main\"\n\"3835297\";\"Sierra Grande\";\"main\"\n\"3835304\";\"Sierra Colorada\";\"main\"\n\"3835304\";\"Sierra Colorado\";\"other\"\n\"3835348\";\"Serrezuela\";\"main\"\n\"3835351\";\"Serrano\";\"main\"\n\"3835372\";\"Senillosa\";\"main\"\n\"3835402\";\"Seguí\";\"main\"\n\"3835402\";\"Segui\";\"ascii\"\n\"3835582\";\"Sebastián Elcano\";\"main\"\n\"3835582\";\"Sebastian Elcano\";\"ascii\"\n\"3835691\";\"Saturnino M. Laspiur\";\"main\"\n\"3835691\";\"Santa Maria Laspiur\";\"other\"\n\"3835691\";\"Saturnio M. Laspiuro\";\"other\"\n\"3835695\";\"Sastre\";\"main\"\n\"3835710\";\"Sarmiento\";\"main\"\n\"3835710\";\"Colonia Sarmiento\";\"other\"\n\"3835793\";\"Santo Tomé\";\"main\"\n\"3835793\";\"Santo Tome\";\"ascii\"\n\"3835866\";\"Santiago Temple\";\"main\"\n\"3835866\";\"Sagrado Temple\";\"other\"\n\"3835869\";\"Santiago del Estero\";\"main\"\n\"3835869\";\"Sant'jago-del'-Ehstero\";\"other\"\n\"3835869\";\"Santjago del Esteras\";\"other\"\n\"3835869\";\"Сантьяго-дель-Эстеро\";\"other\"\n\"3835921\";\"Santa Sylvina\";\"main\"\n\"3835921\";\"Santa Silvina\";\"other\"\n\"3835937\";\"Santa Rosa de Tastil\";\"main\"\n\"3835937\";\"Tastil\";\"other\"\n\"3835938\";\"Santa Rosa de Río Primero\";\"main\"\n\"3835938\";\"Santa Rosa de Rio Primero\";\"ascii\"\n\"3835938\";\"Santa Rosa\";\"other\"\n\"3835938\";\"Santa Rosa de Rio 1\";\"other\"\n\"3835938\";\"Santa Rosa de Río 1\";\"other\"\n\"3835938\";\"Villa Santa Rosa\";\"other\"\n\"3835941\";\"Santa Rosa del Conlara\";\"main\"\n\"3835941\";\"Santa Rosa\";\"other\"\n\"3835943\";\"Santa Rosa de Calamuchita\";\"main\"\n\"3835943\";\"Santa Rosa\";\"other\"\n\"3835943\";\"Santa Rosa de Calamuchito\";\"other\"\n\"3835994\";\"Santa Rosa\";\"main\"\n\"3835994\";\"Santa Rosa de Toay\";\"other\"\n\"3835994\";\"Santa-Rosa\";\"other\"\n\"3835994\";\"Санта-Роса\";\"other\"\n\"3836170\";\"Santa Magdalena\";\"main\"\n\"3836170\";\"Jovita\";\"other\"\n\"3836194\";\"Santa Lucía\";\"main\"\n\"3836194\";\"Santa Lucia\";\"ascii\"\n\"3836238\";\"Santa Isabel\";\"main\"\n\"3836277\";\"Santa Fe de la Vera Cruz\";\"main\"\n\"3836277\";\"Santa Fe\";\"other\"\n\"3836277\";\"Santa Fė\";\"other\"\n\"3836277\";\"Santa-Fe\";\"other\"\n\"3836277\";\"Санта Фе\";\"other\"\n\"3836277\";\"Санта-Фе\";\"other\"\n\"3836284\";\"Santa Eufemia\";\"main\"\n\"3836407\";\"Santa Clara\";\"main\"\n\"3836564\";\"San Salvador de Jujuy\";\"main\"\n\"3836564\";\"Jujuy\";\"other\"\n\"3836564\";\"Khukhuj\";\"other\"\n\"3836564\";\"San Sal'vador de Khukhuj\";\"other\"\n\"3836564\";\"San Salvador de Khukhuj\";\"other\"\n\"3836564\";\"San Salvador de Zuzujus\";\"other\"\n\"3836564\";\"San Salvador de Žužujus\";\"other\"\n\"3836564\";\"Сан Салвадор де Хухуй\";\"other\"\n\"3836564\";\"Сан Сальвадор де Хухуй\";\"other\"\n\"3836564\";\"Хухуй\";\"other\"\n\"3836620\";\"San Ramón de la Nueva Orán\";\"main\"\n\"3836620\";\"San Ramon de la Nueva Oran\";\"ascii\"\n\"3836620\";\"Oran\";\"other\"\n\"3836620\";\"Orán\";\"other\"\n\"3836669\";\"San Rafael\";\"main\"\n\"3836769\";\"San Pedro\";\"main\"\n\"3836772\";\"San Pedro\";\"main\"\n\"3836846\";\"San Nicolás de los Arroyos\";\"main\"\n\"3836846\";\"San Nicolas de los Arroyos\";\"ascii\"\n\"3836846\";\"San Nicolas\";\"other\"\n\"3836846\";\"San Nicolás\";\"other\"\n\"3836846\";\"San Nikolasas\";\"other\"\n\"3836873\";\"San Miguel de Tucumán\";\"main\"\n\"3836873\";\"San Miguel de Tucuman\";\"ascii\"\n\"3836873\";\"Tucuman\";\"other\"\n\"3836873\";\"Tucumán\";\"other\"\n\"3836873\";\"Tukuman\";\"other\"\n\"3836873\";\"Tukumanas\";\"other\"\n\"3836873\";\"Тукуман\";\"other\"\n\"3836873\";\"サン・ミゲル・デ・トゥクマン\";\"other\"\n\"3836951\";\"San Martín de los Andes\";\"main\"\n\"3836951\";\"San Martin de los Andes\";\"ascii\"\n\"3836951\";\"San-Martin-De-Los-Andes\";\"other\"\n\"3836951\";\"Сан-Мартин-Де-Лос-Андес\";\"other\"\n\"3836992\";\"San Martín\";\"main\"\n\"3836992\";\"San Martin\";\"ascii\"\n\"3836992\";\"General San Martin\";\"other\"\n\"3836992\";\"General San Martín\";\"other\"\n\"3836993\";\"San Martín\";\"main\"\n\"3836993\";\"San Martin\";\"ascii\"\n\"3837056\";\"San Luis\";\"main\"\n\"3837056\";\"San Luisas\";\"other\"\n\"3837056\";\"Сан Луис\";\"other\"\n\"3837124\";\"San Justo\";\"main\"\n\"3837213\";\"San Juan\";\"main\"\n\"3837213\";\"San Chuanas\";\"other\"\n\"3837239\";\"San José de la Dormida\";\"main\"\n\"3837239\";\"San Jose de la Dormida\";\"ascii\"\n\"3837240\";\"San José de Jáchal\";\"main\"\n\"3837240\";\"San Jose de Jachal\";\"ascii\"\n\"3837240\";\"Jachal\";\"other\"\n\"3837240\";\"Jáchal\";\"other\"\n\"3837441\";\"San Jorge\";\"main\"\n\"3837624\";\"San Francisco del Monte de Oro\";\"main\"\n\"3837624\";\"San Francisco\";\"other\"\n\"3837625\";\"San Francisco del Chañar\";\"main\"\n\"3837625\";\"San Francisco del Chanar\";\"ascii\"\n\"3837625\";\"San Francisco de Chanar\";\"other\"\n\"3837625\";\"San Francisco de Chañar\";\"other\"\n\"3837675\";\"San Francisco\";\"main\"\n\"3837702\";\"San Fernando del Valle de Catamarca\";\"main\"\n\"3837702\";\"Catamarca\";\"other\"\n\"3837702\";\"Katamarka\";\"other\"\n\"3837823\";\"San Cristóbal\";\"main\"\n\"3837823\";\"San Cristobal\";\"ascii\"\n\"3837857\";\"San Carlos Centro\";\"main\"\n\"3837893\";\"San Carlos\";\"main\"\n\"3837893\";\"San Carlos Minas\";\"other\"\n\"3837943\";\"San Bernardo\";\"main\"\n\"3837956\";\"San Benito\";\"main\"\n\"3837960\";\"San Basilio\";\"main\"\n\"3837980\";\"San Antonio Oeste\";\"main\"\n\"3837980\";\"Las Grutas\";\"other\"\n\"3837980\";\"Puerto San Antonio Oeste\";\"other\"\n\"3837985\";\"San Antonio de los Cobres\";\"main\"\n\"3837987\";\"San Antonio de Litín\";\"main\"\n\"3837987\";\"San Antonio de Litin\";\"ascii\"\n\"3837987\";\"Capilla de San Antonio\";\"other\"\n\"3837987\";\"San Antonio\";\"other\"\n\"3838057\";\"San Antonio\";\"main\"\n\"3838158\";\"San Agustín de Valle Fértil\";\"main\"\n\"3838158\";\"San Agustin de Valle Fertil\";\"ascii\"\n\"3838158\";\"San Agustin\";\"other\"\n\"3838158\";\"San Agustín\";\"other\"\n\"3838158\";\"Villa San Agustin\";\"other\"\n\"3838158\";\"Villa San Agustín\";\"other\"\n\"3838174\";\"San Agustín\";\"main\"\n\"3838174\";\"San Agustin\";\"ascii\"\n\"3838194\";\"Samuhú\";\"main\"\n\"3838194\";\"Samuhu\";\"ascii\"\n\"3838194\";\"Samuhi\";\"other\"\n\"3838201\";\"Sampacho\";\"main\"\n\"3838233\";\"Salta\";\"main\"\n\"3838233\";\"Ciudad de Salta\";\"other\"\n\"3838233\";\"Sal'ta\";\"other\"\n\"3838233\";\"Салта\";\"other\"\n\"3838233\";\"Сальта\";\"other\"\n\"3838233\";\"סאלטה\";\"other\"\n\"3838235\";\"Salsipuedes\";\"main\"\n\"3838237\";\"Salsacate\";\"main\"\n\"3838294\";\"Saldán\";\"main\"\n\"3838294\";\"Saldan\";\"ascii\"\n\"3838460\";\"Sacanta\";\"main\"\n\"3838506\";\"Rufino\";\"main\"\n\"3838583\";\"Rosario\";\"main\"\n\"3838583\";\"Rosarijas\";\"other\"\n\"3838583\";\"Rosário\";\"other\"\n\"3838583\";\"Rozario\";\"other\"\n\"3838583\";\"rosario\";\"other\"\n\"3838583\";\"rwsaryw\";\"other\"\n\"3838583\";\"Розарио\";\"other\"\n\"3838583\";\"Росарио\";\"other\"\n\"3838583\";\"روساريو\";\"other\"\n\"3838583\";\"ロサリオ\";\"other\"\n\"3838638\";\"Roldán\";\"main\"\n\"3838638\";\"Roldan\";\"ascii\"\n\"3838793\";\"Río Tercero\";\"main\"\n\"3838793\";\"Rio Tercero\";\"ascii\"\n\"3838797\";\"Río Segundo\";\"main\"\n\"3838797\";\"Rio Segundo\";\"ascii\"\n\"3838826\";\"Río Pico\";\"main\"\n\"3838826\";\"Rio Pico\";\"ascii\"\n\"3838826\";\"Campo del Rio Pica\";\"other\"\n\"3838826\";\"Campo del Río Pica\";\"other\"\n\"3838826\";\"Estancia Campo del Pico\";\"other\"\n\"3838826\";\"Rio Pica\";\"other\"\n\"3838859\";\"Río Gallegos\";\"main\"\n\"3838859\";\"Rio Gallegos\";\"ascii\"\n\"3838859\";\"Gallegos\";\"other\"\n\"3838859\";\"Puerto Gallegos\";\"other\"\n\"3838859\";\"Puerto Rio Gallegos\";\"other\"\n\"3838859\";\"Puerto Río Gallegos\";\"other\"\n\"3838859\";\"Rio Galjegosas\";\"other\"\n\"3838859\";\"li ao jia ye ge si\";\"other\"\n\"3838859\";\"里奥加耶戈斯\";\"other\"\n\"3838874\";\"Río Cuarto\";\"main\"\n\"3838874\";\"Rio Cuarto\";\"ascii\"\n\"3838874\";\"Rio Kuartas\";\"other\"\n\"3838874\";\"Rio-Kuarto\";\"other\"\n\"3838874\";\"Рио-Куарто\";\"other\"\n\"3838902\";\"Río Ceballos\";\"main\"\n\"3838902\";\"Rio Ceballos\";\"ascii\"\n\"3838902\";\"Rio Zeballos\";\"other\"\n\"3838902\";\"Río Zeballos\";\"other\"\n\"3839262\";\"Recreo\";\"main\"\n\"3839263\";\"Recreo\";\"main\"\n\"3839282\";\"Realicó\";\"main\"\n\"3839282\";\"Realico\";\"ascii\"\n\"3839307\";\"Rawson\";\"main\"\n\"3839307\";\"Rosonas\";\"other\"\n\"3839307\";\"Rouson\";\"other\"\n\"3839307\";\"Роусон\";\"other\"\n\"3839381\";\"Rancul\";\"main\"\n\"3839381\";\"Jardon\";\"other\"\n\"3839381\";\"Jardón\";\"other\"\n\"3839479\";\"Rafaela\";\"main\"\n\"3839479\";\"Rafaehla\";\"other\"\n\"3839479\";\"Рафаэла\";\"other\"\n\"3839482\";\"Rada Tilly\";\"main\"\n\"3839482\";\"Rada Tilli\";\"other\"\n\"3839490\";\"Quitilipi\";\"main\"\n\"3839565\";\"Quimilí\";\"main\"\n\"3839565\";\"Quimili\";\"ascii\"\n\"3839588\";\"Quilino\";\"main\"\n\"3839588\";\"Villa Quilino\";\"other\"\n\"3839668\";\"Quemú Quemú\";\"main\"\n\"3839668\";\"Quemu Quemu\";\"ascii\"\n\"3839982\";\"Punta Alta\";\"main\"\n\"3839982\";\"Punta-Al'ta\";\"other\"\n\"3839982\";\"Пунта-Альта\";\"other\"\n\"3840076\";\"Puerto Santa Cruz\";\"main\"\n\"3840076\";\"Santa Cruz\";\"other\"\n\"3840082\";\"San Julián\";\"main\"\n\"3840082\";\"San Julian\";\"ascii\"\n\"3840082\";\"Puerto San Julian\";\"other\"\n\"3840082\";\"Puerto San Julián\";\"other\"\n\"3840092\";\"Puerto Madryn\";\"main\"\n\"3840092\";\"Madryn\";\"other\"\n\"3840092\";\"Porth Madryn\";\"other\"\n\"3840092\";\"Puehrto-Madrin\";\"other\"\n\"3840092\";\"Puerto Madrinas\";\"other\"\n\"3840092\";\"Пуэрто-Мадрин\";\"other\"\n\"3840104\";\"Puerto Deseado\";\"main\"\n\"3840104\";\"Deseado\";\"other\"\n\"3840104\";\"Puerto Deseadas\";\"other\"\n\"3840159\";\"Puerta de Corral Quemado\";\"main\"\n\"3840159\";\"Puerta\";\"other\"\n\"3840300\";\"Presidencia Roque Sáenz Peña\";\"main\"\n\"3840300\";\"Presidencia Roque Saenz Pena\";\"ascii\"\n\"3840300\";\"Presidensija Roke Saens Penja\";\"other\"\n\"3840300\";\"Presidente Roque Saenz Pena\";\"other\"\n\"3840300\";\"Presidente Roque Sáenz Peña\";\"other\"\n\"3840300\";\"Roque Saenz Pena\";\"other\"\n\"3840300\";\"Roque Sáenz Peña\";\"other\"\n\"3840432\";\"Pozo del Tigre\";\"main\"\n\"3840470\";\"Pozo del Molle\";\"main\"\n\"3840762\";\"Porteña\";\"main\"\n\"3840762\";\"Portena\";\"ascii\"\n\"3840809\";\"Pomán\";\"main\"\n\"3840809\";\"Poman\";\"ascii\"\n\"3840809\";\"Peman\";\"other\"\n\"3840860\";\"Pocito\";\"main\"\n\"3840885\";\"Plottier\";\"main\"\n\"3840896\";\"Plaza Huincul\";\"main\"\n\"3841035\";\"Piquillín\";\"main\"\n\"3841035\";\"Piquillin\";\"ascii\"\n\"3841035\";\"Piquilin\";\"other\"\n\"3841143\";\"Pilcaniyeu\";\"main\"\n\"3841143\";\"Estancia Pilcaniyeu\";\"other\"\n\"3841149\";\"Pilar\";\"main\"\n\"3841232\";\"Piedra del Águila\";\"main\"\n\"3841232\";\"Piedra del Aguila\";\"ascii\"\n\"3841232\";\"Piedra de Aguila\";\"other\"\n\"3841301\";\"Picún Leufú\";\"main\"\n\"3841301\";\"Picun Leufu\";\"ascii\"\n\"3841309\";\"Pico Truncado\";\"main\"\n\"3841309\";\"Pico Troncado\";\"other\"\n\"3841490\";\"Pergamino\";\"main\"\n\"3841490\";\"Пергамино\";\"other\"\n\"3841500\";\"Pérez\";\"main\"\n\"3841500\";\"Perez\";\"ascii\"\n\"3841908\";\"Pasco\";\"main\"\n\"3841912\";\"Pascanas\";\"main\"\n\"3841937\";\"Parera\";\"main\"\n\"3841956\";\"Paraná\";\"main\"\n\"3841956\";\"Parana\";\"ascii\"\n\"3841956\";\"Парана\";\"other\"\n\"3842140\";\"Pampa de los Guanacos\";\"main\"\n\"3842140\";\"Kilometro 325\";\"other\"\n\"3842140\";\"Kilómetro 325\";\"other\"\n\"3842142\";\"Pampa del Infierno\";\"main\"\n\"3842190\";\"Palpalá\";\"main\"\n\"3842190\";\"Palpala\";\"ascii\"\n\"3842268\";\"Palma Sola\";\"main\"\n\"3842268\";\"Palma Sota\";\"other\"\n\"3842559\";\"Oro Verde\";\"main\"\n\"3842593\";\"Ordóñez\";\"main\"\n\"3842593\";\"Ordonez\";\"ascii\"\n\"3842593\";\"General Ordonez\";\"other\"\n\"3842621\";\"Oncativo\";\"main\"\n\"3842662\";\"Oliva\";\"main\"\n\"3842662\";\"Olivia\";\"other\"\n\"3842670\";\"Olavarría\";\"main\"\n\"3842670\";\"Olavarria\";\"ascii\"\n\"3842670\";\"Olavarrija\";\"other\"\n\"3842670\";\"Олаваррия\";\"other\"\n\"3842796\";\"Obispo Trejo\";\"main\"\n\"3842796\";\"San Antonio\";\"other\"\n\"3842881\";\"Nueve de Julio\";\"main\"\n\"3842881\";\"9 de Julio\";\"other\"\n\"3842881\";\"Nev-de-Khulio\";\"other\"\n\"3842881\";\"Нев-де-Хулио\";\"other\"\n\"3842882\";\"Nueve de Julio\";\"main\"\n\"3842882\";\"9 de Julio\";\"other\"\n\"3843026\";\"Noetinger\";\"main\"\n\"3843123\";\"Neuquén\";\"main\"\n\"3843123\";\"Neuquen\";\"ascii\"\n\"3843123\";\"Nequen\";\"other\"\n\"3843123\";\"Neuken\";\"other\"\n\"3843123\";\"Neukenas\";\"other\"\n\"3843123\";\"Неукен\";\"other\"\n\"3843407\";\"Naschel\";\"main\"\n\"3843436\";\"Napenay\";\"main\"\n\"3843504\";\"Mutquín\";\"main\"\n\"3843504\";\"Mutquin\";\"ascii\"\n\"3843504\";\"Mudquin\";\"other\"\n\"3843619\";\"Morteros\";\"main\"\n\"3843647\";\"Morrison\";\"main\"\n\"3843803\";\"Monteros\";\"main\"\n\"3843830\";\"Monte Maíz\";\"main\"\n\"3843830\";\"Monte Maiz\";\"ascii\"\n\"3843830\";\"Monte Maize\";\"other\"\n\"3843871\";\"Monte Cristo\";\"main\"\n\"3843881\";\"Monte Buey\";\"main\"\n\"3844159\";\"Miramar\";\"main\"\n\"3844229\";\"Mina Clavero\";\"main\"\n\"3844267\";\"Miguel Riglos\";\"main\"\n\"3844267\";\"M. Riglos\";\"other\"\n\"3844377\";\"Merlo\";\"main\"\n\"3844377\";\"Villa de Merlo\";\"other\"\n\"3844421\";\"Mendoza\";\"main\"\n\"3844421\";\"Mendosa\";\"other\"\n\"3844421\";\"Мендоса\";\"other\"\n\"3844424\";\"Mendiolaza\";\"main\"\n\"3844679\";\"Mattaldi\";\"main\"\n\"3844679\";\"Mataldi\";\"other\"\n\"3844759\";\"Marull\";\"main\"\n\"3844759\";\"Kilometro 267\";\"other\"\n\"3844759\";\"Kilómetro 267\";\"other\"\n\"3844832\";\"Mariano Moreno\";\"main\"\n\"3844832\";\"Covunco\";\"other\"\n\"3844832\";\"Covunco Centro\";\"other\"\n\"3844832\";\"M. Moreno\";\"other\"\n\"3844899\";\"Marcos Juárez\";\"main\"\n\"3844899\";\"Marcos Juarez\";\"ascii\"\n\"3844933\";\"Maquinchao\";\"main\"\n\"3845073\";\"Malvinas Argentinas\";\"main\"\n\"3845202\";\"Malagueño\";\"main\"\n\"3845202\";\"Malagueno\";\"ascii\"\n\"3845251\";\"Mainque\";\"main\"\n\"3845254\";\"Maimará\";\"main\"\n\"3845254\";\"Maimara\";\"ascii\"\n\"3845330\";\"Machagai\";\"main\"\n\"3845344\";\"Macachín\";\"main\"\n\"3845344\";\"Macachin\";\"ascii\"\n\"3845398\";\"Luján\";\"main\"\n\"3845398\";\"Lujan\";\"ascii\"\n\"3845490\";\"Los Varela\";\"main\"\n\"3845490\";\"Varela\";\"other\"\n\"3845549\";\"Los Telares\";\"main\"\n\"3845575\";\"Los Surgentes\";\"main\"\n\"3845977\";\"Los Menucos\";\"main\"\n\"3846080\";\"Los Juríes\";\"main\"\n\"3846080\";\"Los Juries\";\"ascii\"\n\"3846175\";\"Los Frentones\";\"main\"\n\"3846175\";\"Los Frontones\";\"other\"\n\"3846236\";\"Los Cóndores\";\"main\"\n\"3846236\";\"Los Condores\";\"ascii\"\n\"3846236\";\"Condores\";\"other\"\n\"3846236\";\"Cóndores\";\"other\"\n\"3846258\";\"Los Cocos\";\"main\"\n\"3846484\";\"Los Antiguos\";\"main\"\n\"3846514\";\"Los Altos\";\"main\"\n\"3846514\";\"Altos\";\"other\"\n\"3846610\";\"Lonquimay\";\"main\"\n\"3846610\";\"Pueblo Quintana\";\"other\"\n\"3846616\";\"Londres\";\"main\"\n\"3846634\";\"Loncopué\";\"main\"\n\"3846634\";\"Loncopue\";\"ascii\"\n\"3846864\";\"Lincoln\";\"main\"\n\"3846915\";\"Libertador General San Martín\";\"main\"\n\"3846915\";\"Libertador General San Martin\";\"ascii\"\n\"3846915\";\"General San Martin\";\"other\"\n\"3846915\";\"Ledesma\";\"other\"\n\"3846991\";\"Leones\";\"main\"\n\"3846991\";\"Peron\";\"other\"\n\"3846991\";\"Perón\";\"other\"\n\"3847482\";\"La Toma\";\"main\"\n\"3847482\";\"Cuatro de Junio\";\"other\"\n\"3847516\";\"La Tigra\";\"main\"\n\"3847613\";\"Las Varillas\";\"main\"\n\"3847617\";\"Las Varas\";\"main\"\n\"3847836\";\"Las Rosas\";\"main\"\n\"3847911\";\"Las Perdices\";\"main\"\n\"3847933\";\"Las Parejas\";\"main\"\n\"3847971\";\"Las Ovejas\";\"main\"\n\"3848164\";\"Las Lomitas\";\"main\"\n\"3848209\";\"Las Lajitas\";\"main\"\n\"3848216\";\"Las Lajas\";\"main\"\n\"3848242\";\"Las Junturas\";\"main\"\n\"3848343\";\"Las Higueras\";\"main\"\n\"3848353\";\"Las Heras\";\"main\"\n\"3848353\";\"Colonia Las Heras\";\"other\"\n\"3848687\";\"Las Breñas\";\"main\"\n\"3848687\";\"Las Brenas\";\"ascii\"\n\"3848863\";\"Las Acequias\";\"main\"\n\"3848863\";\"Las Acequitas\";\"other\"\n\"3848863\";\"Las Arequias\";\"other\"\n\"3848950\";\"La Rioja\";\"main\"\n\"3848950\";\"La Riocha\";\"other\"\n\"3848950\";\"La-Riokha\";\"other\"\n\"3848950\";\"Ла-Риоха\";\"other\"\n\"3849140\";\"La Quiaca\";\"main\"\n\"3849196\";\"La Puerta de San José\";\"main\"\n\"3849196\";\"La Puerta de San Jose\";\"ascii\"\n\"3849388\";\"La Playosa\";\"main\"\n\"3849557\";\"La Para\";\"main\"\n\"3849924\";\"La Mendieta\";\"main\"\n\"3849980\";\"La Maruja\";\"main\"\n\"3850005\";\"Lamarque\";\"main\"\n\"3850888\";\"Laguna Yema\";\"main\"\n\"3850920\";\"Laguna Paiva\";\"main\"\n\"3850920\";\"Reynaldo Cullen\";\"other\"\n\"3850929\";\"Laguna Larga\";\"main\"\n\"3851072\";\"La Granja\";\"main\"\n\"3851100\";\"Lago Puelo\";\"main\"\n\"3851181\";\"La Francia\";\"main\"\n\"3851331\";\"La Falda\";\"main\"\n\"3851798\";\"La Cumbre\";\"main\"\n\"3851985\";\"La Cocha\";\"main\"\n\"3851993\";\"La Clotilde\";\"main\"\n\"3852125\";\"La Cesira\";\"main\"\n\"3852279\";\"La Carlota\";\"main\"\n\"3852374\";\"La Calera\";\"main\"\n\"3852468\";\"Laboulaye\";\"main\"\n\"3852480\";\"Laborde\";\"main\"\n\"3852480\";\"Las Liebres\";\"other\"\n\"3853330\";\"Justo Daract\";\"main\"\n\"3853330\";\"Justo Daraet\";\"other\"\n\"3853331\";\"Justiniano Posse\";\"main\"\n\"3853331\";\"J. Posse\";\"other\"\n\"3853350\";\"Junín de los Andes\";\"main\"\n\"3853350\";\"Junin de los Andes\";\"ascii\"\n\"3853354\";\"Junín\";\"main\"\n\"3853354\";\"Junin\";\"ascii\"\n\"3853479\";\"José de San Martín\";\"main\"\n\"3853479\";\"Jose de San Martin\";\"ascii\"\n\"3853479\";\"Colonia San Martin\";\"other\"\n\"3853479\";\"Colonia San Martín\";\"other\"\n\"3853479\";\"General J. de San Martin\";\"other\"\n\"3853479\";\"General J. de San Martín\";\"other\"\n\"3853479\";\"San Martin\";\"other\"\n\"3853479\";\"San Martín\";\"other\"\n\"3853491\";\"Joaquín V. González\";\"main\"\n\"3853491\";\"Joaquin V. Gonzalez\";\"ascii\"\n\"3853491\";\"J.V. Gonzalez\";\"other\"\n\"3853491\";\"J.V. González\";\"other\"\n\"3853510\";\"Jesús María\";\"main\"\n\"3853510\";\"Jesus Maria\";\"ascii\"\n\"3853562\";\"James Craik\";\"main\"\n\"3853592\";\"Jacinto Arauz\";\"main\"\n\"3853592\";\"J. Arauz\";\"other\"\n\"3853616\";\"Italó\";\"main\"\n\"3853616\";\"Italo\";\"ascii\"\n\"3853643\";\"Isla Verde\";\"main\"\n\"3853745\";\"Intendente Alvear\";\"main\"\n\"3853748\";\"Inriville\";\"main\"\n\"3853767\";\"Ingenio La Esperanza\";\"main\"\n\"3853767\";\"La Esperanza\";\"other\"\n\"3853782\";\"Ingeniero Luis A. Huergo\";\"main\"\n\"3853782\";\"Ingeniero Huergo\";\"other\"\n\"3853782\";\"Ingeniero L.A. Huergo\";\"other\"\n\"3853783\";\"Ingeniero Luiggi\";\"main\"\n\"3853786\";\"Ingeniero Jacobacci\";\"main\"\n\"3853788\";\"Ingeniero Guillermo N. Juárez\";\"main\"\n\"3853788\";\"Ingeniero Guillermo N. Juarez\";\"ascii\"\n\"3853788\";\"Guillermo N. Juarez\";\"other\"\n\"3853788\";\"Guillermo N. Juárez\";\"other\"\n\"3853788\";\"Ingeniero G.N. Juarez\";\"other\"\n\"3853788\";\"Ingeniero G.N. Juárez\";\"other\"\n\"3853788\";\"Ingeniero Juarez\";\"other\"\n\"3853923\";\"Idiazábal\";\"main\"\n\"3853923\";\"Idiazabal\";\"ascii\"\n\"3853923\";\"Ideazabal\";\"other\"\n\"3853935\";\"Icaño\";\"main\"\n\"3853935\";\"Icano\";\"ascii\"\n\"3853967\";\"Humahuaca\";\"main\"\n\"3853974\";\"Huinca Renancó\";\"main\"\n\"3853974\";\"Huinca Renanco\";\"ascii\"\n\"3853981\";\"Huillapima\";\"main\"\n\"3854008\";\"Huerta Grande\";\"main\"\n\"3854093\";\"Huanchillas\";\"main\"\n\"3854093\";\"Huanchilla\";\"other\"\n\"3854102\";\"Hualfín\";\"main\"\n\"3854102\";\"Hualfin\";\"ascii\"\n\"3854153\";\"Hoyo de Epuyén\";\"main\"\n\"3854153\";\"Hoyo de Epuyen\";\"ascii\"\n\"3854318\";\"Hersilia\";\"main\"\n\"3854331\";\"Hernando\";\"main\"\n\"3854334\";\"Hernández\";\"main\"\n\"3854334\";\"Hernandez\";\"ascii\"\n\"3854336\";\"Hermoso Campo\";\"main\"\n\"3854493\";\"Guatraché\";\"main\"\n\"3854493\";\"Guatrache\";\"ascii\"\n\"3854494\";\"Guatimozín\";\"main\"\n\"3854494\";\"Guatimozin\";\"ascii\"\n\"3854724\";\"Graneros\";\"main\"\n\"3854895\";\"Granadero Baigorria\";\"main\"\n\"3854895\";\"Granadero Baigorrio\";\"other\"\n\"3854895\";\"Paganini\";\"other\"\n\"3854985\";\"Gobernador Gálvez\";\"main\"\n\"3854985\";\"Gobernador Galvez\";\"ascii\"\n\"3854985\";\"Galvez\";\"other\"\n\"3854985\";\"Villa Gobernador Galvez\";\"other\"\n\"3854985\";\"Villa Gobernador Gálvez\";\"other\"\n\"3854988\";\"Gobernador Costa\";\"main\"\n\"3854988\";\"Gobernor Costa\";\"other\"\n\"3855056\";\"General San Martín\";\"main\"\n\"3855056\";\"General San Martin\";\"ascii\"\n\"3855056\";\"Jose de San Martin\";\"other\"\n\"3855056\";\"José de San Martín\";\"other\"\n\"3855056\";\"Villa Alba\";\"other\"\n\"3855065\";\"General Roca\";\"main\"\n\"3855065\";\"Cheneral Roka\";\"other\"\n\"3855065\";\"Fuerte General Roca\";\"other\"\n\"3855065\";\"Kheneral'\";\"other\"\n\"3855065\";\"Хенераль\";\"other\"\n\"3855066\";\"General Roca\";\"main\"\n\"3855067\";\"General Ramírez\";\"main\"\n\"3855067\";\"General Ramirez\";\"ascii\"\n\"3855067\";\"Ramirez\";\"other\"\n\"3855067\";\"Ramírez\";\"other\"\n\"3855067\";\"Villa Ramirez\";\"other\"\n\"3855067\";\"Villa Ramírez\";\"other\"\n\"3855074\";\"General Pinedo\";\"main\"\n\"3855075\";\"General Pico\";\"main\"\n\"3855075\";\"Pico\";\"other\"\n\"3855092\";\"General Manuel J. Campos\";\"main\"\n\"3855092\";\"General M.J. Campos\";\"other\"\n\"3855092\";\"General Manuel Campos\";\"other\"\n\"3855098\";\"General Levalle\";\"main\"\n\"3855114\";\"General Fernández Oro\";\"main\"\n\"3855114\";\"General Fernandez Oro\";\"ascii\"\n\"3855115\";\"General Enrique Mosconi\";\"main\"\n\"3855116\";\"General Enrique Mosconi\";\"main\"\n\"3855116\";\"Ciro Echesortu\";\"other\"\n\"3855116\";\"General Mosconi\";\"other\"\n\"3855116\";\"Vespucio\";\"other\"\n\"3855117\";\"General Enrique Godoy\";\"main\"\n\"3855117\";\"General E. Godoy\";\"other\"\n\"3855117\";\"Godoy\";\"other\"\n\"3855121\";\"General Conesa\";\"main\"\n\"3855121\";\"Conesa\";\"other\"\n\"3855124\";\"General Cabrera\";\"main\"\n\"3855124\";\"Cabrera\";\"other\"\n\"3855131\";\"General Baldissera\";\"main\"\n\"3855131\";\"Colonia General Baldissera\";\"other\"\n\"3855143\";\"General Acha\";\"main\"\n\"3855237\";\"Gancedo\";\"main\"\n\"3855244\";\"Gálvez\";\"main\"\n\"3855244\";\"Galvez\";\"ascii\"\n\"3855284\";\"Gaimán\";\"main\"\n\"3855284\";\"Gaiman\";\"ascii\"\n\"3855302\";\"Funes\";\"main\"\n\"3855368\";\"Fray Luis Beltrán\";\"main\"\n\"3855368\";\"Fray Luis Beltran\";\"ascii\"\n\"3855368\";\"Fray L. Beltran\";\"other\"\n\"3855368\";\"Fray L. Beltrán\";\"other\"\n\"3855368\";\"Luis Beltran\";\"other\"\n\"3855368\";\"Luis Beltrán\";\"other\"\n\"3855370\";\"Fray Luis A. Beltrán\";\"main\"\n\"3855370\";\"Fray Luis A. Beltran\";\"ascii\"\n\"3855370\";\"Borghi\";\"other\"\n\"3855370\";\"Fray Luis Beltran\";\"other\"\n\"3855370\";\"Fray Luís Beltrán\";\"other\"\n\"3855394\";\"Fraile Pintado\";\"main\"\n\"3855554\";\"Firmat\";\"main\"\n\"3855588\";\"Fiambalá\";\"main\"\n\"3855588\";\"Fiambala\";\"ascii\"\n\"3855666\";\"Famaillá\";\"main\"\n\"3855666\";\"Famailla\";\"ascii\"\n\"3855719\";\"Etruria\";\"main\"\n\"3855763\";\"Estanislao del Campo\";\"main\"\n\"3855763\";\"Estancia del Campo\";\"other\"\n\"3855974\";\"Esquel\";\"main\"\n\"3856022\";\"Esperanza\";\"main\"\n\"3856231\";\"Embarcación\";\"main\"\n\"3856231\";\"Embarcacion\";\"ascii\"\n\"3856235\";\"Embalse\";\"main\"\n\"3856236\";\"Embajador Martini\";\"main\"\n\"3856436\";\"El Trébol\";\"main\"\n\"3856436\";\"El Trebol\";\"ascii\"\n\"3856496\";\"El Tío\";\"main\"\n\"3856496\";\"El Tio\";\"ascii\"\n\"3856776\";\"El Rodeo\";\"main\"\n\"3856776\";\"Rodeo\";\"other\"\n\"3857012\";\"El Quebrachal\";\"main\"\n\"3857756\";\"El Maitén\";\"main\"\n\"3857756\";\"El Maiten\";\"ascii\"\n\"3857756\";\"Estancia El Maiten\";\"other\"\n\"3857756\";\"Estancia El Maitén\";\"other\"\n\"3857879\";\"El Huecú\";\"main\"\n\"3857879\";\"El Huecu\";\"ascii\"\n\"3857887\";\"El Hoyo\";\"main\"\n\"3857887\";\"Hoyo\";\"other\"\n\"3857974\";\"El Galpón\";\"main\"\n\"3857974\";\"El Galpon\";\"ascii\"\n\"3858088\";\"Elena\";\"main\"\n\"3858553\";\"El Carril\";\"main\"\n\"3858553\";\"Carril\";\"other\"\n\"3858677\";\"El Calafate\";\"main\"\n\"3858677\";\"Calafate\";\"other\"\n\"3858677\";\"Caserio de Calafates\";\"other\"\n\"3858677\";\"Caserío de Calafates\";\"other\"\n\"3858677\";\"Ehl' Kalafate\";\"other\"\n\"3858677\";\"Lago Argentino\";\"other\"\n\"3858677\";\"Pueblo Calafate\";\"other\"\n\"3858677\";\"Эль Калафате\";\"other\"\n\"3858765\";\"El Bolsón\";\"main\"\n\"3858765\";\"El Bolson\";\"ascii\"\n\"3858909\";\"El Arañado\";\"main\"\n\"3858909\";\"El Aranado\";\"ascii\"\n\"3859000\";\"El Aguilar\";\"main\"\n\"3859000\";\"Aguilar\";\"other\"\n\"3859036\";\"Eduardo Castex\";\"main\"\n\"3859036\";\"Castex\";\"other\"\n\"3859036\";\"E. Castex\";\"other\"\n\"3859278\";\"Dolavón\";\"main\"\n\"3859278\";\"Dolavon\";\"ascii\"\n\"3859278\";\"Colonia Dolavon\";\"other\"\n\"3859278\";\"Colonia Dolavón\";\"other\"\n\"3859296\";\"Doblas\";\"main\"\n\"3859384\";\"Diamante\";\"main\"\n\"3859409\";\"Devoto\";\"main\"\n\"3859429\";\"Despeñaderos\";\"main\"\n\"3859429\";\"Despenaderos\";\"ascii\"\n\"3859500\";\"Del Campillo\";\"main\"\n\"3859512\";\"Deán Funes\";\"main\"\n\"3859512\";\"Dean Funes\";\"ascii\"\n\"3859521\";\"Darwin\";\"main\"\n\"3859535\";\"Dalmacio Vélez Sársfield\";\"main\"\n\"3859535\";\"Dalmacio Velez Sarsfield\";\"ascii\"\n\"3859535\";\"D. Velez\";\"other\"\n\"3859535\";\"D. Velez Sarsfield\";\"other\"\n\"3859535\";\"D. Vélez\";\"other\"\n\"3859535\";\"D. Vélez Sársfield\";\"other\"\n\"3859535\";\"Dalmacio Velez\";\"other\"\n\"3859535\";\"Dalmacio Vélez\";\"other\"\n\"3859552\";\"Cutral-Có\";\"main\"\n\"3859552\";\"Cutral-Co\";\"ascii\"\n\"3859552\";\"Cutrai-Co\";\"other\"\n\"3859552\";\"Cutrai-Có\";\"other\"\n\"3859552\";\"Eva Peron\";\"other\"\n\"3859552\";\"Eva Perón\";\"other\"\n\"3859828\";\"Cruz del Eje\";\"main\"\n\"3859839\";\"Cruz Alta\";\"main\"\n\"3859904\";\"Crespo\";\"main\"\n\"3859951\";\"Costa Sacate\";\"main\"\n\"3859965\";\"Cosquín\";\"main\"\n\"3859965\";\"Cosquin\";\"ascii\"\n\"3859974\";\"Corzuela\";\"main\"\n\"3860079\";\"Corralito\";\"main\"\n\"3860129\";\"Corral de Bustos\";\"main\"\n\"3860164\";\"Coronel Suárez\";\"main\"\n\"3860164\";\"Coronel Suarez\";\"ascii\"\n\"3860164\";\"Koronel'-Suarez\";\"other\"\n\"3860164\";\"Коронель-Суарез\";\"other\"\n\"3860178\";\"Coronel Moldes\";\"main\"\n\"3860178\";\"Moldes\";\"other\"\n\"3860197\";\"Coronel Du Graty\";\"main\"\n\"3860206\";\"Coronel Belisle\";\"main\"\n\"3860208\";\"Coronel Baigorria\";\"main\"\n\"3860217\";\"Coronda\";\"main\"\n\"3860217\";\"Cordona\";\"other\"\n\"3860259\";\"Córdoba\";\"main\"\n\"3860259\";\"Cordoba\";\"ascii\"\n\"3860259\";\"Còrdoba\";\"other\"\n\"3860259\";\"Kordoba\";\"other\"\n\"3860259\";\"Kordobo\";\"other\"\n\"3860259\";\"Kordova\";\"other\"\n\"3860259\";\"ke er duo wa\";\"other\"\n\"3860259\";\"korudoba\";\"other\"\n\"3860259\";\"qrtbt\";\"other\"\n\"3860259\";\"qwrdwbh\";\"other\"\n\"3860259\";\"Кордоба\";\"other\"\n\"3860259\";\"Кордова\";\"other\"\n\"3860259\";\"קורדובה\";\"other\"\n\"3860259\";\"قرطبة\";\"other\"\n\"3860259\";\"コルドバ\";\"other\"\n\"3860259\";\"科尔多瓦\";\"other\"\n\"3860319\";\"Contraalmirante Cordero\";\"main\"\n\"3860319\";\"Contralmirante Cordero\";\"other\"\n\"3860419\";\"Concepción del Bermejo\";\"main\"\n\"3860419\";\"Concepcion del Bermejo\";\"ascii\"\n\"3860431\";\"Concarán\";\"main\"\n\"3860431\";\"Concaran\";\"ascii\"\n\"3860431\";\"Concoran\";\"other\"\n\"3860431\";\"Dolores\";\"other\"\n\"3860431\";\"Villa Dolores\";\"other\"\n\"3860443\";\"Comodoro Rivadavia\";\"main\"\n\"3860466\";\"Comandante Luis Piedra Buena\";\"main\"\n\"3860466\";\"Casa de Piedra\";\"other\"\n\"3860466\";\"Comandante L. Piedrabuena\";\"other\"\n\"3860466\";\"El Paso\";\"other\"\n\"3860466\";\"Piedra Buena\";\"other\"\n\"3860475\";\"Comallo\";\"main\"\n\"3860730\";\"Colonia San Bartolomé\";\"main\"\n\"3860730\";\"Colonia San Bartolome\";\"ascii\"\n\"3860730\";\"San Bartolome\";\"other\"\n\"3860730\";\"San Bartolomé\";\"other\"\n\"3860757\";\"Colonia La Tordilla\";\"main\"\n\"3860791\";\"Colonia Dora\";\"main\"\n\"3860811\";\"Colonia Barón\";\"main\"\n\"3860811\";\"Colonia Baron\";\"ascii\"\n\"3861002\";\"Clodomira\";\"main\"\n\"3861056\";\"Cipolletti\";\"main\"\n\"3861056\";\"Chipolletti\";\"other\"\n\"3861056\";\"Cipoletti\";\"other\"\n\"3861056\";\"Cipolleti\";\"other\"\n\"3861056\";\"Чиполлетти\";\"other\"\n\"3861059\";\"Cintra\";\"main\"\n\"3861061\";\"Cinco Saltos\";\"main\"\n\"3861262\";\"Chos Malal\";\"main\"\n\"3861297\";\"Chorotis\";\"main\"\n\"3861329\";\"Choele Choel\";\"main\"\n\"3861329\";\"C. Choel\";\"other\"\n\"3861344\";\"Chivilcoy\";\"main\"\n\"3861405\";\"Chimpay\";\"main\"\n\"3861416\";\"Chimbas\";\"main\"\n\"3861445\";\"Chilecito\";\"main\"\n\"3861494\";\"Chicoana\";\"main\"\n\"3861528\";\"Chichinales\";\"main\"\n\"3861528\";\"Chinchinales\";\"other\"\n\"3861595\";\"Chazón\";\"main\"\n\"3861595\";\"Chazon\";\"ascii\"\n\"3861666\";\"Charras\";\"main\"\n\"3861678\";\"Charata\";\"main\"\n\"3861678\";\"Charatas\";\"other\"\n\"3861824\";\"Chamical\";\"main\"\n\"3861824\";\"Gobernador Gordillo\";\"other\"\n\"3861953\";\"Chacabuco\";\"main\"\n\"3861953\";\"Chakabuko\";\"other\"\n\"3861953\";\"Чакабуко\";\"other\"\n\"3861966\";\"Cervantes\";\"main\"\n\"3862100\";\"Ceres\";\"main\"\n\"3862144\";\"Centenario\";\"main\"\n\"3862144\";\"Colonia Centenario\";\"other\"\n\"3862222\";\"Cavanagh\";\"main\"\n\"3862240\";\"Caucete\";\"main\"\n\"3862240\";\"Villa Colon\";\"other\"\n\"3862240\";\"Villa Colón\";\"other\"\n\"3862251\";\"Catriló\";\"main\"\n\"3862251\";\"Catrilo\";\"ascii\"\n\"3862254\";\"Catriel\";\"main\"\n\"3862293\";\"Castro Barros\";\"main\"\n\"3862320\";\"Castelli\";\"main\"\n\"3862320\";\"Colonia Castelli\";\"other\"\n\"3862320\";\"J.J. Castelli\";\"other\"\n\"3862320\";\"Juan Jose Castelli\";\"other\"\n\"3862320\";\"Juan José Castelli\";\"other\"\n\"3862351\";\"Casilda\";\"main\"\n\"3862515\";\"Carrilobo\";\"main\"\n\"3862575\";\"Carnerillo\";\"main\"\n\"3862655\";\"Carcarañá\";\"main\"\n\"3862655\";\"Carcarana\";\"ascii\"\n\"3862738\";\"Capitán Bermúdez\";\"main\"\n\"3862738\";\"Capitan Bermudez\";\"ascii\"\n\"3862738\";\"Juan Ortiz\";\"other\"\n\"3862738\";\"Juan Ortíz\";\"other\"\n\"3862738\";\"Villa Cassini\";\"other\"\n\"3862761\";\"Capilla del Monte\";\"main\"\n\"3862772\";\"Capayán\";\"main\"\n\"3862772\";\"Capayan\";\"ascii\"\n\"3862832\";\"Candelaria\";\"main\"\n\"3862883\";\"Canals\";\"main\"\n\"3862971\";\"Cañada de Luque\";\"main\"\n\"3862971\";\"Canada de Luque\";\"ascii\"\n\"3862981\";\"Cañada de Gómez\";\"main\"\n\"3862981\";\"Canada de Gomez\";\"ascii\"\n\"3862981\";\"Ciudad Evita\";\"other\"\n\"3862981\";\"Ciudad de Gomez\";\"other\"\n\"3862981\";\"Ciudad de Gómez\";\"other\"\n\"3862981\";\"Kanada-de-Gomes\";\"other\"\n\"3862981\";\"Канада-де-Гомес\";\"other\"\n\"3863050\";\"Campo Quijano\";\"main\"\n\"3863050\";\"Quijana\";\"other\"\n\"3863050\";\"Quijano\";\"other\"\n\"3863095\";\"Campo Largo\";\"main\"\n\"3863136\";\"Campo Gallo\";\"main\"\n\"3863314\";\"Camilo Aldao\";\"main\"\n\"3863314\";\"Aldao\";\"other\"\n\"3863314\";\"C. Aldao\";\"other\"\n\"3863314\";\"Caldao\";\"other\"\n\"3863327\";\"Camarones\";\"main\"\n\"3863362\";\"Calingasta\";\"main\"\n\"3863366\";\"Calilegua\";\"main\"\n\"3863377\";\"Caleufú\";\"main\"\n\"3863377\";\"Caleufu\";\"ascii\"\n\"3863379\";\"Caleta Olivia\";\"main\"\n\"3863419\";\"Calchaquí\";\"main\"\n\"3863419\";\"Calchaqui\";\"ascii\"\n\"3863419\";\"Luis d'Abreu\";\"other\"\n\"3863419\";\"Luis d’Abreu\";\"other\"\n\"3863491\";\"Caimancito\";\"main\"\n\"3863503\";\"Cafayate\";\"main\"\n\"3863503\";\"Cafayete\";\"other\"\n\"3863503\";\"Kafajat\";\"other\"\n\"3863503\";\"Кафайат\";\"other\"\n\"3863557\";\"Cachí\";\"main\"\n\"3863557\";\"Cachi\";\"ascii\"\n\"3863663\";\"Buta Ranquil\";\"main\"\n\"3863701\";\"Burruyacú\";\"main\"\n\"3863701\";\"Burruyacu\";\"ascii\"\n\"3863701\";\"Burruyaco\";\"other\"\n\"3863814\";\"Buena Esperanza\";\"main\"\n\"3863814\";\"B. Esperanza\";\"other\"\n\"3863821\";\"Buchardo\";\"main\"\n\"3863833\";\"Brinkmann\";\"main\"\n\"3863833\";\"Brinkman\";\"other\"\n\"3864274\";\"Berrotarán\";\"main\"\n\"3864274\";\"Berrotaran\";\"ascii\"\n\"3864283\";\"Bernasconi\";\"main\"\n\"3864285\";\"Bernardo Larroudé\";\"main\"\n\"3864285\";\"Bernardo Larroude\";\"ascii\"\n\"3864285\";\"B. Larroude\";\"other\"\n\"3864285\";\"B. Larroudé\";\"other\"\n\"3864285\";\"Benjamin Larroude\";\"other\"\n\"3864285\";\"Larroude\";\"other\"\n\"3864328\";\"Beltrán\";\"main\"\n\"3864328\";\"Beltran\";\"ascii\"\n\"3864331\";\"Bell Ville\";\"main\"\n\"3864375\";\"Bella Vista\";\"main\"\n\"3864729\";\"Barrancas\";\"main\"\n\"3864888\";\"Balnearia\";\"main\"\n\"3865086\";\"Bahía Blanca\";\"main\"\n\"3865086\";\"Bahia Blanca\";\"ascii\"\n\"3865086\";\"Bahija Blanka\";\"other\"\n\"3865086\";\"Bajja-Blanka\";\"other\"\n\"3865086\";\"bahya blanka\";\"other\"\n\"3865086\";\"Байя-Бланка\";\"other\"\n\"3865086\";\"باهيا بلانكا\";\"other\"\n\"3865186\";\"Aviá Terai\";\"main\"\n\"3865186\";\"Avia Terai\";\"ascii\"\n\"3865375\";\"Arrufó\";\"main\"\n\"3865375\";\"Arrufo\";\"ascii\"\n\"3865375\";\"Arruto\";\"other\"\n\"3865375\";\"Arrutó\";\"other\"\n\"3865385\";\"Arroyo Seco\";\"main\"\n\"3865385\";\"Aguirre\";\"other\"\n\"3865385\";\"Posta de San Martin\";\"other\"\n\"3865385\";\"Posta de San Martín\";\"other\"\n\"3865413\";\"Arroyo Cabral\";\"main\"\n\"3865424\";\"Arroyito\";\"main\"\n\"3865449\";\"Armstrong\";\"main\"\n\"3865474\";\"Arias\";\"main\"\n\"3865579\";\"Arauco\";\"main\"\n\"3865579\";\"Arauca\";\"other\"\n\"3865580\";\"Arata\";\"main\"\n\"3865585\";\"Aranguren\";\"main\"\n\"3865605\";\"Apolinario Saravia\";\"main\"\n\"3865742\";\"Anguil\";\"main\"\n\"3865776\";\"Añelo\";\"main\"\n\"3865776\";\"Anelo\";\"ascii\"\n\"3865802\";\"Andalgalá\";\"main\"\n\"3865802\";\"Andalgala\";\"ascii\"\n\"3865803\";\"Andacollo\";\"main\"\n\"3865830\";\"Ancasti\";\"main\"\n\"3865840\";\"Añatuya\";\"main\"\n\"3865840\";\"Anatuya\";\"ascii\"\n\"3865840\";\"Unatuya\";\"other\"\n\"3865840\";\"Uñatuya\";\"other\"\n\"3866000\";\"Aluminé\";\"main\"\n\"3866000\";\"Alumine\";\"ascii\"\n\"3866000\";\"Rucachoroi\";\"other\"\n\"3866028\";\"Altos de Chipión\";\"main\"\n\"3866028\";\"Altos de Chipion\";\"ascii\"\n\"3866035\";\"Alto Río Senguer\";\"main\"\n\"3866035\";\"Alto Rio Senguer\";\"ascii\"\n\"3866035\";\"Alto Rio Senguerr\";\"other\"\n\"3866035\";\"Alto Río Senguerr\";\"other\"\n\"3866035\";\"Brazo Norte\";\"other\"\n\"3866161\";\"Alta Italia\";\"main\"\n\"3866163\";\"Alta Gracia\";\"main\"\n\"3866163\";\"Al'ta-Gracija\";\"other\"\n\"3866163\";\"Альта-Грация\";\"other\"\n\"3866214\";\"Alpachiri\";\"main\"\n\"3866237\";\"Almafuerte\";\"main\"\n\"3866242\";\"Allen\";\"main\"\n\"3866353\";\"Alejo Ledesma\";\"main\"\n\"3866353\";\"A. Ledesma\";\"other\"\n\"3866353\";\"Ledesma\";\"other\"\n\"3866356\";\"Alejandro Roca\";\"main\"\n\"3866356\";\"Alejandro\";\"other\"\n\"3866367\";\"Alderetes\";\"main\"\n\"3866425\";\"Albardón\";\"main\"\n\"3866425\";\"Albardon\";\"ascii\"\n\"3866496\";\"Aguilares\";\"main\"\n\"3866667\";\"Agua de Oro\";\"main\"\n\"3866935\";\"Adelia María\";\"main\"\n\"3866935\";\"Adelia Maria\";\"ascii\"\n\"3866959\";\"Achiras\";\"main\"\n\"3867009\";\"Abra Pampa\";\"main\"\n\"6693230\";\"Villa Santa Rita\";\"main\"\n\"6942842\";\"Bella Italia\";\"main\"\n\"7116866\";\"Villa Mercedes\";\"main\"\n\"7284819\";\"La Punta\";\"main\"\n\"7304381\";\"Villa Berna\";\"main\"\n\"7304383\";\"Cuesta Blanca\";\"main\"\n\"7535637\";\"Avellaneda\";\"main\"\n\"5880828\";\"Aūa\";\"main\"\n\"5880828\";\"Aua\";\"ascii\"\n\"5880891\";\"Vaitogi\";\"main\"\n\"5880944\";\"Vailoatai\";\"main\"\n\"5881192\";\"Tāfuna\";\"main\"\n\"5881192\";\"Tafuna\";\"ascii\"\n\"5881192\";\"Тафуна\";\"other\"\n\"5881224\";\"Faleniu\";\"main\"\n\"5881241\";\"Fagatogo\";\"main\"\n\"5881241\";\"Фагатого\";\"other\"\n\"5881347\";\"Leone\";\"main\"\n\"5881410\";\"Malaeimi\";\"main\"\n\"5881442\";\"Mapusagafou\";\"main\"\n\"5881576\";\"Pago Pago\";\"main\"\n\"5881576\";\"Pagopago\";\"other\"\n\"5881576\";\"pa ko pa ko\";\"other\"\n\"5881576\";\"pagopago\";\"other\"\n\"5881576\";\"Паго Паго\";\"other\"\n\"5881576\";\"Пагопаго\";\"other\"\n\"5881576\";\"ปาโกปาโก\";\"other\"\n\"5881576\";\"パゴパゴ\";\"other\"\n\"2601384\";\"Neu-Guntramsdorf\";\"main\"\n\"2760415\";\"Zwettl Stift\";\"main\"\n\"2760415\";\"Stift Zwettl\";\"other\"\n\"2760510\";\"Zistersdorf\";\"main\"\n\"2760523\";\"Zirl\";\"main\"\n\"2760523\";\"Cirl\";\"other\"\n\"2760523\";\"Цирл\";\"other\"\n\"2760610\";\"Zeltweg\";\"main\"\n\"2760634\";\"Zell am See\";\"main\"\n\"2760634\";\"Cel am Zee\";\"other\"\n\"2760634\";\"Cell'-am-Zee\";\"other\"\n\"2760634\";\"Zell in the Pinzgau\";\"other\"\n\"2760634\";\"tsyl am zyh\";\"other\"\n\"2760634\";\"Цел ам Зее\";\"other\"\n\"2760634\";\"Целль-ам-Зее\";\"other\"\n\"2760634\";\"تسيل أم زيه\";\"other\"\n\"2760772\";\"Ybbs an der Donau\";\"main\"\n\"2760772\";\"Ibbs\";\"other\"\n\"2760772\";\"Ibs-na-Dunae\";\"other\"\n\"2760772\";\"Ybbs\";\"other\"\n\"2760772\";\"Ибс-на-Дунае\";\"other\"\n\"2760854\";\"Wörgl\";\"main\"\n\"2760854\";\"Worgl\";\"ascii\"\n\"2760855\";\"Wördern\";\"main\"\n\"2760855\";\"Wordern\";\"ascii\"\n\"2760887\";\"Wolkersdorf\";\"main\"\n\"2760894\";\"Wolfurt\";\"main\"\n\"2760894\";\"Kirchdorf\";\"other\"\n\"2760894\";\"Vol'furt\";\"other\"\n\"2760894\";\"Вольфурт\";\"other\"\n\"2760910\";\"Wolfsberg\";\"main\"\n\"2761186\";\"Wilhelmsburg\";\"main\"\n\"2761353\";\"Wiener Neustadt\";\"main\"\n\"2761353\";\"Becsujvaros\";\"other\"\n\"2761353\";\"Bécsújváros\";\"other\"\n\"2761353\";\"Dunajsko Novo mesto\";\"other\"\n\"2761353\";\"Viedenske Nove Mesto\";\"other\"\n\"2761353\";\"Viedenské Nové Mesto\";\"other\"\n\"2761353\";\"Viner-Nojshtadt\";\"other\"\n\"2761353\";\"Viner-Nojstadt\";\"other\"\n\"2761353\";\"Wr. Neustadt\";\"other\"\n\"2761353\";\"wynr nwystt\";\"other\"\n\"2761353\";\"Винер-Нойштадт\";\"other\"\n\"2761353\";\"Вінер-Нойштадт\";\"other\"\n\"2761353\";\"וינר נוישטט\";\"other\"\n\"2761353\";\"ウィーナー・ノイシュタット\";\"other\"\n\"2761354\";\"Wiener Neudorf\";\"main\"\n\"2761369\";\"Vienna\";\"main\"\n\"2761369\";\"Bec\";\"other\"\n\"2761369\";\"Bech\";\"other\"\n\"2761369\";\"Becs\";\"other\"\n\"2761369\";\"Beč\";\"other\"\n\"2761369\";\"Bienne\";\"other\"\n\"2761369\";\"Bécs\";\"other\"\n\"2761369\";\"Dunaj\";\"other\"\n\"2761369\";\"Vena\";\"other\"\n\"2761369\";\"Viden\";\"other\"\n\"2761369\";\"Viena\";\"other\"\n\"2761369\";\"Vienne\";\"other\"\n\"2761369\";\"Vieno\";\"other\"\n\"2761369\";\"Vin\";\"other\"\n\"2761369\";\"Vinarborg\";\"other\"\n\"2761369\";\"Vindobona\";\"other\"\n\"2761369\";\"Viyana\";\"other\"\n\"2761369\";\"Vídeň\";\"other\"\n\"2761369\";\"Vín\";\"other\"\n\"2761369\";\"Vínarborg\";\"other\"\n\"2761369\";\"Wenen\";\"other\"\n\"2761369\";\"Wieden\";\"other\"\n\"2761369\";\"Wiedeń\";\"other\"\n\"2761369\";\"Wien\";\"other\"\n\"2761369\";\"bin\";\"other\"\n\"2761369\";\"weiynna\";\"other\"\n\"2761369\";\"Βιέννη\";\"other\"\n\"2761369\";\"Беч\";\"other\"\n\"2761369\";\"Вена\";\"other\"\n\"2761369\";\"Виена\";\"other\"\n\"2761369\";\"เวียนนา\";\"other\"\n\"2761369\";\"ቪየና\";\"other\"\n\"2761369\";\"빈\";\"other\"\n\"2761475\";\"Wernberg\";\"main\"\n\"2761479\";\"Werfen\";\"main\"\n\"2761479\";\"Verfen\";\"other\"\n\"2761479\";\"Верфен\";\"other\"\n\"2761524\";\"Wels\";\"main\"\n\"2761524\";\"Ovilava\";\"other\"\n\"2761524\";\"Vel's\";\"other\"\n\"2761524\";\"wls\";\"other\"\n\"2761524\";\"Вельс\";\"other\"\n\"2761524\";\"ולס\";\"other\"\n\"2761531\";\"Weiz\";\"main\"\n\"2761669\";\"Weinzierl bei Krems\";\"main\"\n\"2761669\";\"Weinzierl\";\"other\"\n\"2761834\";\"Wattens\";\"main\"\n\"2761976\";\"Waldzell\";\"main\"\n\"2762077\";\"Waidhofen an der Ybbs\";\"main\"\n\"2762077\";\"Stadt Waidhofen an der Ybbs\";\"other\"\n\"2762077\";\"Vajdkhofen-na- Ibbse\";\"other\"\n\"2762077\";\"Waidhofen\";\"other\"\n\"2762077\";\"Вайдхофен-на- Иббсе\";\"other\"\n\"2762079\";\"Waidhofen an der Thaya\";\"main\"\n\"2762079\";\"Vajdkhofen-an-der-Tajja\";\"other\"\n\"2762079\";\"Waidhofen\";\"other\"\n\"2762079\";\"Вайдхофен-ан-дер-Тайя\";\"other\"\n\"2762290\";\"Vorchdorf\";\"main\"\n\"2762303\";\"Vomp\";\"main\"\n\"2762303\";\"Fomp\";\"other\"\n\"2762303\";\"Фомп\";\"other\"\n\"2762304\";\"Völs\";\"main\"\n\"2762304\";\"Vols\";\"ascii\"\n\"2762315\";\"Völkermarkt\";\"main\"\n\"2762315\";\"Voelkermarkt\";\"ascii\"\n\"2762315\";\"Fjol'kermarkt\";\"other\"\n\"2762315\";\"Фёлькермаркт\";\"other\"\n\"2762327\";\"Voitsberg\";\"main\"\n\"2762341\";\"Vöcklamarkt\";\"main\"\n\"2762341\";\"Vocklamarkt\";\"ascii\"\n\"2762341\";\"Fjoklamarkt\";\"other\"\n\"2762341\";\"Vocklamarkt-am Haushamerfeld\";\"other\"\n\"2762341\";\"Vöcklamarkt-am Haushamerfeld\";\"other\"\n\"2762341\";\"Фёкламаркт\";\"other\"\n\"2762343\";\"Vöcklabruck\";\"main\"\n\"2762343\";\"Vocklabruck\";\"ascii\"\n\"2762372\";\"Villach\";\"main\"\n\"2762372\";\"Beljak\";\"other\"\n\"2762372\";\"Fillakh\";\"other\"\n\"2762372\";\"Villaco\";\"other\"\n\"2762372\";\"firahha\";\"other\"\n\"2762372\";\"pylk\";\"other\"\n\"2762372\";\"Филлах\";\"other\"\n\"2762372\";\"פילך\";\"other\"\n\"2762372\";\"フィラッハ\";\"other\"\n\"2762453\";\"Velden am Wörthersee\";\"main\"\n\"2762453\";\"Velden am Worthersee\";\"ascii\"\n\"2762453\";\"Vel'den\";\"other\"\n\"2762453\";\"Velden\";\"other\"\n\"2762453\";\"Velden am Woerthersee\";\"other\"\n\"2762453\";\"Вельден\";\"other\"\n\"2763176\";\"Ulrichsberg\";\"main\"\n\"2763176\";\"Ul'rikhsberg\";\"other\"\n\"2763176\";\"Ульрихсберг\";\"other\"\n\"2763266\";\"Tulln\";\"main\"\n\"2763332\";\"Trofaiach\";\"main\"\n\"2763423\";\"Traun\";\"main\"\n\"2763459\";\"Traismauer\";\"main\"\n\"2763460\";\"Traiskirchen\";\"main\"\n\"2763595\";\"Timelkam\";\"main\"\n\"2763749\";\"Thalgau\";\"main\"\n\"2763795\";\"Ternitz\";\"main\"\n\"2763810\";\"Telfs\";\"main\"\n\"2763837\";\"Taxenbach\";\"main\"\n\"2763837\";\"Daxenbach\";\"other\"\n\"2763837\";\"Taksenbakh\";\"other\"\n\"2763837\";\"Таксенбах\";\"other\"\n\"2763929\";\"Tamsweg\";\"main\"\n\"2763929\";\"Tambsweg\";\"other\"\n\"2763929\";\"Tamsveg\";\"other\"\n\"2763929\";\"Тамсвег\";\"other\"\n\"2764121\";\"Strobl\";\"main\"\n\"2764121\";\"Shtrobl'\";\"other\"\n\"2764121\";\"Штробль\";\"other\"\n\"2764172\";\"Strasswalchen\";\"main\"\n\"2764172\";\"Strasz Walchen\";\"other\"\n\"2764175\";\"Strasshof an der Nordbahn\";\"main\"\n\"2764175\";\"Shtrasskhof-an-der-Nordban\";\"other\"\n\"2764175\";\"Strasshof\";\"other\"\n\"2764175\";\"Штрассхоф-ан-дер-Нордбан\";\"other\"\n\"2764279\";\"Stockerau\";\"main\"\n\"2764354\";\"Steyregg\";\"main\"\n\"2764354\";\"Shtajreg\";\"other\"\n\"2764354\";\"Штайрег\";\"other\"\n\"2764359\";\"Steyr\";\"main\"\n\"2764359\";\"Shtajr\";\"other\"\n\"2764359\";\"Steyer\";\"other\"\n\"2764359\";\"Steyr Stadt\";\"other\"\n\"2764359\";\"ashtayr\";\"other\"\n\"2764359\";\"styyr\";\"other\"\n\"2764359\";\"Штайр\";\"other\"\n\"2764359\";\"שטייר\";\"other\"\n\"2764359\";\"اشتایر\";\"other\"\n\"2764786\";\"Spittal an der Drau\";\"main\"\n\"2764786\";\"Shpittal'\";\"other\"\n\"2764786\";\"Spital\";\"other\"\n\"2764786\";\"Spittal\";\"other\"\n\"2764786\";\"Шпитталь\";\"other\"\n\"2764957\";\"Sölden\";\"main\"\n\"2764957\";\"Soelden\";\"ascii\"\n\"2764957\";\"Zjol'den\";\"other\"\n\"2764957\";\"Зёльден\";\"other\"\n\"2764958\";\"Hall in Tirol\";\"main\"\n\"2764958\";\"Hall\";\"other\"\n\"2764958\";\"Khall'-in-Tirol'\";\"other\"\n\"2764958\";\"Solbad Hall\";\"other\"\n\"2764958\";\"Solbad Hall in Tirol\";\"other\"\n\"2764958\";\"Халль-ин-Тироль\";\"other\"\n\"2765080\";\"Sierning\";\"main\"\n\"2765091\";\"Sieghartskirchen\";\"main\"\n\"2765150\";\"Serfaus\";\"main\"\n\"2765150\";\"Zerfaus\";\"other\"\n\"2765150\";\"Зерфаус\";\"other\"\n\"2765231\";\"Seewalchen\";\"main\"\n\"2765257\";\"Seekirchen Markt\";\"main\"\n\"2765257\";\"Seekirchen\";\"other\"\n\"2765278\";\"Seefeld in Tirol\";\"main\"\n\"2765278\";\"Seefeld\";\"other\"\n\"2765278\";\"Zeefel'd (Tirol')\";\"other\"\n\"2765278\";\"Зеефельд (Тироль)\";\"other\"\n\"2765286\";\"Seeboden\";\"main\"\n\"2765388\";\"Schwechat\";\"main\"\n\"2765388\";\"Nova Schwechat\";\"other\"\n\"2765388\";\"Shvekhat\";\"other\"\n\"2765388\";\"Швехат\";\"other\"\n\"2765390\";\"Schwaz\";\"main\"\n\"2765581\";\"Schruns\";\"main\"\n\"2765581\";\"Shruns\";\"other\"\n\"2765581\";\"shi lun si\";\"other\"\n\"2765581\";\"Шрунс\";\"other\"\n\"2765581\";\"施伦斯\";\"other\"\n\"2765602\";\"Schrems\";\"main\"\n\"2765715\";\"Schönberg im Stubaital\";\"main\"\n\"2765715\";\"Schoenberg im Stubaital\";\"ascii\"\n\"2765715\";\"Schonberg\";\"other\"\n\"2765715\";\"Schonberg im Stubaital\";\"other\"\n\"2765715\";\"Schönberg\";\"other\"\n\"2765715\";\"Shjonberg\";\"other\"\n\"2765715\";\"Шёнберг\";\"other\"\n\"2765961\";\"Schladming\";\"main\"\n\"2765961\";\"Shladming\";\"other\"\n\"2765961\";\"Шладминг\";\"other\"\n\"2766047\";\"Scheifling\";\"main\"\n\"2766047\";\"Shajfling\";\"other\"\n\"2766047\";\"Шайфлинг\";\"other\"\n\"2766080\";\"Scheibbs\";\"main\"\n\"2766136\";\"Scharnstein\";\"main\"\n\"2766136\";\"Sharnshtajn\";\"other\"\n\"2766136\";\"Шарнштайн\";\"other\"\n\"2766155\";\"Schärding\";\"main\"\n\"2766155\";\"Scharding\";\"ascii\"\n\"2766340\";\"Sankt Wolfgang im Salzkammergut\";\"main\"\n\"2766340\";\"Sankt Wolfgang\";\"other\"\n\"2766340\";\"Sankt-Vol'fgang-im-Zal'ckammergut\";\"other\"\n\"2766340\";\"Санкт-Вольфганг-им-Зальцкаммергут\";\"other\"\n\"2766359\";\"Sankt Veit an der Glan\";\"main\"\n\"2766359\";\"Sankt Veit\";\"other\"\n\"2766359\";\"Sankt-Vajt-an-der-Glan\";\"other\"\n\"2766359\";\"Санкт-Вайт-ан-дер-Глан\";\"other\"\n\"2766365\";\"Sankt Valentin\";\"main\"\n\"2766429\";\"Sankt Pölten\";\"main\"\n\"2766429\";\"Sankt Polten\";\"ascii\"\n\"2766429\";\"Poelten\";\"other\"\n\"2766429\";\"Pölten\";\"other\"\n\"2766429\";\"Sankt Poelten\";\"other\"\n\"2766429\";\"Sankt Polton\";\"other\"\n\"2766429\";\"Sankt Pölton\";\"other\"\n\"2766429\";\"Sankt-Pjol'ten\";\"other\"\n\"2766429\";\"St. Poeitn\";\"other\"\n\"2766429\";\"St. Poelten\";\"other\"\n\"2766429\";\"St. Pöitn\";\"other\"\n\"2766429\";\"St. Pölten\";\"other\"\n\"2766429\";\"sheng pa er teng\";\"other\"\n\"2766429\";\"snqt pltn\";\"other\"\n\"2766429\";\"Санкт-Пёльтен\";\"other\"\n\"2766429\";\"סנקט פלטן\";\"other\"\n\"2766429\";\"ザンクト・ペルテン\";\"other\"\n\"2766429\";\"聖帕爾滕\";\"other\"\n\"2766643\";\"Sankt Johann im Pongau\";\"main\"\n\"2766643\";\"Sankt Johann\";\"other\"\n\"2766643\";\"Sankt-Jokhann (Pongau)\";\"other\"\n\"2766643\";\"St. John's im Pougau\";\"other\"\n\"2766643\";\"St. John’s im Pougau\";\"other\"\n\"2766643\";\"Санкт-Йоханн (Понгау)\";\"other\"\n\"2766675\";\"Sankt Jakob\";\"main\"\n\"2766675\";\"Sankt Jakob im Rosental\";\"other\"\n\"2766675\";\"Sankt Jakob im Rosenthal\";\"other\"\n\"2766675\";\"Sveti Jakob\";\"other\"\n\"2766683\";\"Sankt Gilgen\";\"main\"\n\"2766683\";\"Sankt-Gilgen\";\"other\"\n\"2766683\";\"St. AEgidius\";\"other\"\n\"2766683\";\"St. Ægidius\";\"other\"\n\"2766683\";\"Санкт-Гилген\";\"other\"\n\"2766692\";\"Sankt Georgen im Attergau\";\"main\"\n\"2766692\";\"Sankt Georgen\";\"other\"\n\"2766692\";\"Sankt-Georgen-im-Attergau\";\"other\"\n\"2766692\";\"Санкт-Георген-им-Аттергау\";\"other\"\n\"2766728\";\"Sankt Florian\";\"main\"\n\"2766757\";\"Sankt Anton am Arlberg\";\"main\"\n\"2766757\";\"Saint Anton\";\"other\"\n\"2766757\";\"Sankt Anton\";\"other\"\n\"2766757\";\"Sankt-Anton-am-Arl'berg\";\"other\"\n\"2766757\";\"St Anton\";\"other\"\n\"2766757\";\"Санкт-Антон-ам-Арльберг\";\"other\"\n\"2766772\";\"Sankt Andrä\";\"main\"\n\"2766772\";\"Sankt Andra\";\"ascii\"\n\"2766772\";\"Sankt Andra Lavanttal\";\"other\"\n\"2766772\";\"Sankt Andrae Im Lavanttal\";\"other\"\n\"2766772\";\"Sankt Andrä Lavanttal\";\"other\"\n\"2766772\";\"Sankt-Andre\";\"other\"\n\"2766772\";\"Санкт-Андре\";\"other\"\n\"2766824\";\"Salzburg\";\"main\"\n\"2766824\";\"Lungsod ng Salzburg\";\"other\"\n\"2766824\";\"Saizburg\";\"other\"\n\"2766824\";\"Salcburk\";\"other\"\n\"2766824\";\"Salisburgium\";\"other\"\n\"2766824\";\"Salisburgo\";\"other\"\n\"2766824\";\"Salisburgu\";\"other\"\n\"2766824\";\"Salisburgum\";\"other\"\n\"2766824\";\"Saltsmpournk\";\"other\"\n\"2766824\";\"Salzborg\";\"other\"\n\"2766824\";\"Salzbourg\";\"other\"\n\"2766824\";\"Salzburgi liidumaa\";\"other\"\n\"2766824\";\"Salzburgo\";\"other\"\n\"2766824\";\"Salzbursko\";\"other\"\n\"2766824\";\"Såizburg\";\"other\"\n\"2766824\";\"Zal'cburg\";\"other\"\n\"2766824\";\"Zalcburg\";\"other\"\n\"2766824\";\"Zalcburga\";\"other\"\n\"2766824\";\"Zalcburgas\";\"other\"\n\"2766824\";\"jalcheubuleukeu\";\"other\"\n\"2766824\";\"sa er ci bao\";\"other\"\n\"2766824\";\"sa er si bao\";\"other\"\n\"2766824\";\"salzbwrg\";\"other\"\n\"2766824\";\"zarutsuburuku\";\"other\"\n\"2766824\";\"zlzbwrg\";\"other\"\n\"2766824\";\"Σάλτσμπουργκ\";\"other\"\n\"2766824\";\"Залцбург\";\"other\"\n\"2766824\";\"Зальцбург\";\"other\"\n\"2766824\";\"זלצבורג\";\"other\"\n\"2766824\";\"سالزبورگ\";\"other\"\n\"2766824\";\"ザルツブルク\";\"other\"\n\"2766824\";\"萨尔斯堡\";\"other\"\n\"2766824\";\"萨尔茨堡\";\"other\"\n\"2766824\";\"薩爾斯堡\";\"other\"\n\"2766824\";\"잘츠부르크\";\"other\"\n\"2766922\";\"Saalfelden am Steinernen Meer\";\"main\"\n\"2766922\";\"Saalfelden\";\"other\"\n\"2766922\";\"Salfelden\";\"other\"\n\"2766922\";\"Zal'fel'den-am-Shtajnernen-Meer\";\"other\"\n\"2766922\";\"Зальфельден-ам-Штайнернен-Меер\";\"other\"\n\"2766924\";\"Saalbach\";\"main\"\n\"2766939\";\"Rust\";\"main\"\n\"2766939\";\"Ruszt\";\"other\"\n\"2766939\";\"Stadt Rust\";\"other\"\n\"2766939\";\"Руст\";\"other\"\n\"2766971\";\"Rum\";\"main\"\n\"2767034\";\"Rottenmann\";\"main\"\n\"2767471\";\"Ried im Innkreis\";\"main\"\n\"2767471\";\"Reid\";\"other\"\n\"2767471\";\"Rid (Inkrajs)\";\"other\"\n\"2767471\";\"Ried\";\"other\"\n\"2767471\";\"Рид (Инкрайс)\";\"other\"\n\"2767511\";\"Reutte\";\"main\"\n\"2767511\";\"Reutte in Tirol\";\"other\"\n\"2767511\";\"Rojtte\";\"other\"\n\"2767511\";\"Ройтте\";\"other\"\n\"2767521\";\"Retz\";\"main\"\n\"2767521\";\"Retc\";\"other\"\n\"2767521\";\"Rotz\";\"other\"\n\"2767521\";\"Rötz\";\"other\"\n\"2767521\";\"Ретц\";\"other\"\n\"2767777\";\"Reichenau an der Rax\";\"main\"\n\"2767974\";\"Rankweil\";\"main\"\n\"2768098\";\"Radstadt\";\"main\"\n\"2768098\";\"Radstatt\";\"other\"\n\"2768098\";\"Rashtadt\";\"other\"\n\"2768098\";\"Раштадт\";\"other\"\n\"2768232\";\"Purkersdorf\";\"main\"\n\"2768236\";\"Purgstall\";\"main\"\n\"2768348\";\"Pressbaum\";\"main\"\n\"2768450\";\"Poysdorf\";\"main\"\n\"2768472\";\"Pottendorf\";\"main\"\n\"2768811\";\"Pinkafeld\";\"main\"\n\"2768811\";\"Pinkafel'd\";\"other\"\n\"2768811\";\"Pinkafo\";\"other\"\n\"2768811\";\"Пинкафельд\";\"other\"\n\"2768934\";\"Pfarrkirchen im Mühlkreis\";\"main\"\n\"2768934\";\"Pfarrkirchen im Muehlkreis\";\"ascii\"\n\"2768934\";\"Pfarrkirchen\";\"other\"\n\"2769077\";\"Pernegg an der Mur\";\"main\"\n\"2769077\";\"Bereneck\";\"other\"\n\"2769077\";\"Perneg-an-der-Mur\";\"other\"\n\"2769077\";\"Pernegg\";\"other\"\n\"2769077\";\"Пернег-ан-дер-Мур\";\"other\"\n\"2769105\";\"Perg\";\"main\"\n\"2769110\";\"Perchtoldsdorf\";\"main\"\n\"2769212\";\"Paternion\";\"main\"\n\"2769225\";\"Pasching\";\"main\"\n\"2769242\";\"Parndorf\";\"main\"\n\"2769242\";\"Pandrof\";\"other\"\n\"2769242\";\"Парндорф\";\"other\"\n\"2769324\";\"Oetz\";\"main\"\n\"2769324\";\"Ehc\";\"other\"\n\"2769324\";\"Ehtc\";\"other\"\n\"2769324\";\"Otz\";\"other\"\n\"2769324\";\"Ötz\";\"other\"\n\"2769324\";\"Этц\";\"other\"\n\"2769324\";\"Эц\";\"other\"\n\"2769623\";\"Oberwart\";\"main\"\n\"2769623\";\"Felsoor\";\"other\"\n\"2769623\";\"Obervart\";\"other\"\n\"2769623\";\"Оберварт\";\"other\"\n\"2770391\";\"Nüziders\";\"main\"\n\"2770391\";\"Nuziders\";\"ascii\"\n\"2770651\";\"Neustift im Stubaital\";\"main\"\n\"2770651\";\"Neustift\";\"other\"\n\"2770651\";\"Nojshtift\";\"other\"\n\"2770651\";\"Нойштифт\";\"other\"\n\"2770684\";\"Neusiedl am See\";\"main\"\n\"2770684\";\"Neusiedl\";\"other\"\n\"2770684\";\"Nezsider\";\"other\"\n\"2770684\";\"Nojzidl'-am-Zee\";\"other\"\n\"2770684\";\"Нойзидль-ам-Зее\";\"other\"\n\"2770711\";\"Neunkirchen\";\"main\"\n\"2770803\";\"Neudörfl\";\"main\"\n\"2770803\";\"Neudorfl\";\"ascii\"\n\"2770885\";\"Nenzing\";\"main\"\n\"2770910\";\"Nauders\";\"main\"\n\"2770910\";\"Наудерс\";\"other\"\n\"2770993\";\"Mürzzuschlag\";\"main\"\n\"2770993\";\"Murzzuschlag\";\"ascii\"\n\"2770993\";\"Mjurccushlag\";\"other\"\n\"2770993\";\"Murssuschalg\";\"other\"\n\"2770993\";\"Мюрццушлаг\";\"other\"\n\"2771244\";\"Moosburg\";\"main\"\n\"2771244\";\"Moosburg in Karnten\";\"other\"\n\"2771244\";\"Moosburg in Kärnten\";\"other\"\n\"2771244\";\"Mosburg\";\"other\"\n\"2771244\";\"Мосбург\";\"other\"\n\"2771277\";\"Mondsee\";\"main\"\n\"2771277\";\"Mondzee\";\"other\"\n\"2771277\";\"Мондзее\";\"other\"\n\"2771335\";\"Mödling\";\"main\"\n\"2771335\";\"Modling\";\"ascii\"\n\"2771335\";\"Mjodling\";\"other\"\n\"2771335\";\"Moedling\";\"other\"\n\"2771335\";\"mdlyng\";\"other\"\n\"2771335\";\"Мёдлинг\";\"other\"\n\"2771335\";\"מדלינג\";\"other\"\n\"2771385\";\"Mittersill\";\"main\"\n\"2771385\";\"Mittersil\";\"other\"\n\"2771385\";\"Mitterzil'\";\"other\"\n\"2771385\";\"Миттерзиль\";\"other\"\n\"2771533\";\"Mittelberg\";\"main\"\n\"2771557\";\"Mistelbach\";\"main\"\n\"2771557\";\"Mistel'-Bakh\";\"other\"\n\"2771557\";\"Mistelbach an der Zaya\";\"other\"\n\"2771557\";\"Мистель-Бах\";\"other\"\n\"2771619\";\"Micheldorf in Oberösterreich\";\"main\"\n\"2771619\";\"Micheldorf in Oberoesterreich\";\"ascii\"\n\"2771619\";\"Micheldorf\";\"other\"\n\"2771619\";\"Mikhel'dorf (Verkhnjaja Avstrija)\";\"other\"\n\"2771619\";\"Михельдорф (Верхняя Австрия)\";\"other\"\n\"2771682\";\"Melk\";\"main\"\n\"2771682\";\"Mel'k\";\"other\"\n\"2771682\";\"Мельк\";\"other\"\n\"2771725\";\"Mayrhofen\";\"main\"\n\"2771725\";\"Mairhofen\";\"other\"\n\"2771725\";\"Majerkhofen\";\"other\"\n\"2771725\";\"Majrkhofen\";\"other\"\n\"2771725\";\"Zillertal\";\"other\"\n\"2771725\";\"Майерхофен\";\"other\"\n\"2771725\";\"Майрхофен\";\"other\"\n\"2771817\";\"Mattersburg\";\"main\"\n\"2771817\";\"Mattersdorf\";\"other\"\n\"2771817\";\"Nagymarton\";\"other\"\n\"2771817\";\"Маттерсбург\";\"other\"\n\"2771828\";\"Matrei in Osttirol\";\"main\"\n\"2771828\";\"Matraj (Osttirol')\";\"other\"\n\"2771828\";\"Matrei\";\"other\"\n\"2771828\";\"Матрай (Осттироль)\";\"other\"\n\"2771893\";\"Mariazell\";\"main\"\n\"2771940\";\"Maria Enzersdorf\";\"main\"\n\"2771962\";\"Marchtrenk\";\"main\"\n\"2772173\";\"Lustenau\";\"main\"\n\"2772173\";\"Лустенау\";\"other\"\n\"2772173\";\"לוסטנאו\";\"other\"\n\"2772264\";\"Loosdorf\";\"main\"\n\"2772264\";\"Losdorf\";\"other\"\n\"2772264\";\"Лосдорф\";\"other\"\n\"2772345\";\"Lochau\";\"main\"\n\"2772400\";\"Linz\";\"main\"\n\"2772400\";\"Lentia\";\"other\"\n\"2772400\";\"Linc\";\"other\"\n\"2772400\";\"Linca\";\"other\"\n\"2772400\";\"Lincas\";\"other\"\n\"2772400\";\"Linec\";\"other\"\n\"2772400\";\"lin ci\";\"other\"\n\"2772400\";\"lyntz\";\"other\"\n\"2772400\";\"lynz\";\"other\"\n\"2772400\";\"rintsu\";\"other\"\n\"2772400\";\"Линц\";\"other\"\n\"2772400\";\"לינץ\";\"other\"\n\"2772400\";\"لینتز\";\"other\"\n\"2772400\";\"リンツ\";\"other\"\n\"2772400\";\"林茨\";\"other\"\n\"2772480\";\"Liezen\";\"main\"\n\"2772505\";\"Lienz\";\"main\"\n\"2772505\";\"Linc\";\"other\"\n\"2772505\";\"lyynz\";\"other\"\n\"2772505\";\"rientsu\";\"other\"\n\"2772505\";\"Линц\";\"other\"\n\"2772505\";\"ליינץ\";\"other\"\n\"2772505\";\"リエンツ\";\"other\"\n\"2772592\";\"Lermoos\";\"main\"\n\"2772592\";\"Leermoos\";\"other\"\n\"2772592\";\"Lermos\";\"other\"\n\"2772592\";\"Лермос\";\"other\"\n\"2772635\";\"Leonding\";\"main\"\n\"2772635\";\"Леондинг\";\"other\"\n\"2772635\";\"לאונדינג\";\"other\"\n\"2772649\";\"Leoben\";\"main\"\n\"2772649\";\"Леобен\";\"other\"\n\"2772649\";\"לאובן\";\"other\"\n\"2772653\";\"Lenzing\";\"main\"\n\"2772753\";\"Leibnitz\";\"main\"\n\"2772798\";\"Lech\";\"main\"\n\"2772798\";\"Lekh\";\"other\"\n\"2772798\";\"Лех\";\"other\"\n\"2772827\";\"Lauterach\";\"main\"\n\"2772998\";\"Langenzersdorf\";\"main\"\n\"2773010\";\"Langenlois\";\"main\"\n\"2773070\";\"Landeck\";\"main\"\n\"2773215\";\"Laakirchen\";\"main\"\n\"2773229\";\"Laa an der Thaya\";\"main\"\n\"2773229\";\"Laa\";\"other\"\n\"2773229\";\"Laa-an-der-Tajja\";\"other\"\n\"2773229\";\"Лаа-ан-дер-Тайя\";\"other\"\n\"2773300\";\"Kufstein\";\"main\"\n\"2773300\";\"Kuffstein\";\"other\"\n\"2773300\";\"Kufshtajn\";\"other\"\n\"2773300\";\"Kufsstein\";\"other\"\n\"2773300\";\"Куфштайн\";\"other\"\n\"2773304\";\"Kuchl\";\"main\"\n\"2773447\";\"Krieglach\";\"main\"\n\"2773538\";\"Kremsmünster\";\"main\"\n\"2773538\";\"Kremsmunster\";\"ascii\"\n\"2773549\";\"Krems an der Donau\";\"main\"\n\"2773549\";\"Krems\";\"other\"\n\"2773549\";\"Krems-na-Dunae\";\"other\"\n\"2773549\";\"qrms\";\"other\"\n\"2773549\";\"Кремс-на-Дунае\";\"other\"\n\"2773549\";\"קרמס\";\"other\"\n\"2773653\";\"Kottingbrunn\";\"main\"\n\"2773698\";\"Korneuburg\";\"main\"\n\"2773848\";\"Köflach\";\"main\"\n\"2773848\";\"Koflach\";\"ascii\"\n\"2773887\";\"Knittelfeld\";\"main\"\n\"2773913\";\"Klosterneuburg\";\"main\"\n\"2773913\";\"Klosterneuberg\";\"other\"\n\"2773913\";\"Klosternojburg\";\"other\"\n\"2773913\";\"Клостернойбург\";\"other\"\n\"2774097\";\"Kleinkirchheim\";\"main\"\n\"2774097\";\"Bad Klajnkirkhgajm\";\"other\"\n\"2774097\";\"Bad Kleinkirchheim\";\"other\"\n\"2774097\";\"Бад Клайнкирхгайм\";\"other\"\n\"2774326\";\"Klagenfurt am Wörthersee\";\"main\"\n\"2774326\";\"Klagenfurt am Woerthersee\";\"ascii\"\n\"2774326\";\"Celovec\";\"other\"\n\"2774326\";\"Clagenfurtum\";\"other\"\n\"2774326\";\"Klagenfurt\";\"other\"\n\"2774326\";\"Klagenfurte\";\"other\"\n\"2774326\";\"Klāgenfurte\";\"other\"\n\"2774326\";\"ke la gen fu\";\"other\"\n\"2774326\";\"kuragenfuruto\";\"other\"\n\"2774326\";\"qlgnpwrt\";\"other\"\n\"2774326\";\"Клагенфурт\";\"other\"\n\"2774326\";\"קלגנפורט\";\"other\"\n\"2774326\";\"クラーゲンフルト\";\"other\"\n\"2774326\";\"克拉根福\";\"other\"\n\"2774347\";\"Kitzbühel\";\"main\"\n\"2774347\";\"Kitzbuhel\";\"ascii\"\n\"2774347\";\"Kitcbjuehl'\";\"other\"\n\"2774347\";\"Kitzbichl\";\"other\"\n\"2774347\";\"Kitzbuehel\";\"other\"\n\"2774347\";\"kittsubyueru\";\"other\"\n\"2774347\";\"qyzbyhl\";\"other\"\n\"2774347\";\"Китцбюэль\";\"other\"\n\"2774347\";\"קיצביהל\";\"other\"\n\"2774347\";\"キッツビューエル\";\"other\"\n\"2774396\";\"Kirchbichl\";\"main\"\n\"2774437\";\"Kindberg\";\"main\"\n\"2774758\";\"Kaprun\";\"main\"\n\"2774773\";\"Kapfenberg\";\"main\"\n\"2775020\";\"Judenburg\";\"main\"\n\"2775089\";\"Jennersdorf\";\"main\"\n\"2775089\";\"Enersdorf\";\"other\"\n\"2775089\";\"Gyanafalva\";\"other\"\n\"2775089\";\"Енерсдорф\";\"other\"\n\"2775093\";\"Jenbach\";\"main\"\n\"2775183\";\"Ischgl\";\"main\"\n\"2775220\";\"Innsbruck\";\"main\"\n\"2775220\";\"Insbruk\";\"other\"\n\"2775220\";\"Insbruka\";\"other\"\n\"2775220\";\"Pons Aeni\";\"other\"\n\"2775220\";\"insuburukku\";\"other\"\n\"2775220\";\"yin si bu lu ke\";\"other\"\n\"2775220\";\"İnnsbruck\";\"other\"\n\"2775220\";\"Инсбрук\";\"other\"\n\"2775220\";\"אינסברוק\";\"other\"\n\"2775220\";\"インスブルック\";\"other\"\n\"2775220\";\"因斯布鲁克\";\"other\"\n\"2775307\";\"Imst\";\"main\"\n\"2775307\";\"Имст\";\"other\"\n\"2775497\";\"Hörsching\";\"main\"\n\"2775497\";\"Horsching\";\"ascii\"\n\"2775497\";\"Hoersching\";\"other\"\n\"2775497\";\"Khjorshing\";\"other\"\n\"2775497\";\"Хёршинг\";\"other\"\n\"2775516\";\"Horn\";\"main\"\n\"2775531\";\"Hörbranz\";\"main\"\n\"2775531\";\"Horbranz\";\"ascii\"\n\"2775531\";\"Khjornbranc\";\"other\"\n\"2775531\";\"Kirchdorf\";\"other\"\n\"2775531\";\"Хёрнбранц\";\"other\"\n\"2775541\";\"Hopfgarten im Brixental\";\"main\"\n\"2775541\";\"Hopfgarten\";\"other\"\n\"2775541\";\"Hopfgarten Markt\";\"other\"\n\"2775541\";\"Hopfgarten in Nordtirol\";\"other\"\n\"2775541\";\"Khopfgarten-im-Briksental'\";\"other\"\n\"2775541\";\"Хопфгартен-им-Бриксенталь\";\"other\"\n\"2775636\";\"Hollabrunn\";\"main\"\n\"2775636\";\"Khollabrun\";\"other\"\n\"2775636\";\"Oberhollabrunn\";\"other\"\n\"2775636\";\"Холлабрун\";\"other\"\n\"2775742\";\"Hohenems\";\"main\"\n\"2775950\";\"Höchst\";\"main\"\n\"2775950\";\"Hochst\";\"ascii\"\n\"2776358\";\"Hinterbrühl\";\"main\"\n\"2776358\";\"Hinterbruehl\";\"ascii\"\n\"2776358\";\"Khinterbrjul'\";\"other\"\n\"2776358\";\"Хинтербрюль\";\"other\"\n\"2776401\";\"Himberg\";\"main\"\n\"2776470\";\"Herzogenburg\";\"main\"\n\"2776497\";\"Hermagor\";\"main\"\n\"2776586\";\"Heiligenkreuz\";\"main\"\n\"2776586\";\"Khajligenkrojc\";\"other\"\n\"2776586\";\"Хайлигенкройц\";\"other\"\n\"2776603\";\"Heidenreichstein\";\"main\"\n\"2776801\";\"Hartberg\";\"main\"\n\"2776801\";\"Khartberg\";\"other\"\n\"2776801\";\"Хартберг\";\"other\"\n\"2776866\";\"Bad Häring\";\"main\"\n\"2776866\";\"Bad Haering\";\"ascii\"\n\"2776874\";\"Hard\";\"main\"\n\"2776951\";\"Hallein\";\"main\"\n\"2776951\";\"Khallajn\";\"other\"\n\"2776951\";\"Халлайн\";\"other\"\n\"2776951\";\"האליין\";\"other\"\n\"2776988\";\"Hainburg an der Donau\";\"main\"\n\"2776988\";\"Hainburg\";\"other\"\n\"2777162\";\"Haag\";\"main\"\n\"2777196\";\"Gutenstein\";\"main\"\n\"2777459\";\"Grünau im Almtal\";\"main\"\n\"2777459\";\"Gruenau im Almtal\";\"ascii\"\n\"2777459\";\"Gmunden\";\"other\"\n\"2777459\";\"Grunau\";\"other\"\n\"2777459\";\"Grünau\";\"other\"\n\"2777627\";\"Grosspetersdorf\";\"main\"\n\"2777627\";\"Nagyszentmihaly\";\"other\"\n\"2777627\";\"Nagyszentmihály\";\"other\"\n\"2777701\";\"Groß-Gerungs\";\"main\"\n\"2777701\";\"Gross-Gerungs\";\"ascii\"\n\"2777836\";\"Groß-Enzersdorf\";\"main\"\n\"2777836\";\"Gross-Enzersdorf\";\"ascii\"\n\"2777836\";\"Genzersdorf\";\"other\"\n\"2777836\";\"Grosehncersdorf\";\"other\"\n\"2777836\";\"Гросэнцерсдорф\";\"other\"\n\"2777921\";\"Grödig\";\"main\"\n\"2777921\";\"Grodig\";\"ascii\"\n\"2777972\";\"Grieskirchen\";\"main\"\n\"2777972\";\"Griskirkhen\";\"other\"\n\"2777972\";\"Грискирхен\";\"other\"\n\"2778067\";\"Graz\";\"main\"\n\"2778067\";\"Grac\";\"other\"\n\"2778067\";\"Graca\";\"other\"\n\"2778067\";\"Gradec\";\"other\"\n\"2778067\";\"Graecia\";\"other\"\n\"2778067\";\"Gratz\";\"other\"\n\"2778067\";\"Gráz\";\"other\"\n\"2778067\";\"Grāca\";\"other\"\n\"2778067\";\"Styrsky Hradec\";\"other\"\n\"2778067\";\"ge la ci\";\"other\"\n\"2778067\";\"ghrats\";\"other\"\n\"2778067\";\"grats\";\"other\"\n\"2778067\";\"gratsi\";\"other\"\n\"2778067\";\"guratsu\";\"other\"\n\"2778067\";\"Štýrský Hradec\";\"other\"\n\"2778067\";\"Грац\";\"other\"\n\"2778067\";\"גראץ\";\"other\"\n\"2778067\";\"غراتس\";\"other\"\n\"2778067\";\"گراتس\";\"other\"\n\"2778067\";\"გრაცი\";\"other\"\n\"2778067\";\"グラーツ\";\"other\"\n\"2778067\";\"格拉茨\";\"other\"\n\"2778085\";\"Gratkorn\";\"main\"\n\"2778218\";\"Götzis\";\"main\"\n\"2778218\";\"Gotzis\";\"ascii\"\n\"2778436\";\"Gmunden\";\"main\"\n\"2778436\";\"Gmunden an der Traun\";\"other\"\n\"2778436\";\"Гмунден\";\"other\"\n\"2778439\";\"Gmünd\";\"main\"\n\"2778439\";\"Gmund\";\"ascii\"\n\"2778439\";\"Cmunt\";\"other\"\n\"2778439\";\"Gmjund\";\"other\"\n\"2778439\";\"Гмюнд\";\"other\"\n\"2778441\";\"Gmünd\";\"main\"\n\"2778441\";\"Gmuend\";\"ascii\"\n\"2778441\";\"Gmjund\";\"other\"\n\"2778441\";\"Гмюнд\";\"other\"\n\"2778455\";\"Gloggnitz\";\"main\"\n\"2778478\";\"Gleisdorf\";\"main\"\n\"2778690\";\"Gerasdorf bei Wien\";\"main\"\n\"2778843\";\"Garsten\";\"main\"\n\"2778877\";\"Gänserndorf\";\"main\"\n\"2778877\";\"Ganserndorf\";\"ascii\"\n\"2778877\";\"Genzerndorf\";\"other\"\n\"2778877\";\"Unterganserndorf\";\"other\"\n\"2778877\";\"Untergänserndorf\";\"other\"\n\"2778877\";\"Гензерндорф\";\"other\"\n\"2778966\";\"Gallneukirchen\";\"main\"\n\"2779115\";\"Fürstenfeld\";\"main\"\n\"2779115\";\"Furstenfeld\";\"ascii\"\n\"2779154\";\"Fügen\";\"main\"\n\"2779154\";\"Fugen\";\"ascii\"\n\"2779154\";\"Fjugen\";\"other\"\n\"2779154\";\"Фюген\";\"other\"\n\"2779202\";\"Frohnleiten\";\"main\"\n\"2779229\";\"Friesach\";\"main\"\n\"2779275\";\"Freistadt\";\"main\"\n\"2779275\";\"Frajshtadt\";\"other\"\n\"2779275\";\"Фрайштадт\";\"other\"\n\"2779378\";\"Frankenmarkt\";\"main\"\n\"2779378\";\"Франкенмаркт\";\"other\"\n\"2779380\";\"Frankenburg\";\"main\"\n\"2779450\";\"Fohnsdorf\";\"main\"\n\"2779549\";\"Fischamend Dorf\";\"main\"\n\"2779595\";\"Fieberbrunn\";\"main\"\n\"2779595\";\"Fiberbrunn\";\"other\"\n\"2779595\";\"Фибербрунн\";\"other\"\n\"2779640\";\"Ferlach\";\"main\"\n\"2779669\";\"Feldkirchen in Kärnten\";\"main\"\n\"2779669\";\"Feldkirchen in Karnten\";\"ascii\"\n\"2779669\";\"Fel'dkirkhen (Karintija)\";\"other\"\n\"2779669\";\"Feldkirchen\";\"other\"\n\"2779669\";\"Фельдкирхен (Каринтия)\";\"other\"\n\"2779672\";\"Feldkirchen an der Donau\";\"main\"\n\"2779672\";\"Fel'dkirkhen-an-der-Donau\";\"other\"\n\"2779672\";\"Feldkirchen\";\"other\"\n\"2779672\";\"Фельдкирхен-ан-дер-Донау\";\"other\"\n\"2779674\";\"Feldkirch\";\"main\"\n\"2779674\";\"Fel'dkirkh\";\"other\"\n\"2779674\";\"pldqyrk\";\"other\"\n\"2779674\";\"Фельдкирх\";\"other\"\n\"2779674\";\"פלדקירך\";\"other\"\n\"2779685\";\"Feldbach\";\"main\"\n\"2779685\";\"Fel'dbakh\";\"other\"\n\"2779685\";\"Фельдбах\";\"other\"\n\"2780048\";\"Enns\";\"main\"\n\"2780057\";\"Engerwitzdorf\";\"main\"\n\"2780190\";\"Eisenstadt\";\"main\"\n\"2780190\";\"Ajzenshtadt\";\"other\"\n\"2780190\";\"Kismarton\";\"other\"\n\"2780190\";\"Stadt Eisenstadt\";\"other\"\n\"2780190\";\"aizenshutatto\";\"other\"\n\"2780190\";\"Айзенштадт\";\"other\"\n\"2780190\";\"אייזנשטט\";\"other\"\n\"2780190\";\"アイゼンシュタット\";\"other\"\n\"2780207\";\"Eisenerz\";\"main\"\n\"2780501\";\"Ebreichsdorf\";\"main\"\n\"2780531\";\"Eberndorf\";\"main\"\n\"2780544\";\"Ebenthal\";\"main\"\n\"2780547\";\"Ebensee\";\"main\"\n\"2780579\";\"Ebbs\";\"main\"\n\"2780579\";\"Ehbbs\";\"other\"\n\"2780579\";\"Эббс\";\"other\"\n\"2780741\";\"Dornbirn\";\"main\"\n\"2780741\";\"dwrnbyrn\";\"other\"\n\"2780741\";\"Дорнбирн\";\"other\"\n\"2780741\";\"דורנבירן\";\"other\"\n\"2781017\";\"Deutsch-Wagram\";\"main\"\n\"2781023\";\"Deutschlandsberg\";\"main\"\n\"2781023\";\"Deutschlandberg\";\"other\"\n\"2781023\";\"Dojchlandsberg\";\"other\"\n\"2781023\";\"Дойчландсберг\";\"other\"\n\"2781161\";\"Bürs\";\"main\"\n\"2781161\";\"Buers\";\"ascii\"\n\"2781371\";\"Bruck an der Mur\";\"main\"\n\"2781371\";\"Bruck\";\"other\"\n\"2781371\";\"Bruk-an-der-Mur\";\"other\"\n\"2781371\";\"Брук-ан-дер-Мур\";\"other\"\n\"2781373\";\"Bruck an der Leitha\";\"main\"\n\"2781373\";\"Bruck\";\"other\"\n\"2781373\";\"Bruk-an-der-Lajta\";\"other\"\n\"2781373\";\"Брук-ан-дер-Лайта\";\"other\"\n\"2781374\";\"Bruck an der Großglocknerstraße\";\"main\"\n\"2781374\";\"Bruck an der Grossglocknerstrasse\";\"ascii\"\n\"2781374\";\"Bruck\";\"other\"\n\"2781374\";\"Bruck an der Glocknerstrasse\";\"other\"\n\"2781374\";\"Bruk-an-der-Grosgloknershtrasse\";\"other\"\n\"2781374\";\"Брук-ан-дер-Гросглокнерштрассе\";\"other\"\n\"2781503\";\"Bregenz\";\"main\"\n\"2781503\";\"Bregenc\";\"other\"\n\"2781503\";\"Bregencja\";\"other\"\n\"2781503\";\"Brigantium\";\"other\"\n\"2781503\";\"brgnz\";\"other\"\n\"2781503\";\"buregentsu\";\"other\"\n\"2781503\";\"Брегенц\";\"other\"\n\"2781503\";\"ברגנץ\";\"other\"\n\"2781503\";\"ブレゲンツ\";\"other\"\n\"2781520\";\"Braunau am Inn\";\"main\"\n\"2781520\";\"Braunau\";\"other\"\n\"2781520\";\"Braunau na In\";\"other\"\n\"2781520\";\"Braunau na Innu\";\"other\"\n\"2781520\";\"Braunau na Inu\";\"other\"\n\"2781520\";\"Braunau-na-Inne\";\"other\"\n\"2781520\";\"yin he pan bu lao nao\";\"other\"\n\"2781520\";\"Браунау на Ин\";\"other\"\n\"2781520\";\"Браунау на Ину\";\"other\"\n\"2781520\";\"Браунау-на-Инне\";\"other\"\n\"2781520\";\"בראונאו אם אין\";\"other\"\n\"2781520\";\"בראונאו-אם אין\";\"other\"\n\"2781520\";\"ブラウナウ・アム・イン\";\"other\"\n\"2781520\";\"因河畔布劳瑙\";\"other\"\n\"2781668\";\"Bad Blumau\";\"main\"\n\"2781668\";\"Bad-Blumau\";\"other\"\n\"2781668\";\"Blumau\";\"other\"\n\"2781668\";\"Бад-Блумау\";\"other\"\n\"2781680\";\"Bludenz\";\"main\"\n\"2781680\";\"Bludenc\";\"other\"\n\"2781680\";\"Блуденц\";\"other\"\n\"2781735\";\"Bischofshofen\";\"main\"\n\"2781735\";\"Bischofhofen\";\"other\"\n\"2781735\";\"Bischofshofn\";\"other\"\n\"2781735\";\"Bischofshogen\";\"other\"\n\"2781735\";\"Bishofskhofen\";\"other\"\n\"2781735\";\"Бишофсхофен\";\"other\"\n\"2781837\";\"Berndorf\";\"main\"\n\"2781859\";\"Bergheim\";\"main\"\n\"2781992\";\"Bärnbach\";\"main\"\n\"2781992\";\"Barnbach\";\"ascii\"\n\"2782043\";\"Bad Vöslau\";\"main\"\n\"2782043\";\"Bad Voslau\";\"ascii\"\n\"2782043\";\"Bad-Vjoslau\";\"other\"\n\"2782043\";\"Voslau\";\"other\"\n\"2782043\";\"Vöslau\";\"other\"\n\"2782043\";\"Бад-Вёслау\";\"other\"\n\"2782045\";\"Bad Tatzmannsdorf\";\"main\"\n\"2782045\";\"Bad-Tacmansdorf\";\"other\"\n\"2782045\";\"Tarcsafuerdo\";\"other\"\n\"2782045\";\"Tarcsafürdo\";\"other\"\n\"2782045\";\"Бад-Тацмансдорф\";\"other\"\n\"2782048\";\"Bad Schallerbach\";\"main\"\n\"2782048\";\"Bad-Shallerbakh\";\"other\"\n\"2782048\";\"Schallerbach\";\"other\"\n\"2782048\";\"Бад-Шаллербах\";\"other\"\n\"2782049\";\"Bad Sankt Leonhard im Lavanttal\";\"main\"\n\"2782049\";\"Bad Sankt Leonhard\";\"other\"\n\"2782049\";\"Bad Sankt Leonhard im Lavanttale\";\"other\"\n\"2782049\";\"Bad-Sankt-Leonard-im-Lavanttal'\";\"other\"\n\"2782049\";\"Sankt Leonhard\";\"other\"\n\"2782049\";\"Бад-Санкт-Леонард-им-Лавантталь\";\"other\"\n\"2782052\";\"Bad Ischl\";\"main\"\n\"2782052\";\"Bad Ishl\";\"other\"\n\"2782052\";\"Ischi\";\"other\"\n\"2782052\";\"Ischl\";\"other\"\n\"2782052\";\"Бад Ишл\";\"other\"\n\"2782053\";\"Bad Hofgastein\";\"main\"\n\"2782053\";\"Bad-Khofgashtajn\";\"other\"\n\"2782053\";\"Hofgastein\";\"other\"\n\"2782053\";\"Бад-Хофгаштайн\";\"other\"\n\"2782054\";\"Bad Hall\";\"main\"\n\"2782054\";\"Bad-Khall'\";\"other\"\n\"2782054\";\"Бад-Халль\";\"other\"\n\"2782055\";\"Bad Goisern\";\"main\"\n\"2782055\";\"Bad-Gojzern\";\"other\"\n\"2782055\";\"Goisern\";\"other\"\n\"2782055\";\"Бад-Гойзерн\";\"other\"\n\"2782058\";\"Bad Gastein\";\"main\"\n\"2782058\";\"Bad-Gasshtajn\";\"other\"\n\"2782058\";\"Gastein\";\"other\"\n\"2782058\";\"Бад-Гасштайн\";\"other\"\n\"2782067\";\"Baden\";\"main\"\n\"2782067\";\"Baden bei Wien\";\"other\"\n\"2782067\";\"Баден\";\"other\"\n\"2782067\";\"באדן\";\"other\"\n\"2782067\";\"バーデン・バイ・ヴィーン\";\"other\"\n\"2782070\";\"Bad Aussee\";\"main\"\n\"2782302\";\"Asten\";\"main\"\n\"2782408\";\"Arnoldstein\";\"main\"\n\"2782480\";\"Ansfelden\";\"main\"\n\"2782480\";\"Ansfel'den\";\"other\"\n\"2782480\";\"Ансфельден\";\"other\"\n\"2782480\";\"אנספלדן\";\"other\"\n\"2782504\";\"Anif\";\"main\"\n\"2782555\";\"Amstetten\";\"main\"\n\"2782627\";\"Altmünster\";\"main\"\n\"2782627\";\"Altmunster\";\"ascii\"\n\"2782627\";\"Al'tmjunster\";\"other\"\n\"2782627\";\"Altmuenster\";\"other\"\n\"2782627\";\"Альтмюнстер\";\"other\"\n\"2782728\";\"Altach\";\"main\"\n\"2783050\";\"Abtenau\";\"main\"\n\"2783050\";\"Abbtenau\";\"other\"\n\"2783050\";\"Abtenao\";\"other\"\n\"2783050\";\"Абтенау\";\"other\"\n\"2783058\";\"Absam\";\"main\"\n\"3218464\";\"Finkenstein am Faaker See\";\"main\"\n\"3218464\";\"Finkenshtajn-am-Faker-Zee\";\"other\"\n\"3218464\";\"Финкенштайн-ам-Факер-Зее\";\"other\"\n\"3233832\";\"Attnang-Puchheim\";\"main\"\n\"3233832\";\"Atnang-Pukhkhajm\";\"other\"\n\"3233832\";\"Атнанг-Пуххайм\";\"other\"\n\"3319549\";\"Leutasch\";\"main\"\n\"3323982\";\"Alpbach\";\"main\"\n\"3323982\";\"Al'pbakh\";\"other\"\n\"3323982\";\"Альпбах\";\"other\"\n\"7279898\";\"Bad Leonfelden\";\"main\"\n\"7279909\";\"Linz-Wels-Steyr\";\"main\"\n\"7304078\";\"Thal\";\"main\"\n\"7304078\";\"Tal'-Grac\";\"other\"\n\"7304078\";\"Таль-Грац\";\"other\"\n\"2057277\";\"York\";\"main\"\n\"2057277\";\"Jork\";\"other\"\n\"2057277\";\"Йорк\";\"other\"\n\"2057575\";\"Yanchep\";\"main\"\n\"2057575\";\"Yancher\";\"other\"\n\"2057614\";\"Yallingup\";\"main\"\n\"2057614\";\"Yallingup Caves\";\"other\"\n\"2057751\";\"Wundowie\";\"main\"\n\"2057800\";\"Wooroloo\";\"main\"\n\"2057897\";\"Woodville\";\"main\"\n\"2057904\";\"Woodside\";\"main\"\n\"2058005\";\"Wongan Hills\";\"main\"\n\"2058304\";\"Williamstown\";\"main\"\n\"2058304\";\"Uill'jamstaun\";\"other\"\n\"2058304\";\"Уилльямстаун\";\"other\"\n\"2058325\";\"Willaston\";\"main\"\n\"2058430\";\"Whyalla\";\"main\"\n\"2058682\";\"Wembley\";\"main\"\n\"2058708\";\"Wellard\";\"main\"\n\"2058823\";\"Wayville\";\"main\"\n\"2059047\";\"Waroona\";\"main\"\n\"2059124\";\"Wanneroo\";\"main\"\n\"2059124\";\"Wanneru\";\"other\"\n\"2059263\";\"Wallaroo\";\"main\"\n\"2059362\";\"Waikerie\";\"main\"\n\"2059371\";\"Wagin\";\"main\"\n\"2059372\";\"Waggrakine\";\"main\"\n\"2059436\";\"Virginia\";\"main\"\n\"2059470\";\"Victor Harbour\";\"main\"\n\"2059470\";\"Victor Harbor\";\"other\"\n\"2059507\";\"Vasse\";\"main\"\n\"2059582\";\"Upper Sturt\";\"main\"\n\"2059589\";\"Unley\";\"main\"\n\"2059689\";\"Two Wells\";\"main\"\n\"2059689\";\"Tu Vells\";\"other\"\n\"2059689\";\"Ту Веллс\";\"other\"\n\"2059837\";\"Tumby Bay\";\"main\"\n\"2059837\";\"Tumbi Behj\";\"other\"\n\"2059837\";\"Tumby\";\"other\"\n\"2059837\";\"Тумби Бэй\";\"other\"\n\"2059895\";\"Trigg\";\"main\"\n\"2060087\";\"Toodyay\";\"main\"\n\"2060384\";\"Thebarton\";\"main\"\n\"2060436\";\"Tennant Creek\";\"main\"\n\"2060436\";\"Tennant-Krik\";\"other\"\n\"2060436\";\"Теннант-Крик\";\"other\"\n\"2060604\";\"Tanunda\";\"main\"\n\"2060771\";\"Swan View\";\"main\"\n\"2060785\";\"Swanbourne\";\"main\"\n\"2060886\";\"Subiaco\";\"main\"\n\"2060898\";\"Sturt\";\"main\"\n\"2060937\";\"Streaky Bay\";\"main\"\n\"2060937\";\"Flinders\";\"other\"\n\"2060937\";\"Striki Behj\";\"other\"\n\"2060937\";\"Стрики Бэй\";\"other\"\n\"2060951\";\"Strathalbyn\";\"main\"\n\"2060994\";\"Stoneville\";\"main\"\n\"2061039\";\"Stirling\";\"main\"\n\"2061039\";\"Stirling East\";\"other\"\n\"2061039\";\"Stirling West\";\"other\"\n\"2061224\";\"Spearwood\";\"main\"\n\"2061261\";\"South Perth\";\"main\"\n\"2061261\";\"Perth South\";\"other\"\n\"2061341\";\"Solomontown\";\"main\"\n\"2061418\";\"Smithfield\";\"main\"\n\"2061735\";\"Serpentine\";\"main\"\n\"2061758\";\"Seaton\";\"main\"\n\"2061769\";\"Seaford\";\"main\"\n\"2061840\";\"Scarborough\";\"main\"\n\"2061840\";\"Scarborough Beach\";\"other\"\n\"2062013\";\"Salisbury\";\"main\"\n\"2062057\";\"Safety Bay\";\"main\"\n\"2062151\";\"Roxby Downs\";\"main\"\n\"2062216\";\"Roseworthy\";\"main\"\n\"2062276\";\"Roebourne\";\"main\"\n\"2062338\";\"Rockingham\";\"main\"\n\"2062428\";\"Maida Vale\";\"main\"\n\"2062459\";\"Reynella\";\"main\"\n\"2062660\";\"Ravensthorpe\";\"main\"\n\"2062745\";\"Quorn\";\"main\"\n\"2062766\";\"Quindalup\";\"main\"\n\"2062944\";\"Prospect\";\"main\"\n\"2063023\";\"Port Willunga\";\"main\"\n\"2063026\";\"Port Victoria\";\"main\"\n\"2063026\";\"Port Viktorija\";\"other\"\n\"2063026\";\"Wauraltee\";\"other\"\n\"2063026\";\"Порт Виктория\";\"other\"\n\"2063030\";\"Port Pirie\";\"main\"\n\"2063031\";\"Port Noarlunga\";\"main\"\n\"2063036\";\"Port Lincoln\";\"main\"\n\"2063036\";\"Port Linkol'n\";\"other\"\n\"2063036\";\"Порт Линкольн\";\"other\"\n\"2063039\";\"Port Keats\";\"main\"\n\"2063042\";\"Port Hedland\";\"main\"\n\"2063051\";\"Port Elliot\";\"main\"\n\"2063055\";\"Port Augusta West\";\"main\"\n\"2063056\";\"Port Augusta\";\"main\"\n\"2063056\";\"Kurdnatta\";\"other\"\n\"2063056\";\"Port Avgusta\";\"other\"\n\"2063056\";\"Порт Августа\";\"other\"\n\"2063059\";\"Port Adelaide\";\"main\"\n\"2063191\";\"Plympton\";\"main\"\n\"2063293\";\"Pinjarra\";\"main\"\n\"2063518\";\"Peterborough\";\"main\"\n\"2063518\";\"Petersburgh\";\"other\"\n\"2063523\";\"Perth\";\"main\"\n\"2063523\";\"Peairt\";\"other\"\n\"2063523\";\"Pert\";\"other\"\n\"2063523\";\"Pertas\";\"other\"\n\"2063523\";\"Perth City\";\"other\"\n\"2063523\";\"Perthia\";\"other\"\n\"2063523\";\"Purt\";\"other\"\n\"2063523\";\"byrth\";\"other\"\n\"2063523\";\"pasu\";\"other\"\n\"2063523\";\"pert\";\"other\"\n\"2063523\";\"po si\";\"other\"\n\"2063523\";\"prt\";\"other\"\n\"2063523\";\"prt'\";\"other\"\n\"2063523\";\"Перт\";\"other\"\n\"2063523\";\"Пърт\";\"other\"\n\"2063523\";\"פרת'\";\"other\"\n\"2063523\";\"بيرث\";\"other\"\n\"2063523\";\"پرت\";\"other\"\n\"2063523\";\"பேர்த்\";\"other\"\n\"2063523\";\"パース\";\"other\"\n\"2063523\";\"珀斯\";\"other\"\n\"2063604\";\"Pemberton\";\"main\"\n\"2063705\";\"Pearce\";\"main\"\n\"2063817\";\"Parkerville\";\"main\"\n\"2063845\";\"Parap\";\"main\"\n\"2063845\";\"Paraparap\";\"other\"\n\"2064173\";\"One Tree Hill\";\"main\"\n\"2064308\";\"Oakbank\";\"main\"\n\"2064340\";\"Nuriootpa\";\"main\"\n\"2064510\";\"North Fremantle\";\"main\"\n\"2064546\";\"North Beach\";\"main\"\n\"2064549\";\"Northampton\";\"main\"\n\"2064550\";\"Northam\";\"main\"\n\"2064565\";\"Normanville\";\"main\"\n\"2064655\";\"Noarlunga\";\"main\"\n\"2064735\";\"Nhulunbuy\";\"main\"\n\"2064735\";\"Gove\";\"other\"\n\"2064735\";\"Nhulunby\";\"other\"\n\"2064735\";\"Nullumbuy\";\"other\"\n\"2064768\";\"Newman\";\"main\"\n\"2064768\";\"Mount Newman\";\"other\"\n\"2064768\";\"N'jumen\";\"other\"\n\"2064768\";\"Ньюмен\";\"other\"\n\"2064915\";\"Narrogin\";\"main\"\n\"2065078\";\"Nairne\";\"main\"\n\"2065176\";\"Murray Bridge\";\"main\"\n\"2065176\";\"Murrej Bridzh\";\"other\"\n\"2065176\";\"Муррей Бридж\";\"other\"\n\"2065329\";\"Mundijong\";\"main\"\n\"2065337\";\"Mundaring\";\"main\"\n\"2065594\";\"Mount Isa\";\"main\"\n\"2065594\";\"Mont Isa\";\"other\"\n\"2065594\";\"Mt Isa\";\"other\"\n\"2065594\";\"Mt. Isa\";\"other\"\n\"2065602\";\"Mount Helena\";\"main\"\n\"2065602\";\"Maunt Khelena\";\"other\"\n\"2065602\";\"Маунт Хелена\";\"other\"\n\"2065642\";\"Mount Compass\";\"main\"\n\"2065665\";\"Mount Barker\";\"main\"\n\"2065665\";\"Maunt Barker\";\"other\"\n\"2065665\";\"Mt Barker\";\"other\"\n\"2065665\";\"Маунт Баркер\";\"other\"\n\"2065666\";\"Mount Barker\";\"main\"\n\"2065710\";\"Mosman Park\";\"main\"\n\"2065740\";\"Morphett Vale\";\"main\"\n\"2065836\";\"Moora\";\"main\"\n\"2065836\";\"Mura\";\"other\"\n\"2065836\";\"Мура\";\"other\"\n\"2066041\";\"Modbury\";\"main\"\n\"2066052\";\"Moana\";\"main\"\n\"2066066\";\"Mitcham\";\"main\"\n\"2066338\";\"Midland\";\"main\"\n\"2066338\";\"Midland Junction\";\"other\"\n\"2066358\";\"Middle Swan\";\"main\"\n\"2066472\";\"Merredin\";\"main\"\n\"2066511\";\"Meningie\";\"main\"\n\"2066524\";\"Melville\";\"main\"\n\"2066608\";\"Medina\";\"main\"\n\"2066626\";\"Meadows\";\"main\"\n\"2066626\";\"Midous\";\"other\"\n\"2066626\";\"Мидоус\";\"other\"\n\"2066653\";\"McMinns Lagoon\";\"main\"\n\"2066679\";\"McLaren Vale\";\"main\"\n\"2066756\";\"Maylands\";\"main\"\n\"2066954\";\"Marion\";\"main\"\n\"2066957\";\"Marino\";\"main\"\n\"2066981\";\"Margaret River\";\"main\"\n\"2067070\";\"Mannum\";\"main\"\n\"2067070\";\"Маннум\";\"other\"\n\"2067074\";\"Manning\";\"main\"\n\"2067086\";\"Manjimup\";\"main\"\n\"2067119\";\"Mandurah\";\"main\"\n\"2067119\";\"Mandujura\";\"other\"\n\"2067119\";\"Мандъюра\";\"other\"\n\"2067167\";\"Mallala\";\"main\"\n\"2067167\";\"Маллала\";\"other\"\n\"2067214\";\"Maitland\";\"main\"\n\"2067214\";\"Mejtlend\";\"other\"\n\"2067214\";\"Мейтленд\";\"other\"\n\"2067260\";\"Maddington\";\"main\"\n\"2067307\";\"Macclesfield\";\"main\"\n\"2067333\";\"Lyndoch\";\"main\"\n\"2067412\";\"Lower Chittering\";\"main\"\n\"2067412\";\"Lower Chittertering\";\"other\"\n\"2067565\";\"Lobethal\";\"main\"\n\"2067621\";\"Littlehampton\";\"main\"\n\"2067760\";\"Lewiston\";\"main\"\n\"2067929\";\"Largs Bay\";\"main\"\n\"2067951\";\"Langhorne Creek\";\"main\"\n\"2068079\";\"Kwinana\";\"main\"\n\"2068110\";\"Kununurra\";\"main\"\n\"2068340\";\"Kojonup\";\"main\"\n\"2068429\";\"Kingscote\";\"main\"\n\"2068429\";\"Kingskot\";\"other\"\n\"2068429\";\"Кингскот\";\"other\"\n\"2068569\";\"Kenwick\";\"main\"\n\"2068589\";\"Kendenup\";\"main\"\n\"2068594\";\"Kelmscott\";\"main\"\n\"2068655\";\"Katherine\";\"main\"\n\"2068661\";\"Katanning\";\"main\"\n\"2068734\";\"Kapunda\";\"main\"\n\"2068734\";\"Капунда\";\"other\"\n\"2068823\";\"Kalgoorlie\";\"main\"\n\"2068823\";\"Kalgoorlie-Boulder\";\"other\"\n\"2068823\";\"Kalgurli\";\"other\"\n\"2068823\";\"Калгурли\";\"other\"\n\"2068835\";\"Kalbarri\";\"main\"\n\"2068856\";\"Kadina\";\"main\"\n\"2068856\";\"Кадина\";\"other\"\n\"2069194\";\"Jamestown\";\"main\"\n\"2069375\";\"Ingle Farm\";\"main\"\n\"2069646\";\"Hope Valley\";\"main\"\n\"2069920\";\"Heathfield\";\"main\"\n\"2070009\";\"Harvey\";\"main\"\n\"2070106\";\"Happy Valley\";\"main\"\n\"2070176\";\"Halls Creek\";\"main\"\n\"2070212\";\"Hahndorf\";\"main\"\n\"2070212\";\"Khandorf\";\"other\"\n\"2070212\";\"Хандорф\";\"other\"\n\"2070216\";\"Hackham\";\"main\"\n\"2070292\";\"Gumeracha\";\"main\"\n\"2070332\";\"Guildford\";\"main\"\n\"2070423\";\"Greenmount\";\"main\"\n\"2070423\";\"Grinmaunt\";\"other\"\n\"2070423\";\"Гринмаунт\";\"other\"\n\"2070478\";\"Grasmere\";\"main\"\n\"2070478\";\"Grassmere\";\"other\"\n\"2070515\";\"Grange\";\"main\"\n\"2070571\";\"Gosnells\";\"main\"\n\"2070633\";\"Gooseberry Hill\";\"main\"\n\"2070667\";\"Goolwa\";\"main\"\n\"2070711\";\"Golden Grove\";\"main\"\n\"2070830\";\"Glenelg\";\"main\"\n\"2070830\";\"Glenel'g\";\"other\"\n\"2070830\";\"Гленельг\";\"other\"\n\"2070884\";\"Gilles Plains\";\"main\"\n\"2070998\";\"Geraldton\";\"main\"\n\"2070998\";\"Dzheraldton\";\"other\"\n\"2070998\";\"Джералдтон\";\"other\"\n\"2071059\";\"Gawler\";\"main\"\n\"2071223\";\"Fremantle\";\"main\"\n\"2071223\";\"furimantoru\";\"other\"\n\"2071223\";\"フリーマントル\";\"other\"\n\"2071233\";\"Freeling\";\"main\"\n\"2071233\";\"Friling\";\"other\"\n\"2071233\";\"Фрилинг\";\"other\"\n\"2071601\";\"Findon\";\"main\"\n\"2071860\";\"Esperance\";\"main\"\n\"2071860\";\"Ehsperans\";\"other\"\n\"2071860\";\"Эсперанс\";\"other\"\n\"2071961\";\"Encounter Bay\";\"main\"\n\"2072096\";\"Elizabeth\";\"main\"\n\"2072677\";\"Donnybrook\";\"main\"\n\"2072691\";\"Dongara\";\"main\"\n\"2072691\";\"Dongarra\";\"other\"\n\"2072728\";\"Chidlow\";\"main\"\n\"2072924\";\"Derby\";\"main\"\n\"2072945\";\"Denmark\";\"main\"\n\"2072945\";\"Денмарк\";\"other\"\n\"2072950\";\"Port Denison\";\"main\"\n\"2072950\";\"Denison\";\"other\"\n\"2073124\";\"Darwin\";\"main\"\n\"2073124\";\"Darvin\";\"other\"\n\"2073124\";\"Darvino\";\"other\"\n\"2073124\";\"Palmerston\";\"other\"\n\"2073124\";\"Port Darwin\";\"other\"\n\"2073124\";\"da er wen gang\";\"other\"\n\"2073124\";\"dau~in\";\"other\"\n\"2073124\";\"drwwyn\";\"other\"\n\"2073124\";\"tarvin\";\"other\"\n\"2073124\";\"Дарвин\";\"other\"\n\"2073124\";\"דרווין\";\"other\"\n\"2073124\";\"டார்வின்\";\"other\"\n\"2073124\";\"ダーウィン\";\"other\"\n\"2073124\";\"达尔文港\";\"other\"\n\"2073139\";\"Darlington\";\"main\"\n\"2073140\";\"Darlington\";\"main\"\n\"2073200\";\"Dampier\";\"main\"\n\"2073200\";\"Dampir\";\"other\"\n\"2073200\";\"Дампир\";\"other\"\n\"2073354\";\"Cunderdin\";\"main\"\n\"2073361\";\"Cummins\";\"main\"\n\"2073422\";\"Crystal Brook\";\"main\"\n\"2073422\";\"Kristal Bruk\";\"other\"\n\"2073422\";\"Кристал Брук\";\"other\"\n\"2073523\";\"Craigburn Farm\";\"main\"\n\"2073528\";\"Crafers\";\"main\"\n\"2073603\";\"Cottesloe\";\"main\"\n\"2073643\";\"Coromandel Valley\";\"main\"\n\"2073969\";\"Coogee\";\"main\"\n\"2073985\";\"Coober Pedy\";\"main\"\n\"2073985\";\"Kuber-Pedi\";\"other\"\n\"2073985\";\"Кубер-Педи\";\"other\"\n\"2074113\";\"Collie\";\"main\"\n\"2074280\";\"Cleve\";\"main\"\n\"2074329\";\"Clare\";\"main\"\n\"2074526\";\"Cheltenham\";\"main\"\n\"2074685\";\"Ceduna\";\"main\"\n\"2074700\";\"Caversham\";\"main\"\n\"2074865\";\"Carnarvon\";\"main\"\n\"2075008\";\"Capel\";\"main\"\n\"2075024\";\"Cannington\";\"main\"\n\"2075056\";\"Campbelltown\";\"main\"\n\"2075056\";\"Cambelltown\";\"other\"\n\"2075133\";\"Callington\";\"main\"\n\"2075230\";\"Byford\";\"main\"\n\"2075230\";\"Bajford\";\"other\"\n\"2075230\";\"Байфорд\";\"other\"\n\"2075265\";\"Busselton\";\"main\"\n\"2075432\";\"Bunbury\";\"main\"\n\"2075432\";\"Banberi\";\"other\"\n\"2075432\";\"Банбери\";\"other\"\n\"2075462\";\"Bullsbrook\";\"main\"\n\"2075720\";\"Broome\";\"main\"\n\"2075720\";\"Brum\";\"other\"\n\"2075720\";\"Брум\";\"other\"\n\"2075795\";\"Brighton\";\"main\"\n\"2075806\";\"Bridgewater\";\"main\"\n\"2075807\";\"Bridgetown\";\"main\"\n\"2075895\";\"Boyup Brook\";\"main\"\n\"2075909\";\"Boyanup\";\"main\"\n\"2075988\";\"Boulder\";\"main\"\n\"2076378\";\"Blackwood\";\"main\"\n\"2076526\";\"Birkenhead\";\"main\"\n\"2076528\";\"Birdwood\";\"main\"\n\"2076699\";\"Beverley\";\"main\"\n\"2076752\";\"Bentley\";\"main\"\n\"2076817\";\"Bellevue\";\"main\"\n\"2076842\";\"Belair\";\"main\"\n\"2076918\";\"Bedford Park\";\"main\"\n\"2076923\";\"Bedfordale\";\"main\"\n\"2076944\";\"Beaumont\";\"main\"\n\"2077030\";\"Bassendean\";\"main\"\n\"2077296\";\"Balhannah\";\"main\"\n\"2077347\";\"Balaklava\";\"main\"\n\"2077347\";\"Балаклава\";\"other\"\n\"2077454\";\"Australind\";\"main\"\n\"2077476\";\"Augusta\";\"main\"\n\"2077579\";\"Armadale\";\"main\"\n\"2077599\";\"Ardrossan\";\"main\"\n\"2077599\";\"Androssan\";\"other\"\n\"2077599\";\"Port Androssan\";\"other\"\n\"2077599\";\"Ардроссан\";\"other\"\n\"2077641\";\"Applecross\";\"main\"\n\"2077719\";\"Angle Vale\";\"main\"\n\"2077729\";\"Angaston\";\"main\"\n\"2077729\";\"Ангастон\";\"other\"\n\"2077895\";\"Alice Springs\";\"main\"\n\"2077895\";\"Alice Springs Region\";\"other\"\n\"2077895\";\"Alis-Springs\";\"other\"\n\"2077895\";\"Springs\";\"other\"\n\"2077895\";\"Stuart\";\"other\"\n\"2077895\";\"ai li si quan\";\"other\"\n\"2077895\";\"arisusupuringusu\";\"other\"\n\"2077895\";\"Алис-Спрингс\";\"other\"\n\"2077895\";\"アリススプリングス\";\"other\"\n\"2077895\";\"愛麗斯泉\";\"other\"\n\"2077935\";\"Aldinga\";\"main\"\n\"2077937\";\"Aldgate\";\"main\"\n\"2077963\";\"Albany\";\"main\"\n\"2077963\";\"Olbani\";\"other\"\n\"2077963\";\"Олбани\";\"other\"\n\"2078025\";\"Adelaide\";\"main\"\n\"2078025\";\"Adelaida\";\"other\"\n\"2078025\";\"Adelaida - Adelaide\";\"other\"\n\"2078025\";\"Adelaidė\";\"other\"\n\"2078025\";\"Adelajda\";\"other\"\n\"2078025\";\"Adelajdo\";\"other\"\n\"2078025\";\"Adelàida\";\"other\"\n\"2078025\";\"Adélaïde\";\"other\"\n\"2078025\";\"Tarndanya\";\"other\"\n\"2078025\";\"Tarndarnya\";\"other\"\n\"2078025\";\"a de lai de\";\"other\"\n\"2078025\";\"aderedo\";\"other\"\n\"2078025\";\"adlayd\";\"other\"\n\"2078025\";\"atileyt\";\"other\"\n\"2078025\";\"Аделаида\";\"other\"\n\"2078025\";\"Аделаїда\";\"other\"\n\"2078025\";\"אדלייד\";\"other\"\n\"2078025\";\"آدلاید\";\"other\"\n\"2078025\";\"அடிலெய்ட்\";\"other\"\n\"2078025\";\"アデレード\";\"other\"\n\"2078025\";\"阿德莱德\";\"other\"\n\"2078304\";\"Dunsborough\";\"main\"\n\"2078313\";\"Eaton\";\"main\"\n\"2078451\";\"Seacliff\";\"main\"\n\"2078505\";\"Clapham\";\"main\"\n\"2078732\";\"Two Rocks\";\"main\"\n\"2078766\";\"Quinns Rocks\";\"main\"\n\"2078894\";\"East Fremantle\";\"main\"\n\"2078903\";\"Peppermint Grove\";\"main\"\n\"2078904\";\"Claremont\";\"main\"\n\"2078907\";\"Bicton\";\"main\"\n\"2078908\";\"Attadale\";\"main\"\n\"2078909\";\"Shenton Park\";\"main\"\n\"2078912\";\"Dalkeith\";\"main\"\n\"2079020\";\"Jurien\";\"main\"\n\"2079183\";\"Warnbro\";\"main\"\n\"2079189\";\"Mullaloo\";\"main\"\n\"2079582\";\"Alyangula\";\"main\"\n\"2079686\";\"Stuart Park\";\"main\"\n\"2079691\";\"Larrakeyah\";\"main\"\n\"2079692\";\"Leanyer\";\"main\"\n\"2079693\";\"Ludmilla\";\"main\"\n\"2079695\";\"Fannie Bay\";\"main\"\n\"2079696\";\"Nightcliff\";\"main\"\n\"2079707\";\"Glen Iris\";\"main\"\n\"2079796\";\"Lower King\";\"main\"\n\"2142245\";\"Young\";\"main\"\n\"2142316\";\"Yeppoon\";\"main\"\n\"2142316\";\"Eppun\";\"other\"\n\"2142316\";\"Еппун\";\"other\"\n\"2142409\";\"Yatala\";\"main\"\n\"2142447\";\"Yarrawonga\";\"main\"\n\"2142492\";\"Yarraman\";\"main\"\n\"2142595\";\"Yandina\";\"main\"\n\"2142747\";\"Wynyard\";\"main\"\n\"2142750\";\"Wynnum\";\"main\"\n\"2142886\";\"Worrolong\";\"main\"\n\"2142902\";\"Woree\";\"main\"\n\"2142930\";\"Woorim\";\"main\"\n\"2142951\";\"Woombye\";\"main\"\n\"2142951\";\"Wombye\";\"other\"\n\"2143003\";\"Woolgoolga\";\"main\"\n\"2143003\";\"Woogoolga\";\"other\"\n\"2143069\";\"Woodridge\";\"main\"\n\"2143099\";\"Woodford\";\"main\"\n\"2143180\";\"Wondai\";\"main\"\n\"2143285\";\"Wodonga\";\"main\"\n\"2143440\";\"Windaroo\";\"main\"\n\"2144033\";\"Westcourt\";\"main\"\n\"2144044\";\"Westbury\";\"main\"\n\"2144044\";\"Vestburi\";\"other\"\n\"2144044\";\"Вестбури\";\"other\"\n\"2144053\";\"Westbrook\";\"main\"\n\"2144157\";\"Wellington Point\";\"main\"\n\"2144168\";\"Wellington\";\"main\"\n\"2144168\";\"Vellington\";\"other\"\n\"2144168\";\"Веллингтон\";\"other\"\n\"2144502\";\"Warwick\";\"main\"\n\"2144528\";\"Warrnambool\";\"main\"\n\"2144581\";\"Warrane\";\"main\"\n\"2144604\";\"Warragul\";\"main\"\n\"2144764\";\"Wangaratta\";\"main\"\n\"2145005\";\"Walkerston\";\"main\"\n\"2145110\";\"Wagga Wagga\";\"main\"\n\"2145110\";\"Uogga Uogga\";\"other\"\n\"2145110\";\"Wagga\";\"other\"\n\"2145110\";\"Уогга Уогга\";\"other\"\n\"2145135\";\"Wacol\";\"main\"\n\"2145135\";\"Wolston\";\"other\"\n\"2145214\";\"Victoria Point\";\"main\"\n\"2145361\";\"Urraween\";\"main\"\n\"2145392\";\"Urangan\";\"main\"\n\"2145461\";\"Upper Coomera\";\"main\"\n\"2145532\";\"Ulverstone\";\"main\"\n\"2145532\";\"Ulverston\";\"other\"\n\"2145532\";\"Улверстон\";\"other\"\n\"2145554\";\"Ulladulla\";\"main\"\n\"2145554\";\"Улладулла\";\"other\"\n\"2145875\";\"Tumut\";\"main\"\n\"2145929\";\"Tugun\";\"main\"\n\"2146013\";\"Trinity Beach\";\"main\"\n\"2146108\";\"Traralgon\";\"main\"\n\"2146142\";\"Townsville\";\"main\"\n\"2146142\";\"taunzuvu~iru\";\"other\"\n\"2146142\";\"タウンズヴィル\";\"other\"\n\"2146219\";\"Torquay\";\"main\"\n\"2146268\";\"Toowoomba\";\"main\"\n\"2146268\";\"Tuvumba\";\"other\"\n\"2146268\";\"Тувумба\";\"other\"\n\"2146334\";\"Toolooa\";\"main\"\n\"2146473\";\"Tolga\";\"main\"\n\"2146567\";\"Tin Can Bay\";\"main\"\n\"2146567\";\"Tin Kehn Behj\";\"other\"\n\"2146567\";\"Тин Кэн Бэй\";\"other\"\n\"2146945\";\"The Entrance\";\"main\"\n\"2146945\";\"Ehntrans\";\"other\"\n\"2146945\";\"Энтранс\";\"other\"\n\"2146987\";\"Thagoona\";\"main\"\n\"2146992\";\"Thabeban\";\"main\"\n\"2146997\";\"Tewantin\";\"main\"\n\"2147336\";\"Tarragindi\";\"main\"\n\"2147344\";\"Taroona\";\"main\"\n\"2147347\";\"Taroom\";\"main\"\n\"2147347\";\"Tarum\";\"other\"\n\"2147347\";\"Тарум\";\"other\"\n\"2147381\";\"Taree\";\"main\"\n\"2147381\";\"Tari\";\"other\"\n\"2147381\";\"Тари\";\"other\"\n\"2147497\";\"Tamworth\";\"main\"\n\"2147497\";\"Tamuort\";\"other\"\n\"2147497\";\"Тамуорт\";\"other\"\n\"2147558\";\"Tallebudgera\";\"main\"\n\"2147714\";\"Sydney\";\"main\"\n\"2147714\";\"Sanctus Dionysius\";\"other\"\n\"2147714\";\"Sanctus Dyonisius\";\"other\"\n\"2147714\";\"Sidnej\";\"other\"\n\"2147714\";\"Sidneja\";\"other\"\n\"2147714\";\"Sidnejo\";\"other\"\n\"2147714\";\"Sidnejus\";\"other\"\n\"2147714\";\"Sidney\";\"other\"\n\"2147714\";\"Sidni\";\"other\"\n\"2147714\";\"Sidnėjus\";\"other\"\n\"2147714\";\"Syd\";\"other\"\n\"2147714\";\"Sydney City\";\"other\"\n\"2147714\";\"Sídney\";\"other\"\n\"2147714\";\"citni\";\"other\"\n\"2147714\";\"shidoni\";\"other\"\n\"2147714\";\"sidani\";\"other\"\n\"2147714\";\"sideuni\";\"other\"\n\"2147714\";\"sidniy\";\"other\"\n\"2147714\";\"sydny\";\"other\"\n\"2147714\";\"xi ni\";\"other\"\n\"2147714\";\"Сидней\";\"other\"\n\"2147714\";\"Сиднеј\";\"other\"\n\"2147714\";\"Сидни\";\"other\"\n\"2147714\";\"Сідней\";\"other\"\n\"2147714\";\"סידני\";\"other\"\n\"2147714\";\"سىدنېي\";\"other\"\n\"2147714\";\"سيدني\";\"other\"\n\"2147714\";\"سیدنی\";\"other\"\n\"2147714\";\"सिडनी\";\"other\"\n\"2147714\";\"சிட்னி\";\"other\"\n\"2147714\";\"ซิดนีย์\";\"other\"\n\"2147714\";\"སིད་ཉིས\";\"other\"\n\"2147714\";\"シドニー\";\"other\"\n\"2147714\";\"悉尼\";\"other\"\n\"2147714\";\"시드니\";\"other\"\n\"2147756\";\"Swan Hill\";\"main\"\n\"2147849\";\"Surfers Paradise\";\"main\"\n\"2147849\";\"Sjorfers Paradajz\";\"other\"\n\"2147849\";\"Сёрферс Парадайз\";\"other\"\n\"2147892\";\"Sunnybank\";\"main\"\n\"2147914\";\"Sunbury\";\"main\"\n\"2148070\";\"Strathpine\";\"main\"\n\"2148398\";\"Port Stephens\";\"main\"\n\"2148398\";\"Port Stephen\";\"other\"\n\"2148431\";\"Stawell\";\"main\"\n\"2148507\";\"Stanthorpe\";\"main\"\n\"2148507\";\"Stehntkhorp\";\"other\"\n\"2148507\";\"Стэнтхорп\";\"other\"\n\"2148627\";\"Spring Hill\";\"main\"\n\"2148928\";\"Southport\";\"main\"\n\"2148997\";\"South Grafton\";\"main\"\n\"2149106\";\"Sorrento\";\"main\"\n\"2149106\";\"Сорренто\";\"other\"\n\"2149116\";\"Sorell\";\"main\"\n\"2149128\";\"Somerville\";\"main\"\n\"2149254\";\"Smithton\";\"main\"\n\"2149349\";\"Slacks Creek\";\"main\"\n\"2149475\";\"Singleton\";\"main\"\n\"2149475\";\"Singlton\";\"other\"\n\"2149475\";\"Синглтон\";\"other\"\n\"2149586\";\"Shorncliffe\";\"main\"\n\"2149645\";\"Shepparton\";\"main\"\n\"2149645\";\"Шеппартон\";\"other\"\n\"2149673\";\"Shellharbour Village\";\"main\"\n\"2149673\";\"Shellharbour\";\"other\"\n\"2149687\";\"Sheffield\";\"main\"\n\"2149687\";\"Sheffild\";\"other\"\n\"2149687\";\"Шеффилд\";\"other\"\n\"2149738\";\"Sharon\";\"main\"\n\"2150060\";\"Scottsdale\";\"main\"\n\"2150126\";\"Scarness\";\"main\"\n\"2150163\";\"Sawtell\";\"main\"\n\"2150216\";\"Sarina\";\"main\"\n\"2150216\";\"Сарина\";\"other\"\n\"2150483\";\"Sandgate\";\"main\"\n\"2150485\";\"Sandford\";\"main\"\n\"2150615\";\"Sale\";\"main\"\n\"2150615\";\"Sehjl\";\"other\"\n\"2150615\";\"Сэйл\";\"other\"\n\"2150679\";\"Saint Helens\";\"main\"\n\"2151127\";\"Rosebery\";\"main\"\n\"2151127\";\"Rozberi\";\"other\"\n\"2151127\";\"Розбери\";\"other\"\n\"2151187\";\"Roma\";\"main\"\n\"2151215\";\"Rokeby\";\"main\"\n\"2151430\";\"Rocklea\";\"main\"\n\"2151437\";\"Rockhampton\";\"main\"\n\"2151437\";\"Rokkhempton\";\"other\"\n\"2151437\";\"Рокхемптон\";\"other\"\n\"2151522\";\"Riverstone\";\"main\"\n\"2151650\";\"Richmond\";\"main\"\n\"2151650\";\"Ричмонд\";\"other\"\n\"2151682\";\"Rhodes\";\"main\"\n\"2151697\";\"Revesby\";\"main\"\n\"2151735\";\"Renmark West\";\"main\"\n\"2151737\";\"Renmark\";\"main\"\n\"2151737\";\"Ренмарк\";\"other\"\n\"2151776\";\"Regents Park\";\"main\"\n\"2151886\";\"Redlynch\";\"main\"\n\"2151892\";\"Redland Bay\";\"main\"\n\"2151905\";\"Red Hill\";\"main\"\n\"2151924\";\"Redhead\";\"main\"\n\"2151932\";\"Redfern\";\"main\"\n\"2152033\";\"Raworth\";\"main\"\n\"2152048\";\"Ravenshoe\";\"main\"\n\"2152071\";\"Rathmines\";\"main\"\n\"2152240\";\"Quirindi\";\"main\"\n\"2152272\";\"Queenstown\";\"main\"\n\"2152272\";\"Kvinstaun\";\"other\"\n\"2152272\";\"Квинстаун\";\"other\"\n\"2152279\";\"Queenscliff\";\"main\"\n\"2152279\";\"Kvinskliff\";\"other\"\n\"2152279\";\"Квинсклифф\";\"other\"\n\"2152286\";\"Queanbeyan\";\"main\"\n\"2152286\";\"Kuinbejan\";\"other\"\n\"2152286\";\"Куинбеян\";\"other\"\n\"2152329\";\"Quakers Hill\";\"main\"\n\"2152361\";\"Pymble\";\"main\"\n\"2152653\";\"Port Sorell\";\"main\"\n\"2152653\";\"Порт Сорелл\";\"other\"\n\"2152659\";\"Port Macquarie\";\"main\"\n\"2152659\";\"Port Makkuori\";\"other\"\n\"2152659\";\"Порт Маккуори\";\"other\"\n\"2152667\";\"Portland\";\"main\"\n\"2152667\";\"Portlend\";\"other\"\n\"2152667\";\"Портленд\";\"other\"\n\"2152668\";\"Portland\";\"main\"\n\"2152671\";\"Port Kembla\";\"main\"\n\"2152681\";\"Port Douglas\";\"main\"\n\"2152681\";\"Port Duglas\";\"other\"\n\"2152681\";\"Port-Duglas\";\"other\"\n\"2152681\";\"Порт Дуглас\";\"other\"\n\"2152681\";\"Порт-Дуглас\";\"other\"\n\"2152820\";\"Point Clare\";\"main\"\n\"2152917\";\"Pitt Town\";\"main\"\n\"2153259\";\"Picton\";\"main\"\n\"2153259\";\"Gol Gol\";\"other\"\n\"2153259\";\"Гол Гол\";\"other\"\n\"2153336\";\"Phillip\";\"main\"\n\"2153389\";\"Perthville\";\"main\"\n\"2153391\";\"Perth\";\"main\"\n\"2153467\";\"Penshurst\";\"main\"\n\"2153471\";\"Penrith\";\"main\"\n\"2153473\";\"Penola\";\"main\"\n\"2153473\";\"Пенола\";\"other\"\n\"2153483\";\"Pennant Hills\";\"main\"\n\"2153494\";\"Penguin\";\"main\"\n\"2153633\";\"Peak Hill\";\"main\"\n\"2153633\";\"Pik Khill\";\"other\"\n\"2153633\";\"Пик Хилл\";\"other\"\n\"2153778\";\"Parkes\";\"main\"\n\"2153924\";\"Palm Beach\";\"main\"\n\"2153924\";\"Palm-Bich\";\"other\"\n\"2153924\";\"Палм-Бич\";\"other\"\n\"2153950\";\"Pakenham Upper\";\"main\"\n\"2154088\";\"Ouyen\";\"main\"\n\"2154219\";\"Orange\";\"main\"\n\"2154219\";\"Orandzh\";\"other\"\n\"2154219\";\"Орандж\";\"other\"\n\"2154445\";\"Old Beach\";\"main\"\n\"2154445\";\"Oldbridzh\";\"other\"\n\"2154445\";\"Олдбридж\";\"other\"\n\"2154447\";\"Old Bar\";\"main\"\n\"2154447\";\"Олд Бар\";\"other\"\n\"2154537\";\"Oberon\";\"main\"\n\"2154544\";\"Oatley\";\"main\"\n\"2154660\";\"Oakdale\";\"main\"\n\"2154672\";\"Nyngan\";\"main\"\n\"2154787\";\"Nowra\";\"main\"\n\"2154787\";\"Novra\";\"other\"\n\"2154787\";\"Новра\";\"other\"\n\"2154826\";\"North Wonthaggi\";\"main\"\n\"2154849\";\"North Turramurra\";\"main\"\n\"2154913\";\"Northmead\";\"main\"\n\"2154949\";\"North Haven\";\"main\"\n\"2155092\";\"Normanhurst\";\"main\"\n\"2155135\";\"Noosa Heads\";\"main\"\n\"2155135\";\"Noosa\";\"other\"\n\"2155321\";\"Nimbin\";\"main\"\n\"2155386\";\"Newtown\";\"main\"\n\"2155392\";\"Newstead\";\"main\"\n\"2155412\";\"Newport\";\"main\"\n\"2155415\";\"New Norfolk\";\"main\"\n\"2155415\";\"N'ju-Norfolk\";\"other\"\n\"2155415\";\"Нью-Норфолк\";\"other\"\n\"2155416\";\"Newnham\";\"main\"\n\"2155472\";\"Newcastle\";\"main\"\n\"2155472\";\"N'jukasl\";\"other\"\n\"2155472\";\"Novkastelo\";\"other\"\n\"2155472\";\"niu ka si er\";\"other\"\n\"2155472\";\"nyukassuru\";\"other\"\n\"2155472\";\"Ньюкасл\";\"other\"\n\"2155472\";\"ニューカッスル\";\"other\"\n\"2155472\";\"纽卡斯尔\";\"other\"\n\"2155542\";\"Nerang\";\"main\"\n\"2155562\";\"Nelson Bay\";\"main\"\n\"2155562\";\"Nel'son Behj\";\"other\"\n\"2155562\";\"Nelson's Bay\";\"other\"\n\"2155562\";\"Nelson’s Bay\";\"other\"\n\"2155562\";\"Нельсон Бэй\";\"other\"\n\"2155710\";\"Narromine\";\"main\"\n\"2155731\";\"Narrandera\";\"main\"\n\"2155731\";\"Наррандера\";\"other\"\n\"2155742\";\"Narrabri\";\"main\"\n\"2155745\";\"Narrabeen\";\"main\"\n\"2155750\";\"Narooma\";\"main\"\n\"2155750\";\"Naruma\";\"other\"\n\"2155750\";\"Noorooma\";\"other\"\n\"2155750\";\"Нарума\";\"other\"\n\"2155772\";\"Narellan\";\"main\"\n\"2155783\";\"Narara\";\"main\"\n\"2155796\";\"Naracoorte\";\"main\"\n\"2155796\";\"Narakurt\";\"other\"\n\"2155796\";\"Наракурт\";\"other\"\n\"2155848\";\"Nana Glen\";\"main\"\n\"2155858\";\"Nambucca Heads\";\"main\"\n\"2155858\";\"Nambucca\";\"other\"\n\"2155858\";\"Namoucca Heads\";\"other\"\n\"2155859\";\"Nambucca\";\"main\"\n\"2155862\";\"Nambour\";\"main\"\n\"2155862\";\"Nambor\";\"other\"\n\"2155862\";\"Намбор\";\"other\"\n\"2155892\";\"Nabiac\";\"main\"\n\"2156034\";\"Muswellbrook\";\"main\"\n\"2156034\";\"Musclebrook\";\"other\"\n\"2156049\";\"Murwillumbah\";\"main\"\n\"2156069\";\"Murrumbateman\";\"main\"\n\"2156069\";\"Morumbateman\";\"other\"\n\"2156239\";\"Mundulla\";\"main\"\n\"2156239\";\"Mundalla\";\"other\"\n\"2156298\";\"Mulwala\";\"main\"\n\"2156345\";\"Mulgoa\";\"main\"\n\"2156404\";\"Mudgee\";\"main\"\n\"2156643\";\"Mount Gambier\";\"main\"\n\"2156643\";\"Gambier Town\";\"other\"\n\"2156643\";\"Maunt Gambier\";\"other\"\n\"2156643\";\"Mont Gambier\";\"other\"\n\"2156643\";\"Mt Gambier\";\"other\"\n\"2156643\";\"Mt. Gambier\";\"other\"\n\"2156643\";\"Маунт Гамбиер\";\"other\"\n\"2156671\";\"Mount Druitt\";\"main\"\n\"2156671\";\"Mt Druitt\";\"other\"\n\"2156671\";\"Mt. Druitt\";\"other\"\n\"2156694\";\"Mount Colah\";\"main\"\n\"2156722\";\"Mount Beauty\";\"main\"\n\"2156777\";\"Moss Vale\";\"main\"\n\"2156813\";\"Mosman\";\"main\"\n\"2156825\";\"Morwell\";\"main\"\n\"2156853\";\"Mortdale\";\"main\"\n\"2156878\";\"Mornington\";\"main\"\n\"2156878\";\"Морнингтон\";\"other\"\n\"2156927\";\"Moree\";\"main\"\n\"2156934\";\"Morayfield\";\"main\"\n\"2157060\";\"Moonee Beach\";\"main\"\n\"2157090\";\"Moonah\";\"main\"\n\"2157109\";\"Mooloolaba\";\"main\"\n\"2157109\";\"Alexandra-Mooloolaba\";\"other\"\n\"2157109\";\"Mululaba\";\"other\"\n\"2157109\";\"Мулулаба\";\"other\"\n\"2157161\";\"Montrose\";\"main\"\n\"2157247\";\"Monash\";\"main\"\n\"2157272\";\"Molong\";\"main\"\n\"2157343\";\"Moe\";\"main\"\n\"2157355\";\"Moama\";\"main\"\n\"2157373\";\"Mittagong\";\"main\"\n\"2157495\";\"Miranda\";\"main\"\n\"2157601\";\"Milton\";\"main\"\n\"2157601\";\"Милтон\";\"other\"\n\"2157627\";\"Millthorpe\";\"main\"\n\"2157652\";\"Millicent\";\"main\"\n\"2157652\";\"Millisent\";\"other\"\n\"2157652\";\"Миллисент\";\"other\"\n\"2157698\";\"Mildura\";\"main\"\n\"2157698\";\"Mild'jura\";\"other\"\n\"2157698\";\"Милдьюра\";\"other\"\n\"2157995\";\"Merrylands\";\"main\"\n\"2158004\";\"Merriwa\";\"main\"\n\"2158020\";\"Merimbula\";\"main\"\n\"2158020\";\"Merrimbula\";\"other\"\n\"2158020\";\"Меримбула\";\"other\"\n\"2158130\";\"Menai\";\"main\"\n\"2158151\";\"Melton\";\"main\"\n\"2158151\";\"Мелтон\";\"other\"\n\"2158177\";\"Melbourne\";\"main\"\n\"2158177\";\"Mel'burn\";\"other\"\n\"2158177\";\"Melbourne City\";\"other\"\n\"2158177\";\"Melbournum\";\"other\"\n\"2158177\";\"Melburn\";\"other\"\n\"2158177\";\"Melburna\";\"other\"\n\"2158177\";\"Melburnas\";\"other\"\n\"2158177\";\"Melburno\";\"other\"\n\"2158177\";\"mel beirn\";\"other\"\n\"2158177\";\"melaborna\";\"other\"\n\"2158177\";\"melbeoleun\";\"other\"\n\"2158177\";\"melporn\";\"other\"\n\"2158177\";\"meruborun\";\"other\"\n\"2158177\";\"mlbwrn\";\"other\"\n\"2158177\";\"mo er ben\";\"other\"\n\"2158177\";\"Мелбурн\";\"other\"\n\"2158177\";\"Мелбърн\";\"other\"\n\"2158177\";\"Мельбурн\";\"other\"\n\"2158177\";\"מלבורן\";\"other\"\n\"2158177\";\"ملبورن\";\"other\"\n\"2158177\";\"مېلبۇرن\";\"other\"\n\"2158177\";\"मेलबोर्न\";\"other\"\n\"2158177\";\"மெல்போர்ன்\";\"other\"\n\"2158177\";\"เมลเบิร์น\";\"other\"\n\"2158177\";\"མེར་བུན\";\"other\"\n\"2158177\";\"メルボルン\";\"other\"\n\"2158177\";\"墨尔本\";\"other\"\n\"2158177\";\"멜버른\";\"other\"\n\"2158220\";\"Medowie\";\"main\"\n\"2158504\";\"Matraville\";\"main\"\n\"2158538\";\"Mascot\";\"main\"\n\"2158561\";\"Maryborough\";\"main\"\n\"2158562\";\"Maryborough\";\"main\"\n\"2158626\";\"Marrickville\";\"main\"\n\"2158651\";\"Maroubra\";\"main\"\n\"2158744\";\"Margate\";\"main\"\n\"2158745\";\"Margate\";\"main\"\n\"2158767\";\"Mareeba\";\"main\"\n\"2158839\";\"Mansfield\";\"main\"\n\"2158839\";\"Mansfied\";\"other\"\n\"2158839\";\"Mansfild\";\"other\"\n\"2158839\";\"Мансфилд\";\"other\"\n\"2158867\";\"Manly\";\"main\"\n\"2158867\";\"Manli\";\"other\"\n\"2158867\";\"Манли\";\"other\"\n\"2158874\";\"Manilla\";\"main\"\n\"2159018\";\"Malabar\";\"main\"\n\"2159045\";\"Maitland\";\"main\"\n\"2159045\";\"Mejtlend\";\"other\"\n\"2159045\";\"West Maitland\";\"other\"\n\"2159045\";\"Мейтленд\";\"other\"\n\"2159185\";\"Maclean\";\"main\"\n\"2159194\";\"Macksville\";\"main\"\n\"2159220\";\"Mackay\";\"main\"\n\"2159220\";\"Makej\";\"other\"\n\"2159220\";\"Макей\";\"other\"\n\"2159372\";\"Luddenham\";\"main\"\n\"2159500\";\"Loveday\";\"main\"\n\"2159550\";\"Lorn\";\"main\"\n\"2159654\";\"Long Jetty\";\"main\"\n\"2159683\";\"Longford\";\"main\"\n\"2159851\";\"Liverpool\";\"main\"\n\"2160053\";\"Lithgow\";\"main\"\n\"2160053\";\"Litgou\";\"other\"\n\"2160053\";\"Литгоу\";\"other\"\n\"2160063\";\"Lismore\";\"main\"\n\"2160063\";\"Lizmor\";\"other\"\n\"2160063\";\"Лизмор\";\"other\"\n\"2160070\";\"Lisarow\";\"main\"\n\"2160113\";\"Lindisfarne\";\"main\"\n\"2160114\";\"Lindfield\";\"main\"\n\"2160232\";\"Lightning Ridge\";\"main\"\n\"2160232\";\"Lajtning Ridzh\";\"other\"\n\"2160232\";\"Лайтнинг Ридж\";\"other\"\n\"2160258\";\"Lidcombe\";\"main\"\n\"2160258\";\"Lidcomb\";\"other\"\n\"2160297\";\"Leura\";\"main\"\n\"2160299\";\"Leumeah\";\"main\"\n\"2160336\";\"Leopold\";\"main\"\n\"2160336\";\"Leopol'd\";\"other\"\n\"2160336\";\"Леопольд\";\"other\"\n\"2160386\";\"Leichhardt\";\"main\"\n\"2160413\";\"Leeton\";\"main\"\n\"2160413\";\"Liton\";\"other\"\n\"2160413\";\"Литон\";\"other\"\n\"2160477\";\"Lawson\";\"main\"\n\"2160493\";\"Lavington\";\"main\"\n\"2160499\";\"Laurieton\";\"main\"\n\"2160499\";\"Camden Haven\";\"other\"\n\"2160517\";\"Launceston\";\"main\"\n\"2160517\";\"Launcestown\";\"other\"\n\"2160517\";\"Lonseston\";\"other\"\n\"2160517\";\"Patersonia\";\"other\"\n\"2160517\";\"Лонсестон\";\"other\"\n\"2160519\";\"Lauderdale\";\"main\"\n\"2160523\";\"Latrobe\";\"main\"\n\"2160542\";\"Larnook\";\"main\"\n\"2160546\";\"Largs\";\"main\"\n\"2160560\";\"Lara\";\"main\"\n\"2160625\";\"Lane Cove\";\"main\"\n\"2160735\";\"Lakes Entrance\";\"main\"\n\"2160744\";\"Lakemba\";\"main\"\n\"2160751\";\"Lake Illawarra\";\"main\"\n\"2160769\";\"Lake Cargelligo\";\"main\"\n\"2160769\";\"Lake Cargellico\";\"other\"\n\"2160774\";\"Lake Albert\";\"main\"\n\"2160880\";\"Kyogle\";\"main\"\n\"2160910\";\"Kyabram\";\"main\"\n\"2160922\";\"Kurri Kurri\";\"main\"\n\"2160937\";\"Kurnell\";\"main\"\n\"2160944\";\"Kuranda\";\"main\"\n\"2160944\";\"Куранда\";\"other\"\n\"2161029\";\"Kotara\";\"main\"\n\"2161072\";\"Kootingal\";\"main\"\n\"2161185\";\"Kogarah\";\"main\"\n\"2161251\";\"Kirribilli\";\"main\"\n\"2161309\";\"Kingston Beach\";\"main\"\n\"2161311\";\"Kingston\";\"main\"\n\"2161313\";\"Kingston\";\"main\"\n\"2161335\";\"Kingscliff\";\"main\"\n\"2161376\";\"Kingaroy\";\"main\"\n\"2161515\";\"Kiama\";\"main\"\n\"2161546\";\"Kettering\";\"main\"\n\"2161546\";\"Кеттеринг\";\"other\"\n\"2161602\";\"Kenthurst\";\"main\"\n\"2161608\";\"Kensington\";\"main\"\n\"2161654\";\"Kendall\";\"main\"\n\"2161658\";\"Kempsey\";\"main\"\n\"2161678\";\"Kelso\";\"main\"\n\"2161714\";\"Keith\";\"main\"\n\"2161715\";\"Keiraville\";\"main\"\n\"2161776\";\"Katoomba\";\"main\"\n\"2161863\";\"Kanwal\";\"main\"\n\"2161876\";\"Kangaroo Valley\";\"main\"\n\"2161876\";\"Kenguru Vehlli\";\"other\"\n\"2161876\";\"Кенгуру Вэлли\";\"other\"\n\"2161935\";\"Kandos\";\"main\"\n\"2162025\";\"Kahibah\";\"main\"\n\"2162052\";\"Junee\";\"main\"\n\"2162052\";\"Junee Junction\";\"other\"\n\"2162250\";\"Jindera\";\"main\"\n\"2162250\";\"Dzhindera\";\"other\"\n\"2162250\";\"Джиндера\";\"other\"\n\"2162255\";\"Jindabyne\";\"main\"\n\"2162255\";\"Jinderboine\";\"other\"\n\"2162281\";\"Jilliby\";\"main\"\n\"2162419\";\"Jannali\";\"main\"\n\"2162446\";\"Jamberoo\";\"main\"\n\"2162662\";\"Inverell\";\"main\"\n\"2162683\";\"Innisfail\";\"main\"\n\"2162683\";\"Geraldton\";\"other\"\n\"2162733\";\"Ingleburn\";\"main\"\n\"2162737\";\"Ingham\";\"main\"\n\"2162856\";\"Hurstville Grove\";\"main\"\n\"2162856\";\"Hurstville\";\"other\"\n\"2162873\";\"Huonville\";\"main\"\n\"2162873\";\"Khuonvill'\";\"other\"\n\"2162873\";\"Хуонвилль\";\"other\"\n\"2162994\";\"Howlong\";\"main\"\n\"2162994\";\"Khaulong\";\"other\"\n\"2162994\";\"Хаулонг\";\"other\"\n\"2163055\";\"Horsham\";\"main\"\n\"2163137\";\"Hornsby\";\"main\"\n\"2163237\";\"Home Hill\";\"main\"\n\"2163256\";\"Homebush\";\"main\"\n\"2163270\";\"Holsworthy\";\"main\"\n\"2163306\";\"Holgate\";\"main\"\n\"2163314\";\"Holbrook\";\"main\"\n\"2163314\";\"Kholbruk\";\"other\"\n\"2163314\";\"Холбрук\";\"other\"\n\"2163355\";\"Hobart\";\"main\"\n\"2163355\";\"Hobart Town\";\"other\"\n\"2163398\";\"Hillston\";\"main\"\n\"2163398\";\"Khillston\";\"other\"\n\"2163398\";\"Хиллстон\";\"other\"\n\"2163577\";\"Henty\";\"main\"\n\"2163641\";\"Helensburgh\";\"main\"\n\"2163641\";\"Khelensburg\";\"other\"\n\"2163641\";\"Хеленсбург\";\"other\"\n\"2163669\";\"Heddon Greta\";\"main\"\n\"2163697\";\"Heathcote\";\"main\"\n\"2163701\";\"Healesville\";\"main\"\n\"2163731\";\"Hazelbrook\";\"main\"\n\"2163755\";\"Haymarket\";\"main\"\n\"2163788\";\"Hawks Nest\";\"main\"\n\"2163837\";\"Hastings\";\"main\"\n\"2163895\";\"Harrington\";\"main\"\n\"2164025\";\"Hamilton\";\"main\"\n\"2164025\";\"Gamil'ton\";\"other\"\n\"2164025\";\"Hamiltonium\";\"other\"\n\"2164025\";\"Khamilton\";\"other\"\n\"2164025\";\"hamiruton\";\"other\"\n\"2164025\";\"hmyltwn\";\"other\"\n\"2164025\";\"Гамильтон\";\"other\"\n\"2164025\";\"Хамилтон\";\"other\"\n\"2164025\";\"המילטון\";\"other\"\n\"2164025\";\"ハミルトン\";\"other\"\n\"2164123\";\"Haberfield\";\"main\"\n\"2164129\";\"Gympie\";\"main\"\n\"2164149\";\"Guyra\";\"main\"\n\"2164206\";\"Gunnedah\";\"main\"\n\"2164206\";\"Gunnendah\";\"other\"\n\"2164249\";\"Gundaroo\";\"main\"\n\"2164249\";\"Gundaru\";\"other\"\n\"2164249\";\"Gunderoo\";\"other\"\n\"2164249\";\"Гундару\";\"other\"\n\"2164253\";\"Gundagai\";\"main\"\n\"2164352\";\"Gulgong\";\"main\"\n\"2164422\";\"Griffith\";\"main\"\n\"2164451\";\"Greta\";\"main\"\n\"2164457\";\"Grenfell\";\"main\"\n\"2164487\";\"Greenwell Point\";\"main\"\n\"2164515\";\"Greensborough\";\"main\"\n\"2164691\";\"Granville\";\"main\"\n\"2164691\";\"Granville Junction\";\"other\"\n\"2164700\";\"Granton\";\"main\"\n\"2164771\";\"Grafton\";\"main\"\n\"2164771\";\"Графтон\";\"other\"\n\"2164837\";\"Goulburn\";\"main\"\n\"2164837\";\"Gulbern\";\"other\"\n\"2164837\";\"Гулберн\";\"other\"\n\"2164849\";\"Gosford\";\"main\"\n\"2164849\";\"Госфорд\";\"other\"\n\"2164855\";\"Gorokan\";\"main\"\n\"2164904\";\"Gordon\";\"main\"\n\"2164966\";\"Goonellabah\";\"main\"\n\"2165065\";\"Gol Gol\";\"main\"\n\"2165087\";\"Gold Coast\";\"main\"\n\"2165087\";\"Costa Dorada\";\"other\"\n\"2165087\";\"Gold\";\"other\"\n\"2165087\";\"Gold Koust\";\"other\"\n\"2165087\";\"gorudokosuto\";\"other\"\n\"2165087\";\"huang jin hai an\";\"other\"\n\"2165087\";\"Голд Коуст\";\"other\"\n\"2165087\";\"ゴールドコースト\";\"other\"\n\"2165087\";\"ゴールド・コースト\";\"other\"\n\"2165087\";\"黃金海岸\";\"other\"\n\"2165087\";\"黄金海岸\";\"other\"\n\"2165159\";\"Gloucester\";\"main\"\n\"2165225\";\"Glenorie\";\"main\"\n\"2165229\";\"Glenorchy\";\"main\"\n\"2165291\";\"Glen Innes\";\"main\"\n\"2165303\";\"Glenhaven\";\"main\"\n\"2165326\";\"Glenfield\";\"main\"\n\"2165403\";\"Glenbrook\";\"main\"\n\"2165478\";\"Gladstone\";\"main\"\n\"2165478\";\"Glehdston\";\"other\"\n\"2165478\";\"Глэдстон\";\"other\"\n\"2165596\";\"Gilgandra\";\"main\"\n\"2165597\";\"Gilgai\";\"main\"\n\"2165692\";\"Gerringong\";\"main\"\n\"2165692\";\"Geringong\";\"other\"\n\"2165692\";\"Геррингонг\";\"other\"\n\"2165718\";\"George Town\";\"main\"\n\"2165718\";\"Dzhordzh Taun\";\"other\"\n\"2165718\";\"Georgetown\";\"other\"\n\"2165718\";\"Джордж Таун\";\"other\"\n\"2165791\";\"Geeveston\";\"main\"\n\"2165796\";\"Geelong West\";\"main\"\n\"2165798\";\"Geelong\";\"main\"\n\"2165798\";\"Dzhilong\";\"other\"\n\"2165798\";\"Джилонг\";\"other\"\n\"2165818\";\"Gayndah\";\"main\"\n\"2165828\";\"Gatton\";\"main\"\n\"2165828\";\"Гаттон\";\"other\"\n\"2165947\";\"Galston\";\"main\"\n\"2166113\";\"Frederickton\";\"main\"\n\"2166143\";\"Frankston East\";\"main\"\n\"2166143\";\"Frenkston\";\"other\"\n\"2166143\";\"Френкстон\";\"other\"\n\"2166160\";\"Franklin\";\"main\"\n\"2166309\";\"Forster\";\"main\"\n\"2166335\";\"Forest Hill\";\"main\"\n\"2166335\";\"Forest Khill\";\"other\"\n\"2166335\";\"Форест Хилл\";\"other\"\n\"2166368\";\"Forbes\";\"main\"\n\"2166368\";\"Forbs\";\"other\"\n\"2166368\";\"Форбс\";\"other\"\n\"2166675\";\"Finley\";\"main\"\n\"2166814\";\"Federal\";\"main\"\n\"2166893\";\"Falls Creek\";\"main\"\n\"2167050\";\"Evans Head\";\"main\"\n\"2167056\";\"Evandale\";\"main\"\n\"2167145\";\"Eulomogo\";\"main\"\n\"2167183\";\"Ettalong Beach\";\"main\"\n\"2167185\";\"Ettalong\";\"main\"\n\"2167263\";\"Erina\";\"main\"\n\"2167280\";\"Epping\";\"main\"\n\"2167312\";\"Engadine\";\"main\"\n\"2167391\";\"Empire Bay\";\"main\"\n\"2167426\";\"Emerald\";\"main\"\n\"2167426\";\"Ehmeral'd\";\"other\"\n\"2167426\";\"Эмеральд\";\"other\"\n\"2167699\";\"Eglinton\";\"main\"\n\"2167799\";\"Eden\";\"main\"\n\"2167799\";\"Ehden\";\"other\"\n\"2167799\";\"Эден\";\"other\"\n\"2167817\";\"Echuca\";\"main\"\n\"2167869\";\"East Maitland\";\"main\"\n\"2167879\";\"East Hills\";\"main\"\n\"2167882\";\"East Gosford\";\"main\"\n\"2167943\";\"East Ballina\";\"main\"\n\"2167949\";\"Earlwood\";\"main\"\n\"2168112\";\"Dungog\";\"main\"\n\"2168128\";\"Dunedoo\";\"main\"\n\"2168305\";\"Dubbo\";\"main\"\n\"2168305\";\"Dabbo\";\"other\"\n\"2168305\";\"Даббо\";\"other\"\n\"2168459\";\"Douglas Park\";\"main\"\n\"2168459\";\"Pikton\";\"other\"\n\"2168459\";\"Пиктон\";\"other\"\n\"2168534\";\"Dorrigo\";\"main\"\n\"2168546\";\"Dora Creek\";\"main\"\n\"2168556\";\"Doonside\";\"main\"\n\"2168943\";\"Devonport\";\"main\"\n\"2168943\";\"Devenport\";\"other\"\n\"2168943\";\"Девонпорт\";\"other\"\n\"2169056\";\"Denman\";\"main\"\n\"2169068\";\"Deniliquin\";\"main\"\n\"2169113\";\"Deloraine\";\"main\"\n\"2169113\";\"Dehlorehjn\";\"other\"\n\"2169113\";\"Дэлорэйн\";\"other\"\n\"2169220\";\"Deception Bay\";\"main\"\n\"2169302\";\"Davistown\";\"main\"\n\"2169314\";\"Davidson\";\"main\"\n\"2169371\";\"Darlington Point\";\"main\"\n\"2169371\";\"Darling Point\";\"other\"\n\"2169371\";\"Дарлинг Поинт\";\"other\"\n\"2169378\";\"Darlinghurst\";\"main\"\n\"2169405\";\"Dareton\";\"main\"\n\"2169413\";\"Darch\";\"main\"\n\"2169423\";\"Dapto\";\"main\"\n\"2169535\";\"Dalby\";\"main\"\n\"2169535\";\"Dalbi\";\"other\"\n\"2169535\";\"Далби\";\"other\"\n\"2169574\";\"Daceyville\";\"main\"\n\"2169589\";\"Cygnet\";\"main\"\n\"2169736\";\"Cundletown\";\"main\"\n\"2169736\";\"Cundle\";\"other\"\n\"2169801\";\"Culcairn\";\"main\"\n\"2169868\";\"Croydon\";\"main\"\n\"2169928\";\"Crookwell\";\"main\"\n\"2169928\";\"Krukvell\";\"other\"\n\"2169928\";\"Круквелл\";\"other\"\n\"2169956\";\"Cronulla\";\"main\"\n\"2169956\";\"Cronulla Beach\";\"other\"\n\"2169956\";\"Gunnamatta\";\"other\"\n\"2169990\";\"Cringila\";\"main\"\n\"2170013\";\"Crescent Head\";\"main\"\n\"2170078\";\"Cranbourne\";\"main\"\n\"2170089\";\"Craigieburn\";\"main\"\n\"2170139\";\"Cowra\";\"main\"\n\"2170162\";\"Cowes\";\"main\"\n\"2170162\";\"Kaus\";\"other\"\n\"2170162\";\"Каус\";\"other\"\n\"2170190\";\"Coutts Crossing\";\"main\"\n\"2170253\";\"Corrimal\";\"main\"\n\"2170253\";\"Corrima\";\"other\"\n\"2170260\";\"Corowa\";\"main\"\n\"2170375\";\"Coraki\";\"main\"\n\"2170430\";\"Cootamundra\";\"main\"\n\"2170430\";\"Cootamundry\";\"other\"\n\"2170430\";\"Kutamundra\";\"other\"\n\"2170430\";\"Кутамундра\";\"other\"\n\"2170456\";\"Cooranbong\";\"main\"\n\"2170456\";\"Coorumbung\";\"other\"\n\"2170534\";\"Coonamble\";\"main\"\n\"2170540\";\"Coonabarabran\";\"main\"\n\"2170540\";\"Coonabarrabran\";\"other\"\n\"2170577\";\"Cooma\";\"main\"\n\"2170577\";\"Comma\";\"other\"\n\"2170577\";\"Kuma\";\"other\"\n\"2170577\";\"Кума\";\"other\"\n\"2170581\";\"Coolum Beach\";\"main\"\n\"2170581\";\"Coolum\";\"other\"\n\"2170634\";\"Coolamon\";\"main\"\n\"2170697\";\"Coogee\";\"main\"\n\"2170796\";\"Coniston\";\"main\"\n\"2170841\";\"Condobolin\";\"main\"\n\"2170841\";\"Condoublin\";\"other\"\n\"2170852\";\"Concord\";\"main\"\n\"2170880\";\"Como\";\"main\"\n\"2170954\";\"Colo Vale\";\"main\"\n\"2171069\";\"Colac\";\"main\"\n\"2171069\";\"Kolak\";\"other\"\n\"2171069\";\"Колак\";\"other\"\n\"2171085\";\"Coffs Harbour\";\"main\"\n\"2171085\";\"Kofs-Kharbor\";\"other\"\n\"2171085\";\"Кофс-Харбор\";\"other\"\n\"2171197\";\"Cobbitty\";\"main\"\n\"2171197\";\"Cobbity\";\"other\"\n\"2171216\";\"Cobar\";\"main\"\n\"2171320\";\"Clifton Springs\";\"main\"\n\"2171320\";\"Klifton Springs\";\"other\"\n\"2171320\";\"Клифтон Спрингс\";\"other\"\n\"2171360\";\"Cleveland\";\"main\"\n\"2171465\";\"Clarence Town\";\"main\"\n\"2171476\";\"Claremont\";\"main\"\n\"2171507\";\"Wollongong\";\"main\"\n\"2171507\";\"City of Greater Wollongong\";\"other\"\n\"2171507\";\"Vullongong\";\"other\"\n\"2171507\";\"wo long gang\";\"other\"\n\"2171507\";\"Вуллонгонг\";\"other\"\n\"2171507\";\"卧龙岗\";\"other\"\n\"2171586\";\"Chipping Norton\";\"main\"\n\"2171589\";\"Chippendale\";\"main\"\n\"2171594\";\"Chinderah\";\"main\"\n\"2171707\";\"Chatswood\";\"main\"\n\"2171722\";\"Charters Towers\";\"main\"\n\"2171766\";\"Charlestown\";\"main\"\n\"2171845\";\"Cessnock\";\"main\"\n\"2171845\";\"Sesnok\";\"other\"\n\"2171845\";\"Сеснок\";\"other\"\n\"2172106\";\"Castlemaine\";\"main\"\n\"2172111\";\"Castle Hill\";\"main\"\n\"2172125\";\"Castlecrag\";\"main\"\n\"2172153\";\"Casino\";\"main\"\n\"2172303\";\"Carlingford\";\"main\"\n\"2172311\";\"Caringbah\";\"main\"\n\"2172349\";\"Cardiff\";\"main\"\n\"2172453\";\"Canowindra\";\"main\"\n\"2172517\";\"Canberra\";\"main\"\n\"2172517\";\"Camberra\";\"other\"\n\"2172517\";\"Kamberra\";\"other\"\n\"2172517\";\"Kampera\";\"other\"\n\"2172517\";\"Kanbera\";\"other\"\n\"2172517\";\"Kanbero\";\"other\"\n\"2172517\";\"Kanberra\";\"other\"\n\"2172517\";\"kaenbeola\";\"other\"\n\"2172517\";\"kainabara\";\"other\"\n\"2172517\";\"kan pei la\";\"other\"\n\"2172517\";\"kanbra\";\"other\"\n\"2172517\";\"kanpara\";\"other\"\n\"2172517\";\"kenabera\";\"other\"\n\"2172517\";\"kyanabera\";\"other\"\n\"2172517\";\"kyanbera\";\"other\"\n\"2172517\";\"qnbrh\";\"other\"\n\"2172517\";\"Καμπέρα\";\"other\"\n\"2172517\";\"Канбера\";\"other\"\n\"2172517\";\"Канберра\";\"other\"\n\"2172517\";\"Կանբերա\";\"other\"\n\"2172517\";\"קנברה\";\"other\"\n\"2172517\";\"كانبېرا\";\"other\"\n\"2172517\";\"کانبرا\";\"other\"\n\"2172517\";\"कॅनबेरा\";\"other\"\n\"2172517\";\"कैनबरा\";\"other\"\n\"2172517\";\"ক্যানবেরা\";\"other\"\n\"2172517\";\"கன்பரா\";\"other\"\n\"2172517\";\"แคนเบอร์รา\";\"other\"\n\"2172517\";\"ካንቤራ\";\"other\"\n\"2172517\";\"キャンベラ\";\"other\"\n\"2172517\";\"堪培拉\";\"other\"\n\"2172517\";\"캔버라\";\"other\"\n\"2172563\";\"Camperdown\";\"main\"\n\"2172586\";\"Campbelltown\";\"main\"\n\"2172677\";\"Cambridge\";\"main\"\n\"2172710\";\"Caloundra\";\"main\"\n\"2172710\";\"Kalundra\";\"other\"\n\"2172710\";\"Калундра\";\"other\"\n\"2172797\";\"Cairns\";\"main\"\n\"2172797\";\"Kerns\";\"other\"\n\"2172797\";\"kai en si\";\"other\"\n\"2172797\";\"keanzu\";\"other\"\n\"2172797\";\"Кернс\";\"other\"\n\"2172797\";\"ケアンズ\";\"other\"\n\"2172797\";\"凱恩斯\";\"other\"\n\"2172832\";\"Caboolture\";\"main\"\n\"2172880\";\"Byron Bay\";\"main\"\n\"2172930\";\"Buxton\";\"main\"\n\"2173041\";\"Burringbar\";\"main\"\n\"2173099\";\"Burpengary\";\"main\"\n\"2173125\";\"Burnie\";\"main\"\n\"2173248\";\"Bungendore\";\"main\"\n\"2173306\";\"Bundanoon\";\"main\"\n\"2173323\";\"Bundaberg\";\"main\"\n\"2173323\";\"Bandaberg\";\"other\"\n\"2173323\";\"Бандаберг\";\"other\"\n\"2173445\";\"Bulli\";\"main\"\n\"2173557\";\"Bulahdelah\";\"main\"\n\"2173557\";\"Bullah Delah\";\"other\"\n\"2173592\";\"Budgewoi\";\"main\"\n\"2173605\";\"Buderim\";\"main\"\n\"2173738\";\"Brunswick Heads\";\"main\"\n\"2173738\";\"Brunswick\";\"other\"\n\"2173741\";\"Brunswick\";\"main\"\n\"2173824\";\"Broulee\";\"main\"\n\"2173911\";\"Broken Hill\";\"main\"\n\"2173911\";\"Broken-Khill\";\"other\"\n\"2173911\";\"Willyama\";\"other\"\n\"2173911\";\"burokunhiru\";\"other\"\n\"2173911\";\"Брокен-Хилл\";\"other\"\n\"2173911\";\"ブロークンヒル\";\"other\"\n\"2173964\";\"Broadmeadows\";\"main\"\n\"2174003\";\"Brisbane\";\"main\"\n\"2174003\";\"Brisbane City\";\"other\"\n\"2174003\";\"Brisbano\";\"other\"\n\"2174003\";\"Brisben\";\"other\"\n\"2174003\";\"Brisbenas\";\"other\"\n\"2174003\";\"Brizbejn\";\"other\"\n\"2174003\";\"beulijeubeon\";\"other\"\n\"2174003\";\"brisben\";\"other\"\n\"2174003\";\"brysban\";\"other\"\n\"2174003\";\"bryzbyn\";\"other\"\n\"2174003\";\"bryzbyyn\";\"other\"\n\"2174003\";\"bu li si ban\";\"other\"\n\"2174003\";\"burisuben\";\"other\"\n\"2174003\";\"pirispen\";\"other\"\n\"2174003\";\"Бризбейн\";\"other\"\n\"2174003\";\"Брисбен\";\"other\"\n\"2174003\";\"בריזביין\";\"other\"\n\"2174003\";\"برىسبان\";\"other\"\n\"2174003\";\"بريزبين\";\"other\"\n\"2174003\";\"بریزبین\";\"other\"\n\"2174003\";\"பிறிஸ்பேன்\";\"other\"\n\"2174003\";\"บริสเบน\";\"other\"\n\"2174003\";\"ブリスベン\";\"other\"\n\"2174003\";\"布里斯班\";\"other\"\n\"2174003\";\"브리즈번\";\"other\"\n\"2174006\";\"Bringelly\";\"main\"\n\"2174066\";\"Bridport\";\"main\"\n\"2174066\";\"Бридпорт\";\"other\"\n\"2174079\";\"Bridgewater\";\"main\"\n\"2174079\";\"Bridge Water Junction\";\"other\"\n\"2174079\";\"North Bridgewater\";\"other\"\n\"2174123\";\"Brewarrina\";\"main\"\n\"2174190\";\"Branxton\";\"main\"\n\"2174254\";\"Braidwood\";\"main\"\n\"2174396\";\"Bowraville\";\"main\"\n\"2174396\";\"Bowra\";\"other\"\n\"2174400\";\"Bowral\";\"main\"\n\"2174436\";\"Bowenfels\";\"main\"\n\"2174436\";\"South Bowenfels\";\"other\"\n\"2174444\";\"Bowen\";\"main\"\n\"2174467\";\"Bourke\";\"main\"\n\"2174563\";\"Botany\";\"main\"\n\"2174615\";\"Bordertown\";\"main\"\n\"2174615\";\"Bordertaun\";\"other\"\n\"2174615\";\"Бордертаун\";\"other\"\n\"2174669\";\"Boorowa\";\"main\"\n\"2174853\";\"Booker Bay\";\"main\"\n\"2174892\";\"Bonville\";\"main\"\n\"2174933\";\"Bongaree\";\"main\"\n\"2174933\";\"Bribie\";\"other\"\n\"2174973\";\"Bombala\";\"main\"\n\"2174973\";\"Bomballa\";\"other\"\n\"2174976\";\"Bomaderry\";\"main\"\n\"2174979\";\"Bolwarra\";\"main\"\n\"2175076\";\"Boggabri\";\"main\"\n\"2175076\";\"Bogabri\";\"other\"\n\"2175077\";\"Boggabilla\";\"main\"\n\"2175159\";\"Boambee\";\"main\"\n\"2175338\";\"Blayney\";\"main\"\n\"2175341\";\"Blaxland\";\"main\"\n\"2175375\";\"Blair Athol\";\"main\"\n\"2175403\";\"Blackwater\";\"main\"\n\"2175408\";\"Blackwall\";\"main\"\n\"2175411\";\"Blacktown\";\"main\"\n\"2175527\";\"Blackmans Bay\";\"main\"\n\"2175527\";\"Blackman Bay\";\"other\"\n\"2175553\";\"Blackheath\";\"main\"\n\"2175760\";\"Bingara\";\"main\"\n\"2175819\";\"Biloela\";\"main\"\n\"2175872\";\"Bilambil\";\"main\"\n\"2175974\";\"Bexley\";\"main\"\n\"2176053\";\"Berry\";\"main\"\n\"2176053\";\"Berri\";\"other\"\n\"2176053\";\"Берри\";\"other\"\n\"2176065\";\"Berrigan\";\"main\"\n\"2176065\";\"Berrigehn\";\"other\"\n\"2176065\";\"Берригэн\";\"other\"\n\"2176066\";\"Berriedale\";\"main\"\n\"2176067\";\"Berridale\";\"main\"\n\"2176071\";\"Berri\";\"main\"\n\"2176071\";\"Берри\";\"other\"\n\"2176081\";\"Berowra\";\"main\"\n\"2176087\";\"Bermagui\";\"main\"\n\"2176087\";\"Bermaguee\";\"other\"\n\"2176088\";\"Berkeley Vale\";\"main\"\n\"2176090\";\"Berkeley\";\"main\"\n\"2176096\";\"Beresfield\";\"main\"\n\"2176123\";\"Bentleigh\";\"main\"\n\"2176124\";\"Bensville\";\"main\"\n\"2176187\";\"Bendigo\";\"main\"\n\"2176187\";\"bendigo\";\"other\"\n\"2176187\";\"Бендиго\";\"other\"\n\"2176225\";\"Benalla\";\"main\"\n\"2176263\";\"Belmont\";\"main\"\n\"2176295\";\"Bellingen\";\"main\"\n\"2176313\";\"Bellerive\";\"main\"\n\"2176373\";\"Belconnen\";\"main\"\n\"2176401\";\"Bega\";\"main\"\n\"2176401\";\"Бега\";\"other\"\n\"2176478\";\"Beauty Point\";\"main\"\n\"2176478\";\"B'juti Point\";\"other\"\n\"2176478\";\"Бьюти Поинт\";\"other\"\n\"2176537\";\"Beaconsfield Upper\";\"main\"\n\"2176537\";\"Upper Beaconsfield\";\"other\"\n\"2176541\";\"Beaconsfield\";\"main\"\n\"2176639\";\"Batemans Bay\";\"main\"\n\"2176639\";\"Bateman\";\"other\"\n\"2176639\";\"Batemans\";\"other\"\n\"2176829\";\"Barmera\";\"main\"\n\"2176934\";\"Banora Point\";\"main\"\n\"2177069\";\"Ballina\";\"main\"\n\"2177069\";\"West Ballina\";\"other\"\n\"2177091\";\"Ballarat\";\"main\"\n\"2177091\";\"Ballaarat\";\"other\"\n\"2177091\";\"Балларат\";\"other\"\n\"2177233\";\"Bairnsdale\";\"main\"\n\"2177233\";\"Bairsdale\";\"other\"\n\"2177394\";\"Bacchus Marsh\";\"main\"\n\"2177413\";\"Ayr\";\"main\"\n\"2177481\";\"Austins Ferry\";\"main\"\n\"2177541\";\"Atherton\";\"main\"\n\"2177671\";\"Armidale\";\"main\"\n\"2177671\";\"Armidejl\";\"other\"\n\"2177671\";\"Армидейл\";\"other\"\n\"2177756\";\"Ararat\";\"main\"\n\"2177756\";\"Butingitch\";\"other\"\n\"2177756\";\"Арарат\";\"other\"\n\"2177810\";\"Apollo Bay\";\"main\"\n\"2177810\";\"Apollo Behj\";\"other\"\n\"2177810\";\"Kambruk\";\"other\"\n\"2177810\";\"Krambruck\";\"other\"\n\"2177810\";\"Krambruk\";\"other\"\n\"2177810\";\"Аполло Бэй\";\"other\"\n\"2177872\";\"Anglesea\";\"main\"\n\"2177872\";\"Anglesea River\";\"other\"\n\"2177872\";\"Ehnglsi\";\"other\"\n\"2177872\";\"Энглси\";\"other\"\n\"2178174\";\"Albury\";\"main\"\n\"2178174\";\"Olberi\";\"other\"\n\"2178174\";\"Олбери\";\"other\"\n\"2205625\";\"Holmesville\";\"main\"\n\"2205628\";\"Lambton\";\"main\"\n\"2205629\";\"New Lambton\";\"main\"\n\"2205631\";\"Raymond Terrace\";\"main\"\n\"2205838\";\"Mayfield\";\"main\"\n\"2205847\";\"Invermay\";\"main\"\n\"2205969\";\"Gymea\";\"main\"\n\"2205970\";\"Kirrawee\";\"main\"\n\"2205971\";\"Loftus\";\"main\"\n\"2205973\";\"Dolans Bay\";\"main\"\n\"2205977\";\"Bundeena\";\"main\"\n\"2205979\";\"Gymea Bay\";\"main\"\n\"2205983\";\"Kareela\";\"main\"\n\"2205987\";\"Bonnet Bay\";\"main\"\n\"2205988\";\"Oyster Bay\";\"main\"\n\"2205989\";\"Grays Point\";\"main\"\n\"2205999\";\"Brighton-Le-Sands\";\"main\"\n\"2206000\";\"Monterey\";\"main\"\n\"2206001\";\"Ramsgate\";\"main\"\n\"2206003\";\"Blakehurst\";\"main\"\n\"2206004\";\"Connells Point\";\"main\"\n\"2206006\";\"Lugarno\";\"main\"\n\"2206007\";\"Peakhurst\";\"main\"\n\"2206008\";\"Padstow\";\"main\"\n\"2206048\";\"Goodwood\";\"main\"\n\"2206066\";\"Lutana\";\"main\"\n\"2206068\";\"New Town\";\"main\"\n\"2206082\";\"Lake Heights\";\"main\"\n\"2206089\";\"Sandy Bay\";\"main\"\n\"2206108\";\"Fairy Meadow\";\"main\"\n\"2206110\";\"Mount Ousley\";\"main\"\n\"2206111\";\"Mount Keira\";\"main\"\n\"2206112\";\"Gwynneville\";\"main\"\n\"2206116\";\"Mangerton\";\"main\"\n\"2206117\";\"Mount Saint Thomas\";\"main\"\n\"2206599\";\"Palm Cove\";\"main\"\n\"2206601\";\"Yorkeys Knob\";\"main\"\n\"2206601\";\"Yorkeys Knob Beach\";\"other\"\n\"2207259\";\"South Brisbane\";\"main\"\n\"2207330\";\"Scarborough\";\"main\"\n\"2207611\";\"North Brighton\";\"main\"\n\"2207748\";\"Bellevue Hill\";\"main\"\n\"2207752\";\"Pyrmont\";\"main\"\n\"2207753\";\"Paddington\";\"main\"\n\"2207753\";\"Sydney\";\"other\"\n\"2207753\";\"NSW\";\"other\"\n\"2207762\";\"Lilyfield\";\"main\"\n\"2207783\";\"Drummoyne\";\"main\"\n\"2207796\";\"Greenwich\";\"main\"\n\"2207809\";\"Hunters Hill\";\"main\"\n\"2207817\";\"Longueville\";\"main\"\n\"2207821\";\"Crows Nest\";\"main\"\n\"2207822\";\"Cammeray\";\"main\"\n\"2207841\";\"Clontarf\";\"main\"\n\"2207879\";\"Cremorne\";\"main\"\n\"2207880\";\"Neutral Bay\";\"main\"\n\"2207901\";\"Point Piper\";\"main\"\n\"2207908\";\"Darling Point\";\"main\"\n\"2207912\";\"Dover Heights\";\"main\"\n\"2208285\";\"Randwick\";\"main\"\n\"2208286\";\"Clovelly\";\"main\"\n\"2208288\";\"Bronte\";\"main\"\n\"2208290\";\"Bondi\";\"main\"\n\"2208292\";\"Gladesville\";\"main\"\n\"2208302\";\"Forestville\";\"main\"\n\"2208303\";\"Brookvale\";\"main\"\n\"2208304\";\"Curl Curl\";\"main\"\n\"2208305\";\"Dee Why\";\"main\"\n\"6254975\";\"Blairgowrie\";\"main\"\n\"6255012\";\"Flinders\";\"main\"\n\"6301965\";\"Palmerston\";\"main\"\n\"6301965\";\"Палмерстон\";\"other\"\n\"6354929\";\"Tom Price\";\"main\"\n\"6533368\";\"Moranbah\";\"main\"\n\"6615520\";\"Heyfield\";\"main\"\n\"6619483\";\"Kaleen\";\"main\"\n\"6620339\";\"Karratha\";\"main\"\n\"6620339\";\"Karatha\";\"other\"\n\"6621335\";\"Enfield\";\"main\"\n\"6621336\";\"Hillarys\";\"main\"\n\"6621337\";\"Kingsford\";\"main\"\n\"6621338\";\"Klemzig\";\"main\"\n\"6621354\";\"Osborne Park\";\"main\"\n\"6621356\";\"Seven Mile Beach\";\"main\"\n\"6639615\";\"Canberra Capital Hill\";\"main\"\n\"6690772\";\"Corlette\";\"main\"\n\"6692202\";\"Burswood\";\"main\"\n\"6692248\";\"Howrah\";\"main\"\n\"6693094\";\"Springfield Lakes\";\"main\"\n\"6693769\";\"North Narrabeen\";\"main\"\n\"6695255\";\"Joondalup\";\"main\"\n\"6695266\";\"Como\";\"main\"\n\"6697124\";\"East Lismore\";\"main\"\n\"6697141\";\"Mindarie\";\"main\"\n\"6697150\";\"Clarkson\";\"main\"\n\"6697151\";\"Kinross\";\"main\"\n\"6697152\";\"Currambine\";\"main\"\n\"6697153\";\"Iluka\";\"main\"\n\"6697155\";\"Heathridge\";\"main\"\n\"6776556\";\"Girraween\";\"main\"\n\"6930431\";\"Freshwater\";\"main\"\n\"6930555\";\"Tieri\";\"main\"\n\"6931018\";\"Taringa\";\"main\"\n\"6941781\";\"Main Beach\";\"main\"\n\"6943454\";\"Paradise\";\"main\"\n\"6943455\";\"Blair Athol\";\"main\"\n\"6943474\";\"Athelstone\";\"main\"\n\"6943551\";\"Wooloowin\";\"main\"\n\"6943555\";\"Zillmere\";\"main\"\n\"6943556\";\"Taigum\";\"main\"\n\"6943568\";\"Woolloongabba\";\"main\"\n\"6943572\";\"Toowong\";\"main\"\n\"6943579\";\"Windsor\";\"main\"\n\"6944968\";\"Twin Waters\";\"main\"\n\"6949375\";\"Canada Bay\";\"main\"\n\"6949376\";\"Camden\";\"main\"\n\"6949377\";\"Canterbury\";\"main\"\n\"6951335\";\"Forresters Beach\";\"main\"\n\"6951440\";\"Tamborine Mountain\";\"main\"\n\"6951440\";\"Mount Tamborine\";\"other\"\n\"6952201\";\"East Melbourne\";\"main\"\n\"6952201\";\"Melbourne East\";\"other\"\n\"6955345\";\"Rainbow Beach\";\"main\"\n\"7280463\";\"North Shore\";\"main\"\n\"7281804\";\"North Melbourne\";\"main\"\n\"7281804\";\"Melbourne North\";\"other\"\n\"7281805\";\"Caroline Springs\";\"main\"\n\"7281807\";\"Hoppers Crossing\";\"main\"\n\"7281818\";\"West Melbourne\";\"main\"\n\"7281818\";\"Melbourne West\";\"other\"\n\"7281823\";\"Rouse Hill\";\"main\"\n\"7281838\";\"Logan City\";\"main\"\n\"7281838\";\"Logan\";\"other\"\n\"7281839\";\"Carindale\";\"main\"\n\"7281840\";\"Paramatta\";\"main\"\n\"7281844\";\"Macquarie\";\"main\"\n\"7281850\";\"Ferntree Gully\";\"main\"\n\"7289886\";\"Fullarton\";\"main\"\n\"7302189\";\"Macarthur\";\"main\"\n\"7302259\";\"City of Parramatta\";\"main\"\n\"7302259\";\"Parramatta\";\"other\"\n\"7302624\";\"Phillip Island\";\"main\"\n\"7302625\";\"Springwood\";\"main\"\n\"7302628\";\"Adelaide Hills\";\"main\"\n\"7302629\";\"Erskine\";\"main\"\n\"7302631\";\"Canning Vale\";\"main\"\n\"7302634\";\"Varsity Lakes\";\"main\"\n\"7302635\";\"Roselands\";\"main\"\n\"7302638\";\"Oxenford\";\"main\"\n\"7302640\";\"Toormina\";\"main\"\n\"7302642\";\"Glenmore Park\";\"main\"\n\"7303211\";\"Magnetic Island\";\"main\"\n\"3577154\";\"Oranjestad\";\"main\"\n\"3577154\";\"Oran'estad\";\"other\"\n\"3577154\";\"Oraniestad\";\"other\"\n\"3577154\";\"oraniesutaddo\";\"other\"\n\"3577154\";\"Ораниестад\";\"other\"\n\"3577154\";\"Ораньестад\";\"other\"\n\"3577154\";\"オラニエスタッド\";\"other\"\n\"3577277\";\"Babijn\";\"main\"\n\"3577282\";\"Arasji\";\"main\"\n\"3577282\";\"Arashi\";\"other\"\n\"3577284\";\"Angochi\";\"main\"\n\"635815\";\"Sund\";\"main\"\n\"637878\";\"Saltvik\";\"main\"\n\"648382\";\"Lemland\";\"main\"\n\"3041732\";\"Mariehamn\";\"main\"\n\"3041732\";\"Maarianhamina\";\"other\"\n\"3041732\";\"Marianhamina\";\"other\"\n\"3041732\";\"Mariankhamina\";\"other\"\n\"3041732\";\"Mariehameena\";\"other\"\n\"3041732\";\"Mariekhamn\";\"other\"\n\"3041732\";\"Mariuhoefn\";\"other\"\n\"3041732\";\"Mariyekhamn\";\"other\"\n\"3041732\";\"Marrianhamina\";\"other\"\n\"3041732\";\"Maríuhöfn\";\"other\"\n\"3041732\";\"mariehamun\";\"other\"\n\"3041732\";\"Мариехамн\";\"other\"\n\"3041732\";\"マリエハムン\";\"other\"\n\"3041760\";\"Jomala\";\"main\"\n\"3041776\";\"Hammarland\";\"main\"\n\"3041776\";\"Khammarland\";\"other\"\n\"3041798\";\"Finström\";\"main\"\n\"3041798\";\"Finstrom\";\"ascii\"\n\"3041798\";\"Finstroem\";\"other\"\n\"3041807\";\"Eckerö\";\"main\"\n\"3041807\";\"Eckero\";\"ascii\"\n\"3041807\";\"Eckeroe\";\"other\"\n\"146862\";\"Göytəpə\";\"main\"\n\"146862\";\"Goytapa\";\"ascii\"\n\"146862\";\"Geytepe\";\"other\"\n\"146862\";\"Prishib\";\"other\"\n\"146862\";\"Prishibinske\";\"other\"\n\"146862\";\"Prishibinskoe\";\"other\"\n\"146862\";\"Prishibinskoye\";\"other\"\n\"146901\";\"İçəri\";\"main\"\n\"146901\";\"Icari\";\"ascii\"\n\"146901\";\"Ikari\";\"other\"\n\"146901\";\"Zangelan\";\"other\"\n\"146901\";\"Zangilak\";\"other\"\n\"146901\";\"Zangilan\";\"other\"\n\"146901\";\"Zəngilan\";\"other\"\n\"146961\";\"Yardımlı\";\"main\"\n\"146961\";\"Yardimli\";\"ascii\"\n\"146961\";\"Iardymly\";\"other\"\n\"146961\";\"Jardymly\";\"other\"\n\"146961\";\"Yardymly\";\"other\"\n\"146961\";\"Ярдымлы\";\"other\"\n\"146969\";\"Xocavənd\";\"main\"\n\"146969\";\"Xocavand\";\"ascii\"\n\"146969\";\"Martouni\";\"other\"\n\"146969\";\"Martuni\";\"other\"\n\"146969\";\"Novyy Karanlug\";\"other\"\n\"146969\";\"Мартуни\";\"other\"\n\"146969\";\"Մարտունի\";\"other\"\n\"146970\";\"Xankǝndi\";\"main\"\n\"146970\";\"Chankaendi\";\"other\"\n\"146970\";\"Chankändi\";\"other\"\n\"146970\";\"Hankendi\";\"other\"\n\"146970\";\"Khankendy\";\"other\"\n\"146970\";\"Stepanakert\";\"other\"\n\"146970\";\"Xankəndi\";\"other\"\n\"146970\";\"astpanakrt\";\"other\"\n\"146970\";\"stpnqrt\";\"other\"\n\"146970\";\"Степанакерт\";\"other\"\n\"146970\";\"סטפנקרט\";\"other\"\n\"146970\";\"استپاناکرت\";\"other\"\n\"147059\";\"Tel’mankend\";\"main\"\n\"147059\";\"Tel'mankend\";\"ascii\"\n\"147105\";\"Şuşa\";\"main\"\n\"147105\";\"Susa\";\"ascii\"\n\"147105\";\"Shoushi\";\"other\"\n\"147105\";\"Shusha\";\"other\"\n\"147105\";\"Shushe\";\"other\"\n\"147105\";\"Shushi\";\"other\"\n\"147105\";\"Susi\";\"other\"\n\"147105\";\"Szusza\";\"other\"\n\"147105\";\"shwshy\";\"other\"\n\"147105\";\"swsh\";\"other\"\n\"147105\";\"Шуша\";\"other\"\n\"147105\";\"Շուշե\";\"other\"\n\"147105\";\"Շուշի\";\"other\"\n\"147105\";\"שושה\";\"other\"\n\"147105\";\"شوشی\";\"other\"\n\"147271\";\"Salyan\";\"main\"\n\"147271\";\"Sal'jan\";\"other\"\n\"147271\";\"Sal'yany\";\"other\"\n\"147271\";\"Salian\";\"other\"\n\"147271\";\"Sal’yany\";\"other\"\n\"147271\";\"Ssaljany\";\"other\"\n\"147271\";\"Сальян\";\"other\"\n\"147278\";\"Şahbuz\";\"main\"\n\"147278\";\"Sahbuz\";\"ascii\"\n\"147278\";\"Chay-Shakhbuz\";\"other\"\n\"147278\";\"Shahbuz\";\"other\"\n\"147278\";\"Shakhbuz\";\"other\"\n\"147278\";\"Шахбуз\";\"other\"\n\"147282\";\"Sədərək\";\"main\"\n\"147282\";\"Sadarak\";\"ascii\"\n\"147282\";\"Sedarak\";\"other\"\n\"147305\";\"Qubadlı\";\"main\"\n\"147305\";\"Qubadli\";\"ascii\"\n\"147305\";\"Ghubat'ly\";\"other\"\n\"147305\";\"Ghubat’ly\";\"other\"\n\"147305\";\"Koubatly\";\"other\"\n\"147305\";\"Kubatlu\";\"other\"\n\"147305\";\"Kubatly\";\"other\"\n\"147305\";\"Qubadly\";\"other\"\n\"147305\";\"Кубатлы\";\"other\"\n\"147305\";\"Ղուբաթլը\";\"other\"\n\"147307\";\"Qaraçala\";\"main\"\n\"147307\";\"Qaracala\";\"ascii\"\n\"147307\";\"Karachala\";\"other\"\n\"147307\";\"Karachalinskaya\";\"other\"\n\"147364\";\"Orconikidze\";\"main\"\n\"147364\";\"Ordzhonikidze\";\"other\"\n\"147368\";\"Ordubad\";\"main\"\n\"147368\";\"Ordoubat\";\"other\"\n\"147368\";\"Ordubat\";\"other\"\n\"147368\";\"Ордубад\";\"other\"\n\"147425\";\"Neftçala\";\"main\"\n\"147425\";\"Neftcala\";\"ascii\"\n\"147425\";\"Neftechala\";\"other\"\n\"147425\";\"Nephte Chala\";\"other\"\n\"147425\";\"Poselok Tresta\";\"other\"\n\"147425\";\"Нефтечала\";\"other\"\n\"147429\";\"Naxçıvan\";\"main\"\n\"147429\";\"Naxcivan\";\"ascii\"\n\"147429\";\"Nachitschewan\";\"other\"\n\"147429\";\"Nakhchyvan\";\"other\"\n\"147429\";\"Nakhicevan\";\"other\"\n\"147429\";\"Nakhichevan'\";\"other\"\n\"147429\";\"Nakhichevan’\";\"other\"\n\"147429\";\"Nakhjavan\";\"other\"\n\"147429\";\"Нахичевань\";\"other\"\n\"147504\";\"Mincivan\";\"main\"\n\"147504\";\"Mindshewan\";\"other\"\n\"147504\";\"Mindzhevan'\";\"other\"\n\"147504\";\"Mindzhevan’\";\"other\"\n\"147504\";\"Mindzhivan\";\"other\"\n\"147504\";\"Миндживан\";\"other\"\n\"147552\";\"Masallı\";\"main\"\n\"147552\";\"Masalli\";\"ascii\"\n\"147552\";\"Masali\";\"other\"\n\"147552\";\"Masally\";\"other\"\n\"147552\";\"Masalı\";\"other\"\n\"147552\";\"Massaly\";\"other\"\n\"147611\";\"Lerik\";\"main\"\n\"147622\";\"Lǝnkǝran\";\"main\"\n\"147622\";\"Lankaran\";\"other\"\n\"147622\";\"Lencoran\";\"other\"\n\"147622\";\"Lenkoran'\";\"other\"\n\"147622\";\"Länkäran\";\"other\"\n\"147622\";\"Ленкорань\";\"other\"\n\"147625\";\"Laçın\";\"main\"\n\"147625\";\"Lacin\";\"ascii\"\n\"147625\";\"Abdallyar\";\"other\"\n\"147625\";\"Abdalyar\";\"other\"\n\"147625\";\"Berdzor\";\"other\"\n\"147625\";\"Datschin\";\"other\"\n\"147625\";\"Lachin\";\"other\"\n\"147625\";\"Lachyan\";\"other\"\n\"147625\";\"Lachyn\";\"other\"\n\"147625\";\"Lichin\";\"other\"\n\"147625\";\"Лачин\";\"other\"\n\"147695\";\"Qırmızı Bazar\";\"main\"\n\"147695\";\"Qirmizi Bazar\";\"ascii\"\n\"147695\";\"Karmir Shouka\";\"other\"\n\"147695\";\"Karmir Shuka\";\"other\"\n\"147695\";\"Krasnyy Bazar\";\"other\"\n\"147695\";\"Красный Базар\";\"other\"\n\"147695\";\"Կարմիր Շուկա\";\"other\"\n\"147727\";\"Kijoba\";\"main\"\n\"147727\";\"Kijaba\";\"other\"\n\"147727\";\"Kijäba\";\"other\"\n\"147727\";\"Kizhaba\";\"other\"\n\"147774\";\"Xocalı\";\"main\"\n\"147774\";\"Xocali\";\"ascii\"\n\"147774\";\"Ay-Khodzhaly\";\"other\"\n\"147774\";\"Khodgalou\";\"other\"\n\"147774\";\"Khodzhalv\";\"other\"\n\"147774\";\"Khodzhaly\";\"other\"\n\"147774\";\"Khojaly\";\"other\"\n\"147774\";\"Khozhali\";\"other\"\n\"147774\";\"Ходжалы\";\"other\"\n\"147774\";\"Խոջալը\";\"other\"\n\"147784\";\"Xıllı\";\"main\"\n\"147784\";\"Xilli\";\"ascii\"\n\"147784\";\"Khilly\";\"other\"\n\"147784\";\"Yukhary-Khylly\";\"other\"\n\"147982\";\"İmişli\";\"main\"\n\"147982\";\"Imisli\";\"ascii\"\n\"147982\";\"Emishti\";\"other\"\n\"147982\";\"Imishli\";\"other\"\n\"147982\";\"Imishly\";\"other\"\n\"147982\";\"Имишли\";\"other\"\n\"148003\";\"Horadiz\";\"main\"\n\"148003\";\"Geradiz\";\"other\"\n\"148003\";\"Goradiz\";\"other\"\n\"148003\";\"Gorodiz\";\"other\"\n\"148088\";\"Haftoni\";\"main\"\n\"148088\";\"Gaftoni\";\"other\"\n\"148088\";\"Гафтони\";\"other\"\n\"148105\";\"Hadrut\";\"main\"\n\"148105\";\"Gadrut\";\"other\"\n\"148105\";\"Hadrout\";\"other\"\n\"148105\";\"Гадрут\";\"other\"\n\"148105\";\"Հադրութ\";\"other\"\n\"148141\";\"Cəbrayıl\";\"main\"\n\"148141\";\"Cabrayil\";\"ascii\"\n\"148141\";\"Djebrail\";\"other\"\n\"148141\";\"Dzhebrail\";\"other\"\n\"148141\";\"Jabrail\";\"other\"\n\"148141\";\"Jabrayyl\";\"other\"\n\"148141\";\"Jebraiele\";\"other\"\n\"148141\";\"Jebrail\";\"other\"\n\"148141\";\"Jebrayil\";\"other\"\n\"148141\";\"Jäbrayyl\";\"other\"\n\"148141\";\"Ջաբրաիլ\";\"other\"\n\"148251\";\"Julfa\";\"main\"\n\"148251\";\"Culfa\";\"other\"\n\"148251\";\"Dzhul'fa\";\"other\"\n\"148251\";\"Dzhul’fa\";\"other\"\n\"148251\";\"Jolfa\";\"other\"\n\"148251\";\"Jolfa-ye Nakhjavan\";\"other\"\n\"148251\";\"Jolfā\";\"other\"\n\"148251\";\"Jolfā-ye Nakhjavān\";\"other\"\n\"148251\";\"Джульфа\";\"other\"\n\"148251\";\"جلفای نخجوان\";\"other\"\n\"148290\";\"Cəlilabad\";\"main\"\n\"148290\";\"Calilabad\";\"ascii\"\n\"148290\";\"Astrahanka\";\"other\"\n\"148290\";\"Astrakhan-Bazar\";\"other\"\n\"148290\";\"Astrakhanka\";\"other\"\n\"148290\";\"Dzhalilabad\";\"other\"\n\"148290\";\"Jalilabad\";\"other\"\n\"148290\";\"Jälilabad\";\"other\"\n\"148323\";\"Boradigah\";\"main\"\n\"148323\";\"Baradigyakh\";\"other\"\n\"148323\";\"Boradigyakh\";\"other\"\n\"148323\";\"Boradygia\";\"other\"\n\"148323\";\"Boradygiya\";\"other\"\n\"148323\";\"Boradygyakh\";\"other\"\n\"148323\";\"Vardygya\";\"other\"\n\"148340\";\"Biləsuvar\";\"main\"\n\"148340\";\"Bilasuvar\";\"ascii\"\n\"148340\";\"Pushkin\";\"other\"\n\"148340\";\"Pushkino\";\"other\"\n\"148375\";\"Bankə\";\"main\"\n\"148375\";\"Banka\";\"ascii\"\n\"148375\";\"Bank\";\"other\"\n\"148375\";\"Bankov\";\"other\"\n\"148375\";\"Imeni Kirova\";\"other\"\n\"148375\";\"Rybokombinat Imeni Kirova\";\"other\"\n\"148375\";\"Severo-Vostochnyy Bank\";\"other\"\n\"148375\";\"Severo-Vostotchnyi Bank\";\"other\"\n\"148445\";\"Astara\";\"main\"\n\"148445\";\"Azerbaydzhanskaya Astara\";\"other\"\n\"148445\";\"Астара\";\"other\"\n\"148450\";\"Əsgəran\";\"main\"\n\"148450\";\"Asgaran\";\"ascii\"\n\"148450\";\"Askeran\";\"other\"\n\"148450\";\"Askyaran\";\"other\"\n\"148450\";\"Аскеран\";\"other\"\n\"148450\";\"Ասթերան\";\"other\"\n\"148565\";\"Şirvan\";\"main\"\n\"148565\";\"Sirvan\";\"ascii\"\n\"148565\";\"Ali Bairamly\";\"other\"\n\"148565\";\"Ali Bayramli\";\"other\"\n\"148565\";\"Ali-Bairamli\";\"other\"\n\"148565\";\"Ali-Bajramly\";\"other\"\n\"148565\";\"Ali-Bayramli\";\"other\"\n\"148565\";\"Ali-Bayramly\";\"other\"\n\"148565\";\"Aly-Bayramly\";\"other\"\n\"148565\";\"Arab Shakhverdi\";\"other\"\n\"148565\";\"Arab-Shakhberdy\";\"other\"\n\"148565\";\"Arab-Shakhverdy\";\"other\"\n\"148565\";\"Zubovka\";\"other\"\n\"148565\";\"Əli Bayramlı\";\"other\"\n\"148565\";\"Али-Байрамлы\";\"other\"\n\"148619\";\"Ağdam\";\"main\"\n\"148619\";\"Agdam\";\"ascii\"\n\"148619\";\"Aghdam\";\"other\"\n\"148619\";\"Агдам\";\"other\"\n\"148619\";\"Աղդամ\";\"other\"\n\"393443\";\"Həsənabad\";\"main\"\n\"393443\";\"Hasanabad\";\"ascii\"\n\"393443\";\"Sovetabad\";\"other\"\n\"584562\";\"Zirə\";\"main\"\n\"584562\";\"Zira\";\"ascii\"\n\"584562\";\"ZIRJA\";\"other\"\n\"584562\";\"Zirya\";\"other\"\n\"584562\";\"Zirǝ\";\"other\"\n\"584562\";\"Zyrya\";\"other\"\n\"584562\";\"ЗИРЯ\";\"other\"\n\"584586\";\"Zərdab\";\"main\"\n\"584586\";\"Zardab\";\"ascii\"\n\"584586\";\"ZARDOB\";\"other\"\n\"584586\";\"Zardob\";\"other\"\n\"584586\";\"Zǝrdab\";\"other\"\n\"584586\";\"ЗАРДОБ\";\"other\"\n\"584596\";\"Zaqatala\";\"main\"\n\"584596\";\"Sakataly\";\"other\"\n\"584596\";\"ZAKATALY\";\"other\"\n\"584596\";\"Zakatali\";\"other\"\n\"584596\";\"Zakatalsk\";\"other\"\n\"584596\";\"Zakataly\";\"other\"\n\"584596\";\"ЗАКАТАЛЫ\";\"other\"\n\"584614\";\"Zabrat\";\"main\"\n\"584614\";\"Sabrat\";\"other\"\n\"584614\";\"ZABRAT\";\"other\"\n\"584614\";\"ЗАБРАТ\";\"other\"\n\"584649\";\"Yevlax\";\"main\"\n\"584649\";\"Avlakh\";\"other\"\n\"584649\";\"EVLAKH\";\"other\"\n\"584649\";\"Jewlach\";\"other\"\n\"584649\";\"Yevlakh\";\"other\"\n\"584649\";\"ЕВЛАХ\";\"other\"\n\"584715\";\"Xudat\";\"main\"\n\"584715\";\"KHUDAT\";\"other\"\n\"584715\";\"Khudaf\";\"other\"\n\"584715\";\"Khudat\";\"other\"\n\"584715\";\"ХУДАТ\";\"other\"\n\"584716\";\"Xanlar\";\"main\"\n\"584716\";\"Elenendorf\";\"other\"\n\"584716\";\"Gjojgjol'\";\"other\"\n\"584716\";\"Khanlar\";\"other\"\n\"584716\";\"Kol-Yelendorf\";\"other\"\n\"584716\";\"Yelenendorf\";\"other\"\n\"584716\";\"Гёйгёль\";\"other\"\n\"584716\";\"Ханлар\";\"other\"\n\"584717\";\"Xaçmaz\";\"main\"\n\"584717\";\"Xacmaz\";\"ascii\"\n\"584717\";\"Chatschmas\";\"other\"\n\"584717\";\"KHACHMAS\";\"other\"\n\"584717\";\"Kegna Khachmas\";\"other\"\n\"584717\";\"Kekhna-Khachmaz\";\"other\"\n\"584717\";\"Khachmas\";\"other\"\n\"584717\";\"Khachmaz\";\"other\"\n\"584717\";\"Këgna Khachmas\";\"other\"\n\"584717\";\"ХАЧМАС\";\"other\"\n\"584724\";\"Yuxarı Daşkəsən\";\"main\"\n\"584724\";\"Yuxari Daskasan\";\"ascii\"\n\"584724\";\"VERKH.DASHKESAN\";\"other\"\n\"584724\";\"Verkhniy Dashkesan\";\"other\"\n\"584724\";\"Yuxarı Daşkǝsǝn\";\"other\"\n\"584724\";\"ВЕРХ.ДАШКЕСАН\";\"other\"\n\"584791\";\"Ucar\";\"main\"\n\"584791\";\"UDZHARY\";\"other\"\n\"584791\";\"Udshary\";\"other\"\n\"584791\";\"Udzhar\";\"other\"\n\"584791\";\"Udzhara\";\"other\"\n\"584791\";\"Udzhary\";\"other\"\n\"584791\";\"Ujar\";\"other\"\n\"584791\";\"УДЖАРЫ\";\"other\"\n\"584792\";\"Türkan\";\"main\"\n\"584792\";\"Turkan\";\"ascii\"\n\"584792\";\"TJURKJAN\";\"other\"\n\"584792\";\"Tuerkan\";\"other\"\n\"584792\";\"Turkyany\";\"other\"\n\"584792\";\"Tyurkend\";\"other\"\n\"584792\";\"Tyurkyan\";\"other\"\n\"584792\";\"Tyurkyany\";\"other\"\n\"584792\";\"ТЮРКЯН\";\"other\"\n\"584821\";\"Tovuz\";\"main\"\n\"584821\";\"Tauz\";\"other\"\n\"584821\";\"Tavus\";\"other\"\n\"584821\";\"Тауз\";\"other\"\n\"584871\";\"Tərtər\";\"main\"\n\"584871\";\"Tartar\";\"ascii\"\n\"584871\";\"Mir Bashir\";\"other\"\n\"584871\";\"Mirbashir\";\"other\"\n\"584871\";\"Mirbäshir\";\"other\"\n\"584871\";\"TERTER\";\"other\"\n\"584871\";\"Terter\";\"other\"\n\"584871\";\"Tǝrtǝr\";\"other\"\n\"584871\";\"ТЕРТЕР\";\"other\"\n\"584871\";\"Միր Բաշիր\";\"other\"\n\"584923\";\"Sumqayıt\";\"main\"\n\"584923\";\"Sumqayit\";\"ascii\"\n\"584923\";\"SUMGAIT\";\"other\"\n\"584923\";\"Sumgait\";\"other\"\n\"584923\";\"Sumgjajet\";\"other\"\n\"584923\";\"Sumqayyt\";\"other\"\n\"584923\";\"СУМГАИТ\";\"other\"\n\"584923\";\"Сумгаит\";\"other\"\n\"584923\";\"סומגאיט\";\"other\"\n\"584991\";\"Şuraabad\";\"main\"\n\"584991\";\"Suraabad\";\"ascii\"\n\"584991\";\"Mikhailabad\";\"other\"\n\"584991\";\"Shuraabad\";\"other\"\n\"584991\";\"Sovetabad\";\"other\"\n\"584991\";\"Soviet Abad\";\"other\"\n\"584991\";\"Шураабад\";\"other\"\n\"585103\";\"Qaraçuxur\";\"main\"\n\"585103\";\"Qaracuxur\";\"ascii\"\n\"585103\";\"GARACHUKHUR\";\"other\"\n\"585103\";\"Garachukhur\";\"other\"\n\"585103\";\"Imeni Kaganovicha\";\"other\"\n\"585103\";\"Kaganovich\";\"other\"\n\"585103\";\"Kaganovicha\";\"other\"\n\"585103\";\"Karachekhur\";\"other\"\n\"585103\";\"Karachukhur\";\"other\"\n\"585103\";\"Poselok Imeni Kaganovicha\";\"other\"\n\"585103\";\"Posëlok Imeni Kaganovicha\";\"other\"\n\"585103\";\"Serebovski\";\"other\"\n\"585103\";\"Serebrovskiy\";\"other\"\n\"585103\";\"ГАРАЧУХУР\";\"other\"\n\"585145\";\"Saray\";\"main\"\n\"585145\";\"SARAJ\";\"other\"\n\"585145\";\"Sarai\";\"other\"\n\"585145\";\"САРАЙ\";\"other\"\n\"585150\";\"Samur\";\"main\"\n\"585150\";\"Самур\";\"other\"\n\"585152\";\"Şəmkir\";\"main\"\n\"585152\";\"Samkir\";\"ascii\"\n\"585152\";\"Anino\";\"other\"\n\"585152\";\"Annenfel'd\";\"other\"\n\"585152\";\"Annenfel’d\";\"other\"\n\"585152\";\"Annino\";\"other\"\n\"585152\";\"SHAMKIR\";\"other\"\n\"585152\";\"Shamkhor\";\"other\"\n\"585152\";\"Şǝmkir\";\"other\"\n\"585152\";\"ШАМКИР\";\"other\"\n\"585156\";\"Şamaxı\";\"main\"\n\"585156\";\"Samaxi\";\"ascii\"\n\"585156\";\"SHEMAKHA\";\"other\"\n\"585156\";\"Schemacha\";\"other\"\n\"585156\";\"Shamakhy\";\"other\"\n\"585156\";\"Shemakha\";\"other\"\n\"585156\";\"ШЕМАХА\";\"other\"\n\"585170\";\"Şəki\";\"main\"\n\"585170\";\"Saki\";\"ascii\"\n\"585170\";\"Nucha\";\"other\"\n\"585170\";\"Nukha\";\"other\"\n\"585170\";\"Nuxa\";\"other\"\n\"585170\";\"SHEKI\";\"other\"\n\"585170\";\"Shaki\";\"other\"\n\"585170\";\"Sheki\";\"other\"\n\"585170\";\"Shäki\";\"other\"\n\"585170\";\"Şǝki\";\"other\"\n\"585170\";\"ШЕКИ\";\"other\"\n\"585184\";\"Sabunçu\";\"main\"\n\"585184\";\"Sabuncu\";\"ascii\"\n\"585184\";\"SABUNCHI\";\"other\"\n\"585184\";\"Sabunchi\";\"other\"\n\"585184\";\"Sabunchy\";\"other\"\n\"585184\";\"САБУНЧИ\";\"other\"\n\"585187\";\"Sabirabad\";\"main\"\n\"585187\";\"Petropavlovka\";\"other\"\n\"585187\";\"Petropavlovskoye\";\"other\"\n\"585187\";\"SABIRABAD\";\"other\"\n\"585187\";\"Ssabirabad\";\"other\"\n\"585187\";\"САБИРАБАД\";\"other\"\n\"585220\";\"Qusar\";\"main\"\n\"585220\";\"KUSARY\";\"other\"\n\"585220\";\"Kusary\";\"other\"\n\"585220\";\"КУСАРЫ\";\"other\"\n\"585221\";\"Quba\";\"main\"\n\"585221\";\"KUBA\";\"other\"\n\"585221\";\"Kuba\";\"other\"\n\"585221\";\"Kuwa\";\"other\"\n\"585221\";\"КУБА\";\"other\"\n\"585223\";\"Qobustan\";\"main\"\n\"585223\";\"Duvannaya\";\"other\"\n\"585223\";\"Duvanny\";\"other\"\n\"585223\";\"Duvannyy\";\"other\"\n\"585223\";\"Duyannaya\";\"other\"\n\"585223\";\"GOBUSTAN\";\"other\"\n\"585223\";\"Gobustan\";\"other\"\n\"585223\";\"ГОБУСТАН\";\"other\"\n\"585225\";\"Qazıməmməd\";\"main\"\n\"585225\";\"Qazimammad\";\"ascii\"\n\"585225\";\"Adshikabul\";\"other\"\n\"585225\";\"Adzha-Kabul\";\"other\"\n\"585225\";\"Adzhikabul\";\"other\"\n\"585225\";\"Aja Kabul\";\"other\"\n\"585225\";\"Kasi-Mahomed\";\"other\"\n\"585225\";\"Kazi Mahomed\";\"other\"\n\"585225\";\"Kazi-Magomed\";\"other\"\n\"585225\";\"Kazi-Magomet\";\"other\"\n\"585225\";\"Qazımǝmmǝd\";\"other\"\n\"585225\";\"Кази-Магомед\";\"other\"\n\"585226\";\"Qazax\";\"main\"\n\"585226\";\"Agkeynak\";\"other\"\n\"585226\";\"Agkëynak\";\"other\"\n\"585226\";\"KAZAKH\";\"other\"\n\"585226\";\"Kasach\";\"other\"\n\"585226\";\"Kasachisee\";\"other\"\n\"585226\";\"Kazakh\";\"other\"\n\"585226\";\"Qazakh\";\"other\"\n\"585226\";\"КАЗАХ\";\"other\"\n\"585227\";\"Qax\";\"main\"\n\"585227\";\"KAKHI\";\"other\"\n\"585227\";\"Kakhi\";\"other\"\n\"585227\";\"Qakh\";\"other\"\n\"585227\";\"КАХИ\";\"other\"\n\"585231\";\"Qəbələ\";\"main\"\n\"585231\";\"Qabala\";\"ascii\"\n\"585231\";\"Kutkashen\";\"other\"\n\"585231\";\"Kutkashin\";\"other\"\n\"585231\";\"Qutqashen\";\"other\"\n\"585236\";\"Puta\";\"main\"\n\"585236\";\"PUTA\";\"other\"\n\"585236\";\"Staraya Puta\";\"other\"\n\"585236\";\"ПУТА\";\"other\"\n\"585333\";\"Oğuz\";\"main\"\n\"585333\";\"Oguz\";\"ascii\"\n\"585333\";\"Bartashen\";\"other\"\n\"585333\";\"OGUZ\";\"other\"\n\"585333\";\"Vartasen\";\"other\"\n\"585333\";\"Vartashen\";\"other\"\n\"585333\";\"Vartashin\";\"other\"\n\"585333\";\"Vartaşen\";\"other\"\n\"585333\";\"ОГУЗ\";\"other\"\n\"585379\";\"Hacı Zeynalabdin\";\"main\"\n\"585379\";\"Haci Zeynalabdin\";\"ascii\"\n\"585379\";\"Nasoslu\";\"other\"\n\"585379\";\"Nasosnaya\";\"other\"\n\"585379\";\"Nasosnyy\";\"other\"\n\"585379\";\"Nassosny\";\"other\"\n\"585388\";\"Nardaran\";\"main\"\n\"585400\";\"Naftalan\";\"main\"\n\"585400\";\"NAFTALAN\";\"other\"\n\"585400\";\"НАФТАЛАН\";\"other\"\n\"585514\";\"Mingəçevir\";\"main\"\n\"585514\";\"Mingacevir\";\"ascii\"\n\"585514\";\"MINGECHAUR\";\"other\"\n\"585514\";\"Mengechaur\";\"other\"\n\"585514\";\"Min'nkatsebir\";\"other\"\n\"585514\";\"Mingachevir\";\"other\"\n\"585514\";\"Mingaecevir\";\"other\"\n\"585514\";\"Mingechaur\";\"other\"\n\"585514\";\"Mingechaurges\";\"other\"\n\"585514\";\"Mingeczaur\";\"other\"\n\"585514\";\"Mingelchaur\";\"other\"\n\"585514\";\"Mingächevir\";\"other\"\n\"585514\";\"Mingäçevir\";\"other\"\n\"585514\";\"Mingǝçevir\";\"other\"\n\"585514\";\"ming gai qia wu er\";\"other\"\n\"585514\";\"Μινγκατσεβίρ\";\"other\"\n\"585514\";\"МИНГЕЧАУР\";\"other\"\n\"585514\";\"Мингечаур\";\"other\"\n\"585514\";\"明盖恰乌尔\";\"other\"\n\"585557\";\"Maştağa\";\"main\"\n\"585557\";\"Mastaga\";\"ascii\"\n\"585557\";\"MASHTAGA\";\"other\"\n\"585557\";\"Mashtaga\";\"other\"\n\"585557\";\"Mashtaghy\";\"other\"\n\"585557\";\"Mashtagi\";\"other\"\n\"585557\";\"МАШТАГА\";\"other\"\n\"585568\";\"Mərdəkan\";\"main\"\n\"585568\";\"Mardakan\";\"ascii\"\n\"585568\";\"MARDAKJAN\";\"other\"\n\"585568\";\"Mardakjan\";\"other\"\n\"585568\";\"Mardakyan\";\"other\"\n\"585568\";\"Mardakyany\";\"other\"\n\"585568\";\"Mǝrdǝkan\";\"other\"\n\"585568\";\"МАРДАКЯН\";\"other\"\n\"585570\";\"Mərəzə\";\"main\"\n\"585570\";\"Maraza\";\"ascii\"\n\"585570\";\"MARAZA\";\"other\"\n\"585570\";\"Marazi\";\"other\"\n\"585570\";\"Marazy\";\"other\"\n\"585570\";\"Mǝrǝzǝ\";\"other\"\n\"585570\";\"МАРАЗА\";\"other\"\n\"585630\";\"Lökbatan\";\"main\"\n\"585630\";\"Lokbatan\";\"ascii\"\n\"585630\";\"LOKBATAN\";\"other\"\n\"585630\";\"Loekbatan\";\"other\"\n\"585630\";\"ЛОКБАТАН\";\"other\"\n\"585666\";\"Qızılhacılı\";\"main\"\n\"585666\";\"Qizilhacili\";\"ascii\"\n\"585666\";\"Kyzylgadzhily\";\"other\"\n\"585666\";\"Kyzylgadzhyly\";\"other\"\n\"585666\";\"Кызылгаджылы\";\"other\"\n\"585838\";\"Qobu\";\"main\"\n\"585838\";\"KOBU\";\"other\"\n\"585838\";\"Kobi\";\"other\"\n\"585838\";\"Kobu\";\"other\"\n\"585838\";\"КОБУ\";\"other\"\n\"585892\";\"Giləzi\";\"main\"\n\"585892\";\"Gilazi\";\"ascii\"\n\"585892\";\"Kiljasi\";\"other\"\n\"585892\";\"Kiljazi\";\"other\"\n\"585892\";\"Kilyazi\";\"other\"\n\"585892\";\"Килязи\";\"other\"\n\"585909\";\"Xızı\";\"main\"\n\"585909\";\"Xizi\";\"ascii\"\n\"585909\";\"Khizy\";\"other\"\n\"585909\";\"Khyzy\";\"other\"\n\"585909\";\"Хызы\";\"other\"\n\"585940\";\"Xocəsən\";\"main\"\n\"585940\";\"Xocasan\";\"ascii\"\n\"585940\";\"Gadzhi-Gasan\";\"other\"\n\"585940\";\"Khodzhagasan\";\"other\"\n\"585940\";\"Khodzhasan\";\"other\"\n\"585940\";\"Khodzhi-Gasan\";\"other\"\n\"586031\";\"Korgöz\";\"main\"\n\"586031\";\"Korgoz\";\"ascii\"\n\"586031\";\"KERGEZ\";\"other\"\n\"586031\";\"Kar'yery\";\"other\"\n\"586031\";\"Kar’yery\";\"other\"\n\"586031\";\"Kergez\";\"other\"\n\"586031\";\"Korgoez\";\"other\"\n\"586031\";\"Kërgëz\";\"other\"\n\"586031\";\"КЕРГЕЗ\";\"other\"\n\"586135\";\"Qarayeri\";\"main\"\n\"586135\";\"KARAERI\";\"other\"\n\"586135\";\"Karayeri\";\"other\"\n\"586135\";\"КАРАЕРИ\";\"other\"\n\"586265\";\"Vurğun\";\"main\"\n\"586265\";\"Vurgun\";\"ascii\"\n\"586265\";\"Gryunfel'd\";\"other\"\n\"586265\";\"Gryunfel’d\";\"other\"\n\"586265\";\"KALININKEND\";\"other\"\n\"586265\";\"Kalininkand\";\"other\"\n\"586265\";\"Kalininkend\";\"other\"\n\"586265\";\"Kalininkänd\";\"other\"\n\"586265\";\"КАЛИНИНКЕНД\";\"other\"\n\"586268\";\"Kəlbəcər\";\"main\"\n\"586268\";\"Kalbacar\";\"ascii\"\n\"586268\";\"KEL'BADZHAR\";\"other\"\n\"586268\";\"Kalbajar\";\"other\"\n\"586268\";\"Kel'badzhar\";\"other\"\n\"586268\";\"Kelbadshar\";\"other\"\n\"586268\";\"Kel’badzhar\";\"other\"\n\"586268\";\"Kerbakhiar\";\"other\"\n\"586268\";\"Kälbäjär\";\"other\"\n\"586268\";\"Kǝlbǝcǝr\";\"other\"\n\"586268\";\"КЕЛЬБАДЖАР\";\"other\"\n\"586289\";\"Qala\";\"main\"\n\"586289\";\"KALA\";\"other\"\n\"586289\";\"Kala\";\"other\"\n\"586289\";\"Kala-Machtagi\";\"other\"\n\"586289\";\"КАЛА\";\"other\"\n\"586318\";\"İsmayıllı\";\"main\"\n\"586318\";\"Ismayilli\";\"ascii\"\n\"586318\";\"ISMAILLY\";\"other\"\n\"586318\";\"Ismailly\";\"other\"\n\"586318\";\"Ismaily\";\"other\"\n\"586318\";\"Ismanlli\";\"other\"\n\"586318\";\"Ismayylly\";\"other\"\n\"586318\";\"Ismoylly\";\"other\"\n\"586318\";\"Jsmailly\";\"other\"\n\"586318\";\"ИСМАИЛЛЫ\";\"other\"\n\"586368\";\"Güzdək\";\"main\"\n\"586368\";\"Guzdak\";\"ascii\"\n\"586368\";\"GJUZDEK\";\"other\"\n\"586368\";\"Gezdek\";\"other\"\n\"586368\";\"Gyuzdek\";\"other\"\n\"586368\";\"Güzdǝk\";\"other\"\n\"586368\";\"ГЮЗДЕК\";\"other\"\n\"586427\";\"Göyçay\";\"main\"\n\"586427\";\"Goycay\";\"ascii\"\n\"586427\";\"GEOKCHAJ\";\"other\"\n\"586427\";\"Gekchai\";\"other\"\n\"586427\";\"Geokchai\";\"other\"\n\"586427\";\"Geokchay\";\"other\"\n\"586427\";\"Geoktschai\";\"other\"\n\"586427\";\"Goeycay\";\"other\"\n\"586427\";\"Goychay\";\"other\"\n\"586427\";\"Göychay\";\"other\"\n\"586427\";\"ГЕОКЧАЙ\";\"other\"\n\"586429\";\"Hövsan\";\"main\"\n\"586429\";\"Hovsan\";\"ascii\"\n\"586429\";\"GOVSAN\";\"other\"\n\"586429\";\"Gousan\";\"other\"\n\"586429\";\"Gousany\";\"other\"\n\"586429\";\"Goussan\";\"other\"\n\"586429\";\"Govsan\";\"other\"\n\"586429\";\"Hoevsan\";\"other\"\n\"586429\";\"ГОВСАН\";\"other\"\n\"586430\";\"Goranboy\";\"main\"\n\"586430\";\"GERANBOJ\";\"other\"\n\"586430\";\"Geran'boy\";\"other\"\n\"586430\";\"Geran’boy\";\"other\"\n\"586430\";\"Kasum-Ismailov\";\"other\"\n\"586430\";\"Kasum-Ismailovo\";\"other\"\n\"586430\";\"Kasum-Izmaylovo\";\"other\"\n\"586430\";\"Qasym Ismayylov\";\"other\"\n\"586430\";\"ГЕРАНБОЙ\";\"other\"\n\"586523\";\"Gəncə\";\"main\"\n\"586523\";\"Ganca\";\"ascii\"\n\"586523\";\"Elisavetpol\";\"other\"\n\"586523\";\"Elizavetpol'\";\"other\"\n\"586523\";\"Elizavetpol’\";\"other\"\n\"586523\";\"GJANDZHA\";\"other\"\n\"586523\";\"Gaencae\";\"other\"\n\"586523\";\"Gaendzjae\";\"other\"\n\"586523\";\"Gandja\";\"other\"\n\"586523\";\"Gandza\";\"other\"\n\"586523\";\"Gandzha\";\"other\"\n\"586523\";\"Gandzhe\";\"other\"\n\"586523\";\"Gandża\";\"other\"\n\"586523\";\"Ganga\";\"other\"\n\"586523\";\"Ganja\";\"other\"\n\"586523\";\"Ganĝa\";\"other\"\n\"586523\";\"Gence\";\"other\"\n\"586523\";\"Gendzakh\";\"other\"\n\"586523\";\"Gjandzha\";\"other\"\n\"586523\";\"Gyandzha\";\"other\"\n\"586523\";\"Gäncä\";\"other\"\n\"586523\";\"Gändzjä\";\"other\"\n\"586523\";\"Gǝncǝ\";\"other\"\n\"586523\";\"Kirovabad\";\"other\"\n\"586523\";\"Kirowabad\";\"other\"\n\"586523\";\"Yelizavetpol'\";\"other\"\n\"586523\";\"Yelizavetpol’\";\"other\"\n\"586523\";\"ganja\";\"other\"\n\"586523\";\"gnjh\";\"other\"\n\"586523\";\"gyanja\";\"other\"\n\"586523\";\"ГЯНДЖА\";\"other\"\n\"586523\";\"Гянджа\";\"other\"\n\"586523\";\"گنجه\";\"other\"\n\"586523\";\"განჯა\";\"other\"\n\"586523\";\"ギャンジャ\";\"other\"\n\"586523\";\"간자\";\"other\"\n\"586573\";\"Gədəbəy\";\"main\"\n\"586573\";\"Gadabay\";\"ascii\"\n\"586573\";\"Gǝdǝbǝy\";\"other\"\n\"586573\";\"KEDABEK\";\"other\"\n\"586573\";\"Kedabek\";\"other\"\n\"586573\";\"Kedabeko\";\"other\"\n\"586573\";\"Kedalek\";\"other\"\n\"586573\";\"Kyadabek\";\"other\"\n\"586573\";\"КЕДАБЕК\";\"other\"\n\"586631\";\"Corat\";\"main\"\n\"586631\";\"DZHORAT\";\"other\"\n\"586631\";\"Dzhorat\";\"other\"\n\"586631\";\"ДЖОРАТ\";\"other\"\n\"586652\";\"Ceyranbatan\";\"main\"\n\"586652\";\"DZHEJRANBATAN\";\"other\"\n\"586652\";\"Dzheyranbatan\";\"other\"\n\"586652\";\"ДЖЕЙРАНБАТАН\";\"other\"\n\"586692\";\"Zəyəm\";\"main\"\n\"586692\";\"Zayam\";\"ascii\"\n\"586692\";\"DZEGAM\";\"other\"\n\"586692\";\"Dzagam\";\"other\"\n\"586692\";\"Dzegam\";\"other\"\n\"586692\";\"Dzegan\";\"other\"\n\"586692\";\"Guseynbeili\";\"other\"\n\"586692\";\"Guseynbeyli\";\"other\"\n\"586692\";\"Pzegam\";\"other\"\n\"586692\";\"Star Agozam\";\"other\"\n\"586692\";\"Zǝyǝm\";\"other\"\n\"586692\";\"ДЗЕГАМ\";\"other\"\n\"586736\";\"Digah\";\"main\"\n\"586736\";\"DIGJAKH\";\"other\"\n\"586736\";\"Digyakh\";\"other\"\n\"586736\";\"Dygya\";\"other\"\n\"586736\";\"ДИГЯХ\";\"other\"\n\"586765\";\"Daşkəsən\";\"main\"\n\"586765\";\"Daskasan\";\"ascii\"\n\"586765\";\"DASHKESAN\";\"other\"\n\"586765\";\"Dashkasan\";\"other\"\n\"586765\";\"Dashkesan\";\"other\"\n\"586765\";\"Dashkezan\";\"other\"\n\"586765\";\"Dashkäsän\";\"other\"\n\"586765\";\"Daşkǝsǝn\";\"other\"\n\"586765\";\"Verkhniy Dashkesan\";\"other\"\n\"586765\";\"Yukhary-Dashkesan\";\"other\"\n\"586765\";\"ДАШКЕСАН\";\"other\"\n\"586792\";\"Dəlilər\";\"main\"\n\"586792\";\"Dalilar\";\"ascii\"\n\"586792\";\"DALLJAR\";\"other\"\n\"586792\";\"Dallyar\";\"other\"\n\"586792\";\"Dolyar\";\"other\"\n\"586792\";\"Dǝlilǝr\";\"other\"\n\"586792\";\"ДАЛЛЯР\";\"other\"\n\"586845\";\"Çinarlı\";\"main\"\n\"586845\";\"Cinarli\";\"ascii\"\n\"586845\";\"Chinarly\";\"other\"\n\"586845\";\"Lenin\";\"other\"\n\"586845\";\"Ленин\";\"other\"\n\"586925\";\"Buzovna\";\"main\"\n\"586925\";\"BUZOVNA\";\"other\"\n\"586925\";\"Busovny\";\"other\"\n\"586925\";\"Busowny\";\"other\"\n\"586925\";\"Buzouvna\";\"other\"\n\"586925\";\"Buzovny\";\"other\"\n\"586925\";\"БУЗОВНА\";\"other\"\n\"586967\";\"Binəqədi\";\"main\"\n\"586967\";\"Binaqadi\";\"ascii\"\n\"586967\";\"BINAGADI\";\"other\"\n\"586967\";\"Binagadi\";\"other\"\n\"586967\";\"Binagady\";\"other\"\n\"586967\";\"Binaghad\";\"other\"\n\"586967\";\"Binǝqǝdi\";\"other\"\n\"586967\";\"Bonogady\";\"other\"\n\"586967\";\"БИНАГАДИ\";\"other\"\n\"586968\";\"Binə\";\"main\"\n\"586968\";\"Bina\";\"ascii\"\n\"586968\";\"BINA\";\"other\"\n\"586968\";\"Bina Staraya\";\"other\"\n\"586968\";\"Biny Selo\";\"other\"\n\"586968\";\"Binǝ\";\"other\"\n\"586968\";\"БИНА\";\"other\"\n\"586971\";\"Bilgəh\";\"main\"\n\"586971\";\"Bilgah\";\"ascii\"\n\"586971\";\"BIL'GJAKH\";\"other\"\n\"586971\";\"Bil'gya\";\"other\"\n\"586971\";\"Bil'gyakh\";\"other\"\n\"586971\";\"Bil'gykh\";\"other\"\n\"586971\";\"Bilajer\";\"other\"\n\"586971\";\"Bilgǝh\";\"other\"\n\"586971\";\"Bil’gya\";\"other\"\n\"586971\";\"Bil’gyakh\";\"other\"\n\"586971\";\"Bil’gykh\";\"other\"\n\"586971\";\"БИЛЬГЯХ\";\"other\"\n\"587033\";\"Basqal\";\"main\"\n\"587033\";\"Azizbekovo\";\"other\"\n\"587033\";\"Baskal\";\"other\"\n\"587033\";\"Baskhal\";\"other\"\n\"587033\";\"Баскал\";\"other\"\n\"587045\";\"Baş Göynük\";\"main\"\n\"587045\";\"Bas Goynuk\";\"ascii\"\n\"587045\";\"Bas Goeynuek\";\"other\"\n\"587045\";\"Bas Koynuk\";\"other\"\n\"587045\";\"Bash Gejnjuk\";\"other\"\n\"587045\";\"Bash Geynyuk\";\"other\"\n\"587045\";\"Bash Gëynyuk\";\"other\"\n\"587045\";\"Baş Köynük\";\"other\"\n\"587045\";\"Баш Гейнюк\";\"other\"\n\"587057\";\"Bərdə\";\"main\"\n\"587057\";\"Barda\";\"ascii\"\n\"587057\";\"BARDA\";\"other\"\n\"587057\";\"Bärdä\";\"other\"\n\"587057\";\"Bǝrdǝ\";\"other\"\n\"587057\";\"БАРДА\";\"other\"\n\"587070\";\"Balakən\";\"main\"\n\"587070\";\"Balakan\";\"ascii\"\n\"587070\";\"BELOKANY\";\"other\"\n\"587070\";\"Balakon\";\"other\"\n\"587070\";\"Balakǝn\";\"other\"\n\"587070\";\"Belokan\";\"other\"\n\"587070\";\"Belokani\";\"other\"\n\"587070\";\"Belokany\";\"other\"\n\"587070\";\"БЕЛОКАНЫ\";\"other\"\n\"587071\";\"Balaxanı\";\"main\"\n\"587071\";\"Balaxani\";\"ascii\"\n\"587071\";\"BALAKHANY\";\"other\"\n\"587071\";\"Balaban\";\"other\"\n\"587071\";\"Balachany\";\"other\"\n\"587071\";\"Baladzary\";\"other\"\n\"587071\";\"Balakhani\";\"other\"\n\"587071\";\"Balakhany\";\"other\"\n\"587071\";\"БАЛАХАНЫ\";\"other\"\n\"587078\";\"Biləcəri\";\"main\"\n\"587078\";\"Bilacari\";\"ascii\"\n\"587078\";\"Baku-Baladshary\";\"other\"\n\"587078\";\"Baladjary\";\"other\"\n\"587078\";\"Baladzhary\";\"other\"\n\"587084\";\"Baku\";\"main\"\n\"587084\";\"Bacu\";\"other\"\n\"587084\";\"Baki\";\"other\"\n\"587084\";\"Bako\";\"other\"\n\"587084\";\"Bakoe\";\"other\"\n\"587084\";\"Bakou\";\"other\"\n\"587084\";\"Baku - Baki\";\"other\"\n\"587084\";\"Bakue\";\"other\"\n\"587084\";\"Bakuu\";\"other\"\n\"587084\";\"Baky\";\"other\"\n\"587084\";\"Bakó\";\"other\"\n\"587084\";\"Bakú\";\"other\"\n\"587084\";\"Bakú - Bakı\";\"other\"\n\"587084\";\"Bakü\";\"other\"\n\"587084\";\"Bakı\";\"other\"\n\"587084\";\"Boku\";\"other\"\n\"587084\";\"Mpakou\";\"other\"\n\"587084\";\"ba ku\";\"other\"\n\"587084\";\"bako\";\"other\"\n\"587084\";\"baku\";\"other\"\n\"587084\";\"bakw\";\"other\"\n\"587084\";\"Μπακού\";\"other\"\n\"587084\";\"Баку\";\"other\"\n\"587084\";\"Боку\";\"other\"\n\"587084\";\"באקו\";\"other\"\n\"587084\";\"باكو\";\"other\"\n\"587084\";\"باکو\";\"other\"\n\"587084\";\"ბაქო\";\"other\"\n\"587084\";\"ባኩ\";\"other\"\n\"587084\";\"バクー\";\"other\"\n\"587084\";\"巴库\";\"other\"\n\"587084\";\"바쿠\";\"other\"\n\"587207\";\"Artyom\";\"main\"\n\"587207\";\"Artem-Ostrov\";\"other\"\n\"587207\";\"Artëm-Ostrov\";\"other\"\n\"587207\";\"Imeni \\\"Dvadtsati Shesti\\\"\";\"other\"\n\"587207\";\"Imeni Artema\";\"other\"\n\"587207\";\"Imeni ”Dvadtsati Shesti”\";\"other\"\n\"587207\";\"Poselok Imeni Dvadtsati Shesti\";\"other\"\n\"587207\";\"Posëlok Imeni Dvadtsati Shesti\";\"other\"\n\"587207\";\"Артем-Остров\";\"other\"\n\"587261\";\"Əmircan\";\"main\"\n\"587261\";\"Amircan\";\"ascii\"\n\"587261\";\"Amirabdzhan\";\"other\"\n\"587261\";\"Amiradzhan\";\"other\"\n\"587261\";\"Amiradzhany\";\"other\"\n\"587261\";\"Amirdzhan\";\"other\"\n\"587272\";\"Altıağac\";\"main\"\n\"587272\";\"Altiagac\";\"ascii\"\n\"587272\";\"Altiagach\";\"other\"\n\"587272\";\"Alty-Agatsch\";\"other\"\n\"587272\";\"Altyagach\";\"other\"\n\"587272\";\"Alyagach\";\"other\"\n\"587272\";\"Алтыагач\";\"other\"\n\"587319\";\"Əliabad\";\"main\"\n\"587319\";\"Aliabad\";\"ascii\"\n\"587319\";\"Алиабад\";\"other\"\n\"587361\";\"Ağsu\";\"main\"\n\"587361\";\"Agsu\";\"ascii\"\n\"587361\";\"AKHSU\";\"other\"\n\"587361\";\"Aghsu\";\"other\"\n\"587361\";\"Akhsu\";\"other\"\n\"587361\";\"Aksu\";\"other\"\n\"587361\";\"АХСУ\";\"other\"\n\"587362\";\"Ağstafa\";\"main\"\n\"587362\";\"Agstafa\";\"ascii\"\n\"587362\";\"AKSTAFA\";\"other\"\n\"587362\";\"Akstafa\";\"other\"\n\"587362\";\"Akstafal\";\"other\"\n\"587362\";\"АКСТАФА\";\"other\"\n\"587378\";\"Ağdaş\";\"main\"\n\"587378\";\"Agdas\";\"ascii\"\n\"587378\";\"AGDASH\";\"other\"\n\"587378\";\"Agdasch\";\"other\"\n\"587378\";\"Agdash\";\"other\"\n\"587378\";\"Aghdash\";\"other\"\n\"587378\";\"Akdash\";\"other\"\n\"587378\";\"АГДАШ\";\"other\"\n\"587379\";\"Ağdərə\";\"main\"\n\"587379\";\"Agdara\";\"ascii\"\n\"587379\";\"Ağdǝrǝ\";\"other\"\n\"587379\";\"MARDAKERT\";\"other\"\n\"587379\";\"Mardakert\";\"other\"\n\"587379\";\"Martakert\";\"other\"\n\"587379\";\"МАРДАКЕРТ\";\"other\"\n\"587379\";\"Мардакерт\";\"other\"\n\"587379\";\"Մարտակերտ\";\"other\"\n\"587381\";\"Ağdam\";\"main\"\n\"587381\";\"Agdam\";\"ascii\"\n\"587384\";\"Ağcabədi\";\"main\"\n\"587384\";\"Agcabadi\";\"ascii\"\n\"587384\";\"AGDZHABEDI\";\"other\"\n\"587384\";\"Agdzhabedi\";\"other\"\n\"587384\";\"Agdzhabedy\";\"other\"\n\"587384\";\"Aghjabadi\";\"other\"\n\"587384\";\"Aghjabädi\";\"other\"\n\"587384\";\"Ağcabǝdi\";\"other\"\n\"587384\";\"АГДЖАБЕДИ\";\"other\"\n\"807231\";\"Muğan\";\"main\"\n\"807231\";\"Mugan\";\"ascii\"\n\"807231\";\"MUGAN'\";\"other\"\n\"807231\";\"МУГАНЬ\";\"other\"\n\"823981\";\"Qabaqçöl\";\"main\"\n\"823981\";\"Qabaqcol\";\"ascii\"\n\"824003\";\"Bakıxanov\";\"main\"\n\"824003\";\"Bakixanov\";\"ascii\"\n\"824003\";\"Bakikhanov\";\"other\"\n\"824003\";\"Bakikhanova\";\"other\"\n\"824003\";\"Бакиханова\";\"other\"\n\"824050\";\"Aran\";\"main\"\n\"824050\";\"ARAI\";\"other\"\n\"824050\";\"АРАИ\";\"other\"\n\"863732\";\"Ramana\";\"main\"\n\"863732\";\"RAMANA\";\"other\"\n\"863732\";\"РАМАНА\";\"other\"\n\"863761\";\"Badamdar\";\"main\"\n\"3186246\";\"Zvornik\";\"main\"\n\"3186246\";\"Zvonik\";\"other\"\n\"3186246\";\"Зворник\";\"other\"\n\"3186422\";\"Živinice\";\"main\"\n\"3186422\";\"Zivinice\";\"ascii\"\n\"3186423\";\"Živinice\";\"main\"\n\"3186423\";\"Zivinice\";\"ascii\"\n\"3186567\";\"Žepče\";\"main\"\n\"3186567\";\"Zepce\";\"ascii\"\n\"3186573\";\"Zenica\";\"main\"\n\"3186573\";\"Зеница\";\"other\"\n\"3186588\";\"Željezno Polje\";\"main\"\n\"3186588\";\"Zeljezno Polje\";\"ascii\"\n\"3186679\";\"Zborište\";\"main\"\n\"3186679\";\"Zboriste\";\"ascii\"\n\"3186717\";\"Zavidovići\";\"main\"\n\"3186717\";\"Zavidovici\";\"ascii\"\n\"3186961\";\"Zabrišće\";\"main\"\n\"3186961\";\"Zabrisce\";\"ascii\"\n\"3187040\";\"Vukovije Donje\";\"main\"\n\"3187040\";\"Donje Vukovije\";\"other\"\n\"3187040\";\"Vukovje Donje\";\"other\"\n\"3187162\";\"Vrnograč\";\"main\"\n\"3187162\";\"Vrnograc\";\"ascii\"\n\"3187393\";\"Vozuća\";\"main\"\n\"3187393\";\"Vozuca\";\"ascii\"\n\"3187419\";\"Voljevac\";\"main\"\n\"3187464\";\"Vogošća\";\"main\"\n\"3187464\";\"Vogosca\";\"ascii\"\n\"3187464\";\"Gornja Vogosca\";\"other\"\n\"3187464\";\"Gornja Vogošća\";\"other\"\n\"3187524\";\"Vlasenica\";\"main\"\n\"3187524\";\"Vlasenice\";\"other\"\n\"3187588\";\"Vitina\";\"main\"\n\"3187590\";\"Vitez\";\"main\"\n\"3187609\";\"Visoko\";\"main\"\n\"3187609\";\"Visokas\";\"other\"\n\"3187609\";\"bisoko\";\"other\"\n\"3187609\";\"Високо\";\"other\"\n\"3187609\";\"ビソコ\";\"other\"\n\"3187681\";\"Višegrad\";\"main\"\n\"3187681\";\"Visegrad\";\"ascii\"\n\"3187681\";\"Visegradas\";\"other\"\n\"3187681\";\"Višegradas\";\"other\"\n\"3187681\";\"Wiszegrad\";\"other\"\n\"3187681\";\"vishegrad\";\"other\"\n\"3187681\";\"Вишеград\";\"other\"\n\"3187799\";\"Vidoši\";\"main\"\n\"3187799\";\"Vidosi\";\"ascii\"\n\"3188199\";\"Velika Obarska\";\"main\"\n\"3188199\";\"Obarska Velika\";\"other\"\n\"3188225\";\"Velika Kladuša\";\"main\"\n\"3188225\";\"Velika Kladusa\";\"ascii\"\n\"3188225\";\"Velika Kladusha\";\"other\"\n\"3188225\";\"Велика Кладуша\";\"other\"\n\"3188329\";\"Velagići\";\"main\"\n\"3188329\";\"Velagici\";\"ascii\"\n\"3188357\";\"Varoška Rijeka\";\"main\"\n\"3188357\";\"Varoska Rijeka\";\"ascii\"\n\"3188366\";\"Vareš\";\"main\"\n\"3188366\";\"Vares\";\"ascii\"\n\"3188366\";\"Vares Grad\";\"other\"\n\"3188366\";\"Vareš Grad\";\"other\"\n\"3188458\";\"Ustikolina\";\"main\"\n\"3188532\";\"Ugljevik\";\"main\"\n\"3188582\";\"Tuzla\";\"main\"\n\"3188582\";\"Donja Tuzla\";\"other\"\n\"3188582\";\"Soli\";\"other\"\n\"3188582\";\"Тузла\";\"other\"\n\"3188633\";\"Turbe\";\"main\"\n\"3188691\";\"Tržačka Raštela\";\"main\"\n\"3188691\";\"Trzacka Rastela\";\"ascii\"\n\"3188817\";\"Trn\";\"main\"\n\"3188893\";\"Trebinje\";\"main\"\n\"3188893\";\"Trebigne\";\"other\"\n\"3188893\";\"Trebin'e\";\"other\"\n\"3188893\";\"Trebine\";\"other\"\n\"3188893\";\"Требинье\";\"other\"\n\"3188893\";\"Требиње\";\"other\"\n\"3188924\";\"Travnik\";\"main\"\n\"3188924\";\"Traunik\";\"other\"\n\"3188924\";\"travnik\";\"other\"\n\"3188924\";\"Травник\";\"other\"\n\"3188924\";\"Траўнік\";\"other\"\n\"3189046\";\"Tojšići\";\"main\"\n\"3189046\";\"Tojsici\";\"ascii\"\n\"3189143\";\"Teslić\";\"main\"\n\"3189143\";\"Teslic\";\"ascii\"\n\"3189146\";\"Tešanj\";\"main\"\n\"3189146\";\"Tesanj\";\"ascii\"\n\"3189236\";\"Svodna\";\"main\"\n\"3189513\";\"Šumatac\";\"main\"\n\"3189513\";\"Sumatac\";\"ascii\"\n\"3189602\";\"Šturlić\";\"main\"\n\"3189602\";\"Sturlic\";\"ascii\"\n\"3189602\";\"Gradina Sturlic\";\"other\"\n\"3189602\";\"Gradina Šturlić\";\"other\"\n\"3189621\";\"Stupari\";\"main\"\n\"3189823\";\"Stolac\";\"main\"\n\"3189848\";\"Stjepan-Polje\";\"main\"\n\"3189884\";\"Stijena\";\"main\"\n\"3190158\";\"Srebrenik\";\"main\"\n\"3190158\";\"Srebrnica\";\"other\"\n\"3190158\";\"Srebrnik\";\"other\"\n\"3190158\";\"Сребреник\";\"other\"\n\"3190159\";\"Srebrenica\";\"main\"\n\"3190159\";\"Srebrnica\";\"other\"\n\"3190159\";\"sureburenitsu~a\";\"other\"\n\"3190159\";\"Сребреница\";\"other\"\n\"3190159\";\"スレブレニツァ\";\"other\"\n\"3190172\";\"Srbac\";\"main\"\n\"3190172\";\"Srpac\";\"other\"\n\"3190172\";\"Srpak\";\"other\"\n\"3190172\";\"Svinjar\";\"other\"\n\"3190357\";\"Solina\";\"main\"\n\"3190385\";\"Sokolac\";\"main\"\n\"3190385\";\"Sokola\";\"other\"\n\"3190652\";\"Sladna\";\"main\"\n\"3190733\";\"Skender Vakuf\";\"main\"\n\"3190733\";\"Knezevo\";\"other\"\n\"3190837\";\"Šipovo\";\"main\"\n\"3190837\";\"Sipovo\";\"ascii\"\n\"3190987\";\"Šerići\";\"main\"\n\"3190987\";\"Serici\";\"ascii\"\n\"3190987\";\"Seric\";\"other\"\n\"3190987\";\"Šerić\";\"other\"\n\"3191156\";\"Šekovići\";\"main\"\n\"3191156\";\"Sekovici\";\"ascii\"\n\"3191156\";\"Sejkovic\";\"other\"\n\"3191156\";\"Sejkovici\";\"other\"\n\"3191156\";\"Šejković\";\"other\"\n\"3191156\";\"Šejkovići\";\"other\"\n\"3191281\";\"Sarajevo\";\"main\"\n\"3191281\";\"Bosna-Sarai\";\"other\"\n\"3191281\";\"Saraeva\";\"other\"\n\"3191281\";\"Saraevo\";\"other\"\n\"3191281\";\"Saragebo\";\"other\"\n\"3191281\";\"Saragiebo\";\"other\"\n\"3191281\";\"Saragievo\";\"other\"\n\"3191281\";\"Sarajeva\";\"other\"\n\"3191281\";\"Sarajevas\";\"other\"\n\"3191281\";\"Sarajewo\";\"other\"\n\"3191281\";\"Saraxevo - Sarajevo\";\"other\"\n\"3191281\";\"Saraybosna\";\"other\"\n\"3191281\";\"Szarajevo\";\"other\"\n\"3191281\";\"Szarajevó\";\"other\"\n\"3191281\";\"Vrh Bosna\";\"other\"\n\"3191281\";\"sai la ye fu\";\"other\"\n\"3191281\";\"salayebo\";\"other\"\n\"3191281\";\"saraebo\";\"other\"\n\"3191281\";\"saraevo\";\"other\"\n\"3191281\";\"sarayewo\";\"other\"\n\"3191281\";\"srayyfw\";\"other\"\n\"3191281\";\"Σαράγεβο\";\"other\"\n\"3191281\";\"Σαράγιεβο\";\"other\"\n\"3191281\";\"Σαραγιεβο\";\"other\"\n\"3191281\";\"Сараева\";\"other\"\n\"3191281\";\"Сараево\";\"other\"\n\"3191281\";\"Сарајево\";\"other\"\n\"3191281\";\"Սարաևո\";\"other\"\n\"3191281\";\"סראייבו\";\"other\"\n\"3191281\";\"سراييفو\";\"other\"\n\"3191281\";\"ซาราเยโว\";\"other\"\n\"3191281\";\"სარაევო\";\"other\"\n\"3191281\";\"ሳራዬቮ\";\"other\"\n\"3191281\";\"サラエボ\";\"other\"\n\"3191281\";\"塞拉耶佛\";\"other\"\n\"3191281\";\"사라예보\";\"other\"\n\"3191297\";\"Sanski Most\";\"main\"\n\"3191297\";\"Sana\";\"other\"\n\"3191297\";\"Сански Мост\";\"other\"\n\"3191302\";\"Sanica\";\"main\"\n\"3191302\";\"Pravoslavna Sanica\";\"other\"\n\"3191426\";\"Rumboci\";\"main\"\n\"3191449\";\"Rudo\";\"main\"\n\"3191449\";\"Рудо\";\"other\"\n\"3191576\";\"Rogatica\";\"main\"\n\"3191576\";\"Jelengrad\";\"other\"\n\"3191589\";\"Rodoč\";\"main\"\n\"3191589\";\"Rodoc\";\"ascii\"\n\"3192123\";\"Radišići\";\"main\"\n\"3192123\";\"Radisici\";\"ascii\"\n\"3192206\";\"Puračić\";\"main\"\n\"3192206\";\"Puracic\";\"ascii\"\n\"3192236\";\"Novi Travnik\";\"main\"\n\"3192236\";\"Pucarevo\";\"other\"\n\"3192279\";\"Prozor\";\"main\"\n\"3192327\";\"Prnjavor\";\"main\"\n\"3192409\";\"Prijedor\";\"main\"\n\"3192409\";\"Priedora\";\"other\"\n\"3192409\";\"Приедора\";\"other\"\n\"3192409\";\"Приједор\";\"other\"\n\"3192449\";\"Priboj\";\"main\"\n\"3192456\";\"Pribinić\";\"main\"\n\"3192456\";\"Pribinic\";\"ascii\"\n\"3192653\";\"Potoci\";\"main\"\n\"3192718\";\"Popovi\";\"main\"\n\"3192793\";\"Polje-Bijela\";\"main\"\n\"3192793\";\"Donje Bjela\";\"other\"\n\"3192793\";\"Polje\";\"other\"\n\"3192878\";\"Podzvizd\";\"main\"\n\"3193008\";\"Podhum\";\"main\"\n\"3193439\";\"Petkovci\";\"main\"\n\"3193542\";\"Pećigrad\";\"main\"\n\"3193542\";\"Pecigrad\";\"ascii\"\n\"3193545\";\"Peći\";\"main\"\n\"3193545\";\"Peci\";\"ascii\"\n\"3193563\";\"Pazarić\";\"main\"\n\"3193563\";\"Pazaric\";\"ascii\"\n\"3193692\";\"Pale\";\"main\"\n\"3193692\";\"Пале\";\"other\"\n\"3193776\";\"Otoka\";\"main\"\n\"3193821\";\"Ostrožac\";\"main\"\n\"3193821\";\"Ostrozac\";\"ascii\"\n\"3193821\";\"Ostrazac\";\"other\"\n\"3193821\";\"Ostražac\";\"other\"\n\"3193855\";\"Oštra Luka\";\"main\"\n\"3193855\";\"Ostra Luka\";\"ascii\"\n\"3194013\";\"Orguz\";\"main\"\n\"3194035\";\"Orašje\";\"main\"\n\"3194035\";\"Orasje\";\"ascii\"\n\"3194041\";\"Orašac\";\"main\"\n\"3194041\";\"Orasac\";\"ascii\"\n\"3194061\";\"Orahovica Donja\";\"main\"\n\"3194061\";\"Donja Orahovica\";\"other\"\n\"3194120\";\"Omarska\";\"main\"\n\"3194120\";\"Омарска\";\"other\"\n\"3194133\";\"Olovo\";\"main\"\n\"3194199\";\"Odžak\";\"main\"\n\"3194199\";\"Odzak\";\"ascii\"\n\"3194199\";\"Vukosavlje\";\"other\"\n\"3194231\";\"Obudovac\";\"main\"\n\"3194358\";\"Novi Šeher\";\"main\"\n\"3194358\";\"Novi Seher\";\"ascii\"\n\"3194510\";\"Nevesinje\";\"main\"\n\"3194514\";\"Neum\";\"main\"\n\"3194514\";\"ne-um\";\"other\"\n\"3194514\";\"neumu\";\"other\"\n\"3194514\";\"Неум\";\"other\"\n\"3194514\";\"ネウム\";\"other\"\n\"3194514\";\"네움\";\"other\"\n\"3194724\";\"Mrkonjić Grad\";\"main\"\n\"3194724\";\"Mrkonjic Grad\";\"ascii\"\n\"3194724\";\"Varcar Vakuf\";\"other\"\n\"3194773\";\"Mramor\";\"main\"\n\"3194828\";\"Mostar\";\"main\"\n\"3194828\";\"Mostara\";\"other\"\n\"3194828\";\"mosutaru\";\"other\"\n\"3194828\";\"Мостар\";\"other\"\n\"3194828\";\"מוסטאר\";\"other\"\n\"3194828\";\"モスタル\";\"other\"\n\"3194943\";\"Modriča\";\"main\"\n\"3194943\";\"Modrica\";\"ascii\"\n\"3194943\";\"Modric\";\"other\"\n\"3194943\";\"Modrič\";\"other\"\n\"3195066\";\"Mionica\";\"main\"\n\"3195066\";\"Donja Mionica\";\"other\"\n\"3195066\";\"Mionica Donja\";\"other\"\n\"3195128\";\"Milići\";\"main\"\n\"3195128\";\"Milici\";\"ascii\"\n\"3195399\";\"Maslovare\";\"main\"\n\"3195399\";\"Mastovare\";\"other\"\n\"3195500\";\"Marićka\";\"main\"\n\"3195500\";\"Maricka\";\"ascii\"\n\"3195839\";\"Mala Kladuša\";\"main\"\n\"3195839\";\"Mala Kladusa\";\"ascii\"\n\"3195930\";\"Mahala\";\"main\"\n\"3195945\";\"Maglajani\";\"main\"\n\"3195945\";\"Bosanski Aleksandrovac\";\"other\"\n\"3195946\";\"Maglaj\";\"main\"\n\"3195946\";\"Маглај\";\"other\"\n\"3196066\";\"Lukavica\";\"main\"\n\"3196209\";\"Lopare\";\"main\"\n\"3196209\";\"Лопаре\";\"other\"\n\"3196243\";\"Lokvine\";\"main\"\n\"3196243\";\"Lokrine\";\"other\"\n\"3196324\";\"Ljubuški\";\"main\"\n\"3196324\";\"Ljubuski\";\"ascii\"\n\"3196364\";\"Ljubinje\";\"main\"\n\"3196410\";\"Livno\";\"main\"\n\"3196410\";\"livno\";\"other\"\n\"3196410\";\"Ливно\";\"other\"\n\"3196428\";\"Široki Brijeg\";\"main\"\n\"3196428\";\"Siroki Brijeg\";\"ascii\"\n\"3196428\";\"Listica\";\"other\"\n\"3196428\";\"Lištica\";\"other\"\n\"3196792\";\"Laktaši\";\"main\"\n\"3196792\";\"Laktasi\";\"ascii\"\n\"3196792\";\"Banja Laktasi\";\"other\"\n\"3196792\";\"Banja Laktaši\";\"other\"\n\"3196792\";\"Laktasi Ilidza\";\"other\"\n\"3196792\";\"Laktaši Ilidža\";\"other\"\n\"3197532\";\"Kotor-Varoš\";\"main\"\n\"3197532\";\"Kotor-Varos\";\"ascii\"\n\"3197944\";\"Kočerin\";\"main\"\n\"3197944\";\"Kocerin\";\"ascii\"\n\"3197964\";\"Kobilja Glava\";\"main\"\n\"3198050\";\"Ključ\";\"main\"\n\"3198050\";\"Kljuc\";\"ascii\"\n\"3198126\";\"Kladanj\";\"main\"\n\"3198137\";\"Kiseljak\";\"main\"\n\"3198138\";\"Kiseljak\";\"main\"\n\"3198293\";\"Karadaglije\";\"main\"\n\"3198462\";\"Kalenderovci Donji\";\"main\"\n\"3198490\";\"Kakanj\";\"main\"\n\"3198618\";\"Jezerski\";\"main\"\n\"3198618\";\"Jezersko\";\"other\"\n\"3198895\";\"Janja\";\"main\"\n\"3198934\";\"Jajce\";\"main\"\n\"3198934\";\"Jajca\";\"other\"\n\"3198934\";\"Јајце\";\"other\"\n\"3199027\";\"Izačić\";\"main\"\n\"3199027\";\"Izacic\";\"ascii\"\n\"3199027\";\"Izacic Grad\";\"other\"\n\"3199027\";\"Izačić Grad\";\"other\"\n\"3199142\";\"Ilijaš\";\"main\"\n\"3199142\";\"Ilijas\";\"ascii\"\n\"3199142\";\"Ilias\";\"other\"\n\"3199142\";\"Iliaš\";\"other\"\n\"3199417\";\"Han Pijesak\";\"main\"\n\"3199438\";\"Hadžići\";\"main\"\n\"3199438\";\"Hadzici\";\"ascii\"\n\"3199509\";\"Grude\";\"main\"\n\"3199525\";\"Gromiljak\";\"main\"\n\"3199744\";\"Gradačac\";\"main\"\n\"3199744\";\"Gradacac\";\"ascii\"\n\"3199779\";\"Gračanica\";\"main\"\n\"3199779\";\"Gracanica\";\"ascii\"\n\"3199784\";\"Gračanica\";\"main\"\n\"3199784\";\"Gracanica\";\"ascii\"\n\"3199862\";\"Gostovići\";\"main\"\n\"3199862\";\"Gostovici\";\"ascii\"\n\"3199862\";\"Gostovic\";\"other\"\n\"3199862\";\"Gostović\";\"other\"\n\"3199904\";\"Gornji Vakuf\";\"main\"\n\"3199904\";\"Uskoplje\";\"other\"\n\"3199904\";\"Vakuf Gornji\";\"other\"\n\"3200059\";\"Gornje Živinice\";\"main\"\n\"3200059\";\"Gornje Zivinice\";\"ascii\"\n\"3200059\";\"Muslimanske Zivinice\";\"other\"\n\"3200059\";\"Muslimanske Živinice\";\"other\"\n\"3200059\";\"Zivinice Gornje\";\"other\"\n\"3200059\";\"Živinice Gornje\";\"other\"\n\"3200108\";\"Gornje Moštre\";\"main\"\n\"3200108\";\"Gornje Mostre\";\"ascii\"\n\"3200108\";\"Mostre Gornje\";\"other\"\n\"3200108\";\"Moštre Gornje\";\"other\"\n\"3200167\";\"Gornja Tuzla\";\"main\"\n\"3200245\";\"Gornja Koprivna\";\"main\"\n\"3200396\";\"Goražde\";\"main\"\n\"3200396\";\"Gorazde\";\"ascii\"\n\"3200396\";\"Gorazhde\";\"other\"\n\"3200396\";\"Горажде\";\"other\"\n\"3200538\";\"Gnojnica\";\"main\"\n\"3200651\";\"Glamoč\";\"main\"\n\"3200651\";\"Glamoc\";\"ascii\"\n\"3200768\";\"Gacko\";\"main\"\n\"3200829\";\"Fojnica\";\"main\"\n\"3200829\";\"fwynchh\";\"other\"\n\"3200829\";\"فوینچه\";\"other\"\n\"3200837\";\"Foča\";\"main\"\n\"3200837\";\"Foca\";\"ascii\"\n\"3200837\";\"Srbinje\";\"other\"\n\"3200930\";\"Tomislavgrad\";\"main\"\n\"3200930\";\"Duvno\";\"other\"\n\"3200930\";\"Zupanjac\";\"other\"\n\"3200930\";\"Županjac\";\"other\"\n\"3200930\";\"Томиславград\";\"other\"\n\"3201057\";\"Dubravica\";\"main\"\n\"3201060\";\"Dubrave Gornje\";\"main\"\n\"3201060\";\"Gornje Dubrave\";\"other\"\n\"3201061\";\"Dubrave Donje\";\"main\"\n\"3201061\";\"Donje Dubrave\";\"other\"\n\"3201177\";\"Drinovci\";\"main\"\n\"3201376\";\"Donji Vakuf\";\"main\"\n\"3201376\";\"Srbobran\";\"other\"\n\"3201660\";\"Donja Međiđa\";\"main\"\n\"3201660\";\"Donja Medida\";\"ascii\"\n\"3201660\";\"Donja Mededa\";\"other\"\n\"3201660\";\"Donja Medjedja\";\"other\"\n\"3201660\";\"Donja Medjidja\";\"other\"\n\"3201660\";\"Donja Međeđa\";\"other\"\n\"3201662\";\"Donja Mahala\";\"main\"\n\"3201697\";\"Donja Dubica\";\"main\"\n\"3201928\";\"Dobrljin\";\"main\"\n\"3201928\";\"Dobrlin\";\"other\"\n\"3201931\";\"Dobrinje\";\"main\"\n\"3201984\";\"Doboj\";\"main\"\n\"3202014\";\"Divičani\";\"main\"\n\"3202014\";\"Divicani\";\"ascii\"\n\"3202081\";\"Derventa\";\"main\"\n\"3202081\";\"Derbend\";\"other\"\n\"3202081\";\"Dervent\";\"other\"\n\"3202081\";\"drbnd\";\"other\"\n\"3202081\";\"Дервента\";\"other\"\n\"3202081\";\"دربند\";\"other\"\n\"3202564\";\"Čitluk\";\"main\"\n\"3202564\";\"Citluk\";\"ascii\"\n\"3202589\";\"Cim\";\"main\"\n\"3202817\";\"Čečava\";\"main\"\n\"3202817\";\"Cecava\";\"ascii\"\n\"3202822\";\"Cazin\";\"main\"\n\"3202822\";\"Цазин\";\"other\"\n\"3202873\";\"Čapljina\";\"main\"\n\"3202873\";\"Capljina\";\"ascii\"\n\"3202895\";\"Čajniče\";\"main\"\n\"3202895\";\"Cajnice\";\"ascii\"\n\"3202935\";\"Bužim\";\"main\"\n\"3202935\";\"Buzim\";\"ascii\"\n\"3202955\";\"Busovača\";\"main\"\n\"3202955\";\"Busovaca\";\"ascii\"\n\"3203099\";\"Bugojno\";\"main\"\n\"3203099\";\"Bugojne\";\"other\"\n\"3203099\";\"Бугойно\";\"other\"\n\"3203099\";\"Бугојно\";\"other\"\n\"3203227\";\"Bronzani Majdan\";\"main\"\n\"3203521\";\"Brčko\";\"main\"\n\"3203521\";\"Brcko\";\"ascii\"\n\"3203521\";\"Brchko\";\"other\"\n\"3203521\";\"Брчко\";\"other\"\n\"3203533\";\"Bratunac\";\"main\"\n\"3203533\";\"Bratinac\";\"other\"\n\"3203644\";\"Bosansko Grahovo\";\"main\"\n\"3203644\";\"Bosansko Grakhovo\";\"other\"\n\"3203644\";\"Grahovo\";\"other\"\n\"3203644\";\"Hrvatsko Grahovo\";\"other\"\n\"3203644\";\"Босанско Грахово\";\"other\"\n\"3203645\";\"Bosanski Šamac\";\"main\"\n\"3203645\";\"Bosanski Samac\";\"ascii\"\n\"3203645\";\"Bosanski Shamac\";\"other\"\n\"3203645\";\"Samac\";\"other\"\n\"3203645\";\"Shamac\";\"other\"\n\"3203645\";\"Šamac\";\"other\"\n\"3203645\";\"Босански Шамац\";\"other\"\n\"3203645\";\"Шамац\";\"other\"\n\"3203647\";\"Bosanski Novi\";\"main\"\n\"3203647\";\"Novi\";\"other\"\n\"3203647\";\"Novi Grad\";\"other\"\n\"3203651\";\"Bosanski Brod\";\"main\"\n\"3203651\";\"Brod\";\"other\"\n\"3203651\";\"Srpski Brod\";\"other\"\n\"3203651\";\"Брод\";\"other\"\n\"3203653\";\"Bosanska Krupa\";\"main\"\n\"3203653\";\"Krupa\";\"other\"\n\"3203653\";\"Krupa na Uni\";\"other\"\n\"3203653\";\"Босанска Крупа\";\"other\"\n\"3203655\";\"Kostajnica\";\"main\"\n\"3203655\";\"Bosanska Kostajnica\";\"other\"\n\"3203655\";\"Srpska Kostajnica\";\"other\"\n\"3203656\";\"Bosanska Gradiška\";\"main\"\n\"3203656\";\"Bosanska Gradiska\";\"ascii\"\n\"3203656\";\"Gradiska\";\"other\"\n\"3203656\";\"Gradiska na Savi\";\"other\"\n\"3203656\";\"Gradiška\";\"other\"\n\"3203656\";\"Gradiška na Savi\";\"other\"\n\"3203657\";\"Bosanska Dubica\";\"main\"\n\"3203657\";\"Kozarska Dubica\";\"other\"\n\"3203950\";\"Blatnica\";\"main\"\n\"3203970\";\"Blagaj\";\"main\"\n\"3204161\";\"Bileća\";\"main\"\n\"3204161\";\"Bileca\";\"ascii\"\n\"3204161\";\"Bilece\";\"other\"\n\"3204161\";\"Bilegja\";\"other\"\n\"3204161\";\"Bileće\";\"other\"\n\"3204161\";\"bylz'h\";\"other\"\n\"3204161\";\"Билећа\";\"other\"\n\"3204161\";\"בילצ'ה\";\"other\"\n\"3204168\";\"Bila\";\"main\"\n\"3204186\";\"Bijeljina\";\"main\"\n\"3204186\";\"Beline\";\"other\"\n\"3204186\";\"Bieline\";\"other\"\n\"3204186\";\"Bijelina\";\"other\"\n\"3204186\";\"blnh\";\"other\"\n\"3204186\";\"byylynh\";\"other\"\n\"3204186\";\"Биелине\";\"other\"\n\"3204186\";\"Бијељина\";\"other\"\n\"3204186\";\"ביילינה\";\"other\"\n\"3204186\";\"بلنه\";\"other\"\n\"3204222\";\"Bihać\";\"main\"\n\"3204222\";\"Bihac\";\"ascii\"\n\"3204222\";\"Bihaç\";\"other\"\n\"3204222\";\"Bikhach\";\"other\"\n\"3204222\";\"Бихач\";\"other\"\n\"3204222\";\"Бихаћ\";\"other\"\n\"3204520\";\"Banovići\";\"main\"\n\"3204520\";\"Banovici\";\"ascii\"\n\"3204520\";\"Banovic\";\"other\"\n\"3204520\";\"Banović\";\"other\"\n\"3204520\";\"Litva\";\"other\"\n\"3204520\";\"Stara Litva\";\"other\"\n\"3204541\";\"Banja Luka\";\"main\"\n\"3204541\";\"Bana Luka\";\"other\"\n\"3204541\";\"Banialuca\";\"other\"\n\"3204541\";\"Banja Luka - Bana Luka\";\"other\"\n\"3204541\";\"Banja Luka - Бања Лука\";\"other\"\n\"3204541\";\"Banja-Luka\";\"other\"\n\"3204541\";\"Banyaluka\";\"other\"\n\"3204541\";\"ba ni ya lu ka\";\"other\"\n\"3204541\";\"Баня Лука\";\"other\"\n\"3204541\";\"Баня-Лука\";\"other\"\n\"3204541\";\"Бања Лука\";\"other\"\n\"3204541\";\"באניה לוקה\";\"other\"\n\"3204541\";\"バニャ・ルカ\";\"other\"\n\"3204541\";\"巴尼亚卢卡\";\"other\"\n\"3204590\";\"Balatun\";\"main\"\n\"3206012\";\"Koran\";\"main\"\n\"3210439\";\"Jelah\";\"main\"\n\"3210448\";\"Stanari\";\"main\"\n\"3210593\";\"Podbrdo\";\"main\"\n\"3210920\";\"Malešići\";\"main\"\n\"3210920\";\"Malesici\";\"ascii\"\n\"3211287\";\"Svojat\";\"main\"\n\"3211537\";\"Dvorovi\";\"main\"\n\"3211929\";\"Knežica\";\"main\"\n\"3211929\";\"Knezica\";\"ascii\"\n\"3212301\";\"Pjanići\";\"main\"\n\"3212301\";\"Pjanici\";\"ascii\"\n\"3212590\";\"Polje\";\"main\"\n\"3213083\";\"Ilići\";\"main\"\n\"3213083\";\"Ilici\";\"ascii\"\n\"3245419\";\"Careva Ćuprija\";\"main\"\n\"3245419\";\"Careva Cuprija\";\"ascii\"\n\"3247554\";\"Čelinac\";\"main\"\n\"3247554\";\"Celinac\";\"ascii\"\n\"3248645\";\"Piskavica\";\"main\"\n\"3249941\";\"Lamovita\";\"main\"\n\"3251418\";\"Putiševac\";\"main\"\n\"3251418\";\"Putisevac\";\"ascii\"\n\"3253010\";\"Tešanjka\";\"main\"\n\"3253010\";\"Tesanjka\";\"ascii\"\n\"3257948\";\"Kovači\";\"main\"\n\"3257948\";\"Kovaci\";\"ascii\"\n\"3258022\";\"Liješnica\";\"main\"\n\"3258022\";\"Lijesnica\";\"ascii\"\n\"3259075\";\"Ćoralići\";\"main\"\n\"3259075\";\"Coralici\";\"ascii\"\n\"3262021\";\"Crnići\";\"main\"\n\"3262021\";\"Crnici\";\"ascii\"\n\"3262877\";\"Barice\";\"main\"\n\"3268187\";\"Hotonj\";\"main\"\n\"3278045\";\"Skokovi\";\"main\"\n\"3283848\";\"Drežnica\";\"main\"\n\"3283848\";\"Dreznica\";\"ascii\"\n\"3289093\";\"Kačuni\";\"main\"\n\"3289093\";\"Kacuni\";\"ascii\"\n\"3293429\";\"Pajić Polje\";\"main\"\n\"3293429\";\"Pajic Polje\";\"ascii\"\n\"3295485\";\"Gornja Breza\";\"main\"\n\"3295485\";\"Breza\";\"other\"\n\"3301568\";\"Todorovo\";\"main\"\n\"3337476\";\"Konjic\";\"main\"\n\"3344411\";\"Jablanica\";\"main\"\n\"3344788\";\"Bijela\";\"main\"\n\"3373505\";\"Speightstown\";\"main\"\n\"3373505\";\"Spreightstown\";\"other\"\n\"3373652\";\"Oistins\";\"main\"\n\"3373652\";\"Oistin's Town\";\"other\"\n\"3373652\";\"Oistin’s Town\";\"other\"\n\"3373790\";\"Holetown\";\"main\"\n\"3373790\";\"The Hole\";\"other\"\n\"3374036\";\"Bridgetown\";\"main\"\n\"3374036\";\"Bridzhtaun\";\"other\"\n\"3374036\";\"Bridztaun\";\"other\"\n\"3374036\";\"Bridztaunas\";\"other\"\n\"3374036\";\"Bridžtaunas\";\"other\"\n\"3374036\";\"The Bridge Town\";\"other\"\n\"3374036\";\"beulijitaun\";\"other\"\n\"3374036\";\"brydj tawn\";\"other\"\n\"3374036\";\"bu li qi dun\";\"other\"\n\"3374036\";\"burijjitaun\";\"other\"\n\"3374036\";\"Бриджтаун\";\"other\"\n\"3374036\";\"Бриџтаун\";\"other\"\n\"3374036\";\"ברידג'טאון\";\"other\"\n\"3374036\";\"بريدج تاون\";\"other\"\n\"3374036\";\"ብርጅታውን\";\"other\"\n\"3374036\";\"ブリッジタウン\";\"other\"\n\"3374036\";\"布里奇敦\";\"other\"\n\"3374036\";\"브리지타운\";\"other\"\n\"3374083\";\"Bathsheba\";\"main\"\n\"1185092\";\"Thākurgaon\";\"main\"\n\"1185092\";\"Thakurgaon\";\"ascii\"\n\"1185092\";\"Thakurgaom\";\"other\"\n\"1185092\";\"Thakus Gaon\";\"other\"\n\"1185092\";\"Thākurgaom\";\"other\"\n\"1185095\";\"Teknāf\";\"main\"\n\"1185095\";\"Teknaf\";\"ascii\"\n\"1185095\";\"Teknaaf\";\"other\"\n\"1185098\";\"Tungi\";\"main\"\n\"1185098\";\"Tangi\";\"other\"\n\"1185098\";\"Tongi\";\"other\"\n\"1185098\";\"tangi\";\"other\"\n\"1185098\";\"টঙ্গী\";\"other\"\n\"1185099\";\"Sylhet\";\"main\"\n\"1185099\";\"Jalalabad\";\"other\"\n\"1185099\";\"Rajnagar\";\"other\"\n\"1185099\";\"Rājnagar\";\"other\"\n\"1185099\";\"Silet\";\"other\"\n\"1185099\";\"Sileţ\";\"other\"\n\"1185099\";\"Silhatta\";\"other\"\n\"1185099\";\"Silkhet\";\"other\"\n\"1185099\";\"Silot\";\"other\"\n\"1185099\";\"Silôţ\";\"other\"\n\"1185099\";\"Sreehatta\";\"other\"\n\"1185099\";\"Srihotto\";\"other\"\n\"1185099\";\"Srihôţţo\";\"other\"\n\"1185099\";\"sileta\";\"other\"\n\"1185099\";\"Силхет\";\"other\"\n\"1185099\";\"সিলেট\";\"other\"\n\"1185100\";\"Dohār\";\"main\"\n\"1185100\";\"Dohar\";\"ascii\"\n\"1185100\";\"Dohai\";\"other\"\n\"1185100\";\"Dohāi\";\"other\"\n\"1185100\";\"Sutarpara\";\"other\"\n\"1185100\";\"Sutārpara\";\"other\"\n\"1185106\";\"Jamālpur\";\"main\"\n\"1185106\";\"Jamalpur\";\"ascii\"\n\"1185106\";\"Jamaipur\";\"other\"\n\"1185106\";\"Singhjani\";\"other\"\n\"1185106\";\"Singhjāni\";\"other\"\n\"1185108\";\"Shibganj\";\"main\"\n\"1185108\";\"Sibganj\";\"other\"\n\"1185111\";\"Sātkhira\";\"main\"\n\"1185111\";\"Satkhira\";\"ascii\"\n\"1185111\";\"Shatkhira\";\"other\"\n\"1185115\";\"Sirājganj\";\"main\"\n\"1185115\";\"Sirajganj\";\"ascii\"\n\"1185115\";\"Serajganj Municipality\";\"other\"\n\"1185115\";\"Siradzhgandzh\";\"other\"\n\"1185115\";\"Siranganj\";\"other\"\n\"1185115\";\"sirajaganja\";\"other\"\n\"1185115\";\"Сираджгандж\";\"other\"\n\"1185115\";\"সিরাজগঞ্জ\";\"other\"\n\"1185116\";\"Netrakona\";\"main\"\n\"1185116\";\"Satpai\";\"other\"\n\"1185116\";\"Sātpāi\";\"other\"\n\"1185117\";\"Narsingdi\";\"main\"\n\"1185117\";\"Narsinghdi\";\"other\"\n\"1185117\";\"Satirpara\";\"other\"\n\"1185117\";\"Satirpāra\";\"other\"\n\"1185120\";\"Sandwīp\";\"main\"\n\"1185120\";\"Sandwip\";\"ascii\"\n\"1185120\";\"Sandvip\";\"other\"\n\"1185120\";\"Сандвип\";\"other\"\n\"1185121\";\"Shāhzādpur\";\"main\"\n\"1185121\";\"Shahzadpur\";\"ascii\"\n\"1185121\";\"Sahzadpur\";\"other\"\n\"1185127\";\"Rāmganj\";\"main\"\n\"1185127\";\"Ramganj\";\"ascii\"\n\"1185127\";\"Ratanpur\";\"other\"\n\"1185128\";\"Rājshāhi\";\"main\"\n\"1185128\";\"Rajshahi\";\"ascii\"\n\"1185128\";\"Radzhshakhi\";\"other\"\n\"1185128\";\"Rampur Baolia\";\"other\"\n\"1185128\";\"Rampur Bauleah\";\"other\"\n\"1185128\";\"Rampur Boalia\";\"other\"\n\"1185128\";\"Раджшахи\";\"other\"\n\"1185128\";\"রাজশাহী\";\"other\"\n\"1185138\";\"Pirojpur\";\"main\"\n\"1185138\";\"Perijpur\";\"other\"\n\"1185138\";\"Perojpur Municipality\";\"other\"\n\"1185141\";\"Panchagarh\";\"main\"\n\"1185141\";\"Pachagar\";\"other\"\n\"1185141\";\"Pachagarh\";\"other\"\n\"1185141\";\"Pachāgarh\";\"other\"\n\"1185148\";\"Patiya\";\"main\"\n\"1185148\";\"Patia\";\"other\"\n\"1185149\";\"Parbatipur\";\"main\"\n\"1185149\";\"Parvatipur\";\"other\"\n\"1185149\";\"Pārvatīpur\";\"other\"\n\"1185155\";\"Nārāyanganj\";\"main\"\n\"1185155\";\"Narayanganj\";\"ascii\"\n\"1185155\";\"Narajanganj\";\"other\"\n\"1185156\";\"Nālchiti\";\"main\"\n\"1185156\";\"Nalchiti\";\"ascii\"\n\"1185156\";\"Nalchhiti\";\"other\"\n\"1185160\";\"Nageswari\";\"main\"\n\"1185160\";\"Nagasewari\";\"other\"\n\"1185160\";\"Nageshawari\";\"other\"\n\"1185160\";\"Nageshwari\";\"other\"\n\"1185160\";\"Nagheswari\";\"other\"\n\"1185160\";\"Nāgeshwari\";\"other\"\n\"1185160\";\"Paschim Nageswari\";\"other\"\n\"1185162\";\"Mymensingh\";\"main\"\n\"1185162\";\"Majmensingkh\";\"other\"\n\"1185162\";\"Mymensing\";\"other\"\n\"1185162\";\"Nasirabad\";\"other\"\n\"1185162\";\"Nasirābād\";\"other\"\n\"1185162\";\"Майменсингх\";\"other\"\n\"1185164\";\"Muktāgācha\";\"main\"\n\"1185164\";\"Muktagacha\";\"ascii\"\n\"1185164\";\"Muktagachha\";\"other\"\n\"1185165\";\"Mirzāpur\";\"main\"\n\"1185165\";\"Mirzapur\";\"ascii\"\n\"1185165\";\"Mrizapur\";\"other\"\n\"1185165\";\"Мирзапур\";\"other\"\n\"1185166\";\"Moulvi Bāzār\";\"main\"\n\"1185166\";\"Moulvi Bazar\";\"ascii\"\n\"1185166\";\"Maulvi Bazar\";\"other\"\n\"1185166\";\"Maulvi Bāzār\";\"other\"\n\"1185166\";\"Moulvi Bazar Municipality\";\"other\"\n\"1185167\";\"Morrelgonj\";\"main\"\n\"1185167\";\"Fakirertakia\";\"other\"\n\"1185167\";\"Fakirertākia\";\"other\"\n\"1185167\";\"Morrelganj\";\"other\"\n\"1185167\";\"Morrellganj\";\"other\"\n\"1185171\";\"Mehendiganj\";\"main\"\n\"1185171\";\"Mehdigunj\";\"other\"\n\"1185173\";\"Mathba\";\"main\"\n\"1185173\";\"Matbari\";\"other\"\n\"1185173\";\"Matbaria\";\"other\"\n\"1185173\";\"Matbāri\";\"other\"\n\"1185173\";\"Mathbari\";\"other\"\n\"1185173\";\"Mathbaria\";\"other\"\n\"1185173\";\"Sankibhanga\";\"other\"\n\"1185181\";\"Lālmanir Hāt\";\"main\"\n\"1185181\";\"Lalmanir Hat\";\"ascii\"\n\"1185181\";\"Lalmanirat\";\"other\"\n\"1185181\";\"Lalmonirhat\";\"other\"\n\"1185183\";\"Lākshām\";\"main\"\n\"1185183\";\"Laksham\";\"ascii\"\n\"1185183\";\"Laksam\";\"other\"\n\"1185186\";\"Comilla\";\"main\"\n\"1185186\";\"Komille\";\"other\"\n\"1185186\";\"Kumilla\";\"other\"\n\"1185186\";\"Kumillā\";\"other\"\n\"1185186\";\"kumilla\";\"other\"\n\"1185186\";\"Комилле\";\"other\"\n\"1185186\";\"কুমিল্লা\";\"other\"\n\"1185188\";\"Rangpur\";\"main\"\n\"1185188\";\"Kotwali\";\"other\"\n\"1185188\";\"Kotwāli\";\"other\"\n\"1185188\";\"Mosque Rangpur\";\"other\"\n\"1185188\";\"Рангпур\";\"other\"\n\"1185191\";\"Kushtia\";\"main\"\n\"1185191\";\"Khustia\";\"other\"\n\"1185199\";\"Kālīganj\";\"main\"\n\"1185199\";\"Kaliganj\";\"ascii\"\n\"1185199\";\"Aliganj\";\"other\"\n\"1185199\";\"Kaliganja\";\"other\"\n\"1185204\";\"Jhingergācha\";\"main\"\n\"1185204\";\"Jhingergacha\";\"ascii\"\n\"1185204\";\"Jhikargacha\";\"other\"\n\"1185204\";\"Jhikargachha\";\"other\"\n\"1185204\";\"Jhikargāchha\";\"other\"\n\"1185204\";\"Jhikergacha\";\"other\"\n\"1185204\";\"Jhinkargacha\";\"other\"\n\"1185206\";\"Jaipur Hāt\";\"main\"\n\"1185206\";\"Jaipur Hat\";\"ascii\"\n\"1185206\";\"Jaypur Hat\";\"other\"\n\"1185207\";\"Ishurdi\";\"main\"\n\"1185207\";\"Ishurda\";\"other\"\n\"1185209\";\"Habiganj\";\"main\"\n\"1185209\";\"Habiganj Bazar\";\"other\"\n\"1185209\";\"Habiganj Sadar\";\"other\"\n\"1185209\";\"Hobiganj\";\"other\"\n\"1185210\";\"Gaurnadi\";\"main\"\n\"1185210\";\"Gournadi\";\"other\"\n\"1185218\";\"Gafargaon\";\"main\"\n\"1185218\";\"Gaffargaon\";\"other\"\n\"1185218\";\"Ghafargaon\";\"other\"\n\"1185224\";\"Feni\";\"main\"\n\"1185224\";\"Fani\";\"other\"\n\"1185224\";\"Fenny\";\"other\"\n\"1185224\";\"Pheni\";\"other\"\n\"1185236\";\"Rāipur\";\"main\"\n\"1185236\";\"Raipur\";\"ascii\"\n\"1185236\";\"Deyanatpur\";\"other\"\n\"1185236\";\"Deyānatpur\";\"other\"\n\"1185236\";\"Rajpur\";\"other\"\n\"1185236\";\"Raypur\";\"other\"\n\"1185236\";\"Райпур\";\"other\"\n\"1185239\";\"Sarankhola\";\"main\"\n\"1185239\";\"Dakshin Rajapur\";\"other\"\n\"1185239\";\"Dakshin Rājāpur\";\"other\"\n\"1185241\";\"Dhaka\";\"main\"\n\"1185241\";\"Daca\";\"other\"\n\"1185241\";\"Dacca\";\"other\"\n\"1185241\";\"Dacca - dhaka\";\"other\"\n\"1185241\";\"Dacca - ঢাকা\";\"other\"\n\"1185241\";\"Daka\";\"other\"\n\"1185241\";\"Dakah\";\"other\"\n\"1185241\";\"Dakka\";\"other\"\n\"1185241\";\"Dako\";\"other\"\n\"1185241\";\"Dháka\";\"other\"\n\"1185241\";\"Dhâkâ\";\"other\"\n\"1185241\";\"Mujib City\";\"other\"\n\"1185241\";\"Ntakka\";\"other\"\n\"1185241\";\"da ka\";\"other\"\n\"1185241\";\"daka\";\"other\"\n\"1185241\";\"dakka\";\"other\"\n\"1185241\";\"dhaka\";\"other\"\n\"1185241\";\"dka\";\"other\"\n\"1185241\";\"thaka\";\"other\"\n\"1185241\";\"Ντάκκα\";\"other\"\n\"1185241\";\"Дакка\";\"other\"\n\"1185241\";\"דאקה\";\"other\"\n\"1185241\";\"دكا\";\"other\"\n\"1185241\";\"ڈھاکہ\";\"other\"\n\"1185241\";\"ढाका\";\"other\"\n\"1185241\";\"ঢাকা\";\"other\"\n\"1185241\";\"ઢાકા\";\"other\"\n\"1185241\";\"ธากา\";\"other\"\n\"1185241\";\"ダッカ\";\"other\"\n\"1185241\";\"达卡\";\"other\"\n\"1185241\";\"다카\";\"other\"\n\"1185247\";\"Chilmāri\";\"main\"\n\"1185247\";\"Chilmari\";\"ascii\"\n\"1185247\";\"Chillmari\";\"other\"\n\"1185249\";\"Chhāgalnāiya\";\"main\"\n\"1185249\";\"Chhagalnaiya\";\"ascii\"\n\"1185249\";\"Chhagainaya\";\"other\"\n\"1185249\";\"Chhagalnaia\";\"other\"\n\"1185249\";\"Chhagalnaya\";\"other\"\n\"1185249\";\"Paschim Chhagalnaiya\";\"other\"\n\"1185249\";\"Paschim Chhāgalnāiya\";\"other\"\n\"1185249\";\"West Chhagal Naiya\";\"other\"\n\"1185249\";\"West Chhagalnaia\";\"other\"\n\"1185251\";\"Lālmohan\";\"main\"\n\"1185251\";\"Lalmohan\";\"ascii\"\n\"1185251\";\"Char Lalmohan\";\"other\"\n\"1185251\";\"Char Lalmohun\";\"other\"\n\"1185251\";\"Char Lālmohan\";\"other\"\n\"1185251\";\"Dhar Lalmohan\";\"other\"\n\"1185252\";\"Khagrāchari\";\"main\"\n\"1185252\";\"Khagrachari\";\"ascii\"\n\"1185252\";\"Changrachhari\";\"other\"\n\"1185252\";\"Khabangpari\";\"other\"\n\"1185252\";\"Khagrachhari\";\"other\"\n\"1185252\";\"Khagrāchhari\";\"other\"\n\"1185252\";\"Kkhagrachari\";\"other\"\n\"1185252\";\"Кхаграчари\";\"other\"\n\"1185254\";\"Chhātak\";\"main\"\n\"1185254\";\"Chhatak\";\"ascii\"\n\"1185254\";\"Cehatak\";\"other\"\n\"1185254\";\"Chatak\";\"other\"\n\"1185254\";\"Chattakbazar\";\"other\"\n\"1185254\";\"Chhatar Bazaar\";\"other\"\n\"1185260\";\"Bhātpāra Abhaynagar\";\"main\"\n\"1185260\";\"Bhatpara Abhaynagar\";\"ascii\"\n\"1185260\";\"Abhaynagar\";\"other\"\n\"1185262\";\"Bherāmāra\";\"main\"\n\"1185262\";\"Bheramara\";\"ascii\"\n\"1185262\";\"Bhairamara\";\"other\"\n\"1185263\";\"Bhairab Bāzār\";\"main\"\n\"1185263\";\"Bhairab Bazar\";\"ascii\"\n\"1185263\";\"Bhairab Town\";\"other\"\n\"1185270\";\"Bāndarban\";\"main\"\n\"1185270\";\"Bandarban\";\"ascii\"\n\"1185270\";\"Bardarban\";\"other\"\n\"1185270\";\"Бандарбан\";\"other\"\n\"1185272\";\"Kālia\";\"main\"\n\"1185272\";\"Kalia\";\"ascii\"\n\"1185272\";\"Bara Kalia\";\"other\"\n\"1185272\";\"Bara Kālia\";\"other\"\n\"1185272\";\"Kalija\";\"other\"\n\"1185272\";\"Калия\";\"other\"\n\"1185274\";\"Baniachang\";\"main\"\n\"1185274\";\"Banivachong\";\"other\"\n\"1185274\";\"Baniyachong\";\"other\"\n\"1185274\";\"Baniyachung\";\"other\"\n\"1185274\";\"Bāniyāchung\";\"other\"\n\"1185276\";\"Bājitpur\";\"main\"\n\"1185276\";\"Bajitpur\";\"ascii\"\n\"1185276\";\"Bajutpur\";\"other\"\n\"1185283\";\"Badarganj\";\"main\"\n\"1185283\";\"Badarganja\";\"other\"\n\"1185293\";\"Narail\";\"main\"\n\"1185293\";\"Aladatpur\";\"other\"\n\"1185293\";\"Alādātpur\";\"other\"\n\"1185293\";\"Naral\";\"other\"\n\"1185293\";\"Narāl\";\"other\"\n\"1185920\";\"Tungipāra\";\"main\"\n\"1185920\";\"Tungipara\";\"ascii\"\n\"1185920\";\"Tongipara\";\"other\"\n\"1188569\";\"Sarishābāri\";\"main\"\n\"1188569\";\"Sarishabari\";\"ascii\"\n\"1188569\";\"Sarisabar\";\"other\"\n\"1188569\";\"Sarisabari\";\"other\"\n\"1188569\";\"Sarsabari\";\"other\"\n\"1189056\";\"Sakhipur\";\"main\"\n\"1189638\";\"Raojān\";\"main\"\n\"1189638\";\"Raojan\";\"ascii\"\n\"1189638\";\"Raajan\";\"other\"\n\"1189638\";\"Raajān\";\"other\"\n\"1189638\";\"Raozan\";\"other\"\n\"1189638\";\"Rauzan\";\"other\"\n\"1191139\";\"Phultala\";\"main\"\n\"1191368\";\"Pālang\";\"main\"\n\"1191368\";\"Palang\";\"ascii\"\n\"1192366\";\"Pār Naogaon\";\"main\"\n\"1192366\";\"Par Naogaon\";\"ascii\"\n\"1193823\";\"Nabīnagar\";\"main\"\n\"1193823\";\"Nabinagar\";\"ascii\"\n\"1196292\";\"Lakshmīpur\";\"main\"\n\"1196292\";\"Lakshmipur\";\"ascii\"\n\"1197895\";\"Kesabpur\";\"main\"\n\"1197895\";\"Keshabpur\";\"other\"\n\"1201753\";\"Hājīganj\";\"main\"\n\"1201753\";\"Hajiganj\";\"ascii\"\n\"1203344\";\"Farīdpur\";\"main\"\n\"1203344\";\"Faridpur\";\"ascii\"\n\"1203891\";\"Dinājpur\";\"main\"\n\"1203891\";\"Dinajpur\";\"ascii\"\n\"1205481\";\"Uttar Char Fasson\";\"main\"\n\"1205481\";\"Dakshin Char Fasson\";\"other\"\n\"1205481\";\"South Char Fashion\";\"other\"\n\"1205733\";\"Chittagong\";\"main\"\n\"1205733\";\"Chittagong Ghat\";\"other\"\n\"1205733\";\"Chottogram\";\"other\"\n\"1205733\";\"Chôţţogram\";\"other\"\n\"1205733\";\"Citagonga\";\"other\"\n\"1205733\";\"Citagongas\";\"other\"\n\"1205733\";\"Cottogram\";\"other\"\n\"1205733\";\"Islamabad\";\"other\"\n\"1205733\";\"chittagon\";\"other\"\n\"1205733\";\"ji da gang\";\"other\"\n\"1205733\";\"Ćottogram\";\"other\"\n\"1205733\";\"Čitagonga\";\"other\"\n\"1205733\";\"Čitagongas\";\"other\"\n\"1205733\";\"Читтагонг\";\"other\"\n\"1205733\";\"চট্টগ্রাম\";\"other\"\n\"1205733\";\"チッタゴン\";\"other\"\n\"1205733\";\"吉大港\";\"other\"\n\"1207047\";\"Char Bhadrāsan\";\"main\"\n\"1207047\";\"Char Bhadrasan\";\"ascii\"\n\"1209562\";\"Bera\";\"main\"\n\"1209562\";\"Berah\";\"other\"\n\"1209562\";\"Beru\";\"other\"\n\"1209562\";\"Беру\";\"other\"\n\"1210565\";\"Burhānuddin\";\"main\"\n\"1210565\";\"Burhanuddin\";\"ascii\"\n\"1210565\";\"Barahanuddin\";\"other\"\n\"1210565\";\"Barahānuddin\";\"other\"\n\"1336133\";\"Sātkania\";\"main\"\n\"1336133\";\"Satkania\";\"ascii\"\n\"1336134\";\"Cox’s Bāzār\";\"main\"\n\"1336134\";\"Cox's Bazar\";\"ascii\"\n\"1336134\";\"Koks-Bazar\";\"other\"\n\"1336134\";\"Кокс-Базар\";\"other\"\n\"1336135\";\"Khulna\";\"main\"\n\"1336135\";\"Kkhulna\";\"other\"\n\"1336135\";\"kuruna\";\"other\"\n\"1336135\";\"Кхулна\";\"other\"\n\"1336135\";\"খুলনা\";\"other\"\n\"1336135\";\"クルナ\";\"other\"\n\"1336136\";\"Bhola\";\"main\"\n\"1336137\";\"Barisāl\";\"main\"\n\"1336137\";\"Barisal\";\"ascii\"\n\"1336137\";\"Barisal Sadar\";\"other\"\n\"1336137\";\"Barīsal Sadar\";\"other\"\n\"1336137\";\"barisala\";\"other\"\n\"1336137\";\"Барисал\";\"other\"\n\"1336137\";\"বরিশাল\";\"other\"\n\"1336140\";\"Jessore\";\"main\"\n\"1336143\";\"Pābna\";\"main\"\n\"1336143\";\"Pabna\";\"ascii\"\n\"1336143\";\"Pabne\";\"other\"\n\"1336143\";\"Пабне\";\"other\"\n\"1336144\";\"Tāngāil\";\"main\"\n\"1336144\";\"Tangail\";\"ascii\"\n\"1337239\";\"Pīrgaaj\";\"main\"\n\"1337239\";\"Pirgaaj\";\"ascii\"\n\"1337239\";\"Pirganj\";\"other\"\n\"1337239\";\"Pīrganj\";\"other\"\n\"1337240\";\"Nawābganj\";\"main\"\n\"1337240\";\"Nawabganj\";\"ascii\"\n\"1337245\";\"Mādārīpur\";\"main\"\n\"1337245\";\"Madaripur\";\"ascii\"\n\"1337248\";\"Sherpur\";\"main\"\n\"1337249\";\"Kishorganj\";\"main\"\n\"1337249\";\"Kisharganj\";\"other\"\n\"1337249\";\"Kishoreganj\";\"other\"\n\"1337249\";\"Kishoreganj Municipality\";\"other\"\n\"1462681\";\"Manikchari\";\"main\"\n\"1462681\";\"Manikchhari\";\"other\"\n\"1462681\";\"Mānikchhari\";\"other\"\n\"1477498\";\"Bhāndāria\";\"main\"\n\"1477498\";\"Bhandaria\";\"ascii\"\n\"6414184\";\"Fatikchari\";\"main\"\n\"6545349\";\"Saidpur\";\"main\"\n\"2783081\";\"Zwijndrecht\";\"main\"\n\"2783081\";\"Zwyndrecht\";\"other\"\n\"2783089\";\"Zwevegem\";\"main\"\n\"2783089\";\"Sweveghem\";\"other\"\n\"2783089\";\"Zwevehem\";\"other\"\n\"2783143\";\"Zutendaal\";\"main\"\n\"2783143\";\"Sutendael\";\"other\"\n\"2783151\";\"Zulte\";\"main\"\n\"2783153\";\"Zuienkerke\";\"main\"\n\"2783153\";\"Zuujnkerke\";\"other\"\n\"2783153\";\"Zuyenkerke\";\"other\"\n\"2783170\";\"Zoutleeuw\";\"main\"\n\"2783170\";\"Leau\";\"other\"\n\"2783170\";\"Léau\";\"other\"\n\"2783170\";\"Zoutleew\";\"other\"\n\"2783175\";\"Zottegem\";\"main\"\n\"2783175\";\"Sottegem\";\"other\"\n\"2783175\";\"Зоттегем\";\"other\"\n\"2783184\";\"Zonnebeke\";\"main\"\n\"2783184\";\"Zunnebeke\";\"other\"\n\"2783188\";\"Zonhoven\";\"main\"\n\"2783188\";\"Zoneve\";\"other\"\n\"2783188\";\"Zonhovena\";\"other\"\n\"2783195\";\"Zomergem\";\"main\"\n\"2783195\";\"Somergein\";\"other\"\n\"2783195\";\"Somergem\";\"other\"\n\"2783204\";\"Zoersel\";\"main\"\n\"2783215\";\"Zingem\";\"main\"\n\"2783215\";\"Syngem\";\"other\"\n\"2783274\";\"Zemst\";\"main\"\n\"2783274\";\"Sempst\";\"other\"\n\"2783274\";\"Земст\";\"other\"\n\"2783278\";\"Zelzate\";\"main\"\n\"2783278\";\"Selzaet\";\"other\"\n\"2783278\";\"Selzaete\";\"other\"\n\"2783293\";\"Zele\";\"main\"\n\"2783293\";\"Зеле\";\"other\"\n\"2783307\";\"Zeebrugge\";\"main\"\n\"2783307\";\"Zeebruhhe\";\"other\"\n\"2783307\";\"Zeebrygge\";\"other\"\n\"2783307\";\"Zêebrugge\";\"other\"\n\"2783308\";\"Zedelgem\";\"main\"\n\"2783308\";\"Zedel'gem\";\"other\"\n\"2783308\";\"Zedelghem\";\"other\"\n\"2783308\";\"Zillegem\";\"other\"\n\"2783308\";\"Zillehem\";\"other\"\n\"2783308\";\"Зедельгем\";\"other\"\n\"2783310\";\"Zaventem\";\"main\"\n\"2783310\";\"Saventhem\";\"other\"\n\"2783347\";\"Zandhoven\";\"main\"\n\"2783347\";\"Santhoven\";\"other\"\n\"2783385\";\"Yvoir\";\"main\"\n\"2783385\";\"Uwar\";\"other\"\n\"2783416\";\"Wuustwezel\";\"main\"\n\"2783416\";\"Wuestwezel\";\"other\"\n\"2783462\";\"Wommelgem\";\"main\"\n\"2783462\";\"Wommelghem\";\"other\"\n\"2783586\";\"Wingene\";\"main\"\n\"2783586\";\"Wynghene\";\"other\"\n\"2783632\";\"Willebroek\";\"main\"\n\"2783632\";\"Villebruk\";\"other\"\n\"2783632\";\"Willebroeck\";\"other\"\n\"2783632\";\"Виллебрук\";\"other\"\n\"2783684\";\"Wijnegem\";\"main\"\n\"2783684\";\"Wyneghem\";\"other\"\n\"2783717\";\"Wielsbeke\";\"main\"\n\"2783728\";\"Wichelen\";\"main\"\n\"2783737\";\"Wezembeek-Oppem\";\"main\"\n\"2783737\";\"Wesembeek\";\"other\"\n\"2783759\";\"Wevelgem\";\"main\"\n\"2783759\";\"Vevel'geme\";\"other\"\n\"2783759\";\"Wevelghem\";\"other\"\n\"2783759\";\"Wevelhem\";\"other\"\n\"2783759\";\"Вевельгеме\";\"other\"\n\"2783763\";\"Wetteren\";\"main\"\n\"2783763\";\"Vetteren\";\"other\"\n\"2783763\";\"Wetteran\";\"other\"\n\"2783763\";\"Веттерен\";\"other\"\n\"2783801\";\"Westerlo\";\"main\"\n\"2783801\";\"Vesterlo\";\"other\"\n\"2783801\";\"Westerloo\";\"other\"\n\"2783801\";\"Вестерло\";\"other\"\n\"2783820\";\"Wervik\";\"main\"\n\"2783820\";\"Wervicq\";\"other\"\n\"2783854\";\"Wenduine\";\"main\"\n\"2783854\";\"Vandjuin\";\"other\"\n\"2783854\";\"Wenduyne\";\"other\"\n\"2783854\";\"Вандюин\";\"other\"\n\"2783856\";\"Wemmel\";\"main\"\n\"2783862\";\"Wellin\";\"main\"\n\"2783864\";\"Wellen\";\"main\"\n\"2783864\";\"Wille\";\"other\"\n\"2783870\";\"Welkenraedt\";\"main\"\n\"2783941\";\"Wavre\";\"main\"\n\"2783941\";\"Babr\";\"other\"\n\"2783941\";\"Vavr\";\"other\"\n\"2783941\";\"Wave\";\"other\"\n\"2783941\";\"Waver\";\"other\"\n\"2783941\";\"Wåve\";\"other\"\n\"2783941\";\"Βάβρ\";\"other\"\n\"2783941\";\"Вавр\";\"other\"\n\"2783985\";\"Waterloo\";\"main\"\n\"2783985\";\"Vaterlo\";\"other\"\n\"2783985\";\"Waterlo\";\"other\"\n\"2783985\";\"Waterlô\";\"other\"\n\"2783985\";\"Ватерло\";\"other\"\n\"2784010\";\"Wasseiges\";\"main\"\n\"2784066\";\"Waremme\";\"main\"\n\"2784066\";\"Borgworm\";\"other\"\n\"2784068\";\"Waregem\";\"main\"\n\"2784068\";\"Varegem\";\"other\"\n\"2784068\";\"Waereghem\";\"other\"\n\"2784068\";\"Woaregem\";\"other\"\n\"2784068\";\"Варегем\";\"other\"\n\"2784092\";\"Wanze\";\"main\"\n\"2784168\";\"Walhain-Saint-Paul\";\"main\"\n\"2784168\";\"Walhain\";\"other\"\n\"2784189\";\"Walcourt\";\"main\"\n\"2784189\";\"Walcou\";\"other\"\n\"2784189\";\"Walcoû\";\"other\"\n\"2784199\";\"Waimes\";\"main\"\n\"2784199\";\"Weismes\";\"other\"\n\"2784227\";\"Wachtebeke\";\"main\"\n\"2784231\";\"Waasmunster\";\"main\"\n\"2784231\";\"Waesmunster\";\"other\"\n\"2784237\";\"Waarschoot\";\"main\"\n\"2784237\";\"Waerschoot\";\"other\"\n\"2784349\";\"Vosselaar\";\"main\"\n\"2784349\";\"Vosselaer\";\"other\"\n\"2784370\";\"Vorselaar\";\"main\"\n\"2784370\";\"Vorsselaer\";\"other\"\n\"2784548\";\"Visé\";\"main\"\n\"2784548\";\"Vise\";\"ascii\"\n\"2784548\";\"Wezet\";\"other\"\n\"2784555\";\"Virton\";\"main\"\n\"2784555\";\"Wirten\";\"other\"\n\"2784555\";\"Виртон\";\"other\"\n\"2784604\";\"Vilvoorde\";\"main\"\n\"2784604\";\"Vilvorde\";\"other\"\n\"2784639\";\"Villers-le-Bouillet\";\"main\"\n\"2784641\";\"Villers-la-Ville\";\"main\"\n\"2784775\";\"Vielsalm\";\"main\"\n\"2784775\";\"Li Viye Sam\";\"other\"\n\"2784775\";\"Li Viye Såm\";\"other\"\n\"2784804\";\"Veurne\";\"main\"\n\"2784804\";\"Furnes\";\"other\"\n\"2784821\";\"Verviers\";\"main\"\n\"2784821\";\"Vervi\";\"other\"\n\"2784821\";\"Vervî\";\"other\"\n\"2784856\";\"Verlaine\";\"main\"\n\"2784994\";\"Vaux-sur-Sûre\";\"main\"\n\"2784994\";\"Vaux-sur-Sure\";\"ascii\"\n\"2785141\";\"Turnhout\";\"main\"\n\"2785141\";\"Turnkhout\";\"other\"\n\"2785141\";\"Турнхоут\";\"other\"\n\"2785169\";\"Tubize\";\"main\"\n\"2785169\";\"Tjubiz\";\"other\"\n\"2785169\";\"Tubeke\";\"other\"\n\"2785169\";\"Тюбиз\";\"other\"\n\"2785208\";\"Trooz\";\"main\"\n\"2785223\";\"Trois Ponts\";\"main\"\n\"2785293\";\"Tremelo\";\"main\"\n\"2785293\";\"Tremeloo\";\"other\"\n\"2785341\";\"Tournai\";\"main\"\n\"2785341\";\"Doornik\";\"other\"\n\"2785341\";\"Doornyk\";\"other\"\n\"2785341\";\"Tournay\";\"other\"\n\"2785341\";\"Turne\";\"other\"\n\"2785341\";\"to~urune\";\"other\"\n\"2785341\";\"twrnh\";\"other\"\n\"2785341\";\"Турне\";\"other\"\n\"2785341\";\"טורנה\";\"other\"\n\"2785341\";\"トゥルネー\";\"other\"\n\"2785364\";\"Torhout\";\"main\"\n\"2785364\";\"Thourout\";\"other\"\n\"2785364\";\"Toeroet\";\"other\"\n\"2785364\";\"Torkhout\";\"other\"\n\"2785364\";\"Торхоут\";\"other\"\n\"2785389\";\"Tongeren\";\"main\"\n\"2785389\";\"Atuatuca Tungrorum\";\"other\"\n\"2785389\";\"Tongere\";\"other\"\n\"2785389\";\"Tongres\";\"other\"\n\"2785389\";\"Tungro\";\"other\"\n\"2785389\";\"Tóngere\";\"other\"\n\"2785389\";\"Тонгерен\";\"other\"\n\"2785422\";\"Tintigny\";\"main\"\n\"2785427\";\"Tinlot\";\"main\"\n\"2785470\";\"Tienen\";\"main\"\n\"2785470\";\"Thienen\";\"other\"\n\"2785470\";\"Tinen\";\"other\"\n\"2785470\";\"Tirlemont\";\"other\"\n\"2785470\";\"Тинен\";\"other\"\n\"2785476\";\"Tielt\";\"main\"\n\"2785476\";\"Thielt\";\"other\"\n\"2785517\";\"Thuin\";\"main\"\n\"2785593\";\"Theux\";\"main\"\n\"2785593\";\"Teu\";\"other\"\n\"2785593\";\"Thieux\";\"other\"\n\"2785612\";\"Tessenderlo\";\"main\"\n\"2785612\";\"Loei\";\"other\"\n\"2785612\";\"Tessenderloo\";\"other\"\n\"2785622\";\"Tervuren\";\"main\"\n\"2785622\";\"Tervjuren\";\"other\"\n\"2785622\";\"Tervueren\";\"other\"\n\"2785622\";\"Тервюрен\";\"other\"\n\"2785654\";\"Ternat\";\"main\"\n\"2785654\";\"Ternath\";\"other\"\n\"2785745\";\"Tenneville\";\"main\"\n\"2785778\";\"Temse\";\"main\"\n\"2785778\";\"Tamise\";\"other\"\n\"2785778\";\"Tamsch\";\"other\"\n\"2785778\";\"Tamse\";\"other\"\n\"2785778\";\"Temsche\";\"other\"\n\"2785778\";\"Темсе\";\"other\"\n\"2785793\";\"Tellin\";\"main\"\n\"2785989\";\"Stoumont\";\"main\"\n\"2785989\";\"Staumont\";\"other\"\n\"2786087\";\"Stekene\";\"main\"\n\"2786124\";\"Steenokkerzeel\";\"main\"\n\"2786124\";\"Steen-Ockerzeel\";\"other\"\n\"2786185\";\"Stavelot\";\"main\"\n\"2786185\";\"Stablo\";\"other\"\n\"2786226\";\"Staden\";\"main\"\n\"2786229\";\"Stabroek\";\"main\"\n\"2786229\";\"Stabroeck\";\"other\"\n\"2786242\";\"Sprimont\";\"main\"\n\"2786318\";\"Spa\";\"main\"\n\"2786318\";\"Spa La Sauvehiece\";\"other\"\n\"2786318\";\"Spå\";\"other\"\n\"2786318\";\"Σπα\";\"other\"\n\"2786318\";\"Спа\";\"other\"\n\"2786344\";\"Soumagne\";\"main\"\n\"2786387\";\"Somme-Leuze\";\"main\"\n\"2786390\";\"Sombreffe\";\"main\"\n\"2786390\";\"Sombrefe\";\"other\"\n\"2786420\";\"Soignies\";\"main\"\n\"2786420\";\"Suan'e\";\"other\"\n\"2786420\";\"Zinnik\";\"other\"\n\"2786420\";\"Суанье\";\"other\"\n\"2786545\";\"Sint-Truiden\";\"main\"\n\"2786545\";\"Saint-Trond\";\"other\"\n\"2786545\";\"Sint Truijen\";\"other\"\n\"2786545\";\"Sint-Trjujden\";\"other\"\n\"2786545\";\"Sintruin\";\"other\"\n\"2786545\";\"Синт-Трюйден\";\"other\"\n\"2786559\";\"Sint-Pieters-Leeuw\";\"main\"\n\"2786559\";\"Leeuw-Saint-Pierre\";\"other\"\n\"2786578\";\"Sint-Niklaas\";\"main\"\n\"2786578\";\"Saint Nicolas\";\"other\"\n\"2786578\";\"Saint-Nicolas\";\"other\"\n\"2786578\";\"Sint-Niklas\";\"other\"\n\"2786578\";\"Синт-Никлас\";\"other\"\n\"2786587\";\"Sint-Martens-Lennik\";\"main\"\n\"2786587\";\"Lennick-Saint-Martin\";\"other\"\n\"2786587\";\"Lennik\";\"other\"\n\"2786591\";\"Sint-Martens-Latem\";\"main\"\n\"2786591\";\"Laethem-Saint-Martin\";\"other\"\n\"2786603\";\"Sint-Maria-Lierde\";\"main\"\n\"2786603\";\"Lierde-Sainte-Marie\";\"other\"\n\"2786616\";\"Sint-Lievens-Houtem\";\"main\"\n\"2786616\";\"Hautem-Saint-Lievin\";\"other\"\n\"2786616\";\"Hautem-Saint-Liévin\";\"other\"\n\"2786626\";\"Sint-Laureins\";\"main\"\n\"2786626\";\"Saint-Laurent\";\"other\"\n\"2786641\";\"Sint-Katelijne-Waver\";\"main\"\n\"2786641\";\"Wavre-Sainte-Catherine\";\"other\"\n\"2786694\";\"Sint-Gillis-Waas\";\"main\"\n\"2786694\";\"Saint-Gilles-Waes\";\"other\"\n\"2786694\";\"Saint-Gillis-Waas\";\"other\"\n\"2786700\";\"Sint-Genesius-Rode\";\"main\"\n\"2786700\";\"Rhode-Saint-Genese\";\"other\"\n\"2786700\";\"Rhode-Saint-Genèse\";\"other\"\n\"2786746\";\"Sint-Amands\";\"main\"\n\"2786746\";\"Saint-Amand\";\"other\"\n\"2786769\";\"Silly\";\"main\"\n\"2786769\";\"Opzullik\";\"other\"\n\"2786824\";\"Seraing\";\"main\"\n\"2786824\";\"Sere\";\"other\"\n\"2786824\";\"Seren\";\"other\"\n\"2786824\";\"Serè\";\"other\"\n\"2786824\";\"Серен\";\"other\"\n\"2786852\";\"Seneffe\";\"main\"\n\"2786963\";\"Schoten\";\"main\"\n\"2786963\";\"Schooten\";\"other\"\n\"2787048\";\"Schilde\";\"main\"\n\"2787048\";\"Shil'de\";\"other\"\n\"2787048\";\"Шильде\";\"other\"\n\"2787080\";\"Schelle\";\"main\"\n\"2787313\";\"Saint-Yvon\";\"main\"\n\"2787313\";\"Saint Ivon\";\"other\"\n\"2787315\";\"Saint-Vith\";\"main\"\n\"2787315\";\"Sankt Vaeit\";\"other\"\n\"2787315\";\"Sankt Vith\";\"other\"\n\"2787315\";\"Sankt Väit\";\"other\"\n\"2787315\";\"Sankt-Vith\";\"other\"\n\"2787356\";\"Saint-Nicolas\";\"main\"\n\"2787356\";\"Sankt-Nikola\";\"other\"\n\"2787356\";\"Sint-Niklaas\";\"other\"\n\"2787356\";\"Санкт-Никола\";\"other\"\n\"2787378\";\"Saint-Léger\";\"main\"\n\"2787378\";\"Saint-Leger\";\"ascii\"\n\"2787407\";\"Saint-Hubert\";\"main\"\n\"2787416\";\"Saint-Ghislain\";\"main\"\n\"2787416\";\"Sankt-Gilene\";\"other\"\n\"2787416\";\"Санкт-Гилене\";\"other\"\n\"2787435\";\"Sainte-Ode\";\"main\"\n\"2787435\";\"Saint-Ode\";\"other\"\n\"2787521\";\"Rumst\";\"main\"\n\"2787521\";\"Rumpst\";\"other\"\n\"2787530\";\"Rumes\";\"main\"\n\"2787547\";\"Ruiselede\";\"main\"\n\"2787547\";\"Ruysselede\";\"other\"\n\"2787622\";\"Rouvroy\";\"main\"\n\"2787662\";\"Rotselaar\";\"main\"\n\"2787662\";\"Rotselaer\";\"other\"\n\"2787769\";\"Ronse\";\"main\"\n\"2787769\";\"Renaix\";\"other\"\n\"2787769\";\"Ронсе\";\"other\"\n\"2787878\";\"Roeulx\";\"main\"\n\"2787889\";\"Roeselare\";\"main\"\n\"2787889\";\"Roeselave\";\"other\"\n\"2787889\";\"Roeseloare\";\"other\"\n\"2787889\";\"Roulers\";\"other\"\n\"2787889\";\"Rouselare\";\"other\"\n\"2787948\";\"Rochefort\";\"main\"\n\"2787948\";\"Notre-Dame-de-Foy-de-Rochefort\";\"other\"\n\"2787989\";\"Rixensart\";\"main\"\n\"2787989\";\"Riksensart\";\"other\"\n\"2787989\";\"Риксенсарт\";\"other\"\n\"2788051\";\"Rijkevorsel\";\"main\"\n\"2788051\";\"Ryckevorsel\";\"other\"\n\"2788088\";\"Riemst\";\"main\"\n\"2788088\";\"Riempst\";\"other\"\n\"2788138\";\"Retie\";\"main\"\n\"2788138\";\"Rethy\";\"other\"\n\"2788186\";\"Rendeux\";\"main\"\n\"2788211\";\"Remicourt\";\"main\"\n\"2788299\";\"Rebecq-Rognon\";\"main\"\n\"2788299\";\"Rebecq\";\"other\"\n\"2788299\";\"Roosbeek\";\"other\"\n\"2788312\";\"Ravels\";\"main\"\n\"2788312\";\"Raevels\";\"other\"\n\"2788348\";\"Ranst\";\"main\"\n\"2788381\";\"Ramillies-Offus\";\"main\"\n\"2788410\";\"Raeren\";\"main\"\n\"2788444\";\"Quiévrain\";\"main\"\n\"2788444\";\"Quievrain\";\"ascii\"\n\"2788446\";\"Quévy-le-Petit\";\"main\"\n\"2788446\";\"Quevy-le-Petit\";\"ascii\"\n\"2788499\";\"Quaregnon\";\"main\"\n\"2788506\";\"Puurs\";\"main\"\n\"2788506\";\"Puers\";\"other\"\n\"2788521\";\"Putte\";\"main\"\n\"2788577\";\"Profondeville\";\"main\"\n\"2788726\";\"Poperinge\";\"main\"\n\"2788726\";\"Poperinghe\";\"other\"\n\"2788726\";\"Поперинге\";\"other\"\n\"2788765\";\"Pont-à-Celles\";\"main\"\n\"2788765\";\"Pont-a-Celles\";\"ascii\"\n\"2788849\";\"Plombières\";\"main\"\n\"2788849\";\"Plombieres\";\"ascii\"\n\"2788849\";\"Bleiberg\";\"other\"\n\"2788849\";\"Bleyberg\";\"other\"\n\"2788849\";\"Blieberig\";\"other\"\n\"2788925\";\"Pittem\";\"main\"\n\"2788925\";\"Pitthem\";\"other\"\n\"2789016\";\"Philippeville\";\"main\"\n\"2789016\";\"Phillippeville\";\"other\"\n\"2789156\";\"Perwez\";\"main\"\n\"2789156\";\"Perwijs\";\"other\"\n\"2789162\";\"Péruwelz\";\"main\"\n\"2789162\";\"Peruwelz\";\"ascii\"\n\"2789167\";\"Perre\";\"main\"\n\"2789190\";\"Pepinster\";\"main\"\n\"2789192\";\"Pepingen\";\"main\"\n\"2789192\";\"Pepinghen\";\"other\"\n\"2789232\";\"Peer\";\"main\"\n\"2789236\";\"Pecq\";\"main\"\n\"2789354\";\"Paliseul\";\"main\"\n\"2789403\";\"Overpelt\";\"main\"\n\"2789403\";\"Ieverpelt\";\"other\"\n\"2789413\";\"Overijse\";\"main\"\n\"2789413\";\"Overijase\";\"other\"\n\"2789413\";\"Overijsche\";\"other\"\n\"2789413\";\"Overyssche\";\"other\"\n\"2789413\";\"Оверийсе\";\"other\"\n\"2789471\";\"Oupeye\";\"main\"\n\"2789471\";\"Upe\";\"other\"\n\"2789471\";\"Упе\";\"other\"\n\"2789479\";\"Ouffet\";\"main\"\n\"2789483\";\"Oud-Turnhout\";\"main\"\n\"2789483\";\"Vieux-Turnhout\";\"other\"\n\"2789492\";\"Oud-Heverlee\";\"main\"\n\"2789492\";\"Vieux-Heverle\";\"other\"\n\"2789492\";\"Vieux-Héverlé\";\"other\"\n\"2789519\";\"Oudenburg\";\"main\"\n\"2789519\";\"Oednburh\";\"other\"\n\"2789529\";\"Oudenaarde\";\"main\"\n\"2789529\";\"Aldenarda\";\"other\"\n\"2789529\";\"Audenaarde\";\"other\"\n\"2789529\";\"Audenarde\";\"other\"\n\"2789529\";\"Оуденаарде\";\"other\"\n\"2789570\";\"Ottignies\";\"main\"\n\"2789570\";\"Ottin'i\";\"other\"\n\"2789570\";\"Оттиньи\";\"other\"\n\"2789635\";\"Oreye\";\"main\"\n\"2789635\";\"Oerle\";\"other\"\n\"2789654\";\"Opwijk\";\"main\"\n\"2789654\";\"Opwyck\";\"other\"\n\"2789714\";\"Opglabbeek\";\"main\"\n\"2789737\";\"Oostrozebeke\";\"main\"\n\"2789737\";\"Oostroosebeke\";\"other\"\n\"2789737\";\"Oostroozebeke\";\"other\"\n\"2789751\";\"Oostkamp\";\"main\"\n\"2789751\";\"Oostcamp\";\"other\"\n\"2789751\";\"Ostkamp\";\"other\"\n\"2789751\";\"Oôstkamp\";\"other\"\n\"2789751\";\"Ôostkamp\";\"other\"\n\"2789751\";\"Осткамп\";\"other\"\n\"2789771\";\"Oosterzele\";\"main\"\n\"2789771\";\"Oosterzeele\";\"other\"\n\"2789786\";\"Oostende\";\"main\"\n\"2789786\";\"Oostenn\";\"other\"\n\"2789786\";\"Ostend\";\"other\"\n\"2789786\";\"Ostenda\";\"other\"\n\"2789786\";\"Ostende\";\"other\"\n\"2789786\";\"Ostendo\";\"other\"\n\"2789786\";\"Οστένδη\";\"other\"\n\"2789786\";\"Остенде\";\"other\"\n\"2789834\";\"Onhaye\";\"main\"\n\"2789869\";\"Olne\";\"main\"\n\"2789886\";\"Olen\";\"main\"\n\"2789886\";\"Oolen\";\"other\"\n\"2789908\";\"Ohey\";\"main\"\n\"2790101\";\"Nivelles\";\"main\"\n\"2790101\";\"Nijvel\";\"other\"\n\"2790114\";\"Ninove\";\"main\"\n\"2790114\";\"Нинове\";\"other\"\n\"2790135\";\"Nijlen\";\"main\"\n\"2790135\";\"Nylen\";\"other\"\n\"2790150\";\"Nieuwpoort\";\"main\"\n\"2790150\";\"Nieuport\";\"other\"\n\"2790150\";\"Nieuwpoôrt\";\"other\"\n\"2790150\";\"Nieuwpôort\";\"other\"\n\"2790179\";\"Nieuwerkerken\";\"main\"\n\"2790225\";\"Niel\";\"main\"\n\"2790235\";\"Nevele\";\"main\"\n\"2790286\";\"Neufchâteau\";\"main\"\n\"2790286\";\"Neufchateau\";\"ascii\"\n\"2790357\";\"Neerpelt\";\"main\"\n\"2790433\";\"Nazareth\";\"main\"\n\"2790451\";\"Nassogne\";\"main\"\n\"2790467\";\"Nandrin\";\"main\"\n\"2790471\";\"Namur\";\"main\"\n\"2790471\";\"Name\";\"other\"\n\"2790471\";\"Namen\";\"other\"\n\"2790471\";\"Nameur\";\"other\"\n\"2790471\";\"Namir\";\"other\"\n\"2790471\";\"Namjur\";\"other\"\n\"2790471\";\"Namouer\";\"other\"\n\"2790471\";\"Namour\";\"other\"\n\"2790471\";\"Namuro\";\"other\"\n\"2790471\";\"na mu er\";\"other\"\n\"2790471\";\"Ναμούρ\";\"other\"\n\"2790471\";\"Намир\";\"other\"\n\"2790471\";\"Намюр\";\"other\"\n\"2790471\";\"נאמור\";\"other\"\n\"2790471\";\"那慕爾\";\"other\"\n\"2790515\";\"Musson\";\"main\"\n\"2790595\";\"Mouscron\";\"main\"\n\"2790595\";\"Moeskroen\";\"other\"\n\"2790595\";\"Muskron\";\"other\"\n\"2790595\";\"Muskrono\";\"other\"\n\"2790595\";\"Мускрон\";\"other\"\n\"2790676\";\"Mortsel\";\"main\"\n\"2790676\";\"Мортсел\";\"other\"\n\"2790697\";\"Morlanwelz-Mariemont\";\"main\"\n\"2790697\";\"Morlanwelz\";\"other\"\n\"2790729\";\"Moorslede\";\"main\"\n\"2790756\";\"Mont-Saint-Guibert\";\"main\"\n\"2790869\";\"Mons\";\"main\"\n\"2790869\";\"Bergen\";\"other\"\n\"2790869\";\"Mont\";\"other\"\n\"2790869\";\"mwns\";\"other\"\n\"2790869\";\"Μονς\";\"other\"\n\"2790869\";\"Монс\";\"other\"\n\"2790869\";\"מונס\";\"other\"\n\"2790906\";\"Momignies\";\"main\"\n\"2791067\";\"Mol\";\"main\"\n\"2791067\";\"Moll\";\"other\"\n\"2791067\";\"Мол\";\"other\"\n\"2791120\";\"Moerbeke\";\"main\"\n\"2791132\";\"Modave\";\"main\"\n\"2791194\";\"Middelkerke\";\"main\"\n\"2791194\";\"Middelkerke Bains\";\"other\"\n\"2791194\";\"Middelkerke-Baden\";\"other\"\n\"2791255\";\"Meulebeke\";\"main\"\n\"2791261\";\"Mettet\";\"main\"\n\"2791261\";\"Metet\";\"other\"\n\"2791272\";\"Messancy\";\"main\"\n\"2791272\";\"Messanceye\";\"other\"\n\"2791272\";\"Miezeg\";\"other\"\n\"2791297\";\"Merksplas\";\"main\"\n\"2791297\";\"Merxplas\";\"other\"\n\"2791315\";\"Merelbeke\";\"main\"\n\"2791315\";\"Meirelbeke\";\"other\"\n\"2791315\";\"Мерелбеке\";\"other\"\n\"2791323\";\"Merchtem\";\"main\"\n\"2791329\";\"Merbes-le-Château\";\"main\"\n\"2791329\";\"Merbes-le-Chateau\";\"ascii\"\n\"2791343\";\"Menen\";\"main\"\n\"2791343\";\"Meenen\";\"other\"\n\"2791343\";\"Meenn\";\"other\"\n\"2791343\";\"Menin\";\"other\"\n\"2791343\";\"Mjeenn\";\"other\"\n\"2791343\";\"Mêenn\";\"other\"\n\"2791385\";\"Melle\";\"main\"\n\"2791419\";\"Meix-devant-Virton\";\"main\"\n\"2791424\";\"Meise\";\"main\"\n\"2791424\";\"Meysse\";\"other\"\n\"2791494\";\"Meerhout\";\"main\"\n\"2791537\";\"Mechelen\";\"main\"\n\"2791537\";\"Malinas\";\"other\"\n\"2791537\";\"Malines\";\"other\"\n\"2791537\";\"Mechele\";\"other\"\n\"2791537\";\"Mecheln\";\"other\"\n\"2791537\";\"Mehleno\";\"other\"\n\"2791537\";\"Mekhelen\";\"other\"\n\"2791537\";\"Meĥleno\";\"other\"\n\"2791537\";\"mei he lun\";\"other\"\n\"2791537\";\"Мехелен\";\"other\"\n\"2791537\";\"梅赫伦\";\"other\"\n\"2791642\";\"Martelange\";\"main\"\n\"2791642\";\"Martelarge\";\"other\"\n\"2791642\";\"Nartelange\";\"other\"\n\"2791733\";\"Marchin\";\"main\"\n\"2791744\";\"Marche-en-Famenne\";\"main\"\n\"2791744\";\"Marche\";\"other\"\n\"2791790\";\"Manhay\";\"main\"\n\"2791790\";\"Manhe\";\"other\"\n\"2791790\";\"Manhé\";\"other\"\n\"2791814\";\"Manage\";\"main\"\n\"2791834\";\"Malmédy\";\"main\"\n\"2791834\";\"Malmedy\";\"ascii\"\n\"2791834\";\"Mamdey\";\"other\"\n\"2791834\";\"Måmdey\";\"other\"\n\"2791857\";\"Maldegem\";\"main\"\n\"2791857\";\"Mal'degem\";\"other\"\n\"2791857\";\"Мальдегем\";\"other\"\n\"2791951\";\"Machelen\";\"main\"\n\"2791961\";\"Maasmechelen\";\"main\"\n\"2791961\";\"Maasmekhelene\";\"other\"\n\"2791961\";\"Massmechelen\";\"other\"\n\"2791961\";\"Маасмехелене\";\"other\"\n\"2791964\";\"Maaseik\";\"main\"\n\"2791964\";\"Maasejk\";\"other\"\n\"2791964\";\"Maeseyck\";\"other\"\n\"2791964\";\"Mezeik\";\"other\"\n\"2791964\";\"Маасейк\";\"other\"\n\"2792007\";\"Lummen\";\"main\"\n\"2792034\";\"Lubbeek\";\"main\"\n\"2792057\";\"Lovendegem\";\"main\"\n\"2792073\";\"Louvain-la-Neuve\";\"main\"\n\"2792073\";\"Luven-la-Nev\";\"other\"\n\"2792073\";\"Лувен-ла-Нев\";\"other\"\n\"2792119\";\"Lontzen\";\"main\"\n\"2792119\";\"Sontzen\";\"other\"\n\"2792165\";\"Londerzeel\";\"main\"\n\"2792179\";\"Lommel\";\"main\"\n\"2792179\";\"Ломмел\";\"other\"\n\"2792196\";\"Lokeren\";\"main\"\n\"2792196\";\"Локерен\";\"other\"\n\"2792235\";\"Lochristi\";\"main\"\n\"2792235\";\"Loochristi\";\"other\"\n\"2792235\";\"Loochristy\";\"other\"\n\"2792245\";\"Lobbes\";\"main\"\n\"2792292\";\"Lint\";\"main\"\n\"2792292\";\"Linth\";\"other\"\n\"2792301\";\"Linkebeek\";\"main\"\n\"2792332\";\"Lincent\";\"main\"\n\"2792332\";\"Lijsem\";\"other\"\n\"2792348\";\"Limbourg\";\"main\"\n\"2792348\";\"Laeboer\";\"other\"\n\"2792348\";\"Limburg\";\"other\"\n\"2792360\";\"Lille\";\"main\"\n\"2792397\";\"Lierre\";\"main\"\n\"2792397\";\"L'er\";\"other\"\n\"2792397\";\"Льер\";\"other\"\n\"2792400\";\"Lierneux\";\"main\"\n\"2792400\";\"Lieurneux\";\"other\"\n\"2792413\";\"Liège\";\"main\"\n\"2792413\";\"Liege\";\"ascii\"\n\"2792413\";\"L'ezh\";\"other\"\n\"2792413\";\"Leck\";\"other\"\n\"2792413\";\"Leodicum\";\"other\"\n\"2792413\";\"Leodium\";\"other\"\n\"2792413\";\"Lidje\";\"other\"\n\"2792413\";\"Liegi\";\"other\"\n\"2792413\";\"Liego\";\"other\"\n\"2792413\";\"Lieja\";\"other\"\n\"2792413\";\"Liex\";\"other\"\n\"2792413\";\"Liezh\";\"other\"\n\"2792413\";\"Lieĝo\";\"other\"\n\"2792413\";\"Lige\";\"other\"\n\"2792413\";\"Lijezh\";\"other\"\n\"2792413\";\"Ljeza\";\"other\"\n\"2792413\";\"Lježa\";\"other\"\n\"2792413\";\"Luettich\";\"other\"\n\"2792413\";\"Luik\";\"other\"\n\"2792413\";\"Luttich\";\"other\"\n\"2792413\";\"Lutych\";\"other\"\n\"2792413\";\"Luuk\";\"other\"\n\"2792413\";\"Léck\";\"other\"\n\"2792413\";\"Lüttich\";\"other\"\n\"2792413\";\"lie ri\";\"other\"\n\"2792413\";\"lyyj\";\"other\"\n\"2792413\";\"lyyz'\";\"other\"\n\"2792413\";\"rieju\";\"other\"\n\"2792413\";\"Лиеж\";\"other\"\n\"2792413\";\"Лијеж\";\"other\"\n\"2792413\";\"Льеж\";\"other\"\n\"2792413\";\"לייז'\";\"other\"\n\"2792413\";\"リエージュ\";\"other\"\n\"2792413\";\"列日\";\"other\"\n\"2792413\";\"ﻟﻴﻴﺞ\";\"other\"\n\"2792423\";\"Liedekerke\";\"main\"\n\"2792428\";\"Lichtervelde\";\"main\"\n\"2792428\";\"Lichterveld\";\"other\"\n\"2792442\";\"Libin\";\"main\"\n\"2792482\";\"Leuven\";\"main\"\n\"2792482\";\"L'oven\";\"other\"\n\"2792482\";\"Leouben\";\"other\"\n\"2792482\";\"Leuve\";\"other\"\n\"2792482\";\"Ljoven\";\"other\"\n\"2792482\";\"Loewen\";\"other\"\n\"2792482\";\"Louvain\";\"other\"\n\"2792482\";\"Lovaina\";\"other\"\n\"2792482\";\"Lovan\";\"other\"\n\"2792482\";\"Lovanio\";\"other\"\n\"2792482\";\"Lovanium\";\"other\"\n\"2792482\";\"Lovaň\";\"other\"\n\"2792482\";\"Loveno\";\"other\"\n\"2792482\";\"Luven\";\"other\"\n\"2792482\";\"Löwen\";\"other\"\n\"2792482\";\"lu wen\";\"other\"\n\"2792482\";\"revu~en\";\"other\"\n\"2792482\";\"ruvu~en\";\"other\"\n\"2792482\";\"Λέουβεν\";\"other\"\n\"2792482\";\"Лувен\";\"other\"\n\"2792482\";\"Льовен\";\"other\"\n\"2792482\";\"Лёвен\";\"other\"\n\"2792482\";\"ルーヴェン\";\"other\"\n\"2792482\";\"レーヴェン\";\"other\"\n\"2792482\";\"鲁汶\";\"other\"\n\"2792567\";\"Lessines\";\"main\"\n\"2792567\";\"Lessen\";\"other\"\n\"2792856\";\"Leopoldsburg\";\"main\"\n\"2792856\";\"Bourg-Leopold\";\"other\"\n\"2792856\";\"Bourg-Léopold\";\"other\"\n\"2792871\";\"Lens\";\"main\"\n\"2792879\";\"Lendelede\";\"main\"\n\"2792879\";\"Lendlee\";\"other\"\n\"2792985\";\"Léglise\";\"main\"\n\"2792985\";\"Leglise\";\"ascii\"\n\"2793067\";\"Ledegem\";\"main\"\n\"2793067\";\"Ledeghem\";\"other\"\n\"2793070\";\"Ledeberg\";\"main\"\n\"2793072\";\"Ledeberg\";\"main\"\n\"2793077\";\"Lede\";\"main\"\n\"2793144\";\"Lebbeke\";\"main\"\n\"2793279\";\"La Roche-en-Ardenne\";\"main\"\n\"2793279\";\"Laroche\";\"other\"\n\"2793429\";\"Landen\";\"main\"\n\"2793446\";\"Lanaken\";\"main\"\n\"2793446\";\"Lanaeken\";\"other\"\n\"2793508\";\"La Louvière\";\"main\"\n\"2793508\";\"La Louviere\";\"ascii\"\n\"2793508\";\"Louvierre\";\"other\"\n\"2793548\";\"La Hulpe\";\"main\"\n\"2793548\";\"Terhulpen\";\"other\"\n\"2793722\";\"La Calamine\";\"main\"\n\"2793722\";\"Kalmis\";\"other\"\n\"2793733\";\"La Bruyère\";\"main\"\n\"2793733\";\"La Bruyere\";\"ascii\"\n\"2793797\";\"Laarne\";\"main\"\n\"2793797\";\"Laerne\";\"other\"\n\"2793857\";\"Kuurne\";\"main\"\n\"2793857\";\"Cuerne\";\"other\"\n\"2793907\";\"Kruishoutem\";\"main\"\n\"2793907\";\"Cruyshautem\";\"other\"\n\"2793940\";\"Kruibeke\";\"main\"\n\"2793940\";\"Cruybeke\";\"other\"\n\"2794016\";\"Kraainem\";\"main\"\n\"2794016\";\"Crainhem\";\"other\"\n\"2794055\";\"Kortrijk\";\"main\"\n\"2794055\";\"Cortoriacum\";\"other\"\n\"2794055\";\"Courtrai\";\"other\"\n\"2794055\";\"Kortrejko\";\"other\"\n\"2794055\";\"Kortrik\";\"other\"\n\"2794055\";\"kortrejk\";\"other\"\n\"2794055\";\"qwrtryyq\";\"other\"\n\"2794055\";\"Кортрейк\";\"other\"\n\"2794055\";\"קורטרייק\";\"other\"\n\"2794063\";\"Kortessem\";\"main\"\n\"2794063\";\"Cortessem\";\"other\"\n\"2794063\";\"Cortessum\";\"other\"\n\"2794063\";\"Kortessum\";\"other\"\n\"2794070\";\"Kortenberg\";\"main\"\n\"2794070\";\"Cortenberg\";\"other\"\n\"2794072\";\"Kortenaken\";\"main\"\n\"2794072\";\"Cortenaeken\";\"other\"\n\"2794074\";\"Kortemark\";\"main\"\n\"2794074\";\"Cortemarck\";\"other\"\n\"2794117\";\"Kontich\";\"main\"\n\"2794117\";\"Contich\";\"other\"\n\"2794117\";\"Контич\";\"other\"\n\"2794166\";\"Koksijde\";\"main\"\n\"2794166\";\"Coxyde\";\"other\"\n\"2794166\";\"Koksiede\";\"other\"\n\"2794166\";\"Коксийде\";\"other\"\n\"2794194\";\"Koekelare\";\"main\"\n\"2794194\";\"Couckelaere\";\"other\"\n\"2794210\";\"Knokke-Heist\";\"main\"\n\"2794210\";\"Knokke-Khejst\";\"other\"\n\"2794210\";\"Knokkne\";\"other\"\n\"2794210\";\"Кнокке-Хейст\";\"other\"\n\"2794223\";\"Knesselare\";\"main\"\n\"2794223\";\"Knesselaere\";\"other\"\n\"2794445\";\"Kinrooi\";\"main\"\n\"2794445\";\"Kinjer\";\"other\"\n\"2794445\";\"Kinroy\";\"other\"\n\"2794619\";\"Keerbergen\";\"main\"\n\"2794663\";\"Kasterlee\";\"main\"\n\"2794663\";\"Casterle\";\"other\"\n\"2794707\";\"Kaprijke\";\"main\"\n\"2794707\";\"Caprycke\";\"other\"\n\"2794724\";\"Kapelle-op-den-Bos\";\"main\"\n\"2794724\";\"Cappelle-au-Bois\";\"other\"\n\"2794724\";\"Kapelle Bosch\";\"other\"\n\"2794724\";\"Kapelle-op-den-Bosch\";\"other\"\n\"2794730\";\"Kapellen\";\"main\"\n\"2794730\";\"Cappellen\";\"other\"\n\"2794730\";\"Kapellene\";\"other\"\n\"2794730\";\"Капеллене\";\"other\"\n\"2794763\";\"Kampenhout\";\"main\"\n\"2794763\";\"Campenhout\";\"other\"\n\"2794788\";\"Kalmthout\";\"main\"\n\"2794788\";\"Calmpthout\";\"other\"\n\"2794852\";\"Jurbise\";\"main\"\n\"2794854\";\"Juprelle\";\"main\"\n\"2794895\";\"Jodoigne\";\"main\"\n\"2794895\";\"Djodogne\";\"other\"\n\"2794895\";\"Geldenaken\";\"other\"\n\"2794989\";\"Jalhay\";\"main\"\n\"2794999\";\"Jabbeke\";\"main\"\n\"2795009\";\"Izegem\";\"main\"\n\"2795009\";\"Iseghem\";\"other\"\n\"2795009\";\"Izzegem\";\"other\"\n\"2795009\";\"Izzehem\";\"other\"\n\"2795009\";\"Изегем\";\"other\"\n\"2795017\";\"Ittre\";\"main\"\n\"2795017\";\"Itter\";\"other\"\n\"2795056\";\"Ingelmunster\";\"main\"\n\"2795063\";\"Incourt\";\"main\"\n\"2795100\";\"Ieper\";\"main\"\n\"2795100\";\"Iper\";\"other\"\n\"2795100\";\"Ippr\";\"other\"\n\"2795100\";\"Ipr\";\"other\"\n\"2795100\";\"Ipro\";\"other\"\n\"2795100\";\"Ypern\";\"other\"\n\"2795100\";\"Ypres\";\"other\"\n\"2795100\";\"Ипр\";\"other\"\n\"2795106\";\"Ichtegem\";\"main\"\n\"2795106\";\"Ichteghem\";\"other\"\n\"2795113\";\"Huy\";\"main\"\n\"2795113\";\"Hoei\";\"other\"\n\"2795113\";\"Hu\";\"other\"\n\"2795113\";\"Jui\";\"other\"\n\"2795113\";\"Юи\";\"other\"\n\"2795170\";\"Hulshout\";\"main\"\n\"2795184\";\"Huldenberg\";\"main\"\n\"2795232\";\"Hove\";\"main\"\n\"2795238\";\"Houyet\";\"main\"\n\"2795255\";\"Houthulst\";\"main\"\n\"2795255\";\"Houthuls\";\"other\"\n\"2795255\";\"Oetulst\";\"other\"\n\"2795261\";\"Houthalen\";\"main\"\n\"2795261\";\"Houthaelen\";\"other\"\n\"2795261\";\"Houthaelenberg\";\"other\"\n\"2795322\";\"Houffalize\";\"main\"\n\"2795322\";\"Oufalijhe\";\"other\"\n\"2795337\";\"Hotton\";\"main\"\n\"2795398\";\"Hoogstraten\";\"main\"\n\"2795398\";\"Hoogstraeten\";\"other\"\n\"2795398\";\"Khogstraten\";\"other\"\n\"2795398\";\"Хогстратен\";\"other\"\n\"2795423\";\"Hooglede\";\"main\"\n\"2795423\";\"Ooglee\";\"other\"\n\"2795511\";\"Holsbeek\";\"main\"\n\"2795648\";\"Hoeselt\";\"main\"\n\"2795648\";\"Hoeiselt\";\"other\"\n\"2795648\";\"Hoesselt\";\"other\"\n\"2795699\";\"Hoeilaart\";\"main\"\n\"2795699\";\"Hoeylaert\";\"other\"\n\"2795703\";\"Hoegaarden\";\"main\"\n\"2795703\";\"Hougaerde\";\"other\"\n\"2795730\";\"Hoboken\";\"main\"\n\"2795730\";\"Hoboken-lez-Anvers\";\"other\"\n\"2795800\";\"Heusden\";\"main\"\n\"2795908\";\"Herzele\";\"main\"\n\"2795912\";\"Herve\";\"main\"\n\"2795930\";\"Herstal\";\"main\"\n\"2795930\";\"Hesta\";\"other\"\n\"2795933\";\"Herselt\";\"main\"\n\"2795933\";\"Hersselt\";\"other\"\n\"2795949\";\"Héron\";\"main\"\n\"2795949\";\"Heron\";\"ascii\"\n\"2795956\";\"Herne\";\"main\"\n\"2795956\";\"Herinnes\";\"other\"\n\"2795956\";\"Hérinnes\";\"other\"\n\"2795985\";\"Herk-de-Stad\";\"main\"\n\"2795985\";\"Herck-la-Ville\";\"other\"\n\"2795985\";\"Herk\";\"other\"\n\"2796005\";\"Herenthout\";\"main\"\n\"2796009\";\"Herentals\";\"main\"\n\"2796009\";\"Herenthals\";\"other\"\n\"2796009\";\"Kherentals\";\"other\"\n\"2796009\";\"Херенталс\";\"other\"\n\"2796012\";\"Herent\";\"main\"\n\"2796037\";\"Herbeumont\";\"main\"\n\"2796056\";\"Hensies\";\"main\"\n\"2796085\";\"Hemiksem\";\"main\"\n\"2796085\";\"Hemixem\";\"other\"\n\"2796085\";\"Hemixeu\";\"other\"\n\"2796132\";\"Helchteren\";\"main\"\n\"2796153\";\"Heist-op-den-Berg\";\"main\"\n\"2796153\";\"Heistopden-Berg\";\"other\"\n\"2796153\";\"Heyst-op-den-Berg\";\"other\"\n\"2796297\";\"Heers\";\"main\"\n\"2796297\";\"Hier\";\"other\"\n\"2796297\";\"Hiër\";\"other\"\n\"2796369\";\"Havelange\";\"main\"\n\"2796482\";\"Hastière-Lavaux\";\"main\"\n\"2796482\";\"Hastiere-Lavaux\";\"ascii\"\n\"2796491\";\"Hasselt\";\"main\"\n\"2796491\";\"Asselt\";\"other\"\n\"2796491\";\"Haselto\";\"other\"\n\"2796491\";\"Khaselt\";\"other\"\n\"2796491\";\"Άσσελτ\";\"other\"\n\"2796491\";\"Хаселт\";\"other\"\n\"2796542\";\"Harelbeke\";\"main\"\n\"2796542\";\"Hailebeke\";\"other\"\n\"2796542\";\"Harlebeke\";\"other\"\n\"2796542\";\"Kharelbeke\";\"other\"\n\"2796542\";\"Харелбеке\";\"other\"\n\"2796583\";\"Hannut\";\"main\"\n\"2796583\";\"Hannuit\";\"other\"\n\"2796627\";\"Hamois\";\"main\"\n\"2796629\";\"Hamoir\";\"main\"\n\"2796637\";\"Hamme\";\"main\"\n\"2796637\";\"Khamme\";\"other\"\n\"2796637\";\"Хамме\";\"other\"\n\"2796696\";\"Halle\";\"main\"\n\"2796696\";\"Galle\";\"other\"\n\"2796696\";\"Hal\";\"other\"\n\"2796696\";\"Галле\";\"other\"\n\"2796715\";\"Halen\";\"main\"\n\"2796715\";\"Haelen\";\"other\"\n\"2796715\";\"Hole\";\"other\"\n\"2796715\";\"Hôle\";\"other\"\n\"2796715\";\"Khalen\";\"other\"\n\"2796715\";\"Хален\";\"other\"\n\"2796807\";\"Habay-la-Vieille\";\"main\"\n\"2796807\";\"Habay\";\"other\"\n\"2796833\";\"Haaltert\";\"main\"\n\"2796833\";\"Haeltert\";\"other\"\n\"2796844\";\"Haacht\";\"main\"\n\"2796844\";\"Haecht\";\"other\"\n\"2797094\";\"Grobbendonk\";\"main\"\n\"2797094\";\"Grobbendonck\";\"other\"\n\"2797114\";\"Grimbergen\";\"main\"\n\"2797114\";\"Grimberghen\";\"other\"\n\"2797114\";\"Гримберген\";\"other\"\n\"2797128\";\"Grez-Doiceau\";\"main\"\n\"2797128\";\"Graven\";\"other\"\n\"2797346\";\"Gouvy\";\"main\"\n\"2797417\";\"Gooik\";\"main\"\n\"2797417\";\"Goyck\";\"other\"\n\"2797500\";\"Glabbeek-Zuurbemde\";\"main\"\n\"2797500\";\"Glabbeek\";\"other\"\n\"2797500\";\"Glabbeek-Suerbempde\";\"other\"\n\"2797517\";\"Gistel\";\"main\"\n\"2797517\";\"Ghistelles\";\"other\"\n\"2797517\";\"Histel\";\"other\"\n\"2797517\";\"Гистел\";\"other\"\n\"2797523\";\"Gingelom\";\"main\"\n\"2797581\";\"Gesves\";\"main\"\n\"2797598\";\"Gerpinnes\";\"main\"\n\"2797638\";\"Geraardsbergen\";\"main\"\n\"2797638\";\"Geeraardsbergen\";\"other\"\n\"2797638\";\"Gerardsbergen\";\"other\"\n\"2797638\";\"Grammont\";\"other\"\n\"2797638\";\"Герардсберген\";\"other\"\n\"2797656\";\"Gent\";\"main\"\n\"2797656\";\"Gaent\";\"other\"\n\"2797656\";\"Gand\";\"other\"\n\"2797656\";\"Gandavum\";\"other\"\n\"2797656\";\"Gandawa\";\"other\"\n\"2797656\";\"Gande\";\"other\"\n\"2797656\";\"Gant\";\"other\"\n\"2797656\";\"Gante\";\"other\"\n\"2797656\";\"Gente\";\"other\"\n\"2797656\";\"Gento\";\"other\"\n\"2797656\";\"Ghent\";\"other\"\n\"2797656\";\"Gænt\";\"other\"\n\"2797656\";\"gen te\";\"other\"\n\"2797656\";\"gento\";\"other\"\n\"2797656\";\"gnt\";\"other\"\n\"2797656\";\"Ģente\";\"other\"\n\"2797656\";\"Γάνδη\";\"other\"\n\"2797656\";\"Гент\";\"other\"\n\"2797656\";\"גנט\";\"other\"\n\"2797656\";\"ゲント\";\"other\"\n\"2797656\";\"根特\";\"other\"\n\"2797670\";\"Genk\";\"main\"\n\"2797670\";\"Genck\";\"other\"\n\"2797670\";\"Генк\";\"other\"\n\"2797694\";\"Genappe\";\"main\"\n\"2797694\";\"Genepien\";\"other\"\n\"2797694\";\"Genepiën\";\"other\"\n\"2797713\";\"Gembloux\";\"main\"\n\"2797713\";\"Djiblou\";\"other\"\n\"2797713\";\"Gembloers\";\"other\"\n\"2797713\";\"Gemblua\";\"other\"\n\"2797713\";\"Jembloux\";\"other\"\n\"2797713\";\"Гемблуа\";\"other\"\n\"2797761\";\"Geetbets\";\"main\"\n\"2797761\";\"Geet Betz\";\"other\"\n\"2797770\";\"Geer\";\"main\"\n\"2797779\";\"Geel\";\"main\"\n\"2797779\";\"Gheel\";\"other\"\n\"2797779\";\"Геел\";\"other\"\n\"2797781\";\"Gedinne\";\"main\"\n\"2797781\";\"Djedene\";\"other\"\n\"2797798\";\"Gavere\";\"main\"\n\"2797851\";\"Galmaarden\";\"main\"\n\"2797851\";\"Gammerages\";\"other\"\n\"2797937\";\"Froid-Chapelle\";\"main\"\n\"2797979\";\"Frasnes-lez-Buissenal\";\"main\"\n\"2797979\";\"Frasnes\";\"other\"\n\"2798023\";\"Frameries\";\"main\"\n\"2798023\";\"Frameris\";\"other\"\n\"2798023\";\"Фрамерис\";\"other\"\n\"2798056\";\"Sint-Pieters-Voeren\";\"main\"\n\"2798056\";\"Fouron-Saint-Pierre\";\"other\"\n\"2798099\";\"Fosse\";\"main\"\n\"2798272\";\"Florenville\";\"main\"\n\"2798276\";\"Florennes\";\"main\"\n\"2798279\";\"Floreffe\";\"main\"\n\"2798290\";\"Flobecq\";\"main\"\n\"2798290\";\"Vloesberg\";\"other\"\n\"2798297\";\"Fleurus\";\"main\"\n\"2798297\";\"Flerus\";\"other\"\n\"2798297\";\"Флерус\";\"other\"\n\"2798301\";\"Fléron\";\"main\"\n\"2798301\";\"Fleron\";\"ascii\"\n\"2798307\";\"Flémalle-Haute\";\"main\"\n\"2798307\";\"Flemalle-Haute\";\"ascii\"\n\"2798357\";\"Fexhe-le-Haut-Clocher\";\"main\"\n\"2798365\";\"Ferrières\";\"main\"\n\"2798365\";\"Ferrieres\";\"ascii\"\n\"2798438\";\"Fauvillers\";\"main\"\n\"2798470\";\"Farciennes\";\"main\"\n\"2798512\";\"Faimes\";\"main\"\n\"2798551\";\"Evergem\";\"main\"\n\"2798551\";\"Ehvergem\";\"other\"\n\"2798551\";\"Everghem Rabot\";\"other\"\n\"2798551\";\"Эвергем\";\"other\"\n\"2798573\";\"Eupen\";\"main\"\n\"2798573\";\"Epen\";\"other\"\n\"2798573\";\"Eupe\";\"other\"\n\"2798573\";\"Епен\";\"other\"\n\"2798593\";\"Étalle\";\"main\"\n\"2798593\";\"Etalle\";\"ascii\"\n\"2798597\";\"Estinnes-au-Val\";\"main\"\n\"2798604\";\"Estaimpuis\";\"main\"\n\"2798615\";\"Essen\";\"main\"\n\"2798615\";\"Esschen\";\"other\"\n\"2798636\";\"Esneux\";\"main\"\n\"2798666\";\"Erquelinnes\";\"main\"\n\"2798698\";\"Érezée\";\"main\"\n\"2798698\";\"Erezee\";\"ascii\"\n\"2798743\";\"Engis\";\"main\"\n\"2798747\";\"Enghien\";\"main\"\n\"2798747\";\"Edingen\";\"other\"\n\"2798836\";\"Ellezelles\";\"main\"\n\"2798836\";\"Elzele\";\"other\"\n\"2798949\";\"Éghezée\";\"main\"\n\"2798949\";\"Eghezee\";\"ascii\"\n\"2798987\";\"Eeklo\";\"main\"\n\"2798987\";\"Eecloo\";\"other\"\n\"2798987\";\"Eekloo\";\"other\"\n\"2799007\";\"Edegem\";\"main\"\n\"2799007\";\"Edeghem\";\"other\"\n\"2799024\";\"Écaussinnes-d'Enghien\";\"main\"\n\"2799024\";\"Ecaussinnes-d'Enghien\";\"ascii\"\n\"2799024\";\"Ecaussines-d'Enghien\";\"other\"\n\"2799024\";\"Écaussines-d'Enghien\";\"other\"\n\"2799047\";\"Durbuy\";\"main\"\n\"2799047\";\"Durbui\";\"other\"\n\"2799090\";\"Duffel\";\"main\"\n\"2799114\";\"Drogenbos\";\"main\"\n\"2799114\";\"Drogenbosch\";\"other\"\n\"2799114\";\"Droogenbosch\";\"other\"\n\"2799226\";\"Dour\";\"main\"\n\"2799317\";\"Donceel\";\"main\"\n\"2799328\";\"Doische\";\"main\"\n\"2799328\";\"Dweche\";\"other\"\n\"2799347\";\"Dison\";\"main\"\n\"2799357\";\"Dinant\";\"main\"\n\"2799357\";\"Dinan\";\"other\"\n\"2799357\";\"di nan\";\"other\"\n\"2799357\";\"Динан\";\"other\"\n\"2799357\";\"דינאן\";\"other\"\n\"2799357\";\"迪南\";\"other\"\n\"2799365\";\"Dilbeek\";\"main\"\n\"2799365\";\"dilbek\";\"other\"\n\"2799365\";\"Дилбек\";\"other\"\n\"2799369\";\"Diksmuide\";\"main\"\n\"2799369\";\"Diksmude\";\"other\"\n\"2799369\";\"Dixmude\";\"other\"\n\"2799369\";\"Dixmuide\";\"other\"\n\"2799369\";\"Dixmuiden\";\"other\"\n\"2799397\";\"Diest\";\"main\"\n\"2799412\";\"Diepenbeek\";\"main\"\n\"2799496\";\"Destelbergen\";\"main\"\n\"2799511\";\"Dessel\";\"main\"\n\"2799511\";\"Desschel\";\"other\"\n\"2799570\";\"De Pinte\";\"main\"\n\"2799570\";\"La Pinte\";\"other\"\n\"2799577\";\"De Panne\";\"main\"\n\"2799577\";\"La Panne\";\"other\"\n\"2799577\";\"Panne\";\"other\"\n\"2799586\";\"Dentergem\";\"main\"\n\"2799586\";\"Denterghem\";\"other\"\n\"2799586\";\"Denterhem\";\"other\"\n\"2799645\";\"Dendermonde\";\"main\"\n\"2799645\";\"Teneramonda\";\"other\"\n\"2799645\";\"Termonde\";\"other\"\n\"2799645\";\"dendermonde\";\"other\"\n\"2799645\";\"Дендермонде\";\"other\"\n\"2799647\";\"Denderleeuw\";\"main\"\n\"2799746\";\"Deinze\";\"main\"\n\"2799746\";\"Dejnze\";\"other\"\n\"2799746\";\"Deynze\";\"other\"\n\"2799746\";\"Дейнзе\";\"other\"\n\"2799779\";\"De Haan\";\"main\"\n\"2799779\";\"D'n Aone\";\"other\"\n\"2799779\";\"D'n Oane\";\"other\"\n\"2799779\";\"Den Haan\";\"other\"\n\"2799779\";\"Le Coq\";\"other\"\n\"2799797\";\"Deerlijk\";\"main\"\n\"2799797\";\"Deerlyck\";\"other\"\n\"2799851\";\"Daverdisse\";\"main\"\n\"2799885\";\"Damme\";\"main\"\n\"2799885\";\"Dammum\";\"other\"\n\"2799885\";\"Damovilla\";\"other\"\n\"2799885\";\"Damville\";\"other\"\n\"2799885\";\"dame\";\"other\"\n\"2799885\";\"Даме\";\"other\"\n\"2799897\";\"Dalhem\";\"main\"\n\"2799997\";\"Crisnée\";\"main\"\n\"2799997\";\"Crisnee\";\"ascii\"\n\"2800025\";\"Couvin\";\"main\"\n\"2800025\";\"Couven\";\"other\"\n\"2800025\";\"Couvén\";\"other\"\n\"2800042\";\"Court-Saint-Étienne\";\"main\"\n\"2800042\";\"Court-Saint-Etienne\";\"ascii\"\n\"2800063\";\"Courcelles\";\"main\"\n\"2800063\";\"Kursel'\";\"other\"\n\"2800063\";\"Курсель\";\"other\"\n\"2800204\";\"Comblain-au-Pont\";\"main\"\n\"2800204\";\"Comblain\";\"other\"\n\"2800204\";\"Komblenx\";\"other\"\n\"2800220\";\"Colfontaine\";\"main\"\n\"2800269\";\"Clavier\";\"main\"\n\"2800298\";\"Ciney\";\"main\"\n\"2800298\";\"Cine\";\"other\"\n\"2800298\";\"Cînè\";\"other\"\n\"2800320\";\"Chiny\";\"main\"\n\"2800325\";\"Chimay\";\"main\"\n\"2800328\";\"Chièvres\";\"main\"\n\"2800328\";\"Chievres\";\"ascii\"\n\"2800430\";\"Chaumont-Gistoux\";\"main\"\n\"2800430\";\"Chaumont\";\"other\"\n\"2800430\";\"Tchamont-Djistou\";\"other\"\n\"2800430\";\"Tchåmont-Djistou\";\"other\"\n\"2800438\";\"Chaudfontaine\";\"main\"\n\"2800448\";\"Châtelet\";\"main\"\n\"2800448\";\"Chatelet\";\"ascii\"\n\"2800448\";\"Shatle\";\"other\"\n\"2800448\";\"Шатле\";\"other\"\n\"2800457\";\"Chastre-Villeroux-Blanmont\";\"main\"\n\"2800457\";\"Chastre\";\"other\"\n\"2800461\";\"Chasse Royale\";\"main\"\n\"2800481\";\"Charleroi\";\"main\"\n\"2800481\";\"Sarlroua\";\"other\"\n\"2800481\";\"Sharleroa\";\"other\"\n\"2800481\";\"Sharlerua\";\"other\"\n\"2800481\";\"Sharlroa\";\"other\"\n\"2800481\";\"Tchalerwe\";\"other\"\n\"2800481\";\"Tchålerwè\";\"other\"\n\"2800481\";\"sharururoa\";\"other\"\n\"2800481\";\"Σαρλρουά\";\"other\"\n\"2800481\";\"Шарлероа\";\"other\"\n\"2800481\";\"Шарлеруа\";\"other\"\n\"2800481\";\"Шарлроа\";\"other\"\n\"2800481\";\"שרלרואה\";\"other\"\n\"2800481\";\"シャルルロア\";\"other\"\n\"2800500\";\"Chapelle-lez-Herlaimont\";\"main\"\n\"2800591\";\"Cerfontaine\";\"main\"\n\"2800605\";\"Celles\";\"main\"\n\"2800711\";\"Butgenbach\";\"main\"\n\"2800761\";\"Burdinne\";\"main\"\n\"2800782\";\"Bullange\";\"main\"\n\"2800782\";\"Boellenge\";\"other\"\n\"2800782\";\"Buellingen\";\"other\"\n\"2800782\";\"Bullingen\";\"other\"\n\"2800782\";\"Böllénge\";\"other\"\n\"2800782\";\"Büllingen\";\"other\"\n\"2800816\";\"Buggenhout\";\"main\"\n\"2800866\";\"Brussels\";\"main\"\n\"2800866\";\"An Bhruiseil\";\"other\"\n\"2800866\";\"An Bhruiséil\";\"other\"\n\"2800866\";\"Breissel\";\"other\"\n\"2800866\";\"Brisel\";\"other\"\n\"2800866\";\"Brisele\";\"other\"\n\"2800866\";\"Briuselis\";\"other\"\n\"2800866\";\"Brjuksel\";\"other\"\n\"2800866\";\"Brjusel'\";\"other\"\n\"2800866\";\"Brjussel'\";\"other\"\n\"2800866\";\"Brueksel\";\"other\"\n\"2800866\";\"Bruessel\";\"other\"\n\"2800866\";\"Bruesszel\";\"other\"\n\"2800866\";\"Bruiseal\";\"other\"\n\"2800866\";\"Bruksel\";\"other\"\n\"2800866\";\"Bruksela\";\"other\"\n\"2800866\";\"Brukseli\";\"other\"\n\"2800866\";\"Brukselo\";\"other\"\n\"2800866\";\"Brusehl'\";\"other\"\n\"2800866\";\"Brusel\";\"other\"\n\"2800866\";\"Brusela\";\"other\"\n\"2800866\";\"Bruselas\";\"other\"\n\"2800866\";\"Bruseles\";\"other\"\n\"2800866\";\"Bruselj\";\"other\"\n\"2800866\";\"Bruselo\";\"other\"\n\"2800866\";\"Brusel·les\";\"other\"\n\"2800866\";\"Brussel\";\"other\"\n\"2800866\";\"Brussele\";\"other\"\n\"2800866\";\"Brussel·les\";\"other\"\n\"2800866\";\"Bruxel\";\"other\"\n\"2800866\";\"Bruxelas\";\"other\"\n\"2800866\";\"Bruxellae\";\"other\"\n\"2800866\";\"Bruxelles\";\"other\"\n\"2800866\";\"Brwsel\";\"other\"\n\"2800866\";\"Bryssel\";\"other\"\n\"2800866\";\"Bryusel\";\"other\"\n\"2800866\";\"Bryxelles\";\"other\"\n\"2800866\";\"Bréissel\";\"other\"\n\"2800866\";\"Brüksel\";\"other\"\n\"2800866\";\"Brüssel\";\"other\"\n\"2800866\";\"Brüsszel\";\"other\"\n\"2800866\";\"Citta di Bruxelles\";\"other\"\n\"2800866\";\"Città di Bruxelles\";\"other\"\n\"2800866\";\"Kota Brusel\";\"other\"\n\"2800866\";\"beulwisel\";\"other\"\n\"2800866\";\"braselsa\";\"other\"\n\"2800866\";\"brassels\";\"other\"\n\"2800866\";\"briuseli\";\"other\"\n\"2800866\";\"brwksl\";\"other\"\n\"2800866\";\"brysl\";\"other\"\n\"2800866\";\"bu lu sai er\";\"other\"\n\"2800866\";\"buryusseru\";\"other\"\n\"2800866\";\"Βρυξέλλες\";\"other\"\n\"2800866\";\"Брисел\";\"other\"\n\"2800866\";\"Брусэль\";\"other\"\n\"2800866\";\"Брюксел\";\"other\"\n\"2800866\";\"Брюсель\";\"other\"\n\"2800866\";\"Брюссель\";\"other\"\n\"2800866\";\"Բրյուսել\";\"other\"\n\"2800866\";\"בריסל\";\"other\"\n\"2800866\";\"بروكسل\";\"other\"\n\"2800866\";\"بروکسل\";\"other\"\n\"2800866\";\"بريۇسسېل\";\"other\"\n\"2800866\";\"ܒܪܘܟܣܠ\";\"other\"\n\"2800866\";\"ब्रसेल्स\";\"other\"\n\"2800866\";\"บรัสเซลส์\";\"other\"\n\"2800866\";\"ბრიუსელი\";\"other\"\n\"2800866\";\"ブリュッセル\";\"other\"\n\"2800866\";\"布鲁塞尔\";\"other\"\n\"2800866\";\"브뤼셀\";\"other\"\n\"2800883\";\"Brunehault\";\"main\"\n\"2800883\";\"Brunehaut\";\"other\"\n\"2800931\";\"Brugge\";\"main\"\n\"2800931\";\"Bricg\";\"other\"\n\"2800931\";\"Brige\";\"other\"\n\"2800931\";\"Briz\";\"other\"\n\"2800931\";\"Brizh\";\"other\"\n\"2800931\";\"Briž\";\"other\"\n\"2800931\";\"Brjugge\";\"other\"\n\"2800931\";\"Brjuzh\";\"other\"\n\"2800931\";\"Broegge\";\"other\"\n\"2800931\";\"Bruegge\";\"other\"\n\"2800931\";\"Brugae\";\"other\"\n\"2800931\";\"Bruges\";\"other\"\n\"2800931\";\"Bruggy\";\"other\"\n\"2800931\";\"Brugia\";\"other\"\n\"2800931\";\"Brugo\";\"other\"\n\"2800931\";\"Bruhhe\";\"other\"\n\"2800931\";\"Brujas\";\"other\"\n\"2800931\";\"Bruxas\";\"other\"\n\"2800931\";\"Bruĝo\";\"other\"\n\"2800931\";\"Brygge\";\"other\"\n\"2800931\";\"Brögge\";\"other\"\n\"2800931\";\"Brügge\";\"other\"\n\"2800931\";\"brwz'\";\"other\"\n\"2800931\";\"bu lu ri li shi zhong xin\";\"other\"\n\"2800931\";\"buryuhhe\";\"other\"\n\"2800931\";\"Бриж\";\"other\"\n\"2800931\";\"Брюгге\";\"other\"\n\"2800931\";\"Брюж\";\"other\"\n\"2800931\";\"ברוז'\";\"other\"\n\"2800931\";\"ブリュッヘ\";\"other\"\n\"2800931\";\"布鲁日历史中心\";\"other\"\n\"2800936\";\"Brugelette\";\"main\"\n\"2801093\";\"Bree\";\"main\"\n\"2801093\";\"Брее\";\"other\"\n\"2801103\";\"Bredene\";\"main\"\n\"2801103\";\"Breedene\";\"other\"\n\"2801103\";\"Breenienge\";\"other\"\n\"2801103\";\"Brenienge\";\"other\"\n\"2801103\";\"Breênienge\";\"other\"\n\"2801103\";\"Brênienge\";\"other\"\n\"2801106\";\"Brecht\";\"main\"\n\"2801106\";\"Brekht\";\"other\"\n\"2801106\";\"Брехт\";\"other\"\n\"2801117\";\"Brasschaat\";\"main\"\n\"2801117\";\"Braskhat\";\"other\"\n\"2801117\";\"Brasschaep\";\"other\"\n\"2801117\";\"Brasschaet\";\"other\"\n\"2801117\";\"Брасхат\";\"other\"\n\"2801147\";\"Braives\";\"main\"\n\"2801150\";\"Braine-le-Comte\";\"main\"\n\"2801150\";\"'s-Gravenbrakel\";\"other\"\n\"2801150\";\"Brem-le-Kont\";\"other\"\n\"2801150\";\"Brinne-e-Hinnot\";\"other\"\n\"2801150\";\"Брем-ле-Конт\";\"other\"\n\"2801152\";\"Braine-le-Château\";\"main\"\n\"2801152\";\"Braine-le-Chateau\";\"ascii\"\n\"2801152\";\"Kasteelbrakel\";\"other\"\n\"2801154\";\"Braine-l'Alleud\";\"main\"\n\"2801154\";\"Eigenbrake\";\"other\"\n\"2801215\";\"Boutersem\";\"main\"\n\"2801215\";\"Bautersem\";\"other\"\n\"2801226\";\"Boussu\";\"main\"\n\"2801226\";\"Boussu-lez-Mons\";\"other\"\n\"2801226\";\"Боуссу\";\"other\"\n\"2801283\";\"Bouillon\";\"main\"\n\"2801283\";\"Bulen\";\"other\"\n\"2801438\";\"Borsbeek\";\"main\"\n\"2801447\";\"Bornem\";\"main\"\n\"2801447\";\"Bornhem\";\"other\"\n\"2801467\";\"Borgloon\";\"main\"\n\"2801467\";\"Loeen\";\"other\"\n\"2801467\";\"Loeën\";\"other\"\n\"2801467\";\"Looz\";\"other\"\n\"2801467\";\"Борглоон\";\"other\"\n\"2801483\";\"Boortmeerbeek\";\"main\"\n\"2801494\";\"Boom\";\"main\"\n\"2801539\";\"Bonheiden\";\"main\"\n\"2801539\";\"Bonheyden\";\"other\"\n\"2801743\";\"Boechout\";\"main\"\n\"2801743\";\"Bouchout\";\"other\"\n\"2801754\";\"Bocholt\";\"main\"\n\"2801754\";\"Boggetj\";\"other\"\n\"2801754\";\"Bóggetj\";\"other\"\n\"2801820\";\"Blegny\";\"main\"\n\"2801858\";\"Blankenberge\";\"main\"\n\"2801858\";\"Blank'nberge\";\"other\"\n\"2801858\";\"Blank'nberhe\";\"other\"\n\"2801858\";\"Blankenberghe\";\"other\"\n\"2801858\";\"Бланкенберге\";\"other\"\n\"2801922\";\"Binche\";\"main\"\n\"2801922\";\"Bensh\";\"other\"\n\"2801922\";\"Бенш\";\"other\"\n\"2801924\";\"Bilzen\";\"main\"\n\"2801924\";\"Bilsen\";\"other\"\n\"2801924\";\"Bilze\";\"other\"\n\"2801924\";\"Билзен\";\"other\"\n\"2801949\";\"Bièvre\";\"main\"\n\"2801949\";\"Bievre\";\"ascii\"\n\"2801949\";\"Bive\";\"other\"\n\"2801998\";\"Bierbeek\";\"main\"\n\"2802015\";\"Beyne-Heusay\";\"main\"\n\"2802031\";\"Beveren\";\"main\"\n\"2802031\";\"Beveren-Waes\";\"other\"\n\"2802031\";\"Беверен\";\"other\"\n\"2802051\";\"Bever\";\"main\"\n\"2802106\";\"Bertrix\";\"main\"\n\"2802113\";\"Bertogne\";\"main\"\n\"2802123\";\"Bertem\";\"main\"\n\"2802123\";\"Berthem\";\"other\"\n\"2802135\";\"Bernissart\";\"main\"\n\"2802143\";\"Berloz\";\"main\"\n\"2802154\";\"Berlare\";\"main\"\n\"2802154\";\"Berlaere\";\"other\"\n\"2802156\";\"Berlaar\";\"main\"\n\"2802156\";\"Berlaer\";\"other\"\n\"2802170\";\"Beringen\";\"main\"\n\"2802170\";\"Beeringen\";\"other\"\n\"2802170\";\"Beringene\";\"other\"\n\"2802170\";\"Berringe\";\"other\"\n\"2802170\";\"Берингене\";\"other\"\n\"2802292\";\"Beloeil\";\"main\"\n\"2802292\";\"Belœil\";\"other\"\n\"2802374\";\"Bekkevoort\";\"main\"\n\"2802374\";\"Becquevoort\";\"other\"\n\"2802405\";\"Begijnendijk\";\"main\"\n\"2802405\";\"Beggynendyck\";\"other\"\n\"2802433\";\"Beersel\";\"main\"\n\"2802433\";\"Bersel\";\"other\"\n\"2802433\";\"Берсел\";\"other\"\n\"2802435\";\"Beerse\";\"main\"\n\"2802435\";\"Beersse\";\"other\"\n\"2802437\";\"Beernem\";\"main\"\n\"2802437\";\"Bèèrnem\";\"other\"\n\"2802483\";\"Beauvechain\";\"main\"\n\"2802483\";\"Bevekom\";\"other\"\n\"2802501\";\"Beauraing\";\"main\"\n\"2802501\";\"Biarin\";\"other\"\n\"2802510\";\"Beaumont\";\"main\"\n\"2802583\";\"Bastogne\";\"main\"\n\"2802583\";\"Baaschtnech\";\"other\"\n\"2802583\";\"Bastenaken\";\"other\"\n\"2802583\";\"Bastona\";\"other\"\n\"2802583\";\"Bastoña\";\"other\"\n\"2802606\";\"Bassenge\";\"main\"\n\"2802606\";\"Bassange\";\"other\"\n\"2802606\";\"Bitsingen\";\"other\"\n\"2802610\";\"Basse Lasne\";\"main\"\n\"2802743\";\"Balen\";\"main\"\n\"2802743\";\"Baelen\";\"other\"\n\"2802743\";\"Balen-sur-Nethe\";\"other\"\n\"2802787\";\"Baelen\";\"main\"\n\"2802816\";\"Baarle-Hertog\";\"main\"\n\"2802816\";\"Baerle-Duc\";\"other\"\n\"2802816\";\"バールレ・ヘルトフ\";\"other\"\n\"2802837\";\"Aywaille\";\"main\"\n\"2802849\";\"Awans\";\"main\"\n\"2802871\";\"Avelgem\";\"main\"\n\"2802871\";\"Aovelhem\";\"other\"\n\"2802871\";\"Avelghem\";\"other\"\n\"2802985\";\"Aubel\";\"main\"\n\"2802990\";\"Aubange\";\"main\"\n\"2802996\";\"Attert\";\"main\"\n\"2803010\";\"Ath\";\"main\"\n\"2803010\";\"Aat\";\"other\"\n\"2803010\";\"Ate\";\"other\"\n\"2803018\";\"Assesse\";\"main\"\n\"2803026\";\"Assenede\";\"main\"\n\"2803033\";\"Asse\";\"main\"\n\"2803033\";\"Assche\";\"other\"\n\"2803033\";\"Asso\";\"other\"\n\"2803033\";\"Ассо\";\"other\"\n\"2803053\";\"As\";\"main\"\n\"2803053\";\"Asch\";\"other\"\n\"2803073\";\"Arlon\";\"main\"\n\"2803073\";\"Aarle\";\"other\"\n\"2803073\";\"Aarlen\";\"other\"\n\"2803073\";\"Arel\";\"other\"\n\"2803073\";\"aruron\";\"other\"\n\"2803073\";\"Årlon\";\"other\"\n\"2803073\";\"Αρλόν\";\"other\"\n\"2803073\";\"Арлон\";\"other\"\n\"2803073\";\"アルロン\";\"other\"\n\"2803083\";\"Arendonk\";\"main\"\n\"2803083\";\"Arendonck\";\"other\"\n\"2803091\";\"Ardooie\";\"main\"\n\"2803091\";\"Ardoye\";\"other\"\n\"2803130\";\"Anzegem\";\"main\"\n\"2803130\";\"Anseghem\";\"other\"\n\"2803130\";\"Anzehem\";\"other\"\n\"2803138\";\"Antwerp\";\"main\"\n\"2803138\";\"Amberes\";\"other\"\n\"2803138\";\"Antuerpen - Antwerpen\";\"other\"\n\"2803138\";\"Antuerpia\";\"other\"\n\"2803138\";\"Antuérpia\";\"other\"\n\"2803138\";\"Antverpen\";\"other\"\n\"2803138\";\"Antverpenas\";\"other\"\n\"2803138\";\"Antverpene\";\"other\"\n\"2803138\";\"Antverpeno\";\"other\"\n\"2803138\";\"Antverpia\";\"other\"\n\"2803138\";\"Antverpy\";\"other\"\n\"2803138\";\"Antwerp'n\";\"other\"\n\"2803138\";\"Antwerpe\";\"other\"\n\"2803138\";\"Antwerpen\";\"other\"\n\"2803138\";\"Antwerpia\";\"other\"\n\"2803138\";\"Antwerpium\";\"other\"\n\"2803138\";\"Anvers\";\"other\"\n\"2803138\";\"Anversa\";\"other\"\n\"2803138\";\"Kota Antwerpen\";\"other\"\n\"2803138\";\"an te wei pu\";\"other\"\n\"2803138\";\"anteubeleupeon\";\"other\"\n\"2803138\";\"antou~erupen\";\"other\"\n\"2803138\";\"antowapu\";\"other\"\n\"2803138\";\"Антверпен\";\"other\"\n\"2803138\";\"אנטוורפן\";\"other\"\n\"2803138\";\"アントウェルペン\";\"other\"\n\"2803138\";\"アントワープ\";\"other\"\n\"2803138\";\"安特卫普\";\"other\"\n\"2803138\";\"안트베르펀\";\"other\"\n\"2803144\";\"Antoing\";\"main\"\n\"2803148\";\"Anthisnes\";\"main\"\n\"2803160\";\"Ans\";\"main\"\n\"2803160\";\"Anse\";\"other\"\n\"2803174\";\"Anhée\";\"main\"\n\"2803174\";\"Anhee\";\"ascii\"\n\"2803174\";\"Anhee sur Meuse\";\"other\"\n\"2803174\";\"Anheye\";\"other\"\n\"2803174\";\"Anhée sur Meuse\";\"other\"\n\"2803174\";\"Anhêye\";\"other\"\n\"2803199\";\"Anderlues\";\"main\"\n\"2803204\";\"Andenne\";\"main\"\n\"2803204\";\"Anden\";\"other\"\n\"2803204\";\"Andene\";\"other\"\n\"2803204\";\"Анден\";\"other\"\n\"2803242\";\"Amblève\";\"main\"\n\"2803242\";\"Ambleve\";\"ascii\"\n\"2803242\";\"Amel\";\"other\"\n\"2803246\";\"Amay\";\"main\"\n\"2803246\";\"Ama\";\"other\"\n\"2803252\";\"Alveringem\";\"main\"\n\"2803252\";\"Alveringhem\";\"other\"\n\"2803252\";\"Oalveringem\";\"other\"\n\"2803285\";\"Alken\";\"main\"\n\"2803285\";\"Alkén\";\"other\"\n\"2803285\";\"Alleke\";\"other\"\n\"2803323\";\"Aiseau\";\"main\"\n\"2803420\";\"Aartselaar\";\"main\"\n\"2803420\";\"Aertselaer\";\"other\"\n\"2803429\";\"Aarschot\";\"main\"\n\"2803429\";\"Aarshot\";\"other\"\n\"2803429\";\"Aerschot\";\"other\"\n\"2803429\";\"Ааршот\";\"other\"\n\"2803443\";\"Aalter\";\"main\"\n\"2803443\";\"Aeltre\";\"other\"\n\"2803443\";\"Gemeente_Aalter\";\"other\"\n\"2803448\";\"Aalst\";\"main\"\n\"2803448\";\"Alost\";\"other\"\n\"2353197\";\"Zorgho\";\"main\"\n\"2353197\";\"Zorgo\";\"other\"\n\"2353197\";\"Zorogo\";\"other\"\n\"2353257\";\"Ziniaré\";\"main\"\n\"2353257\";\"Ziniare\";\"ascii\"\n\"2353257\";\"Zimare\";\"other\"\n\"2353257\";\"Zimaré\";\"other\"\n\"2353257\";\"Zinarie\";\"other\"\n\"2353257\";\"Zinarié\";\"other\"\n\"2353688\";\"Yako\";\"main\"\n\"2353688\";\"Jako\";\"other\"\n\"2353688\";\"Яко\";\"other\"\n\"2354176\";\"Tougan\";\"main\"\n\"2354176\";\"Tugan\";\"other\"\n\"2354265\";\"Toma\";\"main\"\n\"2354349\";\"Titao\";\"main\"\n\"2354675\";\"Tenkodogo\";\"main\"\n\"2355404\";\"Solenzo\";\"main\"\n\"2355404\";\"Salanso\";\"other\"\n\"2355404\";\"Solenso\";\"other\"\n\"2355548\";\"Sindou\";\"main\"\n\"2355548\";\"Sindu\";\"other\"\n\"2355803\";\"Sebba\";\"main\"\n\"2355803\";\"Zebba\";\"other\"\n\"2355869\";\"Sapouy\";\"main\"\n\"2355869\";\"Sapoui\";\"other\"\n\"2355869\";\"Sapui\";\"other\"\n\"2356228\";\"Réo\";\"main\"\n\"2356228\";\"Reo\";\"ascii\"\n\"2356228\";\"Рео\";\"other\"\n\"2356454\";\"Pô\";\"main\"\n\"2356454\";\"Po\";\"ascii\"\n\"2356459\";\"Pitmoaga\";\"main\"\n\"2356738\";\"Pama\";\"main\"\n\"2356738\";\"Panea\";\"other\"\n\"2357012\";\"Ouargaye\";\"main\"\n\"2357012\";\"Ouargay\";\"other\"\n\"2357043\";\"Ouahigouya\";\"main\"\n\"2357043\";\"Waiguya\";\"other\"\n\"2357048\";\"Ouagadougou\";\"main\"\n\"2357048\";\"Ouagadouga\";\"other\"\n\"2357048\";\"Ouankantounkou\";\"other\"\n\"2357048\";\"Uagadougou\";\"other\"\n\"2357048\";\"Uagadugu\";\"other\"\n\"2357048\";\"Uagaduguo\";\"other\"\n\"2357048\";\"Uagadugú\";\"other\"\n\"2357048\";\"Vagadugu\";\"other\"\n\"2357048\";\"Wagadugu\";\"other\"\n\"2357048\";\"awagadwgw\";\"other\"\n\"2357048\";\"wa jia du gu\";\"other\"\n\"2357048\";\"wagado~ugu\";\"other\"\n\"2357048\";\"wagadugu\";\"other\"\n\"2357048\";\"waghadwghw\";\"other\"\n\"2357048\";\"Ουαγκαντούγκου\";\"other\"\n\"2357048\";\"Уагадугу\";\"other\"\n\"2357048\";\"ואגאדוגו\";\"other\"\n\"2357048\";\"اوآگادوگو\";\"other\"\n\"2357048\";\"واغادوغو\";\"other\"\n\"2357048\";\"ዋጋዱጉ\";\"other\"\n\"2357048\";\"ワガドゥグー\";\"other\"\n\"2357048\";\"瓦加杜古\";\"other\"\n\"2357048\";\"와가두구\";\"other\"\n\"2357163\";\"Nouna\";\"main\"\n\"2358100\";\"Manga\";\"main\"\n\"2358382\";\"Léo\";\"main\"\n\"2358382\";\"Leo\";\"ascii\"\n\"2358382\";\"Lev\";\"other\"\n\"2358382\";\"Лев\";\"other\"\n\"2358738\";\"Koupéla\";\"main\"\n\"2358738\";\"Koupela\";\"ascii\"\n\"2358738\";\"Kupela\";\"other\"\n\"2358946\";\"Koudougou\";\"main\"\n\"2358946\";\"Kondougou\";\"other\"\n\"2358946\";\"Kudugu\";\"other\"\n\"2358946\";\"Кудугу\";\"other\"\n\"2359142\";\"Kongoussi\";\"main\"\n\"2359227\";\"Kombissiri\";\"main\"\n\"2359227\";\"Kombisiri\";\"other\"\n\"2359227\";\"Kombissiguiri\";\"other\"\n\"2359317\";\"Kokologo\";\"main\"\n\"2359317\";\"Kokolgho\";\"other\"\n\"2359608\";\"Kaya\";\"main\"\n\"2359608\";\"Kaja\";\"other\"\n\"2359608\";\"Кая\";\"other\"\n\"2360073\";\"Houndé\";\"main\"\n\"2360073\";\"Hounde\";\"ascii\"\n\"2360073\";\"Hunde\";\"other\"\n\"2360238\";\"Gourcy\";\"main\"\n\"2360238\";\"Goursi\";\"other\"\n\"2360238\";\"Gursi\";\"other\"\n\"2360286\";\"Goulouré\";\"main\"\n\"2360286\";\"Gouloure\";\"ascii\"\n\"2360372\";\"Gorom-Gorom\";\"main\"\n\"2360541\";\"Gayéri\";\"main\"\n\"2360541\";\"Gayeri\";\"ascii\"\n\"2360615\";\"Garango\";\"main\"\n\"2360886\";\"Fada N’Gourma\";\"main\"\n\"2360886\";\"Fada N'Gourma\";\"ascii\"\n\"2360886\";\"Fada N'gourma\";\"other\"\n\"2360886\";\"Fada-Ngourma\";\"other\"\n\"2360886\";\"Fada-n-Gurma\";\"other\"\n\"2361082\";\"Dori\";\"main\"\n\"2361082\";\"Дори\";\"other\"\n\"2361177\";\"Djibo\";\"main\"\n\"2361177\";\"Dzhibo\";\"other\"\n\"2361177\";\"Jibo\";\"other\"\n\"2361177\";\"Джибо\";\"other\"\n\"2361342\";\"Diébougou\";\"main\"\n\"2361342\";\"Diebougou\";\"ascii\"\n\"2361342\";\"Diebugu\";\"other\"\n\"2361373\";\"Diapaga\";\"main\"\n\"2361373\";\"Диапага\";\"other\"\n\"2361477\";\"Dédougou\";\"main\"\n\"2361477\";\"Dedougou\";\"ascii\"\n\"2361477\";\"Dedugu\";\"other\"\n\"2361586\";\"Dano\";\"main\"\n\"2361845\";\"Boussé\";\"main\"\n\"2361845\";\"Bousse\";\"ascii\"\n\"2361845\";\"Busse\";\"other\"\n\"2361946\";\"Boulsa\";\"main\"\n\"2361946\";\"Boulssa\";\"other\"\n\"2361946\";\"Bulsa\";\"other\"\n\"2362150\";\"Boromo\";\"main\"\n\"2362150\";\"Borom\";\"other\"\n\"2362323\";\"Bogandé\";\"main\"\n\"2362323\";\"Bogande\";\"ascii\"\n\"2362344\";\"Bobo-Dioulasso\";\"main\"\n\"2362344\";\"Bobo Dioulasso\";\"other\"\n\"2362344\";\"Bobo-Diulasso\";\"other\"\n\"2362344\";\"Bobodjulaso\";\"other\"\n\"2362344\";\"ボボ・ディウラッソ\";\"other\"\n\"2362669\";\"Batié\";\"main\"\n\"2362669\";\"Batie\";\"ascii\"\n\"2362909\";\"Banfora\";\"main\"\n\"2362909\";\"Banforu\";\"other\"\n\"2362909\";\"Банфору\";\"other\"\n\"2577162\";\"Gaoua\";\"main\"\n\"2577164\";\"Orodara\";\"main\"\n\"2577164\";\"Orodaro\";\"other\"\n\"725213\";\"Beloslav\";\"main\"\n\"725213\";\"Belevo\";\"other\"\n\"725213\";\"Belewo\";\"other\"\n\"725213\";\"Beloslaw\";\"other\"\n\"725213\";\"Belovo\";\"other\"\n\"725213\";\"Bielevo\";\"other\"\n\"725213\";\"Bjelevo\";\"other\"\n\"725213\";\"Byelevo\";\"other\"\n\"725213\";\"Gebedze\";\"other\"\n\"725213\";\"Gebedzhe\";\"other\"\n\"725213\";\"Gebedže\";\"other\"\n\"725213\";\"Белослав\";\"other\"\n\"725271\";\"Zlatograd\";\"main\"\n\"725271\";\"Dara-Dere\";\"other\"\n\"725271\";\"Daridere\";\"other\"\n\"725271\";\"Dară-Dere\";\"other\"\n\"725271\";\"Slatograd\";\"other\"\n\"725271\";\"Zlatograde\";\"other\"\n\"725271\";\"Златоград\";\"other\"\n\"725283\";\"Zlatitsa\";\"main\"\n\"725283\";\"Slatiza\";\"other\"\n\"725283\";\"Zlatica\";\"other\"\n\"725283\";\"Zlatitza\";\"other\"\n\"725283\";\"Zlatiza\";\"other\"\n\"725283\";\"Златица\";\"other\"\n\"725295\";\"Zlataritsa\";\"main\"\n\"725295\";\"Slatariza\";\"other\"\n\"725295\";\"Zlatarica\";\"other\"\n\"725295\";\"Zlataritza\";\"other\"\n\"725295\";\"Златарица\";\"other\"\n\"725402\";\"Zemen\";\"main\"\n\"725402\";\"Belovo\";\"other\"\n\"725402\";\"Bjelovo\";\"other\"\n\"725402\";\"Byelovo\";\"other\"\n\"725402\";\"Semen\";\"other\"\n\"725402\";\"Земен\";\"other\"\n\"725435\";\"Zavet\";\"main\"\n\"725435\";\"Sawet\";\"other\"\n\"725435\";\"Zavjet\";\"other\"\n\"725435\";\"Zavot\";\"other\"\n\"725435\";\"Zavut\";\"other\"\n\"725435\";\"Zavyet\";\"other\"\n\"725435\";\"Завет\";\"other\"\n\"725578\";\"Yambol\";\"main\"\n\"725578\";\"Iambol\";\"other\"\n\"725578\";\"Jambol\";\"other\"\n\"725578\";\"Jamboli\";\"other\"\n\"725578\";\"Yampolis\";\"other\"\n\"725578\";\"Ямбол\";\"other\"\n\"725586\";\"Yakoruda\";\"main\"\n\"725586\";\"Jakoruda\";\"other\"\n\"725586\";\"Johurut\";\"other\"\n\"725586\";\"Jokoruda\";\"other\"\n\"725586\";\"Yokoruda\";\"other\"\n\"725586\";\"Якоруда\";\"other\"\n\"725588\";\"Yakimovo\";\"main\"\n\"725588\";\"Jakimovo\";\"other\"\n\"725588\";\"Kotenovtsi\";\"other\"\n\"725588\";\"Progorelets\";\"other\"\n\"725588\";\"Voynitsi\";\"other\"\n\"725588\";\"Якимово\";\"other\"\n\"725611\";\"Yablanitsa\";\"main\"\n\"725611\";\"Ablanitsa\";\"other\"\n\"725611\";\"Iablanica\";\"other\"\n\"725611\";\"Jablanica\";\"other\"\n\"725611\";\"Jablaniza\";\"other\"\n\"725611\";\"Jablonica\";\"other\"\n\"725611\";\"Ябланица\";\"other\"\n\"725623\";\"Vŭrshets\";\"main\"\n\"725623\";\"Vurshets\";\"ascii\"\n\"725623\";\"Varshets\";\"other\"\n\"725623\";\"Varshetz\";\"other\"\n\"725623\";\"Vershets\";\"other\"\n\"725623\";\"Vresec\";\"other\"\n\"725623\";\"Vrešec\";\"other\"\n\"725623\";\"Vrsec\";\"other\"\n\"725623\";\"Vrshets\";\"other\"\n\"725623\";\"Vršec\";\"other\"\n\"725623\";\"Vursec\";\"other\"\n\"725623\";\"Vurshec\";\"other\"\n\"725623\";\"Vuršec\";\"other\"\n\"725623\";\"Vărshets\";\"other\"\n\"725623\";\"Warschez\";\"other\"\n\"725623\";\"Wărschez\";\"other\"\n\"725623\";\"Вършец\";\"other\"\n\"725649\";\"Vŭrbitsa\";\"main\"\n\"725649\";\"Vurbitsa\";\"ascii\"\n\"725649\";\"Varbitsa\";\"other\"\n\"725649\";\"Virbica\";\"other\"\n\"725649\";\"Vrbica\";\"other\"\n\"725649\";\"Vrbitsa\";\"other\"\n\"725649\";\"Vurbica\";\"other\"\n\"725649\";\"Vărbitsa\";\"other\"\n\"725649\";\"Warbiza\";\"other\"\n\"725649\";\"Wărbiza\";\"other\"\n\"725649\";\"Върбица\";\"other\"\n\"725679\";\"Vŭlchidol\";\"main\"\n\"725679\";\"Vulchidol\";\"ascii\"\n\"725679\";\"Kurt Dere\";\"other\"\n\"725679\";\"Waltschi Dol\";\"other\"\n\"725679\";\"Вълчидол\";\"other\"\n\"725683\";\"Vŭlchedrŭm\";\"main\"\n\"725683\";\"Vulchedrum\";\"ascii\"\n\"725683\";\"Valchedarma\";\"other\"\n\"725683\";\"Valtchedram\";\"other\"\n\"725683\";\"Valtchidarma\";\"other\"\n\"725683\";\"Vlcdrma\";\"other\"\n\"725683\";\"Vlcedrama\";\"other\"\n\"725683\";\"Vlcedrma\";\"other\"\n\"725683\";\"Vlchedrma\";\"other\"\n\"725683\";\"Vlcidrama\";\"other\"\n\"725683\";\"Vlčdrma\";\"other\"\n\"725683\";\"Vlčedrama\";\"other\"\n\"725683\";\"Vlčedrma\";\"other\"\n\"725683\";\"Vlčidrama\";\"other\"\n\"725683\";\"Vulcedurma\";\"other\"\n\"725683\";\"Vulchedruma\";\"other\"\n\"725683\";\"Vulchedurma\";\"other\"\n\"725683\";\"Vălchedărma\";\"other\"\n\"725683\";\"Vŭlchedrŭma\";\"other\"\n\"725683\";\"Vŭlchedŭrma\";\"other\"\n\"725683\";\"Vŭlčedŭrma\";\"other\"\n\"725683\";\"Waltschedrama\";\"other\"\n\"725683\";\"Waltschedrăma\";\"other\"\n\"725683\";\"Вълчедръм\";\"other\"\n\"725712\";\"Vratsa\";\"main\"\n\"725712\";\"Vraca\";\"other\"\n\"725712\";\"Vratca\";\"other\"\n\"725712\";\"Vrattsa\";\"other\"\n\"725712\";\"Vratza\";\"other\"\n\"725712\";\"Wraza\";\"other\"\n\"725712\";\"Враца\";\"other\"\n\"725816\";\"Sveti Vlas\";\"main\"\n\"725816\";\"Manasturkioy\";\"other\"\n\"725816\";\"Manastŭrkioy\";\"other\"\n\"725816\";\"Monasturkioy\";\"other\"\n\"725816\";\"Monastŭrkioy\";\"other\"\n\"725816\";\"Saint Vlas\";\"other\"\n\"725816\";\"Sveti-Vlas\";\"other\"\n\"725816\";\"Sweti Wlas\";\"other\"\n\"725816\";\"Vlas\";\"other\"\n\"725816\";\"Влас\";\"other\"\n\"725816\";\"Свети-Влас\";\"other\"\n\"725905\";\"Vidin\";\"main\"\n\"725905\";\"Vidine\";\"other\"\n\"725905\";\"Widin\";\"other\"\n\"725905\";\"wydyn\";\"other\"\n\"725905\";\"Видин\";\"other\"\n\"725905\";\"ویدین\";\"other\"\n\"725924\";\"Vetrino\";\"main\"\n\"725924\";\"Asya-Tepe\";\"other\"\n\"725924\";\"Jasi Tepe\";\"other\"\n\"725924\";\"Vyetreno\";\"other\"\n\"725924\";\"Vyetrino\";\"other\"\n\"725924\";\"Wetrino\";\"other\"\n\"725924\";\"Yasa-Tepe\";\"other\"\n\"725924\";\"Yase-Tepe\";\"other\"\n\"725924\";\"Yasu-Tepe\";\"other\"\n\"725924\";\"Yasă-Tepe\";\"other\"\n\"725924\";\"Yasŭ-Tepe\";\"other\"\n\"725924\";\"Ветрино\";\"other\"\n\"725935\";\"Vetovo\";\"main\"\n\"725935\";\"Vetova\";\"other\"\n\"725935\";\"Vjetevo\";\"other\"\n\"725935\";\"Vyetovo\";\"other\"\n\"725935\";\"Wetowo\";\"other\"\n\"725935\";\"Ветово\";\"other\"\n\"725967\";\"Venets\";\"main\"\n\"725967\";\"K'okledzha\";\"other\"\n\"725967\";\"K'oklyudzha\";\"other\"\n\"725967\";\"K'okyudzha\";\"other\"\n\"725967\";\"Kiokhudza\";\"other\"\n\"725967\";\"Kiokhudža\";\"other\"\n\"725967\";\"Kokedzha\";\"other\"\n\"725967\";\"K’okledzha\";\"other\"\n\"725967\";\"K’oklyudzha\";\"other\"\n\"725967\";\"K’okyudzha\";\"other\"\n\"725967\";\"Venec\";\"other\"\n\"725967\";\"Vyenets\";\"other\"\n\"725967\";\"Wenez\";\"other\"\n\"725967\";\"Венец\";\"other\"\n\"725988\";\"Velingrad\";\"main\"\n\"725988\";\"Велинград\";\"other\"\n\"725993\";\"Veliko Tŭrnovo\";\"main\"\n\"725993\";\"Veliko Turnovo\";\"ascii\"\n\"725993\";\"Tarnovo\";\"other\"\n\"725993\";\"Tarnowo\";\"other\"\n\"725993\";\"Ternovo\";\"other\"\n\"725993\";\"Tirnovo\";\"other\"\n\"725993\";\"Trnova\";\"other\"\n\"725993\";\"Trnovo\";\"other\"\n\"725993\";\"Turnovo\";\"other\"\n\"725993\";\"Tărnovo\";\"other\"\n\"725993\";\"Tărnowo\";\"other\"\n\"725993\";\"Tŭrnovo\";\"other\"\n\"725993\";\"Veliko T\\\"rnovo\";\"other\"\n\"725993\";\"Veliko Tarnovo\";\"other\"\n\"725993\";\"Veliko Tărnovo\";\"other\"\n\"725993\";\"Weliko Tarnowo\";\"other\"\n\"725993\";\"Weliko Tyrnowo\";\"other\"\n\"725993\";\"vu~erikotarunovu~o\";\"other\"\n\"725993\";\"Велико Търново\";\"other\"\n\"725993\";\"ヴェリコタルノヴォ\";\"other\"\n\"726050\";\"Varna\";\"main\"\n\"726050\";\"Barna\";\"other\"\n\"726050\";\"Odessos\";\"other\"\n\"726050\";\"Odessus\";\"other\"\n\"726050\";\"Stalin\";\"other\"\n\"726050\";\"Warna\";\"other\"\n\"726050\";\"farna\";\"other\"\n\"726050\";\"varna\";\"other\"\n\"726050\";\"vu~aruna\";\"other\"\n\"726050\";\"wa er na\";\"other\"\n\"726050\";\"wrnh\";\"other\"\n\"726050\";\"Βάρνα\";\"other\"\n\"726050\";\"Варна\";\"other\"\n\"726050\";\"ורנה\";\"other\"\n\"726050\";\"فارنا\";\"other\"\n\"726050\";\"ვარნა\";\"other\"\n\"726050\";\"ヴァルナ\";\"other\"\n\"726050\";\"瓦爾納\";\"other\"\n\"726114\";\"Ugŭrchin\";\"main\"\n\"726114\";\"Ugurchin\";\"ascii\"\n\"726114\";\"Ugarchin\";\"other\"\n\"726114\";\"Ugarcin\";\"other\"\n\"726114\";\"Ugartschin\";\"other\"\n\"726114\";\"Ugarčin\";\"other\"\n\"726114\";\"Ugirkin\";\"other\"\n\"726114\";\"Ugrchin\";\"other\"\n\"726114\";\"Ugrcin\";\"other\"\n\"726114\";\"Ugrčin\";\"other\"\n\"726114\";\"Ugurcin\";\"other\"\n\"726114\";\"Ugürčin\";\"other\"\n\"726114\";\"Ugărchin\";\"other\"\n\"726114\";\"Ugărtschin\";\"other\"\n\"726114\";\"Угърчин\";\"other\"\n\"726130\";\"Tvŭrditsa\";\"main\"\n\"726130\";\"Tvurditsa\";\"ascii\"\n\"726130\";\"Tvardica\";\"other\"\n\"726130\";\"Tvarditsa\";\"other\"\n\"726130\";\"Tvarditza\";\"other\"\n\"726130\";\"Tverditsa\";\"other\"\n\"726130\";\"Tvrdica\";\"other\"\n\"726130\";\"Tvrditsa\";\"other\"\n\"726130\";\"Tvurdica\";\"other\"\n\"726130\";\"Tvŭrdica\";\"other\"\n\"726130\";\"Twardiza\";\"other\"\n\"726130\";\"Twărdiza\";\"other\"\n\"726130\";\"Твърдица\";\"other\"\n\"726141\";\"Tutrakan\";\"main\"\n\"726141\";\"Turtucaia\";\"other\"\n\"726141\";\"Turtukai\";\"other\"\n\"726141\";\"Tutrakhan\";\"other\"\n\"726141\";\"Тутракан\";\"other\"\n\"726174\";\"Tŭrgovishte\";\"main\"\n\"726174\";\"Turgovishte\";\"ascii\"\n\"726174\";\"Eski Djoumaia\";\"other\"\n\"726174\";\"Eski Djoumaïa\";\"other\"\n\"726174\";\"Eski Dschumaja\";\"other\"\n\"726174\";\"Eski Dzhumaya\";\"other\"\n\"726174\";\"Eski Dzuma\";\"other\"\n\"726174\";\"Eski Dzumaja\";\"other\"\n\"726174\";\"Eski Dzumaya\";\"other\"\n\"726174\";\"Eski Džuma\";\"other\"\n\"726174\";\"Eski Džumaja\";\"other\"\n\"726174\";\"Targovishte\";\"other\"\n\"726174\";\"Targowischte\";\"other\"\n\"726174\";\"Trgovishte\";\"other\"\n\"726174\";\"Turgovishhe\";\"other\"\n\"726174\";\"Turgoviste\";\"other\"\n\"726174\";\"Tărgowischte\";\"other\"\n\"726174\";\"Tŭrgovište\";\"other\"\n\"726174\";\"Търговище\";\"other\"\n\"726245\";\"Tsenovo\";\"main\"\n\"726245\";\"Causevo\";\"other\"\n\"726245\";\"Causkioj\";\"other\"\n\"726245\";\"Causovo\";\"other\"\n\"726245\";\"Cauševo\";\"other\"\n\"726245\";\"Cauškiöj\";\"other\"\n\"726245\";\"Cenevo\";\"other\"\n\"726245\";\"Cenovo\";\"other\"\n\"726245\";\"Chaushevo\";\"other\"\n\"726245\";\"Chaushovo\";\"other\"\n\"726245\";\"Tenovo\";\"other\"\n\"726245\";\"Zenowo\";\"other\"\n\"726245\";\"Čaušovo\";\"other\"\n\"726245\";\"Čenevo\";\"other\"\n\"726245\";\"Ценово\";\"other\"\n\"726287\";\"Tryavna\";\"main\"\n\"726287\";\"Trevna\";\"other\"\n\"726287\";\"Trewna\";\"other\"\n\"726287\";\"Trjavna\";\"other\"\n\"726287\";\"Tryevna\";\"other\"\n\"726287\";\"Trěvna\";\"other\"\n\"726287\";\"Трявна\";\"other\"\n\"726307\";\"Trŭn\";\"main\"\n\"726307\";\"Trun\";\"ascii\"\n\"726307\";\"Tran\";\"other\"\n\"726307\";\"Tren\";\"other\"\n\"726307\";\"Trin\";\"other\"\n\"726307\";\"Trn\";\"other\"\n\"726307\";\"Trăn\";\"other\"\n\"726307\";\"Трън\";\"other\"\n\"726320\";\"Troyan\";\"main\"\n\"726320\";\"Troian\";\"other\"\n\"726320\";\"Trojan\";\"other\"\n\"726320\";\"Troïan\";\"other\"\n\"726320\";\"Троян\";\"other\"\n\"726384\";\"Topolovgrad\";\"main\"\n\"726384\";\"Kavaklii\";\"other\"\n\"726384\";\"Kavakly\";\"other\"\n\"726384\";\"Topolovgrade\";\"other\"\n\"726384\";\"Topolowgrad\";\"other\"\n\"726384\";\"Тополовград\";\"other\"\n\"726409\";\"Tonchevtsi\";\"main\"\n\"726409\";\"Tonchevci\";\"other\"\n\"726409\";\"Tonchovtsi\";\"other\"\n\"726409\";\"Тончевци\";\"other\"\n\"726418\";\"Dobrich\";\"main\"\n\"726418\";\"Bazargic\";\"other\"\n\"726418\";\"Dobric\";\"other\"\n\"726418\";\"Dobricz\";\"other\"\n\"726418\";\"Dobritch\";\"other\"\n\"726418\";\"Dobritj\";\"other\"\n\"726418\";\"Dobrits\";\"other\"\n\"726418\";\"Dobritsch\";\"other\"\n\"726418\";\"Dobritsj\";\"other\"\n\"726418\";\"Dobritš\";\"other\"\n\"726418\";\"Dobrič\";\"other\"\n\"726418\";\"Hacioglu Pazarcik\";\"other\"\n\"726418\";\"Hacıoğlu Pazarcık\";\"other\"\n\"726418\";\"Hadzi-Oghlu-Pazardzik\";\"other\"\n\"726418\";\"Hadži-Oghlu-Pazardžik\";\"other\"\n\"726418\";\"Khadzhioglu Bazardzhik\";\"other\"\n\"726418\";\"Khadzhioglu Pazardzhik\";\"other\"\n\"726418\";\"Tolbuhin\";\"other\"\n\"726418\";\"Tolbukhin\";\"other\"\n\"726418\";\"dobeulichi\";\"other\"\n\"726418\";\"Добрич\";\"other\"\n\"726418\";\"도브리치\";\"other\"\n\"726464\";\"Teteven\";\"main\"\n\"726464\";\"Tetevene\";\"other\"\n\"726464\";\"Tetewene\";\"other\"\n\"726464\";\"Тетевен\";\"other\"\n\"726474\";\"Tervel\";\"main\"\n\"726474\";\"Curt Bunar\";\"other\"\n\"726474\";\"Curtburnar\";\"other\"\n\"726474\";\"Dshami Machala\";\"other\"\n\"726474\";\"Kurt Bunar\";\"other\"\n\"726474\";\"Тервел\";\"other\"\n\"726489\";\"Batanovtsi\";\"main\"\n\"726489\";\"Batanovci\";\"other\"\n\"726489\";\"Batanovitsi\";\"other\"\n\"726489\";\"Batanovtzi\";\"other\"\n\"726489\";\"Batanowzi\";\"other\"\n\"726489\";\"Temelkovo\";\"other\"\n\"726489\";\"Батановци\";\"other\"\n\"726524\";\"Svoge\";\"main\"\n\"726524\";\"Svogbe\";\"other\"\n\"726524\";\"Svoghe\";\"other\"\n\"726524\";\"Svoghé\";\"other\"\n\"726524\";\"Svogja\";\"other\"\n\"726524\";\"Svogje\";\"other\"\n\"726524\";\"Swoge\";\"other\"\n\"726524\";\"Своге\";\"other\"\n\"726534\";\"Svishtov\";\"main\"\n\"726534\";\"Novae\";\"other\"\n\"726534\";\"Novensis Moesia Civitas\";\"other\"\n\"726534\";\"Sistov\";\"other\"\n\"726534\";\"Sistova\";\"other\"\n\"726534\";\"Staklen\";\"other\"\n\"726534\";\"Steklen\";\"other\"\n\"726534\";\"Sveyestov\";\"other\"\n\"726534\";\"Svisclov\";\"other\"\n\"726534\";\"Svishhov\";\"other\"\n\"726534\";\"Svislova\";\"other\"\n\"726534\";\"Svistov\";\"other\"\n\"726534\";\"Svišlova\";\"other\"\n\"726534\";\"Svištov\";\"other\"\n\"726534\";\"Swischtow\";\"other\"\n\"726534\";\"Свищов\";\"other\"\n\"726546\";\"Svilengrad\";\"main\"\n\"726546\";\"Mustafa-Pasha\";\"other\"\n\"726546\";\"Mustafapasa\";\"other\"\n\"726546\";\"Mustafapaşa\";\"other\"\n\"726546\";\"Slivengrad\";\"other\"\n\"726546\";\"Svilen\";\"other\"\n\"726546\";\"Svilengrade\";\"other\"\n\"726546\";\"Swilengrad\";\"other\"\n\"726546\";\"Свиленград\";\"other\"\n\"726591\";\"Suvorovo\";\"main\"\n\"726591\";\"Kozludza\";\"other\"\n\"726591\";\"Kozludzha\";\"other\"\n\"726591\";\"Kozludža\";\"other\"\n\"726591\";\"Novgradets\";\"other\"\n\"726591\";\"Nowgradez\";\"other\"\n\"726591\";\"qwzlwjh\";\"other\"\n\"726591\";\"qwzlyjh\";\"other\"\n\"726591\";\"Суворово\";\"other\"\n\"726591\";\"قوزلوجه\";\"other\"\n\"726591\";\"قوزلیجه\";\"other\"\n\"726629\";\"Sungurlare\";\"main\"\n\"726629\";\"Sungulare\";\"other\"\n\"726629\";\"Sungulari\";\"other\"\n\"726629\";\"Sungurlar\";\"other\"\n\"726629\";\"Sungurlari\";\"other\"\n\"726629\";\"Сунгурларе\";\"other\"\n\"726643\";\"Sukhindol\";\"main\"\n\"726643\";\"Souhyndol\";\"other\"\n\"726643\";\"Suchindol\";\"other\"\n\"726643\";\"Suhindol\";\"other\"\n\"726643\";\"Сухиндол\";\"other\"\n\"726657\";\"Sŭedinenie\";\"main\"\n\"726657\";\"Suedinenie\";\"ascii\"\n\"726657\";\"Golemo Konare\";\"other\"\n\"726657\";\"Goljamo Konare\";\"other\"\n\"726657\";\"Goljemo Konare\";\"other\"\n\"726657\";\"Goljemo Konari\";\"other\"\n\"726657\";\"Golyamo Konare\";\"other\"\n\"726657\";\"Golyemo-Konare\";\"other\"\n\"726657\";\"Saedinenie\";\"other\"\n\"726657\";\"Съединение\";\"other\"\n\"726693\";\"Strumyani\";\"main\"\n\"726693\";\"Strumjani\";\"other\"\n\"726693\";\"Струмяни\";\"other\"\n\"726723\";\"Strelcha\";\"main\"\n\"726723\";\"Strelca\";\"other\"\n\"726723\";\"Streltscha\";\"other\"\n\"726723\";\"Strelča\";\"other\"\n\"726723\";\"Strjelca\";\"other\"\n\"726723\";\"Strjelča\";\"other\"\n\"726723\";\"Stryelcha\";\"other\"\n\"726723\";\"Стрелча\";\"other\"\n\"726727\";\"Strazhitsa\";\"main\"\n\"726727\";\"Kada K'oy\";\"other\"\n\"726727\";\"Kada K’oy\";\"other\"\n\"726727\";\"Kadikioy\";\"other\"\n\"726727\";\"Strajitsa\";\"other\"\n\"726727\";\"Strajitza\";\"other\"\n\"726727\";\"Strashiza\";\"other\"\n\"726727\";\"Strazhica\";\"other\"\n\"726727\";\"Strazica\";\"other\"\n\"726727\";\"Stražica\";\"other\"\n\"726727\";\"Стражица\";\"other\"\n\"726748\";\"Straldzha\";\"main\"\n\"726748\";\"Straldsha\";\"other\"\n\"726748\";\"Straldza\";\"other\"\n\"726748\";\"Straldža\";\"other\"\n\"726748\";\"Стралджа\";\"other\"\n\"726848\";\"Stara Zagora\";\"main\"\n\"726848\";\"Eski Zagra\";\"other\"\n\"726848\";\"Eski Zağra\";\"other\"\n\"726848\";\"Stara Sagora\";\"other\"\n\"726848\";\"Stara-Zagora\";\"other\"\n\"726848\";\"Стара Загора\";\"other\"\n\"726848\";\"Стара-Загора\";\"other\"\n\"726863\";\"Stara Kresna\";\"main\"\n\"726863\";\"Kresna\";\"other\"\n\"726863\";\"Стара Кресна\";\"other\"\n\"726872\";\"Dupnitsa\";\"main\"\n\"726872\";\"Doupnitza\";\"other\"\n\"726872\";\"Dubnica\";\"other\"\n\"726872\";\"Dupnica\";\"other\"\n\"726872\";\"Dupnitza\";\"other\"\n\"726872\";\"Dupniza\";\"other\"\n\"726872\";\"Marek\";\"other\"\n\"726872\";\"Stanke Dimitrov\";\"other\"\n\"726872\";\"Stanke Dimitrovo\";\"other\"\n\"726872\";\"Дупница\";\"other\"\n\"726890\";\"Stamboliyski\";\"main\"\n\"726890\";\"Gara Krichim\";\"other\"\n\"726890\";\"Krichim\";\"other\"\n\"726890\";\"Novi Krichim\";\"other\"\n\"726890\";\"Stambolijski\";\"other\"\n\"726890\";\"Stamoboliyski\";\"other\"\n\"726890\";\"Стамболийски\";\"other\"\n\"726963\";\"Sozopol\";\"main\"\n\"726963\";\"Apollonia\";\"other\"\n\"726963\";\"Sizebolu\";\"other\"\n\"726963\";\"Sizopol\";\"other\"\n\"726963\";\"Sosopol\";\"other\"\n\"726963\";\"Sozopol'\";\"other\"\n\"726963\";\"Sozopole\";\"other\"\n\"726963\";\"Sozopolis\";\"other\"\n\"726963\";\"Σωζόπολη\";\"other\"\n\"726963\";\"Созопол\";\"other\"\n\"726963\";\"Созополь\";\"other\"\n\"727011\";\"Sofia\";\"main\"\n\"727011\";\"Safia\";\"other\"\n\"727011\";\"Serdica\";\"other\"\n\"727011\";\"Sofie\";\"other\"\n\"727011\";\"Sofija\";\"other\"\n\"727011\";\"Sofio\";\"other\"\n\"727011\";\"Sofiya\";\"other\"\n\"727011\";\"Sofja\";\"other\"\n\"727011\";\"Sofya\";\"other\"\n\"727011\";\"Sofía\";\"other\"\n\"727011\";\"Sophia\";\"other\"\n\"727011\";\"Sredets\";\"other\"\n\"727011\";\"Szofia\";\"other\"\n\"727011\";\"Szófia\";\"other\"\n\"727011\";\"Sòfia\";\"other\"\n\"727011\";\"Sófia\";\"other\"\n\"727011\";\"Ulpia Serdica\";\"other\"\n\"727011\";\"sofia\";\"other\"\n\"727011\";\"sopia\";\"other\"\n\"727011\";\"suo fei ya\";\"other\"\n\"727011\";\"swfya\";\"other\"\n\"727011\";\"swpyh\";\"other\"\n\"727011\";\"Σόφια\";\"other\"\n\"727011\";\"Сафія\";\"other\"\n\"727011\";\"София\";\"other\"\n\"727011\";\"Софија\";\"other\"\n\"727011\";\"Софія\";\"other\"\n\"727011\";\"סופיה\";\"other\"\n\"727011\";\"سوفىيە\";\"other\"\n\"727011\";\"صوفيا\";\"other\"\n\"727011\";\"სოფია\";\"other\"\n\"727011\";\"ሶፊያ\";\"other\"\n\"727011\";\"ソフィア\";\"other\"\n\"727011\";\"索菲亞\";\"other\"\n\"727011\";\"소피아\";\"other\"\n\"727025\";\"Smyadovo\";\"main\"\n\"727025\";\"Smedovo\";\"other\"\n\"727025\";\"Smedowo\";\"other\"\n\"727025\";\"Smjadovo\";\"other\"\n\"727025\";\"Smjedovo\";\"other\"\n\"727025\";\"Smyedovo\";\"other\"\n\"727025\";\"Смядово\";\"other\"\n\"727030\";\"Smolyan\";\"main\"\n\"727030\";\"Paschmaklii\";\"other\"\n\"727030\";\"Pashmakla\";\"other\"\n\"727030\";\"Pashmakli\";\"other\"\n\"727030\";\"Pashmaklă\";\"other\"\n\"727030\";\"Pasmakli\";\"other\"\n\"727030\";\"Pasmakly\";\"other\"\n\"727030\";\"Pašmakli\";\"other\"\n\"727030\";\"Smolian\";\"other\"\n\"727030\";\"Smoljan\";\"other\"\n\"727030\";\"Смолян\";\"other\"\n\"727067\";\"Slivo Pole\";\"main\"\n\"727067\";\"Kashikler\";\"other\"\n\"727067\";\"Sliwo Pole\";\"other\"\n\"727067\";\"Сливо Поле\";\"other\"\n\"727069\";\"Slivnitsa\";\"main\"\n\"727069\";\"Slivica\";\"other\"\n\"727069\";\"Slivnica\";\"other\"\n\"727069\";\"Slivnitza\";\"other\"\n\"727069\";\"Sliwniza\";\"other\"\n\"727069\";\"Сливница\";\"other\"\n\"727079\";\"Sliven\";\"main\"\n\"727079\";\"Islimiye\";\"other\"\n\"727079\";\"Islimje\";\"other\"\n\"727079\";\"Slivno\";\"other\"\n\"727079\";\"Sliwen\";\"other\"\n\"727079\";\"aslmyh\";\"other\"\n\"727079\";\"Сливен\";\"other\"\n\"727079\";\"اسلمیه\";\"other\"\n\"727087\";\"Slavyanovo\";\"main\"\n\"727087\";\"Slavianovo\";\"other\"\n\"727087\";\"Slavjanovo\";\"other\"\n\"727087\";\"Slawjanowo\";\"other\"\n\"727087\";\"Trastenik\";\"other\"\n\"727087\";\"Trstenik\";\"other\"\n\"727087\";\"Trustenik\";\"other\"\n\"727087\";\"Trăstenik\";\"other\"\n\"727087\";\"Trŭstenik\";\"other\"\n\"727087\";\"Turska Trestenik\";\"other\"\n\"727087\";\"Turski Trustenik\";\"other\"\n\"727087\";\"Turski Trŭstenik\";\"other\"\n\"727087\";\"Славяново\";\"other\"\n\"727175\";\"Sitovo\";\"main\"\n\"727175\";\"Doimuslar\";\"other\"\n\"727175\";\"Doimuşlar\";\"other\"\n\"727175\";\"Donnuslar\";\"other\"\n\"727175\";\"Donnuşlar\";\"other\"\n\"727175\";\"Doymushlar\";\"other\"\n\"727175\";\"Sitowo\";\"other\"\n\"727175\";\"Ситово\";\"other\"\n\"727212\";\"Simitli\";\"main\"\n\"727212\";\"Izvoritye\";\"other\"\n\"727212\";\"Izworit\";\"other\"\n\"727212\";\"Simeti\";\"other\"\n\"727212\";\"Simetli\";\"other\"\n\"727212\";\"Simetlu\";\"other\"\n\"727212\";\"Simetlü\";\"other\"\n\"727212\";\"Simitle\";\"other\"\n\"727212\";\"Simitlii\";\"other\"\n\"727212\";\"Simitly Gare\";\"other\"\n\"727212\";\"Симитли\";\"other\"\n\"727217\";\"Simeonovgrad\";\"main\"\n\"727217\";\"Maritsa\";\"other\"\n\"727217\";\"Seimen\";\"other\"\n\"727217\";\"Sejmen\";\"other\"\n\"727217\";\"Semenli\";\"other\"\n\"727217\";\"Seymen\";\"other\"\n\"727217\";\"Симеоновград\";\"other\"\n\"727221\";\"Silistra\";\"main\"\n\"727221\";\"Силистра\";\"other\"\n\"727233\";\"Shumen\";\"main\"\n\"727233\";\"Choumen\";\"other\"\n\"727233\";\"Choumèn\";\"other\"\n\"727233\";\"Kolarovgrad\";\"other\"\n\"727233\";\"Schumen\";\"other\"\n\"727233\";\"Shoumen\";\"other\"\n\"727233\";\"Shumla\";\"other\"\n\"727233\";\"Sjumen\";\"other\"\n\"727233\";\"Sumen\";\"other\"\n\"727233\";\"Sumla\";\"other\"\n\"727233\";\"Sumnu\";\"other\"\n\"727233\";\"shumen\";\"other\"\n\"727233\";\"Şumnu\";\"other\"\n\"727233\";\"Šumen\";\"other\"\n\"727233\";\"Šumla\";\"other\"\n\"727233\";\"Шумен\";\"other\"\n\"727291\";\"Shipka\";\"main\"\n\"727291\";\"Schipka\";\"other\"\n\"727291\";\"Sipka\";\"other\"\n\"727291\";\"Šipka\";\"other\"\n\"727291\";\"Шипка\";\"other\"\n\"727329\";\"Shabla\";\"main\"\n\"727329\";\"Sabla\";\"other\"\n\"727329\";\"Şabla\";\"other\"\n\"727329\";\"Шабла\";\"other\"\n\"727337\";\"Sevlievo\";\"main\"\n\"727337\";\"Savlievo\";\"other\"\n\"727337\";\"Seljvi\";\"other\"\n\"727337\";\"Selvi\";\"other\"\n\"727337\";\"Sevelijevo\";\"other\"\n\"727337\";\"Sevlijevo\";\"other\"\n\"727337\";\"Sewliewo\";\"other\"\n\"727337\";\"Севлиево\";\"other\"\n\"727354\";\"Septemvri\";\"main\"\n\"727354\";\"Sarambei\";\"other\"\n\"727354\";\"Sarambey\";\"other\"\n\"727354\";\"Saran'ovo\";\"other\"\n\"727354\";\"Saran-Bey\";\"other\"\n\"727354\";\"Saranevo\";\"other\"\n\"727354\";\"Saraniowo\";\"other\"\n\"727354\";\"Saranjevo\";\"other\"\n\"727354\";\"Saranyovo\";\"other\"\n\"727354\";\"Saranëvo\";\"other\"\n\"727354\";\"Septemvrijci\";\"other\"\n\"727354\";\"Септември\";\"other\"\n\"727354\";\"Септемврийци\";\"other\"\n\"727358\";\"Senovo\";\"main\"\n\"727358\";\"Senevo\";\"other\"\n\"727358\";\"Senowo\";\"other\"\n\"727358\";\"Syenovo\";\"other\"\n\"727358\";\"Сеново\";\"other\"\n\"727423\";\"Satovcha\";\"main\"\n\"727423\";\"Satovca\";\"other\"\n\"727423\";\"Satovdza\";\"other\"\n\"727423\";\"Satovdža\";\"other\"\n\"727423\";\"Satovča\";\"other\"\n\"727423\";\"Satowtscha\";\"other\"\n\"727423\";\"Сатовча\";\"other\"\n\"727441\";\"Sapareva Banya\";\"main\"\n\"727441\";\"Gorna Banja\";\"other\"\n\"727441\";\"Gorna-Bania\";\"other\"\n\"727441\";\"Gorna-Banya\";\"other\"\n\"727441\";\"Sapareva Banja\";\"other\"\n\"727441\";\"Сапарева Баня\";\"other\"\n\"727447\";\"Sandanski\";\"main\"\n\"727447\";\"Sveti Vrac\";\"other\"\n\"727447\";\"Sveti Vrach\";\"other\"\n\"727447\";\"Sveti Vrač\";\"other\"\n\"727447\";\"Sveti-Vratch\";\"other\"\n\"727447\";\"Svéti-Vratch\";\"other\"\n\"727447\";\"Sweti Wratsch\";\"other\"\n\"727447\";\"Xanne Sandanski\";\"other\"\n\"727447\";\"Yane Sandanski\";\"other\"\n\"727447\";\"Сандански\";\"other\"\n\"727447\";\"Свети Врач\";\"other\"\n\"727455\";\"Samuil\";\"main\"\n\"727455\";\"Ashiklar\";\"other\"\n\"727455\";\"Самуил\";\"other\"\n\"727462\";\"Samokov\";\"main\"\n\"727462\";\"Samakov\";\"other\"\n\"727462\";\"Samokow\";\"other\"\n\"727462\";\"Samovkov\";\"other\"\n\"727462\";\"Самоков\";\"other\"\n\"727479\";\"Sadovo\";\"main\"\n\"727479\";\"Cheshnegir\";\"other\"\n\"727479\";\"Cheshnigurovo\";\"other\"\n\"727479\";\"Cheshnigŭrovo\";\"other\"\n\"727479\";\"Sadova\";\"other\"\n\"727479\";\"Sadowo\";\"other\"\n\"727479\";\"Садово\";\"other\"\n\"727495\";\"Ruzhintsi\";\"main\"\n\"727495\";\"Rujintsi\";\"other\"\n\"727495\";\"Rushinzi\";\"other\"\n\"727495\";\"Ruzhentsi\";\"other\"\n\"727495\";\"Ruzhinci\";\"other\"\n\"727495\";\"Ruzinci\";\"other\"\n\"727495\";\"Ružinci\";\"other\"\n\"727495\";\"Ружинци\";\"other\"\n\"727523\";\"Ruse\";\"main\"\n\"727523\";\"Roese\";\"other\"\n\"727523\";\"Rousse\";\"other\"\n\"727523\";\"Roussé\";\"other\"\n\"727523\";\"Roustchouk\";\"other\"\n\"727523\";\"Ruschuk\";\"other\"\n\"727523\";\"Ruschuq\";\"other\"\n\"727523\";\"Rusciuk\";\"other\"\n\"727523\";\"Rusclink\";\"other\"\n\"727523\";\"Ruscuk\";\"other\"\n\"727523\";\"Rushchuk\";\"other\"\n\"727523\";\"Rushtuk\";\"other\"\n\"727523\";\"Russe\";\"other\"\n\"727523\";\"Rustschuk\";\"other\"\n\"727523\";\"Rusçuk\";\"other\"\n\"727523\";\"Ruzo\";\"other\"\n\"727523\";\"Ruščuk\";\"other\"\n\"727523\";\"Saray-Makhle\";\"other\"\n\"727523\";\"Sexaginta Prista\";\"other\"\n\"727523\";\"lu sai\";\"other\"\n\"727523\";\"Русе\";\"other\"\n\"727523\";\"鲁塞\";\"other\"\n\"727547\";\"Ruen\";\"main\"\n\"727547\";\"Ulanli\";\"other\"\n\"727547\";\"Ulanlii\";\"other\"\n\"727547\";\"Ulanliy\";\"other\"\n\"727547\";\"Руен\";\"other\"\n\"727552\";\"Rudozem\";\"main\"\n\"727552\";\"Chervenkovgrad\";\"other\"\n\"727552\";\"Palas\";\"other\"\n\"727552\";\"Palaz\";\"other\"\n\"727552\";\"Roodozem\";\"other\"\n\"727552\";\"Rudosem\";\"other\"\n\"727552\";\"Рудозем\";\"other\"\n\"727598\";\"Roman\";\"main\"\n\"727598\";\"Роман\";\"other\"\n\"727628\";\"Rila\";\"main\"\n\"727628\";\"Rila Selo\";\"other\"\n\"727628\";\"Riloselo\";\"other\"\n\"727628\";\"Рила\";\"other\"\n\"727689\";\"Razlog\";\"main\"\n\"727689\";\"Mahomia\";\"other\"\n\"727689\";\"Mehomia\";\"other\"\n\"727689\";\"Mekhomiya\";\"other\"\n\"727689\";\"Pazlog\";\"other\"\n\"727689\";\"Raslog\";\"other\"\n\"727689\";\"Raslug\";\"other\"\n\"727689\";\"Разлог\";\"other\"\n\"727696\";\"Razgrad\";\"main\"\n\"727696\";\"Rasgrad\";\"other\"\n\"727696\";\"Разград\";\"other\"\n\"727791\";\"Rakovski\";\"main\"\n\"727791\";\"General Niklaevo\";\"other\"\n\"727791\";\"General Nikolaevo\";\"other\"\n\"727791\";\"General Nikolaewo\";\"other\"\n\"727791\";\"Kalich\";\"other\"\n\"727791\";\"Kaliclii\";\"other\"\n\"727791\";\"Kaličh\";\"other\"\n\"727791\";\"Kaličlii\";\"other\"\n\"727791\";\"Kaluchlii\";\"other\"\n\"727791\";\"Kaluchliy\";\"other\"\n\"727791\";\"Kalŭchlii\";\"other\"\n\"727791\";\"Kalŭchliy\";\"other\"\n\"727791\";\"Раковски\";\"other\"\n\"727801\";\"Rakitovo\";\"main\"\n\"727801\";\"Rakitowo\";\"other\"\n\"727801\";\"Ракитово\";\"other\"\n\"727832\";\"Radomir\";\"main\"\n\"727832\";\"Радомир\";\"other\"\n\"727838\";\"Radnevo\";\"main\"\n\"727838\";\"Radne Machale\";\"other\"\n\"727838\";\"Radne Makhle\";\"other\"\n\"727838\";\"Radne-Makhala\";\"other\"\n\"727838\";\"Radnewo\";\"other\"\n\"727838\";\"Раднево\";\"other\"\n\"727884\";\"Pŭrvomaytsi\";\"main\"\n\"727884\";\"Purvomaytsi\";\"ascii\"\n\"727884\";\"Purvomajci\";\"other\"\n\"727884\";\"Sergjuvec\";\"other\"\n\"727884\";\"Temnisko\";\"other\"\n\"727884\";\"srghwfchh\";\"other\"\n\"727884\";\"Първомайци\";\"other\"\n\"727884\";\"Сергювец\";\"other\"\n\"727884\";\"Темниско\";\"other\"\n\"727884\";\"سرغوفچه\";\"other\"\n\"727921\";\"Provadiya\";\"main\"\n\"727921\";\"Pravodi\";\"other\"\n\"727921\";\"Provadia\";\"other\"\n\"727921\";\"Provadidija\";\"other\"\n\"727921\";\"Provadija\";\"other\"\n\"727921\";\"Prowadija\";\"other\"\n\"727921\";\"Провадия\";\"other\"\n\"727964\";\"Primorsko\";\"main\"\n\"727964\";\"Kjuprija\";\"other\"\n\"727964\";\"Kyupriya\";\"other\"\n\"727964\";\"Приморско\";\"other\"\n\"727987\";\"Veliki Preslav\";\"main\"\n\"727987\";\"Eski Stambid\";\"other\"\n\"727987\";\"Eski Stambolluk\";\"other\"\n\"727987\";\"Eski-Stambul\";\"other\"\n\"727987\";\"Preslav\";\"other\"\n\"727987\";\"Preslaw\";\"other\"\n\"727987\";\"Prieslav\";\"other\"\n\"727987\";\"Prjeslav\";\"other\"\n\"727987\";\"Weliki Preslaw\";\"other\"\n\"727987\";\"Wielki Preslaw\";\"other\"\n\"727987\";\"Wielki Presław\";\"other\"\n\"727987\";\"Велики Преслав\";\"other\"\n\"728011\";\"Pravets\";\"main\"\n\"728011\";\"Pravec\";\"other\"\n\"728011\";\"Pravetz\";\"other\"\n\"728011\";\"Prawez\";\"other\"\n\"728011\";\"Правец\";\"other\"\n\"728056\";\"Pordim\";\"main\"\n\"728056\";\"Pordime\";\"other\"\n\"728056\";\"Porodim\";\"other\"\n\"728056\";\"Пордим\";\"other\"\n\"728075\";\"Popovo\";\"main\"\n\"728075\";\"Popkioj\";\"other\"\n\"728075\";\"Popkioy\";\"other\"\n\"728075\";\"Popkiöj\";\"other\"\n\"728075\";\"Попово\";\"other\"\n\"728108\";\"Pomorie\";\"main\"\n\"728108\";\"Ahiolo\";\"other\"\n\"728108\";\"Akhillo\";\"other\"\n\"728108\";\"Akhilu\";\"other\"\n\"728108\";\"Akhiolo\";\"other\"\n\"728108\";\"Anchialo\";\"other\"\n\"728108\";\"Anchialos\";\"other\"\n\"728108\";\"Anchijelo\";\"other\"\n\"728108\";\"Anchilejo\";\"other\"\n\"728108\";\"Anhialo\";\"other\"\n\"728108\";\"Anhiolo\";\"other\"\n\"728108\";\"Ankhelu\";\"other\"\n\"728108\";\"Ankhelú\";\"other\"\n\"728108\";\"Ankhialo\";\"other\"\n\"728108\";\"Ankhiolo\";\"other\"\n\"728108\";\"Pomoriye\";\"other\"\n\"728108\";\"Pomorye\";\"other\"\n\"728108\";\"Поморие\";\"other\"\n\"728124\";\"Polski Trŭmbesh\";\"main\"\n\"728124\";\"Polski Trumbesh\";\"ascii\"\n\"728124\";\"Polsk Trumbesh\";\"other\"\n\"728124\";\"Polsk Trŭmbesh\";\"other\"\n\"728124\";\"Polski Trambech\";\"other\"\n\"728124\";\"Polski Trambesh\";\"other\"\n\"728124\";\"Polski Trembes\";\"other\"\n\"728124\";\"Polski Trembeš\";\"other\"\n\"728124\";\"Polski-Trambesch\";\"other\"\n\"728124\";\"Polski-Trembesh\";\"other\"\n\"728124\";\"Polski-Trămbesch\";\"other\"\n\"728124\";\"Trembesh\";\"other\"\n\"728124\";\"Полски Тръмбеш\";\"other\"\n\"728193\";\"Plovdiv\";\"main\"\n\"728193\";\"Eumolpias\";\"other\"\n\"728193\";\"Filiba\";\"other\"\n\"728193\";\"Filibe\";\"other\"\n\"728193\";\"Filipopol\";\"other\"\n\"728193\";\"Filippopol\";\"other\"\n\"728193\";\"Filippopoli\";\"other\"\n\"728193\";\"Flavia\";\"other\"\n\"728193\";\"Julia\";\"other\"\n\"728193\";\"Philippopel\";\"other\"\n\"728193\";\"Philippopoli\";\"other\"\n\"728193\";\"Philippopolis\";\"other\"\n\"728193\";\"Philippoupole\";\"other\"\n\"728193\";\"Pinople\";\"other\"\n\"728193\";\"Plodin\";\"other\"\n\"728193\";\"Ploudin\";\"other\"\n\"728193\";\"Plovdin\";\"other\"\n\"728193\";\"Plovdiva\";\"other\"\n\"728193\";\"Plowdiw\";\"other\"\n\"728193\";\"Plóvdiv\";\"other\"\n\"728193\";\"Poulpoudeva\";\"other\"\n\"728193\";\"Płowdiw\";\"other\"\n\"728193\";\"Sinople\";\"other\"\n\"728193\";\"Trimontium\";\"other\"\n\"728193\";\"Ulpia\";\"other\"\n\"728193\";\"Vinipoppolis\";\"other\"\n\"728193\";\"blwfdyf\";\"other\"\n\"728193\";\"pu luo fu di fu\";\"other\"\n\"728193\";\"purovudifu\";\"other\"\n\"728193\";\"Φιλιππούπολη\";\"other\"\n\"728193\";\"Пловдив\";\"other\"\n\"728193\";\"بلوفديف\";\"other\"\n\"728193\";\"პლოვდივი\";\"other\"\n\"728193\";\"プロヴディフ\";\"other\"\n\"728193\";\"普罗夫迪夫\";\"other\"\n\"728199\";\"Pliska\";\"main\"\n\"728199\";\"Aboba\";\"other\"\n\"728199\";\"Ak Baba\";\"other\"\n\"728199\";\"Pliskov\";\"other\"\n\"728199\";\"Pliskow\";\"other\"\n\"728199\";\"Плиска\";\"other\"\n\"728203\";\"Pleven\";\"main\"\n\"728203\";\"Plevna\";\"other\"\n\"728203\";\"Plevne\";\"other\"\n\"728203\";\"Plewen\";\"other\"\n\"728203\";\"Plyeven\";\"other\"\n\"728203\";\"purevu~en\";\"other\"\n\"728203\";\"Плевен\";\"other\"\n\"728203\";\"プレヴェン\";\"other\"\n\"728251\";\"Pirdop\";\"main\"\n\"728251\";\"Пирдоп\";\"other\"\n\"728288\";\"Petrich\";\"main\"\n\"728288\";\"Petric\";\"other\"\n\"728288\";\"Petritch\";\"other\"\n\"728288\";\"Petritsch\";\"other\"\n\"728288\";\"Petrič\";\"other\"\n\"728288\";\"Петрич\";\"other\"\n\"728317\";\"Peshtera\";\"main\"\n\"728317\";\"Momarsko\";\"other\"\n\"728317\";\"Pechtera\";\"other\"\n\"728317\";\"Pescera\";\"other\"\n\"728317\";\"Peschtera\";\"other\"\n\"728317\";\"Peshchera\";\"other\"\n\"728317\";\"Peshhera\";\"other\"\n\"728317\";\"Pestera\";\"other\"\n\"728317\";\"Peštera\";\"other\"\n\"728317\";\"Peščera\";\"other\"\n\"728317\";\"Пещера\";\"other\"\n\"728321\";\"Perushtitsa\";\"main\"\n\"728321\";\"Perishchitsa\";\"other\"\n\"728321\";\"Peruschtiza\";\"other\"\n\"728321\";\"Perushchitsa\";\"other\"\n\"728321\";\"Perushhica\";\"other\"\n\"728321\";\"Perustica\";\"other\"\n\"728321\";\"Peruštica\";\"other\"\n\"728321\";\"Перущица\";\"other\"\n\"728330\";\"Pernik\";\"main\"\n\"728330\";\"Dimitrovo\";\"other\"\n\"728330\";\"Перник\";\"other\"\n\"728348\";\"Iskŭr\";\"main\"\n\"728348\";\"Iskur\";\"ascii\"\n\"728348\";\"Machalata\";\"other\"\n\"728348\";\"Machlata\";\"other\"\n\"728348\";\"Machluta\";\"other\"\n\"728348\";\"Machlüta\";\"other\"\n\"728348\";\"Mahalata\";\"other\"\n\"728348\";\"Mahlata\";\"other\"\n\"728348\";\"Makhalata\";\"other\"\n\"728348\";\"Makhlata\";\"other\"\n\"728348\";\"Pelovo\";\"other\"\n\"728348\";\"Искър\";\"other\"\n\"728378\";\"Pazardzhik\";\"main\"\n\"728378\";\"Pasardschik\";\"other\"\n\"728378\";\"Pasardshik\";\"other\"\n\"728378\";\"Pazardjik\";\"other\"\n\"728378\";\"Pazardzik\";\"other\"\n\"728378\";\"Pazardzjik\";\"other\"\n\"728378\";\"Pazardżik\";\"other\"\n\"728378\";\"Pazardžik\";\"other\"\n\"728378\";\"Tatar Bazardzik\";\"other\"\n\"728378\";\"Tatar Bazardžik\";\"other\"\n\"728378\";\"Tatar Pazardjik\";\"other\"\n\"728378\";\"Tatar Pazardzhik\";\"other\"\n\"728378\";\"Tatar Pazardzik\";\"other\"\n\"728378\";\"Tatar Pazardžik\";\"other\"\n\"728378\";\"Tatar-Bazardzhik\";\"other\"\n\"728378\";\"Пазарджик\";\"other\"\n\"728385\";\"Pavlikeni\";\"main\"\n\"728385\";\"Pavlikem\";\"other\"\n\"728385\";\"Pavlikene\";\"other\"\n\"728385\";\"Pawlikeni\";\"other\"\n\"728385\";\"Павликени\";\"other\"\n\"728389\";\"Pavel Banya\";\"main\"\n\"728389\";\"Banya\";\"other\"\n\"728389\";\"Ludzha Ali\";\"other\"\n\"728389\";\"Ludzha K'oy\";\"other\"\n\"728389\";\"Lŭdzha Ali\";\"other\"\n\"728389\";\"Lŭdzha K’oy\";\"other\"\n\"728389\";\"Pavel\";\"other\"\n\"728389\";\"Pavel Banja\";\"other\"\n\"728389\";\"Pawel\";\"other\"\n\"728389\";\"Павел Баня\";\"other\"\n\"728448\";\"Panagyurishte\";\"main\"\n\"728448\";\"Otalkioj\";\"other\"\n\"728448\";\"Otalkiöj\";\"other\"\n\"728448\";\"Panaghiourichte\";\"other\"\n\"728448\";\"Panaghiourichté\";\"other\"\n\"728448\";\"Panaghurichte\";\"other\"\n\"728448\";\"Panagiuriste\";\"other\"\n\"728448\";\"Panagjurisce\";\"other\"\n\"728448\";\"Panagjurischte\";\"other\"\n\"728448\";\"Panagjurishhe\";\"other\"\n\"728448\";\"Panagjuriste\";\"other\"\n\"728448\";\"Panagjurište\";\"other\"\n\"728448\";\"Panagjurišče\";\"other\"\n\"728448\";\"Panagyurishche\";\"other\"\n\"728448\";\"Панагюрище\";\"other\"\n\"728565\";\"Oryakhovo\";\"main\"\n\"728565\";\"Orechovo\";\"other\"\n\"728565\";\"Orechowo\";\"other\"\n\"728565\";\"Orehovo\";\"other\"\n\"728565\";\"Orejekhovo\";\"other\"\n\"728565\";\"Orekhovo\";\"other\"\n\"728565\";\"Orjahovo\";\"other\"\n\"728565\";\"Orjakhovo\";\"other\"\n\"728565\";\"Orjechovo\";\"other\"\n\"728565\";\"Orjekhovo\";\"other\"\n\"728565\";\"Oryekhovo\";\"other\"\n\"728565\";\"Rachowo\";\"other\"\n\"728565\";\"Rahova\";\"other\"\n\"728565\";\"Rakhovo\";\"other\"\n\"728565\";\"Rakovo\";\"other\"\n\"728565\";\"Ruhovo\";\"other\"\n\"728565\";\"Оряхово\";\"other\"\n\"728631\";\"Opaka\";\"main\"\n\"728631\";\"Опака\";\"other\"\n\"728634\";\"Omurtag\";\"main\"\n\"728634\";\"Omortag\";\"other\"\n\"728634\";\"Osman-Pazar\";\"other\"\n\"728634\";\"Osmanbazar\";\"other\"\n\"728634\";\"Омуртаг\";\"other\"\n\"728674\";\"Obzor\";\"main\"\n\"728674\";\"G'ozeken\";\"other\"\n\"728674\";\"Giozeken\";\"other\"\n\"728674\";\"Gjozeken\";\"other\"\n\"728674\";\"Gusiken\";\"other\"\n\"728674\";\"Guzuken\";\"other\"\n\"728674\";\"Gyuzekioy\";\"other\"\n\"728674\";\"Gyuzuken\";\"other\"\n\"728674\";\"Güsiken\";\"other\"\n\"728674\";\"Güzuken\";\"other\"\n\"728674\";\"G’ozeken\";\"other\"\n\"728674\";\"Kozjak-Grad\";\"other\"\n\"728674\";\"Kozyak-Grad\";\"other\"\n\"728674\";\"Obsor\";\"other\"\n\"728674\";\"Обзор\";\"other\"\n\"728709\";\"Novo Selo\";\"main\"\n\"728709\";\"Nowo-Selo\";\"other\"\n\"728709\";\"Ново Село\";\"other\"\n\"728734\";\"Novi Pazar\";\"main\"\n\"728734\";\"Eni Bazar\";\"other\"\n\"728734\";\"Eni Pazar\";\"other\"\n\"728734\";\"Jenibazar\";\"other\"\n\"728734\";\"Novi-Paza\";\"other\"\n\"728734\";\"Nowi Pasar\";\"other\"\n\"728734\";\"Нови Пазар\";\"other\"\n\"728742\";\"Nova Zagora\";\"main\"\n\"728742\";\"Eni Zagra\";\"other\"\n\"728742\";\"Ienizagra\";\"other\"\n\"728742\";\"Jeni Saghra\";\"other\"\n\"728742\";\"Jeni Zagra\";\"other\"\n\"728742\";\"Nowa Sagora\";\"other\"\n\"728742\";\"Yeni Sagra\";\"other\"\n\"728742\";\"Yeni Zagra\";\"other\"\n\"728742\";\"Нова Загора\";\"other\"\n\"728782\";\"Nikopol\";\"main\"\n\"728782\";\"Nicopol\";\"other\"\n\"728782\";\"Nikopil\";\"other\"\n\"728782\";\"Nikopoli\";\"other\"\n\"728782\";\"Никопол\";\"other\"\n\"728795\";\"Nikolaevo\";\"main\"\n\"728795\";\"Eshekchii\";\"other\"\n\"728795\";\"Eshekii\";\"other\"\n\"728795\";\"Nikolaewo\";\"other\"\n\"728795\";\"Nikolajevo\";\"other\"\n\"728795\";\"Николаево\";\"other\"\n\"728825\";\"Nesebŭr\";\"main\"\n\"728825\";\"Nesebur\";\"ascii\"\n\"728825\";\"Mesembrija\";\"other\"\n\"728825\";\"Mesemvria\";\"other\"\n\"728825\";\"Mesemvrija\";\"other\"\n\"728825\";\"Mesemvriya\";\"other\"\n\"728825\";\"Messemvria\";\"other\"\n\"728825\";\"Messemvrija\";\"other\"\n\"728825\";\"Messemwria\";\"other\"\n\"728825\";\"Misevrin\";\"other\"\n\"728825\";\"Misivri\";\"other\"\n\"728825\";\"Misivria\";\"other\"\n\"728825\";\"Missevriya\";\"other\"\n\"728825\";\"Nesebar\";\"other\"\n\"728825\";\"Neseber\";\"other\"\n\"728825\";\"Nesebr\";\"other\"\n\"728825\";\"Nesebyr\";\"other\"\n\"728825\";\"Nesebăr\";\"other\"\n\"728825\";\"Nessebar\";\"other\"\n\"728825\";\"Nessebur\";\"other\"\n\"728825\";\"Nessebăr\";\"other\"\n\"728825\";\"nesebaru\";\"other\"\n\"728825\";\"Несебар\";\"other\"\n\"728825\";\"Несебр\";\"other\"\n\"728825\";\"Несебър\";\"other\"\n\"728825\";\"ネセバル\";\"other\"\n\"728851\";\"Nedelino\";\"main\"\n\"728851\";\"Nedelio\";\"other\"\n\"728851\";\"Nedyelino\";\"other\"\n\"728851\";\"Uzendere\";\"other\"\n\"728851\";\"Uzun-Dere\";\"other\"\n\"728851\";\"Неделино\";\"other\"\n\"728928\";\"Mŭglizh\";\"main\"\n\"728928\";\"Muglizh\";\"ascii\"\n\"728928\";\"Maglis\";\"other\"\n\"728928\";\"Maglish\";\"other\"\n\"728928\";\"Magliz\";\"other\"\n\"728928\";\"Maglizh\";\"other\"\n\"728928\";\"Magliš\";\"other\"\n\"728928\";\"Magliž\";\"other\"\n\"728928\";\"Meglish\";\"other\"\n\"728928\";\"Meglizh\";\"other\"\n\"728928\";\"Mglij\";\"other\"\n\"728928\";\"Moglic\";\"other\"\n\"728928\";\"Moglis\";\"other\"\n\"728928\";\"Moglič\";\"other\"\n\"728928\";\"Muglish\";\"other\"\n\"728928\";\"Mugliz\";\"other\"\n\"728928\";\"Mögliš\";\"other\"\n\"728928\";\"Măglish\";\"other\"\n\"728928\";\"Măglizh\";\"other\"\n\"728928\";\"Mŭglish\";\"other\"\n\"728928\";\"Mŭgliž\";\"other\"\n\"728928\";\"Мъглиж\";\"other\"\n\"729040\";\"Miziya\";\"main\"\n\"729040\";\"Buk'ovtsi\";\"other\"\n\"729040\";\"Bukiowzi\";\"other\"\n\"729040\";\"Bukyuvtsy\";\"other\"\n\"729040\";\"Mizija\";\"other\"\n\"729040\";\"Мизия\";\"other\"\n\"729064\";\"Mirkovo\";\"main\"\n\"729064\";\"Mirkowo\";\"other\"\n\"729064\";\"Мирково\";\"other\"\n\"729073\";\"Mineralni Bani\";\"main\"\n\"729073\";\"Минерални Бани\";\"other\"\n\"729114\";\"Montana\";\"main\"\n\"729114\";\"Ferdinand\";\"other\"\n\"729114\";\"Ferdinandovo\";\"other\"\n\"729114\";\"Golyama Kutlovitsa\";\"other\"\n\"729114\";\"Khristo Mikhaylov\";\"other\"\n\"729114\";\"Kutlovica\";\"other\"\n\"729114\";\"Mikhailovgrad\";\"other\"\n\"729114\";\"Mikhaylovgrad\";\"other\"\n\"729114\";\"Velika Kutlovica\";\"other\"\n\"729114\";\"Монтана\";\"other\"\n\"729125\";\"Tsarevo\";\"main\"\n\"729125\";\"Carevo\";\"other\"\n\"729125\";\"Michurin\";\"other\"\n\"729125\";\"Tzarevo\";\"other\"\n\"729125\";\"Vasiliko\";\"other\"\n\"729125\";\"Zarewo\";\"other\"\n\"729125\";\"Царево\";\"other\"\n\"729134\";\"Mezdra\";\"main\"\n\"729134\";\"Mesdra\";\"other\"\n\"729134\";\"Mezhdra\";\"other\"\n\"729134\";\"Mizara\";\"other\"\n\"729134\";\"Мездра\";\"other\"\n\"729174\";\"Medkovets\";\"main\"\n\"729174\";\"Medkovec\";\"other\"\n\"729174\";\"Medkovetz\";\"other\"\n\"729174\";\"Metkovec\";\"other\"\n\"729174\";\"Metkovets\";\"other\"\n\"729174\";\"Metkowez\";\"other\"\n\"729174\";\"Медковец\";\"other\"\n\"729322\";\"Malko Tŭrnovo\";\"main\"\n\"729322\";\"Malko Turnovo\";\"ascii\"\n\"729322\";\"Malko Tarnovo\";\"other\"\n\"729322\";\"Malko Tarnowo\";\"other\"\n\"729322\";\"Malko-Tarnov\";\"other\"\n\"729322\";\"Malko-Tirnovo\";\"other\"\n\"729322\";\"Malko-Trnovo\";\"other\"\n\"729322\";\"Malko-Tărnov\";\"other\"\n\"729322\";\"Malkotirnova\";\"other\"\n\"729322\";\"Tirnovo\";\"other\"\n\"729322\";\"Малко Търново\";\"other\"\n\"729428\";\"Madzharovo\";\"main\"\n\"729428\";\"Dupnitsa\";\"other\"\n\"729428\";\"Dupniza\";\"other\"\n\"729428\";\"Madjarovo\";\"other\"\n\"729428\";\"Yatadzhik\";\"other\"\n\"729428\";\"Маджарово\";\"other\"\n\"729439\";\"Madan\";\"main\"\n\"729439\";\"Мадан\";\"other\"\n\"729466\";\"Lyubimets\";\"main\"\n\"729466\";\"Khebibchevo\";\"other\"\n\"729466\";\"Lioubimetz\";\"other\"\n\"729466\";\"Ljubimec\";\"other\"\n\"729466\";\"Ljubimetz\";\"other\"\n\"729466\";\"Ljubimez\";\"other\"\n\"729466\";\"Lyubimetz\";\"other\"\n\"729466\";\"Любимец\";\"other\"\n\"729489\";\"Lyaskovets\";\"main\"\n\"729489\";\"Leskovec\";\"other\"\n\"729489\";\"Leskovets\";\"other\"\n\"729489\";\"Leskovetz\";\"other\"\n\"729489\";\"Leskovètz\";\"other\"\n\"729489\";\"Leskowez\";\"other\"\n\"729489\";\"Ljaskovec\";\"other\"\n\"729489\";\"Ljeskovec\";\"other\"\n\"729489\";\"Lyaskovetz\";\"other\"\n\"729489\";\"Lyeskovets\";\"other\"\n\"729489\";\"Lěskovec\";\"other\"\n\"729489\";\"Лясковец\";\"other\"\n\"729507\";\"Lukovit\";\"main\"\n\"729507\";\"Gorni Lukovit\";\"other\"\n\"729507\";\"Loukovit\";\"other\"\n\"729507\";\"Lukowit\";\"other\"\n\"729507\";\"Луковит\";\"other\"\n\"729509\";\"Lŭki\";\"main\"\n\"729509\";\"Luki\";\"ascii\"\n\"729509\";\"Laki\";\"other\"\n\"729509\";\"Лъки\";\"other\"\n\"729530\";\"Loznitsa\";\"main\"\n\"729530\";\"Kobadin\";\"other\"\n\"729530\";\"Kobadun\";\"other\"\n\"729530\";\"Kobadŭn\";\"other\"\n\"729530\";\"Kubadin\";\"other\"\n\"729530\";\"Losniza\";\"other\"\n\"729530\";\"Lozitsa\";\"other\"\n\"729530\";\"Loznica\";\"other\"\n\"729530\";\"Лозница\";\"other\"\n\"729559\";\"Lovech\";\"main\"\n\"729559\";\"Lovca\";\"other\"\n\"729559\";\"Lovcha\";\"other\"\n\"729559\";\"Lovec\";\"other\"\n\"729559\";\"Lovetch\";\"other\"\n\"729559\";\"Loveč\";\"other\"\n\"729559\";\"Lovča\";\"other\"\n\"729559\";\"Lowetsch\";\"other\"\n\"729559\";\"Ловеч\";\"other\"\n\"729581\";\"Lom\";\"main\"\n\"729581\";\"Aligina Makhala\";\"other\"\n\"729581\";\"Dzhembek Makhala\";\"other\"\n\"729581\";\"Kalen Potok\";\"other\"\n\"729581\";\"Lom Palanka\";\"other\"\n\"729581\";\"Nikolaevo\";\"other\"\n\"729581\";\"Nikolaewo\";\"other\"\n\"729581\";\"Лом\";\"other\"\n\"729636\";\"Levski\";\"main\"\n\"729636\";\"Kara Agach\";\"other\"\n\"729636\";\"Lewski\";\"other\"\n\"729636\";\"Turski Karaagach\";\"other\"\n\"729636\";\"Левски\";\"other\"\n\"729646\";\"Letnitsa\";\"main\"\n\"729646\";\"Letnica\";\"other\"\n\"729646\";\"Letnitza\";\"other\"\n\"729646\";\"Letniza\";\"other\"\n\"729646\";\"Lietnica\";\"other\"\n\"729646\";\"Lyetnitsa\";\"other\"\n\"729646\";\"Lětnica\";\"other\"\n\"729646\";\"Летница\";\"other\"\n\"729667\";\"Lesichevo\";\"main\"\n\"729667\";\"Lesicevo\";\"other\"\n\"729667\";\"Lesichovo\";\"other\"\n\"729667\";\"Lesicovo\";\"other\"\n\"729667\";\"Lesičevo\";\"other\"\n\"729667\";\"Lesičovo\";\"other\"\n\"729667\";\"Lessitschowo\";\"other\"\n\"729667\";\"Lisichevo\";\"other\"\n\"729667\";\"Ljesicevo\";\"other\"\n\"729667\";\"Ljesičevo\";\"other\"\n\"729667\";\"Lyesichevo\";\"other\"\n\"729667\";\"Лесичово\";\"other\"\n\"729730\";\"Kyustendil\";\"main\"\n\"729730\";\"Keustendil\";\"other\"\n\"729730\";\"Kioustendil\";\"other\"\n\"729730\";\"Kiousténdil\";\"other\"\n\"729730\";\"Kjustendil\";\"other\"\n\"729730\";\"Koestendil\";\"other\"\n\"729730\";\"Kostendil\";\"other\"\n\"729730\";\"Kustendil\";\"other\"\n\"729730\";\"Kyoustentil\";\"other\"\n\"729730\";\"Köstendil\";\"other\"\n\"729730\";\"Küstendil\";\"other\"\n\"729730\";\"Κυουστεντίλ\";\"other\"\n\"729730\";\"Кюстендил\";\"other\"\n\"729794\";\"Kŭrdzhali\";\"main\"\n\"729794\";\"Kurdzhali\";\"ascii\"\n\"729794\";\"Exrdzhali\";\"other\"\n\"729794\";\"Kardjali\";\"other\"\n\"729794\";\"Kardschali\";\"other\"\n\"729794\";\"Kardshali\";\"other\"\n\"729794\";\"Kardzhali\";\"other\"\n\"729794\";\"Kerdzhali\";\"other\"\n\"729794\";\"Kerjali\";\"other\"\n\"729794\";\"Kircaali\";\"other\"\n\"729794\";\"Kirdjalu\";\"other\"\n\"729794\";\"Kirdjalü\";\"other\"\n\"729794\";\"Kirdzali\";\"other\"\n\"729794\";\"Kirdzalu\";\"other\"\n\"729794\";\"Kirdžali\";\"other\"\n\"729794\";\"Kirdžalü\";\"other\"\n\"729794\";\"Kirjali\";\"other\"\n\"729794\";\"Krdjali\";\"other\"\n\"729794\";\"Kudjaly\";\"other\"\n\"729794\";\"Kurdzali\";\"other\"\n\"729794\";\"Kurdzhale\";\"other\"\n\"729794\";\"Kurdzhalii\";\"other\"\n\"729794\";\"Kurdzjali\";\"other\"\n\"729794\";\"Kyakyrdzhali\";\"other\"\n\"729794\";\"Kyrdzhali\";\"other\"\n\"729794\";\"Kărdzhali\";\"other\"\n\"729794\";\"Kırcaali\";\"other\"\n\"729794\";\"Kŭrdzhale\";\"other\"\n\"729794\";\"Kŭrdzhalii\";\"other\"\n\"729794\";\"Kŭrdžali\";\"other\"\n\"729794\";\"Кърджали\";\"other\"\n\"729794\";\"Кырджали\";\"other\"\n\"729825\";\"Kula\";\"main\"\n\"729825\";\"Adlijo\";\"other\"\n\"729825\";\"Adlye\";\"other\"\n\"729825\";\"Koula\";\"other\"\n\"729825\";\"Кула\";\"other\"\n\"729839\";\"Kubrat\";\"main\"\n\"729839\";\"Balbunar\";\"other\"\n\"729839\";\"Кубрат\";\"other\"\n\"729880\";\"Krushari\";\"main\"\n\"729880\";\"Armuchi\";\"other\"\n\"729880\";\"Armutli\";\"other\"\n\"729880\";\"Armutlia\";\"other\"\n\"729880\";\"Armutlii\";\"other\"\n\"729880\";\"Armutlu\";\"other\"\n\"729880\";\"Krusari\";\"other\"\n\"729880\";\"Krušari\";\"other\"\n\"729880\";\"Крушари\";\"other\"\n\"729896\";\"Krumovgrad\";\"main\"\n\"729896\";\"Koshu-Kavak\";\"other\"\n\"729896\";\"Kosikavak\";\"other\"\n\"729896\";\"Kossukavak\";\"other\"\n\"729896\";\"Kossukovak\";\"other\"\n\"729896\";\"Kosu-Kavak\";\"other\"\n\"729896\";\"Košu-Kavak\";\"other\"\n\"729896\";\"Kroumovgrade\";\"other\"\n\"729896\";\"Krumowgrad\";\"other\"\n\"729896\";\"Крумовград\";\"other\"\n\"729909\";\"Krivodol\";\"main\"\n\"729909\";\"Krivdol\";\"other\"\n\"729909\";\"Krivodolska Makhala\";\"other\"\n\"729909\";\"Kriwodol\";\"other\"\n\"729909\";\"Криводол\";\"other\"\n\"729936\";\"Krichim\";\"main\"\n\"729936\";\"Kricim\";\"other\"\n\"729936\";\"Kricima\";\"other\"\n\"729936\";\"Krinchim\";\"other\"\n\"729936\";\"Kritchim\";\"other\"\n\"729936\";\"Kritschim\";\"other\"\n\"729936\";\"Krizim\";\"other\"\n\"729936\";\"Kričim\";\"other\"\n\"729936\";\"Kričima\";\"other\"\n\"729936\";\"Križim\";\"other\"\n\"729936\";\"Kroma\";\"other\"\n\"729936\";\"Кричим\";\"other\"\n\"729942\";\"Kresna\";\"main\"\n\"729942\";\"Bahnhof Pirin\";\"other\"\n\"729942\";\"Gara Pirin\";\"other\"\n\"729942\";\"Кресна\";\"other\"\n\"730013\";\"Kozloduy\";\"main\"\n\"730013\";\"Koslodui\";\"other\"\n\"730013\";\"Kozlodui\";\"other\"\n\"730013\";\"Kozloduj\";\"other\"\n\"730013\";\"Kozloudoui\";\"other\"\n\"730013\";\"Kozludui\";\"other\"\n\"730013\";\"kozloduj\";\"other\"\n\"730013\";\"козлодуй\";\"other\"\n\"730040\";\"Koynare\";\"main\"\n\"730040\";\"Koinare\";\"other\"\n\"730040\";\"Kojnare\";\"other\"\n\"730040\";\"Койнаре\";\"other\"\n\"730073\";\"Kotel\";\"main\"\n\"730073\";\"Kazan\";\"other\"\n\"730073\";\"Котел\";\"other\"\n\"730084\";\"Kostinbrod\";\"main\"\n\"730084\";\"Костинброд\";\"other\"\n\"730159\";\"Koprivshtitsa\";\"main\"\n\"730159\";\"Avrat Alan\";\"other\"\n\"730159\";\"Koprivcica\";\"other\"\n\"730159\";\"Koprivichtitza\";\"other\"\n\"730159\";\"Koprivscica\";\"other\"\n\"730159\";\"Koprivshchitsa\";\"other\"\n\"730159\";\"Koprivshhica\";\"other\"\n\"730159\";\"Koprivstica\";\"other\"\n\"730159\";\"Koprivčica\";\"other\"\n\"730159\";\"Koprivštica\";\"other\"\n\"730159\";\"Koprivščica\";\"other\"\n\"730159\";\"Kopriwschtiza\";\"other\"\n\"730159\";\"Копривщица\";\"other\"\n\"730268\";\"Kocherinovo\";\"main\"\n\"730268\";\"Kocarinovo\";\"other\"\n\"730268\";\"Kocerinovo\";\"other\"\n\"730268\";\"Kocherinobo\";\"other\"\n\"730268\";\"Kocheripovo\";\"other\"\n\"730268\";\"Kotcherinovo\";\"other\"\n\"730268\";\"Kotscherinowo\";\"other\"\n\"730268\";\"Kočarinovo\";\"other\"\n\"730268\";\"Kočerinovo\";\"other\"\n\"730268\";\"Кочериново\";\"other\"\n\"730287\";\"Knezha\";\"main\"\n\"730287\";\"Kneja\";\"other\"\n\"730287\";\"Knesha\";\"other\"\n\"730287\";\"Kneza\";\"other\"\n\"730287\";\"Kneža\";\"other\"\n\"730287\";\"Knizha\";\"other\"\n\"730287\";\"Knjeza\";\"other\"\n\"730287\";\"Knježa\";\"other\"\n\"730287\";\"Knyazha\";\"other\"\n\"730287\";\"Кнежа\";\"other\"\n\"730301\";\"Klisura\";\"main\"\n\"730301\";\"Derbend\";\"other\"\n\"730301\";\"Klissoura\";\"other\"\n\"730301\";\"Klissura\";\"other\"\n\"730301\";\"Клисура\";\"other\"\n\"730337\";\"Kiten\";\"main\"\n\"730337\";\"Mukhalii\";\"other\"\n\"730337\";\"Китен\";\"other\"\n\"730338\";\"Kiten\";\"main\"\n\"730338\";\"Avordovisa\";\"other\"\n\"730338\";\"Bordovasca\";\"other\"\n\"730338\";\"Chiflik Urdoviza\";\"other\"\n\"730338\";\"Kiten Lozenets\";\"other\"\n\"730338\";\"Ourdovisa\";\"other\"\n\"730338\";\"Uerdiso\";\"other\"\n\"730338\";\"Urdoviza\";\"other\"\n\"730338\";\"Китен\";\"other\"\n\"730367\";\"Kilifarevo\";\"main\"\n\"730367\";\"Kilifarewo\";\"other\"\n\"730367\";\"Килифарево\";\"other\"\n\"730415\";\"Tsar Kaloyan\";\"main\"\n\"730415\";\"Car Kalojan\";\"other\"\n\"730415\";\"Khlebarovo\";\"other\"\n\"730415\";\"Torlak\";\"other\"\n\"730415\";\"Torlaki\";\"other\"\n\"730415\";\"Tsar Kaloyanovo\";\"other\"\n\"730415\";\"Turlak\";\"other\"\n\"730415\";\"Tzar Kaloyan\";\"other\"\n\"730415\";\"Zar Kalojan\";\"other\"\n\"730415\";\"Цар Калоян\";\"other\"\n\"730419\";\"Khisarya\";\"main\"\n\"730419\";\"Banja\";\"other\"\n\"730419\";\"Banya\";\"other\"\n\"730419\";\"Chissar\";\"other\"\n\"730419\";\"Hisar\";\"other\"\n\"730419\";\"Hisar Kjuselere\";\"other\"\n\"730419\";\"Hisarya\";\"other\"\n\"730419\";\"Hissar\";\"other\"\n\"730419\";\"Husar\";\"other\"\n\"730419\";\"Khisar\";\"other\"\n\"730419\";\"Khisar-Kyuselere\";\"other\"\n\"730419\";\"Khisar-Momina Banya\";\"other\"\n\"730419\";\"Khisarja\";\"other\"\n\"730419\";\"Khiskeseleri\";\"other\"\n\"730419\";\"Momina-Banja\";\"other\"\n\"730419\";\"Momina-banya\";\"other\"\n\"730419\";\"Хисаря\";\"other\"\n\"730425\";\"Khayredin\";\"main\"\n\"730425\";\"Chairedin\";\"other\"\n\"730425\";\"Eredin\";\"other\"\n\"730425\";\"Hajredin\";\"other\"\n\"730425\";\"Khairedin\";\"other\"\n\"730425\";\"Khajredin\";\"other\"\n\"730425\";\"Хайредин\";\"other\"\n\"730435\";\"Khaskovo\";\"main\"\n\"730435\";\"Chaskoi\";\"other\"\n\"730435\";\"Chaskovo\";\"other\"\n\"730435\";\"Chaskowo\";\"other\"\n\"730435\";\"Chasköi\";\"other\"\n\"730435\";\"Haskioj\";\"other\"\n\"730435\";\"Haskiöj\";\"other\"\n\"730435\";\"Haskovo\";\"other\"\n\"730435\";\"Haskoy\";\"other\"\n\"730435\";\"Hasköy\";\"other\"\n\"730435\";\"Хасково\";\"other\"\n\"730442\";\"Kharmanli\";\"main\"\n\"730442\";\"Charmanlii\";\"other\"\n\"730442\";\"Harmanli\";\"other\"\n\"730442\";\"Harmanlii\";\"other\"\n\"730442\";\"Harmanlu\";\"other\"\n\"730442\";\"Harmanly\";\"other\"\n\"730442\";\"Harmanlü\";\"other\"\n\"730442\";\"Hermanli\";\"other\"\n\"730442\";\"Kharmanlii\";\"other\"\n\"730442\";\"Kharmanliy\";\"other\"\n\"730442\";\"Харманли\";\"other\"\n\"730464\";\"Khadzhidimovo\";\"main\"\n\"730464\";\"Dolna-Singartiya\";\"other\"\n\"730464\";\"Dolno-Singartiya\";\"other\"\n\"730464\";\"Shostowo\";\"other\"\n\"730464\";\"Zhostovo\";\"other\"\n\"730464\";\"Хаджидимово\";\"other\"\n\"730478\";\"Kermen\";\"main\"\n\"730478\";\"Keremenli\";\"other\"\n\"730478\";\"Kermenli\";\"other\"\n\"730478\";\"Kermenlii\";\"other\"\n\"730478\";\"Kermenliy\";\"other\"\n\"730478\";\"Kermenlu\";\"other\"\n\"730478\";\"Kermenlü\";\"other\"\n\"730478\";\"Kermon\";\"other\"\n\"730478\";\"Кермен\";\"other\"\n\"730496\";\"Kazanlŭk\";\"main\"\n\"730496\";\"Kazanluk\";\"ascii\"\n\"730496\";\"Kasanlak\";\"other\"\n\"730496\";\"Kasanlăk\";\"other\"\n\"730496\";\"Kazanl\\\"k\";\"other\"\n\"730496\";\"Kazanlak\";\"other\"\n\"730496\";\"Kazanlako\";\"other\"\n\"730496\";\"Kazanlek\";\"other\"\n\"730496\";\"Kazanlik\";\"other\"\n\"730496\";\"Kazanlk\";\"other\"\n\"730496\";\"Kazanlyk\";\"other\"\n\"730496\";\"Kazanlăk\";\"other\"\n\"730496\";\"Kazanlık\";\"other\"\n\"730496\";\"Kazanłyk\";\"other\"\n\"730496\";\"Казанлък\";\"other\"\n\"730496\";\"Казанлык\";\"other\"\n\"730496\";\"קאזאנלאק\";\"other\"\n\"730504\";\"Kaynardzha\";\"main\"\n\"730504\";\"Cainargcaua-Mica\";\"other\"\n\"730504\";\"Cainargeaua Mica\";\"other\"\n\"730504\";\"Cainargeaua Mică\";\"other\"\n\"730504\";\"Kajnardzha\";\"other\"\n\"730504\";\"Kutschuk Kainardshi\";\"other\"\n\"730504\";\"Kutschük Kainardshi\";\"other\"\n\"730504\";\"Kyuchuk-Kaynardzha\";\"other\"\n\"730504\";\"Malka Kainardsha\";\"other\"\n\"730504\";\"Malka-Kaynardzha\";\"other\"\n\"730504\";\"Malka-Kaynaruzha\";\"other\"\n\"730504\";\"Malka-Kaynarŭzha\";\"other\"\n\"730504\";\"Кайнарджа\";\"other\"\n\"730518\";\"Kavarna\";\"main\"\n\"730518\";\"Cavarna\";\"other\"\n\"730518\";\"Kawarna\";\"other\"\n\"730518\";\"Каварна\";\"other\"\n\"730542\";\"Kaspichan\";\"main\"\n\"730542\";\"Bahnhof Kaspitschan\";\"other\"\n\"730542\";\"Gara Kaspican\";\"other\"\n\"730542\";\"Gara Kaspichan\";\"other\"\n\"730542\";\"Gara Kaspičan\";\"other\"\n\"730542\";\"Kaspitchan\";\"other\"\n\"730542\";\"Kaspitchan Gare\";\"other\"\n\"730542\";\"Stantsiya Shumlaroad\";\"other\"\n\"730542\";\"Каспичан\";\"other\"\n\"730559\";\"Karnobat\";\"main\"\n\"730559\";\"Karnabat\";\"other\"\n\"730559\";\"Karnobatski prokhod\";\"other\"\n\"730559\";\"Poljanovgrad\";\"other\"\n\"730559\";\"Polyanovgrad\";\"other\"\n\"730559\";\"Карнобат\";\"other\"\n\"730559\";\"Карнобатски проход\";\"other\"\n\"730565\";\"Karlovo\";\"main\"\n\"730565\";\"Grad Karlove\";\"other\"\n\"730565\";\"Karliova\";\"other\"\n\"730565\";\"Karlowo\";\"other\"\n\"730565\";\"Karlıova\";\"other\"\n\"730565\";\"Karłowo\";\"other\"\n\"730565\";\"Levskigrad\";\"other\"\n\"730565\";\"Карлово\";\"other\"\n\"730651\";\"Kaolinovo\";\"main\"\n\"730651\";\"Beyuk Bakchilar\";\"other\"\n\"730651\";\"Boshidar\";\"other\"\n\"730651\";\"Bozhidar\";\"other\"\n\"730651\";\"Shumnu-Bokhchalar\";\"other\"\n\"730651\";\"Shumnu-Bokhchilar\";\"other\"\n\"730651\";\"Каолиново\";\"other\"\n\"730680\";\"Kameno\";\"main\"\n\"730680\";\"Kaiali\";\"other\"\n\"730680\";\"Kajali\";\"other\"\n\"730680\";\"Kajalii\";\"other\"\n\"730680\";\"Kajalu\";\"other\"\n\"730680\";\"Kajalü\";\"other\"\n\"730680\";\"Kayalii\";\"other\"\n\"730680\";\"Kayaliy\";\"other\"\n\"730680\";\"Kayalu\";\"other\"\n\"730680\";\"Kayalŭ\";\"other\"\n\"730680\";\"Kayliy\";\"other\"\n\"730680\";\"Камено\";\"other\"\n\"730733\";\"Kaloyanovo\";\"main\"\n\"730733\";\"Kalojanovo\";\"other\"\n\"730733\";\"Kalojanowo\";\"other\"\n\"730733\";\"Seldzhikovo\";\"other\"\n\"730733\";\"Seldzikovo\";\"other\"\n\"730733\";\"Seldžikovo\";\"other\"\n\"730733\";\"Калояново\";\"other\"\n\"730744\";\"Kalofer\";\"main\"\n\"730744\";\"Kaloter\";\"other\"\n\"730744\";\"Калофер\";\"other\"\n\"730837\";\"Ivaylovgrad\";\"main\"\n\"730837\";\"Ivailovgrad\";\"other\"\n\"730837\";\"Ivajlovgrad\";\"other\"\n\"730837\";\"Ivatlovgrade\";\"other\"\n\"730837\";\"Iwailowgrad\";\"other\"\n\"730837\";\"Iwajlowgrad\";\"other\"\n\"730837\";\"Orta-K'oy\";\"other\"\n\"730837\";\"Orta-Keui\";\"other\"\n\"730837\";\"Orta-Kioi\";\"other\"\n\"730837\";\"Orta-Kioj\";\"other\"\n\"730837\";\"Orta-Kioï\";\"other\"\n\"730837\";\"Orta-Kiöj\";\"other\"\n\"730837\";\"Orta-Kyoy\";\"other\"\n\"730837\";\"Ortakoi\";\"other\"\n\"730837\";\"Ortaköi\";\"other\"\n\"730837\";\"Ortokoj\";\"other\"\n\"730837\";\"Ortoköj\";\"other\"\n\"730837\";\"Ивайловград\";\"other\"\n\"730852\";\"Ivanovo\";\"main\"\n\"730852\";\"Iwanowo\";\"other\"\n\"730852\";\"Иваново\";\"other\"\n\"730866\";\"Isperikh\";\"main\"\n\"730866\";\"Isperich\";\"other\"\n\"730866\";\"Isperih\";\"other\"\n\"730866\";\"Kemallar\";\"other\"\n\"730866\";\"Kemanlar\";\"other\"\n\"730866\";\"Исперих\";\"other\"\n\"730919\";\"Ikhtiman\";\"main\"\n\"730919\";\"Ichtiman\";\"other\"\n\"730919\";\"Ihtiman\";\"other\"\n\"730919\";\"Ikhitman\";\"other\"\n\"730919\";\"Ихтиман\";\"other\"\n\"730960\";\"Gŭrmen\";\"main\"\n\"730960\";\"Gurmen\";\"ascii\"\n\"730960\";\"Garmen\";\"other\"\n\"730960\";\"Gărmen\";\"other\"\n\"730960\";\"Гърмен\";\"other\"\n\"730969\";\"Gurkovo\";\"main\"\n\"730969\";\"General Gurkovo\";\"other\"\n\"730969\";\"Gurkowo\";\"other\"\n\"730969\";\"Khainboaz\";\"other\"\n\"730969\";\"Khainito\";\"other\"\n\"730969\";\"Khainkioy\";\"other\"\n\"730969\";\"Kolupchii\";\"other\"\n\"730969\";\"Гурково\";\"other\"\n\"730982\";\"Gulyantsi\";\"main\"\n\"730982\";\"Galyantsi\";\"other\"\n\"730982\";\"Golenci\";\"other\"\n\"730982\";\"Guleanci\";\"other\"\n\"730982\";\"Guljanci\";\"other\"\n\"730982\";\"Guljanzi\";\"other\"\n\"730982\";\"Gulyanitsa\";\"other\"\n\"730982\";\"Гулянци\";\"other\"\n\"731016\";\"Sredets\";\"main\"\n\"731016\";\"Grudovo\";\"other\"\n\"731016\";\"Kara-Bunar\";\"other\"\n\"731016\";\"Sradets\";\"other\"\n\"731016\";\"Sredec\";\"other\"\n\"731016\";\"Sredetz\";\"other\"\n\"731016\";\"Sredez\";\"other\"\n\"731016\";\"Sryedets\";\"other\"\n\"731016\";\"Srědec\";\"other\"\n\"731016\";\"Средец\";\"other\"\n\"731056\";\"Gramada\";\"main\"\n\"731056\";\"Грамада\";\"other\"\n\"731100\";\"Gyovren\";\"main\"\n\"731100\";\"G'ovren\";\"other\"\n\"731100\";\"Gjowren\";\"other\"\n\"731100\";\"Goevren\";\"other\"\n\"731100\";\"Gövren\";\"other\"\n\"731100\";\"Гьоврен\";\"other\"\n\"731108\";\"Gotse Delchev\";\"main\"\n\"731108\";\"Goce Delchev\";\"other\"\n\"731108\";\"Gotsi Delchev\";\"other\"\n\"731108\";\"Gotze Deltchev\";\"other\"\n\"731108\";\"Nevrekop\";\"other\"\n\"731108\";\"Nevrokop\";\"other\"\n\"731108\";\"Newrokop\";\"other\"\n\"731108\";\"Гоце Делчев\";\"other\"\n\"731233\";\"Gorna Oryakhovitsa\";\"main\"\n\"731233\";\"Gorna Orehovica\";\"other\"\n\"731233\";\"Gorna Orehovitsa\";\"other\"\n\"731233\";\"Gorna Orehovitza\";\"other\"\n\"731233\";\"Gorna Orekhovitsa\";\"other\"\n\"731233\";\"Gorna Oriahovica\";\"other\"\n\"731233\";\"Gorna Orjakhovica\";\"other\"\n\"731233\";\"Gorna Orjechovica\";\"other\"\n\"731233\";\"Gorna Oréhovitza\";\"other\"\n\"731233\";\"Gorna-Orechowiza\";\"other\"\n\"731233\";\"Gorna-Oryekhovitsa\";\"other\"\n\"731233\";\"Gorno Oryakhovitsa\";\"other\"\n\"731233\";\"Горна Оряховица\";\"other\"\n\"731239\";\"Gorna Malina\";\"main\"\n\"731239\";\"Горна Малина\";\"other\"\n\"731384\";\"Godech\";\"main\"\n\"731384\";\"Glotnitsa\";\"other\"\n\"731384\";\"Godec\";\"other\"\n\"731384\";\"Godetch\";\"other\"\n\"731384\";\"Godetsch\";\"other\"\n\"731384\";\"Godeč\";\"other\"\n\"731384\";\"Molak\";\"other\"\n\"731384\";\"Negolova\";\"other\"\n\"731384\";\"Staro Selo\";\"other\"\n\"731384\";\"Stoykina\";\"other\"\n\"731384\";\"Trap\";\"other\"\n\"731384\";\"Yovkina\";\"other\"\n\"731384\";\"Годеч\";\"other\"\n\"731415\";\"Glavinitsa\";\"main\"\n\"731415\";\"Asfatchioi\";\"other\"\n\"731415\";\"Astvatchioi\";\"other\"\n\"731415\";\"Asvatchioi\";\"other\"\n\"731415\";\"Asvatk'oy\";\"other\"\n\"731415\";\"Asvatk’oy\";\"other\"\n\"731415\";\"Glavinica\";\"other\"\n\"731415\";\"Glawinica\";\"other\"\n\"731415\";\"Главиница\";\"other\"\n\"731453\";\"Dolni Chiflik\";\"main\"\n\"731453\";\"Dolen Chiflik\";\"other\"\n\"731453\";\"Dolen Tchiflik\";\"other\"\n\"731453\";\"Dolni Chifl\";\"other\"\n\"731453\";\"Dolni Chiftlik\";\"other\"\n\"731453\";\"Dolni Ciflik\";\"other\"\n\"731453\";\"Dolni Tchiftlik\";\"other\"\n\"731453\";\"Dolni chiflik\";\"other\"\n\"731453\";\"Dolni Čiflik\";\"other\"\n\"731453\";\"Dolni-Chnflik\";\"other\"\n\"731453\";\"Dolni-Tschiflik\";\"other\"\n\"731453\";\"Dolèn Tchiflik\";\"other\"\n\"731453\";\"Georgi Traykov\";\"other\"\n\"731453\";\"Долни чифлик\";\"other\"\n\"731464\";\"General-Toshevo\";\"main\"\n\"731464\";\"Casim\";\"other\"\n\"731464\";\"General Tosevo\";\"other\"\n\"731464\";\"General Toševo\";\"other\"\n\"731464\";\"Ion Gheorghe Duca\";\"other\"\n\"731464\";\"Kasamkioi\";\"other\"\n\"731464\";\"Kassalkioi\";\"other\"\n\"731464\";\"Kassălkioi\";\"other\"\n\"731464\";\"Kasum\";\"other\"\n\"731464\";\"Kasumk'oy\";\"other\"\n\"731464\";\"Kasŭm\";\"other\"\n\"731464\";\"Kasŭmk'oy\";\"other\"\n\"731464\";\"Генерал-Тошево\";\"other\"\n\"731520\";\"Gara Khitrino\";\"main\"\n\"731520\";\"Bahnhof Chitrino\";\"other\"\n\"731520\";\"Gara Khitino\";\"other\"\n\"731520\";\"Gara Seitandzik\";\"other\"\n\"731520\";\"Gara Sejtandzik\";\"other\"\n\"731520\";\"Gara Sheytandzhik\";\"other\"\n\"731520\";\"Gara Šeitandžik\";\"other\"\n\"731520\";\"Gara Šejtandžik\";\"other\"\n\"731520\";\"Karola\";\"other\"\n\"731520\";\"Seitandzik\";\"other\"\n\"731520\";\"Seitantzik\";\"other\"\n\"731520\";\"Sejtandzik\";\"other\"\n\"731520\";\"Shaytandzhik\";\"other\"\n\"731520\";\"Stantsiya Sheytandzhik\";\"other\"\n\"731520\";\"Šeitandžik\";\"other\"\n\"731520\";\"Šeitantžik\";\"other\"\n\"731520\";\"Гара Хитрино\";\"other\"\n\"731549\";\"Gabrovo\";\"main\"\n\"731549\";\"Gabrova\";\"other\"\n\"731549\";\"Gabrowo\";\"other\"\n\"731549\";\"gabrovo\";\"other\"\n\"731549\";\"gaburobo\";\"other\"\n\"731549\";\"jia bu luo wo\";\"other\"\n\"731549\";\"Габрово\";\"other\"\n\"731549\";\"ガブロボ\";\"other\"\n\"731549\";\"加布羅沃\";\"other\"\n\"731626\";\"Etropole\";\"main\"\n\"731626\";\"Etropolje\";\"other\"\n\"731626\";\"Етрополе\";\"other\"\n\"731670\";\"Elkhovo\";\"main\"\n\"731670\";\"Elchovo\";\"other\"\n\"731670\";\"Elchowo\";\"other\"\n\"731670\";\"Elhovo\";\"other\"\n\"731670\";\"Kasul-Agac\";\"other\"\n\"731670\";\"Kazul-Agach\";\"other\"\n\"731670\";\"Kazŭl-Agach\";\"other\"\n\"731670\";\"Kizilagac\";\"other\"\n\"731670\";\"Kizilagač\";\"other\"\n\"731670\";\"Kuzul Indzhe\";\"other\"\n\"731670\";\"Kuzul-Agach\";\"other\"\n\"731670\";\"Kăsŭl-Agač\";\"other\"\n\"731670\";\"Kŭzŭl Indzhe\";\"other\"\n\"731670\";\"Kŭzŭl-Agach\";\"other\"\n\"731670\";\"Елхово\";\"other\"\n\"731675\";\"Elin Pelin\";\"main\"\n\"731675\";\"Novoselci\";\"other\"\n\"731675\";\"Novoseltsi\";\"other\"\n\"731675\";\"Novosseltzi\";\"other\"\n\"731675\";\"Nowosselzi\";\"other\"\n\"731675\";\"Vlavo Trichkov\";\"other\"\n\"731675\";\"Елин Пелин\";\"other\"\n\"731696\";\"Elena\";\"main\"\n\"731696\";\"Jelena\";\"other\"\n\"731696\";\"Елена\";\"other\"\n\"731741\";\"Dzhebel\";\"main\"\n\"731741\";\"Djebel\";\"other\"\n\"731741\";\"Shekh-Dzhumaya\";\"other\"\n\"731741\";\"Sheykh-Dzhumaya\";\"other\"\n\"731741\";\"Джебел\";\"other\"\n\"731771\";\"Dve Mogili\";\"main\"\n\"731771\";\"Damogila\";\"other\"\n\"731771\";\"Dbb Mogili\";\"other\"\n\"731771\";\"Dve mogili\";\"other\"\n\"731771\";\"Dwe Mogili\";\"other\"\n\"731771\";\"Две могили\";\"other\"\n\"731809\";\"Dunavtsi\";\"main\"\n\"731809\";\"Dunavci\";\"other\"\n\"731809\";\"Dunavtzi\";\"other\"\n\"731809\";\"Дунавци\";\"other\"\n\"731818\";\"Dulovo\";\"main\"\n\"731818\";\"Acadanlar\";\"other\"\n\"731818\";\"Accadanlar\";\"other\"\n\"731818\";\"Accadânlar\";\"other\"\n\"731818\";\"Ak-Kadunlar\";\"other\"\n\"731818\";\"Ak-Kadŭnlar\";\"other\"\n\"731818\";\"Akkadanlar\";\"other\"\n\"731818\";\"Dulowo\";\"other\"\n\"731818\";\"Inatra-Mahle\";\"other\"\n\"731818\";\"Дулово\";\"other\"\n\"731822\";\"Dŭlgopol\";\"main\"\n\"731822\";\"Dulgopol\";\"ascii\"\n\"731822\";\"Dalgopol\";\"other\"\n\"731822\";\"Delgopol\";\"other\"\n\"731822\";\"Novo-Selo\";\"other\"\n\"731822\";\"Дългопол\";\"other\"\n\"731882\";\"Dryanovo\";\"main\"\n\"731882\";\"Drenova\";\"other\"\n\"731882\";\"Drenovo\";\"other\"\n\"731882\";\"Drenowo\";\"other\"\n\"731882\";\"Drjanovo\";\"other\"\n\"731882\";\"Drjenovo\";\"other\"\n\"731882\";\"Drěnovo\";\"other\"\n\"731882\";\"Дряново\";\"other\"\n\"731961\";\"Dragoman\";\"main\"\n\"731961\";\"Драгоман\";\"other\"\n\"732015\";\"Dospat\";\"main\"\n\"732015\";\"Dospad\";\"other\"\n\"732015\";\"Доспат\";\"other\"\n\"732099\";\"Dolni Dŭbnik\";\"main\"\n\"732099\";\"Dolni Dubnik\";\"ascii\"\n\"732099\";\"Diubnik\";\"other\"\n\"732099\";\"Dolni Dabnik\";\"other\"\n\"732099\";\"Dolni Dibnik\";\"other\"\n\"732099\";\"Dolni Dobnik\";\"other\"\n\"732099\";\"Dolni Döbnik\";\"other\"\n\"732099\";\"Dolni Dăbnik\";\"other\"\n\"732099\";\"Dolni-Debnik\";\"other\"\n\"732099\";\"Dolni-Dubnjak\";\"other\"\n\"732099\";\"Долни Дъбник\";\"other\"\n\"732122\";\"Dolna Mitropoliya\";\"main\"\n\"732122\";\"Dolna Metropolja\";\"other\"\n\"732122\";\"Dolna Mitropolia\";\"other\"\n\"732122\";\"Dolna Mitropolija\";\"other\"\n\"732122\";\"Dolna Netropol Mitropoliya\";\"other\"\n\"732122\";\"Долна Митрополия\";\"other\"\n\"732145\";\"Dolna Banya\";\"main\"\n\"732145\";\"Banja\";\"other\"\n\"732145\";\"Dolna Bania\";\"other\"\n\"732145\";\"Dolna Banja\";\"other\"\n\"732145\";\"Долна Баня\";\"other\"\n\"732253\";\"Dimovo\";\"main\"\n\"732253\";\"Aleksandrovo\";\"other\"\n\"732253\";\"Burzitsa\";\"other\"\n\"732253\";\"Bŭrzitsa\";\"other\"\n\"732253\";\"Knjas Alexandrowo\";\"other\"\n\"732253\";\"Knyaz Aleksandrovo\";\"other\"\n\"732253\";\"Osmanie\";\"other\"\n\"732253\";\"Vlaykovo\";\"other\"\n\"732253\";\"Димово\";\"other\"\n\"732263\";\"Dimitrovgrad\";\"main\"\n\"732263\";\"Димитровград\";\"other\"\n\"732280\";\"Devnya\";\"main\"\n\"732280\";\"Devne\";\"other\"\n\"732280\";\"Devnja\";\"other\"\n\"732280\";\"Dewnja\";\"other\"\n\"732280\";\"Девня\";\"other\"\n\"732285\";\"Devin\";\"main\"\n\"732285\";\"D'ovlen\";\"other\"\n\"732285\";\"Devine\";\"other\"\n\"732285\";\"Dewin\";\"other\"\n\"732285\";\"Djovlen\";\"other\"\n\"732285\";\"Dyevin\";\"other\"\n\"732285\";\"Děwin\";\"other\"\n\"732285\";\"Девин\";\"other\"\n\"732359\";\"Debelets\";\"main\"\n\"732359\";\"Debebletz\";\"other\"\n\"732359\";\"Debelec\";\"other\"\n\"732359\";\"Debelet\";\"other\"\n\"732359\";\"Debeletz\";\"other\"\n\"732359\";\"Debelez\";\"other\"\n\"732359\";\"Deblec\";\"other\"\n\"732359\";\"Débéblètz\";\"other\"\n\"732359\";\"Дебелец\";\"other\"\n\"732452\";\"Chirpan\";\"main\"\n\"732452\";\"Cirpan\";\"other\"\n\"732452\";\"Tchirpan\";\"other\"\n\"732452\";\"Tschirpan\";\"other\"\n\"732452\";\"Čirpan\";\"other\"\n\"732452\";\"Чирпан\";\"other\"\n\"732456\";\"Chiprovtsi\";\"main\"\n\"732456\";\"Chiporovtsi\";\"other\"\n\"732456\";\"Chiporovtsu\";\"other\"\n\"732456\";\"Chiporovtsŭ\";\"other\"\n\"732456\";\"Chiprovci\";\"other\"\n\"732456\";\"Tschiporowzi\";\"other\"\n\"732456\";\"Чипровци\";\"other\"\n\"732491\";\"Cherven Bryag\";\"main\"\n\"732491\";\"Cerven-Breg\";\"other\"\n\"732491\";\"Cherven brjag\";\"other\"\n\"732491\";\"Cherven-Breg\";\"other\"\n\"732491\";\"Cherven-Bryeg\";\"other\"\n\"732491\";\"Cherveni Bryag\";\"other\"\n\"732491\";\"Cherveni-Bjerg\";\"other\"\n\"732491\";\"Tcherven Bryag\";\"other\"\n\"732491\";\"Tscherwen Breg\";\"other\"\n\"732491\";\"Červen-Brěg\";\"other\"\n\"732491\";\"Червен бряг\";\"other\"\n\"732519\";\"Chernomorets\";\"main\"\n\"732519\";\"Agios Nikolo\";\"other\"\n\"732519\";\"Chernomorec\";\"other\"\n\"732519\";\"Nikola\";\"other\"\n\"732519\";\"Sveti Nicola\";\"other\"\n\"732519\";\"Sveti Nikola\";\"other\"\n\"732519\";\"Sweti Nikola\";\"other\"\n\"732519\";\"Черноморец\";\"other\"\n\"732627\";\"Chepelare\";\"main\"\n\"732627\";\"Cepelare\";\"other\"\n\"732627\";\"Chepelari\";\"other\"\n\"732627\";\"Tschepelare\";\"other\"\n\"732627\";\"Čepelare\";\"other\"\n\"732627\";\"Чепеларе\";\"other\"\n\"732636\";\"Chelopech\";\"main\"\n\"732636\";\"Celopec\";\"other\"\n\"732636\";\"Tschelopetsch\";\"other\"\n\"732636\";\"Čelopeč\";\"other\"\n\"732636\";\"Челопеч\";\"other\"\n\"732655\";\"Chavdar\";\"main\"\n\"732655\";\"Kolanlare\";\"other\"\n\"732655\";\"Kolanlari\";\"other\"\n\"732655\";\"Radoslavo\";\"other\"\n\"732655\";\"Radoslavovo\";\"other\"\n\"732655\";\"Radoslawowo\";\"other\"\n\"732655\";\"Чавдар\";\"other\"\n\"732704\";\"Byala Slatina\";\"main\"\n\"732704\";\"Bela Slatina\";\"other\"\n\"732704\";\"Biela Slatina\";\"other\"\n\"732704\";\"Bjala Slatina\";\"other\"\n\"732704\";\"Bjela Slatina\";\"other\"\n\"732704\";\"Byela-Slatina\";\"other\"\n\"732704\";\"Бяла Слатина\";\"other\"\n\"732717\";\"Byala Cherkva\";\"main\"\n\"732717\";\"Bela Cerkva\";\"other\"\n\"732717\";\"Bela Cherkva\";\"other\"\n\"732717\";\"Bela Tscherkwa\";\"other\"\n\"732717\";\"Bela-Cerkova\";\"other\"\n\"732717\";\"Bela-Tchekva\";\"other\"\n\"732717\";\"Bela-Čerkova\";\"other\"\n\"732717\";\"Bjala cherkva\";\"other\"\n\"732717\";\"Bjela-Cerkova\";\"other\"\n\"732717\";\"Bjela-Cerkva\";\"other\"\n\"732717\";\"Bjela-Čerkova\";\"other\"\n\"732717\";\"Byala Cherkova\";\"other\"\n\"732717\";\"Byela Cherkva\";\"other\"\n\"732717\";\"Byela-Cherkova\";\"other\"\n\"732717\";\"Béla-Tchekva\";\"other\"\n\"732717\";\"Běla Čerkva\";\"other\"\n\"732717\";\"Gorni Turcheta\";\"other\"\n\"732717\";\"Бяла черква\";\"other\"\n\"732721\";\"Byala\";\"main\"\n\"732721\";\"Ak Dere\";\"other\"\n\"732721\";\"Bela\";\"other\"\n\"732721\";\"Biela\";\"other\"\n\"732721\";\"Bjala\";\"other\"\n\"732721\";\"Bjela\";\"other\"\n\"732721\";\"Byela\";\"other\"\n\"732721\";\"Běla\";\"other\"\n\"732721\";\"Бяла\";\"other\"\n\"732770\";\"Burgas\";\"main\"\n\"732770\";\"Boergas\";\"other\"\n\"732770\";\"Bourgas\";\"other\"\n\"732770\";\"Bournkas\";\"other\"\n\"732770\";\"Burgasa\";\"other\"\n\"732770\";\"Burgaz\";\"other\"\n\"732770\";\"Burghaz\";\"other\"\n\"732770\";\"Mpournkas\";\"other\"\n\"732770\";\"bu er jia si\";\"other\"\n\"732770\";\"burugasu\";\"other\"\n\"732770\";\"Μπουργκάς\";\"other\"\n\"732770\";\"Μπουργκας\";\"other\"\n\"732770\";\"Μπούργκας\";\"other\"\n\"732770\";\"Бургас\";\"other\"\n\"732770\";\"ブルガス\";\"other\"\n\"732770\";\"布爾加斯\";\"other\"\n\"732825\";\"Bukhovo\";\"main\"\n\"732825\";\"Buchowo\";\"other\"\n\"732825\";\"Buhovo\";\"other\"\n\"732825\";\"Бухово\";\"other\"\n\"732862\";\"Brusartsi\";\"main\"\n\"732862\";\"Brusarci\";\"other\"\n\"732862\";\"Brussarz\";\"other\"\n\"732862\";\"Брусарци\";\"other\"\n\"732874\";\"Brezovo\";\"main\"\n\"732874\";\"Abrashlare\";\"other\"\n\"732874\";\"Abraslare\";\"other\"\n\"732874\";\"Bresowo\";\"other\"\n\"732874\";\"Brjesovo\";\"other\"\n\"732874\";\"Bryezovo\";\"other\"\n\"732874\";\"Брезово\";\"other\"\n\"732883\";\"Breznik\";\"main\"\n\"732883\";\"Berznik\";\"other\"\n\"732883\";\"Bresnik\";\"other\"\n\"732883\";\"Brjeznik\";\"other\"\n\"732883\";\"Bryeznik\";\"other\"\n\"732883\";\"Брезник\";\"other\"\n\"732915\";\"Bregovo\";\"main\"\n\"732915\";\"Bregowo\";\"other\"\n\"732915\";\"Brjegovo\";\"other\"\n\"732915\";\"Bryagovo\";\"other\"\n\"732915\";\"Bryegovo\";\"other\"\n\"732915\";\"Брегово\";\"other\"\n\"732924\";\"Bratsigovo\";\"main\"\n\"732924\";\"Bracigovo\";\"other\"\n\"732924\";\"Bratzigovo\";\"other\"\n\"732924\";\"Brazigowo\";\"other\"\n\"732924\";\"Брацигово\";\"other\"\n\"732954\";\"Bozhurishte\";\"main\"\n\"732954\";\"Bojurishe\";\"other\"\n\"732954\";\"Boshurischte\";\"other\"\n\"732954\";\"Bozhurishhe\";\"other\"\n\"732954\";\"Божурище\";\"other\"\n\"732986\";\"Boychinovtsi\";\"main\"\n\"732986\";\"Boichinovtsi\";\"other\"\n\"732986\";\"Bojchinovci\";\"other\"\n\"732986\";\"Bojtschinowzi\";\"other\"\n\"732986\";\"Бойчиновци\";\"other\"\n\"733014\";\"Botevgrad\";\"main\"\n\"733014\";\"Botewgrad\";\"other\"\n\"733014\";\"Orchanie\";\"other\"\n\"733014\";\"Orhanie\";\"other\"\n\"733014\";\"Orhanje\";\"other\"\n\"733014\";\"Orkhanie\";\"other\"\n\"733014\";\"Ботевград\";\"other\"\n\"733043\";\"Borovo\";\"main\"\n\"733043\";\"Gorna Manastiritsa\";\"other\"\n\"733043\";\"Gorna-Manastiriza\";\"other\"\n\"733043\";\"Gorna-Monastir\";\"other\"\n\"733043\";\"Gorni-Manastirica\";\"other\"\n\"733043\";\"Борово\";\"other\"\n\"733058\";\"Borovan\";\"main\"\n\"733058\";\"Borowan\";\"other\"\n\"733058\";\"Борован\";\"other\"\n\"733067\";\"Borino\";\"main\"\n\"733067\";\"Boriio\";\"other\"\n\"733067\";\"Kara-Bulak\";\"other\"\n\"733067\";\"Борино\";\"other\"\n\"733092\";\"Bolyarovo\";\"main\"\n\"733092\";\"Boljarovo\";\"other\"\n\"733092\";\"Boljarowo\";\"other\"\n\"733092\";\"Pachakioi\";\"other\"\n\"733092\";\"Pasakioj\";\"other\"\n\"733092\";\"Pasha-K'oy\";\"other\"\n\"733092\";\"Pasha-Kyoy\";\"other\"\n\"733092\";\"Pashakioy\";\"other\"\n\"733092\";\"Pašakiöj\";\"other\"\n\"733092\";\"Болярово\";\"other\"\n\"733151\";\"Bobovdol\";\"main\"\n\"733151\";\"Bobor-Dol\";\"other\"\n\"733151\";\"Bobov Dol\";\"other\"\n\"733151\";\"Bobov-Dol Mina\";\"other\"\n\"733151\";\"Bobow Dol\";\"other\"\n\"733151\";\"Бобовдол\";\"other\"\n\"733153\";\"Boboshevo\";\"main\"\n\"733153\";\"Bobochevo\";\"other\"\n\"733153\";\"Boboschewo\";\"other\"\n\"733153\";\"Bobosevo\";\"other\"\n\"733153\";\"Boboševo\";\"other\"\n\"733153\";\"Бобочево\";\"other\"\n\"733153\";\"Бобошево\";\"other\"\n\"733191\";\"Blagoevgrad\";\"main\"\n\"733191\";\"Djumaja\";\"other\"\n\"733191\";\"Dzhumaya\";\"other\"\n\"733191\";\"Dzuma\";\"other\"\n\"733191\";\"Dzumaja\";\"other\"\n\"733191\";\"Džuma\";\"other\"\n\"733191\";\"Džumaja\";\"other\"\n\"733191\";\"Gorna Djoumaia\";\"other\"\n\"733191\";\"Gorna Djumaya\";\"other\"\n\"733191\";\"Gorna Dshumaja\";\"other\"\n\"733191\";\"Gorna Dzhumaja\";\"other\"\n\"733191\";\"Gorna Dzhumaya\";\"other\"\n\"733191\";\"Gorna Dzumaja\";\"other\"\n\"733191\";\"Gorna Džumaja\";\"other\"\n\"733191\";\"Благоевград\";\"other\"\n\"733191\";\"Горна Джумая\";\"other\"\n\"733264\";\"Berkovitsa\";\"main\"\n\"733264\";\"Berkovica\";\"other\"\n\"733264\";\"Berkovitsay\";\"other\"\n\"733264\";\"Berkovitza\";\"other\"\n\"733264\";\"Berkowiza\";\"other\"\n\"733264\";\"Берковица\";\"other\"\n\"733286\";\"Belovo\";\"main\"\n\"733286\";\"Beljovo\";\"other\"\n\"733286\";\"Gara Bel'oro\";\"other\"\n\"733286\";\"Gara Byelovo\";\"other\"\n\"733286\";\"Белово\";\"other\"\n\"733309\";\"Belogradchik\";\"main\"\n\"733309\";\"Belogradcik\";\"other\"\n\"733309\";\"Belogradtchik\";\"other\"\n\"733309\";\"Belogradtgchik\";\"other\"\n\"733309\";\"Bjelogradcik\";\"other\"\n\"733309\";\"Bjelogradčik\";\"other\"\n\"733309\";\"Byelogradchik\";\"other\"\n\"733309\";\"Bélogradtchik\";\"other\"\n\"733309\";\"Bělogradčik\";\"other\"\n\"733309\";\"Белоградчик\";\"other\"\n\"733322\";\"Belitsa\";\"main\"\n\"733322\";\"Belica\";\"other\"\n\"733322\";\"Belitso\";\"other\"\n\"733322\";\"Belitza\";\"other\"\n\"733322\";\"Beliza\";\"other\"\n\"733322\";\"Bjelica\";\"other\"\n\"733322\";\"Blitsa\";\"other\"\n\"733322\";\"Byelitsa\";\"other\"\n\"733322\";\"Bělica\";\"other\"\n\"733322\";\"Белица\";\"other\"\n\"733359\";\"Belene\";\"main\"\n\"733359\";\"Beleke\";\"other\"\n\"733359\";\"Belina\";\"other\"\n\"733359\";\"Bjelene\";\"other\"\n\"733359\";\"Byelene\";\"other\"\n\"733359\";\"Белене\";\"other\"\n\"733433\";\"Batak\";\"main\"\n\"733433\";\"Батак\";\"other\"\n\"733462\";\"Bansko\";\"main\"\n\"733462\";\"Banjska\";\"other\"\n\"733462\";\"Banjsko\";\"other\"\n\"733462\";\"Banysko\";\"other\"\n\"733462\";\"Банско\";\"other\"\n\"733474\";\"Banite\";\"main\"\n\"733474\";\"Ladsha\";\"other\"\n\"733474\";\"Ledzha\";\"other\"\n\"733474\";\"Ludzha\";\"other\"\n\"733474\";\"Lădsha\";\"other\"\n\"733474\";\"Lŭdzha\";\"other\"\n\"733474\";\"Баните\";\"other\"\n\"733515\";\"Balchik\";\"main\"\n\"733515\";\"Balchiq\";\"other\"\n\"733515\";\"Balcic\";\"other\"\n\"733515\";\"Baltchik\";\"other\"\n\"733515\";\"Baltschik\";\"other\"\n\"733515\";\"Балчик\";\"other\"\n\"733579\";\"Aytos\";\"main\"\n\"733579\";\"Aitos\";\"other\"\n\"733579\";\"Ajtos\";\"other\"\n\"733579\";\"Айтос\";\"other\"\n\"733618\";\"Asenovgrad\";\"main\"\n\"733618\";\"Assenovgrad\";\"other\"\n\"733618\";\"Assenovgrade\";\"other\"\n\"733618\";\"Assenowgrad\";\"other\"\n\"733618\";\"Stanimaka\";\"other\"\n\"733618\";\"Асеновград\";\"other\"\n\"733638\";\"Ardino\";\"main\"\n\"733638\";\"Egridere\";\"other\"\n\"733638\";\"Eğridere\";\"other\"\n\"733638\";\"Iridere\";\"other\"\n\"733638\";\"Irideré\";\"other\"\n\"733638\";\"Khadzhi K'oy\";\"other\"\n\"733638\";\"Ардино\";\"other\"\n\"733649\";\"Apriltsi\";\"main\"\n\"733649\";\"Aprilci\";\"other\"\n\"733649\";\"Apriltzi\";\"other\"\n\"733649\";\"Априлци\";\"other\"\n\"733657\";\"Antonovo\";\"main\"\n\"733657\";\"Poljana\";\"other\"\n\"733657\";\"Poljane\";\"other\"\n\"733657\";\"Polyana\";\"other\"\n\"733657\";\"Polyane\";\"other\"\n\"733657\";\"Yayla-K'oy\";\"other\"\n\"733657\";\"Yaylakioi\";\"other\"\n\"733657\";\"Антоново\";\"other\"\n\"733660\";\"Anton\";\"main\"\n\"733660\";\"Lashene\";\"other\"\n\"733660\";\"Lezhene\";\"other\"\n\"733660\";\"Ludzhene\";\"other\"\n\"733660\";\"Luzhene\";\"other\"\n\"733660\";\"Lăshene\";\"other\"\n\"733660\";\"Lŭdzhene\";\"other\"\n\"733660\";\"Lŭzhene\";\"other\"\n\"733660\";\"Антон\";\"other\"\n\"733679\";\"Alfatar\";\"main\"\n\"733679\";\"General Lazarovo\";\"other\"\n\"733679\";\"General Lazarow\";\"other\"\n\"733679\";\"Алфатар\";\"other\"\n\"733716\";\"Aksakovo\";\"main\"\n\"733716\";\"Adzemler\";\"other\"\n\"733716\";\"Adzhemler\";\"other\"\n\"733716\";\"Adžemler\";\"other\"\n\"733716\";\"Aksakov\";\"other\"\n\"733716\";\"Aksakowo\";\"other\"\n\"733716\";\"Аксаково\";\"other\"\n\"733722\";\"Akhtopol\";\"main\"\n\"733722\";\"Achtepol\";\"other\"\n\"733722\";\"Achtopol\";\"other\"\n\"733722\";\"Agathopolis\";\"other\"\n\"733722\";\"Ahtapolu\";\"other\"\n\"733722\";\"Ahtopol\";\"other\"\n\"733722\";\"Akhtebol\";\"other\"\n\"733722\";\"Ахтопол\";\"other\"\n\"6355004\";\"Zlatni Pyasatsi\";\"main\"\n\"6355004\";\"Golden Sands\";\"other\"\n\"6355004\";\"Zlatni pjasuci\";\"other\"\n\"6355004\";\"Zolotye Peski\";\"other\"\n\"6355004\";\"Златни пясъци\";\"other\"\n\"6355004\";\"Золотые Пески\";\"other\"\n\"290104\";\"Sitrah\";\"main\"\n\"290104\";\"Sitra\";\"other\"\n\"290104\";\"Ситра\";\"other\"\n\"290104\";\"سترة\";\"other\"\n\"290104\";\"سِتْرَة\";\"other\"\n\"290187\";\"Madīnat ‘Īsá\";\"main\"\n\"290187\";\"Madinat `Isa\";\"ascii\"\n\"290187\";\"Isa\";\"other\"\n\"290187\";\"Isa Town\";\"other\"\n\"290187\";\"Medinat Isa\";\"other\"\n\"290187\";\"مَدِينَة عِيسَى\";\"other\"\n\"290215\";\"Jidd Ḩafş\";\"main\"\n\"290215\";\"Jidd Hafs\";\"ascii\"\n\"290215\";\"Djidd Hafs\";\"other\"\n\"290215\";\"Djidd Ḥafṣ\";\"other\"\n\"290215\";\"Jadd Hafs\";\"other\"\n\"290215\";\"Jid Hafs\";\"other\"\n\"290215\";\"Judd Hafs\";\"other\"\n\"290215\";\"Judd Ḩafş\";\"other\"\n\"290215\";\"jid hafs\";\"other\"\n\"290215\";\"جِدّ حَفْص\";\"other\"\n\"290247\";\"Madīnat Ḩamad\";\"main\"\n\"290247\";\"Madinat Hamad\";\"ascii\"\n\"290247\";\"Hamad Town\";\"other\"\n\"290247\";\"madinat hamad\";\"other\"\n\"290247\";\"مَدِينَة حَمَد\";\"other\"\n\"290269\";\"Dār Kulayb\";\"main\"\n\"290269\";\"Dar Kulayb\";\"ascii\"\n\"290269\";\"Dar Chulaib\";\"other\"\n\"290269\";\"Dar Kulaib\";\"other\"\n\"290269\";\"Dār Kulaib\";\"other\"\n\"290269\";\"dar kulayb\";\"other\"\n\"290269\";\"دَار كُلَيْب\";\"other\"\n\"290332\";\"Al Muḩarraq\";\"main\"\n\"290332\";\"Al Muharraq\";\"ascii\"\n\"290332\";\"Al Muharrak\";\"other\"\n\"290332\";\"Al'-Mukharrak\";\"other\"\n\"290332\";\"Al-Muharrak\";\"other\"\n\"290332\";\"Al-Muharraq\";\"other\"\n\"290332\";\"Al-Muḥarrak\";\"other\"\n\"290332\";\"Moharek\";\"other\"\n\"290332\";\"Muharrak\";\"other\"\n\"290332\";\"Muharraq\";\"other\"\n\"290332\";\"Muharraq Town\";\"other\"\n\"290332\";\"Muhurraq\";\"other\"\n\"290332\";\"aalmuharaq\";\"other\"\n\"290332\";\"mhrq\";\"other\"\n\"290332\";\"Аль-Мухаррак\";\"other\"\n\"290332\";\"اَلْمُحَرَّق\";\"other\"\n\"290332\";\"محرق\";\"other\"\n\"290340\";\"Manama\";\"main\"\n\"290340\";\"Al Manama\";\"other\"\n\"290340\";\"Al Manamah\";\"other\"\n\"290340\";\"Al Manāma\";\"other\"\n\"290340\";\"Al Manāmah\";\"other\"\n\"290340\";\"Al-Manama\";\"other\"\n\"290340\";\"Al-Manamah\";\"other\"\n\"290340\";\"Maenamae\";\"other\"\n\"290340\";\"Manamae\";\"other\"\n\"290340\";\"Manamah\";\"other\"\n\"290340\";\"Manameh\";\"other\"\n\"290340\";\"Manamo\";\"other\"\n\"290340\";\"Manáma\";\"other\"\n\"290340\";\"Menama\";\"other\"\n\"290340\";\"Mänamä\";\"other\"\n\"290340\";\"aalmanamat\";\"other\"\n\"290340\";\"mai na mai\";\"other\"\n\"290340\";\"manama\";\"other\"\n\"290340\";\"mnamt\";\"other\"\n\"290340\";\"Μανάμα\";\"other\"\n\"290340\";\"Манамæ\";\"other\"\n\"290340\";\"Манама\";\"other\"\n\"290340\";\"Մանամա\";\"other\"\n\"290340\";\"מנאמה\";\"other\"\n\"290340\";\"اَلْمَنَامَة\";\"other\"\n\"290340\";\"منامة\";\"other\"\n\"290340\";\"মানামা\";\"other\"\n\"290340\";\"ማናማ\";\"other\"\n\"290340\";\"マナーマ\";\"other\"\n\"290340\";\"麦纳麦\";\"other\"\n\"290340\";\"마나마\";\"other\"\n\"290363\";\"Al Ḩadd\";\"main\"\n\"290363\";\"Al Hadd\";\"ascii\"\n\"290363\";\"Al Hidd\";\"other\"\n\"290363\";\"Al Ḩidd\";\"other\"\n\"290363\";\"Hadd\";\"other\"\n\"290363\";\"Hidd\";\"other\"\n\"290363\";\"aalhad\";\"other\"\n\"290363\";\"اَلْحَدّ\";\"other\"\n\"385038\";\"Ar Rifā‘\";\"main\"\n\"385038\";\"Ar Rifa'\";\"ascii\"\n\"385038\";\"Ar Rifa\";\"other\"\n\"385038\";\"اَلرِّفَاع\";\"other\"\n\"422232\";\"Makamba\";\"main\"\n\"422232\";\"Макамба\";\"other\"\n\"423328\";\"Bururi\";\"main\"\n\"423328\";\"Mont Bururi\";\"other\"\n\"423328\";\"Бурури\";\"other\"\n\"423549\";\"Rumonge\";\"main\"\n\"423794\";\"Mwaro\";\"main\"\n\"425378\";\"Bujumbura\";\"main\"\n\"425378\";\"Budzumbura\";\"other\"\n\"425378\";\"Bujumburo\";\"other\"\n\"425378\";\"Buj·umbura\";\"other\"\n\"425378\";\"Buzhumbura\";\"other\"\n\"425378\";\"Buzumbura\";\"other\"\n\"425378\";\"Buĵumburo\";\"other\"\n\"425378\";\"Bużumbura\";\"other\"\n\"425378\";\"Bužumbūra\";\"other\"\n\"425378\";\"Mpouzoumpoura\";\"other\"\n\"425378\";\"Usumbura\";\"other\"\n\"425378\";\"bu qiong bu la\";\"other\"\n\"425378\";\"bujumbula\";\"other\"\n\"425378\";\"bujunbura\";\"other\"\n\"425378\";\"bwg'wmbwrh\";\"other\"\n\"425378\";\"bwjwmbra\";\"other\"\n\"425378\";\"bwjwmbwra\";\"other\"\n\"425378\";\"Μπουζουμπούρα\";\"other\"\n\"425378\";\"Бужумбура\";\"other\"\n\"425378\";\"Буџумбура\";\"other\"\n\"425378\";\"Բուժումբուրա\";\"other\"\n\"425378\";\"בוג'ומבורה\";\"other\"\n\"425378\";\"بوجومبرا\";\"other\"\n\"425378\";\"بوجومبورا\";\"other\"\n\"425378\";\"ቡጁምቡራ\";\"other\"\n\"425378\";\"ブジュンブラ\";\"other\"\n\"425378\";\"布琼布拉\";\"other\"\n\"425378\";\"부줌부라\";\"other\"\n\"425551\";\"Muramvya\";\"main\"\n\"426272\";\"Gitega\";\"main\"\n\"426272\";\"Gitege\";\"other\"\n\"426272\";\"Kitega\";\"other\"\n\"426272\";\"Гитеге\";\"other\"\n\"426700\";\"Ruyigi\";\"main\"\n\"426700\";\"Rujigi\";\"other\"\n\"426700\";\"Руйиги\";\"other\"\n\"427701\";\"Cankuzo\";\"main\"\n\"427701\";\"Kankuzo\";\"other\"\n\"427701\";\"Канкузо\";\"other\"\n\"428219\";\"Karuzi\";\"main\"\n\"428515\";\"Bubanza\";\"main\"\n\"428515\";\"Бубанза\";\"other\"\n\"430021\";\"Cibitoke\";\"main\"\n\"430569\";\"Ngozi\";\"main\"\n\"430569\";\"Нгози\";\"other\"\n\"430952\";\"Kayanza\";\"main\"\n\"431748\";\"Muyinga\";\"main\"\n\"431748\";\"Mujinga\";\"other\"\n\"431748\";\"Муйинга\";\"other\"\n\"432456\";\"Kirundo\";\"main\"\n\"432456\";\"Кирундо\";\"other\"\n\"433635\";\"Rutana\";\"main\"\n\"433635\";\"Рутана\";\"other\"\n\"2391377\";\"Tchaourou\";\"main\"\n\"2391377\";\"Chauru\";\"other\"\n\"2391455\";\"Tanguiéta\";\"main\"\n\"2391455\";\"Tanguieta\";\"ascii\"\n\"2391455\";\"Tangoueita\";\"other\"\n\"2391455\";\"Tangueita\";\"other\"\n\"2391893\";\"Savé\";\"main\"\n\"2391893\";\"Save\";\"ascii\"\n\"2391895\";\"Savalou\";\"main\"\n\"2391895\";\"Savalu\";\"other\"\n\"2392009\";\"Sakété\";\"main\"\n\"2392009\";\"Sakete\";\"ascii\"\n\"2392087\";\"Porto-Novo\";\"main\"\n\"2392087\";\"Porto Nobo\";\"other\"\n\"2392087\";\"Porto Novas\";\"other\"\n\"2392087\";\"Porto Novo\";\"other\"\n\"2392087\";\"Pôrto-Novo\";\"other\"\n\"2392087\";\"bo duo nuo fu\";\"other\"\n\"2392087\";\"poleutonobo\";\"other\"\n\"2392087\";\"porutonobo\";\"other\"\n\"2392087\";\"pwrtw nwbw\";\"other\"\n\"2392087\";\"pwrtw nwww\";\"other\"\n\"2392087\";\"xin gang\";\"other\"\n\"2392087\";\"Πόρτο Νόβο\";\"other\"\n\"2392087\";\"Порто Ново\";\"other\"\n\"2392087\";\"Порто-Ново\";\"other\"\n\"2392087\";\"פורטו נובו\";\"other\"\n\"2392087\";\"پورتو نووو\";\"other\"\n\"2392087\";\"ፖርቶ ኖቮ\";\"other\"\n\"2392087\";\"ポルトノボ\";\"other\"\n\"2392087\";\"新港\";\"other\"\n\"2392087\";\"波多诺伏\";\"other\"\n\"2392087\";\"포르토노보\";\"other\"\n\"2392108\";\"Pobé\";\"main\"\n\"2392108\";\"Pobe\";\"ascii\"\n\"2392108\";\"Ipobe\";\"other\"\n\"2392204\";\"Parakou\";\"main\"\n\"2392204\";\"Paraku\";\"other\"\n\"2392204\";\"Параку\";\"other\"\n\"2392308\";\"Ouidah\";\"main\"\n\"2392308\";\"Fortaleza de Sao Joao Baptista de Ajuda\";\"other\"\n\"2392308\";\"Fortaleza de São João Baptista de Ajudá\";\"other\"\n\"2392308\";\"Sao Joao Baptista de Ajuda\";\"other\"\n\"2392308\";\"São João Baptista de Ajudá\";\"other\"\n\"2392308\";\"Vidy\";\"other\"\n\"2392308\";\"Whydah\";\"other\"\n\"2392308\";\"Wida\";\"other\"\n\"2392308\";\"sheng yue han bao\";\"other\"\n\"2392308\";\"Виды\";\"other\"\n\"2392308\";\"圣约翰堡\";\"other\"\n\"2392505\";\"Nikki\";\"main\"\n\"2392505\";\"Никки\";\"other\"\n\"2392601\";\"Natitingou\";\"main\"\n\"2392601\";\"Natitingu\";\"other\"\n\"2392601\";\"Натитингу\";\"other\"\n\"2392837\";\"Malanville\";\"main\"\n\"2392837\";\"Malanvilem\";\"other\"\n\"2392837\";\"Mallanville\";\"other\"\n\"2392837\";\"Маланвилем\";\"other\"\n\"2392897\";\"Lokossa\";\"main\"\n\"2392897\";\"Locossa\";\"other\"\n\"2393551\";\"Kétou\";\"main\"\n\"2393551\";\"Ketou\";\"ascii\"\n\"2393551\";\"Ketu\";\"other\"\n\"2393693\";\"Kandi\";\"main\"\n\"2393693\";\"Канди\";\"other\"\n\"2393947\";\"Grand-Popo\";\"main\"\n\"2393947\";\"Ghola\";\"other\"\n\"2393947\";\"Great Popo\";\"other\"\n\"2393947\";\"Kpla\";\"other\"\n\"2394545\";\"Dogbo\";\"main\"\n\"2394560\";\"Djougou\";\"main\"\n\"2394560\";\"Jugu\";\"other\"\n\"2394711\";\"Dassa-Zoumé\";\"main\"\n\"2394711\";\"Dassa-Zoume\";\"ascii\"\n\"2394711\";\"Dassa Zume\";\"other\"\n\"2394814\";\"Cové\";\"main\"\n\"2394814\";\"Cove\";\"ascii\"\n\"2394814\";\"Kove\";\"other\"\n\"2394814\";\"Kové\";\"other\"\n\"2394819\";\"Cotonou\";\"main\"\n\"2394819\";\"Appi\";\"other\"\n\"2394819\";\"Catonou\";\"other\"\n\"2394819\";\"Cotonu\";\"other\"\n\"2394819\";\"Cotonú\";\"other\"\n\"2394819\";\"Kotonou\";\"other\"\n\"2394819\";\"Kotonu\";\"other\"\n\"2394819\";\"ke tuo nu\";\"other\"\n\"2394819\";\"kotonu\";\"other\"\n\"2394819\";\"qwtwnw\";\"other\"\n\"2394819\";\"Котону\";\"other\"\n\"2394819\";\"קוטונו\";\"other\"\n\"2394819\";\"コトヌー\";\"other\"\n\"2394819\";\"科托努\";\"other\"\n\"2394824\";\"Comé\";\"main\"\n\"2394824\";\"Come\";\"ascii\"\n\"2394824\";\"Kome\";\"other\"\n\"2394824\";\"Komé\";\"other\"\n\"2395049\";\"Bohicon\";\"main\"\n\"2395127\";\"Bétérou\";\"main\"\n\"2395127\";\"Beterou\";\"ascii\"\n\"2395182\";\"Bembèrèkè\";\"main\"\n\"2395182\";\"Bembereke\";\"ascii\"\n\"2395182\";\"Bimbereke\";\"other\"\n\"2395182\";\"Bimbéréké\";\"other\"\n\"2395261\";\"Bassila\";\"main\"\n\"2395317\";\"Banikoara\";\"main\"\n\"2395568\";\"Aplahoué\";\"main\"\n\"2395568\";\"Aplahoue\";\"ascii\"\n\"2395568\";\"Parahoue\";\"other\"\n\"2395568\";\"Parahoué\";\"other\"\n\"2395568\";\"Parahue\";\"other\"\n\"2395635\";\"Allada\";\"main\"\n\"2395914\";\"Abomey-Calavi\";\"main\"\n\"2395914\";\"Abome Calavi\";\"other\"\n\"2395914\";\"Abomej-Kalavi\";\"other\"\n\"2395914\";\"Kalavi\";\"other\"\n\"2395914\";\"Абомей-Калави\";\"other\"\n\"2395915\";\"Abomey\";\"main\"\n\"2395915\";\"Abome\";\"other\"\n\"2395915\";\"Abomei\";\"other\"\n\"2395915\";\"Abomej\";\"other\"\n\"2395915\";\"Palacios Reais de Abomei\";\"other\"\n\"2395915\";\"Palácios Reais de Abomei\";\"other\"\n\"2395915\";\"Абомей\";\"other\"\n\"3579132\";\"Gustavia\";\"main\"\n\"3579132\";\"Gustaf\";\"other\"\n\"3579132\";\"Guthavia\";\"other\"\n\"3573061\";\"Saint George\";\"main\"\n\"3573061\";\"Saint George's Town\";\"other\"\n\"3573061\";\"Saint Georges\";\"other\"\n\"3573061\";\"Saint George’s Town\";\"other\"\n\"3573197\";\"Hamilton\";\"main\"\n\"1820071\";\"Tutong\";\"main\"\n\"1820187\";\"Seria\";\"main\"\n\"1820187\";\"Serija\";\"other\"\n\"1820187\";\"Серия\";\"other\"\n\"1820491\";\"Kuala Belait\";\"main\"\n\"1820491\";\"Belait\";\"other\"\n\"1820491\";\"Kwala Belait\";\"other\"\n\"1820903\";\"Bangar\";\"main\"\n\"1820903\";\"Temburong\";\"other\"\n\"1820906\";\"Bandar Seri Begawan\";\"main\"\n\"1820906\";\"Bandar Seri Begavanas\";\"other\"\n\"1820906\";\"Bandar-Seri-Begavan\";\"other\"\n\"1820906\";\"Bandar-Seri-Begavano\";\"other\"\n\"1820906\";\"Brunei\";\"other\"\n\"1820906\";\"Brunei Town\";\"other\"\n\"1820906\";\"Bruni\";\"other\"\n\"1820906\";\"Mpantar Seri Mpenkaban\";\"other\"\n\"1820906\";\"ban dar se ribe ka wan\";\"other\"\n\"1820906\";\"bandaleuseulibeugawan\";\"other\"\n\"1820906\";\"bandarusuribugawan\";\"other\"\n\"1820906\";\"bndr sry bgawan\";\"other\"\n\"1820906\";\"bndr sry bgwan\";\"other\"\n\"1820906\";\"si li ba jia wan shi\";\"other\"\n\"1820906\";\"Μπαντάρ Σερί Μπεγκαβάν\";\"other\"\n\"1820906\";\"Бандар-Сери-Бегаван\";\"other\"\n\"1820906\";\"Бандар-Сері-Бегаван\";\"other\"\n\"1820906\";\"בנדר סרי בגוואן\";\"other\"\n\"1820906\";\"بندر سری بگاوان\";\"other\"\n\"1820906\";\"بندر سری بگوان\";\"other\"\n\"1820906\";\"บันดาร์เสรีเบกาวัน\";\"other\"\n\"1820906\";\"ባንዳር ሰሪ ቤጋዋን\";\"other\"\n\"1820906\";\"バンダルスリブガワン\";\"other\"\n\"1820906\";\"斯里巴加湾市\";\"other\"\n\"1820906\";\"斯里巴加灣市\";\"other\"\n\"1820906\";\"반다르스리브가완\";\"other\"\n\"3444091\";\"San Pedro\";\"main\"\n\"3444105\";\"San Matías\";\"main\"\n\"3444105\";\"San Matias\";\"ascii\"\n\"3444176\";\"Roboré\";\"main\"\n\"3444176\";\"Robore\";\"ascii\"\n\"3444176\";\"El Rabore\";\"other\"\n\"3444176\";\"Fortin Robore\";\"other\"\n\"3444176\";\"Fortín Roboré\";\"other\"\n\"3444201\";\"Puerto Quijarro\";\"main\"\n\"3901178\";\"Yacuiba\";\"main\"\n\"3901178\";\"Jakuiba\";\"other\"\n\"3901178\";\"Якуиба\";\"other\"\n\"3901301\";\"Warnes\";\"main\"\n\"3901485\";\"Viloco\";\"main\"\n\"3901501\";\"Villazón\";\"main\"\n\"3901501\";\"Villazon\";\"ascii\"\n\"3901504\";\"Villa Yapacaní\";\"main\"\n\"3901504\";\"Villa Yapacani\";\"ascii\"\n\"3901547\";\"Villamontes\";\"main\"\n\"3901874\";\"Vallegrande\";\"main\"\n\"3901874\";\"Ciudad de Vallegrande\";\"other\"\n\"3901903\";\"Uyuni\";\"main\"\n\"3901903\";\"Ujuni\";\"other\"\n\"3901903\";\"Уюни\";\"other\"\n\"3901969\";\"Urubichá\";\"main\"\n\"3901969\";\"Urubicha\";\"ascii\"\n\"3901969\";\"Uribicha\";\"other\"\n\"3901969\";\"Urubichi\";\"other\"\n\"3901969\";\"Uruvicho\";\"other\"\n\"3902202\";\"Tupiza\";\"main\"\n\"3902202\";\"Turpiza\";\"other\"\n\"3902377\";\"La Santisima Trinidad\";\"main\"\n\"3902377\";\"Ciudad Trinidad\";\"other\"\n\"3902377\";\"Trinidad\";\"other\"\n\"3902377\";\"te li ni da\";\"other\"\n\"3902377\";\"torinida\";\"other\"\n\"3902377\";\"Тринидад\";\"other\"\n\"3902377\";\"トリニダ\";\"other\"\n\"3902377\";\"特立尼达\";\"other\"\n\"3902504\";\"Totoral\";\"main\"\n\"3902504\";\"Totora\";\"other\"\n\"3902523\";\"Totora\";\"main\"\n\"3902685\";\"Tomás Barrón\";\"main\"\n\"3902685\";\"Tomas Barron\";\"ascii\"\n\"3902685\";\"Eucaliptus\";\"other\"\n\"3903046\";\"Tiahuanaco\";\"main\"\n\"3903046\";\"Civilizacao Tiahuanaco\";\"other\"\n\"3903046\";\"Civilização Tiahuanaco\";\"other\"\n\"3903046\";\"Tiavanaku\";\"other\"\n\"3903046\";\"Tiuanako\";\"other\"\n\"3903046\";\"Tiwanaku\";\"other\"\n\"3903046\";\"tiwanaku\";\"other\"\n\"3903046\";\"Тиуанако\";\"other\"\n\"3903046\";\"טיאהואנקו\";\"other\"\n\"3903046\";\"ティワナク\";\"other\"\n\"3903320\";\"Tarija\";\"main\"\n\"3903320\";\"Ciudad Tarija\";\"other\"\n\"3903320\";\"Tarikha\";\"other\"\n\"3903320\";\"Тариха\";\"other\"\n\"3903342\";\"Tarata\";\"main\"\n\"3903391\";\"Tarabuco\";\"main\"\n\"3903987\";\"Sucre\";\"main\"\n\"3903987\";\"Chuqichaka\";\"other\"\n\"3903987\";\"Chuquisaca\";\"other\"\n\"3903987\";\"Ciudad Sucre\";\"other\"\n\"3903987\";\"Sukre\";\"other\"\n\"3903987\";\"Sukri\";\"other\"\n\"3903987\";\"Sukro\";\"other\"\n\"3903987\";\"Sukrė\";\"other\"\n\"3903987\";\"su ke lei\";\"other\"\n\"3903987\";\"sukeule\";\"other\"\n\"3903987\";\"sukure\";\"other\"\n\"3903987\";\"swqrh\";\"other\"\n\"3903987\";\"Сукре\";\"other\"\n\"3903987\";\"סוקרה\";\"other\"\n\"3903987\";\"スクレ\";\"other\"\n\"3903987\";\"苏克雷\";\"other\"\n\"3903987\";\"수크레\";\"other\"\n\"3904043\";\"Sorata\";\"main\"\n\"3904221\";\"Sipe Sipe\";\"main\"\n\"3904666\";\"Santiago del Torno\";\"main\"\n\"3904666\";\"El Torno\";\"other\"\n\"3904666\";\"Torno\";\"other\"\n\"3904793\";\"Santa Rosa\";\"main\"\n\"3904809\";\"Santa Rita\";\"main\"\n\"3904906\";\"Santa Cruz de la Sierra\";\"main\"\n\"3904906\";\"Ciudad Santa Cruz\";\"other\"\n\"3904906\";\"Ciudad de Santa Cruz de la Sierra\";\"other\"\n\"3904906\";\"Santa Cruz\";\"other\"\n\"3904906\";\"Santa-Krus-de-la-Sierra\";\"other\"\n\"3904906\";\"santakurusu\";\"other\"\n\"3904906\";\"Санта-Крус-де-ла-Сиерра\";\"other\"\n\"3904906\";\"سانتا کروز دلاسیه‌را\";\"other\"\n\"3904906\";\"サンタクルス\";\"other\"\n\"3904956\";\"Santa Bárbara\";\"main\"\n\"3904956\";\"Santa Barbara\";\"ascii\"\n\"3905084\";\"San Ramón\";\"main\"\n\"3905084\";\"San Ramon\";\"ascii\"\n\"3905088\";\"San Ramón\";\"main\"\n\"3905088\";\"San Ramon\";\"ascii\"\n\"3905159\";\"San Pedro\";\"main\"\n\"3905159\";\"San Pedro de Tiquina\";\"other\"\n\"3905206\";\"San Pablo\";\"main\"\n\"3905206\";\"San Pablo de Tiquina\";\"other\"\n\"3905206\";\"Tiguina\";\"other\"\n\"3905206\";\"Tiquina\";\"other\"\n\"3905453\";\"San Julian\";\"main\"\n\"3905462\";\"San Juan del Surutú\";\"main\"\n\"3905462\";\"San Juan del Surutu\";\"ascii\"\n\"3905462\";\"San Juan Surutu\";\"other\"\n\"3905658\";\"San Ignacio de Velasco\";\"main\"\n\"3905658\";\"San Ignacio\";\"other\"\n\"3905658\";\"San Ignacio Velasco\";\"other\"\n\"3905658\";\"San Ignacio de Loyola\";\"other\"\n\"3905775\";\"San Carlos\";\"main\"\n\"3905792\";\"San Borja\";\"main\"\n\"3905951\";\"Samaipata\";\"main\"\n\"3906209\";\"Rurrenabaque\";\"main\"\n\"3906209\";\"Rurre\";\"other\"\n\"3906466\";\"Riberalta\";\"main\"\n\"3906466\";\"riberaruta\";\"other\"\n\"3906466\";\"リベラルタ\";\"other\"\n\"3906478\";\"Reyes\";\"main\"\n\"3906765\";\"Quime\";\"main\"\n\"3907080\";\"Punata\";\"main\"\n\"3907080\";\"Ciudad Punata\";\"other\"\n\"3907159\";\"Puesto de Pailas\";\"main\"\n\"3907159\";\"Paila\";\"other\"\n\"3907159\";\"Puerto Paila\";\"other\"\n\"3907159\";\"Puerto Pailas\";\"other\"\n\"3907584\";\"Potosí\";\"main\"\n\"3907584\";\"Potosi\";\"ascii\"\n\"3907584\";\"Ciudad Potosi\";\"other\"\n\"3907584\";\"P'utuqsi\";\"other\"\n\"3907584\";\"Putusi\";\"other\"\n\"3907584\";\"potoshi\";\"other\"\n\"3907584\";\"pwtwsy\";\"other\"\n\"3907584\";\"Потоси\";\"other\"\n\"3907584\";\"פוטוסי\";\"other\"\n\"3907584\";\"ポトシ\";\"other\"\n\"3907646\";\"Portachuelo\";\"main\"\n\"3907685\";\"Poopó\";\"main\"\n\"3907685\";\"Poopo\";\"ascii\"\n\"3908339\";\"Patacamaya\";\"main\"\n\"3908339\";\"Patacmaya\";\"other\"\n\"3909010\";\"Pailón\";\"main\"\n\"3909010\";\"Pailon\";\"ascii\"\n\"3909010\";\"El Pailon\";\"other\"\n\"3909010\";\"El Pailón\";\"other\"\n\"3909010\";\"Puerto Ibanez\";\"other\"\n\"3909010\";\"Puerto Ibañez\";\"other\"\n\"3909038\";\"Padilla\";\"main\"\n\"3909234\";\"Oruro\";\"main\"\n\"3909234\";\"Ciudad Oruro\";\"other\"\n\"3909234\";\"Gruro\";\"other\"\n\"3909234\";\"Ururu\";\"other\"\n\"3909234\";\"Оруро\";\"other\"\n\"3909360\";\"Okinawa Número Uno\";\"main\"\n\"3909360\";\"Okinawa Numero Uno\";\"ascii\"\n\"3910027\";\"Montero\";\"main\"\n\"3910027\";\"Vibora\";\"other\"\n\"3910027\";\"Víbora\";\"other\"\n\"3910027\";\"Монтеро\";\"other\"\n\"3910094\";\"Monteagudo\";\"main\"\n\"3910094\";\"Sauces\";\"other\"\n\"3910094\";\"Villa Monteagudo\";\"other\"\n\"3910094\";\"Монтеагудо\";\"other\"\n\"3910291\";\"Mizque\";\"main\"\n\"3910291\";\"Ciudad Mizque\";\"other\"\n\"3910291\";\"Ciudad de Mizqu\";\"other\"\n\"3910291\";\"Ciudad de Mizque\";\"other\"\n\"3910343\";\"Mineros\";\"main\"\n\"3910758\";\"Mapiri\";\"main\"\n\"3910901\";\"Mairana\";\"main\"\n\"3910971\";\"Machacamarca\";\"main\"\n\"3910971\";\"Machakamarka\";\"other\"\n\"3911120\";\"Los Negros\";\"main\"\n\"3911120\";\"Estancia Los Negros\";\"other\"\n\"3911409\";\"Llallagua\";\"main\"\n\"3911512\";\"Limoncito\";\"main\"\n\"3911925\";\"La Paz\";\"main\"\n\"3911925\";\"Chukiyapu\";\"other\"\n\"3911925\";\"Chukiyawu\";\"other\"\n\"3911925\";\"Ciudad La Paz\";\"other\"\n\"3911925\";\"Civitas Pacis\";\"other\"\n\"3911925\";\"La Pasas\";\"other\"\n\"3911925\";\"La-Pas\";\"other\"\n\"3911925\";\"La-Pazo\";\"other\"\n\"3911925\";\"Soukre/La Paz\";\"other\"\n\"3911925\";\"la ba si\";\"other\"\n\"3911925\";\"labaz\";\"other\"\n\"3911925\";\"lapas\";\"other\"\n\"3911925\";\"lapaseu\";\"other\"\n\"3911925\";\"rapasu\";\"other\"\n\"3911925\";\"Σούκρε/Λα Παζ\";\"other\"\n\"3911925\";\"Ла-Пас\";\"other\"\n\"3911925\";\"לה פאס\";\"other\"\n\"3911925\";\"لاباز\";\"other\"\n\"3911925\";\"ลาปาซ\";\"other\"\n\"3911925\";\"ላፓዝ\";\"other\"\n\"3911925\";\"ラパス\";\"other\"\n\"3911925\";\"拉巴斯\";\"other\"\n\"3911925\";\"라파스\";\"other\"\n\"3912119\";\"Lahuachaca\";\"main\"\n\"3912418\";\"La Bélgica\";\"main\"\n\"3912418\";\"La Belgica\";\"ascii\"\n\"3913271\";\"Jorochito\";\"main\"\n\"3913271\";\"Jorochiba\";\"other\"\n\"3913271\";\"Jorochita\";\"other\"\n\"3913985\";\"Isla del Sol\";\"main\"\n\"3913985\";\"Estancia Yumani\";\"other\"\n\"3914084\";\"Irpa Irpa\";\"main\"\n\"3914715\";\"Huatajata\";\"main\"\n\"3914839\";\"Huanuni\";\"main\"\n\"3914839\";\"Villa Huanuni\";\"other\"\n\"3915350\";\"Guayaramerín\";\"main\"\n\"3915350\";\"Guayaramerin\";\"ascii\"\n\"3915350\";\"Guajara-Mirim\";\"other\"\n\"3915350\";\"Puerto Sucre\";\"other\"\n\"3917939\";\"Entre Ríos\";\"main\"\n\"3917939\";\"Entre Rios\";\"ascii\"\n\"3917939\";\"San Luis\";\"other\"\n\"3918937\";\"Cotoca\";\"main\"\n\"3919085\";\"Coroico\";\"main\"\n\"3919085\";\"Corioco\";\"other\"\n\"3919085\";\"Villa de Sagarnaga\";\"other\"\n\"3919085\";\"Villa de Sagárnaga\";\"other\"\n\"3919097\";\"Coripata\";\"main\"\n\"3919186\";\"Copacabana\";\"main\"\n\"3919352\";\"Concepción\";\"main\"\n\"3919352\";\"Concepcion\";\"ascii\"\n\"3919703\";\"Comarapa\";\"main\"\n\"3919715\";\"Colquiri\";\"main\"\n\"3919720\";\"Colquechaca\";\"main\"\n\"3919720\";\"Ciudad Colquechaca\";\"other\"\n\"3919720\";\"Ciudad de Colquechaca\";\"other\"\n\"3919813\";\"Colomi\";\"main\"\n\"3919884\";\"Colchani\";\"main\"\n\"3919886\";\"Colchani\";\"main\"\n\"3919886\";\"Calcheni\";\"other\"\n\"3919968\";\"Cochabamba\";\"main\"\n\"3919968\";\"Ciudad Cochabamba\";\"other\"\n\"3919968\";\"Kochabamba\";\"other\"\n\"3919968\";\"Kuchawampa\";\"other\"\n\"3919968\";\"Quchapampa\";\"other\"\n\"3919968\";\"kochabanba\";\"other\"\n\"3919968\";\"qwz'bmbh\";\"other\"\n\"3919968\";\"Кочабамба\";\"other\"\n\"3919968\";\"קוצ'במבה\";\"other\"\n\"3919968\";\"コチャバンバ\";\"other\"\n\"3919998\";\"Cobija\";\"main\"\n\"3919998\";\"Cobila\";\"other\"\n\"3919998\";\"Cobya\";\"other\"\n\"3919998\";\"Kobikha\";\"other\"\n\"3919998\";\"Puerto Cobija\";\"other\"\n\"3919998\";\"Кобиха\";\"other\"\n\"3920016\";\"Cliza\";\"main\"\n\"3920244\";\"Chulumani\";\"main\"\n\"3920736\";\"Chimoré\";\"main\"\n\"3920736\";\"Chimore\";\"ascii\"\n\"3921141\";\"Charagua\";\"main\"\n\"3921355\";\"Challapata\";\"main\"\n\"3922125\";\"Capinota\";\"main\"\n\"3922414\";\"Camiri\";\"main\"\n\"3922414\";\"Kamiri\";\"other\"\n\"3922414\";\"Refineria Camiri\";\"other\"\n\"3922414\";\"Камири\";\"other\"\n\"3922451\";\"Camargo\";\"main\"\n\"3922451\";\"Cinti\";\"other\"\n\"3922965\";\"Buena Vista\";\"main\"\n\"3922965\";\"Bella Vista\";\"other\"\n\"3923015\";\"Boyuibe\";\"main\"\n\"3923145\";\"Betanzos\";\"main\"\n\"3923570\";\"Atocha\";\"main\"\n\"3923644\";\"Ascensión\";\"main\"\n\"3923644\";\"Ascension\";\"ascii\"\n\"3923644\";\"Anez\";\"other\"\n\"3923644\";\"Ascencion\";\"other\"\n\"3923644\";\"Ascención\";\"other\"\n\"3923644\";\"Asencion\";\"other\"\n\"3923644\";\"Añez\";\"other\"\n\"3923770\";\"Arani\";\"main\"\n\"3924341\";\"Aiquile\";\"main\"\n\"3924610\";\"Achacachi\";\"main\"\n\"3924610\";\"Villa Lealtad\";\"other\"\n\"3924668\";\"Abapó\";\"main\"\n\"3924668\";\"Abapo\";\"ascii\"\n\"3924668\";\"Mision Abapo\";\"other\"\n\"3924668\";\"Misión Abapó\";\"other\"\n\"3384983\";\"Vitorino Freire\";\"main\"\n\"3384983\";\"Agua Branca\";\"other\"\n\"3384983\";\"Centro dos Boas\";\"other\"\n\"3384983\";\"Senador Vitorino Freire\";\"other\"\n\"3384983\";\"Água Branca\";\"other\"\n\"3384986\";\"Vitória do Mearim\";\"main\"\n\"3384986\";\"Vitoria do Mearim\";\"ascii\"\n\"3384986\";\"Baixo Mearim\";\"other\"\n\"3384986\";\"Mearim\";\"other\"\n\"3384986\";\"Victoria do Baixo Mearim\";\"other\"\n\"3384986\";\"Vitoria do Baixo Mearim\";\"other\"\n\"3384986\";\"Vitória do Baixo Mearim\";\"other\"\n\"3384987\";\"Vitória de Santo Antão\";\"main\"\n\"3384987\";\"Vitoria de Santo Antao\";\"ascii\"\n\"3384987\";\"Victoria\";\"other\"\n\"3384987\";\"Vitoria\";\"other\"\n\"3384987\";\"Vitorija-de-Santu-Antan\";\"other\"\n\"3384987\";\"Vitória\";\"other\"\n\"3384987\";\"Витория-де-Санту-Антан\";\"other\"\n\"3385022\";\"Viseu\";\"main\"\n\"3385022\";\"Vizeu\";\"other\"\n\"3385077\";\"Conde\";\"main\"\n\"3385077\";\"Jacoca\";\"other\"\n\"3385088\";\"Vigia\";\"main\"\n\"3385106\";\"Viçosa do Ceará\";\"main\"\n\"3385106\";\"Vicosa do Ceara\";\"ascii\"\n\"3385106\";\"Vicosa\";\"other\"\n\"3385106\";\"Viçosa\";\"other\"\n\"3385109\";\"Viçosa\";\"main\"\n\"3385109\";\"Vicosa\";\"ascii\"\n\"3385109\";\"Assembleia\";\"other\"\n\"3385109\";\"Assembléia\";\"other\"\n\"3385118\";\"Vicência\";\"main\"\n\"3385118\";\"Vicencia\";\"ascii\"\n\"3385122\";\"Viana\";\"main\"\n\"3385122\";\"Vianna\";\"other\"\n\"3385122\";\"Виана\";\"other\"\n\"3385467\";\"Várzea Alegre\";\"main\"\n\"3385467\";\"Varzea Alegre\";\"ascii\"\n\"3385504\";\"Varjota\";\"main\"\n\"3385538\";\"Vargem Grande\";\"main\"\n\"3385592\";\"Valença do Piauí\";\"main\"\n\"3385592\";\"Valenca do Piaui\";\"ascii\"\n\"3385592\";\"Berlengas\";\"other\"\n\"3385592\";\"Valenca\";\"other\"\n\"3385592\";\"Valença\";\"other\"\n\"3385645\";\"Urucurituba\";\"main\"\n\"3385658\";\"Uruçuí\";\"main\"\n\"3385658\";\"Urucui\";\"ascii\"\n\"3385658\";\"Urussuhy\";\"other\"\n\"3385658\";\"Urussui\";\"other\"\n\"3385658\";\"Urussuí\";\"other\"\n\"3385670\";\"Urucará\";\"main\"\n\"3385670\";\"Urucara\";\"ascii\"\n\"3385674\";\"Uruburetama\";\"main\"\n\"3385674\";\"Arraial\";\"other\"\n\"3385674\";\"Sao Joao de Uruburetama\";\"other\"\n\"3385674\";\"São João de Uruburetama\";\"other\"\n\"3385726\";\"Urbano Santos\";\"main\"\n\"3385736\";\"Upanema\";\"main\"\n\"3385742\";\"União dos Palmares\";\"main\"\n\"3385742\";\"Uniao dos Palmares\";\"ascii\"\n\"3385742\";\"Uniao\";\"other\"\n\"3385742\";\"União\";\"other\"\n\"3385745\";\"União\";\"main\"\n\"3385745\";\"Uniao\";\"ascii\"\n\"3385758\";\"Umirim\";\"main\"\n\"3385758\";\"Riacho da Sela\";\"other\"\n\"3385758\";\"Riacho da Sella\";\"other\"\n\"3385758\";\"Riachuelo\";\"other\"\n\"3385778\";\"Umbuzeiro\";\"main\"\n\"3385826\";\"Umarizal\";\"main\"\n\"3385826\";\"Divinopolis\";\"other\"\n\"3385850\";\"Uiraúna\";\"main\"\n\"3385850\";\"Uirauna\";\"ascii\"\n\"3385850\";\"Belem\";\"other\"\n\"3385850\";\"Belém\";\"other\"\n\"3385850\";\"Canaa\";\"other\"\n\"3385850\";\"Canaã\";\"other\"\n\"3385873\";\"Ubajara\";\"main\"\n\"3385883\";\"Uauá\";\"main\"\n\"3385883\";\"Uaua\";\"ascii\"\n\"3385899\";\"Tutóia\";\"main\"\n\"3385899\";\"Tutoia\";\"ascii\"\n\"3385899\";\"Tutoya\";\"other\"\n\"3385908\";\"Turiaçu\";\"main\"\n\"3385908\";\"Turiacu\";\"ascii\"\n\"3385908\";\"Turiassu\";\"other\"\n\"3385908\";\"Turiassú\";\"other\"\n\"3385908\";\"Tury-Assu\";\"other\"\n\"3385908\";\"Tury-Assú\";\"other\"\n\"3385920\";\"Tupanatinga\";\"main\"\n\"3385920\";\"Santa Clara\";\"other\"\n\"3385922\";\"Tuntum\";\"main\"\n\"3385922\";\"Tumtum\";\"other\"\n\"3385935\";\"Tucuruí\";\"main\"\n\"3385935\";\"Tucurui\";\"ascii\"\n\"3385935\";\"Alcobaca\";\"other\"\n\"3385935\";\"Alcobaça\";\"other\"\n\"3385980\";\"Tucumã\";\"main\"\n\"3385980\";\"Tucuma\";\"ascii\"\n\"3386027\";\"Triunfo\";\"main\"\n\"3386042\";\"Trindade\";\"main\"\n\"3386177\";\"Trairi\";\"main\"\n\"3386177\";\"Trahiry\";\"other\"\n\"3386198\";\"Traipu\";\"main\"\n\"3386198\";\"Porto da Folha\";\"other\"\n\"3386198\";\"Pôrto da Fôlha\";\"other\"\n\"3386213\";\"Touros\";\"main\"\n\"3386264\";\"Toritama\";\"main\"\n\"3386264\";\"Torres\";\"other\"\n\"3386264\";\"Торитама\";\"other\"\n\"3386279\";\"Tomé Açu\";\"main\"\n\"3386279\";\"Tome Acu\";\"ascii\"\n\"3386361\";\"Timon\";\"main\"\n\"3386361\";\"Flores\";\"other\"\n\"3386361\";\"Тимон\";\"other\"\n\"3386372\";\"Timbiras\";\"main\"\n\"3386372\";\"Monte Alegre\";\"other\"\n\"3386372\";\"Urubu\";\"other\"\n\"3386372\";\"Urubú\";\"other\"\n\"3386396\";\"Timbaúba\";\"main\"\n\"3386396\";\"Timbauba\";\"ascii\"\n\"3386396\";\"Gurjao\";\"other\"\n\"3386396\";\"Gurjão\";\"other\"\n\"3386449\";\"Tianguá\";\"main\"\n\"3386449\";\"Tiangua\";\"ascii\"\n\"3386449\";\"Barracao\";\"other\"\n\"3386449\";\"Barracão\";\"other\"\n\"3386467\";\"Terra Santa\";\"main\"\n\"3386496\";\"Teresina\";\"main\"\n\"3386496\";\"Poti\";\"other\"\n\"3386496\";\"Terezina\";\"other\"\n\"3386496\";\"Theresina\";\"other\"\n\"3386496\";\"Therezina\";\"other\"\n\"3386496\";\"Vila Nova do Poti\";\"other\"\n\"3386496\";\"trzynh\";\"other\"\n\"3386496\";\"Терезина\";\"other\"\n\"3386496\";\"תרזינה\";\"other\"\n\"3386533\";\"Teixeira\";\"main\"\n\"3386543\";\"Tavares\";\"main\"\n\"3386567\";\"São João dos Inhamuns\";\"main\"\n\"3386567\";\"Sao Joao dos Inhamuns\";\"ascii\"\n\"3386622\";\"Taquaritinga do Norte\";\"main\"\n\"3386622\";\"Jaquaritinga do Norte\";\"other\"\n\"3386622\";\"Taquaretinga\";\"other\"\n\"3386622\";\"Taquaritinga\";\"other\"\n\"3386628\";\"Taquarana\";\"main\"\n\"3386628\";\"Cana Brava dos Pais\";\"other\"\n\"3386628\";\"Cana-Brava\";\"other\"\n\"3386628\";\"Canna Brava\";\"other\"\n\"3386693\";\"Taperoá\";\"main\"\n\"3386693\";\"Taperoa\";\"ascii\"\n\"3386693\";\"Batalhao\";\"other\"\n\"3386693\";\"Batalhão\";\"other\"\n\"3386842\";\"Tangará\";\"main\"\n\"3386842\";\"Tangara\";\"ascii\"\n\"3386842\";\"Riacho\";\"other\"\n\"3386874\";\"Tamboril\";\"main\"\n\"3386874\";\"Tambari\";\"other\"\n\"3386931\";\"Tamandaré\";\"main\"\n\"3386931\";\"Tamandare\";\"ascii\"\n\"3386957\";\"Taipu\";\"main\"\n\"3387082\";\"Tabira\";\"main\"\n\"3387082\";\"Espirito Santo\";\"other\"\n\"3387082\";\"Madeira\";\"other\"\n\"3387115\";\"Surubim\";\"main\"\n\"3387130\";\"Sumé\";\"main\"\n\"3387130\";\"Sume\";\"ascii\"\n\"3387130\";\"Sao Thome\";\"other\"\n\"3387130\";\"Sao Tome\";\"other\"\n\"3387130\";\"São Thomé\";\"other\"\n\"3387130\";\"São Tomé\";\"other\"\n\"3387202\";\"Sousa\";\"main\"\n\"3387202\";\"Souza\";\"other\"\n\"3387204\";\"Soure\";\"main\"\n\"3387258\";\"Soledade\";\"main\"\n\"3387258\";\"Ibiapinopolis\";\"other\"\n\"3387258\";\"Ibiapinópolis\";\"other\"\n\"3387266\";\"Solânea\";\"main\"\n\"3387266\";\"Solanea\";\"ascii\"\n\"3387266\";\"Moreno\";\"other\"\n\"3387296\";\"Sobral\";\"main\"\n\"3387296\";\"Januaria de Acaracu\";\"other\"\n\"3387296\";\"Januária de Acaracu\";\"other\"\n\"3387296\";\"Sobrat\";\"other\"\n\"3387296\";\"Собрал\";\"other\"\n\"3387620\";\"Simplício Mendes\";\"main\"\n\"3387620\";\"Simplicio Mendes\";\"ascii\"\n\"3387625\";\"Simões\";\"main\"\n\"3387625\";\"Simoes\";\"ascii\"\n\"3387644\";\"Severiano Melo\";\"main\"\n\"3387663\";\"Sertânia\";\"main\"\n\"3387663\";\"Sertania\";\"ascii\"\n\"3387663\";\"Alagoa de Baixo\";\"other\"\n\"3387786\";\"Serra Talhada\";\"main\"\n\"3387786\";\"Vila Bela\";\"other\"\n\"3387786\";\"Villa Bella\";\"other\"\n\"3387880\";\"Serra Branca\";\"main\"\n\"3387926\";\"Senador Pompeu\";\"main\"\n\"3387928\";\"Senador José Porfírio\";\"main\"\n\"3387928\";\"Senador Jose Porfirio\";\"ascii\"\n\"3387987\";\"Satuba\";\"main\"\n\"3388092\";\"São Tomé\";\"main\"\n\"3388092\";\"Sao Tome\";\"ascii\"\n\"3388092\";\"Sao Thome\";\"other\"\n\"3388092\";\"São Thomé\";\"other\"\n\"3388112\";\"São Sebastião\";\"main\"\n\"3388112\";\"Sao Sebastiao\";\"ascii\"\n\"3388112\";\"Salome\";\"other\"\n\"3388112\";\"Salomé\";\"other\"\n\"3388112\";\"San-Sebast'jan\";\"other\"\n\"3388112\";\"Сан-Себастьян\";\"other\"\n\"3388145\";\"São Raimundo Nonato\";\"main\"\n\"3388145\";\"Sao Raimundo Nonato\";\"ascii\"\n\"3388145\";\"Raimundo Nonato\";\"other\"\n\"3388145\";\"Sao Raymundo Nonato\";\"other\"\n\"3388147\";\"São Raimundo das Mangabeiras\";\"main\"\n\"3388147\";\"Sao Raimundo das Mangabeiras\";\"ascii\"\n\"3388147\";\"Sao Raymundo do Rio Neves\";\"other\"\n\"3388147\";\"São Raymundo do Rio Neves\";\"other\"\n\"3388173\";\"São Pedro do Piauí\";\"main\"\n\"3388173\";\"Sao Pedro do Piaui\";\"ascii\"\n\"3388173\";\"Sao Pedro\";\"other\"\n\"3388173\";\"São Pedro\";\"other\"\n\"3388238\";\"São Paulo do Potengi\";\"main\"\n\"3388238\";\"Sao Paulo do Potengi\";\"ascii\"\n\"3388238\";\"Potengy\";\"other\"\n\"3388266\";\"São Miguel do Tapuio\";\"main\"\n\"3388266\";\"Sao Miguel do Tapuio\";\"ascii\"\n\"3388266\";\"Deliciosa\";\"other\"\n\"3388266\";\"Sao Miguel\";\"other\"\n\"3388266\";\"São Miguel\";\"other\"\n\"3388266\";\"Tapuio\";\"other\"\n\"3388269\";\"São Miguel dos Campos\";\"main\"\n\"3388269\";\"Sao Miguel dos Campos\";\"ascii\"\n\"3388269\";\"San-Migel'-dus-Kampus\";\"other\"\n\"3388269\";\"Sao Miguel\";\"other\"\n\"3388269\";\"Sao Miguel De Campos\";\"other\"\n\"3388269\";\"São Miguel\";\"other\"\n\"3388269\";\"Сан-Мигель-дус-Кампус\";\"other\"\n\"3388270\";\"São Miguel do Guamá\";\"main\"\n\"3388270\";\"Sao Miguel do Guama\";\"ascii\"\n\"3388270\";\"Guama\";\"other\"\n\"3388270\";\"Guamá\";\"other\"\n\"3388304\";\"São Miguel\";\"main\"\n\"3388304\";\"Sao Miguel\";\"ascii\"\n\"3388318\";\"São Mateus do Maranhão\";\"main\"\n\"3388318\";\"Sao Mateus do Maranhao\";\"ascii\"\n\"3388341\";\"São Luís do Quitunde\";\"main\"\n\"3388341\";\"Sao Luis do Quitunde\";\"ascii\"\n\"3388341\";\"Sao Luiz de Quitunde\";\"other\"\n\"3388341\";\"Sao Luiz do Quitunde\";\"other\"\n\"3388341\";\"São Luiz de Quitunde\";\"other\"\n\"3388341\";\"São Luiz do Quitunde\";\"other\"\n\"3388368\";\"São Luís\";\"main\"\n\"3388368\";\"Sao Luis\";\"ascii\"\n\"3388368\";\"Maranhao\";\"other\"\n\"3388368\";\"Maranhão\";\"other\"\n\"3388368\";\"San-Luis\";\"other\"\n\"3388368\";\"Sao Luis do Maranhao\";\"other\"\n\"3388368\";\"Sao Luiz\";\"other\"\n\"3388368\";\"Sao Luiz de Maranhao\";\"other\"\n\"3388368\";\"Sao Luiz do Maranhao\";\"other\"\n\"3388368\";\"São Luis\";\"other\"\n\"3388368\";\"São Luiz\";\"other\"\n\"3388368\";\"São Luiz de Maranhão\";\"other\"\n\"3388368\";\"São Luiz do Maranhão\";\"other\"\n\"3388368\";\"São Luís do Maranhão\";\"other\"\n\"3388368\";\"Сан-Луис\";\"other\"\n\"3388368\";\"סאו לואיס\";\"other\"\n\"3388376\";\"São Lourenço da Mata\";\"main\"\n\"3388376\";\"Sao Lourenco da Mata\";\"ascii\"\n\"3388376\";\"San-Lorensu-da-Mata\";\"other\"\n\"3388376\";\"Sao Lourenco\";\"other\"\n\"3388376\";\"Sao Lourenco da Matta\";\"other\"\n\"3388376\";\"São Lourenço\";\"other\"\n\"3388376\";\"São Lourenço da Matta\";\"other\"\n\"3388376\";\"Сан-Лоренсу-да-Мата\";\"other\"\n\"3388435\";\"São José do Egito\";\"main\"\n\"3388435\";\"Sao Jose do Egito\";\"ascii\"\n\"3388435\";\"Queimadas\";\"other\"\n\"3388435\";\"Sao Jose da Ingazeira\";\"other\"\n\"3388435\";\"Sao Jose das Queimadas\";\"other\"\n\"3388435\";\"Sao Jose do Egypto\";\"other\"\n\"3388435\";\"São José da Ingàzeira\";\"other\"\n\"3388435\";\"São José das Queimadas\";\"other\"\n\"3388435\";\"São José do Egypto\";\"other\"\n\"3388437\";\"São José do Campestre\";\"main\"\n\"3388437\";\"Sao Jose do Campestre\";\"ascii\"\n\"3388437\";\"Campestre\";\"other\"\n\"3388440\";\"São José do Belmonte\";\"main\"\n\"3388440\";\"Sao Jose do Belmonte\";\"ascii\"\n\"3388440\";\"Belmonte\";\"other\"\n\"3388440\";\"Manicobal\";\"other\"\n\"3388440\";\"Manissobal\";\"other\"\n\"3388440\";\"Maniçobal\";\"other\"\n\"3388441\";\"São José de Ribamar\";\"main\"\n\"3388441\";\"Sao Jose de Ribamar\";\"ascii\"\n\"3388441\";\"Ribamar\";\"other\"\n\"3388441\";\"Sao-Jose-do-Ribamar\";\"other\"\n\"3388441\";\"São-José-do-Ribamar\";\"other\"\n\"3388442\";\"São José de Piranhas\";\"main\"\n\"3388442\";\"Sao Jose de Piranhas\";\"ascii\"\n\"3388442\";\"Jatoba\";\"other\"\n\"3388442\";\"Jatobá\";\"other\"\n\"3388443\";\"São José de Mipibu\";\"main\"\n\"3388443\";\"Sao Jose de Mipibu\";\"ascii\"\n\"3388443\";\"Sao Jose Do Mipibu\";\"other\"\n\"3388447\";\"São José da Tapera\";\"main\"\n\"3388447\";\"Sao Jose da Tapera\";\"ascii\"\n\"3388454\";\"São José da Laje\";\"main\"\n\"3388454\";\"Sao Jose da Laje\";\"ascii\"\n\"3388454\";\"Jose da Lage\";\"other\"\n\"3388454\";\"José da Lage\";\"other\"\n\"3388454\";\"Sao Jose da Lage\";\"other\"\n\"3388454\";\"São José da Lage\";\"other\"\n\"3388456\";\"São José da Coroa Grande\";\"main\"\n\"3388456\";\"Sao Jose da Coroa Grande\";\"ascii\"\n\"3388456\";\"Puiracu\";\"other\"\n\"3388456\";\"Puirassu\";\"other\"\n\"3388456\";\"Puirassú\";\"other\"\n\"3388456\";\"Puiraçu\";\"other\"\n\"3388567\";\"São Joaquim do Monte\";\"main\"\n\"3388567\";\"Sao Joaquim do Monte\";\"ascii\"\n\"3388567\";\"Camaratuba\";\"other\"\n\"3388567\";\"Sao Joaquim\";\"other\"\n\"3388567\";\"São Joaquim\";\"other\"\n\"3388615\";\"São João dos Patos\";\"main\"\n\"3388615\";\"Sao Joao dos Patos\";\"ascii\"\n\"3388618\";\"São João do Piauí\";\"main\"\n\"3388618\";\"Sao Joao do Piaui\";\"ascii\"\n\"3388618\";\"Sao Joao Do Piauhy\";\"other\"\n\"3388618\";\"São Joao Do Piauhy\";\"other\"\n\"3388626\";\"São João de Pirabas\";\"main\"\n\"3388626\";\"Sao Joao de Pirabas\";\"ascii\"\n\"3388635\";\"São João Batista\";\"main\"\n\"3388635\";\"Sao Joao Batista\";\"ascii\"\n\"3388635\";\"Ibipeuara\";\"other\"\n\"3388660\";\"São João\";\"main\"\n\"3388660\";\"Sao Joao\";\"ascii\"\n\"3388713\";\"São Gonçalo do Amarante\";\"main\"\n\"3388713\";\"Sao Goncalo do Amarante\";\"ascii\"\n\"3388713\";\"Felipe Camarao\";\"other\"\n\"3388713\";\"Felipe Camarão\";\"other\"\n\"3388713\";\"Filipe Camarao\";\"other\"\n\"3388713\";\"Filipe Camarão\";\"other\"\n\"3388713\";\"Sao Goncalo\";\"other\"\n\"3388713\";\"São Gonçalo\";\"other\"\n\"3388714\";\"São Gonçalo do Amarante\";\"main\"\n\"3388714\";\"Sao Goncalo do Amarante\";\"ascii\"\n\"3388714\";\"Anacetaba\";\"other\"\n\"3388714\";\"Sao Goncalo\";\"other\"\n\"3388714\";\"São Gonçalo\";\"other\"\n\"3388760\";\"São Geraldo do Araguaia\";\"main\"\n\"3388760\";\"Sao Geraldo do Araguaia\";\"ascii\"\n\"3388847\";\"São Félix do Xingu\";\"main\"\n\"3388847\";\"Sao Felix do Xingu\";\"ascii\"\n\"3388847\";\"Sao Felix\";\"other\"\n\"3388847\";\"São Felix\";\"other\"\n\"3388868\";\"São Domingos do Maranhão\";\"main\"\n\"3388868\";\"Sao Domingos do Maranhao\";\"ascii\"\n\"3388868\";\"Pucuma\";\"other\"\n\"3388868\";\"Pucumã\";\"other\"\n\"3388926\";\"São Caetano de Odivelas\";\"main\"\n\"3388926\";\"Sao Caetano de Odivelas\";\"ascii\"\n\"3388926\";\"Sao Caetano de Odivellas\";\"other\"\n\"3388926\";\"São Caetano de Odivellas\";\"other\"\n\"3388949\";\"São Bernardo\";\"main\"\n\"3388949\";\"Sao Bernardo\";\"ascii\"\n\"3388949\";\"Sao Bernardo do Parnahyba\";\"other\"\n\"3388949\";\"São Bernardo do Parnahyba\";\"other\"\n\"3388991\";\"São Bento\";\"main\"\n\"3388991\";\"Sao Bento\";\"ascii\"\n\"3389006\";\"São Bento\";\"main\"\n\"3389006\";\"Sao Bento\";\"ascii\"\n\"3389006\";\"San-Bentu\";\"other\"\n\"3389006\";\"Sao Benito dos Perizes\";\"other\"\n\"3389006\";\"Sao Bento das Perdizes\";\"other\"\n\"3389006\";\"Sao Bento dos Perizes\";\"other\"\n\"3389006\";\"São Benito dos Perizes\";\"other\"\n\"3389006\";\"São Bento das Perdizes\";\"other\"\n\"3389006\";\"Сан-Бенту\";\"other\"\n\"3389012\";\"São Benedito do Rio Preto\";\"main\"\n\"3389012\";\"Sao Benedito do Rio Preto\";\"ascii\"\n\"3389012\";\"Curuzu\";\"other\"\n\"3389012\";\"Sao Benedicto\";\"other\"\n\"3389012\";\"Sao Benedito\";\"other\"\n\"3389012\";\"São Benedicto\";\"other\"\n\"3389012\";\"São Benedito\";\"other\"\n\"3389062\";\"Santo Antônio do Tauá\";\"main\"\n\"3389062\";\"Santo Antonio do Taua\";\"ascii\"\n\"3389062\";\"Santo Antonio\";\"other\"\n\"3389062\";\"Santo Antonio de Taua\";\"other\"\n\"3389062\";\"Santo Antônio\";\"other\"\n\"3389062\";\"Santo Antônio de Tauá\";\"other\"\n\"3389134\";\"Santo Antônio\";\"main\"\n\"3389134\";\"Santo Antonio\";\"ascii\"\n\"3389134\";\"Padre Miguelinho\";\"other\"\n\"3389321\";\"Santa Rita\";\"main\"\n\"3389339\";\"Santa Rita\";\"main\"\n\"3389339\";\"Санта Рита\";\"other\"\n\"3389353\";\"Santarém\";\"main\"\n\"3389353\";\"Santarem\";\"ascii\"\n\"3389353\";\"Santaren\";\"other\"\n\"3389353\";\"Сантарен\";\"other\"\n\"3389358\";\"Santa Quitéria do Maranhão\";\"main\"\n\"3389358\";\"Santa Quiteria do Maranhao\";\"ascii\"\n\"3389358\";\"Bacuri\";\"other\"\n\"3389358\";\"Bacurí\";\"other\"\n\"3389358\";\"Santa Quiteria\";\"other\"\n\"3389358\";\"Santa Quitéria\";\"other\"\n\"3389361\";\"Santa Quitéria\";\"main\"\n\"3389361\";\"Santa Quiteria\";\"ascii\"\n\"3389380\";\"Santana do Mundaú\";\"main\"\n\"3389380\";\"Santana do Mundau\";\"ascii\"\n\"3389380\";\"Mundahu Mirim\";\"other\"\n\"3389380\";\"Mundahú Mirim\";\"other\"\n\"3389380\";\"Mundau Mirim\";\"other\"\n\"3389380\";\"Mundaú Mirim\";\"other\"\n\"3389381\";\"Santana do Matos\";\"main\"\n\"3389381\";\"Sant'Anna dos Mattos\";\"other\"\n\"3389384\";\"Santana do Ipanema\";\"main\"\n\"3389384\";\"Sant'Anna do Ipanema\";\"other\"\n\"3389384\";\"Santana-du-Ipanema\";\"other\"\n\"3389384\";\"Сантана-ду-Ипанема\";\"other\"\n\"3389387\";\"Santana do Acaraú\";\"main\"\n\"3389387\";\"Santana do Acarau\";\"ascii\"\n\"3389387\";\"Licania\";\"other\"\n\"3389387\";\"Sant'Anna\";\"other\"\n\"3389387\";\"Santana\";\"other\"\n\"3389459\";\"Santa Maria do Pará\";\"main\"\n\"3389459\";\"Santa Maria do Para\";\"ascii\"\n\"3389459\";\"Santa Maria\";\"other\"\n\"3389462\";\"Santa Maria da Boa Vista\";\"main\"\n\"3389462\";\"Boa Vista\";\"other\"\n\"3389462\";\"Coripos\";\"other\"\n\"3389462\";\"Coripós\";\"other\"\n\"3389462\";\"Santa Maria Boa Vista\";\"other\"\n\"3389557\";\"Santa Luzia\";\"main\"\n\"3389560\";\"Santa Luzia\";\"main\"\n\"3389609\";\"Santa Inês\";\"main\"\n\"3389609\";\"Santa Ines\";\"ascii\"\n\"3389609\";\"Ines\";\"other\"\n\"3389609\";\"Inês\";\"other\"\n\"3389609\";\"Santa-Ines\";\"other\"\n\"3389609\";\"Санта-Инес\";\"other\"\n\"3389622\";\"Santa Helena\";\"main\"\n\"3389652\";\"Santa Cruz do Capibaribe\";\"main\"\n\"3389652\";\"Capibaribe\";\"other\"\n\"3389652\";\"Santa Cruz\";\"other\"\n\"3389673\";\"Santa Cruz\";\"main\"\n\"3389822\";\"Salinópolis\";\"main\"\n\"3389822\";\"Salinopolis\";\"ascii\"\n\"3389822\";\"Salinas\";\"other\"\n\"3389860\";\"Salgueiro\";\"main\"\n\"3389860\";\"Salgejru\";\"other\"\n\"3389860\";\"Salqueiro\";\"other\"\n\"3389860\";\"Салгейру\";\"other\"\n\"3389873\";\"Salgado de São Félix\";\"main\"\n\"3389873\";\"Salgado de Sao Felix\";\"ascii\"\n\"3389873\";\"Abura\";\"other\"\n\"3389873\";\"Aburá\";\"other\"\n\"3389873\";\"Ibura\";\"other\"\n\"3389873\";\"Salgada\";\"other\"\n\"3389873\";\"Salgado\";\"other\"\n\"3390160\";\"Russas\";\"main\"\n\"3390160\";\"Rucas\";\"other\"\n\"3390160\";\"Ruças\";\"other\"\n\"3390160\";\"Sao Bernardo das Russas\";\"other\"\n\"3390160\";\"São Bernardo das Russas\";\"other\"\n\"3390280\";\"Rio Tinto\";\"main\"\n\"3390288\";\"Rio Largo\";\"main\"\n\"3390295\";\"Rio Formoso\";\"main\"\n\"3390326\";\"Ribeirão\";\"main\"\n\"3390326\";\"Ribeirao\";\"ascii\"\n\"3390581\";\"Riachão\";\"main\"\n\"3390581\";\"Riachao\";\"ascii\"\n\"3390581\";\"Riachaq\";\"other\"\n\"3390659\";\"Reriutaba\";\"main\"\n\"3390659\";\"Santa Cruz\";\"other\"\n\"3390674\";\"Remígio\";\"main\"\n\"3390674\";\"Remigio\";\"ascii\"\n\"3390674\";\"Lagoa do Remigio\";\"other\"\n\"3390674\";\"Lagôa do Remigio\";\"other\"\n\"3390700\";\"Regeneração\";\"main\"\n\"3390700\";\"Regeneracao\";\"ascii\"\n\"3390732\";\"Redenção\";\"main\"\n\"3390732\";\"Redencao\";\"ascii\"\n\"3390732\";\"Redempcao\";\"other\"\n\"3390732\";\"Redempção\";\"other\"\n\"3390760\";\"Recife\";\"main\"\n\"3390760\";\"Arrecife\";\"other\"\n\"3390760\";\"Mauricea\";\"other\"\n\"3390760\";\"Mauricéa\";\"other\"\n\"3390760\";\"Pernambuco\";\"other\"\n\"3390760\";\"Resife\";\"other\"\n\"3390760\";\"Resifi\";\"other\"\n\"3390760\";\"lei xi fei\";\"other\"\n\"3390760\";\"reshife\";\"other\"\n\"3390760\";\"rsyph\";\"other\"\n\"3390760\";\"Ресифе\";\"other\"\n\"3390760\";\"Ресифи\";\"other\"\n\"3390760\";\"רסיפה\";\"other\"\n\"3390760\";\"レシフェ\";\"other\"\n\"3390760\";\"累西腓\";\"other\"\n\"3390814\";\"Raposa\";\"main\"\n\"3390896\";\"Quixeré\";\"main\"\n\"3390896\";\"Quixere\";\"ascii\"\n\"3390901\";\"Quixeramobim\";\"main\"\n\"3390901\";\"Nova Vila do Campo Maior\";\"other\"\n\"3390901\";\"Santo Antonio do Bogueirao de Quixeramobim\";\"other\"\n\"3390901\";\"Santo Antônio do Bogueirão de Quixeramobim\";\"other\"\n\"3390907\";\"Quixadá\";\"main\"\n\"3390907\";\"Quixada\";\"ascii\"\n\"3390965\";\"Quipapá\";\"main\"\n\"3390965\";\"Quipapa\";\"ascii\"\n\"3391090\";\"Quebrangulo\";\"main\"\n\"3391090\";\"Victoria\";\"other\"\n\"3391090\";\"Vitoria\";\"other\"\n\"3391090\";\"Vitória\";\"other\"\n\"3391130\";\"Puxinanã\";\"main\"\n\"3391130\";\"Puxinana\";\"ascii\"\n\"3391172\";\"Princesa Isabel\";\"main\"\n\"3391172\";\"Princesa\";\"other\"\n\"3391172\";\"Princess Isabel\";\"other\"\n\"3391172\";\"Princeza\";\"other\"\n\"3391220\";\"Presidente Dutra\";\"main\"\n\"3391220\";\"Curador\";\"other\"\n\"3391287\";\"Prainha\";\"main\"\n\"3391360\";\"Santana\";\"main\"\n\"3391360\";\"Porto\";\"other\"\n\"3391360\";\"Porto de Santana\";\"other\"\n\"3391360\";\"Pôrto\";\"other\"\n\"3391360\";\"Pôrto de Santana\";\"other\"\n\"3391360\";\"Сантана\";\"other\"\n\"3391371\";\"Porto Franco\";\"main\"\n\"3391387\";\"Porto de Moz\";\"main\"\n\"3391387\";\"Porto de Mos\";\"other\"\n\"3391387\";\"Pôrto de Mós\";\"other\"\n\"3391395\";\"Porto da Folha\";\"main\"\n\"3391397\";\"Porto Calvo\";\"main\"\n\"3391408\";\"Porto\";\"main\"\n\"3391408\";\"Joao Pessoa\";\"other\"\n\"3391408\";\"João Pessoa\";\"other\"\n\"3391412\";\"Portel\";\"main\"\n\"3391556\";\"Pombos\";\"main\"\n\"3391556\";\"Sao Joao dos Pombos\";\"other\"\n\"3391556\";\"São João dos Pombos\";\"other\"\n\"3391571\";\"Pombal\";\"main\"\n\"3391686\";\"Poço das Trincheiras\";\"main\"\n\"3391686\";\"Poco das Trincheiras\";\"ascii\"\n\"3391744\";\"Poço Branco\";\"main\"\n\"3391744\";\"Poco Branco\";\"ascii\"\n\"3391762\";\"Pocinhos\";\"main\"\n\"3391762\";\"Joffily\";\"other\"\n\"3391762\";\"Jóffily\";\"other\"\n\"3391774\";\"Poção de Pedras\";\"main\"\n\"3391774\";\"Pocao de Pedras\";\"ascii\"\n\"3391774\";\"Pocao de Pedra\";\"other\"\n\"3391774\";\"Pocao de Pedro\";\"other\"\n\"3391774\";\"Pocão de Pedro\";\"other\"\n\"3391774\";\"Poção de Pedra\";\"other\"\n\"3391889\";\"Pitimbu\";\"main\"\n\"3391895\";\"Pirpirituba\";\"main\"\n\"3391908\";\"Piripiri\";\"main\"\n\"3391908\";\"Periperi\";\"other\"\n\"3391908\";\"Peripery\";\"other\"\n\"3391908\";\"Periperí\";\"other\"\n\"3391940\";\"Pirapemas\";\"main\"\n\"3391940\";\"Arapema\";\"other\"\n\"3391991\";\"Piracuruca\";\"main\"\n\"3392018\";\"Pio XII\";\"main\"\n\"3392020\";\"Pio IX\";\"main\"\n\"3392020\";\"Patrocinio\";\"other\"\n\"3392020\";\"Patrocínio\";\"other\"\n\"3392020\";\"Pio Nono\";\"other\"\n\"3392020\";\"Pio Nôno\";\"other\"\n\"3392020\";\"Umbuzeiro\";\"other\"\n\"3392054\";\"Pinheiro\";\"main\"\n\"3392054\";\"Pin'ejru\";\"other\"\n\"3392054\";\"Pinheiros\";\"other\"\n\"3392054\";\"Пиньейру\";\"other\"\n\"3392088\";\"Pindaré Mirim\";\"main\"\n\"3392088\";\"Pindare Mirim\";\"ascii\"\n\"3392088\";\"Engenho Central\";\"other\"\n\"3392088\";\"Sao Pedro\";\"other\"\n\"3392088\";\"Sao Pedro de Alcantara\";\"other\"\n\"3392088\";\"São Pedro\";\"other\"\n\"3392088\";\"São Pedro de Alcantara\";\"other\"\n\"3392095\";\"Pimenteiras\";\"main\"\n\"3392095\";\"Pimenteira\";\"other\"\n\"3392126\";\"Pilar\";\"main\"\n\"3392126\";\"Manguaba\";\"other\"\n\"3392126\";\"Пилар\";\"other\"\n\"3392127\";\"Pilar\";\"main\"\n\"3392145\";\"Picuí\";\"main\"\n\"3392145\";\"Picui\";\"ascii\"\n\"3392145\";\"Picuhy\";\"other\"\n\"3392167\";\"Picos\";\"main\"\n\"3392167\";\"Pikos\";\"other\"\n\"3392167\";\"Pikus\";\"other\"\n\"3392167\";\"Пикус\";\"other\"\n\"3392225\";\"Piancó\";\"main\"\n\"3392225\";\"Pianco\";\"ascii\"\n\"3392242\";\"Petrolina\";\"main\"\n\"3392242\";\"Петролина\";\"other\"\n\"3392243\";\"Jatobá\";\"main\"\n\"3392243\";\"Jatoba\";\"ascii\"\n\"3392243\";\"Itaparica\";\"other\"\n\"3392243\";\"Jatobe\";\"other\"\n\"3392243\";\"Ятоба\";\"other\"\n\"3392251\";\"Pesqueira\";\"main\"\n\"3392345\";\"Pentecoste\";\"main\"\n\"3392361\";\"Pendências\";\"main\"\n\"3392361\";\"Pendencias\";\"ascii\"\n\"3392361\";\"Independencia\";\"other\"\n\"3392361\";\"Pendencia\";\"other\"\n\"3392361\";\"Pendência\";\"other\"\n\"3392368\";\"Penalva\";\"main\"\n\"3392425\";\"Pedro Velho\";\"main\"\n\"3392431\";\"Pedro II\";\"main\"\n\"3392431\";\"Itamaraty\";\"other\"\n\"3392431\";\"Matoes\";\"other\"\n\"3392431\";\"Matões\";\"other\"\n\"3392431\";\"Pedro Segundo\";\"other\"\n\"3392478\";\"Pedras de Fogo\";\"main\"\n\"3392629\";\"Pedra Branca\";\"main\"\n\"3392629\";\"Pedra-Branka\";\"other\"\n\"3392629\";\"Tabuleiro da Peruca\";\"other\"\n\"3392629\";\"Педра-Бранка\";\"other\"\n\"3392657\";\"Pedra\";\"main\"\n\"3392731\";\"Paulo Ramos\";\"main\"\n\"3392734\";\"Paulo Afonso\";\"main\"\n\"3392734\";\"Barra\";\"other\"\n\"3392734\";\"Brejo\";\"other\"\n\"3392740\";\"Paulista\";\"main\"\n\"3392740\";\"Паулиста\";\"other\"\n\"3392742\";\"Paulista\";\"main\"\n\"3392742\";\"Piranha\";\"other\"\n\"3392742\";\"Паулиста\";\"other\"\n\"3392862\";\"Patu\";\"main\"\n\"3392887\";\"Patos\";\"main\"\n\"3392907\";\"Pastos Bons\";\"main\"\n\"3392916\";\"Passira\";\"main\"\n\"3392916\";\"Malhada\";\"other\"\n\"3392916\";\"Pacira\";\"other\"\n\"3392916\";\"Pedra Tapada\";\"other\"\n\"3392942\";\"Passagem Franca\";\"main\"\n\"3392996\";\"Parnarama\";\"main\"\n\"3392997\";\"Parnamirim\";\"main\"\n\"3392997\";\"Leopoldina\";\"other\"\n\"3392998\";\"Parnamirim\";\"main\"\n\"3392998\";\"Eduardo Gomes\";\"other\"\n\"3393001\";\"Parnaíba\";\"main\"\n\"3393001\";\"Parnaiba\";\"ascii\"\n\"3393001\";\"Feitoria\";\"other\"\n\"3393001\";\"Parnahiba\";\"other\"\n\"3393001\";\"Parnahyba\";\"other\"\n\"3393001\";\"Porto das Barcas\";\"other\"\n\"3393001\";\"Pôrto das Barcas\";\"other\"\n\"3393001\";\"Sao Joao da Parnahiba\";\"other\"\n\"3393001\";\"São Joao da Parnahiba\";\"other\"\n\"3393001\";\"Парнаиба\";\"other\"\n\"3393008\";\"Parintins\";\"main\"\n\"3393008\";\"Parintinsa\";\"other\"\n\"3393008\";\"Паринтинса\";\"other\"\n\"3393017\";\"Parelhas\";\"main\"\n\"3393065\";\"Parambu\";\"main\"\n\"3393065\";\"Cachoeirinha\";\"other\"\n\"3393065\";\"Sao Pedro da Cachoeirinha\";\"other\"\n\"3393065\";\"São Pedro da Cachoeirinha\";\"other\"\n\"3393091\";\"Paraipaba\";\"main\"\n\"3393091\";\"Tigre\";\"other\"\n\"3393095\";\"Paraibano\";\"main\"\n\"3393106\";\"Paragominas\";\"main\"\n\"3393115\";\"Paracuru\";\"main\"\n\"3393174\";\"Pão de Açúcar\";\"main\"\n\"3393174\";\"Pao de Acucar\";\"ascii\"\n\"3393174\";\"Pao de Assucar\";\"other\"\n\"3393174\";\"Páo de Assucar\";\"other\"\n\"3393240\";\"Palmeirais\";\"main\"\n\"3393240\";\"Belem\";\"other\"\n\"3393240\";\"Belém\";\"other\"\n\"3393264\";\"Palmares\";\"main\"\n\"3393400\";\"Pacatuba\";\"main\"\n\"3393409\";\"Pacajus\";\"main\"\n\"3393409\";\"Guarani\";\"other\"\n\"3393409\";\"Guarany\";\"other\"\n\"3393452\";\"Ouricuri\";\"main\"\n\"3393452\";\"Ouricury\";\"other\"\n\"3393455\";\"Ourém\";\"main\"\n\"3393455\";\"Ourem\";\"ascii\"\n\"3393465\";\"Orós\";\"main\"\n\"3393465\";\"Oros\";\"ascii\"\n\"3393465\";\"Onos\";\"other\"\n\"3393470\";\"Orobó\";\"main\"\n\"3393470\";\"Orobo\";\"ascii\"\n\"3393470\";\"Queimadas\";\"other\"\n\"3393471\";\"Oriximiná\";\"main\"\n\"3393471\";\"Oriximina\";\"ascii\"\n\"3393525\";\"Olivença\";\"main\"\n\"3393525\";\"Olivenca\";\"ascii\"\n\"3393525\";\"Capim\";\"other\"\n\"3393536\";\"Olinda\";\"main\"\n\"3393536\";\"olinda\";\"other\"\n\"3393536\";\"Олинда\";\"other\"\n\"3393536\";\"אולינדה\";\"other\"\n\"3393536\";\"ოლინდა\";\"other\"\n\"3393762\";\"Oeiras do Pará\";\"main\"\n\"3393762\";\"Oeiras do Para\";\"ascii\"\n\"3393762\";\"Araticu\";\"other\"\n\"3393764\";\"Oeiras\";\"main\"\n\"3393764\";\"Mocha\";\"other\"\n\"3393766\";\"Ocara\";\"main\"\n\"3393766\";\"Jurema\";\"other\"\n\"3393768\";\"Ábidos\";\"main\"\n\"3393768\";\"Abidos\";\"ascii\"\n\"3393783\";\"Novo Oriente\";\"main\"\n\"3393792\";\"Novo Lino\";\"main\"\n\"3393832\";\"Nova Russas\";\"main\"\n\"3393838\";\"Nova Olinda do Norte\";\"main\"\n\"3393838\";\"Boca do Fumaco\";\"other\"\n\"3393838\";\"Bocca do Fumaco\";\"other\"\n\"3393867\";\"Nova Floresta\";\"main\"\n\"3393876\";\"Nova Cruz\";\"main\"\n\"3393922\";\"Nísia Floresta\";\"main\"\n\"3393922\";\"Nisia Floresta\";\"ascii\"\n\"3393922\";\"Papari\";\"other\"\n\"3393922\";\"Papary\";\"other\"\n\"3393929\";\"Nhamundá\";\"main\"\n\"3393929\";\"Nhamunda\";\"ascii\"\n\"3393929\";\"Ilha das Cotias\";\"other\"\n\"3393929\";\"Ilha das Cutias\";\"other\"\n\"3393972\";\"Nazaré da Mata\";\"main\"\n\"3393972\";\"Nazare da Mata\";\"ascii\"\n\"3393972\";\"Nazar-da-Mata\";\"other\"\n\"3393972\";\"Nazare\";\"other\"\n\"3393972\";\"Nazareth\";\"other\"\n\"3393972\";\"Nazaré\";\"other\"\n\"3393972\";\"Назар-да-Мата\";\"other\"\n\"3394018\";\"Natuba\";\"main\"\n\"3394023\";\"Natal\";\"main\"\n\"3394023\";\"Natalo\";\"other\"\n\"3394023\";\"Натал\";\"other\"\n\"3394023\";\"נאטאל\";\"other\"\n\"3394116\";\"Murici\";\"main\"\n\"3394238\";\"Mulungu\";\"main\"\n\"3394238\";\"Camarazal\";\"other\"\n\"3394326\";\"Muaná\";\"main\"\n\"3394326\";\"Muana\";\"ascii\"\n\"3394372\";\"Morros\";\"main\"\n\"3394453\";\"Moreno\";\"main\"\n\"3394500\";\"Morada Nova\";\"main\"\n\"3394500\";\"Espirito Santo\";\"other\"\n\"3394500\";\"Espírito Santo\";\"other\"\n\"3394539\";\"Montes Altos\";\"main\"\n\"3394539\";\"Monte Alto\";\"other\"\n\"3394549\";\"Monteiro\";\"main\"\n\"3394549\";\"Alagoa do Monteiro\";\"other\"\n\"3394549\";\"Alagôa do Monteiro\";\"other\"\n\"3394549\";\"Monterio\";\"other\"\n\"3394594\";\"Monte Alegre\";\"main\"\n\"3394605\";\"Monte Alegre\";\"main\"\n\"3394612\";\"Montanhas\";\"main\"\n\"3394612\";\"Lagoa da Montanha\";\"other\"\n\"3394612\";\"Lagôa da Montanha\";\"other\"\n\"3394621\";\"Monsenhor Gil\";\"main\"\n\"3394621\";\"Gil\";\"other\"\n\"3394621\";\"Natal\";\"other\"\n\"3394640\";\"Monção\";\"main\"\n\"3394640\";\"Moncao\";\"ascii\"\n\"3394640\";\"Carara\";\"other\"\n\"3394640\";\"Carará\";\"other\"\n\"3394649\";\"Mombaça\";\"main\"\n\"3394649\";\"Mombaca\";\"ascii\"\n\"3394649\";\"Maria Pereira\";\"other\"\n\"3394661\";\"Moju\";\"main\"\n\"3394669\";\"Mogeiro\";\"main\"\n\"3394669\";\"Mojeiro\";\"other\"\n\"3394682\";\"Mossoró\";\"main\"\n\"3394682\";\"Mossoro\";\"ascii\"\n\"3394682\";\"Mocoro\";\"other\"\n\"3394682\";\"Moçoró\";\"other\"\n\"3394745\";\"Mocajuba\";\"main\"\n\"3394755\";\"Missão Velha\";\"main\"\n\"3394755\";\"Missao Velha\";\"ascii\"\n\"3394813\";\"Mirador\";\"main\"\n\"3394841\";\"Minador do Negrão\";\"main\"\n\"3394841\";\"Minador do Negrao\";\"ascii\"\n\"3394841\";\"Minador do Negro\";\"other\"\n\"3394884\";\"Milagres\";\"main\"\n\"3394892\";\"Miguel Alves\";\"main\"\n\"3394908\";\"Messias\";\"main\"\n\"3394908\";\"Floriano\";\"other\"\n\"3395042\";\"Mazagão\";\"main\"\n\"3395042\";\"Mazagao\";\"ascii\"\n\"3395042\";\"Mazaganopolis\";\"other\"\n\"3395062\";\"Maués\";\"main\"\n\"3395062\";\"Maues\";\"ascii\"\n\"3395077\";\"Matriz de Camaragibe\";\"main\"\n\"3395122\";\"Matinha\";\"main\"\n\"3395125\";\"Matias Olímpio\";\"main\"\n\"3395125\";\"Matias Olimpio\";\"ascii\"\n\"3395162\";\"Mata Grande\";\"main\"\n\"3395162\";\"Paulo Affonso\";\"other\"\n\"3395162\";\"Paulo Afonso\";\"other\"\n\"3395215\";\"Massaranduba\";\"main\"\n\"3395215\";\"Macarandiba\";\"other\"\n\"3395215\";\"Macaranduba\";\"other\"\n\"3395215\";\"Massarandiba\";\"other\"\n\"3395215\";\"Maçarandiba\";\"other\"\n\"3395215\";\"Maçaranduba\";\"other\"\n\"3395336\";\"Maribondo\";\"main\"\n\"3395380\";\"Mari\";\"main\"\n\"3395380\";\"Araca\";\"other\"\n\"3395380\";\"Araça\";\"other\"\n\"3395395\";\"Marechal Deodoro\";\"main\"\n\"3395395\";\"Alagoas\";\"other\"\n\"3395395\";\"Alagôas\";\"other\"\n\"3395395\";\"Madalena\";\"other\"\n\"3395404\";\"Marco\";\"main\"\n\"3395440\";\"Marapanim\";\"main\"\n\"3395456\";\"Maraial\";\"main\"\n\"3395456\";\"Marayal\";\"other\"\n\"3395458\";\"Maragogi\";\"main\"\n\"3395458\";\"Gamela\";\"other\"\n\"3395458\";\"Maragogy\";\"other\"\n\"3395473\";\"Maracanaú\";\"main\"\n\"3395473\";\"Maracanau\";\"ascii\"\n\"3395473\";\"Maraconahu\";\"other\"\n\"3395473\";\"Maraconahú\";\"other\"\n\"3395473\";\"Marakanau\";\"other\"\n\"3395473\";\"Мараканау\";\"other\"\n\"3395483\";\"Maracanã\";\"main\"\n\"3395483\";\"Maracana\";\"ascii\"\n\"3395483\";\"Cintra\";\"other\"\n\"3395497\";\"Maracaçumé\";\"main\"\n\"3395497\";\"Maracacume\";\"ascii\"\n\"3395497\";\"Maracassume\";\"other\"\n\"3395497\";\"Maracassumé\";\"other\"\n\"3395497\";\"Maragassume\";\"other\"\n\"3395503\";\"Marabá\";\"main\"\n\"3395503\";\"Maraba\";\"ascii\"\n\"3395503\";\"Marada\";\"other\"\n\"3395689\";\"Manaíra\";\"main\"\n\"3395689\";\"Manaira\";\"ascii\"\n\"3395689\";\"Alagoa Nova\";\"other\"\n\"3395689\";\"Alagôa Nova\";\"other\"\n\"3395717\";\"Mamanguape\";\"main\"\n\"3395880\";\"Major Isidoro\";\"main\"\n\"3395880\";\"Major Izidoro\";\"other\"\n\"3395880\";\"Sertaosinho\";\"other\"\n\"3395880\";\"Sertaozinho\";\"other\"\n\"3395880\";\"Sertãosinho\";\"other\"\n\"3395880\";\"Sertãozinho\";\"other\"\n\"3395981\";\"Maceió\";\"main\"\n\"3395981\";\"Maceio\";\"ascii\"\n\"3395981\";\"Macayo\";\"other\"\n\"3395981\";\"Masejo\";\"other\"\n\"3395981\";\"Maçayó\";\"other\"\n\"3395981\";\"msyw\";\"other\"\n\"3395981\";\"Масейо\";\"other\"\n\"3395981\";\"מסיו\";\"other\"\n\"3395998\";\"Macau\";\"main\"\n\"3395998\";\"Macao\";\"other\"\n\"3395998\";\"Macáo\";\"other\"\n\"3396009\";\"Macaparana\";\"main\"\n\"3396009\";\"Macapa\";\"other\"\n\"3396009\";\"Macapá\";\"other\"\n\"3396016\";\"Macapá\";\"main\"\n\"3396016\";\"Macapa\";\"ascii\"\n\"3396016\";\"Makapa\";\"other\"\n\"3396016\";\"Макапа\";\"other\"\n\"3396016\";\"מקאפה\";\"other\"\n\"3396048\";\"Macaíba\";\"main\"\n\"3396048\";\"Macaiba\";\"ascii\"\n\"3396048\";\"Macahyba\";\"other\"\n\"3396101\";\"Luzilândia\";\"main\"\n\"3396101\";\"Luzilandia\";\"ascii\"\n\"3396101\";\"Joaquim Tavora\";\"other\"\n\"3396101\";\"Joaquim Távora\";\"other\"\n\"3396101\";\"Porto Alegre\";\"other\"\n\"3396101\";\"Pôrto Alegre\";\"other\"\n\"3396121\";\"Luís Correia\";\"main\"\n\"3396121\";\"Luis Correia\";\"ascii\"\n\"3396121\";\"Amarracao\";\"other\"\n\"3396121\";\"Amarração\";\"other\"\n\"3396266\";\"Limoeiro do Norte\";\"main\"\n\"3396266\";\"Limoeiro\";\"other\"\n\"3396268\";\"Limoeiro do Ajuru\";\"main\"\n\"3396268\";\"Limoeiro\";\"other\"\n\"3396270\";\"Limoeiro de Anadia\";\"main\"\n\"3396270\";\"Limoeira\";\"other\"\n\"3396270\";\"Limoeiro\";\"other\"\n\"3396277\";\"Limoeiro\";\"main\"\n\"3396364\";\"Lavras da Mangabeira\";\"main\"\n\"3396364\";\"Lavras\";\"other\"\n\"3396496\";\"Lajedo\";\"main\"\n\"3396496\";\"Lagedo\";\"other\"\n\"3396496\";\"Lazhedu\";\"other\"\n\"3396496\";\"Лажеду\";\"other\"\n\"3396601\";\"Lago da Pedra\";\"main\"\n\"3396601\";\"Lago-da-Pedra\";\"other\"\n\"3396601\";\"Lagoa de Pedra\";\"other\"\n\"3396601\";\"Лаго-да-Педра\";\"other\"\n\"3396620\";\"Lagoa Seca\";\"main\"\n\"3396620\";\"Ipaarana\";\"other\"\n\"3396620\";\"Ipauarana\";\"other\"\n\"3396620\";\"Ipuarana\";\"other\"\n\"3396662\";\"Lagoa Nova\";\"main\"\n\"3396769\";\"Lagoa do Itaenga\";\"main\"\n\"3396877\";\"Lagoa da Canoa\";\"main\"\n\"3396877\";\"Lagoa de Canoa\";\"other\"\n\"3396877\";\"Lagôa de Canôa\";\"other\"\n\"3396979\";\"Juruti\";\"main\"\n\"3396979\";\"Jurity Novo\";\"other\"\n\"3396979\";\"Juruty Novo\";\"other\"\n\"3397003\";\"Juru\";\"main\"\n\"3397003\";\"Barra\";\"other\"\n\"3397003\";\"Ibiapina\";\"other\"\n\"3397008\";\"Juripiranga\";\"main\"\n\"3397008\";\"Jupiranga\";\"other\"\n\"3397008\";\"Serrinha\";\"other\"\n\"3397063\";\"Junqueiro\";\"main\"\n\"3397068\";\"Jundiá\";\"main\"\n\"3397068\";\"Jundia\";\"ascii\"\n\"3397108\";\"Jucurutu\";\"main\"\n\"3397108\";\"Sao Miguel\";\"other\"\n\"3397108\";\"Sao Miguel de Jucurutu\";\"other\"\n\"3397108\";\"São Miguel\";\"other\"\n\"3397108\";\"São Miguel de Jucurutú\";\"other\"\n\"3397119\";\"Jucás\";\"main\"\n\"3397119\";\"Jucas\";\"ascii\"\n\"3397119\";\"Sao Mateus\";\"other\"\n\"3397119\";\"Sao Matheus\";\"other\"\n\"3397119\";\"São Mateus\";\"other\"\n\"3397119\";\"São Matheus\";\"other\"\n\"3397147\";\"Juazeiro do Norte\";\"main\"\n\"3397147\";\"Jaozeiro\";\"other\"\n\"3397147\";\"Joazeiro\";\"other\"\n\"3397147\";\"Juazeiro\";\"other\"\n\"3397147\";\"Zhuazejru-du-Norti\";\"other\"\n\"3397147\";\"Жуазейру-ду-Норти\";\"other\"\n\"3397175\";\"Juàzeirinho\";\"main\"\n\"3397175\";\"Juazeirinho\";\"ascii\"\n\"3397230\";\"José de Freitas\";\"main\"\n\"3397230\";\"Jose de Freitas\";\"ascii\"\n\"3397230\";\"Livramento\";\"other\"\n\"3397262\";\"Joaquim Nabuco\";\"main\"\n\"3397277\";\"João Pessoa\";\"main\"\n\"3397277\";\"Joao Pessoa\";\"ascii\"\n\"3397277\";\"Cidade Felipea\";\"other\"\n\"3397277\";\"Cidade Felipéa\";\"other\"\n\"3397277\";\"Fredericia\";\"other\"\n\"3397277\";\"Frederícia\";\"other\"\n\"3397277\";\"Parahiba\";\"other\"\n\"3397277\";\"Parahyba\";\"other\"\n\"3397277\";\"Paraiba\";\"other\"\n\"3397277\";\"Paraíba\";\"other\"\n\"3397277\";\"Zhuan-Pesoa\";\"other\"\n\"3397277\";\"Жуан-Песоа\";\"other\"\n\"3397277\";\"ז'ואאו פזואה\";\"other\"\n\"3397277\";\"ז'ואאו פסואה\";\"other\"\n\"3397315\";\"João Câmara\";\"main\"\n\"3397315\";\"Joao Camara\";\"ascii\"\n\"3397315\";\"Baixa Verde\";\"other\"\n\"3397319\";\"João Alfredo\";\"main\"\n\"3397319\";\"Joao Alfredo\";\"ascii\"\n\"3397337\";\"Girau do Ponciano\";\"main\"\n\"3397337\";\"Belo Horizonte\";\"other\"\n\"3397337\";\"Giral do Ponceano\";\"other\"\n\"3397337\";\"Ponciano\";\"other\"\n\"3397560\";\"Jardim do Seridó\";\"main\"\n\"3397560\";\"Jardim do Serido\";\"ascii\"\n\"3397562\";\"Jardim de Piranhas\";\"main\"\n\"3397562\";\"Jardim de Pirahanas\";\"other\"\n\"3397590\";\"Jardim\";\"main\"\n\"3397660\";\"Jaicós\";\"main\"\n\"3397660\";\"Jaicos\";\"ascii\"\n\"3397665\";\"Jaguaruana\";\"main\"\n\"3397665\";\"Uniao\";\"other\"\n\"3397665\";\"União\";\"other\"\n\"3397675\";\"Jaguaribe\";\"main\"\n\"3397675\";\"Jaguaribe Mirim\";\"other\"\n\"3397675\";\"Zhaguaribi\";\"other\"\n\"3397675\";\"Жагуариби\";\"other\"\n\"3397763\";\"Jacareacanga\";\"main\"\n\"3397800\";\"Jacaraú\";\"main\"\n\"3397800\";\"Jacarau\";\"ascii\"\n\"3397838\";\"Jaboatão\";\"main\"\n\"3397838\";\"Jaboatao\";\"ascii\"\n\"3397851\";\"Itupiranga\";\"main\"\n\"3397865\";\"Itaueira\";\"main\"\n\"3397865\";\"Peri-Peri\";\"other\"\n\"3397865\";\"Piriperi\";\"other\"\n\"3397875\";\"Itatuba\";\"main\"\n\"3397886\";\"Itaquitinga\";\"main\"\n\"3397886\";\"Areias\";\"other\"\n\"3397893\";\"Itacoatiara\";\"main\"\n\"3397893\";\"Serpa\";\"other\"\n\"3397898\";\"Itaporanga\";\"main\"\n\"3397898\";\"Misericordia\";\"other\"\n\"3397898\";\"Misericórdia\";\"other\"\n\"3397904\";\"Itapissuma\";\"main\"\n\"3397904\";\"Itapicuma\";\"other\"\n\"3397904\";\"Itapiçuma\";\"other\"\n\"3397909\";\"Itapipoca\";\"main\"\n\"3397909\";\"Imperatriz\";\"other\"\n\"3397909\";\"Itapipoka\";\"other\"\n\"3397909\";\"Итапипока\";\"other\"\n\"3397936\";\"Itapecuru Mirim\";\"main\"\n\"3397936\";\"Itapicuru\";\"other\"\n\"3397936\";\"Itapicuru-Mirim\";\"other\"\n\"3397936\";\"Itapicurú-Mirim\";\"other\"\n\"3397941\";\"Itapagé\";\"main\"\n\"3397941\";\"Itapage\";\"ascii\"\n\"3397941\";\"Constituinte\";\"other\"\n\"3397941\";\"Santa Cruz do Uruburetama\";\"other\"\n\"3397941\";\"Sao Francisco\";\"other\"\n\"3397941\";\"Sao Francisco do Uruburetama\";\"other\"\n\"3397941\";\"São Francisco\";\"other\"\n\"3397941\";\"São Francisco do Uruburetama\";\"other\"\n\"3397963\";\"Itamaracá\";\"main\"\n\"3397963\";\"Itamaraca\";\"ascii\"\n\"3397963\";\"Baixa Verde\";\"other\"\n\"3397963\";\"Pilar\";\"other\"\n\"3397967\";\"Itaituba\";\"main\"\n\"3397969\";\"Itaitinga\";\"main\"\n\"3397976\";\"Itainópolis\";\"main\"\n\"3397976\";\"Itainopolis\";\"ascii\"\n\"3397976\";\"Jenipapo\";\"other\"\n\"3397983\";\"Itaíba\";\"main\"\n\"3397983\";\"Itaiba\";\"ascii\"\n\"3397983\";\"Pao Ferro\";\"other\"\n\"3397983\";\"Pau Ferro\";\"other\"\n\"3397983\";\"Páo Ferro\";\"other\"\n\"3398003\";\"Itabaiana\";\"main\"\n\"3398003\";\"Itabayanna\";\"other\"\n\"3398003\";\"Itambe\";\"other\"\n\"3398003\";\"Tabaiana\";\"other\"\n\"3398014\";\"Irituia\";\"main\"\n\"3398028\";\"Irauçuba\";\"main\"\n\"3398028\";\"Iraucuba\";\"ascii\"\n\"3398076\";\"Ipueiras\";\"main\"\n\"3398105\";\"Ipubi\";\"main\"\n\"3398105\";\"Poco-Verde\";\"other\"\n\"3398105\";\"Poço-Verde\";\"other\"\n\"3398112\";\"Ipu\";\"main\"\n\"3398115\";\"Ipojuca\";\"main\"\n\"3398115\";\"Ipozhuka\";\"other\"\n\"3398115\";\"Pojuca\";\"other\"\n\"3398115\";\"Ипожука\";\"other\"\n\"3398145\";\"Ipanguaçu\";\"main\"\n\"3398145\";\"Ipanguacu\";\"ascii\"\n\"3398145\";\"Ipauguacu\";\"other\"\n\"3398145\";\"Ipauguaçu\";\"other\"\n\"3398145\";\"Sacramento\";\"other\"\n\"3398178\";\"Inhuma\";\"main\"\n\"3398178\";\"Inhumas\";\"other\"\n\"3398192\";\"Inhapi\";\"main\"\n\"3398224\";\"Ingá\";\"main\"\n\"3398224\";\"Inga\";\"ascii\"\n\"3398255\";\"Independência\";\"main\"\n\"3398255\";\"Independencia\";\"ascii\"\n\"3398269\";\"Imperatriz\";\"main\"\n\"3398269\";\"Imperatris\";\"other\"\n\"3398269\";\"Vila Nova de Imperatriz\";\"other\"\n\"3398269\";\"Императрис\";\"other\"\n\"3398299\";\"Imaculada\";\"main\"\n\"3398299\";\"Immaculada\";\"other\"\n\"3398331\";\"Iguatu\";\"main\"\n\"3398331\";\"Telha\";\"other\"\n\"3398343\";\"Igarapé Miri\";\"main\"\n\"3398343\";\"Igarape Miri\";\"ascii\"\n\"3398343\";\"Igarape Miry\";\"other\"\n\"3398343\";\"Igarape-Mirim\";\"other\"\n\"3398343\";\"Igarapé Miry\";\"other\"\n\"3398343\";\"Igarapé-Mirim\";\"other\"\n\"3398350\";\"Igarapé Açu\";\"main\"\n\"3398350\";\"Igarape Acu\";\"ascii\"\n\"3398350\";\"Igarape-Assu\";\"other\"\n\"3398350\";\"Igarapé-Assú\";\"other\"\n\"3398350\";\"Joao Pessoa\";\"other\"\n\"3398350\";\"João Pessoa\";\"other\"\n\"3398352\";\"Igarassu\";\"main\"\n\"3398352\";\"Igaracu\";\"other\"\n\"3398352\";\"Igaraçu\";\"other\"\n\"3398352\";\"Iguaracu\";\"other\"\n\"3398352\";\"Iguarassu\";\"other\"\n\"3398352\";\"Iguarassú\";\"other\"\n\"3398352\";\"Iguaraçu\";\"other\"\n\"3398355\";\"Igaci\";\"main\"\n\"3398355\";\"Olhos Dagua do Acioli\";\"other\"\n\"3398355\";\"Olhos Dágua do Acioli\";\"other\"\n\"3398379\";\"Icó\";\"main\"\n\"3398379\";\"Ico\";\"ascii\"\n\"3398381\";\"Icatu\";\"main\"\n\"3398401\";\"Ibimirim\";\"main\"\n\"3398401\";\"Mirim\";\"other\"\n\"3398408\";\"Ibiapina\";\"main\"\n\"3398412\";\"Ibateguara\";\"main\"\n\"3398412\";\"Ibatequara\";\"other\"\n\"3398412\";\"Piquete\";\"other\"\n\"3398428\";\"Humberto de Campos\";\"main\"\n\"3398428\";\"Miritiba\";\"other\"\n\"3398428\";\"Miritiba de Sao Jose de Piria\";\"other\"\n\"3398428\";\"Miritiba de São José de Piriá\";\"other\"\n\"3398450\";\"Horizonte\";\"main\"\n\"3398457\";\"Hidrolândia\";\"main\"\n\"3398457\";\"Hidrolandia\";\"ascii\"\n\"3398480\";\"Gurupá\";\"main\"\n\"3398480\";\"Gurupa\";\"ascii\"\n\"3398480\";\"Santo Antonio De Gurupa\";\"other\"\n\"3398485\";\"Gurinhém\";\"main\"\n\"3398485\";\"Gurinhem\";\"ascii\"\n\"3398485\";\"Curinhaem\";\"other\"\n\"3398485\";\"Curinhãem\";\"other\"\n\"3398569\";\"Guaraciaba do Norte\";\"main\"\n\"3398569\";\"Campo Grande\";\"other\"\n\"3398569\";\"Inhucu\";\"other\"\n\"3398569\";\"Inhussu\";\"other\"\n\"3398569\";\"Inhuçu\";\"other\"\n\"3398570\";\"Guarabira\";\"main\"\n\"3398612\";\"Guajará\";\"main\"\n\"3398612\";\"Guajara\";\"ascii\"\n\"3398614\";\"Guaiúba\";\"main\"\n\"3398614\";\"Guaiuba\";\"ascii\"\n\"3398614\";\"Guayuba\";\"other\"\n\"3398622\";\"Guabiraba\";\"main\"\n\"3398622\";\"Barra\";\"other\"\n\"3398622\";\"Barra de Sao Joao\";\"other\"\n\"3398622\";\"Barra de São João\";\"other\"\n\"3398622\";\"Itapeco\";\"other\"\n\"3398622\";\"Itapecô\";\"other\"\n\"3398691\";\"Gravatá\";\"main\"\n\"3398691\";\"Gravata\";\"ascii\"\n\"3398706\";\"Granja\";\"main\"\n\"3398856\";\"Grajaú\";\"main\"\n\"3398856\";\"Grajau\";\"ascii\"\n\"3398856\";\"Grajahu\";\"other\"\n\"3398856\";\"Grajahú\";\"other\"\n\"3398856\";\"Gralau\";\"other\"\n\"3398871\";\"Governador Dix Sept Rosado\";\"main\"\n\"3398871\";\"Sao Sebastiao\";\"other\"\n\"3398871\";\"Sebastianopolis\";\"other\"\n\"3398871\";\"Sebastianópolis\";\"other\"\n\"3398871\";\"São Sebastião\";\"other\"\n\"3398902\";\"Goianinha\";\"main\"\n\"3398902\";\"Goyanninha\";\"other\"\n\"3398904\";\"Goiana\";\"main\"\n\"3398904\";\"Gojana\";\"other\"\n\"3398904\";\"Goyanna\";\"other\"\n\"3398904\";\"Гояна\";\"other\"\n\"3398920\";\"Glória do Goitá\";\"main\"\n\"3398920\";\"Gloria do Goita\";\"ascii\"\n\"3398920\";\"Gloria de Goyta\";\"other\"\n\"3398920\";\"Gloria de Goytá\";\"other\"\n\"3398931\";\"Gilbués\";\"main\"\n\"3398931\";\"Gilbues\";\"ascii\"\n\"3398931\";\"Gilboes\";\"other\"\n\"3398931\";\"Gilboés\";\"other\"\n\"3399051\";\"Gararu\";\"main\"\n\"3399051\";\"Curral das Pedras\";\"other\"\n\"3399058\";\"Garanhuns\";\"main\"\n\"3399058\";\"Garan'juns\";\"other\"\n\"3399058\";\"Гараньюнс\";\"other\"\n\"3399132\";\"Gameleira\";\"main\"\n\"3399132\";\"Camelleira\";\"other\"\n\"3399132\";\"Gamelleira\";\"other\"\n\"3399377\";\"Fortuna\";\"main\"\n\"3399415\";\"Fortaleza\";\"main\"\n\"3399415\";\"Ceara\";\"other\"\n\"3399415\";\"Ceará\";\"other\"\n\"3399415\";\"Fortaleza Nova de Braganca\";\"other\"\n\"3399415\";\"Fortaleza Nova de Bragança\";\"other\"\n\"3399415\";\"Fortaleza de Nova Braganca\";\"other\"\n\"3399415\";\"Fortaleza de Nova Bragança\";\"other\"\n\"3399415\";\"Fortalezo\";\"other\"\n\"3399415\";\"forutareza\";\"other\"\n\"3399415\";\"fu ta lei sa\";\"other\"\n\"3399415\";\"pwrtlzh\";\"other\"\n\"3399415\";\"Форталеза\";\"other\"\n\"3399415\";\"פורטלזה\";\"other\"\n\"3399415\";\"フォルタレザ\";\"other\"\n\"3399415\";\"福塔雷萨\";\"other\"\n\"3399445\";\"Forquilha\";\"main\"\n\"3399506\";\"Floriano\";\"main\"\n\"3399506\";\"Colonia\";\"other\"\n\"3399506\";\"Colônia\";\"other\"\n\"3399506\";\"Florian\";\"other\"\n\"3399506\";\"Manga\";\"other\"\n\"3399506\";\"Флориан\";\"other\"\n\"3399518\";\"Floresta\";\"main\"\n\"3399539\";\"Flores\";\"main\"\n\"3399539\";\"Flores da Ribeira de Pajeu\";\"other\"\n\"3399539\";\"Flôres da Ribeira de Pajeú\";\"other\"\n\"3399571\";\"Flexeiras\";\"main\"\n\"3399571\";\"Frecheiras\";\"other\"\n\"3399679\";\"Feira Nova\";\"main\"\n\"3399679\";\"Jardim\";\"other\"\n\"3400497\";\"Farias Brito\";\"main\"\n\"3400497\";\"Quixara\";\"other\"\n\"3400497\";\"Quixará\";\"other\"\n\"3400515\";\"Fagundes\";\"main\"\n\"3400541\";\"Exu\";\"main\"\n\"3400541\";\"Novo Exu\";\"other\"\n\"3400558\";\"Eusébio\";\"main\"\n\"3400558\";\"Eusebio\";\"ascii\"\n\"3400558\";\"Ehusebio\";\"other\"\n\"3400558\";\"Euziebio\";\"other\"\n\"3400558\";\"Эусебио\";\"other\"\n\"3400567\";\"Extremoz\";\"main\"\n\"3400567\";\"Extremos\";\"other\"\n\"3400567\";\"Extremós\";\"other\"\n\"3400567\";\"Extremóz\";\"other\"\n\"3400617\";\"Estreito\";\"main\"\n\"3400739\";\"Esperantinópolis\";\"main\"\n\"3400739\";\"Esperantinopolis\";\"ascii\"\n\"3400739\";\"Boa Esperanca do Mearim\";\"other\"\n\"3400739\";\"Boa Esperança do Mearim\";\"other\"\n\"3400740\";\"Esperantina\";\"main\"\n\"3400740\";\"Boa Esperanca\";\"other\"\n\"3400740\";\"Boa Esperança\";\"other\"\n\"3400740\";\"Retiro da Boa Esperanca\";\"other\"\n\"3400740\";\"Retiro da Boa Esperança\";\"other\"\n\"3400752\";\"Esperança\";\"main\"\n\"3400752\";\"Esperanca\";\"ascii\"\n\"3400804\";\"Escada\";\"main\"\n\"3400920\";\"Elesbão Veloso\";\"main\"\n\"3400920\";\"Elesbao Veloso\";\"ascii\"\n\"3400920\";\"Elesboa Veloso\";\"other\"\n\"3400963\";\"Dona Inês\";\"main\"\n\"3400963\";\"Dona Ines\";\"ascii\"\n\"3400969\";\"Dom Pedro\";\"main\"\n\"3400989\";\"Dois Riachos\";\"main\"\n\"3401060\";\"Desterro\";\"main\"\n\"3401106\";\"Demerval Lobão\";\"main\"\n\"3401106\";\"Demerval Lobao\";\"ascii\"\n\"3401106\";\"Dermeval Lobao\";\"other\"\n\"3401106\";\"Dermeval Lobão\";\"other\"\n\"3401106\";\"Lobao\";\"other\"\n\"3401106\";\"Lobão\";\"other\"\n\"3401106\";\"Morrinho\";\"other\"\n\"3401106\";\"Morrinhos\";\"other\"\n\"3401109\";\"Delmiro Gouveia\";\"main\"\n\"3401109\";\"Delmiro\";\"other\"\n\"3401109\";\"Pedra\";\"other\"\n\"3401138\";\"Custódia\";\"main\"\n\"3401138\";\"Custodia\";\"ascii\"\n\"3401148\";\"Cururupu\";\"main\"\n\"3401188\";\"Curuçá\";\"main\"\n\"3401188\";\"Curuca\";\"ascii\"\n\"3401283\";\"Currais Novos\";\"main\"\n\"3401283\";\"Curraes Novos\";\"other\"\n\"3401331\";\"Curaçá\";\"main\"\n\"3401331\";\"Curaca\";\"ascii\"\n\"3401340\";\"Cupira\";\"main\"\n\"3401340\";\"Cupyra\";\"other\"\n\"3401404\";\"Cumaru\";\"main\"\n\"3401404\";\"Malhada\";\"other\"\n\"3401404\";\"Malhadinha\";\"other\"\n\"3401419\";\"Cuité\";\"main\"\n\"3401419\";\"Cuite\";\"ascii\"\n\"3401419\";\"Serra do Cuite\";\"other\"\n\"3401419\";\"Serra do Cuité\";\"other\"\n\"3401457\";\"Cruz do Espírito Santo\";\"main\"\n\"3401457\";\"Cruz do Espirito Santo\";\"ascii\"\n\"3401457\";\"Espirito Santo\";\"other\"\n\"3401457\";\"Maguari\";\"other\"\n\"3401487\";\"Cruz\";\"main\"\n\"3401487\";\"Vera Cruz\";\"other\"\n\"3401545\";\"Crato\";\"main\"\n\"3401545\";\"Vila Real do Crato\";\"other\"\n\"3401548\";\"Crateús\";\"main\"\n\"3401548\";\"Crateus\";\"ascii\"\n\"3401548\";\"Cratheus\";\"other\"\n\"3401548\";\"Cratheús\";\"other\"\n\"3401548\";\"Piranhas\";\"other\"\n\"3401548\";\"Principe Imperial\";\"other\"\n\"3401548\";\"Príncipe Imperial\";\"other\"\n\"3401703\";\"Coroatá\";\"main\"\n\"3401703\";\"Coroata\";\"ascii\"\n\"3401703\";\"Croata\";\"other\"\n\"3401703\";\"Croatá\";\"other\"\n\"3401725\";\"Coremas\";\"main\"\n\"3401725\";\"Curema\";\"other\"\n\"3401725\";\"Santa Rita da Curema\";\"other\"\n\"3401729\";\"Coreaú\";\"main\"\n\"3401729\";\"Coreau\";\"ascii\"\n\"3401729\";\"Palma\";\"other\"\n\"3401830\";\"Condado\";\"main\"\n\"3401830\";\"Goianinha\";\"other\"\n\"3401830\";\"Goyanninha\";\"other\"\n\"3401845\";\"Conceição do Araguaia\";\"main\"\n\"3401845\";\"Conceicao do Araguaia\";\"ascii\"\n\"3401845\";\"Conceicao\";\"other\"\n\"3401845\";\"Conceicao Do Araguaya\";\"other\"\n\"3401845\";\"Conceição\";\"other\"\n\"3401944\";\"Colônia Leopoldina\";\"main\"\n\"3401944\";\"Colonia Leopoldina\";\"ascii\"\n\"3401944\";\"Leopoldina\";\"other\"\n\"3401963\";\"Colinas\";\"main\"\n\"3401963\";\"Kolinas\";\"other\"\n\"3401963\";\"Picos\";\"other\"\n\"3401963\";\"Колинас\";\"other\"\n\"3401980\";\"Coité do Nóia\";\"main\"\n\"3401980\";\"Coite do Noia\";\"ascii\"\n\"3401980\";\"Coite do Noa\";\"other\"\n\"3401980\";\"Coite do Nois\";\"other\"\n\"3401980\";\"Coité do Noá\";\"other\"\n\"3401992\";\"Coelho Neto\";\"main\"\n\"3401992\";\"Curralinho\";\"other\"\n\"3401992\";\"Curralzinho\";\"other\"\n\"3402000\";\"Codó\";\"main\"\n\"3402000\";\"Codo\";\"ascii\"\n\"3402000\";\"Urubu\";\"other\"\n\"3402050\";\"Cocal\";\"main\"\n\"3402164\";\"Chorozinho\";\"main\"\n\"3402229\";\"Chapadinha\";\"main\"\n\"3402271\";\"Chã Grande\";\"main\"\n\"3402271\";\"Cha Grande\";\"ascii\"\n\"3402284\";\"Cerro Corá\";\"main\"\n\"3402284\";\"Cerro Cora\";\"ascii\"\n\"3402340\";\"Cedro\";\"main\"\n\"3402360\";\"Ceará Mirim\";\"main\"\n\"3402360\";\"Ceara Mirim\";\"ascii\"\n\"3402429\";\"Caucaia\";\"main\"\n\"3402429\";\"Soure\";\"other\"\n\"3402465\";\"Catolé do Rocha\";\"main\"\n\"3402465\";\"Catole do Rocha\";\"ascii\"\n\"3402465\";\"Catule-do-Rocha\";\"other\"\n\"3402465\";\"Catulé-do-Rocha\";\"other\"\n\"3402528\";\"Catende\";\"main\"\n\"3402548\";\"Castelo do Piauí\";\"main\"\n\"3402548\";\"Castelo do Piaui\";\"ascii\"\n\"3402548\";\"Castello\";\"other\"\n\"3402548\";\"Castelo\";\"other\"\n\"3402548\";\"Costello\";\"other\"\n\"3402548\";\"Marvao\";\"other\"\n\"3402548\";\"Marvão\";\"other\"\n\"3402548\";\"Rancho dos Patos\";\"other\"\n\"3402548\";\"Vila de Castelo\";\"other\"\n\"3402591\";\"Castanhal\";\"main\"\n\"3402613\";\"Cascavel\";\"main\"\n\"3402648\";\"Carutapera\";\"main\"\n\"3402655\";\"Caruaru\";\"main\"\n\"3402655\";\"Karuaru\";\"other\"\n\"3402655\";\"Каруару\";\"other\"\n\"3402721\";\"Carpina\";\"main\"\n\"3402721\";\"Karpina\";\"other\"\n\"3402721\";\"Карпина\";\"other\"\n\"3402724\";\"Carolina\";\"main\"\n\"3402848\";\"Carnaíba\";\"main\"\n\"3402848\";\"Carnaiba\";\"ascii\"\n\"3402882\";\"Caririaçu\";\"main\"\n\"3402882\";\"Caririacu\";\"ascii\"\n\"3402882\";\"Sao Pedro\";\"other\"\n\"3402882\";\"Sao Pedro do Cariri\";\"other\"\n\"3402882\";\"São Pedro\";\"other\"\n\"3402882\";\"São Pedro do Carirí\";\"other\"\n\"3402893\";\"Cariré\";\"main\"\n\"3402893\";\"Carire\";\"ascii\"\n\"3402920\";\"Careiro da Várzea\";\"main\"\n\"3402920\";\"Careiro da Varzea\";\"ascii\"\n\"3402920\";\"Careiro\";\"other\"\n\"3402944\";\"Caraúbas\";\"main\"\n\"3402944\";\"Caraubas\";\"ascii\"\n\"3402944\";\"Carahubas\";\"other\"\n\"3402944\";\"Carauba\";\"other\"\n\"3402944\";\"Caraúba\";\"other\"\n\"3403082\";\"Capoeiras\";\"main\"\n\"3403082\";\"Capoeira\";\"other\"\n\"3403127\";\"Capitão Poço\";\"main\"\n\"3403127\";\"Capitao Poco\";\"ascii\"\n\"3403200\";\"Capela\";\"main\"\n\"3403200\";\"Conceicao do Paraiba\";\"other\"\n\"3403200\";\"Conceição do Paraíba\";\"other\"\n\"3403200\";\"Euclydes Malta\";\"other\"\n\"3403200\";\"Paraiba\";\"other\"\n\"3403200\";\"Paraíba\";\"other\"\n\"3403208\";\"Capanema\";\"main\"\n\"3403251\";\"Canto do Buriti\";\"main\"\n\"3403309\";\"Cantanhede\";\"main\"\n\"3403344\";\"Canindé de São Francisco\";\"main\"\n\"3403344\";\"Caninde de Sao Francisco\";\"ascii\"\n\"3403344\";\"Caninde\";\"other\"\n\"3403344\";\"Canindé\";\"other\"\n\"3403344\";\"Curituba\";\"other\"\n\"3403353\";\"Canindé\";\"main\"\n\"3403353\";\"Caninde\";\"ascii\"\n\"3403353\";\"Caninae\";\"other\"\n\"3403360\";\"Canhotinho\";\"main\"\n\"3403362\";\"Canguaretama\";\"main\"\n\"3403395\";\"Cândido Mendes\";\"main\"\n\"3403395\";\"Candido Mendes\";\"ascii\"\n\"3403534\";\"Campos Sales\";\"main\"\n\"3403534\";\"Campos Salles\";\"other\"\n\"3403534\";\"Nova Roma\";\"other\"\n\"3403534\";\"Varzea da Vaca\";\"other\"\n\"3403534\";\"Várzea da Vaca\";\"other\"\n\"3403566\";\"Campo Maior\";\"main\"\n\"3403611\";\"Campo Alegre\";\"main\"\n\"3403611\";\"Campo Alegre do Mosquito\";\"other\"\n\"3403611\";\"Mosquito\";\"other\"\n\"3403642\";\"Campina Grande\";\"main\"\n\"3403642\";\"Kampina-Grande\";\"other\"\n\"3403642\";\"kanpinagurande\";\"other\"\n\"3403642\";\"Кампина-Гранде\";\"other\"\n\"3403642\";\"カンピナグランデ\";\"other\"\n\"3403685\";\"Camocim de São Félix\";\"main\"\n\"3403685\";\"Camocim de Sao Felix\";\"ascii\"\n\"3403685\";\"Camocim\";\"other\"\n\"3403685\";\"Camocituba\";\"other\"\n\"3403687\";\"Camocim\";\"main\"\n\"3403697\";\"Cametá\";\"main\"\n\"3403697\";\"Cameta\";\"ascii\"\n\"3403941\";\"Cajueiro\";\"main\"\n\"3403941\";\"Caldeirao\";\"other\"\n\"3403941\";\"Caldeirão\";\"other\"\n\"3404020\";\"Cajazeiras\";\"main\"\n\"3404117\";\"Caicó\";\"main\"\n\"3404117\";\"Caico\";\"ascii\"\n\"3404117\";\"Kajko\";\"other\"\n\"3404117\";\"Кайко\";\"other\"\n\"3404231\";\"Caetés\";\"main\"\n\"3404231\";\"Caetes\";\"ascii\"\n\"3404257\";\"Cacimbinhas\";\"main\"\n\"3404257\";\"Cacimbinha\";\"other\"\n\"3404306\";\"Cacimba de Dentro\";\"main\"\n\"3404306\";\"Cacimbo de Dentro\";\"other\"\n\"3404355\";\"Cachoeirinha\";\"main\"\n\"3404513\";\"Cabrobó\";\"main\"\n\"3404513\";\"Cabrobo\";\"ascii\"\n\"3404545\";\"Cabo\";\"main\"\n\"3404558\";\"Cabedelo\";\"main\"\n\"3404558\";\"Cabedello\";\"other\"\n\"3404558\";\"Cabedelos\";\"other\"\n\"3404656\";\"Caaporã\";\"main\"\n\"3404656\";\"Caapora\";\"ascii\"\n\"3404656\";\"Boca-da-Mata\";\"other\"\n\"3404656\";\"Bocca de Matta\";\"other\"\n\"3404713\";\"Buriti dos Lopes\";\"main\"\n\"3404713\";\"Baixo Longa\";\"other\"\n\"3404713\";\"Baixo Longá\";\"other\"\n\"3404713\";\"Burity dos Lopes\";\"other\"\n\"3404722\";\"Buriti Bravo\";\"main\"\n\"3404722\";\"Burity Bravo\";\"other\"\n\"3404760\";\"Bujaru\";\"main\"\n\"3404766\";\"Buíque\";\"main\"\n\"3404766\";\"Buique\";\"ascii\"\n\"3404766\";\"Buiki\";\"other\"\n\"3404766\";\"Vila Nova de Buique\";\"other\"\n\"3404766\";\"Vila Nova de Buíque\";\"other\"\n\"3404766\";\"Буики\";\"other\"\n\"3404817\";\"Breves\";\"main\"\n\"3404833\";\"Brejo Santo\";\"main\"\n\"3404833\";\"Brejo dos Santos\";\"other\"\n\"3404862\";\"Brejo da Madre de Deus\";\"main\"\n\"3404862\";\"Madre de Deus\";\"other\"\n\"3404889\";\"Brejo\";\"main\"\n\"3404924\";\"Brejinho\";\"main\"\n\"3405006\";\"Bragança\";\"main\"\n\"3405006\";\"Braganca\";\"ascii\"\n\"3405051\";\"Borba\";\"main\"\n\"3405061\";\"Boqueirão (1)\";\"main\"\n\"3405061\";\"Boqueirao (1)\";\"ascii\"\n\"3405172\";\"Bonito\";\"main\"\n\"3405304\";\"Bom Jesus\";\"main\"\n\"3405304\";\"Bom Jesus do Gurgueia\";\"other\"\n\"3405339\";\"Bom Jardim\";\"main\"\n\"3405341\";\"Bom Jardim\";\"main\"\n\"3405380\";\"Bom Conselho\";\"main\"\n\"3405616\";\"Boa Viagem\";\"main\"\n\"3405738\";\"Bezerros\";\"main\"\n\"3405738\";\"Bezerrus\";\"other\"\n\"3405738\";\"Безеррус\";\"other\"\n\"3405778\";\"Bequimão\";\"main\"\n\"3405778\";\"Bequimao\";\"ascii\"\n\"3405792\";\"Benevides\";\"main\"\n\"3405796\";\"Beneditinos\";\"main\"\n\"3405812\";\"Belo Jardim\";\"main\"\n\"3405812\";\"Bello Jardim\";\"other\"\n\"3405851\";\"Belém do Brejo do Cruz\";\"main\"\n\"3405851\";\"Belem do Brejo do Cruz\";\"ascii\"\n\"3405852\";\"Belém de São Francisco\";\"main\"\n\"3405852\";\"Belem de Sao Francisco\";\"ascii\"\n\"3405852\";\"Belem\";\"other\"\n\"3405852\";\"Belem de Cabroba\";\"other\"\n\"3405852\";\"Belem do Sao Francisco\";\"other\"\n\"3405852\";\"Belém\";\"other\"\n\"3405852\";\"Belém de Cabrobá\";\"other\"\n\"3405852\";\"Belém do São Francisco\";\"other\"\n\"3405852\";\"Jatina\";\"other\"\n\"3405852\";\"Jatinã\";\"other\"\n\"3405863\";\"Belém\";\"main\"\n\"3405863\";\"Belem\";\"ascii\"\n\"3405863\";\"Belem de Caicara\";\"other\"\n\"3405863\";\"Belém de Caiçara\";\"other\"\n\"3405863\";\"Curimatau\";\"other\"\n\"3405863\";\"Curimataú\";\"other\"\n\"3405863\";\"Белем\";\"other\"\n\"3405870\";\"Belém\";\"main\"\n\"3405870\";\"Belem\";\"ascii\"\n\"3405870\";\"Belem do Para\";\"other\"\n\"3405870\";\"Belem do Pará\";\"other\"\n\"3405870\";\"Belen\";\"other\"\n\"3405870\";\"Belém do Pará\";\"other\"\n\"3405870\";\"Para\";\"other\"\n\"3405870\";\"Pará\";\"other\"\n\"3405870\";\"Santa Maria de Belem do Grao Para\";\"other\"\n\"3405870\";\"Santa Maria de Belém do Grão Pará\";\"other\"\n\"3405870\";\"beren\";\"other\"\n\"3405870\";\"blm\";\"other\"\n\"3405870\";\"Белем\";\"other\"\n\"3405870\";\"Белен\";\"other\"\n\"3405870\";\"בלם\";\"other\"\n\"3405870\";\"ベレン\";\"other\"\n\"3405908\";\"Bela Cruz\";\"main\"\n\"3405924\";\"Beberibe\";\"main\"\n\"3405924\";\"Беберибе\";\"other\"\n\"3405940\";\"Bayeux\";\"main\"\n\"3405954\";\"Baturité\";\"main\"\n\"3405954\";\"Baturite\";\"ascii\"\n\"3405993\";\"Batalha\";\"main\"\n\"3406001\";\"Batalha\";\"main\"\n\"3406001\";\"Campos Sales\";\"other\"\n\"3406041\";\"Barroquinha\";\"main\"\n\"3406088\";\"Barro\";\"main\"\n\"3406160\";\"Barreiros\";\"main\"\n\"3406196\";\"Barreirinhas\";\"main\"\n\"3406202\";\"Barreirinha\";\"main\"\n\"3406263\";\"Barras\";\"main\"\n\"3406263\";\"Barras do Maratahoan\";\"other\"\n\"3406263\";\"Barras do Maratoam\";\"other\"\n\"3406263\";\"Баррас\";\"other\"\n\"3406318\";\"Barra do Corda\";\"main\"\n\"3406333\";\"Barra de Santo Antônio\";\"main\"\n\"3406333\";\"Barra de Santo Antonio\";\"ascii\"\n\"3406333\";\"Barra de Santo Antonio Grande\";\"other\"\n\"3406333\";\"Barra de Santo Antônio Grande\";\"other\"\n\"3406333\";\"Coqueiral Cupe\";\"other\"\n\"3406333\";\"Cupe\";\"other\"\n\"3406333\";\"Cupê\";\"other\"\n\"3406429\";\"Barcarena\";\"main\"\n\"3406442\";\"Barbalha\";\"main\"\n\"3406457\";\"Baraúna\";\"main\"\n\"3406457\";\"Barauna\";\"ascii\"\n\"3406457\";\"Currais Barauna\";\"other\"\n\"3406457\";\"Currais Baraúna\";\"other\"\n\"3406503\";\"Bananeiras\";\"main\"\n\"3406545\";\"Balsas\";\"main\"\n\"3406545\";\"Al'tbal'sas\";\"other\"\n\"3406545\";\"Sant' Antonio de Balsas\";\"other\"\n\"3406545\";\"Santo Antonio de Balsas\";\"other\"\n\"3406545\";\"Альтбальсас\";\"other\"\n\"3406844\";\"Baião\";\"main\"\n\"3406844\";\"Baiao\";\"ascii\"\n\"3406910\";\"Bacabal\";\"main\"\n\"3406910\";\"Bakabal\";\"other\"\n\"3406910\";\"Бакабал\";\"other\"\n\"3406948\";\"Autazes\";\"main\"\n\"3406948\";\"Ambrosio Aires\";\"other\"\n\"3406948\";\"Ambrósio Aires\";\"other\"\n\"3406948\";\"Sao Longuilho\";\"other\"\n\"3406954\";\"Aurora\";\"main\"\n\"3406961\";\"Augusto Corrêa\";\"main\"\n\"3406961\";\"Augusto Correa\";\"ascii\"\n\"3406996\";\"Atalaia\";\"main\"\n\"3407010\";\"Assaré\";\"main\"\n\"3407010\";\"Assare\";\"ascii\"\n\"3407010\";\"Acare\";\"other\"\n\"3407010\";\"Açaré\";\"other\"\n\"3407091\";\"Aroeiras\";\"main\"\n\"3407151\";\"Arês\";\"main\"\n\"3407151\";\"Ares\";\"ascii\"\n\"3407151\";\"Arez\";\"other\"\n\"3407194\";\"Areia Branca\";\"main\"\n\"3407210\";\"Areia\";\"main\"\n\"3407216\";\"Arcoverde\";\"main\"\n\"3407216\";\"Arkoverdi\";\"other\"\n\"3407216\";\"Rio Branco\";\"other\"\n\"3407216\";\"Арковерди\";\"other\"\n\"3407239\";\"Araruna\";\"main\"\n\"3407243\";\"Araripina\";\"main\"\n\"3407243\";\"Sao Goncalo\";\"other\"\n\"3407243\";\"São Gonçalo\";\"other\"\n\"3407243\";\"Арарипина\";\"other\"\n\"3407248\";\"Araripe\";\"main\"\n\"3407248\";\"Brejo Secco\";\"other\"\n\"3407248\";\"Brejo Seco\";\"other\"\n\"3407248\";\"Brejo Sêco\";\"other\"\n\"3407258\";\"Arari\";\"main\"\n\"3407258\";\"Arary\";\"other\"\n\"3407297\";\"Arara\";\"main\"\n\"3407327\";\"Arapiraca\";\"main\"\n\"3407351\";\"Araioses\";\"main\"\n\"3407351\";\"Arayoses\";\"other\"\n\"3407351\";\"Arayozes\";\"other\"\n\"3407351\";\"Enjeitado\";\"other\"\n\"3407351\";\"Sao Bernardo\";\"other\"\n\"3407351\";\"Sao Bernardo do Parnaiba\";\"other\"\n\"3407351\";\"São Bernardo\";\"other\"\n\"3407351\";\"São Bernardo do Parnaíba\";\"other\"\n\"3407357\";\"Araguaína\";\"main\"\n\"3407357\";\"Araguaina\";\"ascii\"\n\"3407357\";\"Lontra\";\"other\"\n\"3407366\";\"Araçoiaba\";\"main\"\n\"3407366\";\"Aracoiaba\";\"ascii\"\n\"3407366\";\"Arassoiaba\";\"other\"\n\"3407366\";\"Cha do Estevam\";\"other\"\n\"3407366\";\"Cha do Estevao\";\"other\"\n\"3407366\";\"Châ do Estevam\";\"other\"\n\"3407366\";\"Chã do Estêvão\";\"other\"\n\"3407367\";\"Aracoiaba\";\"main\"\n\"3407367\";\"Aracoyaba\";\"other\"\n\"3407378\";\"Aracati\";\"main\"\n\"3407378\";\"Aracaty\";\"other\"\n\"3407378\";\"Arakati\";\"other\"\n\"3407378\";\"Аракати\";\"other\"\n\"3407407\";\"Aquiraz\";\"main\"\n\"3407440\";\"Apodi\";\"main\"\n\"3407440\";\"Apody\";\"other\"\n\"3407544\";\"Angicos\";\"main\"\n\"3407669\";\"Ananindeua\";\"main\"\n\"3407669\";\"Ананиндеуа\";\"other\"\n\"3407682\";\"Anajatuba\";\"main\"\n\"3407693\";\"Anadia\";\"main\"\n\"3407703\";\"Amontada\";\"main\"\n\"3407703\";\"Sao Bento\";\"other\"\n\"3407703\";\"Sao Bento d'Amontada\";\"other\"\n\"3407703\";\"Sao Bento da Amontada\";\"other\"\n\"3407703\";\"São Bento\";\"other\"\n\"3407703\";\"São Bento d'Amontada\";\"other\"\n\"3407703\";\"São Bento da Amontada\";\"other\"\n\"3407755\";\"Amarante do Maranhão\";\"main\"\n\"3407755\";\"Amarante do Maranhao\";\"ascii\"\n\"3407755\";\"Amarante do Grajau\";\"other\"\n\"3407756\";\"Amarante\";\"main\"\n\"3407756\";\"Sao Goncalo\";\"other\"\n\"3407756\";\"São Gonçalo\";\"other\"\n\"3407758\";\"Amaraji\";\"main\"\n\"3407758\";\"Amaragi\";\"other\"\n\"3407758\";\"Amaragy\";\"other\"\n\"3407797\";\"Altos\";\"main\"\n\"3407805\";\"Alto Longá\";\"main\"\n\"3407805\";\"Alto Longa\";\"ascii\"\n\"3407805\";\"Humildes\";\"other\"\n\"3407871\";\"Altinho\";\"main\"\n\"3407882\";\"Altamira\";\"main\"\n\"3407882\";\"Al'tamira\";\"other\"\n\"3407882\";\"Альтамира\";\"other\"\n\"3407884\";\"Alta Floresta\";\"main\"\n\"3407903\";\"Almeirim\";\"main\"\n\"3407903\";\"Almejrin\";\"other\"\n\"3407903\";\"Almerim\";\"other\"\n\"3407903\";\"Алмейрин\";\"other\"\n\"3407940\";\"Alhandra\";\"main\"\n\"3407977\";\"Alexandria\";\"main\"\n\"3407980\";\"Alenquer\";\"main\"\n\"3407980\";\"Alemquer\";\"other\"\n\"3408073\";\"Alcântara\";\"main\"\n\"3408073\";\"Alcantara\";\"ascii\"\n\"3408094\";\"Alagoinha\";\"main\"\n\"3408094\";\"Tauatuba\";\"other\"\n\"3408097\";\"Alagoa Nova\";\"main\"\n\"3408097\";\"Larangeiras\";\"other\"\n\"3408097\";\"Laranjeiras\";\"other\"\n\"3408100\";\"Alagoa Grande\";\"main\"\n\"3408166\";\"Águas Belas\";\"main\"\n\"3408166\";\"Aguas Belas\";\"ascii\"\n\"3408166\";\"Aguas Bellas\";\"other\"\n\"3408175\";\"Água Preta\";\"main\"\n\"3408175\";\"Agua Preta\";\"ascii\"\n\"3408210\";\"Água Branca\";\"main\"\n\"3408210\";\"Agua Branca\";\"ascii\"\n\"3408221\";\"Água Branca\";\"main\"\n\"3408221\";\"Agua Branca\";\"ascii\"\n\"3408251\";\"Agrestina\";\"main\"\n\"3408251\";\"Bebedouro\";\"other\"\n\"3408269\";\"Afuá\";\"main\"\n\"3408269\";\"Afua\";\"ascii\"\n\"3408269\";\"Affua\";\"other\"\n\"3408272\";\"Afonso Bezerra\";\"main\"\n\"3408272\";\"Alfonso Bezerra\";\"other\"\n\"3408274\";\"Afogados da Ingazeira\";\"main\"\n\"3408274\";\"Afogados\";\"other\"\n\"3408274\";\"Passagem dos Afogados\";\"other\"\n\"3408337\";\"Açu\";\"main\"\n\"3408337\";\"Acu\";\"ascii\"\n\"3408337\";\"Assu\";\"other\"\n\"3408343\";\"Acopiara\";\"main\"\n\"3408343\";\"Affonso Penna\";\"other\"\n\"3408343\";\"Afonso-Pena\";\"other\"\n\"3408343\";\"Lages\";\"other\"\n\"3408343\";\"Lajes\";\"other\"\n\"3408368\";\"Acaraú\";\"main\"\n\"3408368\";\"Acarau\";\"ascii\"\n\"3408368\";\"Acarahu\";\"other\"\n\"3408368\";\"Acarahú\";\"other\"\n\"3408368\";\"Akarau\";\"other\"\n\"3408368\";\"Акарау\";\"other\"\n\"3408386\";\"Acará\";\"main\"\n\"3408386\";\"Acara\";\"ascii\"\n\"3408404\";\"Abreu e Lima\";\"main\"\n\"3408404\";\"Maricota\";\"other\"\n\"3408424\";\"Abaetetuba\";\"main\"\n\"3408424\";\"Abaete\";\"other\"\n\"3408424\";\"Abaeté\";\"other\"\n\"3444823\";\"Xique Xique\";\"main\"\n\"3444823\";\"Chique-Chique\";\"other\"\n\"3444843\";\"Chavantes\";\"main\"\n\"3444848\";\"Xanxerê\";\"main\"\n\"3444848\";\"Xanxere\";\"ascii\"\n\"3444848\";\"Ruy Barbosa\";\"other\"\n\"3444848\";\"Xanere\";\"other\"\n\"3444848\";\"Xaneré\";\"other\"\n\"3444864\";\"Votuporanga\";\"main\"\n\"3444866\";\"Votorantim\";\"main\"\n\"3444866\";\"Voturantim\";\"other\"\n\"3444876\";\"Volta Redonda\";\"main\"\n\"3444876\";\"V Redonda\";\"other\"\n\"3444914\";\"Vitória da Conquista\";\"main\"\n\"3444914\";\"Vitoria da Conquista\";\"ascii\"\n\"3444914\";\"Conquista\";\"other\"\n\"3444914\";\"Vitorija-da-Konkista\";\"other\"\n\"3444914\";\"Витория-да-Конкиста\";\"other\"\n\"3444924\";\"Vitória\";\"main\"\n\"3444924\";\"Vitoria\";\"ascii\"\n\"3444924\";\"Victoria\";\"other\"\n\"3444924\";\"Vitorija\";\"other\"\n\"3444924\";\"bitoria\";\"other\"\n\"3444924\";\"wytwryh\";\"other\"\n\"3444924\";\"Витория\";\"other\"\n\"3444924\";\"ויטוריה\";\"other\"\n\"3444924\";\"ビトリア\";\"other\"\n\"3444969\";\"Visconde do Rio Branco\";\"main\"\n\"3444969\";\"Rio Branco\";\"other\"\n\"3444997\";\"Viradouro\";\"main\"\n\"3444997\";\"Viradoura\";\"other\"\n\"3445014\";\"Vinhedo\";\"main\"\n\"3445014\";\"Rocinha\";\"other\"\n\"3445026\";\"Vila Velha\";\"main\"\n\"3445026\";\"Espirito Santo\";\"other\"\n\"3445026\";\"Espirito Santo de Vitoria\";\"other\"\n\"3445026\";\"Espírito Santo\";\"other\"\n\"3445026\";\"Espírito Santo de Vitória\";\"other\"\n\"3445026\";\"Vila-Vel'ja\";\"other\"\n\"3445026\";\"Вила-Велья\";\"other\"\n\"3445026\";\"וילה ואלה\";\"other\"\n\"3445126\";\"Videira\";\"main\"\n\"3445126\";\"Perdizes\";\"other\"\n\"3445126\";\"Videjra\";\"other\"\n\"3445126\";\"Видейра\";\"other\"\n\"3445133\";\"Viçosa\";\"main\"\n\"3445133\";\"Vicosa\";\"ascii\"\n\"3445148\";\"Vianópolis\";\"main\"\n\"3445148\";\"Vianopolis\";\"ascii\"\n\"3445148\";\"Viannopolis\";\"other\"\n\"3445153\";\"Viana\";\"main\"\n\"3445153\";\"Jabaete\";\"other\"\n\"3445153\";\"Jabaeté\";\"other\"\n\"3445153\";\"Vianna\";\"other\"\n\"3445153\";\"Виана\";\"other\"\n\"3445156\";\"Viamão\";\"main\"\n\"3445156\";\"Viamao\";\"ascii\"\n\"3445162\";\"Vespasiano\";\"main\"\n\"3445299\";\"Veranópolis\";\"main\"\n\"3445299\";\"Veranopolis\";\"ascii\"\n\"3445299\";\"Alfredo Chaves\";\"other\"\n\"3445307\";\"Vera Cruz\";\"main\"\n\"3445348\";\"Wenceslau Braz\";\"main\"\n\"3445348\";\"Venceslau Braz\";\"other\"\n\"3445348\";\"Vencesleu-Bras\";\"other\"\n\"3445348\";\"Vencesleu-Brás\";\"other\"\n\"3445350\";\"Venâncio Aires\";\"main\"\n\"3445350\";\"Venancio Aires\";\"ascii\"\n\"3445350\";\"Venancia Ayres\";\"other\"\n\"3445350\";\"Venancio Ayres\";\"other\"\n\"3445418\";\"Vazante\";\"main\"\n\"3445433\";\"Vassouras\";\"main\"\n\"3445442\";\"Varzelândia\";\"main\"\n\"3445442\";\"Varzelandia\";\"ascii\"\n\"3445446\";\"Várzea Paulista\";\"main\"\n\"3445446\";\"Varzea Paulista\";\"ascii\"\n\"3445446\";\"Secundino Veiga\";\"other\"\n\"3445451\";\"Várzea Grande\";\"main\"\n\"3445451\";\"Varzea Grande\";\"ascii\"\n\"3445459\";\"Várzea da Palma\";\"main\"\n\"3445459\";\"Varzea da Palma\";\"ascii\"\n\"3445487\";\"Varginha\";\"main\"\n\"3445500\";\"Vargem Grande do Sul\";\"main\"\n\"3445500\";\"Santa Ana do Vargem Grande\";\"other\"\n\"3445500\";\"Vargem Grande\";\"other\"\n\"3445500\";\"Varzhen-Grandi-du-Sul\";\"other\"\n\"3445500\";\"Варжен-Гранди-ду-Сул\";\"other\"\n\"3445534\";\"Vargem Alta\";\"main\"\n\"3445575\";\"Valparaíso\";\"main\"\n\"3445575\";\"Valparaiso\";\"ascii\"\n\"3445578\";\"Valinhos\";\"main\"\n\"3445578\";\"Vallinhos\";\"other\"\n\"3445594\";\"Valente\";\"main\"\n\"3445596\";\"Valença\";\"main\"\n\"3445596\";\"Valenca\";\"ascii\"\n\"3445596\";\"Marques de Valenca\";\"other\"\n\"3445596\";\"Marquês de Valença\";\"other\"\n\"3445596\";\"Valensa\";\"other\"\n\"3445596\";\"Валенса\";\"other\"\n\"3445597\";\"Valença\";\"main\"\n\"3445597\";\"Valenca\";\"ascii\"\n\"3445630\";\"Vacaria\";\"main\"\n\"3445630\";\"Ibia'e\";\"other\"\n\"3445630\";\"Ibia'é\";\"other\"\n\"3445630\";\"Vaccaria\";\"other\"\n\"3445630\";\"Vakarija\";\"other\"\n\"3445630\";\"Вакария\";\"other\"\n\"3445667\";\"Urussanga\";\"main\"\n\"3445667\";\"Urucanga\";\"other\"\n\"3445667\";\"Uruçanga\";\"other\"\n\"3445675\";\"Urupês\";\"main\"\n\"3445675\";\"Urupes\";\"ascii\"\n\"3445675\";\"Mundo Novo\";\"other\"\n\"3445679\";\"Uruguaiana\";\"main\"\n\"3445679\";\"Uruguayana\";\"other\"\n\"3445690\";\"Uruçuca\";\"main\"\n\"3445690\";\"Urucuca\";\"ascii\"\n\"3445690\";\"Agua Preta\";\"other\"\n\"3445690\";\"Urycuca\";\"other\"\n\"3445690\";\"Uryçuca\";\"other\"\n\"3445712\";\"Uruana\";\"main\"\n\"3445713\";\"Uruaçu\";\"main\"\n\"3445713\";\"Uruacu\";\"ascii\"\n\"3445713\";\"Sant'Anna\";\"other\"\n\"3445713\";\"Santana\";\"other\"\n\"3445713\";\"Uruasu\";\"other\"\n\"3445713\";\"Urucu\";\"other\"\n\"3445713\";\"Uruçu\";\"other\"\n\"3445713\";\"Уруасу\";\"other\"\n\"3445746\";\"União da Vitória\";\"main\"\n\"3445746\";\"Uniao da Vitoria\";\"ascii\"\n\"3445746\";\"Unian-da-Vitorija\";\"other\"\n\"3445746\";\"Uniao da Victoria\";\"other\"\n\"3445746\";\"União da Victoria\";\"other\"\n\"3445746\";\"Униан-да-Витория\";\"other\"\n\"3445764\";\"Unaí\";\"main\"\n\"3445764\";\"Unai\";\"ascii\"\n\"3445764\";\"Capim Branco\";\"other\"\n\"3445764\";\"Unahy\";\"other\"\n\"3445764\";\"Unaj\";\"other\"\n\"3445764\";\"Унай\";\"other\"\n\"3445781\";\"Una\";\"main\"\n\"3445782\";\"Umuarama\";\"main\"\n\"3445818\";\"Umbaúba\";\"main\"\n\"3445818\";\"Umbauba\";\"ascii\"\n\"3445818\";\"Papemal\";\"other\"\n\"3445831\";\"Uberlândia\";\"main\"\n\"3445831\";\"Uberlandia\";\"ascii\"\n\"3445839\";\"Uberaba\";\"main\"\n\"3445839\";\"Убераба\";\"other\"\n\"3445847\";\"Ubatuba\";\"main\"\n\"3445849\";\"Ubatã\";\"main\"\n\"3445849\";\"Ubata\";\"ascii\"\n\"3445849\";\"Dois Irmaos\";\"other\"\n\"3445849\";\"Dois Irmãos\";\"other\"\n\"3445853\";\"Ubaitaba\";\"main\"\n\"3445853\";\"Itapira\";\"other\"\n\"3445854\";\"Ubaíra\";\"main\"\n\"3445854\";\"Ubaira\";\"ascii\"\n\"3445854\";\"Areia\";\"other\"\n\"3445859\";\"Ubá\";\"main\"\n\"3445859\";\"Uba\";\"ascii\"\n\"3445912\";\"Turmalina\";\"main\"\n\"3445922\";\"Tupi Paulista\";\"main\"\n\"3445922\";\"Gracianopolis\";\"other\"\n\"3445922\";\"Gracianópolis\";\"other\"\n\"3445922\";\"Tupi\";\"other\"\n\"3445939\";\"Tupanciretã\";\"main\"\n\"3445939\";\"Tupancireta\";\"ascii\"\n\"3445939\";\"Tupaceretan\";\"other\"\n\"3445939\";\"Tupacireta\";\"other\"\n\"3445939\";\"Tupaciretã\";\"other\"\n\"3445939\";\"Tuparecetan\";\"other\"\n\"3445941\";\"Tupaciguara\";\"main\"\n\"3445941\";\"Tupacyguara\";\"other\"\n\"3445941\";\"Tupasiguara\";\"other\"\n\"3445941\";\"Тупасигуара\";\"other\"\n\"3445942\";\"Tupã\";\"main\"\n\"3445942\";\"Tupa\";\"ascii\"\n\"3445942\";\"Tupan\";\"other\"\n\"3445942\";\"Тупа\";\"other\"\n\"3445983\";\"Tucano\";\"main\"\n\"3445993\";\"Tubarão\";\"main\"\n\"3445993\";\"Tubarao\";\"ascii\"\n\"3446019\";\"Triunfo\";\"main\"\n\"3446019\";\"Bom Jesus de Triunfo\";\"other\"\n\"3446019\";\"Bom Jesus do Triunfo\";\"other\"\n\"3446019\";\"Triumfo\";\"other\"\n\"3446019\";\"Triumpho\";\"other\"\n\"3446038\";\"Trindade\";\"main\"\n\"3446065\";\"Três Rios\";\"main\"\n\"3446065\";\"Tres Rios\";\"ascii\"\n\"3446065\";\"Entre-Rios\";\"other\"\n\"3446077\";\"Três Pontas\";\"main\"\n\"3446077\";\"Tres Pontas\";\"ascii\"\n\"3446087\";\"Três Passos\";\"main\"\n\"3446087\";\"Tres Passos\";\"ascii\"\n\"3446098\";\"Três Lagoas\";\"main\"\n\"3446098\";\"Tres Lagoas\";\"ascii\"\n\"3446098\";\"Lagoas\";\"other\"\n\"3446098\";\"trys laghwas\";\"other\"\n\"3446098\";\"تريس لاغواس\";\"other\"\n\"3446130\";\"Três de Maio\";\"main\"\n\"3446130\";\"Tres de Maio\";\"ascii\"\n\"3446130\";\"3 de Maio\";\"other\"\n\"3446130\";\"3 do Maio\";\"other\"\n\"3446130\";\"Trez de Maio\";\"other\"\n\"3446137\";\"Três Coroas\";\"main\"\n\"3446137\";\"Tres Coroas\";\"ascii\"\n\"3446137\";\"Ibicacu\";\"other\"\n\"3446137\";\"Ibicacú\";\"other\"\n\"3446137\";\"Mundo Novo\";\"other\"\n\"3446138\";\"Três Corações\";\"main\"\n\"3446138\";\"Tres Coracoes\";\"ascii\"\n\"3446171\";\"Três Barras\";\"main\"\n\"3446171\";\"Tres Barras\";\"ascii\"\n\"3446194\";\"Tremembé\";\"main\"\n\"3446194\";\"Tremembe\";\"ascii\"\n\"3446198\";\"Tremedal\";\"main\"\n\"3446232\";\"Tramandaí\";\"main\"\n\"3446232\";\"Tramandai\";\"ascii\"\n\"3446232\";\"Tramandahy\";\"other\"\n\"3446295\";\"Torres\";\"main\"\n\"3446295\";\"Торрес\";\"other\"\n\"3446363\";\"Tomar do Geru\";\"main\"\n\"3446363\";\"Geru\";\"other\"\n\"3446363\";\"Gerú\";\"other\"\n\"3446363\";\"Jeru\";\"other\"\n\"3446363\";\"Tomar do Jeru\";\"other\"\n\"3446370\";\"Toledo\";\"main\"\n\"3446370\";\"Толедо\";\"other\"\n\"3446392\";\"Tocantins\";\"main\"\n\"3446400\";\"Tobias Barreto\";\"main\"\n\"3446400\";\"Campos\";\"other\"\n\"3446400\";\"Nossa Senhora de Campos do Rio Real\";\"other\"\n\"3446420\";\"Tiradentes\";\"main\"\n\"3446445\";\"Timóteo\";\"main\"\n\"3446445\";\"Timoteo\";\"ascii\"\n\"3446445\";\"Timofej\";\"other\"\n\"3446445\";\"Timothea\";\"other\"\n\"3446445\";\"Тимофей\";\"other\"\n\"3446465\";\"Timbó\";\"main\"\n\"3446465\";\"Timbo\";\"ascii\"\n\"3446500\";\"Tijucas\";\"main\"\n\"3446500\";\"Tizhukas\";\"other\"\n\"3446500\";\"Тижукас\";\"other\"\n\"3446539\";\"Tietê\";\"main\"\n\"3446539\";\"Tiete\";\"ascii\"\n\"3446550\";\"Tibagi\";\"main\"\n\"3446550\";\"Tibagy\";\"other\"\n\"3446550\";\"Tibaji\";\"other\"\n\"3446556\";\"Teutônia\";\"main\"\n\"3446556\";\"Teutonia\";\"ascii\"\n\"3446579\";\"Terra Roxa\";\"main\"\n\"3446581\";\"Terra Rica\";\"main\"\n\"3446587\";\"Terra Nova\";\"main\"\n\"3446598\";\"Terra Boa\";\"main\"\n\"3446606\";\"Teresópolis\";\"main\"\n\"3446606\";\"Teresopolis\";\"ascii\"\n\"3446606\";\"Therezopolis\";\"other\"\n\"3446619\";\"Terenos\";\"main\"\n\"3446619\";\"Terreno\";\"other\"\n\"3446619\";\"Terrenos\";\"other\"\n\"3446621\";\"Teófilo Otoni\";\"main\"\n\"3446621\";\"Teofilo Otoni\";\"ascii\"\n\"3446621\";\"Theophilo Ottoni\";\"other\"\n\"3446625\";\"Teodoro Sampaio\";\"main\"\n\"3446652\";\"Telêmaco Borba\";\"main\"\n\"3446652\";\"Telemaco Borba\";\"ascii\"\n\"3446682\";\"Taubaté\";\"main\"\n\"3446682\";\"Taubate\";\"ascii\"\n\"3446692\";\"Tatuí\";\"main\"\n\"3446692\";\"Tatui\";\"ascii\"\n\"3446692\";\"Tatuhy\";\"other\"\n\"3446718\";\"Tarumã\";\"main\"\n\"3446718\";\"Taruma\";\"ascii\"\n\"3446718\";\"Turuma\";\"other\"\n\"3446718\";\"Turuman\";\"other\"\n\"3446718\";\"Turumã\";\"other\"\n\"3446752\";\"Taquarituba\";\"main\"\n\"3446752\";\"Taquari\";\"other\"\n\"3446752\";\"Taquary\";\"other\"\n\"3446753\";\"Taquaritinga\";\"main\"\n\"3446783\";\"Taquari\";\"main\"\n\"3446783\";\"Takuari\";\"other\"\n\"3446783\";\"Taquary\";\"other\"\n\"3446783\";\"Такуари\";\"other\"\n\"3446847\";\"Taquara\";\"main\"\n\"3446866\";\"Tapiramutá\";\"main\"\n\"3446866\";\"Tapiramuta\";\"ascii\"\n\"3446866\";\"Espera d'Anta\";\"other\"\n\"3446880\";\"Tapes\";\"main\"\n\"3446880\";\"Porto de Tapes\";\"other\"\n\"3446881\";\"Taperoá\";\"main\"\n\"3446881\";\"Taperoa\";\"ascii\"\n\"3446881\";\"Taperua\";\"other\"\n\"3446881\";\"Taperuá\";\"other\"\n\"3446922\";\"Tapejara\";\"main\"\n\"3446922\";\"Teixeira\";\"other\"\n\"3446923\";\"Tapejara\";\"main\"\n\"3446971\";\"Tanhaçu\";\"main\"\n\"3446971\";\"Tanhacu\";\"ascii\"\n\"3446971\";\"Lacos\";\"other\"\n\"3446971\";\"Laços\";\"other\"\n\"3446971\";\"Sao Sebastiao\";\"other\"\n\"3446971\";\"São Sebastião\";\"other\"\n\"3446974\";\"Tanguá\";\"main\"\n\"3446974\";\"Tangua\";\"ascii\"\n\"3446979\";\"Tanabi\";\"main\"\n\"3446979\";\"Tanaby\";\"other\"\n\"3447005\";\"Tambaú\";\"main\"\n\"3447005\";\"Tambau\";\"ascii\"\n\"3447005\";\"Tambahu\";\"other\"\n\"3447005\";\"Tambahú\";\"other\"\n\"3447059\";\"Taiobeiras\";\"main\"\n\"3447059\";\"Tajobejras\";\"other\"\n\"3447059\";\"Tayobeiras\";\"other\"\n\"3447059\";\"Тайобейрас\";\"other\"\n\"3447075\";\"Taguatinga\";\"main\"\n\"3447075\";\"Santa Maria\";\"other\"\n\"3447075\";\"Santa Maria do Taguatinga\";\"other\"\n\"3447186\";\"Taboão da Serra\";\"main\"\n\"3447186\";\"Taboao da Serra\";\"ascii\"\n\"3447186\";\"Tabuao da Serra\";\"other\"\n\"3447186\";\"Tabuão da Serra\";\"other\"\n\"3447200\";\"Tabatinga\";\"main\"\n\"3447212\";\"Suzano\";\"main\"\n\"3447212\";\"Susano\";\"other\"\n\"3447212\";\"Сузано\";\"other\"\n\"3447259\";\"Sumaré\";\"main\"\n\"3447259\";\"Sumare\";\"ascii\"\n\"3447259\";\"Reboucas\";\"other\"\n\"3447259\";\"Rebouças\";\"other\"\n\"3447399\";\"Sorocaba\";\"main\"\n\"3447409\";\"Sombrio\";\"main\"\n\"3447423\";\"Soledade\";\"main\"\n\"3447437\";\"Socorro\";\"main\"\n\"3447437\";\"Soccorro\";\"other\"\n\"3447437\";\"Sokorro\";\"other\"\n\"3447437\";\"Сокорро\";\"other\"\n\"3447473\";\"Sobradinho\";\"main\"\n\"3447537\";\"Siqueira Campos\";\"main\"\n\"3447537\";\"Colonia Mineira\";\"other\"\n\"3447562\";\"Simão Dias\";\"main\"\n\"3447562\";\"Simao Dias\";\"ascii\"\n\"3447562\";\"Anapolis\";\"other\"\n\"3447562\";\"Annapolis\";\"other\"\n\"3447562\";\"Anápolis\";\"other\"\n\"3447589\";\"Silvânia\";\"main\"\n\"3447589\";\"Silvania\";\"ascii\"\n\"3447589\";\"Bomfim\";\"other\"\n\"3447589\";\"Bonfim\";\"other\"\n\"3447591\";\"Silva Jardim\";\"main\"\n\"3447591\";\"Capivari\";\"other\"\n\"3447591\";\"Capivary\";\"other\"\n\"3447597\";\"Sidrolândia\";\"main\"\n\"3447597\";\"Sidrolandia\";\"ascii\"\n\"3447598\";\"Siderópolis\";\"main\"\n\"3447598\";\"Sideropolis\";\"ascii\"\n\"3447598\";\"Nova Beluno\";\"other\"\n\"3447598\";\"Novo Bellamo\";\"other\"\n\"3447602\";\"Severínia\";\"main\"\n\"3447602\";\"Severinia\";\"ascii\"\n\"3447624\";\"Sete Lagoas\";\"main\"\n\"3447651\";\"Sertãozinho\";\"main\"\n\"3447651\";\"Sertaozinho\";\"ascii\"\n\"3447658\";\"Sertanópolis\";\"main\"\n\"3447658\";\"Sertanopolis\";\"ascii\"\n\"3447672\";\"Serro\";\"main\"\n\"3447690\";\"Serrinha\";\"main\"\n\"3447718\";\"Serra Negra\";\"main\"\n\"3447720\";\"Serrana\";\"main\"\n\"3447779\";\"Serra\";\"main\"\n\"3447779\";\"Серра\";\"other\"\n\"3447785\";\"Seropédica\";\"main\"\n\"3447785\";\"Seropedica\";\"ascii\"\n\"3447839\";\"Senhor do Bonfim\";\"main\"\n\"3447839\";\"Bomfim\";\"other\"\n\"3447839\";\"Bonfim\";\"other\"\n\"3447848\";\"Sengés\";\"main\"\n\"3447848\";\"Senges\";\"ascii\"\n\"3447854\";\"Senador Canedo\";\"main\"\n\"3447928\";\"Seabra\";\"main\"\n\"3447928\";\"Doutor Seabra\";\"other\"\n\"3447929\";\"Schroeder\";\"main\"\n\"3447929\";\"Joaquim Wolf\";\"other\"\n\"3447929\";\"Joaquim Wolff\";\"other\"\n\"3447961\";\"Saubara\";\"main\"\n\"3447969\";\"Sarzedo\";\"main\"\n\"3447997\";\"Sarandi\";\"main\"\n\"3447997\";\"Colonia Sarandy\";\"other\"\n\"3447997\";\"Саранди\";\"other\"\n\"3447998\";\"Sarandi\";\"main\"\n\"3448011\";\"Saquarema\";\"main\"\n\"3448031\";\"Sapucaia\";\"main\"\n\"3448031\";\"Acapucai\";\"other\"\n\"3448031\";\"Açapucaí\";\"other\"\n\"3448031\";\"Guianuba\";\"other\"\n\"3448031\";\"Güianuba\";\"other\"\n\"3448031\";\"Sapukaja\";\"other\"\n\"3448031\";\"Сапукая\";\"other\"\n\"3448033\";\"Sapucaia\";\"main\"\n\"3448063\";\"Sapiranga\";\"main\"\n\"3448063\";\"Sapyranga\";\"other\"\n\"3448136\";\"São Vicente\";\"main\"\n\"3448136\";\"Sao Vicente\";\"ascii\"\n\"3448197\";\"São Simão\";\"main\"\n\"3448197\";\"Sao Simao\";\"ascii\"\n\"3448207\";\"São Sepé\";\"main\"\n\"3448207\";\"Sao Sepe\";\"ascii\"\n\"3448219\";\"São Sebastião do Passé\";\"main\"\n\"3448219\";\"Sao Sebastiao do Passe\";\"ascii\"\n\"3448219\";\"Sao Sebastiao\";\"other\"\n\"3448219\";\"São Sebastião\";\"other\"\n\"3448221\";\"São Sebastião do Paraíso\";\"main\"\n\"3448221\";\"Sao Sebastiao do Paraiso\";\"ascii\"\n\"3448221\";\"San-Sebast'jan-du-Paraiso\";\"other\"\n\"3448221\";\"Sao Sebastiao Paraiso\";\"other\"\n\"3448221\";\"Sao Sebastiao do Paraizo\";\"other\"\n\"3448221\";\"São Sebastião Paraíso\";\"other\"\n\"3448221\";\"São Sebastião do Paraizo\";\"other\"\n\"3448221\";\"Сан-Себастьян-ду-Параисо\";\"other\"\n\"3448227\";\"São Sebastião do Caí\";\"main\"\n\"3448227\";\"Sao Sebastiao do Cai\";\"ascii\"\n\"3448227\";\"Cai\";\"other\"\n\"3448227\";\"Caí\";\"other\"\n\"3448227\";\"Sao Sebastiao do Cahy\";\"other\"\n\"3448227\";\"São Sebastião do Cahy\";\"other\"\n\"3448257\";\"São Sebastião\";\"main\"\n\"3448257\";\"Sao Sebastiao\";\"ascii\"\n\"3448300\";\"São Roque\";\"main\"\n\"3448300\";\"Sao Roque\";\"ascii\"\n\"3448332\";\"São Pedro do Sul\";\"main\"\n\"3448332\";\"Sao Pedro do Sul\";\"ascii\"\n\"3448332\";\"San Pedro\";\"other\"\n\"3448332\";\"Sao Pedro\";\"other\"\n\"3448332\";\"São Pedro\";\"other\"\n\"3448351\";\"São Pedro da Aldeia\";\"main\"\n\"3448351\";\"Sao Pedro da Aldeia\";\"ascii\"\n\"3448351\";\"Sao Pedro d'Aldeia\";\"other\"\n\"3448351\";\"São Pedro d'Aldeia\";\"other\"\n\"3448403\";\"São Pedro\";\"main\"\n\"3448403\";\"Sao Pedro\";\"ascii\"\n\"3448439\";\"São Paulo\";\"main\"\n\"3448439\";\"Sao Paulo\";\"ascii\"\n\"3448439\";\"O Paulo\";\"other\"\n\"3448439\";\"San Paolo del Brasile\";\"other\"\n\"3448439\";\"San Paulas\";\"other\"\n\"3448439\";\"San Paulo\";\"other\"\n\"3448439\";\"San Paulo - Sao Paulo\";\"other\"\n\"3448439\";\"San Paulo - São Paulo\";\"other\"\n\"3448439\";\"San-Paulo\";\"other\"\n\"3448439\";\"San-Paulu\";\"other\"\n\"3448439\";\"San-Paŭlo\";\"other\"\n\"3448439\";\"Sanpaulu\";\"other\"\n\"3448439\";\"Sao Paolo\";\"other\"\n\"3448439\";\"Sao Paulo capital\";\"other\"\n\"3448439\";\"São Paulo capital\";\"other\"\n\"3448439\";\"Urbs Paulistana\";\"other\"\n\"3448439\";\"san pavlw\";\"other\"\n\"3448439\";\"sangpaullu\";\"other\"\n\"3448439\";\"sanpauro shi\";\"other\"\n\"3448439\";\"saw bawlw\";\"other\"\n\"3448439\";\"saywpaywlw\";\"other\"\n\"3448439\";\"sheng bao luo\";\"other\"\n\"3448439\";\"Σάο Πάολο\";\"other\"\n\"3448439\";\"Сан-Паулу\";\"other\"\n\"3448439\";\"Сан-Паўлу\";\"other\"\n\"3448439\";\"Сао Пауло\";\"other\"\n\"3448439\";\"סאו פאולו\";\"other\"\n\"3448439\";\"سائوپائولو\";\"other\"\n\"3448439\";\"سان پاۋلو\";\"other\"\n\"3448439\";\"ساو باولو\";\"other\"\n\"3448439\";\"サンパウロ市\";\"other\"\n\"3448439\";\"聖保羅\";\"other\"\n\"3448439\";\"상파울루\";\"other\"\n\"3448453\";\"São Miguel do Iguaçu\";\"main\"\n\"3448453\";\"Sao Miguel do Iguacu\";\"ascii\"\n\"3448453\";\"Gaucha\";\"other\"\n\"3448453\";\"Gaúcha\";\"other\"\n\"3448455\";\"São Miguel do Araguaia\";\"main\"\n\"3448455\";\"Sao Miguel do Araguaia\";\"ascii\"\n\"3448502\";\"São Mateus do Sul\";\"main\"\n\"3448502\";\"Sao Mateus do Sul\";\"ascii\"\n\"3448502\";\"San-Mateus-du-Sul\";\"other\"\n\"3448502\";\"Sao Mateus\";\"other\"\n\"3448502\";\"Sao Matheus\";\"other\"\n\"3448502\";\"São Mateus\";\"other\"\n\"3448502\";\"São Matheus\";\"other\"\n\"3448502\";\"Сан-Матеус-ду-Сул\";\"other\"\n\"3448519\";\"São Mateus\";\"main\"\n\"3448519\";\"Sao Mateus\";\"ascii\"\n\"3448519\";\"San-Mateus\";\"other\"\n\"3448519\";\"Sao Matheus\";\"other\"\n\"3448519\";\"São Matheus\";\"other\"\n\"3448519\";\"Сан-Матеус\";\"other\"\n\"3448533\";\"São Marcos\";\"main\"\n\"3448533\";\"Sao Marcos\";\"ascii\"\n\"3448533\";\"Sao Marecas\";\"other\"\n\"3448533\";\"São Marecas\";\"other\"\n\"3448545\";\"São Manuel\";\"main\"\n\"3448545\";\"Sao Manuel\";\"ascii\"\n\"3448545\";\"San-Manuehl'\";\"other\"\n\"3448545\";\"Sao Manoel do Paraizo\";\"other\"\n\"3448545\";\"São Manoel do Paraizo\";\"other\"\n\"3448545\";\"Сан-Мануэль\";\"other\"\n\"3448552\";\"São Luiz Gonzaga\";\"main\"\n\"3448552\";\"Sao Luiz Gonzaga\";\"ascii\"\n\"3448552\";\"Sao Luiz\";\"other\"\n\"3448552\";\"São Luiz\";\"other\"\n\"3448558\";\"São Luís de Montes Belos\";\"main\"\n\"3448558\";\"Sao Luis de Montes Belos\";\"ascii\"\n\"3448596\";\"São Lourenço do Sul\";\"main\"\n\"3448596\";\"Sao Lourenco do Sul\";\"ascii\"\n\"3448596\";\"San-Lorensu-du-Sul\";\"other\"\n\"3448596\";\"Sao Lourenco\";\"other\"\n\"3448596\";\"São Lourenço\";\"other\"\n\"3448596\";\"Сан-Лоренсу-ду-Сул\";\"other\"\n\"3448597\";\"São Lourenço dOeste\";\"main\"\n\"3448597\";\"Sao Lourenco dOeste\";\"ascii\"\n\"3448597\";\"Sao Lourenco\";\"other\"\n\"3448597\";\"Sao Lourenco do Oeste\";\"other\"\n\"3448597\";\"São Lourenço\";\"other\"\n\"3448597\";\"São Lourenço do Oeste\";\"other\"\n\"3448599\";\"São Lourenço da Serra\";\"main\"\n\"3448599\";\"Sao Lourenco da Serra\";\"ascii\"\n\"3448616\";\"São Lourenço\";\"main\"\n\"3448616\";\"Sao Lourenco\";\"ascii\"\n\"3448616\";\"San-Lorensu\";\"other\"\n\"3448616\";\"Сан-Лоренсу\";\"other\"\n\"3448622\";\"São Leopoldo\";\"main\"\n\"3448622\";\"Sao Leopoldo\";\"ascii\"\n\"3448632\";\"São José dos Pinhais\";\"main\"\n\"3448632\";\"Sao Jose dos Pinhais\";\"ascii\"\n\"3448632\";\"Sao Jose dos Pinhaes\";\"other\"\n\"3448632\";\"São José dos Pinhaes\";\"other\"\n\"3448636\";\"São José dos Campos\";\"main\"\n\"3448636\";\"Sao Jose dos Campos\";\"ascii\"\n\"3448636\";\"SJC\";\"other\"\n\"3448636\";\"SJCampos\";\"other\"\n\"3448636\";\"San-Zhoze-dus-Kampus\";\"other\"\n\"3448636\";\"Vale Paraiba\";\"other\"\n\"3448636\";\"Vale do Paraiba\";\"other\"\n\"3448636\";\"Vale do Paraíba\";\"other\"\n\"3448636\";\"Сан-Жозе-дус-Кампус\";\"other\"\n\"3448639\";\"São José do Rio Preto\";\"main\"\n\"3448639\";\"Sao Jose do Rio Preto\";\"ascii\"\n\"3448639\";\"Rio Preto\";\"other\"\n\"3448639\";\"San-Zhoze-du-Riu-Pretu\";\"other\"\n\"3448639\";\"Сан-Жозе-ду-Риу-Прету\";\"other\"\n\"3448640\";\"São José do Rio Pardo\";\"main\"\n\"3448640\";\"Sao Jose do Rio Pardo\";\"ascii\"\n\"3448669\";\"São José do Calçado\";\"main\"\n\"3448669\";\"Sao Jose do Calcado\";\"ascii\"\n\"3448742\";\"São José\";\"main\"\n\"3448742\";\"Sao Jose\";\"ascii\"\n\"3448824\";\"São Joaquim de Bicas\";\"main\"\n\"3448824\";\"Sao Joaquim de Bicas\";\"ascii\"\n\"3448824\";\"Bicas\";\"other\"\n\"3448825\";\"São Joaquim da Barra\";\"main\"\n\"3448825\";\"Sao Joaquim da Barra\";\"ascii\"\n\"3448825\";\"Sao Joaquim\";\"other\"\n\"3448825\";\"São Joaquim\";\"other\"\n\"3448828\";\"São Joaquim\";\"main\"\n\"3448828\";\"Sao Joaquim\";\"ascii\"\n\"3448828\";\"Sao Joaquim da Costa da Serra\";\"other\"\n\"3448828\";\"São Joaquim da Costa da Serra\";\"other\"\n\"3448846\";\"São João Nepomuceno\";\"main\"\n\"3448846\";\"Sao Joao Nepomuceno\";\"ascii\"\n\"3448846\";\"San-Zhuan-Nepomuseno\";\"other\"\n\"3448846\";\"Сан-Жуан-Непомусено\";\"other\"\n\"3448850\";\"São João Evangelista\";\"main\"\n\"3448850\";\"Sao Joao Evangelista\";\"ascii\"\n\"3448861\";\"São João do Paraíso\";\"main\"\n\"3448861\";\"Sao Joao do Paraiso\";\"ascii\"\n\"3448861\";\"Sao Joao do Paraizo\";\"other\"\n\"3448861\";\"São João do Paraizo\";\"other\"\n\"3448877\";\"São João de Meriti\";\"main\"\n\"3448877\";\"Sao Joao de Meriti\";\"ascii\"\n\"3448877\";\"Meriti\";\"other\"\n\"3448877\";\"Merity\";\"other\"\n\"3448879\";\"São João del Rei\";\"main\"\n\"3448879\";\"Sao Joao del Rei\";\"ascii\"\n\"3448879\";\"Sao Joao del-Rei\";\"other\"\n\"3448879\";\"Sao Jose del Rey\";\"other\"\n\"3448879\";\"São José del Rey\";\"other\"\n\"3448879\";\"São João del-Rei\";\"other\"\n\"3448892\";\"São João da Ponte\";\"main\"\n\"3448892\";\"Sao Joao da Ponte\";\"ascii\"\n\"3448902\";\"São João da Boa Vista\";\"main\"\n\"3448902\";\"Sao Joao da Boa Vista\";\"ascii\"\n\"3448903\";\"São João da Barra\";\"main\"\n\"3448903\";\"Sao Joao da Barra\";\"ascii\"\n\"3448903\";\"San-Zhuan-da-Barra\";\"other\"\n\"3448903\";\"Sao Joao De Barra\";\"other\"\n\"3448903\";\"São Joao De Barra\";\"other\"\n\"3448903\";\"Сан-Жуан-да-Барра\";\"other\"\n\"3448906\";\"São João Batista\";\"main\"\n\"3448906\";\"Sao Joao Batista\";\"ascii\"\n\"3448906\";\"Sao Joao Baptista\";\"other\"\n\"3448906\";\"São João Baptista\";\"other\"\n\"3449045\";\"São Jerônimo\";\"main\"\n\"3449045\";\"Sao Jeronimo\";\"ascii\"\n\"3449045\";\"Sao Jeronymo\";\"other\"\n\"3449045\";\"São Jeronymo\";\"other\"\n\"3449053\";\"São Gotardo\";\"main\"\n\"3449053\";\"Sao Gotardo\";\"ascii\"\n\"3449053\";\"Sao Gothardo\";\"other\"\n\"3449053\";\"São Gothardo\";\"other\"\n\"3449055\";\"São Gonçalo dos Campos\";\"main\"\n\"3449055\";\"Sao Goncalo dos Campos\";\"ascii\"\n\"3449055\";\"Sao Goncalo\";\"other\"\n\"3449055\";\"São Gonçalo\";\"other\"\n\"3449056\";\"São Gonçalo do Sapucaí\";\"main\"\n\"3449056\";\"Sao Goncalo do Sapucai\";\"ascii\"\n\"3449056\";\"Sao Goncalo\";\"other\"\n\"3449056\";\"São Gonçalo\";\"other\"\n\"3449099\";\"São Gabriel\";\"main\"\n\"3449099\";\"Sao Gabriel\";\"ascii\"\n\"3449112\";\"São Francisco do Sul\";\"main\"\n\"3449112\";\"Sao Francisco do Sul\";\"ascii\"\n\"3449112\";\"San-Fransisku-du-Sul\";\"other\"\n\"3449112\";\"Sao Francisco\";\"other\"\n\"3449112\";\"São Francisco\";\"other\"\n\"3449112\";\"Сан-Франсиску-ду-Сул\";\"other\"\n\"3449116\";\"São Francisco do Conde\";\"main\"\n\"3449116\";\"Sao Francisco do Conde\";\"ascii\"\n\"3449116\";\"San-Fransisku-du-Konde\";\"other\"\n\"3449116\";\"Sao Francisco\";\"other\"\n\"3449116\";\"São Francisco\";\"other\"\n\"3449116\";\"Сан-Франсиску-ду-Конде\";\"other\"\n\"3449121\";\"São Francisco de Paula\";\"main\"\n\"3449121\";\"Sao Francisco de Paula\";\"ascii\"\n\"3449121\";\"Sao Francisca da Paulo\";\"other\"\n\"3449121\";\"São Francisca da Paulo\";\"other\"\n\"3449124\";\"São Francisco de Assis\";\"main\"\n\"3449124\";\"Sao Francisco de Assis\";\"ascii\"\n\"3449176\";\"São Francisco\";\"main\"\n\"3449176\";\"Sao Francisco\";\"ascii\"\n\"3449195\";\"São Fidélis\";\"main\"\n\"3449195\";\"Sao Fidelis\";\"ascii\"\n\"3449216\";\"São Felipe\";\"main\"\n\"3449216\";\"Sao Felipe\";\"ascii\"\n\"3449216\";\"Sao Filippe\";\"other\"\n\"3449216\";\"São Filippe\";\"other\"\n\"3449219\";\"São Domingos do Prata\";\"main\"\n\"3449219\";\"Sao Domingos do Prata\";\"ascii\"\n\"3449219\";\"Sao Domingos da Prata\";\"other\"\n\"3449293\";\"São Domingos\";\"main\"\n\"3449293\";\"Sao Domingos\";\"ascii\"\n\"3449304\";\"São Desidério\";\"main\"\n\"3449304\";\"Sao Desiderio\";\"ascii\"\n\"3449310\";\"São Cristóvão\";\"main\"\n\"3449310\";\"Sao Cristovao\";\"ascii\"\n\"3449310\";\"San-Kristovan\";\"other\"\n\"3449310\";\"Sao Christovao\";\"other\"\n\"3449310\";\"São Christovão\";\"other\"\n\"3449310\";\"Сан-Кристован\";\"other\"\n\"3449319\";\"São Carlos\";\"main\"\n\"3449319\";\"Sao Carlos\";\"ascii\"\n\"3449319\";\"San-Karlos\";\"other\"\n\"3449319\";\"Sao Carlos do Pinhal\";\"other\"\n\"3449319\";\"São Carlos do Pinhal\";\"other\"\n\"3449319\";\"Сан-Карлос\";\"other\"\n\"3449324\";\"São Caetano do Sul\";\"main\"\n\"3449324\";\"Sao Caetano do Sul\";\"ascii\"\n\"3449324\";\"San-Kaehtano-du-Sul\";\"other\"\n\"3449324\";\"Sao Caetano\";\"other\"\n\"3449324\";\"São Caetano\";\"other\"\n\"3449324\";\"Сан-Каэтано-ду-Сул\";\"other\"\n\"3449340\";\"São Borja\";\"main\"\n\"3449340\";\"Sao Borja\";\"ascii\"\n\"3449340\";\"San-Borkha\";\"other\"\n\"3449340\";\"Сан-Борха\";\"other\"\n\"3449344\";\"São Bernardo do Campo\";\"main\"\n\"3449344\";\"Sao Bernardo do Campo\";\"ascii\"\n\"3449344\";\"SBC\";\"other\"\n\"3449344\";\"SBCampo\";\"other\"\n\"3449344\";\"San-Bernardo-du-Kampu\";\"other\"\n\"3449344\";\"Sao Bernardo\";\"other\"\n\"3449344\";\"São Bernardo\";\"other\"\n\"3449344\";\"Сан-Бернардо-ду-Кампу\";\"other\"\n\"3449350\";\"São Bento do Sul\";\"main\"\n\"3449350\";\"Sao Bento do Sul\";\"ascii\"\n\"3449350\";\"San-Bentu-du-Sul\";\"other\"\n\"3449350\";\"Sao Bento\";\"other\"\n\"3449350\";\"Serra Alta\";\"other\"\n\"3449350\";\"São Bento\";\"other\"\n\"3449350\";\"Сан-Бенту-ду-Сул\";\"other\"\n\"3449427\";\"Santos Dumont\";\"main\"\n\"3449427\";\"Palmyra\";\"other\"\n\"3449433\";\"Santos\";\"main\"\n\"3449433\";\"Baixada Santista\";\"other\"\n\"3449433\";\"santosu shi\";\"other\"\n\"3449433\";\"Сантос\";\"other\"\n\"3449433\";\"サントス市\";\"other\"\n\"3449467\";\"Santo Estêvão\";\"main\"\n\"3449467\";\"Santo Estevao\";\"ascii\"\n\"3449476\";\"Santo Augusto\";\"main\"\n\"3449479\";\"Santo Antônio do Sudoeste\";\"main\"\n\"3449479\";\"Santo Antonio do Sudoeste\";\"ascii\"\n\"3449479\";\"San Antonio\";\"other\"\n\"3449479\";\"San Antônio\";\"other\"\n\"3449479\";\"Santo Antonio\";\"other\"\n\"3449479\";\"Santo Antônio\";\"other\"\n\"3449500\";\"Santo Antônio do Monte\";\"main\"\n\"3449500\";\"Santo Antonio do Monte\";\"ascii\"\n\"3449502\";\"Santo Antônio do Leverger\";\"main\"\n\"3449502\";\"Santo Antonio do Leverger\";\"ascii\"\n\"3449502\";\"Leverger\";\"other\"\n\"3449502\";\"Santo Antonio\";\"other\"\n\"3449502\";\"Santo Antonio do Rio Abaixo\";\"other\"\n\"3449516\";\"Santo Antônio do Amparo\";\"main\"\n\"3449516\";\"Santo Antonio do Amparo\";\"ascii\"\n\"3449518\";\"Santo Antônio de Posse\";\"main\"\n\"3449518\";\"Santo Antonio de Posse\";\"ascii\"\n\"3449518\";\"Posse\";\"other\"\n\"3449518\";\"Posse de Ressaca\";\"other\"\n\"3449519\";\"Santo Antônio de Pádua\";\"main\"\n\"3449519\";\"Santo Antonio de Padua\";\"ascii\"\n\"3449519\";\"Santo Antonio do Padua\";\"other\"\n\"3449521\";\"Santo Antônio de Jesus\";\"main\"\n\"3449521\";\"Santo Antonio de Jesus\";\"ascii\"\n\"3449529\";\"Santo Antônio da Platina\";\"main\"\n\"3449529\";\"Santo Antonio da Platina\";\"ascii\"\n\"3449529\";\"Santo Antonio da Platino\";\"other\"\n\"3449529\";\"Santu-Antoniu-da-Platina\";\"other\"\n\"3449529\";\"Санту-Антониу-да-Платина\";\"other\"\n\"3449696\";\"Santo Ângelo\";\"main\"\n\"3449696\";\"Santo Angelo\";\"ascii\"\n\"3449696\";\"Santu-Andzhelo\";\"other\"\n\"3449696\";\"Санту-Анджело\";\"other\"\n\"3449701\";\"Santo André\";\"main\"\n\"3449701\";\"Santo Andre\";\"ascii\"\n\"3449701\";\"Santu-Andre\";\"other\"\n\"3449701\";\"Санту-Андре\";\"other\"\n\"3449707\";\"Santo Anastácio\";\"main\"\n\"3449707\";\"Santo Anastacio\";\"ascii\"\n\"3449710\";\"Santo Amaro das Brotas\";\"main\"\n\"3449710\";\"Santo Amaro\";\"other\"\n\"3449711\";\"Santo Amaro da Imperatriz\";\"main\"\n\"3449711\";\"Cambirela\";\"other\"\n\"3449711\";\"Santo Amaro\";\"other\"\n\"3449711\";\"Santo Amaro do Cubatao\";\"other\"\n\"3449711\";\"Santo Amaro do Cubatão\";\"other\"\n\"3449720\";\"Santo Amaro\";\"main\"\n\"3449741\";\"Santiago\";\"main\"\n\"3449741\";\"Sant'jago\";\"other\"\n\"3449741\";\"Santiago do Boqueirao\";\"other\"\n\"3449741\";\"Santiago do Boqueirão\";\"other\"\n\"3449741\";\"Сантьяго\";\"other\"\n\"3449747\";\"Santa Vitória do Palmar\";\"main\"\n\"3449747\";\"Santa Vitoria do Palmar\";\"ascii\"\n\"3449747\";\"Santa Victoria\";\"other\"\n\"3449747\";\"Santa Victoria do Palmar\";\"other\"\n\"3449749\";\"Santa Vitória\";\"main\"\n\"3449749\";\"Santa Vitoria\";\"ascii\"\n\"3449749\";\"Santa Victoria\";\"other\"\n\"3449782\";\"Santa Teresa\";\"main\"\n\"3449782\";\"Santa Tereza\";\"other\"\n\"3449782\";\"Santa Thereza\";\"other\"\n\"3449793\";\"Santa Rosa de Viterbo\";\"main\"\n\"3449793\";\"Icaturama\";\"other\"\n\"3449793\";\"Santa Rosa\";\"other\"\n\"3449822\";\"Santa Rosa\";\"main\"\n\"3449847\";\"Santa Rita do Sapucaí\";\"main\"\n\"3449847\";\"Santa Rita do Sapucai\";\"ascii\"\n\"3449847\";\"Porto Sapucahy\";\"other\"\n\"3449847\";\"Pôrto Sapucahy\";\"other\"\n\"3449847\";\"Santa Rita do Sapucahy\";\"other\"\n\"3449847\";\"Santa-Rita-du-Sapukajja\";\"other\"\n\"3449847\";\"Санта-Рита-ду-Сапукайя\";\"other\"\n\"3449851\";\"Santa Rita do Passa Quatro\";\"main\"\n\"3449851\";\"Santa Rita\";\"other\"\n\"3449933\";\"Santana do Paraíso\";\"main\"\n\"3449933\";\"Santana do Paraiso\";\"ascii\"\n\"3449933\";\"Santana-du-Paraiso\";\"other\"\n\"3449933\";\"Сантана-ду-Параисо\";\"other\"\n\"3449936\";\"Santana do Livramento\";\"main\"\n\"3449936\";\"Livramento\";\"other\"\n\"3449936\";\"Sant'Anna do Livramento\";\"other\"\n\"3449936\";\"Santana-du-Livramentu\";\"other\"\n\"3449936\";\"Сантана-ду-Ливраменту\";\"other\"\n\"3449948\";\"Santana de Parnaíba\";\"main\"\n\"3449948\";\"Santana de Parnaiba\";\"ascii\"\n\"3449948\";\"Parnahyba\";\"other\"\n\"3449948\";\"Parnaiba\";\"other\"\n\"3449948\";\"Parnaíba\";\"other\"\n\"3449948\";\"Sant'Ana-de-Paranaiba\";\"other\"\n\"3449948\";\"Sant'Ana-de-Paranaíba\";\"other\"\n\"3450031\";\"Santana\";\"main\"\n\"3450057\";\"Santa Maria do Suaçuí\";\"main\"\n\"3450057\";\"Santa Maria do Suacui\";\"ascii\"\n\"3450057\";\"Santa Maria de Suassuhy\";\"other\"\n\"3450057\";\"Santa Maria do Suassui\";\"other\"\n\"3450057\";\"Santa Maria do Suassuí\";\"other\"\n\"3450063\";\"Santa Maria da Vitória\";\"main\"\n\"3450063\";\"Santa Maria da Vitoria\";\"ascii\"\n\"3450063\";\"Santa Maria\";\"other\"\n\"3450063\";\"Santa-Marija-da-Vitorija\";\"other\"\n\"3450063\";\"Санта-Мария-да-Витория\";\"other\"\n\"3450083\";\"Santa Maria\";\"main\"\n\"3450083\";\"Santa Maria da Boca do Monte\";\"other\"\n\"3450083\";\"Santa-Marija\";\"other\"\n\"3450083\";\"Санта-Мария\";\"other\"\n\"3450144\";\"Santa Luzia\";\"main\"\n\"3450144\";\"Santa Lucia\";\"other\"\n\"3450144\";\"Santa Lúcia\";\"other\"\n\"3450144\";\"Santa-Lusija\";\"other\"\n\"3450144\";\"Санта-Лусия\";\"other\"\n\"3450157\";\"Santaluz\";\"main\"\n\"3450157\";\"Santa Luiza\";\"other\"\n\"3450157\";\"Santa Luzia\";\"other\"\n\"3450166\";\"Santa Leopoldina\";\"main\"\n\"3450166\";\"Cachoeiro de Santa Leopoldina\";\"other\"\n\"3450188\";\"Santa Isabel\";\"main\"\n\"3450188\";\"Santa Izabel\";\"other\"\n\"3450202\";\"Santa Inês\";\"main\"\n\"3450202\";\"Santa Ines\";\"ascii\"\n\"3450202\";\"Santa Ignez\";\"other\"\n\"3450202\";\"Santa-Ines\";\"other\"\n\"3450202\";\"Санта-Инес\";\"other\"\n\"3450206\";\"Santa Helena de Goiás\";\"main\"\n\"3450206\";\"Santa Helena de Goias\";\"ascii\"\n\"3450206\";\"Helena de Goias\";\"other\"\n\"3450206\";\"Helena de Goiás\";\"other\"\n\"3450206\";\"Ipeguari\";\"other\"\n\"3450206\";\"Santa Helena\";\"other\"\n\"3450206\";\"Santa-Ehlena-di-Gojas\";\"other\"\n\"3450206\";\"Санта-Элена-ди-Гояс\";\"other\"\n\"3450225\";\"Santa Gertrudes\";\"main\"\n\"3450232\";\"Santa Fé do Sul\";\"main\"\n\"3450232\";\"Santa Fe do Sul\";\"ascii\"\n\"3450269\";\"Santa Cruz do Sul\";\"main\"\n\"3450269\";\"Santa Cruz\";\"other\"\n\"3450269\";\"Santa-Krus-du-Sul\";\"other\"\n\"3450269\";\"Санта-Крус-ду-Сул\";\"other\"\n\"3450272\";\"Santa Cruz do Rio Pardo\";\"main\"\n\"3450283\";\"Santa Cruz das Palmeiras\";\"main\"\n\"3450283\";\"Palmeiras\";\"other\"\n\"3450288\";\"Santa Cruz Cabrália\";\"main\"\n\"3450288\";\"Santa Cruz Cabralia\";\"ascii\"\n\"3450288\";\"Santa Cruz\";\"other\"\n\"3450288\";\"Santa Cruz de Cabralia\";\"other\"\n\"3450288\";\"Santa Cruz de Cabrália\";\"other\"\n\"3450376\";\"Santa Cecília\";\"main\"\n\"3450376\";\"Santa Cecilia\";\"ascii\"\n\"3450400\";\"Santa Branca\";\"main\"\n\"3450404\";\"Santa Bárbara d'Oeste\";\"main\"\n\"3450404\";\"Santa Barbara d'Oeste\";\"ascii\"\n\"3450404\";\"Barbara do Oeste\";\"other\"\n\"3450404\";\"Bárbara do Oeste\";\"other\"\n\"3450404\";\"Santa Barbara do Oeste\";\"other\"\n\"3450404\";\"Santa Bárbara do Oeste\";\"other\"\n\"3450404\";\"Sata Barbar dOeste\";\"other\"\n\"3450404\";\"Sata Bárbar dOeste\";\"other\"\n\"3450464\";\"Santa Adélia\";\"main\"\n\"3450464\";\"Santa Adelia\";\"ascii\"\n\"3450496\";\"Sananduva\";\"main\"\n\"3450496\";\"Savanduva\";\"other\"\n\"3450554\";\"Salvador\";\"main\"\n\"3450554\";\"Bahia\";\"other\"\n\"3450554\";\"Baia\";\"other\"\n\"3450554\";\"Baía\";\"other\"\n\"3450554\";\"Sal'vador\";\"other\"\n\"3450554\";\"Salvador da Bahia\";\"other\"\n\"3450554\";\"Salvador de Bahia\";\"other\"\n\"3450554\";\"Salvador de Bahio\";\"other\"\n\"3450554\";\"Salvador de Bahía\";\"other\"\n\"3450554\";\"Salvadora\";\"other\"\n\"3450554\";\"Sao Salvador\";\"other\"\n\"3450554\";\"sa er wa duo\";\"other\"\n\"3450554\";\"sarubadoru\";\"other\"\n\"3450554\";\"saruvu~adoru\";\"other\"\n\"3450554\";\"slbdwr\";\"other\"\n\"3450554\";\"Салвадор\";\"other\"\n\"3450554\";\"Сальвадор\";\"other\"\n\"3450554\";\"סלבדור\";\"other\"\n\"3450554\";\"サルバドール\";\"other\"\n\"3450554\";\"サルヴァドール\";\"other\"\n\"3450554\";\"萨尔瓦多\";\"other\"\n\"3450563\";\"Salto de Pirapora\";\"main\"\n\"3450594\";\"Salto\";\"main\"\n\"3450594\";\"Sal'to\";\"other\"\n\"3450594\";\"Salto do Itu\";\"other\"\n\"3450594\";\"Salto do Itú\";\"other\"\n\"3450594\";\"Сальто\";\"other\"\n\"3450671\";\"Salinas\";\"main\"\n\"3450710\";\"Salgado\";\"main\"\n\"3450759\";\"Sacramento\";\"main\"\n\"3450806\";\"Sabinópolis\";\"main\"\n\"3450806\";\"Sabinopolis\";\"ascii\"\n\"3450832\";\"Ruy Barbosa\";\"main\"\n\"3450843\";\"Rubiataba\";\"main\"\n\"3450872\";\"Rosário Oeste\";\"main\"\n\"3450872\";\"Rosario Oeste\";\"ascii\"\n\"3450872\";\"Rosario Oueste\";\"other\"\n\"3450872\";\"Rosario do Rio Acima\";\"other\"\n\"3450872\";\"Rosário do Rio Acima\";\"other\"\n\"3450873\";\"Rosário do Sul\";\"main\"\n\"3450873\";\"Rosario do Sul\";\"ascii\"\n\"3450873\";\"Rosario\";\"other\"\n\"3450873\";\"Rosario-du-Sul\";\"other\"\n\"3450873\";\"Rosário\";\"other\"\n\"3450873\";\"Росарио-ду-Сул\";\"other\"\n\"3450909\";\"Rondonópolis\";\"main\"\n\"3450909\";\"Rondonopolis\";\"ascii\"\n\"3450909\";\"Rodonopolis\";\"other\"\n\"3450909\";\"Rodonópolis\";\"other\"\n\"3450963\";\"Rolante\";\"main\"\n\"3450964\";\"Rolândia\";\"main\"\n\"3450964\";\"Rolandia\";\"ascii\"\n\"3450964\";\"Caviuna\";\"other\"\n\"3450964\";\"Caviúna\";\"other\"\n\"3451051\";\"Rio Verde de Mato Grosso\";\"main\"\n\"3451051\";\"Coronel Galvao\";\"other\"\n\"3451051\";\"Coronel Galvão\";\"other\"\n\"3451051\";\"Fazenda Rio Verde\";\"other\"\n\"3451051\";\"Rio Verde\";\"other\"\n\"3451071\";\"Rio Real\";\"main\"\n\"3451071\";\"Barracao\";\"other\"\n\"3451071\";\"Barracão\";\"other\"\n\"3451071\";\"Brejo Grande\";\"other\"\n\"3451094\";\"Rio Pomba\";\"main\"\n\"3451094\";\"Pomba\";\"other\"\n\"3451095\";\"Rio Piracicaba\";\"main\"\n\"3451100\";\"Rio Pardo de Minas\";\"main\"\n\"3451100\";\"Rio Pardo\";\"other\"\n\"3451102\";\"Rio Pardo\";\"main\"\n\"3451102\";\"Poaca\";\"other\"\n\"3451102\";\"Poacá\";\"other\"\n\"3451102\";\"Rio-Pardo\";\"other\"\n\"3451102\";\"Рио-Пардо\";\"other\"\n\"3451107\";\"Rio Novo do Sul\";\"main\"\n\"3451107\";\"Itapoama\";\"other\"\n\"3451107\";\"Rio Novo\";\"other\"\n\"3451114\";\"Rio Novo\";\"main\"\n\"3451121\";\"Rio Negro\";\"main\"\n\"3451124\";\"Rio Negrinho\";\"main\"\n\"3451134\";\"Rio Grande da Serra\";\"main\"\n\"3451138\";\"Rio Grande\";\"main\"\n\"3451138\";\"Rio Grande do Sul\";\"other\"\n\"3451138\";\"Rio-Grande\";\"other\"\n\"3451138\";\"Sao Pedro do Rio Grande do Sul\";\"other\"\n\"3451138\";\"São Pedro do Rio Grande do Sul\";\"other\"\n\"3451138\";\"Рио-Гранде\";\"other\"\n\"3451152\";\"Rio do Sul\";\"main\"\n\"3451152\";\"Itajahy do Sul\";\"other\"\n\"3451152\";\"Rio Sul\";\"other\"\n\"3451152\";\"Riu-du-Sul\";\"other\"\n\"3451152\";\"Риу-ду-Сул\";\"other\"\n\"3451190\";\"Rio de Janeiro\";\"main\"\n\"3451190\";\"Centro do Rio\";\"other\"\n\"3451190\";\"Ciutat de Rio de Janeiro\";\"other\"\n\"3451190\";\"Rio\";\"other\"\n\"3451190\";\"Rio de Xaneiro - Rio de Janeiro\";\"other\"\n\"3451190\";\"Rio de Zaneiras\";\"other\"\n\"3451190\";\"Rio de Zhaneiro\";\"other\"\n\"3451190\";\"Rio de Zhanejro\";\"other\"\n\"3451190\";\"Rio de Žaneiras\";\"other\"\n\"3451190\";\"Rio nte Tzaneiro\";\"other\"\n\"3451190\";\"Rio-de-Janejro\";\"other\"\n\"3451190\";\"Rio-de-Zanejro\";\"other\"\n\"3451190\";\"Rio-de-Zhanejro\";\"other\"\n\"3451190\";\"Rio-de-Ĵanejro\";\"other\"\n\"3451190\";\"Riodezaneiro\";\"other\"\n\"3451190\";\"Riodežaneiro\";\"other\"\n\"3451190\";\"Ryjo-deh-Zhanehjra\";\"other\"\n\"3451190\";\"Río de Janeiro\";\"other\"\n\"3451190\";\"Río de Xaneiro - Rio de Janeiro\";\"other\"\n\"3451190\";\"Sao Sebastiao de Rio de Janeiro\";\"other\"\n\"3451190\";\"Sao Sebastiao do Rio de Janeiro\";\"other\"\n\"3451190\";\"São Sebastião de Rio de Janeiro\";\"other\"\n\"3451190\";\"São Sebastião do Rio de Janeiro\";\"other\"\n\"3451190\";\"Urbs Fluminensis\";\"other\"\n\"3451190\";\"li yue re nei lu\";\"other\"\n\"3451190\";\"liudejaneilu\";\"other\"\n\"3451190\";\"rath ri xode ca ne ro\";\"other\"\n\"3451190\";\"ri xode ca ne ro\";\"other\"\n\"3451190\";\"rio-de-zhaneiro\";\"other\"\n\"3451190\";\"riodejaneiro shi\";\"other\"\n\"3451190\";\"ryw dh z'nyrw\";\"other\"\n\"3451190\";\"ryw dy janyrw\";\"other\"\n\"3451190\";\"rywdwzhanyrw\";\"other\"\n\"3451190\";\"Ρίο ντε Τζανέιρο\";\"other\"\n\"3451190\";\"Рио де Жанеиро\";\"other\"\n\"3451190\";\"Рио де Жанейро\";\"other\"\n\"3451190\";\"Рио-де-Жанейро\";\"other\"\n\"3451190\";\"Рыё-дэ-Жанэйра\";\"other\"\n\"3451190\";\"Ріо-де-Жанейро\";\"other\"\n\"3451190\";\"ריו דה ז'נירו\";\"other\"\n\"3451190\";\"ريو دي جانيرو\";\"other\"\n\"3451190\";\"ریودوژانیرو\";\"other\"\n\"3451190\";\"รัฐรีโอเดจาเนโร\";\"other\"\n\"3451190\";\"รีโอเดจาเนโร\";\"other\"\n\"3451190\";\"რიო-დე-ჟანეირო\";\"other\"\n\"3451190\";\"リオデジャネイロ市\";\"other\"\n\"3451190\";\"里約熱內盧\";\"other\"\n\"3451190\";\"리우데자네이루\";\"other\"\n\"3451202\";\"Rio das Pedras\";\"main\"\n\"3451205\";\"Rio das Ostras\";\"main\"\n\"3451232\";\"Rio Claro\";\"main\"\n\"3451232\";\"Itavera\";\"other\"\n\"3451232\";\"Itaverá\";\"other\"\n\"3451234\";\"Rio Claro\";\"main\"\n\"3451236\";\"Rio Casca\";\"main\"\n\"3451241\";\"Rio Brilhante\";\"main\"\n\"3451241\";\"Caiuas\";\"other\"\n\"3451241\";\"Caiuás\";\"other\"\n\"3451241\";\"Entre Rios\";\"other\"\n\"3451242\";\"Rio Branco do Sul\";\"main\"\n\"3451242\";\"Rio Branco\";\"other\"\n\"3451242\";\"Riu-Branku-du-Sul\";\"other\"\n\"3451242\";\"Votuverava\";\"other\"\n\"3451242\";\"Риу-Бранку-ду-Сул\";\"other\"\n\"3451261\";\"Rio Bonito\";\"main\"\n\"3451263\";\"Rio Bananal\";\"main\"\n\"3451305\";\"Ribeirópolis\";\"main\"\n\"3451305\";\"Ribeiropolis\";\"ascii\"\n\"3451328\";\"Ribeirão Preto\";\"main\"\n\"3451328\";\"Ribeirao Preto\";\"ascii\"\n\"3451328\";\"Entre Rios\";\"other\"\n\"3451328\";\"Ribeirao\";\"other\"\n\"3451328\";\"Ribeirão\";\"other\"\n\"3451329\";\"Ribeirão Pires\";\"main\"\n\"3451329\";\"Ribeirao Pires\";\"ascii\"\n\"3451353\";\"Ribeirão das Neves\";\"main\"\n\"3451353\";\"Ribeirao das Neves\";\"ascii\"\n\"3451353\";\"Neves\";\"other\"\n\"3451353\";\"Nevez\";\"other\"\n\"3451362\";\"Ribeirão Branco\";\"main\"\n\"3451362\";\"Ribeirao Branco\";\"ascii\"\n\"3451363\";\"Ribeirão Bonito\";\"main\"\n\"3451363\";\"Ribeirao Bonito\";\"ascii\"\n\"3451383\";\"Ribeira do Pombal\";\"main\"\n\"3451383\";\"Canabrava de Santa Teresa de Jesus dos Quiriris\";\"other\"\n\"3451383\";\"Canna Brava\";\"other\"\n\"3451383\";\"Pombal\";\"other\"\n\"3451399\";\"Ribas do Rio Pardo\";\"main\"\n\"3451399\";\"Rio Pardo\";\"other\"\n\"3451403\";\"Rialma\";\"main\"\n\"3451403\";\"Rialmas\";\"other\"\n\"3451448\";\"Riacho de Santana\";\"main\"\n\"3451448\";\"Riacho de Sant'Anna\";\"other\"\n\"3451474\";\"Riachão do Jacuípe\";\"main\"\n\"3451474\";\"Riachao do Jacuipe\";\"ascii\"\n\"3451474\";\"Riachao\";\"other\"\n\"3451474\";\"Riachao do Jacuhype\";\"other\"\n\"3451474\";\"Riachão\";\"other\"\n\"3451474\";\"Riachão do Jacuhype\";\"other\"\n\"3451476\";\"Riachão do Dantas\";\"main\"\n\"3451476\";\"Riachao do Dantas\";\"ascii\"\n\"3451476\";\"Riachao\";\"other\"\n\"3451476\";\"Riachão\";\"other\"\n\"3451478\";\"Riachão das Neves\";\"main\"\n\"3451478\";\"Riachao das Neves\";\"ascii\"\n\"3451650\";\"Resplendor\";\"main\"\n\"3451663\";\"Reserva\";\"main\"\n\"3451668\";\"Resende\";\"main\"\n\"3451668\";\"Rezende\";\"other\"\n\"3451704\";\"Registro\";\"main\"\n\"3451709\";\"Regente Feijó\";\"main\"\n\"3451709\";\"Regente Feijo\";\"ascii\"\n\"3451750\";\"Recreio\";\"main\"\n\"3451783\";\"Realeza\";\"main\"\n\"3451812\";\"Raposos\";\"main\"\n\"3451812\";\"Raposas\";\"other\"\n\"3451856\";\"Rancharia\";\"main\"\n\"3451931\";\"Quirinópolis\";\"main\"\n\"3451931\";\"Quirinopolis\";\"ascii\"\n\"3452029\";\"Quijingue\";\"main\"\n\"3452029\";\"Triumpho\";\"other\"\n\"3452029\";\"Triunfo\";\"other\"\n\"3452073\";\"Queimados\";\"main\"\n\"3452085\";\"Queimadas\";\"main\"\n\"3452085\";\"Vila Bela de Santo Antonio das Queimadas\";\"other\"\n\"3452085\";\"Vila Bela de Santo Antônio das Queimadas\";\"other\"\n\"3452141\";\"Quatro Barras\";\"main\"\n\"3452148\";\"Quatis\";\"main\"\n\"3452167\";\"Quatá\";\"main\"\n\"3452167\";\"Quata\";\"ascii\"\n\"3452179\";\"Quaraí\";\"main\"\n\"3452179\";\"Quarai\";\"ascii\"\n\"3452179\";\"Kuarai\";\"other\"\n\"3452179\";\"Quarahy\";\"other\"\n\"3452179\";\"Куараи\";\"other\"\n\"3452216\";\"Prudentópolis\";\"main\"\n\"3452216\";\"Prudentopolis\";\"ascii\"\n\"3452233\";\"Propriá\";\"main\"\n\"3452233\";\"Propria\";\"ascii\"\n\"3452237\";\"Promissão\";\"main\"\n\"3452237\";\"Promissao\";\"ascii\"\n\"3452320\";\"Presidente Venceslau\";\"main\"\n\"3452320\";\"Presidente Wenceslau\";\"other\"\n\"3452320\";\"Presidente Wenceslaú\";\"other\"\n\"3452324\";\"Presidente Prudente\";\"main\"\n\"3452327\";\"Presidente Olegário\";\"main\"\n\"3452327\";\"Presidente Olegario\";\"ascii\"\n\"3452327\";\"Patos\";\"other\"\n\"3452327\";\"Santa Rita de Patos\";\"other\"\n\"3452327\";\"Santa Rita dos Patos\";\"other\"\n\"3452331\";\"Presidente Epitácio\";\"main\"\n\"3452331\";\"Presidente Epitacio\";\"ascii\"\n\"3452331\";\"Presidente Epistacio\";\"other\"\n\"3452331\";\"Presidente Epitaclo\";\"other\"\n\"3452331\";\"Presidente Epitãclo\";\"other\"\n\"3452335\";\"Presidente Bernardes\";\"main\"\n\"3452440\";\"Prata\";\"main\"\n\"3452465\";\"Praia Grande\";\"main\"\n\"3452465\";\"Prajja-Grandi\";\"other\"\n\"3452465\";\"Прайя-Гранди\";\"other\"\n\"3452478\";\"Pradópolis\";\"main\"\n\"3452478\";\"Pradopolis\";\"ascii\"\n\"3452483\";\"Prado\";\"main\"\n\"3452490\";\"Poxoréo\";\"main\"\n\"3452490\";\"Poxoreo\";\"ascii\"\n\"3452525\";\"Pouso Alegre\";\"main\"\n\"3452525\";\"Pozu-Alegri\";\"other\"\n\"3452525\";\"Позу-Алегри\";\"other\"\n\"3452599\";\"Posse\";\"main\"\n\"3452623\";\"Porto União\";\"main\"\n\"3452623\";\"Porto Uniao\";\"ascii\"\n\"3452623\";\"Porto Unicao\";\"other\"\n\"3452623\";\"Porto Unicão\";\"other\"\n\"3452623\";\"Porto do Uniao\";\"other\"\n\"3452623\";\"Pôrto do Uniao\";\"other\"\n\"3452623\";\"Uniao\";\"other\"\n\"3452623\";\"União\";\"other\"\n\"3452640\";\"Porto Seguro\";\"main\"\n\"3452671\";\"Porto Real do Colégio\";\"main\"\n\"3452671\";\"Porto Real do Colegio\";\"ascii\"\n\"3452671\";\"Porto Real do Collegio\";\"other\"\n\"3452672\";\"Porto Real\";\"main\"\n\"3452712\";\"Porto Murtinho\";\"main\"\n\"3452775\";\"Porto Ferreira\";\"main\"\n\"3452775\";\"Porto Ferreiro\";\"other\"\n\"3452775\";\"Portu-Ferrejra\";\"other\"\n\"3452775\";\"Порту-Феррейра\";\"other\"\n\"3452779\";\"Porto Feliz\";\"main\"\n\"3452779\";\"Portu-Felis\";\"other\"\n\"3452779\";\"Порту-Фелис\";\"other\"\n\"3452900\";\"Porto Belo\";\"main\"\n\"3452900\";\"Porto Bello\";\"other\"\n\"3452909\";\"Pôrto Barra do Ivinheima\";\"main\"\n\"3452909\";\"Porto Barra do Ivinheima\";\"ascii\"\n\"3452925\";\"Porto Alegre\";\"main\"\n\"3452925\";\"Porto de Sao Francisco dos Casaes\";\"other\"\n\"3452925\";\"Porto-Alegro\";\"other\"\n\"3452925\";\"Portu-Alegre\";\"other\"\n\"3452925\";\"Portu-Alegri\";\"other\"\n\"3452925\";\"Portus Alacer in Brasilia\";\"other\"\n\"3452925\";\"Puerto Alegre\";\"other\"\n\"3452925\";\"Pôrto de São Francisco dos Casaes\";\"other\"\n\"3452925\";\"a lei ge li gang\";\"other\"\n\"3452925\";\"Порто Алегре\";\"other\"\n\"3452925\";\"Порту-Алегре\";\"other\"\n\"3452925\";\"Порту-Алегри\";\"other\"\n\"3452925\";\"פורטו אלגרה\";\"other\"\n\"3452925\";\"ポルト・アレグレ\";\"other\"\n\"3452925\";\"阿雷格里港\";\"other\"\n\"3452956\";\"Porteirinha\";\"main\"\n\"3452982\";\"Portão\";\"main\"\n\"3452982\";\"Portao\";\"ascii\"\n\"3452992\";\"Porecatu\";\"main\"\n\"3452992\";\"Brasilia\";\"other\"\n\"3452992\";\"Brasília\";\"other\"\n\"3453010\";\"Porciúncula\";\"main\"\n\"3453010\";\"Porciuncula\";\"ascii\"\n\"3453014\";\"Porangatu\";\"main\"\n\"3453014\";\"Descoberto\";\"other\"\n\"3453014\";\"Порангату\";\"other\"\n\"3453025\";\"Ponto Novo\";\"main\"\n\"3453025\";\"Porto Novo\";\"other\"\n\"3453025\";\"Pórto Novo\";\"other\"\n\"3453060\";\"Pontes e Lacerda\";\"main\"\n\"3453060\";\"Ponte e Lacerda\";\"other\"\n\"3453060\";\"Pontes Lacerda\";\"other\"\n\"3453060\";\"Pontes de Lacerda\";\"other\"\n\"3453078\";\"Ponte Nova\";\"main\"\n\"3453150\";\"Ponta Porã\";\"main\"\n\"3453150\";\"Ponta Pora\";\"ascii\"\n\"3453158\";\"Pontalina\";\"main\"\n\"3453158\";\"Santa Rita do Pontal\";\"other\"\n\"3453171\";\"Pontal\";\"main\"\n\"3453186\";\"Ponta Grossa\";\"main\"\n\"3453240\";\"Pompéu\";\"main\"\n\"3453240\";\"Pompeu\";\"ascii\"\n\"3453240\";\"Concecao do Pompeo\";\"other\"\n\"3453240\";\"Conceção do Pompeó\";\"other\"\n\"3453240\";\"Pompeo\";\"other\"\n\"3453240\";\"Pompéo\";\"other\"\n\"3453242\";\"Pompéia\";\"main\"\n\"3453242\";\"Pompeia\";\"ascii\"\n\"3453245\";\"Pomerode\";\"main\"\n\"3453245\";\"Rio do Testo\";\"other\"\n\"3453245\";\"Testo\";\"other\"\n\"3453300\";\"Poço Verde\";\"main\"\n\"3453300\";\"Poco Verde\";\"ascii\"\n\"3453303\";\"Poços de Caldas\";\"main\"\n\"3453303\";\"Pocos de Caldas\";\"ascii\"\n\"3453303\";\"Poco Caldas\";\"other\"\n\"3453303\";\"Poço Caldas\";\"other\"\n\"3453315\";\"Poconé\";\"main\"\n\"3453315\";\"Pocone\";\"ascii\"\n\"3453315\";\"Pecone\";\"other\"\n\"3453315\";\"Peconé\";\"other\"\n\"3453337\";\"Poções\";\"main\"\n\"3453337\";\"Pocoes\";\"ascii\"\n\"3453337\";\"Djalma Dutra\";\"other\"\n\"3453406\";\"Poá\";\"main\"\n\"3453406\";\"Poa\";\"ascii\"\n\"3453420\";\"Planaltina\";\"main\"\n\"3453420\";\"Alta Mir\";\"other\"\n\"3453420\";\"Altamira\";\"other\"\n\"3453435\";\"Piúma\";\"main\"\n\"3453435\";\"Piuma\";\"ascii\"\n\"3453439\";\"Piuí\";\"main\"\n\"3453439\";\"Piui\";\"ascii\"\n\"3453439\";\"Piumhy\";\"other\"\n\"3453457\";\"Pitangui\";\"main\"\n\"3453457\";\"Pitanguy\";\"other\"\n\"3453467\";\"Pitangueiras\";\"main\"\n\"3453478\";\"Pitanga\";\"main\"\n\"3453494\";\"Piritiba\";\"main\"\n\"3453494\";\"Cinco Vargens\";\"other\"\n\"3453503\";\"Pires do Rio\";\"main\"\n\"3453503\";\"Pires-du-Riu\";\"other\"\n\"3453503\";\"Пирес-ду-Риу\";\"other\"\n\"3453512\";\"Pirenópolis\";\"main\"\n\"3453512\";\"Pirenopolis\";\"ascii\"\n\"3453512\";\"Meia Ponte\";\"other\"\n\"3453512\";\"Pyrenopolis\";\"other\"\n\"3453535\";\"Piraquara\";\"main\"\n\"3453535\";\"Piraguara\";\"other\"\n\"3453542\";\"Pirapozinho\";\"main\"\n\"3453544\";\"Pirapora do Bom Jesus\";\"main\"\n\"3453544\";\"Pirapora\";\"other\"\n\"3453546\";\"Pirapora\";\"main\"\n\"3453586\";\"Piranhas\";\"main\"\n\"3453605\";\"Pirajuí\";\"main\"\n\"3453605\";\"Pirajui\";\"ascii\"\n\"3453605\";\"Pirajuhy\";\"other\"\n\"3453610\";\"Piraju\";\"main\"\n\"3453622\";\"Piraí do Sul\";\"main\"\n\"3453622\";\"Pirai do Sul\";\"ascii\"\n\"3453622\";\"Pirahy\";\"other\"\n\"3453622\";\"Pirai\";\"other\"\n\"3453622\";\"Pirai-Mirim\";\"other\"\n\"3453622\";\"Piraí\";\"other\"\n\"3453622\";\"Piraí-Mirim\";\"other\"\n\"3453635\";\"Piraí\";\"main\"\n\"3453635\";\"Pirai\";\"ascii\"\n\"3453635\";\"Pirahy\";\"other\"\n\"3453639\";\"Pirassununga\";\"main\"\n\"3453639\";\"Pirassinunga\";\"other\"\n\"3453643\";\"Piracicaba\";\"main\"\n\"3453643\";\"Pirasikaba\";\"other\"\n\"3453643\";\"Пирасикаба\";\"other\"\n\"3453659\";\"Piracanjuba\";\"main\"\n\"3453659\";\"Pouso Alto\";\"other\"\n\"3453661\";\"Piracaia\";\"main\"\n\"3453682\";\"Piquete\";\"main\"\n\"3453741\";\"Pinheiro Machado\";\"main\"\n\"3453741\";\"Cacimbinhas\";\"other\"\n\"3453767\";\"Pinheiral\";\"main\"\n\"3453767\";\"Pinheiro\";\"other\"\n\"3453777\";\"Pinhão\";\"main\"\n\"3453777\";\"Pinhao\";\"ascii\"\n\"3453807\";\"Espírito Santo do Pinhal\";\"main\"\n\"3453807\";\"Espirito Santo do Pinhal\";\"ascii\"\n\"3453821\";\"Pindorama\";\"main\"\n\"3453827\";\"Pindobaçu\";\"main\"\n\"3453827\";\"Pindobacu\";\"ascii\"\n\"3453827\";\"Pindobassu\";\"other\"\n\"3453827\";\"Pindobassú\";\"other\"\n\"3453837\";\"Pindamonhangaba\";\"main\"\n\"3453896\";\"Pilar do Sul\";\"main\"\n\"3453896\";\"Pilar\";\"other\"\n\"3453926\";\"Piedade\";\"main\"\n\"3454005\";\"Piaçabuçu\";\"main\"\n\"3454005\";\"Piacabucu\";\"ascii\"\n\"3454005\";\"Piassabussu\";\"other\"\n\"3454031\";\"Petrópolis\";\"main\"\n\"3454031\";\"Petropolis\";\"ascii\"\n\"3454031\";\"ptrwpwlys\";\"other\"\n\"3454031\";\"Петрополис\";\"other\"\n\"3454031\";\"פטרופוליס\";\"other\"\n\"3454032\";\"Petrolina de Goiás\";\"main\"\n\"3454032\";\"Petrolina de Goias\";\"ascii\"\n\"3454032\";\"Goialina\";\"other\"\n\"3454032\";\"Petrolina\";\"other\"\n\"3454061\";\"Peruíbe\";\"main\"\n\"3454061\";\"Peruibe\";\"ascii\"\n\"3454061\";\"Peruhybe\";\"other\"\n\"3454061\";\"caraguava\";\"other\"\n\"3454131\";\"Pereira Barreto\";\"main\"\n\"3454131\";\"Novo Oriente\";\"other\"\n\"3454139\";\"Perdões\";\"main\"\n\"3454139\";\"Perdoes\";\"ascii\"\n\"3454213\";\"Penha\";\"main\"\n\"3454213\";\"Pen'ja\";\"other\"\n\"3454213\";\"Penha de Itapocoroy\";\"other\"\n\"3454213\";\"Пенья\";\"other\"\n\"3454231\";\"Penedo\";\"main\"\n\"3454231\";\"Sao Francisco\";\"other\"\n\"3454231\";\"São Francisco\";\"other\"\n\"3454235\";\"Penápolis\";\"main\"\n\"3454235\";\"Penapolis\";\"ascii\"\n\"3454235\";\"Pennapolis\";\"other\"\n\"3454235\";\"Пенаполис\";\"other\"\n\"3454244\";\"Pelotas\";\"main\"\n\"3454244\";\"Sao Francisco de Paula\";\"other\"\n\"3454244\";\"São Francisco de Paula\";\"other\"\n\"3454244\";\"Пелотас\";\"other\"\n\"3454358\";\"Pedro Leopoldo\";\"main\"\n\"3454407\";\"Pedreira\";\"main\"\n\"3454407\";\"Pedreiras\";\"other\"\n\"3454407\";\"Pedrejra\";\"other\"\n\"3454407\";\"Педрейра\";\"other\"\n\"3454408\";\"Pedregulho\";\"main\"\n\"3454578\";\"Pedra Azul\";\"main\"\n\"3454578\";\"Fortaleza\";\"other\"\n\"3454578\";\"Forteleza\";\"other\"\n\"3454620\";\"Pederneiras\";\"main\"\n\"3454628\";\"Peçanha\";\"main\"\n\"3454628\";\"Pecanha\";\"ascii\"\n\"3454632\";\"Peabiru\";\"main\"\n\"3454690\";\"Paulínia\";\"main\"\n\"3454690\";\"Paulinia\";\"ascii\"\n\"3454743\";\"Pau Brasil\";\"main\"\n\"3454763\";\"Patrocínio\";\"main\"\n\"3454763\";\"Patrocinio\";\"ascii\"\n\"3454783\";\"Patos de Minas\";\"main\"\n\"3454783\";\"Patos\";\"other\"\n\"3454818\";\"Pato Branco\";\"main\"\n\"3454818\";\"Patu-Branku\";\"other\"\n\"3454818\";\"Пату-Бранку\";\"other\"\n\"3454827\";\"Paty do Alferes\";\"main\"\n\"3454827\";\"Pati-du-Alferis\";\"other\"\n\"3454827\";\"Paty do Alferas\";\"other\"\n\"3454827\";\"Пати-ду-Алферис\";\"other\"\n\"3454847\";\"Passos\";\"main\"\n\"3454847\";\"Пассос\";\"other\"\n\"3454857\";\"Passo Fundo\";\"main\"\n\"3454901\";\"Passa Quatro\";\"main\"\n\"3454901\";\"Passo Quatro\";\"other\"\n\"3454954\";\"Parobé\";\"main\"\n\"3454954\";\"Parobe\";\"ascii\"\n\"3454967\";\"Pariquera Açu\";\"main\"\n\"3454967\";\"Pariquera Acu\";\"ascii\"\n\"3454967\";\"Pariquera Assu\";\"other\"\n\"3454967\";\"Pariquera Assú\";\"other\"\n\"3454967\";\"Pariqueracu\";\"other\"\n\"3454967\";\"Pariqueraçu\";\"other\"\n\"3454968\";\"Paripiranga\";\"main\"\n\"3454968\";\"Malhada Vermelha\";\"other\"\n\"3454968\";\"Patrocinio do Coite\";\"other\"\n\"3454968\";\"Patrocinio do Coité\";\"other\"\n\"3455020\";\"Paraúna\";\"main\"\n\"3455020\";\"Parauna\";\"ascii\"\n\"3455029\";\"Paratinga\";\"main\"\n\"3455029\";\"Rio Branco\";\"other\"\n\"3455036\";\"Parati\";\"main\"\n\"3455036\";\"Paraty\";\"other\"\n\"3455049\";\"Paranhos\";\"main\"\n\"3455051\";\"Paranavaí\";\"main\"\n\"3455051\";\"Paranavai\";\"ascii\"\n\"3455051\";\"Fazenda Ivai\";\"other\"\n\"3455051\";\"Fazenda Ivaí\";\"other\"\n\"3455051\";\"Paranvai\";\"other\"\n\"3455051\";\"Paranvaí\";\"other\"\n\"3455061\";\"Paranapanema\";\"main\"\n\"3455061\";\"Bom Successo\";\"other\"\n\"3455061\";\"Bom Sucesso\";\"other\"\n\"3455065\";\"Paranaíba\";\"main\"\n\"3455065\";\"Paranaiba\";\"ascii\"\n\"3455065\";\"Sant'Anna do Paranahyba\";\"other\"\n\"3455065\";\"Sant'Anna do Paranaiba\";\"other\"\n\"3455065\";\"Santa Ana do Paranaiba\";\"other\"\n\"3455065\";\"Santana do Paranaiba\";\"other\"\n\"3455065\";\"Santana do Paranaíba\";\"other\"\n\"3455065\";\"Паранаиба\";\"other\"\n\"3455070\";\"Paranaguá\";\"main\"\n\"3455070\";\"Paranagua\";\"ascii\"\n\"3455070\";\"Паранагуа\";\"other\"\n\"3455082\";\"Paramirim\";\"main\"\n\"3455089\";\"Paraisópolis\";\"main\"\n\"3455089\";\"Paraisopolis\";\"ascii\"\n\"3455141\";\"Paraíba do Sul\";\"main\"\n\"3455141\";\"Paraiba do Sul\";\"ascii\"\n\"3455141\";\"Parahyba do Sul\";\"other\"\n\"3455141\";\"Paraiba-du-Sul\";\"other\"\n\"3455141\";\"Параиба-ду-Сул\";\"other\"\n\"3455152\";\"Paraguaçu Paulista\";\"main\"\n\"3455152\";\"Paraguacu Paulista\";\"ascii\"\n\"3455152\";\"Araguacu\";\"other\"\n\"3455152\";\"Araguaçu\";\"other\"\n\"3455152\";\"Paraguacu\";\"other\"\n\"3455152\";\"Paraguassu\";\"other\"\n\"3455152\";\"Paraguassú\";\"other\"\n\"3455152\";\"Paraguaçu\";\"other\"\n\"3455155\";\"Paraguaçu\";\"main\"\n\"3455155\";\"Paraguacu\";\"ascii\"\n\"3455155\";\"Paraguassu\";\"other\"\n\"3455155\";\"Paraguassú\";\"other\"\n\"3455161\";\"Pará de Minas\";\"main\"\n\"3455161\";\"Para de Minas\";\"ascii\"\n\"3455161\";\"Para\";\"other\"\n\"3455161\";\"Pará\";\"other\"\n\"3455168\";\"Paracatu\";\"main\"\n\"3455170\";\"Paracambi\";\"main\"\n\"3455170\";\"Paracamby\";\"other\"\n\"3455195\";\"Papagaios\";\"main\"\n\"3455251\";\"Panorama\";\"main\"\n\"3455277\";\"Pancas\";\"main\"\n\"3455277\";\"Santa Luzia\";\"other\"\n\"3455281\";\"Panambi\";\"main\"\n\"3455281\";\"Pindorama\";\"other\"\n\"3455281\";\"Tabapira\";\"other\"\n\"3455298\";\"Palotina\";\"main\"\n\"3455342\";\"Palmital\";\"main\"\n\"3455362\";\"Palmeiras de Goiás\";\"main\"\n\"3455362\";\"Palmeiras de Goias\";\"ascii\"\n\"3455362\";\"Freire Alemao\";\"other\"\n\"3455362\";\"Freire Alemão\";\"other\"\n\"3455362\";\"Matauna\";\"other\"\n\"3455362\";\"Mataúna\";\"other\"\n\"3455362\";\"Palmeira de Goias\";\"other\"\n\"3455362\";\"Palmeira de Goiás\";\"other\"\n\"3455362\";\"Palmeiras\";\"other\"\n\"3455416\";\"Palmeira das Missões\";\"main\"\n\"3455416\";\"Palmeira das Missoes\";\"ascii\"\n\"3455416\";\"Palmeira\";\"other\"\n\"3455425\";\"Palmeira\";\"main\"\n\"3455447\";\"Palmas de Monte Alto\";\"main\"\n\"3455447\";\"Monte Alto\";\"other\"\n\"3455459\";\"Palmas\";\"main\"\n\"3455459\";\"Pal'mas\";\"other\"\n\"3455459\";\"Пальмас\";\"other\"\n\"3455461\";\"Palmares do Sul\";\"main\"\n\"3455461\";\"Emilio Meier\";\"other\"\n\"3455461\";\"Emilio Meyer\";\"other\"\n\"3455461\";\"Emílio Meyer\";\"other\"\n\"3455461\";\"Emílio Méier\";\"other\"\n\"3455461\";\"Juruma\";\"other\"\n\"3455461\";\"Palmares\";\"other\"\n\"3455478\";\"Palhoça\";\"main\"\n\"3455478\";\"Palhoca\";\"ascii\"\n\"3455553\";\"Paiçandu\";\"main\"\n\"3455553\";\"Paicandu\";\"ascii\"\n\"3455553\";\"Paissandu\";\"other\"\n\"3455568\";\"Padre Paraíso\";\"main\"\n\"3455568\";\"Padre Paraiso\";\"ascii\"\n\"3455580\";\"Padre Bernardo\";\"main\"\n\"3455580\";\"Barroca\";\"other\"\n\"3455637\";\"Pacatuba\";\"main\"\n\"3455637\";\"Pacatiba\";\"other\"\n\"3455643\";\"Pacaembu\";\"main\"\n\"3455643\";\"Guaraniuva\";\"other\"\n\"3455643\";\"Guaraniúva\";\"other\"\n\"3455671\";\"Ouro Preto\";\"main\"\n\"3455671\";\"Oru-Pretu\";\"other\"\n\"3455671\";\"Ору-Прету\";\"other\"\n\"3455671\";\"オウロ・プレット\";\"other\"\n\"3455689\";\"Ouro Branco\";\"main\"\n\"3455729\";\"Ourinhos\";\"main\"\n\"3455729\";\"Orin'jus\";\"other\"\n\"3455729\";\"Ориньюс\";\"other\"\n\"3455750\";\"Otacílio Costa\";\"main\"\n\"3455750\";\"Otacilio Costa\";\"ascii\"\n\"3455756\";\"Osvaldo Cruz\";\"main\"\n\"3455769\";\"Osório\";\"main\"\n\"3455769\";\"Osorio\";\"ascii\"\n\"3455769\";\"Conceicao do Arroio\";\"other\"\n\"3455769\";\"Conceicao do Arrolo\";\"other\"\n\"3455769\";\"Conceição do Arroio\";\"other\"\n\"3455769\";\"Осорио\";\"other\"\n\"3455775\";\"Osasco\";\"main\"\n\"3455775\";\"Osasku\";\"other\"\n\"3455775\";\"Осаску\";\"other\"\n\"3455777\";\"Ortigueira\";\"main\"\n\"3455777\";\"Ortigeira\";\"other\"\n\"3455777\";\"Queimadas\";\"other\"\n\"3455777\";\"Urtigueira\";\"other\"\n\"3455784\";\"Orleans\";\"main\"\n\"3455784\";\"Orleans do Sul\";\"other\"\n\"3455785\";\"Orlândia\";\"main\"\n\"3455785\";\"Orlandia\";\"ascii\"\n\"3455786\";\"Orizona\";\"main\"\n\"3455786\";\"Arizona\";\"other\"\n\"3455786\";\"Campo Formosa\";\"other\"\n\"3455786\";\"Campo Formoso\";\"other\"\n\"3455903\";\"Oliveira dos Brejinhos\";\"main\"\n\"3455903\";\"Oliveira do Brejinho\";\"other\"\n\"3455908\";\"Oliveira\";\"main\"\n\"3455908\";\"Olivejra\";\"other\"\n\"3455908\";\"Olivera\";\"other\"\n\"3455908\";\"Оливейра\";\"other\"\n\"3455913\";\"Olindina\";\"main\"\n\"3455913\";\"Mucambo\";\"other\"\n\"3455913\";\"Nova Olinda\";\"other\"\n\"3455923\";\"Olímpia\";\"main\"\n\"3455923\";\"Olimpia\";\"ascii\"\n\"3455923\";\"Olimpija\";\"other\"\n\"3455923\";\"Olympia\";\"other\"\n\"3455923\";\"Олимпия\";\"other\"\n\"3456060\";\"Novo Horizonte\";\"main\"\n\"3456068\";\"Novo Hamburgo\";\"main\"\n\"3456068\";\"Novo Hamburg\";\"other\"\n\"3456068\";\"Potiguara\";\"other\"\n\"3456070\";\"Novo Cruzeiro\";\"main\"\n\"3456070\";\"Gravata\";\"other\"\n\"3456102\";\"Nova Viçosa\";\"main\"\n\"3456102\";\"Nova Vicosa\";\"ascii\"\n\"3456102\";\"Maroba\";\"other\"\n\"3456102\";\"Marobá\";\"other\"\n\"3456102\";\"Vicosa\";\"other\"\n\"3456102\";\"Viçosa\";\"other\"\n\"3456110\";\"Nova Venécia\";\"main\"\n\"3456110\";\"Nova Venecia\";\"ascii\"\n\"3456115\";\"Nova Soure\";\"main\"\n\"3456115\";\"Natuba\";\"other\"\n\"3456115\";\"Soure\";\"other\"\n\"3456125\";\"Nova Prata\";\"main\"\n\"3456125\";\"Caibate\";\"other\"\n\"3456125\";\"Prata\";\"other\"\n\"3456127\";\"Nova Petrópolis\";\"main\"\n\"3456127\";\"Nova Petropolis\";\"ascii\"\n\"3456137\";\"Nova Olímpia\";\"main\"\n\"3456137\";\"Nova Olimpia\";\"ascii\"\n\"3456138\";\"Nova Odessa\";\"main\"\n\"3456146\";\"Nova Londrina\";\"main\"\n\"3456147\";\"Nova Lima\";\"main\"\n\"3456147\";\"Nova-Lima\";\"other\"\n\"3456147\";\"Нова-Лима\";\"other\"\n\"3456160\";\"Nova Iguaçu\";\"main\"\n\"3456160\";\"Nova Iguacu\";\"ascii\"\n\"3456160\";\"Nova Iguassu\";\"other\"\n\"3456160\";\"Nova Iguassú\";\"other\"\n\"3456160\";\"Nova-Iguasu\";\"other\"\n\"3456160\";\"Нова-Игуасу\";\"other\"\n\"3456164\";\"Nova Granada\";\"main\"\n\"3456164\";\"Novo Granaoa\";\"other\"\n\"3456166\";\"Nova Friburgo\";\"main\"\n\"3456176\";\"Nova Era\";\"main\"\n\"3456176\";\"Presidente Vargas\";\"other\"\n\"3456176\";\"Sao Jose da Lagoa\";\"other\"\n\"3456176\";\"São José da Lagôa\";\"other\"\n\"3456196\";\"Nova Aurora\";\"main\"\n\"3456223\";\"Nossa Senhora do Socorro\";\"main\"\n\"3456223\";\"Contiguiba\";\"other\"\n\"3456223\";\"Cotinguiba\";\"other\"\n\"3456223\";\"Cotingüiba\";\"other\"\n\"3456223\";\"Soccorro\";\"other\"\n\"3456223\";\"Socorro\";\"other\"\n\"3456234\";\"Nossa Senhora das Dores\";\"main\"\n\"3456240\";\"Nossa Senhora da Glória\";\"main\"\n\"3456240\";\"Nossa Senhora da Gloria\";\"ascii\"\n\"3456248\";\"Nortelândia\";\"main\"\n\"3456248\";\"Nortelandia\";\"ascii\"\n\"3456277\";\"Nobres\";\"main\"\n\"3456277\";\"Bananal Nobre\";\"other\"\n\"3456283\";\"Niterói\";\"main\"\n\"3456283\";\"Niteroi\";\"ascii\"\n\"3456283\";\"Nictheroi\";\"other\"\n\"3456283\";\"Nictheroy\";\"other\"\n\"3456283\";\"Niteroj\";\"other\"\n\"3456283\";\"Vila Real da Praia Grande\";\"other\"\n\"3456283\";\"Villa Real da Praia Grande\";\"other\"\n\"3456283\";\"niteroi\";\"other\"\n\"3456283\";\"Нитерой\";\"other\"\n\"3456283\";\"ニテロイ\";\"other\"\n\"3456285\";\"Niquelândia\";\"main\"\n\"3456285\";\"Niquelandia\";\"ascii\"\n\"3456285\";\"Nikelandija\";\"other\"\n\"3456285\";\"Sao Jose De Tocantins\";\"other\"\n\"3456285\";\"Sao Jose do Tocantins\";\"other\"\n\"3456285\";\"São José do Tocantins\";\"other\"\n\"3456285\";\"Никеландия\";\"other\"\n\"3456290\";\"Nilópolis\";\"main\"\n\"3456290\";\"Nilopolis\";\"ascii\"\n\"3456322\";\"Nerópolis\";\"main\"\n\"3456322\";\"Neropolis\";\"ascii\"\n\"3456322\";\"Нерополис\";\"other\"\n\"3456324\";\"Nepomuceno\";\"main\"\n\"3456325\";\"Neópolis\";\"main\"\n\"3456325\";\"Neopolis\";\"ascii\"\n\"3456325\";\"Vila Nova\";\"other\"\n\"3456325\";\"Villa Nova\";\"other\"\n\"3456366\";\"Nazaré\";\"main\"\n\"3456366\";\"Nazare\";\"ascii\"\n\"3456366\";\"Nazar\";\"other\"\n\"3456366\";\"Nazare das Farinhas\";\"other\"\n\"3456366\";\"Nazareth\";\"other\"\n\"3456366\";\"Nazaré das Farinhas\";\"other\"\n\"3456366\";\"Назар\";\"other\"\n\"3456368\";\"Naviraí\";\"main\"\n\"3456368\";\"Navirai\";\"ascii\"\n\"3456368\";\"Porto Luiza\";\"other\"\n\"3456368\";\"Pôrto Luiza\";\"other\"\n\"3456368\";\"Навираи\";\"other\"\n\"3456370\";\"Navegantes\";\"main\"\n\"3456370\";\"Navegantis\";\"other\"\n\"3456370\";\"Навегантис\";\"other\"\n\"3456377\";\"Natividade\";\"main\"\n\"3456397\";\"Não Me Toque\";\"main\"\n\"3456397\";\"Nao Me Toque\";\"ascii\"\n\"3456397\";\"Nao Me Toques\";\"other\"\n\"3456397\";\"Não Me Toques\";\"other\"\n\"3456398\";\"Nanuque\";\"main\"\n\"3456398\";\"Indiana\";\"other\"\n\"3456412\";\"Muzambinho\";\"main\"\n\"3456445\";\"Mutum\";\"main\"\n\"3456445\";\"Sao Manoel do Mutum\";\"other\"\n\"3456445\";\"Sao Manoel du Mutum\";\"other\"\n\"3456445\";\"Sao Manuel do Mutum\";\"other\"\n\"3456445\";\"São Manoel do Mutum\";\"other\"\n\"3456450\";\"Mutuípe\";\"main\"\n\"3456450\";\"Mutuipe\";\"ascii\"\n\"3456483\";\"Muritiba\";\"main\"\n\"3456500\";\"Muriaé\";\"main\"\n\"3456500\";\"Muriae\";\"ascii\"\n\"3456500\";\"Muriaeh\";\"other\"\n\"3456500\";\"Muriahe\";\"other\"\n\"3456500\";\"Muriahé\";\"other\"\n\"3456500\";\"Murihe\";\"other\"\n\"3456500\";\"Murriae\";\"other\"\n\"3456500\";\"Муриаэ\";\"other\"\n\"3456530\";\"Muniz Freire\";\"main\"\n\"3456559\";\"Mundo Novo\";\"main\"\n\"3456591\";\"Mucurici\";\"main\"\n\"3456591\";\"Alto Itauna\";\"other\"\n\"3456591\";\"Alto Itaunas\";\"other\"\n\"3456591\";\"Alto Itaúna\";\"other\"\n\"3456591\";\"Alto Itaúnas\";\"other\"\n\"3456593\";\"Mucuri\";\"main\"\n\"3456593\";\"Mucury\";\"other\"\n\"3456593\";\"Mukuri\";\"other\"\n\"3456593\";\"Porto Alegre\";\"other\"\n\"3456593\";\"Мукури\";\"other\"\n\"3456642\";\"Mozarlândia\";\"main\"\n\"3456642\";\"Mozarlandia\";\"ascii\"\n\"3456696\";\"Morro do Chapéu\";\"main\"\n\"3456696\";\"Morro do Chapeu\";\"ascii\"\n\"3456696\";\"Morro de Chapeo\";\"other\"\n\"3456696\";\"Morro do Chapeo\";\"other\"\n\"3456696\";\"Morro do Chapéo\";\"other\"\n\"3456707\";\"Morro da Fumaça\";\"main\"\n\"3456707\";\"Morro da Fumaca\";\"ascii\"\n\"3456724\";\"Morro Agudo\";\"main\"\n\"3456735\";\"Morrinhos\";\"main\"\n\"3456763\";\"Moreira Sales\";\"main\"\n\"3456806\";\"Monte Sião\";\"main\"\n\"3456806\";\"Monte Siao\";\"ascii\"\n\"3456814\";\"Montes Claros\";\"main\"\n\"3456816\";\"Monte Santo de Minas\";\"main\"\n\"3456816\";\"Monsanto\";\"other\"\n\"3456816\";\"Monte Santo\";\"other\"\n\"3456820\";\"Monte Santo\";\"main\"\n\"3456827\";\"Monte Mor\";\"main\"\n\"3456848\";\"Monte Carmelo\";\"main\"\n\"3456848\";\"Monte Carmello\";\"other\"\n\"3456863\";\"Monte Azul Paulista\";\"main\"\n\"3456863\";\"Monte Azul\";\"other\"\n\"3456863\";\"Monte Azul do Turvo\";\"other\"\n\"3456864\";\"Monte Azul\";\"main\"\n\"3456864\";\"Boa Vista do Tremendal\";\"other\"\n\"3456864\";\"Tremedal\";\"other\"\n\"3456866\";\"Monte Aprazível\";\"main\"\n\"3456866\";\"Monte Aprazivel\";\"ascii\"\n\"3456873\";\"Monte Alto\";\"main\"\n\"3456879\";\"Monte Alegre de Sergipe\";\"main\"\n\"3456879\";\"Monte Alegre\";\"other\"\n\"3456880\";\"Monte Alegre de Minas\";\"main\"\n\"3456880\";\"Monte Alegre\";\"other\"\n\"3456880\";\"Toribate\";\"other\"\n\"3456880\";\"Toribatê\";\"other\"\n\"3456905\";\"Montanha\";\"main\"\n\"3456905\";\"Comercinho de Palha\";\"other\"\n\"3456905\";\"Montana\";\"other\"\n\"3456905\";\"Santo Antonio da Montanha\";\"other\"\n\"3456905\";\"Santo Antônio da Montanha\";\"other\"\n\"3456944\";\"Mongaguá\";\"main\"\n\"3456944\";\"Mongagua\";\"ascii\"\n\"3456977\";\"Moita Bonita\";\"main\"\n\"3456998\";\"Mogi Mirim\";\"main\"\n\"3456998\";\"Mogy-Mirim\";\"other\"\n\"3456998\";\"Moji-Mirim\";\"other\"\n\"3457000\";\"Mogi Guaçu\";\"main\"\n\"3457000\";\"Mogi Guacu\";\"ascii\"\n\"3457000\";\"Mogy Guassu\";\"other\"\n\"3457000\";\"Mogy Guassú\";\"other\"\n\"3457000\";\"Moji-Guacu\";\"other\"\n\"3457000\";\"Moji-Guaçu\";\"other\"\n\"3457001\";\"Mogi das Cruzes\";\"main\"\n\"3457001\";\"Mogy das Cruzes\";\"other\"\n\"3457001\";\"Moji das Cruzes\";\"other\"\n\"3457025\";\"Mococa\";\"main\"\n\"3457098\";\"Mirante do Paranapanema\";\"main\"\n\"3457107\";\"Mirandopólis\";\"main\"\n\"3457107\";\"Mirandopolis\";\"ascii\"\n\"3457107\";\"Comandante Arbues\";\"other\"\n\"3457107\";\"Мирандополис\";\"other\"\n\"3457113\";\"Miranda\";\"main\"\n\"3457119\";\"Miraí\";\"main\"\n\"3457119\";\"Mirai\";\"ascii\"\n\"3457119\";\"Mirahy\";\"other\"\n\"3457133\";\"Miracema\";\"main\"\n\"3457133\";\"Mirasema\";\"other\"\n\"3457133\";\"Мирасема\";\"other\"\n\"3457135\";\"Miracatu\";\"main\"\n\"3457135\";\"Prainha\";\"other\"\n\"3457136\";\"Mirabela\";\"main\"\n\"3457136\";\"Bela Vista\";\"other\"\n\"3457136\";\"Bella Vista\";\"other\"\n\"3457147\";\"Mineiros\";\"main\"\n\"3457152\";\"Minas Novas\";\"main\"\n\"3457161\";\"Mimoso do Sul\";\"main\"\n\"3457161\";\"Joao Pessoa\";\"other\"\n\"3457161\";\"João Pessoa\";\"other\"\n\"3457161\";\"Mimoso\";\"other\"\n\"3457191\";\"Miguel Pereira\";\"main\"\n\"3457192\";\"Miguelópolis\";\"main\"\n\"3457192\";\"Miguelopolis\";\"ascii\"\n\"3457202\";\"Miguel Calmon\";\"main\"\n\"3457202\";\"Djalma Dutra\";\"other\"\n\"3457247\";\"Mendes\";\"main\"\n\"3457358\";\"Medina\";\"main\"\n\"3457358\";\"Santa Rita do Itinga\";\"other\"\n\"3457358\";\"Santa Rita do Medina\";\"other\"\n\"3457359\";\"Medianeira\";\"main\"\n\"3457359\";\"Medianejra\";\"other\"\n\"3457359\";\"Nova Santa Medianeira\";\"other\"\n\"3457359\";\"Медианейра\";\"other\"\n\"3457360\";\"Medeiros Neto\";\"main\"\n\"3457381\";\"Mauá\";\"main\"\n\"3457381\";\"Maua\";\"ascii\"\n\"3457393\";\"Matozinhos\";\"main\"\n\"3457393\";\"Mattosinhos\";\"other\"\n\"3457398\";\"Mato Verde\";\"main\"\n\"3457398\";\"Matto Verde\";\"other\"\n\"3457454\";\"Matipó\";\"main\"\n\"3457454\";\"Matipo\";\"ascii\"\n\"3457454\";\"Sao Joao do Matipo\";\"other\"\n\"3457454\";\"São João do Matipo\";\"other\"\n\"3457479\";\"Matias Barbosa\";\"main\"\n\"3457479\";\"Mathias Barbosa\";\"other\"\n\"3457484\";\"Mateus Leme\";\"main\"\n\"3457484\";\"Matheus Leme\";\"other\"\n\"3457487\";\"Matelândia\";\"main\"\n\"3457487\";\"Matelandia\";\"ascii\"\n\"3457487\";\"Metelandia\";\"other\"\n\"3457487\";\"Metelândia\";\"other\"\n\"3457509\";\"Matão\";\"main\"\n\"3457509\";\"Matao\";\"ascii\"\n\"3457509\";\"Mattao\";\"other\"\n\"3457509\";\"Mattão\";\"other\"\n\"3457528\";\"Mata de São João\";\"main\"\n\"3457528\";\"Mata de Sao Joao\";\"ascii\"\n\"3457528\";\"Mata-de-San-Zhuan\";\"other\"\n\"3457528\";\"Matta de Sao Joao\";\"other\"\n\"3457528\";\"Matta de São João\";\"other\"\n\"3457528\";\"Мата-де-Сан-Жуан\";\"other\"\n\"3457566\";\"Mascote\";\"main\"\n\"3457582\";\"Maruim\";\"main\"\n\"3457582\";\"Mariom\";\"other\"\n\"3457582\";\"Maroim\";\"other\"\n\"3457595\";\"Martinópolis\";\"main\"\n\"3457595\";\"Martinopolis\";\"ascii\"\n\"3457595\";\"Jose Teodoro\";\"other\"\n\"3457595\";\"Jose Theodoro\";\"other\"\n\"3457595\";\"José Teodoro\";\"other\"\n\"3457595\";\"José Theodoro\";\"other\"\n\"3457598\";\"Martinho Campos\";\"main\"\n\"3457598\";\"Abadia de Pitangui\";\"other\"\n\"3457598\";\"Abadia de Pitanguí\";\"other\"\n\"3457598\";\"Abadia do Pitangui\";\"other\"\n\"3457598\";\"Abadia do Pitanguí\";\"other\"\n\"3457598\";\"Abbadia\";\"other\"\n\"3457671\";\"Maringá\";\"main\"\n\"3457671\";\"Maringa\";\"ascii\"\n\"3457671\";\"maringa\";\"other\"\n\"3457671\";\"マリンガ\";\"other\"\n\"3457692\";\"Marília\";\"main\"\n\"3457692\";\"Marilia\";\"ascii\"\n\"3457692\";\"Maril'ja\";\"other\"\n\"3457692\";\"Марилья\";\"other\"\n\"3457697\";\"Marilândia\";\"main\"\n\"3457697\";\"Marilandia\";\"ascii\"\n\"3457708\";\"Maricá\";\"main\"\n\"3457708\";\"Marica\";\"ascii\"\n\"3457736\";\"Mariana\";\"main\"\n\"3457736\";\"Marianna\";\"other\"\n\"3457736\";\"Мариана\";\"other\"\n\"3457741\";\"Marialva\";\"main\"\n\"3457770\";\"Marechal Floriano\";\"main\"\n\"3457772\";\"Marechal Cândido Rondon\";\"main\"\n\"3457772\";\"Marechal Candido Rondon\";\"ascii\"\n\"3457772\";\"General Rondon\";\"other\"\n\"3457776\";\"Mar de Espanha\";\"main\"\n\"3457776\";\"Mar d'Hespanha\";\"other\"\n\"3457776\";\"Mar de Hespanha\";\"other\"\n\"3457817\";\"Marau\";\"main\"\n\"3457818\";\"Maraú\";\"main\"\n\"3457818\";\"Marau\";\"ascii\"\n\"3457818\";\"Marahu\";\"other\"\n\"3457818\";\"Marahú\";\"other\"\n\"3457819\";\"Marataizes\";\"main\"\n\"3457850\";\"Maragogipe\";\"main\"\n\"3457850\";\"Maragojipe\";\"other\"\n\"3457854\";\"Maracás\";\"main\"\n\"3457854\";\"Maracas\";\"ascii\"\n\"3457859\";\"Maracaju\";\"main\"\n\"3457862\";\"Maracaí\";\"main\"\n\"3457862\";\"Maracai\";\"ascii\"\n\"3457862\";\"Maracahy\";\"other\"\n\"3457928\";\"Mantenópolis\";\"main\"\n\"3457928\";\"Mantenopolis\";\"ascii\"\n\"3457928\";\"Ametista\";\"other\"\n\"3457928\";\"Manteninha\";\"other\"\n\"3457950\";\"Manhumirim\";\"main\"\n\"3457952\";\"Manhuaçu\";\"main\"\n\"3457952\";\"Manhuacu\";\"ascii\"\n\"3457952\";\"Man'juasu\";\"other\"\n\"3457952\";\"Manhuassu\";\"other\"\n\"3457952\";\"Manhuassú\";\"other\"\n\"3457952\";\"Маньюасу\";\"other\"\n\"3457991\";\"Mangaratiba\";\"main\"\n\"3457991\";\"Mangalatiba\";\"other\"\n\"3458020\";\"Manga\";\"main\"\n\"3458049\";\"Mandaguari\";\"main\"\n\"3458049\";\"Lovat\";\"other\"\n\"3458051\";\"Mandaguaçu\";\"main\"\n\"3458051\";\"Mandaguacu\";\"ascii\"\n\"3458051\";\"Vila Guaira\";\"other\"\n\"3458093\";\"Malhador\";\"main\"\n\"3458121\";\"Malacacheta\";\"main\"\n\"3458131\";\"Mairiporã\";\"main\"\n\"3458131\";\"Mairipora\";\"ascii\"\n\"3458131\";\"Juqueri\";\"other\"\n\"3458131\";\"Juquery\";\"other\"\n\"3458132\";\"Mairinque\";\"main\"\n\"3458132\";\"Majrinki\";\"other\"\n\"3458132\";\"Mayrink\";\"other\"\n\"3458132\";\"Майринки\";\"other\"\n\"3458134\";\"Mairi\";\"main\"\n\"3458134\";\"Monte Alegre\";\"other\"\n\"3458147\";\"Mafra\";\"main\"\n\"3458147\";\"Mafre\";\"other\"\n\"3458147\";\"Villa de Mafra\";\"other\"\n\"3458147\";\"Мафре\";\"other\"\n\"3458161\";\"Madre de Deus\";\"main\"\n\"3458161\";\"Suape\";\"other\"\n\"3458211\";\"Machado\";\"main\"\n\"3458237\";\"Macaúbas\";\"main\"\n\"3458237\";\"Macaubas\";\"ascii\"\n\"3458237\";\"Macahubas\";\"other\"\n\"3458245\";\"Macatuba\";\"main\"\n\"3458245\";\"Bocaiuva\";\"other\"\n\"3458245\";\"Bocayuva\";\"other\"\n\"3458266\";\"Macaé\";\"main\"\n\"3458266\";\"Macae\";\"ascii\"\n\"3458266\";\"Macahe\";\"other\"\n\"3458266\";\"Macahé\";\"other\"\n\"3458329\";\"Luziânia\";\"main\"\n\"3458329\";\"Luziania\";\"ascii\"\n\"3458329\";\"Luzilandia\";\"other\"\n\"3458329\";\"Luzilândia\";\"other\"\n\"3458329\";\"Santa-Luzia\";\"other\"\n\"3458333\";\"Luz\";\"main\"\n\"3458333\";\"Nossa Senhora da Luz do Aterrado\";\"other\"\n\"3458390\";\"Lucélia\";\"main\"\n\"3458390\";\"Lucelia\";\"ascii\"\n\"3458397\";\"Lucas\";\"main\"\n\"3458397\";\"Flexas\";\"other\"\n\"3458397\";\"Lukas\";\"other\"\n\"3458397\";\"Лукас\";\"other\"\n\"3458406\";\"Louveira\";\"main\"\n\"3458425\";\"Lorena\";\"main\"\n\"3458449\";\"Londrina\";\"main\"\n\"3458449\";\"rondorina\";\"other\"\n\"3458449\";\"Лондрина\";\"other\"\n\"3458449\";\"ロンドリーナ\";\"other\"\n\"3458479\";\"Loanda\";\"main\"\n\"3458479\";\"Luanda\";\"other\"\n\"3458481\";\"Livramento do Brumado\";\"main\"\n\"3458481\";\"Liveramento do Brumado\";\"other\"\n\"3458481\";\"Livramento\";\"other\"\n\"3458481\";\"Villa Velha\";\"other\"\n\"3458494\";\"Lins\";\"main\"\n\"3458494\";\"Albuquerque Lins\";\"other\"\n\"3458494\";\"Линс\";\"other\"\n\"3458498\";\"Linhares\";\"main\"\n\"3458575\";\"Limeira\";\"main\"\n\"3458591\";\"Lima Duarte\";\"main\"\n\"3458632\";\"Leopoldina\";\"main\"\n\"3458645\";\"Lençóis Paulista\";\"main\"\n\"3458645\";\"Lencois Paulista\";\"ascii\"\n\"3458645\";\"Lencoes\";\"other\"\n\"3458645\";\"Lencois\";\"other\"\n\"3458645\";\"Lençoes\";\"other\"\n\"3458645\";\"Lençóis\";\"other\"\n\"3458645\";\"Ubirama\";\"other\"\n\"3458662\";\"Leme\";\"main\"\n\"3458662\";\"Lem\";\"other\"\n\"3458662\";\"Лем\";\"other\"\n\"3458696\";\"Lavras\";\"main\"\n\"3458721\";\"Lauro Muller\";\"main\"\n\"3458721\";\"Louro Muller\";\"other\"\n\"3458721\";\"Louro Müller\";\"other\"\n\"3458746\";\"Laranjeiras do Sul\";\"main\"\n\"3458746\";\"Iguacu\";\"other\"\n\"3458746\";\"Iguassu\";\"other\"\n\"3458746\";\"Iguassú\";\"other\"\n\"3458746\";\"Iguaçu\";\"other\"\n\"3458746\";\"Laranginha\";\"other\"\n\"3458746\";\"Laranjeiras\";\"other\"\n\"3458778\";\"Laranjeiras\";\"main\"\n\"3458778\";\"Larangeiras\";\"other\"\n\"3458786\";\"Laranjal Paulista\";\"main\"\n\"3458786\";\"Laranjal\";\"other\"\n\"3458805\";\"Laranja da Terra\";\"main\"\n\"3458817\";\"Lapão\";\"main\"\n\"3458817\";\"Lapao\";\"ascii\"\n\"3458826\";\"Lapa\";\"main\"\n\"3458881\";\"Lambari\";\"main\"\n\"3458881\";\"Lambary\";\"other\"\n\"3458902\";\"Lajinha\";\"main\"\n\"3458902\";\"Laginha\";\"other\"\n\"3458930\";\"Lages\";\"main\"\n\"3459035\";\"Lajeado\";\"main\"\n\"3459035\";\"Costao\";\"other\"\n\"3459035\";\"Costão\";\"other\"\n\"3459035\";\"Lageado\";\"other\"\n\"3459088\";\"Laje\";\"main\"\n\"3459088\";\"Abreus\";\"other\"\n\"3459088\";\"Lage\";\"other\"\n\"3459094\";\"Laguna\";\"main\"\n\"3459126\";\"Lagoa Vermelha\";\"main\"\n\"3459138\";\"Lagoa Santa\";\"main\"\n\"3459181\";\"Lagoa Formosa\";\"main\"\n\"3459251\";\"Lagoa da Prata\";\"main\"\n\"3459342\";\"Lagarto\";\"main\"\n\"3459352\";\"Ladário\";\"main\"\n\"3459352\";\"Ladario\";\"ascii\"\n\"3459435\";\"Juquitiba\";\"main\"\n\"3459435\";\"Jacuitiba\";\"other\"\n\"3459435\";\"Jucuitiba\";\"other\"\n\"3459440\";\"Juquiá\";\"main\"\n\"3459440\";\"Juquia\";\"ascii\"\n\"3459440\";\"Santo Antonio de Juquia\";\"other\"\n\"3459440\";\"Santo António de Juquia\";\"other\"\n\"3459452\";\"Junqueirópolis\";\"main\"\n\"3459452\";\"Junqueiropolis\";\"ascii\"\n\"3459462\";\"Jundiaí\";\"main\"\n\"3459462\";\"Jundiai\";\"ascii\"\n\"3459462\";\"Jundiahy\";\"other\"\n\"3459495\";\"Júlio de Castilhos\";\"main\"\n\"3459495\";\"Julio de Castilhos\";\"ascii\"\n\"3459495\";\"Julio do Castilhos\";\"other\"\n\"3459505\";\"Juiz de Fora\";\"main\"\n\"3459505\";\"Zhuis-di-Fora\";\"other\"\n\"3459505\";\"Жуис-ди-Фора\";\"other\"\n\"3459550\";\"Juatuba\";\"main\"\n\"3459667\";\"José Bonifácio\";\"main\"\n\"3459667\";\"Jose Bonifacio\";\"ascii\"\n\"3459712\";\"Joinville\";\"main\"\n\"3459785\";\"João Pinheiro\";\"main\"\n\"3459785\";\"Joao Pinheiro\";\"ascii\"\n\"3459795\";\"João Neiva\";\"main\"\n\"3459795\";\"Joao Neiva\";\"ascii\"\n\"3459796\";\"João Monlevade\";\"main\"\n\"3459796\";\"Joao Monlevade\";\"ascii\"\n\"3459796\";\"Joao\";\"other\"\n\"3459796\";\"João\";\"other\"\n\"3459796\";\"Monlevade\";\"other\"\n\"3459855\";\"Joanópolis\";\"main\"\n\"3459855\";\"Joanopolis\";\"ascii\"\n\"3459855\";\"Joannopolis\";\"other\"\n\"3459867\";\"Joaíma\";\"main\"\n\"3459867\";\"Joaima\";\"ascii\"\n\"3459867\";\"Joahyma\";\"other\"\n\"3459869\";\"Joaçaba\";\"main\"\n\"3459869\";\"Joacaba\";\"ascii\"\n\"3459869\";\"Cruzeiro\";\"other\"\n\"3459869\";\"Cruzeiro do Sul\";\"other\"\n\"3459869\";\"Juacaba\";\"other\"\n\"3459869\";\"Juaçaba\";\"other\"\n\"3459869\";\"Limeira\";\"other\"\n\"3459876\";\"Jitaúna\";\"main\"\n\"3459876\";\"Jitauna\";\"ascii\"\n\"3459901\";\"Jetibá\";\"main\"\n\"3459901\";\"Jetiba\";\"ascii\"\n\"3459901\";\"Jequitiba\";\"other\"\n\"3459909\";\"Jerônimo Monteiro\";\"main\"\n\"3459909\";\"Jeronimo Monteiro\";\"ascii\"\n\"3459909\";\"Vala do Souza\";\"other\"\n\"3459909\";\"Valla do Souza\";\"other\"\n\"3459922\";\"Jeremoabo\";\"main\"\n\"3459922\";\"Geremoabo\";\"other\"\n\"3459925\";\"Jequitinhonha\";\"main\"\n\"3459925\";\"Sao Miguel de Jequitinhonha\";\"other\"\n\"3459925\";\"São Miguel de Jequitinhonha\";\"other\"\n\"3459943\";\"Jequié\";\"main\"\n\"3459943\";\"Jequie\";\"ascii\"\n\"3459943\";\"Jiquie\";\"other\"\n\"3459943\";\"Jiquié\";\"other\"\n\"3460005\";\"Jaú\";\"main\"\n\"3460005\";\"Jau\";\"ascii\"\n\"3460005\";\"Jahu\";\"other\"\n\"3460005\";\"Jahú\";\"other\"\n\"3460048\";\"Jataizinho\";\"main\"\n\"3460048\";\"Colonia Jatahy\";\"other\"\n\"3460048\";\"Jatahy Parana\";\"other\"\n\"3460048\";\"Jatahy Paraná\";\"other\"\n\"3460048\";\"Jatai\";\"other\"\n\"3460048\";\"Jatal\";\"other\"\n\"3460048\";\"Jataí\";\"other\"\n\"3460064\";\"Jataí\";\"main\"\n\"3460064\";\"Jatai\";\"ascii\"\n\"3460064\";\"Jatahy\";\"other\"\n\"3460068\";\"Jarinu\";\"main\"\n\"3460071\";\"Jardinópolis\";\"main\"\n\"3460071\";\"Jardinopolis\";\"ascii\"\n\"3460087\";\"Jardim\";\"main\"\n\"3460102\";\"Jaraguá do Sul\";\"main\"\n\"3460102\";\"Jaragua do Sul\";\"ascii\"\n\"3460102\";\"Jaragua\";\"other\"\n\"3460102\";\"Jaraguá\";\"other\"\n\"3460107\";\"Jaraguá\";\"main\"\n\"3460107\";\"Jaragua\";\"ascii\"\n\"3460127\";\"Japoatã\";\"main\"\n\"3460127\";\"Japoata\";\"ascii\"\n\"3460127\";\"Jaboatao\";\"other\"\n\"3460127\";\"Jaboatão\";\"other\"\n\"3460132\";\"Japeri\";\"main\"\n\"3460136\";\"Japaratuba\";\"main\"\n\"3460148\";\"Januária\";\"main\"\n\"3460148\";\"Januaria\";\"ascii\"\n\"3460170\";\"Jandira\";\"main\"\n\"3460172\";\"Jandaia do Sul\";\"main\"\n\"3460172\";\"Jandaia\";\"other\"\n\"3460174\";\"Janaúba\";\"main\"\n\"3460174\";\"Janauba\";\"ascii\"\n\"3460186\";\"Jales\";\"main\"\n\"3460197\";\"Jaguaruna\";\"main\"\n\"3460200\";\"Jaguariúna\";\"main\"\n\"3460200\";\"Jaguariuna\";\"ascii\"\n\"3460200\";\"Jaguari\";\"other\"\n\"3460200\";\"Jaguary\";\"other\"\n\"3460200\";\"Jaguarí\";\"other\"\n\"3460200\";\"Jaquary\";\"other\"\n\"3460214\";\"Jaguariaíva\";\"main\"\n\"3460214\";\"Jaguariaiva\";\"ascii\"\n\"3460214\";\"Jaguariahyva\";\"other\"\n\"3460214\";\"Jajuaryahiva\";\"other\"\n\"3460225\";\"Jaguarari\";\"main\"\n\"3460225\";\"Jaguarary\";\"other\"\n\"3460232\";\"Jaguarão\";\"main\"\n\"3460232\";\"Jaguarao\";\"ascii\"\n\"3460242\";\"Jaguaquara\";\"main\"\n\"3460267\";\"Jacutinga\";\"main\"\n\"3460281\";\"Jacupiranga\";\"main\"\n\"3460344\";\"Jacobina\";\"main\"\n\"3460355\";\"Jaciara\";\"main\"\n\"3460362\";\"Jacarezinho\";\"main\"\n\"3460362\";\"Jacaresinho\";\"other\"\n\"3460362\";\"Zhakarezin'ju\";\"other\"\n\"3460362\";\"Жакарезинью\";\"other\"\n\"3460370\";\"Jacareí\";\"main\"\n\"3460370\";\"Jacarei\";\"ascii\"\n\"3460370\";\"Jacarehy\";\"other\"\n\"3460441\";\"Jaboticabal\";\"main\"\n\"3460441\";\"Zhabotikabal\";\"other\"\n\"3460441\";\"Жаботикабал\";\"other\"\n\"3460484\";\"Ivoti\";\"main\"\n\"3460484\";\"Bom Jardim\";\"other\"\n\"3460505\";\"Iúna\";\"main\"\n\"3460505\";\"Iuna\";\"ascii\"\n\"3460505\";\"Rio Pardo\";\"other\"\n\"3460511\";\"Ituverava\";\"main\"\n\"3460513\";\"Iturama\";\"main\"\n\"3460513\";\"Camelia\";\"other\"\n\"3460513\";\"Camélia\";\"other\"\n\"3460513\";\"Santa Rosa\";\"other\"\n\"3460513\";\"Итурама\";\"other\"\n\"3460516\";\"Itupeva\";\"main\"\n\"3460522\";\"Itumbiara\";\"main\"\n\"3460522\";\"Paranaiba\";\"other\"\n\"3460522\";\"Paranaíba\";\"other\"\n\"3460522\";\"Santa Rita\";\"other\"\n\"3460522\";\"Santa Rita do Paranahyba\";\"other\"\n\"3460522\";\"Santa Rita do Paranaib\";\"other\"\n\"3460522\";\"Santa Rita do Paranaiba\";\"other\"\n\"3460522\";\"Santa Rita do Paranaiha\";\"other\"\n\"3460522\";\"Santa Rita do Paranaíba\";\"other\"\n\"3460523\";\"Ituiutaba\";\"main\"\n\"3460523\";\"Itijutaba\";\"other\"\n\"3460523\";\"Ituyutaba\";\"other\"\n\"3460523\";\"Итиютаба\";\"other\"\n\"3460530\";\"Ituberá\";\"main\"\n\"3460530\";\"Itubera\";\"ascii\"\n\"3460530\";\"Santarem\";\"other\"\n\"3460530\";\"Santarém\";\"other\"\n\"3460531\";\"Ituaçu\";\"main\"\n\"3460531\";\"Ituacu\";\"ascii\"\n\"3460531\";\"Ituassu\";\"other\"\n\"3460531\";\"Ituassú\";\"other\"\n\"3460535\";\"Itu\";\"main\"\n\"3460542\";\"Itororó\";\"main\"\n\"3460542\";\"Itororo\";\"ascii\"\n\"3460542\";\"Itapui\";\"other\"\n\"3460542\";\"Itapuí\";\"other\"\n\"3460549\";\"Itiruçu\";\"main\"\n\"3460549\";\"Itirucu\";\"ascii\"\n\"3460549\";\"Itirussu\";\"other\"\n\"3460553\";\"Itirapina\";\"main\"\n\"3460553\";\"Ityrapina\";\"other\"\n\"3460563\";\"Itinga\";\"main\"\n\"3460584\";\"Itaúna\";\"main\"\n\"3460584\";\"Itauna\";\"ascii\"\n\"3460588\";\"Itaú de Minas\";\"main\"\n\"3460588\";\"Itau de Minas\";\"ascii\"\n\"3460594\";\"Itatinga\";\"main\"\n\"3460594\";\"Sao Joao de Itatinga\";\"other\"\n\"3460594\";\"Sao Joao do Itatinga\";\"other\"\n\"3460594\";\"São João de Itatinga\";\"other\"\n\"3460594\";\"São João do Itatinga\";\"other\"\n\"3460598\";\"Itatiba\";\"main\"\n\"3460602\";\"Itatiaia\";\"main\"\n\"3460602\";\"Campo Bello\";\"other\"\n\"3460602\";\"Campo Belo\";\"other\"\n\"3460620\";\"Itararé\";\"main\"\n\"3460620\";\"Itarare\";\"ascii\"\n\"3460620\";\"Итараре\";\"other\"\n\"3460622\";\"Itarantim\";\"main\"\n\"3460623\";\"Itarana\";\"main\"\n\"3460623\";\"Figueira\";\"other\"\n\"3460623\";\"Figueira de Santa Joanna\";\"other\"\n\"3460629\";\"Itaqui\";\"main\"\n\"3460629\";\"Itaka\";\"other\"\n\"3460629\";\"Itaquy\";\"other\"\n\"3460629\";\"Итака\";\"other\"\n\"3460644\";\"Itaquaquecetuba\";\"main\"\n\"3460644\";\"Itaquaquicetuba\";\"other\"\n\"3460648\";\"Itapuranga\";\"main\"\n\"3460648\";\"Xixa\";\"other\"\n\"3460648\";\"Xixá\";\"other\"\n\"3460651\";\"Itapuí\";\"main\"\n\"3460651\";\"Itapui\";\"ascii\"\n\"3460651\";\"Bica de Pedra\";\"other\"\n\"3460666\";\"Itaporanga\";\"main\"\n\"3460671\";\"Itápolis\";\"main\"\n\"3460671\";\"Itapolis\";\"ascii\"\n\"3460697\";\"Itapirapuã\";\"main\"\n\"3460697\";\"Itapirapua\";\"ascii\"\n\"3460697\";\"Itaperapoan\";\"other\"\n\"3460697\";\"Itaperapua\";\"other\"\n\"3460697\";\"Itaperapuan\";\"other\"\n\"3460697\";\"Itaperapuã\";\"other\"\n\"3460697\";\"Itapirapuan\";\"other\"\n\"3460699\";\"Itapira\";\"main\"\n\"3460707\";\"Itapicuru\";\"main\"\n\"3460707\";\"Missao\";\"other\"\n\"3460707\";\"Missão\";\"other\"\n\"3460718\";\"Itapevi\";\"main\"\n\"3460718\";\"Itapevy\";\"other\"\n\"3460723\";\"Itapeva\";\"main\"\n\"3460723\";\"Faxina\";\"other\"\n\"3460728\";\"Itapetininga\";\"main\"\n\"3460728\";\"Itapetinga\";\"other\"\n\"3460730\";\"Itapetinga\";\"main\"\n\"3460730\";\"Itatinga\";\"other\"\n\"3460733\";\"Itaperuna\";\"main\"\n\"3460734\";\"Itaperuçu\";\"main\"\n\"3460734\";\"Itaperucu\";\"ascii\"\n\"3460738\";\"Itapemirim\";\"main\"\n\"3460740\";\"Itapema\";\"main\"\n\"3460740\";\"Итапема\";\"other\"\n\"3460748\";\"Itapecerica da Serra\";\"main\"\n\"3460748\";\"Itapecerica\";\"other\"\n\"3460748\";\"Itapeserika-da-Serra\";\"other\"\n\"3460748\";\"Итапесерика-да-Серра\";\"other\"\n\"3460752\";\"Itapecerica\";\"main\"\n\"3460764\";\"Itaparica\";\"main\"\n\"3460773\";\"Itapaci\";\"main\"\n\"3460774\";\"Itaocara\";\"main\"\n\"3460774\";\"Itacoara\";\"other\"\n\"3460774\";\"Itacoára\";\"other\"\n\"3460785\";\"Itanhém\";\"main\"\n\"3460785\";\"Itanhem\";\"ascii\"\n\"3460785\";\"Nossa Senhora do Itanhem\";\"other\"\n\"3460788\";\"Itanhandu\";\"main\"\n\"3460791\";\"Itanhaém\";\"main\"\n\"3460791\";\"Itanhaem\";\"ascii\"\n\"3460791\";\"Itanhaen\";\"other\"\n\"3460791\";\"Nossa Senhora da Conceicao de Itanhaem\";\"other\"\n\"3460791\";\"Nossa Senhora da Conceição de Itanhaém\";\"other\"\n\"3460813\";\"Itambé\";\"main\"\n\"3460813\";\"Itambe\";\"ascii\"\n\"3460817\";\"Itambacuri\";\"main\"\n\"3460817\";\"Itambacury\";\"other\"\n\"3460825\";\"Itamarandiba\";\"main\"\n\"3460825\";\"Itamarandyba\";\"other\"\n\"3460826\";\"Itamaraju\";\"main\"\n\"3460831\";\"Itajuípe\";\"main\"\n\"3460831\";\"Itajuipe\";\"ascii\"\n\"3460831\";\"Pirangi\";\"other\"\n\"3460831\";\"Piranj\";\"other\"\n\"3460834\";\"Itajubá\";\"main\"\n\"3460834\";\"Itajuba\";\"ascii\"\n\"3460836\";\"Itajobi\";\"main\"\n\"3460836\";\"Itajoby\";\"other\"\n\"3460836\";\"Itajuby\";\"other\"\n\"3460837\";\"Itagibá\";\"main\"\n\"3460837\";\"Itagiba\";\"ascii\"\n\"3460837\";\"Destampina\";\"other\"\n\"3460845\";\"Itajaí\";\"main\"\n\"3460845\";\"Itajai\";\"ascii\"\n\"3460845\";\"Itajahi\";\"other\"\n\"3460845\";\"Itajahy\";\"other\"\n\"3460887\";\"Itaí\";\"main\"\n\"3460887\";\"Itai\";\"ascii\"\n\"3460887\";\"Itahy\";\"other\"\n\"3460899\";\"Itaguaí\";\"main\"\n\"3460899\";\"Itaguai\";\"ascii\"\n\"3460899\";\"Itaquahy\";\"other\"\n\"3460901\";\"Itaguaçu\";\"main\"\n\"3460901\";\"Itaguacu\";\"ascii\"\n\"3460901\";\"Boa Familia\";\"other\"\n\"3460901\";\"Bôa Familia\";\"other\"\n\"3460901\";\"Itaguassu\";\"other\"\n\"3460901\";\"Itaguassú\";\"other\"\n\"3460907\";\"Itagi\";\"main\"\n\"3460907\";\"Itaji\";\"other\"\n\"3460940\";\"Itacaré\";\"main\"\n\"3460940\";\"Itacare\";\"ascii\"\n\"3460940\";\"Barra do Rio de Contas\";\"other\"\n\"3460942\";\"Itacarambi\";\"main\"\n\"3460942\";\"Itacaramby\";\"other\"\n\"3460942\";\"Jacare\";\"other\"\n\"3460942\";\"Porto Jacare\";\"other\"\n\"3460942\";\"Pôrto Jacaré\";\"other\"\n\"3460949\";\"Itabuna\";\"main\"\n\"3460949\";\"Итабуна\";\"other\"\n\"3460950\";\"Itaboraí\";\"main\"\n\"3460950\";\"Itaborai\";\"ascii\"\n\"3460950\";\"Itaborahy\";\"other\"\n\"3460954\";\"Itabirito\";\"main\"\n\"3460960\";\"Itabira\";\"main\"\n\"3460960\";\"Itabira de Mato Dentro\";\"other\"\n\"3460960\";\"Itabira de Matto Dentro\";\"other\"\n\"3460960\";\"Presidente Vargas\";\"other\"\n\"3460960\";\"Итабира\";\"other\"\n\"3460963\";\"Itaberaí\";\"main\"\n\"3460963\";\"Itaberai\";\"ascii\"\n\"3460963\";\"Itaberahy\";\"other\"\n\"3460963\";\"Itaborahy\";\"other\"\n\"3460963\";\"Итабераи\";\"other\"\n\"3460966\";\"Itaberaba\";\"main\"\n\"3460967\";\"Itaberá\";\"main\"\n\"3460967\";\"Itabera\";\"ascii\"\n\"3460971\";\"Itabaianinha\";\"main\"\n\"3460971\";\"Itabayanninha\";\"other\"\n\"3460974\";\"Itabaiana\";\"main\"\n\"3460991\";\"Irupi\";\"main\"\n\"3460991\";\"Cachoeira\";\"other\"\n\"3461013\";\"Irecê\";\"main\"\n\"3461013\";\"Irece\";\"ascii\"\n\"3461017\";\"Irati\";\"main\"\n\"3461017\";\"Iraty\";\"other\"\n\"3461022\";\"Irará\";\"main\"\n\"3461022\";\"Irara\";\"ascii\"\n\"3461023\";\"Iraquara\";\"main\"\n\"3461023\";\"Joao Pessoa\";\"other\"\n\"3461023\";\"João Pessoa\";\"other\"\n\"3461055\";\"Iracemápolis\";\"main\"\n\"3461055\";\"Iracemapolis\";\"ascii\"\n\"3461055\";\"Iracemopolis\";\"other\"\n\"3461080\";\"Ipuã\";\"main\"\n\"3461080\";\"Ipua\";\"ascii\"\n\"3461080\";\"Olhos d'Agua\";\"other\"\n\"3461089\";\"Iporã\";\"main\"\n\"3461089\";\"Ipora\";\"ascii\"\n\"3461090\";\"Iporá\";\"main\"\n\"3461090\";\"Ipora\";\"ascii\"\n\"3461090\";\"Itajuba\";\"other\"\n\"3461090\";\"Itajubá\";\"other\"\n\"3461090\";\"Ипора\";\"other\"\n\"3461124\";\"Ipirá\";\"main\"\n\"3461124\";\"Ipira\";\"ascii\"\n\"3461124\";\"Camisao\";\"other\"\n\"3461124\";\"Camisão\";\"other\"\n\"3461129\";\"Ipiaú\";\"main\"\n\"3461129\";\"Ipiau\";\"ascii\"\n\"3461129\";\"Rio Novo\";\"other\"\n\"3461129\";\"Ипиау\";\"other\"\n\"3461134\";\"Iperó\";\"main\"\n\"3461134\";\"Ipero\";\"ascii\"\n\"3461143\";\"Ipauçu\";\"main\"\n\"3461143\";\"Ipaucu\";\"ascii\"\n\"3461143\";\"Ipaussu\";\"other\"\n\"3461143\";\"Ipaussú\";\"other\"\n\"3461144\";\"Ipatinga\";\"main\"\n\"3461151\";\"Ipameri\";\"main\"\n\"3461151\";\"Ipamery\";\"other\"\n\"3461153\";\"Ipaba\";\"main\"\n\"3461194\";\"Inhumas\";\"main\"\n\"3461214\";\"Inhapim\";\"main\"\n\"3461224\";\"Inhambupe\";\"main\"\n\"3461224\";\"Inhambupo\";\"other\"\n\"3461289\";\"Indiaroba\";\"main\"\n\"3461289\";\"Espirito Santo\";\"other\"\n\"3461289\";\"Espírito Santo\";\"other\"\n\"3461311\";\"Indaiatuba\";\"main\"\n\"3461316\";\"Indaial\";\"main\"\n\"3461316\";\"Indaval\";\"other\"\n\"3461368\";\"Imbituva\";\"main\"\n\"3461368\";\"Santo Antonio de Imbituva\";\"other\"\n\"3461370\";\"Imbituba\";\"main\"\n\"3461370\";\"Henrique Lage\";\"other\"\n\"3461370\";\"Henrique Laje\";\"other\"\n\"3461408\";\"Ilhéus\";\"main\"\n\"3461408\";\"Ilheus\";\"ascii\"\n\"3461408\";\"Il'eus\";\"other\"\n\"3461408\";\"Ilheos\";\"other\"\n\"3461408\";\"Ilhéos\";\"other\"\n\"3461408\";\"Sao Jorge dos Ilheos\";\"other\"\n\"3461408\";\"São Jorgé dos Ilhéos\";\"other\"\n\"3461408\";\"Ильеус\";\"other\"\n\"3461411\";\"Ilha Solteira\";\"main\"\n\"3461425\";\"Ilhabela\";\"main\"\n\"3461425\";\"Formosa\";\"other\"\n\"3461425\";\"Vilabela\";\"other\"\n\"3461425\";\"Villa Bella\";\"other\"\n\"3461444\";\"Ijuí\";\"main\"\n\"3461444\";\"Ijui\";\"ascii\"\n\"3461444\";\"Ijuhy\";\"other\"\n\"3461455\";\"Iguatemi\";\"main\"\n\"3461455\";\"Igatemi\";\"other\"\n\"3461455\";\"Igatemí\";\"other\"\n\"3461455\";\"Sacaron\";\"other\"\n\"3461465\";\"Iguape\";\"main\"\n\"3461465\";\"Bom Jesus da Ribeira\";\"other\"\n\"3461469\";\"Iguaí\";\"main\"\n\"3461469\";\"Iguai\";\"ascii\"\n\"3461477\";\"Iguaba Grande\";\"main\"\n\"3461481\";\"Igrejinha\";\"main\"\n\"3461481\";\"Igrezhin'ja\";\"other\"\n\"3461481\";\"Игрежинья\";\"other\"\n\"3461484\";\"Igreja Nova\";\"main\"\n\"3461484\";\"Triumfo\";\"other\"\n\"3461484\";\"Triumpho\";\"other\"\n\"3461484\";\"Triunfo\";\"other\"\n\"3461498\";\"Igarapé\";\"main\"\n\"3461498\";\"Igarape\";\"ascii\"\n\"3461499\";\"Igarapava\";\"main\"\n\"3461501\";\"Igaraçu do Tietê\";\"main\"\n\"3461501\";\"Igaracu do Tiete\";\"ascii\"\n\"3461501\";\"Igarassu\";\"other\"\n\"3461501\";\"Igarassú\";\"other\"\n\"3461510\";\"Iconha\";\"main\"\n\"3461519\";\"Içara\";\"main\"\n\"3461519\";\"Icara\";\"ascii\"\n\"3461519\";\"Aliatar\";\"other\"\n\"3461519\";\"Isara\";\"other\"\n\"3461519\";\"Исара\";\"other\"\n\"3461525\";\"Ibotirama\";\"main\"\n\"3461525\";\"Bom Jardim\";\"other\"\n\"3461525\";\"Jardinocolis\";\"other\"\n\"3461525\";\"Jardinopolis\";\"other\"\n\"3461525\";\"Jardinópolis\";\"other\"\n\"3461528\";\"Ibiúna\";\"main\"\n\"3461528\";\"Ibiuna\";\"ascii\"\n\"3461528\";\"Una\";\"other\"\n\"3461550\";\"Ibitinga\";\"main\"\n\"3461559\";\"Ibirubá\";\"main\"\n\"3461559\";\"Ibiruba\";\"ascii\"\n\"3461563\";\"Ibirité\";\"main\"\n\"3461563\";\"Ibirite\";\"ascii\"\n\"3461563\";\"Ибирите\";\"other\"\n\"3461565\";\"Ibirataia\";\"main\"\n\"3461565\";\"Tesouras\";\"other\"\n\"3461565\";\"Ubirataia\";\"other\"\n\"3461572\";\"Ibirapitanga\";\"main\"\n\"3461572\";\"Ibirapitinga\";\"other\"\n\"3461576\";\"Ibirama\";\"main\"\n\"3461576\";\"Hammonia\";\"other\"\n\"3461576\";\"Hamonia\";\"other\"\n\"3461576\";\"Hamônia\";\"other\"\n\"3461579\";\"Ibiraçu\";\"main\"\n\"3461579\";\"Ibiracu\";\"ascii\"\n\"3461579\";\"Pao Gigante\";\"other\"\n\"3461579\";\"Pau Gigante\";\"other\"\n\"3461579\";\"Páo Gigante\";\"other\"\n\"3461588\";\"Ibiporã\";\"main\"\n\"3461588\";\"Ibipora\";\"ascii\"\n\"3461588\";\"Sao Pedro de Alcantara\";\"other\"\n\"3461588\";\"São Pedro de Alcantara\";\"other\"\n\"3461592\";\"Ibipeba\";\"main\"\n\"3461592\";\"Tiririca do Assurua\";\"other\"\n\"3461592\";\"Tiririca do Assuruá\";\"other\"\n\"3461602\";\"Ibicuí\";\"main\"\n\"3461602\";\"Ibicui\";\"ascii\"\n\"3461606\";\"Ibicaraí\";\"main\"\n\"3461606\";\"Ibicarai\";\"ascii\"\n\"3461606\";\"Palestina\";\"other\"\n\"3461620\";\"Ibiá\";\"main\"\n\"3461620\";\"Ibia\";\"ascii\"\n\"3461620\";\"Sao Pedro d'Alcantara\";\"other\"\n\"3461620\";\"São Pedro d'Alcantara\";\"other\"\n\"3461624\";\"Ibatiba\";\"main\"\n\"3461624\";\"Rosario\";\"other\"\n\"3461624\";\"Rosário\";\"other\"\n\"3461625\";\"Ibaté\";\"main\"\n\"3461625\";\"Ibate\";\"ascii\"\n\"3461625\";\"Ibaete\";\"other\"\n\"3461625\";\"Ibaeté\";\"other\"\n\"3461628\";\"Ibaiti\";\"main\"\n\"3461628\";\"Barra Bonita\";\"other\"\n\"3461638\";\"Iaçu\";\"main\"\n\"3461638\";\"Iacu\";\"ascii\"\n\"3461638\";\"Iassi\";\"other\"\n\"3461638\";\"Iassí\";\"other\"\n\"3461638\";\"Paraguacu\";\"other\"\n\"3461638\";\"Paraguassu\";\"other\"\n\"3461638\";\"Paraguassú\";\"other\"\n\"3461638\";\"Paraguaçu\";\"other\"\n\"3461638\";\"Sitio Novo\";\"other\"\n\"3461641\";\"Iaciara\";\"main\"\n\"3461641\";\"Iacara\";\"other\"\n\"3461641\";\"Iassiara\";\"other\"\n\"3461641\";\"Iaçara\";\"other\"\n\"3461655\";\"Hortolândia\";\"main\"\n\"3461655\";\"Hortolandia\";\"ascii\"\n\"3461659\";\"Horizontina\";\"main\"\n\"3461659\";\"Horizonte\";\"other\"\n\"3461677\";\"Hidrolândia\";\"main\"\n\"3461677\";\"Hidrolandia\";\"ascii\"\n\"3461677\";\"Grimpas\";\"other\"\n\"3461677\";\"Hydrolandia\";\"other\"\n\"3461680\";\"Herval\";\"main\"\n\"3461680\";\"Erval\";\"other\"\n\"3461724\";\"Gurupi\";\"main\"\n\"3461724\";\"Гурупи\";\"other\"\n\"3461733\";\"Guiratinga\";\"main\"\n\"3461733\";\"Lageado\";\"other\"\n\"3461733\";\"Lajeado\";\"other\"\n\"3461750\";\"Guia Lopes da Laguna\";\"main\"\n\"3461750\";\"Guia Lopes\";\"other\"\n\"3461763\";\"Guaxupé\";\"main\"\n\"3461763\";\"Guaxupe\";\"ascii\"\n\"3461786\";\"Guarulhos\";\"main\"\n\"3461786\";\"GRU\";\"other\"\n\"3461789\";\"Guarujá\";\"main\"\n\"3461789\";\"Guaruja\";\"ascii\"\n\"3461824\";\"Guariba\";\"main\"\n\"3461857\";\"Guaratuba\";\"main\"\n\"3461859\";\"Guaratinguetá\";\"main\"\n\"3461859\";\"Guaratingueta\";\"ascii\"\n\"3461860\";\"Guaratinga\";\"main\"\n\"3461871\";\"Guararema\";\"main\"\n\"3461874\";\"Guararapes\";\"main\"\n\"3461879\";\"Guarapuava\";\"main\"\n\"3461879\";\"Гуарапуава\";\"other\"\n\"3461888\";\"Guarapari\";\"main\"\n\"3461888\";\"Guarapary\";\"other\"\n\"3461888\";\"גוארפארי\";\"other\"\n\"3461892\";\"Guaraniaçu\";\"main\"\n\"3461892\";\"Guaraniacu\";\"ascii\"\n\"3461910\";\"Guaranésia\";\"main\"\n\"3461910\";\"Guaranesia\";\"ascii\"\n\"3461910\";\"Guarnesia\";\"other\"\n\"3461914\";\"Guaramirim\";\"main\"\n\"3461914\";\"Bananal\";\"other\"\n\"3461935\";\"Guará\";\"main\"\n\"3461935\";\"Guara\";\"ascii\"\n\"3461941\";\"Guaporé\";\"main\"\n\"3461941\";\"Guapore\";\"ascii\"\n\"3461941\";\"Guaporema\";\"other\"\n\"3461943\";\"Guapó\";\"main\"\n\"3461943\";\"Guapo\";\"ascii\"\n\"3461943\";\"Ribeirao\";\"other\"\n\"3461943\";\"Ribeirão\";\"other\"\n\"3461949\";\"Guapimirim\";\"main\"\n\"3461949\";\"Guapimirin\";\"other\"\n\"3461949\";\"Guapy-mirim\";\"other\"\n\"3461949\";\"Гуапимирин\";\"other\"\n\"3461954\";\"Guapiaçu\";\"main\"\n\"3461954\";\"Guapiacu\";\"ascii\"\n\"3461954\";\"Cuapiacu\";\"other\"\n\"3461954\";\"Cuapiaçu\";\"other\"\n\"3461954\";\"Guapiassu\";\"other\"\n\"3461954\";\"Guapiassú\";\"other\"\n\"3461954\";\"Ribeirao Claro\";\"other\"\n\"3461954\";\"Ribeirão Claro\";\"other\"\n\"3461958\";\"Guanhães\";\"main\"\n\"3461958\";\"Guanhaes\";\"ascii\"\n\"3461973\";\"Guanambi\";\"main\"\n\"3461973\";\"Guanamby\";\"other\"\n\"3461995\";\"Guaíra\";\"main\"\n\"3461995\";\"Guaira\";\"ascii\"\n\"3461995\";\"Guahyra\";\"other\"\n\"3461995\";\"Guajra\";\"other\"\n\"3461995\";\"Guayra\";\"other\"\n\"3461995\";\"Гуайра\";\"other\"\n\"3462022\";\"Guaçuí\";\"main\"\n\"3462022\";\"Guacui\";\"ascii\"\n\"3462022\";\"Siqueira Campos\";\"other\"\n\"3462089\";\"Gravataí\";\"main\"\n\"3462089\";\"Gravatai\";\"ascii\"\n\"3462089\";\"Gravatahy\";\"other\"\n\"3462315\";\"Governador Valadares\";\"main\"\n\"3462315\";\"Figueira\";\"other\"\n\"3462315\";\"Gov. Valadares\";\"other\"\n\"3462315\";\"Governador-Valadares\";\"other\"\n\"3462315\";\"Valadares\";\"other\"\n\"3462315\";\"Говернадор-Валадарес\";\"other\"\n\"3462371\";\"Goiatuba\";\"main\"\n\"3462371\";\"Bananeiras\";\"other\"\n\"3462371\";\"Gojatuba\";\"other\"\n\"3462371\";\"Гоятуба\";\"other\"\n\"3462374\";\"Goiás\";\"main\"\n\"3462374\";\"Goias\";\"ascii\"\n\"3462374\";\"Goaiz\";\"other\"\n\"3462374\";\"Goiaz\";\"other\"\n\"3462374\";\"Goyaz\";\"other\"\n\"3462376\";\"Goianira\";\"main\"\n\"3462376\";\"Gojanira\";\"other\"\n\"3462376\";\"Sao Geraldo\";\"other\"\n\"3462376\";\"São Geraldo\";\"other\"\n\"3462376\";\"Гоянира\";\"other\"\n\"3462377\";\"Goiânia\";\"main\"\n\"3462377\";\"Goiania\";\"ascii\"\n\"3462377\";\"Ciutat de Goiania\";\"other\"\n\"3462377\";\"Ciutat de Goiânia\";\"other\"\n\"3462377\";\"Goiana\";\"other\"\n\"3462377\";\"Goiania - Goiania\";\"other\"\n\"3462377\";\"Goiania - Goiânia\";\"other\"\n\"3462377\";\"Goianá\";\"other\"\n\"3462377\";\"Gojanija\";\"other\"\n\"3462377\";\"Goyania\";\"other\"\n\"3462377\";\"goiania\";\"other\"\n\"3462377\";\"Гояния\";\"other\"\n\"3462377\";\"גואיאניה\";\"other\"\n\"3462377\";\"ゴイアニア\";\"other\"\n\"3462378\";\"Goianésia\";\"main\"\n\"3462378\";\"Goianesia\";\"ascii\"\n\"3462383\";\"Goianápolis\";\"main\"\n\"3462383\";\"Goianapolis\";\"ascii\"\n\"3462383\";\"Goianopolis\";\"other\"\n\"3462383\";\"Goianópolis\";\"other\"\n\"3462419\";\"Giruá\";\"main\"\n\"3462419\";\"Girua\";\"ascii\"\n\"3462419\";\"Jirua\";\"other\"\n\"3462419\";\"Jiruá\";\"other\"\n\"3462487\";\"General Salgado\";\"main\"\n\"3462535\";\"Gaspar\";\"main\"\n\"3462557\";\"Garibaldi\";\"main\"\n\"3462580\";\"Garça\";\"main\"\n\"3462580\";\"Garca\";\"ascii\"\n\"3462601\";\"Gandu\";\"main\"\n\"3462882\";\"Fundão\";\"main\"\n\"3462882\";\"Fundao\";\"ascii\"\n\"3462916\";\"Frutal\";\"main\"\n\"3462916\";\"Fructal\";\"other\"\n\"3462916\";\"Фрутал\";\"other\"\n\"3462944\";\"Frei Paulo\";\"main\"\n\"3462944\";\"Sao Paulo\";\"other\"\n\"3462944\";\"São Paulo\";\"other\"\n\"3462956\";\"Frederico Westphalen\";\"main\"\n\"3462964\";\"Franco da Rocha\";\"main\"\n\"3462964\";\"Francisco da Rocha\";\"other\"\n\"3462975\";\"Francisco Sá\";\"main\"\n\"3462975\";\"Francisco Sa\";\"ascii\"\n\"3462975\";\"Brejo das Almas\";\"other\"\n\"3462980\";\"Francisco Morato\";\"main\"\n\"3462996\";\"Francisco Beltrão\";\"main\"\n\"3462996\";\"Francisco Beltrao\";\"ascii\"\n\"3462996\";\"Beltran-Francisko\";\"other\"\n\"3462996\";\"Белтран-Франциско\";\"other\"\n\"3463011\";\"Franca\";\"main\"\n\"3463011\";\"Franko\";\"other\"\n\"3463011\";\"Франко\";\"other\"\n\"3463030\";\"Foz do Iguaçu\";\"main\"\n\"3463030\";\"Foz do Iguacu\";\"ascii\"\n\"3463030\";\"Fos-du-Iguasu\";\"other\"\n\"3463030\";\"Foz de Iguassu\";\"other\"\n\"3463030\";\"Foz de Iguazu\";\"other\"\n\"3463030\";\"Foz do Iguassu\";\"other\"\n\"3463030\";\"Foz do Iguassú\";\"other\"\n\"3463030\";\"Iguassu\";\"other\"\n\"3463030\";\"Iguassú\";\"other\"\n\"3463030\";\"Фос-ду-Игуасу\";\"other\"\n\"3463030\";\"פוז דו איגואסו\";\"other\"\n\"3463030\";\"フォス・ド・イグアス\";\"other\"\n\"3463066\";\"Forquilhinha\";\"main\"\n\"3463066\";\"Forkil'in'ja\";\"other\"\n\"3463066\";\"Forquilinho\";\"other\"\n\"3463066\";\"Форкильинья\";\"other\"\n\"3463124\";\"Formosa do Rio Preto\";\"main\"\n\"3463124\";\"Formosa\";\"other\"\n\"3463124\";\"Itajui\";\"other\"\n\"3463124\";\"Itajuí\";\"other\"\n\"3463140\";\"Formosa\";\"main\"\n\"3463174\";\"Formiga\";\"main\"\n\"3463228\";\"Paulista Flórida\";\"main\"\n\"3463228\";\"Paulista Florida\";\"ascii\"\n\"3463228\";\"Aguapei do Alto\";\"other\"\n\"3463228\";\"Aguapeí do Alto\";\"other\"\n\"3463237\";\"Florianópolis\";\"main\"\n\"3463237\";\"Florianopolis\";\"ascii\"\n\"3463237\";\"Destero\";\"other\"\n\"3463237\";\"Desterro\";\"other\"\n\"3463237\";\"Floripa\";\"other\"\n\"3463237\";\"Nossa Senhora do Desterro\";\"other\"\n\"3463237\";\"Nossa Senhora do Destêrro\";\"other\"\n\"3463237\";\"fpolis\";\"other\"\n\"3463237\";\"Флорианополис\";\"other\"\n\"3463237\";\"פלוריאנופוליס\";\"other\"\n\"3463246\";\"Florestópolis\";\"main\"\n\"3463246\";\"Florestopolis\";\"ascii\"\n\"3463271\";\"Flores da Cunha\";\"main\"\n\"3463326\";\"Firminópolis\";\"main\"\n\"3463326\";\"Firminopolis\";\"ascii\"\n\"3463422\";\"Ferraz de Vasconcelos\";\"main\"\n\"3463432\";\"Fernandópolis\";\"main\"\n\"3463432\";\"Fernandopolis\";\"ascii\"\n\"3463478\";\"Feira de Santana\";\"main\"\n\"3463478\";\"Feira\";\"other\"\n\"3463478\";\"Feira De Saint Anna\";\"other\"\n\"3463478\";\"Feira de Sant'Anna\";\"other\"\n\"3463478\";\"Fejra-de-Santana\";\"other\"\n\"3463478\";\"Фейра-де-Сантана\";\"other\"\n\"3463573\";\"Faxinal\";\"main\"\n\"3463573\";\"Faxinal de Sao Sebastiao\";\"other\"\n\"3463573\";\"Faxinal de São Sebastião\";\"other\"\n\"3463573\";\"Sao Sebastiao\";\"other\"\n\"3463573\";\"São Sebastião\";\"other\"\n\"3463604\";\"Fartura\";\"main\"\n\"3463605\";\"Farroupilha\";\"main\"\n\"3463668\";\"Extrema\";\"main\"\n\"3463698\";\"Euclides da Cunha\";\"main\"\n\"3463698\";\"Cumbe\";\"other\"\n\"3463698\";\"Evklid-da-Kun'ja\";\"other\"\n\"3463698\";\"Евклид-да-Кунья\";\"other\"\n\"3463762\";\"Estrela\";\"main\"\n\"3463859\";\"Esteio\";\"main\"\n\"3463865\";\"Estância Velha\";\"main\"\n\"3463865\";\"Estancia Velha\";\"ascii\"\n\"3463865\";\"Genuino Sampaio\";\"other\"\n\"3463900\";\"Estância\";\"main\"\n\"3463900\";\"Estancia\";\"ascii\"\n\"3463916\";\"Espumoso\";\"main\"\n\"3463920\";\"Esplanada\";\"main\"\n\"3463939\";\"Espinosa\";\"main\"\n\"3463993\";\"Espera Feliz\";\"main\"\n\"3464008\";\"Esmeraldas\";\"main\"\n\"3464008\";\"Ehsmeral'das\";\"other\"\n\"3464008\";\"Santa Quiteria\";\"other\"\n\"3464008\";\"Эсмеральдас\";\"other\"\n\"3464073\";\"Erechim\";\"main\"\n\"3464073\";\"Boa Vista do Erechim\";\"other\"\n\"3464073\";\"Bôa Vista do Erechim\";\"other\"\n\"3464073\";\"Erequim\";\"other\"\n\"3464073\";\"Erexim\";\"other\"\n\"3464073\";\"Jose Bonifacio\";\"other\"\n\"3464073\";\"José Bonifacio\";\"other\"\n\"3464073\";\"Paiol Grande\";\"other\"\n\"3464100\";\"Entre Rios\";\"main\"\n\"3464100\";\"Nossa Senhora dos Prazeres do Inhambupe\";\"other\"\n\"3464219\";\"Engenheiro Beltrão\";\"main\"\n\"3464219\";\"Engenheiro Beltrao\";\"ascii\"\n\"3464255\";\"Encruzilhada do Sul\";\"main\"\n\"3464255\";\"Encruzilhada\";\"other\"\n\"3464262\";\"Encruzilhada\";\"main\"\n\"3464274\";\"Encantado\";\"main\"\n\"3464304\";\"Embu Guaçu\";\"main\"\n\"3464304\";\"Embu Guacu\";\"ascii\"\n\"3464304\";\"Imbu-Guacu\";\"other\"\n\"3464304\";\"Imbu-Guaçu\";\"other\"\n\"3464305\";\"Embu\";\"main\"\n\"3464305\";\"Ehmba\";\"other\"\n\"3464305\";\"Embu Arte\";\"other\"\n\"3464305\";\"Embu das Artes\";\"other\"\n\"3464305\";\"Imbu\";\"other\"\n\"3464305\";\"M'Boy\";\"other\"\n\"3464305\";\"Эмба\";\"other\"\n\"3464329\";\"Elói Mendes\";\"main\"\n\"3464329\";\"Eloi Mendes\";\"ascii\"\n\"3464329\";\"Eloy Mendes\";\"other\"\n\"3464335\";\"Elias Fausto\";\"main\"\n\"3464343\";\"Eldorado\";\"main\"\n\"3464343\";\"Itapopo\";\"other\"\n\"3464343\";\"Itapopó\";\"other\"\n\"3464343\";\"Porto Itapopo\";\"other\"\n\"3464343\";\"Pôrto Itapopó\";\"other\"\n\"3464363\";\"Edéia\";\"main\"\n\"3464363\";\"Edeia\";\"ascii\"\n\"3464363\";\"Alegrete\";\"other\"\n\"3464364\";\"Ecoporanga\";\"main\"\n\"3464364\";\"Patrimonio da Serra\";\"other\"\n\"3464364\";\"Patrimonio do Serro\";\"other\"\n\"3464364\";\"Patrimônio da Serra\";\"other\"\n\"3464364\";\"Patrimônio do Sêrro\";\"other\"\n\"3464374\";\"Duque de Caxias\";\"main\"\n\"3464374\";\"Caxias\";\"other\"\n\"3464422\";\"Duartina\";\"main\"\n\"3464460\";\"Dourados\";\"main\"\n\"3464460\";\"Doradus\";\"other\"\n\"3464460\";\"dwradws\";\"other\"\n\"3464460\";\"Дорадус\";\"other\"\n\"3464460\";\"دورادوس\";\"other\"\n\"3464511\";\"Dores do Indaiá\";\"main\"\n\"3464511\";\"Dores do Indaia\";\"ascii\"\n\"3464511\";\"Dores do Indaya\";\"other\"\n\"3464511\";\"Dôres do Indayá\";\"other\"\n\"3464511\";\"Indaya\";\"other\"\n\"3464511\";\"Indayá\";\"other\"\n\"3464547\";\"Dom Pedrito\";\"main\"\n\"3464556\";\"Domingos Martins\";\"main\"\n\"3464579\";\"Dois Vizinhos\";\"main\"\n\"3464618\";\"Dois Córregos\";\"main\"\n\"3464618\";\"Dois Corregos\";\"ascii\"\n\"3464618\";\"Dous Corregos\";\"other\"\n\"3464688\";\"Divinópolis\";\"main\"\n\"3464688\";\"Divinopolis\";\"ascii\"\n\"3464688\";\"Дивинополис\";\"other\"\n\"3464693\";\"Divino das Laranjeiras\";\"main\"\n\"3464693\";\"Divino de Laranjeiras\";\"other\"\n\"3464724\";\"Diamantino\";\"main\"\n\"3464724\";\"Alto Paraguai do Diamantino\";\"other\"\n\"3464724\";\"Diamentina\";\"other\"\n\"3464728\";\"Diamantina\";\"main\"\n\"3464728\";\"Tejuco\";\"other\"\n\"3464728\";\"Диамантина\";\"other\"\n\"3464739\";\"Diadema\";\"main\"\n\"3464739\";\"Диадема\";\"other\"\n\"3464809\";\"Descalvado\";\"main\"\n\"3464891\";\"Curvelo\";\"main\"\n\"3464891\";\"Curvello\";\"other\"\n\"3464891\";\"Kurvelu\";\"other\"\n\"3464891\";\"Курвелу\";\"other\"\n\"3464974\";\"Curitibanos\";\"main\"\n\"3464974\";\"Curitybanos\";\"other\"\n\"3464974\";\"Kuritibanus\";\"other\"\n\"3464974\";\"Куритибанус\";\"other\"\n\"3464975\";\"Curitiba\";\"main\"\n\"3464975\";\"Corityba\";\"other\"\n\"3464975\";\"Curityba\";\"other\"\n\"3464975\";\"Curytiba\";\"other\"\n\"3464975\";\"Kuritiba\";\"other\"\n\"3464975\";\"Kurytyba\";\"other\"\n\"3464975\";\"kurichiba\";\"other\"\n\"3464975\";\"qwrytybh\";\"other\"\n\"3464975\";\"Куритиба\";\"other\"\n\"3464975\";\"קוריטיבה\";\"other\"\n\"3464975\";\"クリチバ\";\"other\"\n\"3465010\";\"Cunha\";\"main\"\n\"3465038\";\"Cuiabá\";\"main\"\n\"3465038\";\"Cuiaba\";\"ascii\"\n\"3465038\";\"Cuyaba\";\"other\"\n\"3465038\";\"Cuyabá\";\"other\"\n\"3465038\";\"Kujaba\";\"other\"\n\"3465038\";\"Vila Real do Senhor Bom Jesus de Cuiaba\";\"other\"\n\"3465038\";\"Vila Real do Senhor Bom Jesus de Cuiabá\";\"other\"\n\"3465038\";\"ku ya ba\";\"other\"\n\"3465038\";\"kuiaba\";\"other\"\n\"3465038\";\"Куйаба\";\"other\"\n\"3465038\";\"Куяба\";\"other\"\n\"3465038\";\"קויאבה\";\"other\"\n\"3465038\";\"クイアバ\";\"other\"\n\"3465038\";\"库亚巴\";\"other\"\n\"3465059\";\"Cubatão\";\"main\"\n\"3465059\";\"Cubatao\";\"ascii\"\n\"3465071\";\"Cruzília\";\"main\"\n\"3465071\";\"Cruzilia\";\"ascii\"\n\"3465071\";\"Cruzilha\";\"other\"\n\"3465071\";\"Encruzilhada\";\"other\"\n\"3465083\";\"Cruzeiro do Oeste\";\"main\"\n\"3465083\";\"Cruzeiro do Norte\";\"other\"\n\"3465090\";\"Cruzeiro\";\"main\"\n\"3465105\";\"Cruz das Almas\";\"main\"\n\"3465108\";\"Cruz Alta\";\"main\"\n\"3465145\";\"Crixás\";\"main\"\n\"3465145\";\"Crixas\";\"ascii\"\n\"3465145\";\"Crichas\";\"other\"\n\"3465154\";\"Cristinápolis\";\"main\"\n\"3465154\";\"Cristinapolis\";\"ascii\"\n\"3465154\";\"Cristianopolis\";\"other\"\n\"3465154\";\"Cristianópolis\";\"other\"\n\"3465154\";\"Cristina\";\"other\"\n\"3465154\";\"Vila Cristina\";\"other\"\n\"3465154\";\"Villa Christina\";\"other\"\n\"3465164\";\"Cristalina\";\"main\"\n\"3465164\";\"Cristalino\";\"other\"\n\"3465164\";\"Crystallina\";\"other\"\n\"3465196\";\"Criciúma\";\"main\"\n\"3465196\";\"Criciuma\";\"ascii\"\n\"3465196\";\"Creciuna\";\"other\"\n\"3465196\";\"Creciúna\";\"other\"\n\"3465196\";\"Cresciuma\";\"other\"\n\"3465196\";\"Cresciúma\";\"other\"\n\"3465209\";\"Cravinhos\";\"main\"\n\"3465228\";\"Coxim\";\"main\"\n\"3465228\";\"Herculanea\";\"other\"\n\"3465228\";\"Herculania\";\"other\"\n\"3465228\";\"Herculânea\";\"other\"\n\"3465228\";\"Herculânia\";\"other\"\n\"3465284\";\"Cotia\";\"main\"\n\"3465284\";\"Cutia\";\"other\"\n\"3465303\";\"Costa Rica\";\"main\"\n\"3465303\";\"Silvino Aquino\";\"other\"\n\"3465320\";\"Cosmópolis\";\"main\"\n\"3465320\";\"Cosmopolis\";\"ascii\"\n\"3465329\";\"Coruripe\";\"main\"\n\"3465329\";\"Cururipe\";\"other\"\n\"3465330\";\"Corupá\";\"main\"\n\"3465330\";\"Corupa\";\"ascii\"\n\"3465330\";\"Hansa\";\"other\"\n\"3465342\";\"Corumbá\";\"main\"\n\"3465342\";\"Corumba\";\"ascii\"\n\"3465342\";\"kwrwmba\";\"other\"\n\"3465342\";\"كورومبا\";\"other\"\n\"3465373\";\"Correntina\";\"main\"\n\"3465409\";\"Correia Pinto\";\"main\"\n\"3465409\";\"Correa Pinto\";\"other\"\n\"3465459\";\"Coronel Vivida\";\"main\"\n\"3465476\";\"Coronel Fabriciano\";\"main\"\n\"3465487\";\"Coromandel\";\"main\"\n\"3465512\";\"Corinto\";\"main\"\n\"3465512\";\"Corintho\";\"other\"\n\"3465512\";\"Korinto\";\"other\"\n\"3465512\";\"Коринто\";\"other\"\n\"3465524\";\"Cordeirópolis\";\"main\"\n\"3465524\";\"Cordeiropolis\";\"ascii\"\n\"3465524\";\"Cordeiro\";\"other\"\n\"3465524\";\"Cordeiros\";\"other\"\n\"3465527\";\"Cordeiro\";\"main\"\n\"3465536\";\"Corbélia\";\"main\"\n\"3465536\";\"Corbelia\";\"ascii\"\n\"3465541\";\"Coração de Maria\";\"main\"\n\"3465541\";\"Coracao de Maria\";\"ascii\"\n\"3465542\";\"Coração de Jesus\";\"main\"\n\"3465542\";\"Coracao de Jesus\";\"ascii\"\n\"3465624\";\"Contagem\";\"main\"\n\"3465639\";\"Conselheiro Pena\";\"main\"\n\"3465639\";\"Lajao\";\"other\"\n\"3465639\";\"Lajão\";\"other\"\n\"3465644\";\"Conselheiro Lafaiete\";\"main\"\n\"3465644\";\"Conselheiro Lafayete\";\"other\"\n\"3465644\";\"Lafaiete\";\"other\"\n\"3465671\";\"Congonhas\";\"main\"\n\"3465671\";\"Congonhas do Campo\";\"other\"\n\"3465671\";\"Gongonhas\";\"other\"\n\"3465671\";\"Kongon'jas\";\"other\"\n\"3465671\";\"Конгоньяс\";\"other\"\n\"3465713\";\"Conde\";\"main\"\n\"3465713\";\"Itapicuru de Baixo\";\"other\"\n\"3465713\";\"Nossa Senhora do Monte de Itapicuru da Praia\";\"other\"\n\"3465721\";\"Concórdia\";\"main\"\n\"3465721\";\"Concordia\";\"ascii\"\n\"3465721\";\"Konkordija\";\"other\"\n\"3465721\";\"Конкордия\";\"other\"\n\"3465729\";\"Conchas\";\"main\"\n\"3465731\";\"Conchal\";\"main\"\n\"3465737\";\"Conceição do Rio Verde\";\"main\"\n\"3465737\";\"Conceicao do Rio Verde\";\"ascii\"\n\"3465745\";\"Conceição do Mato Dentro\";\"main\"\n\"3465745\";\"Conceicao do Mato Dentro\";\"ascii\"\n\"3465745\";\"Conceicao\";\"other\"\n\"3465745\";\"Conceição\";\"other\"\n\"3465748\";\"Conceição do Coité\";\"main\"\n\"3465748\";\"Conceicao do Coite\";\"ascii\"\n\"3465748\";\"Coite\";\"other\"\n\"3465748\";\"Coité\";\"other\"\n\"3465748\";\"Conceicao Coite\";\"other\"\n\"3465748\";\"Cuite\";\"other\"\n\"3465748\";\"Cuité\";\"other\"\n\"3465749\";\"Conceição do Castelo\";\"main\"\n\"3465749\";\"Conceicao do Castelo\";\"ascii\"\n\"3465749\";\"Conceicao do Castello\";\"other\"\n\"3465752\";\"Conceição do Almeida\";\"main\"\n\"3465752\";\"Conceicao do Almeida\";\"ascii\"\n\"3465752\";\"Affonso Penna\";\"other\"\n\"3465752\";\"Afonso Pena\";\"other\"\n\"3465758\";\"Conceição do Jacuípe\";\"main\"\n\"3465758\";\"Conceicao do Jacuipe\";\"ascii\"\n\"3465758\";\"Concaicao do Jacuipe\";\"other\"\n\"3465758\";\"Concaição do Jacuípe\";\"other\"\n\"3465764\";\"Conceição das Alagoas\";\"main\"\n\"3465764\";\"Conceicao das Alagoas\";\"ascii\"\n\"3465767\";\"Conceição da Feira\";\"main\"\n\"3465767\";\"Conceicao da Feira\";\"ascii\"\n\"3465769\";\"Conceição da Barra\";\"main\"\n\"3465769\";\"Conceicao da Barra\";\"ascii\"\n\"3465769\";\"Barra de Sao Mateus\";\"other\"\n\"3465769\";\"Barra de São Mateus\";\"other\"\n\"3465881\";\"Colorado\";\"main\"\n\"3465927\";\"Colombo\";\"main\"\n\"3465927\";\"Kolombo\";\"other\"\n\"3465927\";\"Коломбо\";\"other\"\n\"3465944\";\"Colatina\";\"main\"\n\"3465944\";\"Collatina\";\"other\"\n\"3465944\";\"qwltynh\";\"other\"\n\"3465944\";\"קולטינה\";\"other\"\n\"3466005\";\"Cocal\";\"main\"\n\"3466041\";\"Coaraci\";\"main\"\n\"3466041\";\"Guaraci\";\"other\"\n\"3466041\";\"Itacare\";\"other\"\n\"3466041\";\"Itacaré\";\"other\"\n\"3466041\";\"Quaraci\";\"other\"\n\"3466046\";\"Clevelândia\";\"main\"\n\"3466046\";\"Clevelandia\";\"ascii\"\n\"3466062\";\"Cláudio\";\"main\"\n\"3466062\";\"Claudio\";\"ascii\"\n\"3466134\";\"Cipó\";\"main\"\n\"3466134\";\"Cipo\";\"ascii\"\n\"3466134\";\"Sipo\";\"other\"\n\"3466134\";\"Sipó\";\"other\"\n\"3466165\";\"Cidreira\";\"main\"\n\"3466171\";\"Cícero Dantas\";\"main\"\n\"3466171\";\"Cicero Dantas\";\"ascii\"\n\"3466171\";\"Bom Conselho\";\"other\"\n\"3466174\";\"Cianorte\";\"main\"\n\"3466174\";\"Sianorte\";\"other\"\n\"3466174\";\"Сианорте\";\"other\"\n\"3466196\";\"Chopinzinho\";\"main\"\n\"3466196\";\"Chopim\";\"other\"\n\"3466196\";\"Chopin\";\"other\"\n\"3466261\";\"Charqueadas\";\"main\"\n\"3466261\";\"Charqueada\";\"other\"\n\"3466261\";\"Pacencia\";\"other\"\n\"3466261\";\"Xarqueada\";\"other\"\n\"3466261\";\"Xarqueda\";\"other\"\n\"3466267\";\"Charqueada\";\"main\"\n\"3466267\";\"Chargeada\";\"other\"\n\"3466267\";\"Xarqueada\";\"other\"\n\"3466296\";\"Chapecó\";\"main\"\n\"3466296\";\"Chapeco\";\"ascii\"\n\"3466296\";\"Xapeco\";\"other\"\n\"3466296\";\"Xapecó\";\"other\"\n\"3466307\";\"Chapada dos Guimarães\";\"main\"\n\"3466307\";\"Chapada dos Guimaraes\";\"ascii\"\n\"3466307\";\"Chapada\";\"other\"\n\"3466307\";\"Chapada do Guimaraes\";\"other\"\n\"3466307\";\"Chapada do Guimarães\";\"other\"\n\"3466307\";\"Santa Ana Da Chapada\";\"other\"\n\"3466307\";\"Santa Anna da Chapada\";\"other\"\n\"3466307\";\"Santana da Chapada\";\"other\"\n\"3466395\";\"Cerro Largo\";\"main\"\n\"3466395\";\"Cerro Azul\";\"other\"\n\"3466429\";\"Cerquilho\";\"main\"\n\"3466430\";\"Cerqueira César\";\"main\"\n\"3466430\";\"Cerqueira Cesar\";\"ascii\"\n\"3466430\";\"Cerqueira Cezar\";\"other\"\n\"3466436\";\"Ceres\";\"main\"\n\"3466462\";\"Centralina\";\"main\"\n\"3466470\";\"Centenário do Sul\";\"main\"\n\"3466470\";\"Centenario do Sul\";\"ascii\"\n\"3466481\";\"Celso Ramos\";\"main\"\n\"3466537\";\"Caxias do Sul\";\"main\"\n\"3466537\";\"Caxias\";\"other\"\n\"3466537\";\"Caxius do Sul\";\"other\"\n\"3466537\";\"Kashias-du-Sul\";\"other\"\n\"3466537\";\"Кашиас-ду-Сул\";\"other\"\n\"3466547\";\"Caxambu\";\"main\"\n\"3466594\";\"Cavalcante\";\"main\"\n\"3466594\";\"Cavalcanti\";\"other\"\n\"3466641\";\"Catu\";\"main\"\n\"3466641\";\"Sant'Anna de Catu\";\"other\"\n\"3466641\";\"Sant'Anna de Catú\";\"other\"\n\"3466692\";\"Catanduva\";\"main\"\n\"3466696\";\"Catalão\";\"main\"\n\"3466696\";\"Catalao\";\"ascii\"\n\"3466698\";\"Cataguases\";\"main\"\n\"3466698\";\"Cataguazes\";\"other\"\n\"3466698\";\"Kataguazis\";\"other\"\n\"3466698\";\"Катагуазис\";\"other\"\n\"3466703\";\"Castro Alves\";\"main\"\n\"3466704\";\"Castro\";\"main\"\n\"3466708\";\"Castilho\";\"main\"\n\"3466708\";\"Alfredo Castilho\";\"other\"\n\"3466723\";\"Castelo\";\"main\"\n\"3466723\";\"Castello\";\"other\"\n\"3466723\";\"Estancia do Castello\";\"other\"\n\"3466723\";\"Kashtelu\";\"other\"\n\"3466723\";\"Каштелу\";\"other\"\n\"3466750\";\"Cassilândia\";\"main\"\n\"3466750\";\"Cassilandia\";\"ascii\"\n\"3466752\";\"Cássia\";\"main\"\n\"3466752\";\"Cassia\";\"ascii\"\n\"3466752\";\"Santa Rita de Cassia\";\"other\"\n\"3466763\";\"Casimiro de Abreu\";\"main\"\n\"3466763\";\"Casemiro de Abreu\";\"other\"\n\"3466779\";\"Cascavel\";\"main\"\n\"3466824\";\"Casa Branca\";\"main\"\n\"3466900\";\"Carmo do Rio Verde\";\"main\"\n\"3466901\";\"Carmo do Rio Claro\";\"main\"\n\"3466902\";\"Carmo do Paranaíba\";\"main\"\n\"3466902\";\"Carmo do Paranaiba\";\"ascii\"\n\"3466902\";\"Carmo do Paranahyba\";\"other\"\n\"3466903\";\"Carmo do Cajuru\";\"main\"\n\"3466903\";\"Carmo de Cajuru\";\"other\"\n\"3466903\";\"Carmo de Cajurú\";\"other\"\n\"3466913\";\"Carmo\";\"main\"\n\"3466931\";\"Carlos Chagas\";\"main\"\n\"3466931\";\"Urucu\";\"other\"\n\"3466931\";\"Urucú\";\"other\"\n\"3466933\";\"Carlos Barbosa\";\"main\"\n\"3466941\";\"Carira\";\"main\"\n\"3466950\";\"Carinhanha\";\"main\"\n\"3466970\";\"Cardoso\";\"main\"\n\"3466978\";\"Carazinho\";\"main\"\n\"3466978\";\"Carasinho\";\"other\"\n\"3466978\";\"Karazin'ju\";\"other\"\n\"3466978\";\"Каразинью\";\"other\"\n\"3466988\";\"Caratinga\";\"main\"\n\"3466993\";\"Caarapó\";\"main\"\n\"3466993\";\"Caarapo\";\"ascii\"\n\"3466993\";\"Porto Primeiro\";\"other\"\n\"3466993\";\"Porto Priméiro\";\"other\"\n\"3466993\";\"Rio Primeiro\";\"other\"\n\"3466998\";\"Carapicuíba\";\"main\"\n\"3466998\";\"Carapicuiba\";\"ascii\"\n\"3467012\";\"Carangola\";\"main\"\n\"3467026\";\"Carandaí\";\"main\"\n\"3467026\";\"Carandai\";\"ascii\"\n\"3467026\";\"Carandahy\";\"other\"\n\"3467042\";\"Carambeí\";\"main\"\n\"3467042\";\"Carambei\";\"ascii\"\n\"3467042\";\"Carambehy\";\"other\"\n\"3467078\";\"Caraí\";\"main\"\n\"3467078\";\"Carai\";\"ascii\"\n\"3467078\";\"Carahy\";\"other\"\n\"3467081\";\"Caraguatatuba\";\"main\"\n\"3467081\";\"Caragua\";\"other\"\n\"3467081\";\"Karaguatatuba\";\"other\"\n\"3467081\";\"Карагуататуба\";\"other\"\n\"3467197\";\"Capivari\";\"main\"\n\"3467197\";\"Capivary\";\"other\"\n\"3467197\";\"Kapivari\";\"other\"\n\"3467197\";\"Капивари\";\"other\"\n\"3467261\";\"Capinzal\";\"main\"\n\"3467261\";\"Rio Capinzal\";\"other\"\n\"3467263\";\"Capinópolis\";\"main\"\n\"3467263\";\"Capinopolis\";\"ascii\"\n\"3467272\";\"Capim Grosso\";\"main\"\n\"3467305\";\"Capelinha\";\"main\"\n\"3467305\";\"Capellinha\";\"other\"\n\"3467305\";\"Kapelin'ja\";\"other\"\n\"3467305\";\"Капелинья\";\"other\"\n\"3467314\";\"Capela do Alto\";\"main\"\n\"3467319\";\"Capela\";\"main\"\n\"3467319\";\"Capella\";\"other\"\n\"3467362\";\"Capão da Canoa\";\"main\"\n\"3467362\";\"Capao da Canoa\";\"ascii\"\n\"3467362\";\"Capo da Canoa\";\"other\"\n\"3467371\";\"Capâo Bonito\";\"main\"\n\"3467371\";\"Capao Bonito\";\"ascii\"\n\"3467445\";\"Cantagalo\";\"main\"\n\"3467445\";\"Cantagallo\";\"other\"\n\"3467452\";\"Canoinhas\";\"main\"\n\"3467452\";\"Ouro Verde\";\"other\"\n\"3467467\";\"Canoas\";\"main\"\n\"3467512\";\"Canguçu\";\"main\"\n\"3467512\";\"Cangucu\";\"ascii\"\n\"3467512\";\"Cangussu\";\"other\"\n\"3467512\";\"Cangussú\";\"other\"\n\"3467530\";\"Canela\";\"main\"\n\"3467530\";\"Canella\";\"other\"\n\"3467530\";\"Kanela\";\"other\"\n\"3467530\";\"Канела\";\"other\"\n\"3467542\";\"Cândido Mota\";\"main\"\n\"3467542\";\"Candido Mota\";\"ascii\"\n\"3467542\";\"Candido Motta\";\"other\"\n\"3467545\";\"Cândido de Abreu\";\"main\"\n\"3467545\";\"Candido de Abreu\";\"ascii\"\n\"3467550\";\"Candelária\";\"main\"\n\"3467550\";\"Candelaria\";\"ascii\"\n\"3467577\";\"Canavieiras\";\"main\"\n\"3467577\";\"Cannavieiras\";\"other\"\n\"3467604\";\"Canarana\";\"main\"\n\"3467604\";\"Canabrava do Miranda\";\"other\"\n\"3467604\";\"Canna Brava do Miranda\";\"other\"\n\"3467604\";\"Miranda\";\"other\"\n\"3467609\";\"Cananéia\";\"main\"\n\"3467609\";\"Cananeia\";\"ascii\"\n\"3467609\";\"Cananea\";\"other\"\n\"3467609\";\"Cananéa\";\"other\"\n\"3467673\";\"Campo Verde\";\"main\"\n\"3467677\";\"Campos Novos\";\"main\"\n\"3467680\";\"Campos Gerais\";\"main\"\n\"3467680\";\"Campos Geraes\";\"other\"\n\"3467680\";\"Kampus-Zherajs\";\"other\"\n\"3467680\";\"Кампус-Жерайс\";\"other\"\n\"3467684\";\"Campos do Jordão\";\"main\"\n\"3467684\";\"Campos do Jordao\";\"ascii\"\n\"3467687\";\"Campos Belos\";\"main\"\n\"3467687\";\"Campos Bellos\";\"other\"\n\"3467688\";\"Campos Altos\";\"main\"\n\"3467693\";\"Campos\";\"main\"\n\"3467693\";\"Campos dos Goitacazes\";\"other\"\n\"3467693\";\"Kampos\";\"other\"\n\"3467693\";\"Sao Salvador dos Campos\";\"other\"\n\"3467693\";\"São Salvador dos Campos\";\"other\"\n\"3467693\";\"Кампос\";\"other\"\n\"3467717\";\"Campo Mourão\";\"main\"\n\"3467717\";\"Campo Mourao\";\"ascii\"\n\"3467717\";\"Mourao\";\"other\"\n\"3467717\";\"Mourão\";\"other\"\n\"3467736\";\"Campo Largo\";\"main\"\n\"3467747\";\"Campo Grande\";\"main\"\n\"3467747\";\"Kampu-Grande\";\"other\"\n\"3467747\";\"kambw ghrandy\";\"other\"\n\"3467747\";\"qmpw grndh\";\"other\"\n\"3467747\";\"Кампу-Гранде\";\"other\"\n\"3467747\";\"קמפו גרנדה\";\"other\"\n\"3467747\";\"كامبو غراندي\";\"other\"\n\"3467747\";\"カンポ・グランデ\";\"other\"\n\"3467754\";\"Campo Grande\";\"main\"\n\"3467760\";\"Campo Formoso\";\"main\"\n\"3467780\";\"Campo do Brito\";\"main\"\n\"3467796\";\"Campo Belo\";\"main\"\n\"3467796\";\"Campo Bello\";\"other\"\n\"3467796\";\"Kampu-Belu\";\"other\"\n\"3467796\";\"Кампу-Белу\";\"other\"\n\"3467860\";\"Campina Verde\";\"main\"\n\"3467865\";\"Campinas\";\"main\"\n\"3467865\";\"Campinas e Regiao\";\"other\"\n\"3467865\";\"Campinas e Região\";\"other\"\n\"3467865\";\"Conceicao de Campinas\";\"other\"\n\"3467865\";\"Conceição de Campinas\";\"other\"\n\"3467865\";\"Kampinas\";\"other\"\n\"3467865\";\"Regiao de Campinas\";\"other\"\n\"3467865\";\"Região de Campinas\";\"other\"\n\"3467865\";\"kanpinasu\";\"other\"\n\"3467865\";\"Кампинас\";\"other\"\n\"3467865\";\"カンピーナス\";\"other\"\n\"3467877\";\"Campina Grande do Sul\";\"main\"\n\"3467877\";\"Campina Grande\";\"other\"\n\"3467877\";\"Kampina-Grande-du-Sul\";\"other\"\n\"3467877\";\"Timbu\";\"other\"\n\"3467877\";\"Кампина-Гранде-ду-Сул\";\"other\"\n\"3467908\";\"Campestre\";\"main\"\n\"3467908\";\"Compestre\";\"other\"\n\"3467928\";\"Campanha\";\"main\"\n\"3467952\";\"Cambuquira\";\"main\"\n\"3467956\";\"Cambuí\";\"main\"\n\"3467956\";\"Cambui\";\"ascii\"\n\"3467956\";\"Cambuhy\";\"other\"\n\"3467962\";\"Cambuci\";\"main\"\n\"3467962\";\"Cambucy\";\"other\"\n\"3467978\";\"Cambé\";\"main\"\n\"3467978\";\"Cambe\";\"ascii\"\n\"3467978\";\"Nova Dantzig\";\"other\"\n\"3467985\";\"Cambará\";\"main\"\n\"3467985\";\"Cambara\";\"ascii\"\n\"3468014\";\"Camaquã\";\"main\"\n\"3468014\";\"Camaqua\";\"ascii\"\n\"3468014\";\"Sao Joao de Camaquam\";\"other\"\n\"3468014\";\"São João de Camaquam\";\"other\"\n\"3468020\";\"Camapuã\";\"main\"\n\"3468020\";\"Camapua\";\"ascii\"\n\"3468020\";\"Camapoa\";\"other\"\n\"3468020\";\"Camapoan\";\"other\"\n\"3468020\";\"Camapoã\";\"other\"\n\"3468020\";\"Camapuan\";\"other\"\n\"3468020\";\"Camaquam\";\"other\"\n\"3468023\";\"Camanducaia\";\"main\"\n\"3468023\";\"Jaguary\";\"other\"\n\"3468025\";\"Camamu\";\"main\"\n\"3468031\";\"Camaçari\";\"main\"\n\"3468031\";\"Camacari\";\"ascii\"\n\"3468031\";\"Camacary\";\"other\"\n\"3468031\";\"Camassari\";\"other\"\n\"3468031\";\"Camassary\";\"other\"\n\"3468100\";\"Caldas Novas\";\"main\"\n\"3468121\";\"Cajuru\";\"main\"\n\"3468157\";\"Cajati\";\"main\"\n\"3468158\";\"Cajamar\";\"main\"\n\"3468158\";\"Agua Fria\";\"other\"\n\"3468158\";\"Água Fria\";\"other\"\n\"3468215\";\"Caieiras\";\"main\"\n\"3468234\";\"Caiapônia\";\"main\"\n\"3468234\";\"Caiaponia\";\"ascii\"\n\"3468234\";\"Rio Bonito\";\"other\"\n\"3468234\";\"Torres Do Rio Bonito\";\"other\"\n\"3468296\";\"Cafelândia\";\"main\"\n\"3468296\";\"Cafelandia\";\"ascii\"\n\"3468314\";\"Cafarnaum\";\"main\"\n\"3468314\";\"Capernaum\";\"other\"\n\"3468314\";\"Capernaúm\";\"other\"\n\"3468317\";\"Caetité\";\"main\"\n\"3468317\";\"Caetite\";\"ascii\"\n\"3468317\";\"Caitete\";\"other\"\n\"3468317\";\"Caiteté\";\"other\"\n\"3468327\";\"Caeté\";\"main\"\n\"3468327\";\"Caete\";\"ascii\"\n\"3468327\";\"Kaehte\";\"other\"\n\"3468327\";\"Каэте\";\"other\"\n\"3468349\";\"Caculé\";\"main\"\n\"3468349\";\"Cacule\";\"ascii\"\n\"3468352\";\"Caçu\";\"main\"\n\"3468352\";\"Cacu\";\"ascii\"\n\"3468352\";\"Cassu\";\"other\"\n\"3468352\";\"Cassú\";\"other\"\n\"3468353\";\"Caconde\";\"main\"\n\"3468376\";\"Cachoeiro de Itapemirim\";\"main\"\n\"3468376\";\"Cacheiro\";\"other\"\n\"3468376\";\"Cachoeiro do Itapemirim\";\"other\"\n\"3468376\";\"קצ'וירו יטאפהמירים\";\"other\"\n\"3468403\";\"Cachoeirinha\";\"main\"\n\"3468425\";\"Cachoeiras de Macacu\";\"main\"\n\"3468425\";\"Cachoeiras\";\"other\"\n\"3468436\";\"Cachoeira do Sul\";\"main\"\n\"3468436\";\"Cachoeira\";\"other\"\n\"3468436\";\"Kashuehjra-du-Sul\";\"other\"\n\"3468436\";\"Кашуэйра-ду-Сул\";\"other\"\n\"3468535\";\"Cachoeira\";\"main\"\n\"3468553\";\"Cacequi\";\"main\"\n\"3468553\";\"Cacequy\";\"other\"\n\"3468560\";\"Caçapava do Sul\";\"main\"\n\"3468560\";\"Cacapava do Sul\";\"ascii\"\n\"3468560\";\"Cacapava\";\"other\"\n\"3468560\";\"Caçapava\";\"other\"\n\"3468562\";\"Caçapava\";\"main\"\n\"3468562\";\"Cacapava\";\"ascii\"\n\"3468570\";\"Caçador\";\"main\"\n\"3468570\";\"Cacador\";\"ascii\"\n\"3468570\";\"Rio Cacador\";\"other\"\n\"3468570\";\"Rio Caçador\";\"other\"\n\"3468592\";\"Cabreúva\";\"main\"\n\"3468592\";\"Cabreuva\";\"ascii\"\n\"3468592\";\"Cabriuva\";\"other\"\n\"3468592\";\"Cabriúva\";\"other\"\n\"3468592\";\"Kabreuva\";\"other\"\n\"3468592\";\"Кабреува\";\"other\"\n\"3468615\";\"Cabo Frio\";\"main\"\n\"3468704\";\"Butiá\";\"main\"\n\"3468704\";\"Butia\";\"ascii\"\n\"3468704\";\"Butio\";\"other\"\n\"3468704\";\"Butió\";\"other\"\n\"3468720\";\"Buritizeiro\";\"main\"\n\"3468732\";\"Buritis\";\"main\"\n\"3468732\";\"Burity\";\"other\"\n\"3468745\";\"Buriti Alegre\";\"main\"\n\"3468745\";\"Burity Alegre\";\"other\"\n\"3468789\";\"Buritama\";\"main\"\n\"3468802\";\"Buri\";\"main\"\n\"3468802\";\"Bury\";\"other\"\n\"3468823\";\"Boquim\";\"main\"\n\"3468858\";\"Buerarema\";\"main\"\n\"3468858\";\"Buerarama\";\"other\"\n\"3468858\";\"Macuco\";\"other\"\n\"3468869\";\"Bueno Brandão\";\"main\"\n\"3468869\";\"Bueno Brandao\";\"ascii\"\n\"3468869\";\"Campo Mistico\";\"other\"\n\"3468869\";\"Campo Mystico\";\"other\"\n\"3468869\";\"Campo Místico\";\"other\"\n\"3468879\";\"Brusque\";\"main\"\n\"3468893\";\"Brumado\";\"main\"\n\"3468893\";\"Bom Jesus dos Meiras\";\"other\"\n\"3468893\";\"Bom Jesús dos Meiras\";\"other\"\n\"3468894\";\"Brumadinho\";\"main\"\n\"3468899\";\"Brotas\";\"main\"\n\"3468902\";\"Brodósqui\";\"main\"\n\"3468902\";\"Brodosqui\";\"ascii\"\n\"3468902\";\"Brodovsky\";\"other\"\n\"3468902\";\"Brodowski\";\"other\"\n\"3469057\";\"Brasília de Minas\";\"main\"\n\"3469057\";\"Brasilia de Minas\";\"ascii\"\n\"3469057\";\"Brasilia\";\"other\"\n\"3469057\";\"Brasília\";\"other\"\n\"3469057\";\"Brazilia\";\"other\"\n\"3469058\";\"Brasília\";\"main\"\n\"3469058\";\"Brasilia\";\"ascii\"\n\"3469058\";\"Brazilia\";\"other\"\n\"3469058\";\"Brazilija\";\"other\"\n\"3469058\";\"Braziljo\";\"other\"\n\"3469058\";\"Brazília\";\"other\"\n\"3469058\";\"Mprazilia\";\"other\"\n\"3469058\";\"Urbs Brasilia\";\"other\"\n\"3469058\";\"ba xi li ya\";\"other\"\n\"3469058\";\"beulajillia\";\"other\"\n\"3469058\";\"brazylya\";\"other\"\n\"3469058\";\"brzylyh\";\"other\"\n\"3469058\";\"burajiria\";\"other\"\n\"3469058\";\"Μπραζίλια\";\"other\"\n\"3469058\";\"Бразилиа\";\"other\"\n\"3469058\";\"Бразилија\";\"other\"\n\"3469058\";\"Ҳавзаи федералии Бразилиа\";\"other\"\n\"3469058\";\"Բրազիլիա քաղաք\";\"other\"\n\"3469058\";\"ברזיליה\";\"other\"\n\"3469058\";\"برازيليا\";\"other\"\n\"3469058\";\"برازیلیا\";\"other\"\n\"3469058\";\"ብራዚሊያ\";\"other\"\n\"3469058\";\"ブラジリア\";\"other\"\n\"3469058\";\"巴西利亚\";\"other\"\n\"3469058\";\"브라질리아\";\"other\"\n\"3469092\";\"Bragança Paulista\";\"main\"\n\"3469092\";\"Braganca Paulista\";\"ascii\"\n\"3469092\";\"Baraganca\";\"other\"\n\"3469092\";\"Baragança\";\"other\"\n\"3469092\";\"Braganca\";\"other\"\n\"3469092\";\"Bragansa-Paulista\";\"other\"\n\"3469092\";\"Bragança\";\"other\"\n\"3469092\";\"Браганса-Паулиста\";\"other\"\n\"3469115\";\"Braço do Norte\";\"main\"\n\"3469115\";\"Braco do Norte\";\"ascii\"\n\"3469136\";\"Botucatu\";\"main\"\n\"3469136\";\"Botukatu\";\"other\"\n\"3469136\";\"Ботукату\";\"other\"\n\"3469140\";\"Botelhos\";\"main\"\n\"3469140\";\"Sao Jose dos Botelhos\";\"other\"\n\"3469140\";\"São José dos Botelhos\";\"other\"\n\"3469169\";\"Borda da Mata\";\"main\"\n\"3469169\";\"Borda da Matta\";\"other\"\n\"3469173\";\"Borborema\";\"main\"\n\"3469190\";\"Boquira\";\"main\"\n\"3469190\";\"Assuncao\";\"other\"\n\"3469190\";\"Assuncão\";\"other\"\n\"3469294\";\"Bonito\";\"main\"\n\"3469374\";\"Bom Sucesso\";\"main\"\n\"3469374\";\"Bom Successo\";\"other\"\n\"3469421\";\"Bom Jesus dos Perdões\";\"main\"\n\"3469421\";\"Bom Jesus dos Perdoes\";\"ascii\"\n\"3469421\";\"Ajuritiba\";\"other\"\n\"3469421\";\"Perdoes\";\"other\"\n\"3469421\";\"Perdões\";\"other\"\n\"3469425\";\"Bom Jesus do Itabapoana\";\"main\"\n\"3469425\";\"Bom Jesus de Itabapoana\";\"other\"\n\"3469425\";\"Bon-Zhezus-du-Itabapoana\";\"other\"\n\"3469425\";\"Бон-Жезус-ду-Итабапоана\";\"other\"\n\"3469426\";\"Bom Jesus do Galho\";\"main\"\n\"3469437\";\"Bom Jesus da Lapa\";\"main\"\n\"3469437\";\"Bon-Zhezus-da-Lapa\";\"other\"\n\"3469437\";\"Lapa\";\"other\"\n\"3469437\";\"Senhor Bom Jesus da Lapa\";\"other\"\n\"3469437\";\"Бон-Жезус-да-Лапа\";\"other\"\n\"3469516\";\"Bom Despacho\";\"main\"\n\"3469540\";\"Boituva\";\"main\"\n\"3469601\";\"Bocaiúva\";\"main\"\n\"3469601\";\"Bocaiuva\";\"ascii\"\n\"3469601\";\"Bocayuva\";\"other\"\n\"3469910\";\"Boa Esperança do Sul\";\"main\"\n\"3469910\";\"Boa Esperanca do Sul\";\"ascii\"\n\"3469910\";\"Boa Esperanca\";\"other\"\n\"3469910\";\"Bôa Esperança\";\"other\"\n\"3469932\";\"Boa Esperança\";\"main\"\n\"3469932\";\"Boa Esperanca\";\"ascii\"\n\"3469932\";\"Boa-Ehsperansa\";\"other\"\n\"3469932\";\"Dores da Boa Esperanca\";\"other\"\n\"3469932\";\"Боа-Эсперанса\";\"other\"\n\"3469942\";\"Boa Esperança\";\"main\"\n\"3469942\";\"Boa Esperanca\";\"ascii\"\n\"3469968\";\"Blumenau\";\"main\"\n\"3469968\";\"Блуменау\";\"other\"\n\"3469984\";\"Biritiba Mirim\";\"main\"\n\"3469984\";\"Burityba-Mirim\";\"other\"\n\"3469989\";\"Birigui\";\"main\"\n\"3469989\";\"Biriguy\";\"other\"\n\"3470003\";\"Biguaçu\";\"main\"\n\"3470003\";\"Biguacu\";\"ascii\"\n\"3470003\";\"Biguassu\";\"other\"\n\"3470003\";\"Biguassú\";\"other\"\n\"3470025\";\"Bicas\";\"main\"\n\"3470044\";\"Betim\";\"main\"\n\"3470052\";\"Bertioga\";\"main\"\n\"3470059\";\"Bernardino de Campos\";\"main\"\n\"3470073\";\"Bento Gonçalves\";\"main\"\n\"3470073\";\"Bento Goncalves\";\"ascii\"\n\"3470117\";\"Belo Oriente\";\"main\"\n\"3470127\";\"Belo Horizonte\";\"main\"\n\"3470127\";\"B.H.\";\"other\"\n\"3470127\";\"BH\";\"other\"\n\"3470127\";\"BHZ\";\"other\"\n\"3470127\";\"Bello Horizonte\";\"other\"\n\"3470127\";\"Belo Hte\";\"other\"\n\"3470127\";\"Belo Khorizonte\";\"other\"\n\"3470127\";\"Belu-Orizonte\";\"other\"\n\"3470127\";\"Belu-Orizonti\";\"other\"\n\"3470127\";\"Bhte\";\"other\"\n\"3470127\";\"Cidade de Minas\";\"other\"\n\"3470127\";\"bei luo ao li cang te\";\"other\"\n\"3470127\";\"beroorizonchi\";\"other\"\n\"3470127\";\"beroorizonte\";\"other\"\n\"3470127\";\"blw hwryzwnty\";\"other\"\n\"3470127\";\"Бело Хоризонте\";\"other\"\n\"3470127\";\"Белу-Оризонте\";\"other\"\n\"3470127\";\"Белу-Оризонти\";\"other\"\n\"3470127\";\"בלו הוריזונטי\";\"other\"\n\"3470127\";\"ベロオリゾンチ\";\"other\"\n\"3470127\";\"ベロオリゾンテ\";\"other\"\n\"3470127\";\"貝洛奥里藏特\";\"other\"\n\"3470127\";\"贝洛奥里藏特\";\"other\"\n\"3470137\";\"Belmonte\";\"main\"\n\"3470142\";\"Belford Roxo\";\"main\"\n\"3470162\";\"Bela Vista do Paraíso\";\"main\"\n\"3470162\";\"Bela Vista do Paraiso\";\"ascii\"\n\"3470164\";\"Bela Vista de Goiás\";\"main\"\n\"3470164\";\"Bela Vista de Goias\";\"ascii\"\n\"3470164\";\"Bela Vista\";\"other\"\n\"3470164\";\"Bella Vista\";\"other\"\n\"3470164\";\"Sucuapara\";\"other\"\n\"3470164\";\"Sussuapara\";\"other\"\n\"3470164\";\"Suçuapara\";\"other\"\n\"3470177\";\"Bela Vista\";\"main\"\n\"3470177\";\"Bella Vista\";\"other\"\n\"3470264\";\"Bebedouro\";\"main\"\n\"3470279\";\"Bauru\";\"main\"\n\"3470279\";\"Бауру\";\"other\"\n\"3470324\";\"Batatais\";\"main\"\n\"3470324\";\"Batataes\";\"other\"\n\"3470324\";\"Batatajs\";\"other\"\n\"3470324\";\"Бататайс\";\"other\"\n\"3470338\";\"Bataiporã\";\"main\"\n\"3470338\";\"Bataipora\";\"ascii\"\n\"3470338\";\"Baitapora\";\"other\"\n\"3470338\";\"Baitaporã\";\"other\"\n\"3470341\";\"Bastos\";\"main\"\n\"3470353\";\"Barueri\";\"main\"\n\"3470353\";\"Baruehri\";\"other\"\n\"3470353\";\"Tambore\";\"other\"\n\"3470353\";\"Tamboré\";\"other\"\n\"3470353\";\"Баруэри\";\"other\"\n\"3470369\";\"Barroso\";\"main\"\n\"3470409\";\"Barro Alto\";\"main\"\n\"3470410\";\"Barro Alto\";\"main\"\n\"3470428\";\"Barrinha\";\"main\"\n\"3470451\";\"Barretos\";\"main\"\n\"3470451\";\"Barretus\";\"other\"\n\"3470451\";\"Барретус\";\"other\"\n\"3470470\";\"Barreiro do Jaíba\";\"main\"\n\"3470470\";\"Barreiro do Jaiba\";\"ascii\"\n\"3470583\";\"Barreiras\";\"main\"\n\"3470583\";\"Barrejras\";\"other\"\n\"3470583\";\"Баррейрас\";\"other\"\n\"3470597\";\"Barra Velha\";\"main\"\n\"3470636\";\"Barra Mansa\";\"main\"\n\"3470674\";\"Barra dos Coqueiros\";\"main\"\n\"3470691\";\"Barra do Piraí\";\"main\"\n\"3470691\";\"Barra do Pirai\";\"ascii\"\n\"3470691\";\"Barra do Parai\";\"other\"\n\"3470691\";\"Barra do Pirahy\";\"other\"\n\"3470709\";\"Barra do Garças\";\"main\"\n\"3470709\";\"Barra do Garcas\";\"ascii\"\n\"3470718\";\"Barra do Bugres\";\"main\"\n\"3470718\";\"Barra Dos Bugres\";\"other\"\n\"3470718\";\"Barra do Rio dos Bugres\";\"other\"\n\"3470730\";\"Barra de São Francisco\";\"main\"\n\"3470730\";\"Barra de Sao Francisco\";\"ascii\"\n\"3470730\";\"Barra-de-San-Francisko\";\"other\"\n\"3470730\";\"Sao Francisco\";\"other\"\n\"3470730\";\"São Francisco\";\"other\"\n\"3470730\";\"Барра-де-Сан-Франциско\";\"other\"\n\"3470744\";\"Barra da Estiva\";\"main\"\n\"3470776\";\"Barra Bonita\";\"main\"\n\"3470821\";\"Barra\";\"main\"\n\"3470821\";\"Barra Do Rio Grande\";\"other\"\n\"3470821\";\"Барра\";\"other\"\n\"3470825\";\"Bariri\";\"main\"\n\"3470825\";\"Bariry\";\"other\"\n\"3470858\";\"Barbacena\";\"main\"\n\"3470871\";\"Barão de Melgaço\";\"main\"\n\"3470871\";\"Barao de Melgaco\";\"ascii\"\n\"3470871\";\"Chacorore\";\"other\"\n\"3470871\";\"Chacororé\";\"other\"\n\"3470871\";\"Melgaco\";\"other\"\n\"3470871\";\"Melgaço\";\"other\"\n\"3470878\";\"Barão de Cocais\";\"main\"\n\"3470878\";\"Barao de Cocais\";\"ascii\"\n\"3470878\";\"Morro Grande\";\"other\"\n\"3470912\";\"Bandeirantes\";\"main\"\n\"3471005\";\"Bambuí\";\"main\"\n\"3471005\";\"Bambui\";\"ascii\"\n\"3471005\";\"Bambuhy\";\"other\"\n\"3471039\";\"Balneário Camboriú\";\"main\"\n\"3471039\";\"Balneario Camboriu\";\"ascii\"\n\"3471039\";\"Balneario\";\"other\"\n\"3471039\";\"Balneário\";\"other\"\n\"3471039\";\"Camboriu\";\"other\"\n\"3471039\";\"Camboriú\";\"other\"\n\"3471061\";\"Baixo Guandu\";\"main\"\n\"3471094\";\"Baixa Grande\";\"main\"\n\"3471196\";\"Bagé\";\"main\"\n\"3471196\";\"Bage\";\"ascii\"\n\"3471196\";\"Bag\";\"other\"\n\"3471196\";\"Baje\";\"other\"\n\"3471196\";\"Bajé\";\"other\"\n\"3471196\";\"Баг\";\"other\"\n\"3471208\";\"Baependi\";\"main\"\n\"3471208\";\"Baependy\";\"other\"\n\"3471210\";\"Bady Bassitt\";\"main\"\n\"3471210\";\"Bady Brassitt\";\"other\"\n\"3471210\";\"Barboleta\";\"other\"\n\"3471210\";\"Borboleta\";\"other\"\n\"3471291\";\"Avaré\";\"main\"\n\"3471291\";\"Avare\";\"ascii\"\n\"3471309\";\"Auriflama\";\"main\"\n\"3471335\";\"Atibaia\";\"main\"\n\"3471368\";\"Astorga\";\"main\"\n\"3471369\";\"Astolfo Dutra\";\"main\"\n\"3471369\";\"Porto de Santo Antonio\";\"other\"\n\"3471369\";\"Pôrto de Santo Antonio\";\"other\"\n\"3471374\";\"Assis\";\"main\"\n\"3471374\";\"Assiz\";\"other\"\n\"3471374\";\"Ассис\";\"other\"\n\"3471377\";\"Assaí\";\"main\"\n\"3471377\";\"Assai\";\"ascii\"\n\"3471377\";\"Acai\";\"other\"\n\"3471377\";\"Açaí\";\"other\"\n\"3471393\";\"Arujá\";\"main\"\n\"3471393\";\"Aruja\";\"ascii\"\n\"3471393\";\"Uruja\";\"other\"\n\"3471393\";\"Urujá\";\"other\"\n\"3471395\";\"Artur Nogueira\";\"main\"\n\"3471395\";\"Arthur Nogueira\";\"other\"\n\"3471422\";\"Arroio Grande\";\"main\"\n\"3471422\";\"Federacao\";\"other\"\n\"3471422\";\"Federação\";\"other\"\n\"3471425\";\"Arroio dos Ratos\";\"main\"\n\"3471428\";\"Arroio do Meio\";\"main\"\n\"3471428\";\"Gaspar Martins\";\"other\"\n\"3471451\";\"Arraial do Cabo\";\"main\"\n\"3471451\";\"Aldeia do Cabo\";\"other\"\n\"3471487\";\"Armação de Búzios\";\"main\"\n\"3471487\";\"Armacao de Buzios\";\"ascii\"\n\"3471487\";\"Armacao dos Buzios\";\"other\"\n\"3471487\";\"Armação dos Búzios\";\"other\"\n\"3471487\";\"Buzios\";\"other\"\n\"3471487\";\"Búzios\";\"other\"\n\"3471487\";\"Saco de Fora\";\"other\"\n\"3471522\";\"Arinos\";\"main\"\n\"3471522\";\"Affonso Arinos\";\"other\"\n\"3471551\";\"Arenápolis\";\"main\"\n\"3471551\";\"Arenapolis\";\"ascii\"\n\"3471609\";\"Areia Branca\";\"main\"\n\"3471665\";\"Areal\";\"main\"\n\"3471674\";\"Areado\";\"main\"\n\"3471683\";\"Arcos\";\"main\"\n\"3471683\";\"Arkos\";\"other\"\n\"3471683\";\"Аркос\";\"other\"\n\"3471691\";\"Araxá\";\"main\"\n\"3471691\";\"Araxa\";\"ascii\"\n\"3471691\";\"Ouro Minas Araxa\";\"other\"\n\"3471691\";\"Ouro Minas Araxá\";\"other\"\n\"3471697\";\"Araucária\";\"main\"\n\"3471697\";\"Araucaria\";\"ascii\"\n\"3471697\";\"Araukarija\";\"other\"\n\"3471697\";\"Араукария\";\"other\"\n\"3471699\";\"Arauá\";\"main\"\n\"3471699\";\"Araua\";\"ascii\"\n\"3471715\";\"Araruama\";\"main\"\n\"3471758\";\"Araras\";\"main\"\n\"3471766\";\"Araraquara\";\"main\"\n\"3471772\";\"Araranguá\";\"main\"\n\"3471772\";\"Ararangua\";\"ascii\"\n\"3471772\";\"Campinas\";\"other\"\n\"3471772\";\"Арарангуа\";\"other\"\n\"3471798\";\"Arapongas\";\"main\"\n\"3471798\";\"Araponga\";\"other\"\n\"3471798\";\"Арапонгас\";\"other\"\n\"3471830\";\"Araguari\";\"main\"\n\"3471830\";\"Araguar\";\"other\"\n\"3471830\";\"Araguary\";\"other\"\n\"3471830\";\"Арагуари\";\"other\"\n\"3471834\";\"Araguaiana\";\"main\"\n\"3471834\";\"Araguiana\";\"other\"\n\"3471834\";\"Registro do Araguaia\";\"other\"\n\"3471840\";\"Aragarças\";\"main\"\n\"3471840\";\"Aragarcas\";\"ascii\"\n\"3471846\";\"Araçuaí\";\"main\"\n\"3471846\";\"Aracuai\";\"ascii\"\n\"3471846\";\"Arassuahy\";\"other\"\n\"3471846\";\"Arassuai\";\"other\"\n\"3471846\";\"Arassuaí\";\"other\"\n\"3471846\";\"Arassui\";\"other\"\n\"3471846\";\"Arasuai\";\"other\"\n\"3471846\";\"Arássuí\";\"other\"\n\"3471846\";\"Арасуаи\";\"other\"\n\"3471848\";\"Aracruz\";\"main\"\n\"3471848\";\"Arakrus\";\"other\"\n\"3471848\";\"Sauacu\";\"other\"\n\"3471848\";\"Sauaçu\";\"other\"\n\"3471848\";\"Аракрус\";\"other\"\n\"3471849\";\"Araçoiaba da Serra\";\"main\"\n\"3471849\";\"Aracoiaba da Serra\";\"ascii\"\n\"3471849\";\"Campo Largo\";\"other\"\n\"3471854\";\"Araci\";\"main\"\n\"3471854\";\"Aracy\";\"other\"\n\"3471854\";\"Raso\";\"other\"\n\"3471859\";\"Araçatuba\";\"main\"\n\"3471859\";\"Aracatuba\";\"ascii\"\n\"3471872\";\"Aracaju\";\"main\"\n\"3471872\";\"Arakazhu\";\"other\"\n\"3471872\";\"Аракажу\";\"other\"\n\"3471872\";\"אראקז'ו\";\"other\"\n\"3471896\";\"Aquidauana\";\"main\"\n\"3471896\";\"Aquidavana\";\"other\"\n\"3471902\";\"Aquidabã\";\"main\"\n\"3471902\";\"Aquidaba\";\"ascii\"\n\"3471902\";\"Aquidaban\";\"other\"\n\"3471910\";\"Apucarana\";\"main\"\n\"3471927\";\"Apiaí\";\"main\"\n\"3471927\";\"Apiai\";\"ascii\"\n\"3471927\";\"Apiahy\";\"other\"\n\"3471940\";\"Aparecida do Taboado\";\"main\"\n\"3471940\";\"Aparecida do Tabuado\";\"other\"\n\"3471949\";\"Aparecida\";\"main\"\n\"3471949\";\"Aparesida\";\"other\"\n\"3471949\";\"Apparecida\";\"other\"\n\"3471949\";\"Апаресида\";\"other\"\n\"3472048\";\"Antonina\";\"main\"\n\"3472138\";\"Anicuns\";\"main\"\n\"3472138\";\"Novo Horizonte\";\"other\"\n\"3472177\";\"Angra dos Reis\";\"main\"\n\"3472177\";\"Angra\";\"other\"\n\"3472177\";\"Angra-dus-Rejs\";\"other\"\n\"3472177\";\"Ангра-дус-Рейс\";\"other\"\n\"3472234\";\"Angatuba\";\"main\"\n\"3472245\";\"Andrelândia\";\"main\"\n\"3472245\";\"Andrelandia\";\"ascii\"\n\"3472245\";\"Turvo\";\"other\"\n\"3472245\";\"Vila Bela do Turvo\";\"other\"\n\"3472248\";\"Andradina\";\"main\"\n\"3472254\";\"Andradas\";\"main\"\n\"3472254\";\"Caracol\";\"other\"\n\"3472254\";\"Андрадас\";\"other\"\n\"3472284\";\"Anastácio\";\"main\"\n\"3472284\";\"Anastacio\";\"ascii\"\n\"3472287\";\"Anápolis\";\"main\"\n\"3472287\";\"Anapolis\";\"ascii\"\n\"3472298\";\"Anagé\";\"main\"\n\"3472298\";\"Anage\";\"ascii\"\n\"3472298\";\"Anaje\";\"other\"\n\"3472298\";\"Joanopolis\";\"other\"\n\"3472298\";\"Joanópolis\";\"other\"\n\"3472298\";\"Sao Joao da Vila Nova\";\"other\"\n\"3472298\";\"Sao Jose da Villa Nova\";\"other\"\n\"3472298\";\"São José da Villa Nova\";\"other\"\n\"3472298\";\"São João da Vila Nova\";\"other\"\n\"3472304\";\"Ampére\";\"main\"\n\"3472304\";\"Ampere\";\"ascii\"\n\"3472311\";\"Amparo\";\"main\"\n\"3472338\";\"Américo Brasiliense\";\"main\"\n\"3472338\";\"Americo Brasiliense\";\"ascii\"\n\"3472343\";\"Americana\";\"main\"\n\"3472343\";\"Amerikana\";\"other\"\n\"3472343\";\"Vila Americana\";\"other\"\n\"3472343\";\"Villa Americana\";\"other\"\n\"3472343\";\"Американа\";\"other\"\n\"3472344\";\"América Dourada\";\"main\"\n\"3472344\";\"America Dourada\";\"ascii\"\n\"3472370\";\"Amargosa\";\"main\"\n\"3472404\";\"Alvorada\";\"main\"\n\"3472406\";\"Alvinópolis\";\"main\"\n\"3472406\";\"Alvinopolis\";\"ascii\"\n\"3472417\";\"Álvares Machado\";\"main\"\n\"3472417\";\"Alvares Machado\";\"ascii\"\n\"3472437\";\"Alto Piquiri\";\"main\"\n\"3472440\";\"Alto Paraná\";\"main\"\n\"3472440\";\"Alto Parana\";\"ascii\"\n\"3472444\";\"Altãnia\";\"main\"\n\"3472444\";\"Altania\";\"ascii\"\n\"3472444\";\"Itonia\";\"other\"\n\"3472444\";\"Itônia\";\"other\"\n\"3472473\";\"Alto Araguaia\";\"main\"\n\"3472473\";\"Santa Rita do Araguaia\";\"other\"\n\"3472473\";\"Santa Rita do Araguaya\";\"other\"\n\"3472485\";\"Altinópolis\";\"main\"\n\"3472485\";\"Altinopolis\";\"ascii\"\n\"3472487\";\"Alterosa\";\"main\"\n\"3472487\";\"Serra Negra\";\"other\"\n\"3472507\";\"Alpinópolis\";\"main\"\n\"3472507\";\"Alpinopolis\";\"ascii\"\n\"3472518\";\"Almirante Tamandaré\";\"main\"\n\"3472518\";\"Almirante Tamandare\";\"ascii\"\n\"3472518\";\"Tamandare\";\"other\"\n\"3472518\";\"Tamandaré\";\"other\"\n\"3472518\";\"Timaneira\";\"other\"\n\"3472518\";\"Timoneira\";\"other\"\n\"3472520\";\"Almenara\";\"main\"\n\"3472520\";\"Al'menara\";\"other\"\n\"3472520\";\"Sao Joao de Vigia\";\"other\"\n\"3472520\";\"São João de Vigia\";\"other\"\n\"3472520\";\"Vigia\";\"other\"\n\"3472520\";\"Альменара\";\"other\"\n\"3472596\";\"Alfredo Chaves\";\"main\"\n\"3472596\";\"Alfredo Chavez\";\"other\"\n\"3472603\";\"Alfenas\";\"main\"\n\"3472609\";\"Além Paraíba\";\"main\"\n\"3472609\";\"Alem Paraiba\";\"ascii\"\n\"3472609\";\"Alem Parahyba\";\"other\"\n\"3472638\";\"Alegrete\";\"main\"\n\"3472638\";\"Alegreti\";\"other\"\n\"3472638\";\"Алегрети\";\"other\"\n\"3472666\";\"Alegre\";\"main\"\n\"3472766\";\"Alagoinhas\";\"main\"\n\"3472808\";\"Aimorés\";\"main\"\n\"3472808\";\"Aimores\";\"ascii\"\n\"3472808\";\"Aymores\";\"other\"\n\"3472808\";\"Aymorés\";\"other\"\n\"3472820\";\"Águia Branca\";\"main\"\n\"3472820\";\"Aguia Branca\";\"ascii\"\n\"3472825\";\"Agudos\";\"main\"\n\"3472848\";\"Águas Vermelhas\";\"main\"\n\"3472848\";\"Aguas Vermelhas\";\"ascii\"\n\"3472848\";\"Agua Vermelha\";\"other\"\n\"3472864\";\"Águas Formosas\";\"main\"\n\"3472864\";\"Aguas Formosas\";\"ascii\"\n\"3472864\";\"Aguas Belas\";\"other\"\n\"3472864\";\"Aguas Bellas\";\"other\"\n\"3472864\";\"Sao Boaventura d'Agua Bella\";\"other\"\n\"3472864\";\"Sao Jose das Aguas Belas\";\"other\"\n\"3472864\";\"São Bôaventura d'Agua Bella\";\"other\"\n\"3472864\";\"São José das Aguas Belas\";\"other\"\n\"3472864\";\"Águas Belas\";\"other\"\n\"3472869\";\"Águas de Lindóia\";\"main\"\n\"3472869\";\"Aguas de Lindoia\";\"ascii\"\n\"3472969\";\"Aguaí\";\"main\"\n\"3472969\";\"Aguai\";\"ascii\"\n\"3472969\";\"Cascavel\";\"other\"\n\"3473129\";\"Afonso Cláudio\";\"main\"\n\"3473129\";\"Afonso Claudio\";\"ascii\"\n\"3473129\";\"Affonso Claudio\";\"other\"\n\"3473157\";\"Adamantina\";\"main\"\n\"3473183\";\"Açucena\";\"main\"\n\"3473183\";\"Acucena\";\"ascii\"\n\"3473183\";\"Travessao\";\"other\"\n\"3473183\";\"Travessão\";\"other\"\n\"3473218\";\"Acajutiba\";\"main\"\n\"3473218\";\"Cajueiro\";\"other\"\n\"3473267\";\"Abaeté\";\"main\"\n\"3473267\";\"Abaete\";\"ascii\"\n\"3473267\";\"Abaehte\";\"other\"\n\"3473267\";\"Абаэте\";\"other\"\n\"3473268\";\"Abadiânia\";\"main\"\n\"3473268\";\"Abadiania\";\"ascii\"\n\"3473964\";\"Guaíba\";\"main\"\n\"3473964\";\"Guaiba\";\"ascii\"\n\"3474574\";\"Palmas\";\"main\"\n\"3474574\";\"plms\";\"other\"\n\"3474574\";\"Палмас\";\"other\"\n\"3474574\";\"פלמס\";\"other\"\n\"3478424\";\"Pontal do Paraná\";\"main\"\n\"3478424\";\"Pontal do Parana\";\"ascii\"\n\"3661756\";\"Uarini\";\"main\"\n\"3661894\";\"Tonantins\";\"main\"\n\"3661894\";\"Tocantins\";\"other\"\n\"3661944\";\"Tefé\";\"main\"\n\"3661944\";\"Tefe\";\"ascii\"\n\"3661944\";\"Ega\";\"other\"\n\"3661944\";\"Teffe\";\"other\"\n\"3661944\";\"Teffé\";\"other\"\n\"3661948\";\"Marechal Thaumaturgo\";\"main\"\n\"3661948\";\"Taumaturgo\";\"other\"\n\"3661948\";\"Villa Thaumaturgo\";\"other\"\n\"3661980\";\"Tarauacá\";\"main\"\n\"3661980\";\"Tarauaca\";\"ascii\"\n\"3661980\";\"Foz do Muru\";\"other\"\n\"3661980\";\"Seabra\";\"other\"\n\"3661980\";\"Vila Seabra\";\"other\"\n\"3661980\";\"Villa Seabra\";\"other\"\n\"3662075\";\"Tabatinga\";\"main\"\n\"3662155\";\"Sena Madureira\";\"main\"\n\"3662155\";\"Purus\";\"other\"\n\"3662155\";\"Purús\";\"other\"\n\"3662155\";\"Senna Madureira\";\"other\"\n\"3662252\";\"São Paulo de Olivença\";\"main\"\n\"3662252\";\"Sao Paulo de Olivenca\";\"ascii\"\n\"3662342\";\"São Gabriel da Cachoeira\";\"main\"\n\"3662342\";\"Sao Gabriel da Cachoeira\";\"ascii\"\n\"3662342\";\"Sao Gabriel\";\"other\"\n\"3662342\";\"São Gabriel\";\"other\"\n\"3662395\";\"Santo Antônio do Içá\";\"main\"\n\"3662395\";\"Santo Antonio do Ica\";\"ascii\"\n\"3662395\";\"Santo Antonio\";\"other\"\n\"3662395\";\"Santo Antonio do Inca\";\"other\"\n\"3662489\";\"Santa Isabel do Rio Negro\";\"main\"\n\"3662489\";\"Santa Isabel\";\"other\"\n\"3662489\";\"Santa Izabel\";\"other\"\n\"3662489\";\"Tapuracuara\";\"other\"\n\"3662489\";\"Tapurucuara\";\"other\"\n\"3662489\";\"Tapuruqua\";\"other\"\n\"3662489\";\"Tapuruquara\";\"other\"\n\"3662489\";\"Tapuruquá\";\"other\"\n\"3662489\";\"Tapuruquára\";\"other\"\n\"3662574\";\"Rio Branco\";\"main\"\n\"3662574\";\"Penapolis\";\"other\"\n\"3662574\";\"Penápolis\";\"other\"\n\"3662574\";\"Riu Brankas\";\"other\"\n\"3662574\";\"Riu-Branku\";\"other\"\n\"3662574\";\"ryw brnqw\";\"other\"\n\"3662574\";\"Риу-Бранку\";\"other\"\n\"3662574\";\"ריו ברנקו\";\"other\"\n\"3662574\";\"リオ・ブランコ\";\"other\"\n\"3662761\";\"Porto Walter\";\"main\"\n\"3662761\";\"Humaita\";\"other\"\n\"3662761\";\"Humaitá\";\"other\"\n\"3662761\";\"Humayta\";\"other\"\n\"3662761\";\"Humaytá\";\"other\"\n\"3662761\";\"Porto Valter\";\"other\"\n\"3662761\";\"Pôrto Válter\";\"other\"\n\"3662761\";\"Pôrto Walter\";\"other\"\n\"3662761\";\"Villa Humayta\";\"other\"\n\"3662762\";\"Porto Velho\";\"main\"\n\"3662762\";\"Portu Veljas\";\"other\"\n\"3662762\";\"Portu-Vel'ju\";\"other\"\n\"3662762\";\"Portu-Velju\";\"other\"\n\"3662762\";\"Velho\";\"other\"\n\"3662762\";\"pwrtw wlyw\";\"other\"\n\"3662762\";\"Порту-Велью\";\"other\"\n\"3662762\";\"Порту-Велю\";\"other\"\n\"3662762\";\"פורטו ולאהו\";\"other\"\n\"3662762\";\"פורטו וליו\";\"other\"\n\"3662927\";\"Pauini\";\"main\"\n\"3663142\";\"Novo Aripuanã\";\"main\"\n\"3663142\";\"Novo Aripuana\";\"ascii\"\n\"3663142\";\"Boca Aripuana\";\"other\"\n\"3663142\";\"Boca Aripuanã\";\"other\"\n\"3663142\";\"Foz do Aripuana\";\"other\"\n\"3663142\";\"Foz do Aripuanã\";\"other\"\n\"3663475\";\"Maraã\";\"main\"\n\"3663475\";\"Maraa\";\"ascii\"\n\"3663495\";\"Manoel Urbano\";\"main\"\n\"3663503\";\"Manicoré\";\"main\"\n\"3663503\";\"Manicore\";\"ascii\"\n\"3663516\";\"Mâncio Lima\";\"main\"\n\"3663516\";\"Mancio Lima\";\"ascii\"\n\"3663516\";\"Japiim\";\"other\"\n\"3663516\";\"Japuim\";\"other\"\n\"3663516\";\"Villa Nuncio Lima\";\"other\"\n\"3663517\";\"Manaus\";\"main\"\n\"3663517\";\"Barra do Rio Negro\";\"other\"\n\"3663517\";\"Manaos\";\"other\"\n\"3663517\";\"Manos\";\"other\"\n\"3663517\";\"Manáos\";\"other\"\n\"3663517\";\"ma nao si\";\"other\"\n\"3663517\";\"manausu\";\"other\"\n\"3663517\";\"Манаус\";\"other\"\n\"3663517\";\"Манаўс\";\"other\"\n\"3663517\";\"מנאוס\";\"other\"\n\"3663517\";\"マナウス\";\"other\"\n\"3663517\";\"马瑙斯\";\"other\"\n\"3663524\";\"Manaquiri\";\"main\"\n\"3663524\";\"Manaquery\";\"other\"\n\"3663529\";\"Manacapuru\";\"main\"\n\"3663529\";\"Manakapuru\";\"other\"\n\"3663529\";\"Манакапуру\";\"other\"\n\"3663693\";\"Jutaí\";\"main\"\n\"3663693\";\"Jutai\";\"ascii\"\n\"3664078\";\"Humaitá\";\"main\"\n\"3664078\";\"Humaita\";\"ascii\"\n\"3664078\";\"Humayta\";\"other\"\n\"3664078\";\"Humaytá\";\"other\"\n\"3664207\";\"Fonte Boa\";\"main\"\n\"3664243\";\"Feijó\";\"main\"\n\"3664243\";\"Feijo\";\"ascii\"\n\"3664243\";\"Vila Feijo\";\"other\"\n\"3664243\";\"Vila Feijó\";\"other\"\n\"3664243\";\"Villa Feijo\";\"other\"\n\"3664301\";\"Envira\";\"main\"\n\"3664301\";\"Emvira\";\"other\"\n\"3664321\";\"Eirunepé\";\"main\"\n\"3664321\";\"Eirunepe\";\"ascii\"\n\"3664321\";\"Joao Pessoa\";\"other\"\n\"3664321\";\"João Pessôa\";\"other\"\n\"3664321\";\"Sao Felipe\";\"other\"\n\"3664321\";\"Sao Felippe\";\"other\"\n\"3664321\";\"Sao Filipe\";\"other\"\n\"3664321\";\"Sao Phelippe\";\"other\"\n\"3664321\";\"São Felipe\";\"other\"\n\"3664321\";\"São Felippe\";\"other\"\n\"3664321\";\"São Filipe\";\"other\"\n\"3664321\";\"São Phelippe\";\"other\"\n\"3664525\";\"Codajás\";\"main\"\n\"3664525\";\"Codajas\";\"ascii\"\n\"3664525\";\"Codajaz\";\"other\"\n\"3664525\";\"Codajáz\";\"other\"\n\"3664539\";\"Coari\";\"main\"\n\"3664539\";\"Coari Amazonas\";\"other\"\n\"3664539\";\"Coary\";\"other\"\n\"3664539\";\"Koari\";\"other\"\n\"3664539\";\"Quari\";\"other\"\n\"3664539\";\"Quarí\";\"other\"\n\"3664539\";\"Коари\";\"other\"\n\"3664659\";\"Carauari\";\"main\"\n\"3664659\";\"Carauary\";\"other\"\n\"3664659\";\"Caravari\";\"other\"\n\"3664659\";\"Xibaua\";\"other\"\n\"3664659\";\"Xibauá\";\"other\"\n\"3664716\";\"Canutama\";\"main\"\n\"3664956\";\"Boca do Acre\";\"main\"\n\"3664956\";\"Bocca do Acre\";\"other\"\n\"3664956\";\"Foz do Acre\";\"other\"\n\"3664956\";\"Santa Maria da Boca do Acre\";\"other\"\n\"3664956\";\"Santa Maria da Bôca do Acre\";\"other\"\n\"3664980\";\"Boa Vista\";\"main\"\n\"3664980\";\"Boa Vista do Rio Branco\";\"other\"\n\"3664980\";\"Boa Višta\";\"other\"\n\"3664980\";\"Boa-Vista\";\"other\"\n\"3664980\";\"Боа-Виста\";\"other\"\n\"3664980\";\"בואה ויסטה\";\"other\"\n\"3665016\";\"Benjamin Constant\";\"main\"\n\"3665016\";\"Benjamim Constant\";\"other\"\n\"3665098\";\"Barcelos\";\"main\"\n\"3665098\";\"Barcellos\";\"other\"\n\"3665199\";\"Ariquemes\";\"main\"\n\"3665199\";\"Arikemes\";\"other\"\n\"3665202\";\"Aripuanã\";\"main\"\n\"3665202\";\"Aripuana\";\"ascii\"\n\"3665202\";\"Aripuanan\";\"other\"\n\"3665202\";\"Campina\";\"other\"\n\"3665202\";\"Арипуанан\";\"other\"\n\"3665315\";\"Anori\";\"main\"\n\"3665315\";\"Annory\";\"other\"\n\"3665315\";\"Anory\";\"other\"\n\"3665380\";\"Alvarães\";\"main\"\n\"3665380\";\"Alvaraes\";\"ascii\"\n\"3665380\";\"Caicara\";\"other\"\n\"3665380\";\"Caissara\";\"other\"\n\"3665380\";\"Caiçara\";\"other\"\n\"3736808\";\"Iranduba\";\"main\"\n\"3736808\";\"Iranduba Grande\";\"other\"\n\"3924674\";\"Xapuri\";\"main\"\n\"3924674\";\"Xapury\";\"other\"\n\"3924679\";\"Vilhena\";\"main\"\n\"3924679\";\"Vilena\";\"other\"\n\"3924679\";\"Вилена\";\"other\"\n\"3924752\";\"Senador Guiomard\";\"main\"\n\"3924872\";\"Presidente Médici\";\"main\"\n\"3924872\";\"Presidente Medici\";\"ascii\"\n\"3924872\";\"Presidente\";\"other\"\n\"3924872\";\"Presidente Hermes\";\"other\"\n\"3924877\";\"Pôsto Fiscal Rolim de Moura\";\"main\"\n\"3924877\";\"Posto Fiscal Rolim de Moura\";\"ascii\"\n\"3924877\";\"Rolim de Moura\";\"other\"\n\"3924895\";\"Plácido de Castro\";\"main\"\n\"3924895\";\"Placido de Castro\";\"ascii\"\n\"3924895\";\"Barraca Rapirran\";\"other\"\n\"3924895\";\"Boca do Rapirra\";\"other\"\n\"3924895\";\"Bocca do Rapirra\";\"other\"\n\"3924908\";\"Pimenta Bueno\";\"main\"\n\"3924948\";\"Ouro Preto do Oeste\";\"main\"\n\"3924948\";\"Oru-Pretu-du-Uehsti\";\"other\"\n\"3924948\";\"Ouro Prêto do Oeste\";\"other\"\n\"3924948\";\"Ору-Прету-ду-Уэсти\";\"other\"\n\"3925040\";\"Jaru\";\"main\"\n\"3925040\";\"Juru\";\"other\"\n\"3925040\";\"Zhara\";\"other\"\n\"3925040\";\"Жара\";\"other\"\n\"3925075\";\"Guajará Mirim\";\"main\"\n\"3925075\";\"Guajara Mirim\";\"ascii\"\n\"3925075\";\"Guayaramerim\";\"other\"\n\"3925212\";\"Cacoal\";\"main\"\n\"3925212\";\"Cacual\";\"other\"\n\"3925212\";\"Kakoal\";\"other\"\n\"3925212\";\"Какоал\";\"other\"\n\"3925227\";\"Brasiléia\";\"main\"\n\"3925227\";\"Brasileia\";\"ascii\"\n\"3925227\";\"Brasilia\";\"other\"\n\"3925227\";\"Brasília\";\"other\"\n\"6316406\";\"Aparecida de Goiânia\";\"main\"\n\"6316406\";\"Aparecida de Goiania\";\"ascii\"\n\"6316729\";\"Campinas\";\"main\"\n\"6317136\";\"Fernando de Noronha (Distrito Estadual)\";\"main\"\n\"6317344\";\"Jaboatão dos Guararapes\";\"main\"\n\"6317344\";\"Jaboatao dos Guararapes\";\"ascii\"\n\"6317464\";\"Lauro de Freitas\";\"main\"\n\"6317953\";\"Pinhais\";\"main\"\n\"6318165\";\"Rio Preto da Eva\";\"main\"\n\"6318694\";\"Simões Filho\";\"main\"\n\"6318694\";\"Simoes Filho\";\"ascii\"\n\"6693804\";\"Cambebba\";\"main\"\n\"3571224\";\"West End\";\"main\"\n\"3571224\";\"West End Settlement\";\"other\"\n\"3571592\";\"Rock Sound\";\"main\"\n\"3571592\";\"New Portsmouth\";\"other\"\n\"3571592\";\"New Portsmouth Settlement\";\"other\"\n\"3571824\";\"Nassau\";\"main\"\n\"3571824\";\"City of Nassau\";\"other\"\n\"3571824\";\"Nasau\";\"other\"\n\"3571824\";\"Nassaou\";\"other\"\n\"3571824\";\"Nassau City\";\"other\"\n\"3571824\";\"na sao\";\"other\"\n\"3571824\";\"naso\";\"other\"\n\"3571824\";\"nasso\";\"other\"\n\"3571824\";\"Νασσάου\";\"other\"\n\"3571824\";\"Нассау\";\"other\"\n\"3571824\";\"נסאו\";\"other\"\n\"3571824\";\"ናሶ\";\"other\"\n\"3571824\";\"ナッソー\";\"other\"\n\"3571824\";\"拿骚\";\"other\"\n\"3571824\";\"나소\";\"other\"\n\"3571913\";\"Marsh Harbour\";\"main\"\n\"3571913\";\"Marsh Harbor\";\"other\"\n\"3571971\";\"Lucaya\";\"main\"\n\"3572189\";\"High Rock\";\"main\"\n\"3572189\";\"High Rock Village\";\"other\"\n\"3572189\";\"High Rocks\";\"other\"\n\"3572375\";\"Freeport\";\"main\"\n\"3572375\";\"Freeport City\";\"other\"\n\"3572462\";\"Dunmore Town\";\"main\"\n\"3572462\";\"Harbour Island\";\"other\"\n\"3572601\";\"Cooper’s Town\";\"main\"\n\"3572601\";\"Cooper's Town\";\"ascii\"\n\"3572640\";\"Clarence Town\";\"main\"\n\"3572640\";\"Clarence\";\"other\"\n\"3572906\";\"Andros Town\";\"main\"\n\"3572906\";\"Fresh Creek\";\"other\"\n\"1252408\";\"Tongsa\";\"main\"\n\"1252408\";\"Tongsa Dzong\";\"other\"\n\"1252408\";\"Тонгса\";\"other\"\n\"1252416\";\"Thimphu\";\"main\"\n\"1252416\";\"Thimbu\";\"other\"\n\"1252416\";\"Thimpago\";\"other\"\n\"1252416\";\"Thimphou\";\"other\"\n\"1252416\";\"Thimpu\";\"other\"\n\"1252416\";\"Timbu\";\"other\"\n\"1252416\";\"Timbuo\";\"other\"\n\"1252416\";\"Timphu\";\"other\"\n\"1252416\";\"Timpou (therine) Pounaka (cheimerine)\";\"other\"\n\"1252416\";\"Timpu\";\"other\"\n\"1252416\";\"Tkhimpkhu\";\"other\"\n\"1252416\";\"t'ympw\";\"other\"\n\"1252416\";\"thimphu\";\"other\"\n\"1252416\";\"timbu\";\"other\"\n\"1252416\";\"timpu\";\"other\"\n\"1252416\";\"ting bu\";\"other\"\n\"1252416\";\"tinpu\";\"other\"\n\"1252416\";\"tymfw\";\"other\"\n\"1252416\";\"Τιμπού (θερινή) Πουνάκα (χειμερινή)\";\"other\"\n\"1252416\";\"Тхимпху\";\"other\"\n\"1252416\";\"ת'ימפו\";\"other\"\n\"1252416\";\"تيمفو\";\"other\"\n\"1252416\";\"थिम्फू\";\"other\"\n\"1252416\";\"திம்பு\";\"other\"\n\"1252416\";\"ጢምጱ\";\"other\"\n\"1252416\";\"ティンプー\";\"other\"\n\"1252416\";\"廷布\";\"other\"\n\"1252416\";\"팀부\";\"other\"\n\"1252422\";\"Tashi Yangtse\";\"main\"\n\"1252422\";\"Tashi Tang-tsi Dzong\";\"other\"\n\"1252422\";\"Tashi Yang-tsi Dzong\";\"other\"\n\"1252422\";\"Tashi Yāng-tsi Dzong\";\"other\"\n\"1252422\";\"Tashigang\";\"other\"\n\"1252422\";\"Tashigangtsi\";\"other\"\n\"1252433\";\"Daga\";\"main\"\n\"1252433\";\"Ta-Ga-Na\";\"other\"\n\"1252433\";\"Taga Dzong\";\"other\"\n\"1252484\";\"Phuntsholing\";\"main\"\n\"1252484\";\"Phunchholing\";\"other\"\n\"1252484\";\"Phuntsoling\";\"other\"\n\"1252490\";\"Paro\";\"main\"\n\"1252490\";\"Paro Dzong\";\"other\"\n\"1252490\";\"Rimpung Dzong\";\"other\"\n\"1252490\";\"paro-bhutana\";\"other\"\n\"1252490\";\"Паро\";\"other\"\n\"1252490\";\"पारो-भूटान\";\"other\"\n\"1252495\";\"Pajo\";\"main\"\n\"1252514\";\"Mongar\";\"main\"\n\"1252514\";\"Mongar Dzong\";\"other\"\n\"1252514\";\"Монгар\";\"other\"\n\"1252563\";\"Ha\";\"main\"\n\"1252563\";\"Ha Dzong\";\"other\"\n\"1252578\";\"Gasa\";\"main\"\n\"1252578\";\"Gasa Dzong\";\"other\"\n\"1337356\";\"Panbang\";\"main\"\n\"932960\";\"Werda\";\"main\"\n\"932987\";\"Tshabong\";\"main\"\n\"932987\";\"Tsabong\";\"other\"\n\"932993\";\"Tsau\";\"main\"\n\"933000\";\"Tonota\";\"main\"\n\"933000\";\"Tonoto\";\"other\"\n\"933002\";\"Tobane\";\"main\"\n\"933018\";\"Thamaga\";\"main\"\n\"933030\";\"Tamasane\";\"main\"\n\"933040\";\"Sua\";\"main\"\n\"933077\";\"Shakawe\";\"main\"\n\"933088\";\"Serowe\";\"main\"\n\"933088\";\"Serova\";\"other\"\n\"933088\";\"Серова\";\"other\"\n\"933099\";\"Selebi-Phikwe\";\"main\"\n\"933099\";\"Phikwe\";\"other\"\n\"933099\";\"Pikwe\";\"other\"\n\"933099\";\"Pikwe-Selibe\";\"other\"\n\"933099\";\"Selebi\";\"other\"\n\"933099\";\"Selebi-Pikwe\";\"other\"\n\"933099\";\"Selibe\";\"other\"\n\"933099\";\"Selibe-Phikwe\";\"other\"\n\"933099\";\"Selibe-Pikwe Mine Lease Area\";\"other\"\n\"933102\";\"Sekoma\";\"main\"\n\"933109\";\"Sehithwa\";\"main\"\n\"933109\";\"Sehithwe\";\"other\"\n\"933112\";\"Sefophe\";\"main\"\n\"933117\";\"Sebina\";\"main\"\n\"933137\";\"Ratolo\";\"main\"\n\"933137\";\"Ratholo\";\"other\"\n\"933141\";\"Ramotswa\";\"main\"\n\"933141\";\"Ramoutsa\";\"other\"\n\"933148\";\"Ramakonami\";\"main\"\n\"933151\";\"Rakops\";\"main\"\n\"933151\";\"Bakops\";\"other\"\n\"933151\";\"Tsienyane\";\"other\"\n\"933162\";\"Pilikwe\";\"main\"\n\"933164\";\"Pilane\";\"main\"\n\"933178\";\"Pandamatenga\";\"main\"\n\"933182\";\"Palapye\";\"main\"\n\"933182\";\"Palapaye Road\";\"other\"\n\"933182\";\"Palapye Road\";\"other\"\n\"933182\";\"Palatswe\";\"other\"\n\"933184\";\"Otse\";\"main\"\n\"933184\";\"Ootsi\";\"other\"\n\"933184\";\"Ootsi Siding\";\"other\"\n\"933186\";\"Orapa\";\"main\"\n\"933186\";\"Орапа\";\"other\"\n\"933211\";\"Nokaneng\";\"main\"\n\"933211\";\"Nokanen\";\"other\"\n\"933211\";\"Nokaning\";\"other\"\n\"933238\";\"Nata\";\"main\"\n\"933271\";\"Mosopa\";\"main\"\n\"933271\";\"Moshupa\";\"other\"\n\"933277\";\"Mosetse\";\"main\"\n\"933288\";\"Mopipi\";\"main\"\n\"933290\";\"Mookane\";\"main\"\n\"933292\";\"Monnatlala\";\"main\"\n\"933292\";\"Maunatlala\";\"other\"\n\"933305\";\"Molepolole\";\"main\"\n\"933305\";\"Молепололе\";\"other\"\n\"933313\";\"Mokobeng\";\"main\"\n\"933329\";\"Moijabana\";\"main\"\n\"933329\";\"Moiyabana\";\"other\"\n\"933331\";\"Mogoditshane\";\"main\"\n\"933331\";\"Mogoditsane\";\"other\"\n\"933332\";\"Mogapinyana\";\"main\"\n\"933333\";\"Mogapi\";\"main\"\n\"933340\";\"Mochudi\";\"main\"\n\"933340\";\"Mochudi Village\";\"other\"\n\"933340\";\"Мочуди\";\"other\"\n\"933347\";\"Mmathubudukwane\";\"main\"\n\"933347\";\"Mathobudukwane\";\"other\"\n\"933347\";\"Mathubudukwane\";\"other\"\n\"933347\";\"Mmathubudkwane\";\"other\"\n\"933366\";\"Maun\";\"main\"\n\"933366\";\"Маун\";\"other\"\n\"933377\";\"Matlakola\";\"main\"\n\"933383\";\"Mathathane\";\"main\"\n\"933387\";\"Matangwan\";\"main\"\n\"933387\";\"Matangwan Stad\";\"other\"\n\"933390\";\"Masunga\";\"main\"\n\"933390\";\"Masungas\";\"other\"\n\"933416\";\"Manyana\";\"main\"\n\"933416\";\"Manyane\";\"other\"\n\"933437\";\"Makwata\";\"main\"\n\"933446\";\"Makoba\";\"main\"\n\"933456\";\"Makaleng\";\"main\"\n\"933471\";\"Mahalapye\";\"main\"\n\"933471\";\"Mahalatswe\";\"other\"\n\"933474\";\"Magothla\";\"main\"\n\"933488\";\"Machaneng\";\"main\"\n\"933488\";\"Machenen\";\"other\"\n\"933491\";\"Mabuli\";\"main\"\n\"933498\";\"Maapi\";\"main\"\n\"933510\";\"Lokwabe\";\"main\"\n\"933521\";\"Lobatse\";\"main\"\n\"933521\";\"Lobace\";\"other\"\n\"933521\";\"Lobatsi\";\"other\"\n\"933521\";\"Лобаце\";\"other\"\n\"933534\";\"Letlhakeng\";\"main\"\n\"933534\";\"Letlaking\";\"other\"\n\"933535\";\"Letlhakane\";\"main\"\n\"933535\";\"Lethakane\";\"other\"\n\"933535\";\"Letlhakawe\";\"other\"\n\"933541\";\"Lenchwe Le Tau\";\"main\"\n\"933548\";\"Lehututu\";\"main\"\n\"933555\";\"Lechen\";\"main\"\n\"933573\";\"Kurametsi\";\"main\"\n\"933573\";\"Kudumatsi\";\"other\"\n\"933573\";\"Kurametse\";\"other\"\n\"933596\";\"Kopong\";\"main\"\n\"933596\";\"Kopong Villages\";\"other\"\n\"933633\";\"Khudumelapye\";\"main\"\n\"933633\";\"Kudumalapshwe\";\"other\"\n\"933649\";\"Khakhea\";\"main\"\n\"933677\";\"Kasane\";\"main\"\n\"933685\";\"Kanye\";\"main\"\n\"933692\";\"Kang\";\"main\"\n\"933696\";\"Kalamare\";\"main\"\n\"933719\";\"Janeng\";\"main\"\n\"933726\";\"Hukuntsi\";\"main\"\n\"933734\";\"Gweta\";\"main\"\n\"933753\";\"Gobojango\";\"main\"\n\"933753\";\"Gubujango\";\"other\"\n\"933753\";\"Kobajango\";\"other\"\n\"933753\";\"Kobojango\";\"other\"\n\"933759\";\"Ghanzi\";\"main\"\n\"933759\";\"Khanzi\";\"other\"\n\"933773\";\"Gaborone\";\"main\"\n\"933773\";\"Gaberones\";\"other\"\n\"933773\";\"Gaberones Village\";\"other\"\n\"933773\";\"Gaboronas\";\"other\"\n\"933773\";\"Gaborono\";\"other\"\n\"933773\";\"Nkamporone\";\"other\"\n\"933773\";\"gabolone\";\"other\"\n\"933773\";\"gabwrwn\";\"other\"\n\"933773\";\"gbrwn\";\"other\"\n\"933773\";\"haborone\";\"other\"\n\"933773\";\"jia bai long li\";\"other\"\n\"933773\";\"Γκαμπορόνε\";\"other\"\n\"933773\";\"Габороне\";\"other\"\n\"933773\";\"גאבורון\";\"other\"\n\"933773\";\"گابورون\";\"other\"\n\"933773\";\"گبرون\";\"other\"\n\"933773\";\"ጋበሮኔ\";\"other\"\n\"933773\";\"ጋቦሮን\";\"other\"\n\"933773\";\"ハボローネ\";\"other\"\n\"933773\";\"嘉柏隆里\";\"other\"\n\"933773\";\"가보로네\";\"other\"\n\"933777\";\"Gabane\";\"main\"\n\"933777\";\"Khabane\";\"other\"\n\"933778\";\"Francistown\";\"main\"\n\"933778\";\"Fransistaun\";\"other\"\n\"933778\";\"Франсистаун\";\"other\"\n\"933787\";\"Dutlwe\";\"main\"\n\"933787\";\"Luzwe\";\"other\"\n\"933790\";\"Dukwe\";\"main\"\n\"933790\";\"Dukwe Quarantine Camp\";\"other\"\n\"933815\";\"Dekar\";\"main\"\n\"933862\";\"Botlapatla\";\"main\"\n\"933881\";\"Bokaa\";\"main\"\n\"1106203\";\"Gaphatshwe\";\"main\"\n\"1106206\";\"Metsemotlhaba\";\"main\"\n\"1106213\";\"Mmopone\";\"main\"\n\"1106215\";\"Nkoyaphiri\";\"main\"\n\"611866\";\"Skidel’\";\"main\"\n\"611866\";\"Skidel'\";\"ascii\"\n\"611866\";\"Скидель\";\"other\"\n\"618800\";\"Zhodzina\";\"main\"\n\"618800\";\"Schodsina\";\"other\"\n\"618800\";\"ZHODINO\";\"other\"\n\"618800\";\"Zhodino\";\"other\"\n\"618800\";\"Zodino\";\"other\"\n\"618800\";\"Zodzina\";\"other\"\n\"618800\";\"Żodino\";\"other\"\n\"618800\";\"ЖОДИНО\";\"other\"\n\"618800\";\"Жодзiна\";\"other\"\n\"618800\";\"Жодзіна\";\"other\"\n\"618800\";\"Жодино\";\"other\"\n\"618806\";\"Zhlobin\";\"main\"\n\"618806\";\"Korpilovka\";\"other\"\n\"618806\";\"Zlobin\";\"other\"\n\"618806\";\"Жлобин\";\"other\"\n\"618815\";\"Zhytkavichy\";\"main\"\n\"618815\";\"Jitkovichi\";\"other\"\n\"618815\";\"ZHITKOVICHI\";\"other\"\n\"618815\";\"Zhitkovichi\";\"other\"\n\"618815\";\"Zytkowicze\";\"other\"\n\"618815\";\"Żytkowicze\";\"other\"\n\"618815\";\"ЖИТКОВИЧИ\";\"other\"\n\"618818\";\"Zhirovichi\";\"main\"\n\"618818\";\"Zhirovitsy\";\"other\"\n\"618818\";\"Zhyrovitse\";\"other\"\n\"618818\";\"Zyrowice\";\"other\"\n\"618818\";\"Żyrowice\";\"other\"\n\"618818\";\"Жировичи\";\"other\"\n\"618913\";\"Zhabinka\";\"main\"\n\"618913\";\"Stara Sabinka\";\"other\"\n\"618913\";\"ZHABINKA\";\"other\"\n\"618913\";\"Zabinaa\";\"other\"\n\"618913\";\"Zabinka\";\"other\"\n\"618913\";\"Żabinka\";\"other\"\n\"618913\";\"ЖАБИНКА\";\"other\"\n\"618913\";\"Жабінка\";\"other\"\n\"619066\";\"Zaslawye\";\"main\"\n\"619066\";\"Zaslav\";\"other\"\n\"619066\";\"Zaslavl'\";\"other\"\n\"619066\";\"Zaslavl’\";\"other\"\n\"619066\";\"Заславль\";\"other\"\n\"619818\";\"Vysokaye\";\"main\"\n\"619818\";\"VYSOKOE\";\"other\"\n\"619818\";\"Vysoke-Litevske\";\"other\"\n\"619818\";\"Vysoko-Litovsk\";\"other\"\n\"619818\";\"Vysokoye\";\"other\"\n\"619818\";\"Wysokie Litewski\";\"other\"\n\"619818\";\"Wysokie Litewskie\";\"other\"\n\"619818\";\"Wysokie Litowski\";\"other\"\n\"619818\";\"ВЫСОКОЕ\";\"other\"\n\"619818\";\"Высокае\";\"other\"\n\"620127\";\"Vitsyebsk\";\"main\"\n\"620127\";\"Vicebsk\";\"other\"\n\"620127\";\"Vicebska\";\"other\"\n\"620127\";\"Vicebszk\";\"other\"\n\"620127\";\"Viciebsk\";\"other\"\n\"620127\";\"Vitebsk\";\"other\"\n\"620127\";\"Vitebskas\";\"other\"\n\"620127\";\"Vitsebsk\";\"other\"\n\"620127\";\"Witebsk\";\"other\"\n\"620127\";\"Wizebsk\";\"other\"\n\"620127\";\"bichebseukeu\";\"other\"\n\"620127\";\"vu~ichepusuku\";\"other\"\n\"620127\";\"wei jie bu si ke\";\"other\"\n\"620127\";\"wytbsq\";\"other\"\n\"620127\";\"Витебск\";\"other\"\n\"620127\";\"Вітебськ\";\"other\"\n\"620127\";\"Віцебск\";\"other\"\n\"620127\";\"ויטבסק\";\"other\"\n\"620127\";\"ヴィチェプスク\";\"other\"\n\"620127\";\"维捷布斯克\";\"other\"\n\"620127\";\"비쳅스크\";\"other\"\n\"620146\";\"Vishnevo\";\"main\"\n\"620146\";\"Vishnev\";\"other\"\n\"620146\";\"Wiszniew\";\"other\"\n\"620146\";\"Вишнево\";\"other\"\n\"620181\";\"Vilyeyka\";\"main\"\n\"620181\";\"Vilejka\";\"other\"\n\"620181\";\"Vileyka\";\"other\"\n\"620181\";\"Wilejka\";\"other\"\n\"620181\";\"Вилейка\";\"other\"\n\"620214\";\"Vyetka\";\"main\"\n\"620214\";\"VETKA\";\"other\"\n\"620214\";\"Vetka\";\"other\"\n\"620214\";\"ВЕТКА\";\"other\"\n\"620255\";\"Vyerkhnyadzvinsk\";\"main\"\n\"620255\";\"Drissa\";\"other\"\n\"620255\";\"Dryassa\";\"other\"\n\"620255\";\"Verkhnedvinsk\";\"other\"\n\"620255\";\"Верхнедвинск\";\"other\"\n\"620391\";\"Vawkavysk\";\"main\"\n\"620391\";\"VOLKOVYSK\";\"other\"\n\"620391\";\"Volkovysk\";\"other\"\n\"620391\";\"Wolkowysk\";\"other\"\n\"620391\";\"Wołkowysk\";\"other\"\n\"620391\";\"ВОЛКОВЫСК\";\"other\"\n\"620425\";\"Vasilevichi\";\"main\"\n\"620425\";\"VASILEVICHI\";\"other\"\n\"620425\";\"Vasilevichy\";\"other\"\n\"620425\";\"ВАСИЛЕВИЧИ\";\"other\"\n\"620445\";\"Valozhyn\";\"main\"\n\"620445\";\"VOLOZHIN\";\"other\"\n\"620445\";\"Volozhin\";\"other\"\n\"620445\";\"Volozhy'n\";\"other\"\n\"620445\";\"Volozhy’n\";\"other\"\n\"620445\";\"Wolozyn\";\"other\"\n\"620445\";\"Wołożyn\";\"other\"\n\"620445\";\"ВОЛОЖИН\";\"other\"\n\"620676\";\"Turov\";\"main\"\n\"620676\";\"Turow\";\"other\"\n\"620676\";\"Туров\";\"other\"\n\"620833\";\"Talachyn\";\"main\"\n\"620833\";\"Tolochin\";\"other\"\n\"620833\";\"Tolochino\";\"other\"\n\"621058\";\"Svir’\";\"main\"\n\"621058\";\"Svir'\";\"ascii\"\n\"621058\";\"Swir\";\"other\"\n\"621058\";\"Świr\";\"other\"\n\"621058\";\"Свирь\";\"other\"\n\"621074\";\"Svyetlahorsk\";\"main\"\n\"621074\";\"SVETLOGORSK\";\"other\"\n\"621074\";\"Shatilki\";\"other\"\n\"621074\";\"Shatsilki\";\"other\"\n\"621074\";\"Svetlogorsk\";\"other\"\n\"621074\";\"СВЕТЛОГОРСК\";\"other\"\n\"621266\";\"Stowbtsy\";\"main\"\n\"621266\";\"Stolbcy\";\"other\"\n\"621266\";\"Stolbtsy\";\"other\"\n\"621266\";\"Stolpce\";\"other\"\n\"621266\";\"Stolptse\";\"other\"\n\"621266\";\"Stolptsy\";\"other\"\n\"621266\";\"Stolpze\";\"other\"\n\"621266\";\"Stołpce\";\"other\"\n\"621266\";\"Столбцы\";\"other\"\n\"621277\";\"Stolin\";\"main\"\n\"621277\";\"Столин\";\"other\"\n\"621277\";\"Столін\";\"other\"\n\"621396\";\"Staryya Darohi\";\"main\"\n\"621396\";\"STARYE DOROGI\";\"other\"\n\"621396\";\"Starye Dorogi\";\"other\"\n\"621396\";\"Staryye Dorogi\";\"other\"\n\"621396\";\"СТАРЫЕ ДОРОГИ\";\"other\"\n\"621462\";\"Starobin\";\"main\"\n\"621462\";\"Starobino\";\"other\"\n\"621462\";\"Старобин\";\"other\"\n\"621713\";\"Smarhon’\";\"main\"\n\"621713\";\"Smarhon'\";\"ascii\"\n\"621713\";\"Smorgon'\";\"other\"\n\"621713\";\"Smorgone\";\"other\"\n\"621713\";\"Smorgonie\";\"other\"\n\"621713\";\"Smorgon’\";\"other\"\n\"621713\";\"Сморгонь\";\"other\"\n\"621729\";\"Smalyavichy\";\"main\"\n\"621729\";\"SMOLEVICHI\";\"other\"\n\"621729\";\"Smolevichi\";\"other\"\n\"621729\";\"Smolewitsch\";\"other\"\n\"621729\";\"СМОЛЕВИЧИ\";\"other\"\n\"621732\";\"Smilovichi\";\"main\"\n\"621732\";\"Смиловичи\";\"other\"\n\"621741\";\"Slutsk\";\"main\"\n\"621741\";\"SLUCK\";\"other\"\n\"621741\";\"Slucak\";\"other\"\n\"621741\";\"Sluck\";\"other\"\n\"621741\";\"Sluckas\";\"other\"\n\"621741\";\"Sluzk\";\"other\"\n\"621741\";\"Słuck\";\"other\"\n\"621741\";\"slwzq\";\"other\"\n\"621741\";\"СЛУЦК\";\"other\"\n\"621741\";\"Слуцак\";\"other\"\n\"621741\";\"Слуцк\";\"other\"\n\"621741\";\"סלוצק\";\"other\"\n\"621754\";\"Slonim\";\"main\"\n\"621754\";\"SLONIM\";\"other\"\n\"621754\";\"Slonimas\";\"other\"\n\"621754\";\"Słonim\";\"other\"\n\"621754\";\"seullonim\";\"other\"\n\"621754\";\"suronimu\";\"other\"\n\"621754\";\"СЛОНИМ\";\"other\"\n\"621754\";\"Слоним\";\"other\"\n\"621754\";\"Слонім\";\"other\"\n\"621754\";\"スロニム\";\"other\"\n\"621754\";\"슬로님\";\"other\"\n\"621838\";\"Slawharad\";\"main\"\n\"621838\";\"Propoisk\";\"other\"\n\"621838\";\"Propoysk\";\"other\"\n\"621838\";\"SLAVGOROD\";\"other\"\n\"621838\";\"Slavgorod\";\"other\"\n\"621838\";\"СЛАВГОРОД\";\"other\"\n\"622034\";\"Shklow\";\"main\"\n\"622034\";\"SHKLOV\";\"other\"\n\"622034\";\"Shklov\";\"other\"\n\"622034\";\"ШКЛОВ\";\"other\"\n\"622113\";\"Shchuchyn\";\"main\"\n\"622113\";\"Shchuchin\";\"other\"\n\"622113\";\"Shhuchin\";\"other\"\n\"622113\";\"Szczuczyn\";\"other\"\n\"622113\";\"Щучин\";\"other\"\n\"622179\";\"Sharkowshchyna\";\"main\"\n\"622179\";\"Sharkovshchina\";\"other\"\n\"622179\";\"Sharkovshchizna\";\"other\"\n\"622179\";\"Sharkovshchyzna\";\"other\"\n\"622179\";\"Sharkovshhina\";\"other\"\n\"622179\";\"Szarkowszczyzna\";\"other\"\n\"622179\";\"Шарковщина\";\"other\"\n\"622258\";\"Syanno\";\"main\"\n\"622258\";\"SENNO\";\"other\"\n\"622258\";\"Senno\";\"other\"\n\"622258\";\"Syenno\";\"other\"\n\"622258\";\"СЕННО\";\"other\"\n\"622428\";\"Salihorsk\";\"main\"\n\"622428\";\"Chizhevichi\";\"other\"\n\"622428\";\"SOLIGORSK\";\"other\"\n\"622428\";\"Saligorsk\";\"other\"\n\"622428\";\"Salyhorsk\";\"other\"\n\"622428\";\"Soligorsk\";\"other\"\n\"622428\";\"Soligorskas\";\"other\"\n\"622428\";\"СОЛИГОРСК\";\"other\"\n\"622428\";\"Салігорск\";\"other\"\n\"622428\";\"Солигорск\";\"other\"\n\"622614\";\"Rudensk\";\"main\"\n\"622614\";\"Руденск\";\"other\"\n\"622700\";\"Ros’\";\"main\"\n\"622700\";\"Ros'\";\"ascii\"\n\"622700\";\"Ross'\";\"other\"\n\"622700\";\"Ross’\";\"other\"\n\"622700\";\"Россь\";\"other\"\n\"622739\";\"Rahachow\";\"main\"\n\"622739\";\"Rogachev\";\"other\"\n\"622739\";\"Rogatschew\";\"other\"\n\"622739\";\"Рогачев\";\"other\"\n\"622794\";\"Rechytsa\";\"main\"\n\"622794\";\"Rechica\";\"other\"\n\"622794\";\"Rechitsa\";\"other\"\n\"622794\";\"Rechysta\";\"other\"\n\"622794\";\"Ryechitsa\";\"other\"\n\"622794\";\"Речица\";\"other\"\n\"622849\";\"Rakov\";\"main\"\n\"622849\";\"Rakow\";\"other\"\n\"622849\";\"Rakuv\";\"other\"\n\"622849\";\"Raków\";\"other\"\n\"622849\";\"Раков\";\"other\"\n\"622997\";\"Pruzhany\";\"main\"\n\"622997\";\"PRUZHANY\";\"other\"\n\"622997\";\"Pruzana\";\"other\"\n\"622997\";\"Pruzhana\";\"other\"\n\"622997\";\"ПРУЖАНЫ\";\"other\"\n\"622997\";\"Пружаны\";\"other\"\n\"623317\";\"Polatsk\";\"main\"\n\"623317\";\"POLOCK\";\"other\"\n\"623317\";\"Podolsk\";\"other\"\n\"623317\";\"Polacak\";\"other\"\n\"623317\";\"Polack\";\"other\"\n\"623317\";\"Polazk\";\"other\"\n\"623317\";\"Poloc'k\";\"other\"\n\"623317\";\"Polock\";\"other\"\n\"623317\";\"Polockas\";\"other\"\n\"623317\";\"Polotsk\";\"other\"\n\"623317\";\"Polozk\";\"other\"\n\"623317\";\"Potolsk\";\"other\"\n\"623317\";\"Połock\";\"other\"\n\"623317\";\"ПОЛОЦК\";\"other\"\n\"623317\";\"Полацак\";\"other\"\n\"623317\";\"Полоцк\";\"other\"\n\"623317\";\"Полоцьк\";\"other\"\n\"623512\";\"Pleshchenitsy\";\"main\"\n\"623512\";\"Pleshchanitsy\";\"other\"\n\"623512\";\"Pleshchenitsa\";\"other\"\n\"623512\";\"Pleshhenicy\";\"other\"\n\"623512\";\"Плещеницы\";\"other\"\n\"623549\";\"Pinsk\";\"main\"\n\"623549\";\"PINSK\";\"other\"\n\"623549\";\"Pinskas\";\"other\"\n\"623549\";\"Pińsk\";\"other\"\n\"623549\";\"pinseukeu\";\"other\"\n\"623549\";\"pinsuku\";\"other\"\n\"623549\";\"pynsq\";\"other\"\n\"623549\";\"ПИНСК\";\"other\"\n\"623549\";\"Пинск\";\"other\"\n\"623549\";\"Пінск\";\"other\"\n\"623549\";\"Пінськ\";\"other\"\n\"623549\";\"פינסק\";\"other\"\n\"623549\";\"ピンスク\";\"other\"\n\"623549\";\"핀스크\";\"other\"\n\"623581\";\"Pyetrykaw\";\"main\"\n\"623581\";\"PETRIKOV\";\"other\"\n\"623581\";\"Petrikov\";\"other\"\n\"623581\";\"Petrikovo\";\"other\"\n\"623581\";\"ПЕТРИКОВ\";\"other\"\n\"623760\";\"Pastavy\";\"main\"\n\"623760\";\"POSTAVY\";\"other\"\n\"623760\";\"Postavy\";\"other\"\n\"623760\";\"Postawy\";\"other\"\n\"623760\";\"ПОСТАВЫ\";\"other\"\n\"624034\";\"Asipovichy\";\"main\"\n\"624034\";\"OSIPOVICHI\";\"other\"\n\"624034\";\"Osipovichi\";\"other\"\n\"624034\";\"Ospipovichi\";\"other\"\n\"624034\";\"Ossipowitschi\";\"other\"\n\"624034\";\"Sipovichi\";\"other\"\n\"624034\";\"ОСИПОВИЧИ\";\"other\"\n\"624079\";\"Orsha\";\"main\"\n\"624079\";\"ORSHA\";\"other\"\n\"624079\";\"Orsa\";\"other\"\n\"624079\";\"Orscha\";\"other\"\n\"624079\";\"Orsza\";\"other\"\n\"624079\";\"Orŝa\";\"other\"\n\"624079\";\"Orša\";\"other\"\n\"624079\";\"Vorsja\";\"other\"\n\"624079\";\"ao er sha\";\"other\"\n\"624079\";\"boleusya\";\"other\"\n\"624079\";\"vu~orusha\";\"other\"\n\"624079\";\"ОРША\";\"other\"\n\"624079\";\"Орша\";\"other\"\n\"624079\";\"ヴォルシャ\";\"other\"\n\"624079\";\"奥尔沙\";\"other\"\n\"624079\";\"보르샤\";\"other\"\n\"624700\";\"Nyasvizh\";\"main\"\n\"624700\";\"NESVIZH\";\"other\"\n\"624700\";\"Nes'vezh\";\"other\"\n\"624700\";\"Nesvizh\";\"other\"\n\"624700\";\"Nesvyzius\";\"other\"\n\"624700\";\"Nesvyžius\";\"other\"\n\"624700\";\"Nes’vezh\";\"other\"\n\"624700\";\"Niasvizh\";\"other\"\n\"624700\";\"Nieswiez\";\"other\"\n\"624700\";\"Nieśwież\";\"other\"\n\"624700\";\"Njasviz\";\"other\"\n\"624700\";\"Njasviž\";\"other\"\n\"624700\";\"Njaswisch\";\"other\"\n\"624700\";\"Nyaszvizs\";\"other\"\n\"624700\";\"НЕСВИЖ\";\"other\"\n\"624700\";\"Несвиж\";\"other\"\n\"624700\";\"Нясьвіж\";\"other\"\n\"624784\";\"Navapolatsk\";\"main\"\n\"624784\";\"Navapolack\";\"other\"\n\"624784\";\"Navapólatsk\";\"other\"\n\"624784\";\"Nawapolazk\";\"other\"\n\"624784\";\"Novopolock\";\"other\"\n\"624784\";\"Novopolockas\";\"other\"\n\"624784\";\"Novopolotsk\";\"other\"\n\"624784\";\"Nowopolock\";\"other\"\n\"624784\";\"Nowopołock\";\"other\"\n\"624784\";\"Polotskiy\";\"other\"\n\"624784\";\"Наваполацк\";\"other\"\n\"624784\";\"Новополоцк\";\"other\"\n\"624785\";\"Navahrudak\";\"main\"\n\"624785\";\"NOVOGRUDOK\";\"other\"\n\"624785\";\"Naugardukas\";\"other\"\n\"624785\";\"Navagradak\";\"other\"\n\"624785\";\"Navahradak\";\"other\"\n\"624785\";\"Nawahradak\";\"other\"\n\"624785\";\"Novogroudok\";\"other\"\n\"624785\";\"Novogrudek\";\"other\"\n\"624785\";\"Novogrudok\";\"other\"\n\"624785\";\"Nowogrodek\";\"other\"\n\"624785\";\"Nowogródek\";\"other\"\n\"624785\";\"nbhrdq\";\"other\"\n\"624785\";\"xin ge lu duo ke\";\"other\"\n\"624785\";\"НОВОГРУДОК\";\"other\"\n\"624785\";\"Наваградак\";\"other\"\n\"624785\";\"Новогрудок\";\"other\"\n\"624785\";\"נבהרדק\";\"other\"\n\"624785\";\"新格鲁多克\";\"other\"\n\"624805\";\"Naroch’\";\"main\"\n\"624805\";\"Naroch'\";\"ascii\"\n\"624805\";\"Narocz\";\"other\"\n\"624805\";\"Нарочь\";\"other\"\n\"624861\";\"Myadzyel\";\"main\"\n\"624861\";\"Mjadel'\";\"other\"\n\"624861\";\"Myadel'\";\"other\"\n\"624861\";\"Myadel’\";\"other\"\n\"624861\";\"Мядель\";\"other\"\n\"624889\";\"Mstsislaw\";\"main\"\n\"624889\";\"Mstislavl'\";\"other\"\n\"624889\";\"Mstislavl’\";\"other\"\n\"624889\";\"Мстиславль\";\"other\"\n\"624965\";\"Mosar’\";\"main\"\n\"624965\";\"Mosar'\";\"ascii\"\n\"624965\";\"Mosar\";\"other\"\n\"624965\";\"Mosary\";\"other\"\n\"624965\";\"Mosarz\";\"other\"\n\"624965\";\"Mosazh\";\"other\"\n\"624965\";\"Мосар\";\"other\"\n\"625128\";\"Mir\";\"main\"\n\"625128\";\"Мир\";\"other\"\n\"625130\";\"Miyory\";\"main\"\n\"625130\";\"MIORY\";\"other\"\n\"625130\";\"Mery\";\"other\"\n\"625130\";\"Miory\";\"other\"\n\"625130\";\"МИОРЫ\";\"other\"\n\"625144\";\"Minsk\";\"main\"\n\"625144\";\"Mensk\";\"other\"\n\"625144\";\"Minsc\";\"other\"\n\"625144\";\"Minscum\";\"other\"\n\"625144\";\"Minsk - Minsk\";\"other\"\n\"625144\";\"Minsk - Мінск\";\"other\"\n\"625144\";\"Minska\";\"other\"\n\"625144\";\"Minskas\";\"other\"\n\"625144\";\"Minsko\";\"other\"\n\"625144\";\"Minszk\";\"other\"\n\"625144\";\"Mińsk\";\"other\"\n\"625144\";\"Myensk\";\"other\"\n\"625144\";\"Myenyesk\";\"other\"\n\"625144\";\"ming si ke\";\"other\"\n\"625144\";\"ming si ke shi\";\"other\"\n\"625144\";\"minseukeu\";\"other\"\n\"625144\";\"minsuku\";\"other\"\n\"625144\";\"mynsk\";\"other\"\n\"625144\";\"mynsq\";\"other\"\n\"625144\";\"Μινσκ\";\"other\"\n\"625144\";\"Менск\";\"other\"\n\"625144\";\"Минск\";\"other\"\n\"625144\";\"Мінськ\";\"other\"\n\"625144\";\"מינסק\";\"other\"\n\"625144\";\"مينسك\";\"other\"\n\"625144\";\"مینسک\";\"other\"\n\"625144\";\"მინსკი\";\"other\"\n\"625144\";\"ミンスク\";\"other\"\n\"625144\";\"明斯克\";\"other\"\n\"625144\";\"明斯克市\";\"other\"\n\"625144\";\"민스크\";\"other\"\n\"625324\";\"Mazyr\";\"main\"\n\"625324\";\"MOZYR'\";\"other\"\n\"625324\";\"Masyr\";\"other\"\n\"625324\";\"Mazir\";\"other\"\n\"625324\";\"Mozir\";\"other\"\n\"625324\";\"Mozyr\";\"other\"\n\"625324\";\"Mozyr'\";\"other\"\n\"625324\";\"Mozyr’\";\"other\"\n\"625324\";\"МОЗЫРЬ\";\"other\"\n\"625324\";\"Мазыр\";\"other\"\n\"625324\";\"Мозир\";\"other\"\n\"625324\";\"Мозырь\";\"other\"\n\"625367\";\"Masty\";\"main\"\n\"625367\";\"MOSTY\";\"other\"\n\"625367\";\"Mosty\";\"other\"\n\"625367\";\"МОСТЫ\";\"other\"\n\"625409\";\"Mar’’ina Horka\";\"main\"\n\"625409\";\"Mar''ina Horka\";\"ascii\"\n\"625409\";\"Mar'ina Gorka\";\"other\"\n\"625409\";\"Maryina Gorka\";\"other\"\n\"625409\";\"Mar’ina Gorka\";\"other\"\n\"625409\";\"Марьина Горка\";\"other\"\n\"625539\";\"Malaryta\";\"main\"\n\"625539\";\"Malorita\";\"other\"\n\"625539\";\"Maloryta\";\"other\"\n\"625539\";\"Маларыта\";\"other\"\n\"625625\";\"Maladzyechna\";\"main\"\n\"625625\";\"Molodechno\";\"other\"\n\"625625\";\"Molodeczno\";\"other\"\n\"625625\";\"Молодечно\";\"other\"\n\"625665\";\"Mahilyow\";\"main\"\n\"625665\";\"Magileu\";\"other\"\n\"625665\";\"Magileva\";\"other\"\n\"625665\";\"Magiļeva\";\"other\"\n\"625665\";\"Maguilov\";\"other\"\n\"625665\";\"Mahiliou\";\"other\"\n\"625665\";\"Mahilioŭ\";\"other\"\n\"625665\";\"Mahiljou\";\"other\"\n\"625665\";\"Mahiljov\";\"other\"\n\"625665\";\"Mahiljow\";\"other\"\n\"625665\";\"Mahiljoŭ\";\"other\"\n\"625665\";\"Mahilou\";\"other\"\n\"625665\";\"Mahiloŭ\";\"other\"\n\"625665\";\"Mogil'ov\";\"other\"\n\"625665\";\"Mogilev\";\"other\"\n\"625665\";\"Mogilew\";\"other\"\n\"625665\";\"Mogiliavas\";\"other\"\n\"625665\";\"Mogiliovas\";\"other\"\n\"625665\";\"Mogiljov\";\"other\"\n\"625665\";\"Moguilev\";\"other\"\n\"625665\";\"Mohylew\";\"other\"\n\"625665\";\"Магілёў\";\"other\"\n\"625665\";\"Могилев\";\"other\"\n\"625665\";\"Могильов\";\"other\"\n\"625665\";\"Могилёв\";\"other\"\n\"625665\";\"Могиљев\";\"other\"\n\"625721\";\"Lyuban’\";\"main\"\n\"625721\";\"Lyuban'\";\"ascii\"\n\"625721\";\"LJUBAN'\";\"other\"\n\"625721\";\"Luban\";\"other\"\n\"625721\";\"ЛЮБАНЬ\";\"other\"\n\"625743\";\"Lyepyel’\";\"main\"\n\"625743\";\"Lyepyel'\";\"ascii\"\n\"625743\";\"Lepel'\";\"other\"\n\"625743\";\"Lepel’\";\"other\"\n\"625743\";\"Лепель\";\"other\"\n\"625818\";\"Luninyets\";\"main\"\n\"625818\";\"Luninec\";\"other\"\n\"625818\";\"Luninets\";\"other\"\n\"625818\";\"Luniniec\";\"other\"\n\"625818\";\"Luniniez\";\"other\"\n\"625818\";\"Łuniniec\";\"other\"\n\"625818\";\"Лунинец\";\"other\"\n\"625818\";\"Лунінец\";\"other\"\n\"625972\";\"Lahoysk\";\"main\"\n\"625972\";\"Logojsk\";\"other\"\n\"625972\";\"Logoysk\";\"other\"\n\"625972\";\"Логойск\";\"other\"\n\"626081\";\"Lida\";\"main\"\n\"626081\";\"LIDA\";\"other\"\n\"626081\";\"Lieda\";\"other\"\n\"626081\";\"Lyda\";\"other\"\n\"626081\";\"ЛИДА\";\"other\"\n\"626081\";\"Лида\";\"other\"\n\"626081\";\"Ліда\";\"other\"\n\"626450\";\"Krychaw\";\"main\"\n\"626450\";\"KRICHEV\";\"other\"\n\"626450\";\"Krichev\";\"other\"\n\"626450\";\"Krichëv\";\"other\"\n\"626450\";\"Krytchev\";\"other\"\n\"626450\";\"КРИЧЕВ\";\"other\"\n\"626548\";\"Krevo\";\"main\"\n\"626548\";\"Krewo\";\"other\"\n\"626548\";\"Крево\";\"other\"\n\"626621\";\"Krasnosel’skiy\";\"main\"\n\"626621\";\"Krasnosel'skiy\";\"ascii\"\n\"626621\";\"Krasne Selo\";\"other\"\n\"626621\";\"Krasnosel'skij\";\"other\"\n\"626621\";\"Krasnoye Selo\";\"other\"\n\"626621\";\"Красносельский\";\"other\"\n\"626806\";\"Kostyukovka\";\"main\"\n\"626806\";\"KOSTJUKOVKA\";\"other\"\n\"626806\";\"Kastsyukowka\";\"other\"\n\"626806\";\"Kostjubowka\";\"other\"\n\"626806\";\"КОСТЮКОВКА\";\"other\"\n\"626808\";\"Kastsyukovichy\";\"main\"\n\"626808\";\"KOSTJUKOVICHI\";\"other\"\n\"626808\";\"Kommunary\";\"other\"\n\"626808\";\"Kostokovya\";\"other\"\n\"626808\";\"Kostyukovichi\";\"other\"\n\"626808\";\"КОСТЮКОВИЧИ\";\"other\"\n\"626829\";\"Kosava\";\"main\"\n\"626829\";\"KOSSOVO\";\"other\"\n\"626829\";\"Kosov\";\"other\"\n\"626829\";\"Kosow\";\"other\"\n\"626829\";\"Kossov\";\"other\"\n\"626829\";\"Kossovo\";\"other\"\n\"626829\";\"Kossow\";\"other\"\n\"626829\";\"Kossuv\";\"other\"\n\"626829\";\"Kosów\";\"other\"\n\"626829\";\"КОССОВО\";\"other\"\n\"626829\";\"Косава\";\"other\"\n\"626939\";\"Karelichy\";\"main\"\n\"626939\";\"KORELICHI\";\"other\"\n\"626939\";\"Korelichi\";\"other\"\n\"626939\";\"Korelicze\";\"other\"\n\"626939\";\"КОРЕЛИЧИ\";\"other\"\n\"626992\";\"Konstantinovo\";\"main\"\n\"626992\";\"Константиново\";\"other\"\n\"627145\";\"Kobryn\";\"main\"\n\"627145\";\"KOBRIN\";\"other\"\n\"627145\";\"Kobrin\";\"other\"\n\"627145\";\"КОБРИН\";\"other\"\n\"627145\";\"Кобрын\";\"other\"\n\"627202\";\"Klimavichy\";\"main\"\n\"627202\";\"KLIMOVICHI\";\"other\"\n\"627202\";\"Klimovichi\";\"other\"\n\"627202\";\"Klimowitschi\";\"other\"\n\"627202\";\"КЛИМОВИЧИ\";\"other\"\n\"627214\";\"Klyetsk\";\"main\"\n\"627214\";\"KLECK\";\"other\"\n\"627214\";\"Kleck\";\"other\"\n\"627214\";\"Kletsk\";\"other\"\n\"627214\";\"КЛЕЦК\";\"other\"\n\"627362\";\"Khoyniki\";\"main\"\n\"627362\";\"Choiniki\";\"other\"\n\"627362\";\"Khojniki\";\"other\"\n\"627362\";\"Khoynki\";\"other\"\n\"627362\";\"Хойники\";\"other\"\n\"627711\";\"Kamyanyets\";\"main\"\n\"627711\";\"Kamenec\";\"other\"\n\"627711\";\"Kamenets\";\"other\"\n\"627711\";\"Kamenets-Litevske\";\"other\"\n\"627711\";\"Kamenets-Litevski\";\"other\"\n\"627711\";\"Kamenets-Litovsk\";\"other\"\n\"627711\";\"Kamenets-Litovskiy\";\"other\"\n\"627711\";\"Kamieniec Litewski\";\"other\"\n\"627711\";\"Kmenets-Litovskiy\";\"other\"\n\"627711\";\"Каменец\";\"other\"\n\"627711\";\"Камянец\";\"other\"\n\"627751\";\"Kalinkavichy\";\"main\"\n\"627751\";\"KALINKOVICHI\";\"other\"\n\"627751\";\"Kalinkovichi\";\"other\"\n\"627751\";\"Kalinkowitschi\";\"other\"\n\"627751\";\"КАЛИНКОВИЧИ\";\"other\"\n\"627793\";\"Iwye\";\"main\"\n\"627793\";\"Iv'e\";\"other\"\n\"627793\";\"Iv'ye\";\"other\"\n\"627793\";\"Iv’ye\";\"other\"\n\"627793\";\"Iwie\";\"other\"\n\"627793\";\"Iwje\";\"other\"\n\"627793\";\"Ивье\";\"other\"\n\"627798\";\"Ivenets\";\"main\"\n\"627798\";\"Ivenec\";\"other\"\n\"627798\";\"Iwienjec\";\"other\"\n\"627798\";\"Ивенец\";\"other\"\n\"627800\";\"Ivatsevichy\";\"main\"\n\"627800\";\"Fol'vark Ivatseviche\";\"other\"\n\"627800\";\"Fol’vark Ivatseviche\";\"other\"\n\"627800\";\"Ivacevichi\";\"other\"\n\"627800\";\"Ivantsevichi\";\"other\"\n\"627800\";\"Ivatsevichi\";\"other\"\n\"627800\";\"Iwacewicze\";\"other\"\n\"627800\";\"Twacewicze\";\"other\"\n\"627800\";\"Івацэвічы\";\"other\"\n\"627800\";\"Ивацевичи\";\"other\"\n\"627811\";\"Ivanava\";\"main\"\n\"627811\";\"IVANOVO\";\"other\"\n\"627811\";\"Ivanovo\";\"other\"\n\"627811\";\"Janow\";\"other\"\n\"627811\";\"Janów\";\"other\"\n\"627811\";\"Yanov\";\"other\"\n\"627811\";\"Yanuv\";\"other\"\n\"627811\";\"Іванава\";\"other\"\n\"627811\";\"ИВАНОВО\";\"other\"\n\"627904\";\"Hrodna\";\"main\"\n\"627904\";\"GRODNO\";\"other\"\n\"627904\";\"Gardinas\";\"other\"\n\"627904\";\"Goradnia\";\"other\"\n\"627904\";\"Goradnja\";\"other\"\n\"627904\";\"Grodna\";\"other\"\n\"627904\";\"Grodno\";\"other\"\n\"627904\";\"furodona\";\"other\"\n\"627904\";\"hwrdnh\";\"other\"\n\"627904\";\"ГРОДНО\";\"other\"\n\"627904\";\"Горадня\";\"other\"\n\"627904\";\"Гродно\";\"other\"\n\"627904\";\"הורדנה\";\"other\"\n\"627904\";\"フロドナ\";\"other\"\n\"627905\";\"Horki\";\"main\"\n\"627905\";\"GORKI\";\"other\"\n\"627905\";\"Gorki\";\"other\"\n\"627905\";\"ГОРКИ\";\"other\"\n\"627907\";\"Homyel’\";\"main\"\n\"627907\";\"Homyel'\";\"ascii\"\n\"627907\";\"GOMEL'\";\"other\"\n\"627907\";\"Gomel\";\"other\"\n\"627907\";\"Gomel'\";\"other\"\n\"627907\";\"Gomela\";\"other\"\n\"627907\";\"Gomelis\";\"other\"\n\"627907\";\"Gomel’\";\"other\"\n\"627907\";\"Gomeļa\";\"other\"\n\"627907\";\"Homel\";\"other\"\n\"627907\";\"Homiel\";\"other\"\n\"627907\";\"Homyel\";\"other\"\n\"627907\";\"homeri\";\"other\"\n\"627907\";\"homyel\";\"other\"\n\"627907\";\"hwml\";\"other\"\n\"627907\";\"ГОМЕЛЬ\";\"other\"\n\"627907\";\"Гомел\";\"other\"\n\"627907\";\"Гомель\";\"other\"\n\"627907\";\"הומל\";\"other\"\n\"627907\";\"ホメリ\";\"other\"\n\"627907\";\"호몔\";\"other\"\n\"627908\";\"Hlybokaye\";\"main\"\n\"627908\";\"Glebokie\";\"other\"\n\"627908\";\"Glenboke\";\"other\"\n\"627908\";\"Glubokoe\";\"other\"\n\"627908\";\"Glubokoye\";\"other\"\n\"627908\";\"Glębokie\";\"other\"\n\"627908\";\"Глубокое\";\"other\"\n\"628155\";\"Haradok\";\"main\"\n\"628155\";\"GORODOK\";\"other\"\n\"628155\";\"Gorodok\";\"other\"\n\"628155\";\"ГОРОДОК\";\"other\"\n\"628317\";\"Gol’shany\";\"main\"\n\"628317\";\"Gol'shany\";\"ascii\"\n\"628317\";\"Holszany\";\"other\"\n\"628317\";\"Ol'shany\";\"other\"\n\"628317\";\"Ol’shany\";\"other\"\n\"628317\";\"Гольшаны\";\"other\"\n\"628634\";\"Dzyarzhynsk\";\"main\"\n\"628634\";\"DZERZHINSK\";\"other\"\n\"628634\";\"Dsjarschynsk\";\"other\"\n\"628634\";\"Dzerjinsk\";\"other\"\n\"628634\";\"Dzerzhinsk\";\"other\"\n\"628634\";\"Dzerzinskas\";\"other\"\n\"628634\";\"Dzerĵinsk\";\"other\"\n\"628634\";\"Dzeržinskas\";\"other\"\n\"628634\";\"Dzierzynsk\";\"other\"\n\"628634\";\"Dzierżynsk\";\"other\"\n\"628634\";\"Dzjarzsinszk\";\"other\"\n\"628634\";\"Kaiden\";\"other\"\n\"628634\";\"Kaydanovo\";\"other\"\n\"628634\";\"Kojdanau\";\"other\"\n\"628634\";\"Koydanava\";\"other\"\n\"628634\";\"Koydanovo\";\"other\"\n\"628634\";\"ДЗЕРЖИНСК\";\"other\"\n\"628634\";\"Дзержинск\";\"other\"\n\"628634\";\"Койданаў\";\"other\"\n\"628658\";\"Dzyatlava\";\"main\"\n\"628658\";\"DJATLOVO\";\"other\"\n\"628658\";\"Dyatlovo\";\"other\"\n\"628658\";\"Dzentsel\";\"other\"\n\"628658\";\"Zdzentsyul\";\"other\"\n\"628658\";\"Zdzieciol\";\"other\"\n\"628658\";\"Zdzięcioł\";\"other\"\n\"628658\";\"ДЯТЛОВО\";\"other\"\n\"628865\";\"Drybin\";\"main\"\n\"628865\";\"Dribin\";\"other\"\n\"628865\";\"Staryy Dribin\";\"other\"\n\"628865\";\"Дрибин\";\"other\"\n\"628871\";\"Druya\";\"main\"\n\"628871\";\"Druja\";\"other\"\n\"628871\";\"Друя\";\"other\"\n\"628884\";\"Drahichyn\";\"main\"\n\"628884\";\"DROGICHIN\";\"other\"\n\"628884\";\"Drogichin\";\"other\"\n\"628884\";\"Drohiczyn\";\"other\"\n\"628884\";\"ДРОГИЧИН\";\"other\"\n\"628884\";\"Драгічын\";\"other\"\n\"629002\";\"Dokshytsy\";\"main\"\n\"629002\";\"DOKSHICY\";\"other\"\n\"629002\";\"Dokshitsy\";\"other\"\n\"629002\";\"Dokshytse\";\"other\"\n\"629002\";\"Dokszyce\";\"other\"\n\"629002\";\"ДОКШИЦЫ\";\"other\"\n\"629018\";\"Dobrush\";\"main\"\n\"629018\";\"DOBRUSH\";\"other\"\n\"629018\";\"ДОБРУШ\";\"other\"\n\"629055\";\"Disna\";\"main\"\n\"629055\";\"DISNA\";\"other\"\n\"629055\";\"Dzisna\";\"other\"\n\"629055\";\"ДИСНА\";\"other\"\n\"629159\";\"Davyd-Haradok\";\"main\"\n\"629159\";\"David-Gorodok\";\"other\"\n\"629159\";\"Davidgrodek\";\"other\"\n\"629159\";\"Dawid-Grodek\";\"other\"\n\"629159\";\"Dawid-Gródek\";\"other\"\n\"629159\";\"Dawidgrodek\";\"other\"\n\"629159\";\"Dawidgródek\";\"other\"\n\"629159\";\"Давид-Городок\";\"other\"\n\"629159\";\"Давыд-Гарадок\";\"other\"\n\"629273\";\"Chervyen’\";\"main\"\n\"629273\";\"Chervyen'\";\"ascii\"\n\"629273\";\"Cherven'\";\"other\"\n\"629273\";\"Cherven’\";\"other\"\n\"629273\";\"Igumen\";\"other\"\n\"629273\";\"Tscherwen\";\"other\"\n\"629273\";\"Червень\";\"other\"\n\"629347\";\"Cherykaw\";\"main\"\n\"629347\";\"CHERIKOV\";\"other\"\n\"629347\";\"Cherikov\";\"other\"\n\"629347\";\"Tscherikow\";\"other\"\n\"629347\";\"ЧЕРИКОВ\";\"other\"\n\"629395\";\"Chavusi\";\"main\"\n\"629395\";\"CHAUSY\";\"other\"\n\"629395\";\"Chausi\";\"other\"\n\"629395\";\"Chausy\";\"other\"\n\"629395\";\"ЧАУСЫ\";\"other\"\n\"629400\";\"Chashniki\";\"main\"\n\"629400\";\"CHASHNIKI\";\"other\"\n\"629400\";\"ЧАШНИКИ\";\"other\"\n\"629447\";\"Bykhaw\";\"main\"\n\"629447\";\"BYKHOV\";\"other\"\n\"629447\";\"Bychow\";\"other\"\n\"629447\";\"Bykhov\";\"other\"\n\"629447\";\"Star Bykhov\";\"other\"\n\"629447\";\"Staryy Bykhov\";\"other\"\n\"629447\";\"БЫХОВ\";\"other\"\n\"629454\";\"Byaroza\";\"main\"\n\"629454\";\"BEREZA\";\"other\"\n\"629454\";\"Bereza\";\"other\"\n\"629454\";\"Bereza Kartuska\";\"other\"\n\"629454\";\"Bereza-Kartuskaya\";\"other\"\n\"629454\";\"Bereza-Kartuzskaya\";\"other\"\n\"629454\";\"Berëza\";\"other\"\n\"629454\";\"Kartuz-Bereza\";\"other\"\n\"629454\";\"БЕРЕЗА\";\"other\"\n\"629454\";\"Бяроза\";\"other\"\n\"629634\";\"Brest\";\"main\"\n\"629634\";\"BREST\";\"other\"\n\"629634\";\"Beras'ce\";\"other\"\n\"629634\";\"Berestja\";\"other\"\n\"629634\";\"Brest Litovsk\";\"other\"\n\"629634\";\"Brest-Litovsk\";\"other\"\n\"629634\";\"Brest-Litowsk\";\"other\"\n\"629634\";\"Brestas\";\"other\"\n\"629634\";\"Breszt\";\"other\"\n\"629634\";\"Brzesc\";\"other\"\n\"629634\";\"Brzesc nad Bugiem\";\"other\"\n\"629634\";\"Brzesc-Litewsk\";\"other\"\n\"629634\";\"Brzesc-Litewski\";\"other\"\n\"629634\";\"Brześć\";\"other\"\n\"629634\";\"Brześć nad Bugiem\";\"other\"\n\"629634\";\"Brześć-Litewsk\";\"other\"\n\"629634\";\"Brześć-Litewski\";\"other\"\n\"629634\";\"brst lytwbsq\";\"other\"\n\"629634\";\"bu lie si te\";\"other\"\n\"629634\";\"buresuto\";\"other\"\n\"629634\";\"БРЕСТ\";\"other\"\n\"629634\";\"Берасьце\";\"other\"\n\"629634\";\"Берестя\";\"other\"\n\"629634\";\"Брест\";\"other\"\n\"629634\";\"Брэст\";\"other\"\n\"629634\";\"ברסט ליטובסק\";\"other\"\n\"629634\";\"ブレスト\";\"other\"\n\"629634\";\"布列斯特\";\"other\"\n\"629640\";\"Braslaw\";\"main\"\n\"629640\";\"BRASLAV\";\"other\"\n\"629640\";\"Braslav\";\"other\"\n\"629640\";\"Brastaw\";\"other\"\n\"629640\";\"Breslauja\";\"other\"\n\"629640\";\"БРАСЛАВ\";\"other\"\n\"629646\";\"Brahin\";\"main\"\n\"629646\";\"Bragin\";\"other\"\n\"629646\";\"Брагин\";\"other\"\n\"629697\";\"Boruny\";\"main\"\n\"629697\";\"Боруны\";\"other\"\n\"629986\";\"Vyalikaya Byerastavitsa\";\"main\"\n\"629986\";\"Berestovitsa\";\"other\"\n\"629986\";\"Bol'saja Berestovica\";\"other\"\n\"629986\";\"Bol'shaja Berestovica\";\"other\"\n\"629986\";\"Bol'shaya Berestovitsa\";\"other\"\n\"629986\";\"Bol’shaya Berestovitsa\";\"other\"\n\"629986\";\"Bol’šaja Berestovica\";\"other\"\n\"629986\";\"Brzostowica Wielka\";\"other\"\n\"629986\";\"Vel'ke Bzhostovitsa\";\"other\"\n\"629986\";\"Velikaya Berestovitsa\";\"other\"\n\"629986\";\"Velikaya Bzhostovitsa\";\"other\"\n\"629986\";\"Vel’ke Bzhostovitsa\";\"other\"\n\"629986\";\"Большая Берестовица\";\"other\"\n\"630166\";\"Berëzovka\";\"main\"\n\"630166\";\"Berezovka\";\"ascii\"\n\"630166\";\"Berjozovka\";\"other\"\n\"630166\";\"Берёзовка\";\"other\"\n\"630197\";\"Byerazino\";\"main\"\n\"630197\";\"Berezino\";\"other\"\n\"630197\";\"Березино\";\"other\"\n\"630245\";\"Byalynichy\";\"main\"\n\"630245\";\"Belynichi\";\"other\"\n\"630245\";\"Byelinichi\";\"other\"\n\"630245\";\"Белыничи\";\"other\"\n\"630279\";\"Byelaazyorsk\";\"main\"\n\"630279\";\"BELOOZERSK\";\"other\"\n\"630279\";\"Beloozersk\";\"other\"\n\"630279\";\"Berezovskiy\";\"other\"\n\"630279\";\"БЕЛООЗЕРСК\";\"other\"\n\"630279\";\"Белаазёрск\";\"other\"\n\"630343\";\"Begoml’\";\"main\"\n\"630343\";\"Begoml'\";\"ascii\"\n\"630343\";\"Begomlya\";\"other\"\n\"630343\";\"Бегомль\";\"other\"\n\"630376\";\"Barysaw\";\"main\"\n\"630376\";\"BORISOV\";\"other\"\n\"630376\";\"Borisov\";\"other\"\n\"630376\";\"Borissow\";\"other\"\n\"630376\";\"БОРИСОВ\";\"other\"\n\"630429\";\"Baranavichy\";\"main\"\n\"630429\";\"BARANOVICHI\";\"other\"\n\"630429\";\"Baranavitsjy\";\"other\"\n\"630429\";\"Baranawitschy\";\"other\"\n\"630429\";\"Baranoviche\";\"other\"\n\"630429\";\"Baranovichi\";\"other\"\n\"630429\";\"Baranovichi - Baranavichy\";\"other\"\n\"630429\";\"Baranovichi - Баранавiчы\";\"other\"\n\"630429\";\"Baranoviciai\";\"other\"\n\"630429\";\"Baranovitchi\";\"other\"\n\"630429\";\"Baranovitsi\";\"other\"\n\"630429\";\"Baranovitši\";\"other\"\n\"630429\";\"Baranovičiai\";\"other\"\n\"630429\";\"Baranowicze\";\"other\"\n\"630429\";\"Baranowitschi\";\"other\"\n\"630429\";\"БАРАНОВИЧИ\";\"other\"\n\"630429\";\"Баранавічы\";\"other\"\n\"630429\";\"Барановичи\";\"other\"\n\"630468\";\"Babruysk\";\"main\"\n\"630468\";\"BOBRUJSK\";\"other\"\n\"630468\";\"Babroejsk\";\"other\"\n\"630468\";\"Babruisk\";\"other\"\n\"630468\";\"Babrujsk\";\"other\"\n\"630468\";\"Bobruisk\";\"other\"\n\"630468\";\"Bobruiskas\";\"other\"\n\"630468\";\"Bobrujsk\";\"other\"\n\"630468\";\"Bobruysk\";\"other\"\n\"630468\";\"bwbrwysq\";\"other\"\n\"630468\";\"БОБРУЙСК\";\"other\"\n\"630468\";\"Бабруйск\";\"other\"\n\"630468\";\"Бобруйск\";\"other\"\n\"630468\";\"בוברויסק\";\"other\"\n\"630515\";\"Ashmyany\";\"main\"\n\"630515\";\"Asmena\";\"other\"\n\"630515\";\"Ašmena\";\"other\"\n\"630515\";\"OSHMJANY\";\"other\"\n\"630515\";\"Oshmyana\";\"other\"\n\"630515\";\"Oshmyany\";\"other\"\n\"630515\";\"Oszmiana\";\"other\"\n\"630515\";\"ОШМЯНЫ\";\"other\"\n\"6846555\";\"Fanipol\";\"main\"\n\"6846555\";\"Fanipol'\";\"other\"\n\"6846555\";\"Фаниполь\";\"other\"\n\"3581164\";\"San Pedro\";\"main\"\n\"3581194\";\"San Ignacio\";\"main\"\n\"3581194\";\"Cayo\";\"other\"\n\"3581194\";\"Cayo Town\";\"other\"\n\"3581194\";\"El Cayo\";\"other\"\n\"3581194\";\"El Cayo de San Ignacio\";\"other\"\n\"3581398\";\"Punta Gorda\";\"main\"\n\"3581514\";\"Orange Walk\";\"main\"\n\"3582228\";\"Dangriga\";\"main\"\n\"3582228\";\"Dangriga Town\";\"other\"\n\"3582228\";\"Stann Creek\";\"other\"\n\"3582228\";\"Stann Creek Town\";\"other\"\n\"3582228\";\"Stann Creek Village\";\"other\"\n\"3582228\";\"Stanncrek\";\"other\"\n\"3582305\";\"Corozal\";\"main\"\n\"3582305\";\"Corasal\";\"other\"\n\"3582305\";\"Corazal\";\"other\"\n\"3582305\";\"Corosal\";\"other\"\n\"3582662\";\"Benque Viejo del Carmen\";\"main\"\n\"3582662\";\"Bengue Viejo\";\"other\"\n\"3582662\";\"Benique Viejo del Carmen\";\"other\"\n\"3582662\";\"Benque Viejo\";\"other\"\n\"3582662\";\"Cayo\";\"other\"\n\"3582672\";\"Belmopan\";\"main\"\n\"3582672\";\"Bel'mopan\";\"other\"\n\"3582672\";\"Belmopanas\";\"other\"\n\"3582672\";\"Belmopano\";\"other\"\n\"3582672\";\"Belmopán\";\"other\"\n\"3582672\";\"Bèlmopan\";\"other\"\n\"3582672\";\"Hattieville\";\"other\"\n\"3582672\";\"Mopan\";\"other\"\n\"3582672\";\"Mpelmopan\";\"other\"\n\"3582672\";\"bei er mo bang\";\"other\"\n\"3582672\";\"belmopan\";\"other\"\n\"3582672\";\"berumopan\";\"other\"\n\"3582672\";\"blmwpan\";\"other\"\n\"3582672\";\"blmwpn\";\"other\"\n\"3582672\";\"Μπελμοπάν\";\"other\"\n\"3582672\";\"Белмопан\";\"other\"\n\"3582672\";\"Бельмопан\";\"other\"\n\"3582672\";\"Բելմոպան\";\"other\"\n\"3582672\";\"בלמופן\";\"other\"\n\"3582672\";\"بلموپان\";\"other\"\n\"3582672\";\"ቤልሞፓን\";\"other\"\n\"3582672\";\"ベルモパン\";\"other\"\n\"3582672\";\"貝爾墨邦\";\"other\"\n\"3582672\";\"벨모판\";\"other\"\n\"3582677\";\"Belize City\";\"main\"\n\"3582677\";\"Belice\";\"other\"\n\"3582677\";\"Belizas\";\"other\"\n\"3582677\";\"Belize\";\"other\"\n\"3582677\";\"Belize-stad\";\"other\"\n\"3582677\";\"Ciudad de Belice\";\"other\"\n\"3582677\";\"berizushiti\";\"other\"\n\"3582677\";\"ベリーズシティ\";\"other\"\n\"3830322\";\"Valley of Peace\";\"main\"\n\"5881791\";\"Abbotsford\";\"main\"\n\"5881791\";\"Абботсфорд\";\"other\"\n\"5882142\";\"Acton Vale\";\"main\"\n\"5882799\";\"Airdrie\";\"main\"\n\"5883074\";\"Albanel\";\"main\"\n\"5883166\";\"Alberton\";\"main\"\n\"5884083\";\"Alma\";\"main\"\n\"5884083\";\"Алма\";\"other\"\n\"5884260\";\"Altona\";\"main\"\n\"5884467\";\"Amherst\";\"main\"\n\"5884473\";\"Amherstburg\";\"main\"\n\"5884588\";\"Amos\";\"main\"\n\"5885280\";\"Angus\";\"main\"\n\"5886182\";\"Antigonish\";\"main\"\n\"5887048\";\"Armstrong\";\"main\"\n\"5887214\";\"Arnprior\";\"main\"\n\"5887470\";\"Asbestos\";\"main\"\n\"5887531\";\"Ashcroft\";\"main\"\n\"5887798\";\"Assiniboia\";\"main\"\n\"5887916\";\"Athabasca\";\"main\"\n\"5888716\";\"Aylmer\";\"main\"\n\"5889745\";\"Baie-Comeau\";\"main\"\n\"5890542\";\"Baie-D'Urfé\";\"main\"\n\"5890542\";\"Baie-D'Urfe\";\"ascii\"\n\"5892510\";\"Bancroft\";\"main\"\n\"5892532\";\"Banff\";\"main\"\n\"5892532\";\"Banf\";\"other\"\n\"5892532\";\"Banfas\";\"other\"\n\"5892532\";\"ban fu\";\"other\"\n\"5892532\";\"banfu\";\"other\"\n\"5892532\";\"Банф\";\"other\"\n\"5892532\";\"バンフ\";\"other\"\n\"5892532\";\"班芙\";\"other\"\n\"5894033\";\"Barraute\";\"main\"\n\"5894164\";\"Barrhead\";\"main\"\n\"5894171\";\"Barrie\";\"main\"\n\"5894642\";\"Bassano\";\"main\"\n\"5895424\";\"Bay Roberts\";\"main\"\n\"5895650\";\"Beaconsfield\";\"main\"\n\"5896495\";\"Beauharnois\";\"main\"\n\"5896522\";\"Beaumont\";\"main\"\n\"5896549\";\"Beausejour\";\"main\"\n\"5896969\";\"Beaverlodge\";\"main\"\n\"5897209\";\"Bécancour\";\"main\"\n\"5897209\";\"Becancour\";\"ascii\"\n\"5897324\";\"Bedford\";\"main\"\n\"5897885\";\"Belleville\";\"main\"\n\"5898070\";\"Bells Corners\";\"main\"\n\"5898070\";\"Ottawa Bells Corners\";\"other\"\n\"5898138\";\"Beloeil\";\"main\"\n\"5899017\";\"Berthierville\";\"main\"\n\"5899061\";\"Berwick\";\"main\"\n\"5899982\";\"Biggar\";\"main\"\n\"5902458\";\"Black Diamond\";\"main\"\n\"5902599\";\"Blackfalds\";\"main\"\n\"5903510\";\"Blainville\";\"main\"\n\"5905132\";\"Boisbriand\";\"main\"\n\"5905152\";\"Bois-des-Filion\";\"main\"\n\"5905191\";\"Boissevain\";\"main\"\n\"5905348\";\"Bon Accord\";\"main\"\n\"5905393\";\"Bonavista\";\"main\"\n\"5905616\";\"Bonnyville\";\"main\"\n\"5906229\";\"Botwood\";\"main\"\n\"5906267\";\"Boucherville\";\"main\"\n\"5906281\";\"Bouctouche\";\"main\"\n\"5906575\";\"Bourget\";\"main\"\n\"5906757\";\"Bow Island\";\"main\"\n\"5907092\";\"Bracebridge\";\"main\"\n\"5907180\";\"Bradford West Gwillimbury\";\"main\"\n\"5907364\";\"Brampton\";\"main\"\n\"5907364\";\"Bramptono\";\"other\"\n\"5907364\";\"buranputon\";\"other\"\n\"5907364\";\"ブランプトン\";\"other\"\n\"5907896\";\"Brandon\";\"main\"\n\"5907896\";\"Brehndon\";\"other\"\n\"5907896\";\"Брэндон\";\"other\"\n\"5907983\";\"Brant\";\"main\"\n\"5907990\";\"Brantford\";\"main\"\n\"5908723\";\"Bridgewater\";\"main\"\n\"5909294\";\"Brockville\";\"main\"\n\"5909403\";\"Bromont\";\"main\"\n\"5909514\";\"Brooks\";\"main\"\n\"5909629\";\"Brossard\";\"main\"\n\"5909969\";\"Brownsburg-Chatham\";\"main\"\n\"5911440\";\"Burgeo\";\"main\"\n\"5911592\";\"Burlington\";\"main\"\n\"5911606\";\"Burnaby\";\"main\"\n\"5911606\";\"banabi\";\"other\"\n\"5911606\";\"banabi shi\";\"other\"\n\"5911606\";\"ben na bi\";\"other\"\n\"5911606\";\"バーナビー\";\"other\"\n\"5911606\";\"バーナビー市\";\"other\"\n\"5911606\";\"本那比\";\"other\"\n\"5911745\";\"Burns Lake\";\"main\"\n\"5913049\";\"Cache Creek\";\"main\"\n\"5913490\";\"Calgary\";\"main\"\n\"5913490\";\"Kalgari\";\"other\"\n\"5913490\";\"Kalgario\";\"other\"\n\"5913490\";\"ka er jia li\";\"other\"\n\"5913490\";\"kaelgeoli\";\"other\"\n\"5913490\";\"kalgry\";\"other\"\n\"5913490\";\"karugari\";\"other\"\n\"5913490\";\"qlgry\";\"other\"\n\"5913490\";\"Калгари\";\"other\"\n\"5913490\";\"קלגרי\";\"other\"\n\"5913490\";\"کالگری\";\"other\"\n\"5913490\";\"カルガリー\";\"other\"\n\"5913490\";\"卡尔加里\";\"other\"\n\"5913490\";\"캘거리\";\"other\"\n\"5913601\";\"Calmar\";\"main\"\n\"5913695\";\"Cambridge\";\"main\"\n\"5914132\";\"Campbell River\";\"main\"\n\"5914653\";\"Camrose\";\"main\"\n\"5914826\";\"Candiac\";\"main\"\n\"5914894\";\"Canmore\";\"main\"\n\"5915098\";\"Canora\";\"main\"\n\"5915359\";\"Cap-Chat\";\"main\"\n\"5916706\";\"Carberry\";\"main\"\n\"5916722\";\"Carbonear\";\"main\"\n\"5916821\";\"Cardston\";\"main\"\n\"5917117\";\"Carignan\";\"main\"\n\"5917158\";\"Carleton Place\";\"main\"\n\"5917262\";\"Carlyle\";\"main\"\n\"5917275\";\"Carman\";\"main\"\n\"5917688\";\"Carstairs\";\"main\"\n\"5918021\";\"Casselman\";\"main\"\n\"5918118\";\"Castlegar\";\"main\"\n\"5918243\";\"Catalina\";\"main\"\n\"5919566\";\"Chambly\";\"main\"\n\"5919815\";\"Channel-Port aux Basques\";\"main\"\n\"5919850\";\"Chapais\";\"main\"\n\"5920089\";\"Charlemagne\";\"main\"\n\"5920288\";\"Charlottetown\";\"main\"\n\"5920288\";\"Carolinapolis\";\"other\"\n\"5920288\";\"Sharlottaun\";\"other\"\n\"5920288\";\"sharottotaun\";\"other\"\n\"5920288\";\"xia luo te dun\";\"other\"\n\"5920288\";\"Шарлоттаун\";\"other\"\n\"5920288\";\"シャーロットタウン\";\"other\"\n\"5920288\";\"夏洛特顿\";\"other\"\n\"5920381\";\"Chase\";\"main\"\n\"5920433\";\"Châteauguay\";\"main\"\n\"5920433\";\"Chateauguay\";\"ascii\"\n\"5920450\";\"Chatham-Kent\";\"main\"\n\"5920450\";\"Municipality of Chatham-Kent\";\"other\"\n\"5921028\";\"Chester\";\"main\"\n\"5921060\";\"Chestermere\";\"main\"\n\"5921091\";\"Chetwynd\";\"main\"\n\"5921147\";\"Chibougamau\";\"main\"\n\"5921357\";\"Chilliwack\";\"main\"\n\"5922281\";\"Chute-aux-Outardes\";\"main\"\n\"5923101\";\"Clarence-Rockland\";\"main\"\n\"5923119\";\"Clarenville-Shoal Harbour\";\"main\"\n\"5923125\";\"Claresholm\";\"main\"\n\"5924351\";\"Clyde River\";\"main\"\n\"5924417\";\"Coaldale\";\"main\"\n\"5924428\";\"Coalhurst\";\"main\"\n\"5924500\";\"Coaticook\";\"main\"\n\"5924579\";\"Cobourg\";\"main\"\n\"5924618\";\"Cochrane\";\"main\"\n\"5925024\";\"Cold Lake\";\"main\"\n\"5925975\";\"Collingwood\";\"main\"\n\"5926268\";\"Colwood\";\"main\"\n\"5926511\";\"Conception Bay South\";\"main\"\n\"5927024\";\"Contrecoeur\";\"main\"\n\"5927235\";\"Cookshire-Eaton\";\"main\"\n\"5927689\";\"Coquitlam\";\"main\"\n\"5927689\";\"kokittoramu\";\"other\"\n\"5927689\";\"kokittoramu shi\";\"other\"\n\"5927689\";\"kokuittoramu\";\"other\"\n\"5927689\";\"コキットラム\";\"other\"\n\"5927689\";\"コキットラム市\";\"other\"\n\"5927689\";\"コクイットラム\";\"other\"\n\"5927969\";\"Corner Brook\";\"main\"\n\"5928063\";\"Cornwall\";\"main\"\n\"5928063\";\"Kornuoll\";\"other\"\n\"5928063\";\"Корнуолл\";\"other\"\n\"5928065\";\"Cornwall\";\"main\"\n\"5928488\";\"Côte-Saint-Luc\";\"main\"\n\"5928488\";\"Cote-Saint-Luc\";\"ascii\"\n\"5930890\";\"Courtenay\";\"main\"\n\"5930890\";\"Kurteneh\";\"other\"\n\"5930890\";\"Куртенэ\";\"other\"\n\"5931074\";\"Cowansville\";\"main\"\n\"5931427\";\"Crabtree\";\"main\"\n\"5931800\";\"Cranbrook\";\"main\"\n\"5932311\";\"Creston\";\"main\"\n\"5933070\";\"Crossfield\";\"main\"\n\"5933885\";\"Cumberland\";\"main\"\n\"5934709\";\"Dalmeny\";\"main\"\n\"5935042\";\"Danville\";\"main\"\n\"5935277\";\"Dartmouth\";\"main\"\n\"5935341\";\"Dauphin\";\"main\"\n\"5935388\";\"Daveluyville\";\"main\"\n\"5935804\";\"Dawson Creek\";\"main\"\n\"5937073\";\"Deep River\";\"main\"\n\"5937252\";\"Deer Lake\";\"main\"\n\"5937577\";\"Deloraine\";\"main\"\n\"5937612\";\"Delson\";\"main\"\n\"5937615\";\"Delta\";\"main\"\n\"5937615\";\"Del'ta\";\"other\"\n\"5937615\";\"Дельта\";\"other\"\n\"5938187\";\"Deseronto\";\"main\"\n\"5938513\";\"Deux-Montagnes\";\"main\"\n\"5938801\";\"Devon\";\"main\"\n\"5939210\";\"Didsbury\";\"main\"\n\"5939219\";\"Dieppe\";\"main\"\n\"5939236\";\"Digby\";\"main\"\n\"5940934\";\"Dolbeau-Mistassini\";\"main\"\n\"5940956\";\"Dollard-Des Ormeaux\";\"main\"\n\"5941925\";\"Dorval\";\"main\"\n\"5942547\";\"Drayton Valley\";\"main\"\n\"5942845\";\"Drummondville\";\"main\"\n\"5942913\";\"Dryden\";\"main\"\n\"5943865\";\"Duncan\";\"main\"\n\"5943865\";\"Dunkan\";\"other\"\n\"5943865\";\"Дункан\";\"other\"\n\"5945016\";\"East Angus\";\"main\"\n\"5946768\";\"Edmonton\";\"main\"\n\"5946768\";\"Edmontonas\";\"other\"\n\"5946768\";\"Edmontono\";\"other\"\n\"5946768\";\"Ehdmonton\";\"other\"\n\"5946768\";\"YEA\";\"other\"\n\"5946768\";\"ai de meng dun\";\"other\"\n\"5946768\";\"edeumeonteon\";\"other\"\n\"5946768\";\"edomonton\";\"other\"\n\"5946768\";\"Едмонтон\";\"other\"\n\"5946768\";\"Эдмонтон\";\"other\"\n\"5946768\";\"אדמונטון\";\"other\"\n\"5946768\";\"エドモントン\";\"other\"\n\"5946768\";\"埃德蒙顿\";\"other\"\n\"5946768\";\"에드먼턴\";\"other\"\n\"5946820\";\"Edson\";\"main\"\n\"5947708\";\"Elkford\";\"main\"\n\"5947754\";\"Elk Point\";\"main\"\n\"5947866\";\"Elliot Lake\";\"main\"\n\"5948770\";\"Enderby\";\"main\"\n\"5948844\";\"Englehart\";\"main\"\n\"5949493\";\"Espanola\";\"main\"\n\"5949563\";\"Esterhazy\";\"main\"\n\"5949568\";\"Estevan\";\"main\"\n\"5951036\";\"Fairview\";\"main\"\n\"5951224\";\"Falher\";\"main\"\n\"5951644\";\"Farnham\";\"main\"\n\"5952330\";\"Ferme-Neuve\";\"main\"\n\"5952337\";\"Fermont\";\"main\"\n\"5952370\";\"Fernie\";\"main\"\n\"5954718\";\"Flin Flon\";\"main\"\n\"5955084\";\"Foam Lake\";\"main\"\n\"5955797\";\"Fort-Coulonge\";\"main\"\n\"5955815\";\"Fort Erie\";\"main\"\n\"5955826\";\"Fort Frances\";\"main\"\n\"5955891\";\"Fort Macleod\";\"main\"\n\"5955898\";\"Fort McPherson\";\"main\"\n\"5955902\";\"Fort Nelson\";\"main\"\n\"5955948\";\"Fort Saskatchewan\";\"main\"\n\"5955960\";\"Fort St. John\";\"main\"\n\"5956869\";\"Fox Creek\";\"main\"\n\"5957776\";\"Fredericton\";\"main\"\n\"5957776\";\"Fredericopolis\";\"other\"\n\"5957776\";\"Frederikton\";\"other\"\n\"5957776\";\"Phrentrikton\";\"other\"\n\"5957776\";\"fu lei de li ke dun\";\"other\"\n\"5957776\";\"furederikuton\";\"other\"\n\"5957776\";\"peuledeoligteon\";\"other\"\n\"5957776\";\"Φρέντρικτον\";\"other\"\n\"5957776\";\"Фредериктон\";\"other\"\n\"5957776\";\"フレデリクトン\";\"other\"\n\"5957776\";\"弗雷德里克頓\";\"other\"\n\"5957776\";\"프레더릭턴\";\"other\"\n\"5958590\";\"Fruitvale\";\"main\"\n\"5959271\";\"Gambo\";\"main\"\n\"5959326\";\"Gananoque\";\"main\"\n\"5959878\";\"Gaspé\";\"main\"\n\"5959878\";\"Gaspe\";\"ascii\"\n\"5959878\";\"gasupe\";\"other\"\n\"5959878\";\"ガスペ\";\"other\"\n\"5959974\";\"Gatineau\";\"main\"\n\"5959974\";\"Sablono:TabelKapoLauCarta\";\"other\"\n\"5959974\";\"gatino\";\"other\"\n\"5959974\";\"Ŝablono:TabelKapoLaŭĈarta\";\"other\"\n\"5959974\";\"ガティノー\";\"other\"\n\"5960842\";\"Gibbons\";\"main\"\n\"5960971\";\"Gibsons\";\"main\"\n\"5961417\";\"Gimli\";\"main\"\n\"5961560\";\"Gjoa Haven\";\"main\"\n\"5961564\";\"Glace Bay\";\"main\"\n\"5962442\";\"Goderich\";\"main\"\n\"5962582\";\"Golden\";\"main\"\n\"5964215\";\"Granby\";\"main\"\n\"5964230\";\"Grand Bank\";\"main\"\n\"5964304\";\"Grande Cache\";\"main\"\n\"5964347\";\"Grande Prairie\";\"main\"\n\"5964378\";\"Grand Falls-Windsor\";\"main\"\n\"5964401\";\"Grand Forks\";\"main\"\n\"5964700\";\"Greater Sudbury\";\"main\"\n\"5964700\";\"Grand Sudbury\";\"other\"\n\"5964700\";\"Sadberi\";\"other\"\n\"5964700\";\"Sudbury\";\"other\"\n\"5964700\";\"Садбери\";\"other\"\n\"5965462\";\"Gravelbourg\";\"main\"\n\"5965546\";\"Gravenhurst\";\"main\"\n\"5965812\";\"Greater Napanee\";\"main\"\n\"5965812\";\"Napanee\";\"other\"\n\"5966689\";\"Greenwood\";\"main\"\n\"5967157\";\"Grimshaw\";\"main\"\n\"5967629\";\"Guelph\";\"main\"\n\"5969025\";\"Haines Junction\";\"main\"\n\"5969093\";\"Haldimand County\";\"main\"\n\"5969785\";\"Hamilton\";\"main\"\n\"5970014\";\"Hampstead\";\"main\"\n\"5970018\";\"Hampton\";\"main\"\n\"5970234\";\"Hanna\";\"main\"\n\"5970301\";\"Hanover\";\"main\"\n\"5970414\";\"Hantsport\";\"main\"\n\"5970458\";\"Happy Valley-Goose Bay\";\"main\"\n\"5970478\";\"Harbour Breton\";\"main\"\n\"5972291\";\"Havre-Saint-Pierre\";\"main\"\n\"5972360\";\"Hawkesbury\";\"main\"\n\"5973108\";\"Hearst\";\"main\"\n\"5975004\";\"High Level\";\"main\"\n\"5975034\";\"High Prairie\";\"main\"\n\"5975038\";\"High River\";\"main\"\n\"5975503\";\"Hinton\";\"main\"\n\"5976783\";\"Hope\";\"main\"\n\"5977783\";\"Houston\";\"main\"\n\"5978126\";\"Hudson\";\"main\"\n\"5978133\";\"Hudson Bay\";\"main\"\n\"5978404\";\"Humboldt\";\"main\"\n\"5978683\";\"Huntingdon\";\"main\"\n\"5978765\";\"Huntsville\";\"main\"\n\"5982839\";\"Indian Head\";\"main\"\n\"5983175\";\"Ingersoll\";\"main\"\n\"5983433\";\"Innisfil\";\"main\"\n\"5983607\";\"Inuvik\";\"main\"\n\"5983626\";\"Invermere\";\"main\"\n\"5983720\";\"Iqaluit\";\"main\"\n\"5983720\";\"Ikaluitas\";\"other\"\n\"5983720\";\"Ikvaluit\";\"other\"\n\"5983720\";\"ikallu-iteu\";\"other\"\n\"5983720\";\"ikaruito\";\"other\"\n\"5983720\";\"yi kui te\";\"other\"\n\"5983720\";\"Иквалуит\";\"other\"\n\"5983720\";\"ᐃᖃᓗᐃᑦ\";\"other\"\n\"5983720\";\"イカルイト\";\"other\"\n\"5983720\";\"伊魁特\";\"other\"\n\"5983720\";\"이칼루이트\";\"other\"\n\"5984000\";\"Iroquois Falls\";\"main\"\n\"5984019\";\"Irricana\";\"main\"\n\"5985934\";\"Jasper Park Lodge\";\"main\"\n\"5987650\";\"Joliette\";\"main\"\n\"5989045\";\"Kamloops\";\"main\"\n\"5989045\";\"Kamlups\";\"other\"\n\"5989045\";\"kamurupusu\";\"other\"\n\"5989045\";\"Камлупс\";\"other\"\n\"5989045\";\"カムループス\";\"other\"\n\"5989068\";\"Kamsack\";\"main\"\n\"5989403\";\"Kapuskasing\";\"main\"\n\"5989818\";\"Kawartha Lakes\";\"main\"\n\"5990579\";\"Kelowna\";\"main\"\n\"5990579\";\"Kelouna\";\"other\"\n\"5990579\";\"kerouna\";\"other\"\n\"5990579\";\"Келоуна\";\"other\"\n\"5990579\";\"ケロウナ\";\"other\"\n\"5991056\";\"Kenora\";\"main\"\n\"5991080\";\"Kensington\";\"main\"\n\"5991148\";\"Kentville\";\"main\"\n\"5991284\";\"Kerrobert\";\"main\"\n\"5991370\";\"Keswick\";\"main\"\n\"5991888\";\"Killam\";\"main\"\n\"5991907\";\"Killarney\";\"main\"\n\"5992059\";\"Kimberley\";\"main\"\n\"5992154\";\"Kindersley\";\"main\"\n\"5992424\";\"Kingsey Falls\";\"main\"\n\"5992500\";\"Kingston\";\"main\"\n\"5992500\";\"jing shi dun\";\"other\"\n\"5992500\";\"kingusuton\";\"other\"\n\"5992500\";\"Кингстон\";\"other\"\n\"5992500\";\"キングストン\";\"other\"\n\"5992500\";\"京士頓\";\"other\"\n\"5992830\";\"Kirkland\";\"main\"\n\"5992836\";\"Kirkland Lake\";\"main\"\n\"5992996\";\"Kitchener\";\"main\"\n\"5992996\";\"Kicenero\";\"other\"\n\"5992996\";\"Kiĉenero\";\"other\"\n\"5992996\";\"kychnr\";\"other\"\n\"5992996\";\"Китченер\";\"other\"\n\"5992996\";\"کیچنر\";\"other\"\n\"5993072\";\"Kitimat\";\"main\"\n\"5994339\";\"Kugluktuk\";\"main\"\n\"5994339\";\"Coppermine\";\"other\"\n\"5994763\";\"Labelle\";\"main\"\n\"5994839\";\"Labrador City\";\"main\"\n\"6002133\";\"Lac-Brome\";\"main\"\n\"6002133\";\"Lac Brome\";\"other\"\n\"6014443\";\"Lac du Bonnet\";\"main\"\n\"6024829\";\"Lachute\";\"main\"\n\"6028050\";\"Lac La Biche\";\"main\"\n\"6032673\";\"Lac-Mégantic\";\"main\"\n\"6032673\";\"Lac-Megantic\";\"ascii\"\n\"6035592\";\"Lacolle\";\"main\"\n\"6035615\";\"Lacombe\";\"main\"\n\"6047817\";\"Ladysmith\";\"main\"\n\"6048316\";\"Lake Cowichan\";\"main\"\n\"6049046\";\"Lamont\";\"main\"\n\"6049379\";\"Langenburg\";\"main\"\n\"6049388\";\"Langford\";\"main\"\n\"6049403\";\"Langham\";\"main\"\n\"6049429\";\"Langley\";\"main\"\n\"6049515\";\"Lanigan\";\"main\"\n\"6049863\";\"La Prairie\";\"main\"\n\"6050066\";\"La Ronge\";\"main\"\n\"6050194\";\"La Sarre\";\"main\"\n\"6050263\";\"L'Assomption\";\"main\"\n\"6050416\";\"La Tuque\";\"main\"\n\"6050610\";\"Laval\";\"main\"\n\"6050610\";\"ravu~aru\";\"other\"\n\"6050610\";\"ラヴァル\";\"other\"\n\"6050650\";\"Lavaltrie\";\"main\"\n\"6051123\";\"Leamington\";\"main\"\n\"6051264\";\"Lebel-sur-Quévillon\";\"main\"\n\"6051264\";\"Lebel-sur-Quevillon\";\"ascii\"\n\"6051562\";\"Leduc\";\"main\"\n\"6052583\";\"L'Épiphanie\";\"main\"\n\"6052583\";\"L'Epiphanie\";\"ascii\"\n\"6052773\";\"Les Cèdres\";\"main\"\n\"6052773\";\"Les Cedres\";\"ascii\"\n\"6052788\";\"Les Coteaux\";\"main\"\n\"6053154\";\"Lethbridge\";\"main\"\n\"6053154\";\"Letbridzas\";\"other\"\n\"6053154\";\"Letbridžas\";\"other\"\n\"6053446\";\"Lewisporte\";\"main\"\n\"6053877\";\"L'Île-Perrot\";\"main\"\n\"6053877\";\"L'Ile-Perrot\";\"ascii\"\n\"6053877\";\"L'Ile Perrot\";\"other\"\n\"6054578\";\"Lions Bay\";\"main\"\n\"6058024\";\"Lloydminster\";\"main\"\n\"6058415\";\"Logan Lake\";\"main\"\n\"6058560\";\"London\";\"main\"\n\"6058560\";\"Londono\";\"other\"\n\"6058560\";\"lndn\";\"other\"\n\"6058560\";\"lun dun\";\"other\"\n\"6058560\";\"lwndwn\";\"other\"\n\"6058560\";\"rondon\";\"other\"\n\"6058560\";\"Лондон\";\"other\"\n\"6058560\";\"לונדון\";\"other\"\n\"6058560\";\"لندن\";\"other\"\n\"6058560\";\"ロンドン\";\"other\"\n\"6058560\";\"伦敦\";\"other\"\n\"6059891\";\"Longueuil\";\"main\"\n\"6059891\";\"rongeru\";\"other\"\n\"6059891\";\"ロンゲール\";\"other\"\n\"6060407\";\"Lorraine\";\"main\"\n\"6060839\";\"Louiseville\";\"main\"\n\"6061958\";\"Lumby\";\"main\"\n\"6061979\";\"Lumsden\";\"main\"\n\"6062069\";\"Lunenburg\";\"main\"\n\"6062563\";\"Macamic\";\"main\"\n\"6063429\";\"Macklin\";\"main\"\n\"6064180\";\"Magog\";\"main\"\n\"6064202\";\"Magrath\";\"main\"\n\"6064704\";\"Malartic\";\"main\"\n\"6065262\";\"Maniwaki\";\"main\"\n\"6065306\";\"Manning\";\"main\"\n\"6065592\";\"Maple Creek\";\"main\"\n\"6065686\";\"Maple Ridge\";\"main\"\n\"6065686\";\"Mehpl-Ridzh\";\"other\"\n\"6065686\";\"Мэпл-Ридж\";\"other\"\n\"6065867\";\"Marathon\";\"main\"\n\"6066350\";\"Marieville\";\"main\"\n\"6067033\";\"Martensville\";\"main\"\n\"6067472\";\"Marystown\";\"main\"\n\"6067494\";\"Mascouche\";\"main\"\n\"6067547\";\"Maskinongé\";\"main\"\n\"6067547\";\"Maskinonge\";\"ascii\"\n\"6067747\";\"Matagami\";\"main\"\n\"6067959\";\"Mattawa\";\"main\"\n\"6068315\";\"Mayerthorpe\";\"main\"\n\"6071421\";\"Meadow Lake\";\"main\"\n\"6071618\";\"Medicine Hat\";\"main\"\n\"6071876\";\"Melfort\";\"main\"\n\"6071900\";\"Melita\";\"main\"\n\"6071971\";\"Melville\";\"main\"\n\"6072206\";\"Mercier\";\"main\"\n\"6072350\";\"Merritt\";\"main\"\n\"6073289\";\"Middleton\";\"main\"\n\"6073363\";\"Midland\";\"main\"\n\"6074099\";\"Millet\";\"main\"\n\"6074882\";\"Minnedosa\";\"main\"\n\"6075061\";\"Mirabel\";\"main\"\n\"6075081\";\"Miramichi\";\"main\"\n\"6075293\";\"Mission\";\"main\"\n\"6075293\";\"Mishen\";\"other\"\n\"6075293\";\"Мишен\";\"other\"\n\"6075357\";\"Mississauga\";\"main\"\n\"6076211\";\"Moncton\";\"main\"\n\"6076211\";\"Monkton\";\"other\"\n\"6076211\";\"Monktono\";\"other\"\n\"6076211\";\"Монктон\";\"other\"\n\"6076690\";\"Montague\";\"main\"\n\"6077128\";\"Mont-Laurier\";\"main\"\n\"6077243\";\"Montréal\";\"main\"\n\"6077243\";\"Montreal\";\"ascii\"\n\"6077243\";\"Lungsod ng Montreal\";\"other\"\n\"6077243\";\"Lungsod ng Montréal\";\"other\"\n\"6077243\";\"Monreal\";\"other\"\n\"6077243\";\"Monreal'\";\"other\"\n\"6077243\";\"Monreala\";\"other\"\n\"6077243\";\"Monrealis\";\"other\"\n\"6077243\";\"Monreyal\";\"other\"\n\"6077243\";\"Monreāla\";\"other\"\n\"6077243\";\"Mons Regius\";\"other\"\n\"6077243\";\"Mont-real\";\"other\"\n\"6077243\";\"Montreal - Montreal\";\"other\"\n\"6077243\";\"Montreal - Montréal\";\"other\"\n\"6077243\";\"Montreal City\";\"other\"\n\"6077243\";\"Montreali\";\"other\"\n\"6077243\";\"Montrealo\";\"other\"\n\"6077243\";\"YMQ\";\"other\"\n\"6077243\";\"meng te li er\";\"other\"\n\"6077243\";\"monreali\";\"other\"\n\"6077243\";\"monteuliol\";\"other\"\n\"6077243\";\"montorioru\";\"other\"\n\"6077243\";\"mwntral\";\"other\"\n\"6077243\";\"mwntryal\";\"other\"\n\"6077243\";\"Μοντρεαλ\";\"other\"\n\"6077243\";\"Μόντρεαλ\";\"other\"\n\"6077243\";\"Монреал\";\"other\"\n\"6077243\";\"Монреаль\";\"other\"\n\"6077243\";\"Монтреал\";\"other\"\n\"6077243\";\"מונטריאול\";\"other\"\n\"6077243\";\"مونترآل\";\"other\"\n\"6077243\";\"مونتریال\";\"other\"\n\"6077243\";\"مونترېئال\";\"other\"\n\"6077243\";\"მონრეალი\";\"other\"\n\"6077243\";\"ᒧᕆᐊᓪ\";\"other\"\n\"6077243\";\"モントリオール\";\"other\"\n\"6077243\";\"蒙特利尔\";\"other\"\n\"6077243\";\"몬트리올\";\"other\"\n\"6077251\";\"Montréal-Est\";\"main\"\n\"6077251\";\"Montreal-Est\";\"ascii\"\n\"6077251\";\"Montreal East\";\"other\"\n\"6077265\";\"Montréal-Ouest\";\"main\"\n\"6077265\";\"Montreal-Ouest\";\"ascii\"\n\"6077265\";\"Montreal West\";\"other\"\n\"6077315\";\"Mont-Royal\";\"main\"\n\"6077340\";\"Mont-Saint-Hilaire\";\"main\"\n\"6077445\";\"Mont-Tremblant\";\"main\"\n\"6078112\";\"Moose Jaw\";\"main\"\n\"6078359\";\"Moosomin\";\"main\"\n\"6078447\";\"Morden\";\"main\"\n\"6078636\";\"Morinville\";\"main\"\n\"6078727\";\"Morris\";\"main\"\n\"6082231\";\"Mount Pearl\";\"main\"\n\"6085444\";\"Nackawic\";\"main\"\n\"6085665\";\"Nakusp\";\"main\"\n\"6085772\";\"Nanaimo\";\"main\"\n\"6085772\";\"Nanajmo\";\"other\"\n\"6085772\";\"na nai mo\";\"other\"\n\"6085772\";\"nanaimo\";\"other\"\n\"6085772\";\"nanaymw\";\"other\"\n\"6085772\";\"brytysh klmbya\";\"other\"\n\"6085772\";\"Нанаймо\";\"other\"\n\"6085772\";\"نانایمو، بریتیش کلمبیا\";\"other\"\n\"6085772\";\"نانایمو، بریتیش کلمبیا‌\";\"other\"\n\"6085772\";\"ナナイモ\";\"other\"\n\"6085772\";\"纳奈莫\";\"other\"\n\"6085892\";\"Nanton\";\"main\"\n\"6085960\";\"Napierville\";\"main\"\n\"6086673\";\"Neepawa\";\"main\"\n\"6086871\";\"Nelson\";\"main\"\n\"6087579\";\"New Glasgow\";\"main\"\n\"6087844\";\"New Westminster\";\"main\"\n\"6087892\";\"Niagara Falls\";\"main\"\n\"6087892\";\"ni ya jia la pu bu cheng\";\"other\"\n\"6087892\";\"尼亚加拉瀑布城\";\"other\"\n\"6088132\";\"Nicolet\";\"main\"\n\"6088469\";\"Nipawin\";\"main\"\n\"6088677\";\"Niverville\";\"main\"\n\"6089125\";\"Norfolk County\";\"main\"\n\"6089179\";\"Normandin\";\"main\"\n\"6089245\";\"Norman Wells\";\"main\"\n\"6089404\";\"North Battleford\";\"main\"\n\"6089426\";\"North Bay\";\"main\"\n\"6089661\";\"North Cowichan\";\"main\"\n\"6090785\";\"North Vancouver\";\"main\"\n\"6091104\";\"North York\";\"main\"\n\"6091369\";\"Notre-Dame-de-l'Île-Perrot\";\"main\"\n\"6091369\";\"Notre-Dame-de-l'Ile-Perrot\";\"ascii\"\n\"6091422\";\"Notre-Dame-des-Prairies\";\"main\"\n\"6091436\";\"Notre-Dame-du-Bon-Conseil\";\"main\"\n\"6092873\";\"Oka\";\"main\"\n\"6093010\";\"Okotoks\";\"main\"\n\"6093347\";\"Olds\";\"main\"\n\"6093514\";\"Oliver\";\"main\"\n\"6094201\";\"Orangeville\";\"main\"\n\"6094325\";\"Orillia\";\"main\"\n\"6094391\";\"Ormstown\";\"main\"\n\"6094407\";\"Oromocto\";\"main\"\n\"6094578\";\"Oshawa\";\"main\"\n\"6094665\";\"Osoyoos\";\"main\"\n\"6094817\";\"Ottawa\";\"main\"\n\"6094817\";\"Otava\";\"other\"\n\"6094817\";\"Otava - Ottawa\";\"other\"\n\"6094817\";\"Otavo\";\"other\"\n\"6094817\";\"Ottaba\";\"other\"\n\"6094817\";\"Ottava\";\"other\"\n\"6094817\";\"atawa\";\"other\"\n\"6094817\";\"awtawa\";\"other\"\n\"6094817\";\"otawa\";\"other\"\n\"6094817\";\"ottava\";\"other\"\n\"6094817\";\"wo tai hua\";\"other\"\n\"6094817\";\"AA¬²±\";\"other\"\n\"6094817\";\"Οττάβα\";\"other\"\n\"6094817\";\"Οτταβα\";\"other\"\n\"6094817\";\"Отава\";\"other\"\n\"6094817\";\"Оттава\";\"other\"\n\"6094817\";\"Օտավա\";\"other\"\n\"6094817\";\"אוטווה\";\"other\"\n\"6094817\";\"أوتاوا\";\"other\"\n\"6094817\";\"اتاوا\";\"other\"\n\"6094817\";\"ஒட்டாவா\";\"other\"\n\"6094817\";\"ኦታዋ\";\"other\"\n\"6094817\";\"ᐊᑐᕚ\";\"other\"\n\"6094817\";\"オタワ\";\"other\"\n\"6094817\";\"渥太華\";\"other\"\n\"6094817\";\"오타와\";\"other\"\n\"6094884\";\"Otterburn Park\";\"main\"\n\"6095416\";\"Outlook\";\"main\"\n\"6095645\";\"Owen Sound\";\"main\"\n\"6095751\";\"Oxbow\";\"main\"\n\"6095779\";\"Oxford\";\"main\"\n\"6096551\";\"Pangnirtung\";\"main\"\n\"6096672\";\"Papineauville\";\"main\"\n\"6098642\";\"Parksville\";\"main\"\n\"6098717\";\"Parrsboro\";\"main\"\n\"6098747\";\"Parry Sound\";\"main\"\n\"6098924\";\"Pasadena\";\"main\"\n\"6100069\";\"Peace River\";\"main\"\n\"6100086\";\"Peachland\";\"main\"\n\"6100799\";\"Pemberton\";\"main\"\n\"6100832\";\"Pembroke\";\"main\"\n\"6100954\";\"Penhold\";\"main\"\n\"6101141\";\"Penticton\";\"main\"\n\"6101546\";\"Perth\";\"main\"\n\"6101607\";\"Petawawa\";\"main\"\n\"6101645\";\"Peterborough\";\"main\"\n\"6101645\";\"Piterboro\";\"other\"\n\"6101645\";\"Питерборо\";\"other\"\n\"6103581\";\"Petrolia\";\"main\"\n\"6104111\";\"Pickering\";\"main\"\n\"6104221\";\"Pictou\";\"main\"\n\"6104231\";\"Picture Butte\";\"main\"\n\"6104329\";\"Pierreville\";\"main\"\n\"6104745\";\"Pilot Butte\";\"main\"\n\"6104841\";\"Pincher Creek\";\"main\"\n\"6104876\";\"Pincourt\";\"main\"\n\"6105815\";\"Pitt Meadows\";\"main\"\n\"6105815\";\"Pitt-Medous\";\"other\"\n\"6105815\";\"Pitts Meadows\";\"other\"\n\"6105815\";\"Питт-Медоус\";\"other\"\n\"6107325\";\"Pointe-Claire\";\"main\"\n\"6109273\";\"Ponoka\";\"main\"\n\"6110611\";\"Pont Rouge\";\"main\"\n\"6111529\";\"Portage la Prairie\";\"main\"\n\"6111632\";\"Port Alberni\";\"main\"\n\"6111696\";\"Port-Cartier\";\"main\"\n\"6111704\";\"Port Colborne\";\"main\"\n\"6111867\";\"Port Hawkesbury\";\"main\"\n\"6111962\";\"Port Moody\";\"main\"\n\"6112530\";\"Powassan\";\"main\"\n\"6112608\";\"Powell River\";\"main\"\n\"6112862\";\"Preeceville\";\"main\"\n\"6113027\";\"Prescott\";\"main\"\n\"6113198\";\"Prévost\";\"main\"\n\"6113198\";\"Prevost\";\"ascii\"\n\"6113335\";\"Prince Albert\";\"main\"\n\"6113355\";\"Prince Edward\";\"main\"\n\"6113355\";\"Prince Edward County\";\"other\"\n\"6113365\";\"Prince George\";\"main\"\n\"6113365\";\"Prins-Dzhordzh\";\"other\"\n\"6113365\";\"Принс-Джордж\";\"other\"\n\"6113406\";\"Prince Rupert\";\"main\"\n\"6113463\";\"Princeton\";\"main\"\n\"6113466\";\"Princeville\";\"main\"\n\"6113828\";\"Provost\";\"main\"\n\"6115187\";\"Quesnel\";\"main\"\n\"6115355\";\"Quinte West\";\"main\"\n\"6116548\";\"Rankin Inlet\";\"main\"\n\"6117611\";\"Rawdon\";\"main\"\n\"6117675\";\"Raymond\";\"main\"\n\"6118158\";\"Red Deer\";\"main\"\n\"6118158\";\"Red Dyras\";\"other\"\n\"6119109\";\"Regina\";\"main\"\n\"6119109\";\"Redzajna\";\"other\"\n\"6119109\";\"Redzhajna\";\"other\"\n\"6119109\";\"Redžajna\";\"other\"\n\"6119109\";\"Regino\";\"other\"\n\"6119109\";\"Reĝino\";\"other\"\n\"6119109\";\"Régina\";\"other\"\n\"6119109\";\"Urbs Reginae\";\"other\"\n\"6119109\";\"li jia na\";\"other\"\n\"6119109\";\"rejaina\";\"other\"\n\"6119109\";\"Реджайна\";\"other\"\n\"6119109\";\"レジャイナ\";\"other\"\n\"6119109\";\"里賈納\";\"other\"\n\"6119448\";\"Renfrew\";\"main\"\n\"6119518\";\"Repentigny\";\"main\"\n\"6121621\";\"Revelstoke\";\"main\"\n\"6122037\";\"Richelieu\";\"main\"\n\"6122053\";\"Richibucto\";\"main\"\n\"6122078\";\"Richmond\";\"main\"\n\"6122085\";\"Richmond\";\"main\"\n\"6122085\";\"Ричмонд\";\"other\"\n\"6122288\";\"Rigaud\";\"main\"\n\"6122374\";\"Rimbey\";\"main\"\n\"6122707\";\"Rivers\";\"main\"\n\"6124931\";\"Rivière-Rouge\";\"main\"\n\"6124931\";\"Riviere-Rouge\";\"ascii\"\n\"6125653\";\"Roberval\";\"main\"\n\"6125862\";\"Roblin\";\"main\"\n\"6126749\";\"Rocky Mountain House\";\"main\"\n\"6127681\";\"Rosemère\";\"main\"\n\"6127681\";\"Rosemere\";\"ascii\"\n\"6127749\";\"Rosetown\";\"main\"\n\"6127950\";\"Rossland\";\"main\"\n\"6128008\";\"Rosthern\";\"main\"\n\"6128089\";\"Rougemont\";\"main\"\n\"6128577\";\"Rouyn-Noranda\";\"main\"\n\"6137063\";\"Sackville\";\"main\"\n\"6137270\";\"Saguenay\";\"main\"\n\"6137270\";\"sagune\";\"other\"\n\"6137270\";\"サグネ\";\"other\"\n\"6137361\";\"Saint-Alexis-des-Monts\";\"main\"\n\"6137381\";\"Saint-Ambroise\";\"main\"\n\"6137404\";\"Saint-André-Avellin\";\"main\"\n\"6137404\";\"Saint-Andre-Avellin\";\"ascii\"\n\"6137411\";\"Saint Andrews\";\"main\"\n\"6137462\";\"Saint-Augustin\";\"main\"\n\"6137489\";\"Saint-Basile-le-Grand\";\"main\"\n\"6137539\";\"Saint-Bruno-de-Guigues\";\"main\"\n\"6137540\";\"Saint-Bruno-de-Montarville\";\"main\"\n\"6137571\";\"Saint-Césaire\";\"main\"\n\"6137571\";\"Saint-Cesaire\";\"ascii\"\n\"6137631\";\"Saint-Côme--Linière\";\"main\"\n\"6137631\";\"Saint-Come--Liniere\";\"ascii\"\n\"6137633\";\"Saint-Constant\";\"main\"\n\"6137649\";\"Saint-Cyrille-de-Wendover\";\"main\"\n\"6137655\";\"Saint-Damase\";\"main\"\n\"6137676\";\"Saint-Denis-sur-Richelieu\";\"main\"\n\"6137696\";\"Sainte-Adèle\";\"main\"\n\"6137696\";\"Sainte-Adele\";\"ascii\"\n\"6137702\";\"Sainte-Agathe-des-Monts\";\"main\"\n\"6137733\";\"Sainte-Anne-de-Bellevue\";\"main\"\n\"6137749\";\"Sainte-Anne-des-Monts\";\"main\"\n\"6137753\";\"Sainte-Anne-des-Plaines\";\"main\"\n\"6137781\";\"Sainte-Catherine\";\"main\"\n\"6137941\";\"Sainte-Julie\";\"main\"\n\"6137947\";\"Sainte-Julienne\";\"main\"\n\"6138032\";\"Sainte-Marthe-sur-le-Lac\";\"main\"\n\"6138038\";\"Sainte-Martine\";\"main\"\n\"6138103\";\"Sainte-Sophie\";\"main\"\n\"6138118\";\"Sainte-Thècle\";\"main\"\n\"6138118\";\"Sainte-Thecle\";\"ascii\"\n\"6138121\";\"Sainte-Thérèse\";\"main\"\n\"6138121\";\"Sainte-Therese\";\"ascii\"\n\"6138175\";\"Saint-Eustache\";\"main\"\n\"6138201\";\"Saint-Félicien\";\"main\"\n\"6138201\";\"Saint-Felicien\";\"ascii\"\n\"6138212\";\"Saint-Félix-de-Valois\";\"main\"\n\"6138212\";\"Saint-Felix-de-Valois\";\"ascii\"\n\"6138260\";\"Saint-Gabriel\";\"main\"\n\"6138276\";\"Saint-Gédéon\";\"main\"\n\"6138276\";\"Saint-Gedeon\";\"ascii\"\n\"6138310\";\"Saint-Germain-de-Grantham\";\"main\"\n\"6138374\";\"Saint-Hyacinthe\";\"main\"\n\"6138374\";\"Sankt-Giacint\";\"other\"\n\"6138374\";\"Санкт-Гиацинт\";\"other\"\n\"6138413\";\"Saint-Jacques\";\"main\"\n\"6138495\";\"Saint-Jean-sur-Richelieu\";\"main\"\n\"6138495\";\"Sen-Zhan-sjur-Rishel'e\";\"other\"\n\"6138495\";\"Сен-Жан-сюр-Ришелье\";\"other\"\n\"6138501\";\"Saint-Jérôme\";\"main\"\n\"6138501\";\"Saint-Jerome\";\"ascii\"\n\"6138517\";\"Saint John\";\"main\"\n\"6138517\";\"Saint-Jean\";\"other\"\n\"6138517\";\"seinteujon\";\"other\"\n\"6138517\";\"sentojon\";\"other\"\n\"6138517\";\"セントジョン\";\"other\"\n\"6138517\";\"セント・ジョン\";\"other\"\n\"6138517\";\"세인트존\";\"other\"\n\"6138558\";\"Saint-Joseph-de-Coleraine\";\"main\"\n\"6138599\";\"Saint-Lambert\";\"main\"\n\"6138610\";\"Saint-Laurent\";\"main\"\n\"6138610\";\"Sen-Loran\";\"other\"\n\"6138610\";\"St Laurent\";\"other\"\n\"6138610\";\"Ville Saint-Laurent\";\"other\"\n\"6138610\";\"Ville St Laurent\";\"other\"\n\"6138610\";\"Сен-Лоран\";\"other\"\n\"6138617\";\"Saint-Lazare\";\"main\"\n\"6138643\";\"Saint-Lin--Laurentides\";\"main\"\n\"6138719\";\"Saint-Marc-des-Carrières\";\"main\"\n\"6138719\";\"Saint-Marc-des-Carrieres\";\"ascii\"\n\"6138733\";\"Saint-Martin\";\"main\"\n\"6138802\";\"Saint-Michel-des-Saints\";\"main\"\n\"6138914\";\"Saint-Pie\";\"main\"\n\"6138980\";\"Saint-Raymond\";\"main\"\n\"6138987\";\"Saint-Rémi\";\"main\"\n\"6138987\";\"Saint-Remi\";\"ascii\"\n\"6139045\";\"Saint-Sauveur\";\"main\"\n\"6139154\";\"Saint-Tite\";\"main\"\n\"6139289\";\"Salaberry-de-Valleyfield\";\"main\"\n\"6139354\";\"Salisbury\";\"main\"\n\"6139413\";\"Salmo\";\"main\"\n\"6139416\";\"Salmon Arm\";\"main\"\n\"6139416\";\"Sehlmon-Arm\";\"other\"\n\"6139416\";\"Сэлмон-Арм\";\"other\"\n\"6141190\";\"Sarnia\";\"main\"\n\"6141256\";\"Saskatoon\";\"main\"\n\"6141256\";\"Saskatun\";\"other\"\n\"6141256\";\"Saskatuno\";\"other\"\n\"6141256\";\"sasukato~un\";\"other\"\n\"6141256\";\"Саскатун\";\"other\"\n\"6141256\";\"サスカトゥーン\";\"other\"\n\"6141439\";\"Sault Ste. Marie\";\"main\"\n\"6143367\";\"Sechelt\";\"main\"\n\"6144054\";\"Selkirk\";\"main\"\n\"6144195\";\"Senneterre\";\"main\"\n\"6144312\";\"Sept-Îles\";\"main\"\n\"6144312\";\"Sept-Iles\";\"ascii\"\n\"6144312\";\"Set-Il'\";\"other\"\n\"6144312\";\"Сет-Иль\";\"other\"\n\"6144602\";\"Sexsmith\";\"main\"\n\"6145425\";\"Shaunavon\";\"main\"\n\"6145489\";\"Shawinigan\";\"main\"\n\"6145563\";\"Shawville\";\"main\"\n\"6145668\";\"Shediac\";\"main\"\n\"6145887\";\"Shelburne\";\"main\"\n\"6145890\";\"Shelburne\";\"main\"\n\"6145951\";\"Shellbrook\";\"main\"\n\"6146143\";\"Sherbrooke\";\"main\"\n\"6146143\";\"Sherbruk\";\"other\"\n\"6146143\";\"Шербрук\";\"other\"\n\"6146279\";\"Sherwood Park\";\"main\"\n\"6147353\";\"Sicamous\";\"main\"\n\"6149374\";\"Slave Lake\";\"main\"\n\"6149996\";\"Smithers\";\"main\"\n\"6150174\";\"Smiths Falls\";\"main\"\n\"6150293\";\"Smoky Lake\";\"main\"\n\"6151264\";\"Sooke\";\"main\"\n\"6151352\";\"Sorel-Tracy\";\"main\"\n\"6151352\";\"Sorel'-Trejsi\";\"other\"\n\"6151352\";\"Сорель-Трейси\";\"other\"\n\"6151455\";\"Souris\";\"main\"\n\"6151456\";\"Souris\";\"main\"\n\"6152561\";\"South River\";\"main\"\n\"6153766\";\"Spirit River\";\"main\"\n\"6154202\";\"Springhill\";\"main\"\n\"6154383\";\"Spruce Grove\";\"main\"\n\"6155033\";\"St. Albert\";\"main\"\n\"6155721\";\"St. Catharines\";\"main\"\n\"6155721\";\"Saint Catharines\";\"other\"\n\"6155721\";\"Sankta Katarino\";\"other\"\n\"6155721\";\"sentokyasarinzu\";\"other\"\n\"6155721\";\"セントキャサリンズ\";\"other\"\n\"6156102\";\"Steinbach\";\"main\"\n\"6156244\";\"Stephenville\";\"main\"\n\"6156245\";\"Stephenville Crossing\";\"main\"\n\"6156307\";\"Stettler\";\"main\"\n\"6157355\";\"Stonewall\";\"main\"\n\"6157536\";\"Stony Plain\";\"main\"\n\"6157977\";\"Stratford\";\"main\"\n\"6157977\";\"Стратфорд\";\"other\"\n\"6158023\";\"Strathmore\";\"main\"\n\"6158357\";\"St. Thomas\";\"main\"\n\"6159232\";\"Summerland\";\"main\"\n\"6159244\";\"Summerside\";\"main\"\n\"6159474\";\"Sundre\";\"main\"\n\"6159905\";\"Surrey\";\"main\"\n\"6159980\";\"Sussex\";\"main\"\n\"6160070\";\"Sutton\";\"main\"\n\"6160291\";\"Swan Hills\";\"main\"\n\"6160362\";\"Swan River\";\"main\"\n\"6160603\";\"Swift Current\";\"main\"\n\"6160806\";\"Sylvan Lake\";\"main\"\n\"6160919\";\"Taber\";\"main\"\n\"6162654\";\"Témiscaming\";\"main\"\n\"6162654\";\"Temiscaming\";\"ascii\"\n\"6162659\";\"Temiskaming Shores\";\"main\"\n\"6162949\";\"Terrace\";\"main\"\n\"6163012\";\"Terrebonne\";\"main\"\n\"6164499\";\"The Pas\";\"main\"\n\"6164831\";\"Thessalon\";\"main\"\n\"6165406\";\"Thompson\";\"main\"\n\"6165719\";\"Thorold\";\"main\"\n\"6165875\";\"Three Hills\";\"main\"\n\"6166142\";\"Thunder Bay\";\"main\"\n\"6166142\";\"Tander Bej\";\"other\"\n\"6166142\";\"Tander-Bej\";\"other\"\n\"6166142\";\"sandabei\";\"other\"\n\"6166142\";\"Тандер Бей\";\"other\"\n\"6166142\";\"Тандер-Бей\";\"other\"\n\"6166142\";\"サンダーベイ\";\"other\"\n\"6166224\";\"Thurso\";\"main\"\n\"6166739\";\"Timmins\";\"main\"\n\"6166987\";\"Tisdale\";\"main\"\n\"6167254\";\"Tofield\";\"main\"\n\"6167817\";\"Torbay\";\"main\"\n\"6167865\";\"Toronto\";\"main\"\n\"6167865\";\"Torontas\";\"other\"\n\"6167865\";\"Torontu\";\"other\"\n\"6167865\";\"Torontó\";\"other\"\n\"6167865\";\"YTO\";\"other\"\n\"6167865\";\"duo lun duo\";\"other\"\n\"6167865\";\"roranro\";\"other\"\n\"6167865\";\"tho rxn to\";\"other\"\n\"6167865\";\"tolonto\";\"other\"\n\"6167865\";\"toronto\";\"other\"\n\"6167865\";\"twrntw\";\"other\"\n\"6167865\";\"twrwntw\";\"other\"\n\"6167865\";\"Τορόντο\";\"other\"\n\"6167865\";\"Торонто\";\"other\"\n\"6167865\";\"טורונטו\";\"other\"\n\"6167865\";\"تورنتو\";\"other\"\n\"6167865\";\"تورونتو\";\"other\"\n\"6167865\";\"ரொறன்ரோ\";\"other\"\n\"6167865\";\"โทรอนโต\";\"other\"\n\"6167865\";\"トロント\";\"other\"\n\"6167865\";\"多伦多\";\"other\"\n\"6167865\";\"토론토\";\"other\"\n\"6168326\";\"Trail\";\"main\"\n\"6169141\";\"Trois-Rivières\";\"main\"\n\"6169141\";\"Trois-Rivieres\";\"ascii\"\n\"6169141\";\"Trua-Riv'er\";\"other\"\n\"6169141\";\"torowaribieru\";\"other\"\n\"6169141\";\"torowarivu~ieru\";\"other\"\n\"6169141\";\"Труа-Ривьер\";\"other\"\n\"6169141\";\"トロワリビエール\";\"other\"\n\"6169141\";\"トロワリヴィエール\";\"other\"\n\"6169587\";\"Truro\";\"main\"\n\"6171332\";\"Two Hills\";\"main\"\n\"6171633\";\"Ucluelet\";\"main\"\n\"6172009\";\"Unity\";\"main\"\n\"6172998\";\"Valcourt\";\"main\"\n\"6173001\";\"Val-David\";\"main\"\n\"6173012\";\"Val-des-Monts\";\"main\"\n\"6173017\";\"Val-d'Or\";\"main\"\n\"6173220\";\"Valleyview\";\"main\"\n\"6173331\";\"Vancouver\";\"main\"\n\"6173331\";\"Ban'kouber\";\"other\"\n\"6173331\";\"Vankuver\";\"other\"\n\"6173331\";\"Vankuvera\";\"other\"\n\"6173331\";\"Vankuvero\";\"other\"\n\"6173331\";\"Vankuvur\";\"other\"\n\"6173331\";\"Vankūvera\";\"other\"\n\"6173331\";\"baenkubeo\";\"other\"\n\"6173331\";\"bankuba\";\"other\"\n\"6173331\";\"bankuba shi\";\"other\"\n\"6173331\";\"wen ge hua\";\"other\"\n\"6173331\";\"wnkwwr\";\"other\"\n\"6173331\";\"brytysh klmbya\";\"other\"\n\"6173331\";\"wnqwbr\";\"other\"\n\"6173331\";\"Βανκούβερ\";\"other\"\n\"6173331\";\"Ванкувер\";\"other\"\n\"6173331\";\"Ванкувър\";\"other\"\n\"6173331\";\"ונקובר\";\"other\"\n\"6173331\";\"ونکوور\";\"other\"\n\"6173331\";\"ونکوور، بریتیش کلمبیا\";\"other\"\n\"6173331\";\"ۋېنكۇۋېر\";\"other\"\n\"6173331\";\"バンクーバー\";\"other\"\n\"6173331\";\"バンクーバー市\";\"other\"\n\"6173331\";\"溫哥華\";\"other\"\n\"6173331\";\"밴쿠버\";\"other\"\n\"6173361\";\"Vanderhoof\";\"main\"\n\"6173508\";\"Varennes\";\"main\"\n\"6173570\";\"Vaudreuil-Dorion\";\"main\"\n\"6173577\";\"Vaughan\";\"main\"\n\"6173635\";\"Vegreville\";\"main\"\n\"6173750\";\"Verchères\";\"main\"\n\"6173750\";\"Vercheres\";\"ascii\"\n\"6173801\";\"Vermilion\";\"main\"\n\"6173864\";\"Vernon\";\"main\"\n\"6174041\";\"Victoria\";\"main\"\n\"6174041\";\"Viktorija\";\"other\"\n\"6174041\";\"Viktorio\";\"other\"\n\"6174041\";\"bikutoria\";\"other\"\n\"6174041\";\"vu~ikutoria\";\"other\"\n\"6174041\";\"wei duo li ya\";\"other\"\n\"6174041\";\"wyqtwryh\";\"other\"\n\"6174041\";\"Виктория\";\"other\"\n\"6174041\";\"Викторија\";\"other\"\n\"6174041\";\"ויקטוריה\";\"other\"\n\"6174041\";\"ビクトリア\";\"other\"\n\"6174041\";\"ヴィクトリア\";\"other\"\n\"6174041\";\"維多利亞\";\"other\"\n\"6174151\";\"Victoriaville\";\"main\"\n\"6174254\";\"Viking\";\"main\"\n\"6174335\";\"Ville-Marie\";\"main\"\n\"6174457\";\"Virden\";\"main\"\n\"6174687\";\"Vulcan\";\"main\"\n\"6174727\";\"Wabana\";\"main\"\n\"6174914\";\"Wadena\";\"main\"\n\"6175059\";\"Wainwright\";\"main\"\n\"6175108\";\"Wakefield\";\"main\"\n\"6176226\";\"Warman\";\"main\"\n\"6176393\";\"Warwick\";\"main\"\n\"6176421\";\"Wasaga Beach\";\"main\"\n\"6176421\";\"Wasaga\";\"other\"\n\"6176821\";\"Waterloo\";\"main\"\n\"6176821\";\"Vaterloo\";\"other\"\n\"6176821\";\"Ватерлоо\";\"other\"\n\"6176823\";\"Waterloo\";\"main\"\n\"6176823\";\"Vaterloo\";\"other\"\n\"6176823\";\"Ватерлоо\";\"other\"\n\"6176928\";\"Watrous\";\"main\"\n\"6176992\";\"Watson Lake\";\"main\"\n\"6177869\";\"Welland\";\"main\"\n\"6178038\";\"Wembley\";\"main\"\n\"6179138\";\"Westlock\";\"main\"\n\"6179226\";\"Westmount\";\"main\"\n\"6179602\";\"Wetaskiwin\";\"main\"\n\"6179652\";\"Weyburn\";\"main\"\n\"6180144\";\"Whistler\";\"main\"\n\"6180144\";\"Whistler Village\";\"other\"\n\"6180266\";\"White City\";\"main\"\n\"6180285\";\"Whitecourt\";\"main\"\n\"6180550\";\"Whitehorse\";\"main\"\n\"6180550\";\"Equus Albus\";\"other\"\n\"6180550\";\"Uajtkhors\";\"other\"\n\"6180550\";\"Vajtkhors\";\"other\"\n\"6180550\";\"bai ma shi\";\"other\"\n\"6180550\";\"howaitohosu\";\"other\"\n\"6180550\";\"Вајтхорс\";\"other\"\n\"6180550\";\"Уайтхорс\";\"other\"\n\"6180550\";\"ホワイトホース\";\"other\"\n\"6180550\";\"白馬市\";\"other\"\n\"6180961\";\"White Rock\";\"main\"\n\"6182001\";\"Wilkie\";\"main\"\n\"6182212\";\"Williams Lake\";\"main\"\n\"6182958\";\"Windsor\";\"main\"\n\"6182958\";\"Vindzor\";\"other\"\n\"6182958\";\"Виндзор\";\"other\"\n\"6182959\";\"Windsor\";\"main\"\n\"6182959\";\"Vindzor\";\"other\"\n\"6182959\";\"Виндзор\";\"other\"\n\"6182962\";\"Windsor\";\"main\"\n\"6182962\";\"Vindzor\";\"other\"\n\"6182962\";\"uinza\";\"other\"\n\"6182962\";\"u~inza\";\"other\"\n\"6182962\";\"wen sha\";\"other\"\n\"6182962\";\"wyndzwr\";\"other\"\n\"6182962\";\"Виндзор\";\"other\"\n\"6182962\";\"ویندزور\";\"other\"\n\"6182962\";\"ウィンザー\";\"other\"\n\"6182962\";\"ウインザー\";\"other\"\n\"6182962\";\"温莎\";\"other\"\n\"6183141\";\"Wingham\";\"main\"\n\"6183204\";\"Winkler\";\"main\"\n\"6183235\";\"Winnipeg\";\"main\"\n\"6183235\";\"Vinipeg\";\"other\"\n\"6183235\";\"Vinipego\";\"other\"\n\"6183235\";\"Vinnipeg\";\"other\"\n\"6183235\";\"WPG\";\"other\"\n\"6183235\";\"Winnipeg City\";\"other\"\n\"6183235\";\"u~inipegu\";\"other\"\n\"6183235\";\"wen ni bo\";\"other\"\n\"6183235\";\"wynypg\";\"other\"\n\"6183235\";\"Винипег\";\"other\"\n\"6183235\";\"Виннипег\";\"other\"\n\"6183235\";\"Вінніпег\";\"other\"\n\"6183235\";\"Вінніпеґ\";\"other\"\n\"6183235\";\"ויניפג\";\"other\"\n\"6183235\";\"وینیپگ\";\"other\"\n\"6183235\";\"ウィニペグ\";\"other\"\n\"6183235\";\"温尼伯\";\"other\"\n\"6183858\";\"Wolfville\";\"main\"\n\"6184365\";\"Woodstock\";\"main\"\n\"6184365\";\"Vudstok\";\"other\"\n\"6184365\";\"Вудсток\";\"other\"\n\"6185021\";\"Wynyard\";\"main\"\n\"6185138\";\"Yamachiche\";\"main\"\n\"6185217\";\"Yarmouth\";\"main\"\n\"6185377\";\"Yellowknife\";\"main\"\n\"6185377\";\"Cultellus Flavus\";\"other\"\n\"6185377\";\"ieronaifu\";\"other\"\n\"6185377\";\"ye luo na fu\";\"other\"\n\"6185377\";\"yellonaipeu\";\"other\"\n\"6185377\";\"イエローナイフ\";\"other\"\n\"6185377\";\"耶罗纳夫\";\"other\"\n\"6185377\";\"옐로나이프\";\"other\"\n\"6185607\";\"Yorkton\";\"main\"\n\"6295855\";\"Beauceville\";\"main\"\n\"6295855\";\"CWHV\";\"other\"\n\"6324729\";\"Halifax\";\"main\"\n\"6324729\";\"Galifaks\";\"other\"\n\"6324729\";\"Галифакс\";\"other\"\n\"6324733\";\"St. John's\";\"main\"\n\"6324733\";\"Saint John's\";\"other\"\n\"6324733\";\"Sent-Dzhons\";\"other\"\n\"6324733\";\"St Johns\";\"other\"\n\"6324733\";\"Сент-Джонс\";\"other\"\n\"6325479\";\"Beaupré\";\"main\"\n\"6325479\";\"Beaupre\";\"ascii\"\n\"6325486\";\"Château-Richer\";\"main\"\n\"6325486\";\"Chateau-Richer\";\"ascii\"\n\"6325494\";\"Québec\";\"main\"\n\"6325494\";\"Quebec\";\"ascii\"\n\"6325494\";\"Kvebek\";\"other\"\n\"6325494\";\"Quebec City\";\"other\"\n\"6325494\";\"Ville de Quebec\";\"other\"\n\"6325494\";\"Ville de Québec\";\"other\"\n\"6325494\";\"Квебек\";\"other\"\n\"6325521\";\"Lévis\";\"main\"\n\"6325521\";\"Levis\";\"ascii\"\n\"6325529\";\"Montmagny\";\"main\"\n\"6325572\";\"Neuville\";\"main\"\n\"6354895\";\"Rimouski\";\"main\"\n\"6354897\";\"Rivière-du-Loup\";\"main\"\n\"6354897\";\"Riviere-du-Loup\";\"ascii\"\n\"6354908\";\"Sydney\";\"main\"\n\"6354950\";\"Tofino\";\"main\"\n\"6354950\";\"Тофино\";\"other\"\n\"6534203\";\"L'Ancienne-Lorette\";\"main\"\n\"6545023\";\"Edmundston\";\"main\"\n\"6639619\";\"Sainte Catherine de la Jacques Cartier\";\"main\"\n\"6690232\";\"Baie-Saint-Paul\";\"main\"\n\"6693777\";\"Carleton-sur-Mer\";\"main\"\n\"6696258\";\"Campbellton\";\"main\"\n\"6696259\";\"Bathurst\";\"main\"\n\"6696260\";\"Matane\";\"main\"\n\"6942553\";\"Paris\";\"main\"\n\"6943488\";\"Amqui\";\"main\"\n\"6943811\";\"Chandler\";\"main\"\n\"6943825\";\"Bonaventure\";\"main\"\n\"6943826\";\"New-Richmond\";\"main\"\n\"6943827\";\"Thetford-Mines\";\"main\"\n\"6944109\";\"Cabano\";\"main\"\n\"6944112\";\"Forestville\";\"main\"\n\"6944113\";\"Mont-Joli\";\"main\"\n\"6945986\";\"La Malbaie\";\"main\"\n\"6945989\";\"Sainte-Marie\";\"main\"\n\"6945991\";\"Plessisville\";\"main\"\n\"7116273\";\"Fossambault-sur-lac\";\"main\"\n\"7280414\";\"Cole Harbour\";\"main\"\n\"7281936\";\"West Kelowna\";\"main\"\n\"7281936\";\"District of West Kelowna\";\"other\"\n\"7302644\";\"Tracadie-Sheila\";\"main\"\n\"7302647\";\"Bellechasse Regional County Municipality\";\"main\"\n\"7302647\";\"Bellechasse\";\"other\"\n\"7303198\";\"Lake Louise\";\"main\"\n\"7303198\";\"Lehjk-Luiz\";\"other\"\n\"7303198\";\"Лэйк-Луиз\";\"other\"\n\"7303783\";\"Sydney Mines\";\"main\"\n\"7303786\";\"Jonquière\";\"main\"\n\"7303786\";\"Jonquiere\";\"ascii\"\n\"7535673\";\"Cap-Santé\";\"main\"\n\"7535673\";\"Cap-Sante\";\"ascii\"\n\"7535681\";\"Saint-Augustin-de-Desmaures\";\"main\"\n\"7535690\";\"Donnacona\";\"main\"\n\"7535692\";\"La Pocatière\";\"main\"\n\"7535692\";\"La Pocatiere\";\"ascii\"\n\"7535693\";\"Saint-Joseph-de-Beauce\";\"main\"\n\"7535694\";\"Métabetchouan–Lac-à-la-Croix\";\"main\"\n\"7535694\";\"Metabetchouan–Lac-a-la-Croix\";\"ascii\"\n\"7304591\";\"West Island\";\"main\"\n\"203717\";\"Yangambi\";\"main\"\n\"204283\";\"Watsa\";\"main\"\n\"204318\";\"Wamba\";\"main\"\n\"204405\";\"Uvira\";\"main\"\n\"204405\";\"Uvinza\";\"other\"\n\"204405\";\"Увира\";\"other\"\n\"204953\";\"Tshikapa\";\"main\"\n\"204953\";\"Chikapa\";\"other\"\n\"204953\";\"Чикапа\";\"other\"\n\"207570\";\"Mwene-Ditu\";\"main\"\n\"207570\";\"Mvene-Ditu\";\"other\"\n\"207570\";\"Мвене-Диту\";\"other\"\n\"207596\";\"Mweka\";\"main\"\n\"207596\";\"Mueka\";\"other\"\n\"207596\";\"Mveka\";\"other\"\n\"207596\";\"Мвека\";\"other\"\n\"209228\";\"Mbuji-Mayi\";\"main\"\n\"209228\";\"Bakwanga\";\"other\"\n\"209228\";\"Mbuy Mayi\";\"other\"\n\"209228\";\"Mbuzhi-Maji\";\"other\"\n\"209228\";\"Мбужи-Майи\";\"other\"\n\"210379\";\"Lusambo\";\"main\"\n\"210379\";\"Luzambo\";\"other\"\n\"210379\";\"Лусамбо\";\"other\"\n\"210939\";\"Luebo\";\"main\"\n\"211098\";\"Lubao\";\"main\"\n\"211098\";\"Senteri\";\"other\"\n\"211098\";\"Sentiry\";\"other\"\n\"211647\";\"Lodja\";\"main\"\n\"211647\";\"Lodzh\";\"other\"\n\"211647\";\"Loja\";\"other\"\n\"211647\";\"Лодж\";\"other\"\n\"211734\";\"Lisala\";\"main\"\n\"211734\";\"Lisale\";\"other\"\n\"211734\";\"Lizala\";\"other\"\n\"211734\";\"Лисале\";\"other\"\n\"212360\";\"Kongolo\";\"main\"\n\"212360\";\"Kangolo\";\"other\"\n\"212360\";\"Конголо\";\"other\"\n\"212730\";\"Kisangani\";\"main\"\n\"212730\";\"Singitini\";\"other\"\n\"212730\";\"Stanleystad\";\"other\"\n\"212730\";\"ji sang jia ni\";\"other\"\n\"212730\";\"kisangani\";\"other\"\n\"212730\";\"Кисангани\";\"other\"\n\"212730\";\"キサンガニ\";\"other\"\n\"212730\";\"基桑加尼\";\"other\"\n\"212902\";\"Kindu\";\"main\"\n\"212902\";\"Kindu-Port-Empain\";\"other\"\n\"212902\";\"Port de Kindu\";\"other\"\n\"212902\";\"Port-Empain\";\"other\"\n\"212902\";\"Кинду\";\"other\"\n\"213940\";\"Kasongo\";\"main\"\n\"213940\";\"Kazongo\";\"other\"\n\"213940\";\"Tongoni\";\"other\"\n\"213940\";\"Tongoni Kapaya\";\"other\"\n\"213940\";\"Касонго\";\"other\"\n\"214389\";\"Kaniama\";\"main\"\n\"214481\";\"Kananga\";\"main\"\n\"214481\";\"Kanange\";\"other\"\n\"214481\";\"Lulua\";\"other\"\n\"214481\";\"Luluabourg\";\"other\"\n\"214481\";\"Кананга\";\"other\"\n\"214575\";\"Kampene\";\"main\"\n\"214614\";\"Kamina\";\"main\"\n\"214614\";\"Kaminy\";\"other\"\n\"214614\";\"Камины\";\"other\"\n\"214974\";\"Kalemie\";\"main\"\n\"214974\";\"Albertstad\";\"other\"\n\"214974\";\"Albertville\";\"other\"\n\"214974\";\"Kalemi\";\"other\"\n\"214974\";\"Калеми\";\"other\"\n\"215527\";\"Kabinda\";\"main\"\n\"215605\";\"Kabare\";\"main\"\n\"215668\";\"Kabalo\";\"main\"\n\"215771\";\"Isiro\";\"main\"\n\"215771\";\"Isirio\";\"other\"\n\"215771\";\"Paulis\";\"other\"\n\"215771\";\"Исиро\";\"other\"\n\"215976\";\"Ilebo\";\"main\"\n\"215976\";\"Franqui\";\"other\"\n\"215976\";\"Port-Francqui\";\"other\"\n\"215976\";\"Илебо\";\"other\"\n\"216281\";\"Goma\";\"main\"\n\"216281\";\"Ngoma\";\"other\"\n\"216281\";\"Гома\";\"other\"\n\"216404\";\"Gbadolite\";\"main\"\n\"216404\";\"Bado\";\"other\"\n\"216404\";\"Badolite\";\"other\"\n\"216404\";\"Гбадолите\";\"other\"\n\"216449\";\"Gandajika\";\"main\"\n\"217389\";\"Demba\";\"main\"\n\"217562\";\"Butembo\";\"main\"\n\"217562\";\"Бутембо\";\"other\"\n\"217570\";\"Buta\";\"main\"\n\"217570\";\"But\";\"other\"\n\"217570\";\"Бут\";\"other\"\n\"217637\";\"Businga\";\"main\"\n\"217695\";\"Bunia\";\"main\"\n\"217695\";\"Буниа\";\"other\"\n\"217745\";\"Bumba\";\"main\"\n\"217745\";\"Бумба\";\"other\"\n\"217831\";\"Bukavu\";\"main\"\n\"217831\";\"Costermansstad\";\"other\"\n\"217831\";\"Costermansville\";\"other\"\n\"217831\";\"Букаву\";\"other\"\n\"217834\";\"Bukama\";\"main\"\n\"218229\";\"Bongandanga\";\"main\"\n\"218253\";\"Bondo\";\"main\"\n\"218680\";\"Boende\";\"main\"\n\"219057\";\"Beni\";\"main\"\n\"219057\";\"Бени\";\"other\"\n\"219414\";\"Basoko\";\"main\"\n\"220448\";\"Aketi\";\"main\"\n\"220448\";\"Port Chaltin\";\"other\"\n\"922704\";\"Lubumbashi\";\"main\"\n\"922704\";\"E'ville\";\"other\"\n\"922704\";\"Elisabethville\";\"other\"\n\"922704\";\"Elizabethstad\";\"other\"\n\"922704\";\"Elizabethville\";\"other\"\n\"922704\";\"E’ville\";\"other\"\n\"922704\";\"Lubumbasi\";\"other\"\n\"922704\";\"Lubumbasis\";\"other\"\n\"922704\";\"Lubumbaši\";\"other\"\n\"922704\";\"Lubumbašis\";\"other\"\n\"922704\";\"Lumumbashi\";\"other\"\n\"922704\";\"lu ben ba xi\";\"other\"\n\"922704\";\"lubumbasi\";\"other\"\n\"922704\";\"lubumbasi si\";\"other\"\n\"922704\";\"lwbwmbashy\";\"other\"\n\"922704\";\"rubunbashi\";\"other\"\n\"922704\";\"Élisabethville\";\"other\"\n\"922704\";\"Лубумбаши\";\"other\"\n\"922704\";\"لوبومباشي\";\"other\"\n\"922704\";\"ルブンバシ\";\"other\"\n\"922704\";\"盧本巴希\";\"other\"\n\"922704\";\"루붐바시\";\"other\"\n\"922704\";\"루붐바시 시\";\"other\"\n\"922741\";\"Likasi\";\"main\"\n\"922741\";\"Jadotsville\";\"other\"\n\"922741\";\"Jadotville\";\"other\"\n\"922741\";\"Ликаси\";\"other\"\n\"922773\";\"Kolwezi\";\"main\"\n\"922773\";\"Kolvezi\";\"other\"\n\"922773\";\"Колвези\";\"other\"\n\"922806\";\"Kipushi\";\"main\"\n\"922806\";\"Кипуши\";\"other\"\n\"923058\";\"Kambove\";\"main\"\n\"2311127\";\"Tshela\";\"main\"\n\"2311968\";\"Nioki\";\"main\"\n\"2312249\";\"Mushie\";\"main\"\n\"2312888\";\"Mbanza-Ngungu\";\"main\"\n\"2312888\";\"Thystad\";\"other\"\n\"2312888\";\"Thysville\";\"other\"\n\"2312888\";\"Мбанза-Нгунгу\";\"other\"\n\"2312895\";\"Mbandaka\";\"main\"\n\"2312895\";\"Bandaka\";\"other\"\n\"2312895\";\"Cocquilhatville\";\"other\"\n\"2312895\";\"Coquilhalville\";\"other\"\n\"2312895\";\"Coquilhatstad\";\"other\"\n\"2312895\";\"Coquilhatville\";\"other\"\n\"2312895\";\"Mbándáká\";\"other\"\n\"2312895\";\"Wangata\";\"other\"\n\"2312895\";\"Мбандака\";\"other\"\n\"2313002\";\"Matadi\";\"main\"\n\"2313002\";\"Matidi\";\"other\"\n\"2313002\";\"matadi\";\"other\"\n\"2313002\";\"Матади\";\"other\"\n\"2313002\";\"מאטדי\";\"other\"\n\"2313002\";\"マタディ\";\"other\"\n\"2313084\";\"Mangai\";\"main\"\n\"2313762\";\"Libenge\";\"main\"\n\"2314302\";\"Kinshasa\";\"main\"\n\"2314302\";\"Kinsasa\";\"other\"\n\"2314302\";\"Kinsaso\";\"other\"\n\"2314302\";\"Kinshasae\";\"other\"\n\"2314302\";\"Kinszasa\";\"other\"\n\"2314302\";\"Kinsásá\";\"other\"\n\"2314302\";\"Kinŝaso\";\"other\"\n\"2314302\";\"Kinšasa\";\"other\"\n\"2314302\";\"Leopoldstad\";\"other\"\n\"2314302\";\"Leopoldville\";\"other\"\n\"2314302\";\"Léopoldville\";\"other\"\n\"2314302\";\"jin xia sha\";\"other\"\n\"2314302\";\"kinshasa\";\"other\"\n\"2314302\";\"kinsyasa\";\"other\"\n\"2314302\";\"kynshasa\";\"other\"\n\"2314302\";\"kynshaza\";\"other\"\n\"2314302\";\"Киншасæ\";\"other\"\n\"2314302\";\"Киншаса\";\"other\"\n\"2314302\";\"קינשאסה\";\"other\"\n\"2314302\";\"كينشاسا\";\"other\"\n\"2314302\";\"کینشازا\";\"other\"\n\"2314302\";\"ኪንሻሳ\";\"other\"\n\"2314302\";\"キンシャサ\";\"other\"\n\"2314302\";\"金夏沙\";\"other\"\n\"2314302\";\"킨샤사\";\"other\"\n\"2314705\";\"Kikwit\";\"main\"\n\"2314705\";\"Kikvite\";\"other\"\n\"2314705\";\"Kitwit\";\"other\"\n\"2314705\";\"Киквите\";\"other\"\n\"2315026\";\"Kasongo-Lunda\";\"main\"\n\"2315057\";\"Kasangulu\";\"main\"\n\"2315417\";\"Inongo\";\"main\"\n\"2315728\";\"Gemena\";\"main\"\n\"2315728\";\"Gemene\";\"other\"\n\"2315728\";\"Гемене\";\"other\"\n\"2316259\";\"Bulungu\";\"main\"\n\"2316473\";\"Bosobolo\";\"main\"\n\"2316748\";\"Bolobo\";\"main\"\n\"2317397\";\"Bandundu\";\"main\"\n\"2317397\";\"Banningville\";\"other\"\n\"2317397\";\"Бандунду\";\"other\"\n\"2593460\";\"Masina\";\"main\"\n\"236524\";\"Rafaï\";\"main\"\n\"236524\";\"Rafai\";\"ascii\"\n\"236844\";\"Ouango\";\"main\"\n\"236844\";\"Quango\";\"other\"\n\"236844\";\"Uango\";\"other\"\n\"236901\";\"Ouadda\";\"main\"\n\"236901\";\"Quadda\";\"other\"\n\"236901\";\"Uadda\";\"other\"\n\"236950\";\"Obo\";\"main\"\n\"237379\";\"Ndélé\";\"main\"\n\"237379\";\"Ndele\";\"ascii\"\n\"237379\";\"N'Delle\";\"other\"\n\"237379\";\"Nadele\";\"other\"\n\"237379\";\"Nadélé\";\"other\"\n\"237379\";\"N’Delle\";\"other\"\n\"237478\";\"Mobaye\";\"main\"\n\"237478\";\"Mobie\";\"other\"\n\"238373\";\"Kembé\";\"main\"\n\"238373\";\"Kembe\";\"ascii\"\n\"238566\";\"Ippy\";\"main\"\n\"238566\";\"Ippi\";\"other\"\n\"239300\";\"Gambo\";\"main\"\n\"239899\";\"Bria\";\"main\"\n\"239899\";\"Бриа\";\"other\"\n\"240210\";\"Birao\";\"main\"\n\"240498\";\"Bangassou\";\"main\"\n\"240498\";\"Bangassu\";\"other\"\n\"240498\";\"Bangasu\";\"other\"\n\"240498\";\"Бангасу\";\"other\"\n\"240604\";\"Bambari\";\"main\"\n\"240604\";\"Бамбари\";\"other\"\n\"240999\";\"Alindao\";\"main\"\n\"240999\";\"Alinda\";\"other\"\n\"240999\";\"Alindo\";\"other\"\n\"2383119\";\"Sibut\";\"main\"\n\"2383119\";\"Fort-Sibut\";\"other\"\n\"2383119\";\"Сибут\";\"other\"\n\"2383523\";\"Paoua\";\"main\"\n\"2383523\";\"Pahua\";\"other\"\n\"2383827\";\"Nola\";\"main\"\n\"2383827\";\"Djembe\";\"other\"\n\"2384377\";\"Mongoumba\";\"main\"\n\"2384770\";\"Mbaïki\";\"main\"\n\"2384770\";\"Mbaiki\";\"ascii\"\n\"2385535\";\"Kouango\";\"main\"\n\"2385535\";\"Kuango\";\"other\"\n\"2386012\";\"Kaga Bandoro\";\"main\"\n\"2386012\";\"Crampel\";\"other\"\n\"2386012\";\"Fort-Crampel\";\"other\"\n\"2386012\";\"Kaga-Bandoro\";\"other\"\n\"2386042\";\"Kabo\";\"main\"\n\"2386756\";\"Gamboula\";\"main\"\n\"2386756\";\"Gamoula\";\"other\"\n\"2387435\";\"Damara\";\"main\"\n\"2387435\";\"Дамара\";\"other\"\n\"2387495\";\"Carnot\";\"main\"\n\"2387546\";\"Bozoum\";\"main\"\n\"2387546\";\"Bosum\";\"other\"\n\"2387546\";\"Bozum\";\"other\"\n\"2387546\";\"Bozume\";\"other\"\n\"2387546\";\"Бозуме\";\"other\"\n\"2387890\";\"Bouca\";\"main\"\n\"2387890\";\"Bouka\";\"other\"\n\"2387890\";\"Buka\";\"other\"\n\"2387926\";\"Bouar\";\"main\"\n\"2387926\";\"Buar\";\"other\"\n\"2387926\";\"Buare\";\"other\"\n\"2387926\";\"Буаре\";\"other\"\n\"2388036\";\"Bossangoa\";\"main\"\n\"2388036\";\"Amangba\";\"other\"\n\"2388036\";\"Bosangoa\";\"other\"\n\"2388036\";\"Bossango\";\"other\"\n\"2388036\";\"Босангоа\";\"other\"\n\"2388614\";\"Boda\";\"main\"\n\"2388720\";\"Boali\";\"main\"\n\"2388720\";\"Bouali\";\"other\"\n\"2388873\";\"Bimbo\";\"main\"\n\"2388873\";\"Bimo\";\"other\"\n\"2389086\";\"Berbérati\";\"main\"\n\"2389086\";\"Berberati\";\"ascii\"\n\"2389086\";\"Берберати\";\"other\"\n\"2389691\";\"Batangafo\";\"main\"\n\"2389691\";\"Devo\";\"other\"\n\"2389691\";\"Dévo\";\"other\"\n\"2389804\";\"Baoro\";\"main\"\n\"2389804\";\"Baoro-Boubangoui\";\"other\"\n\"2389804\";\"Baoro-Boudinghe\";\"other\"\n\"2389804\";\"Baoro-Boudinghé\";\"other\"\n\"2389853\";\"Bangui\";\"main\"\n\"2389853\";\"Bangi\";\"other\"\n\"2389853\";\"Bangis\";\"other\"\n\"2389853\";\"Mpan'nkoui\";\"other\"\n\"2389853\";\"ban ji\";\"other\"\n\"2389853\";\"bang-gi\";\"other\"\n\"2389853\";\"bangi\";\"other\"\n\"2389853\";\"bangwyy\";\"other\"\n\"2389853\";\"Μπανγκουί\";\"other\"\n\"2389853\";\"Банги\";\"other\"\n\"2389853\";\"Бангі\";\"other\"\n\"2389853\";\"בנגואי\";\"other\"\n\"2389853\";\"بانگوئی\";\"other\"\n\"2389853\";\"ባንጊ\";\"other\"\n\"2389853\";\"バンギ\";\"other\"\n\"2389853\";\"班基\";\"other\"\n\"2389853\";\"방기\";\"other\"\n\"2255285\";\"Sibiti\";\"main\"\n\"2255285\";\"Sibidi\";\"other\"\n\"2255304\";\"Sémbé\";\"main\"\n\"2255304\";\"Sembe\";\"ascii\"\n\"2255304\";\"Ssembe\";\"other\"\n\"2255414\";\"Pointe-Noire\";\"main\"\n\"2255414\";\"Puehnt-Nuar\";\"other\"\n\"2255414\";\"Puent Nuaras\";\"other\"\n\"2255414\";\"puaengteunualeu\";\"other\"\n\"2255414\";\"Пуэнт-Нуар\";\"other\"\n\"2255414\";\"푸앵트누아르\";\"other\"\n\"2255542\";\"Owando\";\"main\"\n\"2255542\";\"Fort Pousset\";\"other\"\n\"2255542\";\"Fort-Rousset\";\"other\"\n\"2255542\";\"Ouando\";\"other\"\n\"2255542\";\"Ovando\";\"other\"\n\"2255542\";\"Овандо\";\"other\"\n\"2255564\";\"Ouésso\";\"main\"\n\"2255564\";\"Ouesso\";\"ascii\"\n\"2256895\";\"Mossendjo\";\"main\"\n\"2256895\";\"Massendjo\";\"other\"\n\"2256895\";\"Mossendio\";\"other\"\n\"2257879\";\"Makoua\";\"main\"\n\"2257879\";\"Makoue\";\"other\"\n\"2257990\";\"Madingou\";\"main\"\n\"2257990\";\"Madingo\";\"other\"\n\"2257990\";\"Madingu\";\"other\"\n\"2257990\";\"Мадингу\";\"other\"\n\"2258261\";\"Dolisie\";\"main\"\n\"2258261\";\"Dolisi\";\"other\"\n\"2258261\";\"Dolosie\";\"other\"\n\"2258261\";\"Loubomo\";\"other\"\n\"2258261\";\"Долиси\";\"other\"\n\"2258378\";\"Loandjili\";\"main\"\n\"2258378\";\"Louantili\";\"other\"\n\"2258984\";\"Kinkala\";\"main\"\n\"2259383\";\"Kayes\";\"main\"\n\"2259383\";\"Jacob\";\"other\"\n\"2259383\";\"Kai\";\"other\"\n\"2259383\";\"Kajes\";\"other\"\n\"2259383\";\"Kaye\";\"other\"\n\"2259383\";\"Kaï\";\"other\"\n\"2259383\";\"Nkayi\";\"other\"\n\"2259383\";\"Кайес\";\"other\"\n\"2259655\";\"Impfondo\";\"main\"\n\"2259655\";\"Desbordesville\";\"other\"\n\"2259655\";\"Imponfo\";\"other\"\n\"2259655\";\"Импфондо\";\"other\"\n\"2259947\";\"Gamboma\";\"main\"\n\"2260009\";\"Ewo\";\"main\"\n\"2260009\";\"Eouo\";\"other\"\n\"2260401\";\"Djambala\";\"main\"\n\"2260401\";\"Dambala\";\"other\"\n\"2260401\";\"Djamballa\";\"other\"\n\"2260535\";\"Brazzaville\";\"main\"\n\"2260535\";\"Braza\";\"other\"\n\"2260535\";\"Brazavil\";\"other\"\n\"2260535\";\"Brazavilis\";\"other\"\n\"2260535\";\"Brazavilo\";\"other\"\n\"2260535\";\"Brazzavil'\";\"other\"\n\"2260535\";\"Maya-Maya\";\"other\"\n\"2260535\";\"Mprazabil\";\"other\"\n\"2260535\";\"N'Tamo\";\"other\"\n\"2260535\";\"beulajabil\";\"other\"\n\"2260535\";\"brazafyl\";\"other\"\n\"2260535\";\"brazawyl\";\"other\"\n\"2260535\";\"brzwwyl\";\"other\"\n\"2260535\";\"bu la chai wei er\";\"other\"\n\"2260535\";\"burazavu~iru\";\"other\"\n\"2260535\";\"Μπραζαβίλ\";\"other\"\n\"2260535\";\"Браззавиль\";\"other\"\n\"2260535\";\"ברזוויל\";\"other\"\n\"2260535\";\"برازافيل\";\"other\"\n\"2260535\";\"برازاویل\";\"other\"\n\"2260535\";\"ብራዛቪል\";\"other\"\n\"2260535\";\"ブラザヴィル\";\"other\"\n\"2260535\";\"布拉柴维尔\";\"other\"\n\"2260535\";\"브라자빌\";\"other\"\n\"2657886\";\"Zwingen\";\"main\"\n\"2657887\";\"Zweisimmen\";\"main\"\n\"2657889\";\"Zuzwil\";\"main\"\n\"2657891\";\"Bad Zurzach\";\"main\"\n\"2657891\";\"Zurzach\";\"other\"\n\"2657896\";\"Zürich\";\"main\"\n\"2657896\";\"Zurich\";\"ascii\"\n\"2657896\";\"Canton Zuricu\";\"other\"\n\"2657896\";\"Canton Zurìcu\";\"other\"\n\"2657896\";\"Cirihe\";\"other\"\n\"2657896\";\"Cirikh\";\"other\"\n\"2657896\";\"Ciurichas\";\"other\"\n\"2657896\";\"Ciūrichas\";\"other\"\n\"2657896\";\"Cjurikh\";\"other\"\n\"2657896\";\"Cjurykh\";\"other\"\n\"2657896\";\"Curych\";\"other\"\n\"2657896\";\"Cīrihe\";\"other\"\n\"2657896\";\"Lungsod ng Zuerich\";\"other\"\n\"2657896\";\"Lungsod ng Zürich\";\"other\"\n\"2657896\";\"Tsurique\";\"other\"\n\"2657896\";\"Turicum\";\"other\"\n\"2657896\";\"Turitg\";\"other\"\n\"2657896\";\"Zuerich\";\"other\"\n\"2657896\";\"Zuerih\";\"other\"\n\"2657896\";\"Zuric\";\"other\"\n\"2657896\";\"Zuricu\";\"other\"\n\"2657896\";\"Zurigo\";\"other\"\n\"2657896\";\"Zuriko\";\"other\"\n\"2657896\";\"Zurique\";\"other\"\n\"2657896\";\"Zurych\";\"other\"\n\"2657896\";\"Zurìcu\";\"other\"\n\"2657896\";\"Zyriche\";\"other\"\n\"2657896\";\"Zúrich\";\"other\"\n\"2657896\";\"Zürih\";\"other\"\n\"2657896\";\"churihhi\";\"other\"\n\"2657896\";\"chwilihi\";\"other\"\n\"2657896\";\"su li shi\";\"other\"\n\"2657896\";\"sywrsh\";\"other\"\n\"2657896\";\"zyryk\";\"other\"\n\"2657896\";\"zyurikha\";\"other\"\n\"2657896\";\"zywrh\";\"other\"\n\"2657896\";\"zywrkh\";\"other\"\n\"2657896\";\"Ζυρίχη\";\"other\"\n\"2657896\";\"Цирих\";\"other\"\n\"2657896\";\"Цюрих\";\"other\"\n\"2657896\";\"Цюрых\";\"other\"\n\"2657896\";\"ציריך\";\"other\"\n\"2657896\";\"زيورخ\";\"other\"\n\"2657896\";\"سيۇرىخ\";\"other\"\n\"2657896\";\"ܙܝܘܪܚ\";\"other\"\n\"2657896\";\"ܨܝܘܪܫ\";\"other\"\n\"2657896\";\"ज़्यूरिख\";\"other\"\n\"2657896\";\"チューリッヒ\";\"other\"\n\"2657896\";\"苏黎世\";\"other\"\n\"2657896\";\"취리히\";\"other\"\n\"2657898\";\"Zuoz\";\"main\"\n\"2657899\";\"Zunzgen\";\"main\"\n\"2657900\";\"Zumikon\";\"main\"\n\"2657908\";\"Zug\";\"main\"\n\"2657908\";\"Cug\";\"other\"\n\"2657908\";\"Tugium\";\"other\"\n\"2657908\";\"Zoug\";\"other\"\n\"2657908\";\"Zugo\";\"other\"\n\"2657908\";\"Цуг\";\"other\"\n\"2657910\";\"Zuchwil\";\"main\"\n\"2657912\";\"Zollikon\";\"main\"\n\"2657913\";\"Zollikofen\";\"main\"\n\"2657915\";\"Zofingen\";\"main\"\n\"2657916\";\"Zizers\";\"main\"\n\"2657926\";\"Zernez\";\"main\"\n\"2657926\";\"Zernes\";\"other\"\n\"2657928\";\"Zermatt\";\"main\"\n\"2657928\";\"Cermat\";\"other\"\n\"2657928\";\"Prat-Borgno\";\"other\"\n\"2657928\";\"Prât-Borgno\";\"other\"\n\"2657928\";\"cai er ma te\";\"other\"\n\"2657928\";\"tsu~erumatto\";\"other\"\n\"2657928\";\"zrmt\";\"other\"\n\"2657928\";\"zyrmat\";\"other\"\n\"2657928\";\"Цермат\";\"other\"\n\"2657928\";\"צרמט\";\"other\"\n\"2657928\";\"زيرمات\";\"other\"\n\"2657928\";\"ツェルマット\";\"other\"\n\"2657928\";\"采尔马特\";\"other\"\n\"2657931\";\"Zell\";\"main\"\n\"2657935\";\"Zäziwil\";\"main\"\n\"2657935\";\"Zaziwil\";\"ascii\"\n\"2657940\";\"Yvonand\";\"main\"\n\"2657941\";\"Yverdon-les-Bains\";\"main\"\n\"2657941\";\"Iverdon-le-Ben\";\"other\"\n\"2657941\";\"Yverden\";\"other\"\n\"2657941\";\"Yverdon\";\"other\"\n\"2657941\";\"Ивердон-ле-Бен\";\"other\"\n\"2657943\";\"Wyssachen\";\"main\"\n\"2657944\";\"Wynigen\";\"main\"\n\"2657945\";\"Wynau\";\"main\"\n\"2657947\";\"Würenlos\";\"main\"\n\"2657947\";\"Wurenlos\";\"ascii\"\n\"2657948\";\"Würenlingen\";\"main\"\n\"2657948\";\"Wurenlingen\";\"ascii\"\n\"2657948\";\"Wurenling\";\"other\"\n\"2657948\";\"Würenling\";\"other\"\n\"2657953\";\"Worben\";\"main\"\n\"2657954\";\"Worb\";\"main\"\n\"2657955\";\"Wollerau\";\"main\"\n\"2657956\";\"Wolhusen\";\"main\"\n\"2657957\";\"Wolfwil\";\"main\"\n\"2657961\";\"Wolfenschiessen\";\"main\"\n\"2657963\";\"Wohlen\";\"main\"\n\"2657964\";\"Wohlen\";\"main\"\n\"2657967\";\"Wittnau\";\"main\"\n\"2657968\";\"Wittenbach\";\"main\"\n\"2657969\";\"Zürich (Kreis 7) / Witikon\";\"main\"\n\"2657969\";\"Zuerich (Kreis 7) / Witikon\";\"ascii\"\n\"2657969\";\"Witikon\";\"other\"\n\"2657970\";\"Winterthur\";\"main\"\n\"2657970\";\"Vintertur\";\"other\"\n\"2657970\";\"Vitudurum\";\"other\"\n\"2657970\";\"Winterthour\";\"other\"\n\"2657970\";\"Винтертур\";\"other\"\n\"2657976\";\"Windisch\";\"main\"\n\"2657977\";\"Wimmis\";\"main\"\n\"2657978\";\"Willisau\";\"main\"\n\"2657978\";\"Willisau Stadt\";\"other\"\n\"2657988\";\"Wildhaus\";\"main\"\n\"2657988\";\"Wildhaus SG\";\"other\"\n\"2657989\";\"Wilderswil\";\"main\"\n\"2657992\";\"Wilchingen\";\"main\"\n\"2657993\";\"Wila\";\"main\"\n\"2657996\";\"Wil\";\"main\"\n\"2657997\";\"Wikon\";\"main\"\n\"2657998\";\"Wigoltingen\";\"main\"\n\"2658004\";\"Wiesendangen / Wiesendangen (Dorf)\";\"main\"\n\"2658004\";\"Wiesendangen (Dorf)\";\"other\"\n\"2658006\";\"Wiedlisbach\";\"main\"\n\"2658007\";\"Zürich (Kreis 3) / Alt-Wiedikon\";\"main\"\n\"2658007\";\"Zuerich (Kreis 3) / Alt-Wiedikon\";\"ascii\"\n\"2658007\";\"Alt-Wiedikon\";\"other\"\n\"2658010\";\"Wetzikon\";\"main\"\n\"2658011\";\"Wettingen\";\"main\"\n\"2658014\";\"Werthenstein\";\"main\"\n\"2658021\";\"Welschenrohr\";\"main\"\n\"2658024\";\"Weisslingen\";\"main\"\n\"2658035\";\"Weiningen\";\"main\"\n\"2658036\";\"Weinfelden\";\"main\"\n\"2658038\";\"Weggis\";\"main\"\n\"2658039\";\"Wegenstetten\";\"main\"\n\"2658040\";\"Weesen\";\"main\"\n\"2658041\";\"Wauwil\";\"main\"\n\"2658042\";\"Wattwil\";\"main\"\n\"2658043\";\"Wattenwil\";\"main\"\n\"2658051\";\"Wängi\";\"main\"\n\"2658051\";\"Wangi\";\"ascii\"\n\"2658052\";\"Wangen an der Aare\";\"main\"\n\"2658053\";\"Wangen\";\"main\"\n\"2658053\";\"Wangen bei Olten\";\"other\"\n\"2658055\";\"Walzenhausen\";\"main\"\n\"2658058\";\"Waltenschwil\";\"main\"\n\"2658060\";\"Wallisellen\";\"main\"\n\"2658061\";\"Walenstadt\";\"main\"\n\"2658061\";\"Valenshtadt\";\"other\"\n\"2658061\";\"Wallendstadt\";\"other\"\n\"2658061\";\"Wallenstadt\";\"other\"\n\"2658061\";\"Валенштадт\";\"other\"\n\"2658064\";\"Walkringen\";\"main\"\n\"2658066\";\"Waldstatt\";\"main\"\n\"2658067\";\"Waldkirch\";\"main\"\n\"2658071\";\"Waldenburg\";\"main\"\n\"2658073\";\"Wald\";\"main\"\n\"2658074\";\"Wald\";\"main\"\n\"2658075\";\"Walchwil\";\"main\"\n\"2658076\";\"Wahlern\";\"main\"\n\"2658076\";\"Walern\";\"other\"\n\"2658077\";\"Wahlen\";\"main\"\n\"2658081\";\"Wagenhausen\";\"main\"\n\"2658082\";\"Wädenswil\";\"main\"\n\"2658082\";\"Wadenswil\";\"ascii\"\n\"2658090\";\"Vuadens\";\"main\"\n\"2658090\";\"Wuadingen\";\"other\"\n\"2658090\";\"Wüadingen\";\"other\"\n\"2658093\";\"Vouvry\";\"main\"\n\"2658096\";\"Vorderthal\";\"main\"\n\"2658096\";\"Vorder Waggithal\";\"other\"\n\"2658096\";\"Vorder Wäggithal\";\"other\"\n\"2658096\";\"Vordertal\";\"other\"\n\"2658103\";\"Vordemwald\";\"main\"\n\"2658105\";\"Volketswil / Volketswil (Dorf)\";\"main\"\n\"2658105\";\"Volketswil (Dorf)\";\"other\"\n\"2658107\";\"Vitznau\";\"main\"\n\"2658110\";\"Visperterminen\";\"main\"\n\"2658112\";\"Visp\";\"main\"\n\"2658112\";\"Viege\";\"other\"\n\"2658112\";\"Viège\";\"other\"\n\"2658115\";\"Vionnaz\";\"main\"\n\"2658118\";\"Villnachern\";\"main\"\n\"2658119\";\"Villmergen\";\"main\"\n\"2658120\";\"Villigen\";\"main\"\n\"2658123\";\"Villeneuve\";\"main\"\n\"2658123\";\"Vil'njov\";\"other\"\n\"2658123\";\"Villeneuve VD\";\"other\"\n\"2658123\";\"Viln'ov\";\"other\"\n\"2658123\";\"Вилньов\";\"other\"\n\"2658123\";\"Вильнёв\";\"other\"\n\"2658124\";\"Villaz-Saint-Pierre\";\"main\"\n\"2658126\";\"Villars-sur-Ollon\";\"main\"\n\"2658126\";\"Vijjar-sjur-Olon\";\"other\"\n\"2658126\";\"Villar\";\"other\"\n\"2658126\";\"Villar-sjur-Olon\";\"other\"\n\"2658126\";\"Villars\";\"other\"\n\"2658126\";\"Вийяр-сюр-Олон\";\"other\"\n\"2658126\";\"Виллар\";\"other\"\n\"2658126\";\"Виллар-сюр-Олон\";\"other\"\n\"2658127\";\"Villars-sur-Marly\";\"main\"\n\"2658128\";\"Villars-sur-Glâne\";\"main\"\n\"2658128\";\"Villars-sur-Glane\";\"ascii\"\n\"2658135\";\"Viganello\";\"main\"\n\"2658137\";\"Vicques\";\"main\"\n\"2658143\";\"Veyrier\";\"main\"\n\"2658144\";\"Vex\";\"main\"\n\"2658145\";\"Vevey\";\"main\"\n\"2658145\";\"Lungsod ng Vevey\";\"other\"\n\"2658145\";\"V'ove\";\"other\"\n\"2658145\";\"Veve\";\"other\"\n\"2658145\";\"Vevê\";\"other\"\n\"2658145\";\"Vibiscum\";\"other\"\n\"2658145\";\"vu~evu~ei\";\"other\"\n\"2658145\";\"Веве\";\"other\"\n\"2658145\";\"Вьове\";\"other\"\n\"2658145\";\"ヴェヴェイ\";\"other\"\n\"2658146\";\"Vétroz\";\"main\"\n\"2658146\";\"Vetroz\";\"ascii\"\n\"2658151\";\"Versoix\";\"main\"\n\"2658151\";\"Versoix-la-Raison\";\"other\"\n\"2658152\";\"Verscio\";\"main\"\n\"2658154\";\"Vernier\";\"main\"\n\"2658157\";\"Vernayaz\";\"main\"\n\"2658168\";\"Verbier\";\"main\"\n\"2658168\";\"VERB'E\";\"other\"\n\"2658168\";\"ВЕРБЬЕ\";\"other\"\n\"2658172\";\"Veltheim (Kreis 5)\";\"main\"\n\"2658172\";\"Veltheim\";\"ascii\"\n\"2658173\";\"Veltheim\";\"main\"\n\"2658176\";\"Vechigen\";\"main\"\n\"2658185\";\"Varen\";\"main\"\n\"2658188\";\"Vandœuvres\";\"main\"\n\"2658188\";\"Vandoeuvres\";\"ascii\"\n\"2658194\";\"Vallorbe\";\"main\"\n\"2658209\";\"Uzwil\";\"main\"\n\"2658210\";\"Uznach\";\"main\"\n\"2658211\";\"Utzenstorf\";\"main\"\n\"2658212\";\"Uttwil\";\"main\"\n\"2658213\";\"Uttigen\";\"main\"\n\"2658216\";\"Uster\";\"main\"\n\"2658217\";\"Urtenen\";\"main\"\n\"2658223\";\"Urnäsch\";\"main\"\n\"2658223\";\"Urnasch\";\"ascii\"\n\"2658223\";\"Urnaesch\";\"other\"\n\"2658230\";\"Wetzikon / Unter-Wetzikon\";\"main\"\n\"2658230\";\"Unter-Wetzikon\";\"other\"\n\"2658232\";\"Untervaz\";\"main\"\n\"2658237\";\"Untersiggenthal\";\"main\"\n\"2658237\";\"Unter-Siggental\";\"other\"\n\"2658240\";\"Unterseen\";\"main\"\n\"2658244\";\"Unterlunkhofen\";\"main\"\n\"2658248\";\"Unterkulm\";\"main\"\n\"2658248\";\"Kulm\";\"other\"\n\"2658249\";\"Illnau / Unter-Illnau\";\"main\"\n\"2658249\";\"Unter-Illnau\";\"other\"\n\"2658250\";\"Unteriberg\";\"main\"\n\"2658253\";\"Unterengstringen\";\"main\"\n\"2658256\";\"Unterehrendingen\";\"main\"\n\"2658256\";\"Ehrendingen\";\"other\"\n\"2658264\";\"Unterägeri\";\"main\"\n\"2658264\";\"Unterageri\";\"ascii\"\n\"2658264\";\"Ageri\";\"other\"\n\"2658264\";\"Unteraegeri\";\"other\"\n\"2658264\";\"Unteräegeri\";\"other\"\n\"2658264\";\"Ägeri\";\"other\"\n\"2658269\";\"Uitikon\";\"main\"\n\"2658269\";\"Uitikon am Albis\";\"other\"\n\"2658271\";\"Uhwiesen\";\"main\"\n\"2658276\";\"Uetikon\";\"main\"\n\"2658276\";\"Uetikon am See\";\"other\"\n\"2658277\";\"Uetendorf\";\"main\"\n\"2658277\";\"Utendorf\";\"other\"\n\"2658277\";\"Ütendorf\";\"other\"\n\"2658279\";\"Uerkheim\";\"main\"\n\"2658280\";\"Uerikon\";\"main\"\n\"2658281\";\"Ueberstorf\";\"main\"\n\"2658281\";\"Uberstorf\";\"other\"\n\"2658281\";\"Überstorf\";\"other\"\n\"2658283\";\"Udligenswil\";\"main\"\n\"2658287\";\"Turtmann\";\"main\"\n\"2658288\";\"Turgi\";\"main\"\n\"2658289\";\"Turbenthal\";\"main\"\n\"2658289\";\"Turbental\";\"other\"\n\"2658293\";\"Tuggen\";\"main\"\n\"2658299\";\"Trun\";\"main\"\n\"2658299\";\"Truns\";\"other\"\n\"2658303\";\"Trubschachen\";\"main\"\n\"2658305\";\"Trub\";\"main\"\n\"2658306\";\"Troistorrents\";\"main\"\n\"2658307\";\"Trogen\";\"main\"\n\"2658307\";\"Trogen AR\";\"other\"\n\"2658311\";\"Trimmis\";\"main\"\n\"2658311\";\"Trimmis Dorf\";\"other\"\n\"2658312\";\"Trimbach\";\"main\"\n\"2658315\";\"Triengen\";\"main\"\n\"2658317\";\"Treyvaux\";\"main\"\n\"2658324\";\"Trélex\";\"main\"\n\"2658324\";\"Trelex\";\"ascii\"\n\"2658328\";\"Travers\";\"main\"\n\"2658331\";\"Tramelan\";\"main\"\n\"2658332\";\"Trachselwald\";\"main\"\n\"2658344\";\"Töss (Kreis 4)\";\"main\"\n\"2658344\";\"Toss\";\"ascii\"\n\"2658344\";\"Toess (Kreis 4)\";\"other\"\n\"2658344\";\"Winterthur Toss\";\"other\"\n\"2658344\";\"Winterthur Töss\";\"other\"\n\"2658353\";\"Toffen\";\"main\"\n\"2658371\";\"Thusis\";\"main\"\n\"2658376\";\"Thundorf\";\"main\"\n\"2658377\";\"Thun\";\"main\"\n\"2658377\";\"Thoune\";\"other\"\n\"2658377\";\"Tun\";\"other\"\n\"2658377\";\"to~un\";\"other\"\n\"2658377\";\"tu en\";\"other\"\n\"2658377\";\"twn\";\"other\"\n\"2658377\";\"Тун\";\"other\"\n\"2658377\";\"תון\";\"other\"\n\"2658377\";\"トゥーン\";\"other\"\n\"2658377\";\"图恩\";\"other\"\n\"2658382\";\"Thierachern\";\"main\"\n\"2658382\";\"Tierachern\";\"other\"\n\"2658386\";\"Therwil\";\"main\"\n\"2658387\";\"Thayngen\";\"main\"\n\"2658388\";\"Thalwil\";\"main\"\n\"2658395\";\"Teufenthal\";\"main\"\n\"2658395\";\"Teufental\";\"other\"\n\"2658397\";\"Teufen\";\"main\"\n\"2658397\";\"Teufen AR\";\"other\"\n\"2658398\";\"Tesserete\";\"main\"\n\"2658410\";\"Tegerfelden\";\"main\"\n\"2658415\";\"Tavannes\";\"main\"\n\"2658417\";\"Täuffelen\";\"main\"\n\"2658417\";\"Tauffelen\";\"ascii\"\n\"2658424\";\"Tann\";\"main\"\n\"2658426\";\"Tanay\";\"main\"\n\"2658426\";\"Taney\";\"other\"\n\"2658426\";\"Tannay\";\"other\"\n\"2658427\";\"Tamins\";\"main\"\n\"2658432\";\"Tägerwilen\";\"main\"\n\"2658432\";\"Tagerwilen\";\"ascii\"\n\"2658433\";\"Tafers\";\"main\"\n\"2658440\";\"Sursee\";\"main\"\n\"2658449\";\"Sumiswald\";\"main\"\n\"2658452\";\"Sulz\";\"main\"\n\"2658455\";\"Sulgen\";\"main\"\n\"2658457\";\"Suhr\";\"main\"\n\"2658457\";\"Suhr AG\";\"other\"\n\"2658464\";\"Subingen\";\"main\"\n\"2658469\";\"Strengelbach\";\"main\"\n\"2658478\";\"Stettlen\";\"main\"\n\"2658479\";\"Stettfurt\";\"main\"\n\"2658483\";\"Steinhausen\";\"main\"\n\"2658488\";\"Steinen\";\"main\"\n\"2658489\";\"Stein am Rhein\";\"main\"\n\"2658489\";\"Shtajn-Am-Rajn\";\"other\"\n\"2658489\";\"Штайн-Ам-Райн\";\"other\"\n\"2658490\";\"Stein\";\"main\"\n\"2658494\";\"Steffisburg\";\"main\"\n\"2658495\";\"Steckborn\";\"main\"\n\"2658498\";\"Staufen\";\"main\"\n\"2658502\";\"Stansstad\";\"main\"\n\"2658504\";\"Stans\";\"main\"\n\"2658512\";\"Stalden\";\"main\"\n\"2658513\";\"Staffelbach\";\"main\"\n\"2658518\";\"Stäfa\";\"main\"\n\"2658518\";\"Stafa\";\"ascii\"\n\"2658521\";\"Stabio\";\"main\"\n\"2658524\";\"Spreitenbach\";\"main\"\n\"2658536\";\"Spiez\";\"main\"\n\"2658536\";\"Shpic\";\"other\"\n\"2658536\";\"Шпиц\";\"other\"\n\"2658537\";\"Speicher\";\"main\"\n\"2658537\";\"Speicher AR\";\"other\"\n\"2658549\";\"Sorengo\";\"main\"\n\"2658564\";\"Solothurn\";\"main\"\n\"2658564\";\"Soletta\";\"other\"\n\"2658564\";\"Soleura\";\"other\"\n\"2658564\";\"Soleure\";\"other\"\n\"2658564\";\"Solodurum\";\"other\"\n\"2658564\";\"Solura\";\"other\"\n\"2658564\";\"Zoloturn\";\"other\"\n\"2658564\";\"Золотурн\";\"other\"\n\"2658572\";\"Sissach\";\"main\"\n\"2658575\";\"Sirnach\";\"main\"\n\"2658576\";\"Sion\";\"main\"\n\"2658576\";\"S'on\";\"other\"\n\"2658576\";\"Sedunum\";\"other\"\n\"2658576\";\"Sionas\";\"other\"\n\"2658576\";\"Sitten\";\"other\"\n\"2658576\";\"Сьон\";\"other\"\n\"2658577\";\"Sins\";\"main\"\n\"2658592\";\"Silenen\";\"main\"\n\"2658597\";\"Sigriswil\";\"main\"\n\"2658600\";\"Signau\";\"main\"\n\"2658606\";\"Sierre\";\"main\"\n\"2658613\";\"Sevelen\";\"main\"\n\"2658614\";\"Seuzach / Seuzach (Dorf)\";\"main\"\n\"2658614\";\"Seuzach (Dorf)\";\"other\"\n\"2658623\";\"Seon\";\"main\"\n\"2658626\";\"Sennwald\";\"main\"\n\"2658631\";\"Sempach\";\"main\"\n\"2658632\";\"Sementina\";\"main\"\n\"2658634\";\"Selzach\";\"main\"\n\"2658635\";\"Seltisberg\";\"main\"\n\"2658642\";\"Seftigen\";\"main\"\n\"2658649\";\"Seengen\";\"main\"\n\"2658653\";\"Seedorf\";\"main\"\n\"2658654\";\"Seedorf\";\"main\"\n\"2658655\";\"Seeberg\";\"main\"\n\"2658656\";\"Zürich (Kreis 11) / Seebach\";\"main\"\n\"2658656\";\"Zuerich (Kreis 11) / Seebach\";\"ascii\"\n\"2658656\";\"Seebach\";\"other\"\n\"2658660\";\"Scuol\";\"main\"\n\"2658665\";\"Schwyz\";\"main\"\n\"2658665\";\"Schwytz\";\"other\"\n\"2658665\";\"Shvic\";\"other\"\n\"2658665\";\"Suitius\";\"other\"\n\"2658665\";\"Svitto\";\"other\"\n\"2658665\";\"shuvu~itsu\";\"other\"\n\"2658665\";\"Швиц\";\"other\"\n\"2658665\";\"シュヴィーツ\";\"other\"\n\"2658669\";\"Schwellbrunn\";\"main\"\n\"2658681\";\"Schwarzenberg\";\"main\"\n\"2658684\";\"Schwanden\";\"main\"\n\"2658684\";\"Schwanden GL\";\"other\"\n\"2658690\";\"Schüpfheim\";\"main\"\n\"2658690\";\"Schupfheim\";\"ascii\"\n\"2658691\";\"Schüpfen\";\"main\"\n\"2658691\";\"Schupfen\";\"ascii\"\n\"2658696\";\"Schübelbach\";\"main\"\n\"2658696\";\"Schubelbach\";\"ascii\"\n\"2658701\";\"Schötz\";\"main\"\n\"2658701\";\"Schotz\";\"ascii\"\n\"2658706\";\"Schönenwerd\";\"main\"\n\"2658706\";\"Schonenwerd\";\"ascii\"\n\"2658708\";\"Schönenbuch\";\"main\"\n\"2658708\";\"Schonenbuch\";\"ascii\"\n\"2658714\";\"Schöftland\";\"main\"\n\"2658714\";\"Schoftland\";\"ascii\"\n\"2658718\";\"Schmitten\";\"main\"\n\"2658720\";\"Schmerikon\";\"main\"\n\"2658724\";\"Schlieren\";\"main\"\n\"2658726\";\"Schleitheim\";\"main\"\n\"2658732\";\"Schinznach Dorf\";\"main\"\n\"2658732\";\"Schinznach\";\"other\"\n\"2658733\";\"Schinznach Bad\";\"main\"\n\"2658733\";\"Bad Schinznach\";\"other\"\n\"2658734\";\"Schindellegi\";\"main\"\n\"2658738\";\"Schiers\";\"main\"\n\"2658744\";\"Schenkon\";\"main\"\n\"2658749\";\"Schattdorf\";\"main\"\n\"2658754\";\"Schänis\";\"main\"\n\"2658754\";\"Schanis\";\"ascii\"\n\"2658759\";\"Schafisheim\";\"main\"\n\"2658761\";\"Schaffhausen\";\"main\"\n\"2658761\";\"Safhauzo\";\"other\"\n\"2658761\";\"Scafusa\";\"other\"\n\"2658761\";\"Schaffhouse\";\"other\"\n\"2658761\";\"Schofhausen\";\"other\"\n\"2658761\";\"Sciaffusa\";\"other\"\n\"2658761\";\"Shaffkhauzen\";\"other\"\n\"2658761\";\"Szafuza\";\"other\"\n\"2658761\";\"shafuhauzen\";\"other\"\n\"2658761\";\"Ŝafhaŭzo\";\"other\"\n\"2658761\";\"Шаффхаузен\";\"other\"\n\"2658761\";\"シャフハウゼン\";\"other\"\n\"2658769\";\"Saxon\";\"main\"\n\"2658774\";\"Savigny\";\"main\"\n\"2658775\";\"Savièse\";\"main\"\n\"2658775\";\"Saviese\";\"ascii\"\n\"2658781\";\"Sattel\";\"main\"\n\"2658782\";\"Satigny\";\"main\"\n\"2658786\";\"Sarnen\";\"main\"\n\"2658786\";\"zarunen\";\"other\"\n\"2658786\";\"ザルネン\";\"other\"\n\"2658788\";\"Sarmenstorf\";\"main\"\n\"2658793\";\"Sargans\";\"main\"\n\"2658806\";\"Sankt Stephan\";\"main\"\n\"2658807\";\"Sankt Peterzell\";\"main\"\n\"2658811\";\"Sankt Niklaus\";\"main\"\n\"2658813\";\"Saint Moritz\";\"main\"\n\"2658813\";\"Saint-Moritz\";\"other\"\n\"2658813\";\"Sankt Moritz\";\"other\"\n\"2658813\";\"Sankt Moritz-Dorf\";\"other\"\n\"2658813\";\"Sankt Murezzan\";\"other\"\n\"2658813\";\"Sankt-Moritz\";\"other\"\n\"2658813\";\"Sankta Maurico\";\"other\"\n\"2658813\";\"Sankta Maŭrico\";\"other\"\n\"2658813\";\"St. Moritz\";\"other\"\n\"2658813\";\"sanmorittsu\";\"other\"\n\"2658813\";\"サンモリッツ\";\"other\"\n\"2658816\";\"Sankt Margrethen\";\"main\"\n\"2658820\";\"Sankt Gallenkappel\";\"main\"\n\"2658822\";\"Sankt Gallen\";\"main\"\n\"2658822\";\"Saint Gallen\";\"other\"\n\"2658822\";\"Saint-Gall\";\"other\"\n\"2658822\";\"San Gallo\";\"other\"\n\"2658822\";\"San Gallu\";\"other\"\n\"2658822\";\"San Galo\";\"other\"\n\"2658822\";\"Sanctogallum\";\"other\"\n\"2658822\";\"Sankt-Gallen\";\"other\"\n\"2658822\";\"Sankt-Galo\";\"other\"\n\"2658822\";\"St. Gallen\";\"other\"\n\"2658822\";\"Санкт-Галлен\";\"other\"\n\"2658826\";\"Sankt Antoni\";\"main\"\n\"2658826\";\"Saint-Antoine\";\"other\"\n\"2658826\";\"St. Antoni\";\"other\"\n\"2658826\";\"St. Antoni FR\";\"other\"\n\"2658846\";\"Samaden\";\"main\"\n\"2658846\";\"Samedan\";\"other\"\n\"2658847\";\"Salvan\";\"main\"\n\"2658849\";\"Salmsach\";\"main\"\n\"2658850\";\"Salgesch\";\"main\"\n\"2658852\";\"Sâles\";\"main\"\n\"2658852\";\"Sales\";\"ascii\"\n\"2658862\";\"Saint-Prex\";\"main\"\n\"2658864\";\"Saint-Maurice\";\"main\"\n\"2658868\";\"Saint-Léonard\";\"main\"\n\"2658868\";\"Saint-Leonard\";\"ascii\"\n\"2658871\";\"Saint-Imier\";\"main\"\n\"2658871\";\"Sankt Immer\";\"other\"\n\"2658874\";\"Sainte-Croix\";\"main\"\n\"2658876\";\"Saint-Cergue\";\"main\"\n\"2658878\";\"Saint-Blaise\";\"main\"\n\"2658880\";\"Saint-Aubin-Sauges\";\"main\"\n\"2658881\";\"Saillon\";\"main\"\n\"2658882\";\"Saignelégier\";\"main\"\n\"2658882\";\"Saignelegier\";\"ascii\"\n\"2658892\";\"Safenwil\";\"main\"\n\"2658894\";\"Sachseln\";\"main\"\n\"2658897\";\"Saas-Grund\";\"main\"\n\"2658898\";\"Saas-Fee\";\"main\"\n\"2658904\";\"Saanen\";\"main\"\n\"2658909\";\"Rüti\";\"main\"\n\"2658909\";\"Rueti\";\"ascii\"\n\"2658912\";\"Rüthi\";\"main\"\n\"2658912\";\"Ruthi\";\"ascii\"\n\"2658914\";\"Ruswil\";\"main\"\n\"2658917\";\"Russikon\";\"main\"\n\"2658919\";\"Rüschlikon\";\"main\"\n\"2658919\";\"Ruschlikon\";\"ascii\"\n\"2658922\";\"Rüschegg\";\"main\"\n\"2658922\";\"Ruschegg\";\"ascii\"\n\"2658922\";\"Rueschegg\";\"other\"\n\"2658922\";\"Rüeschegg\";\"other\"\n\"2658924\";\"Rupperswil\";\"main\"\n\"2658927\";\"Rümlang\";\"main\"\n\"2658927\";\"Rumlang\";\"ascii\"\n\"2658935\";\"Rüeggisberg\";\"main\"\n\"2658935\";\"Rueggisberg\";\"ascii\"\n\"2658936\";\"Rue\";\"main\"\n\"2658937\";\"Rudolfstetten\";\"main\"\n\"2658939\";\"Rüderswil\";\"main\"\n\"2658939\";\"Ruderswil\";\"ascii\"\n\"2658940\";\"Rubigen\";\"main\"\n\"2658952\";\"Rothrist\";\"main\"\n\"2658952\";\"Rothrist-Dorf\";\"other\"\n\"2658954\";\"Rothenthurm\";\"main\"\n\"2658954\";\"Rotenturm\";\"other\"\n\"2658968\";\"Röschenz\";\"main\"\n\"2658968\";\"Roschenz\";\"ascii\"\n\"2658969\";\"Rorschach\";\"main\"\n\"2658969\";\"Rorshakh\";\"other\"\n\"2658969\";\"Роршах\";\"other\"\n\"2658974\";\"Rorbas\";\"main\"\n\"2658976\";\"Root\";\"main\"\n\"2658982\";\"Romont\";\"main\"\n\"2658983\";\"Römerswil\";\"main\"\n\"2658983\";\"Romerswil\";\"ascii\"\n\"2658985\";\"Romanshorn\";\"main\"\n\"2658986\";\"Romanel\";\"main\"\n\"2658986\";\"Romanel-sur-Lausanne\";\"other\"\n\"2658989\";\"Rolle\";\"main\"\n\"2658991\";\"Rohrbach\";\"main\"\n\"2658992\";\"Rohr\";\"main\"\n\"2658993\";\"Roggwil\";\"main\"\n\"2658994\";\"Roggwil\";\"main\"\n\"2658998\";\"Rodersdorf\";\"main\"\n\"2659008\";\"Riva San Vitale\";\"main\"\n\"2659021\";\"Ringgenberg\";\"main\"\n\"2659021\";\"Ringgenberg BE\";\"other\"\n\"2659024\";\"Effretikon / Rikon\";\"main\"\n\"2659024\";\"Rikon\";\"other\"\n\"2659028\";\"Riggisberg\";\"main\"\n\"2659036\";\"Riedholz\";\"main\"\n\"2659046\";\"Riddes\";\"main\"\n\"2659050\";\"Richterswil\";\"main\"\n\"2659055\";\"Riaz\";\"main\"\n\"2659060\";\"Rheinfelden\";\"main\"\n\"2659062\";\"Rheineck\";\"main\"\n\"2659064\";\"Rhäzüns\";\"main\"\n\"2659064\";\"Rhazuns\";\"ascii\"\n\"2659070\";\"Renens\";\"main\"\n\"2659076\";\"Reinach\";\"main\"\n\"2659077\";\"Reigoldswil\";\"main\"\n\"2659078\";\"Reiden\";\"main\"\n\"2659079\";\"Reichenburg\";\"main\"\n\"2659082\";\"Rehetobel\";\"main\"\n\"2659083\";\"Regensdorf\";\"main\"\n\"2659085\";\"Reconvilier\";\"main\"\n\"2659088\";\"Rechthalten\";\"main\"\n\"2659089\";\"Rebstein\";\"main\"\n\"2659095\";\"Elsau-Räterschen / Räterschen\";\"main\"\n\"2659095\";\"Elsau-Raeterschen / Raeterschen\";\"ascii\"\n\"2659095\";\"Raeterschen\";\"other\"\n\"2659095\";\"Räterschen\";\"other\"\n\"2659098\";\"Raron\";\"main\"\n\"2659098\";\"Rarogne\";\"other\"\n\"2659099\";\"Rapperswil\";\"main\"\n\"2659099\";\"Raperswil\";\"other\"\n\"2659099\";\"Rappersvil'\";\"other\"\n\"2659099\";\"Rapperswil SG\";\"other\"\n\"2659099\";\"Рапперсвиль\";\"other\"\n\"2659105\";\"Randogne\";\"main\"\n\"2659109\";\"Ramsen\";\"main\"\n\"2659113\";\"Rafz\";\"main\"\n\"2659115\";\"Radelfingen\";\"main\"\n\"2659122\";\"Quarten\";\"main\"\n\"2659126\";\"Pura\";\"main\"\n\"2659127\";\"Pully\";\"main\"\n\"2659129\";\"Puidoux\";\"main\"\n\"2659136\";\"Prilly\";\"main\"\n\"2659142\";\"Pregassona\";\"main\"\n\"2659147\";\"Pratteln\";\"main\"\n\"2659150\";\"Praroman\";\"main\"\n\"2659152\";\"Prangins\";\"main\"\n\"2659165\";\"Poschiavo\";\"main\"\n\"2659165\";\"Pesclavium\";\"other\"\n\"2659166\";\"Port-Valais\";\"main\"\n\"2659171\";\"Porrentruy\";\"main\"\n\"2659171\";\"Pruntrut\";\"other\"\n\"2659172\";\"Pontresina\";\"main\"\n\"2659190\";\"Plan-les-Ouates\";\"main\"\n\"2659190\";\"Plan-les-Ouattes\";\"other\"\n\"2659195\";\"Plaffeien\";\"main\"\n\"2659203\";\"Pieterlen\";\"main\"\n\"2659211\";\"Pfyn\";\"main\"\n\"2659212\";\"Pfungen\";\"main\"\n\"2659213\";\"Pfaffhausen\";\"main\"\n\"2659213\";\"Pfaffhusen\";\"other\"\n\"2659215\";\"Pfeffingen\";\"main\"\n\"2659218\";\"Pfaffnau\";\"main\"\n\"2659219\";\"Pfäffikon\";\"main\"\n\"2659219\";\"Pfaffikon\";\"ascii\"\n\"2659227\";\"Peseux\";\"main\"\n\"2659228\";\"Péry\";\"main\"\n\"2659228\";\"Pery\";\"ascii\"\n\"2659231\";\"Perroy\";\"main\"\n\"2659234\";\"Penthalaz\";\"main\"\n\"2659243\";\"Payerne\";\"main\"\n\"2659246\";\"Paudex\";\"main\"\n\"2659260\";\"Palézieux\";\"main\"\n\"2659260\";\"Palezieux\";\"ascii\"\n\"2659266\";\"Ottenbach\";\"main\"\n\"2659267\";\"Othmarsingen\";\"main\"\n\"2659269\";\"Otelfingen\";\"main\"\n\"2659277\";\"Orvin\";\"main\"\n\"2659281\";\"Orsières\";\"main\"\n\"2659281\";\"Orsieres\";\"ascii\"\n\"2659282\";\"Orpund\";\"main\"\n\"2659282\";\"Orpond\";\"other\"\n\"2659283\";\"Oron-la-ville\";\"main\"\n\"2659286\";\"Ormalingen\";\"main\"\n\"2659289\";\"Orbe\";\"main\"\n\"2659292\";\"Opfikon\";\"main\"\n\"2659296\";\"Onex\";\"main\"\n\"2659297\";\"Olten\";\"main\"\n\"2659298\";\"Ollon\";\"main\"\n\"2659303\";\"Oftringen\";\"main\"\n\"2659307\";\"Oetwil\";\"main\"\n\"2659307\";\"Oetwil am See\";\"ascii\"\n\"2659310\";\"Zürich (Kreis 11) / Oerlikon\";\"main\"\n\"2659310\";\"Zuerich (Kreis 11) / Oerlikon\";\"ascii\"\n\"2659310\";\"Oerlikon\";\"other\"\n\"2659311\";\"Oensingen\";\"main\"\n\"2659311\";\"Onsingen\";\"other\"\n\"2659311\";\"Önsingen\";\"other\"\n\"2659317\";\"Obfelden\";\"main\"\n\"2659321\";\"Oberwil\";\"main\"\n\"2659325\";\"Wetzikon / Ober-Wetzikon\";\"main\"\n\"2659325\";\"Ober-Wetzikon\";\"other\"\n\"2659331\";\"Oberuzwil\";\"main\"\n\"2659332\";\"Urdorf\";\"main\"\n\"2659332\";\"Ober Urdorf\";\"ascii\"\n\"2659344\";\"Obersiggenthal\";\"main\"\n\"2659344\";\"Ober-Siggental\";\"other\"\n\"2659348\";\"Oberschrot\";\"main\"\n\"2659355\";\"Oberrüti\";\"main\"\n\"2659355\";\"Oberruti\";\"ascii\"\n\"2659357\";\"Oberriet\";\"main\"\n\"2659357\";\"Oberried\";\"other\"\n\"2659358\";\"Oberrieden\";\"main\"\n\"2659367\";\"Oberlunkhofen\";\"main\"\n\"2659372\";\"Oberkirch\";\"main\"\n\"2659378\";\"Oberhelfenschwil\";\"main\"\n\"2659384\";\"Obergösgen\";\"main\"\n\"2659384\";\"Obergosgen\";\"ascii\"\n\"2659385\";\"Oberglatt\";\"main\"\n\"2659391\";\"Oberentfelden\";\"main\"\n\"2659391\";\"Entfelden\";\"other\"\n\"2659392\";\"Oberengstringen\";\"main\"\n\"2659394\";\"Oberendingen\";\"main\"\n\"2659394\";\"Endingen\";\"other\"\n\"2659397\";\"Oberegg\";\"main\"\n\"2659397\";\"Oberegg AI\";\"other\"\n\"2659399\";\"Oberdorf\";\"main\"\n\"2659402\";\"Oberdiessbach\";\"main\"\n\"2659404\";\"Oberburg\";\"main\"\n\"2659406\";\"Oberbuchsiten\";\"main\"\n\"2659408\";\"Oberbipp\";\"main\"\n\"2659422\";\"Nyon\";\"main\"\n\"2659422\";\"Noviodunum\";\"other\"\n\"2659422\";\"n'on\";\"other\"\n\"2659422\";\"Ньон\";\"other\"\n\"2659426\";\"Nürensdorf\";\"main\"\n\"2659426\";\"Nurensdorf\";\"ascii\"\n\"2659427\";\"Nunningen\";\"main\"\n\"2659433\";\"Novazzano\";\"main\"\n\"2659436\";\"Nottwil\";\"main\"\n\"2659447\";\"Niederwichtrach\";\"main\"\n\"2659447\";\"Wichtrach\";\"other\"\n\"2659451\";\"Niederurnen\";\"main\"\n\"2659456\";\"Niederrohrdorf\";\"main\"\n\"2659456\";\"Rohrdorf\";\"other\"\n\"2659461\";\"Niederlenz\";\"main\"\n\"2659462\";\"Niederhelfenschwil\";\"main\"\n\"2659464\";\"Niedergösgen\";\"main\"\n\"2659464\";\"Niedergosgen\";\"ascii\"\n\"2659464\";\"Gosgen\";\"other\"\n\"2659464\";\"Gösgen\";\"other\"\n\"2659467\";\"Niedererlinsbach\";\"main\"\n\"2659467\";\"Erlinsbach\";\"other\"\n\"2659468\";\"Niederbüren\";\"main\"\n\"2659468\";\"Niederburen\";\"ascii\"\n\"2659468\";\"Buren\";\"other\"\n\"2659468\";\"Büren\";\"other\"\n\"2659470\";\"Niederbipp\";\"main\"\n\"2659474\";\"Nidau\";\"main\"\n\"2659478\";\"Neunkirch\";\"main\"\n\"2659485\";\"Neuhausem\";\"main\"\n\"2659485\";\"Neuhausen am Rheinfall\";\"other\"\n\"2659489\";\"Neuenkirch\";\"main\"\n\"2659490\";\"Neuenhof\";\"main\"\n\"2659493\";\"Neudorf\";\"main\"\n\"2659496\";\"Neuchâtel\";\"main\"\n\"2659496\";\"Neuchatel\";\"ascii\"\n\"2659496\";\"Neuenburg\";\"other\"\n\"2659496\";\"Nevshatel'\";\"other\"\n\"2659496\";\"Невшатель\";\"other\"\n\"2659497\";\"Netstal\";\"main\"\n\"2659504\";\"Neftenbach / Dorf Neftenbach\";\"main\"\n\"2659504\";\"Dorf Neftenbach\";\"other\"\n\"2659506\";\"Nebikon\";\"main\"\n\"2659510\";\"Naters\";\"main\"\n\"2659515\";\"Nänikon\";\"main\"\n\"2659515\";\"Nanikon\";\"ascii\"\n\"2659516\";\"Näfels\";\"main\"\n\"2659516\";\"Nafels\";\"ascii\"\n\"2659522\";\"Muttenz\";\"main\"\n\"2659529\";\"Murten\";\"main\"\n\"2659529\";\"Morat\";\"other\"\n\"2659529\";\"Murten/Morat\";\"other\"\n\"2659531\";\"Muri\";\"main\"\n\"2659531\";\"Muri AG\";\"other\"\n\"2659532\";\"Muri\";\"main\"\n\"2659532\";\"Muri bei Bern\";\"other\"\n\"2659533\";\"Murgenthal\";\"main\"\n\"2659533\";\"Murgental\";\"other\"\n\"2659538\";\"Muotathal\";\"main\"\n\"2659538\";\"Muotatal\";\"other\"\n\"2659540\";\"Muolen\";\"main\"\n\"2659544\";\"Münsterlingen\";\"main\"\n\"2659544\";\"Munsterlingen\";\"ascii\"\n\"2659546\";\"Münsingen\";\"main\"\n\"2659546\";\"Munsingen\";\"ascii\"\n\"2659550\";\"Münchwilen\";\"main\"\n\"2659550\";\"Munchwilen\";\"ascii\"\n\"2659551\";\"Münchenstein\";\"main\"\n\"2659551\";\"Munchenstein\";\"ascii\"\n\"2659552\";\"Münchenbuchsee\";\"main\"\n\"2659552\";\"Munchenbuchsee\";\"ascii\"\n\"2659553\";\"Mumpf\";\"main\"\n\"2659555\";\"Müllheim\";\"main\"\n\"2659555\";\"Mullheim\";\"ascii\"\n\"2659558\";\"Mühlethurnen\";\"main\"\n\"2659558\";\"Muhlethurnen\";\"ascii\"\n\"2659558\";\"Muehlethurnen\";\"other\"\n\"2659561\";\"Mühleberg\";\"main\"\n\"2659561\";\"Muhleberg\";\"ascii\"\n\"2659564\";\"Muhen\";\"main\"\n\"2659564\";\"Mittel-Muhen\";\"other\"\n\"2659568\";\"Moutier\";\"main\"\n\"2659569\";\"Moudon\";\"main\"\n\"2659574\";\"Mosnang\";\"main\"\n\"2659579\";\"Mörschwil\";\"main\"\n\"2659579\";\"Morschwil\";\"ascii\"\n\"2659587\";\"Morges\";\"main\"\n\"2659597\";\"Morbio Inferiore\";\"main\"\n\"2659597\";\"Morbio\";\"other\"\n\"2659601\";\"Montreux\";\"main\"\n\"2659601\";\"Montr'o\";\"other\"\n\"2659601\";\"Montrjo\";\"other\"\n\"2659601\";\"montoru\";\"other\"\n\"2659601\";\"Монтрьо\";\"other\"\n\"2659601\";\"Монтрё\";\"other\"\n\"2659601\";\"მონტრე\";\"other\"\n\"2659601\";\"モントルー\";\"other\"\n\"2659613\";\"Monthey\";\"main\"\n\"2659616\";\"Monte Carasso\";\"main\"\n\"2659616\";\"Monte Carasso-Sementina\";\"other\"\n\"2659623\";\"Montana\";\"main\"\n\"2659623\";\"Montana Vermala\";\"other\"\n\"2659625\";\"Montagny\";\"main\"\n\"2659625\";\"Montagny-pres-Yverdon\";\"other\"\n\"2659625\";\"Montagny-près-Yverdon\";\"other\"\n\"2659627\";\"Montagnola\";\"main\"\n\"2659631\";\"Mönchaltorf\";\"main\"\n\"2659631\";\"Monchaltorf\";\"ascii\"\n\"2659636\";\"Mollis\";\"main\"\n\"2659645\";\"Möhlin\";\"main\"\n\"2659645\";\"Mohlin\";\"ascii\"\n\"2659648\";\"Mogelsberg\";\"main\"\n\"2659658\";\"Minusio\";\"main\"\n\"2659666\";\"Mézières\";\"main\"\n\"2659666\";\"Mezieres\";\"ascii\"\n\"2659667\";\"Meyrin\";\"main\"\n\"2659670\";\"Mettmenstetten\";\"main\"\n\"2659674\";\"Messen\";\"main\"\n\"2659676\";\"Mesocco\";\"main\"\n\"2659676\";\"Misox\";\"other\"\n\"2659683\";\"Merenschwand\";\"main\"\n\"2659685\";\"Menznau\";\"main\"\n\"2659686\";\"Menzingen\";\"main\"\n\"2659687\";\"Menziken\";\"main\"\n\"2659689\";\"Mendrisio\";\"main\"\n\"2659691\";\"Mellingen\";\"main\"\n\"2659691\";\"Mellinga\";\"other\"\n\"2659691\";\"Mellingen AG\";\"other\"\n\"2659692\";\"Melide\";\"main\"\n\"2659695\";\"Melchnau\";\"main\"\n\"2659696\";\"Melano\";\"main\"\n\"2659699\";\"Meisterschwanden\";\"main\"\n\"2659700\";\"Meiringen\";\"main\"\n\"2659700\";\"Meyringen\";\"other\"\n\"2659701\";\"Meinisberg\";\"main\"\n\"2659701\";\"Montmenil\";\"other\"\n\"2659701\";\"Montménil\";\"other\"\n\"2659703\";\"Meilen\";\"main\"\n\"2659704\";\"Meierskappel\";\"main\"\n\"2659708\";\"Meggen\";\"main\"\n\"2659721\";\"Mauensee\";\"main\"\n\"2659724\";\"Matzingen\";\"main\"\n\"2659726\";\"Matzendorf\";\"main\"\n\"2659731\";\"Matten\";\"main\"\n\"2659731\";\"Matten b.I.\";\"other\"\n\"2659731\";\"Matten bei Interlaken\";\"other\"\n\"2659739\";\"Massagno\";\"main\"\n\"2659748\";\"Martigny-Ville\";\"main\"\n\"2659748\";\"Martigny\";\"other\"\n\"2659750\";\"Martigny-Combe\";\"main\"\n\"2659753\";\"Marthalen\";\"main\"\n\"2659754\";\"Märstetten\";\"main\"\n\"2659754\";\"Maerstetten\";\"ascii\"\n\"2659754\";\"CH MAR\";\"other\"\n\"2659755\";\"Marsens\";\"main\"\n\"2659772\";\"Männedorf\";\"main\"\n\"2659772\";\"Mannedorf\";\"ascii\"\n\"2659775\";\"Malvaglia\";\"main\"\n\"2659776\";\"Malters\";\"main\"\n\"2659781\";\"Malleray\";\"main\"\n\"2659784\";\"Malans\";\"main\"\n\"2659787\";\"Maienfeld\";\"main\"\n\"2659787\";\"Magia\";\"other\"\n\"2659787\";\"Maienfeld GR\";\"other\"\n\"2659787\";\"maienferuto\";\"other\"\n\"2659787\";\"マイエンフェルト\";\"other\"\n\"2659798\";\"Magden\";\"main\"\n\"2659800\";\"Magadino\";\"main\"\n\"2659805\";\"Madiswil\";\"main\"\n\"2659807\";\"Lyssach\";\"main\"\n\"2659808\";\"Lyss\";\"main\"\n\"2659811\";\"Luzern\";\"main\"\n\"2659811\";\"Liucerna\";\"other\"\n\"2659811\";\"Ljucern\";\"other\"\n\"2659811\";\"Loukerne\";\"other\"\n\"2659811\";\"Lucerna\";\"other\"\n\"2659811\";\"Lucerne\";\"other\"\n\"2659811\";\"Lucerno\";\"other\"\n\"2659811\";\"Medicago sativa\";\"other\"\n\"2659811\";\"lu sai en\";\"other\"\n\"2659811\";\"lwzrn\";\"other\"\n\"2659811\";\"rutsu~erun\";\"other\"\n\"2659811\";\"Λουκέρνη\";\"other\"\n\"2659811\";\"Люцерн\";\"other\"\n\"2659811\";\"לוצרן\";\"other\"\n\"2659811\";\"ルツェルン\";\"other\"\n\"2659811\";\"卢塞恩\";\"other\"\n\"2659812\";\"Luzein\";\"main\"\n\"2659814\";\"Lützelflüh\";\"main\"\n\"2659814\";\"Lutzelfluh\";\"ascii\"\n\"2659814\";\"Luetzelflueh\";\"other\"\n\"2659819\";\"Lutry\";\"main\"\n\"2659820\";\"Lütisburg\";\"main\"\n\"2659820\";\"Lutisburg\";\"ascii\"\n\"2659820\";\"Lutisburg-Dorf\";\"other\"\n\"2659820\";\"Lütisburg-Dorf\";\"other\"\n\"2659821\";\"Luthern\";\"main\"\n\"2659822\";\"Luterbach\";\"main\"\n\"2659828\";\"Lungern\";\"main\"\n\"2659831\";\"Lumino\";\"main\"\n\"2659836\";\"Lugano\";\"main\"\n\"2659836\";\"Luganum\";\"other\"\n\"2659836\";\"lwghanw\";\"other\"\n\"2659836\";\"Лугано\";\"other\"\n\"2659836\";\"לוגאנו\";\"other\"\n\"2659836\";\"لوغانو\";\"other\"\n\"2659839\";\"Luchsingen\";\"main\"\n\"2659840\";\"Lucens\";\"main\"\n\"2659845\";\"Lotzwil\";\"main\"\n\"2659851\";\"Lostorf\";\"main\"\n\"2659853\";\"Losone\";\"main\"\n\"2659864\";\"Lodrino\";\"main\"\n\"2659869\";\"Locarno\";\"main\"\n\"2659873\";\"Littau\";\"main\"\n\"2659878\";\"Linthal\";\"main\"\n\"2659878\";\"Linthal GL\";\"other\"\n\"2659878\";\"Linththal\";\"other\"\n\"2659883\";\"Linden\";\"main\"\n\"2659883\";\"Linden bei Oberdiessbach\";\"other\"\n\"2659888\";\"Ligornetto\";\"main\"\n\"2659891\";\"Liestal\";\"main\"\n\"2659892\";\"Liesberg\";\"main\"\n\"2659898\";\"Lichtensteig\";\"main\"\n\"2659899\";\"Leytron\";\"main\"\n\"2659900\";\"Leysin\";\"main\"\n\"2659903\";\"Le Vaud\";\"main\"\n\"2659903\";\"Vaud\";\"other\"\n\"2659904\";\"Leuzigen\";\"main\"\n\"2659907\";\"Leukerbad\";\"main\"\n\"2659908\";\"Leuk\";\"main\"\n\"2659908\";\"Leuk Stadt\";\"other\"\n\"2659917\";\"Les Ponts-de-Martel\";\"main\"\n\"2659917\";\"Les Ponts-Martel\";\"other\"\n\"2659927\";\"Les Geneveys-sur-Coffrane\";\"main\"\n\"2659937\";\"Les Breuleux\";\"main\"\n\"2659938\";\"Les Brenets\";\"main\"\n\"2659939\";\"Les Bois\";\"main\"\n\"2659952\";\"Lenzburg\";\"main\"\n\"2659954\";\"Lens\";\"main\"\n\"2659955\";\"Le Noirmont\";\"main\"\n\"2659955\";\"Noirmont\";\"other\"\n\"2659956\";\"Lenk\";\"main\"\n\"2659957\";\"Lengnau\";\"main\"\n\"2659959\";\"Le Mont-sur-Lausanne\";\"main\"\n\"2659959\";\"Le Mont\";\"other\"\n\"2659960\";\"Le Locle\";\"main\"\n\"2659963\";\"Le Landeron\";\"main\"\n\"2659963\";\"Laneron\";\"other\"\n\"2659963\";\"Laneron-Combes\";\"other\"\n\"2659967\";\"Leibstadt\";\"main\"\n\"2659974\";\"Le Chenit\";\"main\"\n\"2659977\";\"Le Châtelard\";\"main\"\n\"2659977\";\"Le Chatelard\";\"ascii\"\n\"2659977\";\"Chatelard\";\"other\"\n\"2659977\";\"Châtelard\";\"other\"\n\"2659977\";\"Le Chatelard-Montreux\";\"other\"\n\"2659977\";\"Le Châtelard-Montreux\";\"other\"\n\"2659977\";\"Shatlar\";\"other\"\n\"2659977\";\"Шатлар\";\"other\"\n\"2659988\";\"Lavertezzo\";\"main\"\n\"2659992\";\"Lauterbrunnen\";\"main\"\n\"2659992\";\"rautaburun'nen\";\"other\"\n\"2659992\";\"ラウターブルンネン\";\"other\"\n\"2659993\";\"Lausen\";\"main\"\n\"2659994\";\"Lausanne\";\"main\"\n\"2659994\";\"Lausana\";\"other\"\n\"2659994\";\"Lausonium\";\"other\"\n\"2659994\";\"Lauzano\";\"other\"\n\"2659994\";\"Laŭzano\";\"other\"\n\"2659994\";\"Losanna\";\"other\"\n\"2659994\";\"Losena\";\"other\"\n\"2659994\";\"Lozan\";\"other\"\n\"2659994\";\"Lozana\";\"other\"\n\"2659994\";\"Lozane\";\"other\"\n\"2659994\";\"Lozanna\";\"other\"\n\"2659994\";\"lo san\";\"other\"\n\"2659994\";\"luo sang\";\"other\"\n\"2659994\";\"rozan'nu\";\"other\"\n\"2659994\";\"Λωζάνη\";\"other\"\n\"2659994\";\"Лозана\";\"other\"\n\"2659994\";\"Лозанна\";\"other\"\n\"2659994\";\"לוזאן\";\"other\"\n\"2659994\";\"โลซาน\";\"other\"\n\"2659994\";\"ローザンヌ\";\"other\"\n\"2659994\";\"洛桑\";\"other\"\n\"2659996\";\"Lauperswil\";\"main\"\n\"2659997\";\"Laupersdorf\";\"main\"\n\"2659998\";\"Laupen\";\"main\"\n\"2659998\";\"Laupen BE\";\"other\"\n\"2659999\";\"Laufenburg\";\"main\"\n\"2660001\";\"Laufen\";\"main\"\n\"2660002\";\"Läufelfingen\";\"main\"\n\"2660002\";\"Laufelfingen\";\"ascii\"\n\"2660002\";\"Laeufelfingen\";\"other\"\n\"2660007\";\"La Tour-de-Trême\";\"main\"\n\"2660007\";\"La Tour-de-Treme\";\"ascii\"\n\"2660007\";\"Tour de Treme\";\"other\"\n\"2660008\";\"La Tour-de-Peilz\";\"main\"\n\"2660012\";\"La Sarraz\";\"main\"\n\"2660016\";\"La Roche\";\"main\"\n\"2660029\";\"Langrickenbach\";\"main\"\n\"2660030\";\"Langnau / Langnau (Dorf)\";\"main\"\n\"2660030\";\"Langnau (Dorf)\";\"other\"\n\"2660032\";\"Langnau\";\"main\"\n\"2660034\";\"Langenthal\";\"main\"\n\"2660034\";\"Langental\";\"other\"\n\"2660036\";\"Langenbruck\";\"main\"\n\"2660038\";\"La Neuveville\";\"main\"\n\"2660075\";\"Lachen\";\"main\"\n\"2660076\";\"La Chaux-de-Fonds\";\"main\"\n\"2660076\";\"Chaux-de-Fonds\";\"other\"\n\"2660076\";\"La Chaux de Fonda\";\"other\"\n\"2660083\";\"Laax\";\"main\"\n\"2660083\";\"Laax bei Ilanz\";\"other\"\n\"2660086\";\"Küttigen\";\"main\"\n\"2660086\";\"Kuttigen\";\"ascii\"\n\"2660086\";\"Kuettigen\";\"other\"\n\"2660088\";\"Küssnacht\";\"main\"\n\"2660088\";\"Kussnacht\";\"ascii\"\n\"2660088\";\"Kuessnacht\";\"other\"\n\"2660088\";\"Kuessnacht am Rigi\";\"other\"\n\"2660088\";\"Kussnacht am Rigi\";\"other\"\n\"2660088\";\"Küssnacht am Rigi\";\"other\"\n\"2660089\";\"Küsnacht\";\"main\"\n\"2660089\";\"Kuesnacht\";\"ascii\"\n\"2660090\";\"Künten\";\"main\"\n\"2660090\";\"Kunten\";\"ascii\"\n\"2660090\";\"Kuenten\";\"other\"\n\"2660099\";\"Krummenau\";\"main\"\n\"2660104\";\"Kriens\";\"main\"\n\"2660104\";\"Krienz\";\"other\"\n\"2660104\";\"Krins\";\"other\"\n\"2660104\";\"Кринс\";\"other\"\n\"2660105\";\"Kriegstetten\";\"main\"\n\"2660105\";\"Kriegstten\";\"other\"\n\"2660108\";\"Kreuzlingen\";\"main\"\n\"2660112\";\"Krauchthal\";\"main\"\n\"2660112\";\"Krauchtal\";\"other\"\n\"2660115\";\"Koppigen\";\"main\"\n\"2660117\";\"Konolfingen\";\"main\"\n\"2660119\";\"Köniz\";\"main\"\n\"2660119\";\"Koniz\";\"ascii\"\n\"2660119\";\"Koeniz\";\"other\"\n\"2660120\";\"Kölliken\";\"main\"\n\"2660120\";\"Kolliken\";\"ascii\"\n\"2660121\";\"Kollbrunn\";\"main\"\n\"2660123\";\"Koblenz\";\"main\"\n\"2660124\";\"Knutwil\";\"main\"\n\"2660125\";\"Knonau\";\"main\"\n\"2660127\";\"Kloten\";\"main\"\n\"2660128\";\"Klosters Serneus\";\"main\"\n\"2660128\";\"Serneus\";\"other\"\n\"2660128\";\"Serneus Dorf\";\"other\"\n\"2660135\";\"Klingnau\";\"main\"\n\"2660141\";\"Kleinlützel\";\"main\"\n\"2660141\";\"Kleinlutzel\";\"ascii\"\n\"2660152\";\"Kirchlindach\";\"main\"\n\"2660155\";\"Kirchberg\";\"main\"\n\"2660156\";\"Kirchberg\";\"main\"\n\"2660160\";\"Killwangen\";\"main\"\n\"2660161\";\"Kilchberg\";\"main\"\n\"2660170\";\"Kerzers\";\"main\"\n\"2660170\";\"Chietres\";\"other\"\n\"2660170\";\"Chiètres\";\"other\"\n\"2660171\";\"Kerns\";\"main\"\n\"2660177\";\"Kehrsatz\";\"main\"\n\"2660187\";\"Kappelen\";\"main\"\n\"2660187\";\"Kappelen BE\";\"other\"\n\"2660191\";\"Kandersteg\";\"main\"\n\"2660194\";\"Kaltbrunn\";\"main\"\n\"2660195\";\"Kallnach\";\"main\"\n\"2660200\";\"Kaisten\";\"main\"\n\"2660204\";\"Kaiseraugst\";\"main\"\n\"2660205\";\"Jussy\";\"main\"\n\"2660219\";\"Jonschwil\";\"main\"\n\"2660220\";\"Jonen\";\"main\"\n\"2660221\";\"Jona\";\"main\"\n\"2660226\";\"Jenaz\";\"main\"\n\"2660228\";\"Jegenstorf\";\"main\"\n\"2660247\";\"Pfäffikon / Irgenhausen\";\"main\"\n\"2660247\";\"Pfaeffikon / Irgenhausen\";\"ascii\"\n\"2660247\";\"Irgenhausen\";\"other\"\n\"2660247\";\"Irgenhusen\";\"other\"\n\"2660250\";\"Inwil\";\"main\"\n\"2660253\";\"Interlaken\";\"main\"\n\"2660253\";\"intaraken\";\"other\"\n\"2660253\";\"Интерлакен\";\"other\"\n\"2660253\";\"インターラーケン\";\"other\"\n\"2660254\";\"Ins\";\"main\"\n\"2660254\";\"Anet\";\"other\"\n\"2660261\";\"Ingenbohl\";\"main\"\n\"2660269\";\"Illnau\";\"main\"\n\"2660275\";\"Ilanz\";\"main\"\n\"2660275\";\"Glion\";\"other\"\n\"2660277\";\"Igis\";\"main\"\n\"2660279\";\"Ibach\";\"main\"\n\"2660280\";\"Hüttwilen\";\"main\"\n\"2660280\";\"Huttwilen\";\"ascii\"\n\"2660281\";\"Huttwil\";\"main\"\n\"2660292\";\"Hünenberg\";\"main\"\n\"2660292\";\"Hunenberg\";\"ascii\"\n\"2660298\";\"Horw\";\"main\"\n\"2660303\";\"Horn\";\"main\"\n\"2660305\";\"Horgen\";\"main\"\n\"2660306\";\"Zürich (Kreis 10) / Höngg\";\"main\"\n\"2660306\";\"Zuerich (Kreis 10) / Hoengg\";\"ascii\"\n\"2660306\";\"Hoengg\";\"other\"\n\"2660306\";\"Höngg\";\"other\"\n\"2660308\";\"Homburg\";\"main\"\n\"2660309\";\"Hombrechtikon\";\"main\"\n\"2660311\";\"Hölstein\";\"main\"\n\"2660311\";\"Holstein\";\"ascii\"\n\"2660322\";\"Hohenrain\";\"main\"\n\"2660329\";\"Hochwald\";\"main\"\n\"2660332\";\"Hochdorf\";\"main\"\n\"2660334\";\"Hitzkirch\";\"main\"\n\"2660335\";\"Hittnau / Hittnau (Dorf)\";\"main\"\n\"2660335\";\"Hittnau (Dorf)\";\"other\"\n\"2660338\";\"Hinwil\";\"main\"\n\"2660349\";\"Hindelbank\";\"main\"\n\"2660350\";\"Himmelried\";\"main\"\n\"2660351\";\"Hilterfingen\";\"main\"\n\"2660352\";\"Hildisrieden\";\"main\"\n\"2660353\";\"Hettlingen\";\"main\"\n\"2660355\";\"Herzogenbuchsee\";\"main\"\n\"2660359\";\"Herrliberg\";\"main\"\n\"2660361\";\"Hermiswil\";\"main\"\n\"2660365\";\"Herisau\";\"main\"\n\"2660365\";\"Herisan\";\"other\"\n\"2660367\";\"Hergiswil\";\"main\"\n\"2660367\";\"Hergiswil NW\";\"other\"\n\"2660371\";\"Hérémence\";\"main\"\n\"2660371\";\"Heremence\";\"ascii\"\n\"2660376\";\"Henggart\";\"main\"\n\"2660386\";\"Heitenried\";\"main\"\n\"2660388\";\"Heimiswil\";\"main\"\n\"2660390\";\"Heimberg\";\"main\"\n\"2660390\";\"Heimberg BE\";\"other\"\n\"2660392\";\"Heiden\";\"main\"\n\"2660392\";\"Heiden AR\";\"other\"\n\"2660394\";\"Oberwinterthur (Kreis 2) / Hegi\";\"main\"\n\"2660394\";\"Hegi\";\"other\"\n\"2660400\";\"Hausen am Albis / Hausen (Dorf)\";\"main\"\n\"2660400\";\"Hausen (Dorf)\";\"other\"\n\"2660410\";\"Hasle\";\"main\"\n\"2660418\";\"Hallau\";\"main\"\n\"2660424\";\"Hägglingen\";\"main\"\n\"2660424\";\"Hagglingen\";\"ascii\"\n\"2660425\";\"Häggenschwil\";\"main\"\n\"2660425\";\"Haggenschwil\";\"ascii\"\n\"2660426\";\"Hägendorf\";\"main\"\n\"2660426\";\"Hagendorf\";\"ascii\"\n\"2660432\";\"Güttingen\";\"main\"\n\"2660432\";\"Guttingen\";\"ascii\"\n\"2660441\";\"Gunzwil\";\"main\"\n\"2660442\";\"Gunzgen\";\"main\"\n\"2660452\";\"Guggisberg\";\"main\"\n\"2660461\";\"Gstaad\";\"main\"\n\"2660462\";\"Gryon\";\"main\"\n\"2660463\";\"Gruyères\";\"main\"\n\"2660463\";\"Gruyeres\";\"ascii\"\n\"2660463\";\"Gruyeres FR\";\"other\"\n\"2660463\";\"Gruyères FR\";\"other\"\n\"2660465\";\"Grüsch\";\"main\"\n\"2660465\";\"Grusch\";\"ascii\"\n\"2660474\";\"Grosswangen\";\"main\"\n\"2660489\";\"Andelfingen\";\"main\"\n\"2660489\";\"Grossandelfingen\";\"ascii\"\n\"2660491\";\"Grossaffoltern\";\"main\"\n\"2660493\";\"Grône\";\"main\"\n\"2660493\";\"Grone\";\"ascii\"\n\"2660493\";\"Grun\";\"other\"\n\"2660495\";\"Grolley\";\"main\"\n\"2660498\";\"Grindelwald\";\"main\"\n\"2660498\";\"gryndlwwld\";\"other\"\n\"2660498\";\"gurinderuvu~aruto\";\"other\"\n\"2660498\";\"gurinderuwaruto\";\"other\"\n\"2660498\";\"גרינדלוולד\";\"other\"\n\"2660498\";\"グリンデルワルト\";\"other\"\n\"2660498\";\"グリンデルヴァルト\";\"other\"\n\"2660503\";\"Grimisuat\";\"main\"\n\"2660512\";\"Grenchen\";\"main\"\n\"2660513\";\"Grellingen\";\"main\"\n\"2660515\";\"Greifensee\";\"main\"\n\"2660519\";\"Gravesano\";\"main\"\n\"2660523\";\"Gränichen\";\"main\"\n\"2660523\";\"Granichen\";\"ascii\"\n\"2660529\";\"Grandson\";\"main\"\n\"2660531\";\"Grand-Savagnier\";\"main\"\n\"2660532\";\"Le Grand-Saconnex\";\"main\"\n\"2660532\";\"Grand-Saconnex\";\"other\"\n\"2660532\";\"Saconnex\";\"other\"\n\"2660542\";\"Grächen\";\"main\"\n\"2660542\";\"Grachen\";\"ascii\"\n\"2660542\";\"Gracher\";\"other\"\n\"2660542\";\"Grächer\";\"other\"\n\"2660543\";\"Grabs\";\"main\"\n\"2660549\";\"Gossau\";\"main\"\n\"2660550\";\"Gossau\";\"main\"\n\"2660557\";\"Gorgier\";\"main\"\n\"2660559\";\"Gordola\";\"main\"\n\"2660563\";\"Gontenschwil\";\"main\"\n\"2660564\";\"Gonten\";\"main\"\n\"2660568\";\"Gommiswald\";\"main\"\n\"2660572\";\"Goldingen\";\"main\"\n\"2660573\";\"Goldau\";\"main\"\n\"2660575\";\"Goldach\";\"main\"\n\"2660579\";\"Glovelier\";\"main\"\n\"2660587\";\"Glattfelden\";\"main\"\n\"2660590\";\"Glattbrugg\";\"main\"\n\"2660590\";\"Glattburg\";\"other\"\n\"2660594\";\"Glarus\";\"main\"\n\"2660594\";\"Glaris\";\"other\"\n\"2660594\";\"Glarona\";\"other\"\n\"2660600\";\"Gland\";\"main\"\n\"2660603\";\"Giubiasco\";\"main\"\n\"2660604\";\"Giswil\";\"main\"\n\"2660607\";\"Gipf-Oberfrick\";\"main\"\n\"2660612\";\"Gimel\";\"main\"\n\"2660614\";\"Giffers\";\"main\"\n\"2660625\";\"Geuensee\";\"main\"\n\"2660631\";\"Gersau\";\"main\"\n\"2660637\";\"Gerlafingen\";\"main\"\n\"2660637\";\"Niedergerlafingen\";\"other\"\n\"2660643\";\"Genolier\";\"main\"\n\"2660646\";\"Genève\";\"main\"\n\"2660646\";\"Geneve\";\"ascii\"\n\"2660646\";\"Cenevre\";\"other\"\n\"2660646\";\"Genava\";\"other\"\n\"2660646\";\"Genebe\";\"other\"\n\"2660646\";\"Genebra\";\"other\"\n\"2660646\";\"Geneue\";\"other\"\n\"2660646\";\"Geneva\";\"other\"\n\"2660646\";\"Genevi\";\"other\"\n\"2660646\";\"Genevo\";\"other\"\n\"2660646\";\"Genevra\";\"other\"\n\"2660646\";\"Genewa\";\"other\"\n\"2660646\";\"Genf\";\"other\"\n\"2660646\";\"Ginebra\";\"other\"\n\"2660646\";\"Ginevra\";\"other\"\n\"2660646\";\"Jenewa\";\"other\"\n\"2660646\";\"Xenebra - Geneve\";\"other\"\n\"2660646\";\"Xenebra - Genève\";\"other\"\n\"2660646\";\"Zeneva\";\"other\"\n\"2660646\";\"Zhehneva\";\"other\"\n\"2660646\";\"Zheneva\";\"other\"\n\"2660646\";\"Znev\";\"other\"\n\"2660646\";\"janiva\";\"other\"\n\"2660646\";\"jeneba\";\"other\"\n\"2660646\";\"jnyf\";\"other\"\n\"2660646\";\"jnywa\";\"other\"\n\"2660646\";\"junevu\";\"other\"\n\"2660646\";\"ri nei wa\";\"other\"\n\"2660646\";\"z'nbh\";\"other\"\n\"2660646\";\"zheneva\";\"other\"\n\"2660646\";\"Ĝenevo\";\"other\"\n\"2660646\";\"Ženeva\";\"other\"\n\"2660646\";\"Ženēva\";\"other\"\n\"2660646\";\"Γενέβη\";\"other\"\n\"2660646\";\"Γενευη\";\"other\"\n\"2660646\";\"Γενεύη\";\"other\"\n\"2660646\";\"Женева\";\"other\"\n\"2660646\";\"Жэнева\";\"other\"\n\"2660646\";\"Ժնև\";\"other\"\n\"2660646\";\"ז'נבה\";\"other\"\n\"2660646\";\"جنيف\";\"other\"\n\"2660646\";\"جنیوا\";\"other\"\n\"2660646\";\"جەنۋە\";\"other\"\n\"2660646\";\"जनीवा\";\"other\"\n\"2660646\";\"ჟენევა\";\"other\"\n\"2660646\";\"ジュネーヴ\";\"other\"\n\"2660646\";\"日内瓦\";\"other\"\n\"2660646\";\"제네바\";\"other\"\n\"2660656\";\"Gelterkinden\";\"main\"\n\"2660659\";\"Gebenstorf\";\"main\"\n\"2660665\";\"Ganterschwil\";\"main\"\n\"2660665\";\"Ganterswil\";\"other\"\n\"2660670\";\"Gams\";\"main\"\n\"2660672\";\"Gampel\";\"main\"\n\"2660681\";\"Gais\";\"main\"\n\"2660681\";\"Gais AR\";\"other\"\n\"2660688\";\"Gachnang\";\"main\"\n\"2660700\";\"Fully\";\"main\"\n\"2660701\";\"Füllinsdorf\";\"main\"\n\"2660701\";\"Fullinsdorf\";\"ascii\"\n\"2660703\";\"Fulenbach\";\"main\"\n\"2660707\";\"Frutigen\";\"main\"\n\"2660710\";\"Froideville\";\"main\"\n\"2660716\";\"Frick\";\"main\"\n\"2660718\";\"Fribourg\";\"main\"\n\"2660718\";\"Freiburg\";\"other\"\n\"2660718\";\"Freiburg im UEechtland\";\"other\"\n\"2660718\";\"Freiburg im Uechtland\";\"other\"\n\"2660718\";\"Freiburg im Üechtland\";\"other\"\n\"2660718\";\"Friborg\";\"other\"\n\"2660718\";\"Fribur\";\"other\"\n\"2660718\";\"Friburas\";\"other\"\n\"2660718\";\"Friburg\";\"other\"\n\"2660718\";\"Friburgo\";\"other\"\n\"2660718\";\"Friburgo im UEechtland\";\"other\"\n\"2660718\";\"Friburgo im Üechtland\";\"other\"\n\"2660718\";\"Friburgum\";\"other\"\n\"2660718\";\"Fribôrg\";\"other\"\n\"2660718\";\"Fribūras\";\"other\"\n\"2660718\";\"Fryburg\";\"other\"\n\"2660718\";\"furiburu\";\"other\"\n\"2660718\";\"Фрибур\";\"other\"\n\"2660718\";\"フリブール\";\"other\"\n\"2660719\";\"Frenkendorf\";\"main\"\n\"2660721\";\"Freienbach\";\"main\"\n\"2660726\";\"Frauenkappelen\";\"main\"\n\"2660727\";\"Frauenfeld\";\"main\"\n\"2660727\";\"Фрауенфелд\";\"other\"\n\"2660728\";\"Fraubrunnen\";\"main\"\n\"2660733\";\"Founex\";\"main\"\n\"2660742\";\"Fontenais\";\"main\"\n\"2660745\";\"Fontainemelon\";\"main\"\n\"2660746\";\"Flurlingen\";\"main\"\n\"2660747\";\"Flums\";\"main\"\n\"2660748\";\"Flühli\";\"main\"\n\"2660748\";\"Fluhli\";\"ascii\"\n\"2660751\";\"Flüelen\";\"main\"\n\"2660751\";\"Flueelen\";\"ascii\"\n\"2660751\";\"Fljujlen\";\"other\"\n\"2660751\";\"Флюйлен\";\"other\"\n\"2660757\";\"Flims\";\"main\"\n\"2660757\";\"Flims Dorf\";\"other\"\n\"2660758\";\"Fleurier\";\"main\"\n\"2660762\";\"Flawil\";\"main\"\n\"2660764\";\"Flamatt\";\"main\"\n\"2660766\";\"Fischingen\";\"main\"\n\"2660781\";\"Fiesch\";\"main\"\n\"2660787\";\"Feusisberg\";\"main\"\n\"2660788\";\"Feuerthalen\";\"main\"\n\"2660798\";\"Ferenbalm\";\"main\"\n\"2660802\";\"Felsberg\";\"main\"\n\"2660805\";\"Feldmeilen\";\"main\"\n\"2660812\";\"Fehraltorf\";\"main\"\n\"2660826\";\"Fällanden\";\"main\"\n\"2660826\";\"Fallanden\";\"ascii\"\n\"2660830\";\"Faido\";\"main\"\n\"2660830\";\"Faido-Borgo\";\"other\"\n\"2660840\";\"Evolène\";\"main\"\n\"2660840\";\"Evolene\";\"ascii\"\n\"2660841\";\"Evionnaz\";\"main\"\n\"2660842\";\"Evilard\";\"main\"\n\"2660842\";\"Leubringen/Magglingen\";\"other\"\n\"2660848\";\"Ettiswil\";\"main\"\n\"2660849\";\"Ettingen\";\"main\"\n\"2660851\";\"Estavayer-le-Lac\";\"main\"\n\"2660851\";\"Estavayer\";\"other\"\n\"2660856\";\"Escholzmatt\";\"main\"\n\"2660857\";\"Eschlikon\";\"main\"\n\"2660857\";\"Eschlikon-Dorf\";\"other\"\n\"2660859\";\"Eschenz\";\"main\"\n\"2660860\";\"Eschenbach\";\"main\"\n\"2660863\";\"Erstfeld\";\"main\"\n\"2660864\";\"Ersigen\";\"main\"\n\"2660869\";\"Ermatingen\";\"main\"\n\"2660871\";\"Erlenbach im Simmental\";\"main\"\n\"2660872\";\"Erlenbach\";\"main\"\n\"2660873\";\"Erlen\";\"main\"\n\"2660874\";\"Erlach\";\"main\"\n\"2660876\";\"Eriswil\";\"main\"\n\"2660881\";\"Ependes\";\"main\"\n\"2660884\";\"Epalinges\";\"main\"\n\"2660887\";\"Entlebuch\";\"main\"\n\"2660892\";\"Ennetbürgen\";\"main\"\n\"2660892\";\"Ennetburgen\";\"ascii\"\n\"2660892\";\"Ennetbuergen\";\"other\"\n\"2660893\";\"Ennenda\";\"main\"\n\"2660902\";\"Engelberg\";\"main\"\n\"2660902\";\"Engelberg OW\";\"other\"\n\"2660907\";\"Emmetten\";\"main\"\n\"2660907\";\"Emmeuen\";\"other\"\n\"2660911\";\"Emmen\";\"main\"\n\"2660913\";\"Embrach\";\"main\"\n\"2660913\";\"Unter Embrach\";\"other\"\n\"2660920\";\"Elgg\";\"main\"\n\"2660925\";\"Einsiedeln\";\"main\"\n\"2660927\";\"Eiken\";\"main\"\n\"2660930\";\"Eichberg\";\"main\"\n\"2660931\";\"Eich\";\"main\"\n\"2660932\";\"Egnach\";\"main\"\n\"2660933\";\"Egliswil\";\"main\"\n\"2660935\";\"Eggiwil\";\"main\"\n\"2660937\";\"Eggersriet\";\"main\"\n\"2660942\";\"Egg\";\"main\"\n\"2660943\";\"Egerkingen\";\"main\"\n\"2660944\";\"Effretikon\";\"main\"\n\"2660947\";\"Ecublens\";\"main\"\n\"2660950\";\"Echallens\";\"main\"\n\"2660951\";\"Ebnat\";\"main\"\n\"2660951\";\"Ebnat-Kappel\";\"other\"\n\"2660953\";\"Ebikon\";\"main\"\n\"2660960\";\"Dürrenroth\";\"main\"\n\"2660960\";\"Durrenroth\";\"ascii\"\n\"2660960\";\"Duerrenroth\";\"other\"\n\"2660962\";\"Dürrenäsch\";\"main\"\n\"2660962\";\"Durrenasch\";\"ascii\"\n\"2660965\";\"Dürnten\";\"main\"\n\"2660965\";\"Durnten\";\"ascii\"\n\"2660970\";\"Düdingen\";\"main\"\n\"2660970\";\"Dudingen\";\"ascii\"\n\"2660970\";\"Duedingen\";\"other\"\n\"2660970\";\"Guin\";\"other\"\n\"2660971\";\"Dübendorf\";\"main\"\n\"2660971\";\"Dubendorf\";\"ascii\"\n\"2660986\";\"Dottikon\";\"main\"\n\"2660989\";\"Dornach\";\"main\"\n\"2660999\";\"Domdidier\";\"main\"\n\"2661000\";\"Dombresson\";\"main\"\n\"2661001\";\"Domat\";\"main\"\n\"2661001\";\"Domat Ems\";\"other\"\n\"2661001\";\"Ems\";\"other\"\n\"2661009\";\"Disentis\";\"main\"\n\"2661014\";\"Dietlikon / Dietlikon (Dorf)\";\"main\"\n\"2661014\";\"Dietlikon (Dorf)\";\"other\"\n\"2661015\";\"Dietikon\";\"main\"\n\"2661021\";\"Diepoldsau\";\"main\"\n\"2661023\";\"Diemtigen\";\"main\"\n\"2661024\";\"Dielsdorf\";\"main\"\n\"2661025\";\"Diegten\";\"main\"\n\"2661030\";\"Derendingen\";\"main\"\n\"2661035\";\"Delémont\";\"main\"\n\"2661035\";\"Delemont\";\"ascii\"\n\"2661035\";\"Delsberg\";\"other\"\n\"2661036\";\"Deitingen\";\"main\"\n\"2661038\";\"Degersheim\";\"main\"\n\"2661039\";\"Davos\";\"main\"\n\"2661039\";\"Давос\";\"other\"\n\"2661046\";\"Dardagny\";\"main\"\n\"2661053\";\"Dallenwil\";\"main\"\n\"2661057\";\"Dagmersellen\";\"main\"\n\"2661058\";\"Dachsen\";\"main\"\n\"2661063\";\"Cully\";\"main\"\n\"2661064\";\"Cugy\";\"main\"\n\"2661066\";\"Cugnasco\";\"main\"\n\"2661072\";\"Crissier\";\"main\"\n\"2661086\";\"Couvet\";\"main\"\n\"2661089\";\"Courtételle\";\"main\"\n\"2661089\";\"Courtetelle\";\"ascii\"\n\"2661092\";\"Courtelary\";\"main\"\n\"2661094\";\"Court\";\"main\"\n\"2661095\";\"Courroux\";\"main\"\n\"2661096\";\"Courrendlin\";\"main\"\n\"2661098\";\"Gurwolf\";\"main\"\n\"2661098\";\"Cougevaux\";\"other\"\n\"2661099\";\"Courgenay\";\"main\"\n\"2661100\";\"Courfaivre\";\"main\"\n\"2661104\";\"Cossonay\";\"main\"\n\"2661104\";\"Cossonay-Ville\";\"other\"\n\"2661110\";\"Cortaillod\";\"main\"\n\"2661110\";\"Cortuillod\";\"other\"\n\"2661111\";\"Corsier\";\"main\"\n\"2661114\";\"Cornaux\";\"main\"\n\"2661115\";\"Corminboeuf\";\"main\"\n\"2661117\";\"Corgémont\";\"main\"\n\"2661117\";\"Corgemont\";\"ascii\"\n\"2661124\";\"Coppet\";\"main\"\n\"2661129\";\"Conthey\";\"main\"\n\"2661132\";\"Confignon\";\"main\"\n\"2661140\";\"Comano\";\"main\"\n\"2661144\";\"Colombier\";\"main\"\n\"2661148\";\"Collombey\";\"main\"\n\"2661160\";\"Claro\";\"main\"\n\"2661167\";\"Churwalden\";\"main\"\n\"2661169\";\"Chur\";\"main\"\n\"2661169\";\"Coira\";\"other\"\n\"2661169\";\"Coire\";\"other\"\n\"2661169\";\"Couere\";\"other\"\n\"2661169\";\"Couère\";\"other\"\n\"2661169\";\"Cuera\";\"other\"\n\"2661169\";\"Cuira\";\"other\"\n\"2661169\";\"Curia Raetorum\";\"other\"\n\"2661169\";\"Kur\";\"other\"\n\"2661169\";\"ku er\";\"other\"\n\"2661169\";\"Кур\";\"other\"\n\"2661169\";\"庫爾\";\"other\"\n\"2661172\";\"Chippis\";\"main\"\n\"2661176\";\"Chiasso\";\"main\"\n\"2661178\";\"Chézard-Saint-Martin\";\"main\"\n\"2661178\";\"Chezard-Saint-Martin\";\"ascii\"\n\"2661178\";\"Saint-Martin-Chezard\";\"other\"\n\"2661178\";\"Saint-Martin-Chézard\";\"other\"\n\"2661180\";\"Chexbres\";\"main\"\n\"2661188\";\"Chermignon-d'en Haut\";\"main\"\n\"2661188\";\"Chermignon\";\"other\"\n\"2661191\";\"Chêne-Bourg\";\"main\"\n\"2661191\";\"Chene-Bourg\";\"ascii\"\n\"2661194\";\"Chavornay\";\"main\"\n\"2661197\";\"Chavannes\";\"main\"\n\"2661202\";\"Châtel-Saint-Denis\";\"main\"\n\"2661202\";\"Chatel-Saint-Denis\";\"ascii\"\n\"2661205\";\"Château-d'Oex\";\"main\"\n\"2661205\";\"Chateau-d'Oex\";\"ascii\"\n\"2661205\";\"Shato-Do\";\"other\"\n\"2661205\";\"Шато-До\";\"other\"\n\"2661209\";\"Charrat-les-Chênes\";\"main\"\n\"2661209\";\"Charrat-les-Chenes\";\"ascii\"\n\"2661209\";\"Charrat\";\"other\"\n\"2661211\";\"Charmey\";\"main\"\n\"2661214\";\"Chardonne\";\"main\"\n\"2661223\";\"Champéry\";\"main\"\n\"2661223\";\"Champery\";\"ascii\"\n\"2661226\";\"Chamoson\";\"main\"\n\"2661228\";\"Cham\";\"main\"\n\"2661229\";\"Chalais\";\"main\"\n\"2661231\";\"Cevio\";\"main\"\n\"2661233\";\"Cernier\";\"main\"\n\"2661241\";\"Celerina\";\"main\"\n\"2661242\";\"Cazis\";\"main\"\n\"2661247\";\"Caux\";\"main\"\n\"2661247\";\"Caux sur Montreux\";\"other\"\n\"2661247\";\"Ko\";\"other\"\n\"2661247\";\"Ко\";\"other\"\n\"2661253\";\"Castel San Pietro\";\"main\"\n\"2661253\";\"Castello San Pietro\";\"other\"\n\"2661260\";\"Caslano\";\"main\"\n\"2661265\";\"Carouge\";\"main\"\n\"2661269\";\"Canobbio\";\"main\"\n\"2661280\";\"Camorino\";\"main\"\n\"2661293\";\"Cadro\";\"main\"\n\"2661294\";\"Cadenazzo\";\"main\"\n\"2661295\";\"Cadempino\";\"main\"\n\"2661297\";\"Buus\";\"main\"\n\"2661299\";\"Buttwil\";\"main\"\n\"2661300\";\"Buttisholz\";\"main\"\n\"2661302\";\"Bütschwil\";\"main\"\n\"2661302\";\"Butschwil\";\"ascii\"\n\"2661305\";\"Bussigny\";\"main\"\n\"2661306\";\"Büsserach\";\"main\"\n\"2661306\";\"Busserach\";\"ascii\"\n\"2661313\";\"Büron\";\"main\"\n\"2661313\";\"Buron\";\"ascii\"\n\"2661315\";\"Bürglen\";\"main\"\n\"2661315\";\"Burglen\";\"ascii\"\n\"2661316\";\"Bürglen\";\"main\"\n\"2661316\";\"Burglen\";\"ascii\"\n\"2661318\";\"Burgistein\";\"main\"\n\"2661321\";\"Burgdorf\";\"main\"\n\"2661321\";\"Berthoud\";\"other\"\n\"2661321\";\"Burgdorf BE\";\"other\"\n\"2661328\";\"Buochs\";\"main\"\n\"2661337\";\"Bulle\";\"main\"\n\"2661338\";\"Bülach\";\"main\"\n\"2661338\";\"Bulach\";\"ascii\"\n\"2661343\";\"Bühler\";\"main\"\n\"2661343\";\"Buhler\";\"ascii\"\n\"2661343\";\"Buehler\";\"other\"\n\"2661343\";\"Buehler AR\";\"other\"\n\"2661343\";\"Bühler AR\";\"other\"\n\"2661348\";\"Buchs\";\"main\"\n\"2661348\";\"Buchs AG\";\"other\"\n\"2661349\";\"Buchs\";\"main\"\n\"2661350\";\"Buchrain\";\"main\"\n\"2661352\";\"Buchholterberg\";\"main\"\n\"2661359\";\"Bubikon\";\"main\"\n\"2661360\";\"Bubendorf\";\"main\"\n\"2661361\";\"Brüttisellen\";\"main\"\n\"2661361\";\"Bruttisellen\";\"ascii\"\n\"2661362\";\"Brütten\";\"main\"\n\"2661362\";\"Brutten\";\"ascii\"\n\"2661365\";\"Brusio\";\"main\"\n\"2661374\";\"Brugg\";\"main\"\n\"2661375\";\"Brügg\";\"main\"\n\"2661375\";\"Brugg\";\"ascii\"\n\"2661375\";\"Brjugg\";\"other\"\n\"2661375\";\"Bruegg\";\"other\"\n\"2661375\";\"Брюгг\";\"other\"\n\"2661380\";\"Bronschhofen\";\"main\"\n\"2661383\";\"Broc\";\"main\"\n\"2661384\";\"Brittnau\";\"main\"\n\"2661388\";\"Brissago\";\"main\"\n\"2661388\";\"Brisa\";\"other\"\n\"2661388\";\"Brissago TI\";\"other\"\n\"2661389\";\"Brislach\";\"main\"\n\"2661394\";\"Brig\";\"main\"\n\"2661394\";\"Briga-Glis\";\"other\"\n\"2661394\";\"Brigue\";\"other\"\n\"2661394\";\"Brigue-Glis\";\"other\"\n\"2661394\";\"buriku\";\"other\"\n\"2661394\";\"Бриг\";\"other\"\n\"2661394\";\"ブリーク\";\"other\"\n\"2661398\";\"Brienz\";\"main\"\n\"2661398\";\"Brienz BE\";\"other\"\n\"2661398\";\"Brienzola\";\"other\"\n\"2661398\";\"burientsu\";\"other\"\n\"2661398\";\"ブリエンツ\";\"other\"\n\"2661407\";\"Bremgarten\";\"main\"\n\"2661407\";\"Bremgarten AG\";\"other\"\n\"2661407\";\"Bremogartum\";\"other\"\n\"2661412\";\"Breitenbach\";\"main\"\n\"2661414\";\"Breíl\";\"main\"\n\"2661414\";\"Breil\";\"ascii\"\n\"2661414\";\"Brigels\";\"other\"\n\"2661425\";\"Bowil\";\"main\"\n\"2661429\";\"Boudry\";\"main\"\n\"2661432\";\"Bottmingen\";\"main\"\n\"2661433\";\"Bottighofen\";\"main\"\n\"2661435\";\"Bottens\";\"main\"\n\"2661437\";\"Bösingen\";\"main\"\n\"2661437\";\"Bosingen\";\"ascii\"\n\"2661437\";\"Grossbosingen\";\"other\"\n\"2661437\";\"Grossbösingen\";\"other\"\n\"2661446\";\"Bonstetten\";\"main\"\n\"2661449\";\"Boniswil\";\"main\"\n\"2661450\";\"Bönigen\";\"main\"\n\"2661450\";\"Bonigen\";\"ascii\"\n\"2661452\";\"Boncourt\";\"main\"\n\"2661453\";\"Bonaduz\";\"main\"\n\"2661455\";\"Boltigen\";\"main\"\n\"2661456\";\"Bolligen\";\"main\"\n\"2661456\";\"Bollaigues\";\"other\"\n\"2661456\";\"Bolligen-Dorf\";\"other\"\n\"2661463\";\"Bodio\";\"main\"\n\"2661467\";\"Blumenstein\";\"main\"\n\"2661467\";\"Blumenstein BE\";\"other\"\n\"2661468\";\"Blonay\";\"main\"\n\"2661490\";\"Birsfelden\";\"main\"\n\"2661493\";\"Birr\";\"main\"\n\"2661493\";\"Birr-Lufig\";\"other\"\n\"2661495\";\"Birmenstorf\";\"main\"\n\"2661496\";\"Birmensdorf\";\"main\"\n\"2661496\";\"Birmenstorf\";\"other\"\n\"2661498\";\"Bioggio\";\"main\"\n\"2661499\";\"Binningen\";\"main\"\n\"2661503\";\"Bilten\";\"main\"\n\"2661506\";\"Biglen\";\"main\"\n\"2661511\";\"Bière\";\"main\"\n\"2661511\";\"Biere\";\"ascii\"\n\"2661513\";\"Biel\";\"main\"\n\"2661513\";\"Biel-Bienne\";\"other\"\n\"2661513\";\"Biel/Bienne\";\"other\"\n\"2661513\";\"Bienna\";\"other\"\n\"2661513\";\"Bienne\";\"other\"\n\"2661513\";\"Bil'\";\"other\"\n\"2661513\";\"Биль\";\"other\"\n\"2661519\";\"Biberist\";\"main\"\n\"2661524\";\"Biasca\";\"main\"\n\"2661524\";\"Biasco\";\"other\"\n\"2661527\";\"Bex\";\"main\"\n\"2661528\";\"Bévilard\";\"main\"\n\"2661528\";\"Bevilard\";\"ascii\"\n\"2661531\";\"Bevaix\";\"main\"\n\"2661533\";\"Bettlach\";\"main\"\n\"2661534\";\"Bettingen\";\"main\"\n\"2661542\";\"Beromünster\";\"main\"\n\"2661542\";\"Beromunster\";\"ascii\"\n\"2661542\";\"Munster\";\"other\"\n\"2661542\";\"Münster\";\"other\"\n\"2661547\";\"Bernex\";\"main\"\n\"2661552\";\"Bern\";\"main\"\n\"2661552\";\"Bann\";\"other\"\n\"2661552\";\"Berna\";\"other\"\n\"2661552\";\"Bernas\";\"other\"\n\"2661552\";\"Berne\";\"other\"\n\"2661552\";\"Berni\";\"other\"\n\"2661552\";\"Berno\";\"other\"\n\"2661552\";\"Bundesstadt\";\"other\"\n\"2661552\";\"Bèrna\";\"other\"\n\"2661552\";\"atharvaveda\";\"other\"\n\"2661552\";\"barna\";\"other\"\n\"2661552\";\"beleun\";\"other\"\n\"2661552\";\"berun\";\"other\"\n\"2661552\";\"bo en\";\"other\"\n\"2661552\";\"bo er ni\";\"other\"\n\"2661552\";\"brn\";\"other\"\n\"2661552\";\"Βέρνη\";\"other\"\n\"2661552\";\"Берн\";\"other\"\n\"2661552\";\"Բեռն\";\"other\"\n\"2661552\";\"ברן\";\"other\"\n\"2661552\";\"برن\";\"other\"\n\"2661552\";\"بېرن\";\"other\"\n\"2661552\";\"ܒܪܢ\";\"other\"\n\"2661552\";\"अथर्ववेद\";\"other\"\n\"2661552\";\"बर्न\";\"other\"\n\"2661552\";\"ቤርን\";\"other\"\n\"2661552\";\"ベルン\";\"other\"\n\"2661552\";\"伯尔尼\";\"other\"\n\"2661552\";\"伯恩\";\"other\"\n\"2661552\";\"베른\";\"other\"\n\"2661554\";\"Beringen\";\"main\"\n\"2661555\";\"Berikon\";\"main\"\n\"2661557\";\"Berg\";\"main\"\n\"2661560\";\"Benken\";\"main\"\n\"2661563\";\"Belp\";\"main\"\n\"2661564\";\"Belmont-sur-Lausanne\";\"main\"\n\"2661566\";\"Bellmund\";\"main\"\n\"2661567\";\"Bellinzona\";\"main\"\n\"2661567\";\"Belinzona\";\"other\"\n\"2661567\";\"Bellinzone\";\"other\"\n\"2661567\";\"Bilitio\";\"other\"\n\"2661567\";\"berrintsu~ona\";\"other\"\n\"2661567\";\"ベッリンツォーナ\";\"other\"\n\"2661568\";\"Bellevue\";\"main\"\n\"2661574\";\"Belfaux\";\"main\"\n\"2661579\";\"Begnins\";\"main\"\n\"2661585\";\"Beckenried\";\"main\"\n\"2661586\";\"Beatenberg\";\"main\"\n\"2661586\";\"Beatenbeig\";\"other\"\n\"2661593\";\"Bauma\";\"main\"\n\"2661596\";\"Bätterkinden\";\"main\"\n\"2661596\";\"Batterkinden\";\"ascii\"\n\"2661599\";\"Bassersdorf\";\"main\"\n\"2661600\";\"Basse-Nendaz\";\"main\"\n\"2661600\";\"Nendaz\";\"other\"\n\"2661601\";\"Bassecourt\";\"main\"\n\"2661604\";\"Basel\";\"main\"\n\"2661604\";\"Bala\";\"other\"\n\"2661604\";\"Bale\";\"other\"\n\"2661604\";\"Basilea\";\"other\"\n\"2661604\";\"Basileia\";\"other\"\n\"2661604\";\"Basilej\";\"other\"\n\"2661604\";\"Basilia\";\"other\"\n\"2661604\";\"Basiléia\";\"other\"\n\"2661604\";\"Basle\";\"other\"\n\"2661604\";\"Bazel\";\"other\"\n\"2661604\";\"Bazel'\";\"other\"\n\"2661604\";\"Bazelis\";\"other\"\n\"2661604\";\"Bazelo\";\"other\"\n\"2661604\";\"Bazilej\";\"other\"\n\"2661604\";\"Bazylea\";\"other\"\n\"2661604\";\"Bâla\";\"other\"\n\"2661604\";\"Bâle\";\"other\"\n\"2661604\";\"Robur\";\"other\"\n\"2661604\";\"ba sai er\";\"other\"\n\"2661604\";\"bajel\";\"other\"\n\"2661604\";\"bazeru\";\"other\"\n\"2661604\";\"bazl\";\"other\"\n\"2661604\";\"Базел\";\"other\"\n\"2661604\";\"Базель\";\"other\"\n\"2661604\";\"Բազել\";\"other\"\n\"2661604\";\"באזל\";\"other\"\n\"2661604\";\"بازل\";\"other\"\n\"2661604\";\"バーゼル\";\"other\"\n\"2661604\";\"巴塞尔\";\"other\"\n\"2661604\";\"바젤\";\"other\"\n\"2661612\";\"Bäriswil\";\"main\"\n\"2661612\";\"Bariswil\";\"ascii\"\n\"2661613\";\"Bäretswil\";\"main\"\n\"2661613\";\"Baretswil\";\"ascii\"\n\"2661624\";\"Baltschieder\";\"main\"\n\"2661626\";\"Balsthal\";\"main\"\n\"2661626\";\"Balstal\";\"other\"\n\"2661632\";\"Ballwil\";\"main\"\n\"2661635\";\"Balgach\";\"main\"\n\"2661637\";\"Balerna\";\"main\"\n\"2661641\";\"Bagnes\";\"main\"\n\"2661644\";\"Bad Ragaz\";\"main\"\n\"2661644\";\"Ragaz\";\"other\"\n\"2661646\";\"Baden\";\"main\"\n\"2661646\";\"Aquae Helveticae\";\"other\"\n\"2661646\";\"Baden AG\";\"other\"\n\"2661651\";\"Bachenbülach\";\"main\"\n\"2661651\";\"Bachenbulach\";\"ascii\"\n\"2661653\";\"Baar\";\"main\"\n\"2661653\";\"Bar\";\"other\"\n\"2661653\";\"Бар\";\"other\"\n\"2661655\";\"Ayent\";\"main\"\n\"2661658\";\"Avry\";\"main\"\n\"2661658\";\"Avry-sur-Matran\";\"other\"\n\"2661661\";\"Avenches\";\"main\"\n\"2661663\";\"Auw\";\"main\"\n\"2661664\";\"Auvernier\";\"main\"\n\"2661666\";\"Zürich (Kreis 4)\";\"main\"\n\"2661666\";\"Aussersihl\";\"ascii\"\n\"2661666\";\"Zuerich (Kreis 4)\";\"other\"\n\"2661687\";\"Aubonne\";\"main\"\n\"2661689\";\"Au\";\"main\"\n\"2661691\";\"Au\";\"main\"\n\"2661692\";\"Attiswil\";\"main\"\n\"2661693\";\"Attinghausen\";\"main\"\n\"2661694\";\"Attalens\";\"main\"\n\"2661698\";\"Ascona\";\"main\"\n\"2661701\";\"Arzo\";\"main\"\n\"2661703\";\"Arzier\";\"main\"\n\"2661708\";\"Arth\";\"main\"\n\"2661712\";\"Arosa\";\"main\"\n\"2661712\";\"Arosa Bahnhof\";\"other\"\n\"2661719\";\"Arlesheim\";\"main\"\n\"2661720\";\"Aristau\";\"main\"\n\"2661721\";\"Arisdorf\";\"main\"\n\"2661725\";\"Ardon\";\"main\"\n\"2661729\";\"Arch\";\"main\"\n\"2661731\";\"Arbon\";\"main\"\n\"2661738\";\"Apples\";\"main\"\n\"2661740\";\"Appenzell\";\"main\"\n\"2661740\";\"Apencelo\";\"other\"\n\"2661745\";\"Anières\";\"main\"\n\"2661745\";\"Anieres\";\"ascii\"\n\"2661748\";\"Andwil\";\"main\"\n\"2661750\";\"Andermatt\";\"main\"\n\"2661750\";\"Orsera\";\"other\"\n\"2661750\";\"Андерматт\";\"other\"\n\"2661756\";\"Amriswil\";\"main\"\n\"2661758\";\"Amden\";\"main\"\n\"2661766\";\"Altstätten\";\"main\"\n\"2661766\";\"Altstatten\";\"ascii\"\n\"2661768\";\"Altnau\";\"main\"\n\"2661770\";\"Altishofen\";\"main\"\n\"2661773\";\"Alterswil\";\"main\"\n\"2661776\";\"Altendorf\";\"main\"\n\"2661780\";\"Altdorf\";\"main\"\n\"2661780\";\"Al'tdorf\";\"other\"\n\"2661780\";\"Altdorf UR\";\"other\"\n\"2661780\";\"Artofe\";\"other\"\n\"2661780\";\"arutodorufu\";\"other\"\n\"2661780\";\"Альтдорф\";\"other\"\n\"2661780\";\"アルトドルフ\";\"other\"\n\"2661789\";\"Alpnach\";\"main\"\n\"2661810\";\"Allschwil\";\"main\"\n\"2661814\";\"Alle\";\"main\"\n\"2661834\";\"Aigle\";\"main\"\n\"2661836\";\"Agno\";\"main\"\n\"2661842\";\"Affoltern\";\"main\"\n\"2661842\";\"Affoltern am Albis\";\"other\"\n\"2661844\";\"Affeltrangen\";\"main\"\n\"2661849\";\"Aeschi\";\"main\"\n\"2661849\";\"AEschi\";\"other\"\n\"2661849\";\"Aeschi bei Spiez\";\"other\"\n\"2661849\";\"Äschi\";\"other\"\n\"2661852\";\"Aesch\";\"main\"\n\"2661861\";\"Adliswil\";\"main\"\n\"2661862\";\"Adligenswil\";\"main\"\n\"2661863\";\"Adelboden\";\"main\"\n\"2661865\";\"Acquarossa\";\"main\"\n\"2661874\";\"Aarwangen\";\"main\"\n\"2661879\";\"Aarburg\";\"main\"\n\"2661880\";\"Aarberg\";\"main\"\n\"2661881\";\"Aarau\";\"main\"\n\"2661881\";\"Aaray\";\"other\"\n\"2661881\";\"Aravia\";\"other\"\n\"2661881\";\"a lao\";\"other\"\n\"2661881\";\"alau\";\"other\"\n\"2661881\";\"arau\";\"other\"\n\"2661881\";\"aravia\";\"other\"\n\"2661881\";\"Аарау\";\"other\"\n\"2661881\";\"アーラウ\";\"other\"\n\"2661881\";\"阿劳\";\"other\"\n\"2661881\";\"아라우\";\"other\"\n\"2661882\";\"Aadorf\";\"main\"\n\"3206590\";\"Riehen\";\"main\"\n\"3209498\";\"Chêne-Bougeries\";\"main\"\n\"3209498\";\"Chene-Bougeries\";\"ascii\"\n\"3209502\";\"Meinier\";\"main\"\n\"3209504\";\"Puplinge\";\"main\"\n\"3209505\";\"Thônex\";\"main\"\n\"3209505\";\"Thonex\";\"ascii\"\n\"6252010\";\"Wettswil / Wettswil (Dorf)\";\"main\"\n\"6252010\";\"Wettswil (Dorf)\";\"other\"\n\"6252010\";\"Wettswil am Albis\";\"other\"\n\"6252014\";\"Sellenbüren\";\"main\"\n\"6252014\";\"Sellenbueren\";\"ascii\"\n\"6255069\";\"Itingen\";\"main\"\n\"6285791\";\"Ecublens\";\"main\"\n\"6290373\";\"Affoltern / Hasenbüel\";\"main\"\n\"6290373\";\"Affoltern / Hasenbueel\";\"ascii\"\n\"6290373\";\"Hasenbueel\";\"other\"\n\"6290373\";\"Hasenbüel\";\"other\"\n\"6290375\";\"Affoltern / Oberdorf\";\"main\"\n\"6290375\";\"Oberdorf\";\"other\"\n\"6290376\";\"Affoltern / Unterdorf\";\"main\"\n\"6290376\";\"Unterdorf\";\"other\"\n\"6290378\";\"Affoltern / Sonnenberg\";\"main\"\n\"6290378\";\"Sonnenberg\";\"other\"\n\"6290379\";\"Schachen\";\"main\"\n\"6290434\";\"Hedingen\";\"main\"\n\"6290552\";\"Obfelden / Oberlunnern\";\"main\"\n\"6290552\";\"Oberlunnern\";\"other\"\n\"6290556\";\"Obfelden / Toussen\";\"main\"\n\"6290556\";\"Toussen\";\"other\"\n\"6290655\";\"Wettswil / Ausser-Dorf\";\"main\"\n\"6290655\";\"Ausser-Dorf\";\"other\"\n\"6290802\";\"Kleinandelfingen\";\"main\"\n\"6291053\";\"Bülach / Niederflachs\";\"main\"\n\"6291053\";\"Buelach / Niederflachs\";\"ascii\"\n\"6291053\";\"Niederflachs\";\"other\"\n\"6291056\";\"Bülach / Soligänter\";\"main\"\n\"6291056\";\"Buelach / Soligaenter\";\"ascii\"\n\"6291056\";\"Soligaenter\";\"other\"\n\"6291056\";\"Soligänter\";\"other\"\n\"6291058\";\"Bülach / Gstückt\";\"main\"\n\"6291058\";\"Buelach / Gstueckt\";\"ascii\"\n\"6291058\";\"Gstueckt\";\"other\"\n\"6291058\";\"Gstückt\";\"other\"\n\"6291061\";\"Bülach / Seematt\";\"main\"\n\"6291061\";\"Buelach / Seematt\";\"ascii\"\n\"6291061\";\"Seematt\";\"other\"\n\"6291103\";\"Dietlikon / Eichwiesen\";\"main\"\n\"6291103\";\"Eichwiesen\";\"other\"\n\"6291134\";\"Embrach / Embrach (Dorfkern)\";\"main\"\n\"6291134\";\"Embrach (Dorfkern)\";\"other\"\n\"6291139\";\"Embrach / Kellersacker\";\"main\"\n\"6291139\";\"Kellersacker\";\"other\"\n\"6291171\";\"Freienstein\";\"main\"\n\"6291215\";\"Hochfelden\";\"main\"\n\"6291226\";\"End-Höri\";\"main\"\n\"6291226\";\"End-Hoeri\";\"ascii\"\n\"6291242\";\"Kloten / Kloten (Zentrum)\";\"main\"\n\"6291242\";\"Kloten (Zentrum)\";\"other\"\n\"6291243\";\"Kloten / Freienberg (Chanzler-Chlini Chaseren)\";\"main\"\n\"6291243\";\"Freienberg (Chanzler-Chlini Chaseren)\";\"other\"\n\"6291246\";\"Kloten / Horainli\";\"main\"\n\"6291246\";\"Horainli\";\"other\"\n\"6291247\";\"Kloten / Geissberg\";\"main\"\n\"6291247\";\"Geissberg\";\"other\"\n\"6291248\";\"Kloten / Hostrass\";\"main\"\n\"6291248\";\"Hostrass\";\"other\"\n\"6291249\";\"Kloten / Holberg\";\"main\"\n\"6291249\";\"Holberg\";\"other\"\n\"6291251\";\"Kloten / Balsberg\";\"main\"\n\"6291251\";\"Balsberg\";\"other\"\n\"6291253\";\"Kloten / Spitz\";\"main\"\n\"6291253\";\"Spitz\";\"other\"\n\"6291254\";\"Kloten / Rütlen\";\"main\"\n\"6291254\";\"Kloten / Ruetlen\";\"ascii\"\n\"6291254\";\"Ruetlen\";\"other\"\n\"6291254\";\"Rütlen\";\"other\"\n\"6291286\";\"Birchwil\";\"main\"\n\"6291324\";\"Glattbrugg / Wydacker/Bettacker/Lättenwiesen\";\"main\"\n\"6291324\";\"Glattbrugg / Wydacker/Bettacker/Laettenwiesen\";\"ascii\"\n\"6291324\";\"Wydacker/Bettacker/Laettenwiesen\";\"other\"\n\"6291324\";\"Wydacker/Bettacker/Lättenwiesen\";\"other\"\n\"6291325\";\"Grossacker/Opfikon\";\"main\"\n\"6291336\";\"Glattbrugg / Rohr/Platten-Balsberg\";\"main\"\n\"6291336\";\"Rohr/Platten-Balsberg\";\"other\"\n\"6291373\";\"Wallisellen / Wallisellen-West\";\"main\"\n\"6291373\";\"Wallisellen-West\";\"other\"\n\"6291374\";\"Wallisellen / Wallisellen-Ost\";\"main\"\n\"6291374\";\"Wallisellen-Ost\";\"other\"\n\"6291375\";\"Wallisellen / Rieden\";\"main\"\n\"6291375\";\"Rieden\";\"other\"\n\"6291499\";\"Dällikon / Dällikon (Dorf)\";\"main\"\n\"6291499\";\"Daellikon / Daellikon (Dorf)\";\"ascii\"\n\"6291499\";\"Daellikon (Dorf)\";\"other\"\n\"6291499\";\"Dällikon (Dorf)\";\"other\"\n\"6291532\";\"Neerach\";\"main\"\n\"6291546\";\"Niederglatt / Niederglatt (Dorfkern)\";\"main\"\n\"6291546\";\"Niederglatt (Dorfkern)\";\"other\"\n\"6291558\";\"Niederhasli / Niederhasli (Dorf)\";\"main\"\n\"6291558\";\"Niederhasli (Dorf)\";\"other\"\n\"6291565\";\"Niederhasli / Adlibogen\";\"main\"\n\"6291565\";\"Adlibogen\";\"other\"\n\"6291619\";\"Oberglatt / Oberglatt (Dorfkern)\";\"main\"\n\"6291619\";\"Oberglatt (Dorfkern)\";\"other\"\n\"6291621\";\"Oberglatt / Bahnhofquartier\";\"main\"\n\"6291621\";\"Bahnhofquartier\";\"other\"\n\"6291625\";\"Hofstetten\";\"main\"\n\"6291664\";\"Sonnhalde\";\"main\"\n\"6291682\";\"Regensdorf / Hofacher-Geeren\";\"main\"\n\"6291682\";\"Hofacher-Geeren\";\"other\"\n\"6291683\";\"Regensdorf / Feldblumen-Riedthofstrasse\";\"main\"\n\"6291683\";\"Feldblumen-Riedthofstrasse\";\"other\"\n\"6291714\";\"Regensdorf / Obstgarten\";\"main\"\n\"6291714\";\"Obstgarten\";\"other\"\n\"6291716\";\"Rümlang / Rümlang (Dorfkern)\";\"main\"\n\"6291716\";\"Ruemlang / Ruemlang (Dorfkern)\";\"ascii\"\n\"6291716\";\"Ruemlang (Dorfkern)\";\"other\"\n\"6291716\";\"Rümlang (Dorfkern)\";\"other\"\n\"6291996\";\"Tann / Tann (Dorfkern)\";\"main\"\n\"6291996\";\"Tann (Dorfkern)\";\"other\"\n\"6292217\";\"Grüt\";\"main\"\n\"6292217\";\"Gruet\";\"ascii\"\n\"6292273\";\"Binzikon\";\"main\"\n\"6292364\";\"Hadlikon\";\"main\"\n\"6292396\";\"Rüti / Westlicher Dorfteil\";\"main\"\n\"6292396\";\"Rueti / Westlicher Dorfteil\";\"ascii\"\n\"6292396\";\"Westlicher Dorfteil\";\"other\"\n\"6292397\";\"Rüti / Dorfzentrum, Südl. Teil\";\"main\"\n\"6292397\";\"Rueti / Dorfzentrum, Suedl. Teil\";\"ascii\"\n\"6292397\";\"Dorfzentrum\";\"other\"\n\"6292397\";\"Suedl. Teil\";\"other\"\n\"6292397\";\"Südl. Teil\";\"other\"\n\"6292398\";\"Rüti / Oberdorf\";\"main\"\n\"6292398\";\"Rueti / Oberdorf\";\"ascii\"\n\"6292398\";\"Oberdorf\";\"other\"\n\"6292590\";\"Wetzikon / Robenhausen\";\"main\"\n\"6292590\";\"Robenhausen\";\"other\"\n\"6292591\";\"Wetzikon / Kempten\";\"main\"\n\"6292591\";\"Kempten\";\"other\"\n\"6292636\";\"Adliswil / Adliswil (Stadtkern)\";\"main\"\n\"6292636\";\"Adliswil (Stadtkern)\";\"other\"\n\"6292637\";\"Adliswil / Oberleimbach\";\"main\"\n\"6292637\";\"Oberleimbach\";\"other\"\n\"6292638\";\"Adliswil / Sood\";\"main\"\n\"6292638\";\"Sood\";\"other\"\n\"6292639\";\"Adliswil / Hündli-Zopf\";\"main\"\n\"6292639\";\"Adliswil / Huendli-Zopf\";\"ascii\"\n\"6292639\";\"Huendli-Zopf\";\"other\"\n\"6292639\";\"Hündli-Zopf\";\"other\"\n\"6292641\";\"Adliswil / Sonnenberg\";\"main\"\n\"6292641\";\"Sonnenberg\";\"other\"\n\"6292642\";\"Adliswil / Tal\";\"main\"\n\"6292642\";\"Tal\";\"other\"\n\"6292757\";\"Horgen / Horgen (Dorfkern)\";\"main\"\n\"6292757\";\"Horgen (Dorfkern)\";\"other\"\n\"6292759\";\"Horgen / Allmend\";\"main\"\n\"6292759\";\"Allmend\";\"other\"\n\"6292760\";\"Horgen / Scheller-Stockerstrasse\";\"main\"\n\"6292760\";\"Scheller-Stockerstrasse\";\"other\"\n\"6292761\";\"Horgen / Oberdorf\";\"main\"\n\"6292761\";\"Oberdorf\";\"other\"\n\"6292878\";\"Kilchberg / Bächler-Stocken\";\"main\"\n\"6292878\";\"Kilchberg / Baechler-Stocken\";\"ascii\"\n\"6292878\";\"Baechler-Stocken\";\"other\"\n\"6292878\";\"Bächler-Stocken\";\"other\"\n\"6292881\";\"Kilchberg / Kilchberg (Dorfkern)\";\"main\"\n\"6292881\";\"Kilchberg (Dorfkern)\";\"other\"\n\"6292893\";\"Langnau / Vitaquartier\";\"main\"\n\"6292893\";\"Vitaquartier\";\"other\"\n\"6292896\";\"Mühlehalde\";\"main\"\n\"6292896\";\"Muehlehalde\";\"ascii\"\n\"6292917\";\"Oberrieden / Mitte\";\"main\"\n\"6292917\";\"Mitte\";\"other\"\n\"6292918\";\"Oberrieden / Berg\";\"main\"\n\"6292918\";\"Berg\";\"other\"\n\"6292919\";\"Richterswil / Dorfkern\";\"main\"\n\"6292919\";\"Dorfkern\";\"other\"\n\"6292920\";\"Richterswil / Richterswil (Dorfkern)\";\"main\"\n\"6292920\";\"Richterswil (Dorfkern)\";\"other\"\n\"6292921\";\"Richterswil / Burghalde\";\"main\"\n\"6292921\";\"Burghalde\";\"other\"\n\"6293080\";\"Thalwil / Dorfkern\";\"main\"\n\"6293080\";\"Dorfkern\";\"other\"\n\"6293081\";\"Thalwil / Berg\";\"main\"\n\"6293081\";\"Berg\";\"other\"\n\"6293082\";\"Thalwil\";\"main\"\n\"6293082\";\"Nord\";\"other\"\n\"6293083\";\"Thalwil / Süd\";\"main\"\n\"6293083\";\"Thalwil / Sued\";\"ascii\"\n\"6293083\";\"Sued\";\"other\"\n\"6293083\";\"Süd\";\"other\"\n\"6293088\";\"Gattikon\";\"main\"\n\"6293096\";\"Wädenswil / Dorf (Wädenswil)\";\"main\"\n\"6293096\";\"Waedenswil / Dorf (Waedenswil)\";\"ascii\"\n\"6293096\";\"Dorf (Waedenswil)\";\"other\"\n\"6293096\";\"Dorf (Wädenswil)\";\"other\"\n\"6293097\";\"Au / Unter-Dorf\";\"main\"\n\"6293097\";\"Unter-Dorf\";\"other\"\n\"6293098\";\"Au / Mittel-Dorf\";\"main\"\n\"6293098\";\"Mittel-Dorf\";\"other\"\n\"6293101\";\"Wädenswil / Hangenmoos\";\"main\"\n\"6293101\";\"Waedenswil / Hangenmoos\";\"ascii\"\n\"6293101\";\"Hangenmoos\";\"other\"\n\"6293102\";\"Wädenswil / Büelen\";\"main\"\n\"6293102\";\"Waedenswil / Bueelen\";\"ascii\"\n\"6293102\";\"Bueelen\";\"other\"\n\"6293102\";\"Büelen\";\"other\"\n\"6293103\";\"Wädenswil / Untermosen-Fuhr\";\"main\"\n\"6293103\";\"Waedenswil / Untermosen-Fuhr\";\"ascii\"\n\"6293103\";\"Untermosen-Fuhr\";\"other\"\n\"6293104\";\"Wädenswil / Leihof-Mühlebach\";\"main\"\n\"6293104\";\"Waedenswil / Leihof-Muehlebach\";\"ascii\"\n\"6293104\";\"Leihof-Muehlebach\";\"other\"\n\"6293104\";\"Leihof-Mühlebach\";\"other\"\n\"6293105\";\"Wädenswil / Eichweid\";\"main\"\n\"6293105\";\"Waedenswil / Eichweid\";\"ascii\"\n\"6293105\";\"Eichweid\";\"other\"\n\"6293106\";\"Wädenswil / Boller-Giessen\";\"main\"\n\"6293106\";\"Waedenswil / Boller-Giessen\";\"ascii\"\n\"6293106\";\"Boller-Giessen\";\"other\"\n\"6293192\";\"Erlenbach / rechts des Dorfbachs oberhalb Bahnlinie\";\"main\"\n\"6293192\";\"rechts des Dorfbachs oberhalb Bahnlinie\";\"other\"\n\"6293194\";\"Erlenbach / links des Dorfbachs oberhalb Bahnlinie\";\"main\"\n\"6293194\";\"links des Dorfbachs oberhalb Bahnlinie\";\"other\"\n\"6293330\";\"Küsnacht / Dorf\";\"main\"\n\"6293330\";\"Kuesnacht / Dorf\";\"ascii\"\n\"6293330\";\"Dorf\";\"other\"\n\"6293331\";\"Küsnacht / Goldbach\";\"main\"\n\"6293331\";\"Kuesnacht / Goldbach\";\"ascii\"\n\"6293331\";\"Goldbach\";\"other\"\n\"6293332\";\"Küsnacht / Itschnach\";\"main\"\n\"6293332\";\"Kuesnacht / Itschnach\";\"ascii\"\n\"6293332\";\"Itschnach\";\"other\"\n\"6293333\";\"Küsnacht / Schiedhalden\";\"main\"\n\"6293333\";\"Kuesnacht / Schiedhalden\";\"ascii\"\n\"6293333\";\"Schiedhalden\";\"other\"\n\"6293334\";\"Küsnacht / Heslibach\";\"main\"\n\"6293334\";\"Kuesnacht / Heslibach\";\"ascii\"\n\"6293334\";\"Heslibach\";\"other\"\n\"6293356\";\"Männedorf / Dorfkern\";\"main\"\n\"6293356\";\"Maennedorf / Dorfkern\";\"ascii\"\n\"6293356\";\"Dorfkern\";\"other\"\n\"6293364\";\"Männedorf / Ausserfeld\";\"main\"\n\"6293364\";\"Maennedorf / Ausserfeld\";\"ascii\"\n\"6293364\";\"Ausserfeld\";\"other\"\n\"6293608\";\"Dorf\";\"main\"\n\"6293652\";\"Uetikon / Grossdorf\";\"main\"\n\"6293652\";\"Grossdorf\";\"other\"\n\"6293731\";\"Zollikerberg\";\"main\"\n\"6293903\";\"Effretikon / Watt\";\"main\"\n\"6293903\";\"Watt\";\"other\"\n\"6293906\";\"Effretikon / Rappenhalde-Bannhalde\";\"main\"\n\"6293906\";\"Rappenhalde-Bannhalde\";\"other\"\n\"6293970\";\"Tagelswangen\";\"main\"\n\"6293977\";\"Pfäffikon / Pfäffikon (Dorfkern)\";\"main\"\n\"6293977\";\"Pfaeffikon / Pfaeffikon (Dorfkern)\";\"ascii\"\n\"6293977\";\"Pfaeffikon (Dorfkern)\";\"other\"\n\"6293977\";\"Pfäffikon (Dorfkern)\";\"other\"\n\"6294255\";\"Dübendorf / Vogelquartier\";\"main\"\n\"6294255\";\"Duebendorf / Vogelquartier\";\"ascii\"\n\"6294255\";\"Vogelquartier\";\"other\"\n\"6294257\";\"Dübendorf / Wasserfurren\";\"main\"\n\"6294257\";\"Duebendorf / Wasserfurren\";\"ascii\"\n\"6294257\";\"Wasserfurren\";\"other\"\n\"6294276\";\"Dübendorf / Sonnenberg\";\"main\"\n\"6294276\";\"Duebendorf / Sonnenberg\";\"ascii\"\n\"6294276\";\"Sonnenberg\";\"other\"\n\"6294285\";\"Dübendorf / Kunklerstrasse\";\"main\"\n\"6294285\";\"Duebendorf / Kunklerstrasse\";\"ascii\"\n\"6294285\";\"Kunklerstrasse\";\"other\"\n\"6294318\";\"Hinteregg\";\"main\"\n\"6294319\";\"Esslingen\";\"main\"\n\"6294402\";\"Benglen\";\"main\"\n\"6294411\";\"Greifensee / Müllerwis / Seilerwis\";\"main\"\n\"6294411\";\"Greifensee / Muellerwis / Seilerwis\";\"ascii\"\n\"6294411\";\"Muellerwis / Seilerwis\";\"other\"\n\"6294411\";\"Müllerwis / Seilerwis\";\"other\"\n\"6294425\";\"Greifensee / Pfisterhölzli\";\"main\"\n\"6294425\";\"Greifensee / Pfisterhoelzli\";\"ascii\"\n\"6294425\";\"Pfisterhoelzli\";\"other\"\n\"6294425\";\"Pfisterhölzli\";\"other\"\n\"6294446\";\"Aesch\";\"main\"\n\"6294449\";\"Binz\";\"main\"\n\"6294491\";\"Mönchaltorf / Dorf\";\"main\"\n\"6294491\";\"Moenchaltorf / Dorf\";\"ascii\"\n\"6294491\";\"Dorf\";\"other\"\n\"6294531\";\"Schwerzenbach / Chimli\";\"main\"\n\"6294531\";\"Chimli\";\"other\"\n\"6294532\";\"Schwerzenbach / Blatten\";\"main\"\n\"6294532\";\"Blatten\";\"other\"\n\"6294547\";\"Uster / Kirch-Uster\";\"main\"\n\"6294547\";\"Kirch-Uster\";\"other\"\n\"6294548\";\"Uster / Nieder-Uster\";\"main\"\n\"6294548\";\"Nieder-Uster\";\"other\"\n\"6294549\";\"Uster / Gschwader\";\"main\"\n\"6294549\";\"Gschwader\";\"other\"\n\"6294550\";\"Uster / Ober-Uster\";\"main\"\n\"6294550\";\"Ober-Uster\";\"other\"\n\"6294551\";\"Uster / Nossikon\";\"main\"\n\"6294551\";\"Nossikon\";\"other\"\n\"6294555\";\"Nänikon / Nänikon (Dorfkern)\";\"main\"\n\"6294555\";\"Naenikon / Naenikon (Dorfkern)\";\"ascii\"\n\"6294555\";\"Naenikon (Dorfkern)\";\"other\"\n\"6294555\";\"Nänikon (Dorfkern)\";\"other\"\n\"6294594\";\"Kindhausen / Kindhausen (Dorf)\";\"main\"\n\"6294594\";\"Kindhausen (Dorf)\";\"other\"\n\"6294605\";\"Hegnau / Sunnebüel-Eich\";\"main\"\n\"6294605\";\"Hegnau / Sunnebueel-Eich\";\"ascii\"\n\"6294605\";\"Sunnebueel-Eich\";\"other\"\n\"6294605\";\"Sunnebüel-Eich\";\"other\"\n\"6294614\";\"Hegnau / Dammboden-Grindel\";\"main\"\n\"6294614\";\"Dammboden-Grindel\";\"other\"\n\"6294617\";\"Gutenswil\";\"main\"\n\"6294626\";\"Wangen\";\"main\"\n\"6294764\";\"Elgg / Städtchen und Umgebung\";\"main\"\n\"6294764\";\"Elgg / Staedtchen und Umgebung\";\"ascii\"\n\"6294764\";\"Elgg / Staedtchen\";\"other\"\n\"6294764\";\"Elgg / Städtchen\";\"other\"\n\"6294764\";\"Staedtchen und Umgebung\";\"other\"\n\"6294764\";\"Städtchen und Umgebung\";\"other\"\n\"6294993\";\"Seuzach Dorf / Breite-Weid\";\"main\"\n\"6294993\";\"Breite-Weid\";\"other\"\n\"6295077\";\"Stadt Winterthur (Kreis 1) / Altstadt\";\"main\"\n\"6295077\";\"Altstadt\";\"other\"\n\"6295078\";\"Stadt Winterthur (Kreis 1) / Lind\";\"main\"\n\"6295078\";\"Lind\";\"other\"\n\"6295079\";\"Stadt Winterthur (Kreis 1) / Heiligberg\";\"main\"\n\"6295079\";\"Heiligberg\";\"other\"\n\"6295080\";\"Stadt Winterthur (Kreis 1) / Tössfeld\";\"main\"\n\"6295080\";\"Stadt Winterthur (Kreis 1) / Toessfeld\";\"ascii\"\n\"6295080\";\"Toessfeld\";\"other\"\n\"6295080\";\"Tössfeld\";\"other\"\n\"6295081\";\"Stadt Winterthur (Kreis 1) / Brühlberg\";\"main\"\n\"6295081\";\"Stadt Winterthur (Kreis 1) / Bruehlberg\";\"ascii\"\n\"6295081\";\"Bruehlberg\";\"other\"\n\"6295081\";\"Brühlberg\";\"other\"\n\"6295082\";\"Stadt Winterthur (Kreis 1) / Neuwiesen\";\"main\"\n\"6295082\";\"Neuwiesen\";\"other\"\n\"6295092\";\"Oberwinterthur (Kreis 2) / Talacker\";\"main\"\n\"6295092\";\"Talacker\";\"other\"\n\"6295102\";\"Oberwinterthur (Kreis 2) / Guggenbühl\";\"main\"\n\"6295102\";\"Oberwinterthur (Kreis 2) / Guggenbuehl\";\"ascii\"\n\"6295102\";\"Guggenbuehl\";\"other\"\n\"6295102\";\"Guggenbühl\";\"other\"\n\"6295111\";\"Oberwinterthur (Kreis 2) / Zinzikon\";\"main\"\n\"6295111\";\"Zinzikon\";\"other\"\n\"6295121\";\"Seen (Kreis 3) / Waser\";\"main\"\n\"6295121\";\"Waser\";\"other\"\n\"6295126\";\"Seen (Kreis 3) / Büelwiesen\";\"main\"\n\"6295126\";\"Seen (Kreis 3) / Bueelwiesen\";\"ascii\"\n\"6295126\";\"Bueelwiesen\";\"other\"\n\"6295126\";\"Büelwiesen\";\"other\"\n\"6295131\";\"Seen (Kreis 3) / Waldegg\";\"main\"\n\"6295131\";\"Waldegg\";\"other\"\n\"6295133\";\"Seen (Kreis 3) / Ganzenbühl\";\"main\"\n\"6295133\";\"Seen (Kreis 3) / Ganzenbuehl\";\"ascii\"\n\"6295133\";\"Ganzenbuehl\";\"other\"\n\"6295133\";\"Ganzenbühl\";\"other\"\n\"6295135\";\"Seen (Kreis 3) / Oberseen\";\"main\"\n\"6295135\";\"Oberseen\";\"other\"\n\"6295138\";\"Töss (Kreis 4) / Vorder-Dättnau\";\"main\"\n\"6295138\";\"Toess (Kreis 4) / Vorder-Daettnau\";\"ascii\"\n\"6295138\";\"Vorder-Daettnau\";\"other\"\n\"6295138\";\"Vorder-Dättnau\";\"other\"\n\"6295143\";\"Töss (Kreis 4) / Schlosstal\";\"main\"\n\"6295143\";\"Toess (Kreis 4) / Schlosstal\";\"ascii\"\n\"6295143\";\"Schlosstal\";\"other\"\n\"6295145\";\"Töss (Kreis 4) / Eichliacker\";\"main\"\n\"6295145\";\"Toess (Kreis 4) / Eichliacker\";\"ascii\"\n\"6295145\";\"Eichliacker\";\"other\"\n\"6295147\";\"Veltheim (Kreis 5) / Rosenberg\";\"main\"\n\"6295147\";\"Rosenberg\";\"other\"\n\"6295148\";\"Veltheim (Kreis 5) / Blumenau\";\"main\"\n\"6295148\";\"Blumenau\";\"other\"\n\"6295166\";\"Wülflingen (Kreis 6) / Oberfeld\";\"main\"\n\"6295166\";\"Wuelflingen (Kreis 6) / Oberfeld\";\"ascii\"\n\"6295166\";\"Oberfeld\";\"other\"\n\"6295174\";\"Wülflingen (Kreis 6) / Lindenplatz\";\"main\"\n\"6295174\";\"Wuelflingen (Kreis 6) / Lindenplatz\";\"ascii\"\n\"6295174\";\"Lindenplatz\";\"other\"\n\"6295177\";\"Wülflingen (Kreis 6) / Niederfeld\";\"main\"\n\"6295177\";\"Wuelflingen (Kreis 6) / Niederfeld\";\"ascii\"\n\"6295177\";\"Niederfeld\";\"other\"\n\"6295179\";\"Wülflingen (Kreis 6) / Härti\";\"main\"\n\"6295179\";\"Wuelflingen (Kreis 6) / Haerti\";\"ascii\"\n\"6295179\";\"Haerti\";\"other\"\n\"6295179\";\"Härti\";\"other\"\n\"6295183\";\"Mattenbach (Kreis 7) / Deutweg\";\"main\"\n\"6295183\";\"Deutweg\";\"other\"\n\"6295184\";\"Mattenbach (Kreis 7) / Gutschick\";\"main\"\n\"6295184\";\"Gutschick\";\"other\"\n\"6295185\";\"Mattenbach (Kreis 7) / Endliker\";\"main\"\n\"6295185\";\"Endliker\";\"other\"\n\"6295186\";\"Kollbrunn / Kollbrunn (Dorfkern)\";\"main\"\n\"6295186\";\"Kollbrunn (Dorfkern)\";\"other\"\n\"6295296\";\"Dietikon / Vorstadt\";\"main\"\n\"6295296\";\"Vorstadt\";\"other\"\n\"6295299\";\"Dietikon / Almend\";\"main\"\n\"6295299\";\"Almend\";\"other\"\n\"6295300\";\"Dietikon / Oberdorf\";\"main\"\n\"6295300\";\"Oberdorf\";\"other\"\n\"6295302\";\"Dietikon / Kreuzacker\";\"main\"\n\"6295302\";\"Kreuzacker\";\"other\"\n\"6295304\";\"Dietikon / Guggenbühl\";\"main\"\n\"6295304\";\"Dietikon / Guggenbuehl\";\"ascii\"\n\"6295304\";\"Guggenbuehl\";\"other\"\n\"6295304\";\"Guggenbühl\";\"other\"\n\"6295305\";\"Dietikon / Hofacker\";\"main\"\n\"6295305\";\"Hofacker\";\"other\"\n\"6295306\";\"Dietikon / Schönenwerd\";\"main\"\n\"6295306\";\"Dietikon / Schoenenwerd\";\"ascii\"\n\"6295306\";\"Schoenenwerd\";\"other\"\n\"6295306\";\"Schönenwerd\";\"other\"\n\"6295329\";\"Oberengstringen / Zentrum\";\"main\"\n\"6295329\";\"Zentrum\";\"other\"\n\"6295331\";\"Oberengstringen / Sonnenberg\";\"main\"\n\"6295331\";\"Sonnenberg\";\"other\"\n\"6295332\";\"Oberengstringen / Rauchacher\";\"main\"\n\"6295332\";\"Rauchacher\";\"other\"\n\"6295346\";\"Schlieren / Zentrum\";\"main\"\n\"6295346\";\"Zentrum\";\"other\"\n\"6295347\";\"Schlieren / Engstingerquartier\";\"main\"\n\"6295347\";\"Engstingerquartier\";\"other\"\n\"6295349\";\"Schlieren / Spital\";\"main\"\n\"6295349\";\"Spital\";\"other\"\n\"6295352\";\"Schlieren / Freiestrasse\";\"main\"\n\"6295352\";\"Freiestrasse\";\"other\"\n\"6295354\";\"Schlieren / Kamp\";\"main\"\n\"6295354\";\"Kamp\";\"other\"\n\"6295357\";\"Schlieren / Boden\";\"main\"\n\"6295357\";\"Boden\";\"other\"\n\"6295397\";\"Urdorf / Bodenfeld\";\"main\"\n\"6295397\";\"Bodenfeld\";\"other\"\n\"6295398\";\"Urdorf / Moos\";\"main\"\n\"6295398\";\"Moos\";\"other\"\n\"6295402\";\"Urdorf / Oberurdorf\";\"main\"\n\"6295402\";\"Oberurdorf\";\"other\"\n\"6295432\";\"Zürich (Kreis 12) / Auzelg\";\"main\"\n\"6295432\";\"Zuerich (Kreis 12) / Auzelg\";\"ascii\"\n\"6295432\";\"Auzelg\";\"other\"\n\"6295436\";\"Zürich (Kreis 11) / Schwandenholz\";\"main\"\n\"6295436\";\"Zuerich (Kreis 11) / Schwandenholz\";\"ascii\"\n\"6295436\";\"Schwandenholz\";\"other\"\n\"6295444\";\"Zürich (Kreis 2) / Mittel-Leimbach\";\"main\"\n\"6295444\";\"Zuerich (Kreis 2) / Mittel-Leimbach\";\"ascii\"\n\"6295444\";\"Mittel-Leimbach\";\"other\"\n\"6295447\";\"Zürich (Kreis 2) / Unter-Leimbach\";\"main\"\n\"6295447\";\"Zuerich (Kreis 2) / Unter-Leimbach\";\"ascii\"\n\"6295447\";\"Unter-Leimbach\";\"other\"\n\"6295475\";\"Zürich (Kreis 10) / Wipkingen\";\"main\"\n\"6295475\";\"Zuerich (Kreis 10) / Wipkingen\";\"ascii\"\n\"6295475\";\"Wipkingen\";\"other\"\n\"6295481\";\"Zürich (Kreis 10) / Rütihof\";\"main\"\n\"6295481\";\"Zuerich (Kreis 10) / Ruetihof\";\"ascii\"\n\"6295481\";\"Ruetihof\";\"other\"\n\"6295481\";\"Rütihof\";\"other\"\n\"6295483\";\"Zürich (Kreis 1) / Rathaus\";\"main\"\n\"6295483\";\"Zuerich (Kreis 1) / Rathaus\";\"ascii\"\n\"6295483\";\"Rathaus\";\"other\"\n\"6295484\";\"Zürich (Kreis 11) / Affoltern\";\"main\"\n\"6295484\";\"Zuerich (Kreis 11) / Affoltern\";\"ascii\"\n\"6295484\";\"Affoltern\";\"other\"\n\"6295490\";\"Zürich (Kreis 12) / Saatlen\";\"main\"\n\"6295490\";\"Zuerich (Kreis 12) / Saatlen\";\"ascii\"\n\"6295490\";\"Saatlen\";\"other\"\n\"6295491\";\"Zürich (Kreis 12) / Schwamendingen-Mitte\";\"main\"\n\"6295491\";\"Zuerich (Kreis 12) / Schwamendingen-Mitte\";\"ascii\"\n\"6295491\";\"Schwamendingen-Mitte\";\"other\"\n\"6295492\";\"Zürich (Kreis 12) / Hirzenbach\";\"main\"\n\"6295492\";\"Zuerich (Kreis 12) / Hirzenbach\";\"ascii\"\n\"6295492\";\"Hirzenbach\";\"other\"\n\"6295493\";\"Zürich (Kreis 1) / Lindenhof\";\"main\"\n\"6295493\";\"Zuerich (Kreis 1) / Lindenhof\";\"ascii\"\n\"6295493\";\"Lindenhof\";\"other\"\n\"6295494\";\"Zürich (Kreis 1) / City\";\"main\"\n\"6295494\";\"Zuerich (Kreis 1) / City\";\"ascii\"\n\"6295495\";\"Zürich (Kreis 2) / Wollishofen\";\"main\"\n\"6295495\";\"Zuerich (Kreis 2) / Wollishofen\";\"ascii\"\n\"6295495\";\"Wollishofen\";\"other\"\n\"6295496\";\"Zürich (Kreis 2) / Enge\";\"main\"\n\"6295496\";\"Zuerich (Kreis 2) / Enge\";\"ascii\"\n\"6295496\";\"Enge\";\"other\"\n\"6295497\";\"Zürich (Kreis 3) / Friesenberg\";\"main\"\n\"6295497\";\"Zuerich (Kreis 3) / Friesenberg\";\"ascii\"\n\"6295497\";\"Friesenberg\";\"other\"\n\"6295498\";\"Zürich (Kreis 3) / Sihlfeld\";\"main\"\n\"6295498\";\"Zuerich (Kreis 3) / Sihlfeld\";\"ascii\"\n\"6295498\";\"Sihlfeld\";\"other\"\n\"6295499\";\"Zürich (Kreis 4) / Werd\";\"main\"\n\"6295499\";\"Zuerich (Kreis 4) / Werd\";\"ascii\"\n\"6295499\";\"Werd\";\"other\"\n\"6295500\";\"Zürich (Kreis 4) / Langstrasse\";\"main\"\n\"6295500\";\"Zuerich (Kreis 4) / Langstrasse\";\"ascii\"\n\"6295500\";\"Langstrasse\";\"other\"\n\"6295501\";\"Zürich (Kreis 4) / Hard\";\"main\"\n\"6295501\";\"Zuerich (Kreis 4) / Hard\";\"ascii\"\n\"6295501\";\"Hard\";\"other\"\n\"6295502\";\"Zürich (Kreis 5) / Gewerbeschule\";\"main\"\n\"6295502\";\"Zuerich (Kreis 5) / Gewerbeschule\";\"ascii\"\n\"6295502\";\"Gewerbeschule\";\"other\"\n\"6295503\";\"Zürich (Kreis 5) / Escher-Wyss\";\"main\"\n\"6295503\";\"Zuerich (Kreis 5) / Escher-Wyss\";\"ascii\"\n\"6295503\";\"Escher-Wyss\";\"other\"\n\"6295504\";\"Zürich (Kreis 6) / Unterstrass\";\"main\"\n\"6295504\";\"Zuerich (Kreis 6) / Unterstrass\";\"ascii\"\n\"6295504\";\"Unterstrass\";\"other\"\n\"6295505\";\"Zürich (Kreis 6) / Oberstrass\";\"main\"\n\"6295505\";\"Zuerich (Kreis 6) / Oberstrass\";\"ascii\"\n\"6295505\";\"Oberstrass\";\"other\"\n\"6295506\";\"Zürich (Kreis 7) / Fluntern\";\"main\"\n\"6295506\";\"Zuerich (Kreis 7) / Fluntern\";\"ascii\"\n\"6295506\";\"Fluntern\";\"other\"\n\"6295507\";\"Zürich (Kreis 7) / Hottingen\";\"main\"\n\"6295507\";\"Zuerich (Kreis 7) / Hottingen\";\"ascii\"\n\"6295507\";\"Hottingen\";\"other\"\n\"6295508\";\"Zürich (Kreis 7) / Hirslanden\";\"main\"\n\"6295508\";\"Zuerich (Kreis 7) / Hirslanden\";\"ascii\"\n\"6295508\";\"Hirslanden\";\"other\"\n\"6295509\";\"Zürich (Kreis 8) / Seefeld\";\"main\"\n\"6295509\";\"Zuerich (Kreis 8) / Seefeld\";\"ascii\"\n\"6295509\";\"Seefeld\";\"other\"\n\"6295510\";\"Zürich (Kreis 8) / Mühlebach\";\"main\"\n\"6295510\";\"Zuerich (Kreis 8) / Muehlebach\";\"ascii\"\n\"6295510\";\"Muehlebach\";\"other\"\n\"6295510\";\"Mühlebach\";\"other\"\n\"6295511\";\"Zürich (Kreis 8) / Weinegg\";\"main\"\n\"6295511\";\"Zuerich (Kreis 8) / Weinegg\";\"ascii\"\n\"6295511\";\"Weinegg\";\"other\"\n\"6295512\";\"Zürich (Kreis 9) / Albisrieden\";\"main\"\n\"6295512\";\"Zuerich (Kreis 9) / Albisrieden\";\"ascii\"\n\"6295512\";\"Albisrieden\";\"other\"\n\"6295513\";\"Zürich (Kreis 9) / Altstetten\";\"main\"\n\"6295513\";\"Zuerich (Kreis 9) / Altstetten\";\"ascii\"\n\"6295513\";\"Altstetten\";\"other\"\n\"6295514\";\"Schwerzenbach\";\"main\"\n\"6295515\";\"Steinmaur\";\"main\"\n\"6295517\";\"Hegnau\";\"main\"\n\"6295518\";\"Gockhausen\";\"main\"\n\"6295520\";\"Stadt Winterthur (Kreis 1)\";\"main\"\n\"6295521\";\"Zürich (Kreis 5)\";\"main\"\n\"6295521\";\"Zuerich (Kreis 5)\";\"ascii\"\n\"6295522\";\"Dänikon\";\"main\"\n\"6295522\";\"Daenikon\";\"ascii\"\n\"6295523\";\"Zürich (Kreis 12)\";\"main\"\n\"6295523\";\"Zuerich (Kreis 12)\";\"ascii\"\n\"6295524\";\"Wülflingen (Kreis 6)\";\"main\"\n\"6295524\";\"Wuelflingen (Kreis 6)\";\"ascii\"\n\"6295525\";\"Sulz\";\"main\"\n\"6295527\";\"Seglingen\";\"main\"\n\"6295528\";\"Niederglatt\";\"main\"\n\"6295530\";\"Ebmatingen\";\"main\"\n\"6295531\";\"Seen (Kreis 3)\";\"main\"\n\"6295532\";\"Zürich (Kreis 3)\";\"main\"\n\"6295532\";\"Zuerich (Kreis 3)\";\"ascii\"\n\"6295533\";\"Zürich (Kreis 11)\";\"main\"\n\"6295533\";\"Zuerich (Kreis 11)\";\"ascii\"\n\"6295534\";\"Zürich (Kreis 9)\";\"main\"\n\"6295534\";\"Zuerich (Kreis 9)\";\"ascii\"\n\"6295536\";\"Oberwinterthur (Kreis 2)\";\"main\"\n\"6295537\";\"Geroldswil\";\"main\"\n\"6295539\";\"Zürich (Kreis 10)\";\"main\"\n\"6295539\";\"Zuerich (Kreis 10)\";\"ascii\"\n\"6295540\";\"Zürich (Kreis 2)\";\"main\"\n\"6295540\";\"Zuerich (Kreis 2)\";\"ascii\"\n\"6295542\";\"Zürich (Kreis 8)\";\"main\"\n\"6295542\";\"Zuerich (Kreis 8)\";\"ascii\"\n\"6295543\";\"Wolfhausen\";\"main\"\n\"6295545\";\"Seuzach Dorf\";\"main\"\n\"6295546\";\"Zürich (Kreis 1)\";\"main\"\n\"6295546\";\"Zuerich (Kreis 1)\";\"ascii\"\n\"6295547\";\"Mattenbach (Kreis 7)\";\"main\"\n\"6295548\";\"Zürich (Kreis 7)\";\"main\"\n\"6295548\";\"Zuerich (Kreis 7)\";\"ascii\"\n\"6295549\";\"Obermeilen\";\"main\"\n\"6295550\";\"Zürich (Kreis 6)\";\"main\"\n\"6295550\";\"Zuerich (Kreis 6)\";\"ascii\"\n\"6295551\";\"Elsau-Räterschen\";\"main\"\n\"6295551\";\"Elsau-Raeterschen\";\"ascii\"\n\"6295645\";\"Thalwil / See\";\"main\"\n\"6295645\";\"See\";\"other\"\n\"6639664\";\"Préverenges\";\"main\"\n\"6639664\";\"Preverenges\";\"ascii\"\n\"6640317\";\"Langnau am Albis\";\"main\"\n\"6691324\";\"Langendorf\";\"main\"\n\"6691631\";\"Troinex\";\"main\"\n\"6691640\";\"Lancy\";\"main\"\n\"6695938\";\"Stetten\";\"main\"\n\"6695944\";\"Löhningen\";\"main\"\n\"6695944\";\"Loehningen\";\"ascii\"\n\"6697288\";\"Lauffohr (Brugg)\";\"main\"\n\"6697711\";\"Jongny\";\"main\"\n\"6940549\";\"Haag (Rheintal)\";\"main\"\n\"6946577\";\"Aire-la-Ville\";\"main\"\n\"6956026\";\"Hausen\";\"main\"\n\"7302536\";\"Oberurnen\";\"main\"\n\"7521936\";\"Schaffhausen, City Center\";\"main\"\n\"2279172\";\"Zuénoula\";\"main\"\n\"2279172\";\"Zuenoula\";\"ascii\"\n\"2279172\";\"Zenoula\";\"other\"\n\"2279172\";\"Zouenoula\";\"other\"\n\"2279172\";\"Zouénoula\";\"other\"\n\"2279172\";\"Zénoula\";\"other\"\n\"2279755\";\"Yamoussoukro\";\"main\"\n\"2279755\";\"Giamoussoukro\";\"other\"\n\"2279755\";\"Jamusukras\";\"other\"\n\"2279755\";\"Jamusukro\";\"other\"\n\"2279755\";\"Yamoussokro\";\"other\"\n\"2279755\";\"Yamussukro\";\"other\"\n\"2279755\";\"Yamusukro\";\"other\"\n\"2279755\";\"ya mu su ke luo\";\"other\"\n\"2279755\";\"yamusukeulo\";\"other\"\n\"2279755\";\"yamusukuro\";\"other\"\n\"2279755\";\"Γιαμουσσούκρο\";\"other\"\n\"2279755\";\"Јамусукро\";\"other\"\n\"2279755\";\"Ямусукро\";\"other\"\n\"2279755\";\"Յամուսուկրո\";\"other\"\n\"2279755\";\"יאמוסוקרו\";\"other\"\n\"2279755\";\"ያሙሱክሮ\";\"other\"\n\"2279755\";\"ヤムスクロ\";\"other\"\n\"2279755\";\"亚穆苏克罗\";\"other\"\n\"2279755\";\"야무수크로\";\"other\"\n\"2280045\";\"Vavoua\";\"main\"\n\"2280045\";\"Vavua\";\"other\"\n\"2280045\";\"Вавуа\";\"other\"\n\"2280316\";\"Toumodi\";\"main\"\n\"2280316\";\"Tumodi\";\"other\"\n\"2280333\";\"Toulépleu-Gueré\";\"main\"\n\"2280333\";\"Toulepleu-Guere\";\"ascii\"\n\"2280376\";\"Touba\";\"main\"\n\"2280376\";\"Tuba\";\"other\"\n\"2280589\";\"Tengrela\";\"main\"\n\"2280589\";\"Tingrela\";\"other\"\n\"2280589\";\"Tingréla\";\"other\"\n\"2280761\";\"Tiassalé\";\"main\"\n\"2280761\";\"Tiassale\";\"ascii\"\n\"2280995\";\"Tanda\";\"main\"\n\"2280995\";\"Tan N'Da\";\"other\"\n\"2280995\";\"Tan N’Da\";\"other\"\n\"2280995\";\"Tanga\";\"other\"\n\"2281120\";\"Tabou\";\"main\"\n\"2281120\";\"Tabu\";\"other\"\n\"2281606\";\"Sinfra\";\"main\"\n\"2281951\";\"Sassandra\";\"main\"\n\"2281951\";\"Сассандра\";\"other\"\n\"2282006\";\"San-Pédro\";\"main\"\n\"2282006\";\"San-Pedro\";\"ascii\"\n\"2282178\";\"Sakassou\";\"main\"\n\"2282178\";\"Sakasso\";\"other\"\n\"2282178\";\"Sakassu\";\"other\"\n\"2282827\";\"Oumé\";\"main\"\n\"2282827\";\"Oume\";\"ascii\"\n\"2282827\";\"Ume\";\"other\"\n\"2283016\";\"Odienné\";\"main\"\n\"2283016\";\"Odienne\";\"ascii\"\n\"2283016\";\"Одиенне\";\"other\"\n\"2284589\";\"Mankono\";\"main\"\n\"2284647\";\"Man\";\"main\"\n\"2285449\";\"Lakota\";\"main\"\n\"2285449\";\"Iakota\";\"other\"\n\"2285449\";\"Лакота\";\"other\"\n\"2286304\";\"Korhogo\";\"main\"\n\"2286304\";\"Korogo\";\"other\"\n\"2286304\";\"Корого\";\"other\"\n\"2287298\";\"Katiola\";\"main\"\n\"2287298\";\"Lafouka\";\"other\"\n\"2287790\";\"Issia\";\"main\"\n\"2287958\";\"Guiglo\";\"main\"\n\"2287970\";\"Guibéroua\";\"main\"\n\"2287970\";\"Guiberoua\";\"ascii\"\n\"2287970\";\"Guibehorouo\";\"other\"\n\"2287970\";\"Guiberou\";\"other\"\n\"2287970\";\"Guibieouroua\";\"other\"\n\"2287970\";\"Guibiéouroua\";\"other\"\n\"2287970\";\"Guibéhorouo\";\"other\"\n\"2288105\";\"Grand-Lahou\";\"main\"\n\"2288105\";\"Grand Lahu\";\"other\"\n\"2288115\";\"Grand-Bassam\";\"main\"\n\"2288115\";\"Gran-Bassam\";\"other\"\n\"2288115\";\"Гран-Бассам\";\"other\"\n\"2288118\";\"Affery\";\"main\"\n\"2288118\";\"Aferi\";\"other\"\n\"2288118\";\"Aféri\";\"other\"\n\"2288118\";\"Grand Aferi\";\"other\"\n\"2288118\";\"Grand Aféri\";\"other\"\n\"2288829\";\"Gagnoa\";\"main\"\n\"2288829\";\"Gragnoa\";\"other\"\n\"2289049\";\"Ferkessédougou\";\"main\"\n\"2289049\";\"Ferkessedougou\";\"ascii\"\n\"2289049\";\"Ferkesedugu\";\"other\"\n\"2289049\";\"Firkessedougou\";\"other\"\n\"2289049\";\"Firkessedugu\";\"other\"\n\"2289049\";\"Firkessédougou\";\"other\"\n\"2289049\";\"Firkessédugu\";\"other\"\n\"2289049\";\"Pofire\";\"other\"\n\"2289049\";\"Serkessedougou\";\"other\"\n\"2289049\";\"Феркеседугу\";\"other\"\n\"2289549\";\"Duékoué\";\"main\"\n\"2289549\";\"Duekoue\";\"ascii\"\n\"2289887\";\"Divo\";\"main\"\n\"2289887\";\"Boudougou\";\"other\"\n\"2289983\";\"Dimbokro\";\"main\"\n\"2290412\";\"Daoukro\";\"main\"\n\"2290412\";\"Daoukrou\";\"other\"\n\"2290412\";\"Daukro\";\"other\"\n\"2290412\";\"Даукро\";\"other\"\n\"2290462\";\"Danané\";\"main\"\n\"2290462\";\"Danane\";\"ascii\"\n\"2290462\";\"Fort Hittos\";\"other\"\n\"2290462\";\"Данане\";\"other\"\n\"2290486\";\"Daloa\";\"main\"\n\"2290486\";\"Далоа\";\"other\"\n\"2290582\";\"Dabou\";\"main\"\n\"2290582\";\"Dab\";\"other\"\n\"2290582\";\"Dabu\";\"other\"\n\"2290582\";\"Даб\";\"other\"\n\"2290609\";\"Dabakala\";\"main\"\n\"2290609\";\"Dabakla\";\"other\"\n\"2290836\";\"Boundiali\";\"main\"\n\"2290836\";\"Boundiouli\";\"other\"\n\"2290836\";\"Bundiali\";\"other\"\n\"2290836\";\"Бундиали\";\"other\"\n\"2290849\";\"Bouna\";\"main\"\n\"2290849\";\"Buna\";\"other\"\n\"2290849\";\"Буна\";\"other\"\n\"2290956\";\"Bouaké\";\"main\"\n\"2290956\";\"Bouake\";\"ascii\"\n\"2290956\";\"Buake\";\"other\"\n\"2290956\";\"Bwake\";\"other\"\n\"2290956\";\"Буаке\";\"other\"\n\"2290964\";\"Bouaflé\";\"main\"\n\"2290964\";\"Bouafle\";\"ascii\"\n\"2290964\";\"Buafle\";\"other\"\n\"2290985\";\"Botro\";\"main\"\n\"2291087\";\"Bonoua\";\"main\"\n\"2291087\";\"Bonua\";\"other\"\n\"2291087\";\"Bunua\";\"other\"\n\"2291087\";\"Grand Akapless\";\"other\"\n\"2291113\";\"Bongouanou\";\"main\"\n\"2291113\";\"Bonguanu\";\"other\"\n\"2291113\";\"Bougouanou\";\"other\"\n\"2291136\";\"Bondoukou\";\"main\"\n\"2291136\";\"Bondoukau\";\"other\"\n\"2291136\";\"Bonduku\";\"other\"\n\"2291136\";\"Boudoukou\";\"other\"\n\"2291136\";\"Gontoukou\";\"other\"\n\"2291136\";\"Бондуку\";\"other\"\n\"2291383\";\"Bocanda\";\"main\"\n\"2291383\";\"Bokanda\";\"other\"\n\"2291580\";\"Bingerville\";\"main\"\n\"2291666\";\"Biankouma\";\"main\"\n\"2291779\";\"Béoumi\";\"main\"\n\"2291779\";\"Beoumi\";\"ascii\"\n\"2291779\";\"Beumi\";\"other\"\n\"2292179\";\"Bangolo\";\"main\"\n\"2292179\";\"Zagna\";\"other\"\n\"2292542\";\"Ayamé\";\"main\"\n\"2292542\";\"Ayame\";\"ascii\"\n\"2292755\";\"Arrah\";\"main\"\n\"2292755\";\"Arra\";\"other\"\n\"2292852\";\"Anyama\";\"main\"\n\"2292852\";\"An'jame\";\"other\"\n\"2292852\";\"Aniama\";\"other\"\n\"2292852\";\"Anyama Sossokoua\";\"other\"\n\"2292852\";\"Аньяме\";\"other\"\n\"2293107\";\"Akoupé\";\"main\"\n\"2293107\";\"Akoupe\";\"ascii\"\n\"2293107\";\"Akupe\";\"other\"\n\"2293260\";\"Agnibilékrou\";\"main\"\n\"2293260\";\"Agnibilekrou\";\"ascii\"\n\"2293260\";\"Anibelekru\";\"other\"\n\"2293268\";\"Agboville\";\"main\"\n\"2293268\";\"Agbovile\";\"other\"\n\"2293268\";\"Агбовиле\";\"other\"\n\"2293342\";\"Adzopé\";\"main\"\n\"2293342\";\"Adzope\";\"ascii\"\n\"2293342\";\"Адзопе\";\"other\"\n\"2293428\";\"Adiaké\";\"main\"\n\"2293428\";\"Adiake\";\"ascii\"\n\"2293507\";\"Aboisso\";\"main\"\n\"2293507\";\"Abisso\";\"other\"\n\"2293507\";\"Aboissa\";\"other\"\n\"2293507\";\"Abuasso\";\"other\"\n\"2293507\";\"Абуассо\";\"other\"\n\"2293521\";\"Abobo\";\"main\"\n\"2293538\";\"Abidjan\";\"main\"\n\"2293538\";\"Abican\";\"other\"\n\"2293538\";\"Abidzan\";\"other\"\n\"2293538\";\"Abidzana\";\"other\"\n\"2293538\";\"Abidzanas\";\"other\"\n\"2293538\";\"Abidzhan\";\"other\"\n\"2293538\";\"Abidżan\";\"other\"\n\"2293538\";\"Abidžan\";\"other\"\n\"2293538\";\"Abidžanas\";\"other\"\n\"2293538\";\"Abidžāna\";\"other\"\n\"2293538\";\"Abigano\";\"other\"\n\"2293538\";\"Abijan\";\"other\"\n\"2293538\";\"Abiyan\";\"other\"\n\"2293538\";\"Abiyán\";\"other\"\n\"2293538\";\"Abiĝano\";\"other\"\n\"2293538\";\"a bi rang\";\"other\"\n\"2293538\";\"abijan\";\"other\"\n\"2293538\";\"abijang\";\"other\"\n\"2293538\";\"abyjan\";\"other\"\n\"2293538\";\"Абиджан\";\"other\"\n\"2293538\";\"Абиџан\";\"other\"\n\"2293538\";\"Абіджан\";\"other\"\n\"2293538\";\"אביג'אן\";\"other\"\n\"2293538\";\"أبيجان\";\"other\"\n\"2293538\";\"アビジャン\";\"other\"\n\"2293538\";\"阿比让\";\"other\"\n\"2293538\";\"아비장\";\"other\"\n\"2293549\";\"Abengourou\";\"main\"\n\"2293549\";\"Abenguru\";\"other\"\n\"2293549\";\"Абенгуру\";\"other\"\n\"2596934\";\"Séguéla\";\"main\"\n\"2596934\";\"Seguela\";\"ascii\"\n\"2596934\";\"Segele\";\"other\"\n\"2596934\";\"Сегеле\";\"other\"\n\"2598243\";\"Soubré\";\"main\"\n\"2598243\";\"Soubre\";\"ascii\"\n\"4035715\";\"Avarua\";\"main\"\n\"4035715\";\"Avarúa\";\"other\"\n\"4035715\";\"abarua\";\"other\"\n\"4035715\";\"Аваруа\";\"other\"\n\"4035715\";\"アバルア\";\"other\"\n\"3867625\";\"Yumbel\";\"main\"\n\"3868121\";\"Viña del Mar\";\"main\"\n\"3868121\";\"Vina del Mar\";\"ascii\"\n\"3868121\";\"Vin'ja-del'-Mar\";\"other\"\n\"3868121\";\"Винья-дель-Мар\";\"other\"\n\"3868121\";\"ビニャ・デル・マール\";\"other\"\n\"3868158\";\"Villarrica\";\"main\"\n\"3868192\";\"Villa Alemana\";\"main\"\n\"3868210\";\"Vilcún\";\"main\"\n\"3868210\";\"Vilcun\";\"ascii\"\n\"3868308\";\"Vicuña\";\"main\"\n\"3868308\";\"Vicuna\";\"ascii\"\n\"3868326\";\"Victoria\";\"main\"\n\"3868626\";\"Valparaíso\";\"main\"\n\"3868626\";\"Valparaiso\";\"ascii\"\n\"3868626\";\"Ciudad de Valparaiso\";\"other\"\n\"3868626\";\"Ciudad de Valparaíso\";\"other\"\n\"3868626\";\"Val'paraiso\";\"other\"\n\"3868626\";\"Valparais\";\"other\"\n\"3868626\";\"baruparaiso\";\"other\"\n\"3868626\";\"wa er pa lai suo\";\"other\"\n\"3868626\";\"Валпараисо\";\"other\"\n\"3868626\";\"Вальпараисо\";\"other\"\n\"3868626\";\"バルパライソ\";\"other\"\n\"3868626\";\"瓦尔帕莱索\";\"other\"\n\"3868633\";\"Vallenar\";\"main\"\n\"3868707\";\"Valdivia\";\"main\"\n\"3868707\";\"Ciudad de Valdivia\";\"other\"\n\"3868707\";\"Ciudad de Valdivía\";\"other\"\n\"3868707\";\"Val'divija\";\"other\"\n\"3868707\";\"Вальдивия\";\"other\"\n\"3869381\";\"Traiguén\";\"main\"\n\"3869381\";\"Traiguen\";\"ascii\"\n\"3869657\";\"Tomé\";\"main\"\n\"3869657\";\"Tome\";\"ascii\"\n\"3869716\";\"Tocopilla\";\"main\"\n\"3869716\";\"Tokopil'ja\";\"other\"\n\"3869716\";\"Токопилья\";\"other\"\n\"3869979\";\"Teno\";\"main\"\n\"3870011\";\"Temuco\";\"main\"\n\"3870011\";\"Ciudad Temuco\";\"other\"\n\"3870011\";\"Temuko\";\"other\"\n\"3870011\";\"Темуко\";\"other\"\n\"3870243\";\"Taltal\";\"main\"\n\"3870243\";\"Ciudad Taltal\";\"other\"\n\"3870282\";\"Talcahuano\";\"main\"\n\"3870294\";\"Talca\";\"main\"\n\"3870294\";\"Tal'ka\";\"other\"\n\"3870294\";\"Талька\";\"other\"\n\"3870306\";\"Talagante\";\"main\"\n\"3871286\";\"San Vicente\";\"main\"\n\"3871336\";\"Santiago\";\"main\"\n\"3871336\";\"Ciles Santjagas\";\"other\"\n\"3871336\";\"CiudadSantiago\";\"other\"\n\"3871336\";\"Sanctiacobi\";\"other\"\n\"3871336\";\"Sant'jago\";\"other\"\n\"3871336\";\"Santiago de Chile\";\"other\"\n\"3871336\";\"Santiago de Xile\";\"other\"\n\"3871336\";\"Santiago del Cile\";\"other\"\n\"3871336\";\"Santiago do Chile\";\"other\"\n\"3871336\";\"Santiago du Chili\";\"other\"\n\"3871336\";\"Santiago du Ch·ili\";\"other\"\n\"3871336\";\"Santjago\";\"other\"\n\"3871336\";\"Santjago de Chile\";\"other\"\n\"3871336\";\"Santjago de Chili\";\"other\"\n\"3871336\";\"Stgo.\";\"other\"\n\"3871336\";\"santiago\";\"other\"\n\"3871336\";\"santixako\";\"other\"\n\"3871336\";\"santyaghw\";\"other\"\n\"3871336\";\"santyagw\";\"other\"\n\"3871336\";\"santyyagw\";\"other\"\n\"3871336\";\"sheng de ya ge\";\"other\"\n\"3871336\";\"Čilės Santjagas\";\"other\"\n\"3871336\";\"Σαντιάγο\";\"other\"\n\"3871336\";\"Сантьяго\";\"other\"\n\"3871336\";\"Сантяго де Чиле\";\"other\"\n\"3871336\";\"Сантяго де Чили\";\"other\"\n\"3871336\";\"סנטיאגו דה צ'ילה\";\"other\"\n\"3871336\";\"سانتىياگو\";\"other\"\n\"3871336\";\"سانتياغو\";\"other\"\n\"3871336\";\"سانتیاگو\";\"other\"\n\"3871336\";\"ซันติอาโก\";\"other\"\n\"3871336\";\"სანტიაგო დე ჩილე\";\"other\"\n\"3871336\";\"ሳንቲያጎ\";\"other\"\n\"3871336\";\"サンティアゴ\";\"other\"\n\"3871336\";\"圣地亚哥\";\"other\"\n\"3871336\";\"산티아고\";\"other\"\n\"3871616\";\"Santa Cruz\";\"main\"\n\"3871616\";\"Santa-Krus\";\"other\"\n\"3871616\";\"Санта-Крус\";\"other\"\n\"3871781\";\"San Pedro de Atacama\";\"main\"\n\"3871781\";\"San-Pedro-de-Atakama\";\"other\"\n\"3871781\";\"Сан-Педро-де-Атакама\";\"other\"\n\"3872154\";\"San Javier\";\"main\"\n\"3872255\";\"San Felipe\";\"main\"\n\"3872306\";\"San Clemente\";\"main\"\n\"3872326\";\"San Carlos\";\"main\"\n\"3872348\";\"San Bernardo\";\"main\"\n\"3872395\";\"San Antonio\";\"main\"\n\"3872594\";\"Salamanca\";\"main\"\n\"3873145\";\"Río Bueno\";\"main\"\n\"3873145\";\"Rio Bueno\";\"ascii\"\n\"3873145\";\"Ciudad de Rio Bueno\";\"other\"\n\"3873145\";\"Ciudad de Río Bueno\";\"other\"\n\"3873441\";\"Rengo\";\"main\"\n\"3873775\";\"Rancagua\";\"main\"\n\"3873775\";\"Rankagua\";\"other\"\n\"3873775\";\"Ранкагуа\";\"other\"\n\"3874096\";\"Quilpué\";\"main\"\n\"3874096\";\"Quilpue\";\"ascii\"\n\"3874119\";\"Quillota\";\"main\"\n\"3874579\";\"Purranque\";\"main\"\n\"3874787\";\"Punta Arenas\";\"main\"\n\"3874787\";\"Magallanes\";\"other\"\n\"3874787\";\"Punta Arehnas\";\"other\"\n\"3874787\";\"Punta Arenasas\";\"other\"\n\"3874787\";\"peng ta a lei na si\";\"other\"\n\"3874787\";\"puntaarenasu\";\"other\"\n\"3874787\";\"Пунта Аренас\";\"other\"\n\"3874787\";\"Пунта Арэнас\";\"other\"\n\"3874787\";\"プンタアレナス\";\"other\"\n\"3874787\";\"蓬塔阿雷纳斯\";\"other\"\n\"3874930\";\"Puerto Varas\";\"main\"\n\"3874943\";\"Puerto Quellón\";\"main\"\n\"3874943\";\"Puerto Quellon\";\"ascii\"\n\"3874958\";\"Puerto Natales\";\"main\"\n\"3874958\";\"Natales\";\"other\"\n\"3874958\";\"Puehrto-Natales\";\"other\"\n\"3874958\";\"Пуэрто-Наталес\";\"other\"\n\"3874960\";\"Puerto Montt\";\"main\"\n\"3874960\";\"Ciudad de Puerto Montt\";\"other\"\n\"3874960\";\"Puehrto-Mont\";\"other\"\n\"3874960\";\"Puerto Mont\";\"other\"\n\"3874960\";\"Пуерто Монт\";\"other\"\n\"3874960\";\"Пуэрто-Монт\";\"other\"\n\"3874982\";\"Puerto Cisnes\";\"main\"\n\"3874997\";\"Puerto Aisén\";\"main\"\n\"3874997\";\"Puerto Aisen\";\"ascii\"\n\"3874997\";\"Aisen\";\"other\"\n\"3874997\";\"Aisén\";\"other\"\n\"3874997\";\"Aysen\";\"other\"\n\"3874997\";\"Ciudad de Aysen\";\"other\"\n\"3874997\";\"Ciudad de Aysén\";\"other\"\n\"3874997\";\"Puerto Aysen\";\"other\"\n\"3874997\";\"Puerto Aysén\";\"other\"\n\"3875024\";\"viña causiño\";\"main\"\n\"3875024\";\"vina causino\";\"ascii\"\n\"3875070\";\"Pucón\";\"main\"\n\"3875070\";\"Pucon\";\"ascii\"\n\"3875070\";\"Pukon\";\"other\"\n\"3875070\";\"Пукон\";\"other\"\n\"3875746\";\"Pitrufquén\";\"main\"\n\"3875746\";\"Pitrufquen\";\"ascii\"\n\"3876664\";\"Penco\";\"main\"\n\"3876664\";\"Ciudad de Penco\";\"other\"\n\"3876664\";\"Penon\";\"other\"\n\"3876664\";\"Peñon\";\"other\"\n\"3876685\";\"Peñaflor\";\"main\"\n\"3876685\";\"Penaflor\";\"ascii\"\n\"3876685\";\"Pen'jaflor\";\"other\"\n\"3876685\";\"Пеньяфлор\";\"other\"\n\"3877146\";\"Parral\";\"main\"\n\"3877146\";\"Parralja\";\"other\"\n\"3877146\";\"Парраля\";\"other\"\n\"3877348\";\"Panguipulli\";\"main\"\n\"3877644\";\"Palena\";\"main\"\n\"3877644\";\"Alto Palena\";\"other\"\n\"3877739\";\"Paine\";\"main\"\n\"3877739\";\"Pejn\";\"other\"\n\"3877739\";\"Пейн\";\"other\"\n\"3877918\";\"Ovalle\";\"main\"\n\"3877918\";\"Oval'e\";\"other\"\n\"3877918\";\"Овалье\";\"other\"\n\"3877949\";\"Osorno\";\"main\"\n\"3877949\";\"Осорно\";\"other\"\n\"3878456\";\"Nueva Imperial\";\"main\"\n\"3879123\";\"Nacimiento\";\"main\"\n\"3879200\";\"Mulchén\";\"main\"\n\"3879200\";\"Mulchen\";\"ascii\"\n\"3879200\";\"Mul'chen\";\"other\"\n\"3879200\";\"Мульчен\";\"other\"\n\"3879429\";\"Monte Patria\";\"main\"\n\"3879627\";\"Molina\";\"main\"\n\"3879627\";\"Молина\";\"other\"\n\"3880107\";\"Melipilla\";\"main\"\n\"3880107\";\"Melipil'ja\";\"other\"\n\"3880107\";\"Mellipilla\";\"other\"\n\"3880107\";\"Мелипилья\";\"other\"\n\"3881102\";\"Machalí\";\"main\"\n\"3881102\";\"Machali\";\"ascii\"\n\"3881276\";\"Lota\";\"main\"\n\"3881276\";\"Lot\";\"other\"\n\"3881276\";\"Лот\";\"other\"\n\"3882428\";\"Los Ángeles\";\"main\"\n\"3882428\";\"Los Angeles\";\"ascii\"\n\"3882428\";\"Angeles\";\"other\"\n\"3882428\";\"Ciudad de Los Anjeles\";\"other\"\n\"3882428\";\"Los Anjeles\";\"other\"\n\"3882428\";\"Los-Andzheles\";\"other\"\n\"3882428\";\"Лос-Анджелес\";\"other\"\n\"3882434\";\"Los Andes\";\"main\"\n\"3882434\";\"Andes\";\"other\"\n\"3882434\";\"Ciudad Los Andes\";\"other\"\n\"3882434\";\"Los-And\";\"other\"\n\"3882434\";\"Лос-Анд\";\"other\"\n\"3882559\";\"Longaví\";\"main\"\n\"3882559\";\"Longavi\";\"ascii\"\n\"3882582\";\"Loncoche\";\"main\"\n\"3883035\";\"Llaillay\";\"main\"\n\"3883035\";\"Llaillai\";\"other\"\n\"3883035\";\"Llay-Llay\";\"other\"\n\"3883167\";\"Linares\";\"main\"\n\"3883167\";\"Линарес\";\"other\"\n\"3883214\";\"Limache\";\"main\"\n\"3883457\";\"Lebu\";\"main\"\n\"3883457\";\"Ciudad de Lebu\";\"other\"\n\"3883457\";\"Puerto Lebu\";\"other\"\n\"3883615\";\"Lautaro\";\"main\"\n\"3883629\";\"La Unión\";\"main\"\n\"3883629\";\"La Union\";\"ascii\"\n\"3883629\";\"Ciudad La Union\";\"other\"\n\"3884373\";\"La Serena\";\"main\"\n\"3884373\";\"La-Serena\";\"other\"\n\"3884373\";\"Ла-Серена\";\"other\"\n\"3885273\";\"Lampa\";\"main\"\n\"3885456\";\"La Ligua\";\"main\"\n\"3885509\";\"La Laja\";\"main\"\n\"3885509\";\"Laja\";\"other\"\n\"3887127\";\"Iquique\";\"main\"\n\"3887127\";\"Ikike\";\"other\"\n\"3887127\";\"ikike\";\"other\"\n\"3887127\";\"Ікіке\";\"other\"\n\"3887127\";\"Икике\";\"other\"\n\"3887127\";\"イキケ\";\"other\"\n\"3887344\";\"Illapel\";\"main\"\n\"3888214\";\"Hacienda La Calera\";\"main\"\n\"3888214\";\"Calera\";\"other\"\n\"3888749\";\"Graneros\";\"main\"\n\"3889223\";\"Futaleufú\";\"main\"\n\"3889223\";\"Futaleufu\";\"ascii\"\n\"3889223\";\"Futalelfu\";\"other\"\n\"3889223\";\"Futalelfú\";\"other\"\n\"3889263\";\"Frutillar\";\"main\"\n\"3889263\";\"Frutil'jar\";\"other\"\n\"3889263\";\"Фрутильяр\";\"other\"\n\"3889322\";\"Freire\";\"main\"\n\"3890949\";\"El Monte\";\"main\"\n\"3892454\";\"Diego de Almagro\";\"main\"\n\"3892870\";\"Curicó\";\"main\"\n\"3892870\";\"Curico\";\"ascii\"\n\"3892892\";\"Curanilahue\";\"main\"\n\"3893516\";\"Corral\";\"main\"\n\"3893516\";\"Ciudad de Corral\";\"other\"\n\"3893516\";\"Puerto Corral\";\"other\"\n\"3893532\";\"Coronel\";\"main\"\n\"3893532\";\"Koronel'\";\"other\"\n\"3893532\";\"Коронель\";\"other\"\n\"3893629\";\"Coquimbo\";\"main\"\n\"3893629\";\"Ciudad de Coquimbo\";\"other\"\n\"3893629\";\"Kokimbo\";\"other\"\n\"3893629\";\"Кокимбо\";\"other\"\n\"3893656\";\"Copiapó\";\"main\"\n\"3893656\";\"Copiapo\";\"ascii\"\n\"3893726\";\"Constitución\";\"main\"\n\"3893726\";\"Constitucion\";\"ascii\"\n\"3893894\";\"Concepción\";\"main\"\n\"3893894\";\"Concepcion\";\"ascii\"\n\"3893894\";\"Ciudad de Concepcion\";\"other\"\n\"3893894\";\"Konseps'on\";\"other\"\n\"3893894\";\"Консепсьон\";\"other\"\n\"3894177\";\"Collipulli\";\"main\"\n\"3894406\";\"Coihueco\";\"main\"\n\"3894426\";\"Coihaique\";\"main\"\n\"3894426\";\"Coyhaique\";\"other\"\n\"3894426\";\"Kojajke\";\"other\"\n\"3894426\";\"Койайке\";\"other\"\n\"3894483\";\"Cochrane\";\"main\"\n\"3894871\";\"Chonchi\";\"main\"\n\"3894871\";\"Chonch\";\"other\"\n\"3894871\";\"Trongchue\";\"other\"\n\"3894871\";\"Trongchü\";\"other\"\n\"3895061\";\"Chimbarongo\";\"main\"\n\"3895088\";\"Chillán\";\"main\"\n\"3895088\";\"Chillan\";\"ascii\"\n\"3895113\";\"Chile Chico\";\"main\"\n\"3895138\";\"Chiguayante\";\"main\"\n\"3895642\";\"Chaitén\";\"main\"\n\"3895642\";\"Chaiten\";\"ascii\"\n\"3896105\";\"Cauquenes\";\"main\"\n\"3896105\";\"De Cauquenes\";\"other\"\n\"3896105\";\"Kaukenes\";\"other\"\n\"3896105\";\"Каукенес\";\"other\"\n\"3896218\";\"Castro\";\"main\"\n\"3896218\";\"Kastro\";\"other\"\n\"3896218\";\"Кастро\";\"other\"\n\"3896774\";\"Carahue\";\"main\"\n\"3896774\";\"Carahuo\";\"other\"\n\"3896924\";\"Cañete\";\"main\"\n\"3896924\";\"Canete\";\"ascii\"\n\"3897334\";\"Calbuco\";\"main\"\n\"3897334\";\"Kallfueko\";\"other\"\n\"3897334\";\"Kallfüko\";\"other\"\n\"3897347\";\"Calama\";\"main\"\n\"3897347\";\"Kalama\";\"other\"\n\"3897347\";\"Калама\";\"other\"\n\"3897557\";\"Cabrero\";\"main\"\n\"3897557\";\"Carrero\";\"other\"\n\"3897724\";\"Bulnes\";\"main\"\n\"3897774\";\"Buin\";\"main\"\n\"3897774\";\"Буин\";\"other\"\n\"3899361\";\"Arica\";\"main\"\n\"3899361\";\"Arika\";\"other\"\n\"3899361\";\"Арика\";\"other\"\n\"3899361\";\"אריקה\";\"other\"\n\"3899462\";\"Arauco\";\"main\"\n\"3899539\";\"Antofagasta\";\"main\"\n\"3899539\";\"Antafagasta\";\"other\"\n\"3899539\";\"antofagasuta\";\"other\"\n\"3899539\";\"antopagaseuta\";\"other\"\n\"3899539\";\"Антафагаста\";\"other\"\n\"3899539\";\"Антофагаста\";\"other\"\n\"3899539\";\"アントファガスタ\";\"other\"\n\"3899539\";\"안토파가스타\";\"other\"\n\"3899629\";\"Angol\";\"main\"\n\"3899629\";\"Angol'\";\"other\"\n\"3899629\";\"Анголь\";\"other\"\n\"3899695\";\"Ancud\";\"main\"\n\"3899695\";\"Ankun\";\"other\"\n\"3899695\";\"Ankuñ\";\"other\"\n\"3950166\";\"Puerto Chacabuco\";\"main\"\n\"3969755\";\"La Junta\";\"main\"\n\"4030754\";\"Hanga Roa\";\"main\"\n\"4030754\";\"Khanga-Roa\";\"other\"\n\"4030754\";\"hang-galoa\";\"other\"\n\"4030754\";\"hanja rwa\";\"other\"\n\"4030754\";\"Ханга-Роа\";\"other\"\n\"4030754\";\"هانجا روا\";\"other\"\n\"4030754\";\"항가로아\";\"other\"\n\"6458705\";\"Las Gaviotas\";\"main\"\n\"6458708\";\"Las Animas\";\"main\"\n\"6930873\";\"Остров Пасхи\";\"main\"\n\"6930873\";\"Ostrov Paskhi\";\"ascii\"\n\"6930873\";\"Rapa Nui\";\"other\"\n\"7114227\";\"Santiago de Chile\";\"main\"\n\"7281017\";\"La Pintana\";\"main\"\n\"7281020\";\"Lo Prado\";\"main\"\n\"2220849\";\"Yoko\";\"main\"\n\"2220849\";\"Joko\";\"other\"\n\"2220853\";\"Yokadouma\";\"main\"\n\"2220853\";\"Youkadouma\";\"other\"\n\"2220957\";\"Yaoundé\";\"main\"\n\"2220957\";\"Yaounde\";\"ascii\"\n\"2220957\";\"Giaounte\";\"other\"\n\"2220957\";\"Jaunde\";\"other\"\n\"2220957\";\"Jaundė\";\"other\"\n\"2220957\";\"Jaúnde\";\"other\"\n\"2220957\";\"Yaunde\";\"other\"\n\"2220957\";\"Yaundé\";\"other\"\n\"2220957\";\"ya wen de\";\"other\"\n\"2220957\";\"yaunde\";\"other\"\n\"2220957\";\"Γιαουντέ\";\"other\"\n\"2220957\";\"Јаунде\";\"other\"\n\"2220957\";\"Яунде\";\"other\"\n\"2220957\";\"Յաունդե\";\"other\"\n\"2220957\";\"יאונדה\";\"other\"\n\"2220957\";\"ያዉንዴ\";\"other\"\n\"2220957\";\"ヤウンデ\";\"other\"\n\"2220957\";\"雅温得\";\"other\"\n\"2220957\";\"야운데\";\"other\"\n\"2221030\";\"Yagoua\";\"main\"\n\"2221030\";\"Jagua\";\"other\"\n\"2221030\";\"Jágua\";\"other\"\n\"2221030\";\"Yagua\";\"other\"\n\"2221046\";\"Yabassi\";\"main\"\n\"2221046\";\"Jabassi\";\"other\"\n\"2221046\";\"Yabasi\";\"other\"\n\"2221046\";\"Yabazi\";\"other\"\n\"2221053\";\"Wum\";\"main\"\n\"2221394\";\"Tonga\";\"main\"\n\"2221394\";\"Lagosdorf\";\"other\"\n\"2221394\";\"Tonga's\";\"other\"\n\"2221394\";\"Tonga’s\";\"other\"\n\"2221504\";\"Tiko\";\"main\"\n\"2221513\";\"Tignère\";\"main\"\n\"2221513\";\"Tignere\";\"ascii\"\n\"2221513\";\"Tingere\";\"other\"\n\"2221513\";\"Tingeré\";\"other\"\n\"2221513\";\"Tinguere\";\"other\"\n\"2221513\";\"Tinguéré\";\"other\"\n\"2221530\";\"Tibati\";\"main\"\n\"2221607\";\"Tcholliré\";\"main\"\n\"2221607\";\"Tchollire\";\"ascii\"\n\"2221607\";\"Cholire\";\"other\"\n\"2221607\";\"Choliré\";\"other\"\n\"2221607\";\"Chollire\";\"other\"\n\"2221607\";\"Djolere\";\"other\"\n\"2221607\";\"Djoléré\";\"other\"\n\"2221607\";\"Jolere\";\"other\"\n\"2221607\";\"Tcholere\";\"other\"\n\"2221607\";\"Tcholire\";\"other\"\n\"2221607\";\"Tcholiré\";\"other\"\n\"2221607\";\"Tcholéré\";\"other\"\n\"2221607\";\"Tscholere\";\"other\"\n\"2222230\";\"Sangmélima\";\"main\"\n\"2222230\";\"Sangmelima\";\"ascii\"\n\"2222230\";\"Sangmelina\";\"other\"\n\"2222230\";\"Сангмелима\";\"other\"\n\"2222366\";\"Saa\";\"main\"\n\"2222439\";\"Rey Bouba\";\"main\"\n\"2222439\";\"Rei Buba\";\"other\"\n\"2222439\";\"Rei-Bouba\";\"other\"\n\"2222439\";\"Reï-Bouba\";\"other\"\n\"2222539\";\"Poli\";\"main\"\n\"2222568\";\"Pitoa\";\"main\"\n\"2222568\";\"Piloa\";\"other\"\n\"2222568\";\"Pitowa\";\"other\"\n\"2222623\";\"Penja\";\"main\"\n\"2223162\";\"Ombésa\";\"main\"\n\"2223162\";\"Ombesa\";\"ascii\"\n\"2223162\";\"Ombessa\";\"other\"\n\"2223216\";\"Okola\";\"main\"\n\"2223226\";\"Okoa\";\"main\"\n\"2223226\";\"Scho\";\"other\"\n\"2223226\";\"So\";\"other\"\n\"2223226\";\"Soa\";\"other\"\n\"2223293\";\"Obala\";\"main\"\n\"2223421\";\"Ntui\";\"main\"\n\"2223421\";\"N'Dui\";\"other\"\n\"2223421\";\"Ntwi\";\"other\"\n\"2223421\";\"N’Dui\";\"other\"\n\"2223734\";\"Nkoteng\";\"main\"\n\"2223763\";\"Nkongsamba\";\"main\"\n\"2223763\";\"Nkongsomba\";\"other\"\n\"2223763\";\"Нконгсамба\";\"other\"\n\"2224212\";\"Njinikom\";\"main\"\n\"2224212\";\"Njnikom\";\"other\"\n\"2224413\";\"Nguti\";\"main\"\n\"2224584\";\"Ngoro\";\"main\"\n\"2224584\";\"Janjo\";\"other\"\n\"2224584\";\"Janjō\";\"other\"\n\"2224584\";\"Ngorro\";\"other\"\n\"2224641\";\"Ngomedzap\";\"main\"\n\"2224827\";\"Ngaoundéré\";\"main\"\n\"2224827\";\"Ngaoundere\";\"ascii\"\n\"2224827\";\"Ngaundere\";\"other\"\n\"2224863\";\"Ngambé\";\"main\"\n\"2224863\";\"Ngambe\";\"ascii\"\n\"2224863\";\"Babimbi\";\"other\"\n\"2224863\";\"Nganbe\";\"other\"\n\"2224863\";\"Nganbé\";\"other\"\n\"2225263\";\"Ndikiniméki\";\"main\"\n\"2225263\";\"Ndikinimeki\";\"ascii\"\n\"2225263\";\"Ndikinemeki\";\"other\"\n\"2225325\";\"Ndélélé\";\"main\"\n\"2225325\";\"Ndelele\";\"ascii\"\n\"2225325\";\"Alte Fakt Delele\";\"other\"\n\"2225325\";\"Delele\";\"other\"\n\"2225325\";\"Delelé\";\"other\"\n\"2225325\";\"Vieux-Delele\";\"other\"\n\"2225325\";\"Vieux-Délélé\";\"other\"\n\"2225457\";\"Nanga Eboko\";\"main\"\n\"2225703\";\"Mvangué\";\"main\"\n\"2225703\";\"Mvangue\";\"ascii\"\n\"2225726\";\"Muyuka\";\"main\"\n\"2225726\";\"Mouyouka\";\"other\"\n\"2225728\";\"Mutengene\";\"main\"\n\"2225745\";\"Mundemba\";\"main\"\n\"2225745\";\"Mundenba\";\"other\"\n\"2225745\";\"Ndian\";\"other\"\n\"2225940\";\"Mouanko\";\"main\"\n\"2225940\";\"Mouangko\";\"other\"\n\"2225940\";\"Muankoo\";\"other\"\n\"2225991\";\"Mora\";\"main\"\n\"2225991\";\"More\";\"other\"\n\"2225991\";\"Море\";\"other\"\n\"2226275\";\"Mokolo\";\"main\"\n\"2226441\";\"Mme-Bafumen\";\"main\"\n\"2226441\";\"Me\";\"other\"\n\"2226441\";\"Mme\";\"other\"\n\"2226515\";\"Minta\";\"main\"\n\"2226641\";\"Mindif\";\"main\"\n\"2226641\";\"Mendif\";\"other\"\n\"2227230\";\"Melong\";\"main\"\n\"2227402\";\"Meïganga\";\"main\"\n\"2227402\";\"Meiganga\";\"ascii\"\n\"2227402\";\"Meiganda\";\"other\"\n\"2227402\";\"Mejgange\";\"other\"\n\"2227402\";\"Мейганге\";\"other\"\n\"2227613\";\"Mbouda\";\"main\"\n\"2227853\";\"Mbengwi\";\"main\"\n\"2227980\";\"Mbankomo\";\"main\"\n\"2228005\";\"Mbanga\";\"main\"\n\"2228005\";\"M'Bange\";\"other\"\n\"2228005\";\"M’Bangé\";\"other\"\n\"2228019\";\"Mbang\";\"main\"\n\"2228028\";\"Mbandjok\";\"main\"\n\"2228028\";\"Mbandjock\";\"other\"\n\"2228079\";\"Mbalmayo\";\"main\"\n\"2228079\";\"Mbal'majo\";\"other\"\n\"2228079\";\"Mbalmajo\";\"other\"\n\"2228079\";\"Мбальмайо\";\"other\"\n\"2228373\";\"Maroua\";\"main\"\n\"2228373\";\"Marua\";\"other\"\n\"2228373\";\"Маруа\";\"other\"\n\"2228499\";\"Manjo\";\"main\"\n\"2228675\";\"Mamfe\";\"main\"\n\"2228881\";\"Makary\";\"main\"\n\"2228881\";\"Mafate\";\"other\"\n\"2228881\";\"Mafaté\";\"other\"\n\"2228881\";\"Mafete\";\"other\"\n\"2228881\";\"Makari\";\"other\"\n\"2229152\";\"Loum\";\"main\"\n\"2229152\";\"Lum\";\"other\"\n\"2229152\";\"Лум\";\"other\"\n\"2229267\";\"Lolodorf\";\"main\"\n\"2229267\";\"Lelodorf\";\"other\"\n\"2229267\";\"Lolodrof\";\"other\"\n\"2229411\";\"Limbe\";\"main\"\n\"2229411\";\"Limbé\";\"other\"\n\"2229411\";\"Victoria\";\"other\"\n\"2229411\";\"Лимбе\";\"other\"\n\"2229681\";\"Lagdo\";\"main\"\n\"2229748\";\"Kumbo\";\"main\"\n\"2229752\";\"Kumba\";\"main\"\n\"2229752\";\"Kumboj\";\"other\"\n\"2229752\";\"Кумбой\";\"other\"\n\"2229761\";\"Kribi\";\"main\"\n\"2229761\";\"Криби\";\"other\"\n\"2229780\";\"Koza\";\"main\"\n\"2229798\";\"Kousséri\";\"main\"\n\"2229798\";\"Kousseri\";\"ascii\"\n\"2229798\";\"Fort Fureau\";\"other\"\n\"2229798\";\"Fort-Foureau\";\"other\"\n\"2229798\";\"Kusseri\";\"other\"\n\"2230028\";\"Kontcha\";\"main\"\n\"2230028\";\"Koncha\";\"other\"\n\"2230028\";\"Kontscha\";\"other\"\n\"2230285\";\"Bankim\";\"main\"\n\"2230285\";\"Bamkim\";\"other\"\n\"2230285\";\"Bamkin\";\"other\"\n\"2230285\";\"Bankin\";\"other\"\n\"2230285\";\"Kimi\";\"other\"\n\"2230285\";\"Nga's\";\"other\"\n\"2230599\";\"Kaélé\";\"main\"\n\"2230599\";\"Kaele\";\"ascii\"\n\"2230641\";\"Jakiri\";\"main\"\n\"2230876\";\"Guider\";\"main\"\n\"2230876\";\"Gider\";\"other\"\n\"2230876\";\"Guidder\";\"other\"\n\"2231319\";\"Garoua Boulaï\";\"main\"\n\"2231319\";\"Garoua Boulai\";\"ascii\"\n\"2231320\";\"Garoua\";\"main\"\n\"2231320\";\"Garua\";\"other\"\n\"2231320\";\"Гаруа\";\"other\"\n\"2231482\";\"Fundong\";\"main\"\n\"2231504\";\"Foumbot\";\"main\"\n\"2231504\";\"Foumbat\";\"other\"\n\"2231506\";\"Foumban\";\"main\"\n\"2231506\";\"Foumbam\";\"other\"\n\"2231506\";\"Fumban\";\"other\"\n\"2231564\";\"Fontem\";\"main\"\n\"2231775\";\"Évodoula\";\"main\"\n\"2231775\";\"Evodoula\";\"ascii\"\n\"2231851\";\"Essé\";\"main\"\n\"2231851\";\"Esse\";\"ascii\"\n\"2231881\";\"Eséka\";\"main\"\n\"2231881\";\"Eseka\";\"ascii\"\n\"2232239\";\"Edéa\";\"main\"\n\"2232239\";\"Edea\";\"ascii\"\n\"2232239\";\"Ehdea\";\"other\"\n\"2232239\";\"Édéa\";\"other\"\n\"2232239\";\"Эдеа\";\"other\"\n\"2232283\";\"Ébolowa\";\"main\"\n\"2232283\";\"Ebolowa\";\"ascii\"\n\"2232283\";\"Ebolova\";\"other\"\n\"2232444\";\"Dschang\";\"main\"\n\"2232444\";\"Chang\";\"other\"\n\"2232444\";\"Dchang\";\"other\"\n\"2232444\";\"Djang\";\"other\"\n\"2232444\";\"Tchang\";\"other\"\n\"2232497\";\"Doumé\";\"main\"\n\"2232497\";\"Doume\";\"ascii\"\n\"2232497\";\"Dume\";\"other\"\n\"2232497\";\"Dume-Station\";\"other\"\n\"2232593\";\"Douala\";\"main\"\n\"2232593\";\"Doula\";\"other\"\n\"2232593\";\"Duala\";\"other\"\n\"2232593\";\"do~uara\";\"other\"\n\"2232593\";\"du a la\";\"other\"\n\"2232593\";\"Дуала\";\"other\"\n\"2232593\";\"ドゥアラ\";\"other\"\n\"2232593\";\"杜阿拉\";\"other\"\n\"2232774\";\"Djohong\";\"main\"\n\"2232774\";\"Doumba\";\"other\"\n\"2232997\";\"Dizangué\";\"main\"\n\"2232997\";\"Dizangue\";\"ascii\"\n\"2232997\";\"Dizanque\";\"other\"\n\"2232997\";\"Dizanqué\";\"other\"\n\"2233056\";\"Dimako\";\"main\"\n\"2233100\";\"Dibombari\";\"main\"\n\"2233118\";\"Diang\";\"main\"\n\"2233410\";\"Buea\";\"main\"\n\"2233410\";\"Buéa\";\"other\"\n\"2233704\";\"Bonabéri\";\"main\"\n\"2233704\";\"Bonaberi\";\"ascii\"\n\"2233704\";\"Boniberi\";\"other\"\n\"2233704\";\"Bouaberi\";\"other\"\n\"2233805\";\"Bogo\";\"main\"\n\"2234339\";\"Bétaré Oya\";\"main\"\n\"2234339\";\"Betare Oya\";\"ascii\"\n\"2234339\";\"Betare\";\"other\"\n\"2234339\";\"Betaye-Oya\";\"other\"\n\"2234359\";\"Bertoua\";\"main\"\n\"2234359\";\"Bertua\";\"other\"\n\"2234359\";\"Gamane\";\"other\"\n\"2234359\";\"Бертуа\";\"other\"\n\"2234455\";\"Belo\";\"main\"\n\"2234455\";\"Bello\";\"other\"\n\"2234520\";\"Bélel\";\"main\"\n\"2234520\";\"Belel\";\"ascii\"\n\"2234536\";\"Bélabo\";\"main\"\n\"2234536\";\"Belabo\";\"ascii\"\n\"2234536\";\"Белабо\";\"other\"\n\"2234545\";\"Bekondo\";\"main\"\n\"2234545\";\"Boa Bekondo\";\"other\"\n\"2234635\";\"Bazou\";\"main\"\n\"2234663\";\"Batouri\";\"main\"\n\"2234663\";\"Baturi\";\"other\"\n\"2234684\";\"Batibo\";\"main\"\n\"2234794\";\"Banyo\";\"main\"\n\"2234794\";\"Banjo\";\"other\"\n\"2234803\";\"Bansoa\";\"main\"\n\"2234842\";\"Ngou\";\"main\"\n\"2234842\";\"Bangou\";\"other\"\n\"2234842\";\"Banjou\";\"other\"\n\"2234865\";\"Bangangté\";\"main\"\n\"2234865\";\"Bangangte\";\"ascii\"\n\"2234865\";\"Bangante\";\"other\"\n\"2234865\";\"Banganté\";\"other\"\n\"2234904\";\"Bandjoun\";\"main\"\n\"2234936\";\"Bana\";\"main\"\n\"2234941\";\"Bamusso\";\"main\"\n\"2234941\";\"Bamuso\";\"other\"\n\"2234968\";\"Bamendjou\";\"main\"\n\"2234974\";\"Bamenda\";\"main\"\n\"2234974\";\"Bamendy\";\"other\"\n\"2234974\";\"Баменды\";\"other\"\n\"2235029\";\"Bali\";\"main\"\n\"2235029\";\"Бали\";\"other\"\n\"2235189\";\"Bafoussam\";\"main\"\n\"2235189\";\"Bafousam\";\"other\"\n\"2235189\";\"Bafusam\";\"other\"\n\"2235189\";\"Bafussama\";\"other\"\n\"2235189\";\"Befoussam\";\"other\"\n\"2235189\";\"Бафуссама\";\"other\"\n\"2235194\";\"Bafia\";\"main\"\n\"2235194\";\"Bafia Ngitakuba\";\"other\"\n\"2235194\";\"Bafiā Ngitakuba\";\"other\"\n\"2235196\";\"Bafang\";\"main\"\n\"2235293\";\"Babanki\";\"main\"\n\"2235293\";\"Big Babanki\";\"other\"\n\"2235660\";\"Ambam\";\"main\"\n\"2235776\";\"Akonolinga\";\"main\"\n\"2235776\";\"Akomolinga\";\"other\"\n\"2235780\";\"Akono\";\"main\"\n\"2235814\";\"Akom II\";\"main\"\n\"2235814\";\"Akom\";\"other\"\n\"2236053\";\"Abong Mbang\";\"main\"\n\"2594800\";\"Idenao\";\"main\"\n\"2595172\";\"Ndom\";\"main\"\n\"6620518\";\"Somié\";\"main\"\n\"6620518\";\"Somie\";\"ascii\"\n\"6620518\";\"Ndeba\";\"other\"\n\"6620518\";\"Tchokmon\";\"other\"\n\"1279472\";\"Zhedao\";\"main\"\n\"1279472\";\"Che-tao\";\"other\"\n\"1279472\";\"Che-tao-chen\";\"other\"\n\"1279472\";\"Liang-ho\";\"other\"\n\"1279472\";\"Lianghe\";\"other\"\n\"1279472\";\"zhe dao\";\"other\"\n\"1279472\";\"遮岛\";\"other\"\n\"1279485\";\"Zhangfeng\";\"main\"\n\"1279485\";\"Chang-Feng-Cheh\";\"other\"\n\"1279485\";\"Chang-feng\";\"other\"\n\"1279485\";\"Chang-feng-chieh\";\"other\"\n\"1279485\";\"Changfengkai\";\"other\"\n\"1279485\";\"Hsanghawng\";\"other\"\n\"1279485\";\"Lung-ch'uan\";\"other\"\n\"1279485\";\"Lung-ch’uan\";\"other\"\n\"1279485\";\"zhang feng\";\"other\"\n\"1279485\";\"章凤\";\"other\"\n\"1279553\";\"Yuhu\";\"main\"\n\"1279553\";\"Erh-yuan\";\"other\"\n\"1279553\";\"Eryuan\";\"other\"\n\"1279553\";\"Lan-ch'iung\";\"other\"\n\"1279553\";\"Lan-ch’iung\";\"other\"\n\"1279553\";\"Lang-ch'iung\";\"other\"\n\"1279553\";\"Lang-ch’iung\";\"other\"\n\"1279553\";\"Langkiunghsien\";\"other\"\n\"1279553\";\"Lankiung\";\"other\"\n\"1279553\";\"Lankiunghsien\";\"other\"\n\"1279553\";\"Yu-hu-chen\";\"other\"\n\"1279553\";\"Yü-hu-chen\";\"other\"\n\"1279553\";\"yu hu\";\"other\"\n\"1279553\";\"玉湖\";\"other\"\n\"1279715\";\"Xigazê\";\"main\"\n\"1279715\";\"Xigaze\";\"ascii\"\n\"1279715\";\"Gigatze\";\"other\"\n\"1279715\";\"Hsi-ko-tzu\";\"other\"\n\"1279715\";\"Hsi-ko-tzü\";\"other\"\n\"1279715\";\"Jih-k'a-tse\";\"other\"\n\"1279715\";\"Jih-k'e-tze\";\"other\"\n\"1279715\";\"Jih-k'o-tse\";\"other\"\n\"1279715\";\"Jih-k’a-tse\";\"other\"\n\"1279715\";\"Jih-k’e-tze\";\"other\"\n\"1279715\";\"Jih-k’o-tse\";\"other\"\n\"1279715\";\"Sh'i-ka-tse\";\"other\"\n\"1279715\";\"Shigadze\";\"other\"\n\"1279715\";\"Shigatse\";\"other\"\n\"1279715\";\"Shigatze\";\"other\"\n\"1279715\";\"Sh’i-ka-tse\";\"other\"\n\"1279715\";\"Siketze\";\"other\"\n\"1279715\";\"Zhikatse\";\"other\"\n\"1279715\";\"ri ke ze shi\";\"other\"\n\"1279715\";\"shigatsu~e shi\";\"other\"\n\"1279715\";\"sigache\";\"other\"\n\"1279715\";\"Шигадзе\";\"other\"\n\"1279715\";\"シガツェ市\";\"other\"\n\"1279715\";\"日喀则市\";\"other\"\n\"1279715\";\"시가체\";\"other\"\n\"1279754\";\"Xarsingma\";\"main\"\n\"1279754\";\"Chomo\";\"other\"\n\"1279754\";\"Hsia-ssu-ma\";\"other\"\n\"1279754\";\"Shasima\";\"other\"\n\"1279754\";\"Xiasima\";\"other\"\n\"1279754\";\"Ya-tung\";\"other\"\n\"1279754\";\"Yadong\";\"other\"\n\"1279754\";\"xia si ma\";\"other\"\n\"1279754\";\"下司马\";\"other\"\n\"1279860\";\"Darya Boyi\";\"main\"\n\"1279860\";\"Daliya Buyi\";\"other\"\n\"1279860\";\"Daliya Buyi Xiang\";\"other\"\n\"1279860\";\"Darya Boye\";\"other\"\n\"1279860\";\"T'ung-ku-tzu-pa-ssu-t'e\";\"other\"\n\"1279860\";\"Tongguzbasti\";\"other\"\n\"1279860\";\"Tongguzi Basite\";\"other\"\n\"1279860\";\"T’ung-ku-tzu-pa-ssu-t’e\";\"other\"\n\"1279860\";\"da li ya bu yi\";\"other\"\n\"1279860\";\"da li ya bu yi xiang\";\"other\"\n\"1279860\";\"tong gu zi ba si te\";\"other\"\n\"1279860\";\"Тоңгузбасти\";\"other\"\n\"1279860\";\"توڭگۇزباستى\";\"other\"\n\"1279860\";\"达里雅布依\";\"other\"\n\"1279860\";\"达里雅布依乡\";\"other\"\n\"1279860\";\"通古孜巴斯特\";\"other\"\n\"1279891\";\"Tengyue\";\"main\"\n\"1279891\";\"Momein\";\"other\"\n\"1279891\";\"T'eng-ch'ung-hsien\";\"other\"\n\"1279891\";\"Tengchong\";\"other\"\n\"1279891\";\"Tengyueh\";\"other\"\n\"1279891\";\"Tengyüeh\";\"other\"\n\"1279891\";\"T’eng-ch’ung-hsien\";\"other\"\n\"1279891\";\"teng yue\";\"other\"\n\"1279891\";\"腾越\";\"other\"\n\"1279945\";\"Suzhou\";\"main\"\n\"1279945\";\"Chiu-ch'uan\";\"other\"\n\"1279945\";\"Chiu-ch'uan-hsien\";\"other\"\n\"1279945\";\"Chiu-ch'uan-shih\";\"other\"\n\"1279945\";\"Chiu-ch’üan\";\"other\"\n\"1279945\";\"Chiu-ch’üan-hsien\";\"other\"\n\"1279945\";\"Chiu-ch’üan-shih\";\"other\"\n\"1279945\";\"Jiuquan\";\"other\"\n\"1279945\";\"Kiuchoan\";\"other\"\n\"1279945\";\"Kiuchuan\";\"other\"\n\"1279945\";\"Kiuchuan-hsien\";\"other\"\n\"1279945\";\"Kiuchüan\";\"other\"\n\"1279945\";\"Kiuchüan-hsien\";\"other\"\n\"1279945\";\"Su-chou\";\"other\"\n\"1279945\";\"Suchow\";\"other\"\n\"1279945\";\"Suchzhou\";\"other\"\n\"1279945\";\"Tsin-tsuan-tsiun\";\"other\"\n\"1279945\";\"Сучжоу\";\"other\"\n\"1280004\";\"Shimen\";\"main\"\n\"1280004\";\"Shih-men-chen\";\"other\"\n\"1280004\";\"Shih-men-ching\";\"other\"\n\"1280004\";\"Shimenzhen\";\"other\"\n\"1280004\";\"Yun-lung\";\"other\"\n\"1280004\";\"Yun-lung-hsien\";\"other\"\n\"1280004\";\"Yunlong\";\"other\"\n\"1280004\";\"Yün-lung\";\"other\"\n\"1280004\";\"Yün-lung-hsien\";\"other\"\n\"1280004\";\"shi men\";\"other\"\n\"1280004\";\"石门\";\"other\"\n\"1280008\";\"Dianyang\";\"main\"\n\"1280008\";\"Shidian\";\"other\"\n\"1280008\";\"Shih-tien\";\"other\"\n\"1280008\";\"Shih-tien-chen\";\"other\"\n\"1280008\";\"Shih-tien-chieh\";\"other\"\n\"1280008\";\"Shikuan\";\"other\"\n\"1280008\";\"Shiküan\";\"other\"\n\"1280008\";\"dian yang\";\"other\"\n\"1280008\";\"甸阳\";\"other\"\n\"1280013\";\"Shengping\";\"main\"\n\"1280013\";\"A-tun\";\"other\"\n\"1280013\";\"A-tun-tzu\";\"other\"\n\"1280013\";\"Atun-hsien\";\"other\"\n\"1280013\";\"Atun-tse\";\"other\"\n\"1280013\";\"Atung\";\"other\"\n\"1280013\";\"Atuntze\";\"other\"\n\"1280013\";\"Dong\";\"other\"\n\"1280013\";\"Te-ch'in\";\"other\"\n\"1280013\";\"Te-ch'in-hsien-tsang-tsu-tzu-chih-ch'u\";\"other\"\n\"1280013\";\"Te-ch'in-she-chih-chu\";\"other\"\n\"1280013\";\"Te-ch’in\";\"other\"\n\"1280013\";\"Te-ch’in-hsien-tsang-tsu-tzu-chih-ch’ü\";\"other\"\n\"1280013\";\"Te-ch’in-she-chih-chü\";\"other\"\n\"1280013\";\"Tehching\";\"other\"\n\"1280013\";\"Tehtsin\";\"other\"\n\"1280013\";\"sheng ping\";\"other\"\n\"1280013\";\"升平\";\"other\"\n\"1280031\";\"Shangpa\";\"main\"\n\"1280031\";\"Fu-kung\";\"other\"\n\"1280031\";\"Fugong\";\"other\"\n\"1280031\";\"Shang-p'a\";\"other\"\n\"1280031\";\"Shang-p'a-chieh\";\"other\"\n\"1280031\";\"Shang-p'a-hsing-cheng-shu\";\"other\"\n\"1280031\";\"Shang-p'a-ts'un\";\"other\"\n\"1280031\";\"Shang-p’a\";\"other\"\n\"1280031\";\"Shang-p’a-chieh\";\"other\"\n\"1280031\";\"Shang-p’a-hsing-cheng-shu\";\"other\"\n\"1280031\";\"Shang-p’a-ts’un\";\"other\"\n\"1280031\";\"Shangba\";\"other\"\n\"1280031\";\"shang pa\";\"other\"\n\"1280031\";\"上帕\";\"other\"\n\"1280037\";\"Shache\";\"main\"\n\"1280037\";\"So-ch'e\";\"other\"\n\"1280037\";\"So-ch'e-chen\";\"other\"\n\"1280037\";\"So-ch'e-hsien\";\"other\"\n\"1280037\";\"So-ch'e-shih\";\"other\"\n\"1280037\";\"So-ch’e\";\"other\"\n\"1280037\";\"So-ch’e-chen\";\"other\"\n\"1280037\";\"So-ch’e-hsien\";\"other\"\n\"1280037\";\"So-ch’e-shih\";\"other\"\n\"1280037\";\"Yangi-shahr\";\"other\"\n\"1280037\";\"Yarkand\";\"other\"\n\"1280037\";\"Yarkand New City\";\"other\"\n\"1280037\";\"Yarkand Yangi-shahr\";\"other\"\n\"1280037\";\"Yarkant\";\"other\"\n\"1280037\";\"Yarkend\";\"other\"\n\"1280037\";\"Yarkent\";\"other\"\n\"1280037\";\"Yeken\";\"other\"\n\"1280037\";\"Yəkən\";\"other\"\n\"1280037\";\"Якән\";\"other\"\n\"1280037\";\"يەكەن\";\"other\"\n\"1280194\";\"Qümong\";\"main\"\n\"1280194\";\"Qumong\";\"ascii\"\n\"1280194\";\"Ju Gompa\";\"other\"\n\"1280194\";\"Jumang\";\"other\"\n\"1280194\";\"Nixia\";\"other\"\n\"1280194\";\"Serxu\";\"other\"\n\"1280194\";\"Shih-ch'u\";\"other\"\n\"1280194\";\"Shih-ch'ü\";\"other\"\n\"1280194\";\"Shihchi\";\"other\"\n\"1280194\";\"Sêrxü\";\"other\"\n\"1280194\";\"Tsa-ch'u-k'a\";\"other\"\n\"1280194\";\"Tsa-ch'ü-k'a\";\"other\"\n\"1280194\";\"ni xia\";\"other\"\n\"1280194\";\"འཇུ་མང\";\"other\"\n\"1280194\";\"尼呷\";\"other\"\n\"1280328\";\"Pingyuan\";\"main\"\n\"1280328\";\"Chao-kou\";\"other\"\n\"1280328\";\"Tung-fang-hung-kung-she\";\"other\"\n\"1280328\";\"Ying-chiang\";\"other\"\n\"1280328\";\"Ying-chiang-hsien\";\"other\"\n\"1280328\";\"Yingjiang\";\"other\"\n\"1280328\";\"ping yuan\";\"other\"\n\"1280328\";\"平原\";\"other\"\n\"1280517\";\"Nagqu\";\"main\"\n\"1280517\";\"Hei-ho\";\"other\"\n\"1280517\";\"Hei-ho-chen\";\"other\"\n\"1280517\";\"Kheykhe\";\"other\"\n\"1280517\";\"Na-ch'u\";\"other\"\n\"1280517\";\"Na-ch'u-k'a\";\"other\"\n\"1280517\";\"Na-ch’ü\";\"other\"\n\"1280517\";\"Na-ch’ü-k’a\";\"other\"\n\"1280517\";\"Na-ko-ch'u-tsung\";\"other\"\n\"1280517\";\"Na-ko-ch’u-tsung\";\"other\"\n\"1280517\";\"Na-ku-chia\";\"other\"\n\"1280517\";\"Nag-chu-dsong\";\"other\"\n\"1280517\";\"Nagchhu Dzong\";\"other\"\n\"1280517\";\"Nagchhuka\";\"other\"\n\"1280517\";\"Nagchhukha\";\"other\"\n\"1280517\";\"Nagchu\";\"other\"\n\"1280517\";\"Nagchu-dzong\";\"other\"\n\"1280517\";\"Nagchuka\";\"other\"\n\"1280517\";\"Nakchukha Dzong\";\"other\"\n\"1280564\";\"Mengsuo\";\"main\"\n\"1280564\";\"Meng-hsaw\";\"other\"\n\"1280564\";\"Mong Hsaw\";\"other\"\n\"1280564\";\"Möng Hsaw\";\"other\"\n\"1280564\";\"meng suo\";\"other\"\n\"1280564\";\"勐梭\";\"other\"\n\"1280568\";\"Mengmeng\";\"main\"\n\"1280568\";\"Meng-meng-hsiang\";\"other\"\n\"1280568\";\"Na-chai\";\"other\"\n\"1280568\";\"Na-sai\";\"other\"\n\"1280568\";\"Shuang-chiang\";\"other\"\n\"1280568\";\"Shuang-chiang-hsien\";\"other\"\n\"1280568\";\"Shuangjiang\";\"other\"\n\"1280568\";\"Ssu-p'ai-shan\";\"other\"\n\"1280568\";\"Ssu-p'ai-shan-hsien-tso\";\"other\"\n\"1280568\";\"Ssu-p’ai-shan\";\"other\"\n\"1280568\";\"Ssu-p’ai-shan-hsien-tso\";\"other\"\n\"1280568\";\"Szepaishan\";\"other\"\n\"1280568\";\"meng meng\";\"other\"\n\"1280568\";\"勐勐\";\"other\"\n\"1280574\";\"Menglang\";\"main\"\n\"1280574\";\"Chen-pien\";\"other\"\n\"1280574\";\"Chen-pien-ting\";\"other\"\n\"1280574\";\"Hsia-kai-hsin\";\"other\"\n\"1280574\";\"Lan-ts'ang\";\"other\"\n\"1280574\";\"Lan-ts'ang-hsien\";\"other\"\n\"1280574\";\"Lan-ts’ang\";\"other\"\n\"1280574\";\"Lan-ts’ang-hsien\";\"other\"\n\"1280574\";\"Lancang\";\"other\"\n\"1280574\";\"Lancang Lahuzu Zizhixian\";\"other\"\n\"1280574\";\"Meng-lang-pa\";\"other\"\n\"1280574\";\"Meng-lang-pa-chen\";\"other\"\n\"1280574\";\"Menglangba\";\"other\"\n\"1280574\";\"meng lang\";\"other\"\n\"1280574\";\"勐朗\";\"other\"\n\"1280579\";\"Mengdong\";\"main\"\n\"1280579\";\"Cangyuan\";\"other\"\n\"1280579\";\"Meng-tung\";\"other\"\n\"1280579\";\"Meng-tung-hsiang\";\"other\"\n\"1280579\";\"Mengyong\";\"other\"\n\"1280579\";\"Ts'ang-yuan\";\"other\"\n\"1280579\";\"Ts'ang-yuan-k'a-wa-tsu-tzu-chih-hsien\";\"other\"\n\"1280579\";\"Ts'ang-yuan-she-chih-chu\";\"other\"\n\"1280579\";\"Ts'ang-yuan-wa-tsu-tzu-chih-hsien\";\"other\"\n\"1280579\";\"Ts’ang-yüan\";\"other\"\n\"1280579\";\"Ts’ang-yüan-k’a-wa-tsu-tzu-chih-hsien\";\"other\"\n\"1280579\";\"Ts’ang-yüan-she-chih-chü\";\"other\"\n\"1280579\";\"Ts’ang-yüan-wa-tsu-tzu-chih-hsien\";\"other\"\n\"1280579\";\"meng dong\";\"other\"\n\"1280579\";\"勐董\";\"other\"\n\"1280659\";\"Luzhang\";\"main\"\n\"1280659\";\"Lu-chang\";\"other\"\n\"1280659\";\"Lu-chang-chieh\";\"other\"\n\"1280659\";\"Lu-chang-hsiang\";\"other\"\n\"1280659\";\"Lu-chang-shang-chai\";\"other\"\n\"1280659\";\"Lu-shui-she-chih-chu\";\"other\"\n\"1280659\";\"Lu-shui-she-chih-chü\";\"other\"\n\"1280659\";\"Lushui\";\"other\"\n\"1280659\";\"Luzhangjie\";\"other\"\n\"1280659\";\"lu zhang\";\"other\"\n\"1280659\";\"鲁掌\";\"other\"\n\"1280694\";\"Longshan\";\"main\"\n\"1280694\";\"Longling\";\"other\"\n\"1280694\";\"Lung-ling\";\"other\"\n\"1280694\";\"Lung-ling-hsien\";\"other\"\n\"1280694\";\"long shan\";\"other\"\n\"1280694\";\"龙山\";\"other\"\n\"1280737\";\"Lhasa\";\"main\"\n\"1280737\";\"La-sa-shih\";\"other\"\n\"1280737\";\"Lasa\";\"other\"\n\"1280737\";\"Lhasa Shi\";\"other\"\n\"1280737\";\"Lhassa\";\"other\"\n\"1280737\";\"Lkhasa\";\"other\"\n\"1280737\";\"la sa\";\"other\"\n\"1280737\";\"la sa shi\";\"other\"\n\"1280737\";\"lasa\";\"other\"\n\"1280737\";\"lassa\";\"other\"\n\"1280737\";\"lhsh\";\"other\"\n\"1280737\";\"rasa\";\"other\"\n\"1280737\";\"Лхаса\";\"other\"\n\"1280737\";\"להסה\";\"other\"\n\"1280737\";\"لاسا شەھىرى\";\"other\"\n\"1280737\";\"লাসা\";\"other\"\n\"1280737\";\"ལྷ་ས་\";\"other\"\n\"1280737\";\"ラサ\";\"other\"\n\"1280737\";\"拉萨\";\"other\"\n\"1280737\";\"拉萨市\";\"other\"\n\"1280737\";\"라사\";\"other\"\n\"1280737\";\"라싸\";\"other\"\n\"1280757\";\"Laojunmiao\";\"main\"\n\"1280757\";\"Lao-chun-miao\";\"other\"\n\"1280757\";\"Lao-chün-miao\";\"other\"\n\"1280757\";\"Yu-men-shih\";\"other\"\n\"1280757\";\"Yu-men-yu-k'uang-ch'u\";\"other\"\n\"1280757\";\"Yumen\";\"other\"\n\"1280757\";\"Yü-men-shih\";\"other\"\n\"1280757\";\"Yü-men-yu-k’uang-ch’ü\";\"other\"\n\"1280759\";\"Laojie\";\"main\"\n\"1280759\";\"Ch'u-t'ung-chieh\";\"other\"\n\"1280759\";\"Ch'u-tung\";\"other\"\n\"1280759\";\"Chiu-ch'eng\";\"other\"\n\"1280759\";\"Chiu-ch’eng\";\"other\"\n\"1280759\";\"Ch’ü-tung\";\"other\"\n\"1280759\";\"Ch’ü-t’ung-chieh\";\"other\"\n\"1280759\";\"Kuting\";\"other\"\n\"1280759\";\"Yongping\";\"other\"\n\"1280759\";\"Yung-p'ing\";\"other\"\n\"1280759\";\"Yung-p'ing-hsien\";\"other\"\n\"1280759\";\"Yung-p’ing\";\"other\"\n\"1280759\";\"Yung-p’ing-hsien\";\"other\"\n\"1280759\";\"lao jie\";\"other\"\n\"1280759\";\"老街\";\"other\"\n\"1280849\";\"Kashi\";\"main\"\n\"1280849\";\"K'a-shih\";\"other\"\n\"1280849\";\"K'o-shih\";\"other\"\n\"1280849\";\"Kachgar\";\"other\"\n\"1280849\";\"Kaschgar\";\"other\"\n\"1280849\";\"Kasgar\";\"other\"\n\"1280849\";\"Kashgar\";\"other\"\n\"1280849\";\"Kashgar Kona Shahr\";\"other\"\n\"1280849\";\"Kashgar Kone Shahr\";\"other\"\n\"1280849\";\"Kashi Shi\";\"other\"\n\"1280849\";\"Kaszgar\";\"other\"\n\"1280849\";\"Kaxgar\";\"other\"\n\"1280849\";\"Kaşgar\";\"other\"\n\"1280849\";\"Kona Shahr\";\"other\"\n\"1280849\";\"K̩əxk̩ər\";\"other\"\n\"1280849\";\"K’a-shih\";\"other\"\n\"1280849\";\"K’o-shih\";\"other\"\n\"1280849\";\"Qeshqer\";\"other\"\n\"1280849\";\"Shu-fu\";\"other\"\n\"1280849\";\"Su-fu\";\"other\"\n\"1280849\";\"kashugaru\";\"other\"\n\"1280849\";\"kasyugaleu\";\"other\"\n\"1280849\";\"ke shen\";\"other\"\n\"1280849\";\"ke shen shi\";\"other\"\n\"1280849\";\"Кашгар\";\"other\"\n\"1280849\";\"Қәшқәр\";\"other\"\n\"1280849\";\"قەشقەر\";\"other\"\n\"1280849\";\"カシュガル\";\"other\"\n\"1280849\";\"喀什\";\"other\"\n\"1280849\";\"喀什市\";\"other\"\n\"1280849\";\"카슈가르\";\"other\"\n\"1280945\";\"Jinhua\";\"main\"\n\"1280945\";\"Chien-ch'uan\";\"other\"\n\"1280945\";\"Chien-ch'uan-hsien\";\"other\"\n\"1280945\";\"Chien-ch’uan\";\"other\"\n\"1280945\";\"Chien-ch’uan-hsien\";\"other\"\n\"1280945\";\"Jianchuan\";\"other\"\n\"1280945\";\"Kienchwan-hsien\";\"other\"\n\"1280945\";\"Kienchwanchow\";\"other\"\n\"1280945\";\"jin hua\";\"other\"\n\"1280945\";\"金华\";\"other\"\n\"1280948\";\"Jinding\";\"main\"\n\"1280948\";\"jin ding\";\"other\"\n\"1280948\";\"金顶\";\"other\"\n\"1280957\";\"Jiayuguan\";\"main\"\n\"1280957\";\"Ch'ia-hsu-kuan\";\"other\"\n\"1280957\";\"Chia-yu-kuan\";\"other\"\n\"1280957\";\"Chia-yü-kuan\";\"other\"\n\"1280957\";\"Chiayukwan\";\"other\"\n\"1280957\";\"Ch’ia-hsu-kuan\";\"other\"\n\"1280957\";\"Czjajujguan'\";\"other\"\n\"1280957\";\"Kia-yu-kuan\";\"other\"\n\"1280957\";\"Kiayukwan\";\"other\"\n\"1280957\";\"Tseyasyuyguan'\";\"other\"\n\"1280957\";\"Tseyasyuyguan’\";\"other\"\n\"1280957\";\"Yumen\";\"other\"\n\"1280957\";\"jia yu guan\";\"other\"\n\"1280957\";\"jia yu guan shi\";\"other\"\n\"1280957\";\"Цзяюйгуань\";\"other\"\n\"1280957\";\"嘉峪关\";\"other\"\n\"1280957\";\"嘉峪关市\";\"other\"\n\"1281019\";\"Hotan\";\"main\"\n\"1281019\";\"Ho-t'ien\";\"other\"\n\"1281019\";\"Ho-t'ien-chen\";\"other\"\n\"1281019\";\"Ho-tien-hsien\";\"other\"\n\"1281019\";\"Ho-t’ien\";\"other\"\n\"1281019\";\"Ho-t’ien-chen\";\"other\"\n\"1281019\";\"Hotən\";\"other\"\n\"1281019\";\"Khotan\";\"other\"\n\"1281019\";\"Xoten\";\"other\"\n\"1281019\";\"he tian shi\";\"other\"\n\"1281019\";\"hotan shi\";\"other\"\n\"1281019\";\"Хотан\";\"other\"\n\"1281019\";\"Хотән\";\"other\"\n\"1281019\";\"خوتەن\";\"other\"\n\"1281019\";\"خوتەن شەھىرى\";\"other\"\n\"1281019\";\"ホータン市\";\"other\"\n\"1281019\";\"和田市\";\"other\"\n\"1281054\";\"Heimahe\";\"main\"\n\"1281054\";\"Hei-ma-ho\";\"other\"\n\"1281054\";\"黑马河\";\"other\"\n\"1281119\";\"Gyangzê\";\"main\"\n\"1281119\";\"Gyangze\";\"ascii\"\n\"1281119\";\"Chiang-tzu\";\"other\"\n\"1281119\";\"Chiang-tzu-tsung\";\"other\"\n\"1281119\";\"G'jangdze\";\"other\"\n\"1281119\";\"Gyam-dze\";\"other\"\n\"1281119\";\"Gyang-tse Jong\";\"other\"\n\"1281119\";\"Gyangtse\";\"other\"\n\"1281119\";\"Gyantse\";\"other\"\n\"1281119\";\"Kiangtze\";\"other\"\n\"1281119\";\"Гьянгдзе\";\"other\"\n\"1281189\";\"Gengqing\";\"main\"\n\"1281189\";\"Dege Gonchen\";\"other\"\n\"1281189\";\"Deqe\";\"other\"\n\"1281189\";\"Derge\";\"other\"\n\"1281189\";\"Dêqê\";\"other\"\n\"1281189\";\"Goinqen\";\"other\"\n\"1281189\";\"Goinqên\";\"other\"\n\"1281189\";\"Te-hua\";\"other\"\n\"1281189\";\"Te-ke\";\"other\"\n\"1281189\";\"Te-ko\";\"other\"\n\"1281189\";\"Te-ko-hsien\";\"other\"\n\"1281189\";\"Tehko\";\"other\"\n\"1281189\";\"Teko Kengching\";\"other\"\n\"1281189\";\"Tenko\";\"other\"\n\"1281189\";\"geng qing\";\"other\"\n\"1281189\";\"更庆\";\"other\"\n\"1281203\";\"Gengma\";\"main\"\n\"1281203\";\"Keng-ma\";\"other\"\n\"1281203\";\"Keng-ma-hsuan-fu-ssu\";\"other\"\n\"1281203\";\"Keng-ma-she-chih-chu\";\"other\"\n\"1281203\";\"Keng-ma-she-chih-chü\";\"other\"\n\"1281203\";\"Keng-ma-t'ai-tsu-k'a-wa-tsu-tzu-chih-hsien\";\"other\"\n\"1281203\";\"Keng-ma-t'ai-tsu-wa-tsu-tzu-chih-hsien\";\"other\"\n\"1281203\";\"Keng-ma-t’ai-tsu-k’a-wa-tsu-tzu-chih-hsien\";\"other\"\n\"1281203\";\"Keng-ma-t’ai-tsu-wa-tsu-tzu-chih-hsien\";\"other\"\n\"1281203\";\"geng ma\";\"other\"\n\"1281203\";\"耿马\";\"other\"\n\"1281269\";\"Nansan\";\"main\"\n\"1281269\";\"Chen-k'ang\";\"other\"\n\"1281269\";\"Chen-k’ang\";\"other\"\n\"1281269\";\"Feng-wei-pa\";\"other\"\n\"1281269\";\"Fengwei\";\"other\"\n\"1281269\";\"Fengweiba\";\"other\"\n\"1281269\";\"Zhenkang\";\"other\"\n\"1281269\";\"nan san\";\"other\"\n\"1281269\";\"南伞\";\"other\"\n\"1281270\";\"Fengshan\";\"main\"\n\"1281270\";\"Feng-ch'ing\";\"other\"\n\"1281270\";\"Feng-ch’ing\";\"other\"\n\"1281270\";\"Feng-shan-chen\";\"other\"\n\"1281270\";\"Fengqing\";\"other\"\n\"1281270\";\"Shun-ning\";\"other\"\n\"1281270\";\"Shun-ning-ch'eng\";\"other\"\n\"1281270\";\"Shun-ning-ch’eng\";\"other\"\n\"1281270\";\"Shun-ning-hsien\";\"other\"\n\"1281270\";\"Shunningfu\";\"other\"\n\"1281270\";\"feng shan\";\"other\"\n\"1281270\";\"凤山\";\"other\"\n\"1281386\";\"Dedang\";\"main\"\n\"1281386\";\"Chen-k'ang\";\"other\"\n\"1281386\";\"Chen-k’ang\";\"other\"\n\"1281386\";\"Te-tang\";\"other\"\n\"1281386\";\"Te-tang-chen\";\"other\"\n\"1281386\";\"Yongde\";\"other\"\n\"1281386\";\"Yung-te\";\"other\"\n\"1281386\";\"de dang\";\"other\"\n\"1281386\";\"德党\";\"other\"\n\"1281497\";\"Cikai\";\"main\"\n\"1281497\";\"Gongshan\";\"other\"\n\"1281497\";\"Kung-shan\";\"other\"\n\"1281497\";\"Kung-shan-tu-lung-tsu-nu-tsu-tzu-chih-hsien\";\"other\"\n\"1281497\";\"Tz'u-k'ai\";\"other\"\n\"1281497\";\"Tz’u-k’ai\";\"other\"\n\"1281497\";\"ci kai\";\"other\"\n\"1281497\";\"茨开\";\"other\"\n\"1281542\";\"Youdian\";\"main\"\n\"1281542\";\"Changning\";\"other\"\n\"1281542\";\"Yu-tien\";\"other\"\n\"1281542\";\"Yu-tien-hsien-tso\";\"other\"\n\"1281542\";\"you dian\";\"other\"\n\"1281542\";\"右甸\";\"other\"\n\"1281593\";\"Burang\";\"main\"\n\"1281593\";\"Durang\";\"other\"\n\"1281593\";\"K'o-la-k'o-t'e\";\"other\"\n\"1281593\";\"K’o-la-k’o-t’e\";\"other\"\n\"1281593\";\"P'u-lan\";\"other\"\n\"1281593\";\"P'u-lan-tsung\";\"other\"\n\"1281593\";\"Purang\";\"other\"\n\"1281593\";\"P’u-lan\";\"other\"\n\"1281593\";\"P’u-lan-tsung\";\"other\"\n\"1281593\";\"T'a-k'o-la-k'o-t'e\";\"other\"\n\"1281593\";\"Taklakhar\";\"other\"\n\"1281593\";\"Taklakot\";\"other\"\n\"1281593\";\"T’a-k’o-la-k’o-t’e\";\"other\"\n\"1281593\";\"Буранг\";\"other\"\n\"1281674\";\"Baohe\";\"main\"\n\"1281674\";\"Wei-hsi\";\"other\"\n\"1281674\";\"Wei-hsi-hsien\";\"other\"\n\"1281674\";\"Weisi-hsien\";\"other\"\n\"1281674\";\"Weixi\";\"other\"\n\"1281674\";\"bao he\";\"other\"\n\"1281674\";\"保和\";\"other\"\n\"1346629\";\"Layka\";\"main\"\n\"1346629\";\"Layika\";\"other\"\n\"1346629\";\"Layka Xiang\";\"other\"\n\"1346629\";\"Layk̩a\";\"other\"\n\"1346629\";\"Layqa\";\"other\"\n\"1346629\";\"la yi ke\";\"other\"\n\"1346629\";\"la yi ke xiang\";\"other\"\n\"1346629\";\"layqa\";\"other\"\n\"1346629\";\"Лайқа\";\"other\"\n\"1346629\";\"لايقا\";\"other\"\n\"1346629\";\"拉依喀\";\"other\"\n\"1346629\";\"拉依喀乡\";\"other\"\n\"1360995\";\"Wanjheri Sharīf\";\"main\"\n\"1360995\";\"Wanjheri Sharif\";\"ascii\"\n\"1360995\";\"shuang xi qiao\";\"other\"\n\"1360995\";\"双溪桥\";\"other\"\n\"1529102\";\"Ürümqi\";\"main\"\n\"1529102\";\"Urumqi\";\"ascii\"\n\"1529102\";\"Dikhua\";\"other\"\n\"1529102\";\"Ouroumtchi\";\"other\"\n\"1529102\";\"Ti-hua\";\"other\"\n\"1529102\";\"Ti-hua-ch'eng\";\"other\"\n\"1529102\";\"Ti-hua-ch’eng\";\"other\"\n\"1529102\";\"Ti-hua-hsien\";\"other\"\n\"1529102\";\"Ti-hua-shih\";\"other\"\n\"1529102\";\"Tihwa\";\"other\"\n\"1529102\";\"Tihwafu\";\"other\"\n\"1529102\";\"Tikhua\";\"other\"\n\"1529102\";\"Tikhva\";\"other\"\n\"1529102\";\"UEruemqi\";\"other\"\n\"1529102\";\"Urumchi\";\"other\"\n\"1529102\";\"Urumci\";\"other\"\n\"1529102\";\"Urumptsi\";\"other\"\n\"1529102\";\"Urumqi Shi\";\"other\"\n\"1529102\";\"Urumtschi\";\"other\"\n\"1529102\";\"Urumtsi\";\"other\"\n\"1529102\";\"Urumutsi\";\"other\"\n\"1529102\";\"Urumçi\";\"other\"\n\"1529102\";\"Urumči\";\"other\"\n\"1529102\";\"Urunchi\";\"other\"\n\"1529102\";\"Wu-lu-mu-ch'i\";\"other\"\n\"1529102\";\"Wu-lu-mu-ch'i-shih\";\"other\"\n\"1529102\";\"Wu-lu-mu-ch’i\";\"other\"\n\"1529102\";\"Wu-lu-mu-ch’i-shih\";\"other\"\n\"1529102\";\"Wulumuqi\";\"other\"\n\"1529102\";\"Wurumch'ih\";\"other\"\n\"1529102\";\"Wurumch’ih\";\"other\"\n\"1529102\";\"awrwmchy\";\"other\"\n\"1529102\";\"awrwmtshy\";\"other\"\n\"1529102\";\"ulumuchi\";\"other\"\n\"1529102\";\"urumuchi\";\"other\"\n\"1529102\";\"wu lu mu qi\";\"other\"\n\"1529102\";\"wu lu mu qi shi\";\"other\"\n\"1529102\";\"Ürümchi\";\"other\"\n\"1529102\";\"Ürümqi Shi\";\"other\"\n\"1529102\";\"Урумчи\";\"other\"\n\"1529102\";\"Үрүмчи\";\"other\"\n\"1529102\";\"أورومتشي\";\"other\"\n\"1529102\";\"ئۈرۈمچى\";\"other\"\n\"1529102\";\"ئۈرۈمچى شەھىرى\";\"other\"\n\"1529102\";\"ئۈرۈمچی\";\"other\"\n\"1529102\";\"اورومچی\";\"other\"\n\"1529102\";\"ウルムチ\";\"other\"\n\"1529102\";\"乌鲁木齐\";\"other\"\n\"1529102\";\"乌鲁木齐市\";\"other\"\n\"1529102\";\"우루무치\";\"other\"\n\"1529114\";\"Turpan\";\"main\"\n\"1529114\";\"Lukchun\";\"other\"\n\"1529114\";\"T'u-lu-fan\";\"other\"\n\"1529114\";\"T'u-lu-fan-chen\";\"other\"\n\"1529114\";\"T'u-lu-fan-hsien\";\"other\"\n\"1529114\";\"T'urfang\";\"other\"\n\"1529114\";\"Tourfan\";\"other\"\n\"1529114\";\"Tufan\";\"other\"\n\"1529114\";\"Turfan\";\"other\"\n\"1529114\";\"Turfán\";\"other\"\n\"1529114\";\"T’u-lu-fan\";\"other\"\n\"1529114\";\"T’u-lu-fan-chen\";\"other\"\n\"1529114\";\"T’u-lu-fan-hsien\";\"other\"\n\"1529114\";\"T’urfang\";\"other\"\n\"1529114\";\"to~urufan\";\"other\"\n\"1529114\";\"tu lu fan shi\";\"other\"\n\"1529114\";\"tuleupan\";\"other\"\n\"1529114\";\"Турпан\";\"other\"\n\"1529114\";\"Турфан\";\"other\"\n\"1529114\";\"تۇرپان\";\"other\"\n\"1529114\";\"トゥルファン\";\"other\"\n\"1529114\";\"吐鲁番市\";\"other\"\n\"1529114\";\"투르판\";\"other\"\n\"1529195\";\"Shihezi\";\"main\"\n\"1529195\";\"Shih-ho-tzu\";\"other\"\n\"1529195\";\"Shih-yen-tzu\";\"other\"\n\"1529195\";\"Shikhedze\";\"other\"\n\"1529195\";\"Shikhedzy\";\"other\"\n\"1529195\";\"Shikhehczy\";\"other\"\n\"1529195\";\"Shixenze\";\"other\"\n\"1529195\";\"Xihənzə\";\"other\"\n\"1529195\";\"seuheojeu\";\"other\"\n\"1529195\";\"shi he zi shi\";\"other\"\n\"1529195\";\"Шихэцзы\";\"other\"\n\"1529195\";\"Шихәнзә\";\"other\"\n\"1529195\";\"شىخەنزە\";\"other\"\n\"1529195\";\"شىخەنزە شەھرى\";\"other\"\n\"1529195\";\"شىخەنزە شەھىرى\";\"other\"\n\"1529195\";\"石河子市\";\"other\"\n\"1529195\";\"스허즈\";\"other\"\n\"1529363\";\"Kuqa\";\"main\"\n\"1529363\";\"K'u-ch'e\";\"other\"\n\"1529363\";\"K'u-ch'e-chen\";\"other\"\n\"1529363\";\"K'u-ch'e-hsien\";\"other\"\n\"1529363\";\"Kocha\";\"other\"\n\"1529363\";\"Koutcha\";\"other\"\n\"1529363\";\"Kucha\";\"other\"\n\"1529363\";\"Kuchar\";\"other\"\n\"1529363\";\"Kuchel\";\"other\"\n\"1529363\";\"Kuchi\";\"other\"\n\"1529363\";\"Kuchu\";\"other\"\n\"1529363\";\"Kuga\";\"other\"\n\"1529363\";\"K’u-ch’e\";\"other\"\n\"1529363\";\"K’u-ch’e-chen\";\"other\"\n\"1529363\";\"K’u-ch’e-hsien\";\"other\"\n\"1529363\";\"ku che xian\";\"other\"\n\"1529363\";\"Куча\";\"other\"\n\"1529363\";\"كۇچا\";\"other\"\n\"1529363\";\"库车县\";\"other\"\n\"1529376\";\"Korla\";\"main\"\n\"1529376\";\"K'o-erh-lo\";\"other\"\n\"1529376\";\"K'u-erh-le\";\"other\"\n\"1529376\";\"K'u-erh-lo\";\"other\"\n\"1529376\";\"K'u-erh-lo-chen\";\"other\"\n\"1529376\";\"K'u-erh-lo-hsien\";\"other\"\n\"1529376\";\"K'u-erh-lo-she-chih-chu\";\"other\"\n\"1529376\";\"Koria\";\"other\"\n\"1529376\";\"Korla Shi\";\"other\"\n\"1529376\";\"Kourla\";\"other\"\n\"1529376\";\"Kuerhlei\";\"other\"\n\"1529376\";\"Kuerhli\";\"other\"\n\"1529376\";\"Kuriya\";\"other\"\n\"1529376\";\"Kurla\";\"other\"\n\"1529376\";\"Kurlya\";\"other\"\n\"1529376\";\"K’o-erh-lo\";\"other\"\n\"1529376\";\"K’u-erh-le\";\"other\"\n\"1529376\";\"K’u-erh-lo\";\"other\"\n\"1529376\";\"K’u-erh-lo-chen\";\"other\"\n\"1529376\";\"K’u-erh-lo-hsien\";\"other\"\n\"1529376\";\"K’u-erh-lo-she-chih-chü\";\"other\"\n\"1529376\";\"ku er lei\";\"other\"\n\"1529376\";\"ku er lei shi\";\"other\"\n\"1529376\";\"Корла\";\"other\"\n\"1529376\";\"كورلا\";\"other\"\n\"1529376\";\"كورلا شەھىرى\";\"other\"\n\"1529376\";\"库尔勒\";\"other\"\n\"1529376\";\"库尔勒市\";\"other\"\n\"1529484\";\"Hami\";\"main\"\n\"1529484\";\"Chamil\";\"other\"\n\"1529484\";\"Ha-mi-ch'eng-chen\";\"other\"\n\"1529484\";\"Ha-mi-chen\";\"other\"\n\"1529484\";\"Ha-mi-ch’eng-chen\";\"other\"\n\"1529484\";\"Ha-mi-hsien\";\"other\"\n\"1529484\";\"Ha-mi-shih\";\"other\"\n\"1529484\";\"Kamil\";\"other\"\n\"1529484\";\"Kha-mi\";\"other\"\n\"1529484\";\"Khami\";\"other\"\n\"1529484\";\"Khamil\";\"other\"\n\"1529484\";\"Komul\";\"other\"\n\"1529484\";\"Koumoul\";\"other\"\n\"1529484\";\"Kumul\";\"other\"\n\"1529484\";\"K̩umul\";\"other\"\n\"1529484\";\"Qomul\";\"other\"\n\"1529484\";\"Qumul\";\"other\"\n\"1529484\";\"ha mi de qu\";\"other\"\n\"1529484\";\"ha mi shi\";\"other\"\n\"1529484\";\"hami\";\"other\"\n\"1529484\";\"kumuru shi\";\"other\"\n\"1529484\";\"Хами\";\"other\"\n\"1529484\";\"Қумул\";\"other\"\n\"1529484\";\"قۇمۇل\";\"other\"\n\"1529484\";\"قۇمۇل شەھىرى\";\"other\"\n\"1529484\";\"クムル市\";\"other\"\n\"1529484\";\"哈密地区\";\"other\"\n\"1529484\";\"哈密市\";\"other\"\n\"1529484\";\"하미\";\"other\"\n\"1529569\";\"Changji\";\"main\"\n\"1529569\";\"Ch'ang-chi\";\"other\"\n\"1529569\";\"Ch'ang-chi-chen\";\"other\"\n\"1529569\";\"Ch'ang-chi-hsien\";\"other\"\n\"1529569\";\"Chanczi\";\"other\"\n\"1529569\";\"Changki\";\"other\"\n\"1529569\";\"Chanki\";\"other\"\n\"1529569\";\"Chantszi\";\"other\"\n\"1529569\";\"Ch’ang-chi\";\"other\"\n\"1529569\";\"Ch’ang-chi-chen\";\"other\"\n\"1529569\";\"Ch’ang-chi-hsien\";\"other\"\n\"1529569\";\"Ning-pien-i\";\"other\"\n\"1529569\";\"Sandzhi\";\"other\"\n\"1529569\";\"Sanji\";\"other\"\n\"1529569\";\"Санҗи\";\"other\"\n\"1529569\";\"Чанцзи\";\"other\"\n\"1529569\";\"سانجى\";\"other\"\n\"1529626\";\"Baijiantan\";\"main\"\n\"1529626\";\"Pai-chien-t'an\";\"other\"\n\"1529626\";\"Pai-chien-t’an\";\"other\"\n\"1529641\";\"Aral\";\"main\"\n\"1529641\";\"A-la-erh\";\"other\"\n\"1529641\";\"Aral'skoe\";\"other\"\n\"1529641\";\"Арал\";\"other\"\n\"1529641\";\"Аральское\";\"other\"\n\"1529641\";\"ئارال\";\"other\"\n\"1529651\";\"Altay\";\"main\"\n\"1529651\";\"A-erh-t'ai\";\"other\"\n\"1529651\";\"A-erh-t’ai\";\"other\"\n\"1529651\";\"A-le-t'ai\";\"other\"\n\"1529651\";\"A-le-t’ai\";\"other\"\n\"1529651\";\"A-lo-t'ai\";\"other\"\n\"1529651\";\"A-lo-t'ai-chen\";\"other\"\n\"1529651\";\"A-lo-t'ai-hsien\";\"other\"\n\"1529651\";\"A-lo-t’ai\";\"other\"\n\"1529651\";\"A-lo-t’ai-chen\";\"other\"\n\"1529651\";\"A-lo-t’ai-hsien\";\"other\"\n\"1529651\";\"A-shan\";\"other\"\n\"1529651\";\"Altai\";\"other\"\n\"1529651\";\"Altai-Sharasume\";\"other\"\n\"1529651\";\"Altajskaja\";\"other\"\n\"1529651\";\"Ch'eng-hua\";\"other\"\n\"1529651\";\"Ch'eng-hua-hsien\";\"other\"\n\"1529651\";\"Ch'eng-hua-ssu\";\"other\"\n\"1529651\";\"Cheng-hua-sze\";\"other\"\n\"1529651\";\"Chenghwa\";\"other\"\n\"1529651\";\"Chenghwasze\";\"other\"\n\"1529651\";\"Chenkhua\";\"other\"\n\"1529651\";\"Ch’eng-hua\";\"other\"\n\"1529651\";\"Ch’eng-hua-hsien\";\"other\"\n\"1529651\";\"Ch’eng-hua-ssu\";\"other\"\n\"1529651\";\"Shara-Sumu\";\"other\"\n\"1529651\";\"Sharasume\";\"other\"\n\"1529651\";\"T'u-lo-t'a\";\"other\"\n\"1529651\";\"Tulta\";\"other\"\n\"1529651\";\"T’u-lo-t’a\";\"other\"\n\"1529651\";\"a lei tai shi\";\"other\"\n\"1529651\";\"aleotai\";\"other\"\n\"1529651\";\"Алтай\";\"other\"\n\"1529651\";\"Алтайская\";\"other\"\n\"1529651\";\"ئالتاي\";\"other\"\n\"1529651\";\"阿勒泰市\";\"other\"\n\"1529651\";\"아러타이\";\"other\"\n\"1529660\";\"Aksu\";\"main\"\n\"1529660\";\"A-k'o-su\";\"other\"\n\"1529660\";\"A-k'o-su-chen\";\"other\"\n\"1529660\";\"A-k'o-su-hsien\";\"other\"\n\"1529660\";\"A-k'o-su-hsin-ch'eng\";\"other\"\n\"1529660\";\"A-k’o-su\";\"other\"\n\"1529660\";\"A-k’o-su-chen\";\"other\"\n\"1529660\";\"A-k’o-su-hsien\";\"other\"\n\"1529660\";\"A-k’o-su-hsin-ch’eng\";\"other\"\n\"1529660\";\"Ak Su Yangi Shahr\";\"other\"\n\"1529660\";\"Akoso\";\"other\"\n\"1529660\";\"Aksou\";\"other\"\n\"1529660\";\"Aksu New City\";\"other\"\n\"1529660\";\"Ak̩su\";\"other\"\n\"1529660\";\"Aqsu\";\"other\"\n\"1529660\";\"Aqsu New City\";\"other\"\n\"1529660\";\"Aqsu Yangi Shahr\";\"other\"\n\"1529660\";\"New Aksu\";\"other\"\n\"1529660\";\"Yangi-shahr\";\"other\"\n\"1529660\";\"a ke su shi\";\"other\"\n\"1529660\";\"akusu\";\"other\"\n\"1529660\";\"Аксу\";\"other\"\n\"1529660\";\"Ақсу\";\"other\"\n\"1529660\";\"ئاقسۇ\";\"other\"\n\"1529660\";\"ئاقسۇ شەھىرى\";\"other\"\n\"1529660\";\"アクス\";\"other\"\n\"1529660\";\"阿克苏市\";\"other\"\n\"1547549\";\"Shechenzhuang\";\"main\"\n\"1547549\";\"Hechen\";\"other\"\n\"1547549\";\"Hechen Zhen\";\"other\"\n\"1547549\";\"Shechen\";\"other\"\n\"1547549\";\"合陈\";\"other\"\n\"1547549\";\"合陈镇\";\"other\"\n\"1547549\";\"舍陈\";\"other\"\n\"1547549\";\"舍陈庄\";\"other\"\n\"1547557\";\"Xiaohai\";\"main\"\n\"1547557\";\"Xiaohai Zhen\";\"other\"\n\"1547557\";\"小海\";\"other\"\n\"1547557\";\"小海镇\";\"other\"\n\"1547574\";\"Guanyinsi\";\"main\"\n\"1547574\";\"Xinduo\";\"other\"\n\"1547574\";\"Xinduo Zhen\";\"other\"\n\"1547574\";\"新垛\";\"other\"\n\"1547574\";\"新垛镇\";\"other\"\n\"1547574\";\"观音寺\";\"other\"\n\"1547724\";\"Gaojiazhuang\";\"main\"\n\"1547724\";\"Hainan\";\"other\"\n\"1547724\";\"Hainan Zhen\";\"other\"\n\"1547724\";\"海南\";\"other\"\n\"1547724\";\"海南镇\";\"other\"\n\"1547724\";\"高家庄\";\"other\"\n\"1548357\";\"Baizhang\";\"main\"\n\"1548357\";\"Baizhang Zhen\";\"other\"\n\"1548357\";\"Pai-ch'uan-chen\";\"other\"\n\"1548357\";\"Pai-chang\";\"other\"\n\"1548357\";\"Pai-chang-chen\";\"other\"\n\"1548357\";\"Pai-ch’üan-chen\";\"other\"\n\"1548357\";\"百丈\";\"other\"\n\"1548357\";\"百丈镇\";\"other\"\n\"1548396\";\"Changdai\";\"main\"\n\"1548396\";\"Maqiao\";\"other\"\n\"1548396\";\"Maqiao Zhen\";\"other\"\n\"1548396\";\"长垈\";\"other\"\n\"1548396\";\"马桥\";\"other\"\n\"1548396\";\"马桥镇\";\"other\"\n\"1548397\";\"Shengci\";\"main\"\n\"1548397\";\"Shengci Zhen\";\"other\"\n\"1548397\";\"生祠\";\"other\"\n\"1548397\";\"生祠镇\";\"other\"\n\"1548399\";\"Hongguang\";\"main\"\n\"1548399\";\"Hongguang Zhen\";\"other\"\n\"1548399\";\"红光\";\"other\"\n\"1548399\";\"红光镇\";\"other\"\n\"1548404\";\"Sunjiadaqiao\";\"main\"\n\"1548404\";\"Tuanjie\";\"other\"\n\"1548404\";\"Tuanjie Zhen\";\"other\"\n\"1548404\";\"团结\";\"other\"\n\"1548404\";\"团结镇\";\"other\"\n\"1548404\";\"孙家大桥\";\"other\"\n\"1548422\";\"Jiang’an\";\"main\"\n\"1548422\";\"Jiang'an\";\"ascii\"\n\"1548422\";\"Jiang'an Zhen\";\"other\"\n\"1548422\";\"Jiang’an Zhen\";\"other\"\n\"1548422\";\"江安\";\"other\"\n\"1548422\";\"江安镇\";\"other\"\n\"1548423\";\"Shanhu\";\"main\"\n\"1548423\";\"Shanhu Zhen\";\"other\"\n\"1548423\";\"珊瑚\";\"other\"\n\"1548423\";\"珊瑚镇\";\"other\"\n\"1548424\";\"Nansha\";\"main\"\n\"1548424\";\"Fengjiadai\";\"other\"\n\"1548424\";\"Nansha Zhen\";\"other\"\n\"1548424\";\"南沙\";\"other\"\n\"1548424\";\"南沙镇\";\"other\"\n\"1548424\";\"封家垈\";\"other\"\n\"1548433\";\"Changqing\";\"main\"\n\"1548433\";\"Changqing Zhen\";\"other\"\n\"1548433\";\"常青\";\"other\"\n\"1548433\";\"常青镇\";\"other\"\n\"1548435\";\"Gaoming\";\"main\"\n\"1548435\";\"Gaoming Zhen\";\"other\"\n\"1548435\";\"高明\";\"other\"\n\"1548435\";\"高明镇\";\"other\"\n\"1548444\";\"Taoyuan\";\"main\"\n\"1548444\";\"Taoyuan Zhen\";\"other\"\n\"1548444\";\"桃园\";\"other\"\n\"1548444\";\"桃园镇\";\"other\"\n\"1548449\";\"Liuchen\";\"main\"\n\"1548449\";\"Baijiazhuang\";\"other\"\n\"1548449\";\"Liuchen Zhen\";\"other\"\n\"1548449\";\"刘陈\";\"other\"\n\"1548449\";\"刘陈镇\";\"other\"\n\"1548449\";\"白家庄\";\"other\"\n\"1548459\";\"Hengjiaduo\";\"main\"\n\"1548459\";\"Hengduo\";\"other\"\n\"1548459\";\"Hengduo Zhen\";\"other\"\n\"1548459\";\"横垛\";\"other\"\n\"1548459\";\"横垛镇\";\"other\"\n\"1548459\";\"横家垛\";\"other\"\n\"1548471\";\"Yuanzhu\";\"main\"\n\"1548471\";\"Dayuanduo\";\"other\"\n\"1548471\";\"Yuanzhu Zhen\";\"other\"\n\"1548471\";\"元竹\";\"other\"\n\"1548471\";\"元竹镇\";\"other\"\n\"1548471\";\"大元垛\";\"other\"\n\"1548480\";\"Guba\";\"main\"\n\"1548480\";\"Feng-li-pa\";\"other\"\n\"1548480\";\"Feng-li-pa-chen\";\"other\"\n\"1548480\";\"Guba Zhen\";\"other\"\n\"1548480\";\"Gubazhen\";\"other\"\n\"1548480\";\"Ku-pa\";\"other\"\n\"1548480\";\"Ku-pa-chen\";\"other\"\n\"1548480\";\"古坝\";\"other\"\n\"1548480\";\"古坝镇\";\"other\"\n\"1548494\";\"Yuanzhuang\";\"main\"\n\"1548494\";\"Yuanzhuang Zhen\";\"other\"\n\"1548494\";\"袁庄\";\"other\"\n\"1548494\";\"袁庄镇\";\"other\"\n\"1548495\";\"Xue’an\";\"main\"\n\"1548495\";\"Xue'an\";\"ascii\"\n\"1548495\";\"Xue'an Zhen\";\"other\"\n\"1548495\";\"Xue’an Zhen\";\"other\"\n\"1548495\";\"雪岸\";\"other\"\n\"1548495\";\"雪岸镇\";\"other\"\n\"1548509\";\"Liangxu\";\"main\"\n\"1548509\";\"Liangxu Zhen\";\"other\"\n\"1548509\";\"梁徐\";\"other\"\n\"1548509\";\"梁徐镇\";\"other\"\n\"1548514\";\"Xichang\";\"main\"\n\"1548514\";\"Xichang Zhen\";\"other\"\n\"1548514\";\"西场\";\"other\"\n\"1548514\";\"西场镇\";\"other\"\n\"1548531\";\"Dingjiashe\";\"main\"\n\"1548531\";\"Shengao\";\"other\"\n\"1548531\";\"Shengao Zhen\";\"other\"\n\"1548531\";\"丁家舍\";\"other\"\n\"1548531\";\"沈高\";\"other\"\n\"1548531\";\"沈高镇\";\"other\"\n\"1548535\";\"Dagong\";\"main\"\n\"1548535\";\"Dagong Zhen\";\"other\"\n\"1548535\";\"大公\";\"other\"\n\"1548535\";\"大公镇\";\"other\"\n\"1548548\";\"Yujiaduo\";\"main\"\n\"1548548\";\"Yuduo\";\"other\"\n\"1548548\";\"Yuduo Zhen\";\"other\"\n\"1548548\";\"俞垛\";\"other\"\n\"1548548\";\"俞垛镇\";\"other\"\n\"1548548\";\"俞家垛\";\"other\"\n\"1548554\";\"Baidian\";\"main\"\n\"1548554\";\"Baidian Zhen\";\"other\"\n\"1548554\";\"白甸\";\"other\"\n\"1548554\";\"白甸镇\";\"other\"\n\"1548555\";\"Xiaodianzhi\";\"main\"\n\"1548555\";\"Xingtai\";\"other\"\n\"1548555\";\"兴泰\";\"other\"\n\"1548555\";\"小甸址\";\"other\"\n\"1548558\";\"Fudong\";\"main\"\n\"1548558\";\"Fudong Zhen\";\"other\"\n\"1548558\";\"富东\";\"other\"\n\"1548558\";\"富东镇\";\"other\"\n\"1548565\";\"Tainan\";\"main\"\n\"1548565\";\"Heluolun\";\"other\"\n\"1548565\";\"Tainan Zhen\";\"other\"\n\"1548565\";\"台南\";\"other\"\n\"1548565\";\"台南镇\";\"other\"\n\"1548565\";\"鹤落埨\";\"other\"\n\"1548566\";\"Zhaowanzhuang\";\"main\"\n\"1548566\";\"Zhangguo\";\"other\"\n\"1548566\";\"Zhangguo Zhen\";\"other\"\n\"1548566\";\"张郭\";\"other\"\n\"1548566\";\"张郭镇\";\"other\"\n\"1548566\";\"赵万庄\";\"other\"\n\"1548593\";\"Taozhuang\";\"main\"\n\"1548593\";\"Taozhuang Zhen\";\"other\"\n\"1548593\";\"陶庄\";\"other\"\n\"1548593\";\"陶庄镇\";\"other\"\n\"1548609\";\"Daiyao\";\"main\"\n\"1548609\";\"Daijiayao\";\"other\"\n\"1548609\";\"Daiyao Zhen\";\"other\"\n\"1548609\";\"Hsing-tung\";\"other\"\n\"1548609\";\"Tai-chia-yao\";\"other\"\n\"1548609\";\"Tai-chia-yao-chen\";\"other\"\n\"1548609\";\"Tai-yao\";\"other\"\n\"1548609\";\"Tai-yao-chen\";\"other\"\n\"1548609\";\"Yao-tai\";\"other\"\n\"1548609\";\"戴窑\";\"other\"\n\"1548609\";\"戴窑镇\";\"other\"\n\"1548681\";\"Minggou\";\"main\"\n\"1548681\";\"Minggoucun\";\"other\"\n\"1548681\";\"Yong'anzhou\";\"other\"\n\"1548681\";\"Yong'anzhou Zhen\";\"other\"\n\"1548681\";\"Yong’anzhou\";\"other\"\n\"1548681\";\"Yong’anzhou Zhen\";\"other\"\n\"1548681\";\"明沟\";\"other\"\n\"1548681\";\"明沟村\";\"other\"\n\"1548681\";\"永安洲\";\"other\"\n\"1548681\";\"永安洲镇\";\"other\"\n\"1548728\";\"Yexu\";\"main\"\n\"1548728\";\"Yexu Zhen\";\"other\"\n\"1548728\";\"野徐\";\"other\"\n\"1548728\";\"野徐镇\";\"other\"\n\"1548757\";\"Jiuliqiao\";\"main\"\n\"1548757\";\"Taidong\";\"other\"\n\"1548757\";\"Taidong Zhen\";\"other\"\n\"1548757\";\"九里桥\";\"other\"\n\"1548757\";\"泰东\";\"other\"\n\"1548757\";\"泰东镇\";\"other\"\n\"1548878\";\"Dongbaozhuang\";\"main\"\n\"1548878\";\"Dongbao\";\"other\"\n\"1548878\";\"东鲍\";\"other\"\n\"1548878\";\"东鲍庄\";\"other\"\n\"1548916\";\"Zhougang\";\"main\"\n\"1548916\";\"Zhougang Zhen\";\"other\"\n\"1548916\";\"zhou gang\";\"other\"\n\"1548916\";\"zhou gang zhen\";\"other\"\n\"1548916\";\"周岗\";\"other\"\n\"1548916\";\"周岗镇\";\"other\"\n\"1550084\";\"Youyupu\";\"main\"\n\"1550084\";\"Yu-yu-p'u\";\"other\"\n\"1550084\";\"Yu-yü-p’u\";\"other\"\n\"1550143\";\"Zhujiachang\";\"main\"\n\"1550143\";\"Chu-chia-ch'ang\";\"other\"\n\"1550143\";\"Chu-chia-ch’ang\";\"other\"\n\"1550222\";\"Xujiaba\";\"main\"\n\"1550222\";\"Hsu-chia-pa\";\"other\"\n\"1550222\";\"Hsü-chia-pa\";\"other\"\n\"1552093\";\"Sanchahe\";\"main\"\n\"1552093\";\"San-ch'a\";\"other\"\n\"1552093\";\"San-ch’a\";\"other\"\n\"1552568\";\"Doumenkou\";\"main\"\n\"1552568\";\"Wuxing\";\"other\"\n\"1552568\";\"dou men kou\";\"other\"\n\"1552568\";\"wu xing\";\"other\"\n\"1552568\";\"五星\";\"other\"\n\"1552568\";\"陡门口\";\"other\"\n\"1552574\";\"Guquan\";\"main\"\n\"1552574\";\"Guquanzhen\";\"other\"\n\"1552574\";\"gu quan\";\"other\"\n\"1552574\";\"gu quan zhen\";\"other\"\n\"1552574\";\"古泉\";\"other\"\n\"1552574\";\"古泉镇\";\"other\"\n\"1552590\";\"Rencunwan\";\"main\"\n\"1552590\";\"Yangxian\";\"other\"\n\"1552590\";\"ren cun wan\";\"other\"\n\"1552590\";\"yang xian\";\"other\"\n\"1552590\";\"仁村湾\";\"other\"\n\"1552590\";\"养贤\";\"other\"\n\"1552618\";\"Huaqiao\";\"main\"\n\"1552618\";\"Huaqiao Zhen\";\"other\"\n\"1552618\";\"hua qiao\";\"other\"\n\"1552618\";\"hua qiao zhen\";\"other\"\n\"1552618\";\"花桥\";\"other\"\n\"1552618\";\"花桥镇\";\"other\"\n\"1552658\";\"Eshan\";\"main\"\n\"1552658\";\"e shan\";\"other\"\n\"1552658\";\"峨山\";\"other\"\n\"1552707\";\"Jingshan\";\"main\"\n\"1552707\";\"Jingshan Jiedao\";\"other\"\n\"1552707\";\"Jingshanzhen\";\"other\"\n\"1552707\";\"jing shan\";\"other\"\n\"1552707\";\"jing shan jie dao\";\"other\"\n\"1552707\";\"荆山\";\"other\"\n\"1552707\";\"荆山街道\";\"other\"\n\"1552729\";\"Xiaojiangba\";\"main\"\n\"1552729\";\"Baiyin Zhen\";\"other\"\n\"1552729\";\"Baiyinzhen\";\"other\"\n\"1552729\";\"bai yin zhen\";\"other\"\n\"1552729\";\"xiao jiang ba\";\"other\"\n\"1552729\";\"小江坝\";\"other\"\n\"1552729\";\"白茚镇\";\"other\"\n\"1552834\";\"Shiqiao\";\"main\"\n\"1552834\";\"Shiqiao Zhen\";\"other\"\n\"1552834\";\"shi qiao\";\"other\"\n\"1552834\";\"shi qiao zhen\";\"other\"\n\"1552834\";\"石桥\";\"other\"\n\"1552834\";\"石桥镇\";\"other\"\n\"1552877\";\"Liu‘an\";\"main\"\n\"1552877\";\"Liu`an\";\"ascii\"\n\"1552877\";\"Jiashan\";\"other\"\n\"1552877\";\"jia shan\";\"other\"\n\"1552877\";\"liu an\";\"other\"\n\"1552877\";\"佳山\";\"other\"\n\"1552877\";\"六安\";\"other\"\n\"1552881\";\"Niandou\";\"main\"\n\"1552881\";\"nian dou\";\"other\"\n\"1552881\";\"年陡\";\"other\"\n\"1552882\";\"Guandou\";\"main\"\n\"1552882\";\"Guandou Jiedao\";\"other\"\n\"1552882\";\"guan dou\";\"other\"\n\"1552882\";\"guan dou jie dao\";\"other\"\n\"1552882\";\"官陡\";\"other\"\n\"1552882\";\"管陡街道\";\"other\"\n\"1552907\";\"Longshanqiao\";\"main\"\n\"1552907\";\"Longshanqiaozhen\";\"other\"\n\"1552907\";\"Taibai\";\"other\"\n\"1552907\";\"Taibai Zhen\";\"other\"\n\"1552907\";\"long shan qiao\";\"other\"\n\"1552907\";\"tai bai zhen\";\"other\"\n\"1552907\";\"太白镇\";\"other\"\n\"1552907\";\"龙山桥\";\"other\"\n\"1552931\";\"Dongjiang Matoukou\";\"main\"\n\"1552931\";\"Jiangxin\";\"other\"\n\"1552931\";\"dong jiang ma tou kou\";\"other\"\n\"1552931\";\"jiang xin\";\"other\"\n\"1552931\";\"东江马头口\";\"other\"\n\"1552931\";\"江心\";\"other\"\n\"1552971\";\"Yushan\";\"main\"\n\"1553033\";\"Shiyang\";\"main\"\n\"1553033\";\"Shiyang Zhen\";\"other\"\n\"1553033\";\"shi yang\";\"other\"\n\"1553033\";\"shi yang zhen\";\"other\"\n\"1553033\";\"石杨\";\"other\"\n\"1553033\";\"石杨镇\";\"other\"\n\"1553046\";\"Erlangkou\";\"main\"\n\"1553046\";\"Erlangkouzhen\";\"other\"\n\"1553046\";\"er lang kou\";\"other\"\n\"1553046\";\"er lang kou zhen\";\"other\"\n\"1553046\";\"二郎口\";\"other\"\n\"1553046\";\"二郎口镇\";\"other\"\n\"1553247\";\"Shichuan\";\"main\"\n\"1553247\";\"Ling-nan-ts'un\";\"other\"\n\"1553247\";\"Ling-nan-ts’un\";\"other\"\n\"1553247\";\"Lingnan\";\"other\"\n\"1553247\";\"ling nan\";\"other\"\n\"1553247\";\"shi chuan\";\"other\"\n\"1553247\";\"岭南\";\"other\"\n\"1553247\";\"石川\";\"other\"\n\"1553356\";\"Liyang\";\"main\"\n\"1553356\";\"Liyangzhen\";\"other\"\n\"1553356\";\"li yang\";\"other\"\n\"1553356\";\"li yang zhen\";\"other\"\n\"1553356\";\"黎阳\";\"other\"\n\"1553356\";\"黎阳镇\";\"other\"\n\"1553369\";\"Xintan\";\"main\"\n\"1553369\";\"Hsin-t'an\";\"other\"\n\"1553369\";\"Hsin-t’an\";\"other\"\n\"1553369\";\"Xintan Zhen\";\"other\"\n\"1553369\";\"xin tan\";\"other\"\n\"1553369\";\"xin tan zhen\";\"other\"\n\"1553369\";\"新潭\";\"other\"\n\"1553369\";\"新潭镇\";\"other\"\n\"1553371\";\"Yiqi\";\"main\"\n\"1553371\";\"Yiqi Zhen\";\"other\"\n\"1553371\";\"yi qi\";\"other\"\n\"1553371\";\"yi qi zhen\";\"other\"\n\"1553371\";\"奕棋\";\"other\"\n\"1553371\";\"奕棋镇\";\"other\"\n\"1553396\";\"Zhengcun\";\"main\"\n\"1553396\";\"Cheng-ts'un\";\"other\"\n\"1553396\";\"Cheng-ts’un\";\"other\"\n\"1553396\";\"Zhengcun Zhen\";\"other\"\n\"1553396\";\"zheng cun\";\"other\"\n\"1553396\";\"zheng cun zhen\";\"other\"\n\"1553396\";\"郑村\";\"other\"\n\"1553396\";\"郑村镇\";\"other\"\n\"1553399\";\"Chengkan\";\"main\"\n\"1553399\";\"Chengkan Zhen\";\"other\"\n\"1553399\";\"cheng kan\";\"other\"\n\"1553399\";\"cheng kan zhen\";\"other\"\n\"1553399\";\"呈坎\";\"other\"\n\"1553399\";\"呈坎镇\";\"other\"\n\"1783552\";\"Yuele\";\"main\"\n\"1783552\";\"Yueh-le\";\"other\"\n\"1783552\";\"Yuele Zhen\";\"other\"\n\"1783552\";\"Yüeh-le\";\"other\"\n\"1783552\";\"悦乐\";\"other\"\n\"1783552\";\"悦乐镇\";\"other\"\n\"1783553\";\"Yingge\";\"main\"\n\"1783553\";\"Ying-ko-tsui\";\"other\"\n\"1783553\";\"Yingge Zhen\";\"other\"\n\"1783553\";\"Yinggezui\";\"other\"\n\"1783553\";\"鹦鸽\";\"other\"\n\"1783553\";\"鹦鸽镇\";\"other\"\n\"1783556\";\"Xianshui\";\"main\"\n\"1783556\";\"Daou\";\"other\"\n\"1783556\";\"Dawu\";\"other\"\n\"1783556\";\"Tao-fou\";\"other\"\n\"1783556\";\"Tao-fu\";\"other\"\n\"1783556\";\"Tao-fu-hsien\";\"other\"\n\"1783556\";\"Tao-tu\";\"other\"\n\"1783556\";\"Tao-wu\";\"other\"\n\"1783556\";\"xian shui\";\"other\"\n\"1783556\";\"鲜水\";\"other\"\n\"1783557\";\"Lintan Chengguanzhen\";\"main\"\n\"1783557\";\"Chiu-ch'eng\";\"other\"\n\"1783557\";\"Chiu-ch'eng-chen\";\"other\"\n\"1783557\";\"Chiu-ch’eng\";\"other\"\n\"1783557\";\"Chiu-ch’eng-chen\";\"other\"\n\"1783557\";\"Chiu-t'ao-ch'eng\";\"other\"\n\"1783557\";\"Chiu-t'ao-chou\";\"other\"\n\"1783557\";\"Chiu-t’ao-chou\";\"other\"\n\"1783557\";\"Chiu-t’ao-ch’eng\";\"other\"\n\"1783557\";\"Jiucheng\";\"other\"\n\"1783557\";\"Lin-t'an Chiu-ch'eng\";\"other\"\n\"1783557\";\"Lin-t’an Chiu-ch’eng\";\"other\"\n\"1783557\";\"Lintan\";\"other\"\n\"1783557\";\"Lintan Xian\";\"other\"\n\"1783557\";\"Taochow\";\"other\"\n\"1783557\";\"Taochow Old City\";\"other\"\n\"1783557\";\"临潭\";\"other\"\n\"1783557\";\"临潭县\";\"other\"\n\"1783557\";\"临潭城关镇\";\"other\"\n\"1783581\";\"Changjing\";\"main\"\n\"1783581\";\"Ch'ang-ching\";\"other\"\n\"1783581\";\"Ch'ang-ching-chen\";\"other\"\n\"1783581\";\"Ch’ang-ching\";\"other\"\n\"1783581\";\"Ch’ang-ching-chen\";\"other\"\n\"1783581\";\"长泾\";\"other\"\n\"1783596\";\"Longtan\";\"main\"\n\"1783596\";\"Longtan Zhen\";\"other\"\n\"1783596\";\"Tso-t'an\";\"other\"\n\"1783596\";\"Tso-t’an\";\"other\"\n\"1783596\";\"Zuotan\";\"other\"\n\"1783596\";\"long tan\";\"other\"\n\"1783596\";\"龙潭\";\"other\"\n\"1783600\";\"Liaoyang\";\"main\"\n\"1783600\";\"Liao\";\"other\"\n\"1783600\";\"Liao-hsien\";\"other\"\n\"1783600\";\"Lyaosyan'\";\"other\"\n\"1783600\";\"Lyaosyan’\";\"other\"\n\"1783600\";\"Tso-ch'uan\";\"other\"\n\"1783600\";\"Tso-ch'uan-hsien\";\"other\"\n\"1783600\";\"Tso-ch’üan\";\"other\"\n\"1783600\";\"Tso-ch’üan-hsien\";\"other\"\n\"1783600\";\"Zuoquan\";\"other\"\n\"1783600\";\"liao yang\";\"other\"\n\"1783600\";\"辽阳\";\"other\"\n\"1783621\";\"Zunyi\";\"main\"\n\"1783621\";\"Tsun-i\";\"other\"\n\"1783621\";\"Tsun-i-ch'eng\";\"other\"\n\"1783621\";\"Tsun-i-ch’eng\";\"other\"\n\"1783621\";\"Tsun-i-hsien\";\"other\"\n\"1783621\";\"Tsun-i-shih\";\"other\"\n\"1783621\";\"Tsunyi\";\"other\"\n\"1783621\";\"Tsunyi-hsien\";\"other\"\n\"1783621\";\"zun yi shi\";\"other\"\n\"1783621\";\"遵义市\";\"other\"\n\"1783625\";\"Zuitou\";\"main\"\n\"1783625\";\"T'ai-pai\";\"other\"\n\"1783625\";\"T'ai-pai-ch'u\";\"other\"\n\"1783625\";\"Ta-pai\";\"other\"\n\"1783625\";\"Taibai Xian\";\"other\"\n\"1783625\";\"Tsui-t'ou\";\"other\"\n\"1783625\";\"Tsui-t'ou-chen\";\"other\"\n\"1783625\";\"Tsui-t’ou\";\"other\"\n\"1783625\";\"Tsui-t’ou-chen\";\"other\"\n\"1783625\";\"Tszuytouchzhen'\";\"other\"\n\"1783625\";\"Tszuytouchzhen’\";\"other\"\n\"1783625\";\"T’ai-pai\";\"other\"\n\"1783625\";\"T’ai-pai-ch’ü\";\"other\"\n\"1783625\";\"Zuitou Zhen\";\"other\"\n\"1783625\";\"Zuitoujie\";\"other\"\n\"1783625\";\"嘴头\";\"other\"\n\"1783625\";\"太白县\";\"other\"\n\"1783626\";\"Zuitai\";\"main\"\n\"1783626\";\"Chiu-k'ang-hsien\";\"other\"\n\"1783626\";\"Chiu-k’ang-hsien\";\"other\"\n\"1783626\";\"K'ang\";\"other\"\n\"1783626\";\"K'ang-hsien\";\"other\"\n\"1783626\";\"K'ang-hsien-ku-chih\";\"other\"\n\"1783626\";\"Kangxian\";\"other\"\n\"1783626\";\"K’ang\";\"other\"\n\"1783626\";\"K’ang-hsien\";\"other\"\n\"1783626\";\"K’ang-hsien-ku-chih\";\"other\"\n\"1783626\";\"Pai-ma-kuan\";\"other\"\n\"1783626\";\"Tsui-t'ai-tzu\";\"other\"\n\"1783626\";\"Tsui-t’ai-tzu\";\"other\"\n\"1783626\";\"Zuitai Zhen\";\"other\"\n\"1783626\";\"Zuitaizi\";\"other\"\n\"1783626\";\"咀台\";\"other\"\n\"1783626\";\"咀台镇\";\"other\"\n\"1783626\";\"康县\";\"other\"\n\"1783628\";\"Zuhu\";\"main\"\n\"1783628\";\"Tsu-hu\";\"other\"\n\"1783628\";\"Tsu-hu-pao\";\"other\"\n\"1783628\";\"Zuhu Xiang\";\"other\"\n\"1783628\";\"阻虎\";\"other\"\n\"1783628\";\"阻虎乡\";\"other\"\n\"1783631\";\"Zu’an\";\"main\"\n\"1783631\";\"Zu'an\";\"ascii\"\n\"1783631\";\"Tsu-an\";\"other\"\n\"1783631\";\"Tsu-an-chen\";\"other\"\n\"1783631\";\"Zu'an Zhen\";\"other\"\n\"1783631\";\"Zu’an Zhen\";\"other\"\n\"1783631\";\"zu an\";\"other\"\n\"1783631\";\"zu an zhen\";\"other\"\n\"1783631\";\"祖庵\";\"other\"\n\"1783631\";\"祖庵镇\";\"other\"\n\"1783633\";\"Zoucheng\";\"main\"\n\"1783633\";\"Chou-hsien\";\"other\"\n\"1783633\";\"Tsou\";\"other\"\n\"1783633\";\"Tsou-hsien\";\"other\"\n\"1783633\";\"Tsowhsien\";\"other\"\n\"1783633\";\"Zouxian\";\"other\"\n\"1783649\";\"Zongying\";\"main\"\n\"1783649\";\"Tsung-chia-ying\";\"other\"\n\"1783649\";\"Tsung-ying\";\"other\"\n\"1783649\";\"Tsung-ying-chen\";\"other\"\n\"1783649\";\"Zongying Zhen\";\"other\"\n\"1783649\";\"宗营\";\"other\"\n\"1783649\";\"宗营镇\";\"other\"\n\"1783651\";\"Zongyang\";\"main\"\n\"1783651\";\"Ts'ung-yang\";\"other\"\n\"1783651\";\"Ts'ung-yang-chen\";\"other\"\n\"1783651\";\"Ts’ung-yang\";\"other\"\n\"1783651\";\"Ts’ung-yang-chen\";\"other\"\n\"1783651\";\"cong yang\";\"other\"\n\"1783651\";\"枞阳\";\"other\"\n\"1783683\";\"Yanjiang\";\"main\"\n\"1783683\";\"Czyjan\";\"other\"\n\"1783683\";\"Tszoyan\";\"other\"\n\"1783683\";\"Tszöyan\";\"other\"\n\"1783683\";\"Tzeyang\";\"other\"\n\"1783683\";\"Tzeyang-hsien\";\"other\"\n\"1783683\";\"Tzu-yang\";\"other\"\n\"1783683\";\"Tzu-yang-hsien\";\"other\"\n\"1783683\";\"Ziyang\";\"other\"\n\"1783683\";\"Цзыян\";\"other\"\n\"1783683\";\"雁江\";\"other\"\n\"1783694\";\"Ziwu\";\"main\"\n\"1783694\";\"Tzu-wu\";\"other\"\n\"1783694\";\"Tzu-wu-chen\";\"other\"\n\"1783694\";\"Ziwu Jieban\";\"other\"\n\"1783694\";\"Ziwuzhen\";\"other\"\n\"1783694\";\"zi wu\";\"other\"\n\"1783694\";\"zi wu jie ban\";\"other\"\n\"1783694\";\"子午\";\"other\"\n\"1783694\";\"子午街办\";\"other\"\n\"1783699\";\"Wenchang\";\"main\"\n\"1783699\";\"Tsu-t'ung\";\"other\"\n\"1783699\";\"Tsu-t’ung\";\"other\"\n\"1783699\";\"Tzetung-hsien\";\"other\"\n\"1783699\";\"Tzu-t'ung\";\"other\"\n\"1783699\";\"Tzu-t'ung-hsien\";\"other\"\n\"1783699\";\"Tzu-t’ung\";\"other\"\n\"1783699\";\"Tzu-t’ung-hsien\";\"other\"\n\"1783699\";\"Zitong\";\"other\"\n\"1783699\";\"wen chang\";\"other\"\n\"1783699\";\"文昌\";\"other\"\n\"1783708\";\"Zirun\";\"main\"\n\"1783708\";\"Tzu-jun\";\"other\"\n\"1783708\";\"Tzu-jun-ts'un\";\"other\"\n\"1783708\";\"Tzu-jun-ts’un\";\"other\"\n\"1783708\";\"Zirun Xiang\";\"other\"\n\"1783708\";\"滋润\";\"other\"\n\"1783708\";\"滋润乡\";\"other\"\n\"1783731\";\"Zicheng\";\"main\"\n\"1783731\";\"Tzekam\";\"other\"\n\"1783731\";\"Tzekam-hsien\";\"other\"\n\"1783731\";\"Tzu-ch'eng-chen\";\"other\"\n\"1783731\";\"Tzu-chin\";\"other\"\n\"1783731\";\"Tzu-ch’eng-chen\";\"other\"\n\"1783731\";\"Wingon\";\"other\"\n\"1783731\";\"Yung-an\";\"other\"\n\"1783731\";\"Yunganhsien\";\"other\"\n\"1783731\";\"Zijin\";\"other\"\n\"1783731\";\"zi cheng\";\"other\"\n\"1783731\";\"紫城\";\"other\"\n\"1783745\";\"Zigong\";\"main\"\n\"1783745\";\"Tzekung\";\"other\"\n\"1783745\";\"Tzeliuching\";\"other\"\n\"1783745\";\"Tzeliutsing\";\"other\"\n\"1783745\";\"Tzu-kung\";\"other\"\n\"1783745\";\"Tzu-kung-shih\";\"other\"\n\"1783745\";\"Tzu-liu-ching\";\"other\"\n\"1783745\";\"Tzuliutsing\";\"other\"\n\"1783745\";\"zi gong shi\";\"other\"\n\"1783745\";\"自贡\";\"other\"\n\"1783745\";\"自贡市\";\"other\"\n\"1783750\";\"Zibu\";\"main\"\n\"1783750\";\"Zibu Zhen\";\"other\"\n\"1783750\";\"梓埠\";\"other\"\n\"1783750\";\"梓埠镇\";\"other\"\n\"1783752\";\"Zhuzuo\";\"main\"\n\"1783752\";\"Zhuzuo Xiang\";\"other\"\n\"1783752\";\"竹笮\";\"other\"\n\"1783752\";\"竹笮乡\";\"other\"\n\"1783762\";\"Zhuzhoujiang Miaozuxiang\";\"main\"\n\"1783762\";\"Chu-chou-chiang\";\"other\"\n\"1783762\";\"Zhuzhoujiang\";\"other\"\n\"1783763\";\"Zhuzhou\";\"main\"\n\"1783763\";\"Chu-chou\";\"other\"\n\"1783763\";\"Chu-chou-shih\";\"other\"\n\"1783763\";\"Chuchow\";\"other\"\n\"1783763\";\"Chzhuchzhou\";\"other\"\n\"1783763\";\"Чжучжоу\";\"other\"\n\"1783774\";\"Zhuyuan\";\"main\"\n\"1783774\";\"Chu-yuan\";\"other\"\n\"1783774\";\"Chu-yuan-chen\";\"other\"\n\"1783774\";\"Chu-yuan-chieh\";\"other\"\n\"1783774\";\"Chu-yüan\";\"other\"\n\"1783774\";\"Chu-yüan-chieh\";\"other\"\n\"1783774\";\"Chü-yüan-chen\";\"other\"\n\"1783774\";\"Zhuyuan Zhen\";\"other\"\n\"1783774\";\"zhu yuan\";\"other\"\n\"1783774\";\"zhu yuan zhen\";\"other\"\n\"1783774\";\"竹园\";\"other\"\n\"1783774\";\"竹园镇\";\"other\"\n\"1783779\";\"Zhuyeping\";\"main\"\n\"1783779\";\"Zhuyeping Xiang\";\"other\"\n\"1783779\";\"zhu ye ping\";\"other\"\n\"1783779\";\"zhu ye ping xiang\";\"other\"\n\"1783779\";\"竹叶坪\";\"other\"\n\"1783779\";\"竹叶坪乡\";\"other\"\n\"1783786\";\"Zhuyang\";\"main\"\n\"1783786\";\"Dazhu\";\"other\"\n\"1783786\";\"Ta-chu\";\"other\"\n\"1783786\";\"Ta-chu-ch'eng\";\"other\"\n\"1783786\";\"Ta-chu-ch’eng\";\"other\"\n\"1783786\";\"Ta-chu-hsien\";\"other\"\n\"1783786\";\"zhu yang\";\"other\"\n\"1783786\";\"竹阳\";\"other\"\n\"1783792\";\"Zhuxi Chengguanzhen\";\"main\"\n\"1783792\";\"Chu-ch'i\";\"other\"\n\"1783792\";\"Chu-ch'i-hsien\";\"other\"\n\"1783792\";\"Chu-ch’i\";\"other\"\n\"1783792\";\"Chu-ch’i-hsien\";\"other\"\n\"1783792\";\"Chu-hsi\";\"other\"\n\"1783792\";\"Chuki\";\"other\"\n\"1783792\";\"Chuki-hsien\";\"other\"\n\"1783792\";\"Zhuxi\";\"other\"\n\"1783792\";\"zhu xi cheng guan zhen\";\"other\"\n\"1783792\";\"竹溪城关镇\";\"other\"\n\"1783820\";\"Zhushi\";\"main\"\n\"1783820\";\"Chu-shih\";\"other\"\n\"1783820\";\"Zhushi Xiang\";\"other\"\n\"1783820\";\"诸市\";\"other\"\n\"1783820\";\"诸市乡\";\"other\"\n\"1783825\";\"Zhushan Chengguanzhen\";\"main\"\n\"1783825\";\"Chu-shan\";\"other\"\n\"1783825\";\"Chu-shan-hsien\";\"other\"\n\"1783825\";\"Zhushan\";\"other\"\n\"1783825\";\"zhu shan cheng guan zhen\";\"other\"\n\"1783825\";\"竹山城关镇\";\"other\"\n\"1783836\";\"Jiahe Chengguanzhen\";\"main\"\n\"1783836\";\"Chia-ho\";\"other\"\n\"1783836\";\"Chia-ho-hsien\";\"other\"\n\"1783836\";\"Chu-ch'uan\";\"other\"\n\"1783836\";\"Chu-ch’üan\";\"other\"\n\"1783836\";\"Jiahe\";\"other\"\n\"1783836\";\"Kiaho\";\"other\"\n\"1783836\";\"Kiaho-hsien\";\"other\"\n\"1783836\";\"Zhuquan\";\"other\"\n\"1783836\";\"jia he cheng guan zhen\";\"other\"\n\"1783836\";\"嘉禾城关镇\";\"other\"\n\"1783842\";\"Zhuqi\";\"main\"\n\"1783842\";\"Chu-ch'i\";\"other\"\n\"1783842\";\"Chu-ch’i\";\"other\"\n\"1783842\";\"Chuki\";\"other\"\n\"1783856\";\"Zhuoyang\";\"main\"\n\"1783857\";\"Zhuotian\";\"main\"\n\"1783857\";\"Cho-t'ien\";\"other\"\n\"1783857\";\"Cho-t’ien\";\"other\"\n\"1783857\";\"Zhuotian Zhen\";\"other\"\n\"1783857\";\"濯田\";\"other\"\n\"1783857\";\"濯田镇\";\"other\"\n\"1783873\";\"Zhumadian\";\"main\"\n\"1783873\";\"Chu-ma-tien\";\"other\"\n\"1783873\";\"Chu-ma-tien-chen\";\"other\"\n\"1783873\";\"Chu-ma-tien-shih\";\"other\"\n\"1783873\";\"Chzhumadjan'\";\"other\"\n\"1783873\";\"Hsin-chuang\";\"other\"\n\"1783873\";\"zhu ma dian shi\";\"other\"\n\"1783873\";\"Чжумадянь\";\"other\"\n\"1783873\";\"驻马店市\";\"other\"\n\"1783898\";\"Zhukou\";\"main\"\n\"1783898\";\"Chu-k'ou\";\"other\"\n\"1783898\";\"Chu-k'ou-chen\";\"other\"\n\"1783898\";\"Chu-k'ou-p'u\";\"other\"\n\"1783898\";\"Chu-k’ou\";\"other\"\n\"1783898\";\"Chu-k’ou-chen\";\"other\"\n\"1783898\";\"Chu-k’ou-p’u\";\"other\"\n\"1783898\";\"Zhukou Zhen\";\"other\"\n\"1783898\";\"朱口\";\"other\"\n\"1783898\";\"朱口镇\";\"other\"\n\"1783903\";\"Zhujing\";\"main\"\n\"1783903\";\"Chin-shan\";\"other\"\n\"1783903\";\"Chin-shan-hsien\";\"other\"\n\"1783903\";\"Chu-ching\";\"other\"\n\"1783903\";\"Chu-ching-chen\";\"other\"\n\"1783903\";\"Chuking\";\"other\"\n\"1783903\";\"Jinshan\";\"other\"\n\"1783903\";\"Kinshan\";\"other\"\n\"1783903\";\"Zhujing Zhen\";\"other\"\n\"1783903\";\"朱泾\";\"other\"\n\"1783903\";\"朱泾镇\";\"other\"\n\"1783906\";\"Zhujiazhuang\";\"main\"\n\"1783906\";\"Chu-chia-chuang\";\"other\"\n\"1783906\";\"Zhujiazhuang Zhen\";\"other\"\n\"1783906\";\"祝家庄\";\"other\"\n\"1783906\";\"祝家庄镇\";\"other\"\n\"1783924\";\"Zhuangxing\";\"main\"\n\"1783924\";\"Chu-chia-hang\";\"other\"\n\"1783924\";\"Chu-chia-hang-chen\";\"other\"\n\"1783924\";\"Chu-chia-hsing-chen\";\"other\"\n\"1783924\";\"Zhuhang\";\"other\"\n\"1783924\";\"Zhuhang Xiang\";\"other\"\n\"1783924\";\"Zhujiahang\";\"other\"\n\"1783924\";\"庄行\";\"other\"\n\"1783934\";\"Shangqiu\";\"main\"\n\"1783934\";\"Chu-chi\";\"other\"\n\"1783934\";\"Chu-kia-tsi\";\"other\"\n\"1783934\";\"Chu-sun-chi\";\"other\"\n\"1783934\";\"Shancju\";\"other\"\n\"1783934\";\"Shang-ch'iu\";\"other\"\n\"1783934\";\"Shang-ch'iu-shih\";\"other\"\n\"1783934\";\"Shang-ch’iu\";\"other\"\n\"1783934\";\"Shang-ch’iu-shih\";\"other\"\n\"1783934\";\"Zhuji\";\"other\"\n\"1783934\";\"Шанцю\";\"other\"\n\"1783940\";\"Zhuji\";\"main\"\n\"1783940\";\"Chu-chi\";\"other\"\n\"1783940\";\"Chu-chi-hsien\";\"other\"\n\"1783940\";\"Chu-chi-hsien-ch'eng\";\"other\"\n\"1783940\";\"Chu-chi-hsien-ch’eng\";\"other\"\n\"1783940\";\"Chuki\";\"other\"\n\"1783940\";\"Chukihsien\";\"other\"\n\"1783940\";\"Zhuji Shi\";\"other\"\n\"1783940\";\"诸暨\";\"other\"\n\"1783940\";\"诸暨市\";\"other\"\n\"1783946\";\"Zhuhong\";\"main\"\n\"1783946\";\"Chu-heng-chiang\";\"other\"\n\"1783946\";\"Chu-hung\";\"other\"\n\"1783946\";\"Chu-hung-chiang\";\"other\"\n\"1783946\";\"Zhuhong Zhen\";\"other\"\n\"1783946\";\"竹泓\";\"other\"\n\"1783946\";\"竹泓镇\";\"other\"\n\"1783949\";\"Zhuhang\";\"main\"\n\"1783949\";\"Chu-hang\";\"other\"\n\"1783949\";\"Chu-hang-chen\";\"other\"\n\"1783949\";\"Chu-hsing-chen\";\"other\"\n\"1783949\";\"竹行\";\"other\"\n\"1783956\";\"Zhouqu Chengguanzhen\";\"main\"\n\"1783956\";\"Chou-ch'u\";\"other\"\n\"1783956\";\"Chou-ch'u-hsien\";\"other\"\n\"1783956\";\"Chou-ch’ü\";\"other\"\n\"1783956\";\"Chou-ch’ü-hsien\";\"other\"\n\"1783956\";\"Hsi-ku\";\"other\"\n\"1783956\";\"Hsi-ku-hsien\";\"other\"\n\"1783956\";\"Hsi-ku-hsien-ch'eng\";\"other\"\n\"1783956\";\"Hsi-ku-hsien-ch’eng\";\"other\"\n\"1783956\";\"Lung-tieh\";\"other\"\n\"1783956\";\"Si-ku\";\"other\"\n\"1783956\";\"Zhouqu\";\"other\"\n\"1783956\";\"Zhouqu Xian\";\"other\"\n\"1783956\";\"Zhugqu\";\"other\"\n\"1783956\";\"舟曲\";\"other\"\n\"1783956\";\"舟曲县\";\"other\"\n\"1783956\";\"舟曲城关镇\";\"other\"\n\"1783964\";\"Zhushi\";\"main\"\n\"1783964\";\"Chu-kao-t'ang\";\"other\"\n\"1783964\";\"Chu-kao-t’ang\";\"other\"\n\"1783964\";\"Zhugaotang\";\"other\"\n\"1783978\";\"Zhudian\";\"main\"\n\"1783978\";\"Zhudian Xiang\";\"other\"\n\"1783978\";\"朱店\";\"other\"\n\"1783978\";\"朱店乡\";\"other\"\n\"1783986\";\"Zhucun\";\"main\"\n\"1783986\";\"Chu-ts'un\";\"other\"\n\"1783986\";\"Chu-ts’un\";\"other\"\n\"1783986\";\"Zhucun Jiedao\";\"other\"\n\"1783986\";\"zhu cun\";\"other\"\n\"1783986\";\"朱村\";\"other\"\n\"1783988\";\"Zhucheng\";\"main\"\n\"1783988\";\"Chu-ch'eng\";\"other\"\n\"1783988\";\"Chu-ch’eng\";\"other\"\n\"1783988\";\"Chu-hsien\";\"other\"\n\"1784008\";\"Zhuanqiang\";\"main\"\n\"1784008\";\"Chuan-ch'iang\";\"other\"\n\"1784008\";\"Chuan-ch’iang\";\"other\"\n\"1784008\";\"Zhuanqiang Zhen\";\"other\"\n\"1784008\";\"zhuan qiang\";\"other\"\n\"1784008\";\"zhuan qiang zhen\";\"other\"\n\"1784008\";\"砖墙\";\"other\"\n\"1784008\";\"砖墙镇\";\"other\"\n\"1784033\";\"Zhuangtou\";\"main\"\n\"1784037\";\"Zhuangtou\";\"main\"\n\"1784037\";\"Chuang-t'ou\";\"other\"\n\"1784037\";\"Chuang-tzu-t'ou\";\"other\"\n\"1784037\";\"Chuang-tzu-t’ou\";\"other\"\n\"1784037\";\"Chuang-t’ou\";\"other\"\n\"1784037\";\"Zhuangtou Zhen\";\"other\"\n\"1784037\";\"zhuang tou\";\"other\"\n\"1784037\";\"zhuang tou zhen\";\"other\"\n\"1784037\";\"庄头\";\"other\"\n\"1784037\";\"庄头镇\";\"other\"\n\"1784040\";\"Zhuangta\";\"main\"\n\"1784040\";\"Chuang-t'a\";\"other\"\n\"1784040\";\"Chuang-t’a\";\"other\"\n\"1784040\";\"Zhuangta Xiang\";\"other\"\n\"1784040\";\"zhuang ta\";\"other\"\n\"1784040\";\"zhuang ta xiang\";\"other\"\n\"1784040\";\"庄塌\";\"other\"\n\"1784040\";\"庄塌乡\";\"other\"\n\"1784041\";\"Zhuangshi\";\"main\"\n\"1784041\";\"Chuang-shih\";\"other\"\n\"1784041\";\"Chuang-shih-chen\";\"other\"\n\"1784041\";\"Zhuangshi Jiedao\";\"other\"\n\"1784041\";\"zhuang shi\";\"other\"\n\"1784041\";\"zhuang shi jie dao\";\"other\"\n\"1784041\";\"庄市\";\"other\"\n\"1784041\";\"庄市街道\";\"other\"\n\"1784044\";\"Zhuangqiao\";\"main\"\n\"1784044\";\"Chang-ch'iao\";\"other\"\n\"1784044\";\"Chang-ch'iao-chen\";\"other\"\n\"1784044\";\"Chang-ch’iao\";\"other\"\n\"1784044\";\"Chang-ch’iao-chen\";\"other\"\n\"1784044\";\"Changkiao\";\"other\"\n\"1784044\";\"Chuang-ch'iao\";\"other\"\n\"1784044\";\"Chuang-ch'iao-chen\";\"other\"\n\"1784044\";\"Chuang-ch’iao\";\"other\"\n\"1784044\";\"Chuang-ch’iao-chen\";\"other\"\n\"1784044\";\"Zhuangqiao Zhen\";\"other\"\n\"1784044\";\"zhuang qiao\";\"other\"\n\"1784044\";\"zhuang qiao zhen\";\"other\"\n\"1784044\";\"庄桥\";\"other\"\n\"1784044\";\"庄桥镇\";\"other\"\n\"1784050\";\"Zhuangli\";\"main\"\n\"1784050\";\"Chuang-li\";\"other\"\n\"1784050\";\"Chuang-li-chen\";\"other\"\n\"1784050\";\"Zhuangli Zhen\";\"other\"\n\"1784050\";\"zhuang li\";\"other\"\n\"1784050\";\"庄里\";\"other\"\n\"1784055\";\"Zhuanghe\";\"main\"\n\"1784055\";\"Chuang-ho\";\"other\"\n\"1784055\";\"Chuang-ho-chen\";\"other\"\n\"1784055\";\"Chuang-ho-chieh\";\"other\"\n\"1784055\";\"Chuang-ho-hsien\";\"other\"\n\"1784055\";\"Chwangho\";\"other\"\n\"1784073\";\"Zhouzhuang\";\"main\"\n\"1784073\";\"Chou-chuang\";\"other\"\n\"1784073\";\"Chou-chuang-chen\";\"other\"\n\"1784073\";\"Zhouzhuang Zhen\";\"other\"\n\"1784073\";\"周庄\";\"other\"\n\"1784073\";\"周庄镇\";\"other\"\n\"1784074\";\"Zhouzhuang\";\"main\"\n\"1784074\";\"Chou-chuang\";\"other\"\n\"1784074\";\"Chou-chuang-chen\";\"other\"\n\"1784074\";\"Chzhouchzhuan\";\"other\"\n\"1784074\";\"Чжоучжуан\";\"other\"\n\"1784074\";\"周庄\";\"other\"\n\"1784082\";\"Zhouxin\";\"main\"\n\"1784082\";\"Chou-hsin\";\"other\"\n\"1784082\";\"Chou-hsin-hsu\";\"other\"\n\"1784082\";\"Chou-hsin-hsü\";\"other\"\n\"1784082\";\"Chowsin\";\"other\"\n\"1784082\";\"Zhouxin Jiedao\";\"other\"\n\"1784082\";\"zhou xin\";\"other\"\n\"1784082\";\"洲心\";\"other\"\n\"1784087\";\"Zhouxiang\";\"main\"\n\"1784087\";\"Chou-hsiang\";\"other\"\n\"1784087\";\"Chou-hsiang-chen\";\"other\"\n\"1784087\";\"Zhouxiang Zhen\";\"other\"\n\"1784087\";\"周巷\";\"other\"\n\"1784087\";\"周巷镇\";\"other\"\n\"1784103\";\"Zhoushi\";\"main\"\n\"1784103\";\"Chou-shu\";\"other\"\n\"1784103\";\"Chou-shu-chen\";\"other\"\n\"1784103\";\"Zhoushu\";\"other\"\n\"1784103\";\"周市\";\"other\"\n\"1784123\";\"Zhouling\";\"main\"\n\"1784123\";\"Chou-kung-mu\";\"other\"\n\"1784123\";\"Chou-ling\";\"other\"\n\"1784123\";\"Zhouling Zhen\";\"other\"\n\"1784123\";\"zhou ling\";\"other\"\n\"1784123\";\"zhou ling zhen\";\"other\"\n\"1784123\";\"周陵\";\"other\"\n\"1784123\";\"周陵镇\";\"other\"\n\"1784130\";\"Zhoukou\";\"main\"\n\"1784130\";\"Chou-chia-k'ou\";\"other\"\n\"1784130\";\"Chou-chia-k’ou\";\"other\"\n\"1784130\";\"Chou-k'ou\";\"other\"\n\"1784130\";\"Chou-k'ou-chen\";\"other\"\n\"1784130\";\"Chou-k’ou\";\"other\"\n\"1784130\";\"Chou-k’ou-chen\";\"other\"\n\"1784130\";\"Chow-kia-kow\";\"other\"\n\"1784130\";\"Chzhouko\";\"other\"\n\"1784130\";\"Shang-shui-hsien\";\"other\"\n\"1784130\";\"Zhoukouzhen\";\"other\"\n\"1784130\";\"Чжоуко\";\"other\"\n\"1784131\";\"Zhoukou\";\"main\"\n\"1784131\";\"Chou-k'ou\";\"other\"\n\"1784131\";\"Chou-k'ou-chen\";\"other\"\n\"1784131\";\"Chou-k’ou\";\"other\"\n\"1784131\";\"Chou-k’ou-chen\";\"other\"\n\"1784131\";\"Chowkow\";\"other\"\n\"1784131\";\"Chzhoukou\";\"other\"\n\"1784131\";\"Peng'an\";\"other\"\n\"1784131\";\"Peng’an\";\"other\"\n\"1784131\";\"zhou kou\";\"other\"\n\"1784131\";\"周口\";\"other\"\n\"1784178\";\"Zhoucun\";\"main\"\n\"1784178\";\"Chou-lin-chen\";\"other\"\n\"1784178\";\"Chou-ts'un\";\"other\"\n\"1784178\";\"Chou-ts'un-chen\";\"other\"\n\"1784178\";\"Chou-ts’un\";\"other\"\n\"1784178\";\"Chou-ts’un-chen\";\"other\"\n\"1784178\";\"Chowtsun\";\"other\"\n\"1784182\";\"Zhoucheng\";\"main\"\n\"1784182\";\"Chou-ch'eng\";\"other\"\n\"1784182\";\"Chou-ch'eng-fu\";\"other\"\n\"1784182\";\"Chou-ch’eng\";\"other\"\n\"1784182\";\"Chou-ch’eng-fu\";\"other\"\n\"1784182\";\"zhou cheng\";\"other\"\n\"1784182\";\"周城\";\"other\"\n\"1784185\";\"Yuxi\";\"main\"\n\"1784185\";\"Hongta\";\"other\"\n\"1784185\";\"Hongta Qu\";\"other\"\n\"1784185\";\"Hsin-hsing\";\"other\"\n\"1784185\";\"Jujsi\";\"other\"\n\"1784185\";\"Sinhing\";\"other\"\n\"1784185\";\"Sinhingchow\";\"other\"\n\"1784185\";\"Yu-ch'i\";\"other\"\n\"1784185\";\"Yu-ch'i-hsien\";\"other\"\n\"1784185\";\"Yu-hsi\";\"other\"\n\"1784185\";\"Yuki\";\"other\"\n\"1784185\";\"Yuki-hsien\";\"other\"\n\"1784185\";\"Yü-ch’i\";\"other\"\n\"1784185\";\"Yü-ch’i-hsien\";\"other\"\n\"1784185\";\"Yü-hsi\";\"other\"\n\"1784185\";\"Yüki\";\"other\"\n\"1784185\";\"Yüki-hsien\";\"other\"\n\"1784185\";\"Zhoucheng\";\"other\"\n\"1784185\";\"Юйси\";\"other\"\n\"1784185\";\"玉溪\";\"other\"\n\"1784185\";\"红塔\";\"other\"\n\"1784185\";\"红塔区\";\"other\"\n\"1784206\";\"Zhongzhai\";\"main\"\n\"1784206\";\"中寨\";\"other\"\n\"1784207\";\"Zhongzhai\";\"main\"\n\"1784207\";\"Chung-chai\";\"other\"\n\"1784207\";\"中寨\";\"other\"\n\"1784209\";\"Zhongzhai\";\"main\"\n\"1784209\";\"Chung-chai-ch'ang\";\"other\"\n\"1784209\";\"Chung-chai-ch’ang\";\"other\"\n\"1784239\";\"Ningxiang\";\"main\"\n\"1784239\";\"Chung-yang\";\"other\"\n\"1784239\";\"Chung-yang-hsien\";\"other\"\n\"1784239\";\"Ning-hsiang\";\"other\"\n\"1784239\";\"Ningsianhsien\";\"other\"\n\"1784239\";\"Zhongyang\";\"other\"\n\"1784239\";\"ning xiang\";\"other\"\n\"1784239\";\"宁乡\";\"other\"\n\"1784244\";\"Zhongxinqiao\";\"main\"\n\"1784253\";\"Zhongxing\";\"main\"\n\"1784253\";\"Chung-hsing\";\"other\"\n\"1784253\";\"Chung-hsing-chen\";\"other\"\n\"1784253\";\"Chunghing\";\"other\"\n\"1784253\";\"Chunking\";\"other\"\n\"1784253\";\"Siyang\";\"other\"\n\"1784253\";\"Ssu-yang\";\"other\"\n\"1784253\";\"Ssu-yang-hsien\";\"other\"\n\"1784253\";\"Szeyang\";\"other\"\n\"1784272\";\"Zhongxin\";\"main\"\n\"1784272\";\"Chiu-hua-p'ing\";\"other\"\n\"1784272\";\"Chiu-hua-p’ing\";\"other\"\n\"1784272\";\"Chung-hsin-chen\";\"other\"\n\"1784272\";\"Hua-p'ing-chiu-chih\";\"other\"\n\"1784272\";\"Hua-p'ing-hsien\";\"other\"\n\"1784272\";\"Hua-p'ing-ku-chih\";\"other\"\n\"1784272\";\"Hua-p’ing-chiu-chih\";\"other\"\n\"1784272\";\"Hua-p’ing-hsien\";\"other\"\n\"1784272\";\"Hua-p’ing-ku-chih\";\"other\"\n\"1784272\";\"Huaping\";\"other\"\n\"1784272\";\"Kiuyaping\";\"other\"\n\"1784272\";\"zhong xin\";\"other\"\n\"1784272\";\"中心\";\"other\"\n\"1784274\";\"Zhongxin\";\"main\"\n\"1784274\";\"Chung-hsin\";\"other\"\n\"1784274\";\"Zhongxin Zhen\";\"other\"\n\"1784274\";\"zhong xin\";\"other\"\n\"1784274\";\"中新\";\"other\"\n\"1784291\";\"Zhongtou\";\"main\"\n\"1784291\";\"Chung-t'ou\";\"other\"\n\"1784291\";\"Chung-t'ou-chen\";\"other\"\n\"1784291\";\"Chung-t’ou\";\"other\"\n\"1784291\";\"Chung-t’ou-chen\";\"other\"\n\"1784291\";\"Zhongtou Zhen\";\"other\"\n\"1784291\";\"zhong tou\";\"other\"\n\"1784291\";\"冢头\";\"other\"\n\"1784291\";\"冢头镇\";\"other\"\n\"1784292\";\"Zhongtong\";\"main\"\n\"1784292\";\"Zhongtong Zhen\";\"other\"\n\"1784292\";\"中童\";\"other\"\n\"1784292\";\"中童镇\";\"other\"\n\"1784298\";\"Zhongtang\";\"main\"\n\"1784298\";\"Chung-t'ang\";\"other\"\n\"1784298\";\"Chung-t’ang\";\"other\"\n\"1784298\";\"Zhongtang Zhen\";\"other\"\n\"1784298\";\"zhong tang\";\"other\"\n\"1784298\";\"中堂\";\"other\"\n\"1784305\";\"Zhonghe\";\"main\"\n\"1784305\";\"Zhonghe Xiang\";\"other\"\n\"1784305\";\"Zhongshuihe\";\"other\"\n\"1784305\";\"中河\";\"other\"\n\"1784305\";\"中河乡\";\"other\"\n\"1784309\";\"Zhongshu\";\"main\"\n\"1784309\";\"Huancheng\";\"other\"\n\"1784309\";\"Lu-liang-hsien\";\"other\"\n\"1784309\";\"Luliang\";\"other\"\n\"1784309\";\"zhong shu\";\"other\"\n\"1784309\";\"中枢\";\"other\"\n\"1784310\";\"Zhongshu\";\"main\"\n\"1784310\";\"Chung-shu-chen\";\"other\"\n\"1784310\";\"Chzhunshu\";\"other\"\n\"1784310\";\"Kuang-hsi\";\"other\"\n\"1784310\";\"Kwangsi-hsien\";\"other\"\n\"1784310\";\"Kwangsichow\";\"other\"\n\"1784310\";\"Lu-hsi\";\"other\"\n\"1784310\";\"Lu-hsi-hsien\";\"other\"\n\"1784310\";\"Lusi-hsien\";\"other\"\n\"1784310\";\"Luxi\";\"other\"\n\"1784310\";\"Чжуншу\";\"other\"\n\"1784310\";\"中枢\";\"other\"\n\"1784320\";\"Zhongshan\";\"main\"\n\"1784320\";\"Chung-saan\";\"other\"\n\"1784320\";\"Chung-shan\";\"other\"\n\"1784320\";\"Chung-shan-chen\";\"other\"\n\"1784320\";\"Chung-shan-hsien\";\"other\"\n\"1784320\";\"Fu-chung\";\"other\"\n\"1784320\";\"Shan-chung-chen\";\"other\"\n\"1784320\";\"zhong shan\";\"other\"\n\"1784320\";\"钟山\";\"other\"\n\"1784337\";\"Jinzhong\";\"main\"\n\"1784337\";\"Hui-tse\";\"other\"\n\"1784337\";\"Hui-tse-hsien\";\"other\"\n\"1784337\";\"Huize\";\"other\"\n\"1784337\";\"Hweitseh\";\"other\"\n\"1784337\";\"Hweitseh-hsien\";\"other\"\n\"1784337\";\"Tung-ch'uan\";\"other\"\n\"1784337\";\"Tung-ch’uan\";\"other\"\n\"1784337\";\"Tungchwan\";\"other\"\n\"1784337\";\"Tungchwan-fu\";\"other\"\n\"1784337\";\"Zhongping\";\"other\"\n\"1784337\";\"jin zhong\";\"other\"\n\"1784337\";\"金钟\";\"other\"\n\"1784347\";\"Zhongnan\";\"main\"\n\"1784347\";\"Chung-nan\";\"other\"\n\"1784347\";\"Chung-nan-chen\";\"other\"\n\"1784347\";\"Zhongnanzhen\";\"other\"\n\"1784347\";\"zhong nan\";\"other\"\n\"1784347\";\"zhong nan zhen\";\"other\"\n\"1784347\";\"终南\";\"other\"\n\"1784347\";\"终南镇\";\"other\"\n\"1784361\";\"Zhongling\";\"main\"\n\"1784361\";\"Chung-ling\";\"other\"\n\"1784361\";\"Chung-ling-ch'iao\";\"other\"\n\"1784361\";\"Chung-ling-ch’iao\";\"other\"\n\"1784361\";\"Zhongling Xiang\";\"other\"\n\"1784361\";\"钟陵\";\"other\"\n\"1784361\";\"钟陵乡\";\"other\"\n\"1784373\";\"Kaijiang\";\"main\"\n\"1784373\";\"Chung-chiang\";\"other\"\n\"1784373\";\"Chung-chiang-hsien\";\"other\"\n\"1784373\";\"Chungkiang\";\"other\"\n\"1784373\";\"Chungkiang-hsien\";\"other\"\n\"1784373\";\"Chzhuntszyan\";\"other\"\n\"1784373\";\"Zhongjiang\";\"other\"\n\"1784373\";\"kai jiang\";\"other\"\n\"1784373\";\"凯江\";\"other\"\n\"1784414\";\"Zhongfang\";\"main\"\n\"1784414\";\"Chung-fang\";\"other\"\n\"1784414\";\"zhong fang\";\"other\"\n\"1784414\";\"中方\";\"other\"\n\"1784415\";\"Zhongfang\";\"main\"\n\"1784415\";\"Chung-fang\";\"other\"\n\"1784429\";\"Zhongdeng\";\"main\"\n\"1784429\";\"Chung-teng\";\"other\"\n\"1784429\";\"Chung-teng-ts'un\";\"other\"\n\"1784429\";\"Chung-teng-ts’un\";\"other\"\n\"1784429\";\"Zhongdengcun\";\"other\"\n\"1784444\";\"Zhongcun\";\"main\"\n\"1784444\";\"Zhongcun Xiang\";\"other\"\n\"1784444\";\"中村\";\"other\"\n\"1784444\";\"中村乡\";\"other\"\n\"1784452\";\"Zhongchao\";\"main\"\n\"1784452\";\"Chung-ch'ao\";\"other\"\n\"1784452\";\"Chung-ch'ao-so\";\"other\"\n\"1784452\";\"Chung-ch’ao\";\"other\"\n\"1784452\";\"Chung-ch’ao-so\";\"other\"\n\"1784461\";\"Zhongbao\";\"main\"\n\"1784461\";\"Chung-pao\";\"other\"\n\"1784468\";\"Zhongba\";\"main\"\n\"1784468\";\"zhong ba\";\"other\"\n\"1784468\";\"中坝\";\"other\"\n\"1784469\";\"Jiangyou\";\"main\"\n\"1784469\";\"Chiang-chang\";\"other\"\n\"1784469\";\"Chiang-yu\";\"other\"\n\"1784469\";\"Chiang-yu-hsien\";\"other\"\n\"1784469\";\"Chung-pa\";\"other\"\n\"1784469\";\"Chzhunba\";\"other\"\n\"1784474\";\"Zhongba\";\"main\"\n\"1784474\";\"Chung-pa\";\"other\"\n\"1784474\";\"Zhongba Zhen\";\"other\"\n\"1784474\";\"中坝\";\"other\"\n\"1784474\";\"中坝镇\";\"other\"\n\"1784477\";\"Zhong’an\";\"main\"\n\"1784477\";\"Zhong'an\";\"ascii\"\n\"1784477\";\"Chung-an-chen\";\"other\"\n\"1784477\";\"Fuyuan\";\"other\"\n\"1784477\";\"P'ing-i\";\"other\"\n\"1784477\";\"P'ing-i-hsien\";\"other\"\n\"1784477\";\"Pingyi-hsien\";\"other\"\n\"1784477\";\"P’ing-i\";\"other\"\n\"1784477\";\"P’ing-i-hsien\";\"other\"\n\"1784477\";\"zhong an\";\"other\"\n\"1784477\";\"中安\";\"other\"\n\"1784488\";\"Zhixia\";\"main\"\n\"1784488\";\"Chih-hsia\";\"other\"\n\"1784488\";\"Zhixia Zhen\";\"other\"\n\"1784488\";\"值夏\";\"other\"\n\"1784488\";\"值夏镇\";\"other\"\n\"1784495\";\"Zhitang\";\"main\"\n\"1784495\";\"Chih-t'ang\";\"other\"\n\"1784495\";\"Chih-tang-chen\";\"other\"\n\"1784495\";\"Chih-t’ang\";\"other\"\n\"1784495\";\"支塘\";\"other\"\n\"1784525\";\"Zhijiang\";\"main\"\n\"1784525\";\"Chih-chian\";\"other\"\n\"1784525\";\"Chih-chiang\";\"other\"\n\"1784525\";\"Chih-chiang-hsien\";\"other\"\n\"1784525\";\"Chihkiang\";\"other\"\n\"1784525\";\"Chihkiang-hsien\";\"other\"\n\"1784525\";\"Yuan-chou\";\"other\"\n\"1784525\";\"Yuanchow\";\"other\"\n\"1784525\";\"Yuen-chow-fu\";\"other\"\n\"1784525\";\"Yüan-chou\";\"other\"\n\"1784525\";\"Yüanchow\";\"other\"\n\"1784525\";\"zhi jiang\";\"other\"\n\"1784525\";\"芷江\";\"other\"\n\"1784553\";\"Zhicheng\";\"main\"\n\"1784553\";\"Ch'ang-hsing\";\"other\"\n\"1784553\";\"Ch'ang-hsing-hsien\";\"other\"\n\"1784553\";\"Ch'ang-hsing-hsien-ch'eng\";\"other\"\n\"1784553\";\"Changhing\";\"other\"\n\"1784553\";\"Changhing-hsien\";\"other\"\n\"1784553\";\"Changxing\";\"other\"\n\"1784553\";\"Ch’ang-hsing\";\"other\"\n\"1784553\";\"Ch’ang-hsing-hsien\";\"other\"\n\"1784553\";\"Ch’ang-hsing-hsien-ch’eng\";\"other\"\n\"1784554\";\"Zhicheng\";\"main\"\n\"1784554\";\"Chih-ch'eng\";\"other\"\n\"1784554\";\"Chih-chiang\";\"other\"\n\"1784554\";\"Chih-chiang-chen\";\"other\"\n\"1784554\";\"Chih-chiang-hsien\";\"other\"\n\"1784554\";\"Chih-ch’eng\";\"other\"\n\"1784554\";\"Chihkiang\";\"other\"\n\"1784554\";\"Chihkianghsien\";\"other\"\n\"1784556\";\"Zhibu\";\"main\"\n\"1784556\";\"Chih-pu\";\"other\"\n\"1784556\";\"Zhibu Zhen\";\"other\"\n\"1784556\";\"zhi bu\";\"other\"\n\"1784556\";\"zhi bu zhen\";\"other\"\n\"1784556\";\"直埠\";\"other\"\n\"1784556\";\"直埠镇\";\"other\"\n\"1784568\";\"Zhetang\";\"main\"\n\"1784568\";\"Che-t'ang\";\"other\"\n\"1784568\";\"Che-t'ang-chen\";\"other\"\n\"1784568\";\"Che-t’ang\";\"other\"\n\"1784568\";\"Che-t’ang-chen\";\"other\"\n\"1784568\";\"Zhetang Zhen\";\"other\"\n\"1784568\";\"zhe tang\";\"other\"\n\"1784568\";\"zhe tang zhen\";\"other\"\n\"1784568\";\"柘塘\";\"other\"\n\"1784568\";\"柘塘镇\";\"other\"\n\"1784580\";\"Yizheng\";\"main\"\n\"1784580\";\"I-cheng\";\"other\"\n\"1784580\";\"I-cheng-hsien\";\"other\"\n\"1784580\";\"Yangtzehsien\";\"other\"\n\"1784580\";\"Yicheng\";\"other\"\n\"1784580\";\"Zhenzhou\";\"other\"\n\"1784586\";\"Zhenyuan\";\"main\"\n\"1784586\";\"Chen-yuan\";\"other\"\n\"1784586\";\"Chen-yüan\";\"other\"\n\"1784586\";\"Zhenyuan Zhen\";\"other\"\n\"1784586\";\"zhen yuan\";\"other\"\n\"1784586\";\"zhen yuan zhen\";\"other\"\n\"1784586\";\"贞元\";\"other\"\n\"1784586\";\"贞元镇\";\"other\"\n\"1784592\";\"Wufeng\";\"main\"\n\"1784592\";\"Chen-hsiung\";\"other\"\n\"1784592\";\"Chen-hsiung-hsien\";\"other\"\n\"1784592\";\"Chen-hsuing\";\"other\"\n\"1784592\";\"Chensiung\";\"other\"\n\"1784592\";\"Chensiung-hsien\";\"other\"\n\"1784592\";\"Chensiungchow\";\"other\"\n\"1784592\";\"Zhenxiong\";\"other\"\n\"1784592\";\"wu feng\";\"other\"\n\"1784592\";\"乌峰\";\"other\"\n\"1784617\";\"Zhenping Chengguanzhen\";\"main\"\n\"1784617\";\"Chen-p'ing\";\"other\"\n\"1784617\";\"Chen-p'ing-hsien\";\"other\"\n\"1784617\";\"Chen-p’ing\";\"other\"\n\"1784617\";\"Chen-p’ing-hsien\";\"other\"\n\"1784617\";\"Chengguan Zhen\";\"other\"\n\"1784617\";\"Zhenping\";\"other\"\n\"1784617\";\"zhen ping\";\"other\"\n\"1784617\";\"镇平\";\"other\"\n\"1784617\";\"镇平城关镇\";\"other\"\n\"1784642\";\"Zhenjiang\";\"main\"\n\"1784642\";\"Chen-chiang\";\"other\"\n\"1784642\";\"Chen-chiang-ch'eng\";\"other\"\n\"1784642\";\"Chen-chiang-ch’eng\";\"other\"\n\"1784642\";\"Chen-chiang-hsien\";\"other\"\n\"1784642\";\"Chen-chiang-shih\";\"other\"\n\"1784642\";\"Chenkiang\";\"other\"\n\"1784642\";\"Chinkiang\";\"other\"\n\"1784642\";\"Tan-t'a\";\"other\"\n\"1784642\";\"Tan-t'u\";\"other\"\n\"1784642\";\"Tan-t’a\";\"other\"\n\"1784642\";\"Tan-t’u\";\"other\"\n\"1784642\";\"Tantuhsien\";\"other\"\n\"1784642\";\"zhen jiang\";\"other\"\n\"1784642\";\"zhen jiang shi\";\"other\"\n\"1784642\";\"جېنجياڭ شەھىرى\";\"other\"\n\"1784642\";\"鎮江\";\"other\"\n\"1784642\";\"镇江\";\"other\"\n\"1784642\";\"镇江市\";\"other\"\n\"1784647\";\"Zhaobaoshan\";\"main\"\n\"1784647\";\"Chen-hai\";\"other\"\n\"1784647\";\"Chen-hai-hsien\";\"other\"\n\"1784647\";\"Chen-hai-hsien-ch'eng\";\"other\"\n\"1784647\";\"Chen-hai-hsien-ch’eng\";\"other\"\n\"1784647\";\"Chinhai\";\"other\"\n\"1784647\";\"Zhaobaoshan Jiedao\";\"other\"\n\"1784647\";\"Zhenhai\";\"other\"\n\"1784647\";\"Zhenhai Qu\";\"other\"\n\"1784647\";\"招宝山\";\"other\"\n\"1784647\";\"招宝山街道\";\"other\"\n\"1784647\";\"镇海\";\"other\"\n\"1784647\";\"镇海区\";\"other\"\n\"1784648\";\"Zhenhai\";\"main\"\n\"1784648\";\"Chen-hai\";\"other\"\n\"1784648\";\"Chen-hai-ch'eng\";\"other\"\n\"1784648\";\"Chen-hai-ch’eng\";\"other\"\n\"1784648\";\"zhen hai\";\"other\"\n\"1784648\";\"镇海\";\"other\"\n\"1784658\";\"Zhengzhou\";\"main\"\n\"1784658\";\"Cheng\";\"other\"\n\"1784658\";\"Cheng-chou\";\"other\"\n\"1784658\";\"Cheng-chou-shih\";\"other\"\n\"1784658\";\"Cheng-hsien\";\"other\"\n\"1784658\";\"Chengchow\";\"other\"\n\"1784658\";\"Chzhehnchzhou\";\"other\"\n\"1784658\";\"Czengczou\";\"other\"\n\"1784658\";\"Dzengdzou\";\"other\"\n\"1784658\";\"Džengdžou\";\"other\"\n\"1784658\";\"Trinh Chau\";\"other\"\n\"1784658\";\"Trịnh Châu\";\"other\"\n\"1784658\";\"zheng zhou\";\"other\"\n\"1784658\";\"zheng zhou shi\";\"other\"\n\"1784658\";\"Чжэнчжоу\";\"other\"\n\"1784658\";\"جېڭجۇ شەھىرى\";\"other\"\n\"1784658\";\"郑州\";\"other\"\n\"1784658\";\"郑州市\";\"other\"\n\"1784658\";\"鄭州\";\"other\"\n\"1784702\";\"Zhengguo\";\"main\"\n\"1784702\";\"Cheng-kou-hsu\";\"other\"\n\"1784702\";\"Cheng-kou-hsü\";\"other\"\n\"1784702\";\"Cheng-kuo\";\"other\"\n\"1784702\";\"Cheng-kuo-hsu\";\"other\"\n\"1784702\";\"Cheng-kuo-hsü\";\"other\"\n\"1784702\";\"Ching Kwo\";\"other\"\n\"1784702\";\"Zhengguo Zhen\";\"other\"\n\"1784702\";\"zheng guo\";\"other\"\n\"1784702\";\"正果\";\"other\"\n\"1784706\";\"Zhengfang\";\"main\"\n\"1784706\";\"Cheng-fang\";\"other\"\n\"1784706\";\"Zhengfang Zhen\";\"other\"\n\"1784706\";\"zheng fang\";\"other\"\n\"1784706\";\"zheng fang zhen\";\"other\"\n\"1784706\";\"郑坊\";\"other\"\n\"1784706\";\"郑坊镇\";\"other\"\n\"1784707\";\"Zhengfang\";\"main\"\n\"1784707\";\"Zhengfang Xiang\";\"other\"\n\"1784707\";\"郑坊\";\"other\"\n\"1784707\";\"郑坊乡\";\"other\"\n\"1784708\";\"Zhengdun\";\"main\"\n\"1784708\";\"Cheng-tun\";\"other\"\n\"1784708\";\"Zhengdun Zhen\";\"other\"\n\"1784708\";\"郑墩\";\"other\"\n\"1784708\";\"郑墩镇\";\"other\"\n\"1784755\";\"Zhelin\";\"main\"\n\"1784755\";\"Che-lin\";\"other\"\n\"1784755\";\"Che-lin-ch'eng\";\"other\"\n\"1784755\";\"Che-lin-ch’eng\";\"other\"\n\"1784755\";\"Cholin\";\"other\"\n\"1784755\";\"柘林\";\"other\"\n\"1784757\";\"Zhelin\";\"main\"\n\"1784757\";\"Che-lin\";\"other\"\n\"1784757\";\"Chelim\";\"other\"\n\"1784757\";\"Zhelin Zhen\";\"other\"\n\"1784757\";\"zhe lin\";\"other\"\n\"1784757\";\"柘林\";\"other\"\n\"1784760\";\"Zhelang\";\"main\"\n\"1784760\";\"Chelang\";\"other\"\n\"1784760\";\"Zhelang Jiedao\";\"other\"\n\"1784760\";\"zhe lang\";\"other\"\n\"1784760\";\"遮浪\";\"other\"\n\"1784790\";\"Zhaxi\";\"main\"\n\"1784790\";\"Cha-hsi\";\"other\"\n\"1784790\";\"Cha-hsi-chen\";\"other\"\n\"1784790\";\"Wei-hsin\";\"other\"\n\"1784790\";\"Wei-hsin-hsien\";\"other\"\n\"1784790\";\"Weisin-hsien\";\"other\"\n\"1784790\";\"Weixin\";\"other\"\n\"1784790\";\"zha xi\";\"other\"\n\"1784790\";\"扎西\";\"other\"\n\"1784800\";\"Zhapu\";\"main\"\n\"1784800\";\"Cha-p'u\";\"other\"\n\"1784800\";\"Cha-p'u-chen\";\"other\"\n\"1784800\";\"Cha-p’u\";\"other\"\n\"1784800\";\"Cha-p’u-chen\";\"other\"\n\"1784800\";\"Zhapuzhen\";\"other\"\n\"1784800\";\"乍浦\";\"other\"\n\"1784800\";\"乍浦镇\";\"other\"\n\"1784811\";\"Zhaozhen\";\"main\"\n\"1784811\";\"Chao-chen\";\"other\"\n\"1784811\";\"Chao-chia-tu\";\"other\"\n\"1784811\";\"Chaokiatu\";\"other\"\n\"1784811\";\"Chin-t'ang\";\"other\"\n\"1784811\";\"Chin-t’ang\";\"other\"\n\"1784811\";\"Chzhaotszyadu\";\"other\"\n\"1784811\";\"Jintang\";\"other\"\n\"1784811\";\"zhao zhen\";\"other\"\n\"1784811\";\"赵镇\";\"other\"\n\"1784820\";\"Xinghua\";\"main\"\n\"1784820\";\"Hsin-hsing\";\"other\"\n\"1784820\";\"Hsing-hua\";\"other\"\n\"1784820\";\"Hsing-hua-ch'eng\";\"other\"\n\"1784820\";\"Hsing-hua-ch’eng\";\"other\"\n\"1784820\";\"Hsing-hua-hsien\";\"other\"\n\"1784820\";\"Sinkhua\";\"other\"\n\"1784820\";\"Xinxing\";\"other\"\n\"1784820\";\"Zhaoyang\";\"other\"\n\"1784820\";\"Синхуа\";\"other\"\n\"1784827\";\"Zhaoxian\";\"main\"\n\"1784827\";\"Chao-hsien\";\"other\"\n\"1784827\";\"Chao-hsien-chen\";\"other\"\n\"1784827\";\"Chzhaosyan'chzhen'\";\"other\"\n\"1784827\";\"Chzhaosyan’chzhen’\";\"other\"\n\"1784827\";\"Zhaoxian Zhen\";\"other\"\n\"1784827\";\"招贤\";\"other\"\n\"1784827\";\"招贤镇\";\"other\"\n\"1784841\";\"Zhaotong\";\"main\"\n\"1784841\";\"Chao-t'ung\";\"other\"\n\"1784841\";\"Chao-t'ung-hsien\";\"other\"\n\"1784841\";\"Chao-t’ung\";\"other\"\n\"1784841\";\"Chao-t’ung-hsien\";\"other\"\n\"1784841\";\"Chzhaotun\";\"other\"\n\"1784841\";\"En-an\";\"other\"\n\"1784841\";\"En-an-hsien\";\"other\"\n\"1784841\";\"Чжаотун\";\"other\"\n\"1784846\";\"Zhaoshi\";\"main\"\n\"1784846\";\"Chao-Shih\";\"other\"\n\"1784846\";\"Zhaoshi Zhen\";\"other\"\n\"1784846\";\"zhao shi\";\"other\"\n\"1784846\";\"zhao shi zhen\";\"other\"\n\"1784846\";\"召市\";\"other\"\n\"1784846\";\"召市镇\";\"other\"\n\"1784853\";\"Zhaoqing\";\"main\"\n\"1784853\";\"Chao-ch'ing\";\"other\"\n\"1784853\";\"Chao-ch'ing-chen\";\"other\"\n\"1784853\";\"Chao-chou\";\"other\"\n\"1784853\";\"Chao-ch’ing\";\"other\"\n\"1784853\";\"Chao-ch’ing-chen\";\"other\"\n\"1784853\";\"Chao-king\";\"other\"\n\"1784853\";\"Chzhaocin\";\"other\"\n\"1784853\";\"Kao-yao\";\"other\"\n\"1784853\";\"Kao-yao-hsien\";\"other\"\n\"1784853\";\"Koyiu\";\"other\"\n\"1784853\";\"Koyiu-hsien\";\"other\"\n\"1784853\";\"Koynihsien\";\"other\"\n\"1784853\";\"Shiuhing\";\"other\"\n\"1784853\";\"Shiuhingfu\";\"other\"\n\"1784853\";\"zhao qing shi\";\"other\"\n\"1784853\";\"Чжаоцин\";\"other\"\n\"1784853\";\"肇庆\";\"other\"\n\"1784853\";\"肇庆市\";\"other\"\n\"1784860\";\"Zhaoping\";\"main\"\n\"1784860\";\"Chao-p'ing\";\"other\"\n\"1784860\";\"Chao-p'ing-chen\";\"other\"\n\"1784860\";\"Chao-p'ing-hsien\";\"other\"\n\"1784860\";\"Chao-p’ing\";\"other\"\n\"1784860\";\"Chao-p’ing-chen\";\"other\"\n\"1784860\";\"Chao-p’ing-hsien\";\"other\"\n\"1784860\";\"zhao ping\";\"other\"\n\"1784860\";\"昭平\";\"other\"\n\"1784919\";\"Zhaohe\";\"main\"\n\"1784919\";\"Chao-ho\";\"other\"\n\"1784919\";\"Chao-ho-chen\";\"other\"\n\"1784919\";\"zhao he\";\"other\"\n\"1784919\";\"赵河\";\"other\"\n\"1784920\";\"Zhaoguli\";\"main\"\n\"1784928\";\"Zhaogezhuang\";\"main\"\n\"1784928\";\"Chao-ko-chuang\";\"other\"\n\"1784929\";\"Zhaogezhuang\";\"main\"\n\"1784929\";\"Chao-chia-chuang\";\"other\"\n\"1784929\";\"Chao-ko-chuang\";\"other\"\n\"1784929\";\"Chaokochwang\";\"other\"\n\"1784947\";\"Zhaozhen\";\"main\"\n\"1784947\";\"Chao-chen\";\"other\"\n\"1784947\";\"Chao-ts'un\";\"other\"\n\"1784947\";\"Chao-ts'un-chen\";\"other\"\n\"1784947\";\"Chao-ts’un\";\"other\"\n\"1784947\";\"Chao-ts’un-chen\";\"other\"\n\"1784947\";\"Zhaocun\";\"other\"\n\"1784947\";\"zhao zhen\";\"other\"\n\"1784947\";\"赵镇\";\"other\"\n\"1784950\";\"Zhaocun\";\"main\"\n\"1784950\";\"zhao cun\";\"other\"\n\"1784950\";\"赵村\";\"other\"\n\"1784953\";\"Zhaoyuan\";\"main\"\n\"1784953\";\"Chao-yuan\";\"other\"\n\"1784953\";\"Chao-yuan-hsien\";\"other\"\n\"1784953\";\"Chao-yüan\";\"other\"\n\"1784953\";\"Chao-yüan-hsien\";\"other\"\n\"1784953\";\"Zhaocheng\";\"other\"\n\"1784960\";\"Zhaobei\";\"main\"\n\"1784960\";\"Chao-pei\";\"other\"\n\"1784960\";\"Chao-pi-ts'un\";\"other\"\n\"1784960\";\"Chao-pi-ts’un\";\"other\"\n\"1784960\";\"Zhaobei Zhen\";\"other\"\n\"1784960\";\"赵北\";\"other\"\n\"1784960\";\"赵北镇\";\"other\"\n\"1784969\";\"Xiping\";\"main\"\n\"1784969\";\"Ch'u-ching\";\"other\"\n\"1784969\";\"Chan-i\";\"other\"\n\"1784969\";\"Chan-i-chen\";\"other\"\n\"1784969\";\"Chan-i-hsien\";\"other\"\n\"1784969\";\"Chanyi\";\"other\"\n\"1784969\";\"Chanyi-hsien\";\"other\"\n\"1784969\";\"Chanyichow\";\"other\"\n\"1784969\";\"Ch’ü-ching\";\"other\"\n\"1784969\";\"Zhanyi\";\"other\"\n\"1784969\";\"xi ping\";\"other\"\n\"1784969\";\"西平\";\"other\"\n\"1784974\";\"Zhantian\";\"main\"\n\"1784974\";\"Zhantian Xiang\";\"other\"\n\"1784974\";\"湛田\";\"other\"\n\"1784974\";\"湛田乡\";\"other\"\n\"1784982\";\"Zhanping\";\"main\"\n\"1784982\";\"Zhanping Xiang\";\"other\"\n\"1784982\";\"展坪\";\"other\"\n\"1784982\";\"展坪乡\";\"other\"\n\"1784990\";\"Zhanjiang\";\"main\"\n\"1784990\";\"Chan-chiang\";\"other\"\n\"1784990\";\"Chan-chiang-shih\";\"other\"\n\"1784990\";\"Chankiang\";\"other\"\n\"1784990\";\"Chzhan'czjan\";\"other\"\n\"1784990\";\"Fort Bayard\";\"other\"\n\"1784990\";\"Hsi-ying\";\"other\"\n\"1784990\";\"Kwangchow\";\"other\"\n\"1784990\";\"Kwangchowan\";\"other\"\n\"1784990\";\"Kwangchowwan\";\"other\"\n\"1784990\";\"Tram Giang\";\"other\"\n\"1784990\";\"Trạm Giang\";\"other\"\n\"1784990\";\"Tsamkong\";\"other\"\n\"1784990\";\"Zhanjiang Shi\";\"other\"\n\"1784990\";\"zhan jiang\";\"other\"\n\"1784990\";\"zhan jiang shi\";\"other\"\n\"1784990\";\"Чжаньцзян\";\"other\"\n\"1784990\";\"جاڭجياڭ شەھىرى\";\"other\"\n\"1784990\";\"湛江\";\"other\"\n\"1784990\";\"湛江市\";\"other\"\n\"1785000\";\"Danzhu\";\"main\"\n\"1785000\";\"Chang-tzu\";\"other\"\n\"1785000\";\"Chang-tzu-chen\";\"other\"\n\"1785000\";\"Chang-tzu-hsien\";\"other\"\n\"1785000\";\"Chang-tzu-hsien-ch'eng\";\"other\"\n\"1785000\";\"Chang-tzu-hsien-ch’eng\";\"other\"\n\"1785000\";\"Chantszo\";\"other\"\n\"1785000\";\"Chantszö\";\"other\"\n\"1785000\";\"Zhangzi\";\"other\"\n\"1785000\";\"dan zhu\";\"other\"\n\"1785000\";\"丹朱\";\"other\"\n\"1785003\";\"Zhangjiazhuang\";\"main\"\n\"1785003\";\"Chang-chia-chuang\";\"other\"\n\"1785003\";\"Chang-chuang\";\"other\"\n\"1785003\";\"Zhangjiazhuang Xiang\";\"other\"\n\"1785003\";\"Zhangzhuang\";\"other\"\n\"1785003\";\"张家庄\";\"other\"\n\"1785003\";\"张家庄乡\";\"other\"\n\"1785018\";\"Zhangzhou\";\"main\"\n\"1785018\";\"Chang-chou\";\"other\"\n\"1785018\";\"Chang-chou-shih\";\"other\"\n\"1785018\";\"Changchow\";\"other\"\n\"1785018\";\"Changchowfu\";\"other\"\n\"1785018\";\"Chzhanchzhou\";\"other\"\n\"1785018\";\"Lung-ch'i\";\"other\"\n\"1785018\";\"Lung-ch'i-hsien-ch'eng\";\"other\"\n\"1785018\";\"Lung-ch’i\";\"other\"\n\"1785018\";\"Lung-ch’i-hsien-ch’eng\";\"other\"\n\"1785018\";\"Lungki\";\"other\"\n\"1785018\";\"Lunki\";\"other\"\n\"1785018\";\"zhang zhou shi\";\"other\"\n\"1785018\";\"Чжанчжоу\";\"other\"\n\"1785018\";\"جياڭجۇ شەھىرى\";\"other\"\n\"1785018\";\"漳州\";\"other\"\n\"1785018\";\"漳州市\";\"other\"\n\"1785019\";\"Zhangzhishan\";\"main\"\n\"1785019\";\"Chang-chih-chen\";\"other\"\n\"1785019\";\"Chang-chih-shan\";\"other\"\n\"1785019\";\"Chang-chih-shan-chen\";\"other\"\n\"1785019\";\"Zhangzhishan Zhen\";\"other\"\n\"1785019\";\"张芝山\";\"other\"\n\"1785019\";\"张芝山镇\";\"other\"\n\"1785021\";\"Zhangzhen\";\"main\"\n\"1785021\";\"Chang-chen\";\"other\"\n\"1785021\";\"Chang-chia-fou\";\"other\"\n\"1785021\";\"Zhangzhen Zhen\";\"other\"\n\"1785021\";\"zhang zhen\";\"other\"\n\"1785021\";\"章镇\";\"other\"\n\"1785021\";\"章镇镇\";\"other\"\n\"1785036\";\"Zhangye\";\"main\"\n\"1785036\";\"Chang-i\";\"other\"\n\"1785036\";\"Chang-yeh\";\"other\"\n\"1785036\";\"Chang-yeh-hsien\";\"other\"\n\"1785036\";\"Chang-yeh-shih\";\"other\"\n\"1785036\";\"Changyen\";\"other\"\n\"1785036\";\"Ganzhou\";\"other\"\n\"1785036\";\"Kan-chou\";\"other\"\n\"1785036\";\"Kanchow\";\"other\"\n\"1785041\";\"Zhangyan\";\"main\"\n\"1785041\";\"Chang-yen\";\"other\"\n\"1785041\";\"Chang-yen-chen\";\"other\"\n\"1785041\";\"Chang-yin\";\"other\"\n\"1785041\";\"Zhangyan Zhen\";\"other\"\n\"1785041\";\"张堰\";\"other\"\n\"1785041\";\"张堰镇\";\"other\"\n\"1785066\";\"Zhangwan\";\"main\"\n\"1785066\";\"Chang-wan\";\"other\"\n\"1785068\";\"Zhangting\";\"main\"\n\"1785068\";\"Chang-t'ing\";\"other\"\n\"1785068\";\"Chang-t'ing-chen\";\"other\"\n\"1785068\";\"Chang-t’ing\";\"other\"\n\"1785068\";\"Chang-t’ing-chen\";\"other\"\n\"1785068\";\"Zhangtingzhen\";\"other\"\n\"1785068\";\"丈亭\";\"other\"\n\"1785068\";\"丈亭镇\";\"other\"\n\"1785104\";\"Zhangpu\";\"main\"\n\"1785104\";\"Chang-p'u\";\"other\"\n\"1785104\";\"Chang-p'u-chen\";\"other\"\n\"1785104\";\"Chang-p’u\";\"other\"\n\"1785104\";\"Chang-p’u-chen\";\"other\"\n\"1785104\";\"张浦\";\"other\"\n\"1785132\";\"Zhangliangdian\";\"main\"\n\"1785132\";\"Chang-liang-tien\";\"other\"\n\"1785132\";\"Zhanglian\";\"other\"\n\"1785132\";\"Zhanglian Zhen\";\"other\"\n\"1785132\";\"张良\";\"other\"\n\"1785132\";\"张良镇\";\"other\"\n\"1785157\";\"Zhangjiayuan\";\"main\"\n\"1785157\";\"Zhangjiayuan Xiang\";\"other\"\n\"1785157\";\"张家垣\";\"other\"\n\"1785157\";\"张家垣乡\";\"other\"\n\"1785176\";\"Zhangjiashan\";\"main\"\n\"1785176\";\"Chang-chia-Shan\";\"other\"\n\"1785176\";\"Zhangjiashan Zhen\";\"other\"\n\"1785176\";\"张家山\";\"other\"\n\"1785176\";\"张家山镇\";\"other\"\n\"1785177\";\"Zhangjiaqiao\";\"main\"\n\"1785177\";\"Chang-chia-ch'iao\";\"other\"\n\"1785177\";\"Chang-chia-ch’iao\";\"other\"\n\"1785177\";\"Zhangqiao\";\"other\"\n\"1785177\";\"Zhangqiao Zhen\";\"other\"\n\"1785177\";\"张家桥\";\"other\"\n\"1785177\";\"张桥\";\"other\"\n\"1785177\";\"张桥镇\";\"other\"\n\"1785197\";\"Zhangjiahe\";\"main\"\n\"1785197\";\"Chang-chia-ho\";\"other\"\n\"1785197\";\"张家河\";\"other\"\n\"1785258\";\"Zhanggu\";\"main\"\n\"1785258\";\"Chang-ku\";\"other\"\n\"1785258\";\"Chzhangu\";\"other\"\n\"1785258\";\"Danba\";\"other\"\n\"1785258\";\"Rimochegotyu\";\"other\"\n\"1785258\";\"Romichangku\";\"other\"\n\"1785258\";\"Rongzhag\";\"other\"\n\"1785258\";\"Rumichangu\";\"other\"\n\"1785258\";\"Tan-pa\";\"other\"\n\"1785258\";\"Tan-pa-hsien\";\"other\"\n\"1785258\";\"Ts'an-pa\";\"other\"\n\"1785258\";\"Tsan'ba\";\"other\"\n\"1785258\";\"Tsan’ba\";\"other\"\n\"1785258\";\"Ts’an-pa\";\"other\"\n\"1785258\";\"zhang gu\";\"other\"\n\"1785258\";\"章谷\";\"other\"\n\"1785286\";\"Zibo\";\"main\"\n\"1785286\";\"Chang-chou-shih\";\"other\"\n\"1785286\";\"Chang-tien\";\"other\"\n\"1785286\";\"Chang-tien-shih\";\"other\"\n\"1785286\";\"Czybo\";\"other\"\n\"1785286\";\"Tzu-po\";\"other\"\n\"1785286\";\"Zhangdian\";\"other\"\n\"1785286\";\"shi bo\";\"other\"\n\"1785286\";\"zi bo\";\"other\"\n\"1785286\";\"zi bo shi\";\"other\"\n\"1785286\";\"Цзыбо\";\"other\"\n\"1785286\";\"زىبو شەھىرى\";\"other\"\n\"1785286\";\"シ博\";\"other\"\n\"1785286\";\"淄博\";\"other\"\n\"1785286\";\"淄博市\";\"other\"\n\"1785292\";\"Zhangdian\";\"main\"\n\"1785292\";\"Chang-tien\";\"other\"\n\"1785292\";\"Chang-tien chen\";\"other\"\n\"1785292\";\"Zhangdian Zhen\";\"other\"\n\"1785292\";\"张甸\";\"other\"\n\"1785292\";\"张甸镇\";\"other\"\n\"1785294\";\"Anyang\";\"main\"\n\"1785294\";\"An'jang\";\"other\"\n\"1785294\";\"An-yang-hsien\";\"other\"\n\"1785294\";\"Chang-te\";\"other\"\n\"1785294\";\"Changte-fu\";\"other\"\n\"1785294\";\"Changteh\";\"other\"\n\"1785294\";\"Changten\";\"other\"\n\"1785294\";\"Zhangde\";\"other\"\n\"1785294\";\"Аньянг\";\"other\"\n\"1785326\";\"Zhangcheng\";\"main\"\n\"1785326\";\"Inghok\";\"other\"\n\"1785326\";\"Inghokhsien\";\"other\"\n\"1785326\";\"Ingtao\";\"other\"\n\"1785326\";\"Intaihsien\";\"other\"\n\"1785326\";\"Yongtai\";\"other\"\n\"1785326\";\"Yung-fu\";\"other\"\n\"1785326\";\"Yung-fu-chen\";\"other\"\n\"1785326\";\"Yung-fu-hsien\";\"other\"\n\"1785326\";\"Yung-t'ai\";\"other\"\n\"1785326\";\"Yung-t'ai-ch'eng\";\"other\"\n\"1785326\";\"Yung-t'ai-hsien\";\"other\"\n\"1785326\";\"Yung-t’ai\";\"other\"\n\"1785326\";\"Yung-t’ai-ch’eng\";\"other\"\n\"1785326\";\"Yung-t’ai-hsien\";\"other\"\n\"1785326\";\"zhang cheng\";\"other\"\n\"1785326\";\"樟城\";\"other\"\n\"1785333\";\"Zhangba\";\"main\"\n\"1785333\";\"Chang-pa-ssu\";\"other\"\n\"1785333\";\"Chang-ta-ssu\";\"other\"\n\"1785333\";\"丈八\";\"other\"\n\"1785341\";\"Zhan’erxiang\";\"main\"\n\"1785341\";\"Zhan'erxiang\";\"ascii\"\n\"1785341\";\"Chan-erh-hsiang\";\"other\"\n\"1785341\";\"站儿巷\";\"other\"\n\"1785372\";\"Zhaishi Miaozudongzuxiang\";\"main\"\n\"1785372\";\"Chai-shih-chen\";\"other\"\n\"1785372\";\"Chiu-sui-ning\";\"other\"\n\"1785372\";\"Chzhaysichzhen\";\"other\"\n\"1785372\";\"Jiusuining\";\"other\"\n\"1785372\";\"Sui-ning\";\"other\"\n\"1785372\";\"Zaishi\";\"other\"\n\"1785372\";\"Zhaishi\";\"other\"\n\"1785372\";\"Zhaishizhen\";\"other\"\n\"1785389\";\"Zhaike\";\"main\"\n\"1785389\";\"Zhaike Xiang\";\"other\"\n\"1785389\";\"寨科\";\"other\"\n\"1785389\";\"寨科乡\";\"other\"\n\"1785432\";\"Zengjia\";\"main\"\n\"1785432\";\"Tseng-chia-ho\";\"other\"\n\"1785432\";\"Zengjiahe\";\"other\"\n\"1785432\";\"ceng jia\";\"other\"\n\"1785432\";\"曾家\";\"other\"\n\"1785453\";\"Zaozhuang\";\"main\"\n\"1785453\";\"Czaochzhuan\";\"other\"\n\"1785453\";\"I-hsien\";\"other\"\n\"1785453\";\"Tsao-chuang\";\"other\"\n\"1785453\";\"Tsao-chuang-shih\";\"other\"\n\"1785453\";\"Tsaochwang\";\"other\"\n\"1785453\";\"Tssaochwang\";\"other\"\n\"1785453\";\"zao zhuang\";\"other\"\n\"1785453\";\"zao zhuang shi\";\"other\"\n\"1785453\";\"Цзаочжуан\";\"other\"\n\"1785453\";\"枣庄\";\"other\"\n\"1785453\";\"枣庄市\";\"other\"\n\"1785462\";\"Zaoyang\";\"main\"\n\"1785462\";\"Tsao-yang\";\"other\"\n\"1785462\";\"Tsao-yang-hsien\";\"other\"\n\"1785483\";\"Xicun\";\"main\"\n\"1785483\";\"Tsao-lin\";\"other\"\n\"1785483\";\"Tsao-lin-ts'un\";\"other\"\n\"1785483\";\"Tsao-lin-ts’un\";\"other\"\n\"1785483\";\"Zaolin Zhen\";\"other\"\n\"1785483\";\"枣林镇\";\"other\"\n\"1785483\";\"西村\";\"other\"\n\"1785486\";\"Zaolin\";\"main\"\n\"1785486\";\"Tsao-lin\";\"other\"\n\"1785486\";\"Tsao-lin-ying\";\"other\"\n\"1785486\";\"Zaolin Zhen\";\"other\"\n\"1785486\";\"枣林\";\"other\"\n\"1785486\";\"枣林镇\";\"other\"\n\"1785489\";\"Zaojiacheng\";\"main\"\n\"1785501\";\"Zangzhai\";\"main\"\n\"1785501\";\"Tsang-chai\";\"other\"\n\"1785501\";\"Zangzhai Xiang\";\"other\"\n\"1785501\";\"臧寨\";\"other\"\n\"1785501\";\"臧寨乡\";\"other\"\n\"1785522\";\"Zagunao\";\"main\"\n\"1785522\";\"Hsing-lung-ch'ang\";\"other\"\n\"1785522\";\"Hsing-lung-ch’ang\";\"other\"\n\"1785522\";\"Li\";\"other\"\n\"1785522\";\"Li-hsien\";\"other\"\n\"1785522\";\"Lixian\";\"other\"\n\"1785522\";\"Shih-ku-nao\";\"other\"\n\"1785522\";\"Tsa-ku-nao\";\"other\"\n\"1785522\";\"Tsakulao\";\"other\"\n\"1785522\";\"Tszagunao\";\"other\"\n\"1785522\";\"za gu nao\";\"other\"\n\"1785522\";\"杂谷脑\";\"other\"\n\"1785529\";\"Shangyuzhuang\";\"main\"\n\"1785529\";\"Hsia-yu-chuang-tzu\";\"other\"\n\"1785529\";\"Hsia-yü-chuang-tzu\";\"other\"\n\"1785529\";\"Yu-chuang\";\"other\"\n\"1785529\";\"Yuzhuang Xiang\";\"other\"\n\"1785529\";\"Yü-chuang\";\"other\"\n\"1785529\";\"上榆庄\";\"other\"\n\"1785529\";\"余庄乡\";\"other\"\n\"1785541\";\"Yuyue\";\"main\"\n\"1785541\";\"Chia-yu\";\"other\"\n\"1785541\";\"Chia-yu-hsien\";\"other\"\n\"1785541\";\"Chia-yü\";\"other\"\n\"1785541\";\"Chia-yü-hsien\";\"other\"\n\"1785541\";\"Jiayu\";\"other\"\n\"1785541\";\"Kiayu\";\"other\"\n\"1785541\";\"Kiayuhsien\";\"other\"\n\"1785541\";\"yu yue\";\"other\"\n\"1785541\";\"鱼岳\";\"other\"\n\"1785545\";\"Yuyao\";\"main\"\n\"1785545\";\"Ju-kao\";\"other\"\n\"1785545\";\"Jujao\";\"other\"\n\"1785545\";\"Yu-yao-chen\";\"other\"\n\"1785545\";\"Yu-yao-hsien\";\"other\"\n\"1785545\";\"Yu-yao-hsien-ch'eng\";\"other\"\n\"1785545\";\"Yuyao Shi\";\"other\"\n\"1785545\";\"Yü-yao-chen\";\"other\"\n\"1785545\";\"Yü-yao-hsien-ch’eng\";\"other\"\n\"1785545\";\"Юяо\";\"other\"\n\"1785545\";\"余姚\";\"other\"\n\"1785565\";\"Xiushui\";\"main\"\n\"1785565\";\"Yu\";\"other\"\n\"1785565\";\"Yu-hsien\";\"other\"\n\"1785565\";\"Yuhsie\";\"other\"\n\"1785565\";\"Yuxian\";\"other\"\n\"1785565\";\"Yuysyan'\";\"other\"\n\"1785565\";\"Yuysyan’\";\"other\"\n\"1785565\";\"Yü\";\"other\"\n\"1785565\";\"Yü-hsien\";\"other\"\n\"1785565\";\"Yühsie\";\"other\"\n\"1785565\";\"xiu shui\";\"other\"\n\"1785565\";\"秀水\";\"other\"\n\"1785566\";\"Yuzhou\";\"main\"\n\"1785566\";\"Yu\";\"other\"\n\"1785566\";\"Yu-hsien\";\"other\"\n\"1785566\";\"Yuchow\";\"other\"\n\"1785566\";\"Yuxian\";\"other\"\n\"1785566\";\"Yü\";\"other\"\n\"1785566\";\"Yü-hsien\";\"other\"\n\"1785572\";\"Yuxia\";\"main\"\n\"1785572\";\"Yu-hsia\";\"other\"\n\"1785572\";\"Yu-hsia-li\";\"other\"\n\"1785572\";\"Yuxia Zhen\";\"other\"\n\"1785572\";\"Yü-hsia\";\"other\"\n\"1785572\";\"Yü-hsia-li\";\"other\"\n\"1785572\";\"余下\";\"other\"\n\"1785572\";\"余下镇\";\"other\"\n\"1785574\";\"Yuxi\";\"main\"\n\"1785574\";\"Yu-ch'i\";\"other\"\n\"1785574\";\"Yu-hsi\";\"other\"\n\"1785574\";\"Yü-ch’i\";\"other\"\n\"1785574\";\"Yü-hsi\";\"other\"\n\"1785583\";\"Yuwang\";\"main\"\n\"1785583\";\"Yuwang Zhen\";\"other\"\n\"1785583\";\"予旺\";\"other\"\n\"1785583\";\"予旺镇\";\"other\"\n\"1785591\";\"Yutou\";\"main\"\n\"1785591\";\"Yo-tou-shi\";\"other\"\n\"1785591\";\"Yu-t'ou-shih\";\"other\"\n\"1785591\";\"Yutou Zhen\";\"other\"\n\"1785591\";\"Yü-t’ou-shih\";\"other\"\n\"1785591\";\"yu tou\";\"other\"\n\"1785591\";\"yu tou zhen\";\"other\"\n\"1785591\";\"淤头\";\"other\"\n\"1785591\";\"淤头镇\";\"other\"\n\"1785614\";\"Jicheng\";\"main\"\n\"1785614\";\"Yu-she-hsien\";\"other\"\n\"1785614\";\"Yushe\";\"other\"\n\"1785614\";\"Yuyshe\";\"other\"\n\"1785614\";\"Yü-she-hsien\";\"other\"\n\"1785614\";\"ji cheng\";\"other\"\n\"1785614\";\"箕城\";\"other\"\n\"1785620\";\"Yushan\";\"main\"\n\"1785620\";\"Yushan Zhen\";\"other\"\n\"1785620\";\"yu shan\";\"other\"\n\"1785620\";\"玉山\";\"other\"\n\"1785621\";\"Yushan\";\"main\"\n\"1785621\";\"Yushan Zhen\";\"other\"\n\"1785621\";\"玉山\";\"other\"\n\"1785621\";\"玉山镇\";\"other\"\n\"1785623\";\"Yushan\";\"main\"\n\"1785623\";\"K'un-shan-ch'eng\";\"other\"\n\"1785623\";\"K'un-shan-hsien\";\"other\"\n\"1785623\";\"Kan-shan\";\"other\"\n\"1785623\";\"Kun'shan'\";\"other\"\n\"1785623\";\"Kunshan\";\"other\"\n\"1785623\";\"K’un-shan-ch’eng\";\"other\"\n\"1785623\";\"K’un-shan-hsien\";\"other\"\n\"1785623\";\"Куньшань\";\"other\"\n\"1785623\";\"玉山\";\"other\"\n\"1785625\";\"Yushan\";\"main\"\n\"1785625\";\"Yu-shan-chieh\";\"other\"\n\"1785625\";\"Yü-shan-chieh\";\"other\"\n\"1785625\";\"yu shan\";\"other\"\n\"1785625\";\"玉山\";\"other\"\n\"1785642\";\"Yuping\";\"main\"\n\"1785642\";\"Ching-pien\";\"other\"\n\"1785642\";\"P'ing-pien\";\"other\"\n\"1785642\";\"P'ing-pien-hsien\";\"other\"\n\"1785642\";\"P'ing-pien-miao-tsu-tzu-chih-hsien\";\"other\"\n\"1785642\";\"P’ing-pien\";\"other\"\n\"1785642\";\"P’ing-pien-hsien\";\"other\"\n\"1785642\";\"P’ing-pien-miao-tsu-tzu-chih-hsien\";\"other\"\n\"1785642\";\"Tahotzu\";\"other\"\n\"1785642\";\"Tsingpien\";\"other\"\n\"1785642\";\"Yu-p'ing-chieh\";\"other\"\n\"1785642\";\"Yü-p’ing-chieh\";\"other\"\n\"1785642\";\"yu ping\";\"other\"\n\"1785642\";\"玉屏\";\"other\"\n\"1785654\";\"Yunyang\";\"main\"\n\"1785654\";\"Yun-yang-chen\";\"other\"\n\"1785654\";\"Yunyang Zhen\";\"other\"\n\"1785654\";\"Yün-yang-chen\";\"other\"\n\"1785654\";\"yun yang\";\"other\"\n\"1785654\";\"yun yang zhen\";\"other\"\n\"1785654\";\"云阳\";\"other\"\n\"1785654\";\"云阳镇\";\"other\"\n\"1785655\";\"Yunyang\";\"main\"\n\"1785655\";\"Chiu-nan-chao\";\"other\"\n\"1785655\";\"Jiunanzhao\";\"other\"\n\"1785655\";\"Nan-chao\";\"other\"\n\"1785655\";\"Nan-chao Old City\";\"other\"\n\"1785655\";\"Nan-chao-chiu-chiu\";\"other\"\n\"1785655\";\"Nan-chao-hsien\";\"other\"\n\"1785655\";\"Nan-chao-ku-chih\";\"other\"\n\"1785655\";\"云阳\";\"other\"\n\"1785661\";\"Yunxian Chengguanzhen\";\"main\"\n\"1785661\";\"Yun\";\"other\"\n\"1785661\";\"Yun-hsien\";\"other\"\n\"1785661\";\"Yun-yang\";\"other\"\n\"1785661\";\"Yun-yang-fu\";\"other\"\n\"1785661\";\"Yunxian\";\"other\"\n\"1785661\";\"Yün\";\"other\"\n\"1785661\";\"Yün-hsien\";\"other\"\n\"1785661\";\"Yün-yang\";\"other\"\n\"1785661\";\"Yün-yang-fu\";\"other\"\n\"1785661\";\"yun xian cheng guan zhen\";\"other\"\n\"1785661\";\"郧县城关镇\";\"other\"\n\"1785662\";\"Aihua\";\"main\"\n\"1785662\";\"Yun\";\"other\"\n\"1785662\";\"Yun-ch'eng-chen\";\"other\"\n\"1785662\";\"Yun-hsien\";\"other\"\n\"1785662\";\"Yunchow\";\"other\"\n\"1785662\";\"Yunxian\";\"other\"\n\"1785662\";\"Yün\";\"other\"\n\"1785662\";\"Yün-ch’eng-chen\";\"other\"\n\"1785662\";\"Yün-hsien\";\"other\"\n\"1785662\";\"Yünchow\";\"other\"\n\"1785662\";\"ai hua\";\"other\"\n\"1785662\";\"爱华\";\"other\"\n\"1785665\";\"Yunxi Chengguanzhen\";\"main\"\n\"1785665\";\"Yun-hsi\";\"other\"\n\"1785665\";\"Yun-hsi-hsien\";\"other\"\n\"1785665\";\"Yunsi\";\"other\"\n\"1785665\";\"Yunsi-hsien\";\"other\"\n\"1785665\";\"Yunxi\";\"other\"\n\"1785665\";\"Yün-hsi\";\"other\"\n\"1785665\";\"Yün-hsi-hsien\";\"other\"\n\"1785665\";\"Yünsi-hsien\";\"other\"\n\"1785665\";\"yun xi cheng guan zhen\";\"other\"\n\"1785665\";\"郧西城关镇\";\"other\"\n\"1785666\";\"Yunxi\";\"main\"\n\"1785666\";\"Yan'tin\";\"other\"\n\"1785666\";\"Yanting\";\"other\"\n\"1785666\";\"Yan’tin\";\"other\"\n\"1785666\";\"Yen-t'ing\";\"other\"\n\"1785666\";\"Yen-t'ing-hsien\";\"other\"\n\"1785666\";\"Yen-t’ing\";\"other\"\n\"1785666\";\"Yen-t’ing-hsien\";\"other\"\n\"1785666\";\"yun xi\";\"other\"\n\"1785666\";\"云溪\";\"other\"\n\"1785669\";\"Yunxi\";\"main\"\n\"1785669\";\"yun xi\";\"other\"\n\"1785669\";\"云溪\";\"other\"\n\"1785675\";\"Yunting\";\"main\"\n\"1785675\";\"Yun-t'ing-chen\";\"other\"\n\"1785675\";\"Yün-t’ing-chen\";\"other\"\n\"1785675\";\"云亭\";\"other\"\n\"1785683\";\"Yuntai\";\"main\"\n\"1785683\";\"Yuntai Zhen\";\"other\"\n\"1785683\";\"云台\";\"other\"\n\"1785683\";\"云台镇\";\"other\"\n\"1785689\";\"Yunshan\";\"main\"\n\"1785689\";\"Yun-shan-shih\";\"other\"\n\"1785689\";\"Yunshan Zhen\";\"other\"\n\"1785689\";\"Yün-shan-shih\";\"other\"\n\"1785689\";\"云山\";\"other\"\n\"1785689\";\"云山镇\";\"other\"\n\"1785698\";\"Yunmeng Chengguanzhen\";\"main\"\n\"1785698\";\"Yun-meng-hsien\";\"other\"\n\"1785698\";\"Yunmeng\";\"other\"\n\"1785698\";\"Yün-meng-hsien\";\"other\"\n\"1785698\";\"云梦城关镇\";\"other\"\n\"1785700\";\"Yunluo\";\"main\"\n\"1785700\";\"yun luo\";\"other\"\n\"1785700\";\"云落\";\"other\"\n\"1785707\";\"Yunling\";\"main\"\n\"1785707\";\"Yin-siao-ting\";\"other\"\n\"1785707\";\"Yun-hsiao\";\"other\"\n\"1785707\";\"Yunsiao\";\"other\"\n\"1785707\";\"Yunxiao\";\"other\"\n\"1785707\";\"Yün-hsiao\";\"other\"\n\"1785707\";\"yun ling\";\"other\"\n\"1785707\";\"云陵\";\"other\"\n\"1785710\";\"Jinghong\";\"main\"\n\"1785710\";\"Ch'e-li\";\"other\"\n\"1785710\";\"Ch'e-li-hsien\";\"other\"\n\"1785710\";\"Chianghung\";\"other\"\n\"1785710\";\"Ching-hung\";\"other\"\n\"1785710\";\"Ching-te\";\"other\"\n\"1785710\";\"Chiu-lung-chiang\";\"other\"\n\"1785710\";\"Ch’e-li\";\"other\"\n\"1785710\";\"Ch’e-li-hsien\";\"other\"\n\"1785710\";\"Kenghung\";\"other\"\n\"1785710\";\"Kianghung\";\"other\"\n\"1785710\";\"Kinlungkiang\";\"other\"\n\"1785710\";\"Kiulungkiang\";\"other\"\n\"1785710\";\"Kiulunkiang\";\"other\"\n\"1785710\";\"Kuilung-kiang\";\"other\"\n\"1785710\";\"Pan-na-ching-hung\";\"other\"\n\"1785710\";\"Pan-na-yun-ching-hung\";\"other\"\n\"1785710\";\"Pan-na-yün-ching-hung\";\"other\"\n\"1785710\";\"Yun-ching-hung\";\"other\"\n\"1785710\";\"Yun-ching-hung-chen\";\"other\"\n\"1785710\";\"Yunjinghong\";\"other\"\n\"1785710\";\"Yün-ching-hung\";\"other\"\n\"1785710\";\"Yün-ching-hung-chen\";\"other\"\n\"1785710\";\"cheiyng rung\";\"other\"\n\"1785710\";\"jing hong\";\"other\"\n\"1785710\";\"jing hong shi\";\"other\"\n\"1785710\";\"เชียงรุ้ง\";\"other\"\n\"1785710\";\"景洪\";\"other\"\n\"1785710\";\"景洪市\";\"other\"\n\"1785716\";\"Pizhou\";\"main\"\n\"1785716\";\"P'ei-hsien\";\"other\"\n\"1785716\";\"Peixian\";\"other\"\n\"1785716\";\"P’ei-hsien\";\"other\"\n\"1785716\";\"Yun-ho\";\"other\"\n\"1785716\";\"Yun-ho-ch'e-chan\";\"other\"\n\"1785716\";\"Yun-ho-chen\";\"other\"\n\"1785716\";\"Yunhe\";\"other\"\n\"1785716\";\"Yün-ho\";\"other\"\n\"1785716\";\"Yün-ho-chen\";\"other\"\n\"1785716\";\"Yün-ho-ch’e-chan\";\"other\"\n\"1785719\";\"Yunhe\";\"main\"\n\"1785719\";\"Hao-ch'ing\";\"other\"\n\"1785719\";\"Hao-ch'ing-hsien\";\"other\"\n\"1785719\";\"Hao-ch’ing\";\"other\"\n\"1785719\";\"Hao-ch’ing-hsien\";\"other\"\n\"1785719\";\"Heqing\";\"other\"\n\"1785719\";\"Ho-ch'ing\";\"other\"\n\"1785719\";\"Ho-ch’ing\";\"other\"\n\"1785719\";\"Hoking\";\"other\"\n\"1785719\";\"Hoking-hsien\";\"other\"\n\"1785719\";\"yun he\";\"other\"\n\"1785719\";\"云鹤\";\"other\"\n\"1785725\";\"Yunfu\";\"main\"\n\"1785725\";\"Jun'fu\";\"other\"\n\"1785725\";\"Tung-an\";\"other\"\n\"1785725\";\"Wanfow\";\"other\"\n\"1785725\";\"Yun-ch'eng\";\"other\"\n\"1785725\";\"Yun-ch'eng-chen\";\"other\"\n\"1785725\";\"Yun-fou\";\"other\"\n\"1785725\";\"Yun-fou-hsien\";\"other\"\n\"1785725\";\"Yün-ch’eng\";\"other\"\n\"1785725\";\"Yün-ch’eng-chen\";\"other\"\n\"1785725\";\"Yün-fou\";\"other\"\n\"1785725\";\"Yün-fou-hsien\";\"other\"\n\"1785725\";\"Юньфу\";\"other\"\n\"1785725\";\"云浮\";\"other\"\n\"1785738\";\"Yuncheng\";\"main\"\n\"1785738\";\"An-i\";\"other\"\n\"1785738\";\"An-i-hsien\";\"other\"\n\"1785738\";\"Anyihsien\";\"other\"\n\"1785738\";\"Yun'chen\";\"other\"\n\"1785738\";\"Yun-ch'eng-chen\";\"other\"\n\"1785738\";\"Yun’chen\";\"other\"\n\"1785738\";\"Yün-ch’eng-chen\";\"other\"\n\"1785741\";\"Yuncao\";\"main\"\n\"1785741\";\"Ts'ao-yun\";\"other\"\n\"1785741\";\"Ts’ao-yün\";\"other\"\n\"1785741\";\"Yun-ts'ao\";\"other\"\n\"1785741\";\"Yun-ts'ao-chen\";\"other\"\n\"1785741\";\"Yun-ts'ao-ho\";\"other\"\n\"1785741\";\"Yuncao Zhen\";\"other\"\n\"1785741\";\"Yün-ts’ao\";\"other\"\n\"1785741\";\"Yün-ts’ao-chen\";\"other\"\n\"1785741\";\"Yün-ts’ao-ho\";\"other\"\n\"1785741\";\"yun cao\";\"other\"\n\"1785741\";\"yun cao zhen\";\"other\"\n\"1785741\";\"运漕\";\"other\"\n\"1785741\";\"运漕镇\";\"other\"\n\"1785766\";\"Yuling\";\"main\"\n\"1785766\";\"Yu-lin-ts'un\";\"other\"\n\"1785766\";\"Yuling Xiang\";\"other\"\n\"1785766\";\"Yü-lin-ts’un\";\"other\"\n\"1785766\";\"榆岭\";\"other\"\n\"1785766\";\"榆岭乡\";\"other\"\n\"1785777\";\"Yulin\";\"main\"\n\"1785777\";\"Yu-lin-hsien\";\"other\"\n\"1785777\";\"Yulinfu\";\"other\"\n\"1785777\";\"Yü-lin-hsien\";\"other\"\n\"1785781\";\"Yulin\";\"main\"\n\"1785781\";\"Watlam\";\"other\"\n\"1785781\";\"Watlam-hsien\";\"other\"\n\"1785781\";\"Yo-ling\";\"other\"\n\"1785781\";\"Yu-lin-chen\";\"other\"\n\"1785781\";\"Yu-lin-hsien\";\"other\"\n\"1785781\";\"Yü-lin-chen\";\"other\"\n\"1785781\";\"Yü-lin-hsien\";\"other\"\n\"1785800\";\"Yujing\";\"main\"\n\"1785800\";\"Wu-ching\";\"other\"\n\"1785800\";\"Yu-ching\";\"other\"\n\"1785800\";\"Yujing Zhen\";\"other\"\n\"1785800\";\"Yü-ching\";\"other\"\n\"1785800\";\"玉井\";\"other\"\n\"1785800\";\"玉井镇\";\"other\"\n\"1785802\";\"Yujin\";\"main\"\n\"1785802\";\"Yu-chin\";\"other\"\n\"1785802\";\"Yu-chin-chen\";\"other\"\n\"1785802\";\"Yu-chin-t'un\";\"other\"\n\"1785802\";\"Yujin Zhen\";\"other\"\n\"1785802\";\"Yü-chin\";\"other\"\n\"1785802\";\"Yü-chin-chen\";\"other\"\n\"1785802\";\"Yü-chin-t’un\";\"other\"\n\"1785802\";\"yu jin\";\"other\"\n\"1785802\";\"雨金\";\"other\"\n\"1785803\";\"Yujin\";\"main\"\n\"1785803\";\"Chien-wei\";\"other\"\n\"1785803\";\"Chien-wei-hsien\";\"other\"\n\"1785803\";\"Kienwei\";\"other\"\n\"1785803\";\"Kienwei-hsien\";\"other\"\n\"1785803\";\"Qianwei\";\"other\"\n\"1785803\";\"yu jin\";\"other\"\n\"1785803\";\"玉津\";\"other\"\n\"1785805\";\"Wulingyuan\";\"main\"\n\"1785805\";\"Wulingyuan Qu\";\"other\"\n\"1785805\";\"Yujiazui\";\"other\"\n\"1785805\";\"wu ling yuan\";\"other\"\n\"1785805\";\"wu ling yuan qu\";\"other\"\n\"1785805\";\"武陵源\";\"other\"\n\"1785805\";\"武陵源区\";\"other\"\n\"1785843\";\"Yuhuangmiao\";\"main\"\n\"1785843\";\"玉皇庙\";\"other\"\n\"1785858\";\"Yuguzhuang\";\"main\"\n\"1785866\";\"Yugan\";\"main\"\n\"1785866\";\"Yu-kan\";\"other\"\n\"1785866\";\"Yu-kan-chen\";\"other\"\n\"1785866\";\"Yu-kan-hsien\";\"other\"\n\"1785866\";\"Yu-kan-hsien-ch'eng\";\"other\"\n\"1785866\";\"Yugan Xian\";\"other\"\n\"1785866\";\"Yü-kan\";\"other\"\n\"1785866\";\"Yü-kan-chen\";\"other\"\n\"1785866\";\"Yü-kan-hsien\";\"other\"\n\"1785866\";\"Yü-kan-hsien-ch’eng\";\"other\"\n\"1785866\";\"余干\";\"other\"\n\"1785866\";\"余干县\";\"other\"\n\"1785871\";\"Yufang\";\"main\"\n\"1785871\";\"Yufang Xiang\";\"other\"\n\"1785871\";\"余坊\";\"other\"\n\"1785871\";\"余坊乡\";\"other\"\n\"1785882\";\"Yueyang\";\"main\"\n\"1785882\";\"An-tse\";\"other\"\n\"1785882\";\"An-tse-ch'eng\";\"other\"\n\"1785882\";\"An-tse-ch’eng\";\"other\"\n\"1785882\";\"An-tse-hsien\";\"other\"\n\"1785882\";\"Chiu-an-tse\";\"other\"\n\"1785882\";\"Guxian\";\"other\"\n\"1785882\";\"Ku-hsien\";\"other\"\n\"1785882\";\"Yueh-yang\";\"other\"\n\"1785882\";\"Yueh-yang-chen\";\"other\"\n\"1785882\";\"Yüeh-yang\";\"other\"\n\"1785882\";\"Yüeh-yang-chen\";\"other\"\n\"1785882\";\"yue yang\";\"other\"\n\"1785882\";\"岳阳\";\"other\"\n\"1785896\";\"Yuecheng\";\"main\"\n\"1785896\";\"Yueh-ch'un\";\"other\"\n\"1785896\";\"Yueh-chien\";\"other\"\n\"1785896\";\"Yueh-hsi\";\"other\"\n\"1785896\";\"Yueh-sui\";\"other\"\n\"1785896\";\"Yueh-sui-hsien\";\"other\"\n\"1785896\";\"Yuehsi\";\"other\"\n\"1785896\";\"Yuexi\";\"other\"\n\"1785896\";\"Yüeh-chien\";\"other\"\n\"1785896\";\"Yüeh-ch’ün\";\"other\"\n\"1785896\";\"Yüeh-hsi\";\"other\"\n\"1785896\";\"Yüeh-sui\";\"other\"\n\"1785896\";\"Yüeh-sui-hsien\";\"other\"\n\"1785896\";\"Yüehsi\";\"other\"\n\"1785896\";\"yue cheng\";\"other\"\n\"1785896\";\"越城\";\"other\"\n\"1785922\";\"Yuelai\";\"main\"\n\"1785922\";\"Yueh-lai\";\"other\"\n\"1785922\";\"Yueh-lai-chen\";\"other\"\n\"1785922\";\"Yuelai Zhen\";\"other\"\n\"1785922\";\"Yuelaizhen\";\"other\"\n\"1785922\";\"Yüeh-lai\";\"other\"\n\"1785922\";\"Yüeh-lai-chen\";\"other\"\n\"1785922\";\"悦来\";\"other\"\n\"1785922\";\"悦来镇\";\"other\"\n\"1785946\";\"Jiulong\";\"main\"\n\"1785946\";\"Iochi\";\"other\"\n\"1785946\";\"Yo-ch'ih\";\"other\"\n\"1785946\";\"Yo-ch’ih\";\"other\"\n\"1785946\";\"Yochih-hsien\";\"other\"\n\"1785946\";\"Yuechi\";\"other\"\n\"1785946\";\"Yueh-ch'ih\";\"other\"\n\"1785946\";\"Yueh-ch'ih-hsien\";\"other\"\n\"1785946\";\"Yüeh-ch’ih\";\"other\"\n\"1785946\";\"Yüeh-ch’ih-hsien\";\"other\"\n\"1785946\";\"jiu long\";\"other\"\n\"1785946\";\"九龙\";\"other\"\n\"1785961\";\"Yudongzi\";\"main\"\n\"1785961\";\"Yu-tung-tzu\";\"other\"\n\"1785961\";\"Yü-tung-tzu\";\"other\"\n\"1785961\";\"鱼洞子\";\"other\"\n\"1785963\";\"Yudong\";\"main\"\n\"1785963\";\"Yu-tung\";\"other\"\n\"1785963\";\"Yu-tung-chen\";\"other\"\n\"1785963\";\"Yudong Zhen\";\"other\"\n\"1785963\";\"Yutungchang\";\"other\"\n\"1785963\";\"Yü-tung\";\"other\"\n\"1785963\";\"Yü-tung-chen\";\"other\"\n\"1785963\";\"余东\";\"other\"\n\"1785963\";\"余东镇\";\"other\"\n\"1785964\";\"Yudong\";\"main\"\n\"1785964\";\"Baxian\";\"other\"\n\"1785964\";\"Chi-chia-t'o\";\"other\"\n\"1785964\";\"Chi-chia-t’o\";\"other\"\n\"1785964\";\"Jujdun\";\"other\"\n\"1785964\";\"Pa\";\"other\"\n\"1785964\";\"Pa-hsien\";\"other\"\n\"1785964\";\"Yu-tung-ch'i\";\"other\"\n\"1785964\";\"Yu-tung-chen\";\"other\"\n\"1785964\";\"Yu-tung-hsi\";\"other\"\n\"1785964\";\"Yudongxi\";\"other\"\n\"1785964\";\"Yü-tung-chen\";\"other\"\n\"1785964\";\"Yü-tung-ch’i\";\"other\"\n\"1785964\";\"Yü-tung-hsi\";\"other\"\n\"1785964\";\"Юйдун\";\"other\"\n\"1785974\";\"Yuci\";\"main\"\n\"1785974\";\"Yu-tz'u\";\"other\"\n\"1785974\";\"Yu-tz'u-hsien\";\"other\"\n\"1785974\";\"Yu-tz'u-shih\";\"other\"\n\"1785974\";\"Yutzehsien\";\"other\"\n\"1785974\";\"Yü-tz’u\";\"other\"\n\"1785974\";\"Yü-tz’u-hsien\";\"other\"\n\"1785974\";\"Yü-tz’u-shih\";\"other\"\n\"1785974\";\"Yützehsien\";\"other\"\n\"1785980\";\"Yucheng\";\"main\"\n\"1785980\";\"Chiu-yu-t'ai\";\"other\"\n\"1785980\";\"Chiu-yü-t’ai\";\"other\"\n\"1785980\";\"Hitaihsien\";\"other\"\n\"1785980\";\"Jujchehn\";\"other\"\n\"1785980\";\"Yu-t'ai\";\"other\"\n\"1785980\";\"Yu-t'ai-hsien\";\"other\"\n\"1785980\";\"Yü-t’ai\";\"other\"\n\"1785980\";\"Yü-t’ai-hsien\";\"other\"\n\"1785980\";\"Юйчэн\";\"other\"\n\"1785998\";\"Yuanzhou\";\"main\"\n\"1785998\";\"Yuanzhou Zhen\";\"other\"\n\"1785998\";\"yuan zhou\";\"other\"\n\"1785998\";\"园洲\";\"other\"\n\"1786039\";\"Yuantan\";\"main\"\n\"1786039\";\"Yuan-t'an-hsu\";\"other\"\n\"1786039\";\"Yuan-t’an-hsü\";\"other\"\n\"1786039\";\"Yuantan Zhen\";\"other\"\n\"1786039\";\"yuan tan\";\"other\"\n\"1786039\";\"源潭\";\"other\"\n\"1786050\";\"Yuanshan\";\"main\"\n\"1786050\";\"Lianping\";\"other\"\n\"1786050\";\"Lien-p'ing\";\"other\"\n\"1786050\";\"Lien-p'ing-hsien\";\"other\"\n\"1786050\";\"Lien-p’ing\";\"other\"\n\"1786050\";\"Lien-p’ing-hsien\";\"other\"\n\"1786050\";\"Lin-ping\";\"other\"\n\"1786050\";\"Linping-hsien\";\"other\"\n\"1786050\";\"Linpingchow\";\"other\"\n\"1786050\";\"yuan shan\";\"other\"\n\"1786050\";\"元善\";\"other\"\n\"1786052\";\"Yuanren\";\"main\"\n\"1786052\";\"Yuan-jen\";\"other\"\n\"1786052\";\"Yuan-jen-chia\";\"other\"\n\"1786052\";\"Yüan-jen\";\"other\"\n\"1786052\";\"Yüan-jen-chia\";\"other\"\n\"1786052\";\"yuan ren\";\"other\"\n\"1786052\";\"原任\";\"other\"\n\"1786060\";\"Yuanping\";\"main\"\n\"1786063\";\"Yuanma\";\"main\"\n\"1786063\";\"Ma-chieh\";\"other\"\n\"1786063\";\"Makai\";\"other\"\n\"1786063\";\"Yuan-mou-hsien\";\"other\"\n\"1786063\";\"Yuanmou\";\"other\"\n\"1786063\";\"Yuanmow\";\"other\"\n\"1786063\";\"Yuanmow-hsien\";\"other\"\n\"1786063\";\"Yüan-mou-hsien\";\"other\"\n\"1786063\";\"Yüanmow\";\"other\"\n\"1786063\";\"Yüanmow-hsien\";\"other\"\n\"1786063\";\"yuan ma\";\"other\"\n\"1786063\";\"元马\";\"other\"\n\"1786066\";\"Yuanling\";\"main\"\n\"1786066\";\"Ch'en-chou\";\"other\"\n\"1786066\";\"Ch’en-chou\";\"other\"\n\"1786066\";\"Shenchow\";\"other\"\n\"1786066\";\"Shenchowfu\";\"other\"\n\"1786066\";\"Yuan-ling-hsien\";\"other\"\n\"1786066\";\"Yüan-ling-hsien\";\"other\"\n\"1786066\";\"yuan ling\";\"other\"\n\"1786066\";\"沅陵\";\"other\"\n\"1786067\";\"Yuanlin\";\"main\"\n\"1786067\";\"Ch'ien-chiang\";\"other\"\n\"1786067\";\"Ch'ien-chiang-hsien\";\"other\"\n\"1786067\";\"Chien-kou\";\"other\"\n\"1786067\";\"Ch’ien-chiang\";\"other\"\n\"1786067\";\"Ch’ien-chiang-hsien\";\"other\"\n\"1786067\";\"Juan'lin'\";\"other\"\n\"1786067\";\"Qianjiang\";\"other\"\n\"1786067\";\"Tsienkiang\";\"other\"\n\"1786067\";\"Юаньлинь\";\"other\"\n\"1786071\";\"Yuankeng\";\"main\"\n\"1786071\";\"Yuankeng Zhen\";\"other\"\n\"1786071\";\"元坑\";\"other\"\n\"1786071\";\"元坑镇\";\"other\"\n\"1786092\";\"Yuanguping\";\"main\"\n\"1786092\";\"Yuanguping Zhen\";\"other\"\n\"1786092\";\"yuan gu ping\";\"other\"\n\"1786092\";\"yuan gu ping zhen\";\"other\"\n\"1786092\";\"沅古坪\";\"other\"\n\"1786092\";\"沅古坪镇\";\"other\"\n\"1786099\";\"Yuandun\";\"main\"\n\"1786099\";\"Chiu-tun-tzu\";\"other\"\n\"1786099\";\"Yuan-tun\";\"other\"\n\"1786099\";\"Yuan-tun-tzu\";\"other\"\n\"1786099\";\"Yuandun Zhen\";\"other\"\n\"1786099\";\"Yuandunzi\";\"other\"\n\"1786099\";\"Yüan-tun\";\"other\"\n\"1786099\";\"Yüan-tun-tzu\";\"other\"\n\"1786099\";\"元墩\";\"other\"\n\"1786099\";\"元墩镇\";\"other\"\n\"1786110\";\"Yuancheng\";\"main\"\n\"1786110\";\"Yuancheng Xiang\";\"other\"\n\"1786110\";\"元城\";\"other\"\n\"1786110\";\"元城乡\";\"other\"\n\"1786112\";\"Heyuan\";\"main\"\n\"1786112\";\"Ho-yuan\";\"other\"\n\"1786112\";\"Ho-yuan-hsien\";\"other\"\n\"1786112\";\"Ho-yüan\";\"other\"\n\"1786112\";\"Ho-yüan-hsien\";\"other\"\n\"1786112\";\"Hoyun\";\"other\"\n\"1786112\";\"Hoyunhsien\";\"other\"\n\"1786112\";\"Hoyün\";\"other\"\n\"1786112\";\"Yuancheng\";\"other\"\n\"1786112\";\"河源\";\"other\"\n\"1786113\";\"Yuanbuzi\";\"main\"\n\"1786113\";\"Yuan-pao-tzu\";\"other\"\n\"1786113\";\"Yuanbuzi Zhen\";\"other\"\n\"1786113\";\"Yüan-pao-tzu\";\"other\"\n\"1786113\";\"元堡子\";\"other\"\n\"1786113\";\"元堡子镇\";\"other\"\n\"1786119\";\"Yuanba\";\"main\"\n\"1786119\";\"yuan ba\";\"other\"\n\"1786119\";\"元坝\";\"other\"\n\"1786125\";\"Youzha\";\"main\"\n\"1786125\";\"Youzha Zhen\";\"other\"\n\"1786125\";\"Youzhazhen\";\"other\"\n\"1786125\";\"油榨\";\"other\"\n\"1786125\";\"油榨镇\";\"other\"\n\"1786129\";\"Youzhadi\";\"main\"\n\"1786129\";\"Xiyi\";\"other\"\n\"1786129\";\"Xiyi Zhen\";\"other\"\n\"1786129\";\"xi yi zhen\";\"other\"\n\"1786129\";\"you zha\";\"other\"\n\"1786129\";\"油榨\";\"other\"\n\"1786129\";\"西一镇\";\"other\"\n\"1786131\";\"Youzai\";\"main\"\n\"1786131\";\"Youzhai Zhen\";\"other\"\n\"1786131\";\"Yu-tsai\";\"other\"\n\"1786131\";\"Yu-tsai-pao\";\"other\"\n\"1786131\";\"友宰\";\"other\"\n\"1786131\";\"友宰镇\";\"other\"\n\"1786141\";\"Youxian Chengguanzhen\";\"main\"\n\"1786141\";\"Youxian\";\"other\"\n\"1786141\";\"Yu\";\"other\"\n\"1786141\";\"Yu-hsien\";\"other\"\n\"1786141\";\"Yu-hsien-ch'eng\";\"other\"\n\"1786141\";\"Yu-hsien-ch’eng\";\"other\"\n\"1786141\";\"you xian cheng guan zhen\";\"other\"\n\"1786141\";\"攸县城关镇\";\"other\"\n\"1786148\";\"Youxi Chengguanzhen\";\"main\"\n\"1786148\";\"Youxi\";\"other\"\n\"1786148\";\"Yu-ch'i\";\"other\"\n\"1786148\";\"Yu-ch'i-hsien\";\"other\"\n\"1786148\";\"Yu-ch'i-hsien-ch'eng\";\"other\"\n\"1786148\";\"Yu-ch’i\";\"other\"\n\"1786148\";\"Yu-ch’i-hsien\";\"other\"\n\"1786148\";\"Yu-ch’i-hsien-ch’eng\";\"other\"\n\"1786148\";\"Yu-hsi\";\"other\"\n\"1786148\";\"Yuki\";\"other\"\n\"1786148\";\"Yukihsien\";\"other\"\n\"1786148\";\"you xi cheng guan zhen\";\"other\"\n\"1786148\";\"尤溪城关镇\";\"other\"\n\"1786169\";\"Youlan\";\"main\"\n\"1786169\";\"Youlan Zhen\";\"other\"\n\"1786169\";\"Yu-lan\";\"other\"\n\"1786169\";\"Yu-lan-shih\";\"other\"\n\"1786169\";\"幽兰\";\"other\"\n\"1786169\";\"幽兰镇\";\"other\"\n\"1786182\";\"Youguzhuang\";\"main\"\n\"1786182\";\"Hsi-lung-ko-chuang\";\"other\"\n\"1786244\";\"Yongxing\";\"main\"\n\"1786244\";\"Yongxing Zhen\";\"other\"\n\"1786244\";\"Yung-hsing\";\"other\"\n\"1786244\";\"yong xing\";\"other\"\n\"1786244\";\"yong xing zhen\";\"other\"\n\"1786244\";\"永兴\";\"other\"\n\"1786244\";\"永兴镇\";\"other\"\n\"1786247\";\"Yongxing Chengguanzhen\";\"main\"\n\"1786247\";\"Yongxing\";\"other\"\n\"1786247\";\"Yung-hsin\";\"other\"\n\"1786247\";\"Yung-hsing\";\"other\"\n\"1786247\";\"Yung-hsing-hsien\";\"other\"\n\"1786247\";\"Yung-hsing-hsien-ch'eng\";\"other\"\n\"1786247\";\"Yung-hsing-hsien-ch’eng\";\"other\"\n\"1786247\";\"Yunghing\";\"other\"\n\"1786247\";\"Yunghing-hsien\";\"other\"\n\"1786247\";\"yong xing cheng guan zhen\";\"other\"\n\"1786247\";\"永兴城关镇\";\"other\"\n\"1786257\";\"Yongtai\";\"main\"\n\"1786257\";\"Yung-t'ai\";\"other\"\n\"1786257\";\"Yung-t’ai\";\"other\"\n\"1786257\";\"yong tai\";\"other\"\n\"1786257\";\"永太\";\"other\"\n\"1786288\";\"Yongning\";\"main\"\n\"1786288\";\"永宁\";\"other\"\n\"1786293\";\"Yongning\";\"main\"\n\"1786293\";\"Yung-ning\";\"other\"\n\"1786306\";\"Yongle\";\"main\"\n\"1786306\";\"Yongle Zhen\";\"other\"\n\"1786306\";\"Yongledian\";\"other\"\n\"1786306\";\"Yung-le-chen\";\"other\"\n\"1786306\";\"Yung-le-tien\";\"other\"\n\"1786306\";\"Yung-lo-chen\";\"other\"\n\"1786306\";\"yong le\";\"other\"\n\"1786306\";\"yong le zhen\";\"other\"\n\"1786306\";\"永乐\";\"other\"\n\"1786306\";\"永乐镇\";\"other\"\n\"1786334\";\"Yonghe\";\"main\"\n\"1786334\";\"Yonghecun\";\"other\"\n\"1786336\";\"Zhihe\";\"main\"\n\"1786336\";\"Yonghe\";\"other\"\n\"1786336\";\"Yung-ho\";\"other\"\n\"1786336\";\"Yung-ho-hsien\";\"other\"\n\"1786336\";\"Yung-ho-hsien-ch'eng\";\"other\"\n\"1786336\";\"Yung-ho-hsien-ch’eng\";\"other\"\n\"1786336\";\"Yunghwohsien\";\"other\"\n\"1786336\";\"Yunkhe\";\"other\"\n\"1786336\";\"zhi he\";\"other\"\n\"1786336\";\"芝河\";\"other\"\n\"1786343\";\"Yonghe\";\"main\"\n\"1786343\";\"Yonghe Zhen\";\"other\"\n\"1786343\";\"yong he\";\"other\"\n\"1786343\";\"永和\";\"other\"\n\"1786344\";\"Yonghan\";\"main\"\n\"1786344\";\"Yonghan Zhen\";\"other\"\n\"1786344\";\"Yung-han\";\"other\"\n\"1786344\";\"Yung-han-hsu\";\"other\"\n\"1786344\";\"Yung-han-hsü\";\"other\"\n\"1786344\";\"yong han\";\"other\"\n\"1786344\";\"永汉\";\"other\"\n\"1786351\";\"Yongfu\";\"main\"\n\"1786351\";\"Yung-fu\";\"other\"\n\"1786351\";\"Yung-fu-chen\";\"other\"\n\"1786351\";\"Yung-fu-hsien\";\"other\"\n\"1786351\";\"yong fu\";\"other\"\n\"1786351\";\"永福\";\"other\"\n\"1786354\";\"Yongfeng\";\"main\"\n\"1786354\";\"Yongfeng Zhen\";\"other\"\n\"1786354\";\"Yung-feng\";\"other\"\n\"1786354\";\"Yung-feng-chen\";\"other\"\n\"1786354\";\"yong feng\";\"other\"\n\"1786354\";\"永丰\";\"other\"\n\"1786356\";\"Yongfeng\";\"main\"\n\"1786356\";\"Guangfeng\";\"other\"\n\"1786356\";\"Kuang-feng\";\"other\"\n\"1786356\";\"Kuang-feng-hsien\";\"other\"\n\"1786356\";\"Kuang-feng-hsien-ch'eng\";\"other\"\n\"1786356\";\"Kuang-feng-hsien-ch’eng\";\"other\"\n\"1786356\";\"Kwangfeng\";\"other\"\n\"1786356\";\"Kwangfeng-hsien\";\"other\"\n\"1786356\";\"Yongfeng Xiang\";\"other\"\n\"1786356\";\"yong feng\";\"other\"\n\"1786356\";\"yong feng xiang\";\"other\"\n\"1786356\";\"永丰\";\"other\"\n\"1786356\";\"永丰乡\";\"other\"\n\"1786357\";\"Yongfeng\";\"main\"\n\"1786357\";\"Shuangfeng\";\"other\"\n\"1786357\";\"Yung-feng\";\"other\"\n\"1786357\";\"Yung-feng-chen\";\"other\"\n\"1786357\";\"Yung-feng-shih\";\"other\"\n\"1786357\";\"Yungfengsze\";\"other\"\n\"1786357\";\"永丰\";\"other\"\n\"1786364\";\"Yongding\";\"main\"\n\"1786364\";\"Chu-chueh\";\"other\"\n\"1786364\";\"Chuchih\";\"other\"\n\"1786364\";\"Chucho\";\"other\"\n\"1786364\";\"Chü-chüeh\";\"other\"\n\"1786364\";\"Yongren\";\"other\"\n\"1786364\";\"Yung-jen\";\"other\"\n\"1786364\";\"Yung-jen-hsien\";\"other\"\n\"1786364\";\"Yung-ting-chen\";\"other\"\n\"1786364\";\"yong ding\";\"other\"\n\"1786364\";\"永定\";\"other\"\n\"1786365\";\"Yongding\";\"main\"\n\"1786365\";\"Fu-min-hsien\";\"other\"\n\"1786365\";\"yong ding\";\"other\"\n\"1786365\";\"永定\";\"other\"\n\"1786370\";\"Taocheng\";\"main\"\n\"1786370\";\"Yongchun\";\"other\"\n\"1786370\";\"Yung-ch'un\";\"other\"\n\"1786370\";\"Yung-ch'un-hsien\";\"other\"\n\"1786370\";\"Yung-ch’un\";\"other\"\n\"1786370\";\"Yung-ch’un-hsien\";\"other\"\n\"1786370\";\"tao cheng\";\"other\"\n\"1786370\";\"桃城\";\"other\"\n\"1786378\";\"Yongchuan\";\"main\"\n\"1786378\";\"Jungchunghsien\";\"other\"\n\"1786378\";\"Yongchang\";\"other\"\n\"1786378\";\"Yung-ch'uan\";\"other\"\n\"1786378\";\"Yung-ch'uan-hsien\";\"other\"\n\"1786378\";\"Yung-ch’uan\";\"other\"\n\"1786378\";\"Yung-ch’uan-hsien\";\"other\"\n\"1786378\";\"Yungchwan\";\"other\"\n\"1786378\";\"Yungchwan-hsien\";\"other\"\n\"1786382\";\"Yongbei\";\"main\"\n\"1786382\";\"Yongsheng\";\"other\"\n\"1786382\";\"Yung-pei\";\"other\"\n\"1786382\";\"Yung-shen\";\"other\"\n\"1786382\";\"Yung-sheng\";\"other\"\n\"1786382\";\"Yung-sheng-chen\";\"other\"\n\"1786382\";\"Yung-sheng-hsien\";\"other\"\n\"1786382\";\"Yungpeh\";\"other\"\n\"1786382\";\"Yungpeh-hsien\";\"other\"\n\"1786382\";\"yong bei\";\"other\"\n\"1786382\";\"永北\";\"other\"\n\"1786412\";\"Yizhang Chengguanzhen\";\"main\"\n\"1786412\";\"I-chang\";\"other\"\n\"1786412\";\"I-chang-hsien\";\"other\"\n\"1786412\";\"Ichung\";\"other\"\n\"1786412\";\"Yizhang\";\"other\"\n\"1786412\";\"yi zhang cheng guan zhen\";\"other\"\n\"1786412\";\"宜章城关镇\";\"other\"\n\"1786430\";\"Yixi\";\"main\"\n\"1786430\";\"I-hsi\";\"other\"\n\"1786430\";\"Yixi Zhen\";\"other\"\n\"1786430\";\"yi xi\";\"other\"\n\"1786430\";\"意溪\";\"other\"\n\"1786449\";\"Yisuhe\";\"main\"\n\"1786449\";\"I-su-ho\";\"other\"\n\"1786449\";\"yi su he\";\"other\"\n\"1786449\";\"易俗河\";\"other\"\n\"1786455\";\"Yishui\";\"main\"\n\"1786455\";\"I-shui\";\"other\"\n\"1786455\";\"I-shui-hsien\";\"other\"\n\"1786457\";\"Yishi\";\"main\"\n\"1786457\";\"I-shih-chieh\";\"other\"\n\"1786457\";\"Yishi Zhen\";\"other\"\n\"1786457\";\"Yishijie\";\"other\"\n\"1786457\";\"yi shi\";\"other\"\n\"1786457\";\"一市\";\"other\"\n\"1786457\";\"一市镇\";\"other\"\n\"1786458\";\"Yishi\";\"main\"\n\"1786458\";\"I-shih\";\"other\"\n\"1786458\";\"I-shih-ch'eng\";\"other\"\n\"1786458\";\"I-shih-chen\";\"other\"\n\"1786458\";\"I-shih-ch’eng\";\"other\"\n\"1786458\";\"I-shih-hsien\";\"other\"\n\"1786458\";\"Ishi\";\"other\"\n\"1786458\";\"Lin-i\";\"other\"\n\"1786458\";\"Lin-i-hsien\";\"other\"\n\"1786458\";\"Linyi\";\"other\"\n\"1786458\";\"yi shi\";\"other\"\n\"1786458\";\"猗氏\";\"other\"\n\"1786467\";\"Yisa\";\"main\"\n\"1786467\";\"Honghe\";\"other\"\n\"1786467\";\"Hung-ho\";\"other\"\n\"1786467\";\"I-sa\";\"other\"\n\"1786467\";\"I-sa-chen\";\"other\"\n\"1786467\";\"Yisa Zhen\";\"other\"\n\"1786467\";\"Yisha\";\"other\"\n\"1786467\";\"yi sa\";\"other\"\n\"1786467\";\"迤萨\";\"other\"\n\"1786469\";\"Yirong\";\"main\"\n\"1786469\";\"Yirong Zhen\";\"other\"\n\"1786469\";\"义容\";\"other\"\n\"1786469\";\"义容镇\";\"other\"\n\"1786485\";\"Yinzhen\";\"main\"\n\"1786485\";\"Yin-chen\";\"other\"\n\"1786485\";\"Yin-chia-hui\";\"other\"\n\"1786485\";\"Yin-chia-hui-chen\";\"other\"\n\"1786485\";\"Yinjiahui\";\"other\"\n\"1786485\";\"yin zhen\";\"other\"\n\"1786485\";\"引镇\";\"other\"\n\"1786499\";\"Yintang\";\"main\"\n\"1786499\";\"Yintang Zhen\";\"other\"\n\"1786499\";\"yin tang\";\"other\"\n\"1786499\";\"yin tang zhen\";\"other\"\n\"1786499\";\"银塘\";\"other\"\n\"1786499\";\"银塘镇\";\"other\"\n\"1786517\";\"Yinliu\";\"main\"\n\"1786519\";\"Yinkeng\";\"main\"\n\"1786519\";\"Yinkang\";\"other\"\n\"1786519\";\"Yinkeng Zhen\";\"other\"\n\"1786519\";\"银坑\";\"other\"\n\"1786519\";\"银坑镇\";\"other\"\n\"1786525\";\"Yinjiang\";\"main\"\n\"1786525\";\"Yin-chiang\";\"other\"\n\"1786525\";\"Yin-chiang-chiao\";\"other\"\n\"1786525\";\"Yinjiang Zhen\";\"other\"\n\"1786525\";\"yin jiang\";\"other\"\n\"1786525\";\"yin jiang zhen\";\"other\"\n\"1786525\";\"鄞江\";\"other\"\n\"1786525\";\"鄞江镇\";\"other\"\n\"1786531\";\"Yinjiacheng\";\"main\"\n\"1786531\";\"Yinjiacheng Xiang\";\"other\"\n\"1786531\";\"殷家城\";\"other\"\n\"1786531\";\"殷家城乡\";\"other\"\n\"1786535\";\"Yinji\";\"main\"\n\"1786535\";\"Yinji Zhen\";\"other\"\n\"1786535\";\"yin ji\";\"other\"\n\"1786535\";\"尹集\";\"other\"\n\"1786546\";\"Zhongxiang\";\"main\"\n\"1786546\";\"An-lu\";\"other\"\n\"1786546\";\"Anlufu\";\"other\"\n\"1786546\";\"Chung-hsiang\";\"other\"\n\"1786546\";\"Chung-hsiang-hsien\";\"other\"\n\"1786546\";\"Chungsiang\";\"other\"\n\"1786546\";\"Yingzhong\";\"other\"\n\"1786559\";\"Jincheng\";\"main\"\n\"1786559\";\"Insyan'\";\"other\"\n\"1786559\";\"Insyan’\";\"other\"\n\"1786559\";\"Jincheng Zhen\";\"other\"\n\"1786559\";\"Ying\";\"other\"\n\"1786559\";\"Ying Xian\";\"other\"\n\"1786559\";\"Ying-hsien\";\"other\"\n\"1786559\";\"Yingchow\";\"other\"\n\"1786559\";\"jin cheng\";\"other\"\n\"1786559\";\"应县\";\"other\"\n\"1786559\";\"金城\";\"other\"\n\"1786559\";\"金城镇\";\"other\"\n\"1786572\";\"Yingtou\";\"main\"\n\"1786572\";\"Hsia-ying-t'ou\";\"other\"\n\"1786572\";\"Hsia-ying-t’ou\";\"other\"\n\"1786572\";\"Yingtou Zhen\";\"other\"\n\"1786572\";\"营头\";\"other\"\n\"1786572\";\"营头镇\";\"other\"\n\"1786587\";\"Yingshang Chengguanzhen\";\"main\"\n\"1786587\";\"Yin-shang\";\"other\"\n\"1786587\";\"Ying-shang-hsien\";\"other\"\n\"1786587\";\"Yingshang\";\"other\"\n\"1786587\";\"颖上城关镇\";\"other\"\n\"1786590\";\"Yingqiao\";\"main\"\n\"1786590\";\"Yingqiao Huizuzhen\";\"other\"\n\"1786590\";\"ying qiao\";\"other\"\n\"1786590\";\"ying qiao hui zu zhen\";\"other\"\n\"1786590\";\"颍桥\";\"other\"\n\"1786590\";\"颍桥回族镇\";\"other\"\n\"1786630\";\"Yingdu\";\"main\"\n\"1786630\";\"Ying-nei\";\"other\"\n\"1786630\";\"Ying-tu\";\"other\"\n\"1786632\";\"Yingdianjie\";\"main\"\n\"1786632\";\"Yingdianjie Zhen\";\"other\"\n\"1786632\";\"ying dian jie\";\"other\"\n\"1786632\";\"ying dian jie zhen\";\"other\"\n\"1786632\";\"应店街\";\"other\"\n\"1786632\";\"应店街镇\";\"other\"\n\"1786634\";\"Yingcheng\";\"main\"\n\"1786634\";\"Ying-te\";\"other\"\n\"1786634\";\"Ying-te-hsien\";\"other\"\n\"1786634\";\"Yingde\";\"other\"\n\"1786634\";\"Yingtak\";\"other\"\n\"1786634\";\"Yingtak-hsien\";\"other\"\n\"1786634\";\"ying cheng\";\"other\"\n\"1786634\";\"英城\";\"other\"\n\"1786640\";\"Yingcheng\";\"main\"\n\"1786640\";\"Ying-ch'eng-hsien\";\"other\"\n\"1786640\";\"Ying-ch’eng-hsien\";\"other\"\n\"1786657\";\"Yinchuan\";\"main\"\n\"1786657\";\"Ho-lan\";\"other\"\n\"1786657\";\"In'chuan'\";\"other\"\n\"1786657\";\"Ngan Xuyen\";\"other\"\n\"1786657\";\"Ngân Xuyên\";\"other\"\n\"1786657\";\"Ning-hsia\";\"other\"\n\"1786657\";\"Ningsia\";\"other\"\n\"1786657\";\"Ningsia-hsien\";\"other\"\n\"1786657\";\"Ningsiafu\";\"other\"\n\"1786657\";\"Thanh pho Ngan Xuyen\";\"other\"\n\"1786657\";\"Thành phố Ngân Xuyên\";\"other\"\n\"1786657\";\"Yin-ch'uan-shih\";\"other\"\n\"1786657\";\"Yin-ch’uan-shih\";\"other\"\n\"1786657\";\"Yinchuan Shi\";\"other\"\n\"1786657\";\"yin chuan\";\"other\"\n\"1786657\";\"yin chuan shi\";\"other\"\n\"1786657\";\"Иньчуань\";\"other\"\n\"1786657\";\"銀川\";\"other\"\n\"1786657\";\"银川\";\"other\"\n\"1786657\";\"银川市\";\"other\"\n\"1786676\";\"Yima\";\"main\"\n\"1786676\";\"I-ma\";\"other\"\n\"1786676\";\"Jimy\";\"other\"\n\"1786676\";\"Йимы\";\"other\"\n\"1786696\";\"Yijing\";\"main\"\n\"1786696\";\"I-ching\";\"other\"\n\"1786696\";\"I-ching-ts'un\";\"other\"\n\"1786696\";\"I-ching-ts’un\";\"other\"\n\"1786696\";\"Yijing Xiang\";\"other\"\n\"1786696\";\"义井\";\"other\"\n\"1786696\";\"义井乡\";\"other\"\n\"1786697\";\"Yijing\";\"main\"\n\"1786697\";\"I-ching\";\"other\"\n\"1786697\";\"I-ching-chen\";\"other\"\n\"1786697\";\"Itsing\";\"other\"\n\"1786697\";\"Yijing Zhen\";\"other\"\n\"1786697\";\"义井\";\"other\"\n\"1786697\";\"义井镇\";\"other\"\n\"1786702\";\"Yijing\";\"main\"\n\"1786702\";\"Chin-t'ou-chen\";\"other\"\n\"1786702\";\"Chin-t’ou-chen\";\"other\"\n\"1786702\";\"I-ching\";\"other\"\n\"1786702\";\"I-ching-chen\";\"other\"\n\"1786702\";\"Yijing Zhen\";\"other\"\n\"1786702\";\"yi jing\";\"other\"\n\"1786702\";\"yi jing zhen\";\"other\"\n\"1786702\";\"义井\";\"other\"\n\"1786702\";\"义井镇\";\"other\"\n\"1786720\";\"Yigou\";\"main\"\n\"1786720\";\"I-kou\";\"other\"\n\"1786720\";\"I-kou-chen\";\"other\"\n\"1786720\";\"I-kou-i\";\"other\"\n\"1786720\";\"Igoui\";\"other\"\n\"1786731\";\"Qingzhou\";\"main\"\n\"1786731\";\"Ch'ing-chou\";\"other\"\n\"1786731\";\"Ch’ing-chou\";\"other\"\n\"1786731\";\"Cinchzhou\";\"other\"\n\"1786731\";\"I-tu\";\"other\"\n\"1786731\";\"I-tu-hsien\";\"other\"\n\"1786731\";\"Tsingchow\";\"other\"\n\"1786731\";\"Tsingchowfu\";\"other\"\n\"1786731\";\"Yidu\";\"other\"\n\"1786731\";\"Yitu\";\"other\"\n\"1786731\";\"Цинчжоу\";\"other\"\n\"1786738\";\"Yidian\";\"main\"\n\"1786738\";\"I-tien\";\"other\"\n\"1786738\";\"I-tien-chen\";\"other\"\n\"1786738\";\"P'en-tien-chen\";\"other\"\n\"1786738\";\"P’en-tien-chen\";\"other\"\n\"1786738\";\"Yidian Zhen\";\"other\"\n\"1786738\";\"益店\";\"other\"\n\"1786738\";\"益店镇\";\"other\"\n\"1786746\";\"Yichun\";\"main\"\n\"1786746\";\"I-ch'un\";\"other\"\n\"1786746\";\"I-ch'un-chen\";\"other\"\n\"1786746\";\"I-ch'un-hsien\";\"other\"\n\"1786746\";\"I-ch’un\";\"other\"\n\"1786746\";\"I-ch’un-chen\";\"other\"\n\"1786746\";\"I-ch’un-hsien\";\"other\"\n\"1786746\";\"Ichun'\";\"other\"\n\"1786746\";\"Yuan-chou\";\"other\"\n\"1786746\";\"Yuanchow\";\"other\"\n\"1786746\";\"Yuen-chow-fu\";\"other\"\n\"1786746\";\"Yüan-chou\";\"other\"\n\"1786746\";\"Yüanchow\";\"other\"\n\"1786746\";\"Ичунь\";\"other\"\n\"1786751\";\"Yichongqiao\";\"main\"\n\"1786751\";\"Yichongqiao Xiang\";\"other\"\n\"1786751\";\"yi chong qiao\";\"other\"\n\"1786751\";\"yi chong qiao xiang\";\"other\"\n\"1786751\";\"宜冲桥\";\"other\"\n\"1786751\";\"宜冲桥乡\";\"other\"\n\"1786756\";\"Tangxing\";\"main\"\n\"1786756\";\"I-ch'eng\";\"other\"\n\"1786756\";\"I-ch'eng-hsien\";\"other\"\n\"1786756\";\"I-ch’eng\";\"other\"\n\"1786756\";\"I-ch’eng-hsien\";\"other\"\n\"1786756\";\"Yicheng\";\"other\"\n\"1786756\";\"Yichenghsien\";\"other\"\n\"1786756\";\"tang xing\";\"other\"\n\"1786756\";\"唐兴\";\"other\"\n\"1786759\";\"Yicheng\";\"main\"\n\"1786759\";\"Hsuan-ch'eng\";\"other\"\n\"1786759\";\"Hsüan-ch’eng\";\"other\"\n\"1786759\";\"I-ch'eng\";\"other\"\n\"1786759\";\"I-ch'eng-hsien\";\"other\"\n\"1786759\";\"I-ch’eng\";\"other\"\n\"1786759\";\"I-ch’eng-hsien\";\"other\"\n\"1786759\";\"Tzu-chung\";\"other\"\n\"1786759\";\"Tzu-chung-hsien\";\"other\"\n\"1786760\";\"Yicheng\";\"main\"\n\"1786760\";\"I-ch'eng-chen\";\"other\"\n\"1786760\";\"I-ch’eng-chen\";\"other\"\n\"1786760\";\"I-hsing\";\"other\"\n\"1786760\";\"I-hsing-ch'eng\";\"other\"\n\"1786760\";\"I-hsing-ch’eng\";\"other\"\n\"1786760\";\"I-hsing-hsien\";\"other\"\n\"1786760\";\"Ihing\";\"other\"\n\"1786760\";\"Yixing\";\"other\"\n\"1786760\";\"宜城\";\"other\"\n\"1786764\";\"Yichang\";\"main\"\n\"1786764\";\"I-ch'ang-hsien\";\"other\"\n\"1786764\";\"I-ch'ang-shih\";\"other\"\n\"1786764\";\"I-chang\";\"other\"\n\"1786764\";\"I-ch’ang-hsien\";\"other\"\n\"1786764\";\"I-ch’ang-shih\";\"other\"\n\"1786764\";\"Ichan\";\"other\"\n\"1786764\";\"Tung-hu\";\"other\"\n\"1786764\";\"yi chang shi\";\"other\"\n\"1786764\";\"Ичан\";\"other\"\n\"1786764\";\"يىچاڭ شەھىرى\";\"other\"\n\"1786764\";\"宜昌市\";\"other\"\n\"1786770\";\"Yibin\";\"main\"\n\"1786770\";\"Hsu-chou\";\"other\"\n\"1786770\";\"Hsü-chou\";\"other\"\n\"1786770\";\"I-pin\";\"other\"\n\"1786770\";\"I-pin-hsien\";\"other\"\n\"1786770\";\"I-pin-shih\";\"other\"\n\"1786770\";\"Ibin'\";\"other\"\n\"1786770\";\"Suchow\";\"other\"\n\"1786770\";\"Suifu\";\"other\"\n\"1786770\";\"Süchow\";\"other\"\n\"1786770\";\"Ибинь\";\"other\"\n\"1786770\";\"宜宾\";\"other\"\n\"1786778\";\"Yezhou\";\"main\"\n\"1786778\";\"Chien-shih\";\"other\"\n\"1786778\";\"Chien-shih-hsien\";\"other\"\n\"1786778\";\"Jianshi\";\"other\"\n\"1786778\";\"Kien-shih\";\"other\"\n\"1786778\";\"Kienshih-hsien\";\"other\"\n\"1786778\";\"ye zhou\";\"other\"\n\"1786778\";\"业州\";\"other\"\n\"1786789\";\"Yexie\";\"main\"\n\"1786789\";\"Yeh-hsieh\";\"other\"\n\"1786789\";\"Yeh-hsieh-chen\";\"other\"\n\"1786789\";\"Yexie Zhen\";\"other\"\n\"1786789\";\"叶榭\";\"other\"\n\"1786789\";\"叶榭镇\";\"other\"\n\"1786790\";\"Kunyang\";\"main\"\n\"1786790\";\"Kunyang Zhen\";\"other\"\n\"1786790\";\"Shesyan\";\"other\"\n\"1786790\";\"Yeh\";\"other\"\n\"1786790\";\"Yeh-hsien\";\"other\"\n\"1786790\";\"Yexian\";\"other\"\n\"1786790\";\"kun yang\";\"other\"\n\"1786790\";\"昆阳\";\"other\"\n\"1786796\";\"Yetan\";\"main\"\n\"1786796\";\"Yetan Zhen\";\"other\"\n\"1786796\";\"叶潭\";\"other\"\n\"1786796\";\"叶潭镇\";\"other\"\n\"1786811\";\"Yeliguan\";\"main\"\n\"1786811\";\"Yeh-li-kuan\";\"other\"\n\"1786811\";\"冶力关\";\"other\"\n\"1786841\";\"Yazhou\";\"main\"\n\"1786841\";\"Ya-chou\";\"other\"\n\"1786841\";\"Yazhou Zhen\";\"other\"\n\"1786841\";\"Yeh-chou-chuang\";\"other\"\n\"1786841\";\"雅周\";\"other\"\n\"1786841\";\"雅周镇\";\"other\"\n\"1786854\";\"Yatunpu\";\"main\"\n\"1786854\";\"Ya-t'un-pao\";\"other\"\n\"1786854\";\"Ya-t’un-pao\";\"other\"\n\"1786854\";\"Yatunbu\";\"other\"\n\"1786854\";\"Yatunpu Xiang\";\"other\"\n\"1786855\";\"Yatou\";\"main\"\n\"1786855\";\"Jung-ch'eng\";\"other\"\n\"1786855\";\"Jung-ch'eng-hsien\";\"other\"\n\"1786855\";\"Jung-ch’eng\";\"other\"\n\"1786855\";\"Jung-ch’eng-hsien\";\"other\"\n\"1786855\";\"Rongcheng\";\"other\"\n\"1786855\";\"Yai-t'ou\";\"other\"\n\"1786855\";\"Yai-t'ou-chi\";\"other\"\n\"1786855\";\"Yai-t’ou\";\"other\"\n\"1786855\";\"Yai-t’ou-chi\";\"other\"\n\"1786855\";\"Zhunchehn\";\"other\"\n\"1786855\";\"Жунчэн\";\"other\"\n\"1786867\";\"Yashan\";\"main\"\n\"1786875\";\"Yaqian\";\"main\"\n\"1786875\";\"Ya-ch'ien\";\"other\"\n\"1786875\";\"Ya-ch’ien\";\"other\"\n\"1786875\";\"Yaqian Xiang\";\"other\"\n\"1786875\";\"衙前\";\"other\"\n\"1786875\";\"衙前乡\";\"other\"\n\"1786900\";\"Yaozhou\";\"main\"\n\"1786900\";\"Yao\";\"other\"\n\"1786900\";\"Yao-hsien\";\"other\"\n\"1786900\";\"Yao-hsien-ch'eng\";\"other\"\n\"1786900\";\"Yao-hsien-ch’eng\";\"other\"\n\"1786900\";\"Yaochow\";\"other\"\n\"1786900\";\"Yaochzhou\";\"other\"\n\"1786900\";\"Yaosyan\";\"other\"\n\"1786900\";\"Yaoxian\";\"other\"\n\"1786900\";\"Yaozhou Qu\";\"other\"\n\"1786900\";\"yao zhou\";\"other\"\n\"1786900\";\"yao zhou qu\";\"other\"\n\"1786900\";\"耀州\";\"other\"\n\"1786900\";\"耀州区\";\"other\"\n\"1786926\";\"Yaoshi\";\"main\"\n\"1786926\";\"Yao-shih\";\"other\"\n\"1786926\";\"Yao-ssu\";\"other\"\n\"1786926\";\"Yaoshi Zhen\";\"other\"\n\"1786926\";\"yao shi\";\"other\"\n\"1786926\";\"腰市\";\"other\"\n\"1786927\";\"Yaoshi\";\"main\"\n\"1786927\";\"Yao-shang\";\"other\"\n\"1786927\";\"Yao-shih\";\"other\"\n\"1786928\";\"Yaoshi\";\"main\"\n\"1786960\";\"Yaowang\";\"main\"\n\"1786960\";\"Yao-chia-chuang\";\"other\"\n\"1786960\";\"Yao-chuang\";\"other\"\n\"1786960\";\"Yaojiazhuang\";\"other\"\n\"1786960\";\"Yaowang Zhen\";\"other\"\n\"1786960\";\"姚家庄\";\"other\"\n\"1786960\";\"姚王\";\"other\"\n\"1786960\";\"姚王镇\";\"other\"\n\"1786964\";\"Yaojiagou\";\"main\"\n\"1786964\";\"Yao-chia-kou\";\"other\"\n\"1786964\";\"Yaojiagou Zhen\";\"other\"\n\"1786964\";\"姚家沟\";\"other\"\n\"1786964\";\"姚家沟镇\";\"other\"\n\"1786990\";\"Yaodu\";\"main\"\n\"1786990\";\"Chih-te\";\"other\"\n\"1786990\";\"Dongzhi\";\"other\"\n\"1786990\";\"Tung-chih\";\"other\"\n\"1786990\";\"Yao-tu\";\"other\"\n\"1786990\";\"Yao-tu-chen\";\"other\"\n\"1786990\";\"Yao-tu-chieh\";\"other\"\n\"1786990\";\"Yao-tu-hsu\";\"other\"\n\"1786990\";\"Yao-tu-hsü\";\"other\"\n\"1786990\";\"Yao-tu-wei\";\"other\"\n\"1786990\";\"yao du\";\"other\"\n\"1786990\";\"尧渡\";\"other\"\n\"1786996\";\"Yaodian\";\"main\"\n\"1786996\";\"Yao-tien\";\"other\"\n\"1786996\";\"Yao-tien-chen\";\"other\"\n\"1786996\";\"Yaodian Zhen\";\"other\"\n\"1786996\";\"yao dian\";\"other\"\n\"1786996\";\"yao dian zhen\";\"other\"\n\"1786996\";\"窑店\";\"other\"\n\"1786996\";\"窑店镇\";\"other\"\n\"1787020\";\"Yanzibian\";\"main\"\n\"1787020\";\"Yanzibian Zhen\";\"other\"\n\"1787020\";\"Yen-tzu-pien\";\"other\"\n\"1787020\";\"燕子砭\";\"other\"\n\"1787020\";\"燕子砭镇\";\"other\"\n\"1787022\";\"Yanzi\";\"main\"\n\"1787022\";\"Yanzi Xiang\";\"other\"\n\"1787022\";\"yan zi\";\"other\"\n\"1787022\";\"yan zi xiang\";\"other\"\n\"1787022\";\"燕子\";\"other\"\n\"1787022\";\"燕子乡\";\"other\"\n\"1787031\";\"Yanzhou\";\"main\"\n\"1787031\";\"Ch'ie-fou\";\"other\"\n\"1787031\";\"Ch’ie-fou\";\"other\"\n\"1787031\";\"Tzeyang\";\"other\"\n\"1787031\";\"Tzu-yang\";\"other\"\n\"1787031\";\"Tzu-yang-ch'eng\";\"other\"\n\"1787031\";\"Tzu-yang-ch’eng\";\"other\"\n\"1787031\";\"Tzu-yang-hsien\";\"other\"\n\"1787031\";\"Yen-chou\";\"other\"\n\"1787031\";\"Yenchow\";\"other\"\n\"1787031\";\"Yenchow-fu\";\"other\"\n\"1787031\";\"Yenzhou\";\"other\"\n\"1787053\";\"Yanwu\";\"main\"\n\"1787053\";\"Yanwu Xiang\";\"other\"\n\"1787053\";\"演武\";\"other\"\n\"1787053\";\"演武乡\";\"other\"\n\"1787059\";\"Yanwan\";\"main\"\n\"1787059\";\"Yawan\";\"other\"\n\"1787059\";\"Yen-wan\";\"other\"\n\"1787059\";\"岩湾\";\"other\"\n\"1787065\";\"Yantou\";\"main\"\n\"1787065\";\"Yantou Xiang\";\"other\"\n\"1787065\";\"Yen-t'ou\";\"other\"\n\"1787065\";\"Yen-t’ou\";\"other\"\n\"1787065\";\"岩头\";\"other\"\n\"1787065\";\"岩头乡\";\"other\"\n\"1787073\";\"Yantian\";\"main\"\n\"1787073\";\"Yen-t'ien\";\"other\"\n\"1787073\";\"Yen-t’ien\";\"other\"\n\"1787075\";\"Yantian\";\"main\"\n\"1787075\";\"Imtin\";\"other\"\n\"1787075\";\"Yantian Jiedao\";\"other\"\n\"1787075\";\"Yen-t'ien\";\"other\"\n\"1787075\";\"Yen-t'ien-tung\";\"other\"\n\"1787075\";\"Yen-t’ien\";\"other\"\n\"1787075\";\"Yen-t’ien-tung\";\"other\"\n\"1787075\";\"Yim Tin\";\"other\"\n\"1787075\";\"yan tian\";\"other\"\n\"1787075\";\"盐田\";\"other\"\n\"1787080\";\"Yantan\";\"main\"\n\"1787080\";\"Yen-t'an\";\"other\"\n\"1787080\";\"Yen-t’an\";\"other\"\n\"1787080\";\"yan tan\";\"other\"\n\"1787080\";\"沿滩\";\"other\"\n\"1787093\";\"Yantai\";\"main\"\n\"1787093\";\"Cheefoo\";\"other\"\n\"1787093\";\"Chefoo\";\"other\"\n\"1787093\";\"Chifu\";\"other\"\n\"1787093\";\"Jan'taj\";\"other\"\n\"1787093\";\"Yen-t'ai\";\"other\"\n\"1787093\";\"Yen-t'ai-shih\";\"other\"\n\"1787093\";\"Yen-t’ai\";\"other\"\n\"1787093\";\"Yen-t’ai-shih\";\"other\"\n\"1787093\";\"Яньтай\";\"other\"\n\"1787094\";\"Yansi\";\"main\"\n\"1787094\";\"An-ssu\";\"other\"\n\"1787094\";\"Huizhou\";\"other\"\n\"1787094\";\"Huizhou Qu\";\"other\"\n\"1787094\";\"Yansi Zhen\";\"other\"\n\"1787094\";\"Yen-ssu\";\"other\"\n\"1787094\";\"Yen-ssu-chieh\";\"other\"\n\"1787094\";\"Yensze\";\"other\"\n\"1787094\";\"hui zhou qu\";\"other\"\n\"1787094\";\"yan si\";\"other\"\n\"1787094\";\"yan si zhen\";\"other\"\n\"1787094\";\"岩寺\";\"other\"\n\"1787094\";\"岩寺镇\";\"other\"\n\"1787094\";\"徽州区\";\"other\"\n\"1787123\";\"Yanqiao\";\"main\"\n\"1787123\";\"Yen-ch'iao\";\"other\"\n\"1787123\";\"Yen-ch'ien\";\"other\"\n\"1787123\";\"Yen-ch’iao\";\"other\"\n\"1787123\";\"Yen-ch’ien\";\"other\"\n\"1787123\";\"yan qiao\";\"other\"\n\"1787123\";\"堰桥\";\"other\"\n\"1787125\";\"Yanqian\";\"main\"\n\"1787125\";\"Yanqian Zhen\";\"other\"\n\"1787125\";\"Yen-ch'ien\";\"other\"\n\"1787125\";\"Yen-ch’ien\";\"other\"\n\"1787125\";\"岩前\";\"other\"\n\"1787125\";\"岩前镇\";\"other\"\n\"1787129\";\"Yanmenguan\";\"main\"\n\"1787129\";\"Yanmenguan Xiang\";\"other\"\n\"1787129\";\"Yen-men Kuan\";\"other\"\n\"1787129\";\"雁门关\";\"other\"\n\"1787129\";\"雁门关乡\";\"other\"\n\"1787131\";\"Yanmen\";\"main\"\n\"1787131\";\"Yen-men\";\"other\"\n\"1787143\";\"Yanling\";\"main\"\n\"1787143\";\"Wei-yuan-hsien\";\"other\"\n\"1787143\";\"Wei-yüan-hsien\";\"other\"\n\"1787143\";\"Weiyuan\";\"other\"\n\"1787143\";\"yan ling\";\"other\"\n\"1787143\";\"严陵\";\"other\"\n\"1787144\";\"Yanliang\";\"main\"\n\"1787144\";\"Yen-liang\";\"other\"\n\"1787144\";\"Yen-liang-chen\";\"other\"\n\"1787144\";\"阎良\";\"other\"\n\"1787151\";\"Yankou\";\"main\"\n\"1787151\";\"Wusheng\";\"other\"\n\"1787151\";\"Yen-k'ou\";\"other\"\n\"1787151\";\"Yen-k'ou-ch'ang\";\"other\"\n\"1787151\";\"Yen-k'ou-chen\";\"other\"\n\"1787151\";\"Yen-k’ou\";\"other\"\n\"1787151\";\"Yen-k’ou-chen\";\"other\"\n\"1787151\";\"Yen-k’ou-ch’ang\";\"other\"\n\"1787151\";\"yan kou\";\"other\"\n\"1787151\";\"沿口\";\"other\"\n\"1787164\";\"Yanjing\";\"main\"\n\"1787164\";\"Pai-yen-ching\";\"other\"\n\"1787164\";\"Yanyuan\";\"other\"\n\"1787164\";\"Yen-ching\";\"other\"\n\"1787164\";\"Yen-ching-hsiang\";\"other\"\n\"1787164\";\"Yen-yuan\";\"other\"\n\"1787164\";\"Yen-yüan\";\"other\"\n\"1787164\";\"yan jing\";\"other\"\n\"1787164\";\"盐井\";\"other\"\n\"1787166\";\"Yanjing\";\"main\"\n\"1787166\";\"Lao-ya-kuan\";\"other\"\n\"1787166\";\"Lao-ya-t'an\";\"other\"\n\"1787166\";\"Lao-ya-t’an\";\"other\"\n\"1787166\";\"Yanjin\";\"other\"\n\"1787166\";\"Yen-chin\";\"other\"\n\"1787166\";\"Yen-ching\";\"other\"\n\"1787166\";\"Yen-ching-hsien\";\"other\"\n\"1787166\";\"Yentsing\";\"other\"\n\"1787166\";\"Yentsing-hsien\";\"other\"\n\"1787166\";\"yan jing\";\"other\"\n\"1787166\";\"盐井\";\"other\"\n\"1787178\";\"Yanjiao\";\"main\"\n\"1787178\";\"Qiyunshan\";\"other\"\n\"1787178\";\"Qiyunshan Zhen\";\"other\"\n\"1787178\";\"qi yun shan\";\"other\"\n\"1787178\";\"qi yun shan zhen\";\"other\"\n\"1787178\";\"yan jiao\";\"other\"\n\"1787178\";\"岩脚\";\"other\"\n\"1787178\";\"齐云山\";\"other\"\n\"1787178\";\"齐云山镇\";\"other\"\n\"1787204\";\"Yangzongnan Hengjie\";\"main\"\n\"1787204\";\"Yang-t'sung-ch'eng\";\"other\"\n\"1787204\";\"Yang-t’sung-ch’eng\";\"other\"\n\"1787204\";\"Yangzong\";\"other\"\n\"1787204\";\"Yangzong Zhen\";\"other\"\n\"1787204\";\"yang zong\";\"other\"\n\"1787204\";\"yang zong nan heng jie\";\"other\"\n\"1787204\";\"yang zong zhen\";\"other\"\n\"1787204\";\"阳宗\";\"other\"\n\"1787204\";\"阳宗南横街\";\"other\"\n\"1787204\";\"阳宗镇\";\"other\"\n\"1787227\";\"Yangzhou\";\"main\"\n\"1787227\";\"Chiang-tu\";\"other\"\n\"1787227\";\"Chiang-tu-hsien\";\"other\"\n\"1787227\";\"Han-chiang\";\"other\"\n\"1787227\";\"Janchzhou\";\"other\"\n\"1787227\";\"Kiangtu\";\"other\"\n\"1787227\";\"Yang-chou\";\"other\"\n\"1787227\";\"Yang-chou-shih\";\"other\"\n\"1787227\";\"Yang-chow-fu\";\"other\"\n\"1787227\";\"Yangchow\";\"other\"\n\"1787227\";\"yang zhou\";\"other\"\n\"1787227\";\"yang zhou shi\";\"other\"\n\"1787227\";\"Янчжоу\";\"other\"\n\"1787227\";\"ياڭجو شەھىرى\";\"other\"\n\"1787227\";\"扬州\";\"other\"\n\"1787227\";\"扬州市\";\"other\"\n\"1787227\";\"揚州\";\"other\"\n\"1787227\";\"楊州\";\"other\"\n\"1787230\";\"Yangzhong\";\"main\"\n\"1787230\";\"Yang-chung\";\"other\"\n\"1787247\";\"Yangyu\";\"main\"\n\"1787247\";\"Yang-yu-chen\";\"other\"\n\"1787247\";\"Yang-yü-chen\";\"other\"\n\"1787247\";\"Yangyu Zhen\";\"other\"\n\"1787247\";\"yang yu\";\"other\"\n\"1787247\";\"yang yu zhen\";\"other\"\n\"1787247\";\"阳峪\";\"other\"\n\"1787247\";\"阳峪镇\";\"other\"\n\"1787274\";\"Yangxi\";\"main\"\n\"1787274\";\"Yang-hsi\";\"other\"\n\"1787274\";\"Yangxi Xiang\";\"other\"\n\"1787274\";\"杨溪\";\"other\"\n\"1787274\";\"杨溪乡\";\"other\"\n\"1787278\";\"Yangxi\";\"main\"\n\"1787278\";\"Yang-hsi\";\"other\"\n\"1787278\";\"Yangxi Xiang\";\"other\"\n\"1787278\";\"洋溪\";\"other\"\n\"1787278\";\"洋溪乡\";\"other\"\n\"1787304\";\"Yangtou\";\"main\"\n\"1787304\";\"Yang-t'ou-ssu\";\"other\"\n\"1787304\";\"Yang-t’ou-ssu\";\"other\"\n\"1787323\";\"Yangshuo\";\"main\"\n\"1787323\";\"Jansho\";\"other\"\n\"1787323\";\"Yang-shuo-chen\";\"other\"\n\"1787323\";\"Yang-shuo-hsien\";\"other\"\n\"1787323\";\"Yangso\";\"other\"\n\"1787323\";\"Yangso-hsien\";\"other\"\n\"1787323\";\"yang shuo\";\"other\"\n\"1787323\";\"Яншо\";\"other\"\n\"1787323\";\"阳朔\";\"other\"\n\"1787331\";\"Zhangjiagang\";\"main\"\n\"1787331\";\"Sha-chou\";\"other\"\n\"1787331\";\"Shazhou\";\"other\"\n\"1787331\";\"Yang-she-chen\";\"other\"\n\"1787331\";\"Yang-she-ying\";\"other\"\n\"1787331\";\"Yangshe\";\"other\"\n\"1787331\";\"Zhangjiagang Shi\";\"other\"\n\"1787339\";\"Yangsha\";\"main\"\n\"1787339\";\"羊沙\";\"other\"\n\"1787351\";\"Yangquan\";\"main\"\n\"1787351\";\"Yang-ch'uan\";\"other\"\n\"1787351\";\"Yang-ch'uan-chan\";\"other\"\n\"1787351\";\"Yang-ch'uan-shih\";\"other\"\n\"1787351\";\"Yang-ch’üan\";\"other\"\n\"1787351\";\"Yang-ch’üan-chan\";\"other\"\n\"1787351\";\"Yang-ch’üan-shih\";\"other\"\n\"1787381\";\"Yangpingguan\";\"main\"\n\"1787381\";\"Ku'yang-p'ing-kuan\";\"other\"\n\"1787381\";\"Ku’yang-p’ing-kuan\";\"other\"\n\"1787381\";\"Yang-p'ing-kuan\";\"other\"\n\"1787381\";\"Yang-p’ing-kuan\";\"other\"\n\"1787381\";\"Yangpingguan Zhen\";\"other\"\n\"1787381\";\"Yangpingkwan\";\"other\"\n\"1787381\";\"Yanpingan'\";\"other\"\n\"1787381\";\"Yanpingan’\";\"other\"\n\"1787381\";\"阳平关\";\"other\"\n\"1787381\";\"阳平关镇\";\"other\"\n\"1787384\";\"Yangping\";\"main\"\n\"1787384\";\"Yang-p'ing-chen\";\"other\"\n\"1787384\";\"Yang-p’ing-chen\";\"other\"\n\"1787384\";\"Yangping Zhen\";\"other\"\n\"1787384\";\"阳平\";\"other\"\n\"1787384\";\"阳平镇\";\"other\"\n\"1787395\";\"Yangmingbu\";\"main\"\n\"1787395\";\"Yang-ming-pao\";\"other\"\n\"1787395\";\"Yangmingbu Zhen\";\"other\"\n\"1787395\";\"Yanminbao\";\"other\"\n\"1787395\";\"阳明堡\";\"other\"\n\"1787395\";\"阳明堡镇\";\"other\"\n\"1787397\";\"Yangming\";\"main\"\n\"1787397\";\"Heping\";\"other\"\n\"1787397\";\"Ho-p'ing\";\"other\"\n\"1787397\";\"Ho-p'ing-hsien\";\"other\"\n\"1787397\";\"Ho-p’ing\";\"other\"\n\"1787397\";\"Ho-p’ing-hsien\";\"other\"\n\"1787397\";\"Yang-ming-chen\";\"other\"\n\"1787397\";\"yang ming\";\"other\"\n\"1787397\";\"阳明\";\"other\"\n\"1787421\";\"Yanglu\";\"main\"\n\"1787421\";\"Yanglu Xiang\";\"other\"\n\"1787421\";\"Yangluwa\";\"other\"\n\"1787421\";\"羊路\";\"other\"\n\"1787421\";\"羊路乡\";\"other\"\n\"1787437\";\"Yangliuqing\";\"main\"\n\"1787437\";\"Yang-liu-ch'ing\";\"other\"\n\"1787437\";\"Yang-liu-ch'ing-chen\";\"other\"\n\"1787437\";\"Yang-liu-ch’ing\";\"other\"\n\"1787437\";\"Yang-liu-ch’ing-chen\";\"other\"\n\"1787458\";\"Yangling\";\"main\"\n\"1787458\";\"Yang-ling-chen\";\"other\"\n\"1787458\";\"Yangling Qu\";\"other\"\n\"1787458\";\"yang ling\";\"other\"\n\"1787458\";\"yang ling qu\";\"other\"\n\"1787458\";\"杨陵\";\"other\"\n\"1787458\";\"杨陵区\";\"other\"\n\"1787470\";\"Yanglang\";\"main\"\n\"1787470\";\"Yang-lang-chen\";\"other\"\n\"1787470\";\"Yanglang Xiang\";\"other\"\n\"1787470\";\"Yanglangzhen\";\"other\"\n\"1787470\";\"杨郎\";\"other\"\n\"1787470\";\"杨郎乡\";\"other\"\n\"1787481\";\"Yangjinzhuang\";\"main\"\n\"1787521\";\"Yangjiapo\";\"main\"\n\"1787554\";\"Yangdian\";\"main\"\n\"1787554\";\"杨店\";\"other\"\n\"1787579\";\"Yanghu\";\"main\"\n\"1787579\";\"Yanghu Zhen\";\"other\"\n\"1787579\";\"yang hu\";\"other\"\n\"1787579\";\"yang hu zhen\";\"other\"\n\"1787579\";\"阳湖\";\"other\"\n\"1787579\";\"阳湖镇\";\"other\"\n\"1787580\";\"Yanghou\";\"main\"\n\"1787581\";\"Yanghong\";\"main\"\n\"1787581\";\"Yang-hung\";\"other\"\n\"1787581\";\"Yang-hung-tien\";\"other\"\n\"1787581\";\"Yanghong Zhen\";\"other\"\n\"1787581\";\"yang hong\";\"other\"\n\"1787581\";\"yang hong zhen\";\"other\"\n\"1787581\";\"阳洪\";\"other\"\n\"1787581\";\"阳洪镇\";\"other\"\n\"1787594\";\"Yangguo\";\"main\"\n\"1787594\";\"Yang-kuo\";\"other\"\n\"1787594\";\"Yang-kuo-chen\";\"other\"\n\"1787594\";\"Yangguo Zhen\";\"other\"\n\"1787594\";\"yang guo\";\"other\"\n\"1787594\";\"阳郭\";\"other\"\n\"1787599\";\"Yangguang\";\"main\"\n\"1787599\";\"Yangguang Zhen\";\"other\"\n\"1787599\";\"Yanguang Zhen\";\"other\"\n\"1787599\";\"yang guang\";\"other\"\n\"1787599\";\"yang guang zhen\";\"other\"\n\"1787599\";\"杨广\";\"other\"\n\"1787599\";\"杨广镇\";\"other\"\n\"1787601\";\"Yanggu\";\"main\"\n\"1787601\";\"Jang\";\"other\"\n\"1787601\";\"Yang-ku\";\"other\"\n\"1787601\";\"Yang-ku-hsien\";\"other\"\n\"1787601\";\"Янг\";\"other\"\n\"1787619\";\"Yangfangkou\";\"main\"\n\"1787619\";\"Yangfangkou Zhen\";\"other\"\n\"1787619\";\"阳方口\";\"other\"\n\"1787619\";\"阳方口镇\";\"other\"\n\"1787624\";\"Yangezhuang\";\"main\"\n\"1787624\";\"Yen-ko-chuang\";\"other\"\n\"1787638\";\"Yangdi\";\"main\"\n\"1787638\";\"Yangdi Xiang\";\"other\"\n\"1787638\";\"洋地\";\"other\"\n\"1787638\";\"洋地乡\";\"other\"\n\"1787646\";\"Yangcun\";\"main\"\n\"1787646\";\"Wu-ch'ing\";\"other\"\n\"1787646\";\"Wu-ch'ing-hsien\";\"other\"\n\"1787646\";\"Wu-ch’ing\";\"other\"\n\"1787646\";\"Wu-ch’ing-hsien\";\"other\"\n\"1787646\";\"Wuqing\";\"other\"\n\"1787646\";\"Yang-ts'un\";\"other\"\n\"1787646\";\"Yang-ts’un\";\"other\"\n\"1787657\";\"Yangcun\";\"main\"\n\"1787657\";\"Yang-t'sun\";\"other\"\n\"1787657\";\"Yang-ts'un-hsu\";\"other\"\n\"1787657\";\"Yang-ts’un-hsü\";\"other\"\n\"1787657\";\"Yang-t’sun\";\"other\"\n\"1787657\";\"Yangcun Zhen\";\"other\"\n\"1787657\";\"yang cun\";\"other\"\n\"1787657\";\"杨村\";\"other\"\n\"1787667\";\"Fengcheng\";\"main\"\n\"1787667\";\"Yang-ch'eng-hsien\";\"other\"\n\"1787667\";\"Yang-ch’eng-hsien\";\"other\"\n\"1787667\";\"Yangcheng\";\"other\"\n\"1787667\";\"feng cheng\";\"other\"\n\"1787667\";\"凤城\";\"other\"\n\"1787669\";\"Yangcheng\";\"main\"\n\"1787669\";\"Yang-shan-hsien\";\"other\"\n\"1787669\";\"Yangshan\";\"other\"\n\"1787669\";\"Yeungshanhsien\";\"other\"\n\"1787669\";\"yang cheng\";\"other\"\n\"1787669\";\"阳城\";\"other\"\n\"1787681\";\"Yangce\";\"main\"\n\"1787681\";\"Yang-cha\";\"other\"\n\"1787681\";\"Yang-ts'e\";\"other\"\n\"1787681\";\"Yang-ts’e\";\"other\"\n\"1787681\";\"Yangce Zhen\";\"other\"\n\"1787681\";\"yang ce\";\"other\"\n\"1787681\";\"羊册\";\"other\"\n\"1787746\";\"Yancheng\";\"main\"\n\"1787746\";\"Jan'chehn\";\"other\"\n\"1787746\";\"Yen-ch'eng\";\"other\"\n\"1787746\";\"Yen-ch'eng-chen\";\"other\"\n\"1787746\";\"Yen-ch'eng-hsien\";\"other\"\n\"1787746\";\"Yen-ch’eng\";\"other\"\n\"1787746\";\"Yen-ch’eng-chen\";\"other\"\n\"1787746\";\"Yen-ch’eng-hsien\";\"other\"\n\"1787746\";\"yan cheng\";\"other\"\n\"1787746\";\"yan cheng shi\";\"other\"\n\"1787746\";\"Яньчэн\";\"other\"\n\"1787746\";\"يەنچېن شەھىرى\";\"other\"\n\"1787746\";\"盐城\";\"other\"\n\"1787746\";\"盐城市\";\"other\"\n\"1787758\";\"Yanbodu\";\"main\"\n\"1787758\";\"Yanbodu Zhen\";\"other\"\n\"1787758\";\"Yen-pai-tu\";\"other\"\n\"1787758\";\"Yen-po-tu\";\"other\"\n\"1787758\";\"yan po du\";\"other\"\n\"1787758\";\"yan po du zhen\";\"other\"\n\"1787758\";\"岩泊渡\";\"other\"\n\"1787758\";\"岩泊渡镇\";\"other\"\n\"1787781\";\"Yakou\";\"main\"\n\"1787781\";\"Yakow\";\"other\"\n\"1787794\";\"Ya’erya\";\"main\"\n\"1787794\";\"Ya'erya\";\"ascii\"\n\"1787794\";\"Ya'erya Xiang\";\"other\"\n\"1787794\";\"Ya-chi-yai\";\"other\"\n\"1787794\";\"Ya-erh-ya\";\"other\"\n\"1787794\";\"Yan'erya\";\"other\"\n\"1787794\";\"Yan’erya\";\"other\"\n\"1787794\";\"Ya’erya Xiang\";\"other\"\n\"1787794\";\"Yen-erh-ya\";\"other\"\n\"1787794\";\"Yen-ya\";\"other\"\n\"1787794\";\"Yen-yai\";\"other\"\n\"1787794\";\"鸦儿崖\";\"other\"\n\"1787794\";\"鸦儿崖乡\";\"other\"\n\"1787813\";\"Yabai\";\"main\"\n\"1787813\";\"Wa-pai\";\"other\"\n\"1787813\";\"Ya-pai\";\"other\"\n\"1787813\";\"Ya-pai-chen\";\"other\"\n\"1787813\";\"Ya-pei-chen\";\"other\"\n\"1787813\";\"Yabai Zhen\";\"other\"\n\"1787813\";\"ya bai\";\"other\"\n\"1787813\";\"ya bai zhen\";\"other\"\n\"1787813\";\"哑柏\";\"other\"\n\"1787813\";\"哑柏镇\";\"other\"\n\"1787821\";\"Xuzhuang\";\"main\"\n\"1787821\";\"Hsu-chuang\";\"other\"\n\"1787821\";\"Hsü-chuang\";\"other\"\n\"1787821\";\"Xuzhuang Zhen\";\"other\"\n\"1787821\";\"xu zhuang\";\"other\"\n\"1787821\";\"许庄\";\"other\"\n\"1787824\";\"Tongshan\";\"main\"\n\"1787824\";\"Hsu-chou\";\"other\"\n\"1787824\";\"Hsu-chou-shih\";\"other\"\n\"1787824\";\"Hsü-chou\";\"other\"\n\"1787824\";\"Hsü-chou-shih\";\"other\"\n\"1787824\";\"Sjujchzhou\";\"other\"\n\"1787824\";\"Suchow\";\"other\"\n\"1787824\";\"Suchow-fu\";\"other\"\n\"1787824\";\"Süchow-fu\";\"other\"\n\"1787824\";\"T'ung-shan\";\"other\"\n\"1787824\";\"T’ung-shan\";\"other\"\n\"1787824\";\"Xuzhou\";\"other\"\n\"1787824\";\"swijeou\";\"other\"\n\"1787824\";\"xu zhou\";\"other\"\n\"1787824\";\"xu zhou shi\";\"other\"\n\"1787824\";\"Сюйчжоу\";\"other\"\n\"1787824\";\"شۈجو شەھىرى\";\"other\"\n\"1787824\";\"徐州\";\"other\"\n\"1787824\";\"徐州市\";\"other\"\n\"1787824\";\"쉬저우\";\"other\"\n\"1787828\";\"Xuyong\";\"main\"\n\"1787828\";\"Hsu-yung\";\"other\"\n\"1787828\";\"Hsu-yung-hsien\";\"other\"\n\"1787828\";\"Hsü-yung\";\"other\"\n\"1787828\";\"Hsü-yung-hsien\";\"other\"\n\"1787828\";\"Suyung\";\"other\"\n\"1787828\";\"Suyung-hsien\";\"other\"\n\"1787828\";\"Suyüng\";\"other\"\n\"1787828\";\"Süyung-hsien\";\"other\"\n\"1787828\";\"Yongning\";\"other\"\n\"1787828\";\"Yung-ning\";\"other\"\n\"1787828\";\"Yungninghsien\";\"other\"\n\"1787828\";\"xu yong\";\"other\"\n\"1787828\";\"叙永\";\"other\"\n\"1787833\";\"Xuyang\";\"main\"\n\"1787833\";\"xu yang\";\"other\"\n\"1787833\";\"徐杨\";\"other\"\n\"1787834\";\"Xuyang\";\"main\"\n\"1787834\";\"Jung\";\"other\"\n\"1787834\";\"Jung-hsien\";\"other\"\n\"1787834\";\"Rongxian\";\"other\"\n\"1787834\";\"Yung-hsien\";\"other\"\n\"1787834\";\"xu yang\";\"other\"\n\"1787834\";\"旭阳\";\"other\"\n\"1787837\";\"Xucheng\";\"main\"\n\"1787837\";\"Hsu-wen\";\"other\"\n\"1787837\";\"Hsu-wen-hsien\";\"other\"\n\"1787837\";\"Hsü-wen\";\"other\"\n\"1787837\";\"Hsü-wen-hsien\";\"other\"\n\"1787837\";\"Suwen\";\"other\"\n\"1787837\";\"Suwenyun\";\"other\"\n\"1787837\";\"Tsuimen\";\"other\"\n\"1787837\";\"Xuwen\";\"other\"\n\"1787837\";\"徐城\";\"other\"\n\"1787854\";\"Xushuguan\";\"main\"\n\"1787854\";\"Hsu-kuan-chen\";\"other\"\n\"1787854\";\"Hsu-shu-kuan\";\"other\"\n\"1787854\";\"Hsü-kuan-chen\";\"other\"\n\"1787854\";\"Hsü-shu-kuan\";\"other\"\n\"1787854\";\"Hu-shu-kuan\";\"other\"\n\"1787854\";\"Hushukwan\";\"other\"\n\"1787854\";\"浒墅关\";\"other\"\n\"1787856\";\"Xushi\";\"main\"\n\"1787856\";\"Hsu-shih\";\"other\"\n\"1787856\";\"Hsü-shih\";\"other\"\n\"1787856\";\"Xushi Zhen\";\"other\"\n\"1787856\";\"xu shi\";\"other\"\n\"1787856\";\"徐市\";\"other\"\n\"1787856\";\"徐市镇\";\"other\"\n\"1787858\";\"Xuri\";\"main\"\n\"1787858\";\"Kuanghsin\";\"other\"\n\"1787858\";\"Kwangsin\";\"other\"\n\"1787858\";\"Shang-jao\";\"other\"\n\"1787858\";\"Shang-jao-hsien\";\"other\"\n\"1787858\";\"Shang-jao-shih\";\"other\"\n\"1787858\";\"Shangrao\";\"other\"\n\"1787901\";\"Xunchang\";\"main\"\n\"1787901\";\"巡场\";\"other\"\n\"1787912\";\"Xukou\";\"main\"\n\"1787912\";\"Hsu-k'ou\";\"other\"\n\"1787912\";\"Hsu-k'ou-chen\";\"other\"\n\"1787912\";\"Hsü-k’ou\";\"other\"\n\"1787912\";\"Hsü-k’ou-chen\";\"other\"\n\"1787912\";\"胥口\";\"other\"\n\"1787923\";\"Xujiaping\";\"main\"\n\"1787923\";\"Hsu-chia-p'ing\";\"other\"\n\"1787923\";\"Hsü-chia-p’ing\";\"other\"\n\"1787923\";\"Xujiaping Zhen\";\"other\"\n\"1787923\";\"徐家坪\";\"other\"\n\"1787923\";\"徐家坪镇\";\"other\"\n\"1787925\";\"Xujiang\";\"main\"\n\"1787925\";\"Guangchang Xian\";\"other\"\n\"1787925\";\"Kuang-ch'ang\";\"other\"\n\"1787925\";\"Kuang-ch'ang-hsien\";\"other\"\n\"1787925\";\"Kuang-ch’ang\";\"other\"\n\"1787925\";\"Kuang-ch’ang-hsien\";\"other\"\n\"1787925\";\"Kwangchang\";\"other\"\n\"1787925\";\"Kwangchang-hsien\";\"other\"\n\"1787925\";\"Xujiang Zhen\";\"other\"\n\"1787925\";\"广昌县\";\"other\"\n\"1787925\";\"旴江\";\"other\"\n\"1787925\";\"旴江镇\";\"other\"\n\"1787958\";\"Xuhe\";\"main\"\n\"1787958\";\"Hsu-chia-ho\";\"other\"\n\"1787958\";\"Hsü-chia-ho\";\"other\"\n\"1787958\";\"Xuhe Zhen\";\"other\"\n\"1787958\";\"许河\";\"other\"\n\"1787958\";\"许河镇\";\"other\"\n\"1787976\";\"Xuezhen\";\"main\"\n\"1787976\";\"Hsieh-chia-chen\";\"other\"\n\"1787976\";\"Hsueh-chen\";\"other\"\n\"1787976\";\"Hsueh-chia-chen\";\"other\"\n\"1787976\";\"Hsüeh-chen\";\"other\"\n\"1787976\";\"Hsüeh-chia-chen\";\"other\"\n\"1787976\";\"xie zhen\";\"other\"\n\"1787976\";\"薛镇\";\"other\"\n\"1787989\";\"Xuelu\";\"main\"\n\"1787989\";\"Hsieh-lu-chen\";\"other\"\n\"1787989\";\"Hsueh-lu\";\"other\"\n\"1787989\";\"Hsueh-lu-chen\";\"other\"\n\"1787989\";\"Hsüeh-lu\";\"other\"\n\"1787989\";\"Hsüeh-lu-chen\";\"other\"\n\"1787989\";\"Xuelu Zhen\";\"other\"\n\"1787989\";\"xie lu\";\"other\"\n\"1787989\";\"xie lu zhen\";\"other\"\n\"1787989\";\"薛录\";\"other\"\n\"1787989\";\"薛录镇\";\"other\"\n\"1787990\";\"Xuekulue\";\"main\"\n\"1787990\";\"Hsieh-chia-k'ou-luan\";\"other\"\n\"1787990\";\"Hsieh-chia-k'uo-luan\";\"other\"\n\"1787990\";\"Hsieh-chia-k’ou-lüan\";\"other\"\n\"1787990\";\"Hsieh-chia-k’uo-lüan\";\"other\"\n\"1787990\";\"Hsueh-hu-lun\";\"other\"\n\"1787990\";\"Hsuëh-hu-lun\";\"other\"\n\"1787990\";\"Xuekulun\";\"other\"\n\"1787990\";\"Xukulue Xiang\";\"other\"\n\"1787990\";\"薛圐圙\";\"other\"\n\"1787990\";\"薛圐圙乡\";\"other\"\n\"1787994\";\"Xuejiawa\";\"main\"\n\"1787994\";\"Hsieh-chia-wa\";\"other\"\n\"1787994\";\"Hsueh-chia-wa\";\"other\"\n\"1787994\";\"Hsüeh-chia-wa\";\"other\"\n\"1787994\";\"Xuejiawa Xiang\";\"other\"\n\"1787994\";\"薛家洼\";\"other\"\n\"1787994\";\"薛家洼乡\";\"other\"\n\"1788005\";\"Funan Chengguanzhen\";\"main\"\n\"1788005\";\"Fou-nan\";\"other\"\n\"1788005\";\"Funan\";\"other\"\n\"1788005\";\"Hsieh-chi\";\"other\"\n\"1788005\";\"Hsieh-chi-chen\";\"other\"\n\"1788005\";\"Xueji\";\"other\"\n\"1788005\";\"fu nan cheng guan zhen\";\"other\"\n\"1788005\";\"阜南城关镇\";\"other\"\n\"1788016\";\"Xuefeng\";\"main\"\n\"1788016\";\"Chiu-ming-ch'i\";\"other\"\n\"1788016\";\"Chiu-ming-ch’i\";\"other\"\n\"1788016\";\"Guihua\";\"other\"\n\"1788016\";\"Hsueh-feng\";\"other\"\n\"1788016\";\"Hsueh-feng-chen\";\"other\"\n\"1788016\";\"Hsüeh-feng\";\"other\"\n\"1788016\";\"Hsüeh-feng-chen\";\"other\"\n\"1788016\";\"Kuei-hua\";\"other\"\n\"1788016\";\"Kweihwa\";\"other\"\n\"1788016\";\"Kweihwahsien\";\"other\"\n\"1788016\";\"Ming-ch'i\";\"other\"\n\"1788016\";\"Ming-ch'i-hsien\";\"other\"\n\"1788016\";\"Ming-ch’i\";\"other\"\n\"1788016\";\"Ming-ch’i-hsien\";\"other\"\n\"1788016\";\"Ming-hsi\";\"other\"\n\"1788016\";\"Mingxi\";\"other\"\n\"1788016\";\"San-ming\";\"other\"\n\"1788016\";\"xue feng\";\"other\"\n\"1788016\";\"雪峰\";\"other\"\n\"1788022\";\"Xuedian\";\"main\"\n\"1788022\";\"Hsieh-tien\";\"other\"\n\"1788022\";\"Hsueh-tien\";\"other\"\n\"1788022\";\"Hsüeh-tien\";\"other\"\n\"1788022\";\"Xuedian Zhen\";\"other\"\n\"1788022\";\"xie dian\";\"other\"\n\"1788022\";\"薛店\";\"other\"\n\"1788046\";\"Xuchang\";\"main\"\n\"1788046\";\"Hsu-ch'ang\";\"other\"\n\"1788046\";\"Hsu-ch'ang-hsien\";\"other\"\n\"1788046\";\"Hsu-ch'ang-shih\";\"other\"\n\"1788046\";\"Hsu-chou\";\"other\"\n\"1788046\";\"Hsuchow\";\"other\"\n\"1788046\";\"Hsü-chou\";\"other\"\n\"1788046\";\"Hsü-ch’ang\";\"other\"\n\"1788046\";\"Hsü-ch’ang-hsien\";\"other\"\n\"1788046\";\"Hsü-ch’ang-shih\";\"other\"\n\"1788046\";\"Hsüchow\";\"other\"\n\"1788046\";\"Syuychan\";\"other\"\n\"1788068\";\"Xuanjiabao\";\"main\"\n\"1788068\";\"Hsuan-chia-p'u\";\"other\"\n\"1788068\";\"Hsuan-chia-pao\";\"other\"\n\"1788068\";\"Hsuan-p'u\";\"other\"\n\"1788068\";\"Hsuan-pao\";\"other\"\n\"1788068\";\"Hsüan-chia-pao\";\"other\"\n\"1788068\";\"Hsüan-chia-p’u\";\"other\"\n\"1788068\";\"Hsüan-pao\";\"other\"\n\"1788068\";\"Hsüan-p’u\";\"other\"\n\"1788068\";\"Xuanbao\";\"other\"\n\"1788068\";\"Xuanbao Zhen\";\"other\"\n\"1788068\";\"Xuanjiapu\";\"other\"\n\"1788068\";\"宣堡\";\"other\"\n\"1788068\";\"宣堡镇\";\"other\"\n\"1788068\";\"宣家堡\";\"other\"\n\"1788077\";\"Zhushan\";\"main\"\n\"1788077\";\"Hsuan-en\";\"other\"\n\"1788077\";\"Hsuan-en-hsien\";\"other\"\n\"1788077\";\"Hsüan-en\";\"other\"\n\"1788077\";\"Hsüan-en-hsien\";\"other\"\n\"1788077\";\"I-en\";\"other\"\n\"1788077\";\"Suan-en-hsien\";\"other\"\n\"1788077\";\"Suanen\";\"other\"\n\"1788077\";\"Süan-en-hsien\";\"other\"\n\"1788077\";\"Xuan'en\";\"other\"\n\"1788077\";\"Xuan'en Xian\";\"other\"\n\"1788077\";\"Xuan’en\";\"other\"\n\"1788077\";\"Xuan’en Xian\";\"other\"\n\"1788077\";\"xuan en xian\";\"other\"\n\"1788077\";\"zhu shan\";\"other\"\n\"1788077\";\"宣恩县\";\"other\"\n\"1788077\";\"珠山\";\"other\"\n\"1788081\";\"Xuanzhou\";\"main\"\n\"1788081\";\"Hsuan-ch'eng\";\"other\"\n\"1788081\";\"Hsuan-ch'eng-hsien\";\"other\"\n\"1788081\";\"Hsüan-ch’eng\";\"other\"\n\"1788081\";\"Hsüan-ch’eng-hsien\";\"other\"\n\"1788081\";\"Ning-kuo\";\"other\"\n\"1788081\";\"Ningkwo\";\"other\"\n\"1788081\";\"Ningkwofu\";\"other\"\n\"1788081\";\"Suancheng\";\"other\"\n\"1788081\";\"Suancheng-hsien\";\"other\"\n\"1788081\";\"Süancheng\";\"other\"\n\"1788081\";\"Süancheng-hsien\";\"other\"\n\"1788081\";\"Xuancheng\";\"other\"\n\"1788082\";\"Xuancheng\";\"main\"\n\"1788082\";\"Hsuan-ch'eng\";\"other\"\n\"1788082\";\"Hsüan-ch’eng\";\"other\"\n\"1788082\";\"Xuancheng Xiang\";\"other\"\n\"1788082\";\"宣城\";\"other\"\n\"1788082\";\"宣城乡\";\"other\"\n\"1788102\";\"Xizhou\";\"main\"\n\"1788102\";\"Hsi-chou\";\"other\"\n\"1788102\";\"Hsi-chou-chen\";\"other\"\n\"1788102\";\"Sichow\";\"other\"\n\"1788102\";\"Xizhou Zhen\";\"other\"\n\"1788102\";\"xi zhou\";\"other\"\n\"1788102\";\"xi zhou zhen\";\"other\"\n\"1788102\";\"西周\";\"other\"\n\"1788102\";\"西周镇\";\"other\"\n\"1788123\";\"Xizhai\";\"main\"\n\"1788123\";\"Hsi-chai\";\"other\"\n\"1788123\";\"Hsi-wang-chai\";\"other\"\n\"1788123\";\"xi zhai\";\"other\"\n\"1788123\";\"西寨\";\"other\"\n\"1788133\";\"Xiyuan\";\"main\"\n\"1788133\";\"溪源\";\"other\"\n\"1788156\";\"Xiyan\";\"main\"\n\"1788156\";\"Hsi-yen-shih\";\"other\"\n\"1788156\";\"Muguatsyao\";\"other\"\n\"1788156\";\"Xiyan Zhen\";\"other\"\n\"1788156\";\"Xiyanshi\";\"other\"\n\"1788167\";\"Leping\";\"main\"\n\"1788167\";\"Hsi-yang\";\"other\"\n\"1788167\";\"Hsi-yang-hsien\";\"other\"\n\"1788167\";\"Lo-p'ing\";\"other\"\n\"1788167\";\"Lo-p’ing\";\"other\"\n\"1788167\";\"Siyang\";\"other\"\n\"1788167\";\"Xiyang\";\"other\"\n\"1788167\";\"le ping\";\"other\"\n\"1788167\";\"乐平\";\"other\"\n\"1788170\";\"Xiyang\";\"main\"\n\"1788170\";\"Hsi-yang\";\"other\"\n\"1788170\";\"Hsi-yang-chen\";\"other\"\n\"1788170\";\"Xiyang Zhen\";\"other\"\n\"1788170\";\"xi yang\";\"other\"\n\"1788170\";\"西阳\";\"other\"\n\"1788206\";\"Xixiang\";\"main\"\n\"1788206\";\"Hsi-hsiang\";\"other\"\n\"1788209\";\"Longquan\";\"main\"\n\"1788209\";\"Hsi\";\"other\"\n\"1788209\";\"Hsi-hsien\";\"other\"\n\"1788209\";\"Hsi-hsien-ch'eng\";\"other\"\n\"1788209\";\"Hsi-hsien-ch’eng\";\"other\"\n\"1788209\";\"Lu-liang\";\"other\"\n\"1788209\";\"Lü-liang\";\"other\"\n\"1788209\";\"Sichow\";\"other\"\n\"1788209\";\"Xixian\";\"other\"\n\"1788209\";\"long quan\";\"other\"\n\"1788209\";\"龙泉\";\"other\"\n\"1788224\";\"Xixi\";\"main\"\n\"1788224\";\"Hsi-hsi\";\"other\"\n\"1788230\";\"Xiwu\";\"main\"\n\"1788230\";\"Hsi-wu\";\"other\"\n\"1788230\";\"Hsi-wu-ts'un\";\"other\"\n\"1788230\";\"Hsi-wu-ts’un\";\"other\"\n\"1788230\";\"Xiwu Zhen\";\"other\"\n\"1788230\";\"xi wu\";\"other\"\n\"1788230\";\"xi wu zhen\";\"other\"\n\"1788230\";\"西吴\";\"other\"\n\"1788230\";\"西吴镇\";\"other\"\n\"1788232\";\"Xiwu\";\"main\"\n\"1788232\";\"Hsi-wu\";\"other\"\n\"1788232\";\"Hsi-wu-chen\";\"other\"\n\"1788232\";\"Xiwu Zhen\";\"other\"\n\"1788232\";\"Xiwuzhen\";\"other\"\n\"1788232\";\"西坞\";\"other\"\n\"1788232\";\"西坞镇\";\"other\"\n\"1788259\";\"Xiushi\";\"main\"\n\"1788259\";\"Xiushi Zhen\";\"other\"\n\"1788259\";\"秀市\";\"other\"\n\"1788259\";\"秀市镇\";\"other\"\n\"1788263\";\"Xiushan\";\"main\"\n\"1788263\";\"Ch'i-lu\";\"other\"\n\"1788263\";\"Ch’i-lu\";\"other\"\n\"1788263\";\"T'ung-hai\";\"other\"\n\"1788263\";\"T'ung-hai-hsien\";\"other\"\n\"1788263\";\"Tonghai\";\"other\"\n\"1788263\";\"Tonghai Xian\";\"other\"\n\"1788263\";\"T’ung-hai\";\"other\"\n\"1788263\";\"T’ung-hai-hsien\";\"other\"\n\"1788263\";\"Xiushan Zhen\";\"other\"\n\"1788263\";\"tong hai xian\";\"other\"\n\"1788263\";\"xiu shan\";\"other\"\n\"1788263\";\"xiu shan zhen\";\"other\"\n\"1788263\";\"秀山\";\"other\"\n\"1788263\";\"秀山镇\";\"other\"\n\"1788263\";\"通海县\";\"other\"\n\"1788268\";\"Xiulin\";\"main\"\n\"1788268\";\"Shih-shou\";\"other\"\n\"1788268\";\"Shih-shou-hsien\";\"other\"\n\"1788268\";\"Shih-show-hsien\";\"other\"\n\"1788268\";\"Shishou\";\"other\"\n\"1788274\";\"Xituan\";\"main\"\n\"1788274\";\"Hsi-t'uan\";\"other\"\n\"1788274\";\"Hsi-t'uan-chen\";\"other\"\n\"1788274\";\"Hsi-t’uan\";\"other\"\n\"1788274\";\"Hsi-t’uan-chen\";\"other\"\n\"1788274\";\"Xituan Zhen\";\"other\"\n\"1788274\";\"西团\";\"other\"\n\"1788274\";\"西团镇\";\"other\"\n\"1788282\";\"Xitou\";\"main\"\n\"1788282\";\"Xitou Xiang\";\"other\"\n\"1788282\";\"xi tou\";\"other\"\n\"1788282\";\"xi tou xiang\";\"other\"\n\"1788282\";\"溪头\";\"other\"\n\"1788282\";\"溪头乡\";\"other\"\n\"1788286\";\"Xiting\";\"main\"\n\"1788286\";\"Hsi-t'ing\";\"other\"\n\"1788286\";\"Hsi-t'ing-chen\";\"other\"\n\"1788286\";\"Hsi-t’ing\";\"other\"\n\"1788286\";\"Hsi-t’ing-chen\";\"other\"\n\"1788286\";\"Xiting Zhen\";\"other\"\n\"1788286\";\"西亭\";\"other\"\n\"1788286\";\"西亭镇\";\"other\"\n\"1788291\";\"Xitangtuo\";\"main\"\n\"1788302\";\"Houxixi\";\"main\"\n\"1788302\";\"Hsi-t'an\";\"other\"\n\"1788302\";\"Hsi-t’an\";\"other\"\n\"1788302\";\"Xitan\";\"other\"\n\"1788302\";\"hou xi xi\";\"other\"\n\"1788302\";\"后溪西\";\"other\"\n\"1788316\";\"Xishuijie\";\"main\"\n\"1788316\";\"Hsi-shui-chieh\";\"other\"\n\"1788316\";\"Xishuijie Xiang\";\"other\"\n\"1788316\";\"西水界\";\"other\"\n\"1788316\";\"西水界乡\";\"other\"\n\"1788328\";\"Xishiqiao\";\"main\"\n\"1788328\";\"Hsi-shih-ch'iao\";\"other\"\n\"1788328\";\"Hsi-shih-ch’iao\";\"other\"\n\"1788328\";\"Xishiqiao Zhen\";\"other\"\n\"1788328\";\"西石桥\";\"other\"\n\"1788328\";\"西石桥镇\";\"other\"\n\"1788351\";\"Xishan\";\"main\"\n\"1788351\";\"Hsi-shan\";\"other\"\n\"1788351\";\"Hsi-shan-wan-shou-kung\";\"other\"\n\"1788351\";\"Wan-shou-kung\";\"other\"\n\"1788351\";\"Xishan Zhen\";\"other\"\n\"1788351\";\"西山\";\"other\"\n\"1788351\";\"西山镇\";\"other\"\n\"1788352\";\"Xishan\";\"main\"\n\"1788352\";\"Hsi-shan-chieh\";\"other\"\n\"1788365\";\"Xisa\";\"main\"\n\"1788365\";\"Hsi-ch'ou\";\"other\"\n\"1788365\";\"Hsi-ch'ou-hsien\";\"other\"\n\"1788365\";\"Hsi-ch’ou\";\"other\"\n\"1788365\";\"Hsi-ch’ou-hsien\";\"other\"\n\"1788365\";\"Hsi-hsi\";\"other\"\n\"1788365\";\"Hsi-sa\";\"other\"\n\"1788365\";\"Hsi-sa-chen\";\"other\"\n\"1788365\";\"Hsi-sa-chieh\";\"other\"\n\"1788365\";\"Sichow-hsien\";\"other\"\n\"1788365\";\"Sisha\";\"other\"\n\"1788365\";\"Sishakai\";\"other\"\n\"1788365\";\"Xichou\";\"other\"\n\"1788365\";\"xi sa\";\"other\"\n\"1788365\";\"西洒\";\"other\"\n\"1788402\";\"Xiongzhou\";\"main\"\n\"1788402\";\"Namyung\";\"other\"\n\"1788402\";\"Nan-hsiung\";\"other\"\n\"1788402\";\"Nan-hsiung-hsien\";\"other\"\n\"1788402\";\"Nanxiong\";\"other\"\n\"1788402\";\"Nanyung-hsien\";\"other\"\n\"1788402\";\"雄州\";\"other\"\n\"1788406\";\"Guixi\";\"main\"\n\"1788406\";\"Kuei-ch'i\";\"other\"\n\"1788406\";\"Kuei-ch'i-hsien\";\"other\"\n\"1788406\";\"Kuei-ch'i-hsien-ch'eng\";\"other\"\n\"1788406\";\"Kuei-ch’i\";\"other\"\n\"1788406\";\"Kuei-ch’i-hsien\";\"other\"\n\"1788406\";\"Kuei-ch’i-hsien-ch’eng\";\"other\"\n\"1788406\";\"Kuei-hsi\";\"other\"\n\"1788406\";\"Kweiki\";\"other\"\n\"1788406\";\"Kweikihsien\";\"other\"\n\"1788406\";\"Xiongshi\";\"other\"\n\"1788407\";\"Xiongshan\";\"main\"\n\"1788407\";\"Cheng-ho\";\"other\"\n\"1788407\";\"Cheng-ho-hsien\";\"other\"\n\"1788407\";\"Chiu-cheng-ho\";\"other\"\n\"1788407\";\"Xiongshan Zhen\";\"other\"\n\"1788407\";\"Zhenghe\";\"other\"\n\"1788407\";\"政和\";\"other\"\n\"1788407\";\"熊山\";\"other\"\n\"1788407\";\"熊山镇\";\"other\"\n\"1788425\";\"Xinzhu\";\"main\"\n\"1788425\";\"Hsin-chu\";\"other\"\n\"1788425\";\"Hsin-chu-chen\";\"other\"\n\"1788425\";\"xin zhu\";\"other\"\n\"1788425\";\"新筑\";\"other\"\n\"1788450\";\"Xinzhou\";\"main\"\n\"1788450\";\"Hsin\";\"other\"\n\"1788450\";\"Hsin-hsien\";\"other\"\n\"1788450\";\"Hsin-hsien-ch'eng\";\"other\"\n\"1788450\";\"Hsin-hsien-ch’eng\";\"other\"\n\"1788450\";\"Hsin-ting\";\"other\"\n\"1788450\";\"Sinchow\";\"other\"\n\"1788450\";\"Sinhsien\";\"other\"\n\"1788450\";\"Xinxian\";\"other\"\n\"1788452\";\"Xinzhou\";\"main\"\n\"1788452\";\"Hsin-chou\";\"other\"\n\"1788452\";\"Hsin-chou-chen\";\"other\"\n\"1788452\";\"Sinchow\";\"other\"\n\"1788457\";\"Xinzhou\";\"main\"\n\"1788457\";\"Hsi-lung\";\"other\"\n\"1788457\";\"Hsi-lung-hsien\";\"other\"\n\"1788457\";\"Hsin-chou\";\"other\"\n\"1788457\";\"Hsin-chou-chen\";\"other\"\n\"1788457\";\"Longlin Gezu Zizhixian\";\"other\"\n\"1788457\";\"Lung-lin\";\"other\"\n\"1788457\";\"Lung-lin-hsiang\";\"other\"\n\"1788457\";\"Lung-lin-ko-tsu-tzu-chih-hsien\";\"other\"\n\"1788457\";\"Silung\";\"other\"\n\"1788457\";\"Silung-hsien\";\"other\"\n\"1788457\";\"xin zhou\";\"other\"\n\"1788457\";\"新州\";\"other\"\n\"1788462\";\"Xinzhi\";\"main\"\n\"1788462\";\"Hsin-chih\";\"other\"\n\"1788462\";\"Hsin-chih-ts'un\";\"other\"\n\"1788462\";\"Hsin-chih-ts’un\";\"other\"\n\"1788462\";\"Pei-ts'un\";\"other\"\n\"1788462\";\"Pei-ts’un\";\"other\"\n\"1788467\";\"Xinzheng\";\"main\"\n\"1788467\";\"xin zheng\";\"other\"\n\"1788467\";\"新政\";\"other\"\n\"1788482\";\"Xinzhan\";\"main\"\n\"1788482\";\"Hsin-chan\";\"other\"\n\"1788491\";\"Xinzhai\";\"main\"\n\"1788491\";\"Hsin-chai\";\"other\"\n\"1788491\";\"Xinzhai Xiang\";\"other\"\n\"1788491\";\"新寨\";\"other\"\n\"1788491\";\"新寨乡\";\"other\"\n\"1788493\";\"Xinzhai\";\"main\"\n\"1788493\";\"新寨\";\"other\"\n\"1788508\";\"Xinyu\";\"main\"\n\"1788508\";\"Hsin-yu\";\"other\"\n\"1788508\";\"Hsin-yu-chen\";\"other\"\n\"1788508\";\"Hsin-yu-hsien\";\"other\"\n\"1788508\";\"Hsin-yu-hsien-ch'eng\";\"other\"\n\"1788508\";\"Hsin-yu-shih\";\"other\"\n\"1788508\";\"Hsin-yü\";\"other\"\n\"1788508\";\"Hsin-yü-chen\";\"other\"\n\"1788508\";\"Hsin-yü-hsien\";\"other\"\n\"1788508\";\"Hsin-yü-hsien-ch’eng\";\"other\"\n\"1788508\";\"Hsin-yü-shih\";\"other\"\n\"1788508\";\"Sinyu-hsien\";\"other\"\n\"1788508\";\"Sinyü-hsien\";\"other\"\n\"1788520\";\"Xinyi\";\"main\"\n\"1788520\";\"Hsin-i\";\"other\"\n\"1788520\";\"Hsin-i-chen\";\"other\"\n\"1788520\";\"xin yi\";\"other\"\n\"1788520\";\"信义\";\"other\"\n\"1788522\";\"Xinye\";\"main\"\n\"1788522\";\"Hsin-yeh\";\"other\"\n\"1788522\";\"Hsin-yeh-hsien\";\"other\"\n\"1788522\";\"Sin-ye-hsien\";\"other\"\n\"1788522\";\"Sinyeh-hsien\";\"other\"\n\"1788534\";\"Xinyang\";\"main\"\n\"1788534\";\"Czinan'\";\"other\"\n\"1788534\";\"Hsin-yang\";\"other\"\n\"1788534\";\"Hsin-yang-hsien\";\"other\"\n\"1788534\";\"Hsin-yang-shih\";\"other\"\n\"1788534\";\"Sinyang\";\"other\"\n\"1788534\";\"Sinyang-hsien\";\"other\"\n\"1788534\";\"Цзинань\";\"other\"\n\"1788537\";\"Xinxu\";\"main\"\n\"1788537\";\"Hsin-hsu\";\"other\"\n\"1788537\";\"Hsin-hsü\";\"other\"\n\"1788537\";\"Xinxu Zhen\";\"other\"\n\"1788537\";\"新圩\";\"other\"\n\"1788537\";\"新圩镇\";\"other\"\n\"1788548\";\"Xinxu\";\"main\"\n\"1788548\";\"Xinxu Zhen\";\"other\"\n\"1788548\";\"xin wei\";\"other\"\n\"1788548\";\"新圩\";\"other\"\n\"1788563\";\"Xinxing\";\"main\"\n\"1788563\";\"Hsin-hsing\";\"other\"\n\"1788563\";\"Xinxing Zhen\";\"other\"\n\"1788563\";\"xin xing\";\"other\"\n\"1788563\";\"xin xing zhen\";\"other\"\n\"1788563\";\"新兴\";\"other\"\n\"1788563\";\"新兴镇\";\"other\"\n\"1788567\";\"Xincheng\";\"main\"\n\"1788567\";\"Hsin-hsing\";\"other\"\n\"1788567\";\"Hsin-hsing-hsien\";\"other\"\n\"1788567\";\"Sinhing\";\"other\"\n\"1788567\";\"Sunhing\";\"other\"\n\"1788567\";\"Sunhing-hsien\";\"other\"\n\"1788567\";\"Xinxing\";\"other\"\n\"1788567\";\"xin cheng\";\"other\"\n\"1788567\";\"新城\";\"other\"\n\"1788572\";\"Xinxiang\";\"main\"\n\"1788572\";\"Hsin-hsiang\";\"other\"\n\"1788572\";\"Hsin-hsiang-hsien\";\"other\"\n\"1788572\";\"Hsin-hsiang-shih\";\"other\"\n\"1788572\";\"Hsinghsiang\";\"other\"\n\"1788572\";\"Sin'sjan\";\"other\"\n\"1788572\";\"Singsieng\";\"other\"\n\"1788572\";\"Sinsiang-hsien\";\"other\"\n\"1788572\";\"Синьсян\";\"other\"\n\"1788601\";\"Longquan\";\"main\"\n\"1788601\";\"Hsin-t'ien\";\"other\"\n\"1788601\";\"Hsin-t'ien-hsien\";\"other\"\n\"1788601\";\"Hsin-t’ien\";\"other\"\n\"1788601\";\"Hsin-t’ien-hsien\";\"other\"\n\"1788601\";\"Longquanzhen\";\"other\"\n\"1788601\";\"Sintien-hsien\";\"other\"\n\"1788601\";\"Xintian\";\"other\"\n\"1788601\";\"long quan\";\"other\"\n\"1788601\";\"龙泉\";\"other\"\n\"1788611\";\"Xintang\";\"main\"\n\"1788611\";\"Hsin-t'ang\";\"other\"\n\"1788611\";\"Hsin-t’ang\";\"other\"\n\"1788611\";\"Santong\";\"other\"\n\"1788611\";\"Suntong\";\"other\"\n\"1788611\";\"Xintang Zhen\";\"other\"\n\"1788611\";\"xin tang\";\"other\"\n\"1788611\";\"新塘\";\"other\"\n\"1788618\";\"Xintai\";\"main\"\n\"1788618\";\"Hsin-t'ai\";\"other\"\n\"1788618\";\"Hsin-t'ai-hsien\";\"other\"\n\"1788618\";\"Hsin-t’ai\";\"other\"\n\"1788618\";\"Hsin-t’ai-hsien\";\"other\"\n\"1788618\";\"Hsing-t'ai\";\"other\"\n\"1788618\";\"Hsing-t’ai\";\"other\"\n\"1788618\";\"Sintai\";\"other\"\n\"1788618\";\"Sintaihsien\";\"other\"\n\"1788618\";\"Sintoihsien\";\"other\"\n\"1788630\";\"Xinshiba\";\"main\"\n\"1788630\";\"Chieh-lo\";\"other\"\n\"1788630\";\"Ganluo\";\"other\"\n\"1788630\";\"Hsi-hsi-chiao-pa\";\"other\"\n\"1788630\";\"Hsin-shih-pa\";\"other\"\n\"1788630\";\"Kan-lo\";\"other\"\n\"1788630\";\"xin shi ba\";\"other\"\n\"1788630\";\"新市坝\";\"other\"\n\"1788632\";\"Xinshi\";\"main\"\n\"1788632\";\"Hsin-shih\";\"other\"\n\"1788632\";\"Hsin-shih-chen\";\"other\"\n\"1788632\";\"Xinshi Zhen\";\"other\"\n\"1788632\";\"xing shi\";\"other\"\n\"1788632\";\"幸市\";\"other\"\n\"1788636\";\"Xinshi\";\"main\"\n\"1788636\";\"Hsin-shih\";\"other\"\n\"1788636\";\"Hsin-shih-chen\";\"other\"\n\"1788636\";\"Xinshi Zhen\";\"other\"\n\"1788636\";\"xin shi\";\"other\"\n\"1788636\";\"xin shi zhen\";\"other\"\n\"1788636\";\"新市\";\"other\"\n\"1788636\";\"新市镇\";\"other\"\n\"1788638\";\"Xinshi\";\"main\"\n\"1788638\";\"Ching-shan\";\"other\"\n\"1788638\";\"Ching-shan-hsien\";\"other\"\n\"1788638\";\"Jingshan\";\"other\"\n\"1788638\";\"Kingshan\";\"other\"\n\"1788638\";\"Kingshanhsien\";\"other\"\n\"1788638\";\"新市\";\"other\"\n\"1788650\";\"Daxinshao\";\"main\"\n\"1788650\";\"Xinshao\";\"other\"\n\"1788650\";\"Xinshao Zhen\";\"other\"\n\"1788650\";\"da xin shao\";\"other\"\n\"1788650\";\"xin shao\";\"other\"\n\"1788650\";\"xin shao zhen\";\"other\"\n\"1788650\";\"大新哨\";\"other\"\n\"1788650\";\"新哨\";\"other\"\n\"1788650\";\"新哨镇\";\"other\"\n\"1788657\";\"Xinquan\";\"main\"\n\"1788657\";\"Hsin-ch'uan\";\"other\"\n\"1788657\";\"Hsin-ch’üan\";\"other\"\n\"1788657\";\"Xinquan Zhen\";\"other\"\n\"1788657\";\"新泉\";\"other\"\n\"1788657\";\"新泉镇\";\"other\"\n\"1788673\";\"Xinqiao\";\"main\"\n\"1788673\";\"Hsin-ch'iao\";\"other\"\n\"1788673\";\"Hsin-ch’iao\";\"other\"\n\"1788673\";\"Xinqiao Zhen\";\"other\"\n\"1788673\";\"xin qiao\";\"other\"\n\"1788673\";\"xin qiao zhen\";\"other\"\n\"1788673\";\"新桥\";\"other\"\n\"1788673\";\"新桥镇\";\"other\"\n\"1788680\";\"Xinqiao\";\"main\"\n\"1788680\";\"Hsin-ch'iao\";\"other\"\n\"1788680\";\"Hsin-ch’iao\";\"other\"\n\"1788680\";\"Xinqiao Zhen\";\"other\"\n\"1788680\";\"新桥\";\"other\"\n\"1788680\";\"新桥镇\";\"other\"\n\"1788691\";\"Xinpu\";\"main\"\n\"1788691\";\"Hsin-p'u\";\"other\"\n\"1788691\";\"Hsin-p'u-yen\";\"other\"\n\"1788691\";\"Hsin-p’u\";\"other\"\n\"1788691\";\"Hsin-p’u-yen\";\"other\"\n\"1788691\";\"Xinpu Zhen\";\"other\"\n\"1788691\";\"Xinpuyan\";\"other\"\n\"1788691\";\"Xinpuzhen\";\"other\"\n\"1788691\";\"新浦\";\"other\"\n\"1788691\";\"新浦镇\";\"other\"\n\"1788694\";\"Xinpu\";\"main\"\n\"1788694\";\"Hsien-p'u\";\"other\"\n\"1788694\";\"Hsien-p’u\";\"other\"\n\"1788694\";\"Hsin-hai-lien\";\"other\"\n\"1788694\";\"Hsin-hai-lien-shih\";\"other\"\n\"1788694\";\"Hsin-p'u\";\"other\"\n\"1788694\";\"Hsin-p'u-chen\";\"other\"\n\"1788694\";\"Hsin-p’u\";\"other\"\n\"1788694\";\"Hsin-p’u-chen\";\"other\"\n\"1788694\";\"Lianyungang\";\"other\"\n\"1788694\";\"Lien-yun-chiang\";\"other\"\n\"1788694\";\"Lien-yun-chiang-shih\";\"other\"\n\"1788694\";\"Lien-yun-kang\";\"other\"\n\"1788694\";\"Lien-yün-chiang\";\"other\"\n\"1788694\";\"Lien-yün-chiang-shih\";\"other\"\n\"1788694\";\"Lien-yün-kang\";\"other\"\n\"1788694\";\"Sinpuchen\";\"other\"\n\"1788694\";\"Tsin-pu\";\"other\"\n\"1788694\";\"lian yun gang\";\"other\"\n\"1788694\";\"lian yun gang shi\";\"other\"\n\"1788694\";\"lyen-wingang\";\"other\"\n\"1788694\";\"ليەنيۈنگاڭ شەھىرى\";\"other\"\n\"1788694\";\"连云港\";\"other\"\n\"1788694\";\"连云港市\";\"other\"\n\"1788694\";\"連雲港\";\"other\"\n\"1788694\";\"連雲港市\";\"other\"\n\"1788694\";\"롄윈강\";\"other\"\n\"1788696\";\"Xinpu\";\"main\"\n\"1788696\";\"Hsin-p'u\";\"other\"\n\"1788696\";\"Hsin-p'u-wan\";\"other\"\n\"1788696\";\"Hsin-p’u\";\"other\"\n\"1788696\";\"Hsin-p’u-wan\";\"other\"\n\"1788696\";\"Xinpu Zhen\";\"other\"\n\"1788696\";\"新铺\";\"other\"\n\"1788696\";\"新铺镇\";\"other\"\n\"1788701\";\"Xinpeicun\";\"main\"\n\"1788701\";\"Hsin-p'ei-ts'un\";\"other\"\n\"1788701\";\"Hsin-p’ei-ts’un\";\"other\"\n\"1788701\";\"Peicun Xiang\";\"other\"\n\"1788701\";\"Shiyihao Xiang\";\"other\"\n\"1788701\";\"什义号乡\";\"other\"\n\"1788701\";\"新裴村\";\"other\"\n\"1788701\";\"裴村乡\";\"other\"\n\"1788708\";\"Xinning\";\"main\"\n\"1788708\";\"Fu-nan-hsiang\";\"other\"\n\"1788708\";\"Fu-nan-hsien\";\"other\"\n\"1788708\";\"Fu-sui\";\"other\"\n\"1788708\";\"Funan\";\"other\"\n\"1788708\";\"Hsin-ning\";\"other\"\n\"1788708\";\"xin ning\";\"other\"\n\"1788708\";\"新宁\";\"other\"\n\"1788730\";\"Xinmian\";\"main\"\n\"1788730\";\"Nongchang\";\"other\"\n\"1788730\";\"Shih-mien\";\"other\"\n\"1788730\";\"Shimian\";\"other\"\n\"1788730\";\"xin mian\";\"other\"\n\"1788730\";\"新棉\";\"other\"\n\"1788745\";\"Xinling\";\"main\"\n\"1788745\";\"Badong\";\"other\"\n\"1788745\";\"Pa-tung\";\"other\"\n\"1788745\";\"Pa-tung-hsien\";\"other\"\n\"1788745\";\"xin ling\";\"other\"\n\"1788745\";\"信陵\";\"other\"\n\"1788747\";\"Xinlicun\";\"main\"\n\"1788760\";\"Xinkaikou\";\"main\"\n\"1788760\";\"Hsin-k'ai-t'un\";\"other\"\n\"1788760\";\"Hsin-k’ai-t’un\";\"other\"\n\"1788763\";\"Xinkai\";\"main\"\n\"1788763\";\"Hsin-k'ai-kang\";\"other\"\n\"1788763\";\"Hsin-k’ai-kang\";\"other\"\n\"1788763\";\"Hsu-chia\";\"other\"\n\"1788763\";\"Hsü-chia\";\"other\"\n\"1788763\";\"Xinkai Zhen\";\"other\"\n\"1788763\";\"Xinkaigang\";\"other\"\n\"1788763\";\"新开\";\"other\"\n\"1788763\";\"新开镇\";\"other\"\n\"1788772\";\"Xinjing\";\"main\"\n\"1788772\";\"Ching-hsi\";\"other\"\n\"1788772\";\"Ching-hsi-hsien\";\"other\"\n\"1788772\";\"Ching-hsi-hsien-ch'eng\";\"other\"\n\"1788772\";\"Ching-hsi-hsien-ch’eng\";\"other\"\n\"1788772\";\"Jingxi\";\"other\"\n\"1788772\";\"Kuei-shun\";\"other\"\n\"1788772\";\"Kweishun\";\"other\"\n\"1788772\";\"Tsingsi\";\"other\"\n\"1788772\";\"Tsingsihsien\";\"other\"\n\"1788772\";\"xin jing\";\"other\"\n\"1788772\";\"新靖\";\"other\"\n\"1788793\";\"Xinjiayuan\";\"main\"\n\"1788793\";\"Hsin-chia-yuan\";\"other\"\n\"1788793\";\"Hsin-chia-yüan\";\"other\"\n\"1788793\";\"Xinjiayuan Xiang\";\"other\"\n\"1788793\";\"新家园\";\"other\"\n\"1788793\";\"新家园乡\";\"other\"\n\"1788800\";\"Longxing\";\"main\"\n\"1788800\";\"Hsin-chiang\";\"other\"\n\"1788800\";\"Hsin-chiang-hsien\";\"other\"\n\"1788800\";\"Kiangchow\";\"other\"\n\"1788800\";\"Sinkiang\";\"other\"\n\"1788800\";\"Sinkianghsien\";\"other\"\n\"1788800\";\"Xinjiang\";\"other\"\n\"1788800\";\"long xing\";\"other\"\n\"1788800\";\"龙兴\";\"other\"\n\"1788816\";\"Xinji\";\"main\"\n\"1788816\";\"Hsin-chi\";\"other\"\n\"1788816\";\"Hsin-chi-chen\";\"other\"\n\"1788816\";\"Shu-lu-hsien\";\"other\"\n\"1788816\";\"Shulu\";\"other\"\n\"1788816\";\"Sin'tszi\";\"other\"\n\"1788816\";\"Sin’tszi\";\"other\"\n\"1788830\";\"Xinji\";\"main\"\n\"1788830\";\"Hsin-chi\";\"other\"\n\"1788830\";\"Xinji Xiang\";\"other\"\n\"1788830\";\"辛集\";\"other\"\n\"1788830\";\"辛集乡\";\"other\"\n\"1788836\";\"Xinji\";\"main\"\n\"1788836\";\"Hsin-chi\";\"other\"\n\"1788836\";\"Sin'tszi\";\"other\"\n\"1788836\";\"Sin’tszi\";\"other\"\n\"1788836\";\"Xinji Zhen\";\"other\"\n\"1788836\";\"新集\";\"other\"\n\"1788836\";\"新集镇\";\"other\"\n\"1788852\";\"Xining\";\"main\"\n\"1788852\";\"Hsi-ning\";\"other\"\n\"1788852\";\"Hsi-ning-shih\";\"other\"\n\"1788852\";\"Sining\";\"other\"\n\"1788852\";\"Sining-hsien\";\"other\"\n\"1788852\";\"Siningfu\";\"other\"\n\"1788852\";\"Tay Ninh\";\"other\"\n\"1788852\";\"Tây Ninh\";\"other\"\n\"1788852\";\"Xining Shi\";\"other\"\n\"1788852\";\"sinin\";\"other\"\n\"1788852\";\"sining\";\"other\"\n\"1788852\";\"xi ning\";\"other\"\n\"1788852\";\"xi ning shi\";\"other\"\n\"1788852\";\"Синин\";\"other\"\n\"1788852\";\"شىنىڭ شەھىرى\";\"other\"\n\"1788852\";\"西宁\";\"other\"\n\"1788852\";\"西宁市\";\"other\"\n\"1788852\";\"西寧市\";\"other\"\n\"1788852\";\"시닝\";\"other\"\n\"1788863\";\"Xinhuang\";\"main\"\n\"1788863\";\"Hsin-huang\";\"other\"\n\"1788863\";\"Hsin-huang-t'ung-tsu-tzu-chih-hsien\";\"other\"\n\"1788863\";\"Hsin-huang-t’ung-tsu-tzu-chih-hsien\";\"other\"\n\"1788863\";\"Huang\";\"other\"\n\"1788863\";\"Huang-hsien\";\"other\"\n\"1788863\";\"xin huang\";\"other\"\n\"1788863\";\"新晃\";\"other\"\n\"1788869\";\"Shangmei\";\"main\"\n\"1788869\";\"Hsin-hua\";\"other\"\n\"1788869\";\"Hsin-hua-hsien\";\"other\"\n\"1788869\";\"Sinhwa\";\"other\"\n\"1788869\";\"Sinhwa-hsien\";\"other\"\n\"1788869\";\"Xinhua\";\"other\"\n\"1788869\";\"上梅\";\"other\"\n\"1788871\";\"Xinhua\";\"main\"\n\"1788871\";\"Ch'ao-chia\";\"other\"\n\"1788871\";\"Ch'iao-chia\";\"other\"\n\"1788871\";\"Ch'iao-chia-hsien\";\"other\"\n\"1788871\";\"Ch’ao-chia\";\"other\"\n\"1788871\";\"Ch’iao-chia\";\"other\"\n\"1788871\";\"Ch’iao-chia-hsien\";\"other\"\n\"1788871\";\"Kiaokia\";\"other\"\n\"1788871\";\"Kiaokia-hsien\";\"other\"\n\"1788871\";\"Qiaojia\";\"other\"\n\"1788871\";\"xin hua\";\"other\"\n\"1788871\";\"新华\";\"other\"\n\"1788875\";\"Xinhua\";\"main\"\n\"1788875\";\"Fu-chou\";\"other\"\n\"1788875\";\"Fu-chou-hsien\";\"other\"\n\"1788875\";\"Fu-chow\";\"other\"\n\"1788875\";\"Fu-ning-hsien\";\"other\"\n\"1788875\";\"Funing\";\"other\"\n\"1788875\";\"xin hua\";\"other\"\n\"1788875\";\"新华\";\"other\"\n\"1788879\";\"Xinhe\";\"main\"\n\"1788879\";\"Hsin-ho-chen\";\"other\"\n\"1788879\";\"Shuxun\";\"other\"\n\"1788879\";\"Xinhe Zhen\";\"other\"\n\"1788879\";\"Xinhezhen\";\"other\"\n\"1788879\";\"新河\";\"other\"\n\"1788879\";\"新河镇\";\"other\"\n\"1788879\";\"树勋\";\"other\"\n\"1788912\";\"Weifen\";\"main\"\n\"1788912\";\"Hinghsien\";\"other\"\n\"1788912\";\"Hsing\";\"other\"\n\"1788912\";\"Hsing-hsien\";\"other\"\n\"1788912\";\"Sinsyan'\";\"other\"\n\"1788912\";\"Sinsyan’\";\"other\"\n\"1788912\";\"Xingxian\";\"other\"\n\"1788912\";\"wei fen\";\"other\"\n\"1788912\";\"蔚汾\";\"other\"\n\"1788915\";\"Zhongcheng\";\"main\"\n\"1788915\";\"Hingwen\";\"other\"\n\"1788915\";\"Hingwenhsien\";\"other\"\n\"1788915\";\"Hsing-wen\";\"other\"\n\"1788915\";\"Hsing-wen-hsien\";\"other\"\n\"1788915\";\"Xingwen\";\"other\"\n\"1788915\";\"zhong cheng\";\"other\"\n\"1788915\";\"中城\";\"other\"\n\"1788919\";\"Xingtian\";\"main\"\n\"1788919\";\"Hingtien\";\"other\"\n\"1788919\";\"Hsing-t'ien\";\"other\"\n\"1788919\";\"Hsing-t'ien-i\";\"other\"\n\"1788919\";\"Hsing-t’ien\";\"other\"\n\"1788919\";\"Hsing-t’ien-i\";\"other\"\n\"1788919\";\"Singtien\";\"other\"\n\"1788919\";\"Xingtian Zhen\";\"other\"\n\"1788919\";\"xing tian\";\"other\"\n\"1788919\";\"xing tian zhen\";\"other\"\n\"1788919\";\"兴田\";\"other\"\n\"1788919\";\"兴田镇\";\"other\"\n\"1788927\";\"Xingtai\";\"main\"\n\"1788927\";\"Chin-t'ai\";\"other\"\n\"1788927\";\"Chin-t’ai\";\"other\"\n\"1788927\";\"Hsing-t'ai\";\"other\"\n\"1788927\";\"Hsing-t'ai-hsien\";\"other\"\n\"1788927\";\"Hsing-tai-shih\";\"other\"\n\"1788927\";\"Hsing-t’ai\";\"other\"\n\"1788927\";\"Hsing-t’ai-hsien\";\"other\"\n\"1788927\";\"Setay\";\"other\"\n\"1788927\";\"Shun'de\";\"other\"\n\"1788927\";\"Shun-te\";\"other\"\n\"1788927\";\"Shunteh\";\"other\"\n\"1788927\";\"Shuntehfu\";\"other\"\n\"1788927\";\"Shun’de\";\"other\"\n\"1788927\";\"Singtai\";\"other\"\n\"1788927\";\"Yingtaihsien\";\"other\"\n\"1788932\";\"Xingzhen\";\"main\"\n\"1788932\";\"Hsing-chen\";\"other\"\n\"1788932\";\"Hsing-shih\";\"other\"\n\"1788932\";\"Hsing-shih-chen\";\"other\"\n\"1788932\";\"Xingshizhen\";\"other\"\n\"1788932\";\"xing zhen\";\"other\"\n\"1788932\";\"兴镇\";\"other\"\n\"1788941\";\"Xingren\";\"main\"\n\"1788941\";\"Hsing-jen\";\"other\"\n\"1788941\";\"Hsing-jen-chen\";\"other\"\n\"1788941\";\"Xingren Zhen\";\"other\"\n\"1788941\";\"兴仁\";\"other\"\n\"1788941\";\"兴仁镇\";\"other\"\n\"1788948\";\"Xingping\";\"main\"\n\"1788948\";\"Hsing-p'ing\";\"other\"\n\"1788948\";\"Hsing-p’ing\";\"other\"\n\"1788948\";\"兴坪\";\"other\"\n\"1788949\";\"Xingping\";\"main\"\n\"1788949\";\"Dafuzhen\";\"other\"\n\"1788949\";\"Hingping\";\"other\"\n\"1788949\";\"Hsing-p'ing\";\"other\"\n\"1788949\";\"Hsing-p'ing-hsien\";\"other\"\n\"1788949\";\"Hsing-p’ing\";\"other\"\n\"1788949\";\"Hsing-p’ing-hsien\";\"other\"\n\"1788949\";\"Sinpin\";\"other\"\n\"1788949\";\"Xingping Shi\";\"other\"\n\"1788949\";\"xing ping\";\"other\"\n\"1788949\";\"xing ping shi\";\"other\"\n\"1788949\";\"兴平\";\"other\"\n\"1788949\";\"兴平市\";\"other\"\n\"1788957\";\"Fuxing\";\"main\"\n\"1788957\";\"Fuxing Jiedao\";\"other\"\n\"1788957\";\"Hinghinghsien\";\"other\"\n\"1788957\";\"Hingning\";\"other\"\n\"1788957\";\"Hingning-hsien\";\"other\"\n\"1788957\";\"Hsieng-ning\";\"other\"\n\"1788957\";\"Hsin-ning\";\"other\"\n\"1788957\";\"Hsing-ch'eng-chen\";\"other\"\n\"1788957\";\"Hsing-ch’eng-chen\";\"other\"\n\"1788957\";\"Hsing-ning\";\"other\"\n\"1788957\";\"Hsing-ning-hsien\";\"other\"\n\"1788957\";\"Xingning\";\"other\"\n\"1788957\";\"fu xing\";\"other\"\n\"1788957\";\"xing ning\";\"other\"\n\"1788957\";\"兴宁\";\"other\"\n\"1788957\";\"福兴\";\"other\"\n\"1788963\";\"Xinglong\";\"main\"\n\"1788963\";\"Hsing-lung\";\"other\"\n\"1788963\";\"Hsing-lung-chen\";\"other\"\n\"1788963\";\"Xinglongzhen\";\"other\"\n\"1788963\";\"兴隆\";\"other\"\n\"1788988\";\"Xinglong\";\"main\"\n\"1788988\";\"Xinglong Zhen\";\"other\"\n\"1788988\";\"xing long\";\"other\"\n\"1788988\";\"xing long zhen\";\"other\"\n\"1788988\";\"兴隆\";\"other\"\n\"1788988\";\"兴隆镇\";\"other\"\n\"1788997\";\"Xinglin\";\"main\"\n\"1788997\";\"Hsing-lin\";\"other\"\n\"1788997\";\"Hsing-lin-chen\";\"other\"\n\"1788997\";\"Xinglin Zhen\";\"other\"\n\"1788997\";\"杏林\";\"other\"\n\"1788997\";\"杏林镇\";\"other\"\n\"1789001\";\"Xingkou\";\"main\"\n\"1789001\";\"Hsing-k'ou-shih\";\"other\"\n\"1789001\";\"Hsing-k’ou-shih\";\"other\"\n\"1789001\";\"xing kou\";\"other\"\n\"1789001\";\"星口\";\"other\"\n\"1789030\";\"Xingguo\";\"main\"\n\"1789030\";\"Ch'in-an\";\"other\"\n\"1789030\";\"Ch'in-an-hsien\";\"other\"\n\"1789030\";\"Ch'ing-ang\";\"other\"\n\"1789030\";\"Ch’in-an\";\"other\"\n\"1789030\";\"Ch’in-an-hsien\";\"other\"\n\"1789030\";\"Ch’ing-ang\";\"other\"\n\"1789030\";\"Qin'an\";\"other\"\n\"1789030\";\"Qin’an\";\"other\"\n\"1789030\";\"Tsin'an'\";\"other\"\n\"1789030\";\"Tsinanhsien\";\"other\"\n\"1789030\";\"Tsin’an’\";\"other\"\n\"1789030\";\"兴国\";\"other\"\n\"1789031\";\"Xingguo\";\"main\"\n\"1789031\";\"Hingkwo-fu\";\"other\"\n\"1789031\";\"Hingkwochow\";\"other\"\n\"1789031\";\"Hsin-yang\";\"other\"\n\"1789031\";\"Hsing-kou\";\"other\"\n\"1789031\";\"Yang-hsin\";\"other\"\n\"1789031\";\"Yang-hsin-hsien\";\"other\"\n\"1789031\";\"Yangsio\";\"other\"\n\"1789031\";\"Yangxin\";\"other\"\n\"1789031\";\"xing guo\";\"other\"\n\"1789031\";\"兴国\";\"other\"\n\"1789053\";\"Xingao\";\"main\"\n\"1789053\";\"Hsin-kao\";\"other\"\n\"1789053\";\"Hsin-kao-ts'un\";\"other\"\n\"1789053\";\"Hsin-kao-ts’un\";\"other\"\n\"1789053\";\"Xingao Xiang\";\"other\"\n\"1789053\";\"新高\";\"other\"\n\"1789053\";\"新高乡\";\"other\"\n\"1789065\";\"Ankang\";\"main\"\n\"1789065\";\"An-k'ang-hsien\";\"other\"\n\"1789065\";\"An-k’ang-hsien\";\"other\"\n\"1789065\";\"Ankan\";\"other\"\n\"1789065\";\"Hingan\";\"other\"\n\"1789065\";\"Hinganfu\";\"other\"\n\"1789065\";\"Hsing-an\";\"other\"\n\"1789065\";\"Xing'an\";\"other\"\n\"1789065\";\"Xing’an\";\"other\"\n\"1789065\";\"an kang\";\"other\"\n\"1789065\";\"an kang shi\";\"other\"\n\"1789065\";\"Анкан\";\"other\"\n\"1789065\";\"安康\";\"other\"\n\"1789065\";\"安康市\";\"other\"\n\"1789066\";\"Xing’an\";\"main\"\n\"1789066\";\"Xing'an\";\"ascii\"\n\"1789066\";\"Hingan\";\"other\"\n\"1789066\";\"Hinganhsien\";\"other\"\n\"1789066\";\"Hsing-an\";\"other\"\n\"1789066\";\"Hsing-an-hsien\";\"other\"\n\"1789066\";\"Hsing-an-hsien-ch'eng\";\"other\"\n\"1789066\";\"Hsing-an-hsien-ch’eng\";\"other\"\n\"1789066\";\"xing an\";\"other\"\n\"1789066\";\"兴安\";\"other\"\n\"1789068\";\"Xinfeng\";\"main\"\n\"1789068\";\"Hsin-feng\";\"other\"\n\"1789068\";\"Hsin-feng-chen\";\"other\"\n\"1789068\";\"Xinfeng Jieban\";\"other\"\n\"1789068\";\"Xinfengzhen\";\"other\"\n\"1789068\";\"xin feng\";\"other\"\n\"1789068\";\"新丰\";\"other\"\n\"1789075\";\"Xinfeng\";\"main\"\n\"1789075\";\"Hsin-feng\";\"other\"\n\"1789075\";\"Hsin-feng-chen\";\"other\"\n\"1789075\";\"Hsin-feng-chi\";\"other\"\n\"1789075\";\"Xinfeng Zhen\";\"other\"\n\"1789075\";\"新丰\";\"other\"\n\"1789075\";\"新丰镇\";\"other\"\n\"1789095\";\"Xindu\";\"main\"\n\"1789095\";\"Hsin-tu\";\"other\"\n\"1789095\";\"Hsin-tu-hsien\";\"other\"\n\"1789095\";\"Sin'du\";\"other\"\n\"1789095\";\"Sintu\";\"other\"\n\"1789095\";\"Sintu-hsien\";\"other\"\n\"1789095\";\"Sin’du\";\"other\"\n\"1789095\";\"xin dou\";\"other\"\n\"1789095\";\"新都\";\"other\"\n\"1789098\";\"Xindou\";\"main\"\n\"1789098\";\"Chang\";\"other\"\n\"1789098\";\"Changku\";\"other\"\n\"1789098\";\"Chango\";\"other\"\n\"1789098\";\"Chiu-lu-ho\";\"other\"\n\"1789098\";\"Dango Gomba\";\"other\"\n\"1789098\";\"Drango\";\"other\"\n\"1789098\";\"Laojie\";\"other\"\n\"1789098\";\"Lu-ho\";\"other\"\n\"1789098\";\"Luhuo\";\"other\"\n\"1789098\";\"Lukho\";\"other\"\n\"1789098\";\"Zhaggo\";\"other\"\n\"1789098\";\"xin dou\";\"other\"\n\"1789098\";\"新都\";\"other\"\n\"1789118\";\"Xindian\";\"main\"\n\"1789118\";\"Hsin-tien\";\"other\"\n\"1789118\";\"Hsingtien\";\"other\"\n\"1789118\";\"Sintien\";\"other\"\n\"1789124\";\"Xindian\";\"main\"\n\"1789124\";\"xin dian\";\"other\"\n\"1789124\";\"辛店\";\"other\"\n\"1789127\";\"Xindian\";\"main\"\n\"1789127\";\"Hsin-tien\";\"other\"\n\"1789127\";\"Xindian Zhen\";\"other\"\n\"1789127\";\"新店\";\"other\"\n\"1789127\";\"新店镇\";\"other\"\n\"1789132\";\"Xindian\";\"main\"\n\"1789132\";\"Hsin-tien\";\"other\"\n\"1789134\";\"Xindian\";\"main\"\n\"1789134\";\"Hsin-tien\";\"other\"\n\"1789134\";\"xin dian\";\"other\"\n\"1789134\";\"新店\";\"other\"\n\"1789137\";\"Xindi\";\"main\"\n\"1789137\";\"Honghu\";\"other\"\n\"1789137\";\"Hsin-ti\";\"other\"\n\"1789137\";\"Hsin-ti-chen\";\"other\"\n\"1789137\";\"Hung-hu\";\"other\"\n\"1789137\";\"Shin-ti\";\"other\"\n\"1789137\";\"Sinti\";\"other\"\n\"1789143\";\"Xindai\";\"main\"\n\"1789143\";\"Hsin-tai\";\"other\"\n\"1789143\";\"Hsin-tai-chen\";\"other\"\n\"1789143\";\"Xindai Zhen\";\"other\"\n\"1789143\";\"新埭\";\"other\"\n\"1789143\";\"新埭镇\";\"other\"\n\"1789176\";\"Feicheng\";\"main\"\n\"1789176\";\"Fei-ch'eng-hsien\";\"other\"\n\"1789176\";\"Fei-ch’eng-hsien\";\"other\"\n\"1789176\";\"Feychen\";\"other\"\n\"1789176\";\"Xincheng\";\"other\"\n\"1789180\";\"Xincheng\";\"main\"\n\"1789180\";\"Liu-chang\";\"other\"\n\"1789180\";\"Liu-chang-chen\";\"other\"\n\"1789180\";\"Liu-chang-ts'un\";\"other\"\n\"1789180\";\"Liu-chang-tsun-chen\";\"other\"\n\"1789180\";\"Liu-chang-ts’un\";\"other\"\n\"1789180\";\"Liuzhang\";\"other\"\n\"1789180\";\"Liuzhangzhen\";\"other\"\n\"1789180\";\"Yuan-ch'u\";\"other\"\n\"1789180\";\"Yuan-ch’ü\";\"other\"\n\"1789180\";\"Yuangqu\";\"other\"\n\"1789180\";\"xin cheng\";\"other\"\n\"1789180\";\"新城\";\"other\"\n\"1789181\";\"Xincheng\";\"main\"\n\"1789181\";\"Hsin-ch'eng\";\"other\"\n\"1789181\";\"Hsin-ch’eng\";\"other\"\n\"1789181\";\"Lin-t'an\";\"other\"\n\"1789181\";\"Lin-t’an\";\"other\"\n\"1789181\";\"Lintanhsien\";\"other\"\n\"1789181\";\"T'ao-chou\";\"other\"\n\"1789181\";\"Taochow\";\"other\"\n\"1789181\";\"Taochzhou\";\"other\"\n\"1789181\";\"T’ao-chou\";\"other\"\n\"1789181\";\"新城\";\"other\"\n\"1789186\";\"Xincheng\";\"main\"\n\"1789186\";\"Chao-chiao-hsien\";\"other\"\n\"1789186\";\"Chao-chio\";\"other\"\n\"1789186\";\"Chao-chueh\";\"other\"\n\"1789186\";\"Chao-chüeh\";\"other\"\n\"1789186\";\"Chaokioh\";\"other\"\n\"1789186\";\"Zhaojue\";\"other\"\n\"1789186\";\"xin cheng\";\"other\"\n\"1789186\";\"新城\";\"other\"\n\"1789190\";\"Xincheng Chengguanzhen\";\"main\"\n\"1789190\";\"Hsin-ch'eng\";\"other\"\n\"1789190\";\"Hsin-ch'eng-hsien\";\"other\"\n\"1789190\";\"Hsin-ch’eng\";\"other\"\n\"1789190\";\"Hsin-ch’eng-hsien\";\"other\"\n\"1789190\";\"Sincheng\";\"other\"\n\"1789190\";\"Sincheng-hsien\";\"other\"\n\"1789190\";\"Xincheng\";\"other\"\n\"1789190\";\"xin cheng cheng guan zhen\";\"other\"\n\"1789190\";\"忻城城关镇\";\"other\"\n\"1789201\";\"Xinchang Chengguanzhen\";\"main\"\n\"1789201\";\"Chengguan Zhen\";\"other\"\n\"1789201\";\"Hsin-ch'ang\";\"other\"\n\"1789201\";\"Hsin-ch'ang-hsien\";\"other\"\n\"1789201\";\"Hsin-ch'ang-hsien-ch'eng\";\"other\"\n\"1789201\";\"Hsin-ch’ang\";\"other\"\n\"1789201\";\"Hsin-ch’ang-hsien\";\"other\"\n\"1789201\";\"Hsin-ch’ang-hsien-ch’eng\";\"other\"\n\"1789201\";\"Sinchang\";\"other\"\n\"1789201\";\"Sinchanghsien\";\"other\"\n\"1789201\";\"cheng guan zhen\";\"other\"\n\"1789201\";\"城关镇\";\"other\"\n\"1789201\";\"新昌城关镇\";\"other\"\n\"1789213\";\"Xincang\";\"main\"\n\"1789213\";\"Hsin-ts'ang\";\"other\"\n\"1789213\";\"Hsin-ts'ang-chen\";\"other\"\n\"1789213\";\"Hsin-ts’ang\";\"other\"\n\"1789213\";\"Hsin-ts’ang-chen\";\"other\"\n\"1789213\";\"Xincang Zhen\";\"other\"\n\"1789213\";\"新仓\";\"other\"\n\"1789213\";\"新仓镇\";\"other\"\n\"1789218\";\"Xinbuzi\";\"main\"\n\"1789218\";\"Hsin-p'u-tzu\";\"other\"\n\"1789218\";\"Hsin-pao-tzu\";\"other\"\n\"1789218\";\"Hsin-p’u-tzu\";\"other\"\n\"1789218\";\"xin bao zi\";\"other\"\n\"1789218\";\"新堡子\";\"other\"\n\"1789219\";\"Xinbu\";\"main\"\n\"1789219\";\"Hsin-p'u\";\"other\"\n\"1789219\";\"Hsin-pao\";\"other\"\n\"1789219\";\"Hsin-p’u\";\"other\"\n\"1789219\";\"Hsin-t'un-p'u\";\"other\"\n\"1789219\";\"Hsin-t'un-pao\";\"other\"\n\"1789219\";\"Hsin-t’un-pao\";\"other\"\n\"1789219\";\"Hsin-t’un-p’u\";\"other\"\n\"1789219\";\"Xinbu Xiang\";\"other\"\n\"1789219\";\"新堡\";\"other\"\n\"1789219\";\"新堡乡\";\"other\"\n\"1789227\";\"Xinbao\";\"main\"\n\"1789227\";\"新堡\";\"other\"\n\"1789228\";\"Xinbang\";\"main\"\n\"1789228\";\"Hsin-chung-pang\";\"other\"\n\"1789228\";\"Hsin-pang\";\"other\"\n\"1789228\";\"Xinbang Zhen\";\"other\"\n\"1789228\";\"新浜\";\"other\"\n\"1789228\";\"新浜镇\";\"other\"\n\"1789265\";\"Xin’an\";\"main\"\n\"1789265\";\"Xin'an\";\"ascii\"\n\"1789265\";\"Lai'an\";\"other\"\n\"1789265\";\"Lai-an-hsien\";\"other\"\n\"1789265\";\"Lai’an\";\"other\"\n\"1789265\";\"Lia-an\";\"other\"\n\"1789265\";\"xin an\";\"other\"\n\"1789265\";\"新安\";\"other\"\n\"1789271\";\"Xinan\";\"main\"\n\"1789271\";\"Hsi-nan\";\"other\"\n\"1789271\";\"Nan-an\";\"other\"\n\"1789273\";\"Sanshui\";\"main\"\n\"1789273\";\"Hsi-man\";\"other\"\n\"1789273\";\"Hsi-nan-chen\";\"other\"\n\"1789273\";\"Hsin-nan\";\"other\"\n\"1789273\";\"Sainam\";\"other\"\n\"1789273\";\"Sainan\";\"other\"\n\"1789273\";\"Xinan\";\"other\"\n\"1789273\";\"三水\";\"other\"\n\"1789274\";\"Xin’an\";\"main\"\n\"1789274\";\"Xin'an\";\"ascii\"\n\"1789274\";\"Hsin-an\";\"other\"\n\"1789274\";\"xin an\";\"other\"\n\"1789274\";\"新庵\";\"other\"\n\"1789289\";\"Ximei\";\"main\"\n\"1789289\";\"Ch'i-mei-chen\";\"other\"\n\"1789289\";\"Ch'i-wei\";\"other\"\n\"1789289\";\"Ch’i-mei-chen\";\"other\"\n\"1789289\";\"Ch’i-wei\";\"other\"\n\"1789289\";\"Naman\";\"other\"\n\"1789289\";\"Nan'an\";\"other\"\n\"1789289\";\"Nan-an-hsien\";\"other\"\n\"1789289\";\"Nan’an\";\"other\"\n\"1789298\";\"Ximafang\";\"main\"\n\"1789298\";\"Hsi-ma-fang\";\"other\"\n\"1789298\";\"Ximafang Xiang\";\"other\"\n\"1789298\";\"西马坊\";\"other\"\n\"1789298\";\"西马坊乡\";\"other\"\n\"1789318\";\"Xiliu\";\"main\"\n\"1789318\";\"Hsi-liu\";\"other\"\n\"1789318\";\"Hsi-liu-ts'un\";\"other\"\n\"1789318\";\"Hsi-liu-ts’un\";\"other\"\n\"1789318\";\"Xiliu Xiang\";\"other\"\n\"1789318\";\"Xiliucun\";\"other\"\n\"1789318\";\"西留\";\"other\"\n\"1789318\";\"西留乡\";\"other\"\n\"1789329\";\"Xiling\";\"main\"\n\"1789329\";\"Hsi-ling\";\"other\"\n\"1789345\";\"Xilai\";\"main\"\n\"1789345\";\"Hsi-lai\";\"other\"\n\"1789345\";\"Hsi-lai-chen\";\"other\"\n\"1789345\";\"Xilai Zhen\";\"other\"\n\"1789345\";\"西来\";\"other\"\n\"1789345\";\"西来镇\";\"other\"\n\"1789355\";\"Xikou\";\"main\"\n\"1789355\";\"Hsi-k'ou\";\"other\"\n\"1789355\";\"Hsi-k'ou-chen\";\"other\"\n\"1789355\";\"Hsi-k’ou\";\"other\"\n\"1789355\";\"Hsi-k’ou-chen\";\"other\"\n\"1789355\";\"Xikou Zhen\";\"other\"\n\"1789355\";\"xi kou\";\"other\"\n\"1789355\";\"溪口\";\"other\"\n\"1789355\";\"溪口镇\";\"other\"\n\"1789356\";\"Xikou\";\"main\"\n\"1789356\";\"Ch'i-k'ou\";\"other\"\n\"1789356\";\"Ch’i-k’ou\";\"other\"\n\"1789356\";\"Hsi-k'ou\";\"other\"\n\"1789356\";\"Hsi-k’ou\";\"other\"\n\"1789356\";\"Shang-ch'i-k'ou\";\"other\"\n\"1789356\";\"Shang-ch’i-k’ou\";\"other\"\n\"1789356\";\"Shang-hsi-k'ou\";\"other\"\n\"1789356\";\"Shang-hsi-k’ou\";\"other\"\n\"1789356\";\"Shangkikow\";\"other\"\n\"1789356\";\"Xikou Zhen\";\"other\"\n\"1789356\";\"xi kou\";\"other\"\n\"1789356\";\"xi kou zhen\";\"other\"\n\"1789356\";\"溪口\";\"other\"\n\"1789356\";\"溪口镇\";\"other\"\n\"1789357\";\"Xikou\";\"main\"\n\"1789357\";\"Hsi-k'ou\";\"other\"\n\"1789357\";\"Hsi-k’ou\";\"other\"\n\"1789357\";\"Xikou Zhen\";\"other\"\n\"1789357\";\"xi kou\";\"other\"\n\"1789357\";\"xi kou zhen\";\"other\"\n\"1789357\";\"溪口\";\"other\"\n\"1789357\";\"溪口镇\";\"other\"\n\"1789362\";\"Xikou\";\"main\"\n\"1789362\";\"Hsi-k'ou\";\"other\"\n\"1789362\";\"Hsi-k’ou\";\"other\"\n\"1789362\";\"Xikou Zhen\";\"other\"\n\"1789362\";\"溪口\";\"other\"\n\"1789362\";\"溪口镇\";\"other\"\n\"1789376\";\"Xitan\";\"main\"\n\"1789376\";\"Xijitan\";\"other\"\n\"1789376\";\"Xitanxiang\";\"other\"\n\"1789376\";\"西吉滩\";\"other\"\n\"1789376\";\"西滩\";\"other\"\n\"1789376\";\"西滩乡\";\"other\"\n\"1789399\";\"Xijiao\";\"main\"\n\"1789399\";\"Xijiao Xiang\";\"other\"\n\"1789399\";\"西郊\";\"other\"\n\"1789399\";\"西郊乡\";\"other\"\n\"1789425\";\"Xihuaiba\";\"main\"\n\"1789425\";\"Hsi-huai-pa\";\"other\"\n\"1789425\";\"Hsi-t'an-pa\";\"other\"\n\"1789425\";\"Hsi-t’an-pa\";\"other\"\n\"1789425\";\"西淮坝\";\"other\"\n\"1789427\";\"Xihua\";\"main\"\n\"1789427\";\"Hsi-hua\";\"other\"\n\"1789427\";\"Hsi-hua-hsien\";\"other\"\n\"1789427\";\"Sihwahsien\";\"other\"\n\"1789427\";\"Sikhua\";\"other\"\n\"1789462\";\"Xihe\";\"main\"\n\"1789462\";\"Hsi-ho\";\"other\"\n\"1789462\";\"Hsi-ho-chen\";\"other\"\n\"1789462\";\"Sihochen\";\"other\"\n\"1789512\";\"Xifangcheng\";\"main\"\n\"1789512\";\"Hsi-fang-ch'eng\";\"other\"\n\"1789512\";\"Hsi-fang-ch’eng\";\"other\"\n\"1789512\";\"Xifangcheng Zhen\";\"other\"\n\"1789512\";\"西坊城\";\"other\"\n\"1789512\";\"西坊城镇\";\"other\"\n\"1789537\";\"Xieqiao\";\"main\"\n\"1789537\";\"Hsieh-ch'iao\";\"other\"\n\"1789537\";\"Hsieh-ch'iao-chen\";\"other\"\n\"1789537\";\"Hsieh-ch’iao\";\"other\"\n\"1789537\";\"Hsieh-ch’iao-chen\";\"other\"\n\"1789537\";\"Xieqiao Zhen\";\"other\"\n\"1789537\";\"斜桥\";\"other\"\n\"1789537\";\"斜桥镇\";\"other\"\n\"1789550\";\"Xiekou\";\"main\"\n\"1789550\";\"Hsieh-k'ou\";\"other\"\n\"1789550\";\"Hsieh-k'ou-chen\";\"other\"\n\"1789550\";\"Hsieh-k’ou\";\"other\"\n\"1789550\";\"Hsieh-k’ou-chen\";\"other\"\n\"1789550\";\"xie kou\";\"other\"\n\"1789550\";\"斜口\";\"other\"\n\"1789575\";\"Xiehu\";\"main\"\n\"1789575\";\"Hsieh-hu\";\"other\"\n\"1789575\";\"Hsieh-hu-chen\";\"other\"\n\"1789575\";\"Xiehu Zhen\";\"other\"\n\"1789575\";\"xie hu\";\"other\"\n\"1789575\";\"洩湖\";\"other\"\n\"1789586\";\"Xiedian\";\"main\"\n\"1789586\";\"Chieh-tien\";\"other\"\n\"1789586\";\"Chieh-tien-chen\";\"other\"\n\"1789586\";\"Hsieh-tien\";\"other\"\n\"1789586\";\"Hsieh-tien-chen\";\"other\"\n\"1789586\";\"Wan-ch'uan\";\"other\"\n\"1789586\";\"Wan-ch’üan\";\"other\"\n\"1789586\";\"Wan-jung\";\"other\"\n\"1789586\";\"Wanrong\";\"other\"\n\"1789586\";\"jie dian\";\"other\"\n\"1789586\";\"解店\";\"other\"\n\"1789593\";\"Xidu\";\"main\"\n\"1789593\";\"Heng-yang\";\"other\"\n\"1789593\";\"Hsi-tu\";\"other\"\n\"1789593\";\"xi du\";\"other\"\n\"1789593\";\"西渡\";\"other\"\n\"1789597\";\"Xiditou\";\"main\"\n\"1789597\";\"Hai-ti-t'ou\";\"other\"\n\"1789597\";\"Hai-ti-t’ou\";\"other\"\n\"1789597\";\"Hsi-ti-t'ou\";\"other\"\n\"1789597\";\"Hsi-ti-t’ou\";\"other\"\n\"1789600\";\"Xidian\";\"main\"\n\"1789600\";\"Hsi-tien\";\"other\"\n\"1789600\";\"Hsi-tien-chen\";\"other\"\n\"1789600\";\"Xidian Zhen\";\"other\"\n\"1789600\";\"xi dian\";\"other\"\n\"1789600\";\"西店\";\"other\"\n\"1789600\";\"西店镇\";\"other\"\n\"1789641\";\"Hexi\";\"main\"\n\"1789641\";\"Hexi Zhen\";\"other\"\n\"1789641\";\"Ho-hsi\";\"other\"\n\"1789641\";\"Ho-hsi-hsien\";\"other\"\n\"1789641\";\"Hosi\";\"other\"\n\"1789641\";\"Hosihsien\";\"other\"\n\"1789641\";\"Hsi-ch'eng\";\"other\"\n\"1789641\";\"Hsi-ch’eng\";\"other\"\n\"1789641\";\"Xicheng\";\"other\"\n\"1789641\";\"he xi\";\"other\"\n\"1789641\";\"he xi zhen\";\"other\"\n\"1789641\";\"河西\";\"other\"\n\"1789641\";\"河西镇\";\"other\"\n\"1789643\";\"Xichehe\";\"main\"\n\"1789643\";\"Hsi-ch'e\";\"other\"\n\"1789643\";\"Hsi-ch'e-ho\";\"other\"\n\"1789643\";\"Hsi-ch’e\";\"other\"\n\"1789643\";\"Hsi-ch’e-ho\";\"other\"\n\"1789643\";\"Hsi-tung\";\"other\"\n\"1789643\";\"Sicheshih\";\"other\"\n\"1789643\";\"Xiche\";\"other\"\n\"1789643\";\"Xichehe Zhen\";\"other\"\n\"1789643\";\"xi che he\";\"other\"\n\"1789643\";\"xi che he zhen\";\"other\"\n\"1789643\";\"洗车河\";\"other\"\n\"1789643\";\"洗车河镇\";\"other\"\n\"1789647\";\"Xichang\";\"main\"\n\"1789647\";\"Hsi-ch'ang\";\"other\"\n\"1789647\";\"Hsi-ch'ang-hsien\";\"other\"\n\"1789647\";\"Hsi-ch’ang\";\"other\"\n\"1789647\";\"Hsi-ch’ang-hsien\";\"other\"\n\"1789647\";\"Ning-yuan\";\"other\"\n\"1789647\";\"Ning-yüan\";\"other\"\n\"1789647\";\"Ningyuanfu\";\"other\"\n\"1789647\";\"Sichan\";\"other\"\n\"1789647\";\"Sichang\";\"other\"\n\"1789647\";\"Sichanghsien\";\"other\"\n\"1789647\";\"sichang\";\"other\"\n\"1789647\";\"xi chang shi\";\"other\"\n\"1789647\";\"Сичан\";\"other\"\n\"1789647\";\"西昌\";\"other\"\n\"1789647\";\"西昌市\";\"other\"\n\"1789647\";\"ꀒꎂ\";\"other\"\n\"1789647\";\"시창\";\"other\"\n\"1789657\";\"Xibu\";\"main\"\n\"1789657\";\"Hsi-fou\";\"other\"\n\"1789657\";\"Hsi-pu\";\"other\"\n\"1789657\";\"Xibu Zhen\";\"other\"\n\"1789657\";\"xi bu\";\"other\"\n\"1789657\";\"xi bu zhen\";\"other\"\n\"1789657\";\"西埠\";\"other\"\n\"1789657\";\"西埠镇\";\"other\"\n\"1789658\";\"Xibu\";\"main\"\n\"1789658\";\"Dongshan\";\"other\"\n\"1789658\";\"Hsi-pu\";\"other\"\n\"1789658\";\"Hsi-pu-chen\";\"other\"\n\"1789658\";\"Hsi-pu-hsu\";\"other\"\n\"1789658\";\"Hsi-pu-hsü\";\"other\"\n\"1789658\";\"Tung-shan\";\"other\"\n\"1789658\";\"Xipu\";\"other\"\n\"1789658\";\"xi bu\";\"other\"\n\"1789658\";\"西埔\";\"other\"\n\"1789659\";\"Xibing\";\"main\"\n\"1789659\";\"Ch'i-ping\";\"other\"\n\"1789659\";\"Ch’i-ping\";\"other\"\n\"1789659\";\"Hsi-ping\";\"other\"\n\"1789684\";\"Yukou\";\"main\"\n\"1789684\";\"Hsia-chuang\";\"other\"\n\"1789684\";\"Xiazhuang\";\"other\"\n\"1789684\";\"Yu-k'ou-ts'un\";\"other\"\n\"1789684\";\"Yukou Xiang\";\"other\"\n\"1789684\";\"Yü-k’ou-ts’un\";\"other\"\n\"1789684\";\"峪口\";\"other\"\n\"1789684\";\"峪口乡\";\"other\"\n\"1789693\";\"Xiazhuang\";\"main\"\n\"1789693\";\"Hsia-chuang\";\"other\"\n\"1789693\";\"Hsia-chuang-chen\";\"other\"\n\"1789693\";\"Linshu\";\"other\"\n\"1789703\";\"Xiazhen\";\"main\"\n\"1789703\";\"Hsia-chen\";\"other\"\n\"1789703\";\"Weishan\";\"other\"\n\"1789703\";\"Xiazhencun\";\"other\"\n\"1789705\";\"Xiazhen\";\"main\"\n\"1789705\";\"Hsia-chen\";\"other\"\n\"1789705\";\"Xiazhen Zhen\";\"other\"\n\"1789705\";\"xia zhen\";\"other\"\n\"1789705\";\"xia zhen zhen\";\"other\"\n\"1789705\";\"下镇\";\"other\"\n\"1789705\";\"下镇镇\";\"other\"\n\"1789709\";\"Xiazhai\";\"main\"\n\"1789709\";\"Hsia-chai\";\"other\"\n\"1789709\";\"Hsia-chai-tzu\";\"other\"\n\"1789709\";\"Xiazhai Zhen\";\"other\"\n\"1789709\";\"xia zhai\";\"other\"\n\"1789709\";\"下寨\";\"other\"\n\"1789727\";\"Xiayong\";\"main\"\n\"1789727\";\"Hsia-yung\";\"other\"\n\"1789727\";\"Xiayong Zhen\";\"other\"\n\"1789727\";\"xia yong\";\"other\"\n\"1789727\";\"霞涌\";\"other\"\n\"1789745\";\"Xiayang\";\"main\"\n\"1789745\";\"Hsia-yang\";\"other\"\n\"1789745\";\"Xiayang Xiang\";\"other\"\n\"1789745\";\"夏阳\";\"other\"\n\"1789745\";\"夏阳乡\";\"other\"\n\"1789752\";\"Yaofeng\";\"main\"\n\"1789752\";\"Hsia\";\"other\"\n\"1789752\";\"Hsia-chen\";\"other\"\n\"1789752\";\"Hsia-hsien\";\"other\"\n\"1789752\";\"Hsia-hsien-ch'eng\";\"other\"\n\"1789752\";\"Hsia-hsien-ch’eng\";\"other\"\n\"1789752\";\"Siahsien\";\"other\"\n\"1789752\";\"Xiaxian\";\"other\"\n\"1789752\";\"yao feng\";\"other\"\n\"1789752\";\"瑶峰\";\"other\"\n\"1789759\";\"Xiawuqi\";\"main\"\n\"1789776\";\"Xiatuanpu\";\"main\"\n\"1789776\";\"Hsia-t'uan-pao\";\"other\"\n\"1789776\";\"Hsia-t’uan-pao\";\"other\"\n\"1789776\";\"Xiatuanpu Xiang\";\"other\"\n\"1789776\";\"下团堡\";\"other\"\n\"1789776\";\"下团堡乡\";\"other\"\n\"1789780\";\"Xiatang\";\"main\"\n\"1789780\";\"Hsia-t'ang\";\"other\"\n\"1789780\";\"Hsia-t'ang-chen\";\"other\"\n\"1789780\";\"Hsia-t’ang\";\"other\"\n\"1789780\";\"Hsia-t’ang-chen\";\"other\"\n\"1789780\";\"Hsia-yang\";\"other\"\n\"1789780\";\"Hsia-yang-chen\";\"other\"\n\"1789780\";\"Xiatang Zhen\";\"other\"\n\"1789780\";\"xia tang\";\"other\"\n\"1789780\";\"xia tang zhen\";\"other\"\n\"1789780\";\"下汤\";\"other\"\n\"1789780\";\"下汤镇\";\"other\"\n\"1789789\";\"Xiashuitou\";\"main\"\n\"1789789\";\"Hsia-shui-t'ou\";\"other\"\n\"1789789\";\"Hsia-shui-t’ou\";\"other\"\n\"1789789\";\"Xiashuitou Xiang\";\"other\"\n\"1789789\";\"下水头\";\"other\"\n\"1789789\";\"下水头乡\";\"other\"\n\"1789799\";\"Haining\";\"main\"\n\"1789799\";\"Hai-ning-hsien\";\"other\"\n\"1789799\";\"Hsia-shih\";\"other\"\n\"1789799\";\"Hsia-shih-chen\";\"other\"\n\"1789799\";\"Siashih\";\"other\"\n\"1789799\";\"Xiashi\";\"other\"\n\"1789803\";\"Xiashe\";\"main\"\n\"1789803\";\"Hsia-she\";\"other\"\n\"1789803\";\"Hsia-she-ts'un\";\"other\"\n\"1789803\";\"Hsia-she-ts’un\";\"other\"\n\"1789803\";\"Xiahe\";\"other\"\n\"1789803\";\"Xiashe Zhen\";\"other\"\n\"1789803\";\"下社\";\"other\"\n\"1789803\";\"下社镇\";\"other\"\n\"1789810\";\"Xiashan\";\"main\"\n\"1789810\";\"Ho-shan-chen\";\"other\"\n\"1789810\";\"Qiangjiao\";\"other\"\n\"1789810\";\"Qiangjiao Zhen\";\"other\"\n\"1789810\";\"Xiashanzhen\";\"other\"\n\"1789810\";\"qiang jiao zhen\";\"other\"\n\"1789810\";\"xia shan\";\"other\"\n\"1789810\";\"峡山\";\"other\"\n\"1789810\";\"强蛟镇\";\"other\"\n\"1789812\";\"Xiashan\";\"main\"\n\"1789812\";\"Hapshan\";\"other\"\n\"1789812\";\"Hsia-shan\";\"other\"\n\"1789812\";\"Hsia-shan-hsu\";\"other\"\n\"1789812\";\"Hsia-shan-hsü\";\"other\"\n\"1789812\";\"Xiashan Jiedao\";\"other\"\n\"1789812\";\"Xiashanzhen\";\"other\"\n\"1789812\";\"xia shan\";\"other\"\n\"1789812\";\"峡山\";\"other\"\n\"1789819\";\"Xiaruyue\";\"main\"\n\"1789819\";\"Hsia-ju-yueh\";\"other\"\n\"1789819\";\"Hsia-ju-yüeh\";\"other\"\n\"1789819\";\"Xiaruyue Xiang\";\"other\"\n\"1789819\";\"下茹越\";\"other\"\n\"1789819\";\"下茹越乡\";\"other\"\n\"1789823\";\"Xiaqu\";\"main\"\n\"1789823\";\"Xiaqu Xiang\";\"other\"\n\"1789823\";\"下渠\";\"other\"\n\"1789823\";\"下渠乡\";\"other\"\n\"1789873\";\"Xiaozhai\";\"main\"\n\"1789873\";\"Hsiao-chai\";\"other\"\n\"1789873\";\"xiao zhai\";\"other\"\n\"1789873\";\"小寨\";\"other\"\n\"1789897\";\"Gongyi\";\"main\"\n\"1789897\";\"Hsiao-i\";\"other\"\n\"1789897\";\"Hsiao-i-chen\";\"other\"\n\"1789897\";\"Kung-hsien\";\"other\"\n\"1789897\";\"Xiaoyi\";\"other\"\n\"1789898\";\"Xiaoyi\";\"main\"\n\"1789898\";\"Hsiao-i\";\"other\"\n\"1789898\";\"Hsiao-i-chen\";\"other\"\n\"1789898\";\"Xiaoyi Zhen\";\"other\"\n\"1789898\";\"xiao yi\";\"other\"\n\"1789898\";\"孝义\";\"other\"\n\"1789937\";\"Xiaoxi\";\"main\"\n\"1789937\";\"Hsiao-ch'i\";\"other\"\n\"1789937\";\"Hsiao-ch'i-chen\";\"other\"\n\"1789937\";\"Hsiao-ch’i\";\"other\"\n\"1789937\";\"Hsiao-ch’i-chen\";\"other\"\n\"1789937\";\"P'ing-ho\";\"other\"\n\"1789937\";\"Pinghe\";\"other\"\n\"1789937\";\"P’ing-ho\";\"other\"\n\"1789937\";\"xiao xi\";\"other\"\n\"1789937\";\"小溪\";\"other\"\n\"1789945\";\"Xiaoweizhai\";\"main\"\n\"1789951\";\"Xiaowangmiao\";\"main\"\n\"1789951\";\"Hsiao-wang-miao\";\"other\"\n\"1789951\";\"Hsiao-wang-miao-shih\";\"other\"\n\"1789951\";\"Xiaowangmiao Zhen\";\"other\"\n\"1789951\";\"xiao wang miao\";\"other\"\n\"1789951\";\"xiao wang miao zhen\";\"other\"\n\"1789951\";\"萧王庙\";\"other\"\n\"1789951\";\"萧王庙镇\";\"other\"\n\"1789973\";\"Xiaosong\";\"main\"\n\"1789973\";\"Hsiao-sung\";\"other\"\n\"1789973\";\"Hsiao-sung-shih\";\"other\"\n\"1789973\";\"Xiaosong Zhen\";\"other\"\n\"1789973\";\"小松\";\"other\"\n\"1789973\";\"小松镇\";\"other\"\n\"1789985\";\"Xiaoshidian\";\"main\"\n\"1789985\";\"Hsiao-shih-tien\";\"other\"\n\"1789985\";\"Xiaoshidian Zhen\";\"other\"\n\"1789985\";\"小史店\";\"other\"\n\"1789985\";\"小史店镇\";\"other\"\n\"1789995\";\"Shangqiao\";\"main\"\n\"1789995\";\"Hsiao-shang-ch'iao\";\"other\"\n\"1789995\";\"Hsiao-shang-ch'iao-pei-chai\";\"other\"\n\"1789995\";\"Hsiao-shang-ch’iao\";\"other\"\n\"1789995\";\"Hsiao-shang-ch’iao-pei-chai\";\"other\"\n\"1789995\";\"Shangqiao Zhen\";\"other\"\n\"1789995\";\"Xiaoshangqiao\";\"other\"\n\"1789995\";\"商桥\";\"other\"\n\"1789995\";\"商桥镇\";\"other\"\n\"1789998\";\"Xiaoshan\";\"main\"\n\"1789998\";\"Hsiao-chan\";\"other\"\n\"1789998\";\"Hsiao-chi-shan\";\"other\"\n\"1789998\";\"Hsiao-shan\";\"other\"\n\"1789998\";\"Hsiao-shan-hsien\";\"other\"\n\"1789998\";\"Hsiao-shan-hsien-ch'eng\";\"other\"\n\"1789998\";\"Hsiao-shan-hsien-ch’eng\";\"other\"\n\"1789998\";\"Siaoshan\";\"other\"\n\"1789998\";\"Siaoshanhsien\";\"other\"\n\"1789998\";\"Sjaoshan'\";\"other\"\n\"1789998\";\"Сяошань\";\"other\"\n\"1790001\";\"Xiaoshajiang\";\"main\"\n\"1790001\";\"Hsiao-sha-chiang\";\"other\"\n\"1790017\";\"Xiaoqiu\";\"main\"\n\"1790017\";\"Hsiao-ch'iu\";\"other\"\n\"1790017\";\"Hsiao-ch'iu-chen\";\"other\"\n\"1790017\";\"Hsiao-ch’iu\";\"other\"\n\"1790017\";\"Hsiao-ch’iu-chen\";\"other\"\n\"1790017\";\"Shui-ch'iu-chen\";\"other\"\n\"1790017\";\"Shui-ch’iu-chen\";\"other\"\n\"1790017\";\"Xiaoqiu Zhen\";\"other\"\n\"1790017\";\"Xiaoqiuzhen\";\"other\"\n\"1790017\";\"Xiaoqu\";\"other\"\n\"1790017\";\"xiao qiu\";\"other\"\n\"1790017\";\"xiao qiu zhen\";\"other\"\n\"1790017\";\"校丘\";\"other\"\n\"1790017\";\"校丘镇\";\"other\"\n\"1790037\";\"Xiaopingyi\";\"main\"\n\"1790037\";\"Hsiao-p'ing-i\";\"other\"\n\"1790037\";\"Hsiao-p'ing-i-ts'un\";\"other\"\n\"1790037\";\"Hsiao-p’ing-i\";\"other\"\n\"1790037\";\"Hsiao-p’ing-i-ts’un\";\"other\"\n\"1790037\";\"Xiaopingyi Xiang\";\"other\"\n\"1790037\";\"小平易\";\"other\"\n\"1790037\";\"小平易乡\";\"other\"\n\"1790052\";\"Xiaonangou\";\"main\"\n\"1790052\";\"Xiaonangou Xiang\";\"other\"\n\"1790052\";\"小南沟\";\"other\"\n\"1790052\";\"小南沟乡\";\"other\"\n\"1790064\";\"Xiaomei\";\"main\"\n\"1790064\";\"Hsiao-mei\";\"other\"\n\"1790064\";\"Hsiao-mei-chen\";\"other\"\n\"1790064\";\"Xiaomei Zhen\";\"other\"\n\"1790064\";\"xiao mei zhen\";\"other\"\n\"1790064\";\"小梅\";\"other\"\n\"1790064\";\"小梅镇\";\"other\"\n\"1790085\";\"Xiaolou\";\"main\"\n\"1790085\";\"Hsiao-lou\";\"other\"\n\"1790085\";\"Xiaolou Zhen\";\"other\"\n\"1790085\";\"xiao lou\";\"other\"\n\"1790085\";\"小楼\";\"other\"\n\"1790088\";\"Xiaolongmen\";\"main\"\n\"1790088\";\"Hsiao-lung\";\"other\"\n\"1790088\";\"Hsiao-lung-men\";\"other\"\n\"1790088\";\"Hsiao-lung-p'u\";\"other\"\n\"1790088\";\"Hsiao-lung-p’u\";\"other\"\n\"1790090\";\"Xiaolong\";\"main\"\n\"1790090\";\"Hsiao-lung\";\"other\"\n\"1790090\";\"Xiaolong Zhen\";\"other\"\n\"1790090\";\"小龙\";\"other\"\n\"1790090\";\"小龙镇\";\"other\"\n\"1790100\";\"Xiaolingwei\";\"main\"\n\"1790100\";\"Hsiao-ling-wei\";\"other\"\n\"1790100\";\"孝陵卫\";\"other\"\n\"1790104\";\"Xiaolin\";\"main\"\n\"1790104\";\"Hsiao-lin\";\"other\"\n\"1790104\";\"Hsiao-lin-chen\";\"other\"\n\"1790104\";\"Xiaolin Zhen\";\"other\"\n\"1790104\";\"Xiaolinzhen\";\"other\"\n\"1790104\";\"逍林\";\"other\"\n\"1790104\";\"逍林镇\";\"other\"\n\"1790124\";\"Xiaojingzhuang\";\"main\"\n\"1790124\";\"Hsiao-chin-chuang\";\"other\"\n\"1790124\";\"Hsiao-ching-chuang\";\"other\"\n\"1790124\";\"Xiaojingzhuang Xiang\";\"other\"\n\"1790124\";\"小京庄\";\"other\"\n\"1790124\";\"小京庄乡\";\"other\"\n\"1790157\";\"Xiaojiang\";\"main\"\n\"1790157\";\"Hsiao-chiang\";\"other\"\n\"1790157\";\"Hsiao-chiang-shih\";\"other\"\n\"1790157\";\"Xiaojiang Zhen\";\"other\"\n\"1790157\";\"小将\";\"other\"\n\"1790157\";\"小将镇\";\"other\"\n\"1790160\";\"Xiaojiang\";\"main\"\n\"1790160\";\"Hsiao-chiang\";\"other\"\n\"1790160\";\"Hsiao-chiang-chen\";\"other\"\n\"1790160\";\"Hsiao-chiang-hsu\";\"other\"\n\"1790160\";\"Hsiao-chiang-hsü\";\"other\"\n\"1790160\";\"Hsiao-ching-hsu\";\"other\"\n\"1790160\";\"Hsiao-ching-hsü\";\"other\"\n\"1790160\";\"P'u-pei\";\"other\"\n\"1790160\";\"Pubei\";\"other\"\n\"1790160\";\"P’u-pei\";\"other\"\n\"1790160\";\"Siukonghu\";\"other\"\n\"1790160\";\"Siukonghü\";\"other\"\n\"1790160\";\"xiao jiang\";\"other\"\n\"1790160\";\"小江\";\"other\"\n\"1790184\";\"Xiaohu\";\"main\"\n\"1790184\";\"Hsiao-hu\";\"other\"\n\"1790184\";\"Xiaohu Zhen\";\"other\"\n\"1790184\";\"xiao hu\";\"other\"\n\"1790184\";\"小湖\";\"other\"\n\"1790184\";\"小湖镇\";\"other\"\n\"1790189\";\"Bange\";\"main\"\n\"1790189\";\"Bangebao\";\"other\"\n\"1790189\";\"Hsiao-ho-ch'eng\";\"other\"\n\"1790189\";\"Hsiao-ho-chen\";\"other\"\n\"1790189\";\"Hsiao-ho-ch’eng\";\"other\"\n\"1790189\";\"Shao-k'o-ch'eng\";\"other\"\n\"1790189\";\"Shao-k’o-ch’eng\";\"other\"\n\"1790189\";\"Siaohocheng\";\"other\"\n\"1790189\";\"Xiaohe Xiang\";\"other\"\n\"1790189\";\"半个\";\"other\"\n\"1790189\";\"半个堡\";\"other\"\n\"1790189\";\"硝河乡\";\"other\"\n\"1790194\";\"Xiaohenglong\";\"main\"\n\"1790194\";\"Hsiao-heng-lung\";\"other\"\n\"1790196\";\"Xiaohemiao\";\"main\"\n\"1790196\";\"Hsiao-ho-miao\";\"other\"\n\"1790196\";\"小河庙\";\"other\"\n\"1790220\";\"Xiaohai\";\"main\"\n\"1790220\";\"Hsiao-hai\";\"other\"\n\"1790220\";\"Hsiao-hai-chen\";\"other\"\n\"1790220\";\"Xiaohai Zhen\";\"other\"\n\"1790220\";\"Xiaohaizhen\";\"other\"\n\"1790220\";\"小海\";\"other\"\n\"1790220\";\"小海镇\";\"other\"\n\"1790236\";\"Xiaoguan\";\"main\"\n\"1790236\";\"Hsiao-kuan\";\"other\"\n\"1790236\";\"Xiaoguan Dongzuxiang\";\"other\"\n\"1790236\";\"xiao guan\";\"other\"\n\"1790236\";\"xiao guan tong zu xiang\";\"other\"\n\"1790236\";\"晓关\";\"other\"\n\"1790236\";\"晓关侗族乡\";\"other\"\n\"1790248\";\"Xiaogang\";\"main\"\n\"1790248\";\"Hsiao-kang-k'ou\";\"other\"\n\"1790248\";\"Hsiao-kang-k’ou\";\"other\"\n\"1790248\";\"Xiaogang Zhen\";\"other\"\n\"1790248\";\"Xiaogangkou\";\"other\"\n\"1790248\";\"小港\";\"other\"\n\"1790248\";\"小港镇\";\"other\"\n\"1790250\";\"Xiaogang\";\"main\"\n\"1790250\";\"Hsiao-kang-chen\";\"other\"\n\"1790250\";\"Xiaogang Zhen\";\"other\"\n\"1790250\";\"xiao gang\";\"other\"\n\"1790250\";\"xiao gang zhen\";\"other\"\n\"1790250\";\"小港\";\"other\"\n\"1790250\";\"小港镇\";\"other\"\n\"1790254\";\"Xiaogan\";\"main\"\n\"1790254\";\"Hsiao-kan\";\"other\"\n\"1790254\";\"Hsiao-kan-hsien\";\"other\"\n\"1790254\";\"Siaokan\";\"other\"\n\"1790254\";\"Siaokanhsien\";\"other\"\n\"1790254\";\"xiao gan shi\";\"other\"\n\"1790254\";\"شياۋگەن شەھىرى\";\"other\"\n\"1790254\";\"孝感市\";\"other\"\n\"1790260\";\"Xiaodongzhuang\";\"main\"\n\"1790263\";\"Xiaodong\";\"main\"\n\"1790263\";\"Xiaodong Zhen\";\"other\"\n\"1790263\";\"肖东\";\"other\"\n\"1790263\";\"肖东镇\";\"other\"\n\"1790272\";\"Xiaodian\";\"main\"\n\"1790272\";\"Hsiao-tien-chuang\";\"other\"\n\"1790272\";\"Xiaodianzhuang\";\"other\"\n\"1790289\";\"Xiaocun\";\"main\"\n\"1790289\";\"Hsiao-ts'un\";\"other\"\n\"1790289\";\"Hsiao-ts’un\";\"other\"\n\"1790289\";\"Xiaocun Zhen\";\"other\"\n\"1790289\";\"xiao cun\";\"other\"\n\"1790289\";\"xiao cun zhen\";\"other\"\n\"1790289\";\"小村\";\"other\"\n\"1790289\";\"小村镇\";\"other\"\n\"1790296\";\"Xiaochuan\";\"main\"\n\"1790296\";\"Hsiao-ch'uan\";\"other\"\n\"1790296\";\"Hsiao-ch'uan-chen\";\"other\"\n\"1790296\";\"Hsiao-ch’uan\";\"other\"\n\"1790296\";\"Hsiao-ch’uan-chen\";\"other\"\n\"1790296\";\"Xiaochuan Zhen\";\"other\"\n\"1790296\";\"小川\";\"other\"\n\"1790296\";\"小川镇\";\"other\"\n\"1790311\";\"Xiaocha\";\"main\"\n\"1790311\";\"Xiaocha Xiang\";\"other\"\n\"1790311\";\"小岔\";\"other\"\n\"1790311\";\"小岔乡\";\"other\"\n\"1790315\";\"Xiaobu\";\"main\"\n\"1790315\";\"Hsiao-p'u\";\"other\"\n\"1790315\";\"Hsiao-p’u\";\"other\"\n\"1790315\";\"Xiaobu Zhen\";\"other\"\n\"1790315\";\"Xiaopu\";\"other\"\n\"1790315\";\"小布\";\"other\"\n\"1790315\";\"小布镇\";\"other\"\n\"1790339\";\"Xianzong\";\"main\"\n\"1790339\";\"Hsien-tsung\";\"other\"\n\"1790339\";\"Xianzong Zhen\";\"other\"\n\"1790339\";\"xian zong\";\"other\"\n\"1790339\";\"xian zong zhen\";\"other\"\n\"1790339\";\"仙踪\";\"other\"\n\"1790339\";\"仙踪镇\";\"other\"\n\"1790353\";\"Xianyang\";\"main\"\n\"1790353\";\"Hsien-yang\";\"other\"\n\"1790353\";\"Hsien-yang-hsien\";\"other\"\n\"1790353\";\"Hsien-yang-shih\";\"other\"\n\"1790353\";\"San'jan\";\"other\"\n\"1790353\";\"Sienyanghsien\";\"other\"\n\"1790353\";\"Syanyan\";\"other\"\n\"1790353\";\"Xianyang Shi\";\"other\"\n\"1790353\";\"Саньян\";\"other\"\n\"1790353\";\"咸阳\";\"other\"\n\"1790353\";\"咸阳市\";\"other\"\n\"1790354\";\"Xianyang\";\"main\"\n\"1790354\";\"Hsien-yang\";\"other\"\n\"1790354\";\"Xianyang Zhen\";\"other\"\n\"1790354\";\"xian yang\";\"other\"\n\"1790354\";\"xian yang zhen\";\"other\"\n\"1790354\";\"仙阳\";\"other\"\n\"1790354\";\"仙阳镇\";\"other\"\n\"1790356\";\"Xianyan\";\"main\"\n\"1790356\";\"Hsien-yen\";\"other\"\n\"1790356\";\"Hsien-yen-chen\";\"other\"\n\"1790356\";\"Xianyan Zhen\";\"other\"\n\"1790356\";\"xian yan\";\"other\"\n\"1790356\";\"仙岩\";\"other\"\n\"1790356\";\"仙岩镇\";\"other\"\n\"1790357\";\"Xianxi\";\"main\"\n\"1790357\";\"Hsien-hsi-chen\";\"other\"\n\"1790357\";\"Tung-tao\";\"other\"\n\"1790357\";\"Xianxi Zhen\";\"other\"\n\"1790358\";\"Xianxiang\";\"main\"\n\"1790358\";\"Hsien-hsiang-chen\";\"other\"\n\"1790358\";\"Xianxiang Zhen\";\"other\"\n\"1790358\";\"xian xiang\";\"other\"\n\"1790358\";\"xian xiang zhen\";\"other\"\n\"1790358\";\"咸祥\";\"other\"\n\"1790358\";\"咸祥镇\";\"other\"\n\"1790364\";\"Xianxia\";\"main\"\n\"1790364\";\"Hsien-hsia\";\"other\"\n\"1790364\";\"Hsien-hsia-kuan\";\"other\"\n\"1790364\";\"Shan-hsia-kuan\";\"other\"\n\"1790364\";\"Xianxia Xiang\";\"other\"\n\"1790364\";\"仙下\";\"other\"\n\"1790364\";\"仙下乡\";\"other\"\n\"1790371\";\"Xiantao\";\"main\"\n\"1790371\";\"Hsien-t'ao-chen\";\"other\"\n\"1790371\";\"Hsien-t’ao-chen\";\"other\"\n\"1790371\";\"Mianyang\";\"other\"\n\"1790371\";\"Mien-yang\";\"other\"\n\"1790371\";\"Mien-yang Hsien\";\"other\"\n\"1790371\";\"Sientaochen\";\"other\"\n\"1790371\";\"Xiantaozhen\";\"other\"\n\"1790374\";\"Xiantang\";\"main\"\n\"1790374\";\"Hsien-t'ang\";\"other\"\n\"1790374\";\"Hsien-t’ang\";\"other\"\n\"1790374\";\"xian tang\";\"other\"\n\"1790374\";\"仙塘\";\"other\"\n\"1790376\";\"Xiantan\";\"main\"\n\"1790376\";\"Hsien-t'an-ch'ang\";\"other\"\n\"1790376\";\"Hsien-t’an-ch’ang\";\"other\"\n\"1790376\";\"Xiantanchang\";\"other\"\n\"1790376\";\"xian tan\";\"other\"\n\"1790376\";\"先滩\";\"other\"\n\"1790377\";\"Xiantaiba\";\"main\"\n\"1790377\";\"Hsien-t'ai-pa\";\"other\"\n\"1790377\";\"Hsien-t’ai-pa\";\"other\"\n\"1790377\";\"仙台坝\";\"other\"\n\"1790379\";\"Xianshuigu\";\"main\"\n\"1790379\";\"Hsien-shui-ku\";\"other\"\n\"1790379\";\"T'ien-ching\";\"other\"\n\"1790379\";\"T'ien-ching-hsien\";\"other\"\n\"1790379\";\"T’ien-ching\";\"other\"\n\"1790379\";\"T’ien-ching-hsien\";\"other\"\n\"1790387\";\"Xianrenwan\";\"main\"\n\"1790387\";\"Hsien-jen-wan\";\"other\"\n\"1790392\";\"Jiangdu\";\"main\"\n\"1790392\";\"Chiang-tu\";\"other\"\n\"1790392\";\"Hsien-nu-chen\";\"other\"\n\"1790392\";\"Hsien-nu-miao\";\"other\"\n\"1790392\";\"Hsien-nu-miao-chen\";\"other\"\n\"1790392\";\"Hsien-nü-chen\";\"other\"\n\"1790392\";\"Hsien-nü-miao\";\"other\"\n\"1790392\";\"Hsien-nü-miao-chen\";\"other\"\n\"1790392\";\"Siennumiao\";\"other\"\n\"1790392\";\"Siennümiao\";\"other\"\n\"1790392\";\"Xiannumiao\";\"other\"\n\"1790392\";\"Xiannümiao\";\"other\"\n\"1790396\";\"Xianning\";\"main\"\n\"1790396\";\"Hsien-ning\";\"other\"\n\"1790396\";\"Sjan'nin\";\"other\"\n\"1790396\";\"Сяньнин\";\"other\"\n\"1790413\";\"Xianju\";\"main\"\n\"1790413\";\"Hsien-chu\";\"other\"\n\"1790413\";\"Hsien-chu-hsien\";\"other\"\n\"1790413\";\"Hsien-chu-hsien-ch'eng\";\"other\"\n\"1790413\";\"Hsien-chü\";\"other\"\n\"1790413\";\"Hsien-chü-hsien\";\"other\"\n\"1790413\";\"Hsien-chü-hsien-ch’eng\";\"other\"\n\"1790413\";\"Sienku\";\"other\"\n\"1790413\";\"Sienkuhsien\";\"other\"\n\"1790413\";\"Sienkü\";\"other\"\n\"1790435\";\"Xiangzhou\";\"main\"\n\"1790435\";\"Hsiang\";\"other\"\n\"1790435\";\"Hsiang-chou\";\"other\"\n\"1790435\";\"Hsiang-chou-chen\";\"other\"\n\"1790435\";\"Hsiang-hsien\";\"other\"\n\"1790435\";\"Tseung-hsien\";\"other\"\n\"1790435\";\"xiang zhou\";\"other\"\n\"1790435\";\"象州\";\"other\"\n\"1790437\";\"Zhuhai\";\"main\"\n\"1790437\";\"Chau Hai\";\"other\"\n\"1790437\";\"Chu Hai\";\"other\"\n\"1790437\";\"Chu Hải\";\"other\"\n\"1790437\";\"Chu-hai\";\"other\"\n\"1790437\";\"Chzhukhaj\";\"other\"\n\"1790437\";\"Châu Hải\";\"other\"\n\"1790437\";\"Heung chau\";\"other\"\n\"1790437\";\"Hsiang-chou\";\"other\"\n\"1790437\";\"Hsiang-chou-chen\";\"other\"\n\"1790437\";\"Hsiang-chou-fou\";\"other\"\n\"1790437\";\"Huengchow\";\"other\"\n\"1790437\";\"Xiangzhou\";\"other\"\n\"1790437\";\"zhu hai\";\"other\"\n\"1790437\";\"zhu hai shi\";\"other\"\n\"1790437\";\"Чжухай\";\"other\"\n\"1790437\";\"جۇخەي شەھىرى\";\"other\"\n\"1790437\";\"珠海\";\"other\"\n\"1790437\";\"珠海市\";\"other\"\n\"1790442\";\"Xiangcheng\";\"main\"\n\"1790442\";\"Hsiang-ch'eng-chen\";\"other\"\n\"1790442\";\"Hsiang-ch’eng-chen\";\"other\"\n\"1790442\";\"Hsiang-yun\";\"other\"\n\"1790442\";\"Hsiang-yun-hsien\";\"other\"\n\"1790442\";\"Hsiang-yün\";\"other\"\n\"1790442\";\"Hsiang-yün-hsien\";\"other\"\n\"1790442\";\"Siangyun\";\"other\"\n\"1790442\";\"Siangyün\";\"other\"\n\"1790442\";\"Xiangyun\";\"other\"\n\"1790442\";\"Yun-nan\";\"other\"\n\"1790442\";\"Yunnanhsien\";\"other\"\n\"1790442\";\"Yunnansen\";\"other\"\n\"1790442\";\"Yün-nan\";\"other\"\n\"1790442\";\"xiang cheng\";\"other\"\n\"1790442\";\"祥城\";\"other\"\n\"1790446\";\"Guhan\";\"main\"\n\"1790446\";\"Hsiang-yuan\";\"other\"\n\"1790446\";\"Hsiang-yuan-hsien\";\"other\"\n\"1790446\";\"Hsiang-yüan\";\"other\"\n\"1790446\";\"Hsiang-yüan-hsien\";\"other\"\n\"1790446\";\"Siangyuanhsien\";\"other\"\n\"1790446\";\"Siangyüanhsien\";\"other\"\n\"1790446\";\"Syan'yuan'\";\"other\"\n\"1790446\";\"Syan’yuan’\";\"other\"\n\"1790446\";\"Xiangyuan\";\"other\"\n\"1790446\";\"gu han\";\"other\"\n\"1790446\";\"古韩\";\"other\"\n\"1790451\";\"Wenxing\";\"main\"\n\"1790451\";\"Hsiang-yin\";\"other\"\n\"1790451\";\"Hsiang-yin-hsien\";\"other\"\n\"1790451\";\"Siangyin\";\"other\"\n\"1790451\";\"Siangyinhsien\";\"other\"\n\"1790451\";\"Xiangyin\";\"other\"\n\"1790451\";\"文星\";\"other\"\n\"1790461\";\"Xiangyangpu\";\"main\"\n\"1790461\";\"Hsiang-yang\";\"other\"\n\"1790461\";\"Hsiang-yang-pao\";\"other\"\n\"1790461\";\"Xiangyangpu Xiang\";\"other\"\n\"1790461\";\"向阳堡\";\"other\"\n\"1790461\";\"向阳堡乡\";\"other\"\n\"1790471\";\"Xiangxiang\";\"main\"\n\"1790471\";\"Hsan-shan\";\"other\"\n\"1790471\";\"Hsiang-hsiang\";\"other\"\n\"1790471\";\"Hsiang-hsiang-hsien\";\"other\"\n\"1790471\";\"Siangsiang\";\"other\"\n\"1790471\";\"Siangsianghsien\";\"other\"\n\"1790471\";\"湘乡\";\"other\"\n\"1790488\";\"Xiangtang\";\"main\"\n\"1790488\";\"Hsiang-t'ang\";\"other\"\n\"1790488\";\"Hsiang-t’ang\";\"other\"\n\"1790488\";\"Xiangtang Zhen\";\"other\"\n\"1790488\";\"向塘\";\"other\"\n\"1790488\";\"向塘镇\";\"other\"\n\"1790492\";\"Xiangtan\";\"main\"\n\"1790492\";\"Hsiang-t'an-ch'eng\";\"other\"\n\"1790492\";\"Hsiang-t'an-hsien\";\"other\"\n\"1790492\";\"Hsiang-t'an-shih\";\"other\"\n\"1790492\";\"Hsiang-tan\";\"other\"\n\"1790492\";\"Hsiang-t’an-ch’eng\";\"other\"\n\"1790492\";\"Hsiang-t’an-hsien\";\"other\"\n\"1790492\";\"Hsiang-t’an-shih\";\"other\"\n\"1790492\";\"Siangtan\";\"other\"\n\"1790492\";\"Siangtanhsien\";\"other\"\n\"1790492\";\"Sjantan'\";\"other\"\n\"1790492\";\"Сянтань\";\"other\"\n\"1790498\";\"Xiangshui\";\"main\"\n\"1790498\";\"Hsiang-shui-ssu\";\"other\"\n\"1790498\";\"Xiangshui Zhen\";\"other\"\n\"1790498\";\"Xiangshuisi\";\"other\"\n\"1790498\";\"湘水\";\"other\"\n\"1790498\";\"湘水镇\";\"other\"\n\"1790506\";\"Xiangshui\";\"main\"\n\"1790506\";\"Hsiang-shui\";\"other\"\n\"1790506\";\"Hsiang-shui-hsu\";\"other\"\n\"1790506\";\"Hsiang-shui-hsü\";\"other\"\n\"1790506\";\"Xiangshui Zhen\";\"other\"\n\"1790506\";\"xiang shui\";\"other\"\n\"1790506\";\"响水\";\"other\"\n\"1790510\";\"Xiangshi\";\"main\"\n\"1790510\";\"Xiangshi Zhen\";\"other\"\n\"1790510\";\"xiang shi\";\"other\"\n\"1790510\";\"xiang shi zhen\";\"other\"\n\"1790510\";\"象市\";\"other\"\n\"1790510\";\"象市镇\";\"other\"\n\"1790516\";\"Xiangshan\";\"main\"\n\"1790516\";\"Hsiang-shan\";\"other\"\n\"1790516\";\"Xiangshan Zhen\";\"other\"\n\"1790516\";\"xiang shan\";\"other\"\n\"1790516\";\"xiang shan zhen\";\"other\"\n\"1790516\";\"向山\";\"other\"\n\"1790516\";\"向山镇\";\"other\"\n\"1790518\";\"Menghai\";\"main\"\n\"1790518\";\"Fo-hai\";\"other\"\n\"1790518\";\"Fo-hai-hsien\";\"other\"\n\"1790518\";\"Fuhai-hsien\";\"other\"\n\"1790518\";\"Pan-na-meng-hai\";\"other\"\n\"1790518\";\"Xiangshan\";\"other\"\n\"1790518\";\"meng hai\";\"other\"\n\"1790518\";\"勐海\";\"other\"\n\"1790526\";\"Xiangquan\";\"main\"\n\"1790526\";\"Hsiang-ch'uan\";\"other\"\n\"1790526\";\"Hsiang-ch'uan-chen\";\"other\"\n\"1790526\";\"Hsiang-ch’üan\";\"other\"\n\"1790526\";\"Hsiang-ch’üan-chen\";\"other\"\n\"1790526\";\"Xianquan Zhen\";\"other\"\n\"1790526\";\"xiang quan\";\"other\"\n\"1790526\";\"xiang quan zhen\";\"other\"\n\"1790526\";\"香泉\";\"other\"\n\"1790526\";\"香泉镇\";\"other\"\n\"1790527\";\"Xiangqiao\";\"main\"\n\"1790527\";\"Hsiang-ch'iao\";\"other\"\n\"1790527\";\"Hsiang-ch'iao-chen\";\"other\"\n\"1790527\";\"Hsiang-ch’iao\";\"other\"\n\"1790527\";\"Hsiang-ch’iao-chen\";\"other\"\n\"1790527\";\"Xiangqiao Zhen\";\"other\"\n\"1790527\";\"xiang qiao\";\"other\"\n\"1790527\";\"相桥\";\"other\"\n\"1790532\";\"Xiangong\";\"main\"\n\"1790532\";\"Hsien-kung\";\"other\"\n\"1790532\";\"Hsien-kung-chen\";\"other\"\n\"1790532\";\"Xiangong Zhen\";\"other\"\n\"1790532\";\"县功\";\"other\"\n\"1790532\";\"县功镇\";\"other\"\n\"1790534\";\"Changning\";\"main\"\n\"1790534\";\"Hsiang-ning\";\"other\"\n\"1790534\";\"Hsiang-ning-hsien\";\"other\"\n\"1790534\";\"Siangninghsien\";\"other\"\n\"1790534\";\"Syannin\";\"other\"\n\"1790534\";\"Xiangning\";\"other\"\n\"1790534\";\"chang ning\";\"other\"\n\"1790534\";\"昌宁\";\"other\"\n\"1790536\";\"Xiangmiao\";\"main\"\n\"1790536\";\"Hsiang-miao\";\"other\"\n\"1790536\";\"xiang miao\";\"other\"\n\"1790536\";\"香庙\";\"other\"\n\"1790573\";\"Xianghe\";\"main\"\n\"1790573\";\"Hsiang-ho-kuan\";\"other\"\n\"1790573\";\"Hsiang-ho-tien\";\"other\"\n\"1790573\";\"Xiangheguan\";\"other\"\n\"1790573\";\"xiang he\";\"other\"\n\"1790573\";\"象河\";\"other\"\n\"1790578\";\"Xianghe\";\"main\"\n\"1790578\";\"Ch'uan-chiao\";\"other\"\n\"1790578\";\"Ch'uan-chiao-hsien\";\"other\"\n\"1790578\";\"Chuantsiao\";\"other\"\n\"1790578\";\"Chuantsiao-hsien\";\"other\"\n\"1790578\";\"Chüantsiao-hsien\";\"other\"\n\"1790578\";\"Ch’üan-chiao\";\"other\"\n\"1790578\";\"Ch’üan-chiao-hsien\";\"other\"\n\"1790578\";\"Quanjiao\";\"other\"\n\"1790578\";\"xiang he\";\"other\"\n\"1790578\";\"襄河\";\"other\"\n\"1790583\";\"Xiangfu\";\"main\"\n\"1790583\";\"Hsiang-fu-kuan\";\"other\"\n\"1790583\";\"Hsiang-fu-kuan-chieh\";\"other\"\n\"1790583\";\"Xiangfu Zhen\";\"other\"\n\"1790583\";\"Xiangfuguan\";\"other\"\n\"1790583\";\"祥符\";\"other\"\n\"1790583\";\"祥符镇\";\"other\"\n\"1790587\";\"Xiangfan\";\"main\"\n\"1790587\";\"Fan-ch'eng\";\"other\"\n\"1790587\";\"Fan-ch'eng-chen\";\"other\"\n\"1790587\";\"Fan-ch’eng\";\"other\"\n\"1790587\";\"Fan-ch’eng-chen\";\"other\"\n\"1790587\";\"Hsiang-fan\";\"other\"\n\"1790587\";\"Hsiang-fan-shih\";\"other\"\n\"1790587\";\"Hsiang-yang\";\"other\"\n\"1790587\";\"Hsiang-yang-hsien\";\"other\"\n\"1790587\";\"Siangfan\";\"other\"\n\"1790587\";\"Siangyang\";\"other\"\n\"1790587\";\"Siangyang-hsien\";\"other\"\n\"1790587\";\"Siangyangfu\";\"other\"\n\"1790587\";\"Sjanfan'\";\"other\"\n\"1790587\";\"xiang fan\";\"other\"\n\"1790587\";\"xiang fan shi\";\"other\"\n\"1790587\";\"Сянфань\";\"other\"\n\"1790587\";\"شياڭفان شەھىرى\";\"other\"\n\"1790587\";\"襄樊\";\"other\"\n\"1790587\";\"襄樊市\";\"other\"\n\"1790601\";\"Xiangcheng\";\"main\"\n\"1790601\";\"Hsiang-ch'eng\";\"other\"\n\"1790601\";\"Hsiang-ch'eng-hsien\";\"other\"\n\"1790601\";\"Hsiang-ch’eng\";\"other\"\n\"1790601\";\"Hsiang-ch’eng-hsien\";\"other\"\n\"1790601\";\"襄城\";\"other\"\n\"1790620\";\"Xiancun\";\"main\"\n\"1790620\";\"Hsien-ts'un\";\"other\"\n\"1790620\";\"Hsien-ts’un\";\"other\"\n\"1790630\";\"Xi’an\";\"main\"\n\"1790630\";\"Xi'an\";\"ascii\"\n\"1790630\";\"Ch'ang-an\";\"other\"\n\"1790630\";\"Ch'ang-an-hsien\";\"other\"\n\"1790630\";\"Ch’ang-an\";\"other\"\n\"1790630\";\"Ch’ang-an-hsien\";\"other\"\n\"1790630\";\"Hsi Gnan Fu\";\"other\"\n\"1790630\";\"Hsi-an\";\"other\"\n\"1790630\";\"Hsi-an-shih\";\"other\"\n\"1790630\";\"Hsi-ching\";\"other\"\n\"1790630\";\"Hsi-ching-shih\";\"other\"\n\"1790630\";\"Hsingan\";\"other\"\n\"1790630\";\"SIA\";\"other\"\n\"1790630\";\"Si-Gan-Fu\";\"other\"\n\"1790630\";\"Sian\";\"other\"\n\"1790630\";\"Sian'\";\"other\"\n\"1790630\";\"Siana\";\"other\"\n\"1790630\";\"Sianas\";\"other\"\n\"1790630\";\"Sianfu\";\"other\"\n\"1790630\";\"Siaņa\";\"other\"\n\"1790630\";\"Siking\";\"other\"\n\"1790630\";\"Singan\";\"other\"\n\"1790630\";\"Sjiano\";\"other\"\n\"1790630\";\"Tay An\";\"other\"\n\"1790630\";\"Tây An\";\"other\"\n\"1790630\";\"Xi'an - xi an\";\"other\"\n\"1790630\";\"Xi'an - 西安\";\"other\"\n\"1790630\";\"Xi'an Shi\";\"other\"\n\"1790630\";\"Xian\";\"other\"\n\"1790630\";\"Xi’an Shi\";\"other\"\n\"1790630\";\"Xī'ān\";\"other\"\n\"1790630\";\"si xan\";\"other\"\n\"1790630\";\"sian\";\"other\"\n\"1790630\";\"xi an\";\"other\"\n\"1790630\";\"xi an shi\";\"other\"\n\"1790630\";\"Ŝjiano\";\"other\"\n\"1790630\";\"Сиань\";\"other\"\n\"1790630\";\"شىئەن شەھىرى\";\"other\"\n\"1790630\";\"ซีอาน\";\"other\"\n\"1790630\";\"西安\";\"other\"\n\"1790630\";\"西安市\";\"other\"\n\"1790630\";\"시안\";\"other\"\n\"1790635\";\"Xiamujiao\";\"main\"\n\"1790635\";\"Hsia-mu-chiao\";\"other\"\n\"1790635\";\"Hsia-shui-chiao\";\"other\"\n\"1790635\";\"Xiamujiao Xiang\";\"other\"\n\"1790635\";\"下木角\";\"other\"\n\"1790635\";\"下木角乡\";\"other\"\n\"1790636\";\"Xiamiao\";\"main\"\n\"1790636\";\"Hsia-miao\";\"other\"\n\"1790636\";\"Hsia-miao-chen\";\"other\"\n\"1790636\";\"Xiamiao Zhen\";\"other\"\n\"1790636\";\"xia miao\";\"other\"\n\"1790636\";\"下庙\";\"other\"\n\"1790637\";\"Xiamiangao\";\"main\"\n\"1790637\";\"Hsia-mien-kao\";\"other\"\n\"1790637\";\"Mien-kao-kou\";\"other\"\n\"1790637\";\"Xiamiangao Xiang\";\"other\"\n\"1790637\";\"下面高\";\"other\"\n\"1790637\";\"下面高乡\";\"other\"\n\"1790645\";\"Xiamen\";\"main\"\n\"1790645\";\"Amoy\";\"other\"\n\"1790645\";\"Ha Mon\";\"other\"\n\"1790645\";\"Hsia-men\";\"other\"\n\"1790645\";\"Hsia-men-shih\";\"other\"\n\"1790645\";\"Hạ Môn\";\"other\"\n\"1790645\";\"Shamen\";\"other\"\n\"1790645\";\"Sia-men\";\"other\"\n\"1790645\";\"Siamen\";\"other\"\n\"1790645\";\"Sjamehn'\";\"other\"\n\"1790645\";\"Sjamyn'\";\"other\"\n\"1790645\";\"Ssu-ming\";\"other\"\n\"1790645\";\"Ssu-ming-hsien\";\"other\"\n\"1790645\";\"Szeming-hsien\";\"other\"\n\"1790645\";\"Xiamen - sha men\";\"other\"\n\"1790645\";\"Xiamen - 厦门\";\"other\"\n\"1790645\";\"Xiamen Shi\";\"other\"\n\"1790645\";\"amoi\";\"other\"\n\"1790645\";\"sha men shi\";\"other\"\n\"1790645\";\"Сямынь\";\"other\"\n\"1790645\";\"Сямэнь\";\"other\"\n\"1790645\";\"شيامېن شەھىرى\";\"other\"\n\"1790645\";\"アモイ\";\"other\"\n\"1790645\";\"厦门\";\"other\"\n\"1790645\";\"厦门市\";\"other\"\n\"1790646\";\"Xiamei\";\"main\"\n\"1790646\";\"Hsia-mei\";\"other\"\n\"1790646\";\"Xiamei Zhen\";\"other\"\n\"1790646\";\"xia mei\";\"other\"\n\"1790646\";\"霞美\";\"other\"\n\"1790647\";\"Xiamayu\";\"main\"\n\"1790647\";\"Hsia-ma-yu\";\"other\"\n\"1790647\";\"Hsia-ma-yü\";\"other\"\n\"1790647\";\"Xiamayu Xiang\";\"other\"\n\"1790647\";\"下马峪\";\"other\"\n\"1790647\";\"下马峪乡\";\"other\"\n\"1790652\";\"Xiamao\";\"main\"\n\"1790652\";\"Hsia-mao\";\"other\"\n\"1790652\";\"Xiamao Zhen\";\"other\"\n\"1790652\";\"夏茂\";\"other\"\n\"1790652\";\"夏茂镇\";\"other\"\n\"1790664\";\"Xialiang\";\"main\"\n\"1790664\";\"Hsia-liang-ho-k'ou\";\"other\"\n\"1790664\";\"Hsia-liang-ho-k’ou\";\"other\"\n\"1790664\";\"Xialianghekou\";\"other\"\n\"1790664\";\"xia liang\";\"other\"\n\"1790664\";\"下两\";\"other\"\n\"1790665\";\"Xiali\";\"main\"\n\"1790665\";\"xia li\";\"other\"\n\"1790665\";\"夏李\";\"other\"\n\"1790672\";\"Xialaba\";\"main\"\n\"1790672\";\"Hsia-la-pa\";\"other\"\n\"1790672\";\"Xialaba Xiang\";\"other\"\n\"1790672\";\"下喇叭\";\"other\"\n\"1790672\";\"下喇叭乡\";\"other\"\n\"1790673\";\"Xiakouyi\";\"main\"\n\"1790673\";\"Hsia-k'ou-i\";\"other\"\n\"1790673\";\"Hsia-k’ou-i\";\"other\"\n\"1790673\";\"Xiakouyi Zhen\";\"other\"\n\"1790673\";\"硖口驿\";\"other\"\n\"1790673\";\"硖口驿镇\";\"other\"\n\"1790681\";\"Xiakou\";\"main\"\n\"1790681\";\"Chia-k'ou-shih\";\"other\"\n\"1790681\";\"Chia-k’ou-shih\";\"other\"\n\"1790681\";\"Hsia-k'ou\";\"other\"\n\"1790681\";\"Hsia-k'ou-shih\";\"other\"\n\"1790681\";\"Hsia-k’ou\";\"other\"\n\"1790681\";\"Hsia-k’ou-shih\";\"other\"\n\"1790681\";\"Xiachuan\";\"other\"\n\"1790681\";\"Xiachuan Zhen\";\"other\"\n\"1790681\";\"xia chuan\";\"other\"\n\"1790681\";\"xia chuan zhen\";\"other\"\n\"1790681\";\"xia kou\";\"other\"\n\"1790681\";\"峡口\";\"other\"\n\"1790681\";\"峡川\";\"other\"\n\"1790681\";\"峡川镇\";\"other\"\n\"1790683\";\"Xiakeng\";\"main\"\n\"1790683\";\"Hsia-k'eng\";\"other\"\n\"1790683\";\"Hsia-k’eng\";\"other\"\n\"1790683\";\"Xiakeng Zhen\";\"other\"\n\"1790683\";\"xia keng\";\"other\"\n\"1790683\";\"xia keng zhen\";\"other\"\n\"1790683\";\"霞坑\";\"other\"\n\"1790683\";\"霞坑镇\";\"other\"\n\"1790685\";\"Kajiaman\";\"main\"\n\"1790685\";\"Kajiaman Xiang\";\"other\"\n\"1790685\";\"Xiakajia\";\"other\"\n\"1790685\";\"卡家曼\";\"other\"\n\"1790685\";\"卡家曼乡\";\"other\"\n\"1790691\";\"Xiayuan\";\"main\"\n\"1790691\";\"Hsia-chia-yuan\";\"other\"\n\"1790691\";\"Hsia-chia-yüan\";\"other\"\n\"1790691\";\"Xiajiayuan\";\"other\"\n\"1790691\";\"Xiayuan Zhen\";\"other\"\n\"1790691\";\"下原\";\"other\"\n\"1790691\";\"下原镇\";\"other\"\n\"1790696\";\"Xiajiang\";\"main\"\n\"1790696\";\"Chiu-hsia-chiang\";\"other\"\n\"1790696\";\"Hiakiang\";\"other\"\n\"1790696\";\"Hiakiang-hsien\";\"other\"\n\"1790696\";\"Hsia-chiang\";\"other\"\n\"1790696\";\"Hsia-chiang-hsien\";\"other\"\n\"1790707\";\"Xiahu\";\"main\"\n\"1790707\";\"Hsia-hu\";\"other\"\n\"1790719\";\"Xiahan\";\"main\"\n\"1790719\";\"Hsia-han\";\"other\"\n\"1790719\";\"Hsia-han-ts'un\";\"other\"\n\"1790719\";\"Hsia-han-ts’un\";\"other\"\n\"1790719\";\"Xiahan Xiang\";\"other\"\n\"1790719\";\"下韩\";\"other\"\n\"1790719\";\"下韩乡\";\"other\"\n\"1790723\";\"Xiaji\";\"main\"\n\"1790723\";\"Hsia-kua-chen\";\"other\"\n\"1790723\";\"Hsia-kuei\";\"other\"\n\"1790723\";\"Hsia-kuei-chen\";\"other\"\n\"1790723\";\"Xiagui\";\"other\"\n\"1790723\";\"Xiaji Zhen\";\"other\"\n\"1790723\";\"xia ji\";\"other\"\n\"1790723\";\"下吉\";\"other\"\n\"1790734\";\"Xiaguan\";\"main\"\n\"1790734\";\"Hsia-kuan\";\"other\"\n\"1790734\";\"Hsia-kuan-chen\";\"other\"\n\"1790734\";\"Kuan-ch'i\";\"other\"\n\"1790734\";\"Kuan-ch’i\";\"other\"\n\"1790734\";\"Xiaguan Zhen\";\"other\"\n\"1790734\";\"下管\";\"other\"\n\"1790734\";\"下管镇\";\"other\"\n\"1790751\";\"Xiagang\";\"main\"\n\"1790751\";\"Hsia-chiang\";\"other\"\n\"1790751\";\"Hsia-chiang-chen\";\"other\"\n\"1790751\";\"Hsia-kang\";\"other\"\n\"1790751\";\"夏港\";\"other\"\n\"1790785\";\"Xiacheng\";\"main\"\n\"1790785\";\"峡城\";\"other\"\n\"1790795\";\"Xiacang\";\"main\"\n\"1790795\";\"Hsia-ts'ang\";\"other\"\n\"1790795\";\"Hsia-ts'ang-chen\";\"other\"\n\"1790795\";\"Hsia-ts’ang\";\"other\"\n\"1790795\";\"Hsia-ts’ang-chen\";\"other\"\n\"1790796\";\"Xiabuji\";\"main\"\n\"1790796\";\"Hsia-pu-chi\";\"other\"\n\"1790796\";\"Xiabuji Xiang\";\"other\"\n\"1790796\";\"下埠集\";\"other\"\n\"1790796\";\"下埠集乡\";\"other\"\n\"1790807\";\"Xiabaishi\";\"main\"\n\"1790807\";\"Hsia-pai-shih\";\"other\"\n\"1790807\";\"Pai-shih\";\"other\"\n\"1790840\";\"Wuzhou\";\"main\"\n\"1790840\";\"Ts'ang-wu\";\"other\"\n\"1790840\";\"Ts'ang-wu-hsien\";\"other\"\n\"1790840\";\"Ts’ang-wu\";\"other\"\n\"1790840\";\"Ts’ang-wu-hsien\";\"other\"\n\"1790840\";\"Wu-chou\";\"other\"\n\"1790840\";\"Wu-chou-shih\";\"other\"\n\"1790840\";\"Wuchow\";\"other\"\n\"1790840\";\"梧州\";\"other\"\n\"1790852\";\"Yancheng\";\"main\"\n\"1790852\";\"Uchzhay\";\"other\"\n\"1790852\";\"Wu-chai\";\"other\"\n\"1790852\";\"Wu-chai-hsien\";\"other\"\n\"1790852\";\"Wu-chia\";\"other\"\n\"1790852\";\"Wuzhai\";\"other\"\n\"1790852\";\"yan cheng\";\"other\"\n\"1790852\";\"砚城\";\"other\"\n\"1790864\";\"Wuyu\";\"main\"\n\"1790864\";\"wu yu\";\"other\"\n\"1790864\";\"浯屿\";\"other\"\n\"1790884\";\"Wuquan\";\"main\"\n\"1790884\";\"Uyan\";\"other\"\n\"1790884\";\"Wu-yang-hsien\";\"other\"\n\"1790884\";\"Wuquan Zhen\";\"other\"\n\"1790884\";\"Wuyang\";\"other\"\n\"1790884\";\"wu quan\";\"other\"\n\"1790884\";\"舞泉\";\"other\"\n\"1790885\";\"Wuyang\";\"main\"\n\"1790885\";\"Wu-yang-chi\";\"other\"\n\"1790886\";\"Wujin\";\"main\"\n\"1790886\";\"Hsin-chin\";\"other\"\n\"1790886\";\"Hsin-ching\";\"other\"\n\"1790886\";\"Hsin-ching-hsien\";\"other\"\n\"1790886\";\"Sinsing\";\"other\"\n\"1790886\";\"Sintsing\";\"other\"\n\"1790886\";\"Sintsinghsien\";\"other\"\n\"1790886\";\"Wuyang\";\"other\"\n\"1790886\";\"Xinjin\";\"other\"\n\"1790886\";\"wu jin\";\"other\"\n\"1790886\";\"五津\";\"other\"\n\"1790889\";\"Wuyang\";\"main\"\n\"1790889\";\"Wu-yang-shih\";\"other\"\n\"1790889\";\"Wuyang Zhen\";\"other\"\n\"1790894\";\"Wuxue\";\"main\"\n\"1790894\";\"Guangji\";\"other\"\n\"1790894\";\"Kuang-chi\";\"other\"\n\"1790894\";\"Kuang-chi-hsien\";\"other\"\n\"1790894\";\"Wu-hsueh\";\"other\"\n\"1790894\";\"Wu-hsueh-chen\";\"other\"\n\"1790894\";\"Wu-hsüeh\";\"other\"\n\"1790894\";\"Wu-hsüeh-chen\";\"other\"\n\"1790894\";\"Wusueh\";\"other\"\n\"1790896\";\"Wuxuan\";\"main\"\n\"1790896\";\"Mosun\";\"other\"\n\"1790896\";\"Mosun-hsien\";\"other\"\n\"1790896\";\"Mosün\";\"other\"\n\"1790896\";\"Mosün-hsien\";\"other\"\n\"1790896\";\"Wu-hsuan\";\"other\"\n\"1790896\";\"Wu-hsuan-chen\";\"other\"\n\"1790896\";\"Wu-hsuan-hsien\";\"other\"\n\"1790896\";\"Wu-hsuen-hsien\";\"other\"\n\"1790896\";\"Wu-hsüan\";\"other\"\n\"1790896\";\"Wu-hsüan-chen\";\"other\"\n\"1790896\";\"Wu-hsüan-hsien\";\"other\"\n\"1790896\";\"Wu-hsüen-hsien\";\"other\"\n\"1790896\";\"wu xuan\";\"other\"\n\"1790896\";\"武宣\";\"other\"\n\"1790907\";\"Wuxing\";\"main\"\n\"1790907\";\"Wu-hsing\";\"other\"\n\"1790907\";\"wu xing\";\"other\"\n\"1790907\";\"五星\";\"other\"\n\"1790911\";\"Shixiang\";\"main\"\n\"1790911\";\"Wuxie\";\"other\"\n\"1790911\";\"Wuxie Zhen\";\"other\"\n\"1790911\";\"wu xie zhen\";\"other\"\n\"1790911\";\"五泄镇\";\"other\"\n\"1790911\";\"狮象\";\"other\"\n\"1790917\";\"Fengzhou\";\"main\"\n\"1790917\";\"Duancun\";\"other\"\n\"1790917\";\"Tuan-ts'un\";\"other\"\n\"1790917\";\"Tuan-ts'un-chen\";\"other\"\n\"1790917\";\"Tuan-ts’un\";\"other\"\n\"1790917\";\"Tuan-ts’un-chen\";\"other\"\n\"1790917\";\"Wu-hsiang\";\"other\"\n\"1790917\";\"Wuxiang\";\"other\"\n\"1790917\";\"feng zhou\";\"other\"\n\"1790917\";\"丰州\";\"other\"\n\"1790918\";\"Wuxiang\";\"main\"\n\"1790918\";\"Mi-le-yuan\";\"other\"\n\"1790918\";\"Mi-le-yüan\";\"other\"\n\"1790918\";\"Wu-hsiang\";\"other\"\n\"1790918\";\"Wu-hsiang-chen\";\"other\"\n\"1790918\";\"Wuxiang Zhen\";\"other\"\n\"1790918\";\"武乡\";\"other\"\n\"1790918\";\"武乡镇\";\"other\"\n\"1790923\";\"Wuxi\";\"main\"\n\"1790923\";\"Usi\";\"other\"\n\"1790923\";\"Wu-hsi\";\"other\"\n\"1790923\";\"Wu-hsi-hsien\";\"other\"\n\"1790923\";\"Wu-hsi-shih\";\"other\"\n\"1790923\";\"Wusih\";\"other\"\n\"1790923\";\"Wusih-hsien\";\"other\"\n\"1790923\";\"Wusihsien\";\"other\"\n\"1790923\";\"wu xi\";\"other\"\n\"1790923\";\"wu xi shi\";\"other\"\n\"1790923\";\"Уси\";\"other\"\n\"1790923\";\"ۋۇشى شەھىرى\";\"other\"\n\"1790923\";\"无锡\";\"other\"\n\"1790923\";\"无锡市\";\"other\"\n\"1790923\";\"無錫\";\"other\"\n\"1790925\";\"Wuxi\";\"main\"\n\"1790925\";\"Usi\";\"other\"\n\"1790925\";\"Wu-ch'i\";\"other\"\n\"1790925\";\"Wu-ch'i-chen\";\"other\"\n\"1790925\";\"Wu-ch’i\";\"other\"\n\"1790925\";\"Wu-ch’i-chen\";\"other\"\n\"1790925\";\"Wu-hsi\";\"other\"\n\"1790925\";\"Wuxi Zhen\";\"other\"\n\"1790925\";\"wu xi\";\"other\"\n\"1790925\";\"wu xi zhen\";\"other\"\n\"1790925\";\"Уси\";\"other\"\n\"1790925\";\"乌溪\";\"other\"\n\"1790925\";\"乌溪镇\";\"other\"\n\"1790933\";\"Wuwangkou\";\"main\"\n\"1790933\";\"Wuwangkou Xiang\";\"other\"\n\"1790933\";\"吴王口\";\"other\"\n\"1790933\";\"吴王口乡\";\"other\"\n\"1790959\";\"Taicheng\";\"main\"\n\"1790959\";\"Wu-t'ai-hsien\";\"other\"\n\"1790959\";\"Wu-t’ai-hsien\";\"other\"\n\"1790959\";\"Wucheng\";\"other\"\n\"1790959\";\"Wutai\";\"other\"\n\"1790959\";\"tai cheng\";\"other\"\n\"1790959\";\"台城\";\"other\"\n\"1791056\";\"Dongyang\";\"main\"\n\"1791056\";\"Dongyang Shi\";\"other\"\n\"1791056\";\"Tung-yang\";\"other\"\n\"1791056\";\"Tung-yang-hsien\";\"other\"\n\"1791056\";\"Tung-yang-hsien-ch'eng\";\"other\"\n\"1791056\";\"Tung-yang-hsien-ch’eng\";\"other\"\n\"1791056\";\"Wuning\";\"other\"\n\"1791056\";\"东阳\";\"other\"\n\"1791056\";\"东阳市\";\"other\"\n\"1791064\";\"Wuming Chengxiangzhen\";\"main\"\n\"1791064\";\"Wu-ming-hsien\";\"other\"\n\"1791064\";\"Wu-yuan\";\"other\"\n\"1791064\";\"Wu-yüan\";\"other\"\n\"1791064\";\"Wuming\";\"other\"\n\"1791064\";\"wu ming cheng xiang zhen\";\"other\"\n\"1791064\";\"武鸣城厢镇\";\"other\"\n\"1791072\";\"Wumaying\";\"main\"\n\"1791072\";\"Wu-chia-ma-ying\";\"other\"\n\"1791072\";\"Wumaying Xiang\";\"other\"\n\"1791072\";\"吴马营\";\"other\"\n\"1791072\";\"吴马营乡\";\"other\"\n\"1791079\";\"Wuma\";\"main\"\n\"1791079\";\"五马\";\"other\"\n\"1791111\";\"Wuli\";\"main\"\n\"1791111\";\"Wuli Xiang\";\"other\"\n\"1791111\";\"Wuliping\";\"other\"\n\"1791111\";\"wu li\";\"other\"\n\"1791111\";\"wu li xiang\";\"other\"\n\"1791111\";\"五里\";\"other\"\n\"1791111\";\"五里乡\";\"other\"\n\"1791121\";\"Changde\";\"main\"\n\"1791121\";\"Ch'ang-te\";\"other\"\n\"1791121\";\"Ch'ang-te-ch'eng\";\"other\"\n\"1791121\";\"Ch'ang-te-hsien\";\"other\"\n\"1791121\";\"Ch'ang-te-shih\";\"other\"\n\"1791121\";\"Chandeh\";\"other\"\n\"1791121\";\"Changteh\";\"other\"\n\"1791121\";\"Changteh-hsien\";\"other\"\n\"1791121\";\"Ch’ang-te\";\"other\"\n\"1791121\";\"Ch’ang-te-ch’eng\";\"other\"\n\"1791121\";\"Ch’ang-te-hsien\";\"other\"\n\"1791121\";\"Ch’ang-te-shih\";\"other\"\n\"1791121\";\"Wuling\";\"other\"\n\"1791121\";\"Чандэ\";\"other\"\n\"1791162\";\"Wujing\";\"main\"\n\"1791162\";\"Wu-ching\";\"other\"\n\"1791162\";\"Wu-ching-chen\";\"other\"\n\"1791162\";\"Wujing Zhen\";\"other\"\n\"1791162\";\"午井\";\"other\"\n\"1791162\";\"午井镇\";\"other\"\n\"1791176\";\"Wujiayao\";\"main\"\n\"1791176\";\"Wu-chia-yao\";\"other\"\n\"1791176\";\"Wujiayao Zhen\";\"other\"\n\"1791176\";\"吴家窑\";\"other\"\n\"1791176\";\"吴家窑镇\";\"other\"\n\"1791193\";\"Wujiao\";\"main\"\n\"1791193\";\"Wujiao Xiang\";\"other\"\n\"1791193\";\"五蛟\";\"other\"\n\"1791193\";\"五蛟乡\";\"other\"\n\"1791198\";\"Wujiang\";\"main\"\n\"1791198\";\"Wu-chiang\";\"other\"\n\"1791198\";\"Wu-chiang-chen\";\"other\"\n\"1791198\";\"Wujiang Zhen\";\"other\"\n\"1791198\";\"Wukiang\";\"other\"\n\"1791198\";\"wu jiang\";\"other\"\n\"1791198\";\"wu jiang zhen\";\"other\"\n\"1791198\";\"乌江\";\"other\"\n\"1791198\";\"乌江镇\";\"other\"\n\"1791236\";\"Wuhu\";\"main\"\n\"1791236\";\"Ukhu\";\"other\"\n\"1791236\";\"Wu-hu-hsien\";\"other\"\n\"1791236\";\"Wu-hu-shih\";\"other\"\n\"1791236\";\"Wuhu Shi\";\"other\"\n\"1791236\";\"wu hu shi\";\"other\"\n\"1791236\";\"Уху\";\"other\"\n\"1791236\";\"芜湖\";\"other\"\n\"1791236\";\"芜湖市\";\"other\"\n\"1791241\";\"Wuhe Chengguanzhen\";\"main\"\n\"1791241\";\"Wu-ho\";\"other\"\n\"1791241\";\"Wu-ho-hsien\";\"other\"\n\"1791241\";\"Wuhe\";\"other\"\n\"1791241\";\"wu he cheng guan zhen\";\"other\"\n\"1791241\";\"五河城关镇\";\"other\"\n\"1791247\";\"Wuhan\";\"main\"\n\"1791247\";\"Uhana\";\"other\"\n\"1791247\";\"Uhaņa\";\"other\"\n\"1791247\";\"Ukhan'\";\"other\"\n\"1791247\";\"Vu Han\";\"other\"\n\"1791247\";\"Vuhano\";\"other\"\n\"1791247\";\"Vũ Hán\";\"other\"\n\"1791247\";\"Wu-han-shih\";\"other\"\n\"1791247\";\"uhan\";\"other\"\n\"1791247\";\"wu han\";\"other\"\n\"1791247\";\"wu han shi\";\"other\"\n\"1791247\";\"Ухань\";\"other\"\n\"1791247\";\"ۋۇخەن شەھىرى\";\"other\"\n\"1791247\";\"武汉\";\"other\"\n\"1791247\";\"武汉市\";\"other\"\n\"1791247\";\"武漢\";\"other\"\n\"1791247\";\"우한\";\"other\"\n\"1791249\";\"Wuhai\";\"main\"\n\"1791249\";\"Hai-p'o-wan-shih\";\"other\"\n\"1791249\";\"Hai-po-wan\";\"other\"\n\"1791249\";\"Hai-p’o-wan-shih\";\"other\"\n\"1791249\";\"Wu-hai-shih\";\"other\"\n\"1791266\";\"Wugong\";\"main\"\n\"1791266\";\"Wu-kung\";\"other\"\n\"1791266\";\"Wu-kung-chen\";\"other\"\n\"1791266\";\"wu gong\";\"other\"\n\"1791266\";\"武功\";\"other\"\n\"1791271\";\"Yakou\";\"main\"\n\"1791271\";\"Wugang\";\"other\"\n\"1791271\";\"wu kou\";\"other\"\n\"1791271\";\"垭口\";\"other\"\n\"1791278\";\"Wufu\";\"main\"\n\"1791278\";\"Wufu Zhen\";\"other\"\n\"1791278\";\"wu fu\";\"other\"\n\"1791278\";\"wu fu zhen\";\"other\"\n\"1791278\";\"五夫\";\"other\"\n\"1791278\";\"五夫镇\";\"other\"\n\"1791285\";\"Wufeng\";\"main\"\n\"1791285\";\"Ch'ang-lo\";\"other\"\n\"1791285\";\"Changlo-fu\";\"other\"\n\"1791285\";\"Ch’ang-lo\";\"other\"\n\"1791285\";\"Wu-feng-hsien\";\"other\"\n\"1791285\";\"wu feng\";\"other\"\n\"1791285\";\"五峰\";\"other\"\n\"1791317\";\"Wangjiaping\";\"main\"\n\"1791317\";\"Wu-tao-shui\";\"other\"\n\"1791317\";\"Wudaoshui\";\"other\"\n\"1791317\";\"Wudaoshui Zhen\";\"other\"\n\"1791317\";\"wang jia ping\";\"other\"\n\"1791317\";\"wu dao shui zhen\";\"other\"\n\"1791317\";\"五道水镇\";\"other\"\n\"1791317\";\"汪家坪\";\"other\"\n\"1791325\";\"Wuda\";\"main\"\n\"1791325\";\"Ud\";\"other\"\n\"1791325\";\"Wu-ta\";\"other\"\n\"1791325\";\"Wu-ta-shih\";\"other\"\n\"1791339\";\"Wucheng\";\"main\"\n\"1791339\";\"Wu-ch'eng-ts'un\";\"other\"\n\"1791339\";\"Wu-ch’eng-ts’un\";\"other\"\n\"1791339\";\"Wucheng Xiang\";\"other\"\n\"1791339\";\"吴城\";\"other\"\n\"1791339\";\"吴城乡\";\"other\"\n\"1791341\";\"Laocheng\";\"main\"\n\"1791341\";\"Laowucheng\";\"other\"\n\"1791341\";\"Wu-ch'eng-hsien\";\"other\"\n\"1791341\";\"Wu-ch’eng-hsien\";\"other\"\n\"1791341\";\"Wucheng\";\"other\"\n\"1791344\";\"Wucheng\";\"main\"\n\"1791344\";\"Wucheng Zhen\";\"other\"\n\"1791344\";\"wu cheng\";\"other\"\n\"1791344\";\"吴城\";\"other\"\n\"1791346\";\"Wucheng\";\"main\"\n\"1791346\";\"Wu-wei-hsien\";\"other\"\n\"1791346\";\"Wuwei\";\"other\"\n\"1791346\";\"Wuweichow\";\"other\"\n\"1791346\";\"wu cheng\";\"other\"\n\"1791346\";\"无城\";\"other\"\n\"1791347\";\"Wucheng\";\"main\"\n\"1791347\";\"Wucheng Zhen\";\"other\"\n\"1791347\";\"五城\";\"other\"\n\"1791347\";\"五城镇\";\"other\"\n\"1791388\";\"Wenzhou\";\"main\"\n\"1791388\";\"Vehn'chzhou\";\"other\"\n\"1791388\";\"Wen-chou\";\"other\"\n\"1791388\";\"Wen-chou-shih\";\"other\"\n\"1791388\";\"Wenchow\";\"other\"\n\"1791388\";\"Wenchow-fu\";\"other\"\n\"1791388\";\"Yung-chia\";\"other\"\n\"1791388\";\"Yung-chia-hsien\";\"other\"\n\"1791388\";\"Yungkai\";\"other\"\n\"1791388\";\"Yungkia\";\"other\"\n\"1791388\";\"Yungkia-hsien\";\"other\"\n\"1791388\";\"Вэньчжоу\";\"other\"\n\"1791406\";\"Wenxian Chengguanzhen\";\"main\"\n\"1791406\";\"Chengguan Zhen\";\"other\"\n\"1791406\";\"Wen\";\"other\"\n\"1791406\";\"Wen-hsien\";\"other\"\n\"1791406\";\"Wenxian\";\"other\"\n\"1791406\";\"城关镇\";\"other\"\n\"1791406\";\"文县\";\"other\"\n\"1791406\";\"文县城关镇\";\"other\"\n\"1791409\";\"Tongcheng\";\"main\"\n\"1791409\";\"Ven'si\";\"other\"\n\"1791409\";\"Ven’si\";\"other\"\n\"1791409\";\"Wen-hsi\";\"other\"\n\"1791409\";\"Wen-hsi-hsien\";\"other\"\n\"1791409\";\"Wensi\";\"other\"\n\"1791409\";\"Wensihsien\";\"other\"\n\"1791409\";\"Wenxi\";\"other\"\n\"1791409\";\"tong cheng\";\"other\"\n\"1791409\";\"桐城\";\"other\"\n\"1791415\";\"Wentang\";\"main\"\n\"1791415\";\"Wentang Zhen\";\"other\"\n\"1791415\";\"温塘\";\"other\"\n\"1791415\";\"温塘镇\";\"other\"\n\"1791420\";\"Fengcheng\";\"main\"\n\"1791420\";\"Ven'shuy\";\"other\"\n\"1791420\";\"Ven’shuy\";\"other\"\n\"1791420\";\"Wen-shui-hsien\";\"other\"\n\"1791420\";\"Wenshui\";\"other\"\n\"1791420\";\"feng cheng\";\"other\"\n\"1791420\";\"凤城\";\"other\"\n\"1791422\";\"Wenshui\";\"main\"\n\"1791428\";\"Wenshang\";\"main\"\n\"1791428\";\"Wen-shang-hsien\";\"other\"\n\"1791438\";\"Wenquan\";\"main\"\n\"1791438\";\"Wen-ch'uan\";\"other\"\n\"1791438\";\"Wen-ch’üan\";\"other\"\n\"1791438\";\"Wenquan Zhen\";\"other\"\n\"1791438\";\"温泉\";\"other\"\n\"1791438\";\"温泉镇\";\"other\"\n\"1791440\";\"Wenquan\";\"main\"\n\"1791440\";\"Ying-hsien\";\"other\"\n\"1791440\";\"Ying-shan-hsien\";\"other\"\n\"1791440\";\"Yingshan\";\"other\"\n\"1791440\";\"wen quan\";\"other\"\n\"1791440\";\"温泉\";\"other\"\n\"1791445\";\"Wenquan\";\"main\"\n\"1791445\";\"Wen-ch'uan\";\"other\"\n\"1791445\";\"Wen-ch’üan\";\"other\"\n\"1791445\";\"Wenquan Zhen\";\"other\"\n\"1791445\";\"wen quan\";\"other\"\n\"1791445\";\"温泉\";\"other\"\n\"1791453\";\"Wenping\";\"main\"\n\"1791453\";\"Lu-tien\";\"other\"\n\"1791453\";\"Lu-tien-hsien\";\"other\"\n\"1791453\";\"Ludian\";\"other\"\n\"1791453\";\"Lutienting\";\"other\"\n\"1791453\";\"Wen-p'ing-chen\";\"other\"\n\"1791453\";\"Wen-p’ing-chen\";\"other\"\n\"1791453\";\"wen ping\";\"other\"\n\"1791453\";\"文屏\";\"other\"\n\"1791464\";\"Wenling\";\"main\"\n\"1791464\";\"T'ai-p'ing\";\"other\"\n\"1791464\";\"Taipinghsien\";\"other\"\n\"1791464\";\"T’ai-p’ing\";\"other\"\n\"1791464\";\"Wen-ling-hsien\";\"other\"\n\"1791464\";\"Wen-ling-hsien-ch'eng\";\"other\"\n\"1791464\";\"Wen-ling-hsien-ch’eng\";\"other\"\n\"1791464\";\"Wenlin\";\"other\"\n\"1791466\";\"Wenlin\";\"main\"\n\"1791466\";\"Jen-shou\";\"other\"\n\"1791466\";\"Jen-shou-hsien\";\"other\"\n\"1791466\";\"Jenshow\";\"other\"\n\"1791466\";\"Jenshow-hsien\";\"other\"\n\"1791466\";\"Renshou\";\"other\"\n\"1791466\";\"wen lin\";\"other\"\n\"1791466\";\"文林\";\"other\"\n\"1791479\";\"Wenjiapo\";\"main\"\n\"1791479\";\"Wen-chia-p'o\";\"other\"\n\"1791479\";\"Wen-chia-p’o\";\"other\"\n\"1791479\";\"文家坡\";\"other\"\n\"1791483\";\"Wenjiangsi\";\"main\"\n\"1791483\";\"Wen-chiang-ssu\";\"other\"\n\"1791483\";\"温江寺\";\"other\"\n\"1791493\";\"Wenheng\";\"main\"\n\"1791493\";\"Wenheng Xiang\";\"other\"\n\"1791493\";\"文亨\";\"other\"\n\"1791493\";\"文亨乡\";\"other\"\n\"1791515\";\"Wengang\";\"main\"\n\"1791515\";\"Wengang Zhen\";\"other\"\n\"1791515\";\"文港\";\"other\"\n\"1791515\";\"文港镇\";\"other\"\n\"1791522\";\"Laxiong\";\"main\"\n\"1791522\";\"Wendu\";\"other\"\n\"1791522\";\"Wendu Cangzuxiang\";\"other\"\n\"1791522\";\"拉雄\";\"other\"\n\"1791522\";\"文都\";\"other\"\n\"1791522\";\"文都藏族乡\";\"other\"\n\"1791536\";\"Wendeng\";\"main\"\n\"1791536\";\"Chiu-wen-teng\";\"other\"\n\"1791536\";\"K'un-yu\";\"other\"\n\"1791536\";\"K’un-yü\";\"other\"\n\"1791536\";\"Wen-teng\";\"other\"\n\"1791536\";\"Wen-teng-ch'eng\";\"other\"\n\"1791536\";\"Wen-teng-ch’eng\";\"other\"\n\"1791536\";\"Wen-teng-hsien\";\"other\"\n\"1791536\";\"Wencheng\";\"other\"\n\"1791539\";\"Wencheng\";\"main\"\n\"1791539\";\"Wencheng Xiang\";\"other\"\n\"1791539\";\"文城\";\"other\"\n\"1791539\";\"文城乡\";\"other\"\n\"1791560\";\"Weizhuang\";\"main\"\n\"1791560\";\"Wei-chuang\";\"other\"\n\"1791560\";\"Wei-chuang-chen\";\"other\"\n\"1791560\";\"Weizhuang Zhen\";\"other\"\n\"1791560\";\"wei zhuang\";\"other\"\n\"1791560\";\"韦庄\";\"other\"\n\"1791566\";\"Weizhou\";\"main\"\n\"1791566\";\"Mao-wen\";\"other\"\n\"1791566\";\"Mao-wen-ch'iang-tsu-tzu-chih-hsien\";\"other\"\n\"1791566\";\"Mao-wen-ch’iang-tsu-tzu-chih-hsien\";\"other\"\n\"1791566\";\"Veychzhou\";\"other\"\n\"1791566\";\"Wei-chiu\";\"other\"\n\"1791566\";\"Wei-chou\";\"other\"\n\"1791566\";\"Wei-chou-chen\";\"other\"\n\"1791566\";\"Weikiu\";\"other\"\n\"1791566\";\"Wenchuan\";\"other\"\n\"1791566\";\"wei zhou\";\"other\"\n\"1791566\";\"威州\";\"other\"\n\"1791575\";\"Weiyuan\";\"main\"\n\"1791575\";\"Wei-yuan-pao\";\"other\"\n\"1791575\";\"Wei-yüan-pao\";\"other\"\n\"1791575\";\"Weiyuan Zhen\";\"other\"\n\"1791575\";\"Weiyuanbu\";\"other\"\n\"1791575\";\"威远\";\"other\"\n\"1791575\";\"威远镇\";\"other\"\n\"1791579\";\"Weiyuan\";\"main\"\n\"1791579\";\"Ching-ku\";\"other\"\n\"1791579\";\"Ching-ku-chieh\";\"other\"\n\"1791579\";\"Ching-ku-hsien\";\"other\"\n\"1791579\";\"Dajie\";\"other\"\n\"1791579\";\"Jinggu\";\"other\"\n\"1791579\";\"Kingku\";\"other\"\n\"1791579\";\"Kingkuhsien\";\"other\"\n\"1791579\";\"Mongwaw\";\"other\"\n\"1791579\";\"wei yuan\";\"other\"\n\"1791579\";\"威远\";\"other\"\n\"1791602\";\"Weitian\";\"main\"\n\"1791602\";\"Wei-t'ien\";\"other\"\n\"1791602\";\"Wei-t’ien\";\"other\"\n\"1791602\";\"Weitian Zhen\";\"other\"\n\"1791602\";\"渭田\";\"other\"\n\"1791603\";\"Weitang\";\"main\"\n\"1791603\";\"Hsu-t'ang-chen\";\"other\"\n\"1791603\";\"Hsü-t’ang-chen\";\"other\"\n\"1791603\";\"Yu-t'ang\";\"other\"\n\"1791603\";\"Yu-t'ang-chen\";\"other\"\n\"1791603\";\"Yü-t’ang\";\"other\"\n\"1791603\";\"Yü-t’ang-chen\";\"other\"\n\"1791603\";\"wei tian zhen\";\"other\"\n\"1791603\";\"渭田镇\";\"other\"\n\"1791619\";\"Weishan\";\"main\"\n\"1791619\";\"Wei-shan-chen\";\"other\"\n\"1791619\";\"Weishan Zhen\";\"other\"\n\"1791619\";\"wei shan\";\"other\"\n\"1791619\";\"巍山\";\"other\"\n\"1791619\";\"巍山镇\";\"other\"\n\"1791623\";\"Weirong\";\"main\"\n\"1791623\";\"Veybenchzhen'\";\"other\"\n\"1791623\";\"Veybenchzhen’\";\"other\"\n\"1791623\";\"Wei-ch'eng-chen\";\"other\"\n\"1791623\";\"Wei-ch’eng-chen\";\"other\"\n\"1791623\";\"Wei-jung\";\"other\"\n\"1791623\";\"Wei-jung-chen\";\"other\"\n\"1791623\";\"Wei-jung-tschon\";\"other\"\n\"1791623\";\"Wei-jung-tschön\";\"other\"\n\"1791623\";\"Wei-peng-chen\";\"other\"\n\"1791623\";\"Wei-shu-chen\";\"other\"\n\"1791623\";\"Wei-wu-chen\";\"other\"\n\"1791623\";\"威戎\";\"other\"\n\"1791636\";\"Weinan\";\"main\"\n\"1791636\";\"Veynan\";\"other\"\n\"1791636\";\"Wei-nan-hsien\";\"other\"\n\"1791636\";\"Weinan Shi\";\"other\"\n\"1791636\";\"渭南\";\"other\"\n\"1791673\";\"Weihai\";\"main\"\n\"1791673\";\"Vehjkhaj\";\"other\"\n\"1791673\";\"Wei-hai-shih\";\"other\"\n\"1791673\";\"Wei-hai-wei\";\"other\"\n\"1791673\";\"Wei-hai-wei-shih\";\"other\"\n\"1791673\";\"wei hai\";\"other\"\n\"1791673\";\"wei hai shi\";\"other\"\n\"1791673\";\"weihai\";\"other\"\n\"1791673\";\"Вэйхай\";\"other\"\n\"1791673\";\"ۋېيخەي شەھىرى\";\"other\"\n\"1791673\";\"威海\";\"other\"\n\"1791673\";\"威海市\";\"other\"\n\"1791673\";\"웨이하이\";\"other\"\n\"1791681\";\"Weifang\";\"main\"\n\"1791681\";\"Vehjfan\";\"other\"\n\"1791681\";\"Wei\";\"other\"\n\"1791681\";\"Wei-fang-shih\";\"other\"\n\"1791681\";\"Wei-hsien\";\"other\"\n\"1791681\";\"wei fang\";\"other\"\n\"1791681\";\"wei fang shi\";\"other\"\n\"1791681\";\"Вэйфан\";\"other\"\n\"1791681\";\"潍坊\";\"other\"\n\"1791681\";\"潍坊市\";\"other\"\n\"1791690\";\"Weicun\";\"main\"\n\"1791690\";\"Wei-ts'un\";\"other\"\n\"1791690\";\"Wei-ts'un-chen\";\"other\"\n\"1791690\";\"Wei-ts’un\";\"other\"\n\"1791690\";\"Wei-ts’un-chen\";\"other\"\n\"1791690\";\"Weicun Zhen\";\"other\"\n\"1791690\";\"魏村\";\"other\"\n\"1791690\";\"魏村镇\";\"other\"\n\"1791710\";\"Waxi\";\"main\"\n\"1791710\";\"Waxi Zhen\";\"other\"\n\"1791710\";\"瓦溪\";\"other\"\n\"1791710\";\"瓦溪镇\";\"other\"\n\"1791715\";\"Wawu\";\"main\"\n\"1791715\";\"Wawumiao\";\"other\"\n\"1791715\";\"wa wu\";\"other\"\n\"1791715\";\"瓦屋\";\"other\"\n\"1791733\";\"Wanzhi\";\"main\"\n\"1791733\";\"Wan-chih\";\"other\"\n\"1791733\";\"Wan-chih-chen\";\"other\"\n\"1791733\";\"Wu-hu-hsien\";\"other\"\n\"1791733\";\"Wuhu\";\"other\"\n\"1791733\";\"wan zhi\";\"other\"\n\"1791733\";\"湾沚\";\"other\"\n\"1791745\";\"Wanxiang\";\"main\"\n\"1791745\";\"Wan-hsiang\";\"other\"\n\"1791745\";\"Wan-hsiang-chen\";\"other\"\n\"1791745\";\"Wanxiang Zhen\";\"other\"\n\"1791745\";\"Wanxiangzhen\";\"other\"\n\"1791745\";\"万祥\";\"other\"\n\"1791745\";\"万祥镇\";\"other\"\n\"1791748\";\"Wanxian\";\"main\"\n\"1791748\";\"Wan\";\"other\"\n\"1791748\";\"Wan-hsien\";\"other\"\n\"1791748\";\"Wan-hsien-shih\";\"other\"\n\"1791752\";\"Wantouqiao\";\"main\"\n\"1791752\";\"Wan-t'ou-ch'iao\";\"other\"\n\"1791752\";\"Wan-t’ou-ch’iao\";\"other\"\n\"1791773\";\"Wanquan\";\"main\"\n\"1791773\";\"Wanquan Xiang\";\"other\"\n\"1791773\";\"万全\";\"other\"\n\"1791773\";\"万全乡\";\"other\"\n\"1791779\";\"Wanning\";\"main\"\n\"1791779\";\"Maning\";\"other\"\n\"1791779\";\"Manning\";\"other\"\n\"1791779\";\"Manyun\";\"other\"\n\"1791779\";\"Van Leng\";\"other\"\n\"1791779\";\"Wan\";\"other\"\n\"1791779\";\"Wan-ch'eng-chen\";\"other\"\n\"1791779\";\"Wan-ch’eng-chen\";\"other\"\n\"1791779\";\"Wan-hsien\";\"other\"\n\"1791779\";\"Wan-ning-hsien\";\"other\"\n\"1791779\";\"Wancheng\";\"other\"\n\"1791779\";\"wan ning shi\";\"other\"\n\"1791779\";\"万宁市\";\"other\"\n\"1791782\";\"Xiasanhe\";\"main\"\n\"1791782\";\"Wan-sheng-sha\";\"other\"\n\"1791782\";\"Wannian\";\"other\"\n\"1791782\";\"Wannian Zhen\";\"other\"\n\"1791782\";\"万年\";\"other\"\n\"1791782\";\"万年镇\";\"other\"\n\"1791782\";\"下三和\";\"other\"\n\"1791784\";\"Wanmingang\";\"main\"\n\"1791784\";\"Wanmin Xiang\";\"other\"\n\"1791784\";\"wan min gang\";\"other\"\n\"1791784\";\"wan min xiang\";\"other\"\n\"1791784\";\"万民乡\";\"other\"\n\"1791784\";\"万民岗\";\"other\"\n\"1791785\";\"Wanmao\";\"main\"\n\"1791785\";\"完冒\";\"other\"\n\"1791792\";\"Wanli\";\"main\"\n\"1791792\";\"Wanli Jiedao\";\"other\"\n\"1791792\";\"wan li\";\"other\"\n\"1791792\";\"wan li jie dao\";\"other\"\n\"1791792\";\"湾里\";\"other\"\n\"1791792\";\"湾里街道\";\"other\"\n\"1791804\";\"Wanbu\";\"main\"\n\"1791804\";\"Wan-chia-fou\";\"other\"\n\"1791804\";\"Wan-chia-pu\";\"other\"\n\"1791804\";\"Wan-chia-tou\";\"other\"\n\"1791804\";\"Wanbu Zhen\";\"other\"\n\"1791804\";\"Wanjiabu\";\"other\"\n\"1791804\";\"万埠\";\"other\"\n\"1791804\";\"万埠镇\";\"other\"\n\"1791813\";\"Wangguan\";\"main\"\n\"1791813\";\"Vantszoguan'\";\"other\"\n\"1791813\";\"Vantszöguan’\";\"other\"\n\"1791813\";\"Wang-tzi-k'uan\";\"other\"\n\"1791813\";\"Wang-tzu-kuan\";\"other\"\n\"1791813\";\"Wang-tzï-k’üan\";\"other\"\n\"1791813\";\"Wangziguan\";\"other\"\n\"1791813\";\"望关\";\"other\"\n\"1791819\";\"Wangzhuangbu\";\"main\"\n\"1791819\";\"Vaychzhuanbao\";\"other\"\n\"1791819\";\"Wang-chuang-pao\";\"other\"\n\"1791819\";\"Wangchwangpao\";\"other\"\n\"1791819\";\"Wangjuangbu\";\"other\"\n\"1791819\";\"Wangzhuangbu Zhen\";\"other\"\n\"1791819\";\"王庄堡\";\"other\"\n\"1791819\";\"王庄堡镇\";\"other\"\n\"1791874\";\"Xiawangwa\";\"main\"\n\"1791874\";\"Wangwa Xiang\";\"other\"\n\"1791874\";\"下王洼\";\"other\"\n\"1791874\";\"王洼乡\";\"other\"\n\"1791888\";\"Wangtan\";\"main\"\n\"1791888\";\"Wang-t'an-shih\";\"other\"\n\"1791888\";\"Wang-t’an-shih\";\"other\"\n\"1791888\";\"Wangtan Zhen\";\"other\"\n\"1791888\";\"wang tan zhen\";\"other\"\n\"1791888\";\"王坛\";\"other\"\n\"1791888\";\"王坛镇\";\"other\"\n\"1791913\";\"Wangqu\";\"main\"\n\"1791913\";\"Wang-ch'u\";\"other\"\n\"1791913\";\"Wang-ch'u-chen\";\"other\"\n\"1791913\";\"Wang-ch’ü\";\"other\"\n\"1791913\";\"Wang-ch’ü-chen\";\"other\"\n\"1791913\";\"Wangqu Zhen\";\"other\"\n\"1791913\";\"wang qu\";\"other\"\n\"1791913\";\"wang qu zhen\";\"other\"\n\"1791913\";\"王曲\";\"other\"\n\"1791913\";\"王曲镇\";\"other\"\n\"1791914\";\"Wangqinzhuang\";\"main\"\n\"1791919\";\"Wangqiao\";\"main\"\n\"1791919\";\"Wang-ch'iao\";\"other\"\n\"1791919\";\"Wang-ch’iao\";\"other\"\n\"1791919\";\"Wangqiao Zhen\";\"other\"\n\"1791919\";\"wang qiao\";\"other\"\n\"1791919\";\"wang qiao zhen\";\"other\"\n\"1791919\";\"王桥\";\"other\"\n\"1791919\";\"王桥镇\";\"other\"\n\"1791922\";\"Wangqiao\";\"main\"\n\"1791922\";\"Wangqiao Zhen\";\"other\"\n\"1791922\";\"王桥\";\"other\"\n\"1791922\";\"王桥镇\";\"other\"\n\"1791925\";\"Wangpu\";\"main\"\n\"1791925\";\"王铺\";\"other\"\n\"1791927\";\"Wangping\";\"main\"\n\"1791927\";\"wang ping\";\"other\"\n\"1791927\";\"王坪\";\"other\"\n\"1791937\";\"Wangmin\";\"main\"\n\"1791937\";\"Wangminbu\";\"other\"\n\"1791937\";\"Wangminxiang\";\"other\"\n\"1791937\";\"王民\";\"other\"\n\"1791939\";\"Wangmeng\";\"main\"\n\"1791939\";\"Wangmeng Xiang\";\"other\"\n\"1791939\";\"王孟\";\"other\"\n\"1791939\";\"王孟乡\";\"other\"\n\"1791943\";\"Wangluo\";\"main\"\n\"1791943\";\"Wang-lo\";\"other\"\n\"1791943\";\"wang luo\";\"other\"\n\"1791943\";\"王洛\";\"other\"\n\"1791958\";\"Wangliao\";\"main\"\n\"1791958\";\"Wang-liao-chen\";\"other\"\n\"1791958\";\"Wangliao Zhen\";\"other\"\n\"1791958\";\"wang liao\";\"other\"\n\"1791958\";\"王寮\";\"other\"\n\"1792014\";\"Wangjiang\";\"main\"\n\"1792014\";\"Wang-chiang\";\"other\"\n\"1792014\";\"Wang-chiang-hsien\";\"other\"\n\"1792014\";\"Wangkiang\";\"other\"\n\"1792014\";\"Wangkiang-hsien\";\"other\"\n\"1792014\";\"wang jiang\";\"other\"\n\"1792014\";\"望江\";\"other\"\n\"1792068\";\"Wanghu\";\"main\"\n\"1792068\";\"Wang-hu-ts'un\";\"other\"\n\"1792068\";\"Wang-hu-ts’un\";\"other\"\n\"1792068\";\"Wang-ku\";\"other\"\n\"1792068\";\"Wanghu Xiang\";\"other\"\n\"1792068\";\"望狐\";\"other\"\n\"1792068\";\"望狐乡\";\"other\"\n\"1792087\";\"Jiaonan\";\"main\"\n\"1792087\";\"Chiao-nan\";\"other\"\n\"1792087\";\"Wang-ko-chuang\";\"other\"\n\"1792087\";\"Wanggezhuang\";\"other\"\n\"1792121\";\"Wangdian\";\"main\"\n\"1792121\";\"Wang-tien\";\"other\"\n\"1792121\";\"wang dian\";\"other\"\n\"1792121\";\"王店\";\"other\"\n\"1792127\";\"Wangcun\";\"main\"\n\"1792127\";\"Wang-ts'un-p'u\";\"other\"\n\"1792127\";\"Wang-ts’un-p’u\";\"other\"\n\"1792127\";\"Wangcunpu\";\"other\"\n\"1792127\";\"wang cun\";\"other\"\n\"1792127\";\"王村\";\"other\"\n\"1792163\";\"Wangbuzhuang\";\"main\"\n\"1792163\";\"Wang-pu-chuang\";\"other\"\n\"1792163\";\"Wang-pu-chuang-chen\";\"other\"\n\"1792163\";\"Wangpu\";\"other\"\n\"1792171\";\"Anping\";\"main\"\n\"1792171\";\"Wang'anping\";\"other\"\n\"1792171\";\"Wang’anping\";\"other\"\n\"1792184\";\"Wancun\";\"main\"\n\"1792184\";\"Wancun Xiang\";\"other\"\n\"1792184\";\"wan cun\";\"other\"\n\"1792184\";\"wan cun xiang\";\"other\"\n\"1792184\";\"万村\";\"other\"\n\"1792184\";\"万村乡\";\"other\"\n\"1792198\";\"Wan’an\";\"main\"\n\"1792198\";\"Wan'an\";\"ascii\"\n\"1792198\";\"Wan'an Zhen\";\"other\"\n\"1792198\";\"Wan-an-chieh\";\"other\"\n\"1792198\";\"Wan’an Zhen\";\"other\"\n\"1792198\";\"Wao-an-chieh\";\"other\"\n\"1792198\";\"wan an\";\"other\"\n\"1792198\";\"wan an zhen\";\"other\"\n\"1792198\";\"万安\";\"other\"\n\"1792198\";\"万安镇\";\"other\"\n\"1792199\";\"Wan’an\";\"main\"\n\"1792199\";\"Wan'an\";\"ascii\"\n\"1792199\";\"Wan'an Zhen\";\"other\"\n\"1792199\";\"Wan-an-chen\";\"other\"\n\"1792199\";\"Wan’an Zhen\";\"other\"\n\"1792199\";\"万安\";\"other\"\n\"1792199\";\"万安镇\";\"other\"\n\"1792232\";\"Waina\";\"main\"\n\"1792232\";\"Wainapu\";\"other\"\n\"1792232\";\"外纳\";\"other\"\n\"1792260\";\"Wafangdian\";\"main\"\n\"1792260\";\"Fu\";\"other\"\n\"1792260\";\"Fu-hsien\";\"other\"\n\"1792260\";\"Fuxian\";\"other\"\n\"1792260\";\"Wa-fan-tien\";\"other\"\n\"1792260\";\"Wa-fang-tien\";\"other\"\n\"1792260\";\"Wa-fang-tien-chen\";\"other\"\n\"1792286\";\"Tuzhai\";\"main\"\n\"1792286\";\"T'u-chai\";\"other\"\n\"1792286\";\"T’u-chai\";\"other\"\n\"1792286\";\"tu zhai\";\"other\"\n\"1792286\";\"涂寨\";\"other\"\n\"1792334\";\"Tuokou\";\"main\"\n\"1792334\";\"T'o-k'ou\";\"other\"\n\"1792334\";\"T'o-k'ou-p'u\";\"other\"\n\"1792334\";\"Tokow\";\"other\"\n\"1792334\";\"T’o-k’ou\";\"other\"\n\"1792334\";\"T’o-k’ou-p’u\";\"other\"\n\"1792340\";\"Tuojiang\";\"main\"\n\"1792340\";\"Feng-huang-hsien\";\"other\"\n\"1792340\";\"Fenghuang\";\"other\"\n\"1792340\";\"Fenghwang\";\"other\"\n\"1792340\";\"Fenghwang-hsien\";\"other\"\n\"1792340\";\"Fenghwangtin\";\"other\"\n\"1792340\";\"Fengwang\";\"other\"\n\"1792340\";\"T'o-chiang-chen\";\"other\"\n\"1792340\";\"T’o-chiang-chen\";\"other\"\n\"1792340\";\"tuo jiang\";\"other\"\n\"1792340\";\"沱江\";\"other\"\n\"1792341\";\"Tuojiang\";\"main\"\n\"1792341\";\"Chiang-hua-hsien\";\"other\"\n\"1792341\";\"Chiang-hua-yao-tsu-tzu-chih-hsien\";\"other\"\n\"1792341\";\"Chiu-chiang-hua\";\"other\"\n\"1792341\";\"Kianghwa\";\"other\"\n\"1792341\";\"Kianghwa-hsien\";\"other\"\n\"1792341\";\"T'o-chiang\";\"other\"\n\"1792341\";\"T'o-chiang-chen\";\"other\"\n\"1792341\";\"Tuojiangzhen\";\"other\"\n\"1792341\";\"T’o-chiang\";\"other\"\n\"1792341\";\"T’o-chiang-chen\";\"other\"\n\"1792341\";\"tuo jiang\";\"other\"\n\"1792341\";\"沱江\";\"other\"\n\"1792346\";\"Tuofeng\";\"main\"\n\"1792346\";\"T'o-feng\";\"other\"\n\"1792346\";\"Tuofeng Xiang\";\"other\"\n\"1792346\";\"T’o-feng\";\"other\"\n\"1792346\";\"驼峰\";\"other\"\n\"1792346\";\"驼峰乡\";\"other\"\n\"1792350\";\"Tuodian\";\"main\"\n\"1792350\";\"Shuang-pai\";\"other\"\n\"1792350\";\"Shuangbai\";\"other\"\n\"1792350\";\"T'o-tien\";\"other\"\n\"1792350\";\"T'o-tien-chen\";\"other\"\n\"1792350\";\"T'o-tien-chieh\";\"other\"\n\"1792350\";\"T’o-tien\";\"other\"\n\"1792350\";\"T’o-tien-chen\";\"other\"\n\"1792350\";\"T’o-tien-chieh\";\"other\"\n\"1792350\";\"tuo dian\";\"other\"\n\"1792350\";\"妥甸\";\"other\"\n\"1792351\";\"Tuochuan\";\"main\"\n\"1792351\";\"T'o-ch'uan-pu\";\"other\"\n\"1792351\";\"Tuochuan Zhen\";\"other\"\n\"1792351\";\"Tuochuanbu\";\"other\"\n\"1792351\";\"T’o-ch’uan-pu\";\"other\"\n\"1792351\";\"拖船\";\"other\"\n\"1792351\";\"拖船镇\";\"other\"\n\"1792359\";\"Huangshan\";\"main\"\n\"1792359\";\"Huangshan Shi\";\"other\"\n\"1792359\";\"T'un-ch'i\";\"other\"\n\"1792359\";\"T'un-ch'i-chen\";\"other\"\n\"1792359\";\"T'un-ch'i-shih\";\"other\"\n\"1792359\";\"T'un-hsi\";\"other\"\n\"1792359\";\"Tun'si\";\"other\"\n\"1792359\";\"Tunki\";\"other\"\n\"1792359\";\"Tunqi\";\"other\"\n\"1792359\";\"Tunxi\";\"other\"\n\"1792359\";\"Tunxi Qu\";\"other\"\n\"1792359\";\"T’un-ch’i\";\"other\"\n\"1792359\";\"T’un-ch’i-chen\";\"other\"\n\"1792359\";\"T’un-ch’i-shih\";\"other\"\n\"1792359\";\"T’un-hsi\";\"other\"\n\"1792359\";\"Туньси\";\"other\"\n\"1792359\";\"屯溪\";\"other\"\n\"1792359\";\"屯溪区\";\"other\"\n\"1792359\";\"黄山\";\"other\"\n\"1792359\";\"黄山市\";\"other\"\n\"1792365\";\"Linjiang\";\"main\"\n\"1792365\";\"T'un-ch'ang\";\"other\"\n\"1792365\";\"T'un-liu-chen\";\"other\"\n\"1792365\";\"T'un-liu-hsien\";\"other\"\n\"1792365\";\"T'un-liu-hsien-ch'eng\";\"other\"\n\"1792365\";\"Tunliu\";\"other\"\n\"1792365\";\"T’un-ch’ang\";\"other\"\n\"1792365\";\"T’un-liu-chen\";\"other\"\n\"1792365\";\"T’un-liu-hsien\";\"other\"\n\"1792365\";\"T’un-liu-hsien-ch’eng\";\"other\"\n\"1792365\";\"lin jiang\";\"other\"\n\"1792365\";\"麟绛\";\"other\"\n\"1792410\";\"Tuguan\";\"main\"\n\"1792410\";\"T'u-kuan-ts'un\";\"other\"\n\"1792410\";\"Tuguan Zhen\";\"other\"\n\"1792410\";\"Tuguancun\";\"other\"\n\"1792410\";\"T’u-kuan-ts’un\";\"other\"\n\"1792410\";\"Xinjie\";\"other\"\n\"1792410\";\"tu guan\";\"other\"\n\"1792410\";\"tu guan zhen\";\"other\"\n\"1792410\";\"土官\";\"other\"\n\"1792410\";\"土官镇\";\"other\"\n\"1792418\";\"Tufang\";\"main\"\n\"1792418\";\"Tufang Zhen\";\"other\"\n\"1792418\";\"涂坊\";\"other\"\n\"1792418\";\"涂坊镇\";\"other\"\n\"1792467\";\"Tuanfeng\";\"main\"\n\"1792467\";\"Twanfeng\";\"other\"\n\"1792467\";\"tuan feng\";\"other\"\n\"1792467\";\"团风\";\"other\"\n\"1792482\";\"Touzao\";\"main\"\n\"1792482\";\"Touzao Zhen\";\"other\"\n\"1792482\";\"头灶\";\"other\"\n\"1792482\";\"头灶镇\";\"other\"\n\"1792484\";\"Touying\";\"main\"\n\"1792485\";\"Touying\";\"main\"\n\"1792485\";\"Touying Xiang\";\"other\"\n\"1792485\";\"头营\";\"other\"\n\"1792485\";\"头营乡\";\"other\"\n\"1792502\";\"Toufang\";\"main\"\n\"1792502\";\"透防\";\"other\"\n\"1792516\";\"Loushanguan\";\"main\"\n\"1792516\";\"T'ung-tzu\";\"other\"\n\"1792516\";\"T'ung-tzu-ch'eng\";\"other\"\n\"1792516\";\"T'ung-tzu-hsien\";\"other\"\n\"1792516\";\"Tongzi\";\"other\"\n\"1792516\";\"Tungtze\";\"other\"\n\"1792516\";\"Tungtze-hsien\";\"other\"\n\"1792516\";\"T’ung-tzu\";\"other\"\n\"1792516\";\"T’ung-tzu-ch’eng\";\"other\"\n\"1792516\";\"T’ung-tzu-hsien\";\"other\"\n\"1792520\";\"Tongzhou\";\"main\"\n\"1792520\";\"T'ung\";\"other\"\n\"1792520\";\"T'ung-chen\";\"other\"\n\"1792520\";\"T'ung-chou\";\"other\"\n\"1792520\";\"T'ung-chou-ch'u\";\"other\"\n\"1792520\";\"T'ung-chou-shih\";\"other\"\n\"1792520\";\"T'ung-hsien\";\"other\"\n\"1792520\";\"T'ung-hsien-chen\";\"other\"\n\"1792520\";\"Tingchow\";\"other\"\n\"1792520\";\"Tongxian\";\"other\"\n\"1792520\";\"Tunchzhou\";\"other\"\n\"1792520\";\"Tunsyan'\";\"other\"\n\"1792520\";\"Tunsyan’\";\"other\"\n\"1792520\";\"T’ung\";\"other\"\n\"1792520\";\"T’ung-chen\";\"other\"\n\"1792520\";\"T’ung-chou\";\"other\"\n\"1792520\";\"T’ung-chou-ch’ü\";\"other\"\n\"1792520\";\"T’ung-chou-shih\";\"other\"\n\"1792520\";\"T’ung-hsien\";\"other\"\n\"1792520\";\"T’ung-hsien-chen\";\"other\"\n\"1792520\";\"Тунчжоу\";\"other\"\n\"1792528\";\"Tongyuan\";\"main\"\n\"1792528\";\"T'ung-yuan-fang\";\"other\"\n\"1792528\";\"Tongyuan Zhen\";\"other\"\n\"1792528\";\"Tongyuanfang\";\"other\"\n\"1792528\";\"Tungyunfang\";\"other\"\n\"1792528\";\"T’ung-yüan-fang\";\"other\"\n\"1792528\";\"tong yuan\";\"other\"\n\"1792528\";\"通远\";\"other\"\n\"1792530\";\"Tongyuan\";\"main\"\n\"1792530\";\"T'ung-yuan\";\"other\"\n\"1792530\";\"Tongyuan Xiang\";\"other\"\n\"1792530\";\"T’ung-yüan\";\"other\"\n\"1792530\";\"桐源\";\"other\"\n\"1792530\";\"桐源乡\";\"other\"\n\"1792539\";\"Tongyang\";\"main\"\n\"1792539\";\"T'ung-shan\";\"other\"\n\"1792539\";\"T'ung-shan-hsien\";\"other\"\n\"1792539\";\"Tongshan\";\"other\"\n\"1792539\";\"T’ung-shan\";\"other\"\n\"1792539\";\"T’ung-shan-hsien\";\"other\"\n\"1792539\";\"tong yang\";\"other\"\n\"1792539\";\"通羊\";\"other\"\n\"1792543\";\"Tongxing\";\"main\"\n\"1792543\";\"T'ung-hsing-chen\";\"other\"\n\"1792543\";\"Tongxing Xiang\";\"other\"\n\"1792543\";\"Tongxingzhen\";\"other\"\n\"1792543\";\"T’ung-hsing-chen\";\"other\"\n\"1792543\";\"通兴\";\"other\"\n\"1792560\";\"Pingxiang\";\"main\"\n\"1792560\";\"Pingxiang Zhen\";\"other\"\n\"1792560\";\"T'ung-wei\";\"other\"\n\"1792560\";\"T'ung-wei-hien\";\"other\"\n\"1792560\";\"T'ung-wei-hsien\";\"other\"\n\"1792560\";\"Tongwei\";\"other\"\n\"1792560\";\"Tunwey\";\"other\"\n\"1792560\";\"T’ung-wei\";\"other\"\n\"1792560\";\"T’ung-wei-hien\";\"other\"\n\"1792560\";\"T’ung-wei-hsien\";\"other\"\n\"1792560\";\"平襄\";\"other\"\n\"1792560\";\"平襄镇\";\"other\"\n\"1792562\";\"Tongwan\";\"main\"\n\"1792562\";\"T'ung-wan\";\"other\"\n\"1792562\";\"T’ung-wan\";\"other\"\n\"1792585\";\"Fuding\";\"main\"\n\"1792585\";\"Fu-ting\";\"other\"\n\"1792585\";\"Fu-ting-hsien\";\"other\"\n\"1792585\";\"Tongshan\";\"other\"\n\"1792592\";\"Tongren\";\"main\"\n\"1792592\";\"Kiangkowhsien\";\"other\"\n\"1792592\";\"T'ung-jen\";\"other\"\n\"1792592\";\"T'ung-jen-hsien\";\"other\"\n\"1792592\";\"T'ung-yen\";\"other\"\n\"1792592\";\"Tongren Shi\";\"other\"\n\"1792592\";\"T’ung-jen\";\"other\"\n\"1792592\";\"T’ung-jen-hsien\";\"other\"\n\"1792592\";\"T’ung-yen\";\"other\"\n\"1792594\";\"Tongquan\";\"main\"\n\"1792594\";\"Ma-lung\";\"other\"\n\"1792594\";\"Ma-lung-hsien\";\"other\"\n\"1792594\";\"Malong\";\"other\"\n\"1792594\";\"T'ung-ch'uan-chen\";\"other\"\n\"1792594\";\"T’ung-ch’üan-chen\";\"other\"\n\"1792594\";\"tong quan\";\"other\"\n\"1792594\";\"通泉\";\"other\"\n\"1792603\";\"Tongqian\";\"main\"\n\"1792603\";\"Tongqianba\";\"other\"\n\"1792603\";\"铜钱\";\"other\"\n\"1792621\";\"Wusong\";\"main\"\n\"1792621\";\"T'ung-ling\";\"other\"\n\"1792621\";\"T'ung-ling-hsien\";\"other\"\n\"1792621\";\"Tongling\";\"other\"\n\"1792621\";\"T’ung-ling\";\"other\"\n\"1792621\";\"T’ung-ling-hsien\";\"other\"\n\"1792621\";\"Yuan-hsien-ch'eng\";\"other\"\n\"1792621\";\"Yüan-hsien-ch’eng\";\"other\"\n\"1792621\";\"tong ling\";\"other\"\n\"1792621\";\"tong ling shi\";\"other\"\n\"1792621\";\"五松\";\"other\"\n\"1792621\";\"铜陵\";\"other\"\n\"1792621\";\"铜陵市\";\"other\"\n\"1792628\";\"Tongle\";\"main\"\n\"1792628\";\"Chiu-lo-yeh\";\"other\"\n\"1792628\";\"Le-yeh\";\"other\"\n\"1792628\";\"Leye\";\"other\"\n\"1792628\";\"Lo-yeh\";\"other\"\n\"1792628\";\"Lo-yeh-hsien\";\"other\"\n\"1792628\";\"Lo-yeh-hsien-ch'eng\";\"other\"\n\"1792628\";\"Lo-yeh-hsien-ch’eng\";\"other\"\n\"1792628\";\"Lo-yeh-hsu\";\"other\"\n\"1792628\";\"Lo-yeh-hsü\";\"other\"\n\"1792628\";\"T'ung-lo\";\"other\"\n\"1792628\";\"T'ung-lo-hsiang\";\"other\"\n\"1792628\";\"T’ung-lo\";\"other\"\n\"1792628\";\"T’ung-lo-hsiang\";\"other\"\n\"1792628\";\"tong le\";\"other\"\n\"1792628\";\"同乐\";\"other\"\n\"1792635\";\"Tongjinpu\";\"main\"\n\"1792635\";\"Tongjinpu Zhen\";\"other\"\n\"1792635\";\"tong jin pu\";\"other\"\n\"1792635\";\"tong jin pu zhen\";\"other\"\n\"1792635\";\"通津铺\";\"other\"\n\"1792635\";\"通津铺镇\";\"other\"\n\"1792681\";\"Tonggu\";\"main\"\n\"1792681\";\"Lao-chin-p'ing\";\"other\"\n\"1792681\";\"Lao-chin-p’ing\";\"other\"\n\"1792684\";\"Tongfang\";\"main\"\n\"1792684\";\"T'ung-fang\";\"other\"\n\"1792684\";\"Tongfang Zhen\";\"other\"\n\"1792684\";\"T’ung-fang\";\"other\"\n\"1792684\";\"童坊\";\"other\"\n\"1792684\";\"童坊镇\";\"other\"\n\"1792692\";\"Tongchuan\";\"main\"\n\"1792692\";\"San'tay\";\"other\"\n\"1792692\";\"San-t'ai-hsien\";\"other\"\n\"1792692\";\"San-t’ai-hsien\";\"other\"\n\"1792692\";\"Santai\";\"other\"\n\"1792692\";\"San’tay\";\"other\"\n\"1792692\";\"T'ung-ch'uan\";\"other\"\n\"1792692\";\"Tunchuan\";\"other\"\n\"1792692\";\"Tungchwan\";\"other\"\n\"1792692\";\"Tungchwan-fu\";\"other\"\n\"1792692\";\"T’ung-ch’uan\";\"other\"\n\"1792692\";\"潼川\";\"other\"\n\"1792695\";\"Tongzha\";\"main\"\n\"1792695\";\"T'ung-ch'eng-cha\";\"other\"\n\"1792695\";\"T'ung-ch'eng-cha-chen\";\"other\"\n\"1792695\";\"Tongchengzha\";\"other\"\n\"1792695\";\"Tongzha Zhen\";\"other\"\n\"1792695\";\"T’ung-ch’eng-cha\";\"other\"\n\"1792695\";\"T’ung-ch’eng-cha-chen\";\"other\"\n\"1792695\";\"tong zha\";\"other\"\n\"1792695\";\"tong zha zhen\";\"other\"\n\"1792695\";\"铜闸\";\"other\"\n\"1792695\";\"铜闸镇\";\"other\"\n\"1792704\";\"Tongchang\";\"main\"\n\"1792704\";\"T'ung-ch'ang\";\"other\"\n\"1792704\";\"Tongchang Yizuxiang\";\"other\"\n\"1792704\";\"T’ung-ch’ang\";\"other\"\n\"1792704\";\"tong chang\";\"other\"\n\"1792704\";\"tong chang yi zu xiang\";\"other\"\n\"1792704\";\"铜厂\";\"other\"\n\"1792704\";\"铜厂彝族乡\";\"other\"\n\"1792717\";\"Tong’an\";\"main\"\n\"1792717\";\"Tong'an\";\"ascii\"\n\"1792717\";\"T'ung-an-ch'iao-chen\";\"other\"\n\"1792717\";\"Tong'an Zhen\";\"other\"\n\"1792717\";\"Tong’an Zhen\";\"other\"\n\"1792717\";\"T’ung-an-ch’iao-chen\";\"other\"\n\"1792717\";\"通安\";\"other\"\n\"1792725\";\"Tingzhou\";\"main\"\n\"1792725\";\"Ch'ang-t'ing-hsien\";\"other\"\n\"1792725\";\"Changting\";\"other\"\n\"1792725\";\"Ch’ang-t’ing-hsien\";\"other\"\n\"1792725\";\"T'ing-chou\";\"other\"\n\"1792725\";\"Tingchow\";\"other\"\n\"1792725\";\"Tingchowfu\";\"other\"\n\"1792725\";\"T’ing-chou\";\"other\"\n\"1792725\";\"ting zhou\";\"other\"\n\"1792725\";\"汀州\";\"other\"\n\"1792738\";\"Tingpang\";\"main\"\n\"1792738\";\"T'ing-p'ang-chen\";\"other\"\n\"1792738\";\"Tingbangzhen\";\"other\"\n\"1792738\";\"Tingpang Zhen\";\"other\"\n\"1792738\";\"T’ing-p’ang-chen\";\"other\"\n\"1792738\";\"ting pang\";\"other\"\n\"1792738\";\"ting pang zhen\";\"other\"\n\"1792738\";\"亭旁\";\"other\"\n\"1792738\";\"亭旁镇\";\"other\"\n\"1792749\";\"Tingjiang\";\"main\"\n\"1792749\";\"T'ing-t'ou\";\"other\"\n\"1792749\";\"T’ing-t’ou\";\"other\"\n\"1792752\";\"Tingdong\";\"main\"\n\"1792752\";\"T'ing-tung\";\"other\"\n\"1792752\";\"T’ing-tung\";\"other\"\n\"1792767\";\"Tieshan\";\"main\"\n\"1792767\";\"T'ieh-shan-miao\";\"other\"\n\"1792767\";\"Tieshanmiao\";\"other\"\n\"1792767\";\"T’ieh-shan-miao\";\"other\"\n\"1792767\";\"tie shan\";\"other\"\n\"1792767\";\"铁山\";\"other\"\n\"1792772\";\"Tieshan\";\"main\"\n\"1792772\";\"T'ieh-shan\";\"other\"\n\"1792772\";\"Tieshan Zhen\";\"other\"\n\"1792772\";\"T’ieh-shan\";\"other\"\n\"1792772\";\"tie shan\";\"other\"\n\"1792772\";\"tie shan zhen\";\"other\"\n\"1792772\";\"铁山\";\"other\"\n\"1792772\";\"铁山镇\";\"other\"\n\"1792785\";\"Tielu\";\"main\"\n\"1792785\";\"T'ieh-lu\";\"other\"\n\"1792785\";\"T'ieh-lu-chen\";\"other\"\n\"1792785\";\"T’ieh-lu\";\"other\"\n\"1792785\";\"T’ieh-lu-chen\";\"other\"\n\"1792785\";\"tie lu\";\"other\"\n\"1792785\";\"铁炉\";\"other\"\n\"1792814\";\"Tiebiancheng\";\"main\"\n\"1792814\";\"T'ieh-pien-ch'eng\";\"other\"\n\"1792814\";\"Tiebiancheng Zhen\";\"other\"\n\"1792814\";\"T’ieh-pien-ch’eng\";\"other\"\n\"1792814\";\"铁边城\";\"other\"\n\"1792814\";\"铁边城镇\";\"other\"\n\"1792841\";\"Tianzhou\";\"main\"\n\"1792841\";\"Chiu-feng-i\";\"other\"\n\"1792841\";\"Feng-i\";\"other\"\n\"1792841\";\"T'ien-chou\";\"other\"\n\"1792841\";\"T'ien-chou-chen\";\"other\"\n\"1792841\";\"T'ien-chou-hsu\";\"other\"\n\"1792841\";\"T'ien-yang\";\"other\"\n\"1792841\";\"Tianyang\";\"other\"\n\"1792841\";\"Tienchow\";\"other\"\n\"1792841\";\"T’ien-chou\";\"other\"\n\"1792841\";\"T’ien-chou-chen\";\"other\"\n\"1792841\";\"T’ien-chou-hsü\";\"other\"\n\"1792841\";\"T’ien-yang\";\"other\"\n\"1792841\";\"tian zhou\";\"other\"\n\"1792841\";\"田州\";\"other\"\n\"1792864\";\"Tianwang\";\"main\"\n\"1792864\";\"T'ien-wang\";\"other\"\n\"1792864\";\"T'ien-wang-ts'un\";\"other\"\n\"1792864\";\"Tianwang Zhen\";\"other\"\n\"1792864\";\"T’ien-wang\";\"other\"\n\"1792864\";\"T’ien-wang-ts’un\";\"other\"\n\"1792864\";\"天王\";\"other\"\n\"1792864\";\"天王镇\";\"other\"\n\"1792881\";\"Tiantang\";\"main\"\n\"1792881\";\"T'ien-t'ang\";\"other\"\n\"1792881\";\"T'ien-t'ang-chen\";\"other\"\n\"1792881\";\"T'ing-t'ang-ssu\";\"other\"\n\"1792881\";\"Tiantang Zhen\";\"other\"\n\"1792881\";\"Tyan'tanchzhen\";\"other\"\n\"1792881\";\"Tyan’tanchzhen\";\"other\"\n\"1792881\";\"T’ien-t’ang\";\"other\"\n\"1792881\";\"T’ien-t’ang-chen\";\"other\"\n\"1792881\";\"T’ing-t’ang-ssu\";\"other\"\n\"1792881\";\"天堂\";\"other\"\n\"1792881\";\"天堂镇\";\"other\"\n\"1792882\";\"Tiantang\";\"main\"\n\"1792882\";\"Ya-ch'ien\";\"other\"\n\"1792882\";\"Ya-ch'ien-chen\";\"other\"\n\"1792882\";\"Ya-ch’ien\";\"other\"\n\"1792882\";\"Ya-ch’ien-chen\";\"other\"\n\"1792882\";\"Yaqian\";\"other\"\n\"1792882\";\"Yueh-hsi\";\"other\"\n\"1792882\";\"Yuexi\";\"other\"\n\"1792882\";\"Yüeh-hsi\";\"other\"\n\"1792882\";\"tian tang\";\"other\"\n\"1792882\";\"天堂\";\"other\"\n\"1792889\";\"Tiantai Chengguanzhen\";\"main\"\n\"1792889\";\"Chengguan Zhen\";\"other\"\n\"1792889\";\"T'ien-t'ai\";\"other\"\n\"1792889\";\"T'ien-t'ai-hsien\";\"other\"\n\"1792889\";\"Tiantai\";\"other\"\n\"1792889\";\"T’ien-t’ai\";\"other\"\n\"1792889\";\"T’ien-t’ai-hsien\";\"other\"\n\"1792889\";\"tian tai\";\"other\"\n\"1792889\";\"城关镇\";\"other\"\n\"1792889\";\"天台\";\"other\"\n\"1792889\";\"天台城关镇\";\"other\"\n\"1792898\";\"Tianshi\";\"main\"\n\"1792898\";\"T'ien-shih\";\"other\"\n\"1792898\";\"T'ien-shih-chen\";\"other\"\n\"1792898\";\"Tianshi Zhen\";\"other\"\n\"1792898\";\"T’ien-shih\";\"other\"\n\"1792898\";\"T’ien-shih-chen\";\"other\"\n\"1792898\";\"tian shi\";\"other\"\n\"1792898\";\"田市\";\"other\"\n\"1792910\";\"Tianqian\";\"main\"\n\"1792910\";\"tian qi\";\"other\"\n\"1792910\";\"田墘\";\"other\"\n\"1792916\";\"Tianpeng\";\"main\"\n\"1792916\";\"P'eng\";\"other\"\n\"1792916\";\"P'eng-hsien\";\"other\"\n\"1792916\";\"Pengxian\";\"other\"\n\"1792916\";\"Pensyan'\";\"other\"\n\"1792916\";\"Pensyan’\";\"other\"\n\"1792916\";\"P’eng\";\"other\"\n\"1792916\";\"P’eng-hsien\";\"other\"\n\"1792916\";\"天彭\";\"other\"\n\"1792947\";\"Tianjin\";\"main\"\n\"1792947\";\"T'ien-chin\";\"other\"\n\"1792947\";\"T'ien-ching\";\"other\"\n\"1792947\";\"T'ien-ching-shih\";\"other\"\n\"1792947\";\"Tchien-tin\";\"other\"\n\"1792947\";\"Tchien-ťin\";\"other\"\n\"1792947\";\"Thien Tan\";\"other\"\n\"1792947\";\"Thiên Tân\";\"other\"\n\"1792947\";\"Tiandzinas\";\"other\"\n\"1792947\";\"Tianjin Shi\";\"other\"\n\"1792947\";\"Tianjing\";\"other\"\n\"1792947\";\"Tiencin\";\"other\"\n\"1792947\";\"Tiencsin\";\"other\"\n\"1792947\";\"Tientsin\";\"other\"\n\"1792947\";\"Tiençin\";\"other\"\n\"1792947\";\"Tjan'czin'\";\"other\"\n\"1792947\";\"Tjandzin\";\"other\"\n\"1792947\";\"Tjangino\";\"other\"\n\"1792947\";\"Tjanĝino\";\"other\"\n\"1792947\";\"T’ien-chin\";\"other\"\n\"1792947\";\"T’ien-ching\";\"other\"\n\"1792947\";\"T’ien-ching-shih\";\"other\"\n\"1792947\";\"theiyn cin\";\"other\"\n\"1792947\";\"tian jin\";\"other\"\n\"1792947\";\"tian jin shi\";\"other\"\n\"1792947\";\"tyanjyn\";\"other\"\n\"1792947\";\"tyenjin\";\"other\"\n\"1792947\";\"tyyng'yn\";\"other\"\n\"1792947\";\"Тяндзин\";\"other\"\n\"1792947\";\"Тяньцзинь\";\"other\"\n\"1792947\";\"טיינג'ין\";\"other\"\n\"1792947\";\"تيانجين\";\"other\"\n\"1792947\";\"تيەنجىن شەھىرى\";\"other\"\n\"1792947\";\"เทียนจิน\";\"other\"\n\"1792947\";\"天津\";\"other\"\n\"1792947\";\"天津市\";\"other\"\n\"1792947\";\"톈진\";\"other\"\n\"1792949\";\"Tianjiazhuang\";\"main\"\n\"1792949\";\"Ch'ien-chia-chuang\";\"other\"\n\"1792949\";\"Ch’ien-chia-chuang\";\"other\"\n\"1792949\";\"T'ien-chia-chuang\";\"other\"\n\"1792949\";\"T'ien-chia-p'u\";\"other\"\n\"1792949\";\"Tianjiazhuang Zhen\";\"other\"\n\"1792949\";\"T’ien-chia-chuang\";\"other\"\n\"1792949\";\"T’ien-chia-p’u\";\"other\"\n\"1792949\";\"田家庄\";\"other\"\n\"1792949\";\"田家庄镇\";\"other\"\n\"1792993\";\"Tiandu\";\"main\"\n\"1792993\";\"T'ien-tu\";\"other\"\n\"1792993\";\"T'ien-tu-chen\";\"other\"\n\"1792993\";\"Tiandu Zhen\";\"other\"\n\"1792993\";\"T’ien-tu\";\"other\"\n\"1792993\";\"T’ien-tu-chen\";\"other\"\n\"1792993\";\"天度\";\"other\"\n\"1792993\";\"天度镇\";\"other\"\n\"1792997\";\"Tiandiba\";\"main\"\n\"1792997\";\"Chin-yang\";\"other\"\n\"1792997\";\"Jinyang\";\"other\"\n\"1792997\";\"T'ien-ti-pa\";\"other\"\n\"1792997\";\"Tiantai\";\"other\"\n\"1792997\";\"T’ien-ti-pa\";\"other\"\n\"1792997\";\"tian de ba\";\"other\"\n\"1792997\";\"天地坝\";\"other\"\n\"1792999\";\"Tiandeng\";\"main\"\n\"1792999\";\"Chen-tu\";\"other\"\n\"1792999\";\"T'ien-teng\";\"other\"\n\"1792999\";\"T'ien-teng-chen\";\"other\"\n\"1792999\";\"T'ien-teng-hsiang\";\"other\"\n\"1792999\";\"T’ien-teng\";\"other\"\n\"1792999\";\"T’ien-teng-chen\";\"other\"\n\"1792999\";\"T’ien-teng-hsiang\";\"other\"\n\"1792999\";\"tian deng\";\"other\"\n\"1792999\";\"天等\";\"other\"\n\"1793010\";\"Tianchi\";\"main\"\n\"1793010\";\"Tianchi Xiang\";\"other\"\n\"1793010\";\"天池\";\"other\"\n\"1793010\";\"天池乡\";\"other\"\n\"1793011\";\"Tianchi\";\"main\"\n\"1793011\";\"Le-chih\";\"other\"\n\"1793011\";\"Lechzhi\";\"other\"\n\"1793011\";\"Lezhi\";\"other\"\n\"1793011\";\"Lo-chih\";\"other\"\n\"1793011\";\"Lo-chih-hsien\";\"other\"\n\"1793011\";\"tian chi\";\"other\"\n\"1793011\";\"天池\";\"other\"\n\"1793013\";\"Tiancheng\";\"main\"\n\"1793013\";\"Ch'ung-yang\";\"other\"\n\"1793013\";\"Ch'ung-yang-hsien\";\"other\"\n\"1793013\";\"Chongyang\";\"other\"\n\"1793013\";\"Ch’ung-yang\";\"other\"\n\"1793013\";\"Ch’ung-yang-hsien\";\"other\"\n\"1793013\";\"T'sun-yang\";\"other\"\n\"1793013\";\"Tsungyang\";\"other\"\n\"1793013\";\"Tsungyang-hsien\";\"other\"\n\"1793013\";\"T’sun-yang\";\"other\"\n\"1793013\";\"tian cheng\";\"other\"\n\"1793013\";\"天城\";\"other\"\n\"1793016\";\"Tianbu\";\"main\"\n\"1793016\";\"T'ien-pu\";\"other\"\n\"1793016\";\"T'ien-pu-chen\";\"other\"\n\"1793016\";\"Tianbu Zhen\";\"other\"\n\"1793016\";\"Tianbuzhen\";\"other\"\n\"1793016\";\"T’ien-pu\";\"other\"\n\"1793016\";\"T’ien-pu-chen\";\"other\"\n\"1793016\";\"天补\";\"other\"\n\"1793016\";\"天补镇\";\"other\"\n\"1793017\";\"Tianbu\";\"main\"\n\"1793017\";\"Tianbu Xiang\";\"other\"\n\"1793017\";\"田埠\";\"other\"\n\"1793017\";\"田埠乡\";\"other\"\n\"1793036\";\"Tengzhou\";\"main\"\n\"1793036\";\"T'eng\";\"other\"\n\"1793036\";\"T'eng-hsien\";\"other\"\n\"1793036\";\"Tehnchzhou\";\"other\"\n\"1793036\";\"Tengxian\";\"other\"\n\"1793036\";\"T’eng\";\"other\"\n\"1793036\";\"T’eng-hsien\";\"other\"\n\"1793036\";\"teng zhou\";\"other\"\n\"1793036\";\"Тэнчжоу\";\"other\"\n\"1793036\";\"滕州\";\"other\"\n\"1793048\";\"Tengzhou\";\"main\"\n\"1793048\";\"T'eng\";\"other\"\n\"1793048\";\"T'eng-ch'eng-chen\";\"other\"\n\"1793048\";\"T'eng-hsien\";\"other\"\n\"1793048\";\"Tengcheng\";\"other\"\n\"1793048\";\"Tengxian\";\"other\"\n\"1793048\";\"Tengyun\";\"other\"\n\"1793048\";\"Tengyün\";\"other\"\n\"1793048\";\"T’eng\";\"other\"\n\"1793048\";\"T’eng-ch’eng-chen\";\"other\"\n\"1793048\";\"T’eng-hsien\";\"other\"\n\"1793048\";\"teng zhou\";\"other\"\n\"1793048\";\"藤州\";\"other\"\n\"1793049\";\"Temuli\";\"main\"\n\"1793049\";\"Butuo\";\"other\"\n\"1793049\";\"Pu-t'o\";\"other\"\n\"1793049\";\"Pu-t’o\";\"other\"\n\"1793049\";\"te mu li\";\"other\"\n\"1793049\";\"特木里\";\"other\"\n\"1793064\";\"Tawo\";\"main\"\n\"1793064\";\"Tawo Zhen\";\"other\"\n\"1793064\";\"ta wo\";\"other\"\n\"1793064\";\"ta wo zhen\";\"other\"\n\"1793064\";\"塔卧\";\"other\"\n\"1793064\";\"塔卧镇\";\"other\"\n\"1793089\";\"Taozhuang\";\"main\"\n\"1793089\";\"T'ao-chuang\";\"other\"\n\"1793089\";\"T’ao-chuang\";\"other\"\n\"1793092\";\"Taozhou\";\"main\"\n\"1793092\";\"Guangde\";\"other\"\n\"1793092\";\"Kuang-te\";\"other\"\n\"1793092\";\"Kuang-te-hsien\";\"other\"\n\"1793092\";\"Kwangteh\";\"other\"\n\"1793092\";\"Kwangteh-hsien\";\"other\"\n\"1793092\";\"Kwangtenchow\";\"other\"\n\"1793092\";\"Lang-kuang\";\"other\"\n\"1793092\";\"tao zhou\";\"other\"\n\"1793092\";\"桃州\";\"other\"\n\"1793105\";\"Zhangjiang\";\"main\"\n\"1793105\";\"T'ao-yuan-hsien\";\"other\"\n\"1793105\";\"Taoyuan\";\"other\"\n\"1793105\";\"T’ao-yüan-hsien\";\"other\"\n\"1793105\";\"zhang jiang\";\"other\"\n\"1793105\";\"漳江\";\"other\"\n\"1793118\";\"Shuangqiaotou\";\"main\"\n\"1793118\";\"Chang-she\";\"other\"\n\"1793118\";\"Chang-she-ts'un\";\"other\"\n\"1793118\";\"Chang-she-ts’un\";\"other\"\n\"1793118\";\"T'ao-hsin\";\"other\"\n\"1793118\";\"Taoxin\";\"other\"\n\"1793118\";\"Taoxin Zhen\";\"other\"\n\"1793118\";\"T’ao-hsin\";\"other\"\n\"1793118\";\"shuang qiao tou\";\"other\"\n\"1793118\";\"tao xin zhen\";\"other\"\n\"1793118\";\"双桥头\";\"other\"\n\"1793118\";\"陶辛镇\";\"other\"\n\"1793119\";\"Taoxia\";\"main\"\n\"1793119\";\"T'ao-hsia-chan\";\"other\"\n\"1793119\";\"T'ao-ts'un\";\"other\"\n\"1793119\";\"Taoxia Zhen\";\"other\"\n\"1793119\";\"Taoxiazhan\";\"other\"\n\"1793119\";\"T’ao-hsia-chan\";\"other\"\n\"1793119\";\"T’ao-ts’un\";\"other\"\n\"1793119\";\"tao xia\";\"other\"\n\"1793119\";\"桃下\";\"other\"\n\"1793134\";\"Taosha\";\"main\"\n\"1793134\";\"T'ao-sha-hsu\";\"other\"\n\"1793134\";\"Taosha Zhen\";\"other\"\n\"1793134\";\"T’ao-sha-hsü\";\"other\"\n\"1793134\";\"陶沙\";\"other\"\n\"1793134\";\"陶沙镇\";\"other\"\n\"1793156\";\"Taohuajiang\";\"main\"\n\"1793156\";\"T'ao-chiang\";\"other\"\n\"1793156\";\"T'ao-chiang-chen\";\"other\"\n\"1793156\";\"T'ao-hua-chiang\";\"other\"\n\"1793156\";\"Taojiang\";\"other\"\n\"1793156\";\"T’ao-chiang\";\"other\"\n\"1793156\";\"T’ao-chiang-chen\";\"other\"\n\"1793156\";\"T’ao-hua-chiang\";\"other\"\n\"1793156\";\"tao hua jiang\";\"other\"\n\"1793156\";\"桃花江\";\"other\"\n\"1793165\";\"Taocun\";\"main\"\n\"1793165\";\"T'ao-chia-ts'un\";\"other\"\n\"1793165\";\"Taocun Xiang\";\"other\"\n\"1793165\";\"Taojiacun\";\"other\"\n\"1793165\";\"T’ao-chia-ts’un\";\"other\"\n\"1793165\";\"陶村\";\"other\"\n\"1793165\";\"陶村乡\";\"other\"\n\"1793166\";\"Taochang\";\"main\"\n\"1793166\";\"T'ao-chia-ch'ang\";\"other\"\n\"1793166\";\"Taochang Zhen\";\"other\"\n\"1793166\";\"Taojiachang\";\"other\"\n\"1793166\";\"T’ao-chia-ch’ang\";\"other\"\n\"1793166\";\"tao chang\";\"other\"\n\"1793166\";\"tao chang zhen\";\"other\"\n\"1793166\";\"陶厂\";\"other\"\n\"1793166\";\"陶厂镇\";\"other\"\n\"1793180\";\"Taohong\";\"main\"\n\"1793180\";\"Longhui\";\"other\"\n\"1793180\";\"Lung-hui\";\"other\"\n\"1793180\";\"T'ao-hung-chen\";\"other\"\n\"1793180\";\"Taohuaping\";\"other\"\n\"1793180\";\"Taohwaping\";\"other\"\n\"1793180\";\"T’ao-hung-chen\";\"other\"\n\"1793180\";\"tao hong\";\"other\"\n\"1793180\";\"桃洪\";\"other\"\n\"1793193\";\"Taochuan\";\"main\"\n\"1793193\";\"Taochuan Zhen\";\"other\"\n\"1793193\";\"桃川\";\"other\"\n\"1793193\";\"桃川镇\";\"other\"\n\"1793199\";\"Taocheng\";\"main\"\n\"1793199\";\"Daxin\";\"other\"\n\"1793199\";\"Ta-hsin\";\"other\"\n\"1793199\";\"Yang-li\";\"other\"\n\"1793199\";\"Yang-li-hsien\";\"other\"\n\"1793199\";\"tao cheng\";\"other\"\n\"1793199\";\"桃城\";\"other\"\n\"1793218\";\"Tanxi\";\"main\"\n\"1793218\";\"T'an-ch'i\";\"other\"\n\"1793218\";\"T'an-hsi\";\"other\"\n\"1793218\";\"Tanxi Zhen\";\"other\"\n\"1793218\";\"T’an-ch’i\";\"other\"\n\"1793218\";\"T’an-hsi\";\"other\"\n\"1793218\";\"滩溪\";\"other\"\n\"1793218\";\"滩溪镇\";\"other\"\n\"1793220\";\"Tanxi\";\"main\"\n\"1793220\";\"Tanxi Zhen\";\"other\"\n\"1793220\";\"tan xi\";\"other\"\n\"1793220\";\"潭西\";\"other\"\n\"1793221\";\"Tanwan\";\"main\"\n\"1793226\";\"Tantou\";\"main\"\n\"1793226\";\"T'an-t'ou-shih\";\"other\"\n\"1793226\";\"Tantou Zhen\";\"other\"\n\"1793226\";\"T’an-t’ou-shih\";\"other\"\n\"1793226\";\"tan tou\";\"other\"\n\"1793226\";\"tan tou zhen\";\"other\"\n\"1793226\";\"坦头\";\"other\"\n\"1793226\";\"坦头镇\";\"other\"\n\"1793229\";\"Tantou\";\"main\"\n\"1793229\";\"T'an-t'ou-shih\";\"other\"\n\"1793229\";\"Tantou Xiang\";\"other\"\n\"1793229\";\"T’an-t’ou-shih\";\"other\"\n\"1793229\";\"潭头\";\"other\"\n\"1793229\";\"潭头乡\";\"other\"\n\"1793230\";\"Tantou\";\"main\"\n\"1793236\";\"Tanshi\";\"main\"\n\"1793236\";\"T'an-shih\";\"other\"\n\"1793236\";\"T'an-shih-shih\";\"other\"\n\"1793236\";\"Tanshi Zhen\";\"other\"\n\"1793236\";\"T’an-shih\";\"other\"\n\"1793236\";\"T’an-shih-shih\";\"other\"\n\"1793236\";\"tan shi\";\"other\"\n\"1793236\";\"tan shi zhen\";\"other\"\n\"1793236\";\"坛石\";\"other\"\n\"1793236\";\"坛石镇\";\"other\"\n\"1793238\";\"Tanshang\";\"main\"\n\"1793238\";\"T'an-shang-ts'un\";\"other\"\n\"1793238\";\"Tanshang Zhen\";\"other\"\n\"1793238\";\"T’an-shang-ts’un\";\"other\"\n\"1793238\";\"滩上\";\"other\"\n\"1793238\";\"滩上镇\";\"other\"\n\"1793242\";\"Tanshan\";\"main\"\n\"1793242\";\"Tanshan Xiang\";\"other\"\n\"1793242\";\"炭山\";\"other\"\n\"1793242\";\"炭山乡\";\"other\"\n\"1793286\";\"Tangzhai\";\"main\"\n\"1793286\";\"Chu-tzu-chieh\";\"other\"\n\"1793286\";\"Chü-tzu-chieh\";\"other\"\n\"1793286\";\"Tang-chai\";\"other\"\n\"1793288\";\"Tangzang\";\"main\"\n\"1793288\";\"T'ang-tsang\";\"other\"\n\"1793288\";\"Tangzang Zhen\";\"other\"\n\"1793288\";\"T’ang-tsang\";\"other\"\n\"1793288\";\"唐藏\";\"other\"\n\"1793288\";\"唐藏镇\";\"other\"\n\"1793299\";\"Tangyang\";\"main\"\n\"1793299\";\"T'ang-chia-yang\";\"other\"\n\"1793299\";\"Tangyang Zhen\";\"other\"\n\"1793299\";\"T’ang-chia-yang\";\"other\"\n\"1793299\";\"唐洋\";\"other\"\n\"1793299\";\"唐洋镇\";\"other\"\n\"1793319\";\"Tangwan\";\"main\"\n\"1793319\";\"T'ang-wan-chen\";\"other\"\n\"1793319\";\"Tangwan Zhen\";\"other\"\n\"1793319\";\"T’ang-wan-chen\";\"other\"\n\"1793319\";\"塘湾\";\"other\"\n\"1793319\";\"塘湾镇\";\"other\"\n\"1793328\";\"Tangxia\";\"main\"\n\"1793328\";\"T'ang-t'ou-hsia\";\"other\"\n\"1793328\";\"T'ang-t'ou-hsia-hsu\";\"other\"\n\"1793328\";\"Tangtouxia\";\"other\"\n\"1793328\";\"Tangtowhwa\";\"other\"\n\"1793328\";\"Tangxia Zhen\";\"other\"\n\"1793328\";\"Thon-theu-ha\";\"other\"\n\"1793328\";\"T’ang-t’ou-hsia\";\"other\"\n\"1793328\";\"T’ang-t’ou-hsia-hsü\";\"other\"\n\"1793328\";\"tang sha\";\"other\"\n\"1793328\";\"塘厦\";\"other\"\n\"1793339\";\"Tangtang\";\"main\"\n\"1793339\";\"T'ang-ho-hsu\";\"other\"\n\"1793339\";\"T'ang-tang-hsu\";\"other\"\n\"1793339\";\"Tangtang Zhen\";\"other\"\n\"1793339\";\"T’ang-ho-hsü\";\"other\"\n\"1793339\";\"T’ang-tang-hsü\";\"other\"\n\"1793339\";\"tang tang\";\"other\"\n\"1793339\";\"汤塘\";\"other\"\n\"1793346\";\"Tangshan\";\"main\"\n\"1793346\";\"T'ang-shan-chen\";\"other\"\n\"1793346\";\"T'ang-shan-shih\";\"other\"\n\"1793346\";\"Tanshan'\";\"other\"\n\"1793346\";\"Tongshan\";\"other\"\n\"1793346\";\"T’ang-shan-chen\";\"other\"\n\"1793346\";\"T’ang-shan-shih\";\"other\"\n\"1793346\";\"tang shan\";\"other\"\n\"1793346\";\"tang shan shi\";\"other\"\n\"1793346\";\"Таншань\";\"other\"\n\"1793346\";\"تاڭشەن شەھىرى\";\"other\"\n\"1793346\";\"唐山\";\"other\"\n\"1793346\";\"唐山市\";\"other\"\n\"1793360\";\"Tangpu\";\"main\"\n\"1793360\";\"T'ang-p'u-chen\";\"other\"\n\"1793360\";\"Tangpu Zhen\";\"other\"\n\"1793360\";\"T’ang-p’u-chen\";\"other\"\n\"1793360\";\"tang pu\";\"other\"\n\"1793360\";\"汤浦\";\"other\"\n\"1793360\";\"汤浦镇\";\"other\"\n\"1793364\";\"Tangping\";\"main\"\n\"1793364\";\"Ho-t'ang\";\"other\"\n\"1793364\";\"Ho-t’ang\";\"other\"\n\"1793364\";\"T'ang-p'ing-hsu\";\"other\"\n\"1793364\";\"T’ang-p’ing-hsü\";\"other\"\n\"1793364\";\"塘平\";\"other\"\n\"1793380\";\"Tangkou\";\"main\"\n\"1793382\";\"Tangkeng\";\"main\"\n\"1793382\";\"Feng-shun\";\"other\"\n\"1793382\";\"T'ang-k'eng-chen\";\"other\"\n\"1793382\";\"T'ang-k'eng-hsu\";\"other\"\n\"1793382\";\"Tonghang\";\"other\"\n\"1793382\";\"T’ang-k’eng-chen\";\"other\"\n\"1793382\";\"T’ang-k’eng-hsü\";\"other\"\n\"1793382\";\"tang keng\";\"other\"\n\"1793382\";\"汤坑\";\"other\"\n\"1793384\";\"Tangjie\";\"main\"\n\"1793384\";\"Tangjie Zhen\";\"other\"\n\"1793384\";\"堂街\";\"other\"\n\"1793384\";\"堂街镇\";\"other\"\n\"1793385\";\"Tangjiazhuang\";\"main\"\n\"1793385\";\"T'ang-chia-chuang\";\"other\"\n\"1793385\";\"T'ang-chia-chuang-tzu\";\"other\"\n\"1793385\";\"Tangkiachwang\";\"other\"\n\"1793385\";\"T’ang-chia-chuang\";\"other\"\n\"1793385\";\"T’ang-chia-chuang-tzu\";\"other\"\n\"1793401\";\"Tangjiafang\";\"main\"\n\"1793401\";\"T'ang-chia-fang\";\"other\"\n\"1793401\";\"Tantszyafan\";\"other\"\n\"1793401\";\"T’ang-chia-fang\";\"other\"\n\"1793419\";\"Tanghe\";\"main\"\n\"1793419\";\"Pi-yuan\";\"other\"\n\"1793419\";\"Pi-yüan\";\"other\"\n\"1793419\";\"T'ang-ho\";\"other\"\n\"1793419\";\"T'ang-ho-hsien\";\"other\"\n\"1793419\";\"T’ang-ho\";\"other\"\n\"1793419\";\"T’ang-ho-hsien\";\"other\"\n\"1793424\";\"Tanggu\";\"main\"\n\"1793424\";\"T'ang-ku\";\"other\"\n\"1793424\";\"Tango\";\"other\"\n\"1793424\";\"Tung-ku\";\"other\"\n\"1793424\";\"T’ang-ku\";\"other\"\n\"1793424\";\"Танго\";\"other\"\n\"1793440\";\"Tangdukou\";\"main\"\n\"1793440\";\"Shao-yang-hsien\";\"other\"\n\"1793440\";\"Shaoyang\";\"other\"\n\"1793440\";\"T'ang-tu\";\"other\"\n\"1793440\";\"T'ang-tu-k'ou\";\"other\"\n\"1793440\";\"T'ang-tu-k'ou-chen\";\"other\"\n\"1793440\";\"T’ang-tu\";\"other\"\n\"1793440\";\"T’ang-tu-k’ou\";\"other\"\n\"1793440\";\"T’ang-tu-k’ou-chen\";\"other\"\n\"1793440\";\"tang du kou\";\"other\"\n\"1793440\";\"塘渡口\";\"other\"\n\"1793450\";\"Tangcun\";\"main\"\n\"1793450\";\"T'ang-ts'un\";\"other\"\n\"1793450\";\"Tangcun Zhen\";\"other\"\n\"1793450\";\"T’ang-ts’un\";\"other\"\n\"1793450\";\"Xiangjia\";\"other\"\n\"1793450\";\"tang cun\";\"other\"\n\"1793450\";\"tang cun zhen\";\"other\"\n\"1793450\";\"xiang jia\";\"other\"\n\"1793450\";\"唐村\";\"other\"\n\"1793450\";\"唐村镇\";\"other\"\n\"1793450\";\"项家\";\"other\"\n\"1793457\";\"Tangchijie\";\"main\"\n\"1793457\";\"Tangchi\";\"other\"\n\"1793457\";\"Tangchi Zhen\";\"other\"\n\"1793457\";\"tang chi\";\"other\"\n\"1793457\";\"tang chi jie\";\"other\"\n\"1793457\";\"tang chi zhen\";\"other\"\n\"1793457\";\"汤池\";\"other\"\n\"1793457\";\"汤池街\";\"other\"\n\"1793457\";\"汤池镇\";\"other\"\n\"1793478\";\"Tancheng\";\"main\"\n\"1793478\";\"Haitanchin\";\"other\"\n\"1793478\";\"P'ing-t'an-hsien\";\"other\"\n\"1793478\";\"P'ing-t'an-hsien-ch'eng\";\"other\"\n\"1793478\";\"Pingtan\";\"other\"\n\"1793478\";\"Pingtankieh\";\"other\"\n\"1793478\";\"P’ing-t’an-hsien\";\"other\"\n\"1793478\";\"P’ing-t’an-hsien-ch’eng\";\"other\"\n\"1793478\";\"tan cheng\";\"other\"\n\"1793478\";\"潭城\";\"other\"\n\"1793505\";\"Taizhou\";\"main\"\n\"1793505\";\"T'ai\";\"other\"\n\"1793505\";\"T'ai-chou\";\"other\"\n\"1793505\";\"T'ai-chou-shih\";\"other\"\n\"1793505\";\"T'ai-hsien\";\"other\"\n\"1793505\";\"T'ai-hsien-ch'eng\";\"other\"\n\"1793505\";\"Taichow\";\"other\"\n\"1793505\";\"Taizhou Shi\";\"other\"\n\"1793505\";\"Tajchzhou\";\"other\"\n\"1793505\";\"T’ai\";\"other\"\n\"1793505\";\"T’ai-chou\";\"other\"\n\"1793505\";\"T’ai-chou-shih\";\"other\"\n\"1793505\";\"T’ai-hsien\";\"other\"\n\"1793505\";\"T’ai-hsien-ch’eng\";\"other\"\n\"1793505\";\"tai zhou shi\";\"other\"\n\"1793505\";\"Тайчжоу\";\"other\"\n\"1793505\";\"泰州\";\"other\"\n\"1793505\";\"泰州市\";\"other\"\n\"1793511\";\"Taiyuan\";\"main\"\n\"1793511\";\"T'ai-yuan-shih\";\"other\"\n\"1793511\";\"Taiyuan Shi\";\"other\"\n\"1793511\";\"Taiyuan-fu\";\"other\"\n\"1793511\";\"Taiyüan-fu\";\"other\"\n\"1793511\";\"Tajjuan'\";\"other\"\n\"1793511\";\"T’ai-yüan-shih\";\"other\"\n\"1793511\";\"Yang-ch'u\";\"other\"\n\"1793511\";\"Yang-ch’ü\";\"other\"\n\"1793511\";\"Yangku\";\"other\"\n\"1793511\";\"Yangkü\";\"other\"\n\"1793511\";\"Yanka\";\"other\"\n\"1793511\";\"tai yuan\";\"other\"\n\"1793511\";\"Тайюань\";\"other\"\n\"1793511\";\"太原\";\"other\"\n\"1793513\";\"Taiyu\";\"main\"\n\"1793513\";\"T'ai-yu-chen\";\"other\"\n\"1793513\";\"T’ai-yü-chen\";\"other\"\n\"1793513\";\"tai yu\";\"other\"\n\"1793513\";\"太峪\";\"other\"\n\"1793517\";\"Taiyigong\";\"main\"\n\"1793517\";\"T'ai-i-kung\";\"other\"\n\"1793517\";\"T’ai-i-kung\";\"other\"\n\"1793517\";\"tai yi gong\";\"other\"\n\"1793517\";\"太乙宫\";\"other\"\n\"1793531\";\"Taiyang\";\"main\"\n\"1793531\";\"T'ai-yang-hsu\";\"other\"\n\"1793531\";\"Taiyang Zhen\";\"other\"\n\"1793531\";\"T’ai-yang-hsü\";\"other\"\n\"1793531\";\"太阳\";\"other\"\n\"1793531\";\"太阳镇\";\"other\"\n\"1793533\";\"Taixing\";\"main\"\n\"1793533\";\"T'ai-hsing\";\"other\"\n\"1793533\";\"T'ai-hsing-ch'eng\";\"other\"\n\"1793533\";\"T'ai-hsing-chen\";\"other\"\n\"1793533\";\"T'ai-hsing-hsien\";\"other\"\n\"1793533\";\"Taihing\";\"other\"\n\"1793533\";\"Taixing Shi\";\"other\"\n\"1793533\";\"Taixing Zhen\";\"other\"\n\"1793533\";\"T’ai-hsing\";\"other\"\n\"1793533\";\"T’ai-hsing-chen\";\"other\"\n\"1793533\";\"T’ai-hsing-ch’eng\";\"other\"\n\"1793533\";\"T’ai-hsing-hsien\";\"other\"\n\"1793533\";\"泰兴\";\"other\"\n\"1793533\";\"泰兴市\";\"other\"\n\"1793533\";\"泰兴镇\";\"other\"\n\"1793560\";\"Taipingzhuang\";\"main\"\n\"1793560\";\"T'ai-p'ing-chuang\";\"other\"\n\"1793560\";\"Taipingzhuang Xiang\";\"other\"\n\"1793560\";\"T’ai-p’ing-chuang\";\"other\"\n\"1793560\";\"太平庄\";\"other\"\n\"1793560\";\"太平庄乡\";\"other\"\n\"1793565\";\"Taiping\";\"main\"\n\"1793565\";\"T'ai-p'ing-chen\";\"other\"\n\"1793565\";\"Taiping Xiang\";\"other\"\n\"1793565\";\"Taipingzhen\";\"other\"\n\"1793565\";\"T’ai-p’ing-chen\";\"other\"\n\"1793565\";\"tai ping\";\"other\"\n\"1793565\";\"tai ping xiang\";\"other\"\n\"1793565\";\"太平\";\"other\"\n\"1793565\";\"太平乡\";\"other\"\n\"1793591\";\"Taiping\";\"main\"\n\"1793591\";\"T'ai-p'ing-tu\";\"other\"\n\"1793591\";\"Taipingdu\";\"other\"\n\"1793591\";\"T’ai-p’ing-tu\";\"other\"\n\"1793591\";\"tai ping\";\"other\"\n\"1793591\";\"太平\";\"other\"\n\"1793601\";\"Taiping\";\"main\"\n\"1793601\";\"Taiping Zhen\";\"other\"\n\"1793601\";\"Taipingchang\";\"other\"\n\"1793601\";\"tai ping\";\"other\"\n\"1793601\";\"太平\";\"other\"\n\"1793627\";\"Taiping\";\"main\"\n\"1793627\";\"Chihing\";\"other\"\n\"1793627\";\"Chihinghsien\";\"other\"\n\"1793627\";\"Shih-hsing\";\"other\"\n\"1793627\";\"Shih-hsing-hsien\";\"other\"\n\"1793627\";\"Shih-shing\";\"other\"\n\"1793627\";\"Shixing\";\"other\"\n\"1793627\";\"tai ping\";\"other\"\n\"1793627\";\"太平\";\"other\"\n\"1793631\";\"Taiping\";\"main\"\n\"1793631\";\"Taiping Zhen\";\"other\"\n\"1793631\";\"tai ping\";\"other\"\n\"1793631\";\"太平\";\"other\"\n\"1793650\";\"Taimei\";\"main\"\n\"1793650\";\"Taimei Zhen\";\"other\"\n\"1793650\";\"tai mei\";\"other\"\n\"1793650\";\"泰美\";\"other\"\n\"1793662\";\"Yanglinjie\";\"main\"\n\"1793662\";\"T'ai-huai-chen\";\"other\"\n\"1793662\";\"Taihuai Zhen\";\"other\"\n\"1793662\";\"T’ai-huai-chen\";\"other\"\n\"1793662\";\"台怀镇\";\"other\"\n\"1793662\";\"杨林街\";\"other\"\n\"1793665\";\"Jinxi\";\"main\"\n\"1793665\";\"T'ai-hu-hsien\";\"other\"\n\"1793665\";\"Taihu\";\"other\"\n\"1793665\";\"T’ai-hu-hsien\";\"other\"\n\"1793665\";\"jin xi\";\"other\"\n\"1793665\";\"晋熙\";\"other\"\n\"1793683\";\"Taihe Chengguanzhen\";\"main\"\n\"1793683\";\"T'a-ho\";\"other\"\n\"1793683\";\"T'ai-ho\";\"other\"\n\"1793683\";\"T'ai-ho-hsien\";\"other\"\n\"1793683\";\"Taihe\";\"other\"\n\"1793683\";\"T’a-ho\";\"other\"\n\"1793683\";\"T’ai-ho\";\"other\"\n\"1793683\";\"T’ai-ho-hsien\";\"other\"\n\"1793683\";\"tai he cheng guan zhen\";\"other\"\n\"1793683\";\"太和城关镇\";\"other\"\n\"1793684\";\"Taihe\";\"main\"\n\"1793684\";\"She-hung\";\"other\"\n\"1793684\";\"Shehong\";\"other\"\n\"1793684\";\"T'ai-ho\";\"other\"\n\"1793684\";\"T'ai-ho-ch'ang\";\"other\"\n\"1793684\";\"T'ai-ho-chen\";\"other\"\n\"1793684\";\"Taykhe\";\"other\"\n\"1793684\";\"T’ai-ho\";\"other\"\n\"1793684\";\"T’ai-ho-chen\";\"other\"\n\"1793684\";\"T’ai-ho-ch’ang\";\"other\"\n\"1793684\";\"tai he\";\"other\"\n\"1793684\";\"太和\";\"other\"\n\"1793691\";\"Mingxing\";\"main\"\n\"1793691\";\"T'ai-ku\";\"other\"\n\"1793691\";\"T'ai-ku-hsien\";\"other\"\n\"1793691\";\"Taigu\";\"other\"\n\"1793691\";\"T’ai-ku\";\"other\"\n\"1793691\";\"T’ai-ku-hsien\";\"other\"\n\"1793691\";\"ming xing\";\"other\"\n\"1793691\";\"明星\";\"other\"\n\"1793700\";\"Taicheng\";\"main\"\n\"1793700\";\"Hsin-ning\";\"other\"\n\"1793700\";\"Sunning\";\"other\"\n\"1793700\";\"Sunninghsien\";\"other\"\n\"1793700\";\"Sünninghsien\";\"other\"\n\"1793700\";\"T'ai-ch'eng-chen\";\"other\"\n\"1793700\";\"T'ai-shan-hsien\";\"other\"\n\"1793700\";\"Taishan\";\"other\"\n\"1793700\";\"Taishan Shi\";\"other\"\n\"1793700\";\"Tajshan'\";\"other\"\n\"1793700\";\"Toishan\";\"other\"\n\"1793700\";\"Toyshan\";\"other\"\n\"1793700\";\"T’ai-ch’eng-chen\";\"other\"\n\"1793700\";\"T’ai-shan-hsien\";\"other\"\n\"1793700\";\"Тайшань\";\"other\"\n\"1793700\";\"台城\";\"other\"\n\"1793700\";\"台山市\";\"other\"\n\"1793724\";\"Tai’an\";\"main\"\n\"1793724\";\"Tai'an\";\"ascii\"\n\"1793724\";\"T'ai-an-hsien\";\"other\"\n\"1793724\";\"T'ai-an-shih\";\"other\"\n\"1793724\";\"Taianfu\";\"other\"\n\"1793724\";\"Tajan'\";\"other\"\n\"1793724\";\"T’ai-an-hsien\";\"other\"\n\"1793724\";\"T’ai-an-shih\";\"other\"\n\"1793724\";\"Тайань\";\"other\"\n\"1793738\";\"Tadianjie\";\"main\"\n\"1793738\";\"T'a-tien-chieh\";\"other\"\n\"1793738\";\"Tadian\";\"other\"\n\"1793738\";\"Tadian Zhen\";\"other\"\n\"1793738\";\"T’a-tien-chieh\";\"other\"\n\"1793738\";\"ta dian\";\"other\"\n\"1793738\";\"ta dian jie\";\"other\"\n\"1793738\";\"ta dian zhen\";\"other\"\n\"1793738\";\"塔甸\";\"other\"\n\"1793738\";\"塔甸街\";\"other\"\n\"1793738\";\"塔甸镇\";\"other\"\n\"1793743\";\"Suzhou\";\"main\"\n\"1793743\";\"Su-hsien\";\"other\"\n\"1793743\";\"Suchow\";\"other\"\n\"1793743\";\"Suchzhou\";\"other\"\n\"1793743\";\"Suxian\";\"other\"\n\"1793743\";\"su zhou shi\";\"other\"\n\"1793743\";\"Сучжоу\";\"other\"\n\"1793743\";\"شيۇجۇ شەھىرى\";\"other\"\n\"1793743\";\"宿州市\";\"other\"\n\"1793761\";\"Fuyu\";\"main\"\n\"1793761\";\"Su-sung\";\"other\"\n\"1793761\";\"Su-sung-hsien\";\"other\"\n\"1793761\";\"Susong\";\"other\"\n\"1793761\";\"fu yu\";\"other\"\n\"1793761\";\"孚玉\";\"other\"\n\"1793774\";\"Suozhen\";\"main\"\n\"1793774\";\"Huantai\";\"other\"\n\"1793774\";\"So-chen\";\"other\"\n\"1793774\";\"Suozhencun\";\"other\"\n\"1793777\";\"Suojie\";\"main\"\n\"1793777\";\"So-shih\";\"other\"\n\"1793777\";\"So-shih-chieh\";\"other\"\n\"1793777\";\"Suojie Xiang\";\"other\"\n\"1793777\";\"Suoshi\";\"other\"\n\"1793777\";\"suo jie\";\"other\"\n\"1793777\";\"suo jie xiang\";\"other\"\n\"1793777\";\"所街\";\"other\"\n\"1793777\";\"所街乡\";\"other\"\n\"1793798\";\"Sunzhen\";\"main\"\n\"1793798\";\"Sun-chen\";\"other\"\n\"1793798\";\"Sun-chia-chuang\";\"other\"\n\"1793798\";\"Sun-chuang\";\"other\"\n\"1793798\";\"Sunzhenjie\";\"other\"\n\"1793798\";\"sun zhen\";\"other\"\n\"1793798\";\"孙镇\";\"other\"\n\"1793817\";\"Sunyao\";\"main\"\n\"1793817\";\"Sun-chia-yao\";\"other\"\n\"1793817\";\"Sunjiayao\";\"other\"\n\"1793817\";\"孙家窑\";\"other\"\n\"1793817\";\"孙窑\";\"other\"\n\"1793857\";\"Quguoqiongwa\";\"main\"\n\"1793857\";\"Senduo Xiang\";\"other\"\n\"1793857\";\"Sumdo\";\"other\"\n\"1793857\";\"曲果琼哇\";\"other\"\n\"1793857\";\"森多\";\"other\"\n\"1793857\";\"森多乡\";\"other\"\n\"1793879\";\"Suizhou\";\"main\"\n\"1793879\";\"Sui\";\"other\"\n\"1793879\";\"Sui-hsien\";\"other\"\n\"1793879\";\"Suichow\";\"other\"\n\"1793879\";\"Suixian\";\"other\"\n\"1793889\";\"Suixi\";\"main\"\n\"1793889\";\"Sui-ch'i\";\"other\"\n\"1793889\";\"Sui-ch'i-k'ou\";\"other\"\n\"1793889\";\"Sui-ch'i-shih\";\"other\"\n\"1793889\";\"Sui-chi-chen\";\"other\"\n\"1793889\";\"Sui-ch’i\";\"other\"\n\"1793889\";\"Sui-ch’i-k’ou\";\"other\"\n\"1793889\";\"Sui-ch’i-shih\";\"other\"\n\"1793889\";\"Sui-hsi\";\"other\"\n\"1793889\";\"濉溪\";\"other\"\n\"1793890\";\"Suicheng\";\"main\"\n\"1793890\";\"Lei-pei\";\"other\"\n\"1793890\";\"Sui-ch'i\";\"other\"\n\"1793890\";\"Sui-ch'i-hsien\";\"other\"\n\"1793890\";\"Sui-ch’i\";\"other\"\n\"1793890\";\"Sui-ch’i-hsien\";\"other\"\n\"1793890\";\"Sui-hsi\";\"other\"\n\"1793890\";\"Suikai\";\"other\"\n\"1793890\";\"Suikaihsien\";\"other\"\n\"1793890\";\"Suixi\";\"other\"\n\"1793890\";\"sui cheng\";\"other\"\n\"1793890\";\"遂城\";\"other\"\n\"1793892\";\"Suishan\";\"main\"\n\"1793892\";\"Emei\";\"other\"\n\"1793892\";\"O-mei\";\"other\"\n\"1793892\";\"sui shan\";\"other\"\n\"1793892\";\"绥山\";\"other\"\n\"1793899\";\"Suicheng\";\"main\"\n\"1793899\";\"Sui-ch'eng-chen\";\"other\"\n\"1793899\";\"Sui-ch’eng-chen\";\"other\"\n\"1793899\";\"Sui-ning-ch'eng\";\"other\"\n\"1793899\";\"Sui-ning-ch’eng\";\"other\"\n\"1793899\";\"Sui-ning-hsien\";\"other\"\n\"1793899\";\"Suining\";\"other\"\n\"1793900\";\"Suining\";\"main\"\n\"1793900\";\"Sui-ning-hsien\";\"other\"\n\"1793900\";\"Sujnin\";\"other\"\n\"1793900\";\"Suynin\";\"other\"\n\"1793900\";\"Суйнин\";\"other\"\n\"1793900\";\"遂宁\";\"other\"\n\"1793908\";\"Suicheng\";\"main\"\n\"1793908\";\"Chien-ning\";\"other\"\n\"1793908\";\"Chien-ning-hsien\";\"other\"\n\"1793908\";\"Jianning\";\"other\"\n\"1793908\";\"Jianning Xian\";\"other\"\n\"1793908\";\"Kienning\";\"other\"\n\"1793908\";\"Kienninghsien\";\"other\"\n\"1793908\";\"Suicheng Zhen\";\"other\"\n\"1793908\";\"sui cheng\";\"other\"\n\"1793908\";\"建宁县\";\"other\"\n\"1793908\";\"濉城\";\"other\"\n\"1793908\";\"濉城镇\";\"other\"\n\"1793910\";\"Sui’an\";\"main\"\n\"1793910\";\"Sui'an\";\"ascii\"\n\"1793910\";\"Chang-p'u\";\"other\"\n\"1793910\";\"Chang-p'u-ch'eng\";\"other\"\n\"1793910\";\"Chang-p'u-hsien\";\"other\"\n\"1793910\";\"Chang-p’u\";\"other\"\n\"1793910\";\"Chang-p’u-ch’eng\";\"other\"\n\"1793910\";\"Chang-p’u-hsien\";\"other\"\n\"1793910\";\"Chanpuhs\";\"other\"\n\"1793910\";\"Zhangpu\";\"other\"\n\"1793910\";\"sui an\";\"other\"\n\"1793910\";\"绥安\";\"other\"\n\"1793922\";\"Sucun\";\"main\"\n\"1793922\";\"Su-ts'un\";\"other\"\n\"1793922\";\"Su-ts’un\";\"other\"\n\"1793922\";\"Ts'un\";\"other\"\n\"1793922\";\"Ts’un\";\"other\"\n\"1793922\";\"su cun\";\"other\"\n\"1793922\";\"苏村\";\"other\"\n\"1793928\";\"Suchen\";\"main\"\n\"1793928\";\"Su-ch'en-chuang\";\"other\"\n\"1793928\";\"Su-ch’en-chuang\";\"other\"\n\"1793928\";\"Suchen Zhen\";\"other\"\n\"1793928\";\"苏陈\";\"other\"\n\"1793928\";\"苏陈镇\";\"other\"\n\"1793953\";\"Songyuan\";\"main\"\n\"1793953\";\"Chien-she-chen\";\"other\"\n\"1793953\";\"Songxi\";\"other\"\n\"1793953\";\"Songyuan Zhen\";\"other\"\n\"1793953\";\"Sung-ch'i\";\"other\"\n\"1793953\";\"Sung-ch'i-hsien\";\"other\"\n\"1793953\";\"Sung-cheng\";\"other\"\n\"1793953\";\"Sung-ch’i\";\"other\"\n\"1793953\";\"Sung-ch’i-hsien\";\"other\"\n\"1793953\";\"Sung-hsi\";\"other\"\n\"1793953\";\"Sungki\";\"other\"\n\"1793953\";\"Sungki-hsien\";\"other\"\n\"1793953\";\"song xi\";\"other\"\n\"1793953\";\"song yuan\";\"other\"\n\"1793953\";\"song yuan zhen\";\"other\"\n\"1793953\";\"松源\";\"other\"\n\"1793953\";\"松源镇\";\"other\"\n\"1793953\";\"松溪\";\"other\"\n\"1793961\";\"Songyang\";\"main\"\n\"1793961\";\"Songming\";\"other\"\n\"1793961\";\"Sung-ming\";\"other\"\n\"1793961\";\"Sung-ming-ch'eng\";\"other\"\n\"1793961\";\"Sung-ming-ch’eng\";\"other\"\n\"1793961\";\"Sung-ming-hsien\";\"other\"\n\"1793961\";\"Sung-yang-chen\";\"other\"\n\"1793961\";\"song yang\";\"other\"\n\"1793961\";\"嵩阳\";\"other\"\n\"1793972\";\"Songxi\";\"main\"\n\"1793972\";\"Songxi Zhen\";\"other\"\n\"1793972\";\"Sung-hsi\";\"other\"\n\"1793972\";\"嵩溪\";\"other\"\n\"1793972\";\"嵩溪镇\";\"other\"\n\"1794016\";\"Songkou\";\"main\"\n\"1794016\";\"Songkou Zhen\";\"other\"\n\"1794016\";\"Sung-k'ou\";\"other\"\n\"1794016\";\"Sung-k'ou-p'ing\";\"other\"\n\"1794016\";\"Sung-k'ou-ying\";\"other\"\n\"1794016\";\"Sung-k’ou\";\"other\"\n\"1794016\";\"Sung-k’ou-p’ing\";\"other\"\n\"1794016\";\"Sung-k’ou-ying\";\"other\"\n\"1794016\";\"嵩口\";\"other\"\n\"1794016\";\"嵩口镇\";\"other\"\n\"1794019\";\"Songkan\";\"main\"\n\"1794019\";\"Sung-k'an\";\"other\"\n\"1794019\";\"Sung-k’an\";\"other\"\n\"1794035\";\"Songjiang\";\"main\"\n\"1794035\";\"Sunchiang\";\"other\"\n\"1794035\";\"Sung-chiang\";\"other\"\n\"1794035\";\"Sung-chiang-hsien\";\"other\"\n\"1794035\";\"Sungkiang\";\"other\"\n\"1794035\";\"Sungkiang-hsien\";\"other\"\n\"1794035\";\"Sunkiang\";\"other\"\n\"1794035\";\"Sunkiangfu\";\"other\"\n\"1794044\";\"Songhu\";\"main\"\n\"1794044\";\"Songhu Zhen\";\"other\"\n\"1794044\";\"Sung-hu\";\"other\"\n\"1794044\";\"Sung-hu-chieh\";\"other\"\n\"1794044\";\"松湖\";\"other\"\n\"1794044\";\"松湖镇\";\"other\"\n\"1794059\";\"Songcun\";\"main\"\n\"1794059\";\"Sung-ts'un\";\"other\"\n\"1794059\";\"Sung-ts’un\";\"other\"\n\"1794059\";\"song cun\";\"other\"\n\"1794059\";\"宋村\";\"other\"\n\"1794063\";\"Songbu\";\"main\"\n\"1794063\";\"Songbu Zhen\";\"other\"\n\"1794063\";\"宋埠\";\"other\"\n\"1794063\";\"宋埠镇\";\"other\"\n\"1794064\";\"Shangsongfan\";\"main\"\n\"1794064\";\"Songban\";\"other\"\n\"1794064\";\"Songfan\";\"other\"\n\"1794064\";\"shang song fan\";\"other\"\n\"1794064\";\"song fan\";\"other\"\n\"1794064\";\"上宋畈\";\"other\"\n\"1794064\";\"宋畈\";\"other\"\n\"1794067\";\"Songbai\";\"main\"\n\"1794067\";\"Shen-nung-chia\";\"other\"\n\"1794067\";\"Shennongjia\";\"other\"\n\"1794067\";\"Sung-hsiang-p'ing\";\"other\"\n\"1794067\";\"Sung-hsiang-p’ing\";\"other\"\n\"1794067\";\"song bai\";\"other\"\n\"1794067\";\"松柏\";\"other\"\n\"1794069\";\"Song’ao\";\"main\"\n\"1794069\";\"Song'ao\";\"ascii\"\n\"1794069\";\"Song'ao Zhen\";\"other\"\n\"1794069\";\"Song’ao Zhen\";\"other\"\n\"1794069\";\"Sung-ao\";\"other\"\n\"1794069\";\"Sung-ao-shih\";\"other\"\n\"1794069\";\"song ao\";\"other\"\n\"1794069\";\"song ao zhen\";\"other\"\n\"1794069\";\"松岙\";\"other\"\n\"1794069\";\"松岙镇\";\"other\"\n\"1794087\";\"Sizao\";\"main\"\n\"1794087\";\"Chung-ssu-tsao\";\"other\"\n\"1794087\";\"Hsi-ssu-tsao\";\"other\"\n\"1794087\";\"Sizao Zhen\";\"other\"\n\"1794087\";\"Ssu-tsao\";\"other\"\n\"1794087\";\"四灶\";\"other\"\n\"1794087\";\"四灶镇\";\"other\"\n\"1794103\";\"Siyang\";\"main\"\n\"1794103\";\"Shang-ssu\";\"other\"\n\"1794103\";\"Shang-ssu-hsien\";\"other\"\n\"1794103\";\"Shangsi\";\"other\"\n\"1794103\";\"Shangsze\";\"other\"\n\"1794103\";\"Shangsze-hsien\";\"other\"\n\"1794103\";\"si yang\";\"other\"\n\"1794103\";\"思阳\";\"other\"\n\"1794109\";\"Sicheng\";\"main\"\n\"1794109\";\"Sixian\";\"other\"\n\"1794109\";\"Ssu\";\"other\"\n\"1794109\";\"Ssu-chou\";\"other\"\n\"1794109\";\"Ssu-hsien\";\"other\"\n\"1794109\";\"Suhsien\";\"other\"\n\"1794109\";\"Szechow\";\"other\"\n\"1794109\";\"Szehsien\";\"other\"\n\"1794109\";\"Szu-hsien\";\"other\"\n\"1794109\";\"si cheng\";\"other\"\n\"1794109\";\"泗城\";\"other\"\n\"1794140\";\"Sishui\";\"main\"\n\"1794140\";\"Ssu-shui\";\"other\"\n\"1794140\";\"Ssu-shui-hsien\";\"other\"\n\"1794140\";\"Szeshuihsien\";\"other\"\n\"1794191\";\"Simingshan\";\"main\"\n\"1794191\";\"Simingshan Zhen\";\"other\"\n\"1794191\";\"si ming shan zhen\";\"other\"\n\"1794191\";\"四明山\";\"other\"\n\"1794191\";\"四明山镇\";\"other\"\n\"1794198\";\"Simenqian\";\"main\"\n\"1794198\";\"Ssu-men-ch'ien\";\"other\"\n\"1794198\";\"Ssu-men-ch’ien\";\"other\"\n\"1794204\";\"Simen\";\"main\"\n\"1794204\";\"Simen Zhen\";\"other\"\n\"1794204\";\"Ssu-men\";\"other\"\n\"1794204\";\"Ti-ssu-men\";\"other\"\n\"1794204\";\"Ti-ssu-men-shih\";\"other\"\n\"1794204\";\"泗门\";\"other\"\n\"1794204\";\"泗门镇\";\"other\"\n\"1794206\";\"Simapu\";\"main\"\n\"1794206\";\"Simapu Zhen\";\"other\"\n\"1794206\";\"Ssu-ma-p'u\";\"other\"\n\"1794206\";\"Ssu-ma-p'u-hsu\";\"other\"\n\"1794206\";\"Ssu-ma-p’u\";\"other\"\n\"1794206\";\"Ssu-ma-p’u-hsü\";\"other\"\n\"1794206\";\"si ma pu\";\"other\"\n\"1794206\";\"司马浦\";\"other\"\n\"1794220\";\"Silidian\";\"main\"\n\"1794220\";\"Ssu-li-tien\";\"other\"\n\"1794220\";\"si li dian\";\"other\"\n\"1794220\";\"四里店\";\"other\"\n\"1794231\";\"Sikeshu\";\"main\"\n\"1794231\";\"si ke shu\";\"other\"\n\"1794231\";\"四棵树\";\"other\"\n\"1794247\";\"Sijia\";\"main\"\n\"1794247\";\"Sijia Zhen\";\"other\"\n\"1794247\";\"Sijiaba\";\"other\"\n\"1794247\";\"Ssu-chia\";\"other\"\n\"1794247\";\"Ssu-chia-pa\";\"other\"\n\"1794247\";\"四甲\";\"other\"\n\"1794247\";\"四甲镇\";\"other\"\n\"1794274\";\"Sigaozhuang\";\"main\"\n\"1794274\";\"Ssu-kao-chuang\";\"other\"\n\"1794283\";\"Si’en\";\"main\"\n\"1794283\";\"Si'en\";\"ascii\"\n\"1794283\";\"Huan-chiang\";\"other\"\n\"1794283\";\"Huanjiang\";\"other\"\n\"1794283\";\"Ssu-en\";\"other\"\n\"1794283\";\"Sze-ngen-hsien\";\"other\"\n\"1794283\";\"Szeenhsien\";\"other\"\n\"1794283\";\"Szengen\";\"other\"\n\"1794283\";\"si en\";\"other\"\n\"1794283\";\"思恩\";\"other\"\n\"1794290\";\"Sidu\";\"main\"\n\"1794290\";\"Sidu Zhen\";\"other\"\n\"1794290\";\"Ssu-tu\";\"other\"\n\"1794290\";\"四都\";\"other\"\n\"1794290\";\"四都镇\";\"other\"\n\"1794291\";\"Sidu\";\"main\"\n\"1794291\";\"Sidu Zhen\";\"other\"\n\"1794291\";\"Ssu-tu\";\"other\"\n\"1794291\";\"si dou\";\"other\"\n\"1794291\";\"四都\";\"other\"\n\"1794302\";\"Sicheng\";\"main\"\n\"1794302\";\"Ling-lo\";\"other\"\n\"1794302\";\"Ling-lo-hsien\";\"other\"\n\"1794302\";\"Ling-yun-chen\";\"other\"\n\"1794302\";\"Ling-yun-hsien\";\"other\"\n\"1794302\";\"Ling-yün-chen\";\"other\"\n\"1794302\";\"Ling-yün-hsien\";\"other\"\n\"1794302\";\"Lingyun\";\"other\"\n\"1794302\";\"Ssu-ch'eng\";\"other\"\n\"1794302\";\"Ssu-ch’eng\";\"other\"\n\"1794302\";\"Sze-cheng-fu\";\"other\"\n\"1794302\";\"Sze-chêng-fu\";\"other\"\n\"1794302\";\"Szecheng\";\"other\"\n\"1794302\";\"si cheng\";\"other\"\n\"1794302\";\"泗城\";\"other\"\n\"1794307\";\"Si’an\";\"main\"\n\"1794307\";\"Si'an\";\"ascii\"\n\"1794307\";\"Ch'en-chiu-tien\";\"other\"\n\"1794307\";\"Ch'en-chiu-tien-chen\";\"other\"\n\"1794307\";\"Chiu-tien\";\"other\"\n\"1794307\";\"Chiu-tien-chen\";\"other\"\n\"1794307\";\"Ch’en-chiu-tien\";\"other\"\n\"1794307\";\"Ch’en-chiu-tien-chen\";\"other\"\n\"1794307\";\"Si'an Zhen\";\"other\"\n\"1794307\";\"Si’an Zhen\";\"other\"\n\"1794307\";\"Ssu-an\";\"other\"\n\"1794307\";\"四安\";\"other\"\n\"1794307\";\"四安镇\";\"other\"\n\"1794371\";\"Shuizhai\";\"main\"\n\"1794371\";\"Shui-chai\";\"other\"\n\"1794371\";\"Shui-chai-chen\";\"other\"\n\"1794371\";\"Shui-chai-hsu\";\"other\"\n\"1794371\";\"Shui-chai-hsü\";\"other\"\n\"1794371\";\"Wuhua\";\"other\"\n\"1794371\";\"shui zhai\";\"other\"\n\"1794371\";\"水寨\";\"other\"\n\"1794382\";\"Shuiyang\";\"main\"\n\"1794382\";\"Shui-yang-chen\";\"other\"\n\"1794382\";\"Shuiyang Zhen\";\"other\"\n\"1794382\";\"shui yang\";\"other\"\n\"1794382\";\"shui yang zhen\";\"other\"\n\"1794382\";\"水阳\";\"other\"\n\"1794382\";\"水阳镇\";\"other\"\n\"1794401\";\"Shuitou\";\"main\"\n\"1794401\";\"Shui-t'ou-chen\";\"other\"\n\"1794401\";\"Shui-t’ou-chen\";\"other\"\n\"1794401\";\"shui tou\";\"other\"\n\"1794401\";\"水头\";\"other\"\n\"1794410\";\"Shuitianba\";\"main\"\n\"1794410\";\"Shui-t'ien-pa\";\"other\"\n\"1794410\";\"Shui-t’ien-pa\";\"other\"\n\"1794410\";\"Shuitianba Xiang\";\"other\"\n\"1794410\";\"shui tian ba\";\"other\"\n\"1794410\";\"shui tian ba xiang\";\"other\"\n\"1794410\";\"水田坝\";\"other\"\n\"1794410\";\"水田坝乡\";\"other\"\n\"1794412\";\"Shuidatian\";\"main\"\n\"1794412\";\"Shui-t'ien\";\"other\"\n\"1794412\";\"Shui-t’ien\";\"other\"\n\"1794412\";\"Shuitian\";\"other\"\n\"1794426\";\"Shuiqian\";\"main\"\n\"1794426\";\"Shui-ch'ien\";\"other\"\n\"1794426\";\"Shui-ch’ien\";\"other\"\n\"1794426\";\"Shuiqian Xiang\";\"other\"\n\"1794426\";\"水茜\";\"other\"\n\"1794426\";\"水茜乡\";\"other\"\n\"1794433\";\"Shuinan\";\"main\"\n\"1794433\";\"Shui-nan-shih\";\"other\"\n\"1794433\";\"Shuinan Zhen\";\"other\"\n\"1794433\";\"水南\";\"other\"\n\"1794433\";\"水南镇\";\"other\"\n\"1794434\";\"Shuinanxu\";\"main\"\n\"1794434\";\"Shuinanxu Xiang\";\"other\"\n\"1794434\";\"水南圩\";\"other\"\n\"1794434\";\"水南圩乡\";\"other\"\n\"1794455\";\"Shuikou\";\"main\"\n\"1794455\";\"Shuikou Zhen\";\"other\"\n\"1794455\";\"水口\";\"other\"\n\"1794455\";\"水口镇\";\"other\"\n\"1794459\";\"Shuikou\";\"main\"\n\"1794459\";\"Shiakou\";\"other\"\n\"1794459\";\"Shui-kow\";\"other\"\n\"1794465\";\"Shuikou\";\"main\"\n\"1794465\";\"Shui-k'ou-hsu\";\"other\"\n\"1794465\";\"Shui-k’ou-hsü\";\"other\"\n\"1794465\";\"Shuikou Zhen\";\"other\"\n\"1794465\";\"shui kou\";\"other\"\n\"1794465\";\"水口\";\"other\"\n\"1794479\";\"Laixi\";\"main\"\n\"1794479\";\"Lai-hsi\";\"other\"\n\"1794479\";\"Laixi Shi\";\"other\"\n\"1794479\";\"Shui-chi\";\"other\"\n\"1794479\";\"Shui-kou-t'ou\";\"other\"\n\"1794479\";\"Shui-kou-t’ou\";\"other\"\n\"1794479\";\"Shuiji\";\"other\"\n\"1794479\";\"Shuikowtow\";\"other\"\n\"1794480\";\"Shuiji\";\"main\"\n\"1794480\";\"Shui-chi\";\"other\"\n\"1794480\";\"Shui-chi-hsien\";\"other\"\n\"1794480\";\"Shuiji Zhen\";\"other\"\n\"1794480\";\"Shuiki\";\"other\"\n\"1794480\";\"Shuiki-hsien\";\"other\"\n\"1794480\";\"shui ji zhen\";\"other\"\n\"1794480\";\"水吉\";\"other\"\n\"1794480\";\"水吉镇\";\"other\"\n\"1794481\";\"Shuihu\";\"main\"\n\"1794481\";\"Changfeng\";\"other\"\n\"1794481\";\"Shui-chia-hu\";\"other\"\n\"1794481\";\"Shuijiahu\";\"other\"\n\"1794481\";\"Sui-chia-hu\";\"other\"\n\"1794481\";\"shui hu\";\"other\"\n\"1794481\";\"水湖\";\"other\"\n\"1794486\";\"Shuigou\";\"main\"\n\"1794486\";\"Shui-kou\";\"other\"\n\"1794486\";\"Shuigou Zhen\";\"other\"\n\"1794486\";\"水沟\";\"other\"\n\"1794486\";\"水沟镇\";\"other\"\n\"1794499\";\"Shuidong\";\"main\"\n\"1794499\";\"Shui-tang-shih\";\"other\"\n\"1794499\";\"Shui-tung\";\"other\"\n\"1794499\";\"Shui-tung-chen\";\"other\"\n\"1794499\";\"Sui-tung\";\"other\"\n\"1794499\";\"Tien-pai\";\"other\"\n\"1794499\";\"shui dong\";\"other\"\n\"1794499\";\"水东\";\"other\"\n\"1794506\";\"Shuichun\";\"main\"\n\"1794506\";\"Shuicun\";\"other\"\n\"1794506\";\"shui chun\";\"other\"\n\"1794506\";\"水唇\";\"other\"\n\"1794511\";\"Shuiche\";\"main\"\n\"1794525\";\"Shuibeijie\";\"main\"\n\"1794525\";\"Shui-pei\";\"other\"\n\"1794525\";\"Shuibei\";\"other\"\n\"1794525\";\"Shuibeijie Zhen\";\"other\"\n\"1794525\";\"水北街\";\"other\"\n\"1794525\";\"水北街镇\";\"other\"\n\"1794532\";\"Shuhe\";\"main\"\n\"1794532\";\"Shih-ho-chen\";\"other\"\n\"1794532\";\"Shu-ho-chen\";\"other\"\n\"1794532\";\"Shuhezhen\";\"other\"\n\"1794532\";\"Zhiliang\";\"other\"\n\"1794532\";\"志良\";\"other\"\n\"1794532\";\"竖河\";\"other\"\n\"1794532\";\"竖河镇\";\"other\"\n\"1794545\";\"Shucheng Chengguanzhen\";\"main\"\n\"1794545\";\"Shu-ch'eng-hsien\";\"other\"\n\"1794545\";\"Shu-ch’eng-hsien\";\"other\"\n\"1794545\";\"Shucheng\";\"other\"\n\"1794545\";\"shu cheng cheng guan zhen\";\"other\"\n\"1794545\";\"舒城城关镇\";\"other\"\n\"1794551\";\"Shuangzhao\";\"main\"\n\"1794551\";\"Shuang-chao\";\"other\"\n\"1794551\";\"Shuang-chao-chen\";\"other\"\n\"1794551\";\"Shuang-chao-ling\";\"other\"\n\"1794551\";\"Shuang-chao-p'u\";\"other\"\n\"1794551\";\"Shuang-chao-p’u\";\"other\"\n\"1794551\";\"Shuangzhao Zhen\";\"other\"\n\"1794551\";\"shuang zhao\";\"other\"\n\"1794551\";\"shuang zhao zhen\";\"other\"\n\"1794551\";\"双照\";\"other\"\n\"1794551\";\"双照镇\";\"other\"\n\"1794569\";\"Shuangxi\";\"main\"\n\"1794569\";\"Shuang-hsi\";\"other\"\n\"1794570\";\"Shuangxi\";\"main\"\n\"1794570\";\"Ch'iu-p'ing-nan\";\"other\"\n\"1794570\";\"Ch’iu-p’ing-nan\";\"other\"\n\"1794570\";\"P'ing-nam\";\"other\"\n\"1794570\";\"P’ing-nam\";\"other\"\n\"1794570\";\"Shuang-hsi\";\"other\"\n\"1794570\";\"shuang xi\";\"other\"\n\"1794570\";\"双溪\";\"other\"\n\"1794576\";\"Shuangwang\";\"main\"\n\"1794576\";\"Shuangwang Xiang\";\"other\"\n\"1794576\";\"shuang wang\";\"other\"\n\"1794576\";\"双王\";\"other\"\n\"1794585\";\"Shuangtang\";\"main\"\n\"1794585\";\"Shuangtang Zhen\";\"other\"\n\"1794585\";\"双塘\";\"other\"\n\"1794585\";\"双塘镇\";\"other\"\n\"1794591\";\"Shuangshu\";\"main\"\n\"1794593\";\"Shuangshipu\";\"main\"\n\"1794593\";\"Feng\";\"other\"\n\"1794593\";\"Feng-hsien\";\"other\"\n\"1794593\";\"Fengxian\";\"other\"\n\"1794593\";\"Shuang-shi-chen\";\"other\"\n\"1794593\";\"Shuang-shih-chen\";\"other\"\n\"1794593\";\"Shuang-shih-p'u\";\"other\"\n\"1794593\";\"Shuang-shih-p’u\";\"other\"\n\"1794593\";\"Shuangshipu Zhen\";\"other\"\n\"1794593\";\"Shwangshih-chen\";\"other\"\n\"1794593\";\"凤县\";\"other\"\n\"1794593\";\"双石铺\";\"other\"\n\"1794593\";\"双石铺镇\";\"other\"\n\"1794626\";\"Longbo\";\"main\"\n\"1794626\";\"Longbozhen\";\"other\"\n\"1794626\";\"Shuangpai\";\"other\"\n\"1794626\";\"long po\";\"other\"\n\"1794626\";\"泷泊\";\"other\"\n\"1794627\";\"Shuangnian\";\"main\"\n\"1794627\";\"Shuang-nien\";\"other\"\n\"1794627\";\"Shuang-nien-ts'un\";\"other\"\n\"1794627\";\"Shuang-nien-ts’un\";\"other\"\n\"1794627\";\"Shuangnian Xiang\";\"other\"\n\"1794627\";\"双碾\";\"other\"\n\"1794627\";\"双碾乡\";\"other\"\n\"1794633\";\"Shuangmiao\";\"main\"\n\"1794633\";\"Shuang-miao-chieh\";\"other\"\n\"1794633\";\"shuang miao\";\"other\"\n\"1794633\";\"双庙\";\"other\"\n\"1794653\";\"Dongsheng\";\"main\"\n\"1794653\";\"Shuang-liu-ch'eng-kuan-chen\";\"other\"\n\"1794653\";\"Shuang-liu-ch’eng-kuan-chen\";\"other\"\n\"1794653\";\"Shuang-liu-hsien\";\"other\"\n\"1794653\";\"Shuangliu\";\"other\"\n\"1794653\";\"Shuanlyu\";\"other\"\n\"1794653\";\"Shwangliu\";\"other\"\n\"1794653\";\"Shwangliu-hsien\";\"other\"\n\"1794653\";\"dong sheng\";\"other\"\n\"1794653\";\"东升\";\"other\"\n\"1794685\";\"Shuangjiang\";\"main\"\n\"1794685\";\"Shuang-chiang\";\"other\"\n\"1794685\";\"Shuang-chiang-k'ou\";\"other\"\n\"1794685\";\"Shuang-chiang-k’ou\";\"other\"\n\"1794685\";\"T'ung-tao\";\"other\"\n\"1794685\";\"T'ung-tao-t'ung-tsu-tzu-chih-hsien\";\"other\"\n\"1794685\";\"Tongdao\";\"other\"\n\"1794685\";\"T’ung-tao\";\"other\"\n\"1794685\";\"T’ung-tao-t’ung-tsu-tzu-chih-hsien\";\"other\"\n\"1794685\";\"shuang jiang\";\"other\"\n\"1794685\";\"双江\";\"other\"\n\"1794688\";\"Shuangjiang\";\"main\"\n\"1794688\";\"Eshan\";\"other\"\n\"1794688\";\"Eshan Yizu Zizhixian\";\"other\"\n\"1794688\";\"Hsi-o\";\"other\"\n\"1794688\";\"Ngeshan-hsien\";\"other\"\n\"1794688\";\"O-shan\";\"other\"\n\"1794688\";\"O-shan-hsien\";\"other\"\n\"1794688\";\"O-shan-hsien-i-tsu-tzu-chih-ch'u\";\"other\"\n\"1794688\";\"O-shan-hsien-i-tsu-tzu-chih-ch’ü\";\"other\"\n\"1794688\";\"O-shan-i-tsu-tzu-chih-hsien\";\"other\"\n\"1794688\";\"Shuangjiang Zhen\";\"other\"\n\"1794688\";\"Sihohsien\";\"other\"\n\"1794688\";\"e shan yi zu zi zhi xian\";\"other\"\n\"1794688\";\"shuang jiang\";\"other\"\n\"1794688\";\"shuang jiang zhen\";\"other\"\n\"1794688\";\"双江\";\"other\"\n\"1794688\";\"双江镇\";\"other\"\n\"1794688\";\"峨山彝族自治县\";\"other\"\n\"1794732\";\"Shuangjiang\";\"main\"\n\"1794732\";\"Shuang-lin\";\"other\"\n\"1794732\";\"Shuanggang\";\"other\"\n\"1794757\";\"Shuangdian\";\"main\"\n\"1794757\";\"Shuang-tien\";\"other\"\n\"1794757\";\"Shuang-tien-chen\";\"other\"\n\"1794757\";\"Shuangdian Zhen\";\"other\"\n\"1794757\";\"双甸\";\"other\"\n\"1794757\";\"双甸镇\";\"other\"\n\"1794762\";\"Shuangcheng\";\"main\"\n\"1794762\";\"Che-jung\";\"other\"\n\"1794762\";\"Che-jung-hsien\";\"other\"\n\"1794762\";\"Che-jung-hsien-ch'eng\";\"other\"\n\"1794762\";\"Che-jung-hsien-ch’eng\";\"other\"\n\"1794762\";\"Che-yang\";\"other\"\n\"1794762\";\"Zherong\";\"other\"\n\"1794762\";\"shuang cheng\";\"other\"\n\"1794762\";\"双城\";\"other\"\n\"1794766\";\"Shuangbaiyang\";\"main\"\n\"1794766\";\"Shuang-pai-yang\";\"other\"\n\"1794766\";\"双白杨\";\"other\"\n\"1794779\";\"Zhaoyang\";\"main\"\n\"1794779\";\"Shaoyang\";\"other\"\n\"1794779\";\"Shou-yang-hsien\";\"other\"\n\"1794779\";\"Shouyang\";\"other\"\n\"1794779\";\"Showyang\";\"other\"\n\"1794779\";\"chao yang\";\"other\"\n\"1794779\";\"朝阳\";\"other\"\n\"1794781\";\"Shouchun\";\"main\"\n\"1794781\";\"Shou\";\"other\"\n\"1794781\";\"Shou-hsien\";\"other\"\n\"1794781\";\"Shouxian\";\"other\"\n\"1794781\";\"Shouyang\";\"other\"\n\"1794781\";\"Showchow\";\"other\"\n\"1794781\";\"Showhsien\";\"other\"\n\"1794781\";\"Shuo-hsien\";\"other\"\n\"1794781\";\"shou chun\";\"other\"\n\"1794781\";\"寿春\";\"other\"\n\"1794788\";\"Shoushan\";\"main\"\n\"1794794\";\"Shouguang\";\"main\"\n\"1794794\";\"Chiu-shou-kuang\";\"other\"\n\"1794794\";\"Shou-kuang\";\"other\"\n\"1794794\";\"Shou-kuang-hsien\";\"other\"\n\"1794794\";\"Shouguan\";\"other\"\n\"1794794\";\"Showkwang\";\"other\"\n\"1794794\";\"Шоугуан\";\"other\"\n\"1794806\";\"Shizuishan\";\"main\"\n\"1794806\";\"Shih-tsui\";\"other\"\n\"1794806\";\"Shih-tsui-shan\";\"other\"\n\"1794806\";\"Shih-tsui-shan-shih\";\"other\"\n\"1794806\";\"Shih-tsui-tzu\";\"other\"\n\"1794806\";\"Shitszuyshan'\";\"other\"\n\"1794806\";\"Shitszuyshan’\";\"other\"\n\"1794825\";\"Shizilu\";\"main\"\n\"1794825\";\"Chu-nan\";\"other\"\n\"1794825\";\"Chü-nan\";\"other\"\n\"1794825\";\"Junan\";\"other\"\n\"1794825\";\"Shih-tzu-lu\";\"other\"\n\"1794855\";\"Shizhuang\";\"main\"\n\"1794855\";\"Shih-chuang\";\"other\"\n\"1794855\";\"Shih-chuang-chen\";\"other\"\n\"1794855\";\"Shizhuang Zhen\";\"other\"\n\"1794855\";\"石庄\";\"other\"\n\"1794855\";\"石庄镇\";\"other\"\n\"1794856\";\"Shizhuang\";\"main\"\n\"1794856\";\"Shih-chuang\";\"other\"\n\"1794856\";\"Shih-chuang-chen\";\"other\"\n\"1794856\";\"Shizhuang Zhen\";\"other\"\n\"1794856\";\"石庄\";\"other\"\n\"1794856\";\"石庄镇\";\"other\"\n\"1794865\";\"Shizhen\";\"main\"\n\"1794865\";\"Shih-chen\";\"other\"\n\"1794865\";\"Shih-chen-chieh\";\"other\"\n\"1794865\";\"Shizhen Zhen\";\"other\"\n\"1794865\";\"Shizhenjie\";\"other\"\n\"1794865\";\"石镇\";\"other\"\n\"1794865\";\"石镇镇\";\"other\"\n\"1794902\";\"Shiyan\";\"main\"\n\"1794902\";\"Shih-tien\";\"other\"\n\"1794902\";\"Shih-yen\";\"other\"\n\"1794902\";\"Shih-yen-chen\";\"other\"\n\"1794902\";\"Shiyan Zhen\";\"other\"\n\"1794902\";\"时堰\";\"other\"\n\"1794902\";\"时堰镇\";\"other\"\n\"1794903\";\"Shiyan\";\"main\"\n\"1794903\";\"Shih-yen\";\"other\"\n\"1794903\";\"Shih-yen-chen\";\"other\"\n\"1794903\";\"Shih-yen-shih\";\"other\"\n\"1794903\";\"Shijan'\";\"other\"\n\"1794903\";\"Шиянь\";\"other\"\n\"1794904\";\"Shiyan\";\"main\"\n\"1794904\";\"Shih-yen\";\"other\"\n\"1794904\";\"Shijan\";\"other\"\n\"1794904\";\"Шиян\";\"other\"\n\"1794920\";\"Shijiang\";\"main\"\n\"1794920\";\"Shih-hsia-chiang\";\"other\"\n\"1794920\";\"Shixiajiang\";\"other\"\n\"1794920\";\"Yu-hsia-chiang\";\"other\"\n\"1794923\";\"Shixia\";\"main\"\n\"1794923\";\"Shih-hsia\";\"other\"\n\"1794923\";\"石峡\";\"other\"\n\"1794947\";\"Shiwan\";\"main\"\n\"1794947\";\"Shih-wan\";\"other\"\n\"1794947\";\"石湾\";\"other\"\n\"1794971\";\"Shitanjing\";\"main\"\n\"1794971\";\"Shih-t'an-ching\";\"other\"\n\"1794971\";\"Shih-t’an-ching\";\"other\"\n\"1794981\";\"Shitang\";\"main\"\n\"1794981\";\"Shih-t'ang\";\"other\"\n\"1794981\";\"Shih-t’ang\";\"other\"\n\"1794981\";\"Shitang Zhen\";\"other\"\n\"1794981\";\"shi tang\";\"other\"\n\"1794981\";\"shi tang zhen\";\"other\"\n\"1794981\";\"石塘\";\"other\"\n\"1794981\";\"石塘镇\";\"other\"\n\"1794987\";\"Shitan\";\"main\"\n\"1794987\";\"Shih-t'an\";\"other\"\n\"1794987\";\"Shih-t’an\";\"other\"\n\"1794987\";\"Shitan Zhen\";\"other\"\n\"1794987\";\"shi tan\";\"other\"\n\"1794987\";\"shi tan zhen\";\"other\"\n\"1794987\";\"石潭\";\"other\"\n\"1794987\";\"石潭镇\";\"other\"\n\"1794989\";\"Shitan\";\"main\"\n\"1794989\";\"Shih-t'an\";\"other\"\n\"1794989\";\"Shih-t'an-chieh\";\"other\"\n\"1794989\";\"Shih-t’an\";\"other\"\n\"1794989\";\"Shih-t’an-chieh\";\"other\"\n\"1794989\";\"Shitan Zhen\";\"other\"\n\"1794989\";\"石滩\";\"other\"\n\"1794989\";\"石滩镇\";\"other\"\n\"1794992\";\"Shitan\";\"main\"\n\"1794992\";\"Shitan Zhen\";\"other\"\n\"1794992\";\"shi tan\";\"other\"\n\"1794992\";\"石滩\";\"other\"\n\"1794996\";\"Qili\";\"main\"\n\"1794996\";\"Ch'i-li\";\"other\"\n\"1794996\";\"Ch’i-li\";\"other\"\n\"1794996\";\"Shih-t'ai\";\"other\"\n\"1794996\";\"Shih-t’ai\";\"other\"\n\"1794996\";\"Shitai\";\"other\"\n\"1794996\";\"qi li\";\"other\"\n\"1794996\";\"七里\";\"other\"\n\"1795027\";\"Shiqiu\";\"main\"\n\"1795027\";\"Shiqiu Zhen\";\"other\"\n\"1795027\";\"shi jiu\";\"other\"\n\"1795027\";\"shi jiu zhen\";\"other\"\n\"1795027\";\"石湫\";\"other\"\n\"1795027\";\"石湫镇\";\"other\"\n\"1795039\";\"Shiqiao\";\"main\"\n\"1795039\";\"Shih-ch'iao\";\"other\"\n\"1795039\";\"Shih-ch’iao\";\"other\"\n\"1795039\";\"shi qiao\";\"other\"\n\"1795039\";\"石桥\";\"other\"\n\"1795042\";\"Shiqiao\";\"main\"\n\"1795042\";\"Shih-ch'iao\";\"other\"\n\"1795042\";\"Shih-ch’iao\";\"other\"\n\"1795042\";\"Shiqiao Xiang\";\"other\"\n\"1795042\";\"石桥\";\"other\"\n\"1795042\";\"石桥乡\";\"other\"\n\"1795055\";\"Shiqiao\";\"main\"\n\"1795055\";\"P'an-yu-hsien\";\"other\"\n\"1795055\";\"Panyu\";\"other\"\n\"1795055\";\"P’an-yu-hsien\";\"other\"\n\"1795055\";\"Shekkiu\";\"other\"\n\"1795055\";\"Shih-ch'iao\";\"other\"\n\"1795055\";\"Shih-ch'iao-chen\";\"other\"\n\"1795055\";\"Shih-ch’iao\";\"other\"\n\"1795055\";\"Shih-ch’iao-chen\";\"other\"\n\"1795055\";\"Shikiu\";\"other\"\n\"1795055\";\"市桥\";\"other\"\n\"1795055\";\"番禺\";\"other\"\n\"1795058\";\"Shiqian\";\"main\"\n\"1795058\";\"Shih-ch'ien\";\"other\"\n\"1795058\";\"Shih-ch'ien-hsien\";\"other\"\n\"1795058\";\"Shih-ch’ien\";\"other\"\n\"1795058\";\"Shih-ch’ien-hsien\";\"other\"\n\"1795058\";\"Shihtsien\";\"other\"\n\"1795058\";\"Shihtsien-hsien\";\"other\"\n\"1795060\";\"Shiqi\";\"main\"\n\"1795060\";\"Chung-shan\";\"other\"\n\"1795060\";\"Chung-shan-ku-chih\";\"other\"\n\"1795060\";\"Heungschan\";\"other\"\n\"1795060\";\"Heungshan\";\"other\"\n\"1795060\";\"Hsiang-shan\";\"other\"\n\"1795060\";\"Shekki\";\"other\"\n\"1795060\";\"Shih-ch'i\";\"other\"\n\"1795060\";\"Shih-ch'i-chen\";\"other\"\n\"1795060\";\"Shih-ch’i\";\"other\"\n\"1795060\";\"Shih-ch’i-chen\";\"other\"\n\"1795060\";\"Shiqi Jiedao\";\"other\"\n\"1795060\";\"Shiqizhen\";\"other\"\n\"1795060\";\"Zhongshan\";\"other\"\n\"1795060\";\"石岐\";\"other\"\n\"1795060\";\"石岐街道\";\"other\"\n\"1795074\";\"Yilong\";\"main\"\n\"1795074\";\"Shih-p'ing\";\"other\"\n\"1795074\";\"Shih-p'ing-hsien\";\"other\"\n\"1795074\";\"Shih-p’ing\";\"other\"\n\"1795074\";\"Shih-p’ing-hsien\";\"other\"\n\"1795074\";\"Shihpingchow\";\"other\"\n\"1795074\";\"Shiping\";\"other\"\n\"1795074\";\"yi long\";\"other\"\n\"1795074\";\"异龙\";\"other\"\n\"1795085\";\"Shipaidong\";\"main\"\n\"1795085\";\"Shipai\";\"other\"\n\"1795085\";\"Shipai Zhen\";\"other\"\n\"1795085\";\"shi pai dong\";\"other\"\n\"1795085\";\"shi pai zhen\";\"other\"\n\"1795085\";\"石牌洞\";\"other\"\n\"1795085\";\"石牌镇\";\"other\"\n\"1795095\";\"Shinan\";\"main\"\n\"1795095\";\"Shih-nan\";\"other\"\n\"1795095\";\"shi nan\";\"other\"\n\"1795095\";\"石南\";\"other\"\n\"1795132\";\"Shimen\";\"main\"\n\"1795132\";\"shi men\";\"other\"\n\"1795132\";\"石门\";\"other\"\n\"1795139\";\"Chujiang\";\"main\"\n\"1795139\";\"Shih-men\";\"other\"\n\"1795139\";\"Shih-men-hsien\";\"other\"\n\"1795139\";\"Shimen\";\"other\"\n\"1795139\";\"chu jiang\";\"other\"\n\"1795139\";\"楚江\";\"other\"\n\"1795165\";\"Shima\";\"main\"\n\"1795165\";\"Shih-ma\";\"other\"\n\"1795165\";\"Shih-ma-hsu\";\"other\"\n\"1795165\";\"Shih-ma-hsü\";\"other\"\n\"1795165\";\"Shima Zhen\";\"other\"\n\"1795165\";\"石马\";\"other\"\n\"1795165\";\"石马镇\";\"other\"\n\"1795166\";\"Shima\";\"main\"\n\"1795166\";\"Longhai\";\"other\"\n\"1795166\";\"Lung-hai\";\"other\"\n\"1795166\";\"Shih-ma\";\"other\"\n\"1795166\";\"Shih-ma-chen\";\"other\"\n\"1795166\";\"Шима\";\"other\"\n\"1795172\";\"Lingquan\";\"main\"\n\"1795172\";\"Shih-lou\";\"other\"\n\"1795172\";\"Shih-lou-hsien\";\"other\"\n\"1795172\";\"Shihlowhsien\";\"other\"\n\"1795172\";\"Shilou\";\"other\"\n\"1795172\";\"ling quan\";\"other\"\n\"1795172\";\"灵泉\";\"other\"\n\"1795184\";\"Shilong\";\"main\"\n\"1795184\";\"Shehlung\";\"other\"\n\"1795184\";\"Sheklung\";\"other\"\n\"1795184\";\"Shih-lung\";\"other\"\n\"1795184\";\"Shilong Zhen\";\"other\"\n\"1795184\";\"石龙\";\"other\"\n\"1795186\";\"Shiliyuan\";\"main\"\n\"1795186\";\"Shih-li-yuan\";\"other\"\n\"1795186\";\"Shih-li-yüan\";\"other\"\n\"1795186\";\"Shiliping\";\"other\"\n\"1795186\";\"shi li yuan\";\"other\"\n\"1795186\";\"十里塬\";\"other\"\n\"1795196\";\"Tongchuan\";\"main\"\n\"1795196\";\"Shih-li-p'u\";\"other\"\n\"1795196\";\"Shih-li-p’u\";\"other\"\n\"1795196\";\"Shilipu\";\"other\"\n\"1795196\";\"T'ung-ch'uan\";\"other\"\n\"1795196\";\"T'ung-ch'uan-shih\";\"other\"\n\"1795196\";\"T’ung-ch’uan\";\"other\"\n\"1795196\";\"T’ung-ch’uan-shih\";\"other\"\n\"1795221\";\"Shiliang\";\"main\"\n\"1795221\";\"Shih-liang\";\"other\"\n\"1795221\";\"Shih-liang-shih\";\"other\"\n\"1795221\";\"Shiliang Zhen\";\"other\"\n\"1795221\";\"shi liang\";\"other\"\n\"1795221\";\"shi liang zhen\";\"other\"\n\"1795221\";\"石梁\";\"other\"\n\"1795221\";\"石梁镇\";\"other\"\n\"1795226\";\"Shilaoren\";\"main\"\n\"1795226\";\"Shilaorencun\";\"other\"\n\"1795234\";\"Shikou\";\"main\"\n\"1795234\";\"Shih-k'ou\";\"other\"\n\"1795234\";\"Shih-k’ou\";\"other\"\n\"1795234\";\"Shikou Zhen\";\"other\"\n\"1795234\";\"石口\";\"other\"\n\"1795234\";\"石口镇\";\"other\"\n\"1795261\";\"Shijing\";\"main\"\n\"1795261\";\"Shih-ching\";\"other\"\n\"1795261\";\"Shihtsing\";\"other\"\n\"1795261\";\"shi jing\";\"other\"\n\"1795261\";\"石井\";\"other\"\n\"1795268\";\"Shijiazhuang\";\"main\"\n\"1795268\";\"Shiczjachzhuan\";\"other\"\n\"1795268\";\"Shih-chia-chuang\";\"other\"\n\"1795268\";\"Shijiazhuang Zhen\";\"other\"\n\"1795268\";\"Шицзячжуан\";\"other\"\n\"1795268\";\"石家庄\";\"other\"\n\"1795268\";\"石家庄镇\";\"other\"\n\"1795270\";\"Shijiazhuang\";\"main\"\n\"1795270\";\"Chen-t'ou\";\"other\"\n\"1795270\";\"Chen-t’ou\";\"other\"\n\"1795270\";\"Chentow\";\"other\"\n\"1795270\";\"Shiczjachzhuan\";\"other\"\n\"1795270\";\"Shidzjadzhuan\";\"other\"\n\"1795270\";\"Shih-chia-chuang\";\"other\"\n\"1795270\";\"Shih-chia-chuang-shih\";\"other\"\n\"1795270\";\"Shih-chuang-shih\";\"other\"\n\"1795270\";\"Shih-men\";\"other\"\n\"1795270\";\"Shih-men-shih\";\"other\"\n\"1795270\";\"Shihjiazhuang\";\"other\"\n\"1795270\";\"Shihkiachwan\";\"other\"\n\"1795270\";\"Shihkiachwang\";\"other\"\n\"1795270\";\"Shijiazhuang Shi\";\"other\"\n\"1795270\";\"Shitszyachzhuan\";\"other\"\n\"1795270\";\"Thach Gia Trang\";\"other\"\n\"1795270\";\"Thạch Gia Trang\";\"other\"\n\"1795270\";\"shi jia zhuang\";\"other\"\n\"1795270\";\"shi jia zhuang shi\";\"other\"\n\"1795270\";\"Шидзяджуан\";\"other\"\n\"1795270\";\"Шицзячжуан\";\"other\"\n\"1795270\";\"شىجياجۇاڭ شەھىرى\";\"other\"\n\"1795270\";\"石家庄\";\"other\"\n\"1795270\";\"石家庄市\";\"other\"\n\"1795270\";\"石家荘市\";\"other\"\n\"1795299\";\"Shijiaochang\";\"main\"\n\"1795299\";\"Shih-chiao\";\"other\"\n\"1795299\";\"Shijiao\";\"other\"\n\"1795300\";\"Shijiao\";\"main\"\n\"1795300\";\"Fakang\";\"other\"\n\"1795300\";\"Fatkong\";\"other\"\n\"1795300\";\"Fatkong-hsien\";\"other\"\n\"1795300\";\"Fatkongting\";\"other\"\n\"1795300\";\"Fo-kang\";\"other\"\n\"1795300\";\"Fo-kang-hsien\";\"other\"\n\"1795300\";\"Fogang\";\"other\"\n\"1795300\";\"Fukang\";\"other\"\n\"1795300\";\"Shih-chiao\";\"other\"\n\"1795300\";\"Shih-chiao-chen\";\"other\"\n\"1795300\";\"Shih-chueh\";\"other\"\n\"1795300\";\"shi jiao\";\"other\"\n\"1795300\";\"石角\";\"other\"\n\"1795301\";\"Shijiao\";\"main\"\n\"1795301\";\"Shih-chiao\";\"other\"\n\"1795301\";\"Shih-chiao-hsu\";\"other\"\n\"1795301\";\"Shih-chiao-hsü\";\"other\"\n\"1795301\";\"Shijiao Zhen\";\"other\"\n\"1795301\";\"shi jiao\";\"other\"\n\"1795301\";\"石角\";\"other\"\n\"1795315\";\"Shijia\";\"main\"\n\"1795315\";\"Shih-chia\";\"other\"\n\"1795315\";\"Shih-chia-chen\";\"other\"\n\"1795315\";\"Shijia Zhen\";\"other\"\n\"1795315\";\"shi jia\";\"other\"\n\"1795315\";\"施家\";\"other\"\n\"1795333\";\"Shihuang\";\"main\"\n\"1795333\";\"Shih-huang\";\"other\"\n\"1795333\";\"Shih-huang-shih\";\"other\"\n\"1795333\";\"Shihuang Zhen\";\"other\"\n\"1795333\";\"shi huang\";\"other\"\n\"1795333\";\"shi huang zhen\";\"other\"\n\"1795333\";\"石璜\";\"other\"\n\"1795333\";\"石璜镇\";\"other\"\n\"1795370\";\"Shigou\";\"main\"\n\"1795370\";\"Shih-kou\";\"other\"\n\"1795370\";\"Ssu-kou\";\"other\"\n\"1795370\";\"柿沟\";\"other\"\n\"1795385\";\"Shigang\";\"main\"\n\"1795385\";\"Shigang Zhen\";\"other\"\n\"1795385\";\"Shih-chiang\";\"other\"\n\"1795385\";\"Shih-chiang-chen\";\"other\"\n\"1795385\";\"Shih-kang\";\"other\"\n\"1795385\";\"Shih-kang-chen\";\"other\"\n\"1795385\";\"Shihkiang\";\"other\"\n\"1795385\";\"石港\";\"other\"\n\"1795385\";\"石港镇\";\"other\"\n\"1795389\";\"Shigang\";\"main\"\n\"1795389\";\"Shigang Zhen\";\"other\"\n\"1795389\";\"石岗\";\"other\"\n\"1795389\";\"石岗镇\";\"other\"\n\"1795392\";\"Shifosi\";\"main\"\n\"1795392\";\"Hsin-min-shih\";\"other\"\n\"1795392\";\"Shifosi Zhen\";\"other\"\n\"1795392\";\"Shih-fo-ssu\";\"other\"\n\"1795392\";\"shi fu si\";\"other\"\n\"1795392\";\"shi fu si zhen\";\"other\"\n\"1795392\";\"石佛寺\";\"other\"\n\"1795392\";\"石佛寺镇\";\"other\"\n\"1795401\";\"Shifang\";\"main\"\n\"1795401\";\"石坊\";\"other\"\n\"1795428\";\"Shide\";\"main\"\n\"1795428\";\"Shide Zhen\";\"other\"\n\"1795428\";\"Shih-te\";\"other\"\n\"1795428\";\"Shih-te-chen\";\"other\"\n\"1795428\";\"Shih-te-ts'un\";\"other\"\n\"1795428\";\"Shih-te-ts’un\";\"other\"\n\"1795428\";\"shi de\";\"other\"\n\"1795428\";\"shi de zhen\";\"other\"\n\"1795428\";\"史德\";\"other\"\n\"1795428\";\"史德镇\";\"other\"\n\"1795437\";\"Xincheng\";\"main\"\n\"1795437\";\"Hsiang-fen\";\"other\"\n\"1795437\";\"Hsiang-fen-hsien\";\"other\"\n\"1795437\";\"Shicun\";\"other\"\n\"1795437\";\"Shih-ts'un\";\"other\"\n\"1795437\";\"Shih-ts'un-chen\";\"other\"\n\"1795437\";\"Shih-ts’un\";\"other\"\n\"1795437\";\"Shih-ts’un-chen\";\"other\"\n\"1795437\";\"Xiangfen\";\"other\"\n\"1795437\";\"xin cheng\";\"other\"\n\"1795437\";\"新城\";\"other\"\n\"1795456\";\"Shicheng\";\"main\"\n\"1795456\";\"Chou-ning\";\"other\"\n\"1795456\";\"Chou-ning-hsien\";\"other\"\n\"1795456\";\"Chou-tun\";\"other\"\n\"1795456\";\"Chou-tun-chen\";\"other\"\n\"1795456\";\"Chowtun\";\"other\"\n\"1795456\";\"Shoutun\";\"other\"\n\"1795456\";\"Showtan\";\"other\"\n\"1795456\";\"Zhouning\";\"other\"\n\"1795456\";\"Zhouning Shi\";\"other\"\n\"1795456\";\"shi cheng\";\"other\"\n\"1795456\";\"狮城\";\"other\"\n\"1795466\";\"Shicao\";\"main\"\n\"1795466\";\"Shih-ts'ao\";\"other\"\n\"1795466\";\"Shih-ts’ao\";\"other\"\n\"1795466\";\"shi cao\";\"other\"\n\"1795466\";\"石槽\";\"other\"\n\"1795484\";\"Shibi\";\"main\"\n\"1795484\";\"Shibi Zhen\";\"other\"\n\"1795484\";\"Shih-pi\";\"other\"\n\"1795484\";\"石鼻\";\"other\"\n\"1795484\";\"石鼻镇\";\"other\"\n\"1795493\";\"Shibei\";\"main\"\n\"1795493\";\"Shibei Zhen\";\"other\"\n\"1795493\";\"Shih-p'o-chieh\";\"other\"\n\"1795493\";\"Shih-pei\";\"other\"\n\"1795493\";\"Shih-pei-chieh\";\"other\"\n\"1795493\";\"Shih-p’o-chieh\";\"other\"\n\"1795493\";\"shi po\";\"other\"\n\"1795493\";\"石陂\";\"other\"\n\"1795493\";\"石陂镇\";\"other\"\n\"1795520\";\"Shiba\";\"main\"\n\"1795520\";\"Shiba Zhen\";\"other\"\n\"1795520\";\"Shih-pa\";\"other\"\n\"1795520\";\"Shih-pa-hsu\";\"other\"\n\"1795520\";\"Shih-pa-hsü\";\"other\"\n\"1795520\";\"Shih-po-hsu\";\"other\"\n\"1795520\";\"Shih-po-hsü\";\"other\"\n\"1795520\";\"shi ba\";\"other\"\n\"1795520\";\"石坝\";\"other\"\n\"1795539\";\"Shewan\";\"main\"\n\"1795539\";\"she wan\";\"other\"\n\"1795539\";\"赊湾\";\"other\"\n\"1795555\";\"Shedian\";\"main\"\n\"1795555\";\"She-ch'i\";\"other\"\n\"1795555\";\"She-ch'i-chen\";\"other\"\n\"1795555\";\"She-ch’i\";\"other\"\n\"1795555\";\"She-ch’i-chen\";\"other\"\n\"1795555\";\"Shedian Zhen\";\"other\"\n\"1795555\";\"Shekichen\";\"other\"\n\"1795555\";\"Sheqi\";\"other\"\n\"1795555\";\"she dian\";\"other\"\n\"1795555\";\"赊店\";\"other\"\n\"1795564\";\"Shenzhen\";\"main\"\n\"1795564\";\"Shen-ch'uan\";\"other\"\n\"1795564\";\"Shen-ch'uan-shih\";\"other\"\n\"1795564\";\"Shen-chen\";\"other\"\n\"1795564\";\"Shen-ch’üan\";\"other\"\n\"1795564\";\"Shen-ch’üan-shih\";\"other\"\n\"1795564\";\"Shenzhen Zhen\";\"other\"\n\"1795564\";\"Shenzhenzhen\";\"other\"\n\"1795564\";\"shen quan zhen\";\"other\"\n\"1795564\";\"深甽\";\"other\"\n\"1795564\";\"深甽镇\";\"other\"\n\"1795565\";\"Shenzhen\";\"main\"\n\"1795565\";\"Bao'an\";\"other\"\n\"1795565\";\"Pao-an\";\"other\"\n\"1795565\";\"Pao-an-hsien\";\"other\"\n\"1795565\";\"Sham Chun Hu\";\"other\"\n\"1795565\";\"Shehn'chzhehn'\";\"other\"\n\"1795565\";\"Shen-ch'uan\";\"other\"\n\"1795565\";\"Shen-ch'uan-chen\";\"other\"\n\"1795565\";\"Shen-ch'uan-hsu\";\"other\"\n\"1795565\";\"Shen-ch'üan\";\"other\"\n\"1795565\";\"Shen-ch'üan-chen\";\"other\"\n\"1795565\";\"Shen-ch'üan-hsü\";\"other\"\n\"1795565\";\"Shen-chen\";\"other\"\n\"1795565\";\"Shen-chun\";\"other\"\n\"1795565\";\"Shiem Chun\";\"other\"\n\"1795565\";\"Shumchun\";\"other\"\n\"1795565\";\"Shumchün\";\"other\"\n\"1795565\";\"Tham Quyen\";\"other\"\n\"1795565\";\"Thâm Quyến\";\"other\"\n\"1795565\";\"Tschhimtschun\";\"other\"\n\"1795565\";\"shen zhen shi\";\"other\"\n\"1795565\";\"shensen shi\";\"other\"\n\"1795565\";\"shyntshyn\";\"other\"\n\"1795565\";\"Шэньчжэнь\";\"other\"\n\"1795565\";\"شينتشين\";\"other\"\n\"1795565\";\"شېنجېن شەھىرى\";\"other\"\n\"1795565\";\"深セン市\";\"other\"\n\"1795565\";\"深圳市\";\"other\"\n\"1795579\";\"Shenxian\";\"main\"\n\"1795579\";\"Hsin\";\"other\"\n\"1795579\";\"Hsin-hsien\";\"other\"\n\"1795579\";\"Hsin-hsien-ch'eng\";\"other\"\n\"1795579\";\"Hsin-hsien-ch’eng\";\"other\"\n\"1795579\";\"Shen-hsien\";\"other\"\n\"1795579\";\"Sinhsien\";\"other\"\n\"1795589\";\"Dongshentou\";\"main\"\n\"1795589\";\"Shen-t'ou-chen\";\"other\"\n\"1795589\";\"Shen-t’ou-chen\";\"other\"\n\"1795589\";\"Shentou Zhen\";\"other\"\n\"1795589\";\"Tung-shen-t'ou\";\"other\"\n\"1795589\";\"Tung-shen-t’ou\";\"other\"\n\"1795589\";\"东神头\";\"other\"\n\"1795589\";\"神头镇\";\"other\"\n\"1795593\";\"Shentangbu\";\"main\"\n\"1795593\";\"Shen-t'ang-pao\";\"other\"\n\"1795593\";\"Shen-t’ang-pao\";\"other\"\n\"1795593\";\"Shentangbu Xiang\";\"other\"\n\"1795593\";\"神堂堡\";\"other\"\n\"1795593\";\"神堂堡乡\";\"other\"\n\"1795609\";\"Shenquan\";\"main\"\n\"1795609\";\"Shen-ch'uan\";\"other\"\n\"1795609\";\"Shen-ch'uan-so-ch'eng\";\"other\"\n\"1795609\";\"Shen-ch’üan\";\"other\"\n\"1795609\";\"Shen-ch’üan-so-ch’eng\";\"other\"\n\"1795609\";\"Shenquan Zhen\";\"other\"\n\"1795609\";\"shen quan\";\"other\"\n\"1795609\";\"神泉\";\"other\"\n\"1795618\";\"Shenlun\";\"main\"\n\"1795618\";\"Shen-chia-lun\";\"other\"\n\"1795618\";\"Shenlun Zhen\";\"other\"\n\"1795618\";\"沈埨\";\"other\"\n\"1795618\";\"沈埨镇\";\"other\"\n\"1795620\";\"Shenlin\";\"main\"\n\"1795620\";\"Shenlin Xiang\";\"other\"\n\"1795620\";\"Shenlinpu\";\"other\"\n\"1795620\";\"神林\";\"other\"\n\"1795620\";\"神林乡\";\"other\"\n\"1795620\";\"神林铺\";\"other\"\n\"1795632\";\"Shenjiamen Jiedao\";\"main\"\n\"1795632\";\"P'u-t'o\";\"other\"\n\"1795632\";\"Putuo\";\"other\"\n\"1795632\";\"P’u-t’o\";\"other\"\n\"1795632\";\"San Ka Mun\";\"other\"\n\"1795632\";\"Shen-chia-men\";\"other\"\n\"1795632\";\"Shen-chia-men-chen\";\"other\"\n\"1795632\";\"Shenjiamen\";\"other\"\n\"1795632\";\"Shenjiamenzhen\";\"other\"\n\"1795632\";\"Shenkiamen\";\"other\"\n\"1795632\";\"Sinkeamun\";\"other\"\n\"1795632\";\"沈家门\";\"other\"\n\"1795632\";\"沈家门街道\";\"other\"\n\"1795647\";\"Shengzhou Shi\";\"main\"\n\"1795647\";\"Ch'eng\";\"other\"\n\"1795647\";\"Ch'eng-hsien\";\"other\"\n\"1795647\";\"Ch'eng-hsien-ch'eng\";\"other\"\n\"1795647\";\"Ch’eng\";\"other\"\n\"1795647\";\"Ch’eng-hsien\";\"other\"\n\"1795647\";\"Ch’eng-hsien-ch’eng\";\"other\"\n\"1795647\";\"Sheng-hsien\";\"other\"\n\"1795647\";\"Shengxian\";\"other\"\n\"1795647\";\"Shengzhou\";\"other\"\n\"1795647\";\"嵊州市\";\"other\"\n\"1795661\";\"Shengrenjian\";\"main\"\n\"1795661\";\"Chiu-p'ing-lu\";\"other\"\n\"1795661\";\"Chiu-p’ing-lu\";\"other\"\n\"1795661\";\"Jiupinglu\";\"other\"\n\"1795661\";\"P'ing-lu-hsien\";\"other\"\n\"1795661\";\"Pinglu\";\"other\"\n\"1795661\";\"Pinlu\";\"other\"\n\"1795661\";\"P’ing-lu-hsien\";\"other\"\n\"1795661\";\"Sheng-jen-chien\";\"other\"\n\"1795661\";\"Sheng-jen-chien-chen\";\"other\"\n\"1795661\";\"Sheng-jen-chien-ts'un\";\"other\"\n\"1795661\";\"Sheng-jen-chien-ts’un\";\"other\"\n\"1795661\";\"sheng ren jian\";\"other\"\n\"1795661\";\"圣仁涧\";\"other\"\n\"1795669\";\"Shengmi\";\"main\"\n\"1795669\";\"Hsin-chien\";\"other\"\n\"1795669\";\"Shangmi Zhen\";\"other\"\n\"1795669\";\"Sheng-mi\";\"other\"\n\"1795669\";\"Sheng-mi-chen\";\"other\"\n\"1795669\";\"Sheng-mi-chieh\";\"other\"\n\"1795669\";\"Shengmijie\";\"other\"\n\"1795669\";\"生米\";\"other\"\n\"1795669\";\"生米镇\";\"other\"\n\"1795691\";\"Shengang\";\"main\"\n\"1795691\";\"Shen-chiang\";\"other\"\n\"1795691\";\"Shen-kang\";\"other\"\n\"1795691\";\"Shengang Zhen\";\"other\"\n\"1795691\";\"申港\";\"other\"\n\"1795691\";\"申港镇\";\"other\"\n\"1795693\";\"Shengang\";\"main\"\n\"1795693\";\"Shen-kang\";\"other\"\n\"1795693\";\"Shen-kang-hsu\";\"other\"\n\"1795693\";\"Shen-kang-hsü\";\"other\"\n\"1795693\";\"Shengang Zhen\";\"other\"\n\"1795693\";\"shen gang\";\"other\"\n\"1795693\";\"神岗\";\"other\"\n\"1795696\";\"Shendu\";\"main\"\n\"1795696\";\"Shen-tu\";\"other\"\n\"1795696\";\"Shendu Zhen\";\"other\"\n\"1795696\";\"shen du\";\"other\"\n\"1795696\";\"shen du zhen\";\"other\"\n\"1795696\";\"深渡\";\"other\"\n\"1795696\";\"深渡镇\";\"other\"\n\"1795699\";\"Shencun\";\"main\"\n\"1795699\";\"Shen-chia-chen\";\"other\"\n\"1795699\";\"Shen-ts'un\";\"other\"\n\"1795699\";\"Shen-ts'un-chen\";\"other\"\n\"1795699\";\"Shen-ts'un-p'u\";\"other\"\n\"1795699\";\"Shen-ts’un\";\"other\"\n\"1795699\";\"Shen-ts’un-chen\";\"other\"\n\"1795699\";\"Shen-ts’un-p’u\";\"other\"\n\"1795699\";\"Shencun Zhen\";\"other\"\n\"1795699\";\"chen cun\";\"other\"\n\"1795699\";\"chen cun zhen\";\"other\"\n\"1795699\";\"沈村\";\"other\"\n\"1795699\";\"沈村镇\";\"other\"\n\"1795701\";\"Longquan\";\"main\"\n\"1795701\";\"Longquan Zhen\";\"other\"\n\"1795701\";\"Shen-ch'ih\";\"other\"\n\"1795701\";\"Shen-ch'ih-hsien\";\"other\"\n\"1795701\";\"Shen-ch'ih-hsien-ch'eng\";\"other\"\n\"1795701\";\"Shen-ch’ih\";\"other\"\n\"1795701\";\"Shen-ch’ih-hsien\";\"other\"\n\"1795701\";\"Shen-ch’ih-hsien-ch’eng\";\"other\"\n\"1795701\";\"Shenchi Xian\";\"other\"\n\"1795701\";\"long quan\";\"other\"\n\"1795701\";\"神池县\";\"other\"\n\"1795701\";\"龙泉\";\"other\"\n\"1795701\";\"龙泉镇\";\"other\"\n\"1795717\";\"Shegeng\";\"main\"\n\"1795717\";\"She-keng\";\"other\"\n\"1795717\";\"Shegeng Xiang\";\"other\"\n\"1795717\";\"社赓\";\"other\"\n\"1795717\";\"社赓乡\";\"other\"\n\"1795719\";\"Shefu\";\"main\"\n\"1795719\";\"She-fu-hsu\";\"other\"\n\"1795719\";\"She-fu-hsü\";\"other\"\n\"1795719\";\"Shefu Xiang\";\"other\"\n\"1795719\";\"社富\";\"other\"\n\"1795719\";\"社富乡\";\"other\"\n\"1795727\";\"Shazikou\";\"main\"\n\"1795727\";\"Sha-tzu-k'ou\";\"other\"\n\"1795727\";\"Sha-tzu-k’ou\";\"other\"\n\"1795749\";\"Shayang\";\"main\"\n\"1795749\";\"Sha-yang-chen\";\"other\"\n\"1795749\";\"sha yang\";\"other\"\n\"1795749\";\"沙洋\";\"other\"\n\"1795761\";\"Shaxi\";\"main\"\n\"1795761\";\"Sha-hsi\";\"other\"\n\"1795761\";\"Shaxi Zhen\";\"other\"\n\"1795761\";\"sha xi\";\"other\"\n\"1795761\";\"沙溪\";\"other\"\n\"1795761\";\"沙溪镇\";\"other\"\n\"1795763\";\"Shaxi\";\"main\"\n\"1795763\";\"Sha-hsi\";\"other\"\n\"1795763\";\"Shaxi Zhen\";\"other\"\n\"1795763\";\"沙溪\";\"other\"\n\"1795763\";\"沙溪镇\";\"other\"\n\"1795765\";\"Shaxi\";\"main\"\n\"1795765\";\"Shaxi Xiang\";\"other\"\n\"1795765\";\"沙溪\";\"other\"\n\"1795765\";\"沙溪乡\";\"other\"\n\"1795768\";\"Lingding\";\"main\"\n\"1795768\";\"Shaxi Zhen\";\"other\"\n\"1795768\";\"ling ding\";\"other\"\n\"1795768\";\"sha xi zhen\";\"other\"\n\"1795768\";\"岭顶\";\"other\"\n\"1795768\";\"沙西镇\";\"other\"\n\"1795770\";\"Shawu\";\"main\"\n\"1795770\";\"Shawutang\";\"other\"\n\"1795770\";\"沙芜\";\"other\"\n\"1795776\";\"Shawan\";\"main\"\n\"1795776\";\"Shawan Zhen\";\"other\"\n\"1795776\";\"沙湾\";\"other\"\n\"1795776\";\"沙湾镇\";\"other\"\n\"1795805\";\"Shataping\";\"main\"\n\"1795805\";\"Shataping Xiang\";\"other\"\n\"1795805\";\"sha ta ping xiang\";\"other\"\n\"1795805\";\"沙塔坪\";\"other\"\n\"1795805\";\"沙塔坪乡\";\"other\"\n\"1795807\";\"Shatang\";\"main\"\n\"1795807\";\"Shatangpu\";\"other\"\n\"1795807\";\"沙塘\";\"other\"\n\"1795816\";\"Shashi\";\"main\"\n\"1795816\";\"Sha-shih\";\"other\"\n\"1795816\";\"Sha-shih-shih\";\"other\"\n\"1795816\";\"Shasi\";\"other\"\n\"1795816\";\"Шаши\";\"other\"\n\"1795838\";\"Shaping\";\"main\"\n\"1795838\";\"Ebian\";\"other\"\n\"1795838\";\"O-pien\";\"other\"\n\"1795838\";\"Shapingting\";\"other\"\n\"1795838\";\"sha ping\";\"other\"\n\"1795838\";\"沙坪\";\"other\"\n\"1795842\";\"Shaping\";\"main\"\n\"1795842\";\"Gaohe\";\"other\"\n\"1795842\";\"Hao-shan\";\"other\"\n\"1795842\";\"Kao-hao\";\"other\"\n\"1795842\";\"Kao-ho\";\"other\"\n\"1795842\";\"Sha-p'ing\";\"other\"\n\"1795842\";\"Sha-p'ing-chen\";\"other\"\n\"1795842\";\"Sha-p'ing-hsu\";\"other\"\n\"1795842\";\"Sha-p’ing\";\"other\"\n\"1795842\";\"Sha-p’ing-chen\";\"other\"\n\"1795842\";\"Sha-p’ing-hsü\";\"other\"\n\"1795842\";\"沙坪\";\"other\"\n\"1795855\";\"Shaoxing\";\"main\"\n\"1795855\";\"Shao-hsing\";\"other\"\n\"1795855\";\"Shao-hsing-hsien\";\"other\"\n\"1795855\";\"Shao-hsing-hsien-ch'eng\";\"other\"\n\"1795855\";\"Shao-hsing-hsien-ch’eng\";\"other\"\n\"1795855\";\"Shao-hsing-shih\";\"other\"\n\"1795855\";\"Shaohing\";\"other\"\n\"1795855\";\"Shaohing-hsien\";\"other\"\n\"1795855\";\"Shaohingfu\";\"other\"\n\"1795855\";\"Shaosin\";\"other\"\n\"1795855\";\"saosing\";\"other\"\n\"1795855\";\"shao xing shi\";\"other\"\n\"1795855\";\"soheung\";\"other\"\n\"1795855\";\"Шаосин\";\"other\"\n\"1795855\";\"شاۋشىن شەھىرى\";\"other\"\n\"1795855\";\"紹興市\";\"other\"\n\"1795855\";\"绍兴\";\"other\"\n\"1795855\";\"绍兴市\";\"other\"\n\"1795855\";\"사오싱\";\"other\"\n\"1795855\";\"소흥\";\"other\"\n\"1795857\";\"Shaowu\";\"main\"\n\"1795857\";\"Shao-wu-hsien\";\"other\"\n\"1795857\";\"邵武\";\"other\"\n\"1795874\";\"Shaoguan\";\"main\"\n\"1795874\";\"Ch'u-chiang\";\"other\"\n\"1795874\";\"Ch'u-chiang-hsien\";\"other\"\n\"1795874\";\"Chao-kuan\";\"other\"\n\"1795874\";\"Ch’ü-chiang\";\"other\"\n\"1795874\";\"Ch’ü-chiang-hsien\";\"other\"\n\"1795874\";\"Kakong\";\"other\"\n\"1795874\";\"Kiukianghsien\";\"other\"\n\"1795874\";\"Kukiang\";\"other\"\n\"1795874\";\"Kukong\";\"other\"\n\"1795874\";\"Kukong-hsien\";\"other\"\n\"1795874\";\"Kükiang\";\"other\"\n\"1795874\";\"Kükong\";\"other\"\n\"1795874\";\"Kükong-hsien\";\"other\"\n\"1795874\";\"Shao-chou\";\"other\"\n\"1795874\";\"Shao-kuan\";\"other\"\n\"1795874\";\"Shaoguan'\";\"other\"\n\"1795874\";\"Shaokwan\";\"other\"\n\"1795874\";\"Shiuchow\";\"other\"\n\"1795874\";\"Shiukuan\";\"other\"\n\"1795874\";\"shao guan shi\";\"other\"\n\"1795874\";\"Шаогуань\";\"other\"\n\"1795874\";\"韶关\";\"other\"\n\"1795874\";\"韶关市\";\"other\"\n\"1795908\";\"Shanyang\";\"main\"\n\"1795908\";\"Shan-yang-chen\";\"other\"\n\"1795908\";\"Shanyang Zhen\";\"other\"\n\"1795908\";\"山阳\";\"other\"\n\"1795908\";\"山阳镇\";\"other\"\n\"1795909\";\"Shanyang\";\"main\"\n\"1795919\";\"Shancheng\";\"main\"\n\"1795919\";\"Shan\";\"other\"\n\"1795919\";\"Shan-hsien\";\"other\"\n\"1795919\";\"Shanxian\";\"other\"\n\"1795922\";\"Shanxia\";\"main\"\n\"1795922\";\"Shan-hsia\";\"other\"\n\"1795922\";\"山下\";\"other\"\n\"1795928\";\"Shanwei\";\"main\"\n\"1795928\";\"Shan'vehj\";\"other\"\n\"1795928\";\"Swabue\";\"other\"\n\"1795928\";\"shan wei\";\"other\"\n\"1795928\";\"shan wei shi\";\"other\"\n\"1795928\";\"Шаньвэй\";\"other\"\n\"1795928\";\"汕尾\";\"other\"\n\"1795928\";\"汕尾市\";\"other\"\n\"1795935\";\"Shantoudian\";\"main\"\n\"1795935\";\"Shan-t'ou-tien\";\"other\"\n\"1795935\";\"Shan-t’ou-tien\";\"other\"\n\"1795935\";\"shan tou dian\";\"other\"\n\"1795935\";\"山头店\";\"other\"\n\"1795940\";\"Shantou\";\"main\"\n\"1795940\";\"Shan'tou\";\"other\"\n\"1795940\";\"Shan-t'ou-shih\";\"other\"\n\"1795940\";\"Shan-t’ou-shih\";\"other\"\n\"1795940\";\"Shantow\";\"other\"\n\"1795940\";\"Swatow\";\"other\"\n\"1795940\";\"Sán Đầu\";\"other\"\n\"1795940\";\"cang hwad saw thea\";\"other\"\n\"1795940\";\"shan tou\";\"other\"\n\"1795940\";\"shan tou shi\";\"other\"\n\"1795940\";\"Шаньтоу\";\"other\"\n\"1795940\";\"จังหวัดซัวเถา\";\"other\"\n\"1795940\";\"汕头\";\"other\"\n\"1795940\";\"汕头市\";\"other\"\n\"1795940\";\"汕頭\";\"other\"\n\"1795940\";\"汕頭市\";\"other\"\n\"1795941\";\"Shanting\";\"main\"\n\"1795969\";\"Shanmen\";\"main\"\n\"1796018\";\"Shangzhuang\";\"main\"\n\"1796018\";\"Shang-chuang\";\"other\"\n\"1796018\";\"Shangzhuang Zhen\";\"other\"\n\"1796018\";\"尚庄\";\"other\"\n\"1796018\";\"尚庄镇\";\"other\"\n\"1796049\";\"Shangyi\";\"main\"\n\"1796049\";\"Shangyi Zhen\";\"other\"\n\"1796049\";\"上义\";\"other\"\n\"1796049\";\"上义镇\";\"other\"\n\"1796071\";\"Shangxi\";\"main\"\n\"1796071\";\"Shangxi Xiang\";\"other\"\n\"1796071\";\"上溪\";\"other\"\n\"1796071\";\"上溪乡\";\"other\"\n\"1796090\";\"Shangtian\";\"main\"\n\"1796090\";\"Shang-t'ien-fan\";\"other\"\n\"1796090\";\"Shang-t'ien-fan-shih\";\"other\"\n\"1796090\";\"Shang-t’ien-fan\";\"other\"\n\"1796090\";\"Shang-t’ien-fan-shih\";\"other\"\n\"1796090\";\"Shangtian Zhen\";\"other\"\n\"1796090\";\"Shangtianfang\";\"other\"\n\"1796090\";\"Shangtianzhen\";\"other\"\n\"1796090\";\"尚田\";\"other\"\n\"1796090\";\"尚田镇\";\"other\"\n\"1796095\";\"Shangtang\";\"main\"\n\"1796095\";\"Shangtang Zhen\";\"other\"\n\"1796095\";\"上塘\";\"other\"\n\"1796095\";\"上塘镇\";\"other\"\n\"1796139\";\"Shangpu\";\"main\"\n\"1796139\";\"Shang-p'u-shih\";\"other\"\n\"1796139\";\"Shang-p’u-shih\";\"other\"\n\"1796139\";\"Shangpu Zhen\";\"other\"\n\"1796139\";\"shang pu\";\"other\"\n\"1796139\";\"shang pu zhen\";\"other\"\n\"1796139\";\"上浦\";\"other\"\n\"1796139\";\"上浦镇\";\"other\"\n\"1796149\";\"Shangpai\";\"main\"\n\"1796149\";\"Fei-hsi\";\"other\"\n\"1796149\";\"Feixi\";\"other\"\n\"1796149\";\"Shang-p'ai-chen\";\"other\"\n\"1796149\";\"Shang-p'ai-ho\";\"other\"\n\"1796149\";\"Shang-p'ai-ho-chen\";\"other\"\n\"1796149\";\"Shang-p’ai-chen\";\"other\"\n\"1796149\";\"Shang-p’ai-ho\";\"other\"\n\"1796149\";\"Shang-p’ai-ho-chen\";\"other\"\n\"1796149\";\"Shangpaihe\";\"other\"\n\"1796149\";\"shang pai\";\"other\"\n\"1796149\";\"上派\";\"other\"\n\"1796188\";\"Shangjiuwu\";\"main\"\n\"1796188\";\"Shang-chiu-wu\";\"other\"\n\"1796188\";\"Shangjiuwu Zhen\";\"other\"\n\"1796188\";\"shang jiu wu\";\"other\"\n\"1796188\";\"shang jiu wu zhen\";\"other\"\n\"1796188\";\"商酒务\";\"other\"\n\"1796188\";\"商酒务镇\";\"other\"\n\"1796195\";\"Shangjie\";\"main\"\n\"1796195\";\"Hsia-chieh-hsiang\";\"other\"\n\"1796195\";\"Shang-chieh\";\"other\"\n\"1796195\";\"Shang-chieh-chen\";\"other\"\n\"1796195\";\"Yang-p'i\";\"other\"\n\"1796195\";\"Yang-p'i-hsien\";\"other\"\n\"1796195\";\"Yang-p’i\";\"other\"\n\"1796195\";\"Yang-p’i-hsien\";\"other\"\n\"1796195\";\"Yangbi\";\"other\"\n\"1796195\";\"shang jie\";\"other\"\n\"1796195\";\"上街\";\"other\"\n\"1796214\";\"Shanghu\";\"main\"\n\"1796214\";\"Shang-hu-shih\";\"other\"\n\"1796214\";\"Shanghu Zhen\";\"other\"\n\"1796214\";\"shang hu\";\"other\"\n\"1796214\";\"尚湖\";\"other\"\n\"1796214\";\"尚湖镇\";\"other\"\n\"1796220\";\"Shanghexi\";\"main\"\n\"1796220\";\"Shang-ho-ch'i\";\"other\"\n\"1796220\";\"Shang-ho-ch’i\";\"other\"\n\"1796220\";\"Shanghexi Xiang\";\"other\"\n\"1796220\";\"shang he xi\";\"other\"\n\"1796220\";\"shang he xi xiang\";\"other\"\n\"1796220\";\"上河溪\";\"other\"\n\"1796220\";\"上河溪乡\";\"other\"\n\"1796228\";\"Linjiang\";\"main\"\n\"1796228\";\"Shang-hang-hsien\";\"other\"\n\"1796228\";\"Shanghang\";\"other\"\n\"1796228\";\"lin jiang\";\"other\"\n\"1796228\";\"临江\";\"other\"\n\"1796236\";\"Shanghai\";\"main\"\n\"1796236\";\"San'nkae\";\"other\"\n\"1796236\";\"Sanchajus\";\"other\"\n\"1796236\";\"Sangaj\";\"other\"\n\"1796236\";\"Sangay\";\"other\"\n\"1796236\";\"Sanghaj\";\"other\"\n\"1796236\";\"Sanghay\";\"other\"\n\"1796236\";\"Sanhaja\";\"other\"\n\"1796236\";\"Sanhajo\";\"other\"\n\"1796236\";\"Sanxay\";\"other\"\n\"1796236\";\"Schanghai\";\"other\"\n\"1796236\";\"Shang-hai\";\"other\"\n\"1796236\";\"Shang-hai-shih\";\"other\"\n\"1796236\";\"Shangai\";\"other\"\n\"1796236\";\"Shangaj\";\"other\"\n\"1796236\";\"Shanghai - shang hai\";\"other\"\n\"1796236\";\"Shanghai - 上海\";\"other\"\n\"1796236\";\"Shankhaj\";\"other\"\n\"1796236\";\"Sjanghae\";\"other\"\n\"1796236\";\"Sjanghai\";\"other\"\n\"1796236\";\"Sjanghæ\";\"other\"\n\"1796236\";\"Szanghaj\";\"other\"\n\"1796236\";\"Thuong Hai\";\"other\"\n\"1796236\";\"Thượng Hải\";\"other\"\n\"1796236\";\"Xangai\";\"other\"\n\"1796236\";\"cankay\";\"other\"\n\"1796236\";\"sanghai\";\"other\"\n\"1796236\";\"seiynghi\";\"other\"\n\"1796236\";\"shang hai\";\"other\"\n\"1796236\";\"shang hai shi\";\"other\"\n\"1796236\";\"shanghay\";\"other\"\n\"1796236\";\"shanghhay\";\"other\"\n\"1796236\";\"shanhai\";\"other\"\n\"1796236\";\"zhong guo shang hai\";\"other\"\n\"1796236\";\"Ŝanhajo\";\"other\"\n\"1796236\";\"Şangay\";\"other\"\n\"1796236\";\"Şanghay\";\"other\"\n\"1796236\";\"Şanxay\";\"other\"\n\"1796236\";\"Šanchajus\";\"other\"\n\"1796236\";\"Šangaj\";\"other\"\n\"1796236\";\"Šanghaj\";\"other\"\n\"1796236\";\"Šanhaja\";\"other\"\n\"1796236\";\"Σανγκάη\";\"other\"\n\"1796236\";\"Шангај\";\"other\"\n\"1796236\";\"Шанхай\";\"other\"\n\"1796236\";\"שאנגחאי\";\"other\"\n\"1796236\";\"شانغهاي\";\"other\"\n\"1796236\";\"شانگهای\";\"other\"\n\"1796236\";\"شاڭخەي\";\"other\"\n\"1796236\";\"شاڭخەي شەھىرى\";\"other\"\n\"1796236\";\"சாங்காய்\";\"other\"\n\"1796236\";\"เซี่ยงไฮ้\";\"other\"\n\"1796236\";\"შანჰაი\";\"other\"\n\"1796236\";\"上海\";\"other\"\n\"1796236\";\"上海市\";\"other\"\n\"1796236\";\"中国上海\";\"other\"\n\"1796236\";\"상하이\";\"other\"\n\"1796247\";\"Shanggu\";\"main\"\n\"1796247\";\"Shang-ku\";\"other\"\n\"1796247\";\"Shanggu Xiang\";\"other\"\n\"1796247\";\"上固\";\"other\"\n\"1796247\";\"上固乡\";\"other\"\n\"1796264\";\"Shangfang\";\"main\"\n\"1796264\";\"Shang-fang-chen\";\"other\"\n\"1796264\";\"shang fang\";\"other\"\n\"1796264\";\"上方\";\"other\"\n\"1796281\";\"Shangdian\";\"main\"\n\"1796281\";\"Shang-chuang\";\"other\"\n\"1796281\";\"Shang-tien\";\"other\"\n\"1796281\";\"Shangdian Zhen\";\"other\"\n\"1796281\";\"shang dian\";\"other\"\n\"1796281\";\"尚店\";\"other\"\n\"1796283\";\"Shangde\";\"main\"\n\"1796283\";\"尚德\";\"other\"\n\"1796300\";\"Shangcang\";\"main\"\n\"1796300\";\"Shang-ts'ang\";\"other\"\n\"1796300\";\"Shang-ts'ang-chen\";\"other\"\n\"1796300\";\"Shang-ts’ang\";\"other\"\n\"1796300\";\"Shang-ts’ang-chen\";\"other\"\n\"1796339\";\"Shancheng\";\"main\"\n\"1796339\";\"Shancheng Xiang\";\"other\"\n\"1796339\";\"Xianchengbu\";\"other\"\n\"1796339\";\"山城\";\"other\"\n\"1796339\";\"山城乡\";\"other\"\n\"1796340\";\"Shancheng\";\"main\"\n\"1796340\";\"T'ai-ning-hsien\";\"other\"\n\"1796340\";\"Taining\";\"other\"\n\"1796340\";\"T’ai-ning-hsien\";\"other\"\n\"1796340\";\"shan cheng\";\"other\"\n\"1796340\";\"杉城\";\"other\"\n\"1796341\";\"Shancheng\";\"main\"\n\"1796341\";\"Nan-ching\";\"other\"\n\"1796341\";\"Nan-ching-ch'eng\";\"other\"\n\"1796341\";\"Nan-ching-ch’eng\";\"other\"\n\"1796341\";\"Nan-ching-hsien\";\"other\"\n\"1796341\";\"Nanjing\";\"other\"\n\"1796341\";\"Shan-ch'eng-chen\";\"other\"\n\"1796341\";\"Shan-ch’eng-chen\";\"other\"\n\"1796341\";\"shan cheng\";\"other\"\n\"1796341\";\"山城\";\"other\"\n\"1796356\";\"Shaliuhe\";\"main\"\n\"1796356\";\"Gangca\";\"other\"\n\"1796356\";\"Kang-ch'a\";\"other\"\n\"1796356\";\"Kang-ch’a\";\"other\"\n\"1796356\";\"Sha-liu-ho\";\"other\"\n\"1796356\";\"沙柳河\";\"other\"\n\"1796357\";\"Shaliu\";\"main\"\n\"1796357\";\"Sha-liu-chen\";\"other\"\n\"1796357\";\"Shaliu Zhen\";\"other\"\n\"1796357\";\"Shaliuzhen\";\"other\"\n\"1796357\";\"sha liu\";\"other\"\n\"1796357\";\"sha liu zhen\";\"other\"\n\"1796357\";\"沙柳\";\"other\"\n\"1796357\";\"沙柳镇\";\"other\"\n\"1796367\";\"Shangshaleng\";\"main\"\n\"1796367\";\"Sha-leng-ho\";\"other\"\n\"1796367\";\"Shalenghe Xiang\";\"other\"\n\"1796367\";\"Shang-sha-leng-ho\";\"other\"\n\"1796367\";\"上沙塄\";\"other\"\n\"1796367\";\"沙塄河乡\";\"other\"\n\"1796375\";\"Shajing\";\"main\"\n\"1796375\";\"Sha-ching\";\"other\"\n\"1796375\";\"Shajing Zhen\";\"other\"\n\"1796375\";\"sha jing\";\"other\"\n\"1796375\";\"沙迳\";\"other\"\n\"1796379\";\"Shajiang\";\"main\"\n\"1796379\";\"Sha-chiang\";\"other\"\n\"1796411\";\"Shahedian\";\"main\"\n\"1796411\";\"Sha-ho-tien\";\"other\"\n\"1796411\";\"Shahedian Zhen\";\"other\"\n\"1796411\";\"sha he dian\";\"other\"\n\"1796411\";\"沙河店\";\"other\"\n\"1796417\";\"Shahe\";\"main\"\n\"1796417\";\"Fan-chih\";\"other\"\n\"1796417\";\"Fan-chih-hsien\";\"other\"\n\"1796417\";\"Sha-ho\";\"other\"\n\"1796417\";\"Sha-ho-chen\";\"other\"\n\"1796417\";\"Shahe Zhen\";\"other\"\n\"1796417\";\"砂河\";\"other\"\n\"1796417\";\"砂河镇\";\"other\"\n\"1796421\";\"Shahecheng\";\"main\"\n\"1796421\";\"Sha-ho\";\"other\"\n\"1796421\";\"Sha-ho-ch'eng-kuan\";\"other\"\n\"1796421\";\"Sha-ho-ch’eng-kuan\";\"other\"\n\"1796421\";\"Sha-ho-hsien\";\"other\"\n\"1796421\";\"Shahe\";\"other\"\n\"1796421\";\"Shahhsien\";\"other\"\n\"1796421\";\"Shakhe\";\"other\"\n\"1796440\";\"Guorenduo\";\"main\"\n\"1796440\";\"Shagou Xiang\";\"other\"\n\"1796440\";\"沙沟乡\";\"other\"\n\"1796440\";\"郭仁多\";\"other\"\n\"1796461\";\"Shadaogou\";\"main\"\n\"1796461\";\"Sah-tao-kou\";\"other\"\n\"1796461\";\"Shadaogou Zhen\";\"other\"\n\"1796461\";\"sha dao gou\";\"other\"\n\"1796461\";\"sha dao gou zhen\";\"other\"\n\"1796461\";\"沙道沟\";\"other\"\n\"1796461\";\"沙道沟镇\";\"other\"\n\"1796463\";\"Shacun\";\"main\"\n\"1796463\";\"Sha-ts'un\";\"other\"\n\"1796463\";\"Sha-ts'un-hsu\";\"other\"\n\"1796463\";\"Sha-ts’un\";\"other\"\n\"1796463\";\"Sha-ts’un-hsü\";\"other\"\n\"1796479\";\"Shaba\";\"main\"\n\"1796479\";\"Shaba Zhen\";\"other\"\n\"1796479\";\"sha ba\";\"other\"\n\"1796479\";\"sha ba zhen\";\"other\"\n\"1796479\";\"砂坝\";\"other\"\n\"1796479\";\"砂坝镇\";\"other\"\n\"1796493\";\"Seke\";\"main\"\n\"1796493\";\"Se-ta\";\"other\"\n\"1796493\";\"Serkog\";\"other\"\n\"1796493\";\"Sêrkog\";\"other\"\n\"1796493\";\"se ke\";\"other\"\n\"1796493\";\"色柯\";\"other\"\n\"1796514\";\"Sanzhang\";\"main\"\n\"1796514\";\"San-chang\";\"other\"\n\"1796514\";\"San-chang-ts'un\";\"other\"\n\"1796514\";\"San-chang-ts’un\";\"other\"\n\"1796514\";\"Sanzhang Zhen\";\"other\"\n\"1796514\";\"san zhang\";\"other\"\n\"1796514\";\"三张\";\"other\"\n\"1796516\";\"Sanzao\";\"main\"\n\"1796516\";\"San-tsao\";\"other\"\n\"1796516\";\"Ssu-tsao\";\"other\"\n\"1796527\";\"Sanyuan Chengguanzhen\";\"main\"\n\"1796527\";\"Chengguan Zhen\";\"other\"\n\"1796527\";\"San-yuan-hsien\";\"other\"\n\"1796527\";\"San-yüan-hsien\";\"other\"\n\"1796527\";\"cheng guan zhen\";\"other\"\n\"1796527\";\"三原城关镇\";\"other\"\n\"1796527\";\"城关镇\";\"other\"\n\"1796533\";\"Sanying\";\"main\"\n\"1796533\";\"Sanying Zhen\";\"other\"\n\"1796533\";\"三营\";\"other\"\n\"1796533\";\"三营镇\";\"other\"\n\"1796548\";\"Sanyang\";\"main\"\n\"1796548\";\"San-yang-chen\";\"other\"\n\"1796548\";\"Sanyang Zhen\";\"other\"\n\"1796548\";\"Sanyangzhen\";\"other\"\n\"1796548\";\"三阳\";\"other\"\n\"1796548\";\"三阳镇\";\"other\"\n\"1796556\";\"Sanya\";\"main\"\n\"1796556\";\"Sama\";\"other\"\n\"1796556\";\"Samah\";\"other\"\n\"1796556\";\"San'ja\";\"other\"\n\"1796556\";\"San-ah\";\"other\"\n\"1796556\";\"San-ya-chen\";\"other\"\n\"1796556\";\"San-ya-chiang\";\"other\"\n\"1796556\";\"San-ya-chiang-shih\";\"other\"\n\"1796556\";\"Ya Xian\";\"other\"\n\"1796556\";\"Ya-hsien\";\"other\"\n\"1796556\";\"Yai-hsien\";\"other\"\n\"1796556\";\"Yehsien\";\"other\"\n\"1796556\";\"san ya\";\"other\"\n\"1796556\";\"Санья\";\"other\"\n\"1796556\";\"三亚\";\"other\"\n\"1796558\";\"Sanxing\";\"main\"\n\"1796558\";\"San-hsing-chen\";\"other\"\n\"1796558\";\"Sanxing Zhen\";\"other\"\n\"1796558\";\"Sanxingzhen\";\"other\"\n\"1796558\";\"三星\";\"other\"\n\"1796558\";\"三星镇\";\"other\"\n\"1796590\";\"Santang\";\"main\"\n\"1796590\";\"San-t'ang-shih\";\"other\"\n\"1796590\";\"San-t’ang-shih\";\"other\"\n\"1796590\";\"Santang Xiang\";\"other\"\n\"1796590\";\"三塘\";\"other\"\n\"1796590\";\"三塘乡\";\"other\"\n\"1796617\";\"Sanshilipu\";\"main\"\n\"1796617\";\"Sanshilipu Zhen\";\"other\"\n\"1796617\";\"Shilipu\";\"other\"\n\"1796617\";\"三十里铺\";\"other\"\n\"1796617\";\"三十里铺镇\";\"other\"\n\"1796637\";\"Sanshan\";\"main\"\n\"1796637\";\"San-shan-chieh\";\"other\"\n\"1796637\";\"Sanshan Qu\";\"other\"\n\"1796637\";\"san shan\";\"other\"\n\"1796637\";\"san shan qu\";\"other\"\n\"1796637\";\"三山\";\"other\"\n\"1796637\";\"三山区\";\"other\"\n\"1796641\";\"Sanrao\";\"main\"\n\"1796641\";\"Chiu-jao-p'ing\";\"other\"\n\"1796641\";\"Chiu-jao-p’ing\";\"other\"\n\"1796641\";\"Jao-p'ing\";\"other\"\n\"1796641\";\"Jao-p'ing-hsien\";\"other\"\n\"1796641\";\"Jao-p’ing\";\"other\"\n\"1796641\";\"Jao-p’ing-hsien\";\"other\"\n\"1796641\";\"San-jao\";\"other\"\n\"1796641\";\"Sanrao Zhen\";\"other\"\n\"1796641\";\"san rao\";\"other\"\n\"1796641\";\"三饶\";\"other\"\n\"1796647\";\"Sanqiao\";\"main\"\n\"1796647\";\"San-ch'iao\";\"other\"\n\"1796647\";\"San-ch'iao-chen\";\"other\"\n\"1796647\";\"San-ch’iao\";\"other\"\n\"1796647\";\"San-ch’iao-chen\";\"other\"\n\"1796647\";\"Sanqiao Jieban\";\"other\"\n\"1796647\";\"san qiao\";\"other\"\n\"1796647\";\"san qiao jie ban\";\"other\"\n\"1796647\";\"三桥\";\"other\"\n\"1796647\";\"三桥街办\";\"other\"\n\"1796663\";\"Sanming\";\"main\"\n\"1796663\";\"San'min\";\"other\"\n\"1796663\";\"San-ming-hsien\";\"other\"\n\"1796663\";\"San-ming-shih\";\"other\"\n\"1796663\";\"San-yuan\";\"other\"\n\"1796663\";\"San-yuan-hsien\";\"other\"\n\"1796663\";\"San-yüan\";\"other\"\n\"1796663\";\"San-yüan-hsien\";\"other\"\n\"1796663\";\"san ming shi\";\"other\"\n\"1796663\";\"Саньмин\";\"other\"\n\"1796663\";\"سەنمىڭ شەھىرى\";\"other\"\n\"1796663\";\"三明\";\"other\"\n\"1796663\";\"三明市\";\"other\"\n\"1796664\";\"Sanmiaoqian\";\"main\"\n\"1796664\";\"San-miao-ch'ien\";\"other\"\n\"1796664\";\"San-miao-ch’ien\";\"other\"\n\"1796664\";\"Sanmiaoqian Xiang\";\"other\"\n\"1796664\";\"Sanmiaoqiao\";\"other\"\n\"1796664\";\"三庙前\";\"other\"\n\"1796664\";\"三庙前乡\";\"other\"\n\"1796687\";\"Sanlong\";\"main\"\n\"1796687\";\"Lung-wang-miao\";\"other\"\n\"1796687\";\"San-lung\";\"other\"\n\"1796687\";\"Sanlong Zhen\";\"other\"\n\"1796687\";\"三龙\";\"other\"\n\"1796687\";\"三龙镇\";\"other\"\n\"1796705\";\"Sanli\";\"main\"\n\"1796705\";\"Sanli Xiang\";\"other\"\n\"1796705\";\"三里\";\"other\"\n\"1796705\";\"三里乡\";\"other\"\n\"1796728\";\"Sanjie\";\"main\"\n\"1796728\";\"San-chieh\";\"other\"\n\"1796728\";\"San-chieh-chen\";\"other\"\n\"1796728\";\"Sanjie Zhen\";\"other\"\n\"1796728\";\"san jie\";\"other\"\n\"1796728\";\"san jie zhen\";\"other\"\n\"1796728\";\"三界\";\"other\"\n\"1796728\";\"三界镇\";\"other\"\n\"1796764\";\"Sanjiang\";\"main\"\n\"1796764\";\"San-chiang-k'ou\";\"other\"\n\"1796764\";\"San-chiang-k’ou\";\"other\"\n\"1796764\";\"Sanjiang Zhen\";\"other\"\n\"1796764\";\"Sanjiangkou\";\"other\"\n\"1796764\";\"三江\";\"other\"\n\"1796764\";\"三江镇\";\"other\"\n\"1796776\";\"Sanjiang\";\"main\"\n\"1796776\";\"Liannan\";\"other\"\n\"1796776\";\"Lien-nan\";\"other\"\n\"1796776\";\"Lien-nan-yao-tsu-tzu-chih-ch'u\";\"other\"\n\"1796776\";\"Lien-nan-yao-tsu-tzu-chih-ch’ü\";\"other\"\n\"1796776\";\"Lien-nan-yao-tsu-tzu-chih-hsien\";\"other\"\n\"1796776\";\"Linnam\";\"other\"\n\"1796776\";\"Samkong\";\"other\"\n\"1796776\";\"San-chiang\";\"other\"\n\"1796776\";\"San-chiang-ch'eng\";\"other\"\n\"1796776\";\"San-chiang-chen\";\"other\"\n\"1796776\";\"San-chiang-ch’eng\";\"other\"\n\"1796776\";\"San-chiang-hsu\";\"other\"\n\"1796776\";\"San-chiang-hsü\";\"other\"\n\"1796776\";\"san jiang\";\"other\"\n\"1796776\";\"三江\";\"other\"\n\"1796824\";\"Sanhe\";\"main\"\n\"1796824\";\"三河\";\"other\"\n\"1796836\";\"Sangzi\";\"main\"\n\"1796836\";\"Shang-tzu\";\"other\"\n\"1796839\";\"Sangzhou\";\"main\"\n\"1796839\";\"Sang-chou\";\"other\"\n\"1796839\";\"Sang-chou-chen\";\"other\"\n\"1796839\";\"Sangchow\";\"other\"\n\"1796839\";\"Sangzhou Zhen\";\"other\"\n\"1796839\";\"Sangzhouzhen\";\"other\"\n\"1796839\";\"sang zhou\";\"other\"\n\"1796839\";\"桑洲\";\"other\"\n\"1796839\";\"桑洲镇\";\"other\"\n\"1796859\";\"Sanguansi\";\"main\"\n\"1796859\";\"San-kuan\";\"other\"\n\"1796859\";\"San-kuan-shih\";\"other\"\n\"1796859\";\"San-kuan-ssu\";\"other\"\n\"1796859\";\"Sanguansi Tujiazuxiang\";\"other\"\n\"1796859\";\"san guan si\";\"other\"\n\"1796859\";\"san guan si tu jia zu xiang\";\"other\"\n\"1796859\";\"三官寺\";\"other\"\n\"1796859\";\"三官寺土家族乡\";\"other\"\n\"1796862\";\"Sanguanmiao\";\"main\"\n\"1796862\";\"San-kuan-miao\";\"other\"\n\"1796862\";\"san guan miao\";\"other\"\n\"1796862\";\"三官庙\";\"other\"\n\"1796876\";\"Sangmu\";\"main\"\n\"1796876\";\"Sang-mu-ch'ang\";\"other\"\n\"1796876\";\"Sang-mu-ch’ang\";\"other\"\n\"1796883\";\"Sangke\";\"main\"\n\"1796883\";\"La-sze\";\"other\"\n\"1796883\";\"Sangke Xiang\";\"other\"\n\"1796883\";\"Sangkog\";\"other\"\n\"1796883\";\"桑科\";\"other\"\n\"1796883\";\"桑科乡\";\"other\"\n\"1796958\";\"Sanchakou\";\"main\"\n\"1796976\";\"Sancha\";\"main\"\n\"1796976\";\"San-ch'a-ho\";\"other\"\n\"1796976\";\"San-ch’a-ho\";\"other\"\n\"1796976\";\"Sancha Zhen\";\"other\"\n\"1796976\";\"三岔\";\"other\"\n\"1796976\";\"三岔镇\";\"other\"\n\"1796979\";\"Sancha\";\"main\"\n\"1796979\";\"San-ch'a-i\";\"other\"\n\"1796979\";\"San-ch’a-i\";\"other\"\n\"1796979\";\"Sancha Zhen\";\"other\"\n\"1796979\";\"三岔\";\"other\"\n\"1796979\";\"三岔镇\";\"other\"\n\"1796983\";\"Sancha\";\"main\"\n\"1796983\";\"Sancha Xiang\";\"other\"\n\"1796983\";\"san cha\";\"other\"\n\"1796983\";\"san cha xiang\";\"other\"\n\"1796983\";\"三岔\";\"other\"\n\"1796983\";\"三岔乡\";\"other\"\n\"1796989\";\"Changsha\";\"main\"\n\"1796989\";\"Ch'ang-sha-chen\";\"other\"\n\"1796989\";\"Ch’ang-sha-chen\";\"other\"\n\"1796989\";\"K'ai-p'ing-hsien\";\"other\"\n\"1796989\";\"Kaiping\";\"other\"\n\"1796989\";\"K’ai-p’ing-hsien\";\"other\"\n\"1796989\";\"San-pu\";\"other\"\n\"1796989\";\"San-pu-chen\";\"other\"\n\"1796989\";\"Sanbu\";\"other\"\n\"1796989\";\"zhang sha\";\"other\"\n\"1796989\";\"长沙\";\"other\"\n\"1797023\";\"Ruoshui\";\"main\"\n\"1797023\";\"Jo-shui\";\"other\"\n\"1797023\";\"Zhoshuy\";\"other\"\n\"1797028\";\"Runzhen\";\"main\"\n\"1797028\";\"Jun-chen\";\"other\"\n\"1797028\";\"T'ung-jun-chen\";\"other\"\n\"1797028\";\"Tunzhun'chzhen\";\"other\"\n\"1797028\";\"Tunzhun’chzhen\";\"other\"\n\"1797028\";\"T’ung-jun-chen\";\"other\"\n\"1797028\";\"run zhen\";\"other\"\n\"1797028\";\"闰镇\";\"other\"\n\"1797034\";\"Rende\";\"main\"\n\"1797034\";\"Hsun-tien\";\"other\"\n\"1797034\";\"Hsun-tien-hsien\";\"other\"\n\"1797034\";\"Hsun-tien-hui-tsu-tzu-chih-hsien\";\"other\"\n\"1797034\";\"Hsün-tien\";\"other\"\n\"1797034\";\"Hsün-tien-hsien\";\"other\"\n\"1797034\";\"Hsün-tien-hui-tsu-tzu-chih-hsien\";\"other\"\n\"1797034\";\"Runde\";\"other\"\n\"1797034\";\"Suntien-hsien\";\"other\"\n\"1797034\";\"Suntienchow\";\"other\"\n\"1797034\";\"Süntien-hsien\";\"other\"\n\"1797034\";\"Xundian\";\"other\"\n\"1797034\";\"ren de\";\"other\"\n\"1797034\";\"仁德\";\"other\"\n\"1797038\";\"Runan\";\"main\"\n\"1797038\";\"Ju-nan\";\"other\"\n\"1797038\";\"Ju-nan-hsien\";\"other\"\n\"1797038\";\"Juning\";\"other\"\n\"1797039\";\"Rulong\";\"main\"\n\"1797039\";\"Chan-hua\";\"other\"\n\"1797039\";\"Chan-hua-hsien\";\"other\"\n\"1797039\";\"Chzhankhua\";\"other\"\n\"1797039\";\"Hsin-lung\";\"other\"\n\"1797039\";\"Huai-jou\";\"other\"\n\"1797039\";\"Khuayzhou\";\"other\"\n\"1797039\";\"Nyagrong\";\"other\"\n\"1797039\";\"Tan-hua\";\"other\"\n\"1797039\";\"Wuxi\";\"other\"\n\"1797039\";\"Xinlong\";\"other\"\n\"1797039\";\"ru long\";\"other\"\n\"1797039\";\"茹龙\";\"other\"\n\"1797041\";\"Rulin\";\"main\"\n\"1797041\";\"Ch'eng-pu\";\"other\"\n\"1797041\";\"Ch'eng-pu-hsien\";\"other\"\n\"1797041\";\"Ch'eng-pu-miao-tsu-tzu-chih-hsien\";\"other\"\n\"1797041\";\"Chenbu\";\"other\"\n\"1797041\";\"Chengbu\";\"other\"\n\"1797041\";\"Ch’eng-pu\";\"other\"\n\"1797041\";\"Ch’eng-pu-hsien\";\"other\"\n\"1797041\";\"Ch’eng-pu-miao-tsu-tzu-chih-hsien\";\"other\"\n\"1797041\";\"Ju-lin-chen\";\"other\"\n\"1797041\";\"Zhulin'chzhen'\";\"other\"\n\"1797041\";\"Zhulin’chzhen’\";\"other\"\n\"1797041\";\"ru lin\";\"other\"\n\"1797041\";\"儒林\";\"other\"\n\"1797047\";\"Ruishi\";\"main\"\n\"1797047\";\"Jui-t'a-p'u\";\"other\"\n\"1797047\";\"Jui-t’a-p’u\";\"other\"\n\"1797047\";\"Ruitapu Zhen\";\"other\"\n\"1797047\";\"rui shi\";\"other\"\n\"1797047\";\"rui ta pu zhen\";\"other\"\n\"1797047\";\"瑞塔铺镇\";\"other\"\n\"1797047\";\"瑞市\";\"other\"\n\"1797051\";\"Ruilin\";\"main\"\n\"1797051\";\"Jui-lin\";\"other\"\n\"1797051\";\"Jui-lin-chai\";\"other\"\n\"1797051\";\"Ruilin Zhen\";\"other\"\n\"1797051\";\"瑞林\";\"other\"\n\"1797051\";\"瑞林镇\";\"other\"\n\"1797054\";\"Ruihong\";\"main\"\n\"1797054\";\"Jui-hung\";\"other\"\n\"1797054\";\"Jui-hung-chen\";\"other\"\n\"1797054\";\"Ruihong Zhen\";\"other\"\n\"1797054\";\"瑞洪\";\"other\"\n\"1797054\";\"瑞洪镇\";\"other\"\n\"1797060\";\"Guwei\";\"main\"\n\"1797060\";\"Jui-ch'eng\";\"other\"\n\"1797060\";\"Jui-ch'eng-hsien\";\"other\"\n\"1797060\";\"Jui-ch’eng\";\"other\"\n\"1797060\";\"Jui-ch’eng-hsien\";\"other\"\n\"1797060\";\"Ruicheng\";\"other\"\n\"1797060\";\"Zhuychei\";\"other\"\n\"1797060\";\"gu wei\";\"other\"\n\"1797060\";\"古魏\";\"other\"\n\"1797064\";\"Ruhu\";\"main\"\n\"1797064\";\"Ch'i-ju-hu\";\"other\"\n\"1797064\";\"Ch'i-nu\";\"other\"\n\"1797064\";\"Ch'i-nu-hu\";\"other\"\n\"1797064\";\"Ch'i-nu-hu-hsu\";\"other\"\n\"1797064\";\"Ch’i-ju-hu\";\"other\"\n\"1797064\";\"Ch’i-nu-hu-hsü\";\"other\"\n\"1797064\";\"Ch’i-nü\";\"other\"\n\"1797064\";\"Ch’i-nü-hu\";\"other\"\n\"1797064\";\"Ju-hu\";\"other\"\n\"1797064\";\"Ruhu Zhen\";\"other\"\n\"1797064\";\"ru hu\";\"other\"\n\"1797064\";\"汝湖\";\"other\"\n\"1797069\";\"Rucheng\";\"main\"\n\"1797069\";\"Ju-ch'eng-chen\";\"other\"\n\"1797069\";\"Ju-ch’eng-chen\";\"other\"\n\"1797069\";\"Ju-kao\";\"other\"\n\"1797069\";\"Ju-kao-ch'eng\";\"other\"\n\"1797069\";\"Ju-kao-ch’eng\";\"other\"\n\"1797069\";\"Ju-kao-hsien\";\"other\"\n\"1797069\";\"Rucheng Zhen\";\"other\"\n\"1797069\";\"Rugao Shi\";\"other\"\n\"1797069\";\"如城\";\"other\"\n\"1797069\";\"如城镇\";\"other\"\n\"1797069\";\"如皋市\";\"other\"\n\"1797076\";\"Rucheng Chengguanzhen\";\"main\"\n\"1797076\";\"Ju-ch'eng\";\"other\"\n\"1797076\";\"Ju-ch'eng-hsien\";\"other\"\n\"1797076\";\"Ju-ch’eng\";\"other\"\n\"1797076\";\"Ju-ch’eng-hsien\";\"other\"\n\"1797076\";\"Ju-kuei\";\"other\"\n\"1797076\";\"Kuei-yang\";\"other\"\n\"1797076\";\"Kweiyang\";\"other\"\n\"1797076\";\"Kweiyanghsien\";\"other\"\n\"1797076\";\"Rucheng\";\"other\"\n\"1797076\";\"Yu-ch'eng\";\"other\"\n\"1797076\";\"Yu-ch’eng\";\"other\"\n\"1797076\";\"ru cheng cheng guan zhen\";\"other\"\n\"1797076\";\"汝城城关镇\";\"other\"\n\"1797079\";\"Ru’ao\";\"main\"\n\"1797079\";\"Ru'ao\";\"ascii\"\n\"1797079\";\"Ju-ao\";\"other\"\n\"1797079\";\"Ju-ao-shih\";\"other\"\n\"1797079\";\"Ru'ao Zhen\";\"other\"\n\"1797079\";\"Ru’ao Zhen\";\"other\"\n\"1797079\";\"ru ao\";\"other\"\n\"1797079\";\"儒岙\";\"other\"\n\"1797079\";\"儒岙镇\";\"other\"\n\"1797083\";\"Rouyuan\";\"main\"\n\"1797083\";\"Hua-ch'ih\";\"other\"\n\"1797083\";\"Hua-ch’ih\";\"other\"\n\"1797083\";\"Huachi\";\"other\"\n\"1797083\";\"Jou-yuan-ch'eng\";\"other\"\n\"1797083\";\"Jou-yuan-ch'eng-tzu\";\"other\"\n\"1797083\";\"Jou-yuan-li\";\"other\"\n\"1797083\";\"Jou-yüan-ch’eng\";\"other\"\n\"1797083\";\"Jou-yüan-ch’eng-tzu\";\"other\"\n\"1797083\";\"Jou-yüan-li\";\"other\"\n\"1797083\";\"Rouyuan Zhen\";\"other\"\n\"1797083\";\"Rouyuanchengzi\";\"other\"\n\"1797083\";\"柔远\";\"other\"\n\"1797083\";\"柔远镇\";\"other\"\n\"1797091\";\"Rongwo\";\"main\"\n\"1797091\";\"Lung-wu\";\"other\"\n\"1797091\";\"Lung-wu-chen\";\"other\"\n\"1797091\";\"Lung-wu-ssu\";\"other\"\n\"1797091\";\"T'ung-jen\";\"other\"\n\"1797091\";\"T'ung-jen-hsien\";\"other\"\n\"1797091\";\"Tongren\";\"other\"\n\"1797091\";\"Tunzhen'\";\"other\"\n\"1797091\";\"Tunzhen’\";\"other\"\n\"1797091\";\"T’ung-jen\";\"other\"\n\"1797091\";\"T’ung-jen-hsien\";\"other\"\n\"1797091\";\"隆务\";\"other\"\n\"1797091\";\"隆务镇\";\"other\"\n\"1797094\";\"Rongshui\";\"main\"\n\"1797094\";\"Chiu-jung-hsien\";\"other\"\n\"1797094\";\"Jung\";\"other\"\n\"1797094\";\"Jung-hsien\";\"other\"\n\"1797094\";\"Jung-shui\";\"other\"\n\"1797094\";\"Jung-shui-chen\";\"other\"\n\"1797094\";\"Jung-shui-hsien\";\"other\"\n\"1797094\";\"Ta-miao-shan\";\"other\"\n\"1797094\";\"Ta-miao-shan-miao-tsu-tzu-chih-ch'u\";\"other\"\n\"1797094\";\"Ta-miao-shan-miao-tsu-tzu-chih-ch’ü\";\"other\"\n\"1797094\";\"rong shui\";\"other\"\n\"1797094\";\"融水\";\"other\"\n\"1797099\";\"Rongmei\";\"main\"\n\"1797099\";\"Hao-feng\";\"other\"\n\"1797099\";\"Hao-feng-hsien\";\"other\"\n\"1797099\";\"Hefeng\";\"other\"\n\"1797099\";\"Hefeng Xian\";\"other\"\n\"1797099\";\"Ho-feng\";\"other\"\n\"1797099\";\"Hofeng-hsien\";\"other\"\n\"1797099\";\"Rongmei Zhen\";\"other\"\n\"1797099\";\"he feng xian\";\"other\"\n\"1797099\";\"rong mei\";\"other\"\n\"1797099\";\"容美\";\"other\"\n\"1797099\";\"容美镇\";\"other\"\n\"1797099\";\"鹤峰\";\"other\"\n\"1797099\";\"鹤峰县\";\"other\"\n\"1797102\";\"Rongjiawan\";\"main\"\n\"1797102\";\"Jung-chia-wan\";\"other\"\n\"1797102\";\"Jungchiangwan\";\"other\"\n\"1797102\";\"Jungkiawan\";\"other\"\n\"1797102\";\"Yueyang\";\"other\"\n\"1797102\";\"rong jia wan\";\"other\"\n\"1797102\";\"荣家湾\";\"other\"\n\"1797117\";\"Rongcheng\";\"main\"\n\"1797117\";\"Ch'ing-yang\";\"other\"\n\"1797117\";\"Ch'ing-yang-hsien\";\"other\"\n\"1797117\";\"Ch’ing-yang\";\"other\"\n\"1797117\";\"Ch’ing-yang-hsien\";\"other\"\n\"1797117\";\"Qingyang\";\"other\"\n\"1797117\";\"Tsingyang\";\"other\"\n\"1797117\";\"Tsingyanghsien\";\"other\"\n\"1797117\";\"rong cheng\";\"other\"\n\"1797117\";\"蓉城\";\"other\"\n\"1797120\";\"Fuqing\";\"main\"\n\"1797120\";\"Fu-ch'ing\";\"other\"\n\"1797120\";\"Fu-ch'ing-hsien\";\"other\"\n\"1797120\";\"Fu-ch'ing-hsien-ch'eng\";\"other\"\n\"1797120\";\"Fu-ch’ing\";\"other\"\n\"1797120\";\"Fu-ch’ing-hsien\";\"other\"\n\"1797120\";\"Fu-ch’ing-hsien-ch’eng\";\"other\"\n\"1797120\";\"Fucin'\";\"other\"\n\"1797120\";\"Futsing\";\"other\"\n\"1797120\";\"Putsinghsien\";\"other\"\n\"1797120\";\"Rongcheng\";\"other\"\n\"1797120\";\"Фуцинь\";\"other\"\n\"1797121\";\"Jieyang\";\"main\"\n\"1797121\";\"Chieh-yang\";\"other\"\n\"1797121\";\"Chieh-yang-hsien\";\"other\"\n\"1797121\";\"Chieh-yung\";\"other\"\n\"1797121\";\"Chien Yang\";\"other\"\n\"1797121\";\"Kiehyang\";\"other\"\n\"1797121\";\"Kityang\";\"other\"\n\"1797121\";\"Kityang-hsien\";\"other\"\n\"1797121\";\"Rongcheng\";\"other\"\n\"1797121\";\"jie yang shi\";\"other\"\n\"1797121\";\"揭阳\";\"other\"\n\"1797121\";\"揭阳市\";\"other\"\n\"1797122\";\"Rongzhou\";\"main\"\n\"1797122\";\"Jung\";\"other\"\n\"1797122\";\"Jung-ch'eng-chen\";\"other\"\n\"1797122\";\"Jung-ch’eng-chen\";\"other\"\n\"1797122\";\"Jung-hsien\";\"other\"\n\"1797122\";\"Jung-yun\";\"other\"\n\"1797122\";\"Jung-yün\";\"other\"\n\"1797122\";\"Rongcheng\";\"other\"\n\"1797122\";\"Rongxian\";\"other\"\n\"1797122\";\"Yung-hsien\";\"other\"\n\"1797122\";\"rong zhou\";\"other\"\n\"1797122\";\"容州\";\"other\"\n\"1797132\";\"Rizhao\";\"main\"\n\"1797132\";\"Jichaohsien\";\"other\"\n\"1797132\";\"Jih-chao\";\"other\"\n\"1797132\";\"Jih-chao-hsien\";\"other\"\n\"1797132\";\"Rijao\";\"other\"\n\"1797132\";\"ri zhao\";\"other\"\n\"1797132\";\"ri zhao shi\";\"other\"\n\"1797132\";\"日照\";\"other\"\n\"1797132\";\"日照市\";\"other\"\n\"1797136\";\"Rixinhe\";\"main\"\n\"1797136\";\"Jih-hsin-chen\";\"other\"\n\"1797136\";\"Jih-hsing-chen\";\"other\"\n\"1797136\";\"Rixinzhen\";\"other\"\n\"1797136\";\"Shaozhi\";\"other\"\n\"1797136\";\"Shaozhi Zhen\";\"other\"\n\"1797136\";\"少直\";\"other\"\n\"1797136\";\"少直镇\";\"other\"\n\"1797136\";\"日新河\";\"other\"\n\"1797145\";\"Ridong\";\"main\"\n\"1797145\";\"Jih-tung\";\"other\"\n\"1797145\";\"Ridong Xiang\";\"other\"\n\"1797145\";\"日东\";\"other\"\n\"1797145\";\"日东乡\";\"other\"\n\"1797178\";\"Renshan\";\"main\"\n\"1797178\";\"Jen-shan\";\"other\"\n\"1797178\";\"Jen-shan-hsu\";\"other\"\n\"1797178\";\"Jen-shan-hsü\";\"other\"\n\"1797178\";\"Nien-shan\";\"other\"\n\"1797178\";\"Nimshan\";\"other\"\n\"1797178\";\"ren shan\";\"other\"\n\"1797178\";\"稔山\";\"other\"\n\"1797181\";\"Renqiu\";\"main\"\n\"1797181\";\"Jen-ch'iu\";\"other\"\n\"1797181\";\"Jen-ch'iu-ch'eng-kuan\";\"other\"\n\"1797181\";\"Jen-ch'iu-hsien\";\"other\"\n\"1797181\";\"Jen-ch’iu\";\"other\"\n\"1797181\";\"Jen-ch’iu-ch’eng-kuan\";\"other\"\n\"1797181\";\"Jen-ch’iu-hsien\";\"other\"\n\"1797181\";\"Jenkiu\";\"other\"\n\"1797181\";\"Jenkiuhsien\";\"other\"\n\"1797181\";\"Zhen'tsyu\";\"other\"\n\"1797181\";\"Zhen’tsyu\";\"other\"\n\"1797181\";\"ren qiu shi\";\"other\"\n\"1797181\";\"任丘市\";\"other\"\n\"1797195\";\"Renhua\";\"main\"\n\"1797195\";\"Jen-hua\";\"other\"\n\"1797195\";\"Jen-hua-hsien\";\"other\"\n\"1797195\";\"Yanfa\";\"other\"\n\"1797195\";\"Yanfa-hsien\";\"other\"\n\"1797195\";\"ren hua\";\"other\"\n\"1797195\";\"仁化\";\"other\"\n\"1797212\";\"Renhe\";\"main\"\n\"1797212\";\"Jen-ho\";\"other\"\n\"1797212\";\"Jen-ho-chen\";\"other\"\n\"1797212\";\"Jen-ho-chieh\";\"other\"\n\"1797212\";\"Jenhokai\";\"other\"\n\"1797212\";\"Yung-jen\";\"other\"\n\"1797212\";\"Yung-jen Old City\";\"other\"\n\"1797212\";\"ren he\";\"other\"\n\"1797212\";\"仁和\";\"other\"\n\"1797219\";\"Renfengzhuang\";\"main\"\n\"1797219\";\"Jen-feng-chuang\";\"other\"\n\"1797233\";\"Renchaoxi\";\"main\"\n\"1797233\";\"Jen-ch'ao-ch'i\";\"other\"\n\"1797233\";\"Jen-ch'ao-hsi\";\"other\"\n\"1797233\";\"Jen-ch’ao-ch’i\";\"other\"\n\"1797233\";\"Jen-ch’ao-hsi\";\"other\"\n\"1797233\";\"Rengchaoxi Xiang\";\"other\"\n\"1797233\";\"ren chao xi\";\"other\"\n\"1797233\";\"ren chao xi xiang\";\"other\"\n\"1797233\";\"人潮溪\";\"other\"\n\"1797233\";\"人潮溪乡\";\"other\"\n\"1797252\";\"Ranghe\";\"main\"\n\"1797252\";\"Jang-ho\";\"other\"\n\"1797252\";\"Jang-ho-chen\";\"other\"\n\"1797252\";\"Jangho Cheno\";\"other\"\n\"1797252\";\"Kun-ho\";\"other\"\n\"1797252\";\"rang he\";\"other\"\n\"1797252\";\"瀼河\";\"other\"\n\"1797258\";\"Quzi\";\"main\"\n\"1797258\";\"Ch'u-tzu\";\"other\"\n\"1797258\";\"Ch'u-tzu-chen\";\"other\"\n\"1797258\";\"Ch’u-tzu-chen\";\"other\"\n\"1797258\";\"Ch’ü-tzu\";\"other\"\n\"1797258\";\"Huan\";\"other\"\n\"1797258\";\"Huan-hsien\";\"other\"\n\"1797258\";\"Quzi Zhen\";\"other\"\n\"1797258\";\"Tsyuytszochzhen\";\"other\"\n\"1797258\";\"Tsyuytszöchzhen\";\"other\"\n\"1797258\";\"曲子\";\"other\"\n\"1797258\";\"曲子镇\";\"other\"\n\"1797259\";\"Quzi\";\"main\"\n\"1797259\";\"Ch'u-tzu\";\"other\"\n\"1797259\";\"Ch’ü-tzu\";\"other\"\n\"1797259\";\"Liu-tzu\";\"other\"\n\"1797259\";\"qu zi\";\"other\"\n\"1797259\";\"渠子\";\"other\"\n\"1797264\";\"Quzhou\";\"main\"\n\"1797264\";\"Ch'u\";\"other\"\n\"1797264\";\"Ch'u-chou\";\"other\"\n\"1797264\";\"Ch'u-hsien\";\"other\"\n\"1797264\";\"Ch'u-hsien-ch'eng\";\"other\"\n\"1797264\";\"Chu-chow\";\"other\"\n\"1797264\";\"Chuchowfu\";\"other\"\n\"1797264\";\"Ch’ü\";\"other\"\n\"1797264\";\"Ch’ü-chou\";\"other\"\n\"1797264\";\"Ch’ü-hsien\";\"other\"\n\"1797264\";\"Ch’ü-hsien-ch’eng\";\"other\"\n\"1797264\";\"Quxian\";\"other\"\n\"1797271\";\"Quyang\";\"main\"\n\"1797271\";\"Ching\";\"other\"\n\"1797271\";\"Ching-chou\";\"other\"\n\"1797271\";\"Ching-hsien\";\"other\"\n\"1797271\";\"Ching-hsien-ch'eng\";\"other\"\n\"1797271\";\"Ching-hsien-ch’eng\";\"other\"\n\"1797271\";\"Jingxian\";\"other\"\n\"1797271\";\"Tsingchow\";\"other\"\n\"1797271\";\"Tsinghsien\";\"other\"\n\"1797271\";\"Tszinsyan'\";\"other\"\n\"1797271\";\"Tszinsyan’\";\"other\"\n\"1797271\";\"qu yang\";\"other\"\n\"1797271\";\"渠阳\";\"other\"\n\"1797275\";\"Quxia\";\"main\"\n\"1797275\";\"Ch'u-hsia-chen\";\"other\"\n\"1797275\";\"Ch’ü-hsia-chen\";\"other\"\n\"1797275\";\"Hsia-ma-yu\";\"other\"\n\"1797275\";\"Hsia-ma-yu-chen\";\"other\"\n\"1797275\";\"Hsia-ma-yü\";\"other\"\n\"1797275\";\"Hsia-ma-yü-chen\";\"other\"\n\"1797275\";\"Hsia-mu-yu\";\"other\"\n\"1797275\";\"Hsia-mu-yü\";\"other\"\n\"1797275\";\"Quxia Zhen\";\"other\"\n\"1797275\";\"Quxiazhen\";\"other\"\n\"1797275\";\"曲霞\";\"other\"\n\"1797275\";\"曲霞镇\";\"other\"\n\"1797281\";\"Quxi\";\"main\"\n\"1797281\";\"Quxi Xiang\";\"other\"\n\"1797281\";\"曲溪\";\"other\"\n\"1797281\";\"曲溪乡\";\"other\"\n\"1797283\";\"Quxi\";\"main\"\n\"1797283\";\"qu xi\";\"other\"\n\"1797283\";\"曲溪\";\"other\"\n\"1797287\";\"Lechang\";\"main\"\n\"1797287\";\"Ch'iu-ch'u-wo\";\"other\"\n\"1797287\";\"Ch'u-wu\";\"other\"\n\"1797287\";\"Ch'u-wu-hsien\";\"other\"\n\"1797287\";\"Ch’iu-ch’ü-wo\";\"other\"\n\"1797287\";\"Ch’ü-wu\";\"other\"\n\"1797287\";\"Ch’ü-wu-hsien\";\"other\"\n\"1797287\";\"Kuwo\";\"other\"\n\"1797287\";\"Kuwohsien\";\"other\"\n\"1797287\";\"Küwo\";\"other\"\n\"1797287\";\"Quwo\";\"other\"\n\"1797287\";\"Tsyuyvo\";\"other\"\n\"1797287\";\"le chang\";\"other\"\n\"1797287\";\"乐昌\";\"other\"\n\"1797293\";\"Qutang\";\"main\"\n\"1797293\";\"Ch'u-t'ang\";\"other\"\n\"1797293\";\"Ch'u-t'ang-chen\";\"other\"\n\"1797293\";\"Ch’ü-t’ang\";\"other\"\n\"1797293\";\"Ch’ü-t’ang-chen\";\"other\"\n\"1797293\";\"Kutang\";\"other\"\n\"1797293\";\"Qutang Zhen\";\"other\"\n\"1797293\";\"曲塘\";\"other\"\n\"1797293\";\"曲塘镇\";\"other\"\n\"1797318\";\"Qujing\";\"main\"\n\"1797318\";\"Ch'u-ching\";\"other\"\n\"1797318\";\"Ch'u-ching-hsien\";\"other\"\n\"1797318\";\"Chiu-ch'u-ching\";\"other\"\n\"1797318\";\"Chiu-ch’ü-ching\";\"other\"\n\"1797318\";\"Ch’ü-ching\";\"other\"\n\"1797318\";\"Ch’ü-ching-hsien\";\"other\"\n\"1797318\";\"Ku-tsing-fu\";\"other\"\n\"1797318\";\"Kutsing\";\"other\"\n\"1797318\";\"Kutsinghsien\";\"other\"\n\"1797318\";\"Kü-tsing-fu\";\"other\"\n\"1797318\";\"Kütsing\";\"other\"\n\"1797318\";\"Nan-ning\";\"other\"\n\"1797318\";\"qu jing shi\";\"other\"\n\"1797318\";\"曲靖市\";\"other\"\n\"1797326\";\"Qujiang\";\"main\"\n\"1797326\";\"Ch'u\";\"other\"\n\"1797326\";\"Ch'u-hsien\";\"other\"\n\"1797326\";\"Ch’ü\";\"other\"\n\"1797326\";\"Ch’ü-hsien\";\"other\"\n\"1797326\";\"Quxian\";\"other\"\n\"1797326\";\"Tsyuysyan'\";\"other\"\n\"1797326\";\"Tsyuysyan’\";\"other\"\n\"1797326\";\"qu jiang\";\"other\"\n\"1797326\";\"渠江\";\"other\"\n\"1797327\";\"Qujiang\";\"main\"\n\"1797327\";\"Ch'u-chiang\";\"other\"\n\"1797327\";\"Ch'u-chiang-chen\";\"other\"\n\"1797327\";\"Ch’ü-chiang\";\"other\"\n\"1797327\";\"Ch’ü-chiang-chen\";\"other\"\n\"1797327\";\"Qujiang Zhen\";\"other\"\n\"1797327\";\"曲江\";\"other\"\n\"1797327\";\"曲江镇\";\"other\"\n\"1797333\";\"Qufu\";\"main\"\n\"1797333\";\"Ch'u-fou\";\"other\"\n\"1797333\";\"Ch'u-fou-hsien\";\"other\"\n\"1797333\";\"Ch'u-fou-hsien-ch'eng\";\"other\"\n\"1797333\";\"Ch'u-fu-hsien\";\"other\"\n\"1797333\";\"Chu-fu\";\"other\"\n\"1797333\";\"Chü-fu\";\"other\"\n\"1797333\";\"Ch’u-fu-hsien\";\"other\"\n\"1797333\";\"Ch’ü-fou\";\"other\"\n\"1797333\";\"Ch’ü-fou-hsien\";\"other\"\n\"1797333\";\"Ch’ü-fou-hsien-ch’eng\";\"other\"\n\"1797333\";\"Kinfowhsien\";\"other\"\n\"1797333\";\"Kufow\";\"other\"\n\"1797333\";\"Küfow\";\"other\"\n\"1797333\";\"chwipu\";\"other\"\n\"1797333\";\"qu fu\";\"other\"\n\"1797333\";\"qu fu shi\";\"other\"\n\"1797333\";\"曲阜\";\"other\"\n\"1797333\";\"曲阜市\";\"other\"\n\"1797333\";\"취푸\";\"other\"\n\"1797352\";\"Quanzhou\";\"main\"\n\"1797352\";\"Ch'uan\";\"other\"\n\"1797352\";\"Ch'uan-chou\";\"other\"\n\"1797352\";\"Ch'uan-chou-chen\";\"other\"\n\"1797352\";\"Ch'uan-hsien\";\"other\"\n\"1797352\";\"Ch'uan-hsien-ch'eng\";\"other\"\n\"1797352\";\"Chuanchow\";\"other\"\n\"1797352\";\"Ch’üan\";\"other\"\n\"1797352\";\"Ch’üan-chou\";\"other\"\n\"1797352\";\"Ch’üan-chou-chen\";\"other\"\n\"1797352\";\"Ch’üan-hsien\";\"other\"\n\"1797352\";\"Ch’üan-hsien-ch’eng\";\"other\"\n\"1797352\";\"quan zhou\";\"other\"\n\"1797352\";\"全州\";\"other\"\n\"1797353\";\"Quanzhou\";\"main\"\n\"1797353\";\"Ch'uan-chou\";\"other\"\n\"1797353\";\"Ch'uan-chou-shih\";\"other\"\n\"1797353\";\"Chin-chiang\";\"other\"\n\"1797353\";\"Chin-chiang-hsien\";\"other\"\n\"1797353\";\"Chinchew\";\"other\"\n\"1797353\";\"Chuanchowfu\";\"other\"\n\"1797353\";\"Chüanchowfu\";\"other\"\n\"1797353\";\"Ch’üan-chou\";\"other\"\n\"1797353\";\"Ch’üan-chou-shih\";\"other\"\n\"1797353\";\"Cjuan'chzhou\";\"other\"\n\"1797353\";\"Tsin-chiang\";\"other\"\n\"1797353\";\"Tsingkianghsien\";\"other\"\n\"1797353\";\"Tsinkiang\";\"other\"\n\"1797353\";\"Zaitun\";\"other\"\n\"1797353\";\"Zayton\";\"other\"\n\"1797353\";\"Цюаньчжоу\";\"other\"\n\"1797353\";\"泉州\";\"other\"\n\"1797355\";\"Quanzhai\";\"main\"\n\"1797355\";\"Ch'uan-chai\";\"other\"\n\"1797355\";\"Ch’üan-chai\";\"other\"\n\"1797355\";\"Kuan-chai\";\"other\"\n\"1797355\";\"Quanzhai Zhen\";\"other\"\n\"1797355\";\"权寨\";\"other\"\n\"1797355\";\"权寨镇\";\"other\"\n\"1797368\";\"Quanshang\";\"main\"\n\"1797368\";\"Ch'uan-shang\";\"other\"\n\"1797368\";\"Ch’üan-shang\";\"other\"\n\"1797368\";\"Quanshang Zhen\";\"other\"\n\"1797368\";\"泉上\";\"other\"\n\"1797368\";\"泉上镇\";\"other\"\n\"1797385\";\"Quangang\";\"main\"\n\"1797385\";\"Ch'uan-chiang\";\"other\"\n\"1797385\";\"Ch'uan-chiang-chieh\";\"other\"\n\"1797385\";\"Ch’üan-chiang\";\"other\"\n\"1797385\";\"Ch’üan-chiang-chieh\";\"other\"\n\"1797385\";\"Quangang Zhen\";\"other\"\n\"1797385\";\"泉港\";\"other\"\n\"1797385\";\"泉港镇\";\"other\"\n\"1797404\";\"Qizhen\";\"main\"\n\"1797404\";\"Ch'i-chen\";\"other\"\n\"1797404\";\"Ch'i-chia-chai\";\"other\"\n\"1797404\";\"Ch’i-chen\";\"other\"\n\"1797404\";\"Ch’i-chia-chai\";\"other\"\n\"1797404\";\"Tsitszyachay\";\"other\"\n\"1797404\";\"齐镇\";\"other\"\n\"1797414\";\"Qiying\";\"main\"\n\"1797414\";\"Ch'i-ying\";\"other\"\n\"1797414\";\"Ch’i-ying\";\"other\"\n\"1797414\";\"Qiying Zhen\";\"other\"\n\"1797414\";\"七营\";\"other\"\n\"1797414\";\"七营镇\";\"other\"\n\"1797417\";\"Wuxi\";\"main\"\n\"1797417\";\"Ch'i-yang\";\"other\"\n\"1797417\";\"Ch'i-yang-ch'eng\";\"other\"\n\"1797417\";\"Ch'i-yang-hsien\";\"other\"\n\"1797417\";\"Ch’i-yang\";\"other\"\n\"1797417\";\"Ch’i-yang-ch’eng\";\"other\"\n\"1797417\";\"Ch’i-yang-hsien\";\"other\"\n\"1797417\";\"Kiyang\";\"other\"\n\"1797417\";\"Kiyang-hsien\";\"other\"\n\"1797417\";\"Qiyang\";\"other\"\n\"1797417\";\"浯溪\";\"other\"\n\"1797431\";\"Zhaoyu\";\"main\"\n\"1797431\";\"Ch'i\";\"other\"\n\"1797431\";\"Ch'i-hsien\";\"other\"\n\"1797431\";\"Ch'i-hsien-ch'eng\";\"other\"\n\"1797431\";\"Ch’i\";\"other\"\n\"1797431\";\"Ch’i-hsien\";\"other\"\n\"1797431\";\"Ch’i-hsien-ch’eng\";\"other\"\n\"1797431\";\"Kihsien\";\"other\"\n\"1797431\";\"Qixian\";\"other\"\n\"1797431\";\"zhao yu\";\"other\"\n\"1797431\";\"昭余\";\"other\"\n\"1797438\";\"Qixia\";\"main\"\n\"1797438\";\"Ch'i-hsia\";\"other\"\n\"1797438\";\"Ch'i-hsia-hsien\";\"other\"\n\"1797438\";\"Ch’i-hsia\";\"other\"\n\"1797438\";\"Ch’i-hsia-hsien\";\"other\"\n\"1797438\";\"Tsisia\";\"other\"\n\"1797475\";\"Qiucun\";\"main\"\n\"1797475\";\"Ch'iu-ts'un\";\"other\"\n\"1797475\";\"Ch'iu-ts'un-chen\";\"other\"\n\"1797475\";\"Ch'iu-ts'un-ling\";\"other\"\n\"1797475\";\"Ch’iu-ts’un\";\"other\"\n\"1797475\";\"Ch’iu-ts’un-chen\";\"other\"\n\"1797475\";\"Ch’iu-ts’un-ling\";\"other\"\n\"1797475\";\"Qiucun Zhen\";\"other\"\n\"1797475\";\"Qiucunzhen\";\"other\"\n\"1797475\";\"qiu cun\";\"other\"\n\"1797475\";\"qiu cun zhen\";\"other\"\n\"1797475\";\"裘村\";\"other\"\n\"1797475\";\"裘村镇\";\"other\"\n\"1797476\";\"Qiuchuan\";\"main\"\n\"1797476\";\"Ch'iu-ch'uan\";\"other\"\n\"1797476\";\"Ch'iu-chuan-chen\";\"other\"\n\"1797476\";\"Ch’iu-chuan-chen\";\"other\"\n\"1797476\";\"Ch’iu-ch’uan\";\"other\"\n\"1797476\";\"qiu chuan\";\"other\"\n\"1797476\";\"qiu chuan zhen\";\"other\"\n\"1797476\";\"球川\";\"other\"\n\"1797476\";\"球川镇\";\"other\"\n\"1797479\";\"Qiu’ai\";\"main\"\n\"1797479\";\"Qiu'ai\";\"ascii\"\n\"1797479\";\"Ch'iu-ai\";\"other\"\n\"1797479\";\"Ch'iu-chieh\";\"other\"\n\"1797479\";\"Ch'iu-i\";\"other\"\n\"1797479\";\"Ch'iu-yai\";\"other\"\n\"1797479\";\"Ch'iu-yai-chen\";\"other\"\n\"1797479\";\"Ch’iu-ai\";\"other\"\n\"1797479\";\"Ch’iu-chieh\";\"other\"\n\"1797479\";\"Ch’iu-i\";\"other\"\n\"1797479\";\"Ch’iu-yai\";\"other\"\n\"1797479\";\"Ch’iu-yai-chen\";\"other\"\n\"1797479\";\"Qiuai Zhen\";\"other\"\n\"1797479\";\"Yin-hsien\";\"other\"\n\"1797479\";\"qiu ai\";\"other\"\n\"1797479\";\"qiu ai zhen\";\"other\"\n\"1797479\";\"邱隘\";\"other\"\n\"1797479\";\"邱隘镇\";\"other\"\n\"1797501\";\"Qishi\";\"main\"\n\"1797501\";\"Ch'i-shih\";\"other\"\n\"1797501\";\"Ch’i-shih\";\"other\"\n\"1797501\";\"Qishi Zhen\";\"other\"\n\"1797501\";\"qi shi\";\"other\"\n\"1797501\";\"企石\";\"other\"\n\"1797535\";\"Qiongshan\";\"main\"\n\"1797535\";\"Ch'iung-chou\";\"other\"\n\"1797535\";\"Ch'iung-shan\";\"other\"\n\"1797535\";\"Ch'iung-shan-hsien\";\"other\"\n\"1797535\";\"Ch’iung-chou\";\"other\"\n\"1797535\";\"Ch’iung-shan\";\"other\"\n\"1797535\";\"Ch’iung-shan-hsien\";\"other\"\n\"1797535\";\"Kiung chow fu\";\"other\"\n\"1797535\";\"Kiungchow\";\"other\"\n\"1797535\";\"Kiungshan\";\"other\"\n\"1797535\";\"Kiungshan-hsien\";\"other\"\n\"1797535\";\"Qiongzhou\";\"other\"\n\"1797537\";\"Qiongxi\";\"main\"\n\"1797537\";\"Ha-la-ma\";\"other\"\n\"1797537\";\"Hongyuan\";\"other\"\n\"1797537\";\"Hung-yuan\";\"other\"\n\"1797537\";\"Hung-yüan\";\"other\"\n\"1797537\";\"Hurama\";\"other\"\n\"1797537\";\"Li Hsien\";\"other\"\n\"1797537\";\"qiong xi\";\"other\"\n\"1797537\";\"邛溪\";\"other\"\n\"1797543\";\"Yuanjiang\";\"main\"\n\"1797543\";\"Qionghu\";\"other\"\n\"1797543\";\"Yuan-chiang\";\"other\"\n\"1797543\";\"Yuan-chiang-hsien\";\"other\"\n\"1797543\";\"Yuankiang\";\"other\"\n\"1797543\";\"Yuankiang-hsien\";\"other\"\n\"1797543\";\"Yuen Kong\";\"other\"\n\"1797543\";\"Yüan-chiang\";\"other\"\n\"1797543\";\"Yüan-chiang-hsien\";\"other\"\n\"1797543\";\"Yüankiang\";\"other\"\n\"1797543\";\"Yüankiang-hsien\";\"other\"\n\"1797543\";\"沅江\";\"other\"\n\"1797551\";\"Qinzhou\";\"main\"\n\"1797551\";\"Ch'in\";\"other\"\n\"1797551\";\"Ch'in-chou\";\"other\"\n\"1797551\";\"Ch'in-chou-chen\";\"other\"\n\"1797551\";\"Ch'in-chou-chuang-tsu-tzu-chih-hsien\";\"other\"\n\"1797551\";\"Ch'in-hsien\";\"other\"\n\"1797551\";\"Chinchow\";\"other\"\n\"1797551\";\"Ch’in\";\"other\"\n\"1797551\";\"Ch’in-chou\";\"other\"\n\"1797551\";\"Ch’in-chou-chen\";\"other\"\n\"1797551\";\"Ch’in-chou-chuang-tsu-tzu-chih-hsien\";\"other\"\n\"1797551\";\"Ch’in-hsien\";\"other\"\n\"1797551\";\"Yamchow\";\"other\"\n\"1797551\";\"Yamhsien\";\"other\"\n\"1797551\";\"qin zhou shi\";\"other\"\n\"1797551\";\"钦州市\";\"other\"\n\"1797554\";\"Qinhe\";\"main\"\n\"1797554\";\"Ch'in-yuan\";\"other\"\n\"1797554\";\"Ch'in-yuan-hsien\";\"other\"\n\"1797554\";\"Ch’in-yüan\";\"other\"\n\"1797554\";\"Ch’in-yüan-hsien\";\"other\"\n\"1797554\";\"Qinyuan\";\"other\"\n\"1797554\";\"Tsin'yuan'\";\"other\"\n\"1797554\";\"Tsin’yuan’\";\"other\"\n\"1797554\";\"qin he\";\"other\"\n\"1797554\";\"沁河\";\"other\"\n\"1797559\";\"Dingchang\";\"main\"\n\"1797559\";\"Ch'in-hsien\";\"other\"\n\"1797559\";\"Ch’in-hsien\";\"other\"\n\"1797559\";\"Qinxian\";\"other\"\n\"1797559\";\"ding chang\";\"other\"\n\"1797559\";\"定昌\";\"other\"\n\"1797568\";\"Longgang\";\"main\"\n\"1797568\";\"Ch'in-shui\";\"other\"\n\"1797568\";\"Ch'in-shui-hsien\";\"other\"\n\"1797568\";\"Ch’in-shui\";\"other\"\n\"1797568\";\"Ch’in-shui-hsien\";\"other\"\n\"1797568\";\"Qinshui\";\"other\"\n\"1797568\";\"Tsin'shuy\";\"other\"\n\"1797568\";\"Tsin’shuy\";\"other\"\n\"1797568\";\"long gang\";\"other\"\n\"1797568\";\"龙港\";\"other\"\n\"1797575\";\"Qinnan\";\"main\"\n\"1797575\";\"Ch'in-nan\";\"other\"\n\"1797575\";\"Ch'in-nan-ts'ang\";\"other\"\n\"1797575\";\"Qinnancang\";\"other\"\n\"1797595\";\"Qinhuangdao\";\"main\"\n\"1797595\";\"Ch'in-huang-tao\";\"other\"\n\"1797595\";\"Ch'in-huang-tao-shih\";\"other\"\n\"1797595\";\"Chinwangtao\";\"other\"\n\"1797595\";\"Ch’in-huang-tao\";\"other\"\n\"1797595\";\"Ch’in-huang-tao-shih\";\"other\"\n\"1797595\";\"Cin'khuandao\";\"other\"\n\"1797595\";\"qin huang dao shi\";\"other\"\n\"1797595\";\"Циньхуандао\";\"other\"\n\"1797595\";\"چىنخۇاڭداۋ شەھىرى\";\"other\"\n\"1797595\";\"秦皇岛市\";\"other\"\n\"1797595\";\"秦皇島市\";\"other\"\n\"1797630\";\"Qingyuan\";\"main\"\n\"1797630\";\"Ch'ing-hsu\";\"other\"\n\"1797630\";\"Ch'ing-hsu-hsien\";\"other\"\n\"1797630\";\"Ch'ing-yuan\";\"other\"\n\"1797630\";\"Ch'ing-yuan-ch'eng\";\"other\"\n\"1797630\";\"Ch'ing-yuan-hsien\";\"other\"\n\"1797630\";\"Ch’ing-hsü\";\"other\"\n\"1797630\";\"Ch’ing-hsü-hsien\";\"other\"\n\"1797630\";\"Ch’ing-yüan\";\"other\"\n\"1797630\";\"Ch’ing-yüan-ch’eng\";\"other\"\n\"1797630\";\"Ch’ing-yüan-hsien\";\"other\"\n\"1797630\";\"Qingxu\";\"other\"\n\"1797630\";\"Sukowhsien\";\"other\"\n\"1797630\";\"Sükowhsien\";\"other\"\n\"1797630\";\"T'sinyuan'\";\"other\"\n\"1797630\";\"Tsingyuanhsien\";\"other\"\n\"1797630\";\"Tsingyüanhsien\";\"other\"\n\"1797630\";\"T’sinyuan’\";\"other\"\n\"1797630\";\"qing yuan\";\"other\"\n\"1797630\";\"清源\";\"other\"\n\"1797645\";\"Qingyang\";\"main\"\n\"1797645\";\"Ch'ing-yang\";\"other\"\n\"1797645\";\"Ch'ing-yang-chen\";\"other\"\n\"1797645\";\"Ch’ing-yang\";\"other\"\n\"1797645\";\"Ch’ing-yang-chen\";\"other\"\n\"1797645\";\"Qingyangzhen\";\"other\"\n\"1797645\";\"青阳\";\"other\"\n\"1797646\";\"Qingyangyi\";\"main\"\n\"1797646\";\"Ch'ing-yang-i\";\"other\"\n\"1797646\";\"Ch’ing-yang-i\";\"other\"\n\"1797646\";\"Qingyangyi Zhen\";\"other\"\n\"1797646\";\"青羊驿\";\"other\"\n\"1797646\";\"青羊驿镇\";\"other\"\n\"1797656\";\"Qingcheng\";\"main\"\n\"1797656\";\"An-hua\";\"other\"\n\"1797656\";\"Ch'ing-yang\";\"other\"\n\"1797656\";\"Ch'ing-yang-hsien\";\"other\"\n\"1797656\";\"Ch’ing-yang\";\"other\"\n\"1797656\";\"Ch’ing-yang-hsien\";\"other\"\n\"1797656\";\"Qingcheng Zhen\";\"other\"\n\"1797656\";\"Qingyang\";\"other\"\n\"1797656\";\"Tsinyan\";\"other\"\n\"1797656\";\"庆城\";\"other\"\n\"1797656\";\"庆城镇\";\"other\"\n\"1797658\";\"Jinjiang\";\"main\"\n\"1797658\";\"Ch'ing-yang\";\"other\"\n\"1797658\";\"Ch'ing-yang-chen\";\"other\"\n\"1797658\";\"Chin-chiang\";\"other\"\n\"1797658\";\"Ch’ing-yang\";\"other\"\n\"1797658\";\"Ch’ing-yang-chen\";\"other\"\n\"1797658\";\"Qingyang\";\"other\"\n\"1797658\";\"晋江\";\"other\"\n\"1797676\";\"Qinglang\";\"main\"\n\"1797676\";\"Ch'ing-hsi\";\"other\"\n\"1797676\";\"Chiu-ch'ing-ch'i\";\"other\"\n\"1797676\";\"Chiu-ch’ing-ch’i\";\"other\"\n\"1797676\";\"Ch’ing-hsi\";\"other\"\n\"1797676\";\"Qingxi\";\"other\"\n\"1797677\";\"Qingxi\";\"main\"\n\"1797677\";\"Ch'ing-ch'i\";\"other\"\n\"1797677\";\"Choulin\";\"other\"\n\"1797677\";\"Ch’ing-ch’i\";\"other\"\n\"1797677\";\"Tsintsi\";\"other\"\n\"1797680\";\"Qingxi\";\"main\"\n\"1797680\";\"Ch'ing-ch'i\";\"other\"\n\"1797680\";\"Ch'ing-ch'i-hsu\";\"other\"\n\"1797680\";\"Ch'ing-ch'i-t'ang\";\"other\"\n\"1797680\";\"Ch'ing-hsi\";\"other\"\n\"1797680\";\"Ch'ing-hsi-hsu\";\"other\"\n\"1797680\";\"Ch’ing-ch’i\";\"other\"\n\"1797680\";\"Ch’ing-ch’i-hsü\";\"other\"\n\"1797680\";\"Ch’ing-ch’i-t’ang\";\"other\"\n\"1797680\";\"Ch’ing-hsi\";\"other\"\n\"1797680\";\"Ch’ing-hsi-hsü\";\"other\"\n\"1797680\";\"Qingxi Zhen\";\"other\"\n\"1797680\";\"Tsyang-kai\";\"other\"\n\"1797680\";\"qing xi\";\"other\"\n\"1797680\";\"清溪\";\"other\"\n\"1797736\";\"Qingshuihe\";\"main\"\n\"1797736\";\"Ch'in-ho\";\"other\"\n\"1797736\";\"Ch'ing-shui-ho\";\"other\"\n\"1797736\";\"Ch’in-ho\";\"other\"\n\"1797736\";\"Ch’ing-shui-ho\";\"other\"\n\"1797736\";\"Qinhe\";\"other\"\n\"1797736\";\"Qinhe Xiang\";\"other\"\n\"1797736\";\"亲和乡\";\"other\"\n\"1797736\";\"清水河\";\"other\"\n\"1797747\";\"Qingshui\";\"main\"\n\"1797747\";\"Ch'ing-shui-chen\";\"other\"\n\"1797747\";\"Ch'ing-shui-ho\";\"other\"\n\"1797747\";\"Ch’ing-shui-chen\";\"other\"\n\"1797747\";\"Ch’ing-shui-ho\";\"other\"\n\"1797747\";\"Qingshui Jiedao\";\"other\"\n\"1797747\";\"Qingshuizhen\";\"other\"\n\"1797747\";\"qing shui\";\"other\"\n\"1797747\";\"qing shui jie dao\";\"other\"\n\"1797747\";\"清水\";\"other\"\n\"1797747\";\"清水街道\";\"other\"\n\"1797793\";\"Qingquan\";\"main\"\n\"1797793\";\"Ch'i-shui\";\"other\"\n\"1797793\";\"Ch'i-shui-hsien-ch'eng\";\"other\"\n\"1797793\";\"Ch’i-shui\";\"other\"\n\"1797793\";\"Ch’i-shui-hsien-ch’eng\";\"other\"\n\"1797793\";\"Cincjuan'\";\"other\"\n\"1797793\";\"Hsi-shui\";\"other\"\n\"1797793\";\"Hsi-shui-hsien\";\"other\"\n\"1797793\";\"Kishui-hsien\";\"other\"\n\"1797793\";\"Sishui\";\"other\"\n\"1797793\";\"Xishui\";\"other\"\n\"1797793\";\"Цинцюань\";\"other\"\n\"1797793\";\"清泉\";\"other\"\n\"1797795\";\"Qingqiaoyi\";\"main\"\n\"1797795\";\"Ch'ing-ch'iao-ho\";\"other\"\n\"1797795\";\"Ch'ing-ch'iao-i\";\"other\"\n\"1797795\";\"Ch'ing-ch'iao-p'u\";\"other\"\n\"1797795\";\"Ch’ing-ch’iao-ho\";\"other\"\n\"1797795\";\"Ch’ing-ch’iao-i\";\"other\"\n\"1797795\";\"Ch’ing-ch’iao-p’u\";\"other\"\n\"1797795\";\"青桥驿\";\"other\"\n\"1797805\";\"Qingshuitang\";\"main\"\n\"1797805\";\"Ch'ing-p'ing\";\"other\"\n\"1797805\";\"Ch’ing-p’ing\";\"other\"\n\"1797805\";\"Qingping\";\"other\"\n\"1797805\";\"Qingping Zhen\";\"other\"\n\"1797805\";\"qing ping zhen\";\"other\"\n\"1797805\";\"qing shui tang\";\"other\"\n\"1797805\";\"青坪镇\";\"other\"\n\"1797805\";\"青水塘\";\"other\"\n\"1797836\";\"Qinglong\";\"main\"\n\"1797836\";\"Qinglong Zhen\";\"other\"\n\"1797836\";\"Qinglongjie\";\"other\"\n\"1797836\";\"qing long\";\"other\"\n\"1797836\";\"qing long jie\";\"other\"\n\"1797836\";\"qing long zhen\";\"other\"\n\"1797836\";\"青龙\";\"other\"\n\"1797836\";\"青龙街\";\"other\"\n\"1797836\";\"青龙镇\";\"other\"\n\"1797859\";\"Qingkou\";\"main\"\n\"1797859\";\"Ch'ing-k'ou\";\"other\"\n\"1797859\";\"Ch'ing-k'ou-chen\";\"other\"\n\"1797859\";\"Ch’ing-k’ou\";\"other\"\n\"1797859\";\"Ch’ing-k’ou-chen\";\"other\"\n\"1797859\";\"Ganyu\";\"other\"\n\"1797859\";\"Kan-yu\";\"other\"\n\"1797859\";\"Kan-yu-hsien\";\"other\"\n\"1797859\";\"Kan-yü\";\"other\"\n\"1797859\";\"Kan-yü-hsien\";\"other\"\n\"1797859\";\"Tsingkow\";\"other\"\n\"1797870\";\"Qingjiangqiao\";\"main\"\n\"1797870\";\"Ch'ing-chiang-ch'iao\";\"other\"\n\"1797870\";\"Ch’ing-chiang-ch’iao\";\"other\"\n\"1797870\";\"Qingjiang\";\"other\"\n\"1797870\";\"Qingjiang Xiang\";\"other\"\n\"1797873\";\"Huaiyin\";\"main\"\n\"1797873\";\"Ch'ing-chiang\";\"other\"\n\"1797873\";\"Ch'ing-chiang-p'u\";\"other\"\n\"1797873\";\"Ch'ing-chiang-shih\";\"other\"\n\"1797873\";\"Ch’ing-chiang\";\"other\"\n\"1797873\";\"Ch’ing-chiang-p’u\";\"other\"\n\"1797873\";\"Ch’ing-chiang-shih\";\"other\"\n\"1797873\";\"Huai-yin\";\"other\"\n\"1797873\";\"Huai-yin-ch'eng\";\"other\"\n\"1797873\";\"Huai-yin-ch’eng\";\"other\"\n\"1797873\";\"Huai-yin-hsien\";\"other\"\n\"1797873\";\"Huai-yin-shih\";\"other\"\n\"1797873\";\"Hwaiyin\";\"other\"\n\"1797873\";\"Hwaiyin-hsien\";\"other\"\n\"1797873\";\"Qingjiang\";\"other\"\n\"1797873\";\"Tsingkiangpo\";\"other\"\n\"1797873\";\"Tsinkiangpu\";\"other\"\n\"1797883\";\"Qinghua\";\"main\"\n\"1797883\";\"Ch'ing-hua\";\"other\"\n\"1797883\";\"Ch'ing-hua-chen\";\"other\"\n\"1797883\";\"Ch’ing-hua\";\"other\"\n\"1797883\";\"Ch’ing-hua-chen\";\"other\"\n\"1797883\";\"Qinghua Zhen\";\"other\"\n\"1797883\";\"青化\";\"other\"\n\"1797883\";\"青化镇\";\"other\"\n\"1797884\";\"Qinghua\";\"main\"\n\"1797884\";\"Ch'ing-feng-chen\";\"other\"\n\"1797884\";\"Ch'ing-hua\";\"other\"\n\"1797884\";\"Ch'ing-hua-chen\";\"other\"\n\"1797884\";\"Ch’ing-feng-chen\";\"other\"\n\"1797884\";\"Ch’ing-hua\";\"other\"\n\"1797884\";\"Ch’ing-hua-chen\";\"other\"\n\"1797884\";\"Hsia-ch'ing-hua\";\"other\"\n\"1797884\";\"Hsia-ch’ing-hua\";\"other\"\n\"1797884\";\"qing hua\";\"other\"\n\"1797884\";\"青化\";\"other\"\n\"1797905\";\"Qingguang\";\"main\"\n\"1797905\";\"Ch'ing-kuang\";\"other\"\n\"1797905\";\"Ch’ing-kuang\";\"other\"\n\"1797915\";\"Qingfu\";\"main\"\n\"1797915\";\"Ch'ing-fu\";\"other\"\n\"1797915\";\"Ch'ing-fu-hsien\";\"other\"\n\"1797915\";\"Ch’ing-fu\";\"other\"\n\"1797915\";\"Ch’ing-fu-hsien\";\"other\"\n\"1797915\";\"Kingfu-hsien\";\"other\"\n\"1797915\";\"qing fu\";\"other\"\n\"1797915\";\"庆符\";\"other\"\n\"1797929\";\"Qingdao\";\"main\"\n\"1797929\";\"Cching-tao\";\"other\"\n\"1797929\";\"Ch'ing-tao\";\"other\"\n\"1797929\";\"Ch'ing-tao-shih\";\"other\"\n\"1797929\";\"Ch’ing-tao\";\"other\"\n\"1797929\";\"Ch’ing-tao-shih\";\"other\"\n\"1797929\";\"Cindao\";\"other\"\n\"1797929\";\"Cingdao\";\"other\"\n\"1797929\";\"Qingdao Shi\";\"other\"\n\"1797929\";\"Thanh Đảo\";\"other\"\n\"1797929\";\"Tsingtao\";\"other\"\n\"1797929\";\"Tsingtau\";\"other\"\n\"1797929\";\"chingdao\";\"other\"\n\"1797929\";\"chyngdayw\";\"other\"\n\"1797929\";\"qing dao\";\"other\"\n\"1797929\";\"qing dao shi\";\"other\"\n\"1797929\";\"Čching-tao\";\"other\"\n\"1797929\";\"Čingdao\";\"other\"\n\"1797929\";\"Циндао\";\"other\"\n\"1797929\";\"چىڭداۋ شەھىرى\";\"other\"\n\"1797929\";\"چینگدائو\";\"other\"\n\"1797929\";\"青岛\";\"other\"\n\"1797929\";\"青岛市\";\"other\"\n\"1797929\";\"青島\";\"other\"\n\"1797929\";\"칭다오\";\"other\"\n\"1797933\";\"Qingcun\";\"main\"\n\"1797933\";\"Ch'ing-ts'un\";\"other\"\n\"1797933\";\"Ch'ing-ts'un-chiang\";\"other\"\n\"1797933\";\"Ch'ing-ts'un-chiang-chen\";\"other\"\n\"1797933\";\"Ch'ing-ts'un-kang\";\"other\"\n\"1797933\";\"Ch'ing-ts'un-kang-chen\";\"other\"\n\"1797933\";\"Ch’ing-ts’un\";\"other\"\n\"1797933\";\"Ch’ing-ts’un-chiang\";\"other\"\n\"1797933\";\"Ch’ing-ts’un-chiang-chen\";\"other\"\n\"1797933\";\"Ch’ing-ts’un-kang\";\"other\"\n\"1797933\";\"Ch’ing-ts’un-kang-chen\";\"other\"\n\"1797933\";\"Qingcungang\";\"other\"\n\"1797933\";\"青村\";\"other\"\n\"1797934\";\"Qingciyao\";\"main\"\n\"1797934\";\"Ch'ing-tz'u-yao\";\"other\"\n\"1797934\";\"Ch’ing-tz’u-yao\";\"other\"\n\"1797934\";\"Qingciyao Zhen\";\"other\"\n\"1797934\";\"青磁窑\";\"other\"\n\"1797934\";\"青磁窑镇\";\"other\"\n\"1797945\";\"Qingyuan\";\"main\"\n\"1797945\";\"Ch'ing-yuan\";\"other\"\n\"1797945\";\"Ch'ing-yuan-hsien\";\"other\"\n\"1797945\";\"Ch’ing-yüan\";\"other\"\n\"1797945\";\"Ch’ing-yüan-hsien\";\"other\"\n\"1797945\";\"Qingcheng\";\"other\"\n\"1797945\";\"Tsingyuan\";\"other\"\n\"1797945\";\"Tsingyun\";\"other\"\n\"1797945\";\"Tsingyunhsien\";\"other\"\n\"1797945\";\"Tsingyüan\";\"other\"\n\"1797945\";\"Tsingyün\";\"other\"\n\"1797945\";\"Tsingyünhsien\";\"other\"\n\"1797945\";\"清远\";\"other\"\n\"1797955\";\"Qindu\";\"main\"\n\"1797955\";\"Ch'in-tu\";\"other\"\n\"1797955\";\"Ch'in-tu-chen\";\"other\"\n\"1797955\";\"Ch’in-tu\";\"other\"\n\"1797955\";\"Ch’in-tu-chen\";\"other\"\n\"1797955\";\"Qindu Zhen\";\"other\"\n\"1797955\";\"Qinduzhen\";\"other\"\n\"1797955\";\"qin du\";\"other\"\n\"1797955\";\"qin du zhen\";\"other\"\n\"1797955\";\"秦度\";\"other\"\n\"1797955\";\"秦度镇\";\"other\"\n\"1797971\";\"Qimeng\";\"main\"\n\"1797971\";\"Ch'i-meng\";\"other\"\n\"1797971\";\"Ch’i-meng\";\"other\"\n\"1797972\";\"Qishan\";\"main\"\n\"1797972\";\"Ch'i-men\";\"other\"\n\"1797972\";\"Ch'i-men-hsien\";\"other\"\n\"1797972\";\"Ch’i-men\";\"other\"\n\"1797972\";\"Ch’i-men-hsien\";\"other\"\n\"1797972\";\"Kimen\";\"other\"\n\"1797972\";\"Kimenhsien\";\"other\"\n\"1797972\";\"Qimen\";\"other\"\n\"1797972\";\"Qishan Zhen\";\"other\"\n\"1797972\";\"qi shan\";\"other\"\n\"1797972\";\"祁山\";\"other\"\n\"1797988\";\"Qilin\";\"main\"\n\"1797988\";\"Ch'i-lin\";\"other\"\n\"1797988\";\"Ch'i-lin-chen\";\"other\"\n\"1797988\";\"Ch’i-lin\";\"other\"\n\"1797988\";\"Ch’i-lin-chen\";\"other\"\n\"1797988\";\"Qilin Zhen\";\"other\"\n\"1797988\";\"Qilinzhen\";\"other\"\n\"1797988\";\"麒麟\";\"other\"\n\"1797988\";\"麒麟镇\";\"other\"\n\"1798016\";\"Qili\";\"main\"\n\"1798016\";\"Qili Xiang\";\"other\"\n\"1798016\";\"七里\";\"other\"\n\"1798016\";\"七里乡\";\"other\"\n\"1798078\";\"Qidu\";\"main\"\n\"1798078\";\"Ch'i-tu\";\"other\"\n\"1798078\";\"Ch’i-tu\";\"other\"\n\"1798082\";\"Hongqiao\";\"main\"\n\"1798082\";\"Ch'i-tung\";\"other\"\n\"1798082\";\"Ch’i-tung\";\"other\"\n\"1798082\";\"Hung-ch'iao\";\"other\"\n\"1798082\";\"Hung-ch'iao-chen\";\"other\"\n\"1798082\";\"Hung-ch'iao-shih\";\"other\"\n\"1798082\";\"Hung-ch’iao\";\"other\"\n\"1798082\";\"Hung-ch’iao-chen\";\"other\"\n\"1798082\";\"Hung-ch’iao-shih\";\"other\"\n\"1798082\";\"Hungkiao\";\"other\"\n\"1798082\";\"Khuncjao\";\"other\"\n\"1798082\";\"Qidong\";\"other\"\n\"1798082\";\"Хунцяо\";\"other\"\n\"1798082\";\"洪桥\";\"other\"\n\"1798093\";\"Qibu\";\"main\"\n\"1798093\";\"Qibu Xiang\";\"other\"\n\"1798093\";\"齐埠\";\"other\"\n\"1798093\";\"齐埠乡\";\"other\"\n\"1798095\";\"Qibu\";\"main\"\n\"1798095\";\"Ch'i-pu\";\"other\"\n\"1798095\";\"Ch’i-pu\";\"other\"\n\"1798105\";\"Qiaozhuang\";\"main\"\n\"1798105\";\"Ch'iao-ch'un\";\"other\"\n\"1798105\";\"Ch'iao-chuang\";\"other\"\n\"1798105\";\"Ch'iao-chuang-chen\";\"other\"\n\"1798105\";\"Ch'ing-ch'uan\";\"other\"\n\"1798105\";\"Ch’iao-chuang\";\"other\"\n\"1798105\";\"Ch’iao-chuang-chen\";\"other\"\n\"1798105\";\"Ch’iao-ch’un\";\"other\"\n\"1798105\";\"Ch’ing-ch’uan\";\"other\"\n\"1798105\";\"Qingchuan\";\"other\"\n\"1798105\";\"qiao zhuang\";\"other\"\n\"1798105\";\"乔庄\";\"other\"\n\"1798107\";\"Qiaozhen\";\"main\"\n\"1798107\";\"Ch'iao-chen\";\"other\"\n\"1798107\";\"Ch'iao-shang-chen\";\"other\"\n\"1798107\";\"Ch’iao-chen\";\"other\"\n\"1798107\";\"Ch’iao-shang-chen\";\"other\"\n\"1798107\";\"Tsyaoshanchzhen'\";\"other\"\n\"1798107\";\"Tsyaoshanchzhen’\";\"other\"\n\"1798107\";\"桥镇\";\"other\"\n\"1798116\";\"Qiaowa\";\"main\"\n\"1798116\";\"Bowa\";\"other\"\n\"1798116\";\"Jiaowu\";\"other\"\n\"1798116\";\"Mu-li-tsang-tsu-tzu-chih-hsien\";\"other\"\n\"1798116\";\"Muli\";\"other\"\n\"1798116\";\"qiao wa\";\"other\"\n\"1798116\";\"乔瓦\";\"other\"\n\"1798133\";\"Qiaotou\";\"main\"\n\"1798133\";\"桥头\";\"other\"\n\"1798134\";\"Qiaotou\";\"main\"\n\"1798134\";\"桥头\";\"other\"\n\"1798135\";\"Qiaotou\";\"main\"\n\"1798135\";\"Ch'iao-t'ou\";\"other\"\n\"1798135\";\"Ch'iao-t'ou-chen\";\"other\"\n\"1798135\";\"Ch’iao-t’ou\";\"other\"\n\"1798135\";\"Ch’iao-t’ou-chen\";\"other\"\n\"1798135\";\"Qiaotou Zhen\";\"other\"\n\"1798135\";\"qiao tou\";\"other\"\n\"1798135\";\"qiao tou zhen\";\"other\"\n\"1798135\";\"桥头\";\"other\"\n\"1798135\";\"桥头镇\";\"other\"\n\"1798150\";\"Qiaoshe\";\"main\"\n\"1798150\";\"Ch'iao-she\";\"other\"\n\"1798150\";\"Ch’iao-she\";\"other\"\n\"1798150\";\"Qiaoshe Zhen\";\"other\"\n\"1798150\";\"樵舍\";\"other\"\n\"1798150\";\"樵舍镇\";\"other\"\n\"1798158\";\"Qiaonan\";\"main\"\n\"1798158\";\"Ch'iao-nan\";\"other\"\n\"1798158\";\"Ch’iao-nan\";\"other\"\n\"1798158\";\"Qiaonan Zhen\";\"other\"\n\"1798158\";\"qiao nan\";\"other\"\n\"1798158\";\"桥南\";\"other\"\n\"1798176\";\"Qiaojiang\";\"main\"\n\"1798176\";\"Ch'iao-chiang\";\"other\"\n\"1798176\";\"Ch’iao-chiang\";\"other\"\n\"1798183\";\"Qiaogu\";\"main\"\n\"1798190\";\"Qiaodong\";\"main\"\n\"1798190\";\"Ch'iao-tung\";\"other\"\n\"1798190\";\"Ch’iao-tung\";\"other\"\n\"1798190\";\"Qiaodong Zhen\";\"other\"\n\"1798190\";\"桥东\";\"other\"\n\"1798190\";\"桥东镇\";\"other\"\n\"1798203\";\"Qi’an\";\"main\"\n\"1798203\";\"Qi'an\";\"ascii\"\n\"1798203\";\"Ch'i-an\";\"other\"\n\"1798203\";\"Ch'i-an-chen\";\"other\"\n\"1798203\";\"Ch’i-an\";\"other\"\n\"1798203\";\"Ch’i-an-chen\";\"other\"\n\"1798203\";\"Qi'an Zhen\";\"other\"\n\"1798203\";\"Qi'anzhen\";\"other\"\n\"1798203\";\"Qi’an Zhen\";\"other\"\n\"1798203\";\"Qi’anzhen\";\"other\"\n\"1798203\";\"骑岸\";\"other\"\n\"1798203\";\"骑岸镇\";\"other\"\n\"1798227\";\"Qianxiang\";\"main\"\n\"1798227\";\"Qianxiang Zhen\";\"other\"\n\"1798227\";\"qian xiang\";\"other\"\n\"1798227\";\"千祥\";\"other\"\n\"1798227\";\"千祥镇\";\"other\"\n\"1798271\";\"Qianqiao\";\"main\"\n\"1798271\";\"Ch'ien-ch'iao-chen\";\"other\"\n\"1798271\";\"Ch’ien-ch’iao-chen\";\"other\"\n\"1798271\";\"钱桥\";\"other\"\n\"1798292\";\"Qianling\";\"main\"\n\"1798292\";\"Baojing\";\"other\"\n\"1798292\";\"Pao-ching\";\"other\"\n\"1798292\";\"Pao-ching-hsien\";\"other\"\n\"1798292\";\"Paotsing\";\"other\"\n\"1798292\";\"Paotsing-hsien\";\"other\"\n\"1798292\";\"qian ling\";\"other\"\n\"1798292\";\"迁陵\";\"other\"\n\"1798299\";\"Qiankou\";\"main\"\n\"1798299\";\"Ch'ien-k'ou\";\"other\"\n\"1798299\";\"Ch'ien-k'ou-chen\";\"other\"\n\"1798299\";\"Ch’ien-k’ou\";\"other\"\n\"1798299\";\"Ch’ien-k’ou-chen\";\"other\"\n\"1798299\";\"Qiankou Zhen\";\"other\"\n\"1798299\";\"Tsienkow\";\"other\"\n\"1798299\";\"qian kou\";\"other\"\n\"1798299\";\"qian kou zhen\";\"other\"\n\"1798299\";\"潜口\";\"other\"\n\"1798299\";\"潜口镇\";\"other\"\n\"1798343\";\"Qiangtou\";\"main\"\n\"1798343\";\"Ch'iang-t'ou\";\"other\"\n\"1798343\";\"Ch'iang-t'ou-chen\";\"other\"\n\"1798343\";\"Ch’iang-t’ou\";\"other\"\n\"1798343\";\"Ch’iang-t’ou-chen\";\"other\"\n\"1798343\";\"Qiangtou Zhen\";\"other\"\n\"1798343\";\"qiang tou\";\"other\"\n\"1798343\";\"qiang tou zhen\";\"other\"\n\"1798343\";\"墙头\";\"other\"\n\"1798343\";\"墙头镇\";\"other\"\n\"1798349\";\"Qiangbai\";\"main\"\n\"1798349\";\"Ch'iang-pai\";\"other\"\n\"1798349\";\"Ch'iang-pai-chen\";\"other\"\n\"1798349\";\"Ch’iang-pai\";\"other\"\n\"1798349\";\"Ch’iang-pai-chen\";\"other\"\n\"1798349\";\"Qiangbai Zhen\";\"other\"\n\"1798349\";\"qiang bai\";\"other\"\n\"1798349\";\"羌白\";\"other\"\n\"1798353\";\"Qianfang\";\"main\"\n\"1798353\";\"Ch'ien-fang\";\"other\"\n\"1798353\";\"Ch’ien-fang\";\"other\"\n\"1798353\";\"Qianfang Zhen\";\"other\"\n\"1798353\";\"前坊\";\"other\"\n\"1798353\";\"前坊镇\";\"other\"\n\"1798361\";\"Qiandong\";\"main\"\n\"1798361\";\"Ch'ien-tung\";\"other\"\n\"1798361\";\"Ch'ien-tung-chen\";\"other\"\n\"1798361\";\"Ch’ien-tung\";\"other\"\n\"1798361\";\"Ch’ien-tung-chen\";\"other\"\n\"1798361\";\"Qiandong Zhen\";\"other\"\n\"1798361\";\"qian dong\";\"other\"\n\"1798361\";\"qian dong zhen\";\"other\"\n\"1798361\";\"阡东\";\"other\"\n\"1798361\";\"阡东镇\";\"other\"\n\"1798362\";\"Qiandong\";\"main\"\n\"1798362\";\"Ch'ien-tung\";\"other\"\n\"1798362\";\"Ch'ien-tung-hsu\";\"other\"\n\"1798362\";\"Ch’ien-tung\";\"other\"\n\"1798362\";\"Ch’ien-tung-hsü\";\"other\"\n\"1798362\";\"Qiandong Zhen\";\"other\"\n\"1798362\";\"qian dong\";\"other\"\n\"1798362\";\"钱东\";\"other\"\n\"1798371\";\"Qiancheng\";\"main\"\n\"1798371\";\"Ch'ien-ch'eng\";\"other\"\n\"1798371\";\"Ch'ien-ch'eng-chen\";\"other\"\n\"1798371\";\"Ch'ien-yang\";\"other\"\n\"1798371\";\"Ch'ien-yang-hsien\";\"other\"\n\"1798371\";\"Chiu-ch'ien-yang\";\"other\"\n\"1798371\";\"Chiu-ch’ien-yang\";\"other\"\n\"1798371\";\"Ch’ien-ch’eng\";\"other\"\n\"1798371\";\"Ch’ien-ch’eng-chen\";\"other\"\n\"1798371\";\"Ch’ien-yang\";\"other\"\n\"1798371\";\"Ch’ien-yang-hsien\";\"other\"\n\"1798371\";\"Kienyang\";\"other\"\n\"1798371\";\"Kienyang-hsien\";\"other\"\n\"1798371\";\"Tsyan'chen\";\"other\"\n\"1798371\";\"Tsyan’chen\";\"other\"\n\"1798371\";\"qian cheng\";\"other\"\n\"1798371\";\"黔城\";\"other\"\n\"1798382\";\"Qiagai\";\"main\"\n\"1798382\";\"恰盖\";\"other\"\n\"1798407\";\"Puzi\";\"main\"\n\"1798407\";\"P'u-tzu-chiao\";\"other\"\n\"1798407\";\"Puzi Zhen\";\"other\"\n\"1798407\";\"Puzijiao\";\"other\"\n\"1798407\";\"P’u-tzu-chiao\";\"other\"\n\"1798422\";\"Puyang\";\"main\"\n\"1798422\";\"K'ai-chou\";\"other\"\n\"1798422\";\"Kaichow\";\"other\"\n\"1798422\";\"K’ai-chou\";\"other\"\n\"1798422\";\"P'u-yang-hsien\";\"other\"\n\"1798422\";\"Puyan'\";\"other\"\n\"1798422\";\"Puyan’\";\"other\"\n\"1798422\";\"P’u-yang-hsien\";\"other\"\n\"1798424\";\"Puyang\";\"main\"\n\"1798424\";\"Puyang Zhen\";\"other\"\n\"1798424\";\"pu yang zhen\";\"other\"\n\"1798424\";\"浦阳\";\"other\"\n\"1798424\";\"浦阳镇\";\"other\"\n\"1798425\";\"Puyang\";\"main\"\n\"1798425\";\"P'u-chiang\";\"other\"\n\"1798425\";\"P'u-chiang-hsien-ch'eng\";\"other\"\n\"1798425\";\"P'u-yang-chen\";\"other\"\n\"1798425\";\"Pujiang\";\"other\"\n\"1798425\";\"Pukiang\";\"other\"\n\"1798425\";\"Pukianghsien\";\"other\"\n\"1798425\";\"P’u-chiang\";\"other\"\n\"1798425\";\"P’u-chiang-hsien-ch’eng\";\"other\"\n\"1798425\";\"P’u-yang-chen\";\"other\"\n\"1798427\";\"Pucheng\";\"main\"\n\"1798427\";\"P'u\";\"other\"\n\"1798427\";\"P'u-hsien\";\"other\"\n\"1798427\";\"Pusyan'\";\"other\"\n\"1798427\";\"Pusyan’\";\"other\"\n\"1798427\";\"Puxian\";\"other\"\n\"1798427\";\"P’u\";\"other\"\n\"1798427\";\"P’u-hsien\";\"other\"\n\"1798427\";\"pu cheng\";\"other\"\n\"1798427\";\"蒲城\";\"other\"\n\"1798449\";\"Putian\";\"main\"\n\"1798449\";\"Hinghwa\";\"other\"\n\"1798449\";\"Hinghwafu\";\"other\"\n\"1798449\";\"Hsing-hua\";\"other\"\n\"1798449\";\"P'u-t'ien\";\"other\"\n\"1798449\";\"P'u-t'ien-hsien\";\"other\"\n\"1798449\";\"P'u-t'ien-hsien-ch'eng\";\"other\"\n\"1798449\";\"Putjan'\";\"other\"\n\"1798449\";\"P’u-t’ien\";\"other\"\n\"1798449\";\"P’u-t’ien-hsien\";\"other\"\n\"1798449\";\"P’u-t’ien-hsien-ch’eng\";\"other\"\n\"1798449\";\"Путянь\";\"other\"\n\"1798449\";\"莆田\";\"other\"\n\"1798463\";\"Pushang\";\"main\"\n\"1798463\";\"Pushang Zhen\";\"other\"\n\"1798463\";\"埔上\";\"other\"\n\"1798463\";\"埔上镇\";\"other\"\n\"1798473\";\"Puqi\";\"main\"\n\"1798473\";\"P'u-ch'i\";\"other\"\n\"1798473\";\"P'u-ch'i-hsien\";\"other\"\n\"1798473\";\"Puchihhsien\";\"other\"\n\"1798473\";\"P’u-ch’i\";\"other\"\n\"1798473\";\"P’u-ch’i-hsien\";\"other\"\n\"1798480\";\"Pumiao\";\"main\"\n\"1798480\";\"P'u-ching\";\"other\"\n\"1798480\";\"P'u-ching-chen\";\"other\"\n\"1798480\";\"P'u-ching-hsu\";\"other\"\n\"1798480\";\"P'u-maio\";\"other\"\n\"1798480\";\"P'u-miao-chen\";\"other\"\n\"1798480\";\"P'u-miao-hsu\";\"other\"\n\"1798480\";\"Pu chi\";\"other\"\n\"1798480\";\"P’u-ching\";\"other\"\n\"1798480\";\"P’u-ching-chen\";\"other\"\n\"1798480\";\"P’u-ching-hsü\";\"other\"\n\"1798480\";\"P’u-maio\";\"other\"\n\"1798480\";\"P’u-miao-chen\";\"other\"\n\"1798480\";\"P’u-miao-hsü\";\"other\"\n\"1798480\";\"Yongning\";\"other\"\n\"1798480\";\"Yung-ning\";\"other\"\n\"1798480\";\"Yung-ning-hsien\";\"other\"\n\"1798490\";\"Pulandian\";\"main\"\n\"1798490\";\"Adams\";\"other\"\n\"1798490\";\"Hou-lung-fang\";\"other\"\n\"1798490\";\"Hsin-chin\";\"other\"\n\"1798490\";\"Huranten\";\"other\"\n\"1798490\";\"P'u-lan-tien\";\"other\"\n\"1798490\";\"P'u-lan-tien-chen\";\"other\"\n\"1798490\";\"Po-lan-te\";\"other\"\n\"1798490\";\"P’u-lan-tien\";\"other\"\n\"1798490\";\"P’u-lan-tien-chen\";\"other\"\n\"1798490\";\"Xinjin\";\"other\"\n\"1798492\";\"Pukou\";\"main\"\n\"1798492\";\"Pukou Xiang\";\"other\"\n\"1798495\";\"Pujijie\";\"main\"\n\"1798495\";\"P'u-chi-chen\";\"other\"\n\"1798495\";\"P'u-chi-chieh\";\"other\"\n\"1798495\";\"P’u-chi-chen\";\"other\"\n\"1798495\";\"P’u-chi-chieh\";\"other\"\n\"1798495\";\"pu ji jie\";\"other\"\n\"1798495\";\"普集街\";\"other\"\n\"1798500\";\"Wugong\";\"main\"\n\"1798500\";\"P'u-chi\";\"other\"\n\"1798500\";\"P'u-chi-chen\";\"other\"\n\"1798500\";\"Puji\";\"other\"\n\"1798500\";\"Puji Zhen\";\"other\"\n\"1798500\";\"P’u-chi\";\"other\"\n\"1798500\";\"P’u-chi-chen\";\"other\"\n\"1798500\";\"Wu-kung\";\"other\"\n\"1798500\";\"pu ji zhen\";\"other\"\n\"1798500\";\"wu gong\";\"other\"\n\"1798500\";\"普集镇\";\"other\"\n\"1798500\";\"武功\";\"other\"\n\"1798501\";\"Puji\";\"main\"\n\"1798501\";\"P'u-chi\";\"other\"\n\"1798501\";\"Pujichang\";\"other\"\n\"1798501\";\"P’u-chi\";\"other\"\n\"1798501\";\"pu ji\";\"other\"\n\"1798501\";\"普济\";\"other\"\n\"1798505\";\"Puji\";\"main\"\n\"1798505\";\"P'u-ke\";\"other\"\n\"1798505\";\"P'u-ko\";\"other\"\n\"1798505\";\"P'u-ko-ch'ang\";\"other\"\n\"1798505\";\"P'u-ko-she-chih-chu\";\"other\"\n\"1798505\";\"Puge\";\"other\"\n\"1798505\";\"Pule\";\"other\"\n\"1798505\";\"P’u-ke\";\"other\"\n\"1798505\";\"P’u-ko\";\"other\"\n\"1798505\";\"P’u-ko-ch’ang\";\"other\"\n\"1798505\";\"P’u-ko-she-chih-chü\";\"other\"\n\"1798505\";\"pu ji\";\"other\"\n\"1798505\";\"普基\";\"other\"\n\"1798508\";\"Puhua\";\"main\"\n\"1798508\";\"P'u-hua-chen\";\"other\"\n\"1798508\";\"Puhua Zhen\";\"other\"\n\"1798508\";\"P’u-hua-chen\";\"other\"\n\"1798508\";\"pu hua\";\"other\"\n\"1798508\";\"普化\";\"other\"\n\"1798513\";\"Puhechang\";\"main\"\n\"1798513\";\"P'u-ho\";\"other\"\n\"1798513\";\"P'u-ho-ch'ang\";\"other\"\n\"1798513\";\"Puhe\";\"other\"\n\"1798513\";\"P’u-ho\";\"other\"\n\"1798513\";\"P’u-ho-ch’ang\";\"other\"\n\"1798532\";\"Pucheng Chengguanzhen\";\"main\"\n\"1798532\";\"P'u-ch'eng-hsien\";\"other\"\n\"1798532\";\"P’u-ch’eng-hsien\";\"other\"\n\"1798532\";\"蒲城城关镇\";\"other\"\n\"1798548\";\"Poyang\";\"main\"\n\"1798548\";\"Boyang\";\"other\"\n\"1798548\";\"Jao-chou\";\"other\"\n\"1798548\";\"Jaochow\";\"other\"\n\"1798548\";\"P'o-yang-chen\";\"other\"\n\"1798548\";\"P'o-yang-hsien\";\"other\"\n\"1798548\";\"P'o-yang-hsien-ch'eng\";\"other\"\n\"1798548\";\"Pojankhu\";\"other\"\n\"1798548\";\"Поянху\";\"other\"\n\"1798559\";\"Potou\";\"main\"\n\"1798559\";\"po tou\";\"other\"\n\"1798559\";\"坡头\";\"other\"\n\"1798564\";\"Wangge’ertang\";\"main\"\n\"1798564\";\"Wangge'ertang\";\"ascii\"\n\"1798564\";\"Panggurtang\";\"other\"\n\"1798564\";\"Ponggartang\";\"other\"\n\"1798564\";\"Wangge'ertang Xiang\";\"other\"\n\"1798564\";\"Wangge’ertang Xiang\";\"other\"\n\"1798564\";\"Yuan-ka-t'an\";\"other\"\n\"1798564\";\"Yüan-ka-t’an\";\"other\"\n\"1798564\";\"wang ge er tang\";\"other\"\n\"1798564\";\"བང་གུར་ཐང\";\"other\"\n\"1798564\";\"王格尔塘\";\"other\"\n\"1798564\";\"王格尔塘乡\";\"other\"\n\"1798587\";\"Pogan\";\"main\"\n\"1798587\";\"P'o-kan\";\"other\"\n\"1798587\";\"P'o-kan-chieh\";\"other\"\n\"1798587\";\"Pogan Xiang\";\"other\"\n\"1798587\";\"P’o-kan\";\"other\"\n\"1798587\";\"P’o-kan-chieh\";\"other\"\n\"1798587\";\"珀玕\";\"other\"\n\"1798587\";\"珀玕乡\";\"other\"\n\"1798598\";\"Pitong\";\"main\"\n\"1798598\";\"P'i\";\"other\"\n\"1798598\";\"P'i-hsien\";\"other\"\n\"1798598\";\"Pisyan'\";\"other\"\n\"1798598\";\"Pisyan’\";\"other\"\n\"1798598\";\"Pixian\";\"other\"\n\"1798598\";\"P’i\";\"other\"\n\"1798598\";\"P’i-hsien\";\"other\"\n\"1798598\";\"pi tong\";\"other\"\n\"1798598\";\"郫筒\";\"other\"\n\"1798600\";\"Pisha\";\"main\"\n\"1798600\";\"Dongfeng\";\"other\"\n\"1798600\";\"Ning-nan-hsien\";\"other\"\n\"1798600\";\"Ningnan\";\"other\"\n\"1798600\";\"Tung-feng-kung-she\";\"other\"\n\"1798600\";\"pi sha\";\"other\"\n\"1798600\";\"披砂\";\"other\"\n\"1798632\";\"Pingyin\";\"main\"\n\"1798632\";\"P'ing-yin-hsien\";\"other\"\n\"1798632\";\"P’ing-yin-hsien\";\"other\"\n\"1798634\";\"Pingyi\";\"main\"\n\"1798634\";\"P'ing-i\";\"other\"\n\"1798634\";\"P'ing-i-chen\";\"other\"\n\"1798634\";\"P'ing-i-chi\";\"other\"\n\"1798634\";\"P’ing-i\";\"other\"\n\"1798634\";\"P’ing-i-chen\";\"other\"\n\"1798634\";\"P’ing-i-chi\";\"other\"\n\"1798634\";\"Ta-p'ing-i\";\"other\"\n\"1798634\";\"Ta-p’ing-i\";\"other\"\n\"1798636\";\"Gutao\";\"main\"\n\"1798636\";\"P'ing-yao-hsien\";\"other\"\n\"1798636\";\"Pin'yao\";\"other\"\n\"1798636\";\"Pingyao\";\"other\"\n\"1798636\";\"Pinujao\";\"other\"\n\"1798636\";\"Pin’yao\";\"other\"\n\"1798636\";\"P’ing-yao-hsien\";\"other\"\n\"1798636\";\"gu tao\";\"other\"\n\"1798636\";\"ping yao gu cheng\";\"other\"\n\"1798636\";\"ping yao xian\";\"other\"\n\"1798636\";\"Пинъяо\";\"other\"\n\"1798636\";\"古陶\";\"other\"\n\"1798636\";\"平遥县\";\"other\"\n\"1798636\";\"平遥古城\";\"other\"\n\"1798654\";\"Pingxiang\";\"main\"\n\"1798654\";\"Dingsiang\";\"other\"\n\"1798654\";\"P'ing-hsiang\";\"other\"\n\"1798654\";\"P'ing-hsiang-chen\";\"other\"\n\"1798654\";\"P'ing-hsiang-hsien\";\"other\"\n\"1798654\";\"P'ing-hsiang-hsien-ch'eng\";\"other\"\n\"1798654\";\"P'ing-hsiang-shih\";\"other\"\n\"1798654\";\"Pingsiang\";\"other\"\n\"1798654\";\"Pingsiang-hsien\";\"other\"\n\"1798654\";\"P’ing-hsiang\";\"other\"\n\"1798654\";\"P’ing-hsiang-chen\";\"other\"\n\"1798654\";\"P’ing-hsiang-hsien\";\"other\"\n\"1798654\";\"P’ing-hsiang-hsien-ch’eng\";\"other\"\n\"1798654\";\"P’ing-hsiang-shih\";\"other\"\n\"1798688\";\"Qingyang\";\"main\"\n\"1798688\";\"P'ing-shun-hsien\";\"other\"\n\"1798688\";\"Pingshun\";\"other\"\n\"1798688\";\"Pinshun'\";\"other\"\n\"1798688\";\"Pinshun’\";\"other\"\n\"1798688\";\"P’ing-shun-hsien\";\"other\"\n\"1798688\";\"qing yang\";\"other\"\n\"1798688\";\"青羊\";\"other\"\n\"1798689\";\"Pingshui\";\"main\"\n\"1798689\";\"P'ing-shui-chen\";\"other\"\n\"1798689\";\"Pingshui Zhen\";\"other\"\n\"1798689\";\"P’ing-shui-chen\";\"other\"\n\"1798689\";\"ping shui zhen\";\"other\"\n\"1798689\";\"平水\";\"other\"\n\"1798689\";\"平水镇\";\"other\"\n\"1798708\";\"Pingshan\";\"main\"\n\"1798708\";\"P'ing-shan-hsu\";\"other\"\n\"1798708\";\"P'ing-shan-shih\";\"other\"\n\"1798708\";\"Pingshan Zhen\";\"other\"\n\"1798708\";\"P’ing-shan-hsü\";\"other\"\n\"1798708\";\"P’ing-shan-shih\";\"other\"\n\"1798708\";\"屏山\";\"other\"\n\"1798708\";\"屏山镇\";\"other\"\n\"1798710\";\"Pingshan\";\"main\"\n\"1798710\";\"Lu-ch'uan\";\"other\"\n\"1798710\";\"Lu-ch'uan-hsien\";\"other\"\n\"1798710\";\"Lu-ch’üan\";\"other\"\n\"1798710\";\"Lu-ch’üan-hsien\";\"other\"\n\"1798710\";\"Luquan\";\"other\"\n\"1798710\";\"P'ing-shan-chen\";\"other\"\n\"1798710\";\"P’ing-shan-chen\";\"other\"\n\"1798710\";\"ping shan\";\"other\"\n\"1798710\";\"屏山\";\"other\"\n\"1798713\";\"Pingshan\";\"main\"\n\"1798713\";\"Hui-tung\";\"other\"\n\"1798713\";\"Huidong\";\"other\"\n\"1798713\";\"Ping-shan-hsu\";\"other\"\n\"1798713\";\"Ping-shan-hsü\";\"other\"\n\"1798713\";\"平山\";\"other\"\n\"1798715\";\"Pingshan\";\"main\"\n\"1798715\";\"P'ing-shan-hsu\";\"other\"\n\"1798715\";\"Phyungsan\";\"other\"\n\"1798715\";\"Pingshan Jiedao\";\"other\"\n\"1798715\";\"P’ing-shan-hsü\";\"other\"\n\"1798715\";\"ping shan\";\"other\"\n\"1798715\";\"坪山\";\"other\"\n\"1798733\";\"Pingnan\";\"main\"\n\"1798733\";\"Pingnam\";\"other\"\n\"1798733\";\"Pingnam-hsien\";\"other\"\n\"1798733\";\"Pingnamyun\";\"other\"\n\"1798733\";\"Pingnamyün\";\"other\"\n\"1798733\";\"平南\";\"other\"\n\"1798735\";\"Pingmu\";\"main\"\n\"1798735\";\"P'ing-mou\";\"other\"\n\"1798735\";\"P'ing-mou-chen\";\"other\"\n\"1798735\";\"P'ing-shui\";\"other\"\n\"1798735\";\"Pingmu Zhen\";\"other\"\n\"1798735\";\"P’ing-mou\";\"other\"\n\"1798735\";\"P’ing-mou-chen\";\"other\"\n\"1798735\";\"P’ing-shui\";\"other\"\n\"1798735\";\"平木\";\"other\"\n\"1798735\";\"平木镇\";\"other\"\n\"1798739\";\"Pingma\";\"main\"\n\"1798739\";\"P'ing-ma-chen\";\"other\"\n\"1798739\";\"P’ing-ma-chen\";\"other\"\n\"1798739\";\"T'ien-tung\";\"other\"\n\"1798739\";\"Tiandong\";\"other\"\n\"1798739\";\"T’ien-tung\";\"other\"\n\"1798739\";\"ping ma\";\"other\"\n\"1798739\";\"平马\";\"other\"\n\"1798745\";\"Pingluo\";\"main\"\n\"1798745\";\"Pingluo Zhen\";\"other\"\n\"1798745\";\"平洛\";\"other\"\n\"1798745\";\"平洛镇\";\"other\"\n\"1798749\";\"Pinglumiao\";\"main\"\n\"1798749\";\"Pinglu\";\"other\"\n\"1798749\";\"ping lu miao\";\"other\"\n\"1798749\";\"平路庙\";\"other\"\n\"1798752\";\"Pingling\";\"main\"\n\"1798752\";\"P'ing-ling-hsu\";\"other\"\n\"1798752\";\"Pingling Zhen\";\"other\"\n\"1798752\";\"P’ing-ling-hsü\";\"other\"\n\"1798752\";\"ping ling\";\"other\"\n\"1798752\";\"平陵\";\"other\"\n\"1798760\";\"Pingliang\";\"main\"\n\"1798760\";\"P'ing-liang-hsien\";\"other\"\n\"1798760\";\"P'ing-liang-shih\";\"other\"\n\"1798760\";\"Pinljan\";\"other\"\n\"1798760\";\"Pinlyan\";\"other\"\n\"1798760\";\"P’ing-liang-hsien\";\"other\"\n\"1798760\";\"P’ing-liang-shih\";\"other\"\n\"1798760\";\"Пинлян\";\"other\"\n\"1798768\";\"Pingle\";\"main\"\n\"1798768\";\"Chiu-p'ing-lo\";\"other\"\n\"1798768\";\"Chiu-p’ing-lo\";\"other\"\n\"1798768\";\"P'ing-lo\";\"other\"\n\"1798768\";\"P'ing-lo-chen\";\"other\"\n\"1798768\";\"P'ing-lo-hsien\";\"other\"\n\"1798768\";\"P’ing-lo\";\"other\"\n\"1798768\";\"P’ing-lo-chen\";\"other\"\n\"1798768\";\"P’ing-lo-hsien\";\"other\"\n\"1798768\";\"ping le\";\"other\"\n\"1798768\";\"平乐\";\"other\"\n\"1798775\";\"Pingkan\";\"main\"\n\"1798775\";\"Pingkan Zhen\";\"other\"\n\"1798775\";\"坪坎\";\"other\"\n\"1798775\";\"坪坎镇\";\"other\"\n\"1798783\";\"Hanchang\";\"main\"\n\"1798783\";\"P'ing-chiang\";\"other\"\n\"1798783\";\"Ping-chiang-hsien\";\"other\"\n\"1798783\";\"Pingjiang\";\"other\"\n\"1798783\";\"Pingkiang-hsien\";\"other\"\n\"1798783\";\"P’ing-chiang\";\"other\"\n\"1798783\";\"han chang\";\"other\"\n\"1798783\";\"汉昌\";\"other\"\n\"1798784\";\"Pingjiang\";\"main\"\n\"1798784\";\"P'ing-chiang\";\"other\"\n\"1798784\";\"P’ing-chiang\";\"other\"\n\"1798799\";\"Pinghai\";\"main\"\n\"1798799\";\"Pinghai Zhen\";\"other\"\n\"1798799\";\"Pinghoi\";\"other\"\n\"1798799\";\"ping hai\";\"other\"\n\"1798799\";\"平海\";\"other\"\n\"1798805\";\"Pingpu\";\"main\"\n\"1798805\";\"P'ing-kou-p'u\";\"other\"\n\"1798805\";\"Pinggoupu\";\"other\"\n\"1798805\";\"Pingpu Zhen\";\"other\"\n\"1798805\";\"P’ing-kou-p’u\";\"other\"\n\"1798805\";\"ping pu\";\"other\"\n\"1798805\";\"ping pu zhen\";\"other\"\n\"1798805\";\"平铺\";\"other\"\n\"1798805\";\"平铺镇\";\"other\"\n\"1798813\";\"Pingfeng\";\"main\"\n\"1798813\";\"平峰\";\"other\"\n\"1798821\";\"Pingdu\";\"main\"\n\"1798821\";\"P'ing-tu\";\"other\"\n\"1798821\";\"P'ing-tu-hsien\";\"other\"\n\"1798821\";\"Pindu\";\"other\"\n\"1798821\";\"P’ing-tu\";\"other\"\n\"1798821\";\"P’ing-tu-hsien\";\"other\"\n\"1798821\";\"Пинду\";\"other\"\n\"1798827\";\"Pingdingshan\";\"main\"\n\"1798827\";\"Chu-ko-chen\";\"other\"\n\"1798827\";\"Chu-ko-miao\";\"other\"\n\"1798827\";\"P'ing-ting-shan\";\"other\"\n\"1798827\";\"P'ing-ting-shan-shih\";\"other\"\n\"1798827\";\"Pindinshan'\";\"other\"\n\"1798827\";\"Pindinshan’\";\"other\"\n\"1798827\";\"P’ing-ting-shan\";\"other\"\n\"1798827\";\"P’ing-ting-shan-shih\";\"other\"\n\"1798827\";\"Пиндиншань\";\"other\"\n\"1798827\";\"平顶山\";\"other\"\n\"1798828\";\"Guanshan\";\"main\"\n\"1798828\";\"P'ing-ting\";\"other\"\n\"1798828\";\"P'ing-ting-hsien\";\"other\"\n\"1798828\";\"P'ing-ting-hsien-ch'eng\";\"other\"\n\"1798828\";\"Pindin\";\"other\"\n\"1798828\";\"Pingding\";\"other\"\n\"1798828\";\"Piutingchow\";\"other\"\n\"1798828\";\"P’ing-ting\";\"other\"\n\"1798828\";\"P’ing-ting-hsien\";\"other\"\n\"1798828\";\"P’ing-ting-hsien-ch’eng\";\"other\"\n\"1798828\";\"guan shan\";\"other\"\n\"1798828\";\"ping ding\";\"other\"\n\"1798828\";\"冠山\";\"other\"\n\"1798828\";\"平定\";\"other\"\n\"1798846\";\"Pingchuan\";\"main\"\n\"1798846\";\"Wu-p'ing-hsien\";\"other\"\n\"1798846\";\"Wu-p’ing-hsien\";\"other\"\n\"1798846\";\"Wuping\";\"other\"\n\"1798846\";\"ping chuan\";\"other\"\n\"1798846\";\"平川\";\"other\"\n\"1798889\";\"Xinguan\";\"main\"\n\"1798889\";\"P'ien-kuan\";\"other\"\n\"1798889\";\"P'ien-kuan-hsien\";\"other\"\n\"1798889\";\"Pianguan\";\"other\"\n\"1798889\";\"Pienkwanhsien\";\"other\"\n\"1798889\";\"Pyan'guan'\";\"other\"\n\"1798889\";\"Pyan’guan’\";\"other\"\n\"1798889\";\"P’ien-kuan\";\"other\"\n\"1798889\";\"P’ien-kuan-hsien\";\"other\"\n\"1798889\";\"xin guan\";\"other\"\n\"1798889\";\"新关\";\"other\"\n\"1798894\";\"Piancheng\";\"main\"\n\"1798894\";\"P'ien-ch'eng\";\"other\"\n\"1798894\";\"P'ien-ch'eng-pao\";\"other\"\n\"1798894\";\"P’ien-ch’eng\";\"other\"\n\"1798894\";\"P’ien-ch’eng-pao\";\"other\"\n\"1798894\";\"偏城\";\"other\"\n\"1798909\";\"Penguanzhuang\";\"main\"\n\"1798909\";\"P'en-kuan-chuang\";\"other\"\n\"1798909\";\"Penkwan\";\"other\"\n\"1798909\";\"P’en-kuan-chuang\";\"other\"\n\"1798928\";\"Penglai\";\"main\"\n\"1798928\";\"P'eng-lai-chen\";\"other\"\n\"1798928\";\"Penglaizhen\";\"other\"\n\"1798928\";\"Ponlaychzhen'\";\"other\"\n\"1798928\";\"Pynlaychzhen'\";\"other\"\n\"1798928\";\"Pynlaychzhen’\";\"other\"\n\"1798928\";\"Pönlaychzhen’\";\"other\"\n\"1798928\";\"P’eng-lai-chen\";\"other\"\n\"1798928\";\"peng lai\";\"other\"\n\"1798928\";\"蓬莱\";\"other\"\n\"1798933\";\"Pengkou\";\"main\"\n\"1798933\";\"P'eng-kow\";\"other\"\n\"1798933\";\"Pengkou Zhen\";\"other\"\n\"1798933\";\"P’eng-kow\";\"other\"\n\"1798933\";\"朋口\";\"other\"\n\"1798933\";\"朋口镇\";\"other\"\n\"1798946\";\"Pengcheng\";\"main\"\n\"1798946\";\"P'eng-ch'eng-chen\";\"other\"\n\"1798946\";\"Penchenchzhen'\";\"other\"\n\"1798946\";\"Penchenchzhen’\";\"other\"\n\"1798946\";\"P’eng-ch’eng-chen\";\"other\"\n\"1798949\";\"Pendiqing\";\"main\"\n\"1798949\";\"Pendiqing Xiang\";\"other\"\n\"1798949\";\"盆地青\";\"other\"\n\"1798949\";\"盆地青乡\";\"other\"\n\"1798972\";\"Peicheng\";\"main\"\n\"1798972\";\"P'ei\";\"other\"\n\"1798972\";\"P'ei-ch'eng-chen\";\"other\"\n\"1798972\";\"P'ei-hsien\";\"other\"\n\"1798972\";\"Peixian\";\"other\"\n\"1798972\";\"P’ei\";\"other\"\n\"1798972\";\"P’ei-ch’eng-chen\";\"other\"\n\"1798972\";\"P’ei-hsien\";\"other\"\n\"1798994\";\"Panzhuang\";\"main\"\n\"1798994\";\"P'an-chia-chuang\";\"other\"\n\"1798994\";\"P'an-chuang\";\"other\"\n\"1798994\";\"P'an-chuang-chen\";\"other\"\n\"1798994\";\"P'ang-chuang\";\"other\"\n\"1798994\";\"Panerh\";\"other\"\n\"1798994\";\"Pang-kia-chwang\";\"other\"\n\"1798994\";\"P’an-chia-chuang\";\"other\"\n\"1798994\";\"P’an-chuang\";\"other\"\n\"1798994\";\"P’an-chuang-chen\";\"other\"\n\"1798994\";\"P’ang-chuang\";\"other\"\n\"1798998\";\"Dadukou\";\"main\"\n\"1798998\";\"Dukou\";\"other\"\n\"1798998\";\"Pan'chzhikhua\";\"other\"\n\"1798998\";\"Panzhihua\";\"other\"\n\"1798998\";\"Ta-tu-k'ou\";\"other\"\n\"1798998\";\"Ta-tu-k’ou\";\"other\"\n\"1798998\";\"Tu-k'ou\";\"other\"\n\"1798998\";\"Tu-k'ou-shih\";\"other\"\n\"1798998\";\"Tu-k’ou\";\"other\"\n\"1798998\";\"Tu-k’ou-shih\";\"other\"\n\"1798998\";\"Паньчжихуа\";\"other\"\n\"1798998\";\"大渡口\";\"other\"\n\"1799009\";\"Qingnianlu\";\"main\"\n\"1799009\";\"P'an-ch'i\";\"other\"\n\"1799009\";\"P'an-hsi\";\"other\"\n\"1799009\";\"P'o-hsi\";\"other\"\n\"1799009\";\"P'o-hsi-chieh\";\"other\"\n\"1799009\";\"Panki\";\"other\"\n\"1799009\";\"Panxi\";\"other\"\n\"1799009\";\"Panxi Zhen\";\"other\"\n\"1799009\";\"Posi\";\"other\"\n\"1799009\";\"P’an-ch’i\";\"other\"\n\"1799009\";\"P’an-hsi\";\"other\"\n\"1799009\";\"P’o-hsi\";\"other\"\n\"1799009\";\"P’o-hsi-chieh\";\"other\"\n\"1799009\";\"pan xi\";\"other\"\n\"1799009\";\"pan xi zhen\";\"other\"\n\"1799009\";\"qing nian lu\";\"other\"\n\"1799009\";\"盘溪\";\"other\"\n\"1799009\";\"盘溪镇\";\"other\"\n\"1799009\";\"青年路\";\"other\"\n\"1799051\";\"Panlian\";\"main\"\n\"1799051\";\"I-mi-ssu\";\"other\"\n\"1799051\";\"Mi-i\";\"other\"\n\"1799051\";\"Mi-i-chieh\";\"other\"\n\"1799051\";\"Mi-i-ssu\";\"other\"\n\"1799051\";\"Miyi\";\"other\"\n\"1799051\";\"Miyikai\";\"other\"\n\"1799051\";\"pan lian\";\"other\"\n\"1799051\";\"攀连\";\"other\"\n\"1799060\";\"Panjiawan\";\"main\"\n\"1799060\";\"P'an-chia-wan\";\"other\"\n\"1799060\";\"P’an-chia-wan\";\"other\"\n\"1799060\";\"潘家弯\";\"other\"\n\"1799085\";\"Pangguang\";\"main\"\n\"1799085\";\"P'ang-kuang\";\"other\"\n\"1799085\";\"P'ang-kuang-chen\";\"other\"\n\"1799085\";\"P'ang-lung\";\"other\"\n\"1799085\";\"P'ang-lung-chen\";\"other\"\n\"1799085\";\"Pangguang Zhen\";\"other\"\n\"1799085\";\"P’ang-kuang\";\"other\"\n\"1799085\";\"P’ang-kuang-chen\";\"other\"\n\"1799085\";\"P’ang-lung\";\"other\"\n\"1799085\";\"P’ang-lung-chen\";\"other\"\n\"1799085\";\"pang guang\";\"other\"\n\"1799085\";\"pang guang zhen\";\"other\"\n\"1799085\";\"庞光\";\"other\"\n\"1799085\";\"庞光镇\";\"other\"\n\"1799086\";\"Panggezhuang\";\"main\"\n\"1799086\";\"P'ang-ko-chuang\";\"other\"\n\"1799086\";\"P’ang-ko-chuang\";\"other\"\n\"1799089\";\"Pandu\";\"main\"\n\"1799089\";\"P'an-tu\";\"other\"\n\"1799089\";\"P’an-tu\";\"other\"\n\"1799110\";\"Paitou\";\"main\"\n\"1799110\";\"P'ai-t'ou-chen\";\"other\"\n\"1799110\";\"Paitou Zhen\";\"other\"\n\"1799110\";\"Paitow\";\"other\"\n\"1799110\";\"P’ai-t’ou-chen\";\"other\"\n\"1799110\";\"pai tou\";\"other\"\n\"1799110\";\"牌头\";\"other\"\n\"1799110\";\"牌头镇\";\"other\"\n\"1799112\";\"Paitan\";\"main\"\n\"1799112\";\"P'ai-t'an-hsu\";\"other\"\n\"1799112\";\"Paitan Zhen\";\"other\"\n\"1799112\";\"P’ai-t’an-hsü\";\"other\"\n\"1799112\";\"pai tan\";\"other\"\n\"1799112\";\"派潭\";\"other\"\n\"1799160\";\"Nyinqug\";\"main\"\n\"1799160\";\"Ningxiu\";\"other\"\n\"1799160\";\"宁秀\";\"other\"\n\"1799174\";\"Nuojiang\";\"main\"\n\"1799174\";\"T'ung-chiang\";\"other\"\n\"1799174\";\"T'ung-chiang-hsien\";\"other\"\n\"1799174\";\"Tongjiang\";\"other\"\n\"1799174\";\"Tungkiang\";\"other\"\n\"1799174\";\"Tungkiang-hsien\";\"other\"\n\"1799174\";\"T’ung-chiang\";\"other\"\n\"1799174\";\"T’ung-chiang-hsien\";\"other\"\n\"1799174\";\"nuo jiang\";\"other\"\n\"1799174\";\"诺江\";\"other\"\n\"1799194\";\"Guang’an\";\"main\"\n\"1799194\";\"Guang'an\";\"ascii\"\n\"1799194\";\"Kuang-an\";\"other\"\n\"1799194\";\"Kuang-an-hsien\";\"other\"\n\"1799194\";\"Kwang-an-hsien\";\"other\"\n\"1799194\";\"Kwangan\";\"other\"\n\"1799194\";\"Kwanganchow\";\"other\"\n\"1799194\";\"Nonghui\";\"other\"\n\"1799194\";\"guang an\";\"other\"\n\"1799194\";\"广安\";\"other\"\n\"1799206\";\"Niyang\";\"main\"\n\"1799206\";\"Niyang Zhen\";\"other\"\n\"1799206\";\"Niyangzhen\";\"other\"\n\"1799206\";\"泥阳\";\"other\"\n\"1799206\";\"泥阳镇\";\"other\"\n\"1799279\";\"Niujiapai\";\"main\"\n\"1799312\";\"Niudaokou\";\"main\"\n\"1799319\";\"Daifuyu\";\"main\"\n\"1799319\";\"Niu-ch'e-ho\";\"other\"\n\"1799319\";\"Niu-ch’e-ho\";\"other\"\n\"1799319\";\"Niuchehe\";\"other\"\n\"1799319\";\"Niuchehe Xiang\";\"other\"\n\"1799319\";\"da fu yu\";\"other\"\n\"1799319\";\"niu che he\";\"other\"\n\"1799319\";\"niu che he xiang\";\"other\"\n\"1799319\";\"大富堉\";\"other\"\n\"1799319\";\"牛车河\";\"other\"\n\"1799319\";\"牛车河乡\";\"other\"\n\"1799337\";\"Nishi\";\"main\"\n\"1799337\";\"Hupingshan\";\"other\"\n\"1799337\";\"Hupingshan Zhen\";\"other\"\n\"1799337\";\"Ni-sha\";\"other\"\n\"1799337\";\"Ni-sha-shih\";\"other\"\n\"1799337\";\"Ni-shih\";\"other\"\n\"1799337\";\"hu ping shan\";\"other\"\n\"1799337\";\"hu ping shan zhen\";\"other\"\n\"1799337\";\"ni shi\";\"other\"\n\"1799337\";\"壶瓶山\";\"other\"\n\"1799337\";\"壶瓶山镇\";\"other\"\n\"1799337\";\"泥市\";\"other\"\n\"1799341\";\"Ningzhou\";\"main\"\n\"1799341\";\"Chengjiao\";\"other\"\n\"1799341\";\"Hua-ning-hsien\";\"other\"\n\"1799341\";\"Huaning\";\"other\"\n\"1799341\";\"Huaning Xian\";\"other\"\n\"1799341\";\"Li\";\"other\"\n\"1799341\";\"Li-hsien\";\"other\"\n\"1799341\";\"Ning-chou\";\"other\"\n\"1799341\";\"Ningchow\";\"other\"\n\"1799341\";\"Ningzhou Zhen\";\"other\"\n\"1799341\";\"hua ning\";\"other\"\n\"1799341\";\"hua ning xian\";\"other\"\n\"1799341\";\"ning zhou\";\"other\"\n\"1799341\";\"ning zhou zhen\";\"other\"\n\"1799341\";\"华宁\";\"other\"\n\"1799341\";\"华宁县\";\"other\"\n\"1799341\";\"宁州\";\"other\"\n\"1799341\";\"宁州镇\";\"other\"\n\"1799346\";\"Shunling\";\"main\"\n\"1799346\";\"Ning-yuan-hsien\";\"other\"\n\"1799346\";\"Ning-yüan-hsien\";\"other\"\n\"1799346\";\"Ningyuan\";\"other\"\n\"1799346\";\"Shunlingzhen\";\"other\"\n\"1799346\";\"shun ling\";\"other\"\n\"1799346\";\"舜陵\";\"other\"\n\"1799348\";\"Ningyang\";\"main\"\n\"1799348\";\"Ning-yang-hsien\";\"other\"\n\"1799348\";\"Ninyan\";\"other\"\n\"1799352\";\"Yutan\";\"main\"\n\"1799352\";\"Ning-hsiang\";\"other\"\n\"1799352\";\"Ning-hsiang-hsien\";\"other\"\n\"1799352\";\"Ningsiang\";\"other\"\n\"1799352\";\"Ningsiang-hsien\";\"other\"\n\"1799352\";\"Ningxiang\";\"other\"\n\"1799352\";\"玉潭\";\"other\"\n\"1799358\";\"Fenghuang\";\"main\"\n\"1799358\";\"Feng-huang-ts'un\";\"other\"\n\"1799358\";\"Feng-huang-ts’un\";\"other\"\n\"1799358\";\"Fenghuang Zhen\";\"other\"\n\"1799358\";\"Nin'u\";\"other\"\n\"1799358\";\"Ning-wu-hsien\";\"other\"\n\"1799358\";\"Ningwu\";\"other\"\n\"1799358\";\"Ningwufu\";\"other\"\n\"1799358\";\"Nin’u\";\"other\"\n\"1799358\";\"Ting-wu\";\"other\"\n\"1799358\";\"feng huang\";\"other\"\n\"1799358\";\"凤凰\";\"other\"\n\"1799358\";\"凤凰镇\";\"other\"\n\"1799379\";\"Ninghe\";\"main\"\n\"1799379\";\"Chiu-ning-ho\";\"other\"\n\"1799379\";\"Ho-chen\";\"other\"\n\"1799379\";\"Jiuninghe\";\"other\"\n\"1799379\";\"Ning-ho\";\"other\"\n\"1799379\";\"Ning-ho-hsien\";\"other\"\n\"1799379\";\"Ninghezhen\";\"other\"\n\"1799383\";\"Ninghai\";\"main\"\n\"1799383\";\"Mou-p'ing\";\"other\"\n\"1799383\";\"Mou-p'ing-hsien\";\"other\"\n\"1799383\";\"Mou-p’ing\";\"other\"\n\"1799383\";\"Mou-p’ing-hsien\";\"other\"\n\"1799383\";\"Mowping\";\"other\"\n\"1799383\";\"Muping\";\"other\"\n\"1799383\";\"Ning-hai\";\"other\"\n\"1799383\";\"Ninghaichow\";\"other\"\n\"1799384\";\"Ninghai\";\"main\"\n\"1799384\";\"Ning-hai-hsien\";\"other\"\n\"1799384\";\"宁海\";\"other\"\n\"1799389\";\"Ning’er\";\"main\"\n\"1799389\";\"Ning'er\";\"ascii\"\n\"1799389\";\"Ning-erh\";\"other\"\n\"1799389\";\"Ning-erh-chen\";\"other\"\n\"1799389\";\"Ning-erh-hsien\";\"other\"\n\"1799389\";\"P'u-erh\";\"other\"\n\"1799389\";\"Pu'er\";\"other\"\n\"1799389\";\"Pu-erh-pu\";\"other\"\n\"1799389\";\"Puerhfu\";\"other\"\n\"1799389\";\"Pu’er\";\"other\"\n\"1799389\";\"P’u-erh\";\"other\"\n\"1799389\";\"ning er\";\"other\"\n\"1799389\";\"宁洱\";\"other\"\n\"1799393\";\"Ningchegu\";\"main\"\n\"1799393\";\"Dahebei\";\"other\"\n\"1799393\";\"Ning-ch'e-ku\";\"other\"\n\"1799393\";\"Ning-ch’e-ku\";\"other\"\n\"1799393\";\"Ta-ho-pei\";\"other\"\n\"1799397\";\"Ningbo\";\"main\"\n\"1799397\";\"Chiang-pei-an\";\"other\"\n\"1799397\";\"Ninbo\";\"other\"\n\"1799397\";\"Ning-hsien\";\"other\"\n\"1799397\";\"Ning-po\";\"other\"\n\"1799397\";\"Ning-po-shih\";\"other\"\n\"1799397\";\"Ningbo Shi\";\"other\"\n\"1799397\";\"Yin-hsien\";\"other\"\n\"1799397\";\"ning bo\";\"other\"\n\"1799397\";\"ningbo\";\"other\"\n\"1799397\";\"Нинбо\";\"other\"\n\"1799397\";\"نىڭبو شەھىرى\";\"other\"\n\"1799397\";\"宁波\";\"other\"\n\"1799397\";\"宁波市\";\"other\"\n\"1799397\";\"寧波\";\"other\"\n\"1799397\";\"닝보\";\"other\"\n\"1799406\";\"Xinjie\";\"main\"\n\"1799406\";\"Ni-hsu-chuang\";\"other\"\n\"1799406\";\"Ni-hsü-chuang\";\"other\"\n\"1799406\";\"Ni-hu-chuang\";\"other\"\n\"1799406\";\"Nihuzhuang\";\"other\"\n\"1799406\";\"Xinjie Zhen\";\"other\"\n\"1799406\";\"倪浒庄\";\"other\"\n\"1799406\";\"新街\";\"other\"\n\"1799406\";\"新街镇\";\"other\"\n\"1799413\";\"Nieying\";\"main\"\n\"1799413\";\"Nieh-ying\";\"other\"\n\"1799413\";\"Nieh-ying-chen\";\"other\"\n\"1799413\";\"Nieying Zhen\";\"other\"\n\"1799413\";\"聂营\";\"other\"\n\"1799413\";\"聂营镇\";\"other\"\n\"1799455\";\"Nianqiao\";\"main\"\n\"1799455\";\"Nien-ch'iao\";\"other\"\n\"1799455\";\"Nien-ch’iao\";\"other\"\n\"1799455\";\"Tung-nien-ch'iao\";\"other\"\n\"1799455\";\"Tung-nien-ch’iao\";\"other\"\n\"1799455\";\"nian qiao\";\"other\"\n\"1799455\";\"埝桥\";\"other\"\n\"1799462\";\"Niangxi\";\"main\"\n\"1799462\";\"Hsin-shao\";\"other\"\n\"1799462\";\"Niang-ch'i\";\"other\"\n\"1799462\";\"Niang-ch'i-chen\";\"other\"\n\"1799462\";\"Niang-ch’i\";\"other\"\n\"1799462\";\"Niang-ch’i-chen\";\"other\"\n\"1799462\";\"Niang-hsi\";\"other\"\n\"1799462\";\"Xinshao\";\"other\"\n\"1799462\";\"niang xi\";\"other\"\n\"1799462\";\"酿溪\";\"other\"\n\"1799491\";\"Neijiang\";\"main\"\n\"1799491\";\"Nei-chiang\";\"other\"\n\"1799491\";\"Nei-chiang-hsien\";\"other\"\n\"1799491\";\"Nei-chiang-shih\";\"other\"\n\"1799491\";\"Neikiang\";\"other\"\n\"1799491\";\"Neikianghsien\";\"other\"\n\"1799491\";\"nei jiang shi\";\"other\"\n\"1799491\";\"内江\";\"other\"\n\"1799491\";\"内江市\";\"other\"\n\"1799529\";\"Napo Chengxiangzhen\";\"main\"\n\"1799529\";\"Chanpin-hsien\";\"other\"\n\"1799529\";\"Chen-pien\";\"other\"\n\"1799529\";\"Chen-pien-hsien\";\"other\"\n\"1799529\";\"Mu-pien\";\"other\"\n\"1799529\";\"Mu-pien-hsien\";\"other\"\n\"1799529\";\"Napo\";\"other\"\n\"1799529\";\"na po cheng xiang zhen\";\"other\"\n\"1799529\";\"那坡城厢镇\";\"other\"\n\"1799535\";\"Naodian\";\"main\"\n\"1799535\";\"Nao-tien\";\"other\"\n\"1799535\";\"Nao-tien-chi\";\"other\"\n\"1799535\";\"Naodian Zhen\";\"other\"\n\"1799535\";\"闹店\";\"other\"\n\"1799535\";\"闹店镇\";\"other\"\n\"1799552\";\"Nanzhou\";\"main\"\n\"1799552\";\"Nan\";\"other\"\n\"1799552\";\"Nan-hsien\";\"other\"\n\"1799552\";\"Nanchowting\";\"other\"\n\"1799552\";\"Nanxian\";\"other\"\n\"1799552\";\"南洲\";\"other\"\n\"1799565\";\"Nanzhao Chengguanzhen\";\"main\"\n\"1799565\";\"Chengguan Zhen\";\"other\"\n\"1799565\";\"Li-ch'ing-tien\";\"other\"\n\"1799565\";\"Li-ch’ing-tien\";\"other\"\n\"1799565\";\"Nan-chao\";\"other\"\n\"1799565\";\"Nan-chao-hsien\";\"other\"\n\"1799565\";\"Nan-shao\";\"other\"\n\"1799565\";\"Nanzhao\";\"other\"\n\"1799565\";\"nan zhao\";\"other\"\n\"1799565\";\"南召\";\"other\"\n\"1799565\";\"南召城关镇\";\"other\"\n\"1799566\";\"Nanzhao\";\"main\"\n\"1799566\";\"Chao-an\";\"other\"\n\"1799566\";\"Chao-an-hsien\";\"other\"\n\"1799566\";\"Zhao'an\";\"other\"\n\"1799566\";\"Zhao’an\";\"other\"\n\"1799566\";\"nan zhao\";\"other\"\n\"1799566\";\"南诏\";\"other\"\n\"1799574\";\"Nanzhang Chengguanzhen\";\"main\"\n\"1799574\";\"Nan-chang\";\"other\"\n\"1799574\";\"Nan-chang-hsien\";\"other\"\n\"1799574\";\"Nanzhang\";\"other\"\n\"1799574\";\"南漳城关镇\";\"other\"\n\"1799578\";\"Nanzha\";\"main\"\n\"1799578\";\"Nan-cha\";\"other\"\n\"1799578\";\"Nan-cha-chen\";\"other\"\n\"1799578\";\"Nanzha Zhen\";\"other\"\n\"1799578\";\"南闸\";\"other\"\n\"1799578\";\"南闸镇\";\"other\"\n\"1799581\";\"Nanyulinxi\";\"main\"\n\"1799581\";\"Nanyulin Xiang\";\"other\"\n\"1799581\";\"Yu-lin-ts'un\";\"other\"\n\"1799581\";\"Yü-lin-ts’un\";\"other\"\n\"1799581\";\"南榆林乡\";\"other\"\n\"1799581\";\"南榆林西\";\"other\"\n\"1799629\";\"Nanyang\";\"main\"\n\"1799629\";\"Nan'jan\";\"other\"\n\"1799629\";\"Nan-yang-shih\";\"other\"\n\"1799629\";\"nan yang shi\";\"other\"\n\"1799629\";\"Наньян\";\"other\"\n\"1799629\";\"南阳市\";\"other\"\n\"1799658\";\"Nanxing\";\"main\"\n\"1799658\";\"Nan-hsing\";\"other\"\n\"1799658\";\"Nan-hsing-tsun\";\"other\"\n\"1799658\";\"Nanxing Zhen\";\"other\"\n\"1799658\";\"南星\";\"other\"\n\"1799658\";\"南星镇\";\"other\"\n\"1799686\";\"Nanxi\";\"main\"\n\"1799686\";\"Nan-ch'i\";\"other\"\n\"1799686\";\"Nan-ch'i-hsien\";\"other\"\n\"1799686\";\"Nan-ch’i\";\"other\"\n\"1799686\";\"Nan-ch’i-hsien\";\"other\"\n\"1799686\";\"Nan-hsi\";\"other\"\n\"1799686\";\"Nanki\";\"other\"\n\"1799686\";\"Nanki-hsien\";\"other\"\n\"1799686\";\"nan xi\";\"other\"\n\"1799686\";\"南溪\";\"other\"\n\"1799697\";\"Nanwanling\";\"main\"\n\"1799697\";\"南湾岭\";\"other\"\n\"1799722\";\"Nantong\";\"main\"\n\"1799722\";\"Nan'tun\";\"other\"\n\"1799722\";\"Nan-t'ung\";\"other\"\n\"1799722\";\"Nan-t'ung-hsien\";\"other\"\n\"1799722\";\"Nan-t'ung-shih\";\"other\"\n\"1799722\";\"Nan-t’ung\";\"other\"\n\"1799722\";\"Nan-t’ung-hsien\";\"other\"\n\"1799722\";\"Nan-t’ung-shih\";\"other\"\n\"1799722\";\"T'ung-chou\";\"other\"\n\"1799722\";\"Tungchow\";\"other\"\n\"1799722\";\"T’ung-chou\";\"other\"\n\"1799722\";\"nan tong\";\"other\"\n\"1799722\";\"nan tong shi\";\"other\"\n\"1799722\";\"Наньтун\";\"other\"\n\"1799722\";\"نەنتۇڭ شەھىرى\";\"other\"\n\"1799722\";\"南通\";\"other\"\n\"1799722\";\"南通市\";\"other\"\n\"1799732\";\"Nantang\";\"main\"\n\"1799732\";\"Nantang Zhen\";\"other\"\n\"1799732\";\"nan tang\";\"other\"\n\"1799732\";\"南塘\";\"other\"\n\"1799759\";\"Nanshenzao\";\"main\"\n\"1799759\";\"Nan-shen-tsao\";\"other\"\n\"1799759\";\"Nanshenzao Zhen\";\"other\"\n\"1799759\";\"南沈灶\";\"other\"\n\"1799759\";\"南沈灶镇\";\"other\"\n\"1799764\";\"Nanshe\";\"main\"\n\"1799764\";\"Hsin-nan-she\";\"other\"\n\"1799764\";\"Nanshe Xiang\";\"other\"\n\"1799764\";\"nan she\";\"other\"\n\"1799764\";\"南社\";\"other\"\n\"1799781\";\"Nanshan\";\"main\"\n\"1799781\";\"Nan-shan-pa\";\"other\"\n\"1799781\";\"Nanshan Zhen\";\"other\"\n\"1799781\";\"Nanshanba\";\"other\"\n\"1799781\";\"南山\";\"other\"\n\"1799781\";\"南山镇\";\"other\"\n\"1799795\";\"Nansha\";\"main\"\n\"1799795\";\"nan sha\";\"other\"\n\"1799795\";\"南沙\";\"other\"\n\"1799805\";\"Nanrenfu\";\"main\"\n\"1799809\";\"Nanquan\";\"main\"\n\"1799809\";\"Kuan-ch'uan\";\"other\"\n\"1799809\";\"Kuan-ch’uan\";\"other\"\n\"1799809\";\"Lan-ch'uan-ts'un\";\"other\"\n\"1799809\";\"Lan-ch’üan-ts’un\";\"other\"\n\"1799809\";\"Nan-ch'uan\";\"other\"\n\"1799809\";\"Nan-ch’üan\";\"other\"\n\"1799809\";\"Nanquan Xiang\";\"other\"\n\"1799809\";\"南泉\";\"other\"\n\"1799809\";\"南泉乡\";\"other\"\n\"1799812\";\"Nanqiu\";\"main\"\n\"1799812\";\"Nanqiu Xiang\";\"other\"\n\"1799812\";\"南湫\";\"other\"\n\"1799812\";\"南湫乡\";\"other\"\n\"1799832\";\"Pucheng\";\"main\"\n\"1799832\";\"Fu-chang\";\"other\"\n\"1799832\";\"Nanpu\";\"other\"\n\"1799832\";\"Nanpu Zhen\";\"other\"\n\"1799832\";\"P'u-ch'eng-hsien\";\"other\"\n\"1799832\";\"P’u-ch’eng-hsien\";\"other\"\n\"1799832\";\"南浦\";\"other\"\n\"1799832\";\"南浦镇\";\"other\"\n\"1799832\";\"浦城\";\"other\"\n\"1799841\";\"Yongle\";\"main\"\n\"1799841\";\"Nan'pin\";\"other\"\n\"1799841\";\"Nanping\";\"other\"\n\"1799841\";\"Nan’pin\";\"other\"\n\"1799841\";\"yong le\";\"other\"\n\"1799841\";\"永乐\";\"other\"\n\"1799846\";\"Nanping\";\"main\"\n\"1799846\";\"Nan'pin\";\"other\"\n\"1799846\";\"Nan-p'ing-hsien\";\"other\"\n\"1799846\";\"Nan-p'ing-hsien-ch'eng\";\"other\"\n\"1799846\";\"Nan-p'ing-shih\";\"other\"\n\"1799846\";\"Nan-p’ing-hsien\";\"other\"\n\"1799846\";\"Nan-p’ing-hsien-ch’eng\";\"other\"\n\"1799846\";\"Nan-p’ing-shih\";\"other\"\n\"1799846\";\"Yenping\";\"other\"\n\"1799846\";\"Yenping-fu\";\"other\"\n\"1799846\";\"Наньпин\";\"other\"\n\"1799846\";\"南平\";\"other\"\n\"1799869\";\"Nanning\";\"main\"\n\"1799869\";\"Nam Ninh\";\"other\"\n\"1799869\";\"Nan'nin\";\"other\"\n\"1799869\";\"Nan-ning-shih\";\"other\"\n\"1799869\";\"Nanning Shi\";\"other\"\n\"1799869\";\"Yung-ning\";\"other\"\n\"1799869\";\"Yung-ning-hsien\";\"other\"\n\"1799869\";\"nan ning\";\"other\"\n\"1799869\";\"nan ning shi\";\"other\"\n\"1799869\";\"Наньнин\";\"other\"\n\"1799869\";\"نەننىڭ شەھىرى\";\"other\"\n\"1799869\";\"南宁\";\"other\"\n\"1799869\";\"南宁市\";\"other\"\n\"1799869\";\"南寧\";\"other\"\n\"1799876\";\"Nanmuping\";\"main\"\n\"1799880\";\"Nanmo\";\"main\"\n\"1799880\";\"Nanmo Zhen\";\"other\"\n\"1799880\";\"Nanmozhuang\";\"other\"\n\"1799880\";\"南莫\";\"other\"\n\"1799880\";\"南莫镇\";\"other\"\n\"1799895\";\"Nanmaizhu\";\"main\"\n\"1799897\";\"Nanma\";\"main\"\n\"1799897\";\"I-yuan\";\"other\"\n\"1799897\";\"I-yüan\";\"other\"\n\"1799897\";\"Yiyuan\";\"other\"\n\"1799899\";\"Quanfu\";\"main\"\n\"1799899\";\"Nan-ma-shih\";\"other\"\n\"1799899\";\"Nanma\";\"other\"\n\"1799899\";\"Nanma Zhen\";\"other\"\n\"1799899\";\"quan fu\";\"other\"\n\"1799899\";\"南马镇\";\"other\"\n\"1799899\";\"泉府\";\"other\"\n\"1799908\";\"Nanlong\";\"main\"\n\"1799908\";\"Nan-pu\";\"other\"\n\"1799908\";\"Nan-pu-hsien\";\"other\"\n\"1799908\";\"Nanbu\";\"other\"\n\"1799908\";\"南隆\";\"other\"\n\"1799918\";\"Jishan\";\"main\"\n\"1799918\";\"Nan-ling-hsien\";\"other\"\n\"1799918\";\"Nanling\";\"other\"\n\"1799918\";\"ji shan\";\"other\"\n\"1799918\";\"籍山\";\"other\"\n\"1799919\";\"Nanling\";\"main\"\n\"1799919\";\"Nanling Zhen\";\"other\"\n\"1799919\";\"南岭\";\"other\"\n\"1799919\";\"南岭镇\";\"other\"\n\"1799939\";\"Nankou\";\"main\"\n\"1799939\";\"南口\";\"other\"\n\"1799962\";\"Nanjing\";\"main\"\n\"1799962\";\"Nan-ching\";\"other\"\n\"1799962\";\"Nan-ching-shih\";\"other\"\n\"1799962\";\"Nankin\";\"other\"\n\"1799962\";\"Nanking\";\"other\"\n\"1799962\";\"nan jing\";\"other\"\n\"1799962\";\"Нанкин\";\"other\"\n\"1799962\";\"南京\";\"other\"\n\"1799967\";\"Nanjie\";\"main\"\n\"1799967\";\"Guangning\";\"other\"\n\"1799967\";\"Kuang-ning\";\"other\"\n\"1799967\";\"Kuang-ning-hsien\";\"other\"\n\"1799967\";\"Kwongning\";\"other\"\n\"1799967\";\"Kwongning-hsien\";\"other\"\n\"1799967\";\"Nan-chieh\";\"other\"\n\"1799967\";\"Nan-chieh-chen\";\"other\"\n\"1799967\";\"nan jie\";\"other\"\n\"1799967\";\"南街\";\"other\"\n\"1799984\";\"Nanjiang\";\"main\"\n\"1799984\";\"Nan'tszyan\";\"other\"\n\"1799984\";\"Nan-chiang\";\"other\"\n\"1799984\";\"Nan-chiang-hsien\";\"other\"\n\"1799984\";\"Nankiang\";\"other\"\n\"1799984\";\"Nankiang-hsien\";\"other\"\n\"1799984\";\"Nan’tszyan\";\"other\"\n\"1799984\";\"nan jiang\";\"other\"\n\"1799984\";\"南江\";\"other\"\n\"1799986\";\"Nanjian\";\"main\"\n\"1799986\";\"Nan-chien\";\"other\"\n\"1799986\";\"Nan-chien-chen\";\"other\"\n\"1799986\";\"Nan-chien-i-tsu-tzu-chih-hsien\";\"other\"\n\"1799986\";\"Nankien\";\"other\"\n\"1799986\";\"nan jian\";\"other\"\n\"1799986\";\"南涧\";\"other\"\n\"1800007\";\"Nanhu\";\"main\"\n\"1800007\";\"Nanhu Zhen\";\"other\"\n\"1800007\";\"南湖\";\"other\"\n\"1800007\";\"南湖镇\";\"other\"\n\"1800014\";\"Nanhezhong\";\"main\"\n\"1800014\";\"Nan-ho-chung\";\"other\"\n\"1800014\";\"Nanhezhong Zhen\";\"other\"\n\"1800014\";\"南河种\";\"other\"\n\"1800014\";\"南河种镇\";\"other\"\n\"1800065\";\"Nangong\";\"main\"\n\"1800065\";\"Nan'gun\";\"other\"\n\"1800065\";\"Nan-kung\";\"other\"\n\"1800065\";\"Nan-kung-ch'eng-kuan\";\"other\"\n\"1800065\";\"Nan-kung-ch’eng-kuan\";\"other\"\n\"1800065\";\"Nan-kung-hsien\";\"other\"\n\"1800065\";\"Nan’gun\";\"other\"\n\"1800088\";\"Nanfeng\";\"main\"\n\"1800088\";\"Hoikin\";\"other\"\n\"1800088\";\"Hoikin-hsien\";\"other\"\n\"1800088\";\"K'ai-chien\";\"other\"\n\"1800088\";\"K'ai-chien-hsien\";\"other\"\n\"1800088\";\"K’ai-chien\";\"other\"\n\"1800088\";\"K’ai-chien-hsien\";\"other\"\n\"1800088\";\"Nan-feng-chen\";\"other\"\n\"1800088\";\"南丰\";\"other\"\n\"1800093\";\"Nanfang\";\"main\"\n\"1800093\";\"Nan-fang-chen\";\"other\"\n\"1800093\";\"Nanfang Zhen\";\"other\"\n\"1800093\";\"nan fang\";\"other\"\n\"1800093\";\"nan fang zhen\";\"other\"\n\"1800093\";\"南访\";\"other\"\n\"1800093\";\"南访镇\";\"other\"\n\"1800097\";\"Duji\";\"main\"\n\"1800097\";\"Nan-tu-chi\";\"other\"\n\"1800097\";\"Nanduji\";\"other\"\n\"1800097\";\"Tu-chi\";\"other\"\n\"1800097\";\"du ji\";\"other\"\n\"1800097\";\"杜集\";\"other\"\n\"1800101\";\"Nandu\";\"main\"\n\"1800101\";\"Nan-tu\";\"other\"\n\"1800101\";\"Nan-tu-hsu\";\"other\"\n\"1800101\";\"Nan-tu-hsü\";\"other\"\n\"1800107\";\"Nanding\";\"main\"\n\"1800107\";\"Nan-ting\";\"other\"\n\"1800119\";\"Nandan Chengguanzhen\";\"main\"\n\"1800119\";\"Nan-tan\";\"other\"\n\"1800119\";\"Nan-tan-chen\";\"other\"\n\"1800119\";\"Nan-tan-hsien\";\"other\"\n\"1800119\";\"Nandan\";\"other\"\n\"1800119\";\"Nantanchow\";\"other\"\n\"1800119\";\"nan dan cheng guan zhen\";\"other\"\n\"1800119\";\"南丹城关镇\";\"other\"\n\"1800132\";\"Nancun\";\"main\"\n\"1800132\";\"Nan-ts'un\";\"other\"\n\"1800132\";\"Nan-ts’un\";\"other\"\n\"1800132\";\"nan cun\";\"other\"\n\"1800132\";\"南村\";\"other\"\n\"1800146\";\"Nanchong\";\"main\"\n\"1800146\";\"Nan'chun\";\"other\"\n\"1800146\";\"Nan-ch'ung\";\"other\"\n\"1800146\";\"Nan-ch'ung-hsien\";\"other\"\n\"1800146\";\"Nan-ch'ung-shih\";\"other\"\n\"1800146\";\"Nan-ch’ung\";\"other\"\n\"1800146\";\"Nan-ch’ung-hsien\";\"other\"\n\"1800146\";\"Nan-ch’ung-shih\";\"other\"\n\"1800146\";\"Nan’chun\";\"other\"\n\"1800146\";\"Shun'tsin\";\"other\"\n\"1800146\";\"Shun-ch'ing\";\"other\"\n\"1800146\";\"Shun-ch’ing\";\"other\"\n\"1800146\";\"Shunking\";\"other\"\n\"1800146\";\"Shun’tsin\";\"other\"\n\"1800146\";\"Наньчун\";\"other\"\n\"1800146\";\"南充\";\"other\"\n\"1800163\";\"Nanchang\";\"main\"\n\"1800163\";\"Nam Xuong\";\"other\"\n\"1800163\";\"Nam Xương\";\"other\"\n\"1800163\";\"Nan'chan\";\"other\"\n\"1800163\";\"Nan-ch'ang-hsien\";\"other\"\n\"1800163\";\"Nan-ch'ang-shih\";\"other\"\n\"1800163\";\"Nan-ch’ang-hsien\";\"other\"\n\"1800163\";\"Nan-ch’ang-shih\";\"other\"\n\"1800163\";\"Nanchang-fu\";\"other\"\n\"1800163\";\"nan chang\";\"other\"\n\"1800163\";\"nan chang shi\";\"other\"\n\"1800163\";\"Наньчан\";\"other\"\n\"1800163\";\"نەنچاڭ شەھىرى\";\"other\"\n\"1800163\";\"南昌\";\"other\"\n\"1800163\";\"南昌市\";\"other\"\n\"1800168\";\"Nancang\";\"main\"\n\"1800171\";\"Nancaicun\";\"main\"\n\"1800171\";\"Ts'ai-ts'un\";\"other\"\n\"1800171\";\"Ts’ai-ts’un\";\"other\"\n\"1800194\";\"Nan’ao\";\"main\"\n\"1800194\";\"Nan'ao\";\"ascii\"\n\"1800194\";\"Cezi\";\"other\"\n\"1800194\";\"Cezixiang\";\"other\"\n\"1800194\";\"Nan-ao-ts'un\";\"other\"\n\"1800194\";\"Nan-ao-ts’un\";\"other\"\n\"1800194\";\"冊子\";\"other\"\n\"1800194\";\"冊子乡\";\"other\"\n\"1800194\";\"南岙\";\"other\"\n\"1800268\";\"Muxi\";\"main\"\n\"1800268\";\"Mu-ch'uan-hsien\";\"other\"\n\"1800268\";\"Mu-ch’uan-hsien\";\"other\"\n\"1800268\";\"Muchuan\";\"other\"\n\"1800268\";\"mu xi\";\"other\"\n\"1800268\";\"沐溪\";\"other\"\n\"1800296\";\"Mulan\";\"main\"\n\"1800296\";\"Mulan Xiang\";\"other\"\n\"1800296\";\"木兰\";\"other\"\n\"1800296\";\"木兰乡\";\"other\"\n\"1800306\";\"Muhuguan\";\"main\"\n\"1800306\";\"Mu-hu-kuan\";\"other\"\n\"1800306\";\"Muhuguan Zhen\";\"other\"\n\"1800306\";\"mu hu guan\";\"other\"\n\"1800306\";\"牧护关\";\"other\"\n\"1800337\";\"Mudaikou\";\"main\"\n\"1800337\";\"Mu-tai-k'ou\";\"other\"\n\"1800337\";\"Mu-tai-k’ou\";\"other\"\n\"1800337\";\"Shangyang\";\"other\"\n\"1800337\";\"Shangyang Zhen\";\"other\"\n\"1800337\";\"shang yang\";\"other\"\n\"1800337\";\"shang yang zhen\";\"other\"\n\"1800337\";\"上垟\";\"other\"\n\"1800337\";\"上垟镇\";\"other\"\n\"1800337\";\"木岱口\";\"other\"\n\"1800348\";\"Mubo\";\"main\"\n\"1800348\";\"Mubo Xiang\";\"other\"\n\"1800348\";\"木钵\";\"other\"\n\"1800348\";\"木钵乡\";\"other\"\n\"1800357\";\"Moyuan\";\"main\"\n\"1800357\";\"Moyuan Xiang\";\"other\"\n\"1800357\";\"漠源\";\"other\"\n\"1800357\";\"漠源乡\";\"other\"\n\"1800371\";\"Motou\";\"main\"\n\"1800371\";\"Mo-t'ou-chen\";\"other\"\n\"1800371\";\"Mo-t’ou-chen\";\"other\"\n\"1800371\";\"Motou Zhen\";\"other\"\n\"1800371\";\"磨头\";\"other\"\n\"1800371\";\"磨头镇\";\"other\"\n\"1800376\";\"Moshi\";\"main\"\n\"1800376\";\"Mo-shih\";\"other\"\n\"1800376\";\"Moshi Zhen\";\"other\"\n\"1800376\";\"mo shi\";\"other\"\n\"1800376\";\"mo shi zhen\";\"other\"\n\"1800376\";\"磨市\";\"other\"\n\"1800376\";\"磨市镇\";\"other\"\n\"1800391\";\"Mailing\";\"main\"\n\"1800391\";\"mai ling\";\"other\"\n\"1800391\";\"麦岭\";\"other\"\n\"1800411\";\"Shangmofang\";\"main\"\n\"1800411\";\"Mo-fang-pao\";\"other\"\n\"1800411\";\"Mofang\";\"other\"\n\"1800411\";\"Shangmofang Xiang\";\"other\"\n\"1800411\";\"上磨坊\";\"other\"\n\"1800411\";\"上磨坊乡\";\"other\"\n\"1800430\";\"Miyang\";\"main\"\n\"1800430\";\"Mi-lo\";\"other\"\n\"1800430\";\"Mi-lo-hsien\";\"other\"\n\"1800430\";\"Mi-lo-hsien-i-tsu-tzu-chih-ch'u\";\"other\"\n\"1800430\";\"Mi-lo-hsien-i-tsu-tzu-chih-ch’ü\";\"other\"\n\"1800430\";\"Mile\";\"other\"\n\"1800430\";\"Mile Xian\";\"other\"\n\"1800430\";\"弥勒\";\"other\"\n\"1800430\";\"弥勒县\";\"other\"\n\"1800430\";\"弥阳\";\"other\"\n\"1800453\";\"Chengjiao Chengguanzhen\";\"main\"\n\"1800453\";\"Chengguanzhen\";\"other\"\n\"1800453\";\"Chengjiao\";\"other\"\n\"1800453\";\"MIN'SYAN\";\"other\"\n\"1800453\";\"MIN’SYAN\";\"other\"\n\"1800453\";\"Min\";\"other\"\n\"1800453\";\"Min Xian\";\"other\"\n\"1800453\";\"Min Xian Chengjiao Chengguanzhen\";\"other\"\n\"1800453\";\"Min-hsien\";\"other\"\n\"1800453\";\"Minchow\";\"other\"\n\"1800453\";\"Minxian\";\"other\"\n\"1800453\";\"城关镇\";\"other\"\n\"1800453\";\"城郊\";\"other\"\n\"1800453\";\"城郊城关镇\";\"other\"\n\"1800453\";\"岷县\";\"other\"\n\"1800453\";\"岷县城郊城关镇\";\"other\"\n\"1800468\";\"Minle\";\"main\"\n\"1800468\";\"Minle Zhen\";\"other\"\n\"1800468\";\"min le\";\"other\"\n\"1800468\";\"民乐\";\"other\"\n\"1800475\";\"Minjian\";\"main\"\n\"1800475\";\"Ma-pien\";\"other\"\n\"1800475\";\"Ma-pien-hsien\";\"other\"\n\"1800475\";\"Mabian\";\"other\"\n\"1800475\";\"Mapienting\";\"other\"\n\"1800475\";\"min jian\";\"other\"\n\"1800475\";\"民建\";\"other\"\n\"1800498\";\"Mingshui\";\"main\"\n\"1800498\";\"Chang-ch'iu\";\"other\"\n\"1800498\";\"Chang-ch’iu\";\"other\"\n\"1800498\";\"Ming-shui-chen\";\"other\"\n\"1800498\";\"Zhangqiu\";\"other\"\n\"1800519\";\"Mingguang\";\"main\"\n\"1800519\";\"Chia-shan\";\"other\"\n\"1800519\";\"Chia-shan-hsien\";\"other\"\n\"1800519\";\"Jiashan\";\"other\"\n\"1800519\";\"Ming-kuang\";\"other\"\n\"1800519\";\"Ming-kuang-chen\";\"other\"\n\"1800519\";\"Mingkwang\";\"other\"\n\"1800521\";\"Minggang\";\"main\"\n\"1800521\";\"Ming-chiang\";\"other\"\n\"1800521\";\"Ming-kang\";\"other\"\n\"1800521\";\"Mingkiang\";\"other\"\n\"1800521\";\"Mintszyan\";\"other\"\n\"1800522\";\"Mingfeng\";\"main\"\n\"1800522\";\"Yuan'an\";\"other\"\n\"1800522\";\"Yuan-an-hsien\";\"other\"\n\"1800522\";\"Yuan’an\";\"other\"\n\"1800522\";\"Yüan-an-hsien\";\"other\"\n\"1800522\";\"ming feng\";\"other\"\n\"1800522\";\"鸣凤\";\"other\"\n\"1800523\";\"Mingdu\";\"main\"\n\"1800523\";\"Ming-tu\";\"other\"\n\"1800523\";\"Ming-tu-chen\";\"other\"\n\"1800523\";\"Mingdu Zhen\";\"other\"\n\"1800523\";\"Wu-tu-chen\";\"other\"\n\"1800523\";\"ming du\";\"other\"\n\"1800523\";\"鸣犊\";\"other\"\n\"1800526\";\"Min’an\";\"main\"\n\"1800526\";\"Min'an\";\"ascii\"\n\"1800526\";\"Longshan\";\"other\"\n\"1800526\";\"Lung-shan\";\"other\"\n\"1800526\";\"Lung-shan-hsien\";\"other\"\n\"1800526\";\"long shan\";\"other\"\n\"1800526\";\"min an\";\"other\"\n\"1800526\";\"民安\";\"other\"\n\"1800526\";\"龙山\";\"other\"\n\"1800527\";\"Min’an\";\"main\"\n\"1800527\";\"Min'an\";\"ascii\"\n\"1800527\";\"Min-an-chen\";\"other\"\n\"1800531\";\"Miluo Chengguanzhen\";\"main\"\n\"1800531\";\"Ku-lo\";\"other\"\n\"1800531\";\"Mi-lo\";\"other\"\n\"1800531\";\"Mi-lo-hsien\";\"other\"\n\"1800531\";\"Miluo\";\"other\"\n\"1800531\";\"mi luo cheng guan zhen\";\"other\"\n\"1800531\";\"汨罗城关镇\";\"other\"\n\"1800544\";\"Micheng\";\"main\"\n\"1800544\";\"Mi-ch'eng-chen\";\"other\"\n\"1800544\";\"Mi-ch’eng-chen\";\"other\"\n\"1800544\";\"Mi-tu\";\"other\"\n\"1800544\";\"Mi-tu-chen\";\"other\"\n\"1800544\";\"Mi-tu-chieh\";\"other\"\n\"1800544\";\"Mi-tu-hsien\";\"other\"\n\"1800544\";\"Midu\";\"other\"\n\"1800544\";\"mi cheng\";\"other\"\n\"1800544\";\"弥城\";\"other\"\n\"1800587\";\"Miaoqian\";\"main\"\n\"1800587\";\"Miao-ch'ien\";\"other\"\n\"1800587\";\"Miao-ch’ien\";\"other\"\n\"1800587\";\"Miaoqian Zhen\";\"other\"\n\"1800587\";\"庙前\";\"other\"\n\"1800587\";\"庙前镇\";\"other\"\n\"1800603\";\"Miaogou\";\"main\"\n\"1800603\";\"Miao-kou\";\"other\"\n\"1800603\";\"Miaogou Xiang\";\"other\"\n\"1800603\";\"庙沟\";\"other\"\n\"1800603\";\"庙沟乡\";\"other\"\n\"1800619\";\"Miaoba\";\"main\"\n\"1800619\";\"Miao-pa\";\"other\"\n\"1800619\";\"庙坝\";\"other\"\n\"1800624\";\"Jiannan\";\"main\"\n\"1800624\";\"Mianzhu\";\"other\"\n\"1800624\";\"Mien-chu\";\"other\"\n\"1800624\";\"Mien-chu-hsien\";\"other\"\n\"1800624\";\"Myan'chzhu\";\"other\"\n\"1800624\";\"Myan’chzhu\";\"other\"\n\"1800624\";\"jian nan\";\"other\"\n\"1800624\";\"剑南\";\"other\"\n\"1800627\";\"Mianyang\";\"main\"\n\"1800627\";\"Mien-chou\";\"other\"\n\"1800627\";\"Mien-yang\";\"other\"\n\"1800627\";\"Mien-yang-hsien\";\"other\"\n\"1800627\";\"Mienchow\";\"other\"\n\"1800627\";\"Mjan'jan\";\"other\"\n\"1800627\";\"Myan'yan\";\"other\"\n\"1800627\";\"Myan’yan\";\"other\"\n\"1800627\";\"Мяньян\";\"other\"\n\"1800627\";\"绵阳\";\"other\"\n\"1800629\";\"Mianyang\";\"main\"\n\"1800629\";\"Mianxian\";\"other\"\n\"1800629\";\"Mianyang Zhen\";\"other\"\n\"1800629\";\"Mien\";\"other\"\n\"1800629\";\"Mien-hsien\";\"other\"\n\"1800629\";\"勉县\";\"other\"\n\"1800629\";\"勉阳\";\"other\"\n\"1800629\";\"勉阳镇\";\"other\"\n\"1800636\";\"Chengxiang\";\"main\"\n\"1800636\";\"Mianning\";\"other\"\n\"1800636\";\"Mien-ning\";\"other\"\n\"1800636\";\"Mien-ning-hsien\";\"other\"\n\"1800636\";\"cheng xiang\";\"other\"\n\"1800636\";\"城厢\";\"other\"\n\"1800657\";\"Mentougou\";\"main\"\n\"1800657\";\"Men-t'ou-kou\";\"other\"\n\"1800657\";\"Men-t'ou-kou-ho-t'an\";\"other\"\n\"1800657\";\"Men-t’ou-kou\";\"other\"\n\"1800657\";\"Men-t’ou-kou-ho-t’an\";\"other\"\n\"1800663\";\"Wenlan\";\"main\"\n\"1800663\";\"Meng-tzu\";\"other\"\n\"1800663\";\"Meng-tzu-ch'eng\";\"other\"\n\"1800663\";\"Meng-tzu-ch’eng\";\"other\"\n\"1800663\";\"Meng-tzu-hsien\";\"other\"\n\"1800663\";\"Mengtsz\";\"other\"\n\"1800663\";\"Mengtszhsien\";\"other\"\n\"1800663\";\"Mengtze-hsien\";\"other\"\n\"1800663\";\"Mengzi\";\"other\"\n\"1800663\";\"Mongtseau\";\"other\"\n\"1800663\";\"Mongtze\";\"other\"\n\"1800663\";\"Wenlan Zhen\";\"other\"\n\"1800663\";\"wen lan\";\"other\"\n\"1800663\";\"文澜\";\"other\"\n\"1800670\";\"Mengzhai\";\"main\"\n\"1800670\";\"Meng-chai\";\"other\"\n\"1800670\";\"Mengzhai Zhen\";\"other\"\n\"1800670\";\"meng zhai\";\"other\"\n\"1800670\";\"孟寨\";\"other\"\n\"1800675\";\"Mengyin\";\"main\"\n\"1800675\";\"Meng-yin-hsien\";\"other\"\n\"1800699\";\"Mengshan\";\"main\"\n\"1800699\";\"Meng-shan-chen\";\"other\"\n\"1800699\";\"Meng-shan-hsien\";\"other\"\n\"1800699\";\"Wing-on\";\"other\"\n\"1800699\";\"Winganchow\";\"other\"\n\"1800699\";\"Wingonchow\";\"other\"\n\"1800699\";\"Yung-an\";\"other\"\n\"1800699\";\"meng shan\";\"other\"\n\"1800699\";\"蒙山\";\"other\"\n\"1800702\";\"Mengquan\";\"main\"\n\"1800702\";\"Meng-ch'uan\";\"other\"\n\"1800702\";\"Meng-ch’üan\";\"other\"\n\"1800712\";\"Menglie\";\"main\"\n\"1800712\";\"Chiang-ch'eng\";\"other\"\n\"1800712\";\"Chiang-ch'eng-ha-ni-tsu-i-tsu-tzu-chih-hsien\";\"other\"\n\"1800712\";\"Chiang-ch'eng-hsien\";\"other\"\n\"1800712\";\"Chiang-ch’eng\";\"other\"\n\"1800712\";\"Chiang-ch’eng-ha-ni-tsu-i-tsu-tzu-chih-hsien\";\"other\"\n\"1800712\";\"Chiang-ch’eng-hsien\";\"other\"\n\"1800712\";\"Jiangcheng\";\"other\"\n\"1800712\";\"Kiangcheng-hsien\";\"other\"\n\"1800712\";\"Meng-lieh\";\"other\"\n\"1800712\";\"Meng-lieh-chieh\";\"other\"\n\"1800712\";\"Mengli\";\"other\"\n\"1800712\";\"Mengliejie\";\"other\"\n\"1800712\";\"meng lie\";\"other\"\n\"1800712\";\"勐烈\";\"other\"\n\"1800716\";\"Mengla\";\"main\"\n\"1800716\";\"Mong La\";\"other\"\n\"1800716\";\"Muong La\";\"other\"\n\"1800716\";\"Pan-na-meng-la\";\"other\"\n\"1800716\";\"meng la\";\"other\"\n\"1800716\";\"勐腊\";\"other\"\n\"1800759\";\"Mengcun\";\"main\"\n\"1800759\";\"Meng-ts'un\";\"other\"\n\"1800759\";\"Meng-ts'un-chen\";\"other\"\n\"1800759\";\"Meng-ts’un\";\"other\"\n\"1800759\";\"Meng-ts’un-chen\";\"other\"\n\"1800759\";\"meng cun\";\"other\"\n\"1800759\";\"孟村\";\"other\"\n\"1800764\";\"Mengcheng Chengguanzhen\";\"main\"\n\"1800764\";\"Meng-ch'eng-hsien\";\"other\"\n\"1800764\";\"Meng-ch’eng-hsien\";\"other\"\n\"1800764\";\"Mengcheng\";\"other\"\n\"1800764\";\"蒙城城关镇\";\"other\"\n\"1800766\";\"Mengbi\";\"main\"\n\"1800766\";\"Mengbixiang\";\"other\"\n\"1800766\";\"meng bi\";\"other\"\n\"1800766\";\"meng bi xiang\";\"other\"\n\"1800766\";\"猛必\";\"other\"\n\"1800766\";\"猛必乡\";\"other\"\n\"1800774\";\"Meizhuang\";\"main\"\n\"1800774\";\"Mei-chuang\";\"other\"\n\"1800774\";\"Mei-chuang-shih\";\"other\"\n\"1800774\";\"Meizhuang Zhen\";\"other\"\n\"1800774\";\"梅庄\";\"other\"\n\"1800774\";\"梅庄镇\";\"other\"\n\"1800779\";\"Meizhou\";\"main\"\n\"1800779\";\"Chia-ying\";\"other\"\n\"1800779\";\"Kaying\";\"other\"\n\"1800779\";\"Mehjchzhou\";\"other\"\n\"1800779\";\"Mei\";\"other\"\n\"1800779\";\"Mei-ch'eng-chen\";\"other\"\n\"1800779\";\"Mei-ch’eng-chen\";\"other\"\n\"1800779\";\"Mei-hsien\";\"other\"\n\"1800779\";\"Meixian\";\"other\"\n\"1800779\";\"Мэйчжоу\";\"other\"\n\"1800779\";\"梅州\";\"other\"\n\"1800780\";\"Meizhou\";\"main\"\n\"1800780\";\"Mei-chou\";\"other\"\n\"1800780\";\"Mei-chou-hsun\";\"other\"\n\"1800780\";\"Mei-chou-hsün\";\"other\"\n\"1800780\";\"mei zhou\";\"other\"\n\"1800780\";\"梅洲\";\"other\"\n\"1800785\";\"Meiyuan\";\"main\"\n\"1800785\";\"Mei-yuan-chen\";\"other\"\n\"1800785\";\"Mei-yüan-chen\";\"other\"\n\"1800785\";\"Meiyuan Zhen\";\"other\"\n\"1800785\";\"mei yuan\";\"other\"\n\"1800785\";\"美原\";\"other\"\n\"1800792\";\"Meixing\";\"main\"\n\"1800792\";\"Hsiao-chin\";\"other\"\n\"1800792\";\"Hsin-chieh-tzu\";\"other\"\n\"1800792\";\"MOWKUNG\";\"other\"\n\"1800792\";\"Mou-kun\";\"other\"\n\"1800792\";\"Mou-kung\";\"other\"\n\"1800792\";\"Mou-kung-hsien\";\"other\"\n\"1800792\";\"Mougun\";\"other\"\n\"1800792\";\"Mowkung-hsien\";\"other\"\n\"1800792\";\"Mowkungting\";\"other\"\n\"1800792\";\"Siaokin\";\"other\"\n\"1800792\";\"Sin'tszetszo\";\"other\"\n\"1800792\";\"Sin'tszetszy\";\"other\"\n\"1800792\";\"Sinkaisze\";\"other\"\n\"1800792\";\"Sin’tszetszy\";\"other\"\n\"1800792\";\"Sin’tszetszö\";\"other\"\n\"1800792\";\"Xiaojin\";\"other\"\n\"1800792\";\"Zainlha\";\"other\"\n\"1800792\";\"mei xing\";\"other\"\n\"1800792\";\"美兴\";\"other\"\n\"1800801\";\"Meixi\";\"main\"\n\"1800801\";\"Meixi Xiang\";\"other\"\n\"1800801\";\"梅溪\";\"other\"\n\"1800801\";\"梅溪乡\";\"other\"\n\"1800815\";\"Meishan\";\"main\"\n\"1800815\";\"Chin-chai\";\"other\"\n\"1800815\";\"Chin-chai-hsien\";\"other\"\n\"1800815\";\"Jinzhai\";\"other\"\n\"1800815\";\"Mei-shan-chen\";\"other\"\n\"1800815\";\"mei shan\";\"other\"\n\"1800815\";\"梅山\";\"other\"\n\"1800829\";\"Wuchuan\";\"main\"\n\"1800829\";\"Hai-lu\";\"other\"\n\"1800829\";\"Mei-lu-shih\";\"other\"\n\"1800829\";\"Mei-mao\";\"other\"\n\"1800829\";\"Meilu\";\"other\"\n\"1800829\";\"Muiluk\";\"other\"\n\"1800829\";\"吴川\";\"other\"\n\"1800831\";\"Meilong\";\"main\"\n\"1800831\";\"Mei-lung\";\"other\"\n\"1800831\";\"Mei-lung-hsu\";\"other\"\n\"1800831\";\"Mei-lung-hsü\";\"other\"\n\"1800831\";\"mei long\";\"other\"\n\"1800831\";\"梅陇\";\"other\"\n\"1800838\";\"Meilin\";\"main\"\n\"1800838\";\"Meilin Zhen\";\"other\"\n\"1800838\";\"梅林\";\"other\"\n\"1800838\";\"梅林镇\";\"other\"\n\"1800855\";\"Meijiang\";\"main\"\n\"1800855\";\"Meijiang Zhen\";\"other\"\n\"1800855\";\"Ning-tu\";\"other\"\n\"1800855\";\"Ning-tu-hsien\";\"other\"\n\"1800855\";\"Ningdu Xian\";\"other\"\n\"1800855\";\"宁都县\";\"other\"\n\"1800855\";\"梅江\";\"other\"\n\"1800855\";\"梅江镇\";\"other\"\n\"1800869\";\"Meigang\";\"main\"\n\"1800869\";\"Meigang Xiang\";\"other\"\n\"1800869\";\"梅港\";\"other\"\n\"1800869\";\"梅港乡\";\"other\"\n\"1800882\";\"Meicheng\";\"main\"\n\"1800882\";\"Ch'ien-shan\";\"other\"\n\"1800882\";\"Ch’ien-shan\";\"other\"\n\"1800882\";\"Qianshan\";\"other\"\n\"1800882\";\"Tsienshanhsien\";\"other\"\n\"1800882\";\"mei cheng\";\"other\"\n\"1800882\";\"梅城\";\"other\"\n\"1800885\";\"Meicheng\";\"main\"\n\"1800885\";\"Min-ch'ing\";\"other\"\n\"1800885\";\"Min-ch'ing-hsien\";\"other\"\n\"1800885\";\"Min-ch'ing-hsien-ch'eng\";\"other\"\n\"1800885\";\"Min-ch’ing\";\"other\"\n\"1800885\";\"Min-ch’ing-hsien\";\"other\"\n\"1800885\";\"Min-ch’ing-hsien-ch’eng\";\"other\"\n\"1800885\";\"Min-tsing-hsien\";\"other\"\n\"1800885\";\"Minqing\";\"other\"\n\"1800885\";\"Mintsing\";\"other\"\n\"1800885\";\"mei cheng\";\"other\"\n\"1800885\";\"梅城\";\"other\"\n\"1800886\";\"Meichang\";\"main\"\n\"1800898\";\"Mazhuang\";\"main\"\n\"1800904\";\"Mazhuang\";\"main\"\n\"1800904\";\"Ma-chuang\";\"other\"\n\"1800904\";\"Ma-chuang-chen\";\"other\"\n\"1800904\";\"Mazhuang Zhen\";\"other\"\n\"1800904\";\"ma zhuang\";\"other\"\n\"1800904\";\"ma zhuang zhen\";\"other\"\n\"1800904\";\"马庄\";\"other\"\n\"1800904\";\"马庄镇\";\"other\"\n\"1800906\";\"Mazhu\";\"main\"\n\"1800906\";\"Ma-chu\";\"other\"\n\"1800906\";\"Ma-chu-chen\";\"other\"\n\"1800906\";\"马渚\";\"other\"\n\"1800906\";\"马渚镇\";\"other\"\n\"1800912\";\"Mazhaozhen\";\"main\"\n\"1800912\";\"Ma-chao\";\"other\"\n\"1800912\";\"Ma-chao-chen\";\"other\"\n\"1800912\";\"Mazhao Zhen\";\"other\"\n\"1800912\";\"ma zhao\";\"other\"\n\"1800912\";\"ma zhao zhen\";\"other\"\n\"1800912\";\"马召\";\"other\"\n\"1800912\";\"马召镇\";\"other\"\n\"1800919\";\"Mazha\";\"main\"\n\"1800919\";\"Ma-cha\";\"other\"\n\"1800919\";\"Ma-cha-hsu\";\"other\"\n\"1800919\";\"Ma-cha-hsü\";\"other\"\n\"1800919\";\"Mazha Zhen\";\"other\"\n\"1800919\";\"ma zha\";\"other\"\n\"1800919\";\"麻榨\";\"other\"\n\"1800929\";\"Mayingzhuang\";\"main\"\n\"1800929\";\"Ma-ying-chuang\";\"other\"\n\"1800929\";\"Mayingzhuang Xiang\";\"other\"\n\"1800929\";\"马营庄\";\"other\"\n\"1800929\";\"马营庄乡\";\"other\"\n\"1800931\";\"Maying\";\"main\"\n\"1800931\";\"Ma-ying-ts'un\";\"other\"\n\"1800931\";\"Ma-ying-ts’un\";\"other\"\n\"1800931\";\"Maying Xiang\";\"other\"\n\"1800931\";\"马营\";\"other\"\n\"1800931\";\"马营乡\";\"other\"\n\"1800935\";\"Maying\";\"main\"\n\"1800935\";\"Ma-ying-chen\";\"other\"\n\"1800935\";\"马营\";\"other\"\n\"1800936\";\"Maying\";\"main\"\n\"1800936\";\"Ma-ying-chen\";\"other\"\n\"1800936\";\"Maying Zhen\";\"other\"\n\"1800936\";\"马营\";\"other\"\n\"1800936\";\"马营镇\";\"other\"\n\"1800945\";\"Mayanhe\";\"main\"\n\"1800945\";\"Ma-yen\";\"other\"\n\"1800945\";\"Ma-yen-ho\";\"other\"\n\"1800945\";\"Mayan\";\"other\"\n\"1800945\";\"麻沿河\";\"other\"\n\"1800951\";\"Maxu\";\"main\"\n\"1800951\";\"Maxu Zhen\";\"other\"\n\"1800951\";\"马圩\";\"other\"\n\"1800951\";\"马圩镇\";\"other\"\n\"1800970\";\"Mawei\";\"main\"\n\"1800970\";\"Ma-wei\";\"other\"\n\"1800970\";\"Ma-wei-chen\";\"other\"\n\"1800970\";\"Mawei Zhen\";\"other\"\n\"1800970\";\"Maweipo\";\"other\"\n\"1800970\";\"ma wei\";\"other\"\n\"1800970\";\"ma wei zhen\";\"other\"\n\"1800970\";\"马嵬\";\"other\"\n\"1800970\";\"马嵬镇\";\"other\"\n\"1800981\";\"Mawang\";\"main\"\n\"1800981\";\"Ma-wang-ts'un\";\"other\"\n\"1800981\";\"Ma-wang-ts’un\";\"other\"\n\"1800981\";\"Mawang Jieban\";\"other\"\n\"1800981\";\"Mawangcun\";\"other\"\n\"1800981\";\"Mawangzhen\";\"other\"\n\"1800981\";\"ma wang\";\"other\"\n\"1800981\";\"ma wang jie ban\";\"other\"\n\"1800981\";\"马王\";\"other\"\n\"1800981\";\"马王街办\";\"other\"\n\"1801019\";\"Matou\";\"main\"\n\"1801019\";\"Kuo-te\";\"other\"\n\"1801019\";\"Kuo-te-chen\";\"other\"\n\"1801019\";\"Kuo-te-hsien\";\"other\"\n\"1801019\";\"Kwoteh\";\"other\"\n\"1801019\";\"Kwoteh-hsien\";\"other\"\n\"1801019\";\"Ma-t'ou-chen\";\"other\"\n\"1801019\";\"Ma-t’ou-chen\";\"other\"\n\"1801019\";\"P'ing-kuo\";\"other\"\n\"1801019\";\"P'ing-kuo-hsien\";\"other\"\n\"1801019\";\"P’ing-kuo\";\"other\"\n\"1801019\";\"P’ing-kuo-hsien\";\"other\"\n\"1801019\";\"ma tou\";\"other\"\n\"1801019\";\"马头\";\"other\"\n\"1801021\";\"Matiwan\";\"main\"\n\"1801021\";\"马蹄湾\";\"other\"\n\"1801032\";\"Matangzhen\";\"main\"\n\"1801032\";\"Ma-t'ang-chen\";\"other\"\n\"1801032\";\"Ma-t’ang-chen\";\"other\"\n\"1801032\";\"Matang\";\"other\"\n\"1801032\";\"Matang Zhen\";\"other\"\n\"1801032\";\"马塘\";\"other\"\n\"1801032\";\"马塘镇\";\"other\"\n\"1801062\";\"Mashankou\";\"main\"\n\"1801062\";\"Mashankou Zhen\";\"other\"\n\"1801062\";\"ma shan kou\";\"other\"\n\"1801062\";\"ma shan kou zhen\";\"other\"\n\"1801062\";\"马山口\";\"other\"\n\"1801062\";\"马山口镇\";\"other\"\n\"1801149\";\"Maoshan\";\"main\"\n\"1801149\";\"Mao-shan-ts'un\";\"other\"\n\"1801149\";\"Mao-shan-ts’un\";\"other\"\n\"1801149\";\"Maoshan Zhen\";\"other\"\n\"1801149\";\"茅山\";\"other\"\n\"1801149\";\"茅山镇\";\"other\"\n\"1801166\";\"Maoping\";\"main\"\n\"1801166\";\"mao ping\";\"other\"\n\"1801166\";\"茅坪\";\"other\"\n\"1801169\";\"Maoping\";\"main\"\n\"1801169\";\"Maoping Xiang\";\"other\"\n\"1801169\";\"mao ping\";\"other\"\n\"1801169\";\"mao ping xiang\";\"other\"\n\"1801169\";\"茅坪\";\"other\"\n\"1801169\";\"茅坪乡\";\"other\"\n\"1801172\";\"Maoping\";\"main\"\n\"1801172\";\"Fang-p'ing\";\"other\"\n\"1801172\";\"Fang-p’ing\";\"other\"\n\"1801172\";\"Maoping Zhen\";\"other\"\n\"1801174\";\"Maoping\";\"main\"\n\"1801174\";\"Maoping Zhen\";\"other\"\n\"1801174\";\"T'u-ch'iao\";\"other\"\n\"1801174\";\"T’u-ch’iao\";\"other\"\n\"1801180\";\"Maoming\";\"main\"\n\"1801180\";\"Hsin-p'o\";\"other\"\n\"1801180\";\"Hsin-p’o\";\"other\"\n\"1801180\";\"Mao-ming-shih\";\"other\"\n\"1801180\";\"mao ming\";\"other\"\n\"1801180\";\"茂名\";\"other\"\n\"1801195\";\"Maojing\";\"main\"\n\"1801195\";\"Mao-ching\";\"other\"\n\"1801195\";\"Maojing Xiang\";\"other\"\n\"1801195\";\"毛井\";\"other\"\n\"1801195\";\"毛井乡\";\"other\"\n\"1801202\";\"Maojiazao\";\"main\"\n\"1801202\";\"Mao-chia-tsao\";\"other\"\n\"1801202\";\"Maojiazao Zhen\";\"other\"\n\"1801202\";\"毛家皂\";\"other\"\n\"1801202\";\"毛家皂镇\";\"other\"\n\"1801279\";\"Liangshuijing\";\"main\"\n\"1801279\";\"Manshui\";\"other\"\n\"1801279\";\"Manshui Xiang\";\"other\"\n\"1801279\";\"liang shui jing\";\"other\"\n\"1801279\";\"man shui\";\"other\"\n\"1801279\";\"man shui xiang\";\"other\"\n\"1801279\";\"凉水井\";\"other\"\n\"1801279\";\"漫水\";\"other\"\n\"1801279\";\"漫水乡\";\"other\"\n\"1801298\";\"Quedantang\";\"main\"\n\"1801298\";\"Guinan\";\"other\"\n\"1801298\";\"Guynan'\";\"other\"\n\"1801298\";\"Guynan’\";\"other\"\n\"1801298\";\"Kuei-nan\";\"other\"\n\"1801298\";\"Mang-la\";\"other\"\n\"1801298\";\"Mangla Xiang\";\"other\"\n\"1801298\";\"Mangra\";\"other\"\n\"1801298\";\"却旦塘\";\"other\"\n\"1801298\";\"茫拉乡\";\"other\"\n\"1801330\";\"Malou\";\"main\"\n\"1801330\";\"ma lou\";\"other\"\n\"1801330\";\"马楼\";\"other\"\n\"1801345\";\"Maling\";\"main\"\n\"1801345\";\"Maling Zhen\";\"other\"\n\"1801345\";\"马岭\";\"other\"\n\"1801345\";\"马岭镇\";\"other\"\n\"1801353\";\"Malin\";\"main\"\n\"1801367\";\"Malianchuan\";\"main\"\n\"1801367\";\"Ma-lien-ch'uan\";\"other\"\n\"1801367\";\"Ma-lien-ch’uan\";\"other\"\n\"1801367\";\"Malian Xiang\";\"other\"\n\"1801367\";\"马连乡\";\"other\"\n\"1801367\";\"马连川\";\"other\"\n\"1801368\";\"Malian\";\"main\"\n\"1801368\";\"Ma-lien\";\"other\"\n\"1801368\";\"Ma-lien-ts'un\";\"other\"\n\"1801368\";\"Ma-lien-ts’un\";\"other\"\n\"1801368\";\"Malian Zhen\";\"other\"\n\"1801368\";\"ma lian\";\"other\"\n\"1801368\";\"ma lian zhen\";\"other\"\n\"1801368\";\"马连\";\"other\"\n\"1801368\";\"马连镇\";\"other\"\n\"1801374\";\"Mali\";\"main\"\n\"1801374\";\"Ma-li-chen\";\"other\"\n\"1801374\";\"Ma-li-p'o-kung-she\";\"other\"\n\"1801374\";\"Ma-li-p'o-shih\";\"other\"\n\"1801374\";\"Ma-li-p’o-kung-she\";\"other\"\n\"1801374\";\"Ma-li-p’o-shih\";\"other\"\n\"1801374\";\"Malipo\";\"other\"\n\"1801374\";\"ma li\";\"other\"\n\"1801374\";\"麻栗\";\"other\"\n\"1801383\";\"Makou\";\"main\"\n\"1801383\";\"Makou Zhen\";\"other\"\n\"1801383\";\"马口\";\"other\"\n\"1801383\";\"马口镇\";\"other\"\n\"1801398\";\"Majin\";\"main\"\n\"1801398\";\"Kinmachen\";\"other\"\n\"1801398\";\"Ma-chin\";\"other\"\n\"1801398\";\"Ma-chin-chen\";\"other\"\n\"1801398\";\"Ma-chin-chien\";\"other\"\n\"1801398\";\"Majin Zhen\";\"other\"\n\"1801398\";\"ma jin\";\"other\"\n\"1801398\";\"ma jin zhen\";\"other\"\n\"1801398\";\"马金\";\"other\"\n\"1801398\";\"马金镇\";\"other\"\n\"1801401\";\"Majie\";\"main\"\n\"1801401\";\"Ma-chieh\";\"other\"\n\"1801401\";\"Majiezi\";\"other\"\n\"1801454\";\"Majiadian\";\"main\"\n\"1801454\";\"Ma-chia-tien\";\"other\"\n\"1801455\";\"Zhijiang\";\"main\"\n\"1801455\";\"Chih-chiang\";\"other\"\n\"1801455\";\"Ma-chia-tien\";\"other\"\n\"1801455\";\"Majiadian\";\"other\"\n\"1801501\";\"Magutian\";\"main\"\n\"1801501\";\"Ma-ku-t'ien\";\"other\"\n\"1801501\";\"Ma-ku-t’ien\";\"other\"\n\"1801501\";\"Magutian Zhen\";\"other\"\n\"1801501\";\"ma gu tian\";\"other\"\n\"1801501\";\"马谷田\";\"other\"\n\"1801510\";\"Magong\";\"main\"\n\"1801510\";\"Ma-kung\";\"other\"\n\"1801510\";\"Ma-tsung\";\"other\"\n\"1801510\";\"ma gong\";\"other\"\n\"1801510\";\"马宫\";\"other\"\n\"1801511\";\"Magitang\";\"main\"\n\"1801511\";\"Chien-cha\";\"other\"\n\"1801511\";\"Jainca\";\"other\"\n\"1801511\";\"Janca\";\"other\"\n\"1801511\";\"Ma-k'o\";\"other\"\n\"1801511\";\"Ma-k'o-t'ang\";\"other\"\n\"1801511\";\"Ma-kai-t'ang\";\"other\"\n\"1801511\";\"Ma-kai-t’ang\";\"other\"\n\"1801511\";\"Ma-k’o\";\"other\"\n\"1801511\";\"Ma-k’o-t’ang\";\"other\"\n\"1801511\";\"Maketang Zhen\";\"other\"\n\"1801511\";\"马克唐\";\"other\"\n\"1801511\";\"马克唐镇\";\"other\"\n\"1801536\";\"Ma’e\";\"main\"\n\"1801536\";\"Ma'e\";\"ascii\"\n\"1801536\";\"Ma'e Zhen\";\"other\"\n\"1801536\";\"Ma-o\";\"other\"\n\"1801536\";\"Ma-o-chen\";\"other\"\n\"1801536\";\"Ma’e Zhen\";\"other\"\n\"1801536\";\"ma e\";\"other\"\n\"1801536\";\"ma e zhen\";\"other\"\n\"1801536\";\"马额\";\"other\"\n\"1801536\";\"马额镇\";\"other\"\n\"1801537\";\"Ma’e\";\"main\"\n\"1801537\";\"Ma'e\";\"ascii\"\n\"1801537\";\"Ma'e Zhen\";\"other\"\n\"1801537\";\"Ma-o\";\"other\"\n\"1801537\";\"Ma-o-chen\";\"other\"\n\"1801537\";\"Ma’e Zhen\";\"other\"\n\"1801537\";\"ma e\";\"other\"\n\"1801537\";\"马额\";\"other\"\n\"1801554\";\"Madian\";\"main\"\n\"1801554\";\"Hsi-ma-tien\";\"other\"\n\"1801554\";\"Ma-tien\";\"other\"\n\"1801554\";\"Madian Zhen\";\"other\"\n\"1801554\";\"马甸\";\"other\"\n\"1801554\";\"马甸镇\";\"other\"\n\"1801558\";\"Madaotou\";\"main\"\n\"1801558\";\"Ma-tao-t'ou\";\"other\"\n\"1801558\";\"Ma-tao-t’ou\";\"other\"\n\"1801558\";\"Madaotou Xiang\";\"other\"\n\"1801558\";\"马道头\";\"other\"\n\"1801558\";\"马道头乡\";\"other\"\n\"1801561\";\"Madao\";\"main\"\n\"1801561\";\"Ma-tao\";\"other\"\n\"1801561\";\"Ma-tao-chen\";\"other\"\n\"1801561\";\"Ma-tao-i\";\"other\"\n\"1801561\";\"Madao Zhen\";\"other\"\n\"1801561\";\"Madaoi\";\"other\"\n\"1801561\";\"Mataoyi\";\"other\"\n\"1801561\";\"马道\";\"other\"\n\"1801561\";\"马道镇\";\"other\"\n\"1801582\";\"Macheng\";\"main\"\n\"1801582\";\"Ma-ch'eng-hsien\";\"other\"\n\"1801582\";\"Ma-ch’eng-hsien\";\"other\"\n\"1801615\";\"Maba\";\"main\"\n\"1801615\";\"Ch'u-chiang\";\"other\"\n\"1801615\";\"Ch’ü-chiang\";\"other\"\n\"1801615\";\"Ma-pa\";\"other\"\n\"1801615\";\"Ma-pa-hsu\";\"other\"\n\"1801615\";\"Ma-pa-hsü\";\"other\"\n\"1801615\";\"Qujiang\";\"other\"\n\"1801615\";\"马坝\";\"other\"\n\"1801617\";\"Ma’an\";\"main\"\n\"1801617\";\"Ma'an\";\"ascii\"\n\"1801617\";\"Ma'anshi\";\"other\"\n\"1801617\";\"Ma-an-shih\";\"other\"\n\"1801617\";\"Ma’anshi\";\"other\"\n\"1801620\";\"Ma’anshan\";\"main\"\n\"1801620\";\"Ma'anshan\";\"ascii\"\n\"1801620\";\"Kai-yuan\";\"other\"\n\"1801620\";\"Ma'anshan Shi\";\"other\"\n\"1801620\";\"Ma-an-shan-shih\";\"other\"\n\"1801620\";\"Mang-shan\";\"other\"\n\"1801620\";\"Ma’anshan Shi\";\"other\"\n\"1801620\";\"ma an shan\";\"other\"\n\"1801620\";\"ma an shan shi\";\"other\"\n\"1801620\";\"马鞍山\";\"other\"\n\"1801620\";\"马鞍山市\";\"other\"\n\"1801640\";\"Luzhou\";\"main\"\n\"1801640\";\"Khehfehj\";\"other\"\n\"1801640\";\"Lu\";\"other\"\n\"1801640\";\"Lu-chou\";\"other\"\n\"1801640\";\"Lu-chou-shih\";\"other\"\n\"1801640\";\"Lu-hsien\";\"other\"\n\"1801640\";\"Luchow\";\"other\"\n\"1801640\";\"lu zhou\";\"other\"\n\"1801640\";\"Хэфэй\";\"other\"\n\"1801640\";\"泸州\";\"other\"\n\"1801645\";\"Luzhi\";\"main\"\n\"1801645\";\"Lu-chih\";\"other\"\n\"1801645\";\"Lu-chih-chen\";\"other\"\n\"1801645\";\"甪直\";\"other\"\n\"1801650\";\"Luzhai\";\"main\"\n\"1801650\";\"Lu-chai\";\"other\"\n\"1801650\";\"Lu-chai-chen\";\"other\"\n\"1801650\";\"Lu-chai-hsu\";\"other\"\n\"1801650\";\"Lu-chai-hsü\";\"other\"\n\"1801650\";\"lu zhai\";\"other\"\n\"1801650\";\"鹿寨\";\"other\"\n\"1801654\";\"Luyuan\";\"main\"\n\"1801654\";\"Gaolin\";\"other\"\n\"1801654\";\"Gaoling\";\"other\"\n\"1801654\";\"Kao-ling\";\"other\"\n\"1801654\";\"Kao-ling-hsien\";\"other\"\n\"1801654\";\"Kao-ling-hsien-ch'eng\";\"other\"\n\"1801654\";\"Kao-ling-hsien-ch’eng\";\"other\"\n\"1801654\";\"lu yuan\";\"other\"\n\"1801654\";\"鹿苑\";\"other\"\n\"1801669\";\"Luyang\";\"main\"\n\"1801682\";\"Lüxiang\";\"main\"\n\"1801682\";\"Luxiang\";\"ascii\"\n\"1801682\";\"Lu-hsiang\";\"other\"\n\"1801682\";\"Luxiang Zhen\";\"other\"\n\"1801682\";\"Lü-hsiang\";\"other\"\n\"1801682\";\"吕巷\";\"other\"\n\"1801682\";\"吕巷镇\";\"other\"\n\"1801684\";\"Luxia\";\"main\"\n\"1801684\";\"Lu-hsia\";\"other\"\n\"1801709\";\"Lütian\";\"main\"\n\"1801709\";\"Lutian\";\"ascii\"\n\"1801709\";\"Lu-t'ien\";\"other\"\n\"1801709\";\"Lutian Zhen\";\"other\"\n\"1801709\";\"Lü-t’ien\";\"other\"\n\"1801709\";\"Lütian Zhen\";\"other\"\n\"1801709\";\"lu tian\";\"other\"\n\"1801709\";\"吕田\";\"other\"\n\"1801720\";\"Lüsigang\";\"main\"\n\"1801720\";\"Lusigang\";\"ascii\"\n\"1801720\";\"Lu-ssu\";\"other\"\n\"1801720\";\"Lu-ssu-chen\";\"other\"\n\"1801720\";\"Lusi\";\"other\"\n\"1801720\";\"Lusigang Zhen\";\"other\"\n\"1801720\";\"Lusze\";\"other\"\n\"1801720\";\"Lü-ssu\";\"other\"\n\"1801720\";\"Lü-ssu-chen\";\"other\"\n\"1801720\";\"Lüsi\";\"other\"\n\"1801720\";\"Lüsigang Zhen\";\"other\"\n\"1801720\";\"吕四港\";\"other\"\n\"1801720\";\"吕四港镇\";\"other\"\n\"1801722\";\"Lüshun\";\"main\"\n\"1801722\";\"Lushun\";\"ascii\"\n\"1801722\";\"Lu-shun-k'ou\";\"other\"\n\"1801722\";\"Lu-shun-k'ou-ch'u\";\"other\"\n\"1801722\";\"Lu-shun-shih\";\"other\"\n\"1801722\";\"Lueshun\";\"other\"\n\"1801722\";\"Lueshunkou\";\"other\"\n\"1801722\";\"Lusunkchou\";\"other\"\n\"1801722\";\"Lušunkchou\";\"other\"\n\"1801722\";\"Lü-shun-k’ou\";\"other\"\n\"1801722\";\"Lü-shun-k’ou-ch’ü\";\"other\"\n\"1801722\";\"Lü-shun-shih\";\"other\"\n\"1801722\";\"Lüshunkou\";\"other\"\n\"1801722\";\"Por Arthur\";\"other\"\n\"1801722\";\"Port Arthur\";\"other\"\n\"1801722\";\"Port-Artur\";\"other\"\n\"1801722\";\"Redzyun\";\"other\"\n\"1801722\";\"Riojun\";\"other\"\n\"1801722\";\"Ryojun\";\"other\"\n\"1801722\";\"Rëdzyun\";\"other\"\n\"1801722\";\"lu shun\";\"other\"\n\"1801722\";\"lu shun kou qu\";\"other\"\n\"1801722\";\"lwisun\";\"other\"\n\"1801722\";\"port-artur\";\"other\"\n\"1801722\";\"Порт-Артур\";\"other\"\n\"1801722\";\"פורט ארתור\";\"other\"\n\"1801722\";\"旅順\";\"other\"\n\"1801722\";\"旅顺口区\";\"other\"\n\"1801722\";\"뤼순\";\"other\"\n\"1801730\";\"Liushikou\";\"main\"\n\"1801730\";\"Liushi\";\"other\"\n\"1801730\";\"Liushi Zhen\";\"other\"\n\"1801730\";\"Lu-shih-k'ou\";\"other\"\n\"1801730\";\"Lu-shih-k'ou-shih\";\"other\"\n\"1801730\";\"Lü-shih-k’ou\";\"other\"\n\"1801730\";\"Lü-shih-k’ou-shih\";\"other\"\n\"1801730\";\"liu shi zhen\";\"other\"\n\"1801730\";\"六石口\";\"other\"\n\"1801730\";\"六石镇\";\"other\"\n\"1801738\";\"Luyang\";\"main\"\n\"1801738\";\"Lu-shan-hsien\";\"other\"\n\"1801738\";\"Lushan\";\"other\"\n\"1801738\";\"Luyang Jiedao\";\"other\"\n\"1801738\";\"lu yang\";\"other\"\n\"1801738\";\"lu yang jie dao\";\"other\"\n\"1801738\";\"鲁阳\";\"other\"\n\"1801738\";\"鲁阳街道\";\"other\"\n\"1801753\";\"Luqiao\";\"main\"\n\"1801753\";\"Lu-ch'iao\";\"other\"\n\"1801753\";\"Lu-ch'iao-chen\";\"other\"\n\"1801753\";\"Lu-ch’iao\";\"other\"\n\"1801753\";\"Lu-ch’iao-chen\";\"other\"\n\"1801753\";\"Luqiao Zhen\";\"other\"\n\"1801753\";\"Yu-ch'iao-chen\";\"other\"\n\"1801753\";\"Yü-ch’iao-chen\";\"other\"\n\"1801753\";\"lu qiao\";\"other\"\n\"1801753\";\"lu qiao zhen\";\"other\"\n\"1801753\";\"鲁桥\";\"other\"\n\"1801753\";\"鲁桥镇\";\"other\"\n\"1801757\";\"Luqiao\";\"main\"\n\"1801757\";\"Lu-ch'iao\";\"other\"\n\"1801757\";\"Lu-ch'iao-chen\";\"other\"\n\"1801757\";\"Lu-ch’iao\";\"other\"\n\"1801757\";\"Lu-ch’iao-chen\";\"other\"\n\"1801757\";\"Luqiaozhen\";\"other\"\n\"1801757\";\"路桥\";\"other\"\n\"1801782\";\"Luoyuan\";\"main\"\n\"1801782\";\"Lo-yuan\";\"other\"\n\"1801782\";\"Lo-yuan-chieh\";\"other\"\n\"1801782\";\"Lo-yüan\";\"other\"\n\"1801782\";\"Lo-yüan-chieh\";\"other\"\n\"1801782\";\"Luoyuan Zhen\";\"other\"\n\"1801782\";\"Luoyuanjie\";\"other\"\n\"1801782\";\"luo yuan\";\"other\"\n\"1801782\";\"洛源\";\"other\"\n\"1801792\";\"Luoyang\";\"main\"\n\"1801792\";\"Honan\";\"other\"\n\"1801792\";\"Honanfu\";\"other\"\n\"1801792\";\"Lac Duong\";\"other\"\n\"1801792\";\"Lo-yand\";\"other\"\n\"1801792\";\"Lo-yang\";\"other\"\n\"1801792\";\"Lo-yang-hsien\";\"other\"\n\"1801792\";\"Lo-yang-shih\";\"other\"\n\"1801792\";\"Lojan\";\"other\"\n\"1801792\";\"Lạc Dương\";\"other\"\n\"1801792\";\"luo yang\";\"other\"\n\"1801792\";\"luo yang shi\";\"other\"\n\"1801792\";\"lwoyang\";\"other\"\n\"1801792\";\"Лоян\";\"other\"\n\"1801792\";\"洛阳市\";\"other\"\n\"1801792\";\"洛陽\";\"other\"\n\"1801792\";\"뤄양\";\"other\"\n\"1801797\";\"Luoyang\";\"main\"\n\"1801797\";\"Lo-yang\";\"other\"\n\"1801797\";\"Lojan\";\"other\"\n\"1801797\";\"Лоян\";\"other\"\n\"1801799\";\"Luoyang\";\"main\"\n\"1801799\";\"Boluo\";\"other\"\n\"1801799\";\"Fu-ch'eng\";\"other\"\n\"1801799\";\"Fu-ch'eng-chen\";\"other\"\n\"1801799\";\"Fu-ch’eng\";\"other\"\n\"1801799\";\"Fu-ch’eng-chen\";\"other\"\n\"1801799\";\"Hsien-ch'eng-chen\";\"other\"\n\"1801799\";\"Hsien-ch’eng-chen\";\"other\"\n\"1801799\";\"Lojan\";\"other\"\n\"1801799\";\"Luoyang Zhen\";\"other\"\n\"1801799\";\"Po-ch'eng-chen\";\"other\"\n\"1801799\";\"Po-ch’eng-chen\";\"other\"\n\"1801799\";\"Po-lo\";\"other\"\n\"1801799\";\"Po-lo-hsien\";\"other\"\n\"1801799\";\"Poklo\";\"other\"\n\"1801799\";\"Poklohsien\";\"other\"\n\"1801799\";\"Лоян\";\"other\"\n\"1801799\";\"罗阳\";\"other\"\n\"1801806\";\"Luoxiong\";\"main\"\n\"1801806\";\"Lo-p'ing\";\"other\"\n\"1801806\";\"Lo-p'ing-hsien\";\"other\"\n\"1801806\";\"Lo-p’ing\";\"other\"\n\"1801806\";\"Lo-p’ing-hsien\";\"other\"\n\"1801806\";\"Lopingchow\";\"other\"\n\"1801806\";\"Luoping\";\"other\"\n\"1801806\";\"luo xiong\";\"other\"\n\"1801806\";\"罗雄\";\"other\"\n\"1801812\";\"Luoxi\";\"main\"\n\"1801812\";\"Luoxi Zhen\";\"other\"\n\"1801812\";\"罗溪\";\"other\"\n\"1801812\";\"罗溪镇\";\"other\"\n\"1801821\";\"Luowa\";\"main\"\n\"1801821\";\"Luowa Xiang\";\"other\"\n\"1801821\";\"罗洼\";\"other\"\n\"1801821\";\"罗洼乡\";\"other\"\n\"1801826\";\"Luotouzhen\";\"main\"\n\"1801826\";\"Lo-t'o-ch'iao\";\"other\"\n\"1801826\";\"Lo-t’o-ch’iao\";\"other\"\n\"1801826\";\"Luotuo\";\"other\"\n\"1801826\";\"Luotuo Jiedao\";\"other\"\n\"1801826\";\"luo tuo\";\"other\"\n\"1801826\";\"luo tuo jie dao\";\"other\"\n\"1801826\";\"骆驼\";\"other\"\n\"1801826\";\"骆驼街道\";\"other\"\n\"1801830\";\"Luotian\";\"main\"\n\"1801830\";\"Luotian Zhen\";\"other\"\n\"1801830\";\"螺田\";\"other\"\n\"1801830\";\"螺田镇\";\"other\"\n\"1801850\";\"Luorong\";\"main\"\n\"1801850\";\"Chiu-lo-jung\";\"other\"\n\"1801850\";\"Lo-jung\";\"other\"\n\"1801850\";\"Lo-jung-hsien\";\"other\"\n\"1801850\";\"Lo-jung-hsien-ch'eng\";\"other\"\n\"1801850\";\"Lo-jung-hsien-ch’eng\";\"other\"\n\"1801850\";\"Loyung-hsien\";\"other\"\n\"1801858\";\"Luoqiao\";\"main\"\n\"1801858\";\"Li-liao\";\"other\"\n\"1801858\";\"Lo-ch'iao\";\"other\"\n\"1801858\";\"Lo-ch’iao\";\"other\"\n\"1801889\";\"Luokou\";\"main\"\n\"1801889\";\"Lo-k'ou\";\"other\"\n\"1801889\";\"Lo-k’ou\";\"other\"\n\"1801889\";\"Luokou Zhen\";\"other\"\n\"1801889\";\"洛口\";\"other\"\n\"1801889\";\"洛口镇\";\"other\"\n\"1801894\";\"Luojiu\";\"main\"\n\"1801894\";\"Lo-chiu\";\"other\"\n\"1801907\";\"Luojiaping\";\"main\"\n\"1801907\";\"Luoping\";\"other\"\n\"1801907\";\"Luoping Xiang\";\"other\"\n\"1801907\";\"luo jia ping\";\"other\"\n\"1801907\";\"luo ping\";\"other\"\n\"1801907\";\"luo ping xiang\";\"other\"\n\"1801907\";\"罗坪\";\"other\"\n\"1801907\";\"罗坪乡\";\"other\"\n\"1801907\";\"罗家坪\";\"other\"\n\"1801909\";\"Luojiang\";\"main\"\n\"1801909\";\"Lo-chiang\";\"other\"\n\"1801909\";\"Lo-chiang-chen\";\"other\"\n\"1801909\";\"Lo-chiang-hsien\";\"other\"\n\"1801909\";\"Lokiang\";\"other\"\n\"1801909\";\"Lokiang-hsien\";\"other\"\n\"1801909\";\"Lotszyan\";\"other\"\n\"1801909\";\"luo jiang\";\"other\"\n\"1801909\";\"罗江\";\"other\"\n\"1801934\";\"Luohe\";\"main\"\n\"1801934\";\"Lo-he\";\"other\"\n\"1801934\";\"Lo-ho\";\"other\"\n\"1801934\";\"Lo-ho-chai\";\"other\"\n\"1801934\";\"Lo-ho-shih\";\"other\"\n\"1801934\";\"T'a-ho\";\"other\"\n\"1801934\";\"T'a-ho-chai\";\"other\"\n\"1801934\";\"T’a-ho\";\"other\"\n\"1801934\";\"T’a-ho-chai\";\"other\"\n\"1801951\";\"Luofu\";\"main\"\n\"1801951\";\"Lo-fu\";\"other\"\n\"1801951\";\"Luofu Zhen\";\"other\"\n\"1801951\";\"luo fu\";\"other\"\n\"1801951\";\"罗浮\";\"other\"\n\"1801958\";\"Luofang\";\"main\"\n\"1801958\";\"Lo-fang\";\"other\"\n\"1801958\";\"Luofang Xiang\";\"other\"\n\"1801958\";\"罗坊\";\"other\"\n\"1801958\";\"罗坊乡\";\"other\"\n\"1801980\";\"Luochuan\";\"main\"\n\"1801980\";\"Luochuan Xiang\";\"other\"\n\"1801980\";\"罗川\";\"other\"\n\"1801980\";\"罗川乡\";\"other\"\n\"1801982\";\"Luocheng\";\"main\"\n\"1801982\";\"Guanghan\";\"other\"\n\"1801982\";\"Han-chou\";\"other\"\n\"1801982\";\"Hanchow\";\"other\"\n\"1801982\";\"Kuang-han\";\"other\"\n\"1801982\";\"Kuang-han-hsien\";\"other\"\n\"1801982\";\"Kwanghan\";\"other\"\n\"1801982\";\"Kwanghan-hsien\";\"other\"\n\"1801982\";\"luo cheng\";\"other\"\n\"1801982\";\"雒城\";\"other\"\n\"1801983\";\"Luocheng\";\"main\"\n\"1801983\";\"Lo-ch'eng-p'u\";\"other\"\n\"1801983\";\"Lo-ch’eng-p’u\";\"other\"\n\"1801983\";\"罗城\";\"other\"\n\"1801984\";\"Luocheng\";\"main\"\n\"1801984\";\"Huei-an\";\"other\"\n\"1801984\";\"Hui'an\";\"other\"\n\"1801984\";\"Hui-an-hsien\";\"other\"\n\"1801984\";\"Hui’an\";\"other\"\n\"1801984\";\"Hweian\";\"other\"\n\"1801984\";\"Hweianhsien\";\"other\"\n\"1801984\";\"luo cheng\";\"other\"\n\"1801984\";\"螺城\";\"other\"\n\"1802013\";\"Lufu\";\"main\"\n\"1802013\";\"Dongfanghong\";\"other\"\n\"1802013\";\"Lu-nan-hsien\";\"other\"\n\"1802013\";\"Lu-nan-i-tsu-tzu-chih-hsien\";\"other\"\n\"1802013\";\"Lunan\";\"other\"\n\"1802013\";\"Lunan-chow\";\"other\"\n\"1802013\";\"Shilin Yizu Zizhixian\";\"other\"\n\"1802013\";\"lu fu\";\"other\"\n\"1802013\";\"shi lin yi zu zi zhi xian\";\"other\"\n\"1802013\";\"石林彝族自治县\";\"other\"\n\"1802013\";\"鹿阜\";\"other\"\n\"1802036\";\"Lukou\";\"main\"\n\"1802036\";\"Lu-k'ou-chen\";\"other\"\n\"1802036\";\"Lu-k’ou-chen\";\"other\"\n\"1802036\";\"Lukou Zhen\";\"other\"\n\"1802036\";\"lu kou\";\"other\"\n\"1802036\";\"lu kou zhen\";\"other\"\n\"1802036\";\"禄口\";\"other\"\n\"1802036\";\"禄口镇\";\"other\"\n\"1802040\";\"Lukou\";\"main\"\n\"1802040\";\"Chu-chou\";\"other\"\n\"1802040\";\"Chu-chou-hsien\";\"other\"\n\"1802040\";\"Lu-k'ou-shih\";\"other\"\n\"1802040\";\"Lu-k’ou-shih\";\"other\"\n\"1802040\";\"Lukow\";\"other\"\n\"1802040\";\"Zhuzhou\";\"other\"\n\"1802040\";\"lu kou\";\"other\"\n\"1802040\";\"渌口\";\"other\"\n\"1802068\";\"Lucheng\";\"main\"\n\"1802068\";\"Lu-chiang\";\"other\"\n\"1802068\";\"Lu-chiang-hsien\";\"other\"\n\"1802068\";\"Lujiang\";\"other\"\n\"1802068\";\"Lukiang\";\"other\"\n\"1802068\";\"Lukiang-hsien\";\"other\"\n\"1802068\";\"庐城\";\"other\"\n\"1802076\";\"Lubu\";\"main\"\n\"1802076\";\"Lu-chia-pu\";\"other\"\n\"1802076\";\"Lubu Zhen\";\"other\"\n\"1802076\";\"Lujiabu\";\"other\"\n\"1802076\";\"lu bu\";\"other\"\n\"1802076\";\"陆埠\";\"other\"\n\"1802076\";\"陆埠镇\";\"other\"\n\"1802095\";\"Luhua\";\"main\"\n\"1802095\";\"Heishui\";\"other\"\n\"1802095\";\"Lu-hua-ch'eng\";\"other\"\n\"1802095\";\"Lu-hua-ch’eng\";\"other\"\n\"1802095\";\"Lukhuachen\";\"other\"\n\"1802095\";\"lu hua\";\"other\"\n\"1802095\";\"芦花\";\"other\"\n\"1802133\";\"Lufeng\";\"main\"\n\"1802133\";\"Hsu-p'u\";\"other\"\n\"1802133\";\"Hsu-p'u-hsien\";\"other\"\n\"1802133\";\"Hsü-p’u\";\"other\"\n\"1802133\";\"Hsü-p’u-hsien\";\"other\"\n\"1802133\";\"Supu\";\"other\"\n\"1802133\";\"Supu-hsien\";\"other\"\n\"1802133\";\"Süpu-hsien\";\"other\"\n\"1802133\";\"Xupu\";\"other\"\n\"1802133\";\"lu feng\";\"other\"\n\"1802133\";\"卢峰\";\"other\"\n\"1802136\";\"Lüeyang Chengguanzhen\";\"main\"\n\"1802136\";\"Lueyang Chengguanzhen\";\"ascii\"\n\"1802136\";\"Liao-yang\";\"other\"\n\"1802136\";\"Lioyan\";\"other\"\n\"1802136\";\"Loayang\";\"other\"\n\"1802136\";\"Lueh-yang\";\"other\"\n\"1802136\";\"Lueh-yang-hsien\";\"other\"\n\"1802136\";\"Lueyang\";\"other\"\n\"1802136\";\"Lüeh-yang\";\"other\"\n\"1802136\";\"Lüeh-yang-hsien\";\"other\"\n\"1802136\";\"Lüeyang\";\"other\"\n\"1802136\";\"略阳\";\"other\"\n\"1802136\";\"略阳城关镇\";\"other\"\n\"1802162\";\"Daxing\";\"main\"\n\"1802162\";\"Daxing Zhen\";\"other\"\n\"1802162\";\"Luchun\";\"other\"\n\"1802162\";\"Lüchun\";\"other\"\n\"1802162\";\"Ta-hsing-chai\";\"other\"\n\"1802162\";\"Ta-hsing-chen\";\"other\"\n\"1802162\";\"Ta-hsing-chieh\";\"other\"\n\"1802162\";\"da xing\";\"other\"\n\"1802162\";\"大兴\";\"other\"\n\"1802171\";\"Kangding\";\"main\"\n\"1802171\";\"Dardo\";\"other\"\n\"1802171\";\"K'an-ting\";\"other\"\n\"1802171\";\"K'ang-ting\";\"other\"\n\"1802171\";\"K'ang-ting-hsien\";\"other\"\n\"1802171\";\"Kandin\";\"other\"\n\"1802171\";\"Ta-chien-lu\";\"other\"\n\"1802171\";\"Tarchendo\";\"other\"\n\"1802171\";\"Tatsienlu\";\"other\"\n\"1802171\";\"Tatsientu\";\"other\"\n\"1802171\";\"Кандин\";\"other\"\n\"1802174\";\"Wenquan\";\"main\"\n\"1802174\";\"Lu-ch'eng-chen\";\"other\"\n\"1802174\";\"Lu-ch'uan-hsien\";\"other\"\n\"1802174\";\"Lu-ch’eng-chen\";\"other\"\n\"1802174\";\"Lu-ch’uan-hsien\";\"other\"\n\"1802174\";\"Lucheng\";\"other\"\n\"1802174\";\"Luchuan\";\"other\"\n\"1802174\";\"Luchwan\";\"other\"\n\"1802174\";\"Luchwan-hsien\";\"other\"\n\"1802174\";\"wen quan\";\"other\"\n\"1802174\";\"温泉\";\"other\"\n\"1802177\";\"Lubu\";\"main\"\n\"1802177\";\"Lu-pu\";\"other\"\n\"1802177\";\"禄步\";\"other\"\n\"1802179\";\"Lubiaojie\";\"main\"\n\"1802179\";\"Lu-piao\";\"other\"\n\"1802179\";\"Lu-piao-chieh\";\"other\"\n\"1802179\";\"Lubiao\";\"other\"\n\"1802179\";\"Lubiao Zhen\";\"other\"\n\"1802179\";\"lu biao\";\"other\"\n\"1802179\";\"lu biao jie\";\"other\"\n\"1802179\";\"lu biao zhen\";\"other\"\n\"1802179\";\"禄脿\";\"other\"\n\"1802179\";\"禄脿街\";\"other\"\n\"1802179\";\"禄脿镇\";\"other\"\n\"1802204\";\"Luancheng\";\"main\"\n\"1802204\";\"Luan'chen\";\"other\"\n\"1802204\";\"Luan-ch'eng-ch'eng-kuan\";\"other\"\n\"1802204\";\"Luan-ch'eng-hsien\";\"other\"\n\"1802204\";\"Luan-ch’eng-ch’eng-kuan\";\"other\"\n\"1802204\";\"Luan-ch’eng-hsien\";\"other\"\n\"1802204\";\"Luan’chen\";\"other\"\n\"1802204\";\"Lwanchenghsien\";\"other\"\n\"1802214\";\"Louzhuang\";\"main\"\n\"1802214\";\"Louzhuang Zhen\";\"other\"\n\"1802214\";\"娄庄\";\"other\"\n\"1802214\";\"娄庄镇\";\"other\"\n\"1802225\";\"Louguan\";\"main\"\n\"1802225\";\"Chi-chia\";\"other\"\n\"1802225\";\"Chiao-chia\";\"other\"\n\"1802225\";\"Chiao-chia-chen\";\"other\"\n\"1802225\";\"Lou-kuan\";\"other\"\n\"1802225\";\"Louguan Zhen\";\"other\"\n\"1802225\";\"lou guan\";\"other\"\n\"1802225\";\"lou guan zhen\";\"other\"\n\"1802225\";\"楼观\";\"other\"\n\"1802225\";\"楼观镇\";\"other\"\n\"1802232\";\"Loufan\";\"main\"\n\"1802232\";\"Ho-chia-chuang\";\"other\"\n\"1802232\";\"Hsin-lou-fan\";\"other\"\n\"1802232\";\"Lou-fan-chen\";\"other\"\n\"1802232\";\"lou fan\";\"other\"\n\"1802232\";\"娄烦\";\"other\"\n\"1802238\";\"Loudi\";\"main\"\n\"1802238\";\"Lou-ti\";\"other\"\n\"1802238\";\"Lou-ti-chen\";\"other\"\n\"1802238\";\"Lou-ti-shih\";\"other\"\n\"1802247\";\"Longzhouping\";\"main\"\n\"1802247\";\"Ch'ang-yang-hsien\";\"other\"\n\"1802247\";\"Changyang\";\"other\"\n\"1802247\";\"Ch’ang-yang-hsien\";\"other\"\n\"1802247\";\"long zhou ping\";\"other\"\n\"1802247\";\"龙舟坪\";\"other\"\n\"1802249\";\"Longzhou\";\"main\"\n\"1802249\";\"Li-chiang\";\"other\"\n\"1802249\";\"Lung-ching\";\"other\"\n\"1802249\";\"Lung-ching-hsien\";\"other\"\n\"1802249\";\"Lung-chou\";\"other\"\n\"1802249\";\"Lung-chou-chen\";\"other\"\n\"1802249\";\"Lung-hsien\";\"other\"\n\"1802249\";\"Lung-shou\";\"other\"\n\"1802249\";\"Lungchow\";\"other\"\n\"1802249\";\"Lungchow-hsien\";\"other\"\n\"1802249\";\"long zhou\";\"other\"\n\"1802249\";\"龙州\";\"other\"\n\"1802272\";\"Longyang\";\"main\"\n\"1802272\";\"Longyang Zhen\";\"other\"\n\"1802272\";\"Lung-yang\";\"other\"\n\"1802272\";\"Lung-yang-chen\";\"other\"\n\"1802272\";\"long yang\";\"other\"\n\"1802272\";\"龙阳\";\"other\"\n\"1802276\";\"Longyan\";\"main\"\n\"1802276\";\"Lung-yen\";\"other\"\n\"1802276\";\"Lung-yen-hsien\";\"other\"\n\"1802276\";\"Lungyenchow\";\"other\"\n\"1802276\";\"long yan\";\"other\"\n\"1802276\";\"龙岩\";\"other\"\n\"1802287\";\"Longxu\";\"main\"\n\"1802287\";\"Cangwu\";\"other\"\n\"1802287\";\"Jung-hsu\";\"other\"\n\"1802287\";\"Jung-hsü\";\"other\"\n\"1802287\";\"Lung-hsu\";\"other\"\n\"1802287\";\"Lung-hsu-chen\";\"other\"\n\"1802287\";\"Lung-hsü\";\"other\"\n\"1802287\";\"Lung-hsü-chen\";\"other\"\n\"1802287\";\"Ts'ang-wu\";\"other\"\n\"1802287\";\"Ts'ang-wu-hsien\";\"other\"\n\"1802287\";\"Ts’ang-wu\";\"other\"\n\"1802287\";\"Ts’ang-wu-hsien\";\"other\"\n\"1802287\";\"Yunghu\";\"other\"\n\"1802287\";\"Yunghü\";\"other\"\n\"1802287\";\"long wei\";\"other\"\n\"1802287\";\"龙圩\";\"other\"\n\"1802301\";\"Longxian\";\"main\"\n\"1802301\";\"Lung-hsien\";\"other\"\n\"1802301\";\"Lung-hsien-chen\";\"other\"\n\"1802301\";\"Lung-hsien-hsu\";\"other\"\n\"1802301\";\"Lung-hsien-hsü\";\"other\"\n\"1802301\";\"Lungsinhu\";\"other\"\n\"1802301\";\"Lungsinhü\";\"other\"\n\"1802301\";\"Weng-yuan-hsien\";\"other\"\n\"1802301\";\"Weng-yüan-hsien\";\"other\"\n\"1802301\";\"Wengyuan\";\"other\"\n\"1802301\";\"long xian\";\"other\"\n\"1802301\";\"龙仙\";\"other\"\n\"1802312\";\"Longxi\";\"main\"\n\"1802312\";\"Longxi Zhen\";\"other\"\n\"1802312\";\"Lung-hsi\";\"other\"\n\"1802312\";\"long xi\";\"other\"\n\"1802312\";\"龙溪\";\"other\"\n\"1802315\";\"Longwo\";\"main\"\n\"1802315\";\"Longwo Zhen\";\"other\"\n\"1802315\";\"Lung-wo\";\"other\"\n\"1802315\";\"Lung-wo-hsu\";\"other\"\n\"1802315\";\"龙窝\";\"other\"\n\"1802315\";\"龙窝镇\";\"other\"\n\"1802364\";\"Longtou’an\";\"main\"\n\"1802364\";\"Longtou'an\";\"ascii\"\n\"1802364\";\"Lung-t'ou-an\";\"other\"\n\"1802364\";\"Lung-t’ou-an\";\"other\"\n\"1802364\";\"Lungtowan\";\"other\"\n\"1802389\";\"Longtanping\";\"main\"\n\"1802389\";\"Longtanping Zhen\";\"other\"\n\"1802389\";\"long tan ping\";\"other\"\n\"1802389\";\"long tan ping zhen\";\"other\"\n\"1802389\";\"龙潭坪\";\"other\"\n\"1802389\";\"龙潭坪镇\";\"other\"\n\"1802409\";\"Longtan\";\"main\"\n\"1802409\";\"Lung-t'an\";\"other\"\n\"1802409\";\"Lung-t'an-ssu\";\"other\"\n\"1802409\";\"Lung-t’an\";\"other\"\n\"1802409\";\"Lung-t’an-ssu\";\"other\"\n\"1802431\";\"Longsheng\";\"main\"\n\"1802431\";\"Lung-sheng\";\"other\"\n\"1802431\";\"Lung-sheng-hsien\";\"other\"\n\"1802431\";\"Lung-sheng-ko-tsu-lien-ho-tzu-chih-hsien\";\"other\"\n\"1802431\";\"Lung-sheng-ko-tsu-tzu-chih-hsien\";\"other\"\n\"1802431\";\"long sheng\";\"other\"\n\"1802431\";\"龙胜\";\"other\"\n\"1802443\";\"Longshan\";\"main\"\n\"1802443\";\"Longshanzhen\";\"other\"\n\"1802443\";\"Lung-shan\";\"other\"\n\"1802443\";\"龙山\";\"other\"\n\"1802443\";\"龙山镇\";\"other\"\n\"1802458\";\"Longquan\";\"main\"\n\"1802458\";\"Longquanyi\";\"other\"\n\"1802458\";\"Lung-ch'uan-i\";\"other\"\n\"1802458\";\"Lung-ch’üan-i\";\"other\"\n\"1802458\";\"Luntsyuan'i\";\"other\"\n\"1802458\";\"Luntsyuan’i\";\"other\"\n\"1802458\";\"long quan\";\"other\"\n\"1802458\";\"龙泉\";\"other\"\n\"1802476\";\"Longquan\";\"main\"\n\"1802476\";\"I-men\";\"other\"\n\"1802476\";\"I-men-hsien\";\"other\"\n\"1802476\";\"Longquan Zhen\";\"other\"\n\"1802476\";\"Luncjuan'\";\"other\"\n\"1802476\";\"Yimen\";\"other\"\n\"1802476\";\"Yimen Xian\";\"other\"\n\"1802476\";\"Лунцюань\";\"other\"\n\"1802476\";\"易门\";\"other\"\n\"1802476\";\"易门县\";\"other\"\n\"1802476\";\"龙泉\";\"other\"\n\"1802526\";\"Longmen\";\"main\"\n\"1802526\";\"Lung-men\";\"other\"\n\"1802526\";\"Lung-men-hsu\";\"other\"\n\"1802526\";\"Lung-men-hsü\";\"other\"\n\"1802527\";\"Longcheng\";\"main\"\n\"1802527\";\"Longmen\";\"other\"\n\"1802527\";\"Lung-ch'eng-chen\";\"other\"\n\"1802527\";\"Lung-ch’eng-chen\";\"other\"\n\"1802527\";\"Lung-men\";\"other\"\n\"1802527\";\"Lung-men-hsien\";\"other\"\n\"1802527\";\"Lungmoon\";\"other\"\n\"1802527\";\"long cheng\";\"other\"\n\"1802527\";\"龙城\";\"other\"\n\"1802541\";\"Longlin\";\"main\"\n\"1802541\";\"龙林\";\"other\"\n\"1802545\";\"Longlisuo\";\"main\"\n\"1802545\";\"Longli\";\"other\"\n\"1802545\";\"Lung-li-so\";\"other\"\n\"1802550\";\"Longkou\";\"main\"\n\"1802550\";\"Lung-k'ou\";\"other\"\n\"1802550\";\"Lung-kou-shih\";\"other\"\n\"1802550\";\"Lung-k’ou\";\"other\"\n\"1802550\";\"Lungkow\";\"other\"\n\"1802556\";\"Longkou\";\"main\"\n\"1802556\";\"Longkou Zhen\";\"other\"\n\"1802556\";\"Lung-k'ou\";\"other\"\n\"1802556\";\"Lung-k'ou-chen\";\"other\"\n\"1802556\";\"Lung-k’ou\";\"other\"\n\"1802556\";\"Lung-k’ou-chen\";\"other\"\n\"1802556\";\"Lungkow\";\"other\"\n\"1802556\";\"龙口\";\"other\"\n\"1802556\";\"龙口镇\";\"other\"\n\"1802571\";\"Longjin\";\"main\"\n\"1802571\";\"Ch'ing-liu\";\"other\"\n\"1802571\";\"Ch'ing-liu-hsien\";\"other\"\n\"1802571\";\"Ch’ing-liu\";\"other\"\n\"1802571\";\"Ch’ing-liu-hsien\";\"other\"\n\"1802571\";\"Donghua\";\"other\"\n\"1802571\";\"Longjin Zhen\";\"other\"\n\"1802571\";\"Qingliu\";\"other\"\n\"1802571\";\"long jin\";\"other\"\n\"1802571\";\"东华\";\"other\"\n\"1802571\";\"清流\";\"other\"\n\"1802571\";\"龙津\";\"other\"\n\"1802571\";\"龙津镇\";\"other\"\n\"1802580\";\"Longjiazhai\";\"main\"\n\"1802580\";\"Longjia Zhen\";\"other\"\n\"1802580\";\"Longzhai\";\"other\"\n\"1802580\";\"Lung-chia-chai\";\"other\"\n\"1802580\";\"long jia zhai\";\"other\"\n\"1802580\";\"long jia zhen\";\"other\"\n\"1802580\";\"龙家寨\";\"other\"\n\"1802580\";\"龙家镇\";\"other\"\n\"1802593\";\"Longjiang\";\"main\"\n\"1802593\";\"Longjiang Zhen\";\"other\"\n\"1802593\";\"Lung-chiang\";\"other\"\n\"1802593\";\"Lung-chiang-hsu\";\"other\"\n\"1802593\";\"Lung-chiang-hsü\";\"other\"\n\"1802593\";\"Lung-t'ing-hsu\";\"other\"\n\"1802593\";\"Lung-t’ing-hsü\";\"other\"\n\"1802593\";\"Lungkong\";\"other\"\n\"1802593\";\"long jiang\";\"other\"\n\"1802593\";\"隆江\";\"other\"\n\"1802602\";\"Longhutang\";\"main\"\n\"1802602\";\"Longhutang Zhen\";\"other\"\n\"1802602\";\"Longhuzhen\";\"other\"\n\"1802602\";\"Lung-hu-chan\";\"other\"\n\"1802602\";\"Lung-hu-chen\";\"other\"\n\"1802602\";\"Lung-k'u-chen\";\"other\"\n\"1802602\";\"Lung-k’u-chen\";\"other\"\n\"1802602\";\"Lung-yao-chen\";\"other\"\n\"1802602\";\"龙虎塘\";\"other\"\n\"1802602\";\"龙虎塘镇\";\"other\"\n\"1802618\";\"Longhua\";\"main\"\n\"1802618\";\"Longhua Zhen\";\"other\"\n\"1802618\";\"Lung-ho\";\"other\"\n\"1802618\";\"Lung-hua\";\"other\"\n\"1802618\";\"Lung-hua-hsu\";\"other\"\n\"1802618\";\"Lung-hua-hsü\";\"other\"\n\"1802618\";\"long hua\";\"other\"\n\"1802618\";\"龙华\";\"other\"\n\"1802619\";\"Longhua\";\"main\"\n\"1802619\";\"Longhua Zhen\";\"other\"\n\"1802619\";\"Lung-hua\";\"other\"\n\"1802619\";\"long hua\";\"other\"\n\"1802619\";\"龙华\";\"other\"\n\"1802620\";\"Longhua\";\"main\"\n\"1802620\";\"Lung Wa\";\"other\"\n\"1802620\";\"Lung-hua\";\"other\"\n\"1802620\";\"Lung-hua-hsu\";\"other\"\n\"1802620\";\"Lung-hua-hsü\";\"other\"\n\"1802620\";\"long hua\";\"other\"\n\"1802620\";\"龙华\";\"other\"\n\"1802625\";\"Longhu\";\"main\"\n\"1802625\";\"Longhu Zhen\";\"other\"\n\"1802625\";\"long hu\";\"other\"\n\"1802625\";\"龙湖\";\"other\"\n\"1802644\";\"Longgao\";\"main\"\n\"1802644\";\"Longgao Zhen\";\"other\"\n\"1802644\";\"Lung-kao\";\"other\"\n\"1802644\";\"long gao\";\"other\"\n\"1802644\";\"long gao zhen\";\"other\"\n\"1802644\";\"龙高\";\"other\"\n\"1802644\";\"龙高镇\";\"other\"\n\"1802653\";\"Longgang Shezu\";\"main\"\n\"1802653\";\"Longgang\";\"other\"\n\"1802653\";\"Longgang Shezu Xiang\";\"other\"\n\"1802653\";\"Lung-kang\";\"other\"\n\"1802653\";\"Lung-kang-hsu\";\"other\"\n\"1802653\";\"Lung-kang-hsü\";\"other\"\n\"1802653\";\"龙冈畲族\";\"other\"\n\"1802653\";\"龙冈畲族乡\";\"other\"\n\"1802654\";\"Longgang\";\"main\"\n\"1802654\";\"Longgang Xiang\";\"other\"\n\"1802654\";\"Lung-kang\";\"other\"\n\"1802654\";\"Lung-kang-hsu\";\"other\"\n\"1802654\";\"Lung-kang-hsü\";\"other\"\n\"1802654\";\"龙岗\";\"other\"\n\"1802654\";\"龙岗乡\";\"other\"\n\"1802682\";\"Longchuan\";\"main\"\n\"1802682\";\"Cheh-nam\";\"other\"\n\"1802682\";\"Chen-nan\";\"other\"\n\"1802682\";\"Chen-nan-chou\";\"other\"\n\"1802682\";\"Chen-nan-hsien\";\"other\"\n\"1802682\";\"Lung-ch'uan-chen\";\"other\"\n\"1802682\";\"Lung-ch’uan-chen\";\"other\"\n\"1802682\";\"Nanhua\";\"other\"\n\"1802682\";\"long chuan\";\"other\"\n\"1802682\";\"龙川\";\"other\"\n\"1802686\";\"Longcheng\";\"main\"\n\"1802686\";\"陇城\";\"other\"\n\"1802687\";\"Longcheng\";\"main\"\n\"1802687\";\"Hsiao\";\"other\"\n\"1802687\";\"Hsiao-hsien\";\"other\"\n\"1802687\";\"Hsiao-hsien-ch'eng\";\"other\"\n\"1802687\";\"Hsiao-hsien-ch’eng\";\"other\"\n\"1802687\";\"Lung-ch'eng\";\"other\"\n\"1802687\";\"Lung-ch'eng-chen\";\"other\"\n\"1802687\";\"Lung-ch’eng\";\"other\"\n\"1802687\";\"Lung-ch’eng-chen\";\"other\"\n\"1802687\";\"Siaohsien\";\"other\"\n\"1802687\";\"Xiaoxian\";\"other\"\n\"1802687\";\"long cheng\";\"other\"\n\"1802687\";\"龙城\";\"other\"\n\"1802689\";\"Longcheng\";\"main\"\n\"1802689\";\"Ch'eng-kung\";\"other\"\n\"1802689\";\"Ch'eng-kung-hsien\";\"other\"\n\"1802689\";\"Chenggong\";\"other\"\n\"1802689\";\"Chenggong Xian\";\"other\"\n\"1802689\";\"Ch’eng-kung\";\"other\"\n\"1802689\";\"Ch’eng-kung-hsien\";\"other\"\n\"1802689\";\"Longcheng Zhen\";\"other\"\n\"1802689\";\"Lung-ch'eng-chen\";\"other\"\n\"1802689\";\"Lung-ch’eng-chen\";\"other\"\n\"1802689\";\"cheng gong\";\"other\"\n\"1802689\";\"cheng gong xian\";\"other\"\n\"1802689\";\"long cheng\";\"other\"\n\"1802689\";\"long cheng zhen\";\"other\"\n\"1802689\";\"呈贡\";\"other\"\n\"1802689\";\"呈贡县\";\"other\"\n\"1802689\";\"龙城\";\"other\"\n\"1802689\";\"龙城镇\";\"other\"\n\"1802707\";\"Long’an\";\"main\"\n\"1802707\";\"Long'an\";\"ascii\"\n\"1802707\";\"Lun'yan'\";\"other\"\n\"1802707\";\"Lung-yan\";\"other\"\n\"1802707\";\"Lungan\";\"other\"\n\"1802707\";\"Lunganfu\";\"other\"\n\"1802707\";\"Lun’yan’\";\"other\"\n\"1802707\";\"P'ing-wu-hsien\";\"other\"\n\"1802707\";\"Pingwu\";\"other\"\n\"1802707\";\"Pinu\";\"other\"\n\"1802707\";\"P’ing-wu-hsien\";\"other\"\n\"1802707\";\"long an\";\"other\"\n\"1802707\";\"龙安\";\"other\"\n\"1802710\";\"Long’an Chengxiangzhen\";\"main\"\n\"1802710\";\"Long'an Chengxiangzhen\";\"ascii\"\n\"1802710\";\"Long'an\";\"other\"\n\"1802710\";\"Long’an\";\"other\"\n\"1802710\";\"Lung-an\";\"other\"\n\"1802710\";\"Lung-an-hsiang\";\"other\"\n\"1802710\";\"Lung-an-hsien\";\"other\"\n\"1802710\";\"long an cheng xiang zhen\";\"other\"\n\"1802710\";\"隆安城厢镇\";\"other\"\n\"1802729\";\"Lizhuangzi\";\"main\"\n\"1802740\";\"Lizhu\";\"main\"\n\"1802740\";\"Li-chu\";\"other\"\n\"1802740\";\"Li-chu-shih\";\"other\"\n\"1802740\";\"Lizhu Zhen\";\"other\"\n\"1802740\";\"li zhu\";\"other\"\n\"1802740\";\"漓渚\";\"other\"\n\"1802740\";\"漓渚镇\";\"other\"\n\"1802772\";\"Liyuan\";\"main\"\n\"1802772\";\"Liyuan Zhen\";\"other\"\n\"1802772\";\"Sang-chih\";\"other\"\n\"1802772\";\"Sang-chih-hsien\";\"other\"\n\"1802772\";\"Sangzhi\";\"other\"\n\"1802772\";\"Sangzhi Xian\";\"other\"\n\"1802772\";\"li yuan\";\"other\"\n\"1802772\";\"li yuan zhen\";\"other\"\n\"1802772\";\"sang zhi\";\"other\"\n\"1802772\";\"桑植\";\"other\"\n\"1802772\";\"桑植县\";\"other\"\n\"1802772\";\"澧源\";\"other\"\n\"1802772\";\"澧源镇\";\"other\"\n\"1802786\";\"Liyang\";\"main\"\n\"1802786\";\"Hsu-yang-chen\";\"other\"\n\"1802786\";\"Hsü-yang-chen\";\"other\"\n\"1802786\";\"Li-yang\";\"other\"\n\"1802786\";\"Liyang Zhen\";\"other\"\n\"1802786\";\"li yang\";\"other\"\n\"1802786\";\"栎阳\";\"other\"\n\"1802787\";\"Liyang\";\"main\"\n\"1802787\";\"Hexian\";\"other\"\n\"1802787\";\"Ho\";\"other\"\n\"1802787\";\"Ho-han\";\"other\"\n\"1802787\";\"Ho-hsien\";\"other\"\n\"1802787\";\"Hochow\";\"other\"\n\"1802787\";\"li yang\";\"other\"\n\"1802787\";\"历阳\";\"other\"\n\"1802788\";\"Licheng\";\"main\"\n\"1802788\";\"Li-ch'eng-chen\";\"other\"\n\"1802788\";\"Li-ch’eng-chen\";\"other\"\n\"1802788\";\"Li-yang-ch'eng\";\"other\"\n\"1802788\";\"Li-yang-ch’eng\";\"other\"\n\"1802788\";\"Li-yang-hsien\";\"other\"\n\"1802788\";\"Liyang\";\"other\"\n\"1802788\";\"凓城\";\"other\"\n\"1802789\";\"Liyang\";\"main\"\n\"1802789\";\"Li-yang-chieh\";\"other\"\n\"1802789\";\"Liyang Zhen\";\"other\"\n\"1802789\";\"Liyangzhen\";\"other\"\n\"1802789\";\"li yang\";\"other\"\n\"1802789\";\"li yang zhen\";\"other\"\n\"1802789\";\"力洋\";\"other\"\n\"1802789\";\"力洋镇\";\"other\"\n\"1802791\";\"Lixu\";\"main\"\n\"1802791\";\"Chou-ts'un\";\"other\"\n\"1802791\";\"Chou-ts’un\";\"other\"\n\"1802791\";\"Li-hsu\";\"other\"\n\"1802791\";\"Li-hsü\";\"other\"\n\"1802791\";\"Lixu Zhen\";\"other\"\n\"1802791\";\"黎圩\";\"other\"\n\"1802791\";\"黎圩镇\";\"other\"\n\"1802793\";\"Lixiqiao\";\"main\"\n\"1802793\";\"Li-ch'i-ch'iao\";\"other\"\n\"1802793\";\"Li-ch’i-ch’iao\";\"other\"\n\"1802793\";\"Litsitsyao\";\"other\"\n\"1802803\";\"Lixin Chengguanzhen\";\"main\"\n\"1802803\";\"Li-hsin\";\"other\"\n\"1802803\";\"Li-hsin-chi\";\"other\"\n\"1802803\";\"Li-hsin-p'u\";\"other\"\n\"1802803\";\"Li-hsin-p’u\";\"other\"\n\"1802803\";\"Liu-hsien-p'u\";\"other\"\n\"1802803\";\"Liu-hsien-p’u\";\"other\"\n\"1802803\";\"Lixin\";\"other\"\n\"1802803\";\"li xin cheng guan zhen\";\"other\"\n\"1802803\";\"利辛城关镇\";\"other\"\n\"1802804\";\"Lixin\";\"main\"\n\"1802804\";\"Li-hsin\";\"other\"\n\"1802804\";\"Li-hsin-hsun\";\"other\"\n\"1802804\";\"Li-hsin-hsün\";\"other\"\n\"1802804\";\"Lixin Zhen\";\"other\"\n\"1802804\";\"里心\";\"other\"\n\"1802804\";\"里心镇\";\"other\"\n\"1802812\";\"Liyang\";\"main\"\n\"1802812\";\"Li\";\"other\"\n\"1802812\";\"Li-chou\";\"other\"\n\"1802812\";\"Li-hsien\";\"other\"\n\"1802812\";\"Li-hsien-ch'eng\";\"other\"\n\"1802812\";\"Li-hsien-ch’eng\";\"other\"\n\"1802812\";\"Li-yang-chen\";\"other\"\n\"1802812\";\"Lichow\";\"other\"\n\"1802812\";\"Lixian\";\"other\"\n\"1802812\";\"li yang\";\"other\"\n\"1802812\";\"澧阳\";\"other\"\n\"1802829\";\"Liwang\";\"main\"\n\"1802829\";\"Li-wang-pu\";\"other\"\n\"1802829\";\"Liwang Zhen\";\"other\"\n\"1802829\";\"Liwangbu\";\"other\"\n\"1802829\";\"李旺镇\";\"other\"\n\"1802835\";\"Liuzikou\";\"main\"\n\"1802835\";\"Liu-tzu-k'ou\";\"other\"\n\"1802835\";\"Liu-tzu-k’ou\";\"other\"\n\"1802835\";\"Liutze\";\"other\"\n\"1802848\";\"Liuzhuang\";\"main\"\n\"1802848\";\"Liu-chuang\";\"other\"\n\"1802848\";\"Liuchwang\";\"other\"\n\"1802848\";\"Liuzhuang Zhen\";\"other\"\n\"1802848\";\"刘庄\";\"other\"\n\"1802848\";\"刘庄镇\";\"other\"\n\"1802875\";\"Liuyang\";\"main\"\n\"1802875\";\"Liu-yang-hsien\";\"other\"\n\"1802875\";\"Liujang\";\"other\"\n\"1802875\";\"liu yang\";\"other\"\n\"1802875\";\"Лиуянг\";\"other\"\n\"1802875\";\"浏阳\";\"other\"\n\"1802889\";\"Liuwudian\";\"main\"\n\"1802889\";\"liu wu dian\";\"other\"\n\"1802889\";\"刘五店\";\"other\"\n\"1802936\";\"Liushan\";\"main\"\n\"1802936\";\"Liu-shan-chen\";\"other\"\n\"1802936\";\"Liushan Zhen\";\"other\"\n\"1802936\";\"liu shan\";\"other\"\n\"1802936\";\"liu shan zhen\";\"other\"\n\"1802936\";\"留山\";\"other\"\n\"1802936\";\"留山镇\";\"other\"\n\"1802940\";\"Puning\";\"main\"\n\"1802940\";\"Liu-sha-chen\";\"other\"\n\"1802940\";\"Liu-sha-hsu\";\"other\"\n\"1802940\";\"Liu-sha-hsü\";\"other\"\n\"1802940\";\"Liusha\";\"other\"\n\"1802940\";\"P'u-ning-hsien\";\"other\"\n\"1802940\";\"P’u-ning-hsien\";\"other\"\n\"1802940\";\"普宁\";\"other\"\n\"1802950\";\"Liuqu\";\"main\"\n\"1802950\";\"Liu-ch'u\";\"other\"\n\"1802950\";\"Liu-ch'u-chen\";\"other\"\n\"1802950\";\"Liu-ch’ü\";\"other\"\n\"1802950\";\"Liu-ch’ü-chen\";\"other\"\n\"1802950\";\"Liuqu Zhen\";\"other\"\n\"1802950\";\"liu qu\";\"other\"\n\"1802950\";\"流曲\";\"other\"\n\"1802954\";\"Liuqiao\";\"main\"\n\"1802954\";\"Liu-ch'iao\";\"other\"\n\"1802954\";\"Liu-ch’iao\";\"other\"\n\"1802954\";\"Liuqiao Zhen\";\"other\"\n\"1802954\";\"Pei-liu-ch'iao\";\"other\"\n\"1802954\";\"Pei-liu-ch'iao-chen\";\"other\"\n\"1802954\";\"Pei-liu-ch’iao\";\"other\"\n\"1802954\";\"Pei-liu-ch’iao-chen\";\"other\"\n\"1802954\";\"刘桥\";\"other\"\n\"1802954\";\"刘桥镇\";\"other\"\n\"1802965\";\"Liupai\";\"main\"\n\"1802965\";\"Liu-p'ai-chen\";\"other\"\n\"1802965\";\"Liu-p'ai-hsiang\";\"other\"\n\"1802965\";\"Liu-p'ai-hsu\";\"other\"\n\"1802965\";\"Liu-p’ai-chen\";\"other\"\n\"1802965\";\"Liu-p’ai-hsiang\";\"other\"\n\"1802965\";\"Liu-p’ai-hsü\";\"other\"\n\"1802965\";\"T'ien-o\";\"other\"\n\"1802965\";\"Tian'e\";\"other\"\n\"1802965\";\"Tian’e\";\"other\"\n\"1802965\";\"T’ien-o\";\"other\"\n\"1802965\";\"liu pai\";\"other\"\n\"1802965\";\"六排\";\"other\"\n\"1802986\";\"Liulin\";\"main\"\n\"1802986\";\"Liu-lin-chen\";\"other\"\n\"1802986\";\"liu lin\";\"other\"\n\"1802986\";\"柳林\";\"other\"\n\"1802991\";\"Liulin\";\"main\"\n\"1802991\";\"Liu-lin-chen\";\"other\"\n\"1802991\";\"Liu-lin-p'u\";\"other\"\n\"1802991\";\"Liu-lin-p’u\";\"other\"\n\"1802991\";\"Liulin Zhen\";\"other\"\n\"1802991\";\"柳林\";\"other\"\n\"1802991\";\"柳林镇\";\"other\"\n\"1803010\";\"Liukuaizhuang\";\"main\"\n\"1803052\";\"Zhujita\";\"main\"\n\"1803052\";\"Liu-chia-p'ing\";\"other\"\n\"1803052\";\"Liu-chia-p’ing\";\"other\"\n\"1803052\";\"Liujiaping\";\"other\"\n\"1803052\";\"Liujiaping Baizuxiang\";\"other\"\n\"1803052\";\"liu jia ping\";\"other\"\n\"1803052\";\"liu jia ping bai zu xiang\";\"other\"\n\"1803052\";\"zhu ji ta\";\"other\"\n\"1803052\";\"刘家坪\";\"other\"\n\"1803052\";\"刘家坪白族乡\";\"other\"\n\"1803052\";\"珠矶塔\";\"other\"\n\"1803085\";\"Liujia\";\"main\"\n\"1803085\";\"Liu-chia\";\"other\"\n\"1803085\";\"Liu-chia-chen\";\"other\"\n\"1803085\";\"Liuhao\";\"other\"\n\"1803085\";\"Liuhao Zhen\";\"other\"\n\"1803085\";\"Liujia Zhen\";\"other\"\n\"1803085\";\"Liujiazhen\";\"other\"\n\"1803085\";\"六甲\";\"other\"\n\"1803085\";\"六甲镇\";\"other\"\n\"1803085\";\"刘浩\";\"other\"\n\"1803085\";\"刘浩镇\";\"other\"\n\"1803093\";\"Liuji\";\"main\"\n\"1803093\";\"Liu-chi\";\"other\"\n\"1803093\";\"Liuji Zhen\";\"other\"\n\"1803093\";\"liu ji\";\"other\"\n\"1803093\";\"刘集\";\"other\"\n\"1803122\";\"Liuhe\";\"main\"\n\"1803122\";\"Liu-ho\";\"other\"\n\"1803122\";\"liu he\";\"other\"\n\"1803122\";\"柳河\";\"other\"\n\"1803145\";\"Liugu\";\"main\"\n\"1803145\";\"Liu-ku\";\"other\"\n\"1803145\";\"Liu-ku-chen\";\"other\"\n\"1803145\";\"Liugu Zhen\";\"other\"\n\"1803145\";\"liu gu\";\"other\"\n\"1803145\";\"留古\";\"other\"\n\"1803159\";\"Liuduzhai\";\"main\"\n\"1803159\";\"Chai-shih\";\"other\"\n\"1803159\";\"Liu-tu-chai\";\"other\"\n\"1803159\";\"Lung-hui\";\"other\"\n\"1803159\";\"Lung-hui-hsien\";\"other\"\n\"1803159\";\"Lunghwei\";\"other\"\n\"1803159\";\"Sai-shih\";\"other\"\n\"1803167\";\"Liudu\";\"main\"\n\"1803167\";\"Liu-tu\";\"other\"\n\"1803167\";\"liu dou\";\"other\"\n\"1803167\";\"六都\";\"other\"\n\"1803193\";\"Liucheng\";\"main\"\n\"1803193\";\"Wen-chiang\";\"other\"\n\"1803193\";\"Wen-chiang-hsien\";\"other\"\n\"1803193\";\"Wenjiang\";\"other\"\n\"1803193\";\"Wenkiang\";\"other\"\n\"1803193\";\"Wenkiang-hsien\";\"other\"\n\"1803193\";\"liu cheng\";\"other\"\n\"1803193\";\"柳城\";\"other\"\n\"1803214\";\"Liuba\";\"main\"\n\"1803214\";\"Liu-pa\";\"other\"\n\"1803214\";\"Liu-pa-hsien\";\"other\"\n\"1803214\";\"Liu-pa-hsien-ch'eng\";\"other\"\n\"1803214\";\"Liu-pa-hsien-ch’eng\";\"other\"\n\"1803214\";\"Lyuba\";\"other\"\n\"1803214\";\"留坝\";\"other\"\n\"1803216\";\"Aozhong\";\"main\"\n\"1803216\";\"Liu'ao Zhen\";\"other\"\n\"1803216\";\"Liu’ao Zhen\";\"other\"\n\"1803216\";\"ao zhong\";\"other\"\n\"1803216\";\"liu ao zhen\";\"other\"\n\"1803216\";\"六鳌镇\";\"other\"\n\"1803216\";\"鳌中\";\"other\"\n\"1803217\";\"Liu’anzhuang\";\"main\"\n\"1803217\";\"Liu'anzhuang\";\"ascii\"\n\"1803225\";\"Litian\";\"main\"\n\"1803225\";\"里田\";\"other\"\n\"1803245\";\"Lishui\";\"main\"\n\"1803245\";\"Ch'u-chou\";\"other\"\n\"1803245\";\"Chuchow\";\"other\"\n\"1803245\";\"Chuchowfu\";\"other\"\n\"1803245\";\"Ch’u-chou\";\"other\"\n\"1803245\";\"Li-shui-hsien\";\"other\"\n\"1803245\";\"丽水\";\"other\"\n\"1803266\";\"Lintong\";\"main\"\n\"1803266\";\"Lin'tun\";\"other\"\n\"1803266\";\"Lin-t'ung\";\"other\"\n\"1803266\";\"Lin-t'ung-hsien\";\"other\"\n\"1803266\";\"Lin-t’ung\";\"other\"\n\"1803266\";\"Lin-t’ung-hsien\";\"other\"\n\"1803266\";\"Lin’tun\";\"other\"\n\"1803266\";\"Lishan\";\"other\"\n\"1803266\";\"临潼\";\"other\"\n\"1803281\";\"Liquan Chengguanzhen\";\"main\"\n\"1803281\";\"Chengguanzhen\";\"other\"\n\"1803281\";\"Li-ch'uan\";\"other\"\n\"1803281\";\"Li-ch'uan-hsien\";\"other\"\n\"1803281\";\"Li-ch'uan-hsien-ch'eng\";\"other\"\n\"1803281\";\"Li-ch’üan\";\"other\"\n\"1803281\";\"Li-ch’üan-hsien\";\"other\"\n\"1803281\";\"Li-ch’üan-hsien-ch’eng\";\"other\"\n\"1803281\";\"城关镇\";\"other\"\n\"1803281\";\"礼泉城关镇\";\"other\"\n\"1803298\";\"Linzi\";\"main\"\n\"1803298\";\"Lin-tzu\";\"other\"\n\"1803298\";\"Lin-tzu-chen\";\"other\"\n\"1803298\";\"Linzi Zhen\";\"other\"\n\"1803298\";\"林梓\";\"other\"\n\"1803298\";\"林梓镇\";\"other\"\n\"1803300\";\"Liuzhou\";\"main\"\n\"1803300\";\"Linzhou\";\"other\"\n\"1803300\";\"Liu-chiang\";\"other\"\n\"1803300\";\"Liu-chou\";\"other\"\n\"1803300\";\"Liu-chou-shih\";\"other\"\n\"1803300\";\"Liuchow\";\"other\"\n\"1803300\";\"Liuchowfu\";\"other\"\n\"1803300\";\"Ma-p'ing\";\"other\"\n\"1803300\";\"Ma-p’ing\";\"other\"\n\"1803300\";\"Mapinghsien\";\"other\"\n\"1803300\";\"liu zhou\";\"other\"\n\"1803300\";\"柳州\";\"other\"\n\"1803318\";\"Linyi\";\"main\"\n\"1803318\";\"I-chou\";\"other\"\n\"1803318\";\"Ichow\";\"other\"\n\"1803318\";\"Ichowfu\";\"other\"\n\"1803318\";\"Lan-shan\";\"other\"\n\"1803318\";\"Lin'i\";\"other\"\n\"1803318\";\"Lin-i\";\"other\"\n\"1803318\";\"Lin-i-hsien\";\"other\"\n\"1803318\";\"Lin-i-shih\";\"other\"\n\"1803318\";\"Liuyihsien\";\"other\"\n\"1803318\";\"Yichow\";\"other\"\n\"1803318\";\"lin yi\";\"other\"\n\"1803318\";\"lin yi shi\";\"other\"\n\"1803318\";\"Линьи\";\"other\"\n\"1803318\";\"临沂\";\"other\"\n\"1803318\";\"临沂市\";\"other\"\n\"1803326\";\"Linquan\";\"main\"\n\"1803326\";\"Lin\";\"other\"\n\"1803326\";\"Lin'syan'\";\"other\"\n\"1803326\";\"Lin-hsien\";\"other\"\n\"1803326\";\"Linxian\";\"other\"\n\"1803326\";\"Lin’syan’\";\"other\"\n\"1803326\";\"lin quan\";\"other\"\n\"1803326\";\"临泉\";\"other\"\n\"1803331\";\"Linxia\";\"main\"\n\"1803331\";\"Ho-chou\";\"other\"\n\"1803331\";\"Khechzhou\";\"other\"\n\"1803331\";\"Lin'sja\";\"other\"\n\"1803331\";\"Lin'sya\";\"other\"\n\"1803331\";\"Lin-hsia\";\"other\"\n\"1803331\";\"Lin-hsia-hsien\";\"other\"\n\"1803331\";\"Lin-hsia-shih\";\"other\"\n\"1803331\";\"Lin-hsin\";\"other\"\n\"1803331\";\"Linsia\";\"other\"\n\"1803331\";\"Lin’sya\";\"other\"\n\"1803331\";\"Линься\";\"other\"\n\"1803334\";\"Linxi\";\"main\"\n\"1803334\";\"Lin-hsi\";\"other\"\n\"1803334\";\"Lin-hsi-chuang\";\"other\"\n\"1803334\";\"Linsi\";\"other\"\n\"1803335\";\"Linxi\";\"main\"\n\"1803335\";\"Lin-ch'i\";\"other\"\n\"1803335\";\"Lin-ch'i-chen\";\"other\"\n\"1803335\";\"Lin-ch’i\";\"other\"\n\"1803335\";\"Lin-ch’i-chen\";\"other\"\n\"1803335\";\"Lin-hsi\";\"other\"\n\"1803335\";\"Linxi Zhen\";\"other\"\n\"1803335\";\"lin xi\";\"other\"\n\"1803335\";\"lin xi zhen\";\"other\"\n\"1803335\";\"临溪\";\"other\"\n\"1803335\";\"临溪镇\";\"other\"\n\"1803340\";\"Linwu Chengguanzhen\";\"main\"\n\"1803340\";\"Lin-wu-hsien\";\"other\"\n\"1803340\";\"Linwu\";\"other\"\n\"1803340\";\"lin wu cheng guan zhen\";\"other\"\n\"1803340\";\"临武\";\"other\"\n\"1803340\";\"临武城关镇\";\"other\"\n\"1803346\";\"Lintingkou\";\"main\"\n\"1803346\";\"Lin-t'ing\";\"other\"\n\"1803346\";\"Lin-t'ing-chen\";\"other\"\n\"1803346\";\"Lin-t’ing\";\"other\"\n\"1803346\";\"Lin-t’ing-chen\";\"other\"\n\"1803352\";\"Linshui\";\"main\"\n\"1803354\";\"Linshe\";\"main\"\n\"1803354\";\"林畲\";\"other\"\n\"1803362\";\"Linquan Chengguanzhen\";\"main\"\n\"1803362\";\"Lin-ch'uan\";\"other\"\n\"1803362\";\"Lin-ch'uan-hsien\";\"other\"\n\"1803362\";\"Lin-ch’üan\";\"other\"\n\"1803362\";\"Lin-ch’üan-hsien\";\"other\"\n\"1803362\";\"Linquan\";\"other\"\n\"1803362\";\"Shen-ch'iu\";\"other\"\n\"1803362\";\"Shen-ch'iu-chi\";\"other\"\n\"1803362\";\"Shen-ch’iu\";\"other\"\n\"1803362\";\"Shen-ch’iu-chi\";\"other\"\n\"1803362\";\"lin quan cheng guan zhen\";\"other\"\n\"1803362\";\"临泉城关镇\";\"other\"\n\"1803364\";\"Linqu\";\"main\"\n\"1803364\";\"Lin-ch'u\";\"other\"\n\"1803364\";\"Lin-ch'u-hsien\";\"other\"\n\"1803364\";\"Lin-ch’ü\";\"other\"\n\"1803364\";\"Lin-ch’ü-hsien\";\"other\"\n\"1803365\";\"Linqiong\";\"main\"\n\"1803365\";\"Ch'iung-lai\";\"other\"\n\"1803365\";\"Chiung-lai-hsien\";\"other\"\n\"1803365\";\"Chiungchou\";\"other\"\n\"1803365\";\"Ch’iung-lai\";\"other\"\n\"1803365\";\"Kiungchow\";\"other\"\n\"1803365\";\"Kiunglaihsien\";\"other\"\n\"1803365\";\"Kung-lai\";\"other\"\n\"1803365\";\"Qionglai\";\"other\"\n\"1803365\";\"Tsyunlay\";\"other\"\n\"1803365\";\"临邛\";\"other\"\n\"1803367\";\"Linqing\";\"main\"\n\"1803367\";\"Lin-ch'ing\";\"other\"\n\"1803367\";\"Lin-ch'ing-hsien\";\"other\"\n\"1803367\";\"Lin-ch'ing-shih\";\"other\"\n\"1803367\";\"Lin-ch’ing\";\"other\"\n\"1803367\";\"Lin-ch’ing-hsien\";\"other\"\n\"1803367\";\"Lin-ch’ing-shih\";\"other\"\n\"1803367\";\"Lintsing\";\"other\"\n\"1803367\";\"Lintsingchow\";\"other\"\n\"1803373\";\"Linping\";\"main\"\n\"1803373\";\"Lin-p'ing-chen\";\"other\"\n\"1803373\";\"Lin-p’ing-chen\";\"other\"\n\"1803373\";\"Linping Zhen\";\"other\"\n\"1803373\";\"Linpingzhen\";\"other\"\n\"1803373\";\"lin ping\";\"other\"\n\"1803373\";\"lin ping zhen\";\"other\"\n\"1803373\";\"临平\";\"other\"\n\"1803373\";\"临平镇\";\"other\"\n\"1803374\";\"Linping\";\"main\"\n\"1803374\";\"Lin-p'ing-chen\";\"other\"\n\"1803374\";\"Lin-p’ing-chen\";\"other\"\n\"1803374\";\"Yu-hang Hsien\";\"other\"\n\"1803374\";\"Yuhang\";\"other\"\n\"1803374\";\"Yü-hang Hsien\";\"other\"\n\"1803382\";\"Anfu\";\"main\"\n\"1803382\";\"Lin-li-hsien\";\"other\"\n\"1803382\";\"Linli\";\"other\"\n\"1803382\";\"an fu\";\"other\"\n\"1803382\";\"安福\";\"other\"\n\"1803387\";\"Linkou\";\"main\"\n\"1803396\";\"Linjiang\";\"main\"\n\"1803396\";\"Lin-chiang\";\"other\"\n\"1803396\";\"临江\";\"other\"\n\"1803400\";\"Linjiang\";\"main\"\n\"1803400\";\"Lin-chiang\";\"other\"\n\"1803400\";\"Lin-chiang-chieh\";\"other\"\n\"1803400\";\"Linjiang Zhen\";\"other\"\n\"1803400\";\"Linkiangkai\";\"other\"\n\"1803400\";\"lin jiang\";\"other\"\n\"1803400\";\"lin jiang zhen\";\"other\"\n\"1803400\";\"临江\";\"other\"\n\"1803400\";\"临江镇\";\"other\"\n\"1803422\";\"Linhai\";\"main\"\n\"1803422\";\"Lin-hai-hsien\";\"other\"\n\"1803422\";\"T'ai-chou\";\"other\"\n\"1803422\";\"Taichow\";\"other\"\n\"1803422\";\"Taichowfu\";\"other\"\n\"1803422\";\"Taizhou\";\"other\"\n\"1803422\";\"T’ai-chou\";\"other\"\n\"1803438\";\"Xiayang\";\"main\"\n\"1803438\";\"Ling\";\"other\"\n\"1803438\";\"Ling-chen\";\"other\"\n\"1803438\";\"Ling-hsien\";\"other\"\n\"1803438\";\"Lingxian\";\"other\"\n\"1803438\";\"Ninghsien\";\"other\"\n\"1803438\";\"xia yang\";\"other\"\n\"1803438\";\"霞阳\";\"other\"\n\"1803444\";\"Lingxi\";\"main\"\n\"1803444\";\"Ling-ch'i-chen\";\"other\"\n\"1803444\";\"Ling-ch’i-chen\";\"other\"\n\"1803444\";\"Ling-hsi\";\"other\"\n\"1803444\";\"Yongshun\";\"other\"\n\"1803444\";\"Yung-shun\";\"other\"\n\"1803444\";\"Yung-shun-hsien\";\"other\"\n\"1803444\";\"Yungshunfu\";\"other\"\n\"1803444\";\"ling xi\";\"other\"\n\"1803444\";\"灵溪\";\"other\"\n\"1803451\";\"Lingui\";\"main\"\n\"1803451\";\"Baziyan\";\"other\"\n\"1803451\";\"Ertang\";\"other\"\n\"1803451\";\"Lin-kuei\";\"other\"\n\"1803451\";\"lin gui\";\"other\"\n\"1803451\";\"临桂\";\"other\"\n\"1803468\";\"Cuifeng\";\"main\"\n\"1803468\";\"Ling-shih\";\"other\"\n\"1803468\";\"Ling-shih-hsien\";\"other\"\n\"1803468\";\"Ling-shih-hsien-ch'eng\";\"other\"\n\"1803468\";\"Ling-shih-hsien-ch’eng\";\"other\"\n\"1803468\";\"Lingshi\";\"other\"\n\"1803468\";\"Linshi\";\"other\"\n\"1803468\";\"cui feng\";\"other\"\n\"1803468\";\"翠峰\";\"other\"\n\"1803486\";\"Wuling\";\"main\"\n\"1803486\";\"Ling-ch'iu\";\"other\"\n\"1803486\";\"Ling-ch'iu-hsien\";\"other\"\n\"1803486\";\"Ling-ch’iu\";\"other\"\n\"1803486\";\"Ling-ch’iu-hsien\";\"other\"\n\"1803486\";\"Lingkiuhsien\";\"other\"\n\"1803486\";\"Lingqiu\";\"other\"\n\"1803486\";\"wu ling\";\"other\"\n\"1803486\";\"武灵\";\"other\"\n\"1803489\";\"Lingqian\";\"main\"\n\"1803489\";\"Ling-ch'ien\";\"other\"\n\"1803489\";\"Ling-ch'ien-chen\";\"other\"\n\"1803489\";\"Ling-ch’ien\";\"other\"\n\"1803489\";\"Ling-ch’ien-chen\";\"other\"\n\"1803489\";\"Lingqian Zhen\";\"other\"\n\"1803489\";\"ling qian zhen\";\"other\"\n\"1803489\";\"陵前\";\"other\"\n\"1803489\";\"陵前镇\";\"other\"\n\"1803499\";\"Lingkou\";\"main\"\n\"1803499\";\"Lingkou Zhen\";\"other\"\n\"1803499\";\"ling kou\";\"other\"\n\"1803499\";\"零口\";\"other\"\n\"1803514\";\"Lingjiang\";\"main\"\n\"1803514\";\"Cangxi\";\"other\"\n\"1803514\";\"Ts'ang-ch'i-hsien\";\"other\"\n\"1803514\";\"Ts'ang-hsi\";\"other\"\n\"1803514\";\"Tsangki-hsien\";\"other\"\n\"1803514\";\"Ts’ang-ch’i-hsien\";\"other\"\n\"1803514\";\"Ts’ang-hsi\";\"other\"\n\"1803514\";\"ling jiang\";\"other\"\n\"1803514\";\"陵江\";\"other\"\n\"1803539\";\"Lingdi\";\"main\"\n\"1803539\";\"Ling-ti\";\"other\"\n\"1803539\";\"Lingdi Xiang\";\"other\"\n\"1803539\";\"ling di\";\"other\"\n\"1803539\";\"ling di xiang\";\"other\"\n\"1803539\";\"岭底\";\"other\"\n\"1803539\";\"岭底乡\";\"other\"\n\"1803540\";\"Lingdi\";\"main\"\n\"1803540\";\"Ling-ti\";\"other\"\n\"1803540\";\"Lingdi Zhen\";\"other\"\n\"1803540\";\"灵地\";\"other\"\n\"1803540\";\"灵地镇\";\"other\"\n\"1803546\";\"Chongwen\";\"main\"\n\"1803546\";\"L'ing-ch'uan-hsien\";\"other\"\n\"1803546\";\"Lin-chuan\";\"other\"\n\"1803546\";\"Lingchuan\";\"other\"\n\"1803546\";\"L’ing-ch’uan-hsien\";\"other\"\n\"1803546\";\"chong wen\";\"other\"\n\"1803546\";\"崇文\";\"other\"\n\"1803550\";\"Lingcheng\";\"main\"\n\"1803550\";\"Ling-ch'eng-chen\";\"other\"\n\"1803550\";\"Ling-ch’eng-chen\";\"other\"\n\"1803550\";\"Ling-pi\";\"other\"\n\"1803550\";\"Ling-pi-hsien\";\"other\"\n\"1803550\";\"Lingbi\";\"other\"\n\"1803550\";\"ling cheng\";\"other\"\n\"1803550\";\"灵城\";\"other\"\n\"1803551\";\"Lingcheng\";\"main\"\n\"1803551\";\"Beiliu\";\"other\"\n\"1803551\";\"Paklow\";\"other\"\n\"1803551\";\"Paklow-hsien\";\"other\"\n\"1803551\";\"Pei-liu\";\"other\"\n\"1803551\";\"Pei-liu-hsien\";\"other\"\n\"1803551\";\"Pie-liu\";\"other\"\n\"1803552\";\"Lingcheng\";\"main\"\n\"1803552\";\"Ling-shan-hsien\";\"other\"\n\"1803552\";\"Lingshan\";\"other\"\n\"1803552\";\"ling cheng\";\"other\"\n\"1803552\";\"灵城\";\"other\"\n\"1803554\";\"Lingbei\";\"main\"\n\"1803554\";\"Lingbei Zhen\";\"other\"\n\"1803554\";\"岭背\";\"other\"\n\"1803554\";\"岭背镇\";\"other\"\n\"1803560\";\"Lincheng\";\"main\"\n\"1803560\";\"Hsien-ch'eng-chen\";\"other\"\n\"1803560\";\"Hsien-ch’eng-chen\";\"other\"\n\"1803560\";\"Limkao-hsien\";\"other\"\n\"1803560\";\"Limko\";\"other\"\n\"1803560\";\"Limkohsien\";\"other\"\n\"1803560\";\"Limkou\";\"other\"\n\"1803560\";\"Limkow\";\"other\"\n\"1803560\";\"Lin'chehn\";\"other\"\n\"1803560\";\"Lin-kae\";\"other\"\n\"1803560\";\"Lin-kao\";\"other\"\n\"1803560\";\"Lin-kao-chen\";\"other\"\n\"1803560\";\"Lin-kao-hsien\";\"other\"\n\"1803560\";\"Lingao\";\"other\"\n\"1803560\";\"Lunkao\";\"other\"\n\"1803560\";\"Линьчэн\";\"other\"\n\"1803567\";\"Linfen\";\"main\"\n\"1803567\";\"Lin'fyn'\";\"other\"\n\"1803567\";\"Lin-fen-hsien\";\"other\"\n\"1803567\";\"Ping-yang\";\"other\"\n\"1803567\";\"Ping-yang-fu\";\"other\"\n\"1803567\";\"Saratsi\";\"other\"\n\"1803567\";\"lin fen\";\"other\"\n\"1803567\";\"lin fen shi\";\"other\"\n\"1803567\";\"Линьфынь\";\"other\"\n\"1803567\";\"临汾\";\"other\"\n\"1803567\";\"临汾市\";\"other\"\n\"1803567\";\"臨汾\";\"other\"\n\"1803572\";\"Lindian\";\"main\"\n\"1803572\";\"Lin-chia-tien\";\"other\"\n\"1803572\";\"Lin-tien\";\"other\"\n\"1803572\";\"Lindian Zhen\";\"other\"\n\"1803572\";\"lin dian\";\"other\"\n\"1803572\";\"蔺店\";\"other\"\n\"1803574\";\"Linjiadai\";\"main\"\n\"1803574\";\"Lin-chia-tai-chen\";\"other\"\n\"1803574\";\"Lin-tai\";\"other\"\n\"1803574\";\"Lindai\";\"other\"\n\"1803574\";\"Lindai Zhen\";\"other\"\n\"1803574\";\"林埭镇\";\"other\"\n\"1803574\";\"林家埭\";\"other\"\n\"1803584\";\"Lincheng\";\"main\"\n\"1803584\";\"Hui-t'ung\";\"other\"\n\"1803584\";\"Hui-t'ung-hsien\";\"other\"\n\"1803584\";\"Hui-t’ung\";\"other\"\n\"1803584\";\"Hui-t’ung-hsien\";\"other\"\n\"1803584\";\"Huitong\";\"other\"\n\"1803584\";\"Hweitung\";\"other\"\n\"1803584\";\"Hweitung-hsien\";\"other\"\n\"1803584\";\"Khoytun\";\"other\"\n\"1803584\";\"lin cheng\";\"other\"\n\"1803584\";\"林城\";\"other\"\n\"1803608\";\"Limin\";\"main\"\n\"1803608\";\"Li-min-pao\";\"other\"\n\"1803608\";\"Limin Zhen\";\"other\"\n\"1803608\";\"利民\";\"other\"\n\"1803608\";\"利民镇\";\"other\"\n\"1803616\";\"Liling\";\"main\"\n\"1803616\";\"Li-ling-ch'eng\";\"other\"\n\"1803616\";\"Li-ling-ch’eng\";\"other\"\n\"1803616\";\"Li-ling-hsien\";\"other\"\n\"1803616\";\"Lilin\";\"other\"\n\"1803616\";\"Лилин\";\"other\"\n\"1803616\";\"醴陵\";\"other\"\n\"1803670\";\"Lijiang\";\"main\"\n\"1803670\";\"Hsiao-yen\";\"other\"\n\"1803670\";\"Yuan-chiang\";\"other\"\n\"1803670\";\"Yuan-chiang-hsien\";\"other\"\n\"1803670\";\"Yuanjiang\";\"other\"\n\"1803670\";\"Yuankiang\";\"other\"\n\"1803670\";\"Yuankiang-hsien\";\"other\"\n\"1803670\";\"Yüan-chiang\";\"other\"\n\"1803670\";\"Yüan-chiang-hsien\";\"other\"\n\"1803670\";\"Yüankiang\";\"other\"\n\"1803670\";\"Yüankiang-hsien\";\"other\"\n\"1803670\";\"li jiang\";\"other\"\n\"1803670\";\"澧江\";\"other\"\n\"1803679\";\"Lijiahe\";\"main\"\n\"1803679\";\"Li-chia-ho\";\"other\"\n\"1803679\";\"Lijiahe Xiang\";\"other\"\n\"1803679\";\"li jia he\";\"other\"\n\"1803679\";\"li jia he xiang\";\"other\"\n\"1803679\";\"李家河\";\"other\"\n\"1803679\";\"李家河乡\";\"other\"\n\"1803737\";\"Ligang\";\"main\"\n\"1803737\";\"Li-chiang\";\"other\"\n\"1803737\";\"Li-kang\";\"other\"\n\"1803737\";\"Li-kang-chen\";\"other\"\n\"1803737\";\"利港\";\"other\"\n\"1803748\";\"Lieqiao\";\"main\"\n\"1803748\";\"Lieh-ch'iao\";\"other\"\n\"1803748\";\"Lieh-ch’iao\";\"other\"\n\"1803748\";\"Lieqiao Xiang\";\"other\"\n\"1803748\";\"lie qiao\";\"other\"\n\"1803748\";\"lie qiao xiang\";\"other\"\n\"1803748\";\"烈桥\";\"other\"\n\"1803748\";\"烈桥乡\";\"other\"\n\"1803751\";\"Liebu\";\"main\"\n\"1803751\";\"Liebu Xiang\";\"other\"\n\"1803751\";\"Lieh-pao\";\"other\"\n\"1803751\";\"烈堡\";\"other\"\n\"1803751\";\"烈堡乡\";\"other\"\n\"1803757\";\"Lidian\";\"main\"\n\"1803757\";\"李店\";\"other\"\n\"1803782\";\"Lichuan\";\"main\"\n\"1803782\";\"Li-ch'uan-hsien\";\"other\"\n\"1803782\";\"Li-ch’uan-hsien\";\"other\"\n\"1803782\";\"Lichuan'\";\"other\"\n\"1803782\";\"Lichwan-hsien\";\"other\"\n\"1803782\";\"Личуань\";\"other\"\n\"1803787\";\"Lihou\";\"main\"\n\"1803787\";\"Li-ch'eng-hsien\";\"other\"\n\"1803787\";\"Li-ch’eng-hsien\";\"other\"\n\"1803787\";\"Lichen\";\"other\"\n\"1803787\";\"Licheng\";\"other\"\n\"1803787\";\"li hou\";\"other\"\n\"1803787\";\"黎侯\";\"other\"\n\"1803790\";\"Licheng\";\"main\"\n\"1803790\";\"Laipo\";\"other\"\n\"1803790\";\"Laipo-hsien\";\"other\"\n\"1803790\";\"Li-ch'eng-chen\";\"other\"\n\"1803790\";\"Li-ch’eng-chen\";\"other\"\n\"1803790\";\"Li-p'u-hsien\";\"other\"\n\"1803790\";\"Li-p’u-hsien\";\"other\"\n\"1803790\";\"Lipu\";\"other\"\n\"1803790\";\"li cheng\";\"other\"\n\"1803790\";\"荔城\";\"other\"\n\"1803791\";\"Licheng\";\"main\"\n\"1803791\";\"Tseng-ch'eng\";\"other\"\n\"1803791\";\"Tseng-ch'eng-hsien\";\"other\"\n\"1803791\";\"Tseng-ch’eng\";\"other\"\n\"1803791\";\"Tseng-ch’eng-hsien\";\"other\"\n\"1803791\";\"Tsengching\";\"other\"\n\"1803791\";\"Tsengshing\";\"other\"\n\"1803791\";\"Zengcheng\";\"other\"\n\"1803791\";\"曾城\";\"other\"\n\"1803791\";\"荔城\";\"other\"\n\"1803807\";\"Libao\";\"main\"\n\"1803807\";\"Li-pao\";\"other\"\n\"1803807\";\"Li-pao-chen\";\"other\"\n\"1803807\";\"Libao Zhen\";\"other\"\n\"1803807\";\"Lipu\";\"other\"\n\"1803807\";\"李堡\";\"other\"\n\"1803807\";\"李堡镇\";\"other\"\n\"1803824\";\"Miaojia\";\"main\"\n\"1803824\";\"Liaojiacun\";\"other\"\n\"1803824\";\"Liaojiacun Zhen\";\"other\"\n\"1803824\";\"liao jia cun zhen\";\"other\"\n\"1803824\";\"miao zhai\";\"other\"\n\"1803824\";\"廖家村镇\";\"other\"\n\"1803824\";\"苗寨\";\"other\"\n\"1803834\";\"Liaocheng\";\"main\"\n\"1803834\";\"Liao-ch'eng-hsien\";\"other\"\n\"1803834\";\"Liao-ch'eng-shih\";\"other\"\n\"1803834\";\"Liao-ch’eng-hsien\";\"other\"\n\"1803834\";\"Liao-ch’eng-shih\";\"other\"\n\"1803834\";\"Tung-ch'ang\";\"other\"\n\"1803834\";\"Tung-ch’ang\";\"other\"\n\"1803834\";\"Tungchangfu\";\"other\"\n\"1803834\";\"liao cheng\";\"other\"\n\"1803834\";\"liao cheng shi\";\"other\"\n\"1803834\";\"聊城\";\"other\"\n\"1803834\";\"聊城市\";\"other\"\n\"1803836\";\"Liaobu\";\"main\"\n\"1803836\";\"Liao-pu\";\"other\"\n\"1803836\";\"Liaobu Zhen\";\"other\"\n\"1803836\";\"liao bu\";\"other\"\n\"1803836\";\"寮步\";\"other\"\n\"1803841\";\"Lianzhou\";\"main\"\n\"1803841\";\"Lianxian\";\"other\"\n\"1803841\";\"Lien\";\"other\"\n\"1803841\";\"Lien-chou\";\"other\"\n\"1803841\";\"Lien-chou-chen\";\"other\"\n\"1803841\";\"Lien-chou-ko-tsu-tzu-chih-hsien\";\"other\"\n\"1803841\";\"Lien-hsien\";\"other\"\n\"1803841\";\"Lien-yang\";\"other\"\n\"1803841\";\"Linchow\";\"other\"\n\"1803841\";\"Linhsien\";\"other\"\n\"1803841\";\"连州\";\"other\"\n\"1803842\";\"Lianzhou\";\"main\"\n\"1803842\";\"Hepu\";\"other\"\n\"1803842\";\"Ho-p'u\";\"other\"\n\"1803842\";\"Ho-p'u-hsien\";\"other\"\n\"1803842\";\"Ho-p’u\";\"other\"\n\"1803842\";\"Ho-p’u-hsien\";\"other\"\n\"1803842\";\"Hoppo\";\"other\"\n\"1803842\";\"Hoppohsien\";\"other\"\n\"1803842\";\"Lien-chou\";\"other\"\n\"1803842\";\"Lien-chou-chen\";\"other\"\n\"1803842\";\"Limchow\";\"other\"\n\"1803842\";\"Limchowfu\";\"other\"\n\"1803842\";\"Linchow\";\"other\"\n\"1803842\";\"廉州\";\"other\"\n\"1803878\";\"Lianshui\";\"main\"\n\"1803878\";\"Ku-lien-shui-hsien\";\"other\"\n\"1803878\";\"Lianshui Zhen\";\"other\"\n\"1803878\";\"Lien-shui\";\"other\"\n\"1803878\";\"濂水\";\"other\"\n\"1803878\";\"濂水镇\";\"other\"\n\"1803886\";\"Lianran\";\"main\"\n\"1803886\";\"Anning\";\"other\"\n\"1803886\";\"Anning Shi\";\"other\"\n\"1803886\";\"Anning-chow\";\"other\"\n\"1803886\";\"Lianran Zhen\";\"other\"\n\"1803886\";\"安宁\";\"other\"\n\"1803886\";\"安宁市\";\"other\"\n\"1803886\";\"连然\";\"other\"\n\"1803886\";\"连然镇\";\"other\"\n\"1803906\";\"Lianhuasi\";\"main\"\n\"1803906\";\"Lianhuasi Zhen\";\"other\"\n\"1803906\";\"Lianhuasizhan\";\"other\"\n\"1803906\";\"Lien-hua-ssu\";\"other\"\n\"1803906\";\"Lien-hua-ssu-chan\";\"other\"\n\"1803906\";\"lian hua si\";\"other\"\n\"1803906\";\"莲花寺\";\"other\"\n\"1803924\";\"Lianhu\";\"main\"\n\"1803924\";\"Lianhu Xiang\";\"other\"\n\"1803924\";\"莲湖\";\"other\"\n\"1803924\";\"莲湖乡\";\"other\"\n\"1803927\";\"Lianhe\";\"main\"\n\"1803927\";\"lian he\";\"other\"\n\"1803927\";\"莲河\";\"other\"\n\"1803944\";\"Liangyaping\";\"main\"\n\"1803948\";\"Liangxiang\";\"main\"\n\"1803948\";\"Liang-hsiang\";\"other\"\n\"1803948\";\"Liang-hsiang-chen\";\"other\"\n\"1803948\";\"Liang-hsiang-hsien\";\"other\"\n\"1803948\";\"Liangsiang\";\"other\"\n\"1803948\";\"Liangxiangzhen\";\"other\"\n\"1803948\";\"Lyansyan\";\"other\"\n\"1803954\";\"Liangwa\";\"main\"\n\"1803954\";\"Liang-wu\";\"other\"\n\"1803954\";\"Liangwa Zhen\";\"other\"\n\"1803954\";\"liang wa\";\"other\"\n\"1803954\";\"liang wa zhen\";\"other\"\n\"1803954\";\"梁洼\";\"other\"\n\"1803954\";\"梁洼镇\";\"other\"\n\"1803961\";\"Liangting\";\"main\"\n\"1803961\";\"Liang-t'ing-chen\";\"other\"\n\"1803961\";\"Liang-t'ing-ssu\";\"other\"\n\"1803961\";\"Liang-t’ing-chen\";\"other\"\n\"1803961\";\"Liang-t’ing-ssu\";\"other\"\n\"1803961\";\"Liangting Zhen\";\"other\"\n\"1803961\";\"Yu-t'ing\";\"other\"\n\"1803961\";\"Yu-t'ing-chen\";\"other\"\n\"1803961\";\"Yu-t'ing-ssu\";\"other\"\n\"1803961\";\"Yü-t’ing\";\"other\"\n\"1803961\";\"Yü-t’ing-chen\";\"other\"\n\"1803961\";\"Yü-t’ing-ssu\";\"other\"\n\"1803961\";\"两亭\";\"other\"\n\"1803961\";\"两亭镇\";\"other\"\n\"1803974\";\"Liangshuikou\";\"main\"\n\"1803974\";\"Liangshuikou Zhen\";\"other\"\n\"1803974\";\"liang shui kou\";\"other\"\n\"1803974\";\"凉水口\";\"other\"\n\"1803974\";\"凉水口镇\";\"other\"\n\"1803979\";\"Liangshui\";\"main\"\n\"1803979\";\"Liangshui Zhen\";\"other\"\n\"1803979\";\"两水\";\"other\"\n\"1803979\";\"两水镇\";\"other\"\n\"1803995\";\"Liangnong\";\"main\"\n\"1803995\";\"Liang-lung\";\"other\"\n\"1803995\";\"Liang-t'ung\";\"other\"\n\"1803995\";\"Liang-t'ung-chen\";\"other\"\n\"1803995\";\"Liang-t’ung\";\"other\"\n\"1803995\";\"Liang-t’ung-chen\";\"other\"\n\"1803995\";\"Liangnong Zhen\";\"other\"\n\"1803995\";\"liang nong\";\"other\"\n\"1803995\";\"liang nong zhen\";\"other\"\n\"1803995\";\"梁弄\";\"other\"\n\"1803995\";\"梁弄镇\";\"other\"\n\"1804006\";\"Liangkou\";\"main\"\n\"1804006\";\"Leungkowhu\";\"other\"\n\"1804006\";\"Leungkowhü\";\"other\"\n\"1804006\";\"Liang-k'ou-hsu\";\"other\"\n\"1804006\";\"Liang-k’ou-hsü\";\"other\"\n\"1804006\";\"Liangkou Zhen\";\"other\"\n\"1804006\";\"liang kou\";\"other\"\n\"1804006\";\"良口\";\"other\"\n\"1804009\";\"Xincheng\";\"main\"\n\"1804009\";\"Liang-chia-yu-fang\";\"other\"\n\"1804009\";\"Liangjiayoufang\";\"other\"\n\"1804009\";\"Xincheng Zhen\";\"other\"\n\"1804009\";\"Youyu Xian\";\"other\"\n\"1804009\";\"Yu-yu\";\"other\"\n\"1804009\";\"Yu-yü\";\"other\"\n\"1804009\";\"xin cheng\";\"other\"\n\"1804009\";\"右玉县\";\"other\"\n\"1804009\";\"新城\";\"other\"\n\"1804009\";\"新城镇\";\"other\"\n\"1804041\";\"Lianghekou\";\"main\"\n\"1804041\";\"Hsia-liang-ho-k'ou\";\"other\"\n\"1804041\";\"Hsia-liang-ho-k’ou\";\"other\"\n\"1804041\";\"Liang-ho-k'ou\";\"other\"\n\"1804041\";\"Liang-ho-k’ou\";\"other\"\n\"1804041\";\"Lianghekou Zhen\";\"other\"\n\"1804041\";\"两河口\";\"other\"\n\"1804041\";\"两河口镇\";\"other\"\n\"1804073\";\"Liangduo\";\"main\"\n\"1804073\";\"Liang-to\";\"other\"\n\"1804073\";\"Liang-to-chen\";\"other\"\n\"1804073\";\"Liangduo Zhen\";\"other\"\n\"1804073\";\"梁垛\";\"other\"\n\"1804073\";\"梁垛镇\";\"other\"\n\"1804081\";\"Liangdang Chengguanzhen\";\"main\"\n\"1804081\";\"Chengguanzhen\";\"other\"\n\"1804081\";\"Liang-tang\";\"other\"\n\"1804081\";\"Liang-tang-hsien\";\"other\"\n\"1804081\";\"Liangdang\";\"other\"\n\"1804081\";\"Liangdang Xian\";\"other\"\n\"1804081\";\"Lyandan\";\"other\"\n\"1804081\";\"两当\";\"other\"\n\"1804081\";\"两当县\";\"other\"\n\"1804081\";\"两当城关镇\";\"other\"\n\"1804088\";\"Liangcunchang\";\"main\"\n\"1804088\";\"Liang-ts'un\";\"other\"\n\"1804088\";\"Liang-ts’un\";\"other\"\n\"1804088\";\"Liangcun\";\"other\"\n\"1804089\";\"Liangcun\";\"main\"\n\"1804089\";\"Liang-ts'un\";\"other\"\n\"1804089\";\"Liang-ts’un\";\"other\"\n\"1804089\";\"Liangcun Zhen\";\"other\"\n\"1804089\";\"良村\";\"other\"\n\"1804089\";\"良村镇\";\"other\"\n\"1804106\";\"Lianfeng\";\"main\"\n\"1804106\";\"Liancheng\";\"other\"\n\"1804106\";\"Lien-ch'eng\";\"other\"\n\"1804106\";\"Lien-ch'eng-hsien\";\"other\"\n\"1804106\";\"Lien-ch’eng\";\"other\"\n\"1804106\";\"Lien-ch’eng-hsien\";\"other\"\n\"1804106\";\"lian feng\";\"other\"\n\"1804106\";\"莲峰\";\"other\"\n\"1804111\";\"Liancun\";\"main\"\n\"1804111\";\"lian cun\";\"other\"\n\"1804111\";\"廉村\";\"other\"\n\"1804119\";\"Liancheng\";\"main\"\n\"1804119\";\"Guangnan\";\"other\"\n\"1804119\";\"Kuang-nan\";\"other\"\n\"1804119\";\"Kuang-nan-hsien\";\"other\"\n\"1804119\";\"Kwangnan\";\"other\"\n\"1804119\";\"Kwangnan-hsien\";\"other\"\n\"1804119\";\"Kwangnanfu\";\"other\"\n\"1804119\";\"Pao-ning\";\"other\"\n\"1804119\";\"lian cheng\";\"other\"\n\"1804119\";\"莲城\";\"other\"\n\"1804120\";\"Lianjiang\";\"main\"\n\"1804120\";\"Lei-pei\";\"other\"\n\"1804120\";\"Liancheng\";\"other\"\n\"1804120\";\"Lien-chiang\";\"other\"\n\"1804120\";\"Lien-chiang-hsien\";\"other\"\n\"1804120\";\"Limkong\";\"other\"\n\"1804120\";\"Limkong-hsien\";\"other\"\n\"1804120\";\"Lunkong\";\"other\"\n\"1804120\";\"Shih-ch'eng\";\"other\"\n\"1804120\";\"Shih-ch’eng\";\"other\"\n\"1804120\";\"廉江\";\"other\"\n\"1804121\";\"Liancai\";\"main\"\n\"1804121\";\"Liancaipu\";\"other\"\n\"1804121\";\"Liancaizhen\";\"other\"\n\"1804121\";\"Lien-ts'ai-p'u\";\"other\"\n\"1804121\";\"Lien-ts’ai-p’u\";\"other\"\n\"1804121\";\"联财\";\"other\"\n\"1804147\";\"Lesuhe\";\"main\"\n\"1804147\";\"Le-su-ho\";\"other\"\n\"1804147\";\"Le-su-ho-k'ou\";\"other\"\n\"1804147\";\"Le-su-ho-k’ou\";\"other\"\n\"1804147\";\"Lesuhe Zhen\";\"other\"\n\"1804147\";\"Lo-su-ho\";\"other\"\n\"1804147\";\"Lo-su-ho-k'ou\";\"other\"\n\"1804147\";\"Lo-su-ho-k’ou\";\"other\"\n\"1804147\";\"乐素河\";\"other\"\n\"1804147\";\"乐素河镇\";\"other\"\n\"1804153\";\"Leshan\";\"main\"\n\"1804153\";\"Chia-ting\";\"other\"\n\"1804153\";\"Kiating\";\"other\"\n\"1804153\";\"Kiatingfu\";\"other\"\n\"1804153\";\"Lehshan'\";\"other\"\n\"1804153\";\"Lo-shan\";\"other\"\n\"1804153\";\"Lo-shan-hsien\";\"other\"\n\"1804153\";\"Лэшань\";\"other\"\n\"1804153\";\"乐山\";\"other\"\n\"1804162\";\"Lengshuitan\";\"main\"\n\"1804162\";\"Leng-shui-t'an-shih\";\"other\"\n\"1804162\";\"Leng-shui-t'ang\";\"other\"\n\"1804162\";\"Leng-shui-t’an-shih\";\"other\"\n\"1804162\";\"Leng-shui-t’ang\";\"other\"\n\"1804162\";\"Lengshuitanqu\";\"other\"\n\"1804162\";\"冷水滩\";\"other\"\n\"1804169\";\"Lengshuijiang\";\"main\"\n\"1804169\";\"Leng-chiang\";\"other\"\n\"1804169\";\"Leng-chiang-shih\";\"other\"\n\"1804169\";\"Leng-shui-chen\";\"other\"\n\"1804169\";\"Leng-shui-chiang\";\"other\"\n\"1804169\";\"Leng-shui-chiang-shih\";\"other\"\n\"1804169\";\"leng shui jiang shi\";\"other\"\n\"1804169\";\"冷水江\";\"other\"\n\"1804169\";\"冷水江市\";\"other\"\n\"1804198\";\"Leli\";\"main\"\n\"1804198\";\"Lo-li\";\"other\"\n\"1804198\";\"Lo-li-chen\";\"other\"\n\"1804198\";\"Lo-li-chieh\";\"other\"\n\"1804198\";\"Lo-li-fou\";\"other\"\n\"1804198\";\"Lo-li-hsu\";\"other\"\n\"1804198\";\"Lo-li-hsü\";\"other\"\n\"1804198\";\"T'ien-lin\";\"other\"\n\"1804198\";\"Tianlin\";\"other\"\n\"1804198\";\"T’ien-lin\";\"other\"\n\"1804198\";\"le li\";\"other\"\n\"1804198\";\"乐里\";\"other\"\n\"1804208\";\"Leiyang\";\"main\"\n\"1804208\";\"Lei-yang-hsien\";\"other\"\n\"1804208\";\"耒阳\";\"other\"\n\"1804252\";\"Lecheng\";\"main\"\n\"1804252\";\"Lechang\";\"other\"\n\"1804252\";\"Lo-ch'ang\";\"other\"\n\"1804252\";\"Lo-ch'ang-hsien\";\"other\"\n\"1804252\";\"Lo-ch’ang\";\"other\"\n\"1804252\";\"Lo-ch’ang-hsien\";\"other\"\n\"1804252\";\"Loh Ch'ang\";\"other\"\n\"1804252\";\"Loh Ch’ang\";\"other\"\n\"1804252\";\"Lohchong-hsien\";\"other\"\n\"1804252\";\"Lokcheon\";\"other\"\n\"1804252\";\"Lokchong\";\"other\"\n\"1804252\";\"乐城\";\"other\"\n\"1804264\";\"Lazi\";\"main\"\n\"1804264\";\"Lazikou\";\"other\"\n\"1804264\";\"腊子\";\"other\"\n\"1804264\";\"腊子口\";\"other\"\n\"1804279\";\"Laozhuang\";\"main\"\n\"1804279\";\"Laozhuang Zhen\";\"other\"\n\"1804279\";\"Shan-sun-lao-chuang\";\"other\"\n\"1804279\";\"lao zhuang\";\"other\"\n\"1804279\";\"lao zhuang zhen\";\"other\"\n\"1804279\";\"老庄\";\"other\"\n\"1804279\";\"老庄镇\";\"other\"\n\"1804295\";\"Laoyingpan\";\"main\"\n\"1804295\";\"Laoyingpan Zhen\";\"other\"\n\"1804295\";\"老营盘\";\"other\"\n\"1804295\";\"老营盘镇\";\"other\"\n\"1804359\";\"Laolong\";\"main\"\n\"1804359\";\"Lao-lung\";\"other\"\n\"1804359\";\"Lao-lung-chen\";\"other\"\n\"1804359\";\"Lao-lung-ssu\";\"other\"\n\"1804359\";\"Longchuan\";\"other\"\n\"1804359\";\"Lung-ch'uan\";\"other\"\n\"1804359\";\"Lung-ch'uan-hsien\";\"other\"\n\"1804359\";\"Lung-ch’uan\";\"other\"\n\"1804359\";\"Lung-ch’uan-hsien\";\"other\"\n\"1804359\";\"lao long\";\"other\"\n\"1804359\";\"老隆\";\"other\"\n\"1804386\";\"Laohekou\";\"main\"\n\"1804386\";\"Guanghua\";\"other\"\n\"1804386\";\"Ho-k'ou-chen\";\"other\"\n\"1804386\";\"Ho-k’ou-chen\";\"other\"\n\"1804386\";\"Kuang-hua\";\"other\"\n\"1804386\";\"Lao-ho-k'ou\";\"other\"\n\"1804386\";\"Lao-ho-k’ou\";\"other\"\n\"1804386\";\"Laohokow\";\"other\"\n\"1804405\";\"Laodian\";\"main\"\n\"1804405\";\"Lao-tien\";\"other\"\n\"1804405\";\"Laodian Zhen\";\"other\"\n\"1804405\";\"lao dian\";\"other\"\n\"1804405\";\"lao dian zhen\";\"other\"\n\"1804405\";\"涝店\";\"other\"\n\"1804405\";\"涝店镇\";\"other\"\n\"1804407\";\"Laodaosi\";\"main\"\n\"1804407\";\"Lao-tao-shih\";\"other\"\n\"1804407\";\"Lao-tao-ssu\";\"other\"\n\"1804407\";\"Laodaosi Zhen\";\"other\"\n\"1804407\";\"老道寺\";\"other\"\n\"1804407\";\"老道寺镇\";\"other\"\n\"1804430\";\"Lanzhou\";\"main\"\n\"1804430\";\"Kao-lan-hsien\";\"other\"\n\"1804430\";\"Kaolan\";\"other\"\n\"1804430\";\"Lan Chau\";\"other\"\n\"1804430\";\"Lan Châu\";\"other\"\n\"1804430\";\"Lan'chzhou\";\"other\"\n\"1804430\";\"Lan-chou\";\"other\"\n\"1804430\";\"Lan-chou-shih\";\"other\"\n\"1804430\";\"Lanchow\";\"other\"\n\"1804430\";\"Lanchowfu\";\"other\"\n\"1804430\";\"Langouo\";\"other\"\n\"1804430\";\"Lanzhou Shi\";\"other\"\n\"1804430\";\"Lanĝoŭo\";\"other\"\n\"1804430\";\"lan zhou\";\"other\"\n\"1804430\";\"lan zhou shi\";\"other\"\n\"1804430\";\"Ланьчжоу\";\"other\"\n\"1804430\";\"لەنجۇ شەھىرى\";\"other\"\n\"1804430\";\"兰州\";\"other\"\n\"1804430\";\"兰州市\";\"other\"\n\"1804430\";\"蘭州\";\"other\"\n\"1804430\";\"蘭州市\";\"other\"\n\"1804442\";\"Lanxi\";\"main\"\n\"1804442\";\"Lan-ch'i\";\"other\"\n\"1804442\";\"Lan-ch'i-hsien\";\"other\"\n\"1804442\";\"Lan-ch'i-hsien-ch'eng\";\"other\"\n\"1804442\";\"Lan-ch’i\";\"other\"\n\"1804442\";\"Lan-ch’i-hsien\";\"other\"\n\"1804442\";\"Lan-ch’i-hsien-ch’eng\";\"other\"\n\"1804442\";\"Lan-hsi\";\"other\"\n\"1804450\";\"Lantian\";\"main\"\n\"1804450\";\"Lan-t'ien\";\"other\"\n\"1804450\";\"Lan-t’ien\";\"other\"\n\"1804450\";\"Lantian Zhen\";\"other\"\n\"1804450\";\"lan tian\";\"other\"\n\"1804450\";\"lan tian zhen\";\"other\"\n\"1804450\";\"兰田\";\"other\"\n\"1804450\";\"兰田镇\";\"other\"\n\"1804451\";\"Lianyuan\";\"main\"\n\"1804451\";\"Lan-t'ien\";\"other\"\n\"1804451\";\"Lan-t'ien-chen\";\"other\"\n\"1804451\";\"Lan-t'ien-shih\";\"other\"\n\"1804451\";\"Lan-t’ien\";\"other\"\n\"1804451\";\"Lan-t’ien-chen\";\"other\"\n\"1804451\";\"Lan-t’ien-shih\";\"other\"\n\"1804451\";\"Lantian\";\"other\"\n\"1804451\";\"Lien-yuan\";\"other\"\n\"1804451\";\"Lien-yüan\";\"other\"\n\"1804451\";\"涟源\";\"other\"\n\"1804452\";\"Lantian\";\"main\"\n\"1804452\";\"Lan-t'ien\";\"other\"\n\"1804452\";\"Lan-t'ien-ch'ang\";\"other\"\n\"1804452\";\"Lan-t'ien-fang\";\"other\"\n\"1804452\";\"Lan-t’ien\";\"other\"\n\"1804452\";\"Lan-t’ien-ch’ang\";\"other\"\n\"1804452\";\"Lan-t’ien-fang\";\"other\"\n\"1804455\";\"Lantian\";\"main\"\n\"1804455\";\"Futian Yaozuxiang\";\"other\"\n\"1804455\";\"Lan-t'ien\";\"other\"\n\"1804455\";\"Lan-t’ien\";\"other\"\n\"1804455\";\"Lantian Yaozuxiang\";\"other\"\n\"1804455\";\"lan tian\";\"other\"\n\"1804455\";\"蓝田\";\"other\"\n\"1804456\";\"Lantang\";\"main\"\n\"1804456\";\"Lantang Zhen\";\"other\"\n\"1804456\";\"蓝塘\";\"other\"\n\"1804456\";\"蓝塘镇\";\"other\"\n\"1804463\";\"Tafeng\";\"main\"\n\"1804463\";\"Lan-chia\";\"other\"\n\"1804463\";\"Lan-shan-hsien\";\"other\"\n\"1804463\";\"Lanshan\";\"other\"\n\"1804463\";\"ta feng\";\"other\"\n\"1804463\";\"塔峰\";\"other\"\n\"1804465\";\"Lanqiao\";\"main\"\n\"1804465\";\"Lan-ch'iao\";\"other\"\n\"1804465\";\"Lan-ch'iao-chen\";\"other\"\n\"1804465\";\"Lan-ch’iao\";\"other\"\n\"1804465\";\"Lan-ch’iao-chen\";\"other\"\n\"1804465\";\"lan qiao\";\"other\"\n\"1804465\";\"蓝桥\";\"other\"\n\"1804472\";\"Lanli\";\"main\"\n\"1804499\";\"Jianping\";\"main\"\n\"1804499\";\"Chien-p'ing\";\"other\"\n\"1804499\";\"Chien-p’ing\";\"other\"\n\"1804499\";\"Kienping\";\"other\"\n\"1804499\";\"Lang-ch'i\";\"other\"\n\"1804499\";\"Lang-ch'i-chen\";\"other\"\n\"1804499\";\"Lang-ch'i-hsien\";\"other\"\n\"1804499\";\"Lang-ch’i\";\"other\"\n\"1804499\";\"Lang-ch’i-chen\";\"other\"\n\"1804499\";\"Lang-ch’i-hsien\";\"other\"\n\"1804499\";\"Lang-hsi\";\"other\"\n\"1804499\";\"Langki\";\"other\"\n\"1804499\";\"Langki-hsien\";\"other\"\n\"1804499\";\"Langxi\";\"other\"\n\"1804499\";\"jian ping\";\"other\"\n\"1804499\";\"建平\";\"other\"\n\"1804506\";\"Languan\";\"main\"\n\"1804506\";\"Lan-t'ien\";\"other\"\n\"1804506\";\"Lan-t'ien-hsien\";\"other\"\n\"1804506\";\"Lan-tyan\";\"other\"\n\"1804506\";\"Lan-t’ien\";\"other\"\n\"1804506\";\"Lan-t’ien-hsien\";\"other\"\n\"1804506\";\"Languan Zhen\";\"other\"\n\"1804506\";\"Lantian\";\"other\"\n\"1804506\";\"lan guan\";\"other\"\n\"1804506\";\"蓝关\";\"other\"\n\"1804506\";\"蓝关镇\";\"other\"\n\"1804540\";\"Langfang\";\"main\"\n\"1804540\";\"An-tz'u\";\"other\"\n\"1804540\";\"An-tz’u\";\"other\"\n\"1804540\";\"Anci\";\"other\"\n\"1804540\";\"Lanfan\";\"other\"\n\"1804540\";\"Lang-fang-chen\";\"other\"\n\"1804540\";\"lang fang shi\";\"other\"\n\"1804540\";\"Ланфан\";\"other\"\n\"1804540\";\"廊坊市\";\"other\"\n\"1804578\";\"Laizhou\";\"main\"\n\"1804578\";\"I\";\"other\"\n\"1804578\";\"I-hsien\";\"other\"\n\"1804578\";\"Lai-chou\";\"other\"\n\"1804578\";\"Lai-chow-fu\";\"other\"\n\"1804578\";\"Laichow\";\"other\"\n\"1804578\";\"Ye Xian\";\"other\"\n\"1804578\";\"Yeh\";\"other\"\n\"1804578\";\"Yehsien\";\"other\"\n\"1804578\";\"Yixian\";\"other\"\n\"1804583\";\"Laiyuan\";\"main\"\n\"1804583\";\"Laiyuan Xiang\";\"other\"\n\"1804583\";\"Xiacun\";\"other\"\n\"1804583\";\"赖源\";\"other\"\n\"1804583\";\"赖源乡\";\"other\"\n\"1804586\";\"Laiyang\";\"main\"\n\"1804586\";\"Lai-yang-hsien\";\"other\"\n\"1804586\";\"Lai-yank\";\"other\"\n\"1804591\";\"Laiwu\";\"main\"\n\"1804591\";\"Chiu-lai-wu\";\"other\"\n\"1804591\";\"Lai-wu-hsien\";\"other\"\n\"1804591\";\"lai wu\";\"other\"\n\"1804591\";\"lai wu shi\";\"other\"\n\"1804591\";\"莱芜\";\"other\"\n\"1804591\";\"莱芜市\";\"other\"\n\"1804602\";\"Xiangfeng\";\"main\"\n\"1804602\";\"Lai-feng-hsien\";\"other\"\n\"1804602\";\"Laifeng Shi\";\"other\"\n\"1804602\";\"xiang feng\";\"other\"\n\"1804602\";\"翔凤\";\"other\"\n\"1804603\";\"Laifang\";\"main\"\n\"1804603\";\"赖坊\";\"other\"\n\"1804605\";\"Laicun\";\"main\"\n\"1804605\";\"Lai-ts'un\";\"other\"\n\"1804605\";\"Lai-ts'un-hsu\";\"other\"\n\"1804605\";\"Lai-ts’un\";\"other\"\n\"1804605\";\"Lai-ts’un-hsü\";\"other\"\n\"1804605\";\"Laicun Zhen\";\"other\"\n\"1804605\";\"赖村\";\"other\"\n\"1804605\";\"赖村镇\";\"other\"\n\"1804609\";\"Laibin\";\"main\"\n\"1804609\";\"Lai-pin\";\"other\"\n\"1804609\";\"Lai-pin-chen\";\"other\"\n\"1804609\";\"Lai-pin-hsien\";\"other\"\n\"1804609\";\"Laiping\";\"other\"\n\"1804619\";\"Labao\";\"main\"\n\"1804619\";\"La-pao\";\"other\"\n\"1804619\";\"La-pao-chen\";\"other\"\n\"1804619\";\"La-pao-chieh\";\"other\"\n\"1804619\";\"La-pao-hsu\";\"other\"\n\"1804619\";\"La-pao-hsü\";\"other\"\n\"1804619\";\"Lapu\";\"other\"\n\"1804619\";\"Liu-chiang\";\"other\"\n\"1804619\";\"Liu-chiang-hsien\";\"other\"\n\"1804619\";\"la bao\";\"other\"\n\"1804619\";\"拉堡\";\"other\"\n\"1804622\";\"Kyiling\";\"main\"\n\"1804622\";\"Jilang\";\"other\"\n\"1804622\";\"Zhongtie Xiang\";\"other\"\n\"1804622\";\"中铁乡\";\"other\"\n\"1804622\";\"吉浪\";\"other\"\n\"1804645\";\"Kunyang\";\"main\"\n\"1804645\";\"P'ing-yang-hsien\";\"other\"\n\"1804645\";\"P'ing-yang-hsien-ch'eng\";\"other\"\n\"1804645\";\"Pingyang\";\"other\"\n\"1804645\";\"P’ing-yang-hsien\";\"other\"\n\"1804645\";\"P’ing-yang-hsien-ch’eng\";\"other\"\n\"1804646\";\"Kunyang\";\"main\"\n\"1804646\";\"Chin-ning\";\"other\"\n\"1804646\";\"Chiu-k'un-yang\";\"other\"\n\"1804646\";\"Chiu-k'un-yang-hsien-ch'eng\";\"other\"\n\"1804646\";\"Chiu-k’un-yang\";\"other\"\n\"1804646\";\"Chiu-k’un-yang-hsien-ch’eng\";\"other\"\n\"1804646\";\"Jinning\";\"other\"\n\"1804646\";\"Jinning Xian\";\"other\"\n\"1804646\";\"K'un-yang-hsien\";\"other\"\n\"1804646\";\"Kunyang Zhen\";\"other\"\n\"1804646\";\"K’un-yang-hsien\";\"other\"\n\"1804646\";\"jin ning xian\";\"other\"\n\"1804646\";\"kun yang\";\"other\"\n\"1804646\";\"kun yang zhen\";\"other\"\n\"1804646\";\"昆阳\";\"other\"\n\"1804646\";\"昆阳镇\";\"other\"\n\"1804646\";\"晋宁县\";\"other\"\n\"1804651\";\"Kunming\";\"main\"\n\"1804651\";\"Con Minh\";\"other\"\n\"1804651\";\"Côn Minh\";\"other\"\n\"1804651\";\"K'un-ming-hsien\";\"other\"\n\"1804651\";\"K'un-ming-shih\";\"other\"\n\"1804651\";\"Kchun-ming\";\"other\"\n\"1804651\";\"Kun'min\";\"other\"\n\"1804651\";\"Kunming Shi\";\"other\"\n\"1804651\";\"Kunmingas\";\"other\"\n\"1804651\";\"K’un-ming-hsien\";\"other\"\n\"1804651\";\"K’un-ming-shih\";\"other\"\n\"1804651\";\"Yun-nan\";\"other\"\n\"1804651\";\"Yunnanfu\";\"other\"\n\"1804651\";\"Yün-nan\";\"other\"\n\"1804651\";\"Yünnanfu\";\"other\"\n\"1804651\";\"kun ming\";\"other\"\n\"1804651\";\"kun ming shi\";\"other\"\n\"1804651\";\"kunming\";\"other\"\n\"1804651\";\"Куньмин\";\"other\"\n\"1804651\";\"昆明\";\"other\"\n\"1804651\";\"昆明市\";\"other\"\n\"1804651\";\"쿤밍\";\"other\"\n\"1804658\";\"Kuiyong\";\"main\"\n\"1804658\";\"K'uei-yung\";\"other\"\n\"1804658\";\"K'uei-yung-hsu\";\"other\"\n\"1804658\";\"Khitschhung\";\"other\"\n\"1804658\";\"Kuiyong Jiedao\";\"other\"\n\"1804658\";\"K’uei-yung\";\"other\"\n\"1804658\";\"K’uei-yung-hsü\";\"other\"\n\"1804658\";\"kui yong\";\"other\"\n\"1804658\";\"葵涌\";\"other\"\n\"1804664\";\"Kuitan\";\"main\"\n\"1804664\";\"K'uei-t'an\";\"other\"\n\"1804664\";\"K'uei-t'an-hsu\";\"other\"\n\"1804664\";\"Keulon\";\"other\"\n\"1804664\";\"Kuitan Zhen\";\"other\"\n\"1804664\";\"Kweitam\";\"other\"\n\"1804664\";\"Kweitan\";\"other\"\n\"1804664\";\"K’uei-t’an\";\"other\"\n\"1804664\";\"K’uei-t’an-hsü\";\"other\"\n\"1804664\";\"kui tan\";\"other\"\n\"1804664\";\"葵潭\";\"other\"\n\"1804685\";\"Kuangyuan\";\"main\"\n\"1804685\";\"Dongfeng\";\"other\"\n\"1804685\";\"I-liang\";\"other\"\n\"1804685\";\"I-liang-hsien\";\"other\"\n\"1804685\";\"Yiliang\";\"other\"\n\"1804685\";\"Yiliang Xian\";\"other\"\n\"1804685\";\"kuang yuan\";\"other\"\n\"1804685\";\"yi liang\";\"other\"\n\"1804685\";\"yi liang xian\";\"other\"\n\"1804685\";\"匡远\";\"other\"\n\"1804685\";\"宜良\";\"other\"\n\"1804685\";\"宜良县\";\"other\"\n\"1804686\";\"Kuangyan\";\"main\"\n\"1804686\";\"K'uang-yen\";\"other\"\n\"1804686\";\"K'uang-yen-shih\";\"other\"\n\"1804686\";\"Kuangyan Zhen\";\"other\"\n\"1804686\";\"K’uang-yen\";\"other\"\n\"1804686\";\"K’uang-yen-shih\";\"other\"\n\"1804686\";\"匡堰\";\"other\"\n\"1804686\";\"匡堰镇\";\"other\"\n\"1804694\";\"Kuanchuan\";\"main\"\n\"1804694\";\"K'uan-ch'uan-p'u\";\"other\"\n\"1804694\";\"K’uan-ch’uan-p’u\";\"other\"\n\"1804694\";\"宽川\";\"other\"\n\"1804709\";\"Kouzhen\";\"main\"\n\"1804709\";\"K'ou-chen\";\"other\"\n\"1804709\";\"K'ou-t'ou-chen\";\"other\"\n\"1804709\";\"Koutouzhen\";\"other\"\n\"1804709\";\"K’ou-chen\";\"other\"\n\"1804709\";\"K’ou-t’ou-chen\";\"other\"\n\"1804709\";\"kou zhen\";\"other\"\n\"1804709\";\"口镇\";\"other\"\n\"1804714\";\"Koujiahe\";\"main\"\n\"1804714\";\"K'ou-chia-ho\";\"other\"\n\"1804714\";\"K’ou-chia-ho\";\"other\"\n\"1804714\";\"寇家河\";\"other\"\n\"1804733\";\"Huzhuang\";\"main\"\n\"1804733\";\"Chou-chia-yuan\";\"other\"\n\"1804733\";\"Chou-chia-yüan\";\"other\"\n\"1804733\";\"Dongkongjiazhuang\";\"other\"\n\"1804733\";\"Huzhuang Zhen\";\"other\"\n\"1804733\";\"K'ung-chia-chuang\";\"other\"\n\"1804733\";\"Kongjiazhuang\";\"other\"\n\"1804733\";\"K’ung-chia-chuang\";\"other\"\n\"1804733\";\"Tung-k'ung-chia-chuang\";\"other\"\n\"1804733\";\"Tung-k’ung-chia-chuang\";\"other\"\n\"1804733\";\"东孔家庄\";\"other\"\n\"1804733\";\"胡庄\";\"other\"\n\"1804733\";\"胡庄镇\";\"other\"\n\"1804751\";\"Kesha\";\"main\"\n\"1804751\";\"K'o-sha\";\"other\"\n\"1804751\";\"Kesha Xiang\";\"other\"\n\"1804751\";\"K’o-sha\";\"other\"\n\"1804751\";\"ke sha\";\"other\"\n\"1804751\";\"ke sha xiang\";\"other\"\n\"1804751\";\"颗沙\";\"other\"\n\"1804751\";\"颗沙乡\";\"other\"\n\"1804758\";\"Kengyuan\";\"main\"\n\"1804775\";\"Lanyi\";\"main\"\n\"1804775\";\"K'o-lan\";\"other\"\n\"1804775\";\"K'o-lan-hsien\";\"other\"\n\"1804775\";\"K'o-lan-hsien-ch'eng\";\"other\"\n\"1804775\";\"Kelan\";\"other\"\n\"1804775\";\"Kolanchow\";\"other\"\n\"1804775\";\"K’o-lan\";\"other\"\n\"1804775\";\"K’o-lan-hsien\";\"other\"\n\"1804775\";\"K’o-lan-hsien-ch’eng\";\"other\"\n\"1804775\";\"lan yi\";\"other\"\n\"1804775\";\"岚漪\";\"other\"\n\"1804781\";\"Kefang\";\"main\"\n\"1804781\";\"客坊\";\"other\"\n\"1804819\";\"Kangshan\";\"main\"\n\"1804819\";\"Hung-shan\";\"other\"\n\"1804819\";\"Kangshan Xiang\";\"other\"\n\"1804819\";\"康山\";\"other\"\n\"1804819\";\"康山乡\";\"other\"\n\"1804850\";\"Kaiyuan\";\"main\"\n\"1804850\";\"A-mi\";\"other\"\n\"1804850\";\"Ami-hsien\";\"other\"\n\"1804850\";\"Amichow\";\"other\"\n\"1804850\";\"K'ai-yuan-hsien\";\"other\"\n\"1804850\";\"Kajjuan'\";\"other\"\n\"1804850\";\"K’ai-yüan-hsien\";\"other\"\n\"1804850\";\"Кайюань\";\"other\"\n\"1804850\";\"开远\";\"other\"\n\"1804869\";\"Xinning\";\"main\"\n\"1804869\";\"Hsin-ning\";\"other\"\n\"1804869\";\"K'ai-chiang\";\"other\"\n\"1804869\";\"K'ai-chiang-hsien\";\"other\"\n\"1804869\";\"Kaijiang\";\"other\"\n\"1804869\";\"Kaikiang\";\"other\"\n\"1804869\";\"Kaikianghsien\";\"other\"\n\"1804869\";\"Kaytszan\";\"other\"\n\"1804869\";\"K’ai-chiang\";\"other\"\n\"1804869\";\"K’ai-chiang-hsien\";\"other\"\n\"1804869\";\"Sin'nin\";\"other\"\n\"1804869\";\"Sinning\";\"other\"\n\"1804869\";\"Sinninghsien\";\"other\"\n\"1804869\";\"Sin’nin\";\"other\"\n\"1804869\";\"xin ning\";\"other\"\n\"1804869\";\"新宁\";\"other\"\n\"1804873\";\"Kaihua Chengguanzhen\";\"main\"\n\"1804873\";\"Chengguan Zhen\";\"other\"\n\"1804873\";\"K'ai-hua-hsien\";\"other\"\n\"1804873\";\"K'ai-hua-hsien-ch'eng\";\"other\"\n\"1804873\";\"Kaihua\";\"other\"\n\"1804873\";\"Kaihwa\";\"other\"\n\"1804873\";\"Kaihwa-hsien\";\"other\"\n\"1804873\";\"K’ai-hua-hsien\";\"other\"\n\"1804873\";\"K’ai-hua-hsien-ch’eng\";\"other\"\n\"1804873\";\"cheng guan zhen\";\"other\"\n\"1804873\";\"kai hua\";\"other\"\n\"1804873\";\"城关镇\";\"other\"\n\"1804873\";\"开化\";\"other\"\n\"1804873\";\"开化城关镇\";\"other\"\n\"1804874\";\"Kaihua\";\"main\"\n\"1804874\";\"Kaihwa\";\"other\"\n\"1804874\";\"Kaihwafu\";\"other\"\n\"1804874\";\"Wen-shan-hsien\";\"other\"\n\"1804874\";\"Wenshan\";\"other\"\n\"1804874\";\"开化\";\"other\"\n\"1804879\";\"Kaifeng\";\"main\"\n\"1804879\";\"K'ai-feng-hsien\";\"other\"\n\"1804879\";\"K'ai-feng-shih\";\"other\"\n\"1804879\";\"Kai Feng\";\"other\"\n\"1804879\";\"Kai-feng Fu\";\"other\"\n\"1804879\";\"Kai-fêng Fu\";\"other\"\n\"1804879\";\"Kajfehn\";\"other\"\n\"1804879\";\"Kajfyn\";\"other\"\n\"1804879\";\"Khai Phong\";\"other\"\n\"1804879\";\"K’ai-feng-hsien\";\"other\"\n\"1804879\";\"K’ai-feng-shih\";\"other\"\n\"1804879\";\"kai feng\";\"other\"\n\"1804879\";\"kai feng shi\";\"other\"\n\"1804879\";\"kaipeong\";\"other\"\n\"1804879\";\"khifng\";\"other\"\n\"1804879\";\"Кайфын\";\"other\"\n\"1804879\";\"Кайфэн\";\"other\"\n\"1804879\";\"קאיפנג\";\"other\"\n\"1804879\";\"كەيفېڭ شەھىرى\";\"other\"\n\"1804879\";\"ไคฟง\";\"other\"\n\"1804879\";\"开封市\";\"other\"\n\"1804879\";\"開封\";\"other\"\n\"1804879\";\"카이펑\";\"other\"\n\"1804892\";\"Juye\";\"main\"\n\"1804892\";\"Chin-yeh\";\"other\"\n\"1804892\";\"Chu-yeh\";\"other\"\n\"1804892\";\"Chu-yeh-hsien\";\"other\"\n\"1804892\";\"Chü-yeh\";\"other\"\n\"1804892\";\"Chü-yeh-hsien\";\"other\"\n\"1804892\";\"Kuyehhsien\";\"other\"\n\"1804894\";\"Juxing\";\"main\"\n\"1804894\";\"Chu-hsing\";\"other\"\n\"1804894\";\"Chu-hsing-chen\";\"other\"\n\"1804894\";\"Chü-hsing\";\"other\"\n\"1804894\";\"Chü-hsing-chen\";\"other\"\n\"1804894\";\"Juxing Zhen\";\"other\"\n\"1804894\";\"Juxingzhen\";\"other\"\n\"1804894\";\"Wangbao\";\"other\"\n\"1804894\";\"Wangbao Zhen\";\"other\"\n\"1804894\";\"王鲍\";\"other\"\n\"1804894\";\"王鲍镇\";\"other\"\n\"1804894\";\"聚星\";\"other\"\n\"1804894\";\"聚星镇\";\"other\"\n\"1804899\";\"Juxi\";\"main\"\n\"1804899\";\"Chu-hsi\";\"other\"\n\"1804899\";\"Chü-hsi\";\"other\"\n\"1804899\";\"Juxi Zhen\";\"other\"\n\"1804899\";\"莒溪\";\"other\"\n\"1804899\";\"莒溪镇\";\"other\"\n\"1804900\";\"Juting\";\"main\"\n\"1804900\";\"Chu-t'ing\";\"other\"\n\"1804900\";\"Chü-t’ing\";\"other\"\n\"1804900\";\"巨亭\";\"other\"\n\"1804917\";\"Junxi\";\"main\"\n\"1804917\";\"Datian\";\"other\"\n\"1804917\";\"Ta-t'ien\";\"other\"\n\"1804917\";\"Ta-t'ien-ch'eng\";\"other\"\n\"1804917\";\"Ta-t'ien-hsien\";\"other\"\n\"1804917\";\"Ta-t’ien\";\"other\"\n\"1804917\";\"Ta-t’ien-ch’eng\";\"other\"\n\"1804917\";\"Ta-t’ien-hsien\";\"other\"\n\"1804917\";\"jun xi\";\"other\"\n\"1804917\";\"均溪\";\"other\"\n\"1804935\";\"Junlian\";\"main\"\n\"1804935\";\"Chun-lien\";\"other\"\n\"1804935\";\"Chün-lien\";\"other\"\n\"1804935\";\"Kunlien\";\"other\"\n\"1804935\";\"Kunlien-hsien\";\"other\"\n\"1804935\";\"Künlien-hsien\";\"other\"\n\"1804935\";\"Yun-lien\";\"other\"\n\"1804935\";\"Yun-lien-hsien\";\"other\"\n\"1804935\";\"Yün-lien\";\"other\"\n\"1804935\";\"Yün-lien-hsien\";\"other\"\n\"1804935\";\"yun lian\";\"other\"\n\"1804935\";\"筠连\";\"other\"\n\"1804936\";\"Junkou\";\"main\"\n\"1804936\";\"Chun-k'ou\";\"other\"\n\"1804936\";\"Chün-k’ou\";\"other\"\n\"1804936\";\"Junkou Zhen\";\"other\"\n\"1804936\";\"均口\";\"other\"\n\"1804936\";\"均口镇\";\"other\"\n\"1804950\";\"Junbu\";\"main\"\n\"1804950\";\"Junbu Xiang\";\"other\"\n\"1804950\";\"君埠\";\"other\"\n\"1804950\";\"君埠乡\";\"other\"\n\"1804977\";\"Juexi\";\"main\"\n\"1804977\";\"Chueh-hsi\";\"other\"\n\"1804977\";\"Chueh-hsi-so-ch'eng\";\"other\"\n\"1804977\";\"Chüeh-hsi\";\"other\"\n\"1804977\";\"Chüeh-hsi-so-ch’eng\";\"other\"\n\"1804977\";\"Juexi Jiedao\";\"other\"\n\"1804977\";\"jue xi\";\"other\"\n\"1804977\";\"jue xi jie dao\";\"other\"\n\"1804977\";\"爵溪\";\"other\"\n\"1804977\";\"爵溪街道\";\"other\"\n\"1804979\";\"Juegang\";\"main\"\n\"1804979\";\"Chueh-chiang\";\"other\"\n\"1804979\";\"Chueh-chiang-chen\";\"other\"\n\"1804979\";\"Chueh-kang\";\"other\"\n\"1804979\";\"Chuehkiang\";\"other\"\n\"1804979\";\"Chüeh-chiang\";\"other\"\n\"1804979\";\"Chüeh-chiang-chen\";\"other\"\n\"1804979\";\"Chüeh-kang\";\"other\"\n\"1804979\";\"Chüehkiang\";\"other\"\n\"1804979\";\"Ju-tung\";\"other\"\n\"1804979\";\"Juegang Zhen\";\"other\"\n\"1804979\";\"Juegangzhen\";\"other\"\n\"1804979\";\"Rudong\";\"other\"\n\"1804979\";\"如东\";\"other\"\n\"1804979\";\"掘港\";\"other\"\n\"1804979\";\"掘港镇\";\"other\"\n\"1804991\";\"Juanshui\";\"main\"\n\"1804991\";\"T'ung-ch'eng\";\"other\"\n\"1804991\";\"T'ung-ch'eng-hsien\";\"other\"\n\"1804991\";\"Tongcheng\";\"other\"\n\"1804991\";\"T’ung-ch’eng\";\"other\"\n\"1804991\";\"T’ung-ch’eng-hsien\";\"other\"\n\"1804991\";\"jun shui\";\"other\"\n\"1804991\";\"隽水\";\"other\"\n\"1804996\";\"Liulin\";\"main\"\n\"1804996\";\"Cho-ni\";\"other\"\n\"1804996\";\"Cho-ni-she-chih-chu\";\"other\"\n\"1804996\";\"Cho-ni-she-chih-chü\";\"other\"\n\"1804996\";\"Chone\";\"other\"\n\"1804996\";\"Chzhoni\";\"other\"\n\"1804996\";\"Jone\";\"other\"\n\"1804996\";\"Jonê\";\"other\"\n\"1804996\";\"Knyazya Dzhoni\";\"other\"\n\"1804996\";\"Liulin Zhen\";\"other\"\n\"1804996\";\"Zhuoni\";\"other\"\n\"1804996\";\"Zhuoni Xian\";\"other\"\n\"1804996\";\"卓尼\";\"other\"\n\"1804996\";\"卓尼县\";\"other\"\n\"1804996\";\"柳林\";\"other\"\n\"1804996\";\"柳林镇\";\"other\"\n\"1805022\";\"Jiyang\";\"main\"\n\"1805022\";\"Chi-yang\";\"other\"\n\"1805022\";\"Jiyang Zhen\";\"other\"\n\"1805022\";\"ji yang\";\"other\"\n\"1805022\";\"吉阳\";\"other\"\n\"1805022\";\"吉阳镇\";\"other\"\n\"1805030\";\"Jichang\";\"main\"\n\"1805030\";\"Chi\";\"other\"\n\"1805030\";\"Chi-chen\";\"other\"\n\"1805030\";\"Chi-hsien\";\"other\"\n\"1805030\";\"Chi-hsien-ch'eng\";\"other\"\n\"1805030\";\"Chi-hsien-ch’eng\";\"other\"\n\"1805030\";\"Jixian\";\"other\"\n\"1805030\";\"Kichow\";\"other\"\n\"1805030\";\"ji chang\";\"other\"\n\"1805030\";\"吉昌\";\"other\"\n\"1805032\";\"Jixian\";\"main\"\n\"1805032\";\"Chi-hsien\";\"other\"\n\"1805032\";\"Jixian Zhen\";\"other\"\n\"1805032\";\"Nan-chi-hsien\";\"other\"\n\"1805032\";\"ji xian\";\"other\"\n\"1805032\";\"ji xian zhen\";\"other\"\n\"1805032\";\"集贤\";\"other\"\n\"1805032\";\"集贤镇\";\"other\"\n\"1805066\";\"Yongping\";\"main\"\n\"1805066\";\"Chiu-yung-shou\";\"other\"\n\"1805066\";\"Jiuyongshou\";\"other\"\n\"1805066\";\"Yung-p'ing\";\"other\"\n\"1805066\";\"Yung-p’ing\";\"other\"\n\"1805066\";\"Yung-shou-hsien\";\"other\"\n\"1805066\";\"Yung-shou-ku-chih\";\"other\"\n\"1805066\";\"yong ping\";\"other\"\n\"1805066\";\"永平\";\"other\"\n\"1805090\";\"Jiuxian\";\"main\"\n\"1805090\";\"Chiu-hsien\";\"other\"\n\"1805090\";\"Chiu-hsien-chen\";\"other\"\n\"1805090\";\"jiu xian\";\"other\"\n\"1805090\";\"旧县\";\"other\"\n\"1805101\";\"Wugong\";\"main\"\n\"1805101\";\"Chiu-wu-kung\";\"other\"\n\"1805101\";\"Jiuwugong\";\"other\"\n\"1805101\";\"Ugun\";\"other\"\n\"1805101\";\"Wu-kung\";\"other\"\n\"1805101\";\"Wu-kung-hsien\";\"other\"\n\"1805101\";\"Wugong Zhen\";\"other\"\n\"1805101\";\"wu gong\";\"other\"\n\"1805101\";\"wu gong zhen\";\"other\"\n\"1805101\";\"武功\";\"other\"\n\"1805101\";\"武功镇\";\"other\"\n\"1805111\";\"Jiusi\";\"main\"\n\"1805111\";\"Chiu-ssu\";\"other\"\n\"1805111\";\"Jiusi Xiang\";\"other\"\n\"1805111\";\"jiu si\";\"other\"\n\"1805111\";\"jiu si xiang\";\"other\"\n\"1805111\";\"旧司\";\"other\"\n\"1805111\";\"旧司乡\";\"other\"\n\"1805132\";\"Jiulong\";\"main\"\n\"1805132\";\"Chiu-lung\";\"other\"\n\"1805132\";\"Chiu-lung-chen\";\"other\"\n\"1805132\";\"Jiulong Zhen\";\"other\"\n\"1805132\";\"Jiulongzhen\";\"other\"\n\"1805132\";\"久隆\";\"other\"\n\"1805132\";\"久隆镇\";\"other\"\n\"1805148\";\"Jiulong\";\"main\"\n\"1805148\";\"Chiu-lung\";\"other\"\n\"1805148\";\"Jiulong Zhen\";\"other\"\n\"1805148\";\"九龙\";\"other\"\n\"1805148\";\"九龙乡\";\"other\"\n\"1805164\";\"Lianzhu\";\"main\"\n\"1805164\";\"Jiulian\";\"other\"\n\"1805164\";\"Meikiang\";\"other\"\n\"1805164\";\"Mo-chiang\";\"other\"\n\"1805164\";\"Mo-chiang-hsien\";\"other\"\n\"1805164\";\"Mojiang\";\"other\"\n\"1805164\";\"Mokianghsien\";\"other\"\n\"1805164\";\"T'a-lang\";\"other\"\n\"1805164\";\"T'a-lang-t'ing\";\"other\"\n\"1805164\";\"T’a-lang\";\"other\"\n\"1805164\";\"T’a-lang-t’ing\";\"other\"\n\"1805164\";\"lian zhu\";\"other\"\n\"1805164\";\"联珠\";\"other\"\n\"1805173\";\"Jiujie\";\"main\"\n\"1805173\";\"jiu jie\";\"other\"\n\"1805173\";\"九街\";\"other\"\n\"1805179\";\"Jiujiang\";\"main\"\n\"1805179\";\"Chiu-chiang\";\"other\"\n\"1805179\";\"Chiu-chiang-hsien\";\"other\"\n\"1805179\";\"Chiu-chiang-shih\";\"other\"\n\"1805179\";\"Kiukiang\";\"other\"\n\"1805179\";\"Kiukiang-hsien\";\"other\"\n\"1805179\";\"Te-hua\";\"other\"\n\"1805184\";\"Jiuhua\";\"main\"\n\"1805184\";\"Chiu-hua-chen\";\"other\"\n\"1805184\";\"Chiu-hua-shan\";\"other\"\n\"1805184\";\"Jiuhua Zhen\";\"other\"\n\"1805184\";\"九华\";\"other\"\n\"1805184\";\"九华镇\";\"other\"\n\"1805192\";\"Jiuhe\";\"main\"\n\"1805192\";\"Chiu-ho\";\"other\"\n\"1805192\";\"Chiu-ho-hsu\";\"other\"\n\"1805192\";\"Chiu-ho-hsü\";\"other\"\n\"1805192\";\"Chiu-ho-shih\";\"other\"\n\"1805192\";\"Jiuhe Zhen\";\"other\"\n\"1805192\";\"九和\";\"other\"\n\"1805192\";\"九和镇\";\"other\"\n\"1805211\";\"Jiufang\";\"main\"\n\"1805211\";\"Chiu-fang\";\"other\"\n\"1805211\";\"Mo-chia-chiu-fang\";\"other\"\n\"1805211\";\"Wu-chia-chiu-fang\";\"other\"\n\"1805211\";\"酒房\";\"other\"\n\"1805229\";\"Jiuchenggong\";\"main\"\n\"1805229\";\"Lin-yu\";\"other\"\n\"1805229\";\"Lin-yu-hsien\";\"other\"\n\"1805229\";\"Lin-yu-hsien-ch'eng\";\"other\"\n\"1805229\";\"Lin-yu-hsien-ch’eng\";\"other\"\n\"1805229\";\"Lingyu\";\"other\"\n\"1805229\";\"Linyou\";\"other\"\n\"1805229\";\"Tangjiu Chenggong\";\"other\"\n\"1805229\";\"九成宫\";\"other\"\n\"1805229\";\"麟游\";\"other\"\n\"1805261\";\"Jitian\";\"main\"\n\"1805261\";\"Chi-t'ien\";\"other\"\n\"1805261\";\"Chi-t’ien\";\"other\"\n\"1805261\";\"Lianshan\";\"other\"\n\"1805261\";\"Lien-shan\";\"other\"\n\"1805261\";\"ji tian\";\"other\"\n\"1805261\";\"吉田\";\"other\"\n\"1805267\";\"Jishui\";\"main\"\n\"1805267\";\"Chi-shui\";\"other\"\n\"1805267\";\"Chi-shui-chi\";\"other\"\n\"1805270\";\"Jishou\";\"main\"\n\"1805270\";\"Ch'ien-ch'eng\";\"other\"\n\"1805270\";\"Chi-shou\";\"other\"\n\"1805270\";\"Chi-shou-hsien\";\"other\"\n\"1805270\";\"Ch’ien-ch’eng\";\"other\"\n\"1805270\";\"Kishow\";\"other\"\n\"1805270\";\"So-li\";\"other\"\n\"1805270\";\"ji shou shi\";\"other\"\n\"1805270\";\"吉首\";\"other\"\n\"1805270\";\"吉首市\";\"other\"\n\"1805280\";\"Jifeng\";\"main\"\n\"1805280\";\"Chi-shan\";\"other\"\n\"1805280\";\"Chi-shan-hsien\";\"other\"\n\"1805280\";\"Jishan\";\"other\"\n\"1805280\";\"Tsishanhsien\";\"other\"\n\"1805280\";\"ji feng\";\"other\"\n\"1805280\";\"稷峰\";\"other\"\n\"1805298\";\"Jinzhou\";\"main\"\n\"1805298\";\"Chin\";\"other\"\n\"1805298\";\"Chin-chou\";\"other\"\n\"1805298\";\"Chin-chou-chen\";\"other\"\n\"1805298\";\"Chin-chow\";\"other\"\n\"1805298\";\"Chin-hsien\";\"other\"\n\"1805298\";\"Czin'chzhou\";\"other\"\n\"1805298\";\"Jinxian\";\"other\"\n\"1805298\";\"Kin\";\"other\"\n\"1805298\";\"Kinchow\";\"other\"\n\"1805298\";\"Kinhsien\";\"other\"\n\"1805298\";\"Kinshu\";\"other\"\n\"1805298\";\"Kinsyu\";\"other\"\n\"1805298\";\"Tschintschou\";\"other\"\n\"1805298\";\"Цзиньчжоу\";\"other\"\n\"1805323\";\"Jinxiu\";\"main\"\n\"1805323\";\"Chin-hsiu\";\"other\"\n\"1805323\";\"Chin-hsiu-chen\";\"other\"\n\"1805323\";\"Chin-hsiu-hsiang\";\"other\"\n\"1805323\";\"Chin-hsiu-ku-chih\";\"other\"\n\"1805323\";\"Chin-hsiu-ts'un\";\"other\"\n\"1805323\";\"Chin-hsiu-ts’un\";\"other\"\n\"1805323\";\"Kinsiu\";\"other\"\n\"1805323\";\"Ta-yao-shan\";\"other\"\n\"1805323\";\"Ta-yao-shan-hsien-yao-tsu-tzu-chih-ch'u\";\"other\"\n\"1805323\";\"Ta-yao-shan-hsien-yao-tsu-tzu-chih-ch’ü\";\"other\"\n\"1805323\";\"Ta-yao-shan-yao-tsu-tzu-chih-ch'u\";\"other\"\n\"1805323\";\"Ta-yao-shan-yao-tsu-tzu-chih-ch’ü\";\"other\"\n\"1805323\";\"Ta-yao-shan-yao-tsu-tzu-chih-hsien\";\"other\"\n\"1805323\";\"jin xiu\";\"other\"\n\"1805323\";\"金秀\";\"other\"\n\"1805334\";\"Jinxiang\";\"main\"\n\"1805334\";\"Jinxiangzhen\";\"ascii\"\n\"1805334\";\"Chin-chen-wei\";\"other\"\n\"1805334\";\"Chin-chen-wei-ch'eng\";\"other\"\n\"1805334\";\"Chin-chen-wei-ch’eng\";\"other\"\n\"1805334\";\"Chin-hsiang\";\"other\"\n\"1805334\";\"Kinchenwei\";\"other\"\n\"1805334\";\"Kinsiang\";\"other\"\n\"1805334\";\"金乡\";\"other\"\n\"1805357\";\"Jintang\";\"main\"\n\"1805357\";\"Jintang Zhen\";\"other\"\n\"1805357\";\"金塘\";\"other\"\n\"1805357\";\"金塘镇\";\"other\"\n\"1805375\";\"Jinshiqiao\";\"main\"\n\"1805375\";\"Chin-shih-ch'iao\";\"other\"\n\"1805375\";\"Chin-shih-ch’iao\";\"other\"\n\"1805379\";\"Jinshi\";\"main\"\n\"1805379\";\"Chin-shih\";\"other\"\n\"1805379\";\"Ching-shih\";\"other\"\n\"1805379\";\"Ching-shih-chen\";\"other\"\n\"1805379\";\"Ching-shih-shih\";\"other\"\n\"1805379\";\"Tsingshih\";\"other\"\n\"1805379\";\"津市\";\"other\"\n\"1805380\";\"Jinshi\";\"main\"\n\"1805380\";\"Chin-shih\";\"other\"\n\"1805380\";\"Chin-shih-chen\";\"other\"\n\"1805380\";\"Hsin-ning\";\"other\"\n\"1805380\";\"Hsin-ning-hsien\";\"other\"\n\"1805380\";\"Sinning\";\"other\"\n\"1805380\";\"Sinning-hsien\";\"other\"\n\"1805380\";\"Xinning\";\"other\"\n\"1805380\";\"jin shi\";\"other\"\n\"1805380\";\"金石\";\"other\"\n\"1805389\";\"Jinshan\";\"main\"\n\"1805389\";\"Chin-shan\";\"other\"\n\"1805389\";\"Chin-shan-chen\";\"other\"\n\"1805389\";\"Jinshanzhen\";\"other\"\n\"1805389\";\"jin shan\";\"other\"\n\"1805389\";\"金山\";\"other\"\n\"1805391\";\"Jinshanwei\";\"main\"\n\"1805391\";\"Chin-shan-wei\";\"other\"\n\"1805391\";\"Chin-shan-wei-ch'eng\";\"other\"\n\"1805391\";\"Chin-shan-wei-ch’eng\";\"other\"\n\"1805391\";\"Chinshan\";\"other\"\n\"1805391\";\"Jinwei\";\"other\"\n\"1805391\";\"Kin-shan\";\"other\"\n\"1805391\";\"金山卫\";\"other\"\n\"1805394\";\"Jinshanpu\";\"main\"\n\"1805394\";\"Chin-shan-p'u\";\"other\"\n\"1805394\";\"Chin-shan-p’u\";\"other\"\n\"1805394\";\"Jinshanpu Xiang\";\"other\"\n\"1805394\";\"金山铺\";\"other\"\n\"1805394\";\"金山铺乡\";\"other\"\n\"1805399\";\"Jinshan\";\"main\"\n\"1805399\";\"Lu-feng-hsien\";\"other\"\n\"1805399\";\"Lufeng\";\"other\"\n\"1805399\";\"jin shan\";\"other\"\n\"1805399\";\"金山\";\"other\"\n\"1805408\";\"Jinsha\";\"main\"\n\"1805408\";\"Chin-sha\";\"other\"\n\"1805408\";\"Chin-sha-chen\";\"other\"\n\"1805408\";\"Czin'sha\";\"other\"\n\"1805408\";\"Jinsha Zhen\";\"other\"\n\"1805408\";\"Kinsha\";\"other\"\n\"1805408\";\"Nan-t'ung\";\"other\"\n\"1805408\";\"Nan-t'ung-hsien\";\"other\"\n\"1805408\";\"Nan-t’ung\";\"other\"\n\"1805408\";\"Nan-t’ung-hsien\";\"other\"\n\"1805408\";\"Nantong\";\"other\"\n\"1805408\";\"Tongzhou\";\"other\"\n\"1805408\";\"Tongzhou Shi\";\"other\"\n\"1805408\";\"Цзиньша\";\"other\"\n\"1805408\";\"通州\";\"other\"\n\"1805408\";\"通州市\";\"other\"\n\"1805408\";\"金沙\";\"other\"\n\"1805408\";\"金沙镇\";\"other\"\n\"1805415\";\"Jinqu\";\"main\"\n\"1805415\";\"Chin-ch'u\";\"other\"\n\"1805415\";\"Chin-ch'u-chen\";\"other\"\n\"1805415\";\"Chin-ch’ü\";\"other\"\n\"1805415\";\"Chin-ch’ü-chen\";\"other\"\n\"1805415\";\"Jinqu Zhen\";\"other\"\n\"1805415\";\"金渠\";\"other\"\n\"1805415\";\"金渠镇\";\"other\"\n\"1805433\";\"Jinping\";\"main\"\n\"1805433\";\"Ching-tung\";\"other\"\n\"1805433\";\"Ching-tung-hsien\";\"other\"\n\"1805433\";\"Jingdong\";\"other\"\n\"1805433\";\"Kingtung-hsien\";\"other\"\n\"1805433\";\"Kingtungsin\";\"other\"\n\"1805433\";\"Kingtungting\";\"other\"\n\"1805433\";\"jin ping\";\"other\"\n\"1805433\";\"锦屏\";\"other\"\n\"1805434\";\"Jinping\";\"main\"\n\"1805434\";\"Ch'iu-pei\";\"other\"\n\"1805434\";\"Ch'iu-pei-hsien\";\"other\"\n\"1805434\";\"Ch’iu-pei\";\"other\"\n\"1805434\";\"Ch’iu-pei-hsien\";\"other\"\n\"1805434\";\"Kiupehhsien\";\"other\"\n\"1805434\";\"Qiubei\";\"other\"\n\"1805434\";\"jin ping\";\"other\"\n\"1805434\";\"锦屏\";\"other\"\n\"1805435\";\"Jinhe\";\"main\"\n\"1805435\";\"Chin-ho\";\"other\"\n\"1805435\";\"Chin-p'ing\";\"other\"\n\"1805435\";\"Chin-p'ing-hsien\";\"other\"\n\"1805435\";\"Chin-p’ing\";\"other\"\n\"1805435\";\"Chin-p’ing-hsien\";\"other\"\n\"1805435\";\"Chin-sha\";\"other\"\n\"1805435\";\"Ho-chin\";\"other\"\n\"1805435\";\"Jinping\";\"other\"\n\"1805435\";\"Wang-pu-chieh\";\"other\"\n\"1805435\";\"Wang-pu-t'ien\";\"other\"\n\"1805435\";\"Wang-pu-t’ien\";\"other\"\n\"1805435\";\"Wangpatien\";\"other\"\n\"1805435\";\"Wangpotien\";\"other\"\n\"1805435\";\"jin he\";\"other\"\n\"1805435\";\"金河\";\"other\"\n\"1805482\";\"Jinjing\";\"main\"\n\"1805482\";\"Chin-ching\";\"other\"\n\"1805482\";\"Kintsing\";\"other\"\n\"1805501\";\"Jinjiang\";\"main\"\n\"1805501\";\"An-jen\";\"other\"\n\"1805501\";\"Anjenhsien\";\"other\"\n\"1805501\";\"Chin-chiang\";\"other\"\n\"1805501\";\"Chin-chiang-chen\";\"other\"\n\"1805501\";\"Jinjiang Zhen\";\"other\"\n\"1805501\";\"Yu-chiang\";\"other\"\n\"1805501\";\"Yu-chiang-hsien\";\"other\"\n\"1805501\";\"Yu-chiang-hsien-ch'eng\";\"other\"\n\"1805501\";\"Yukiang\";\"other\"\n\"1805501\";\"Yü-chiang\";\"other\"\n\"1805501\";\"Yü-chiang-hsien\";\"other\"\n\"1805501\";\"Yü-chiang-hsien-ch’eng\";\"other\"\n\"1805501\";\"锦江\";\"other\"\n\"1805501\";\"锦江镇\";\"other\"\n\"1805505\";\"Jinjiang\";\"main\"\n\"1805505\";\"Ch'eng-mai New City\";\"other\"\n\"1805505\";\"Ch'eng-mai-hsien\";\"other\"\n\"1805505\";\"Chengmai\";\"other\"\n\"1805505\";\"Chin-chiang\";\"other\"\n\"1805505\";\"Chin-chiang-chen\";\"other\"\n\"1805505\";\"Chin-chiang-shih\";\"other\"\n\"1805505\";\"Ching-mae\";\"other\"\n\"1805505\";\"Chinkiang\";\"other\"\n\"1805505\";\"Ch’eng-mai New City\";\"other\"\n\"1805505\";\"Ch’eng-mai-hsien\";\"other\"\n\"1805505\";\"Fa Hi\";\"other\"\n\"1805505\";\"Kimkang\";\"other\"\n\"1805505\";\"Teng-mai-hsien\";\"other\"\n\"1805505\";\"Tsingmai\";\"other\"\n\"1805505\";\"Tsingmai-hsien\";\"other\"\n\"1805507\";\"Jinjiahe\";\"main\"\n\"1805507\";\"Chin-chia-ho\";\"other\"\n\"1805507\";\"Jinjiahe Zhen\";\"other\"\n\"1805507\";\"金家河\";\"other\"\n\"1805507\";\"金家河镇\";\"other\"\n\"1805515\";\"Jinji\";\"main\"\n\"1805515\";\"Chin-chi\";\"other\"\n\"1805515\";\"Chin-chi-hsu\";\"other\"\n\"1805515\";\"Chin-chi-hsü\";\"other\"\n\"1805518\";\"Jining\";\"main\"\n\"1805518\";\"Chi-ning\";\"other\"\n\"1805518\";\"Chi-ning-hsien\";\"other\"\n\"1805518\";\"Chi-ning-shih\";\"other\"\n\"1805518\";\"Czinin\";\"other\"\n\"1805518\";\"Tsi-ning-hsien\";\"other\"\n\"1805518\";\"Tsining\";\"other\"\n\"1805518\";\"ji ning shi\";\"other\"\n\"1805518\";\"Цзинин\";\"other\"\n\"1805518\";\"济宁市\";\"other\"\n\"1805528\";\"Jinhua\";\"main\"\n\"1805528\";\"Chin-hua\";\"other\"\n\"1805528\";\"Chin-hua-hsien\";\"other\"\n\"1805528\";\"Chin-hua-hsien-ch'eng\";\"other\"\n\"1805528\";\"Chin-hua-hsien-ch’eng\";\"other\"\n\"1805528\";\"Chin-hua-shih\";\"other\"\n\"1805528\";\"Czin'khua\";\"other\"\n\"1805528\";\"Kinhwa\";\"other\"\n\"1805528\";\"Kinhwa-hsien\";\"other\"\n\"1805528\";\"Kinhwafu\";\"other\"\n\"1805528\";\"Цзиньхуа\";\"other\"\n\"1805531\";\"Jinhe\";\"main\"\n\"1805531\";\"Chin-ho\";\"other\"\n\"1805531\";\"Chin-ho-chen\";\"other\"\n\"1805531\";\"Ma-yang\";\"other\"\n\"1805531\";\"Ma-yang-hsien\";\"other\"\n\"1805540\";\"Jingzhou\";\"main\"\n\"1805540\";\"Chiang-ling\";\"other\"\n\"1805540\";\"Chiang-ling-hsien\";\"other\"\n\"1805540\";\"Ching-chou\";\"other\"\n\"1805540\";\"Chingchou-fu\";\"other\"\n\"1805540\";\"Czinchzhou\";\"other\"\n\"1805540\";\"Jiangling\";\"other\"\n\"1805540\";\"Kiangling\";\"other\"\n\"1805540\";\"Kiangling-hsien\";\"other\"\n\"1805540\";\"Kingchow\";\"other\"\n\"1805540\";\"Kingchowfu\";\"other\"\n\"1805540\";\"Kingling\";\"other\"\n\"1805540\";\"jing zhou\";\"other\"\n\"1805540\";\"jing zhou shi\";\"other\"\n\"1805540\";\"Цзинчжоу\";\"other\"\n\"1805540\";\"荆州市\";\"other\"\n\"1805540\";\"荊州\";\"other\"\n\"1805542\";\"Jingzhou\";\"main\"\n\"1805542\";\"Jingzhou Zhen\";\"other\"\n\"1805542\";\"qing zhou\";\"other\"\n\"1805542\";\"汫洲\";\"other\"\n\"1805553\";\"Jingyao\";\"main\"\n\"1805553\";\"Ching-yao\";\"other\"\n\"1805553\";\"Ching-yao-chen\";\"other\"\n\"1805553\";\"Jingyao Zhen\";\"other\"\n\"1805553\";\"jing yao\";\"other\"\n\"1805553\";\"荆姚\";\"other\"\n\"1805558\";\"Jingyang\";\"main\"\n\"1805558\";\"Ching-te\";\"other\"\n\"1805558\";\"Ching-te-hsien\";\"other\"\n\"1805558\";\"Jingde\";\"other\"\n\"1805558\";\"Tsingteh\";\"other\"\n\"1805558\";\"Tsingtehhsien\";\"other\"\n\"1805558\";\"jing yang\";\"other\"\n\"1805558\";\"旌阳\";\"other\"\n\"1805560\";\"Yancheng\";\"main\"\n\"1805560\";\"Ching-yen\";\"other\"\n\"1805560\";\"Ching-yen-hsien\";\"other\"\n\"1805560\";\"Jingyan\";\"other\"\n\"1805560\";\"Tsingyuan\";\"other\"\n\"1805560\";\"Tsingyuan-hsien\";\"other\"\n\"1805560\";\"Tsingyüan\";\"other\"\n\"1805560\";\"Tsingyüan-hsien\";\"other\"\n\"1805560\";\"yan cheng\";\"other\"\n\"1805560\";\"研城\";\"other\"\n\"1805563\";\"Tianchang\";\"main\"\n\"1805563\";\"Ching-ching\";\"other\"\n\"1805563\";\"Ching-hsing\";\"other\"\n\"1805563\";\"Ching-hsing-hsien\";\"other\"\n\"1805563\";\"Ching-nan\";\"other\"\n\"1805563\";\"Chiu-ching-hsing\";\"other\"\n\"1805563\";\"Jingnan\";\"other\"\n\"1805563\";\"Jingxing\";\"other\"\n\"1805563\";\"Jiujingxing\";\"other\"\n\"1805563\";\"Tianchang Zhen\";\"other\"\n\"1805563\";\"Tsingsinghsien\";\"other\"\n\"1805565\";\"Xiluodu\";\"main\"\n\"1805565\";\"Ching-kuei\";\"other\"\n\"1805565\";\"Ching-ti\";\"other\"\n\"1805565\";\"Ching-ti-pa\";\"other\"\n\"1805565\";\"Jingxin\";\"other\"\n\"1805565\";\"Kingti\";\"other\"\n\"1805565\";\"Tsingti\";\"other\"\n\"1805565\";\"Tsingtipa\";\"other\"\n\"1805565\";\"Yongshan\";\"other\"\n\"1805565\";\"Yung-shan\";\"other\"\n\"1805565\";\"xi luo du\";\"other\"\n\"1805565\";\"溪落渡\";\"other\"\n\"1805568\";\"Jingchuan\";\"main\"\n\"1805568\";\"Ching\";\"other\"\n\"1805568\";\"Ching-hsien\";\"other\"\n\"1805568\";\"Jingxian\";\"other\"\n\"1805568\";\"Kinghsien\";\"other\"\n\"1805568\";\"jing chuan\";\"other\"\n\"1805568\";\"泾川\";\"other\"\n\"1805572\";\"Jingxi\";\"main\"\n\"1805572\";\"Ching-hsi\";\"other\"\n\"1805572\";\"Jingxi Jiedao\";\"other\"\n\"1805572\";\"荆西\";\"other\"\n\"1805572\";\"荆西街道\";\"other\"\n\"1805583\";\"Jingtou\";\"main\"\n\"1805583\";\"Jingtou Zhen\";\"other\"\n\"1805583\";\"jing tou\";\"other\"\n\"1805583\";\"迳头\";\"other\"\n\"1805599\";\"Jingping\";\"main\"\n\"1805599\";\"Ching-p'ing\";\"other\"\n\"1805599\";\"Ching-p'ing-chen\";\"other\"\n\"1805599\";\"Ching-p’ing\";\"other\"\n\"1805599\";\"Ching-p’ing-chen\";\"other\"\n\"1805599\";\"Jingping Zhen\";\"other\"\n\"1805599\";\"Pinglu Qu\";\"other\"\n\"1805599\";\"Tsingpingchen\";\"other\"\n\"1805599\";\"Tszin'pin\";\"other\"\n\"1805599\";\"Tszin’pin\";\"other\"\n\"1805599\";\"井坪\";\"other\"\n\"1805599\";\"井坪镇\";\"other\"\n\"1805606\";\"Jingning Chengguanzhen\";\"main\"\n\"1805606\";\"Ching-ning\";\"other\"\n\"1805606\";\"Ching-ning-hsien\";\"other\"\n\"1805606\";\"Jingning\";\"other\"\n\"1805606\";\"Tszinnin\";\"other\"\n\"1805606\";\"静宁\";\"other\"\n\"1805606\";\"静宁城关镇\";\"other\"\n\"1805611\";\"Jingmen\";\"main\"\n\"1805611\";\"Ching-men\";\"other\"\n\"1805611\";\"Ching-men-hsien\";\"other\"\n\"1805611\";\"Czinmehn'\";\"other\"\n\"1805611\";\"King monn\";\"other\"\n\"1805611\";\"King mönn\";\"other\"\n\"1805611\";\"King-men-chow\";\"other\"\n\"1805611\";\"Kingmen\";\"other\"\n\"1805611\";\"Kingmen-hsien\";\"other\"\n\"1805611\";\"jing men shi\";\"other\"\n\"1805611\";\"Цзинмэнь\";\"other\"\n\"1805611\";\"جىڭمېن شەھىرى\";\"other\"\n\"1805611\";\"荆门市\";\"other\"\n\"1805614\";\"Jinglou\";\"main\"\n\"1805614\";\"Jinglou Zhen\";\"other\"\n\"1805614\";\"经楼\";\"other\"\n\"1805614\";\"经楼镇\";\"other\"\n\"1805618\";\"Jingling\";\"main\"\n\"1805618\";\"T'ien-men\";\"other\"\n\"1805618\";\"T'ien-men-hsien\";\"other\"\n\"1805618\";\"Tianmen\";\"other\"\n\"1805618\";\"T’ien-men\";\"other\"\n\"1805618\";\"T’ien-men-hsien\";\"other\"\n\"1805619\";\"Jingling\";\"main\"\n\"1805619\";\"Jingling Zhen\";\"other\"\n\"1805619\";\"jing ling\";\"other\"\n\"1805619\";\"镜岭\";\"other\"\n\"1805619\";\"镜岭镇\";\"other\"\n\"1805622\";\"Echeng\";\"main\"\n\"1805622\";\"Ching-le\";\"other\"\n\"1805622\";\"Ching-lo\";\"other\"\n\"1805622\";\"Ching-lo-hsien\";\"other\"\n\"1805622\";\"Dzinle\";\"other\"\n\"1805622\";\"Jingle\";\"other\"\n\"1805622\";\"Tsinglo\";\"other\"\n\"1805622\";\"Tsinglohsien\";\"other\"\n\"1805622\";\"e cheng\";\"other\"\n\"1805622\";\"鹅城\";\"other\"\n\"1805639\";\"Jingcheng\";\"main\"\n\"1805639\";\"Ching-ch'eng-chen\";\"other\"\n\"1805639\";\"Ching-chiang\";\"other\"\n\"1805639\";\"Ching-chiang-hsien\";\"other\"\n\"1805639\";\"Ching-ch’eng-chen\";\"other\"\n\"1805639\";\"Jingcheng Zhen\";\"other\"\n\"1805639\";\"Jingjiang\";\"other\"\n\"1805639\";\"Jingjiang Shi\";\"other\"\n\"1805639\";\"靖城\";\"other\"\n\"1805639\";\"靖城镇\";\"other\"\n\"1805639\";\"靖江\";\"other\"\n\"1805639\";\"靖江市\";\"other\"\n\"1805658\";\"Jinghai\";\"main\"\n\"1805658\";\"Ching-hai\";\"other\"\n\"1805658\";\"Tsinghai\";\"other\"\n\"1805658\";\"jing hai\";\"other\"\n\"1805658\";\"靖海\";\"other\"\n\"1805671\";\"Jinggan\";\"main\"\n\"1805671\";\"Ching-yang\";\"other\"\n\"1805671\";\"Ching-yang-hsien\";\"other\"\n\"1805671\";\"Ching-yang-hsien-ch'eng\";\"other\"\n\"1805671\";\"Ching-yang-hsien-ch’eng\";\"other\"\n\"1805671\";\"Jinggan Zhen\";\"other\"\n\"1805671\";\"Jingyang\";\"other\"\n\"1805671\";\"Kingyang\";\"other\"\n\"1805671\";\"Tszin'yan\";\"other\"\n\"1805671\";\"Tszin’yan\";\"other\"\n\"1805671\";\"jing gan\";\"other\"\n\"1805671\";\"jing gan zhen\";\"other\"\n\"1805671\";\"jing yang\";\"other\"\n\"1805671\";\"泾干\";\"other\"\n\"1805671\";\"泾干镇\";\"other\"\n\"1805671\";\"泾阳\";\"other\"\n\"1805680\";\"Jingdezhen\";\"main\"\n\"1805680\";\"Ching-te-chen\";\"other\"\n\"1805680\";\"Ching-te-chen-shih\";\"other\"\n\"1805680\";\"Czindehchzhehn'\";\"other\"\n\"1805680\";\"Fou-liang\";\"other\"\n\"1805680\";\"Fou-liang-hsien\";\"other\"\n\"1805680\";\"Fowliang\";\"other\"\n\"1805680\";\"Fowliang-hsien\";\"other\"\n\"1805680\";\"Kingtechen\";\"other\"\n\"1805680\";\"Kingteh\";\"other\"\n\"1805680\";\"Kingtehchen\";\"other\"\n\"1805680\";\"Kingtehchin\";\"other\"\n\"1805680\";\"jing de zhen\";\"other\"\n\"1805680\";\"jing de zhen shi\";\"other\"\n\"1805680\";\"Цзиндэчжэнь\";\"other\"\n\"1805680\";\"景徳鎮\";\"other\"\n\"1805680\";\"景德镇市\";\"other\"\n\"1805704\";\"Jing’an\";\"main\"\n\"1805704\";\"Jing'an\";\"ascii\"\n\"1805704\";\"Ching-an\";\"other\"\n\"1805704\";\"Doumen\";\"other\"\n\"1805704\";\"Tou-men\";\"other\"\n\"1805704\";\"Tou-men-hsu\";\"other\"\n\"1805704\";\"Tou-men-hsü\";\"other\"\n\"1805704\";\"Tou-men-t'u-ch'eng\";\"other\"\n\"1805704\";\"Tou-men-t’u-ch’eng\";\"other\"\n\"1805704\";\"Towmoon\";\"other\"\n\"1805704\";\"jing an\";\"other\"\n\"1805704\";\"井岸\";\"other\"\n\"1805709\";\"Jin’e\";\"main\"\n\"1805709\";\"Jin'e\";\"ascii\"\n\"1805709\";\"Longchang\";\"other\"\n\"1805709\";\"Lung-ch'ang\";\"other\"\n\"1805709\";\"Lung-ch'ang-hsien\";\"other\"\n\"1805709\";\"Lung-ch’ang\";\"other\"\n\"1805709\";\"Lung-ch’ang-hsien\";\"other\"\n\"1805709\";\"jin e\";\"other\"\n\"1805709\";\"金鹅\";\"other\"\n\"1805711\";\"Jindui\";\"main\"\n\"1805711\";\"Chin-tui-ch'eng\";\"other\"\n\"1805711\";\"Chin-tui-ch’eng\";\"other\"\n\"1805711\";\"Jindui Zhen\";\"other\"\n\"1805711\";\"Jinduicheng\";\"other\"\n\"1805711\";\"jin dui\";\"other\"\n\"1805711\";\"金堆\";\"other\"\n\"1805727\";\"Jincun\";\"main\"\n\"1805727\";\"jin cun\";\"other\"\n\"1805727\";\"靳村\";\"other\"\n\"1805733\";\"Jinchang\";\"main\"\n\"1805733\";\"Baijiazui\";\"other\"\n\"1805733\";\"Czin'chan\";\"other\"\n\"1805733\";\"Jinchuan\";\"other\"\n\"1805733\";\"Jinchuanzhen\";\"other\"\n\"1805733\";\"Pai-chia-tsui\";\"other\"\n\"1805733\";\"Цзиньчан\";\"other\"\n\"1805734\";\"Jinchuan\";\"main\"\n\"1805734\";\"Chin-ch'uan\";\"other\"\n\"1805734\";\"Chin-ch’uan\";\"other\"\n\"1805734\";\"Ching-hua\";\"other\"\n\"1805734\";\"Ching-hua-hsien\";\"other\"\n\"1805734\";\"Quqen\";\"other\"\n\"1805734\";\"Quqên\";\"other\"\n\"1805734\";\"Sui-ching\";\"other\"\n\"1805734\";\"Sui-ching-t'un\";\"other\"\n\"1805734\";\"Sui-ching-t’un\";\"other\"\n\"1805734\";\"Suytszin\";\"other\"\n\"1805734\";\"Ta-chin\";\"other\"\n\"1805734\";\"Ta-chin-hsien\";\"other\"\n\"1805734\";\"Tszinkhua\";\"other\"\n\"1805734\";\"jin chuan\";\"other\"\n\"1805734\";\"金川\";\"other\"\n\"1805741\";\"Jincheng\";\"main\"\n\"1805741\";\"Chin-ch'eng\";\"other\"\n\"1805741\";\"Chin-ch'eng-hsien\";\"other\"\n\"1805741\";\"Chin-ch’eng\";\"other\"\n\"1805741\";\"Chin-ch’eng-hsien\";\"other\"\n\"1805741\";\"Tse-chou\";\"other\"\n\"1805741\";\"Tseh-chow-fu\";\"other\"\n\"1805741\";\"Tsehchow\";\"other\"\n\"1805741\";\"Tsincheng\";\"other\"\n\"1805741\";\"Tsinchenghsien\";\"other\"\n\"1805743\";\"Jincheng\";\"main\"\n\"1805743\";\"Hsi-ch'ung\";\"other\"\n\"1805743\";\"Hsi-ch'ung-hsien\";\"other\"\n\"1805743\";\"Hsi-ch’ung\";\"other\"\n\"1805743\";\"Hsi-ch’ung-hsien\";\"other\"\n\"1805743\";\"Sichun\";\"other\"\n\"1805743\";\"Sichung\";\"other\"\n\"1805743\";\"Sichunghsien\";\"other\"\n\"1805743\";\"Xichong\";\"other\"\n\"1805743\";\"jin cheng\";\"other\"\n\"1805743\";\"晋城\";\"other\"\n\"1805744\";\"Jincheng\";\"main\"\n\"1805744\";\"Lei-po\";\"other\"\n\"1805744\";\"Lei-po-hsien\";\"other\"\n\"1805744\";\"Leibo\";\"other\"\n\"1805744\";\"Leipoting\";\"other\"\n\"1805744\";\"jin cheng\";\"other\"\n\"1805744\";\"锦城\";\"other\"\n\"1805745\";\"Jincheng\";\"main\"\n\"1805745\";\"Wu-ting\";\"other\"\n\"1805745\";\"Wu-ting-hsien\";\"other\"\n\"1805745\";\"Wuding\";\"other\"\n\"1805745\";\"Wutingchow\";\"other\"\n\"1805745\";\"jin cheng\";\"other\"\n\"1805745\";\"近城\";\"other\"\n\"1805746\";\"Jincheng\";\"main\"\n\"1805746\";\"Chin-ch'eng\";\"other\"\n\"1805746\";\"Chin-ch’eng\";\"other\"\n\"1805746\";\"Chin-ning\";\"other\"\n\"1805746\";\"Jincheng Zhen\";\"other\"\n\"1805746\";\"jin cheng\";\"other\"\n\"1805746\";\"jin cheng zhen\";\"other\"\n\"1805746\";\"晋城\";\"other\"\n\"1805746\";\"晋城镇\";\"other\"\n\"1805749\";\"Jinbi\";\"main\"\n\"1805749\";\"Chin-pi\";\"other\"\n\"1805749\";\"Chin-pi-chen\";\"other\"\n\"1805749\";\"Chin-pi-chieh\";\"other\"\n\"1805749\";\"Ta-yao\";\"other\"\n\"1805749\";\"Ta-yao-hsien\";\"other\"\n\"1805749\";\"jin bi\";\"other\"\n\"1805749\";\"金碧\";\"other\"\n\"1805753\";\"Jinan\";\"main\"\n\"1805753\";\"Chi-nan\";\"other\"\n\"1805753\";\"Chi-nan-shih\";\"other\"\n\"1805753\";\"Czinan'\";\"other\"\n\"1805753\";\"Dzinanas\";\"other\"\n\"1805753\";\"Jinan Shi\";\"other\"\n\"1805753\";\"Li-ch'eng\";\"other\"\n\"1805753\";\"Li-ch’eng\";\"other\"\n\"1805753\";\"Te Nam\";\"other\"\n\"1805753\";\"Tsi-nan-fu\";\"other\"\n\"1805753\";\"Tsinah\";\"other\"\n\"1805753\";\"Tsinan\";\"other\"\n\"1805753\";\"Tể Nam\";\"other\"\n\"1805753\";\"ji nan\";\"other\"\n\"1805753\";\"ji nan shi\";\"other\"\n\"1805753\";\"jinan\";\"other\"\n\"1805753\";\"Цзинань\";\"other\"\n\"1805753\";\"جىنەن شەھىرى\";\"other\"\n\"1805753\";\"济南\";\"other\"\n\"1805753\";\"济南市\";\"other\"\n\"1805753\";\"済南\";\"other\"\n\"1805753\";\"지난\";\"other\"\n\"1805754\";\"Jin’an\";\"main\"\n\"1805754\";\"Jin'an\";\"ascii\"\n\"1805754\";\"Songpan\";\"other\"\n\"1805754\";\"Sung-p'an\";\"other\"\n\"1805754\";\"Sung-p'an-hsien\";\"other\"\n\"1805754\";\"Sung-p’an\";\"other\"\n\"1805754\";\"Sung-p’an-hsien\";\"other\"\n\"1805754\";\"Sungqu\";\"other\"\n\"1805754\";\"jin an\";\"other\"\n\"1805754\";\"进安\";\"other\"\n\"1805757\";\"Jimo\";\"main\"\n\"1805757\";\"Chi-mo\";\"other\"\n\"1805757\";\"Chi-mo-hsien\";\"other\"\n\"1805757\";\"Tsimo\";\"other\"\n\"1805757\";\"Tsimohsien\";\"other\"\n\"1805757\";\"ji mo shi\";\"other\"\n\"1805757\";\"即墨市\";\"other\"\n\"1805773\";\"Jilong\";\"main\"\n\"1805773\";\"Chi-lung\";\"other\"\n\"1805773\";\"Chi-lung-hsu\";\"other\"\n\"1805773\";\"Chi-lung-hsü\";\"other\"\n\"1805773\";\"ji long\";\"other\"\n\"1805773\";\"吉隆\";\"other\"\n\"1805790\";\"Jijiazhuang\";\"main\"\n\"1805790\";\"Chi-chia-chuang\";\"other\"\n\"1805790\";\"Jijiazhuang Xiang\";\"other\"\n\"1805790\";\"吉家庄\";\"other\"\n\"1805790\";\"吉家庄乡\";\"other\"\n\"1805798\";\"Jiangjin\";\"main\"\n\"1805798\";\"Chiang-chin\";\"other\"\n\"1805798\";\"Chiang-ching\";\"other\"\n\"1805798\";\"Chiang-ching-ch'eng\";\"other\"\n\"1805798\";\"Chiang-ching-ch’eng\";\"other\"\n\"1805798\";\"Chiang-ching-hsien\";\"other\"\n\"1805798\";\"Jijiang\";\"other\"\n\"1805798\";\"Kiangtsin\";\"other\"\n\"1805798\";\"Kiangtsing-hsien\";\"other\"\n\"1805833\";\"Jiexiu\";\"main\"\n\"1805833\";\"Chieh-hsien\";\"other\"\n\"1805833\";\"Chieh-hsiu\";\"other\"\n\"1805833\";\"Chieh-hsiu-hsien\";\"other\"\n\"1805833\";\"Kiehsiu\";\"other\"\n\"1805833\";\"Kiehsuihsien\";\"other\"\n\"1805835\";\"Jietou\";\"main\"\n\"1805835\";\"Chiatou\";\"other\"\n\"1805835\";\"Chieh-t'ou\";\"other\"\n\"1805835\";\"Chieh-t'ou-chen\";\"other\"\n\"1805835\";\"Chieh-t’ou\";\"other\"\n\"1805835\";\"Chieh-t’ou-chen\";\"other\"\n\"1805835\";\"Jietou Zhen\";\"other\"\n\"1805835\";\"街头\";\"other\"\n\"1805835\";\"街头镇\";\"other\"\n\"1805837\";\"Jieting\";\"main\"\n\"1805837\";\"Jieting Zhen\";\"other\"\n\"1805837\";\"jie ting zhen\";\"other\"\n\"1805837\";\"街亭\";\"other\"\n\"1805837\";\"街亭镇\";\"other\"\n\"1805844\";\"Jieshou\";\"main\"\n\"1805844\";\"Chieh-shou\";\"other\"\n\"1805844\";\"Chieh-shou-chen\";\"other\"\n\"1805844\";\"Chieh-shou-chi\";\"other\"\n\"1805844\";\"Chieh-shou-shih\";\"other\"\n\"1805844\";\"Chiehshow\";\"other\"\n\"1805844\";\"Shou-t'ai\";\"other\"\n\"1805844\";\"jie shou\";\"other\"\n\"1805844\";\"jie shou shi\";\"other\"\n\"1805844\";\"界首\";\"other\"\n\"1805844\";\"界首市\";\"other\"\n\"1805857\";\"Jieshi\";\"main\"\n\"1805857\";\"Chieh-shih\";\"other\"\n\"1805857\";\"Chieh-shih-ch'eng\";\"other\"\n\"1805857\";\"Chieh-shih-ch’eng\";\"other\"\n\"1805857\";\"Jieshi Zhen\";\"other\"\n\"1805857\";\"Kitchioh\";\"other\"\n\"1805857\";\"碣石\";\"other\"\n\"1805860\";\"Jiesheng\";\"main\"\n\"1805860\";\"Chiapcheng\";\"other\"\n\"1805860\";\"Chieh-sheng\";\"other\"\n\"1805860\";\"Chieh-sheng-so-ch'eng\";\"other\"\n\"1805860\";\"Chieh-sheng-so-ch'eng-ko\";\"other\"\n\"1805860\";\"Chieh-sheng-so-ch’eng\";\"other\"\n\"1805860\";\"Chieh-sheng-so-ch’eng-ko\";\"other\"\n\"1805860\";\"Jiesheng Zhen\";\"other\"\n\"1805860\";\"Siacheng\";\"other\"\n\"1805860\";\"jie sheng\";\"other\"\n\"1805860\";\"捷胜\";\"other\"\n\"1805879\";\"Xinmen\";\"main\"\n\"1805879\";\"Chieh-k'ou\";\"other\"\n\"1805879\";\"Chieh-k’ou\";\"other\"\n\"1805879\";\"Chiehkouchen\";\"other\"\n\"1805879\";\"Jiekou\";\"other\"\n\"1805879\";\"Jiekou Zhen\";\"other\"\n\"1805879\";\"Kaikow\";\"other\"\n\"1805879\";\"Kaikowchen\";\"other\"\n\"1805879\";\"jie kou\";\"other\"\n\"1805879\";\"jie kou zhen\";\"other\"\n\"1805879\";\"xin men\";\"other\"\n\"1805879\";\"新门\";\"other\"\n\"1805879\";\"街口\";\"other\"\n\"1805879\";\"街口镇\";\"other\"\n\"1805880\";\"Jiekou\";\"main\"\n\"1805880\";\"Ch'ung-fa\";\"other\"\n\"1805880\";\"Chieh-k'ou\";\"other\"\n\"1805880\";\"Chieh-k'ou-chen\";\"other\"\n\"1805880\";\"Chieh-k’ou\";\"other\"\n\"1805880\";\"Chieh-k’ou-chen\";\"other\"\n\"1805880\";\"Ch’ung-fa\";\"other\"\n\"1805880\";\"Conghua\";\"other\"\n\"1805880\";\"Ts'ung-hua\";\"other\"\n\"1805880\";\"Ts'ung-hua-hsien\";\"other\"\n\"1805880\";\"Tsung-fa-hsien\";\"other\"\n\"1805880\";\"Tsungfa\";\"other\"\n\"1805880\";\"Ts’ung-hua\";\"other\"\n\"1805880\";\"Ts’ung-hua-hsien\";\"other\"\n\"1805880\";\"cong hua\";\"other\"\n\"1805880\";\"jie kou\";\"other\"\n\"1805880\";\"从化\";\"other\"\n\"1805880\";\"街口\";\"other\"\n\"1805884\";\"Jiehu\";\"main\"\n\"1805884\";\"Chieh-hu\";\"other\"\n\"1805884\";\"Chieh-hu-chi\";\"other\"\n\"1805884\";\"I-nan\";\"other\"\n\"1805884\";\"Yinan\";\"other\"\n\"1805892\";\"Jieguanting\";\"main\"\n\"1805892\";\"Chieh-kuan-t'ing\";\"other\"\n\"1805892\";\"Chieh-kuan-t’ing\";\"other\"\n\"1805892\";\"Jieguanting Zhen\";\"other\"\n\"1805892\";\"Tszeguan'tin\";\"other\"\n\"1805892\";\"Tszeguan’tin\";\"other\"\n\"1805892\";\"接官亭\";\"other\"\n\"1805892\";\"接官亭镇\";\"other\"\n\"1805912\";\"Xinji\";\"main\"\n\"1805912\";\"Jicun\";\"other\"\n\"1805912\";\"新济\";\"other\"\n\"1805912\";\"济村\";\"other\"\n\"1805926\";\"Jibu\";\"main\"\n\"1805926\";\"Jibu Zhen\";\"other\"\n\"1805926\";\"吉埠\";\"other\"\n\"1805926\";\"吉埠镇\";\"other\"\n\"1805935\";\"Jiazi\";\"main\"\n\"1805935\";\"Chia-tzu\";\"other\"\n\"1805935\";\"Jiazi Zhen\";\"other\"\n\"1805935\";\"Kapchi\";\"other\"\n\"1805935\";\"Kapohi\";\"other\"\n\"1805935\";\"甲子\";\"other\"\n\"1805937\";\"Jiazhuang\";\"main\"\n\"1805937\";\"Chia-chuang\";\"other\"\n\"1805937\";\"Jiazhuang Xiang\";\"other\"\n\"1805937\";\"贾庄\";\"other\"\n\"1805937\";\"贾庄乡\";\"other\"\n\"1805953\";\"Jiaxing\";\"main\"\n\"1805953\";\"Chia-hsing\";\"other\"\n\"1805953\";\"Chia-hsing-hsien\";\"other\"\n\"1805953\";\"Chia-hsing-hsien-ch'eng\";\"other\"\n\"1805953\";\"Chia-hsing-hsien-ch’eng\";\"other\"\n\"1805953\";\"Chiahsing-Fu\";\"other\"\n\"1805953\";\"Czjasin\";\"other\"\n\"1805953\";\"Ka-shing-fu\";\"other\"\n\"1805953\";\"Kashing\";\"other\"\n\"1805953\";\"Kashing-hsien\";\"other\"\n\"1805953\";\"jia xing\";\"other\"\n\"1805953\";\"jia xing shi\";\"other\"\n\"1805953\";\"Цзясин\";\"other\"\n\"1805953\";\"جياشىڭ شەھىرى\";\"other\"\n\"1805953\";\"嘉興\";\"other\"\n\"1805953\";\"嘉興市\";\"other\"\n\"1805978\";\"Jiaqu\";\"main\"\n\"1805978\";\"Chia-ch'u\";\"other\"\n\"1805978\";\"Chia-ch'u-chen\";\"other\"\n\"1805978\";\"Chia-ch’ü\";\"other\"\n\"1805978\";\"Chia-ch’ü-chen\";\"other\"\n\"1805978\";\"jia qu\";\"other\"\n\"1805978\";\"贾曲\";\"other\"\n\"1805987\";\"Jiaozuo\";\"main\"\n\"1805987\";\"Chiao-tso\";\"other\"\n\"1805987\";\"Chiao-tso-chen\";\"other\"\n\"1805987\";\"Chiao-tso-kung-k'uang-ch'u\";\"other\"\n\"1805987\";\"Chiao-tso-kung-k’uang-ch’ü\";\"other\"\n\"1805987\";\"Chiao-tso-shih\";\"other\"\n\"1805987\";\"Tsiaotso\";\"other\"\n\"1805987\";\"Tszyaotszochzhen\";\"other\"\n\"1805988\";\"Jiaoziya\";\"main\"\n\"1805988\";\"Chiao-tzu-wu\";\"other\"\n\"1805988\";\"Chiao-tzu-ya\";\"other\"\n\"1805988\";\"Jiaoziya Zhen\";\"other\"\n\"1805988\";\"jiao zi wu zhen\";\"other\"\n\"1805988\";\"教字垭\";\"other\"\n\"1805988\";\"教字垭镇\";\"other\"\n\"1806001\";\"Jiaoxie\";\"main\"\n\"1806001\";\"Chiao-hsieh\";\"other\"\n\"1806001\";\"Chiao-hsieh-chen\";\"other\"\n\"1806001\";\"Jiaoxie Zhen\";\"other\"\n\"1806001\";\"jiao xie\";\"other\"\n\"1806001\";\"交斜\";\"other\"\n\"1806014\";\"Liuheng\";\"main\"\n\"1806014\";\"Chiao-t'ou\";\"other\"\n\"1806014\";\"Chiao-t’ou\";\"other\"\n\"1806014\";\"Jiaotou\";\"other\"\n\"1806014\";\"Jiaotouzhen\";\"other\"\n\"1806014\";\"Liuheng Zhen\";\"other\"\n\"1806014\";\"六横\";\"other\"\n\"1806014\";\"六横镇\";\"other\"\n\"1806014\";\"峧头镇\";\"other\"\n\"1806025\";\"Jiaoqiao\";\"main\"\n\"1806025\";\"Jiaoqiao Zhen\";\"other\"\n\"1806025\";\"蛟桥\";\"other\"\n\"1806025\";\"蛟桥镇\";\"other\"\n\"1806041\";\"Jiaocheng\";\"main\"\n\"1806041\";\"Chen-p'ing\";\"other\"\n\"1806041\";\"Chen-p’ing\";\"other\"\n\"1806041\";\"Chiao-ch'eng\";\"other\"\n\"1806041\";\"Chiao-ch'eng-chen\";\"other\"\n\"1806041\";\"Chiao-ch’eng\";\"other\"\n\"1806041\";\"Chiao-ch’eng-chen\";\"other\"\n\"1806041\";\"Chiao-ling\";\"other\"\n\"1806041\";\"Chiao-ling-hsien\";\"other\"\n\"1806041\";\"Chiuling\";\"other\"\n\"1806041\";\"Chiuling-hsien\";\"other\"\n\"1806041\";\"Chuiling\";\"other\"\n\"1806041\";\"Jiaoling\";\"other\"\n\"1806041\";\"jiao cheng\";\"other\"\n\"1806041\";\"蕉城\";\"other\"\n\"1806047\";\"Jiaokui\";\"main\"\n\"1806047\";\"I-liang\";\"other\"\n\"1806047\";\"I-liang-hsien\";\"other\"\n\"1806047\";\"Yiliang\";\"other\"\n\"1806047\";\"Yiliang-hsien\";\"other\"\n\"1806047\";\"jiao kui\";\"other\"\n\"1806047\";\"角奎\";\"other\"\n\"1806061\";\"Jiaokou\";\"main\"\n\"1806061\";\"Chiao-k'ou\";\"other\"\n\"1806061\";\"Chiao-k'ou-chen\";\"other\"\n\"1806061\";\"Chiao-k’ou\";\"other\"\n\"1806061\";\"Chiao-k’ou-chen\";\"other\"\n\"1806061\";\"Jiaokou Zhen\";\"other\"\n\"1806061\";\"jiao kou\";\"other\"\n\"1806061\";\"交口\";\"other\"\n\"1806079\";\"Jiaogong\";\"main\"\n\"1806079\";\"角弓\";\"other\"\n\"1806090\";\"Jiaodai\";\"main\"\n\"1806090\";\"Chiao-tai\";\"other\"\n\"1806090\";\"Chiao-tai-chen\";\"other\"\n\"1806090\";\"Jiaodai Zhen\";\"other\"\n\"1806090\";\"jiao dai\";\"other\"\n\"1806090\";\"焦岱\";\"other\"\n\"1806095\";\"Tianning\";\"main\"\n\"1806095\";\"Chiao-ch'eng\";\"other\"\n\"1806095\";\"Chiao-ch'eng-hsien\";\"other\"\n\"1806095\";\"Chiao-ch’eng\";\"other\"\n\"1806095\";\"Chiao-ch’eng-hsien\";\"other\"\n\"1806095\";\"Jiaocheng\";\"other\"\n\"1806095\";\"Kiaochenghsien\";\"other\"\n\"1806095\";\"Tszyaochen\";\"other\"\n\"1806095\";\"tian ning\";\"other\"\n\"1806095\";\"天宁\";\"other\"\n\"1806096\";\"Jiaozhou\";\"main\"\n\"1806096\";\"Chiao\";\"other\"\n\"1806096\";\"Chiao-hsien\";\"other\"\n\"1806096\";\"Jiaocheng\";\"other\"\n\"1806096\";\"Jiaoxian\";\"other\"\n\"1806096\";\"Kiaochow\";\"other\"\n\"1806096\";\"Kiaohsien\";\"other\"\n\"1806097\";\"Ningde\";\"main\"\n\"1806097\";\"Jiaocheng\";\"other\"\n\"1806097\";\"Ning-te\";\"other\"\n\"1806097\";\"Ning-te-hsien\";\"other\"\n\"1806097\";\"Ningteh\";\"other\"\n\"1806097\";\"Ningtehhsien\";\"other\"\n\"1806097\";\"ning de shi\";\"other\"\n\"1806097\";\"نىڭدې شەھىرى\";\"other\"\n\"1806097\";\"宁德\";\"other\"\n\"1806097\";\"宁德市\";\"other\"\n\"1806114\";\"Juzhen\";\"main\"\n\"1806114\";\"Chien-chen\";\"other\"\n\"1806114\";\"Chu-chen\";\"other\"\n\"1806114\";\"Chü-chen\";\"other\"\n\"1806114\";\"Jianzhen\";\"other\"\n\"1806114\";\"苴镇\";\"other\"\n\"1806124\";\"Jiancheng\";\"main\"\n\"1806124\";\"Chien-chou\";\"other\"\n\"1806124\";\"Chien-yang\";\"other\"\n\"1806124\";\"Chien-yang-hsien\";\"other\"\n\"1806124\";\"Jianyang\";\"other\"\n\"1806124\";\"Kienchow\";\"other\"\n\"1806124\";\"Kienchow Nan\";\"other\"\n\"1806124\";\"Kienyang-hsien\";\"other\"\n\"1806124\";\"Tszyan'yan\";\"other\"\n\"1806124\";\"Tszyan’yan\";\"other\"\n\"1806124\";\"jian cheng\";\"other\"\n\"1806124\";\"简城\";\"other\"\n\"1806138\";\"Jiantiao\";\"main\"\n\"1806138\";\"Chien-t'iao\";\"other\"\n\"1806138\";\"Chien-t'iao-so\";\"other\"\n\"1806138\";\"Chien-t'iao-so-ch'eng\";\"other\"\n\"1806138\";\"Chien-t’iao\";\"other\"\n\"1806138\";\"Chien-t’iao-so\";\"other\"\n\"1806138\";\"Chien-t’iao-so-ch’eng\";\"other\"\n\"1806138\";\"Jiantiao Zhen\";\"other\"\n\"1806138\";\"Kientiao\";\"other\"\n\"1806138\";\"jian tiao\";\"other\"\n\"1806138\";\"jian tiao zhen\";\"other\"\n\"1806138\";\"健跳镇\";\"other\"\n\"1806138\";\"键跳\";\"other\"\n\"1806146\";\"Lin’an\";\"main\"\n\"1806146\";\"Lin'an\";\"ascii\"\n\"1806146\";\"Chien-shui\";\"other\"\n\"1806146\";\"Chien-shui-hsien\";\"other\"\n\"1806146\";\"Jianshui\";\"other\"\n\"1806146\";\"Kienshui\";\"other\"\n\"1806146\";\"Kienshui-hsien\";\"other\"\n\"1806146\";\"Lin'an Zhen\";\"other\"\n\"1806146\";\"Linanfu\";\"other\"\n\"1806146\";\"Lin’an Zhen\";\"other\"\n\"1806146\";\"lin an\";\"other\"\n\"1806146\";\"临安\";\"other\"\n\"1806157\";\"Jianshan\";\"main\"\n\"1806157\";\"Chien-shan\";\"other\"\n\"1806157\";\"Jianshan Zhen\";\"other\"\n\"1806157\";\"jian shan\";\"other\"\n\"1806157\";\"jian shan zhen\";\"other\"\n\"1806157\";\"尖山\";\"other\"\n\"1806157\";\"尖山镇\";\"other\"\n\"1806167\";\"Jian’ou\";\"main\"\n\"1806167\";\"Jian'ou\";\"ascii\"\n\"1806167\";\"Chien-ning\";\"other\"\n\"1806167\";\"Chien-ou\";\"other\"\n\"1806167\";\"Chien-ou-hsien\";\"other\"\n\"1806167\";\"Chien-ou-hsien-ch'eng\";\"other\"\n\"1806167\";\"Chien-ou-hsien-ch’eng\";\"other\"\n\"1806167\";\"Kienning\";\"other\"\n\"1806167\";\"Kienningfu\";\"other\"\n\"1806167\";\"Kienow\";\"other\"\n\"1806167\";\"Kienowhsien\";\"other\"\n\"1806167\";\"Zhicheng\";\"other\"\n\"1806167\";\"建瓯\";\"other\"\n\"1806176\";\"Tongzilin\";\"main\"\n\"1806176\";\"Jiankang\";\"other\"\n\"1806176\";\"Yanbian\";\"other\"\n\"1806176\";\"Yen-pien\";\"other\"\n\"1806176\";\"Yen-pien-hsien\";\"other\"\n\"1806176\";\"tong zi lin\";\"other\"\n\"1806176\";\"桐子林\";\"other\"\n\"1806177\";\"Jianjun\";\"main\"\n\"1806177\";\"Chien-chun\";\"other\"\n\"1806177\";\"Chien-chun-chen\";\"other\"\n\"1806177\";\"Chien-chün\";\"other\"\n\"1806177\";\"Chien-chün-chen\";\"other\"\n\"1806177\";\"Jianjun Zhen\";\"other\"\n\"1806177\";\"Ku-tun\";\"other\"\n\"1806177\";\"Yongshou\";\"other\"\n\"1806177\";\"Yung-shou\";\"other\"\n\"1806177\";\"Yung-shou-hsien\";\"other\"\n\"1806177\";\"jian jun\";\"other\"\n\"1806177\";\"jian jun zhen\";\"other\"\n\"1806177\";\"yong shou\";\"other\"\n\"1806177\";\"永寿\";\"other\"\n\"1806177\";\"监军\";\"other\"\n\"1806177\";\"监军镇\";\"other\"\n\"1806180\";\"Jianjiang\";\"main\"\n\"1806180\";\"Chien-chiang\";\"other\"\n\"1806200\";\"Jiangzhang\";\"main\"\n\"1806200\";\"Chiang-chang\";\"other\"\n\"1806200\";\"Chiang-chang-chen\";\"other\"\n\"1806200\";\"Jiangzhang Zhen\";\"other\"\n\"1806200\";\"绛帐\";\"other\"\n\"1806200\";\"绛帐镇\";\"other\"\n\"1806204\";\"Jiangzao\";\"main\"\n\"1806204\";\"Jiangzao Zhen\";\"other\"\n\"1806204\";\"姜灶\";\"other\"\n\"1806204\";\"姜灶镇\";\"other\"\n\"1806209\";\"Xiaopu\";\"main\"\n\"1806209\";\"Chiang-yung\";\"other\"\n\"1806209\";\"Jiangyong\";\"other\"\n\"1806209\";\"Xiaopuzhen\";\"other\"\n\"1806209\";\"Yung-ming\";\"other\"\n\"1806209\";\"Yung-ming-hsien\";\"other\"\n\"1806209\";\"xiao pu\";\"other\"\n\"1806209\";\"潇浦\";\"other\"\n\"1806218\";\"Jiangyan\";\"main\"\n\"1806218\";\"Chiang-yen\";\"other\"\n\"1806218\";\"Chiang-yen-chen\";\"other\"\n\"1806218\";\"Jiangyan Shi\";\"other\"\n\"1806218\";\"Jiangyan Zhen\";\"other\"\n\"1806218\";\"Kiangyen\";\"other\"\n\"1806218\";\"T'ai-hsien\";\"other\"\n\"1806218\";\"Taixian\";\"other\"\n\"1806218\";\"T’ai-hsien\";\"other\"\n\"1806218\";\"jiang yan shi\";\"other\"\n\"1806218\";\"姜堰\";\"other\"\n\"1806218\";\"姜堰市\";\"other\"\n\"1806218\";\"姜堰镇\";\"other\"\n\"1806221\";\"Jiangya\";\"main\"\n\"1806221\";\"Chiang-ya\";\"other\"\n\"1806221\";\"Jiangya Zhen\";\"other\"\n\"1806221\";\"jiang wu\";\"other\"\n\"1806221\";\"jiang wu zhen\";\"other\"\n\"1806221\";\"江垭\";\"other\"\n\"1806221\";\"江垭镇\";\"other\"\n\"1806233\";\"Gujiang\";\"main\"\n\"1806233\";\"Chang-hsien\";\"other\"\n\"1806233\";\"Chiang\";\"other\"\n\"1806233\";\"Chiang-chen\";\"other\"\n\"1806233\";\"Chiang-hsien\";\"other\"\n\"1806233\";\"Chiang-hsien-ch'eng\";\"other\"\n\"1806233\";\"Chiang-hsien-ch’eng\";\"other\"\n\"1806233\";\"Jiangxian\";\"other\"\n\"1806233\";\"Kianghsien\";\"other\"\n\"1806233\";\"Tszyan'syan\";\"other\"\n\"1806233\";\"Tszyan’syan\";\"other\"\n\"1806233\";\"gu jiang\";\"other\"\n\"1806233\";\"古绛\";\"other\"\n\"1806243\";\"Jiangwan\";\"main\"\n\"1806243\";\"Chiang-wan\";\"other\"\n\"1806243\";\"Jiangwan Zhen\";\"other\"\n\"1806243\";\"jiang wan\";\"other\"\n\"1806243\";\"jiang wan zhen\";\"other\"\n\"1806243\";\"江湾\";\"other\"\n\"1806243\";\"江湾镇\";\"other\"\n\"1806245\";\"Jiangwakou\";\"main\"\n\"1806245\";\"Chiang-wa-k'ou\";\"other\"\n\"1806245\";\"Chiang-wa-k’ou\";\"other\"\n\"1806248\";\"Jianguang\";\"main\"\n\"1806248\";\"Feng-ch'eng-hsien\";\"other\"\n\"1806248\";\"Feng-ch’eng-hsien\";\"other\"\n\"1806248\";\"Fengcheng\";\"other\"\n\"1806248\";\"Fengcheng Shi\";\"other\"\n\"1806248\";\"丰城\";\"other\"\n\"1806248\";\"丰城市\";\"other\"\n\"1806267\";\"Jiangshi\";\"main\"\n\"1806267\";\"Chiang-shih-chieh\";\"other\"\n\"1806267\";\"Tszyansitsze\";\"other\"\n\"1806272\";\"Jiangshan\";\"main\"\n\"1806272\";\"Chiang-shan\";\"other\"\n\"1806272\";\"Ching-shan-chen\";\"other\"\n\"1806272\";\"Jiangshanzhen\";\"other\"\n\"1806272\";\"jiang shan\";\"other\"\n\"1806272\";\"jiang shan zhen\";\"other\"\n\"1806272\";\"姜山\";\"other\"\n\"1806272\";\"姜山镇\";\"other\"\n\"1806295\";\"Jiangna\";\"main\"\n\"1806295\";\"Chiang-na\";\"other\"\n\"1806295\";\"Chiang-na-chen\";\"other\"\n\"1806295\";\"Kiangna\";\"other\"\n\"1806295\";\"Yanshan\";\"other\"\n\"1806295\";\"Yen-shan\";\"other\"\n\"1806295\";\"Yen-shan-hsien\";\"other\"\n\"1806295\";\"jiang na\";\"other\"\n\"1806295\";\"江那\";\"other\"\n\"1806299\";\"Jiangmen\";\"main\"\n\"1806299\";\"Chiang-men\";\"other\"\n\"1806299\";\"Chiang-men-ch'eng\";\"other\"\n\"1806299\";\"Chiang-men-ch’eng\";\"other\"\n\"1806299\";\"Chiang-men-shih\";\"other\"\n\"1806299\";\"Czjanmehn'\";\"other\"\n\"1806299\";\"Hsin-hui\";\"other\"\n\"1806299\";\"Hsin-hui-hsien\";\"other\"\n\"1806299\";\"Kongmoon City\";\"other\"\n\"1806299\";\"Kongmun\";\"other\"\n\"1806299\";\"Pakhai\";\"other\"\n\"1806299\";\"Sunwui\";\"other\"\n\"1806299\";\"jiang men shi\";\"other\"\n\"1806299\";\"Цзянмэнь\";\"other\"\n\"1806299\";\"江门\";\"other\"\n\"1806299\";\"江门市\";\"other\"\n\"1806300\";\"Jiangluo\";\"main\"\n\"1806300\";\"Chiang-lang-pa\";\"other\"\n\"1806300\";\"Chiang-lo-chen\";\"other\"\n\"1806300\";\"Chiang-lo-pa\";\"other\"\n\"1806300\";\"Jiangluo Zhen\";\"other\"\n\"1806300\";\"Jiangluozhen\";\"other\"\n\"1806300\";\"Tszyanlanba\";\"other\"\n\"1806300\";\"江洛\";\"other\"\n\"1806300\";\"江洛镇\";\"other\"\n\"1806309\";\"Jiangkou\";\"main\"\n\"1806309\";\"Chiang-k'ou\";\"other\"\n\"1806309\";\"Chiang-k'ou-chen\";\"other\"\n\"1806309\";\"Chiang-k’ou\";\"other\"\n\"1806309\";\"Chiang-k’ou-chen\";\"other\"\n\"1806309\";\"Jiangkou Zhen\";\"other\"\n\"1806309\";\"Tszyankouchzhen'\";\"other\"\n\"1806309\";\"Tszyankouchzhen’\";\"other\"\n\"1806309\";\"江口\";\"other\"\n\"1806309\";\"江口镇\";\"other\"\n\"1806311\";\"Jiangkou\";\"main\"\n\"1806311\";\"Chiang-k'ou\";\"other\"\n\"1806311\";\"Chiang-k'ou-chen\";\"other\"\n\"1806311\";\"Chiang-k’ou\";\"other\"\n\"1806311\";\"Chiang-k’ou-chen\";\"other\"\n\"1806311\";\"P'ing-ch'ang-she-chih-chu\";\"other\"\n\"1806311\";\"Pingchang\";\"other\"\n\"1806311\";\"P’ing-ch’ang-she-chih-chü\";\"other\"\n\"1806311\";\"Tszyankou\";\"other\"\n\"1806311\";\"jiang kou\";\"other\"\n\"1806311\";\"江口\";\"other\"\n\"1806314\";\"Jiangkou\";\"main\"\n\"1806314\";\"Jiangkou Zhen\";\"other\"\n\"1806314\";\"San-chiang-k'ou\";\"other\"\n\"1806314\";\"San-chiang-k’ou\";\"other\"\n\"1806314\";\"jiang kou\";\"other\"\n\"1806314\";\"jiang kou zhen\";\"other\"\n\"1806314\";\"江口\";\"other\"\n\"1806314\";\"江口镇\";\"other\"\n\"1806319\";\"Jiangkouxu\";\"main\"\n\"1806319\";\"Chiang-k'ou\";\"other\"\n\"1806319\";\"Chiang-k’ou\";\"other\"\n\"1806319\";\"Jiangkou\";\"other\"\n\"1806319\";\"Kiangkow\";\"other\"\n\"1806327\";\"Jiangkou\";\"main\"\n\"1806327\";\"Chiang-k'ou\";\"other\"\n\"1806327\";\"Chiang-k’ou\";\"other\"\n\"1806327\";\"Kiang-k'ou\";\"other\"\n\"1806327\";\"Kiang-k’ou\";\"other\"\n\"1806327\";\"Kiangkow\";\"other\"\n\"1806333\";\"Jiangkou\";\"main\"\n\"1806333\";\"Chiang-k'ou\";\"other\"\n\"1806333\";\"Chiang-k'ou-chen\";\"other\"\n\"1806333\";\"Chiang-k'ou-hsu\";\"other\"\n\"1806333\";\"Chiang-k’ou\";\"other\"\n\"1806333\";\"Chiang-k’ou-chen\";\"other\"\n\"1806333\";\"Chiang-k’ou-hsü\";\"other\"\n\"1806333\";\"Fengkai\";\"other\"\n\"1806333\";\"Te-feng\";\"other\"\n\"1806333\";\"jiang kou\";\"other\"\n\"1806333\";\"江口\";\"other\"\n\"1806359\";\"Jiangfang\";\"main\"\n\"1806359\";\"Jiangfang Xiang\";\"other\"\n\"1806359\";\"Jiangjiafang\";\"other\"\n\"1806364\";\"Jiangbu\";\"main\"\n\"1806364\";\"Chiang-chia-pu\";\"other\"\n\"1806364\";\"Jiangbu Xiang\";\"other\"\n\"1806364\";\"Jiangjiabu\";\"other\"\n\"1806364\";\"江埠\";\"other\"\n\"1806364\";\"江埠乡\";\"other\"\n\"1806367\";\"Jiangjia\";\"main\"\n\"1806367\";\"Jiangjia Zhen\";\"other\"\n\"1806367\";\"jiang jia\";\"other\"\n\"1806367\";\"jiang jia zhen\";\"other\"\n\"1806367\";\"姜家\";\"other\"\n\"1806367\";\"姜家镇\";\"other\"\n\"1806374\";\"Jianghua\";\"main\"\n\"1806374\";\"Chiang-hua-ch'iao\";\"other\"\n\"1806374\";\"Chiang-hua-ch’iao\";\"other\"\n\"1806374\";\"Jianghua Zhen\";\"other\"\n\"1806374\";\"Jianghuaqiao\";\"other\"\n\"1806374\";\"蒋华\";\"other\"\n\"1806374\";\"蒋华镇\";\"other\"\n\"1806383\";\"Jianggang\";\"main\"\n\"1806383\";\"Ch'iang-chiang\";\"other\"\n\"1806383\";\"Ch'iang-kang\";\"other\"\n\"1806383\";\"Ch’iang-chiang\";\"other\"\n\"1806383\";\"Ch’iang-kang\";\"other\"\n\"1806383\";\"Jianggang Zhen\";\"other\"\n\"1806383\";\"Nan-ch'iang\";\"other\"\n\"1806383\";\"Nan-ch’iang\";\"other\"\n\"1806383\";\"弶港\";\"other\"\n\"1806383\";\"弶港镇\";\"other\"\n\"1806388\";\"Jiangduo\";\"main\"\n\"1806388\";\"Chiang-to\";\"other\"\n\"1806388\";\"Chiang-to-chen\";\"other\"\n\"1806388\";\"Jiangduo Zhen\";\"other\"\n\"1806388\";\"蒋垛\";\"other\"\n\"1806388\";\"蒋垛镇\";\"other\"\n\"1806390\";\"Gangdong\";\"main\"\n\"1806390\";\"Chiang-tung\";\"other\"\n\"1806390\";\"Jiangdong\";\"other\"\n\"1806407\";\"Jiangcheng\";\"main\"\n\"1806407\";\"Chiang-ch'eng\";\"other\"\n\"1806407\";\"Chiang-ch'uan\";\"other\"\n\"1806407\";\"Chiang-ch'uan-hsien\";\"other\"\n\"1806407\";\"Chiang-ch’eng\";\"other\"\n\"1806407\";\"Chiang-ch’uan\";\"other\"\n\"1806407\";\"Chiang-ch’uan-hsien\";\"other\"\n\"1806407\";\"Chiu-chiang-ch'uan\";\"other\"\n\"1806407\";\"Chiu-chiang-ch’uan\";\"other\"\n\"1806407\";\"Jiangcheng Zhen\";\"other\"\n\"1806407\";\"Kiangchwan\";\"other\"\n\"1806407\";\"Kiangchwan-hsien\";\"other\"\n\"1806407\";\"jiang cheng\";\"other\"\n\"1806407\";\"jiang cheng zhen\";\"other\"\n\"1806407\";\"江城\";\"other\"\n\"1806407\";\"江城镇\";\"other\"\n\"1806408\";\"Yangjiang\";\"main\"\n\"1806408\";\"Chiang-ch'eng-chen\";\"other\"\n\"1806408\";\"Chiang-ch’eng-chen\";\"other\"\n\"1806408\";\"Janczjan\";\"other\"\n\"1806408\";\"Jiangcheng\";\"other\"\n\"1806408\";\"Liang-yang\";\"other\"\n\"1806408\";\"Yang-chiang\";\"other\"\n\"1806408\";\"Yang-chiang-hsien\";\"other\"\n\"1806408\";\"Yeungkong\";\"other\"\n\"1806408\";\"Yeungkong-hsien\";\"other\"\n\"1806408\";\"yang jiang shi\";\"other\"\n\"1806408\";\"Янцзян\";\"other\"\n\"1806408\";\"阳江\";\"other\"\n\"1806408\";\"阳江市\";\"other\"\n\"1806412\";\"Jiangbeixu\";\"main\"\n\"1806412\";\"Chiang-pei-hsu\";\"other\"\n\"1806412\";\"Chiang-pei-hsü\";\"other\"\n\"1806412\";\"Jiangbei\";\"other\"\n\"1806412\";\"Jiangbei Zhen\";\"other\"\n\"1806412\";\"江背\";\"other\"\n\"1806412\";\"江背镇\";\"other\"\n\"1806422\";\"Jiang’an\";\"main\"\n\"1806422\";\"Jiang'an\";\"ascii\"\n\"1806422\";\"Chiang-an\";\"other\"\n\"1806422\";\"Chiang-an-hsien\";\"other\"\n\"1806422\";\"Kiangan\";\"other\"\n\"1806422\";\"Kiangan-hsien\";\"other\"\n\"1806422\";\"jiang an\";\"other\"\n\"1806422\";\"江安\";\"other\"\n\"1806426\";\"Jianfeng\";\"main\"\n\"1806426\";\"Jianfeng Xiang\";\"other\"\n\"1806426\";\"尖峰\";\"other\"\n\"1806426\";\"尖峰乡\";\"other\"\n\"1806445\";\"Ji’an\";\"main\"\n\"1806445\";\"Ji'an\";\"ascii\"\n\"1806445\";\"Chi-an\";\"other\"\n\"1806445\";\"Chi-an-shih\";\"other\"\n\"1806445\";\"Czian'\";\"other\"\n\"1806445\";\"Kian\";\"other\"\n\"1806445\";\"Kian-hsien\";\"other\"\n\"1806445\";\"Kianfu\";\"other\"\n\"1806445\";\"Luling\";\"other\"\n\"1806445\";\"Цзиань\";\"other\"\n\"1806450\";\"Jiamaying\";\"main\"\n\"1806450\";\"Cha-ma-ying\";\"other\"\n\"1806450\";\"Chia-ma-ying\";\"other\"\n\"1806450\";\"Chiama\";\"other\"\n\"1806460\";\"Jialou\";\"main\"\n\"1806460\";\"Chia-lou\";\"other\"\n\"1806460\";\"Kialow\";\"other\"\n\"1806460\";\"Shen-lou\";\"other\"\n\"1806460\";\"Tszyalou\";\"other\"\n\"1806460\";\"jia lou\";\"other\"\n\"1806460\";\"贾楼\";\"other\"\n\"1806466\";\"Guangyuan\";\"main\"\n\"1806466\";\"Jialing\";\"other\"\n\"1806466\";\"Kuan-yuan\";\"other\"\n\"1806466\";\"Kuan-yüan\";\"other\"\n\"1806466\";\"Kuang-yuan\";\"other\"\n\"1806466\";\"Kuang-yuan-hsien\";\"other\"\n\"1806466\";\"Kuang-yüan\";\"other\"\n\"1806466\";\"Kuang-yüan-hsien\";\"other\"\n\"1806466\";\"Kwangyuan\";\"other\"\n\"1806466\";\"Kwangyuanhsien\";\"other\"\n\"1806466\";\"Kwangyüan\";\"other\"\n\"1806466\";\"Kwangyüanhsien\";\"other\"\n\"1806466\";\"广元\";\"other\"\n\"1806483\";\"Yancheng\";\"main\"\n\"1806483\";\"Chia-chiang\";\"other\"\n\"1806483\";\"Chia-chiang-hsien\";\"other\"\n\"1806483\";\"Jiajiang\";\"other\"\n\"1806483\";\"Kiakiang\";\"other\"\n\"1806483\";\"Kiakiang-hsien\";\"other\"\n\"1806483\";\"yan cheng\";\"other\"\n\"1806483\";\"漹城\";\"other\"\n\"1806515\";\"Jiacun\";\"main\"\n\"1806515\";\"Chia-ts'un\";\"other\"\n\"1806515\";\"Chia-ts'un-chen\";\"other\"\n\"1806515\";\"Chia-ts’un\";\"other\"\n\"1806515\";\"Chia-ts’un-chen\";\"other\"\n\"1806515\";\"Jiacun Zhen\";\"other\"\n\"1806515\";\"贾村\";\"other\"\n\"1806515\";\"贾村镇\";\"other\"\n\"1806535\";\"Huzhou\";\"main\"\n\"1806535\";\"Hu-chou\";\"other\"\n\"1806535\";\"Hu-chou-shih\";\"other\"\n\"1806535\";\"Huchow\";\"other\"\n\"1806535\";\"Huchowfu\";\"other\"\n\"1806535\";\"Huhinghsien\";\"other\"\n\"1806535\";\"Wu-hsing\";\"other\"\n\"1806535\";\"Wu-hsing-hsien\";\"other\"\n\"1806535\";\"Wu-hsing-hsien-ch'eng\";\"other\"\n\"1806535\";\"Wu-hsing-hsien-ch’eng\";\"other\"\n\"1806535\";\"Wuhing\";\"other\"\n\"1806535\";\"Wuxing\";\"other\"\n\"1806545\";\"Huyuan\";\"main\"\n\"1806545\";\"Huyuan Xiang\";\"other\"\n\"1806545\";\"湖源\";\"other\"\n\"1806545\";\"湖源乡\";\"other\"\n\"1806546\";\"Huyu\";\"main\"\n\"1806546\";\"Hu-yu-ts'un\";\"other\"\n\"1806546\";\"Hu-yü-ts’un\";\"other\"\n\"1806546\";\"Huyu Xiang\";\"other\"\n\"1806546\";\"胡峪\";\"other\"\n\"1806546\";\"胡峪乡\";\"other\"\n\"1806553\";\"Huyang\";\"main\"\n\"1806553\";\"T'ang-kou\";\"other\"\n\"1806553\";\"T'ang-kou-chen\";\"other\"\n\"1806553\";\"T’ang-kou\";\"other\"\n\"1806553\";\"T’ang-kou-chen\";\"other\"\n\"1806553\";\"hu yang\";\"other\"\n\"1806553\";\"湖阳\";\"other\"\n\"1806559\";\"Huxiaoqiao\";\"main\"\n\"1806559\";\"Hu-hsiao-ch'iao\";\"other\"\n\"1806559\";\"Hu-hsiao-ch'iao-chen\";\"other\"\n\"1806559\";\"Hu-hsiao-ch’iao\";\"other\"\n\"1806559\";\"Hu-hsiao-ch’iao-chen\";\"other\"\n\"1806559\";\"Huanggu Zhen\";\"other\"\n\"1806559\";\"虎啸桥\";\"other\"\n\"1806559\";\"黄姑镇\";\"other\"\n\"1806561\";\"Ganting\";\"main\"\n\"1806561\";\"Ganting Zhen\";\"other\"\n\"1806561\";\"Hu\";\"other\"\n\"1806561\";\"Hu-hsien\";\"other\"\n\"1806561\";\"Huxian\";\"other\"\n\"1806561\";\"Khusyan\";\"other\"\n\"1806561\";\"gan ting\";\"other\"\n\"1806561\";\"gan ting zhen\";\"other\"\n\"1806561\";\"hu xian\";\"other\"\n\"1806561\";\"户县\";\"other\"\n\"1806561\";\"甘亭\";\"other\"\n\"1806561\";\"甘亭镇\";\"other\"\n\"1806564\";\"Huxi\";\"main\"\n\"1806564\";\"Hu-hsi\";\"other\"\n\"1806564\";\"Huxi Zhen\";\"other\"\n\"1806564\";\"hu xi\";\"other\"\n\"1806564\";\"hu xi zhen\";\"other\"\n\"1806564\";\"湖溪\";\"other\"\n\"1806564\";\"湖溪镇\";\"other\"\n\"1806589\";\"Hutang\";\"main\"\n\"1806589\";\"Hu-t'ang\";\"other\"\n\"1806589\";\"Hu-t'ang-ch'iao\";\"other\"\n\"1806589\";\"Hu-t’ang\";\"other\"\n\"1806589\";\"Hu-t’ang-ch’iao\";\"other\"\n\"1806589\";\"Hutangqiao\";\"other\"\n\"1806589\";\"hu tang\";\"other\"\n\"1806589\";\"湖塘\";\"other\"\n\"1806591\";\"Hutang\";\"main\"\n\"1806602\";\"Xushan\";\"main\"\n\"1806602\";\"Cixi\";\"other\"\n\"1806602\";\"Cixi Shi\";\"other\"\n\"1806602\";\"Hu-shan-chen\";\"other\"\n\"1806602\";\"Hu-shan-so-ch'eng\";\"other\"\n\"1806602\";\"Hu-shan-so-ch’eng\";\"other\"\n\"1806602\";\"Hushan\";\"other\"\n\"1806602\";\"Tz'u-ch'i\";\"other\"\n\"1806602\";\"Tz'u-hsi\";\"other\"\n\"1806602\";\"Tz’u-ch’i\";\"other\"\n\"1806602\";\"Tz’u-hsi\";\"other\"\n\"1806602\";\"Xushan Jiedao\";\"other\"\n\"1806602\";\"慈溪\";\"other\"\n\"1806602\";\"慈溪市\";\"other\"\n\"1806602\";\"浒山\";\"other\"\n\"1806602\";\"浒山街道\";\"other\"\n\"1806619\";\"Huozhuangzi\";\"main\"\n\"1806627\";\"Huotong\";\"main\"\n\"1806627\";\"Ho-t'ung\";\"other\"\n\"1806627\";\"Ho-t’ung\";\"other\"\n\"1806627\";\"Huo-t'ung\";\"other\"\n\"1806627\";\"Huo-t’ung\";\"other\"\n\"1806643\";\"Huoshaodian\";\"main\"\n\"1806643\";\"Huo-shao-tien\";\"other\"\n\"1806643\";\"火烧店\";\"other\"\n\"1806646\";\"Hengshan\";\"main\"\n\"1806646\";\"Ho-shan\";\"other\"\n\"1806646\";\"Ho-shan-hsien\";\"other\"\n\"1806646\";\"Huoshan\";\"other\"\n\"1806646\";\"Hwoshan\";\"other\"\n\"1806646\";\"Hwoshanhsien\";\"other\"\n\"1806646\";\"Khoshan\";\"other\"\n\"1806646\";\"heng shan\";\"other\"\n\"1806646\";\"衡山\";\"other\"\n\"1806651\";\"Huoqiu Chengguanzhen\";\"main\"\n\"1806651\";\"Ho-ch'iu\";\"other\"\n\"1806651\";\"Ho-ch'iu-hsien\";\"other\"\n\"1806651\";\"Ho-ch’iu\";\"other\"\n\"1806651\";\"Ho-ch’iu-hsien\";\"other\"\n\"1806651\";\"Huo-ch'iu\";\"other\"\n\"1806651\";\"Huo-ch’iu\";\"other\"\n\"1806651\";\"Huoqiu\";\"other\"\n\"1806651\";\"Hwokiu\";\"other\"\n\"1806651\";\"Hwokiu-hsien\";\"other\"\n\"1806651\";\"霍邱城关镇\";\"other\"\n\"1806653\";\"Huomachong\";\"main\"\n\"1806653\";\"Huo-ma-ch'ung\";\"other\"\n\"1806653\";\"Huo-ma-ch’ung\";\"other\"\n\"1806661\";\"Huoli\";\"main\"\n\"1806661\";\"Ho-li\";\"other\"\n\"1806661\";\"Ho-li-chen\";\"other\"\n\"1806661\";\"Houli Zhen\";\"other\"\n\"1806661\";\"huo li\";\"other\"\n\"1806661\";\"huo li zhen\";\"other\"\n\"1806661\";\"霍里\";\"other\"\n\"1806661\";\"霍里镇\";\"other\"\n\"1806675\";\"Huogezhuang\";\"main\"\n\"1806687\";\"Yong’an\";\"main\"\n\"1806687\";\"Yong'an\";\"ascii\"\n\"1806687\";\"Hun-yuan-hsien\";\"other\"\n\"1806687\";\"Hun-yüan-hsien\";\"other\"\n\"1806687\";\"Hunyuan Xian\";\"other\"\n\"1806687\";\"Khun'yuan'\";\"other\"\n\"1806687\";\"Khun’yuan’\";\"other\"\n\"1806687\";\"Yong'an Zhen\";\"other\"\n\"1806687\";\"Yong’an Zhen\";\"other\"\n\"1806687\";\"yong an\";\"other\"\n\"1806687\";\"永安\";\"other\"\n\"1806687\";\"永安镇\";\"other\"\n\"1806687\";\"浑源县\";\"other\"\n\"1806696\";\"Humen\";\"main\"\n\"1806696\";\"Fumunchai\";\"other\"\n\"1806696\";\"Fumuntschai\";\"other\"\n\"1806696\";\"Hu-men-chai\";\"other\"\n\"1806696\";\"Hu-nien\";\"other\"\n\"1806696\";\"Humen Zhen\";\"other\"\n\"1806696\";\"Khumehn'\";\"other\"\n\"1806696\";\"Хумэнь\";\"other\"\n\"1806696\";\"虎门\";\"other\"\n\"1806715\";\"Huliao\";\"main\"\n\"1806715\";\"Dapu\";\"other\"\n\"1806715\";\"Hu-liao-hsu\";\"other\"\n\"1806715\";\"Hu-liao-hsü\";\"other\"\n\"1806715\";\"Huliaoxu\";\"other\"\n\"1806715\";\"Ta-pu\";\"other\"\n\"1806715\";\"Ta-pu-hsien\";\"other\"\n\"1806715\";\"hu liao\";\"other\"\n\"1806715\";\"湖寮\";\"other\"\n\"1806753\";\"Huji\";\"main\"\n\"1806753\";\"Hu-chia-chi\";\"other\"\n\"1806753\";\"Huji Zhen\";\"other\"\n\"1806753\";\"Hujiaji\";\"other\"\n\"1806753\";\"胡集\";\"other\"\n\"1806753\";\"胡集镇\";\"other\"\n\"1806755\";\"Hujiagou\";\"main\"\n\"1806755\";\"Hu-chia-kou\";\"other\"\n\"1806755\";\"Sanhu\";\"other\"\n\"1806755\";\"Sanhu Xiang\";\"other\"\n\"1806755\";\"hu jia gou\";\"other\"\n\"1806755\";\"san hu xiang\";\"other\"\n\"1806755\";\"三胡乡\";\"other\"\n\"1806755\";\"胡家沟\";\"other\"\n\"1806757\";\"Hujiadun\";\"main\"\n\"1806757\";\"Hu-chia-tun\";\"other\"\n\"1806757\";\"Hu-chia-tun-chen\";\"other\"\n\"1806757\";\"Hu-ho\";\"other\"\n\"1806757\";\"Huhe Zhen\";\"other\"\n\"1806757\";\"Huhezhen\";\"other\"\n\"1806757\";\"hu he zhen\";\"other\"\n\"1806757\";\"hu jia dun\";\"other\"\n\"1806757\";\"护河镇\";\"other\"\n\"1806757\";\"护驾墩\";\"other\"\n\"1806763\";\"Hujiaba\";\"main\"\n\"1806763\";\"Hu-chia-pa\";\"other\"\n\"1806763\";\"Hujiaba Zhen\";\"other\"\n\"1806763\";\"胡家坝\";\"other\"\n\"1806763\";\"胡家坝镇\";\"other\"\n\"1806776\";\"Huizhou\";\"main\"\n\"1806776\";\"Hui-chou\";\"other\"\n\"1806776\";\"Hui-chou-ch'eng\";\"other\"\n\"1806776\";\"Hui-chou-chen\";\"other\"\n\"1806776\";\"Hui-chou-ch’eng\";\"other\"\n\"1806776\";\"Hui-chou-shih\";\"other\"\n\"1806776\";\"Hui-yang\";\"other\"\n\"1806776\";\"Hui-yang-hsien\";\"other\"\n\"1806776\";\"Huichou-fu\";\"other\"\n\"1806776\";\"Khuehjchzhou\";\"other\"\n\"1806776\";\"Kuei-shan\";\"other\"\n\"1806776\";\"Waichow\";\"other\"\n\"1806776\";\"Waichowfu\";\"other\"\n\"1806776\";\"Waiyeung\";\"other\"\n\"1806776\";\"Weichow\";\"other\"\n\"1806776\";\"hui zhou\";\"other\"\n\"1806776\";\"hui zhou shi\";\"other\"\n\"1806776\";\"Хуэйчжоу\";\"other\"\n\"1806776\";\"恵州\";\"other\"\n\"1806776\";\"恵州市\";\"other\"\n\"1806776\";\"惠州\";\"other\"\n\"1806776\";\"惠州市\";\"other\"\n\"1806788\";\"Huixian Chengguanzhen\";\"main\"\n\"1806788\";\"Chengguan Zhen\";\"other\"\n\"1806788\";\"Hui\";\"other\"\n\"1806788\";\"Hui-ch'eng\";\"other\"\n\"1806788\";\"Hui-ch’eng\";\"other\"\n\"1806788\";\"Hui-hsien\";\"other\"\n\"1806788\";\"Hui-hsien-ch'eng\";\"other\"\n\"1806788\";\"Hui-hsien-ch’eng\";\"other\"\n\"1806788\";\"Huixian\";\"other\"\n\"1806788\";\"Khuysyan'\";\"other\"\n\"1806788\";\"Khuysyan’\";\"other\"\n\"1806788\";\"城关镇\";\"other\"\n\"1806788\";\"徽县\";\"other\"\n\"1806788\";\"徽县城关镇\";\"other\"\n\"1806802\";\"Huishungou\";\"main\"\n\"1806802\";\"Hui-shun-kou\";\"other\"\n\"1806802\";\"辉顺沟\";\"other\"\n\"1806807\";\"Huishi\";\"main\"\n\"1806807\";\"Hui-ning-hsien\";\"other\"\n\"1806807\";\"Huining\";\"other\"\n\"1806807\";\"Huishi Zhen\";\"other\"\n\"1806807\";\"Khuynin\";\"other\"\n\"1806807\";\"会师\";\"other\"\n\"1806810\";\"Xinshichang\";\"main\"\n\"1806810\";\"Huishan\";\"other\"\n\"1806810\";\"Huishan Zhen\";\"other\"\n\"1806810\";\"hui shan zhen\";\"other\"\n\"1806810\";\"回山镇\";\"other\"\n\"1806810\";\"新市场\";\"other\"\n\"1806840\";\"Qidong\";\"main\"\n\"1806840\";\"Ch'i-tung\";\"other\"\n\"1806840\";\"Ch'i-tung-hsien\";\"other\"\n\"1806840\";\"Chen-yang-shih\";\"other\"\n\"1806840\";\"Ch’i-tung\";\"other\"\n\"1806840\";\"Ch’i-tung-hsien\";\"other\"\n\"1806840\";\"Huilong\";\"other\"\n\"1806840\";\"Kvidonga\";\"other\"\n\"1806840\";\"Wei-tung-chen\";\"other\"\n\"1806840\";\"Weidong\";\"other\"\n\"1806840\";\"Квидонга\";\"other\"\n\"1806842\";\"Huilong\";\"main\"\n\"1806842\";\"Hui-lung\";\"other\"\n\"1806842\";\"Huilong Zhen\";\"other\"\n\"1806842\";\"迴龙镇\";\"other\"\n\"1806854\";\"Huili Chengguanzhen\";\"main\"\n\"1806854\";\"Hui-li-hsien\";\"other\"\n\"1806854\";\"Huili\";\"other\"\n\"1806854\";\"Hweili\";\"other\"\n\"1806854\";\"Hweili-hsien\";\"other\"\n\"1806854\";\"Hweilichow\";\"other\"\n\"1806854\";\"会理\";\"other\"\n\"1806854\";\"会理城关镇\";\"other\"\n\"1806875\";\"Huidong\";\"main\"\n\"1806875\";\"Ch'ien-chin-kung-she\";\"other\"\n\"1806875\";\"Ch’ien-chin-kung-she\";\"other\"\n\"1806875\";\"Hui-tung\";\"other\"\n\"1806875\";\"Hweitung\";\"other\"\n\"1806875\";\"Ts'an-yu-kuan\";\"other\"\n\"1806875\";\"Ts'an-yu-pa\";\"other\"\n\"1806875\";\"Ts’an-yü-kuan\";\"other\"\n\"1806875\";\"Ts’an-yü-pa\";\"other\"\n\"1806875\";\"Ying-p'an\";\"other\"\n\"1806875\";\"Ying-p’an\";\"other\"\n\"1806875\";\"hui dong\";\"other\"\n\"1806875\";\"会东\";\"other\"\n\"1806880\";\"Huicheng\";\"main\"\n\"1806880\";\"Hsi-hsien\";\"other\"\n\"1806880\";\"Hui-ch'eng-chen\";\"other\"\n\"1806880\";\"Hui-chou\";\"other\"\n\"1806880\";\"Hui-ch’eng-chen\";\"other\"\n\"1806880\";\"Huicheng Zhen\";\"other\"\n\"1806880\";\"Hweichow\";\"other\"\n\"1806880\";\"Hweichow Sihsen\";\"other\"\n\"1806880\";\"She\";\"other\"\n\"1806880\";\"She-hsien\";\"other\"\n\"1806880\";\"She-hsin\";\"other\"\n\"1806880\";\"Shexian\";\"other\"\n\"1806880\";\"Sihsien\";\"other\"\n\"1806880\";\"hui cheng\";\"other\"\n\"1806880\";\"hui cheng zhen\";\"other\"\n\"1806880\";\"xi xian\";\"other\"\n\"1806880\";\"徽城\";\"other\"\n\"1806880\";\"徽城镇\";\"other\"\n\"1806880\";\"歙县\";\"other\"\n\"1806881\";\"Huicheng\";\"main\"\n\"1806881\";\"Hui-ch'eng-chen\";\"other\"\n\"1806881\";\"Hui-ch’eng-chen\";\"other\"\n\"1806881\";\"Hui-lai-hsien\";\"other\"\n\"1806881\";\"Huilai\";\"other\"\n\"1806881\";\"Hweilai\";\"other\"\n\"1806881\";\"Hweilai-hsien\";\"other\"\n\"1806881\";\"惠城\";\"other\"\n\"1806882\";\"Xinhui\";\"main\"\n\"1806882\";\"Chiu-hsin-hui\";\"other\"\n\"1806882\";\"Hsin-hui\";\"other\"\n\"1806882\";\"Hsin-hui Old City\";\"other\"\n\"1806882\";\"Hsin-hui-chiu-ch'eng\";\"other\"\n\"1806882\";\"Hsin-hui-chiu-ch’eng\";\"other\"\n\"1806882\";\"Hsin-hui-hsien\";\"other\"\n\"1806882\";\"Hsin-hui-ku-chih\";\"other\"\n\"1806882\";\"Hui-ch'eng-chen\";\"other\"\n\"1806882\";\"Hui-ch’eng-chen\";\"other\"\n\"1806882\";\"Huicheng\";\"other\"\n\"1806882\";\"Sanwui\";\"other\"\n\"1806882\";\"Sun-hui\";\"other\"\n\"1806882\";\"Sun-wei\";\"other\"\n\"1806882\";\"Sunweihsien\";\"other\"\n\"1806882\";\"Sunwui\";\"other\"\n\"1806882\";\"Sunwui Old City\";\"other\"\n\"1806882\";\"新会\";\"other\"\n\"1806904\";\"Longquan\";\"main\"\n\"1806904\";\"Hu-kuan\";\"other\"\n\"1806904\";\"Hu-kuan-hsien\";\"other\"\n\"1806904\";\"Huguan\";\"other\"\n\"1806904\";\"Hukwanhsien\";\"other\"\n\"1806904\";\"Khuguan\";\"other\"\n\"1806904\";\"long quan\";\"other\"\n\"1806904\";\"龙泉\";\"other\"\n\"1806916\";\"Hufang\";\"main\"\n\"1806916\";\"Hufang Zhen\";\"other\"\n\"1806916\";\"胡坊\";\"other\"\n\"1806916\";\"胡坊镇\";\"other\"\n\"1806923\";\"Hudong\";\"main\"\n\"1806923\";\"Hudong Xiang\";\"other\"\n\"1806923\";\"虎洞\";\"other\"\n\"1806923\";\"虎洞乡\";\"other\"\n\"1806924\";\"Hudong\";\"main\"\n\"1806924\";\"Hudong Zhen\";\"other\"\n\"1806924\";\"hu dong\";\"other\"\n\"1806924\";\"湖东\";\"other\"\n\"1806934\";\"Hucun\";\"main\"\n\"1806934\";\"Hu-ts'un\";\"other\"\n\"1806934\";\"Hu-ts’un\";\"other\"\n\"1806934\";\"Hucun Zhen\";\"other\"\n\"1806934\";\"湖村\";\"other\"\n\"1806934\";\"湖村镇\";\"other\"\n\"1806951\";\"Hubei\";\"main\"\n\"1806951\";\"Hu-pei\";\"other\"\n\"1806951\";\"Hu-pei-ts'un\";\"other\"\n\"1806951\";\"Hu-pei-ts’un\";\"other\"\n\"1806951\";\"Hubei Xiang\";\"other\"\n\"1806951\";\"Khubehj\";\"other\"\n\"1806951\";\"Хубэй\";\"other\"\n\"1806951\";\"虎北\";\"other\"\n\"1806951\";\"虎北乡\";\"other\"\n\"1806960\";\"Huazhou\";\"main\"\n\"1806960\";\"Fachow\";\"other\"\n\"1806960\";\"Fahsien\";\"other\"\n\"1806960\";\"Fu-ch'eng-chen\";\"other\"\n\"1806960\";\"Fu-ch’eng-chen\";\"other\"\n\"1806960\";\"Hau-hsien\";\"other\"\n\"1806960\";\"Hua\";\"other\"\n\"1806960\";\"Hua-chou\";\"other\"\n\"1806960\";\"Hua-hsien\";\"other\"\n\"1806976\";\"Huayuan\";\"main\"\n\"1806976\";\"Hua-yuan-shih\";\"other\"\n\"1806976\";\"Hua-yüan-shih\";\"other\"\n\"1806976\";\"Hwayuan\";\"other\"\n\"1806976\";\"Hwayüan\";\"other\"\n\"1806976\";\"hua yuan\";\"other\"\n\"1806976\";\"花园\";\"other\"\n\"1806977\";\"Huayuan\";\"main\"\n\"1806977\";\"Hua-yuan-chen\";\"other\"\n\"1806977\";\"Hua-yuan-hsien\";\"other\"\n\"1806977\";\"Hua-yüan-chen\";\"other\"\n\"1806977\";\"Hua-yüan-hsien\";\"other\"\n\"1806977\";\"Yang-sui\";\"other\"\n\"1806977\";\"Yung-sui\";\"other\"\n\"1806977\";\"Yung-sui-hsien\";\"other\"\n\"1806977\";\"hua yuan\";\"other\"\n\"1806977\";\"花垣\";\"other\"\n\"1806978\";\"Huayuan\";\"main\"\n\"1806978\";\"Hua-yuan-shih\";\"other\"\n\"1806978\";\"Hua-yüan-shih\";\"other\"\n\"1806978\";\"Khuayuan'shi\";\"other\"\n\"1806978\";\"Khuayuan’shi\";\"other\"\n\"1806986\";\"Shuanghejiedao\";\"main\"\n\"1806986\";\"Huaying\";\"other\"\n\"1806986\";\"Shuang-ho\";\"other\"\n\"1806986\";\"Shuanghe\";\"other\"\n\"1806986\";\"shuang he jie dao\";\"other\"\n\"1806986\";\"双河街道\";\"other\"\n\"1806993\";\"Huayang\";\"main\"\n\"1806993\";\"Hua-yang-ch'uan\";\"other\"\n\"1806993\";\"Hua-yang-ch’uan\";\"other\"\n\"1806993\";\"hua yang\";\"other\"\n\"1806993\";\"华阳\";\"other\"\n\"1806996\";\"Huayang\";\"main\"\n\"1806996\";\"Chi-ch'i\";\"other\"\n\"1806996\";\"Chi-ch'i-hsien\";\"other\"\n\"1806996\";\"Chi-ch’i\";\"other\"\n\"1806996\";\"Chi-ch’i-hsien\";\"other\"\n\"1806996\";\"Chi-hsi\";\"other\"\n\"1806996\";\"Chiki\";\"other\"\n\"1806996\";\"Chikihsien\";\"other\"\n\"1806996\";\"Jixi\";\"other\"\n\"1806996\";\"hua yang\";\"other\"\n\"1806996\";\"华阳\";\"other\"\n\"1807005\";\"Huazhou\";\"main\"\n\"1807005\";\"Hua\";\"other\"\n\"1807005\";\"Hua-hsien\";\"other\"\n\"1807005\";\"Hua-hsien-ch'eng\";\"other\"\n\"1807005\";\"Hua-hsien-ch’eng\";\"other\"\n\"1807005\";\"Huaxian\";\"other\"\n\"1807005\";\"Huazhou Zhen\";\"other\"\n\"1807005\";\"Hwahsien\";\"other\"\n\"1807005\";\"Khuasyan\";\"other\"\n\"1807005\";\"hua zhou\";\"other\"\n\"1807005\";\"华州\";\"other\"\n\"1807005\";\"华州镇\";\"other\"\n\"1807012\";\"Huaxijie\";\"main\"\n\"1807012\";\"Hua-hsi-chen\";\"other\"\n\"1807012\";\"Huaxi Zhen\";\"other\"\n\"1807012\";\"hua xi jie\";\"other\"\n\"1807012\";\"hua xi zhen\";\"other\"\n\"1807012\";\"华溪街\";\"other\"\n\"1807012\";\"华溪镇\";\"other\"\n\"1807042\";\"Huarong Chengguanzhen\";\"main\"\n\"1807042\";\"Hua-jung\";\"other\"\n\"1807042\";\"Hua-jung-hsien\";\"other\"\n\"1807042\";\"Huarong\";\"other\"\n\"1807042\";\"Hwajung-hsien\";\"other\"\n\"1807042\";\"Hwayunghsien\";\"other\"\n\"1807042\";\"hua rong cheng guan zhen\";\"other\"\n\"1807042\";\"华容城关镇\";\"other\"\n\"1807043\";\"Huaqiuba\";\"main\"\n\"1807043\";\"Hua-ch'iu\";\"other\"\n\"1807043\";\"Hua-ch'iu-pa\";\"other\"\n\"1807043\";\"Hua-ch’iu\";\"other\"\n\"1807043\";\"Hua-ch’iu-pa\";\"other\"\n\"1807043\";\"Huaqiu\";\"other\"\n\"1807058\";\"Huaqiao\";\"main\"\n\"1807058\";\"Hua-ch'iao\";\"other\"\n\"1807058\";\"Hua-ch’iao\";\"other\"\n\"1807082\";\"Huantuo\";\"main\"\n\"1807095\";\"Fenghuangshan\";\"main\"\n\"1807095\";\"Hua-nien\";\"other\"\n\"1807095\";\"Huanian\";\"other\"\n\"1807095\";\"Huanian Zhen\";\"other\"\n\"1807095\";\"feng huang shan\";\"other\"\n\"1807095\";\"hua nian\";\"other\"\n\"1807095\";\"hua nian zhen\";\"other\"\n\"1807095\";\"凤凰山\";\"other\"\n\"1807095\";\"化念\";\"other\"\n\"1807095\";\"化念镇\";\"other\"\n\"1807102\";\"Huangzhuang\";\"main\"\n\"1807102\";\"Huang-chuang\";\"other\"\n\"1807102\";\"Huang-chuang-chen\";\"other\"\n\"1807103\";\"Huangzhuang\";\"main\"\n\"1807103\";\"Huang-chuang\";\"other\"\n\"1807104\";\"Huangzhuang\";\"main\"\n\"1807112\";\"Huangzhou\";\"main\"\n\"1807112\";\"Huang-chou\";\"other\"\n\"1807112\";\"Huang-chou-chen\";\"other\"\n\"1807112\";\"Huang-chou-fu\";\"other\"\n\"1807112\";\"Huang-kang\";\"other\"\n\"1807112\";\"Huang-kang-hsien\";\"other\"\n\"1807112\";\"Huang-kang-ku-chih\";\"other\"\n\"1807112\";\"Huanggang\";\"other\"\n\"1807112\";\"Hwangchow\";\"other\"\n\"1807112\";\"Hwangchow-fu\";\"other\"\n\"1807112\";\"Hwangkang\";\"other\"\n\"1807112\";\"Hwangkang-hsien\";\"other\"\n\"1807112\";\"Khuanchzhou\";\"other\"\n\"1807112\";\"Wongkong\";\"other\"\n\"1807112\";\"Хуанчжоу\";\"other\"\n\"1807119\";\"Huangzhai\";\"main\"\n\"1807119\";\"Huang-chai\";\"other\"\n\"1807119\";\"Huang-chai-chen\";\"other\"\n\"1807119\";\"Huang-t'u-chai\";\"other\"\n\"1807119\";\"Huang-t'u-chai-chen\";\"other\"\n\"1807119\";\"Huang-t’u-chai\";\"other\"\n\"1807119\";\"Huang-t’u-chai-chen\";\"other\"\n\"1807119\";\"Hwangtuchai\";\"other\"\n\"1807119\";\"Yang-ch'u\";\"other\"\n\"1807119\";\"Yang-ch’ü\";\"other\"\n\"1807119\";\"Yangqu\";\"other\"\n\"1807119\";\"huang zhai\";\"other\"\n\"1807119\";\"黄寨\";\"other\"\n\"1807123\";\"Huangze\";\"main\"\n\"1807123\";\"Huang-tse\";\"other\"\n\"1807123\";\"Huang-tse-chen\";\"other\"\n\"1807123\";\"Huangze Zhen\";\"other\"\n\"1807123\";\"huang ze\";\"other\"\n\"1807123\";\"黄泽\";\"other\"\n\"1807123\";\"黄泽镇\";\"other\"\n\"1807143\";\"Huangyan\";\"main\"\n\"1807143\";\"Huang-yen\";\"other\"\n\"1807143\";\"Huang-yen-hsien\";\"other\"\n\"1807143\";\"Huang-yen-hsien-ch'eng\";\"other\"\n\"1807143\";\"Huang-yen-hsien-ch’eng\";\"other\"\n\"1807143\";\"Hwang-yen-hsien\";\"other\"\n\"1807143\";\"Hwangyen\";\"other\"\n\"1807150\";\"Huangxikou\";\"main\"\n\"1807150\";\"Huang-hsi-k'ou\";\"other\"\n\"1807150\";\"Huang-hsi-k’ou\";\"other\"\n\"1807175\";\"Huangtukuang\";\"main\"\n\"1807175\";\"Huang-t'u-t'ang\";\"other\"\n\"1807175\";\"Huang-t’u-t’ang\";\"other\"\n\"1807175\";\"Huangtukeng\";\"other\"\n\"1807175\";\"Khuantuken\";\"other\"\n\"1807186\";\"Huangtu\";\"main\"\n\"1807186\";\"Heng-kung-chen\";\"other\"\n\"1807186\";\"Heng-t'u\";\"other\"\n\"1807186\";\"Heng-t’u\";\"other\"\n\"1807186\";\"Huangtuzhen\";\"other\"\n\"1807186\";\"璜土\";\"other\"\n\"1807186\";\"璜土镇\";\"other\"\n\"1807194\";\"Huangtian\";\"main\"\n\"1807194\";\"Huangtian Zhen\";\"other\"\n\"1807194\";\"黄田\";\"other\"\n\"1807194\";\"黄田镇\";\"other\"\n\"1807206\";\"Huangtang\";\"main\"\n\"1807206\";\"Huang-t'ang-hsu\";\"other\"\n\"1807206\";\"Huang-t’ang-hsü\";\"other\"\n\"1807206\";\"Huangtang Zhen\";\"other\"\n\"1807206\";\"黄塘\";\"other\"\n\"1807206\";\"黄塘镇\";\"other\"\n\"1807210\";\"Huangtan\";\"main\"\n\"1807210\";\"Heng-t'an\";\"other\"\n\"1807210\";\"Heng-t'an-shih\";\"other\"\n\"1807210\";\"Heng-t’an\";\"other\"\n\"1807210\";\"Heng-t’an-shih\";\"other\"\n\"1807210\";\"Huang-t'an\";\"other\"\n\"1807210\";\"Huang-t’an\";\"other\"\n\"1807210\";\"Huangtan Zhen\";\"other\"\n\"1807210\";\"黄坛\";\"other\"\n\"1807210\";\"黄坛镇\";\"other\"\n\"1807211\";\"Huangtan\";\"main\"\n\"1807211\";\"Huangtan Zhen\";\"other\"\n\"1807211\";\"黄潭\";\"other\"\n\"1807211\";\"黄潭镇\";\"other\"\n\"1807230\";\"Huangshi\";\"main\"\n\"1807230\";\"Huang-shih\";\"other\"\n\"1807230\";\"Huang-shih-kuan\";\"other\"\n\"1807230\";\"Huangshi Zhen\";\"other\"\n\"1807230\";\"Huangshiguan\";\"other\"\n\"1807230\";\"黄石\";\"other\"\n\"1807230\";\"黄石乡\";\"other\"\n\"1807234\";\"Huangshi\";\"main\"\n\"1807234\";\"Huan-shi\";\"other\"\n\"1807234\";\"Huan-shih\";\"other\"\n\"1807234\";\"Huang-shih\";\"other\"\n\"1807234\";\"Huang-shih-shih\";\"other\"\n\"1807234\";\"Hwangshih\";\"other\"\n\"1807234\";\"Khuanshi\";\"other\"\n\"1807234\";\"Shi hui yao\";\"other\"\n\"1807234\";\"Shi-hu-yao\";\"other\"\n\"1807234\";\"Shihhweiyao\";\"other\"\n\"1807234\";\"Shihpao\";\"other\"\n\"1807234\";\"Shikhoyya\";\"other\"\n\"1807234\";\"Хуанши\";\"other\"\n\"1807258\";\"Huangshan\";\"main\"\n\"1807258\";\"Huangshan Zhen\";\"other\"\n\"1807258\";\"huang shan\";\"other\"\n\"1807258\";\"璜山\";\"other\"\n\"1807258\";\"璜山镇\";\"other\"\n\"1807259\";\"Huangshan\";\"main\"\n\"1807259\";\"huang shan\";\"other\"\n\"1807259\";\"黄山\";\"other\"\n\"1807270\";\"Huangsha\";\"main\"\n\"1807270\";\"Huang-sha-chen\";\"other\"\n\"1807270\";\"Huangsha Zhen\";\"other\"\n\"1807270\";\"黄沙\";\"other\"\n\"1807270\";\"黄沙镇\";\"other\"\n\"1807283\";\"Huangqiao\";\"main\"\n\"1807283\";\"Huang-ch'iao\";\"other\"\n\"1807283\";\"Huang-ch'iao-chen\";\"other\"\n\"1807283\";\"Huang-ch’iao\";\"other\"\n\"1807283\";\"Huang-ch’iao-chen\";\"other\"\n\"1807283\";\"Huangqiao Zhen\";\"other\"\n\"1807283\";\"Hwangkiao\";\"other\"\n\"1807283\";\"Wangkia\";\"other\"\n\"1807283\";\"黄桥\";\"other\"\n\"1807283\";\"黄桥镇\";\"other\"\n\"1807285\";\"Huangqiao\";\"main\"\n\"1807285\";\"Huang-ch'iao\";\"other\"\n\"1807285\";\"Huang-ch'iao-p'u\";\"other\"\n\"1807285\";\"Huang-ch’iao\";\"other\"\n\"1807285\";\"Huang-ch’iao-p’u\";\"other\"\n\"1807287\";\"Huangqiang\";\"main\"\n\"1807287\";\"huang qiang\";\"other\"\n\"1807287\";\"黄羌\";\"other\"\n\"1807301\";\"Dasha\";\"main\"\n\"1807301\";\"Huangpu\";\"other\"\n\"1807301\";\"Whampoa\";\"other\"\n\"1807301\";\"Даша\";\"other\"\n\"1807301\";\"大沙\";\"other\"\n\"1807308\";\"Huangpi\";\"main\"\n\"1807308\";\"Huang-p'o\";\"other\"\n\"1807308\";\"Huang-pei\";\"other\"\n\"1807308\";\"Huang-pei-hsien\";\"other\"\n\"1807308\";\"Huang-p’o\";\"other\"\n\"1807308\";\"Hwangpei\";\"other\"\n\"1807308\";\"Hwangpei-hsien\";\"other\"\n\"1807339\";\"Huangmei\";\"main\"\n\"1807339\";\"Huang-mei-hsien\";\"other\"\n\"1807339\";\"Hwangmei\";\"other\"\n\"1807339\";\"Hwangmei-hsien\";\"other\"\n\"1807339\";\"黄梅\";\"other\"\n\"1807341\";\"Huangmaoyuan\";\"main\"\n\"1807352\";\"Huangludian\";\"main\"\n\"1807352\";\"Huang-lu-tien\";\"other\"\n\"1807352\";\"Huangludian Zhen\";\"other\"\n\"1807352\";\"huang lu dian\";\"other\"\n\"1807352\";\"huang lu dian zhen\";\"other\"\n\"1807352\";\"皇路店\";\"other\"\n\"1807352\";\"皇路店镇\";\"other\"\n\"1807369\";\"Huanglong\";\"main\"\n\"1807369\";\"Huang-lung-p'u\";\"other\"\n\"1807369\";\"Huang-lung-p’u\";\"other\"\n\"1807369\";\"Huang-lung-ts'un\";\"other\"\n\"1807369\";\"Huang-lung-ts’un\";\"other\"\n\"1807409\";\"Huangjinjing\";\"main\"\n\"1807409\";\"Huang-chin-ching\";\"other\"\n\"1807413\";\"Huangjindong\";\"main\"\n\"1807413\";\"Huangjindong Xiang\";\"other\"\n\"1807413\";\"huang jin dong\";\"other\"\n\"1807413\";\"huang jin dong xiang\";\"other\"\n\"1807413\";\"黄金洞\";\"other\"\n\"1807413\";\"黄金洞乡\";\"other\"\n\"1807416\";\"Huangjinbu\";\"main\"\n\"1807416\";\"Huang-chin-fou\";\"other\"\n\"1807416\";\"Huang-chin-pu\";\"other\"\n\"1807416\";\"Huangjinbu Zhen\";\"other\"\n\"1807416\";\"Hwangkinfow\";\"other\"\n\"1807416\";\"黄金埠\";\"other\"\n\"1807416\";\"黄金埠镇\";\"other\"\n\"1807460\";\"Huanghuatan\";\"main\"\n\"1807460\";\"Huanghuatan Xiang\";\"other\"\n\"1807460\";\"黄花滩\";\"other\"\n\"1807460\";\"黄花滩乡\";\"other\"\n\"1807464\";\"Huanghuai\";\"main\"\n\"1807464\";\"Huanghuai Zhen\";\"other\"\n\"1807464\";\"huang huai\";\"other\"\n\"1807464\";\"黄槐\";\"other\"\n\"1807508\";\"Huanggang\";\"main\"\n\"1807508\";\"Huang-kang\";\"other\"\n\"1807508\";\"Huang-kang-ch'eng\";\"other\"\n\"1807508\";\"Huang-kang-chen\";\"other\"\n\"1807508\";\"Huang-kang-ch’eng\";\"other\"\n\"1807508\";\"Huanggang Zhen\";\"other\"\n\"1807508\";\"Jao-p'ing\";\"other\"\n\"1807508\";\"Jao-p’ing\";\"other\"\n\"1807508\";\"Khuangan\";\"other\"\n\"1807508\";\"Ng kng\";\"other\"\n\"1807508\";\"Raoping\";\"other\"\n\"1807508\";\"Ung Kung\";\"other\"\n\"1807508\";\"Хуанган\";\"other\"\n\"1807508\";\"黄冈\";\"other\"\n\"1807518\";\"Huangfang\";\"main\"\n\"1807518\";\"Huangfang Xiang\";\"other\"\n\"1807518\";\"黄坊\";\"other\"\n\"1807518\";\"黄坊乡\";\"other\"\n\"1807520\";\"Huangduobu\";\"main\"\n\"1807520\";\"Huangduobu Xiang\";\"other\"\n\"1807520\";\"黄铎堡\";\"other\"\n\"1807520\";\"黄铎堡乡\";\"other\"\n\"1807540\";\"Huangdao\";\"main\"\n\"1807540\";\"Huang-tao\";\"other\"\n\"1807540\";\"Huang-tao-chen\";\"other\"\n\"1807540\";\"huang dao\";\"other\"\n\"1807540\";\"黄道\";\"other\"\n\"1807544\";\"Daxing\";\"main\"\n\"1807544\";\"Dasin\";\"other\"\n\"1807544\";\"Huang-ts'un\";\"other\"\n\"1807544\";\"Huang-ts'un-chen\";\"other\"\n\"1807544\";\"Huang-ts’un\";\"other\"\n\"1807544\";\"Huang-ts’un-chen\";\"other\"\n\"1807544\";\"Huangcun\";\"other\"\n\"1807544\";\"Ta-hsing\";\"other\"\n\"1807544\";\"Ta-hsing-hsien\";\"other\"\n\"1807544\";\"Дасин\";\"other\"\n\"1807550\";\"Huangcun\";\"main\"\n\"1807550\";\"Huang-ts'un\";\"other\"\n\"1807550\";\"Huang-ts’un\";\"other\"\n\"1807550\";\"Huangcun Zhen\";\"other\"\n\"1807550\";\"黄村\";\"other\"\n\"1807550\";\"黄村镇\";\"other\"\n\"1807553\";\"Huangchuan\";\"main\"\n\"1807553\";\"Huang-ch'uan-hsien\";\"other\"\n\"1807553\";\"Huang-chou\";\"other\"\n\"1807553\";\"Huang-ch’uan-hsien\";\"other\"\n\"1807553\";\"Hwangchwan\";\"other\"\n\"1807553\";\"Hwangchwan-hsien\";\"other\"\n\"1807553\";\"Hwangehwan\";\"other\"\n\"1807553\";\"Kuang-chou\";\"other\"\n\"1807553\";\"Kwangchow\";\"other\"\n\"1807562\";\"Huangcaotuo\";\"main\"\n\"1807581\";\"Huangbei\";\"main\"\n\"1807581\";\"Huang-p'o\";\"other\"\n\"1807581\";\"Huang-pei\";\"other\"\n\"1807581\";\"Huang-p’o\";\"other\"\n\"1807581\";\"Huangbei Zhen\";\"other\"\n\"1807581\";\"黄陂\";\"other\"\n\"1807581\";\"黄陂镇\";\"other\"\n\"1807582\";\"Huangbei\";\"main\"\n\"1807582\";\"Huang-p'o\";\"other\"\n\"1807582\";\"Huang-pei\";\"other\"\n\"1807582\";\"Huang-pei-hsu\";\"other\"\n\"1807582\";\"Huang-pei-hsü\";\"other\"\n\"1807582\";\"Huang-p’o\";\"other\"\n\"1807582\";\"Huangbei Zhen\";\"other\"\n\"1807582\";\"Wongpo\";\"other\"\n\"1807582\";\"huang po\";\"other\"\n\"1807582\";\"黄陂\";\"other\"\n\"1807598\";\"Hong’an Chengguanzhen\";\"main\"\n\"1807598\";\"Hong'an Chengguanzhen\";\"ascii\"\n\"1807598\";\"Chengguan Zhen\";\"other\"\n\"1807598\";\"Hong'an\";\"other\"\n\"1807598\";\"Hong'an Xian\";\"other\"\n\"1807598\";\"Hong’an\";\"other\"\n\"1807598\";\"Hong’an Xian\";\"other\"\n\"1807598\";\"Huang'an\";\"other\"\n\"1807598\";\"Huang-an-hsien\";\"other\"\n\"1807598\";\"Huang’an\";\"other\"\n\"1807598\";\"Hung-an\";\"other\"\n\"1807598\";\"Hwangan\";\"other\"\n\"1807598\";\"Hwanganhsien\";\"other\"\n\"1807598\";\"hong an cheng guan zhen\";\"other\"\n\"1807598\";\"红安城关镇\";\"other\"\n\"1807599\";\"Huanfeng\";\"main\"\n\"1807599\";\"Han-shan-hsien\";\"other\"\n\"1807599\";\"huan feng\";\"other\"\n\"1807599\";\"环峰\";\"other\"\n\"1807603\";\"Huancheng\";\"main\"\n\"1807603\";\"Huai-hsien\";\"other\"\n\"1807603\";\"Huan\";\"other\"\n\"1807603\";\"Huan-hsien\";\"other\"\n\"1807603\";\"Huancheng Zhen\";\"other\"\n\"1807603\";\"Huanxian\";\"other\"\n\"1807603\";\"Khuan'syan'\";\"other\"\n\"1807603\";\"Khuan’syan’\";\"other\"\n\"1807603\";\"环城\";\"other\"\n\"1807603\";\"环城镇\";\"other\"\n\"1807634\";\"Huajialing\";\"main\"\n\"1807634\";\"华家岭\";\"other\"\n\"1807645\";\"Huaiyuan Chengguanzhen\";\"main\"\n\"1807645\";\"Huai-yuan-hsien\";\"other\"\n\"1807645\";\"Huai-yüan-hsien\";\"other\"\n\"1807645\";\"Huaiyuan\";\"other\"\n\"1807645\";\"Hwaiyuan\";\"other\"\n\"1807645\";\"Hwaiyuanhsien\";\"other\"\n\"1807645\";\"Hwaiyüan\";\"other\"\n\"1807645\";\"怀远城关镇\";\"other\"\n\"1807653\";\"Huaiya\";\"main\"\n\"1807653\";\"Huai-ya-chen\";\"other\"\n\"1807653\";\"Huaiya Zhen\";\"other\"\n\"1807653\";\"槐芽\";\"other\"\n\"1807653\";\"槐芽镇\";\"other\"\n\"1807654\";\"Huaitu\";\"main\"\n\"1807654\";\"淮土\";\"other\"\n\"1807671\";\"Yunzhong\";\"main\"\n\"1807671\";\"Huai-jen\";\"other\"\n\"1807671\";\"Huai-jen-chen\";\"other\"\n\"1807671\";\"Huai-jen-hsien\";\"other\"\n\"1807671\";\"Huairen Xian\";\"other\"\n\"1807671\";\"Hwaijensha\";\"other\"\n\"1807671\";\"Yunzhong Zhen\";\"other\"\n\"1807671\";\"yun zhong\";\"other\"\n\"1807671\";\"云中\";\"other\"\n\"1807671\";\"云中镇\";\"other\"\n\"1807671\";\"怀仁县\";\"other\"\n\"1807681\";\"Huainan\";\"main\"\n\"1807687\";\"Huaicheng\";\"main\"\n\"1807687\";\"Huai-ch'eng-chen\";\"other\"\n\"1807687\";\"Huai-chi\";\"other\"\n\"1807687\";\"Huai-chi-hsien\";\"other\"\n\"1807687\";\"Huai-ch’eng-chen\";\"other\"\n\"1807687\";\"Huaiji\";\"other\"\n\"1807687\";\"Waitsap\";\"other\"\n\"1807687\";\"Waitsap-hsien\";\"other\"\n\"1807687\";\"怀城\";\"other\"\n\"1807689\";\"Huaihua\";\"main\"\n\"1807689\";\"Khuajkhua\";\"other\"\n\"1807689\";\"Yu-shu-wan-chen\";\"other\"\n\"1807689\";\"Yushuwan\";\"other\"\n\"1807689\";\"Yü-shu-wan-chen\";\"other\"\n\"1807689\";\"Хуайхуа\";\"other\"\n\"1807695\";\"Huaidian\";\"main\"\n\"1807695\";\"Huai-tien\";\"other\"\n\"1807695\";\"Huai-tien-chen\";\"other\"\n\"1807695\";\"Khuaydyan\";\"other\"\n\"1807695\";\"Shen-ch'iu\";\"other\"\n\"1807695\";\"Shen-ch’iu\";\"other\"\n\"1807695\";\"Shenqiu\";\"other\"\n\"1807697\";\"Huaidao\";\"main\"\n\"1807697\";\"Huai-tao\";\"other\"\n\"1807697\";\"Huaidao Xiang\";\"other\"\n\"1807697\";\"怀道\";\"other\"\n\"1807697\";\"怀道乡\";\"other\"\n\"1807700\";\"Huaibei\";\"main\"\n\"1807700\";\"Hsu-kou\";\"other\"\n\"1807700\";\"Hsü-kou\";\"other\"\n\"1807700\";\"Huai-pei\";\"other\"\n\"1807700\";\"Huai-pei-shih\";\"other\"\n\"1807700\";\"Khuajbehj\";\"other\"\n\"1807700\";\"Sui-hsi-shih\";\"other\"\n\"1807700\";\"huai bei\";\"other\"\n\"1807700\";\"huai bei shi\";\"other\"\n\"1807700\";\"Хуайбэй\";\"other\"\n\"1807700\";\"淮北\";\"other\"\n\"1807700\";\"淮北市\";\"other\"\n\"1807723\";\"Huagai\";\"main\"\n\"1807723\";\"hua gai\";\"other\"\n\"1807723\";\"花荄\";\"other\"\n\"1807727\";\"Huafeng\";\"main\"\n\"1807727\";\"Hua'an\";\"other\"\n\"1807727\";\"Hua-an-hsien\";\"other\"\n\"1807727\";\"Hua-feng-chen\";\"other\"\n\"1807727\";\"Hua’an\";\"other\"\n\"1807727\";\"Hwaan\";\"other\"\n\"1807727\";\"Hwafeng\";\"other\"\n\"1807727\";\"hua feng\";\"other\"\n\"1807727\";\"华丰\";\"other\"\n\"1807737\";\"Huacheng\";\"main\"\n\"1807737\";\"Majinpu\";\"other\"\n\"1807737\";\"Majinpu Xiang\";\"other\"\n\"1807737\";\"hua cheng\";\"other\"\n\"1807737\";\"ma jin pu\";\"other\"\n\"1807737\";\"ma jin pu xiang\";\"other\"\n\"1807737\";\"化城\";\"other\"\n\"1807737\";\"马金铺\";\"other\"\n\"1807737\";\"马金铺乡\";\"other\"\n\"1807746\";\"Huabeitun\";\"main\"\n\"1807746\";\"Hua-pei-t'un\";\"other\"\n\"1807746\";\"Hua-pei-ts'un\";\"other\"\n\"1807746\";\"Hua-pei-ts’un\";\"other\"\n\"1807746\";\"Hua-pei-t’un\";\"other\"\n\"1807746\";\"Huabeitun Xiang\";\"other\"\n\"1807746\";\"化北屯\";\"other\"\n\"1807746\";\"化北屯乡\";\"other\"\n\"1807763\";\"Houzhen\";\"main\"\n\"1807763\";\"Hou-chen\";\"other\"\n\"1807763\";\"Hou-tzu\";\"other\"\n\"1807763\";\"Hou-tzu-chen\";\"other\"\n\"1807763\";\"Houzizhen\";\"other\"\n\"1807763\";\"hou zhen\";\"other\"\n\"1807763\";\"厚镇\";\"other\"\n\"1807769\";\"Houzhai\";\"main\"\n\"1807769\";\"Hou-chai\";\"other\"\n\"1807769\";\"Hou-chai-chen\";\"other\"\n\"1807769\";\"Lung-ao\";\"other\"\n\"1807769\";\"Nan'ao\";\"other\"\n\"1807769\";\"Nan’ao\";\"other\"\n\"1807769\";\"hou zhai\";\"other\"\n\"1807769\";\"后宅\";\"other\"\n\"1807783\";\"Houxiang\";\"main\"\n\"1807793\";\"Housuo\";\"main\"\n\"1807793\";\"Hou-so\";\"other\"\n\"1807793\";\"Hou-so-ts'un\";\"other\"\n\"1807793\";\"Hou-so-ts’un\";\"other\"\n\"1807793\";\"Housuo Xiang\";\"other\"\n\"1807793\";\"后所\";\"other\"\n\"1807793\";\"后所乡\";\"other\"\n\"1807816\";\"Houmen\";\"main\"\n\"1807816\";\"Hau-men\";\"other\"\n\"1807816\";\"hou men\";\"other\"\n\"1807816\";\"鲘门\";\"other\"\n\"1807831\";\"Houjie\";\"main\"\n\"1807831\";\"Hou-chieh\";\"other\"\n\"1807831\";\"Houjie Zhen\";\"other\"\n\"1807831\";\"Howkai\";\"other\"\n\"1807831\";\"hou jie\";\"other\"\n\"1807831\";\"厚街\";\"other\"\n\"1807878\";\"Hougang\";\"main\"\n\"1807878\";\"Hougang Zhen\";\"other\"\n\"1807878\";\"后港\";\"other\"\n\"1807878\";\"后港镇\";\"other\"\n\"1807910\";\"Hor\";\"main\"\n\"1807910\";\"Heri\";\"other\"\n\"1807910\";\"Heri Xiang\";\"other\"\n\"1807910\";\"Ho-jih\";\"other\"\n\"1807910\";\"和日\";\"other\"\n\"1807916\";\"Hongzhou\";\"main\"\n\"1807916\";\"Hung-chou\";\"other\"\n\"1807936\";\"Hongyang\";\"main\"\n\"1807936\";\"Hung-yang\";\"other\"\n\"1807943\";\"Hongyanxi\";\"main\"\n\"1807943\";\"Hongyan\";\"other\"\n\"1807943\";\"Hongyanxi Xiang\";\"other\"\n\"1807943\";\"Hongyanxi Zhen\";\"other\"\n\"1807943\";\"Hung-yen\";\"other\"\n\"1807943\";\"hong yan xi\";\"other\"\n\"1807943\";\"hong yan xi xiang\";\"other\"\n\"1807943\";\"hong yan xi zhen\";\"other\"\n\"1807943\";\"红岩溪\";\"other\"\n\"1807943\";\"红岩溪乡\";\"other\"\n\"1807943\";\"红岩溪镇\";\"other\"\n\"1807966\";\"Hongxi\";\"main\"\n\"1807966\";\"Hong-ch'i-chen\";\"other\"\n\"1807966\";\"Hong-ch’i-chen\";\"other\"\n\"1807966\";\"Hongxi Zhen\";\"other\"\n\"1807966\";\"hong xi\";\"other\"\n\"1807966\";\"hong xi zhen\";\"other\"\n\"1807966\";\"虹溪\";\"other\"\n\"1807966\";\"虹溪镇\";\"other\"\n\"1807981\";\"Dahuaishu\";\"main\"\n\"1807981\";\"Hongtong\";\"other\"\n\"1807981\";\"Hung-chao\";\"other\"\n\"1807981\";\"Hung-chao-hsien\";\"other\"\n\"1807981\";\"Hung-tung\";\"other\"\n\"1807981\";\"Hung-tung-hsien\";\"other\"\n\"1807981\";\"Khundun\";\"other\"\n\"1807981\";\"da huai shu\";\"other\"\n\"1807981\";\"大槐树\";\"other\"\n\"1807987\";\"Hongtang\";\"main\"\n\"1807987\";\"Hongtang Zhen\";\"other\"\n\"1807987\";\"Hongtangxiang\";\"other\"\n\"1807987\";\"Hung-t'ang-hsiang\";\"other\"\n\"1807987\";\"Hung-t’ang-hsiang\";\"other\"\n\"1807987\";\"hong tang\";\"other\"\n\"1807987\";\"hong tang zhen\";\"other\"\n\"1807987\";\"洪塘\";\"other\"\n\"1807987\";\"洪塘镇\";\"other\"\n\"1808087\";\"Honglan\";\"main\"\n\"1808087\";\"Honglan Zhen\";\"other\"\n\"1808087\";\"Hung-lan\";\"other\"\n\"1808087\";\"Hung-lan-fou\";\"other\"\n\"1808087\";\"hong lan\";\"other\"\n\"1808087\";\"hong lan zhen\";\"other\"\n\"1808087\";\"洪蓝\";\"other\"\n\"1808087\";\"洪蓝镇\";\"other\"\n\"1808106\";\"Hongjiang\";\"main\"\n\"1808106\";\"Ch'ien-yang\";\"other\"\n\"1808106\";\"Ch’ien-yang\";\"other\"\n\"1808106\";\"Hung-chiang\";\"other\"\n\"1808106\";\"Hung-chiang-chen\";\"other\"\n\"1808106\";\"Hung-chiang-shih\";\"other\"\n\"1808106\";\"Hungkiang\";\"other\"\n\"1808106\";\"Khuntszyan\";\"other\"\n\"1808110\";\"Hongjiaguan\";\"main\"\n\"1808110\";\"Hongjiaguan Baizuxiang\";\"other\"\n\"1808110\";\"Hung-chia-kuan\";\"other\"\n\"1808110\";\"hong jia guan\";\"other\"\n\"1808110\";\"hong jia guan bai zu xiang\";\"other\"\n\"1808110\";\"洪家关\";\"other\"\n\"1808110\";\"洪家关白族乡\";\"other\"\n\"1808154\";\"Hongde\";\"main\"\n\"1808154\";\"Hongde Xiang\";\"other\"\n\"1808154\";\"Hung-te\";\"other\"\n\"1808154\";\"Hung-te-ch'eng\";\"other\"\n\"1808154\";\"Hung-te-ch’eng\";\"other\"\n\"1808154\";\"Hung-to-tsch'ong\";\"other\"\n\"1808154\";\"Hung-tö-tsch’öng\";\"other\"\n\"1808154\";\"Hungtu\";\"other\"\n\"1808154\";\"Khunde\";\"other\"\n\"1808154\";\"Kung-te-ch'eng\";\"other\"\n\"1808154\";\"Kung-te-ch’eng\";\"other\"\n\"1808154\";\"洪德\";\"other\"\n\"1808154\";\"洪德乡\";\"other\"\n\"1808163\";\"Hongchuan\";\"main\"\n\"1808163\";\"Hongchuan Zhen\";\"other\"\n\"1808163\";\"红川\";\"other\"\n\"1808163\";\"红川镇\";\"other\"\n\"1808180\";\"Hezuoqiao\";\"main\"\n\"1808180\";\"Hezuoqiao Xiang\";\"other\"\n\"1808180\";\"he zuo qiao\";\"other\"\n\"1808180\";\"he zuo qiao xiang\";\"other\"\n\"1808180\";\"合作桥\";\"other\"\n\"1808180\";\"合作桥乡\";\"other\"\n\"1808181\";\"Hezuo\";\"main\"\n\"1808181\";\"Hei-ts'o\";\"other\"\n\"1808181\";\"Hei-ts’o\";\"other\"\n\"1808181\";\"Hezuo Shi\";\"other\"\n\"1808181\";\"Hezuo Zhen\";\"other\"\n\"1808181\";\"Hezuozhen\";\"other\"\n\"1808181\";\"Ho-tso\";\"other\"\n\"1808181\";\"Hu-yen-k'eng-erh\";\"other\"\n\"1808181\";\"Hu-yen-k’eng-erh\";\"other\"\n\"1808181\";\"Khuyankor\";\"other\"\n\"1808181\";\"Khuyankyr\";\"other\"\n\"1808181\";\"Khuyankör\";\"other\"\n\"1808181\";\"Te-wu-lu\";\"other\"\n\"1808181\";\"Te-wu-lu-shih\";\"other\"\n\"1808181\";\"合作\";\"other\"\n\"1808181\";\"合作市\";\"other\"\n\"1808181\";\"合作镇\";\"other\"\n\"1808189\";\"Hezhi\";\"main\"\n\"1808189\";\"Hezhi Xiang\";\"other\"\n\"1808189\";\"Ho-chih\";\"other\"\n\"1808189\";\"Ho-chih-ts'un\";\"other\"\n\"1808189\";\"Ho-chih-ts’un\";\"other\"\n\"1808189\";\"贺职\";\"other\"\n\"1808189\";\"贺职乡\";\"other\"\n\"1808198\";\"Heze\";\"main\"\n\"1808198\";\"Caozhou\";\"other\"\n\"1808198\";\"He-tse\";\"other\"\n\"1808198\";\"Ho-tse\";\"other\"\n\"1808198\";\"Ho-tse-shih\";\"other\"\n\"1808198\";\"Hotseh\";\"other\"\n\"1808198\";\"Hotseh-hsien\";\"other\"\n\"1808198\";\"Hê-tse\";\"other\"\n\"1808198\";\"Ko-tse\";\"other\"\n\"1808198\";\"Ko-tse-hsien\";\"other\"\n\"1808198\";\"Ts'ao-chou\";\"other\"\n\"1808198\";\"Ts'aochow\";\"other\"\n\"1808198\";\"Tsaochowfu\";\"other\"\n\"1808198\";\"Ts’ao-chou\";\"other\"\n\"1808198\";\"Ts’aochow\";\"other\"\n\"1808198\";\"he ze\";\"other\"\n\"1808198\";\"he ze shi\";\"other\"\n\"1808198\";\"菏泽\";\"other\"\n\"1808198\";\"菏泽市\";\"other\"\n\"1808212\";\"Hechuan\";\"main\"\n\"1808212\";\"Heyang\";\"other\"\n\"1808212\";\"Ho-ch'uan\";\"other\"\n\"1808212\";\"Ho-ch'uan-hsien\";\"other\"\n\"1808212\";\"Ho-ch'uan-shih\";\"other\"\n\"1808212\";\"Ho-chou\";\"other\"\n\"1808212\";\"Ho-ch’uan\";\"other\"\n\"1808212\";\"Ho-ch’uan-hsien\";\"other\"\n\"1808212\";\"Ho-ch’uan-shih\";\"other\"\n\"1808212\";\"Hochow\";\"other\"\n\"1808212\";\"Hochwan\";\"other\"\n\"1808212\";\"Hochwan-hsien\";\"other\"\n\"1808220\";\"Hexing\";\"main\"\n\"1808220\";\"Hexing Xiang\";\"other\"\n\"1808220\";\"和兴\";\"other\"\n\"1808220\";\"和兴乡\";\"other\"\n\"1808228\";\"Hexiangqiao\";\"main\"\n\"1808228\";\"Ho-hsiang-ch'iao\";\"other\"\n\"1808228\";\"Ho-hsiang-ch’iao\";\"other\"\n\"1808237\";\"Hexi\";\"main\"\n\"1808237\";\"Ho-hsi\";\"other\"\n\"1808237\";\"Ho-hsi-fang\";\"other\"\n\"1808237\";\"河西\";\"other\"\n\"1808251\";\"Hetou\";\"main\"\n\"1808251\";\"Hetou Xiang\";\"other\"\n\"1808251\";\"Ho-t'ou\";\"other\"\n\"1808251\";\"Ho-t’ou\";\"other\"\n\"1808251\";\"河头\";\"other\"\n\"1808251\";\"河头乡\";\"other\"\n\"1808253\";\"Hetou\";\"main\"\n\"1808253\";\"Hetou Zhen\";\"other\"\n\"1808253\";\"Ho-t'ou\";\"other\"\n\"1808253\";\"Ho-t'ou-chen\";\"other\"\n\"1808253\";\"Ho-t’ou\";\"other\"\n\"1808253\";\"Ho-t’ou-chen\";\"other\"\n\"1808253\";\"he tou\";\"other\"\n\"1808253\";\"河头\";\"other\"\n\"1808253\";\"河头镇\";\"other\"\n\"1808258\";\"Hetian\";\"main\"\n\"1808258\";\"Hetian Zhen\";\"other\"\n\"1808258\";\"Ho-t'ien\";\"other\"\n\"1808258\";\"Ho-t'ien-hsun\";\"other\"\n\"1808258\";\"Ho-t’ien\";\"other\"\n\"1808258\";\"Ho-t’ien-hsün\";\"other\"\n\"1808258\";\"Hotein\";\"other\"\n\"1808258\";\"河田\";\"other\"\n\"1808258\";\"河田镇\";\"other\"\n\"1808259\";\"Hetian\";\"main\"\n\"1808259\";\"Ho-t'ien\";\"other\"\n\"1808259\";\"Ho-t'ien-hsu\";\"other\"\n\"1808259\";\"Ho-t’ien\";\"other\"\n\"1808259\";\"Ho-t’ien-hsü\";\"other\"\n\"1808259\";\"Hotin\";\"other\"\n\"1808259\";\"he tian\";\"other\"\n\"1808259\";\"河田\";\"other\"\n\"1808268\";\"Hetang\";\"main\"\n\"1808268\";\"Ho-tang\";\"other\"\n\"1808274\";\"Yixing\";\"main\"\n\"1808274\";\"Heshun\";\"other\"\n\"1808274\";\"Ho-shun\";\"other\"\n\"1808274\";\"Ho-shun-hsien\";\"other\"\n\"1808274\";\"Kheshun\";\"other\"\n\"1808274\";\"yi xing\";\"other\"\n\"1808274\";\"义兴\";\"other\"\n\"1808296\";\"Heshi\";\"main\"\n\"1808296\";\"Heshi Zhen\";\"other\"\n\"1808296\";\"合市\";\"other\"\n\"1808296\";\"合市镇\";\"other\"\n\"1808298\";\"Heshi\";\"main\"\n\"1808298\";\"Hao-shih\";\"other\"\n\"1808298\";\"Hao-shu-xia\";\"other\"\n\"1808298\";\"Heshi Zhen\";\"other\"\n\"1808298\";\"Ho-shih\";\"other\"\n\"1808298\";\"Hokschua\";\"other\"\n\"1808298\";\"鹤市\";\"other\"\n\"1808298\";\"鹤市镇\";\"other\"\n\"1808301\";\"Heshengbao\";\"main\"\n\"1808301\";\"Heshengbao Xiang\";\"other\"\n\"1808301\";\"Heshengbu\";\"other\"\n\"1808301\";\"Ho-sheng-pao\";\"other\"\n\"1808301\";\"合盛堡\";\"other\"\n\"1808301\";\"合盛堡乡\";\"other\"\n\"1808308\";\"Heshang\";\"main\"\n\"1808308\";\"Heshang Zhen\";\"other\"\n\"1808308\";\"Ho-chen\";\"other\"\n\"1808308\";\"Ho-shang-chen\";\"other\"\n\"1808308\";\"Ho-shang-tien\";\"other\"\n\"1808308\";\"he shang zhen\";\"other\"\n\"1808308\";\"河上\";\"other\"\n\"1808308\";\"河上镇\";\"other\"\n\"1808316\";\"Yiyang\";\"main\"\n\"1808316\";\"Heshan\";\"other\"\n\"1808316\";\"I-yang\";\"other\"\n\"1808316\";\"I-yang-ch'eng\";\"other\"\n\"1808316\";\"I-yang-ch’eng\";\"other\"\n\"1808316\";\"I-yang-hsien\";\"other\"\n\"1808316\";\"I-yang-shih\";\"other\"\n\"1808316\";\"I-yeng\";\"other\"\n\"1808316\";\"Ijan\";\"other\"\n\"1808316\";\"Yiyang-hsien\";\"other\"\n\"1808316\";\"Иян\";\"other\"\n\"1808323\";\"Wenbi\";\"main\"\n\"1808323\";\"Chiu-ho-ch'u\";\"other\"\n\"1808323\";\"Chiu-ho-ch’ü\";\"other\"\n\"1808323\";\"Hequ\";\"other\"\n\"1808323\";\"Ho-ch'u\";\"other\"\n\"1808323\";\"Ho-ch'u-ch'eng\";\"other\"\n\"1808323\";\"Ho-ch'u-hsien\";\"other\"\n\"1808323\";\"Ho-ch’ü\";\"other\"\n\"1808323\";\"Ho-ch’ü-ch’eng\";\"other\"\n\"1808323\";\"Ho-ch’ü-hsien\";\"other\"\n\"1808323\";\"Hoku\";\"other\"\n\"1808323\";\"Hokuhsien\";\"other\"\n\"1808323\";\"Hokü\";\"other\"\n\"1808323\";\"Hokühsien\";\"other\"\n\"1808323\";\"wen bi\";\"other\"\n\"1808323\";\"文笔\";\"other\"\n\"1808334\";\"Hepu\";\"main\"\n\"1808334\";\"Hepu Zhen\";\"other\"\n\"1808334\";\"Hepuzhen\";\"other\"\n\"1808334\";\"Ho-p'u\";\"other\"\n\"1808334\";\"Ho-p’u\";\"other\"\n\"1808334\";\"he pu zhen\";\"other\"\n\"1808334\";\"鹤浦\";\"other\"\n\"1808334\";\"鹤浦镇\";\"other\"\n\"1808336\";\"Hepo\";\"main\"\n\"1808336\";\"Chieh-hsi\";\"other\"\n\"1808336\";\"Ho-p'o\";\"other\"\n\"1808336\";\"Ho-p'o-hsu\";\"other\"\n\"1808336\";\"Ho-p’o\";\"other\"\n\"1808336\";\"Ho-p’o-hsü\";\"other\"\n\"1808336\";\"Jiexi\";\"other\"\n\"1808336\";\"Khehpo\";\"other\"\n\"1808336\";\"Хэпо\";\"other\"\n\"1808336\";\"河婆\";\"other\"\n\"1808345\";\"Hepingyizu\";\"main\"\n\"1808345\";\"Chin-k'ou-ho\";\"other\"\n\"1808345\";\"Chin-k’ou-ho\";\"other\"\n\"1808345\";\"Heping\";\"other\"\n\"1808345\";\"Jinkouhe\";\"other\"\n\"1808345\";\"Kinkowho\";\"other\"\n\"1808345\";\"he ping yi zu\";\"other\"\n\"1808345\";\"和平彝族\";\"other\"\n\"1808355\";\"Heping\";\"main\"\n\"1808355\";\"Ho-p'ing\";\"other\"\n\"1808355\";\"Ho-p’ing\";\"other\"\n\"1808355\";\"he ping\";\"other\"\n\"1808355\";\"和平\";\"other\"\n\"1808361\";\"Hengzhou\";\"main\"\n\"1808361\";\"Heng\";\"other\"\n\"1808361\";\"Heng-chou-chen\";\"other\"\n\"1808361\";\"Heng-hsien\";\"other\"\n\"1808361\";\"Hengchou\";\"other\"\n\"1808361\";\"Hengchow\";\"other\"\n\"1808361\";\"Hengxian\";\"other\"\n\"1808361\";\"heng zhou\";\"other\"\n\"1808361\";\"横州\";\"other\"\n\"1808370\";\"Hengyang\";\"main\"\n\"1808370\";\"Henchow\";\"other\"\n\"1808370\";\"Heng-chou\";\"other\"\n\"1808370\";\"Heng-nan\";\"other\"\n\"1808370\";\"Heng-nan-hsien\";\"other\"\n\"1808370\";\"Heng-yang-ch'eng\";\"other\"\n\"1808370\";\"Heng-yang-ch’eng\";\"other\"\n\"1808370\";\"Heng-yang-shih\";\"other\"\n\"1808370\";\"Hengchow\";\"other\"\n\"1808370\";\"Hengchowfu\";\"other\"\n\"1808370\";\"Hengyang-hsien\";\"other\"\n\"1808370\";\"Khehnujan\";\"other\"\n\"1808370\";\"Хэнъян\";\"other\"\n\"1808372\";\"Hengyan\";\"main\"\n\"1808372\";\"Heng-yen\";\"other\"\n\"1808372\";\"Heng-yen-chen\";\"other\"\n\"1808372\";\"heng yan\";\"other\"\n\"1808372\";\"横沿\";\"other\"\n\"1808374\";\"Hengxianhe\";\"main\"\n\"1808374\";\"Heng-hsien-ho\";\"other\"\n\"1808374\";\"Hengxianhe Zhen\";\"other\"\n\"1808374\";\"Hui-ch'ien-ho\";\"other\"\n\"1808374\";\"Hui-ch’ien-ho\";\"other\"\n\"1808374\";\"Hui-hsien-ho\";\"other\"\n\"1808374\";\"横现河\";\"other\"\n\"1808374\";\"横现河镇\";\"other\"\n\"1808377\";\"Hengxi\";\"main\"\n\"1808377\";\"Heng-ch'i\";\"other\"\n\"1808377\";\"Heng-ch'i-ch'iao\";\"other\"\n\"1808377\";\"Heng-ch’i\";\"other\"\n\"1808377\";\"Heng-ch’i-ch’iao\";\"other\"\n\"1808377\";\"Heng-hsi\";\"other\"\n\"1808377\";\"Hengxi Zhen\";\"other\"\n\"1808377\";\"heng xi\";\"other\"\n\"1808377\";\"heng xi zhen\";\"other\"\n\"1808377\";\"横溪\";\"other\"\n\"1808377\";\"横溪镇\";\"other\"\n\"1808378\";\"Hengxizhen\";\"main\"\n\"1808378\";\"Heng-hsi\";\"other\"\n\"1808378\";\"Heng-hsi-chen\";\"other\"\n\"1808378\";\"Hengxi\";\"other\"\n\"1808378\";\"Hengxi Zhen\";\"other\"\n\"1808378\";\"heng xi\";\"other\"\n\"1808378\";\"heng xi zhen\";\"other\"\n\"1808378\";\"横溪\";\"other\"\n\"1808378\";\"横溪镇\";\"other\"\n\"1808392\";\"Hengshui\";\"main\"\n\"1808392\";\"Heng-shui-ch'eng-kuan\";\"other\"\n\"1808392\";\"Heng-shui-ch’eng-kuan\";\"other\"\n\"1808392\";\"Heng-shui-hsien\";\"other\"\n\"1808392\";\"Khenshuy\";\"other\"\n\"1808392\";\"heng shui shi\";\"other\"\n\"1808392\";\"衡水市\";\"other\"\n\"1808398\";\"Hengshui\";\"main\"\n\"1808398\";\"Heng-shui-chen\";\"other\"\n\"1808398\";\"Hengshui Zhen\";\"other\"\n\"1808398\";\"横水\";\"other\"\n\"1808398\";\"横水镇\";\"other\"\n\"1808421\";\"Kaiyun\";\"main\"\n\"1808421\";\"Heng-shan-ch'eng\";\"other\"\n\"1808421\";\"Heng-shan-ch’eng\";\"other\"\n\"1808421\";\"Heng-shan-hsien\";\"other\"\n\"1808421\";\"Hengshan\";\"other\"\n\"1808421\";\"kai yun\";\"other\"\n\"1808421\";\"开云\";\"other\"\n\"1808431\";\"Hengqu\";\"main\"\n\"1808431\";\"Heng-ch'u\";\"other\"\n\"1808431\";\"Heng-ch'u-chen\";\"other\"\n\"1808431\";\"Heng-ch’ü\";\"other\"\n\"1808431\";\"Heng-ch’ü-chen\";\"other\"\n\"1808431\";\"Hengqu Zhen\";\"other\"\n\"1808431\";\"Khentsyuy\";\"other\"\n\"1808431\";\"横渠\";\"other\"\n\"1808431\";\"横渠镇\";\"other\"\n\"1808459\";\"Hengli\";\"main\"\n\"1808459\";\"Heng-li-hsu\";\"other\"\n\"1808459\";\"Heng-li-hsü\";\"other\"\n\"1808459\";\"Hengli Zhen\";\"other\"\n\"1808459\";\"Wanglik\";\"other\"\n\"1808459\";\"heng li\";\"other\"\n\"1808459\";\"横沥\";\"other\"\n\"1808468\";\"Hengjie\";\"main\"\n\"1808468\";\"Heng-chieh\";\"other\"\n\"1808468\";\"Hengjie Zhen\";\"other\"\n\"1808468\";\"heng jie\";\"other\"\n\"1808468\";\"heng jie zhen\";\"other\"\n\"1808468\";\"横街\";\"other\"\n\"1808468\";\"横街镇\";\"other\"\n\"1808474\";\"Hengjiang\";\"main\"\n\"1808474\";\"Heng-chiang\";\"other\"\n\"1808474\";\"Hengjiang Zhen\";\"other\"\n\"1808474\";\"Huang-chiang\";\"other\"\n\"1808474\";\"横江\";\"other\"\n\"1808474\";\"横江镇\";\"other\"\n\"1808476\";\"Hengjian\";\"main\"\n\"1808476\";\"Heng-chien\";\"other\"\n\"1808476\";\"Hengjian Xiang\";\"other\"\n\"1808476\";\"Hung-chien-ts'un\";\"other\"\n\"1808476\";\"Hung-chien-ts’un\";\"other\"\n\"1808476\";\"横涧\";\"other\"\n\"1808476\";\"横涧乡\";\"other\"\n\"1808486\";\"Henghe\";\"main\"\n\"1808486\";\"Heng-ho\";\"other\"\n\"1808486\";\"Heng-ho-shih\";\"other\"\n\"1808486\";\"Henghe Zhen\";\"other\"\n\"1808486\";\"横河\";\"other\"\n\"1808486\";\"横河镇\";\"other\"\n\"1808487\";\"Henghe\";\"main\"\n\"1808487\";\"Heng-ho\";\"other\"\n\"1808487\";\"Henghe Zhen\";\"other\"\n\"1808487\";\"heng he\";\"other\"\n\"1808487\";\"横河\";\"other\"\n\"1808496\";\"Henggang\";\"main\"\n\"1808496\";\"Heng-kang\";\"other\"\n\"1808496\";\"Heng-kang-hsu\";\"other\"\n\"1808496\";\"Heng-kang-hsü\";\"other\"\n\"1808496\";\"Henggang Jiedao\";\"other\"\n\"1808496\";\"Wangkong\";\"other\"\n\"1808496\";\"heng gang\";\"other\"\n\"1808496\";\"横岗\";\"other\"\n\"1808501\";\"Hengdong Chengguanzhen\";\"main\"\n\"1808501\";\"Heng-tung\";\"other\"\n\"1808501\";\"Hengdong\";\"other\"\n\"1808501\";\"Wu-chi\";\"other\"\n\"1808501\";\"heng dong cheng guan zhen\";\"other\"\n\"1808501\";\"衡东城关镇\";\"other\"\n\"1808505\";\"Hengdian\";\"main\"\n\"1808505\";\"Hengdian Zhen\";\"other\"\n\"1808505\";\"heng dian\";\"other\"\n\"1808505\";\"横店\";\"other\"\n\"1808505\";\"横店镇\";\"other\"\n\"1808518\";\"Hengbanqiao\";\"main\"\n\"1808518\";\"Heng-pan-ch'iao\";\"other\"\n\"1808518\";\"Heng-pan-ch’iao\";\"other\"\n\"1808566\";\"Hekou\";\"main\"\n\"1808566\";\"Hekou Zhen\";\"other\"\n\"1808566\";\"Ho-k'ou\";\"other\"\n\"1808566\";\"Ho-k'ou-chien\";\"other\"\n\"1808566\";\"Ho-k’ou\";\"other\"\n\"1808566\";\"Ho-k’ou-chien\";\"other\"\n\"1808566\";\"Kou-k'ou\";\"other\"\n\"1808566\";\"Kou-k’ou\";\"other\"\n\"1808566\";\"河口\";\"other\"\n\"1808566\";\"河口镇\";\"other\"\n\"1808576\";\"Pailou\";\"main\"\n\"1808576\";\"Hekou\";\"other\"\n\"1808576\";\"Hekou Xiang\";\"other\"\n\"1808576\";\"Ho-k'ou\";\"other\"\n\"1808576\";\"Ho-k’ou\";\"other\"\n\"1808576\";\"he kou xiang\";\"other\"\n\"1808576\";\"pai lou\";\"other\"\n\"1808576\";\"河口乡\";\"other\"\n\"1808576\";\"牌楼\";\"other\"\n\"1808585\";\"Hekou\";\"main\"\n\"1808585\";\"Ho-k'ou\";\"other\"\n\"1808585\";\"Ho-k'ou-hsu\";\"other\"\n\"1808585\";\"Ho-k’ou\";\"other\"\n\"1808585\";\"Ho-k’ou-hsü\";\"other\"\n\"1808585\";\"he kou\";\"other\"\n\"1808585\";\"河口\";\"other\"\n\"1808588\";\"Hekou\";\"main\"\n\"1808588\";\"Ho-k'ou\";\"other\"\n\"1808588\";\"Ho-k'ou-hsien\";\"other\"\n\"1808588\";\"Ho-k'ou-shih\";\"other\"\n\"1808588\";\"Ho-k'ou-yao-tsu-miao-tsu-tzu-chih-hsien\";\"other\"\n\"1808588\";\"Ho-k'ou-yao-tsu-tzu-chih-hsien\";\"other\"\n\"1808588\";\"Ho-k’ou\";\"other\"\n\"1808588\";\"Ho-k’ou-hsien\";\"other\"\n\"1808588\";\"Ho-k’ou-shih\";\"other\"\n\"1808588\";\"Ho-k’ou-yao-tsu-miao-tsu-tzu-chih-hsien\";\"other\"\n\"1808588\";\"Ho-k’ou-yao-tsu-tzu-chih-hsien\";\"other\"\n\"1808588\";\"Hokow\";\"other\"\n\"1808588\";\"Hokow-hsien\";\"other\"\n\"1808588\";\"he kou\";\"other\"\n\"1808588\";\"河口\";\"other\"\n\"1808600\";\"Hejiayan\";\"main\"\n\"1808600\";\"Hejiayan Zhen\";\"other\"\n\"1808600\";\"Ho-chia-ya\";\"other\"\n\"1808600\";\"Ho-chia-yai\";\"other\"\n\"1808600\";\"Ho-chia-yen\";\"other\"\n\"1808600\";\"何家岩\";\"other\"\n\"1808600\";\"何家岩镇\";\"other\"\n\"1808612\";\"Hejiang\";\"main\"\n\"1808612\";\"Ho-chiang\";\"other\"\n\"1808612\";\"Ho-chiang-hsien\";\"other\"\n\"1808612\";\"Hokiang\";\"other\"\n\"1808612\";\"Hokianghsien\";\"other\"\n\"1808612\";\"he jiang\";\"other\"\n\"1808612\";\"合江\";\"other\"\n\"1808624\";\"Hejiabao\";\"main\"\n\"1808624\";\"Hejiabao Xiang\";\"other\"\n\"1808624\";\"Hejiabu\";\"other\"\n\"1808624\";\"Ho-chia-pao\";\"other\"\n\"1808624\";\"何家堡\";\"other\"\n\"1808624\";\"何家堡乡\";\"other\"\n\"1808628\";\"Hejia\";\"main\"\n\"1808628\";\"Hetian\";\"other\"\n\"1808628\";\"he jia\";\"other\"\n\"1808628\";\"he tian\";\"other\"\n\"1808628\";\"何家\";\"other\"\n\"1808628\";\"何田\";\"other\"\n\"1808673\";\"Heilongkou\";\"main\"\n\"1808673\";\"Hei-lung-k'ou\";\"other\"\n\"1808673\";\"Hei-lung-k’ou\";\"other\"\n\"1808673\";\"Heilongkou Zhen\";\"other\"\n\"1808673\";\"hei long kou\";\"other\"\n\"1808673\";\"黑龙口\";\"other\"\n\"1808681\";\"Heilangkou\";\"main\"\n\"1808681\";\"Hei-lang-k'ou-chen\";\"other\"\n\"1808681\";\"Hei-lang-k’ou-chen\";\"other\"\n\"1808701\";\"Heicheng\";\"main\"\n\"1808701\";\"Hei-ch'eng-chen\";\"other\"\n\"1808701\";\"Hei-ch’eng-chen\";\"other\"\n\"1808701\";\"Heicheng Zhen\";\"other\"\n\"1808701\";\"黑城\";\"other\"\n\"1808701\";\"黑城镇\";\"other\"\n\"1808722\";\"Hefei\";\"main\"\n\"1808722\";\"Che-fej\";\"other\"\n\"1808722\";\"Hefejus\";\"other\"\n\"1808722\";\"Hefėjus\";\"other\"\n\"1808722\";\"Ho-fei\";\"other\"\n\"1808722\";\"Ho-fei-hsien\";\"other\"\n\"1808722\";\"Ho-fei-shih\";\"other\"\n\"1808722\";\"Hop Phi\";\"other\"\n\"1808722\";\"Hợp Phì\";\"other\"\n\"1808722\";\"Khehfehj\";\"other\"\n\"1808722\";\"Lu-chou\";\"other\"\n\"1808722\";\"Luchow\";\"other\"\n\"1808722\";\"Luchowfu\";\"other\"\n\"1808722\";\"Lunchow\";\"other\"\n\"1808722\";\"he fei\";\"other\"\n\"1808722\";\"he fei shi\";\"other\"\n\"1808722\";\"khfy\";\"other\"\n\"1808722\";\"Хэфэй\";\"other\"\n\"1808722\";\"خفي\";\"other\"\n\"1808722\";\"خېفېي شەھىر\";\"other\"\n\"1808722\";\"合肥\";\"other\"\n\"1808722\";\"合肥市\";\"other\"\n\"1808744\";\"Hede\";\"main\"\n\"1808744\";\"Ho-te\";\"other\"\n\"1808744\";\"Ho-te-chen\";\"other\"\n\"1808744\";\"Ho-te-kung-ssu\";\"other\"\n\"1808744\";\"Hsia-ssu-chiang\";\"other\"\n\"1808744\";\"Khede\";\"other\"\n\"1808744\";\"Sheyang\";\"other\"\n\"1808744\";\"Хеде\";\"other\"\n\"1808747\";\"Hecun\";\"main\"\n\"1808747\";\"Ho-ts'un\";\"other\"\n\"1808747\";\"Ho-ts'un-ch'ien\";\"other\"\n\"1808747\";\"Ho-ts'un-chen\";\"other\"\n\"1808747\";\"Ho-ts’un\";\"other\"\n\"1808747\";\"Ho-ts’un-chen\";\"other\"\n\"1808747\";\"Ho-ts’un-ch’ien\";\"other\"\n\"1808750\";\"Hecun\";\"main\"\n\"1808750\";\"Hecun Zhen\";\"other\"\n\"1808750\";\"Ho-ts'un\";\"other\"\n\"1808750\";\"Ho-ts'un-shih\";\"other\"\n\"1808750\";\"Ho-ts’un\";\"other\"\n\"1808750\";\"Ho-ts’un-shih\";\"other\"\n\"1808750\";\"he cun\";\"other\"\n\"1808750\";\"he cun zhen\";\"other\"\n\"1808750\";\"贺村\";\"other\"\n\"1808750\";\"贺村镇\";\"other\"\n\"1808770\";\"Hebi\";\"main\"\n\"1808770\";\"Hao-pi\";\"other\"\n\"1808770\";\"Hao-pi-chen\";\"other\"\n\"1808770\";\"Hao-pi-chi\";\"other\"\n\"1808770\";\"Hao-pi-shih\";\"other\"\n\"1808770\";\"Ho-pi\";\"other\"\n\"1808770\";\"Ho-pi-shih\";\"other\"\n\"1808770\";\"Hopitsi\";\"other\"\n\"1808770\";\"he bi shi\";\"other\"\n\"1808770\";\"鹤壁市\";\"other\"\n\"1808772\";\"Hebeitun\";\"main\"\n\"1808772\";\"Ho-pei-t'un\";\"other\"\n\"1808772\";\"Ho-pei-t’un\";\"other\"\n\"1808772\";\"Ho-po-t'un\";\"other\"\n\"1808772\";\"Ho-po-t’un\";\"other\"\n\"1808783\";\"Heba\";\"main\"\n\"1808783\";\"何坝\";\"other\"\n\"1808807\";\"Haozhai\";\"main\"\n\"1808807\";\"Haozhai Zhen\";\"other\"\n\"1808807\";\"Ho-chai\";\"other\"\n\"1808807\";\"郝寨\";\"other\"\n\"1808807\";\"郝寨镇\";\"other\"\n\"1808810\";\"Haoxue\";\"main\"\n\"1808810\";\"Hao-hsueh\";\"other\"\n\"1808810\";\"Hao-hsüeh\";\"other\"\n\"1808810\";\"Ho-hsueh\";\"other\"\n\"1808810\";\"Ho-hsüeh\";\"other\"\n\"1808810\";\"hao xue\";\"other\"\n\"1808810\";\"郝穴\";\"other\"\n\"1808848\";\"Haocun\";\"main\"\n\"1808848\";\"濠村\";\"other\"\n\"1808857\";\"Hanzhong\";\"main\"\n\"1808857\";\"Han-chung\";\"other\"\n\"1808857\";\"Han-chung-fu\";\"other\"\n\"1808857\";\"Han-chung-shih\";\"other\"\n\"1808857\";\"Hantai\";\"other\"\n\"1808857\";\"Hantai Qu\";\"other\"\n\"1808857\";\"Hanzhong Shi\";\"other\"\n\"1808857\";\"Khan'chzhun\";\"other\"\n\"1808857\";\"Khan’chzhun\";\"other\"\n\"1808857\";\"Nan'chzhen\";\"other\"\n\"1808857\";\"Nan-cheng\";\"other\"\n\"1808857\";\"Nan-cheng-hsien\";\"other\"\n\"1808857\";\"Nan’chzhen\";\"other\"\n\"1808857\";\"Ханьчжун\";\"other\"\n\"1808857\";\"汉中\";\"other\"\n\"1808857\";\"汉中市\";\"other\"\n\"1808857\";\"汉台\";\"other\"\n\"1808857\";\"汉台区\";\"other\"\n\"1808861\";\"Hanyuan\";\"main\"\n\"1808861\";\"Hsi-ho\";\"other\"\n\"1808861\";\"Hsi-ho-hsien\";\"other\"\n\"1808861\";\"Si-ho-hien\";\"other\"\n\"1808861\";\"Si-ho-hién\";\"other\"\n\"1808861\";\"Siho\";\"other\"\n\"1808861\";\"Sikhe\";\"other\"\n\"1808861\";\"Xihe\";\"other\"\n\"1808861\";\"Xihe Xian\";\"other\"\n\"1808861\";\"汉源\";\"other\"\n\"1808861\";\"西和\";\"other\"\n\"1808861\";\"西和县\";\"other\"\n\"1808872\";\"Fu’an\";\"main\"\n\"1808872\";\"Fu'an\";\"ascii\"\n\"1808872\";\"Fu-an-hsien\";\"other\"\n\"1808872\";\"Fuanja\";\"other\"\n\"1808872\";\"Hanyang\";\"other\"\n\"1808872\";\"Фуаня\";\"other\"\n\"1808879\";\"Hanting\";\"main\"\n\"1808879\";\"Han-t'ing-chen\";\"other\"\n\"1808879\";\"Han-t’ing-chen\";\"other\"\n\"1808879\";\"Hantingchieh\";\"other\"\n\"1808879\";\"Wei-hsien\";\"other\"\n\"1808879\";\"Weixian\";\"other\"\n\"1808887\";\"Longyang\";\"main\"\n\"1808887\";\"Han-shou-ch'eng\";\"other\"\n\"1808887\";\"Han-shou-ch’eng\";\"other\"\n\"1808887\";\"Han-shou-hsien\";\"other\"\n\"1808887\";\"Hanshou\";\"other\"\n\"1808887\";\"Hanshow-hsien\";\"other\"\n\"1808887\";\"long yang\";\"other\"\n\"1808887\";\"龙阳\";\"other\"\n\"1808899\";\"Hanjiashu\";\"main\"\n\"1808899\";\"Han-chia-shu\";\"other\"\n\"1808899\";\"Hanliushu\";\"other\"\n\"1808915\";\"Hanjia\";\"main\"\n\"1808915\";\"Han-chia\";\"other\"\n\"1808915\";\"韩家\";\"other\"\n\"1808917\";\"Hanji\";\"main\"\n\"1808917\";\"Han-chia-chi\";\"other\"\n\"1808917\";\"Han-kia-tsi\";\"other\"\n\"1808917\";\"Hang-chang-ch'ih\";\"other\"\n\"1808917\";\"Hang-chang-ch’ih\";\"other\"\n\"1808917\";\"Hanji Zhen\";\"other\"\n\"1808917\";\"Hanjiaji\";\"other\"\n\"1808917\";\"Lin-hsia\";\"other\"\n\"1808917\";\"Lin-hsia-hsien\";\"other\"\n\"1808917\";\"Linxia Xian\";\"other\"\n\"1808917\";\"Ta-chia-li-shan\";\"other\"\n\"1808917\";\"临夏县\";\"other\"\n\"1808917\";\"韩集\";\"other\"\n\"1808917\";\"韩集镇\";\"other\"\n\"1808926\";\"Hangzhou\";\"main\"\n\"1808926\";\"Hanchow-fu\";\"other\"\n\"1808926\";\"Hang\";\"other\"\n\"1808926\";\"Hang Chau\";\"other\"\n\"1808926\";\"Hang-chou\";\"other\"\n\"1808926\";\"Hang-chou-shih\";\"other\"\n\"1808926\";\"Hang-hsien\";\"other\"\n\"1808926\";\"Hangchow\";\"other\"\n\"1808926\";\"Hàng Châu\";\"other\"\n\"1808926\";\"Khanchzhou\";\"other\"\n\"1808926\";\"hang zhou\";\"other\"\n\"1808926\";\"hang zhou shi\";\"other\"\n\"1808926\";\"hangjeou\";\"other\"\n\"1808926\";\"Ханчжоу\";\"other\"\n\"1808926\";\"خاڭجۇ شەھىر\";\"other\"\n\"1808926\";\"杭州\";\"other\"\n\"1808926\";\"杭州市\";\"other\"\n\"1808926\";\"항저우\";\"other\"\n\"1808931\";\"Hangu\";\"main\"\n\"1808931\";\"Han-ku\";\"other\"\n\"1808931\";\"Han-ku-shih\";\"other\"\n\"1808931\";\"Khanga\";\"other\"\n\"1808931\";\"Ханга\";\"other\"\n\"1808935\";\"Hangou\";\"main\"\n\"1808935\";\"Han-kou\";\"other\"\n\"1808935\";\"Han-kou-chen\";\"other\"\n\"1808944\";\"Hangchuan\";\"main\"\n\"1808944\";\"Guangze\";\"other\"\n\"1808944\";\"Kuang-te\";\"other\"\n\"1808944\";\"Kuang-tse\";\"other\"\n\"1808944\";\"Kuang-tse-hsien\";\"other\"\n\"1808944\";\"Kwangtseh\";\"other\"\n\"1808944\";\"Kwangtseh-hsien\";\"other\"\n\"1808944\";\"Kwangtsen\";\"other\"\n\"1808944\";\"hang chuan\";\"other\"\n\"1808944\";\"杭川\";\"other\"\n\"1808957\";\"Handian\";\"main\"\n\"1808957\";\"Ch'ang-chih-hsien\";\"other\"\n\"1808957\";\"Changzhi\";\"other\"\n\"1808957\";\"Ch’ang-chih-hsien\";\"other\"\n\"1808957\";\"Han-tien\";\"other\"\n\"1808957\";\"Han-tien-chen\";\"other\"\n\"1808957\";\"han dian\";\"other\"\n\"1808957\";\"韩店\";\"other\"\n\"1808963\";\"Handan\";\"main\"\n\"1808963\";\"Han-tan\";\"other\"\n\"1808963\";\"Han-tan-hsien\";\"other\"\n\"1808963\";\"Han-tan-shih\";\"other\"\n\"1808963\";\"Khan'dan'\";\"other\"\n\"1808963\";\"Ханьдань\";\"other\"\n\"1808977\";\"Hanchuan\";\"main\"\n\"1808977\";\"Han-ch'uan-hsien\";\"other\"\n\"1808977\";\"Han-ch’uan-hsien\";\"other\"\n\"1808977\";\"Hanchwan\";\"other\"\n\"1808977\";\"Hanchwanhsien\";\"other\"\n\"1808981\";\"Hancheng\";\"main\"\n\"1808981\";\"Han-ch'eng-hsien\";\"other\"\n\"1808981\";\"Han-ch’eng-hsien\";\"other\"\n\"1808981\";\"Khanchen\";\"other\"\n\"1809003\";\"Haizhou\";\"main\"\n\"1809003\";\"Chiu-tung-hai\";\"other\"\n\"1809003\";\"Hai-chou\";\"other\"\n\"1809003\";\"Haichow\";\"other\"\n\"1809003\";\"Tung-hai\";\"other\"\n\"1809003\";\"Tung-hai-ch'eng\";\"other\"\n\"1809003\";\"Tung-hai-ch’eng\";\"other\"\n\"1809003\";\"Tung-hai-hsien\";\"other\"\n\"1809010\";\"Haiyou\";\"main\"\n\"1809010\";\"Hai-yu\";\"other\"\n\"1809010\";\"Hai-yu-chen\";\"other\"\n\"1809010\";\"Haiyou Zhen\";\"other\"\n\"1809010\";\"Haiyouzhen\";\"other\"\n\"1809010\";\"Sanmen\";\"other\"\n\"1809010\";\"hai you zhen\";\"other\"\n\"1809010\";\"san men\";\"other\"\n\"1809010\";\"三门\";\"other\"\n\"1809010\";\"海游\";\"other\"\n\"1809010\";\"海游镇\";\"other\"\n\"1809013\";\"Haiyan\";\"main\"\n\"1809013\";\"Hai-yen-chen\";\"other\"\n\"1809013\";\"Haiyan Zhen\";\"other\"\n\"1809013\";\"Haiyanzhen\";\"other\"\n\"1809013\";\"海晏\";\"other\"\n\"1809013\";\"海晏镇\";\"other\"\n\"1809023\";\"Haiyang\";\"main\"\n\"1809023\";\"Hai-yang-chen\";\"other\"\n\"1809023\";\"Haiyang Zhen\";\"other\"\n\"1809023\";\"Hsiu-ning\";\"other\"\n\"1809023\";\"Hsiu-ning-hsien\";\"other\"\n\"1809023\";\"Siuning\";\"other\"\n\"1809023\";\"Siuning-hsien\";\"other\"\n\"1809023\";\"Xiuning\";\"other\"\n\"1809023\";\"hai yang\";\"other\"\n\"1809023\";\"hai yang zhen\";\"other\"\n\"1809023\";\"xiu ning\";\"other\"\n\"1809023\";\"休宁\";\"other\"\n\"1809023\";\"海阳\";\"other\"\n\"1809023\";\"海阳镇\";\"other\"\n\"1809049\";\"Hairag\";\"main\"\n\"1809049\";\"Ch'ia-erh-ch'i\";\"other\"\n\"1809049\";\"Chargi\";\"other\"\n\"1809049\";\"Ch’ia-erh-ch’i\";\"other\"\n\"1809049\";\"Ha'ergaixiang\";\"other\"\n\"1809049\";\"Ha-erh-kai\";\"other\"\n\"1809049\";\"Ha-erh-kai-hsiang\";\"other\"\n\"1809049\";\"Ha’ergaixiang\";\"other\"\n\"1809049\";\"K'a-erh\";\"other\"\n\"1809049\";\"K'a-erh-ch'i\";\"other\"\n\"1809049\";\"Kharg\";\"other\"\n\"1809049\";\"Khargi\";\"other\"\n\"1809049\";\"K’a-erh\";\"other\"\n\"1809049\";\"K’a-erh-ch’i\";\"other\"\n\"1809049\";\"哈尔盖\";\"other\"\n\"1809061\";\"Jiaojiang\";\"main\"\n\"1809061\";\"Hai-men-chen\";\"other\"\n\"1809061\";\"Haimen\";\"other\"\n\"1809062\";\"Haimen\";\"main\"\n\"1809062\";\"Hai-men-so\";\"other\"\n\"1809062\";\"Haimen Zhen\";\"other\"\n\"1809062\";\"Haimun\";\"other\"\n\"1809062\";\"Haimung\";\"other\"\n\"1809062\";\"Hoimoon\";\"other\"\n\"1809062\";\"海门\";\"other\"\n\"1809077\";\"Haikou\";\"main\"\n\"1809077\";\"Haikou Zhen\";\"other\"\n\"1809077\";\"海口\";\"other\"\n\"1809077\";\"海口镇\";\"other\"\n\"1809078\";\"Haikou\";\"main\"\n\"1809078\";\"Ha k'uo-shih\";\"other\"\n\"1809078\";\"Ha k’uo-shih\";\"other\"\n\"1809078\";\"Hai Khau\";\"other\"\n\"1809078\";\"Hai-k'ou-shih\";\"other\"\n\"1809078\";\"Hai-k'ou-so-ch'eng\";\"other\"\n\"1809078\";\"Hai-k’ou-shih\";\"other\"\n\"1809078\";\"Hai-k’ou-so-ch’eng\";\"other\"\n\"1809078\";\"Haik-how\";\"other\"\n\"1809078\";\"Haikou Shi\";\"other\"\n\"1809078\";\"Haikow\";\"other\"\n\"1809078\";\"Heihow\";\"other\"\n\"1809078\";\"Hoi Hao\";\"other\"\n\"1809078\";\"Hoihau\";\"other\"\n\"1809078\";\"Hoihow\";\"other\"\n\"1809078\";\"Hải Khẩu\";\"other\"\n\"1809078\";\"Khajkou\";\"other\"\n\"1809078\";\"hai kou\";\"other\"\n\"1809078\";\"hai kou shi\";\"other\"\n\"1809078\";\"Хайкоу\";\"other\"\n\"1809078\";\"خەيكو شەھىر\";\"other\"\n\"1809078\";\"海口\";\"other\"\n\"1809078\";\"海口市\";\"other\"\n\"1809100\";\"Haicheng\";\"main\"\n\"1809100\";\"Hai-ch'eng-chen\";\"other\"\n\"1809100\";\"Hai-ch’eng-chen\";\"other\"\n\"1809100\";\"Hai-feng-hsien\";\"other\"\n\"1809100\";\"Haifeng\";\"other\"\n\"1809100\";\"Hoifung\";\"other\"\n\"1809100\";\"Hoifung-hsien\";\"other\"\n\"1809100\";\"hai cheng\";\"other\"\n\"1809100\";\"海城\";\"other\"\n\"1809112\";\"Haibeitou\";\"main\"\n\"1809112\";\"Hai-pei-t'ou\";\"other\"\n\"1809112\";\"Hai-pei-t’ou\";\"other\"\n\"1809112\";\"Haibeitou Xiang\";\"other\"\n\"1809112\";\"海北头\";\"other\"\n\"1809112\";\"海北头乡\";\"other\"\n\"1809116\";\"Hai’an\";\"main\"\n\"1809116\";\"Hai'an\";\"ascii\"\n\"1809116\";\"Hai'an Xian\";\"other\"\n\"1809116\";\"Hai'an Zhen\";\"other\"\n\"1809116\";\"Hai-an-chen\";\"other\"\n\"1809116\";\"Hai’an Xian\";\"other\"\n\"1809116\";\"Hai’an Zhen\";\"other\"\n\"1809116\";\"海安\";\"other\"\n\"1809116\";\"海安县\";\"other\"\n\"1809116\";\"海安镇\";\"other\"\n\"1809139\";\"Guzhen Chengguanzhen\";\"main\"\n\"1809139\";\"Guzhen\";\"other\"\n\"1809139\";\"Ku-chen\";\"other\"\n\"1809139\";\"gu zhen cheng guan zhen\";\"other\"\n\"1809139\";\"固镇城关镇\";\"other\"\n\"1809153\";\"Guyong\";\"main\"\n\"1809153\";\"Chiang-le\";\"other\"\n\"1809153\";\"Chiang-lo\";\"other\"\n\"1809153\";\"Chiang-lo-hsien\";\"other\"\n\"1809153\";\"Jiangle\";\"other\"\n\"1809153\";\"Tsianglo\";\"other\"\n\"1809153\";\"Tsianglohsien\";\"other\"\n\"1809153\";\"gu yong\";\"other\"\n\"1809153\";\"古镛\";\"other\"\n\"1809157\";\"Guyi\";\"main\"\n\"1809157\";\"Ku-i\";\"other\"\n\"1809157\";\"Ku-i-chen\";\"other\"\n\"1809157\";\"Kuyi\";\"other\"\n\"1809157\";\"San-chiang\";\"other\"\n\"1809157\";\"San-chiang-hsien\";\"other\"\n\"1809157\";\"San-chiang-t'ung-tsu-tzu-chih-hsien\";\"other\"\n\"1809157\";\"San-chiang-t’ung-tsu-tzu-chih-hsien\";\"other\"\n\"1809157\";\"San-kiang\";\"other\"\n\"1809157\";\"Sanjiang\";\"other\"\n\"1809157\";\"gu yi\";\"other\"\n\"1809157\";\"古宜\";\"other\"\n\"1809159\";\"Guye\";\"main\"\n\"1809159\";\"Ku-yeh\";\"other\"\n\"1809162\";\"Guyang\";\"main\"\n\"1809162\";\"Guzhang\";\"other\"\n\"1809162\";\"Ku-chang\";\"other\"\n\"1809162\";\"Ku-chang-hsien\";\"other\"\n\"1809162\";\"Ku-chang-p'ing\";\"other\"\n\"1809162\";\"Ku-chang-p’ing\";\"other\"\n\"1809162\";\"gu yang\";\"other\"\n\"1809162\";\"古阳\";\"other\"\n\"1809169\";\"Guxiang\";\"main\"\n\"1809169\";\"Gugang\";\"other\"\n\"1809169\";\"Guxiang Zhen\";\"other\"\n\"1809169\";\"Ku-chiang-chan\";\"other\"\n\"1809169\";\"Ku-hsiang\";\"other\"\n\"1809169\";\"gu xiang\";\"other\"\n\"1809169\";\"古巷\";\"other\"\n\"1809192\";\"Guxi\";\"main\"\n\"1809192\";\"Guxi Zhen\";\"other\"\n\"1809192\";\"Ku-ch'i\";\"other\"\n\"1809192\";\"Ku-ch'i-chen\";\"other\"\n\"1809192\";\"Ku-ch’i\";\"other\"\n\"1809192\";\"Ku-ch’i-chen\";\"other\"\n\"1809192\";\"Ku-hsi\";\"other\"\n\"1809192\";\"古溪\";\"other\"\n\"1809192\";\"古溪镇\";\"other\"\n\"1809203\";\"Gutian\";\"main\"\n\"1809203\";\"Gutian Zhen\";\"other\"\n\"1809203\";\"Ku-t'ien\";\"other\"\n\"1809203\";\"Ku-t’ien\";\"other\"\n\"1809203\";\"姑田\";\"other\"\n\"1809203\";\"姑田镇\";\"other\"\n\"1809222\";\"Gushi\";\"main\"\n\"1809222\";\"Gushi Zhen\";\"other\"\n\"1809222\";\"Ku-shih\";\"other\"\n\"1809222\";\"Ku-shih-chen\";\"other\"\n\"1809222\";\"gu shi\";\"other\"\n\"1809222\";\"故市\";\"other\"\n\"1809233\";\"Gushan\";\"main\"\n\"1809233\";\"Gushan Zhen\";\"other\"\n\"1809233\";\"Ku-shan\";\"other\"\n\"1809233\";\"Ku-shan-chen\";\"other\"\n\"1809233\";\"孤山\";\"other\"\n\"1809233\";\"孤山镇\";\"other\"\n\"1809239\";\"Xiagulei\";\"main\"\n\"1809239\";\"Daowei Cangzu Xiang\";\"other\"\n\"1809239\";\"Guru\";\"other\"\n\"1809239\";\"Gurü\";\"other\"\n\"1809239\";\"下古雷\";\"other\"\n\"1809239\";\"古雷\";\"other\"\n\"1809239\";\"道帏藏族乡\";\"other\"\n\"1809263\";\"Guozhen\";\"main\"\n\"1809263\";\"Baoji\";\"other\"\n\"1809263\";\"Chencang Qu\";\"other\"\n\"1809263\";\"Gochzhen\";\"other\"\n\"1809263\";\"Guo Zhen\";\"other\"\n\"1809263\";\"Guo zhen\";\"other\"\n\"1809263\";\"Guozhen zhen\";\"other\"\n\"1809263\";\"Ko-chen\";\"other\"\n\"1809263\";\"Kuo-chen\";\"other\"\n\"1809263\";\"Pao-chi\";\"other\"\n\"1809263\";\"Pao-chi-hsien\";\"other\"\n\"1809263\";\"guo zhen\";\"other\"\n\"1809263\";\"guo zhen zhen\";\"other\"\n\"1809263\";\"虢镇\";\"other\"\n\"1809263\";\"虢镇镇\";\"other\"\n\"1809263\";\"陈仓区\";\"other\"\n\"1809264\";\"Guozhen\";\"main\"\n\"1809264\";\"Kuo-chen\";\"other\"\n\"1809264\";\"Kuo-chia-pa\";\"other\"\n\"1809264\";\"郭镇\";\"other\"\n\"1809271\";\"Guoyang Chengguanzhen\";\"main\"\n\"1809271\";\"Guoyang\";\"other\"\n\"1809271\";\"Ke-yang\";\"other\"\n\"1809271\";\"Ko-yang\";\"other\"\n\"1809271\";\"Ko-yang-hsien\";\"other\"\n\"1809271\";\"Kuo-yang\";\"other\"\n\"1809271\";\"Kwoyang\";\"other\"\n\"1809271\";\"Kwoyang-hsien\";\"other\"\n\"1809271\";\"wo yang cheng guan zhen\";\"other\"\n\"1809271\";\"涡阳城关镇\";\"other\"\n\"1809305\";\"Guoyuan\";\"main\"\n\"1809305\";\"Guojiayuan\";\"other\"\n\"1809305\";\"Guoyuan Zhen\";\"other\"\n\"1809305\";\"Kuo-chia-yuan\";\"other\"\n\"1809305\";\"Kuo-chia-yüan\";\"other\"\n\"1809305\";\"郭园\";\"other\"\n\"1809305\";\"郭园镇\";\"other\"\n\"1809326\";\"Guoji\";\"main\"\n\"1809326\";\"Kuo-chi\";\"other\"\n\"1809326\";\"guo ji\";\"other\"\n\"1809326\";\"郭集\";\"other\"\n\"1809338\";\"Guofuchang\";\"main\"\n\"1809338\";\"Guofu\";\"other\"\n\"1809338\";\"Kuo-fu\";\"other\"\n\"1809343\";\"Guodu\";\"main\"\n\"1809343\";\"Guodu Jieban\";\"other\"\n\"1809343\";\"Kuo-tu\";\"other\"\n\"1809343\";\"Kuo-tu-chen\";\"other\"\n\"1809343\";\"guo du\";\"other\"\n\"1809343\";\"guo du jie ban\";\"other\"\n\"1809343\";\"郭杜\";\"other\"\n\"1809343\";\"郭杜街办\";\"other\"\n\"1809361\";\"Guocun\";\"main\"\n\"1809361\";\"guo cun\";\"other\"\n\"1809361\";\"郭村\";\"other\"\n\"1809362\";\"Guochuan\";\"main\"\n\"1809362\";\"Daijiayanxing\";\"other\"\n\"1809362\";\"Guochuan Zhen\";\"other\"\n\"1809362\";\"Guochuangang\";\"other\"\n\"1809362\";\"戴家烟行\";\"other\"\n\"1809362\";\"过船\";\"other\"\n\"1809362\";\"过船镇\";\"other\"\n\"1809398\";\"Gulonggang\";\"main\"\n\"1809398\";\"Gulonggang Zhen\";\"other\"\n\"1809398\";\"Ku-lung-kang\";\"other\"\n\"1809398\";\"古龙冈\";\"other\"\n\"1809398\";\"古龙冈镇\";\"other\"\n\"1809408\";\"Gulin\";\"main\"\n\"1809408\";\"Ku-lin\";\"other\"\n\"1809408\";\"Ku-lin-hsien\";\"other\"\n\"1809408\";\"gu lin\";\"other\"\n\"1809408\";\"古蔺\";\"other\"\n\"1809410\";\"Guli\";\"main\"\n\"1809410\";\"Guli Zhen\";\"other\"\n\"1809410\";\"Ku-li\";\"other\"\n\"1809410\";\"gu li\";\"other\"\n\"1809410\";\"gu li zhen\";\"other\"\n\"1809410\";\"谷里\";\"other\"\n\"1809410\";\"谷里镇\";\"other\"\n\"1809412\";\"Guli\";\"main\"\n\"1809412\";\"Yongkang\";\"other\"\n\"1809412\";\"Yung-k'ang\";\"other\"\n\"1809412\";\"Yung-k'ang-hsien\";\"other\"\n\"1809412\";\"Yung-k’ang\";\"other\"\n\"1809412\";\"Yung-k’ang-hsien\";\"other\"\n\"1809412\";\"Гули\";\"other\"\n\"1809423\";\"Gulai\";\"main\"\n\"1809423\";\"Gulai Zhen\";\"other\"\n\"1809423\";\"K'o-lai\";\"other\"\n\"1809423\";\"Ku-lai\";\"other\"\n\"1809423\";\"Ku-lai-ts'un\";\"other\"\n\"1809423\";\"Ku-lai-ts’un\";\"other\"\n\"1809423\";\"K’o-lai\";\"other\"\n\"1809423\";\"谷来\";\"other\"\n\"1809423\";\"谷来镇\";\"other\"\n\"1809451\";\"Guiyu\";\"main\"\n\"1809451\";\"Guiyu Zhen\";\"other\"\n\"1809451\";\"gui yu\";\"other\"\n\"1809451\";\"贵屿\";\"other\"\n\"1809461\";\"Guiyang\";\"main\"\n\"1809461\";\"Guiyang Shi\";\"other\"\n\"1809461\";\"Gujangas\";\"other\"\n\"1809461\";\"Gujjan\";\"other\"\n\"1809461\";\"Kuei-chu\";\"other\"\n\"1809461\";\"Kuei-yang\";\"other\"\n\"1809461\";\"Kuei-yang-shih\";\"other\"\n\"1809461\";\"Kweichu\";\"other\"\n\"1809461\";\"Kweiyang\";\"other\"\n\"1809461\";\"Kweiyangfu\";\"other\"\n\"1809461\";\"Quy Duong\";\"other\"\n\"1809461\";\"Quý Dương\";\"other\"\n\"1809461\";\"gui yang\";\"other\"\n\"1809461\";\"gui yang shi\";\"other\"\n\"1809461\";\"Гуйян\";\"other\"\n\"1809461\";\"گۇيياڭ شەھىرى\";\"other\"\n\"1809461\";\"貴陽\";\"other\"\n\"1809461\";\"贵阳\";\"other\"\n\"1809461\";\"贵阳市\";\"other\"\n\"1809463\";\"Guiyang Chengguanzhen\";\"main\"\n\"1809463\";\"Guiyang\";\"other\"\n\"1809463\";\"Kuei-yang\";\"other\"\n\"1809463\";\"Kuei-yang-ch'eng\";\"other\"\n\"1809463\";\"Kuei-yang-ch’eng\";\"other\"\n\"1809463\";\"Kuei-yang-hsien\";\"other\"\n\"1809463\";\"Kweiyang\";\"other\"\n\"1809463\";\"Kweiyang-hsien\";\"other\"\n\"1809463\";\"Kweiyangchow\";\"other\"\n\"1809463\";\"gui yang cheng guan zhen\";\"other\"\n\"1809463\";\"桂阳城关镇\";\"other\"\n\"1809481\";\"Guishan\";\"main\"\n\"1809481\";\"Hsin-p'ing\";\"other\"\n\"1809481\";\"Hsin-p'ing-hsien\";\"other\"\n\"1809481\";\"Hsin-p’ing\";\"other\"\n\"1809481\";\"Hsin-p’ing-hsien\";\"other\"\n\"1809481\";\"Sinping-hsien\";\"other\"\n\"1809481\";\"Xinping\";\"other\"\n\"1809481\";\"gui shan\";\"other\"\n\"1809481\";\"桂山\";\"other\"\n\"1809483\";\"Guiren\";\"main\"\n\"1809483\";\"Kuei-jen\";\"other\"\n\"1809483\";\"Kuei-jen-chi\";\"other\"\n\"1809486\";\"Guiping\";\"main\"\n\"1809486\";\"Hsun-chou\";\"other\"\n\"1809486\";\"Hsün-chou\";\"other\"\n\"1809486\";\"Kuei-p'ing\";\"other\"\n\"1809486\";\"Kuei-p'ing-hsien\";\"other\"\n\"1809486\";\"Kuei-p’ing\";\"other\"\n\"1809486\";\"Kuei-p’ing-hsien\";\"other\"\n\"1809486\";\"Kweiping\";\"other\"\n\"1809486\";\"Kweiping-hsien\";\"other\"\n\"1809486\";\"Sun-chow-fu\";\"other\"\n\"1809486\";\"Sunchow\";\"other\"\n\"1809486\";\"Sunshow\";\"other\"\n\"1809486\";\"Sün-chow-fu\";\"other\"\n\"1809486\";\"Sünchow\";\"other\"\n\"1809498\";\"Guilin\";\"main\"\n\"1809498\";\"Gujlin'\";\"other\"\n\"1809498\";\"Kuei-lin\";\"other\"\n\"1809498\";\"Kuei-lin-shih\";\"other\"\n\"1809498\";\"Kweilin\";\"other\"\n\"1809498\";\"Kweilin-hsien\";\"other\"\n\"1809498\";\"Lin-kuei\";\"other\"\n\"1809498\";\"Lin-kuei-hsien\";\"other\"\n\"1809498\";\"Lin-kwei\";\"other\"\n\"1809498\";\"Ling-ch'uan\";\"other\"\n\"1809498\";\"Ling-ch’uan\";\"other\"\n\"1809498\";\"Que Lam\";\"other\"\n\"1809498\";\"Quế Lâm\";\"other\"\n\"1809498\";\"gui lin\";\"other\"\n\"1809498\";\"gui lin shi\";\"other\"\n\"1809498\";\"Гуйлинь\";\"other\"\n\"1809498\";\"桂林\";\"other\"\n\"1809498\";\"桂林市\";\"other\"\n\"1809521\";\"Guidong Chengguanzhen\";\"main\"\n\"1809521\";\"Guidong\";\"other\"\n\"1809521\";\"Kuei-tung\";\"other\"\n\"1809521\";\"Kuei-tung-hsien\";\"other\"\n\"1809521\";\"Kweitung\";\"other\"\n\"1809521\";\"Kweitung-hsien\";\"other\"\n\"1809521\";\"gui dong cheng guan zhen\";\"other\"\n\"1809521\";\"桂东城关镇\";\"other\"\n\"1809532\";\"Guigang\";\"main\"\n\"1809532\";\"Guicheng\";\"other\"\n\"1809532\";\"Guixian\";\"other\"\n\"1809532\";\"Kuei\";\"other\"\n\"1809532\";\"Kuei-hsien\";\"other\"\n\"1809532\";\"Kweihsien\";\"other\"\n\"1809543\";\"Gugaozhuang\";\"main\"\n\"1809543\";\"Gugao\";\"other\"\n\"1809543\";\"Gugao Zhen\";\"other\"\n\"1809543\";\"Ku-kao\";\"other\"\n\"1809543\";\"Ku-kao-chuang\";\"other\"\n\"1809543\";\"顾高\";\"other\"\n\"1809543\";\"顾高庄\";\"other\"\n\"1809543\";\"顾高镇\";\"other\"\n\"1809548\";\"Gufeng\";\"main\"\n\"1809548\";\"Ku-fen\";\"other\"\n\"1809548\";\"Ku-fen-chen\";\"other\"\n\"1809548\";\"Ku-feng-chen\";\"other\"\n\"1809548\";\"Ku-hsia\";\"other\"\n\"1809548\";\"Pingnan\";\"other\"\n\"1809548\";\"gu feng\";\"other\"\n\"1809548\";\"古峰\";\"other\"\n\"1809573\";\"Gucun\";\"main\"\n\"1809573\";\"Gucun Zhen\";\"other\"\n\"1809573\";\"Ku-ts'un\";\"other\"\n\"1809573\";\"Ku-ts’un\";\"other\"\n\"1809573\";\"固村\";\"other\"\n\"1809573\";\"固村镇\";\"other\"\n\"1809610\";\"Gucheng Chengguanzhen\";\"main\"\n\"1809610\";\"Gucheng\";\"other\"\n\"1809610\";\"Ku-ch'eng\";\"other\"\n\"1809610\";\"Ku-ch'eng-hsien\";\"other\"\n\"1809610\";\"Ku-ch’eng\";\"other\"\n\"1809610\";\"Ku-ch’eng-hsien\";\"other\"\n\"1809610\";\"古城城关镇\";\"other\"\n\"1809612\";\"Gucheng\";\"main\"\n\"1809612\";\"Gucheng Zhen\";\"other\"\n\"1809612\";\"Ku-ch'eng\";\"other\"\n\"1809612\";\"Ku-ch'eng-chen\";\"other\"\n\"1809612\";\"Ku-ch’eng\";\"other\"\n\"1809612\";\"Ku-ch’eng-chen\";\"other\"\n\"1809612\";\"gu cheng\";\"other\"\n\"1809612\";\"gu cheng zhen\";\"other\"\n\"1809612\";\"固城\";\"other\"\n\"1809612\";\"固城镇\";\"other\"\n\"1809615\";\"Gucheng\";\"main\"\n\"1809615\";\"Gucheng Zhen\";\"other\"\n\"1809615\";\"Ku-ch'eng\";\"other\"\n\"1809615\";\"Ku-ch’eng\";\"other\"\n\"1809615\";\"古城\";\"other\"\n\"1809615\";\"古城镇\";\"other\"\n\"1809619\";\"Gubu\";\"main\"\n\"1809619\";\"Gubu Zhen\";\"other\"\n\"1809619\";\"Ku-pu\";\"other\"\n\"1809619\";\"古埠\";\"other\"\n\"1809619\";\"古埠镇\";\"other\"\n\"1809629\";\"Guapo\";\"main\"\n\"1809629\";\"Guapo Zhen\";\"other\"\n\"1809629\";\"Kua-p'o\";\"other\"\n\"1809629\";\"Kua-p'o-chen\";\"other\"\n\"1809629\";\"Kua-p’o\";\"other\"\n\"1809629\";\"Kua-p’o-chen\";\"other\"\n\"1809629\";\"gua po\";\"other\"\n\"1809629\";\"瓜坡\";\"other\"\n\"1809650\";\"Guanzhuang\";\"main\"\n\"1809650\";\"Guanzhuang Zhen\";\"other\"\n\"1809650\";\"Kuan-chuang\";\"other\"\n\"1809650\";\"guan zhuang\";\"other\"\n\"1809650\";\"guan zhuang zhen\";\"other\"\n\"1809650\";\"关庄\";\"other\"\n\"1809650\";\"关庄镇\";\"other\"\n\"1809651\";\"Guanzhuang\";\"main\"\n\"1809651\";\"Guanzhuang Zhen\";\"other\"\n\"1809651\";\"Hsi-kuan-chuang\";\"other\"\n\"1809651\";\"Kuan-chuang\";\"other\"\n\"1809651\";\"guan zhuang\";\"other\"\n\"1809651\";\"guan zhuang zhen\";\"other\"\n\"1809651\";\"官庄\";\"other\"\n\"1809651\";\"官庄镇\";\"other\"\n\"1809653\";\"Guanzhuang\";\"main\"\n\"1809653\";\"Kuan-chuang\";\"other\"\n\"1809653\";\"guan zhuang\";\"other\"\n\"1809653\";\"官庄\";\"other\"\n\"1809691\";\"Guanyinsi\";\"main\"\n\"1809691\";\"Kuan-yin-ssu\";\"other\"\n\"1809691\";\"观音寺\";\"other\"\n\"1809706\";\"Guanyinge\";\"main\"\n\"1809706\";\"Guanyinge Zhen\";\"other\"\n\"1809706\";\"guan yin ge\";\"other\"\n\"1809706\";\"观音阁\";\"other\"\n\"1809745\";\"Guantou\";\"main\"\n\"1809745\";\"Guantou Zhen\";\"other\"\n\"1809745\";\"Kuan-t'ou\";\"other\"\n\"1809745\";\"Kuan-t'ou-chen\";\"other\"\n\"1809745\";\"Kuan-t’ou\";\"other\"\n\"1809745\";\"Kuan-t’ou-chen\";\"other\"\n\"1809745\";\"guan tou\";\"other\"\n\"1809745\";\"guan tou zhen\";\"other\"\n\"1809745\";\"关头\";\"other\"\n\"1809745\";\"关头镇\";\"other\"\n\"1809747\";\"Guantou\";\"main\"\n\"1809747\";\"Kuan-t'ou\";\"other\"\n\"1809747\";\"Kuan-t’ou\";\"other\"\n\"1809747\";\"Kwantow\";\"other\"\n\"1809749\";\"Guanting\";\"main\"\n\"1809749\";\"Guanting Xiang\";\"other\"\n\"1809749\";\"Kuan-t'ing\";\"other\"\n\"1809749\";\"Kuan-t’ing\";\"other\"\n\"1809749\";\"官厅\";\"other\"\n\"1809749\";\"官厅乡\";\"other\"\n\"1809750\";\"Guanting\";\"main\"\n\"1809750\";\"Guanting Zhen\";\"other\"\n\"1809750\";\"Kuan-t'ing\";\"other\"\n\"1809750\";\"Kuan-t’ing\";\"other\"\n\"1809750\";\"官亭\";\"other\"\n\"1809750\";\"官亭镇\";\"other\"\n\"1809752\";\"Guanting\";\"main\"\n\"1809752\";\"Guanting Zhen\";\"other\"\n\"1809752\";\"Kuan-t'ing\";\"other\"\n\"1809752\";\"Kuan-t’ing\";\"other\"\n\"1809752\";\"官亭\";\"other\"\n\"1809752\";\"官亭镇\";\"other\"\n\"1809780\";\"Guanshan\";\"main\"\n\"1809780\";\"Guanshan Zhen\";\"other\"\n\"1809780\";\"Kuan-shan\";\"other\"\n\"1809780\";\"Kuan-shan-chen\";\"other\"\n\"1809780\";\"guan shan\";\"other\"\n\"1809780\";\"关山\";\"other\"\n\"1809804\";\"Guanqian\";\"main\"\n\"1809804\";\"Guanqian Zhen\";\"other\"\n\"1809804\";\"馆前\";\"other\"\n\"1809804\";\"馆前镇\";\"other\"\n\"1809819\";\"Guanlu\";\"main\"\n\"1809819\";\"Guanlu Zhen\";\"other\"\n\"1809819\";\"Kuan-lu\";\"other\"\n\"1809819\";\"Kuan-lu-chen\";\"other\"\n\"1809819\";\"guan lu\";\"other\"\n\"1809819\";\"官路\";\"other\"\n\"1809827\";\"Guanlan\";\"main\"\n\"1809827\";\"Kuan-lan\";\"other\"\n\"1809827\";\"Kuan-lan-hsu\";\"other\"\n\"1809827\";\"Kuan-lan-hsü\";\"other\"\n\"1809827\";\"guan lan\";\"other\"\n\"1809827\";\"观澜\";\"other\"\n\"1809831\";\"Guankou\";\"main\"\n\"1809831\";\"Guanxian\";\"other\"\n\"1809831\";\"Kuan\";\"other\"\n\"1809831\";\"Kuan-hsien\";\"other\"\n\"1809831\";\"Kwanhsien\";\"other\"\n\"1809831\";\"guan kou\";\"other\"\n\"1809831\";\"灌口\";\"other\"\n\"1809858\";\"Guangzhou\";\"main\"\n\"1809858\";\"Cantao\";\"other\"\n\"1809858\";\"Canton\";\"other\"\n\"1809858\";\"Cantão\";\"other\"\n\"1809858\";\"Fan-yu\";\"other\"\n\"1809858\";\"Fan-yü\";\"other\"\n\"1809858\";\"Guanchzhou\";\"other\"\n\"1809858\";\"Guangdzou\";\"other\"\n\"1809858\";\"Guangdžou\";\"other\"\n\"1809858\";\"Guangzhou Shi\";\"other\"\n\"1809858\";\"Gvangjcouh\";\"other\"\n\"1809858\";\"Kanton\";\"other\"\n\"1809858\";\"Kantono\";\"other\"\n\"1809858\";\"Kouang-chou\";\"other\"\n\"1809858\";\"Kuang-chou\";\"other\"\n\"1809858\";\"Kuang-chou-shih\";\"other\"\n\"1809858\";\"Kwang-chowfu\";\"other\"\n\"1809858\";\"Kwangchow\";\"other\"\n\"1809858\";\"P'an-yu\";\"other\"\n\"1809858\";\"Puyun\";\"other\"\n\"1809858\";\"Puyün\";\"other\"\n\"1809858\";\"P’an-yü\";\"other\"\n\"1809858\";\"Quang Chau\";\"other\"\n\"1809858\";\"Quảng Châu\";\"other\"\n\"1809858\";\"Shengcheng\";\"other\"\n\"1809858\";\"guang zhou\";\"other\"\n\"1809858\";\"guang zhou shi\";\"other\"\n\"1809858\";\"gwangjeou\";\"other\"\n\"1809858\";\"qwanghtshw\";\"other\"\n\"1809858\";\"Гуанчжоу\";\"other\"\n\"1809858\";\"قوانغتشو\";\"other\"\n\"1809858\";\"گوانگ‌ژو\";\"other\"\n\"1809858\";\"گۇاڭجۇ شەھىرى\";\"other\"\n\"1809858\";\"广州\";\"other\"\n\"1809858\";\"广州市\";\"other\"\n\"1809858\";\"広州\";\"other\"\n\"1809858\";\"広州市\";\"other\"\n\"1809858\";\"광저우\";\"other\"\n\"1809861\";\"Guangyubu\";\"main\"\n\"1809861\";\"Guangyubu Xiang\";\"other\"\n\"1809861\";\"Kuang-yu-pao\";\"other\"\n\"1809861\";\"Kuang-yü-pao\";\"other\"\n\"1809861\";\"Pao-tzu-shang\";\"other\"\n\"1809861\";\"光裕堡\";\"other\"\n\"1809861\";\"光裕堡乡\";\"other\"\n\"1809866\";\"Guanyang\";\"main\"\n\"1809866\";\"Kuan-yang\";\"other\"\n\"1809866\";\"Kuan-yang-chen\";\"other\"\n\"1809866\";\"Kuan-yang-hsien\";\"other\"\n\"1809866\";\"Kwangyang-hsien\";\"other\"\n\"1809866\";\"Kwanyanghsien\";\"other\"\n\"1809866\";\"guan yang\";\"other\"\n\"1809866\";\"灌阳\";\"other\"\n\"1809879\";\"Guangshui\";\"main\"\n\"1809879\";\"Kuang-shui\";\"other\"\n\"1809879\";\"Kuang-shui-chen\";\"other\"\n\"1809879\";\"Kuang-shui-shih\";\"other\"\n\"1809879\";\"Kwangshia\";\"other\"\n\"1809879\";\"Kwangshui\";\"other\"\n\"1809889\";\"Guangping\";\"main\"\n\"1809889\";\"Guangping Zhen\";\"other\"\n\"1809889\";\"Kuang-p'ing\";\"other\"\n\"1809889\";\"Kuang-p’ing\";\"other\"\n\"1809889\";\"广平\";\"other\"\n\"1809889\";\"广平镇\";\"other\"\n\"1809899\";\"Guangming\";\"main\"\n\"1809899\";\"Ganxiangying\";\"other\"\n\"1809899\";\"Hsi-te\";\"other\"\n\"1809899\";\"Kan-hsiang-ying\";\"other\"\n\"1809899\";\"Kan-shan-ying\";\"other\"\n\"1809899\";\"Xide\";\"other\"\n\"1809899\";\"guang ming\";\"other\"\n\"1809899\";\"光明\";\"other\"\n\"1809900\";\"Guangming\";\"main\"\n\"1809900\";\"Guangming Xiang\";\"other\"\n\"1809900\";\"光明\";\"other\"\n\"1809900\";\"光明乡\";\"other\"\n\"1809910\";\"Huquan\";\"main\"\n\"1809910\";\"Guangling\";\"other\"\n\"1809910\";\"Kuang-ling\";\"other\"\n\"1809910\";\"Kuang-ling-hsien\";\"other\"\n\"1809910\";\"Kwang-ling\";\"other\"\n\"1809910\";\"hu quan\";\"other\"\n\"1809910\";\"壶泉\";\"other\"\n\"1809911\";\"Guangling\";\"main\"\n\"1809911\";\"Guangling Zhen\";\"other\"\n\"1809911\";\"Guanglingzhen\";\"other\"\n\"1809911\";\"Kuang-ling\";\"other\"\n\"1809911\";\"Kuang-ling-chen\";\"other\"\n\"1809911\";\"广陵\";\"other\"\n\"1809911\";\"广陵镇\";\"other\"\n\"1809915\";\"Guangji\";\"main\"\n\"1809915\";\"Chi-chen\";\"other\"\n\"1809915\";\"Guangji Zhen\";\"other\"\n\"1809915\";\"Kuang-chi\";\"other\"\n\"1809915\";\"guang ji\";\"other\"\n\"1809915\";\"guang ji zhen\";\"other\"\n\"1809915\";\"广济\";\"other\"\n\"1809915\";\"广济镇\";\"other\"\n\"1809942\";\"Guangchen\";\"main\"\n\"1809942\";\"Guangchen Zhen\";\"other\"\n\"1809942\";\"Kuang-ch'en-chen\";\"other\"\n\"1809942\";\"Kuang-ch’en-chen\";\"other\"\n\"1809942\";\"广陈\";\"other\"\n\"1809942\";\"广陈镇\";\"other\"\n\"1809945\";\"Guang’ao\";\"main\"\n\"1809945\";\"Guang'ao\";\"ascii\"\n\"1809945\";\"Guang'ao Jiedao\";\"other\"\n\"1809945\";\"Guang’ao Jiedao\";\"other\"\n\"1809945\";\"guang ao\";\"other\"\n\"1809945\";\"广澳\";\"other\"\n\"1809955\";\"Guan’er\";\"main\"\n\"1809955\";\"Guan'er\";\"ascii\"\n\"1809955\";\"Guan'er Xiang\";\"other\"\n\"1809955\";\"Guan’er Xiang\";\"other\"\n\"1809955\";\"Kuan-erh\";\"other\"\n\"1809955\";\"Kuan-erh-shang\";\"other\"\n\"1809955\";\"官儿\";\"other\"\n\"1809955\";\"官儿乡\";\"other\"\n\"1809964\";\"Guandu\";\"main\"\n\"1809964\";\"Chiu-hsi-shui\";\"other\"\n\"1809964\";\"Hsi-shui\";\"other\"\n\"1809964\";\"Hsi-shui-hsien\";\"other\"\n\"1809964\";\"Kuan-tu\";\"other\"\n\"1809964\";\"Kuan-tu-ch'ang\";\"other\"\n\"1809964\";\"Kuan-tu-ch’ang\";\"other\"\n\"1809964\";\"Sishui\";\"other\"\n\"1809964\";\"Sishui-hsien\";\"other\"\n\"1809972\";\"Guandiping\";\"main\"\n\"1809972\";\"Guandiping Zhen\";\"other\"\n\"1809972\";\"Kuan-ti-p'ing\";\"other\"\n\"1809972\";\"Kuan-ti-p’ing\";\"other\"\n\"1809972\";\"guan de ping zhen\";\"other\"\n\"1809972\";\"官地坪\";\"other\"\n\"1809972\";\"官地坪镇\";\"other\"\n\"1809982\";\"Guandi\";\"main\"\n\"1809982\";\"Guandi Zhen\";\"other\"\n\"1809982\";\"Kuan-ti\";\"other\"\n\"1809982\";\"Kuan-ti-chen\";\"other\"\n\"1809982\";\"guan di\";\"other\"\n\"1809982\";\"官底\";\"other\"\n\"1809988\";\"Guandao\";\"main\"\n\"1809988\";\"Kuan-t'ou-chen\";\"other\"\n\"1809988\";\"Kuan-tao\";\"other\"\n\"1809988\";\"Kuan-t’ou-chen\";\"other\"\n\"1809988\";\"guan dao\";\"other\"\n\"1809988\";\"官道\";\"other\"\n\"1809994\";\"Guanchi\";\"main\"\n\"1809994\";\"Guanchi Zhen\";\"other\"\n\"1809994\";\"Kuan-ch'ih\";\"other\"\n\"1809994\";\"Kuan-ch’ih\";\"other\"\n\"1809994\";\"Kuan-yu-ch'ih\";\"other\"\n\"1809994\";\"Kuan-yü-ch’ih\";\"other\"\n\"1809994\";\"guan chi\";\"other\"\n\"1809994\";\"官池\";\"other\"\n\"1809998\";\"Guanhaiwei\";\"main\"\n\"1809998\";\"Guancheng\";\"other\"\n\"1809998\";\"Guanchengzhen\";\"other\"\n\"1809998\";\"Guanhaiwei Zhen\";\"other\"\n\"1809998\";\"Kuan-ch'eng\";\"other\"\n\"1809998\";\"Kuan-ch'eng-chen\";\"other\"\n\"1809998\";\"Kuan-ch’eng\";\"other\"\n\"1809998\";\"Kuan-ch’eng-chen\";\"other\"\n\"1809998\";\"Kuan-hai-wei\";\"other\"\n\"1809998\";\"Kuan-hai-wei-ch'eng\";\"other\"\n\"1809998\";\"Kuan-hai-wei-ch’eng\";\"other\"\n\"1809998\";\"观海卫\";\"other\"\n\"1809998\";\"观海卫镇\";\"other\"\n\"1810013\";\"Guanbu\";\"main\"\n\"1810013\";\"Guanbu Zhen\";\"other\"\n\"1810013\";\"guan bu\";\"other\"\n\"1810013\";\"关埠\";\"other\"\n\"1810053\";\"Goujie\";\"main\"\n\"1810053\";\"Goujie Zhen\";\"other\"\n\"1810053\";\"Kou-chieh\";\"other\"\n\"1810053\";\"Kou-chieh-tzu\";\"other\"\n\"1810053\";\"Kowkaitze\";\"other\"\n\"1810053\";\"gou jie\";\"other\"\n\"1810053\";\"gou jie zhen\";\"other\"\n\"1810053\";\"狗街\";\"other\"\n\"1810053\";\"狗街镇\";\"other\"\n\"1810073\";\"Gongyi\";\"main\"\n\"1810073\";\"Gongyibu\";\"other\"\n\"1810073\";\"Gongyizhen\";\"other\"\n\"1810073\";\"公易\";\"other\"\n\"1810073\";\"公易镇\";\"other\"\n\"1810094\";\"Gongqiao\";\"main\"\n\"1810094\";\"Gongqiao Zhen\";\"other\"\n\"1810094\";\"Gongshengqiao\";\"other\"\n\"1810094\";\"Kung-ch'eng-ch'iao\";\"other\"\n\"1810094\";\"Kung-ch’eng-ch’iao\";\"other\"\n\"1810094\";\"Kung-sheng-ch'iao\";\"other\"\n\"1810094\";\"Kung-sheng-ch’iao\";\"other\"\n\"1810094\";\"gong qiao\";\"other\"\n\"1810094\";\"gong qiao zhen\";\"other\"\n\"1810094\";\"功桥\";\"other\"\n\"1810094\";\"功桥镇\";\"other\"\n\"1810104\";\"Gongping\";\"main\"\n\"1810104\";\"Kongpeng\";\"other\"\n\"1810104\";\"Kung-p'ing\";\"other\"\n\"1810104\";\"Kung-p’ing\";\"other\"\n\"1810104\";\"gong ping\";\"other\"\n\"1810104\";\"公平\";\"other\"\n\"1810120\";\"Gongjing\";\"main\"\n\"1810120\";\"KUNGTSING\";\"other\"\n\"1810120\";\"Kung-ching\";\"other\"\n\"1810120\";\"gong jing\";\"other\"\n\"1810120\";\"贡井\";\"other\"\n\"1810135\";\"Gonghe\";\"main\"\n\"1810135\";\"Mou-ting\";\"other\"\n\"1810135\";\"Mou-ting-ch'eng\";\"other\"\n\"1810135\";\"Mou-ting-ch’eng\";\"other\"\n\"1810135\";\"Mou-ting-hsien\";\"other\"\n\"1810135\";\"Mouding\";\"other\"\n\"1810135\";\"Mowting-hsien\";\"other\"\n\"1810135\";\"Ting-yuan\";\"other\"\n\"1810135\";\"Ting-yüan\";\"other\"\n\"1810135\";\"gong he\";\"other\"\n\"1810135\";\"共和\";\"other\"\n\"1810141\";\"Gongdian\";\"main\"\n\"1810141\";\"gong dian\";\"other\"\n\"1810141\";\"龚店\";\"other\"\n\"1810147\";\"Gongchuan\";\"main\"\n\"1810147\";\"Gongchuan Zhen\";\"other\"\n\"1810147\";\"Kung-ch'uan\";\"other\"\n\"1810147\";\"Kung-ch’uan\";\"other\"\n\"1810147\";\"贡川\";\"other\"\n\"1810147\";\"贡川镇\";\"other\"\n\"1810152\";\"Gongcheng\";\"main\"\n\"1810152\";\"Kung-ch'eng\";\"other\"\n\"1810152\";\"Kung-ch'eng-chen\";\"other\"\n\"1810152\";\"Kung-ch'eng-hsien\";\"other\"\n\"1810152\";\"Kung-ch’eng\";\"other\"\n\"1810152\";\"Kung-ch’eng-chen\";\"other\"\n\"1810152\";\"Kung-ch’eng-hsien\";\"other\"\n\"1810152\";\"gong cheng\";\"other\"\n\"1810152\";\"恭城\";\"other\"\n\"1810159\";\"Gongba\";\"main\"\n\"1810159\";\"拱坝\";\"other\"\n\"1810176\";\"Geyuan\";\"main\"\n\"1810176\";\"Geyuan Zhen\";\"other\"\n\"1810176\";\"Ko-yuan\";\"other\"\n\"1810176\";\"Ko-yüan\";\"other\"\n\"1810176\";\"ge yuan\";\"other\"\n\"1810176\";\"ge yuan zhen\";\"other\"\n\"1810176\";\"葛源\";\"other\"\n\"1810176\";\"葛源镇\";\"other\"\n\"1810190\";\"Geshan\";\"main\"\n\"1810190\";\"Geshan Zhen\";\"other\"\n\"1810190\";\"Ko-shan\";\"other\"\n\"1810190\";\"Ko-shan-ts'un\";\"other\"\n\"1810190\";\"Ko-shan-ts’un\";\"other\"\n\"1810190\";\"ge shan\";\"other\"\n\"1810190\";\"歌山\";\"other\"\n\"1810190\";\"歌山镇\";\"other\"\n\"1810199\";\"Gengzhen\";\"main\"\n\"1810199\";\"Keng-chen\";\"other\"\n\"1810199\";\"Keng-chia-chi-chen\";\"other\"\n\"1810199\";\"geng zhen\";\"other\"\n\"1810199\";\"耿镇\";\"other\"\n\"1810202\";\"Gengwan\";\"main\"\n\"1810202\";\"Gengjiawan\";\"other\"\n\"1810202\";\"Gengwan Xiang\";\"other\"\n\"1810202\";\"Keng-chia-wan\";\"other\"\n\"1810202\";\"耿家\";\"other\"\n\"1810202\";\"耿家乡\";\"other\"\n\"1810202\";\"耿家湾\";\"other\"\n\"1810233\";\"Geliao\";\"main\"\n\"1810233\";\"Ko-liao\";\"other\"\n\"1810233\";\"Ko-liao-ts'un\";\"other\"\n\"1810233\";\"Ko-liao-ts’un\";\"other\"\n\"1810240\";\"Xicheng\";\"main\"\n\"1810240\";\"Gejiu\";\"other\"\n\"1810240\";\"Ko-chiu\";\"other\"\n\"1810240\";\"Ko-chiu-hsien\";\"other\"\n\"1810240\";\"Ko-chiu-shih\";\"other\"\n\"1810240\";\"Kokiu\";\"other\"\n\"1810240\";\"Kokiu-hsien\";\"other\"\n\"1810240\";\"Kokiuchang\";\"other\"\n\"1810240\";\"Ku-chiu\";\"other\"\n\"1810240\";\"ge jiu shi\";\"other\"\n\"1810240\";\"个旧市\";\"other\"\n\"1810240\";\"锡城\";\"other\"\n\"1810256\";\"Gedong\";\"main\"\n\"1810256\";\"Fangshan\";\"other\"\n\"1810256\";\"Ko-tung\";\"other\"\n\"1810256\";\"Ko-tung-chen\";\"other\"\n\"1810256\";\"ge dong\";\"other\"\n\"1810256\";\"圪洞\";\"other\"\n\"1810271\";\"Ganzi\";\"main\"\n\"1810271\";\"Garze\";\"other\"\n\"1810271\";\"Garzê\";\"other\"\n\"1810271\";\"Kan-tze-hsien\";\"other\"\n\"1810271\";\"Kan-tzu\";\"other\"\n\"1810271\";\"Kantse\";\"other\"\n\"1810271\";\"Kantsi\";\"other\"\n\"1810271\";\"Kantze\";\"other\"\n\"1810271\";\"gan zi\";\"other\"\n\"1810271\";\"甘孜\";\"other\"\n\"1810286\";\"Gaozhuang\";\"main\"\n\"1810291\";\"Gaozhuang\";\"main\"\n\"1810291\";\"Gaozhuang Zhen\";\"other\"\n\"1810291\";\"Kao-chuang\";\"other\"\n\"1810291\";\"gao zhuang\";\"other\"\n\"1810291\";\"gao zhuang zhen\";\"other\"\n\"1810291\";\"高庄\";\"other\"\n\"1810291\";\"高庄镇\";\"other\"\n\"1810295\";\"Gaozhou\";\"main\"\n\"1810295\";\"Kao-chou\";\"other\"\n\"1810295\";\"Kaochow\";\"other\"\n\"1810295\";\"Kochow\";\"other\"\n\"1810295\";\"Kochowfu\";\"other\"\n\"1810295\";\"Mao-ming\";\"other\"\n\"1810295\";\"Mao-ming-hsien\";\"other\"\n\"1810295\";\"Mowming\";\"other\"\n\"1810295\";\"高州\";\"other\"\n\"1810301\";\"Gaozeng\";\"main\"\n\"1810301\";\"Kao-tseng\";\"other\"\n\"1810309\";\"Gaoyou\";\"main\"\n\"1810309\";\"Kao-yu\";\"other\"\n\"1810309\";\"Kao-yu-ch'eng\";\"other\"\n\"1810309\";\"Kao-yu-ch’eng\";\"other\"\n\"1810309\";\"Kao-yu-hsien\";\"other\"\n\"1810309\";\"Kaoyuchow\";\"other\"\n\"1810314\";\"Gaoyi\";\"main\"\n\"1810314\";\"Kao-i\";\"other\"\n\"1810314\";\"gao yi\";\"other\"\n\"1810314\";\"高邑\";\"other\"\n\"1810330\";\"Gaoya\";\"main\"\n\"1810330\";\"Gaoya Zhen\";\"other\"\n\"1810330\";\"Kao-ya\";\"other\"\n\"1810330\";\"Kao-ya-chen\";\"other\"\n\"1810330\";\"Kao-yai-chen\";\"other\"\n\"1810330\";\"Kao-yen\";\"other\"\n\"1810330\";\"Kao-yen-chen\";\"other\"\n\"1810330\";\"高崖\";\"other\"\n\"1810330\";\"高崖镇\";\"other\"\n\"1810335\";\"Gaoxing\";\"main\"\n\"1810335\";\"Gaoxing Zhen\";\"other\"\n\"1810335\";\"Gaoxingxu\";\"other\"\n\"1810335\";\"Kao-hsing\";\"other\"\n\"1810335\";\"Kao-hsing-hsu\";\"other\"\n\"1810335\";\"Kao-hsing-hsü\";\"other\"\n\"1810335\";\"高兴\";\"other\"\n\"1810335\";\"高兴镇\";\"other\"\n\"1810359\";\"Gaotangling\";\"main\"\n\"1810359\";\"Kao-t'ang-ling\";\"other\"\n\"1810359\";\"Kao-t’ang-ling\";\"other\"\n\"1810359\";\"Wangcheng\";\"other\"\n\"1810359\";\"gao tang ling\";\"other\"\n\"1810359\";\"高塘岭\";\"other\"\n\"1810364\";\"Gaotang\";\"main\"\n\"1810364\";\"Gaotang Zhen\";\"other\"\n\"1810364\";\"Kao-t'ang\";\"other\"\n\"1810364\";\"Kao-t'ang-chen\";\"other\"\n\"1810364\";\"Kao-t'ang-chieh\";\"other\"\n\"1810364\";\"Kao-t’ang\";\"other\"\n\"1810364\";\"Kao-t’ang-chen\";\"other\"\n\"1810364\";\"Kao-t’ang-chieh\";\"other\"\n\"1810364\";\"gao tang\";\"other\"\n\"1810364\";\"高塘\";\"other\"\n\"1810367\";\"Gaotang\";\"main\"\n\"1810367\";\"Gaotang Zhen\";\"other\"\n\"1810367\";\"Kao-t'ang\";\"other\"\n\"1810367\";\"Kao-t’ang\";\"other\"\n\"1810367\";\"高唐\";\"other\"\n\"1810367\";\"高唐镇\";\"other\"\n\"1810371\";\"Gaotan\";\"main\"\n\"1810371\";\"gao tan\";\"other\"\n\"1810371\";\"高潭\";\"other\"\n\"1810399\";\"Gaoqiu\";\"main\"\n\"1810399\";\"Gaoqiu Zhen\";\"other\"\n\"1810399\";\"gao qiu\";\"other\"\n\"1810399\";\"gao qiu zhen\";\"other\"\n\"1810399\";\"高丘\";\"other\"\n\"1810399\";\"高丘镇\";\"other\"\n\"1810410\";\"Gaoqiao\";\"main\"\n\"1810410\";\"高桥\";\"other\"\n\"1810420\";\"Gaoqiao\";\"main\"\n\"1810420\";\"Gaoqiao Zhen\";\"other\"\n\"1810420\";\"Kao-ch'iao\";\"other\"\n\"1810420\";\"Kao-ch’iao\";\"other\"\n\"1810420\";\"gao qiao\";\"other\"\n\"1810420\";\"gao qiao zhen\";\"other\"\n\"1810420\";\"高桥\";\"other\"\n\"1810420\";\"高桥镇\";\"other\"\n\"1810425\";\"Gaoyi\";\"main\"\n\"1810425\";\"Gaoqiao\";\"other\"\n\"1810425\";\"Gaoyi Xiang\";\"other\"\n\"1810425\";\"Kao-i\";\"other\"\n\"1810427\";\"Gaoqiao\";\"main\"\n\"1810427\";\"Gaoqiao Zhen\";\"other\"\n\"1810427\";\"Kao-ch'iao\";\"other\"\n\"1810427\";\"Kao-ch’iao\";\"other\"\n\"1810427\";\"高桥\";\"other\"\n\"1810427\";\"高桥镇\";\"other\"\n\"1810428\";\"Gaoqiao\";\"main\"\n\"1810428\";\"Kao-ch'iao\";\"other\"\n\"1810428\";\"Kao-ch’iao\";\"other\"\n\"1810437\";\"Gaoping\";\"main\"\n\"1810437\";\"Nan-ch'ung\";\"other\"\n\"1810437\";\"Nan-ch’ung\";\"other\"\n\"1810437\";\"Nanchong\";\"other\"\n\"1810437\";\"高坪\";\"other\"\n\"1810447\";\"Gaoniang\";\"main\"\n\"1810447\";\"Kao-niang\";\"other\"\n\"1810447\";\"Kao-niang-chen\";\"other\"\n\"1810458\";\"Gaomi\";\"main\"\n\"1810458\";\"Kao-mi\";\"other\"\n\"1810458\";\"Kao-mi-hsien\";\"other\"\n\"1810464\";\"Gaoluo\";\"main\"\n\"1810464\";\"Gaoluo Xiang\";\"other\"\n\"1810464\";\"Kao-lo\";\"other\"\n\"1810464\";\"gao luo\";\"other\"\n\"1810464\";\"gao luo xiang\";\"other\"\n\"1810464\";\"高罗\";\"other\"\n\"1810464\";\"高罗乡\";\"other\"\n\"1810489\";\"Gaoleshan\";\"main\"\n\"1810489\";\"Gaoleshan Zhen\";\"other\"\n\"1810489\";\"Hsien-feng\";\"other\"\n\"1810489\";\"Hsien-feng-hsien\";\"other\"\n\"1810489\";\"Sienfenghsien\";\"other\"\n\"1810489\";\"Xianfeng\";\"other\"\n\"1810489\";\"gao le shan\";\"other\"\n\"1810489\";\"gao le shan zhen\";\"other\"\n\"1810489\";\"高乐山\";\"other\"\n\"1810489\";\"高乐山镇\";\"other\"\n\"1810500\";\"Gaojingzhuang\";\"main\"\n\"1810500\";\"Kao-ching-chuang\";\"other\"\n\"1810533\";\"Gaojiabu\";\"main\"\n\"1810533\";\"Gaojiabu Xiang\";\"other\"\n\"1810533\";\"Kao-chia-pao\";\"other\"\n\"1810533\";\"Kao-chia-pao-ts'un\";\"other\"\n\"1810533\";\"Kao-chia-pao-ts’un\";\"other\"\n\"1810533\";\"高家堡\";\"other\"\n\"1810533\";\"高家堡乡\";\"other\"\n\"1810545\";\"Gaohe\";\"main\"\n\"1810545\";\"Ao-ho-fou\";\"other\"\n\"1810545\";\"Gaohebu\";\"other\"\n\"1810545\";\"Kao-ho\";\"other\"\n\"1810545\";\"Kao-ho-fou\";\"other\"\n\"1810545\";\"Kao-ho-pu\";\"other\"\n\"1810545\";\"Kaohofow\";\"other\"\n\"1810545\";\"gao he\";\"other\"\n\"1810545\";\"高河\";\"other\"\n\"1810553\";\"Gaogou\";\"main\"\n\"1810553\";\"Kao-chia-kou\";\"other\"\n\"1810553\";\"Kao-kou\";\"other\"\n\"1810553\";\"Kao-kou-chen\";\"other\"\n\"1810593\";\"Gaocun\";\"main\"\n\"1810593\";\"Kao-ts'un\";\"other\"\n\"1810593\";\"Kao-ts'un-chen\";\"other\"\n\"1810593\";\"Kao-ts’un\";\"other\"\n\"1810593\";\"Kao-ts’un-chen\";\"other\"\n\"1810593\";\"Ma-yang-hsien\";\"other\"\n\"1810593\";\"Mayang\";\"other\"\n\"1810593\";\"gao cun\";\"other\"\n\"1810593\";\"高村\";\"other\"\n\"1810638\";\"Ganzhou\";\"main\"\n\"1810638\";\"Kan\";\"other\"\n\"1810638\";\"Kan-chou\";\"other\"\n\"1810638\";\"Kan-chou-shih\";\"other\"\n\"1810638\";\"Kan-hsien\";\"other\"\n\"1810638\";\"Kanchow\";\"other\"\n\"1810638\";\"gan zhou\";\"other\"\n\"1810638\";\"赣州\";\"other\"\n\"1810645\";\"Ganyan\";\"main\"\n\"1810645\";\"Ganyan Tujiazu Xiang\";\"other\"\n\"1810645\";\"gan yan\";\"other\"\n\"1810645\";\"gan yan tu jia zu xiang\";\"other\"\n\"1810645\";\"甘堰\";\"other\"\n\"1810645\";\"甘堰土家族乡\";\"other\"\n\"1810670\";\"Gantang\";\"main\"\n\"1810670\";\"Kan-t'ang\";\"other\"\n\"1810670\";\"Kan-t'ang-pao\";\"other\"\n\"1810670\";\"Kan-t’ang\";\"other\"\n\"1810670\";\"Kan-t’ang-pao\";\"other\"\n\"1810671\";\"Gantang\";\"main\"\n\"1810671\";\"Kan-t'ang\";\"other\"\n\"1810671\";\"Kan-t’ang\";\"other\"\n\"1810673\";\"Lingchuan\";\"main\"\n\"1810673\";\"Gantang\";\"other\"\n\"1810673\";\"Kan-t'ang\";\"other\"\n\"1810673\";\"Kan-t'ang-hsiang\";\"other\"\n\"1810673\";\"Kan-t'ang-hsu\";\"other\"\n\"1810673\";\"Kan-t'ang-tu\";\"other\"\n\"1810673\";\"Kan-t’ang\";\"other\"\n\"1810673\";\"Kan-t’ang-hsiang\";\"other\"\n\"1810673\";\"Kan-t’ang-hsü\";\"other\"\n\"1810673\";\"Kan-t’ang-tu\";\"other\"\n\"1810673\";\"ling chuan\";\"other\"\n\"1810673\";\"灵川\";\"other\"\n\"1810677\";\"Ganshui\";\"main\"\n\"1810677\";\"Kan-shui\";\"other\"\n\"1810677\";\"Kan-shui-ch'ang\";\"other\"\n\"1810677\";\"Kan-shui-ch’ang\";\"other\"\n\"1810692\";\"Ganlin\";\"main\"\n\"1810692\";\"Ganlin Zhen\";\"other\"\n\"1810692\";\"Kan-lin\";\"other\"\n\"1810692\";\"gan lin zhen\";\"other\"\n\"1810692\";\"甘霖\";\"other\"\n\"1810692\";\"甘霖镇\";\"other\"\n\"1810694\";\"Ganlan\";\"main\"\n\"1810694\";\"Ganlan Zhen\";\"other\"\n\"1810694\";\"Kan-lan\";\"other\"\n\"1810694\";\"干览\";\"other\"\n\"1810694\";\"干览镇\";\"other\"\n\"1810699\";\"Ganjing\";\"main\"\n\"1810699\";\"Ganjing Zhen\";\"other\"\n\"1810699\";\"Kan-ching\";\"other\"\n\"1810699\";\"Nan-kan-ching\";\"other\"\n\"1810699\";\"gan jing\";\"other\"\n\"1810699\";\"gan jing zhen\";\"other\"\n\"1810699\";\"甘井\";\"other\"\n\"1810699\";\"甘井镇\";\"other\"\n\"1810705\";\"Ganjia\";\"main\"\n\"1810705\";\"Ganjia Xiang\";\"other\"\n\"1810705\";\"甘加\";\"other\"\n\"1810705\";\"甘加乡\";\"other\"\n\"1810708\";\"Ganhe\";\"main\"\n\"1810708\";\"Ganhe Zhen\";\"other\"\n\"1810708\";\"Kan-ho\";\"other\"\n\"1810708\";\"gan he\";\"other\"\n\"1810708\";\"gan he zhen\";\"other\"\n\"1810708\";\"甘河\";\"other\"\n\"1810708\";\"甘河镇\";\"other\"\n\"1810730\";\"Gangshangji\";\"main\"\n\"1810730\";\"Gangshangji Zhen\";\"other\"\n\"1810730\";\"Kang-shang-chi\";\"other\"\n\"1810730\";\"岗上积\";\"other\"\n\"1810730\";\"岗上积镇\";\"other\"\n\"1810736\";\"Gangouyi\";\"main\"\n\"1810736\";\"Kan-kou-i\";\"other\"\n\"1810736\";\"甘沟驿\";\"other\"\n\"1810760\";\"Gangkou\";\"main\"\n\"1810760\";\"Gangkou Zhen\";\"other\"\n\"1810760\";\"Kang-k'ou\";\"other\"\n\"1810760\";\"Kang-k’ou\";\"other\"\n\"1810760\";\"gang kou\";\"other\"\n\"1810760\";\"gang kou zhen\";\"other\"\n\"1810760\";\"港口\";\"other\"\n\"1810760\";\"港口镇\";\"other\"\n\"1810762\";\"Gangkou\";\"main\"\n\"1810762\";\"Gangkou Zhen\";\"other\"\n\"1810762\";\"Kang-k'ou\";\"other\"\n\"1810762\";\"Kang-k’ou\";\"other\"\n\"1810762\";\"gang kou\";\"other\"\n\"1810762\";\"港口\";\"other\"\n\"1810777\";\"Yaluhu\";\"main\"\n\"1810777\";\"Gan'dutan\";\"other\"\n\"1810777\";\"Gando\";\"other\"\n\"1810777\";\"Gandu\";\"other\"\n\"1810777\";\"Gandu Zhen\";\"other\"\n\"1810777\";\"Ganducheng\";\"other\"\n\"1810777\";\"Gan’dutan\";\"other\"\n\"1810777\";\"Kan-tou-t'ang\";\"other\"\n\"1810777\";\"Kan-tou-t’ang\";\"other\"\n\"1810777\";\"Kan-tu\";\"other\"\n\"1810777\";\"Kan-tu-ssu\";\"other\"\n\"1810777\";\"Kan-tu-t'ang\";\"other\"\n\"1810777\";\"Kan-tu-t’ang\";\"other\"\n\"1810777\";\"牙路乎\";\"other\"\n\"1810777\";\"甘都镇\";\"other\"\n\"1810783\";\"Gancheng\";\"main\"\n\"1810783\";\"Gancheng Xiang\";\"other\"\n\"1810783\";\"Ganchengzi\";\"other\"\n\"1810783\";\"甘城\";\"other\"\n\"1810783\";\"甘城乡\";\"other\"\n\"1810797\";\"Gaiyang\";\"main\"\n\"1810797\";\"Gaiyang Zhen\";\"other\"\n\"1810797\";\"Kai-yang\";\"other\"\n\"1810797\";\"盖洋\";\"other\"\n\"1810797\";\"盖洋镇\";\"other\"\n\"1810804\";\"Gabasumdo\";\"main\"\n\"1810804\";\"Gabasongduo\";\"other\"\n\"1810804\";\"Ka-pa-sung-tu\";\"other\"\n\"1810804\";\"Lo-pa-sung-tu\";\"other\"\n\"1810804\";\"T'ung-te\";\"other\"\n\"1810804\";\"Tongde\";\"other\"\n\"1810804\";\"T’ung-te\";\"other\"\n\"1810804\";\"Ya-pa-sung-tu\";\"other\"\n\"1810804\";\"尕巴松多\";\"other\"\n\"1810808\";\"Fuzhuang\";\"main\"\n\"1810821\";\"Fuzhou\";\"main\"\n\"1810821\";\"Foochow\";\"other\"\n\"1810821\";\"Fu-chou\";\"other\"\n\"1810821\";\"Fu-chou-shih\";\"other\"\n\"1810821\";\"Fuchau\";\"other\"\n\"1810821\";\"Fuchzhou\";\"other\"\n\"1810821\";\"Fudzou\";\"other\"\n\"1810821\";\"Fudžou\";\"other\"\n\"1810821\";\"Hok-ciu\";\"other\"\n\"1810821\";\"Hók-ciŭ\";\"other\"\n\"1810821\";\"Lin-sen\";\"other\"\n\"1810821\";\"Lin-sen-hsien\";\"other\"\n\"1810821\";\"Min Hsien\";\"other\"\n\"1810821\";\"Min-hou\";\"other\"\n\"1810821\";\"Min-hou-hsien\";\"other\"\n\"1810821\";\"Min-hou-hsien-ch'eng\";\"other\"\n\"1810821\";\"Min-hou-hsien-ch’eng\";\"other\"\n\"1810821\";\"Minhow\";\"other\"\n\"1810821\";\"Minhow-hsien\";\"other\"\n\"1810821\";\"Phuc Chau\";\"other\"\n\"1810821\";\"Phúc Châu\";\"other\"\n\"1810821\";\"fu zhou\";\"other\"\n\"1810821\";\"fu zhou shi\";\"other\"\n\"1810821\";\"Фучжоу\";\"other\"\n\"1810821\";\"فۇجو شەھىرى\";\"other\"\n\"1810821\";\"福州\";\"other\"\n\"1810821\";\"福州市\";\"other\"\n\"1810822\";\"Fujia\";\"main\"\n\"1810822\";\"Fujia Zhen\";\"other\"\n\"1810822\";\"Fuzhen\";\"other\"\n\"1810822\";\"伏家\";\"other\"\n\"1810822\";\"伏家镇\";\"other\"\n\"1810845\";\"Fuyang\";\"main\"\n\"1810845\";\"Fou-yang\";\"other\"\n\"1810845\";\"Fou-yang-hsien\";\"other\"\n\"1810845\";\"Fowyang\";\"other\"\n\"1810845\";\"Fowyang-hsien\";\"other\"\n\"1810845\";\"Fu-yang-shih\";\"other\"\n\"1810845\";\"Fujan\";\"other\"\n\"1810845\";\"Fuyan\";\"other\"\n\"1810845\";\"Inchzhou\";\"other\"\n\"1810845\";\"Puyanghsien\";\"other\"\n\"1810845\";\"Ying-chou\";\"other\"\n\"1810845\";\"Yingchow\";\"other\"\n\"1810845\";\"Yingchow-fu\";\"other\"\n\"1810845\";\"fu yang shi\";\"other\"\n\"1810845\";\"Фуян\";\"other\"\n\"1810845\";\"阜阳市\";\"other\"\n\"1810846\";\"Fuyang\";\"main\"\n\"1810846\";\"Fu-yang-hsien\";\"other\"\n\"1810846\";\"Fujan'\";\"other\"\n\"1810846\";\"Puyang\";\"other\"\n\"1810846\";\"Фуянь\";\"other\"\n\"1810848\";\"Fuyang\";\"main\"\n\"1810848\";\"Chiu-fu-ch'uan\";\"other\"\n\"1810848\";\"Chiu-fu-ch’uan\";\"other\"\n\"1810848\";\"Fu-ch'uan-hsien\";\"other\"\n\"1810848\";\"Fu-ch’uan-hsien\";\"other\"\n\"1810848\";\"Fu-yang-chen\";\"other\"\n\"1810848\";\"Fuchuan\";\"other\"\n\"1810848\";\"Fuchwan\";\"other\"\n\"1810848\";\"Fuchwan-hsien\";\"other\"\n\"1810848\";\"fu yang\";\"other\"\n\"1810848\";\"富阳\";\"other\"\n\"1810849\";\"Fuyang\";\"main\"\n\"1810849\";\"Fuyang Zhen\";\"other\"\n\"1810849\";\"fu yang\";\"other\"\n\"1810849\";\"浮洋\";\"other\"\n\"1810895\";\"Futian\";\"main\"\n\"1810895\";\"Fu-t'ien\";\"other\"\n\"1810895\";\"Fu-t'ien-chen\";\"other\"\n\"1810895\";\"Fu-t’ien\";\"other\"\n\"1810895\";\"Fu-t’ien-chen\";\"other\"\n\"1810895\";\"Futian Jie\";\"other\"\n\"1810895\";\"富田\";\"other\"\n\"1810895\";\"富田街\";\"other\"\n\"1810897\";\"Futian\";\"main\"\n\"1810897\";\"Fu-t'ien\";\"other\"\n\"1810897\";\"Fu-t'ien-hsu\";\"other\"\n\"1810897\";\"Fu-t’ien\";\"other\"\n\"1810897\";\"Fu-t’ien-hsü\";\"other\"\n\"1810897\";\"Fuktin\";\"other\"\n\"1810897\";\"Futian Zhen\";\"other\"\n\"1810897\";\"fu tian\";\"other\"\n\"1810897\";\"福田\";\"other\"\n\"1810909\";\"Fushui\";\"main\"\n\"1810909\";\"Fu-shui-chen\";\"other\"\n\"1810909\";\"Fushui Zhen\";\"other\"\n\"1810909\";\"fu shui\";\"other\"\n\"1810909\";\"敷水\";\"other\"\n\"1810915\";\"Fushanzhuang\";\"main\"\n\"1810915\";\"Fu-shan-chuang\";\"other\"\n\"1810915\";\"Fushanzhuang Xiang\";\"other\"\n\"1810915\";\"福善庄\";\"other\"\n\"1810915\";\"福善庄乡\";\"other\"\n\"1810920\";\"Fushan\";\"main\"\n\"1810920\";\"Fu-shan-hsien\";\"other\"\n\"1810921\";\"Tiantan\";\"main\"\n\"1810921\";\"Fou-shan\";\"other\"\n\"1810921\";\"Fou-shan-hsien\";\"other\"\n\"1810921\";\"Fushan\";\"other\"\n\"1810921\";\"tian tan\";\"other\"\n\"1810921\";\"天坛\";\"other\"\n\"1810926\";\"Fushan\";\"main\"\n\"1810926\";\"Fushan Xiang\";\"other\"\n\"1810926\";\"富山\";\"other\"\n\"1810926\";\"富山乡\";\"other\"\n\"1810927\";\"Fushan\";\"main\"\n\"1810927\";\"Fushan Zhen\";\"other\"\n\"1810927\";\"fu shan\";\"other\"\n\"1810927\";\"浮山\";\"other\"\n\"1810979\";\"Fuling\";\"main\"\n\"1810979\";\"Fou-chou\";\"other\"\n\"1810979\";\"Fou-ling\";\"other\"\n\"1810979\";\"Fou-ling-hsien\";\"other\"\n\"1810979\";\"Fowchou\";\"other\"\n\"1810979\";\"Fowchow\";\"other\"\n\"1810979\";\"Fowling\";\"other\"\n\"1810979\";\"Fowlinghsien\";\"other\"\n\"1810979\";\"Fuchou\";\"other\"\n\"1810979\";\"Fulin\";\"other\"\n\"1810979\";\"Pei-ling\";\"other\"\n\"1810979\";\"Фулин\";\"other\"\n\"1810980\";\"Fuling\";\"main\"\n\"1810980\";\"Fu-ling-chen\";\"other\"\n\"1810980\";\"Fuling Zhen\";\"other\"\n\"1810980\";\"fu ling\";\"other\"\n\"1810980\";\"富岭\";\"other\"\n\"1810980\";\"富岭镇\";\"other\"\n\"1810986\";\"Fuliangpengjie\";\"main\"\n\"1810986\";\"Fuliangpeng\";\"other\"\n\"1810986\";\"fu liang peng\";\"other\"\n\"1810986\";\"fu liang peng jie\";\"other\"\n\"1810986\";\"富良棚\";\"other\"\n\"1810986\";\"富良棚街\";\"other\"\n\"1810997\";\"Fukou\";\"main\"\n\"1810997\";\"Fukou Zhen\";\"other\"\n\"1810997\";\"富口\";\"other\"\n\"1810997\";\"富口镇\";\"other\"\n\"1811022\";\"Fushi\";\"main\"\n\"1811022\";\"Fu-shun-hsien\";\"other\"\n\"1811022\";\"Fujiang\";\"other\"\n\"1811022\";\"Fushun\";\"other\"\n\"1811022\";\"fu shi\";\"other\"\n\"1811022\";\"富世\";\"other\"\n\"1811028\";\"Fuji\";\"main\"\n\"1811028\";\"Fu-chi\";\"other\"\n\"1811028\";\"fu ji\";\"other\"\n\"1811028\";\"福集\";\"other\"\n\"1811044\";\"Fufeng\";\"main\"\n\"1811044\";\"Fu-feng-hsien\";\"other\"\n\"1811044\";\"Fu-feng-hsien-ch'eng\";\"other\"\n\"1811044\";\"Fu-feng-hsien-ch’eng\";\"other\"\n\"1811044\";\"Fufeng Xian\";\"other\"\n\"1811044\";\"Fufyn\";\"other\"\n\"1811044\";\"扶风\";\"other\"\n\"1811044\";\"扶风县\";\"other\"\n\"1811046\";\"Fu’e\";\"main\"\n\"1811046\";\"Fu'e\";\"ascii\"\n\"1811046\";\"Fu'e Zhen\";\"other\"\n\"1811046\";\"Fu-ho\";\"other\"\n\"1811046\";\"Fu-o\";\"other\"\n\"1811046\";\"Fu’e Zhen\";\"other\"\n\"1811046\";\"fu e\";\"other\"\n\"1811046\";\"fu e zhen\";\"other\"\n\"1811046\";\"富堨\";\"other\"\n\"1811046\";\"富堨镇\";\"other\"\n\"1811053\";\"Fudian\";\"main\"\n\"1811053\";\"Fu-tien\";\"other\"\n\"1811053\";\"Fudian Zhen\";\"other\"\n\"1811053\";\"fu dian\";\"other\"\n\"1811053\";\"fu dian zhen\";\"other\"\n\"1811053\";\"付店\";\"other\"\n\"1811053\";\"付店镇\";\"other\"\n\"1811066\";\"Fuchuan\";\"main\"\n\"1811066\";\"Fou-ch'uan-chi\";\"other\"\n\"1811066\";\"Fou-ch’uan-chi\";\"other\"\n\"1811066\";\"Fu-ch'uan-chi\";\"other\"\n\"1811066\";\"Fu-ch’uan-chi\";\"other\"\n\"1811066\";\"Fuchuan Zhen\";\"other\"\n\"1811066\";\"阜川\";\"other\"\n\"1811066\";\"阜川镇\";\"other\"\n\"1811082\";\"Fubao\";\"main\"\n\"1811082\";\"Fo-pao-ch'ang\";\"other\"\n\"1811082\";\"Fo-pao-ch’ang\";\"other\"\n\"1811082\";\"Fu-pao\";\"other\"\n\"1811082\";\"Fubaochang\";\"other\"\n\"1811082\";\"fu bao\";\"other\"\n\"1811082\";\"福宝\";\"other\"\n\"1811103\";\"Foshan\";\"main\"\n\"1811103\";\"Fachan\";\"other\"\n\"1811103\";\"Fatshan\";\"other\"\n\"1811103\";\"Fo-shan-chen\";\"other\"\n\"1811103\";\"Fo-shan-shih\";\"other\"\n\"1811103\";\"Foshan'\";\"other\"\n\"1811103\";\"Fu-shan-chen\";\"other\"\n\"1811103\";\"Namhoi\";\"other\"\n\"1811103\";\"Nan-hai\";\"other\"\n\"1811103\";\"Nanhai-hsien\";\"other\"\n\"1811103\";\"Nanhoi\";\"other\"\n\"1811103\";\"Nom Hoy\";\"other\"\n\"1811103\";\"Phat Son\";\"other\"\n\"1811103\";\"Phật Sơn\";\"other\"\n\"1811103\";\"fo shan\";\"other\"\n\"1811103\";\"fu shan shi\";\"other\"\n\"1811103\";\"Фошань\";\"other\"\n\"1811103\";\"فۇشەن شەھىر\";\"other\"\n\"1811103\";\"仏山\";\"other\"\n\"1811103\";\"佛山\";\"other\"\n\"1811103\";\"佛山市\";\"other\"\n\"1811114\";\"Fenyi\";\"main\"\n\"1811114\";\"Chieh-ch'iao\";\"other\"\n\"1811114\";\"Chieh-ch'iao-chen\";\"other\"\n\"1811114\";\"Chieh-ch’iao\";\"other\"\n\"1811114\";\"Chieh-ch’iao-chen\";\"other\"\n\"1811114\";\"Fen-i\";\"other\"\n\"1811114\";\"Fen-i-chen\";\"other\"\n\"1811114\";\"I-chieh-ch'iao\";\"other\"\n\"1811114\";\"I-chieh-ch’iao\";\"other\"\n\"1811120\";\"Yong’an\";\"main\"\n\"1811120\";\"Yong'an\";\"ascii\"\n\"1811120\";\"Fen-hsi\";\"other\"\n\"1811120\";\"Fen-hsi-hsien\";\"other\"\n\"1811120\";\"Fen-hsi-hsien-ch'eng\";\"other\"\n\"1811120\";\"Fen-hsi-hsien-ch’eng\";\"other\"\n\"1811120\";\"Fensi\";\"other\"\n\"1811120\";\"Fenxi\";\"other\"\n\"1811120\";\"yong an\";\"other\"\n\"1811120\";\"永安\";\"other\"\n\"1811123\";\"Xiantai\";\"main\"\n\"1811123\";\"Fentai\";\"other\"\n\"1811123\";\"Xiantai Zhen\";\"other\"\n\"1811123\";\"xian tai\";\"other\"\n\"1811123\";\"仙台\";\"other\"\n\"1811151\";\"Yangqitan\";\"main\"\n\"1811151\";\"Fenkou\";\"other\"\n\"1811151\";\"Fenkou Zhen\";\"other\"\n\"1811151\";\"fen kou\";\"other\"\n\"1811151\";\"fen kou zhen\";\"other\"\n\"1811151\";\"yang qi tan\";\"other\"\n\"1811151\";\"杨旗坦\";\"other\"\n\"1811151\";\"汾口\";\"other\"\n\"1811151\";\"汾口镇\";\"other\"\n\"1811153\";\"Fenjie\";\"main\"\n\"1811153\";\"Fen-chieh\";\"other\"\n\"1811153\";\"Fen-chieh-chen\";\"other\"\n\"1811153\";\"Fenjie Zhen\";\"other\"\n\"1811153\";\"分界\";\"other\"\n\"1811153\";\"分界镇\";\"other\"\n\"1811167\";\"Fengzhou\";\"main\"\n\"1811167\";\"Chiu-feng-hsien\";\"other\"\n\"1811167\";\"Feng\";\"other\"\n\"1811167\";\"Feng-chou\";\"other\"\n\"1811167\";\"Feng-chou-chen\";\"other\"\n\"1811167\";\"Feng-hsien\";\"other\"\n\"1811167\";\"Fengzhou Zhen\";\"other\"\n\"1811167\";\"凤州\";\"other\"\n\"1811167\";\"凤州镇\";\"other\"\n\"1811169\";\"Fengzhou\";\"main\"\n\"1811169\";\"Feng-chou\";\"other\"\n\"1811169\";\"feng zhou\";\"other\"\n\"1811169\";\"丰州\";\"other\"\n\"1811173\";\"Fengyuan\";\"main\"\n\"1811173\";\"Feng-yuan-chen\";\"other\"\n\"1811173\";\"Feng-yüan-chen\";\"other\"\n\"1811173\";\"Fengyuan Zhen\";\"other\"\n\"1811173\";\"feng yuan\";\"other\"\n\"1811173\";\"丰原\";\"other\"\n\"1811174\";\"Fengyu\";\"main\"\n\"1811174\";\"Feng-yu-ts'un\";\"other\"\n\"1811174\";\"Feng-yü-ts’un\";\"other\"\n\"1811174\";\"Fengyu Xiang\";\"other\"\n\"1811174\";\"峰峪\";\"other\"\n\"1811174\";\"峰峪乡\";\"other\"\n\"1811182\";\"Fengyi\";\"main\"\n\"1811182\";\"Chiu-mao-hsien\";\"other\"\n\"1811182\";\"Feng-i\";\"other\"\n\"1811182\";\"Fengyizhen\";\"other\"\n\"1811182\";\"Mao\";\"other\"\n\"1811182\";\"Mao-hsien\";\"other\"\n\"1811182\";\"Mao-wen-ch'iang-tsu-tzu-chih-hsien\";\"other\"\n\"1811182\";\"Mao-wen-ch’iang-tsu-tzu-chih-hsien\";\"other\"\n\"1811182\";\"Maowen\";\"other\"\n\"1811182\";\"Mowchow\";\"other\"\n\"1811182\";\"Mowhsien\";\"other\"\n\"1811182\";\"feng yi\";\"other\"\n\"1811182\";\"凤仪\";\"other\"\n\"1811186\";\"Fengyang Fuchengzhen\";\"main\"\n\"1811186\";\"Chiu-feng-yang\";\"other\"\n\"1811186\";\"Chiu-feng-yang-fu-ch'eng\";\"other\"\n\"1811186\";\"Chiu-feng-yang-fu-ch’eng\";\"other\"\n\"1811186\";\"Feng-yang-hsien\";\"other\"\n\"1811186\";\"Fengyang\";\"other\"\n\"1811186\";\"feng yang fu cheng zhen\";\"other\"\n\"1811186\";\"凤阳府城镇\";\"other\"\n\"1811200\";\"Fengxian\";\"main\"\n\"1811200\";\"Feng\";\"other\"\n\"1811200\";\"Feng-hsien\";\"other\"\n\"1811207\";\"Fengxi\";\"main\"\n\"1811207\";\"Feng-hsi\";\"other\"\n\"1811207\";\"Fengxi Xiang\";\"other\"\n\"1811207\";\"枫溪\";\"other\"\n\"1811207\";\"枫溪乡\";\"other\"\n\"1811208\";\"Fengxi\";\"main\"\n\"1811208\";\"Feng-ch'i\";\"other\"\n\"1811208\";\"Feng-ch’i\";\"other\"\n\"1811208\";\"Feng-hsi\";\"other\"\n\"1811208\";\"Fengxi Zhen\";\"other\"\n\"1811208\";\"feng xi\";\"other\"\n\"1811208\";\"枫溪\";\"other\"\n\"1811224\";\"Fengtai\";\"main\"\n\"1811224\";\"Fengtaizhen\";\"other\"\n\"1811229\";\"Fengtai Chengguanzhen\";\"main\"\n\"1811229\";\"Feng-t'ai-hsien\";\"other\"\n\"1811229\";\"Feng-t’ai-hsien\";\"other\"\n\"1811229\";\"Fengtai\";\"other\"\n\"1811229\";\"feng tai cheng guan zhen\";\"other\"\n\"1811229\";\"凤台城关镇\";\"other\"\n\"1811245\";\"Fengshan\";\"main\"\n\"1811245\";\"Lo-t'ien\";\"other\"\n\"1811245\";\"Lo-t'ien-hsien\";\"other\"\n\"1811245\";\"Lo-t’ien\";\"other\"\n\"1811245\";\"Lo-t’ien-hsien\";\"other\"\n\"1811245\";\"Luotian\";\"other\"\n\"1811245\";\"feng shan\";\"other\"\n\"1811245\";\"凤山\";\"other\"\n\"1811248\";\"Fengshan\";\"main\"\n\"1811248\";\"Lo-yuan\";\"other\"\n\"1811248\";\"Lo-yuan-hsien\";\"other\"\n\"1811248\";\"Lo-yüan\";\"other\"\n\"1811248\";\"Lo-yüan-hsien\";\"other\"\n\"1811248\";\"Luoyuan\";\"other\"\n\"1811248\";\"Luyuanhsien\";\"other\"\n\"1811248\";\"feng shan\";\"other\"\n\"1811248\";\"凤山\";\"other\"\n\"1811249\";\"Fengshan\";\"main\"\n\"1811249\";\"Fengshan Xiang\";\"other\"\n\"1811249\";\"丰山\";\"other\"\n\"1811249\";\"丰山乡\";\"other\"\n\"1811254\";\"Fengcheng\";\"main\"\n\"1811254\";\"Feng-ch'eng-chen\";\"other\"\n\"1811254\";\"Feng-ch'eng-hsiang\";\"other\"\n\"1811254\";\"Feng-ch’eng-chen\";\"other\"\n\"1811254\";\"Feng-ch’eng-hsiang\";\"other\"\n\"1811254\";\"Feng-shan-hsien\";\"other\"\n\"1811254\";\"Feng-shan-hsien-ch'eng\";\"other\"\n\"1811254\";\"Feng-shan-hsien-ch’eng\";\"other\"\n\"1811254\";\"Fengshan\";\"other\"\n\"1811254\";\"feng cheng\";\"other\"\n\"1811254\";\"凤城\";\"other\"\n\"1811260\";\"Fengrun\";\"main\"\n\"1811260\";\"Chiu-feng-jun\";\"other\"\n\"1811260\";\"Feng-jun\";\"other\"\n\"1811260\";\"Feng-jun-ch'eng-kuan\";\"other\"\n\"1811260\";\"Feng-jun-ch’eng-kuan\";\"other\"\n\"1811260\";\"Feng-jun-hsien\";\"other\"\n\"1811267\";\"Fengqiao\";\"main\"\n\"1811267\";\"Feng-ch'iao\";\"other\"\n\"1811267\";\"Feng-ch'iao-chen\";\"other\"\n\"1811267\";\"Feng-ch’iao\";\"other\"\n\"1811267\";\"Feng-ch’iao-chen\";\"other\"\n\"1811267\";\"Fengkiao\";\"other\"\n\"1811267\";\"Fengqiao Zhen\";\"other\"\n\"1811267\";\"feng qiao zhen\";\"other\"\n\"1811267\";\"枫桥\";\"other\"\n\"1811267\";\"枫桥镇\";\"other\"\n\"1811268\";\"Fengpu\";\"main\"\n\"1811268\";\"Fong-pu\";\"other\"\n\"1811276\";\"Fengming\";\"main\"\n\"1811276\";\"Ch'i-shan\";\"other\"\n\"1811276\";\"Ch'i-shan-hsien\";\"other\"\n\"1811276\";\"Ch'i-shan-hsien-ch'eng\";\"other\"\n\"1811276\";\"Ch’i-shan\";\"other\"\n\"1811276\";\"Ch’i-shan-hsien\";\"other\"\n\"1811276\";\"Ch’i-shan-hsien-ch’eng\";\"other\"\n\"1811276\";\"Fengming Zhen\";\"other\"\n\"1811276\";\"Qishan\";\"other\"\n\"1811276\";\"Tsishan'\";\"other\"\n\"1811276\";\"Tsishan’\";\"other\"\n\"1811276\";\"岐山\";\"other\"\n\"1811276\";\"风鸣\";\"other\"\n\"1811276\";\"风鸣镇\";\"other\"\n\"1811281\";\"Fenglu\";\"main\"\n\"1811281\";\"Ch'eng-chiang\";\"other\"\n\"1811281\";\"Ch'eng-chiang-hsien\";\"other\"\n\"1811281\";\"Chengjiang\";\"other\"\n\"1811281\";\"Chengjiang Xian\";\"other\"\n\"1811281\";\"Chengkiang\";\"other\"\n\"1811281\";\"Chengkiang-hsien\";\"other\"\n\"1811281\";\"Ch’eng-chiang\";\"other\"\n\"1811281\";\"Ch’eng-chiang-hsien\";\"other\"\n\"1811281\";\"Fenglu Zhen\";\"other\"\n\"1811281\";\"Ho-yang\";\"other\"\n\"1811281\";\"cheng jiang\";\"other\"\n\"1811281\";\"cheng jiang xian\";\"other\"\n\"1811281\";\"feng lu\";\"other\"\n\"1811281\";\"feng lu zhen\";\"other\"\n\"1811281\";\"凤麓\";\"other\"\n\"1811281\";\"凤麓镇\";\"other\"\n\"1811281\";\"澄江\";\"other\"\n\"1811281\";\"澄江县\";\"other\"\n\"1811282\";\"Fenglingtou\";\"main\"\n\"1811282\";\"Fen-ling-t'ou\";\"other\"\n\"1811282\";\"Fen-ling-t’ou\";\"other\"\n\"1811282\";\"Fenglingtou Zhen\";\"other\"\n\"1811282\";\"feng ling tou\";\"other\"\n\"1811282\";\"feng ling tou zhen\";\"other\"\n\"1811282\";\"枫岭头\";\"other\"\n\"1811282\";\"枫岭头镇\";\"other\"\n\"1811293\";\"Fengli\";\"main\"\n\"1811293\";\"Feng-li-ch'ang\";\"other\"\n\"1811293\";\"Feng-li-chen\";\"other\"\n\"1811293\";\"Feng-li-ch’ang\";\"other\"\n\"1811293\";\"Fengli Zhen\";\"other\"\n\"1811293\";\"Fenglizhen\";\"other\"\n\"1811293\";\"丰利\";\"other\"\n\"1811293\";\"丰利镇\";\"other\"\n\"1811305\";\"Fengkou\";\"main\"\n\"1811305\";\"Fengkow\";\"other\"\n\"1811309\";\"Fengjing\";\"main\"\n\"1811309\";\"Feng-ching\";\"other\"\n\"1811309\";\"Feng-ching-chen\";\"other\"\n\"1811309\";\"Fengjingzhen\";\"other\"\n\"1811309\";\"Fengking\";\"other\"\n\"1811309\";\"枫泾\";\"other\"\n\"1811331\";\"Fenghuo\";\"main\"\n\"1811331\";\"Fenghuo Zhen\";\"other\"\n\"1811331\";\"feng huo\";\"other\"\n\"1811331\";\"feng huo zhen\";\"other\"\n\"1811331\";\"烽火\";\"other\"\n\"1811331\";\"烽火镇\";\"other\"\n\"1811332\";\"Fenghui\";\"main\"\n\"1811332\";\"Feng-hui-chen\";\"other\"\n\"1811332\";\"Fenghui Zhen\";\"other\"\n\"1811332\";\"Hui-feng-chen\";\"other\"\n\"1811332\";\"Shang-yu\";\"other\"\n\"1811332\";\"Shang-yu-hsien\";\"other\"\n\"1811332\";\"Shang-yü\";\"other\"\n\"1811332\";\"Shang-yü-hsien\";\"other\"\n\"1811332\";\"feng hui\";\"other\"\n\"1811332\";\"丰惠\";\"other\"\n\"1811332\";\"丰惠镇\";\"other\"\n\"1811362\";\"Fenghuang\";\"main\"\n\"1811362\";\"Fenghuang Zhen\";\"other\"\n\"1811362\";\"feng huang\";\"other\"\n\"1811362\";\"凤凰\";\"other\"\n\"1811377\";\"Fenggang\";\"main\"\n\"1811377\";\"Feng-chiang\";\"other\"\n\"1811377\";\"Fenggang Xiang\";\"other\"\n\"1811377\";\"枫港\";\"other\"\n\"1811377\";\"枫港乡\";\"other\"\n\"1811389\";\"Shuangzhu\";\"main\"\n\"1811389\";\"Feng-pu\";\"other\"\n\"1811389\";\"Feng-tu\";\"other\"\n\"1811389\";\"Fengdu\";\"other\"\n\"1811396\";\"Fengdie\";\"main\"\n\"1811396\";\"峰迭\";\"other\"\n\"1811415\";\"Fengcheng\";\"main\"\n\"1811415\";\"Chiu-feng-hsien\";\"other\"\n\"1811415\";\"Chiu-hsien\";\"other\"\n\"1811415\";\"Feng-hsien\";\"other\"\n\"1811415\";\"Feng-hsien-ch'eng\";\"other\"\n\"1811415\";\"Feng-hsien-ch’eng\";\"other\"\n\"1811415\";\"Feng-hsien-ku-chih\";\"other\"\n\"1811415\";\"Fengcheng Zhen\";\"other\"\n\"1811415\";\"奉城\";\"other\"\n\"1811415\";\"奉城镇\";\"other\"\n\"1811416\";\"Fengcheng\";\"main\"\n\"1811416\";\"Lianjiang\";\"other\"\n\"1811416\";\"Lien-chiang\";\"other\"\n\"1811416\";\"Lien-chiang-hsien\";\"other\"\n\"1811416\";\"Lien-chiang-hsien-ch'eng\";\"other\"\n\"1811416\";\"Lien-chiang-hsien-ch’eng\";\"other\"\n\"1811416\";\"Lienkang\";\"other\"\n\"1811416\";\"Lienkong\";\"other\"\n\"1811416\";\"Lienkong-hsien\";\"other\"\n\"1811416\";\"feng cheng\";\"other\"\n\"1811416\";\"凤城\";\"other\"\n\"1811417\";\"Fengcheng\";\"main\"\n\"1811417\";\"An-ch'i\";\"other\"\n\"1811417\";\"An-ch'i-hsien\";\"other\"\n\"1811417\";\"An-ch’i\";\"other\"\n\"1811417\";\"An-ch’i-hsien\";\"other\"\n\"1811417\";\"An-hsi\";\"other\"\n\"1811417\";\"Anki\";\"other\"\n\"1811417\";\"Ankihsien\";\"other\"\n\"1811417\";\"Anxi\";\"other\"\n\"1811417\";\"feng cheng\";\"other\"\n\"1811417\";\"凤城\";\"other\"\n\"1811418\";\"Fengcheng\";\"main\"\n\"1811418\";\"Yongding\";\"other\"\n\"1811418\";\"Yung-ting\";\"other\"\n\"1811418\";\"Yung-ting-hsien\";\"other\"\n\"1811418\";\"feng cheng\";\"other\"\n\"1811418\";\"凤城\";\"other\"\n\"1811419\";\"Fengcheng\";\"main\"\n\"1811419\";\"Ch'ang-ning\";\"other\"\n\"1811419\";\"Changninghsien\";\"other\"\n\"1811419\";\"Chongning\";\"other\"\n\"1811419\";\"Ch’ang-ning\";\"other\"\n\"1811419\";\"Hsin-feng\";\"other\"\n\"1811419\";\"Hsin-feng-hsien\";\"other\"\n\"1811419\";\"Hsin-feng-hsien-ch'eng\";\"other\"\n\"1811419\";\"Hsin-feng-hsien-ch’eng\";\"other\"\n\"1811419\";\"Sinfenghsien\";\"other\"\n\"1811419\";\"Sinfung\";\"other\"\n\"1811419\";\"Sun-feng-hsien\";\"other\"\n\"1811419\";\"Sunfung\";\"other\"\n\"1811419\";\"Xinfeng\";\"other\"\n\"1811419\";\"feng cheng\";\"other\"\n\"1811419\";\"丰城\";\"other\"\n\"1811440\";\"Feicheng\";\"main\"\n\"1811440\";\"Chiu-fei-hsien\";\"other\"\n\"1811440\";\"Fei\";\"other\"\n\"1811440\";\"Fei-hsien\";\"other\"\n\"1811440\";\"Fei-hsien-ch'eng\";\"other\"\n\"1811440\";\"Fei-hsien-ch’eng\";\"other\"\n\"1811440\";\"Feixian\";\"other\"\n\"1811440\";\"Pi-hsien\";\"other\"\n\"1811446\";\"Feiluan\";\"main\"\n\"1811479\";\"Fancheng\";\"main\"\n\"1811479\";\"Chiu-fan-chih\";\"other\"\n\"1811479\";\"Fan-chih\";\"other\"\n\"1811479\";\"Fan-chih-ch'eng\";\"other\"\n\"1811479\";\"Fan-chih-ch’eng\";\"other\"\n\"1811479\";\"Fan-chih-hsien\";\"other\"\n\"1811479\";\"Fan-shih\";\"other\"\n\"1811479\";\"Fancheng Zhen\";\"other\"\n\"1811479\";\"Fanshi Xian\";\"other\"\n\"1811479\";\"Fansze\";\"other\"\n\"1811479\";\"Fantzehsien\";\"other\"\n\"1811479\";\"fan cheng\";\"other\"\n\"1811479\";\"繁城\";\"other\"\n\"1811479\";\"繁城镇\";\"other\"\n\"1811479\";\"繁峙县\";\"other\"\n\"1811481\";\"Yangia\";\"main\"\n\"1811481\";\"Fan-shih\";\"other\"\n\"1811481\";\"Fanshi\";\"other\"\n\"1811481\";\"Fanshi Zhen\";\"other\"\n\"1811481\";\"Fanshizhen\";\"other\"\n\"1811481\";\"杨家\";\"other\"\n\"1811481\";\"范市\";\"other\"\n\"1811481\";\"范市镇\";\"other\"\n\"1811496\";\"Fanzhuangzi\";\"main\"\n\"1811496\";\"Fan-chia-chuang\";\"other\"\n\"1811496\";\"Fanchia\";\"other\"\n\"1811496\";\"Fanjiazhuang\";\"other\"\n\"1811501\";\"Fanjiazhai\";\"main\"\n\"1811501\";\"Fan-chia\";\"other\"\n\"1811501\";\"Fan-chia-chai\";\"other\"\n\"1811501\";\"范家寨\";\"other\"\n\"1811512\";\"Fanjiachuan\";\"main\"\n\"1811512\";\"Fanjiachuan Xiang\";\"other\"\n\"1811512\";\"樊家川\";\"other\"\n\"1811512\";\"樊家川乡\";\"other\"\n\"1811528\";\"Fangxian Chengguanzhen\";\"main\"\n\"1811528\";\"Fang\";\"other\"\n\"1811528\";\"Fang-hsien\";\"other\"\n\"1811528\";\"Fangxian\";\"other\"\n\"1811528\";\"fang xian cheng guan zhen\";\"other\"\n\"1811528\";\"房县城关镇\";\"other\"\n\"1811533\";\"Fangting\";\"main\"\n\"1811533\";\"Shifang\";\"other\"\n\"1811533\";\"Shih-fang\";\"other\"\n\"1811533\";\"Shih-fang-hsien\";\"other\"\n\"1811534\";\"Fangtian\";\"main\"\n\"1811534\";\"方田\";\"other\"\n\"1811542\";\"Fangshan\";\"main\"\n\"1811542\";\"Chou-k'ou-tien-ch'u\";\"other\"\n\"1811542\";\"Chou-k’ou-tien-ch’ü\";\"other\"\n\"1811542\";\"Fang-shan-hsien\";\"other\"\n\"1811542\";\"Ta-fang-shan\";\"other\"\n\"1811549\";\"Fangqiang\";\"main\"\n\"1811549\";\"Fangqiang Zhen\";\"other\"\n\"1811549\";\"方强\";\"other\"\n\"1811549\";\"方强镇\";\"other\"\n\"1811557\";\"Fangli\";\"main\"\n\"1811557\";\"Fang-li-chen\";\"other\"\n\"1811557\";\"Fangli Zhen\";\"other\"\n\"1811557\";\"Wan-li-chen\";\"other\"\n\"1811557\";\"fang li\";\"other\"\n\"1811557\";\"fang li zhen\";\"other\"\n\"1811557\";\"方里\";\"other\"\n\"1811557\";\"方里镇\";\"other\"\n\"1811559\";\"Fangjiazhuang\";\"main\"\n\"1811559\";\"Fang-chia-chuang\";\"other\"\n\"1811559\";\"Fang-chuang-chen\";\"other\"\n\"1811585\";\"Fangcun\";\"main\"\n\"1811585\";\"Changhong\";\"other\"\n\"1811585\";\"Fang-ts'un\";\"other\"\n\"1811585\";\"Fang-ts’un\";\"other\"\n\"1811585\";\"fang cun\";\"other\"\n\"1811585\";\"zhang hong\";\"other\"\n\"1811585\";\"芳村\";\"other\"\n\"1811585\";\"长虹\";\"other\"\n\"1811586\";\"Fangcun\";\"main\"\n\"1811586\";\"Fang-ts'un\";\"other\"\n\"1811586\";\"Fang-ts'un-chen\";\"other\"\n\"1811586\";\"Fang-ts’un\";\"other\"\n\"1811586\";\"Fang-ts’un-chen\";\"other\"\n\"1811586\";\"Fangcun Zhen\";\"other\"\n\"1811586\";\"fang cun\";\"other\"\n\"1811586\";\"fang cun zhen\";\"other\"\n\"1811586\";\"方村\";\"other\"\n\"1811586\";\"芳村\";\"other\"\n\"1811586\";\"芳村镇\";\"other\"\n\"1811607\";\"Fanyang\";\"main\"\n\"1811607\";\"Fan-ch'ang-hsien\";\"other\"\n\"1811607\";\"Fan-ch’ang-hsien\";\"other\"\n\"1811607\";\"Fanchang\";\"other\"\n\"1811607\";\"Fanyang Zhen\";\"other\"\n\"1811607\";\"fan yang\";\"other\"\n\"1811607\";\"fan yang zhen\";\"other\"\n\"1811607\";\"繁阳\";\"other\"\n\"1811607\";\"繁阳镇\";\"other\"\n\"1811609\";\"Famen\";\"main\"\n\"1811609\";\"Ch'ung-cheng-chen\";\"other\"\n\"1811609\";\"Chunchzhenchzhen'\";\"other\"\n\"1811609\";\"Chunchzhenchzhen’\";\"other\"\n\"1811609\";\"Ch’ung-cheng-chen\";\"other\"\n\"1811609\";\"Fa-men-ssu\";\"other\"\n\"1811609\";\"Famen Zhen\";\"other\"\n\"1811609\";\"Famensi\";\"other\"\n\"1811609\";\"法门\";\"other\"\n\"1811609\";\"法门寺\";\"other\"\n\"1811609\";\"法门镇\";\"other\"\n\"1811619\";\"Ezhou\";\"main\"\n\"1811619\";\"Echeng\";\"other\"\n\"1811619\";\"Echeng-hsien\";\"other\"\n\"1811619\";\"O-ch'eng\";\"other\"\n\"1811619\";\"O-ch'eng-hsien\";\"other\"\n\"1811619\";\"O-ch’eng\";\"other\"\n\"1811619\";\"O-ch’eng-hsien\";\"other\"\n\"1811619\";\"Shou-ch'ang\";\"other\"\n\"1811619\";\"Shou-ch’ang\";\"other\"\n\"1811619\";\"Wuchanghsien\";\"other\"\n\"1811634\";\"Erwangzhuang\";\"main\"\n\"1811634\";\"Erh-chuang\";\"other\"\n\"1811634\";\"Erh-chuang-chen\";\"other\"\n\"1811634\";\"Erh-chuang-tzu\";\"other\"\n\"1811634\";\"Erh-hsin-chuang\";\"other\"\n\"1811634\";\"Erhchuangtze\";\"other\"\n\"1811662\";\"Erqu\";\"main\"\n\"1811662\";\"Chou-chih\";\"other\"\n\"1811662\";\"Chou-chih-hsien\";\"other\"\n\"1811662\";\"Chowchih\";\"other\"\n\"1811662\";\"Chowchihhsien\";\"other\"\n\"1811662\";\"Chzhouchzhi\";\"other\"\n\"1811662\";\"Erqu Zhen\";\"other\"\n\"1811662\";\"Zhouzhi\";\"other\"\n\"1811662\";\"er qu\";\"other\"\n\"1811662\";\"er qu zhen\";\"other\"\n\"1811662\";\"zhou zhi\";\"other\"\n\"1811662\";\"二曲\";\"other\"\n\"1811662\";\"二曲镇\";\"other\"\n\"1811662\";\"周至\";\"other\"\n\"1811673\";\"Erlong\";\"main\"\n\"1811673\";\"er long\";\"other\"\n\"1811673\";\"二龙\";\"other\"\n\"1811682\";\"Erlang\";\"main\"\n\"1811682\";\"Erlangmiao\";\"other\"\n\"1811682\";\"二郎\";\"other\"\n\"1811686\";\"Dawu Chengguanzhen\";\"main\"\n\"1811686\";\"Dawu\";\"other\"\n\"1811686\";\"Dawu Xian\";\"other\"\n\"1811686\";\"Erh-lang-fan\";\"other\"\n\"1811686\";\"Erh-lang-tien\";\"other\"\n\"1811686\";\"Erlangdian\";\"other\"\n\"1811686\";\"Ta-wu\";\"other\"\n\"1811686\";\"da wu cheng guan zhen\";\"other\"\n\"1811686\";\"大悟城关镇\";\"other\"\n\"1811693\";\"Erjia\";\"main\"\n\"1811693\";\"Erh-chia\";\"other\"\n\"1811693\";\"Erh-chia-chen\";\"other\"\n\"1811693\";\"Erhkia\";\"other\"\n\"1811693\";\"Erjia Zhen\";\"other\"\n\"1811693\";\"Erjiazhen\";\"other\"\n\"1811693\";\"二甲\";\"other\"\n\"1811693\";\"二甲镇\";\"other\"\n\"1811715\";\"Erba\";\"main\"\n\"1811715\";\"Erba Zhen\";\"other\"\n\"1811715\";\"Erh-pa\";\"other\"\n\"1811715\";\"er ba\";\"other\"\n\"1811715\";\"er ba zhen\";\"other\"\n\"1811715\";\"二坝\";\"other\"\n\"1811715\";\"二坝镇\";\"other\"\n\"1811717\";\"Eqiao\";\"main\"\n\"1811717\";\"Erqiao Zhen\";\"other\"\n\"1811717\";\"O-ch'iao\";\"other\"\n\"1811717\";\"O-ch'iao-chen\";\"other\"\n\"1811717\";\"O-ch’iao\";\"other\"\n\"1811717\";\"O-ch’iao-chen\";\"other\"\n\"1811717\";\"e qiao\";\"other\"\n\"1811717\";\"e qiao zhen\";\"other\"\n\"1811717\";\"峨桥\";\"other\"\n\"1811717\";\"峨桥镇\";\"other\"\n\"1811720\";\"Enshi\";\"main\"\n\"1811720\";\"Ehn'shi\";\"other\"\n\"1811720\";\"En-shih\";\"other\"\n\"1811720\";\"En-shih-hsien\";\"other\"\n\"1811720\";\"Shih-nan\";\"other\"\n\"1811720\";\"Shihnanfu\";\"other\"\n\"1811720\";\"Эньши\";\"other\"\n\"1811722\";\"Enle\";\"main\"\n\"1811722\";\"en le\";\"other\"\n\"1811722\";\"恩乐\";\"other\"\n\"1811729\";\"Encheng\";\"main\"\n\"1811729\";\"Ehn'pin\";\"other\"\n\"1811729\";\"En-p'ing-chen\";\"other\"\n\"1811729\";\"En-p'ing-hsien\";\"other\"\n\"1811729\";\"En-p’ing-chen\";\"other\"\n\"1811729\";\"En-p’ing-hsien\";\"other\"\n\"1811729\";\"Enping\";\"other\"\n\"1811729\";\"Yan-ping-hsien\";\"other\"\n\"1811729\";\"Yanping\";\"other\"\n\"1811729\";\"Yin Ping\";\"other\"\n\"1811729\";\"Эньпин\";\"other\"\n\"1811729\";\"思城\";\"other\"\n\"1811729\";\"恩平\";\"other\"\n\"1811739\";\"Ekou\";\"main\"\n\"1811739\";\"Ekou Zhen\";\"other\"\n\"1811739\";\"Hao-chia-chieh\";\"other\"\n\"1811739\";\"Haojiajie\";\"other\"\n\"1811739\";\"O-k'ou\";\"other\"\n\"1811739\";\"O-k'ou-chen\";\"other\"\n\"1811739\";\"O-k’ou\";\"other\"\n\"1811739\";\"O-k’ou-chen\";\"other\"\n\"1811739\";\"峨口\";\"other\"\n\"1811739\";\"峨口镇\";\"other\"\n\"1811754\";\"Duzhuang\";\"main\"\n\"1811754\";\"Duzhuang Zhen\";\"other\"\n\"1811754\";\"Tu-chia-chuang\";\"other\"\n\"1811754\";\"Tu-chuang\";\"other\"\n\"1811754\";\"杜庄\";\"other\"\n\"1811754\";\"杜庄镇\";\"other\"\n\"1811762\";\"Duze\";\"main\"\n\"1811762\";\"Duze Zhen\";\"other\"\n\"1811762\";\"She-tse\";\"other\"\n\"1811762\";\"Tu-tse\";\"other\"\n\"1811762\";\"Tu-tse-chen\";\"other\"\n\"1811762\";\"du ze\";\"other\"\n\"1811762\";\"du ze zhen\";\"other\"\n\"1811762\";\"杜泽\";\"other\"\n\"1811762\";\"杜泽镇\";\"other\"\n\"1811764\";\"Duyun\";\"main\"\n\"1811764\";\"Dujun\";\"other\"\n\"1811764\";\"Pingchowhsien\";\"other\"\n\"1811764\";\"Tu-yun\";\"other\"\n\"1811764\";\"Tu-yun-ch'eng\";\"other\"\n\"1811764\";\"Tu-yun-hsien\";\"other\"\n\"1811764\";\"Tu-yun-shih\";\"other\"\n\"1811764\";\"Tu-yün\";\"other\"\n\"1811764\";\"Tu-yün-ch’eng\";\"other\"\n\"1811764\";\"Tu-yün-hsien\";\"other\"\n\"1811764\";\"Tu-yün-shih\";\"other\"\n\"1811764\";\"Дуюн\";\"other\"\n\"1811771\";\"Zhengyang\";\"main\"\n\"1811771\";\"Duxun Zhen\";\"other\"\n\"1811771\";\"Tu-hsun\";\"other\"\n\"1811771\";\"Tu-hsün\";\"other\"\n\"1811771\";\"du xun zhen\";\"other\"\n\"1811771\";\"zheng yang\";\"other\"\n\"1811771\";\"杜浔镇\";\"other\"\n\"1811771\";\"正阳\";\"other\"\n\"1811783\";\"Dushu\";\"main\"\n\"1811783\";\"Dushu Zhen\";\"other\"\n\"1811783\";\"Tu-shu\";\"other\"\n\"1811783\";\"Tu-shu-chen\";\"other\"\n\"1811783\";\"独树\";\"other\"\n\"1811783\";\"独树镇\";\"other\"\n\"1811801\";\"Duqu\";\"main\"\n\"1811801\";\"Duqu Zhen\";\"other\"\n\"1811801\";\"Tu-ch'u\";\"other\"\n\"1811801\";\"Tu-ch'u-chen\";\"other\"\n\"1811801\";\"Tu-ch’ü\";\"other\"\n\"1811801\";\"Tu-ch’ü-chen\";\"other\"\n\"1811801\";\"du qu\";\"other\"\n\"1811801\";\"杜曲\";\"other\"\n\"1811812\";\"Duozhu\";\"main\"\n\"1811812\";\"San-t'o-chu\";\"other\"\n\"1811812\";\"San-to\";\"other\"\n\"1811812\";\"San-to-chu-hsu\";\"other\"\n\"1811812\";\"San-to-chu-hsü\";\"other\"\n\"1811812\";\"San-t’o-chu\";\"other\"\n\"1811812\";\"To-chu\";\"other\"\n\"1811812\";\"duo zhu\";\"other\"\n\"1811812\";\"多祝\";\"other\"\n\"1811829\";\"Duobaowan\";\"main\"\n\"1811829\";\"To-pao-wan\";\"other\"\n\"1811829\";\"Topaowanchen\";\"other\"\n\"1811833\";\"Duntou\";\"main\"\n\"1811833\";\"Duntou Zhen\";\"other\"\n\"1811833\";\"墩头\";\"other\"\n\"1811833\";\"墩头镇\";\"other\"\n\"1811871\";\"Dujing\";\"main\"\n\"1811871\";\"Tu-ching\";\"other\"\n\"1811871\";\"Tu-ching-shih\";\"other\"\n\"1811871\";\"Zitong\";\"other\"\n\"1811871\";\"Zitong Zhen\";\"other\"\n\"1811871\";\"du jing\";\"other\"\n\"1811871\";\"zi tong\";\"other\"\n\"1811871\";\"zi tong zhen\";\"other\"\n\"1811871\";\"杜井\";\"other\"\n\"1811871\";\"梓桐\";\"other\"\n\"1811871\";\"梓桐镇\";\"other\"\n\"1811878\";\"Dushi\";\"main\"\n\"1811878\";\"Dujiawei\";\"other\"\n\"1811878\";\"Dushi Zhen\";\"other\"\n\"1811878\";\"杜市\";\"other\"\n\"1811878\";\"杜市镇\";\"other\"\n\"1811926\";\"Doucun\";\"main\"\n\"1811926\";\"Ducun\";\"other\"\n\"1811926\";\"Fu-p'ing-hsien\";\"other\"\n\"1811926\";\"Fu-p'ing-hsien-ch'eng\";\"other\"\n\"1811926\";\"Fu-p’ing-hsien\";\"other\"\n\"1811926\";\"Fu-p’ing-hsien-ch’eng\";\"other\"\n\"1811926\";\"Fupin\";\"other\"\n\"1811926\";\"Fuping\";\"other\"\n\"1811926\";\"dou cun\";\"other\"\n\"1811926\";\"窦村\";\"other\"\n\"1811929\";\"Ducheng\";\"main\"\n\"1811929\";\"Dosing\";\"other\"\n\"1811929\";\"Tu-ch'eng\";\"other\"\n\"1811929\";\"Tu-ch'eng-hsu\";\"other\"\n\"1811929\";\"Tu-ch’eng\";\"other\"\n\"1811929\";\"Tu-ch’eng-hsü\";\"other\"\n\"1811929\";\"Yunan\";\"other\"\n\"1811929\";\"都城\";\"other\"\n\"1811956\";\"Duanjia\";\"main\"\n\"1811956\";\"Tuan-chia\";\"other\"\n\"1811956\";\"Tuan-chia-chai\";\"other\"\n\"1811956\";\"duan jia\";\"other\"\n\"1811956\";\"段家\";\"other\"\n\"1811990\";\"Doumen\";\"main\"\n\"1811990\";\"Doumen Jieban\";\"other\"\n\"1811990\";\"Doumenzhen\";\"other\"\n\"1811990\";\"Tou-men\";\"other\"\n\"1811990\";\"Tou-men-chen\";\"other\"\n\"1811990\";\"dou men\";\"other\"\n\"1811990\";\"dou men jie ban\";\"other\"\n\"1811990\";\"斗门\";\"other\"\n\"1811990\";\"斗门街办\";\"other\"\n\"1812010\";\"Doujia\";\"main\"\n\"1812010\";\"Doujia Zhen\";\"other\"\n\"1812010\";\"Tou-chia\";\"other\"\n\"1812010\";\"dou jia\";\"other\"\n\"1812010\";\"dou jia zhen\";\"other\"\n\"1812010\";\"窦家\";\"other\"\n\"1812010\";\"窦家镇\";\"other\"\n\"1812012\";\"Douhudi\";\"main\"\n\"1812012\";\"Doushi\";\"other\"\n\"1812012\";\"Gong'an\";\"other\"\n\"1812012\";\"Gong’an\";\"other\"\n\"1812012\";\"Kung-an\";\"other\"\n\"1812012\";\"Tou-hu-ti\";\"other\"\n\"1812012\";\"Tou-shih\";\"other\"\n\"1812012\";\"Towhuti\";\"other\"\n\"1812012\";\"dou hu di\";\"other\"\n\"1812012\";\"斗湖堤\";\"other\"\n\"1812018\";\"Dougou\";\"main\"\n\"1812018\";\"Dougou Zhen\";\"other\"\n\"1812018\";\"Tou-kou\";\"other\"\n\"1812018\";\"Tou-kou-pa\";\"other\"\n\"1812018\";\"dou gou\";\"other\"\n\"1812018\";\"dou gou zhen\";\"other\"\n\"1812018\";\"陡沟\";\"other\"\n\"1812018\";\"陡沟镇\";\"other\"\n\"1812025\";\"Douba\";\"main\"\n\"1812025\";\"豆坝\";\"other\"\n\"1812057\";\"Xinyi\";\"main\"\n\"1812057\";\"Dongzhen\";\"other\"\n\"1812057\";\"Hsin-i\";\"other\"\n\"1812057\";\"Tung-chen\";\"other\"\n\"1812057\";\"Tung-chen-chen\";\"other\"\n\"1812057\";\"Tung-chen-hsu\";\"other\"\n\"1812057\";\"Tung-chen-hsü\";\"other\"\n\"1812057\";\"信宜\";\"other\"\n\"1812058\";\"Dongzhaogezhuang\";\"main\"\n\"1812071\";\"Dongzhai\";\"main\"\n\"1812071\";\"Dongzhai Zhen\";\"other\"\n\"1812071\";\"Tung-chai\";\"other\"\n\"1812071\";\"Tung-chai-chen\";\"other\"\n\"1812071\";\"东寨\";\"other\"\n\"1812071\";\"东寨镇\";\"other\"\n\"1812091\";\"Dongyuan\";\"main\"\n\"1812091\";\"Tung-yuan\";\"other\"\n\"1812091\";\"Tung-yüan\";\"other\"\n\"1812091\";\"dong yuan\";\"other\"\n\"1812091\";\"东园\";\"other\"\n\"1812092\";\"Donglan\";\"main\"\n\"1812092\";\"Dongyuan\";\"other\"\n\"1812092\";\"Tung-lan\";\"other\"\n\"1812092\";\"Tung-lan-chen\";\"other\"\n\"1812092\";\"Tung-lan-hsien\";\"other\"\n\"1812092\";\"Tung-lan-hsien-ch'eng\";\"other\"\n\"1812092\";\"Tung-lan-hsien-ch’eng\";\"other\"\n\"1812092\";\"Tunlangchow\";\"other\"\n\"1812092\";\"dong lan\";\"other\"\n\"1812092\";\"东兰\";\"other\"\n\"1812093\";\"Dongyuan\";\"main\"\n\"1812093\";\"Tung-yuan\";\"other\"\n\"1812093\";\"Tung-yüan\";\"other\"\n\"1812093\";\"dong yuan\";\"other\"\n\"1812093\";\"东园\";\"other\"\n\"1812096\";\"Dongyou\";\"main\"\n\"1812096\";\"Dongyou Zhen\";\"other\"\n\"1812096\";\"Tung-yu\";\"other\"\n\"1812096\";\"东游\";\"other\"\n\"1812096\";\"东游镇\";\"other\"\n\"1812101\";\"Dongying\";\"main\"\n\"1812101\";\"Dun'in\";\"other\"\n\"1812101\";\"Tung-ying\";\"other\"\n\"1812101\";\"dong ying\";\"other\"\n\"1812101\";\"dong ying shi\";\"other\"\n\"1812101\";\"Дуньин\";\"other\"\n\"1812101\";\"东营\";\"other\"\n\"1812101\";\"东营市\";\"other\"\n\"1812132\";\"Dongxing\";\"main\"\n\"1812132\";\"Cheng-tung-yu-chen\";\"other\"\n\"1812132\";\"Cheng-tung-yü-chen\";\"other\"\n\"1812132\";\"Dongxing Xiang\";\"other\"\n\"1812132\";\"Dongxingzhen\";\"other\"\n\"1812132\";\"Tung-hsing-chen\";\"other\"\n\"1812132\";\"Tung-hsing-wei\";\"other\"\n\"1812132\";\"东兴\";\"other\"\n\"1812164\";\"Dongxi\";\"main\"\n\"1812164\";\"Dongxichang\";\"other\"\n\"1812164\";\"Tung-hsi-chen\";\"other\"\n\"1812164\";\"dong xi\";\"other\"\n\"1812164\";\"东溪\";\"other\"\n\"1812166\";\"Dongxi\";\"main\"\n\"1812166\";\"Dongxi Xiang\";\"other\"\n\"1812166\";\"dong xi\";\"other\"\n\"1812166\";\"dong xi xiang\";\"other\"\n\"1812166\";\"洞溪\";\"other\"\n\"1812166\";\"洞溪乡\";\"other\"\n\"1812168\";\"Dongxi\";\"main\"\n\"1812168\";\"Tung-hsi\";\"other\"\n\"1812171\";\"Dongwu\";\"main\"\n\"1812171\";\"Tung-wu\";\"other\"\n\"1812171\";\"dong wu\";\"other\"\n\"1812171\";\"东坞\";\"other\"\n\"1812211\";\"Dongshan\";\"main\"\n\"1812211\";\"Ch'ien-shan\";\"other\"\n\"1812211\";\"Ch'ien-shan-chen\";\"other\"\n\"1812211\";\"Chen-tse\";\"other\"\n\"1812211\";\"Ch’ien-shan\";\"other\"\n\"1812211\";\"Ch’ien-shan-chen\";\"other\"\n\"1812211\";\"Dongshan Zhen\";\"other\"\n\"1812211\";\"Dongting\";\"other\"\n\"1812211\";\"Tung-shan\";\"other\"\n\"1812211\";\"Tung-shan-chen\";\"other\"\n\"1812211\";\"东山\";\"other\"\n\"1812228\";\"Dongtai\";\"main\"\n\"1812228\";\"Dongtai Shi\";\"other\"\n\"1812228\";\"Dongtai Zhen\";\"other\"\n\"1812228\";\"Tung-t'ai\";\"other\"\n\"1812228\";\"Tung-t'ai-chen\";\"other\"\n\"1812228\";\"Tung-t'ai-hsien\";\"other\"\n\"1812228\";\"Tung-t’ai\";\"other\"\n\"1812228\";\"Tung-t’ai-chen\";\"other\"\n\"1812228\";\"Tung-t’ai-hsien\";\"other\"\n\"1812228\";\"东台\";\"other\"\n\"1812228\";\"东台市\";\"other\"\n\"1812228\";\"东台镇\";\"other\"\n\"1812229\";\"Dongtazhuang\";\"main\"\n\"1812229\";\"Dongta\";\"other\"\n\"1812256\";\"Dongsheng\";\"main\"\n\"1812256\";\"Dunshen\";\"other\"\n\"1812256\";\"Tung-sheng\";\"other\"\n\"1812256\";\"Tung-sheng-hsien\";\"other\"\n\"1812264\";\"Dongshe\";\"main\"\n\"1812264\";\"Dongshe Zhen\";\"other\"\n\"1812264\";\"Tung-she\";\"other\"\n\"1812264\";\"Tung-she-chen\";\"other\"\n\"1812264\";\"东社\";\"other\"\n\"1812264\";\"东社镇\";\"other\"\n\"1812277\";\"Dongshanba\";\"main\"\n\"1812277\";\"Dongshanba Zhen\";\"other\"\n\"1812277\";\"东山坝\";\"other\"\n\"1812277\";\"东山坝镇\";\"other\"\n\"1812282\";\"Dongshan Dongzuxiang\";\"main\"\n\"1812282\";\"Dongshan\";\"other\"\n\"1812282\";\"Dunshan'\";\"other\"\n\"1812282\";\"Dunshan’\";\"other\"\n\"1812282\";\"Tung-shan\";\"other\"\n\"1812288\";\"Dongsha\";\"main\"\n\"1812288\";\"Dongsha Zhen\";\"other\"\n\"1812288\";\"Dongshajiao\";\"other\"\n\"1812288\";\"Tung-sha-chiao\";\"other\"\n\"1812288\";\"东沙\";\"other\"\n\"1812288\";\"东沙镇\";\"other\"\n\"1812332\";\"Dongping\";\"main\"\n\"1812332\";\"An-hua-hsien\";\"other\"\n\"1812332\";\"Anhua\";\"other\"\n\"1812332\";\"Tung-p'ing\";\"other\"\n\"1812332\";\"Tung-p'ing-chen\";\"other\"\n\"1812332\";\"Tung-p’ing\";\"other\"\n\"1812332\";\"Tung-p’ing-chen\";\"other\"\n\"1812332\";\"dong ping\";\"other\"\n\"1812332\";\"东坪\";\"other\"\n\"1812333\";\"Dongping\";\"main\"\n\"1812333\";\"Dongping Zhen\";\"other\"\n\"1812333\";\"Tung-p'ing\";\"other\"\n\"1812333\";\"Tung-p’ing\";\"other\"\n\"1812333\";\"东平\";\"other\"\n\"1812333\";\"东平镇\";\"other\"\n\"1812344\";\"Dongnigu\";\"main\"\n\"1812344\";\"Tung-ni-chan\";\"other\"\n\"1812344\";\"Tung-ni-ku\";\"other\"\n\"1812356\";\"Dongmen\";\"main\"\n\"1812356\";\"Lo-ch'eng\";\"other\"\n\"1812356\";\"Lo-ch'eng-hsien\";\"other\"\n\"1812356\";\"Lo-ch’eng\";\"other\"\n\"1812356\";\"Lo-ch’eng-hsien\";\"other\"\n\"1812356\";\"Loshing-hsien\";\"other\"\n\"1812356\";\"dong men\";\"other\"\n\"1812356\";\"东门\";\"other\"\n\"1812363\";\"Dongmafang\";\"main\"\n\"1812363\";\"Dongmafang Xiang\";\"other\"\n\"1812363\";\"Tung-ma-fang\";\"other\"\n\"1812363\";\"东马坊\";\"other\"\n\"1812363\";\"东马坊乡\";\"other\"\n\"1812379\";\"Lianhua\";\"main\"\n\"1812379\";\"Donglong\";\"other\"\n\"1812379\";\"Lianhua Zhen\";\"other\"\n\"1812379\";\"Tang-leng\";\"other\"\n\"1812379\";\"Tung-lung\";\"other\"\n\"1812379\";\"lian hua\";\"other\"\n\"1812379\";\"莲华\";\"other\"\n\"1812381\";\"Dongli\";\"main\"\n\"1812381\";\"Dongli Zhen\";\"other\"\n\"1812381\";\"dong li\";\"other\"\n\"1812381\";\"东里\";\"other\"\n\"1812395\";\"Dongling\";\"main\"\n\"1812395\";\"Donlin\";\"other\"\n\"1812395\";\"dong ling\";\"other\"\n\"1812395\";\"Донлин\";\"other\"\n\"1812395\";\"东岭\";\"other\"\n\"1812420\";\"Dongkou\";\"main\"\n\"1812420\";\"Dunkou\";\"other\"\n\"1812420\";\"Tung-k'ou\";\"other\"\n\"1812420\";\"Tung-k'ou-chen\";\"other\"\n\"1812420\";\"Tung-k’ou\";\"other\"\n\"1812420\";\"Tung-k’ou-chen\";\"other\"\n\"1812420\";\"Tungkow\";\"other\"\n\"1812420\";\"dong kou\";\"other\"\n\"1812420\";\"洞口\";\"other\"\n\"1812422\";\"Dongkengkou\";\"main\"\n\"1812422\";\"Tung-k'eng-k'ou\";\"other\"\n\"1812422\";\"Tung-k’eng-k’ou\";\"other\"\n\"1812422\";\"Yanglin\";\"other\"\n\"1812422\";\"Yanglin Zhen\";\"other\"\n\"1812422\";\"dong keng kou\";\"other\"\n\"1812422\";\"yang lin\";\"other\"\n\"1812422\";\"yang lin zhen\";\"other\"\n\"1812422\";\"东坑口\";\"other\"\n\"1812422\";\"杨林\";\"other\"\n\"1812422\";\"杨林镇\";\"other\"\n\"1812427\";\"Dongkan\";\"main\"\n\"1812427\";\"Binhai\";\"other\"\n\"1812427\";\"Pin-hai\";\"other\"\n\"1812427\";\"Tung-k'an\";\"other\"\n\"1812427\";\"Tung-k'an-chen\";\"other\"\n\"1812427\";\"Tung-k’an\";\"other\"\n\"1812427\";\"Tung-k’an-chen\";\"other\"\n\"1812432\";\"Dongjituo\";\"main\"\n\"1812432\";\"Tung-chi-t'o\";\"other\"\n\"1812432\";\"Tung-chi-t’o\";\"other\"\n\"1812432\";\"Tungchituo\";\"other\"\n\"1812471\";\"Dongjia\";\"main\"\n\"1812471\";\"Dongjia Zhen\";\"other\"\n\"1812471\";\"Tung-chia\";\"other\"\n\"1812471\";\"董家\";\"other\"\n\"1812471\";\"董家镇\";\"other\"\n\"1812489\";\"Donghu\";\"main\"\n\"1812489\";\"Donghu Xiang\";\"other\"\n\"1812489\";\"Tung-hu\";\"other\"\n\"1812489\";\"Tung-hu-ts'un\";\"other\"\n\"1812489\";\"Tung-hu-ts’un\";\"other\"\n\"1812489\";\"东湖\";\"other\"\n\"1812489\";\"东湖乡\";\"other\"\n\"1812500\";\"Xian’an\";\"main\"\n\"1812500\";\"Xian'an\";\"ascii\"\n\"1812500\";\"Donghong\";\"other\"\n\"1812500\";\"Xian'an Zhen\";\"other\"\n\"1812500\";\"Xian’an Zhen\";\"other\"\n\"1812500\";\"xian an\";\"other\"\n\"1812500\";\"仙庵\";\"other\"\n\"1812503\";\"Donghenan\";\"main\"\n\"1812503\";\"Donghenan Zhen\";\"other\"\n\"1812503\";\"Ho-nan\";\"other\"\n\"1812503\";\"Ho-nan-chen\";\"other\"\n\"1812503\";\"Tung-ho-nan\";\"other\"\n\"1812503\";\"Tung-ho-nan-chen\";\"other\"\n\"1812503\";\"东河南\";\"other\"\n\"1812503\";\"东河南镇\";\"other\"\n\"1812521\";\"Donghai\";\"main\"\n\"1812521\";\"Donghai Jiedao\";\"other\"\n\"1812521\";\"Lu-feng-hsien\";\"other\"\n\"1812521\";\"Lu-feng-hsien-ch'eng\";\"other\"\n\"1812521\";\"Lu-feng-hsien-ch’eng\";\"other\"\n\"1812521\";\"Lufeng\";\"other\"\n\"1812521\";\"Lufung\";\"other\"\n\"1812521\";\"Lukfung\";\"other\"\n\"1812521\";\"东海\";\"other\"\n\"1812521\";\"陆丰\";\"other\"\n\"1812537\";\"Dongguan\";\"main\"\n\"1812537\";\"Baode\";\"other\"\n\"1812537\";\"Pao-te\";\"other\"\n\"1812537\";\"Pao-te-hsien\";\"other\"\n\"1812537\";\"Pao-teh\";\"other\"\n\"1812537\";\"Paotehchow\";\"other\"\n\"1812537\";\"dong guan\";\"other\"\n\"1812537\";\"东关\";\"other\"\n\"1812545\";\"Dongguan\";\"main\"\n\"1812545\";\"Dunguan'\";\"other\"\n\"1812545\";\"Kuan-ch'eng-chen\";\"other\"\n\"1812545\";\"Kuan-ch’eng-chen\";\"other\"\n\"1812545\";\"Tung-kuan\";\"other\"\n\"1812545\";\"Tung-kuan-hsien\";\"other\"\n\"1812545\";\"Tungkun\";\"other\"\n\"1812545\";\"dong wan shi\";\"other\"\n\"1812545\";\"Дунгуань\";\"other\"\n\"1812545\";\"دوڭۋەن شەھىرى\";\"other\"\n\"1812545\";\"东莞\";\"other\"\n\"1812545\";\"东莞市\";\"other\"\n\"1812546\";\"Donggu\";\"main\"\n\"1812546\";\"Donggu Zhen\";\"other\"\n\"1812546\";\"Gonglue\";\"other\"\n\"1812546\";\"Gonglüe\";\"other\"\n\"1812546\";\"Tung-ku\";\"other\"\n\"1812546\";\"Tung-yin\";\"other\"\n\"1812546\";\"东固\";\"other\"\n\"1812546\";\"东固镇\";\"other\"\n\"1812585\";\"Dongfeng\";\"main\"\n\"1812585\";\"Dongfeng Zhen\";\"other\"\n\"1812585\";\"Tung-feng\";\"other\"\n\"1812585\";\"Tung-feng-t'ang\";\"other\"\n\"1812585\";\"Tung-feng-t'un\";\"other\"\n\"1812585\";\"Tung-feng-t’ang\";\"other\"\n\"1812585\";\"Tung-feng-t’un\";\"other\"\n\"1812585\";\"dong feng\";\"other\"\n\"1812585\";\"dong feng zhen\";\"other\"\n\"1812585\";\"东峰\";\"other\"\n\"1812585\";\"东峰镇\";\"other\"\n\"1812594\";\"Dong’erying\";\"main\"\n\"1812594\";\"Dong'erying\";\"ascii\"\n\"1812597\";\"Dongdu\";\"main\"\n\"1812597\";\"Tung-tu\";\"other\"\n\"1812600\";\"Dongditou\";\"main\"\n\"1812613\";\"Dongdai\";\"main\"\n\"1812613\";\"Tung-tai\";\"other\"\n\"1812619\";\"Dongcun\";\"main\"\n\"1812619\";\"Lan-hsien\";\"other\"\n\"1812619\";\"Lanxian\";\"other\"\n\"1812619\";\"Tung-ts'un\";\"other\"\n\"1812619\";\"Tung-ts'un-chen\";\"other\"\n\"1812619\";\"Tung-ts’un\";\"other\"\n\"1812619\";\"Tung-ts’un-chen\";\"other\"\n\"1812619\";\"dong cun\";\"other\"\n\"1812619\";\"东村\";\"other\"\n\"1812621\";\"Dongcun\";\"main\"\n\"1812621\";\"Haiyang\";\"other\"\n\"1812621\";\"Tung-ts'un\";\"other\"\n\"1812621\";\"Tung-ts'un-chi\";\"other\"\n\"1812621\";\"Tung-ts’un\";\"other\"\n\"1812621\";\"Tung-ts’un-chi\";\"other\"\n\"1812625\";\"Dongcun\";\"main\"\n\"1812625\";\"Dongcun Xiang\";\"other\"\n\"1812625\";\"东村\";\"other\"\n\"1812625\";\"东村乡\";\"other\"\n\"1812634\";\"Dongchuan\";\"main\"\n\"1812634\";\"Chien-ch'uan-chen\";\"other\"\n\"1812634\";\"Chien-ch’uan-chen\";\"other\"\n\"1812634\";\"Yao'an\";\"other\"\n\"1812634\";\"Yao-chou\";\"other\"\n\"1812634\";\"Yaochow\";\"other\"\n\"1812634\";\"Yao’an\";\"other\"\n\"1812634\";\"dong chuan\";\"other\"\n\"1812634\";\"栋川\";\"other\"\n\"1812635\";\"Dongchong\";\"main\"\n\"1812635\";\"Tangchung\";\"other\"\n\"1812635\";\"Tung-ch'ung\";\"other\"\n\"1812635\";\"Tung-ch'ung-k'ou\";\"other\"\n\"1812635\";\"Tung-ch’ung\";\"other\"\n\"1812635\";\"Tung-ch’ung-k’ou\";\"other\"\n\"1812642\";\"Dongchen\";\"main\"\n\"1812642\";\"Dongchen Zhen\";\"other\"\n\"1812642\";\"Tung-ch'en\";\"other\"\n\"1812642\";\"Tung-ch'en-chen\";\"other\"\n\"1812642\";\"Tung-ch’en\";\"other\"\n\"1812642\";\"Tung-ch’en-chen\";\"other\"\n\"1812642\";\"东陈\";\"other\"\n\"1812642\";\"东陈镇\";\"other\"\n\"1812701\";\"Dizhang\";\"main\"\n\"1812701\";\"Chang-ti\";\"other\"\n\"1812701\";\"Chang-ti-wan\";\"other\"\n\"1812701\";\"Dizhang Zhen\";\"other\"\n\"1812701\";\"Ti-chang\";\"other\"\n\"1812701\";\"Ti-chang-wan\";\"other\"\n\"1812701\";\"di zhang\";\"other\"\n\"1812701\";\"di zhang zhen\";\"other\"\n\"1812701\";\"底张\";\"other\"\n\"1812701\";\"底张镇\";\"other\"\n\"1812702\";\"Dizhai\";\"main\"\n\"1812702\";\"Dizhai Zhen\";\"other\"\n\"1812702\";\"Ti-chai\";\"other\"\n\"1812702\";\"Ti-chai-chen\";\"other\"\n\"1812702\";\"di zhai\";\"other\"\n\"1812702\";\"狄寨\";\"other\"\n\"1812728\";\"Dingzhou\";\"main\"\n\"1812728\";\"Dingxian\";\"other\"\n\"1812728\";\"Dinsyan\";\"other\"\n\"1812728\";\"T'ang-hsien\";\"other\"\n\"1812728\";\"Ting\";\"other\"\n\"1812728\";\"Ting-hsien\";\"other\"\n\"1812728\";\"Ting-hsien-ch'eng-kuan\";\"other\"\n\"1812728\";\"Ting-hsien-ch’eng-kuan\";\"other\"\n\"1812728\";\"Tingchow\";\"other\"\n\"1812728\";\"T’ang-hsien\";\"other\"\n\"1812729\";\"Dingzhai\";\"main\"\n\"1812729\";\"Dingzhai Xiang\";\"other\"\n\"1812729\";\"Ting-chai\";\"other\"\n\"1812729\";\"ding zhai\";\"other\"\n\"1812729\";\"ding zhai xiang\";\"other\"\n\"1812729\";\"丁寨\";\"other\"\n\"1812729\";\"丁寨乡\";\"other\"\n\"1812735\";\"Dingying\";\"main\"\n\"1812735\";\"Ting-ying\";\"other\"\n\"1812735\";\"ding ying\";\"other\"\n\"1812735\";\"丁营\";\"other\"\n\"1812737\";\"Dingyan\";\"main\"\n\"1812737\";\"Dingyan Zhen\";\"other\"\n\"1812737\";\"Ting-yen\";\"other\"\n\"1812737\";\"Ting-yen-chen\";\"other\"\n\"1812737\";\"丁堰\";\"other\"\n\"1812737\";\"丁堰镇\";\"other\"\n\"1812747\";\"Jinchang\";\"main\"\n\"1812747\";\"Dingxiang\";\"other\"\n\"1812747\";\"Dinsyan'\";\"other\"\n\"1812747\";\"Dinsyan’\";\"other\"\n\"1812747\";\"Ting-hsiang\";\"other\"\n\"1812747\";\"Ting-hsiang-hsien\";\"other\"\n\"1812747\";\"Ting-hsiang-hsien-ch'eng\";\"other\"\n\"1812747\";\"Ting-hsiang-hsien-ch’eng\";\"other\"\n\"1812747\";\"Tingsiang\";\"other\"\n\"1812747\";\"jin chang\";\"other\"\n\"1812747\";\"晋昌\";\"other\"\n\"1812754\";\"Dingtao\";\"main\"\n\"1812754\";\"Ting-t'ao\";\"other\"\n\"1812754\";\"Ting-t'ao-hsien\";\"other\"\n\"1812754\";\"Ting-t’ao\";\"other\"\n\"1812754\";\"Ting-t’ao-hsien\";\"other\"\n\"1812755\";\"Dingtang\";\"main\"\n\"1812755\";\"Dingtang Zhen\";\"other\"\n\"1812755\";\"Dingtangzhen\";\"other\"\n\"1812755\";\"Ting-shan\";\"other\"\n\"1812755\";\"Ting-t'ang\";\"other\"\n\"1812755\";\"Ting-t’ang\";\"other\"\n\"1812755\";\"ding tang\";\"other\"\n\"1812755\";\"ding tang zhen\";\"other\"\n\"1812755\";\"定塘\";\"other\"\n\"1812755\";\"定塘镇\";\"other\"\n\"1812768\";\"Dingping\";\"main\"\n\"1812768\";\"Lin'shuy\";\"other\"\n\"1812768\";\"Lin-shui-hsien\";\"other\"\n\"1812768\";\"Ling-shui\";\"other\"\n\"1812768\";\"Linshui\";\"other\"\n\"1812768\";\"Lin’shuy\";\"other\"\n\"1812768\";\"ding ping\";\"other\"\n\"1812768\";\"鼎屏\";\"other\"\n\"1812782\";\"Dingjiayao\";\"main\"\n\"1812782\";\"Dingjiayao Xiang\";\"other\"\n\"1812782\";\"Ting-chia-yao\";\"other\"\n\"1812782\";\"丁家窑\";\"other\"\n\"1812782\";\"丁家窑乡\";\"other\"\n\"1812805\";\"Dinghai\";\"main\"\n\"1812805\";\"Ting-tiai\";\"other\"\n\"1812818\";\"Dingcheng\";\"main\"\n\"1812818\";\"Dingyuan\";\"other\"\n\"1812818\";\"Ting-ch'eng-chen\";\"other\"\n\"1812818\";\"Ting-ch’eng-chen\";\"other\"\n\"1812818\";\"Ting-yuan\";\"other\"\n\"1812818\";\"Ting-yuan-hsien\";\"other\"\n\"1812818\";\"Ting-yüan\";\"other\"\n\"1812818\";\"Ting-yüan-hsien\";\"other\"\n\"1812818\";\"Yuan-t'ing\";\"other\"\n\"1812818\";\"Yüan-t’ing\";\"other\"\n\"1812818\";\"ding cheng\";\"other\"\n\"1812818\";\"定城\";\"other\"\n\"1812848\";\"Digang\";\"main\"\n\"1812848\";\"Digang Zhen\";\"other\"\n\"1812848\";\"Ti-chiang\";\"other\"\n\"1812848\";\"Ti-chiang-chen\";\"other\"\n\"1812848\";\"Ti-kang\";\"other\"\n\"1812848\";\"Tikangchen\";\"other\"\n\"1812848\";\"di gang\";\"other\"\n\"1812848\";\"di gang zhen\";\"other\"\n\"1812848\";\"荻港\";\"other\"\n\"1812848\";\"荻港镇\";\"other\"\n\"1812850\";\"Dietaisi\";\"main\"\n\"1812850\";\"Dietaisi Xiang\";\"other\"\n\"1812850\";\"Tieh-t'ai-ssu\";\"other\"\n\"1812850\";\"Tieh-t’ai-ssu\";\"other\"\n\"1812850\";\"迭台寺\";\"other\"\n\"1812850\";\"迭台寺乡\";\"other\"\n\"1812856\";\"Diduo\";\"main\"\n\"1812856\";\"Diduo Zhen\";\"other\"\n\"1812856\";\"Ti-to\";\"other\"\n\"1812856\";\"Ti-to-chen\";\"other\"\n\"1812856\";\"荻垛\";\"other\"\n\"1812856\";\"荻垛镇\";\"other\"\n\"1812860\";\"Didian\";\"main\"\n\"1812860\";\"Ti-tien\";\"other\"\n\"1812860\";\"di dian\";\"other\"\n\"1812860\";\"底店\";\"other\"\n\"1812861\";\"Didian\";\"main\"\n\"1812861\";\"Ti-tien\";\"other\"\n\"1812861\";\"底店\";\"other\"\n\"1812869\";\"Diaoyumiao\";\"main\"\n\"1812869\";\"Diaoyu\";\"other\"\n\"1812869\";\"Diaoyu Zhen\";\"other\"\n\"1812869\";\"钓鱼\";\"other\"\n\"1812869\";\"钓鱼庙\";\"other\"\n\"1812869\";\"钓鱼镇\";\"other\"\n\"1812879\";\"Diaojiyan\";\"main\"\n\"1812879\";\"Diaojing Xiang\";\"other\"\n\"1812879\";\"diao jing xiang\";\"other\"\n\"1812879\";\"diao jing yan\";\"other\"\n\"1812879\";\"吊井乡\";\"other\"\n\"1812879\";\"吊井岩\";\"other\"\n\"1812885\";\"Diaofeng\";\"main\"\n\"1812885\";\"Diaofeng Xiang\";\"other\"\n\"1812885\";\"钓峰\";\"other\"\n\"1812885\";\"钓峰乡\";\"other\"\n\"1812896\";\"Dianzhong\";\"main\"\n\"1812896\";\"Dianzhong Zhen\";\"other\"\n\"1812896\";\"Tien-chung\";\"other\"\n\"1812896\";\"dian zhong\";\"other\"\n\"1812896\";\"dian zhong zhen\";\"other\"\n\"1812896\";\"甸中\";\"other\"\n\"1812896\";\"甸中镇\";\"other\"\n\"1812949\";\"Dianbu\";\"main\"\n\"1812949\";\"Fei-tung\";\"other\"\n\"1812949\";\"Feidong\";\"other\"\n\"1812949\";\"Tien-fou\";\"other\"\n\"1812949\";\"Tien-fou-chen\";\"other\"\n\"1812949\";\"Tien-pu\";\"other\"\n\"1812949\";\"Tienfow\";\"other\"\n\"1812949\";\"dian bu\";\"other\"\n\"1812949\";\"店埠\";\"other\"\n\"1812955\";\"Dezhou\";\"main\"\n\"1812955\";\"Te\";\"other\"\n\"1812955\";\"Te-chou\";\"other\"\n\"1812955\";\"Te-chou-shih\";\"other\"\n\"1812955\";\"Te-hsien\";\"other\"\n\"1812955\";\"Techow\";\"other\"\n\"1812955\";\"Teh-hsien\";\"other\"\n\"1812955\";\"Tehchow\";\"other\"\n\"1812955\";\"Tehetsouen\";\"other\"\n\"1812955\";\"de zhou shi\";\"other\"\n\"1812955\";\"德州市\";\"other\"\n\"1812956\";\"Dezhou\";\"main\"\n\"1812956\";\"Dechang\";\"other\"\n\"1812956\";\"Te-ch'ang\";\"other\"\n\"1812956\";\"Te-ch'ang-hsien\";\"other\"\n\"1812956\";\"Te-ch’ang\";\"other\"\n\"1812956\";\"Te-ch’ang-hsien\";\"other\"\n\"1812956\";\"Tehchang\";\"other\"\n\"1812956\";\"de zhou\";\"other\"\n\"1812956\";\"德州\";\"other\"\n\"1812961\";\"Deyang\";\"main\"\n\"1812961\";\"Dehjan\";\"other\"\n\"1812961\";\"Deyan\";\"other\"\n\"1812961\";\"Te-yang\";\"other\"\n\"1812961\";\"Te-yang-hsien\";\"other\"\n\"1812961\";\"Tehyang\";\"other\"\n\"1812961\";\"Tehyang-hsien\";\"other\"\n\"1812961\";\"de yang shi\";\"other\"\n\"1812961\";\"Дэян\";\"other\"\n\"1812961\";\"德阳市\";\"other\"\n\"1812981\";\"Deqing\";\"main\"\n\"1812981\";\"Te-ch'ing\";\"other\"\n\"1812981\";\"Te-ch'ing-hsien\";\"other\"\n\"1812981\";\"Te-ch'ing-hsien-ch'eng\";\"other\"\n\"1812981\";\"Te-ch’ing\";\"other\"\n\"1812981\";\"Te-ch’ing-hsien\";\"other\"\n\"1812981\";\"Te-ch’ing-hsien-ch’eng\";\"other\"\n\"1812981\";\"Tehtsing\";\"other\"\n\"1812982\";\"Decheng\";\"main\"\n\"1812982\";\"Ch'ing-ch'eng\";\"other\"\n\"1812982\";\"Ch’ing-ch’eng\";\"other\"\n\"1812982\";\"Deqing\";\"other\"\n\"1812982\";\"Takhing\";\"other\"\n\"1812982\";\"Taking\";\"other\"\n\"1812982\";\"Te-ch'ing\";\"other\"\n\"1812982\";\"Te-ch'ing-chen\";\"other\"\n\"1812982\";\"Te-ch'ing-hsien\";\"other\"\n\"1812982\";\"Te-ch’ing\";\"other\"\n\"1812982\";\"Te-ch’ing-chen\";\"other\"\n\"1812982\";\"Te-ch’ing-hsien\";\"other\"\n\"1812982\";\"Te-feng\";\"other\"\n\"1812982\";\"de cheng\";\"other\"\n\"1812982\";\"德城\";\"other\"\n\"1812988\";\"Penglai\";\"main\"\n\"1812988\";\"Dengzhou\";\"other\"\n\"1812988\";\"P'eng-lai-hsien\";\"other\"\n\"1812988\";\"Pehnlaj\";\"other\"\n\"1812988\";\"P’eng-lai-hsien\";\"other\"\n\"1812988\";\"Teng-chou\";\"other\"\n\"1812988\";\"Tengchow\";\"other\"\n\"1812988\";\"Tengchowfu\";\"other\"\n\"1812988\";\"Пэнлай\";\"other\"\n\"1812990\";\"Dengzhou\";\"main\"\n\"1812990\";\"Dengxian\";\"other\"\n\"1812990\";\"Teng\";\"other\"\n\"1812990\";\"Teng-hsien\";\"other\"\n\"1812994\";\"Dengta\";\"main\"\n\"1812994\";\"Dengta Zhen\";\"other\"\n\"1812994\";\"Teng-t'a\";\"other\"\n\"1812994\";\"Teng-t'a-hsu\";\"other\"\n\"1812994\";\"Teng-t’a\";\"other\"\n\"1812994\";\"Teng-t’a-hsü\";\"other\"\n\"1812994\";\"灯塔\";\"other\"\n\"1812994\";\"灯塔镇\";\"other\"\n\"1813009\";\"Dengjiapu\";\"main\"\n\"1813009\";\"Teng-chia-p'u\";\"other\"\n\"1813009\";\"Teng-chia-p’u\";\"other\"\n\"1813016\";\"Dengfeng\";\"main\"\n\"1813016\";\"Teng-feng\";\"other\"\n\"1813016\";\"Teng-feng-hsien\";\"other\"\n\"1813029\";\"Dehenglong\";\"main\"\n\"1813029\";\"Dehenglong Xiang\";\"other\"\n\"1813029\";\"德恒隆\";\"other\"\n\"1813029\";\"德恒隆乡\";\"other\"\n\"1813039\";\"Debao Chengguanzhen\";\"main\"\n\"1813039\";\"Chenan\";\"other\"\n\"1813039\";\"Chenanfu\";\"other\"\n\"1813039\";\"Debao\";\"other\"\n\"1813039\";\"T'ien-pao\";\"other\"\n\"1813039\";\"T'ien-pao-hsien\";\"other\"\n\"1813039\";\"T'ien-pao-hsien-ch'eng\";\"other\"\n\"1813039\";\"Te-pao\";\"other\"\n\"1813039\";\"T’ien-pao\";\"other\"\n\"1813039\";\"T’ien-pao-hsien\";\"other\"\n\"1813039\";\"T’ien-pao-hsien-ch’eng\";\"other\"\n\"1813039\";\"de bao cheng guan zhen\";\"other\"\n\"1813039\";\"德保城关镇\";\"other\"\n\"1813046\";\"Dazuo\";\"main\"\n\"1813046\";\"Ta-tso\";\"other\"\n\"1813046\";\"da zuo\";\"other\"\n\"1813046\";\"大岞\";\"other\"\n\"1813085\";\"Dazhongzhuang\";\"main\"\n\"1813085\";\"Ta-chung-chuang\";\"other\"\n\"1813088\";\"Dazhong\";\"main\"\n\"1813088\";\"Dafeng\";\"other\"\n\"1813088\";\"Dazhong Zhen\";\"other\"\n\"1813088\";\"Dazhongji\";\"other\"\n\"1813088\";\"Ta-chung-chen\";\"other\"\n\"1813088\";\"Ta-chung-chi\";\"other\"\n\"1813088\";\"Ta-feng\";\"other\"\n\"1813088\";\"大中\";\"other\"\n\"1813088\";\"大中镇\";\"other\"\n\"1813097\";\"Dazhe\";\"main\"\n\"1813097\";\"P'ing-ch'eng-chen\";\"other\"\n\"1813097\";\"Pingyuan\";\"other\"\n\"1813097\";\"P’ing-ch’eng-chen\";\"other\"\n\"1813097\";\"Ta-che\";\"other\"\n\"1813097\";\"Ta-che-hsu\";\"other\"\n\"1813097\";\"Ta-che-hsü\";\"other\"\n\"1813097\";\"Ta-chih-chen\";\"other\"\n\"1813097\";\"da zhe\";\"other\"\n\"1813097\";\"大柘\";\"other\"\n\"1813148\";\"Dayuan\";\"main\"\n\"1813148\";\"Dayuan Xiang\";\"other\"\n\"1813148\";\"大源\";\"other\"\n\"1813148\";\"大源乡\";\"other\"\n\"1813168\";\"Dayou\";\"main\"\n\"1813168\";\"Dayou Xiang\";\"other\"\n\"1813168\";\"Ta-yu\";\"other\"\n\"1813168\";\"Ta-yu-p'ing\";\"other\"\n\"1813168\";\"Ta-yu-p’ing\";\"other\"\n\"1813168\";\"大由\";\"other\"\n\"1813168\";\"大由乡\";\"other\"\n\"1813171\";\"Zhangjiajie\";\"main\"\n\"1813171\";\"Dayong\";\"other\"\n\"1813171\";\"Ta-yung\";\"other\"\n\"1813171\";\"Ta-yung-hsien\";\"other\"\n\"1813171\";\"Yongding\";\"other\"\n\"1813171\";\"Yongding Qu\";\"other\"\n\"1813171\";\"Yung-ting\";\"other\"\n\"1813171\";\"Yung-ting-chen\";\"other\"\n\"1813171\";\"Zhangjiajie Shi\";\"other\"\n\"1813171\";\"张家界\";\"other\"\n\"1813171\";\"张家界市\";\"other\"\n\"1813171\";\"永定\";\"other\"\n\"1813171\";\"永定区\";\"other\"\n\"1813184\";\"Daying\";\"main\"\n\"1813184\";\"Daying Zhen\";\"other\"\n\"1813184\";\"Ta-ying\";\"other\"\n\"1813184\";\"Ta-ying-chen\";\"other\"\n\"1813184\";\"大营\";\"other\"\n\"1813184\";\"大营镇\";\"other\"\n\"1813196\";\"Dayin\";\"main\"\n\"1813196\";\"Dayin Zhen\";\"other\"\n\"1813196\";\"Ta-yin\";\"other\"\n\"1813196\";\"da yin\";\"other\"\n\"1813196\";\"大隐\";\"other\"\n\"1813196\";\"大隐镇\";\"other\"\n\"1813206\";\"Daye\";\"main\"\n\"1813206\";\"Ta-ye-li\";\"other\"\n\"1813206\";\"Ta-yeh\";\"other\"\n\"1813206\";\"Ta-yeh-ch'eng\";\"other\"\n\"1813206\";\"Ta-yeh-ch’eng\";\"other\"\n\"1813206\";\"Ta-yeh-hsien\";\"other\"\n\"1813225\";\"Dayanggezhuang\";\"main\"\n\"1813247\";\"Dayanbei\";\"main\"\n\"1813247\";\"Dayanbei Xiang\";\"other\"\n\"1813247\";\"Ta-yen-pei\";\"other\"\n\"1813247\";\"Ta-yen-pei-chen\";\"other\"\n\"1813247\";\"大严备\";\"other\"\n\"1813247\";\"大严备乡\";\"other\"\n\"1813252\";\"Dayan\";\"main\"\n\"1813252\";\"Dayan Zhen\";\"other\"\n\"1813252\";\"Ta-yen\";\"other\"\n\"1813252\";\"Ta-yen-shih\";\"other\"\n\"1813252\";\"da yan\";\"other\"\n\"1813252\";\"大堰\";\"other\"\n\"1813252\";\"大堰镇\";\"other\"\n\"1813253\";\"Dayan\";\"main\"\n\"1813253\";\"Le Giang\";\"other\"\n\"1813253\";\"Li-chiang\";\"other\"\n\"1813253\";\"Li-chiang-fu\";\"other\"\n\"1813253\";\"Li-chiang-hsien\";\"other\"\n\"1813253\";\"Li-chiang-na-hsi-tsu-tzu-chih-hsien\";\"other\"\n\"1813253\";\"Liczjan\";\"other\"\n\"1813253\";\"Lijiang\";\"other\"\n\"1813253\";\"Lijiang City\";\"other\"\n\"1813253\";\"Likiang-hsien\";\"other\"\n\"1813253\";\"Lệ Giang\";\"other\"\n\"1813253\";\"Ta-yen-chen\";\"other\"\n\"1813253\";\"li jiang\";\"other\"\n\"1813253\";\"li jiang shi\";\"other\"\n\"1813253\";\"Лицзян\";\"other\"\n\"1813253\";\"丽江市\";\"other\"\n\"1813253\";\"麗江\";\"other\"\n\"1813261\";\"Daxu\";\"main\"\n\"1813261\";\"Daxu Zhen\";\"other\"\n\"1813261\";\"Ta-hsu\";\"other\"\n\"1813261\";\"Ta-hsu-chieh-shih\";\"other\"\n\"1813261\";\"Ta-hsü\";\"other\"\n\"1813261\";\"Ta-hsü-chieh-shih\";\"other\"\n\"1813261\";\"da xu\";\"other\"\n\"1813261\";\"da xu zhen\";\"other\"\n\"1813261\";\"大徐\";\"other\"\n\"1813261\";\"大徐镇\";\"other\"\n\"1813299\";\"Daxing\";\"main\"\n\"1813299\";\"Lang-ch'u\";\"other\"\n\"1813299\";\"Lang-ch’ü\";\"other\"\n\"1813299\";\"Langku\";\"other\"\n\"1813299\";\"Langkü\";\"other\"\n\"1813299\";\"Ning-lang-hsien\";\"other\"\n\"1813299\";\"Ning-lang-i-tsu-tzu-chih-hsien\";\"other\"\n\"1813299\";\"Ning-lang-she-chih-chu\";\"other\"\n\"1813299\";\"Ning-lang-she-chih-chü\";\"other\"\n\"1813299\";\"Ninglang\";\"other\"\n\"1813299\";\"da xing\";\"other\"\n\"1813299\";\"大兴\";\"other\"\n\"1813303\";\"Xindian\";\"main\"\n\"1813303\";\"Daxindian\";\"other\"\n\"1813303\";\"Ta-hsin-tien\";\"other\"\n\"1813303\";\"Xindian Zhen\";\"other\"\n\"1813303\";\"新店\";\"other\"\n\"1813303\";\"新店镇\";\"other\"\n\"1813316\";\"Daxi\";\"main\"\n\"1813316\";\"Daxi Xiang\";\"other\"\n\"1813316\";\"Daxidu\";\"other\"\n\"1813316\";\"Ta-hsi-tu\";\"other\"\n\"1813316\";\"大溪\";\"other\"\n\"1813316\";\"大溪乡\";\"other\"\n\"1813317\";\"Dongshan\";\"main\"\n\"1813317\";\"Daxibian\";\"other\"\n\"1813317\";\"da xi bian\";\"other\"\n\"1813317\";\"dong shan\";\"other\"\n\"1813317\";\"东山\";\"other\"\n\"1813317\";\"大溪边\";\"other\"\n\"1813325\";\"Dazhou\";\"main\"\n\"1813325\";\"Dasyan'\";\"other\"\n\"1813325\";\"Dasyan’\";\"other\"\n\"1813325\";\"Daxian\";\"other\"\n\"1813325\";\"Sui-ting\";\"other\"\n\"1813325\";\"Sui-ting-fu\";\"other\"\n\"1813325\";\"Suting\";\"other\"\n\"1813325\";\"Suydin\";\"other\"\n\"1813325\";\"Ta\";\"other\"\n\"1813325\";\"Ta-hsien\";\"other\"\n\"1813325\";\"达州\";\"other\"\n\"1813344\";\"Dawukou\";\"main\"\n\"1813344\";\"Shih-tsui-shan\";\"other\"\n\"1813344\";\"Shizuishan\";\"other\"\n\"1813344\";\"Ta-wei-k'ou\";\"other\"\n\"1813344\";\"Ta-wei-k’ou\";\"other\"\n\"1813344\";\"Ta-wu-k'ou\";\"other\"\n\"1813344\";\"Ta-wu-k’ou\";\"other\"\n\"1813383\";\"Dawangtai\";\"main\"\n\"1813383\";\"Ta-wang-t'ai\";\"other\"\n\"1813383\";\"Ta-wang-t’ai\";\"other\"\n\"1813383\";\"Wang-chia-t'ai\";\"other\"\n\"1813383\";\"Wang-chia-t’ai\";\"other\"\n\"1813383\";\"Wang-t'ai-tzu\";\"other\"\n\"1813383\";\"Wang-t’ai-tzu\";\"other\"\n\"1813403\";\"Wangcunzhen\";\"main\"\n\"1813403\";\"Dawang\";\"other\"\n\"1813403\";\"Ta-wang\";\"other\"\n\"1813403\";\"Ta-wang-ts'un\";\"other\"\n\"1813403\";\"Ta-wang-ts’un\";\"other\"\n\"1813403\";\"Wangcun Zhen\";\"other\"\n\"1813403\";\"wang cun\";\"other\"\n\"1813403\";\"wang cun zhen\";\"other\"\n\"1813403\";\"王村\";\"other\"\n\"1813403\";\"王村镇\";\"other\"\n\"1813404\";\"Dawang\";\"main\"\n\"1813404\";\"Ta-wang\";\"other\"\n\"1813404\";\"Ta-wang-chia\";\"other\"\n\"1813404\";\"da wang\";\"other\"\n\"1813404\";\"大王\";\"other\"\n\"1813406\";\"Dawang\";\"main\"\n\"1813406\";\"Dawang Zhen\";\"other\"\n\"1813406\";\"Ta-wang\";\"other\"\n\"1813406\";\"Ta-wang-chen\";\"other\"\n\"1813406\";\"da wang\";\"other\"\n\"1813406\";\"da wang zhen\";\"other\"\n\"1813406\";\"大王\";\"other\"\n\"1813406\";\"大王镇\";\"other\"\n\"1813451\";\"Datong\";\"main\"\n\"1813451\";\"Datun\";\"other\"\n\"1813451\";\"Ta-t'ung\";\"other\"\n\"1813451\";\"Ta-t’ung\";\"other\"\n\"1813451\";\"Датун\";\"other\"\n\"1813463\";\"Datianzhuang\";\"main\"\n\"1813469\";\"Datian\";\"main\"\n\"1813469\";\"Datian Xiang\";\"other\"\n\"1813469\";\"大田\";\"other\"\n\"1813469\";\"大田乡\";\"other\"\n\"1813479\";\"Datangzhuang\";\"main\"\n\"1813479\";\"Ta-t'ang-chuang\";\"other\"\n\"1813479\";\"Ta-t’ang-chuang\";\"other\"\n\"1813482\";\"Datangping\";\"main\"\n\"1813482\";\"Datang\";\"other\"\n\"1813482\";\"Datangping Xiang\";\"other\"\n\"1813482\";\"大塘坪\";\"other\"\n\"1813482\";\"大塘坪乡\";\"other\"\n\"1813514\";\"Dasizhuang\";\"main\"\n\"1813514\";\"Dasi\";\"other\"\n\"1813514\";\"Dasi Zhen\";\"other\"\n\"1813514\";\"Ta-ssu\";\"other\"\n\"1813514\";\"Ta-ssu-chuang\";\"other\"\n\"1813514\";\"大泗\";\"other\"\n\"1813514\";\"大泗庄\";\"other\"\n\"1813514\";\"大泗镇\";\"other\"\n\"1813517\";\"Dasi\";\"main\"\n\"1813543\";\"Shiqiao\";\"main\"\n\"1813543\";\"Dashiqiao\";\"other\"\n\"1813543\";\"Shiqiao Zhen\";\"other\"\n\"1813543\";\"石桥\";\"other\"\n\"1813543\";\"石桥镇\";\"other\"\n\"1813567\";\"Dashentang\";\"main\"\n\"1813569\";\"Dashengqiao\";\"main\"\n\"1813569\";\"Dasheng\";\"other\"\n\"1813569\";\"Dasheng Zhen\";\"other\"\n\"1813569\";\"Ta-sheng-ch'iao\";\"other\"\n\"1813569\";\"Ta-sheng-ch’iao\";\"other\"\n\"1813569\";\"大生\";\"other\"\n\"1813569\";\"大生桥\";\"other\"\n\"1813569\";\"大生镇\";\"other\"\n\"1813614\";\"Darong\";\"main\"\n\"1813614\";\"Ta-jung-tung\";\"other\"\n\"1813617\";\"Darenzhuang\";\"main\"\n\"1813617\";\"Darenzhuang Xiang\";\"other\"\n\"1813617\";\"Ta-jen-chuang\";\"other\"\n\"1813617\";\"大仁庄\";\"other\"\n\"1813617\";\"大仁庄乡\";\"other\"\n\"1813618\";\"Darenzhuang\";\"main\"\n\"1813629\";\"Daqi\";\"main\"\n\"1813629\";\"Daqitou\";\"other\"\n\"1813629\";\"Daqizhen\";\"other\"\n\"1813629\";\"Ta-ch'i\";\"other\"\n\"1813629\";\"Ta-ch'i-chen\";\"other\"\n\"1813629\";\"Ta-ch'i-t'ou\";\"other\"\n\"1813629\";\"Ta-ch’i\";\"other\"\n\"1813629\";\"Ta-ch’i-chen\";\"other\"\n\"1813629\";\"Ta-ch’i-t’ou\";\"other\"\n\"1813629\";\"da qi\";\"other\"\n\"1813629\";\"da qi zhen\";\"other\"\n\"1813629\";\"大碶\";\"other\"\n\"1813629\";\"大碶镇\";\"other\"\n\"1813649\";\"Daqiao\";\"main\"\n\"1813649\";\"大桥\";\"other\"\n\"1813650\";\"Daqiao\";\"main\"\n\"1813650\";\"Ch'iao-k'ou\";\"other\"\n\"1813650\";\"Ch’iao-k’ou\";\"other\"\n\"1813650\";\"Daqiao Zhen\";\"other\"\n\"1813650\";\"Ta-ch'iao\";\"other\"\n\"1813650\";\"Ta-ch'iao-k'ou\";\"other\"\n\"1813650\";\"Ta-ch’iao\";\"other\"\n\"1813650\";\"Ta-ch’iao-k’ou\";\"other\"\n\"1813650\";\"大桥\";\"other\"\n\"1813650\";\"大桥镇\";\"other\"\n\"1813655\";\"Daqiao\";\"main\"\n\"1813655\";\"Daqiao Jiedao\";\"other\"\n\"1813655\";\"Ta-ch'iao\";\"other\"\n\"1813655\";\"Ta-ch'iao-chen\";\"other\"\n\"1813655\";\"Ta-ch’iao\";\"other\"\n\"1813655\";\"Ta-ch’iao-chen\";\"other\"\n\"1813655\";\"da qiao\";\"other\"\n\"1813655\";\"da qiao jie dao\";\"other\"\n\"1813655\";\"大桥\";\"other\"\n\"1813655\";\"大桥街道\";\"other\"\n\"1813658\";\"Fenghua Shi\";\"main\"\n\"1813658\";\"Chung-cheng\";\"other\"\n\"1813658\";\"Daqiao\";\"other\"\n\"1813658\";\"Daqiaozhen\";\"other\"\n\"1813658\";\"Feng-hua-hsien\";\"other\"\n\"1813658\";\"Fenghua\";\"other\"\n\"1813658\";\"Fenghwa\";\"other\"\n\"1813658\";\"Fenghwahsien\";\"other\"\n\"1813658\";\"Ta-ch'iao\";\"other\"\n\"1813658\";\"Ta-ch’iao\";\"other\"\n\"1813658\";\"奉化\";\"other\"\n\"1813658\";\"奉化市\";\"other\"\n\"1813661\";\"Daqiao\";\"main\"\n\"1813661\";\"Daqiao Zhen\";\"other\"\n\"1813661\";\"Ta-ch'iao\";\"other\"\n\"1813661\";\"Ta-ch’iao\";\"other\"\n\"1813661\";\"da qiao\";\"other\"\n\"1813661\";\"da qiao zhen\";\"other\"\n\"1813661\";\"大桥\";\"other\"\n\"1813661\";\"大桥镇\";\"other\"\n\"1813668\";\"Daqiao\";\"main\"\n\"1813668\";\"Ta-ch'iao\";\"other\"\n\"1813668\";\"Ta-ch’iao\";\"other\"\n\"1813676\";\"Daqiang\";\"main\"\n\"1813676\";\"Ta-ch'iang\";\"other\"\n\"1813676\";\"Ta-ch’iang\";\"other\"\n\"1813676\";\"da qiang\";\"other\"\n\"1813676\";\"大墙\";\"other\"\n\"1813683\";\"Dabaozi\";\"main\"\n\"1813683\";\"Dabaozi Xiang\";\"other\"\n\"1813683\";\"Dabuzi\";\"other\"\n\"1813683\";\"Dapuzi\";\"other\"\n\"1813683\";\"Ta-p'u-tzu\";\"other\"\n\"1813683\";\"Ta-pao-tzu\";\"other\"\n\"1813683\";\"Ta-p’u-tzu\";\"other\"\n\"1813713\";\"Daping\";\"main\"\n\"1813713\";\"Daping Zhen\";\"other\"\n\"1813713\";\"Ta-p'ing\";\"other\"\n\"1813713\";\"Ta-p’ing\";\"other\"\n\"1813713\";\"da ping\";\"other\"\n\"1813713\";\"大坪\";\"other\"\n\"1813713\";\"大坪镇\";\"other\"\n\"1813729\";\"Dapeng\";\"main\"\n\"1813729\";\"Dapeng Jiedao\";\"other\"\n\"1813729\";\"Ta-peng-so-ch'eng\";\"other\"\n\"1813729\";\"Ta-peng-so-ch’eng\";\"other\"\n\"1813729\";\"Taipang\";\"other\"\n\"1813729\";\"Taipung\";\"other\"\n\"1813729\";\"Taipungshosheng\";\"other\"\n\"1813729\";\"da peng\";\"other\"\n\"1813729\";\"大鹏\";\"other\"\n\"1813734\";\"Xuetian\";\"main\"\n\"1813734\";\"Dapan\";\"other\"\n\"1813734\";\"Dapan Zhen\";\"other\"\n\"1813734\";\"大盘镇\";\"other\"\n\"1813734\";\"学田\";\"other\"\n\"1813746\";\"Daoxian\";\"main\"\n\"1813746\";\"Daoxian Zhen\";\"other\"\n\"1813746\";\"Tao-hsien\";\"other\"\n\"1813746\";\"Tao-hsien-chen\";\"other\"\n\"1813746\";\"Tao-yen-chen\";\"other\"\n\"1813746\";\"dao xian\";\"other\"\n\"1813746\";\"到贤\";\"other\"\n\"1813775\";\"Huaxian\";\"main\"\n\"1813775\";\"Daokou\";\"other\"\n\"1813775\";\"Hua-hsien\";\"other\"\n\"1813775\";\"Tao-k'ou\";\"other\"\n\"1813775\";\"Tao-k'ou-chen\";\"other\"\n\"1813775\";\"Tao-k’ou\";\"other\"\n\"1813775\";\"Tao-k’ou-chen\";\"other\"\n\"1813775\";\"Taokow\";\"other\"\n\"1813776\";\"Daojiao\";\"main\"\n\"1813776\";\"Daojiao Zhen\";\"other\"\n\"1813776\";\"dao jiao\";\"other\"\n\"1813776\";\"道滘\";\"other\"\n\"1813777\";\"Daojiang\";\"main\"\n\"1813777\";\"Daojiangzhen\";\"other\"\n\"1813777\";\"Daoxian\";\"other\"\n\"1813777\";\"Tao\";\"other\"\n\"1813777\";\"Tao-chiang\";\"other\"\n\"1813777\";\"Tao-chiang-chen\";\"other\"\n\"1813777\";\"Tao-chou\";\"other\"\n\"1813777\";\"Tao-hsien\";\"other\"\n\"1813777\";\"dao jiang\";\"other\"\n\"1813777\";\"道江\";\"other\"\n\"1813783\";\"Qushan\";\"main\"\n\"1813783\";\"Daodou\";\"other\"\n\"1813783\";\"Daodou'ao\";\"other\"\n\"1813783\";\"Daodouzhen\";\"other\"\n\"1813783\";\"Daodou’ao\";\"other\"\n\"1813783\";\"Qushan Zhen\";\"other\"\n\"1813783\";\"Ta-ch'u\";\"other\"\n\"1813783\";\"Ta-ch’ü\";\"other\"\n\"1813783\";\"Tao-tou-ao\";\"other\"\n\"1813783\";\"岛斗\";\"other\"\n\"1813783\";\"岛斗镇\";\"other\"\n\"1813783\";\"衢山\";\"other\"\n\"1813783\";\"衢山镇\";\"other\"\n\"1813803\";\"Danyang\";\"main\"\n\"1813803\";\"Tan-yang\";\"other\"\n\"1813812\";\"Danshui\";\"main\"\n\"1813812\";\"Dan'shuem\";\"other\"\n\"1813812\";\"Danshui Jiedao\";\"other\"\n\"1813812\";\"Huiyang Qu\";\"other\"\n\"1813812\";\"Huiyangshi\";\"other\"\n\"1813812\";\"Tamshui\";\"other\"\n\"1813812\";\"Tamshuihu\";\"other\"\n\"1813812\";\"Tamshuihü\";\"other\"\n\"1813812\";\"Tan-shui\";\"other\"\n\"1813812\";\"Tanshuihu\";\"other\"\n\"1813812\";\"Даньшуем\";\"other\"\n\"1813812\";\"惠阳区\";\"other\"\n\"1813812\";\"淡水\";\"other\"\n\"1813828\";\"Danjiangkou\";\"main\"\n\"1813828\";\"Chun-hsien\";\"other\"\n\"1813828\";\"Chün-hsien\";\"other\"\n\"1813828\";\"Dan'czjankou\";\"other\"\n\"1813828\";\"Junxian\";\"other\"\n\"1813828\";\"Junxian Danjiang\";\"other\"\n\"1813828\";\"Sha-t'o-ying\";\"other\"\n\"1813828\";\"Sha-t’o-ying\";\"other\"\n\"1813828\";\"Shatoin\";\"other\"\n\"1813828\";\"Tan-chiang\";\"other\"\n\"1813828\";\"Tan-chiang-k'ou\";\"other\"\n\"1813828\";\"Tan-chiang-k’ou\";\"other\"\n\"1813828\";\"Даньцзянкоу\";\"other\"\n\"1813839\";\"Xinshui\";\"main\"\n\"1813839\";\"Danin\";\"other\"\n\"1813839\";\"Daning\";\"other\"\n\"1813839\";\"Hsi-ning Hsien\";\"other\"\n\"1813839\";\"Ta-ning\";\"other\"\n\"1813839\";\"Ta-ning-hsien\";\"other\"\n\"1813839\";\"Ta-ning-hsien-ch'eng\";\"other\"\n\"1813839\";\"Ta-ning-hsien-ch’eng\";\"other\"\n\"1813839\";\"xin shui\";\"other\"\n\"1813839\";\"昕水\";\"other\"\n\"1813851\";\"Gushu\";\"main\"\n\"1813851\";\"Dangtu\";\"other\"\n\"1813851\";\"Taiping\";\"other\"\n\"1813851\";\"Taiping-fu\";\"other\"\n\"1813851\";\"Tang-t'u\";\"other\"\n\"1813851\";\"Tang-t'u-hsien\";\"other\"\n\"1813851\";\"Tang-t’u\";\"other\"\n\"1813851\";\"Tang-t’u-hsien\";\"other\"\n\"1813851\";\"姑熟\";\"other\"\n\"1813855\";\"Dangcheng\";\"main\"\n\"1813855\";\"Dangshan\";\"other\"\n\"1813855\";\"Dongshan\";\"other\"\n\"1813855\";\"Tang-shan\";\"other\"\n\"1813855\";\"Tang-shan-hsien\";\"other\"\n\"1813855\";\"dang cheng\";\"other\"\n\"1813855\";\"砀城\";\"other\"\n\"1813859\";\"Dangmu\";\"main\"\n\"1813859\";\"Dangmu Zhen\";\"other\"\n\"1813859\";\"Tang-mu\";\"other\"\n\"1813859\";\"Tang-mu-chen\";\"other\"\n\"1813859\";\"dang mu\";\"other\"\n\"1813859\";\"党睦\";\"other\"\n\"1813860\";\"Dangliuzhuang\";\"main\"\n\"1813860\";\"Dangliuzhuang Zhen\";\"other\"\n\"1813860\";\"Tang-liu-chuang\";\"other\"\n\"1813860\";\"党留庄\";\"other\"\n\"1813860\";\"党留庄镇\";\"other\"\n\"1813864\";\"Dangjiaxian\";\"main\"\n\"1813864\";\"党家岘\";\"other\"\n\"1813875\";\"Dangchang Chengguanzhen\";\"main\"\n\"1813875\";\"Chengguan Zhen\";\"other\"\n\"1813875\";\"Danchanchzhen'\";\"other\"\n\"1813875\";\"Danchanchzhen’\";\"other\"\n\"1813875\";\"Dangchang\";\"other\"\n\"1813875\";\"Dangchang Xian\";\"other\"\n\"1813875\";\"Tanchang\";\"other\"\n\"1813875\";\"Tang-ch'ang\";\"other\"\n\"1813875\";\"Tang-ch'ang-chen\";\"other\"\n\"1813875\";\"Tang-ch'ang-pao\";\"other\"\n\"1813875\";\"Tang-ch’ang\";\"other\"\n\"1813875\";\"Tang-ch’ang-chen\";\"other\"\n\"1813875\";\"Tang-ch’ang-pao\";\"other\"\n\"1813875\";\"Tang-tsch'ang-tschon\";\"other\"\n\"1813875\";\"Tang-tsch’ang-tschön\";\"other\"\n\"1813875\";\"Yen-ch'ang-chen\";\"other\"\n\"1813875\";\"Yen-ch’ang-chen\";\"other\"\n\"1813875\";\"城关镇\";\"other\"\n\"1813875\";\"宕昌\";\"other\"\n\"1813875\";\"宕昌县\";\"other\"\n\"1813875\";\"宕昌城关镇\";\"other\"\n\"1813884\";\"Danfeng\";\"main\"\n\"1813884\";\"Shih-tsung\";\"other\"\n\"1813884\";\"Shih-tsung-ch'eng\";\"other\"\n\"1813884\";\"Shih-tsung-ch’eng\";\"other\"\n\"1813884\";\"Shih-tsung-hsien\";\"other\"\n\"1813884\";\"Shizong\";\"other\"\n\"1813884\";\"dan feng\";\"other\"\n\"1813884\";\"丹凤\";\"other\"\n\"1813889\";\"Dancun\";\"main\"\n\"1813889\";\"Dancun Zhen\";\"other\"\n\"1813889\";\"Tan-ts'un\";\"other\"\n\"1813889\";\"Tan-ts'un-chen\";\"other\"\n\"1813889\";\"Tan-ts’un\";\"other\"\n\"1813889\";\"Tan-ts’un-chen\";\"other\"\n\"1813889\";\"dan cun\";\"other\"\n\"1813889\";\"淡村\";\"other\"\n\"1813892\";\"Dancheng\";\"main\"\n\"1813892\";\"Tan-ch'eng\";\"other\"\n\"1813892\";\"Tan-ch'eng-chi\";\"other\"\n\"1813892\";\"Tan-ch’eng\";\"other\"\n\"1813892\";\"Tan-ch’eng-chi\";\"other\"\n\"1813893\";\"Danxi\";\"main\"\n\"1813893\";\"Dancheng\";\"other\"\n\"1813893\";\"Danxi Jiedao\";\"other\"\n\"1813893\";\"Hsiang-shan\";\"other\"\n\"1813893\";\"Hsiang-shan-hsien\";\"other\"\n\"1813893\";\"Siangshan\";\"other\"\n\"1813893\";\"Siangshanhsien\";\"other\"\n\"1813893\";\"Tan-ch'eng\";\"other\"\n\"1813893\";\"Tan-ch'eng-chen\";\"other\"\n\"1813893\";\"Tan-ch’eng\";\"other\"\n\"1813893\";\"Tan-ch’eng-chen\";\"other\"\n\"1813893\";\"Xiangshan\";\"other\"\n\"1813893\";\"dan xi\";\"other\"\n\"1813893\";\"dan xi jie dao\";\"other\"\n\"1813893\";\"xiang shan\";\"other\"\n\"1813893\";\"丹西\";\"other\"\n\"1813893\";\"丹西街道\";\"other\"\n\"1813893\";\"象山\";\"other\"\n\"1813965\";\"Damai\";\"main\"\n\"1813965\";\"Damai Xiang\";\"other\"\n\"1813965\";\"达麦\";\"other\"\n\"1813965\";\"达麦乡\";\"other\"\n\"1813981\";\"Daluo\";\"main\"\n\"1813981\";\"Daluo Zhen\";\"other\"\n\"1813981\";\"大洛\";\"other\"\n\"1813981\";\"大洛镇\";\"other\"\n\"1813985\";\"Dalun\";\"main\"\n\"1813985\";\"Dalun Zhen\";\"other\"\n\"1813985\";\"Dalunzhuang\";\"other\"\n\"1813985\";\"Ta-lun\";\"other\"\n\"1813985\";\"Ta-lun-chuang\";\"other\"\n\"1813985\";\"大埨\";\"other\"\n\"1813985\";\"大埨镇\";\"other\"\n\"1814011\";\"Dalong\";\"main\"\n\"1814011\";\"Dalongkou\";\"other\"\n\"1814011\";\"Ta-lung\";\"other\"\n\"1814011\";\"Ta-lung-k'ou\";\"other\"\n\"1814011\";\"Ta-lung-k’ou\";\"other\"\n\"1814011\";\"da long\";\"other\"\n\"1814011\";\"大陇\";\"other\"\n\"1814033\";\"Daliu\";\"main\"\n\"1814033\";\"Daliu Xiang\";\"other\"\n\"1814033\";\"Daliudian\";\"other\"\n\"1814033\";\"Ta-liu-tien\";\"other\"\n\"1814033\";\"大刘\";\"other\"\n\"1814033\";\"大刘乡\";\"other\"\n\"1814042\";\"Dalinhe\";\"main\"\n\"1814042\";\"Dalinhe Xiang\";\"other\"\n\"1814042\";\"Lin-ho-ts'un\";\"other\"\n\"1814042\";\"Lin-ho-ts’un\";\"other\"\n\"1814042\";\"Ta-lin-ho\";\"other\"\n\"1814042\";\"大临河\";\"other\"\n\"1814042\";\"大临河乡\";\"other\"\n\"1814078\";\"Daliang\";\"main\"\n\"1814078\";\"Daljan\";\"other\"\n\"1814078\";\"Ta-hang-chen\";\"other\"\n\"1814078\";\"Ta-liang\";\"other\"\n\"1814078\";\"Ta-liang-chen\";\"other\"\n\"1814078\";\"Далян\";\"other\"\n\"1814082\";\"Daliang\";\"main\"\n\"1814082\";\"Daljan\";\"other\"\n\"1814082\";\"P'an-shun\";\"other\"\n\"1814082\";\"P’an-shun\";\"other\"\n\"1814082\";\"Schuntak\";\"other\"\n\"1814082\";\"Shun-te\";\"other\"\n\"1814082\";\"Shun-te-hsien\";\"other\"\n\"1814082\";\"Shunde\";\"other\"\n\"1814082\";\"Shuntak\";\"other\"\n\"1814082\";\"Ta-liang\";\"other\"\n\"1814082\";\"Ta-liang-chen\";\"other\"\n\"1814082\";\"shun de qu\";\"other\"\n\"1814082\";\"Далян\";\"other\"\n\"1814082\";\"大良\";\"other\"\n\"1814082\";\"顺德区\";\"other\"\n\"1814087\";\"Dalian\";\"main\"\n\"1814087\";\"Dairen\";\"other\"\n\"1814087\";\"Dal'niy\";\"other\"\n\"1814087\";\"Dalian Shi\";\"other\"\n\"1814087\";\"Daljan'\";\"other\"\n\"1814087\";\"Dalny\";\"other\"\n\"1814087\";\"Dal’niy\";\"other\"\n\"1814087\";\"Lu-ta\";\"other\"\n\"1814087\";\"Lu-ta-shih\";\"other\"\n\"1814087\";\"Luda\";\"other\"\n\"1814087\";\"Lü-ta\";\"other\"\n\"1814087\";\"Lü-ta-shih\";\"other\"\n\"1814087\";\"Lüda\";\"other\"\n\"1814087\";\"Ta-lien\";\"other\"\n\"1814087\";\"Ta-lien-shih\";\"other\"\n\"1814087\";\"da lian\";\"other\"\n\"1814087\";\"da lian shi\";\"other\"\n\"1814087\";\"Далянь\";\"other\"\n\"1814087\";\"大连\";\"other\"\n\"1814087\";\"大连市\";\"other\"\n\"1814092\";\"Dali\";\"main\"\n\"1814092\";\"T'ung-chou\";\"other\"\n\"1814092\";\"Ta-li\";\"other\"\n\"1814092\";\"Ta-li-hsien\";\"other\"\n\"1814092\";\"Tunchzhou\";\"other\"\n\"1814092\";\"Tungchow\";\"other\"\n\"1814092\";\"Tungchowfu\";\"other\"\n\"1814092\";\"T’ung-chou\";\"other\"\n\"1814092\";\"da li\";\"other\"\n\"1814092\";\"大荔\";\"other\"\n\"1814093\";\"Dali\";\"main\"\n\"1814093\";\"Chung-ho-chen\";\"other\"\n\"1814093\";\"Ta-ho\";\"other\"\n\"1814093\";\"Ta-li\";\"other\"\n\"1814093\";\"Talifu\";\"other\"\n\"1814093\";\"da li\";\"other\"\n\"1814093\";\"da li shi\";\"other\"\n\"1814093\";\"Дали\";\"other\"\n\"1814093\";\"大理\";\"other\"\n\"1814093\";\"大理市\";\"other\"\n\"1814105\";\"Dalang\";\"main\"\n\"1814105\";\"Dalang Zhen\";\"other\"\n\"1814105\";\"Ta-lang\";\"other\"\n\"1814105\";\"Ta-lang-hsu\";\"other\"\n\"1814105\";\"Ta-lang-hsü\";\"other\"\n\"1814105\";\"da lang\";\"other\"\n\"1814105\";\"大朗\";\"other\"\n\"1814108\";\"Dalan\";\"main\"\n\"1814108\";\"Dalan Zhen\";\"other\"\n\"1814108\";\"Ta-lan\";\"other\"\n\"1814108\";\"da lan\";\"other\"\n\"1814108\";\"大岚\";\"other\"\n\"1814123\";\"Dakoutun\";\"main\"\n\"1814123\";\"Ta-k'ou-t'un\";\"other\"\n\"1814123\";\"Ta-k’ou-t’un\";\"other\"\n\"1814152\";\"Dajing\";\"main\"\n\"1814152\";\"Dajing Zhen\";\"other\"\n\"1814152\";\"Ta-ching\";\"other\"\n\"1814152\";\"Ta-ching-chen\";\"other\"\n\"1814152\";\"da jing\";\"other\"\n\"1814152\";\"大荆\";\"other\"\n\"1814169\";\"Dajie\";\"main\"\n\"1814169\";\"Chiang-ch'uan\";\"other\"\n\"1814169\";\"Chiang-ch’uan\";\"other\"\n\"1814169\";\"Dajie Zhen\";\"other\"\n\"1814169\";\"Jiangchuan\";\"other\"\n\"1814169\";\"Jiangchuan Xian\";\"other\"\n\"1814169\";\"Ta-chieh-chen\";\"other\"\n\"1814169\";\"Ta-chieh-tzu\";\"other\"\n\"1814169\";\"da jie\";\"other\"\n\"1814169\";\"da jie zhen\";\"other\"\n\"1814169\";\"jiang chuan\";\"other\"\n\"1814169\";\"jiang chuan xian\";\"other\"\n\"1814169\";\"大街\";\"other\"\n\"1814169\";\"大街镇\";\"other\"\n\"1814169\";\"江川\";\"other\"\n\"1814169\";\"江川县\";\"other\"\n\"1814198\";\"Dajianchang\";\"main\"\n\"1814208\";\"Daiyue\";\"main\"\n\"1814208\";\"Daiyue Zhen\";\"other\"\n\"1814208\";\"Dayyuechzhen\";\"other\"\n\"1814208\";\"Shan-yin-hsien\";\"other\"\n\"1814208\";\"Shanyin\";\"other\"\n\"1814208\";\"Shanyin Xian\";\"other\"\n\"1814208\";\"Tai-yo\";\"other\"\n\"1814208\";\"Tai-yueh\";\"other\"\n\"1814208\";\"Tai-yueh-chen\";\"other\"\n\"1814208\";\"Tai-yüeh\";\"other\"\n\"1814208\";\"Tai-yüeh-chen\";\"other\"\n\"1814208\";\"Taiyoh\";\"other\"\n\"1814208\";\"dai yue\";\"other\"\n\"1814208\";\"山阴县\";\"other\"\n\"1814208\";\"岱岳\";\"other\"\n\"1814208\";\"岱岳镇\";\"other\"\n\"1814213\";\"Shangguan\";\"main\"\n\"1814213\";\"Daixian\";\"other\"\n\"1814213\";\"Daysyan'\";\"other\"\n\"1814213\";\"Daysyan’\";\"other\"\n\"1814213\";\"Tai\";\"other\"\n\"1814213\";\"Tai-ch'eng\";\"other\"\n\"1814213\";\"Tai-ch’eng\";\"other\"\n\"1814213\";\"Tai-hsien\";\"other\"\n\"1814213\";\"Tai-hsien-ch'eng\";\"other\"\n\"1814213\";\"Tai-hsien-ch’eng\";\"other\"\n\"1814213\";\"Taichow\";\"other\"\n\"1814213\";\"shang guan\";\"other\"\n\"1814213\";\"上馆\";\"other\"\n\"1814217\";\"Daixi\";\"main\"\n\"1814217\";\"Tai-hsi\";\"other\"\n\"1814217\";\"Yang-k'ou\";\"other\"\n\"1814217\";\"Yang-k’ou\";\"other\"\n\"1814232\";\"Gaoting\";\"main\"\n\"1814232\";\"Daishan\";\"other\"\n\"1814232\";\"Gaoting Zhen\";\"other\"\n\"1814232\";\"高亭\";\"other\"\n\"1814232\";\"高亭镇\";\"other\"\n\"1814236\";\"Dainan\";\"main\"\n\"1814236\";\"Dainan Zhen\";\"other\"\n\"1814236\";\"Tai-chia-tse\";\"other\"\n\"1814236\";\"Tai-nan\";\"other\"\n\"1814236\";\"戴南\";\"other\"\n\"1814236\";\"戴南镇\";\"other\"\n\"1814246\";\"Daijiaba\";\"main\"\n\"1814246\";\"Daijiaba Zhen\";\"other\"\n\"1814246\";\"Tai-chia-pa\";\"other\"\n\"1814246\";\"代家坝\";\"other\"\n\"1814246\";\"代家坝镇\";\"other\"\n\"1814253\";\"Duifang\";\"main\"\n\"1814253\";\"Daifang\";\"other\"\n\"1814253\";\"Duifang Xiang\";\"other\"\n\"1814253\";\"对坊\";\"other\"\n\"1814253\";\"对坊乡\";\"other\"\n\"1814270\";\"Dahuangwei\";\"main\"\n\"1814270\";\"Dahuangwei Xiang\";\"other\"\n\"1814270\";\"Huang-wei-ts'un\";\"other\"\n\"1814270\";\"Huang-wei-ts’un\";\"other\"\n\"1814270\";\"Ta-huang-wei\";\"other\"\n\"1814270\";\"大黄巍\";\"other\"\n\"1814270\";\"大黄巍乡\";\"other\"\n\"1814273\";\"Dahuangpu\";\"main\"\n\"1814273\";\"Dahuangbu\";\"other\"\n\"1814273\";\"Ta-huang-Pao\";\"other\"\n\"1814273\";\"Ta-huang-p'u\";\"other\"\n\"1814273\";\"Ta-huang-p’u\";\"other\"\n\"1814277\";\"Dahuang\";\"main\"\n\"1814277\";\"Dahuang Xiang\";\"other\"\n\"1814277\";\"大黄\";\"other\"\n\"1814277\";\"大黄乡\";\"other\"\n\"1814282\";\"Dahua\";\"main\"\n\"1814282\";\"Ta-hua\";\"other\"\n\"1814282\";\"Ta-hua-hsiang\";\"other\"\n\"1814282\";\"Ta-hua-hsu\";\"other\"\n\"1814282\";\"Ta-hua-hsü\";\"other\"\n\"1814282\";\"da hua\";\"other\"\n\"1814282\";\"大化\";\"other\"\n\"1814287\";\"Dahu\";\"main\"\n\"1814287\";\"Dahu Zhen\";\"other\"\n\"1814287\";\"Ta-hu\";\"other\"\n\"1814287\";\"大湖\";\"other\"\n\"1814287\";\"大湖镇\";\"other\"\n\"1814324\";\"Dahejia\";\"main\"\n\"1814324\";\"Dahejia Zhen\";\"other\"\n\"1814324\";\"Dakhztszya\";\"other\"\n\"1814324\";\"Ta-ho-chia\";\"other\"\n\"1814324\";\"Ta-hz-chia\";\"other\"\n\"1814324\";\"大河家\";\"other\"\n\"1814324\";\"大河家镇\";\"other\"\n\"1814345\";\"Ziyuan\";\"main\"\n\"1814345\";\"Dahe\";\"other\"\n\"1814345\";\"Ta-fou-t'ou\";\"other\"\n\"1814345\";\"Ta-fou-t’ou\";\"other\"\n\"1814345\";\"Tzu-yuan\";\"other\"\n\"1814345\";\"Tzu-yüan\";\"other\"\n\"1814345\";\"zi yuan\";\"other\"\n\"1814345\";\"资源\";\"other\"\n\"1814356\";\"Dahao\";\"main\"\n\"1814356\";\"Dahao Jiedao\";\"other\"\n\"1814356\";\"da hao\";\"other\"\n\"1814356\";\"达濠\";\"other\"\n\"1814367\";\"Daguo\";\"main\"\n\"1814367\";\"Daguo Xiang\";\"other\"\n\"1814367\";\"大郭\";\"other\"\n\"1814367\";\"大郭乡\";\"other\"\n\"1814392\";\"Dagou\";\"main\"\n\"1814392\";\"大沟\";\"other\"\n\"1814402\";\"Dazhasi\";\"main\"\n\"1814402\";\"Dagcagoin\";\"other\"\n\"1814402\";\"Jo-erh-kai\";\"other\"\n\"1814402\";\"Ta-cha-ssu\";\"other\"\n\"1814402\";\"Ta-cha-szu\";\"other\"\n\"1814402\";\"Ta-ko-cha-ssu\";\"other\"\n\"1814402\";\"Zoige\";\"other\"\n\"1814402\";\"Zoigê\";\"other\"\n\"1814402\";\"da zha si\";\"other\"\n\"1814402\";\"达扎寺\";\"other\"\n\"1814414\";\"Dagang\";\"main\"\n\"1814414\";\"Ta-kang\";\"other\"\n\"1814414\";\"Ta-kang-hsu\";\"other\"\n\"1814414\";\"Ta-kang-hsü\";\"other\"\n\"1814414\";\"大岗\";\"other\"\n\"1814414\";\"大岗镇\";\"other\"\n\"1814417\";\"Dagan\";\"main\"\n\"1814417\";\"Dagan Zhen\";\"other\"\n\"1814417\";\"Ta-kan\";\"other\"\n\"1814417\";\"大干\";\"other\"\n\"1814417\";\"大干镇\";\"other\"\n\"1814435\";\"Dafeng\";\"main\"\n\"1814435\";\"Shang-lin-hsien\";\"other\"\n\"1814435\";\"Shang-liu\";\"other\"\n\"1814435\";\"Shanglin\";\"other\"\n\"1814435\";\"Shangling\";\"other\"\n\"1814435\";\"da feng\";\"other\"\n\"1814435\";\"大丰\";\"other\"\n\"1814454\";\"Daduo\";\"main\"\n\"1814454\";\"Daduo Zhen\";\"other\"\n\"1814454\";\"Ta-to\";\"other\"\n\"1814454\";\"Ta-to-chen\";\"other\"\n\"1814454\";\"大垛\";\"other\"\n\"1814454\";\"大垛镇\";\"other\"\n\"1814456\";\"Dadunqiu\";\"main\"\n\"1814456\";\"Ta-tun-ch'iu\";\"other\"\n\"1814456\";\"Ta-tun-ch’iu\";\"other\"\n\"1814483\";\"Dadian\";\"main\"\n\"1814483\";\"Ta-tien\";\"other\"\n\"1814483\";\"da dian\";\"other\"\n\"1814483\";\"大店\";\"other\"\n\"1814492\";\"Dadeng\";\"main\"\n\"1814492\";\"da deng\";\"other\"\n\"1814492\";\"大嶝\";\"other\"\n\"1814503\";\"Daciyao\";\"main\"\n\"1814503\";\"Daciyao Zhen\";\"other\"\n\"1814503\";\"Ta-tz'u-yao\";\"other\"\n\"1814503\";\"Ta-tz’u-yao\";\"other\"\n\"1814503\";\"大磁窑\";\"other\"\n\"1814503\";\"大磁窑镇\";\"other\"\n\"1814524\";\"Dacheng\";\"main\"\n\"1814524\";\"Dacheng Zhen\";\"other\"\n\"1814524\";\"T'ien-ch'eng-chen\";\"other\"\n\"1814524\";\"Ta-ch'eng\";\"other\"\n\"1814524\";\"Ta-ch'eng-chen\";\"other\"\n\"1814524\";\"Ta-ch’eng\";\"other\"\n\"1814524\";\"Ta-ch’eng-chen\";\"other\"\n\"1814524\";\"T’ien-ch’eng-chen\";\"other\"\n\"1814524\";\"da cheng\";\"other\"\n\"1814524\";\"大程\";\"other\"\n\"1814525\";\"Dacheng\";\"main\"\n\"1814525\";\"Dacheng Zhen\";\"other\"\n\"1814525\";\"Ta-ch'eng\";\"other\"\n\"1814525\";\"Ta-ch’eng\";\"other\"\n\"1814525\";\"大城\";\"other\"\n\"1814525\";\"大城镇\";\"other\"\n\"1814572\";\"Dabu\";\"main\"\n\"1814572\";\"Dapu\";\"other\"\n\"1814572\";\"Liucheng\";\"other\"\n\"1814572\";\"Ta-p'u-chen\";\"other\"\n\"1814572\";\"Ta-pu\";\"other\"\n\"1814572\";\"Ta-p’u-chen\";\"other\"\n\"1814572\";\"da bu\";\"other\"\n\"1814572\";\"大埔\";\"other\"\n\"1814577\";\"Dabizhuang\";\"main\"\n\"1814577\";\"Ta-pi-chuang\";\"other\"\n\"1814577\";\"Tapi\";\"other\"\n\"1814596\";\"Dabao’anzhen\";\"main\"\n\"1814596\";\"Dabao'anzhen\";\"ascii\"\n\"1814596\";\"Dabao'an\";\"other\"\n\"1814596\";\"Dabao’an\";\"other\"\n\"1814596\";\"Ta-an-chuang\";\"other\"\n\"1814610\";\"Dabaizhuang\";\"main\"\n\"1814610\";\"Ta-pai-chuang\";\"other\"\n\"1814616\";\"Dabaidi\";\"main\"\n\"1814616\";\"Dabaidi Xiang\";\"other\"\n\"1814616\";\"Ta-pai-ti\";\"other\"\n\"1814616\";\"大柏地\";\"other\"\n\"1814616\";\"大柏地乡\";\"other\"\n\"1814621\";\"Dabachang\";\"main\"\n\"1814621\";\"Ta-pa-ch'ang\";\"other\"\n\"1814621\";\"Ta-pa-ch’ang\";\"other\"\n\"1814635\";\"Xiazhi\";\"main\"\n\"1814635\";\"Da'ao\";\"other\"\n\"1814635\";\"Da’ao\";\"other\"\n\"1814635\";\"Ta-ao\";\"other\"\n\"1814635\";\"Xiazhi Zhen\";\"other\"\n\"1814635\";\"虾峙\";\"other\"\n\"1814635\";\"虾峙镇\";\"other\"\n\"1814639\";\"Da’anping\";\"main\"\n\"1814639\";\"Da'anping\";\"ascii\"\n\"1814639\";\"Da'an Xiang\";\"other\"\n\"1814639\";\"Da’an Xiang\";\"other\"\n\"1814639\";\"Ta-an-p'ing\";\"other\"\n\"1814639\";\"Ta-an-p’ing\";\"other\"\n\"1814639\";\"da an ping\";\"other\"\n\"1814639\";\"da an xiang\";\"other\"\n\"1814639\";\"大安乡\";\"other\"\n\"1814639\";\"大安坪\";\"other\"\n\"1814642\";\"Da’an\";\"main\"\n\"1814642\";\"Da'an\";\"ascii\"\n\"1814642\";\"Da'an Zhen\";\"other\"\n\"1814642\";\"Daan'i\";\"other\"\n\"1814642\";\"Daan’i\";\"other\"\n\"1814642\";\"Da’an Zhen\";\"other\"\n\"1814642\";\"Ta-an\";\"other\"\n\"1814642\";\"Ta-an-i\";\"other\"\n\"1814642\";\"Taanchen\";\"other\"\n\"1814642\";\"Taanyi\";\"other\"\n\"1814642\";\"大安\";\"other\"\n\"1814642\";\"大安镇\";\"other\"\n\"1814652\";\"Da’an\";\"main\"\n\"1814652\";\"Da'an\";\"ascii\"\n\"1814652\";\"Da'an Zhen\";\"other\"\n\"1814652\";\"Da’an Zhen\";\"other\"\n\"1814652\";\"Ta-an\";\"other\"\n\"1814652\";\"Ta-an-hsu\";\"other\"\n\"1814652\";\"Ta-an-hsü\";\"other\"\n\"1814652\";\"Taion\";\"other\"\n\"1814652\";\"da an\";\"other\"\n\"1814652\";\"大安\";\"other\"\n\"1814659\";\"Cuntou\";\"main\"\n\"1814659\";\"Cuntou Zhen\";\"other\"\n\"1814659\";\"Ts'un-t'ou\";\"other\"\n\"1814659\";\"Ts'un-t'ou-shih\";\"other\"\n\"1814659\";\"Ts’un-t’ou\";\"other\"\n\"1814659\";\"Ts’un-t’ou-shih\";\"other\"\n\"1814659\";\"cun tou\";\"other\"\n\"1814659\";\"cun tou zhen\";\"other\"\n\"1814659\";\"村头\";\"other\"\n\"1814659\";\"村头镇\";\"other\"\n\"1814684\";\"Cuimu\";\"main\"\n\"1814684\";\"Cuimu Zhen\";\"other\"\n\"1814684\";\"Ts'ui-mu\";\"other\"\n\"1814684\";\"Ts'ui-mu-chen\";\"other\"\n\"1814684\";\"Tsuymuchzhen'\";\"other\"\n\"1814684\";\"Tsuymuchzhen’\";\"other\"\n\"1814684\";\"Ts’ui-mu\";\"other\"\n\"1814684\";\"Ts’ui-mu-chen\";\"other\"\n\"1814684\";\"崔木\";\"other\"\n\"1814684\";\"崔木镇\";\"other\"\n\"1814689\";\"Cuijiang\";\"main\"\n\"1814689\";\"Ch'ing-ning\";\"other\"\n\"1814689\";\"Ch’ing-ning\";\"other\"\n\"1814689\";\"Cuijiang Zhen\";\"other\"\n\"1814689\";\"Ning-hua-ch'eng-kuan\";\"other\"\n\"1814689\";\"Ning-hua-ch’eng-kuan\";\"other\"\n\"1814689\";\"Ning-hua-hsien\";\"other\"\n\"1814689\";\"Ning-hua-hsien-ch'eng\";\"other\"\n\"1814689\";\"Ning-hua-hsien-ch’eng\";\"other\"\n\"1814689\";\"Ninghua\";\"other\"\n\"1814689\";\"Ninghua Xian\";\"other\"\n\"1814689\";\"Ninghwa\";\"other\"\n\"1814689\";\"Ninghwa-hsien\";\"other\"\n\"1814689\";\"cui jiang\";\"other\"\n\"1814689\";\"宁化县\";\"other\"\n\"1814689\";\"翠江\";\"other\"\n\"1814689\";\"翠江镇\";\"other\"\n\"1814691\";\"Cuijiamatou\";\"main\"\n\"1814697\";\"Cuihuangkou\";\"main\"\n\"1814697\";\"Ts'ui-huang-chuang\";\"other\"\n\"1814697\";\"Ts'ui-huang-k'ou\";\"other\"\n\"1814697\";\"Ts’ui-huang-chuang\";\"other\"\n\"1814697\";\"Ts’ui-huang-k’ou\";\"other\"\n\"1814698\";\"Cuihua\";\"main\"\n\"1814698\";\"Daguan\";\"other\"\n\"1814698\";\"Ta-kuan\";\"other\"\n\"1814698\";\"Ta-kuan-hsien\";\"other\"\n\"1814698\";\"Takwan-hsien\";\"other\"\n\"1814698\";\"cui hua\";\"other\"\n\"1814698\";\"翠华\";\"other\"\n\"1814720\";\"Ciyantang\";\"main\"\n\"1814720\";\"Ciyantang Zhen\";\"other\"\n\"1814720\";\"ci yan tang\";\"other\"\n\"1814720\";\"ci yan tang zhen\";\"other\"\n\"1814720\";\"茨岩塘\";\"other\"\n\"1814720\";\"茨岩塘镇\";\"other\"\n\"1814735\";\"Lingyang\";\"main\"\n\"1814735\";\"Cili\";\"other\"\n\"1814735\";\"Tsu-li\";\"other\"\n\"1814735\";\"Tz'u-li\";\"other\"\n\"1814735\";\"Tz'u-li-hsien\";\"other\"\n\"1814735\";\"Tzeli\";\"other\"\n\"1814735\";\"Tzeli-hsien\";\"other\"\n\"1814735\";\"Tz’u-li\";\"other\"\n\"1814735\";\"Tz’u-li-hsien\";\"other\"\n\"1814735\";\"ling yang\";\"other\"\n\"1814735\";\"零阳\";\"other\"\n\"1814744\";\"Cihu\";\"main\"\n\"1814744\";\"Tz'u-hu\";\"other\"\n\"1814744\";\"Tz'u-hu-chen\";\"other\"\n\"1814744\";\"Tzehu\";\"other\"\n\"1814744\";\"Tz’u-hu\";\"other\"\n\"1814744\";\"Tz’u-hu-chen\";\"other\"\n\"1814744\";\"ci hu\";\"other\"\n\"1814744\";\"慈湖\";\"other\"\n\"1814749\";\"Cigou\";\"main\"\n\"1814749\";\"Tz'u-kou\";\"other\"\n\"1814749\";\"Tz’u-kou\";\"other\"\n\"1814749\";\"ci gou\";\"other\"\n\"1814749\";\"茨沟\";\"other\"\n\"1814753\";\"Cicheng\";\"main\"\n\"1814753\";\"Cicheng Zhen\";\"other\"\n\"1814753\";\"Tsekihsien\";\"other\"\n\"1814753\";\"Tz'u-ch'eng\";\"other\"\n\"1814753\";\"Tz'u-ch'eng-chen\";\"other\"\n\"1814753\";\"Tz'u-ch'i\";\"other\"\n\"1814753\";\"Tz'u-ch'i-hsien\";\"other\"\n\"1814753\";\"Tzeki\";\"other\"\n\"1814753\";\"Tz’u-ch’eng\";\"other\"\n\"1814753\";\"Tz’u-ch’eng-chen\";\"other\"\n\"1814753\";\"Tz’u-ch’i\";\"other\"\n\"1814753\";\"Tz’u-ch’i-hsien\";\"other\"\n\"1814753\";\"ci cheng zhen\";\"other\"\n\"1814753\";\"慈城\";\"other\"\n\"1814753\";\"慈城镇\";\"other\"\n\"1814754\";\"Ciba\";\"main\"\n\"1814754\";\"ci ba\";\"other\"\n\"1814754\";\"茨芭\";\"other\"\n\"1814757\";\"Chuzhou\";\"main\"\n\"1814757\";\"Ch'u\";\"other\"\n\"1814757\";\"Ch'u-ch'uan\";\"other\"\n\"1814757\";\"Ch'u-hsien\";\"other\"\n\"1814757\";\"Chuchow\";\"other\"\n\"1814757\";\"Chuxian\";\"other\"\n\"1814757\";\"Ch’u\";\"other\"\n\"1814757\";\"Ch’u-ch’üan\";\"other\"\n\"1814757\";\"Ch’u-hsien\";\"other\"\n\"1814757\";\"chu zhou\";\"other\"\n\"1814757\";\"chu zhou shi\";\"other\"\n\"1814757\";\"چۇجۇ شەھىرى\";\"other\"\n\"1814757\";\"滁州\";\"other\"\n\"1814757\";\"滁州市\";\"other\"\n\"1814765\";\"Chushan\";\"main\"\n\"1814765\";\"Ch'u-shan-chai\";\"other\"\n\"1814765\";\"Chushan Zhen\";\"other\"\n\"1814765\";\"Ch’u-shan-chai\";\"other\"\n\"1814765\";\"出山\";\"other\"\n\"1814765\";\"出山镇\";\"other\"\n\"1814767\";\"Chunxi\";\"main\"\n\"1814767\";\"Ch'un-hsi\";\"other\"\n\"1814767\";\"Ch’un-hsi\";\"other\"\n\"1814767\";\"Gaochun\";\"other\"\n\"1814767\";\"Kao-ch'un\";\"other\"\n\"1814767\";\"Kao-ch’un\";\"other\"\n\"1814767\";\"Kao-shun\";\"other\"\n\"1814767\";\"Kao-shun-hsien\";\"other\"\n\"1814767\";\"chun xi\";\"other\"\n\"1814767\";\"淳溪\";\"other\"\n\"1814769\";\"Chunshui\";\"main\"\n\"1814769\";\"Ch'un-shui-chen\";\"other\"\n\"1814769\";\"Chun'shuy\";\"other\"\n\"1814769\";\"Chunshui Zhen\";\"other\"\n\"1814769\";\"Chun’shuy\";\"other\"\n\"1814769\";\"Ch’un-shui-chen\";\"other\"\n\"1814769\";\"chun shui\";\"other\"\n\"1814769\";\"春水\";\"other\"\n\"1814780\";\"Chunhua\";\"main\"\n\"1814780\";\"Chengguan Zhen\";\"other\"\n\"1814780\";\"Chunhwa\";\"other\"\n\"1814780\";\"Chunhwa-hsien\";\"other\"\n\"1814780\";\"Shun-hua\";\"other\"\n\"1814780\";\"Shun-hua-hsien\";\"other\"\n\"1814780\";\"Shun-hua-hsien-ch'eng\";\"other\"\n\"1814780\";\"Shun-hua-hsien-ch’eng\";\"other\"\n\"1814780\";\"Shunhwahsien\";\"other\"\n\"1814780\";\"cheng guan zhen\";\"other\"\n\"1814780\";\"chun hua\";\"other\"\n\"1814780\";\"城关镇\";\"other\"\n\"1814780\";\"淳化\";\"other\"\n\"1814782\";\"Chunhu\";\"main\"\n\"1814782\";\"Chunhu Zhen\";\"other\"\n\"1814782\";\"Tsun-hu-chen\";\"other\"\n\"1814782\";\"chun hu\";\"other\"\n\"1814782\";\"chun hu zhen\";\"other\"\n\"1814782\";\"莼湖\";\"other\"\n\"1814782\";\"莼湖镇\";\"other\"\n\"1814786\";\"Yangchun\";\"main\"\n\"1814786\";\"Ch'un-ch'eng-chen\";\"other\"\n\"1814786\";\"Chuncheng\";\"other\"\n\"1814786\";\"Ch’un-ch’eng-chen\";\"other\"\n\"1814786\";\"Yang-ch'un-hsien\";\"other\"\n\"1814786\";\"Yang-ch’un-hsien\";\"other\"\n\"1814786\";\"Yeungchun\";\"other\"\n\"1814786\";\"阳春\";\"other\"\n\"1814789\";\"Chumi\";\"main\"\n\"1814789\";\"Ch'u-mi-p'u\";\"other\"\n\"1814789\";\"Chumi Zhen\";\"other\"\n\"1814789\";\"Ch’u-mi-p’u\";\"other\"\n\"1814802\";\"Chuimatan\";\"main\"\n\"1814802\";\"Chuimatan Zhen\";\"other\"\n\"1814802\";\"Jishishan Bonanzu Dongxiangzu\";\"other\"\n\"1814802\";\"吹麻滩\";\"other\"\n\"1814802\";\"吹麻滩镇\";\"other\"\n\"1814802\";\"积石山保安族东乡族\";\"other\"\n\"1814830\";\"Chuanshan\";\"main\"\n\"1814830\";\"Chuanshan Xiang\";\"other\"\n\"1814846\";\"Dengzishan\";\"main\"\n\"1814846\";\"Chuanjie\";\"other\"\n\"1814846\";\"chuan jie\";\"other\"\n\"1814846\";\"川街\";\"other\"\n\"1814852\";\"Chuangang\";\"main\"\n\"1814852\";\"Ch'uan-chiang\";\"other\"\n\"1814852\";\"Ch'uan-chiang-chen\";\"other\"\n\"1814852\";\"Ch'uan-kang\";\"other\"\n\"1814852\";\"Chuangang Zhen\";\"other\"\n\"1814852\";\"Ch’uan-chiang\";\"other\"\n\"1814852\";\"Ch’uan-chiang-chen\";\"other\"\n\"1814852\";\"Ch’uan-kang\";\"other\"\n\"1814852\";\"川港\";\"other\"\n\"1814852\";\"川港镇\";\"other\"\n\"1814870\";\"Yiwu\";\"main\"\n\"1814870\";\"Choucheng\";\"other\"\n\"1814870\";\"I-wu\";\"other\"\n\"1814870\";\"I-wu-hsien\";\"other\"\n\"1814870\";\"Iu\";\"other\"\n\"1814870\";\"Yiwuhsien\";\"other\"\n\"1814870\";\"Иу\";\"other\"\n\"1814870\";\"义乌\";\"other\"\n\"1814888\";\"Chongxian\";\"main\"\n\"1814888\";\"Ch'ung-hsien\";\"other\"\n\"1814888\";\"Ch'ung-hsien-hsu\";\"other\"\n\"1814888\";\"Chongxian Xiang\";\"other\"\n\"1814888\";\"Ch’ung-hsien\";\"other\"\n\"1814888\";\"Ch’ung-hsien-hsü\";\"other\"\n\"1814888\";\"崇贤\";\"other\"\n\"1814888\";\"崇贤乡\";\"other\"\n\"1814896\";\"Chongru\";\"main\"\n\"1814896\";\"Ch'ung-ju\";\"other\"\n\"1814896\";\"Ch’ung-ju\";\"other\"\n\"1814899\";\"Chongren\";\"main\"\n\"1814899\";\"Ch'ung-jen\";\"other\"\n\"1814899\";\"Ch'ung-jen-chen\";\"other\"\n\"1814899\";\"Chongren Zhen\";\"other\"\n\"1814899\";\"Ch’ung-jen\";\"other\"\n\"1814899\";\"Ch’ung-jen-chen\";\"other\"\n\"1814899\";\"崇仁\";\"other\"\n\"1814899\";\"崇仁镇\";\"other\"\n\"1814906\";\"Chongqing\";\"main\"\n\"1814906\";\"Cchung-cching\";\"other\"\n\"1814906\";\"Ch'ung-ch'ing\";\"other\"\n\"1814906\";\"Ch'ung-ch'ing-shih\";\"other\"\n\"1814906\";\"Chongqing - zhong qing\";\"other\"\n\"1814906\";\"Chongqing - 重庆\";\"other\"\n\"1814906\";\"Chongqing Shi\";\"other\"\n\"1814906\";\"Chuncin\";\"other\"\n\"1814906\";\"Chungking\";\"other\"\n\"1814906\";\"Ch’ung-ch’ing\";\"other\"\n\"1814906\";\"Ch’ung-ch’ing-shih\";\"other\"\n\"1814906\";\"Congcingas\";\"other\"\n\"1814906\";\"Csungking\";\"other\"\n\"1814906\";\"Cuncina\";\"other\"\n\"1814906\";\"Pa\";\"other\"\n\"1814906\";\"Pa-hsien\";\"other\"\n\"1814906\";\"Trung Khanh\";\"other\"\n\"1814906\";\"Trùng Khánh\";\"other\"\n\"1814906\";\"Tsjoengking\";\"other\"\n\"1814906\";\"Yu-chou\";\"other\"\n\"1814906\";\"Yuzhou\";\"other\"\n\"1814906\";\"Yü-chou\";\"other\"\n\"1814906\";\"chungching\";\"other\"\n\"1814906\";\"tshwnghtshyngh\";\"other\"\n\"1814906\";\"z'wngz'yng\";\"other\"\n\"1814906\";\"zhong qing\";\"other\"\n\"1814906\";\"zhong qing shi\";\"other\"\n\"1814906\";\"Čchung-čching\";\"other\"\n\"1814906\";\"Čongčingas\";\"other\"\n\"1814906\";\"Čuncina\";\"other\"\n\"1814906\";\"Чунцин\";\"other\"\n\"1814906\";\"צ'ונגצ'ינג\";\"other\"\n\"1814906\";\"تشونغتشينغ\";\"other\"\n\"1814906\";\"چونگ‌کینگ\";\"other\"\n\"1814906\";\"چۇڭچىڭ شەھىرى\";\"other\"\n\"1814906\";\"重庆\";\"other\"\n\"1814906\";\"重庆市\";\"other\"\n\"1814906\";\"重慶市\";\"other\"\n\"1814906\";\"충칭\";\"other\"\n\"1814909\";\"Chongning\";\"main\"\n\"1814909\";\"Ch'ung-ning\";\"other\"\n\"1814909\";\"Ch'ung-ning-chen\";\"other\"\n\"1814909\";\"Chongning Zhen\";\"other\"\n\"1814909\";\"Ch’ung-ning\";\"other\"\n\"1814909\";\"Ch’ung-ning-chen\";\"other\"\n\"1814909\";\"chong ning\";\"other\"\n\"1814909\";\"崇凝\";\"other\"\n\"1814919\";\"Chonglong\";\"main\"\n\"1814919\";\"Tzechow\";\"other\"\n\"1814919\";\"Tzechung\";\"other\"\n\"1814919\";\"Tzechung-hsien\";\"other\"\n\"1814919\";\"Tzu-chou\";\"other\"\n\"1814919\";\"Tzu-chung\";\"other\"\n\"1814919\";\"Tzu-chung-hsien\";\"other\"\n\"1814919\";\"Zizhong\";\"other\"\n\"1814919\";\"重龙\";\"other\"\n\"1814934\";\"Chizhou\";\"main\"\n\"1814934\";\"Ch'ih-chou\";\"other\"\n\"1814934\";\"Ch'ih-chou-chen\";\"other\"\n\"1814934\";\"Chih-chow-fu\";\"other\"\n\"1814934\";\"Chihchow\";\"other\"\n\"1814934\";\"Ch’ih-chou\";\"other\"\n\"1814934\";\"Ch’ih-chou-chen\";\"other\"\n\"1814934\";\"Guichi\";\"other\"\n\"1814934\";\"Kuei-ch'ih\";\"other\"\n\"1814934\";\"Kuei-ch'ih-hsien\";\"other\"\n\"1814934\";\"Kuei-ch’ih\";\"other\"\n\"1814934\";\"Kuei-ch’ih-hsien\";\"other\"\n\"1814934\";\"Kweichih\";\"other\"\n\"1814934\";\"Kweichih-hsien\";\"other\"\n\"1814934\";\"Kweighih\";\"other\"\n\"1814934\";\"chi zhou\";\"other\"\n\"1814934\";\"chi zhou shi\";\"other\"\n\"1814934\";\"池州\";\"other\"\n\"1814934\";\"池州市\";\"other\"\n\"1814945\";\"Chixi\";\"main\"\n\"1814945\";\"Ch'ih-hsi\";\"other\"\n\"1814945\";\"Chixi Xiang\";\"other\"\n\"1814945\";\"Ch’ih-hsi\";\"other\"\n\"1814945\";\"池溪\";\"other\"\n\"1814945\";\"池溪乡\";\"other\"\n\"1814946\";\"Chixi\";\"main\"\n\"1814946\";\"Ch'ih-ch'i\";\"other\"\n\"1814946\";\"Ch’ih-ch’i\";\"other\"\n\"1814949\";\"Chiwei\";\"main\"\n\"1814949\";\"Ch'ih-wei\";\"other\"\n\"1814949\";\"Chiwei Jiedao\";\"other\"\n\"1814949\";\"Ch’ih-wei\";\"other\"\n\"1814949\";\"chi wei\";\"other\"\n\"1814949\";\"池尾\";\"other\"\n\"1814964\";\"Chishui\";\"main\"\n\"1814964\";\"Ch'ih-shui\";\"other\"\n\"1814964\";\"Ch'ih-shui-chen\";\"other\"\n\"1814964\";\"Chishui Zhen\";\"other\"\n\"1814964\";\"Ch’ih-shui\";\"other\"\n\"1814964\";\"Ch’ih-shui-chen\";\"other\"\n\"1814964\";\"chi shui\";\"other\"\n\"1814964\";\"赤水\";\"other\"\n\"1814977\";\"Chishi\";\"main\"\n\"1814977\";\"chi shi\";\"other\"\n\"1814977\";\"赤石\";\"other\"\n\"1814995\";\"Chikeng\";\"main\"\n\"1814995\";\"chi keng\";\"other\"\n\"1814995\";\"赤坑\";\"other\"\n\"1814999\";\"Chitu\";\"main\"\n\"1814999\";\"Ch'ih-chien-t'an\";\"other\"\n\"1814999\";\"Ch'ih-hsien-t'an\";\"other\"\n\"1814999\";\"Chijiantan\";\"other\"\n\"1814999\";\"Ch’ih-chien-t’an\";\"other\"\n\"1814999\";\"Ch’ih-hsien-t’an\";\"other\"\n\"1815013\";\"Chigan\";\"main\"\n\"1815013\";\"Ch'ih-kan\";\"other\"\n\"1815013\";\"Ch'ih-kan-chen\";\"other\"\n\"1815013\";\"Chigan Zhen\";\"other\"\n\"1815013\";\"Ch’ih-kan\";\"other\"\n\"1815013\";\"Ch’ih-kan-chen\";\"other\"\n\"1815013\";\"chi gan\";\"other\"\n\"1815013\";\"chi gan zhen\";\"other\"\n\"1815013\";\"叱干\";\"other\"\n\"1815013\";\"叱干镇\";\"other\"\n\"1815018\";\"Chicheng\";\"main\"\n\"1815018\";\"Feng-chi\";\"other\"\n\"1815018\";\"Fontsi\";\"other\"\n\"1815018\";\"Fyntsi\";\"other\"\n\"1815018\";\"P'eng-ch'i\";\"other\"\n\"1815018\";\"P'eng-ch'i-hsien\";\"other\"\n\"1815018\";\"P'eng-hsi\";\"other\"\n\"1815018\";\"Pengki\";\"other\"\n\"1815018\";\"Pengki-hsien\";\"other\"\n\"1815018\";\"Pengxi\";\"other\"\n\"1815018\";\"P’eng-ch’i\";\"other\"\n\"1815018\";\"P’eng-ch’i-hsien\";\"other\"\n\"1815018\";\"P’eng-hsi\";\"other\"\n\"1815018\";\"chi cheng\";\"other\"\n\"1815018\";\"赤城\";\"other\"\n\"1815022\";\"Chiba\";\"main\"\n\"1815022\";\"池坝\";\"other\"\n\"1815024\";\"Chi’an\";\"main\"\n\"1815024\";\"Chi'an\";\"ascii\"\n\"1815024\";\"Ch'ih-an\";\"other\"\n\"1815024\";\"Ch'ih-an-shih\";\"other\"\n\"1815024\";\"Chi'an Zhen\";\"other\"\n\"1815024\";\"Chi’an Zhen\";\"other\"\n\"1815024\";\"Ch’ih-an\";\"other\"\n\"1815024\";\"Ch’ih-an-shih\";\"other\"\n\"1815024\";\"chi an\";\"other\"\n\"1815024\";\"chi an zhen\";\"other\"\n\"1815024\";\"赤岸\";\"other\"\n\"1815024\";\"赤岸镇\";\"other\"\n\"1815041\";\"Chetian\";\"main\"\n\"1815041\";\"Chetiean Xiang\";\"other\"\n\"1815041\";\"che tian\";\"other\"\n\"1815041\";\"che tian xiang\";\"other\"\n\"1815041\";\"车田\";\"other\"\n\"1815041\";\"车田乡\";\"other\"\n\"1815053\";\"Chenzhuang\";\"main\"\n\"1815053\";\"Chenzhuang Zhen\";\"other\"\n\"1815053\";\"chen zhuang\";\"other\"\n\"1815053\";\"陈庄\";\"other\"\n\"1815055\";\"Chenzhuang\";\"main\"\n\"1815055\";\"chen zhuang\";\"other\"\n\"1815055\";\"陈庄\";\"other\"\n\"1815059\";\"Chenzhou\";\"main\"\n\"1815059\";\"Ch'en\";\"other\"\n\"1815059\";\"Ch'en-chou-shih\";\"other\"\n\"1815059\";\"Ch'en-hsien\";\"other\"\n\"1815059\";\"Chehn'chzhou\";\"other\"\n\"1815059\";\"Chenchow\";\"other\"\n\"1815059\";\"Ch’en\";\"other\"\n\"1815059\";\"Ch’en-chou-shih\";\"other\"\n\"1815059\";\"Ch’en-hsien\";\"other\"\n\"1815059\";\"Чэньчжоу\";\"other\"\n\"1815059\";\"郴州\";\"other\"\n\"1815068\";\"Chenyang\";\"main\"\n\"1815068\";\"Ch'en-ch'i\";\"other\"\n\"1815068\";\"Ch'en-ch'i-hsien\";\"other\"\n\"1815068\";\"Ch'en-hsi\";\"other\"\n\"1815068\";\"Chenki\";\"other\"\n\"1815068\";\"Chenki-hsien\";\"other\"\n\"1815068\";\"Chenxi\";\"other\"\n\"1815068\";\"Ch’en-ch’i\";\"other\"\n\"1815068\";\"Ch’en-ch’i-hsien\";\"other\"\n\"1815068\";\"Ch’en-hsi\";\"other\"\n\"1815068\";\"chen yang\";\"other\"\n\"1815068\";\"辰阳\";\"other\"\n\"1815136\";\"Chenjiahe\";\"main\"\n\"1815136\";\"Chenjiahe Zhen\";\"other\"\n\"1815136\";\"chen jia he\";\"other\"\n\"1815136\";\"chen jia he zhen\";\"other\"\n\"1815136\";\"陈家河\";\"other\"\n\"1815136\";\"陈家河镇\";\"other\"\n\"1815173\";\"Chengzhong\";\"main\"\n\"1815173\";\"Ning-ming-hsien\";\"other\"\n\"1815173\";\"Ningming\";\"other\"\n\"1815173\";\"cheng zhong\";\"other\"\n\"1815173\";\"城中\";\"other\"\n\"1815184\";\"Chengyang\";\"main\"\n\"1815184\";\"Chu\";\"other\"\n\"1815184\";\"Chu-hsien\";\"other\"\n\"1815184\";\"Chuchow\";\"other\"\n\"1815184\";\"Chü\";\"other\"\n\"1815184\";\"Chü-hsien\";\"other\"\n\"1815184\";\"Chüchow\";\"other\"\n\"1815184\";\"Juxian\";\"other\"\n\"1815188\";\"Chengxian Chengguanzhen\";\"main\"\n\"1815188\";\"Ch'eng\";\"other\"\n\"1815188\";\"Ch'eng-hsien\";\"other\"\n\"1815188\";\"Chengguan Zhen\";\"other\"\n\"1815188\";\"Chengxian\";\"other\"\n\"1815188\";\"Chensyan'\";\"other\"\n\"1815188\";\"Chensyan’\";\"other\"\n\"1815188\";\"Ch’eng\";\"other\"\n\"1815188\";\"Ch’eng-hsien\";\"other\"\n\"1815188\";\"城关镇\";\"other\"\n\"1815188\";\"成县\";\"other\"\n\"1815188\";\"成县城关镇\";\"other\"\n\"1815202\";\"Chengtougu\";\"main\"\n\"1815202\";\"Ch'eng-t'ou-ku\";\"other\"\n\"1815202\";\"Ch’eng-t’ou-ku\";\"other\"\n\"1815209\";\"Chengtan\";\"main\"\n\"1815209\";\"Chengtan Zhen\";\"other\"\n\"1815209\";\"澄潭\";\"other\"\n\"1815209\";\"澄潭镇\";\"other\"\n\"1815211\";\"Langchi\";\"main\"\n\"1815211\";\"Chengshou\";\"other\"\n\"1815211\";\"Inshan'\";\"other\"\n\"1815211\";\"Inshan’\";\"other\"\n\"1815211\";\"Ying-shan-hsien\";\"other\"\n\"1815211\";\"Yingshan\";\"other\"\n\"1815211\";\"lang chi\";\"other\"\n\"1815211\";\"朗池\";\"other\"\n\"1815216\";\"Chengfeng\";\"main\"\n\"1815216\";\"Chengfeng Xiang\";\"other\"\n\"1815216\";\"Chengshan\";\"other\"\n\"1815216\";\"城丰\";\"other\"\n\"1815216\";\"城丰乡\";\"other\"\n\"1815246\";\"Chengjia\";\"main\"\n\"1815246\";\"Ch'en-chia-shih\";\"other\"\n\"1815246\";\"Ch'eng-chia-shih\";\"other\"\n\"1815246\";\"Chengjia Shi\";\"other\"\n\"1815246\";\"Chengjiashi\";\"other\"\n\"1815246\";\"Ch’en-chia-shih\";\"other\"\n\"1815246\";\"Ch’eng-chia-shih\";\"other\"\n\"1815246\";\"Guangping\";\"other\"\n\"1815246\";\"Kuang-p'ing\";\"other\"\n\"1815246\";\"Kuang-p’ing\";\"other\"\n\"1815246\";\"cheng jia\";\"other\"\n\"1815246\";\"cheng jia shi\";\"other\"\n\"1815246\";\"程家\";\"other\"\n\"1815246\";\"程家市\";\"other\"\n\"1815251\";\"Chengjiang\";\"main\"\n\"1815251\";\"Chiang-yin\";\"other\"\n\"1815251\";\"Chiang-yin-ch'eng\";\"other\"\n\"1815251\";\"Chiang-yin-ch’eng\";\"other\"\n\"1815251\";\"Chiang-yin-hsien\";\"other\"\n\"1815251\";\"Jiangyin\";\"other\"\n\"1815251\";\"Kiangyin\";\"other\"\n\"1815251\";\"澄江\";\"other\"\n\"1815280\";\"Chenggang\";\"main\"\n\"1815280\";\"Ch'eng-kang\";\"other\"\n\"1815280\";\"Chenggang Xiang\";\"other\"\n\"1815280\";\"Ch’eng-kang\";\"other\"\n\"1815280\";\"城冈\";\"other\"\n\"1815280\";\"城冈乡\";\"other\"\n\"1815286\";\"Chengdu\";\"main\"\n\"1815286\";\"Ccheng-tu\";\"other\"\n\"1815286\";\"Cengdu\";\"other\"\n\"1815286\";\"Ch'eng-tu\";\"other\"\n\"1815286\";\"Ch'eng-tu-hsien\";\"other\"\n\"1815286\";\"Ch'eng-tu-shih\";\"other\"\n\"1815286\";\"Chehndu\";\"other\"\n\"1815286\";\"Chengdu Shi\";\"other\"\n\"1815286\";\"Ch’eng-tu\";\"other\"\n\"1815286\";\"Ch’eng-tu-hsien\";\"other\"\n\"1815286\";\"Ch’eng-tu-shih\";\"other\"\n\"1815286\";\"Hua-yang\";\"other\"\n\"1815286\";\"Thanh Do\";\"other\"\n\"1815286\";\"Thành Đô\";\"other\"\n\"1815286\";\"cheng dou\";\"other\"\n\"1815286\";\"cheng dou shi\";\"other\"\n\"1815286\";\"cheongdu\";\"other\"\n\"1815286\";\"Čcheng-tu\";\"other\"\n\"1815286\";\"Čengdu\";\"other\"\n\"1815286\";\"Чэнду\";\"other\"\n\"1815286\";\"چېڭدۇ شەھىرى\";\"other\"\n\"1815286\";\"成都\";\"other\"\n\"1815286\";\"成都市\";\"other\"\n\"1815286\";\"청두\";\"other\"\n\"1815302\";\"Chenghua\";\"main\"\n\"1815302\";\"Ch'eng-hai-hsien\";\"other\"\n\"1815302\";\"Chengcheng\";\"other\"\n\"1815302\";\"Chenghai\";\"other\"\n\"1815302\";\"Ching hai\";\"other\"\n\"1815302\";\"Ch’eng-hai-hsien\";\"other\"\n\"1815302\";\"Tenghai\";\"other\"\n\"1815302\";\"Tenghai-hsien\";\"other\"\n\"1815302\";\"Tsai-ch'eng-chen\";\"other\"\n\"1815302\";\"Tsai-ch’eng-chen\";\"other\"\n\"1815302\";\"澄华\";\"other\"\n\"1815302\";\"澄海\";\"other\"\n\"1815322\";\"Chendai\";\"main\"\n\"1815322\";\"Ch'en-tai\";\"other\"\n\"1815322\";\"Chendai Zhen\";\"other\"\n\"1815322\";\"Ch’en-tai\";\"other\"\n\"1815322\";\"chen dai\";\"other\"\n\"1815322\";\"陈岱\";\"other\"\n\"1815331\";\"Chencheng\";\"main\"\n\"1815331\";\"Chencheng Zhen\";\"other\"\n\"1815331\";\"chen cheng\";\"other\"\n\"1815331\";\"陈城\";\"other\"\n\"1815332\";\"Chencai\";\"main\"\n\"1815332\";\"Ch'en-ts'ai\";\"other\"\n\"1815332\";\"Ch'en-ts'ai-shih\";\"other\"\n\"1815332\";\"Chencai Zhen\";\"other\"\n\"1815332\";\"Ch’en-ts’ai\";\"other\"\n\"1815332\";\"Ch’en-ts’ai-shih\";\"other\"\n\"1815332\";\"chen cai\";\"other\"\n\"1815332\";\"陈蔡\";\"other\"\n\"1815332\";\"陈蔡镇\";\"other\"\n\"1815354\";\"Checun\";\"main\"\n\"1815354\";\"Ch'e-ts'un\";\"other\"\n\"1815354\";\"Checun Zhen\";\"other\"\n\"1815354\";\"Ch’e-ts’un\";\"other\"\n\"1815354\";\"che cun\";\"other\"\n\"1815354\";\"che cun zhen\";\"other\"\n\"1815354\";\"车村\";\"other\"\n\"1815354\";\"车村镇\";\"other\"\n\"1815365\";\"Chayuan\";\"main\"\n\"1815365\";\"Ch'a-yuan-kang\";\"other\"\n\"1815365\";\"Chayuan Xiang\";\"other\"\n\"1815365\";\"Ch’a-yüan-kang\";\"other\"\n\"1815365\";\"茶园\";\"other\"\n\"1815365\";\"茶园乡\";\"other\"\n\"1815376\";\"Chatian\";\"main\"\n\"1815376\";\"Ch'a-t'ien\";\"other\"\n\"1815376\";\"Ch'a-t'ien-shih\";\"other\"\n\"1815376\";\"Chatian Zhen\";\"other\"\n\"1815376\";\"Ch’a-t’ien\";\"other\"\n\"1815376\";\"Ch’a-t’ien-shih\";\"other\"\n\"1815376\";\"cha tian zhen\";\"other\"\n\"1815376\";\"查田\";\"other\"\n\"1815376\";\"查田镇\";\"other\"\n\"1815377\";\"Chatian\";\"main\"\n\"1815387\";\"Chashan\";\"main\"\n\"1815387\";\"Chashan Zhen\";\"other\"\n\"1815387\";\"cha shan\";\"other\"\n\"1815387\";\"茶山\";\"other\"\n\"1815395\";\"Chaozhou\";\"main\"\n\"1815395\";\"Ch'ao-an-hsien\";\"other\"\n\"1815395\";\"Ch'ao-chou\";\"other\"\n\"1815395\";\"Ch'ao-chou-chen\";\"other\"\n\"1815395\";\"Ch'ao-chou-shih\";\"other\"\n\"1815395\";\"Chao'an\";\"other\"\n\"1815395\";\"Chaochow\";\"other\"\n\"1815395\";\"Chaochowfu\";\"other\"\n\"1815395\";\"Chao’an\";\"other\"\n\"1815395\";\"Chau chu fu\";\"other\"\n\"1815395\";\"Chauchow\";\"other\"\n\"1815395\";\"Ch’ao-an-hsien\";\"other\"\n\"1815395\";\"Ch’ao-chou\";\"other\"\n\"1815395\";\"Ch’ao-chou-chen\";\"other\"\n\"1815395\";\"Ch’ao-chou-shih\";\"other\"\n\"1815395\";\"Trieu Chau\";\"other\"\n\"1815395\";\"Triều Châu\";\"other\"\n\"1815395\";\"chao zhou\";\"other\"\n\"1815395\";\"chao zhou shi\";\"other\"\n\"1815395\";\"จังหวัดแต้จิ๋ว\";\"other\"\n\"1815395\";\"潮州\";\"other\"\n\"1815395\";\"潮州市\";\"other\"\n\"1815413\";\"Chaotian\";\"main\"\n\"1815413\";\"Ch'ao-t'ien\";\"other\"\n\"1815413\";\"Ch'ao-t'ien-i\";\"other\"\n\"1815413\";\"Ch'ao-t'ien-kuan\";\"other\"\n\"1815413\";\"Chaotianyi\";\"other\"\n\"1815413\";\"Chzhaotyan'\";\"other\"\n\"1815413\";\"Chzhaotyan’\";\"other\"\n\"1815413\";\"Ch’ao-t’ien\";\"other\"\n\"1815413\";\"Ch’ao-t’ien-i\";\"other\"\n\"1815413\";\"Ch’ao-t’ien-kuan\";\"other\"\n\"1815413\";\"chao tian\";\"other\"\n\"1815413\";\"朝天\";\"other\"\n\"1815427\";\"Chaohu\";\"main\"\n\"1815427\";\"Ch'ao\";\"other\"\n\"1815427\";\"Ch'ao-hsien\";\"other\"\n\"1815427\";\"Chaoxian\";\"other\"\n\"1815427\";\"Ch’ao\";\"other\"\n\"1815427\";\"Ch’ao-hsien\";\"other\"\n\"1815427\";\"Ts'ao-chen\";\"other\"\n\"1815427\";\"Ts’ao-chen\";\"other\"\n\"1815427\";\"chao hu shi\";\"other\"\n\"1815427\";\"巢湖市\";\"other\"\n\"1815433\";\"Chaobei\";\"main\"\n\"1815433\";\"Ch'ao-p'o\";\"other\"\n\"1815433\";\"Ch'ao-pei\";\"other\"\n\"1815433\";\"Chaobei Zhen\";\"other\"\n\"1815433\";\"Ch’ao-pei\";\"other\"\n\"1815433\";\"Ch’ao-p’o\";\"other\"\n\"1815433\";\"chao po\";\"other\"\n\"1815433\";\"chao po zhen\";\"other\"\n\"1815433\";\"晁陂\";\"other\"\n\"1815433\";\"晁陂镇\";\"other\"\n\"1815456\";\"Changzhou\";\"main\"\n\"1815456\";\"Ch'ang-chou\";\"other\"\n\"1815456\";\"Ch'ang-chou-shih\";\"other\"\n\"1815456\";\"Chanchzhou\";\"other\"\n\"1815456\";\"Chang-chow-fu\";\"other\"\n\"1815456\";\"Changchow\";\"other\"\n\"1815456\";\"Ch’ang-chou\";\"other\"\n\"1815456\";\"Ch’ang-chou-shih\";\"other\"\n\"1815456\";\"Wu-chin\";\"other\"\n\"1815456\";\"Wu-chin-hsien\";\"other\"\n\"1815456\";\"Wujin\";\"other\"\n\"1815456\";\"Wutsin\";\"other\"\n\"1815456\";\"chang zhou\";\"other\"\n\"1815456\";\"chang zhou shi\";\"other\"\n\"1815456\";\"Чанчжоу\";\"other\"\n\"1815456\";\"چاڭجو شەھىر\";\"other\"\n\"1815456\";\"常州\";\"other\"\n\"1815456\";\"常州市\";\"other\"\n\"1815463\";\"Changzhi\";\"main\"\n\"1815463\";\"Ch'ang-chih\";\"other\"\n\"1815463\";\"Chanchzhi\";\"other\"\n\"1815463\";\"Ch’ang-chih\";\"other\"\n\"1815463\";\"Shih-t'ou-ko-t'a\";\"other\"\n\"1815463\";\"Shih-t’ou-ko-t’a\";\"other\"\n\"1815463\";\"Shitougeta\";\"other\"\n\"1815463\";\"Чанчжи\";\"other\"\n\"1815466\";\"Changzhen\";\"main\"\n\"1815466\";\"Ch'ang-chen\";\"other\"\n\"1815466\";\"Ch'ang-chen-ts'un\";\"other\"\n\"1815466\";\"Changzhen Xiang\";\"other\"\n\"1815466\";\"Ch’ang-chen\";\"other\"\n\"1815466\";\"Ch’ang-chen-ts’un\";\"other\"\n\"1815466\";\"长畛\";\"other\"\n\"1815466\";\"长畛乡\";\"other\"\n\"1815499\";\"Changxing\";\"main\"\n\"1815499\";\"Ch'ang-hsing\";\"other\"\n\"1815499\";\"Ch'ang-hsing-chen\";\"other\"\n\"1815499\";\"Changxing Zhen\";\"other\"\n\"1815499\";\"Ch’ang-hsing\";\"other\"\n\"1815499\";\"Ch’ang-hsing-chen\";\"other\"\n\"1815499\";\"常兴\";\"other\"\n\"1815499\";\"常兴镇\";\"other\"\n\"1815504\";\"Xiaoxi\";\"main\"\n\"1815504\";\"Ch'ang-hsiao\";\"other\"\n\"1815504\";\"Changxiao Zhen\";\"other\"\n\"1815504\";\"Ch’ang-hsiao\";\"other\"\n\"1815504\";\"校溪\";\"other\"\n\"1815504\";\"长校镇\";\"other\"\n\"1815510\";\"Changtun\";\"main\"\n\"1815512\";\"Wojingtan\";\"main\"\n\"1815512\";\"Changtu\";\"other\"\n\"1815512\";\"Changtuzhen\";\"other\"\n\"1815512\";\"倭井谭\";\"other\"\n\"1815512\";\"长涂\";\"other\"\n\"1815512\";\"长涂镇\";\"other\"\n\"1815534\";\"Wu’an\";\"main\"\n\"1815534\";\"Wu'an\";\"ascii\"\n\"1815534\";\"Ch'ang-t'ai-hsien\";\"other\"\n\"1815534\";\"Changtai\";\"other\"\n\"1815534\";\"Ch’ang-t’ai-hsien\";\"other\"\n\"1815534\";\"Wu'anzhen\";\"other\"\n\"1815534\";\"Wu’anzhen\";\"other\"\n\"1815534\";\"wu an\";\"other\"\n\"1815534\";\"武安\";\"other\"\n\"1815548\";\"Changsheng\";\"main\"\n\"1815548\";\"Ch'ang-sheng-fang\";\"other\"\n\"1815548\";\"Ch'ang-sheng-hsu\";\"other\"\n\"1815548\";\"Changsheng Zhen\";\"other\"\n\"1815548\";\"Ch’ang-sheng-fang\";\"other\"\n\"1815548\";\"Ch’ang-sheng-hsü\";\"other\"\n\"1815548\";\"长胜\";\"other\"\n\"1815548\";\"长胜镇\";\"other\"\n\"1815549\";\"Changsha\";\"main\"\n\"1815549\";\"Ch'ang-sha\";\"other\"\n\"1815549\";\"Ch'ang-sha-chen\";\"other\"\n\"1815549\";\"Changsha Zhen\";\"other\"\n\"1815549\";\"Changshazhen\";\"other\"\n\"1815549\";\"Ch’ang-sha\";\"other\"\n\"1815549\";\"Ch’ang-sha-chen\";\"other\"\n\"1815549\";\"长沙\";\"other\"\n\"1815549\";\"长沙镇\";\"other\"\n\"1815555\";\"Changshanyan\";\"main\"\n\"1815555\";\"Changshanyan Xiang\";\"other\"\n\"1815555\";\"长山晏\";\"other\"\n\"1815555\";\"长山晏乡\";\"other\"\n\"1815576\";\"Changsha\";\"main\"\n\"1815576\";\"Ch'ang-sha-ch'ang\";\"other\"\n\"1815576\";\"Chansha\";\"other\"\n\"1815576\";\"Ch’ang-sha-ch’ang\";\"other\"\n\"1815576\";\"Чанша\";\"other\"\n\"1815577\";\"Changsha\";\"main\"\n\"1815577\";\"Cangsa\";\"other\"\n\"1815577\";\"Ch'ang-sha-hsien\";\"other\"\n\"1815577\";\"Ch'ang-sha-shih\";\"other\"\n\"1815577\";\"Chansha\";\"other\"\n\"1815577\";\"Ch’ang-sha-hsien\";\"other\"\n\"1815577\";\"Ch’ang-sha-shih\";\"other\"\n\"1815577\";\"Truong Sa\";\"other\"\n\"1815577\";\"Trường Sa\";\"other\"\n\"1815577\";\"changsha\";\"other\"\n\"1815577\";\"zhang sha\";\"other\"\n\"1815577\";\"zhang sha shi\";\"other\"\n\"1815577\";\"Ĉangŝa\";\"other\"\n\"1815577\";\"Čangša\";\"other\"\n\"1815577\";\"Чанша\";\"other\"\n\"1815577\";\"چانگشا\";\"other\"\n\"1815577\";\"چاڭشا شەھىرى\";\"other\"\n\"1815577\";\"長沙\";\"other\"\n\"1815577\";\"长沙\";\"other\"\n\"1815577\";\"长沙市\";\"other\"\n\"1815585\";\"Changqing\";\"main\"\n\"1815585\";\"Ch'ang-ch'ing\";\"other\"\n\"1815585\";\"Ch'ang-ch'ing-hsien\";\"other\"\n\"1815585\";\"Chancin\";\"other\"\n\"1815585\";\"Changtsing\";\"other\"\n\"1815585\";\"Ch’ang-ch’ing\";\"other\"\n\"1815585\";\"Ch’ang-ch’ing-hsien\";\"other\"\n\"1815585\";\"Чанцин\";\"other\"\n\"1815588\";\"Changqiao\";\"main\"\n\"1815588\";\"Ch'ang-ch'iao\";\"other\"\n\"1815588\";\"Changqiao Xiang\";\"other\"\n\"1815588\";\"Ch’ang-ch’iao\";\"other\"\n\"1815588\";\"长桥\";\"other\"\n\"1815588\";\"长桥乡\";\"other\"\n\"1815589\";\"Changqiao\";\"main\"\n\"1815589\";\"Ch'ang-ch'iao\";\"other\"\n\"1815589\";\"Ch’ang-ch’iao\";\"other\"\n\"1815589\";\"P'ing-nan\";\"other\"\n\"1815589\";\"P’ing-nan\";\"other\"\n\"1815594\";\"Changpu\";\"main\"\n\"1815594\";\"Ch'ang-p'u-chen\";\"other\"\n\"1815594\";\"Ch'ang-p'u-tzu\";\"other\"\n\"1815594\";\"Changputze\";\"other\"\n\"1815594\";\"Changpuzhen\";\"other\"\n\"1815594\";\"Chanpu\";\"other\"\n\"1815594\";\"Ch’ang-p’u-chen\";\"other\"\n\"1815594\";\"Ch’ang-p’u-tzu\";\"other\"\n\"1815594\";\"Suinin\";\"other\"\n\"1815594\";\"Suining\";\"other\"\n\"1815594\";\"zhang pu\";\"other\"\n\"1815594\";\"长铺\";\"other\"\n\"1815603\";\"Changping\";\"main\"\n\"1815603\";\"Ch'ang-p'ing-hsu\";\"other\"\n\"1815603\";\"Changping Zhen\";\"other\"\n\"1815603\";\"Ch’ang-p’ing-hsü\";\"other\"\n\"1815603\";\"Shang-p'ing\";\"other\"\n\"1815603\";\"Shang-p'ing-hsu\";\"other\"\n\"1815603\";\"Shang-p’ing\";\"other\"\n\"1815603\";\"Shang-p’ing-hsü\";\"other\"\n\"1815603\";\"Sheungp'ing\";\"other\"\n\"1815603\";\"Sheungp’ing\";\"other\"\n\"1815603\";\"chang ping\";\"other\"\n\"1815603\";\"chang ping zhen\";\"other\"\n\"1815603\";\"changping\";\"other\"\n\"1815603\";\"常平\";\"other\"\n\"1815603\";\"常平镇\";\"other\"\n\"1815616\";\"Changning\";\"main\"\n\"1815616\";\"Ch'ang-i-chen\";\"other\"\n\"1815616\";\"Ch'ang-ning-chen\";\"other\"\n\"1815616\";\"Changning Zhen\";\"other\"\n\"1815616\";\"Ch’ang-i-chen\";\"other\"\n\"1815616\";\"Ch’ang-ning-chen\";\"other\"\n\"1815616\";\"Tung-fu-feng\";\"other\"\n\"1815616\";\"chang ning\";\"other\"\n\"1815616\";\"chang ning zhen\";\"other\"\n\"1815616\";\"常宁\";\"other\"\n\"1815616\";\"常宁镇\";\"other\"\n\"1815617\";\"Changning\";\"main\"\n\"1815617\";\"An-ning\";\"other\"\n\"1815617\";\"An-ning-chen\";\"other\"\n\"1815617\";\"An-ning-chiao\";\"other\"\n\"1815617\";\"An-ning-p'u\";\"other\"\n\"1815617\";\"An-ning-p’u\";\"other\"\n\"1815617\";\"Ch'ang-ning-hsien\";\"other\"\n\"1815617\";\"Ch’ang-ning-hsien\";\"other\"\n\"1815617\";\"zhang ning\";\"other\"\n\"1815617\";\"长宁\";\"other\"\n\"1815618\";\"Yiyang\";\"main\"\n\"1815618\";\"Ch'ang-ning-hsien\";\"other\"\n\"1815618\";\"Changning\";\"other\"\n\"1815618\";\"Ch’ang-ning-hsien\";\"other\"\n\"1815618\";\"Tschang-ning\";\"other\"\n\"1815618\";\"yi yang\";\"other\"\n\"1815618\";\"宜阳\";\"other\"\n\"1815620\";\"Changning\";\"main\"\n\"1815620\";\"Ch'ang-ning-hsin-hsu\";\"other\"\n\"1815620\";\"Changning Zhen\";\"other\"\n\"1815620\";\"Ch’ang-ning-hsin-hsü\";\"other\"\n\"1815620\";\"zhang ning\";\"other\"\n\"1815620\";\"长宁\";\"other\"\n\"1815652\";\"Changlin\";\"main\"\n\"1815652\";\"Ch'ang-lin-chen\";\"other\"\n\"1815652\";\"Changlin Zhen\";\"other\"\n\"1815652\";\"Chanlin'chzhen'\";\"other\"\n\"1815652\";\"Chanlin’chzhen’\";\"other\"\n\"1815652\";\"Ch’ang-lin-chen\";\"other\"\n\"1815652\";\"长林\";\"other\"\n\"1815652\";\"长林镇\";\"other\"\n\"1815656\";\"Changli\";\"main\"\n\"1815656\";\"Ch'ang-li-ch'eng-kuan\";\"other\"\n\"1815656\";\"Ch'ang-li-hsien\";\"other\"\n\"1815656\";\"Chanli\";\"other\"\n\"1815656\";\"Ch’ang-li-ch’eng-kuan\";\"other\"\n\"1815656\";\"Ch’ang-li-hsien\";\"other\"\n\"1815656\";\"Чанли\";\"other\"\n\"1815660\";\"Changle\";\"main\"\n\"1815660\";\"Ch'ang-le-chen\";\"other\"\n\"1815660\";\"Ch'ang-lo\";\"other\"\n\"1815660\";\"Ch'ang-lo-chen\";\"other\"\n\"1815660\";\"Changle Zhen\";\"other\"\n\"1815660\";\"Changlezhen\";\"other\"\n\"1815660\";\"Ch’ang-le-chen\";\"other\"\n\"1815660\";\"Ch’ang-lo\";\"other\"\n\"1815660\";\"Ch’ang-lo-chen\";\"other\"\n\"1815660\";\"常乐\";\"other\"\n\"1815660\";\"常乐镇\";\"other\"\n\"1815667\";\"Changleng\";\"main\"\n\"1815667\";\"Ch'ang-ling-chen\";\"other\"\n\"1815667\";\"Ch'ang-t'ou-ling\";\"other\"\n\"1815667\";\"Ch’ang-ling-chen\";\"other\"\n\"1815667\";\"Ch’ang-t’ou-ling\";\"other\"\n\"1815667\";\"Hsin-chien\";\"other\"\n\"1815667\";\"Xinjian\";\"other\"\n\"1815674\";\"Changle\";\"main\"\n\"1815674\";\"Changle Zhen\";\"other\"\n\"1815674\";\"zhang le\";\"other\"\n\"1815674\";\"zhang le zhen\";\"other\"\n\"1815674\";\"长乐\";\"other\"\n\"1815674\";\"长乐镇\";\"other\"\n\"1815684\";\"Changjie\";\"main\"\n\"1815684\";\"Ch'ang-chieh\";\"other\"\n\"1815684\";\"Ch'ang-chieh-chen\";\"other\"\n\"1815684\";\"Changjie Zhen\";\"other\"\n\"1815684\";\"Changjiezhen\";\"other\"\n\"1815684\";\"Ch’ang-chieh\";\"other\"\n\"1815684\";\"Ch’ang-chieh-chen\";\"other\"\n\"1815684\";\"zhang jie\";\"other\"\n\"1815684\";\"zhang jie zhen\";\"other\"\n\"1815684\";\"长街\";\"other\"\n\"1815684\";\"长街镇\";\"other\"\n\"1815698\";\"Changjiang\";\"main\"\n\"1815698\";\"Changjiang Zhen\";\"other\"\n\"1815698\";\"长江\";\"other\"\n\"1815698\";\"长江镇\";\"other\"\n\"1815720\";\"Changhe\";\"main\"\n\"1815720\";\"Ch'ang-ho-shih\";\"other\"\n\"1815720\";\"Changhe Zhen\";\"other\"\n\"1815720\";\"Changheshi\";\"other\"\n\"1815720\";\"Ch’ang-ho-shih\";\"other\"\n\"1815720\";\"Erh-t'ang-t'ou\";\"other\"\n\"1815720\";\"Erh-t’ang-t’ou\";\"other\"\n\"1815720\";\"长河\";\"other\"\n\"1815720\";\"长河镇\";\"other\"\n\"1815731\";\"Changgouhe\";\"main\"\n\"1815731\";\"Ch'ang-kou-ho\";\"other\"\n\"1815731\";\"Ch’ang-kou-ho\";\"other\"\n\"1815731\";\"长沟河\";\"other\"\n\"1815749\";\"Changfeng\";\"main\"\n\"1815749\";\"Ch'ang-pan\";\"other\"\n\"1815749\";\"Ch’ang-pan\";\"other\"\n\"1815749\";\"常丰\";\"other\"\n\"1815768\";\"Changcun\";\"main\"\n\"1815768\";\"Ch'ang-ts'un\";\"other\"\n\"1815768\";\"Ch’ang-ts’un\";\"other\"\n\"1815768\";\"chang cun\";\"other\"\n\"1815768\";\"常村\";\"other\"\n\"1815777\";\"Changchi\";\"main\"\n\"1815777\";\"Ch'ang-ch'ih\";\"other\"\n\"1815777\";\"Ch'ang-ch'ih-ch'ang\";\"other\"\n\"1815777\";\"Ch’ang-ch’ih\";\"other\"\n\"1815777\";\"Ch’ang-ch’ih-ch’ang\";\"other\"\n\"1815777\";\"zhang chi\";\"other\"\n\"1815777\";\"长赤\";\"other\"\n\"1815785\";\"Changbu\";\"main\"\n\"1815785\";\"Changbu Zhen\";\"other\"\n\"1815785\";\"长埠\";\"other\"\n\"1815785\";\"长埠镇\";\"other\"\n\"1815786\";\"Changbu\";\"main\"\n\"1815786\";\"Ch'ang-pu\";\"other\"\n\"1815786\";\"Changbu Zhen\";\"other\"\n\"1815786\";\"Ch’ang-pu\";\"other\"\n\"1815786\";\"长布\";\"other\"\n\"1815786\";\"长布镇\";\"other\"\n\"1815806\";\"Chang’an\";\"main\"\n\"1815806\";\"Chang'an\";\"ascii\"\n\"1815806\";\"Ch'ang-an-chen\";\"other\"\n\"1815806\";\"Chongon\";\"other\"\n\"1815806\";\"Ch’ang-an-chen\";\"other\"\n\"1815806\";\"Jung-an\";\"other\"\n\"1815806\";\"Jung-shui\";\"other\"\n\"1815806\";\"Rong'an\";\"other\"\n\"1815806\";\"Rong’an\";\"other\"\n\"1815806\";\"zhang an\";\"other\"\n\"1815806\";\"长安\";\"other\"\n\"1815816\";\"Chalu\";\"main\"\n\"1815816\";\"Ch'a-lu-chieh\";\"other\"\n\"1815816\";\"Chalu Zhen\";\"other\"\n\"1815816\";\"Ch’a-lu-chieh\";\"other\"\n\"1815816\";\"cha lu\";\"other\"\n\"1815816\";\"cha lu zhen\";\"other\"\n\"1815816\";\"岔路\";\"other\"\n\"1815816\";\"岔路镇\";\"other\"\n\"1815820\";\"Chaling Chengguanzhen\";\"main\"\n\"1815820\";\"Ch'a-ling-hsien\";\"other\"\n\"1815820\";\"Ch'a-ling-hsien-ch'eng\";\"other\"\n\"1815820\";\"Ch'o-ling\";\"other\"\n\"1815820\";\"Cha-ling-chow\";\"other\"\n\"1815820\";\"Ch’a-ling-hsien\";\"other\"\n\"1815820\";\"Ch’a-ling-hsien-ch’eng\";\"other\"\n\"1815820\";\"Ch’o-ling\";\"other\"\n\"1815820\";\"Tscha-ling\";\"other\"\n\"1815820\";\"cha ling cheng guan zhen\";\"other\"\n\"1815820\";\"茶陵城关镇\";\"other\"\n\"1815827\";\"Chakou\";\"main\"\n\"1815827\";\"Ch'a-k'ou-chen\";\"other\"\n\"1815827\";\"Chakou Zhen\";\"other\"\n\"1815827\";\"Ch’a-k’ou-chen\";\"other\"\n\"1815827\";\"cha kou\";\"other\"\n\"1815827\";\"cha kou zhen\";\"other\"\n\"1815827\";\"岔口\";\"other\"\n\"1815827\";\"岔口镇\";\"other\"\n\"1815835\";\"Chaiwan\";\"main\"\n\"1815835\";\"Ch'ai-wan-chen\";\"other\"\n\"1815835\";\"Chaiwan Zhen\";\"other\"\n\"1815835\";\"Ch’ai-wan-chen\";\"other\"\n\"1815835\";\"柴湾\";\"other\"\n\"1815835\";\"柴湾镇\";\"other\"\n\"1815839\";\"Chaiqiao\";\"main\"\n\"1815839\";\"Ch'ai-ch'iao\";\"other\"\n\"1815839\";\"Ch'ai-ch'iao-chen\";\"other\"\n\"1815839\";\"Ch'ai-ch'iao-shih\";\"other\"\n\"1815839\";\"Chaiqiao Zhen\";\"other\"\n\"1815839\";\"Chaiqiaozhen\";\"other\"\n\"1815839\";\"Ch’ai-ch’iao\";\"other\"\n\"1815839\";\"Ch’ai-ch’iao-chen\";\"other\"\n\"1815839\";\"Ch’ai-ch’iao-shih\";\"other\"\n\"1815839\";\"chai qiao\";\"other\"\n\"1815839\";\"chai qiao zhen\";\"other\"\n\"1815839\";\"柴桥\";\"other\"\n\"1815839\";\"柴桥镇\";\"other\"\n\"1815858\";\"Chahe\";\"main\"\n\"1815858\";\"Ch'a-ho\";\"other\"\n\"1815858\";\"Ch'a-ho-chen\";\"other\"\n\"1815858\";\"Chahe Zhen\";\"other\"\n\"1815858\";\"Ch’a-ho\";\"other\"\n\"1815858\";\"Ch’a-ho-chen\";\"other\"\n\"1815858\";\"岔河\";\"other\"\n\"1815858\";\"岔河镇\";\"other\"\n\"1815872\";\"Chadian\";\"main\"\n\"1815872\";\"Ch'a-t'ien-tzu\";\"other\"\n\"1815872\";\"Ch'a-tien\";\"other\"\n\"1815872\";\"Chadian Zhen\";\"other\"\n\"1815872\";\"Chadianzi\";\"other\"\n\"1815872\";\"Chadyan'tszo\";\"other\"\n\"1815872\";\"Chadyan’tszö\";\"other\"\n\"1815872\";\"Ch’a-tien\";\"other\"\n\"1815872\";\"Ch’a-t’ien-tzu\";\"other\"\n\"1815872\";\"茶店\";\"other\"\n\"1815872\";\"茶店镇\";\"other\"\n\"1815875\";\"Chadian\";\"main\"\n\"1815875\";\"Ch'a-t'en\";\"other\"\n\"1815875\";\"Ch'a-tien\";\"other\"\n\"1815875\";\"Cha-ting\";\"other\"\n\"1815875\";\"Ch’a-tien\";\"other\"\n\"1815875\";\"Ch’a-t’en\";\"other\"\n\"1815879\";\"Chadian\";\"main\"\n\"1815879\";\"Ch'a-tien-ch'ang\";\"other\"\n\"1815879\";\"Ch’a-tien-ch’ang\";\"other\"\n\"1815888\";\"Chabaihu\";\"main\"\n\"1815899\";\"Cewu\";\"main\"\n\"1815899\";\"Cewu Xiang\";\"other\"\n\"1815899\";\"策武\";\"other\"\n\"1815899\";\"策武乡\";\"other\"\n\"1815916\";\"Cengang\";\"main\"\n\"1815916\";\"Cengang Zhen\";\"other\"\n\"1815916\";\"Cengangzhen\";\"other\"\n\"1815916\";\"Ling-chiang\";\"other\"\n\"1815916\";\"Ts'en-kang\";\"other\"\n\"1815916\";\"Ts'en-kang-chen\";\"other\"\n\"1815916\";\"Ts’en-kang\";\"other\"\n\"1815916\";\"Ts’en-kang-chen\";\"other\"\n\"1815916\";\"岑港\";\"other\"\n\"1815916\";\"岑港镇\";\"other\"\n\"1815941\";\"Caoyuan\";\"main\"\n\"1815941\";\"Caoyuan Zhen\";\"other\"\n\"1815941\";\"曹远\";\"other\"\n\"1815941\";\"曹远镇\";\"other\"\n\"1815956\";\"Caoxi\";\"main\"\n\"1815956\";\"Caoxi Zhen\";\"other\"\n\"1815956\";\"Ts'ao-hsi\";\"other\"\n\"1815956\";\"Ts’ao-hsi\";\"other\"\n\"1815956\";\"cao xi\";\"other\"\n\"1815956\";\"曹溪\";\"other\"\n\"1815963\";\"Caotan\";\"main\"\n\"1815963\";\"Caotan Jieban\";\"other\"\n\"1815963\";\"Ts'ao-t'an\";\"other\"\n\"1815963\";\"Ts'ao-t'an-chen\";\"other\"\n\"1815963\";\"Ts’ao-t’an\";\"other\"\n\"1815963\";\"Ts’ao-t’an-chen\";\"other\"\n\"1815963\";\"cao tan\";\"other\"\n\"1815963\";\"cao tan jie ban\";\"other\"\n\"1815963\";\"草滩\";\"other\"\n\"1815963\";\"草滩街办\";\"other\"\n\"1815965\";\"Caota\";\"main\"\n\"1815965\";\"Caota Zhen\";\"other\"\n\"1815965\";\"Ts'ao-t'a\";\"other\"\n\"1815965\";\"Ts'ao-t'a-shih\";\"other\"\n\"1815965\";\"Ts’ao-t’a\";\"other\"\n\"1815965\";\"Ts’ao-t’a-shih\";\"other\"\n\"1815965\";\"cao ta\";\"other\"\n\"1815965\";\"cao ta zhen\";\"other\"\n\"1815965\";\"草塔\";\"other\"\n\"1815965\";\"草塔镇\";\"other\"\n\"1815978\";\"Caopie\";\"main\"\n\"1815978\";\"Ts'ao-ch'ang-p'ieh\";\"other\"\n\"1815978\";\"Ts'ao-p'ieh\";\"other\"\n\"1815978\";\"Ts’ao-ch’ang-p’ieh\";\"other\"\n\"1815978\";\"Ts’ao-p’ieh\";\"other\"\n\"1815982\";\"Caoyan\";\"main\"\n\"1815982\";\"Caoyan Zhen\";\"other\"\n\"1815982\";\"Ts'ao-nien\";\"other\"\n\"1815982\";\"Ts'ao-tien\";\"other\"\n\"1815982\";\"Ts'ao-tien-chen\";\"other\"\n\"1815982\";\"Ts'ao-yen\";\"other\"\n\"1815982\";\"Ts'ao-yen-chen\";\"other\"\n\"1815982\";\"Ts’ao-nien\";\"other\"\n\"1815982\";\"Ts’ao-tien\";\"other\"\n\"1815982\";\"Ts’ao-tien-chen\";\"other\"\n\"1815982\";\"Ts’ao-yen\";\"other\"\n\"1815982\";\"Ts’ao-yen-chen\";\"other\"\n\"1815982\";\"草堰\";\"other\"\n\"1815982\";\"草堰镇\";\"other\"\n\"1815984\";\"Caomiao\";\"main\"\n\"1815984\";\"Caomiao Xiang\";\"other\"\n\"1815984\";\"Ts'ao-miao\";\"other\"\n\"1815984\";\"Ts’ao-miao\";\"other\"\n\"1815984\";\"草庙\";\"other\"\n\"1815984\";\"草庙乡\";\"other\"\n\"1815987\";\"Caomiao\";\"main\"\n\"1815987\";\"Caomiao Zhen\";\"other\"\n\"1815987\";\"Ts'ao-ch'a-t'ou\";\"other\"\n\"1815987\";\"Ts’ao-ch’a-t’ou\";\"other\"\n\"1815987\";\"草庙\";\"other\"\n\"1815987\";\"草庙镇\";\"other\"\n\"1816017\";\"Caojia\";\"main\"\n\"1816017\";\"Caojia Zhen\";\"other\"\n\"1816017\";\"Ts'ao-an-ts'un\";\"other\"\n\"1816017\";\"Ts'ao-chia\";\"other\"\n\"1816017\";\"Ts'ao-chia-ts'un\";\"other\"\n\"1816017\";\"Ts'ao-ts'un\";\"other\"\n\"1816017\";\"Ts’ao-an-ts’un\";\"other\"\n\"1816017\";\"Ts’ao-chia\";\"other\"\n\"1816017\";\"Ts’ao-chia-ts’un\";\"other\"\n\"1816017\";\"Ts’ao-ts’un\";\"other\"\n\"1816017\";\"曹家\";\"other\"\n\"1816017\";\"曹家镇\";\"other\"\n\"1816018\";\"Caojiazhen\";\"main\"\n\"1816018\";\"Caojia\";\"other\"\n\"1816018\";\"Caojia Zhen\";\"other\"\n\"1816018\";\"Hezuo\";\"other\"\n\"1816018\";\"Hezuo Zhen\";\"other\"\n\"1816018\";\"Ts'ao-chia\";\"other\"\n\"1816018\";\"Ts'ao-chia-chen\";\"other\"\n\"1816018\";\"Ts’ao-chia\";\"other\"\n\"1816018\";\"Ts’ao-chia-chen\";\"other\"\n\"1816018\";\"合作\";\"other\"\n\"1816018\";\"合作镇\";\"other\"\n\"1816018\";\"曹家\";\"other\"\n\"1816018\";\"曹家镇\";\"other\"\n\"1816026\";\"Caohe\";\"main\"\n\"1816026\";\"Caojiahe\";\"other\"\n\"1816026\";\"Ch'i-ch'un\";\"other\"\n\"1816026\";\"Ch’i-ch’un\";\"other\"\n\"1816026\";\"Qichun\";\"other\"\n\"1816026\";\"Ts'ao-chia-ho\";\"other\"\n\"1816026\";\"Ts'ao-ho\";\"other\"\n\"1816026\";\"Ts'ao-ho-chen\";\"other\"\n\"1816026\";\"Ts'ao-ho-cheng\";\"other\"\n\"1816026\";\"Ts'ao-ho-chien\";\"other\"\n\"1816026\";\"Ts’ao-chia-ho\";\"other\"\n\"1816026\";\"Ts’ao-ho\";\"other\"\n\"1816026\";\"Ts’ao-ho-chen\";\"other\"\n\"1816026\";\"Ts’ao-ho-cheng\";\"other\"\n\"1816026\";\"Ts’ao-ho-chien\";\"other\"\n\"1816026\";\"漕河\";\"other\"\n\"1816028\";\"Weining\";\"main\"\n\"1816028\";\"Caohai\";\"other\"\n\"1816028\";\"Vehjnin\";\"other\"\n\"1816028\";\"Wei-ning-hsien\";\"other\"\n\"1816028\";\"Wei-ning-hsien-i-tsu-hui-tsu-miao-tsu- tzu-chih-ch'u\";\"other\"\n\"1816028\";\"Wei-ning-hsien-i-tsu-hui-tsu-miao-tsu- tzu-chih-ch’ü\";\"other\"\n\"1816028\";\"Wei-ning-i-tsu-hui-ysu-miao-tsu-tzu-chih-hsien\";\"other\"\n\"1816028\";\"Вэйнин\";\"other\"\n\"1816036\";\"Caofang\";\"main\"\n\"1816036\";\"Ts'ao-fang\";\"other\"\n\"1816036\";\"Ts’ao-fang\";\"other\"\n\"1816036\";\"曹坊\";\"other\"\n\"1816056\";\"Caocun\";\"main\"\n\"1816056\";\"Caocun Zhen\";\"other\"\n\"1816056\";\"Ts'ao-ts'un\";\"other\"\n\"1816056\";\"Ts’ao-ts’un\";\"other\"\n\"1816056\";\"cao cun\";\"other\"\n\"1816056\";\"曹村\";\"other\"\n\"1816069\";\"Caobi\";\"main\"\n\"1816069\";\"Caobi Zhen\";\"other\"\n\"1816069\";\"Ts'ao-pi\";\"other\"\n\"1816069\";\"Ts'ao-pi-chen\";\"other\"\n\"1816069\";\"Tsaobichzhen'\";\"other\"\n\"1816069\";\"Tsaobichzhen’\";\"other\"\n\"1816069\";\"Ts’ao-pi\";\"other\"\n\"1816069\";\"Ts’ao-pi-chen\";\"other\"\n\"1816069\";\"草碧\";\"other\"\n\"1816069\";\"草碧镇\";\"other\"\n\"1816080\";\"Cangzhou\";\"main\"\n\"1816080\";\"Canchzhou\";\"other\"\n\"1816080\";\"Changhsien\";\"other\"\n\"1816080\";\"T'sang-chou-shih\";\"other\"\n\"1816080\";\"Ts'ang-chen\";\"other\"\n\"1816080\";\"Ts'ang-chou\";\"other\"\n\"1816080\";\"Ts'ang-hsien\";\"other\"\n\"1816080\";\"Tsan'syan'\";\"other\"\n\"1816080\";\"Tsang\";\"other\"\n\"1816080\";\"Tsangchow\";\"other\"\n\"1816080\";\"Tsan’syan’\";\"other\"\n\"1816080\";\"Ts’ang-chen\";\"other\"\n\"1816080\";\"Ts’ang-chou\";\"other\"\n\"1816080\";\"Ts’ang-hsien\";\"other\"\n\"1816080\";\"T’sang-chou-shih\";\"other\"\n\"1816080\";\"cang zhou shi\";\"other\"\n\"1816080\";\"Цанчжоу\";\"other\"\n\"1816080\";\"沧州市\";\"other\"\n\"1816135\";\"Caishi\";\"main\"\n\"1816135\";\"Caishi Jiedao\";\"other\"\n\"1816135\";\"Ts'ai-shih\";\"other\"\n\"1816135\";\"Ts'ai-shih-chen\";\"other\"\n\"1816135\";\"Ts’ai-shih\";\"other\"\n\"1816135\";\"Ts’ai-shih-chen\";\"other\"\n\"1816135\";\"cai shi\";\"other\"\n\"1816135\";\"cai shi jie dao\";\"other\"\n\"1816135\";\"采石\";\"other\"\n\"1816135\";\"采石街道\";\"other\"\n\"1816150\";\"Caijiapu\";\"main\"\n\"1816151\";\"Caijiapo\";\"main\"\n\"1816151\";\"Caijiapo Zhen\";\"other\"\n\"1816151\";\"Ts'ai-chia-p'o\";\"other\"\n\"1816151\";\"Ts'ai-p'o\";\"other\"\n\"1816151\";\"Ts'ai-p'o-chen\";\"other\"\n\"1816151\";\"Ts’ai-chia-p’o\";\"other\"\n\"1816151\";\"Ts’ai-p’o\";\"other\"\n\"1816151\";\"Ts’ai-p’o-chen\";\"other\"\n\"1816151\";\"蔡家坡\";\"other\"\n\"1816151\";\"蔡家坡镇\";\"other\"\n\"1816153\";\"Caijiang\";\"main\"\n\"1816153\";\"Caijiang Xiang\";\"other\"\n\"1816153\";\"Ts'ai-chiang\";\"other\"\n\"1816153\";\"Ts’ai-chiang\";\"other\"\n\"1816153\";\"蔡江\";\"other\"\n\"1816153\";\"蔡江乡\";\"other\"\n\"1816154\";\"Caijiamiao\";\"main\"\n\"1816154\";\"Caijiamiao Xiang\";\"other\"\n\"1816154\";\"蔡家庙\";\"other\"\n\"1816154\";\"蔡家庙乡\";\"other\"\n\"1816162\";\"Caijiagang\";\"main\"\n\"1816162\";\"Caijiachang\";\"other\"\n\"1816162\";\"Ts'ai-chia-ch'ang\";\"other\"\n\"1816162\";\"Ts'ai-chia-kang\";\"other\"\n\"1816162\";\"Ts’ai-chia-ch’ang\";\"other\"\n\"1816162\";\"Ts’ai-chia-kang\";\"other\"\n\"1816176\";\"Caidian\";\"main\"\n\"1816176\";\"Han-yang-hsien\";\"other\"\n\"1816176\";\"Hanyang\";\"other\"\n\"1816176\";\"Ts'ai-tien\";\"other\"\n\"1816176\";\"Ts'ai-tien-chen\";\"other\"\n\"1816176\";\"Ts’ai-tien\";\"other\"\n\"1816176\";\"Ts’ai-tien-chen\";\"other\"\n\"1816179\";\"Caicun\";\"main\"\n\"1816179\";\"Caicun Zhen\";\"other\"\n\"1816179\";\"Ts'ai-ts'un\";\"other\"\n\"1816179\";\"Ts’ai-ts’un\";\"other\"\n\"1816179\";\"蔡村\";\"other\"\n\"1816179\";\"蔡村镇\";\"other\"\n\"1816220\";\"Buji\";\"main\"\n\"1816220\";\"Buji Jiedao\";\"other\"\n\"1816220\";\"Pu-chi\";\"other\"\n\"1816220\";\"Pu-chi-ts'un\";\"other\"\n\"1816220\";\"Pu-chi-ts’un\";\"other\"\n\"1816220\";\"Pukak\";\"other\"\n\"1816220\";\"bu ji\";\"other\"\n\"1816220\";\"布吉\";\"other\"\n\"1816221\";\"Buhe\";\"main\"\n\"1816221\";\"Bukheh\";\"other\"\n\"1816221\";\"Pu-ho\";\"other\"\n\"1816221\";\"Бухэ\";\"other\"\n\"1816234\";\"Bozhou\";\"main\"\n\"1816234\";\"Bochzhou\";\"other\"\n\"1816234\";\"Boxian\";\"other\"\n\"1816234\";\"Po\";\"other\"\n\"1816234\";\"Po-hsien\";\"other\"\n\"1816234\";\"Pochow\";\"other\"\n\"1816234\";\"bo zhou\";\"other\"\n\"1816234\";\"bo zhou shi\";\"other\"\n\"1816234\";\"Бочжоу\";\"other\"\n\"1816234\";\"亳州\";\"other\"\n\"1816234\";\"亳州市\";\"other\"\n\"1816235\";\"Bozhou\";\"main\"\n\"1816235\";\"Bochzhou\";\"other\"\n\"1816235\";\"Po-chou\";\"other\"\n\"1816235\";\"Бочжоу\";\"other\"\n\"1816246\";\"Boyang\";\"main\"\n\"1816246\";\"Po-yang\";\"other\"\n\"1816253\";\"Bowang\";\"main\"\n\"1816253\";\"Bowang Zhen\";\"other\"\n\"1816253\";\"Po-wang\";\"other\"\n\"1816253\";\"Po-wang-i\";\"other\"\n\"1816253\";\"bo wang\";\"other\"\n\"1816253\";\"博望\";\"other\"\n\"1816254\";\"Bowang\";\"main\"\n\"1816254\";\"Bowang Zhen\";\"other\"\n\"1816254\";\"Po-wang\";\"other\"\n\"1816254\";\"Po-wang-chen\";\"other\"\n\"1816254\";\"bo wang\";\"other\"\n\"1816254\";\"bo wang zhen\";\"other\"\n\"1816254\";\"博望\";\"other\"\n\"1816254\";\"博望镇\";\"other\"\n\"1816256\";\"Botou\";\"main\"\n\"1816256\";\"Bota\";\"other\"\n\"1816256\";\"Botuchzhen'\";\"other\"\n\"1816256\";\"Botuchzhen’\";\"other\"\n\"1816256\";\"Bozhen\";\"other\"\n\"1816256\";\"Chiao-ho\";\"other\"\n\"1816256\";\"Nan-p'i\";\"other\"\n\"1816256\";\"Nan-p’i\";\"other\"\n\"1816256\";\"Po-chen\";\"other\"\n\"1816256\";\"Po-t'ou\";\"other\"\n\"1816256\";\"Po-t'ou-chen\";\"other\"\n\"1816256\";\"Po-t’ou\";\"other\"\n\"1816256\";\"Po-t’ou-chen\";\"other\"\n\"1816256\";\"Potowchen\";\"other\"\n\"1816256\";\"Бота\";\"other\"\n\"1816260\";\"Boshi\";\"main\"\n\"1816260\";\"Po-shih\";\"other\"\n\"1816260\";\"Po-shih-chen\";\"other\"\n\"1816260\";\"bo shi\";\"other\"\n\"1816260\";\"伯士\";\"other\"\n\"1816265\";\"Boshan\";\"main\"\n\"1816265\";\"Po-shan\";\"other\"\n\"1816265\";\"Tzu-po\";\"other\"\n\"1816265\";\"Tzu-po-shih\";\"other\"\n\"1816269\";\"Bose\";\"main\"\n\"1816269\";\"Boze\";\"other\"\n\"1816269\";\"Pai-se\";\"other\"\n\"1816269\";\"Pai-se-chen\";\"other\"\n\"1816269\";\"Pai-se-hsien\";\"other\"\n\"1816269\";\"Po-se\";\"other\"\n\"1816269\";\"Poseh\";\"other\"\n\"1816269\";\"Poseh-hsien\";\"other\"\n\"1816269\";\"Бозе\";\"other\"\n\"1816275\";\"Bomei\";\"main\"\n\"1816275\";\"Bomei Zhen\";\"other\"\n\"1816275\";\"Po-mei\";\"other\"\n\"1816275\";\"Po-mei-hsu\";\"other\"\n\"1816275\";\"Po-mei-hsü\";\"other\"\n\"1816275\";\"bo mei\";\"other\"\n\"1816275\";\"博美\";\"other\"\n\"1816303\";\"Bobai\";\"main\"\n\"1816303\";\"Po-pai\";\"other\"\n\"1816303\";\"Po-pai-chen\";\"other\"\n\"1816303\";\"Po-pai-hsien\";\"other\"\n\"1816303\";\"Pokpak\";\"other\"\n\"1816303\";\"Pokpak-hsien\";\"other\"\n\"1816303\";\"bo bai\";\"other\"\n\"1816303\";\"博白\";\"other\"\n\"1816312\";\"Biyong\";\"main\"\n\"1816312\";\"Biyun\";\"other\"\n\"1816312\";\"Pi-yung\";\"other\"\n\"1816315\";\"Bishui\";\"main\"\n\"1816315\";\"Biyang\";\"other\"\n\"1816315\";\"Miyang-hsien\";\"other\"\n\"1816315\";\"Pi-yang\";\"other\"\n\"1816315\";\"Pi-yang-hsien\";\"other\"\n\"1816315\";\"mi shui\";\"other\"\n\"1816315\";\"泌水\";\"other\"\n\"1816316\";\"Biyang\";\"main\"\n\"1816316\";\"I\";\"other\"\n\"1816316\";\"I-hsien\";\"other\"\n\"1816316\";\"Xiangyang\";\"other\"\n\"1816316\";\"Yixian\";\"other\"\n\"1816316\";\"bi yang\";\"other\"\n\"1816316\";\"碧阳\";\"other\"\n\"1816336\";\"Binzhou\";\"main\"\n\"1816336\";\"Beizhen\";\"other\"\n\"1816336\";\"Hui-min\";\"other\"\n\"1816336\";\"Pei-chen\";\"other\"\n\"1816336\";\"Pin-hsien\";\"other\"\n\"1816336\";\"bin zhou\";\"other\"\n\"1816336\";\"bin zhou shi\";\"other\"\n\"1816336\";\"滨州\";\"other\"\n\"1816336\";\"滨州市\";\"other\"\n\"1816338\";\"Luxu\";\"main\"\n\"1816338\";\"Binyang\";\"other\"\n\"1816338\";\"Binzhou\";\"other\"\n\"1816338\";\"Lu-hsu\";\"other\"\n\"1816338\";\"Lu-hsu-chen\";\"other\"\n\"1816338\";\"Lu-hsü\";\"other\"\n\"1816338\";\"Lu-hsü-chen\";\"other\"\n\"1816338\";\"Pin-yang\";\"other\"\n\"1816338\";\"Pin-yang-hsien\";\"other\"\n\"1816338\";\"芦圩\";\"other\"\n\"1816358\";\"Bingfang\";\"main\"\n\"1816358\";\"Bingfang Zhen\";\"other\"\n\"1816358\";\"Ping-fang\";\"other\"\n\"1816358\";\"兵房\";\"other\"\n\"1816358\";\"兵房镇\";\"other\"\n\"1816370\";\"Gaoyao\";\"main\"\n\"1816370\";\"Biji\";\"other\"\n\"1816370\";\"Biji Zhen\";\"other\"\n\"1816370\";\"Bijiguan\";\"other\"\n\"1816370\";\"Pei-chi Kuan\";\"other\"\n\"1816370\";\"Pi-chi Kuan\";\"other\"\n\"1816370\";\"bi ji\";\"other\"\n\"1816370\";\"bi ji zhen\";\"other\"\n\"1816370\";\"gao yao\";\"other\"\n\"1816370\";\"碧鸡\";\"other\"\n\"1816370\";\"碧鸡镇\";\"other\"\n\"1816370\";\"高峣\";\"other\"\n\"1816373\";\"Bijie\";\"main\"\n\"1816373\";\"Pi-chieh\";\"other\"\n\"1816373\";\"Pi-chieh-hsien\";\"other\"\n\"1816401\";\"Biaokou\";\"main\"\n\"1816401\";\"Piao-k'ou\";\"other\"\n\"1816401\";\"Piao-k’ou\";\"other\"\n\"1816403\";\"Biaojiao\";\"main\"\n\"1816403\";\"Biaojiao Zhen\";\"other\"\n\"1816403\";\"Hu-chiao-chen\";\"other\"\n\"1816403\";\"Piao-chiao\";\"other\"\n\"1816403\";\"Piao-chiao-chen\";\"other\"\n\"1816403\";\"彪角\";\"other\"\n\"1816403\";\"彪角镇\";\"other\"\n\"1816406\";\"Bianzhuang\";\"main\"\n\"1816406\";\"Cangshan\";\"other\"\n\"1816406\";\"Hsia-chuang\";\"other\"\n\"1816406\";\"Pien-chuang\";\"other\"\n\"1816406\";\"Ts'ang-shan\";\"other\"\n\"1816406\";\"Ts’ang-shan\";\"other\"\n\"1816440\";\"Bengbu\";\"main\"\n\"1816440\";\"Bangbu\";\"other\"\n\"1816440\";\"Behnbu\";\"other\"\n\"1816440\";\"Pang-fou\";\"other\"\n\"1816440\";\"Pang-fou-shih\";\"other\"\n\"1816440\";\"Pang-pu\";\"other\"\n\"1816440\";\"Peng-pu\";\"other\"\n\"1816440\";\"bang bu\";\"other\"\n\"1816440\";\"bang bu shi\";\"other\"\n\"1816440\";\"Бэнбу\";\"other\"\n\"1816440\";\"بېڭبۇ شەھىر\";\"other\"\n\"1816440\";\"蚌埠\";\"other\"\n\"1816440\";\"蚌埠市\";\"other\"\n\"1816442\";\"Benchu\";\"main\"\n\"1816442\";\"Benchu Zhen\";\"other\"\n\"1816442\";\"P'en-ch'u\";\"other\"\n\"1816442\";\"P’en-ch’u\";\"other\"\n\"1816445\";\"Bencha\";\"main\"\n\"1816445\";\"Bencha Zhen\";\"other\"\n\"1816445\";\"Ping-ch'a\";\"other\"\n\"1816445\";\"Ping-ch'a-chen\";\"other\"\n\"1816445\";\"Ping-ch’a\";\"other\"\n\"1816445\";\"Ping-ch’a-chen\";\"other\"\n\"1816450\";\"Beizi\";\"main\"\n\"1816450\";\"Beizijie\";\"other\"\n\"1816450\";\"Pei-tzu-chieh\";\"other\"\n\"1816450\";\"bei zi\";\"other\"\n\"1816450\";\"背孜\";\"other\"\n\"1816457\";\"Beizhouzhuang\";\"main\"\n\"1816457\";\"Beizhouzhuang Zhen\";\"other\"\n\"1816457\";\"Pei-chou-chuang\";\"other\"\n\"1816457\";\"北周庄\";\"other\"\n\"1816457\";\"北周庄镇\";\"other\"\n\"1816469\";\"Beizhang\";\"main\"\n\"1816469\";\"Beizhang Zhen\";\"other\"\n\"1816469\";\"Pei-chang\";\"other\"\n\"1816469\";\"北漳\";\"other\"\n\"1816469\";\"北漳镇\";\"other\"\n\"1816481\";\"Beiyulin\";\"main\"\n\"1816481\";\"Pei-yu-lin\";\"other\"\n\"1816481\";\"Pei-yü-lin\";\"other\"\n\"1816481\";\"北榆林\";\"other\"\n\"1816526\";\"Beiwudu\";\"main\"\n\"1816526\";\"Beiwudu Zhen\";\"other\"\n\"1816526\";\"Pei-wu-tu\";\"other\"\n\"1816526\";\"bei wu du\";\"other\"\n\"1816526\";\"北舞渡\";\"other\"\n\"1816543\";\"Beituan\";\"main\"\n\"1816543\";\"Beituan Zhen\";\"other\"\n\"1816543\";\"北团\";\"other\"\n\"1816543\";\"北团镇\";\"other\"\n\"1816557\";\"Beitan\";\"main\"\n\"1816625\";\"Beilun\";\"main\"\n\"1816625\";\"Beilun Qu\";\"other\"\n\"1816625\";\"Beilungang\";\"other\"\n\"1816625\";\"Beilunqu\";\"other\"\n\"1816625\";\"Xinqi\";\"other\"\n\"1816625\";\"Xinqi Zhen\";\"other\"\n\"1816625\";\"bei lun\";\"other\"\n\"1816625\";\"bei lun qu\";\"other\"\n\"1816625\";\"xin qi\";\"other\"\n\"1816625\";\"xin qi zhen\";\"other\"\n\"1816625\";\"北仑\";\"other\"\n\"1816625\";\"北仑区\";\"other\"\n\"1816625\";\"新碶\";\"other\"\n\"1816625\";\"新碶镇\";\"other\"\n\"1816635\";\"Beilizigu\";\"main\"\n\"1816635\";\"Pei-li-tzu-ku\";\"other\"\n\"1816670\";\"Beijing\";\"main\"\n\"1816670\";\"BJS\";\"other\"\n\"1816670\";\"Bac Kinh\";\"other\"\n\"1816670\";\"Baekging\";\"other\"\n\"1816670\";\"Beijing Shi\";\"other\"\n\"1816670\";\"Beising\";\"other\"\n\"1816670\";\"Béising\";\"other\"\n\"1816670\";\"Bắc Kinh\";\"other\"\n\"1816670\";\"Pechino\";\"other\"\n\"1816670\";\"Pechinu\";\"other\"\n\"1816670\";\"Pechinum\";\"other\"\n\"1816670\";\"Pecinum\";\"other\"\n\"1816670\";\"Pei-ching\";\"other\"\n\"1816670\";\"Pei-ching-shih\";\"other\"\n\"1816670\";\"Pei-p'ing\";\"other\"\n\"1816670\";\"Pei-p'ing-shih\";\"other\"\n\"1816670\";\"Pekin\";\"other\"\n\"1816670\";\"Pekina\";\"other\"\n\"1816670\";\"Pekinas\";\"other\"\n\"1816670\";\"Peking\";\"other\"\n\"1816670\";\"Pekino\";\"other\"\n\"1816670\";\"Pekín\";\"other\"\n\"1816670\";\"Pekîn\";\"other\"\n\"1816670\";\"Peping\";\"other\"\n\"1816670\";\"Pequim\";\"other\"\n\"1816670\";\"Pequin\";\"other\"\n\"1816670\";\"Pequín\";\"other\"\n\"1816670\";\"Pékin\";\"other\"\n\"1816670\";\"be'ijim\";\"other\"\n\"1816670\";\"be'ijin'ga\";\"other\"\n\"1816670\";\"bei jing\";\"other\"\n\"1816670\";\"bei jing shi\";\"other\"\n\"1816670\";\"beijing\";\"other\"\n\"1816670\";\"bkyn\";\"other\"\n\"1816670\";\"buggyeong\";\"other\"\n\"1816670\";\"byyg'yng\";\"other\"\n\"1816670\";\"pakking\";\"other\"\n\"1816670\";\"pijin\";\"other\"\n\"1816670\";\"Πεκίνο\";\"other\"\n\"1816670\";\"Пекин\";\"other\"\n\"1816670\";\"Пекинг\";\"other\"\n\"1816670\";\"בייג'ינג\";\"other\"\n\"1816670\";\"بكين\";\"other\"\n\"1816670\";\"بېيجىڭ\";\"other\"\n\"1816670\";\"بېيجىڭ شەھىرى\";\"other\"\n\"1816670\";\"बेइजिन्ग\";\"other\"\n\"1816670\";\"বেইজিং\";\"other\"\n\"1816670\";\"பீஜிங்\";\"other\"\n\"1816670\";\"ปักกิ่ง\";\"other\"\n\"1816670\";\"პეკინი\";\"other\"\n\"1816670\";\"北京\";\"other\"\n\"1816670\";\"北京市\";\"other\"\n\"1816670\";\"베이징\";\"other\"\n\"1816670\";\"북경\";\"other\"\n\"1816693\";\"Beihuaidian\";\"main\"\n\"1816693\";\"Pei-huai-tien\";\"other\"\n\"1816693\";\"Pei-huai-yu-tien\";\"other\"\n\"1816693\";\"Pei-huai-yü-tien\";\"other\"\n\"1816705\";\"Beihai\";\"main\"\n\"1816705\";\"Behjkhaj\";\"other\"\n\"1816705\";\"Pakhoi\";\"other\"\n\"1816705\";\"Pei-hai\";\"other\"\n\"1816705\";\"Pei-hai-shih\";\"other\"\n\"1816705\";\"Бэйхай\";\"other\"\n\"1816737\";\"Beidu\";\"main\"\n\"1816737\";\"Beidu Zhen\";\"other\"\n\"1816737\";\"Pei-tu\";\"other\"\n\"1816737\";\"Pei-tu-chen\";\"other\"\n\"1816737\";\"Pei-tu-ts'un\";\"other\"\n\"1816737\";\"Pei-tu-ts’un\";\"other\"\n\"1816737\";\"bei du\";\"other\"\n\"1816737\";\"bei du zhen\";\"other\"\n\"1816737\";\"北杜\";\"other\"\n\"1816737\";\"北杜镇\";\"other\"\n\"1816738\";\"Beidu\";\"main\"\n\"1816738\";\"Beidu Zhen\";\"other\"\n\"1816738\";\"Pei-tu\";\"other\"\n\"1816738\";\"Pei-tu-chieh\";\"other\"\n\"1816738\";\"bei du\";\"other\"\n\"1816738\";\"北渡\";\"other\"\n\"1816751\";\"Beidao\";\"main\"\n\"1816751\";\"Beidaobu\";\"other\"\n\"1816751\";\"Pei-tao-pu\";\"other\"\n\"1816751\";\"T'ien-shui\";\"other\"\n\"1816751\";\"Tianshui\";\"other\"\n\"1816751\";\"T’ien-shui\";\"other\"\n\"1816753\";\"Beidaihehaibin\";\"main\"\n\"1816753\";\"Bejdajkheh\";\"other\"\n\"1816753\";\"Pehtaiho\";\"other\"\n\"1816753\";\"Pehtaiho Beach\";\"other\"\n\"1816753\";\"Pei-tai-ho Hai-pin\";\"other\"\n\"1816753\";\"Бейдайхэ\";\"other\"\n\"1816770\";\"Beicheng\";\"main\"\n\"1816770\";\"Beicheng Zhen\";\"other\"\n\"1816770\";\"Pei-ch'eng\";\"other\"\n\"1816770\";\"Pei-ch'eng-chieh\";\"other\"\n\"1816770\";\"Pei-ch’eng\";\"other\"\n\"1816770\";\"Pei-ch’eng-chieh\";\"other\"\n\"1816770\";\"bei cheng\";\"other\"\n\"1816770\";\"bei cheng zhen\";\"other\"\n\"1816770\";\"北城\";\"other\"\n\"1816770\";\"北城镇\";\"other\"\n\"1816779\";\"Beicaoshan\";\"main\"\n\"1816779\";\"Pei-ts'ao-shan\";\"other\"\n\"1816779\";\"Pei-ts’ao-shan\";\"other\"\n\"1816779\";\"北曹山\";\"other\"\n\"1816781\";\"Beicang\";\"main\"\n\"1816781\";\"Pei-ts'ang\";\"other\"\n\"1816781\";\"Pei-ts’ang\";\"other\"\n\"1816783\";\"Beicaicun\";\"main\"\n\"1816790\";\"Beibei\";\"main\"\n\"1816790\";\"Behj\";\"other\"\n\"1816790\";\"Paipei\";\"other\"\n\"1816790\";\"Pehpei\";\"other\"\n\"1816790\";\"Pei-p'ei-ch'ang\";\"other\"\n\"1816790\";\"Pei-p'ei-kuan-li-chu\";\"other\"\n\"1816790\";\"Pei-p'ei-shih\";\"other\"\n\"1816790\";\"Pei-p’ei-ch’ang\";\"other\"\n\"1816790\";\"Pei-p’ei-kuan-li-chü\";\"other\"\n\"1816790\";\"Pei-p’ei-shih\";\"other\"\n\"1816790\";\"Бэй\";\"other\"\n\"1816807\";\"Bazhou\";\"main\"\n\"1816807\";\"Bachzhou\";\"other\"\n\"1816807\";\"Bachzhun\";\"other\"\n\"1816807\";\"Bazhong\";\"other\"\n\"1816807\";\"Pa-chou\";\"other\"\n\"1816807\";\"Pa-chung\";\"other\"\n\"1816807\";\"Pa-chung-hsien\";\"other\"\n\"1816807\";\"Pachow\";\"other\"\n\"1816845\";\"Batou\";\"main\"\n\"1816845\";\"Batou Zhen\";\"other\"\n\"1816845\";\"Batouzhen\";\"other\"\n\"1816845\";\"Desheng\";\"other\"\n\"1816845\";\"Desheng Zhen\";\"other\"\n\"1816845\";\"Pa-t'ou-chen\";\"other\"\n\"1816845\";\"Pa-t’ou-chen\";\"other\"\n\"1816845\";\"T'ou-pa\";\"other\"\n\"1816845\";\"T’ou-pa\";\"other\"\n\"1816845\";\"坝头\";\"other\"\n\"1816845\";\"坝头镇\";\"other\"\n\"1816845\";\"德胜\";\"other\"\n\"1816845\";\"德胜镇\";\"other\"\n\"1816868\";\"Barkam\";\"main\"\n\"1816868\";\"Ma-erh-k'ang\";\"other\"\n\"1816868\";\"Maerkang\";\"other\"\n\"1816868\";\"Ssu-t'u\";\"other\"\n\"1816874\";\"Baqiao\";\"main\"\n\"1816874\";\"Baqiao Zhen\";\"other\"\n\"1816874\";\"Pa-ch'iao\";\"other\"\n\"1816874\";\"Pa-ch'iao-chen\";\"other\"\n\"1816874\";\"Pa-ch'iao-pao\";\"other\"\n\"1816874\";\"Pa-ch’iao\";\"other\"\n\"1816874\";\"Pa-ch’iao-chen\";\"other\"\n\"1816874\";\"Pa-ch’iao-pao\";\"other\"\n\"1816874\";\"ba qiao\";\"other\"\n\"1816874\";\"灞桥\";\"other\"\n\"1816890\";\"Baoying\";\"main\"\n\"1816890\";\"Pao-ying\";\"other\"\n\"1816890\";\"Pao-ying-ch'eng\";\"other\"\n\"1816890\";\"Pao-ying-ch’eng\";\"other\"\n\"1816890\";\"Pao-ying-hsien\";\"other\"\n\"1816924\";\"Langzhong\";\"main\"\n\"1816924\";\"Baoning\";\"other\"\n\"1816924\";\"Lang-chung\";\"other\"\n\"1816924\";\"Lang-chung-hsien\";\"other\"\n\"1816924\";\"Pao-ning-fu\";\"other\"\n\"1816924\";\"Paoning\";\"other\"\n\"1816924\";\"阆中\";\"other\"\n\"1816933\";\"Baokang Chengguanzhen\";\"main\"\n\"1816933\";\"Baokang\";\"other\"\n\"1816933\";\"Pao-k'ang\";\"other\"\n\"1816933\";\"Pao-k'ang-hsien\";\"other\"\n\"1816933\";\"Pao-k’ang\";\"other\"\n\"1816933\";\"Pao-k’ang-hsien\";\"other\"\n\"1816933\";\"bao kang cheng guan zhen\";\"other\"\n\"1816933\";\"保康城关镇\";\"other\"\n\"1816950\";\"Baohe\";\"main\"\n\"1816950\";\"Baohezhai\";\"other\"\n\"1816950\";\"bao he\";\"other\"\n\"1816950\";\"保和\";\"other\"\n\"1816971\";\"Baoding\";\"main\"\n\"1816971\";\"Baodin\";\"other\"\n\"1816971\";\"Ch'ing-yuan-hsien\";\"other\"\n\"1816971\";\"Ching-yuang\";\"other\"\n\"1816971\";\"Ch’ing-yüan-hsien\";\"other\"\n\"1816971\";\"Pao-ting\";\"other\"\n\"1816971\";\"Pao-ting-shih\";\"other\"\n\"1816971\";\"Prefettura di Baoding\";\"other\"\n\"1816971\";\"Tsingyuan\";\"other\"\n\"1816971\";\"Tsingyuan-hsien\";\"other\"\n\"1816971\";\"Tsingyüan-hsien\";\"other\"\n\"1816971\";\"bao ding\";\"other\"\n\"1816971\";\"bao ding shi\";\"other\"\n\"1816971\";\"Баодин\";\"other\"\n\"1816971\";\"保定\";\"other\"\n\"1816971\";\"保定市\";\"other\"\n\"1816981\";\"Baochang\";\"main\"\n\"1816981\";\"Baochang Zhen\";\"other\"\n\"1816981\";\"Pao-ch'ang\";\"other\"\n\"1816981\";\"Pao-ch'ang-chen\";\"other\"\n\"1816981\";\"Pao-ch’ang\";\"other\"\n\"1816981\";\"Pao-ch’ang-chen\";\"other\"\n\"1816981\";\"包场\";\"other\"\n\"1816981\";\"包场镇\";\"other\"\n\"1816985\";\"Bao’an\";\"main\"\n\"1816985\";\"Bao'an\";\"ascii\"\n\"1816985\";\"Bao'an Zhen\";\"other\"\n\"1816985\";\"Bao’an Zhen\";\"other\"\n\"1816985\";\"Pao-an\";\"other\"\n\"1816985\";\"保安\";\"other\"\n\"1816985\";\"保安镇\";\"other\"\n\"1816986\";\"Bao’an\";\"main\"\n\"1816986\";\"Bao'an\";\"ascii\"\n\"1816986\";\"Bao'an Zhen\";\"other\"\n\"1816986\";\"Bao’an Zhen\";\"other\"\n\"1816986\";\"Pao-an\";\"other\"\n\"1816986\";\"Pao-an-chen\";\"other\"\n\"1816986\";\"保安\";\"other\"\n\"1816987\";\"Bao’an\";\"main\"\n\"1816987\";\"Bao'an\";\"ascii\"\n\"1816987\";\"Bao'an Zhen\";\"other\"\n\"1816987\";\"Bao’an Zhen\";\"other\"\n\"1816987\";\"Pao-an\";\"other\"\n\"1816987\";\"Pao-an-chen\";\"other\"\n\"1816987\";\"Pao-an-i\";\"other\"\n\"1816987\";\"bao an\";\"other\"\n\"1816987\";\"保安\";\"other\"\n\"1817028\";\"Banqiao\";\"main\"\n\"1817028\";\"Banqiao Zhen\";\"other\"\n\"1817028\";\"Pan-ch'iao\";\"other\"\n\"1817028\";\"Pan-ch’iao\";\"other\"\n\"1817028\";\"ban qiao\";\"other\"\n\"1817028\";\"板桥\";\"other\"\n\"1817048\";\"Majie\";\"main\"\n\"1817048\";\"Banqiao Xiang\";\"other\"\n\"1817048\";\"Pan-ch'iao-chieh\";\"other\"\n\"1817048\";\"Pan-ch’iao-chieh\";\"other\"\n\"1817048\";\"ban qiao xiang\";\"other\"\n\"1817048\";\"ma jie\";\"other\"\n\"1817048\";\"板桥乡\";\"other\"\n\"1817048\";\"马街\";\"other\"\n\"1817075\";\"Banjing\";\"main\"\n\"1817075\";\"Banjing Zhen\";\"other\"\n\"1817075\";\"Pan-chin\";\"other\"\n\"1817075\";\"Pan-ching\";\"other\"\n\"1817075\";\"Pan-ching-chen\";\"other\"\n\"1817075\";\"搬经\";\"other\"\n\"1817075\";\"搬经镇\";\"other\"\n\"1817090\";\"Bangjun\";\"main\"\n\"1817090\";\"Pang-chun\";\"other\"\n\"1817090\";\"Pang-chun-chen\";\"other\"\n\"1817090\";\"Pang-chün\";\"other\"\n\"1817090\";\"Pang-chün-chen\";\"other\"\n\"1817097\";\"Bangdong\";\"main\"\n\"1817097\";\"Pang-tung-chen\";\"other\"\n\"1817129\";\"Bamencheng\";\"main\"\n\"1817129\";\"Pa-men-ch'eng\";\"other\"\n\"1817129\";\"Pa-men-cheng-chen\";\"other\"\n\"1817129\";\"Pa-men-ch’eng\";\"other\"\n\"1817135\";\"Bama\";\"main\"\n\"1817135\";\"Chiu-wan-kang\";\"other\"\n\"1817135\";\"Pa-ma\";\"other\"\n\"1817135\";\"Pa-ma-hsiang\";\"other\"\n\"1817135\";\"Pa-ma-yao-tsu-tzu-chih-hsien\";\"other\"\n\"1817135\";\"Wan-kang\";\"other\"\n\"1817135\";\"Wan-kang-hsien\";\"other\"\n\"1817135\";\"ba ma\";\"other\"\n\"1817135\";\"巴马\";\"other\"\n\"1817167\";\"Bajing\";\"main\"\n\"1817167\";\"Bajing Zhen\";\"other\"\n\"1817167\";\"Pa-ching\";\"other\"\n\"1817167\";\"八景\";\"other\"\n\"1817167\";\"八景镇\";\"other\"\n\"1817170\";\"Bajie\";\"main\"\n\"1817170\";\"Bajie Zhen\";\"other\"\n\"1817170\";\"Pa-chieh\";\"other\"\n\"1817170\";\"ba jie\";\"other\"\n\"1817170\";\"ba jie zhen\";\"other\"\n\"1817170\";\"八街\";\"other\"\n\"1817170\";\"八街镇\";\"other\"\n\"1817183\";\"Bajiao\";\"main\"\n\"1817183\";\"Bajiao Zhen\";\"other\"\n\"1817183\";\"Pa-chiao\";\"other\"\n\"1817183\";\"Pa-chiao-pao\";\"other\"\n\"1817183\";\"八角\";\"other\"\n\"1817183\";\"八角镇\";\"other\"\n\"1817229\";\"Baiyun\";\"main\"\n\"1817229\";\"Pai-yun\";\"other\"\n\"1817229\";\"Pai-yün\";\"other\"\n\"1817240\";\"Baiyin\";\"main\"\n\"1817240\";\"Aho Chia Chuan\";\"other\"\n\"1817240\";\"Hao-chia-ch'uan\";\"other\"\n\"1817240\";\"Hao-chia-ch’uan\";\"other\"\n\"1817240\";\"Ho-chia-ch'uan\";\"other\"\n\"1817240\";\"Ho-chia-ch’uan\";\"other\"\n\"1817240\";\"Pai-yin\";\"other\"\n\"1817240\";\"Pai-yin-ch'ang\";\"other\"\n\"1817240\";\"Pai-yin-ch’ang\";\"other\"\n\"1817240\";\"Pai-yin-shih\";\"other\"\n\"1817247\";\"Baiyashi\";\"main\"\n\"1817247\";\"Dong'an\";\"other\"\n\"1817247\";\"Dong’an\";\"other\"\n\"1817247\";\"Pai-ya\";\"other\"\n\"1817247\";\"Pai-ya-shih\";\"other\"\n\"1817247\";\"Tung-an\";\"other\"\n\"1817247\";\"Tung-an-hsien\";\"other\"\n\"1817247\";\"bai ya shi\";\"other\"\n\"1817247\";\"白牙市\";\"other\"\n\"1817294\";\"Baixi\";\"main\"\n\"1817294\";\"I-pin\";\"other\"\n\"1817294\";\"I-pin-hsien\";\"other\"\n\"1817294\";\"Pai-ch'i-chen\";\"other\"\n\"1817294\";\"Pai-ch’i-chen\";\"other\"\n\"1817294\";\"Pai-hsi-chen\";\"other\"\n\"1817294\";\"Pai-shu-ch'ang\";\"other\"\n\"1817294\";\"Pai-shu-ch'i\";\"other\"\n\"1817294\";\"Pai-shu-ch’ang\";\"other\"\n\"1817294\";\"Pai-shu-ch’i\";\"other\"\n\"1817294\";\"Yibin\";\"other\"\n\"1817294\";\"bai xi\";\"other\"\n\"1817294\";\"柏溪\";\"other\"\n\"1817314\";\"Baitu\";\"main\"\n\"1817314\";\"Baitu Zhen\";\"other\"\n\"1817314\";\"Pai-t'u\";\"other\"\n\"1817314\";\"Pai-t'u-hsu\";\"other\"\n\"1817314\";\"Pai-t’u\";\"other\"\n\"1817314\";\"Pai-t’u-hsü\";\"other\"\n\"1817314\";\"白土\";\"other\"\n\"1817314\";\"白土镇\";\"other\"\n\"1817331\";\"Baitang\";\"main\"\n\"1817331\";\"Baitang Xiang\";\"other\"\n\"1817331\";\"Pai-t'ang\";\"other\"\n\"1817331\";\"Pai-t'ang-tzu\";\"other\"\n\"1817331\";\"Pai-t'ang-wa\";\"other\"\n\"1817331\";\"Pai-t’ang\";\"other\"\n\"1817331\";\"Pai-t’ang-tzu\";\"other\"\n\"1817331\";\"Pai-t’ang-wa\";\"other\"\n\"1817331\";\"白堂\";\"other\"\n\"1817331\";\"白堂乡\";\"other\"\n\"1817333\";\"Baitang\";\"main\"\n\"1817333\";\"Baitang Zhen\";\"other\"\n\"1817333\";\"Pai-t'ang\";\"other\"\n\"1817333\";\"Pai-t'ang-hsu\";\"other\"\n\"1817333\";\"Pai-t’ang\";\"other\"\n\"1817333\";\"Pai-t’ang-hsü\";\"other\"\n\"1817333\";\"bai tang\";\"other\"\n\"1817333\";\"柏塘\";\"other\"\n\"1817360\";\"Baishuijiang\";\"main\"\n\"1817360\";\"Baishuijiang Zhen\";\"other\"\n\"1817360\";\"Bayshuytszyan\";\"other\"\n\"1817360\";\"Pai-shui-chiang\";\"other\"\n\"1817360\";\"白水江\";\"other\"\n\"1817360\";\"白水江镇\";\"other\"\n\"1817389\";\"Baishigou\";\"main\"\n\"1817389\";\"Pai-shih-kou\";\"other\"\n\"1817389\";\"白石沟\";\"other\"\n\"1817398\";\"Baishi\";\"main\"\n\"1817398\";\"Pai-yen-t'ang\";\"other\"\n\"1817398\";\"Pai-yen-t’ang\";\"other\"\n\"1817422\";\"Baishan\";\"main\"\n\"1817422\";\"Lung-sha\";\"other\"\n\"1817422\";\"Lung-shan\";\"other\"\n\"1817422\";\"Lung-shan-hsien\";\"other\"\n\"1817422\";\"Mashan\";\"other\"\n\"1817422\";\"bai shan\";\"other\"\n\"1817422\";\"白山\";\"other\"\n\"1817445\";\"Baisha\";\"main\"\n\"1817445\";\"Baisha Zhen\";\"other\"\n\"1817445\";\"Pai-sha\";\"other\"\n\"1817445\";\"白沙\";\"other\"\n\"1817445\";\"白沙镇\";\"other\"\n\"1817446\";\"Baisha\";\"main\"\n\"1817446\";\"Pai-sha\";\"other\"\n\"1817464\";\"Baiquesi\";\"main\"\n\"1817464\";\"Botsioso\";\"other\"\n\"1817464\";\"Botsiosö\";\"other\"\n\"1817464\";\"Pai-ch'iao-ssu\";\"other\"\n\"1817464\";\"Pai-ch’iao-ssu\";\"other\"\n\"1817464\";\"Po-ch'ueh-ssu\";\"other\"\n\"1817464\";\"Po-ch’üeh-ssu\";\"other\"\n\"1817464\";\"白雀寺\";\"other\"\n\"1817468\";\"Tianshĕwang\";\"main\"\n\"1817468\";\"Tianshewang\";\"ascii\"\n\"1817468\";\"Baiquan\";\"other\"\n\"1817468\";\"Baiquan Zhen\";\"other\"\n\"1817468\";\"Baiquanzhen\";\"other\"\n\"1817468\";\"Pai-ch'uan\";\"other\"\n\"1817468\";\"Pai-ch'uan-chuang\";\"other\"\n\"1817468\";\"Pai-ch’üan\";\"other\"\n\"1817468\";\"Pai-ch’üan-chuang\";\"other\"\n\"1817468\";\"田舍王\";\"other\"\n\"1817468\";\"白泉镇\";\"other\"\n\"1817474\";\"Baipu\";\"main\"\n\"1817474\";\"Baipu Zhen\";\"other\"\n\"1817474\";\"Pai-p'u\";\"other\"\n\"1817474\";\"Pai-p'u-chen\";\"other\"\n\"1817474\";\"Pai-p’u\";\"other\"\n\"1817474\";\"Pai-p’u-chen\";\"other\"\n\"1817474\";\"白蒲\";\"other\"\n\"1817474\";\"白蒲镇\";\"other\"\n\"1817475\";\"Baipu\";\"main\"\n\"1817475\";\"Baipu Zhen\";\"other\"\n\"1817475\";\"Pai-pu\";\"other\"\n\"1817475\";\"Po-yung\";\"other\"\n\"1817475\";\"Po-yung-hsu\";\"other\"\n\"1817475\";\"Po-yung-hsü\";\"other\"\n\"1817475\";\"柏埔\";\"other\"\n\"1817475\";\"柏埔镇\";\"other\"\n\"1817509\";\"Baimi\";\"main\"\n\"1817509\";\"Baimi Zhen\";\"other\"\n\"1817509\";\"Pai-mi\";\"other\"\n\"1817509\";\"Pai-mi-chen\";\"other\"\n\"1817509\";\"Ta-pai-mi\";\"other\"\n\"1817509\";\"Ta-pai-mi-chen\";\"other\"\n\"1817509\";\"白米\";\"other\"\n\"1817509\";\"白米镇\";\"other\"\n\"1817518\";\"Baima\";\"main\"\n\"1817518\";\"Baimashi\";\"other\"\n\"1817518\";\"Pai-ma-shih\";\"other\"\n\"1817518\";\"bai ma\";\"other\"\n\"1817518\";\"白马\";\"other\"\n\"1817549\";\"Baima\";\"main\"\n\"1817549\";\"Baima Xiang\";\"other\"\n\"1817549\";\"白马\";\"other\"\n\"1817549\";\"白马乡\";\"other\"\n\"1817567\";\"Bailu\";\"main\"\n\"1817567\";\"Bailu Xiang\";\"other\"\n\"1817567\";\"Pai-lu\";\"other\"\n\"1817567\";\"Pai-lu-hsu\";\"other\"\n\"1817567\";\"Pai-lu-hsü\";\"other\"\n\"1817567\";\"白鹭\";\"other\"\n\"1817567\";\"白鹭乡\";\"other\"\n\"1817572\";\"Bailongmiao\";\"main\"\n\"1817572\";\"Pai-lung-miao\";\"other\"\n\"1817572\";\"Wujia\";\"other\"\n\"1817572\";\"Wujia Zhen\";\"other\"\n\"1817572\";\"五甲\";\"other\"\n\"1817572\";\"五甲镇\";\"other\"\n\"1817572\";\"白龙庙\";\"other\"\n\"1817602\";\"Bailian\";\"main\"\n\"1817602\";\"Bailian Zhen\";\"other\"\n\"1817602\";\"Pai-lien\";\"other\"\n\"1817602\";\"白莲\";\"other\"\n\"1817602\";\"白莲镇\";\"other\"\n\"1817619\";\"Baiju\";\"main\"\n\"1817619\";\"Baiju Zhen\";\"other\"\n\"1817619\";\"Pai-chu\";\"other\"\n\"1817619\";\"Pai-chu-ch'ang\";\"other\"\n\"1817619\";\"Pai-chu-chen\";\"other\"\n\"1817619\";\"Pai-chü\";\"other\"\n\"1817619\";\"Pai-chü-chen\";\"other\"\n\"1817619\";\"Pai-chü-ch’ang\";\"other\"\n\"1817619\";\"Paiku\";\"other\"\n\"1817619\";\"白驹\";\"other\"\n\"1817619\";\"白驹镇\";\"other\"\n\"1817630\";\"Baijiazhuang\";\"main\"\n\"1817630\";\"Baijiazhuang Xiang\";\"other\"\n\"1817630\";\"Pai-chia-chuang\";\"other\"\n\"1817630\";\"柏家庄\";\"other\"\n\"1817630\";\"柏家庄乡\";\"other\"\n\"1817648\";\"Baijian\";\"main\"\n\"1817677\";\"Baihua\";\"main\"\n\"1817677\";\"bai hua\";\"other\"\n\"1817677\";\"白花\";\"other\"\n\"1817698\";\"Baihedian\";\"main\"\n\"1817698\";\"Baihe\";\"other\"\n\"1817698\";\"Baihe Zhen\";\"other\"\n\"1817698\";\"Pai-ho\";\"other\"\n\"1817698\";\"bai he dian\";\"other\"\n\"1817698\";\"白鹤殿\";\"other\"\n\"1817698\";\"白鹤镇\";\"other\"\n\"1817701\";\"Baihe\";\"main\"\n\"1817720\";\"Shangyu\";\"main\"\n\"1817720\";\"Baiguan\";\"other\"\n\"1817720\";\"Pai-kuan\";\"other\"\n\"1817720\";\"Pai-kuan-chen\";\"other\"\n\"1817720\";\"Pekwan\";\"other\"\n\"1817720\";\"Pokwan\";\"other\"\n\"1817729\";\"Baifusi\";\"main\"\n\"1817729\";\"Baifusi Zhen\";\"other\"\n\"1817729\";\"Pai-fu-ssu\";\"other\"\n\"1817729\";\"bai fu si\";\"other\"\n\"1817729\";\"bai fu si zhen\";\"other\"\n\"1817729\";\"百福司\";\"other\"\n\"1817729\";\"百福司镇\";\"other\"\n\"1817794\";\"Bahuang\";\"main\"\n\"1817794\";\"Bahuangchang\";\"other\"\n\"1817794\";\"Pa-huang-ch'ang\";\"other\"\n\"1817794\";\"Pa-huang-ch’ang\";\"other\"\n\"1817794\";\"Pa-wang\";\"other\"\n\"1817807\";\"Baguanhe\";\"main\"\n\"1817811\";\"Xiaba\";\"main\"\n\"1817811\";\"Bagou Xiang\";\"other\"\n\"1817811\";\"下巴\";\"other\"\n\"1817811\";\"巴沟乡\";\"other\"\n\"1817827\";\"Badu\";\"main\"\n\"1817827\";\"Badu Zhen\";\"other\"\n\"1817827\";\"Ch'ien-yang\";\"other\"\n\"1817827\";\"Ch’ien-yang\";\"other\"\n\"1817827\";\"Pa-tu\";\"other\"\n\"1817827\";\"Pa-tu-chen\";\"other\"\n\"1817827\";\"八都\";\"other\"\n\"1817827\";\"八都镇\";\"other\"\n\"1817829\";\"Badu\";\"main\"\n\"1817829\";\"Pa-tu\";\"other\"\n\"1817842\";\"Badaogu\";\"main\"\n\"1817846\";\"Bada\";\"main\"\n\"1817846\";\"Hsi-lin\";\"other\"\n\"1817846\";\"Pa-ta\";\"other\"\n\"1817846\";\"Pa-ta-chen\";\"other\"\n\"1817846\";\"Pa-ta-chou\";\"other\"\n\"1817846\";\"Pa-ta-hsiang\";\"other\"\n\"1817846\";\"Xilin\";\"other\"\n\"1817846\";\"ba da\";\"other\"\n\"1817846\";\"八达\";\"other\"\n\"1817858\";\"Babu\";\"main\"\n\"1817858\";\"Hexian\";\"other\"\n\"1817858\";\"Ho\";\"other\"\n\"1817858\";\"Ho-hsien\";\"other\"\n\"1817858\";\"Pa-pu\";\"other\"\n\"1817858\";\"Pa-pu-chen\";\"other\"\n\"1817858\";\"Patpo\";\"other\"\n\"1817858\";\"Бабу\";\"other\"\n\"1817882\";\"Aoyang\";\"main\"\n\"1817882\";\"Shou-ning-hsien\";\"other\"\n\"1817882\";\"Shouning\";\"other\"\n\"1817882\";\"Showning\";\"other\"\n\"1817882\";\"Showninghsien\";\"other\"\n\"1817882\";\"ao yang\";\"other\"\n\"1817882\";\"鳌阳\";\"other\"\n\"1817887\";\"Aotou\";\"main\"\n\"1817887\";\"Ao-t'ou-hsu\";\"other\"\n\"1817887\";\"Ao-t’ou-hsü\";\"other\"\n\"1817887\";\"Aotou Zhen\";\"other\"\n\"1817887\";\"ao tou\";\"other\"\n\"1817887\";\"鳌头\";\"other\"\n\"1817889\";\"Aotou\";\"main\"\n\"1817889\";\"Ao-t'ou-chiang\";\"other\"\n\"1817889\";\"Ao-t’ou-chiang\";\"other\"\n\"1817889\";\"Aotou Jiedao\";\"other\"\n\"1817889\";\"Otow\";\"other\"\n\"1817889\";\"Outaokong\";\"other\"\n\"1817889\";\"Outau\";\"other\"\n\"1817889\";\"ao tou\";\"other\"\n\"1817889\";\"澳头\";\"other\"\n\"1817890\";\"Aoshi\";\"main\"\n\"1817890\";\"Ao-shih\";\"other\"\n\"1817890\";\"Ao-shih-ts'un\";\"other\"\n\"1817890\";\"Ao-shih-ts’un\";\"other\"\n\"1817890\";\"Aoshi Xiang\";\"other\"\n\"1817890\";\"鳌石\";\"other\"\n\"1817890\";\"鳌石乡\";\"other\"\n\"1817891\";\"Aoshi\";\"main\"\n\"1817891\";\"Ao-shih\";\"other\"\n\"1817891\";\"Ao-yu-tsui\";\"other\"\n\"1817891\";\"Ao-yü-tsui\";\"other\"\n\"1817891\";\"Aoshi Zhen\";\"other\"\n\"1817928\";\"Anze Fuchengzhen\";\"main\"\n\"1817928\";\"An-tse\";\"other\"\n\"1817928\";\"Anze\";\"other\"\n\"1817928\";\"Fu-ch'eng\";\"other\"\n\"1817928\";\"Fu-ch'eng-chen\";\"other\"\n\"1817928\";\"Fu-ch'eng-tien\";\"other\"\n\"1817928\";\"Fu-ch’eng\";\"other\"\n\"1817928\";\"Fu-ch’eng-chen\";\"other\"\n\"1817928\";\"Fu-ch’eng-tien\";\"other\"\n\"1817928\";\"an ze fu cheng zhen\";\"other\"\n\"1817928\";\"安泽府城镇\";\"other\"\n\"1817934\";\"Anyuan\";\"main\"\n\"1817934\";\"An-yuan-hsun\";\"other\"\n\"1817934\";\"An-yüan-hsün\";\"other\"\n\"1817934\";\"安远\";\"other\"\n\"1817946\";\"Anyang\";\"main\"\n\"1817946\";\"Du'an\";\"other\"\n\"1817946\";\"Du’an\";\"other\"\n\"1817946\";\"Tu-an\";\"other\"\n\"1817946\";\"Tu-an-hsien\";\"other\"\n\"1817946\";\"Tu-an-yao-tsu-tzu-chih-hsien\";\"other\"\n\"1817946\";\"an yang\";\"other\"\n\"1817946\";\"安阳\";\"other\"\n\"1817952\";\"Anxiang Chengguanzhen\";\"main\"\n\"1817952\";\"An-hsiang\";\"other\"\n\"1817952\";\"An-hsiang-hsien\";\"other\"\n\"1817952\";\"Ansiang\";\"other\"\n\"1817952\";\"Ansiang-hsien\";\"other\"\n\"1817952\";\"Anxiang\";\"other\"\n\"1817952\";\"安乡城关镇\";\"other\"\n\"1817958\";\"Anwen\";\"main\"\n\"1817958\";\"An-wen-chen\";\"other\"\n\"1817958\";\"Anwen Zhen\";\"other\"\n\"1817958\";\"P'an-an\";\"other\"\n\"1817958\";\"P’an-an\";\"other\"\n\"1817958\";\"an wen\";\"other\"\n\"1817958\";\"安文\";\"other\"\n\"1817958\";\"安文镇\";\"other\"\n\"1817968\";\"Anshun\";\"main\"\n\"1817968\";\"An'shun'\";\"other\"\n\"1817968\";\"An-shun-hsien\";\"other\"\n\"1817968\";\"An-shun-hsien-ch'eng\";\"other\"\n\"1817968\";\"An-shun-hsien-ch’eng\";\"other\"\n\"1817968\";\"An-shun-shih\";\"other\"\n\"1817968\";\"Anshunfu\";\"other\"\n\"1817968\";\"P'u-ting\";\"other\"\n\"1817968\";\"P’u-ting\";\"other\"\n\"1817968\";\"Аньшунь\";\"other\"\n\"1817975\";\"Ansha\";\"main\"\n\"1817975\";\"Ansha Zhen\";\"other\"\n\"1817975\";\"安砂\";\"other\"\n\"1817975\";\"安砂镇\";\"other\"\n\"1817977\";\"Anrong\";\"main\"\n\"1817977\";\"An-jung\";\"other\"\n\"1817977\";\"An-ying-ts'un\";\"other\"\n\"1817977\";\"An-ying-ts’un\";\"other\"\n\"1817977\";\"Anrong Xiang\";\"other\"\n\"1817977\";\"安荣\";\"other\"\n\"1817977\";\"安荣乡\";\"other\"\n\"1817986\";\"Anren\";\"main\"\n\"1817986\";\"安仁\";\"other\"\n\"1817987\";\"Anren Chengguanzhen\";\"main\"\n\"1817987\";\"An-jen\";\"other\"\n\"1817987\";\"An-jen-hsien\";\"other\"\n\"1817987\";\"Anren\";\"other\"\n\"1817987\";\"an ren cheng guan zhen\";\"other\"\n\"1817987\";\"安仁城关镇\";\"other\"\n\"1817990\";\"Anqiu\";\"main\"\n\"1817990\";\"An-ch'iu\";\"other\"\n\"1817990\";\"An-ch'iu-hsien\";\"other\"\n\"1817990\";\"An-ch’iu\";\"other\"\n\"1817990\";\"An-ch’iu-hsien\";\"other\"\n\"1817990\";\"An-kiu\";\"other\"\n\"1817990\";\"Ankiuhsien\";\"other\"\n\"1817993\";\"Anqing\";\"main\"\n\"1817993\";\"An'cin\";\"other\"\n\"1817993\";\"An-ch'ing\";\"other\"\n\"1817993\";\"An-ch'ing-ch'eng\";\"other\"\n\"1817993\";\"An-ch'ing-shih\";\"other\"\n\"1817993\";\"An-ch’ing\";\"other\"\n\"1817993\";\"An-ch’ing-ch’eng\";\"other\"\n\"1817993\";\"An-ch’ing-shih\";\"other\"\n\"1817993\";\"Anking\";\"other\"\n\"1817993\";\"Huai-ning\";\"other\"\n\"1817993\";\"Huai-ning-hsien\";\"other\"\n\"1817993\";\"Hwaining\";\"other\"\n\"1817993\";\"Hwaining-hsien\";\"other\"\n\"1817993\";\"Nganking\";\"other\"\n\"1817993\";\"an qing\";\"other\"\n\"1817993\";\"an qing shi\";\"other\"\n\"1817993\";\"anching\";\"other\"\n\"1817993\";\"Аньцин\";\"other\"\n\"1817993\";\"ئەنچىڭ شەھىرى\";\"other\"\n\"1817993\";\"安庆\";\"other\"\n\"1817993\";\"安庆市\";\"other\"\n\"1817993\";\"安慶\";\"other\"\n\"1817993\";\"안칭\";\"other\"\n\"1818004\";\"Mabai\";\"main\"\n\"1818004\";\"Anping\";\"other\"\n\"1818004\";\"Ma-kuan\";\"other\"\n\"1818004\";\"Ma-kuan-hsien\";\"other\"\n\"1818004\";\"Ma-pai-kuan\";\"other\"\n\"1818004\";\"Maguan\";\"other\"\n\"1818004\";\"Makwan\";\"other\"\n\"1818004\";\"Makwan-hsien\";\"other\"\n\"1818004\";\"Mapai\";\"other\"\n\"1818004\";\"马白\";\"other\"\n\"1818012\";\"Anmenkou\";\"main\"\n\"1818012\";\"An-men-chen\";\"other\"\n\"1818012\";\"An-men-k'ou-chen\";\"other\"\n\"1818012\";\"An-men-k’ou-chen\";\"other\"\n\"1818012\";\"Anmenkou Zhen\";\"other\"\n\"1818012\";\"K'ang\";\"other\"\n\"1818012\";\"K'ang-hsien\";\"other\"\n\"1818012\";\"K’ang\";\"other\"\n\"1818012\";\"K’ang-hsien\";\"other\"\n\"1818012\";\"岸门口\";\"other\"\n\"1818012\";\"岸门口镇\";\"other\"\n\"1818016\";\"Anlu\";\"main\"\n\"1818016\";\"An-lu-hsien\";\"other\"\n\"1818016\";\"Te-an\";\"other\"\n\"1818016\";\"Tean-fu\";\"other\"\n\"1818016\";\"Teian\";\"other\"\n\"1818016\";\"Teianfu\";\"other\"\n\"1818023\";\"Anliang\";\"main\"\n\"1818023\";\"Anliang Zhen\";\"other\"\n\"1818023\";\"an liang\";\"other\"\n\"1818023\";\"安良\";\"other\"\n\"1818029\";\"Anle\";\"main\"\n\"1818029\";\"An-le-ts'un\";\"other\"\n\"1818029\";\"An-le-ts’un\";\"other\"\n\"1818029\";\"Anle Zhen\";\"other\"\n\"1818029\";\"an le\";\"other\"\n\"1818029\";\"安乐\";\"other\"\n\"1818030\";\"Anle\";\"main\"\n\"1818030\";\"An-le-chai\";\"other\"\n\"1818030\";\"An-lo-chai\";\"other\"\n\"1818030\";\"Anle Zhen\";\"other\"\n\"1818030\";\"安乐\";\"other\"\n\"1818030\";\"安乐镇\";\"other\"\n\"1818032\";\"Xinggongxia\";\"main\"\n\"1818032\";\"Anle\";\"other\"\n\"1818032\";\"安乐\";\"other\"\n\"1818032\";\"行宫下\";\"other\"\n\"1818041\";\"Anju\";\"main\"\n\"1818041\";\"An-chu\";\"other\"\n\"1818041\";\"An-chü\";\"other\"\n\"1818041\";\"Anjuba\";\"other\"\n\"1818041\";\"an ju\";\"other\"\n\"1818041\";\"安居\";\"other\"\n\"1818051\";\"Anjiang\";\"main\"\n\"1818051\";\"An-chiang\";\"other\"\n\"1818051\";\"An-chiang-chen\";\"other\"\n\"1818051\";\"Ankiang\";\"other\"\n\"1818051\";\"Ch'ien-yang\";\"other\"\n\"1818051\";\"Ch'ien-yang-hsien\";\"other\"\n\"1818051\";\"Ch’ien-yang\";\"other\"\n\"1818051\";\"Ch’ien-yang-hsien\";\"other\"\n\"1818051\";\"Qianyang\";\"other\"\n\"1818062\";\"Anhua\";\"main\"\n\"1818062\";\"Anhua Zhen\";\"other\"\n\"1818062\";\"安化\";\"other\"\n\"1818062\";\"安化镇\";\"other\"\n\"1818063\";\"Anhua\";\"main\"\n\"1818063\";\"An-hua-chen\";\"other\"\n\"1818063\";\"An-hua-shih\";\"other\"\n\"1818063\";\"Anhua Zhen\";\"other\"\n\"1818063\";\"安华\";\"other\"\n\"1818063\";\"安华镇\";\"other\"\n\"1818081\";\"Angao\";\"main\"\n\"1818081\";\"An-kao\";\"other\"\n\"1818081\";\"Angao Zhen\";\"other\"\n\"1818081\";\"an gao\";\"other\"\n\"1818081\";\"an gao zhen\";\"other\"\n\"1818081\";\"安皋\";\"other\"\n\"1818081\";\"安皋镇\";\"other\"\n\"1818086\";\"Naxi\";\"main\"\n\"1818086\";\"Anfu\";\"other\"\n\"1818086\";\"Na-ch'i\";\"other\"\n\"1818086\";\"Na-ch'i-hsien\";\"other\"\n\"1818086\";\"Na-ch’i\";\"other\"\n\"1818086\";\"Na-ch’i-hsien\";\"other\"\n\"1818086\";\"Na-hsi\";\"other\"\n\"1818086\";\"na xi\";\"other\"\n\"1818086\";\"纳溪\";\"other\"\n\"1818087\";\"Anfu\";\"main\"\n\"1818087\";\"An-fu-hsu\";\"other\"\n\"1818087\";\"An-fu-hsü\";\"other\"\n\"1818087\";\"Anfu Xiang\";\"other\"\n\"1818087\";\"安福\";\"other\"\n\"1818087\";\"安福乡\";\"other\"\n\"1818092\";\"Anfeng\";\"main\"\n\"1818092\";\"An-feng-chen\";\"other\"\n\"1818092\";\"Anfeng Zhen\";\"other\"\n\"1818092\";\"Pei-an\";\"other\"\n\"1818092\";\"Pei-an-feng\";\"other\"\n\"1818092\";\"Pei-an-feng-chen\";\"other\"\n\"1818092\";\"安丰\";\"other\"\n\"1818092\";\"安丰镇\";\"other\"\n\"1818093\";\"Anfeng\";\"main\"\n\"1818093\";\"An-feng-chen\";\"other\"\n\"1818093\";\"Anfeng Zhen\";\"other\"\n\"1818093\";\"安丰\";\"other\"\n\"1818093\";\"安丰镇\";\"other\"\n\"1818097\";\"Andun\";\"main\"\n\"1818097\";\"An-tun\";\"other\"\n\"1818097\";\"an dun\";\"other\"\n\"1818097\";\"安墩\";\"other\"\n\"1818099\";\"Andong\";\"main\"\n\"1818099\";\"An-tung\";\"other\"\n\"1818099\";\"An-tung-shih\";\"other\"\n\"1818099\";\"Andong Zhen\";\"other\"\n\"1818099\";\"Andongzhen\";\"other\"\n\"1818099\";\"庵东\";\"other\"\n\"1818099\";\"庵东镇\";\"other\"\n\"1818116\";\"Anbu\";\"main\"\n\"1818116\";\"An-pu\";\"other\"\n\"1818116\";\"Anbu Zhen\";\"other\"\n\"1818116\";\"庵埠\";\"other\"\n\"1818177\";\"Aba\";\"main\"\n\"1818177\";\"A-pa\";\"other\"\n\"1818177\";\"Chung-a-pa\";\"other\"\n\"1818177\";\"Mai-sang\";\"other\"\n\"1818177\";\"Ngawa\";\"other\"\n\"1818177\";\"a ba\";\"other\"\n\"1818177\";\"阿坝\";\"other\"\n\"1881319\";\"Qiantong\";\"main\"\n\"1881319\";\"Ch'ien-t'ung\";\"other\"\n\"1881319\";\"Ch’ien-t’ung\";\"other\"\n\"1881319\";\"Qiantong Zhen\";\"other\"\n\"1881319\";\"Qiantongzhen\";\"other\"\n\"1881319\";\"qian tong\";\"other\"\n\"1881319\";\"前童\";\"other\"\n\"1881319\";\"前童镇\";\"other\"\n\"1881436\";\"Tianyuan\";\"main\"\n\"1881436\";\"T'ien-yuan-shih\";\"other\"\n\"1881436\";\"Tianyuan Zhen\";\"other\"\n\"1881436\";\"T’ien-yüan-shih\";\"other\"\n\"1881436\";\"天元\";\"other\"\n\"1881436\";\"天元镇\";\"other\"\n\"1881450\";\"Langxia Jiedao\";\"main\"\n\"1881450\";\"Lang-hsia-chen\";\"other\"\n\"1881450\";\"Langxia\";\"other\"\n\"1881450\";\"Langxia Zhen\";\"other\"\n\"1881450\";\"朗霞\";\"other\"\n\"1881450\";\"朗霞街道\";\"other\"\n\"1881450\";\"朗霞镇\";\"other\"\n\"1881544\";\"Lóumenkou\";\"main\"\n\"1881544\";\"Loumenkou\";\"ascii\"\n\"1881544\";\"Ma'ao\";\"other\"\n\"1881544\";\"Ma'ao Zhen\";\"other\"\n\"1881544\";\"Ma'aozhen\";\"other\"\n\"1881544\";\"Ma-ao (2)\";\"other\"\n\"1881544\";\"Ma’ao\";\"other\"\n\"1881544\";\"Ma’ao Zhen\";\"other\"\n\"1881544\";\"Ma’aozhen\";\"other\"\n\"1881544\";\"楼门口\";\"other\"\n\"1881544\";\"马岙\";\"other\"\n\"1881544\";\"马岙镇\";\"other\"\n\"1881568\";\"Xiaosha\";\"main\"\n\"1881568\";\"Hsiao-sha-chuang\";\"other\"\n\"1881568\";\"Xiaosha Zhen\";\"other\"\n\"1881568\";\"小沙\";\"other\"\n\"1881568\";\"小沙镇\";\"other\"\n\"1884688\";\"Xiepu\";\"main\"\n\"1884688\";\"Chueh-tu-ssu\";\"other\"\n\"1884688\";\"Xiepuzhen\";\"other\"\n\"1884688\";\"澥浦\";\"other\"\n\"1884688\";\"澥浦镇\";\"other\"\n\"1885660\";\"Dingdian\";\"main\"\n\"1885660\";\"丁店\";\"other\"\n\"1885696\";\"Zhengyu\";\"main\"\n\"1885696\";\"Zhengyu Zhen\";\"other\"\n\"1885696\";\"正余\";\"other\"\n\"1885696\";\"正余镇\";\"other\"\n\"1885697\";\"Huolong\";\"main\"\n\"1885697\";\"Huo-lung-chen\";\"other\"\n\"1885697\";\"Huolong Zhen\";\"other\"\n\"1885697\";\"Huolongzhen\";\"other\"\n\"1885697\";\"货隆\";\"other\"\n\"1885697\";\"货隆镇\";\"other\"\n\"1885698\";\"Antou\";\"main\"\n\"1885698\";\"An-t'ou-chen\";\"other\"\n\"1885698\";\"An-t’ou-chen\";\"other\"\n\"1885698\";\"Antou Zhen\";\"other\"\n\"1885698\";\"Antouzhen\";\"other\"\n\"1885698\";\"Wanghao\";\"other\"\n\"1885698\";\"岸头\";\"other\"\n\"1885698\";\"岸头镇\";\"other\"\n\"1885698\";\"王浩\";\"other\"\n\"1885709\";\"Yangshiqiao\";\"main\"\n\"1885709\";\"Xingdong\";\"other\"\n\"1885709\";\"Xingdong Zhen\";\"other\"\n\"1885709\";\"兴东\";\"other\"\n\"1885709\";\"兴东镇\";\"other\"\n\"1885709\";\"杨世桥\";\"other\"\n\"1885823\";\"Jiangyou\";\"main\"\n\"1885912\";\"Xinjie\";\"main\"\n\"1885912\";\"Xinjie Zhen\";\"other\"\n\"1885912\";\"新街\";\"other\"\n\"1885912\";\"新街镇\";\"other\"\n\"1886026\";\"Sanxutou\";\"main\"\n\"1886026\";\"Xianfeng\";\"other\"\n\"1886026\";\"Xianfeng Zhen\";\"other\"\n\"1886026\";\"三圩头\";\"other\"\n\"1886026\";\"先锋\";\"other\"\n\"1886026\";\"先锋镇\";\"other\"\n\"1886046\";\"Pingdong\";\"main\"\n\"1886046\";\"Pingdong Zhen\";\"other\"\n\"1886046\";\"平东\";\"other\"\n\"1886046\";\"平东镇\";\"other\"\n\"1886064\";\"Yeyatan\";\"main\"\n\"1886064\";\"Xinlin\";\"other\"\n\"1886064\";\"新林\";\"other\"\n\"1886064\";\"野鸭滩\";\"other\"\n\"1886076\";\"Hekou\";\"main\"\n\"1886076\";\"Hekou Zhen\";\"other\"\n\"1886076\";\"河口\";\"other\"\n\"1886076\";\"河口镇\";\"other\"\n\"1886278\";\"Wanying\";\"main\"\n\"1886278\";\"Wanying Zhen\";\"other\"\n\"1886278\";\"万盈\";\"other\"\n\"1886278\";\"万盈镇\";\"other\"\n\"1886760\";\"Suzhou\";\"main\"\n\"1886760\";\"Su-chou\";\"other\"\n\"1886760\";\"Su-cou\";\"other\"\n\"1886760\";\"Su-čou\";\"other\"\n\"1886760\";\"Suchzhou\";\"other\"\n\"1886760\";\"To Chau\";\"other\"\n\"1886760\";\"Tô Châu\";\"other\"\n\"1886760\";\"Wu-hsien\";\"other\"\n\"1886760\";\"su zhou\";\"other\"\n\"1886760\";\"su zhou shi\";\"other\"\n\"1886760\";\"swjw\";\"other\"\n\"1886760\";\"Сучжоу\";\"other\"\n\"1886760\";\"سوجو\";\"other\"\n\"1886760\";\"سۇجۇ شەھىرى\";\"other\"\n\"1886760\";\"苏州\";\"other\"\n\"1886760\";\"苏州市\";\"other\"\n\"1886760\";\"蘇州\";\"other\"\n\"1886762\";\"Zhoushan Shi\";\"main\"\n\"1886762\";\"Chzhoushan'\";\"other\"\n\"1886762\";\"Dinghai\";\"other\"\n\"1886762\";\"Ting-hai\";\"other\"\n\"1886762\";\"Zhoushan\";\"other\"\n\"1886762\";\"Чжоушань\";\"other\"\n\"1886762\";\"舟山\";\"other\"\n\"1886762\";\"舟山市\";\"other\"\n\"1886840\";\"Goushan\";\"main\"\n\"1886840\";\"Goushan Jiedao\";\"other\"\n\"1886840\";\"Goushanzhen\";\"other\"\n\"1886840\";\"Kou-shan\";\"other\"\n\"1886840\";\"勾山\";\"other\"\n\"1886840\";\"勾山街道\";\"other\"\n\"1886840\";\"勾山镇\";\"other\"\n\"1887068\";\"Fuming\";\"main\"\n\"1887068\";\"Fuming Jiedao\";\"other\"\n\"1887068\";\"fu ming\";\"other\"\n\"1887068\";\"fu ming jie dao\";\"other\"\n\"1887068\";\"福明\";\"other\"\n\"1887068\";\"福明街道\";\"other\"\n\"1887070\";\"Shiqi\";\"main\"\n\"1887070\";\"Shih-ch'i\";\"other\"\n\"1887070\";\"Shih-ch’i\";\"other\"\n\"1887070\";\"Shiqi Zhen\";\"other\"\n\"1887070\";\"shi qi\";\"other\"\n\"1887070\";\"shi qi zhen\";\"other\"\n\"1887070\";\"石碶\";\"other\"\n\"1887070\";\"石碶镇\";\"other\"\n\"1887071\";\"Zhonggongmiao\";\"main\"\n\"1887071\";\"Zhonggongmiao Zhen\";\"other\"\n\"1887071\";\"zhong gong miao\";\"other\"\n\"1887071\";\"zhong gong miao zhen\";\"other\"\n\"1887071\";\"钟公庙\";\"other\"\n\"1887071\";\"钟公庙镇\";\"other\"\n\"1887078\";\"Xiaying\";\"main\"\n\"1887078\";\"Hsia-ying-chen\";\"other\"\n\"1887078\";\"Xiaying Zhen\";\"other\"\n\"1887078\";\"xia ying\";\"other\"\n\"1887078\";\"xia ying zhen\";\"other\"\n\"1887078\";\"下应\";\"other\"\n\"1887078\";\"下应镇\";\"other\"\n\"1887083\";\"Yunlong\";\"main\"\n\"1887083\";\"Yun-lung-ch'i-chen\";\"other\"\n\"1887083\";\"Yunlong Zhen\";\"other\"\n\"1887083\";\"Yunlongzhen\";\"other\"\n\"1887083\";\"Yün-lung-ch’i-chen\";\"other\"\n\"1887083\";\"yun long\";\"other\"\n\"1887083\";\"yun long zhen\";\"other\"\n\"1887083\";\"云龙\";\"other\"\n\"1887083\";\"云龙镇\";\"other\"\n\"1887101\";\"Dongwu\";\"main\"\n\"1887101\";\"Dongwu Zhen\";\"other\"\n\"1887101\";\"Tung-wu-chen\";\"other\"\n\"1887101\";\"dong wu\";\"other\"\n\"1887101\";\"dong wu zhen\";\"other\"\n\"1887101\";\"东吴\";\"other\"\n\"1887101\";\"东吴镇\";\"other\"\n\"1887171\";\"Qidong Yanchang\";\"main\"\n\"1887171\";\"Qidongyanchang\";\"other\"\n\"1887171\";\"启东盐场\";\"other\"\n\"1887177\";\"Jinhai\";\"main\"\n\"1887177\";\"近海\";\"other\"\n\"1887218\";\"Dajiahe\";\"main\"\n\"1887218\";\"Dajiahe Zhen\";\"other\"\n\"1887218\";\"Ta-chu-ho\";\"other\"\n\"1887218\";\"Ta-chü-ho\";\"other\"\n\"1887218\";\"da jia he\";\"other\"\n\"1887218\";\"da jia he zhen\";\"other\"\n\"1887218\";\"大佳何\";\"other\"\n\"1887218\";\"大佳何镇\";\"other\"\n\"1887674\";\"Sizhoutou\";\"main\"\n\"1887674\";\"Sizhoutou Zhen\";\"other\"\n\"1887674\";\"Sizhoutouzhen\";\"other\"\n\"1887674\";\"Ssu-chou-t'ou\";\"other\"\n\"1887674\";\"Ssu-chou-t’ou\";\"other\"\n\"1887674\";\"si zhou tou\";\"other\"\n\"1887674\";\"si zhou tou zhen\";\"other\"\n\"1887674\";\"泗洲头\";\"other\"\n\"1887674\";\"泗洲头镇\";\"other\"\n\"1887681\";\"Xinqiao\";\"main\"\n\"1887681\";\"Hsin-ch'iao-chen\";\"other\"\n\"1887681\";\"Hsin-ch’iao-chen\";\"other\"\n\"1887681\";\"Xinqiao Zhen\";\"other\"\n\"1887681\";\"xin qiao\";\"other\"\n\"1887681\";\"xin qiao zhen\";\"other\"\n\"1887681\";\"新桥\";\"other\"\n\"1887681\";\"新桥镇\";\"other\"\n\"1887715\";\"Tuci\";\"main\"\n\"1887715\";\"T'u-tz'u-chen\";\"other\"\n\"1887715\";\"Tuci Zhen\";\"other\"\n\"1887715\";\"T’u-tz’u-chen\";\"other\"\n\"1887715\";\"tu ci\";\"other\"\n\"1887715\";\"tu ci zhen\";\"other\"\n\"1887715\";\"涂茨\";\"other\"\n\"1887715\";\"涂茨镇\";\"other\"\n\"1887722\";\"Xianxiang\";\"main\"\n\"1887722\";\"Hsien-yang\";\"other\"\n\"1887722\";\"Xianxiang Zhen\";\"other\"\n\"1887722\";\"Xianyangzhen\";\"other\"\n\"1887722\";\"xian xiang\";\"other\"\n\"1887722\";\"xian xiang zhen\";\"other\"\n\"1887722\";\"贤庠\";\"other\"\n\"1887722\";\"贤庠镇\";\"other\"\n\"1887762\";\"Baifeng\";\"main\"\n\"1887762\";\"Baifeng Zhen\";\"other\"\n\"1887762\";\"Pai-feng-ts'un\";\"other\"\n\"1887762\";\"Pai-feng-ts’un\";\"other\"\n\"1887762\";\"bai feng\";\"other\"\n\"1887762\";\"bai feng zhen\";\"other\"\n\"1887762\";\"白峰\";\"other\"\n\"1887762\";\"白峰镇\";\"other\"\n\"1887772\";\"Xiapu\";\"main\"\n\"1887772\";\"Hsia-p'u-chen\";\"other\"\n\"1887772\";\"Hsia-p’u-chen\";\"other\"\n\"1887772\";\"Xiapu Zhen\";\"other\"\n\"1887772\";\"xia pu\";\"other\"\n\"1887772\";\"xia pu zhen\";\"other\"\n\"1887772\";\"霞浦\";\"other\"\n\"1887772\";\"霞浦镇\";\"other\"\n\"1887803\";\"Li’ao\";\"main\"\n\"1887803\";\"Li'ao\";\"ascii\"\n\"1887803\";\"Li-ao\";\"other\"\n\"1887803\";\"Meishan\";\"other\"\n\"1887803\";\"li ao\";\"other\"\n\"1887803\";\"mei shan\";\"other\"\n\"1887803\";\"梅山\";\"other\"\n\"1887803\";\"里岙\";\"other\"\n\"1887870\";\"Tianfen\";\"main\"\n\"1887870\";\"Tianfen Zhen\";\"other\"\n\"1887870\";\"天汾\";\"other\"\n\"1887870\";\"天汾镇\";\"other\"\n\"1887894\";\"Caobu\";\"main\"\n\"1887894\";\"Ts'ao-chia-fou\";\"other\"\n\"1887894\";\"Ts’ao-chia-fou\";\"other\"\n\"1887894\";\"曹埠\";\"other\"\n\"1887909\";\"Zhangjiayuan\";\"main\"\n\"1887909\";\"Chang-chia-yuan\";\"other\"\n\"1887909\";\"Chang-chia-yüan\";\"other\"\n\"1887909\";\"Huangang\";\"other\"\n\"1887909\";\"Huangang Zhen\";\"other\"\n\"1887909\";\"张家园\";\"other\"\n\"1887909\";\"环港\";\"other\"\n\"1887909\";\"环港镇\";\"other\"\n\"1887918\";\"Shajiazhuang\";\"main\"\n\"1887918\";\"Lingmin\";\"other\"\n\"1887918\";\"Sha-chia-chuang\";\"other\"\n\"1887918\";\"凌民\";\"other\"\n\"1887918\";\"沙家庄\";\"other\"\n\"1888069\";\"Wujie\";\"main\"\n\"1888069\";\"Wu-chieh-ch'iao\";\"other\"\n\"1888069\";\"Wu-chieh-ch’iao\";\"other\"\n\"1888069\";\"Wujie Zhen\";\"other\"\n\"1888069\";\"五接\";\"other\"\n\"1888069\";\"五接镇\";\"other\"\n\"1892640\";\"Lincheng Jiedao\";\"main\"\n\"1892640\";\"Linchengzhen\";\"other\"\n\"1892640\";\"临城街道\";\"other\"\n\"1892640\";\"临城镇\";\"other\"\n\"1892721\";\"Jiguan\";\"main\"\n\"1892721\";\"Chi-kuan-chiao-ts'un\";\"other\"\n\"1892721\";\"Chi-kuan-chiao-ts’un\";\"other\"\n\"1892721\";\"Dengbu\";\"other\"\n\"1892721\";\"Dengbuxiang\";\"other\"\n\"1892721\";\"登步\";\"other\"\n\"1892721\";\"登步乡\";\"other\"\n\"1892721\";\"鸡冠\";\"other\"\n\"1892727\";\"Gongqian\";\"main\"\n\"1892727\";\"Kuan-chien-ts'un\";\"other\"\n\"1892727\";\"Kuan-chien-ts’un\";\"other\"\n\"1892727\";\"Taohua\";\"other\"\n\"1892727\";\"Taohua Zhen\";\"other\"\n\"1892727\";\"Taohuazhen\";\"other\"\n\"1892727\";\"公前\";\"other\"\n\"1892727\";\"桃花\";\"other\"\n\"1892727\";\"桃花镇\";\"other\"\n\"1893246\";\"Wangniudun\";\"main\"\n\"1893246\";\"Wang-niu-tun\";\"other\"\n\"1893246\";\"Wanniudun Zhen\";\"other\"\n\"1893246\";\"wang niu dun\";\"other\"\n\"1893246\";\"望牛墩\";\"other\"\n\"1894694\";\"Putuoshan\";\"main\"\n\"1894694\";\"Putuoshan Zhen\";\"other\"\n\"1894694\";\"普陀山\";\"other\"\n\"1894694\";\"普陀山镇\";\"other\"\n\"1894758\";\"Dadonga’o\";\"main\"\n\"1894758\";\"Dadonga'o\";\"ascii\"\n\"1894758\";\"Zhujiajian\";\"other\"\n\"1894758\";\"Zhujiajian Zhen\";\"other\"\n\"1894758\";\"大洞岙\";\"other\"\n\"1894758\";\"朱家尖\";\"other\"\n\"1894758\";\"朱家尖镇\";\"other\"\n\"1895090\";\"Jiujianfang\";\"main\"\n\"1895090\";\"Mu-chia-yen\";\"other\"\n\"1895090\";\"jiu jian fang\";\"other\"\n\"1895090\";\"九间房\";\"other\"\n\"1895261\";\"Zhangguanying\";\"main\"\n\"1895261\";\"Chang-kuan-ying\";\"other\"\n\"1895261\";\"Zhangguanying Zhen\";\"other\"\n\"1895261\";\"张官营\";\"other\"\n\"1895261\";\"张官营镇\";\"other\"\n\"1895284\";\"Zhangpan\";\"main\"\n\"1895284\";\"Chang-p'an-chen\";\"other\"\n\"1895284\";\"Chang-p’an-chen\";\"other\"\n\"1895284\";\"Zhangpan Zhen\";\"other\"\n\"1895284\";\"张潘\";\"other\"\n\"1895284\";\"张潘镇\";\"other\"\n\"1895288\";\"Duqu\";\"main\"\n\"1895288\";\"Duqu Zhen\";\"other\"\n\"1895288\";\"Tu-chieh\";\"other\"\n\"1895288\";\"杜曲\";\"other\"\n\"1895288\";\"杜曲镇\";\"other\"\n\"1895356\";\"Liuquan\";\"main\"\n\"1895356\";\"Liu-ch'uan-p'u\";\"other\"\n\"1895356\";\"Liu-ch’üan-p’u\";\"other\"\n\"1895356\";\"Liuquanpu\";\"other\"\n\"1895356\";\"liu quan\";\"other\"\n\"1895356\";\"liu quan pu\";\"other\"\n\"1895356\";\"柳泉\";\"other\"\n\"1895356\";\"柳泉铺\";\"other\"\n\"1896758\";\"Quantang\";\"main\"\n\"1896758\";\"Quantangzhen\";\"other\"\n\"1896758\";\"全塘\";\"other\"\n\"1896758\";\"全塘镇\";\"other\"\n\"1897460\";\"Maoshan\";\"main\"\n\"1897460\";\"Mao-shan-ts'un\";\"other\"\n\"1897460\";\"Mao-shan-ts’un\";\"other\"\n\"1897460\";\"Maoshan Zhen\";\"other\"\n\"1897460\";\"mao shan\";\"other\"\n\"1897460\";\"茅山\";\"other\"\n\"1897460\";\"茅山镇\";\"other\"\n\"1897924\";\"Dushan\";\"main\"\n\"1897924\";\"Gaojian\";\"other\"\n\"1897924\";\"gao jian\";\"other\"\n\"1897924\";\"独山\";\"other\"\n\"1897924\";\"高枧\";\"other\"\n\"1898062\";\"Tangzi\";\"main\"\n\"1898062\";\"T'ang-tzu-chen\";\"other\"\n\"1898062\";\"Tangzizhen\";\"other\"\n\"1898062\";\"T’ang-tzu-chen\";\"other\"\n\"1898062\";\"唐子\";\"other\"\n\"1898062\";\"唐子镇\";\"other\"\n\"1898130\";\"Yangjian\";\"main\"\n\"1898130\";\"Yang-chien\";\"other\"\n\"1898130\";\"Yang-chien-ling\";\"other\"\n\"1898130\";\"羊尖\";\"other\"\n\"1898207\";\"Xinzhuang\";\"main\"\n\"1898207\";\"Hsin-chuang-chen\";\"other\"\n\"1898207\";\"辛庄\";\"other\"\n\"1898302\";\"Weitang\";\"main\"\n\"1898302\";\"Wei-ching-t'ang-chen\";\"other\"\n\"1898302\";\"Wei-ching-t’ang-chen\";\"other\"\n\"1898302\";\"渭塘\";\"other\"\n\"1898310\";\"Taiping\";\"main\"\n\"1898310\";\"T'ai-p'ing-ch'iao-chen\";\"other\"\n\"1898310\";\"T’ai-p’ing-ch’iao-chen\";\"other\"\n\"1898310\";\"太平\";\"other\"\n\"1898346\";\"Fengqiao\";\"main\"\n\"1898346\";\"Feng-ch'iao-chen\";\"other\"\n\"1898346\";\"Feng-ch’iao-chen\";\"other\"\n\"1898346\";\"Fengqiao Jiedao\";\"other\"\n\"1898346\";\"枫桥\";\"other\"\n\"1898359\";\"Mudu\";\"main\"\n\"1898359\";\"Mu-tu\";\"other\"\n\"1898359\";\"Mu-tu-chen\";\"other\"\n\"1898359\";\"Муду\";\"other\"\n\"1898359\";\"木渎\";\"other\"\n\"1898446\";\"Xinqiao\";\"main\"\n\"1898446\";\"Nan-hsin-ch'iao\";\"other\"\n\"1898446\";\"Nan-hsin-ch’iao\";\"other\"\n\"1898446\";\"新桥\";\"other\"\n\"1898493\";\"Tongli\";\"main\"\n\"1898493\";\"T'ung-li\";\"other\"\n\"1898493\";\"T'ung-li-chen\";\"other\"\n\"1898493\";\"Tongli Zhen\";\"other\"\n\"1898493\";\"T’ung-li\";\"other\"\n\"1898493\";\"T’ung-li-chen\";\"other\"\n\"1898493\";\"同里\";\"other\"\n\"1898494\";\"Songling\";\"main\"\n\"1898494\";\"Songlingzhen\";\"other\"\n\"1898494\";\"Sunlin\";\"other\"\n\"1898494\";\"Wu-chiang\";\"other\"\n\"1898494\";\"Wukiang\";\"other\"\n\"1898494\";\"Сунлин\";\"other\"\n\"1898494\";\"松陵\";\"other\"\n\"1898548\";\"Hengjing\";\"main\"\n\"1898548\";\"Heng-ching-chen\";\"other\"\n\"1898548\";\"横泾\";\"other\"\n\"1898565\";\"Shadili\";\"main\"\n\"1898565\";\"Changbai\";\"other\"\n\"1898565\";\"沙地里\";\"other\"\n\"1898565\";\"长白\";\"other\"\n\"1898581\";\"Yuandun\";\"main\"\n\"1898581\";\"Xiushan\";\"other\"\n\"1898581\";\"圆墩\";\"other\"\n\"1898581\";\"秀山\";\"other\"\n\"1898597\";\"Beichan\";\"main\"\n\"1898597\";\"北蝉\";\"other\"\n\"1898634\";\"Yancang\";\"main\"\n\"1898634\";\"Yancang Jiedao\";\"other\"\n\"1898634\";\"盐仓\";\"other\"\n\"1898634\";\"盐仓街道\";\"other\"\n\"1898675\";\"Daixi\";\"main\"\n\"1898675\";\"Daixi Zhen\";\"other\"\n\"1898675\";\"岱西\";\"other\"\n\"1898675\";\"岱西镇\";\"other\"\n\"1898693\";\"Caojia\";\"main\"\n\"1898693\";\"Daidong Zhen\";\"other\"\n\"1898693\";\"Daidongzhen\";\"other\"\n\"1898693\";\"Ts'ao-chia\";\"other\"\n\"1898693\";\"Ts’ao-chia\";\"other\"\n\"1898693\";\"岱东镇\";\"other\"\n\"1898693\";\"曹家\";\"other\"\n\"1898799\";\"Dazhan\";\"main\"\n\"1898799\";\"Zhanmao\";\"other\"\n\"1898799\";\"Zhanmao Zhen\";\"other\"\n\"1898799\";\"大展\";\"other\"\n\"1898799\";\"展茅\";\"other\"\n\"1898799\";\"展茅镇\";\"other\"\n\"1898861\";\"Liutangting\";\"main\"\n\"1898861\";\"Chongshou\";\"other\"\n\"1898861\";\"Chongshou Zhen\";\"other\"\n\"1898861\";\"六塘亭\";\"other\"\n\"1898861\";\"崇寿\";\"other\"\n\"1898861\";\"崇寿镇\";\"other\"\n\"1898905\";\"Qiaotou\";\"main\"\n\"1898905\";\"桥头\";\"other\"\n\"1898918\";\"Haiyanmiao\";\"main\"\n\"1898918\";\"Fuhai\";\"other\"\n\"1898918\";\"Hai-yen-miao\";\"other\"\n\"1898918\";\"海晏\";\"other\"\n\"1898918\";\"海晏庙\";\"other\"\n\"1898918\";\"附海镇\";\"other\"\n\"1898930\";\"Shengshan\";\"main\"\n\"1898930\";\"Miaowan\";\"other\"\n\"1898930\";\"Sheng-shan-chen\";\"other\"\n\"1898930\";\"Shengshan Zhen\";\"other\"\n\"1898930\";\"庙湾\";\"other\"\n\"1898930\";\"胜山\";\"other\"\n\"1898930\";\"胜山镇\";\"other\"\n\"1898934\";\"Kandun\";\"main\"\n\"1898934\";\"K'an-tun-chen\";\"other\"\n\"1898934\";\"Kandong\";\"other\"\n\"1898934\";\"Kandun Jiedao\";\"other\"\n\"1898934\";\"Kandun Zhen\";\"other\"\n\"1898934\";\"K’an-tun-chen\";\"other\"\n\"1898934\";\"坎墩\";\"other\"\n\"1898934\";\"坎墩街道\";\"other\"\n\"1898934\";\"坎墩镇\";\"other\"\n\"1898962\";\"Zhangqi\";\"main\"\n\"1898962\";\"Zhangqizhen\";\"other\"\n\"1898962\";\"掌起\";\"other\"\n\"1898962\";\"掌起镇\";\"other\"\n\"1899052\";\"Sanqishi\";\"main\"\n\"1899052\";\"San-ch'i-shih\";\"other\"\n\"1899052\";\"San-ch’i-shih\";\"other\"\n\"1899052\";\"Sanqishi Zhen\";\"other\"\n\"1899052\";\"Sanqishizhen\";\"other\"\n\"1899052\";\"三七市\";\"other\"\n\"1899052\";\"三七市镇\";\"other\"\n\"1899293\";\"Laojunpo\";\"main\"\n\"1899293\";\"Laojun\";\"other\"\n\"1899293\";\"老君坡\";\"other\"\n\"1899294\";\"Qingjiangyi\";\"main\"\n\"1899294\";\"Qingjiang\";\"other\"\n\"1899294\";\"青江驿\";\"other\"\n\"1899296\";\"Shixiang\";\"main\"\n\"1899296\";\"Ching-shui-kung\";\"other\"\n\"1899296\";\"Qingshui\";\"other\"\n\"1899296\";\"Qingshui Xiang\";\"other\"\n\"1899296\";\"清水乡\";\"other\"\n\"1899296\";\"石巷\";\"other\"\n\"1899297\";\"Baizhuangji\";\"main\"\n\"1899297\";\"Baizhuang\";\"other\"\n\"1899297\";\"Baizhuang Xiang\";\"other\"\n\"1899297\";\"白庄\";\"other\"\n\"1899297\";\"白庄乡\";\"other\"\n\"1899297\";\"白庄集\";\"other\"\n\"1899300\";\"Houjiachuan\";\"main\"\n\"1899300\";\"Houchuan\";\"other\"\n\"1899300\";\"侯家川\";\"other\"\n\"1899301\";\"Xindian\";\"main\"\n\"1899301\";\"Xindian Xiang\";\"other\"\n\"1899301\";\"新店\";\"other\"\n\"1899301\";\"新店乡\";\"other\"\n\"1899313\";\"Shaozhai\";\"main\"\n\"1899313\";\"Shaozhai Zhen\";\"other\"\n\"1899313\";\"邵寨\";\"other\"\n\"1899313\";\"邵寨镇\";\"other\"\n\"1899319\";\"Weixin\";\"main\"\n\"1899319\";\"维新\";\"other\"\n\"1899320\";\"Sancha\";\"main\"\n\"1899320\";\"三岔\";\"other\"\n\"1899328\";\"Taibai\";\"main\"\n\"1899328\";\"太白\";\"other\"\n\"1899332\";\"Zhaocun\";\"main\"\n\"1899332\";\"Zhaocun Zhen\";\"other\"\n\"1899332\";\"zhao cun\";\"other\"\n\"1899332\";\"zhao cun zhen\";\"other\"\n\"1899332\";\"赵村\";\"other\"\n\"1899332\";\"赵村镇\";\"other\"\n\"1899334\";\"Xipo\";\"main\"\n\"1899334\";\"西坡\";\"other\"\n\"1899335\";\"Dahedian\";\"main\"\n\"1899335\";\"大河店\";\"other\"\n\"1899338\";\"Huama\";\"main\"\n\"1899338\";\"化马\";\"other\"\n\"1899341\";\"Shimen\";\"main\"\n\"1899341\";\"石门\";\"other\"\n\"1899343\";\"Yangtian\";\"main\"\n\"1899343\";\"秧田\";\"other\"\n\"1899344\";\"Baiyang\";\"main\"\n\"1899344\";\"白杨\";\"other\"\n\"1899351\";\"Tielou\";\"main\"\n\"1899351\";\"Tielou Zangzuxiang\";\"other\"\n\"1899351\";\"铁楼\";\"other\"\n\"1899351\";\"铁楼藏族乡\";\"other\"\n\"1901233\";\"Xiliguantun\";\"main\"\n\"1901233\";\"Li-kuan-t'un\";\"other\"\n\"1901233\";\"Li-kuan-t’un\";\"other\"\n\"1901872\";\"Lufeng\";\"main\"\n\"1901872\";\"Lu-feng-ts'un\";\"other\"\n\"1901872\";\"Lu-feng-ts’un\";\"other\"\n\"1901872\";\"Zhushan\";\"other\"\n\"1901872\";\"lu feng\";\"other\"\n\"1901872\";\"禄丰\";\"other\"\n\"1901903\";\"Xiaojiezi\";\"main\"\n\"1901903\";\"Luju\";\"other\"\n\"1901903\";\"Luju Zhen\";\"other\"\n\"1901903\";\"lu ju\";\"other\"\n\"1901903\";\"lu ju zhen\";\"other\"\n\"1901903\";\"xiao jie zi\";\"other\"\n\"1901903\";\"小街子\";\"other\"\n\"1901903\";\"路居\";\"other\"\n\"1901903\";\"路居镇\";\"other\"\n\"1901904\";\"Sijie\";\"main\"\n\"1901904\";\"Sijie Zhen\";\"other\"\n\"1901904\";\"si jie\";\"other\"\n\"1901904\";\"si jie zhen\";\"other\"\n\"1901904\";\"四街\";\"other\"\n\"1901904\";\"四街镇\";\"other\"\n\"1902418\";\"Huai’an\";\"main\"\n\"1902418\";\"Huai'an\";\"ascii\"\n\"1902418\";\"Huai'an Xiang\";\"other\"\n\"1902418\";\"Huai’an Xiang\";\"other\"\n\"1902418\";\"怀安\";\"other\"\n\"1902418\";\"怀安乡\";\"other\"\n\"1905307\";\"Xikengkou\";\"main\"\n\"1905307\";\"Hsi-k'eng-k'ou\";\"other\"\n\"1905307\";\"Hsi-k’eng-k’ou\";\"other\"\n\"1905307\";\"Qixi\";\"other\"\n\"1905307\";\"Qixi Zhen\";\"other\"\n\"1905307\";\"Xikeng Zhen\";\"other\"\n\"1905307\";\"qi xi\";\"other\"\n\"1905307\";\"qi xi zhen\";\"other\"\n\"1905307\";\"xi keng kou\";\"other\"\n\"1905307\";\"西坑口\";\"other\"\n\"1905307\";\"齐溪\";\"other\"\n\"1905307\";\"齐溪镇\";\"other\"\n\"1905324\";\"Zhukou\";\"main\"\n\"1905324\";\"Chu-k'ou-chen\";\"other\"\n\"1905324\";\"Chu-k’ou-chen\";\"other\"\n\"1905324\";\"Zhukou Zhen\";\"other\"\n\"1905324\";\"竹口\";\"other\"\n\"1905324\";\"竹口镇\";\"other\"\n\"1905806\";\"Runsonglaozhai\";\"main\"\n\"1905806\";\"Jun-song\";\"other\"\n\"1905806\";\"Runsong\";\"other\"\n\"1906090\";\"Dundong\";\"main\"\n\"1906090\";\"Tun-tung\";\"other\"\n\"1906137\";\"Gaowu\";\"main\"\n\"1906137\";\"Kao-wu\";\"other\"\n\"1906153\";\"Pingjiang\";\"main\"\n\"1906153\";\"P'ing-chiang\";\"other\"\n\"1906153\";\"Pingjiangkou\";\"other\"\n\"1906153\";\"P’ing-chiang\";\"other\"\n\"1907590\";\"Baiyatai\";\"main\"\n\"1907590\";\"Baiyatai Xiang\";\"other\"\n\"1907590\";\"白崖台\";\"other\"\n\"1907590\";\"白崖台乡\";\"other\"\n\"1907972\";\"Haodi\";\"main\"\n\"1907972\";\"好地\";\"other\"\n\"1907974\";\"Jiangkou\";\"main\"\n\"1907974\";\"江口\";\"other\"\n\"1907978\";\"Leiwang\";\"main\"\n\"1907978\";\"雷王\";\"other\"\n\"1907979\";\"Liuping\";\"main\"\n\"1907979\";\"刘坪\";\"other\"\n\"1907996\";\"Suhe\";\"main\"\n\"1907996\";\"苏合\";\"other\"\n\"1908001\";\"Wangyin\";\"main\"\n\"1908001\";\"王尹\";\"other\"\n\"1908010\";\"Xinglong\";\"main\"\n\"1908010\";\"兴隆\";\"other\"\n\"1908504\";\"Dahekan\";\"main\"\n\"1908504\";\"Dahekan Zhen\";\"other\"\n\"1908504\";\"Dahekanzhen\";\"other\"\n\"1908504\";\"大河坎\";\"other\"\n\"1908504\";\"大河坎镇\";\"other\"\n\"1908845\";\"Yangying\";\"main\"\n\"1908845\";\"Yanying Zhen\";\"other\"\n\"1908845\";\"yang ying\";\"other\"\n\"1908845\";\"yang ying zhen\";\"other\"\n\"1908845\";\"杨营\";\"other\"\n\"1908845\";\"杨营镇\";\"other\"\n\"1908846\";\"Dafengying\";\"main\"\n\"1908846\";\"da feng ying\";\"other\"\n\"1908846\";\"大冯营\";\"other\"\n\"1908853\";\"Qutun\";\"main\"\n\"1908853\";\"Qutun Zhen\";\"other\"\n\"1908853\";\"qu tun\";\"other\"\n\"1908853\";\"qu tun zhen\";\"other\"\n\"1908853\";\"曲屯\";\"other\"\n\"1908853\";\"曲屯镇\";\"other\"\n\"1908860\";\"Wanggang\";\"main\"\n\"1908860\";\"wang gang\";\"other\"\n\"1908860\";\"王岗\";\"other\"\n\"1908861\";\"Luyi\";\"main\"\n\"1908861\";\"Luyi Zhen\";\"other\"\n\"1908861\";\"Luyijie\";\"other\"\n\"1908861\";\"lu yi\";\"other\"\n\"1908861\";\"lu yi zhen\";\"other\"\n\"1908861\";\"卢医\";\"other\"\n\"1908861\";\"卢医镇\";\"other\"\n\"1908867\";\"Xiezhuang\";\"main\"\n\"1908867\";\"xie zhuang\";\"other\"\n\"1908867\";\"谢庄\";\"other\"\n\"1908871\";\"Xuanqiao\";\"main\"\n\"1908871\";\"quan qiao\";\"other\"\n\"1908871\";\"券桥\";\"other\"\n\"1908893\";\"Guangyang\";\"main\"\n\"1908893\";\"Guangyangzhen\";\"other\"\n\"1908893\";\"guang yang\";\"other\"\n\"1908893\";\"guang yang zhen\";\"other\"\n\"1908893\";\"广阳\";\"other\"\n\"1908893\";\"广阳镇\";\"other\"\n\"1908895\";\"Yuandianhui\";\"main\"\n\"1908895\";\"Yuandianhuizuxiang\";\"other\"\n\"1908895\";\"yuan dian hui\";\"other\"\n\"1908895\";\"袁店回\";\"other\"\n\"1908952\";\"Jizhong\";\"main\"\n\"1908952\";\"ji zhong\";\"other\"\n\"1908952\";\"鸡冢\";\"other\"\n\"1908957\";\"Xiongbei\";\"main\"\n\"1908957\";\"xiong bei\";\"other\"\n\"1908957\";\"熊背\";\"other\"\n\"1908960\";\"Sikeshu\";\"main\"\n\"1908960\";\"si ke shu\";\"other\"\n\"1908960\";\"四棵树\";\"other\"\n\"1908976\";\"Zhangdian\";\"main\"\n\"1908976\";\"zhang dian\";\"other\"\n\"1908976\";\"张店\";\"other\"\n\"1908997\";\"Zhangbaqiao\";\"main\"\n\"1908997\";\"Zhangbaqiaozhen\";\"other\"\n\"1908997\";\"zhang ba qiao\";\"other\"\n\"1908997\";\"zhang ba qiao zhen\";\"other\"\n\"1908997\";\"张八桥\";\"other\"\n\"1908997\";\"张八桥镇\";\"other\"\n\"1909000\";\"Guanyinsi\";\"main\"\n\"1909000\";\"guan yin si\";\"other\"\n\"1909000\";\"观音寺\";\"other\"\n\"1909421\";\"Liuge\";\"main\"\n\"1909421\";\"Liuge Xiang\";\"other\"\n\"1909421\";\"刘阁\";\"other\"\n\"1909421\";\"刘阁乡\";\"other\"\n\"1909475\";\"Gaodian\";\"main\"\n\"1909475\";\"gao dian\";\"other\"\n\"1909475\";\"高店\";\"other\"\n\"1909476\";\"Shuangmiaojie\";\"main\"\n\"1909476\";\"shuang miao jie\";\"other\"\n\"1909476\";\"双庙街\";\"other\"\n\"1909481\";\"Yangjiaji\";\"main\"\n\"1909481\";\"yang jia ji\";\"other\"\n\"1909481\";\"杨家集\";\"other\"\n\"1909488\";\"Fuzhuang\";\"main\"\n\"1909488\";\"fu zhuang\";\"other\"\n\"1909488\";\"付庄\";\"other\"\n\"1909504\";\"Laohe\";\"main\"\n\"1909504\";\"lao he\";\"other\"\n\"1909504\";\"老河\";\"other\"\n\"1909627\";\"Xiaofayi\";\"main\"\n\"1909627\";\"小法仪\";\"other\"\n\"1909635\";\"Wuzhangyuan\";\"main\"\n\"1909635\";\"Wuzhangyuan Zhen\";\"other\"\n\"1909635\";\"五丈原\";\"other\"\n\"1909635\";\"五丈原镇\";\"other\"\n\"1909636\";\"Majia\";\"main\"\n\"1909636\";\"Majia Zhen\";\"other\"\n\"1909636\";\"马家\";\"other\"\n\"1909636\";\"马家镇\";\"other\"\n\"1909644\";\"Zhaogong\";\"main\"\n\"1909644\";\"Shaogong\";\"other\"\n\"1909644\";\"Zhaogong Zhen\";\"other\"\n\"1909644\";\"召公\";\"other\"\n\"1909644\";\"召公镇\";\"other\"\n\"1909649\";\"Jingdang\";\"main\"\n\"1909649\";\"京当\";\"other\"\n\"1909653\";\"Meiganqiao\";\"main\"\n\"1909653\";\"Meiganqiao Zhen\";\"other\"\n\"1909653\";\"糜杆桥\";\"other\"\n\"1909653\";\"糜杆桥镇\";\"other\"\n\"1909659\";\"Hanfeng\";\"main\"\n\"1909659\";\"汉封\";\"other\"\n\"1909663\";\"Cuijiatou\";\"main\"\n\"1909663\";\"Cuijiatou Zhen\";\"other\"\n\"1909663\";\"崔家头\";\"other\"\n\"1909663\";\"崔家头镇\";\"other\"\n\"1909669\";\"Zhangjiayuan\";\"main\"\n\"1909669\";\"Zhangjiayuan Zhen\";\"other\"\n\"1909669\";\"张家塬\";\"other\"\n\"1909669\";\"张家塬镇\";\"other\"\n\"1909683\";\"Pingyao\";\"main\"\n\"1909683\";\"平遥\";\"other\"\n\"1910047\";\"Xiabeisi\";\"main\"\n\"1910047\";\"xia bei si\";\"other\"\n\"1910047\";\"下碑寺\";\"other\"\n\"1910053\";\"Huangshankou\";\"main\"\n\"1910053\";\"Huangshan\";\"other\"\n\"1910053\";\"huang shan kou\";\"other\"\n\"1910053\";\"黄山口\";\"other\"\n\"1910073\";\"Yangfeng\";\"main\"\n\"1910073\";\"Yangfeng Xiang\";\"other\"\n\"1910073\";\"阳丰\";\"other\"\n\"1910073\";\"阳丰乡\";\"other\"\n\"1910085\";\"Shenzhai\";\"main\"\n\"1910085\";\"Shenzhai Xiang\";\"other\"\n\"1910085\";\"沈寨\";\"other\"\n\"1910085\";\"沈寨乡\";\"other\"\n\"1910086\";\"Huaishu\";\"main\"\n\"1910086\";\"Huaishu Xiang\";\"other\"\n\"1910086\";\"槐树\";\"other\"\n\"1910086\";\"槐树乡\";\"other\"\n\"1910089\";\"Jiudian\";\"main\"\n\"1910089\";\"Jiudian Xiang\";\"other\"\n\"1910089\";\"酒店\";\"other\"\n\"1910089\";\"酒店乡\";\"other\"\n\"1910091\";\"Yangzhuang\";\"main\"\n\"1910091\";\"Zhuzhuang\";\"other\"\n\"1910091\";\"yang zhuang\";\"other\"\n\"1910091\";\"杨庄\";\"other\"\n\"1910099\";\"Lumiao\";\"main\"\n\"1910099\";\"Lumiao Xiang\";\"other\"\n\"1910099\";\"芦庙\";\"other\"\n\"1910099\";\"芦庙乡\";\"other\"\n\"1910101\";\"Yangzhuang\";\"main\"\n\"1910101\";\"Yangzhuang Xiang\";\"other\"\n\"1910101\";\"杨庄\";\"other\"\n\"1910101\";\"杨庄乡\";\"other\"\n\"1910102\";\"Zhuantan\";\"main\"\n\"1910102\";\"Zhuantan Xiang\";\"other\"\n\"1910102\";\"专探\";\"other\"\n\"1910102\";\"专探乡\";\"other\"\n\"1910104\";\"Miaojie\";\"main\"\n\"1910104\";\"miao jie\";\"other\"\n\"1910104\";\"庙街\";\"other\"\n\"1910107\";\"Tandian\";\"main\"\n\"1910107\";\"Tandian Xiang\";\"other\"\n\"1910107\";\"谭店\";\"other\"\n\"1910107\";\"谭店乡\";\"other\"\n\"1910110\";\"Shiling\";\"main\"\n\"1910110\";\"Shiling Zhen\";\"other\"\n\"1910110\";\"师灵\";\"other\"\n\"1910110\";\"师灵镇\";\"other\"\n\"1910116\";\"Wenfeng\";\"main\"\n\"1910116\";\"wen feng\";\"other\"\n\"1910116\";\"文峰\";\"other\"\n\"1910117\";\"Xin’an\";\"main\"\n\"1910117\";\"Xin'an\";\"ascii\"\n\"1910117\";\"Qin'an\";\"other\"\n\"1910117\";\"Qin’an\";\"other\"\n\"1910117\";\"Xin'an Zhen\";\"other\"\n\"1910117\";\"Xin’an Zhen\";\"other\"\n\"1910117\";\"xin an\";\"other\"\n\"1910117\";\"辛安\";\"other\"\n\"1910123\";\"Songji\";\"main\"\n\"1910123\";\"Songji Xiang\";\"other\"\n\"1910123\";\"宋集\";\"other\"\n\"1910123\";\"宋集乡\";\"other\"\n\"1910132\";\"Longquan\";\"main\"\n\"1910132\";\"long quan\";\"other\"\n\"1910132\";\"龙泉\";\"other\"\n\"1910136\";\"Jiangdian\";\"main\"\n\"1910136\";\"jiang dian\";\"other\"\n\"1910136\";\"姜店\";\"other\"\n\"1910138\";\"Macun\";\"main\"\n\"1910138\";\"ma cun\";\"other\"\n\"1910138\";\"马村\";\"other\"\n\"1910139\";\"Mazhuang\";\"main\"\n\"1910139\";\"Mazhuang Huizuxiang\";\"other\"\n\"1910139\";\"ma zhuang\";\"other\"\n\"1910139\";\"ma zhuang hui zu xiang\";\"other\"\n\"1910139\";\"马庄\";\"other\"\n\"1910139\";\"马庄回族乡\";\"other\"\n\"1910147\";\"Shuizhai\";\"main\"\n\"1910147\";\"shui zhai\";\"other\"\n\"1910147\";\"水寨\";\"other\"\n\"1910150\";\"Taiwei\";\"main\"\n\"1910150\";\"Taiwei Zhen\";\"other\"\n\"1910150\";\"tai wei\";\"other\"\n\"1910150\";\"太尉\";\"other\"\n\"1910151\";\"Rendian\";\"main\"\n\"1910151\";\"Rendian Zhen\";\"other\"\n\"1910151\";\"ren dian\";\"other\"\n\"1910151\";\"任店\";\"other\"\n\"1910151\";\"任店镇\";\"other\"\n\"1910153\";\"Houji\";\"main\"\n\"1910153\";\"hou ji\";\"other\"\n\"1910153\";\"侯集\";\"other\"\n\"1910154\";\"Gunziying\";\"main\"\n\"1910154\";\"Gunziying Xiang\";\"other\"\n\"1910154\";\"磙子营\";\"other\"\n\"1910154\";\"磙子营乡\";\"other\"\n\"1910155\";\"Dengli\";\"main\"\n\"1910155\";\"deng li\";\"other\"\n\"1910155\";\"邓李\";\"other\"\n\"1910157\";\"Zhanghua\";\"main\"\n\"1910157\";\"zhang hua\";\"other\"\n\"1910157\";\"章化\";\"other\"\n\"1910160\";\"Zunhuadian\";\"main\"\n\"1910160\";\"Zunhuadian Zhen\";\"other\"\n\"1910160\";\"zun hua dian\";\"other\"\n\"1910160\";\"遵化店\";\"other\"\n\"1910162\";\"Caozhen\";\"main\"\n\"1910162\";\"cao zhen\";\"other\"\n\"1910162\";\"曹镇\";\"other\"\n\"1910165\";\"Hongzhuangyang\";\"main\"\n\"1910165\";\"hong zhuang yang\";\"other\"\n\"1910165\";\"洪庄杨\";\"other\"\n\"1910169\";\"Donggaohuang\";\"main\"\n\"1910169\";\"dong gao huang\";\"other\"\n\"1910169\";\"东高皇\";\"other\"\n\"1910170\";\"Jiaodian\";\"main\"\n\"1910170\";\"Jiaodian Zhen\";\"other\"\n\"1910170\";\"jiao dian\";\"other\"\n\"1910170\";\"焦店\";\"other\"\n\"1910171\";\"Huangdimiao\";\"main\"\n\"1910171\";\"Huangdimiao Xiang\";\"other\"\n\"1910171\";\"皇帝庙\";\"other\"\n\"1910171\";\"皇帝庙乡\";\"other\"\n\"1910172\";\"Taichen\";\"main\"\n\"1910172\";\"Taichen Zhen\";\"other\"\n\"1910172\";\"台陈\";\"other\"\n\"1910172\";\"台陈镇\";\"other\"\n\"1910177\";\"Lizhuang\";\"main\"\n\"1910177\";\"Lizhuang Xiang\";\"other\"\n\"1910177\";\"李庄\";\"other\"\n\"1910177\";\"李庄乡\";\"other\"\n\"1910178\";\"Yangzhuang\";\"main\"\n\"1910178\";\"Yangzhuang Zhen\";\"other\"\n\"1910178\";\"杨庄\";\"other\"\n\"1910178\";\"杨庄镇\";\"other\"\n\"1910179\";\"Fanhu\";\"main\"\n\"1910179\";\"fan hu\";\"other\"\n\"1910179\";\"范湖\";\"other\"\n\"1910180\";\"Juling\";\"main\"\n\"1910180\";\"Juling Zhen\";\"other\"\n\"1910180\";\"巨陵\";\"other\"\n\"1910180\";\"巨陵镇\";\"other\"\n\"1910181\";\"Zhouzhuang\";\"main\"\n\"1910181\";\"Zhouzhuang Zhen\";\"other\"\n\"1910181\";\"周庄\";\"other\"\n\"1910181\";\"周庄镇\";\"other\"\n\"1910183\";\"Guxiang\";\"main\"\n\"1910183\";\"Guxiang Xiang\";\"other\"\n\"1910183\";\"固厢\";\"other\"\n\"1910183\";\"固厢乡\";\"other\"\n\"1910184\";\"Shilipu\";\"main\"\n\"1910184\";\"shi li pu\";\"other\"\n\"1910184\";\"十里铺\";\"other\"\n\"1910186\";\"Yaozhuang\";\"main\"\n\"1910186\";\"Yaozhuang Huizuxiang\";\"other\"\n\"1910186\";\"yao zhuang\";\"other\"\n\"1910186\";\"yao zhuang hui zu xiang\";\"other\"\n\"1910186\";\"姚庄\";\"other\"\n\"1910186\";\"姚庄回族乡\";\"other\"\n\"1910188\";\"Kuzhuang\";\"main\"\n\"1910188\";\"Xiku\";\"other\"\n\"1910188\";\"ku zhuang\";\"other\"\n\"1910188\";\"库庄\";\"other\"\n\"1910191\";\"Xiaoqi\";\"main\"\n\"1910191\";\"Xiaoqi Xiang\";\"other\"\n\"1910191\";\"肖旗\";\"other\"\n\"1910191\";\"肖旗乡\";\"other\"\n\"1910193\";\"Jiangliji\";\"main\"\n\"1910193\";\"Jiangliji Zhen\";\"other\"\n\"1910193\";\"蒋李集\";\"other\"\n\"1910193\";\"蒋李集镇\";\"other\"\n\"1910195\";\"Yingyang\";\"main\"\n\"1910195\";\"ying yang\";\"other\"\n\"1910195\";\"颍阳\";\"other\"\n\"1910198\";\"Guangkuotiandi\";\"main\"\n\"1910198\";\"guang kuo tian de\";\"other\"\n\"1910198\";\"广阔天地\";\"other\"\n\"1910209\";\"Caotang\";\"main\"\n\"1910209\";\"Caotang Zhen\";\"other\"\n\"1910209\";\"Caotangzhen\";\"other\"\n\"1910209\";\"cao tang\";\"other\"\n\"1910209\";\"cao tang zhen\";\"other\"\n\"1910209\";\"草堂\";\"other\"\n\"1910209\";\"草堂镇\";\"other\"\n\"1910215\";\"Luanzhen\";\"main\"\n\"1910215\";\"Luanzhen Jieban\";\"other\"\n\"1910215\";\"luan zhen\";\"other\"\n\"1910215\";\"luan zhen jie ban\";\"other\"\n\"1910215\";\"滦镇\";\"other\"\n\"1910215\";\"滦镇街办\";\"other\"\n\"1910216\";\"Jiangcun\";\"main\"\n\"1910216\";\"Jiangcun Zhen\";\"other\"\n\"1910216\";\"jiang cun\";\"other\"\n\"1910216\";\"jiang cun zhen\";\"other\"\n\"1910216\";\"蒋村\";\"other\"\n\"1910216\";\"蒋村镇\";\"other\"\n\"1910219\";\"Huangliang\";\"main\"\n\"1910219\";\"huang liang\";\"other\"\n\"1910219\";\"黄良\";\"other\"\n\"1910225\";\"Xiliu\";\"main\"\n\"1910225\";\"Xiliu Zhen\";\"other\"\n\"1910225\";\"xi liu\";\"other\"\n\"1910225\";\"xi liu zhen\";\"other\"\n\"1910225\";\"细柳\";\"other\"\n\"1910225\";\"细柳镇\";\"other\"\n\"1910232\";\"Tangfang\";\"main\"\n\"1910232\";\"tang fang\";\"other\"\n\"1910232\";\"汤坊\";\"other\"\n\"1910233\";\"Yuhuazhai\";\"main\"\n\"1910233\";\"Yuhuazhai Jieban\";\"other\"\n\"1910233\";\"yu hua zhai\";\"other\"\n\"1910233\";\"yu hua zhai jie ban\";\"other\"\n\"1910233\";\"鱼化寨\";\"other\"\n\"1910233\";\"鱼化寨街办\";\"other\"\n\"1910235\";\"Dazhuang\";\"main\"\n\"1910235\";\"Dazhuang Zhen\";\"other\"\n\"1910235\";\"da zhuang\";\"other\"\n\"1910235\";\"da zhuang zhen\";\"other\"\n\"1910235\";\"大庄\";\"other\"\n\"1910235\";\"大庄镇\";\"other\"\n\"1910238\";\"Chenyangzhai\";\"main\"\n\"1910238\";\"Chenyangzhai Jieban\";\"other\"\n\"1910238\";\"chen yang zhai\";\"other\"\n\"1910238\";\"chen yang zhai jie ban\";\"other\"\n\"1910238\";\"陈杨寨\";\"other\"\n\"1910238\";\"陈杨寨街办\";\"other\"\n\"1910239\";\"Liucunbao\";\"main\"\n\"1910239\";\"Liucunbao Jieban\";\"other\"\n\"1910239\";\"liu cun bao\";\"other\"\n\"1910239\";\"liu cun bao jie ban\";\"other\"\n\"1910239\";\"六村堡\";\"other\"\n\"1910239\";\"六村堡街办\";\"other\"\n\"1910240\";\"Nanshi\";\"main\"\n\"1910240\";\"Nanshi Zhen\";\"other\"\n\"1910240\";\"nan shi\";\"other\"\n\"1910240\";\"nan shi zhen\";\"other\"\n\"1910240\";\"南市\";\"other\"\n\"1910240\";\"南市镇\";\"other\"\n\"1910241\";\"Nanwei\";\"main\"\n\"1910241\";\"Nanwei Zhen\";\"other\"\n\"1910241\";\"nan wei\";\"other\"\n\"1910241\";\"nan wei zhen\";\"other\"\n\"1910241\";\"南位\";\"other\"\n\"1910241\";\"南位镇\";\"other\"\n\"1910243\";\"Jiangcun\";\"main\"\n\"1910243\";\"Jiangcun Zhen\";\"other\"\n\"1910243\";\"jiang cun\";\"other\"\n\"1910243\";\"jiang cun zhen\";\"other\"\n\"1910243\";\"姜村\";\"other\"\n\"1910243\";\"姜村镇\";\"other\"\n\"1910248\";\"Xizhangbao\";\"main\"\n\"1910248\";\"Xizhangbao Zhen\";\"other\"\n\"1910248\";\"Xizhangbaocun\";\"other\"\n\"1910248\";\"xi zhang bao\";\"other\"\n\"1910248\";\"xi zhang bao zhen\";\"other\"\n\"1910248\";\"西张堡\";\"other\"\n\"1910248\";\"西张堡镇\";\"other\"\n\"1910249\";\"Lingyuan\";\"main\"\n\"1910249\";\"Lingyuan Zhen\";\"other\"\n\"1910249\";\"ling yuan\";\"other\"\n\"1910249\";\"ling yuan zhen\";\"other\"\n\"1910249\";\"灵源\";\"other\"\n\"1910249\";\"灵源镇\";\"other\"\n\"1910253\";\"Sanqu\";\"main\"\n\"1910253\";\"Sanqu Zhen\";\"other\"\n\"1910253\";\"Sanqukou\";\"other\"\n\"1910253\";\"Sanquzhen\";\"other\"\n\"1910253\";\"san qu\";\"other\"\n\"1910253\";\"san qu zhen\";\"other\"\n\"1910253\";\"三渠\";\"other\"\n\"1910253\";\"三渠镇\";\"other\"\n\"1910256\";\"Qiaodi\";\"main\"\n\"1910256\";\"Qiaodi Zhen\";\"other\"\n\"1910256\";\"qiao di\";\"other\"\n\"1910256\";\"qiao di zhen\";\"other\"\n\"1910256\";\"桥底\";\"other\"\n\"1910256\";\"桥底镇\";\"other\"\n\"1910263\";\"Xinglong\";\"main\"\n\"1910263\";\"Xinglong Zhen\";\"other\"\n\"1910263\";\"xing long\";\"other\"\n\"1910263\";\"xing long zhen\";\"other\"\n\"1910263\";\"兴隆\";\"other\"\n\"1910263\";\"兴隆镇\";\"other\"\n\"1910274\";\"Mafang\";\"main\"\n\"1910274\";\"Mafang Zhen\";\"other\"\n\"1910274\";\"ma fang\";\"other\"\n\"1910274\";\"ma fang zhen\";\"other\"\n\"1910274\";\"马坊\";\"other\"\n\"1910274\";\"马坊镇\";\"other\"\n\"1910277\";\"Guxian\";\"main\"\n\"1910277\";\"gu xian\";\"other\"\n\"1910277\";\"固贤\";\"other\"\n\"1910278\";\"Potou\";\"main\"\n\"1910278\";\"Potou Zhen\";\"other\"\n\"1910278\";\"Potoucun\";\"other\"\n\"1910278\";\"Potouzhen\";\"other\"\n\"1910278\";\"po tou\";\"other\"\n\"1910278\";\"po tou zhen\";\"other\"\n\"1910278\";\"坡头\";\"other\"\n\"1910278\";\"坡头镇\";\"other\"\n\"1910279\";\"Majia\";\"main\"\n\"1910279\";\"Majia Zhen\";\"other\"\n\"1910279\";\"ma jia\";\"other\"\n\"1910279\";\"ma jia zhen\";\"other\"\n\"1910279\";\"马家\";\"other\"\n\"1910279\";\"马家镇\";\"other\"\n\"1910284\";\"Sigou\";\"main\"\n\"1910284\";\"Sigou Zhen\";\"other\"\n\"1910284\";\"si gou\";\"other\"\n\"1910284\";\"si gou zhen\";\"other\"\n\"1910284\";\"寺沟\";\"other\"\n\"1910284\";\"寺沟镇\";\"other\"\n\"1910285\";\"Hujiamiao\";\"main\"\n\"1910285\";\"Hujiazhuang\";\"other\"\n\"1910285\";\"hu jia miao\";\"other\"\n\"1910285\";\"胡家庙\";\"other\"\n\"1910288\";\"Dongjiahe\";\"main\"\n\"1910288\";\"Dongjiahe Zhen\";\"other\"\n\"1910288\";\"dong jia he zhen\";\"other\"\n\"1910288\";\"董家河\";\"other\"\n\"1910288\";\"董家河镇\";\"other\"\n\"1910293\";\"Sunyuan\";\"main\"\n\"1910293\";\"Sunjiayuan\";\"other\"\n\"1910293\";\"Sunyuan Zhen\";\"other\"\n\"1910293\";\"sun yuan\";\"other\"\n\"1910293\";\"孙塬\";\"other\"\n\"1910297\";\"Duli\";\"main\"\n\"1910297\";\"Duli Zhen\";\"other\"\n\"1910297\";\"du li\";\"other\"\n\"1910297\";\"独李\";\"other\"\n\"1910301\";\"Baimiao\";\"main\"\n\"1910301\";\"bai miao\";\"other\"\n\"1910301\";\"白庙\";\"other\"\n\"1910306\";\"Xinshi\";\"main\"\n\"1910306\";\"xin shi\";\"other\"\n\"1910306\";\"新市\";\"other\"\n\"1910307\";\"Weizhai\";\"main\"\n\"1910307\";\"wei zhai\";\"other\"\n\"1910307\";\"魏寨\";\"other\"\n\"1910308\";\"Qianwei\";\"main\"\n\"1910308\";\"Qianwei Zhen\";\"other\"\n\"1910308\";\"qian wei\";\"other\"\n\"1910308\";\"前卫\";\"other\"\n\"1910310\";\"Tangyu\";\"main\"\n\"1910310\";\"Tangyu Zhen\";\"other\"\n\"1910310\";\"tang yu\";\"other\"\n\"1910310\";\"汤峪\";\"other\"\n\"1910312\";\"Qinling Jieban\";\"main\"\n\"1910312\";\"Qinling\";\"other\"\n\"1910312\";\"秦陵街办\";\"other\"\n\"1910314\";\"Ancun\";\"main\"\n\"1910314\";\"an cun\";\"other\"\n\"1910314\";\"安村\";\"other\"\n\"1910317\";\"Sanli\";\"main\"\n\"1910317\";\"Dasanlitou\";\"other\"\n\"1910317\";\"Sanli Zhen\";\"other\"\n\"1910317\";\"san li\";\"other\"\n\"1910317\";\"三里\";\"other\"\n\"1910318\";\"Daiwang\";\"main\"\n\"1910318\";\"Daiwang Jieban\";\"other\"\n\"1910318\";\"dai wang\";\"other\"\n\"1910318\";\"代王\";\"other\"\n\"1910319\";\"Hezhai\";\"main\"\n\"1910319\";\"Hejunzhai\";\"other\"\n\"1910319\";\"Hezhai Zhen\";\"other\"\n\"1910319\";\"he zhai\";\"other\"\n\"1910319\";\"何寨\";\"other\"\n\"1910322\";\"Zhangqiao\";\"main\"\n\"1910322\";\"Zhangqiao Zhen\";\"other\"\n\"1910322\";\"zhang qiao\";\"other\"\n\"1910322\";\"张桥\";\"other\"\n\"1910323\";\"Sufang\";\"main\"\n\"1910323\";\"Sufang Zhen\";\"other\"\n\"1910323\";\"su fang\";\"other\"\n\"1910323\";\"苏坊\";\"other\"\n\"1910325\";\"Youhuai\";\"main\"\n\"1910325\";\"Youfangjie\";\"other\"\n\"1910325\";\"Youhuai Zhen\";\"other\"\n\"1910325\";\"you huai\";\"other\"\n\"1910325\";\"油槐\";\"other\"\n\"1910327\";\"Potou\";\"main\"\n\"1910327\";\"Potou Zhen\";\"other\"\n\"1910327\";\"po tou\";\"other\"\n\"1910327\";\"坡头\";\"other\"\n\"1910333\";\"Sanhe\";\"main\"\n\"1910333\";\"san he\";\"other\"\n\"1910333\";\"三合\";\"other\"\n\"1910342\";\"Longchi\";\"main\"\n\"1910342\";\"long chi\";\"other\"\n\"1910342\";\"龙池\";\"other\"\n\"1910343\";\"Chunlin\";\"main\"\n\"1910343\";\"chun lin\";\"other\"\n\"1910343\";\"椿林\";\"other\"\n\"1910344\";\"Zhangjia\";\"main\"\n\"1910344\";\"zhang jia\";\"other\"\n\"1910344\";\"张家\";\"other\"\n\"1910347\";\"Dongchen\";\"main\"\n\"1910347\";\"dong chen\";\"other\"\n\"1910347\";\"东陈\";\"other\"\n\"1910348\";\"Xijing\";\"main\"\n\"1910348\";\"xi jing\";\"other\"\n\"1910348\";\"西荆\";\"other\"\n\"1910351\";\"Fengcun\";\"main\"\n\"1910351\";\"Fengcun Zhen\";\"other\"\n\"1910351\";\"feng cun\";\"other\"\n\"1910351\";\"冯村\";\"other\"\n\"1910358\";\"Liuzhi\";\"main\"\n\"1910358\";\"Liuzhi Zhen\";\"other\"\n\"1910358\";\"liu zhi\";\"other\"\n\"1910358\";\"柳枝\";\"other\"\n\"1912819\";\"Yongfeng\";\"main\"\n\"1912819\";\"Yongfeng Xiang\";\"other\"\n\"1912819\";\"永丰\";\"other\"\n\"1912819\";\"永丰乡\";\"other\"\n\"1912824\";\"Qingtang\";\"main\"\n\"1912824\";\"Qingtang Zhen\";\"other\"\n\"1912824\";\"青塘\";\"other\"\n\"1912824\";\"青塘镇\";\"other\"\n\"1912826\";\"Fangtai\";\"main\"\n\"1912826\";\"Fangtai Xiang\";\"other\"\n\"1912826\";\"方太\";\"other\"\n\"1912826\";\"方太乡\";\"other\"\n\"1912837\";\"Futan\";\"main\"\n\"1912837\";\"Futan Zhen\";\"other\"\n\"1912837\";\"富滩\";\"other\"\n\"1912837\";\"富滩镇\";\"other\"\n\"1913167\";\"Shatian\";\"main\"\n\"1913167\";\"Shatian Zhen\";\"other\"\n\"1913167\";\"sha tian\";\"other\"\n\"1913167\";\"沙田\";\"other\"\n\"1913172\";\"Xinwan\";\"main\"\n\"1913172\";\"Xinwan Zhen\";\"other\"\n\"1913172\";\"xin wan\";\"other\"\n\"1913172\";\"新湾\";\"other\"\n\"1913188\";\"Dongkeng\";\"main\"\n\"1913188\";\"Dongkeng Zhen\";\"other\"\n\"1913188\";\"dong keng\";\"other\"\n\"1913188\";\"东坑\";\"other\"\n\"1913195\";\"Huangjiang\";\"main\"\n\"1913195\";\"Huangjiang Zhen\";\"other\"\n\"1913195\";\"huang jiang\";\"other\"\n\"1913195\";\"黄江\";\"other\"\n\"1913375\";\"Zhize\";\"main\"\n\"1913375\";\"zhi ze\";\"other\"\n\"1913375\";\"织箦\";\"other\"\n\"1913430\";\"Dongcheng\";\"main\"\n\"1913430\";\"dong cheng\";\"other\"\n\"1913430\";\"东城\";\"other\"\n\"1914152\";\"Fengxiang\";\"main\"\n\"1914152\";\"Fengxiangyuan\";\"other\"\n\"1914152\";\"枫相\";\"other\"\n\"1914158\";\"Xiasi\";\"main\"\n\"1914158\";\"xia si\";\"other\"\n\"1914158\";\"下寺\";\"other\"\n\"1914171\";\"Yangba\";\"main\"\n\"1914171\";\"Yangba Zhen\";\"other\"\n\"1914171\";\"阳坝\";\"other\"\n\"1914171\";\"阳坝镇\";\"other\"\n\"1915223\";\"Zhongshan\";\"main\"\n\"1915223\";\"zhong shan\";\"other\"\n\"1915223\";\"zhong shan shi\";\"other\"\n\"1915223\";\"中山\";\"other\"\n\"1915223\";\"中山市\";\"other\"\n\"1915377\";\"Zhangshui\";\"main\"\n\"1915377\";\"Zhangshui Zhen\";\"other\"\n\"1915377\";\"zhang shui\";\"other\"\n\"1915377\";\"zhang shui zhen\";\"other\"\n\"1915377\";\"章水\";\"other\"\n\"1915377\";\"章水镇\";\"other\"\n\"1915379\";\"Xiaren\";\"main\"\n\"1915379\";\"Jinting\";\"other\"\n\"1915379\";\"Jinting Zhen\";\"other\"\n\"1915379\";\"jin ting zhen\";\"other\"\n\"1915379\";\"xia ren\";\"other\"\n\"1915379\";\"下任\";\"other\"\n\"1915379\";\"金庭镇\";\"other\"\n\"1915383\";\"Hemudu\";\"main\"\n\"1915383\";\"Hemudu Zhen\";\"other\"\n\"1915383\";\"河姆渡\";\"other\"\n\"1915383\";\"河姆渡镇\";\"other\"\n\"1915391\";\"Ruanzhuang\";\"main\"\n\"1915391\";\"Lingnan\";\"other\"\n\"1915391\";\"ruan zhuang\";\"other\"\n\"1915391\";\"岭南\";\"other\"\n\"1915391\";\"阮庄\";\"other\"\n\"1915399\";\"Dashiju\";\"main\"\n\"1915399\";\"Dashiju Zhen\";\"other\"\n\"1915399\";\"da shi ju\";\"other\"\n\"1915399\";\"da shi ju zhen\";\"other\"\n\"1915399\";\"大市聚\";\"other\"\n\"1915399\";\"大市聚镇\";\"other\"\n\"1915413\";\"Chenxikou\";\"main\"\n\"1915413\";\"Chenxi\";\"other\"\n\"1915413\";\"chen xi\";\"other\"\n\"1915413\";\"chen xi kou\";\"other\"\n\"1915413\";\"陈溪\";\"other\"\n\"1915413\";\"陈溪口\";\"other\"\n\"1915446\";\"Huangwu\";\"main\"\n\"1915446\";\"Sanhe\";\"other\"\n\"1915446\";\"Sanhe Zhen\";\"other\"\n\"1915446\";\"huang wu\";\"other\"\n\"1915446\";\"三合镇\";\"other\"\n\"1915446\";\"黄务\";\"other\"\n\"1915479\";\"Feikeng\";\"main\"\n\"1915479\";\"Feifeng\";\"other\"\n\"1915479\";\"Shuangfeng\";\"other\"\n\"1915479\";\"榧坑\";\"other\"\n\"1915479\";\"榧峰\";\"other\"\n\"1915491\";\"Shiliang\";\"main\"\n\"1915491\";\"Shiliang Zhen\";\"other\"\n\"1915491\";\"shi liang\";\"other\"\n\"1915491\";\"石梁\";\"other\"\n\"1915491\";\"石梁镇\";\"other\"\n\"1915501\";\"Hengjie\";\"main\"\n\"1915501\";\"Hengjie Zhen\";\"other\"\n\"1915501\";\"heng jie zhen\";\"other\"\n\"1915501\";\"横街\";\"other\"\n\"1915501\";\"横街镇\";\"other\"\n\"1915507\";\"Gulin\";\"main\"\n\"1915507\";\"Gulin Zhen\";\"other\"\n\"1915507\";\"古林\";\"other\"\n\"1915507\";\"古林镇\";\"other\"\n\"1915508\";\"Jishigang\";\"main\"\n\"1915508\";\"Jishigang Zhen\";\"other\"\n\"1915508\";\"ji shi gang\";\"other\"\n\"1915508\";\"ji shi gang zhen\";\"other\"\n\"1915508\";\"集士港\";\"other\"\n\"1915508\";\"集士港镇\";\"other\"\n\"1916137\";\"Nan’ao\";\"main\"\n\"1916137\";\"Nan'ao\";\"ascii\"\n\"1916137\";\"Nan'ao Jiedao\";\"other\"\n\"1916137\";\"Nan’ao Jiedao\";\"other\"\n\"1916137\";\"nan ao\";\"other\"\n\"1916137\";\"南澳\";\"other\"\n\"1916188\";\"Tieyong\";\"main\"\n\"1916188\";\"Tieyong Zhen\";\"other\"\n\"1916188\";\"tie yong\";\"other\"\n\"1916188\";\"铁涌\";\"other\"\n\"1916198\";\"Huangbu\";\"main\"\n\"1916198\";\"huang bu\";\"other\"\n\"1916198\";\"黄埠\";\"other\"\n\"1916204\";\"Pingdi\";\"main\"\n\"1916204\";\"Pingdi Jiedao\";\"other\"\n\"1916204\";\"ping de\";\"other\"\n\"1916204\";\"坪地\";\"other\"\n\"1916222\";\"Dongyong\";\"main\"\n\"1916222\";\"dong yong\";\"other\"\n\"1916222\";\"东涌\";\"other\"\n\"1916226\";\"Qiuchang\";\"main\"\n\"1916226\";\"Qiuchang Jiedao\";\"other\"\n\"1916226\";\"qiu zhang\";\"other\"\n\"1916226\";\"秋长\";\"other\"\n\"1916231\";\"Ebu\";\"main\"\n\"1916231\";\"e bu\";\"other\"\n\"1916231\";\"鹅埠\";\"other\"\n\"1916234\";\"Dahu\";\"main\"\n\"1916234\";\"Dahu Zhen\";\"other\"\n\"1916234\";\"da hu\";\"other\"\n\"1916234\";\"大湖\";\"other\"\n\"1916237\";\"Hongcao\";\"main\"\n\"1916237\";\"hong cao\";\"other\"\n\"1916237\";\"红草\";\"other\"\n\"1916245\";\"Shatian\";\"main\"\n\"1916245\";\"Shatian Zhen\";\"other\"\n\"1916245\";\"sha tian\";\"other\"\n\"1916245\";\"沙田\";\"other\"\n\"1916249\";\"Jinxiang\";\"main\"\n\"1916249\";\"Jinxiang Zhen\";\"other\"\n\"1916249\";\"jin xiang\";\"other\"\n\"1916249\";\"金厢\";\"other\"\n\"1916257\";\"Jiadong\";\"main\"\n\"1916257\";\"Jiadong Zhen\";\"other\"\n\"1916257\";\"jia dong\";\"other\"\n\"1916257\";\"甲东\";\"other\"\n\"1916262\";\"Jiaxi\";\"main\"\n\"1916262\";\"Jiaxi Zhen\";\"other\"\n\"1916262\";\"jia xi\";\"other\"\n\"1916262\";\"甲西\";\"other\"\n\"1916268\";\"Shangying\";\"main\"\n\"1916268\";\"Shangying Zhen\";\"other\"\n\"1916268\";\"shang ying\";\"other\"\n\"1916268\";\"上英\";\"other\"\n\"1916270\";\"Taohe\";\"main\"\n\"1916270\";\"tao he\";\"other\"\n\"1916270\";\"陶河\";\"other\"\n\"1916276\";\"Lian’an\";\"main\"\n\"1916276\";\"Lian'an\";\"ascii\"\n\"1916276\";\"lian an\";\"other\"\n\"1916276\";\"联安\";\"other\"\n\"1916282\";\"Qishi\";\"main\"\n\"1916282\";\"Qishi Zhen\";\"other\"\n\"1916282\";\"qi shi\";\"other\"\n\"1916282\";\"歧石\";\"other\"\n\"1916285\";\"Qiaochong\";\"main\"\n\"1916285\";\"Qiaochong Zhen\";\"other\"\n\"1916285\";\"qiao chong\";\"other\"\n\"1916285\";\"桥冲\";\"other\"\n\"1916288\";\"Yonghu\";\"main\"\n\"1916288\";\"Yonghu Zhen\";\"other\"\n\"1916288\";\"yong hu\";\"other\"\n\"1916288\";\"永湖\";\"other\"\n\"1916289\";\"Ketang\";\"main\"\n\"1916289\";\"ke tang\";\"other\"\n\"1916289\";\"可塘\";\"other\"\n\"1916294\";\"Aojiang\";\"main\"\n\"1916294\";\"Aojiang Zhen\";\"other\"\n\"1916294\";\"Biejiang\";\"other\"\n\"1916294\";\"ao jiang\";\"other\"\n\"1916294\";\"鳌江\";\"other\"\n\"1916296\";\"Chengdong\";\"main\"\n\"1916296\";\"Chengdong Jiedao\";\"other\"\n\"1916296\";\"cheng dong\";\"other\"\n\"1916296\";\"城东\";\"other\"\n\"1916300\";\"Qianzhan\";\"main\"\n\"1916300\";\"Qianzhan Zhen\";\"other\"\n\"1916300\";\"qian zhan\";\"other\"\n\"1916300\";\"前詹\";\"other\"\n\"1916301\";\"Hexi\";\"main\"\n\"1916301\";\"Hexi Jiedao\";\"other\"\n\"1916301\";\"he xi\";\"other\"\n\"1916301\";\"河西\";\"other\"\n\"1916310\";\"Donggang\";\"main\"\n\"1916310\";\"Donggang Zhen\";\"other\"\n\"1916310\";\"dong gang\";\"other\"\n\"1916310\";\"东港\";\"other\"\n\"1916314\";\"Hongmei\";\"main\"\n\"1916314\";\"Hongmei Zhen\";\"other\"\n\"1916314\";\"hong mei\";\"other\"\n\"1916314\";\"洪梅\";\"other\"\n\"1916315\";\"Sandong\";\"main\"\n\"1916315\";\"Sandong Zhen\";\"other\"\n\"1916315\";\"san dong\";\"other\"\n\"1916315\";\"三栋\";\"other\"\n\"1916320\";\"Xixi\";\"main\"\n\"1916320\";\"Xixi Zhen\";\"other\"\n\"1916320\";\"xi xi\";\"other\"\n\"1916320\";\"溪西\";\"other\"\n\"1916624\";\"Dashe\";\"main\"\n\"1916624\";\"Yanjia\";\"other\"\n\"1916624\";\"da she\";\"other\"\n\"1916624\";\"yan jia\";\"other\"\n\"1916624\";\"严家\";\"other\"\n\"1916624\";\"大社\";\"other\"\n\"1916627\";\"Wangfu\";\"main\"\n\"1916627\";\"Zhengzhong\";\"other\"\n\"1916627\";\"wang fu\";\"other\"\n\"1916627\";\"zheng zhong\";\"other\"\n\"1916627\";\"王阜\";\"other\"\n\"1916627\";\"郑中\";\"other\"\n\"1916643\";\"Weiping\";\"main\"\n\"1916643\";\"Weiping Zhen\";\"other\"\n\"1916643\";\"wei ping\";\"other\"\n\"1916643\";\"wei ping zhen\";\"other\"\n\"1916643\";\"威坪\";\"other\"\n\"1916643\";\"威坪镇\";\"other\"\n\"1916647\";\"Tangban\";\"main\"\n\"1916647\";\"Jinfeng\";\"other\"\n\"1916647\";\"jin feng\";\"other\"\n\"1916647\";\"tang fan\";\"other\"\n\"1916647\";\"塘畈\";\"other\"\n\"1916647\";\"金峰\";\"other\"\n\"1916663\";\"Yaojia\";\"main\"\n\"1916663\";\"Jieshou\";\"other\"\n\"1916663\";\"jie shou\";\"other\"\n\"1916663\";\"yao jia\";\"other\"\n\"1916663\";\"姚家\";\"other\"\n\"1916663\";\"界首\";\"other\"\n\"1916670\";\"Langchuan\";\"main\"\n\"1916670\";\"lang chuan\";\"other\"\n\"1916670\";\"浪川\";\"other\"\n\"1916673\";\"Liyang\";\"main\"\n\"1916673\";\"Lishang\";\"other\"\n\"1916673\";\"li shang\";\"other\"\n\"1916673\";\"li yang\";\"other\"\n\"1916673\";\"里商\";\"other\"\n\"1916673\";\"里阳\";\"other\"\n\"1916677\";\"Shuangqiao\";\"main\"\n\"1916677\";\"shuang qiao\";\"other\"\n\"1916677\";\"双桥\";\"other\"\n\"1916689\";\"Datou\";\"main\"\n\"1916689\";\"Qili\";\"other\"\n\"1916689\";\"da tou\";\"other\"\n\"1916689\";\"qi li\";\"other\"\n\"1916689\";\"七里\";\"other\"\n\"1916689\";\"大头\";\"other\"\n\"1916698\";\"Xiacaoqiao\";\"main\"\n\"1916698\";\"Taizhen\";\"other\"\n\"1916698\";\"tai zhen\";\"other\"\n\"1916698\";\"xia cao qiao\";\"other\"\n\"1916698\";\"下槽桥\";\"other\"\n\"1916698\";\"太真\";\"other\"\n\"1916701\";\"Shisanli\";\"main\"\n\"1916701\";\"Fushi\";\"other\"\n\"1916701\";\"fu shi\";\"other\"\n\"1916701\";\"shi san li\";\"other\"\n\"1916701\";\"十三里\";\"other\"\n\"1916701\";\"浮石\";\"other\"\n\"1916705\";\"Huipinggeng\";\"main\"\n\"1916705\";\"Laochagen\";\"other\"\n\"1916705\";\"hui ping geng\";\"other\"\n\"1916705\";\"lao cha geng\";\"other\"\n\"1916705\";\"灰坪埂\";\"other\"\n\"1916705\";\"老茶埂\";\"other\"\n\"1916712\";\"Anyang\";\"main\"\n\"1916712\";\"an yang\";\"other\"\n\"1916712\";\"安阳\";\"other\"\n\"1916715\";\"Fengshuling\";\"main\"\n\"1916715\";\"Fengshuling Zhen\";\"other\"\n\"1916715\";\"feng shu ling\";\"other\"\n\"1916715\";\"feng shu ling zhen\";\"other\"\n\"1916715\";\"枫树岭\";\"other\"\n\"1916715\";\"枫树岭镇\";\"other\"\n\"1916722\";\"Daqiaotou\";\"main\"\n\"1916722\";\"Huanggu\";\"other\"\n\"1916722\";\"da qiao tou\";\"other\"\n\"1916722\";\"huang gu\";\"other\"\n\"1916722\";\"大桥头\";\"other\"\n\"1916722\";\"黄谷\";\"other\"\n\"1916732\";\"Shangyuan\";\"main\"\n\"1916732\";\"Jinyuan\";\"other\"\n\"1916732\";\"jin yuan\";\"other\"\n\"1916732\";\"shang yuan\";\"other\"\n\"1916732\";\"上源\";\"other\"\n\"1916732\";\"金源\";\"other\"\n\"1916734\";\"Xinchang\";\"main\"\n\"1916734\";\"xin chang\";\"other\"\n\"1916734\";\"新昌\";\"other\"\n\"1916737\";\"Donglu\";\"main\"\n\"1916737\";\"dong lu\";\"other\"\n\"1916737\";\"东鲁\";\"other\"\n\"1916743\";\"Lujiawu\";\"main\"\n\"1916743\";\"Tongcun\";\"other\"\n\"1916743\";\"Tongcun Zhen\";\"other\"\n\"1916743\";\"tong cun\";\"other\"\n\"1916743\";\"桐村\";\"other\"\n\"1916743\";\"桐村镇\";\"other\"\n\"1916743\";\"鲁家坞\";\"other\"\n\"1916753\";\"Youxikou\";\"main\"\n\"1916753\";\"Zhangwan\";\"other\"\n\"1916753\";\"you xi kou\";\"other\"\n\"1916753\";\"zhang wan\";\"other\"\n\"1916753\";\"张湾\";\"other\"\n\"1916753\";\"油溪口\";\"other\"\n\"1916758\";\"Zhangcun\";\"main\"\n\"1916758\";\"Zhongcun\";\"other\"\n\"1916758\";\"zhang cun\";\"other\"\n\"1916758\";\"zhong cun\";\"other\"\n\"1916758\";\"中村\";\"other\"\n\"1916758\";\"张村\";\"other\"\n\"1916778\";\"Xiashan\";\"main\"\n\"1916778\";\"xia shan\";\"other\"\n\"1916778\";\"霞山\";\"other\"\n\"1916785\";\"Zhongzhou\";\"main\"\n\"1916785\";\"Zhongzhou Zhen\";\"other\"\n\"1916785\";\"zhong zhou\";\"other\"\n\"1916785\";\"zhong zhou zhen\";\"other\"\n\"1916785\";\"中洲\";\"other\"\n\"1916785\";\"中洲镇\";\"other\"\n\"1916798\";\"Dongwu\";\"main\"\n\"1916798\";\"Changpu\";\"other\"\n\"1916798\";\"chang pu\";\"other\"\n\"1916798\";\"dong wu\";\"other\"\n\"1916798\";\"东坞\";\"other\"\n\"1916798\";\"菖蒲\";\"other\"\n\"1916848\";\"Daling\";\"main\"\n\"1916848\";\"Daling Zhen\";\"other\"\n\"1916848\";\"da ling\";\"other\"\n\"1916848\";\"大岭\";\"other\"\n\"1916860\";\"Shipai\";\"main\"\n\"1916860\";\"Shipai Zhen\";\"other\"\n\"1916860\";\"shi pai\";\"other\"\n\"1916860\";\"石排\";\"other\"\n\"1916861\";\"Gaobu\";\"main\"\n\"1916861\";\"Gaobu Zhen\";\"other\"\n\"1916861\";\"gao bu\";\"other\"\n\"1916861\";\"高埗\";\"other\"\n\"1916862\";\"Shijie\";\"main\"\n\"1916862\";\"Shijie Zhen\";\"other\"\n\"1916862\";\"shi jie\";\"other\"\n\"1916862\";\"石碣\";\"other\"\n\"1916872\";\"Lianghua\";\"main\"\n\"1916872\";\"liang hua\";\"other\"\n\"1916872\";\"梁化\";\"other\"\n\"1916875\";\"Shiwan\";\"main\"\n\"1916875\";\"Shiwan Zhen\";\"other\"\n\"1916875\";\"shi wan\";\"other\"\n\"1916875\";\"石湾\";\"other\"\n\"1916883\";\"Xiaojinkou\";\"main\"\n\"1916883\";\"Xiaojinkou Zhen\";\"other\"\n\"1916883\";\"xiao jin kou\";\"other\"\n\"1916883\";\"小金口\";\"other\"\n\"1916888\";\"Yonghe\";\"main\"\n\"1916888\";\"Yonghe Zhen\";\"other\"\n\"1916888\";\"yong he\";\"other\"\n\"1916888\";\"永和\";\"other\"\n\"1916895\";\"Ningxi\";\"main\"\n\"1916895\";\"Ningxi Zhen\";\"other\"\n\"1916895\";\"ning xi\";\"other\"\n\"1916895\";\"宁西\";\"other\"\n\"1916898\";\"Aipi\";\"main\"\n\"1916898\";\"Aipi Zhen\";\"other\"\n\"1916898\";\"ai po\";\"other\"\n\"1916898\";\"矮陂\";\"other\"\n\"1916948\";\"Feng’an\";\"main\"\n\"1916948\";\"Feng'an\";\"ascii\"\n\"1916948\";\"Feng'an Zhen\";\"other\"\n\"1916948\";\"Feng’an Zhen\";\"other\"\n\"1916948\";\"凤安\";\"other\"\n\"1916948\";\"凤安镇\";\"other\"\n\"1916993\";\"Qingxi\";\"main\"\n\"1916993\";\"Qingxi Zhen\";\"other\"\n\"1916993\";\"青溪\";\"other\"\n\"1916993\";\"青溪镇\";\"other\"\n\"1916998\";\"Gongzhuang\";\"main\"\n\"1916998\";\"Gongzhuang Zhen\";\"other\"\n\"1916998\";\"gong zhuang\";\"other\"\n\"1916998\";\"公庄\";\"other\"\n\"1917000\";\"Luxi\";\"main\"\n\"1917000\";\"Luxi Zhen\";\"other\"\n\"1917000\";\"lu xi\";\"other\"\n\"1917000\";\"路溪\";\"other\"\n\"1917017\";\"Longjiang\";\"main\"\n\"1917017\";\"Longjiang Zhen\";\"other\"\n\"1917017\";\"long jiang\";\"other\"\n\"1917017\";\"龙江\";\"other\"\n\"1917050\";\"Wangping\";\"main\"\n\"1917050\";\"Wangping Zhen\";\"other\"\n\"1917050\";\"wang ping\";\"other\"\n\"1917050\";\"王坪\";\"other\"\n\"1917059\";\"Jiushe\";\"main\"\n\"1917059\";\"Jiushe Zhen\";\"other\"\n\"1917059\";\"久社\";\"other\"\n\"1917059\";\"久社镇\";\"other\"\n\"1917061\";\"Xingang\";\"main\"\n\"1917061\";\"Xingang Zhen\";\"other\"\n\"1917061\";\"新港\";\"other\"\n\"1917061\";\"新港镇\";\"other\"\n\"1917081\";\"Yihe\";\"main\"\n\"1917081\";\"Yihe Zhen\";\"other\"\n\"1917081\";\"义合\";\"other\"\n\"1917081\";\"义合镇\";\"other\"\n\"1917092\";\"Shuitou\";\"main\"\n\"1917092\";\"Shuitou Zhen\";\"other\"\n\"1917092\";\"shui tou\";\"other\"\n\"1917092\";\"水头\";\"other\"\n\"1917107\";\"Xichang\";\"main\"\n\"1917107\";\"Xichang Zhen\";\"other\"\n\"1917107\";\"锡场\";\"other\"\n\"1917107\";\"锡场镇\";\"other\"\n\"1917113\";\"Shuangjiang\";\"main\"\n\"1917113\";\"Shuangjiang Zhen\";\"other\"\n\"1917113\";\"双江\";\"other\"\n\"1917113\";\"双江镇\";\"other\"\n\"1917124\";\"Xiaozhen\";\"main\"\n\"1917124\";\"Xiaozhen Zhen\";\"other\"\n\"1917124\";\"小正\";\"other\"\n\"1917124\";\"小正镇\";\"other\"\n\"1917135\";\"Gaogang\";\"main\"\n\"1917135\";\"Gaogang Zhen\";\"other\"\n\"1917135\";\"gao gang\";\"other\"\n\"1917135\";\"高岗\";\"other\"\n\"1917352\";\"Rucheng\";\"main\"\n\"1917352\";\"Fucheng\";\"other\"\n\"1917352\";\"ru cheng\";\"other\"\n\"1917352\";\"乳城\";\"other\"\n\"1917861\";\"Lincuo\";\"main\"\n\"1917861\";\"Meiling Zhen\";\"other\"\n\"1917861\";\"lin cuo\";\"other\"\n\"1917861\";\"林厝\";\"other\"\n\"1917864\";\"Dongyingcun\";\"main\"\n\"1917864\";\"Dongying\";\"other\"\n\"1917864\";\"Qianlou Zhen\";\"other\"\n\"1917864\";\"dong ying cun\";\"other\"\n\"1917864\";\"东英村\";\"other\"\n\"1917867\";\"Xingxi\";\"main\"\n\"1917867\";\"Qiaodong Zhen\";\"other\"\n\"1917867\";\"qiao dong zhen\";\"other\"\n\"1917867\";\"xing xi\";\"other\"\n\"1917867\";\"兴溪\";\"other\"\n\"1917867\";\"桥东镇\";\"other\"\n\"1917868\";\"Zhangtang\";\"main\"\n\"1917868\";\"Zhangtang Zhen\";\"other\"\n\"1917868\";\"zhang tang\";\"other\"\n\"1917868\";\"樟塘\";\"other\"\n\"1917869\";\"Xinzhai\";\"main\"\n\"1917869\";\"Shenqiao Zhen\";\"other\"\n\"1917869\";\"xin zhai\";\"other\"\n\"1917869\";\"新寨\";\"other\"\n\"1917870\";\"Kangmei\";\"main\"\n\"1917870\";\"Kangmei Zhen\";\"other\"\n\"1917870\";\"kang mei\";\"other\"\n\"1917870\";\"康美\";\"other\"\n\"1917871\";\"Lushikeng\";\"main\"\n\"1917871\";\"Jinxing\";\"other\"\n\"1917871\";\"jin xing\";\"other\"\n\"1917871\";\"lu shi keng\";\"other\"\n\"1917871\";\"金星\";\"other\"\n\"1917871\";\"鹿食坑\";\"other\"\n\"1917875\";\"Jingbaoshan\";\"main\"\n\"1917875\";\"Jianshe\";\"other\"\n\"1917875\";\"jian she\";\"other\"\n\"1917875\";\"jin bao shan\";\"other\"\n\"1917875\";\"建设\";\"other\"\n\"1917875\";\"进宝山\";\"other\"\n\"1917876\";\"Lieyu\";\"main\"\n\"1917876\";\"Lieyu Zhen\";\"other\"\n\"1917876\";\"lie yu\";\"other\"\n\"1917876\";\"列屿\";\"other\"\n\"1917880\";\"Dongpu\";\"main\"\n\"1917880\";\"Hongxing\";\"other\"\n\"1917880\";\"dong bu\";\"other\"\n\"1917880\";\"hong xing\";\"other\"\n\"1917880\";\"东埔\";\"other\"\n\"1917880\";\"红星\";\"other\"\n\"1917887\";\"Dongkeng\";\"main\"\n\"1917887\";\"Dongxia Zhen\";\"other\"\n\"1917887\";\"dong keng\";\"other\"\n\"1917887\";\"dong sha\";\"other\"\n\"1917887\";\"东厦\";\"other\"\n\"1917887\";\"东坑\";\"other\"\n\"1917888\";\"Zhaizipu\";\"main\"\n\"1917888\";\"Heping\";\"other\"\n\"1917888\";\"he ping\";\"other\"\n\"1917888\";\"zhai zi bu\";\"other\"\n\"1917888\";\"和平\";\"other\"\n\"1917888\";\"寨仔埔\";\"other\"\n\"1917891\";\"Xiage\";\"main\"\n\"1917891\";\"Xiage Zhen\";\"other\"\n\"1917891\";\"Yangdong\";\"other\"\n\"1917891\";\"xia ge\";\"other\"\n\"1917891\";\"霞葛\";\"other\"\n\"1918273\";\"Fenglin\";\"main\"\n\"1918273\";\"Fenglin Zhen\";\"other\"\n\"1918273\";\"feng lin\";\"other\"\n\"1918273\";\"feng lin zhen\";\"other\"\n\"1918273\";\"风林\";\"other\"\n\"1918273\";\"风林镇\";\"other\"\n\"1918280\";\"Maofan\";\"main\"\n\"1918280\";\"mao ban\";\"other\"\n\"1918280\";\"茅坂\";\"other\"\n\"1918314\";\"Xintangbian\";\"main\"\n\"1918314\";\"Xintangbian Zhen\";\"other\"\n\"1918314\";\"xin tang bian\";\"other\"\n\"1918314\";\"xin tang bian zhen\";\"other\"\n\"1918314\";\"新塘边\";\"other\"\n\"1918314\";\"新塘边镇\";\"other\"\n\"1918327\";\"Wucun\";\"main\"\n\"1918327\";\"wu cun\";\"other\"\n\"1918327\";\"吴村\";\"other\"\n\"1918420\";\"Baishijie\";\"main\"\n\"1918420\";\"Baishi Zhen\";\"other\"\n\"1918420\";\"bai shi jie\";\"other\"\n\"1918420\";\"bai shi zhen\";\"other\"\n\"1918420\";\"白石街\";\"other\"\n\"1918420\";\"白石镇\";\"other\"\n\"1918511\";\"Dong’an\";\"main\"\n\"1918511\";\"Dong'an\";\"ascii\"\n\"1918511\";\"dong an\";\"other\"\n\"1918511\";\"东案\";\"other\"\n\"1918611\";\"Huangtian\";\"main\"\n\"1918611\";\"Huangtian Zhen\";\"other\"\n\"1918611\";\"Xibian\";\"other\"\n\"1918611\";\"huang tian zhen\";\"other\"\n\"1918611\";\"西边\";\"other\"\n\"1918611\";\"黄田\";\"other\"\n\"1918611\";\"黄田镇\";\"other\"\n\"1918623\";\"Shangyang\";\"main\"\n\"1918623\";\"shang yang\";\"other\"\n\"1918623\";\"上垟\";\"other\"\n\"1918655\";\"Pingdu\";\"main\"\n\"1918655\";\"Badu\";\"other\"\n\"1918655\";\"Pingdu Zhen\";\"other\"\n\"1918655\";\"屏都\";\"other\"\n\"1918655\";\"屏都镇\";\"other\"\n\"1918709\";\"Sanlian\";\"main\"\n\"1918709\";\"Sanlian Zhen\";\"other\"\n\"1918709\";\"三联\";\"other\"\n\"1918709\";\"三联镇\";\"other\"\n\"1918710\";\"Fangqian\";\"main\"\n\"1918710\";\"Fangqian Zhen\";\"other\"\n\"1918710\";\"fang qian zhen\";\"other\"\n\"1918710\";\"方前\";\"other\"\n\"1918710\";\"方前镇\";\"other\"\n\"1918713\";\"Fangjun\";\"main\"\n\"1918713\";\"Fangjun Zhen\";\"other\"\n\"1918713\";\"fang jun\";\"other\"\n\"1918713\";\"防军\";\"other\"\n\"1918713\";\"防军镇\";\"other\"\n\"1918719\";\"Mazhai\";\"main\"\n\"1918719\";\"Mazhai Zhen\";\"other\"\n\"1918719\";\"ma zhai zhen\";\"other\"\n\"1918719\";\"马宅\";\"other\"\n\"1918719\";\"马宅镇\";\"other\"\n\"1918735\";\"Pingqiao\";\"main\"\n\"1918735\";\"Pingqiao Zhen\";\"other\"\n\"1918735\";\"平桥\";\"other\"\n\"1918735\";\"平桥镇\";\"other\"\n\"1918742\";\"Huangtianfan\";\"main\"\n\"1918742\";\"Huangtianfan Zhen\";\"other\"\n\"1918742\";\"huang tian fan\";\"other\"\n\"1918742\";\"huang tian fan zhen\";\"other\"\n\"1918742\";\"黄田畈\";\"other\"\n\"1918742\";\"黄田畈镇\";\"other\"\n\"1918749\";\"Huaxi\";\"main\"\n\"1918749\";\"Huaxi Zhen\";\"other\"\n\"1918749\";\"hua xi zhen\";\"other\"\n\"1918749\";\"画溪\";\"other\"\n\"1918749\";\"画溪镇\";\"other\"\n\"1918758\";\"Guozhai\";\"main\"\n\"1918758\";\"Guozhai Zhen\";\"other\"\n\"1918758\";\"guo zhai\";\"other\"\n\"1918758\";\"guo zhai zhen\";\"other\"\n\"1918758\";\"郭宅\";\"other\"\n\"1918758\";\"郭宅镇\";\"other\"\n\"1918764\";\"Xichou\";\"main\"\n\"1918764\";\"Dongyangjiang\";\"other\"\n\"1918764\";\"Dongyangjiang Zhen\";\"other\"\n\"1918764\";\"qian chou\";\"other\"\n\"1918764\";\"东阳江镇\";\"other\"\n\"1918764\";\"茜畴\";\"other\"\n\"1918774\";\"Beijiang\";\"main\"\n\"1918774\";\"Beijiang Zhen\";\"other\"\n\"1918774\";\"bei jiang\";\"other\"\n\"1918774\";\"北江\";\"other\"\n\"1918774\";\"北江镇\";\"other\"\n\"1918784\";\"Diji\";\"main\"\n\"1918784\";\"Sandan\";\"other\"\n\"1918784\";\"san dan\";\"other\"\n\"1918784\";\"三单\";\"other\"\n\"1918784\";\"底吉\";\"other\"\n\"1918792\";\"Zuocun\";\"main\"\n\"1918792\";\"Zuocun Zhen\";\"other\"\n\"1918792\";\"zuo cun\";\"other\"\n\"1918792\";\"佐村\";\"other\"\n\"1918792\";\"佐村镇\";\"other\"\n\"1918793\";\"Xinshichang\";\"main\"\n\"1918793\";\"Shuangcai\";\"other\"\n\"1918793\";\"xin shi chang\";\"other\"\n\"1918793\";\"双彩\";\"other\"\n\"1918793\";\"新市场\";\"other\"\n\"1918795\";\"Huailu\";\"main\"\n\"1918795\";\"Huailu Zhen\";\"other\"\n\"1918795\";\"huai lu zhen\";\"other\"\n\"1918795\";\"怀鲁\";\"other\"\n\"1918795\";\"怀鲁镇\";\"other\"\n\"1918797\";\"Dianqian\";\"main\"\n\"1918797\";\"Jingping\";\"other\"\n\"1918797\";\"dian qian\";\"other\"\n\"1918797\";\"jing ping\";\"other\"\n\"1918797\";\"殿前\";\"other\"\n\"1918797\";\"镜屏\";\"other\"\n\"1918807\";\"Xiachengli\";\"main\"\n\"1918807\";\"Hulu\";\"other\"\n\"1918807\";\"Hulu Zhen\";\"other\"\n\"1918807\";\"厦程里\";\"other\"\n\"1918807\";\"虎鹿\";\"other\"\n\"1918820\";\"Lingbeizhou\";\"main\"\n\"1918820\";\"Lingbei\";\"other\"\n\"1918820\";\"Lingbei Zhen\";\"other\"\n\"1918820\";\"ling bei zhen\";\"other\"\n\"1918820\";\"岭北周\";\"other\"\n\"1918820\";\"岭北镇\";\"other\"\n\"1918876\";\"Gaochengtou\";\"main\"\n\"1918876\";\"Tongshan\";\"other\"\n\"1918876\";\"Tongshan Zhen\";\"other\"\n\"1918876\";\"同山镇\";\"other\"\n\"1918876\";\"高城头\";\"other\"\n\"1918883\";\"Lipu\";\"main\"\n\"1918883\";\"Lipu Zhen\";\"other\"\n\"1918883\";\"li pu\";\"other\"\n\"1918883\";\"浬浦\";\"other\"\n\"1918883\";\"浬浦镇\";\"other\"\n\"1918884\";\"Wangjiajing\";\"main\"\n\"1918884\";\"Wangjiajing Zhen\";\"other\"\n\"1918884\";\"wang jia jing\";\"other\"\n\"1918884\";\"王家井\";\"other\"\n\"1918884\";\"王家井镇\";\"other\"\n\"1918891\";\"Pukou\";\"main\"\n\"1918891\";\"Pukou Jiedao\";\"other\"\n\"1918891\";\"pu kou\";\"other\"\n\"1918891\";\"浦口\";\"other\"\n\"1918891\";\"浦口街道\";\"other\"\n\"1918911\";\"Datang’an\";\"main\"\n\"1918911\";\"Datang'an\";\"ascii\"\n\"1918911\";\"Datang\";\"other\"\n\"1918911\";\"Datang Zhen\";\"other\"\n\"1918911\";\"da tang an\";\"other\"\n\"1918911\";\"大唐庵\";\"other\"\n\"1918911\";\"大唐镇\";\"other\"\n\"1918938\";\"Zhaojia\";\"main\"\n\"1918938\";\"Zhaojia Zhen\";\"other\"\n\"1918938\";\"zhao jia\";\"other\"\n\"1918938\";\"赵家\";\"other\"\n\"1918938\";\"赵家镇\";\"other\"\n\"1918966\";\"Jiangzao\";\"main\"\n\"1918966\";\"Jiangzao Zhen\";\"other\"\n\"1918966\";\"jiang zao\";\"other\"\n\"1918966\";\"江藻\";\"other\"\n\"1918966\";\"江藻镇\";\"other\"\n\"1918967\";\"Shanxiahu\";\"main\"\n\"1918967\";\"Shanxiahu Zhen\";\"other\"\n\"1918967\";\"shan xia hu zhen\";\"other\"\n\"1918967\";\"山下湖\";\"other\"\n\"1918967\";\"山下湖镇\";\"other\"\n\"1918973\";\"Ruanshi\";\"main\"\n\"1918973\";\"Ruanshi Zhen\";\"other\"\n\"1918973\";\"ruan shi\";\"other\"\n\"1918973\";\"ruan shi zhen\";\"other\"\n\"1918973\";\"阮市\";\"other\"\n\"1918973\";\"阮市镇\";\"other\"\n\"1918986\";\"Louta\";\"main\"\n\"1918986\";\"Louta Zhen\";\"other\"\n\"1918986\";\"lou ta zhen\";\"other\"\n\"1918986\";\"楼塔\";\"other\"\n\"1918986\";\"楼塔镇\";\"other\"\n\"1918996\";\"Lijiashan\";\"main\"\n\"1918996\";\"Lanting\";\"other\"\n\"1918996\";\"Lanting Zhen\";\"other\"\n\"1918996\";\"Lougong\";\"other\"\n\"1918996\";\"lan ting zhen\";\"other\"\n\"1918996\";\"li jia shan\";\"other\"\n\"1918996\";\"lou gong\";\"other\"\n\"1918996\";\"兰亭镇\";\"other\"\n\"1918996\";\"娄宫\";\"other\"\n\"1918996\";\"李家山\";\"other\"\n\"1919000\";\"Diankou\";\"main\"\n\"1919000\";\"Diankou Zhen\";\"other\"\n\"1919000\";\"dian kou zhen\";\"other\"\n\"1919000\";\"店口\";\"other\"\n\"1919000\";\"店口镇\";\"other\"\n\"1919006\";\"Changtang\";\"main\"\n\"1919006\";\"Changtang Zhen\";\"other\"\n\"1919006\";\"长塘\";\"other\"\n\"1919006\";\"长塘镇\";\"other\"\n\"1919007\";\"Fusheng\";\"main\"\n\"1919007\";\"Fusheng Zhen\";\"other\"\n\"1919007\";\"fu sheng\";\"other\"\n\"1919007\";\"fu sheng zhen\";\"other\"\n\"1919007\";\"富盛\";\"other\"\n\"1919007\";\"富盛镇\";\"other\"\n\"1919014\";\"Lianghu\";\"main\"\n\"1919014\";\"Lianghu Zhen\";\"other\"\n\"1919014\";\"梁湖\";\"other\"\n\"1919014\";\"梁湖镇\";\"other\"\n\"1919017\";\"Jinsanjiao\";\"main\"\n\"1919017\";\"Fuquan\";\"other\"\n\"1919017\";\"Fuquan Zhen\";\"other\"\n\"1919017\";\"fu quan zhen\";\"other\"\n\"1919017\";\"福全镇\";\"other\"\n\"1919017\";\"金三角\";\"other\"\n\"1919368\";\"Luogang\";\"main\"\n\"1919368\";\"Luogang Zhen\";\"other\"\n\"1919368\";\"luo gang\";\"other\"\n\"1919368\";\"罗岗\";\"other\"\n\"1919420\";\"Heshui\";\"main\"\n\"1919420\";\"Heshui Zhen\";\"other\"\n\"1919420\";\"he shui\";\"other\"\n\"1919420\";\"合水\";\"other\"\n\"1919435\";\"Yetang\";\"main\"\n\"1919435\";\"Yetang Zhen\";\"other\"\n\"1919435\";\"ye tang\";\"other\"\n\"1919435\";\"叶塘\";\"other\"\n\"1919437\";\"Jingnan\";\"main\"\n\"1919437\";\"Jingnan Zhen\";\"other\"\n\"1919437\";\"jing nan\";\"other\"\n\"1919437\";\"径南\";\"other\"\n\"1919448\";\"Xinbei\";\"main\"\n\"1919448\";\"Xinbei Zhen\";\"other\"\n\"1919448\";\"xin po\";\"other\"\n\"1919448\";\"新陂\";\"other\"\n\"1919450\";\"Ningxin\";\"main\"\n\"1919450\";\"Ningxin Jiedao\";\"other\"\n\"1919450\";\"ning xin\";\"other\"\n\"1919450\";\"宁新\";\"other\"\n\"1919455\";\"Shangrao\";\"main\"\n\"1919455\";\"Shangrao Zhen\";\"other\"\n\"1919455\";\"shang rao\";\"other\"\n\"1919455\";\"上饶\";\"other\"\n\"1919467\";\"Raoyang\";\"main\"\n\"1919467\";\"Raoyang Zhen\";\"other\"\n\"1919467\";\"rao yang\";\"other\"\n\"1919467\";\"饶洋\";\"other\"\n\"1919472\";\"Nibei\";\"main\"\n\"1919472\";\"Nibei Zhen\";\"other\"\n\"1919472\";\"ni po\";\"other\"\n\"1919472\";\"坭陂\";\"other\"\n\"1919488\";\"Jianrao\";\"main\"\n\"1919488\";\"Jianrao Zhen\";\"other\"\n\"1919488\";\"jian rao\";\"other\"\n\"1919488\";\"建饶\";\"other\"\n\"1919498\";\"Huangbu\";\"main\"\n\"1919498\";\"Huangbu Zhen\";\"other\"\n\"1919498\";\"黄布\";\"other\"\n\"1919498\";\"黄布镇\";\"other\"\n\"1919511\";\"Xintang\";\"main\"\n\"1919511\";\"Xintang Zhen\";\"other\"\n\"1919511\";\"xin tang\";\"other\"\n\"1919511\";\"新塘\";\"other\"\n\"1919515\";\"Zishi\";\"main\"\n\"1919515\";\"Zishi Zhen\";\"other\"\n\"1919515\";\"紫市\";\"other\"\n\"1919515\";\"紫市镇\";\"other\"\n\"1919522\";\"Dongshan\";\"main\"\n\"1919522\";\"Dongshan Zhen\";\"other\"\n\"1919522\";\"dong shan\";\"other\"\n\"1919522\";\"东山\";\"other\"\n\"1919525\";\"Tangxi\";\"main\"\n\"1919525\";\"Tangxi Zhen\";\"other\"\n\"1919525\";\"tang xi\";\"other\"\n\"1919525\";\"汤溪\";\"other\"\n\"1919539\";\"Datian\";\"main\"\n\"1919539\";\"Datian Zhen\";\"other\"\n\"1919539\";\"大田\";\"other\"\n\"1919539\";\"大田镇\";\"other\"\n\"1919547\";\"Fubin\";\"main\"\n\"1919547\";\"Fubin Zhen\";\"other\"\n\"1919547\";\"fu bin\";\"other\"\n\"1919547\";\"浮滨\";\"other\"\n\"1919558\";\"Chifeng\";\"main\"\n\"1919558\";\"Chifeng Zhen\";\"other\"\n\"1919558\";\"chi feng\";\"other\"\n\"1919558\";\"赤凤\";\"other\"\n\"1919564\";\"Xinxu\";\"main\"\n\"1919564\";\"Xinxu Zhen\";\"other\"\n\"1919564\";\"xin wei\";\"other\"\n\"1919564\";\"新圩\";\"other\"\n\"1919565\";\"Kanghe\";\"main\"\n\"1919565\";\"Kanghe Zhen\";\"other\"\n\"1919565\";\"康禾\";\"other\"\n\"1919565\";\"康禾镇\";\"other\"\n\"1919583\";\"Guihu\";\"main\"\n\"1919583\";\"Guihu Zhen\";\"other\"\n\"1919583\";\"gui hu\";\"other\"\n\"1919583\";\"归湖\";\"other\"\n\"1919584\";\"Wenci\";\"main\"\n\"1919584\";\"Wenci Zhen\";\"other\"\n\"1919584\";\"wen ci\";\"other\"\n\"1919584\";\"文祠\";\"other\"\n\"1919592\";\"Zhangxi\";\"main\"\n\"1919592\";\"Zhangxi Zhen\";\"other\"\n\"1919592\";\"zhang xi\";\"other\"\n\"1919592\";\"樟溪\";\"other\"\n\"1919598\";\"Gaotang\";\"main\"\n\"1919598\";\"Gaotang Zhen\";\"other\"\n\"1919598\";\"gao tang\";\"other\"\n\"1919598\";\"高堂\";\"other\"\n\"1919602\";\"Lianrao\";\"main\"\n\"1919602\";\"Lianrao Zhen\";\"other\"\n\"1919602\";\"lian rao\";\"other\"\n\"1919602\";\"联饶\";\"other\"\n\"1919615\";\"Dengtang\";\"main\"\n\"1919615\";\"Dengtang Zhen\";\"other\"\n\"1919615\";\"deng tang\";\"other\"\n\"1919615\";\"登塘\";\"other\"\n\"1919629\";\"Linxi\";\"main\"\n\"1919629\";\"Linxi Zhen\";\"other\"\n\"1919629\";\"lin xi\";\"other\"\n\"1919629\";\"磷溪\";\"other\"\n\"1919631\";\"Jingzi\";\"main\"\n\"1919631\";\"Jingzi Zhen\";\"other\"\n\"1919631\";\"敬梓\";\"other\"\n\"1919631\";\"敬梓镇\";\"other\"\n\"1919633\";\"Fengtang\";\"main\"\n\"1919633\";\"Fengtang Zhen\";\"other\"\n\"1919633\";\"feng tang\";\"other\"\n\"1919633\";\"凤塘\";\"other\"\n\"1919637\";\"Guantang\";\"main\"\n\"1919637\";\"Guantang Zhen\";\"other\"\n\"1919637\";\"guan tang\";\"other\"\n\"1919637\";\"官塘\";\"other\"\n\"1919639\";\"Dacheng\";\"main\"\n\"1919639\";\"Dacheng Zhen\";\"other\"\n\"1919639\";\"da cheng\";\"other\"\n\"1919639\";\"大埕\";\"other\"\n\"1919641\";\"Tiepu\";\"main\"\n\"1919641\";\"Tiepu Zhen\";\"other\"\n\"1919641\";\"tie pu\";\"other\"\n\"1919641\";\"铁铺\";\"other\"\n\"1919642\";\"Suocheng\";\"main\"\n\"1919642\";\"Suocheng Zhen\";\"other\"\n\"1919642\";\"suo cheng\";\"other\"\n\"1919642\";\"所城\";\"other\"\n\"1919643\";\"Yanhong\";\"main\"\n\"1919643\";\"Yanhong Zhen\";\"other\"\n\"1919643\";\"yan hong\";\"other\"\n\"1919643\";\"盐鸿\";\"other\"\n\"1919656\";\"Longdu\";\"main\"\n\"1919656\";\"Longdu Zhen\";\"other\"\n\"1919656\";\"long dou\";\"other\"\n\"1919656\";\"隆都\";\"other\"\n\"1919671\";\"Dongfeng\";\"main\"\n\"1919671\";\"Dongfeng Zhen\";\"other\"\n\"1919671\";\"dong feng\";\"other\"\n\"1919671\";\"东风\";\"other\"\n\"1919674\";\"Haishan\";\"main\"\n\"1919674\";\"Haishan Zhen\";\"other\"\n\"1919674\";\"hai shan\";\"other\"\n\"1919674\";\"海山\";\"other\"\n\"1919676\";\"Jinshi\";\"main\"\n\"1919676\";\"Jinshi Zhen\";\"other\"\n\"1919676\";\"jin shi\";\"other\"\n\"1919676\";\"金石\";\"other\"\n\"1919679\";\"Shaxi\";\"main\"\n\"1919679\";\"Shaxi Zhen\";\"other\"\n\"1919679\";\"sha xi\";\"other\"\n\"1919679\";\"沙溪\";\"other\"\n\"1919688\";\"Caitang\";\"main\"\n\"1919688\";\"Caitang Zhen\";\"other\"\n\"1919688\";\"cai tang\";\"other\"\n\"1919688\";\"彩塘\";\"other\"\n\"1919691\";\"Lianxia\";\"main\"\n\"1919691\";\"Lianxia Zhen\";\"other\"\n\"1919691\";\"lian xia\";\"other\"\n\"1919691\";\"莲下\";\"other\"\n\"1919692\";\"Nanxi\";\"main\"\n\"1919692\";\"nan xi\";\"other\"\n\"1919692\";\"南溪\";\"other\"\n\"1919695\";\"Tatou\";\"main\"\n\"1919695\";\"ta tou\";\"other\"\n\"1919695\";\"塔头\";\"other\"\n\"1919701\";\"Huizhai\";\"main\"\n\"1919701\";\"hui zhai\";\"other\"\n\"1919701\";\"灰寨\";\"other\"\n\"1919707\";\"Shen’ao\";\"main\"\n\"1919707\";\"Shen'ao\";\"ascii\"\n\"1919707\";\"San'ao\";\"other\"\n\"1919707\";\"San’ao\";\"other\"\n\"1919707\";\"Shen'ao Zhen\";\"other\"\n\"1919707\";\"Shen’ao Zhen\";\"other\"\n\"1919707\";\"shen ao\";\"other\"\n\"1919707\";\"深澳\";\"other\"\n\"1919708\";\"Jiushu\";\"main\"\n\"1919708\";\"Jiushu Zhen\";\"other\"\n\"1919708\";\"九树\";\"other\"\n\"1919708\";\"九树镇\";\"other\"\n\"1919709\";\"Jinzao\";\"main\"\n\"1919709\";\"Jinyu\";\"other\"\n\"1919709\";\"Jinyu Zhen\";\"other\"\n\"1919709\";\"jin yu\";\"other\"\n\"1919709\";\"jin zao\";\"other\"\n\"1919709\";\"金灶\";\"other\"\n\"1919709\";\"金玉\";\"other\"\n\"1919715\";\"Waisha\";\"main\"\n\"1919715\";\"Waisha Zhen\";\"other\"\n\"1919715\";\"wai sha\";\"other\"\n\"1919715\";\"外砂\";\"other\"\n\"1919716\";\"Jinhe\";\"main\"\n\"1919716\";\"jin he\";\"other\"\n\"1919716\";\"金和\";\"other\"\n\"1919726\";\"Tuotang\";\"main\"\n\"1919726\";\"Liantang\";\"other\"\n\"1919726\";\"Tuotang Jiedao\";\"other\"\n\"1919726\";\"tuo tang\";\"other\"\n\"1919726\";\"鮀塘\";\"other\"\n\"1919728\";\"Yun’ao\";\"main\"\n\"1919728\";\"Yun'ao\";\"ascii\"\n\"1919728\";\"Yun'ao Zhen\";\"other\"\n\"1919728\";\"Yun’ao Zhen\";\"other\"\n\"1919728\";\"yun ao\";\"other\"\n\"1919728\";\"云澳\";\"other\"\n\"1919731\";\"Tuopu\";\"main\"\n\"1919731\";\"Tuopu Jiedao\";\"other\"\n\"1919731\";\"tuo pu\";\"other\"\n\"1919731\";\"鮀浦\";\"other\"\n\"1919732\";\"Xinxi\";\"main\"\n\"1919732\";\"Xinxi Zhen\";\"other\"\n\"1919732\";\"xin xi\";\"other\"\n\"1919732\";\"新溪\";\"other\"\n\"1919742\";\"Xilu\";\"main\"\n\"1919742\";\"Xilu Zhen\";\"other\"\n\"1919742\";\"xi lu\";\"other\"\n\"1919742\";\"西胪\";\"other\"\n\"1919743\";\"Luoxi\";\"main\"\n\"1919743\";\"luo xi\";\"other\"\n\"1919743\";\"螺溪\";\"other\"\n\"1919746\";\"Qilin\";\"main\"\n\"1919746\";\"Qilin Zhen\";\"other\"\n\"1919746\";\"qi lin\";\"other\"\n\"1919746\";\"麒麟\";\"other\"\n\"1919748\";\"Gurao\";\"main\"\n\"1919748\";\"Gurao Zhen\";\"other\"\n\"1919748\";\"gu rao\";\"other\"\n\"1919748\";\"谷饶\";\"other\"\n\"1919751\";\"Suqu\";\"main\"\n\"1919751\";\"Suqu Zhen\";\"other\"\n\"1919751\";\"苏区\";\"other\"\n\"1919751\";\"苏区镇\";\"other\"\n\"1919753\";\"Nanwan\";\"main\"\n\"1919753\";\"nan wan\";\"other\"\n\"1919753\";\"南万\";\"other\"\n\"1919756\";\"Meitang\";\"main\"\n\"1919756\";\"mei tang\";\"other\"\n\"1919756\";\"梅塘\";\"other\"\n\"1919759\";\"Nanjing\";\"main\"\n\"1919759\";\"Nankin\";\"other\"\n\"1919759\";\"nan jing\";\"other\"\n\"1919759\";\"Нанкин\";\"other\"\n\"1919759\";\"南径\";\"other\"\n\"1919762\";\"Hexi\";\"main\"\n\"1919762\";\"Hexi Zhen\";\"other\"\n\"1919762\";\"he xi\";\"other\"\n\"1919762\";\"河溪\";\"other\"\n\"1919775\";\"Tongyu\";\"main\"\n\"1919775\";\"Tongmeng\";\"other\"\n\"1919775\";\"Tongyu Zhen\";\"other\"\n\"1919775\";\"tong yu\";\"other\"\n\"1919775\";\"铜盂\";\"other\"\n\"1919780\";\"Chendian\";\"main\"\n\"1919780\";\"Chendian Zhen\";\"other\"\n\"1919780\";\"chen dian\";\"other\"\n\"1919780\";\"陈店\";\"other\"\n\"1919782\";\"Majiao\";\"main\"\n\"1919782\";\"Majiao Jiedao\";\"other\"\n\"1919782\";\"ma jiao\";\"other\"\n\"1919782\";\"马滘\";\"other\"\n\"1919784\";\"Mashan\";\"main\"\n\"1919784\";\"ma shan\";\"other\"\n\"1919784\";\"马山\";\"other\"\n\"1919785\";\"Dananshan\";\"main\"\n\"1919785\";\"da nan shan\";\"other\"\n\"1919785\";\"大南山\";\"other\"\n\"1919788\";\"Shanghu\";\"main\"\n\"1919788\";\"shang hu\";\"other\"\n\"1919788\";\"上护\";\"other\"\n\"1919790\";\"Jinpu\";\"main\"\n\"1919790\";\"Jinpu Jiedao\";\"other\"\n\"1919790\";\"Jinpujieban\";\"other\"\n\"1919790\";\"jin pu\";\"other\"\n\"1919790\";\"金浦\";\"other\"\n\"1919795\";\"Xiancheng\";\"main\"\n\"1919795\";\"Xiancheng Zhen\";\"other\"\n\"1919795\";\"xian cheng\";\"other\"\n\"1919795\";\"仙城\";\"other\"\n\"1919798\";\"Chuanpu\";\"main\"\n\"1919798\";\"chuan bu\";\"other\"\n\"1919798\";\"船埔\";\"other\"\n\"1919801\";\"Lugang\";\"main\"\n\"1919801\";\"Lugang Zhen\";\"other\"\n\"1919801\";\"lu gang\";\"other\"\n\"1919801\";\"胪岗\";\"other\"\n\"1919802\";\"Baokou\";\"main\"\n\"1919802\";\"bao kou\";\"other\"\n\"1919802\";\"宝口\";\"other\"\n\"1919803\";\"Liangying\";\"main\"\n\"1919803\";\"Liangying Zhen\";\"other\"\n\"1919803\";\"liang ying\";\"other\"\n\"1919803\";\"两英\";\"other\"\n\"1919813\";\"Jingdu\";\"main\"\n\"1919813\";\"Jingdu Zhen\";\"other\"\n\"1919813\";\"jing dou\";\"other\"\n\"1919813\";\"井都\";\"other\"\n\"1919816\";\"Xintian\";\"main\"\n\"1919816\";\"xin tian\";\"other\"\n\"1919816\";\"新田\";\"other\"\n\"1919835\";\"Hongchang\";\"main\"\n\"1919835\";\"Hongchang Zhen\";\"other\"\n\"1919835\";\"hong chang\";\"other\"\n\"1919835\";\"红场\";\"other\"\n\"1919836\";\"Pingdong\";\"main\"\n\"1919836\";\"ping dong\";\"other\"\n\"1919836\";\"平东\";\"other\"\n\"1919846\";\"Leiling\";\"main\"\n\"1919846\";\"Leiling Zhen\";\"other\"\n\"1919846\";\"lei ling\";\"other\"\n\"1919846\";\"雷岭\";\"other\"\n\"1919852\";\"Xinan\";\"main\"\n\"1919852\";\"Xinan Zhen\";\"other\"\n\"1919852\";\"xi nan\";\"other\"\n\"1919852\";\"西南\";\"other\"\n\"1919855\";\"Baipenzhu\";\"main\"\n\"1919855\";\"bai pen zhu\";\"other\"\n\"1919855\";\"白盆珠\";\"other\"\n\"1919859\";\"Bawan\";\"main\"\n\"1919859\";\"Bawan Zhen\";\"other\"\n\"1919859\";\"ba wan\";\"other\"\n\"1919859\";\"八万\";\"other\"\n\"1919860\";\"Beiyang\";\"main\"\n\"1919860\";\"Beiyang Zhen\";\"other\"\n\"1919860\";\"po yang\";\"other\"\n\"1919860\";\"陂洋\";\"other\"\n\"1919861\";\"Huahu\";\"main\"\n\"1919861\";\"Huahu Zhen\";\"other\"\n\"1919861\";\"hua hu\";\"other\"\n\"1919861\";\"华湖\";\"other\"\n\"1919866\";\"Zhoutian\";\"main\"\n\"1919866\";\"Zhoutian Zhen\";\"other\"\n\"1919866\";\"zhou tian\";\"other\"\n\"1919866\";\"周田\";\"other\"\n\"1919869\";\"Donglong\";\"main\"\n\"1919869\";\"Donglong Zhen\";\"other\"\n\"1919869\";\"dong long\";\"other\"\n\"1919869\";\"东陇\";\"other\"\n\"1920396\";\"Xiashuai\";\"main\"\n\"1920396\";\"Xiashuai Zhuangzu Yaozuxiang\";\"other\"\n\"1920396\";\"xia shuai\";\"other\"\n\"1920396\";\"xia shuai zhuang zu yao zu xiang\";\"other\"\n\"1920396\";\"下帅\";\"other\"\n\"1920396\";\"下帅壮族瑶族乡\";\"other\"\n\"1920524\";\"Yao’an\";\"main\"\n\"1920524\";\"Yao'an\";\"ascii\"\n\"1920524\";\"Yao'an Yaozuxiang\";\"other\"\n\"1920524\";\"Yao’an Yaozuxiang\";\"other\"\n\"1920524\";\"yao an\";\"other\"\n\"1920524\";\"yao an yao zu xiang\";\"other\"\n\"1920524\";\"瑶安\";\"other\"\n\"1920524\";\"瑶安瑶族乡\";\"other\"\n\"1920535\";\"Sanshui\";\"main\"\n\"1920535\";\"Sanshui Yaozuxiang\";\"other\"\n\"1920535\";\"san shui\";\"other\"\n\"1920535\";\"san shui yao zu xiang\";\"other\"\n\"1920535\";\"三水\";\"other\"\n\"1920535\";\"三水瑶族乡\";\"other\"\n\"1920772\";\"Zhoucheng\";\"main\"\n\"1921037\";\"Xunzhong\";\"main\"\n\"1921037\";\"xun zhong\";\"other\"\n\"1921037\";\"浔中\";\"other\"\n\"1921142\";\"Donglin\";\"main\"\n\"1921142\";\"Gulei Zhen\";\"other\"\n\"1921142\";\"dong lin\";\"other\"\n\"1921142\";\"gu lei zhen\";\"other\"\n\"1921142\";\"东林\";\"other\"\n\"1921142\";\"古雷镇\";\"other\"\n\"1921199\";\"Keren\";\"main\"\n\"1921200\";\"Wubao\";\"main\"\n\"1921200\";\"Wubu\";\"other\"\n\"1921200\";\"五堡\";\"other\"\n\"1921204\";\"Tatou\";\"main\"\n\"1921204\";\"ta tou\";\"other\"\n\"1921204\";\"塔头\";\"other\"\n\"1921211\";\"Yinglin\";\"main\"\n\"1921219\";\"Maping\";\"main\"\n\"1921237\";\"Neikeng\";\"main\"\n\"1921237\";\"nei keng\";\"other\"\n\"1921237\";\"内坑\";\"other\"\n\"1921267\";\"Baiqi\";\"main\"\n\"1921267\";\"Baiqihuizuxiang\";\"other\"\n\"1921267\";\"bai qi\";\"other\"\n\"1921267\";\"百崎\";\"other\"\n\"1921281\";\"Shanxia\";\"main\"\n\"1921281\";\"shan xia\";\"other\"\n\"1921281\";\"山霞\";\"other\"\n\"1921288\";\"Xiangyun\";\"main\"\n\"1921290\";\"Jingfeng\";\"main\"\n\"1921290\";\"jing feng\";\"other\"\n\"1921290\";\"净峰\";\"other\"\n\"1921372\";\"Dalianwan\";\"main\"\n\"1921606\";\"Anjie\";\"main\"\n\"1921606\";\"Anjie Xiang\";\"other\"\n\"1921606\";\"庵杰\";\"other\"\n\"1921606\";\"庵杰乡\";\"other\"\n\"1921609\";\"Tiechang\";\"main\"\n\"1921609\";\"Tiechang Xiang\";\"other\"\n\"1921609\";\"铁长\";\"other\"\n\"1921609\";\"铁长乡\";\"other\"\n\"1921610\";\"Dengjia\";\"main\"\n\"1921610\";\"邓家\";\"other\"\n\"1921612\";\"Sibao\";\"main\"\n\"1921612\";\"Sibao Xiang\";\"other\"\n\"1921612\";\"四堡\";\"other\"\n\"1921612\";\"四堡乡\";\"other\"\n\"1921621\";\"Datong\";\"main\"\n\"1921621\";\"Datong Zhen\";\"other\"\n\"1921621\";\"大同\";\"other\"\n\"1921621\";\"大同镇\";\"other\"\n\"1921622\";\"Lijia\";\"main\"\n\"1921622\";\"李家\";\"other\"\n\"1921627\";\"Gechuan\";\"main\"\n\"1921627\";\"Gechuan Xiang\";\"other\"\n\"1921627\";\"隔川\";\"other\"\n\"1921627\";\"隔川乡\";\"other\"\n\"1921630\";\"Jiele\";\"main\"\n\"1921630\";\"Jiele Xiang\";\"other\"\n\"1921630\";\"揭乐\";\"other\"\n\"1921630\";\"揭乐乡\";\"other\"\n\"1921645\";\"Xuanhe\";\"main\"\n\"1921645\";\"Xuanhe Xiang\";\"other\"\n\"1921645\";\"宣和\";\"other\"\n\"1921645\";\"宣和乡\";\"other\"\n\"1921646\";\"Sanzhou\";\"main\"\n\"1921646\";\"Sanzhou Xiang\";\"other\"\n\"1921646\";\"三州\";\"other\"\n\"1921646\";\"三州乡\";\"other\"\n\"1921659\";\"Hongshan\";\"main\"\n\"1921659\";\"Hongshan Xiang\";\"other\"\n\"1921659\";\"红山\";\"other\"\n\"1921659\";\"红山乡\";\"other\"\n\"1921672\";\"Yanggu\";\"main\"\n\"1921672\";\"Yanggu Xiang\";\"other\"\n\"1921672\";\"羊牯\";\"other\"\n\"1921672\";\"羊牯乡\";\"other\"\n\"1921990\";\"Xialiantang\";\"main\"\n\"1921990\";\"Liantang\";\"other\"\n\"1921990\";\"Liantang Zhen\";\"other\"\n\"1921990\";\"lian tang zhen\";\"other\"\n\"1921990\";\"xia lian tang\";\"other\"\n\"1921990\";\"下连塘\";\"other\"\n\"1921990\";\"莲塘镇\";\"other\"\n\"1922279\";\"Tianyuan\";\"main\"\n\"1922279\";\"田源\";\"other\"\n\"1922280\";\"Qitao\";\"main\"\n\"1922280\";\"Qitao Zhen\";\"other\"\n\"1922280\";\"奇韬\";\"other\"\n\"1922280\";\"奇韬镇\";\"other\"\n\"1922300\";\"Yupeng\";\"main\"\n\"1922300\";\"余朋\";\"other\"\n\"1922324\";\"Baziqiao\";\"main\"\n\"1922324\";\"Baziqiao Xiang\";\"other\"\n\"1922324\";\"八字桥\";\"other\"\n\"1922324\";\"八字桥乡\";\"other\"\n\"1922329\";\"Chengnan\";\"main\"\n\"1922329\";\"城南\";\"other\"\n\"1922337\";\"Xiaochi\";\"main\"\n\"1922337\";\"Wenjiao\";\"other\"\n\"1922337\";\"小池\";\"other\"\n\"1922337\";\"温郊\";\"other\"\n\"1922338\";\"Xinshi\";\"main\"\n\"1922338\";\"Shibi Zhen\";\"other\"\n\"1922338\";\"新市\";\"other\"\n\"1922338\";\"石壁镇\";\"other\"\n\"1922346\";\"Nanxia\";\"main\"\n\"1922346\";\"Nanxia Xiang\";\"other\"\n\"1922346\";\"南霞\";\"other\"\n\"1922346\";\"南霞乡\";\"other\"\n\"1922347\";\"Xubi\";\"main\"\n\"1922347\";\"俆碧\";\"other\"\n\"1922356\";\"Chenda\";\"main\"\n\"1922356\";\"Chenda Zhen\";\"other\"\n\"1922356\";\"陈大\";\"other\"\n\"1922356\";\"陈大镇\";\"other\"\n\"1922364\";\"Hanxian\";\"main\"\n\"1922364\";\"Hanxian Zhen\";\"other\"\n\"1922364\";\"瀚仙\";\"other\"\n\"1922364\";\"瀚仙镇\";\"other\"\n\"1922372\";\"Langkou\";\"main\"\n\"1922372\";\"Langkou Zhen\";\"other\"\n\"1922372\";\"琅口\";\"other\"\n\"1922372\";\"琅口镇\";\"other\"\n\"1922387\";\"Helong\";\"main\"\n\"1922387\";\"河龙\";\"other\"\n\"1922425\";\"Xiafang\";\"main\"\n\"1922425\";\"Xiafang Xiang\";\"other\"\n\"1922425\";\"夏坊\";\"other\"\n\"1922425\";\"夏坊乡\";\"other\"\n\"1922428\";\"Lishu\";\"main\"\n\"1922428\";\"Lishu Xiang\";\"other\"\n\"1922428\";\"梨树\";\"other\"\n\"1922428\";\"梨树乡\";\"other\"\n\"1922443\";\"Long’an\";\"main\"\n\"1922443\";\"Long'an\";\"ascii\"\n\"1922443\";\"Long'an Xiang\";\"other\"\n\"1922443\";\"Long’an Xiang\";\"other\"\n\"1922443\";\"龙安\";\"other\"\n\"1922443\";\"龙安乡\";\"other\"\n\"1922458\";\"Dushang\";\"main\"\n\"1922458\";\"Yijia\";\"other\"\n\"1922458\";\"伊家\";\"other\"\n\"1922458\";\"都上\";\"other\"\n\"1922462\";\"Dabu\";\"main\"\n\"1922462\";\"Dabu Xiang\";\"other\"\n\"1922462\";\"大布\";\"other\"\n\"1922462\";\"大布乡\";\"other\"\n\"1922471\";\"Huangbu\";\"main\"\n\"1922471\";\"黄埠\";\"other\"\n\"1922473\";\"Kaishan\";\"main\"\n\"1922473\";\"Kaishan Xiang\";\"other\"\n\"1922473\";\"开善\";\"other\"\n\"1922473\";\"开善乡\";\"other\"\n\"1922483\";\"Shuinan\";\"main\"\n\"1922483\";\"Shuinan Zhen\";\"other\"\n\"1922483\";\"水南\";\"other\"\n\"1922483\";\"水南镇\";\"other\"\n\"1922492\";\"Hedong\";\"main\"\n\"1922492\";\"Jinxi\";\"other\"\n\"1922492\";\"河东\";\"other\"\n\"1922492\";\"金溪\";\"other\"\n\"1922523\";\"Hongdun\";\"main\"\n\"1922523\";\"Hongdun Zhen\";\"other\"\n\"1922523\";\"洪墩\";\"other\"\n\"1922523\";\"洪墩镇\";\"other\"\n\"1923630\";\"Zhukeng\";\"main\"\n\"1923630\";\"Zhukeng Xiang\";\"other\"\n\"1923630\";\"珠坑\";\"other\"\n\"1923630\";\"珠坑乡\";\"other\"\n\"1923636\";\"Jiecunxu\";\"main\"\n\"1923636\";\"Jiecun\";\"other\"\n\"1923636\";\"Jiecun Xiang\";\"other\"\n\"1923636\";\"杰村\";\"other\"\n\"1923636\";\"杰村乡\";\"other\"\n\"1923671\";\"Butou\";\"main\"\n\"1923671\";\"Butou Xiang\";\"other\"\n\"1923671\";\"埠头\";\"other\"\n\"1923671\";\"埠头乡\";\"other\"\n\"1923699\";\"Longping\";\"main\"\n\"1923699\";\"Longping Xiang\";\"other\"\n\"1923699\";\"隆坪\";\"other\"\n\"1923699\";\"隆坪乡\";\"other\"\n\"1923733\";\"Dinglong\";\"main\"\n\"1923733\";\"Dinglong Xiang\";\"other\"\n\"1923733\";\"Dinglongxu\";\"other\"\n\"1923733\";\"鼎龙\";\"other\"\n\"1923733\";\"鼎龙乡\";\"other\"\n\"1923786\";\"Shuicha\";\"main\"\n\"1923786\";\"Shuicha Xiang\";\"other\"\n\"1923786\";\"水槎\";\"other\"\n\"1923786\";\"水槎乡\";\"other\"\n\"1923838\";\"Tangfang\";\"main\"\n\"1923838\";\"Tangfang Xiang\";\"other\"\n\"1923838\";\"塘坊\";\"other\"\n\"1923838\";\"塘坊乡\";\"other\"\n\"1923922\";\"Guanxi\";\"main\"\n\"1923922\";\"Guanxi Zhen\";\"other\"\n\"1923922\";\"灌溪\";\"other\"\n\"1923922\";\"灌溪镇\";\"other\"\n\"1924002\";\"Sanfang\";\"main\"\n\"1924002\";\"Sanfang Xiang\";\"other\"\n\"1924002\";\"三坊\";\"other\"\n\"1924002\";\"三坊乡\";\"other\"\n\"1924023\";\"Wanhe\";\"main\"\n\"1924023\";\"Wanhe Zhen\";\"other\"\n\"1924023\";\"万合\";\"other\"\n\"1924023\";\"万合镇\";\"other\"\n\"1924048\";\"Qianshan\";\"main\"\n\"1924048\";\"Qianshan Xiang\";\"other\"\n\"1924048\";\"千善\";\"other\"\n\"1924048\";\"千善乡\";\"other\"\n\"1924056\";\"Wenbei\";\"main\"\n\"1924056\";\"Wenbei Xiang\";\"other\"\n\"1924056\";\"文陂\";\"other\"\n\"1924056\";\"文陂乡\";\"other\"\n\"1924162\";\"Gangdong\";\"main\"\n\"1924162\";\"Gangdong Xiang\";\"other\"\n\"1924162\";\"gang dong\";\"other\"\n\"1924162\";\"港东\";\"other\"\n\"1924170\";\"Yingjiang\";\"main\"\n\"1924170\";\"Yingjiang Xiang\";\"other\"\n\"1924170\";\"ying jiang\";\"other\"\n\"1924170\";\"ying jiang xiang\";\"other\"\n\"1924170\";\"英将\";\"other\"\n\"1924170\";\"英将乡\";\"other\"\n\"1924191\";\"Tieshan\";\"main\"\n\"1924191\";\"Tieshan Xiang\";\"other\"\n\"1924191\";\"tie shan\";\"other\"\n\"1924191\";\"tie shan xiang\";\"other\"\n\"1924191\";\"铁山\";\"other\"\n\"1924191\";\"铁山乡\";\"other\"\n\"1924194\";\"Hongqiao\";\"main\"\n\"1924194\";\"Hongqiao Xiang\";\"other\"\n\"1924194\";\"hong qiao\";\"other\"\n\"1924194\";\"hong qiao xiang\";\"other\"\n\"1924194\";\"虹桥\";\"other\"\n\"1924194\";\"虹桥乡\";\"other\"\n\"1924204\";\"Xin’anbu\";\"main\"\n\"1924204\";\"Xin'anbu\";\"ascii\"\n\"1924204\";\"Xin'anbu Xiang\";\"other\"\n\"1924204\";\"Xin’anbu Xiang\";\"other\"\n\"1924204\";\"xin an bu\";\"other\"\n\"1924204\";\"xin an bu xiang\";\"other\"\n\"1924204\";\"新安埠\";\"other\"\n\"1924204\";\"新安埠乡\";\"other\"\n\"1924219\";\"Hengshan\";\"main\"\n\"1924219\";\"Hengshan Zhen\";\"other\"\n\"1924219\";\"heng shan\";\"other\"\n\"1924219\";\"heng shan zhen\";\"other\"\n\"1924219\";\"横山\";\"other\"\n\"1924219\";\"横山镇\";\"other\"\n\"1924230\";\"Shatian\";\"main\"\n\"1924230\";\"Shatian Zhen\";\"other\"\n\"1924230\";\"sha tian\";\"other\"\n\"1924230\";\"sha tian zhen\";\"other\"\n\"1924230\";\"沙田\";\"other\"\n\"1924230\";\"沙田镇\";\"other\"\n\"1924241\";\"Hongtang\";\"main\"\n\"1924241\";\"Hongtang Zhen\";\"other\"\n\"1924241\";\"hong tang\";\"other\"\n\"1924241\";\"hong tang zhen\";\"other\"\n\"1924241\";\"鸿塘\";\"other\"\n\"1924241\";\"鸿塘镇\";\"other\"\n\"1924252\";\"Maocun\";\"main\"\n\"1924252\";\"Maocun Zhen\";\"other\"\n\"1924252\";\"mao cun\";\"other\"\n\"1924252\";\"mao cun zhen\";\"other\"\n\"1924252\";\"毛村\";\"other\"\n\"1924252\";\"毛村镇\";\"other\"\n\"1924255\";\"Dashi\";\"main\"\n\"1924255\";\"Dashi Xiang\";\"other\"\n\"1924255\";\"da shi\";\"other\"\n\"1924255\";\"da shi xiang\";\"other\"\n\"1924255\";\"大石\";\"other\"\n\"1924255\";\"大石乡\";\"other\"\n\"1924261\";\"Huating\";\"main\"\n\"1924261\";\"Huating Xiang\";\"other\"\n\"1924261\";\"hua ting\";\"other\"\n\"1924261\";\"hua ting xiang\";\"other\"\n\"1924261\";\"花亭\";\"other\"\n\"1924261\";\"花亭乡\";\"other\"\n\"1924271\";\"Gangbian\";\"main\"\n\"1924271\";\"Gangbian Xiang\";\"other\"\n\"1924271\";\"gang bian\";\"other\"\n\"1924271\";\"gang bian xiang\";\"other\"\n\"1924271\";\"港边\";\"other\"\n\"1924271\";\"港边乡\";\"other\"\n\"1924273\";\"Paishan\";\"main\"\n\"1924273\";\"Paishan Zhen\";\"other\"\n\"1924273\";\"pai shan\";\"other\"\n\"1924273\";\"pai shan zhen\";\"other\"\n\"1924273\";\"排山\";\"other\"\n\"1924273\";\"排山镇\";\"other\"\n\"1924275\";\"Puqian\";\"main\"\n\"1924275\";\"Puqian Zhen\";\"other\"\n\"1924275\";\"pu qian\";\"other\"\n\"1924275\";\"pu qian zhen\";\"other\"\n\"1924275\";\"铺前\";\"other\"\n\"1924275\";\"铺前镇\";\"other\"\n\"1924280\";\"Shehou\";\"main\"\n\"1924280\";\"Shehou Xiang\";\"other\"\n\"1924280\";\"she hou\";\"other\"\n\"1924280\";\"she hou xiang\";\"other\"\n\"1924280\";\"社后\";\"other\"\n\"1924280\";\"社后乡\";\"other\"\n\"1924288\";\"Wucun\";\"main\"\n\"1924288\";\"Wucun Zhen\";\"other\"\n\"1924288\";\"wu cun\";\"other\"\n\"1924288\";\"wu cun zhen\";\"other\"\n\"1924288\";\"吴村\";\"other\"\n\"1924288\";\"吴村镇\";\"other\"\n\"1924305\";\"Huqiao\";\"main\"\n\"1924305\";\"Huqiao Zhen\";\"other\"\n\"1924305\";\"hu jiao\";\"other\"\n\"1924305\";\"hu jiao zhen\";\"other\"\n\"1924305\";\"壶峤\";\"other\"\n\"1924305\";\"壶峤镇\";\"other\"\n\"1924314\";\"Xianyan\";\"main\"\n\"1924314\";\"Xianyan Zhen\";\"other\"\n\"1924314\";\"xian yan\";\"other\"\n\"1924314\";\"xian yan zhen\";\"other\"\n\"1924314\";\"仙岩\";\"other\"\n\"1924314\";\"仙岩镇\";\"other\"\n\"1924318\";\"Hufeng\";\"main\"\n\"1924318\";\"Hufeng Zhen\";\"other\"\n\"1924318\";\"hu feng\";\"other\"\n\"1924318\";\"hu feng zhen\";\"other\"\n\"1924318\";\"湖丰\";\"other\"\n\"1924318\";\"湖丰镇\";\"other\"\n\"1924343\";\"Liudu\";\"main\"\n\"1924343\";\"Liudu Xiang\";\"other\"\n\"1924343\";\"liu dou\";\"other\"\n\"1924343\";\"liu dou xiang\";\"other\"\n\"1924343\";\"六都\";\"other\"\n\"1924343\";\"六都乡\";\"other\"\n\"1924348\";\"Linhu\";\"main\"\n\"1924348\";\"Linhu Zhen\";\"other\"\n\"1924348\";\"lin hu\";\"other\"\n\"1924348\";\"lin hu zhen\";\"other\"\n\"1924348\";\"临湖\";\"other\"\n\"1924348\";\"临湖镇\";\"other\"\n\"1924365\";\"Yanrui\";\"main\"\n\"1924365\";\"Yanrui Zhen\";\"other\"\n\"1924365\";\"yan rui\";\"other\"\n\"1924365\";\"yan rui zhen\";\"other\"\n\"1924365\";\"岩瑞\";\"other\"\n\"1924365\";\"岩瑞镇\";\"other\"\n\"1924377\";\"Siguqiao\";\"main\"\n\"1924377\";\"Siguqiao Xiang\";\"other\"\n\"1924377\";\"si gu qiao\";\"other\"\n\"1924377\";\"si gu qiao xiang\";\"other\"\n\"1924377\";\"四股桥\";\"other\"\n\"1924377\";\"四股桥乡\";\"other\"\n\"1924384\";\"Baiyun\";\"main\"\n\"1924384\";\"Baiyun Zhen\";\"other\"\n\"1924384\";\"bai yun\";\"other\"\n\"1924384\";\"bai yun zhen\";\"other\"\n\"1924384\";\"白云\";\"other\"\n\"1924384\";\"白云镇\";\"other\"\n\"1924385\";\"Zhangcun\";\"main\"\n\"1924385\";\"Zhangcun Xiang\";\"other\"\n\"1924385\";\"zhang cun\";\"other\"\n\"1924385\";\"zhang cun xiang\";\"other\"\n\"1924385\";\"张村\";\"other\"\n\"1924385\";\"张村乡\";\"other\"\n\"1924660\";\"Baimaqiao\";\"main\"\n\"1924660\";\"Baimaqiao Xiang\";\"other\"\n\"1924660\";\"白马桥\";\"other\"\n\"1924660\";\"白马桥乡\";\"other\"\n\"1924665\";\"Baixu\";\"main\"\n\"1924665\";\"Baixu Xiang\";\"other\"\n\"1924665\";\"白圩\";\"other\"\n\"1924665\";\"白圩乡\";\"other\"\n\"1924692\";\"Changjun\";\"main\"\n\"1924692\";\"Changjun Xiang\";\"other\"\n\"1924692\";\"Changjunlong\";\"other\"\n\"1924692\";\"长均\";\"other\"\n\"1924692\";\"长均乡\";\"other\"\n\"1924700\";\"Chenfangji\";\"main\"\n\"1924700\";\"Chenfangji Xiang\";\"other\"\n\"1924700\";\"陈坊积\";\"other\"\n\"1924700\";\"陈坊积乡\";\"other\"\n\"1924728\";\"Daqiao\";\"main\"\n\"1924728\";\"Daqiao Xiang\";\"other\"\n\"1924728\";\"大桥\";\"other\"\n\"1924728\";\"大桥乡\";\"other\"\n\"1924730\";\"Datang\";\"main\"\n\"1924730\";\"Dataong Xiang\";\"other\"\n\"1924730\";\"大塘\";\"other\"\n\"1924730\";\"大塘乡\";\"other\"\n\"1924739\";\"Dengdun\";\"main\"\n\"1924739\";\"Dengdun Xiang\";\"other\"\n\"1924739\";\"邓墩\";\"other\"\n\"1924739\";\"邓墩乡\";\"other\"\n\"1924751\";\"Dinghu\";\"main\"\n\"1924751\";\"Dinghu Zhen\";\"other\"\n\"1924751\";\"鼎湖\";\"other\"\n\"1924751\";\"鼎湖镇\";\"other\"\n\"1924769\";\"Dongxin\";\"main\"\n\"1924769\";\"Dongxin Xiang\";\"other\"\n\"1924769\";\"东新\";\"other\"\n\"1924769\";\"东新乡\";\"other\"\n\"1924770\";\"Dongyuan\";\"main\"\n\"1924770\";\"Dongyuan Xiang\";\"other\"\n\"1924770\";\"东源\";\"other\"\n\"1924770\";\"东源乡\";\"other\"\n\"1924778\";\"Ducheng\";\"main\"\n\"1924778\";\"Ducheng Zhen\";\"other\"\n\"1924778\";\"Duchengxu\";\"other\"\n\"1924778\";\"独城\";\"other\"\n\"1924778\";\"独城镇\";\"other\"\n\"1924803\";\"Fubei\";\"main\"\n\"1924803\";\"Fubei Zhen\";\"other\"\n\"1924803\";\"抚北\";\"other\"\n\"1924803\";\"抚北镇\";\"other\"\n\"1924809\";\"Gangshang\";\"main\"\n\"1924809\";\"Gangshang Zhen\";\"other\"\n\"1924809\";\"Gangshangjie\";\"other\"\n\"1924809\";\"岗上\";\"other\"\n\"1924809\";\"岗上镇\";\"other\"\n\"1924848\";\"Heling\";\"main\"\n\"1924848\";\"Heling Xiang\";\"other\"\n\"1924848\";\"荷岭\";\"other\"\n\"1924848\";\"荷岭乡\";\"other\"\n\"1924858\";\"Heshan\";\"main\"\n\"1924858\";\"Heshan Xiang\";\"other\"\n\"1924858\";\"禾山\";\"other\"\n\"1924858\";\"禾山乡\";\"other\"\n\"1924868\";\"Hongjiazui\";\"main\"\n\"1924868\";\"Hongjiazui Xiang\";\"other\"\n\"1924868\";\"洪家嘴\";\"other\"\n\"1924868\";\"洪家嘴乡\";\"other\"\n\"1924880\";\"Houtian\";\"main\"\n\"1924880\";\"Houtian Xiang\";\"other\"\n\"1924880\";\"Houtianjie\";\"other\"\n\"1924880\";\"厚田\";\"other\"\n\"1924880\";\"厚田乡\";\"other\"\n\"1924884\";\"Hualingang\";\"main\"\n\"1924884\";\"Hualingang Xiang\";\"other\"\n\"1924884\";\"华林岗\";\"other\"\n\"1924884\";\"华林岗乡\";\"other\"\n\"1924887\";\"Huangcheng\";\"main\"\n\"1924887\";\"Huangcheng Zhen\";\"other\"\n\"1924887\";\"隍城\";\"other\"\n\"1924887\";\"隍城镇\";\"other\"\n\"1924892\";\"Huangma\";\"main\"\n\"1924892\";\"Huangma Xiang\";\"other\"\n\"1924892\";\"Huangmajie\";\"other\"\n\"1924892\";\"黄马\";\"other\"\n\"1924892\";\"黄马乡\";\"other\"\n\"1924895\";\"Huangxi\";\"main\"\n\"1924895\";\"Huangxi Zhen\";\"other\"\n\"1924895\";\"潢溪\";\"other\"\n\"1924895\";\"潢溪镇\";\"other\"\n\"1924901\";\"Huangzhuang\";\"main\"\n\"1924901\";\"Huangzhuang Xiang\";\"other\"\n\"1924901\";\"黄庄\";\"other\"\n\"1924901\";\"黄庄乡\";\"other\"\n\"1924905\";\"Hutang\";\"main\"\n\"1924905\";\"Hutang Xiang\";\"other\"\n\"1924905\";\"湖塘\";\"other\"\n\"1924905\";\"湖塘乡\";\"other\"\n\"1924910\";\"Huxu\";\"main\"\n\"1924910\";\"Huxu Xiang\";\"other\"\n\"1924910\";\"虎圩\";\"other\"\n\"1924910\";\"虎圩乡\";\"other\"\n\"1924933\";\"Jingkou\";\"main\"\n\"1924933\";\"Jingkou Xiang\";\"other\"\n\"1924933\";\"Jingkoujie\";\"other\"\n\"1924933\";\"泾口\";\"other\"\n\"1924933\";\"泾口乡\";\"other\"\n\"1924937\";\"Jinqiao\";\"main\"\n\"1924937\";\"Jinqiao Xiang\";\"other\"\n\"1924937\";\"金桥\";\"other\"\n\"1924937\";\"金桥乡\";\"other\"\n\"1924939\";\"Jinshanzui\";\"main\"\n\"1924939\";\"Jinshanzui Xiang\";\"other\"\n\"1924939\";\"金山嘴\";\"other\"\n\"1924939\";\"金山嘴乡\";\"other\"\n\"1924965\";\"Lehua\";\"main\"\n\"1924965\";\"Lehua Zhen\";\"other\"\n\"1924965\";\"Lehuajie\";\"other\"\n\"1924965\";\"乐化\";\"other\"\n\"1924965\";\"乐化镇\";\"other\"\n\"1924995\";\"Liuhu\";\"main\"\n\"1924995\";\"Liuhu Xiang\";\"other\"\n\"1924995\";\"Liuhujie\";\"other\"\n\"1924995\";\"流湖\";\"other\"\n\"1924995\";\"流湖乡\";\"other\"\n\"1925002\";\"Longhushan\";\"main\"\n\"1925002\";\"Longhushan Zhen\";\"other\"\n\"1925002\";\"龙虎山\";\"other\"\n\"1925002\";\"龙虎山镇\";\"other\"\n\"1925008\";\"Lufang\";\"main\"\n\"1925008\";\"Lufang Xiang\";\"other\"\n\"1925008\";\"陆坊\";\"other\"\n\"1925008\";\"陆坊乡\";\"other\"\n\"1925027\";\"Luoting\";\"main\"\n\"1925027\";\"Luoting Zhen\";\"other\"\n\"1925027\";\"罗亭\";\"other\"\n\"1925027\";\"罗亭镇\";\"other\"\n\"1925029\";\"Luozhen\";\"main\"\n\"1925029\";\"Luozhen Zhen\";\"other\"\n\"1925029\";\"罗针\";\"other\"\n\"1925029\";\"罗针镇\";\"other\"\n\"1925031\";\"Lusigang\";\"main\"\n\"1925031\";\"Lusigang Xiang\";\"other\"\n\"1925031\";\"鹭鸶港\";\"other\"\n\"1925031\";\"鹭鸶港乡\";\"other\"\n\"1925046\";\"Maqiu\";\"main\"\n\"1925046\";\"Maqiu Zhen\";\"other\"\n\"1925046\";\"Maqiujie\";\"other\"\n\"1925046\";\"麻丘\";\"other\"\n\"1925046\";\"麻丘镇\";\"other\"\n\"1925051\";\"Meiling\";\"main\"\n\"1925051\";\"Meiling Zhen\";\"other\"\n\"1925051\";\"梅岭\";\"other\"\n\"1925051\";\"梅岭镇\";\"other\"\n\"1925076\";\"Nantai\";\"main\"\n\"1925076\";\"Nantai Xiang\";\"other\"\n\"1925076\";\"南台\";\"other\"\n\"1925076\";\"南台乡\";\"other\"\n\"1925100\";\"Qiaole\";\"main\"\n\"1925100\";\"Qiaole Xiang\";\"other\"\n\"1925100\";\"乔乐\";\"other\"\n\"1925100\";\"乔乐乡\";\"other\"\n\"1925110\";\"Qiligang\";\"main\"\n\"1925110\";\"Qiligang Xiang\";\"other\"\n\"1925110\";\"七里岗\";\"other\"\n\"1925110\";\"七里岗乡\";\"other\"\n\"1925117\";\"Qingyun\";\"main\"\n\"1925117\";\"Qingyun Zhen\";\"other\"\n\"1925117\";\"青云\";\"other\"\n\"1925117\";\"青云镇\";\"other\"\n\"1925122\";\"Quanling\";\"main\"\n\"1925122\";\"Quanling Xiang\";\"other\"\n\"1925122\";\"泉岭\";\"other\"\n\"1925122\";\"泉岭乡\";\"other\"\n\"1925127\";\"Raobu\";\"main\"\n\"1925127\";\"Raobu Zhen\";\"other\"\n\"1925127\";\"饶埠\";\"other\"\n\"1925127\";\"饶埠镇\";\"other\"\n\"1925128\";\"Raofeng\";\"main\"\n\"1925128\";\"Raofeng Zhen\";\"other\"\n\"1925128\";\"Raofengzonghekenzhichang\";\"other\"\n\"1925128\";\"饶丰\";\"other\"\n\"1925128\";\"饶丰镇\";\"other\"\n\"1925131\";\"Rongtang\";\"main\"\n\"1925131\";\"Rongtang Zhen\";\"other\"\n\"1925131\";\"荣塘\";\"other\"\n\"1925131\";\"荣塘镇\";\"other\"\n\"1925229\";\"Sundu\";\"main\"\n\"1925229\";\"Sundu Zhen\";\"other\"\n\"1925229\";\"Sunjiadu\";\"other\"\n\"1925229\";\"孙渡\";\"other\"\n\"1925229\";\"孙渡镇\";\"other\"\n\"1925231\";\"Tacheng\";\"main\"\n\"1925231\";\"Tacheng Xiang\";\"other\"\n\"1925231\";\"Tachengjie\";\"other\"\n\"1925231\";\"塔城\";\"other\"\n\"1925231\";\"塔城乡\";\"other\"\n\"1925253\";\"Taohua\";\"main\"\n\"1925253\";\"Taohua Zhen\";\"other\"\n\"1925253\";\"桃花\";\"other\"\n\"1925253\";\"桃花镇\";\"other\"\n\"1925277\";\"Wangcheng\";\"main\"\n\"1925277\";\"Wangcheng Zhen\";\"other\"\n\"1925277\";\"Wangchenggangjie\";\"other\"\n\"1925277\";\"望城\";\"other\"\n\"1925277\";\"望城镇\";\"other\"\n\"1925279\";\"Wangjia\";\"main\"\n\"1925279\";\"Wangjia Xiang\";\"other\"\n\"1925279\";\"汪家\";\"other\"\n\"1925279\";\"汪家乡\";\"other\"\n\"1925299\";\"Wuyang\";\"main\"\n\"1925299\";\"Wuyang Zhen\";\"other\"\n\"1925299\";\"Wuyangjie\";\"other\"\n\"1925299\";\"武阳\";\"other\"\n\"1925299\";\"武阳镇\";\"other\"\n\"1925311\";\"Xiangshan\";\"main\"\n\"1925311\";\"Xiangshan Zhen\";\"other\"\n\"1925311\";\"象山\";\"other\"\n\"1925311\";\"象山镇\";\"other\"\n\"1925320\";\"Xiaohuang\";\"main\"\n\"1925320\";\"Xiaohuang Zhen\";\"other\"\n\"1925320\";\"小璜\";\"other\"\n\"1925320\";\"小璜镇\";\"other\"\n\"1925325\";\"Xiaotang\";\"main\"\n\"1925325\";\"Xiaotang Xiang\";\"other\"\n\"1925325\";\"Xiaotangxu\";\"other\"\n\"1925325\";\"筱塘\";\"other\"\n\"1925325\";\"筱塘乡\";\"other\"\n\"1925363\";\"Xixia\";\"main\"\n\"1925363\";\"Xixia Zhen\";\"other\"\n\"1925363\";\"溪霞\";\"other\"\n\"1925363\";\"溪霞镇\";\"other\"\n\"1925368\";\"Xushangqiao\";\"main\"\n\"1925368\";\"Xushangqiao Zhen\";\"other\"\n\"1925368\";\"圩上桥\";\"other\"\n\"1925368\";\"圩上桥镇\";\"other\"\n\"1925380\";\"Yangqiaodian\";\"main\"\n\"1925380\";\"Yangqiaodian Zhen\";\"other\"\n\"1925380\";\"杨桥殿\";\"other\"\n\"1925380\";\"杨桥殿镇\";\"other\"\n\"1925382\";\"Yangsi\";\"main\"\n\"1925382\";\"Yangsi Xiang\";\"other\"\n\"1925382\";\"杨泗\";\"other\"\n\"1925382\";\"杨泗村\";\"other\"\n\"1925399\";\"Yaoxu\";\"main\"\n\"1925399\";\"Yaoxu Xiang\";\"other\"\n\"1925399\";\"Yaoxujie\";\"other\"\n\"1925399\";\"瑶圩\";\"other\"\n\"1925399\";\"瑶圩乡\";\"other\"\n\"1925413\";\"Yonghe\";\"main\"\n\"1925413\";\"Yonghe Zhen\";\"other\"\n\"1925413\";\"永和\";\"other\"\n\"1925413\";\"永和镇\";\"other\"\n\"1925418\";\"Yuandu\";\"main\"\n\"1925418\";\"Yuandu Zhen\";\"other\"\n\"1925418\";\"袁渡\";\"other\"\n\"1925418\";\"袁渡镇\";\"other\"\n\"1925446\";\"Zhangxiang\";\"main\"\n\"1925446\";\"Zhangjiaxiang\";\"other\"\n\"1925446\";\"Zhangxiang Zhen\";\"other\"\n\"1925446\";\"张巷\";\"other\"\n\"1925446\";\"张巷镇\";\"other\"\n\"1925456\";\"Zhanxu\";\"main\"\n\"1925456\";\"Zhanxu Zhen\";\"other\"\n\"1925456\";\"詹圩\";\"other\"\n\"1925456\";\"詹圩镇\";\"other\"\n\"1925457\";\"Zhaobu\";\"main\"\n\"1925457\";\"Zhaobu Xiang\";\"other\"\n\"1925457\";\"赵埠\";\"other\"\n\"1925457\";\"赵埠乡\";\"other\"\n\"1927332\";\"Xingsha\";\"main\"\n\"1927332\";\"xing sha\";\"other\"\n\"1927332\";\"星沙\";\"other\"\n\"1927639\";\"Yueyang\";\"main\"\n\"1927920\";\"Mao’erzhai\";\"main\"\n\"1927920\";\"Mao'erzhai\";\"ascii\"\n\"1927920\";\"Sanyuanxiang\";\"other\"\n\"1927920\";\"mao r zhai\";\"other\"\n\"1927920\";\"san yuan xiang\";\"other\"\n\"1927920\";\"三元乡\";\"other\"\n\"1927920\";\"猫儿寨\";\"other\"\n\"1927922\";\"Yanwukou\";\"main\"\n\"1927922\";\"Yanwukou Xiang\";\"other\"\n\"1927922\";\"yan wu kou\";\"other\"\n\"1927922\";\"yan wu kou xiang\";\"other\"\n\"1927922\";\"岩屋口\";\"other\"\n\"1927922\";\"岩屋口乡\";\"other\"\n\"1927925\";\"Shigaoshan\";\"main\"\n\"1927925\";\"Shigao\";\"other\"\n\"1927925\";\"Shigao Zhen\";\"other\"\n\"1927925\";\"shi gao shan\";\"other\"\n\"1927925\";\"shi gao zhen\";\"other\"\n\"1927925\";\"石羔山\";\"other\"\n\"1927925\";\"石羔镇\";\"other\"\n\"1927926\";\"Xincheng\";\"main\"\n\"1927926\";\"Xincheng Xiang\";\"other\"\n\"1927926\";\"xin cheng\";\"other\"\n\"1927926\";\"xin cheng xiang\";\"other\"\n\"1927926\";\"新城\";\"other\"\n\"1927926\";\"新城乡\";\"other\"\n\"1927927\";\"Xinchang’ao\";\"main\"\n\"1927927\";\"Xinchang'ao\";\"ascii\"\n\"1927927\";\"xin chang ao\";\"other\"\n\"1927927\";\"新场坳\";\"other\"\n\"1927930\";\"Bixidong\";\"main\"\n\"1927930\";\"Bixi\";\"other\"\n\"1927930\";\"Bixidong Xiang\";\"other\"\n\"1927930\";\"bi xi dong\";\"other\"\n\"1927930\";\"bi xi dong xiang\";\"other\"\n\"1927930\";\"比溪洞\";\"other\"\n\"1927930\";\"比溪洞乡\";\"other\"\n\"1927931\";\"Xiluo\";\"main\"\n\"1927931\";\"Xiluo Xiang\";\"other\"\n\"1927931\";\"xi luo\";\"other\"\n\"1927931\";\"xi luo xiang\";\"other\"\n\"1927931\";\"洗洛\";\"other\"\n\"1927931\";\"洗洛乡\";\"other\"\n\"1927932\";\"Cengjiawan\";\"main\"\n\"1927932\";\"Baiyang Xiang\";\"other\"\n\"1927932\";\"bai yang xiang\";\"other\"\n\"1927932\";\"ceng jia wan\";\"other\"\n\"1927932\";\"曾家湾\";\"other\"\n\"1927932\";\"白羊乡\";\"other\"\n\"1927933\";\"Longzui\";\"main\"\n\"1927933\";\"Longju\";\"other\"\n\"1927933\";\"Wantang Xiang\";\"other\"\n\"1927933\";\"long zui\";\"other\"\n\"1927933\";\"wan tang xiang\";\"other\"\n\"1927933\";\"湾塘乡\";\"other\"\n\"1927933\";\"龙嘴\";\"other\"\n\"1927935\";\"Xinzhaipo\";\"main\"\n\"1927935\";\"Liaoye\";\"other\"\n\"1927935\";\"liao ye\";\"other\"\n\"1927935\";\"xin zhai po\";\"other\"\n\"1927935\";\"新寨坡\";\"other\"\n\"1927935\";\"辽叶\";\"other\"\n\"1927938\";\"Shangdongjie\";\"main\"\n\"1927938\";\"Shandongjie Xiang\";\"other\"\n\"1927938\";\"shang dong jie\";\"other\"\n\"1927938\";\"shang dong jie xiang\";\"other\"\n\"1927938\";\"上洞街\";\"other\"\n\"1927938\";\"上洞街乡\";\"other\"\n\"1927940\";\"Xinchang\";\"main\"\n\"1927940\";\"Yanjing Xiang\";\"other\"\n\"1927940\";\"xin chang\";\"other\"\n\"1927940\";\"yan jing xiang\";\"other\"\n\"1927940\";\"新场\";\"other\"\n\"1927940\";\"盐井乡\";\"other\"\n\"1927942\";\"Chenzhouzhai\";\"main\"\n\"1927942\";\"Wafang Xiang\";\"other\"\n\"1927942\";\"chen zhou zhai\";\"other\"\n\"1927942\";\"wa fang xiang\";\"other\"\n\"1927942\";\"瓦房乡\";\"other\"\n\"1927942\";\"辰州寨\";\"other\"\n\"1927945\";\"Luotache\";\"main\"\n\"1927945\";\"Luota Xiang\";\"other\"\n\"1927945\";\"luo ta che\";\"other\"\n\"1927945\";\"luo ta xiang\";\"other\"\n\"1927945\";\"洛塔乡\";\"other\"\n\"1927945\";\"洛塔车\";\"other\"\n\"1927947\";\"Laoxingchang\";\"main\"\n\"1927947\";\"Laoxing\";\"other\"\n\"1927947\";\"Laoxing Xiang\";\"other\"\n\"1927947\";\"lao xing chang\";\"other\"\n\"1927947\";\"lao xing xiang\";\"other\"\n\"1927947\";\"老兴乡\";\"other\"\n\"1927947\";\"老兴场\";\"other\"\n\"1927948\";\"Guitangba\";\"main\"\n\"1927948\";\"Guitang\";\"other\"\n\"1927948\";\"Guitang Zhen\";\"other\"\n\"1927948\";\"gui tang\";\"other\"\n\"1927948\";\"gui tang ba\";\"other\"\n\"1927948\";\"gui tang zhen\";\"other\"\n\"1927948\";\"桂塘\";\"other\"\n\"1927948\";\"桂塘坝\";\"other\"\n\"1927948\";\"桂塘镇\";\"other\"\n\"1927949\";\"Fengxizhai\";\"main\"\n\"1927949\";\"Fengxi Xiang\";\"other\"\n\"1927949\";\"feng xi xiang\";\"other\"\n\"1927949\";\"feng xi zhai\";\"other\"\n\"1927949\";\"凤溪乡\";\"other\"\n\"1927949\";\"凤溪寨\";\"other\"\n\"1927950\";\"Mengxihu\";\"main\"\n\"1927950\";\"Mengxi Xiang\";\"other\"\n\"1927950\";\"meng xi hu\";\"other\"\n\"1927950\";\"meng xi xiang\";\"other\"\n\"1927950\";\"猛溪乡\";\"other\"\n\"1927950\";\"猛溪湖\";\"other\"\n\"1927951\";\"Xishaping\";\"main\"\n\"1927951\";\"Ganxi Xiang\";\"other\"\n\"1927951\";\"gan xi xiang\";\"other\"\n\"1927951\";\"xi sha ping\";\"other\"\n\"1927951\";\"干溪乡\";\"other\"\n\"1927951\";\"细砂坪\";\"other\"\n\"1927954\";\"Liandonggang\";\"main\"\n\"1927954\";\"Liandong\";\"other\"\n\"1927954\";\"Liandong Xiang\";\"other\"\n\"1927954\";\"lian dong gang\";\"other\"\n\"1927954\";\"lian dong xiang\";\"other\"\n\"1927954\";\"连洞乡\";\"other\"\n\"1927954\";\"连洞岗\";\"other\"\n\"1927956\";\"Wujiazhai\";\"main\"\n\"1927956\";\"Shouche Zhen\";\"other\"\n\"1927956\";\"shou che zhen\";\"other\"\n\"1927956\";\"wu jia zhai\";\"other\"\n\"1927956\";\"吴家寨\";\"other\"\n\"1927956\";\"首车镇\";\"other\"\n\"1927960\";\"Guancangping\";\"main\"\n\"1927960\";\"Cangping Xiang\";\"other\"\n\"1927960\";\"cang ping xiang\";\"other\"\n\"1927960\";\"guan cang ping\";\"other\"\n\"1927960\";\"仓坪乡\";\"other\"\n\"1927960\";\"官仓坪\";\"other\"\n\"1927962\";\"Yanbanpu\";\"main\"\n\"1927962\";\"Wanfu Xiang\";\"other\"\n\"1927962\";\"wan fu xiang\";\"other\"\n\"1927962\";\"yan ban pu\";\"other\"\n\"1927962\";\"万福乡\";\"other\"\n\"1927962\";\"岩板铺\";\"other\"\n\"1927972\";\"Yanchiping\";\"main\"\n\"1927972\";\"Yanchi\";\"other\"\n\"1927972\";\"Yanchi Xiang\";\"other\"\n\"1927972\";\"yan chi\";\"other\"\n\"1927972\";\"yan chi ping\";\"other\"\n\"1927972\";\"yan chi xiang\";\"other\"\n\"1927972\";\"雁池\";\"other\"\n\"1927972\";\"雁池乡\";\"other\"\n\"1927972\";\"雁池坪\";\"other\"\n\"1927982\";\"Baishi\";\"main\"\n\"1927982\";\"Baishi Xiang\";\"other\"\n\"1927982\";\"bai shi\";\"other\"\n\"1927982\";\"bai shi xiang\";\"other\"\n\"1927982\";\"白石\";\"other\"\n\"1927982\";\"白石乡\";\"other\"\n\"1927984\";\"Zhenjiatai\";\"main\"\n\"1927984\";\"Changtanping Xiang\";\"other\"\n\"1927984\";\"甄家台\";\"other\"\n\"1927984\";\"长潭坪乡\";\"other\"\n\"1927987\";\"Linxihe\";\"main\"\n\"1927987\";\"Linxihe Baizuxiang\";\"other\"\n\"1927987\";\"lin xi he\";\"other\"\n\"1927987\";\"淋溪河\";\"other\"\n\"1927987\";\"淋溪河白族乡\";\"other\"\n\"1927990\";\"Bamaoxi\";\"main\"\n\"1927990\";\"Bamaoxi Xiang\";\"other\"\n\"1927990\";\"ba mao xi xiang\";\"other\"\n\"1927990\";\"芭茅溪\";\"other\"\n\"1927990\";\"芭茅溪乡\";\"other\"\n\"1927992\";\"Sifangxi\";\"main\"\n\"1927992\";\"Sifangxi Xiang\";\"other\"\n\"1927992\";\"xi fang xi\";\"other\"\n\"1927992\";\"西方溪\";\"other\"\n\"1927992\";\"西方溪乡\";\"other\"\n\"1927996\";\"Zhangjiaqiao\";\"main\"\n\"1927996\";\"Qiaoziwan Xiang\";\"other\"\n\"1927996\";\"张家桥\";\"other\"\n\"1927996\";\"桥自湾乡\";\"other\"\n\"1928005\";\"Qiaotou\";\"main\"\n\"1928005\";\"Qiaotou Xiang\";\"other\"\n\"1928005\";\"qiao tou\";\"other\"\n\"1928005\";\"桥头\";\"other\"\n\"1928005\";\"桥头乡\";\"other\"\n\"1928011\";\"Shanmuqiao\";\"main\"\n\"1928011\";\"Shanmuqiao Zhen\";\"other\"\n\"1928011\";\"shan mu qiao\";\"other\"\n\"1928011\";\"shan mu qiao zhen\";\"other\"\n\"1928011\";\"杉木桥\";\"other\"\n\"1928011\";\"杉木桥镇\";\"other\"\n\"1928012\";\"Tanjiaqiao\";\"main\"\n\"1928012\";\"Gaofeng\";\"other\"\n\"1928012\";\"Gaofeng Tujiazu Xiang\";\"other\"\n\"1928012\";\"gao feng\";\"other\"\n\"1928012\";\"gao feng tu jia zu xiang\";\"other\"\n\"1928012\";\"tan jia qiao\";\"other\"\n\"1928012\";\"覃家桥\";\"other\"\n\"1928012\";\"高峰\";\"other\"\n\"1928012\";\"高峰土家族乡\";\"other\"\n\"1928020\";\"Xujiafang\";\"main\"\n\"1928020\";\"Xujiafang Tujiazu Xiang\";\"other\"\n\"1928020\";\"xu jia fang\";\"other\"\n\"1928020\";\"xu jia fang tu jia zu xiang\";\"other\"\n\"1928020\";\"许家坊\";\"other\"\n\"1928020\";\"许家坊土家族乡\";\"other\"\n\"1928037\";\"Qing’anping\";\"main\"\n\"1928037\";\"Qing'anping\";\"ascii\"\n\"1928037\";\"Qing'anping Xiang\";\"other\"\n\"1928037\";\"Qing’anping Xiang\";\"other\"\n\"1928037\";\"qing an ping\";\"other\"\n\"1928037\";\"青安坪\";\"other\"\n\"1928037\";\"青安坪乡\";\"other\"\n\"1928040\";\"Daming\";\"main\"\n\"1928040\";\"Daming Xiang\";\"other\"\n\"1928040\";\"da ming\";\"other\"\n\"1928040\";\"da ming xiang\";\"other\"\n\"1928040\";\"大明\";\"other\"\n\"1928040\";\"大明乡\";\"other\"\n\"1928043\";\"Chexi\";\"main\"\n\"1928043\";\"Runya\";\"other\"\n\"1928043\";\"Runya Xiang\";\"other\"\n\"1928043\";\"che xi\";\"other\"\n\"1928043\";\"run ya\";\"other\"\n\"1928043\";\"润雅\";\"other\"\n\"1928043\";\"润雅乡\";\"other\"\n\"1928043\";\"澈溪\";\"other\"\n\"1928049\";\"Shuangxiqiao\";\"main\"\n\"1928049\";\"Shuangxiqiao Xiang\";\"other\"\n\"1928049\";\"shuang xi qiao xiang\";\"other\"\n\"1928049\";\"双溪桥乡\";\"other\"\n\"1928053\";\"Sigangtou\";\"main\"\n\"1928053\";\"Jinyan\";\"other\"\n\"1928053\";\"Jinyan Tujiazu Xiang\";\"other\"\n\"1928053\";\"jin yan\";\"other\"\n\"1928053\";\"jin yan tu jia zu xiang\";\"other\"\n\"1928053\";\"si gang tou\";\"other\"\n\"1928053\";\"寺岗头\";\"other\"\n\"1928053\";\"金岩\";\"other\"\n\"1928053\";\"金岩土家族乡\";\"other\"\n\"1928056\";\"Wangjiaping\";\"main\"\n\"1928056\";\"Wangjiaping Zhen\";\"other\"\n\"1928056\";\"wang jia ping\";\"other\"\n\"1928056\";\"wang jia ping zhen\";\"other\"\n\"1928056\";\"王家坪\";\"other\"\n\"1928056\";\"王家坪镇\";\"other\"\n\"1928065\";\"Nanshanping\";\"main\"\n\"1928065\";\"Nanshanping Xiang\";\"other\"\n\"1928065\";\"nan shan ping\";\"other\"\n\"1928065\";\"nan shan ping xiang\";\"other\"\n\"1928065\";\"南山坪\";\"other\"\n\"1928065\";\"南山坪乡\";\"other\"\n\"1928393\";\"Baisha\";\"main\"\n\"1928393\";\"bai sha\";\"other\"\n\"1928393\";\"白沙\";\"other\"\n\"1928621\";\"Maidiping\";\"main\"\n\"1928621\";\"Maidiping Baizuxiang\";\"other\"\n\"1928621\";\"mai de ping bai zu xiang\";\"other\"\n\"1928621\";\"麦地坪\";\"other\"\n\"1928621\";\"麦地坪白族乡\";\"other\"\n\"1928622\";\"Wuyahe\";\"main\"\n\"1928622\";\"Wuya Xiang\";\"other\"\n\"1928622\";\"wu ya he\";\"other\"\n\"1928622\";\"wu ya xiang\";\"other\"\n\"1928622\";\"乌鸦乡\";\"other\"\n\"1928622\";\"乌鸦河\";\"other\"\n\"1928623\";\"Zanguoping\";\"main\"\n\"1928623\";\"Zanguo Xiang\";\"other\"\n\"1928623\";\"zan guo ping\";\"other\"\n\"1928623\";\"zan guo xiang\";\"other\"\n\"1928623\";\"咱果乡\";\"other\"\n\"1928623\";\"咱果坪\";\"other\"\n\"1936413\";\"Wushi\";\"main\"\n\"1936413\";\"Wushi Zhen\";\"other\"\n\"1936413\";\"乌石\";\"other\"\n\"1936413\";\"乌石镇\";\"other\"\n\"1936425\";\"Shuikou\";\"main\"\n\"1936425\";\"Shuikou Zhen\";\"other\"\n\"1936425\";\"shui kou\";\"other\"\n\"1936425\";\"水口\";\"other\"\n\"1936427\";\"Songkeng\";\"main\"\n\"1936427\";\"song keng\";\"other\"\n\"1936427\";\"松坑\";\"other\"\n\"1936431\";\"Mabei\";\"main\"\n\"1936431\";\"Mabei Zhen\";\"other\"\n\"1936431\";\"ma po\";\"other\"\n\"1936431\";\"麻陂\";\"other\"\n\"1936433\";\"Zengguang\";\"main\"\n\"1936433\";\"zeng guang\";\"other\"\n\"1936433\";\"增光\";\"other\"\n\"1936444\";\"Daba\";\"main\"\n\"1936444\";\"Ta-pa-hsu\";\"other\"\n\"1936444\";\"Ta-pa-hsü\";\"other\"\n\"1936444\";\"da ba\";\"other\"\n\"1936444\";\"大坝\";\"other\"\n\"1941077\";\"Luotaping\";\"main\"\n\"1941077\";\"Luotaping Xiang\";\"other\"\n\"1941077\";\"luo ta ping\";\"other\"\n\"1941077\";\"罗塔坪\";\"other\"\n\"1941077\";\"罗塔坪乡\";\"other\"\n\"1941078\";\"Gaoqiao\";\"main\"\n\"1941078\";\"Gaoqiao Zhen\";\"other\"\n\"1941078\";\"gao qiao\";\"other\"\n\"1941078\";\"gao qiao zhen\";\"other\"\n\"1941078\";\"高桥\";\"other\"\n\"1941078\";\"高桥镇\";\"other\"\n\"1941079\";\"Luoshui\";\"main\"\n\"1941079\";\"Luoshui Xiang\";\"other\"\n\"1941079\";\"luo shui\";\"other\"\n\"1941079\";\"luo shui xiang\";\"other\"\n\"1941079\";\"罗水\";\"other\"\n\"1941079\";\"罗水乡\";\"other\"\n\"1941080\";\"Maoba\";\"main\"\n\"1941080\";\"Maoba Xiang\";\"other\"\n\"1941080\";\"mao ba\";\"other\"\n\"1941080\";\"mao ba xiang\";\"other\"\n\"1941080\";\"毛坝\";\"other\"\n\"1941080\";\"毛坝乡\";\"other\"\n\"1941081\";\"Liangchahe\";\"main\"\n\"1941081\";\"Liangcha Xiang\";\"other\"\n\"1941081\";\"liang cha he\";\"other\"\n\"1941081\";\"liang cha xiang\";\"other\"\n\"1941081\";\"两岔乡\";\"other\"\n\"1941081\";\"两岔河\";\"other\"\n\"1941082\";\"Guanba\";\"main\"\n\"1941082\";\"Guanba Xiang\";\"other\"\n\"1941082\";\"guan ba\";\"other\"\n\"1941082\";\"guan ba xiang\";\"other\"\n\"1941082\";\"官坝\";\"other\"\n\"1941082\";\"官坝乡\";\"other\"\n\"1941083\";\"Taozixi\";\"main\"\n\"1941083\";\"Taozixi Xiang\";\"other\"\n\"1941083\";\"tao zi xi\";\"other\"\n\"1941083\";\"桃子溪\";\"other\"\n\"1941083\";\"桃子溪乡\";\"other\"\n\"1941086\";\"Lianghekou\";\"main\"\n\"1941086\";\"Lianghekou Xiang\";\"other\"\n\"1941086\";\"两河口\";\"other\"\n\"1941086\";\"两河口乡\";\"other\"\n\"1941087\";\"Xinjie\";\"main\"\n\"1941087\";\"xin jie\";\"other\"\n\"1941087\";\"新街\";\"other\"\n\"1941088\";\"Xinglongjie\";\"main\"\n\"1941088\";\"Xinglongjie Xiang\";\"other\"\n\"1941088\";\"xing long jie\";\"other\"\n\"1941088\";\"xing long jie xiang\";\"other\"\n\"1941088\";\"兴隆街\";\"other\"\n\"1941088\";\"兴隆街乡\";\"other\"\n\"1941091\";\"Sanhekou\";\"main\"\n\"1941091\";\"Sanhekou Xiang\";\"other\"\n\"1941091\";\"san he kou\";\"other\"\n\"1941091\";\"san he kou xiang\";\"other\"\n\"1941091\";\"三合口\";\"other\"\n\"1941091\";\"三合口乡\";\"other\"\n\"1941094\";\"Zhujiatai\";\"main\"\n\"1941094\";\"Tielu\";\"other\"\n\"1941094\";\"Tielu Xiang\";\"other\"\n\"1941094\";\"tie lu\";\"other\"\n\"1941094\";\"tie lu xiang\";\"other\"\n\"1941094\";\"zhu jia tai\";\"other\"\n\"1941094\";\"朱家台\";\"other\"\n\"1941094\";\"铁炉\";\"other\"\n\"1941094\";\"铁炉乡\";\"other\"\n\"1941099\";\"Yongmao\";\"main\"\n\"1941099\";\"Yongmao Zhen\";\"other\"\n\"1941099\";\"yong mao zhen\";\"other\"\n\"1941099\";\"永茂\";\"other\"\n\"1941099\";\"永茂镇\";\"other\"\n\"1941100\";\"Macha\";\"main\"\n\"1941100\";\"Macha Xiang\";\"other\"\n\"1941100\";\"ma cha\";\"other\"\n\"1941100\";\"麻岔\";\"other\"\n\"1941100\";\"麻岔乡\";\"other\"\n\"1941101\";\"Tasha\";\"main\"\n\"1941101\";\"Tasha Xiang\";\"other\"\n\"1941101\";\"ta sha\";\"other\"\n\"1941101\";\"ta sha xiang\";\"other\"\n\"1941101\";\"他砂\";\"other\"\n\"1941101\";\"他砂乡\";\"other\"\n\"1941102\";\"Xinzhaiping\";\"main\"\n\"1941102\";\"Xinzhai Xiang\";\"other\"\n\"1941102\";\"xin zhai ping\";\"other\"\n\"1941102\";\"xin zhai xiang\";\"other\"\n\"1941102\";\"新寨乡\";\"other\"\n\"1941102\";\"新寨坪\";\"other\"\n\"1941103\";\"Sanjiaguan\";\"main\"\n\"1941103\";\"Sanjiaguan Xiang\";\"other\"\n\"1941103\";\"san jia guan\";\"other\"\n\"1941103\";\"san jia guan xiang\";\"other\"\n\"1941103\";\"三家馆\";\"other\"\n\"1941103\";\"三家馆乡\";\"other\"\n\"1941108\";\"Matizhai\";\"main\"\n\"1941108\";\"Nongche Xiang\";\"other\"\n\"1941108\";\"ma ti zhai\";\"other\"\n\"1941108\";\"nong che xiang\";\"other\"\n\"1941108\";\"农车乡\";\"other\"\n\"1941108\";\"马蹄寨\";\"other\"\n\"1941109\";\"Shanmu\";\"main\"\n\"1941109\";\"Shanmu Xiang\";\"other\"\n\"1941109\";\"shan mu\";\"other\"\n\"1941109\";\"shan mu xiang\";\"other\"\n\"1941109\";\"杉木\";\"other\"\n\"1941109\";\"杉木乡\";\"other\"\n\"1941110\";\"Zhonghuping\";\"main\"\n\"1941110\";\"Zhonghu\";\"other\"\n\"1941110\";\"Zhonghu Xiang\";\"other\"\n\"1941110\";\"zhong hu ping\";\"other\"\n\"1941110\";\"中湖\";\"other\"\n\"1941110\";\"中湖乡\";\"other\"\n\"1941110\";\"中湖坪\";\"other\"\n\"1941111\";\"Ruchihe\";\"main\"\n\"1941111\";\"Tani Xiang\";\"other\"\n\"1941111\";\"ru chi he\";\"other\"\n\"1941111\";\"ta ni xiang\";\"other\"\n\"1941111\";\"塔泥乡\";\"other\"\n\"1941111\";\"汝池河\";\"other\"\n\"1941112\";\"Bishagou\";\"main\"\n\"1941112\";\"Xihu Xiang\";\"other\"\n\"1941112\";\"bi sha gou\";\"other\"\n\"1941112\";\"xi hu xiang\";\"other\"\n\"1941112\";\"比沙沟\";\"other\"\n\"1941112\";\"西湖乡\";\"other\"\n\"1941113\";\"Shuishaping\";\"main\"\n\"1941113\";\"Shuishaping Xiang\";\"other\"\n\"1941113\";\"shui sha ping\";\"other\"\n\"1941113\";\"shui sha ping xiang\";\"other\"\n\"1941113\";\"水沙坪\";\"other\"\n\"1941113\";\"水沙坪乡\";\"other\"\n\"1941115\";\"Tongche\";\"main\"\n\"1941115\";\"Tongche Xiang\";\"other\"\n\"1941115\";\"tong che\";\"other\"\n\"1941115\";\"tong che xiang\";\"other\"\n\"1941115\";\"桶车\";\"other\"\n\"1941115\";\"桶车乡\";\"other\"\n\"1941116\";\"Tianzishan\";\"main\"\n\"1941116\";\"Tianzishan Zhen\";\"other\"\n\"1941116\";\"tian zi shan\";\"other\"\n\"1941116\";\"天子山\";\"other\"\n\"1941116\";\"天子山镇\";\"other\"\n\"1941117\";\"Zhaojiagang\";\"main\"\n\"1941117\";\"Zhaojiagang Tujiazu Xiang\";\"other\"\n\"1941117\";\"zhao jia gang\";\"other\"\n\"1941117\";\"zhao jia gang tu jia zu xiang\";\"other\"\n\"1941117\";\"赵家岗\";\"other\"\n\"1941117\";\"赵家岗土家族乡\";\"other\"\n\"1941119\";\"Furongqiao\";\"main\"\n\"1941119\";\"Furongqiao Baizuxiang\";\"other\"\n\"1941119\";\"芙容桥\";\"other\"\n\"1941119\";\"芙容桥白族乡\";\"other\"\n\"1941121\";\"Jianjiapo\";\"main\"\n\"1941121\";\"Jianjiapo Xiang\";\"other\"\n\"1941121\";\"jian jia po\";\"other\"\n\"1941121\";\"jian jia po xiang\";\"other\"\n\"1941121\";\"蹇家坡\";\"other\"\n\"1941121\";\"蹇家坡乡\";\"other\"\n\"1941133\";\"Nanzhen\";\"main\"\n\"1941133\";\"Nanbei\";\"other\"\n\"1941133\";\"Nanbei Zhen\";\"other\"\n\"1941133\";\"nan bei\";\"other\"\n\"1941133\";\"nan bei zhen\";\"other\"\n\"1941133\";\"nan zhen\";\"other\"\n\"1941133\";\"南北\";\"other\"\n\"1941133\";\"南北镇\";\"other\"\n\"1941133\";\"南镇\";\"other\"\n\"1941534\";\"Dengying\";\"main\"\n\"1941534\";\"Dengyingcun\";\"other\"\n\"1941535\";\"Kutao\";\"main\"\n\"1941535\";\"Kutaocun\";\"other\"\n\"1941563\";\"Beizhai\";\"main\"\n\"1941563\";\"Beizhaike\";\"other\"\n\"1941584\";\"Qingshan\";\"main\"\n\"1941584\";\"Cinshan'\";\"other\"\n\"1941584\";\"Qingshancun\";\"other\"\n\"1941584\";\"Циншань\";\"other\"\n\"1941693\";\"Xinzhuang\";\"main\"\n\"1941693\";\"Hou-hsin-chuang\";\"other\"\n\"1941694\";\"Weiwangzhuang\";\"main\"\n\"1941694\";\"Yin-chuang-tzu\";\"other\"\n\"1941718\";\"Goutou\";\"main\"\n\"1941718\";\"Kou-t'ou\";\"other\"\n\"1941718\";\"Kou-t’ou\";\"other\"\n\"1941768\";\"Meipu\";\"main\"\n\"1941783\";\"Rong’an\";\"main\"\n\"1941783\";\"Rong'an\";\"ascii\"\n\"1941783\";\"Jung-an\";\"other\"\n\"1941784\";\"Shangjie\";\"main\"\n\"1941784\";\"Shang-chieh\";\"other\"\n\"1941816\";\"Kuai’an\";\"main\"\n\"1941816\";\"Kuai'an\";\"ascii\"\n\"1941817\";\"Chengmen\";\"main\"\n\"1941818\";\"Hongtang\";\"main\"\n\"1941818\";\"Hung-t'ang\";\"other\"\n\"1941818\";\"Hung-t’ang\";\"other\"\n\"1941819\";\"Huai’an\";\"main\"\n\"1941819\";\"Huai'an\";\"ascii\"\n\"1941830\";\"Donghu\";\"main\"\n\"1941830\";\"Tung-hu\";\"other\"\n\"1941833\";\"Houyu\";\"main\"\n\"1941833\";\"Hou-hsu\";\"other\"\n\"1941833\";\"Hou-hsü\";\"other\"\n\"1941847\";\"Jitou\";\"main\"\n\"1941848\";\"Beishan\";\"main\"\n\"1941848\";\"Pei-shan\";\"other\"\n\"1941861\";\"Huangtian\";\"main\"\n\"1941924\";\"Dingtou\";\"main\"\n\"1941924\";\"T'eng-t'ou\";\"other\"\n\"1941924\";\"T’eng-t’ou\";\"other\"\n\"1942261\";\"Daxi\";\"main\"\n\"1942261\";\"Daxi Zhen\";\"other\"\n\"1942261\";\"da xi\";\"other\"\n\"1942261\";\"da xi zhen\";\"other\"\n\"1942261\";\"大溪\";\"other\"\n\"1942261\";\"大溪镇\";\"other\"\n\"1950020\";\"Ouyang\";\"main\"\n\"1950020\";\"Hsin-hua-so\";\"other\"\n\"1950548\";\"Dengyuantai\";\"main\"\n\"1980603\";\"Shenqiao\";\"main\"\n\"1980603\";\"shen qiao\";\"other\"\n\"1980603\";\"深桥\";\"other\"\n\"1996859\";\"Jiangdong\";\"main\"\n\"1996859\";\"Jiangdong Zhen\";\"other\"\n\"1996859\";\"jiang dong\";\"other\"\n\"1996859\";\"江东\";\"other\"\n\"1998143\";\"Xinan\";\"main\"\n\"1998143\";\"Xinan Zhen\";\"other\"\n\"1998143\";\"xi nan\";\"other\"\n\"1998143\";\"溪南\";\"other\"\n\"1998290\";\"Wutun\";\"main\"\n\"1998290\";\"Wutun Zhen\";\"other\"\n\"1998290\";\"wu tun\";\"other\"\n\"1998290\";\"武屯\";\"other\"\n\"1998291\";\"Beitun\";\"main\"\n\"1998291\";\"bei tun\";\"other\"\n\"1998291\";\"北屯\";\"other\"\n\"1998292\";\"Xinxing\";\"main\"\n\"1998292\";\"xin xing\";\"other\"\n\"1998292\";\"新兴\";\"other\"\n\"1998293\";\"Zhenxing\";\"main\"\n\"1998293\";\"zhen xing\";\"other\"\n\"1998293\";\"振兴\";\"other\"\n\"1998300\";\"Renliu\";\"main\"\n\"1998300\";\"ren liu\";\"other\"\n\"1998300\";\"任留\";\"other\"\n\"1998305\";\"Zhangbu\";\"main\"\n\"1998305\";\"zhang bo\";\"other\"\n\"1998305\";\"张卜\";\"other\"\n\"1998308\";\"Xiaojin\";\"main\"\n\"1998308\";\"xiao jin\";\"other\"\n\"1998308\";\"小金\";\"other\"\n\"1998309\";\"Muzhai\";\"main\"\n\"1998309\";\"mu zhai\";\"other\"\n\"1998309\";\"穆寨\";\"other\"\n\"1998310\";\"Tuqiao\";\"main\"\n\"1998310\";\"tu qiao\";\"other\"\n\"1998310\";\"土桥\";\"other\"\n\"1998312\";\"Xiquan\";\"main\"\n\"1998312\";\"Xiquan Zhen\";\"other\"\n\"1998312\";\"xi quan\";\"other\"\n\"1998312\";\"西泉\";\"other\"\n\"1998313\";\"Xinhe\";\"main\"\n\"1998313\";\"xin he\";\"other\"\n\"1998313\";\"新合\";\"other\"\n\"1998318\";\"Yuchu\";\"main\"\n\"1998318\";\"yu chu\";\"other\"\n\"1998318\";\"榆楚\";\"other\"\n\"1998321\";\"Dongda\";\"main\"\n\"1998321\";\"Dongda Jieban\";\"other\"\n\"1998321\";\"dong da\";\"other\"\n\"1998321\";\"dong da jie ban\";\"other\"\n\"1998321\";\"东大\";\"other\"\n\"1998321\";\"东大街办\";\"other\"\n\"1998326\";\"Xinglong\";\"main\"\n\"1998326\";\"xing long\";\"other\"\n\"1998326\";\"兴隆\";\"other\"\n\"1998335\";\"Qujiang\";\"main\"\n\"1998335\";\"Qujiang Jieban\";\"other\"\n\"1998335\";\"qu jiang\";\"other\"\n\"1998335\";\"qu jiang jie ban\";\"other\"\n\"1998335\";\"曲江\";\"other\"\n\"1998335\";\"曲江街办\";\"other\"\n\"1998336\";\"Dengjiapo\";\"main\"\n\"1998336\";\"Dengjiapo Jieban\";\"other\"\n\"1998336\";\"deng jia po\";\"other\"\n\"1998336\";\"等驾坡\";\"other\"\n\"1998337\";\"Daminggong\";\"main\"\n\"1998337\";\"Daminggong Jieban\";\"other\"\n\"1998337\";\"da ming gong\";\"other\"\n\"1998337\";\"da ming gong jie ban\";\"other\"\n\"1998337\";\"大明宫\";\"other\"\n\"1998337\";\"大明宫街办\";\"other\"\n\"1998338\";\"Hancheng\";\"main\"\n\"1998338\";\"Hancheng Jieban\";\"other\"\n\"1998338\";\"han cheng\";\"other\"\n\"1998338\";\"han cheng jie ban\";\"other\"\n\"1998338\";\"汉成\";\"other\"\n\"1998338\";\"汉成街办\";\"other\"\n\"1998339\";\"Tanjia\";\"main\"\n\"1998339\";\"Tanjia Jieban\";\"other\"\n\"1998339\";\"tan jia\";\"other\"\n\"1998339\";\"tan jia jie ban\";\"other\"\n\"1998339\";\"谭家\";\"other\"\n\"1998339\";\"谭家街办\";\"other\"\n\"1998356\";\"Baoli\";\"main\"\n\"1998356\";\"pao li\";\"other\"\n\"1998356\";\"炮里\";\"other\"\n\"1998357\";\"Huaxu\";\"main\"\n\"1998357\";\"Huaxu Zhen\";\"other\"\n\"1998357\";\"hua xu\";\"other\"\n\"1998357\";\"华胥\";\"other\"\n\"1998358\";\"Shijiazhai\";\"main\"\n\"1998358\";\"shi jia zhai\";\"other\"\n\"1998358\";\"史家寨\";\"other\"\n\"1998359\";\"Yangzhuang\";\"main\"\n\"1998359\";\"yang zhuang\";\"other\"\n\"1998359\";\"杨庄\";\"other\"\n\"1998361\";\"Wangmang\";\"main\"\n\"1998361\";\"wang mang\";\"other\"\n\"1998361\";\"王莽\";\"other\"\n\"1998363\";\"Wutai\";\"main\"\n\"1998363\";\"wu tai\";\"other\"\n\"1998363\";\"五台\";\"other\"\n\"1998374\";\"Gaoqiao\";\"main\"\n\"1998374\";\"gao qiao\";\"other\"\n\"1998374\";\"高桥\";\"other\"\n\"1998376\";\"Weifeng\";\"main\"\n\"1998376\";\"Weifeng Zhen\";\"other\"\n\"1998376\";\"wei feng\";\"other\"\n\"1998376\";\"wei feng zhen\";\"other\"\n\"1998376\";\"渭丰\";\"other\"\n\"1998376\";\"渭丰镇\";\"other\"\n\"1998377\";\"Cangyou\";\"main\"\n\"1998377\";\"Cangyou Zhen\";\"other\"\n\"1998377\";\"cang you\";\"other\"\n\"1998377\";\"cang you zhen\";\"other\"\n\"1998377\";\"苍游\";\"other\"\n\"1998377\";\"苍游镇\";\"other\"\n\"1998381\";\"Tianqiao\";\"main\"\n\"1998381\";\"tian qiao\";\"other\"\n\"1998381\";\"天桥\";\"other\"\n\"1998383\";\"Jiufeng\";\"main\"\n\"1998383\";\"jiu feng\";\"other\"\n\"1998383\";\"九峰\";\"other\"\n\"1998386\";\"Wuzhu\";\"main\"\n\"1998386\";\"wu zhu\";\"other\"\n\"1998386\";\"五竹\";\"other\"\n\"1998388\";\"Shijing\";\"main\"\n\"1998388\";\"Sijing Zhen\";\"other\"\n\"1998388\";\"shi jing\";\"other\"\n\"1998388\";\"shi jing zhen\";\"other\"\n\"1998388\";\"石井\";\"other\"\n\"1998388\";\"石井镇\";\"other\"\n\"1998393\";\"Houjia\";\"main\"\n\"1998393\";\"Houjiacun\";\"other\"\n\"1998393\";\"hou jia\";\"other\"\n\"1998393\";\"侯家\";\"other\"\n\"1998417\";\"Xinyang\";\"main\"\n\"1998417\";\"xin yang\";\"other\"\n\"1998417\";\"新阳\";\"other\"\n\"1998418\";\"Moxi\";\"main\"\n\"1998418\";\"mo xi\";\"other\"\n\"1998418\";\"漠西\";\"other\"\n\"1998434\";\"Fengyang\";\"main\"\n\"1998434\";\"Fengyang Zhen\";\"other\"\n\"1998434\";\"feng yang\";\"other\"\n\"1998434\";\"feng yang zhen\";\"other\"\n\"1998434\";\"峰阳\";\"other\"\n\"1998434\";\"峰阳镇\";\"other\"\n\"1998473\";\"Zhuganzhen\";\"main\"\n\"1998473\";\"Zhugan Zhen\";\"other\"\n\"1998473\";\"zhu gan\";\"other\"\n\"1998473\";\"zhu gan zhen\";\"other\"\n\"1998473\";\"注泔\";\"other\"\n\"1998473\";\"注泔镇\";\"other\"\n\"1998509\";\"Liangshan\";\"main\"\n\"1998509\";\"Liangshan Zhen\";\"other\"\n\"1998509\";\"liang shan\";\"other\"\n\"1998509\";\"liang shan zhen\";\"other\"\n\"1998509\";\"梁山\";\"other\"\n\"1998509\";\"梁山镇\";\"other\"\n\"1998538\";\"Dayang\";\"main\"\n\"1998538\";\"da yang\";\"other\"\n\"1998538\";\"大杨\";\"other\"\n\"1998565\";\"Shiniu\";\"main\"\n\"1998565\";\"shi niu\";\"other\"\n\"1998565\";\"石牛\";\"other\"\n\"1998706\";\"Yanxia\";\"main\"\n\"1998706\";\"Yanxiazhen\";\"other\"\n\"1998706\";\"yan xia\";\"other\"\n\"1998706\";\"yan xia zhen\";\"other\"\n\"1998706\";\"烟霞\";\"other\"\n\"1998706\";\"烟霞镇\";\"other\"\n\"1998727\";\"Jianling\";\"main\"\n\"1998727\";\"Jianlingzhen\";\"other\"\n\"1998727\";\"jian ling\";\"other\"\n\"1998727\";\"jian ling zhen\";\"other\"\n\"1998727\";\"建陵\";\"other\"\n\"1998727\";\"建陵镇\";\"other\"\n\"1998750\";\"Zhaoling\";\"main\"\n\"1998750\";\"zhao ling\";\"other\"\n\"1998750\";\"昭陵\";\"other\"\n\"1998768\";\"Xinshi\";\"main\"\n\"1999104\";\"Sangzhen\";\"main\"\n\"1999104\";\"sang zhen\";\"other\"\n\"1999104\";\"桑镇\";\"other\"\n\"1999164\";\"Fengyi\";\"main\"\n\"1999164\";\"feng yi\";\"other\"\n\"1999164\";\"丰仪\";\"other\"\n\"1999297\";\"Tianfu\";\"main\"\n\"1999297\";\"tian fu\";\"other\"\n\"1999297\";\"田阜\";\"other\"\n\"1999301\";\"Fuzhai\";\"main\"\n\"1999301\";\"fu zhai\";\"other\"\n\"1999301\";\"阜寨\";\"other\"\n\"1999581\";\"Baiwang\";\"main\"\n\"1999581\";\"Baiwang Zhen\";\"other\"\n\"1999581\";\"Baiwangzhen\";\"other\"\n\"1999581\";\"bai wang\";\"other\"\n\"1999581\";\"bai wang zhen\";\"other\"\n\"1999581\";\"白王\";\"other\"\n\"1999581\";\"白王镇\";\"other\"\n\"1999687\";\"Zhongzhang\";\"main\"\n\"1999687\";\"Zhongzhangzhen\";\"other\"\n\"1999687\";\"zhong zhang\";\"other\"\n\"1999687\";\"zhong zhang zhen\";\"other\"\n\"1999687\";\"中张\";\"other\"\n\"1999687\";\"中张镇\";\"other\"\n\"1999689\";\"Taiping\";\"main\"\n\"1999689\";\"Taiping Zhen\";\"other\"\n\"1999689\";\"Taipingzhen\";\"other\"\n\"1999689\";\"tai ping\";\"other\"\n\"1999689\";\"tai ping zhen\";\"other\"\n\"1999689\";\"太平\";\"other\"\n\"1999689\";\"太平镇\";\"other\"\n\"1999718\";\"Yanwang\";\"main\"\n\"1999718\";\"yan wang\";\"other\"\n\"1999718\";\"燕王\";\"other\"\n\"1999733\";\"Longquan\";\"main\"\n\"1999733\";\"long quan\";\"other\"\n\"1999733\";\"龙泉\";\"other\"\n\"1999829\";\"Chongwen\";\"main\"\n\"1999829\";\"chong wen\";\"other\"\n\"1999829\";\"崇文\";\"other\"\n\"1999938\";\"Cuo’e\";\"main\"\n\"1999938\";\"Cuo'e\";\"ascii\"\n\"1999938\";\"cuo e\";\"other\"\n\"1999938\";\"蹉峨\";\"other\"\n\"2000018\";\"Xumu\";\"main\"\n\"2000018\";\"xu mu\";\"other\"\n\"2000018\";\"徐木\";\"other\"\n\"2000026\";\"Beixi\";\"main\"\n\"2000026\";\"Beixi Zhen\";\"other\"\n\"2000026\";\"po xi\";\"other\"\n\"2000026\";\"陂西\";\"other\"\n\"2000546\";\"Duma\";\"main\"\n\"2000546\";\"du ma\";\"other\"\n\"2000546\";\"渡马\";\"other\"\n\"2000568\";\"Yujiagong\";\"main\"\n\"2000568\";\"yu jia gong\";\"other\"\n\"2000568\";\"御驾宫\";\"other\"\n\"2000597\";\"Shangyi\";\"main\"\n\"2000597\";\"shang yi\";\"other\"\n\"2000597\";\"上邑\";\"other\"\n\"2000700\";\"Bojia\";\"main\"\n\"2000700\";\"bo jia\";\"other\"\n\"2000700\";\"卜家\";\"other\"\n\"2000711\";\"Tiewang\";\"main\"\n\"2000711\";\"tie wang\";\"other\"\n\"2000711\";\"铁王\";\"other\"\n\"2000712\";\"Qinhe\";\"main\"\n\"2000712\";\"qin he\";\"other\"\n\"2000712\";\"秦河\";\"other\"\n\"2000820\";\"Meijiaping\";\"main\"\n\"2000820\";\"mei jia ping\";\"other\"\n\"2000820\";\"梅家坪\";\"other\"\n\"2000863\";\"Huazhu\";\"main\"\n\"2000863\";\"hua zhu\";\"other\"\n\"2000863\";\"华朱\";\"other\"\n\"2000872\";\"Xiaohui\";\"main\"\n\"2000872\";\"xiao hui\";\"other\"\n\"2000872\";\"小惠\";\"other\"\n\"2000889\";\"Gongli\";\"main\"\n\"2000889\";\"Gongli Zhen\";\"other\"\n\"2000889\";\"gong li\";\"other\"\n\"2000889\";\"宫里\";\"other\"\n\"2000890\";\"Qicun\";\"main\"\n\"2000890\";\"qi cun\";\"other\"\n\"2000890\";\"齐村\";\"other\"\n\"2000954\";\"Laomiao\";\"main\"\n\"2000954\";\"Laomiao Zhen\";\"other\"\n\"2000954\";\"lao miao\";\"other\"\n\"2000954\";\"老庙\";\"other\"\n\"2001001\";\"Mizi\";\"main\"\n\"2001001\";\"mi zi\";\"other\"\n\"2001001\";\"觅子\";\"other\"\n\"2001045\";\"Maquan\";\"main\"\n\"2001045\";\"Maquanzhen\";\"other\"\n\"2001045\";\"ma quan\";\"other\"\n\"2001045\";\"ma quan zhen\";\"other\"\n\"2001045\";\"马泉\";\"other\"\n\"2001045\";\"马泉镇\";\"other\"\n\"2001056\";\"Weibin\";\"main\"\n\"2001056\";\"Weibinzhen\";\"other\"\n\"2001056\";\"wei bin\";\"other\"\n\"2001056\";\"wei bin zhen\";\"other\"\n\"2001056\";\"渭滨\";\"other\"\n\"2001056\";\"渭滨镇\";\"other\"\n\"2001062\";\"Diaotai\";\"main\"\n\"2001062\";\"Diaotaizhen\";\"other\"\n\"2001062\";\"diao tai\";\"other\"\n\"2001062\";\"diao tai zhen\";\"other\"\n\"2001062\";\"汈台\";\"other\"\n\"2001062\";\"汈台镇\";\"other\"\n\"2001071\";\"Wujiabao\";\"main\"\n\"2001071\";\"Wujiabao Jieban\";\"other\"\n\"2001071\";\"wu jia bao\";\"other\"\n\"2001071\";\"wu jia bao jie ban\";\"other\"\n\"2001071\";\"吴家堡\";\"other\"\n\"2001071\";\"吴家堡街办\";\"other\"\n\"2001077\";\"Fengdong\";\"main\"\n\"2001077\";\"Fengdong Zhen\";\"other\"\n\"2001077\";\"Fengdongzhen\";\"other\"\n\"2001077\";\"feng dong\";\"other\"\n\"2001077\";\"feng dong zhen\";\"other\"\n\"2001077\";\"沣东\";\"other\"\n\"2001077\";\"沣东镇\";\"other\"\n\"2001088\";\"Weicheng\";\"main\"\n\"2001088\";\"Weicheng Zhen\";\"other\"\n\"2001088\";\"wei cheng\";\"other\"\n\"2001088\";\"wei cheng zhen\";\"other\"\n\"2001088\";\"渭城\";\"other\"\n\"2001088\";\"渭城镇\";\"other\"\n\"2001123\";\"Zhengyang\";\"main\"\n\"2001123\";\"Zhengyangzhen\";\"other\"\n\"2001123\";\"zheng yang\";\"other\"\n\"2001123\";\"zheng yang zhen\";\"other\"\n\"2001123\";\"正阳\";\"other\"\n\"2001123\";\"正阳镇\";\"other\"\n\"2001378\";\"Weiyanggong\";\"main\"\n\"2001378\";\"Weiyanggong Jieban\";\"other\"\n\"2001378\";\"wei yang gong\";\"other\"\n\"2001378\";\"wei yang gong jie ban\";\"other\"\n\"2001378\";\"未央宫\";\"other\"\n\"2001378\";\"未央宫街办\";\"other\"\n\"2001380\";\"Yanta\";\"main\"\n\"2001380\";\"Yanta Qu\";\"other\"\n\"2001380\";\"yan ta\";\"other\"\n\"2001380\";\"yan ta qu\";\"other\"\n\"2001380\";\"雁塔\";\"other\"\n\"2001380\";\"雁塔区\";\"other\"\n\"2001434\";\"Zhangbagou\";\"main\"\n\"2001434\";\"Zhangbagou Jieban\";\"other\"\n\"2001434\";\"zhang ba gou\";\"other\"\n\"2001434\";\"zhang ba gou jie ban\";\"other\"\n\"2001434\";\"丈八沟\";\"other\"\n\"2001434\";\"丈八沟街办\";\"other\"\n\"2001532\";\"Youfeng\";\"main\"\n\"2001532\";\"Youfeng Zhen\";\"other\"\n\"2001532\";\"you feng\";\"other\"\n\"2001532\";\"you feng zhen\";\"other\"\n\"2001532\";\"游凤\";\"other\"\n\"2001532\";\"游凤镇\";\"other\"\n\"2001540\";\"Sufang\";\"main\"\n\"2001540\";\"Sufangzhen\";\"other\"\n\"2001540\";\"su fang\";\"other\"\n\"2001540\";\"su fang zhen\";\"other\"\n\"2001540\";\"苏坊\";\"other\"\n\"2001540\";\"苏坊镇\";\"other\"\n\"2001585\";\"Daijia\";\"main\"\n\"2001585\";\"dai jia\";\"other\"\n\"2001585\";\"戴家\";\"other\"\n\"2001694\";\"Changning\";\"main\"\n\"2001694\";\"Changningzhen\";\"other\"\n\"2001694\";\"zhang ning\";\"other\"\n\"2001694\";\"zhang ning zhen\";\"other\"\n\"2001694\";\"长宁\";\"other\"\n\"2001694\";\"长宁镇\";\"other\"\n\"2001711\";\"Hedao\";\"main\"\n\"2001711\";\"he dao\";\"other\"\n\"2001711\";\"河道\";\"other\"\n\"2001738\";\"Xingzhe\";\"main\"\n\"2001738\";\"Xingzhe Jieban\";\"other\"\n\"2001738\";\"xing zhe\";\"other\"\n\"2001738\";\"行者\";\"other\"\n\"2001854\";\"Hexi\";\"main\"\n\"2001854\";\"he xi\";\"other\"\n\"2001854\";\"河西\";\"other\"\n\"2001855\";\"Yancun\";\"main\"\n\"2001855\";\"Yancun Zhen\";\"other\"\n\"2001855\";\"yan cun\";\"other\"\n\"2001855\";\"阎村\";\"other\"\n\"2033054\";\"Yunxing\";\"main\"\n\"2033054\";\"Tso-yun\";\"other\"\n\"2033054\";\"Tso-yun-hsien\";\"other\"\n\"2033054\";\"Tso-yün\";\"other\"\n\"2033054\";\"Tso-yün-hsien\";\"other\"\n\"2033054\";\"Tszoyun'\";\"other\"\n\"2033054\";\"Tszöyun’\";\"other\"\n\"2033054\";\"Zuoyun Xian\";\"other\"\n\"2033054\";\"yun xing\";\"other\"\n\"2033054\";\"云兴\";\"other\"\n\"2033054\";\"左云县\";\"other\"\n\"2033089\";\"Zhoushizhuang\";\"main\"\n\"2033089\";\"Chou-shih-chuang\";\"other\"\n\"2033089\";\"Zhoushizhuang Zhen\";\"other\"\n\"2033089\";\"周士庄\";\"other\"\n\"2033089\";\"周士庄镇\";\"other\"\n\"2033110\";\"Zhong’an\";\"main\"\n\"2033110\";\"Zhong'an\";\"ascii\"\n\"2033110\";\"Chung-an-p'u\";\"other\"\n\"2033110\";\"Chung-an-p’u\";\"other\"\n\"2033110\";\"Zhong'an Zhen\";\"other\"\n\"2033110\";\"Zhong'anpu\";\"other\"\n\"2033110\";\"Zhong’an Zhen\";\"other\"\n\"2033110\";\"Zhong’anpu\";\"other\"\n\"2033110\";\"zhong an\";\"other\"\n\"2033110\";\"zhong an zhen\";\"other\"\n\"2033110\";\"中安\";\"other\"\n\"2033110\";\"中安镇\";\"other\"\n\"2033112\";\"Dalazi\";\"main\"\n\"2033112\";\"Zhixin Zhen\";\"other\"\n\"2033112\";\"大砬子\";\"other\"\n\"2033112\";\"智新镇\";\"other\"\n\"2033128\";\"Zhenlai\";\"main\"\n\"2033128\";\"Ch'a-kan-nao\";\"other\"\n\"2033128\";\"Ch'a-kan-shao\";\"other\"\n\"2033128\";\"Chen-lai\";\"other\"\n\"2033128\";\"Chen-lai-chen\";\"other\"\n\"2033128\";\"Chen-tung\";\"other\"\n\"2033128\";\"Chen-tung-hsien\";\"other\"\n\"2033128\";\"Chzhendun\";\"other\"\n\"2033128\";\"Ch’a-kan-nao\";\"other\"\n\"2033128\";\"Ch’a-kan-shao\";\"other\"\n\"2033128\";\"镇赉\";\"other\"\n\"2033135\";\"Zhengjiatun\";\"main\"\n\"2033135\";\"Cheng-chia-t'un\";\"other\"\n\"2033135\";\"Cheng-chia-t'un-chen\";\"other\"\n\"2033135\";\"Cheng-chia-t’un\";\"other\"\n\"2033135\";\"Cheng-chia-t’un-chen\";\"other\"\n\"2033135\";\"Chengkiatun\";\"other\"\n\"2033135\";\"Liao-yuan\";\"other\"\n\"2033135\";\"Liao-yuan-hsien\";\"other\"\n\"2033135\";\"Liao-yüan\";\"other\"\n\"2033135\";\"Liao-yüan-hsien\";\"other\"\n\"2033135\";\"Shuangliao\";\"other\"\n\"2033137\";\"Zheng’an\";\"main\"\n\"2033137\";\"Zheng'an\";\"ascii\"\n\"2033137\";\"Cheng-an\";\"other\"\n\"2033137\";\"Cheng-an-p'u\";\"other\"\n\"2033137\";\"Cheng-an-p'u-ts'un\";\"other\"\n\"2033137\";\"Cheng-an-pao\";\"other\"\n\"2033137\";\"Cheng-an-pao-ts'un\";\"other\"\n\"2033137\";\"Cheng-an-pao-ts’un\";\"other\"\n\"2033137\";\"Cheng-an-p’u\";\"other\"\n\"2033137\";\"Cheng-an-p’u-ts’un\";\"other\"\n\"2033137\";\"Zheng'an Zhen\";\"other\"\n\"2033137\";\"Zheng'anpu\";\"other\"\n\"2033137\";\"Zheng’an Zhen\";\"other\"\n\"2033137\";\"Zheng’anpu\";\"other\"\n\"2033137\";\"zheng an\";\"other\"\n\"2033137\";\"zheng an zhen\";\"other\"\n\"2033137\";\"正安\";\"other\"\n\"2033137\";\"正安镇\";\"other\"\n\"2033147\";\"Zhaozhou\";\"main\"\n\"2033147\";\"Chao Chow\";\"other\"\n\"2033147\";\"Chao-chi\";\"other\"\n\"2033147\";\"Chao-chou\";\"other\"\n\"2033147\";\"Chao-chou-chen\";\"other\"\n\"2033147\";\"Chao-chou-hsien\";\"other\"\n\"2033147\";\"Chzhaochzhou\";\"other\"\n\"2033147\";\"Lao-ch'eng-chi\";\"other\"\n\"2033147\";\"Lao-chieh-chi\";\"other\"\n\"2033147\";\"Lao-ch’eng-chi\";\"other\"\n\"2033147\";\"Чжаочжоу\";\"other\"\n\"2033149\";\"Zhaoyuan\";\"main\"\n\"2033149\";\"Chao-chou\";\"other\"\n\"2033149\";\"Chao-yuan\";\"other\"\n\"2033149\";\"Chao-yuan-chen\";\"other\"\n\"2033149\";\"Chao-yuan-hsien\";\"other\"\n\"2033149\";\"Chao-yüan\";\"other\"\n\"2033149\";\"Chao-yüan-chen\";\"other\"\n\"2033149\";\"Chao-yüan-hsien\";\"other\"\n\"2033149\";\"Chaochow\";\"other\"\n\"2033149\";\"Chzhaochzhou\";\"other\"\n\"2033149\";\"Chzhaoyuan'\";\"other\"\n\"2033149\";\"Chzhaoyuan'gay\";\"other\"\n\"2033149\";\"Chzhaoyuan’\";\"other\"\n\"2033149\";\"Chzhaoyuan’gay\";\"other\"\n\"2033149\";\"Gokhoutsi\";\"other\"\n\"2033149\";\"Kuo-erh-lo-ssu-hou-ch'i\";\"other\"\n\"2033149\";\"Kuo-erh-lo-ssu-hou-ch’i\";\"other\"\n\"2033149\";\"Kuo-hou-ch'i\";\"other\"\n\"2033149\";\"Kuo-hou-ch’i\";\"other\"\n\"2033157\";\"Zhaotun\";\"main\"\n\"2033157\";\"Zhaojitun\";\"other\"\n\"2033157\";\"zhao tun\";\"other\"\n\"2033157\";\"zhao tun zhen\";\"other\"\n\"2033157\";\"赵屯\";\"other\"\n\"2033157\";\"赵屯镇\";\"other\"\n\"2033168\";\"Zhaodong\";\"main\"\n\"2033168\";\"Chao-tung\";\"other\"\n\"2033168\";\"Chao-tung-chen\";\"other\"\n\"2033168\";\"Chzhaodun\";\"other\"\n\"2033168\";\"Man'gou\";\"other\"\n\"2033168\";\"Man-kou\";\"other\"\n\"2033168\";\"Man’gou\";\"other\"\n\"2033168\";\"T'ien-tsao-kang\";\"other\"\n\"2033168\";\"T’ien-tsao-kang\";\"other\"\n\"2033196\";\"Zhangjiakou\";\"main\"\n\"2033196\";\"Chang-chia-k'ou\";\"other\"\n\"2033196\";\"Chang-chia-k'ou-shih\";\"other\"\n\"2033196\";\"Chang-chia-k’ou\";\"other\"\n\"2033196\";\"Chang-chia-k’ou-shih\";\"other\"\n\"2033196\";\"Chang-kia-k'ou\";\"other\"\n\"2033196\";\"Chang-kia-k’ou\";\"other\"\n\"2033196\";\"Changchiakow\";\"other\"\n\"2033196\";\"Changkiakow\";\"other\"\n\"2033196\";\"Chzhanczjakou\";\"other\"\n\"2033196\";\"Chzhantseyakou\";\"other\"\n\"2033196\";\"Kalgan\";\"other\"\n\"2033196\";\"Wan-ch'uan\";\"other\"\n\"2033196\";\"Wan-ch'uan-hsien\";\"other\"\n\"2033196\";\"Wan-ch’üan\";\"other\"\n\"2033196\";\"Wan-ch’üan-hsien\";\"other\"\n\"2033196\";\"zhang jia kou\";\"other\"\n\"2033196\";\"zhang jia kou shi\";\"other\"\n\"2033196\";\"Чжанцзякоу\";\"other\"\n\"2033196\";\"张家口市\";\"other\"\n\"2033196\";\"張家口\";\"other\"\n\"2033196\";\"張家口市\";\"other\"\n\"2033199\";\"Zhangjiachang\";\"main\"\n\"2033199\";\"Chang-chia-ch'ang\";\"other\"\n\"2033199\";\"Chang-chia-ch’ang\";\"other\"\n\"2033199\";\"Zhangjiachang Xiang\";\"other\"\n\"2033199\";\"张家场\";\"other\"\n\"2033199\";\"张家场乡\";\"other\"\n\"2033225\";\"Zalantun\";\"main\"\n\"2033225\";\"Butha Qi\";\"other\"\n\"2033225\";\"CHZHALAN'TUN'\";\"other\"\n\"2033225\";\"Cha-lan-tun\";\"other\"\n\"2033225\";\"Chzhalantun\";\"other\"\n\"2033225\";\"Cjalanjtunj\";\"other\"\n\"2033225\";\"Pu-t'e-ha-ch'i\";\"other\"\n\"2033225\";\"Pu-t’e-ha-ch’i\";\"other\"\n\"2033225\";\"Tsa-lan-t'un\";\"other\"\n\"2033225\";\"Tsa-lan-t’un\";\"other\"\n\"2033225\";\"Ya-lu\";\"other\"\n\"2033225\";\"Ya-lu-hsien\";\"other\"\n\"2033225\";\"ЧЖАЛАНЬТУНЬ\";\"other\"\n\"2033242\";\"Yushu\";\"main\"\n\"2033242\";\"Jujshu\";\"other\"\n\"2033242\";\"Ku-yu-shu\";\"other\"\n\"2033242\";\"Ku-yü-shu\";\"other\"\n\"2033242\";\"Yu-shu-chen\";\"other\"\n\"2033242\";\"Yu-shu-hsien\";\"other\"\n\"2033242\";\"Yü-shu-chen\";\"other\"\n\"2033242\";\"Yü-shu-hsien\";\"other\"\n\"2033242\";\"Юйшу\";\"other\"\n\"2033263\";\"Yulin\";\"main\"\n\"2033263\";\"Yulin Zhen\";\"other\"\n\"2033263\";\"榆林\";\"other\"\n\"2033263\";\"榆林镇\";\"other\"\n\"2033301\";\"Youhao\";\"main\"\n\"2033301\";\"Yu-hao\";\"other\"\n\"2033346\";\"Yitong\";\"main\"\n\"2033346\";\"I-t'ung\";\"other\"\n\"2033346\";\"I-t'ung-chen\";\"other\"\n\"2033346\";\"I-t'ung-hsien\";\"other\"\n\"2033346\";\"I-t’ung\";\"other\"\n\"2033346\";\"I-t’ung-chen\";\"other\"\n\"2033346\";\"I-t’ung-hsien\";\"other\"\n\"2033346\";\"yi tong\";\"other\"\n\"2033346\";\"伊通\";\"other\"\n\"2033366\";\"Yingluo\";\"main\"\n\"2033366\";\"Yingluo Zhen\";\"other\"\n\"2033366\";\"ying luo\";\"other\"\n\"2033366\";\"ying luo zhen\";\"other\"\n\"2033366\";\"英落\";\"other\"\n\"2033366\";\"英落镇\";\"other\"\n\"2033370\";\"Yingkou\";\"main\"\n\"2033370\";\"Eiko\";\"other\"\n\"2033370\";\"Inkou\";\"other\"\n\"2033370\";\"Newchwang\";\"other\"\n\"2033370\";\"Niu-chuang\";\"other\"\n\"2033370\";\"Ying-k'ou-hsien\";\"other\"\n\"2033370\";\"Ying-k'ou-shih\";\"other\"\n\"2033370\";\"Ying-k’ou-hsien\";\"other\"\n\"2033370\";\"Ying-k’ou-shih\";\"other\"\n\"2033370\";\"Yingkow\";\"other\"\n\"2033370\";\"Инкоу\";\"other\"\n\"2033377\";\"Ying’ebu\";\"main\"\n\"2033377\";\"Ying'ebu\";\"ascii\"\n\"2033377\";\"Ying'ebu Zhen\";\"other\"\n\"2033377\";\"Ying-o-pu\";\"other\"\n\"2033377\";\"Ying’ebu Zhen\";\"other\"\n\"2033377\";\"英额布\";\"other\"\n\"2033377\";\"英额布镇\";\"other\"\n\"2033403\";\"Yilan\";\"main\"\n\"2033403\";\"I-lan\";\"other\"\n\"2033403\";\"I-lan-chen\";\"other\"\n\"2033403\";\"I-lan-hsien\";\"other\"\n\"2033403\";\"San-hsing\";\"other\"\n\"2033403\";\"Sang-hsing\";\"other\"\n\"2033403\";\"Sansing\";\"other\"\n\"2033403\";\"Sen-hsing\";\"other\"\n\"2033413\";\"Yichun\";\"main\"\n\"2033413\";\"I-ch'un\";\"other\"\n\"2033413\";\"I-ch'un-shih\";\"other\"\n\"2033413\";\"I-ch’un\";\"other\"\n\"2033413\";\"I-ch’un-shih\";\"other\"\n\"2033413\";\"Ichun'\";\"other\"\n\"2033413\";\"Ичунь\";\"other\"\n\"2033423\";\"Yebaishou\";\"main\"\n\"2033423\";\"Chien-p'ing\";\"other\"\n\"2033423\";\"Chien-p’ing\";\"other\"\n\"2033423\";\"Jianping\";\"other\"\n\"2033423\";\"Teh-pai-shou\";\"other\"\n\"2033423\";\"Tszyan'pin\";\"other\"\n\"2033423\";\"Tszyan’pin\";\"other\"\n\"2033423\";\"Yeh-pai-shou\";\"other\"\n\"2033423\";\"Yeh-pai-shou-chen\";\"other\"\n\"2033423\";\"Yeh-pai-shu\";\"other\"\n\"2033423\";\"Yeh-po-shou\";\"other\"\n\"2033449\";\"Yantongshan\";\"main\"\n\"2033449\";\"Yen-t'ung-shan\";\"other\"\n\"2033449\";\"Yen-t’ung-shan\";\"other\"\n\"2033467\";\"Yanji\";\"main\"\n\"2033467\";\"Chu-tzu-chieh\";\"other\"\n\"2033467\";\"Chu-tzu-kai\";\"other\"\n\"2033467\";\"Chü-tzu-chieh\";\"other\"\n\"2033467\";\"Chü-tzu-kai\";\"other\"\n\"2033467\";\"Jan'czi\";\"other\"\n\"2033467\";\"Yang-chi-t'eng\";\"other\"\n\"2033467\";\"Yen-chi\";\"other\"\n\"2033467\";\"Yen-chi-shih\";\"other\"\n\"2033467\";\"Яньцзи\";\"other\"\n\"2033501\";\"Maoqitun\";\"main\"\n\"2033501\";\"Yang Chia Chuang Tzu\";\"other\"\n\"2033501\";\"Yang-chang-tzu\";\"other\"\n\"2033501\";\"Yang-chia-chang-tzu\";\"other\"\n\"2033501\";\"Yang-kia-chang-tze\";\"other\"\n\"2033501\";\"Yangjiazhangzi\";\"other\"\n\"2033501\";\"Yangjiazhangzi Jiedao\";\"other\"\n\"2033501\";\"Yantszyachzhantszy\";\"other\"\n\"2033501\";\"mao qi tun\";\"other\"\n\"2033501\";\"yang jia zhang zi\";\"other\"\n\"2033501\";\"杨家杖子\";\"other\"\n\"2033501\";\"毛祁屯\";\"other\"\n\"2033510\";\"Longquan\";\"main\"\n\"2033510\";\"Yang-chiao\";\"other\"\n\"2033510\";\"Yang-kao\";\"other\"\n\"2033510\";\"Yang-kao-hsien\";\"other\"\n\"2033510\";\"Yanggao\";\"other\"\n\"2033510\";\"long quan\";\"other\"\n\"2033510\";\"龙泉\";\"other\"\n\"2033536\";\"Yakeshi\";\"main\"\n\"2033536\";\"Hsi-kuei-t'u\";\"other\"\n\"2033536\";\"Hsi-kuei-t’u\";\"other\"\n\"2033536\";\"JAKEHSHI\";\"other\"\n\"2033536\";\"Shih-k'o-ya\";\"other\"\n\"2033536\";\"Shih-k’o-ya\";\"other\"\n\"2033536\";\"Xuguit Qi\";\"other\"\n\"2033536\";\"Ya-k'o-shih\";\"other\"\n\"2033536\";\"Ya-k’o-shih\";\"other\"\n\"2033536\";\"ЯКЭШИ\";\"other\"\n\"2033570\";\"Xubu\";\"main\"\n\"2033570\";\"Hsu-chia-p'u\";\"other\"\n\"2033570\";\"Hsu-chia-pao\";\"other\"\n\"2033570\";\"Hsu-pao\";\"other\"\n\"2033570\";\"Hsü-chia-pao\";\"other\"\n\"2033570\";\"Hsü-chia-p’u\";\"other\"\n\"2033570\";\"Hsü-pao\";\"other\"\n\"2033570\";\"Xubu Zhen\";\"other\"\n\"2033570\";\"许堡\";\"other\"\n\"2033570\";\"许堡镇\";\"other\"\n\"2033574\";\"Xuanhua\";\"main\"\n\"2033574\";\"Ch'ang-chia-k'ou-shih\";\"other\"\n\"2033574\";\"Ch’ang-chia-k’ou-shih\";\"other\"\n\"2033574\";\"Hsuan-hua\";\"other\"\n\"2033574\";\"Hsuan-hua-ch'eng\";\"other\"\n\"2033574\";\"Hsuan-hua-hsien\";\"other\"\n\"2033574\";\"Hsuan-hua-shih\";\"other\"\n\"2033574\";\"Hsüan-hua\";\"other\"\n\"2033574\";\"Hsüan-hua-ch’eng\";\"other\"\n\"2033574\";\"Hsüan-hua-hsien\";\"other\"\n\"2033574\";\"Hsüan-hua-shih\";\"other\"\n\"2033574\";\"Suanhwa\";\"other\"\n\"2033595\";\"Xiwanzi\";\"main\"\n\"2033595\";\"Ch'ung-li\";\"other\"\n\"2033595\";\"Ch'ung-li-hsien\";\"other\"\n\"2033595\";\"Chongli\";\"other\"\n\"2033595\";\"Ch’ung-li\";\"other\"\n\"2033595\";\"Ch’ung-li-hsien\";\"other\"\n\"2033595\";\"Hsi-wan\";\"other\"\n\"2033595\";\"Hsi-wan-tzu\";\"other\"\n\"2033595\";\"Hsiwantze\";\"other\"\n\"2033595\";\"Siwantze\";\"other\"\n\"2033595\";\"Siwantzu\";\"other\"\n\"2033595\";\"T'ai-p'ing-chan\";\"other\"\n\"2033595\";\"T'ai-p'ing-chuang\";\"other\"\n\"2033595\";\"T’ai-p’ing-chan\";\"other\"\n\"2033595\";\"T’ai-p’ing-chuang\";\"other\"\n\"2033595\";\"Xiwanzi Zhen\";\"other\"\n\"2033595\";\"西湾子\";\"other\"\n\"2033602\";\"Xiuyan\";\"main\"\n\"2033602\";\"Hsiu-yen\";\"other\"\n\"2033602\";\"Hsiu-yen-chen\";\"other\"\n\"2033602\";\"Hsiu-yen-hsien\";\"other\"\n\"2033602\";\"Hsiujen\";\"other\"\n\"2033602\";\"Siuyen\";\"other\"\n\"2033602\";\"Yu-yen\";\"other\"\n\"2033614\";\"Xisi\";\"main\"\n\"2033614\";\"Xisi Zhen\";\"other\"\n\"2033614\";\"xi si\";\"other\"\n\"2033614\";\"xi si zhen\";\"other\"\n\"2033614\";\"西四\";\"other\"\n\"2033614\";\"西四镇\";\"other\"\n\"2033627\";\"Xipingpo\";\"main\"\n\"2033627\";\"Xiping\";\"other\"\n\"2033627\";\"Xipingpo Manzuxiang\";\"other\"\n\"2033627\";\"xi ping po\";\"other\"\n\"2033627\";\"xi ping po man zu xiang\";\"other\"\n\"2033627\";\"西平坡\";\"other\"\n\"2033627\";\"西平坡满族乡\";\"other\"\n\"2033628\";\"Xiping\";\"main\"\n\"2033628\";\"Datong Xian\";\"other\"\n\"2033628\";\"Hsi-p'ing\";\"other\"\n\"2033628\";\"Hsi-p’ing\";\"other\"\n\"2033628\";\"Ta-t'ung\";\"other\"\n\"2033628\";\"Ta-t'ung-hsien\";\"other\"\n\"2033628\";\"Ta-t’ung\";\"other\"\n\"2033628\";\"Ta-t’ung-hsien\";\"other\"\n\"2033628\";\"Xiping Zhen\";\"other\"\n\"2033628\";\"xi ping\";\"other\"\n\"2033628\";\"大同县\";\"other\"\n\"2033628\";\"西坪\";\"other\"\n\"2033628\";\"西坪镇\";\"other\"\n\"2033661\";\"Xintaimen\";\"main\"\n\"2033661\";\"Hsin-t'ai-men\";\"other\"\n\"2033661\";\"Hsin-t’ai-men\";\"other\"\n\"2033661\";\"xin tai men\";\"other\"\n\"2033661\";\"新台门\";\"other\"\n\"2033667\";\"Xinqing\";\"main\"\n\"2033667\";\"Hsin-ch'ing\";\"other\"\n\"2033667\";\"Hsin-ch’ing\";\"other\"\n\"2033675\";\"Xinmin\";\"main\"\n\"2033675\";\"Hsin-min\";\"other\"\n\"2033675\";\"Hsin-min-chen\";\"other\"\n\"2033675\";\"Hsin-min-hsien\";\"other\"\n\"2033675\";\"Hsin-ming-t'ing\";\"other\"\n\"2033675\";\"Hsin-ming-t’ing\";\"other\"\n\"2033675\";\"Sin'min'\";\"other\"\n\"2033675\";\"Sinmin\";\"other\"\n\"2033675\";\"Синьминь\";\"other\"\n\"2033724\";\"Xingcan\";\"main\"\n\"2033724\";\"Xingcan Zhen\";\"other\"\n\"2033724\";\"Xingshen\";\"other\"\n\"2033724\";\"兴参\";\"other\"\n\"2033724\";\"兴参镇\";\"other\"\n\"2033739\";\"Xinglongshan\";\"main\"\n\"2033739\";\"Hsing-lung-shan\";\"other\"\n\"2033757\";\"Dahuanggou\";\"main\"\n\"2033757\";\"Ta-huang-kou\";\"other\"\n\"2033757\";\"Xinghua\";\"other\"\n\"2033757\";\"Xinglin Zhen\";\"other\"\n\"2033757\";\"兴林镇\";\"other\"\n\"2033757\";\"大荒沟\";\"other\"\n\"2033766\";\"Xingcheng\";\"main\"\n\"2033766\";\"Hingcheng\";\"other\"\n\"2033766\";\"Hsing-ch'eng\";\"other\"\n\"2033766\";\"Hsing-ch'eng-chen\";\"other\"\n\"2033766\";\"Hsing-ch'eng-hsien\";\"other\"\n\"2033766\";\"Hsing-ch’eng\";\"other\"\n\"2033766\";\"Hsing-ch’eng-chen\";\"other\"\n\"2033766\";\"Hsing-ch’eng-hsien\";\"other\"\n\"2033766\";\"Ning-yuan\";\"other\"\n\"2033766\";\"Ning-yuan-chou\";\"other\"\n\"2033766\";\"Ning-yüan\";\"other\"\n\"2033766\";\"Ning-yüan-chou\";\"other\"\n\"2033766\";\"Shinchon\";\"other\"\n\"2033766\";\"Sinchehn\";\"other\"\n\"2033766\";\"Синчэн\";\"other\"\n\"2033782\";\"Dashan\";\"main\"\n\"2033782\";\"Xindian\";\"other\"\n\"2033782\";\"Xindian Zhen\";\"other\"\n\"2033782\";\"da shan\";\"other\"\n\"2033782\";\"xin dian zhen\";\"other\"\n\"2033782\";\"大山\";\"other\"\n\"2033782\";\"新甸镇\";\"other\"\n\"2033808\";\"Ximu\";\"main\"\n\"2033808\";\"Hsi-mu-ch'eng\";\"other\"\n\"2033808\";\"Hsi-mu-ch’eng\";\"other\"\n\"2033808\";\"Hsi-shui-ch'eng\";\"other\"\n\"2033808\";\"Hsi-shui-ch’eng\";\"other\"\n\"2033808\";\"Hsin-mu-ch'eng\";\"other\"\n\"2033808\";\"Hsin-mu-ch’eng\";\"other\"\n\"2033808\";\"Shimucheng\";\"other\"\n\"2033808\";\"Ximu Zhen\";\"other\"\n\"2033808\";\"Ximucheng\";\"other\"\n\"2033808\";\"xi mu\";\"other\"\n\"2033808\";\"xi mu zhen\";\"other\"\n\"2033808\";\"析木\";\"other\"\n\"2033808\";\"析木镇\";\"other\"\n\"2033819\";\"Xiliu\";\"main\"\n\"2033819\";\"Xiliu Zhen\";\"other\"\n\"2033819\";\"xi liu\";\"other\"\n\"2033819\";\"xi liu zhen\";\"other\"\n\"2033819\";\"西柳\";\"other\"\n\"2033819\";\"西柳镇\";\"other\"\n\"2033824\";\"Xilin Hot\";\"main\"\n\"2033824\";\"A-pa-ha-na-erh-ch'i\";\"other\"\n\"2033824\";\"A-pa-ha-na-erh-ch’i\";\"other\"\n\"2033824\";\"A-pa-ha-na-erh-tso-i-ch'i\";\"other\"\n\"2033824\";\"A-pa-ha-na-erh-tso-i-ch’i\";\"other\"\n\"2033824\";\"A-pa-ha-na-erh-yu-i-ch'i\";\"other\"\n\"2033824\";\"A-pa-ha-na-erh-yu-i-ch’i\";\"other\"\n\"2033824\";\"A-pa-k'a-pei-tzu-fu\";\"other\"\n\"2033824\";\"A-pa-k’a-pei-tzu-fu\";\"other\"\n\"2033824\";\"Abaga Pei-tzu-fu\";\"other\"\n\"2033824\";\"Abagnar Qi\";\"other\"\n\"2033824\";\"Hsi-lin-hao-t'e\";\"other\"\n\"2033824\";\"Hsi-lin-hao-t’e\";\"other\"\n\"2033824\";\"Hsi-lin-kuo-ch'in\";\"other\"\n\"2033824\";\"Hsi-lin-kuo-ch’in\";\"other\"\n\"2033824\";\"Pei-tzu-fu\";\"other\"\n\"2033824\";\"Pei-tzu-miao\";\"other\"\n\"2033824\";\"Peitzemiao\";\"other\"\n\"2033824\";\"Silinghot\";\"other\"\n\"2033826\";\"Xilinhe\";\"main\"\n\"2033826\";\"Xilinhe Xiang\";\"other\"\n\"2033826\";\"细鳞河\";\"other\"\n\"2033826\";\"细鳞河乡\";\"other\"\n\"2033853\";\"Xihanling\";\"main\"\n\"2033853\";\"Hsi-han-chua-ling\";\"other\"\n\"2033853\";\"Hsi-han-chuä-ling\";\"other\"\n\"2033853\";\"Hsi-han-ling\";\"other\"\n\"2033853\";\"Xihanling Zhen\";\"other\"\n\"2033853\";\"西韩岭\";\"other\"\n\"2033853\";\"西韩岭镇\";\"other\"\n\"2033866\";\"Xifeng\";\"main\"\n\"2033866\";\"Hsi-feng\";\"other\"\n\"2033866\";\"Hsi-feng-chen\";\"other\"\n\"2033866\";\"Hsi-feng-hsien\";\"other\"\n\"2033866\";\"Sifeng\";\"other\"\n\"2033866\";\"T'ao-lu\";\"other\"\n\"2033866\";\"T’ao-lu\";\"other\"\n\"2033909\";\"Xiaozhuangzi\";\"main\"\n\"2033909\";\"Xiaozhuangzi Zhen\";\"other\"\n\"2033909\";\"xiao zhuang zi\";\"other\"\n\"2033909\";\"小庄子\";\"other\"\n\"2033934\";\"Xiaoshi\";\"main\"\n\"2033934\";\"Benxi\";\"other\"\n\"2033934\";\"Hsiao-shih\";\"other\"\n\"2033934\";\"Hsiao-shih-chen\";\"other\"\n\"2033934\";\"Pen-ch'i\";\"other\"\n\"2033934\";\"Pen-ch'i-hsien\";\"other\"\n\"2033934\";\"Pen-ch’i\";\"other\"\n\"2033934\";\"Pen-ch’i-hsien\";\"other\"\n\"2033934\";\"Pen-hsi\";\"other\"\n\"2033934\";\"Pen-hsi-hsien\";\"other\"\n\"2033988\";\"Xiaochengzi\";\"main\"\n\"2033988\";\"Hsiao-ch'eng-tzu\";\"other\"\n\"2033988\";\"Hsiao-ch’eng-tzu\";\"other\"\n\"2033988\";\"Xiaochengzi Zhen\";\"other\"\n\"2033988\";\"xiao cheng zi\";\"other\"\n\"2033988\";\"xiao cheng zi zhen\";\"other\"\n\"2033988\";\"小城子\";\"other\"\n\"2033988\";\"小城子镇\";\"other\"\n\"2033998\";\"Xianrenqiao\";\"main\"\n\"2033998\";\"Daying\";\"other\"\n\"2033998\";\"Ta-ying\";\"other\"\n\"2033998\";\"Xianrenqiao Zhen\";\"other\"\n\"2033998\";\"仙人桥\";\"other\"\n\"2033998\";\"仙人桥镇\";\"other\"\n\"2034141\";\"Wuchang\";\"main\"\n\"2034141\";\"Huan-hsi-ling\";\"other\"\n\"2034141\";\"Uchan\";\"other\"\n\"2034141\";\"Wu-ch'ang-chen\";\"other\"\n\"2034141\";\"Wu-ch'ang-hsien\";\"other\"\n\"2034141\";\"Wu-ch'ang-t'ing\";\"other\"\n\"2034141\";\"Wu-ch’ang-chen\";\"other\"\n\"2034141\";\"Wu-ch’ang-hsien\";\"other\"\n\"2034141\";\"Wu-ch’ang-t’ing\";\"other\"\n\"2034141\";\"Wutschangting\";\"other\"\n\"2034141\";\"Учан\";\"other\"\n\"2034161\";\"Dalian\";\"main\"\n\"2034161\";\"Wenxiang\";\"other\"\n\"2034161\";\"Wenxiang Zhen\";\"other\"\n\"2034161\";\"da lian\";\"other\"\n\"2034161\";\"wen xiang zhen\";\"other\"\n\"2034161\";\"温香镇\";\"other\"\n\"2034161\";\"达连\";\"other\"\n\"2034209\";\"Wanliang\";\"main\"\n\"2034209\";\"Wan-liang-ho\";\"other\"\n\"2034209\";\"Wanliang Zhen\";\"other\"\n\"2034209\";\"万良\";\"other\"\n\"2034209\";\"万良镇\";\"other\"\n\"2034218\";\"Wangshi\";\"main\"\n\"2034218\";\"Wangshi Zhen\";\"other\"\n\"2034218\";\"wang shi\";\"other\"\n\"2034218\";\"wang shi zhen\";\"other\"\n\"2034218\";\"王石\";\"other\"\n\"2034218\";\"王石镇\";\"other\"\n\"2034221\";\"Wangqing\";\"main\"\n\"2034221\";\"Ta-tu-ch'uan\";\"other\"\n\"2034221\";\"Ta-tu-ch’uan\";\"other\"\n\"2034221\";\"Ta-wang-kou\";\"other\"\n\"2034221\";\"Vancine\";\"other\"\n\"2034221\";\"Wang-ch'ing\";\"other\"\n\"2034221\";\"Wang-ch'ing-chen\";\"other\"\n\"2034221\";\"Wang-ch'ing-hsien\";\"other\"\n\"2034221\";\"Wang-ch’ing\";\"other\"\n\"2034221\";\"Wang-ch’ing-chen\";\"other\"\n\"2034221\";\"Wang-ch’ing-hsien\";\"other\"\n\"2034221\";\"Wangqing Xian\";\"other\"\n\"2034221\";\"Wangqing Zhen\";\"other\"\n\"2034221\";\"Ванцине\";\"other\"\n\"2034221\";\"汪清\";\"other\"\n\"2034221\";\"王清县\";\"other\"\n\"2034221\";\"王清镇\";\"other\"\n\"2034226\";\"Wangou\";\"main\"\n\"2034226\";\"Wan-kou\";\"other\"\n\"2034228\";\"Wangkui\";\"main\"\n\"2034228\";\"Shuang-lung\";\"other\"\n\"2034228\";\"Ta-wu-ching-tzu\";\"other\"\n\"2034228\";\"Wang-k'uei\";\"other\"\n\"2034228\";\"Wang-k'uei-chen\";\"other\"\n\"2034228\";\"Wang-k'uei-hsien\";\"other\"\n\"2034228\";\"Wang-k’uei\";\"other\"\n\"2034228\";\"Wang-k’uei-chen\";\"other\"\n\"2034228\";\"Wang-k’uei-hsien\";\"other\"\n\"2034255\";\"Wangbao\";\"main\"\n\"2034255\";\"Wangbao Zhen\";\"other\"\n\"2034255\";\"wang bao zhen\";\"other\"\n\"2034255\";\"王宝镇\";\"other\"\n\"2034268\";\"Dadianzi\";\"main\"\n\"2034268\";\"Ta-tien-tzu\";\"other\"\n\"2034268\";\"Wan-p'ao-ho-tzu\";\"other\"\n\"2034268\";\"Wan-pao\";\"other\"\n\"2034268\";\"Wan-p’ao-ho-tzu\";\"other\"\n\"2034268\";\"Wanbao Zhen\";\"other\"\n\"2034268\";\"Wang-p'ao-ho-tzu\";\"other\"\n\"2034268\";\"Wang-p’ao-ho-tzu\";\"other\"\n\"2034268\";\"Wanpaotun\";\"other\"\n\"2034268\";\"万宝镇\";\"other\"\n\"2034268\";\"大甸子\";\"other\"\n\"2034312\";\"Ulan Hot\";\"main\"\n\"2034312\";\"Horqin Youyi Qianqi\";\"other\"\n\"2034312\";\"Huai-yuan-chen\";\"other\"\n\"2034312\";\"Huai-yuän-chen\";\"other\"\n\"2034312\";\"K'o-erh-ch'in-yu-ch'ien-ch'i\";\"other\"\n\"2034312\";\"K'o-erh-ch'in-yu-i-ch'ien-ch'i\";\"other\"\n\"2034312\";\"K’o-erh-ch’in-yu-ch’ien-ch’i\";\"other\"\n\"2034312\";\"K’o-erh-ch’in-yu-i-ch’ien-ch’i\";\"other\"\n\"2034312\";\"Ulan Hoto\";\"other\"\n\"2034312\";\"Ulan-Khoto\";\"other\"\n\"2034312\";\"Van''yemyao\";\"other\"\n\"2034312\";\"Van’’yemyao\";\"other\"\n\"2034312\";\"Wang-yeh-miao\";\"other\"\n\"2034312\";\"Wu-lan-hao-t'e\";\"other\"\n\"2034312\";\"Wu-lan-hao-t'e-shih\";\"other\"\n\"2034312\";\"Wu-lan-hao-t’e\";\"other\"\n\"2034312\";\"Wu-lan-hao-t’e-shih\";\"other\"\n\"2034321\";\"Tushan\";\"main\"\n\"2034321\";\"T'u-shan-tzu-shih\";\"other\"\n\"2034321\";\"Tu-shan-tzu\";\"other\"\n\"2034321\";\"Tushan Zhen\";\"other\"\n\"2034321\";\"Tushanzi\";\"other\"\n\"2034321\";\"T’u-shan-tzu-shih\";\"other\"\n\"2034321\";\"土山\";\"other\"\n\"2034321\";\"土山子\";\"other\"\n\"2034321\";\"土山镇\";\"other\"\n\"2034340\";\"Tumen\";\"main\"\n\"2034340\";\"T'u-men-chan\";\"other\"\n\"2034340\";\"T'u-men-shih\";\"other\"\n\"2034340\";\"Tjumenskij\";\"other\"\n\"2034340\";\"T’u-men-chan\";\"other\"\n\"2034340\";\"T’u-men-shih\";\"other\"\n\"2034340\";\"Тюменский\";\"other\"\n\"2034387\";\"Beixinjie\";\"main\"\n\"2034387\";\"Shanhochen\";\"other\"\n\"2034387\";\"T'ou-tao-kou\";\"other\"\n\"2034387\";\"T'u-ta-kou\";\"other\"\n\"2034387\";\"Toudao\";\"other\"\n\"2034387\";\"Toudao Zhen\";\"other\"\n\"2034387\";\"Toudaogou\";\"other\"\n\"2034387\";\"Towtaokow\";\"other\"\n\"2034387\";\"T’ou-tao-kou\";\"other\"\n\"2034387\";\"T’u-ta-kou\";\"other\"\n\"2034387\";\"北新街\";\"other\"\n\"2034387\";\"头道沟\";\"other\"\n\"2034387\";\"头道镇\";\"other\"\n\"2034389\";\"Toudao\";\"main\"\n\"2034389\";\"T'ou-tao\";\"other\"\n\"2034389\";\"T'ou-tao-wai-tzu\";\"other\"\n\"2034389\";\"Toudao Zhen\";\"other\"\n\"2034389\";\"T’ou-tao\";\"other\"\n\"2034389\";\"T’ou-tao-wai-tzu\";\"other\"\n\"2034389\";\"头道\";\"other\"\n\"2034389\";\"头道镇\";\"other\"\n\"2034400\";\"Tongliao\";\"main\"\n\"2034400\";\"Bayan Tala\";\"other\"\n\"2034400\";\"Pa-lin-ai-hsin\";\"other\"\n\"2034400\";\"Pai-an-ta-la\";\"other\"\n\"2034400\";\"Pai-yin-t'ai-lai\";\"other\"\n\"2034400\";\"Pai-yin-t’ai-lai\";\"other\"\n\"2034400\";\"Payintala\";\"other\"\n\"2034400\";\"T'ung-liao\";\"other\"\n\"2034400\";\"T'ung-liao-hsien\";\"other\"\n\"2034400\";\"T'ung-liao-shih\";\"other\"\n\"2034400\";\"Tungliaochen\";\"other\"\n\"2034400\";\"T’ung-liao\";\"other\"\n\"2034400\";\"T’ung-liao-hsien\";\"other\"\n\"2034400\";\"T’ung-liao-shih\";\"other\"\n\"2034400\";\"tong liao\";\"other\"\n\"2034400\";\"tong liao shi\";\"other\"\n\"2034400\";\"通辽市\";\"other\"\n\"2034400\";\"通遼\";\"other\"\n\"2034439\";\"Tieling\";\"main\"\n\"2034439\";\"T'e-ling\";\"other\"\n\"2034439\";\"T'ieh-ling\";\"other\"\n\"2034439\";\"T'ieh-ling-hsien\";\"other\"\n\"2034439\";\"Telin\";\"other\"\n\"2034439\";\"T’e-ling\";\"other\"\n\"2034439\";\"T’ieh-ling\";\"other\"\n\"2034439\";\"T’ieh-ling-hsien\";\"other\"\n\"2034439\";\"Телин\";\"other\"\n\"2034440\";\"Tieli\";\"main\"\n\"2034440\";\"T'ieh-li\";\"other\"\n\"2034440\";\"T'ieh-li-chen\";\"other\"\n\"2034440\";\"T'ieh-li-hsien\";\"other\"\n\"2034440\";\"T'ieh-shan-pao\";\"other\"\n\"2034440\";\"Teli\";\"other\"\n\"2034440\";\"T’ieh-li\";\"other\"\n\"2034440\";\"T’ieh-li-chen\";\"other\"\n\"2034440\";\"T’ieh-li-hsien\";\"other\"\n\"2034440\";\"T’ieh-shan-pao\";\"other\"\n\"2034451\";\"Yuquan\";\"main\"\n\"2034451\";\"T'ien-chen\";\"other\"\n\"2034451\";\"T'ien-chen-hsien\";\"other\"\n\"2034451\";\"T'ien-chen-hsien-ch'eng\";\"other\"\n\"2034451\";\"Tianzhen\";\"other\"\n\"2034451\";\"T’ien-chen\";\"other\"\n\"2034451\";\"T’ien-chen-hsien\";\"other\"\n\"2034451\";\"T’ien-chen-hsien-ch’eng\";\"other\"\n\"2034451\";\"yu quan\";\"other\"\n\"2034451\";\"玉泉\";\"other\"\n\"2034461\";\"Tianqiaoling\";\"main\"\n\"2034461\";\"T'ien-ch'iao-ling\";\"other\"\n\"2034461\";\"Tianqiaoling Zhen\";\"other\"\n\"2034461\";\"T’ien-ch’iao-ling\";\"other\"\n\"2034461\";\"天桥岭\";\"other\"\n\"2034461\";\"天桥岭镇\";\"other\"\n\"2034479\";\"Fu’an\";\"main\"\n\"2034479\";\"Fu'an\";\"ascii\"\n\"2034479\";\"T'eng-ao-chen\";\"other\"\n\"2034479\";\"T'eng-ao-p'u-ts'un\";\"other\"\n\"2034479\";\"T'eng-ao-pao\";\"other\"\n\"2034479\";\"Teng'ao\";\"other\"\n\"2034479\";\"Teng'ao Zhen\";\"other\"\n\"2034479\";\"Teng'aopu\";\"other\"\n\"2034479\";\"Teng-ao-tao\";\"other\"\n\"2034479\";\"Teng’ao\";\"other\"\n\"2034479\";\"Teng’ao Zhen\";\"other\"\n\"2034479\";\"Teng’aopu\";\"other\"\n\"2034479\";\"T’eng-ao-chen\";\"other\"\n\"2034479\";\"T’eng-ao-pao\";\"other\"\n\"2034479\";\"T’eng-ao-p’u-ts’un\";\"other\"\n\"2034479\";\"fu an\";\"other\"\n\"2034479\";\"teng ao zhen\";\"other\"\n\"2034479\";\"福安\";\"other\"\n\"2034479\";\"腾鳌镇\";\"other\"\n\"2034486\";\"Tashantun\";\"main\"\n\"2034486\";\"Tashantun Zhen\";\"other\"\n\"2034486\";\"ta shan tun\";\"other\"\n\"2034486\";\"ta shan tun zhen\";\"other\"\n\"2034486\";\"塔山屯\";\"other\"\n\"2034486\";\"塔山屯镇\";\"other\"\n\"2034487\";\"Yingta\";\"main\"\n\"2034487\";\"Tashan\";\"other\"\n\"2034487\";\"Tashan Xiang\";\"other\"\n\"2034487\";\"ta shan\";\"other\"\n\"2034487\";\"ying ta\";\"other\"\n\"2034487\";\"塔山\";\"other\"\n\"2034487\";\"英塔\";\"other\"\n\"2034497\";\"Taonan\";\"main\"\n\"2034497\";\"T'ao-nan-chen\";\"other\"\n\"2034497\";\"T'ao-nan-fu\";\"other\"\n\"2034497\";\"T'ao-nan-hsien\";\"other\"\n\"2034497\";\"Tao'an\";\"other\"\n\"2034497\";\"Taonan'\";\"other\"\n\"2034497\";\"Tao’an\";\"other\"\n\"2034497\";\"T’ao-nan-chen\";\"other\"\n\"2034497\";\"T’ao-nan-fu\";\"other\"\n\"2034497\";\"T’ao-nan-hsien\";\"other\"\n\"2034497\";\"Таонань\";\"other\"\n\"2034555\";\"Taishang\";\"main\"\n\"2034555\";\"Taishang Zhen\";\"other\"\n\"2034555\";\"台上\";\"other\"\n\"2034555\";\"台上镇\";\"other\"\n\"2034599\";\"Tailai\";\"main\"\n\"2034599\";\"T'ai-lai-chen\";\"other\"\n\"2034599\";\"T'ai-lai-hsien\";\"other\"\n\"2034599\";\"Tailaichi\";\"other\"\n\"2034599\";\"T’ai-lai-chen\";\"other\"\n\"2034599\";\"T’ai-lai-hsien\";\"other\"\n\"2034600\";\"Taikang\";\"main\"\n\"2034600\";\"Dorbod\";\"other\"\n\"2034600\";\"Duerbotetsi\";\"other\"\n\"2034600\";\"Durvet\";\"other\"\n\"2034600\";\"Hsiao-hao-tzu\";\"other\"\n\"2034600\";\"Syaokhaotszy\";\"other\"\n\"2034600\";\"T'ai-k'ang-chen\";\"other\"\n\"2034600\";\"T'ai-k'ang-hsien\";\"other\"\n\"2034600\";\"Taykan\";\"other\"\n\"2034600\";\"Tu-erh-po-t'e\";\"other\"\n\"2034600\";\"Tu-erh-po-t'e-ch'i\";\"other\"\n\"2034600\";\"Tu-erh-po-t'e-meng-ku-tsu-tzu-chih-hsien\";\"other\"\n\"2034600\";\"Tu-erh-po-t’e\";\"other\"\n\"2034600\";\"Tu-erh-po-t’e-ch’i\";\"other\"\n\"2034600\";\"Tu-erh-po-t’e-meng-ku-tsu-tzu-chih-hsien\";\"other\"\n\"2034600\";\"T’ai-k’ang-chen\";\"other\"\n\"2034600\";\"T’ai-k’ang-hsien\";\"other\"\n\"2034602\";\"Taijitun\";\"main\"\n\"2034602\";\"tai ji tun\";\"other\"\n\"2034602\";\"台集屯\";\"other\"\n\"2034615\";\"Tahe\";\"main\"\n\"2034615\";\"Ku-ch'i-ku\";\"other\"\n\"2034615\";\"Ku-ch’i-ku\";\"other\"\n\"2034615\";\"T'a-ho\";\"other\"\n\"2034615\";\"T’a-ho\";\"other\"\n\"2034633\";\"Sunjiapuzi\";\"main\"\n\"2034633\";\"Sun-chia-p'u-tzu\";\"other\"\n\"2034633\";\"Sun-chia-pao-tzu\";\"other\"\n\"2034633\";\"Sun-chia-p’u-tzu\";\"other\"\n\"2034633\";\"sun jia bao zi\";\"other\"\n\"2034633\";\"孙家堡子\";\"other\"\n\"2034638\";\"Sujiatun\";\"main\"\n\"2034638\";\"Hsu-chia-t'un\";\"other\"\n\"2034638\";\"Hsu-chia-t’un\";\"other\"\n\"2034638\";\"Ssu-chia-t'un\";\"other\"\n\"2034638\";\"Ssu-chia-t’un\";\"other\"\n\"2034638\";\"Su-chia-t'un\";\"other\"\n\"2034638\";\"Su-chia-t’un\";\"other\"\n\"2034638\";\"Suczjatun'\";\"other\"\n\"2034638\";\"Sukiatun\";\"other\"\n\"2034638\";\"Суцзятунь\";\"other\"\n\"2034647\";\"Suizhong\";\"main\"\n\"2034647\";\"Chung-hou-so\";\"other\"\n\"2034647\";\"Sui-chung\";\"other\"\n\"2034647\";\"Sui-chung-chen\";\"other\"\n\"2034647\";\"Sui-chung-hsien\";\"other\"\n\"2034647\";\"Suichun\";\"other\"\n\"2034647\";\"Suizhong Xian\";\"other\"\n\"2034647\";\"sui zhong\";\"other\"\n\"2034647\";\"sui zhong xian\";\"other\"\n\"2034647\";\"绥中\";\"other\"\n\"2034647\";\"绥中县\";\"other\"\n\"2034651\";\"Suileng\";\"main\"\n\"2034651\";\"K'o-yin-ho\";\"other\"\n\"2034651\";\"K’o-yin-ho\";\"other\"\n\"2034651\";\"Sui-leng Hsien\";\"other\"\n\"2034651\";\"Sui-leng-chen\";\"other\"\n\"2034655\";\"Suihua\";\"main\"\n\"2034655\";\"Pei-lin-tzu\";\"other\"\n\"2034655\";\"Pei-t'uan-lin-tzu\";\"other\"\n\"2034655\";\"Pei-t’uan-lin-tzu\";\"other\"\n\"2034655\";\"Sui-hua-chen\";\"other\"\n\"2034655\";\"Sui-hua-hsien\";\"other\"\n\"2034655\";\"Sui-hwa\";\"other\"\n\"2034657\";\"Suifenhe\";\"main\"\n\"2034657\";\"Pogranichinaya\";\"other\"\n\"2034657\";\"Pogranichnaya\";\"other\"\n\"2034657\";\"Sui-fen\";\"other\"\n\"2034657\";\"Sui-fen-ho\";\"other\"\n\"2034657\";\"Sui-fen-ho-shih\";\"other\"\n\"2034691\";\"Songjianghe\";\"main\"\n\"2034691\";\"Songjianghe Zhen\";\"other\"\n\"2034691\";\"Sung-chiang-ho\";\"other\"\n\"2034691\";\"松江河\";\"other\"\n\"2034691\";\"松江河镇\";\"other\"\n\"2034694\";\"Songjiang\";\"main\"\n\"2034694\";\"An-t'u-hsien\";\"other\"\n\"2034694\";\"An-t’u-hsien\";\"other\"\n\"2034694\";\"Antu\";\"other\"\n\"2034694\";\"Chiu-an-t'u\";\"other\"\n\"2034694\";\"Chiu-an-t’u\";\"other\"\n\"2034694\";\"Niang-niang-k'u\";\"other\"\n\"2034694\";\"Niang-niang-k’u\";\"other\"\n\"2034694\";\"Songjiang Zhen\";\"other\"\n\"2034694\";\"Sung-chiang\";\"other\"\n\"2034694\";\"Sung-chiang-chen\";\"other\"\n\"2034694\";\"松江\";\"other\"\n\"2034694\";\"松江镇\";\"other\"\n\"2034695\";\"Songjiang\";\"main\"\n\"2034695\";\"Songjiang Xiang\";\"other\"\n\"2034695\";\"松江\";\"other\"\n\"2034695\";\"松江乡\";\"other\"\n\"2034714\";\"Siping\";\"main\"\n\"2034714\";\"Ssu-p'ing\";\"other\"\n\"2034714\";\"Ssu-p'ing-chieh\";\"other\"\n\"2034714\";\"Ssu-p'ing-kai\";\"other\"\n\"2034714\";\"Ssu-p'ing-shih\";\"other\"\n\"2034714\";\"Ssu-p’ing\";\"other\"\n\"2034714\";\"Ssu-p’ing-chieh\";\"other\"\n\"2034714\";\"Ssu-p’ing-kai\";\"other\"\n\"2034714\";\"Ssu-p’ing-shih\";\"other\"\n\"2034714\";\"Szekingkai\";\"other\"\n\"2034714\";\"Szeping\";\"other\"\n\"2034714\";\"Szepingkai\";\"other\"\n\"2034715\";\"Sipeng\";\"main\"\n\"2034715\";\"Sipeng Xiang\";\"other\"\n\"2034715\";\"四棚\";\"other\"\n\"2034715\";\"四棚乡\";\"other\"\n\"2034725\";\"Beisijiazi\";\"main\"\n\"2034725\";\"Beisijiazi Xiang\";\"other\"\n\"2034725\";\"Sijiazi\";\"other\"\n\"2034725\";\"Ssu-chia-tzu\";\"other\"\n\"2034725\";\"bei si jia zi\";\"other\"\n\"2034725\";\"bei si jia zi xiang\";\"other\"\n\"2034725\";\"北四家子\";\"other\"\n\"2034725\";\"北四家子乡\";\"other\"\n\"2034744\";\"Si’erbao\";\"main\"\n\"2034744\";\"Si'erbao\";\"ascii\"\n\"2034744\";\"Si'erbao Zhen\";\"other\"\n\"2034744\";\"Si'erpu\";\"other\"\n\"2034744\";\"Si’erbao Zhen\";\"other\"\n\"2034744\";\"Si’erpu\";\"other\"\n\"2034744\";\"Ssu-erh-p'u\";\"other\"\n\"2034744\";\"Ssu-erh-pao\";\"other\"\n\"2034744\";\"Ssu-erh-p’u\";\"other\"\n\"2034744\";\"si r bao\";\"other\"\n\"2034744\";\"si r bao zhen\";\"other\"\n\"2034744\";\"寺儿堡\";\"other\"\n\"2034744\";\"寺儿堡镇\";\"other\"\n\"2034747\";\"Sidaogou\";\"main\"\n\"2034747\";\"Sidaogou Zhen\";\"other\"\n\"2034747\";\"Ssu-tao-kou\";\"other\"\n\"2034747\";\"四道沟\";\"other\"\n\"2034747\";\"四道沟镇\";\"other\"\n\"2034754\";\"Shunyi\";\"main\"\n\"2034754\";\"Shun'i\";\"other\"\n\"2034754\";\"Shun-i\";\"other\"\n\"2034754\";\"Shun-i-ch'u\";\"other\"\n\"2034754\";\"Shun-i-ch’ü\";\"other\"\n\"2034754\";\"Shun-i-hsien\";\"other\"\n\"2034754\";\"Шуньи\";\"other\"\n\"2034761\";\"Shulan\";\"main\"\n\"2034761\";\"Shu-lan-chen\";\"other\"\n\"2034761\";\"Shu-lan-chieh\";\"other\"\n\"2034761\";\"Shulan'\";\"other\"\n\"2034761\";\"Ssu-chia-fang\";\"other\"\n\"2034761\";\"Шулань\";\"other\"\n\"2034786\";\"Shuangyashan\";\"main\"\n\"2034786\";\"Chien-shan\";\"other\"\n\"2034786\";\"Shuang-ya-shan-shih\";\"other\"\n\"2034791\";\"Shuangyang\";\"main\"\n\"2034791\";\"Shuang-yang-chen\";\"other\"\n\"2034791\";\"Shuang-yang-ho\";\"other\"\n\"2034791\";\"Shuang-yang-hsien\";\"other\"\n\"2034791\";\"Shwangyang\";\"other\"\n\"2034791\";\"Suan-yang-ho\";\"other\"\n\"2034834\";\"Shuangcheng\";\"main\"\n\"2034834\";\"Schwang-tschong-ting\";\"other\"\n\"2034834\";\"Schwang-tschöng-ting\";\"other\"\n\"2034834\";\"Schwangcheng\";\"other\"\n\"2034834\";\"Shuang-ch'eng-chen\";\"other\"\n\"2034834\";\"Shuang-ch'eng-hsien\";\"other\"\n\"2034834\";\"Shuang-ch'eng-pao\";\"other\"\n\"2034834\";\"Shuang-ch’eng-chen\";\"other\"\n\"2034834\";\"Shuang-ch’eng-hsien\";\"other\"\n\"2034834\";\"Shuang-ch’eng-pao\";\"other\"\n\"2034834\";\"Shwangcheng\";\"other\"\n\"2034852\";\"Shixian\";\"main\"\n\"2034852\";\"Ka-ya-ho\";\"other\"\n\"2034852\";\"Shih-hsien\";\"other\"\n\"2034852\";\"Shixian Zhen\";\"other\"\n\"2034852\";\"石岘\";\"other\"\n\"2034852\";\"石岘镇\";\"other\"\n\"2034883\";\"Shiqi\";\"main\"\n\"2034883\";\"Shih-ch'i-chieh\";\"other\"\n\"2034883\";\"Shih-ch’i-chieh\";\"other\"\n\"2034883\";\"Shiqijie\";\"other\"\n\"2034883\";\"Xinhe Xiang\";\"other\"\n\"2034883\";\"十骑\";\"other\"\n\"2034883\";\"新合乡\";\"other\"\n\"2034893\";\"Shimen\";\"main\"\n\"2034893\";\"Chatiaogou\";\"other\"\n\"2034893\";\"Shimen Zhen\";\"other\"\n\"2034893\";\"石门\";\"other\"\n\"2034893\";\"石门镇\";\"other\"\n\"2034914\";\"Gongyi\";\"main\"\n\"2034914\";\"Shih-hu\";\"other\"\n\"2034914\";\"Shihu\";\"other\"\n\"2034914\";\"Shihu Zhen\";\"other\"\n\"2034914\";\"公益\";\"other\"\n\"2034914\";\"石湖镇\";\"other\"\n\"2034918\";\"Xiguit Kuangqu\";\"main\"\n\"2034918\";\"Shiguaigou\";\"other\"\n\"2034918\";\"Shih-kuai\";\"other\"\n\"2034918\";\"Shih-kuai-chen\";\"other\"\n\"2034918\";\"Shih-kuai-kou\";\"other\"\n\"2034918\";\"Shih-kuai-kou-kung-ch'u\";\"other\"\n\"2034918\";\"Shih-kuai-kou-kung-ch’ü\";\"other\"\n\"2034918\";\"Shih-kuai-tzu\";\"other\"\n\"2034918\";\"Shih-kuai-tzw\";\"other\"\n\"2034918\";\"Shihkuaitsun\";\"other\"\n\"2034923\";\"Shi’erdaogou\";\"main\"\n\"2034923\";\"Shi'erdaogou\";\"ascii\"\n\"2034923\";\"Shi'erdaogou Xiang\";\"other\"\n\"2034923\";\"Shih-erh-tao-kou\";\"other\"\n\"2034923\";\"Shi’erdaogou Xiang\";\"other\"\n\"2034923\";\"十二道沟\";\"other\"\n\"2034923\";\"十二道沟乡\";\"other\"\n\"2034937\";\"Shenyang\";\"main\"\n\"2034937\";\"Feng-t'ien\";\"other\"\n\"2034937\";\"Feng-t’ien\";\"other\"\n\"2034937\";\"Moukden\";\"other\"\n\"2034937\";\"Mukden\";\"other\"\n\"2034937\";\"Senjangas\";\"other\"\n\"2034937\";\"Shehn'jan\";\"other\"\n\"2034937\";\"Shen-yang-hsien\";\"other\"\n\"2034937\";\"Shen-yang-shih\";\"other\"\n\"2034937\";\"Shengking\";\"other\"\n\"2034937\";\"Shenyang Shi\";\"other\"\n\"2034937\";\"Tham Duong\";\"other\"\n\"2034937\";\"Thẩm Dương\";\"other\"\n\"2034937\";\"chen yang\";\"other\"\n\"2034937\";\"chen yang shi\";\"other\"\n\"2034937\";\"seon-yang\";\"other\"\n\"2034937\";\"shen yang\";\"other\"\n\"2034937\";\"shnyangh\";\"other\"\n\"2034937\";\"Šenjangas\";\"other\"\n\"2034937\";\"Шэньян\";\"other\"\n\"2034937\";\"شنيانغ\";\"other\"\n\"2034937\";\"沈阳\";\"other\"\n\"2034937\";\"沈阳市\";\"other\"\n\"2034937\";\"沉阳市\";\"other\"\n\"2034937\";\"瀋陽\";\"other\"\n\"2034937\";\"선양\";\"other\"\n\"2034995\";\"Shanhetun\";\"main\"\n\"2034995\";\"Shan-ho-t'un\";\"other\"\n\"2034995\";\"Shan-ho-t’un\";\"other\"\n\"2035002\";\"Shangzhi\";\"main\"\n\"2035002\";\"Chu-he\";\"other\"\n\"2035002\";\"Chu-ho\";\"other\"\n\"2035002\";\"Chu-ho-hsien\";\"other\"\n\"2035002\";\"Shang-chih\";\"other\"\n\"2035002\";\"Shang-chih-chen\";\"other\"\n\"2035002\";\"Uchzukhe\";\"other\"\n\"2035002\";\"Wu-chi-mi-ho\";\"other\"\n\"2035002\";\"Wu-chu-ho\";\"other\"\n\"2035002\";\"Wukimichan\";\"other\"\n\"2035002\";\"Wukimiho\";\"other\"\n\"2035061\";\"Shahe\";\"main\"\n\"2035061\";\"Shahe Zhen\";\"other\"\n\"2035061\";\"sha he\";\"other\"\n\"2035061\";\"sha he zhen\";\"other\"\n\"2035061\";\"沙河\";\"other\"\n\"2035061\";\"沙河镇\";\"other\"\n\"2035062\";\"Shaheying\";\"main\"\n\"2035062\";\"Shaheying Xiang\";\"other\"\n\"2035062\";\"sha he ying\";\"other\"\n\"2035062\";\"sha he ying xiang\";\"other\"\n\"2035062\";\"沙河营\";\"other\"\n\"2035062\";\"沙河营乡\";\"other\"\n\"2035070\";\"Shaguotun\";\"main\"\n\"2035070\";\"Sha-kuo-t'un\";\"other\"\n\"2035070\";\"Sha-kuo-t’un\";\"other\"\n\"2035070\";\"Shaguotun Jiedao\";\"other\"\n\"2035070\";\"Wei-tung\";\"other\"\n\"2035070\";\"sha guo tun\";\"other\"\n\"2035070\";\"沙锅屯\";\"other\"\n\"2035090\";\"Santun\";\"main\"\n\"2035090\";\"San-t'un-pao\";\"other\"\n\"2035090\";\"San-tung-p'u\";\"other\"\n\"2035090\";\"San-tung-pao\";\"other\"\n\"2035090\";\"San-tung-p’u\";\"other\"\n\"2035090\";\"San-t’un-pao\";\"other\"\n\"2035090\";\"Santun Xiang\";\"other\"\n\"2035090\";\"三屯\";\"other\"\n\"2035090\";\"三屯乡\";\"other\"\n\"2035092\";\"Sandaowan\";\"main\"\n\"2035092\";\"San-tao-wai\";\"other\"\n\"2035092\";\"Sandao\";\"other\"\n\"2035092\";\"Sandaowan Zhen\";\"other\"\n\"2035092\";\"Santouwai\";\"other\"\n\"2035092\";\"三道湾\";\"other\"\n\"2035092\";\"三道湾镇\";\"other\"\n\"2035119\";\"Sankeyushu\";\"main\"\n\"2035119\";\"San-k'o-yu-shu\";\"other\"\n\"2035119\";\"San-k’o-yü-shu\";\"other\"\n\"2035119\";\"Sankeyushu Zhen\";\"other\"\n\"2035119\";\"三棵榆树\";\"other\"\n\"2035119\";\"三棵榆树镇\";\"other\"\n\"2035142\";\"Sanhe\";\"main\"\n\"2035142\";\"San-ho\";\"other\"\n\"2035142\";\"San-ho-ts'un\";\"other\"\n\"2035142\";\"San-ho-ts’un\";\"other\"\n\"2035142\";\"Sanhe Zhen\";\"other\"\n\"2035142\";\"三合\";\"other\"\n\"2035142\";\"三合镇\";\"other\"\n\"2035180\";\"Sandao\";\"main\"\n\"2035180\";\"San-tao\";\"other\"\n\"2035180\";\"Sandao Xiang\";\"other\"\n\"2035180\";\"三道\";\"other\"\n\"2035180\";\"三道乡\";\"other\"\n\"2035182\";\"Sanchazi\";\"main\"\n\"2035182\";\"Hsia-tien-tzu\";\"other\"\n\"2035182\";\"San-ch'a-tze\";\"other\"\n\"2035182\";\"San-ch'a-tzu\";\"other\"\n\"2035182\";\"San-ch’a-tze\";\"other\"\n\"2035182\";\"San-ch’a-tzu\";\"other\"\n\"2035189\";\"Sanchahe\";\"main\"\n\"2035189\";\"San-ch'a-ho\";\"other\"\n\"2035189\";\"San-ch'a-ho-chieh\";\"other\"\n\"2035189\";\"San-ch’a-ho\";\"other\"\n\"2035189\";\"San-ch’a-ho-chieh\";\"other\"\n\"2035189\";\"San-ho-ch'a\";\"other\"\n\"2035189\";\"San-ho-ch’a\";\"other\"\n\"2035189\";\"Shih-t'ou-ch'eng\";\"other\"\n\"2035189\";\"Shih-t'ou-ch'eng-tzu\";\"other\"\n\"2035189\";\"Shih-t’ou-ch’eng\";\"other\"\n\"2035189\";\"Shih-t’ou-ch’eng-tzu\";\"other\"\n\"2035189\";\"san cha he\";\"other\"\n\"2035189\";\"三岔河\";\"other\"\n\"2035196\";\"Salqin\";\"main\"\n\"2035196\";\"Sa-hsien\";\"other\"\n\"2035196\";\"Sa-la-ch'i\";\"other\"\n\"2035196\";\"Sa-la-ch'i-hsien\";\"other\"\n\"2035196\";\"Sa-la-ch’i\";\"other\"\n\"2035196\";\"Sa-la-ch’i-hsien\";\"other\"\n\"2035196\";\"Salaqi\";\"other\"\n\"2035196\";\"Salatsi\";\"other\"\n\"2035196\";\"Saratsi\";\"other\"\n\"2035196\";\"Saratsi-ting\";\"other\"\n\"2035196\";\"T'u-mo-t'e-yu-ch'i\";\"other\"\n\"2035196\";\"Tumd Youqi\";\"other\"\n\"2035196\";\"T’u-mo-t’e-yu-ch’i\";\"other\"\n\"2035225\";\"Ranghulu\";\"main\"\n\"2035225\";\"Jang-hu-lu\";\"other\"\n\"2035225\";\"Ya-hu-lu-p'ao\";\"other\"\n\"2035225\";\"Ya-hu-lu-p’ao\";\"other\"\n\"2035231\";\"Qujiadian\";\"main\"\n\"2035231\";\"Ch'u-chia-tien\";\"other\"\n\"2035231\";\"Ch’ü-chia-tien\";\"other\"\n\"2035231\";\"Qujiadian Xiang\";\"other\"\n\"2035231\";\"qu jia dian\";\"other\"\n\"2035231\";\"qu jia dian xiang\";\"other\"\n\"2035231\";\"曲家店\";\"other\"\n\"2035231\";\"曲家店乡\";\"other\"\n\"2035234\";\"Quanyang\";\"main\"\n\"2035234\";\"Ch'uan-yang\";\"other\"\n\"2035234\";\"Ch'uan-yang-ho-tzu\";\"other\"\n\"2035234\";\"Ch’üan-yang\";\"other\"\n\"2035234\";\"Ch’üan-yang-ho-tzu\";\"other\"\n\"2035234\";\"Quanyang Zhen\";\"other\"\n\"2035234\";\"泉阳\";\"other\"\n\"2035234\";\"泉阳镇\";\"other\"\n\"2035237\";\"Quantou\";\"main\"\n\"2035237\";\"Ch'uan-t'ou\";\"other\"\n\"2035237\";\"Ch’üan-t’ou\";\"other\"\n\"2035237\";\"Quantou Zhen\";\"other\"\n\"2035237\";\"quan tou\";\"other\"\n\"2035237\";\"泉头\";\"other\"\n\"2035261\";\"Qitaihe\";\"main\"\n\"2035261\";\"Ch'i-ho-ho\";\"other\"\n\"2035261\";\"Ch'i-t'ai-ho\";\"other\"\n\"2035261\";\"Ch’i-ho-ho\";\"other\"\n\"2035261\";\"Ch’i-t’ai-ho\";\"other\"\n\"2035265\";\"Qiqihar\";\"main\"\n\"2035265\";\"Ch'i-ch'i-ha-erh\";\"other\"\n\"2035265\";\"Ch'i-ch'i-ha-erh-shih\";\"other\"\n\"2035265\";\"Ch’i-ch’i-ha-erh\";\"other\"\n\"2035265\";\"Ch’i-ch’i-ha-erh-shih\";\"other\"\n\"2035265\";\"Cicikar\";\"other\"\n\"2035265\";\"Lung-chiang\";\"other\"\n\"2035265\";\"Lung-chiang-hsien\";\"other\"\n\"2035265\";\"Lungkiang\";\"other\"\n\"2035265\";\"Tsitsihar\";\"other\"\n\"2035265\";\"Zizikar\";\"other\"\n\"2035265\";\"chichiha-eol\";\"other\"\n\"2035265\";\"chichiharu\";\"other\"\n\"2035265\";\"qi qi ha er shi\";\"other\"\n\"2035265\";\"Цицикар\";\"other\"\n\"2035265\";\"チチハル\";\"other\"\n\"2035265\";\"齐齐哈尔市\";\"other\"\n\"2035265\";\"치치하얼\";\"other\"\n\"2035289\";\"Qingshi\";\"main\"\n\"2035289\";\"Qingshi Zhen\";\"other\"\n\"2035289\";\"青石\";\"other\"\n\"2035289\";\"青石镇\";\"other\"\n\"2035319\";\"Qinghe\";\"main\"\n\"2035319\";\"Ch'ing-ho\";\"other\"\n\"2035319\";\"Ch’ing-ho\";\"other\"\n\"2035319\";\"Qinghe Zhen\";\"other\"\n\"2035319\";\"清河\";\"other\"\n\"2035319\";\"清河镇\";\"other\"\n\"2035325\";\"Qinggang\";\"main\"\n\"2035325\";\"Ch'ing-kang\";\"other\"\n\"2035325\";\"Ch'ing-kang-chen\";\"other\"\n\"2035325\";\"Ch'ing-kang-hsien\";\"other\"\n\"2035325\";\"Ch’ing-kang\";\"other\"\n\"2035325\";\"Ch’ing-kang-chen\";\"other\"\n\"2035325\";\"Ch’ing-kang-hsien\";\"other\"\n\"2035325\";\"Tsingkang\";\"other\"\n\"2035325\";\"Tso-shu-kang\";\"other\"\n\"2035328\";\"Qingduizi\";\"main\"\n\"2035328\";\"Ch'ing-tui-tzu\";\"other\"\n\"2035328\";\"Ch’ing-tui-tzu\";\"other\"\n\"2035328\";\"Qingduzi Zhen\";\"other\"\n\"2035328\";\"qing dui zi\";\"other\"\n\"2035328\";\"qing dui zi zhen\";\"other\"\n\"2035328\";\"青堆子\";\"other\"\n\"2035328\";\"青堆子镇\";\"other\"\n\"2035368\";\"Qidaogou\";\"main\"\n\"2035368\";\"Ch'i-tao-kou\";\"other\"\n\"2035368\";\"Ch’i-tao-kou\";\"other\"\n\"2035368\";\"Qidaogou Zhen\";\"other\"\n\"2035368\";\"七道沟\";\"other\"\n\"2035368\";\"七道沟镇\";\"other\"\n\"2035379\";\"Guta\";\"main\"\n\"2035379\";\"Ch'ien-t'un-we\";\"other\"\n\"2035379\";\"Ch'ien-t'un-wei\";\"other\"\n\"2035379\";\"Ch'ien-wei\";\"other\"\n\"2035379\";\"Ch’ien-t’un-we\";\"other\"\n\"2035379\";\"Ch’ien-t’un-wei\";\"other\"\n\"2035379\";\"Ch’ien-wei\";\"other\"\n\"2035379\";\"Qianwei\";\"other\"\n\"2035379\";\"Qianwei Zhen\";\"other\"\n\"2035379\";\"gu ta\";\"other\"\n\"2035379\";\"qian wei\";\"other\"\n\"2035379\";\"qian wei zhen\";\"other\"\n\"2035379\";\"前卫\";\"other\"\n\"2035379\";\"前卫镇\";\"other\"\n\"2035379\";\"古塔\";\"other\"\n\"2035381\";\"Qiansuo\";\"main\"\n\"2035381\";\"Chung-ch'ien-so\";\"other\"\n\"2035381\";\"Chung-ch’ien-so\";\"other\"\n\"2035381\";\"Qiansuo Zhen\";\"other\"\n\"2035381\";\"qian suo\";\"other\"\n\"2035381\";\"qian suo zhen\";\"other\"\n\"2035381\";\"前所\";\"other\"\n\"2035381\";\"前所镇\";\"other\"\n\"2035399\";\"Qianguo\";\"main\"\n\"2035399\";\"Ch'ia-la-tien\";\"other\"\n\"2035399\";\"Ch'ien-kuo-ch'i\";\"other\"\n\"2035399\";\"Ch'ien-kuo-chen\";\"other\"\n\"2035399\";\"Ch'ien-kuo-erh-lo-ssu\";\"other\"\n\"2035399\";\"Ch'ien-kuo-erh-lo-ssu-meng-ku-tsu-tzu-chih-hsien\";\"other\"\n\"2035399\";\"Ch’ia-la-tien\";\"other\"\n\"2035399\";\"Ch’ien-kuo-chen\";\"other\"\n\"2035399\";\"Ch’ien-kuo-ch’i\";\"other\"\n\"2035399\";\"Ch’ien-kuo-erh-lo-ssu\";\"other\"\n\"2035399\";\"Ch’ien-kuo-erh-lo-ssu-meng-ku-tsu-tzu-chih-hsien\";\"other\"\n\"2035399\";\"Front Korlis Mongolian Autonomous County\";\"other\"\n\"2035399\";\"Kuo-ch'ien-chi\";\"other\"\n\"2035399\";\"Kuo-ch’ien-chi\";\"other\"\n\"2035399\";\"Kuo-erh-lo-ssu-ch'ien-ch'i\";\"other\"\n\"2035399\";\"Kuo-erh-lo-ssu-ch’ien-ch’i\";\"other\"\n\"2035399\";\"Qian Gorlos\";\"other\"\n\"2035399\";\"前郭\";\"other\"\n\"2035410\";\"Qian’an\";\"main\"\n\"2035410\";\"Qian'an\";\"ascii\"\n\"2035410\";\"Ch'ang-fa-t'un\";\"other\"\n\"2035410\";\"Ch'ien-an\";\"other\"\n\"2035410\";\"Ch'ien-an-chen\";\"other\"\n\"2035410\";\"Ch’ang-fa-t’un\";\"other\"\n\"2035410\";\"Ch’ien-an\";\"other\"\n\"2035410\";\"Ch’ien-an-chen\";\"other\"\n\"2035410\";\"Tsyan'an\";\"other\"\n\"2035410\";\"Tsyan’an\";\"other\"\n\"2035410\";\"gan an\";\"other\"\n\"2035410\";\"乾安\";\"other\"\n\"2035453\";\"Pingzhuang\";\"main\"\n\"2035453\";\"P'ing-chuang\";\"other\"\n\"2035453\";\"P’ing-chuang\";\"other\"\n\"2035511\";\"Panshi\";\"main\"\n\"2035511\";\"Mo-p'a-shan\";\"other\"\n\"2035511\";\"Mo-p'an-shan\";\"other\"\n\"2035511\";\"Mo-p’a-shan\";\"other\"\n\"2035511\";\"Mo-p’an-shan\";\"other\"\n\"2035511\";\"P'an-shih\";\"other\"\n\"2035511\";\"P'an-shih-chen\";\"other\"\n\"2035511\";\"P'an-shih-hsien\";\"other\"\n\"2035511\";\"Pan'shi\";\"other\"\n\"2035511\";\"Panshihtun\";\"other\"\n\"2035511\";\"P’an-shih\";\"other\"\n\"2035511\";\"P’an-shih-chen\";\"other\"\n\"2035511\";\"P’an-shih-hsien\";\"other\"\n\"2035511\";\"Паньши\";\"other\"\n\"2035513\";\"Panshan\";\"main\"\n\"2035513\";\"P'an-shan-chen\";\"other\"\n\"2035513\";\"P'an-shan-hsien\";\"other\"\n\"2035513\";\"P’an-shan-chen\";\"other\"\n\"2035513\";\"P’an-shan-hsien\";\"other\"\n\"2035513\";\"Shuang-t'ai-tzu\";\"other\"\n\"2035513\";\"Shuang-t’ai-tzu\";\"other\"\n\"2035559\";\"Nuanchitang\";\"main\"\n\"2035559\";\"Nuan-ch'ih-t'ang\";\"other\"\n\"2035559\";\"Nuan-ch’ih-t’ang\";\"other\"\n\"2035559\";\"Nuanchitang Zhen\";\"other\"\n\"2035559\";\"nuan chi tang\";\"other\"\n\"2035559\";\"nuan chi tang zhen\";\"other\"\n\"2035559\";\"暖池塘\";\"other\"\n\"2035559\";\"暖池塘镇\";\"other\"\n\"2035565\";\"Nong’an\";\"main\"\n\"2035565\";\"Nong'an\";\"ascii\"\n\"2035565\";\"Ku-huang-lung-fu\";\"other\"\n\"2035565\";\"Lungwan\";\"other\"\n\"2035565\";\"Nung-an\";\"other\"\n\"2035565\";\"Nung-an-chen\";\"other\"\n\"2035565\";\"Nung-an-hsien\";\"other\"\n\"2035565\";\"nong an\";\"other\"\n\"2035565\";\"农安\";\"other\"\n\"2035566\";\"Lubei\";\"main\"\n\"2035566\";\"Niu-chuang\";\"other\"\n\"2035566\";\"Niu-chuang-ch'eng\";\"other\"\n\"2035566\";\"Niu-chuang-ch’eng\";\"other\"\n\"2035566\";\"Niuzhuang\";\"other\"\n\"2035566\";\"Niuzhuang Zhen\";\"other\"\n\"2035566\";\"lu bei\";\"other\"\n\"2035566\";\"niu zhuang zhen\";\"other\"\n\"2035566\";\"牛庄镇\";\"other\"\n\"2035566\";\"路北\";\"other\"\n\"2035572\";\"Niuxinbu\";\"main\"\n\"2035572\";\"Niu-hsin-p'u\";\"other\"\n\"2035572\";\"Niu-hsin-pao\";\"other\"\n\"2035572\";\"Niu-hsin-p’u\";\"other\"\n\"2035572\";\"Niuxinbu Xiang\";\"other\"\n\"2035572\";\"牛心堡\";\"other\"\n\"2035572\";\"牛心堡乡\";\"other\"\n\"2035593\";\"Nianzishan\";\"main\"\n\"2035593\";\"Ch'ien-nien-tzu-shan\";\"other\"\n\"2035593\";\"Ch’ien-nien-tzu-shan\";\"other\"\n\"2035593\";\"Nien-tzu-shan\";\"other\"\n\"2035593\";\"Nien-tzu-shan-chan\";\"other\"\n\"2035601\";\"Nenjiang\";\"main\"\n\"2035601\";\"Mergen\";\"other\"\n\"2035601\";\"Mo-erh-ken\";\"other\"\n\"2035601\";\"Nen-ch'eng\";\"other\"\n\"2035601\";\"Nen-ch'eng-hsien\";\"other\"\n\"2035601\";\"Nen-chiang\";\"other\"\n\"2035601\";\"Nen-chiang-chen\";\"other\"\n\"2035601\";\"Nen-ch’eng\";\"other\"\n\"2035601\";\"Nen-ch’eng-hsien\";\"other\"\n\"2035601\";\"Nenkiang\";\"other\"\n\"2035601\";\"Nun Cheng\";\"other\"\n\"2035601\";\"Nun-ch'iang\";\"other\"\n\"2035601\";\"Nun-ch'ien\";\"other\"\n\"2035601\";\"Nun-ch’iang\";\"other\"\n\"2035601\";\"Nun-ch’ien\";\"other\"\n\"2035601\";\"Nunkiang\";\"other\"\n\"2035601\";\"Nunkianghsien\";\"other\"\n\"2035601\";\"Nünkianghsien\";\"other\"\n\"2035610\";\"Nehe\";\"main\"\n\"2035610\";\"Bordo\";\"other\"\n\"2035610\";\"Bordotschan\";\"other\"\n\"2035610\";\"NEHKHEH\";\"other\"\n\"2035610\";\"Na-ho\";\"other\"\n\"2035610\";\"Ne-ho\";\"other\"\n\"2035610\";\"Nekhe\";\"other\"\n\"2035610\";\"No-ho\";\"other\"\n\"2035610\";\"No-ho-chen\";\"other\"\n\"2035610\";\"No-ho-hsien\";\"other\"\n\"2035610\";\"Nê-ho\";\"other\"\n\"2035610\";\"Po-erh-to\";\"other\"\n\"2035610\";\"Porto\";\"other\"\n\"2035610\";\"НЭХЭ\";\"other\"\n\"2035617\";\"Naozhi\";\"main\"\n\"2035617\";\"Naozhi Zhen\";\"other\"\n\"2035617\";\"闹枝\";\"other\"\n\"2035617\";\"闹枝镇\";\"other\"\n\"2035635\";\"Nantai\";\"main\"\n\"2035635\";\"Nantai Zhen\";\"other\"\n\"2035635\";\"南台\";\"other\"\n\"2035635\";\"南台镇\";\"other\"\n\"2035643\";\"Nanping\";\"main\"\n\"2035643\";\"Dehua Zhen\";\"other\"\n\"2035643\";\"Nanping Zhen\";\"other\"\n\"2035643\";\"南坪\";\"other\"\n\"2035643\";\"南坪镇\";\"other\"\n\"2035643\";\"德化镇\";\"other\"\n\"2035644\";\"Nanpiao\";\"main\"\n\"2035644\";\"Pien-lien-tzu\";\"other\"\n\"2035644\";\"南票\";\"other\"\n\"2035669\";\"Nancha\";\"main\"\n\"2035669\";\"Nan-ch'a-t'un\";\"other\"\n\"2035669\";\"Nan-ch’a-t’un\";\"other\"\n\"2035707\";\"Mujiayingzi\";\"main\"\n\"2035715\";\"Mudanjiang\";\"main\"\n\"2035715\";\"Mu-tan-chiang\";\"other\"\n\"2035715\";\"Mu-tan-chiang-shih\";\"other\"\n\"2035715\";\"Mudan'czjan\";\"other\"\n\"2035715\";\"Mutankiang\";\"other\"\n\"2035715\";\"mu dan jiang\";\"other\"\n\"2035715\";\"mu dan jiang shi\";\"other\"\n\"2035715\";\"Муданьцзян\";\"other\"\n\"2035715\";\"牡丹江\";\"other\"\n\"2035715\";\"牡丹江市\";\"other\"\n\"2035746\";\"Mishan\";\"main\"\n\"2035746\";\"Dunan\";\"other\"\n\"2035746\";\"Hsin-mi-shan\";\"other\"\n\"2035746\";\"Mi-shan-chen\";\"other\"\n\"2035746\";\"Mishan'\";\"other\"\n\"2035746\";\"Tung-an\";\"other\"\n\"2035746\";\"Мишань\";\"other\"\n\"2035754\";\"Mingyue\";\"main\"\n\"2035754\";\"An-t'u\";\"other\"\n\"2035754\";\"An-t'u-hsien\";\"other\"\n\"2035754\";\"An-t’u\";\"other\"\n\"2035754\";\"An-t’u-hsien\";\"other\"\n\"2035754\";\"Antuzhan\";\"other\"\n\"2035754\";\"Ming-yueh-chen\";\"other\"\n\"2035754\";\"Ming-yueh-kou\";\"other\"\n\"2035754\";\"Ming-yueh-kou-chen\";\"other\"\n\"2035754\";\"Ming-yüeh-chen\";\"other\"\n\"2035754\";\"Ming-yüeh-kou\";\"other\"\n\"2035754\";\"Ming-yüeh-kou-chen\";\"other\"\n\"2035754\";\"Mingyuegou\";\"other\"\n\"2035754\";\"Weng-sheng-la-tzu\";\"other\"\n\"2035754\";\"明月\";\"other\"\n\"2035758\";\"Mingshui\";\"main\"\n\"2035758\";\"Hsing-lung-chen\";\"other\"\n\"2035758\";\"Ming-shui-chen\";\"other\"\n\"2035758\";\"Ming-shui-hsien\";\"other\"\n\"2035759\";\"Mingshui\";\"main\"\n\"2035759\";\"Mingshui Manzuxiang\";\"other\"\n\"2035759\";\"ming shui\";\"other\"\n\"2035759\";\"ming shui man zu xiang\";\"other\"\n\"2035759\";\"明水\";\"other\"\n\"2035759\";\"明水满族乡\";\"other\"\n\"2035801\";\"Meihekou\";\"main\"\n\"2035801\";\"Hai-lung\";\"other\"\n\"2035801\";\"Hai-lung-hsien\";\"other\"\n\"2035801\";\"Hailong\";\"other\"\n\"2035801\";\"Mei-ho-k'ou\";\"other\"\n\"2035801\";\"Mei-ho-k'ou-chen\";\"other\"\n\"2035801\";\"Mei-ho-kow\";\"other\"\n\"2035801\";\"Mei-ho-k’ou\";\"other\"\n\"2035801\";\"Mei-ho-k’ou-chen\";\"other\"\n\"2035805\";\"Mazhonghe\";\"main\"\n\"2035805\";\"Mazhonghe Zhen\";\"other\"\n\"2035805\";\"ma zhong he\";\"other\"\n\"2035805\";\"ma zhong he zhen\";\"other\"\n\"2035805\";\"马仲河\";\"other\"\n\"2035805\";\"马仲河镇\";\"other\"\n\"2035812\";\"Mayihe\";\"main\"\n\"2035812\";\"Ma-i-ho\";\"other\"\n\"2035812\";\"Mayihe Xiang\";\"other\"\n\"2035812\";\"蚂蚁河\";\"other\"\n\"2035812\";\"蚂蚁河乡\";\"other\"\n\"2035836\";\"Manzhouli\";\"main\"\n\"2035836\";\"Lu-pin-hsien\";\"other\"\n\"2035836\";\"Lupin\";\"other\"\n\"2035836\";\"MAN'CHZHURIJA\";\"other\"\n\"2035836\";\"Man-chou-li\";\"other\"\n\"2035836\";\"Man-chou-li-shih\";\"other\"\n\"2035836\";\"Man-chow-li\";\"other\"\n\"2035836\";\"Manchuli\";\"other\"\n\"2035836\";\"Manchuria\";\"other\"\n\"2035836\";\"Manchuriya\";\"other\"\n\"2035836\";\"Manchzhuriya\";\"other\"\n\"2035836\";\"Mandschurei\";\"other\"\n\"2035836\";\"man zhou li\";\"other\"\n\"2035836\";\"man zhou li shi\";\"other\"\n\"2035836\";\"man'chzhurija\";\"other\"\n\"2035836\";\"manjeouli\";\"other\"\n\"2035836\";\"manzhuur\";\"other\"\n\"2035836\";\"МАНЬЧЖУРИЯ\";\"other\"\n\"2035836\";\"Манжуур\";\"other\"\n\"2035836\";\"Маньчжурия\";\"other\"\n\"2035836\";\"満州里\";\"other\"\n\"2035836\";\"満州里市\";\"other\"\n\"2035836\";\"满洲里市\";\"other\"\n\"2035836\";\"만저우리\";\"other\"\n\"2035840\";\"Manjiang\";\"main\"\n\"2035840\";\"Man-chiang\";\"other\"\n\"2035840\";\"Man-chiang-ts'un\";\"other\"\n\"2035840\";\"Man-chiang-ts’un\";\"other\"\n\"2035840\";\"Manjiang Zhen\";\"other\"\n\"2035840\";\"漫江\";\"other\"\n\"2035840\";\"漫江镇\";\"other\"\n\"2035880\";\"Mafeng\";\"main\"\n\"2035880\";\"Mafeng Zhen\";\"other\"\n\"2035880\";\"ma feng\";\"other\"\n\"2035880\";\"ma feng zhen\";\"other\"\n\"2035880\";\"马风\";\"other\"\n\"2035880\";\"马风镇\";\"other\"\n\"2035884\";\"Tongshanjie\";\"main\"\n\"2035884\";\"Madang\";\"other\"\n\"2035884\";\"Madang Zhen\";\"other\"\n\"2035884\";\"铜山街\";\"other\"\n\"2035884\";\"马当\";\"other\"\n\"2035884\";\"马当镇\";\"other\"\n\"2035896\";\"Lüyang\";\"main\"\n\"2035896\";\"Luyang\";\"ascii\"\n\"2035896\";\"Lu-yang-i\";\"other\"\n\"2035896\";\"Luyang Zhen\";\"other\"\n\"2035896\";\"Luyangyi\";\"other\"\n\"2035896\";\"Lü-yang-i\";\"other\"\n\"2035896\";\"Lüyang Zhen\";\"other\"\n\"2035896\";\"Lüyangyi\";\"other\"\n\"2035896\";\"Yen-yang-tse\";\"other\"\n\"2035896\";\"lu yang\";\"other\"\n\"2035896\";\"lu yang zhen\";\"other\"\n\"2035896\";\"闾阳\";\"other\"\n\"2035896\";\"闾阳镇\";\"other\"\n\"2035899\";\"Lushuihe\";\"main\"\n\"2035899\";\"Hsi-nan-ch'a\";\"other\"\n\"2035899\";\"Hsi-nan-ch’a\";\"other\"\n\"2035899\";\"Lu-shui-ho\";\"other\"\n\"2035899\";\"Lushuihe Zhen\";\"other\"\n\"2035899\";\"露水河\";\"other\"\n\"2035899\";\"露水河镇\";\"other\"\n\"2035900\";\"Luozigou\";\"main\"\n\"2035900\";\"Ku-ch'eng\";\"other\"\n\"2035900\";\"Ku-ch’eng\";\"other\"\n\"2035900\";\"Lo-tzu-kou\";\"other\"\n\"2035900\";\"Luozigou Zhen\";\"other\"\n\"2035900\";\"Sui-fen\";\"other\"\n\"2035900\";\"Sui-fen-ta-tien-tzu\";\"other\"\n\"2035900\";\"罗子沟\";\"other\"\n\"2035900\";\"罗子沟镇\";\"other\"\n\"2035911\";\"Luoluopu\";\"main\"\n\"2035911\";\"Luoluopu Zhen\";\"other\"\n\"2035911\";\"luo luo bao\";\"other\"\n\"2035911\";\"luo luo bao zhen\";\"other\"\n\"2035911\";\"罗罗堡\";\"other\"\n\"2035911\";\"罗罗堡镇\";\"other\"\n\"2035966\";\"Longjing\";\"main\"\n\"2035966\";\"Liu-tao-kou\";\"other\"\n\"2035966\";\"Lung-ching\";\"other\"\n\"2035966\";\"Lung-ching-chen\";\"other\"\n\"2035966\";\"Lung-ching-chieh\";\"other\"\n\"2035966\";\"Lung-ching-shih\";\"other\"\n\"2035966\";\"Lung-ching-ts'un\";\"other\"\n\"2035966\";\"Lung-ching-ts’un\";\"other\"\n\"2035966\";\"Luntszintsun\";\"other\"\n\"2035966\";\"Ryuseison\";\"other\"\n\"2035966\";\"Ryūseison\";\"other\"\n\"2035966\";\"Yanji\";\"other\"\n\"2035966\";\"Yen-chi-hsien\";\"other\"\n\"2035966\";\"Yonjontsuon\";\"other\"\n\"2035966\";\"龙井\";\"other\"\n\"2035970\";\"Longjiang\";\"main\"\n\"2035970\";\"Chu-chia-k'an\";\"other\"\n\"2035970\";\"Chu-chia-k’an\";\"other\"\n\"2035970\";\"Chukiakan\";\"other\"\n\"2035970\";\"Lonczjan\";\"other\"\n\"2035970\";\"Lung-chiang\";\"other\"\n\"2035970\";\"Lung-chiang-chen\";\"other\"\n\"2035970\";\"T'u-erh-ch'ih-ha\";\"other\"\n\"2035970\";\"T’u-erh-ch’ih-ha\";\"other\"\n\"2035970\";\"Лонцзян\";\"other\"\n\"2035980\";\"Longfeng\";\"main\"\n\"2035980\";\"Lung-feng\";\"other\"\n\"2035980\";\"Lung-feng-shan\";\"other\"\n\"2035999\";\"Liushutun\";\"main\"\n\"2035999\";\"Liushutun Muguzu Manzuxiang\";\"other\"\n\"2035999\";\"liu shu tun\";\"other\"\n\"2035999\";\"liu shu tun meng gu zu man zu xiang\";\"other\"\n\"2035999\";\"柳树屯\";\"other\"\n\"2035999\";\"柳树屯蒙古族满族乡\";\"other\"\n\"2036033\";\"Liuhe\";\"main\"\n\"2036033\";\"Liu-ho\";\"other\"\n\"2036033\";\"Liu-ho-chen\";\"other\"\n\"2036033\";\"Liu-ho-hsien\";\"other\"\n\"2036033\";\"Liu-hu-ch'eng\";\"other\"\n\"2036033\";\"Liu-hu-ch’eng\";\"other\"\n\"2036033\";\"Liu-shu-ho-tzu\";\"other\"\n\"2036033\";\"Ljukheh\";\"other\"\n\"2036033\";\"Luiho\";\"other\"\n\"2036033\";\"Люхэ\";\"other\"\n\"2036033\";\"柳河\";\"other\"\n\"2036045\";\"Liudaogou\";\"main\"\n\"2036045\";\"Liu-tao-kou\";\"other\"\n\"2036045\";\"Liudaogou Zhen\";\"other\"\n\"2036045\";\"六道沟\";\"other\"\n\"2036045\";\"六道沟镇\";\"other\"\n\"2036046\";\"Liudaogou\";\"main\"\n\"2036046\";\"Guosong Zhen\";\"other\"\n\"2036046\";\"Liu-tao-kou\";\"other\"\n\"2036046\";\"Liu-tao-kou-t'un\";\"other\"\n\"2036046\";\"Liu-tao-kou-t’un\";\"other\"\n\"2036046\";\"Ta-lo-ch'uan He\";\"other\"\n\"2036046\";\"Ta-lo-ch’üan He\";\"other\"\n\"2036046\";\"六道沟\";\"other\"\n\"2036046\";\"果松镇\";\"other\"\n\"2036055\";\"Lishu\";\"main\"\n\"2036055\";\"Chiu-li-shu\";\"other\"\n\"2036055\";\"Feng-hua\";\"other\"\n\"2036055\";\"Fenghwa\";\"other\"\n\"2036055\";\"Li-shu-chen\";\"other\"\n\"2036055\";\"Li-shu-hsien\";\"other\"\n\"2036055\";\"Lishat'\";\"other\"\n\"2036055\";\"Mai-mai-chieh\";\"other\"\n\"2036055\";\"Лишать\";\"other\"\n\"2036055\";\"梨树\";\"other\"\n\"2036066\";\"Linkou\";\"main\"\n\"2036066\";\"Lin-k'ou-chen\";\"other\"\n\"2036066\";\"Lin-k'ou-hsien\";\"other\"\n\"2036066\";\"Lin-k’ou-chen\";\"other\"\n\"2036066\";\"Lin-k’ou-hsien\";\"other\"\n\"2036066\";\"Linkow\";\"other\"\n\"2036069\";\"Linjiang\";\"main\"\n\"2036069\";\"Lin'czjane\";\"other\"\n\"2036069\";\"Lin-chiang\";\"other\"\n\"2036069\";\"Lin-chiang-hsien\";\"other\"\n\"2036069\";\"Mao-erh-shan\";\"other\"\n\"2036069\";\"Mao-tzu-shan\";\"other\"\n\"2036069\";\"Maoerhshanchan\";\"other\"\n\"2036069\";\"Линьцзяне\";\"other\"\n\"2036069\";\"临江\";\"other\"\n\"2036075\";\"Lingyuan\";\"main\"\n\"2036075\";\"Chien-ch'ang\";\"other\"\n\"2036075\";\"Kienchang\";\"other\"\n\"2036075\";\"Ling-yuan-chen\";\"other\"\n\"2036075\";\"Ling-yuan-hsien\";\"other\"\n\"2036075\";\"Ling-yüan-chen\";\"other\"\n\"2036075\";\"Ling-yüan-hsien\";\"other\"\n\"2036075\";\"T'a-kou\";\"other\"\n\"2036081\";\"Lingdong\";\"main\"\n\"2036081\";\"Ling-tung\";\"other\"\n\"2036103\";\"Lidayao\";\"main\"\n\"2036103\";\"Li-ta-yao\";\"other\"\n\"2036103\";\"Lidayao Xiang\";\"other\"\n\"2036103\";\"李达窑\";\"other\"\n\"2036103\";\"李达窑乡\";\"other\"\n\"2036106\";\"Liaozhong\";\"main\"\n\"2036106\";\"A-shih-niu-lu\";\"other\"\n\"2036106\";\"A-ssu-niu\";\"other\"\n\"2036106\";\"A-ssu-niu-lu\";\"other\"\n\"2036106\";\"Chiu-liao-chung\";\"other\"\n\"2036106\";\"Liao-chung\";\"other\"\n\"2036106\";\"Liao-chung-chen\";\"other\"\n\"2036106\";\"Liao-chung-hsien\";\"other\"\n\"2036106\";\"Lyaochzhun\";\"other\"\n\"2036109\";\"Liaoyuan\";\"main\"\n\"2036109\";\"Dongliao\";\"other\"\n\"2036109\";\"Hsi-an\";\"other\"\n\"2036109\";\"Liao-yuan-shih\";\"other\"\n\"2036109\";\"Liao-yüan-shih\";\"other\"\n\"2036109\";\"Pei-feng\";\"other\"\n\"2036109\";\"Pei-feng-hsien\";\"other\"\n\"2036109\";\"Shian\";\"other\"\n\"2036109\";\"Sian\";\"other\"\n\"2036109\";\"T'a-k'a-ta\";\"other\"\n\"2036109\";\"Ta-ko-tan\";\"other\"\n\"2036109\";\"Tung-liao\";\"other\"\n\"2036109\";\"T’a-k’a-ta\";\"other\"\n\"2036113\";\"Liaoyang\";\"main\"\n\"2036113\";\"Liao-yang-hsien\";\"other\"\n\"2036113\";\"Liao-yang-shih\";\"other\"\n\"2036113\";\"Ljaojan\";\"other\"\n\"2036113\";\"Ляоян\";\"other\"\n\"2036114\";\"Liaotun\";\"main\"\n\"2036114\";\"Liaotun Zhen\";\"other\"\n\"2036114\";\"liao tun\";\"other\"\n\"2036114\";\"liao tun zhen\";\"other\"\n\"2036114\";\"廖屯\";\"other\"\n\"2036114\";\"廖屯镇\";\"other\"\n\"2036142\";\"Yongfeng\";\"main\"\n\"2036142\";\"Liangzhong\";\"other\"\n\"2036142\";\"Liangzhongqiao Zhen\";\"other\"\n\"2036142\";\"liang zhong qiao zhen\";\"other\"\n\"2036142\";\"yong feng\";\"other\"\n\"2036142\";\"亮中桥镇\";\"other\"\n\"2036142\";\"永丰\";\"other\"\n\"2036149\";\"Liangshui Chaoxianzu\";\"main\"\n\"2036149\";\"Liang-shui-ch'uan\";\"other\"\n\"2036149\";\"Liang-shui-ch’üan\";\"other\"\n\"2036149\";\"Liangshui\";\"other\"\n\"2036149\";\"Liangshui Chaoxianzu Xiang\";\"other\"\n\"2036149\";\"凉水\";\"other\"\n\"2036149\";\"凉水朝鲜族\";\"other\"\n\"2036149\";\"凉水朝鲜族乡\";\"other\"\n\"2036156\";\"Dongjiang\";\"main\"\n\"2036156\";\"Liang-chiang-k'ou\";\"other\"\n\"2036156\";\"Liang-chiang-k’ou\";\"other\"\n\"2036156\";\"Liangjiang Zhen\";\"other\"\n\"2036156\";\"Liangjiangkou\";\"other\"\n\"2036156\";\"Lyantszyankou\";\"other\"\n\"2036156\";\"东江\";\"other\"\n\"2036156\";\"两江镇\";\"other\"\n\"2036168\";\"Liangbing\";\"main\"\n\"2036168\";\"Liang-ping-t'ai\";\"other\"\n\"2036168\";\"Liang-ping-t’ai\";\"other\"\n\"2036168\";\"Liangbing Zhen\";\"other\"\n\"2036168\";\"Liangbingtai\";\"other\"\n\"2036168\";\"亮兵\";\"other\"\n\"2036168\";\"亮兵镇\";\"other\"\n\"2036196\";\"Quangou\";\"main\"\n\"2036196\";\"Laosiping\";\"other\"\n\"2036196\";\"Laosiping Zhen\";\"other\"\n\"2036196\";\"lao si ping\";\"other\"\n\"2036196\";\"lao si ping zhen\";\"other\"\n\"2036196\";\"quan gou\";\"other\"\n\"2036196\";\"泉沟\";\"other\"\n\"2036196\";\"老四平\";\"other\"\n\"2036196\";\"老四平镇\";\"other\"\n\"2036209\";\"Laoheishan\";\"main\"\n\"2036209\";\"Lao-hei-shan-pen-ts'un\";\"other\"\n\"2036209\";\"Lao-hei-shan-pen-ts’un\";\"other\"\n\"2036209\";\"Laoheishan Zhen\";\"other\"\n\"2036209\";\"老黑山\";\"other\"\n\"2036209\";\"老黑山镇\";\"other\"\n\"2036220\";\"Laocheng\";\"main\"\n\"2036220\";\"Ch'ang-t'u-ch'eng\";\"other\"\n\"2036220\";\"Ch'ang-t'u-chen\";\"other\"\n\"2036220\";\"Ch'ang-t'u-hsien\";\"other\"\n\"2036220\";\"Chang-tu-fa\";\"other\"\n\"2036220\";\"Changtu Laocheng\";\"other\"\n\"2036220\";\"Ch’ang-t’u-chen\";\"other\"\n\"2036220\";\"Ch’ang-t’u-ch’eng\";\"other\"\n\"2036220\";\"Ch’ang-t’u-hsien\";\"other\"\n\"2036220\";\"Laocheng Zhen\";\"other\"\n\"2036220\";\"Tschangtu\";\"other\"\n\"2036220\";\"lao cheng\";\"other\"\n\"2036220\";\"lao cheng zhen\";\"other\"\n\"2036220\";\"老城\";\"other\"\n\"2036220\";\"老城镇\";\"other\"\n\"2036226\";\"Lanxi\";\"main\"\n\"2036226\";\"Lan-hsi\";\"other\"\n\"2036226\";\"Lan-hsi-chen\";\"other\"\n\"2036226\";\"Lan-hsi-hsien\";\"other\"\n\"2036226\";\"Lansi\";\"other\"\n\"2036226\";\"Shuang-miao-tzu\";\"other\"\n\"2036237\";\"Langxiang\";\"main\"\n\"2036237\";\"Lang-hsiang\";\"other\"\n\"2036241\";\"Langtou\";\"main\"\n\"2036241\";\"Lang-t'ou-chen\";\"other\"\n\"2036241\";\"Lang-t’ou-chen\";\"other\"\n\"2036283\";\"Kuandian\";\"main\"\n\"2036283\";\"K'uan-tien\";\"other\"\n\"2036283\";\"K'uan-tien-chen\";\"other\"\n\"2036283\";\"K'uan-tien-hsien\";\"other\"\n\"2036283\";\"Kwan-tien\";\"other\"\n\"2036283\";\"K’uan-tien\";\"other\"\n\"2036283\";\"K’uan-tien-chen\";\"other\"\n\"2036283\";\"K’uan-tien-hsien\";\"other\"\n\"2036286\";\"Kuanbang\";\"main\"\n\"2036286\";\"Kuanbang Zhen\";\"other\"\n\"2036286\";\"kuan bang\";\"other\"\n\"2036286\";\"kuan bang zhen\";\"other\"\n\"2036286\";\"宽帮\";\"other\"\n\"2036286\";\"宽帮镇\";\"other\"\n\"2036287\";\"Kuaidamao\";\"main\"\n\"2036287\";\"K'uai-ta-mao\";\"other\"\n\"2036287\";\"K'uai-ta-mao-tzu\";\"other\"\n\"2036287\";\"K'uai-tang-mao-tzu\";\"other\"\n\"2036287\";\"K’uai-ta-mao\";\"other\"\n\"2036287\";\"K’uai-ta-mao-tzu\";\"other\"\n\"2036287\";\"K’uai-tang-mao-tzu\";\"other\"\n\"2036287\";\"T'ung-hua-hsien\";\"other\"\n\"2036287\";\"Tonghua\";\"other\"\n\"2036287\";\"T’ung-hua-hsien\";\"other\"\n\"2036287\";\"kuai da mao\";\"other\"\n\"2036287\";\"快大茂\";\"other\"\n\"2036289\";\"Kouquan\";\"main\"\n\"2036289\";\"K'ou-ch'uan\";\"other\"\n\"2036289\";\"K'ou-ch'uan-chen\";\"other\"\n\"2036289\";\"Kouquan Zhen\";\"other\"\n\"2036289\";\"K’ou-ch’üan\";\"other\"\n\"2036289\";\"K’ou-ch’üan-chen\";\"other\"\n\"2036289\";\"口泉\";\"other\"\n\"2036289\";\"口泉镇\";\"other\"\n\"2036290\";\"Kouqian\";\"main\"\n\"2036290\";\"K'ou-ch'ien\";\"other\"\n\"2036290\";\"K’ou-ch’ien\";\"other\"\n\"2036290\";\"Yongji\";\"other\"\n\"2036290\";\"Yung-chi\";\"other\"\n\"2036290\";\"kou qian\";\"other\"\n\"2036290\";\"口前\";\"other\"\n\"2036325\";\"Kangping\";\"main\"\n\"2036325\";\"K'ang-p'ing-chen\";\"other\"\n\"2036325\";\"K'ang-p'ing-hsien\";\"other\"\n\"2036325\";\"Kangping Xian\";\"other\"\n\"2036325\";\"K’ang-p’ing-chen\";\"other\"\n\"2036325\";\"K’ang-p’ing-hsien\";\"other\"\n\"2036325\";\"kang ping\";\"other\"\n\"2036325\";\"kang ping xian\";\"other\"\n\"2036325\";\"康平\";\"other\"\n\"2036325\";\"康平县\";\"other\"\n\"2036337\";\"Kaiyuan\";\"main\"\n\"2036337\";\"Jih-pen-tsu-chieh-ti\";\"other\"\n\"2036337\";\"K'ai-yuan-chen\";\"other\"\n\"2036337\";\"Kajjuan'\";\"other\"\n\"2036337\";\"K’ai-yüan-chen\";\"other\"\n\"2036337\";\"Sun-chia-t'ai\";\"other\"\n\"2036337\";\"Sun-chia-t’ai\";\"other\"\n\"2036337\";\"Кайюань\";\"other\"\n\"2036338\";\"Kaitong\";\"main\"\n\"2036338\";\"Ch'i-ching-tsa\";\"other\"\n\"2036338\";\"Ch'i-ching-tzu\";\"other\"\n\"2036338\";\"Ch’i-ching-tsa\";\"other\"\n\"2036338\";\"Ch’i-ching-tzu\";\"other\"\n\"2036338\";\"K'ai-t'ung\";\"other\"\n\"2036338\";\"K'ai-t'ung-chen\";\"other\"\n\"2036338\";\"K'ai-t'ung-hsien\";\"other\"\n\"2036338\";\"Kaibung\";\"other\"\n\"2036338\";\"Kaitun\";\"other\"\n\"2036338\";\"K’ai-t’ung\";\"other\"\n\"2036338\";\"K’ai-t’ung-chen\";\"other\"\n\"2036338\";\"K’ai-t’ung-hsien\";\"other\"\n\"2036338\";\"T'ung-yu\";\"other\"\n\"2036338\";\"Tongyu\";\"other\"\n\"2036338\";\"T’ung-yü\";\"other\"\n\"2036338\";\"开通\";\"other\"\n\"2036339\";\"Kaishantun\";\"main\"\n\"2036339\";\"Kaishantun Zhen\";\"other\"\n\"2036339\";\"开山屯\";\"other\"\n\"2036339\";\"开山屯镇\";\"other\"\n\"2036368\";\"Jule\";\"main\"\n\"2036368\";\"Chu-le-p'u\";\"other\"\n\"2036368\";\"Chu-lo-p'u\";\"other\"\n\"2036368\";\"Chu-lo-pao\";\"other\"\n\"2036368\";\"Chu-lo-p’u\";\"other\"\n\"2036368\";\"Chü-le-p’u\";\"other\"\n\"2036368\";\"Chü-lo-pao\";\"other\"\n\"2036368\";\"Jule Xiang\";\"other\"\n\"2036368\";\"Julebu\";\"other\"\n\"2036389\";\"Jixi\";\"main\"\n\"2036389\";\"Chi-hsi\";\"other\"\n\"2036389\";\"Chi-hsi-shih\";\"other\"\n\"2036389\";\"Chi-ning\";\"other\"\n\"2036389\";\"Chi-ning-chieh\";\"other\"\n\"2036389\";\"Czisi\";\"other\"\n\"2036389\";\"Kisi\";\"other\"\n\"2036389\";\"ji xi shi\";\"other\"\n\"2036389\";\"Цзиси\";\"other\"\n\"2036389\";\"鶏西市\";\"other\"\n\"2036389\";\"鸡西市\";\"other\"\n\"2036401\";\"Jiutai\";\"main\"\n\"2036401\";\"Chiu-t'ai\";\"other\"\n\"2036401\";\"Chiu-t'ai-chen\";\"other\"\n\"2036401\";\"Chiu-t'ai-hsien\";\"other\"\n\"2036401\";\"Chiu-t’ai\";\"other\"\n\"2036401\";\"Chiu-t’ai-chen\";\"other\"\n\"2036401\";\"Chiu-t’ai-hsien\";\"other\"\n\"2036401\";\"Hsia-chiu-t'ai\";\"other\"\n\"2036401\";\"Hsia-chiu-t’ai\";\"other\"\n\"2036401\";\"Shachutai\";\"other\"\n\"2036401\";\"Shāchūtai\";\"other\"\n\"2036401\";\"Siakiutai\";\"other\"\n\"2036401\";\"T'eu-t'ai\";\"other\"\n\"2036401\";\"Teutay\";\"other\"\n\"2036401\";\"Teymau\";\"other\"\n\"2036401\";\"Teymaū\";\"other\"\n\"2036401\";\"T’eu-t’ai\";\"other\"\n\"2036403\";\"Jiupu\";\"main\"\n\"2036418\";\"Jishu\";\"main\"\n\"2036418\";\"Chi-shu\";\"other\"\n\"2036427\";\"Jinzhou\";\"main\"\n\"2036427\";\"Chien-hsien\";\"other\"\n\"2036427\";\"Chin\";\"other\"\n\"2036427\";\"Chin-chou\";\"other\"\n\"2036427\";\"Chin-chou-shih\";\"other\"\n\"2036427\";\"Chin-hsien\";\"other\"\n\"2036427\";\"Chinchow\";\"other\"\n\"2036427\";\"Czin'chzhou\";\"other\"\n\"2036427\";\"Kinchou\";\"other\"\n\"2036427\";\"Kintschou\";\"other\"\n\"2036427\";\"Цзиньчжоу\";\"other\"\n\"2036434\";\"Lianshan\";\"main\"\n\"2036434\";\"Chin-hsi\";\"other\"\n\"2036434\";\"Chin-hsi-chen\";\"other\"\n\"2036434\";\"Chinshi\";\"other\"\n\"2036434\";\"Chinsi\";\"other\"\n\"2036434\";\"Jinxi\";\"other\"\n\"2036434\";\"Leinshan\";\"other\"\n\"2036434\";\"Lianshan Qu\";\"other\"\n\"2036434\";\"Lien-shan\";\"other\"\n\"2036434\";\"连山\";\"other\"\n\"2036434\";\"连山区\";\"other\"\n\"2036451\";\"Jinjia\";\"main\"\n\"2036451\";\"Chin-chia-chen\";\"other\"\n\"2036451\";\"Jinjia Zhen\";\"other\"\n\"2036451\";\"Jinjiazhen\";\"other\"\n\"2036451\";\"jin jia\";\"other\"\n\"2036451\";\"金家\";\"other\"\n\"2036458\";\"Jining\";\"main\"\n\"2036458\";\"Chi-ning\";\"other\"\n\"2036458\";\"Chi-ning-hsien\";\"other\"\n\"2036458\";\"Chi-ning-shih\";\"other\"\n\"2036458\";\"Czinin\";\"other\"\n\"2036458\";\"P'ing-ti-ch'uan\";\"other\"\n\"2036458\";\"P'ing-ti-ch'uan-chen\";\"other\"\n\"2036458\";\"P’ing-ti-ch’üan\";\"other\"\n\"2036458\";\"P’ing-ti-ch’üan-chen\";\"other\"\n\"2036458\";\"Tsining\";\"other\"\n\"2036458\";\"Tszinin\";\"other\"\n\"2036458\";\"Цзинин\";\"other\"\n\"2036463\";\"Jingyu\";\"main\"\n\"2036463\";\"Ching-yu\";\"other\"\n\"2036463\";\"Ching-yu-chen\";\"other\"\n\"2036463\";\"Ching-yü\";\"other\"\n\"2036463\";\"Ching-yü-chen\";\"other\"\n\"2036463\";\"Meng-chiang\";\"other\"\n\"2036463\";\"Meng-chiang-hsien\";\"other\"\n\"2036463\";\"Mengkiang\";\"other\"\n\"2036463\";\"Ta-tien-tzu\";\"other\"\n\"2036463\";\"jing yu\";\"other\"\n\"2036463\";\"靖宇\";\"other\"\n\"2036502\";\"Jilin\";\"main\"\n\"2036502\";\"Chi-lin\";\"other\"\n\"2036502\";\"Chi-lin-shih\";\"other\"\n\"2036502\";\"Chi-ling\";\"other\"\n\"2036502\";\"Czilin'\";\"other\"\n\"2036502\";\"Dzilinas\";\"other\"\n\"2036502\";\"Girin\";\"other\"\n\"2036502\";\"Jilin City\";\"other\"\n\"2036502\";\"Kilin\";\"other\"\n\"2036502\";\"Kirin\";\"other\"\n\"2036502\";\"Kota Jilin\";\"other\"\n\"2036502\";\"Yung-chi\";\"other\"\n\"2036502\";\"Yung-chi-hsien\";\"other\"\n\"2036502\";\"Yung-chi-shih\";\"other\"\n\"2036502\";\"Yungki\";\"other\"\n\"2036502\";\"ji lin shi\";\"other\"\n\"2036502\";\"jilin\";\"other\"\n\"2036502\";\"Цзилинь\";\"other\"\n\"2036502\";\"جىلىن شەھىرى\";\"other\"\n\"2036502\";\"吉林市\";\"other\"\n\"2036502\";\"지린\";\"other\"\n\"2036508\";\"Jiguan\";\"main\"\n\"2036508\";\"Chi-kuan\";\"other\"\n\"2036508\";\"Chi-kuan-lei-tzu\";\"other\"\n\"2036508\";\"Jiguan Xiang\";\"other\"\n\"2036508\";\"鸡冠\";\"other\"\n\"2036508\";\"鸡冠乡\";\"other\"\n\"2036510\";\"Jiewen\";\"main\"\n\"2036510\";\"Jiewen Zhen\";\"other\"\n\"2036510\";\"Jiewenzhai\";\"other\"\n\"2036510\";\"jie wen\";\"other\"\n\"2036510\";\"jie wen zhen\";\"other\"\n\"2036510\";\"接文\";\"other\"\n\"2036510\";\"接文镇\";\"other\"\n\"2036519\";\"Jidong\";\"main\"\n\"2036519\";\"Chi-tung\";\"other\"\n\"2036519\";\"Chi-tung-chen\";\"other\"\n\"2036536\";\"Jiaohe\";\"main\"\n\"2036536\";\"Chiacho\";\"other\"\n\"2036536\";\"Chiao-ho\";\"other\"\n\"2036536\";\"Chiao-ho-chen\";\"other\"\n\"2036536\";\"Chiao-ho-hsien\";\"other\"\n\"2036536\";\"Czjaokheh\";\"other\"\n\"2036536\";\"Kiaoho\";\"other\"\n\"2036536\";\"O-mu-hsien\";\"other\"\n\"2036536\";\"Omu\";\"other\"\n\"2036536\";\"Ta-chiao-ho\";\"other\"\n\"2036536\";\"Tachiaho\";\"other\"\n\"2036536\";\"Takiaoho\";\"other\"\n\"2036536\";\"Цзяохэ\";\"other\"\n\"2036579\";\"Ji’an\";\"main\"\n\"2036579\";\"Ji'an\";\"ascii\"\n\"2036579\";\"Chi-an\";\"other\"\n\"2036579\";\"Chi-an-chen\";\"other\"\n\"2036579\";\"Chi-an-hsien\";\"other\"\n\"2036579\";\"Ji'an Shi\";\"other\"\n\"2036579\";\"Ji’an Shi\";\"other\"\n\"2036579\";\"T'ung-kou\";\"other\"\n\"2036579\";\"T'ung-kou-ch'eng\";\"other\"\n\"2036579\";\"Tsian\";\"other\"\n\"2036579\";\"T’ung-kou\";\"other\"\n\"2036579\";\"T’ung-kou-ch’eng\";\"other\"\n\"2036579\";\"集安\";\"other\"\n\"2036579\";\"集安市\";\"other\"\n\"2036581\";\"Jiamusi\";\"main\"\n\"2036581\";\"Ch'a-mu-ssu\";\"other\"\n\"2036581\";\"Chia-mu-ssu\";\"other\"\n\"2036581\";\"Chia-mu-ssu-shih\";\"other\"\n\"2036581\";\"Chieh-mu-ssu\";\"other\"\n\"2036581\";\"Ch’a-mu-ssu\";\"other\"\n\"2036581\";\"Czjamusy\";\"other\"\n\"2036581\";\"Hua-ch'uan-hsien\";\"other\"\n\"2036581\";\"Hua-chuan\";\"other\"\n\"2036581\";\"Hua-ch’uan-hsien\";\"other\"\n\"2036581\";\"Hwachwan\";\"other\"\n\"2036581\";\"Kiamusas\";\"other\"\n\"2036581\";\"Kiamusze\";\"other\"\n\"2036581\";\"jamusseu\";\"other\"\n\"2036581\";\"jamusu shi\";\"other\"\n\"2036581\";\"jia mu si shi\";\"other\"\n\"2036581\";\"Цзямусы\";\"other\"\n\"2036581\";\"ジャムス市\";\"other\"\n\"2036581\";\"佳木斯市\";\"other\"\n\"2036581\";\"자무쓰\";\"other\"\n\"2036583\";\"Jiajiaying\";\"main\"\n\"2036583\";\"Jiajiaying Xiang\";\"other\"\n\"2036583\";\"贾家营\";\"other\"\n\"2036583\";\"贾家营乡\";\"other\"\n\"2036595\";\"Jalai Nur\";\"main\"\n\"2036595\";\"CHZHALAJNOR\";\"other\"\n\"2036595\";\"Cha-lai-no-erh\";\"other\"\n\"2036595\";\"Chaiainor\";\"other\"\n\"2036595\";\"Chalainor\";\"other\"\n\"2036595\";\"Chzhalaynor\";\"other\"\n\"2036595\";\"Dalainur\";\"other\"\n\"2036595\";\"Dalaynur\";\"other\"\n\"2036595\";\"ЧЖАЛАЙНОР\";\"other\"\n\"2036597\";\"Jagdaqi\";\"main\"\n\"2036597\";\"Chia-ko-ta-ch'i\";\"other\"\n\"2036597\";\"Chia-ko-ta-ch’i\";\"other\"\n\"2036597\";\"K'u-erh-ch'i\";\"other\"\n\"2036597\";\"K'u-lu-ch'i\";\"other\"\n\"2036597\";\"Kurchi\";\"other\"\n\"2036597\";\"K’u-erh-ch’i\";\"other\"\n\"2036597\";\"K’u-lu-ch’i\";\"other\"\n\"2036619\";\"Hushitai\";\"main\"\n\"2036619\";\"Hu-shih-t'ai\";\"other\"\n\"2036619\";\"Hu-shih-t’ai\";\"other\"\n\"2036653\";\"Hunchun\";\"main\"\n\"2036653\";\"Hui-ch'un\";\"other\"\n\"2036653\";\"Hui-ch’un\";\"other\"\n\"2036653\";\"Hun-ch'un-chen\";\"other\"\n\"2036653\";\"Hun-ch'un-hsien\";\"other\"\n\"2036653\";\"Hun-ch'ung\";\"other\"\n\"2036653\";\"Hun-ch’un-chen\";\"other\"\n\"2036653\";\"Hun-ch’un-hsien\";\"other\"\n\"2036653\";\"Hun-ch’ung\";\"other\"\n\"2036653\";\"Hungtschung\";\"other\"\n\"2036653\";\"Khun'chun'\";\"other\"\n\"2036653\";\"Хуньчунь\";\"other\"\n\"2036662\";\"Huludao\";\"main\"\n\"2036662\";\"Hu-lu-tao\";\"other\"\n\"2036662\";\"Hu-lu-tao-hsien\";\"other\"\n\"2036662\";\"Koroto\";\"other\"\n\"2036662\";\"hu lu dao\";\"other\"\n\"2036662\";\"葫芦岛\";\"other\"\n\"2036670\";\"Hulan Ergi\";\"main\"\n\"2036670\";\"Fu-erh-la-chi\";\"other\"\n\"2036670\";\"Fu-la-erh-chi\";\"other\"\n\"2036670\";\"Fularki\";\"other\"\n\"2036670\";\"Lung-chiang\";\"other\"\n\"2036671\";\"Hulan\";\"main\"\n\"2036671\";\"Chu-lan-tschong\";\"other\"\n\"2036671\";\"Chu-lan-tschöng\";\"other\"\n\"2036671\";\"Hu-lan-chen\";\"other\"\n\"2036671\";\"Hu-lan-hsien\";\"other\"\n\"2036671\";\"Hu-lang-ch'eng\";\"other\"\n\"2036671\";\"Hu-lang-ch’eng\";\"other\"\n\"2036671\";\"Khulan\";\"other\"\n\"2036671\";\"Хулан\";\"other\"\n\"2036685\";\"Huinan\";\"main\"\n\"2036685\";\"Chiu-hui-nan\";\"other\"\n\"2036685\";\"Hui-nan-chen\";\"other\"\n\"2036685\";\"Hui-nan-hsien\";\"other\"\n\"2036685\";\"Huinanzhen\";\"other\"\n\"2036685\";\"Hwei-nan\";\"other\"\n\"2036685\";\"Hweinan-ting\";\"other\"\n\"2036702\";\"Xidachuan\";\"main\"\n\"2036702\";\"Huashu Zhen\";\"other\"\n\"2036702\";\"桦树镇\";\"other\"\n\"2036702\";\"西大川\";\"other\"\n\"2036704\";\"Huashan\";\"main\"\n\"2036704\";\"Huashan Zhen\";\"other\"\n\"2036704\";\"花山\";\"other\"\n\"2036704\";\"花山镇\";\"other\"\n\"2036713\";\"Huanren\";\"main\"\n\"2036713\";\"Chiu-huai-jen\";\"other\"\n\"2036713\";\"Huai-jen\";\"other\"\n\"2036713\";\"Huan-jen\";\"other\"\n\"2036713\";\"Huan-jen-chen\";\"other\"\n\"2036713\";\"Huan-jen-hsien\";\"other\"\n\"2036713\";\"Hwanjen\";\"other\"\n\"2036713\";\"Yuan Jen\";\"other\"\n\"2036734\";\"Huangnihe\";\"main\"\n\"2036734\";\"Huang-ni-ho\";\"other\"\n\"2036734\";\"Huang-ni-ho-tzu\";\"other\"\n\"2036747\";\"Huangdi\";\"main\"\n\"2036747\";\"Huangdi Zhen\";\"other\"\n\"2036747\";\"huang de\";\"other\"\n\"2036747\";\"huang de zhen\";\"other\"\n\"2036747\";\"荒地\";\"other\"\n\"2036747\";\"荒地镇\";\"other\"\n\"2036750\";\"Huangbai\";\"main\"\n\"2036750\";\"Huang-pai\";\"other\"\n\"2036750\";\"Qingshi Zhen\";\"other\"\n\"2036750\";\"青石镇\";\"other\"\n\"2036750\";\"黄柏\";\"other\"\n\"2036753\";\"Huanan\";\"main\"\n\"2036753\";\"Ch'ien-chen-chieh\";\"other\"\n\"2036753\";\"Ch'ien-chen-hsiang\";\"other\"\n\"2036753\";\"Ch’ien-chen-chieh\";\"other\"\n\"2036753\";\"Ch’ien-chen-hsiang\";\"other\"\n\"2036753\";\"Hu-nan-ying\";\"other\"\n\"2036753\";\"Hu-nan-ying-chen\";\"other\"\n\"2036753\";\"Hua-ch'uan\";\"other\"\n\"2036753\";\"Hua-ch'uan-chen\";\"other\"\n\"2036753\";\"Hua-ch’uan\";\"other\"\n\"2036753\";\"Hua-ch’uan-chen\";\"other\"\n\"2036753\";\"Hua-nan-chen\";\"other\"\n\"2036774\";\"Huadian\";\"main\"\n\"2036774\";\"Hua-tien\";\"other\"\n\"2036774\";\"Hua-tien-tzu\";\"other\"\n\"2036774\";\"Huadian Zhen\";\"other\"\n\"2036774\";\"Huadianzi\";\"other\"\n\"2036774\";\"花甸\";\"other\"\n\"2036774\";\"花甸镇\";\"other\"\n\"2036776\";\"Huadian\";\"main\"\n\"2036776\";\"Hua-tien\";\"other\"\n\"2036776\";\"Hua-tien-chen\";\"other\"\n\"2036776\";\"Hua-tien-hsien\";\"other\"\n\"2036776\";\"Huen-tien\";\"other\"\n\"2036776\";\"Hwatien\";\"other\"\n\"2036776\";\"K'uang-kai\";\"other\"\n\"2036776\";\"Koangai\";\"other\"\n\"2036776\";\"Kuan-chieh\";\"other\"\n\"2036776\";\"K’uang-kai\";\"other\"\n\"2036847\";\"Hongqiyingzi\";\"main\"\n\"2036847\";\"Hongqiyingzi Xiang\";\"other\"\n\"2036847\";\"Hung-ch'i\";\"other\"\n\"2036847\";\"Hung-ch’i\";\"other\"\n\"2036847\";\"hong qi ying zi\";\"other\"\n\"2036847\";\"hong qi ying zi xiang\";\"other\"\n\"2036847\";\"红旗营子\";\"other\"\n\"2036847\";\"红旗营子乡\";\"other\"\n\"2036876\";\"Honggang\";\"main\"\n\"2036892\";\"Hohhot\";\"main\"\n\"2036892\";\"Hohhot Shi\";\"other\"\n\"2036892\";\"Hou-ho\";\"other\"\n\"2036892\";\"Hu-ho-hao-t'e\";\"other\"\n\"2036892\";\"Hu-ho-hao-t'e-shih\";\"other\"\n\"2036892\";\"Hu-ho-hao-t’e\";\"other\"\n\"2036892\";\"Hu-ho-hao-t’e-shih\";\"other\"\n\"2036892\";\"Huhe Hoter\";\"other\"\n\"2036892\";\"Huhehaote\";\"other\"\n\"2036892\";\"Huhehot\";\"other\"\n\"2036892\";\"Khukh-Khoto\";\"other\"\n\"2036892\";\"Kuei-hua\";\"other\"\n\"2036892\";\"Kuei-sui\";\"other\"\n\"2036892\";\"Kuei-sui-hsien\";\"other\"\n\"2036892\";\"Kuei-sui-shih\";\"other\"\n\"2036892\";\"Kuku-khoto\";\"other\"\n\"2036892\";\"Kwei-hwa-cheng\";\"other\"\n\"2036892\";\"Kwei-hwa-ting\";\"other\"\n\"2036892\";\"Kweihwa\";\"other\"\n\"2036892\";\"Kweihwa-Suiyuan\";\"other\"\n\"2036892\";\"Kweisui\";\"other\"\n\"2036892\";\"Kweisui-hsien\";\"other\"\n\"2036892\";\"Suiyuan\";\"other\"\n\"2036892\";\"Suiyüan\";\"other\"\n\"2036892\";\"fufuhoto shi\";\"other\"\n\"2036892\";\"hu he hao te\";\"other\"\n\"2036892\";\"hu he hao te shi\";\"other\"\n\"2036892\";\"huheohaoteo\";\"other\"\n\"2036892\";\"Хух-Хото\";\"other\"\n\"2036892\";\"フフホト市\";\"other\"\n\"2036892\";\"呼和浩特\";\"other\"\n\"2036892\";\"呼和浩特市\";\"other\"\n\"2036892\";\"후허하오터\";\"other\"\n\"2036920\";\"Hengshan\";\"main\"\n\"2036933\";\"Helong\";\"main\"\n\"2036933\";\"Helong Shi\";\"other\"\n\"2036933\";\"Helong Zhen\";\"other\"\n\"2036933\";\"Ho-lung\";\"other\"\n\"2036933\";\"Ho-lung-chen\";\"other\"\n\"2036933\";\"Khehlune\";\"other\"\n\"2036933\";\"Longcheng Zhen\";\"other\"\n\"2036933\";\"San-tao-kou\";\"other\"\n\"2036933\";\"Хэлуне\";\"other\"\n\"2036933\";\"和龙\";\"other\"\n\"2036933\";\"和龙市\";\"other\"\n\"2036933\";\"和龙镇\";\"other\"\n\"2036933\";\"龙城镇\";\"other\"\n\"2036959\";\"Heishan\";\"main\"\n\"2036959\";\"Chen-an\";\"other\"\n\"2036959\";\"He Shan\";\"other\"\n\"2036959\";\"Hei-shan-chen\";\"other\"\n\"2036959\";\"Hei-shan-hsien\";\"other\"\n\"2036973\";\"Heihe\";\"main\"\n\"2036973\";\"Ai-hun\";\"other\"\n\"2036973\";\"Ai-hun-hsien\";\"other\"\n\"2036973\";\"Aigun\";\"other\"\n\"2036973\";\"Aihui\";\"other\"\n\"2036973\";\"Hei-ho\";\"other\"\n\"2036973\";\"Hei-ho-chen\";\"other\"\n\"2036973\";\"Hei-ho-t'un\";\"other\"\n\"2036973\";\"Hei-ho-t’un\";\"other\"\n\"2036973\";\"Khehjkheh\";\"other\"\n\"2036973\";\"Sa-ha-liang\";\"other\"\n\"2036973\";\"Sachaljan\";\"other\"\n\"2036973\";\"Sakhalyan\";\"other\"\n\"2036973\";\"Ta-hei-ho\";\"other\"\n\"2036973\";\"hei he shi\";\"other\"\n\"2036973\";\"heiheo\";\"other\"\n\"2036973\";\"Хэйхэ\";\"other\"\n\"2036973\";\"黑河市\";\"other\"\n\"2036973\";\"黒河市\";\"other\"\n\"2036973\";\"헤이허\";\"other\"\n\"2036986\";\"Hegang\";\"main\"\n\"2036986\";\"Hao-kang\";\"other\"\n\"2036986\";\"Hao-kang-shih\";\"other\"\n\"2036986\";\"Hingshanchen\";\"other\"\n\"2036986\";\"Hinshanchen\";\"other\"\n\"2036986\";\"Ho-kang\";\"other\"\n\"2036986\";\"Hsian-yuan-t'un\";\"other\"\n\"2036986\";\"Hsian-yüan-t’un\";\"other\"\n\"2036986\";\"Hsiangyuantun\";\"other\"\n\"2036986\";\"Hsing-shan\";\"other\"\n\"2036986\";\"Hsing-shan-chen\";\"other\"\n\"2036986\";\"Hsing-shan-chieh\";\"other\"\n\"2036986\";\"Hsinganchen\";\"other\"\n\"2036986\";\"Khegan\";\"other\"\n\"2036986\";\"Khehgan\";\"other\"\n\"2036986\";\"Sinshan Chzhen\";\"other\"\n\"2036986\";\"Хэган\";\"other\"\n\"2037013\";\"Harbin\";\"main\"\n\"2037013\";\"Cap Nhi Tan\";\"other\"\n\"2037013\";\"Charbin\";\"other\"\n\"2037013\";\"Cáp Nhĩ Tân\";\"other\"\n\"2037013\";\"Ha'erbin\";\"other\"\n\"2037013\";\"Ha-erh-pin\";\"other\"\n\"2037013\";\"Ha-erh-pin-shih\";\"other\"\n\"2037013\";\"Harbin Shi\";\"other\"\n\"2037013\";\"Harbinas\";\"other\"\n\"2037013\";\"Ha’erbin\";\"other\"\n\"2037013\";\"Kharbin\";\"other\"\n\"2037013\";\"Lungsod ng Harbin\";\"other\"\n\"2037013\";\"Pin-chiang\";\"other\"\n\"2037013\";\"Pin-chiang-hsien\";\"other\"\n\"2037013\";\"Pinkiang\";\"other\"\n\"2037013\";\"ha er bin\";\"other\"\n\"2037013\";\"ha er bin shi\";\"other\"\n\"2037013\";\"ha-eolbin\";\"other\"\n\"2037013\";\"harubin\";\"other\"\n\"2037013\";\"hrbyn\";\"other\"\n\"2037013\";\"Ĥarbin\";\"other\"\n\"2037013\";\"Харбин\";\"other\"\n\"2037013\";\"Харбін\";\"other\"\n\"2037013\";\"חרבין\";\"other\"\n\"2037013\";\"خاربىن شەھىرى\";\"other\"\n\"2037013\";\"ハルビン\";\"other\"\n\"2037013\";\"哈尔滨\";\"other\"\n\"2037013\";\"哈尔滨市\";\"other\"\n\"2037013\";\"하얼빈\";\"other\"\n\"2037020\";\"Haoguantun\";\"main\"\n\"2037020\";\"Haoguantun Zhen\";\"other\"\n\"2037020\";\"hao guan tun\";\"other\"\n\"2037020\";\"hao guan tun zhen\";\"other\"\n\"2037020\";\"郝官屯\";\"other\"\n\"2037020\";\"郝官屯镇\";\"other\"\n\"2037042\";\"Hamatang\";\"main\"\n\"2037042\";\"Hamatang Xiang\";\"other\"\n\"2037042\";\"蛤蟆塘\";\"other\"\n\"2037042\";\"蛤蟆塘乡\";\"other\"\n\"2037069\";\"Hailun\";\"main\"\n\"2037069\";\"Hai-lun-chen\";\"other\"\n\"2037069\";\"Hai-lun-hsien\";\"other\"\n\"2037069\";\"T'ung-ken\";\"other\"\n\"2037069\";\"T'ung-ken-ho\";\"other\"\n\"2037069\";\"Tung-kei\";\"other\"\n\"2037069\";\"T’ung-ken\";\"other\"\n\"2037069\";\"T’ung-ken-ho\";\"other\"\n\"2037075\";\"Hailin\";\"main\"\n\"2037075\";\"Hai-lin-chen\";\"other\"\n\"2037075\";\"Hai-lin-ts'un\";\"other\"\n\"2037075\";\"Hai-lin-ts’un\";\"other\"\n\"2037075\";\"Khajlin\";\"other\"\n\"2037075\";\"Хайлин\";\"other\"\n\"2037078\";\"Hailar\";\"main\"\n\"2037078\";\"Hai-la-erh\";\"other\"\n\"2037078\";\"Hai-la-erh-shih\";\"other\"\n\"2037078\";\"Hailar Shi\";\"other\"\n\"2037078\";\"Hairaru\";\"other\"\n\"2037078\";\"Hairāru\";\"other\"\n\"2037078\";\"Hu-lun\";\"other\"\n\"2037078\";\"KHAJLAR\";\"other\"\n\"2037078\";\"Khailar\";\"other\"\n\"2037078\";\"Khajlar\";\"other\"\n\"2037078\";\"hai la er qu\";\"other\"\n\"2037078\";\"hairaru qu\";\"other\"\n\"2037078\";\"ХАЙЛАР\";\"other\"\n\"2037078\";\"Хайлар\";\"other\"\n\"2037078\";\"ハイラル区\";\"other\"\n\"2037078\";\"海拉尔区\";\"other\"\n\"2037086\";\"Haicheng\";\"main\"\n\"2037086\";\"Hai-ch'eng-chen\";\"other\"\n\"2037086\";\"Hai-ch'eng-hsien\";\"other\"\n\"2037086\";\"Hai-ch’eng-chen\";\"other\"\n\"2037086\";\"Hai-ch’eng-hsien\";\"other\"\n\"2037086\";\"Haitschong\";\"other\"\n\"2037086\";\"Haitschöng\";\"other\"\n\"2037086\";\"Lo-lang\";\"other\"\n\"2037103\";\"Guzhuyingzi\";\"main\"\n\"2037103\";\"Guzhuying\";\"other\"\n\"2037103\";\"Guzhuyingzi Xiang\";\"other\"\n\"2037103\";\"gu zhu ying zi\";\"other\"\n\"2037103\";\"gu zhu ying zi xiang\";\"other\"\n\"2037103\";\"孤竹营子\";\"other\"\n\"2037103\";\"孤竹营子乡\";\"other\"\n\"2037117\";\"Gushan\";\"main\"\n\"2037117\";\"Gushan Zhen\";\"other\"\n\"2037117\";\"Gushanzimanzu\";\"other\"\n\"2037117\";\"Ku-shan\";\"other\"\n\"2037117\";\"gu shan\";\"other\"\n\"2037117\";\"gu shan zhen\";\"other\"\n\"2037117\";\"孤山\";\"other\"\n\"2037117\";\"孤山镇\";\"other\"\n\"2037174\";\"Guayuan\";\"main\"\n\"2037174\";\"Guayuan Zhen\";\"other\"\n\"2037174\";\"Kua-yuan\";\"other\"\n\"2037174\";\"Kua-yüan\";\"other\"\n\"2037174\";\"瓜园\";\"other\"\n\"2037174\";\"瓜园镇\";\"other\"\n\"2037193\";\"Guanjiabu\";\"main\"\n\"2037193\";\"Guanjiabu Xiang\";\"other\"\n\"2037193\";\"Kuan-chia-pu\";\"other\"\n\"2037193\";\"Mieh-lu-p'u\";\"other\"\n\"2037193\";\"Mieh-lu-pao\";\"other\"\n\"2037193\";\"Mieh-lu-p’u\";\"other\"\n\"2037193\";\"管家堡\";\"other\"\n\"2037193\";\"管家堡乡\";\"other\"\n\"2037203\";\"Guanghua\";\"main\"\n\"2037203\";\"Guanghua Zhen\";\"other\"\n\"2037203\";\"Kuang-hua\";\"other\"\n\"2037203\";\"光华\";\"other\"\n\"2037203\";\"光华镇\";\"other\"\n\"2037218\";\"Goubangzi\";\"main\"\n\"2037218\";\"Goubangzi Zhen\";\"other\"\n\"2037218\";\"Kou-pang-tzu\";\"other\"\n\"2037218\";\"Kowpangtze\";\"other\"\n\"2037218\";\"gou bang zi\";\"other\"\n\"2037218\";\"gou bang zi zhen\";\"other\"\n\"2037218\";\"沟帮子\";\"other\"\n\"2037218\";\"沟帮子镇\";\"other\"\n\"2037222\";\"Gongzhuling\";\"main\"\n\"2037222\";\"Gunchzhulina\";\"other\"\n\"2037222\";\"Huai-te\";\"other\"\n\"2037222\";\"Huai-to-hsien\";\"other\"\n\"2037222\";\"Huaide\";\"other\"\n\"2037222\";\"Kung-chu-ling\";\"other\"\n\"2037222\";\"Kung-chu-ling-chen\";\"other\"\n\"2037222\";\"Гунчжулина\";\"other\"\n\"2037240\";\"Gongchangling\";\"main\"\n\"2037240\";\"Kung-ch'ang-ling\";\"other\"\n\"2037240\";\"Kung-ch’ang-ling\";\"other\"\n\"2037252\";\"Genhe\";\"main\"\n\"2037252\";\"Ergun Zuoqi\";\"other\"\n\"2037252\";\"Ken-ho\";\"other\"\n\"2037252\";\"O-erh-ku-na-ch'i\";\"other\"\n\"2037252\";\"O-erh-ku-na-ch’i\";\"other\"\n\"2037252\";\"O-erh-ku-na-tso-ch'i\";\"other\"\n\"2037252\";\"O-erh-ku-na-tso-ch’i\";\"other\"\n\"2037252\";\"O-tso-ch'i\";\"other\"\n\"2037252\";\"O-tso-ch’i\";\"other\"\n\"2037253\";\"Gengzhuang\";\"main\"\n\"2037253\";\"Gengzhuang Zhen\";\"other\"\n\"2037253\";\"Keng Chuan Tzu\";\"other\"\n\"2037253\";\"Keng-chuang\";\"other\"\n\"2037253\";\"Keng-chuang-tzu\";\"other\"\n\"2037253\";\"geng zhuang\";\"other\"\n\"2037253\";\"geng zhuang zhen\";\"other\"\n\"2037253\";\"耿庄\";\"other\"\n\"2037253\";\"耿庄镇\";\"other\"\n\"2037269\";\"Gaotai\";\"main\"\n\"2037269\";\"Gaotai Zhen\";\"other\"\n\"2037269\";\"Gaotaipu\";\"other\"\n\"2037269\";\"gao tai\";\"other\"\n\"2037269\";\"gao tai zhen\";\"other\"\n\"2037269\";\"高台\";\"other\"\n\"2037269\";\"高台镇\";\"other\"\n\"2037272\";\"Gaoshanzi\";\"main\"\n\"2037272\";\"Gaoshanzi Zhen\";\"other\"\n\"2037272\";\"Kao-shan-tzu\";\"other\"\n\"2037272\";\"gao shan zi\";\"other\"\n\"2037272\";\"gao shan zi zhen\";\"other\"\n\"2037272\";\"高山子\";\"other\"\n\"2037272\";\"高山子镇\";\"other\"\n\"2037275\";\"Gaoqiao\";\"main\"\n\"2037275\";\"Gaoqiao Zhen\";\"other\"\n\"2037275\";\"Gaoqiaozhen\";\"other\"\n\"2037275\";\"Kao-ch'iao\";\"other\"\n\"2037275\";\"Kao-ch'iao-chen\";\"other\"\n\"2037275\";\"Kao-ch’iao\";\"other\"\n\"2037275\";\"Kao-ch’iao-chen\";\"other\"\n\"2037275\";\"Kaokiao\";\"other\"\n\"2037275\";\"gao qiao\";\"other\"\n\"2037275\";\"gao qiao zhen\";\"other\"\n\"2037275\";\"高桥\";\"other\"\n\"2037275\";\"高桥镇\";\"other\"\n\"2037284\";\"Gaoling\";\"main\"\n\"2037284\";\"Gaoling Zhen\";\"other\"\n\"2037284\";\"gao ling\";\"other\"\n\"2037284\";\"gao ling zhen\";\"other\"\n\"2037284\";\"高岭\";\"other\"\n\"2037284\";\"高岭镇\";\"other\"\n\"2037306\";\"Ganwang\";\"main\"\n\"2037306\";\"Ganwang Zhen\";\"other\"\n\"2037306\";\"Ta-kan-wang-chai\";\"other\"\n\"2037306\";\"gan wang\";\"other\"\n\"2037306\";\"gan wang zhen\";\"other\"\n\"2037306\";\"感王\";\"other\"\n\"2037306\";\"感王镇\";\"other\"\n\"2037307\";\"Ganquan\";\"main\"\n\"2037307\";\"Ganquan Zhen\";\"other\"\n\"2037307\";\"gan quan\";\"other\"\n\"2037307\";\"gan quan zhen\";\"other\"\n\"2037307\";\"甘泉\";\"other\"\n\"2037307\";\"甘泉镇\";\"other\"\n\"2037311\";\"Gannan\";\"main\"\n\"2037311\";\"Erh-chan\";\"other\"\n\"2037311\";\"Kan-ching-tzu\";\"other\"\n\"2037311\";\"Kan-nan\";\"other\"\n\"2037311\";\"Kan-nan-chen\";\"other\"\n\"2037311\";\"Kan-nan-hsien\";\"other\"\n\"2037320\";\"Gangtun\";\"main\"\n\"2037320\";\"Gangtun Zhen\";\"other\"\n\"2037320\";\"Kang-t'un\";\"other\"\n\"2037320\";\"Kang-t’un\";\"other\"\n\"2037320\";\"gang tun\";\"other\"\n\"2037320\";\"gang tun zhen\";\"other\"\n\"2037320\";\"钢屯\";\"other\"\n\"2037320\";\"钢屯镇\";\"other\"\n\"2037322\";\"Gangou\";\"main\"\n\"2037322\";\"Gangou Xiang\";\"other\"\n\"2037322\";\"Kan-kou\";\"other\"\n\"2037322\";\"干沟\";\"other\"\n\"2037322\";\"干沟乡\";\"other\"\n\"2037330\";\"Fuyuan\";\"main\"\n\"2037330\";\"Fu-yuan-chen\";\"other\"\n\"2037330\";\"Fu-yuan-hsien\";\"other\"\n\"2037330\";\"Fu-yüan-chen\";\"other\"\n\"2037330\";\"Fu-yüan-hsien\";\"other\"\n\"2037330\";\"Fujuan'\";\"other\"\n\"2037330\";\"Fuyuanzhen\";\"other\"\n\"2037330\";\"Sui-yuan\";\"other\"\n\"2037330\";\"Sui-yüan\";\"other\"\n\"2037330\";\"Фуюань\";\"other\"\n\"2037331\";\"Fuyuan\";\"main\"\n\"2037331\";\"Chao-hu-wo-pao\";\"other\"\n\"2037331\";\"Fujuan'\";\"other\"\n\"2037331\";\"Hsin-lung-chen\";\"other\"\n\"2037331\";\"Hsing-lung\";\"other\"\n\"2037331\";\"Hsing-lung-chen\";\"other\"\n\"2037331\";\"Xinglongzhen\";\"other\"\n\"2037331\";\"Фуюань\";\"other\"\n\"2037334\";\"Fuyu\";\"main\"\n\"2037334\";\"Fu-yu-chen\";\"other\"\n\"2037334\";\"Fu-yü-chen\";\"other\"\n\"2037334\";\"Fuyuy\";\"other\"\n\"2037334\";\"Ning-nien\";\"other\"\n\"2037334\";\"Ning-nien Chan\";\"other\"\n\"2037334\";\"Yantszyatun'\";\"other\"\n\"2037334\";\"Yantszyatun’\";\"other\"\n\"2037335\";\"Fuyu\";\"main\"\n\"2037335\";\"Betuna\";\"other\"\n\"2037335\";\"Bodune\";\"other\"\n\"2037335\";\"Fu-yu-chen\";\"other\"\n\"2037335\";\"Fu-yu-hsien\";\"other\"\n\"2037335\";\"Fu-yü-chen\";\"other\"\n\"2037335\";\"Fu-yü-hsien\";\"other\"\n\"2037335\";\"Hsin-ch'eng\";\"other\"\n\"2037335\";\"Hsin-ch'eng-hsien\";\"other\"\n\"2037335\";\"Hsin-ch’eng\";\"other\"\n\"2037335\";\"Hsin-ch’eng-hsien\";\"other\"\n\"2037335\";\"Petuna\";\"other\"\n\"2037335\";\"Po-tu-na\";\"other\"\n\"2037335\";\"Po-tu-no\";\"other\"\n\"2037335\";\"Sincheng\";\"other\"\n\"2037342\";\"Jincang\";\"main\"\n\"2037342\";\"Fu-hsing\";\"other\"\n\"2037342\";\"Fuxing\";\"other\"\n\"2037342\";\"Fuxing Zhen\";\"other\"\n\"2037342\";\"复兴\";\"other\"\n\"2037342\";\"复兴镇\";\"other\"\n\"2037342\";\"金仓\";\"other\"\n\"2037345\";\"Fuxin\";\"main\"\n\"2037345\";\"A-chin\";\"other\"\n\"2037345\";\"Fou-hsin\";\"other\"\n\"2037345\";\"Fou-hsin-chen\";\"other\"\n\"2037345\";\"Fou-hsin-hsien\";\"other\"\n\"2037345\";\"Fou-hsin-hsien-t'u-mo-t'e-ch'i\";\"other\"\n\"2037345\";\"Fou-hsin-hsien-t’u-mo-t’e-ch’i\";\"other\"\n\"2037345\";\"Fou-hsin-meng-ku-tsu-tzu-chih-hsien\";\"other\"\n\"2037345\";\"Fu-hsin\";\"other\"\n\"2037345\";\"Fu-sin\";\"other\"\n\"2037345\";\"Fushin\";\"other\"\n\"2037345\";\"Fusin'\";\"other\"\n\"2037345\";\"Hsin-fou-hsien-t'u-mo-t'e-ch'i\";\"other\"\n\"2037345\";\"Hsin-fou-hsien-t’u-mo-t’e-ch’i\";\"other\"\n\"2037345\";\"Фусинь\";\"other\"\n\"2037346\";\"Fuxin\";\"main\"\n\"2037346\";\"Fou-hsin\";\"other\"\n\"2037346\";\"Fou-hsin-shih\";\"other\"\n\"2037346\";\"Fu-hsin\";\"other\"\n\"2037346\";\"Fusin'\";\"other\"\n\"2037346\";\"fu xin shi\";\"other\"\n\"2037346\";\"Фусинь\";\"other\"\n\"2037346\";\"阜新市\";\"other\"\n\"2037351\";\"Fusong\";\"main\"\n\"2037351\";\"Fu-shun\";\"other\"\n\"2037351\";\"Fu-sung\";\"other\"\n\"2037351\";\"Fu-sung-chen\";\"other\"\n\"2037351\";\"Fu-sung-hsien\";\"other\"\n\"2037351\";\"Fusong Xian\";\"other\"\n\"2037351\";\"Fusong Zhen\";\"other\"\n\"2037351\";\"Mang-niu-shao\";\"other\"\n\"2037351\";\"Mangnesia\";\"other\"\n\"2037351\";\"fu song\";\"other\"\n\"2037351\";\"抚松\";\"other\"\n\"2037351\";\"抚松县\";\"other\"\n\"2037351\";\"抚松镇\";\"other\"\n\"2037355\";\"Fushun\";\"main\"\n\"2037355\";\"Chiu-fu-shun\";\"other\"\n\"2037355\";\"Fu-shan\";\"other\"\n\"2037355\";\"Fu-shun-hsien\";\"other\"\n\"2037355\";\"Fu-shun-shih\";\"other\"\n\"2037355\";\"Fushun'\";\"other\"\n\"2037355\";\"Fushuncheng\";\"other\"\n\"2037355\";\"Фушунь\";\"other\"\n\"2037370\";\"Fuli\";\"main\"\n\"2037370\";\"Chi-hsien\";\"other\"\n\"2037370\";\"Fu-li-chen\";\"other\"\n\"2037370\";\"Fulitun\";\"other\"\n\"2037370\";\"Jixian\";\"other\"\n\"2037370\";\"Фули\";\"other\"\n\"2037375\";\"Fujin\";\"main\"\n\"2037375\";\"Fu-chin\";\"other\"\n\"2037375\";\"Fu-chin-chen\";\"other\"\n\"2037375\";\"Fu-chin-hsien\";\"other\"\n\"2037375\";\"Fu-k'o-chin\";\"other\"\n\"2037375\";\"Fu-k’o-chin\";\"other\"\n\"2037375\";\"Fuczin'\";\"other\"\n\"2037375\";\"Fukin\";\"other\"\n\"2037375\";\"Фуцзинь\";\"other\"\n\"2037377\";\"Fujia\";\"main\"\n\"2037377\";\"Fu-chia-t'un\";\"other\"\n\"2037377\";\"Fu-chia-t’un\";\"other\"\n\"2037377\";\"Fujia Zhen\";\"other\"\n\"2037377\";\"Fujiatun\";\"other\"\n\"2037377\";\"fu jia\";\"other\"\n\"2037377\";\"fu jia zhen\";\"other\"\n\"2037377\";\"傅家\";\"other\"\n\"2037377\";\"傅家镇\";\"other\"\n\"2037378\";\"Jianchanggou\";\"main\"\n\"2037378\";\"Chien-ch'ang-kou\";\"other\"\n\"2037378\";\"Chien-ch’ang-kou\";\"other\"\n\"2037378\";\"Fujiang Xiang\";\"other\"\n\"2037378\";\"富江乡\";\"other\"\n\"2037378\";\"碱厂沟\";\"other\"\n\"2037383\";\"Fudong\";\"main\"\n\"2037383\";\"Fu-tung\";\"other\"\n\"2037383\";\"Fudong Zhen\";\"other\"\n\"2037383\";\"福洞\";\"other\"\n\"2037383\";\"福洞镇\";\"other\"\n\"2037391\";\"Fengzhen\";\"main\"\n\"2037391\";\"Feng-chen\";\"other\"\n\"2037391\";\"Feng-chen-hsien\";\"other\"\n\"2037391\";\"feng zhen shi\";\"other\"\n\"2037391\";\"li zhen shi\";\"other\"\n\"2037391\";\"丰镇市\";\"other\"\n\"2037391\";\"豊鎮市\";\"other\"\n\"2037393\";\"Fengxiang\";\"main\"\n\"2037393\";\"Feng-hsiang\";\"other\"\n\"2037393\";\"Feng-hsiang-chen\";\"other\"\n\"2037393\";\"Feng-huang-chen\";\"other\"\n\"2037393\";\"Fengsiang\";\"other\"\n\"2037393\";\"Lo-pei\";\"other\"\n\"2037393\";\"Luobei\";\"other\"\n\"2037393\";\"Фенгсианг\";\"other\"\n\"2037411\";\"Fengcheng\";\"main\"\n\"2037411\";\"Feng-ch'eng-chen\";\"other\"\n\"2037411\";\"Feng-ch'eng-hsien\";\"other\"\n\"2037411\";\"Feng-ch’eng-chen\";\"other\"\n\"2037411\";\"Feng-ch’eng-hsien\";\"other\"\n\"2037411\";\"Feng-huang-ch'eng\";\"other\"\n\"2037411\";\"Feng-huang-ch’eng\";\"other\"\n\"2037411\";\"Fenghwangcheng\";\"other\"\n\"2037460\";\"Erniusuokou\";\"main\"\n\"2037460\";\"Erh-niu-so-k'ou\";\"other\"\n\"2037460\";\"Erh-niu-so-k’ou\";\"other\"\n\"2037460\";\"Erniusuokou Zhen\";\"other\"\n\"2037460\";\"er niu suo kou\";\"other\"\n\"2037460\";\"r niu suo kou zhen\";\"other\"\n\"2037460\";\"二牛所口\";\"other\"\n\"2037460\";\"儿牛所口镇\";\"other\"\n\"2037461\";\"Ermi\";\"main\"\n\"2037461\";\"Ermi Zhen\";\"other\"\n\"2037461\";\"二密\";\"other\"\n\"2037461\";\"二密镇\";\"other\"\n\"2037485\";\"Erenhot\";\"main\"\n\"2037485\";\"Ereen\";\"other\"\n\"2037485\";\"Erh-lien\";\"other\"\n\"2037485\";\"Erh-lien-hao-t'e\";\"other\"\n\"2037485\";\"Erh-lien-hao-t'e-shih\";\"other\"\n\"2037485\";\"Erh-lien-hao-t’e\";\"other\"\n\"2037485\";\"Erh-lien-hao-t’e-shih\";\"other\"\n\"2037485\";\"Erlin\";\"other\"\n\"2037485\";\"Erlyan'\";\"other\"\n\"2037485\";\"Erlyan’\";\"other\"\n\"2037485\";\"I-lin-ta-pu-su\";\"other\"\n\"2037485\";\"I-lin-tu-pa-su\";\"other\"\n\"2037485\";\"Iren\";\"other\"\n\"2037485\";\"Iren Dabasu\";\"other\"\n\"2037485\";\"P'ang-pei\";\"other\"\n\"2037485\";\"P’ang-pei\";\"other\"\n\"2037485\";\"Yeh-lieh-ta-pa-sha\";\"other\"\n\"2037485\";\"Yu-lin-ta-pa-su\";\"other\"\n\"2037494\";\"Erdaojiang\";\"main\"\n\"2037494\";\"Erh-tao-chiang\";\"other\"\n\"2037494\";\"Erh-tao-kou\";\"other\"\n\"2037511\";\"Erdaobaihe\";\"main\"\n\"2037511\";\"Erdaobaihe Zhen\";\"other\"\n\"2037511\";\"Erh-tao-pai-ho\";\"other\"\n\"2037511\";\"二道白河\";\"other\"\n\"2037511\";\"二道白河镇\";\"other\"\n\"2037534\";\"Dunhua\";\"main\"\n\"2037534\";\"Ao-tung-ch'eng\";\"other\"\n\"2037534\";\"Ao-tung-ch’eng\";\"other\"\n\"2037534\";\"Dun'khua\";\"other\"\n\"2037534\";\"Tun-hua\";\"other\"\n\"2037534\";\"Tun-hua-chen\";\"other\"\n\"2037534\";\"Tun-hua-hsien\";\"other\"\n\"2037534\";\"Tung Hua\";\"other\"\n\"2037534\";\"Tunhwa\";\"other\"\n\"2037534\";\"Дуньхуа\";\"other\"\n\"2037595\";\"Dongshengyong\";\"main\"\n\"2037595\";\"Dongshengyong Zhen\";\"other\"\n\"2037595\";\"Tung-sheng-yung\";\"other\"\n\"2037595\";\"东盛涌\";\"other\"\n\"2037595\";\"东盛涌镇\";\"other\"\n\"2037603\";\"Dongshangen\";\"main\"\n\"2037603\";\"Qiuzigou Xiang\";\"other\"\n\"2037603\";\"dong shan gen\";\"other\"\n\"2037603\";\"qiu zi gou xiang\";\"other\"\n\"2037603\";\"东山根\";\"other\"\n\"2037603\";\"秋子沟乡\";\"other\"\n\"2037611\";\"Dongning\";\"main\"\n\"2037611\";\"Hsiao-ch'eng-tzu\";\"other\"\n\"2037611\";\"Hsiao-ch’eng-tzu\";\"other\"\n\"2037611\";\"Tung-ning\";\"other\"\n\"2037611\";\"Tung-ning-chen\";\"other\"\n\"2037611\";\"Tung-ning-hsien\";\"other\"\n\"2037620\";\"Dongling\";\"main\"\n\"2037620\";\"Donlin\";\"other\"\n\"2037620\";\"Tung-ling\";\"other\"\n\"2037620\";\"Донлин\";\"other\"\n\"2037647\";\"Dongguang\";\"main\"\n\"2037647\";\"Dongguang Zhen\";\"other\"\n\"2037647\";\"东光\";\"other\"\n\"2037647\";\"东光镇\";\"other\"\n\"2037649\";\"Donggang\";\"main\"\n\"2037649\";\"Donggang Zhen\";\"other\"\n\"2037649\";\"Tung-kang\";\"other\"\n\"2037649\";\"东岗\";\"other\"\n\"2037649\";\"东岗镇\";\"other\"\n\"2037658\";\"Dongfeng\";\"main\"\n\"2037658\";\"Ta-tu-ch'uan\";\"other\"\n\"2037658\";\"Ta-tu-ch’uan\";\"other\"\n\"2037658\";\"Tung-feng\";\"other\"\n\"2037658\";\"Tung-feng-chen\";\"other\"\n\"2037658\";\"Tung-feng-hsien\";\"other\"\n\"2037658\";\"Tung-p'ing-hsien\";\"other\"\n\"2037658\";\"Tung-p’ing-hsien\";\"other\"\n\"2037658\";\"东丰\";\"other\"\n\"2037662\";\"Pucheng\";\"main\"\n\"2037662\";\"Dongcheng\";\"other\"\n\"2037662\";\"Dongcheng Zhen\";\"other\"\n\"2037662\";\"东城镇\";\"other\"\n\"2037662\";\"普城\";\"other\"\n\"2037669\";\"Dongbeicha\";\"main\"\n\"2037669\";\"Dongbeicha Xiang\";\"other\"\n\"2037669\";\"东北岔\";\"other\"\n\"2037669\";\"东北岔乡\";\"other\"\n\"2037685\";\"Didao\";\"main\"\n\"2037685\";\"Ti-tao\";\"other\"\n\"2037712\";\"Dehui\";\"main\"\n\"2037712\";\"Chang-chia-wan\";\"other\"\n\"2037712\";\"Te-hui\";\"other\"\n\"2037712\";\"Te-hui-chen\";\"other\"\n\"2037712\";\"Tszhantszyavan'\";\"other\"\n\"2037712\";\"Tszhantszyavan’\";\"other\"\n\"2037712\";\"Yao-men\";\"other\"\n\"2037748\";\"Daxing\";\"main\"\n\"2037748\";\"Daxing Xiang\";\"other\"\n\"2037748\";\"Daxingpu\";\"other\"\n\"2037748\";\"da xing\";\"other\"\n\"2037748\";\"da xing xiang\";\"other\"\n\"2037748\";\"大兴\";\"other\"\n\"2037748\";\"大兴乡\";\"other\"\n\"2037749\";\"Daxinggou\";\"main\"\n\"2037749\";\"Daxinggou Zhen\";\"other\"\n\"2037749\";\"Ta-hsing-kou\";\"other\"\n\"2037749\";\"大兴沟\";\"other\"\n\"2037749\";\"大兴沟镇\";\"other\"\n\"2037799\";\"Datong\";\"main\"\n\"2037799\";\"Dagu\";\"other\"\n\"2037799\";\"Daido\";\"other\"\n\"2037799\";\"Datongas\";\"other\"\n\"2037799\";\"Datun\";\"other\"\n\"2037799\";\"Ta-jen\";\"other\"\n\"2037799\";\"Ta-jen-hsien\";\"other\"\n\"2037799\";\"Ta-ku\";\"other\"\n\"2037799\";\"Ta-t'ung\";\"other\"\n\"2037799\";\"Ta-t'ung-hsien\";\"other\"\n\"2037799\";\"Ta-t'ung-shih\";\"other\"\n\"2037799\";\"Ta-t’ung\";\"other\"\n\"2037799\";\"Ta-t’ung-hsien\";\"other\"\n\"2037799\";\"Ta-t’ung-shih\";\"other\"\n\"2037799\";\"da tong shi\";\"other\"\n\"2037799\";\"Датун\";\"other\"\n\"2037799\";\"大同市\";\"other\"\n\"2037820\";\"Dashitou\";\"main\"\n\"2037820\";\"Ta-shih-t'ou\";\"other\"\n\"2037820\";\"Ta-shih-t'ou-ho-tzu\";\"other\"\n\"2037820\";\"Ta-shih-t’ou\";\"other\"\n\"2037820\";\"Ta-shih-t’ou-ho-tzu\";\"other\"\n\"2037820\";\"Tashitou\";\"other\"\n\"2037823\";\"Dashiqiao\";\"main\"\n\"2037823\";\"Ta-shih-ch'iao\";\"other\"\n\"2037823\";\"Ta-shih-ch'iao-chen\";\"other\"\n\"2037823\";\"Ta-shih-ch’iao\";\"other\"\n\"2037823\";\"Ta-shih-ch’iao-chen\";\"other\"\n\"2037823\";\"Tashihkiao\";\"other\"\n\"2037823\";\"Yingkou\";\"other\"\n\"2037827\";\"Dashi\";\"main\"\n\"2037827\";\"Dashi Zhen\";\"other\"\n\"2037827\";\"Dashibaozi\";\"other\"\n\"2037827\";\"da shi\";\"other\"\n\"2037827\";\"da shi zhen\";\"other\"\n\"2037827\";\"大市\";\"other\"\n\"2037827\";\"大市镇\";\"other\"\n\"2037835\";\"Dashahe\";\"main\"\n\"2037835\";\"Ta-sha-ho\";\"other\"\n\"2037835\";\"Ta-sha-ho-k'ou-tzu\";\"other\"\n\"2037835\";\"Ta-sha-ho-k’ou-tzu\";\"other\"\n\"2037835\";\"Yongqing Xiang\";\"other\"\n\"2037835\";\"大沙河\";\"other\"\n\"2037835\";\"永庆乡\";\"other\"\n\"2037842\";\"Daquanyuan\";\"main\"\n\"2037842\";\"Daquanyuan Manzu Chaoxianzu Xiang\";\"other\"\n\"2037842\";\"Ta-ch'uan-yuan\";\"other\"\n\"2037842\";\"Ta-ch’üan-yüan\";\"other\"\n\"2037842\";\"大泉源\";\"other\"\n\"2037842\";\"大泉源满族朝鲜族乡\";\"other\"\n\"2037860\";\"Daqing\";\"main\"\n\"2037860\";\"An-ta\";\"other\"\n\"2037860\";\"An-ta-shih\";\"other\"\n\"2037860\";\"Anda\";\"other\"\n\"2037860\";\"Dacin\";\"other\"\n\"2037860\";\"Sa-erh-t'u\";\"other\"\n\"2037860\";\"Sa-erh-t’u\";\"other\"\n\"2037860\";\"Sartu\";\"other\"\n\"2037860\";\"Sha-erh-t'u\";\"other\"\n\"2037860\";\"Sha-erh-t’u\";\"other\"\n\"2037860\";\"Дацин\";\"other\"\n\"2037886\";\"Dandong\";\"main\"\n\"2037886\";\"An-tung-hsien\";\"other\"\n\"2037886\";\"An-tung-shih\";\"other\"\n\"2037886\";\"Antung\";\"other\"\n\"2037886\";\"Dan'dun\";\"other\"\n\"2037886\";\"Dandong - dan dong\";\"other\"\n\"2037886\";\"Dandong - 丹东\";\"other\"\n\"2037886\";\"Sha-ho-ch'en\";\"other\"\n\"2037886\";\"Sha-ho-ch’en\";\"other\"\n\"2037886\";\"Sha-ho-tzu\";\"other\"\n\"2037886\";\"Tan-tung\";\"other\"\n\"2037886\";\"Tan-tung-shih\";\"other\"\n\"2037886\";\"dan dong shi\";\"other\"\n\"2037886\";\"dandung\";\"other\"\n\"2037886\";\"Даньдун\";\"other\"\n\"2037886\";\"丹东市\";\"other\"\n\"2037886\";\"丹東市\";\"other\"\n\"2037886\";\"단둥\";\"other\"\n\"2037903\";\"Dalu\";\"main\"\n\"2037903\";\"Dalu Zhen\";\"other\"\n\"2037903\";\"大路\";\"other\"\n\"2037903\";\"大路镇\";\"other\"\n\"2037906\";\"Dalizi\";\"main\"\n\"2037906\";\"Dairisshiko\";\"other\"\n\"2037906\";\"Dalizi Zhen\";\"other\"\n\"2037906\";\"Ta-li\";\"other\"\n\"2037906\";\"Ta-li-tsu\";\"other\"\n\"2037906\";\"Ta-li-tzu\";\"other\"\n\"2037906\";\"Ta-li-tzu-ko\";\"other\"\n\"2037906\";\"Ta-li-tzu-kou\";\"other\"\n\"2037906\";\"大粟子\";\"other\"\n\"2037906\";\"大粟子镇\";\"other\"\n\"2037913\";\"Linghai\";\"main\"\n\"2037913\";\"Chin\";\"other\"\n\"2037913\";\"Chin-hsien\";\"other\"\n\"2037913\";\"Dalinghe\";\"other\"\n\"2037913\";\"Jinxian\";\"other\"\n\"2037913\";\"Linghai Shi\";\"other\"\n\"2037913\";\"Ta-ling-ho\";\"other\"\n\"2037913\";\"Ta-ling-ho-chen\";\"other\"\n\"2037913\";\"Ta-ling-ho-tien\";\"other\"\n\"2037913\";\"Ta-ling-ho-tien-tzu\";\"other\"\n\"2037930\";\"Dalai\";\"main\"\n\"2037930\";\"Da'an\";\"other\"\n\"2037930\";\"Dalaysyan'\";\"other\"\n\"2037930\";\"Dalaysyan’\";\"other\"\n\"2037930\";\"Da’an\";\"other\"\n\"2037930\";\"Mo-lo-hung-kang-tzu\";\"other\"\n\"2037930\";\"Ta-an\";\"other\"\n\"2037930\";\"Ta-lai\";\"other\"\n\"2037930\";\"Ta-lai-chen\";\"other\"\n\"2037930\";\"Ta-lai-hsien\";\"other\"\n\"2037930\";\"Talaicheng\";\"other\"\n\"2037998\";\"Daduling\";\"main\"\n\"2037998\";\"Daduling Xiang\";\"other\"\n\"2037998\";\"Ta-tu-ling\";\"other\"\n\"2037998\";\"大都岭\";\"other\"\n\"2037998\";\"大都岭乡\";\"other\"\n\"2038036\";\"Da’an\";\"main\"\n\"2038036\";\"Da'an\";\"ascii\"\n\"2038036\";\"Da'an Zhen\";\"other\"\n\"2038036\";\"Da’an Zhen\";\"other\"\n\"2038036\";\"Ta-an\";\"other\"\n\"2038036\";\"大安\";\"other\"\n\"2038036\";\"大安镇\";\"other\"\n\"2038052\";\"Chunyang\";\"main\"\n\"2038052\";\"Ch'un-yang-ts'un\";\"other\"\n\"2038052\";\"Chunyang Zhen\";\"other\"\n\"2038052\";\"Ch’un-yang-ts’un\";\"other\"\n\"2038052\";\"春阳\";\"other\"\n\"2038052\";\"春阳镇\";\"other\"\n\"2038059\";\"Choushui\";\"main\"\n\"2038059\";\"Ch'ou-shui-ho\";\"other\"\n\"2038059\";\"Choushui Xiang\";\"other\"\n\"2038059\";\"Ch’ou-shui-ho\";\"other\"\n\"2038059\";\"抽水\";\"other\"\n\"2038059\";\"抽水乡\";\"other\"\n\"2038060\";\"Chongshan\";\"main\"\n\"2038060\";\"Ch'ung-shan\";\"other\"\n\"2038060\";\"Chongshan Zhen\";\"other\"\n\"2038060\";\"Ch’ung-shan\";\"other\"\n\"2038060\";\"崇善\";\"other\"\n\"2038060\";\"崇善镇\";\"other\"\n\"2038067\";\"Chifeng\";\"main\"\n\"2038067\";\"Ch'ih-feng\";\"other\"\n\"2038067\";\"Ch'ih-feng-chou\";\"other\"\n\"2038067\";\"Ch'ih-feng-hsien\";\"other\"\n\"2038067\";\"Ch'ih-feng-shih\";\"other\"\n\"2038067\";\"Chifehn\";\"other\"\n\"2038067\";\"Ch’ih-feng\";\"other\"\n\"2038067\";\"Ch’ih-feng-chou\";\"other\"\n\"2038067\";\"Ch’ih-feng-hsien\";\"other\"\n\"2038067\";\"Ch’ih-feng-shih\";\"other\"\n\"2038067\";\"Ha-ta\";\"other\"\n\"2038067\";\"Tschifong\";\"other\"\n\"2038067\";\"Tschiföng\";\"other\"\n\"2038067\";\"Ulaan Hada\";\"other\"\n\"2038067\";\"Ulanhad\";\"other\"\n\"2038067\";\"Wu-lan-ha-ta\";\"other\"\n\"2038067\";\"Чифэн\";\"other\"\n\"2038080\";\"Chengzihe\";\"main\"\n\"2038080\";\"Ch'eng-tzu-ho\";\"other\"\n\"2038080\";\"Ch’eng-tzu-ho\";\"other\"\n\"2038087\";\"Chengde\";\"main\"\n\"2038087\";\"Ch'eng-te\";\"other\"\n\"2038087\";\"Ch'eng-te-hsien\";\"other\"\n\"2038087\";\"Ch'eng-te-shih\";\"other\"\n\"2038087\";\"Chehndeh\";\"other\"\n\"2038087\";\"Chengteh\";\"other\"\n\"2038087\";\"Ch’eng-te\";\"other\"\n\"2038087\";\"Ch’eng-te-hsien\";\"other\"\n\"2038087\";\"Ch’eng-te-shih\";\"other\"\n\"2038087\";\"Je-ho\";\"other\"\n\"2038087\";\"Jehoi\";\"other\"\n\"2038087\";\"Jehol\";\"other\"\n\"2038087\";\"Jo-ho\";\"other\"\n\"2038087\";\"Tschongto\";\"other\"\n\"2038087\";\"cheng de shi\";\"other\"\n\"2038087\";\"Чэндэ\";\"other\"\n\"2038087\";\"承徳市\";\"other\"\n\"2038087\";\"承德市\";\"other\"\n\"2038106\";\"Chaoyangchuan\";\"main\"\n\"2038106\";\"Chaoyangchuan Zhen\";\"other\"\n\"2038106\";\"朝阳川\";\"other\"\n\"2038106\";\"朝阳川镇\";\"other\"\n\"2038117\";\"Qiujia\";\"main\"\n\"2038117\";\"Chaoyang\";\"other\"\n\"2038117\";\"Chaoyang Zhen\";\"other\"\n\"2038117\";\"chao yang\";\"other\"\n\"2038117\";\"chao yang zhen\";\"other\"\n\"2038117\";\"qiu jia\";\"other\"\n\"2038117\";\"朝阳\";\"other\"\n\"2038117\";\"朝阳镇\";\"other\"\n\"2038117\";\"邱家\";\"other\"\n\"2038118\";\"Chaoyang\";\"main\"\n\"2038118\";\"Ch'ao-yang-chen\";\"other\"\n\"2038118\";\"Ch'ao-yang-shen\";\"other\"\n\"2038118\";\"Chaojan\";\"other\"\n\"2038118\";\"Ch’ao-yang-chen\";\"other\"\n\"2038118\";\"Ch’ao-yang-shen\";\"other\"\n\"2038118\";\"Huinan\";\"other\"\n\"2038118\";\"Чаоян\";\"other\"\n\"2038118\";\"朝阳\";\"other\"\n\"2038120\";\"Chaoyang\";\"main\"\n\"2038120\";\"Ch'ao-yang-chen\";\"other\"\n\"2038120\";\"Ch'ao-yang-hsien\";\"other\"\n\"2038120\";\"Ch'ao-yang-shih\";\"other\"\n\"2038120\";\"Chaiyang\";\"other\"\n\"2038120\";\"Chaojan\";\"other\"\n\"2038120\";\"Ch’ao-yang-chen\";\"other\"\n\"2038120\";\"Ch’ao-yang-hsien\";\"other\"\n\"2038120\";\"Ch’ao-yang-shih\";\"other\"\n\"2038120\";\"San-tso-t'a\";\"other\"\n\"2038120\";\"San-tso-t’a\";\"other\"\n\"2038120\";\"Чаоян\";\"other\"\n\"2038133\";\"Changxingdian\";\"main\"\n\"2038133\";\"Ch'ang-hsing\";\"other\"\n\"2038133\";\"Ch'ang-hsing-tien\";\"other\"\n\"2038133\";\"Changxingdian Zhen\";\"other\"\n\"2038133\";\"Ch’ang-hsing\";\"other\"\n\"2038133\";\"Ch’ang-hsing-tien\";\"other\"\n\"2038133\";\"chang xing dian\";\"other\"\n\"2038133\";\"chang xing dian zhen\";\"other\"\n\"2038133\";\"常兴店\";\"other\"\n\"2038133\";\"常兴店镇\";\"other\"\n\"2038134\";\"Changxing\";\"main\"\n\"2038134\";\"Changxing Xiang\";\"other\"\n\"2038134\";\"长兴\";\"other\"\n\"2038134\";\"长兴乡\";\"other\"\n\"2038139\";\"Changtu\";\"main\"\n\"2038139\";\"Ch'ang-t'u-chen\";\"other\"\n\"2038139\";\"Ch'ang-tu-chan\";\"other\"\n\"2038139\";\"Changtu Xian\";\"other\"\n\"2038139\";\"Chantu\";\"other\"\n\"2038139\";\"Ch’ang-tu-chan\";\"other\"\n\"2038139\";\"Ch’ang-t’u-chen\";\"other\"\n\"2038139\";\"Чанту\";\"other\"\n\"2038139\";\"昌图\";\"other\"\n\"2038139\";\"昌图县\";\"other\"\n\"2038154\";\"Changping\";\"main\"\n\"2038154\";\"Ch'ang-p'ing-ch'u\";\"other\"\n\"2038154\";\"Ch'ang-p'ing-chen\";\"other\"\n\"2038154\";\"Ch'ang-p'ing-hsien\";\"other\"\n\"2038154\";\"Chanpin\";\"other\"\n\"2038154\";\"Ch’ang-p’ing-chen\";\"other\"\n\"2038154\";\"Ch’ang-p’ing-ch’ü\";\"other\"\n\"2038154\";\"Ch’ang-p’ing-hsien\";\"other\"\n\"2038154\";\"Чанпин\";\"other\"\n\"2038158\";\"Changling\";\"main\"\n\"2038158\";\"Ch'ang-ling-chen\";\"other\"\n\"2038158\";\"Ch'ang-ling-hsien\";\"other\"\n\"2038158\";\"Ch'ang-ling-tzu\";\"other\"\n\"2038158\";\"Ch’ang-ling-chen\";\"other\"\n\"2038158\";\"Ch’ang-ling-hsien\";\"other\"\n\"2038158\";\"Ch’ang-ling-tzu\";\"other\"\n\"2038158\";\"长岭\";\"other\"\n\"2038180\";\"Changchun\";\"main\"\n\"2038180\";\"Ch'ang-ch'un-hsien\";\"other\"\n\"2038180\";\"Ch'ang-ch'un-shih\";\"other\"\n\"2038180\";\"Chanchun'\";\"other\"\n\"2038180\";\"Changchun Shi\";\"other\"\n\"2038180\";\"Ch’ang-ch’un-hsien\";\"other\"\n\"2038180\";\"Ch’ang-ch’un-shih\";\"other\"\n\"2038180\";\"Hsin-chin\";\"other\"\n\"2038180\";\"Hsin-ching\";\"other\"\n\"2038180\";\"Hsinking\";\"other\"\n\"2038180\";\"K'ua-ch'eng-tzu\";\"other\"\n\"2038180\";\"Kwan-cheng-tze\";\"other\"\n\"2038180\";\"K’ua-ch’eng-tzu\";\"other\"\n\"2038180\";\"zhang chun\";\"other\"\n\"2038180\";\"Чанчунь\";\"other\"\n\"2038180\";\"长春\";\"other\"\n\"2038185\";\"Changbai\";\"main\"\n\"2038185\";\"Ch'ang-pai-ch'ao-hsien-tsu-tzu-chih-hsien\";\"other\"\n\"2038185\";\"Ch'ang-pai-chen\";\"other\"\n\"2038185\";\"Ch'ang-pai-hsien\";\"other\"\n\"2038185\";\"Chang-pai\";\"other\"\n\"2038185\";\"Changpai-fu\";\"other\"\n\"2038185\";\"Changpaishan\";\"other\"\n\"2038185\";\"Ch’ang-pai-chen\";\"other\"\n\"2038185\";\"Ch’ang-pai-ch’ao-hsien-tsu-tzu-chih-hsien\";\"other\"\n\"2038185\";\"Ch’ang-pai-hsien\";\"other\"\n\"2038185\";\"zhang bai\";\"other\"\n\"2038185\";\"长白\";\"other\"\n\"2038198\";\"Chaihe\";\"main\"\n\"2038198\";\"Ch'ai-ho\";\"other\"\n\"2038198\";\"Ch’ai-ho\";\"other\"\n\"2038227\";\"Caiyuan\";\"main\"\n\"2038227\";\"Caiyuan Zhen\";\"other\"\n\"2038227\";\"Ts'ai-yuan\";\"other\"\n\"2038227\";\"Ts’ai-yüan\";\"other\"\n\"2038227\";\"财源\";\"other\"\n\"2038227\";\"财源镇\";\"other\"\n\"2038274\";\"Boli\";\"main\"\n\"2038274\";\"P'o-li\";\"other\"\n\"2038274\";\"P'o-li-chen\";\"other\"\n\"2038274\";\"P'o-li-hsien\";\"other\"\n\"2038274\";\"Боли\";\"other\"\n\"2038283\";\"Binzhou\";\"main\"\n\"2038283\";\"Binsyan\";\"other\"\n\"2038283\";\"Binxian\";\"other\"\n\"2038283\";\"Pin\";\"other\"\n\"2038283\";\"Pin-chou\";\"other\"\n\"2038283\";\"Pin-chou-chen\";\"other\"\n\"2038283\";\"Pin-chow\";\"other\"\n\"2038283\";\"Pin-hsien\";\"other\"\n\"2038283\";\"Pintschou\";\"other\"\n\"2038283\";\"Wei-tzu-kou\";\"other\"\n\"2038300\";\"Benxi\";\"main\"\n\"2038300\";\"Behn'si\";\"other\"\n\"2038300\";\"Pen Shi\";\"other\"\n\"2038300\";\"Pen-ch'i\";\"other\"\n\"2038300\";\"Pen-ch'i-hsien\";\"other\"\n\"2038300\";\"Pen-ch'i-hu\";\"other\"\n\"2038300\";\"Pen-ch'i-shih\";\"other\"\n\"2038300\";\"Pen-ch’i\";\"other\"\n\"2038300\";\"Pen-ch’i-hsien\";\"other\"\n\"2038300\";\"Pen-ch’i-hu\";\"other\"\n\"2038300\";\"Pen-ch’i-shih\";\"other\"\n\"2038300\";\"Pen-hsi\";\"other\"\n\"2038300\";\"Pen-hsi-shih\";\"other\"\n\"2038300\";\"Penki\";\"other\"\n\"2038300\";\"Penkihu\";\"other\"\n\"2038300\";\"ben xi shi\";\"other\"\n\"2038300\";\"Бэньси\";\"other\"\n\"2038300\";\"本渓\";\"other\"\n\"2038300\";\"本溪市\";\"other\"\n\"2038342\";\"Beipiao\";\"main\"\n\"2038342\";\"Pehpiao\";\"other\"\n\"2038342\";\"Pei-p'iao\";\"other\"\n\"2038342\";\"Pei-p'iao-chen\";\"other\"\n\"2038342\";\"Pei-p'iao-hsien\";\"other\"\n\"2038342\";\"Pei-p’iao\";\"other\"\n\"2038342\";\"Pei-p’iao-chen\";\"other\"\n\"2038342\";\"Pei-p’iao-hsien\";\"other\"\n\"2038350\";\"Beijiazao\";\"main\"\n\"2038350\";\"Hsin-chia-tsao\";\"other\"\n\"2038350\";\"Pei-chia-tsao\";\"other\"\n\"2038356\";\"Beigang\";\"main\"\n\"2038356\";\"Beigang Zhen\";\"other\"\n\"2038356\";\"T'ou-tao-la-tzu-ho\";\"other\"\n\"2038356\";\"T'ou-tao-lei-tzu-ho\";\"other\"\n\"2038356\";\"T’ou-tao-la-tzu-ho\";\"other\"\n\"2038356\";\"T’ou-tao-lei-tzu-ho\";\"other\"\n\"2038356\";\"北岗\";\"other\"\n\"2038356\";\"北岗镇\";\"other\"\n\"2038421\";\"Bayan\";\"main\"\n\"2038421\";\"Bajan\";\"other\"\n\"2038421\";\"Pa Jen\";\"other\"\n\"2038421\";\"Pa-yen-chen\";\"other\"\n\"2038421\";\"Pa-yen-hsien\";\"other\"\n\"2038421\";\"Pa-yen-su\";\"other\"\n\"2038421\";\"Pa-yen-su-su\";\"other\"\n\"2038421\";\"Payen\";\"other\"\n\"2038421\";\"Баян\";\"other\"\n\"2038432\";\"Baotou\";\"main\"\n\"2038432\";\"Baotou Shi\";\"other\"\n\"2038432\";\"Pao-t'ou\";\"other\"\n\"2038432\";\"Pao-t'ou-hsien\";\"other\"\n\"2038432\";\"Pao-t'ou-shih\";\"other\"\n\"2038432\";\"Pao-tow\";\"other\"\n\"2038432\";\"Pao-t’ou\";\"other\"\n\"2038432\";\"Pao-t’ou-hsien\";\"other\"\n\"2038432\";\"Pao-t’ou-shih\";\"other\"\n\"2038432\";\"Баотоу\";\"other\"\n\"2038438\";\"Baoshan\";\"main\"\n\"2038438\";\"Baoshan'\";\"other\"\n\"2038438\";\"Pao-shan\";\"other\"\n\"2038438\";\"Баошань\";\"other\"\n\"2038446\";\"Baoqing\";\"main\"\n\"2038446\";\"BAOCIN\";\"other\"\n\"2038446\";\"Baotsin\";\"other\"\n\"2038446\";\"Pao-ch'ing\";\"other\"\n\"2038446\";\"Pao-ch'ing-chen\";\"other\"\n\"2038446\";\"Pao-ch'ing-hsien\";\"other\"\n\"2038446\";\"Pao-ch’ing\";\"other\"\n\"2038446\";\"Pao-ch’ing-chen\";\"other\"\n\"2038446\";\"Pao-ch’ing-hsien\";\"other\"\n\"2038446\";\"Paotsing\";\"other\"\n\"2038446\";\"БАОЦИН\";\"other\"\n\"2038468\";\"Banshi\";\"main\"\n\"2038468\";\"Banshi Zhen\";\"other\"\n\"2038468\";\"Pan-shih\";\"other\"\n\"2038468\";\"Pan-shih-kou-t'un\";\"other\"\n\"2038468\";\"Pan-shih-kou-t’un\";\"other\"\n\"2038468\";\"Pan-shin\";\"other\"\n\"2038468\";\"板石\";\"other\"\n\"2038468\";\"板石镇\";\"other\"\n\"2038482\";\"Bamiantong\";\"main\"\n\"2038482\";\"Mu-leng\";\"other\"\n\"2038482\";\"Mu-leng-hsien\";\"other\"\n\"2038482\";\"Muling\";\"other\"\n\"2038482\";\"Pa-mien-t'ung\";\"other\"\n\"2038482\";\"Pa-mien-t'ung-chen\";\"other\"\n\"2038482\";\"Pa-mien-t’ung\";\"other\"\n\"2038482\";\"Pa-mien-t’ung-chen\";\"other\"\n\"2038484\";\"Bamiancheng\";\"main\"\n\"2038484\";\"Bamiancheng Zhen\";\"other\"\n\"2038484\";\"Pa-mien-ch'eng\";\"other\"\n\"2038484\";\"Pa-mien-ch’eng\";\"other\"\n\"2038484\";\"ba mian cheng\";\"other\"\n\"2038484\";\"ba mian cheng zhen\";\"other\"\n\"2038484\";\"八面城\";\"other\"\n\"2038484\";\"八面城镇\";\"other\"\n\"2038493\";\"Bali\";\"main\"\n\"2038493\";\"Bali Zhen\";\"other\"\n\"2038493\";\"Pa-li-ho\";\"other\"\n\"2038493\";\"ba li\";\"other\"\n\"2038493\";\"ba li zhen\";\"other\"\n\"2038493\";\"八里\";\"other\"\n\"2038493\";\"八里镇\";\"other\"\n\"2038502\";\"Bajiazi\";\"main\"\n\"2038502\";\"Bajiazi Zhen\";\"other\"\n\"2038502\";\"Pa-chia-tzu\";\"other\"\n\"2038502\";\"Shangnan\";\"other\"\n\"2038502\";\"八家子\";\"other\"\n\"2038502\";\"八家子镇\";\"other\"\n\"2038527\";\"Baishuitan\";\"main\"\n\"2038527\";\"Yanjiang Xiang\";\"other\"\n\"2038527\";\"沿江乡\";\"other\"\n\"2038527\";\"白水滩\";\"other\"\n\"2038529\";\"Baishishan\";\"main\"\n\"2038529\";\"Pai-shih-shan\";\"other\"\n\"2038541\";\"Baiquan\";\"main\"\n\"2038541\";\"Pai-ch'uan\";\"other\"\n\"2038541\";\"Pai-ch'uan-chen\";\"other\"\n\"2038541\";\"Pai-ch'uan-hsien\";\"other\"\n\"2038541\";\"Pai-ch’üan\";\"other\"\n\"2038541\";\"Pai-ch’üan-chen\";\"other\"\n\"2038541\";\"Pai-ch’üan-hsien\";\"other\"\n\"2038541\";\"Ta-p'ao-tzu\";\"other\"\n\"2038541\";\"Ta-p’ao-tzu\";\"other\"\n\"2038542\";\"Baiquan\";\"main\"\n\"2038542\";\"Pai-ch'uan\";\"other\"\n\"2038542\";\"Pai-ch’üan\";\"other\"\n\"2038542\";\"bai quan\";\"other\"\n\"2038542\";\"白泉\";\"other\"\n\"2038569\";\"Baicheng\";\"main\"\n\"2038569\";\"Bajchen\";\"other\"\n\"2038569\";\"Pai-ch'eng\";\"other\"\n\"2038569\";\"Pai-ch'eng-shih\";\"other\"\n\"2038569\";\"Pai-ch'eng-tzu\";\"other\"\n\"2038569\";\"Pai-ch’eng\";\"other\"\n\"2038569\";\"Pai-ch’eng-shih\";\"other\"\n\"2038569\";\"Pai-ch’eng-tzu\";\"other\"\n\"2038569\";\"Paichengtze\";\"other\"\n\"2038569\";\"T'ao-an\";\"other\"\n\"2038569\";\"T'ao-an-hsien\";\"other\"\n\"2038569\";\"T'ao-yen\";\"other\"\n\"2038569\";\"T’ao-an\";\"other\"\n\"2038569\";\"T’ao-an-hsien\";\"other\"\n\"2038569\";\"T’ao-yen\";\"other\"\n\"2038569\";\"Байчен\";\"other\"\n\"2038572\";\"Baicaogou\";\"main\"\n\"2038572\";\"Baicaogou Zhen\";\"other\"\n\"2038572\";\"Hsiao-pai-ts'ao-kou\";\"other\"\n\"2038572\";\"Hsiao-pai-ts’ao-kou\";\"other\"\n\"2038572\";\"Pai-ts'ao-kou\";\"other\"\n\"2038572\";\"Pai-ts’ao-kou\";\"other\"\n\"2038572\";\"Potsaokou\";\"other\"\n\"2038572\";\"Wang-ch'ing-hsien\";\"other\"\n\"2038572\";\"Wang-ch’ing-hsien\";\"other\"\n\"2038572\";\"百草沟\";\"other\"\n\"2038572\";\"百草沟镇\";\"other\"\n\"2038577\";\"Xiqu\";\"main\"\n\"2038577\";\"Bahechuan\";\"other\"\n\"2038577\";\"Pa-ho-ch'uan\";\"other\"\n\"2038577\";\"Pa-ho-ch’uan\";\"other\"\n\"2038577\";\"xi qu\";\"other\"\n\"2038577\";\"西区\";\"other\"\n\"2038584\";\"Baishan\";\"main\"\n\"2038584\";\"Badaojiang\";\"other\"\n\"2038584\";\"Bajshan'\";\"other\"\n\"2038584\";\"Hun-chiang\";\"other\"\n\"2038584\";\"Hun-chiang-shih\";\"other\"\n\"2038584\";\"Hunjiang\";\"other\"\n\"2038584\";\"Pa-tao-chiang\";\"other\"\n\"2038584\";\"Pa-tao-kou\";\"other\"\n\"2038584\";\"Байшань\";\"other\"\n\"2038632\";\"Anshan\";\"main\"\n\"2038632\";\"An'shan'\";\"other\"\n\"2038632\";\"An-shan-shih\";\"other\"\n\"2038632\";\"Аньшань\";\"other\"\n\"2038650\";\"Anda\";\"main\"\n\"2038650\";\"An-ta\";\"other\"\n\"2038650\";\"An-ta-chan\";\"other\"\n\"2038650\";\"An-ta-chen\";\"other\"\n\"2038650\";\"An-ta-hsien\";\"other\"\n\"2038650\";\"An-ta-shih\";\"other\"\n\"2038650\";\"Анда\";\"other\"\n\"2038665\";\"Alihe\";\"main\"\n\"2038665\";\"A-li\";\"other\"\n\"2038665\";\"A-li-ho\";\"other\"\n\"2038665\";\"ALIKHEH\";\"other\"\n\"2038665\";\"Ari\";\"other\"\n\"2038665\";\"O-lun-ch'un-tsu-tzu-chih-ch'i\";\"other\"\n\"2038665\";\"O-lun-ch'un-tzu-chih-ch'i\";\"other\"\n\"2038665\";\"O-lun-ch’un-tsu-tzu-chih-ch’i\";\"other\"\n\"2038665\";\"O-lun-ch’un-tzu-chih-ch’i\";\"other\"\n\"2038665\";\"Oroqen Zizhiqi\";\"other\"\n\"2038665\";\"АЛИХЭ\";\"other\"\n\"2038679\";\"Acheng\";\"main\"\n\"2038679\";\"A-ch'eng-chen\";\"other\"\n\"2038679\";\"A-ch'eng-hsien\";\"other\"\n\"2038679\";\"A-ch’eng-chen\";\"other\"\n\"2038679\";\"A-ch’eng-hsien\";\"other\"\n\"2038679\";\"A-shih-ho\";\"other\"\n\"2038679\";\"A-shih-ko\";\"other\"\n\"2038679\";\"Akheng\";\"other\"\n\"2038679\";\"Asche-ho\";\"other\"\n\"2038679\";\"Ashiho\";\"other\"\n\"2038679\";\"Ахенг\";\"other\"\n\"2045478\";\"Shisidaogou\";\"main\"\n\"2045478\";\"Shih-ssu-tao-kou\";\"other\"\n\"2045478\";\"Shisidaogou Zhen\";\"other\"\n\"2045478\";\"十四道沟\";\"other\"\n\"2045478\";\"十四道沟镇\";\"other\"\n\"2045485\";\"Jinhua\";\"main\"\n\"2045485\";\"Banqiegou\";\"other\"\n\"2045485\";\"Barjiegou\";\"other\"\n\"2045485\";\"Jinhua Xiang\";\"other\"\n\"2045485\";\"Pan-chieh-kou\";\"other\"\n\"2045485\";\"金华\";\"other\"\n\"2045485\";\"金华乡\";\"other\"\n\"2045898\";\"Shisandaogou\";\"main\"\n\"2045898\";\"Shih-san-tao-kou\";\"other\"\n\"2045898\";\"Shisandaogou Xiang\";\"other\"\n\"2045898\";\"十三道沟\";\"other\"\n\"2045898\";\"十三道沟乡\";\"other\"\n\"2046561\";\"Xiaoshahe\";\"main\"\n\"2046561\";\"Heng-tao-tzu\";\"other\"\n\"2046561\";\"Xiaoshahe Xiang\";\"other\"\n\"2046561\";\"小沙河\";\"other\"\n\"2046561\";\"小沙河乡\";\"other\"\n\"2047368\";\"Donglai\";\"main\"\n\"2047368\";\"Donglai Xiang\";\"other\"\n\"2047368\";\"东来\";\"other\"\n\"2047368\";\"东来乡\";\"other\"\n\"2051050\";\"Tongfosi\";\"main\"\n\"2051050\";\"Tongfosi Zhen\";\"other\"\n\"2051050\";\"铜佛寺\";\"other\"\n\"2051050\";\"铜佛寺镇\";\"other\"\n\"2051052\";\"Erdao\";\"main\"\n\"2051052\";\"Erdaogou\";\"other\"\n\"2051052\";\"Xicheng Zhen\";\"other\"\n\"2051052\";\"二道\";\"other\"\n\"2051052\";\"西城镇\";\"other\"\n\"2051074\";\"Erdaopaozi\";\"main\"\n\"2051074\";\"Jingxin Zhen\";\"other\"\n\"2051074\";\"二道泡子\";\"other\"\n\"2051074\";\"敬信镇\";\"other\"\n\"2051080\";\"Weishahe\";\"main\"\n\"2051080\";\"Wei-sha-ho\";\"other\"\n\"2051080\";\"Weishahe Xiang\";\"other\"\n\"2051080\";\"Weishahe Zhen\";\"other\"\n\"2051080\";\"苇沙河\";\"other\"\n\"2051080\";\"苇沙河镇\";\"other\"\n\"2051187\";\"Xiangrong\";\"main\"\n\"2051187\";\"Longtan Zhen\";\"other\"\n\"2051187\";\"long tan zhen\";\"other\"\n\"2051187\";\"xiang rong\";\"other\"\n\"2051187\";\"相荣\";\"other\"\n\"2051187\";\"龙潭镇\";\"other\"\n\"2052242\";\"Jiulong\";\"main\"\n\"2052242\";\"I-lan-kou\";\"other\"\n\"2052242\";\"Yilan Zhen\";\"other\"\n\"2052242\";\"九龙\";\"other\"\n\"2052242\";\"依兰镇\";\"other\"\n\"2052321\";\"Quliushu\";\"main\"\n\"2052321\";\"Baoshan Zhen\";\"other\"\n\"2052321\";\"宝山镇\";\"other\"\n\"2052321\";\"曲柳树\";\"other\"\n\"2052327\";\"Baoquanshan\";\"main\"\n\"2052327\";\"Baoquanshan Zhen\";\"other\"\n\"2052327\";\"宝泉山\";\"other\"\n\"2052327\";\"宝泉山镇\";\"other\"\n\"2052454\";\"Maxian\";\"main\"\n\"2052454\";\"Maxian Xiang\";\"other\"\n\"2052454\";\"麻线\";\"other\"\n\"2052454\";\"麻线乡\";\"other\"\n\"2053099\";\"Xinxigang\";\"main\"\n\"2053099\";\"Xigang Xiang\";\"other\"\n\"2053099\";\"新西岗\";\"other\"\n\"2053099\";\"西岗乡\";\"other\"\n\"2053105\";\"Xinglong\";\"main\"\n\"2053105\";\"Xinglong Xiang\";\"other\"\n\"2053105\";\"兴隆乡\";\"other\"\n\"2053105\";\"兴龙\";\"other\"\n\"2053106\";\"Songjiao\";\"main\"\n\"2053106\";\"Songjiao Xiang\";\"other\"\n\"2053106\";\"松郊\";\"other\"\n\"2053106\";\"松郊乡\";\"other\"\n\"2053223\";\"Zhongxiao\";\"main\"\n\"2053223\";\"Zhongxiao Zhen\";\"other\"\n\"2053223\";\"zhong xiao\";\"other\"\n\"2053223\";\"zhong xiao zhen\";\"other\"\n\"2053223\";\"中小\";\"other\"\n\"2053223\";\"中小镇\";\"other\"\n\"2053233\";\"Dongsi\";\"main\"\n\"2053233\";\"Dongsi Jiedao\";\"other\"\n\"2053233\";\"dong si\";\"other\"\n\"2053233\";\"dong si jie dao\";\"other\"\n\"2053233\";\"东四\";\"other\"\n\"2053233\";\"东四街道\";\"other\"\n\"2053244\";\"Maoqi\";\"main\"\n\"2053244\";\"Maoqi Zhen\";\"other\"\n\"2053244\";\"mao qi\";\"other\"\n\"2053244\";\"mao qi zhen\";\"other\"\n\"2053244\";\"毛祁\";\"other\"\n\"2053244\";\"毛祁镇\";\"other\"\n\"2053253\";\"Xiangtang\";\"main\"\n\"2053253\";\"Xiangtang Jiedao\";\"other\"\n\"2053253\";\"xiang tang\";\"other\"\n\"2053253\";\"xiang tang jie dao\";\"other\"\n\"2053253\";\"响堂\";\"other\"\n\"2053253\";\"响堂街道\";\"other\"\n\"2053260\";\"Pailou\";\"main\"\n\"2053260\";\"Pailou Zhen\";\"other\"\n\"2053260\";\"pai lou\";\"other\"\n\"2053260\";\"pai lou zhen\";\"other\"\n\"2053260\";\"牌楼\";\"other\"\n\"2053260\";\"牌楼镇\";\"other\"\n\"2053424\";\"Wangjiazhuang\";\"main\"\n\"2053424\";\"Wanjia Zhen\";\"other\"\n\"2053424\";\"wan jia zhen\";\"other\"\n\"2053424\";\"wang jia zhuang\";\"other\"\n\"2053424\";\"万家镇\";\"other\"\n\"2053424\";\"王家庄\";\"other\"\n\"2053426\";\"Xidianzi\";\"main\"\n\"2053426\";\"Xidianzi Zhen\";\"other\"\n\"2053426\";\"xi dian zi\";\"other\"\n\"2053426\";\"xi dian zi zhen\";\"other\"\n\"2053426\";\"西甸子\";\"other\"\n\"2053426\";\"西甸子镇\";\"other\"\n\"2053427\";\"Lijiabao\";\"main\"\n\"2053427\";\"Lijiabao Xiang\";\"other\"\n\"2053427\";\"li jia bao\";\"other\"\n\"2053427\";\"li jia bao xiang\";\"other\"\n\"2053427\";\"李家堡\";\"other\"\n\"2053427\";\"李家堡乡\";\"other\"\n\"2053433\";\"Dadianzi\";\"main\"\n\"2053433\";\"Yong'anbao Xiang\";\"other\"\n\"2053433\";\"Yong’anbao Xiang\";\"other\"\n\"2053433\";\"da dian zi\";\"other\"\n\"2053433\";\"yong an bao xiang\";\"other\"\n\"2053433\";\"大甸子\";\"other\"\n\"2053433\";\"永安堡乡\";\"other\"\n\"2053437\";\"Fanjia\";\"main\"\n\"2053437\";\"Fanjia Manzuxiang\";\"other\"\n\"2053437\";\"fan jia\";\"other\"\n\"2053437\";\"fan jia man zu xiang\";\"other\"\n\"2053437\";\"范家\";\"other\"\n\"2053437\";\"范家满族乡\";\"other\"\n\"2053438\";\"Jiabeiyan\";\"main\"\n\"2053438\";\"Jiabeiyang Xiang\";\"other\"\n\"2053438\";\"jia bei yan\";\"other\"\n\"2053438\";\"加碑岩\";\"other\"\n\"2053438\";\"加碑岩乡\";\"other\"\n\"2053444\";\"Guangyudian\";\"main\"\n\"2053444\";\"Gejia Manzuxiang\";\"other\"\n\"2053444\";\"ge jia man zu xiang\";\"other\"\n\"2053444\";\"guang yu dian\";\"other\"\n\"2053444\";\"广裕店\";\"other\"\n\"2053444\";\"葛家满族乡\";\"other\"\n\"2053656\";\"Wanghu\";\"main\"\n\"2053656\";\"Jinxing Zhen\";\"other\"\n\"2053656\";\"jin xing zhen\";\"other\"\n\"2053656\";\"wang hu\";\"other\"\n\"2053656\";\"网户\";\"other\"\n\"2053656\";\"金星镇\";\"other\"\n\"2053835\";\"Futun\";\"main\"\n\"2053835\";\"Futun Xiang\";\"other\"\n\"2053835\";\"fu tun\";\"other\"\n\"2053835\";\"fu tun xiang\";\"other\"\n\"2053835\";\"富屯\";\"other\"\n\"2053835\";\"富屯乡\";\"other\"\n\"2055172\";\"Wangtai\";\"main\"\n\"2055172\";\"Ta-wang-t'ai\";\"other\"\n\"2055172\";\"Ta-wang-t’ai\";\"other\"\n\"2055172\";\"Wangtai Zhen\";\"other\"\n\"2055172\";\"wang tai\";\"other\"\n\"2055172\";\"wang tai zhen\";\"other\"\n\"2055172\";\"望台\";\"other\"\n\"2055172\";\"望台镇\";\"other\"\n\"2055173\";\"Datun\";\"main\"\n\"2055173\";\"Datun Zhen\";\"other\"\n\"2055173\";\"da tun\";\"other\"\n\"2055173\";\"da tun zhen\";\"other\"\n\"2055173\";\"Датун\";\"other\"\n\"2055173\";\"大屯\";\"other\"\n\"2055173\";\"大屯镇\";\"other\"\n\"6421804\";\"Taipingxu\";\"main\"\n\"6421804\";\"Taipingxu Xiang\";\"other\"\n\"6421804\";\"tai ping wei\";\"other\"\n\"6421804\";\"tai ping wei xiang\";\"other\"\n\"6421804\";\"太平圩\";\"other\"\n\"6421804\";\"太平圩乡\";\"other\"\n\"6421809\";\"Tushi\";\"main\"\n\"6421809\";\"Tushi Xiang\";\"other\"\n\"6421809\";\"tu shi\";\"other\"\n\"6421809\";\"tu shi xiang\";\"other\"\n\"6421809\";\"土市\";\"other\"\n\"6421809\";\"土市乡\";\"other\"\n\"6421878\";\"Jiangdong\";\"main\"\n\"6421878\";\"Jiangdong Yaozuxiang\";\"other\"\n\"6421878\";\"jiang dong\";\"other\"\n\"6421878\";\"jiang dong yao zu xiang\";\"other\"\n\"6421878\";\"浆洞\";\"other\"\n\"6421878\";\"浆洞瑶族乡\";\"other\"\n\"6421895\";\"Suocheng\";\"main\"\n\"6421895\";\"Suocheng Zhen\";\"other\"\n\"6421895\";\"suo cheng\";\"other\"\n\"6421895\";\"suo cheng zhen\";\"other\"\n\"6421895\";\"所城\";\"other\"\n\"6421895\";\"所城镇\";\"other\"\n\"6421898\";\"Maojun\";\"main\"\n\"6421898\";\"Maojun Zhen\";\"other\"\n\"6421898\";\"mao jun\";\"other\"\n\"6421898\";\"mao jun zhen\";\"other\"\n\"6421898\";\"毛俊\";\"other\"\n\"6421898\";\"毛俊镇\";\"other\"\n\"6421906\";\"Nanshi\";\"main\"\n\"6421906\";\"Nanshi Zhen\";\"other\"\n\"6421906\";\"nan shi\";\"other\"\n\"6421906\";\"nan shi zhen\";\"other\"\n\"6421906\";\"楠市\";\"other\"\n\"6421906\";\"楠市镇\";\"other\"\n\"6421910\";\"Zhuguansi\";\"main\"\n\"6421910\";\"Zhuguansi Zhen\";\"other\"\n\"6421910\";\"zhu guan si\";\"other\"\n\"6421910\";\"zhu guan si zhen\";\"other\"\n\"6421910\";\"竹管寺\";\"other\"\n\"6421910\";\"竹管寺镇\";\"other\"\n\"6421914\";\"Citangxu\";\"main\"\n\"6421914\";\"Citangxu Xiang\";\"other\"\n\"6421914\";\"ci tang wei\";\"other\"\n\"6421914\";\"ci tang wei xiang\";\"other\"\n\"6421914\";\"祠堂圩\";\"other\"\n\"6421914\";\"祠堂圩乡\";\"other\"\n\"6421923\";\"Huiyuan\";\"main\"\n\"6421923\";\"Huiyuan Yaozuxiang\";\"other\"\n\"6421923\";\"hui yuan\";\"other\"\n\"6421923\";\"hui yuan yao zu xiang\";\"other\"\n\"6421923\";\"汇源\";\"other\"\n\"6421923\";\"汇源瑶族乡\";\"other\"\n\"6421926\";\"Litou\";\"main\"\n\"6421926\";\"Litou Yaozuxiang\";\"other\"\n\"6421926\";\"li tou\";\"other\"\n\"6421926\";\"li tou yao zu xiang\";\"other\"\n\"6421926\";\"犁头\";\"other\"\n\"6421926\";\"犁头瑶族乡\";\"other\"\n\"6421994\";\"Shunling\";\"main\"\n\"6421994\";\"Shunling Zhen\";\"other\"\n\"6421994\";\"shun ling\";\"other\"\n\"6421994\";\"shun ling zhen\";\"other\"\n\"6421994\";\"舜陵\";\"other\"\n\"6421994\";\"舜陵镇\";\"other\"\n\"6422000\";\"Tiantang\";\"main\"\n\"6422000\";\"Tiantang Zhen\";\"other\"\n\"6422000\";\"tian tang\";\"other\"\n\"6422000\";\"tian tang zhen\";\"other\"\n\"6422000\";\"天堂\";\"other\"\n\"6422000\";\"天堂镇\";\"other\"\n\"6422002\";\"Zhonghe\";\"main\"\n\"6422002\";\"Zhonghe Zhen\";\"other\"\n\"6422002\";\"zhong he\";\"other\"\n\"6422002\";\"zhong he zhen\";\"other\"\n\"6422002\";\"中和\";\"other\"\n\"6422002\";\"中和镇\";\"other\"\n\"6422003\";\"Mianhuaping\";\"main\"\n\"6422003\";\"Mianhuaping Yaozuxiang\";\"other\"\n\"6422003\";\"mian hua ping\";\"other\"\n\"6422003\";\"mian hua ping yao zu xiang\";\"other\"\n\"6422003\";\"棉花坪\";\"other\"\n\"6422003\";\"棉花坪瑶族乡\";\"other\"\n\"6422011\";\"Jingzhu\";\"main\"\n\"6422011\";\"Jingzhu Yaozuxiang\";\"other\"\n\"6422011\";\"jing zhu\";\"other\"\n\"6422011\";\"jing zhu yao zu xiang\";\"other\"\n\"6422011\";\"荆竹\";\"other\"\n\"6422011\";\"荆竹瑶族乡\";\"other\"\n\"6422015\";\"Daqiao\";\"main\"\n\"6422015\";\"Daqiao Yaozuxiang\";\"other\"\n\"6422015\";\"da qiao\";\"other\"\n\"6422015\";\"da qiao yao zu xiang\";\"other\"\n\"6422015\";\"大桥\";\"other\"\n\"6422015\";\"大桥瑶族乡\";\"other\"\n\"6422018\";\"Ziliang\";\"main\"\n\"6422018\";\"Ziliang Yaozuxiang\";\"other\"\n\"6422018\";\"zi liang\";\"other\"\n\"6422018\";\"zi liang yao zu xiang\";\"other\"\n\"6422018\";\"紫良\";\"other\"\n\"6422018\";\"紫良瑶族乡\";\"other\"\n\"6422035\";\"Jiuyi\";\"main\"\n\"6422035\";\"Jiuyi Yaozuxiang\";\"other\"\n\"6422035\";\"jiu yi\";\"other\"\n\"6422035\";\"jiu yi yao zu xiang\";\"other\"\n\"6422035\";\"九疑\";\"other\"\n\"6422035\";\"九疑瑶族乡\";\"other\"\n\"6422077\";\"Shuishi\";\"main\"\n\"6422077\";\"Shuishi Zhen\";\"other\"\n\"6422077\";\"shui shi\";\"other\"\n\"6422077\";\"shui shi zhen\";\"other\"\n\"6422077\";\"水市\";\"other\"\n\"6422077\";\"水市镇\";\"other\"\n\"6422078\";\"Renhe\";\"main\"\n\"6422078\";\"Renhe Zhen\";\"other\"\n\"6422078\";\"ren he\";\"other\"\n\"6422078\";\"ren he zhen\";\"other\"\n\"6422078\";\"仁和\";\"other\"\n\"6422078\";\"仁和镇\";\"other\"\n\"6422079\";\"Heting\";\"main\"\n\"6422079\";\"Heting Zhen\";\"other\"\n\"6422079\";\"he ting\";\"other\"\n\"6422079\";\"he ting zhen\";\"other\"\n\"6422079\";\"禾亭\";\"other\"\n\"6422079\";\"禾亭镇\";\"other\"\n\"6422080\";\"Taiping\";\"main\"\n\"6422080\";\"Taiping Zhen\";\"other\"\n\"6422080\";\"tai ping\";\"other\"\n\"6422080\";\"tai ping zhen\";\"other\"\n\"6422080\";\"太平\";\"other\"\n\"6422080\";\"太平镇\";\"other\"\n\"6422081\";\"Bao’an\";\"main\"\n\"6422081\";\"Bao'an\";\"ascii\"\n\"6422081\";\"Bao'an Xiang\";\"other\"\n\"6422081\";\"Bao’an Xiang\";\"other\"\n\"6422081\";\"bao an\";\"other\"\n\"6422081\";\"bao an xiang\";\"other\"\n\"6422081\";\"保安\";\"other\"\n\"6422081\";\"保安乡\";\"other\"\n\"6422082\";\"Jinpenxu\";\"main\"\n\"6422082\";\"Jinpenxu Xiang\";\"other\"\n\"6422082\";\"jin pen wei\";\"other\"\n\"6422082\";\"jin pen wei xiang\";\"other\"\n\"6422082\";\"金盆圩\";\"other\"\n\"6422082\";\"金盆圩乡\";\"other\"\n\"6422083\";\"Shizi\";\"main\"\n\"6422083\";\"Shizi Xiang\";\"other\"\n\"6422083\";\"shi zi\";\"other\"\n\"6422083\";\"shi zi xiang\";\"other\"\n\"6422083\";\"十字\";\"other\"\n\"6422083\";\"十字乡\";\"other\"\n\"6422084\";\"Jiantou\";\"main\"\n\"6422084\";\"Jiantou Zhen\";\"other\"\n\"6422084\";\"jian tou\";\"other\"\n\"6422084\";\"jian tou zhen\";\"other\"\n\"6422084\";\"枧头\";\"other\"\n\"6422084\";\"枧头镇\";\"other\"\n\"6422085\";\"Sanjing\";\"main\"\n\"6422085\";\"Sanjing Xiang\";\"other\"\n\"6422085\";\"san jing\";\"other\"\n\"6422085\";\"san jing xiang\";\"other\"\n\"6422085\";\"三井\";\"other\"\n\"6422085\";\"三井乡\";\"other\"\n\"6422086\";\"Shiyang\";\"main\"\n\"6422086\";\"Shiyang Zhen\";\"other\"\n\"6422086\";\"shi yang\";\"other\"\n\"6422086\";\"shi yang zhen\";\"other\"\n\"6422086\";\"石羊\";\"other\"\n\"6422086\";\"石羊镇\";\"other\"\n\"6422088\";\"Longquan\";\"main\"\n\"6422088\";\"Longquan Zhen\";\"other\"\n\"6422088\";\"long quan\";\"other\"\n\"6422088\";\"long quan zhen\";\"other\"\n\"6422088\";\"龙泉\";\"other\"\n\"6422088\";\"龙泉镇\";\"other\"\n\"6422089\";\"Lianhua\";\"main\"\n\"6422089\";\"Lianhua Xiang\";\"other\"\n\"6422089\";\"lian hua\";\"other\"\n\"6422089\";\"lian hua xiang\";\"other\"\n\"6422089\";\"莲花\";\"other\"\n\"6422089\";\"莲花乡\";\"other\"\n\"6422090\";\"Jicun\";\"main\"\n\"6422090\";\"Jicun Zhen\";\"other\"\n\"6422090\";\"ji cun\";\"other\"\n\"6422090\";\"ji cun zhen\";\"other\"\n\"6422090\";\"骥村\";\"other\"\n\"6422090\";\"骥村镇\";\"other\"\n\"6422091\";\"Maoli\";\"main\"\n\"6422091\";\"Maoli Xiang\";\"other\"\n\"6422091\";\"mao li\";\"other\"\n\"6422091\";\"mao li xiang\";\"other\"\n\"6422091\";\"毛里\";\"other\"\n\"6422091\";\"毛里乡\";\"other\"\n\"6422092\";\"Lixi\";\"main\"\n\"6422092\";\"Lixi Zhen\";\"other\"\n\"6422092\";\"li xi\";\"other\"\n\"6422092\";\"li xi zhen\";\"other\"\n\"6422092\";\"鲤溪\";\"other\"\n\"6422092\";\"鲤溪镇\";\"other\"\n\"6422100\";\"Xinlong\";\"main\"\n\"6422100\";\"Xinlong Zhen\";\"other\"\n\"6422100\";\"xin long\";\"other\"\n\"6422100\";\"xin long zhen\";\"other\"\n\"6422100\";\"新隆\";\"other\"\n\"6422100\";\"新隆镇\";\"other\"\n\"6422104\";\"Gaoshan\";\"main\"\n\"6422104\";\"Gaoshan Xiang\";\"other\"\n\"6422104\";\"gao shan\";\"other\"\n\"6422104\";\"gao shan xiang\";\"other\"\n\"6422104\";\"高山\";\"other\"\n\"6422104\";\"高山乡\";\"other\"\n\"6422105\";\"Zhishiping\";\"main\"\n\"6422105\";\"Zhishiping Xiang\";\"other\"\n\"6422105\";\"zhi shi ping\";\"other\"\n\"6422105\";\"zhi shi ping xiang\";\"other\"\n\"6422105\";\"知市坪\";\"other\"\n\"6422105\";\"知市坪乡\";\"other\"\n\"6422108\";\"Dapingtang\";\"main\"\n\"6422108\";\"Dapingtang Xiang\";\"other\"\n\"6422108\";\"da ping tang\";\"other\"\n\"6422108\";\"da ping tang xiang\";\"other\"\n\"6422108\";\"大坪塘\";\"other\"\n\"6422108\";\"大坪塘乡\";\"other\"\n\"6422110\";\"Maojia\";\"main\"\n\"6422110\";\"Maojia Xiang\";\"other\"\n\"6422110\";\"mao jia\";\"other\"\n\"6422110\";\"mao jia xiang\";\"other\"\n\"6422110\";\"茂家\";\"other\"\n\"6422110\";\"茂家乡\";\"other\"\n\"6422115\";\"Xinxu\";\"main\"\n\"6422115\";\"Xinxu Zhen\";\"other\"\n\"6422115\";\"xin wei\";\"other\"\n\"6422115\";\"xin wei zhen\";\"other\"\n\"6422115\";\"新圩\";\"other\"\n\"6422115\";\"新圩镇\";\"other\"\n\"6422119\";\"Taoling\";\"main\"\n\"6422119\";\"Taoling Xiang\";\"other\"\n\"6422119\";\"tao ling\";\"other\"\n\"6422119\";\"tao ling xiang\";\"other\"\n\"6422119\";\"陶玲\";\"other\"\n\"6422119\";\"陶玲乡\";\"other\"\n\"6422126\";\"Wanjing\";\"main\"\n\"6422126\";\"Wanjing Zhen\";\"other\"\n\"6422126\";\"wan jing\";\"other\"\n\"6422126\";\"wan jing zhen\";\"other\"\n\"6422126\";\"湾井\";\"other\"\n\"6422126\";\"湾井镇\";\"other\"\n\"6422127\";\"Lengshui\";\"main\"\n\"6422127\";\"Lengshui Zhen\";\"other\"\n\"6422127\";\"leng shui\";\"other\"\n\"6422127\";\"leng shui zhen\";\"other\"\n\"6422127\";\"冷水\";\"other\"\n\"6422127\";\"冷水镇\";\"other\"\n\"6422128\";\"Qingshuiqiao\";\"main\"\n\"6422128\";\"Qingshuiqiao Zhen\";\"other\"\n\"6422128\";\"qing shui qiao\";\"other\"\n\"6422128\";\"qing shui qiao zhen\";\"other\"\n\"6422128\";\"清水桥\";\"other\"\n\"6422128\";\"清水桥镇\";\"other\"\n\"6422129\";\"Baijiaping\";\"main\"\n\"6422129\";\"Baijiaping Zhen\";\"other\"\n\"6422129\";\"bai jia ping\";\"other\"\n\"6422129\";\"bai jia ping zhen\";\"other\"\n\"6422129\";\"柏家坪\";\"other\"\n\"6422129\";\"柏家坪镇\";\"other\"\n\"6422130\";\"Tongmuluo\";\"main\"\n\"6422130\";\"Tongmuluo Yaozuxiang\";\"other\"\n\"6422130\";\"tong mu lei\";\"other\"\n\"6422130\";\"tong mu lei yao zu xiang\";\"other\"\n\"6422130\";\"桐木漯\";\"other\"\n\"6422130\";\"桐木漯瑶族乡\";\"other\"\n\"6422131\";\"Huangtang\";\"main\"\n\"6422131\";\"Huangtang Yaozuxiang\";\"other\"\n\"6422131\";\"huang tang\";\"other\"\n\"6422131\";\"huang tang yao zu xiang\";\"other\"\n\"6422131\";\"荒塘\";\"other\"\n\"6422131\";\"荒塘瑶族乡\";\"other\"\n\"6422132\";\"Lengshuijing\";\"main\"\n\"6422132\";\"Lengshuijing Xiang\";\"other\"\n\"6422132\";\"leng shui jing\";\"other\"\n\"6422132\";\"leng shui jing xiang\";\"other\"\n\"6422132\";\"冷水井\";\"other\"\n\"6422132\";\"冷水井乡\";\"other\"\n\"6422142\";\"Jinling\";\"main\"\n\"6422142\";\"Jinling Zhen\";\"other\"\n\"6422142\";\"jin ling\";\"other\"\n\"6422142\";\"jin ling zhen\";\"other\"\n\"6422142\";\"金陵\";\"other\"\n\"6422142\";\"金陵镇\";\"other\"\n\"6422144\";\"Menlouxia\";\"main\"\n\"6422144\";\"Menlouxia Yaozuxiang\";\"other\"\n\"6422144\";\"men lou xia\";\"other\"\n\"6422144\";\"men lou xia yao zu xiang\";\"other\"\n\"6422144\";\"门楼下\";\"other\"\n\"6422144\";\"门楼下瑶族乡\";\"other\"\n\"6422308\";\"Xinxu\";\"main\"\n\"6422308\";\"Xinxu Zhen\";\"other\"\n\"6422308\";\"xin wei\";\"other\"\n\"6422308\";\"xin wei zhen\";\"other\"\n\"6422308\";\"新圩\";\"other\"\n\"6422308\";\"新圩镇\";\"other\"\n\"6422309\";\"Yongjiang\";\"main\"\n\"6422309\";\"Yongjiang Xiang\";\"other\"\n\"6422309\";\"yong jiang\";\"other\"\n\"6422309\";\"yong jiang xiang\";\"other\"\n\"6422309\";\"永江\";\"other\"\n\"6422309\";\"永江乡\";\"other\"\n\"6422310\";\"Hejiadong\";\"main\"\n\"6422310\";\"Hejia\";\"other\"\n\"6422310\";\"Hejiadong Xiang\";\"other\"\n\"6422310\";\"he jia dong\";\"other\"\n\"6422310\";\"he jia dong xiang\";\"other\"\n\"6422310\";\"何家洞\";\"other\"\n\"6422310\";\"何家洞乡\";\"other\"\n\"6422311\";\"Tangdi\";\"main\"\n\"6422311\";\"Tangdi Xiang\";\"other\"\n\"6422311\";\"tang di\";\"other\"\n\"6422311\";\"tang di xiang\";\"other\"\n\"6422311\";\"塘底\";\"other\"\n\"6422311\";\"塘底乡\";\"other\"\n\"6422312\";\"Shangrenli\";\"main\"\n\"6422312\";\"Shangrenli Xiang\";\"other\"\n\"6422312\";\"shang ren li\";\"other\"\n\"6422312\";\"shang ren li xiang\";\"other\"\n\"6422312\";\"尚仁里\";\"other\"\n\"6422312\";\"尚仁里乡\";\"other\"\n\"6422318\";\"Shangwujiang\";\"main\"\n\"6422318\";\"Shangwujiang Yaozuxiang\";\"other\"\n\"6422318\";\"shang wu jiang\";\"other\"\n\"6422318\";\"shang wu jiang yao zu xiang\";\"other\"\n\"6422318\";\"上梧江\";\"other\"\n\"6422318\";\"上梧江瑶族乡\";\"other\"\n\"6422322\";\"Majiang\";\"main\"\n\"6422322\";\"Majiang Xiang\";\"other\"\n\"6422322\";\"ma jiang\";\"other\"\n\"6422322\";\"ma jiang xiang\";\"other\"\n\"6422322\";\"麻江\";\"other\"\n\"6422322\";\"麻江乡\";\"other\"\n\"6422327\";\"Jiangcun\";\"main\"\n\"6422327\";\"Jiangcun Zhen\";\"other\"\n\"6422327\";\"jiang cun\";\"other\"\n\"6422327\";\"jiang cun zhen\";\"other\"\n\"6422327\";\"江村\";\"other\"\n\"6422327\";\"江村镇\";\"other\"\n\"6422332\";\"Xianzijiao\";\"main\"\n\"6422332\";\"Xianzijiao Zhen\";\"other\"\n\"6422332\";\"xian zi jiao\";\"other\"\n\"6422332\";\"xian zi jiao zhen\";\"other\"\n\"6422332\";\"仙子脚\";\"other\"\n\"6422332\";\"仙子脚镇\";\"other\"\n\"6422333\";\"Qiaotou\";\"main\"\n\"6422333\";\"Qiaotou Xiang\";\"other\"\n\"6422333\";\"qiao tou\";\"other\"\n\"6422333\";\"qiao tou xiang\";\"other\"\n\"6422333\";\"桥头\";\"other\"\n\"6422333\";\"桥头乡\";\"other\"\n\"6422362\";\"Lijiaping\";\"main\"\n\"6422362\";\"Lijiaping Xiang\";\"other\"\n\"6422362\";\"li jia ping\";\"other\"\n\"6422362\";\"li jia ping xiang\";\"other\"\n\"6422362\";\"理家坪\";\"other\"\n\"6422362\";\"理家坪乡\";\"other\"\n\"6422363\";\"Lefutang\";\"main\"\n\"6422363\";\"Lefutang Xiang\";\"other\"\n\"6422363\";\"le fu tang\";\"other\"\n\"6422363\";\"le fu tang xiang\";\"other\"\n\"6422363\";\"乐福堂\";\"other\"\n\"6422363\";\"乐福堂乡\";\"other\"\n\"6422366\";\"Meihua\";\"main\"\n\"6422366\";\"Meihua Zhen\";\"other\"\n\"6422366\";\"mei hua\";\"other\"\n\"6422366\";\"mei hua zhen\";\"other\"\n\"6422366\";\"梅花\";\"other\"\n\"6422366\";\"梅花镇\";\"other\"\n\"6422371\";\"Shouyan\";\"main\"\n\"6422371\";\"Shouyan Zhen\";\"other\"\n\"6422371\";\"shou yan\";\"other\"\n\"6422371\";\"shou yan zhen\";\"other\"\n\"6422371\";\"寿雁\";\"other\"\n\"6422371\";\"寿雁镇\";\"other\"\n\"6422372\";\"Qingtang\";\"main\"\n\"6422372\";\"Qingtang Zhen\";\"other\"\n\"6422372\";\"qing tang\";\"other\"\n\"6422372\";\"qing tang zhen\";\"other\"\n\"6422372\";\"清塘\";\"other\"\n\"6422372\";\"清塘镇\";\"other\"\n\"6422373\";\"Xinche\";\"main\"\n\"6422373\";\"Xinche Xiang\";\"other\"\n\"6422373\";\"xin che\";\"other\"\n\"6422373\";\"xin che xiang\";\"other\"\n\"6422373\";\"新车\";\"other\"\n\"6422373\";\"新车乡\";\"other\"\n\"6422389\";\"Daojiang\";\"main\"\n\"6422389\";\"Daojiang Zhen\";\"other\"\n\"6422389\";\"dao jiang\";\"other\"\n\"6422389\";\"dao jiang zhen\";\"other\"\n\"6422389\";\"道江\";\"other\"\n\"6422389\";\"道江镇\";\"other\"\n\"6422402\";\"Dongmen\";\"main\"\n\"6422402\";\"Dongmen Xiang\";\"other\"\n\"6422402\";\"dong men\";\"other\"\n\"6422402\";\"dong men xiang\";\"other\"\n\"6422402\";\"东门\";\"other\"\n\"6422402\";\"东门乡\";\"other\"\n\"6422403\";\"Wanjiazhuang\";\"main\"\n\"6422403\";\"Wanjiazhuang Xiang\";\"other\"\n\"6422403\";\"wan jia zhuang\";\"other\"\n\"6422403\";\"wan jia zhuang xiang\";\"other\"\n\"6422403\";\"万家庄\";\"other\"\n\"6422403\";\"万家庄乡\";\"other\"\n\"6422502\";\"Xianglinpu\";\"main\"\n\"6422502\";\"Xianglinpu Zhen\";\"other\"\n\"6422502\";\"xiang lin pu\";\"other\"\n\"6422502\";\"xiang lin pu zhen\";\"other\"\n\"6422502\";\"祥霖铺\";\"other\"\n\"6422502\";\"祥霖铺镇\";\"other\"\n\"6422514\";\"Shenzhangtang\";\"main\"\n\"6422514\";\"Shenzhangtang Yaozuxiang\";\"other\"\n\"6422514\";\"shen zhang tang\";\"other\"\n\"6422514\";\"shen zhang tang yao zu xiang\";\"other\"\n\"6422514\";\"审章塘\";\"other\"\n\"6422514\";\"审章塘瑶族乡\";\"other\"\n\"6422517\";\"Jingtang\";\"main\"\n\"6422517\";\"Jingtang Yaozuxiang\";\"other\"\n\"6422517\";\"jing tang\";\"other\"\n\"6422517\";\"jing tang yao zu xiang\";\"other\"\n\"6422517\";\"井塘\";\"other\"\n\"6422517\";\"井塘瑶族乡\";\"other\"\n\"6422520\";\"Gongba\";\"main\"\n\"6422520\";\"Gongba Zhen\";\"other\"\n\"6422520\";\"gong ba\";\"other\"\n\"6422520\";\"gong ba zhen\";\"other\"\n\"6422520\";\"蚣坝\";\"other\"\n\"6422520\";\"蚣坝镇\";\"other\"\n\"6422521\";\"Hengling\";\"main\"\n\"6422521\";\"Hengling Yaozuxiang\";\"other\"\n\"6422521\";\"heng ling\";\"other\"\n\"6422521\";\"heng ling yao zu xiang\";\"other\"\n\"6422521\";\"横岭\";\"other\"\n\"6422521\";\"横岭瑶族乡\";\"other\"\n\"6422525\";\"Shangguan\";\"main\"\n\"6422525\";\"Shangguan Xiang\";\"other\"\n\"6422525\";\"shang guan\";\"other\"\n\"6422525\";\"shang guan xiang\";\"other\"\n\"6422525\";\"上关\";\"other\"\n\"6422525\";\"上关乡\";\"other\"\n\"6422808\";\"Baimadu\";\"main\"\n\"6422808\";\"Baimadu Zhen\";\"other\"\n\"6422808\";\"bai ma du\";\"other\"\n\"6422808\";\"bai ma du zhen\";\"other\"\n\"6422808\";\"白马渡\";\"other\"\n\"6422808\";\"白马渡镇\";\"other\"\n\"6422832\";\"Baimangpu\";\"main\"\n\"6422832\";\"Baimangpu Xiang\";\"other\"\n\"6422832\";\"bai mang pu\";\"other\"\n\"6422832\";\"bai mang pu xiang\";\"other\"\n\"6422832\";\"白芒铺\";\"other\"\n\"6422832\";\"白芒铺乡\";\"other\"\n\"6422836\";\"Ganziyuan\";\"main\"\n\"6422836\";\"Ganziyuan Xiang\";\"other\"\n\"6422836\";\"gan zi yuan\";\"other\"\n\"6422836\";\"gan zi yuan xiang\";\"other\"\n\"6422836\";\"柑子园\";\"other\"\n\"6422836\";\"柑子园乡\";\"other\"\n\"6422849\";\"Simaqiao\";\"main\"\n\"6422849\";\"Simaqiao Zhen\";\"other\"\n\"6422849\";\"si ma qiao\";\"other\"\n\"6422849\";\"si ma qiao zhen\";\"other\"\n\"6422849\";\"四马桥\";\"other\"\n\"6422849\";\"四马桥镇\";\"other\"\n\"6422854\";\"Futang\";\"main\"\n\"6422854\";\"Futang Xiang\";\"other\"\n\"6422854\";\"fu tang\";\"other\"\n\"6422854\";\"fu tang xiang\";\"other\"\n\"6422854\";\"富塘\";\"other\"\n\"6422854\";\"富塘乡\";\"other\"\n\"6422866\";\"Hongtangying\";\"main\"\n\"6422866\";\"Hongtangying Yaozuxiang\";\"other\"\n\"6422866\";\"hong tang ying\";\"other\"\n\"6422866\";\"hong tang ying yao zu xiang\";\"other\"\n\"6422866\";\"洪塘营\";\"other\"\n\"6422866\";\"洪塘营瑶族乡\";\"other\"\n\"6422874\";\"Cushijiang\";\"main\"\n\"6422874\";\"Cushijiang Zhen\";\"other\"\n\"6422874\";\"cu shi jiang\";\"other\"\n\"6422874\";\"cu shi jiang zhen\";\"other\"\n\"6422874\";\"粗石江\";\"other\"\n\"6422874\";\"粗石江镇\";\"other\"\n\"6422875\";\"Yuankou\";\"main\"\n\"6422875\";\"Yuankou Yaozuxiang\";\"other\"\n\"6422875\";\"yuan kou\";\"other\"\n\"6422875\";\"yuan kou yao zu xiang\";\"other\"\n\"6422875\";\"源口\";\"other\"\n\"6422875\";\"源口瑶族乡\";\"other\"\n\"6422882\";\"Taochuan\";\"main\"\n\"6422882\";\"Taochuan Zhen\";\"other\"\n\"6422882\";\"tao chuan\";\"other\"\n\"6422882\";\"tao chuan zhen\";\"other\"\n\"6422882\";\"桃川\";\"other\"\n\"6422882\";\"桃川镇\";\"other\"\n\"6422902\";\"Lanxi\";\"main\"\n\"6422902\";\"Lanxi Yaozuxiang\";\"other\"\n\"6422902\";\"lan xi\";\"other\"\n\"6422902\";\"lan xi yao zu xiang\";\"other\"\n\"6422902\";\"兰溪\";\"other\"\n\"6422902\";\"兰溪瑶族乡\";\"other\"\n\"6422903\";\"Xiacengpu\";\"main\"\n\"6422903\";\"Xiacengpu Zhen\";\"other\"\n\"6422903\";\"xia ceng pu\";\"other\"\n\"6422903\";\"xia ceng pu zhen\";\"other\"\n\"6422903\";\"夏层铺\";\"other\"\n\"6422903\";\"夏层铺镇\";\"other\"\n\"6422929\";\"Qianjiadong\";\"main\"\n\"6422929\";\"Qianjiadong Yaozuxiang\";\"other\"\n\"6422929\";\"qian jia tong\";\"other\"\n\"6422929\";\"qian jia tong yao zu xiang\";\"other\"\n\"6422929\";\"千家峒\";\"other\"\n\"6422929\";\"千家峒瑶族乡\";\"other\"\n\"6422945\";\"Shangjiangxu\";\"main\"\n\"6422945\";\"Shangjiangxu Zhen\";\"other\"\n\"6422945\";\"shang jiang wei\";\"other\"\n\"6422945\";\"shang jiang wei zhen\";\"other\"\n\"6422945\";\"上江圩\";\"other\"\n\"6422945\";\"上江圩镇\";\"other\"\n\"6422953\";\"Yunshan\";\"main\"\n\"6422953\";\"Yunshan Zhen\";\"other\"\n\"6422953\";\"yun shan\";\"other\"\n\"6422953\";\"yun shan zhen\";\"other\"\n\"6422953\";\"允山\";\"other\"\n\"6422953\";\"允山镇\";\"other\"\n\"6422958\";\"Xiaopu\";\"main\"\n\"6422958\";\"Xiaopu Zhen\";\"other\"\n\"6422958\";\"xiao pu\";\"other\"\n\"6422958\";\"xiao pu zhen\";\"other\"\n\"6422958\";\"潇浦\";\"other\"\n\"6422958\";\"潇浦镇\";\"other\"\n\"6422963\";\"Huangjialing\";\"main\"\n\"6422963\";\"Huangjialing Xiang\";\"other\"\n\"6422963\";\"huang jia ling\";\"other\"\n\"6422963\";\"huang jia ling xiang\";\"other\"\n\"6422963\";\"黄甲岭\";\"other\"\n\"6422963\";\"黄甲岭乡\";\"other\"\n\"6422971\";\"Huilongxu\";\"main\"\n\"6422971\";\"Huilongxu Zhen\";\"other\"\n\"6422971\";\"hui long wei\";\"other\"\n\"6422971\";\"hui long wei zhen\";\"other\"\n\"6422971\";\"回龙圩\";\"other\"\n\"6422971\";\"回龙圩镇\";\"other\"\n\"6423001\";\"Songbo\";\"main\"\n\"6423001\";\"Songbo Yaozuxiang\";\"other\"\n\"6423001\";\"song bai\";\"other\"\n\"6423001\";\"song bai yao zu xiang\";\"other\"\n\"6423001\";\"松柏\";\"other\"\n\"6423001\";\"松柏瑶族乡\";\"other\"\n\"6423003\";\"Qiaotou\";\"main\"\n\"6423003\";\"Qiaotou Zhen\";\"other\"\n\"6423003\";\"qiao tou\";\"other\"\n\"6423003\";\"qiao tou zhen\";\"other\"\n\"6423003\";\"桥头\";\"other\"\n\"6423003\";\"桥头镇\";\"other\"\n\"6423008\";\"Jiepai\";\"main\"\n\"6423008\";\"Jiepai Xiang\";\"other\"\n\"6423008\";\"jie pai\";\"other\"\n\"6423008\";\"jie pai xiang\";\"other\"\n\"6423008\";\"界牌\";\"other\"\n\"6423008\";\"界牌乡\";\"other\"\n\"6423024\";\"Dongtian\";\"main\"\n\"6423024\";\"Dongtian Zhen\";\"other\"\n\"6423024\";\"dong tian\";\"other\"\n\"6423024\";\"dong tian zhen\";\"other\"\n\"6423024\";\"东田\";\"other\"\n\"6423024\";\"东田镇\";\"other\"\n\"6423036\";\"Wujiang\";\"main\"\n\"6423036\";\"Wujiang Xiang\";\"other\"\n\"6423036\";\"wu jiang\";\"other\"\n\"6423036\";\"wu jiang xiang\";\"other\"\n\"6423036\";\"务江\";\"other\"\n\"6423036\";\"务江乡\";\"other\"\n\"6423041\";\"Dalupu\";\"main\"\n\"6423041\";\"Dalupu Zhen\";\"other\"\n\"6423041\";\"da lu pu\";\"other\"\n\"6423041\";\"da lu pu zhen\";\"other\"\n\"6423041\";\"大路铺\";\"other\"\n\"6423041\";\"大路铺镇\";\"other\"\n\"6423046\";\"Qiaoshi\";\"main\"\n\"6423046\";\"Qiaoshi Xiang\";\"other\"\n\"6423046\";\"qiao shi\";\"other\"\n\"6423046\";\"qiao shi xiang\";\"other\"\n\"6423046\";\"桥市\";\"other\"\n\"6423046\";\"桥市乡\";\"other\"\n\"6423047\";\"Huajiang\";\"main\"\n\"6423047\";\"Huajiang Xiang\";\"other\"\n\"6423047\";\"花江乡\";\"other\"\n\"6423050\";\"Xiangjiang\";\"main\"\n\"6423050\";\"Xiangjiang Xiang\";\"other\"\n\"6423050\";\"xiang jiang\";\"other\"\n\"6423050\";\"xiang jiang xiang\";\"other\"\n\"6423050\";\"湘江\";\"other\"\n\"6423050\";\"湘江乡\";\"other\"\n\"6643953\";\"Yangla\";\"main\"\n\"6643953\";\"Yangla Xiang\";\"other\"\n\"6643953\";\"yang la\";\"other\"\n\"6643953\";\"yang la xiang\";\"other\"\n\"6643953\";\"羊拉\";\"other\"\n\"6643953\";\"羊拉乡\";\"other\"\n\"6643959\";\"Foshan\";\"main\"\n\"6643959\";\"Foshan Xiang\";\"other\"\n\"6643959\";\"fu shan\";\"other\"\n\"6643959\";\"fu shan xiang\";\"other\"\n\"6643959\";\"佛山\";\"other\"\n\"6643959\";\"佛山乡\";\"other\"\n\"6643960\";\"Dongwang\";\"main\"\n\"6643960\";\"Dongwang Xiang\";\"other\"\n\"6643960\";\"dong wang\";\"other\"\n\"6643960\";\"dong wang xiang\";\"other\"\n\"6643960\";\"东旺\";\"other\"\n\"6643960\";\"东旺乡\";\"other\"\n\"6643961\";\"Yanmen\";\"main\"\n\"6643961\";\"Yanmen Xiang\";\"other\"\n\"6643961\";\"yan men\";\"other\"\n\"6643961\";\"yan men xiang\";\"other\"\n\"6643961\";\"燕门\";\"other\"\n\"6643961\";\"燕门乡\";\"other\"\n\"6643962\";\"Yunling\";\"main\"\n\"6643962\";\"Yunling Xiang\";\"other\"\n\"6643962\";\"yun ling\";\"other\"\n\"6643962\";\"yun ling xiang\";\"other\"\n\"6643962\";\"云岭\";\"other\"\n\"6643962\";\"云岭乡\";\"other\"\n\"6643963\";\"Benzilan\";\"main\"\n\"6643963\";\"Benzilan Zhen\";\"other\"\n\"6643963\";\"ben zi lan\";\"other\"\n\"6643963\";\"ben zi lan zhen\";\"other\"\n\"6643963\";\"奔子栏\";\"other\"\n\"6643963\";\"奔子栏镇\";\"other\"\n\"6643964\";\"Xiaruo\";\"main\"\n\"6643964\";\"Xiaruo Lisuzu Xiang\";\"other\"\n\"6643964\";\"xia ruo\";\"other\"\n\"6643964\";\"xia ruo li su zu xiang\";\"other\"\n\"6643964\";\"霞若\";\"other\"\n\"6643964\";\"霞若傈僳族乡\";\"other\"\n\"6643965\";\"Nixi\";\"main\"\n\"6643965\";\"Nixi Xiang\";\"other\"\n\"6643965\";\"ni xi\";\"other\"\n\"6643965\";\"ni xi xiang\";\"other\"\n\"6643965\";\"尼西\";\"other\"\n\"6643965\";\"尼西乡\";\"other\"\n\"6643966\";\"Xiaozhongdian\";\"main\"\n\"6643966\";\"Xiaozhongdian Xiang\";\"other\"\n\"6643966\";\"xiao zhong dian\";\"other\"\n\"6643966\";\"xiao zhong dian xiang\";\"other\"\n\"6643966\";\"小中甸\";\"other\"\n\"6643966\";\"小中甸乡\";\"other\"\n\"6643967\";\"Gezan\";\"main\"\n\"6643967\";\"Gezan Xiang\";\"other\"\n\"6643967\";\"ge zan\";\"other\"\n\"6643967\";\"ge zan xiang\";\"other\"\n\"6643967\";\"格咱\";\"other\"\n\"6643967\";\"格咱乡\";\"other\"\n\"6643968\";\"Badi\";\"main\"\n\"6643968\";\"Badi Xiang\";\"other\"\n\"6643968\";\"ba di\";\"other\"\n\"6643968\";\"ba di xiang\";\"other\"\n\"6643968\";\"巴迪\";\"other\"\n\"6643968\";\"巴迪乡\";\"other\"\n\"6643969\";\"Yezhi\";\"main\"\n\"6643969\";\"Yezhi Zhen\";\"other\"\n\"6643969\";\"ye zhi\";\"other\"\n\"6643969\";\"ye zhi zhen\";\"other\"\n\"6643969\";\"叶枝\";\"other\"\n\"6643969\";\"叶枝镇\";\"other\"\n\"6643970\";\"Tuoding\";\"main\"\n\"6643970\";\"Tuoding Lisuzu Xiang\";\"other\"\n\"6643970\";\"tuo ding\";\"other\"\n\"6643970\";\"tuo ding li su zu xiang\";\"other\"\n\"6643970\";\"拖顶\";\"other\"\n\"6643970\";\"拖顶傈僳族乡\";\"other\"\n\"6643971\";\"Wujing\";\"main\"\n\"6643971\";\"Wujing Xiang\";\"other\"\n\"6643971\";\"wu jing\";\"other\"\n\"6643971\";\"wu jing xiang\";\"other\"\n\"6643971\";\"五境\";\"other\"\n\"6643971\";\"五境乡\";\"other\"\n\"6643972\";\"Kangpu\";\"main\"\n\"6643972\";\"Kangpu Xiang\";\"other\"\n\"6643972\";\"kang pu\";\"other\"\n\"6643972\";\"kang pu xiang\";\"other\"\n\"6643972\";\"康普\";\"other\"\n\"6643972\";\"康普乡\";\"other\"\n\"6644097\";\"Jinniu\";\"main\"\n\"6644097\";\"jin niu\";\"other\"\n\"6644097\";\"金牛\";\"other\"\n\"6644098\";\"Nanzhao\";\"main\"\n\"6644098\";\"nan zhao\";\"other\"\n\"6644098\";\"南诏\";\"other\"\n\"6644099\";\"Yunhe\";\"main\"\n\"6644099\";\"yun he\";\"other\"\n\"6644099\";\"云鹤\";\"other\"\n\"6644100\";\"Jiantang\";\"main\"\n\"6644100\";\"jian tang\";\"other\"\n\"6644100\";\"建塘\";\"other\"\n\"6644137\";\"Nayun\";\"main\"\n\"6644137\";\"na yun\";\"other\"\n\"6644137\";\"那允\";\"other\"\n\"6645575\";\"Liangshi\";\"main\"\n\"6645575\";\"liang shi\";\"other\"\n\"6645575\";\"两市\";\"other\"\n\"6645583\";\"Yunji\";\"main\"\n\"6645583\";\"yun ji\";\"other\"\n\"6645583\";\"云集\";\"other\"\n\"6645597\";\"Chengzhong\";\"main\"\n\"6645597\";\"cheng zhong\";\"other\"\n\"6645597\";\"城中\";\"other\"\n\"6645600\";\"Nan’an\";\"main\"\n\"6645600\";\"Nan'an\";\"ascii\"\n\"6645600\";\"nan an\";\"other\"\n\"6645600\";\"南岸\";\"other\"\n\"6646302\";\"Leicheng\";\"main\"\n\"6646302\";\"lei cheng\";\"other\"\n\"6646302\";\"雷城\";\"other\"\n\"6646306\";\"Dongzhen\";\"main\"\n\"6646306\";\"dong zhen\";\"other\"\n\"6646306\";\"东镇\";\"other\"\n\"6646308\";\"Chuncheng\";\"main\"\n\"6646308\";\"chun cheng\";\"other\"\n\"6646308\";\"春城\";\"other\"\n\"6646315\";\"Luozhou\";\"main\"\n\"6646315\";\"luo zhou\";\"other\"\n\"6646315\";\"罗州\";\"other\"\n\"6646404\";\"Hexi\";\"main\"\n\"6646404\";\"he xi\";\"other\"\n\"6646404\";\"河西\";\"other\"\n\"6647609\";\"Taihe\";\"main\"\n\"6647609\";\"tai he\";\"other\"\n\"6647609\";\"太和\";\"other\"\n\"6648023\";\"Xiangjiaba\";\"main\"\n\"6648023\";\"xiang jia ba\";\"other\"\n\"6648023\";\"向家坝\";\"other\"\n\"6648024\";\"Zhongcheng\";\"main\"\n\"6648024\";\"zhong cheng\";\"other\"\n\"6648024\";\"中城\";\"other\"\n\"6670612\";\"Shiqiao\";\"main\"\n\"6670612\";\"shi qiao\";\"other\"\n\"6670612\";\"仕桥\";\"other\"\n\"6676601\";\"Fuxing\";\"main\"\n\"6676601\";\"Fuxing Jiedao\";\"other\"\n\"6676601\";\"fu xing\";\"other\"\n\"6676601\";\"福兴\";\"other\"\n\"6680101\";\"Ningzhong\";\"main\"\n\"6680101\";\"Ningzhong Zhen\";\"other\"\n\"6680101\";\"ning zhong\";\"other\"\n\"6680101\";\"宁中\";\"other\"\n\"6682541\";\"Sanhe\";\"main\"\n\"6682541\";\"Sanhe Jiedao\";\"other\"\n\"6682541\";\"san he\";\"other\"\n\"6682541\";\"三河\";\"other\"\n\"6682544\";\"Banghai\";\"main\"\n\"6682544\";\"Banghai Jiedao\";\"other\"\n\"6682544\";\"bang hai\";\"other\"\n\"6682544\";\"浜海\";\"other\"\n\"6682545\";\"Yuxin\";\"main\"\n\"6682545\";\"Yuxin Jiedao\";\"other\"\n\"6682545\";\"yu xin\";\"other\"\n\"6682545\";\"玉新\";\"other\"\n\"6682560\";\"Outing\";\"main\"\n\"6682560\";\"Outing Jiedao\";\"other\"\n\"6682560\";\"ou ting\";\"other\"\n\"6682560\";\"欧汀\";\"other\"\n\"6682582\";\"Guangyi\";\"main\"\n\"6682582\";\"Guangyi Jiedao\";\"other\"\n\"6682582\";\"guang yi\";\"other\"\n\"6682582\";\"广益\";\"other\"\n\"6683363\";\"Guangtai\";\"main\"\n\"6683363\";\"guang tai\";\"other\"\n\"6683363\";\"广太\";\"other\"\n\"6685809\";\"Dongba\";\"main\"\n\"6685809\";\"Dongba Zhen\";\"other\"\n\"6685809\";\"dong ba\";\"other\"\n\"6685809\";\"dong ba zhen\";\"other\"\n\"6685809\";\"东坝\";\"other\"\n\"6685809\";\"东坝镇\";\"other\"\n\"6685813\";\"Hefeng\";\"main\"\n\"6685813\";\"Hefeng Zhen\";\"other\"\n\"6685813\";\"he feng\";\"other\"\n\"6685813\";\"和凤\";\"other\"\n\"6685814\";\"Jingqiao Zhen\";\"main\"\n\"6685814\";\"jing qiao zhen\";\"other\"\n\"6685814\";\"晶桥\";\"other\"\n\"6685814\";\"晶桥镇\";\"other\"\n\"6685818\";\"Dongping\";\"main\"\n\"6685818\";\"Dongping Zhen\";\"other\"\n\"6685818\";\"dong ping\";\"other\"\n\"6685818\";\"dong ping zhen\";\"other\"\n\"6685818\";\"东屏\";\"other\"\n\"6685818\";\"东屏镇\";\"other\"\n\"6685824\";\"Wujiang\";\"main\"\n\"6685824\";\"Wujiang Zhen\";\"other\"\n\"6685824\";\"wu jiang\";\"other\"\n\"6685824\";\"wu jiang zhen\";\"other\"\n\"6685824\";\"乌江\";\"other\"\n\"6685824\";\"乌江镇\";\"other\"\n\"6685839\";\"Chengxiang\";\"main\"\n\"6685839\";\"cheng xiang\";\"other\"\n\"6685839\";\"城厢\";\"other\"\n\"6685841\";\"Yushan\";\"main\"\n\"6685841\";\"yu shan\";\"other\"\n\"6685841\";\"虞山\";\"other\"\n\"6685842\";\"Yangshe\";\"main\"\n\"6685842\";\"yang she\";\"other\"\n\"6685842\";\"杨舍\";\"other\"\n\"6685846\";\"Jincheng\";\"main\"\n\"6685846\";\"jin cheng\";\"other\"\n\"6685846\";\"金城\";\"other\"\n\"6685849\";\"Yongyang\";\"main\"\n\"6685849\";\"yong yang zhen\";\"other\"\n\"6685849\";\"永阳镇\";\"other\"\n\"6823776\";\"Liujie\";\"main\"\n\"6823776\";\"Liujie Zhen\";\"other\"\n\"6823776\";\"liu jie\";\"other\"\n\"6823776\";\"liu jie zhen\";\"other\"\n\"6823776\";\"六街\";\"other\"\n\"6823776\";\"六街镇\";\"other\"\n\"6823779\";\"Xiaojie\";\"main\"\n\"6823779\";\"Xiaojie Xiang\";\"other\"\n\"6823779\";\"xiao jie\";\"other\"\n\"6823779\";\"xiao jie xiang\";\"other\"\n\"6823779\";\"小街\";\"other\"\n\"6823779\";\"小街乡\";\"other\"\n\"6823925\";\"Liujie\";\"main\"\n\"6823925\";\"Liujie Xiang\";\"other\"\n\"6823925\";\"liu jie\";\"other\"\n\"6823925\";\"liu jie xiang\";\"other\"\n\"6823925\";\"六街\";\"other\"\n\"6823925\";\"六街乡\";\"other\"\n\"6823991\";\"Longwu\";\"main\"\n\"6823991\";\"Longwu Zhen\";\"other\"\n\"6823991\";\"Longwupu\";\"other\"\n\"6823991\";\"long wu\";\"other\"\n\"6823991\";\"long wu pu\";\"other\"\n\"6823991\";\"long wu zhen\";\"other\"\n\"6823991\";\"龙武\";\"other\"\n\"6823991\";\"龙武铺\";\"other\"\n\"6823991\";\"龙武镇\";\"other\"\n\"6824061\";\"Xiyang\";\"main\"\n\"6824061\";\"Xiyang Yizuxiang\";\"other\"\n\"6824061\";\"xi yang\";\"other\"\n\"6824061\";\"xi yang yi zu xiang\";\"other\"\n\"6824061\";\"夕阳\";\"other\"\n\"6824061\";\"夕阳彝族乡\";\"other\"\n\"6824063\";\"Xiaojie\";\"main\"\n\"6824063\";\"Xiaojie Zhen\";\"other\"\n\"6824063\";\"xiao jie\";\"other\"\n\"6824063\";\"xiao jie zhen\";\"other\"\n\"6824063\";\"小街\";\"other\"\n\"6824063\";\"小街镇\";\"other\"\n\"6824111\";\"Panjiang\";\"main\"\n\"6824111\";\"Panjiang Xiang\";\"other\"\n\"6824111\";\"pan jiang\";\"other\"\n\"6824111\";\"pan jiang xiang\";\"other\"\n\"6824111\";\"盘江\";\"other\"\n\"6824111\";\"盘江乡\";\"other\"\n\"6824136\";\"Shuanghejie\";\"main\"\n\"6824136\";\"Shuanghe\";\"other\"\n\"6824136\";\"Shuanghe Yizuxiang\";\"other\"\n\"6824136\";\"shuang he\";\"other\"\n\"6824136\";\"shuang he jie\";\"other\"\n\"6824136\";\"shuang he yi zu xiang\";\"other\"\n\"6824136\";\"双河\";\"other\"\n\"6824136\";\"双河彝族乡\";\"other\"\n\"6824136\";\"双河街\";\"other\"\n\"6824148\";\"Xinjiezi\";\"main\"\n\"6824148\";\"Pubei Yizuxiang\";\"other\"\n\"6824148\";\"pu bei yi zu xiang\";\"other\"\n\"6824148\";\"xin jie zi\";\"other\"\n\"6824148\";\"新街子\";\"other\"\n\"6824148\";\"浦贝彝族乡\";\"other\"\n\"6824158\";\"Zhaopu\";\"main\"\n\"6824158\";\"Pubei\";\"other\"\n\"6824158\";\"pu bei\";\"other\"\n\"6824158\";\"zhao pu\";\"other\"\n\"6824158\";\"浦贝\";\"other\"\n\"6824158\";\"赵普\";\"other\"\n\"6824185\";\"Lishan\";\"main\"\n\"6824185\";\"Lishan Yizuxiang\";\"other\"\n\"6824185\";\"li shan\";\"other\"\n\"6824185\";\"li shan yi zu xiang\";\"other\"\n\"6824185\";\"里山\";\"other\"\n\"6824185\";\"里山彝族乡\";\"other\"\n\"6824190\";\"Jiujie\";\"main\"\n\"6824190\";\"Erjie\";\"other\"\n\"6824190\";\"Jiujie Zhen\";\"other\"\n\"6824190\";\"er jie\";\"other\"\n\"6824190\";\"jiu jie\";\"other\"\n\"6824190\";\"jiu jie zhen\";\"other\"\n\"6824190\";\"九街\";\"other\"\n\"6824190\";\"九街镇\";\"other\"\n\"6824190\";\"二街\";\"other\"\n\"6824213\";\"Caopujie\";\"main\"\n\"6824213\";\"Caopu\";\"other\"\n\"6824213\";\"Caopu Zhen\";\"other\"\n\"6824213\";\"cao pu\";\"other\"\n\"6824213\";\"cao pu jie\";\"other\"\n\"6824213\";\"cao pu zhen\";\"other\"\n\"6824213\";\"草铺\";\"other\"\n\"6824213\";\"草铺街\";\"other\"\n\"6824213\";\"草铺镇\";\"other\"\n\"6824225\";\"Shijie\";\"main\"\n\"6824225\";\"Shijie Yizuxiang\";\"other\"\n\"6824225\";\"shi jie\";\"other\"\n\"6824225\";\"shi jie yi zu xiang\";\"other\"\n\"6824225\";\"十街\";\"other\"\n\"6824225\";\"十街彝族乡\";\"other\"\n\"6824252\";\"Shangfangxinjie\";\"main\"\n\"6824252\";\"Baofeng\";\"other\"\n\"6824252\";\"Baofeng Zhen\";\"other\"\n\"6824252\";\"bao feng\";\"other\"\n\"6824252\";\"bao feng zhen\";\"other\"\n\"6824252\";\"shang fang xin jie\";\"other\"\n\"6824252\";\"上方新街\";\"other\"\n\"6824252\";\"宝峰\";\"other\"\n\"6824252\";\"宝峰镇\";\"other\"\n\"6824285\";\"Dalongtan\";\"main\"\n\"6824285\";\"Dalongtan Xiang\";\"other\"\n\"6824285\";\"da long tan\";\"other\"\n\"6824285\";\"da long tan xiang\";\"other\"\n\"6824285\";\"大龙潭\";\"other\"\n\"6824285\";\"大龙潭乡\";\"other\"\n\"6824318\";\"Baigecun\";\"main\"\n\"6824318\";\"Xingmeng Mengguzuxiang\";\"other\"\n\"6824318\";\"bai ge cun\";\"other\"\n\"6824318\";\"xing meng meng gu zu xiang\";\"other\"\n\"6824318\";\"兴蒙蒙古族乡\";\"other\"\n\"6824318\";\"白阁村\";\"other\"\n\"6824328\";\"Najiaying\";\"main\"\n\"6824328\";\"Nagu\";\"other\"\n\"6824328\";\"Nagu Zhen\";\"other\"\n\"6824328\";\"na gu\";\"other\"\n\"6824328\";\"na gu zhen\";\"other\"\n\"6824328\";\"na jia ying\";\"other\"\n\"6824328\";\"纳古\";\"other\"\n\"6824328\";\"纳古镇\";\"other\"\n\"6824328\";\"纳家营\";\"other\"\n\"6824333\";\"Wenquanxiaocun\";\"main\"\n\"6824333\";\"Wenquan\";\"other\"\n\"6824333\";\"Wenquan Zhen\";\"other\"\n\"6824333\";\"wen quan\";\"other\"\n\"6824333\";\"wen quan xiao cun\";\"other\"\n\"6824333\";\"wen quan zhen\";\"other\"\n\"6824333\";\"温泉\";\"other\"\n\"6824333\";\"温泉小村\";\"other\"\n\"6824333\";\"温泉镇\";\"other\"\n\"6824389\";\"Huichang\";\"main\"\n\"6824389\";\"Gucheng\";\"other\"\n\"6824389\";\"Gucheng Zhen\";\"other\"\n\"6824389\";\"gu cheng\";\"other\"\n\"6824389\";\"gu cheng zhen\";\"other\"\n\"6824389\";\"hui chang\";\"other\"\n\"6824389\";\"古城\";\"other\"\n\"6824389\";\"古城镇\";\"other\"\n\"6824389\";\"恢厂\";\"other\"\n\"6824405\";\"Xinjie\";\"main\"\n\"6824405\";\"Xinjie Xiang\";\"other\"\n\"6824405\";\"xin jie\";\"other\"\n\"6824405\";\"xin jie xiang\";\"other\"\n\"6824405\";\"新街\";\"other\"\n\"6824405\";\"新街乡\";\"other\"\n\"6824435\";\"Taiping\";\"main\"\n\"6824435\";\"Taiping Zhen\";\"other\"\n\"6824435\";\"tai ping\";\"other\"\n\"6824435\";\"tai ping zhen\";\"other\"\n\"6824435\";\"太平\";\"other\"\n\"6824435\";\"太平镇\";\"other\"\n\"6824445\";\"Xianjie\";\"main\"\n\"6824445\";\"Xianjie Zhen\";\"other\"\n\"6824445\";\"xian jie\";\"other\"\n\"6824445\";\"xian jie zhen\";\"other\"\n\"6824445\";\"县街\";\"other\"\n\"6824445\";\"县街镇\";\"other\"\n\"6824454\";\"Laojiangjunjie\";\"main\"\n\"6824454\";\"Shangsuan\";\"other\"\n\"6824454\";\"Shangsuan Xiang\";\"other\"\n\"6824454\";\"lao jiang jun jie\";\"other\"\n\"6824454\";\"shang suan\";\"other\"\n\"6824454\";\"shang suan xiang\";\"other\"\n\"6824454\";\"上蒜\";\"other\"\n\"6824454\";\"上蒜乡\";\"other\"\n\"6824454\";\"老将军街\";\"other\"\n\"6824473\";\"Huayue\";\"main\"\n\"6824473\";\"Huayue Xiang\";\"other\"\n\"6824473\";\"hua le\";\"other\"\n\"6824473\";\"hua le xiang\";\"other\"\n\"6824473\";\"化乐\";\"other\"\n\"6824473\";\"化乐乡\";\"other\"\n\"6824494\";\"Mingyihe\";\"main\"\n\"6824494\";\"Mingyihe Xiang\";\"other\"\n\"6824494\";\"ming yi he\";\"other\"\n\"6824494\";\"ming yi he xiang\";\"other\"\n\"6824494\";\"鸣矣河\";\"other\"\n\"6824494\";\"鸣矣河乡\";\"other\"\n\"6824541\";\"Chahe\";\"main\"\n\"6824541\";\"Chahe Xiang\";\"other\"\n\"6824541\";\"cha he\";\"other\"\n\"6824541\";\"cha he xiang\";\"other\"\n\"6824541\";\"岔河\";\"other\"\n\"6824541\";\"岔河乡\";\"other\"\n\"6824599\";\"Xiongguan\";\"main\"\n\"6824599\";\"Xiongguan Xiang\";\"other\"\n\"6824599\";\"xiong guan\";\"other\"\n\"6824599\";\"xiong guan xiang\";\"other\"\n\"6824599\";\"雄关\";\"other\"\n\"6824599\";\"雄关乡\";\"other\"\n\"6824635\";\"Xiaojie\";\"main\"\n\"6824635\";\"Yousuo\";\"other\"\n\"6824635\";\"Yousuo Zhen\";\"other\"\n\"6824635\";\"xiao jie\";\"other\"\n\"6824635\";\"you suo\";\"other\"\n\"6824635\";\"右所\";\"other\"\n\"6824635\";\"小街\";\"other\"\n\"6824641\";\"Nanyang\";\"main\"\n\"6824641\";\"Nanyang Zhen\";\"other\"\n\"6824641\";\"nan yang\";\"other\"\n\"6824641\";\"nan yang zhen\";\"other\"\n\"6824641\";\"南羊\";\"other\"\n\"6824641\";\"南羊镇\";\"other\"\n\"6824644\";\"Caodianjie\";\"main\"\n\"6824644\";\"Caodian\";\"other\"\n\"6824644\";\"Caodian Zhen\";\"other\"\n\"6824644\";\"cao dian\";\"other\"\n\"6824644\";\"cao dian jie\";\"other\"\n\"6824644\";\"cao dian zhen\";\"other\"\n\"6824644\";\"草甸\";\"other\"\n\"6824644\";\"草甸街\";\"other\"\n\"6824644\";\"草甸镇\";\"other\"\n\"6824660\";\"Jiulong\";\"main\"\n\"6824660\";\"Jiucun\";\"other\"\n\"6824660\";\"Jiucun Zhen\";\"other\"\n\"6824660\";\"jiu cun\";\"other\"\n\"6824660\";\"jiu cun zhen\";\"other\"\n\"6824660\";\"jiu long\";\"other\"\n\"6824660\";\"九村\";\"other\"\n\"6824660\";\"九村镇\";\"other\"\n\"6824660\";\"九龙\";\"other\"\n\"6824683\";\"Longjie\";\"main\"\n\"6824683\";\"Longjie Zhen\";\"other\"\n\"6824683\";\"long jie\";\"other\"\n\"6824683\";\"long jie zhen\";\"other\"\n\"6824683\";\"龙街\";\"other\"\n\"6824683\";\"龙街镇\";\"other\"\n\"6824706\";\"Dayingjie\";\"main\"\n\"6824706\";\"Jiuxi\";\"other\"\n\"6824706\";\"Jiuxi Zhen\";\"other\"\n\"6824706\";\"da ying jie\";\"other\"\n\"6824706\";\"jiu xi\";\"other\"\n\"6824706\";\"jiu xi zhen\";\"other\"\n\"6824706\";\"九溪\";\"other\"\n\"6824706\";\"九溪镇\";\"other\"\n\"6824706\";\"大营街\";\"other\"\n\"6824732\";\"Qianwei\";\"main\"\n\"6824732\";\"Qianwei Zhen\";\"other\"\n\"6824732\";\"qian wei\";\"other\"\n\"6824732\";\"qian wei zhen\";\"other\"\n\"6824732\";\"前卫\";\"other\"\n\"6824732\";\"前卫镇\";\"other\"\n\"6824755\";\"Anhuadaying\";\"main\"\n\"6824755\";\"Anhua\";\"other\"\n\"6824755\";\"Anhua Yizuxiang\";\"other\"\n\"6824755\";\"an hua\";\"other\"\n\"6824755\";\"an hua da ying\";\"other\"\n\"6824755\";\"an hua yi zu xiang\";\"other\"\n\"6824755\";\"安化\";\"other\"\n\"6824755\";\"安化大营\";\"other\"\n\"6824755\";\"安化彝族乡\";\"other\"\n\"6824841\";\"Sijia\";\"main\"\n\"6824841\";\"Wushan\";\"other\"\n\"6824841\";\"Wushan Xiang\";\"other\"\n\"6824841\";\"si jia\";\"other\"\n\"6824841\";\"wu shan\";\"other\"\n\"6824841\";\"wu shan xiang\";\"other\"\n\"6824841\";\"五山\";\"other\"\n\"6824841\";\"五山乡\";\"other\"\n\"6824841\";\"四家\";\"other\"\n\"6824889\";\"Tonghong\";\"main\"\n\"6824889\";\"Tonghong Yizu Miaozuxiang\";\"other\"\n\"6824889\";\"tong hong\";\"other\"\n\"6824889\";\"tong hong yi zu miao zu xiang\";\"other\"\n\"6824889\";\"通红\";\"other\"\n\"6824889\";\"通红彝族苗族乡\";\"other\"\n\"6824908\";\"Haikou\";\"main\"\n\"6824908\";\"hai kou\";\"other\"\n\"6824908\";\"海口\";\"other\"\n\"6824917\";\"Nuozu\";\"main\"\n\"6824917\";\"Haikou Zhen\";\"other\"\n\"6824917\";\"hai kou zhen\";\"other\"\n\"6824917\";\"nuo zu\";\"other\"\n\"6824917\";\"海口镇\";\"other\"\n\"6824917\";\"糯租\";\"other\"\n\"6824957\";\"Haikoudajie\";\"main\"\n\"6824957\";\"Haikou Zhen\";\"other\"\n\"6824957\";\"hai kou da jie\";\"other\"\n\"6824957\";\"hai kou zhen\";\"other\"\n\"6824957\";\"海口大街\";\"other\"\n\"6824957\";\"海口镇\";\"other\"\n\"6824970\";\"Liujia\";\"main\"\n\"6824970\";\"Liujia Yingxiang\";\"other\"\n\"6824970\";\"liu jia\";\"other\"\n\"6824970\";\"liu jia ying xiang\";\"other\"\n\"6824970\";\"六甲\";\"other\"\n\"6824970\";\"六甲营乡\";\"other\"\n\"6824981\";\"Ala\";\"main\"\n\"6824981\";\"Ala Yizuxiang\";\"other\"\n\"6824981\";\"a la\";\"other\"\n\"6824981\";\"a la yi zu xiang\";\"other\"\n\"6824981\";\"阿拉\";\"other\"\n\"6824981\";\"阿拉彝族乡\";\"other\"\n\"6824982\";\"Xiaobanqiao\";\"main\"\n\"6824982\";\"Xiaobanqiao Zhen\";\"other\"\n\"6824982\";\"xiao ban qiao\";\"other\"\n\"6824982\";\"xiao ban qiao zhen\";\"other\"\n\"6824982\";\"小板桥\";\"other\"\n\"6824982\";\"小板桥镇\";\"other\"\n\"6824984\";\"Guandu\";\"main\"\n\"6824984\";\"Guandu Zhen\";\"other\"\n\"6824984\";\"guan du\";\"other\"\n\"6824984\";\"guan du zhen\";\"other\"\n\"6824984\";\"官渡\";\"other\"\n\"6824984\";\"官渡镇\";\"other\"\n\"6824989\";\"Xiaowangjiaying\";\"main\"\n\"6824989\";\"Dounan Zhen\";\"other\"\n\"6824989\";\"dou nan zhen\";\"other\"\n\"6824989\";\"xiao wang jia ying\";\"other\"\n\"6824989\";\"小王家营\";\"other\"\n\"6824989\";\"斗南镇\";\"other\"\n\"6825080\";\"Xilong\";\"main\"\n\"6825080\";\"Xi'er Zhen\";\"other\"\n\"6825080\";\"Xi’er Zhen\";\"other\"\n\"6825080\";\"xi er zhen\";\"other\"\n\"6825080\";\"xi long\";\"other\"\n\"6825080\";\"西二镇\";\"other\"\n\"6825080\";\"西龙\";\"other\"\n\"6825084\";\"Huakoulongtan\";\"main\"\n\"6825084\";\"Xisan Zhen\";\"other\"\n\"6825084\";\"hua kou long tan\";\"other\"\n\"6825084\";\"xi san zhen\";\"other\"\n\"6825084\";\"花口龙潭\";\"other\"\n\"6825084\";\"西三镇\";\"other\"\n\"6825107\";\"Taipingguan\";\"main\"\n\"6825107\";\"Dayu Zhen\";\"other\"\n\"6825107\";\"da yu zhen\";\"other\"\n\"6825107\";\"tai ping guan\";\"other\"\n\"6825107\";\"大鱼镇\";\"other\"\n\"6825107\";\"太平关\";\"other\"\n\"6825132\";\"Wujiaying\";\"main\"\n\"6825132\";\"Wujiaying Xiang\";\"other\"\n\"6825132\";\"wu jia ying\";\"other\"\n\"6825132\";\"wu jia ying xiang\";\"other\"\n\"6825132\";\"吴家营\";\"other\"\n\"6825132\";\"吴家营乡\";\"other\"\n\"6825169\";\"Qidian\";\"main\"\n\"6825169\";\"Qidian Xiang\";\"other\"\n\"6825169\";\"qi dian\";\"other\"\n\"6825169\";\"qi dian xiang\";\"other\"\n\"6825169\";\"七甸\";\"other\"\n\"6825169\";\"七甸乡\";\"other\"\n\"6825184\";\"Dake\";\"main\"\n\"6825184\";\"Dake Xiang\";\"other\"\n\"6825184\";\"da ke\";\"other\"\n\"6825184\";\"da ke xiang\";\"other\"\n\"6825184\";\"大可\";\"other\"\n\"6825184\";\"大可乡\";\"other\"\n\"6825232\";\"Weize\";\"main\"\n\"6825232\";\"Weize Xiang\";\"other\"\n\"6825232\";\"wei ze\";\"other\"\n\"6825232\";\"wei ze xiang\";\"other\"\n\"6825232\";\"维则\";\"other\"\n\"6825232\";\"维则乡\";\"other\"\n\"6825277\";\"Shilin\";\"main\"\n\"6825277\";\"Shilin Zhen\";\"other\"\n\"6825277\";\"shi lin\";\"other\"\n\"6825277\";\"shi lin zhen\";\"other\"\n\"6825277\";\"石林\";\"other\"\n\"6825277\";\"石林镇\";\"other\"\n\"6825287\";\"Beidacun Xiaozhai\";\"main\"\n\"6825287\";\"Beidacun Xiang\";\"other\"\n\"6825287\";\"bei da cun xiang\";\"other\"\n\"6825287\";\"bei da cun xiao zhai\";\"other\"\n\"6825287\";\"北大村乡\";\"other\"\n\"6825287\";\"北大村小寨\";\"other\"\n\"6825341\";\"Beigucheng\";\"main\"\n\"6825341\";\"Beigucheng Zhen\";\"other\"\n\"6825341\";\"bei gu cheng\";\"other\"\n\"6825341\";\"bei gu cheng zhen\";\"other\"\n\"6825341\";\"北古城\";\"other\"\n\"6825341\";\"北古城镇\";\"other\"\n\"6825373\";\"Yanhe\";\"main\"\n\"6825373\";\"Yanhe Zhen\";\"other\"\n\"6825373\";\"yan he\";\"other\"\n\"6825373\";\"yan he zhen\";\"other\"\n\"6825373\";\"研和\";\"other\"\n\"6825373\";\"研和镇\";\"other\"\n\"6825387\";\"Gaocang\";\"main\"\n\"6825387\";\"Gaocang Zhen\";\"other\"\n\"6825387\";\"gao cang\";\"other\"\n\"6825387\";\"gao cang zhen\";\"other\"\n\"6825387\";\"高仓\";\"other\"\n\"6825387\";\"高仓镇\";\"other\"\n\"6825406\";\"Chunhe\";\"main\"\n\"6825406\";\"Chunhe Zhen\";\"other\"\n\"6825406\";\"chun he\";\"other\"\n\"6825406\";\"chun he zhen\";\"other\"\n\"6825406\";\"春和\";\"other\"\n\"6825406\";\"春和镇\";\"other\"\n\"6825407\";\"Liqi\";\"main\"\n\"6825407\";\"Liqi Zhen\";\"other\"\n\"6825407\";\"li qi\";\"other\"\n\"6825407\";\"li qi zhen\";\"other\"\n\"6825407\";\"李棋\";\"other\"\n\"6825407\";\"李棋镇\";\"other\"\n\"6825419\";\"Dayingjie\";\"main\"\n\"6825419\";\"Dayingjie Zhen\";\"other\"\n\"6825419\";\"da ying jie\";\"other\"\n\"6825419\";\"da ying jie zhen\";\"other\"\n\"6825419\";\"大营街\";\"other\"\n\"6825419\";\"大营街镇\";\"other\"\n\"6825439\";\"Xiaoshiqiao\";\"main\"\n\"6825439\";\"Xiaoshiqiao Yizuxiang\";\"other\"\n\"6825439\";\"xiao shi qiao\";\"other\"\n\"6825439\";\"xiao shi qiao yi zu xiang\";\"other\"\n\"6825439\";\"小石桥\";\"other\"\n\"6825439\";\"小石桥彝族乡\";\"other\"\n\"6825481\";\"Luohe\";\"main\"\n\"6825481\";\"Luohe Yizuxiang\";\"other\"\n\"6825481\";\"luo he\";\"other\"\n\"6825481\";\"luo he yi zu xiang\";\"other\"\n\"6825481\";\"洛河\";\"other\"\n\"6825481\";\"洛河彝族乡\";\"other\"\n\"6862128\";\"Huohua\";\"main\"\n\"6862128\";\"huo hua\";\"other\"\n\"6862128\";\"火花\";\"other\"\n\"6870944\";\"Youxian\";\"main\"\n\"6870944\";\"you xian\";\"other\"\n\"6870944\";\"游仙\";\"other\"\n\"6919874\";\"Zhongshangang\";\"main\"\n\"6919874\";\"Zhongshangang Jiedao\";\"other\"\n\"6919874\";\"zhong shan gang\";\"other\"\n\"6919874\";\"zhong shan gang jie dao\";\"other\"\n\"6919874\";\"中山港\";\"other\"\n\"6919874\";\"中山港街道\";\"other\"\n\"6920719\";\"Xinan\";\"main\"\n\"6920719\";\"xi nan\";\"other\"\n\"6920719\";\"西南\";\"other\"\n\"6922213\";\"Shunde\";\"main\"\n\"6922213\";\"shun de\";\"other\"\n\"6922213\";\"顺德\";\"other\"\n\"6924979\";\"Xinfa\";\"main\"\n\"6924979\";\"xin fa\";\"other\"\n\"6924979\";\"新发\";\"other\"\n\"6929460\";\"Panzhihua\";\"main\"\n\"6929460\";\"pan zhi hua\";\"other\"\n\"6929460\";\"攀枝花\";\"other\"\n\"6942880\";\"Haikuotiankong\";\"main\"\n\"6957976\";\"Shezhu\";\"main\"\n\"6957976\";\"Shezhu Zhen\";\"other\"\n\"6957976\";\"she zhu\";\"other\"\n\"6957976\";\"she zhu zhen\";\"other\"\n\"6957976\";\"社渚\";\"other\"\n\"6957976\";\"社渚镇\";\"other\"\n\"6957977\";\"Zhoucheng\";\"main\"\n\"6957977\";\"Zhoucheng Zhen\";\"other\"\n\"6957977\";\"zhou cheng\";\"other\"\n\"6957977\";\"zhou cheng zhen\";\"other\"\n\"6957977\";\"周城\";\"other\"\n\"6957977\";\"周城镇\";\"other\"\n\"6957978\";\"Nandu\";\"main\"\n\"6957978\";\"Nandu Zhen\";\"other\"\n\"6957978\";\"nan du\";\"other\"\n\"6957978\";\"nan du zhen\";\"other\"\n\"6957978\";\"南渡\";\"other\"\n\"6957978\";\"南渡镇\";\"other\"\n\"6957979\";\"Shangpei\";\"main\"\n\"6957979\";\"Shangpei Zhen\";\"other\"\n\"6957979\";\"shang pei\";\"other\"\n\"6957979\";\"shang pei zhen\";\"other\"\n\"6957979\";\"上沛\";\"other\"\n\"6957979\";\"上沛镇\";\"other\"\n\"6957980\";\"Shangxing\";\"main\"\n\"6957980\";\"Shangxing Zhen\";\"other\"\n\"6957980\";\"shang xing\";\"other\"\n\"6957980\";\"shang xing zhen\";\"other\"\n\"6957980\";\"上兴\";\"other\"\n\"6957980\";\"上兴镇\";\"other\"\n\"6957981\";\"Zhuze\";\"main\"\n\"6957981\";\"Zhuze Zhen\";\"other\"\n\"6957981\";\"zhu ze\";\"other\"\n\"6957981\";\"zhu ze zhen\";\"other\"\n\"6957981\";\"竹箦\";\"other\"\n\"6957981\";\"竹箦镇\";\"other\"\n\"6957982\";\"Xuebu\";\"main\"\n\"6957982\";\"Xuebu Zhen\";\"other\"\n\"6957982\";\"xie bu\";\"other\"\n\"6957982\";\"xie bu zhen\";\"other\"\n\"6957982\";\"薛埠\";\"other\"\n\"6957982\";\"薛埠镇\";\"other\"\n\"6957983\";\"Dingbu\";\"main\"\n\"6957983\";\"Dingbu Zhen\";\"other\"\n\"6957983\";\"ding bu\";\"other\"\n\"6957983\";\"ding bu zhen\";\"other\"\n\"6957983\";\"定埠\";\"other\"\n\"6957983\";\"定埠镇\";\"other\"\n\"6957984\";\"Yangjiang\";\"main\"\n\"6957984\";\"Yangjiang Zhen\";\"other\"\n\"6957984\";\"yang jiang\";\"other\"\n\"6957984\";\"yang jiang zhen\";\"other\"\n\"6957984\";\"阳江\";\"other\"\n\"6957984\";\"阳江镇\";\"other\"\n\"6957985\";\"Gubo\";\"main\"\n\"6957985\";\"Gubo Zhen\";\"other\"\n\"6957985\";\"gu bai\";\"other\"\n\"6957985\";\"gu bai zhen\";\"other\"\n\"6957985\";\"古柏\";\"other\"\n\"6957985\";\"古柏镇\";\"other\"\n\"6957986\";\"Changqiao\";\"main\"\n\"6957986\";\"Changqiao Zhen\";\"other\"\n\"6957986\";\"chang qiao\";\"other\"\n\"6957986\";\"chang qiao zhen\";\"other\"\n\"6957986\";\"晿桥\";\"other\"\n\"6957986\";\"晿桥镇\";\"other\"\n\"6957987\";\"Shuiyang\";\"main\"\n\"6957987\";\"Shuiyang Zhen\";\"other\"\n\"6957987\";\"shui yang\";\"other\"\n\"6957987\";\"shui yang zhen\";\"other\"\n\"6957987\";\"水阳\";\"other\"\n\"6957987\";\"水阳镇\";\"other\"\n\"6957988\";\"Danyang\";\"main\"\n\"6957988\";\"Danyang Zhen\";\"other\"\n\"6957988\";\"dan yang\";\"other\"\n\"6957988\";\"dan yang zhen\";\"other\"\n\"6957988\";\"丹阳\";\"other\"\n\"6957988\";\"丹阳镇\";\"other\"\n\"6957989\";\"Tongjing\";\"main\"\n\"6957989\";\"Tongjing Zhen\";\"other\"\n\"6957989\";\"tong jing\";\"other\"\n\"6957989\";\"tong jing zhen\";\"other\"\n\"6957989\";\"铜井\";\"other\"\n\"6957989\";\"铜井镇\";\"other\"\n\"6957990\";\"Shiqiao\";\"main\"\n\"6957990\";\"Shiqiao Zhen\";\"other\"\n\"6957990\";\"shi qiao\";\"other\"\n\"6957990\";\"shi qiao zhen\";\"other\"\n\"6957990\";\"石桥\";\"other\"\n\"6957990\";\"石桥镇\";\"other\"\n\"6957991\";\"Qiaolin\";\"main\"\n\"6957991\";\"Qiaolin Zhen\";\"other\"\n\"6957991\";\"qiao lin\";\"other\"\n\"6957991\";\"qiao lin zhen\";\"other\"\n\"6957991\";\"桥林\";\"other\"\n\"6957991\";\"桥林镇\";\"other\"\n\"6957992\";\"Tuqiao\";\"main\"\n\"6957992\";\"Tuqiao Zhen\";\"other\"\n\"6957992\";\"tu qiao\";\"other\"\n\"6957992\";\"tu qiao zhen\";\"other\"\n\"6957992\";\"土桥\";\"other\"\n\"6957992\";\"土桥镇\";\"other\"\n\"6957993\";\"Tangshan\";\"main\"\n\"6957993\";\"Tangshan Zhen\";\"other\"\n\"6957993\";\"tang shan\";\"other\"\n\"6957993\";\"tang shan zhen\";\"other\"\n\"6957993\";\"汤山\";\"other\"\n\"6957993\";\"汤山镇\";\"other\"\n\"6957994\";\"Xingdian\";\"main\"\n\"6957994\";\"Xingdian Zhen\";\"other\"\n\"6957994\";\"xing dian\";\"other\"\n\"6957994\";\"xing dian zhen\";\"other\"\n\"6957994\";\"星甸\";\"other\"\n\"6957994\";\"星甸镇\";\"other\"\n\"6957995\";\"Tangquan\";\"main\"\n\"6957995\";\"Tangquan Zhen\";\"other\"\n\"6957995\";\"tang quan\";\"other\"\n\"6957995\";\"tang quan zhen\";\"other\"\n\"6957995\";\"汤泉\";\"other\"\n\"6957995\";\"汤泉镇\";\"other\"\n\"6957996\";\"Zhujiang\";\"main\"\n\"6957996\";\"Zhujiang Zhen\";\"other\"\n\"6957996\";\"zhu jiang\";\"other\"\n\"6957996\";\"zhu jiang zhen\";\"other\"\n\"6957996\";\"珠江\";\"other\"\n\"6957996\";\"珠江镇\";\"other\"\n\"6957997\";\"Shuining\";\"main\"\n\"6957997\";\"Shuining Zhen\";\"other\"\n\"6957997\";\"shui ning\";\"other\"\n\"6957997\";\"shui ning zhen\";\"other\"\n\"6957997\";\"水宁\";\"other\"\n\"6957997\";\"水宁镇\";\"other\"\n\"6957998\";\"Pancheng\";\"main\"\n\"6957998\";\"Pancheng Zhen\";\"other\"\n\"6957998\";\"pan cheng\";\"other\"\n\"6957998\";\"pan cheng zhen\";\"other\"\n\"6957998\";\"盘城\";\"other\"\n\"6957998\";\"盘城镇\";\"other\"\n\"6957999\";\"Baguazhou\";\"main\"\n\"6957999\";\"Baguazhou Zhen\";\"other\"\n\"6957999\";\"ba gua zhou\";\"other\"\n\"6957999\";\"ba gua zhou zhen\";\"other\"\n\"6957999\";\"八卦洲\";\"other\"\n\"6957999\";\"八卦洲镇\";\"other\"\n\"6958000\";\"Yudai\";\"main\"\n\"6958000\";\"Yudai Zhen\";\"other\"\n\"6958000\";\"yu dai\";\"other\"\n\"6958000\";\"yu dai zhen\";\"other\"\n\"6958000\";\"玉带\";\"other\"\n\"6958000\";\"玉带镇\";\"other\"\n\"6958001\";\"Jing’an\";\"main\"\n\"6958001\";\"Jing'an\";\"ascii\"\n\"6958001\";\"Jing'an Zhen\";\"other\"\n\"6958001\";\"Jing’an Zhen\";\"other\"\n\"6958001\";\"jing an\";\"other\"\n\"6958001\";\"jing an zhen\";\"other\"\n\"6958001\";\"靖安\";\"other\"\n\"6958001\";\"靖安镇\";\"other\"\n\"6958004\";\"Xilinji\";\"main\"\n\"6958004\";\"xi lin ji\";\"other\"\n\"6958004\";\"西林吉\";\"other\"\n\"6958005\";\"Gufu\";\"main\"\n\"6958005\";\"gu fu\";\"other\"\n\"6958005\";\"古夫\";\"other\"\n\"6958008\";\"Hongmiao\";\"main\"\n\"6958008\";\"hong miao\";\"other\"\n\"6958008\";\"红庙\";\"other\"\n\"6959270\";\"Shawan\";\"main\"\n\"6959270\";\"sha wan\";\"other\"\n\"6959270\";\"沙湾\";\"other\"\n\"6962255\";\"Shirong\";\"main\"\n\"6962255\";\"shi rong\";\"other\"\n\"6962255\";\"市荣\";\"other\"\n\"6962594\";\"Nanwai\";\"main\"\n\"6962594\";\"nan wai\";\"other\"\n\"6962594\";\"南外\";\"other\"\n\"6962690\";\"Xiwai\";\"main\"\n\"6962690\";\"xi wai\";\"other\"\n\"6962690\";\"西外\";\"other\"\n\"6969751\";\"Pingdu\";\"main\"\n\"6969807\";\"Zhoukou\";\"main\"\n\"6969808\";\"Xibian\";\"main\"\n\"6969836\";\"Sanxi\";\"main\"\n\"6969840\";\"Jushui\";\"main\"\n\"6969842\";\"Wudabao\";\"main\"\n\"6971551\";\"Chengzhao\";\"main\"\n\"6971551\";\"cheng zhao\";\"other\"\n\"6971551\";\"澄照\";\"other\"\n\"6971552\";\"Hexi\";\"main\"\n\"6971554\";\"Zhengkeng\";\"main\"\n\"6971678\";\"Xiayang\";\"main\"\n\"6971678\";\"xia yang\";\"other\"\n\"6971678\";\"下垟\";\"other\"\n\"6972233\";\"Zhishan\";\"main\"\n\"6972291\";\"Menlou’ao\";\"main\"\n\"6972291\";\"Menlou'ao\";\"ascii\"\n\"6973112\";\"Zhoujia\";\"main\"\n\"6973112\";\"zhou jia\";\"other\"\n\"6973112\";\"周家\";\"other\"\n\"6973114\";\"Baitashan\";\"main\"\n\"6973114\";\"Wantian\";\"other\"\n\"6973114\";\"bai ta shan\";\"other\"\n\"6973114\";\"wan tian\";\"other\"\n\"6973114\";\"万田\";\"other\"\n\"6973114\";\"白塔山\";\"other\"\n\"6973401\";\"Dongshandi\";\"main\"\n\"6973401\";\"Furong\";\"other\"\n\"6973401\";\"dong shan di\";\"other\"\n\"6973401\";\"fu rong\";\"other\"\n\"6973401\";\"东山底\";\"other\"\n\"6973401\";\"芙蓉\";\"other\"\n\"6973720\";\"Jiuhua\";\"main\"\n\"6973720\";\"jiu hua\";\"other\"\n\"6973720\";\"九华\";\"other\"\n\"6975018\";\"Zitong\";\"main\"\n\"6975018\";\"Zitong Zhen\";\"other\"\n\"6975018\";\"zi tong\";\"other\"\n\"6975018\";\"zi tong zhen\";\"other\"\n\"6975018\";\"梓潼\";\"other\"\n\"6975018\";\"梓潼镇\";\"other\"\n\"6975019\";\"Guangsheng\";\"main\"\n\"6975019\";\"Guangsheng Zhen\";\"other\"\n\"6975019\";\"guan sheng\";\"other\"\n\"6975019\";\"guan sheng zhen\";\"other\"\n\"6975019\";\"观胜\";\"other\"\n\"6975019\";\"观胜镇\";\"other\"\n\"6979981\";\"Qianying\";\"main\"\n\"6979981\";\"Qianying Zhen\";\"other\"\n\"6979981\";\"qian ying\";\"other\"\n\"6979981\";\"qian ying zhen\";\"other\"\n\"6979981\";\"前营\";\"other\"\n\"6979981\";\"前营镇\";\"other\"\n\"6982827\";\"Hangbu\";\"main\"\n\"6982827\";\"Hangbu Zhen\";\"other\"\n\"6982827\";\"hang bu\";\"other\"\n\"6982827\";\"hang bu zhen\";\"other\"\n\"6982827\";\"航埠\";\"other\"\n\"6982827\";\"航埠镇\";\"other\"\n\"6982850\";\"Anren\";\"main\"\n\"6982850\";\"Anren Zhen\";\"other\"\n\"6982850\";\"an ren\";\"other\"\n\"6982850\";\"an ren zhen\";\"other\"\n\"6982850\";\"安仁\";\"other\"\n\"6982850\";\"安仁镇\";\"other\"\n\"6982881\";\"Shitang\";\"main\"\n\"6982881\";\"Shitang Zhen\";\"other\"\n\"6982881\";\"shi tang\";\"other\"\n\"6982881\";\"shi tang zhen\";\"other\"\n\"6982881\";\"石塘\";\"other\"\n\"6982881\";\"石塘镇\";\"other\"\n\"6982893\";\"Huajie\";\"main\"\n\"6982893\";\"Huajie Zhen\";\"other\"\n\"6982893\";\"hua jie\";\"other\"\n\"6982893\";\"hua jie zhen\";\"other\"\n\"6982893\";\"花街\";\"other\"\n\"6982893\";\"花街镇\";\"other\"\n\"6982907\";\"Bihu\";\"main\"\n\"6982907\";\"Bihu Zhen\";\"other\"\n\"6982907\";\"bi hu\";\"other\"\n\"6982907\";\"bi hu zhen\";\"other\"\n\"6982907\";\"碧湖\";\"other\"\n\"6982907\";\"碧湖镇\";\"other\"\n\"6982913\";\"Liancheng\";\"main\"\n\"6982913\";\"Liancheng Zhen\";\"other\"\n\"6982913\";\"lian cheng\";\"other\"\n\"6982913\";\"lian cheng zhen\";\"other\"\n\"6982913\";\"联城\";\"other\"\n\"6982913\";\"联城镇\";\"other\"\n\"6982915\";\"Shuige\";\"main\"\n\"6982915\";\"Shuige Jiedao\";\"other\"\n\"6982915\";\"shui ge\";\"other\"\n\"6982915\";\"shui ge jie dao\";\"other\"\n\"6982915\";\"水阁\";\"other\"\n\"6982915\";\"水阁街道\";\"other\"\n\"6982920\";\"Shuangxi\";\"main\"\n\"6982920\";\"Shuangxi Zhen\";\"other\"\n\"6982920\";\"shuang xi\";\"other\"\n\"6982920\";\"shuang xi zhen\";\"other\"\n\"6982920\";\"双溪\";\"other\"\n\"6982920\";\"双溪镇\";\"other\"\n\"6982925\";\"Lakou\";\"main\"\n\"6982925\";\"Lakou Zhen\";\"other\"\n\"6982925\";\"la kou\";\"other\"\n\"6982925\";\"la kou zhen\";\"other\"\n\"6982925\";\"腊口\";\"other\"\n\"6982925\";\"腊口镇\";\"other\"\n\"6986104\";\"Zhongshan\";\"main\"\n\"6986104\";\"zhong shan\";\"other\"\n\"6986104\";\"中山\";\"other\"\n\"6988066\";\"Yiliu\";\"main\"\n\"6998444\";\"Suyang\";\"main\"\n\"6998444\";\"Pengcai Xiang\";\"other\"\n\"6998444\";\"peng cai xiang\";\"other\"\n\"6998444\";\"su yang\";\"other\"\n\"6998444\";\"苏羊\";\"other\"\n\"6998444\";\"蓬菜乡\";\"other\"\n\"6999282\";\"Luoyang\";\"main\"\n\"6999282\";\"Luoyang Zhen\";\"other\"\n\"6999282\";\"luo yang\";\"other\"\n\"6999282\";\"luo yang zhen\";\"other\"\n\"6999282\";\"洛羊\";\"other\"\n\"6999282\";\"洛羊镇\";\"other\"\n\"7001420\";\"Meisha\";\"main\"\n\"7001420\";\"Meisha Jiedao\";\"other\"\n\"7001420\";\"mei sha\";\"other\"\n\"7001420\";\"梅沙\";\"other\"\n\"7001421\";\"Shatoujiao\";\"main\"\n\"7001421\";\"sha tou jiao\";\"other\"\n\"7001421\";\"沙头角\";\"other\"\n\"7001716\";\"Xiegang\";\"main\"\n\"7001716\";\"Xiegang Zhen\";\"other\"\n\"7001716\";\"xie gang\";\"other\"\n\"7001716\";\"谢岗\";\"other\"\n\"7001762\";\"Qiaotou\";\"main\"\n\"7001762\";\"Qiaotou Zhen\";\"other\"\n\"7001762\";\"qiao tou\";\"other\"\n\"7001762\";\"桥头\";\"other\"\n\"7001854\";\"Wanjiangqu\";\"main\"\n\"7001854\";\"Wanjiang Jiedao\";\"other\"\n\"7001854\";\"wan jiang\";\"other\"\n\"7001854\";\"万江\";\"other\"\n\"7001855\";\"Nancheng\";\"main\"\n\"7001855\";\"Nancheng Jiedao\";\"other\"\n\"7001855\";\"nan cheng\";\"other\"\n\"7001855\";\"南城\";\"other\"\n\"7003500\";\"Piaojia\";\"main\"\n\"7003500\";\"Wanghu Manzuxiang\";\"other\"\n\"7003500\";\"pu jia\";\"other\"\n\"7003500\";\"wang hu man zu xiang\";\"other\"\n\"7003500\";\"朴家\";\"other\"\n\"7003500\";\"网户满族乡\";\"other\"\n\"7003510\";\"Chengjiao\";\"main\"\n\"7003510\";\"Chengjiao Xiang\";\"other\"\n\"7003510\";\"cheng jiao\";\"other\"\n\"7003510\";\"cheng jiao xiang\";\"other\"\n\"7003510\";\"城郊\";\"other\"\n\"7003510\";\"城郊乡\";\"other\"\n\"7003512\";\"Gaodianzi\";\"main\"\n\"7003512\";\"Gaodianzi Manzuxiang\";\"other\"\n\"7003512\";\"gao dian zi\";\"other\"\n\"7003512\";\"gao dian zi man zu xiang\";\"other\"\n\"7003512\";\"高甸子\";\"other\"\n\"7003512\";\"高甸子满族乡\";\"other\"\n\"7005418\";\"Maojiadian\";\"main\"\n\"7005418\";\"Maojiadian Zhen\";\"other\"\n\"7005418\";\"mao jia dian\";\"other\"\n\"7005418\";\"mao jia dian zhen\";\"other\"\n\"7005418\";\"毛家店\";\"other\"\n\"7005418\";\"毛家店镇\";\"other\"\n\"7005560\";\"Dasijiazi\";\"main\"\n\"7005560\";\"Dasijiazi Xiang\";\"other\"\n\"7005560\";\"da si jia zi\";\"other\"\n\"7005560\";\"da si jia zi xiang\";\"other\"\n\"7005560\";\"大四家子\";\"other\"\n\"7005560\";\"大四家子乡\";\"other\"\n\"7005571\";\"Shibajiazi\";\"main\"\n\"7005571\";\"Shibajiazi Xiang\";\"other\"\n\"7005571\";\"shi ba jia zi\";\"other\"\n\"7005571\";\"shi ba jia zi xiang\";\"other\"\n\"7005571\";\"十八家子\";\"other\"\n\"7005571\";\"十八家子乡\";\"other\"\n\"7005572\";\"Guyushu\";\"main\"\n\"7005572\";\"Tongjiangkou Xiang\";\"other\"\n\"7005572\";\"gu yu shu\";\"other\"\n\"7005572\";\"tong jiang kou xiang\";\"other\"\n\"7005572\";\"孤榆树\";\"other\"\n\"7005572\";\"通江口乡\";\"other\"\n\"7005592\";\"Daxing\";\"main\"\n\"7005592\";\"Daxing Xiang\";\"other\"\n\"7005592\";\"da xing\";\"other\"\n\"7005592\";\"da xing xiang\";\"other\"\n\"7005592\";\"大兴\";\"other\"\n\"7005592\";\"大兴乡\";\"other\"\n\"7005616\";\"Ertaizi\";\"main\"\n\"7005616\";\"Taiping Xiang\";\"other\"\n\"7005616\";\"er tai zi\";\"other\"\n\"7005616\";\"tai ping xiang\";\"other\"\n\"7005616\";\"二台子\";\"other\"\n\"7005616\";\"太平乡\";\"other\"\n\"7005638\";\"Xia’ertai\";\"main\"\n\"7005638\";\"Xia'ertai\";\"ascii\"\n\"7005638\";\"Xia'ertai Xiang\";\"other\"\n\"7005638\";\"Xia’ertai Xiang\";\"other\"\n\"7005638\";\"xia er tai\";\"other\"\n\"7005638\";\"xia er tai xiang\";\"other\"\n\"7005638\";\"下二台\";\"other\"\n\"7005638\";\"下二台乡\";\"other\"\n\"7005968\";\"Luzhou\";\"main\"\n\"7005968\";\"Luzhou Zhen\";\"other\"\n\"7005968\";\"lu zhou\";\"other\"\n\"7005968\";\"芦洲\";\"other\"\n\"7006025\";\"Pianbai\";\"main\"\n\"7006025\";\"Pianbai Xiang\";\"other\"\n\"7006025\";\"pian bai\";\"other\"\n\"7006025\";\"pian bai xiang\";\"other\"\n\"7006025\";\"偏柏\";\"other\"\n\"7006025\";\"偏柏乡\";\"other\"\n\"7006043\";\"Wufu\";\"main\"\n\"7006043\";\"Wufu Xiang\";\"other\"\n\"7006043\";\"wu fu\";\"other\"\n\"7006043\";\"wu fu xiang\";\"other\"\n\"7006043\";\"五福\";\"other\"\n\"7006043\";\"五福乡\";\"other\"\n\"7006113\";\"Dahe\";\"main\"\n\"7006113\";\"Dahe Zhen\";\"other\"\n\"7006113\";\"da he\";\"other\"\n\"7006113\";\"da he zhen\";\"other\"\n\"7006113\";\"大河\";\"other\"\n\"7006113\";\"大河镇\";\"other\"\n\"7006154\";\"Shangzhai\";\"main\"\n\"7006154\";\"Lushui\";\"other\"\n\"7006154\";\"Lushui Xiang\";\"other\"\n\"7006154\";\"Lüshui\";\"other\"\n\"7006154\";\"Lüshui Xiang\";\"other\"\n\"7006154\";\"lu shui xiang\";\"other\"\n\"7006154\";\"shang zhai\";\"other\"\n\"7006154\";\"上寨\";\"other\"\n\"7006154\";\"绿水乡\";\"other\"\n\"7006401\";\"Piduhe\";\"main\"\n\"7006401\";\"Huoyanxiang\";\"other\"\n\"7006401\";\"huo yan xiang\";\"other\"\n\"7006401\";\"pi du he\";\"other\"\n\"7006401\";\"火岩乡\";\"other\"\n\"7006401\";\"皮渡河\";\"other\"\n\"7006885\";\"Shadiping\";\"main\"\n\"7006885\";\"Badagongshan Xiang\";\"other\"\n\"7006885\";\"ba da gong shan xiang\";\"other\"\n\"7006885\";\"sha de ping\";\"other\"\n\"7006885\";\"八大公山乡\";\"other\"\n\"7006885\";\"砂地坪\";\"other\"\n\"7007009\";\"Zhongying\";\"main\"\n\"7007009\";\"Zhongying Xiang\";\"other\"\n\"7007009\";\"zhong ying\";\"other\"\n\"7007009\";\"zhong ying xiang\";\"other\"\n\"7007009\";\"中营\";\"other\"\n\"7007009\";\"中营乡\";\"other\"\n\"7007021\";\"Geleche\";\"main\"\n\"7007021\";\"Geleche Xiang\";\"other\"\n\"7007043\";\"Keda\";\"main\"\n\"7007043\";\"Keda Xiang\";\"other\"\n\"7007043\";\"ke da\";\"other\"\n\"7007043\";\"ke da xiang\";\"other\"\n\"7007043\";\"可大\";\"other\"\n\"7007043\";\"可大乡\";\"other\"\n\"7007049\";\"Jiajiaba\";\"main\"\n\"7007049\";\"Jiaba\";\"other\"\n\"7007049\";\"Jiaba Xiang\";\"other\"\n\"7007049\";\"jia ba\";\"other\"\n\"7007049\";\"jia ba xiang\";\"other\"\n\"7007049\";\"jia jia ba\";\"other\"\n\"7007049\";\"贾坝\";\"other\"\n\"7007049\";\"贾坝乡\";\"other\"\n\"7007049\";\"贾家坝\";\"other\"\n\"7007125\";\"Shaoha\";\"main\"\n\"7007125\";\"Shaoha Xiang\";\"other\"\n\"7007125\";\"shao ha\";\"other\"\n\"7007125\";\"shao ha xiang\";\"other\"\n\"7007125\";\"勺哈\";\"other\"\n\"7007125\";\"勺哈乡\";\"other\"\n\"7007504\";\"Dongcheng\";\"main\"\n\"7007504\";\"Dongcheng Jiedao\";\"other\"\n\"7007504\";\"dong cheng\";\"other\"\n\"7007504\";\"东城\";\"other\"\n\"7007505\";\"Henghe\";\"main\"\n\"7007505\";\"Henghe Jiedao\";\"other\"\n\"7007505\";\"heng he\";\"other\"\n\"7007505\";\"横荷\";\"other\"\n\"7007712\";\"Chengjiao\";\"main\"\n\"7007712\";\"Chengjiao Jiedao\";\"other\"\n\"7007712\";\"cheng jiao\";\"other\"\n\"7007712\";\"城郊\";\"other\"\n\"7007713\";\"Jiangpu\";\"main\"\n\"7007713\";\"Jiangpu Jiedao\";\"other\"\n\"7007713\";\"jiang bu\";\"other\"\n\"7007713\";\"江埔\";\"other\"\n\"7008489\";\"Longshan\";\"main\"\n\"7008489\";\"Longshan Zhen\";\"other\"\n\"7008489\";\"long shan\";\"other\"\n\"7008489\";\"龙山\";\"other\"\n\"7009261\";\"Tongqiao\";\"main\"\n\"7009261\";\"Tongqiao Zhen\";\"other\"\n\"7009261\";\"tong qiao\";\"other\"\n\"7009261\";\"潼桥\";\"other\"\n\"7009266\";\"Henan’an\";\"main\"\n\"7009266\";\"Henan'an\";\"ascii\"\n\"7009266\";\"Henan'an Jiedao\";\"other\"\n\"7009266\";\"Henan’an Jiedao\";\"other\"\n\"7009266\";\"he nan an\";\"other\"\n\"7009266\";\"河南岸\";\"other\"\n\"7009267\";\"Huihuan\";\"main\"\n\"7009267\";\"Huihuan Jiedao\";\"other\"\n\"7009267\";\"hui huan\";\"other\"\n\"7009267\";\"惠环\";\"other\"\n\"7009876\";\"Shazhuang\";\"main\"\n\"7009876\";\"Shazhuang Jiedao\";\"other\"\n\"7009876\";\"sha zhuang\";\"other\"\n\"7009876\";\"沙庄\";\"other\"\n\"7010280\";\"Dipa\";\"main\"\n\"7010280\";\"Dipa Zhen\";\"other\"\n\"7010280\";\"de pai\";\"other\"\n\"7010280\";\"地派\";\"other\"\n\"7010372\";\"Houzhai\";\"main\"\n\"7010372\";\"hou zhai\";\"other\"\n\"7010372\";\"后宅\";\"other\"\n\"7011352\";\"Piaojia\";\"main\"\n\"7011352\";\"Wanghu Manzuxiang\";\"other\"\n\"7011352\";\"pu jia\";\"other\"\n\"7011352\";\"wang hu man zu xiang\";\"other\"\n\"7011352\";\"朴家\";\"other\"\n\"7011352\";\"网户满族乡\";\"other\"\n\"7011353\";\"城郊\";\"main\"\n\"7011353\";\"cheng jiao\";\"ascii\"\n\"7011353\";\"Chengjiao Xiang\";\"other\"\n\"7011353\";\"cheng jiao xiang\";\"other\"\n\"7011353\";\"城郊乡\";\"other\"\n\"7011354\";\"Gaodianzi\";\"main\"\n\"7011354\";\"Gaodianzi Manzuxiang\";\"other\"\n\"7011354\";\"gao dian zi\";\"other\"\n\"7011354\";\"gao dian zi man zu xiang\";\"other\"\n\"7011354\";\"高甸子\";\"other\"\n\"7011354\";\"高甸子满族乡\";\"other\"\n\"7012542\";\"Laowobao\";\"main\"\n\"7012542\";\"Shandongtun Xiang\";\"other\"\n\"7012542\";\"lao wo bao\";\"other\"\n\"7012542\";\"shan dong tun xiang\";\"other\"\n\"7012542\";\"山东屯乡\";\"other\"\n\"7012542\";\"老窝堡\";\"other\"\n\"7012543\";\"Liangjiazi\";\"main\"\n\"7012543\";\"Liangjiazi Xiang\";\"other\"\n\"7012543\";\"liang jia zi\";\"other\"\n\"7012543\";\"liang jia zi xiang\";\"other\"\n\"7012543\";\"两家子\";\"other\"\n\"7012543\";\"两家子乡\";\"other\"\n\"7012544\";\"Xiguantun Muguzu Manzuxiang\";\"main\"\n\"7012544\";\"Xiguantun\";\"other\"\n\"7012544\";\"xi guan tun\";\"other\"\n\"7012544\";\"xi guan tun meng gu zu man zu xiang\";\"other\"\n\"7012544\";\"西关屯\";\"other\"\n\"7012544\";\"西关屯蒙古族满族乡\";\"other\"\n\"7012545\";\"Xizhahaqi\";\"main\"\n\"7012545\";\"Shajintai Muguzu Manzuxiang\";\"other\"\n\"7012545\";\"sha jin tai meng gu zu man zu xiang\";\"other\"\n\"7012545\";\"xi zha ha qi\";\"other\"\n\"7012545\";\"沙金台蒙古族满族乡\";\"other\"\n\"7012545\";\"西扎哈气\";\"other\"\n\"7012546\";\"Zhangqiang\";\"main\"\n\"7012546\";\"Zhangqiang Zhen\";\"other\"\n\"7012546\";\"zhang qiang\";\"other\"\n\"7012546\";\"zhang qiang zhen\";\"other\"\n\"7012546\";\"张强\";\"other\"\n\"7012546\";\"张强镇\";\"other\"\n\"7012547\";\"Dongsheng\";\"main\"\n\"7012547\";\"Dongsheng Manzu Muguzu Xiang\";\"other\"\n\"7012547\";\"dong sheng\";\"other\"\n\"7012547\";\"dong sheng man zu meng gu zu xiang\";\"other\"\n\"7012547\";\"东升\";\"other\"\n\"7012547\";\"东升满族蒙古族乡\";\"other\"\n\"7012548\";\"Haizhouwobao\";\"main\"\n\"7012548\";\"Haizhouwobao Xiang\";\"other\"\n\"7012548\";\"hai zhou wo bao\";\"other\"\n\"7012548\";\"hai zhou wo bao xiang\";\"other\"\n\"7012548\";\"海州窝堡\";\"other\"\n\"7012548\";\"海州窝堡乡\";\"other\"\n\"7012549\";\"Dongguantun\";\"main\"\n\"7012549\";\"Dongguantun Zhen\";\"other\"\n\"7012549\";\"dong guan tun\";\"other\"\n\"7012549\";\"dong guan tun zhen\";\"other\"\n\"7012549\";\"东关屯\";\"other\"\n\"7012549\";\"东关屯镇\";\"other\"\n\"7012952\";\"Hedong\";\"main\"\n\"7012952\";\"Hedong Zhen\";\"other\"\n\"7012952\";\"he dong\";\"other\"\n\"7012952\";\"河东\";\"other\"\n\"7012953\";\"Neihu\";\"main\"\n\"7012953\";\"Neihu Zhen\";\"other\"\n\"7012953\";\"nei hu\";\"other\"\n\"7012953\";\"内湖\";\"other\"\n\"7017617\";\"Chengnan\";\"main\"\n\"7017617\";\"Chengnan Jiedao\";\"other\"\n\"7017617\";\"cheng nan\";\"other\"\n\"7017617\";\"城南\";\"other\"\n\"7018259\";\"Longxiang\";\"main\"\n\"7018259\";\"Longxiang Jiedao\";\"other\"\n\"7018259\";\"long xiang\";\"other\"\n\"7018259\";\"龙祥\";\"other\"\n\"7018971\";\"Dongzhou\";\"main\"\n\"7018971\";\"Dongzhou Jiedao\";\"other\"\n\"7018971\";\"dong zhou\";\"other\"\n\"7018971\";\"东洲\";\"other\"\n\"7021128\";\"Qiaodong\";\"main\"\n\"7021128\";\"Qiaodong Jiedao\";\"other\"\n\"7021128\";\"qiao dong\";\"other\"\n\"7021128\";\"桥东\";\"other\"\n\"7027026\";\"Yongchang\";\"main\"\n\"7027026\";\"Beichuan Xian\";\"other\"\n\"7027026\";\"yong chang\";\"other\"\n\"7027026\";\"永昌\";\"other\"\n\"7029917\";\"Yanzhou\";\"main\"\n\"7029917\";\"yan zhou\";\"other\"\n\"7029917\";\"盐洲\";\"other\"\n\"7032140\";\"Xiaomo\";\"main\"\n\"7032140\";\"xiao mo\";\"other\"\n\"7032140\";\"小漠\";\"other\"\n\"7033028\";\"Chigang\";\"main\"\n\"7033028\";\"Chigang Zhen\";\"other\"\n\"7033028\";\"chi gang\";\"other\"\n\"7033028\";\"赤岗\";\"other\"\n\"7033029\";\"Hongyang\";\"main\"\n\"7033029\";\"Hongyang Zhen\";\"other\"\n\"7033029\";\"hong yang\";\"other\"\n\"7033029\";\"洪阳\";\"other\"\n\"7033214\";\"Gaotuo\";\"main\"\n\"7033214\";\"Gaotuo Zhen\";\"other\"\n\"7033214\";\"gao tuo\";\"other\"\n\"7033214\";\"gao tuo zhen\";\"other\"\n\"7033214\";\"高坨\";\"other\"\n\"7033214\";\"高坨镇\";\"other\"\n\"7033215\";\"Haizhou\";\"main\"\n\"7033215\";\"Haizhou Jiedao\";\"other\"\n\"7033215\";\"hai zhou\";\"other\"\n\"7033215\";\"hai zhou jie dao\";\"other\"\n\"7033215\";\"海州\";\"other\"\n\"7033215\";\"海州街道\";\"other\"\n\"7033216\";\"Chagou\";\"main\"\n\"7033216\";\"Chagou Zhen\";\"other\"\n\"7033216\";\"cha gou\";\"other\"\n\"7033216\";\"cha gou zhen\";\"other\"\n\"7033216\";\"岔沟\";\"other\"\n\"7033216\";\"岔沟镇\";\"other\"\n\"7040439\";\"Tangnan\";\"main\"\n\"7040439\";\"Tangnan Zhen\";\"other\"\n\"7040439\";\"tang nan\";\"other\"\n\"7040439\";\"tang nan zhen\";\"other\"\n\"7040439\";\"塘南\";\"other\"\n\"7040439\";\"塘南镇\";\"other\"\n\"7041606\";\"Huashan\";\"main\"\n\"7041968\";\"Baitugang\";\"main\"\n\"7041968\";\"Baitugang Zhen\";\"other\"\n\"7041968\";\"bai tu gang\";\"other\"\n\"7041968\";\"bai tu gang zhen\";\"other\"\n\"7041968\";\"白土岗\";\"other\"\n\"7041968\";\"白土岗镇\";\"other\"\n\"7042001\";\"Danyang\";\"main\"\n\"7042001\";\"Danyang Zhen\";\"other\"\n\"7042001\";\"dan yang\";\"other\"\n\"7042001\";\"dan yang zhen\";\"other\"\n\"7042001\";\"丹阳\";\"other\"\n\"7042001\";\"丹阳镇\";\"other\"\n\"7042150\";\"Yuxikou\";\"main\"\n\"7042150\";\"Yuxikou Jiedao\";\"other\"\n\"7042150\";\"yu xi kou\";\"other\"\n\"7042150\";\"yu xi kou jie dao\";\"other\"\n\"7042150\";\"裕溪口\";\"other\"\n\"7042150\";\"裕溪口街道\";\"other\"\n\"7043153\";\"Jiujiang\";\"main\"\n\"7043153\";\"jiu jiang\";\"other\"\n\"7043153\";\"鸠江\";\"other\"\n\"7044425\";\"Zhangzhen\";\"main\"\n\"7044425\";\"Zhangzhen Jiedao\";\"other\"\n\"7044425\";\"zhang zhen\";\"other\"\n\"7044425\";\"zhang zhen jie dao\";\"other\"\n\"7044425\";\"张镇\";\"other\"\n\"7044425\";\"张镇街道\";\"other\"\n\"7047778\";\"Xiexiang\";\"main\"\n\"7047778\";\"Zhaozheng Zhen\";\"other\"\n\"7047778\";\"xie ji\";\"other\"\n\"7047778\";\"zhao zheng zhen\";\"other\"\n\"7047778\";\"昭郑镇\";\"other\"\n\"7047778\";\"谢集\";\"other\"\n\"7047779\";\"Shanhou\";\"main\"\n\"7047779\";\"Shanhou Zhen\";\"other\"\n\"7047779\";\"shan hou\";\"other\"\n\"7047779\";\"shan hou zhen\";\"other\"\n\"7047779\";\"善厚\";\"other\"\n\"7047779\";\"善厚镇\";\"other\"\n\"7047845\";\"Limiao\";\"main\"\n\"7047845\";\"li miao\";\"other\"\n\"7047845\";\"李庙\";\"other\"\n\"7048101\";\"Xiwang\";\"main\"\n\"7048101\";\"xi wang\";\"other\"\n\"7048101\";\"席王\";\"other\"\n\"7048173\";\"Dongyang\";\"main\"\n\"7048173\";\"dong yang\";\"other\"\n\"7048173\";\"东阳\";\"other\"\n\"7048205\";\"Daming\";\"main\"\n\"7048205\";\"Daming Zhen\";\"other\"\n\"7048205\";\"da ming\";\"other\"\n\"7048205\";\"大明\";\"other\"\n\"7048208\";\"Jinhui\";\"main\"\n\"7048208\";\"jin hui\";\"other\"\n\"7048208\";\"金惠\";\"other\"\n\"7048263\";\"Xinglin\";\"main\"\n\"7048263\";\"Xinglin Zhen\";\"other\"\n\"7048263\";\"xing lin\";\"other\"\n\"7048263\";\"杏林\";\"other\"\n\"7048301\";\"Longbei\";\"main\"\n\"7048301\";\"long bei\";\"other\"\n\"7048301\";\"龙背\";\"other\"\n\"7048311\";\"Xinzhuang\";\"main\"\n\"7048311\";\"xin zhuang\";\"other\"\n\"7048311\";\"辛庄\";\"other\"\n\"7048330\";\"Bijia\";\"main\"\n\"7048330\";\"bi jia\";\"other\"\n\"7048330\";\"毕家\";\"other\"\n\"7048397\";\"Nanshi\";\"main\"\n\"7048397\";\"nan shi\";\"other\"\n\"7048397\";\"南师\";\"other\"\n\"7048451\";\"Dongshangguan\";\"main\"\n\"7048451\";\"dong shang guan\";\"other\"\n\"7048451\";\"东上官\";\"other\"\n\"7048630\";\"Dongyang\";\"main\"\n\"7048630\";\"dong yang\";\"other\"\n\"7048630\";\"东杨\";\"other\"\n\"7049343\";\"Sanshan\";\"main\"\n\"7049343\";\"Sanshan Jiedao\";\"other\"\n\"7049343\";\"san shan\";\"other\"\n\"7049343\";\"san shan jie dao\";\"other\"\n\"7049343\";\"三山\";\"other\"\n\"7049343\";\"三山街道\";\"other\"\n\"7050080\";\"Jinjiazhuang\";\"main\"\n\"7050080\";\"Jinjiazhuang Qu\";\"other\"\n\"7050080\";\"jin jia zhuang\";\"other\"\n\"7050080\";\"jin jia zhuang qu\";\"other\"\n\"7050080\";\"金家庄\";\"other\"\n\"7050080\";\"金家庄区\";\"other\"\n\"7050502\";\"Jinping\";\"main\"\n\"7050502\";\"Jinping Xiang\";\"other\"\n\"7050502\";\"jin ping\";\"other\"\n\"7050502\";\"jin ping xiang\";\"other\"\n\"7050502\";\"金坪\";\"other\"\n\"7050502\";\"金坪乡\";\"other\"\n\"7050525\";\"Yanghe\";\"main\"\n\"7050525\";\"Yanghe Tujiazuxiang\";\"other\"\n\"7050525\";\"yang he\";\"other\"\n\"7050525\";\"yang he tu jia zu xiang\";\"other\"\n\"7050525\";\"阳和\";\"other\"\n\"7050525\";\"阳和土家族乡\";\"other\"\n\"7050615\";\"Xilian\";\"main\"\n\"7050615\";\"Xilian Xiang\";\"other\"\n\"7050615\";\"xi lian\";\"other\"\n\"7050615\";\"xi lian xiang\";\"other\"\n\"7050615\";\"西莲\";\"other\"\n\"7050615\";\"西莲乡\";\"other\"\n\"7050674\";\"Yujiazui\";\"main\"\n\"7050674\";\"Suoxiyu\";\"other\"\n\"7050674\";\"Suoxiyu Tujiazuxiang\";\"other\"\n\"7050674\";\"suo xi yu\";\"other\"\n\"7050674\";\"suo xi yu tu jia zu xiang\";\"other\"\n\"7050674\";\"yu jia zui\";\"other\"\n\"7050674\";\"喻家觜\";\"other\"\n\"7050674\";\"索溪峪\";\"other\"\n\"7050674\";\"索溪峪土家族乡\";\"other\"\n\"7050692\";\"Liulang\";\"main\"\n\"7050692\";\"Xiehe\";\"other\"\n\"7050692\";\"Xiehe Xiang\";\"other\"\n\"7050692\";\"liu lang\";\"other\"\n\"7050692\";\"xie he\";\"other\"\n\"7050692\";\"xie he xiang\";\"other\"\n\"7050692\";\"协合\";\"other\"\n\"7050692\";\"协合乡\";\"other\"\n\"7050692\";\"柳榔\";\"other\"\n\"7050713\";\"Jianxin\";\"main\"\n\"7050713\";\"Yanghuping\";\"other\"\n\"7050713\";\"Yanghuping Zhen\";\"other\"\n\"7050713\";\"jian xin\";\"other\"\n\"7050713\";\"yang hu ping\";\"other\"\n\"7050713\";\"yang hu ping zhen\";\"other\"\n\"7050713\";\"建新\";\"other\"\n\"7050713\";\"阳湖坪\";\"other\"\n\"7050713\";\"阳湖坪镇\";\"other\"\n\"7051026\";\"Huancheng\";\"main\"\n\"7051026\";\"huan cheng\";\"other\"\n\"7051026\";\"环城\";\"other\"\n\"7051040\";\"Pushan\";\"main\"\n\"7051040\";\"Pushan Zhen\";\"other\"\n\"7051040\";\"pu shan\";\"other\"\n\"7051040\";\"pu shan zhen\";\"other\"\n\"7051040\";\"蒲山\";\"other\"\n\"7051040\";\"蒲山镇\";\"other\"\n\"7052970\";\"Zheshan\";\"main\"\n\"7052970\";\"Zheshan Zhen\";\"other\"\n\"7052970\";\"zhe shan\";\"other\"\n\"7052970\";\"zhe shan zhen\";\"other\"\n\"7052970\";\"遮山\";\"other\"\n\"7052970\";\"遮山镇\";\"other\"\n\"7055895\";\"Taishanmiao\";\"main\"\n\"7055895\";\"tai shan miao\";\"other\"\n\"7055895\";\"太山庙\";\"other\"\n\"7056341\";\"Longxing\";\"main\"\n\"7056341\";\"long xing\";\"other\"\n\"7056341\";\"龙兴\";\"other\"\n\"7057435\";\"Yaoshan\";\"main\"\n\"7057435\";\"Yaoshan Zhen\";\"other\"\n\"7057435\";\"yao shan\";\"other\"\n\"7057435\";\"yao shan zhen\";\"other\"\n\"7057435\";\"尧山\";\"other\"\n\"7057435\";\"尧山镇\";\"other\"\n\"7059190\";\"Kuzhuping\";\"main\"\n\"7059190\";\"Kuzhuping Xiang\";\"other\"\n\"7059190\";\"ku zhu ping\";\"other\"\n\"7059190\";\"ku zhu ping xiang\";\"other\"\n\"7059190\";\"苦竹坪\";\"other\"\n\"7059190\";\"苦竹坪乡\";\"other\"\n\"7059368\";\"Suoziqiu\";\"main\"\n\"7059368\";\"Mahekou\";\"other\"\n\"7059368\";\"Mahekou Baizuxiang\";\"other\"\n\"7059368\";\"ma he kou\";\"other\"\n\"7059368\";\"ma he kou bai zu xiang\";\"other\"\n\"7059368\";\"suo zi qiu\";\"other\"\n\"7059368\";\"梭子丘\";\"other\"\n\"7059368\";\"马合口\";\"other\"\n\"7059368\";\"马合口白族乡\";\"other\"\n\"7059369\";\"Zoumaping\";\"main\"\n\"7059369\";\"Zoumaping Baizuxiang\";\"other\"\n\"7059369\";\"zou ma ping\";\"other\"\n\"7059369\";\"zou ma ping bai zu xiang\";\"other\"\n\"7059369\";\"走马坪\";\"other\"\n\"7059369\";\"走马坪白族乡\";\"other\"\n\"7059370\";\"Huochiyu\";\"main\"\n\"7059370\";\"Guhuxiang\";\"other\"\n\"7059370\";\"huo chi yu\";\"other\"\n\"7059370\";\"yu hu xiang\";\"other\"\n\"7059370\";\"或池峪\";\"other\"\n\"7059370\";\"汩湖乡\";\"other\"\n\"7059417\";\"Guluoshan\";\"main\"\n\"7059417\";\"Guluoshan Xiang\";\"other\"\n\"7059417\";\"gu luo shan\";\"other\"\n\"7059417\";\"gu luo shan xiang\";\"other\"\n\"7059417\";\"谷罗山\";\"other\"\n\"7059417\";\"谷罗山乡\";\"other\"\n\"7059421\";\"Xiaobutou\";\"main\"\n\"7059421\";\"Daguquan\";\"other\"\n\"7059421\";\"Daguquan Xiang\";\"other\"\n\"7059421\";\"da gu quan\";\"other\"\n\"7059421\";\"da gu quan xiang\";\"other\"\n\"7059421\";\"xiao bu tou\";\"other\"\n\"7059421\";\"小埠头\";\"other\"\n\"7059421\";\"打鼓泉\";\"other\"\n\"7059421\";\"打鼓泉乡\";\"other\"\n\"7059424\";\"Kongkeshu\";\"main\"\n\"7059424\";\"Kongkeshu Xiang\";\"other\"\n\"7059424\";\"kong ke shu\";\"other\"\n\"7059424\";\"kong ke shu xiang\";\"other\"\n\"7059424\";\"空壳数\";\"other\"\n\"7059424\";\"空壳树乡\";\"other\"\n\"7059452\";\"Zouma\";\"main\"\n\"7059452\";\"Zouma Zhen\";\"other\"\n\"7059452\";\"zou ma\";\"other\"\n\"7059452\";\"zou ma zhen\";\"other\"\n\"7059452\";\"走马\";\"other\"\n\"7059452\";\"走马镇\";\"other\"\n\"7059463\";\"Baiguo\";\"main\"\n\"7059463\";\"Baiguo Zhen\";\"other\"\n\"7059463\";\"bai guo\";\"other\"\n\"7059463\";\"bai guo zhen\";\"other\"\n\"7059463\";\"白果\";\"other\"\n\"7059463\";\"白果镇\";\"other\"\n\"7059538\";\"Fengxianggang\";\"main\"\n\"7059538\";\"Fengxianggang Xiang\";\"other\"\n\"7059538\";\"feng xiang gang\";\"other\"\n\"7059538\";\"feng xiang gang xiang\";\"other\"\n\"7059538\";\"枫香岗\";\"other\"\n\"7059538\";\"枫香岗乡\";\"other\"\n\"7059590\";\"Xiangjiazhai\";\"main\"\n\"7059590\";\"Sanjiatian\";\"other\"\n\"7059590\";\"Sanjiatian Xiang\";\"other\"\n\"7059590\";\"san jia tian\";\"other\"\n\"7059590\";\"san jia tian xiang\";\"other\"\n\"7059590\";\"xiang jia zhai\";\"other\"\n\"7059590\";\"三家田\";\"other\"\n\"7059590\";\"三家田乡\";\"other\"\n\"7059590\";\"向家寨\";\"other\"\n\"7059688\";\"Shadi\";\"main\"\n\"7059688\";\"Shadi Xiang\";\"other\"\n\"7059688\";\"sha di\";\"other\"\n\"7059688\";\"sha di xiang\";\"other\"\n\"7059688\";\"沙堤\";\"other\"\n\"7059688\";\"沙堤乡\";\"other\"\n\"7059698\";\"Yinjiaxi\";\"main\"\n\"7059698\";\"Yinjiaxi Zhen\";\"other\"\n\"7059698\";\"yin jia xi\";\"other\"\n\"7059698\";\"yin jia xi zhen\";\"other\"\n\"7059698\";\"尹家溪\";\"other\"\n\"7059698\";\"尹家溪镇\";\"other\"\n\"7059716\";\"Qingping\";\"main\"\n\"7059716\";\"Qingping Zhen\";\"other\"\n\"7059716\";\"qing ping\";\"other\"\n\"7059716\";\"qing ping zhen\";\"other\"\n\"7059716\";\"青坪\";\"other\"\n\"7059716\";\"青坪镇\";\"other\"\n\"7060470\";\"Xiheshan\";\"main\"\n\"7060470\";\"Xiheshan Jiedao\";\"other\"\n\"7060470\";\"xi he shan\";\"other\"\n\"7060470\";\"xi he shan jie dao\";\"other\"\n\"7060470\";\"西褐山\";\"other\"\n\"7060470\";\"西褐山街道\";\"other\"\n\"7060472\";\"Jinghu\";\"main\"\n\"7060472\";\"Jinghu Qu\";\"other\"\n\"7060472\";\"jing hu\";\"other\"\n\"7060472\";\"jing hu qu\";\"other\"\n\"7060472\";\"镜湖\";\"other\"\n\"7060472\";\"镜湖区\";\"other\"\n\"7060474\";\"Yijiang\";\"main\"\n\"7060474\";\"Yijiang Qu\";\"other\"\n\"7060474\";\"yi jiang\";\"other\"\n\"7060474\";\"yi jiang qu\";\"other\"\n\"7060474\";\"弋江\";\"other\"\n\"7060474\";\"弋江区\";\"other\"\n\"7060987\";\"Louziqiu\";\"main\"\n\"7060987\";\"lou zi qiu\";\"other\"\n\"7060987\";\"楼子丘\";\"other\"\n\"7060990\";\"Wuli\";\"main\"\n\"7060990\";\"Wuli Xiang\";\"other\"\n\"7060990\";\"wu li\";\"other\"\n\"7060990\";\"wu li xiang\";\"other\"\n\"7060990\";\"五里\";\"other\"\n\"7060990\";\"五里乡\";\"other\"\n\"7061167\";\"Cangtou\";\"main\"\n\"7061167\";\"cang tou\";\"other\"\n\"7061167\";\"仓头\";\"other\"\n\"7061713\";\"Zhanbei\";\"main\"\n\"7061713\";\"zhan bei\";\"other\"\n\"7061713\";\"湛北\";\"other\"\n\"7061735\";\"Ziyun\";\"main\"\n\"7061735\";\"Ziyun Zhen\";\"other\"\n\"7061735\";\"zi yun\";\"other\"\n\"7061735\";\"zi yun zhen\";\"other\"\n\"7061735\";\"紫云\";\"other\"\n\"7061735\";\"紫云镇\";\"other\"\n\"7061781\";\"Fenchen\";\"main\"\n\"7061781\";\"fen chen\";\"other\"\n\"7061781\";\"汾陈\";\"other\"\n\"7061864\";\"Lianhua\";\"main\"\n\"7061864\";\"Lianhua Zhen\";\"other\"\n\"7061864\";\"lian hua\";\"other\"\n\"7061864\";\"lian hua zhen\";\"other\"\n\"7061864\";\"莲花\";\"other\"\n\"7061864\";\"莲花镇\";\"other\"\n\"7062006\";\"Tianzhuang\";\"main\"\n\"7062006\";\"tian zhuang\";\"other\"\n\"7062006\";\"田庄\";\"other\"\n\"7063415\";\"Sipo\";\"main\"\n\"7063415\";\"si po\";\"other\"\n\"7063415\";\"寺坡\";\"other\"\n\"7063426\";\"Yuanling\";\"main\"\n\"7063426\";\"yuan ling\";\"other\"\n\"7063426\";\"院岭\";\"other\"\n\"7063439\";\"Zhulan\";\"main\"\n\"7063439\";\"zhu lan\";\"other\"\n\"7063439\";\"朱兰\";\"other\"\n\"7063446\";\"Kuangshan\";\"main\"\n\"7063446\";\"kuang shan\";\"other\"\n\"7063446\";\"矿山\";\"other\"\n\"7063452\";\"Zaolin\";\"main\"\n\"7063452\";\"zao lin\";\"other\"\n\"7063452\";\"枣林\";\"other\"\n\"7063875\";\"Zhuyu\";\"main\"\n\"7063875\";\"zhu yu\";\"other\"\n\"7063875\";\"竹峪\";\"other\"\n\"7063902\";\"Diantou\";\"main\"\n\"7063902\";\"Diantou Zhen\";\"other\"\n\"7063902\";\"dian tou\";\"other\"\n\"7063902\";\"dian tou zhen\";\"other\"\n\"7063902\";\"店头\";\"other\"\n\"7063902\";\"店头镇\";\"other\"\n\"7063937\";\"Xujia\";\"main\"\n\"7063937\";\"Xujia Jieban\";\"other\"\n\"7063937\";\"xu jia\";\"other\"\n\"7063937\";\"xu jia jie ban\";\"other\"\n\"7063937\";\"徐家\";\"other\"\n\"7063937\";\"徐家街办\";\"other\"\n\"7063941\";\"Xinjiamiao\";\"main\"\n\"7063941\";\"Xinjiamiao Jieban\";\"other\"\n\"7063941\";\"xin jia miao\";\"other\"\n\"7063941\";\"xin jia miao jie ban\";\"other\"\n\"7063941\";\"辛家庙\";\"other\"\n\"7063941\";\"辛家庙街办\";\"other\"\n\"7063942\";\"Xicheng\";\"main\"\n\"7063942\";\"Xicheng Jieban\";\"other\"\n\"7063942\";\"xi cheng\";\"other\"\n\"7063942\";\"xi cheng jie ban\";\"other\"\n\"7063942\";\"西城\";\"other\"\n\"7063942\";\"西城街办\";\"other\"\n\"7063956\";\"Gudu\";\"main\"\n\"7063956\";\"Gudu Jieban\";\"other\"\n\"7063956\";\"gu du\";\"other\"\n\"7063956\";\"gu du jie ban\";\"other\"\n\"7063956\";\"古渡\";\"other\"\n\"7063956\";\"古渡街办\";\"other\"\n\"7063957\";\"Weiyang\";\"main\"\n\"7063957\";\"Weiyang Jieban\";\"other\"\n\"7063957\";\"wei yang\";\"other\"\n\"7063957\";\"wei yang jie ban\";\"other\"\n\"7063957\";\"渭阳\";\"other\"\n\"7063957\";\"渭阳街办\";\"other\"\n\"7063958\";\"Weicheng\";\"main\"\n\"7063958\";\"Weicheng Qu\";\"other\"\n\"7063958\";\"wei cheng\";\"other\"\n\"7063958\";\"wei cheng qu\";\"other\"\n\"7063958\";\"渭城\";\"other\"\n\"7063958\";\"渭城区\";\"other\"\n\"7063959\";\"Qindu\";\"main\"\n\"7063959\";\"Qindu Qu\";\"other\"\n\"7063959\";\"qin dou\";\"other\"\n\"7063959\";\"qin dou qu\";\"other\"\n\"7063959\";\"秦都\";\"other\"\n\"7063959\";\"秦都区\";\"other\"\n\"7063961\";\"Weiyang\";\"main\"\n\"7063961\";\"Weiyang Qu\";\"other\"\n\"7063961\";\"wei yang\";\"other\"\n\"7063961\";\"wei yang qu\";\"other\"\n\"7063961\";\"未央\";\"other\"\n\"7063961\";\"未央区\";\"other\"\n\"7063962\";\"Xincheng\";\"main\"\n\"7063962\";\"Xincheng Qu\";\"other\"\n\"7063962\";\"xin cheng\";\"other\"\n\"7063962\";\"xin cheng qu\";\"other\"\n\"7063962\";\"新城\";\"other\"\n\"7063962\";\"新城区\";\"other\"\n\"7063963\";\"Beilin\";\"main\"\n\"7063963\";\"Beilin Qu\";\"other\"\n\"7063963\";\"bei lin\";\"other\"\n\"7063963\";\"bei lin qu\";\"other\"\n\"7063963\";\"碑林\";\"other\"\n\"7063963\";\"碑林区\";\"other\"\n\"7063964\";\"Wangsi\";\"main\"\n\"7063964\";\"Wangsi Jieban\";\"other\"\n\"7063964\";\"wang si\";\"other\"\n\"7063964\";\"wang si jie ban\";\"other\"\n\"7063964\";\"王寺\";\"other\"\n\"7063964\";\"王寺街办\";\"other\"\n\"7064006\";\"Tongchuan\";\"main\"\n\"7064006\";\"Tongchuan Shi\";\"other\"\n\"7064006\";\"tong chuan\";\"other\"\n\"7064006\";\"tong chuan shi\";\"other\"\n\"7064006\";\"铜川\";\"other\"\n\"7064006\";\"铜川市\";\"other\"\n\"7064007\";\"Zhangjiabao\";\"main\"\n\"7064007\";\"Zhangjiabao Jieban\";\"other\"\n\"7064007\";\"zhang jia bao\";\"other\"\n\"7064007\";\"zhang jia bao jie ban\";\"other\"\n\"7064007\";\"张家堡\";\"other\"\n\"7064007\";\"张家堡街办\";\"other\"\n\"7064008\";\"Dianzicheng\";\"main\"\n\"7064008\";\"Dianzicheng Jieban\";\"other\"\n\"7064008\";\"dian zi cheng\";\"other\"\n\"7064008\";\"dian zi cheng jie ban\";\"other\"\n\"7064008\";\"电子城\";\"other\"\n\"7064008\";\"电子城街办\";\"other\"\n\"7064009\";\"Changyanbao\";\"main\"\n\"7064009\";\"Changyanbao Jieban\";\"other\"\n\"7064009\";\"zhang yan bao\";\"other\"\n\"7064009\";\"zhang yan bao jie ban\";\"other\"\n\"7064009\";\"长延堡\";\"other\"\n\"7064009\";\"长延堡街办\";\"other\"\n\"7064011\";\"Lianhu\";\"main\"\n\"7064011\";\"Lianhu Qu\";\"other\"\n\"7064011\";\"lian hu\";\"other\"\n\"7064011\";\"lian hu qu\";\"other\"\n\"7064011\";\"连湖\";\"other\"\n\"7064011\";\"连湖区\";\"other\"\n\"7064487\";\"Longmenfan\";\"main\"\n\"7064487\";\"Longmenfan Xiang\";\"other\"\n\"7064487\";\"long men fan\";\"other\"\n\"7064487\";\"long men fan xiang\";\"other\"\n\"7064487\";\"龙门畈\";\"other\"\n\"7064487\";\"龙门畈乡\";\"other\"\n\"7064497\";\"Qingban\";\"main\"\n\"7064497\";\"Qingban Xiang\";\"other\"\n\"7064497\";\"qing ban\";\"other\"\n\"7064497\";\"qing ban xiang\";\"other\"\n\"7064497\";\"青板\";\"other\"\n\"7064497\";\"青板乡\";\"other\"\n\"7064530\";\"Qinghu\";\"main\"\n\"7064530\";\"Qinghu Xiang\";\"other\"\n\"7064530\";\"qing hu\";\"other\"\n\"7064530\";\"qing hu xiang\";\"other\"\n\"7064530\";\"清湖\";\"other\"\n\"7064530\";\"清湖乡\";\"other\"\n\"7064531\";\"Nanyan\";\"main\"\n\"7064531\";\"Nanyan Zhen\";\"other\"\n\"7064531\";\"nan yan\";\"other\"\n\"7064531\";\"nan yan zhen\";\"other\"\n\"7064531\";\"南岩\";\"other\"\n\"7064531\";\"南岩镇\";\"other\"\n\"7064541\";\"Guifeng\";\"main\"\n\"7064541\";\"Guifeng Zhen\";\"other\"\n\"7064541\";\"gui feng\";\"other\"\n\"7064541\";\"gui feng zhen\";\"other\"\n\"7064541\";\"圭峰\";\"other\"\n\"7064541\";\"圭峰镇\";\"other\"\n\"7064559\";\"Zhukeng\";\"main\"\n\"7064559\";\"Zhukeng Zhen\";\"other\"\n\"7064559\";\"zhu keng\";\"other\"\n\"7064559\";\"zhu keng zhen\";\"other\"\n\"7064559\";\"朱坑\";\"other\"\n\"7064559\";\"朱坑镇\";\"other\"\n\"7064569\";\"Lianhe\";\"main\"\n\"7064569\";\"Lianhe Xiang\";\"other\"\n\"7064569\";\"lian he\";\"other\"\n\"7064569\";\"lian he xiang\";\"other\"\n\"7064569\";\"莲荷\";\"other\"\n\"7064569\";\"莲荷乡\";\"other\"\n\"7064576\";\"Sipu\";\"main\"\n\"7064576\";\"Sipu Xiang\";\"other\"\n\"7064576\";\"si pu\";\"other\"\n\"7064576\";\"si pu xiang\";\"other\"\n\"7064576\";\"司铺\";\"other\"\n\"7064576\";\"司铺乡\";\"other\"\n\"7064593\";\"Bangluo\";\"main\"\n\"7064593\";\"Bangluo Xiang\";\"other\"\n\"7064593\";\"bang luo\";\"other\"\n\"7064593\";\"bang luo xiang\";\"other\"\n\"7064593\";\"傍罗\";\"other\"\n\"7064593\";\"傍罗乡\";\"other\"\n\"7064594\";\"Qingxi\";\"main\"\n\"7064594\";\"Qingxi Zhen\";\"other\"\n\"7064594\";\"qing xi\";\"other\"\n\"7064594\";\"qing xi zhen\";\"other\"\n\"7064594\";\"青溪\";\"other\"\n\"7064594\";\"青溪镇\";\"other\"\n\"7064608\";\"Yongping\";\"main\"\n\"7064608\";\"Yongping Zhen\";\"other\"\n\"7064608\";\"yong ping\";\"other\"\n\"7064608\";\"yong ping zhen\";\"other\"\n\"7064608\";\"永平\";\"other\"\n\"7064608\";\"永平镇\";\"other\"\n\"7064650\";\"Dieshan\";\"main\"\n\"7064650\";\"Dieshan Zhen\";\"other\"\n\"7064650\";\"die shan\";\"other\"\n\"7064650\";\"die shan zhen\";\"other\"\n\"7064650\";\"叠山\";\"other\"\n\"7064650\";\"叠山镇\";\"other\"\n\"7064674\";\"Liukou\";\"main\"\n\"7064674\";\"Liukou Zhen\";\"other\"\n\"7064674\";\"liu kou\";\"other\"\n\"7064674\";\"liu kou zhen\";\"other\"\n\"7064674\";\"流口\";\"other\"\n\"7064674\";\"流口镇\";\"other\"\n\"7064678\";\"Jianzhu\";\"main\"\n\"7064678\";\"Jianzhu Xiang\";\"other\"\n\"7064678\";\"jian zhu\";\"other\"\n\"7064678\";\"jian zhu xiang\";\"other\"\n\"7064678\";\"箭竹\";\"other\"\n\"7064678\";\"箭竹乡\";\"other\"\n\"7064737\";\"Yanglin\";\"main\"\n\"7064737\";\"Yanglin Xiang\";\"other\"\n\"7064737\";\"yang lin\";\"other\"\n\"7064737\";\"yang lin xiang\";\"other\"\n\"7064737\";\"杨林\";\"other\"\n\"7064737\";\"杨林乡\";\"other\"\n\"7064744\";\"Hufang\";\"main\"\n\"7064744\";\"Hufang Zhen\";\"other\"\n\"7064744\";\"hu fang\";\"other\"\n\"7064744\";\"hu fang zhen\";\"other\"\n\"7064744\";\"湖坊\";\"other\"\n\"7064744\";\"湖坊镇\";\"other\"\n\"7064757\";\"Chenfang\";\"main\"\n\"7064757\";\"Chenfang Xiang\";\"other\"\n\"7064757\";\"chen fang\";\"other\"\n\"7064757\";\"chen fang xiang\";\"other\"\n\"7064757\";\"陈坊\";\"other\"\n\"7064757\";\"陈坊乡\";\"other\"\n\"7064787\";\"Zixi\";\"main\"\n\"7064787\";\"Zixi Xiang\";\"other\"\n\"7064787\";\"zi xi\";\"other\"\n\"7064787\";\"zi xi xiang\";\"other\"\n\"7064787\";\"紫溪\";\"other\"\n\"7064787\";\"紫溪乡\";\"other\"\n\"7064796\";\"Sanxianling\";\"main\"\n\"7064796\";\"Sanxianling Xiang\";\"other\"\n\"7064796\";\"san xian ling\";\"other\"\n\"7064796\";\"san xian ling xiang\";\"other\"\n\"7064796\";\"三县岭\";\"other\"\n\"7064796\";\"三县岭乡\";\"other\"\n\"7064797\";\"Zhongfan\";\"main\"\n\"7064797\";\"Zhongfan Xiang\";\"other\"\n\"7064797\";\"zhong fan\";\"other\"\n\"7064797\";\"zhong fan xiang\";\"other\"\n\"7064797\";\"中畈\";\"other\"\n\"7064797\";\"中畈乡\";\"other\"\n\"7064799\";\"Xinhuang\";\"main\"\n\"7064799\";\"Xinhuang Xiang\";\"other\"\n\"7064799\";\"xin huang\";\"other\"\n\"7064799\";\"xin huang xiang\";\"other\"\n\"7064799\";\"新篁\";\"other\"\n\"7064799\";\"新篁乡\";\"other\"\n\"7064801\";\"Wanli\";\"main\"\n\"7064801\";\"Wanli Xiang\";\"other\"\n\"7064801\";\"wan li\";\"other\"\n\"7064801\";\"wan li xiang\";\"other\"\n\"7064801\";\"湾里\";\"other\"\n\"7064801\";\"湾里乡\";\"other\"\n\"7064802\";\"Gexi\";\"main\"\n\"7064802\";\"Gexi Xiang\";\"other\"\n\"7064802\";\"ge xi\";\"other\"\n\"7064802\";\"ge xi xiang\";\"other\"\n\"7064802\";\"葛溪\";\"other\"\n\"7064802\";\"葛溪乡\";\"other\"\n\"7064803\";\"Xintan\";\"main\"\n\"7064803\";\"Xintan Xiang\";\"other\"\n\"7064803\";\"xin tan\";\"other\"\n\"7064803\";\"xin tan xiang\";\"other\"\n\"7064803\";\"新滩\";\"other\"\n\"7064803\";\"新滩乡\";\"other\"\n\"7064804\";\"Xuguang\";\"main\"\n\"7064804\";\"Xuguang Xiang\";\"other\"\n\"7064804\";\"xu guang\";\"other\"\n\"7064804\";\"xu guang xiang\";\"other\"\n\"7064804\";\"旭光\";\"other\"\n\"7064804\";\"旭光乡\";\"other\"\n\"7064805\";\"Jiaxuan\";\"main\"\n\"7064805\";\"Jiaxuan Xiang\";\"other\"\n\"7064805\";\"jia xuan\";\"other\"\n\"7064805\";\"jia xuan xiang\";\"other\"\n\"7064805\";\"稼轩\";\"other\"\n\"7064805\";\"稼轩乡\";\"other\"\n\"7064836\";\"Huatanshan\";\"main\"\n\"7064836\";\"Huatanshan Zhen\";\"other\"\n\"7064836\";\"hua tan shan\";\"other\"\n\"7064836\";\"hua tan shan zhen\";\"other\"\n\"7064836\";\"华坛山\";\"other\"\n\"7064836\";\"华坛山镇\";\"other\"\n\"7064864\";\"Shiren\";\"main\"\n\"7064864\";\"Shiren Xiang\";\"other\"\n\"7064864\";\"shi ren\";\"other\"\n\"7064864\";\"shi ren xiang\";\"other\"\n\"7064864\";\"石人\";\"other\"\n\"7064864\";\"石人乡\";\"other\"\n\"7064915\";\"Wangcun\";\"main\"\n\"7064915\";\"Wangcun Xiang\";\"other\"\n\"7064915\";\"wang cun\";\"other\"\n\"7064915\";\"wang cun xiang\";\"other\"\n\"7064915\";\"汪村\";\"other\"\n\"7064915\";\"汪村乡\";\"other\"\n\"7064916\";\"Qingshui\";\"main\"\n\"7064916\";\"Qingshui Xiang\";\"other\"\n\"7064916\";\"qing shui\";\"other\"\n\"7064916\";\"qing shui xiang\";\"other\"\n\"7064916\";\"清水\";\"other\"\n\"7064916\";\"清水乡\";\"other\"\n\"7064920\";\"Huanggu\";\"main\"\n\"7064920\";\"Huanggu Zhen\";\"other\"\n\"7064920\";\"huang gu\";\"other\"\n\"7064920\";\"huang gu zhen\";\"other\"\n\"7064920\";\"煌固\";\"other\"\n\"7064920\";\"煌固镇\";\"other\"\n\"7064958\";\"Chaoyang\";\"main\"\n\"7064958\";\"Chaoyang Xiang\";\"other\"\n\"7064958\";\"chao yang\";\"other\"\n\"7064958\";\"chao yang xiang\";\"other\"\n\"7064958\";\"朝阳\";\"other\"\n\"7064958\";\"朝阳乡\";\"other\"\n\"7064959\";\"Lingxi\";\"main\"\n\"7064959\";\"Lingxi Zhen\";\"other\"\n\"7064959\";\"ling xi\";\"other\"\n\"7064959\";\"ling xi zhen\";\"other\"\n\"7064959\";\"灵溪\";\"other\"\n\"7064959\";\"灵溪镇\";\"other\"\n\"7064965\";\"Shishi\";\"main\"\n\"7064965\";\"Shishi Xiang\";\"other\"\n\"7064965\";\"shi shi\";\"other\"\n\"7064965\";\"shi shi xiang\";\"other\"\n\"7064965\";\"石狮\";\"other\"\n\"7064965\";\"石狮乡\";\"other\"\n\"7065042\";\"Chating\";\"main\"\n\"7065042\";\"Chating Zhen\";\"other\"\n\"7065042\";\"cha ting\";\"other\"\n\"7065042\";\"cha ting zhen\";\"other\"\n\"7065042\";\"茶亭\";\"other\"\n\"7065042\";\"茶亭镇\";\"other\"\n\"7065063\";\"Huangshaling\";\"main\"\n\"7065063\";\"Huangshaling Xiang\";\"other\"\n\"7065063\";\"huang sha ling\";\"other\"\n\"7065063\";\"huang sha ling xiang\";\"other\"\n\"7065063\";\"黄沙岭\";\"other\"\n\"7065063\";\"黄沙岭乡\";\"other\"\n\"7065111\";\"Sishiba\";\"main\"\n\"7065111\";\"Sishiba Zhen\";\"other\"\n\"7065111\";\"si shi ba\";\"other\"\n\"7065111\";\"si shi ba zhen\";\"other\"\n\"7065111\";\"四十八\";\"other\"\n\"7065111\";\"四十八镇\";\"other\"\n\"7065290\";\"Sanqing\";\"main\"\n\"7065290\";\"Sanqing Xiang\";\"other\"\n\"7065290\";\"san qing\";\"other\"\n\"7065290\";\"san qing xiang\";\"other\"\n\"7065290\";\"三清\";\"other\"\n\"7065290\";\"三清乡\";\"other\"\n\"7065291\";\"Zihu\";\"main\"\n\"7065291\";\"Zihu Zhen\";\"other\"\n\"7065291\";\"zi hu\";\"other\"\n\"7065291\";\"zi hu zhen\";\"other\"\n\"7065291\";\"紫湖\";\"other\"\n\"7065291\";\"紫湖镇\";\"other\"\n\"7065390\";\"Nanshan\";\"main\"\n\"7065390\";\"Nanshan Xiang\";\"other\"\n\"7065390\";\"nan shan\";\"other\"\n\"7065390\";\"nan shan xiang\";\"other\"\n\"7065390\";\"南山\";\"other\"\n\"7065390\";\"南山乡\";\"other\"\n\"7065462\";\"Danan\";\"main\"\n\"7065462\";\"Danan Zhen\";\"other\"\n\"7065462\";\"da nan\";\"other\"\n\"7065462\";\"da nan zhen\";\"other\"\n\"7065462\";\"大南\";\"other\"\n\"7065462\";\"大南镇\";\"other\"\n\"7065530\";\"Huacun\";\"main\"\n\"7065530\";\"Huacun Xiang\";\"other\"\n\"7065530\";\"hua cun\";\"other\"\n\"7065530\";\"hua cun xiang\";\"other\"\n\"7065530\";\"华村\";\"other\"\n\"7065530\";\"华村乡\";\"other\"\n\"7065541\";\"Gaozhou\";\"main\"\n\"7065541\";\"Gaozhou Xiang\";\"other\"\n\"7065541\";\"gao zhou\";\"other\"\n\"7065541\";\"gao zhou xiang\";\"other\"\n\"7065541\";\"高洲\";\"other\"\n\"7065541\";\"高洲乡\";\"other\"\n\"7065542\";\"Wufushan\";\"main\"\n\"7065542\";\"Wufushan Zhen\";\"other\"\n\"7065542\";\"wu fu shan\";\"other\"\n\"7065542\";\"wu fu shan zhen\";\"other\"\n\"7065542\";\"五府山\";\"other\"\n\"7065542\";\"五府山镇\";\"other\"\n\"7065574\";\"Baitian\";\"main\"\n\"7065574\";\"Baitian Xiang\";\"other\"\n\"7065574\";\"bai tian\";\"other\"\n\"7065574\";\"bai tian xiang\";\"other\"\n\"7065574\";\"白田\";\"other\"\n\"7065574\";\"白田乡\";\"other\"\n\"7065614\";\"Zhiguang\";\"main\"\n\"7065614\";\"Zhiguang Zhen\";\"other\"\n\"7065614\";\"zhi guang\";\"other\"\n\"7065614\";\"志光\";\"other\"\n\"7065643\";\"Binjiang\";\"main\"\n\"7065643\";\"Binjiang Xiang\";\"other\"\n\"7065643\";\"bin jiang\";\"other\"\n\"7065643\";\"bin jiang xiang\";\"other\"\n\"7065643\";\"滨江\";\"other\"\n\"7065643\";\"滨江乡\";\"other\"\n\"7065656\";\"Luohe\";\"main\"\n\"7065656\";\"Luohe Zhen\";\"other\"\n\"7065656\";\"luo he\";\"other\"\n\"7065656\";\"luo he zhen\";\"other\"\n\"7065656\";\"罗河\";\"other\"\n\"7065656\";\"罗河镇\";\"other\"\n\"7065668\";\"Jintun\";\"main\"\n\"7065668\";\"Jintun Zhen\";\"other\"\n\"7065668\";\"jin tun\";\"other\"\n\"7065668\";\"jin tun zhen\";\"other\"\n\"7065668\";\"金屯\";\"other\"\n\"7065668\";\"金屯镇\";\"other\"\n\"7065721\";\"Tangwan\";\"main\"\n\"7065721\";\"Tangwan Zhen\";\"other\"\n\"7065721\";\"tang wan\";\"other\"\n\"7065721\";\"tang wan zhen\";\"other\"\n\"7065721\";\"塘湾\";\"other\"\n\"7065721\";\"塘湾镇\";\"other\"\n\"7065744\";\"Yujia\";\"main\"\n\"7065744\";\"Yujia Xiang\";\"other\"\n\"7065744\";\"yu jia\";\"other\"\n\"7065744\";\"yu jia xiang\";\"other\"\n\"7065744\";\"余家\";\"other\"\n\"7065744\";\"余家乡\";\"other\"\n\"7065785\";\"Huaqiao\";\"main\"\n\"7065785\";\"Huaqiao Zhen\";\"other\"\n\"7065785\";\"hua qiao\";\"other\"\n\"7065785\";\"hua qiao zhen\";\"other\"\n\"7065785\";\"画桥\";\"other\"\n\"7065785\";\"画桥镇\";\"other\"\n\"7065828\";\"Fulin\";\"main\"\n\"7065828\";\"Fulin Xiang\";\"other\"\n\"7065828\";\"fu lin\";\"other\"\n\"7065828\";\"fu lin xiang\";\"other\"\n\"7065828\";\"富林\";\"other\"\n\"7065828\";\"富林乡\";\"other\"\n\"7065989\";\"Longtoushan\";\"main\"\n\"7065989\";\"Longtoushan Xiang\";\"other\"\n\"7065989\";\"long tou shan\";\"other\"\n\"7065989\";\"long tou shan xiang\";\"other\"\n\"7065989\";\"龙头山\";\"other\"\n\"7065989\";\"龙头山乡\";\"other\"\n\"7066113\";\"Zhenqiao\";\"main\"\n\"7066113\";\"Zhenqiao Zhen\";\"other\"\n\"7066113\";\"zhen qiao\";\"other\"\n\"7066113\";\"zhen qiao zhen\";\"other\"\n\"7066113\";\"镇桥\";\"other\"\n\"7066113\";\"镇桥镇\";\"other\"\n\"7066209\";\"Wuyishan\";\"main\"\n\"7066209\";\"Wuyishan Zhen\";\"other\"\n\"7066209\";\"wu yi shan\";\"other\"\n\"7066209\";\"wu yi shan zhen\";\"other\"\n\"7066209\";\"武夷山\";\"other\"\n\"7066209\";\"武夷山镇\";\"other\"\n\"7066210\";\"Huanggangshan\";\"main\"\n\"7066210\";\"Huanggangshan Zhen\";\"other\"\n\"7066210\";\"huang gang shan\";\"other\"\n\"7066210\";\"huang gang shan zhen\";\"other\"\n\"7066210\";\"黄岗山\";\"other\"\n\"7066210\";\"黄岗山镇\";\"other\"\n\"7066216\";\"Tongfan\";\"main\"\n\"7066216\";\"Tongfan Zhen\";\"other\"\n\"7066216\";\"tong fan\";\"other\"\n\"7066216\";\"tong fan zhen\";\"other\"\n\"7066216\";\"桐畈\";\"other\"\n\"7066216\";\"桐畈镇\";\"other\"\n\"7066221\";\"Xiatang\";\"main\"\n\"7066221\";\"Xiatang Xiang\";\"other\"\n\"7066221\";\"xia tang\";\"other\"\n\"7066221\";\"xia tang xiang\";\"other\"\n\"7066221\";\"下塘\";\"other\"\n\"7066221\";\"下塘乡\";\"other\"\n\"7066223\";\"Bimu\";\"main\"\n\"7066223\";\"Bimu Zhen\";\"other\"\n\"7066223\";\"bi mu\";\"other\"\n\"7066223\";\"bi mu zhen\";\"other\"\n\"7066223\";\"妼姆\";\"other\"\n\"7066223\";\"妼姆镇\";\"other\"\n\"7066231\";\"Songfeng\";\"main\"\n\"7066231\";\"Songfeng Xiang\";\"other\"\n\"7066231\";\"song feng\";\"other\"\n\"7066231\";\"song feng xiang\";\"other\"\n\"7066231\";\"嵩峰\";\"other\"\n\"7066231\";\"嵩峰乡\";\"other\"\n\"7066232\";\"Quanbo\";\"main\"\n\"7066232\";\"Quanbo Zhen\";\"other\"\n\"7066232\";\"quan bo zhen\";\"other\"\n\"7066232\";\"quan po\";\"other\"\n\"7066232\";\"泉波镇\";\"other\"\n\"7066232\";\"泉破\";\"other\"\n\"7066245\";\"Xiaxi\";\"main\"\n\"7066245\";\"Xiaxi Zhen\";\"other\"\n\"7066245\";\"xia xi\";\"other\"\n\"7066245\";\"xia xi zhen\";\"other\"\n\"7066245\";\"下溪\";\"other\"\n\"7066245\";\"下溪镇\";\"other\"\n\"7066247\";\"Guancun\";\"main\"\n\"7066247\";\"Guancun Xiang\";\"other\"\n\"7066247\";\"guan cun\";\"other\"\n\"7066247\";\"guan cun xiang\";\"other\"\n\"7066247\";\"管村\";\"other\"\n\"7066247\";\"管村乡\";\"other\"\n\"7066256\";\"Mingyang\";\"main\"\n\"7066256\";\"Mingyang Xiang\";\"other\"\n\"7066256\";\"ming yang\";\"other\"\n\"7066256\";\"ming yang xiang\";\"other\"\n\"7066256\";\"茗洋\";\"other\"\n\"7066256\";\"茗洋乡\";\"other\"\n\"7066458\";\"Lingyang\";\"main\"\n\"7066458\";\"Lingyang Zhen\";\"other\"\n\"7066458\";\"ling yang\";\"other\"\n\"7066458\";\"ling yang zhen\";\"other\"\n\"7066458\";\"岺阳\";\"other\"\n\"7066458\";\"岺阳镇\";\"other\"\n\"7066459\";\"Hekou\";\"main\"\n\"7066459\";\"Hekou Zhen\";\"other\"\n\"7066459\";\"he kou\";\"other\"\n\"7066459\";\"he kou zhen\";\"other\"\n\"7066459\";\"河口\";\"other\"\n\"7066459\";\"河口镇\";\"other\"\n\"7066460\";\"Yiyang\";\"main\"\n\"7066460\";\"Yiyang Zhen\";\"other\"\n\"7066460\";\"yi yang\";\"other\"\n\"7066460\";\"yi yang zhen\";\"other\"\n\"7066460\";\"弋阳\";\"other\"\n\"7066460\";\"弋阳镇\";\"other\"\n\"7066461\";\"Chenying\";\"main\"\n\"7066461\";\"Chenying Zhen\";\"other\"\n\"7066461\";\"chen ying\";\"other\"\n\"7066461\";\"chen ying zhen\";\"other\"\n\"7066461\";\"陈营\";\"other\"\n\"7066461\";\"陈营镇\";\"other\"\n\"7066462\";\"Zhushan\";\"main\"\n\"7066462\";\"Zhushan Xiang\";\"other\"\n\"7066462\";\"zhu shan\";\"other\"\n\"7066462\";\"zhu shan xiang\";\"other\"\n\"7066462\";\"珠山\";\"other\"\n\"7066462\";\"珠山乡\";\"other\"\n\"7067051\";\"Zhiyang\";\"main\"\n\"7067051\";\"Zhiyang Zhen\";\"other\"\n\"7067051\";\"zhi yang zhen\";\"other\"\n\"7067051\";\"滍阳镇\";\"other\"\n\"7067066\";\"Nanguzhuang\";\"main\"\n\"7067066\";\"Nanguzhuang Jiedao\";\"other\"\n\"7067066\";\"nan gu zhuang\";\"other\"\n\"7067066\";\"nan gu zhuang jie dao\";\"other\"\n\"7067066\";\"南顾庄\";\"other\"\n\"7067066\";\"南顾庄街道\";\"other\"\n\"7067102\";\"Geyang\";\"main\"\n\"7067102\";\"Geyang Zhen\";\"other\"\n\"7067102\";\"ge yang\";\"other\"\n\"7067102\";\"ge yang zhen\";\"other\"\n\"7067102\";\"各羊\";\"other\"\n\"7067102\";\"各羊镇\";\"other\"\n\"7067109\";\"Jiujie\";\"main\"\n\"7067109\";\"Jiujie Zhen\";\"other\"\n\"7067109\";\"jiu jie\";\"other\"\n\"7067109\";\"jiu jie zhen\";\"other\"\n\"7067109\";\"九街\";\"other\"\n\"7067109\";\"九街镇\";\"other\"\n\"7067319\";\"Xuzhen\";\"main\"\n\"7067319\";\"Xuzhen Zhen\";\"other\"\n\"7067319\";\"xu zhen\";\"other\"\n\"7067319\";\"xu zhen zhen\";\"other\"\n\"7067319\";\"许镇\";\"other\"\n\"7067319\";\"许镇镇\";\"other\"\n\"7067329\";\"Hongyang\";\"main\"\n\"7067329\";\"Hongyang Zhen\";\"other\"\n\"7067329\";\"hong yang\";\"other\"\n\"7067329\";\"hong yang zhen\";\"other\"\n\"7067329\";\"红杨\";\"other\"\n\"7067329\";\"红杨镇\";\"other\"\n\"7067440\";\"Liqiao\";\"main\"\n\"7067440\";\"Liqiao Zhen\";\"other\"\n\"7067440\";\"li qiao\";\"other\"\n\"7067440\";\"li qiao zhen\";\"other\"\n\"7067440\";\"狸桥\";\"other\"\n\"7067440\";\"狸桥镇\";\"other\"\n\"7067456\";\"Liulang\";\"main\"\n\"7067456\";\"Liulang Zhen\";\"other\"\n\"7067456\";\"liu lang\";\"other\"\n\"7067456\";\"liu lang zhen\";\"other\"\n\"7067456\";\"六郎\";\"other\"\n\"7067456\";\"六郎镇\";\"other\"\n\"7067527\";\"Baiqiao\";\"main\"\n\"7067527\";\"Baiqiao Zhen\";\"other\"\n\"7067527\";\"bai qiao\";\"other\"\n\"7067527\";\"bai qiao zhen\";\"other\"\n\"7067527\";\"白桥\";\"other\"\n\"7067527\";\"白桥镇\";\"other\"\n\"7067534\";\"Laoqiao\";\"main\"\n\"7067534\";\"Laoqiaozhen\";\"other\"\n\"7067534\";\"mu qiao\";\"other\"\n\"7067534\";\"mu qiao zhen\";\"other\"\n\"7067534\";\"姥桥\";\"other\"\n\"7067534\";\"姥桥镇\";\"other\"\n\"7069018\";\"Zhishan\";\"main\"\n\"7069018\";\"Zhishan Jiedao\";\"other\"\n\"7069018\";\"zhi shan\";\"other\"\n\"7069018\";\"zhi shan jie dao\";\"other\"\n\"7069018\";\"芝山\";\"other\"\n\"7069018\";\"芝山街道\";\"other\"\n\"7069199\";\"Wuhu\";\"main\"\n\"7069199\";\"Wuhu Xian\";\"other\"\n\"7069199\";\"wu hu\";\"other\"\n\"7069199\";\"wu hu xian\";\"other\"\n\"7069199\";\"芜湖\";\"other\"\n\"7069199\";\"芜湖县\";\"other\"\n\"7069322\";\"Dongzhou\";\"main\"\n\"7069322\";\"dong zhou\";\"other\"\n\"7069322\";\"董周\";\"other\"\n\"7069422\";\"Huayuan\";\"main\"\n\"7069422\";\"hua yuan\";\"other\"\n\"7069422\";\"花园\";\"other\"\n\"7069457\";\"Tongshan\";\"main\"\n\"7069457\";\"tong shan\";\"other\"\n\"7069457\";\"铜山\";\"other\"\n\"7069527\";\"Taishanmiao\";\"main\"\n\"7069527\";\"tai shan miao\";\"other\"\n\"7069527\";\"泰山庙\";\"other\"\n\"7069734\";\"Cuizhuang\";\"main\"\n\"7069734\";\"cui zhuang\";\"other\"\n\"7069734\";\"崔庄\";\"other\"\n\"7069735\";\"Chengjiao\";\"main\"\n\"7069735\";\"cheng jiao\";\"other\"\n\"7069735\";\"城郊\";\"other\"\n\"7069745\";\"Huanghou\";\"main\"\n\"7069745\";\"huang hou\";\"other\"\n\"7069745\";\"皇后\";\"other\"\n\"7069747\";\"Yangji\";\"main\"\n\"7069747\";\"yang ji\";\"other\"\n\"7069747\";\"杨集\";\"other\"\n\"7069748\";\"Qinghe\";\"main\"\n\"7069748\";\"qing he\";\"other\"\n\"7069748\";\"清河\";\"other\"\n\"7070437\";\"Wuxiang\";\"main\"\n\"7070437\";\"Wuxiang Zhen\";\"other\"\n\"7070437\";\"wu xiang\";\"other\"\n\"7070437\";\"wu xiang zhen\";\"other\"\n\"7070437\";\"五乡\";\"other\"\n\"7070437\";\"五乡镇\";\"other\"\n\"7070567\";\"Liu’ao\";\"main\"\n\"7070567\";\"Liu'ao\";\"ascii\"\n\"7070567\";\"Liu'ao Zhen\";\"other\"\n\"7070567\";\"Liu’ao Zhen\";\"other\"\n\"7070567\";\"liu ao\";\"other\"\n\"7070567\";\"liu ao zhen\";\"other\"\n\"7070567\";\"六敖\";\"other\"\n\"7070567\";\"六敖镇\";\"other\"\n\"7070575\";\"Minggang\";\"main\"\n\"7070575\";\"Minggang Zhen\";\"other\"\n\"7070575\";\"ming gang\";\"other\"\n\"7070575\";\"ming gang zhen\";\"other\"\n\"7070575\";\"明港\";\"other\"\n\"7070575\";\"明港镇\";\"other\"\n\"7070622\";\"Duantang\";\"main\"\n\"7070622\";\"Duantang Jiedao\";\"other\"\n\"7070622\";\"duan tang\";\"other\"\n\"7070622\";\"duan tang jie dao\";\"other\"\n\"7070622\";\"段塘\";\"other\"\n\"7070622\";\"段塘街道\";\"other\"\n\"7070623\";\"Dongqianhu\";\"main\"\n\"7070623\";\"Dongqianhu Zhen\";\"other\"\n\"7070623\";\"dong qian hu\";\"other\"\n\"7070623\";\"dong qian hu zhen\";\"other\"\n\"7070623\";\"东钱湖\";\"other\"\n\"7070623\";\"东钱湖镇\";\"other\"\n\"7070639\";\"Tangtou\";\"main\"\n\"7070639\";\"Tangxi\";\"other\"\n\"7070639\";\"Tangxi Zhen\";\"other\"\n\"7070639\";\"tang tou\";\"other\"\n\"7070639\";\"tang xi\";\"other\"\n\"7070639\";\"tang xi zhen\";\"other\"\n\"7070639\";\"塘头\";\"other\"\n\"7070639\";\"塘溪\";\"other\"\n\"7070639\";\"塘溪镇\";\"other\"\n\"7070644\";\"Yongjiang\";\"main\"\n\"7070644\";\"Yongjiang Zhen\";\"other\"\n\"7070644\";\"yong jiang\";\"other\"\n\"7070644\";\"yong jiang zhen\";\"other\"\n\"7070644\";\"甬江\";\"other\"\n\"7070644\";\"甬江镇\";\"other\"\n\"7070648\";\"Dongjiao\";\"main\"\n\"7070648\";\"Dongjiao Jiedao\";\"other\"\n\"7070648\";\"dong jiao\";\"other\"\n\"7070648\";\"dong jiao jie dao\";\"other\"\n\"7070648\";\"东郊\";\"other\"\n\"7070648\";\"东郊街道\";\"other\"\n\"7070921\";\"Daying\";\"main\"\n\"7070921\";\"Daying Zhen\";\"other\"\n\"7070921\";\"da ying\";\"other\"\n\"7070921\";\"da ying zhen\";\"other\"\n\"7070921\";\"大营\";\"other\"\n\"7070921\";\"大营镇\";\"other\"\n\"7070927\";\"Qianying\";\"main\"\n\"7070927\";\"qian ying\";\"other\"\n\"7070927\";\"前营\";\"other\"\n\"7071012\";\"Jingang\";\"main\"\n\"7071012\";\"jin gang\";\"other\"\n\"7071012\";\"靳岗\";\"other\"\n\"7071013\";\"Chengjiao\";\"main\"\n\"7071013\";\"cheng jiao\";\"other\"\n\"7071013\";\"城郊\";\"other\"\n\"7071227\";\"Choujiang\";\"main\"\n\"7071227\";\"Choujiang Zhen\";\"other\"\n\"7071227\";\"chou jiang\";\"other\"\n\"7071227\";\"chou jiang zhen\";\"other\"\n\"7071227\";\"稠江\";\"other\"\n\"7071227\";\"稠江镇\";\"other\"\n\"7071293\";\"Dachen\";\"main\"\n\"7071293\";\"Dachen Zhen\";\"other\"\n\"7071293\";\"da chen\";\"other\"\n\"7071293\";\"da chen zhen\";\"other\"\n\"7071293\";\"大陈\";\"other\"\n\"7071293\";\"大陈镇\";\"other\"\n\"7071355\";\"Longshan\";\"main\"\n\"7071355\";\"Longshan Zhen\";\"other\"\n\"7071355\";\"long shan\";\"other\"\n\"7071355\";\"long shan zhen\";\"other\"\n\"7071355\";\"龙山\";\"other\"\n\"7071355\";\"龙山镇\";\"other\"\n\"7071409\";\"Chenzhai\";\"main\"\n\"7071409\";\"Chenzhai Zhen\";\"other\"\n\"7071409\";\"chen zhai\";\"other\"\n\"7071409\";\"chen zhai zhen\";\"other\"\n\"7071409\";\"陈宅\";\"other\"\n\"7071409\";\"陈宅镇\";\"other\"\n\"7071551\";\"Nanshi\";\"main\"\n\"7071551\";\"Nanshi Jiedao\";\"other\"\n\"7071551\";\"nan shi\";\"other\"\n\"7071551\";\"nan shi jie dao\";\"other\"\n\"7071551\";\"南市\";\"other\"\n\"7071551\";\"南市街道\";\"other\"\n\"7071576\";\"Wuning\";\"main\"\n\"7071576\";\"Wuning Jiedao\";\"other\"\n\"7071576\";\"wu ning\";\"other\"\n\"7071576\";\"wu ning jie dao\";\"other\"\n\"7071576\";\"吴宁\";\"other\"\n\"7071576\";\"吴宁街道\";\"other\"\n\"7071582\";\"Jiangbei\";\"main\"\n\"7071582\";\"Jiangbei Jiedao\";\"other\"\n\"7071582\";\"jiang bei\";\"other\"\n\"7071582\";\"jiang bei jie dao\";\"other\"\n\"7071582\";\"江北\";\"other\"\n\"7071582\";\"江北街道\";\"other\"\n\"7071603\";\"Chengdong\";\"main\"\n\"7071603\";\"Chengdong Jiedao\";\"other\"\n\"7071603\";\"cheng dong\";\"other\"\n\"7071603\";\"cheng dong jie dao\";\"other\"\n\"7071603\";\"城东\";\"other\"\n\"7071603\";\"城东街道\";\"other\"\n\"7071654\";\"Haoba\";\"main\"\n\"7071654\";\"Haoba Zhen\";\"other\"\n\"7071654\";\"hao ba\";\"other\"\n\"7071654\";\"hao ba zhen\";\"other\"\n\"7071654\";\"蒿坝\";\"other\"\n\"7071654\";\"蒿坝镇\";\"other\"\n\"7071719\";\"Zhutiantou\";\"main\"\n\"7071719\";\"Jidong\";\"other\"\n\"7071719\";\"Jidong Zhen\";\"other\"\n\"7071719\";\"ji dong zhen\";\"other\"\n\"7071719\";\"zhu tian tou\";\"other\"\n\"7071719\";\"稽东镇\";\"other\"\n\"7071719\";\"竹田头\";\"other\"\n\"7071797\";\"Fushan\";\"main\"\n\"7071797\";\"Fushan Jiedao\";\"other\"\n\"7071797\";\"fu shan\";\"other\"\n\"7071797\";\"fu shan jie dao\";\"other\"\n\"7071797\";\"府山\";\"other\"\n\"7071797\";\"府山街道\";\"other\"\n\"7071799\";\"Jianhu\";\"main\"\n\"7071799\";\"Jianhu Zhen\";\"other\"\n\"7071799\";\"jian hu\";\"other\"\n\"7071799\";\"jian hu zhen\";\"other\"\n\"7071799\";\"鉴湖\";\"other\"\n\"7071799\";\"鉴湖镇\";\"other\"\n\"7071800\";\"Chengnan\";\"main\"\n\"7071800\";\"Chengnan Jiedao\";\"other\"\n\"7071800\";\"cheng nan\";\"other\"\n\"7071800\";\"cheng nan jie dao\";\"other\"\n\"7071800\";\"城南\";\"other\"\n\"7071800\";\"城南街道\";\"other\"\n\"7071804\";\"Jishan\";\"main\"\n\"7071804\";\"Jishan Jiedao\";\"other\"\n\"7071804\";\"ji shan\";\"other\"\n\"7071804\";\"ji shan jie dao\";\"other\"\n\"7071804\";\"稽山\";\"other\"\n\"7071804\";\"稽山街道\";\"other\"\n\"7071824\";\"Yongheshi\";\"main\"\n\"7071824\";\"Yonghe\";\"other\"\n\"7071824\";\"Yonghe Zhen\";\"other\"\n\"7071824\";\"yong he shi\";\"other\"\n\"7071824\";\"yong he zhen\";\"other\"\n\"7071824\";\"永和市\";\"other\"\n\"7071824\";\"永和镇\";\"other\"\n\"7072188\";\"Dongqiao\";\"main\"\n\"7072188\";\"Dongqiao Zhen\";\"other\"\n\"7072188\";\"dong qiao\";\"other\"\n\"7072188\";\"dong qiao zhen\";\"other\"\n\"7072188\";\"洞桥\";\"other\"\n\"7072188\";\"洞桥镇\";\"other\"\n\"7072236\";\"Jinping\";\"main\"\n\"7072236\";\"Jinping Jiedao\";\"other\"\n\"7072236\";\"jin ping\";\"other\"\n\"7072236\";\"jin ping jie dao\";\"other\"\n\"7072236\";\"锦屏\";\"other\"\n\"7072236\";\"锦屏街道\";\"other\"\n\"7072290\";\"Chengguan\";\"main\"\n\"7072290\";\"Chengguan Zhen\";\"other\"\n\"7072290\";\"cheng guan\";\"other\"\n\"7072290\";\"cheng guan zhen\";\"other\"\n\"7072290\";\"城关\";\"other\"\n\"7072290\";\"城关镇\";\"other\"\n\"7072317\";\"Zhu’ao\";\"main\"\n\"7072317\";\"Zhu'ao\";\"ascii\"\n\"7072317\";\"Zhu'ao Zhen\";\"other\"\n\"7072317\";\"Zhu’ao Zhen\";\"other\"\n\"7072317\";\"zhu ao\";\"other\"\n\"7072317\";\"zhu ao zhen\";\"other\"\n\"7072317\";\"朱岙\";\"other\"\n\"7072317\";\"朱岙镇\";\"other\"\n\"7072392\";\"Meizhu\";\"main\"\n\"7072392\";\"Meizhu Zhen\";\"other\"\n\"7072392\";\"mei zhu\";\"other\"\n\"7072392\";\"mei zhu zhen\";\"other\"\n\"7072392\";\"梅渚\";\"other\"\n\"7072392\";\"梅渚镇\";\"other\"\n\"7072678\";\"Dacun\";\"main\"\n\"7072678\";\"Hongtao\";\"other\"\n\"7072678\";\"Hongtao Zhen\";\"other\"\n\"7072678\";\"hong tao zhen\";\"other\"\n\"7072678\";\"大村\";\"other\"\n\"7072678\";\"洪涛镇\";\"other\"\n\"7072825\";\"Pan’an\";\"main\"\n\"7072825\";\"Pan'an\";\"ascii\"\n\"7072825\";\"pan an\";\"other\"\n\"7072825\";\"磐安\";\"other\"\n\"7073137\";\"Muzhijie\";\"main\"\n\"7073137\";\"mu zhi jie\";\"other\"\n\"7073137\";\"木植街\";\"other\"\n\"7073339\";\"Arzak\";\"main\"\n\"7073339\";\"Arzak Xiang\";\"other\"\n\"7073339\";\"Azhake Xiang\";\"other\"\n\"7073339\";\"a zha ke\";\"other\"\n\"7073339\";\"a zha ke xiang\";\"other\"\n\"7073339\";\"阿扎克\";\"other\"\n\"7073339\";\"阿扎克乡\";\"other\"\n\"7073440\";\"Tangzhuang\";\"main\"\n\"7073440\";\"tang zhuang\";\"other\"\n\"7073440\";\"唐庄\";\"other\"\n\"7073550\";\"Chengjiao\";\"main\"\n\"7073550\";\"cheng jiao\";\"other\"\n\"7073550\";\"城郊\";\"other\"\n\"7076549\";\"Liujia\";\"main\"\n\"7076549\";\"Liujia Xiang\";\"other\"\n\"7076549\";\"liu jia\";\"other\"\n\"7076549\";\"liu jia xiang\";\"other\"\n\"7076549\";\"柳家\";\"other\"\n\"7076549\";\"柳家乡\";\"other\"\n\"7076550\";\"Wujia\";\"main\"\n\"7076550\";\"Wujia Xiang\";\"other\"\n\"7076550\";\"wu jia\";\"other\"\n\"7076550\";\"wu jia xiang\";\"other\"\n\"7076550\";\"吴家\";\"other\"\n\"7076550\";\"吴家乡\";\"other\"\n\"7076551\";\"Baojia\";\"main\"\n\"7076551\";\"Baojia Zhen\";\"other\"\n\"7076551\";\"bao jia\";\"other\"\n\"7076551\";\"鲍家\";\"other\"\n\"7076552\";\"Beizhen\";\"main\"\n\"7076552\";\"Beizhen Shi\";\"other\"\n\"7076552\";\"bei zhen\";\"other\"\n\"7076552\";\"bei zhen shi\";\"other\"\n\"7076552\";\"北镇\";\"other\"\n\"7076552\";\"北镇市\";\"other\"\n\"7076747\";\"Shanxi\";\"main\"\n\"7076747\";\"Shanshenmiao Xiang\";\"other\"\n\"7076747\";\"shan shen miao xiang\";\"other\"\n\"7076747\";\"shan xi\";\"other\"\n\"7076747\";\"山神庙乡\";\"other\"\n\"7076747\";\"山西\";\"other\"\n\"7076762\";\"Baimashi\";\"main\"\n\"7076762\";\"Baimashi Xiang\";\"other\"\n\"7076762\";\"bai ma shi\";\"other\"\n\"7076762\";\"bai ma shi xiang\";\"other\"\n\"7076762\";\"白马石\";\"other\"\n\"7076762\";\"白马石乡\";\"other\"\n\"7076796\";\"Heiiyugou\";\"main\"\n\"7076796\";\"Yangjiao Xiang\";\"other\"\n\"7076796\";\"hei yu gou\";\"other\"\n\"7076796\";\"yang jiao xiang\";\"other\"\n\"7076796\";\"杨郊乡\";\"other\"\n\"7076796\";\"黑鱼沟\";\"other\"\n\"7076873\";\"Jinjiao\";\"main\"\n\"7076873\";\"Jinjiao Jiedao\";\"other\"\n\"7076873\";\"jin jiao\";\"other\"\n\"7076873\";\"jin jiao jie dao\";\"other\"\n\"7076873\";\"锦郊\";\"other\"\n\"7076873\";\"锦郊街道\";\"other\"\n\"7076878\";\"Yuhuang\";\"main\"\n\"7076878\";\"Yuhuang Jiedao\";\"other\"\n\"7076878\";\"yu huang\";\"other\"\n\"7076878\";\"yu huang jie dao\";\"other\"\n\"7076878\";\"玉皇\";\"other\"\n\"7076878\";\"玉皇街道\";\"other\"\n\"7076881\";\"Longgang\";\"main\"\n\"7076881\";\"Longgang Qu\";\"other\"\n\"7076881\";\"long gang\";\"other\"\n\"7076881\";\"long gang qu\";\"other\"\n\"7076881\";\"龙港\";\"other\"\n\"7076881\";\"龙港区\";\"other\"\n\"7076882\";\"Cishan\";\"main\"\n\"7076882\";\"Lianwan Jiedao\";\"other\"\n\"7076882\";\"ci shan\";\"other\"\n\"7076882\";\"lian wan jie dao\";\"other\"\n\"7076882\";\"茨山\";\"other\"\n\"7076882\";\"连湾街道\";\"other\"\n\"7076883\";\"Dabaimashi\";\"main\"\n\"7076883\";\"Beigang Jiedao\";\"other\"\n\"7076883\";\"bei gang jie dao\";\"other\"\n\"7076883\";\"da bai ma shi\";\"other\"\n\"7076883\";\"北港街道\";\"other\"\n\"7076883\";\"大白马石\";\"other\"\n\"7090205\";\"Donglinxi\";\"main\"\n\"7090205\";\"Donglinxi Zhen\";\"other\"\n\"7090205\";\"dong lin xi\";\"other\"\n\"7090205\";\"dong lin xi zhen\";\"other\"\n\"7090205\";\"东临溪\";\"other\"\n\"7090205\";\"东临溪镇\";\"other\"\n\"7090485\";\"Fengjia\";\"main\"\n\"7090485\";\"Fengjia Zhen\";\"other\"\n\"7090485\";\"feng jia\";\"other\"\n\"7090485\";\"feng jia zhen\";\"other\"\n\"7090485\";\"封家\";\"other\"\n\"7090485\";\"封家镇\";\"other\"\n\"7090494\";\"Xikou\";\"main\"\n\"7090494\";\"Linshan\";\"other\"\n\"7090494\";\"lin shan\";\"other\"\n\"7090494\";\"xi kou\";\"other\"\n\"7090494\";\"林山\";\"other\"\n\"7090494\";\"溪口\";\"other\"\n\"7090513\";\"Xiayinkeng\";\"main\"\n\"7090513\";\"Yinkeng\";\"other\"\n\"7090513\";\"xia yin keng\";\"other\"\n\"7090513\";\"yin keng\";\"other\"\n\"7090513\";\"下音坑\";\"other\"\n\"7090513\";\"音坑\";\"other\"\n\"7090540\";\"Maotan\";\"main\"\n\"7090540\";\"Suzhuang\";\"other\"\n\"7090540\";\"Suzhuang Zhen\";\"other\"\n\"7090540\";\"mao tan\";\"other\"\n\"7090540\";\"su zhuang\";\"other\"\n\"7090540\";\"su zhuang zhen\";\"other\"\n\"7090540\";\"毛坦\";\"other\"\n\"7090540\";\"苏庄\";\"other\"\n\"7090540\";\"苏庄镇\";\"other\"\n\"7090594\";\"Jiukeng\";\"main\"\n\"7090594\";\"jiu keng\";\"other\"\n\"7090594\";\"鸠坑\";\"other\"\n\"7090618\";\"Shandi\";\"main\"\n\"7090618\";\"Diben\";\"other\"\n\"7090618\";\"di ben\";\"other\"\n\"7090618\";\"shan di\";\"other\"\n\"7090618\";\"山底\";\"other\"\n\"7090618\";\"底本\";\"other\"\n\"7158935\";\"东海岛\";\"main\"\n\"7158935\";\"dong hai dao\";\"ascii\"\n\"7283386\";\"Changshu City\";\"main\"\n\"7290013\";\"Shixing\";\"main\"\n\"7303248\";\"Jiashan\";\"main\"\n\"7304020\";\"Fenghuang\";\"main\"\n\"7304020\";\"Fenkhuan'\";\"other\"\n\"7304020\";\"Фенхуань\";\"other\"\n\"7304196\";\"Dehang\";\"main\"\n\"7304196\";\"Dekhang\";\"other\"\n\"7304196\";\"Деханг\";\"other\"\n\"7318938\";\"Xiamazhuang\";\"main\"\n\"7318938\";\"Yangkou Zhen\";\"other\"\n\"7318938\";\"下马庄\";\"other\"\n\"7318938\";\"洋口镇\";\"other\"\n\"7319365\";\"Xujiachangzhuang\";\"main\"\n\"7319365\";\"Linghe\";\"other\"\n\"7319365\";\"Linghe Zhen\";\"other\"\n\"7319365\";\"凌河\";\"other\"\n\"7319365\";\"凌河镇\";\"other\"\n\"7319365\";\"徐家长庄\";\"other\"\n\"7322448\";\"Fangchangbian\";\"main\"\n\"7322448\";\"Yinquan\";\"other\"\n\"7322448\";\"放场边\";\"other\"\n\"7322448\";\"饮泉\";\"other\"\n\"7322491\";\"Chengnan\";\"main\"\n\"7322491\";\"Chengnan Zhen\";\"other\"\n\"7322491\";\"城南\";\"other\"\n\"7322491\";\"城南镇\";\"other\"\n\"7322516\";\"Dayu\";\"main\"\n\"7322516\";\"Dayu Zhen\";\"other\"\n\"7322516\";\"大豫\";\"other\"\n\"7322516\";\"大豫镇\";\"other\"\n\"7322811\";\"Sanmenzha\";\"main\"\n\"7322811\";\"Dongzaogang\";\"other\"\n\"7322811\";\"Dongzaogang Zhen\";\"other\"\n\"7322811\";\"三门闸\";\"other\"\n\"7322811\";\"东灶港\";\"other\"\n\"7322811\";\"东灶港镇\";\"other\"\n\"7322934\";\"Shachang\";\"main\"\n\"7322934\";\"纱场\";\"other\"\n\"7323670\";\"Guanyinshan\";\"main\"\n\"7323670\";\"Guanyinshan Zhen\";\"other\"\n\"7323670\";\"观音山\";\"other\"\n\"7323670\";\"观音山镇\";\"other\"\n\"7324738\";\"Dongyuan\";\"main\"\n\"7324738\";\"东元\";\"other\"\n\"7326271\";\"Luoda\";\"main\"\n\"7326271\";\"洛大\";\"other\"\n\"7326302\";\"Nanhe\";\"main\"\n\"7326302\";\"南河\";\"other\"\n\"7326306\";\"Hejiabao\";\"main\"\n\"7326306\";\"何家堡\";\"other\"\n\"7326307\";\"Jiahe\";\"main\"\n\"7326307\";\"贾河\";\"other\"\n\"7326308\";\"Jiangtai\";\"main\"\n\"7326308\";\"将台\";\"other\"\n\"7326315\";\"Guan’e\";\"main\"\n\"7326315\";\"Guan'e\";\"ascii\"\n\"7326315\";\"Guan'e Zangzuxiang\";\"other\"\n\"7326315\";\"Guan’e Zangzuxiang\";\"other\"\n\"7326315\";\"官鹅\";\"other\"\n\"7326315\";\"官鹅藏族乡\";\"other\"\n\"7326316\";\"Chela\";\"main\"\n\"7326316\";\"车拉\";\"other\"\n\"7326317\";\"Xinchengzi\";\"main\"\n\"7326317\";\"Xinchengzi Zangzuxiang\";\"other\"\n\"7326317\";\"新城子\";\"other\"\n\"7326317\";\"新城子藏族乡\";\"other\"\n\"7326325\";\"Xinghua\";\"main\"\n\"7326325\";\"兴化\";\"other\"\n\"7326331\";\"Ganjiangtou\";\"main\"\n\"7326331\";\"甘江头\";\"other\"\n\"7326335\";\"Linjiang\";\"main\"\n\"7326335\";\"临江\";\"other\"\n\"7326338\";\"Nanyang\";\"main\"\n\"7326338\";\"Nanyang Zhen\";\"other\"\n\"7326338\";\"南阳\";\"other\"\n\"7326338\";\"南阳镇\";\"other\"\n\"7326342\";\"Zhuyuan\";\"main\"\n\"7326342\";\"竹院\";\"other\"\n\"7326345\";\"Hanyuan\";\"main\"\n\"7326345\";\"韩院\";\"other\"\n\"7326394\";\"Haoli\";\"main\"\n\"7326394\";\"蒿里\";\"other\"\n\"7326405\";\"Baiguan\";\"main\"\n\"7326405\";\"白关\";\"other\"\n\"7326411\";\"Zhongba\";\"main\"\n\"7326411\";\"中坝\";\"other\"\n\"7328867\";\"Yangzizhou\";\"main\"\n\"7328867\";\"扬子洲\";\"other\"\n\"7328868\";\"Taiping\";\"main\"\n\"7328868\";\"太平\";\"other\"\n\"7328877\";\"Huyunxiang\";\"main\"\n\"7328877\";\"湖云乡\";\"other\"\n\"7328887\";\"Wuleixiang\";\"main\"\n\"7328887\";\"五雷乡\";\"other\"\n\"7328891\";\"Suqiaoxiang\";\"main\"\n\"7328891\";\"苏桥乡\";\"other\"\n\"7328895\";\"Honghuxiang\";\"main\"\n\"7328895\";\"洪湖乡\";\"other\"\n\"7328910\";\"Tangnanzhen\";\"main\"\n\"7328910\";\"塘南镇\";\"other\"\n\"7328913\";\"Zhoushangxiang\";\"main\"\n\"7328913\";\"洲上乡\";\"other\"\n\"7328917\";\"Yanghuxiang\";\"main\"\n\"7328917\";\"洋湖乡\";\"other\"\n\"7328918\";\"Dengjiaxiang\";\"main\"\n\"7328918\";\"邓家乡\";\"other\"\n\"7328919\";\"Dongyangzhen\";\"main\"\n\"7328919\";\"东阳镇\";\"other\"\n\"7328929\";\"Lutianxiang\";\"main\"\n\"7328929\";\"芦田乡\";\"other\"\n\"7328930\";\"Nanxinxiang\";\"main\"\n\"7328930\";\"南新乡\";\"other\"\n\"7328932\";\"Liduzhen\";\"main\"\n\"7328932\";\"李渡镇\";\"other\"\n\"7328933\";\"Jiangxiangzhen\";\"main\"\n\"7328933\";\"蒋巷镇\";\"other\"\n\"7328935\";\"Chuntaoxiang\";\"main\"\n\"7328935\";\"春涛乡\";\"other\"\n\"7328936\";\"Xinminxiang\";\"main\"\n\"7328936\";\"新民乡\";\"other\"\n\"7328941\";\"Pingdingxiang\";\"main\"\n\"7328941\";\"平定乡\";\"other\"\n\"7328942\";\"Xinjiezhen\";\"main\"\n\"7328942\";\"新街镇\";\"other\"\n\"7328943\";\"Lafangzhen\";\"main\"\n\"7328943\";\"蓝坊镇\";\"other\"\n\"7328949\";\"Maquanzhen\";\"main\"\n\"7328949\";\"马荃镇\";\"other\"\n\"7328956\";\"Tongshanxiang\";\"main\"\n\"7328956\";\"桐山乡\";\"other\"\n\"7328962\";\"Tongtianxiang\";\"main\"\n\"7328962\";\"同田乡\";\"other\"\n\"7328964\";\"Lefengzhen\";\"main\"\n\"7328964\";\"乐丰镇\";\"other\"\n\"7329879\";\"Leiba\";\"main\"\n\"7329879\";\"雷坝\";\"other\"\n\"7329882\";\"Wangba\";\"main\"\n\"7329882\";\"王坝\";\"other\"\n\"7329883\";\"Tanping\";\"main\"\n\"7329883\";\"滩坪\";\"other\"\n\"7329905\";\"Baihe\";\"main\"\n\"7329905\";\"白河\";\"other\"\n\"7330016\";\"Sanyu\";\"main\"\n\"7330016\";\"三峪\";\"other\"\n\"7330023\";\"Caoping\";\"main\"\n\"7330023\";\"草坪\";\"other\"\n\"7330032\";\"Quanshui\";\"main\"\n\"7330032\";\"铨水\";\"other\"\n\"7330038\";\"Shizi\";\"main\"\n\"7330038\";\"狮子\";\"other\"\n\"7330568\";\"Taiyu\";\"main\"\n\"7330568\";\"泰峪\";\"other\"\n\"7330593\";\"Quwa\";\"main\"\n\"7330593\";\"曲瓦\";\"other\"\n\"7330598\";\"Bazang\";\"main\"\n\"7330598\";\"巴藏\";\"other\"\n\"7330599\";\"Lijie\";\"main\"\n\"7330599\";\"立节\";\"other\"\n\"7330601\";\"Dayu\";\"main\"\n\"7330601\";\"大峪\";\"other\"\n\"7330638\";\"Hanban\";\"main\"\n\"7330638\";\"憨班\";\"other\"\n\"7330647\";\"Pingding\";\"main\"\n\"7330647\";\"坪定\";\"other\"\n\"7330659\";\"Jiangpan\";\"main\"\n\"7330659\";\"江盘\";\"other\"\n\"7330661\";\"Gongzishi\";\"main\"\n\"7330661\";\"弓子石\";\"other\"\n\"7330662\";\"Zhongpai\";\"main\"\n\"7330662\";\"中牌\";\"other\"\n\"7330663\";\"Dachuan\";\"main\"\n\"7330663\";\"大川\";\"other\"\n\"7330664\";\"Nanyu\";\"main\"\n\"7330664\";\"南峪\";\"other\"\n\"7330670\";\"Sanjiaoping\";\"main\"\n\"7330670\";\"三角坪\";\"other\"\n\"7330671\";\"Chigan\";\"main\"\n\"7330671\";\"池干\";\"other\"\n\"7330675\";\"Wuping\";\"main\"\n\"7330675\";\"武坪\";\"other\"\n\"7330698\";\"Chagang\";\"main\"\n\"7330698\";\"插岗\";\"other\"\n\"7330705\";\"Baleng\";\"main\"\n\"7330705\";\"八楞\";\"other\"\n\"7330767\";\"Boyu\";\"main\"\n\"7330767\";\"博峪\";\"other\"\n\"7330776\";\"Danian\";\"main\"\n\"7330776\";\"大年\";\"other\"\n\"7330781\";\"Tieba\";\"main\"\n\"7330781\";\"铁坝\";\"other\"\n\"7330821\";\"Maying\";\"main\"\n\"7330821\";\"马营\";\"other\"\n\"7330969\";\"Tunzhai\";\"main\"\n\"7330969\";\"屯寨\";\"other\"\n\"7330984\";\"Sheshu\";\"main\"\n\"7330984\";\"舍书\";\"other\"\n\"7330988\";\"Liping\";\"main\"\n\"7330988\";\"梨坪\";\"other\"\n\"7331378\";\"Jianshan\";\"main\"\n\"7331378\";\"尖山\";\"other\"\n\"7331411\";\"Baoziba\";\"main\"\n\"7331411\";\"堡子坝\";\"other\"\n\"7331483\";\"Shijiba\";\"main\"\n\"7331483\";\"石鸡坝\";\"other\"\n\"7335145\";\"Koutouba\";\"main\"\n\"7335145\";\"口头坝\";\"other\"\n\"7337617\";\"Pingya\";\"main\"\n\"7337617\";\"Pingya Zangzuxiang\";\"other\"\n\"7337617\";\"坪垭\";\"other\"\n\"7337617\";\"坪垭藏族乡\";\"other\"\n\"7338243\";\"Puchi\";\"main\"\n\"7338243\";\"蒲池\";\"other\"\n\"7338248\";\"Hanlin\";\"main\"\n\"7338248\";\"汉林\";\"other\"\n\"7338250\";\"Maying\";\"main\"\n\"7338250\";\"马营\";\"other\"\n\"7338253\";\"Jinchang\";\"main\"\n\"7338253\";\"金厂\";\"other\"\n\"7340452\";\"Longfeng\";\"main\"\n\"7340452\";\"龙凤\";\"other\"\n\"7340454\";\"Jiegan\";\"main\"\n\"7340454\";\"秸柑\";\"other\"\n\"7340457\";\"Hanwang\";\"main\"\n\"7340457\";\"Hanwang Zhen\";\"other\"\n\"7340457\";\"汉王\";\"other\"\n\"7340457\";\"汉王镇\";\"other\"\n\"7340460\";\"Majie\";\"main\"\n\"7340460\";\"马街\";\"other\"\n\"7341918\";\"Moba\";\"main\"\n\"7341918\";\"Moba Zangzuxiang\";\"other\"\n\"7341918\";\"磨坝\";\"other\"\n\"7341918\";\"磨坝藏族乡\";\"other\"\n\"7342963\";\"Sangba\";\"main\"\n\"7342963\";\"桑坝\";\"other\"\n\"7342980\";\"Dianga\";\"main\"\n\"7342980\";\"Diangacun\";\"other\"\n\"7342980\";\"Diebu\";\"other\"\n\"7342980\";\"Diebu Xian\";\"other\"\n\"7342980\";\"电尕\";\"other\"\n\"7342980\";\"电尕村\";\"other\"\n\"7342980\";\"迭部\";\"other\"\n\"7342980\";\"迭部县\";\"other\"\n\"7343011\";\"Yiwa\";\"main\"\n\"7343011\";\"益哇\";\"other\"\n\"7343039\";\"Qinxu\";\"main\"\n\"7343039\";\"秦许\";\"other\"\n\"7343056\";\"Minshan\";\"main\"\n\"7343056\";\"Minshanxiang\";\"other\"\n\"7343056\";\"岷山\";\"other\"\n\"7343056\";\"岷山乡\";\"other\"\n\"7343063\";\"Qingshui\";\"main\"\n\"7343063\";\"Qingshuicun\";\"other\"\n\"7343063\";\"青水\";\"other\"\n\"7343063\";\"青水村\";\"other\"\n\"7343069\";\"Niba\";\"main\"\n\"7343069\";\"Niba Xiang\";\"other\"\n\"7343069\";\"Nibaxiang\";\"other\"\n\"7343069\";\"尼巴\";\"other\"\n\"7343069\";\"尼巴乡\";\"other\"\n\"7343088\";\"Xizhai\";\"main\"\n\"7343088\";\"西寨\";\"other\"\n\"7343122\";\"Zongzhai\";\"main\"\n\"7343122\";\"Zongzhaixiang\";\"other\"\n\"7343122\";\"总寨\";\"other\"\n\"7343122\";\"总寨乡\";\"other\"\n\"7343131\";\"Mu’er\";\"main\"\n\"7343131\";\"Mu'er\";\"ascii\"\n\"7343131\";\"Mu'er Xiang\";\"other\"\n\"7343131\";\"Mu'erxiang\";\"other\"\n\"7343131\";\"Mu’er Xiang\";\"other\"\n\"7343131\";\"Mu’erxiang\";\"other\"\n\"7343131\";\"木耳\";\"other\"\n\"7343131\";\"木耳乡\";\"other\"\n\"7343148\";\"Dazu\";\"main\"\n\"7343148\";\"Dazuxiang\";\"other\"\n\"7343148\";\"大族\";\"other\"\n\"7343148\";\"大族乡\";\"other\"\n\"7343166\";\"Kache\";\"main\"\n\"7343166\";\"Kache Xiang\";\"other\"\n\"7343166\";\"Kachexiang\";\"other\"\n\"7343166\";\"卡车\";\"other\"\n\"7343166\";\"卡车乡\";\"other\"\n\"7343192\";\"Dianzi\";\"main\"\n\"7343192\";\"Dianzi Xiang\";\"other\"\n\"7343192\";\"Dianzixiang\";\"other\"\n\"7343192\";\"店子\";\"other\"\n\"7343192\";\"店子乡\";\"other\"\n\"7343218\";\"Biandu\";\"main\"\n\"7343218\";\"Biandu Xiang\";\"other\"\n\"7343218\";\"Bianduxiang\";\"other\"\n\"7343218\";\"扁都\";\"other\"\n\"7343218\";\"扁都乡\";\"other\"\n\"7343236\";\"Baozi\";\"main\"\n\"7343236\";\"堡子\";\"other\"\n\"7343262\";\"Chenqi\";\"main\"\n\"7343262\";\"Chenqi Xiang\";\"other\"\n\"7343262\";\"Chenqixiang\";\"other\"\n\"7343262\";\"陈旗\";\"other\"\n\"7343262\";\"陈旗乡\";\"other\"\n\"7343277\";\"Guzhan\";\"main\"\n\"7343277\";\"Guzhan Huizuxiang\";\"other\"\n\"7343277\";\"Guzhan Xiang\";\"other\"\n\"7343277\";\"Guzhanxiang\";\"other\"\n\"7343277\";\"古战\";\"other\"\n\"7343277\";\"古战乡\";\"other\"\n\"7343277\";\"古战回族乡\";\"other\"\n\"7343287\";\"Lexiu\";\"main\"\n\"7343287\";\"勒秀\";\"other\"\n\"7343298\";\"Changchuan\";\"main\"\n\"7343298\";\"Changchuan Huizuxiang\";\"other\"\n\"7343298\";\"长川\";\"other\"\n\"7343298\";\"长川回族乡\";\"other\"\n\"7343315\";\"Zhuolu\";\"main\"\n\"7343315\";\"Zhuoluo Huizuxiang\";\"other\"\n\"7343315\";\"卓洛\";\"other\"\n\"7343315\";\"卓洛回族乡\";\"other\"\n\"7343316\";\"Shencang\";\"main\"\n\"7343316\";\"Shencang Xiang\";\"other\"\n\"7343316\";\"Shencangxiang\";\"other\"\n\"7343316\";\"申藏\";\"other\"\n\"7343316\";\"申藏乡\";\"other\"\n\"7343319\";\"Shimen\";\"main\"\n\"7343319\";\"石门\";\"other\"\n\"7343323\";\"Jiamaogong\";\"main\"\n\"7343323\";\"加茂贡\";\"other\"\n\"7343340\";\"Bailin\";\"main\"\n\"7343340\";\"柏林\";\"other\"\n\"7343419\";\"Zangbawa\";\"main\"\n\"7343419\";\"Cangbawa\";\"other\"\n\"7343419\";\"藏巴哇\";\"other\"\n\"7343453\";\"Shaowa\";\"main\"\n\"7343453\";\"Shaowa Tuzuxiang\";\"other\"\n\"7343453\";\"Shaowatuzuxiang\";\"other\"\n\"7343453\";\"勺哇\";\"other\"\n\"7343453\";\"勺哇土族乡\";\"other\"\n\"7343467\";\"Zuogaimanma\";\"main\"\n\"7343467\";\"Zuogaimanmaxiang\";\"other\"\n\"7343467\";\"佐盖曼玛\";\"other\"\n\"7343467\";\"佐盖曼玛乡\";\"other\"\n\"7347456\";\"Caohe\";\"main\"\n\"7347456\";\"草河\";\"other\"\n\"7347528\";\"Wuku\";\"main\"\n\"7347528\";\"五库\";\"other\"\n\"7347727\";\"Dongjiang\";\"main\"\n\"7347727\";\"Dongjiang Zhen\";\"other\"\n\"7347727\";\"东江\";\"other\"\n\"7347727\";\"东江镇\";\"other\"\n\"7347746\";\"Jinping\";\"main\"\n\"7347746\";\"锦屏\";\"other\"\n\"7348465\";\"Lianhua\";\"main\"\n\"7348465\";\"莲花\";\"other\"\n\"7348484\";\"Liangshan\";\"main\"\n\"7348484\";\"梁山\";\"other\"\n\"7348614\";\"Jichuan\";\"main\"\n\"7348614\";\"鸡川\";\"other\"\n\"7349229\";\"Zhongchuan\";\"main\"\n\"7349229\";\"Zhongchuanxiang\";\"other\"\n\"7349229\";\"中川\";\"other\"\n\"7349519\";\"Yuan’an\";\"main\"\n\"7349519\";\"Yuan'an\";\"ascii\"\n\"7349519\";\"原安\";\"other\"\n\"7349654\";\"Hanjiaji\";\"main\"\n\"7349654\";\"韩家集\";\"other\"\n\"7351285\";\"Hongtu\";\"main\"\n\"7351285\";\"Ebao Zhen\";\"other\"\n\"7351285\";\"Hongtu Cheng\";\"other\"\n\"7351285\";\"峨堡镇\";\"other\"\n\"7351285\";\"红土\";\"other\"\n\"7351285\";\"红土城\";\"other\"\n\"7351996\";\"Tuohua\";\"main\"\n\"7351996\";\"Tuole Mengguzu Xiang\";\"other\"\n\"7351996\";\"托勒蒙古族乡\";\"other\"\n\"7351996\";\"托华\";\"other\"\n\"7352509\";\"Shibao\";\"main\"\n\"7352509\";\"石堡\";\"other\"\n\"7352543\";\"Xiji\";\"main\"\n\"7352543\";\"Xiji Xiang\";\"other\"\n\"7352543\";\"喜集\";\"other\"\n\"7352543\";\"喜集乡\";\"other\"\n\"7352544\";\"Shoushan\";\"main\"\n\"7352544\";\"Mei Xian\";\"other\"\n\"7352544\";\"眉县\";\"other\"\n\"7352544\";\"首善\";\"other\"\n\"7353644\";\"Sancang\";\"main\"\n\"7353644\";\"三仓\";\"other\"\n\"7353795\";\"Fengxiang Chengguanzhen\";\"main\"\n\"7353795\";\"Fengxiang\";\"other\"\n\"7353795\";\"Fengxiang Xian\";\"other\"\n\"7353795\";\"凤翔\";\"other\"\n\"7353795\";\"凤翔县\";\"other\"\n\"7353795\";\"凤翔城关镇\";\"other\"\n\"7367725\";\"Tangyu\";\"main\"\n\"7367725\";\"Tangyu Zhen\";\"other\"\n\"7367725\";\"汤峪\";\"other\"\n\"7367725\";\"汤峪镇\";\"other\"\n\"7367759\";\"Shangsong\";\"main\"\n\"7367759\";\"上宋\";\"other\"\n\"7367770\";\"Diaowei\";\"main\"\n\"7367770\";\"Diaowei Zhen\";\"other\"\n\"7367770\";\"钓渭\";\"other\"\n\"7367770\";\"钓渭镇\";\"other\"\n\"7367773\";\"Wuquan\";\"main\"\n\"7367773\";\"Wuquan Zhen\";\"other\"\n\"7367773\";\"五泉\";\"other\"\n\"7367773\";\"五泉镇\";\"other\"\n\"7367778\";\"Duanjia\";\"main\"\n\"7367778\";\"Duanjia Zhen\";\"other\"\n\"7367778\";\"段家\";\"other\"\n\"7367778\";\"段家镇\";\"other\"\n\"7367783\";\"Bayu\";\"main\"\n\"7367783\";\"Bayu Zhen\";\"other\"\n\"7367783\";\"八鱼\";\"other\"\n\"7367783\";\"八鱼镇\";\"other\"\n\"7367787\";\"Shigu\";\"main\"\n\"7367787\";\"Shigu Zhen\";\"other\"\n\"7367787\";\"石鼓\";\"other\"\n\"7367787\";\"石鼓镇\";\"other\"\n\"7367788\";\"Gaojia\";\"main\"\n\"7367788\";\"Gaojia Zhen\";\"other\"\n\"7367788\";\"高家\";\"other\"\n\"7367788\";\"高家镇\";\"other\"\n\"7367789\";\"Taibai\";\"main\"\n\"7367789\";\"太白\";\"other\"\n\"7367791\";\"Chencang\";\"main\"\n\"7367791\";\"Chencang Zhen\";\"other\"\n\"7367791\";\"陈仓\";\"other\"\n\"7367791\";\"陈仓镇\";\"other\"\n\"7367793\";\"Xiashixiang\";\"main\"\n\"7367793\";\"硖石乡\";\"other\"\n\"7367795\";\"Guowang\";\"main\"\n\"7367795\";\"Guowang Zhen\";\"other\"\n\"7367795\";\"虢王\";\"other\"\n\"7367795\";\"虢王镇\";\"other\"\n\"7367796\";\"Muyi\";\"main\"\n\"7367796\";\"Muyi Zhen\";\"other\"\n\"7367796\";\"慕仪\";\"other\"\n\"7367796\";\"慕仪镇\";\"other\"\n\"7367798\";\"Qianhe\";\"main\"\n\"7367798\";\"Qianhe Zhen\";\"other\"\n\"7367798\";\"千河\";\"other\"\n\"7367798\";\"千河镇\";\"other\"\n\"7367799\";\"Zhouyuan\";\"main\"\n\"7367799\";\"Zhouyuan Zhen\";\"other\"\n\"7367799\";\"周原\";\"other\"\n\"7367799\";\"周原镇\";\"other\"\n\"7367800\";\"Lingyuan\";\"main\"\n\"7367800\";\"陵原\";\"other\"\n\"7367801\";\"Daying\";\"main\"\n\"7367801\";\"大营\";\"other\"\n\"7367803\";\"Panlong\";\"main\"\n\"7367803\";\"Panlong Zhen\";\"other\"\n\"7367803\";\"蟠龙\";\"other\"\n\"7367803\";\"蟠龙镇\";\"other\"\n\"7367807\";\"Gujun\";\"main\"\n\"7367807\";\"故郡\";\"other\"\n\"7367808\";\"Jinhe\";\"main\"\n\"7367808\";\"金河\";\"other\"\n\"7367812\";\"Nanzhihui\";\"main\"\n\"7367812\";\"Nanzhihui Zhen\";\"other\"\n\"7367812\";\"南指挥\";\"other\"\n\"7367812\";\"南指挥镇\";\"other\"\n\"7367813\";\"Pucun\";\"main\"\n\"7367813\";\"Pucun Zhen\";\"other\"\n\"7367813\";\"蒲村\";\"other\"\n\"7367813\";\"蒲村镇\";\"other\"\n\"7367819\";\"Nanyang\";\"main\"\n\"7367819\";\"Nanyang Zhen\";\"other\"\n\"7367819\";\"南阳\";\"other\"\n\"7367819\";\"南阳镇\";\"other\"\n\"7367826\";\"Tangcun\";\"main\"\n\"7367826\";\"唐村\";\"other\"\n\"7367836\";\"Dongjiahe\";\"main\"\n\"7367836\";\"董家河\";\"other\"\n\"7367849\";\"Nanzhai\";\"main\"\n\"7367849\";\"Nanzhai Zhen\";\"other\"\n\"7367849\";\"南寨\";\"other\"\n\"7367849\";\"南寨镇\";\"other\"\n\"7367852\";\"Shajia’ao\";\"main\"\n\"7367852\";\"Shajia'ao\";\"ascii\"\n\"7367852\";\"沙家坳\";\"other\"\n\"7367872\";\"Sangshuyuan\";\"main\"\n\"7367872\";\"桑树塬\";\"other\"\n\"7367957\";\"Chejiazhuang\";\"main\"\n\"7367957\";\"车家庄\";\"other\"\n\"7368003\";\"Puwo\";\"main\"\n\"7368003\";\"蒲窝\";\"other\"\n\"7368914\";\"Yongchuan\";\"main\"\n\"7368914\";\"Yongchuan Zhen\";\"other\"\n\"7368914\";\"雍川\";\"other\"\n\"7368914\";\"雍川镇\";\"other\"\n\"7369564\";\"Shennong\";\"main\"\n\"7369564\";\"Shennong Zhen\";\"other\"\n\"7369564\";\"神农\";\"other\"\n\"7369564\";\"神农镇\";\"other\"\n\"7369679\";\"Panxi\";\"main\"\n\"7369679\";\"Panxi Zhen\";\"other\"\n\"7369679\";\"潘溪\";\"other\"\n\"7369679\";\"潘溪镇\";\"other\"\n\"7369741\";\"Guodian\";\"main\"\n\"7369741\";\"Guodian Zhen\";\"other\"\n\"7369741\";\"郭店\";\"other\"\n\"7369741\";\"郭店镇\";\"other\"\n\"7370270\";\"Zhongshan Donglu\";\"main\"\n\"7370270\";\"Zhongshan Donglu Jiedao\";\"other\"\n\"7370270\";\"中山东路\";\"other\"\n\"7370270\";\"中山东路街道\";\"other\"\n\"7370274\";\"Jinling\";\"main\"\n\"7370274\";\"Jinling Jiedao\";\"other\"\n\"7370274\";\"金陵\";\"other\"\n\"7370274\";\"金陵街道\";\"other\"\n\"7371320\";\"Chaka\";\"main\"\n\"7371320\";\"茶卡\";\"other\"\n\"7371349\";\"Qiecha\";\"main\"\n\"7371349\";\"Shinaihai Xiang\";\"other\"\n\"7371349\";\"切查\";\"other\"\n\"7371349\";\"石乃亥乡\";\"other\"\n\"7371354\";\"Dongke\";\"main\"\n\"7371354\";\"Qieji Xiang\";\"other\"\n\"7371354\";\"东科\";\"other\"\n\"7371354\";\"切吉乡\";\"other\"\n\"7372213\";\"Cangdu\";\"main\"\n\"7372213\";\"苍杜\";\"other\"\n\"7372230\";\"Taiyangling\";\"main\"\n\"7372230\";\"太阳岭\";\"other\"\n\"7372400\";\"Weihe\";\"main\"\n\"7372400\";\"渭河\";\"other\"\n\"7372407\";\"Yuhe\";\"main\"\n\"7372407\";\"裕河\";\"other\"\n\"7372420\";\"Tuohe\";\"main\"\n\"7372420\";\"托河\";\"other\"\n\"7372425\";\"Pandi\";\"main\"\n\"7372425\";\"盘底\";\"other\"\n\"7372472\";\"Xizhi\";\"main\"\n\"7372472\";\"西支\";\"other\"\n\"7372475\";\"Luotang\";\"main\"\n\"7372475\";\"Luotang Zhen\";\"other\"\n\"7372475\";\"洛塘\";\"other\"\n\"7372475\";\"洛塘镇\";\"other\"\n\"7372534\";\"Lianghe\";\"main\"\n\"7372534\";\"Lianghe Zhen\";\"other\"\n\"7372534\";\"两河\";\"other\"\n\"7372534\";\"两河镇\";\"other\"\n\"7372556\";\"Yuezhao\";\"main\"\n\"7372556\";\"月照\";\"other\"\n\"7372558\";\"Sanheba\";\"main\"\n\"7372558\";\"三河坝\";\"other\"\n\"7372585\";\"Pipa\";\"main\"\n\"7372585\";\"琵琶\";\"other\"\n\"7372657\";\"Dianzi\";\"main\"\n\"7372657\";\"店子\";\"other\"\n\"7372702\";\"Jia’an\";\"main\"\n\"7372702\";\"Jia'an\";\"ascii\"\n\"7372702\";\"贾安\";\"other\"\n\"7372727\";\"Yuhuang\";\"main\"\n\"7372727\";\"玉皇\";\"other\"\n\"7372743\";\"Nianba\";\"main\"\n\"7372743\";\"碾坝\";\"other\"\n\"7372766\";\"Huangping\";\"main\"\n\"7372766\";\"黄坪\";\"other\"\n\"7372793\";\"Guohe\";\"main\"\n\"7372793\";\"郭河\";\"other\"\n\"7372801\";\"Sanguan\";\"main\"\n\"7372801\";\"三官\";\"other\"\n\"7372848\";\"Xiongchi\";\"main\"\n\"7372848\";\"熊池\";\"other\"\n\"7372875\";\"Changba\";\"main\"\n\"7372875\";\"Changba Zhen\";\"other\"\n\"7372875\";\"长坝\";\"other\"\n\"7372875\";\"长坝镇\";\"other\"\n\"7372877\";\"Dananyu\";\"main\"\n\"7372877\";\"大南峪\";\"other\"\n\"7372888\";\"Fuya\";\"main\"\n\"7372888\";\"佛崖\";\"other\"\n\"7372894\";\"Ganquan\";\"main\"\n\"7372894\";\"甘泉\";\"other\"\n\"7372906\";\"Gongji\";\"main\"\n\"7372906\";\"巩集\";\"other\"\n\"7372929\";\"Dabao\";\"main\"\n\"7372929\";\"Dabao Zhen\";\"other\"\n\"7372929\";\"大堡\";\"other\"\n\"7372929\";\"大堡镇\";\"other\"\n\"7372945\";\"Sitai\";\"main\"\n\"7372945\";\"寺台\";\"other\"\n\"7372977\";\"Yulong\";\"main\"\n\"7372977\";\"鱼龙\";\"other\"\n\"7372986\";\"Douping\";\"main\"\n\"7372986\";\"豆坪\";\"other\"\n\"7373013\";\"Chanhe\";\"main\"\n\"7373013\";\"镡河\";\"other\"\n\"7373023\";\"Miba\";\"main\"\n\"7373023\";\"迷坝\";\"other\"\n\"7373034\";\"Lishan\";\"main\"\n\"7373034\";\"李山\";\"other\"\n\"7373075\";\"Chanba\";\"main\"\n\"7373075\";\"镡坝\";\"other\"\n\"7373083\";\"Huangchen\";\"main\"\n\"7373083\";\"黄陈\";\"other\"\n\"7373101\";\"Longxing\";\"main\"\n\"7373101\";\"隆兴\";\"other\"\n\"7373106\";\"Songping\";\"main\"\n\"7373106\";\"宋坪\";\"other\"\n\"7373126\";\"Taishi\";\"main\"\n\"7373126\";\"太石\";\"other\"\n\"7373136\";\"Longba\";\"main\"\n\"7373136\";\"龙坝\";\"other\"\n\"7373178\";\"Suochi\";\"main\"\n\"7373178\";\"索池\";\"other\"\n\"7373183\";\"Daping\";\"main\"\n\"7373183\";\"大坪\";\"other\"\n\"7373196\";\"Huaya\";\"main\"\n\"7373196\";\"化垭\";\"other\"\n\"7373197\";\"Nankang\";\"main\"\n\"7373197\";\"南康\";\"other\"\n\"7373227\";\"Suyuan\";\"main\"\n\"7373227\";\"苏园\";\"other\"\n\"7373270\";\"Taishihe\";\"main\"\n\"7373270\";\"太石河\";\"other\"\n\"7373299\";\"Paosha\";\"main\"\n\"7373299\";\"Paosha Zhen\";\"other\"\n\"7373299\";\"抛沙\";\"other\"\n\"7373299\";\"抛沙镇\";\"other\"\n\"7373302\";\"Zhifang\";\"main\"\n\"7373302\";\"Zhifang Zhen\";\"other\"\n\"7373302\";\"纸坊\";\"other\"\n\"7373302\";\"纸坊镇\";\"other\"\n\"7373312\";\"Shaba\";\"main\"\n\"7373312\";\"沙坝\";\"other\"\n\"7373329\";\"Xigaoshan\";\"main\"\n\"7373329\";\"西高山\";\"other\"\n\"7373342\";\"Zhiqi\";\"main\"\n\"7373342\";\"支旗\";\"other\"\n\"7373359\";\"Diancun\";\"main\"\n\"7373359\";\"店村\";\"other\"\n\"7373363\";\"Chenyuan\";\"main\"\n\"7373363\";\"陈院\";\"other\"\n\"7373371\";\"Haolin\";\"main\"\n\"7373371\";\"蒿林\";\"other\"\n\"7373404\";\"Suchuan\";\"main\"\n\"7373404\";\"粟川\";\"other\"\n\"7373419\";\"Liuxiang\";\"main\"\n\"7373419\";\"六巷\";\"other\"\n\"7373429\";\"Yinxingshu\";\"main\"\n\"7373429\";\"银杏树\";\"other\"\n\"7373438\";\"Shuiquan\";\"main\"\n\"7373438\";\"水泉\";\"other\"\n\"7373480\";\"Luoyu\";\"main\"\n\"7373480\";\"洛峪\";\"other\"\n\"7373487\";\"Wangmo\";\"main\"\n\"7373487\";\"王磨\";\"other\"\n\"7373517\";\"Hekou\";\"main\"\n\"7373517\";\"河口\";\"other\"\n\"7373532\";\"Youlongchuan\";\"main\"\n\"7373532\";\"游龙川\";\"other\"\n\"7373600\";\"Shili\";\"main\"\n\"7373600\";\"十里\";\"other\"\n\"7373609\";\"Yushu\";\"main\"\n\"7373609\";\"榆树\";\"other\"\n\"7373617\";\"Huangzhu\";\"main\"\n\"7373617\";\"Huangzhu Zhen\";\"other\"\n\"7373617\";\"黄渚\";\"other\"\n\"7373617\";\"黄渚镇\";\"other\"\n\"7373636\";\"Zhaowu\";\"main\"\n\"7373636\";\"赵五\";\"other\"\n\"7373653\";\"Shaijing\";\"main\"\n\"7373653\";\"晒经\";\"other\"\n\"7373656\";\"Jiangxi\";\"main\"\n\"7373656\";\"姜席\";\"other\"\n\"7373672\";\"Luhe\";\"main\"\n\"7373672\";\"卢河\";\"other\"\n\"7373727\";\"Mayuan\";\"main\"\n\"7373727\";\"马元\";\"other\"\n\"7373918\";\"Shijiayuan\";\"main\"\n\"7373918\";\"史家院\";\"other\"\n\"7374589\";\"Taiping\";\"main\"\n\"7374589\";\"太平\";\"other\"\n\"7384060\";\"Sangdang\";\"main\"\n\"7384060\";\"Sangdang Xiang\";\"other\"\n\"7384060\";\"桑当\";\"other\"\n\"7384069\";\"Nimai\";\"main\"\n\"7384069\";\"Longcang Xiang\";\"other\"\n\"7384069\";\"尼买\";\"other\"\n\"7384069\";\"龙藏乡\";\"other\"\n\"7384078\";\"Zhongcun\";\"main\"\n\"7384078\";\"Tangnaihai Xiang\";\"other\"\n\"7384078\";\"中村\";\"other\"\n\"7384078\";\"唐乃亥乡\";\"other\"\n\"7384096\";\"Qushi’anxiang\";\"main\"\n\"7384096\";\"Qushi'anxiang\";\"ascii\"\n\"7384096\";\"曲什安乡\";\"other\"\n\"7384107\";\"Jiangqun\";\"main\"\n\"7384107\";\"Xiuma Xiang\";\"other\"\n\"7384107\";\"江群\";\"other\"\n\"7384107\";\"秀麻乡\";\"other\"\n\"7384124\";\"Tanggan\";\"main\"\n\"7384124\";\"Tanggan Xiang\";\"other\"\n\"7384124\";\"唐干\";\"other\"\n\"7384129\";\"Qubucangka\";\"main\"\n\"7384129\";\"Taxiu Xiang\";\"other\"\n\"7384129\";\"塔秀乡\";\"other\"\n\"7384129\";\"曲布藏卡\";\"other\"\n\"7384142\";\"Gerengongma\";\"main\"\n\"7384142\";\"格仁贡玛\";\"other\"\n\"7384184\";\"Mangqu\";\"main\"\n\"7384184\";\"芒曲\";\"other\"\n\"7384198\";\"Wangjiaxiang\";\"main\"\n\"7384198\";\"王加乡\";\"other\"\n\"7387161\";\"Heka\";\"main\"\n\"7387161\";\"河卡\";\"other\"\n\"7387615\";\"Liangshan\";\"main\"\n\"7387615\";\"Liangshan Zhen\";\"other\"\n\"7387615\";\"梁山\";\"other\"\n\"7387615\";\"梁山镇\";\"other\"\n\"7405307\";\"Zhoujiashan\";\"main\"\n\"7405307\";\"Zhoujiashan Zhen\";\"other\"\n\"7405307\";\"周家山\";\"other\"\n\"7405307\";\"周家山镇\";\"other\"\n\"7405532\";\"Lijiaping\";\"main\"\n\"7405532\";\"Gangou Xiang\";\"other\"\n\"7405532\";\"李家坪\";\"other\"\n\"7405532\";\"甘沟乡\";\"other\"\n\"7405558\";\"Jiuzhongjin\";\"main\"\n\"7405558\";\"九中金\";\"other\"\n\"7405635\";\"Xiangcunxiang\";\"main\"\n\"7405635\";\"翔村乡\";\"other\"\n\"7406942\";\"Biashizang\";\"main\"\n\"7406942\";\"白扎藏\";\"other\"\n\"7407361\";\"Shiyuan\";\"main\"\n\"7407361\";\"石塬\";\"other\"\n\"7407364\";\"Dongguan\";\"main\"\n\"7407364\";\"Dongguang Huizuxiang\";\"other\"\n\"7407364\";\"东关\";\"other\"\n\"7407364\";\"东关回族乡\";\"other\"\n\"7407683\";\"Yuguan\";\"main\"\n\"7407683\";\"虞关\";\"other\"\n\"7407690\";\"Guangjin\";\"main\"\n\"7407690\";\"广金\";\"other\"\n\"7407704\";\"Yunping\";\"main\"\n\"7407704\";\"云屏\";\"other\"\n\"7407706\";\"Jialing\";\"main\"\n\"7407706\";\"Jialing Zhen\";\"other\"\n\"7407706\";\"嘉陵\";\"other\"\n\"7407706\";\"嘉陵镇\";\"other\"\n\"7407743\";\"Shuiyang\";\"main\"\n\"7407743\";\"水阳\";\"other\"\n\"7407750\";\"Taishan\";\"main\"\n\"7407750\";\"太山\";\"other\"\n\"7407766\";\"Xianlong\";\"main\"\n\"7407766\";\"显龙\";\"other\"\n\"7407776\";\"Yuchi\";\"main\"\n\"7407776\";\"鱼池\";\"other\"\n\"7407787\";\"Xinghua\";\"main\"\n\"7407787\";\"兴化\";\"other\"\n\"7407799\";\"Liulin\";\"main\"\n\"7407799\";\"Liulin Zhen\";\"other\"\n\"7407799\";\"柳林\";\"other\"\n\"7407799\";\"柳林镇\";\"other\"\n\"7407813\";\"Jindong\";\"main\"\n\"7407813\";\"金洞\";\"other\"\n\"7407834\";\"Zuojia\";\"main\"\n\"7407834\";\"左家\";\"other\"\n\"7407867\";\"Taiyang\";\"main\"\n\"7407867\";\"太阳\";\"other\"\n\"7407925\";\"Gaojialing\";\"main\"\n\"7407925\";\"高家岭\";\"other\"\n\"7407926\";\"Qingshu\";\"main\"\n\"7407926\";\"青树\";\"other\"\n\"7407944\";\"Lianghe\";\"main\"\n\"7407944\";\"两河\";\"other\"\n\"7407964\";\"Qishuba\";\"main\"\n\"7407964\";\"漆树坝\";\"other\"\n\"7407972\";\"Xiema\";\"main\"\n\"7407972\";\"歇马\";\"other\"\n\"7408027\";\"Xieshui\";\"main\"\n\"7408027\";\"Xieshui Zhen\";\"other\"\n\"7408027\";\"协税\";\"other\"\n\"7408027\";\"协税镇\";\"other\"\n\"7408043\";\"Nanping\";\"main\"\n\"7408043\";\"南屏\";\"other\"\n\"7408054\";\"Gaotai\";\"main\"\n\"7408054\";\"Gaotaizhen\";\"other\"\n\"7408054\";\"高台\";\"other\"\n\"7408054\";\"高台镇\";\"other\"\n\"7408068\";\"Renshui\";\"main\"\n\"7408068\";\"忍水\";\"other\"\n\"7408070\";\"Hujiaying\";\"main\"\n\"7408070\";\"胡家营\";\"other\"\n\"7408081\";\"Yangchun\";\"main\"\n\"7408081\";\"Yangchun Zhen\";\"other\"\n\"7408081\";\"阳春\";\"other\"\n\"7408081\";\"阳春镇\";\"other\"\n\"7408089\";\"Guotan\";\"main\"\n\"7408089\";\"郭滩\";\"other\"\n\"7408177\";\"Qili\";\"main\"\n\"7408177\";\"Qili Zhen\";\"other\"\n\"7408177\";\"七里\";\"other\"\n\"7408177\";\"七里镇\";\"other\"\n\"7408185\";\"Zhenchuan\";\"main\"\n\"7408185\";\"镇川\";\"other\"\n\"7408228\";\"Donghuanggou\";\"main\"\n\"7408228\";\"东皇沟\";\"other\"\n\"7408248\";\"Gongjiahe\";\"main\"\n\"7408248\";\"巩家河\";\"other\"\n\"7408260\";\"Zengjiahe\";\"main\"\n\"7408260\";\"曾家河\";\"other\"\n\"7408266\";\"Laojun\";\"main\"\n\"7408266\";\"Laojun Zhen\";\"other\"\n\"7408266\";\"老君\";\"other\"\n\"7408266\";\"老君镇\";\"other\"\n\"7408268\";\"Longjiang\";\"main\"\n\"7408268\";\"Longjiang Zhen\";\"other\"\n\"7408268\";\"龙江\";\"other\"\n\"7408268\";\"龙江镇\";\"other\"\n\"7408284\";\"Tuguanpu\";\"main\"\n\"7408284\";\"土关铺\";\"other\"\n\"7408299\";\"Dingjunshan\";\"main\"\n\"7408299\";\"Dingjunshan Zhen\";\"other\"\n\"7408299\";\"定军山\";\"other\"\n\"7408299\";\"定军山镇\";\"other\"\n\"7408316\";\"Jinquan\";\"main\"\n\"7408316\";\"Jinquan Zhen\";\"other\"\n\"7408316\";\"金泉\";\"other\"\n\"7408316\";\"金泉镇\";\"other\"\n\"7408329\";\"Wuhou\";\"main\"\n\"7408329\";\"Wuhou Zhen\";\"other\"\n\"7408329\";\"武候\";\"other\"\n\"7408329\";\"武候镇\";\"other\"\n\"7408353\";\"Xinjiezi\";\"main\"\n\"7408353\";\"Xinjiezi Zhen\";\"other\"\n\"7408353\";\"新街子\";\"other\"\n\"7408353\";\"新街子镇\";\"other\"\n\"7408370\";\"Tonggousi\";\"main\"\n\"7408370\";\"Tonggousi Zhen\";\"other\"\n\"7408370\";\"同沟寺\";\"other\"\n\"7408370\";\"同沟寺镇\";\"other\"\n\"7408472\";\"Heiheba\";\"main\"\n\"7408472\";\"黑河坝\";\"other\"\n\"7408492\";\"Xiaobianhe\";\"main\"\n\"7408492\";\"小砭河\";\"other\"\n\"7408515\";\"Erdaohe\";\"main\"\n\"7408515\";\"二道河\";\"other\"\n\"7408812\";\"Wuguanyi\";\"main\"\n\"7408812\";\"Wuguanyi Zhen\";\"other\"\n\"7408812\";\"武关驿\";\"other\"\n\"7408812\";\"武关驿镇\";\"other\"\n\"7408909\";\"Liuhou\";\"main\"\n\"7408909\";\"Liuhou Zhen\";\"other\"\n\"7408909\";\"留侯\";\"other\"\n\"7408909\";\"留侯镇\";\"other\"\n\"7410698\";\"Huangbao\";\"main\"\n\"7410698\";\"黄堡\";\"other\"\n\"7413208\";\"Rixiuma\";\"main\"\n\"7413208\";\"Huangnaihai\";\"other\"\n\"7413208\";\"Huangnaihai Xiang\";\"other\"\n\"7413208\";\"日秀玛\";\"other\"\n\"7413208\";\"黄乃亥\";\"other\"\n\"7413208\";\"黄乃亥乡\";\"other\"\n\"7413215\";\"Nianduhu\";\"main\"\n\"7413215\";\"年都乎\";\"other\"\n\"7413219\";\"Xianggan\";\"main\"\n\"7413219\";\"Dangshunxiang\";\"other\"\n\"7413219\";\"当顺乡\";\"other\"\n\"7413219\";\"香干\";\"other\"\n\"7413225\";\"Jianbaang\";\"main\"\n\"7413225\";\"Anglaxiang\";\"other\"\n\"7413225\";\"尖巴昂\";\"other\"\n\"7413225\";\"昂拉乡\";\"other\"\n\"7413232\";\"Jiawu\";\"main\"\n\"7413232\";\"加吾\";\"other\"\n\"7413305\";\"Shuangpengxi\";\"main\"\n\"7413305\";\"Shuangpengxixiang\";\"other\"\n\"7413305\";\"双朋西\";\"other\"\n\"7413305\";\"双朋西乡\";\"other\"\n\"7413322\";\"Galengkou\";\"main\"\n\"7413322\";\"Gangcha Zangzuxiang\";\"other\"\n\"7413322\";\"尕楞口\";\"other\"\n\"7413322\";\"岗察藏族\";\"other\"\n\"7413332\";\"Duowa\";\"main\"\n\"7413332\";\"多哇\";\"other\"\n\"7413340\";\"Yaga\";\"main\"\n\"7413340\";\"Galeng Cangzuxiang\";\"other\"\n\"7413340\";\"Galeng Zangzuxiang\";\"other\"\n\"7413340\";\"尕楞藏族乡\";\"other\"\n\"7413340\";\"牙尕\";\"other\"\n\"7413342\";\"Tawa\";\"main\"\n\"7413342\";\"Guashize\";\"other\"\n\"7413342\";\"Guashizexiang\";\"other\"\n\"7413342\";\"塔哇\";\"other\"\n\"7413342\";\"瓜什则\";\"other\"\n\"7413342\";\"瓜什则乡\";\"other\"\n\"7413345\";\"Xiazhuang\";\"main\"\n\"7413345\";\"Chahandusi\";\"other\"\n\"7413345\";\"Chahandusixiang\";\"other\"\n\"7413345\";\"下庄\";\"other\"\n\"7413345\";\"查汗都斯\";\"other\"\n\"7413345\";\"查汗都斯乡\";\"other\"\n\"7413402\";\"Sanlanbahai\";\"main\"\n\"7413402\";\"Jiezi\";\"other\"\n\"7413402\";\"Jiezixiang\";\"other\"\n\"7413402\";\"三兰巴海\";\"other\"\n\"7413402\";\"街子\";\"other\"\n\"7413402\";\"街子乡\";\"other\"\n\"7413462\";\"Baijiaji\";\"main\"\n\"7413462\";\"Tajiazangzu\";\"other\"\n\"7413462\";\"Tajiazangzuxiang\";\"other\"\n\"7413462\";\"塔加藏族\";\"other\"\n\"7413462\";\"塔加藏族乡\";\"other\"\n\"7413462\";\"白加集\";\"other\"\n\"7413464\";\"Mengdadazhuang\";\"main\"\n\"7413464\";\"Mengda\";\"other\"\n\"7413464\";\"Mengdaxiang\";\"other\"\n\"7413464\";\"孟达\";\"other\"\n\"7413464\";\"孟达乡\";\"other\"\n\"7413464\";\"孟达大庄\";\"other\"\n\"7413509\";\"Wangjia\";\"main\"\n\"7413509\";\"Qianhexiang\";\"other\"\n\"7413509\";\"前河乡\";\"other\"\n\"7413509\";\"王家\";\"other\"\n\"7413516\";\"Xinjia\";\"main\"\n\"7413516\";\"Zhongchuanxiang\";\"other\"\n\"7413516\";\"中川乡\";\"other\"\n\"7413516\";\"辛家\";\"other\"\n\"7413597\";\"Kajiadao\";\"main\"\n\"7413597\";\"卡加道\";\"other\"\n\"7413614\";\"Tangga’an\";\"main\"\n\"7413614\";\"Tangga'an\";\"ascii\"\n\"7413614\";\"唐尕昂\";\"other\"\n\"7413654\";\"Jiujia\";\"main\"\n\"7413654\";\"九甲\";\"other\"\n\"7413703\";\"Madang\";\"main\"\n\"7413703\";\"麻当\";\"other\"\n\"7413715\";\"Qu’ao\";\"main\"\n\"7413715\";\"Qu'ao\";\"ascii\"\n\"7413715\";\"曲奥\";\"other\"\n\"7413744\";\"Maji\";\"main\"\n\"7413744\";\"马集\";\"other\"\n\"7413747\";\"Monigou\";\"main\"\n\"7413747\";\"漠泥沟\";\"other\"\n\"7413758\";\"Manisi\";\"main\"\n\"7413758\";\"麻尼寺\";\"other\"\n\"7413762\";\"Zhangzigou\";\"main\"\n\"7413762\";\"掌子沟\";\"other\"\n\"7413775\";\"Yingtan\";\"main\"\n\"7413775\";\"营滩\";\"other\"\n\"7413777\";\"Xiaoguan\";\"main\"\n\"7413777\";\"小关\";\"other\"\n\"7413782\";\"Zhongzuiling\";\"main\"\n\"7413782\";\"中咀岭\";\"other\"\n\"7413791\";\"Juiji\";\"main\"\n\"7413791\";\"居集\";\"other\"\n\"7413792\";\"Guogan\";\"main\"\n\"7413792\";\"郭干\";\"other\"\n\"7413795\";\"Xuhujia\";\"main\"\n\"7413795\";\"徐扈家\";\"other\"\n\"7413800\";\"Zhaizigou\";\"main\"\n\"7413800\";\"寨子沟\";\"other\"\n\"7413807\";\"Hulinjia\";\"main\"\n\"7413807\";\"胡林家\";\"other\"\n\"7413817\";\"Liugou\";\"main\"\n\"7413817\";\"柳沟\";\"other\"\n\"7413823\";\"Guanjiachuan\";\"main\"\n\"7413823\";\"关家川\";\"other\"\n\"7413827\";\"Liuji\";\"main\"\n\"7413827\";\"刘集\";\"other\"\n\"7413851\";\"Sibaozi\";\"main\"\n\"7413851\";\"四堡子\";\"other\"\n\"7413861\";\"Xiaoling\";\"main\"\n\"7413861\";\"Xiaolingxiang\";\"other\"\n\"7413861\";\"小岭\";\"other\"\n\"7413861\";\"小岭乡\";\"other\"\n\"7428592\";\"Qianyang Chengguanzhen\";\"main\"\n\"7428592\";\"Qianyang\";\"other\"\n\"7428592\";\"Qianyang Xian\";\"other\"\n\"7428592\";\"千阳\";\"other\"\n\"7428592\";\"千阳县\";\"other\"\n\"7428592\";\"千阳城关镇\";\"other\"\n\"7432952\";\"Yangyong\";\"main\"\n\"7432952\";\"羊永\";\"other\"\n\"7437850\";\"Huayuan\";\"main\"\n\"7437850\";\"花园\";\"other\"\n\"7440915\";\"Kuzhu\";\"main\"\n\"7440915\";\"Kuzhu Zhen\";\"other\"\n\"7440915\";\"苦竹\";\"other\"\n\"7440915\";\"苦竹镇\";\"other\"\n\"7446186\";\"Wangcang\";\"main\"\n\"7446186\";\"旺藏\";\"other\"\n\"7446191\";\"Ni’ao\";\"main\"\n\"7446191\";\"Ni'ao\";\"ascii\"\n\"7446191\";\"尼傲\";\"other\"\n\"7446195\";\"Kaba\";\"main\"\n\"7446195\";\"卡坝\";\"other\"\n\"7446231\";\"Sigou\";\"main\"\n\"7446231\";\"寺沟\";\"other\"\n\"7446247\";\"Shili\";\"main\"\n\"7446247\";\"十里\";\"other\"\n\"7446262\";\"Chabu\";\"main\"\n\"7446262\";\"茶埠\";\"other\"\n\"7446266\";\"Daogao\";\"main\"\n\"7446266\";\"Daogaoxiang\";\"other\"\n\"7446266\";\"刀告\";\"other\"\n\"7446266\";\"刀告乡\";\"other\"\n\"7446277\";\"Nalang\";\"main\"\n\"7446277\";\"Nalangxiang\";\"other\"\n\"7446277\";\"纳浪\";\"other\"\n\"7446277\";\"纳浪乡\";\"other\"\n\"7446294\";\"Xijiang\";\"main\"\n\"7446294\";\"西江\";\"other\"\n\"7446307\";\"Chubu\";\"main\"\n\"7446307\";\"Chubuxiang\";\"other\"\n\"7446307\";\"初步\";\"other\"\n\"7446307\";\"初步乡\";\"other\"\n\"7446319\";\"Xiaozhai\";\"main\"\n\"7446319\";\"小寨\";\"other\"\n\"7446325\";\"Yangyong\";\"main\"\n\"7446325\";\"Yangyongxiang\";\"other\"\n\"7446325\";\"羊永\";\"other\"\n\"7446325\";\"羊永乡\";\"other\"\n\"7446328\";\"Liushun\";\"main\"\n\"7446328\";\"流顺\";\"other\"\n\"7446337\";\"Longyuan\";\"main\"\n\"7446337\";\"Longyuanxiang\";\"other\"\n\"7446337\";\"龙元\";\"other\"\n\"7446337\";\"龙元乡\";\"other\"\n\"7446417\";\"Nawu\";\"main\"\n\"7446417\";\"那吾\";\"other\"\n\"7446428\";\"Lianlu\";\"main\"\n\"7446428\";\"莲麓\";\"other\"\n\"7446447\";\"Bajiao\";\"main\"\n\"7446447\";\"八角\";\"other\"\n\"7446453\";\"Kangduo\";\"main\"\n\"7446453\";\"康多\";\"other\"\n\"7446480\";\"Zuogaiduoma\";\"main\"\n\"7446480\";\"Zuogaiduomaxiang\";\"other\"\n\"7446480\";\"佐盖多玛\";\"other\"\n\"7446480\";\"佐盖多玛乡\";\"other\"\n\"7446489\";\"Tianjiahe\";\"main\"\n\"7446489\";\"田家河\";\"other\"\n\"7446494\";\"Yangzhuang\";\"main\"\n\"7446494\";\"杨庄\";\"other\"\n\"7446846\";\"Zhiping Shezu\";\"main\"\n\"7446846\";\"Zhiping Shezu Xiang\";\"other\"\n\"7446846\";\"治平畲族\";\"other\"\n\"7446846\";\"治平畲族乡\";\"other\"\n\"7446847\";\"Xianan\";\"main\"\n\"7446847\";\"Chengjiao\";\"other\"\n\"7446847\";\"下南\";\"other\"\n\"7446847\";\"城郊\";\"other\"\n\"7454440\";\"Yangxi\";\"main\"\n\"7454440\";\"Yangxi Xiang\";\"other\"\n\"7454440\";\"杨溪\";\"other\"\n\"7454440\";\"杨溪乡\";\"other\"\n\"7454443\";\"Toupi\";\"main\"\n\"7454443\";\"Toupi Zhen\";\"other\"\n\"7454443\";\"头陂\";\"other\"\n\"7454443\";\"头陂镇\";\"other\"\n\"7466647\";\"Gaolong\";\"main\"\n\"7466647\";\"Gaolong Xiang\";\"other\"\n\"7466647\";\"高龙\";\"other\"\n\"7466647\";\"高龙乡\";\"other\"\n\"7466650\";\"Fenkeng\";\"main\"\n\"7466650\";\"Fenkeng Xiang\";\"other\"\n\"7466650\";\"汾坑\";\"other\"\n\"7466650\";\"汾坑乡\";\"other\"\n\"7466651\";\"Meiyao\";\"main\"\n\"7466651\";\"Meiyao Zhen\";\"other\"\n\"7466651\";\"梅窑\";\"other\"\n\"7466651\";\"梅窑镇\";\"other\"\n\"7466652\";\"Dagu\";\"main\"\n\"7466652\";\"Dagu Xiang\";\"other\"\n\"7466652\";\"大沽\";\"other\"\n\"7466652\";\"大沽乡\";\"other\"\n\"7466654\";\"Chexi\";\"main\"\n\"7466654\";\"Chexi Xiang\";\"other\"\n\"7466654\";\"车溪\";\"other\"\n\"7466654\";\"车溪乡\";\"other\"\n\"7466658\";\"Ma’an\";\"main\"\n\"7466658\";\"Ma'an\";\"ascii\"\n\"7466658\";\"Ma'an Xiang\";\"other\"\n\"7466658\";\"Ma’an Xiang\";\"other\"\n\"7466658\";\"马安\";\"other\"\n\"7466658\";\"马安乡\";\"other\"\n\"7466659\";\"Ge’ao\";\"main\"\n\"7466659\";\"Ge'ao\";\"ascii\"\n\"7466659\";\"Ge'ao Xiang\";\"other\"\n\"7466659\";\"Ge’ao Xiang\";\"other\"\n\"7466659\";\"葛坳\";\"other\"\n\"7466659\";\"葛坳乡\";\"other\"\n\"7466660\";\"Gangmian\";\"main\"\n\"7466660\";\"Gangmian Xiang\";\"other\"\n\"7466660\";\"冈面\";\"other\"\n\"7466660\";\"冈面乡\";\"other\"\n\"7466661\";\"Dingbei\";\"main\"\n\"7466661\";\"Dingbei Xiang\";\"other\"\n\"7466661\";\"丁陂\";\"other\"\n\"7466661\";\"丁陂乡\";\"other\"\n\"7469572\";\"Shenkou\";\"main\"\n\"7469572\";\"莘口\";\"other\"\n\"7469573\";\"Qiujiang\";\"main\"\n\"7469573\";\"Qiujiang Xiang\";\"other\"\n\"7469573\";\"虬江\";\"other\"\n\"7469573\";\"虬江乡\";\"other\"\n\"7472706\";\"Yuanqian\";\"main\"\n\"7472706\";\"Yuanqian Zhen\";\"other\"\n\"7472706\";\"苑前\";\"other\"\n\"7472706\";\"苑前镇\";\"other\"\n\"7472710\";\"Shunfeng\";\"main\"\n\"7472710\";\"Shunfeng Xiang\";\"other\"\n\"7472710\";\"顺峰\";\"other\"\n\"7472710\";\"顺峰乡\";\"other\"\n\"7472713\";\"Zhonglong\";\"main\"\n\"7472713\";\"Zhonglong Xiang\";\"other\"\n\"7472713\";\"中龙\";\"other\"\n\"7472713\";\"中龙乡\";\"other\"\n\"7472715\";\"Baoshan\";\"main\"\n\"7472715\";\"Baoshan Xiang\";\"other\"\n\"7472715\";\"宝山\";\"other\"\n\"7472715\";\"宝山乡\";\"other\"\n\"7472716\";\"Sanxixiang\";\"main\"\n\"7472716\";\"三溪乡\";\"other\"\n\"7472717\";\"Shangyi\";\"main\"\n\"7472717\";\"Shangyi Xiang\";\"other\"\n\"7472717\";\"上圯\";\"other\"\n\"7472717\";\"上圯乡\";\"other\"\n\"7491133\";\"Zhangcaizhuang\";\"main\"\n\"7491133\";\"Zhangcaizhuang Xiang\";\"other\"\n\"7491133\";\"张蔡庄\";\"other\"\n\"7491133\";\"张蔡庄乡\";\"other\"\n\"7506701\";\"Xingjiang\";\"main\"\n\"7506701\";\"Xingjiang Xiang\";\"other\"\n\"7506701\";\"兴江乡\";\"other\"\n\"7506702\";\"Chengdong\";\"main\"\n\"7506702\";\"Chengdong Xiang\";\"other\"\n\"7506702\";\"城东乡\";\"other\"\n\"7508952\";\"Fenghuangcheng\";\"main\"\n\"7508952\";\"Fenghuangcheng Zhen\";\"other\"\n\"7508952\";\"凤凰城\";\"other\"\n\"7508952\";\"凤凰城镇\";\"other\"\n\"7508988\";\"Hougaoshizhuang\";\"main\"\n\"7508988\";\"Gaoshizhuang Xiang\";\"other\"\n\"7508988\";\"后高石庄\";\"other\"\n\"7508988\";\"高石庄乡\";\"other\"\n\"7508989\";\"Jigaodeng\";\"main\"\n\"7508989\";\"计高登\";\"other\"\n\"7508990\";\"Xijiazhai\";\"main\"\n\"7508990\";\"西家寨\";\"other\"\n\"7509269\";\"Gucheng\";\"main\"\n\"7509269\";\"Gucheng Zhen\";\"other\"\n\"7509269\";\"古城\";\"other\"\n\"7509269\";\"古城镇\";\"other\"\n\"7511953\";\"Dongpu\";\"main\"\n\"7511953\";\"Dongpu Zhen\";\"other\"\n\"7511953\";\"东埔\";\"other\"\n\"7511953\";\"东埔镇\";\"other\"\n\"7512456\";\"Lakou\";\"main\"\n\"7512456\";\"Lakou Zhen\";\"other\"\n\"7512456\";\"蓝口\";\"other\"\n\"7512456\";\"蓝口镇\";\"other\"\n\"7512457\";\"Yuannan\";\"main\"\n\"7512457\";\"Yuannan Zhen\";\"other\"\n\"7512457\";\"源南\";\"other\"\n\"7512457\";\"源南镇\";\"other\"\n\"7512458\";\"Fucheng\";\"main\"\n\"7512458\";\"Fucheng Zhen\";\"other\"\n\"7512458\";\"附城\";\"other\"\n\"7512458\";\"附城镇\";\"other\"\n\"7512459\";\"Dongpu\";\"main\"\n\"7512459\";\"Dongpu Jiedao\";\"other\"\n\"7512459\";\"东埔\";\"other\"\n\"7512459\";\"东埔街道\";\"other\"\n\"7512460\";\"Shangcheng\";\"main\"\n\"7512460\";\"Shangcheng Jiedao\";\"other\"\n\"7512460\";\"上城\";\"other\"\n\"7512460\";\"上城街道\";\"other\"\n\"7513828\";\"Changqiao\";\"main\"\n\"7513828\";\"Changqiao Zhen\";\"other\"\n\"7513828\";\"长桥\";\"other\"\n\"7513828\";\"长桥镇\";\"other\"\n\"7514212\";\"Longcheng\";\"main\"\n\"7514212\";\"Longcheng Zhen\";\"other\"\n\"7514212\";\"龙城\";\"other\"\n\"7514212\";\"龙城镇\";\"other\"\n\"7514349\";\"Jiangguanchi\";\"main\"\n\"7514349\";\"Jiangguanchi Zhen\";\"other\"\n\"7514349\";\"将官池\";\"other\"\n\"7514349\";\"将官池镇\";\"other\"\n\"7514579\";\"Lujiawan\";\"main\"\n\"7514579\";\"Lujiawan Xiang\";\"other\"\n\"7514579\";\"芦家湾\";\"other\"\n\"7514579\";\"芦家湾乡\";\"other\"\n\"7514592\";\"Chedao\";\"main\"\n\"7514592\";\"Chedao Xiang\";\"other\"\n\"7514592\";\"车道\";\"other\"\n\"7514592\";\"车道乡\";\"other\"\n\"7514620\";\"Yuanmao\";\"main\"\n\"7514620\";\"Yuanmao Zhen\";\"other\"\n\"7514620\";\"原峁\";\"other\"\n\"7514620\";\"原峁镇\";\"other\"\n\"7514837\";\"Luoshanchuan\";\"main\"\n\"7514837\";\"Luoshanchuan Xiang\";\"other\"\n\"7514837\";\"罗山川\";\"other\"\n\"7514837\";\"罗山川乡\";\"other\"\n\"7516064\";\"Pengbao\";\"main\"\n\"7516064\";\"Pengbao Xiang\";\"other\"\n\"7516064\";\"彭堡\";\"other\"\n\"7516064\";\"彭堡乡\";\"other\"\n\"7516065\";\"Dongjiao\";\"main\"\n\"7516065\";\"Dongjiao Xiang\";\"other\"\n\"7516065\";\"东郊\";\"other\"\n\"7516065\";\"东郊乡\";\"other\"\n\"7516066\";\"Gaotai\";\"main\"\n\"7516066\";\"Gaotai Xiang\";\"other\"\n\"7516066\";\"高台\";\"other\"\n\"7516066\";\"高台乡\";\"other\"\n\"7516114\";\"Shicha\";\"main\"\n\"7516114\";\"Shicha Xiang\";\"other\"\n\"7516114\";\"石岔\";\"other\"\n\"7516114\";\"石岔乡\";\"other\"\n\"7516115\";\"Gongbailiang\";\"main\"\n\"7516115\";\"Gongbailiang Xiang\";\"other\"\n\"7516115\";\"拱拜梁\";\"other\"\n\"7516115\";\"拱拜梁乡\";\"other\"\n\"7516116\";\"Jiaocha\";\"main\"\n\"7516116\";\"Jiaocha Xiang\";\"other\"\n\"7516116\";\"交岔\";\"other\"\n\"7516116\";\"交岔乡\";\"other\"\n\"7516117\";\"Chengjiao\";\"main\"\n\"7516117\";\"Chengjiao Xiang\";\"other\"\n\"7516117\";\"城郊\";\"other\"\n\"7516117\";\"城郊乡\";\"other\"\n\"7516118\";\"Gonghe\";\"main\"\n\"7516118\";\"Gonghe Xiang\";\"other\"\n\"7516118\";\"共和\";\"other\"\n\"7516118\";\"共和乡\";\"other\"\n\"7516119\";\"Maqu\";\"main\"\n\"7516119\";\"Maqu Xiang\";\"other\"\n\"7516119\";\"马渠\";\"other\"\n\"7516119\";\"马渠乡\";\"other\"\n\"7516120\";\"Magaozhuang\";\"main\"\n\"7516120\";\"Magaozhuang Xiang\";\"other\"\n\"7516120\";\"马高庄\";\"other\"\n\"7516120\";\"马高庄乡\";\"other\"\n\"7516121\";\"Heiquan\";\"main\"\n\"7516121\";\"Heiquan Zhen\";\"other\"\n\"7516121\";\"黑泉\";\"other\"\n\"7516121\";\"黑泉镇\";\"other\"\n\"7516122\";\"Xinshan\";\"main\"\n\"7516122\";\"Xinshancun Xiang\";\"other\"\n\"7516122\";\"新山\";\"other\"\n\"7516122\";\"新山乡\";\"other\"\n\"7516123\";\"Yanglu\";\"main\"\n\"7516123\";\"Yanglu Xiang\";\"other\"\n\"7516123\";\"羊路\";\"other\"\n\"7516123\";\"羊路乡\";\"other\"\n\"7516193\";\"Baitouli\";\"main\"\n\"7516193\";\"Baitouli Xiang\";\"other\"\n\"7516193\";\"白头里\";\"other\"\n\"7516193\";\"白头里乡\";\"other\"\n\"7516251\";\"Yangqianhe\";\"main\"\n\"7516251\";\"Yangqianhe Xiang\";\"other\"\n\"7516251\";\"杨千河\";\"other\"\n\"7516251\";\"杨千河乡\";\"other\"\n\"7516270\";\"Youwei\";\"main\"\n\"7516270\";\"Youwei Zhen\";\"other\"\n\"7516270\";\"右卫\";\"other\"\n\"7516270\";\"右卫镇\";\"other\"\n\"7516417\";\"Shuiyao\";\"main\"\n\"7516417\";\"Shuiyao Xiang\";\"other\"\n\"7516417\";\"水窑\";\"other\"\n\"7516417\";\"水窑乡\";\"other\"\n\"7516431\";\"Dianwan\";\"main\"\n\"7516431\";\"Dianwan Zhen\";\"other\"\n\"7516431\";\"店湾\";\"other\"\n\"7516431\";\"店湾镇\";\"other\"\n\"7516451\";\"Que’ershan\";\"main\"\n\"7516451\";\"Que'ershan\";\"ascii\"\n\"7516451\";\"Que'ershan Zhen\";\"other\"\n\"7516451\";\"Que’ershan Zhen\";\"other\"\n\"7516451\";\"鹊儿山\";\"other\"\n\"7516451\";\"鹊儿山镇\";\"other\"\n\"7516804\";\"Hadapu Zhen\";\"main\"\n\"7516804\";\"哈达铺镇\";\"other\"\n\"7516812\";\"Lichuan Zhen\";\"main\"\n\"7516812\";\"理川镇\";\"other\"\n\"7516890\";\"Lujing Zhen\";\"main\"\n\"7516890\";\"闾井镇\";\"other\"\n\"7517059\";\"Chengjiao Zhen\";\"main\"\n\"7517059\";\"城郊镇\";\"other\"\n\"7517266\";\"Tange Zhen\";\"main\"\n\"7517266\";\"滩歌镇\";\"other\"\n\"7517296\";\"Xinsi Zhen\";\"main\"\n\"7517296\";\"新寺镇\";\"other\"\n\"7517497\";\"Yuanyang Zhen\";\"main\"\n\"7517497\";\"鸳鸯镇\";\"other\"\n\"7517710\";\"Santai Zhen\";\"main\"\n\"7517710\";\"三台镇\";\"other\"\n\"7517713\";\"Wenfeng Zhen\";\"main\"\n\"7517713\";\"文峰镇\";\"other\"\n\"7517772\";\"Caizi Zhen\";\"main\"\n\"7517772\";\"菜子镇\";\"other\"\n\"7517793\";\"Gongchang Zhen\";\"main\"\n\"7517793\";\"巩昌镇\";\"other\"\n\"7517826\";\"Tongchuan\";\"main\"\n\"7517826\";\"Tongchuan Xiang\";\"other\"\n\"7517826\";\"桐川\";\"other\"\n\"7517826\";\"桐川乡\";\"other\"\n\"7517879\";\"Binglincha\";\"main\"\n\"7517879\";\"Binglincha Xiang\";\"other\"\n\"7517879\";\"冰淋岔\";\"other\"\n\"7517879\";\"冰淋岔乡\";\"other\"\n\"7517930\";\"Nanzhuang\";\"main\"\n\"7517930\";\"Nanzhuang Xiang\";\"other\"\n\"7517930\";\"南庄\";\"other\"\n\"7517930\";\"南庄乡\";\"other\"\n\"7517945\";\"Xuanma\";\"main\"\n\"7517945\";\"Xuanma Xiang\";\"other\"\n\"7517945\";\"玄马\";\"other\"\n\"7517945\";\"玄马乡\";\"other\"\n\"7517981\";\"Wuchengzi\";\"main\"\n\"7517981\";\"Wuchengzi Xiang\";\"other\"\n\"7517981\";\"吴城子\";\"other\"\n\"7517981\";\"吴城子乡\";\"other\"\n\"7518035\";\"Caikouji\";\"main\"\n\"7518035\";\"Caikouji Xiang\";\"other\"\n\"7518035\";\"蔡口集\";\"other\"\n\"7518035\";\"蔡口集乡\";\"other\"\n\"7518038\";\"Dijiahe\";\"main\"\n\"7518038\";\"Dijiahe Xiang\";\"other\"\n\"7518038\";\"翟家河\";\"other\"\n\"7518038\";\"翟家河乡\";\"other\"\n\"7518184\";\"Wangzuizi\";\"main\"\n\"7518184\";\"Wangzuizi Xiang\";\"other\"\n\"7518184\";\"王咀子\";\"other\"\n\"7518184\";\"王咀子乡\";\"other\"\n\"7518281\";\"Shangliyuan\";\"main\"\n\"7518281\";\"Shangliyuan Xiang\";\"other\"\n\"7518281\";\"上里塬\";\"other\"\n\"7518281\";\"上里塬乡\";\"other\"\n\"7518299\";\"Hedao\";\"main\"\n\"7518299\";\"Hedao Xiang\";\"other\"\n\"7518299\";\"合道\";\"other\"\n\"7518299\";\"合道乡\";\"other\"\n\"7518353\";\"Heping\";\"main\"\n\"7518353\";\"Heping Xiang\";\"other\"\n\"7518353\";\"何坪\";\"other\"\n\"7518353\";\"何坪乡\";\"other\"\n\"7518374\";\"Xujiahe\";\"main\"\n\"7518374\";\"Xujiahe Xiang\";\"other\"\n\"7518374\";\"许家河\";\"other\"\n\"7518374\";\"许家河乡\";\"other\"\n\"7518387\";\"Luping\";\"main\"\n\"7518387\";\"Luping Xiang\";\"other\"\n\"7518387\";\"路坪\";\"other\"\n\"7518387\";\"路坪乡\";\"other\"\n\"7518405\";\"Wentai\";\"main\"\n\"7518405\";\"Wentai Xiang\";\"other\"\n\"7518405\";\"温台\";\"other\"\n\"7518405\";\"温台乡\";\"other\"\n\"7518429\";\"Liliangzi\";\"main\"\n\"7518429\";\"Liliangzi Xiang\";\"other\"\n\"7518429\";\"李良子\";\"other\"\n\"7518429\";\"李良子乡\";\"other\"\n\"7518595\";\"Xichuan\";\"main\"\n\"7518595\";\"Xichuan Xiang\";\"other\"\n\"7518595\";\"西川\";\"other\"\n\"7518595\";\"西川乡\";\"other\"\n\"7518639\";\"Miaoxiang\";\"main\"\n\"7518639\";\"Miaoxiang Xiang\";\"other\"\n\"7518639\";\"庙巷\";\"other\"\n\"7518639\";\"庙巷乡\";\"other\"\n\"7518677\";\"Bazhu\";\"main\"\n\"7518677\";\"Bazhu Xiang\";\"other\"\n\"7518677\";\"八珠\";\"other\"\n\"7518677\";\"八珠乡\";\"other\"\n\"7518949\";\"Qiaochuan\";\"main\"\n\"7518949\";\"Qiaochuan Xiang\";\"other\"\n\"7518949\";\"乔川\";\"other\"\n\"7518949\";\"乔川乡\";\"other\"\n\"7519037\";\"Siheyuan\";\"main\"\n\"7519037\";\"Siheyuan Xiang\";\"other\"\n\"7519037\";\"四合塬\";\"other\"\n\"7519037\";\"四合塬乡\";\"other\"\n\"7520383\";\"Xingyuan\";\"main\"\n\"7520383\";\"Xingyuan Xiang\";\"other\"\n\"7520383\";\"杏园\";\"other\"\n\"7520383\";\"杏园乡\";\"other\"\n\"7520825\";\"Qianfoling\";\"main\"\n\"7520825\";\"Qianfoling Zhen\";\"other\"\n\"7520825\";\"千佛岭\";\"other\"\n\"7520825\";\"千佛岭镇\";\"other\"\n\"7521060\";\"Nanyulin\";\"main\"\n\"7521060\";\"Nanyulin Xiang\";\"other\"\n\"7521060\";\"南榆林\";\"other\"\n\"7521060\";\"南榆林乡\";\"other\"\n\"7523527\";\"Zonghan\";\"main\"\n\"7523527\";\"Zonghan Jiedao\";\"other\"\n\"7523527\";\"宗汉\";\"other\"\n\"7523527\";\"宗汉街道\";\"other\"\n\"7523551\";\"Sanbei\";\"main\"\n\"7523551\";\"Sanbei Zhen\";\"other\"\n\"7523551\";\"三北\";\"other\"\n\"7523551\";\"三北镇\";\"other\"\n\"7524461\";\"Beiwa\";\"main\"\n\"7524461\";\"Wangwa Zhen\";\"other\"\n\"7524461\";\"北洼\";\"other\"\n\"7524461\";\"王洼镇\";\"other\"\n\"7524638\";\"Dongjiao\";\"main\"\n\"7524638\";\"东郊\";\"other\"\n\"7524680\";\"Shuangqiao\";\"main\"\n\"7524680\";\"Shuangqiao Zhen\";\"other\"\n\"7524680\";\"双桥\";\"other\"\n\"7524680\";\"双桥镇\";\"other\"\n\"7524999\";\"Pingan\";\"main\"\n\"7524999\";\"Ping'an Zhen\";\"other\"\n\"7524999\";\"Ping’an Zhen\";\"other\"\n\"7524999\";\"平安\";\"other\"\n\"7524999\";\"平安镇\";\"other\"\n\"7525001\";\"Qianxu Zhen\";\"main\"\n\"7525001\";\"钱圩镇\";\"other\"\n\"7525002\";\"Shaochang Zhen\";\"main\"\n\"7525002\";\"邵厂镇\";\"other\"\n\"7525003\";\"Shuyuan Zhen\";\"main\"\n\"7525003\";\"书院镇\";\"other\"\n\"7525062\";\"Daotouzui\";\"main\"\n\"7525062\";\"Fodu\";\"other\"\n\"7525062\";\"佛渡\";\"other\"\n\"7525062\";\"道头嘴\";\"other\"\n\"7525337\";\"Heshi\";\"main\"\n\"7525337\";\"Heshi Zhen\";\"other\"\n\"7525337\";\"河失\";\"other\"\n\"7525337\";\"河失镇\";\"other\"\n\"7525339\";\"Xiqiao\";\"main\"\n\"7525339\";\"Xiqiao Zhen\";\"other\"\n\"7525339\";\"溪桥\";\"other\"\n\"7525339\";\"溪桥镇\";\"other\"\n\"7525692\";\"Yaosai\";\"main\"\n\"7525692\";\"Yaosai Zhen\";\"other\"\n\"7525692\";\"要塞\";\"other\"\n\"7525692\";\"要塞镇\";\"other\"\n\"7526455\";\"Lishi\";\"main\"\n\"7526455\";\"Lishi Zhen\";\"other\"\n\"7526455\";\"李市\";\"other\"\n\"7526455\";\"李市镇\";\"other\"\n\"7526456\";\"Qixu\";\"main\"\n\"7526456\";\"Dongtouxu\";\"other\"\n\"7526456\";\"Qixu Zhen\";\"other\"\n\"7526456\";\"七圩\";\"other\"\n\"7526456\";\"七圩镇\";\"other\"\n\"7526456\";\"东头圩\";\"other\"\n\"7526555\";\"Lianyi\";\"main\"\n\"7526555\";\"Lianyi Zhen\";\"other\"\n\"7526555\";\"廉贻\";\"other\"\n\"7526555\";\"廉贻镇\";\"other\"\n\"7526556\";\"Wulie\";\"main\"\n\"7526556\";\"Wulie Zhen\";\"other\"\n\"7526556\";\"五烈\";\"other\"\n\"7526556\";\"五烈镇\";\"other\"\n\"7526675\";\"Guangshan\";\"main\"\n\"7526675\";\"Guangshan Zhen\";\"other\"\n\"7526675\";\"广山\";\"other\"\n\"7526675\";\"广山镇\";\"other\"\n\"7527252\";\"Chaoqiao\";\"main\"\n\"7527252\";\"Chaoqiao Zhen\";\"other\"\n\"7527252\";\"潮桥\";\"other\"\n\"7527252\";\"潮桥镇\";\"other\"\n\"7527663\";\"Xinqiao\";\"main\"\n\"7527663\";\"Xinqiao Zhen\";\"other\"\n\"7527663\";\"新桥\";\"other\"\n\"7527663\";\"新桥镇\";\"other\"\n\"7527844\";\"Datong\";\"main\"\n\"7527844\";\"Datong Zhen\";\"other\"\n\"7527844\";\"大同\";\"other\"\n\"7527844\";\"大同镇\";\"other\"\n\"7527899\";\"Dong’an\";\"main\"\n\"7527899\";\"Dong'an\";\"ascii\"\n\"7527899\";\"Dong'an Zhen\";\"other\"\n\"7527899\";\"Dong’an Zhen\";\"other\"\n\"7527899\";\"东安\";\"other\"\n\"7527899\";\"东安镇\";\"other\"\n\"7530465\";\"Yangjialusanqiu\";\"main\"\n\"7530465\";\"Xiaocao'e Zhen\";\"other\"\n\"7530465\";\"Xiaocao’e Zhen\";\"other\"\n\"7530465\";\"小曹娥镇\";\"other\"\n\"7530465\";\"杨家路三丘\";\"other\"\n\"7536143\";\"Saga\";\"main\"\n\"7536143\";\"Kyakyaru\";\"other\"\n\"7536143\";\"Сага\";\"other\"\n\"7536596\";\"Chang’an\";\"main\"\n\"7536596\";\"Chang'an\";\"ascii\"\n\"7536596\";\"Chang'an Zhen\";\"other\"\n\"7536596\";\"Chang’an Zhen\";\"other\"\n\"7536596\";\"长安\";\"other\"\n\"7536596\";\"长安镇\";\"other\"\n\"7536733\";\"Huangnihe\";\"main\"\n\"7536733\";\"黄泥河\";\"other\"\n\"7539258\";\"Huangni\";\"main\"\n\"7539258\";\"Xintunzi Zhen\";\"other\"\n\"7539258\";\"新屯子镇\";\"other\"\n\"7539258\";\"黄泥\";\"other\"\n\"7544732\";\"Xianpudong\";\"main\"\n\"7544732\";\"Baijin Xiang\";\"other\"\n\"7544732\";\"咸朴洞\";\"other\"\n\"7544732\";\"白金乡\";\"other\"\n\"7544733\";\"Chongmin\";\"main\"\n\"7544733\";\"Dexin Xiang\";\"other\"\n\"7544733\";\"崇民\";\"other\"\n\"7544733\";\"德新乡\";\"other\"\n\"7553752\";\"Minzhu\";\"main\"\n\"7553752\";\"Taiwang\";\"other\"\n\"7553752\";\"Taiwang Xiang\";\"other\"\n\"7553752\";\"Taiwang Zhen\";\"other\"\n\"7553752\";\"太王\";\"other\"\n\"7553752\";\"太王乡\";\"other\"\n\"7553752\";\"太王镇\";\"other\"\n\"7553752\";\"民主\";\"other\"\n\"7569004\";\"Hulutao\";\"main\"\n\"7569004\";\"Hulutao Xiang\";\"other\"\n\"7569004\";\"葫芦套\";\"other\"\n\"7569004\";\"葫芦套乡\";\"other\"\n\"7569005\";\"Jindou\";\"main\"\n\"7569005\";\"Jindou Chaoxianzu Manzu Xiang\";\"other\"\n\"7569005\";\"金斗\";\"other\"\n\"7569005\";\"金斗朝鲜族满族乡\";\"other\"\n\"7569006\";\"Jiangdianzi\";\"main\"\n\"7569006\";\"Jiangdian Zhen\";\"other\"\n\"7569006\";\"江甸子\";\"other\"\n\"7569006\";\"江甸镇\";\"other\"\n\"7569007\";\"Dachuan\";\"main\"\n\"7569007\";\"Dachuan Xiang\";\"other\"\n\"7569007\";\"大川\";\"other\"\n\"7569007\";\"大川乡\";\"other\"\n\"3665542\";\"Zipaquirá\";\"main\"\n\"3665542\";\"Zipaquira\";\"ascii\"\n\"3665544\";\"Zipacón\";\"main\"\n\"3665544\";\"Zipacon\";\"ascii\"\n\"3665547\";\"Zetaquira\";\"main\"\n\"3665559\";\"Zarzal\";\"main\"\n\"3665566\";\"Zaragoza\";\"main\"\n\"3665587\";\"Zapatoca\";\"main\"\n\"3665616\";\"Zambrano\";\"main\"\n\"3665657\";\"Yumbo\";\"main\"\n\"3665678\";\"Yotoco\";\"main\"\n\"3665678\";\"Yataco\";\"other\"\n\"3665688\";\"Yopal\";\"main\"\n\"3665688\";\"El Yopal\";\"other\"\n\"3665688\";\"Jopal'\";\"other\"\n\"3665688\";\"Marroquin\";\"other\"\n\"3665688\";\"Marroquín\";\"other\"\n\"3665688\";\"Йопаль\";\"other\"\n\"3665691\";\"Yondó\";\"main\"\n\"3665691\";\"Yondo\";\"ascii\"\n\"3665691\";\"Casabe\";\"other\"\n\"3665693\";\"Yolombó\";\"main\"\n\"3665693\";\"Yolombo\";\"ascii\"\n\"3665741\";\"Yarumal\";\"main\"\n\"3665792\";\"Yalí\";\"main\"\n\"3665792\";\"Yali\";\"ascii\"\n\"3665803\";\"Yaguará\";\"main\"\n\"3665803\";\"Yaguara\";\"ascii\"\n\"3665811\";\"Yacuanquer\";\"main\"\n\"3665811\";\"Yacauquer\";\"other\"\n\"3665811\";\"Yaquanquer\";\"other\"\n\"3665813\";\"Yacopí\";\"main\"\n\"3665813\";\"Yacopi\";\"ascii\"\n\"3665851\";\"Viterbo\";\"main\"\n\"3665860\";\"Vista Hermosa\";\"main\"\n\"3665881\";\"Viotá\";\"main\"\n\"3665881\";\"Viota\";\"ascii\"\n\"3665895\";\"Villeta\";\"main\"\n\"3665898\";\"Villavieja\";\"main\"\n\"3665898\";\"Villa Vieja\";\"other\"\n\"3665900\";\"Villavicencio\";\"main\"\n\"3665900\";\"Cantarrana\";\"other\"\n\"3665900\";\"Caserio Villavicencio\";\"other\"\n\"3665900\";\"Viljavisensijas\";\"other\"\n\"3665900\";\"Viljavisensio\";\"other\"\n\"3665900\";\"Вилявисенсио\";\"other\"\n\"3665910\";\"Villarrica\";\"main\"\n\"3665913\";\"Villa del Rosario\";\"main\"\n\"3665913\";\"Rosario\";\"other\"\n\"3665913\";\"Vil'ja-del'-Rosario\";\"other\"\n\"3665913\";\"Villa Rosario\";\"other\"\n\"3665913\";\"Вилья-дель-Росарио\";\"other\"\n\"3665924\";\"Villapinzón\";\"main\"\n\"3665924\";\"Villapinzon\";\"ascii\"\n\"3665934\";\"Villanueva\";\"main\"\n\"3665935\";\"Villanueva\";\"main\"\n\"3665935\";\"San Juan de Tumuhuaco\";\"other\"\n\"3665935\";\"San Juán de Tumuhuaco\";\"other\"\n\"3665935\";\"Vil'januehva\";\"other\"\n\"3665935\";\"Вильянуэва\";\"other\"\n\"3665949\";\"Villanueva\";\"main\"\n\"3665951\";\"Villanueva\";\"main\"\n\"3665973\";\"Villamaría\";\"main\"\n\"3665973\";\"Villamaria\";\"ascii\"\n\"3665986\";\"Villahermosa\";\"main\"\n\"3665992\";\"Villagarzón\";\"main\"\n\"3665992\";\"Villagarzon\";\"ascii\"\n\"3666003\";\"Villa de Leiva\";\"main\"\n\"3666003\";\"Leiva\";\"other\"\n\"3666025\";\"Vijes\";\"main\"\n\"3666042\";\"Vigía del Fuerte\";\"main\"\n\"3666042\";\"Vigia del Fuerte\";\"ascii\"\n\"3666042\";\"Guayabal\";\"other\"\n\"3666075\";\"Victoria\";\"main\"\n\"3666087\";\"Vianí\";\"main\"\n\"3666087\";\"Viani\";\"ascii\"\n\"3666092\";\"Vetas\";\"main\"\n\"3666102\";\"Versalles\";\"main\"\n\"3666111\";\"Vergara\";\"main\"\n\"3666163\";\"Ventaquemada\";\"main\"\n\"3666193\";\"Venecia\";\"main\"\n\"3666203\";\"Venecia\";\"main\"\n\"3666203\";\"Ospina Perez\";\"other\"\n\"3666203\";\"Ospina Pérez\";\"other\"\n\"3666226\";\"Venadillo\";\"main\"\n\"3666232\";\"Vélez\";\"main\"\n\"3666232\";\"Velez\";\"ascii\"\n\"3666287\";\"Valparaíso\";\"main\"\n\"3666287\";\"Valparaiso\";\"ascii\"\n\"3666291\";\"Valparaíso\";\"main\"\n\"3666291\";\"Valparaiso\";\"ascii\"\n\"3666304\";\"Valledupar\";\"main\"\n\"3666304\";\"Valedupar\";\"other\"\n\"3666304\";\"Valjeduparas\";\"other\"\n\"3666304\";\"twrbw\";\"other\"\n\"3666304\";\"Валедупар\";\"other\"\n\"3666304\";\"توربو\";\"other\"\n\"3666309\";\"Valle de San Juan\";\"main\"\n\"3666309\";\"El Valle\";\"other\"\n\"3666309\";\"Valle\";\"other\"\n\"3666311\";\"Valle de San José\";\"main\"\n\"3666311\";\"Valle de San Jose\";\"ascii\"\n\"3666311\";\"El Valle\";\"other\"\n\"3666311\";\"Valle\";\"other\"\n\"3666326\";\"Valencia\";\"main\"\n\"3666333\";\"Valdivia\";\"main\"\n\"3666363\";\"Utica\";\"main\"\n\"3666370\";\"Usiacurí\";\"main\"\n\"3666370\";\"Usiacuri\";\"ascii\"\n\"3666381\";\"Urumita\";\"main\"\n\"3666381\";\"Orumito\";\"other\"\n\"3666381\";\"Uramita\";\"other\"\n\"3666395\";\"Urrao\";\"main\"\n\"3666409\";\"Uribia\";\"main\"\n\"3666436\";\"Uramita\";\"main\"\n\"3666475\";\"Unguía\";\"main\"\n\"3666475\";\"Unguia\";\"ascii\"\n\"3666475\";\"Arquia\";\"other\"\n\"3666475\";\"Ungia\";\"other\"\n\"3666481\";\"Une\";\"main\"\n\"3666493\";\"Umbita\";\"main\"\n\"3666502\";\"Ulloa\";\"main\"\n\"3666519\";\"Ubaté\";\"main\"\n\"3666519\";\"Ubate\";\"ascii\"\n\"3666522\";\"Ubaque\";\"main\"\n\"3666526\";\"Ubalá\";\"main\"\n\"3666526\";\"Ubala\";\"ascii\"\n\"3666550\";\"Tuta\";\"main\"\n\"3666562\";\"Turmequé\";\"main\"\n\"3666562\";\"Turmeque\";\"ascii\"\n\"3666562\";\"Turmequo\";\"other\"\n\"3666562\";\"Turmequó\";\"other\"\n\"3666570\";\"Turbo\";\"main\"\n\"3666575\";\"Turbaná\";\"main\"\n\"3666575\";\"Turbana\";\"ascii\"\n\"3666577\";\"Turbaco\";\"main\"\n\"3666582\";\"Túquerres\";\"main\"\n\"3666582\";\"Tuquerres\";\"ascii\"\n\"3666608\";\"Tunja\";\"main\"\n\"3666640\";\"Tumaco\";\"main\"\n\"3666640\";\"Tucano\";\"other\"\n\"3666640\";\"Tumako\";\"other\"\n\"3666640\";\"Тумако\";\"other\"\n\"3666645\";\"Tuluá\";\"main\"\n\"3666645\";\"Tulua\";\"ascii\"\n\"3666645\";\"Тулуа\";\"other\"\n\"3666673\";\"Tubará\";\"main\"\n\"3666673\";\"Tubara\";\"ascii\"\n\"3666680\";\"Trujillo\";\"main\"\n\"3666719\";\"Trinidad\";\"main\"\n\"3666719\";\"La Parroquia\";\"other\"\n\"3666719\";\"Municipio Trinidad\";\"other\"\n\"3666834\";\"Totoró\";\"main\"\n\"3666834\";\"Totoro\";\"ascii\"\n\"3666834\";\"Totora\";\"other\"\n\"3666881\";\"Toro\";\"main\"\n\"3666887\";\"Toribío\";\"main\"\n\"3666887\";\"Toribio\";\"ascii\"\n\"3666903\";\"Topaipí\";\"main\"\n\"3666903\";\"Topaipi\";\"ascii\"\n\"3666905\";\"Tópaga\";\"main\"\n\"3666905\";\"Topaga\";\"ascii\"\n\"3666936\";\"Toluviejo\";\"main\"\n\"3666939\";\"Tolú\";\"main\"\n\"3666939\";\"Tolu\";\"ascii\"\n\"3666939\";\"Tol\";\"other\"\n\"3666939\";\"Тол\";\"other\"\n\"3666959\";\"Toledo\";\"main\"\n\"3666997\";\"Tocancipá\";\"main\"\n\"3666997\";\"Tocancipa\";\"ascii\"\n\"3667003\";\"Tocaima\";\"main\"\n\"3667007\";\"Toca\";\"main\"\n\"3667023\";\"Titiribí\";\"main\"\n\"3667023\";\"Titiribi\";\"ascii\"\n\"3667044\";\"Tipacoque\";\"main\"\n\"3667070\";\"Timbiquí\";\"main\"\n\"3667070\";\"Timbiqui\";\"ascii\"\n\"3667070\";\"Santa Barbara\";\"other\"\n\"3667070\";\"Santa Bárbara\";\"other\"\n\"3667082\";\"Timaná\";\"main\"\n\"3667082\";\"Timana\";\"ascii\"\n\"3667158\";\"Tierralta\";\"main\"\n\"3667158\";\"Los Bongos\";\"other\"\n\"3667158\";\"T'erral'ta\";\"other\"\n\"3667158\";\"Tierra Alta\";\"other\"\n\"3667158\";\"Тьерральта\";\"other\"\n\"3667202\";\"Tibú\";\"main\"\n\"3667202\";\"Tibu\";\"ascii\"\n\"3667211\";\"Tibasosa\";\"main\"\n\"3667218\";\"Tibaná\";\"main\"\n\"3667218\";\"Tibana\";\"ascii\"\n\"3667244\";\"Tesalia\";\"main\"\n\"3667244\";\"Carnicerias\";\"other\"\n\"3667244\";\"Carnicerías\";\"other\"\n\"3667247\";\"Teruel\";\"main\"\n\"3667247\";\"Retiro\";\"other\"\n\"3667288\";\"Tenza\";\"main\"\n\"3667288\";\"Tensa\";\"other\"\n\"3667290\";\"Tenjo\";\"main\"\n\"3667323\";\"Tello\";\"main\"\n\"3667355\";\"Tauramena\";\"main\"\n\"3667373\";\"Tasco\";\"main\"\n\"3667380\";\"Tarso\";\"main\"\n\"3667386\";\"Tarqui\";\"main\"\n\"3667386\";\"Tanqui\";\"other\"\n\"3667447\";\"Tangua\";\"main\"\n\"3667471\";\"Taminango\";\"main\"\n\"3667473\";\"Támesis\";\"main\"\n\"3667473\";\"Tamesis\";\"ascii\"\n\"3667478\";\"Tame\";\"main\"\n\"3667478\";\"Tam\";\"other\"\n\"3667478\";\"Там\";\"other\"\n\"3667516\";\"Tamara\";\"main\"\n\"3667528\";\"Tamalameque\";\"main\"\n\"3667547\";\"Talaigua Viejo\";\"main\"\n\"3667579\";\"Tadó\";\"main\"\n\"3667579\";\"Tado\";\"ascii\"\n\"3667629\";\"Tabio\";\"main\"\n\"3667649\";\"Sutatausa\";\"main\"\n\"3667651\";\"Sutamarchán\";\"main\"\n\"3667651\";\"Sutamarchan\";\"ascii\"\n\"3667660\";\"Susacón\";\"main\"\n\"3667660\";\"Susacon\";\"ascii\"\n\"3667665\";\"Susa\";\"main\"\n\"3667697\";\"Supía\";\"main\"\n\"3667697\";\"Supia\";\"ascii\"\n\"3667701\";\"Supatá\";\"main\"\n\"3667701\";\"Supata\";\"ascii\"\n\"3667717\";\"Suesca\";\"main\"\n\"3667728\";\"Sucre\";\"main\"\n\"3667728\";\"Boca de Granada\";\"other\"\n\"3667728\";\"Sukre\";\"other\"\n\"3667728\";\"Сукре\";\"other\"\n\"3667731\";\"Sucre\";\"main\"\n\"3667731\";\"Sukre\";\"other\"\n\"3667731\";\"Сукре\";\"other\"\n\"3667732\";\"Sucre\";\"main\"\n\"3667760\";\"Subachoque\";\"main\"\n\"3667764\";\"Suaza\";\"main\"\n\"3667772\";\"Suárez\";\"main\"\n\"3667772\";\"Suarez\";\"ascii\"\n\"3667772\";\"Santa Rosa\";\"other\"\n\"3667773\";\"Suárez\";\"main\"\n\"3667773\";\"Suarez\";\"ascii\"\n\"3667780\";\"Suan\";\"main\"\n\"3667783\";\"Suaita\";\"main\"\n\"3667791\";\"Sotomayor\";\"main\"\n\"3667791\";\"Los Andes\";\"other\"\n\"3667796\";\"Sotaquirá\";\"main\"\n\"3667796\";\"Sotaquira\";\"ascii\"\n\"3667807\";\"Sopó\";\"main\"\n\"3667807\";\"Sopo\";\"ascii\"\n\"3667811\";\"Soplaviento\";\"main\"\n\"3667820\";\"Sonsón\";\"main\"\n\"3667820\";\"Sonson\";\"ascii\"\n\"3667834\";\"Somondoco\";\"main\"\n\"3667849\";\"Soledad\";\"main\"\n\"3667868\";\"Solano\";\"main\"\n\"3667868\";\"Puerto Solano\";\"other\"\n\"3667873\";\"Sogamoso\";\"main\"\n\"3667873\";\"Согамосо\";\"other\"\n\"3667880\";\"Socotá\";\"main\"\n\"3667880\";\"Socota\";\"ascii\"\n\"3667887\";\"Socorro\";\"main\"\n\"3667892\";\"Socha Viejo\";\"main\"\n\"3667892\";\"Socha\";\"other\"\n\"3667901\";\"Soatá\";\"main\"\n\"3667901\";\"Soata\";\"ascii\"\n\"3667905\";\"Soacha\";\"main\"\n\"3667905\";\"Soachu\";\"other\"\n\"3667905\";\"Соачу\";\"other\"\n\"3667918\";\"Sitionuevo\";\"main\"\n\"3667983\";\"Sincelejo\";\"main\"\n\"3667983\";\"Cincelejo\";\"other\"\n\"3667983\";\"Sinselekho\";\"other\"\n\"3667983\";\"Синселехо\";\"other\"\n\"3667991\";\"Sincé\";\"main\"\n\"3667991\";\"Since\";\"ascii\"\n\"3668012\";\"Simití\";\"main\"\n\"3668012\";\"Simiti\";\"ascii\"\n\"3668017\";\"Simijaca\";\"main\"\n\"3668023\";\"Simacota\";\"main\"\n\"3668025\";\"Silvia\";\"main\"\n\"3668028\";\"Silvania\";\"main\"\n\"3668033\";\"Silos\";\"main\"\n\"3668078\";\"Sibundoy\";\"main\"\n\"3668087\";\"Sibaté\";\"main\"\n\"3668087\";\"Sibate\";\"ascii\"\n\"3668096\";\"Siachoque\";\"main\"\n\"3668132\";\"Sevilla\";\"main\"\n\"3668138\";\"Sesquilé\";\"main\"\n\"3668138\";\"Sesquile\";\"ascii\"\n\"3668175\";\"Segovia\";\"main\"\n\"3668228\";\"Sasaima\";\"main\"\n\"3668245\";\"Sardinata\";\"main\"\n\"3668268\";\"Sapuyes\";\"main\"\n\"3668286\";\"San Zenón\";\"main\"\n\"3668286\";\"San Zenon\";\"ascii\"\n\"3668286\";\"San Cenon\";\"other\"\n\"3668286\";\"San Sebastian\";\"other\"\n\"3668292\";\"San Vicente de Chucurí\";\"main\"\n\"3668292\";\"San Vicente de Chucuri\";\"ascii\"\n\"3668292\";\"San Vicente\";\"other\"\n\"3668302\";\"San Vicente\";\"main\"\n\"3668323\";\"Santuario\";\"main\"\n\"3668324\";\"Santuario\";\"main\"\n\"3668332\";\"Santo Tomás\";\"main\"\n\"3668332\";\"Santo Tomas\";\"ascii\"\n\"3668373\";\"Santo Domingo\";\"main\"\n\"3668396\";\"Santiago\";\"main\"\n\"3668400\";\"Santiago\";\"main\"\n\"3668400\";\"El Valle\";\"other\"\n\"3668434\";\"Santa Sofía\";\"main\"\n\"3668434\";\"Santa Sofia\";\"ascii\"\n\"3668447\";\"Santa Rosa de Viterbo\";\"main\"\n\"3668447\";\"Santa Rosa\";\"other\"\n\"3668451\";\"Santa Rosa de Osos\";\"main\"\n\"3668451\";\"Santa Rosa\";\"other\"\n\"3668454\";\"Santa Rosa de Cabal\";\"main\"\n\"3668454\";\"Santa Rosa\";\"other\"\n\"3668454\";\"Santa Rosa Cabal\";\"other\"\n\"3668454\";\"Santa-Rosa-de-Kabal'\";\"other\"\n\"3668454\";\"Санта-Роса-де-Кабаль\";\"other\"\n\"3668472\";\"Santa Rosa\";\"main\"\n\"3668472\";\"El Uvero\";\"other\"\n\"3668572\";\"Santander de Quilichao\";\"main\"\n\"3668572\";\"Quilichao\";\"other\"\n\"3668572\";\"Santander\";\"other\"\n\"3668594\";\"Santana\";\"main\"\n\"3668605\";\"Santa Marta\";\"main\"\n\"3668605\";\"santa marta\";\"other\"\n\"3668605\";\"snth mrth\";\"other\"\n\"3668605\";\"Санта Марта\";\"other\"\n\"3668605\";\"סנטה מרתה\";\"other\"\n\"3668605\";\"سانتا مارتا\";\"other\"\n\"3668631\";\"Santa María\";\"main\"\n\"3668631\";\"Santa Maria\";\"ascii\"\n\"3668635\";\"Santa María\";\"main\"\n\"3668635\";\"Santa Maria\";\"ascii\"\n\"3668655\";\"Santa Lucía\";\"main\"\n\"3668655\";\"Santa Lucia\";\"ascii\"\n\"3668655\";\"Corregimiento Santa Lucia\";\"other\"\n\"3668861\";\"Santa Catalina\";\"main\"\n\"3668895\";\"Santa Bárbara\";\"main\"\n\"3668895\";\"Santa Barbara\";\"ascii\"\n\"3668937\";\"Santa Ana\";\"main\"\n\"3669011\";\"San Roque\";\"main\"\n\"3669056\";\"San Rafael\";\"main\"\n\"3669084\";\"San Pelayo\";\"main\"\n\"3669087\";\"San Pedro de Urabá\";\"main\"\n\"3669087\";\"San Pedro de Uraba\";\"ascii\"\n\"3669128\";\"San Pedro\";\"main\"\n\"3669138\";\"San Pedro\";\"main\"\n\"3669156\";\"San Pedro\";\"main\"\n\"3669173\";\"San Pablo de Borbur\";\"main\"\n\"3669173\";\"Barbur\";\"other\"\n\"3669173\";\"Borbur\";\"other\"\n\"3669188\";\"San Pablo\";\"main\"\n\"3669188\";\"Corregimiento San Pablo\";\"other\"\n\"3669214\";\"San Pablo\";\"main\"\n\"3669218\";\"San Onofre\";\"main\"\n\"3669293\";\"San Miguel\";\"main\"\n\"3669293\";\"La Dorada\";\"other\"\n\"3669293\";\"Nuevo San Miguel\";\"other\"\n\"3669293\";\"Nuevo San Miguél\";\"other\"\n\"3669293\";\"San Miguel Nuevo\";\"other\"\n\"3669310\";\"San Mateo\";\"main\"\n\"3669332\";\"San Martín\";\"main\"\n\"3669332\";\"San Martin\";\"ascii\"\n\"3669346\";\"San Marcos\";\"main\"\n\"3669352\";\"San Luis de Palenque\";\"main\"\n\"3669352\";\"Municipio de San Luis de Palenque\";\"other\"\n\"3669355\";\"San Luis de Gaceno\";\"main\"\n\"3669355\";\"Gaceno\";\"other\"\n\"3669355\";\"Gazeno\";\"other\"\n\"3669355\";\"San Luis Gaceno\";\"other\"\n\"3669358\";\"San Luis de Cubarral\";\"main\"\n\"3669358\";\"Cubarral\";\"other\"\n\"3669399\";\"San Luis\";\"main\"\n\"3669440\";\"San Lorenzo\";\"main\"\n\"3669454\";\"San Juan Nepomuceno\";\"main\"\n\"3669454\";\"San Juan\";\"other\"\n\"3669461\";\"San Juan de Urabá\";\"main\"\n\"3669461\";\"San Juan de Uraba\";\"ascii\"\n\"3669461\";\"Coco\";\"other\"\n\"3669461\";\"San Juan\";\"other\"\n\"3669469\";\"San Juan del Cesar\";\"main\"\n\"3669469\";\"San Juan de Cesar\";\"other\"\n\"3669469\";\"San Juan de César\";\"other\"\n\"3669480\";\"San Juan de Betulia\";\"main\"\n\"3669480\";\"Betulia\";\"other\"\n\"3669482\";\"San Juan de Arama\";\"main\"\n\"3669482\";\"Municipio Juan de Arama\";\"other\"\n\"3669482\";\"San Juan\";\"other\"\n\"3669545\";\"San José de Miranda\";\"main\"\n\"3669545\";\"San Jose de Miranda\";\"ascii\"\n\"3669545\";\"Miranda\";\"other\"\n\"3669549\";\"San José del Palmar\";\"main\"\n\"3669549\";\"San Jose del Palmar\";\"ascii\"\n\"3669557\";\"San José de La Montaña\";\"main\"\n\"3669557\";\"San Jose de La Montana\";\"ascii\"\n\"3669557\";\"San Jose\";\"other\"\n\"3669557\";\"San José\";\"other\"\n\"3669623\";\"San José\";\"main\"\n\"3669623\";\"San Jose\";\"ascii\"\n\"3669654\";\"San José\";\"main\"\n\"3669654\";\"San Jose\";\"ascii\"\n\"3669654\";\"Roberto Payan\";\"other\"\n\"3669654\";\"Roberto Payán\";\"other\"\n\"3669718\";\"San Jerónimo\";\"main\"\n\"3669718\";\"San Jeronimo\";\"ascii\"\n\"3669736\";\"San Jacinto\";\"main\"\n\"3669808\";\"San Gil\";\"main\"\n\"3669857\";\"San Francisco\";\"main\"\n\"3669860\";\"San Francisco\";\"main\"\n\"3669860\";\"San Fracisco\";\"other\"\n\"3669881\";\"San Francisco\";\"main\"\n\"3669895\";\"San Fernando\";\"main\"\n\"3669929\";\"San Estanislao\";\"main\"\n\"3669929\";\"Arenal\";\"other\"\n\"3669938\";\"Sandoná\";\"main\"\n\"3669938\";\"Sandona\";\"ascii\"\n\"3669947\";\"San Diego\";\"main\"\n\"3669947\";\"Corregimiento San Diego\";\"other\"\n\"3669956\";\"San Cristóbal\";\"main\"\n\"3669956\";\"San Cristobal\";\"ascii\"\n\"3669956\";\"Caserio San Cristobal\";\"other\"\n\"3669977\";\"San Cayetano\";\"main\"\n\"3669987\";\"San Carlos de Guaroa\";\"main\"\n\"3669987\";\"San Carlos de Guarda\";\"other\"\n\"3669997\";\"San Carlos\";\"main\"\n\"3669998\";\"San Carlos\";\"main\"\n\"3670000\";\"San Carlos\";\"main\"\n\"3670011\";\"San Calixto\";\"main\"\n\"3670018\";\"San Bernardo del Viento\";\"main\"\n\"3670018\";\"San Bernardo\";\"other\"\n\"3670034\";\"San Bernardo\";\"main\"\n\"3670038\";\"San Benito Abad\";\"main\"\n\"3670038\";\"San Benito Abab\";\"other\"\n\"3670038\";\"Tocasman\";\"other\"\n\"3670038\";\"Tocasmán\";\"other\"\n\"3670107\";\"San Antonio\";\"main\"\n\"3670107\";\"Caserio San Antonio\";\"other\"\n\"3670107\";\"Tenerife\";\"other\"\n\"3670162\";\"San Antonio\";\"main\"\n\"3670199\";\"San Antero\";\"main\"\n\"3670218\";\"San Andrés\";\"main\"\n\"3670218\";\"San Andres\";\"ascii\"\n\"3670224\";\"San Andrés\";\"main\"\n\"3670224\";\"San Andres\";\"ascii\"\n\"3670242\";\"San Alberto\";\"main\"\n\"3670260\";\"San Agustín\";\"main\"\n\"3670260\";\"San Agustin\";\"ascii\"\n\"3670280\";\"Sampués\";\"main\"\n\"3670280\";\"Sampues\";\"ascii\"\n\"3670293\";\"Samaniego\";\"main\"\n\"3670303\";\"Samacá\";\"main\"\n\"3670303\";\"Samaca\";\"ascii\"\n\"3670350\";\"Salgar\";\"main\"\n\"3670352\";\"Salento\";\"main\"\n\"3670357\";\"Saldaña\";\"main\"\n\"3670357\";\"Saldana\";\"ascii\"\n\"3670368\";\"Salamina\";\"main\"\n\"3670370\";\"Salamina\";\"main\"\n\"3670383\";\"Saladoblanco\";\"main\"\n\"3670419\";\"Sahagún\";\"main\"\n\"3670419\";\"Sahagun\";\"ascii\"\n\"3670431\";\"Sáchica\";\"main\"\n\"3670431\";\"Sachica\";\"ascii\"\n\"3670447\";\"Saboyá\";\"main\"\n\"3670447\";\"Saboya\";\"ascii\"\n\"3670475\";\"Sabaneta\";\"main\"\n\"3670475\";\"Sabanetas\";\"other\"\n\"3670475\";\"Сабанета\";\"other\"\n\"3670502\";\"Sabanalarga\";\"main\"\n\"3670502\";\"Sabanalargo\";\"other\"\n\"3670506\";\"Sabanalarga\";\"main\"\n\"3670513\";\"Sabanagrande\";\"main\"\n\"3670520\";\"Sabana de Torres\";\"main\"\n\"3670587\";\"Rovira\";\"main\"\n\"3670595\";\"Rosas\";\"main\"\n\"3670595\";\"Dolores\";\"other\"\n\"3670629\";\"Roncesvalles\";\"main\"\n\"3670644\";\"Roldanillo\";\"main\"\n\"3670692\";\"Rivera\";\"main\"\n\"3670692\";\"San Mateo\";\"other\"\n\"3670700\";\"Risaralda\";\"main\"\n\"3670700\";\"Risaral'da\";\"other\"\n\"3670700\";\"Rizaralda\";\"other\"\n\"3670700\";\"Рисаральда\";\"other\"\n\"3670709\";\"Río Viejo\";\"main\"\n\"3670709\";\"Rio Viejo\";\"ascii\"\n\"3670709\";\"Corregimiento Rio Viejo\";\"other\"\n\"3670718\";\"Riosucio\";\"main\"\n\"3670719\";\"Riosucio\";\"main\"\n\"3670719\";\"Ruiosucio\";\"other\"\n\"3670730\";\"Rionegro\";\"main\"\n\"3670745\";\"Ríohacha\";\"main\"\n\"3670745\";\"Riohacha\";\"ascii\"\n\"3670745\";\"Riochacha\";\"other\"\n\"3670754\";\"Riofrío\";\"main\"\n\"3670754\";\"Riofrio\";\"ascii\"\n\"3670754\";\"Huasano\";\"other\"\n\"3670754\";\"Huasanó\";\"other\"\n\"3670754\";\"Palomino\";\"other\"\n\"3670756\";\"Río de Oro\";\"main\"\n\"3670756\";\"Rio de Oro\";\"ascii\"\n\"3670764\";\"Rioblanco\";\"main\"\n\"3670812\";\"Ricaurte\";\"main\"\n\"3670812\";\"Ricaute\";\"other\"\n\"3670816\";\"Ricaurte\";\"main\"\n\"3670849\";\"Retiro\";\"main\"\n\"3670849\";\"El Retiro\";\"other\"\n\"3670855\";\"Restrepo\";\"main\"\n\"3670856\";\"Restrepo\";\"main\"\n\"3670856\";\"Conto\";\"other\"\n\"3670874\";\"Repelón\";\"main\"\n\"3670874\";\"Repelon\";\"ascii\"\n\"3670884\";\"Remolino\";\"main\"\n\"3670884\";\"Jaguey\";\"other\"\n\"3670899\";\"Remedios\";\"main\"\n\"3670910\";\"Regidor\";\"main\"\n\"3670910\";\"Corregimiento Regidor\";\"other\"\n\"3670966\";\"Ráquira\";\"main\"\n\"3670966\";\"Raquira\";\"ascii\"\n\"3671002\";\"Ramiriquí\";\"main\"\n\"3671002\";\"Ramiriqui\";\"ascii\"\n\"3671018\";\"Ragonvalia\";\"main\"\n\"3671018\";\"Rangovalia\";\"other\"\n\"3671020\";\"Apulo\";\"main\"\n\"3671020\";\"Rafael Reyes\";\"other\"\n\"3671072\";\"Quipile\";\"main\"\n\"3671091\";\"Quinchía\";\"main\"\n\"3671091\";\"Quinchia\";\"ascii\"\n\"3671091\";\"Nazaret\";\"other\"\n\"3671098\";\"Quimbaya\";\"main\"\n\"3671116\";\"Quibdó\";\"main\"\n\"3671116\";\"Quibdo\";\"ascii\"\n\"3671116\";\"Kibdo\";\"other\"\n\"3671116\";\"Кибдо\";\"other\"\n\"3671119\";\"Quetame\";\"main\"\n\"3671119\";\"Quetarre\";\"other\"\n\"3671203\";\"Purísima\";\"main\"\n\"3671203\";\"Purisima\";\"ascii\"\n\"3671208\";\"Purificación\";\"main\"\n\"3671208\";\"Purificacion\";\"ascii\"\n\"3671228\";\"Pupiales\";\"main\"\n\"3671287\";\"Puerto Wilches\";\"main\"\n\"3671308\";\"Puerto Triunfo\";\"main\"\n\"3671315\";\"Puerto Tejada\";\"main\"\n\"3671325\";\"Puerto Santander\";\"main\"\n\"3671325\";\"Santander\";\"other\"\n\"3671330\";\"Puerto Salgar\";\"main\"\n\"3671330\";\"Salgar\";\"other\"\n\"3671337\";\"Puerto Rondón\";\"main\"\n\"3671337\";\"Puerto Rondon\";\"ascii\"\n\"3671337\";\"Corregimiento Puerto Rendon\";\"other\"\n\"3671337\";\"Corregimiento Puerto Rendón\";\"other\"\n\"3671337\";\"El Padre\";\"other\"\n\"3671337\";\"Puerto Rendon\";\"other\"\n\"3671337\";\"Rondon\";\"other\"\n\"3671337\";\"Rondón\";\"other\"\n\"3671346\";\"Puerto Rico\";\"main\"\n\"3671348\";\"Puerto Rico\";\"main\"\n\"3671371\";\"Puerto Parra\";\"main\"\n\"3671387\";\"Puerto Nariño\";\"main\"\n\"3671387\";\"Puerto Narino\";\"ascii\"\n\"3671418\";\"Puerto López\";\"main\"\n\"3671418\";\"Puerto Lopez\";\"ascii\"\n\"3671424\";\"Puerto Lleras\";\"main\"\n\"3671424\";\"Puerto Chinatas\";\"other\"\n\"3671424\";\"Puerto Saiz\";\"other\"\n\"3671424\";\"Puerto Saíz\";\"other\"\n\"3671437\";\"Puerto Leguízamo\";\"main\"\n\"3671437\";\"Puerto Leguizamo\";\"ascii\"\n\"3671437\";\"Caucaya\";\"other\"\n\"3671437\";\"Caucayá\";\"other\"\n\"3671437\";\"Leguizamo\";\"other\"\n\"3671450\";\"Inírida\";\"main\"\n\"3671450\";\"Inirida\";\"ascii\"\n\"3671450\";\"Obando\";\"other\"\n\"3671450\";\"Puerto Inirida\";\"other\"\n\"3671450\";\"Puerto Inírida\";\"other\"\n\"3671470\";\"Puerto Escondido\";\"main\"\n\"3671470\";\"Puerto Escondito\";\"other\"\n\"3671497\";\"Puerto Colombia\";\"main\"\n\"3671519\";\"Puerto Carreño\";\"main\"\n\"3671519\";\"Puerto Carreno\";\"ascii\"\n\"3671531\";\"Puerto Boyacá\";\"main\"\n\"3671531\";\"Puerto Boyaca\";\"ascii\"\n\"3671540\";\"Puerto Berrío\";\"main\"\n\"3671540\";\"Puerto Berrio\";\"ascii\"\n\"3671549\";\"Puerto Asís\";\"main\"\n\"3671549\";\"Puerto Asis\";\"ascii\"\n\"3671549\";\"Puehrto-Asis\";\"other\"\n\"3671549\";\"Пуэрто-Асис\";\"other\"\n\"3671576\";\"Puerres\";\"main\"\n\"3671591\";\"Puente Nacional\";\"main\"\n\"3671615\";\"Puebloviejo\";\"main\"\n\"3671630\";\"Pueblorrico\";\"main\"\n\"3671630\";\"Pueblorico\";\"other\"\n\"3671633\";\"Pueblo Rico\";\"main\"\n\"3671633\";\"Pueblorrico\";\"other\"\n\"3671655\";\"Pueblo Nuevo\";\"main\"\n\"3671655\";\"Caserio Pueblonuevo\";\"other\"\n\"3671714\";\"Providencia\";\"main\"\n\"3671765\";\"Prado\";\"main\"\n\"3671772\";\"Pradera\";\"main\"\n\"3671848\";\"Potosí\";\"main\"\n\"3671848\";\"Potosi\";\"ascii\"\n\"3671901\";\"Pore\";\"main\"\n\"3671901\";\"Municipio Pore\";\"other\"\n\"3671916\";\"Popayán\";\"main\"\n\"3671916\";\"Popayan\";\"ascii\"\n\"3671936\";\"Ponedera\";\"main\"\n\"3671936\";\"Ponederas\";\"other\"\n\"3671936\";\"Ponedero\";\"other\"\n\"3671950\";\"Polonuevo\";\"main\"\n\"3671950\";\"Pueblonuevo\";\"other\"\n\"3671961\";\"Policarpa\";\"main\"\n\"3672068\";\"Planeta Rica\";\"main\"\n\"3672068\";\"Planeta-Riki\";\"other\"\n\"3672068\";\"Планета-Рики\";\"other\"\n\"3672077\";\"Planadas\";\"main\"\n\"3672086\";\"Pizarro\";\"main\"\n\"3672086\";\"Bajo Baudo\";\"other\"\n\"3672086\";\"Bajo Baudó\";\"other\"\n\"3672086\";\"Baudo\";\"other\"\n\"3672086\";\"Baudó\";\"other\"\n\"3672086\";\"Puerto Pizarro\";\"other\"\n\"3672087\";\"Francisco Pizarro\";\"main\"\n\"3672087\";\"Pizarro\";\"other\"\n\"3672087\";\"Salahonda\";\"other\"\n\"3672093\";\"Pivijay\";\"main\"\n\"3672110\";\"Pitalito\";\"main\"\n\"3672123\";\"Pital\";\"main\"\n\"3672176\";\"Piojó\";\"main\"\n\"3672176\";\"Piojo\";\"ascii\"\n\"3672197\";\"Pinillos\";\"main\"\n\"3672249\";\"Pijiño\";\"main\"\n\"3672249\";\"Pijino\";\"ascii\"\n\"3672249\";\"Corregimiento Pijino\";\"other\"\n\"3672249\";\"Corregimiento Pijiño\";\"other\"\n\"3672249\";\"Piginio\";\"other\"\n\"3672249\";\"Pijinio\";\"other\"\n\"3672255\";\"Pijao\";\"main\"\n\"3672290\";\"Piedras\";\"main\"\n\"3672290\";\"Pedregal\";\"other\"\n\"3672295\";\"Piedrancha\";\"main\"\n\"3672295\";\"Mallama\";\"other\"\n\"3672295\";\"Piedra Ancha\";\"other\"\n\"3672327\";\"Pié de Pató\";\"main\"\n\"3672327\";\"Pie de Pato\";\"ascii\"\n\"3672327\";\"Alto Baudo\";\"other\"\n\"3672327\";\"Alto Baudó\";\"other\"\n\"3672327\";\"Puerto Yacup\";\"other\"\n\"3672328\";\"Piedecuesta\";\"main\"\n\"3672428\";\"Pesca\";\"main\"\n\"3672486\";\"Pereira\";\"main\"\n\"3672486\";\"Cartago Viejo\";\"other\"\n\"3672486\";\"Perejra\";\"other\"\n\"3672486\";\"Перейра\";\"other\"\n\"3672512\";\"Peque\";\"main\"\n\"3672521\";\"Pensilvania\";\"main\"\n\"3672599\";\"Pelaya\";\"main\"\n\"3672599\";\"Caserio Pelaya\";\"other\"\n\"3672599\";\"Caserío Pelaya\";\"other\"\n\"3672633\";\"Pedraza\";\"main\"\n\"3672665\";\"Payán\";\"main\"\n\"3672665\";\"Payan\";\"ascii\"\n\"3672665\";\"Capital Payan\";\"other\"\n\"3672665\";\"Capital Payán\";\"other\"\n\"3672665\";\"Magui\";\"other\"\n\"3672665\";\"Magüí\";\"other\"\n\"3672665\";\"Mangui\";\"other\"\n\"3672665\";\"Mangüi\";\"other\"\n\"3672698\";\"Pauna\";\"main\"\n\"3672761\";\"Patía\";\"main\"\n\"3672761\";\"Patia\";\"ascii\"\n\"3672778\";\"Pasto\";\"main\"\n\"3672778\";\"Pastas\";\"other\"\n\"3672778\";\"San Juan de Pasto\";\"other\"\n\"3672778\";\"Пасто\";\"other\"\n\"3672813\";\"Pasca\";\"main\"\n\"3672997\";\"Pandi\";\"main\"\n\"3673045\";\"Pamplona\";\"main\"\n\"3673045\";\"Памплона\";\"other\"\n\"3673126\";\"Palocabildo\";\"main\"\n\"3673143\";\"Palmito\";\"main\"\n\"3673143\";\"Palmitos\";\"other\"\n\"3673164\";\"Palmira\";\"main\"\n\"3673220\";\"Palmar de Varela\";\"main\"\n\"3673220\";\"Palma de Varela\";\"other\"\n\"3673220\";\"Palmar\";\"other\"\n\"3673220\";\"Palmer\";\"other\"\n\"3673269\";\"Palestina\";\"main\"\n\"3673275\";\"Palestina\";\"main\"\n\"3673286\";\"Palermo\";\"main\"\n\"3673286\";\"Santa Rosalia de Guagua\";\"other\"\n\"3673286\";\"Santa Rosalía de Guagua\";\"other\"\n\"3673352\";\"Pajarito\";\"main\"\n\"3673368\";\"Paispamba\";\"main\"\n\"3673368\";\"Sotara\";\"other\"\n\"3673368\";\"Sotará\";\"other\"\n\"3673369\";\"Paipa\";\"main\"\n\"3673379\";\"Pailitas\";\"main\"\n\"3673386\";\"Paicol\";\"main\"\n\"3673397\";\"Páez\";\"main\"\n\"3673397\";\"Paez\";\"ascii\"\n\"3673398\";\"Belalcazar\";\"main\"\n\"3673398\";\"Belalcazer\";\"other\"\n\"3673398\";\"Belalcázar\";\"other\"\n\"3673398\";\"Belalcázer\";\"other\"\n\"3673398\";\"Paez\";\"other\"\n\"3673398\";\"Páez\";\"other\"\n\"3673407\";\"Padilla\";\"main\"\n\"3673413\";\"Pácora\";\"main\"\n\"3673413\";\"Pacora\";\"ascii\"\n\"3673424\";\"Pacho\";\"main\"\n\"3673455\";\"Ovejas\";\"main\"\n\"3673475\";\"Otanche\";\"main\"\n\"3673482\";\"Ospina\";\"main\"\n\"3673511\";\"Ortega\";\"main\"\n\"3673536\";\"Orocué\";\"main\"\n\"3673536\";\"Orocue\";\"ascii\"\n\"3673578\";\"Oporapa\";\"main\"\n\"3673590\";\"Onzaga\";\"main\"\n\"3673609\";\"Olaya Herrera\";\"main\"\n\"3673609\";\"Hatillo\";\"other\"\n\"3673637\";\"Oiba\";\"main\"\n\"3673662\";\"Ocaña\";\"main\"\n\"3673662\";\"Ocana\";\"ascii\"\n\"3673662\";\"Okan'ja\";\"other\"\n\"3673662\";\"Оканья\";\"other\"\n\"3673676\";\"Obando\";\"main\"\n\"3673690\";\"Nuquí\";\"main\"\n\"3673690\";\"Nuqui\";\"ascii\"\n\"3673690\";\"Nugui\";\"other\"\n\"3673690\";\"Nugul\";\"other\"\n\"3673695\";\"Nunchía\";\"main\"\n\"3673695\";\"Nunchia\";\"ascii\"\n\"3673756\";\"Nueva Granada\";\"main\"\n\"3673756\";\"Corregimiento Nueva Granada\";\"other\"\n\"3673783\";\"Nóvita\";\"main\"\n\"3673783\";\"Novita\";\"ascii\"\n\"3673783\";\"San Jeronimo\";\"other\"\n\"3673783\";\"San Jerónimo\";\"other\"\n\"3673811\";\"Norcasia\";\"main\"\n\"3673811\";\"Norcacia\";\"other\"\n\"3673826\";\"Nocaima\";\"main\"\n\"3673829\";\"Nobsa\";\"main\"\n\"3673849\";\"Nilo\";\"main\"\n\"3673887\";\"Nemocón\";\"main\"\n\"3673887\";\"Nemocon\";\"ascii\"\n\"3673899\";\"Neiva\";\"main\"\n\"3673899\";\"Nejva\";\"other\"\n\"3673899\";\"Нейва\";\"other\"\n\"3673902\";\"Neira\";\"main\"\n\"3673974\";\"Necoclí\";\"main\"\n\"3673974\";\"Necocli\";\"ascii\"\n\"3673974\";\"Nicocli\";\"other\"\n\"3673974\";\"Nicoclí\";\"other\"\n\"3673976\";\"Nechí\";\"main\"\n\"3673976\";\"Nechi\";\"ascii\"\n\"3674010\";\"Natagaima\";\"main\"\n\"3674010\";\"Matagaima\";\"other\"\n\"3674012\";\"Nátaga\";\"main\"\n\"3674012\";\"Nataga\";\"ascii\"\n\"3674012\";\"Nataja\";\"other\"\n\"3674012\";\"Nátaja\";\"other\"\n\"3674027\";\"Nariño\";\"main\"\n\"3674027\";\"Narino\";\"ascii\"\n\"3674029\";\"Nariño\";\"main\"\n\"3674029\";\"Narino\";\"ascii\"\n\"3674031\";\"Nariño\";\"main\"\n\"3674031\";\"Narino\";\"ascii\"\n\"3674121\";\"Muzo\";\"main\"\n\"3674130\";\"Mutatá\";\"main\"\n\"3674130\";\"Mutata\";\"ascii\"\n\"3674161\";\"Murindó\";\"main\"\n\"3674161\";\"Murindo\";\"ascii\"\n\"3674166\";\"Murillo\";\"main\"\n\"3674272\";\"Mountain\";\"main\"\n\"3674272\";\"La Montana\";\"other\"\n\"3674272\";\"La Montaña\";\"other\"\n\"3674272\";\"Montana\";\"other\"\n\"3674272\";\"Montaña\";\"other\"\n\"3674292\";\"Mosquera\";\"main\"\n\"3674293\";\"Mosquera\";\"main\"\n\"3674337\";\"Morroa\";\"main\"\n\"3674393\";\"Morelia\";\"main\"\n\"3674393\";\"Moralia\";\"other\"\n\"3674412\";\"Morales\";\"main\"\n\"3674412\";\"Corregimiento Morales\";\"other\"\n\"3674453\";\"Montería\";\"main\"\n\"3674453\";\"Monteria\";\"ascii\"\n\"3674453\";\"Monterija\";\"other\"\n\"3674453\";\"San Jeronimo de Buenavista\";\"other\"\n\"3674453\";\"San Jerónimo de Buenavista\";\"other\"\n\"3674453\";\"Монтерия\";\"other\"\n\"3674463\";\"Montenegro\";\"main\"\n\"3674470\";\"Montelíbano\";\"main\"\n\"3674470\";\"Montelibano\";\"ascii\"\n\"3674499\";\"Montecristo\";\"main\"\n\"3674499\";\"Corregimiento Montecristo\";\"other\"\n\"3674519\";\"Montebello\";\"main\"\n\"3674569\";\"Moñitos\";\"main\"\n\"3674569\";\"Monitos\";\"ascii\"\n\"3674569\";\"Monito\";\"other\"\n\"3674569\";\"Moñito\";\"other\"\n\"3674572\";\"Moniquirá\";\"main\"\n\"3674572\";\"Moniquira\";\"ascii\"\n\"3674576\";\"Monguí\";\"main\"\n\"3674576\";\"Mongui\";\"ascii\"\n\"3674576\";\"Mongul\";\"other\"\n\"3674580\";\"Mongua\";\"main\"\n\"3674597\";\"Mompós\";\"main\"\n\"3674597\";\"Mompos\";\"ascii\"\n\"3674603\";\"Momil\";\"main\"\n\"3674603\";\"Corregimiento Momil\";\"other\"\n\"3674618\";\"Molagavita\";\"main\"\n\"3674640\";\"Mogotes\";\"main\"\n\"3674654\";\"Mocoa\";\"main\"\n\"3674676\";\"Mitú\";\"main\"\n\"3674676\";\"Mitu\";\"ascii\"\n\"3674678\";\"Mistrató\";\"main\"\n\"3674678\";\"Mistrato\";\"ascii\"\n\"3674702\";\"Miranda\";\"main\"\n\"3674735\";\"Miraflores\";\"main\"\n\"3674740\";\"Miraflores\";\"main\"\n\"3674784\";\"Milán\";\"main\"\n\"3674784\";\"Milan\";\"ascii\"\n\"3674851\";\"Mercaderes\";\"main\"\n\"3674885\";\"Melgar\";\"main\"\n\"3674885\";\"Mel'gar\";\"other\"\n\"3674885\";\"Мельгар\";\"other\"\n\"3674931\";\"Medina\";\"main\"\n\"3674962\";\"Medellín\";\"main\"\n\"3674962\";\"Medellin\";\"ascii\"\n\"3674962\";\"Medelin\";\"other\"\n\"3674962\";\"Medeljinas\";\"other\"\n\"3674962\";\"mederin\";\"other\"\n\"3674962\";\"Меделин\";\"other\"\n\"3674962\";\"メデリン\";\"other\"\n\"3675118\";\"Matanza\";\"main\"\n\"3675191\";\"Marulanda\";\"main\"\n\"3675212\";\"Marsella\";\"main\"\n\"3675212\";\"Segovia\";\"other\"\n\"3675234\";\"Marquetalia\";\"main\"\n\"3675234\";\"Nunez\";\"other\"\n\"3675234\";\"Núñez\";\"other\"\n\"3675242\";\"Marmato\";\"main\"\n\"3675252\";\"Mariquita\";\"main\"\n\"3675255\";\"Maripí\";\"main\"\n\"3675255\";\"Maripi\";\"ascii\"\n\"3675263\";\"Marinilla\";\"main\"\n\"3675287\";\"María la Baja\";\"main\"\n\"3675287\";\"Maria la Baja\";\"ascii\"\n\"3675305\";\"Margarita\";\"main\"\n\"3675409\";\"Manzanares\";\"main\"\n\"3675432\";\"Manta\";\"main\"\n\"3675443\";\"Manizales\";\"main\"\n\"3675443\";\"Manisales\";\"other\"\n\"3675443\";\"Manisalesas\";\"other\"\n\"3675443\";\"Манисалес\";\"other\"\n\"3675452\";\"Maní\";\"main\"\n\"3675452\";\"Mani\";\"ascii\"\n\"3675504\";\"Manaure\";\"main\"\n\"3675504\";\"Manare\";\"other\"\n\"3675512\";\"Manatí\";\"main\"\n\"3675512\";\"Manati\";\"ascii\"\n\"3675595\";\"Malambo\";\"main\"\n\"3675605\";\"Málaga\";\"main\"\n\"3675605\";\"Malaga\";\"ascii\"\n\"3675637\";\"Majagual\";\"main\"\n\"3675637\";\"Majagul\";\"other\"\n\"3675657\";\"Maicao\";\"main\"\n\"3675668\";\"Mahates\";\"main\"\n\"3675668\";\"Mahales\";\"other\"\n\"3675692\";\"Magangué\";\"main\"\n\"3675692\";\"Magangue\";\"ascii\"\n\"3675692\";\"Manague\";\"other\"\n\"3675692\";\"Mangue\";\"other\"\n\"3675707\";\"Madrid\";\"main\"\n\"3675707\";\"Serrezuela\";\"other\"\n\"3675707\";\"Мадрид\";\"other\"\n\"3675757\";\"Machetá\";\"main\"\n\"3675757\";\"Macheta\";\"ascii\"\n\"3675768\";\"Maceo\";\"main\"\n\"3675826\";\"Luruaco\";\"main\"\n\"3675857\";\"Lourdes\";\"main\"\n\"3675857\";\"Concepcion\";\"other\"\n\"3675857\";\"Concepción\";\"other\"\n\"3675975\";\"Los Patios\";\"main\"\n\"3675987\";\"Los Palmitos\";\"main\"\n\"3675987\";\"Corregimiento Los Palmitos\";\"other\"\n\"3675987\";\"Palmitos\";\"other\"\n\"3676205\";\"Los Córdobas\";\"main\"\n\"3676205\";\"Los Cordobas\";\"ascii\"\n\"3676205\";\"Cordoba\";\"other\"\n\"3676205\";\"Córdoba\";\"other\"\n\"3676205\";\"Ricaurte\";\"other\"\n\"3676397\";\"Lorica\";\"main\"\n\"3676417\";\"López\";\"main\"\n\"3676417\";\"Lopez\";\"ascii\"\n\"3676477\";\"Lloró\";\"main\"\n\"3676477\";\"Lloro\";\"ascii\"\n\"3676540\";\"Linares\";\"main\"\n\"3676591\";\"Liborina\";\"main\"\n\"3676604\";\"Líbano\";\"main\"\n\"3676604\";\"Libano\";\"ascii\"\n\"3676623\";\"Leticia\";\"main\"\n\"3676623\";\"Leticija\";\"other\"\n\"3676623\";\"Letisija\";\"other\"\n\"3676623\";\"Letícia\";\"other\"\n\"3676623\";\"Léticia\";\"other\"\n\"3676623\";\"Летиция\";\"other\"\n\"3676626\";\"Lérida\";\"main\"\n\"3676626\";\"Lerida\";\"ascii\"\n\"3676644\";\"Lenguazaque\";\"main\"\n\"3676661\";\"Leiva\";\"main\"\n\"3676674\";\"Lebrija\";\"main\"\n\"3676720\";\"La Virginia\";\"main\"\n\"3676791\";\"La Victoria\";\"main\"\n\"3676791\";\"Victoria\";\"other\"\n\"3676864\";\"La Vega\";\"main\"\n\"3676864\";\"Vega\";\"other\"\n\"3676868\";\"La Vega\";\"main\"\n\"3676884\";\"La Uvita\";\"main\"\n\"3676884\";\"Ubita\";\"other\"\n\"3676912\";\"La Unión\";\"main\"\n\"3676912\";\"La Union\";\"ascii\"\n\"3676923\";\"La Unión\";\"main\"\n\"3676923\";\"La Union\";\"ascii\"\n\"3676928\";\"La Unión\";\"main\"\n\"3676928\";\"La Union\";\"ascii\"\n\"3676928\";\"La Unicion\";\"other\"\n\"3676928\";\"Lemos\";\"other\"\n\"3676934\";\"La Unión\";\"main\"\n\"3676934\";\"La Union\";\"ascii\"\n\"3677010\";\"La Tebaida\";\"main\"\n\"3677010\";\"Tebaida\";\"other\"\n\"3677457\";\"La Sierra\";\"main\"\n\"3678000\";\"La Primavera\";\"main\"\n\"3678083\";\"La Playa\";\"main\"\n\"3678097\";\"La Plata\";\"main\"\n\"3678118\";\"La Pintada\";\"main\"\n\"3678167\";\"La Peña\";\"main\"\n\"3678167\";\"La Pena\";\"ascii\"\n\"3678186\";\"La Paz\";\"main\"\n\"3678190\";\"La Paz\";\"main\"\n\"3678328\";\"Landázuri\";\"main\"\n\"3678328\";\"Landazuri\";\"ascii\"\n\"3678363\";\"La Montañita\";\"main\"\n\"3678363\";\"La Montanita\";\"ascii\"\n\"3678363\";\"Montanita\";\"other\"\n\"3678363\";\"Montañita\";\"other\"\n\"3678405\";\"La Mesa\";\"main\"\n\"3678415\";\"La Merced\";\"main\"\n\"3678575\";\"La Llanada\";\"main\"\n\"3678575\";\"Llanada\";\"other\"\n\"3678674\";\"La Jagua de Ibirico\";\"main\"\n\"3678674\";\"Jagua\";\"other\"\n\"3678674\";\"La Jagua\";\"other\"\n\"3678907\";\"La Gloria\";\"main\"\n\"3679007\";\"La Florida\";\"main\"\n\"3679007\";\"Florida\";\"other\"\n\"3679065\";\"La Estrella\";\"main\"\n\"3679065\";\"Estrella\";\"other\"\n\"3679065\";\"La-Ehstrel'ja\";\"other\"\n\"3679065\";\"Ла-Эстрелья\";\"other\"\n\"3679130\";\"La Esperanza\";\"main\"\n\"3679277\";\"La Dorada\";\"main\"\n\"3679277\";\"Dorada\";\"other\"\n\"3679277\";\"La-Dorada\";\"other\"\n\"3679277\";\"Ла-Дорада\";\"other\"\n\"3679379\";\"La Cruz\";\"main\"\n\"3679542\";\"La Celia\";\"main\"\n\"3679554\";\"La Ceja\";\"main\"\n\"3679622\";\"La Capilla\";\"main\"\n\"3679660\";\"La Calera\";\"main\"\n\"3679776\";\"La Belleza\";\"main\"\n\"3679780\";\"Labateca\";\"main\"\n\"3680090\";\"Juradó\";\"main\"\n\"3680090\";\"Jurado\";\"ascii\"\n\"3680113\";\"Junín\";\"main\"\n\"3680113\";\"Junin\";\"ascii\"\n\"3680113\";\"Chipasaque\";\"other\"\n\"3680176\";\"Juan de Acosta\";\"main\"\n\"3680317\";\"Jericó\";\"main\"\n\"3680317\";\"Jerico\";\"ascii\"\n\"3680335\";\"Jenesano\";\"main\"\n\"3680335\";\"Jenezano\";\"other\"\n\"3680335\";\"Piranguata\";\"other\"\n\"3680366\";\"Jardín\";\"main\"\n\"3680366\";\"Jardin\";\"ascii\"\n\"3680387\";\"Jamundí\";\"main\"\n\"3680387\";\"Jamundi\";\"ascii\"\n\"3680387\";\"El Rosario\";\"other\"\n\"3680387\";\"Khamundi\";\"other\"\n\"3680387\";\"Хамунди\";\"other\"\n\"3680393\";\"Jambaló\";\"main\"\n\"3680393\";\"Jambalo\";\"ascii\"\n\"3680434\";\"Ituango\";\"main\"\n\"3680450\";\"Itagüí\";\"main\"\n\"3680450\";\"Itagui\";\"ascii\"\n\"3680453\";\"Istmina\";\"main\"\n\"3680453\";\"Istmia\";\"other\"\n\"3680453\";\"Istmino\";\"other\"\n\"3680453\";\"Itsmina\";\"other\"\n\"3680491\";\"Iscuandé\";\"main\"\n\"3680491\";\"Iscuande\";\"ascii\"\n\"3680491\";\"Iscande\";\"other\"\n\"3680491\";\"Iscandé\";\"other\"\n\"3680491\";\"Santa Barbara\";\"other\"\n\"3680491\";\"Santá Barbara\";\"other\"\n\"3680531\";\"Íquira\";\"main\"\n\"3680531\";\"Iquira\";\"ascii\"\n\"3680539\";\"Ipiales\";\"main\"\n\"3680554\";\"Inzá\";\"main\"\n\"3680554\";\"Inza\";\"ascii\"\n\"3680601\";\"Imués\";\"main\"\n\"3680601\";\"Imues\";\"ascii\"\n\"3680616\";\"Iles\";\"main\"\n\"3680641\";\"Icononzo\";\"main\"\n\"3680656\";\"Ibagué\";\"main\"\n\"3680656\";\"Ibague\";\"ascii\"\n\"3680840\";\"Honda\";\"main\"\n\"3680854\";\"Hobo\";\"main\"\n\"3680854\";\"El Hobo\";\"other\"\n\"3680857\";\"Hispania\";\"main\"\n\"3680880\";\"Herveo\";\"main\"\n\"3680880\";\"Herbeo\";\"other\"\n\"3680886\";\"Herrán\";\"main\"\n\"3680886\";\"Herran\";\"ascii\"\n\"3680902\";\"Heliconia\";\"main\"\n\"3681008\";\"Municipio Hato Corozal\";\"main\"\n\"3681008\";\"Corozal\";\"other\"\n\"3681008\";\"Hato de Corozal\";\"other\"\n\"3681008\";\"Hato del Corozal\";\"other\"\n\"3681029\";\"Hatillo de Loba\";\"main\"\n\"3681029\";\"Corregimiento Hatillo de Loba\";\"other\"\n\"3681029\";\"El Hatillo de Loba\";\"other\"\n\"3681029\";\"Hatillo\";\"other\"\n\"3681168\";\"Hacarí\";\"main\"\n\"3681168\";\"Hacari\";\"ascii\"\n\"3681168\";\"La Palma\";\"other\"\n\"3681222\";\"Güicán\";\"main\"\n\"3681222\";\"Guican\";\"ascii\"\n\"3681234\";\"Güepsa\";\"main\"\n\"3681234\";\"Guepsa\";\"ascii\"\n\"3681255\";\"Guayatá\";\"main\"\n\"3681255\";\"Guayata\";\"ascii\"\n\"3681303\";\"Guayabetal\";\"main\"\n\"3681306\";\"Guayabal de Síquima\";\"main\"\n\"3681306\";\"Guayabal de Siquima\";\"ascii\"\n\"3681306\";\"Guayabal\";\"other\"\n\"3681306\";\"Guayabal Siquima\";\"other\"\n\"3681306\";\"Siquima\";\"other\"\n\"3681306\";\"Síquima\";\"other\"\n\"3681353\";\"Guática\";\"main\"\n\"3681353\";\"Guatica\";\"ascii\"\n\"3681356\";\"Guateque\";\"main\"\n\"3681360\";\"Guatavita\";\"main\"\n\"3681364\";\"Guataquí\";\"main\"\n\"3681364\";\"Guataqui\";\"ascii\"\n\"3681368\";\"Guatapé\";\"main\"\n\"3681368\";\"Guatape\";\"ascii\"\n\"3681404\";\"Guasca\";\"main\"\n\"3681429\";\"Guarne\";\"main\"\n\"3681505\";\"Guapi\";\"main\"\n\"3681563\";\"Guamo\";\"main\"\n\"3681596\";\"Guamal\";\"main\"\n\"3681605\";\"Guamal\";\"main\"\n\"3681619\";\"Gualmatán\";\"main\"\n\"3681619\";\"Gualmatan\";\"ascii\"\n\"3681644\";\"Guaitarilla\";\"main\"\n\"3681644\";\"Guaitarrilla\";\"other\"\n\"3681702\";\"Guaduas\";\"main\"\n\"3681731\";\"Guadalupe\";\"main\"\n\"3681731\";\"Planta\";\"other\"\n\"3681732\";\"Guadalupe\";\"main\"\n\"3681733\";\"Guadalupe\";\"main\"\n\"3681756\";\"Guachucal\";\"main\"\n\"3681756\";\"Guachegal\";\"other\"\n\"3681767\";\"Guachetá\";\"main\"\n\"3681767\";\"Guacheta\";\"ascii\"\n\"3681797\";\"Guacarí\";\"main\"\n\"3681797\";\"Guacari\";\"ascii\"\n\"3681797\";\"Concordia\";\"other\"\n\"3681832\";\"Guaca\";\"main\"\n\"3681952\";\"Granada\";\"main\"\n\"3681952\";\"Grenada\";\"other\"\n\"3681952\";\"Гренада\";\"other\"\n\"3681953\";\"Granada\";\"main\"\n\"3681957\";\"Granada\";\"main\"\n\"3681957\";\"Boca de Monte\";\"other\"\n\"3681957\";\"Grenada\";\"other\"\n\"3681957\";\"Гренада\";\"other\"\n\"3681966\";\"Gramalote\";\"main\"\n\"3681990\";\"González\";\"main\"\n\"3681990\";\"Gonzalez\";\"ascii\"\n\"3681990\";\"Gonzales\";\"other\"\n\"3681990\";\"Gonzáles\";\"other\"\n\"3681997\";\"Gómez Plata\";\"main\"\n\"3681997\";\"Gomez Plata\";\"ascii\"\n\"3682018\";\"Girón\";\"main\"\n\"3682018\";\"Giron\";\"ascii\"\n\"3682018\";\"Khiron\";\"other\"\n\"3682018\";\"Хирон\";\"other\"\n\"3682028\";\"Girardot\";\"main\"\n\"3682028\";\"Zhirardo\";\"other\"\n\"3682028\";\"Жирардо\";\"other\"\n\"3682030\";\"Giraldo\";\"main\"\n\"3682039\";\"Ginebra\";\"main\"\n\"3682047\";\"Gigante\";\"main\"\n\"3682068\";\"Génova\";\"main\"\n\"3682068\";\"Genova\";\"ascii\"\n\"3682070\";\"Génova\";\"main\"\n\"3682070\";\"Genova\";\"ascii\"\n\"3682070\";\"Capital Genova\";\"other\"\n\"3682070\";\"Capital Génova\";\"other\"\n\"3682070\";\"Colon\";\"other\"\n\"3682070\";\"Colón\";\"other\"\n\"3682108\";\"Garzón\";\"main\"\n\"3682108\";\"Garzon\";\"ascii\"\n\"3682160\";\"Garagoa\";\"main\"\n\"3682172\";\"Gámeza\";\"main\"\n\"3682172\";\"Gameza\";\"ascii\"\n\"3682182\";\"Gamarra\";\"main\"\n\"3682232\";\"Galeras\";\"main\"\n\"3682232\";\"Corregimiento Nueva Granada\";\"other\"\n\"3682232\";\"Nueva Granada\";\"other\"\n\"3682238\";\"Galapa\";\"main\"\n\"3682243\";\"Galán\";\"main\"\n\"3682243\";\"Galan\";\"ascii\"\n\"3682262\";\"Gachancipá\";\"main\"\n\"3682262\";\"Gachancipa\";\"ascii\"\n\"3682262\";\"Gachacipa\";\"other\"\n\"3682266\";\"Gachalá\";\"main\"\n\"3682266\";\"Gachala\";\"ascii\"\n\"3682274\";\"Fusagasuga\";\"main\"\n\"3682281\";\"Funza\";\"main\"\n\"3682283\";\"Funes\";\"main\"\n\"3682292\";\"Fundación\";\"main\"\n\"3682292\";\"Fundacion\";\"ascii\"\n\"3682299\";\"Fuente de Oro\";\"main\"\n\"3682299\";\"Municipio Fuente de Oro\";\"other\"\n\"3682299\";\"San Antonio\";\"other\"\n\"3682299\";\"San Antonio Ariari\";\"other\"\n\"3682313\";\"Frontino\";\"main\"\n\"3682330\";\"Fresno\";\"main\"\n\"3682358\";\"Fosca\";\"main\"\n\"3682361\";\"Municipio de Fortul\";\"main\"\n\"3682361\";\"Fortoul\";\"other\"\n\"3682374\";\"Fonseca\";\"main\"\n\"3682380\";\"Fómeque\";\"main\"\n\"3682380\";\"Fomeque\";\"ascii\"\n\"3682385\";\"Floridablanca\";\"main\"\n\"3682385\";\"Florida\";\"other\"\n\"3682393\";\"Florida\";\"main\"\n\"3682393\";\"La Florida\";\"other\"\n\"3682393\";\"Perodias\";\"other\"\n\"3682393\";\"Perodías\";\"other\"\n\"3682393\";\"Флорида\";\"other\"\n\"3682395\";\"Florián\";\"main\"\n\"3682395\";\"Florian\";\"ascii\"\n\"3682400\";\"Floresta\";\"main\"\n\"3682425\";\"Florencia\";\"main\"\n\"3682425\";\"Florencio\";\"other\"\n\"3682426\";\"Florencia\";\"main\"\n\"3682458\";\"Flandes\";\"main\"\n\"3682465\";\"Firavitoba\";\"main\"\n\"3682465\";\"Firavitova\";\"other\"\n\"3682473\";\"Filandia\";\"main\"\n\"3682473\";\"Finlandia\";\"other\"\n\"3682481\";\"Filadelfia\";\"main\"\n\"3682510\";\"Falan\";\"main\"\n\"3682510\";\"Santa Ana\";\"other\"\n\"3682510\";\"Santana\";\"other\"\n\"3682510\";\"Santana de Lajas\";\"other\"\n\"3682516\";\"Facatativá\";\"main\"\n\"3682516\";\"Facatativa\";\"ascii\"\n\"3682573\";\"Espinal\";\"main\"\n\"3682573\";\"Ehspinal'\";\"other\"\n\"3682573\";\"El Espinal\";\"other\"\n\"3682573\";\"Эспиналь\";\"other\"\n\"3682631\";\"Envigado\";\"main\"\n\"3682633\";\"Entrerríos\";\"main\"\n\"3682633\";\"Entrerrios\";\"ascii\"\n\"3682682\";\"El Zulia\";\"main\"\n\"3682682\";\"Villa Zulia\";\"other\"\n\"3682682\";\"Zulia\";\"other\"\n\"3682963\";\"El Tambo\";\"main\"\n\"3682963\";\"Tambo\";\"other\"\n\"3682965\";\"El Tambo\";\"main\"\n\"3682965\";\"Tambo\";\"other\"\n\"3682981\";\"El Tablón\";\"main\"\n\"3682981\";\"El Tablon\";\"ascii\"\n\"3682981\";\"Tablon\";\"other\"\n\"3683149\";\"El Rosario\";\"main\"\n\"3683149\";\"Rosario\";\"other\"\n\"3683155\";\"El Rosal\";\"main\"\n\"3683180\";\"El Roble\";\"main\"\n\"3683233\";\"El Retén\";\"main\"\n\"3683233\";\"El Reten\";\"ascii\"\n\"3683233\";\"Corregimiento El Reten\";\"other\"\n\"3683233\";\"Reten\";\"other\"\n\"3683463\";\"El Piñón\";\"main\"\n\"3683463\";\"El Pinon\";\"ascii\"\n\"3683463\";\"Pinon\";\"other\"\n\"3683463\";\"Pinón\";\"other\"\n\"3683497\";\"El Peñón\";\"main\"\n\"3683497\";\"El Penon\";\"ascii\"\n\"3683508\";\"El Peñol\";\"main\"\n\"3683508\";\"El Penol\";\"ascii\"\n\"3683508\";\"Penol\";\"other\"\n\"3683508\";\"Peñol\";\"other\"\n\"3683528\";\"El Paujil\";\"main\"\n\"3683528\";\"Pajuil\";\"other\"\n\"3683538\";\"El Paso\";\"main\"\n\"3683538\";\"Corregimiento El Paso\";\"other\"\n\"3683778\";\"El Molino\";\"main\"\n\"3683778\";\"Molino\";\"other\"\n\"3684029\";\"Elías\";\"main\"\n\"3684029\";\"Elias\";\"ascii\"\n\"3684115\";\"El Guamo\";\"main\"\n\"3684115\";\"Guamo\";\"other\"\n\"3684189\";\"El Espino\";\"main\"\n\"3684189\";\"Espino\";\"other\"\n\"3684266\";\"El Dovio\";\"main\"\n\"3684276\";\"El Doncello\";\"main\"\n\"3684452\";\"El Copey\";\"main\"\n\"3684452\";\"Copei\";\"other\"\n\"3684452\";\"Corregimiento El Copey\";\"other\"\n\"3684510\";\"El Cocuy\";\"main\"\n\"3684510\";\"Cocuy\";\"other\"\n\"3684579\";\"El Charco\";\"main\"\n\"3684579\";\"Charco\";\"other\"\n\"3684615\";\"El Cerrito\";\"main\"\n\"3684615\";\"Cerrito\";\"other\"\n\"3684662\";\"El Castillo\";\"main\"\n\"3684666\";\"El Carmen de Bolívar\";\"main\"\n\"3684666\";\"El Carmen de Bolivar\";\"ascii\"\n\"3684666\";\"Carmen\";\"other\"\n\"3684666\";\"El Carmen\";\"other\"\n\"3684666\";\"Karmen-de-Bolivar\";\"other\"\n\"3684666\";\"Кармен-де-Боливар\";\"other\"\n\"3684683\";\"El Carmen\";\"main\"\n\"3684683\";\"Carmen\";\"other\"\n\"3684689\";\"El Carmen\";\"main\"\n\"3684689\";\"Carmen\";\"other\"\n\"3684692\";\"El Carmen\";\"main\"\n\"3684692\";\"Carmen\";\"other\"\n\"3684785\";\"El Cairo\";\"main\"\n\"3684860\";\"El Bordo\";\"main\"\n\"3684860\";\"Patia\";\"other\"\n\"3684860\";\"Patía\";\"other\"\n\"3684917\";\"El Banco\";\"main\"\n\"3684917\";\"Banco\";\"other\"\n\"3684917\";\"Ehl'-Banka\";\"other\"\n\"3684917\";\"Эль-Банка\";\"other\"\n\"3684945\";\"El Bagre\";\"main\"\n\"3685027\";\"El Águila\";\"main\"\n\"3685027\";\"El Aguila\";\"ascii\"\n\"3685058\";\"Ebéjico\";\"main\"\n\"3685058\";\"Ebejico\";\"ascii\"\n\"3685069\";\"Durania\";\"main\"\n\"3685084\";\"Duitama\";\"main\"\n\"3685095\";\"Dos Quebradas\";\"main\"\n\"3685126\";\"Don Matías\";\"main\"\n\"3685126\";\"Don Matias\";\"ascii\"\n\"3685200\";\"Distracción\";\"main\"\n\"3685200\";\"Distraccion\";\"ascii\"\n\"3685223\";\"Dibulla\";\"main\"\n\"3685223\";\"Corregimiento Dibulla\";\"other\"\n\"3685292\";\"Dagua\";\"main\"\n\"3685292\";\"Papagalleros\";\"other\"\n\"3685295\";\"Dabeiba\";\"main\"\n\"3685295\";\"Dabelba\";\"other\"\n\"3685335\";\"Curumaní\";\"main\"\n\"3685335\";\"Curumani\";\"ascii\"\n\"3685335\";\"Corregimiento Curumani\";\"other\"\n\"3685335\";\"Corregimiento Curumaní\";\"other\"\n\"3685335\";\"Kurumani\";\"other\"\n\"3685335\";\"Курумани\";\"other\"\n\"3685345\";\"Curití\";\"main\"\n\"3685345\";\"Curiti\";\"ascii\"\n\"3685345\";\"Curuti\";\"other\"\n\"3685418\";\"Cunday\";\"main\"\n\"3685418\";\"Parroquia Vieja\";\"other\"\n\"3685428\";\"Cumbitara\";\"main\"\n\"3685428\";\"San Pedro\";\"other\"\n\"3685432\";\"Cumbal\";\"main\"\n\"3685442\";\"Cumaral\";\"main\"\n\"3685529\";\"Cucutilla\";\"main\"\n\"3685533\";\"Cúcuta\";\"main\"\n\"3685533\";\"Cucuta\";\"ascii\"\n\"3685533\";\"Kukuta\";\"other\"\n\"3685533\";\"San Jose de Cucuta\";\"other\"\n\"3685533\";\"San Jose de Guacimal\";\"other\"\n\"3685533\";\"San José de Cùcuta\";\"other\"\n\"3685533\";\"San José de Guacimal\";\"other\"\n\"3685533\";\"kukuta\";\"other\"\n\"3685533\";\"Кукута\";\"other\"\n\"3685533\";\"ククタ\";\"other\"\n\"3685540\";\"Cucunubá\";\"main\"\n\"3685540\";\"Cucunuba\";\"ascii\"\n\"3685569\";\"Cucaita\";\"main\"\n\"3685571\";\"Cubará\";\"main\"\n\"3685571\";\"Cubara\";\"ascii\"\n\"3685649\";\"Cruces de Anorí\";\"main\"\n\"3685649\";\"Cruces de Anori\";\"ascii\"\n\"3685649\";\"Anori\";\"other\"\n\"3685702\";\"Cravo Norte\";\"main\"\n\"3685702\";\"Corregimiento Cravo Norte\";\"other\"\n\"3685702\";\"Cravo\";\"other\"\n\"3685702\";\"Gravo\";\"other\"\n\"3685708\";\"Coyaima\";\"main\"\n\"3685724\";\"Cotorra\";\"main\"\n\"3685724\";\"Corregimiento Cotorra\";\"other\"\n\"3685733\";\"Cota\";\"main\"\n\"3685794\";\"Corrales\";\"main\"\n\"3685823\";\"Corozal\";\"main\"\n\"3685840\";\"Coromoro\";\"main\"\n\"3685871\";\"Corinto\";\"main\"\n\"3685893\";\"Córdoba\";\"main\"\n\"3685893\";\"Cordoba\";\"ascii\"\n\"3685893\";\"Cordova\";\"other\"\n\"3685893\";\"Teton\";\"other\"\n\"3685893\";\"Tetón\";\"other\"\n\"3685900\";\"Córdoba\";\"main\"\n\"3685900\";\"Cordoba\";\"ascii\"\n\"3685900\";\"Cordova\";\"other\"\n\"3685900\";\"Córdova\";\"other\"\n\"3685903\";\"Córdoba\";\"main\"\n\"3685903\";\"Cordoba\";\"ascii\"\n\"3685903\";\"Males\";\"other\"\n\"3685949\";\"Copacabana\";\"main\"\n\"3685949\";\"Kopakabana\";\"other\"\n\"3685949\";\"Копакабана\";\"other\"\n\"3685961\";\"Contratación\";\"main\"\n\"3685961\";\"Contratacion\";\"ascii\"\n\"3685974\";\"Contadero\";\"main\"\n\"3685984\";\"Consacá\";\"main\"\n\"3685984\";\"Consaca\";\"ascii\"\n\"3686002\";\"Condoto\";\"main\"\n\"3686011\";\"Concordia\";\"main\"\n\"3686011\";\"Hacienda Concordia\";\"other\"\n\"3686013\";\"Concordia\";\"main\"\n\"3686027\";\"Concepción\";\"main\"\n\"3686027\";\"Concepcion\";\"ascii\"\n\"3686028\";\"Concepción\";\"main\"\n\"3686028\";\"Concepcion\";\"ascii\"\n\"3686051\";\"Combita\";\"main\"\n\"3686065\";\"Colosó\";\"main\"\n\"3686065\";\"Coloso\";\"ascii\"\n\"3686065\";\"Ricaurte\";\"other\"\n\"3686107\";\"Colón\";\"main\"\n\"3686107\";\"Colon\";\"ascii\"\n\"3686120\";\"Colombia\";\"main\"\n\"3686134\";\"Cogua\";\"main\"\n\"3686158\";\"Cocorná\";\"main\"\n\"3686158\";\"Cocorna\";\"ascii\"\n\"3686196\";\"Clemencia\";\"main\"\n\"3686227\";\"Cisneros\";\"main\"\n\"3686233\";\"Circasia\";\"main\"\n\"3686233\";\"Circacia\";\"other\"\n\"3686255\";\"Cimitarra\";\"main\"\n\"3686262\";\"Ciénega\";\"main\"\n\"3686262\";\"Cienega\";\"ascii\"\n\"3686262\";\"Cienaga\";\"other\"\n\"3686262\";\"Ciénaga\";\"other\"\n\"3686272\";\"Ciénaga de Oro\";\"main\"\n\"3686272\";\"Cienaga de Oro\";\"ascii\"\n\"3686279\";\"Ciénaga\";\"main\"\n\"3686279\";\"Cienaga\";\"ascii\"\n\"3686279\";\"San Juan de Cienaga\";\"other\"\n\"3686279\";\"San Juan de Ciénaga\";\"other\"\n\"3686279\";\"Sienaga\";\"other\"\n\"3686279\";\"Сиенага\";\"other\"\n\"3686288\";\"Cicuco\";\"main\"\n\"3686288\";\"Caserio Sicuco\";\"other\"\n\"3686288\";\"Caserío Sicuco\";\"other\"\n\"3686422\";\"Chocontá\";\"main\"\n\"3686422\";\"Choconta\";\"ascii\"\n\"3686441\";\"Choachí\";\"main\"\n\"3686441\";\"Choachi\";\"ascii\"\n\"3686445\";\"Chivolo\";\"main\"\n\"3686445\";\"Chibolo\";\"other\"\n\"3686445\";\"Chivoto\";\"other\"\n\"3686445\";\"Corregimiento Chivolo\";\"other\"\n\"3686460\";\"Chitagá\";\"main\"\n\"3686460\";\"Chitaga\";\"ascii\"\n\"3686464\";\"Chita\";\"main\"\n\"3686471\";\"Chiscas\";\"main\"\n\"3686479\";\"Chiriguaná\";\"main\"\n\"3686479\";\"Chiriguana\";\"ascii\"\n\"3686513\";\"Chiquinquirá\";\"main\"\n\"3686513\";\"Chiquinquira\";\"ascii\"\n\"3686532\";\"Chipaque\";\"main\"\n\"3686540\";\"Chinú\";\"main\"\n\"3686540\";\"Chinu\";\"ascii\"\n\"3686561\";\"Chinchiná\";\"main\"\n\"3686561\";\"Chinchina\";\"ascii\"\n\"3686561\";\"Chinchiny\";\"other\"\n\"3686561\";\"Чинчины\";\"other\"\n\"3686569\";\"Chinavita\";\"main\"\n\"3686574\";\"Chinácota\";\"main\"\n\"3686574\";\"Chinacota\";\"ascii\"\n\"3686585\";\"Chimichagua\";\"main\"\n\"3686585\";\"Chimicragua\";\"other\"\n\"3686605\";\"Chimá\";\"main\"\n\"3686605\";\"Chima\";\"ascii\"\n\"3686636\";\"Chigorodó\";\"main\"\n\"3686636\";\"Chigorodo\";\"ascii\"\n\"3686675\";\"Chía\";\"main\"\n\"3686675\";\"Chia\";\"ascii\"\n\"3686793\";\"Chaparral\";\"main\"\n\"3686835\";\"Chalán\";\"main\"\n\"3686835\";\"Chalan\";\"ascii\"\n\"3686835\";\"Chaflan\";\"other\"\n\"3686851\";\"Chaguaní\";\"main\"\n\"3686851\";\"Chaguani\";\"ascii\"\n\"3686867\";\"Chachagüí\";\"main\"\n\"3686867\";\"Chachagui\";\"ascii\"\n\"3686883\";\"Cértegui\";\"main\"\n\"3686883\";\"Certegui\";\"ascii\"\n\"3686883\";\"Certigui\";\"other\"\n\"3686894\";\"Cerro de San Antonio\";\"main\"\n\"3686894\";\"Cerro San Antonio\";\"other\"\n\"3686894\";\"El Cerro\";\"other\"\n\"3686907\";\"Cerrito\";\"main\"\n\"3686907\";\"Villa del Rosario\";\"other\"\n\"3686918\";\"Cerinza\";\"main\"\n\"3686922\";\"Cereté\";\"main\"\n\"3686922\";\"Cerete\";\"ascii\"\n\"3687025\";\"Caucasia\";\"main\"\n\"3687025\";\"Canafistola\";\"other\"\n\"3687025\";\"Cañafístola\";\"other\"\n\"3687025\";\"Kavkaz\";\"other\"\n\"3687025\";\"Кавказ\";\"other\"\n\"3687084\";\"Castilla La Nueva\";\"main\"\n\"3687084\";\"Castilla\";\"other\"\n\"3687084\";\"Shell\";\"other\"\n\"3687213\";\"Casabianca\";\"main\"\n\"3687213\";\"Casablanca\";\"other\"\n\"3687230\";\"Cartago\";\"main\"\n\"3687231\";\"Cartago\";\"main\"\n\"3687231\";\"Kartago\";\"other\"\n\"3687231\";\"San Pedro de Cartago\";\"other\"\n\"3687231\";\"Картаго\";\"other\"\n\"3687238\";\"Cartagena\";\"main\"\n\"3687238\";\"Cartagena das Indias\";\"other\"\n\"3687238\";\"Cartagena das Índias\";\"other\"\n\"3687238\";\"Cartagena de Indias\";\"other\"\n\"3687238\";\"Cartaxena de Indias - Cartagena de Indias\";\"other\"\n\"3687238\";\"Carthagene\";\"other\"\n\"3687238\";\"Carthagène\";\"other\"\n\"3687238\";\"Kartachena\";\"other\"\n\"3687238\";\"Kartageno\";\"other\"\n\"3687238\";\"Kartakhena\";\"other\"\n\"3687238\";\"ka ta he na\";\"other\"\n\"3687238\";\"karutahena\";\"other\"\n\"3687238\";\"Картахена\";\"other\"\n\"3687238\";\"カルタヘナ\";\"other\"\n\"3687238\";\"卡塔赫纳\";\"other\"\n\"3687310\";\"Carolina\";\"main\"\n\"3687318\";\"Carmen de Viboral\";\"main\"\n\"3687318\";\"Carmen Viboral\";\"other\"\n\"3687321\";\"Carmen de Carupa\";\"main\"\n\"3687321\";\"Carupa\";\"other\"\n\"3687324\";\"Carmen de Apicalá\";\"main\"\n\"3687324\";\"Carmen de Apicala\";\"ascii\"\n\"3687324\";\"Apicala\";\"other\"\n\"3687324\";\"Carmen\";\"other\"\n\"3687324\";\"Carmen Apicala\";\"other\"\n\"3687324\";\"Carmen Apicalá\";\"other\"\n\"3687335\";\"Carlosama\";\"main\"\n\"3687335\";\"Cuaspud\";\"other\"\n\"3687426\";\"Caramanta\";\"main\"\n\"3687451\";\"Caracolí\";\"main\"\n\"3687451\";\"Caracoli\";\"ascii\"\n\"3687476\";\"Cáqueza\";\"main\"\n\"3687476\";\"Caqueza\";\"ascii\"\n\"3687490\";\"Capitanejo\";\"main\"\n\"3687505\";\"Caparrapí\";\"main\"\n\"3687505\";\"Caparrapi\";\"ascii\"\n\"3687505\";\"Caparappi\";\"other\"\n\"3687505\";\"Caparappí\";\"other\"\n\"3687541\";\"Cantagallo\";\"main\"\n\"3687541\";\"Caserio Cantagallo\";\"other\"\n\"3687541\";\"Caserío Cantagallo\";\"other\"\n\"3687634\";\"Candelaria\";\"main\"\n\"3687644\";\"Candelaria\";\"main\"\n\"3687677\";\"Cañasgordas\";\"main\"\n\"3687677\";\"Canasgordas\";\"ascii\"\n\"3687758\";\"Campo de la Cruz\";\"main\"\n\"3687758\";\"Kampo-de-la-Krus\";\"other\"\n\"3687758\";\"Puerto Real de la Cruz\";\"other\"\n\"3687758\";\"Кампо-де-ла-Крус\";\"other\"\n\"3687806\";\"Campoalegre\";\"main\"\n\"3687806\";\"Kampoalegre\";\"other\"\n\"3687806\";\"Sevilla\";\"other\"\n\"3687806\";\"Кампоалегре\";\"other\"\n\"3687835\";\"Campamento\";\"main\"\n\"3687880\";\"Caloto\";\"main\"\n\"3687925\";\"Cali\";\"main\"\n\"3687925\";\"Cáli\";\"other\"\n\"3687925\";\"Kali\";\"other\"\n\"3687925\";\"Kalis\";\"other\"\n\"3687925\";\"Santiago de Cali\";\"other\"\n\"3687925\";\"ka li\";\"other\"\n\"3687925\";\"kari\";\"other\"\n\"3687925\";\"Кали\";\"other\"\n\"3687925\";\"カリ\";\"other\"\n\"3687925\";\"卡利\";\"other\"\n\"3687933\";\"Caldono\";\"main\"\n\"3687952\";\"Caldas\";\"main\"\n\"3687952\";\"Kal'das\";\"other\"\n\"3687952\";\"Кальдас\";\"other\"\n\"3687964\";\"Calarcá\";\"main\"\n\"3687964\";\"Calarca\";\"ascii\"\n\"3687972\";\"Calamar\";\"main\"\n\"3687975\";\"Calamar\";\"main\"\n\"3688006\";\"Cajicá\";\"main\"\n\"3688006\";\"Cajica\";\"ascii\"\n\"3688009\";\"Cajibío\";\"main\"\n\"3688009\";\"Cajibio\";\"ascii\"\n\"3688021\";\"Cajamarca\";\"main\"\n\"3688021\";\"San Miguel\";\"other\"\n\"3688021\";\"San Miguel de Perdomo\";\"other\"\n\"3688030\";\"Caimito\";\"main\"\n\"3688071\";\"Caicedonia\";\"main\"\n\"3688072\";\"Caicedo\";\"main\"\n\"3688087\";\"Cácota\";\"main\"\n\"3688087\";\"Cacota\";\"ascii\"\n\"3688106\";\"Cáchira\";\"main\"\n\"3688106\";\"Cachira\";\"ascii\"\n\"3688112\";\"Cachipay\";\"main\"\n\"3688128\";\"Cáceres\";\"main\"\n\"3688128\";\"Caceres\";\"ascii\"\n\"3688151\";\"Cabuyaro\";\"main\"\n\"3688151\";\"Pueblo Cabuyaro\";\"other\"\n\"3688170\";\"Cabrera\";\"main\"\n\"3688254\";\"Bugalagrande\";\"main\"\n\"3688256\";\"Buga\";\"main\"\n\"3688256\";\"Буга\";\"other\"\n\"3688266\";\"Buesaco\";\"main\"\n\"3688266\";\"Bueysaco\";\"other\"\n\"3688357\";\"Buenos Aires\";\"main\"\n\"3688396\";\"Buenavista\";\"main\"\n\"3688396\";\"Corregimiento Buenavista\";\"other\"\n\"3688396\";\"San Zenon\";\"other\"\n\"3688396\";\"San Zenón\";\"other\"\n\"3688397\";\"Buenavista\";\"main\"\n\"3688433\";\"Buenavista\";\"main\"\n\"3688433\";\"El Tolra\";\"other\"\n\"3688433\";\"El Tolrá\";\"other\"\n\"3688451\";\"Buenaventura\";\"main\"\n\"3688451\";\"Буенавентура\";\"other\"\n\"3688452\";\"Buenaventura\";\"main\"\n\"3688465\";\"Bucaramanga\";\"main\"\n\"3688465\";\"Bukaramanga\";\"other\"\n\"3688465\";\"bukaramanga\";\"other\"\n\"3688465\";\"Букараманга\";\"other\"\n\"3688465\";\"ブカラマンガ\";\"other\"\n\"3688499\";\"Briceño\";\"main\"\n\"3688499\";\"Briceno\";\"ascii\"\n\"3688656\";\"Bolívar\";\"main\"\n\"3688656\";\"Bolivar\";\"ascii\"\n\"3688659\";\"Bolívar\";\"main\"\n\"3688659\";\"Bolivar\";\"ascii\"\n\"3688673\";\"Bojacá\";\"main\"\n\"3688673\";\"Bojaca\";\"ascii\"\n\"3688689\";\"Bogotá\";\"main\"\n\"3688689\";\"Bogota\";\"ascii\"\n\"3688689\";\"Bogoto\";\"other\"\n\"3688689\";\"Bogotà\";\"other\"\n\"3688689\";\"Mponkota\";\"other\"\n\"3688689\";\"Santa-Fe-de-Bogota\";\"other\"\n\"3688689\";\"Santafe de Bogota\";\"other\"\n\"3688689\";\"Santafe de Bogotá\";\"other\"\n\"3688689\";\"Santafé de Bogotá\";\"other\"\n\"3688689\";\"bo ge da\";\"other\"\n\"3688689\";\"bogota\";\"other\"\n\"3688689\";\"bokota\";\"other\"\n\"3688689\";\"bwghwta\";\"other\"\n\"3688689\";\"bwgwta\";\"other\"\n\"3688689\";\"bwgwth\";\"other\"\n\"3688689\";\"Μπογκοτά\";\"other\"\n\"3688689\";\"Богота\";\"other\"\n\"3688689\";\"Санта-Фе-де-Богота\";\"other\"\n\"3688689\";\"בוגוטה\";\"other\"\n\"3688689\";\"بوغوتا\";\"other\"\n\"3688689\";\"بوگوتا\";\"other\"\n\"3688689\";\"โบโกตา\";\"other\"\n\"3688689\";\"པོ་གོ་ཏ\";\"other\"\n\"3688689\";\"ቦጎታ\";\"other\"\n\"3688689\";\"ボゴタ\";\"other\"\n\"3688689\";\"波哥大\";\"other\"\n\"3688689\";\"보고타\";\"other\"\n\"3688705\";\"Bochalema\";\"main\"\n\"3688705\";\"Bochaleina\";\"other\"\n\"3688775\";\"Boavita\";\"main\"\n\"3688839\";\"Betulia\";\"main\"\n\"3688840\";\"Betulia\";\"main\"\n\"3688855\";\"Betania\";\"main\"\n\"3688875\";\"Arboleda\";\"main\"\n\"3688875\";\"Berruacos\";\"other\"\n\"3688875\";\"Berruecos\";\"other\"\n\"3688923\";\"Belmira\";\"main\"\n\"3688928\";\"Bello\";\"main\"\n\"3688928\";\"Bella\";\"other\"\n\"3688928\";\"Белла\";\"other\"\n\"3688989\";\"Belén de Umbría\";\"main\"\n\"3688989\";\"Belen de Umbria\";\"ascii\"\n\"3688989\";\"Belen\";\"other\"\n\"3688989\";\"Belén\";\"other\"\n\"3688989\";\"Mocatan\";\"other\"\n\"3688989\";\"Mocatán\";\"other\"\n\"3688991\";\"Belén de los Andaquíes\";\"main\"\n\"3688991\";\"Belen de los Andaquies\";\"ascii\"\n\"3688991\";\"Belen\";\"other\"\n\"3688991\";\"Belen del Andaqui\";\"other\"\n\"3688991\";\"Belén\";\"other\"\n\"3688991\";\"Belén del Andaqui\";\"other\"\n\"3689003\";\"Belén\";\"main\"\n\"3689003\";\"Belen\";\"ascii\"\n\"3689003\";\"Belen de Cerinza\";\"other\"\n\"3689003\";\"Belén de Cerinza\";\"other\"\n\"3689006\";\"Belén\";\"main\"\n\"3689006\";\"Belen\";\"ascii\"\n\"3689012\";\"Belalcázar\";\"main\"\n\"3689012\";\"Belalcazar\";\"ascii\"\n\"3689026\";\"Becerril\";\"main\"\n\"3689147\";\"Barranquilla\";\"main\"\n\"3689147\";\"Barankila\";\"other\"\n\"3689147\";\"Barankilija\";\"other\"\n\"3689147\";\"Barankilja\";\"other\"\n\"3689147\";\"Barrancas de San Nicolas\";\"other\"\n\"3689147\";\"Barrancas de San Nicolás\";\"other\"\n\"3689147\";\"ba lan ji ya\";\"other\"\n\"3689147\";\"barankiya\";\"other\"\n\"3689147\";\"brnqylh\";\"other\"\n\"3689147\";\"Баранкиля\";\"other\"\n\"3689147\";\"Баранкиља\";\"other\"\n\"3689147\";\"ברנקילה\";\"other\"\n\"3689147\";\"バランキヤ\";\"other\"\n\"3689147\";\"巴兰基亚\";\"other\"\n\"3689157\";\"Barranco de Loba\";\"main\"\n\"3689157\";\"Barranco\";\"other\"\n\"3689162\";\"Barrancas\";\"main\"\n\"3689167\";\"Barranca de Upía\";\"main\"\n\"3689167\";\"Barranca de Upia\";\"ascii\"\n\"3689167\";\"Barranca\";\"other\"\n\"3689167\";\"Barranca de Upta\";\"other\"\n\"3689167\";\"Cumaral\";\"other\"\n\"3689169\";\"Barrancabermeja\";\"main\"\n\"3689169\";\"Barrankabermekha\";\"other\"\n\"3689169\";\"Барранкабермеха\";\"other\"\n\"3689187\";\"Barichara\";\"main\"\n\"3689205\";\"Barbosa\";\"main\"\n\"3689205\";\"Barboza\";\"other\"\n\"3689205\";\"Барбоза\";\"other\"\n\"3689206\";\"Barbosa\";\"main\"\n\"3689206\";\"Barboza\";\"other\"\n\"3689206\";\"Барбоза\";\"other\"\n\"3689228\";\"Barbacoas\";\"main\"\n\"3689232\";\"Baraya\";\"main\"\n\"3689232\";\"Santa Maria de Nunchia\";\"other\"\n\"3689232\";\"Santa María de Nunchía\";\"other\"\n\"3689235\";\"Baranoa\";\"main\"\n\"3689291\";\"Balboa\";\"main\"\n\"3689292\";\"Balboa\";\"main\"\n\"3689325\";\"Mutis\";\"main\"\n\"3689325\";\"Bahia Solano\";\"other\"\n\"3689325\";\"Bahía Solano\";\"other\"\n\"3689325\";\"Ciudad Mutis\";\"other\"\n\"3689325\";\"Ciudad de Mutis\";\"other\"\n\"3689325\";\"Puerto Mutis\";\"other\"\n\"3689336\";\"Bagadó\";\"main\"\n\"3689336\";\"Bagado\";\"ascii\"\n\"3689381\";\"Ayapel\";\"main\"\n\"3689450\";\"Ataco\";\"main\"\n\"3689458\";\"Astrea\";\"main\"\n\"3689458\";\"Corregimiento Astrea\";\"other\"\n\"3689507\";\"Arroyohondo\";\"main\"\n\"3689507\";\"Arroyo Hondo\";\"other\"\n\"3689507\";\"Corregimiento Arroyo Hondo\";\"other\"\n\"3689551\";\"Guayabal\";\"main\"\n\"3689551\";\"Armero\";\"other\"\n\"3689559\";\"Armenia\";\"main\"\n\"3689559\";\"Armenia Mantequilla\";\"other\"\n\"3689559\";\"Armenija\";\"other\"\n\"3689559\";\"Армения\";\"other\"\n\"3689560\";\"Armenia\";\"main\"\n\"3689570\";\"Arjona\";\"main\"\n\"3689589\";\"Ariguaní\";\"main\"\n\"3689589\";\"Ariguani\";\"ascii\"\n\"3689611\";\"Argelia\";\"main\"\n\"3689613\";\"Argelia\";\"main\"\n\"3689615\";\"Argelia\";\"main\"\n\"3689653\";\"Arenal\";\"main\"\n\"3689653\";\"Corregimiento Arenal\";\"other\"\n\"3689689\";\"Arcabuco\";\"main\"\n\"3689693\";\"Arboletes\";\"main\"\n\"3689693\";\"Arboletas\";\"other\"\n\"3689697\";\"Arboledas\";\"main\"\n\"3689709\";\"Arbeláez\";\"main\"\n\"3689709\";\"Arbelaez\";\"ascii\"\n\"3689714\";\"Arauquita\";\"main\"\n\"3689718\";\"Arauca\";\"main\"\n\"3689718\";\"Arauka\";\"other\"\n\"3689718\";\"Араука\";\"other\"\n\"3689723\";\"Aratoca\";\"main\"\n\"3689740\";\"Aranzazu\";\"main\"\n\"3689759\";\"Aracataca\";\"main\"\n\"3689771\";\"Aquitania\";\"main\"\n\"3689771\";\"Guaquira\";\"other\"\n\"3689771\";\"Guáquira\";\"other\"\n\"3689771\";\"Puebloviejo\";\"other\"\n\"3689793\";\"Apía\";\"main\"\n\"3689793\";\"Apia\";\"ascii\"\n\"3689798\";\"Apartadó\";\"main\"\n\"3689798\";\"Apartado\";\"ascii\"\n\"3689802\";\"Anzoátegui\";\"main\"\n\"3689802\";\"Anzoategui\";\"ascii\"\n\"3689802\";\"Briceno\";\"other\"\n\"3689802\";\"Briceño\";\"other\"\n\"3689816\";\"Antioquia\";\"main\"\n\"3689816\";\"Santa Fe de Antioquia\";\"other\"\n\"3689831\";\"Ansermanuevo\";\"main\"\n\"3689831\";\"Ansermanueva\";\"other\"\n\"3689831\";\"Santa Ana de los Caballeros\";\"other\"\n\"3689833\";\"Anserma\";\"main\"\n\"3689841\";\"Anolaima\";\"main\"\n\"3689870\";\"Angostura\";\"main\"\n\"3689870\";\"Angosturas\";\"other\"\n\"3689877\";\"Angelópolis\";\"main\"\n\"3689877\";\"Angelopolis\";\"ascii\"\n\"3689899\";\"Los Andes\";\"main\"\n\"3689899\";\"Andes\";\"other\"\n\"3689905\";\"Andalucía\";\"main\"\n\"3689905\";\"Andalucia\";\"ascii\"\n\"3689915\";\"Ancuya\";\"main\"\n\"3689941\";\"Anapoima\";\"main\"\n\"3689979\";\"Ambalema\";\"main\"\n\"3689979\";\"Амбалема\";\"other\"\n\"3690010\";\"Amalfi\";\"main\"\n\"3690019\";\"Amagá\";\"main\"\n\"3690019\";\"Amaga\";\"ascii\"\n\"3690030\";\"Alvarado\";\"main\"\n\"3690102\";\"Altamira\";\"main\"\n\"3690102\";\"Boqueron\";\"other\"\n\"3690102\";\"Boquerón\";\"other\"\n\"3690136\";\"Almaguer\";\"main\"\n\"3690160\";\"Algeciras\";\"main\"\n\"3690160\";\"San Juanito\";\"other\"\n\"3690172\";\"Algarrobo\";\"main\"\n\"3690172\";\"Hacienda Algarrobo\";\"other\"\n\"3690226\";\"Aldana\";\"main\"\n\"3690226\";\"Dana\";\"other\"\n\"3690237\";\"Alcalá\";\"main\"\n\"3690237\";\"Alcala\";\"ascii\"\n\"3690237\";\"Acala\";\"other\"\n\"3690237\";\"Acalá\";\"other\"\n\"3690237\";\"La Balsa\";\"other\"\n\"3690237\";\"San Sebastian de la Balsa\";\"other\"\n\"3690250\";\"Albania\";\"main\"\n\"3690250\";\"Albanio\";\"other\"\n\"3690262\";\"Albania\";\"main\"\n\"3690264\";\"Albán\";\"main\"\n\"3690264\";\"Alban\";\"ascii\"\n\"3690287\";\"Aipe\";\"main\"\n\"3690316\";\"Aguazul\";\"main\"\n\"3690316\";\"Agua Azul\";\"other\"\n\"3690429\";\"Agua de Dios\";\"main\"\n\"3690431\";\"Aguadas\";\"main\"\n\"3690465\";\"Aguachica\";\"main\"\n\"3690465\";\"Aguachika\";\"other\"\n\"3690465\";\"Aquachia\";\"other\"\n\"3690465\";\"Aquachía\";\"other\"\n\"3690465\";\"Агуачика\";\"other\"\n\"3690520\";\"Agrado\";\"main\"\n\"3690520\";\"Belen Pitalito\";\"other\"\n\"3690520\";\"Belén Pitalito\";\"other\"\n\"3690549\";\"Achí\";\"main\"\n\"3690549\";\"Achi\";\"ascii\"\n\"3690552\";\"Acevedo\";\"main\"\n\"3690552\";\"Concepcion\";\"other\"\n\"3690552\";\"Concepción\";\"other\"\n\"3690572\";\"Acandí\";\"main\"\n\"3690572\";\"Acandi\";\"ascii\"\n\"3690572\";\"Acanti\";\"other\"\n\"3690577\";\"Acacías\";\"main\"\n\"3690577\";\"Acacias\";\"ascii\"\n\"3690582\";\"Abriaquí\";\"main\"\n\"3690582\";\"Abriaqui\";\"ascii\"\n\"3690584\";\"Ábrego\";\"main\"\n\"3690584\";\"Abrego\";\"ascii\"\n\"3690584\";\"La Cruz\";\"other\"\n\"3690592\";\"Abejorral\";\"main\"\n\"3732273\";\"Los Santos\";\"main\"\n\"3732964\";\"Lejanías\";\"main\"\n\"3732964\";\"Lejanias\";\"ascii\"\n\"3733434\";\"El Dorado\";\"main\"\n\"3733861\";\"Curillo\";\"main\"\n\"3733861\";\"El Curillo\";\"other\"\n\"3735680\";\"Santacruz\";\"main\"\n\"3735680\";\"Sontarruz\";\"other\"\n\"3738301\";\"El Tarra\";\"main\"\n\"3763578\";\"Mesetas\";\"main\"\n\"3766939\";\"Bellavista\";\"main\"\n\"3766939\";\"Bojaya\";\"other\"\n\"3766939\";\"Bojayá\";\"other\"\n\"3766939\";\"La Loma\";\"other\"\n\"3769623\";\"Chivor\";\"main\"\n\"3769932\";\"Monterrey\";\"main\"\n\"3769960\";\"Paratebueno\";\"main\"\n\"3769976\";\"Puerto Gaitán\";\"main\"\n\"3769976\";\"Puerto Gaitan\";\"ascii\"\n\"3769988\";\"Sabanalarga\";\"main\"\n\"3770066\";\"San Luis\";\"main\"\n\"3770718\";\"Morales\";\"main\"\n\"3770955\";\"Villa Rica\";\"main\"\n\"3775262\";\"Quípama\";\"main\"\n\"3775262\";\"Quipama\";\"ascii\"\n\"3778835\";\"La Cumbre\";\"main\"\n\"3779399\";\"Canalete\";\"main\"\n\"3780602\";\"Fredonia\";\"main\"\n\"3781883\";\"Gachetá\";\"main\"\n\"3781883\";\"Gacheta\";\"ascii\"\n\"3783663\";\"San Carlos\";\"main\"\n\"3787727\";\"San Andrés\";\"main\"\n\"3787727\";\"San Andres\";\"ascii\"\n\"3792374\";\"Buriticá\";\"main\"\n\"3792374\";\"Buritica\";\"ascii\"\n\"3792375\";\"Carepa\";\"main\"\n\"3792376\";\"Ciudad Bolívar\";\"main\"\n\"3792376\";\"Ciudad Bolivar\";\"ascii\"\n\"3792377\";\"Vegachí\";\"main\"\n\"3792377\";\"Vegachi\";\"ascii\"\n\"3792378\";\"Altos del Rosario\";\"main\"\n\"3792379\";\"Santa Rosa del Sur\";\"main\"\n\"3792380\";\"Tiquisio\";\"main\"\n\"3792382\";\"Cartagena del Chairá\";\"main\"\n\"3792382\";\"Cartagena del Chaira\";\"ascii\"\n\"3792383\";\"Agustín Codazzi\";\"main\"\n\"3792383\";\"Agustin Codazzi\";\"ascii\"\n\"3792384\";\"Manaure Balcón del Cesar\";\"main\"\n\"3792384\";\"Manaure Balcon del Cesar\";\"ascii\"\n\"3792385\";\"San Martín\";\"main\"\n\"3792385\";\"San Martin\";\"ascii\"\n\"3792386\";\"El Cantón de San Pablo\";\"main\"\n\"3792386\";\"El Canton de San Pablo\";\"ascii\"\n\"3792387\";\"El Retorno\";\"main\"\n\"3792389\";\"Isnos\";\"main\"\n\"3792392\";\"Plato\";\"main\"\n\"3792394\";\"Mapiripán\";\"main\"\n\"3792394\";\"Mapiripan\";\"ascii\"\n\"3792395\";\"Puerto Concordia\";\"main\"\n\"3792395\";\"Concordia\";\"other\"\n\"3792395\";\"La Concordia\";\"other\"\n\"3792395\";\"Puerto La Concordia\";\"other\"\n\"3792396\";\"La Tola\";\"main\"\n\"3792398\";\"Puerto Guzmán\";\"main\"\n\"3792398\";\"Puerto Guzman\";\"ascii\"\n\"3792399\";\"El Playón\";\"main\"\n\"3792399\";\"El Playon\";\"ascii\"\n\"3792404\";\"San Antonio del Tequendama\";\"main\"\n\"3792406\";\"Tibacuy\";\"main\"\n\"3792408\";\"Santa Genoveva de Docorodó\";\"main\"\n\"3792408\";\"Santa Genoveva de Docorodo\";\"ascii\"\n\"3792408\";\"Litoral del San Juan\";\"other\"\n\"3792743\";\"La Argentina\";\"main\"\n\"3827693\";\"La Macarena\";\"main\"\n\"3827723\";\"Valle del Guamuez\";\"main\"\n\"3827723\";\"La Hormiga\";\"other\"\n\"3828545\";\"San José del Guaviare\";\"main\"\n\"3828545\";\"San Jose del Guaviare\";\"ascii\"\n\"3829343\";\"Orito\";\"main\"\n\"6196086\";\"Cubará\";\"main\"\n\"6196086\";\"Cubara\";\"ascii\"\n\"3620994\";\"Zarcero\";\"main\"\n\"3621153\";\"Upala\";\"main\"\n\"3621184\";\"Turrialba\";\"main\"\n\"3621184\";\"Turialba\";\"other\"\n\"3621184\";\"Turrial'ba\";\"other\"\n\"3621184\";\"Турриальба\";\"other\"\n\"3621200\";\"Tucurrique\";\"main\"\n\"3621224\";\"Tres Ríos\";\"main\"\n\"3621224\";\"Tres Rios\";\"ascii\"\n\"3621224\";\"La Union\";\"other\"\n\"3621224\";\"La Unión\";\"other\"\n\"3621265\";\"Tobosí\";\"main\"\n\"3621265\";\"Tobosi\";\"ascii\"\n\"3621278\";\"Tilarán\";\"main\"\n\"3621278\";\"Tilaran\";\"ascii\"\n\"3621335\";\"Tejar\";\"main\"\n\"3621430\";\"Sixaola\";\"main\"\n\"3621430\";\"Sixola\";\"other\"\n\"3621440\";\"Siquirres\";\"main\"\n\"3621490\";\"Sardinal\";\"main\"\n\"3621501\";\"San Vito\";\"main\"\n\"3621501\";\"Ciudad San Vito\";\"other\"\n\"3621501\";\"San Vito de Java\";\"other\"\n\"3621505\";\"San Vicente\";\"main\"\n\"3621515\";\"Santo Domingo\";\"main\"\n\"3621520\";\"Santiago\";\"main\"\n\"3621524\";\"Santiago\";\"main\"\n\"3621524\";\"Puriscal\";\"other\"\n\"3621524\";\"Santiago de Puriscal\";\"other\"\n\"3621607\";\"Santa Cruz\";\"main\"\n\"3621630\";\"Santa Ana\";\"main\"\n\"3621644\";\"San Ramón\";\"main\"\n\"3621644\";\"San Ramon\";\"ascii\"\n\"3621655\";\"San Rafael Arriba\";\"main\"\n\"3621655\";\"San Rafael\";\"other\"\n\"3621659\";\"San Rafael Abajo\";\"main\"\n\"3621679\";\"San Rafael\";\"main\"\n\"3621683\";\"San Rafael\";\"main\"\n\"3621687\";\"San Rafael\";\"main\"\n\"3621689\";\"San Rafael\";\"main\"\n\"3621717\";\"San Pedro\";\"main\"\n\"3621717\";\"Pedro\";\"other\"\n\"3621717\";\"San Pedro de Montes de Oca\";\"other\"\n\"3621729\";\"San Pablo\";\"main\"\n\"3621753\";\"San Miguel\";\"main\"\n\"3621762\";\"San Marcos\";\"main\"\n\"3621762\";\"Marcos\";\"other\"\n\"3621762\";\"San Marcos de Dota\";\"other\"\n\"3621762\";\"San Marcos de Tarrazu\";\"other\"\n\"3621762\";\"San Marcos de Tarrazú\";\"other\"\n\"3621804\";\"San Juan de Dios\";\"main\"\n\"3621804\";\"Juan de Dios\";\"other\"\n\"3621817\";\"San Juan\";\"main\"\n\"3621819\";\"San Juan\";\"main\"\n\"3621831\";\"San Josecito\";\"main\"\n\"3621841\";\"San José\";\"main\"\n\"3621841\";\"San Jose\";\"ascii\"\n\"3621849\";\"San José\";\"main\"\n\"3621849\";\"San Jose\";\"ascii\"\n\"3621849\";\"San Chose\";\"other\"\n\"3621849\";\"San Chosė\";\"other\"\n\"3621849\";\"San-Joseo\";\"other\"\n\"3621849\";\"San-Khose\";\"other\"\n\"3621849\";\"sanhose\";\"other\"\n\"3621849\";\"sheng he xi\";\"other\"\n\"3621849\";\"sn hwsh\";\"other\"\n\"3621849\";\"Σαν Χοσέ\";\"other\"\n\"3621849\";\"Сан-Хосе\";\"other\"\n\"3621849\";\"סאן חוסה\";\"other\"\n\"3621849\";\"סן חוסה\";\"other\"\n\"3621849\";\"ซันโฮเซ\";\"other\"\n\"3621849\";\"ሳን ሆዜ\";\"other\"\n\"3621849\";\"サンホセ\";\"other\"\n\"3621849\";\"聖荷西\";\"other\"\n\"3621849\";\"산호세\";\"other\"\n\"3621889\";\"San Isidro\";\"main\"\n\"3621889\";\"Barrio Urena\";\"other\"\n\"3621889\";\"Barrio Ureña\";\"other\"\n\"3621889\";\"San Isidro Urena\";\"other\"\n\"3621889\";\"San Isidro de El General\";\"other\"\n\"3621889\";\"San Isidro del General\";\"other\"\n\"3621889\";\"Urena\";\"other\"\n\"3621889\";\"Ureña\";\"other\"\n\"3621890\";\"San Ignacio\";\"main\"\n\"3621890\";\"San Ignacia de Acosta\";\"other\"\n\"3621890\";\"San Ignacio de Acosta\";\"other\"\n\"3621911\";\"San Francisco\";\"main\"\n\"3621922\";\"San Felipe\";\"main\"\n\"3621926\";\"San Diego\";\"main\"\n\"3621967\";\"San Antonio\";\"main\"\n\"3621967\";\"San Antonio de Belen\";\"other\"\n\"3621990\";\"Sámara\";\"main\"\n\"3621990\";\"Samara\";\"ascii\"\n\"3621997\";\"Salitrillos\";\"main\"\n\"3622005\";\"Salitral\";\"main\"\n\"3622005\";\"El Salitral\";\"other\"\n\"3622022\";\"Sabanilla\";\"main\"\n\"3622022\";\"Sabanilla de Pampas\";\"other\"\n\"3622023\";\"Sabanilla\";\"main\"\n\"3622036\";\"Roxana\";\"main\"\n\"3622036\";\"Roxano\";\"other\"\n\"3622074\";\"Río Segundo\";\"main\"\n\"3622074\";\"Rio Segundo\";\"ascii\"\n\"3622190\";\"Quesada\";\"main\"\n\"3622190\";\"Ciudad Quesada\";\"other\"\n\"3622190\";\"Kesada\";\"other\"\n\"3622190\";\"Villa Quesada\";\"other\"\n\"3622190\";\"Кесада\";\"other\"\n\"3622193\";\"Quepos\";\"main\"\n\"3622217\";\"Purral\";\"main\"\n\"3622228\";\"Puntarenas\";\"main\"\n\"3622228\";\"Пунтаренас\";\"other\"\n\"3622247\";\"Puerto Limón\";\"main\"\n\"3622247\";\"Puerto Limon\";\"ascii\"\n\"3622247\";\"Ciudad de Limon\";\"other\"\n\"3622247\";\"Ciudad de Limón\";\"other\"\n\"3622247\";\"Limon\";\"other\"\n\"3622247\";\"Limón\";\"other\"\n\"3622247\";\"Provincia de Limon\";\"other\"\n\"3622247\";\"Provinsi Limon\";\"other\"\n\"3622247\";\"Provinsi Limón\";\"other\"\n\"3622247\";\"Província de Limón\";\"other\"\n\"3622247\";\"Puehrto-Limon\";\"other\"\n\"3622247\";\"Пуэрто-Лимон\";\"other\"\n\"3622323\";\"Pocosol\";\"main\"\n\"3622325\";\"Pocora\";\"main\"\n\"3622325\";\"Pacora Oeste\";\"other\"\n\"3622325\";\"Pocora Oeste\";\"other\"\n\"3622325\";\"Pocora West\";\"other\"\n\"3622382\";\"Pital\";\"main\"\n\"3622466\";\"Pejibaye\";\"main\"\n\"3622466\";\"Pejivalle\";\"other\"\n\"3622507\";\"Patarrá\";\"main\"\n\"3622507\";\"Patarra\";\"ascii\"\n\"3622537\";\"Parrita\";\"main\"\n\"3622547\";\"Paraíso\";\"main\"\n\"3622547\";\"Paraiso\";\"ascii\"\n\"3622561\";\"Paquera\";\"main\"\n\"3622602\";\"Palmichal\";\"main\"\n\"3622648\";\"Pacayas\";\"main\"\n\"3622660\";\"Orotina\";\"main\"\n\"3622663\";\"Orosí\";\"main\"\n\"3622663\";\"Orosi\";\"ascii\"\n\"3622716\";\"Nicoya\";\"main\"\n\"3622751\";\"Naranjo\";\"main\"\n\"3622765\";\"Nandayure\";\"main\"\n\"3622765\";\"Mandayure\";\"other\"\n\"3622854\";\"Miramar\";\"main\"\n\"3622881\";\"Mercedes\";\"main\"\n\"3622881\";\"Mercedes Norte\";\"other\"\n\"3622884\";\"Mercedes\";\"main\"\n\"3622895\";\"Matina\";\"main\"\n\"3622895\";\"Matino\";\"other\"\n\"3623008\";\"Los Chiles\";\"main\"\n\"3623032\";\"Llorente\";\"main\"\n\"3623076\";\"Liberia\";\"main\"\n\"3623076\";\"Liberija\";\"other\"\n\"3623076\";\"Либерия\";\"other\"\n\"3623112\";\"La Suiza\";\"main\"\n\"3623112\";\"Suiza\";\"other\"\n\"3623258\";\"La Cruz\";\"main\"\n\"3623287\";\"La Asunción\";\"main\"\n\"3623287\";\"La Asuncion\";\"ascii\"\n\"3623287\";\"Asuncion\";\"other\"\n\"3623307\";\"Juntas\";\"main\"\n\"3623307\";\"Las Juntas\";\"other\"\n\"3623369\";\"Jacó\";\"main\"\n\"3623369\";\"Jaco\";\"ascii\"\n\"3623394\";\"Ipís\";\"main\"\n\"3623394\";\"Ipis\";\"ascii\"\n\"3623454\";\"Hojancha\";\"main\"\n\"3623454\";\"Hoja Ancha\";\"other\"\n\"3623486\";\"Heredia\";\"main\"\n\"3623486\";\"Ciudad de Heredia\";\"other\"\n\"3623486\";\"Ehredia\";\"other\"\n\"3623486\";\"Heridia\";\"other\"\n\"3623486\";\"Эредиа\";\"other\"\n\"3623580\";\"Guápiles\";\"main\"\n\"3623580\";\"Guapiles\";\"ascii\"\n\"3623593\";\"Guadalupe\";\"main\"\n\"3623593\";\"Guadelupe\";\"other\"\n\"3623593\";\"Gvadalupe\";\"other\"\n\"3623593\";\"San Francisco Guadaloupe\";\"other\"\n\"3623593\";\"Гвадалупе\";\"other\"\n\"3623601\";\"Guácimo\";\"main\"\n\"3623601\";\"Guacimo\";\"ascii\"\n\"3623643\";\"Granadilla\";\"main\"\n\"3623656\";\"Golfito\";\"main\"\n\"3623656\";\"Golfita\";\"other\"\n\"3623656\";\"Puerto Golfito\";\"other\"\n\"3623715\";\"Fortuna\";\"main\"\n\"3623716\";\"Fortuna\";\"main\"\n\"3623716\";\"El Burio\";\"other\"\n\"3623716\";\"El Burío\";\"other\"\n\"3623716\";\"La Fortuna\";\"other\"\n\"3623755\";\"Esquipulas\";\"main\"\n\"3623781\";\"Esparza\";\"main\"\n\"3623781\";\"Esparta\";\"other\"\n\"3623787\";\"Escazú\";\"main\"\n\"3623787\";\"Escazu\";\"ascii\"\n\"3623787\";\"Escasu\";\"other\"\n\"3623935\";\"Desamparados\";\"main\"\n\"3623961\";\"Daniel Flores\";\"main\"\n\"3623977\";\"Curridabat\";\"main\"\n\"3624057\";\"Cot\";\"main\"\n\"3624066\";\"Corredor\";\"main\"\n\"3624142\";\"Concepción\";\"main\"\n\"3624142\";\"Concepcion\";\"ascii\"\n\"3624171\";\"Colón\";\"main\"\n\"3624171\";\"Colon\";\"ascii\"\n\"3624171\";\"Centro Colon\";\"other\"\n\"3624171\";\"Centro Colón\";\"other\"\n\"3624171\";\"Villa Colon\";\"other\"\n\"3624171\";\"Villa Colón\";\"other\"\n\"3624174\";\"Colima\";\"main\"\n\"3624174\";\"La Estacion\";\"other\"\n\"3624174\";\"La Estación\";\"other\"\n\"3624198\";\"Ciudad Cortés\";\"main\"\n\"3624198\";\"Ciudad Cortes\";\"ascii\"\n\"3624198\";\"El Pozo\";\"other\"\n\"3624198\";\"Pozo\";\"other\"\n\"3624198\";\"Puerto Cortes\";\"other\"\n\"3624198\";\"Puerto Cortés\";\"other\"\n\"3624288\";\"Chacarita\";\"main\"\n\"3624370\";\"Cartago\";\"main\"\n\"3624370\";\"Kartagas\";\"other\"\n\"3624370\";\"Kartago\";\"other\"\n\"3624370\";\"Картаго\";\"other\"\n\"3624379\";\"Carrillos\";\"main\"\n\"3624436\";\"Canoas\";\"main\"\n\"3624468\";\"Cañas\";\"main\"\n\"3624468\";\"Canas\";\"ascii\"\n\"3624468\";\"Ciudad Canas\";\"other\"\n\"3624468\";\"Ciudad Cañas\";\"other\"\n\"3624468\";\"Kanash\";\"other\"\n\"3624468\";\"Las Canas\";\"other\"\n\"3624468\";\"Las Cañas\";\"other\"\n\"3624468\";\"Канаш\";\"other\"\n\"3624509\";\"Calle Blancos\";\"main\"\n\"3624509\";\"Blancos\";\"other\"\n\"3624593\";\"Buenos Aires\";\"main\"\n\"3624702\";\"Bijagua\";\"main\"\n\"3624718\";\"Belén\";\"main\"\n\"3624718\";\"Belen\";\"ascii\"\n\"3624730\";\"Batán\";\"main\"\n\"3624730\";\"Batan\";\"ascii\"\n\"3624730\";\"Bataan\";\"other\"\n\"3624730\";\"Bataán\";\"other\"\n\"3624822\";\"Bagaces\";\"main\"\n\"3624842\";\"Atenas\";\"main\"\n\"3624848\";\"Aserrí\";\"main\"\n\"3624848\";\"Aserri\";\"ascii\"\n\"3624848\";\"Aseri\";\"other\"\n\"3624908\";\"Ángeles\";\"main\"\n\"3624908\";\"Angeles\";\"ascii\"\n\"3624951\";\"Alajuelita\";\"main\"\n\"3624955\";\"Alajuela\";\"main\"\n\"3624955\";\"Alakhuehla\";\"other\"\n\"3624955\";\"Алахуэла\";\"other\"\n\"6612154\";\"San Vicente de Moravia\";\"main\"\n\"3533556\";\"Zaza del Medio\";\"main\"\n\"3533556\";\"Zaza\";\"other\"\n\"3533753\";\"Yara\";\"main\"\n\"3533753\";\"Poblado Yara\";\"other\"\n\"3533826\";\"Yaguajay\";\"main\"\n\"3534094\";\"Viñales\";\"main\"\n\"3534094\";\"Vinales\";\"ascii\"\n\"3534094\";\"Vin'jales\";\"other\"\n\"3534094\";\"Виньялес\";\"other\"\n\"3534363\";\"Vertientes\";\"main\"\n\"3534432\";\"Venezuela\";\"main\"\n\"3534432\";\"Stewart\";\"other\"\n\"3534632\";\"Varadero\";\"main\"\n\"3534632\";\"La Varadero\";\"other\"\n\"3534632\";\"Veradero\";\"other\"\n\"3534632\";\"Варадеро\";\"other\"\n\"3534761\";\"Unión de Reyes\";\"main\"\n\"3534761\";\"Union de Reyes\";\"ascii\"\n\"3534761\";\"Union Reyes\";\"other\"\n\"3534915\";\"Trinidad\";\"main\"\n\"3534915\";\"Тринидад\";\"other\"\n\"3536259\";\"Sibanicú\";\"main\"\n\"3536259\";\"Sibanicu\";\"ascii\"\n\"3536259\";\"Poblado Sibanicu\";\"other\"\n\"3536640\";\"Santo Domingo\";\"main\"\n\"3536724\";\"Santiago de las Vegas\";\"main\"\n\"3536724\";\"Sant'jago-de-las-Vegas\";\"other\"\n\"3536724\";\"Сантьяго-де-лас-Вегас\";\"other\"\n\"3536729\";\"Santiago de Cuba\";\"main\"\n\"3536729\";\"Sant'jago-de-Kuba\";\"other\"\n\"3536729\";\"Santiago\";\"other\"\n\"3536729\";\"Santiago de Kubo\";\"other\"\n\"3536729\";\"Santiago di Cuba\";\"other\"\n\"3536729\";\"Santjago de Kuba\";\"other\"\n\"3536729\";\"Сантьяго-де-Куба\";\"other\"\n\"3536729\";\"Сантяго де Куба\";\"other\"\n\"3536729\";\"סנטיאגו דה קובה\";\"other\"\n\"3536729\";\"サンティアーゴ・デ・クーバ\";\"other\"\n\"3537840\";\"Santa Cruz del Sur\";\"main\"\n\"3537845\";\"Santa Cruz del Norte\";\"main\"\n\"3537906\";\"Santa Clara\";\"main\"\n\"3537906\";\"Santa Klara\";\"other\"\n\"3537906\";\"Σάντα Κλάρα\";\"other\"\n\"3537906\";\"Санта Клара\";\"other\"\n\"3537906\";\"サンタ・クララ\";\"other\"\n\"3538758\";\"San Nicolás\";\"main\"\n\"3538758\";\"San Nicolas\";\"ascii\"\n\"3538758\";\"San Nicolas de Bari\";\"other\"\n\"3538758\";\"San Nicolás de Bari\";\"other\"\n\"3539092\";\"San Luis\";\"main\"\n\"3539093\";\"San Luis\";\"main\"\n\"3539560\";\"San José de las Lajas\";\"main\"\n\"3539560\";\"San Jose de las Lajas\";\"ascii\"\n\"3540618\";\"San Diego de los Baños\";\"main\"\n\"3540618\";\"San Diego de los Banos\";\"ascii\"\n\"3540618\";\"Banos San Diego\";\"other\"\n\"3540618\";\"Baños San Diego\";\"other\"\n\"3540667\";\"Sancti Spíritus\";\"main\"\n\"3540667\";\"Sancti Spiritus\";\"ascii\"\n\"3540667\";\"Sankti-Spiritus\";\"other\"\n\"3540667\";\"Санкти-Спиритус\";\"other\"\n\"3540680\";\"San Cristóbal\";\"main\"\n\"3540680\";\"San Cristobal\";\"ascii\"\n\"3540885\";\"San Antonio de los Baños\";\"main\"\n\"3540885\";\"San Antonio de los Banos\";\"ascii\"\n\"3541440\";\"Sagua la Grande\";\"main\"\n\"3541440\";\"Sagua\";\"other\"\n\"3541446\";\"Sagua de Tánamo\";\"main\"\n\"3541446\";\"Sagua de Tanamo\";\"ascii\"\n\"3541446\";\"Sagua de Temamo\";\"other\"\n\"3541999\";\"Rodas\";\"main\"\n\"3541999\";\"Robas\";\"other\"\n\"3542137\";\"Río Guayabal de Yateras\";\"main\"\n\"3542137\";\"Rio Guayabal de Yateras\";\"ascii\"\n\"3542167\";\"Río Cauto\";\"main\"\n\"3542167\";\"Rio Cauto\";\"ascii\"\n\"3542455\";\"Remedios\";\"main\"\n\"3542455\";\"San Juan de los Remedios\";\"other\"\n\"3542455\";\"Ремедиос\";\"other\"\n\"3542744\";\"Ranchuelo\";\"main\"\n\"3542753\";\"Rancho Veloz\";\"main\"\n\"3542965\";\"Quivicán\";\"main\"\n\"3542965\";\"Quivican\";\"ascii\"\n\"3542965\";\"Kivikan\";\"other\"\n\"3542965\";\"Кивикан\";\"other\"\n\"3543077\";\"Quemado de Güines\";\"main\"\n\"3543077\";\"Quemado de Guines\";\"ascii\"\n\"3543299\";\"Puerto Padre\";\"main\"\n\"3543299\";\"Puehrto-Padre\";\"other\"\n\"3543299\";\"Пуэрто-Падре\";\"other\"\n\"3543498\";\"Primero de Enero\";\"main\"\n\"3543498\";\"Violeta\";\"other\"\n\"3543961\";\"Placetas\";\"main\"\n\"3544091\";\"Pinar del Río\";\"main\"\n\"3544091\";\"Pinar del Rio\";\"ascii\"\n\"3544091\";\"Pinar del Rioko probintzia\";\"other\"\n\"3544091\";\"Pinar-del'-Rio\";\"other\"\n\"3544091\";\"Пинар дел Рио\";\"other\"\n\"3544091\";\"Пинар-дель-Рио\";\"other\"\n\"3544393\";\"Perico\";\"main\"\n\"3544607\";\"Pedro Betancourt\";\"main\"\n\"3544607\";\"Corral Falso\";\"other\"\n\"3545040\";\"Palmira\";\"main\"\n\"3545064\";\"Palma Soriano\";\"main\"\n\"3545841\";\"Nuevitas\";\"main\"\n\"3545867\";\"Nueva Gerona\";\"main\"\n\"3545867\";\"Nuehva-Kherona\";\"other\"\n\"3545867\";\"Нуэва-Херона\";\"other\"\n\"3545981\";\"Niquero\";\"main\"\n\"3545981\";\"Niguero\";\"other\"\n\"3546434\";\"Morón\";\"main\"\n\"3546434\";\"Moron\";\"ascii\"\n\"3546434\";\"Морон\";\"other\"\n\"3546791\";\"Moa\";\"main\"\n\"3546791\";\"Minas de Hierro Moa\";\"other\"\n\"3546791\";\"Puerto Cayo Moa\";\"other\"\n\"3546791\";\"Моа\";\"other\"\n\"3546894\";\"Minas\";\"main\"\n\"3546894\";\"Poblado Minas\";\"other\"\n\"3546894\";\"Минас\";\"other\"\n\"3547181\";\"Melena del Sur\";\"main\"\n\"3547260\";\"Media Luna\";\"main\"\n\"3547398\";\"Matanzas\";\"main\"\n\"3547398\";\"Матанзас\";\"other\"\n\"3547519\";\"Martí\";\"main\"\n\"3547519\";\"Marti\";\"ascii\"\n\"3547519\";\"Hato Nuevo\";\"other\"\n\"3547600\";\"Mariel\";\"main\"\n\"3547867\";\"Manzanillo\";\"main\"\n\"3547867\";\"Mansanil'o\";\"other\"\n\"3547867\";\"Мансанильо\";\"other\"\n\"3547930\";\"Mantua\";\"main\"\n\"3547976\";\"Manicaragua\";\"main\"\n\"3547976\";\"Poblado Manicaragua\";\"other\"\n\"3548000\";\"Manguito\";\"main\"\n\"3548099\";\"Manatí\";\"main\"\n\"3548099\";\"Manati\";\"ascii\"\n\"3548529\";\"Madruga\";\"main\"\n\"3548993\";\"Los Palacios\";\"main\"\n\"3549463\";\"Los Arabos\";\"main\"\n\"3550598\";\"Las Tunas\";\"main\"\n\"3550598\";\"Las-Tunas\";\"other\"\n\"3550598\";\"Tunas\";\"other\"\n\"3550598\";\"Victoria\";\"other\"\n\"3550598\";\"Victoria de las Tunas\";\"other\"\n\"3550598\";\"Лас-Тунас\";\"other\"\n\"3551608\";\"La Salud\";\"main\"\n\"3551608\";\"La Saljud\";\"other\"\n\"3551608\";\"Salud\";\"other\"\n\"3551608\";\"Ла Салюд\";\"other\"\n\"3553478\";\"Havana\";\"main\"\n\"3553478\";\"A Habana - La Habana\";\"other\"\n\"3553478\";\"Abana\";\"other\"\n\"3553478\";\"Gavana\";\"other\"\n\"3553478\";\"Habana\";\"other\"\n\"3553478\";\"Havanna\";\"other\"\n\"3553478\";\"Havano\";\"other\"\n\"3553478\";\"Hawana\";\"other\"\n\"3553478\";\"Khavana\";\"other\"\n\"3553478\";\"L'Avana\";\"other\"\n\"3553478\";\"L'Havana\";\"other\"\n\"3553478\";\"La Habana\";\"other\"\n\"3553478\";\"La Havane\";\"other\"\n\"3553478\";\"abana\";\"other\"\n\"3553478\";\"ha wa na\";\"other\"\n\"3553478\";\"habana\";\"other\"\n\"3553478\";\"hafana\";\"other\"\n\"3553478\";\"havana\";\"other\"\n\"3553478\";\"hawana\";\"other\"\n\"3553478\";\"Αβάνα\";\"other\"\n\"3553478\";\"Гавана\";\"other\"\n\"3553478\";\"Хавана\";\"other\"\n\"3553478\";\"הוואנה\";\"other\"\n\"3553478\";\"هافانا\";\"other\"\n\"3553478\";\"هاوانا\";\"other\"\n\"3553478\";\"ཧ་ཝན\";\"other\"\n\"3553478\";\"ჰავანა\";\"other\"\n\"3553478\";\"ሀቫና\";\"other\"\n\"3553478\";\"ሀኖይ\";\"other\"\n\"3553478\";\"ハバナ\";\"other\"\n\"3553478\";\"哈瓦那\";\"other\"\n\"3553478\";\"아바나\";\"other\"\n\"3555907\";\"Jovellanos\";\"main\"\n\"3555907\";\"Bemba\";\"other\"\n\"3555907\";\"Jovallanos\";\"other\"\n\"3556077\";\"Jobabo\";\"main\"\n\"3556077\";\"Jaboba\";\"other\"\n\"3556168\";\"Jiguaní\";\"main\"\n\"3556168\";\"Jiguani\";\"ascii\"\n\"3556334\";\"Jatibonico\";\"main\"\n\"3556351\";\"Jaruco\";\"main\"\n\"3556406\";\"Jamaica\";\"main\"\n\"3556437\";\"Jagüey Grande\";\"main\"\n\"3556437\";\"Jaguey Grande\";\"ascii\"\n\"3556969\";\"Holguín\";\"main\"\n\"3556969\";\"Holguin\";\"ascii\"\n\"3556969\";\"Holquin\";\"other\"\n\"3556969\";\"Ol'gin\";\"other\"\n\"3556969\";\"hwlgyn\";\"other\"\n\"3556969\";\"orugin\";\"other\"\n\"3556969\";\"Ольгин\";\"other\"\n\"3556969\";\"הולגין\";\"other\"\n\"3556969\";\"オルギン\";\"other\"\n\"3557332\";\"Guisa\";\"main\"\n\"3557332\";\"Poblado Guisa\";\"other\"\n\"3557347\";\"Güira de Melena\";\"main\"\n\"3557347\";\"Guira de Melena\";\"ascii\"\n\"3557347\";\"Gueira de Melena\";\"other\"\n\"3557378\";\"Güines\";\"main\"\n\"3557378\";\"Gueines\";\"ascii\"\n\"3557378\";\"Guines\";\"other\"\n\"3557378\";\"Гуинес\";\"other\"\n\"3557678\";\"Guara\";\"main\"\n\"3557689\";\"Guantánamo\";\"main\"\n\"3557689\";\"Guantanamo\";\"ascii\"\n\"3557689\";\"Guantanama\";\"other\"\n\"3557689\";\"Guatanamo\";\"other\"\n\"3557689\";\"guantanamo\";\"other\"\n\"3557689\";\"Гуантанама\";\"other\"\n\"3557689\";\"Гуантанамо\";\"other\"\n\"3557689\";\"גואנטנמו\";\"other\"\n\"3557689\";\"グアンタナモ\";\"other\"\n\"3557758\";\"Guane\";\"main\"\n\"3557801\";\"Guanajay\";\"main\"\n\"3557923\";\"Guáimaro\";\"main\"\n\"3557923\";\"Guaimaro\";\"ascii\"\n\"3557923\";\"Guasimaro\";\"other\"\n\"3557923\";\"Guaymaro\";\"other\"\n\"3558032\";\"Mañalich\";\"main\"\n\"3558032\";\"Manalich\";\"ascii\"\n\"3558315\";\"Gibara\";\"main\"\n\"3558744\";\"Fomento\";\"main\"\n\"3558771\";\"Florida\";\"main\"\n\"3558771\";\"La Florida\";\"other\"\n\"3558771\";\"Флорида\";\"other\"\n\"3559235\";\"Esperanza\";\"main\"\n\"3559235\";\"La Esperanza\";\"other\"\n\"3559318\";\"Esmeralda\";\"main\"\n\"3559318\";\"Ehsmeral'da\";\"other\"\n\"3559318\";\"La Esmeralda\";\"other\"\n\"3559318\";\"Эсмеральда\";\"other\"\n\"3559416\";\"Encrucijada\";\"main\"\n\"3561408\";\"El Cobre\";\"main\"\n\"3561408\";\"Cobre\";\"other\"\n\"3561408\";\"Santiago del Prado\";\"other\"\n\"3561667\";\"El Caney\";\"main\"\n\"3562827\";\"Cumanayagua\";\"main\"\n\"3562895\";\"Cueto\";\"main\"\n\"3563145\";\"Cruces\";\"main\"\n\"3563145\";\"Crues\";\"other\"\n\"3563145\";\"Kruses\";\"other\"\n\"3563145\";\"Las Cruces\";\"other\"\n\"3563145\";\"Крусес\";\"other\"\n\"3563317\";\"Corralillo\";\"main\"\n\"3563317\";\"Coralillo\";\"other\"\n\"3563504\";\"Contramaestre\";\"main\"\n\"3563559\";\"Consolación del Sur\";\"main\"\n\"3563559\";\"Consolacion del Sur\";\"ascii\"\n\"3563559\";\"Consolacion\";\"other\"\n\"3563559\";\"Consolación\";\"other\"\n\"3563609\";\"Condado\";\"main\"\n\"3563609\";\"General Machado\";\"other\"\n\"3563609\";\"Kondado\";\"other\"\n\"3563609\";\"Кондадо\";\"other\"\n\"3563843\";\"Colón\";\"main\"\n\"3563843\";\"Colon\";\"ascii\"\n\"3563856\";\"Colombia\";\"main\"\n\"3564114\";\"Cifuentes\";\"main\"\n\"3564124\";\"Cienfuegos\";\"main\"\n\"3564124\";\"S'enfuehgos\";\"other\"\n\"3564124\";\"shienfuegosu\";\"other\"\n\"3564124\";\"Сьенфуэгос\";\"other\"\n\"3564124\";\"シエンフエーゴス\";\"other\"\n\"3564178\";\"Ciego de Ávila\";\"main\"\n\"3564178\";\"Ciego de Avila\";\"ascii\"\n\"3564394\";\"Chambas\";\"main\"\n\"3565432\";\"Cárdenas\";\"main\"\n\"3565432\";\"Cardenas\";\"ascii\"\n\"3565432\";\"Kardenas\";\"other\"\n\"3565432\";\"Карденас\";\"other\"\n\"3565768\";\"Candelaria\";\"main\"\n\"3565951\";\"Campechuela\";\"main\"\n\"3566054\";\"Camajuaní\";\"main\"\n\"3566054\";\"Camajuani\";\"ascii\"\n\"3566067\";\"Camagüey\";\"main\"\n\"3566067\";\"Camaguey\";\"ascii\"\n\"3566067\";\"Camagueey\";\"other\"\n\"3566067\";\"Kamaguehj\";\"other\"\n\"3566067\";\"Kamaguej\";\"other\"\n\"3566067\";\"Puerto Principe\";\"other\"\n\"3566067\";\"kamaguei\";\"other\"\n\"3566067\";\"Камагуей\";\"other\"\n\"3566067\";\"Камагуэй\";\"other\"\n\"3566067\";\"קמאגואיי\";\"other\"\n\"3566067\";\"カマグエイ\";\"other\"\n\"3566134\";\"Calimete\";\"main\"\n\"3566134\";\"Poblado Calimete\";\"other\"\n\"3566235\";\"Calabazar de Sagua\";\"main\"\n\"3566235\";\"Calabazar\";\"other\"\n\"3566356\";\"Caibarién\";\"main\"\n\"3566356\";\"Caibarien\";\"ascii\"\n\"3566356\";\"Caibairien\";\"other\"\n\"3566573\";\"Cabañas\";\"main\"\n\"3566573\";\"Cabanas\";\"ascii\"\n\"3566603\";\"Cabaiguán\";\"main\"\n\"3566603\";\"Cabaiguan\";\"ascii\"\n\"3566603\";\"Poblado Cabaiguan\";\"other\"\n\"3567082\";\"Bolondrón\";\"main\"\n\"3567082\";\"Bolondron\";\"ascii\"\n\"3567546\";\"Bejucal\";\"main\"\n\"3567546\";\"Bejucall\";\"other\"\n\"3567597\";\"Bayamo\";\"main\"\n\"3567597\";\"Bajamo\";\"other\"\n\"3567597\";\"Баямо\";\"other\"\n\"3567612\";\"Bauta\";\"main\"\n\"3567612\";\"Hoyo Colorado\";\"other\"\n\"3567655\";\"Batabanó\";\"main\"\n\"3567655\";\"Batabano\";\"ascii\"\n\"3567823\";\"Baraguá\";\"main\"\n\"3567823\";\"Baragua\";\"ascii\"\n\"3567834\";\"Baracoa\";\"main\"\n\"3567834\";\"Barakoa\";\"other\"\n\"3567834\";\"Баракоа\";\"other\"\n\"3567869\";\"Banes\";\"main\"\n\"3567995\";\"Bahía Honda\";\"main\"\n\"3567995\";\"Bahia Honda\";\"ascii\"\n\"3568312\";\"Artemisa\";\"main\"\n\"3568312\";\"Артемиса\";\"other\"\n\"3569136\";\"Alquízar\";\"main\"\n\"3569136\";\"Alquizar\";\"ascii\"\n\"3569370\";\"Alamar\";\"main\"\n\"3569370\";\"Nueva Villa Real\";\"other\"\n\"3569370\";\"Аламар\";\"other\"\n\"3569379\";\"Alacranes\";\"main\"\n\"3569379\";\"Alcranes\";\"other\"\n\"3569379\";\"Alfonso XII\";\"other\"\n\"3569546\";\"Aguada de Pasajeros\";\"main\"\n\"3569546\";\"Aguada\";\"other\"\n\"3569741\";\"Abreus\";\"main\"\n\"3569741\";\"Abreu\";\"other\"\n\"3746938\";\"Báguanos\";\"main\"\n\"3746938\";\"Baguanos\";\"ascii\"\n\"3374117\";\"Vila Nova Sintra\";\"main\"\n\"3374117\";\"Vila Nova Cinteus\";\"other\"\n\"3374117\";\"Vila de Nova Cintra\";\"other\"\n\"3374117\";\"Vila de Nova Sintra\";\"other\"\n\"3374120\";\"Vila do Maio\";\"main\"\n\"3374120\";\"Maio\";\"other\"\n\"3374120\";\"Nossa Senhora da Luz\";\"other\"\n\"3374120\";\"Port Ingles\";\"other\"\n\"3374120\";\"Porto Inglez\";\"other\"\n\"3374121\";\"Vila da Ribeira Brava\";\"main\"\n\"3374121\";\"Ribeira Brava\";\"other\"\n\"3374166\";\"Tarrafal\";\"main\"\n\"3374166\";\"Vila do Tarrafal\";\"other\"\n\"3374210\";\"São Filipe\";\"main\"\n\"3374210\";\"Sao Filipe\";\"ascii\"\n\"3374210\";\"Vila Sao Filipe\";\"other\"\n\"3374210\";\"Vila São Filipe\";\"other\"\n\"3374210\";\"Vila de Sao Filippe\";\"other\"\n\"3374210\";\"Vila de São Filippe\";\"other\"\n\"3374211\";\"São Domingos\";\"main\"\n\"3374211\";\"Sao Domingos\";\"ascii\"\n\"3374211\";\"San-Domingos\";\"other\"\n\"3374211\";\"Сан-Домингос\";\"other\"\n\"3374218\";\"Santa Maria\";\"main\"\n\"3374221\";\"Santa Cruz\";\"main\"\n\"3374235\";\"Sal Rei\";\"main\"\n\"3374235\";\"Sal-Rel\";\"other\"\n\"3374275\";\"Ribeira Grande\";\"main\"\n\"3374333\";\"Praia\";\"main\"\n\"3374333\";\"Cidade da Praia\";\"other\"\n\"3374333\";\"Municipio da Praia\";\"other\"\n\"3374333\";\"Município da Praia\";\"other\"\n\"3374333\";\"Pragia\";\"other\"\n\"3374333\";\"Praja\";\"other\"\n\"3374333\";\"pei ya\";\"other\"\n\"3374333\";\"peulaia\";\"other\"\n\"3374333\";\"puraia\";\"other\"\n\"3374333\";\"Πράγια\";\"other\"\n\"3374333\";\"Прая\";\"other\"\n\"3374333\";\"Праја\";\"other\"\n\"3374333\";\"פראיה\";\"other\"\n\"3374333\";\"ፕራያ\";\"other\"\n\"3374333\";\"プライア\";\"other\"\n\"3374333\";\"培亞\";\"other\"\n\"3374333\";\"프라이아\";\"other\"\n\"3374336\";\"Porto Novo\";\"main\"\n\"3374336\";\"Carvoeiros\";\"other\"\n\"3374336\";\"Vila do Porto Novo\";\"other\"\n\"3374336\";\"Vila do Pôrto Novo\";\"other\"\n\"3374336\";\"alto de peixim\";\"other\"\n\"3374338\";\"Porto dos Mosteiros\";\"main\"\n\"3374346\";\"Ponta do Sol\";\"main\"\n\"3374346\";\"Sol Point\";\"other\"\n\"3374351\";\"Pombas\";\"main\"\n\"3374462\";\"Mindelo\";\"main\"\n\"3374462\";\"Mihdelo\";\"other\"\n\"3374462\";\"Mindello\";\"other\"\n\"3374462\";\"Mindelu\";\"other\"\n\"3374462\";\"Минделу\";\"other\"\n\"3374725\";\"Cidade Velha\";\"main\"\n\"3374725\";\"Sidade Vel'ja\";\"other\"\n\"3374725\";\"Velha\";\"other\"\n\"3374725\";\"Сидаде Велья\";\"other\"\n\"3374794\";\"Calheta\";\"main\"\n\"3374888\";\"Assomada\";\"main\"\n\"3374888\";\"Assumada\";\"other\"\n\"2078127\";\"Flying Fish Cove\";\"main\"\n\"2078127\";\"The Settlement\";\"other\"\n\"18918\";\"Protaras\";\"main\"\n\"18918\";\"Протарас\";\"other\"\n\"145952\";\"Ypsonas\";\"main\"\n\"145952\";\"Ipsona\";\"other\"\n\"145952\";\"Ipsonas\";\"other\"\n\"145952\";\"İpsona\";\"other\"\n\"145964\";\"Yeri\";\"main\"\n\"145964\";\"Geri\";\"other\"\n\"145964\";\"Гери\";\"other\"\n\"145981\";\"Xeri\";\"main\"\n\"145981\";\"Bilen\";\"other\"\n\"145981\";\"Seri\";\"other\"\n\"145981\";\"Tseri\";\"other\"\n\"145987\";\"Voroklini\";\"main\"\n\"145987\";\"Vorglini\";\"other\"\n\"145987\";\"Voroglini\";\"other\"\n\"146015\";\"Troulli\";\"main\"\n\"146015\";\"Troulloi\";\"other\"\n\"146015\";\"Trulli\";\"other\"\n\"146027\";\"Trikomo\";\"main\"\n\"146027\";\"Iskele\";\"other\"\n\"146027\";\"İskele\";\"other\"\n\"146040\";\"Tersephanou\";\"main\"\n\"146040\";\"Tersefan\";\"other\"\n\"146040\";\"Tersefanou\";\"other\"\n\"146040\";\"Tersofanu\";\"other\"\n\"146045\";\"Tala\";\"main\"\n\"146045\";\"Dala\";\"other\"\n\"146045\";\"Dalâ\";\"other\"\n\"146069\";\"Sotira\";\"main\"\n\"146105\";\"Rizokarpaso\";\"main\"\n\"146105\";\"Dipkarpas\";\"other\"\n\"146105\";\"Dipkarpaz\";\"other\"\n\"146105\";\"Dipkurpaz\";\"other\"\n\"146105\";\"Rizokarpason\";\"other\"\n\"146105\";\"Rizokarpasso\";\"other\"\n\"146107\";\"Pyrgos\";\"main\"\n\"146107\";\"Pyrga\";\"other\"\n\"146110\";\"Pyla\";\"main\"\n\"146110\";\"Pila\";\"other\"\n\"146110\";\"Pile\";\"other\"\n\"146112\";\"Psomolophou\";\"main\"\n\"146112\";\"Psimolofou\";\"other\"\n\"146112\";\"Psomolafa\";\"other\"\n\"146112\";\"Psomolof\";\"other\"\n\"146112\";\"Psomolopho\";\"other\"\n\"146112\";\"Somolof\";\"other\"\n\"146114\";\"Psevdhas\";\"main\"\n\"146114\";\"Pseftas\";\"other\"\n\"146114\";\"Psevda\";\"other\"\n\"146114\";\"Psevdas\";\"other\"\n\"146137\";\"Polis\";\"main\"\n\"146137\";\"Poli\";\"other\"\n\"146150\";\"Pissouri\";\"main\"\n\"146150\";\"Pissuri\";\"other\"\n\"146154\";\"Phrenaros\";\"main\"\n\"146154\";\"Frenaro\";\"other\"\n\"146154\";\"Frenaros\";\"other\"\n\"146154\";\"Frennaros\";\"other\"\n\"146175\";\"Peyia\";\"main\"\n\"146175\";\"Pegeia\";\"other\"\n\"146175\";\"Peya\";\"other\"\n\"146183\";\"Perivolia\";\"main\"\n\"146183\";\"Bahcalar\";\"other\"\n\"146183\";\"Bahceler\";\"other\"\n\"146183\";\"Bahçalar\";\"other\"\n\"146183\";\"Bahçeler\";\"other\"\n\"146183\";\"Bervolya\";\"other\"\n\"146183\";\"Perivolya\";\"other\"\n\"146187\";\"Peristerona\";\"main\"\n\"146192\";\"Pera\";\"main\"\n\"146198\";\"Pelendria\";\"main\"\n\"146198\";\"Belendri\";\"other\"\n\"146198\";\"Pelendri\";\"other\"\n\"146204\";\"Parekklisha\";\"main\"\n\"146204\";\"Parekklisia\";\"other\"\n\"146204\";\"Pareklisa\";\"other\"\n\"146204\";\"Pareklisha\";\"other\"\n\"146204\";\"Pareklişa\";\"other\"\n\"146209\";\"Paralimni\";\"main\"\n\"146209\";\"Paralim\";\"other\"\n\"146214\";\"Paphos\";\"main\"\n\"146214\";\"Baf\";\"other\"\n\"146214\";\"Gazibaf\";\"other\"\n\"146214\";\"Nea Pafos\";\"other\"\n\"146214\";\"Nea Paphos\";\"other\"\n\"146214\";\"Néa Páfos\";\"other\"\n\"146214\";\"Pafo\";\"other\"\n\"146214\";\"Pafos\";\"other\"\n\"146214\";\"Páfos\";\"other\"\n\"146214\";\"Πάφος\";\"other\"\n\"146214\";\"Παφος\";\"other\"\n\"146214\";\"Пафос\";\"other\"\n\"146216\";\"Pano Polemidhia\";\"main\"\n\"146216\";\"Pano Polemidia\";\"other\"\n\"146216\";\"Pano Polemidya\";\"other\"\n\"146216\";\"Polemidia\";\"other\"\n\"146216\";\"Yukari Binatli\";\"other\"\n\"146216\";\"Yukari Polemitya\";\"other\"\n\"146216\";\"Yukarı Binatlı\";\"other\"\n\"146216\";\"Yukarı Polemitya\";\"other\"\n\"146225\";\"Pano Dheftera\";\"main\"\n\"146225\";\"Deftera Pano\";\"other\"\n\"146225\";\"Defterá Pano\";\"other\"\n\"146225\";\"Pano Deftera\";\"other\"\n\"146225\";\"Yukari Deftera\";\"other\"\n\"146225\";\"Yukarı Deftera\";\"other\"\n\"146245\";\"Pakhna\";\"main\"\n\"146245\";\"Pachna\";\"other\"\n\"146245\";\"Pahna\";\"other\"\n\"146268\";\"Nicosia\";\"main\"\n\"146268\";\"An Leafcois\";\"other\"\n\"146268\";\"An Leafcóis\";\"other\"\n\"146268\";\"Lefkosa\";\"other\"\n\"146268\";\"Lefkosia\";\"other\"\n\"146268\";\"Lefkoşa\";\"other\"\n\"146268\";\"Leukosia\";\"other\"\n\"146268\";\"Nicosia - Leukosia\";\"other\"\n\"146268\";\"Nicosia - Λευκωσία\";\"other\"\n\"146268\";\"Nicosie\";\"other\"\n\"146268\";\"Nicòsia\";\"other\"\n\"146268\";\"Nicósia\";\"other\"\n\"146268\";\"Nikasia\";\"other\"\n\"146268\";\"Nikosia\";\"other\"\n\"146268\";\"Nikosie\";\"other\"\n\"146268\";\"Nikosija\";\"other\"\n\"146268\";\"Nikozia\";\"other\"\n\"146268\";\"Nikozija\";\"other\"\n\"146268\";\"Nikozio\";\"other\"\n\"146268\";\"Nikozja\";\"other\"\n\"146268\";\"Nikósie\";\"other\"\n\"146268\";\"Nikózia\";\"other\"\n\"146268\";\"ni ke xi ya\";\"other\"\n\"146268\";\"nikoshia\";\"other\"\n\"146268\";\"nikosia\";\"other\"\n\"146268\";\"nyqwsya\";\"other\"\n\"146268\";\"nyqwsyh\";\"other\"\n\"146268\";\"Λευκωσία\";\"other\"\n\"146268\";\"Никозия\";\"other\"\n\"146268\";\"Никозија\";\"other\"\n\"146268\";\"Никосия\";\"other\"\n\"146268\";\"Нікасія\";\"other\"\n\"146268\";\"Նիկոսիա\";\"other\"\n\"146268\";\"ניקוסיה\";\"other\"\n\"146268\";\"نيقوسيا\";\"other\"\n\"146268\";\"ሌፍኮዚያ\";\"other\"\n\"146268\";\"ニコシア\";\"other\"\n\"146268\";\"尼科西亚\";\"other\"\n\"146268\";\"니코시아\";\"other\"\n\"146278\";\"Moutayiaka\";\"main\"\n\"146278\";\"Moutayaka\";\"other\"\n\"146278\";\"Mouttagiaka\";\"other\"\n\"146278\";\"Mutayaka\";\"other\"\n\"146278\";\"Muthiyaka\";\"other\"\n\"146278\";\"Mutlayaka\";\"other\"\n\"146278\";\"Mutluyaka\";\"other\"\n\"146278\";\"Muttayaka\";\"other\"\n\"146283\";\"Mosphiloti\";\"main\"\n\"146283\";\"Mosfiloti\";\"other\"\n\"146286\";\"Morphou\";\"main\"\n\"146286\";\"Guzelkoy\";\"other\"\n\"146286\";\"Guzelyurt\";\"other\"\n\"146286\";\"Güzelköy\";\"other\"\n\"146286\";\"Güzelyurt\";\"other\"\n\"146286\";\"Morfou\";\"other\"\n\"146286\";\"Omorfo\";\"other\"\n\"146303\";\"Mesoyi\";\"main\"\n\"146303\";\"Mesogi\";\"other\"\n\"146311\";\"Meneou\";\"main\"\n\"146311\";\"Meneu\";\"other\"\n\"146311\";\"Menevi\";\"other\"\n\"146347\";\"Mammari\";\"main\"\n\"146358\";\"Lythrodhondas\";\"main\"\n\"146358\";\"Litrodonda\";\"other\"\n\"146358\";\"Litrodontas\";\"other\"\n\"146358\";\"Litronda\";\"other\"\n\"146358\";\"Lythrodhonda\";\"other\"\n\"146358\";\"Lythrodonda\";\"other\"\n\"146358\";\"Lythrodontas\";\"other\"\n\"146362\";\"Lymbia\";\"main\"\n\"146362\";\"Limbia\";\"other\"\n\"146362\";\"Limbya\";\"other\"\n\"146362\";\"Limya\";\"other\"\n\"146362\";\"Lympia\";\"other\"\n\"146362\";\"Olympia\";\"other\"\n\"146371\";\"Livadhia\";\"main\"\n\"146371\";\"Leivadia\";\"other\"\n\"146371\";\"Livadia\";\"other\"\n\"146371\";\"Livadya\";\"other\"\n\"146371\";\"Livatia\";\"other\"\n\"146371\";\"Livatya\";\"other\"\n\"146371\";\"Sazlikoy\";\"other\"\n\"146371\";\"Sazlıköy\";\"other\"\n\"146375\";\"Liopetri\";\"main\"\n\"146375\";\"Leopetra\";\"other\"\n\"146375\";\"Liyopetri\";\"other\"\n\"146384\";\"Limassol\";\"main\"\n\"146384\";\"Lemesos\";\"other\"\n\"146384\";\"Lemessus\";\"other\"\n\"146384\";\"Leymosun\";\"other\"\n\"146384\";\"Limasol\";\"other\"\n\"146384\";\"lymswl\";\"other\"\n\"146384\";\"rimasoru\";\"other\"\n\"146384\";\"Λεμεσός\";\"other\"\n\"146384\";\"Лимасол\";\"other\"\n\"146384\";\"Лімасол\";\"other\"\n\"146384\";\"לימסול\";\"other\"\n\"146384\";\"リマソール\";\"other\"\n\"146386\";\"Leonarisso\";\"main\"\n\"146386\";\"Leonariso\";\"other\"\n\"146386\";\"Ziamet\";\"other\"\n\"146386\";\"Ziyamet\";\"other\"\n\"146391\";\"Lefkoniko\";\"main\"\n\"146391\";\"Aksaray\";\"other\"\n\"146391\";\"Gecitkale\";\"other\"\n\"146391\";\"Geçitkale\";\"other\"\n\"146391\";\"Lefkonikon\";\"other\"\n\"146391\";\"Lefkonuk\";\"other\"\n\"146392\";\"Lefka\";\"main\"\n\"146392\";\"Lefke\";\"other\"\n\"146392\";\"Lefke-Karadag\";\"other\"\n\"146392\";\"Lefke-Karadağ\";\"other\"\n\"146400\";\"Larnaca\";\"main\"\n\"146400\";\"Chittim\";\"other\"\n\"146400\";\"Citium\";\"other\"\n\"146400\";\"Kition\";\"other\"\n\"146400\";\"Kitium\";\"other\"\n\"146400\";\"Kittim\";\"other\"\n\"146400\";\"Kozan\";\"other\"\n\"146400\";\"Lapithou\";\"other\"\n\"146400\";\"Larnaka\";\"other\"\n\"146400\";\"Salina\";\"other\"\n\"146400\";\"Salines\";\"other\"\n\"146400\";\"larnaka\";\"other\"\n\"146400\";\"lrnqh\";\"other\"\n\"146400\";\"rarunaka\";\"other\"\n\"146400\";\"Λάρνακα\";\"other\"\n\"146400\";\"Ларнака\";\"other\"\n\"146400\";\"לרנקה\";\"other\"\n\"146400\";\"لارناکا\";\"other\"\n\"146400\";\"ラルナカ\";\"other\"\n\"146403\";\"Lapithos\";\"main\"\n\"146403\";\"Gilderen\";\"other\"\n\"146403\";\"Gildirin\";\"other\"\n\"146403\";\"Lapitos\";\"other\"\n\"146403\";\"Lapta\";\"other\"\n\"146403\";\"Lâpta\";\"other\"\n\"146412\";\"Kyrenia\";\"main\"\n\"146412\";\"Girne\";\"other\"\n\"146412\";\"Keryneia\";\"other\"\n\"146412\";\"Kerynia\";\"other\"\n\"146412\";\"Kirenija\";\"other\"\n\"146412\";\"Kérynia\";\"other\"\n\"146412\";\"Κερύνεια\";\"other\"\n\"146412\";\"Кирения\";\"other\"\n\"146414\";\"Kyperounda\";\"main\"\n\"146414\";\"Ciperunda\";\"other\"\n\"146414\";\"Kiperunda\";\"other\"\n\"146414\";\"Kyperounta\";\"other\"\n\"146438\";\"Kornos\";\"main\"\n\"146438\";\"Khorno\";\"other\"\n\"146438\";\"Korno\";\"other\"\n\"146445\";\"Kophinou\";\"main\"\n\"146445\";\"Bakracli\";\"other\"\n\"146445\";\"Bakraçli\";\"other\"\n\"146445\";\"Gecitkale\";\"other\"\n\"146445\";\"Geçitkale\";\"other\"\n\"146445\";\"Kato Kophinou\";\"other\"\n\"146445\";\"Kofinou\";\"other\"\n\"146445\";\"Kofinu\";\"other\"\n\"146445\";\"Kofunye\";\"other\"\n\"146445\";\"Kophino\";\"other\"\n\"146445\";\"Köfünye\";\"other\"\n\"146445\";\"Pano Kophina\";\"other\"\n\"146445\";\"Pano Kophinou\";\"other\"\n\"146445\";\"Páno Kophína\";\"other\"\n\"146455\";\"Kokkini Trimithia\";\"main\"\n\"146455\";\"Koccinno-Trimitya\";\"other\"\n\"146455\";\"Koccinotrimitya\";\"other\"\n\"146455\";\"Kocinodrimitya\";\"other\"\n\"146455\";\"Kokkinotrimithia\";\"other\"\n\"146455\";\"Kokkinotrimitya\";\"other\"\n\"146455\";\"Koçinodrimitya\";\"other\"\n\"146455\";\"Koççinno-Trimitya\";\"other\"\n\"146455\";\"Koççinotrimitya\";\"other\"\n\"146461\";\"Klirou\";\"main\"\n\"146461\";\"Kliru\";\"other\"\n\"146469\";\"Kiti\";\"main\"\n\"146469\";\"Cite\";\"other\"\n\"146469\";\"Kition\";\"other\"\n\"146469\";\"Çite\";\"other\"\n\"146472\";\"Kissonerga\";\"main\"\n\"146472\";\"Cisonerga\";\"other\"\n\"146472\";\"Kisonerga\";\"other\"\n\"146472\";\"Kissoneros\";\"other\"\n\"146490\";\"Khlorakas\";\"main\"\n\"146490\";\"Chloraka\";\"other\"\n\"146490\";\"Chlorakas\";\"other\"\n\"146490\";\"Hiloraka\";\"other\"\n\"146490\";\"Hloraka\";\"other\"\n\"146490\";\"Klorakas\";\"other\"\n\"146515\";\"Kato Pyrgos\";\"main\"\n\"146515\";\"Asagi Pirgo\";\"other\"\n\"146515\";\"Aşağı Pirgo\";\"other\"\n\"146515\";\"Kato Pirgo\";\"other\"\n\"146529\";\"Kato Dheftera\";\"main\"\n\"146529\";\"Asagi Deftera\";\"other\"\n\"146529\";\"Aşağı Deftera\";\"other\"\n\"146529\";\"Deftera\";\"other\"\n\"146529\";\"Dheftera\";\"other\"\n\"146529\";\"Kato Deftera\";\"other\"\n\"146582\";\"Kakopetria\";\"main\"\n\"146582\";\"Kakopetriya\";\"other\"\n\"146617\";\"Famagusta\";\"main\"\n\"146617\";\"Ammochostos\";\"other\"\n\"146617\";\"Ammochostus\";\"other\"\n\"146617\";\"Ammokhostos\";\"other\"\n\"146617\";\"Famagosta\";\"other\"\n\"146617\";\"Famagouste\";\"other\"\n\"146617\";\"Gazi Magosa\";\"other\"\n\"146617\";\"Gazimagusa\";\"other\"\n\"146617\";\"Gazimağusa\";\"other\"\n\"146617\";\"Magosa\";\"other\"\n\"146617\";\"Αμμόχωστος\";\"other\"\n\"146617\";\"Фамагуста\";\"other\"\n\"146628\";\"Erimi\";\"main\"\n\"146639\";\"Emba\";\"main\"\n\"146639\";\"Empa\";\"other\"\n\"146654\";\"Dhromolaxia\";\"main\"\n\"146654\";\"Dromolaksia\";\"other\"\n\"146654\";\"Dromolaxia\";\"other\"\n\"146654\";\"Mor Menekshe\";\"other\"\n\"146654\";\"Mormenekse\";\"other\"\n\"146654\";\"Mormenekşe\";\"other\"\n\"146661\";\"Dherinia\";\"main\"\n\"146661\";\"Derinia\";\"other\"\n\"146661\";\"Derinkoy\";\"other\"\n\"146661\";\"Derinköy\";\"other\"\n\"146661\";\"Derinya\";\"other\"\n\"146661\";\"Deryneia\";\"other\"\n\"146666\";\"Dhali\";\"main\"\n\"146666\";\"Dali\";\"other\"\n\"146666\";\"Idalion\";\"other\"\n\"146692\";\"Ayios Tykhonas\";\"main\"\n\"146692\";\"Agios Tychon\";\"other\"\n\"146692\";\"Ayandihona\";\"other\"\n\"146692\";\"Ayios Tihonos\";\"other\"\n\"146692\";\"Ayithona\";\"other\"\n\"146748\";\"Ayia Napa\";\"main\"\n\"146748\";\"Agia Napa\";\"other\"\n\"146748\";\"Agija Napa\";\"other\"\n\"146748\";\"Ajja-Napa\";\"other\"\n\"146748\";\"Aya Napa\";\"other\"\n\"146748\";\"Aynapa\";\"other\"\n\"146748\";\"Агия Напа\";\"other\"\n\"146748\";\"Айя-Напа\";\"other\"\n\"146748\";\"איה נאפה\";\"other\"\n\"146761\";\"Avgorou\";\"main\"\n\"146761\";\"Avgora\";\"other\"\n\"146761\";\"Avgoro\";\"other\"\n\"146761\";\"Avgoru\";\"other\"\n\"146767\";\"Athna\";\"main\"\n\"146767\";\"Achna\";\"other\"\n\"146767\";\"Ahna\";\"other\"\n\"146767\";\"Akhna\";\"other\"\n\"146767\";\"Duzce\";\"other\"\n\"146767\";\"Düzce\";\"other\"\n\"146768\";\"Athienou\";\"main\"\n\"146768\";\"Athiaenou\";\"other\"\n\"146768\";\"Athiænou\";\"other\"\n\"146768\";\"Atienu\";\"other\"\n\"146768\";\"Atiyenu\";\"other\"\n\"146768\";\"Kiracikoy\";\"other\"\n\"146768\";\"Kiracıköy\";\"other\"\n\"146770\";\"Astromeritis\";\"main\"\n\"146770\";\"Astromerit\";\"other\"\n\"146770\";\"Astromeriti\";\"other\"\n\"146770\";\"Astromeritia\";\"other\"\n\"146791\";\"Ergates\";\"main\"\n\"146791\";\"Argadez\";\"other\"\n\"146791\";\"Argataes\";\"other\"\n\"146791\";\"Argates\";\"other\"\n\"146791\";\"Argatoes\";\"other\"\n\"146791\";\"Argatœs\";\"other\"\n\"146791\";\"Argátaes\";\"other\"\n\"146796\";\"Aradhippou\";\"main\"\n\"146796\";\"Aradip\";\"other\"\n\"146796\";\"Aradippou\";\"other\"\n\"146796\";\"Aradippu\";\"other\"\n\"146797\";\"Aradhiou\";\"main\"\n\"146797\";\"Aradiou\";\"other\"\n\"146797\";\"Aradyu\";\"other\"\n\"146797\";\"Aratyu\";\"other\"\n\"146797\";\"Aredhiou\";\"other\"\n\"146797\";\"Arediu\";\"other\"\n\"146797\";\"Aredyu\";\"other\"\n\"146834\";\"Alambra\";\"main\"\n\"146834\";\"Alampra\";\"other\"\n\"146842\";\"Akhyritou\";\"main\"\n\"146842\";\"Acheritou\";\"other\"\n\"146842\";\"Agratur\";\"other\"\n\"146842\";\"Aharida\";\"other\"\n\"146842\";\"Aharitu\";\"other\"\n\"146842\";\"Ahiritu\";\"other\"\n\"146842\";\"Aseritu\";\"other\"\n\"146842\";\"Ağratur\";\"other\"\n\"146842\";\"Aşeritu\";\"other\"\n\"146842\";\"Guvercinlik\";\"other\"\n\"146842\";\"Güvercinlik\";\"other\"\n\"146842\";\"Kouverjinlik\";\"other\"\n\"146850\";\"Akaki\";\"main\"\n\"146850\";\"Akaca\";\"other\"\n\"146850\";\"Akacha\";\"other\"\n\"146850\";\"Akácha\";\"other\"\n\"414384\";\"Meniko\";\"main\"\n\"414384\";\"Menikon\";\"other\"\n\"3061284\";\"Dvůr Králové nad Labem\";\"main\"\n\"3061284\";\"Dvur Kralove nad Labem\";\"ascii\"\n\"3061284\";\"Dvur Kralove\";\"other\"\n\"3061284\";\"Dvŭr Králové\";\"other\"\n\"3061284\";\"Koniginhof an der Elbe\";\"other\"\n\"3061284\";\"Königinhof an der Elbe\";\"other\"\n\"3061293\";\"Zvole\";\"main\"\n\"3061293\";\"Swoll\";\"other\"\n\"3061321\";\"Žulová\";\"main\"\n\"3061321\";\"Zulova\";\"ascii\"\n\"3061321\";\"Friedeberg\";\"other\"\n\"3061321\";\"Frydberk\";\"other\"\n\"3061321\";\"Frydeberk\";\"other\"\n\"3061321\";\"Frýdberk\";\"other\"\n\"3061321\";\"Frýdeberk\";\"other\"\n\"3061321\";\"Zaludova\";\"other\"\n\"3061321\";\"Žaludová\";\"other\"\n\"3061327\";\"Zubří\";\"main\"\n\"3061327\";\"Zubri\";\"ascii\"\n\"3061332\";\"Zruč nad Sázavou\";\"main\"\n\"3061332\";\"Zruc nad Sazavou\";\"ascii\"\n\"3061332\";\"Zruc\";\"other\"\n\"3061332\";\"Zruč\";\"other\"\n\"3061344\";\"Znojmo\";\"main\"\n\"3061344\";\"Znaim\";\"other\"\n\"3061344\";\"Znain\";\"other\"\n\"3061344\";\"Znaym\";\"other\"\n\"3061344\";\"Znoimium\";\"other\"\n\"3061344\";\"Зноймо\";\"other\"\n\"3061350\";\"Žlutice\";\"main\"\n\"3061350\";\"Zlutice\";\"ascii\"\n\"3061350\";\"Luditz\";\"other\"\n\"3061351\";\"Žlutava\";\"main\"\n\"3061351\";\"Zlutava\";\"ascii\"\n\"3061360\";\"Zlonice\";\"main\"\n\"3061360\";\"Zlonitz\";\"other\"\n\"3061368\";\"Zliv\";\"main\"\n\"3061368\";\"Zliw\";\"other\"\n\"3061369\";\"Zlín\";\"main\"\n\"3061369\";\"Zlin\";\"ascii\"\n\"3061369\";\"Ζλιν\";\"other\"\n\"3061369\";\"Злин\";\"other\"\n\"3061369\";\"Зьлін\";\"other\"\n\"3061370\";\"Zlín\";\"main\"\n\"3061370\";\"Zlin\";\"ascii\"\n\"3061370\";\"Gottvoldov\";\"other\"\n\"3061370\";\"Gottwald\";\"other\"\n\"3061370\";\"Gottwaldov\";\"other\"\n\"3061370\";\"Злин\";\"other\"\n\"3061378\";\"Zlechov\";\"main\"\n\"3061379\";\"Žleby\";\"main\"\n\"3061379\";\"Zleby\";\"ascii\"\n\"3061379\";\"Zleb\";\"other\"\n\"3061379\";\"Žleb\";\"other\"\n\"3061393\";\"Zlaté Hory\";\"main\"\n\"3061393\";\"Zlate Hory\";\"ascii\"\n\"3061393\";\"Cukmantl\";\"other\"\n\"3061393\";\"Zuckmantel\";\"other\"\n\"3061416\";\"Žiželice\";\"main\"\n\"3061416\";\"Zizelice\";\"ascii\"\n\"3061416\";\"Zizelic\";\"other\"\n\"3061416\";\"Žiželic\";\"other\"\n\"3061431\";\"Žitenice\";\"main\"\n\"3061431\";\"Zitenice\";\"ascii\"\n\"3061431\";\"Schudenitz\";\"other\"\n\"3061431\";\"Schüdenitz\";\"other\"\n\"3061437\";\"Žirovnice\";\"main\"\n\"3061437\";\"Zirovnice\";\"ascii\"\n\"3061437\";\"Serowitz\";\"other\"\n\"3061462\";\"Žihle\";\"main\"\n\"3061462\";\"Zihle\";\"ascii\"\n\"3061462\";\"Scheles\";\"other\"\n\"3061472\";\"Židlochovice\";\"main\"\n\"3061472\";\"Zidlochovice\";\"ascii\"\n\"3061472\";\"Gross Seelowitz\";\"other\"\n\"3061472\";\"Groß Seelowitz\";\"other\"\n\"3061472\";\"Ziolochovice\";\"other\"\n\"3061534\";\"Žeravice\";\"main\"\n\"3061534\";\"Zeravice\";\"ascii\"\n\"3061534\";\"Zerawitz\";\"other\"\n\"3061556\";\"Želiv\";\"main\"\n\"3061556\";\"Zeliv\";\"ascii\"\n\"3061556\";\"Seelau\";\"other\"\n\"3061562\";\"Železný Brod\";\"main\"\n\"3061562\";\"Zelezny Brod\";\"ascii\"\n\"3061562\";\"Eisenbrod\";\"other\"\n\"3061563\";\"Železnice\";\"main\"\n\"3061563\";\"Zeleznice\";\"ascii\"\n\"3061563\";\"Eisenstadtl\";\"other\"\n\"3061567\";\"Železná Ruda\";\"main\"\n\"3061567\";\"Zelezna Ruda\";\"ascii\"\n\"3061567\";\"Eisenstein\";\"other\"\n\"3061567\";\"Eisenstein Markt\";\"other\"\n\"3061567\";\"Markt Eisenstein\";\"other\"\n\"3061567\";\"Mestys Zelezna Ruda\";\"other\"\n\"3061567\";\"Městys Železná Ruda\";\"other\"\n\"3061567\";\"Zolezna Ruda\";\"other\"\n\"3061567\";\"Žolezná Ruda\";\"other\"\n\"3061577\";\"Želetava\";\"main\"\n\"3061577\";\"Zeletava\";\"ascii\"\n\"3061577\";\"Scheletau\";\"other\"\n\"3061578\";\"Želešice\";\"main\"\n\"3061578\";\"Zelesice\";\"ascii\"\n\"3061578\";\"Schollschitz\";\"other\"\n\"3061578\";\"Schöllschitz\";\"other\"\n\"3061588\";\"Zeleneč\";\"main\"\n\"3061588\";\"Zelenec\";\"ascii\"\n\"3061625\";\"Žebrák\";\"main\"\n\"3061625\";\"Zebrak\";\"ascii\"\n\"3061637\";\"Zdounky\";\"main\"\n\"3061637\";\"Zdounek\";\"other\"\n\"3061657\";\"Zdíkov\";\"main\"\n\"3061657\";\"Zdikov\";\"ascii\"\n\"3061657\";\"Gross Zdikau\";\"other\"\n\"3061657\";\"Gross Ždikau\";\"other\"\n\"3061658\";\"Zdice\";\"main\"\n\"3061658\";\"Zditz\";\"other\"\n\"3061659\";\"Zdiby\";\"main\"\n\"3061692\";\"Žďár nad Sázavou II\";\"main\"\n\"3061692\";\"Zd'ar nad Sazavou II\";\"ascii\"\n\"3061692\";\"Saar Schloss\";\"other\"\n\"3061695\";\"Žďár nad Sázavou\";\"main\"\n\"3061695\";\"Zd'ar nad Sazavou\";\"ascii\"\n\"3061695\";\"Mesto Zd'ar\";\"other\"\n\"3061695\";\"Mesto Zd'ar a Zamek Zd'ar\";\"other\"\n\"3061695\";\"Město Žďar\";\"other\"\n\"3061695\";\"Město Žďár\";\"other\"\n\"3061695\";\"Město Žďár a Zámek Žďár\";\"other\"\n\"3061695\";\"Saar\";\"other\"\n\"3061695\";\"Zd'ar\";\"other\"\n\"3061695\";\"Žďár\";\"other\"\n\"3061709\";\"Žďár\";\"main\"\n\"3061709\";\"Zd'ar\";\"ascii\"\n\"3061729\";\"Ždánice\";\"main\"\n\"3061729\";\"Zdanice\";\"ascii\"\n\"3061729\";\"Steinitz\";\"other\"\n\"3061734\";\"Zbýšov\";\"main\"\n\"3061734\";\"Zbysov\";\"ascii\"\n\"3061734\";\"Zbeschau\";\"other\"\n\"3061748\";\"Zbůch\";\"main\"\n\"3061748\";\"Zbuch\";\"ascii\"\n\"3061748\";\"Zwug\";\"other\"\n\"3061750\";\"Zbraslavice\";\"main\"\n\"3061750\";\"Zbraslawitz\";\"other\"\n\"3061754\";\"Zbraslav\";\"main\"\n\"3061754\";\"Zbraslau\";\"other\"\n\"3061768\";\"Zborovice\";\"main\"\n\"3061768\";\"Zborowitz\";\"other\"\n\"3061780\";\"Zbiroh\";\"main\"\n\"3061780\";\"Zbirow\";\"other\"\n\"3061816\";\"Zátor\";\"main\"\n\"3061816\";\"Zator\";\"ascii\"\n\"3061816\";\"Seifersdorf\";\"other\"\n\"3061822\";\"Žatec\";\"main\"\n\"3061822\";\"Zatec\";\"ascii\"\n\"3061822\";\"Saaz\";\"other\"\n\"3061822\";\"Zhatec\";\"other\"\n\"3061822\";\"jatetsu\";\"other\"\n\"3061822\";\"Жатец\";\"other\"\n\"3061822\";\"ジャテツ\";\"other\"\n\"3061830\";\"Zastávka\";\"main\"\n\"3061830\";\"Zastavka\";\"ascii\"\n\"3061830\";\"Bozi Pozehnani\";\"other\"\n\"3061830\";\"Boži Požehnání\";\"other\"\n\"3061830\";\"Segen Gottes\";\"other\"\n\"3061830\";\"Zastavka u Brna\";\"other\"\n\"3061830\";\"Zastávka u Brna\";\"other\"\n\"3061833\";\"Zašová\";\"main\"\n\"3061833\";\"Zasova\";\"ascii\"\n\"3061833\";\"Zaschau\";\"other\"\n\"3061834\";\"Zásmuky\";\"main\"\n\"3061834\";\"Zasmuky\";\"ascii\"\n\"3061834\";\"Zasmuk\";\"other\"\n\"3061834\";\"Zásmuk\";\"other\"\n\"3061867\";\"Žandov\";\"main\"\n\"3061867\";\"Zandov\";\"ascii\"\n\"3061867\";\"Sandau\";\"other\"\n\"3061888\";\"Žamberk\";\"main\"\n\"3061888\";\"Zamberk\";\"ascii\"\n\"3061888\";\"Senftenberg\";\"other\"\n\"3061949\";\"Zákupy\";\"main\"\n\"3061949\";\"Zakupy\";\"ascii\"\n\"3061949\";\"Reichstadt\";\"other\"\n\"3061970\";\"Zaječov\";\"main\"\n\"3061970\";\"Zajecov\";\"ascii\"\n\"3061970\";\"Zajecow\";\"other\"\n\"3061970\";\"Zaječow\";\"other\"\n\"3061970\";\"Zajicov\";\"other\"\n\"3061970\";\"Zajícov\";\"other\"\n\"3061979\";\"Zaječí\";\"main\"\n\"3061979\";\"Zajeci\";\"ascii\"\n\"3061979\";\"Saitz\";\"other\"\n\"3062011\";\"Záhorovice\";\"main\"\n\"3062011\";\"Zahorovice\";\"ascii\"\n\"3062011\";\"Zahorowitz\";\"other\"\n\"3062081\";\"Zadní Mostek\";\"main\"\n\"3062081\";\"Zadni Mostek\";\"ascii\"\n\"3062099\";\"Žacléř\";\"main\"\n\"3062099\";\"Zacler\";\"ascii\"\n\"3062099\";\"Schatzlar\";\"other\"\n\"3062105\";\"Zabrušany\";\"main\"\n\"3062105\";\"Zabrusany\";\"ascii\"\n\"3062105\";\"Sobrusan\";\"other\"\n\"3062111\";\"Zábřeh\";\"main\"\n\"3062111\";\"Zabreh\";\"ascii\"\n\"3062111\";\"Azbreh\";\"other\"\n\"3062111\";\"Hohenstadt\";\"other\"\n\"3062111\";\"Zebreh\";\"other\"\n\"3062156\";\"Žabčice\";\"main\"\n\"3062156\";\"Zabcice\";\"ascii\"\n\"3062156\";\"Zabcic\";\"other\"\n\"3062156\";\"Žabčic\";\"other\"\n\"3062184\";\"Vyšší Brod\";\"main\"\n\"3062184\";\"Vyssi Brod\";\"ascii\"\n\"3062184\";\"Hohenfurth\";\"other\"\n\"3062213\";\"Vysoké nad Jizerou\";\"main\"\n\"3062213\";\"Vysoke nad Jizerou\";\"ascii\"\n\"3062213\";\"Hochstadt\";\"other\"\n\"3062214\";\"Vysoké Mýto\";\"main\"\n\"3062214\";\"Vysoke Myto\";\"ascii\"\n\"3062214\";\"Hohenmauth\";\"other\"\n\"3062214\";\"Vyskoe Myto\";\"other\"\n\"3062257\";\"Vysočany\";\"main\"\n\"3062257\";\"Vysocany\";\"ascii\"\n\"3062257\";\"Vysocan\";\"other\"\n\"3062257\";\"Vysočan\";\"other\"\n\"3062257\";\"Wysocan\";\"other\"\n\"3062257\";\"Wysočan\";\"other\"\n\"3062283\";\"Vyškov\";\"main\"\n\"3062283\";\"Vyskov\";\"ascii\"\n\"3062283\";\"Vyshkov\";\"other\"\n\"3062283\";\"Wischau\";\"other\"\n\"3062283\";\"Вышков\";\"other\"\n\"3062339\";\"Vsetín\";\"main\"\n\"3062339\";\"Vsetin\";\"ascii\"\n\"3062339\";\"Wsetin\";\"other\"\n\"3062339\";\"Wszetyn\";\"other\"\n\"3062339\";\"Всетин\";\"other\"\n\"3062342\";\"Všetaty\";\"main\"\n\"3062342\";\"Vsetaty\";\"ascii\"\n\"3062342\";\"Wschetat\";\"other\"\n\"3062347\";\"Všestary\";\"main\"\n\"3062347\";\"Vsestary\";\"ascii\"\n\"3062351\";\"Všeruby\";\"main\"\n\"3062351\";\"Vseruby\";\"ascii\"\n\"3062351\";\"Wscherau\";\"other\"\n\"3062356\";\"Všenory\";\"main\"\n\"3062356\";\"Vsenory\";\"ascii\"\n\"3062360\";\"Všemina\";\"main\"\n\"3062360\";\"Vsemina\";\"ascii\"\n\"3062360\";\"Wschemina\";\"other\"\n\"3062405\";\"Vroutek\";\"main\"\n\"3062405\";\"Rudig\";\"other\"\n\"3062405\";\"Rüdig\";\"other\"\n\"3062416\";\"Vřesina\";\"main\"\n\"3062416\";\"Vresina\";\"ascii\"\n\"3062417\";\"Vřesina\";\"main\"\n\"3062417\";\"Vresina\";\"ascii\"\n\"3062417\";\"Wrzessin\";\"other\"\n\"3062419\";\"Vrdy\";\"main\"\n\"3062419\";\"Wrdy\";\"other\"\n\"3062439\";\"Vrchlabí\";\"main\"\n\"3062439\";\"Vrchlabi\";\"ascii\"\n\"3062439\";\"Hohenelbe\";\"other\"\n\"3062444\";\"Vrbovec\";\"main\"\n\"3062444\";\"Urbau\";\"other\"\n\"3062446\";\"Vrbno pod Pradědem\";\"main\"\n\"3062446\";\"Vrbno pod Pradedem\";\"ascii\"\n\"3062446\";\"Vrbno\";\"other\"\n\"3062446\";\"Wurbenthal\";\"other\"\n\"3062446\";\"Würbenthal\";\"other\"\n\"3062470\";\"Vrbice\";\"main\"\n\"3062477\";\"Vrbátky\";\"main\"\n\"3062477\";\"Vrbatky\";\"ascii\"\n\"3062497\";\"Vratimov\";\"main\"\n\"3062497\";\"Rattimau\";\"other\"\n\"3062511\";\"Vranovice\";\"main\"\n\"3062533\";\"Vrané nad Vltavou\";\"main\"\n\"3062533\";\"Vrane nad Vltavou\";\"ascii\"\n\"3062533\";\"Vrane\";\"other\"\n\"3062533\";\"Vrané\";\"other\"\n\"3062533\";\"Wran\";\"other\"\n\"3062545\";\"Vracov\";\"main\"\n\"3062559\";\"Votice\";\"main\"\n\"3062559\";\"Wotitz\";\"other\"\n\"3062571\";\"Volyně\";\"main\"\n\"3062571\";\"Volyne\";\"ascii\"\n\"3062571\";\"Wolin\";\"other\"\n\"3062593\";\"Volary\";\"main\"\n\"3062593\";\"Wallern\";\"other\"\n\"3062628\";\"Vojkovice\";\"main\"\n\"3062642\";\"Vodňany\";\"main\"\n\"3062642\";\"Vodnany\";\"ascii\"\n\"3062642\";\"Wodnan\";\"other\"\n\"3062642\";\"Wodňan\";\"other\"\n\"3062658\";\"Vnorovy\";\"main\"\n\"3062685\";\"Vlkoš\";\"main\"\n\"3062685\";\"Vlkos\";\"ascii\"\n\"3062708\";\"Vlčnov\";\"main\"\n\"3062708\";\"Vlcnov\";\"ascii\"\n\"3062708\";\"Wolfsdorf\";\"other\"\n\"3062710\";\"Vlčnov\";\"main\"\n\"3062710\";\"Vlcnov\";\"ascii\"\n\"3062710\";\"Wltschnau\";\"other\"\n\"3062759\";\"Vlašim\";\"main\"\n\"3062759\";\"Vlasim\";\"ascii\"\n\"3062759\";\"Wlaschim\";\"other\"\n\"3062773\";\"Vladislav\";\"main\"\n\"3062773\";\"Wladislau\";\"other\"\n\"3062775\";\"Vlachovo Březí\";\"main\"\n\"3062775\";\"Vlachovo Brezi\";\"ascii\"\n\"3062775\";\"Wallischbirken\";\"other\"\n\"3062775\";\"Wällischbirken\";\"other\"\n\"3062777\";\"Vlachovice\";\"main\"\n\"3062777\";\"Vlahovice\";\"other\"\n\"3062777\";\"Wlachowitz\";\"other\"\n\"3062783\";\"Vizovice\";\"main\"\n\"3062783\";\"Wisowitz\";\"other\"\n\"3062811\";\"Vítkov\";\"main\"\n\"3062811\";\"Vitkov\";\"ascii\"\n\"3062811\";\"Wigstadtl\";\"other\"\n\"3062835\";\"Višňové\";\"main\"\n\"3062835\";\"Visnove\";\"ascii\"\n\"3062835\";\"Visnova\";\"other\"\n\"3062835\";\"Višňová\";\"other\"\n\"3062836\";\"Višňova\";\"main\"\n\"3062836\";\"Visnova\";\"ascii\"\n\"3062836\";\"Weigsdorf\";\"other\"\n\"3062857\";\"Vintířov\";\"main\"\n\"3062857\";\"Vintirov\";\"ascii\"\n\"3062857\";\"Wintersgrun\";\"other\"\n\"3062857\";\"Wintersgrün\";\"other\"\n\"3062866\";\"Viničné Šumice\";\"main\"\n\"3062866\";\"Vinicne Sumice\";\"ascii\"\n\"3062883\";\"Vinařice\";\"main\"\n\"3062883\";\"Vinarice\";\"ascii\"\n\"3062883\";\"Winaritz\";\"other\"\n\"3062883\";\"Wínařitz\";\"other\"\n\"3062888\";\"Vimperk\";\"main\"\n\"3062888\";\"Winterberg\";\"other\"\n\"3062897\";\"Vilémov\";\"main\"\n\"3062897\";\"Vilemov\";\"ascii\"\n\"3062897\";\"Woelmsdorf\";\"other\"\n\"3062897\";\"Wolmsdorf\";\"other\"\n\"3062897\";\"Wölmsdorf\";\"other\"\n\"3062899\";\"Vilémov\";\"main\"\n\"3062899\";\"Vilemov\";\"ascii\"\n\"3062899\";\"Wilimow\";\"other\"\n\"3062902\";\"Vilémov\";\"main\"\n\"3062902\";\"Vilemov\";\"ascii\"\n\"3062909\";\"Vikýřovice\";\"main\"\n\"3062909\";\"Vikyrovice\";\"ascii\"\n\"3062909\";\"Weikersdorf\";\"other\"\n\"3062924\";\"Vidnava\";\"main\"\n\"3062924\";\"Weidenau\";\"other\"\n\"3062934\";\"Vidče\";\"main\"\n\"3062934\";\"Vidce\";\"ascii\"\n\"3062934\";\"Witsche\";\"other\"\n\"3062965\";\"Veverská Bítýška\";\"main\"\n\"3062965\";\"Veverska Bityska\";\"ascii\"\n\"3062965\";\"Bittischka\";\"other\"\n\"3062986\";\"Větřní\";\"main\"\n\"3062986\";\"Vetrni\";\"ascii\"\n\"3062986\";\"Wettern\";\"other\"\n\"3063001\";\"Vestec\";\"main\"\n\"3063001\";\"Westetz\";\"other\"\n\"3063032\";\"Veselí nad Moravou\";\"main\"\n\"3063032\";\"Veseli nad Moravou\";\"ascii\"\n\"3063033\";\"Veselí nad Lužnicí\";\"main\"\n\"3063033\";\"Veseli nad Luznici\";\"ascii\"\n\"3063033\";\"Mezimosti\";\"other\"\n\"3063033\";\"Mezimosti nad Nezarkou\";\"other\"\n\"3063033\";\"Mezimostí\";\"other\"\n\"3063033\";\"Mezimostí nad Nežárkou\";\"other\"\n\"3063033\";\"Weseli\";\"other\"\n\"3063082\";\"Veřovice\";\"main\"\n\"3063082\";\"Verovice\";\"ascii\"\n\"3063082\";\"Wernsdorf\";\"other\"\n\"3063083\";\"Věrovany\";\"main\"\n\"3063083\";\"Verovany\";\"ascii\"\n\"3063083\";\"Wierowan\";\"other\"\n\"3063091\";\"Verneřice\";\"main\"\n\"3063091\";\"Vernerice\";\"ascii\"\n\"3063091\";\"Wernstadt\";\"other\"\n\"3063103\";\"Vendryně\";\"main\"\n\"3063103\";\"Vendryne\";\"ascii\"\n\"3063103\";\"Wedrynie\";\"other\"\n\"3063103\";\"Wędrynie\";\"other\"\n\"3063109\";\"Velvary\";\"main\"\n\"3063109\";\"Welwarn\";\"other\"\n\"3063111\";\"Veltrusy\";\"main\"\n\"3063111\";\"Weltrus\";\"other\"\n\"3063112\";\"Veltruby\";\"main\"\n\"3063112\";\"Weltrub\";\"other\"\n\"3063124\";\"Velký Újezd\";\"main\"\n\"3063124\";\"Velky Ujezd\";\"ascii\"\n\"3063124\";\"Gross Aujezd\";\"other\"\n\"3063127\";\"Velký Týnec\";\"main\"\n\"3063127\";\"Velky Tynec\";\"ascii\"\n\"3063127\";\"Gross Teinitz\";\"other\"\n\"3063131\";\"Velký Šenov\";\"main\"\n\"3063131\";\"Velky Senov\";\"ascii\"\n\"3063131\";\"Gross Schonau in Bohmen\";\"other\"\n\"3063131\";\"Gross Schönau in Böhmen\";\"other\"\n\"3063131\";\"Gross-Schonau\";\"other\"\n\"3063131\";\"Gross-Schönau\";\"other\"\n\"3063131\";\"Senov\";\"other\"\n\"3063131\";\"Šenov\";\"other\"\n\"3063141\";\"Velký Osek\";\"main\"\n\"3063141\";\"Velky Osek\";\"ascii\"\n\"3063141\";\"Gross Wosek\";\"other\"\n\"3063171\";\"Velký Beranov\";\"main\"\n\"3063171\";\"Velky Beranov\";\"ascii\"\n\"3063171\";\"Beranov\";\"other\"\n\"3063171\";\"Gross Beranau\";\"other\"\n\"3063182\";\"Velké Svatoňovice\";\"main\"\n\"3063182\";\"Velke Svatonovice\";\"ascii\"\n\"3063182\";\"Gross Schwadowitz\";\"other\"\n\"3063189\";\"Velké Přílepy\";\"main\"\n\"3063189\";\"Velke Prilepy\";\"ascii\"\n\"3063190\";\"Velké Poříčí\";\"main\"\n\"3063190\";\"Velke Porici\";\"ascii\"\n\"3063190\";\"Gross Poric\";\"other\"\n\"3063190\";\"Gross Pořič\";\"other\"\n\"3063191\";\"Velké Popovice\";\"main\"\n\"3063191\";\"Velke Popovice\";\"ascii\"\n\"3063191\";\"Grosspopowitz\";\"other\"\n\"3063192\";\"Velké Pavlovice\";\"main\"\n\"3063192\";\"Velke Pavlovice\";\"ascii\"\n\"3063193\";\"Velké Opatovice\";\"main\"\n\"3063193\";\"Velke Opatovice\";\"ascii\"\n\"3063193\";\"Gross Opatowitz\";\"other\"\n\"3063195\";\"Velké Němčice\";\"main\"\n\"3063195\";\"Velke Nemcice\";\"ascii\"\n\"3063195\";\"Nemcice\";\"other\"\n\"3063195\";\"Němčice\";\"other\"\n\"3063196\";\"Velké Meziříčí\";\"main\"\n\"3063196\";\"Velke Mezirici\";\"ascii\"\n\"3063196\";\"Gross-Meseritsch\";\"other\"\n\"3063196\";\"Grossmeseritsch\";\"other\"\n\"3063196\";\"Großmeseritsch\";\"other\"\n\"3063196\";\"Velke Mezerici\";\"other\"\n\"3063196\";\"Velké Mezeříčí\";\"other\"\n\"3063197\";\"Velké Losiny\";\"main\"\n\"3063197\";\"Velke Losiny\";\"ascii\"\n\"3063197\";\"Gross-Ullersdorf\";\"other\"\n\"3063197\";\"Grossullersdorf\";\"other\"\n\"3063202\";\"Velké Karlovice\";\"main\"\n\"3063202\";\"Velke Karlovice\";\"ascii\"\n\"3063202\";\"Gross Karlowitz\";\"other\"\n\"3063205\";\"Velké Hoštice\";\"main\"\n\"3063205\";\"Velke Hostice\";\"ascii\"\n\"3063205\";\"Gross Hoschutz\";\"other\"\n\"3063205\";\"Gross Hoschütz\";\"other\"\n\"3063208\";\"Velké Heraltice\";\"main\"\n\"3063208\";\"Velke Heraltice\";\"ascii\"\n\"3063208\";\"Gross Herrlitz\";\"other\"\n\"3063209\";\"Velké Hamry\";\"main\"\n\"3063209\";\"Velke Hamry\";\"ascii\"\n\"3063209\";\"Ober Hammer\";\"other\"\n\"3063209\";\"Unter Hammer\";\"other\"\n\"3063215\";\"Velké Březno\";\"main\"\n\"3063215\";\"Velke Brezno\";\"ascii\"\n\"3063215\";\"Gross Priesen\";\"other\"\n\"3063217\";\"Velké Bílovice\";\"main\"\n\"3063217\";\"Velke Bilovice\";\"ascii\"\n\"3063238\";\"Velká Polom\";\"main\"\n\"3063238\";\"Velka Polom\";\"ascii\"\n\"3063238\";\"Gross Pohlom\";\"other\"\n\"3063240\";\"Velká nad Veličkou\";\"main\"\n\"3063240\";\"Velka nad Velickou\";\"ascii\"\n\"3063240\";\"Velka\";\"other\"\n\"3063240\";\"Velká\";\"other\"\n\"3063261\";\"Velká Hleďsebe\";\"main\"\n\"3063261\";\"Velka Hled'sebe\";\"ascii\"\n\"3063261\";\"Gross-Sichdichfur\";\"other\"\n\"3063261\";\"Gross-Sichdichfür\";\"other\"\n\"3063261\";\"Siehdichfur\";\"other\"\n\"3063261\";\"Siehdichfür\";\"other\"\n\"3063263\";\"Velká Dobrá\";\"main\"\n\"3063263\";\"Velka Dobra\";\"ascii\"\n\"3063271\";\"Velká Bystřice\";\"main\"\n\"3063271\";\"Velka Bystrice\";\"ascii\"\n\"3063271\";\"Gross Wisternitz\";\"other\"\n\"3063276\";\"Velká Bíteš\";\"main\"\n\"3063276\";\"Velka Bites\";\"ascii\"\n\"3063276\";\"Gross Bittesch\";\"other\"\n\"3063286\";\"Velim\";\"main\"\n\"3063286\";\"Welim\";\"other\"\n\"3063307\";\"Velešín\";\"main\"\n\"3063307\";\"Velesin\";\"ascii\"\n\"3063318\";\"Velemín\";\"main\"\n\"3063318\";\"Velemin\";\"ascii\"\n\"3063318\";\"Wellemin\";\"other\"\n\"3063321\";\"Velehrad\";\"main\"\n\"3063321\";\"Welehrad\";\"other\"\n\"3063333\";\"Vejprty\";\"main\"\n\"3063333\";\"Weipert\";\"other\"\n\"3063334\";\"Vejprnice\";\"main\"\n\"3063334\";\"Weipernitz\";\"other\"\n\"3063349\";\"Včelná\";\"main\"\n\"3063349\";\"Vcelna\";\"ascii\"\n\"3063375\";\"Varnsdorf\";\"main\"\n\"3063375\";\"Warnsdorf\";\"other\"\n\"3063385\";\"Vápenná\";\"main\"\n\"3063385\";\"Vapenna\";\"ascii\"\n\"3063385\";\"Setzdorf\";\"other\"\n\"3063385\";\"Zighartice\";\"other\"\n\"3063400\";\"Vamberk\";\"main\"\n\"3063400\";\"Wamberg\";\"other\"\n\"3063409\";\"Valtice\";\"main\"\n\"3063409\";\"Feldsberg\";\"other\"\n\"3063409\";\"valtice\";\"other\"\n\"3063409\";\"vu~aruchitsu~e\";\"other\"\n\"3063409\";\"ヴァルチツェ\";\"other\"\n\"3063436\";\"Valdice\";\"main\"\n\"3063437\";\"Valdice\";\"main\"\n\"3063437\";\"Karthaus-Walditz\";\"other\"\n\"3063437\";\"Kartouzy-Valdice\";\"other\"\n\"3063437\";\"Valdice-Kartouzy\";\"other\"\n\"3063447\";\"Valašské Meziříčí\";\"main\"\n\"3063447\";\"Valasske Mezirici\";\"ascii\"\n\"3063447\";\"Mezirzhichi\";\"other\"\n\"3063447\";\"Walachison Mesiritsch\";\"other\"\n\"3063447\";\"Wallachisch-Meseritsch\";\"other\"\n\"3063447\";\"Мезиржичи\";\"other\"\n\"3063448\";\"Valašské Klobouky\";\"main\"\n\"3063448\";\"Valasske Klobouky\";\"ascii\"\n\"3063448\";\"Klobouk\";\"other\"\n\"3063450\";\"Valašská Polanka\";\"main\"\n\"3063450\";\"Valasska Polanka\";\"ascii\"\n\"3063450\";\"Polanka\";\"other\"\n\"3063451\";\"Valašská Bystřice\";\"main\"\n\"3063451\";\"Valasska Bystrice\";\"ascii\"\n\"3063451\";\"Gross Bistrzitz\";\"other\"\n\"3063466\";\"Vacov\";\"main\"\n\"3063471\";\"Václavovice\";\"main\"\n\"3063471\";\"Vaclavovice\";\"ascii\"\n\"3063491\";\"Vacenovice\";\"main\"\n\"3063502\";\"Úvaly\";\"main\"\n\"3063502\";\"Uvaly\";\"ascii\"\n\"3063502\";\"Auwal\";\"other\"\n\"3063546\";\"Ústí nad Orlicí\";\"main\"\n\"3063546\";\"Usti nad Orlici\";\"ascii\"\n\"3063546\";\"Ustin Orl\";\"other\"\n\"3063546\";\"Wildenschwert\";\"other\"\n\"3063546\";\"Ústin Orl\";\"other\"\n\"3063548\";\"Ústí nad Labem\";\"main\"\n\"3063548\";\"Usti nad Labem\";\"ascii\"\n\"3063548\";\"Aussig\";\"other\"\n\"3063548\";\"Aussig an der Elbe\";\"other\"\n\"3063548\";\"Auszig\";\"other\"\n\"3063548\";\"Usti\";\"other\"\n\"3063548\";\"Ustina Labe\";\"other\"\n\"3063548\";\"usti\";\"other\"\n\"3063548\";\"usti nad labom\";\"other\"\n\"3063548\";\"Ústina Labe\";\"other\"\n\"3063548\";\"Ústí\";\"other\"\n\"3063548\";\"Усти\";\"other\"\n\"3063548\";\"Усти над Лабом\";\"other\"\n\"3063556\";\"Úštěk\";\"main\"\n\"3063556\";\"Ustek\";\"ascii\"\n\"3063556\";\"Auscha\";\"other\"\n\"3063561\";\"Úsov\";\"main\"\n\"3063561\";\"Usov\";\"ascii\"\n\"3063561\";\"Mahrisch Aussee\";\"other\"\n\"3063561\";\"Mährisch Aussee\";\"other\"\n\"3063578\";\"Určice\";\"main\"\n\"3063578\";\"Urcice\";\"ascii\"\n\"3063578\";\"Urcitz\";\"other\"\n\"3063578\";\"Určitz\";\"other\"\n\"3063590\";\"Úpice\";\"main\"\n\"3063590\";\"Upice\";\"ascii\"\n\"3063590\";\"Eipel\";\"other\"\n\"3063596\";\"Uničov\";\"main\"\n\"3063596\";\"Unicov\";\"ascii\"\n\"3063596\";\"Mahrisch Neustadt\";\"other\"\n\"3063596\";\"Mährisch Neustadt\";\"other\"\n\"3063599\";\"Unhošť\";\"main\"\n\"3063599\";\"Unhost'\";\"ascii\"\n\"3063599\";\"Unhoscht\";\"other\"\n\"3063611\";\"Únanov\";\"main\"\n\"3063611\";\"Unanov\";\"ascii\"\n\"3063683\";\"Újezd\";\"main\"\n\"3063683\";\"Ujezd\";\"ascii\"\n\"3063683\";\"Augezd\";\"other\"\n\"3063695\";\"Újezd\";\"main\"\n\"3063695\";\"Ujezd\";\"ascii\"\n\"3063695\";\"Aujezd\";\"other\"\n\"3063727\";\"Uhlířské Janovice\";\"main\"\n\"3063727\";\"Uhlirske Janovice\";\"ascii\"\n\"3063727\";\"Kohljanowitz\";\"other\"\n\"3063735\";\"Uherský Ostroh\";\"main\"\n\"3063735\";\"Uhersky Ostroh\";\"ascii\"\n\"3063736\";\"Uherský Brod\";\"main\"\n\"3063736\";\"Uhersky Brod\";\"ascii\"\n\"3063736\";\"Ungarisch Brod\";\"other\"\n\"3063736\";\"Ungarisch-Brod\";\"other\"\n\"3063736\";\"Vehersky Brod\";\"other\"\n\"3063739\";\"Uherské Hradiště\";\"main\"\n\"3063739\";\"Uherske Hradiste\";\"ascii\"\n\"3063739\";\"Gradishte\";\"other\"\n\"3063739\";\"Magyarhradis\";\"other\"\n\"3063739\";\"Ungarisch Hradisch\";\"other\"\n\"3063739\";\"Ungarisch-Hradisch\";\"other\"\n\"3063739\";\"Градиште\";\"other\"\n\"3063739\";\"ウヘルスケー・フラジシチェ\";\"other\"\n\"3063762\";\"Údlice\";\"main\"\n\"3063762\";\"Udlice\";\"ascii\"\n\"3063762\";\"Eidlitz\";\"other\"\n\"3063794\";\"Týn nad Vltavou\";\"main\"\n\"3063794\";\"Tyn nad Vltavou\";\"ascii\"\n\"3063794\";\"Moldauthein\";\"other\"\n\"3063794\";\"Tyn na Vltava\";\"other\"\n\"3063794\";\"Týn na Vltava\";\"other\"\n\"3063797\";\"Týniště nad Orlicí\";\"main\"\n\"3063797\";\"Tyniste nad Orlici\";\"ascii\"\n\"3063797\";\"Tinischt\";\"other\"\n\"3063797\";\"Tyniste\";\"other\"\n\"3063797\";\"Tyniště\";\"other\"\n\"3063804\";\"Týnec nad Sázavou\";\"main\"\n\"3063804\";\"Tynec nad Sazavou\";\"ascii\"\n\"3063804\";\"Tejnitz\";\"other\"\n\"3063805\";\"Týnec nad Labem\";\"main\"\n\"3063805\";\"Tynec nad Labem\";\"ascii\"\n\"3063805\";\"Elbeteinitz\";\"other\"\n\"3063805\";\"Tynec\";\"other\"\n\"3063805\";\"Týnec\";\"other\"\n\"3063814\";\"Týnec\";\"main\"\n\"3063814\";\"Tynec\";\"ascii\"\n\"3063828\";\"Tvrdonice\";\"main\"\n\"3063835\";\"Tvarožná\";\"main\"\n\"3063835\";\"Tvarozna\";\"ascii\"\n\"3063835\";\"Bosenitz\";\"other\"\n\"3063853\";\"Turnov\";\"main\"\n\"3063853\";\"Turnau\";\"other\"\n\"3063862\";\"Tupesy\";\"main\"\n\"3063862\";\"Tupes\";\"other\"\n\"3063894\";\"Tuchoměřice\";\"main\"\n\"3063894\";\"Tuchomerice\";\"ascii\"\n\"3063896\";\"Tuchlovice\";\"main\"\n\"3063896\";\"Tuchlowitz\";\"other\"\n\"3063907\";\"Trutnov\";\"main\"\n\"3063907\";\"Trautenau\";\"other\"\n\"3063907\";\"Трутнов\";\"other\"\n\"3063927\";\"Tršice\";\"main\"\n\"3063927\";\"Trsice\";\"ascii\"\n\"3063927\";\"Trschitz\";\"other\"\n\"3063927\";\"Trsnice\";\"other\"\n\"3063927\";\"Tršnice\";\"other\"\n\"3063938\";\"Troubsko\";\"main\"\n\"3063938\";\"Strutz\";\"other\"\n\"3063939\";\"Troubky\";\"main\"\n\"3063939\";\"Troubek\";\"other\"\n\"3063939\";\"Troubkach\";\"other\"\n\"3063939\";\"Troubky nad Becvou\";\"other\"\n\"3063939\";\"Troubky nad Bečvou\";\"other\"\n\"3063941\";\"Troubelice\";\"main\"\n\"3063941\";\"Treublitz\";\"other\"\n\"3063955\";\"Trojanovice\";\"main\"\n\"3063955\";\"Trojanowitz\";\"other\"\n\"3063984\";\"Trnava\";\"main\"\n\"3063984\";\"Tranawa\";\"other\"\n\"3063987\";\"Trmice\";\"main\"\n\"3063987\";\"Turmitz\";\"other\"\n\"3063987\";\"Türmitz\";\"other\"\n\"3064000\";\"Třinec\";\"main\"\n\"3064000\";\"Trinec\";\"ascii\"\n\"3064000\";\"Trshinec\";\"other\"\n\"3064000\";\"Trzyniec\";\"other\"\n\"3064000\";\"Тршинец\";\"other\"\n\"3064014\";\"Trhový Štěpánov\";\"main\"\n\"3064014\";\"Trhovy Stepanov\";\"ascii\"\n\"3064014\";\"Trhowy Stepanow\";\"other\"\n\"3064014\";\"Trhowy Stěpanow\";\"other\"\n\"3064015\";\"Trhové Sviny\";\"main\"\n\"3064015\";\"Trhove Sviny\";\"ascii\"\n\"3064029\";\"Třešť\";\"main\"\n\"3064029\";\"Trest'\";\"ascii\"\n\"3064029\";\"Triesch\";\"other\"\n\"3064043\";\"Třemošnice\";\"main\"\n\"3064043\";\"Tremosnice\";\"ascii\"\n\"3064047\";\"Třemošná\";\"main\"\n\"3064047\";\"Tremosna\";\"ascii\"\n\"3064047\";\"Tremoschna\";\"other\"\n\"3064047\";\"Třemoschna\";\"other\"\n\"3064073\";\"Třebotov\";\"main\"\n\"3064073\";\"Trebotov\";\"ascii\"\n\"3064079\";\"Třeboň\";\"main\"\n\"3064079\";\"Trebon\";\"ascii\"\n\"3064079\";\"Wittingau\";\"other\"\n\"3064104\";\"Třebíč\";\"main\"\n\"3064104\";\"Trebic\";\"ascii\"\n\"3064104\";\"Trebitsch\";\"other\"\n\"3064104\";\"Trshebich\";\"other\"\n\"3064104\";\"toshebichi\";\"other\"\n\"3064104\";\"Тршебич\";\"other\"\n\"3064104\";\"トシェビーチ\";\"other\"\n\"3064114\";\"Třebenice\";\"main\"\n\"3064114\";\"Trebenice\";\"ascii\"\n\"3064114\";\"Trebnitz\";\"other\"\n\"3064122\";\"Třebechovice pod Orebem\";\"main\"\n\"3064122\";\"Trebechovice pod Orebem\";\"ascii\"\n\"3064122\";\"Hohenbruck\";\"other\"\n\"3064122\";\"Trebechovice\";\"other\"\n\"3064122\";\"Třebechovice\";\"other\"\n\"3064140\";\"Traplice\";\"main\"\n\"3064140\";\"Traplitz\";\"other\"\n\"3064143\";\"Tovačov\";\"main\"\n\"3064143\";\"Tovacov\";\"ascii\"\n\"3064143\";\"Tobitschau\";\"other\"\n\"3064145\";\"Toužim\";\"main\"\n\"3064145\";\"Touzim\";\"ascii\"\n\"3064145\";\"Theusing\";\"other\"\n\"3064157\";\"Topolná\";\"main\"\n\"3064157\";\"Topolna\";\"ascii\"\n\"3064183\";\"Tlumačov\";\"main\"\n\"3064183\";\"Tlumacov\";\"ascii\"\n\"3064183\";\"Tlumatschau\";\"other\"\n\"3064185\";\"Tlučná\";\"main\"\n\"3064185\";\"Tlucna\";\"ascii\"\n\"3064211\";\"Tišnov\";\"main\"\n\"3064211\";\"Tisnov\";\"ascii\"\n\"3064211\";\"Tischnowitz\";\"other\"\n\"3064213\";\"Tišice\";\"main\"\n\"3064213\";\"Tisice\";\"ascii\"\n\"3064226\";\"Tichá\";\"main\"\n\"3064226\";\"Ticha\";\"ascii\"\n\"3064226\";\"Tichau\";\"other\"\n\"3064257\";\"Těšetice\";\"main\"\n\"3064257\";\"Tesetice\";\"ascii\"\n\"3064260\";\"Těšany\";\"main\"\n\"3064260\";\"Tesany\";\"ascii\"\n\"3064260\";\"Tieschan\";\"other\"\n\"3064268\";\"Terezín\";\"main\"\n\"3064268\";\"Terezin\";\"ascii\"\n\"3064268\";\"Theresienstadt\";\"other\"\n\"3064268\";\"telejin\";\"other\"\n\"3064268\";\"terejin\";\"other\"\n\"3064268\";\"テレジーン\";\"other\"\n\"3064268\";\"테레진\";\"other\"\n\"3064285\";\"Teplice nad Metují\";\"main\"\n\"3064285\";\"Teplice nad Metuji\";\"ascii\"\n\"3064285\";\"Teplice Na Metuje\";\"other\"\n\"3064285\";\"Wekelsdorf\";\"other\"\n\"3064288\";\"Teplice\";\"main\"\n\"3064288\";\"Teplice-Sanov\";\"other\"\n\"3064288\";\"Teplice-Šanov\";\"other\"\n\"3064288\";\"Teplitz\";\"other\"\n\"3064288\";\"Teplitz-Schoenau\";\"other\"\n\"3064288\";\"Teplitz-Schönau\";\"other\"\n\"3064288\";\"Теплице\";\"other\"\n\"3064307\";\"Telnice\";\"main\"\n\"3064316\";\"Telč\";\"main\"\n\"3064316\";\"Telc\";\"ascii\"\n\"3064316\";\"Teltsch\";\"other\"\n\"3064321\";\"Tečovice\";\"main\"\n\"3064321\";\"Tecovice\";\"ascii\"\n\"3064352\";\"Tasovice\";\"main\"\n\"3064352\";\"Tasswitz\";\"other\"\n\"3064358\";\"Tanvald\";\"main\"\n\"3064358\";\"Tannwald\";\"other\"\n\"3064373\";\"Tachov\";\"main\"\n\"3064373\";\"Reichental\";\"other\"\n\"3064373\";\"Tachau\";\"other\"\n\"3064373\";\"Tachoph\";\"other\"\n\"3064373\";\"Tachovas\";\"other\"\n\"3064373\";\"Tahova\";\"other\"\n\"3064373\";\"Tάχοφ\";\"other\"\n\"3064379\";\"Tábor\";\"main\"\n\"3064379\";\"Tabor\";\"ascii\"\n\"3064379\";\"tabor\";\"other\"\n\"3064379\";\"taboru\";\"other\"\n\"3064379\";\"Табор\";\"other\"\n\"3064379\";\"ターボル\";\"other\"\n\"3064415\";\"Svratka\";\"main\"\n\"3064415\";\"Swratka\";\"other\"\n\"3064449\";\"Svoboda nad Úpou\";\"main\"\n\"3064449\";\"Svoboda nad Upou\";\"ascii\"\n\"3064449\";\"Freiheit\";\"other\"\n\"3064449\";\"Svoboda\";\"other\"\n\"3064454\";\"Svitavy\";\"main\"\n\"3064454\";\"Svitave\";\"other\"\n\"3064454\";\"Zwittau\";\"other\"\n\"3064456\";\"Svitávka\";\"main\"\n\"3064456\";\"Svitavka\";\"ascii\"\n\"3064456\";\"Swittawka\";\"other\"\n\"3064492\";\"Švihov\";\"main\"\n\"3064492\";\"Svihov\";\"ascii\"\n\"3064492\";\"Schwihau\";\"other\"\n\"3064501\";\"Sviadnov\";\"main\"\n\"3064510\";\"Světlá nad Sázavou\";\"main\"\n\"3064510\";\"Svetla nad Sazavou\";\"ascii\"\n\"3064510\";\"Swetla\";\"other\"\n\"3064510\";\"Swětlá\";\"other\"\n\"3064597\";\"Svatava\";\"main\"\n\"3064597\";\"Zwodau\";\"other\"\n\"3064662\";\"Sušice\";\"main\"\n\"3064662\";\"Susice\";\"ascii\"\n\"3064662\";\"Schuttenhofen\";\"other\"\n\"3064662\";\"Schüttenhofen\";\"other\"\n\"3064673\";\"Šumperk\";\"main\"\n\"3064673\";\"Sumperk\";\"ascii\"\n\"3064673\";\"Maehrisch-Schoenberg\";\"other\"\n\"3064673\";\"Mährisch-Schönberg\";\"other\"\n\"3064673\";\"Shumperk\";\"other\"\n\"3064673\";\"Шумперк\";\"other\"\n\"3064677\";\"Šumice\";\"main\"\n\"3064677\";\"Sumice\";\"ascii\"\n\"3064677\";\"Schumitz\";\"other\"\n\"3064708\";\"Sudoměřice\";\"main\"\n\"3064708\";\"Sudomerice\";\"ascii\"\n\"3064713\";\"Sudkov\";\"main\"\n\"3064713\";\"Zautke\";\"other\"\n\"3064736\";\"Suchohrdly\";\"main\"\n\"3064736\";\"Zuckerhandl\";\"other\"\n\"3064742\";\"Suchdol nad Lužnicí\";\"main\"\n\"3064742\";\"Suchdol nad Luznici\";\"ascii\"\n\"3064742\";\"Suchenthal an der Lainsitz\";\"other\"\n\"3064745\";\"Suchdol\";\"main\"\n\"3064753\";\"Suchá Loz\";\"main\"\n\"3064753\";\"Sucha Loz\";\"ascii\"\n\"3064807\";\"Studénka\";\"main\"\n\"3064807\";\"Studenka\";\"ascii\"\n\"3064807\";\"Stauding\";\"other\"\n\"3064811\";\"Studenec\";\"main\"\n\"3064826\";\"Studená\";\"main\"\n\"3064826\";\"Studena\";\"ascii\"\n\"3064826\";\"Studein\";\"other\"\n\"3064856\";\"Strunkovice nad Blanicí\";\"main\"\n\"3064856\";\"Strunkovice nad Blanici\";\"ascii\"\n\"3064856\";\"Strunkovice\";\"other\"\n\"3064856\";\"Strunkowitz\";\"other\"\n\"3064877\";\"Strmilov\";\"main\"\n\"3064877\";\"Strmelov\";\"other\"\n\"3064877\";\"Tremles\";\"other\"\n\"3064894\";\"Střížkov\";\"main\"\n\"3064894\";\"Strizkov\";\"ascii\"\n\"3064919\";\"Stříbro\";\"main\"\n\"3064919\";\"Stribro\";\"ascii\"\n\"3064919\";\"Mies\";\"other\"\n\"3064962\";\"Střelice\";\"main\"\n\"3064962\";\"Strelice\";\"ascii\"\n\"3064962\";\"Strelitz\";\"other\"\n\"3064962\";\"Střelitz\";\"other\"\n\"3064983\";\"Stráž pod Ralskem\";\"main\"\n\"3064983\";\"Straz pod Ralskem\";\"ascii\"\n\"3064983\";\"Wartenberg\";\"other\"\n\"3064989\";\"Strážov\";\"main\"\n\"3064989\";\"Strazov\";\"ascii\"\n\"3064989\";\"Drosau\";\"other\"\n\"3064995\";\"Strážnice\";\"main\"\n\"3064995\";\"Straznice\";\"ascii\"\n\"3064997\";\"Stráž nad Nisou\";\"main\"\n\"3064997\";\"Straz nad Nisou\";\"ascii\"\n\"3064997\";\"Alt-Habendorf\";\"other\"\n\"3064997\";\"Stary Habendorf\";\"other\"\n\"3064997\";\"Starý Habendorf\";\"other\"\n\"3064999\";\"Strážná\";\"main\"\n\"3064999\";\"Strazna\";\"ascii\"\n\"3064999\";\"Moravsky Sumvald\";\"other\"\n\"3064999\";\"Moravský Šumvald\";\"other\"\n\"3064999\";\"Schonwald\";\"other\"\n\"3064999\";\"Schönwald\";\"other\"\n\"3064999\";\"Sumvald\";\"other\"\n\"3064999\";\"Sumwald\";\"other\"\n\"3064999\";\"Šumvald\";\"other\"\n\"3064999\";\"Šumwald\";\"other\"\n\"3065018\";\"Stráž\";\"main\"\n\"3065018\";\"Straz\";\"ascii\"\n\"3065018\";\"Neustadtl\";\"other\"\n\"3065033\";\"Strašice\";\"main\"\n\"3065033\";\"Strasice\";\"ascii\"\n\"3065033\";\"Straschitz\";\"other\"\n\"3065051\";\"Strání\";\"main\"\n\"3065051\";\"Strani\";\"ascii\"\n\"3065054\";\"Strančice\";\"main\"\n\"3065054\";\"Strancice\";\"ascii\"\n\"3065054\";\"Stranschitz\";\"other\"\n\"3065062\";\"Štramberk\";\"main\"\n\"3065062\";\"Stramberk\";\"ascii\"\n\"3065062\";\"Stramberg\";\"other\"\n\"3065067\";\"Strakonice\";\"main\"\n\"3065067\";\"Strakonitz\";\"other\"\n\"3065067\";\"Страконице\";\"other\"\n\"3065098\";\"Stonava\";\"main\"\n\"3065098\";\"Stonawa\";\"other\"\n\"3065103\";\"Štoky\";\"main\"\n\"3065103\";\"Stoky\";\"ascii\"\n\"3065103\";\"Stecken\";\"other\"\n\"3065116\";\"Stod\";\"main\"\n\"3065116\";\"Staab\";\"other\"\n\"3065117\";\"Stochov\";\"main\"\n\"3065118\";\"Štíty\";\"main\"\n\"3065118\";\"Stity\";\"ascii\"\n\"3065118\";\"Schildberg\";\"other\"\n\"3065118\";\"Silperk\";\"other\"\n\"3065118\";\"Šilperk\";\"other\"\n\"3065123\";\"Štítná nad Vláří\";\"main\"\n\"3065123\";\"Stitna nad Vlari\";\"ascii\"\n\"3065125\";\"Štítina\";\"main\"\n\"3065125\";\"Stitina\";\"ascii\"\n\"3065157\";\"Stěžery\";\"main\"\n\"3065157\";\"Stezery\";\"ascii\"\n\"3065157\";\"Stezer\";\"other\"\n\"3065163\";\"Štětí\";\"main\"\n\"3065163\";\"Steti\";\"ascii\"\n\"3065163\";\"Wegstadtl\";\"other\"\n\"3065163\";\"Wegstädtl\";\"other\"\n\"3065166\";\"Šternberk\";\"main\"\n\"3065166\";\"Sternberk\";\"ascii\"\n\"3065166\";\"Sternberg\";\"other\"\n\"3065180\";\"Štěpánov\";\"main\"\n\"3065180\";\"Stepanov\";\"ascii\"\n\"3065180\";\"Stiepanau\";\"other\"\n\"3065185\";\"Štěpánov\";\"main\"\n\"3065185\";\"Stepanov\";\"ascii\"\n\"3065185\";\"Stefanau\";\"other\"\n\"3065187\";\"Štěpánkovice\";\"main\"\n\"3065187\";\"Stepankovice\";\"ascii\"\n\"3065187\";\"Schepankowitz\";\"other\"\n\"3065191\";\"Štěnovice\";\"main\"\n\"3065191\";\"Stenovice\";\"ascii\"\n\"3065191\";\"Stenowitz\";\"other\"\n\"3065191\";\"Stěnowitz\";\"other\"\n\"3065210\";\"Štěchovice\";\"main\"\n\"3065210\";\"Stechovice\";\"ascii\"\n\"3065210\";\"Stechowitz\";\"other\"\n\"3065213\";\"Stěbořice\";\"main\"\n\"3065213\";\"Steborice\";\"ascii\"\n\"3065249\";\"Starý Plzenec\";\"main\"\n\"3065249\";\"Stary Plzenec\";\"ascii\"\n\"3065249\";\"Alt Pilsenetz\";\"other\"\n\"3065259\";\"Starý Kolín\";\"main\"\n\"3065259\";\"Stary Kolin\";\"ascii\"\n\"3065259\";\"Alt Kolin\";\"other\"\n\"3065263\";\"Starý Jičín\";\"main\"\n\"3065263\";\"Stary Jicin\";\"ascii\"\n\"3065263\";\"Alttitschein\";\"other\"\n\"3065281\";\"Starý Bohumín\";\"main\"\n\"3065281\";\"Stary Bohumin\";\"ascii\"\n\"3065281\";\"Bogumin\";\"other\"\n\"3065281\";\"Bohumin\";\"other\"\n\"3065281\";\"Bohumín\";\"other\"\n\"3065281\";\"Oderberg\";\"other\"\n\"3065300\";\"Staříč\";\"main\"\n\"3065300\";\"Staric\";\"ascii\"\n\"3065300\";\"Stara Staric\";\"other\"\n\"3065300\";\"Staritsch\";\"other\"\n\"3065300\";\"Stará Staříč\";\"other\"\n\"3065325\";\"Staré Nechanice\";\"main\"\n\"3065325\";\"Stare Nechanice\";\"ascii\"\n\"3065328\";\"Staré Město\";\"main\"\n\"3065328\";\"Stare Mesto\";\"ascii\"\n\"3065330\";\"Staré Město\";\"main\"\n\"3065330\";\"Stare Mesto\";\"ascii\"\n\"3065330\";\"Altstadt\";\"other\"\n\"3065330\";\"Mahrisch-Altstadt\";\"other\"\n\"3065330\";\"Mährisch-Altstadt\";\"other\"\n\"3065334\";\"Staré Město\";\"main\"\n\"3065334\";\"Stare Mesto\";\"ascii\"\n\"3065334\";\"Stare Miasto\";\"other\"\n\"3065335\";\"Staré Město\";\"main\"\n\"3065335\";\"Stare Mesto\";\"ascii\"\n\"3065335\";\"Altstadt\";\"other\"\n\"3065340\";\"Staré Křečany\";\"main\"\n\"3065340\";\"Stare Krecany\";\"ascii\"\n\"3065340\";\"Alt-Ehrenberg\";\"other\"\n\"3065340\";\"Stary Ehrenberk\";\"other\"\n\"3065340\";\"Starý Ehrenberk\";\"other\"\n\"3065353\";\"Staré Hradiště\";\"main\"\n\"3065353\";\"Stare Hradiste\";\"ascii\"\n\"3065367\";\"Stařeč\";\"main\"\n\"3065367\";\"Starec\";\"ascii\"\n\"3065367\";\"Startsch\";\"other\"\n\"3065379\";\"Stará Ves nad Ondřejnicí\";\"main\"\n\"3065379\";\"Stara Ves nad Ondrejnici\";\"ascii\"\n\"3065379\";\"Altendorf\";\"other\"\n\"3065379\";\"Stara Ves\";\"other\"\n\"3065379\";\"Stará Ves\";\"other\"\n\"3065392\";\"Stará Paka\";\"main\"\n\"3065392\";\"Stara Paka\";\"ascii\"\n\"3065392\";\"Alt Paka\";\"other\"\n\"3065404\";\"Stará Huť\";\"main\"\n\"3065404\";\"Stara Hut'\";\"ascii\"\n\"3065404\";\"Althutten\";\"other\"\n\"3065404\";\"Althütten\";\"other\"\n\"3065439\";\"Staňkov\";\"main\"\n\"3065439\";\"Stankov\";\"ascii\"\n\"3065439\";\"Mestys Stankov\";\"other\"\n\"3065439\";\"Městys Staňkov\";\"other\"\n\"3065439\";\"Stankau\";\"other\"\n\"3065439\";\"Ves Stankov\";\"other\"\n\"3065439\";\"Ves Staňkov\";\"other\"\n\"3065453\";\"Šťáhlavy\";\"main\"\n\"3065453\";\"St'ahlavy\";\"ascii\"\n\"3065453\";\"Stahlau\";\"other\"\n\"3065459\";\"Stachy\";\"main\"\n\"3065459\";\"Stachau\";\"other\"\n\"3065467\";\"Srubec\";\"main\"\n\"3065497\";\"Spytihněv\";\"main\"\n\"3065497\";\"Spytihnev\";\"ascii\"\n\"3065497\";\"Spitinau\";\"other\"\n\"3065497\";\"Spytinov\";\"other\"\n\"3065522\";\"Špindlerův Mlýn\";\"main\"\n\"3065522\";\"Spindleruv Mlyn\";\"ascii\"\n\"3065522\";\"Spindelmuhle\";\"other\"\n\"3065522\";\"Spindelmühle\";\"other\"\n\"3065522\";\"Spindlermuehle\";\"other\"\n\"3065522\";\"Spindlermühle\";\"other\"\n\"3065522\";\"Szpindlerowy Mlyn\";\"other\"\n\"3065522\";\"Szpindlerowy Młyn\";\"other\"\n\"3065560\";\"Spálené Poříčí\";\"main\"\n\"3065560\";\"Spalene Porici\";\"ascii\"\n\"3065560\";\"Brennporitschen\";\"other\"\n\"3065607\";\"Solnice\";\"main\"\n\"3065607\";\"Sollnitz\";\"other\"\n\"3065617\";\"Sokolov\";\"main\"\n\"3065617\";\"Faiknov\";\"other\"\n\"3065617\";\"Falkenau\";\"other\"\n\"3065617\";\"Falkenau an der Eger\";\"other\"\n\"3065617\";\"Falknov\";\"other\"\n\"3065617\";\"Falknov nad Ohri\";\"other\"\n\"3065617\";\"Falknov nad Ohří\";\"other\"\n\"3065617\";\"Sokolov nad Ohri\";\"other\"\n\"3065617\";\"Sokolov nad Ohří\";\"other\"\n\"3065617\";\"sokollopeu\";\"other\"\n\"3065617\";\"Соколов\";\"other\"\n\"3065617\";\"소콜로프\";\"other\"\n\"3065618\";\"Sokolnice\";\"main\"\n\"3065618\";\"Sokolnitz\";\"other\"\n\"3065626\";\"Sobotka\";\"main\"\n\"3065627\";\"Sobotín\";\"main\"\n\"3065627\";\"Sobotin\";\"ascii\"\n\"3065627\";\"Zoptau\";\"other\"\n\"3065627\";\"Zöptau\";\"other\"\n\"3065644\";\"Soběslav\";\"main\"\n\"3065644\";\"Sobeslav\";\"ascii\"\n\"3065644\";\"Sobeslau\";\"other\"\n\"3065644\";\"Soběslau\";\"other\"\n\"3065684\";\"Smržovka\";\"main\"\n\"3065684\";\"Smrzovka\";\"ascii\"\n\"3065684\";\"Morchenstern\";\"other\"\n\"3065689\";\"Smržice\";\"main\"\n\"3065689\";\"Smrzice\";\"ascii\"\n\"3065689\";\"Smrzitz\";\"other\"\n\"3065728\";\"Smiřice\";\"main\"\n\"3065728\";\"Smirice\";\"ascii\"\n\"3065728\";\"Smiritz\";\"other\"\n\"3065728\";\"Smiřitz\";\"other\"\n\"3065741\";\"Smidary\";\"main\"\n\"3065741\";\"Smidar\";\"other\"\n\"3065751\";\"Smečno\";\"main\"\n\"3065751\";\"Smecno\";\"ascii\"\n\"3065759\";\"Slušovice\";\"main\"\n\"3065759\";\"Slusovice\";\"ascii\"\n\"3065759\";\"Sluschowitz\";\"other\"\n\"3065768\";\"Šluknov\";\"main\"\n\"3065768\";\"Sluknov\";\"ascii\"\n\"3065768\";\"Schluckenau\";\"other\"\n\"3065818\";\"Slavonice\";\"main\"\n\"3065818\";\"Zlabings\";\"other\"\n\"3065824\";\"Slavkov u Brna\";\"main\"\n\"3065824\";\"Austerlic\";\"other\"\n\"3065824\";\"Austerlitz\";\"other\"\n\"3065824\";\"Slawkow\";\"other\"\n\"3065824\";\"Sławków\";\"other\"\n\"3065824\";\"bu er nuo fu jin si la fu ke fu\";\"other\"\n\"3065824\";\"slbqwb\";\"other\"\n\"3065824\";\"Аустерлиц\";\"other\"\n\"3065824\";\"סלבקוב\";\"other\"\n\"3065824\";\"布尔诺附近斯拉夫科夫\";\"other\"\n\"3065831\";\"Slavkov\";\"main\"\n\"3065831\";\"Schlakau\";\"other\"\n\"3065843\";\"Slavičín\";\"main\"\n\"3065843\";\"Slavicin\";\"ascii\"\n\"3065843\";\"Mladotitz\";\"other\"\n\"3065843\";\"Slavicin-Mladotice\";\"other\"\n\"3065843\";\"Slavičín-Mladotice\";\"other\"\n\"3065843\";\"Slawitschin\";\"other\"\n\"3065872\";\"Slatinice\";\"main\"\n\"3065873\";\"Slatiňany\";\"main\"\n\"3065873\";\"Slatinany\";\"ascii\"\n\"3065873\";\"Slatinan\";\"other\"\n\"3065901\";\"Šlapanice\";\"main\"\n\"3065901\";\"Slapanice\";\"ascii\"\n\"3065901\";\"Schlapanitz\";\"other\"\n\"3065903\";\"Slaný\";\"main\"\n\"3065903\";\"Slany\";\"ascii\"\n\"3065903\";\"Schlan\";\"other\"\n\"3065921\";\"Skuteč\";\"main\"\n\"3065921\";\"Skutec\";\"ascii\"\n\"3065921\";\"Skutsch\";\"other\"\n\"3065930\";\"Skuhrov nad Bělou\";\"main\"\n\"3065930\";\"Skuhrov nad Belou\";\"ascii\"\n\"3065976\";\"Skrbeň\";\"main\"\n\"3065976\";\"Skrben\";\"ascii\"\n\"3065976\";\"Kirwein\";\"other\"\n\"3066045\";\"Skalná\";\"main\"\n\"3066045\";\"Skalna\";\"ascii\"\n\"3066045\";\"Vildstejn\";\"other\"\n\"3066045\";\"Vildštejn\";\"other\"\n\"3066045\";\"Wildstein\";\"other\"\n\"3066095\";\"Šitbořice\";\"main\"\n\"3066095\";\"Sitborice\";\"ascii\"\n\"3066095\";\"Schuttborzitz\";\"other\"\n\"3066095\";\"Schüttborzitz\";\"other\"\n\"3066137\";\"Šilheřovice\";\"main\"\n\"3066137\";\"Silherovice\";\"ascii\"\n\"3066137\";\"Schillersdorf\";\"other\"\n\"3066154\";\"Sezimovo Ústí\";\"main\"\n\"3066154\";\"Sezimovo Usti\";\"ascii\"\n\"3066154\";\"Alt Tabor\";\"other\"\n\"3066159\";\"Sezemice\";\"main\"\n\"3066159\";\"Sezemitz\";\"other\"\n\"3066160\";\"Ševětín\";\"main\"\n\"3066160\";\"Sevetin\";\"ascii\"\n\"3066160\";\"Schewetin\";\"other\"\n\"3066169\";\"Šestajovice\";\"main\"\n\"3066169\";\"Sestajovice\";\"ascii\"\n\"3066180\";\"Sepekov\";\"main\"\n\"3066180\";\"Sepekau\";\"other\"\n\"3066184\";\"Šenov\";\"main\"\n\"3066184\";\"Senov\";\"ascii\"\n\"3066195\";\"Senice na Hané\";\"main\"\n\"3066195\";\"Senice na Hane\";\"ascii\"\n\"3066195\";\"Gross Senitz\";\"other\"\n\"3066195\";\"Senice\";\"other\"\n\"3066220\";\"Semily\";\"main\"\n\"3066220\";\"Semil\";\"other\"\n\"3066276\";\"Sedlnice\";\"main\"\n\"3066276\";\"Sedlnitz\";\"other\"\n\"3066284\";\"Sedliště\";\"main\"\n\"3066284\";\"Sedliste\";\"ascii\"\n\"3066284\";\"Siedliszcze\";\"other\"\n\"3066298\";\"Sedlice\";\"main\"\n\"3066298\";\"Sedlitz\";\"other\"\n\"3066299\";\"Sedlice\";\"main\"\n\"3066333\";\"Sedlčany\";\"main\"\n\"3066333\";\"Sedlcany\";\"ascii\"\n\"3066333\";\"Selcan\";\"other\"\n\"3066333\";\"Selčan\";\"other\"\n\"3066342\";\"Seč\";\"main\"\n\"3066342\";\"Sec\";\"ascii\"\n\"3066385\";\"Sázava\";\"main\"\n\"3066385\";\"Sazava\";\"ascii\"\n\"3066385\";\"Sazau\";\"other\"\n\"3066390\";\"Šatov\";\"main\"\n\"3066390\";\"Satov\";\"ascii\"\n\"3066390\";\"Schattau\";\"other\"\n\"3066392\";\"Satalice\";\"main\"\n\"3066392\";\"Satalic\";\"other\"\n\"3066392\";\"Satalitz\";\"other\"\n\"3066399\";\"Šardice\";\"main\"\n\"3066399\";\"Sardice\";\"ascii\"\n\"3066410\";\"Šanov\";\"main\"\n\"3066410\";\"Sanov\";\"ascii\"\n\"3066410\";\"Schonau\";\"other\"\n\"3066410\";\"Schönau\";\"other\"\n\"3066416\";\"Samotíšky\";\"main\"\n\"3066416\";\"Samotisky\";\"ascii\"\n\"3066439\";\"Šakvice\";\"main\"\n\"3066439\";\"Sakvice\";\"ascii\"\n\"3066446\";\"Sadská\";\"main\"\n\"3066446\";\"Sadska\";\"ascii\"\n\"3066448\";\"Sadov\";\"main\"\n\"3066448\";\"Sodau\";\"other\"\n\"3066483\";\"Rýmařov\";\"main\"\n\"3066483\";\"Rymarov\";\"ascii\"\n\"3066483\";\"Romerstadt\";\"other\"\n\"3066483\";\"Römerstadt\";\"other\"\n\"3066492\";\"Rychvald\";\"main\"\n\"3066492\";\"Rychwald\";\"other\"\n\"3066503\";\"Rychnov nad Kněžnou\";\"main\"\n\"3066503\";\"Rychnov nad Kneznou\";\"ascii\"\n\"3066503\";\"Reichenau\";\"other\"\n\"3066536\";\"Rybitví\";\"main\"\n\"3066536\";\"Rybitvi\";\"ascii\"\n\"3066536\";\"Rybitew\";\"other\"\n\"3066537\";\"Rybí\";\"main\"\n\"3066537\";\"Rybi\";\"ascii\"\n\"3066537\";\"Reimlich\";\"other\"\n\"3066537\";\"Reimrich\";\"other\"\n\"3066578\";\"Rumburk\";\"main\"\n\"3066578\";\"Rumburg\";\"other\"\n\"3066592\";\"Rudolfov\";\"main\"\n\"3066592\";\"Rudolfstadt\";\"other\"\n\"3066595\";\"Rudník\";\"main\"\n\"3066595\";\"Rudnik\";\"ascii\"\n\"3066595\";\"Hermannseifen\";\"other\"\n\"3066595\";\"Hermanovy Sejfy\";\"other\"\n\"3066595\";\"Heřmanovy Sejfy\";\"other\"\n\"3066595\";\"Scify\";\"other\"\n\"3066599\";\"Rudná\";\"main\"\n\"3066599\";\"Rudna\";\"ascii\"\n\"3066613\";\"Ruda nad Moravou\";\"main\"\n\"3066613\";\"Eisenberg an der March\";\"other\"\n\"3066613\";\"Eisenberg an der Morava\";\"other\"\n\"3066613\";\"Ober Eisenberg\";\"other\"\n\"3066613\";\"Ruda na Morave\";\"other\"\n\"3066613\";\"Ruda na Moravě\";\"other\"\n\"3066623\";\"Rtyně v Podkrkonoší\";\"main\"\n\"3066623\";\"Rtyne v Podkrkonosi\";\"ascii\"\n\"3066623\";\"Hertin\";\"other\"\n\"3066636\";\"Roztoky\";\"main\"\n\"3066636\";\"Rostok\";\"other\"\n\"3066637\";\"Roztoky\";\"main\"\n\"3066637\";\"Rostok\";\"other\"\n\"3066651\";\"Rožnov pod Radhoštěm\";\"main\"\n\"3066651\";\"Roznov pod Radhostem\";\"ascii\"\n\"3066651\";\"Roznau\";\"other\"\n\"3066651\";\"Roznov\";\"other\"\n\"3066651\";\"Rožnov\";\"other\"\n\"3066659\";\"Rožmitál pod Třemšínem\";\"main\"\n\"3066659\";\"Rozmital pod Tremsinem\";\"ascii\"\n\"3066659\";\"Rozmital\";\"other\"\n\"3066659\";\"Rožmitál\";\"other\"\n\"3066680\";\"Rožďalovice\";\"main\"\n\"3066680\";\"Rozd'alovice\";\"ascii\"\n\"3066680\";\"Rozdalowitz\";\"other\"\n\"3066680\";\"Rozdd'alovice\";\"other\"\n\"3066680\";\"Roždálowitz\";\"other\"\n\"3066680\";\"Roždďalovice\";\"other\"\n\"3066703\";\"Rovensko pod Troskami\";\"main\"\n\"3066703\";\"Rovensko\";\"other\"\n\"3066703\";\"Rowensko\";\"other\"\n\"3066719\";\"Rousínov\";\"main\"\n\"3066719\";\"Rousinov\";\"ascii\"\n\"3066727\";\"Roudnice nad Labem\";\"main\"\n\"3066727\";\"Raudnitz\";\"other\"\n\"3066727\";\"Roudnice\";\"other\"\n\"3066727\";\"Roudnice na Labe\";\"other\"\n\"3066735\";\"Rouchovany\";\"main\"\n\"3066735\";\"Rouchowan\";\"other\"\n\"3066743\";\"Rotava\";\"main\"\n\"3066743\";\"Rothau\";\"other\"\n\"3066757\";\"Rosice\";\"main\"\n\"3066757\";\"Rositz\";\"other\"\n\"3066759\";\"Rosice\";\"main\"\n\"3066759\";\"Rossitz\";\"other\"\n\"3066763\";\"Ropice\";\"main\"\n\"3066765\";\"Ronov nad Doubravou\";\"main\"\n\"3066765\";\"Ronow an der Doubrava\";\"other\"\n\"3066781\";\"Rokytnice v Orlických Horách\";\"main\"\n\"3066781\";\"Rokytnice v Orlickych Horach\";\"ascii\"\n\"3066781\";\"Rokitnitz\";\"other\"\n\"3066781\";\"Rokitnitz im Adlergebirge\";\"other\"\n\"3066783\";\"Rokytnice nad Jizerou\";\"main\"\n\"3066783\";\"Rochlitz an der Iser\";\"other\"\n\"3066783\";\"Rokytnice\";\"other\"\n\"3066786\";\"Rokytnice\";\"main\"\n\"3066786\";\"Roketnitz\";\"other\"\n\"3066794\";\"Rokycany\";\"main\"\n\"3066794\";\"Rokitzan\";\"other\"\n\"3066794\";\"Rokycan\";\"other\"\n\"3066825\";\"Rohatec\";\"main\"\n\"3066878\";\"Říčany\";\"main\"\n\"3066878\";\"Ricany\";\"ascii\"\n\"3066878\";\"Rican\";\"other\"\n\"3066878\";\"Ričan\";\"other\"\n\"3066879\";\"Říčany\";\"main\"\n\"3066879\";\"Ricany\";\"ascii\"\n\"3066879\";\"Rican\";\"other\"\n\"3066879\";\"Ričan\";\"other\"\n\"3066885\";\"Řež\";\"main\"\n\"3066885\";\"Rez\";\"ascii\"\n\"3066889\";\"Řevničov\";\"main\"\n\"3066889\";\"Revnicov\";\"ascii\"\n\"3066889\";\"Rentsch\";\"other\"\n\"3066890\";\"Řevnice\";\"main\"\n\"3066890\";\"Revnice\";\"ascii\"\n\"3066890\";\"Rewnitz\";\"other\"\n\"3066917\";\"Řepiště\";\"main\"\n\"3066917\";\"Repiste\";\"ascii\"\n\"3066958\";\"Řehlovice\";\"main\"\n\"3066958\";\"Rehlovice\";\"ascii\"\n\"3066958\";\"Gross Tschochau\";\"other\"\n\"3066974\";\"Řečany nad Labem\";\"main\"\n\"3066974\";\"Recany nad Labem\";\"ascii\"\n\"3066974\";\"Recan\";\"other\"\n\"3066974\";\"Rečan\";\"other\"\n\"3066987\";\"Ratíškovice\";\"main\"\n\"3066987\";\"Ratiskovice\";\"ascii\"\n\"3066995\";\"Ratiboř\";\"main\"\n\"3066995\";\"Ratibor\";\"ascii\"\n\"3067004\";\"Rataje\";\"main\"\n\"3067006\";\"Raspenava\";\"main\"\n\"3067006\";\"Raspenau\";\"other\"\n\"3067023\";\"Raškovice\";\"main\"\n\"3067023\";\"Raskovice\";\"ascii\"\n\"3067023\";\"Raszkowice\";\"other\"\n\"3067026\";\"Rapotín\";\"main\"\n\"3067026\";\"Rapotin\";\"ascii\"\n\"3067026\";\"Reitendorf\";\"other\"\n\"3067047\";\"Rakvice\";\"main\"\n\"3067051\";\"Rakovník\";\"main\"\n\"3067051\";\"Rakovnik\";\"ascii\"\n\"3067051\";\"Rakonitz\";\"other\"\n\"3067077\";\"Rajhradice\";\"main\"\n\"3067078\";\"Rajhrad\";\"main\"\n\"3067079\";\"Ráječko\";\"main\"\n\"3067079\";\"Rajecko\";\"ascii\"\n\"3067080\";\"Rájec-Jestřebí\";\"main\"\n\"3067080\";\"Rajec-Jestrebi\";\"ascii\"\n\"3067101\";\"Radvanice\";\"main\"\n\"3067101\";\"Radowenz\";\"other\"\n\"3067110\";\"Radslavice\";\"main\"\n\"3067157\";\"Radonice\";\"main\"\n\"3067157\";\"Radonitz\";\"other\"\n\"3067162\";\"Radomyšl\";\"main\"\n\"3067162\";\"Radomysl\";\"ascii\"\n\"3067162\";\"Radomischl\";\"other\"\n\"3067174\";\"Radnice\";\"main\"\n\"3067174\";\"Radnitz\";\"other\"\n\"3067204\";\"Radiměř\";\"main\"\n\"3067204\";\"Radimer\";\"ascii\"\n\"3067204\";\"Bohmisch Rothmuhl\";\"other\"\n\"3067204\";\"Böhmisch Rothmühl\";\"other\"\n\"3067204\";\"Ceska Radimer\";\"other\"\n\"3067204\";\"Mahrisch Rothmuhl\";\"other\"\n\"3067204\";\"Moravska Radimer\";\"other\"\n\"3067204\";\"Moravská Radiměř\";\"other\"\n\"3067204\";\"Mährisch Rothmühl\";\"other\"\n\"3067204\";\"Rothmuhl\";\"other\"\n\"3067204\";\"Rothmühl\";\"other\"\n\"3067204\";\"Česká Radiměř\";\"other\"\n\"3067296\";\"Pyšely\";\"main\"\n\"3067296\";\"Pysely\";\"ascii\"\n\"3067296\";\"Pischely\";\"other\"\n\"3067314\";\"Pustiměř\";\"main\"\n\"3067314\";\"Pustimer\";\"ascii\"\n\"3067314\";\"Nemecke Prusy\";\"other\"\n\"3067314\";\"Německé Prusy\";\"other\"\n\"3067314\";\"Pustomer\";\"other\"\n\"3067314\";\"Pustoměř\";\"other\"\n\"3067324\";\"Pustá Polom\";\"main\"\n\"3067324\";\"Pusta Polom\";\"ascii\"\n\"3067324\";\"Wust Pohlom\";\"other\"\n\"3067324\";\"Wüst Pohlom\";\"other\"\n\"3067351\";\"Ptení\";\"main\"\n\"3067351\";\"Pteni\";\"ascii\"\n\"3067351\";\"Ptin\";\"other\"\n\"3067368\";\"Psáry\";\"main\"\n\"3067368\";\"Psary\";\"ascii\"\n\"3067368\";\"Psar\";\"other\"\n\"3067375\";\"Prusinovice\";\"main\"\n\"3067375\";\"Prusinowitz\";\"other\"\n\"3067379\";\"Prušánky\";\"main\"\n\"3067379\";\"Prusanky\";\"ascii\"\n\"3067383\";\"Průhonice\";\"main\"\n\"3067383\";\"Pruhonice\";\"ascii\"\n\"3067395\";\"Protivín\";\"main\"\n\"3067395\";\"Protivin\";\"ascii\"\n\"3067395\";\"Protiwin\";\"other\"\n\"3067395\";\"Protiwín\";\"other\"\n\"3067398\";\"Protivanov\";\"main\"\n\"3067398\";\"Protiwanow\";\"other\"\n\"3067416\";\"Prostřední Bečva\";\"main\"\n\"3067416\";\"Prostredni Becva\";\"ascii\"\n\"3067416\";\"Mittel Becwa\";\"other\"\n\"3067416\";\"Mittel Beczwa\";\"other\"\n\"3067416\";\"Mittel Bečwa\";\"other\"\n\"3067421\";\"Prostějov\";\"main\"\n\"3067421\";\"Prostejov\";\"ascii\"\n\"3067421\";\"Prosnitz\";\"other\"\n\"3067421\";\"Prossnitz\";\"other\"\n\"3067421\";\"Prosznitz\";\"other\"\n\"3067421\";\"Простейов\";\"other\"\n\"3067433\";\"Prosek\";\"main\"\n\"3067443\";\"Proseč\";\"main\"\n\"3067443\";\"Prosec\";\"ascii\"\n\"3067461\";\"Proboštov\";\"main\"\n\"3067461\";\"Probostov\";\"ascii\"\n\"3067461\";\"Probstau\";\"other\"\n\"3067485\";\"Příšovice\";\"main\"\n\"3067485\";\"Prisovice\";\"ascii\"\n\"3067499\";\"Přimda\";\"main\"\n\"3067499\";\"Primda\";\"ascii\"\n\"3067499\";\"Pfraumberg\";\"other\"\n\"3067514\";\"Příkazy\";\"main\"\n\"3067514\";\"Prikazy\";\"ascii\"\n\"3067514\";\"Przikaz\";\"other\"\n\"3067535\";\"Přibyslav\";\"main\"\n\"3067535\";\"Pribyslav\";\"ascii\"\n\"3067535\";\"Pribislau\";\"other\"\n\"3067535\";\"Přibislau\";\"other\"\n\"3067542\";\"Příbram\";\"main\"\n\"3067542\";\"Pribram\";\"ascii\"\n\"3067542\";\"Prshibram\";\"other\"\n\"3067542\";\"Prsibram\";\"other\"\n\"3067542\";\"Пршибрам\";\"other\"\n\"3067542\";\"Пршібрам\";\"other\"\n\"3067544\";\"Příbor\";\"main\"\n\"3067544\";\"Pribor\";\"ascii\"\n\"3067544\";\"Freiberg\";\"other\"\n\"3067544\";\"Przyborz\";\"other\"\n\"3067553\";\"Přeštice\";\"main\"\n\"3067553\";\"Prestice\";\"ascii\"\n\"3067553\";\"Prestitz\";\"other\"\n\"3067553\";\"Přestitz\";\"other\"\n\"3067577\";\"Přerov nad Labem\";\"main\"\n\"3067577\";\"Prerov nad Labem\";\"ascii\"\n\"3067577\";\"Alt-Prerow\";\"other\"\n\"3067577\";\"Alt-Přerow\";\"other\"\n\"3067577\";\"Neu-Prerow\";\"other\"\n\"3067577\";\"Neu-Přerow\";\"other\"\n\"3067580\";\"Přerov\";\"main\"\n\"3067580\";\"Prerov\";\"ascii\"\n\"3067580\";\"Prerau\";\"other\"\n\"3067580\";\"Преров\";\"other\"\n\"3067587\";\"Přemyslovice\";\"main\"\n\"3067587\";\"Premyslovice\";\"ascii\"\n\"3067587\";\"Przemislowitz\";\"other\"\n\"3067594\";\"Přelouč\";\"main\"\n\"3067594\";\"Prelouc\";\"ascii\"\n\"3067594\";\"Prelauc\";\"other\"\n\"3067594\";\"Přelauč\";\"other\"\n\"3067627\";\"Předměřice nad Labem\";\"main\"\n\"3067627\";\"Predmerice nad Labem\";\"ascii\"\n\"3067627\";\"Predmeritz\";\"other\"\n\"3067627\";\"Předmeřitz\";\"other\"\n\"3067631\";\"Předklášteří\";\"main\"\n\"3067631\";\"Predklasteri\";\"ascii\"\n\"3067631\";\"Vorkloster\";\"other\"\n\"3067660\";\"Pražmo\";\"main\"\n\"3067660\";\"Prazmo\";\"ascii\"\n\"3067676\";\"Přáslavice\";\"main\"\n\"3067676\";\"Praslavice\";\"ascii\"\n\"3067676\";\"Przaslawitz\";\"other\"\n\"3067696\";\"Praha\";\"main\"\n\"3067696\";\"%E3%83%97%E3%83%A9%E3%83%8F\";\"other\"\n\"3067696\";\"Praag\";\"other\"\n\"3067696\";\"Prag\";\"other\"\n\"3067696\";\"Praga\";\"other\"\n\"3067696\";\"Praga - Praha\";\"other\"\n\"3067696\";\"Pragae\";\"other\"\n\"3067696\";\"Prago\";\"other\"\n\"3067696\";\"Prague\";\"other\"\n\"3067696\";\"Pràg\";\"other\"\n\"3067696\";\"Prág\";\"other\"\n\"3067696\";\"Prága\";\"other\"\n\"3067696\";\"Prâg\";\"other\"\n\"3067696\";\"Prāga\";\"other\"\n\"3067696\";\"bragh\";\"other\"\n\"3067696\";\"bu la ge\";\"other\"\n\"3067696\";\"peulaha\";\"other\"\n\"3067696\";\"prag\";\"other\"\n\"3067696\";\"praga\";\"other\"\n\"3067696\";\"prak\";\"other\"\n\"3067696\";\"prg\";\"other\"\n\"3067696\";\"Πράγα\";\"other\"\n\"3067696\";\"Праг\";\"other\"\n\"3067696\";\"Прагæ\";\"other\"\n\"3067696\";\"Прага\";\"other\"\n\"3067696\";\"פראג\";\"other\"\n\"3067696\";\"براغ\";\"other\"\n\"3067696\";\"پراگ\";\"other\"\n\"3067696\";\"پراگا\";\"other\"\n\"3067696\";\"ܦܪܓ\";\"other\"\n\"3067696\";\"ปราก\";\"other\"\n\"3067696\";\"པུ་ལ་ཁེ\";\"other\"\n\"3067696\";\"პრაღა\";\"other\"\n\"3067696\";\"ፕራግ\";\"other\"\n\"3067696\";\"プラハ\";\"other\"\n\"3067696\";\"布拉格\";\"other\"\n\"3067696\";\"프라하\";\"other\"\n\"3067707\";\"Prachovice\";\"main\"\n\"3067713\";\"Prachatice\";\"main\"\n\"3067713\";\"Prachatitz\";\"other\"\n\"3067723\";\"Pozořice\";\"main\"\n\"3067723\";\"Pozorice\";\"ascii\"\n\"3067723\";\"Posoritz\";\"other\"\n\"3067723\";\"Posořitz\";\"other\"\n\"3067724\";\"Pozlovice\";\"main\"\n\"3067724\";\"Poslowitz\";\"other\"\n\"3067733\";\"Povrly\";\"main\"\n\"3067733\";\"Pomerle\";\"other\"\n\"3067733\";\"Pommerle\";\"other\"\n\"3067733\";\"Pömerle\";\"other\"\n\"3067733\";\"Pömmerle\";\"other\"\n\"3067752\";\"Potštát\";\"main\"\n\"3067752\";\"Potstat\";\"ascii\"\n\"3067752\";\"Bodenstadt\";\"other\"\n\"3067761\";\"Postupice\";\"main\"\n\"3067761\";\"Postupitz\";\"other\"\n\"3067765\";\"Postřelmov\";\"main\"\n\"3067765\";\"Postrelmov\";\"ascii\"\n\"3067765\";\"Gross Heilendorf\";\"other\"\n\"3067766\";\"Postřekov\";\"main\"\n\"3067766\";\"Postrekov\";\"ascii\"\n\"3067770\";\"Postoloprty\";\"main\"\n\"3067770\";\"Postelberg\";\"other\"\n\"3067783\";\"Poříčí nad Sázavou\";\"main\"\n\"3067783\";\"Porici nad Sazavou\";\"ascii\"\n\"3067783\";\"Poric\";\"other\"\n\"3067783\";\"Pořič\";\"other\"\n\"3067789\";\"Poříčany\";\"main\"\n\"3067789\";\"Poricany\";\"ascii\"\n\"3067789\";\"Porican\";\"other\"\n\"3067789\";\"Pořican\";\"other\"\n\"3067816\";\"Popovice\";\"main\"\n\"3067816\";\"Popowitz\";\"other\"\n\"3067834\";\"Poniklá\";\"main\"\n\"3067834\";\"Ponikla\";\"ascii\"\n\"3067834\";\"Pinklau\";\"other\"\n\"3067846\";\"Pomezí\";\"main\"\n\"3067846\";\"Pomezi\";\"ascii\"\n\"3067846\";\"Laubendorf\";\"other\"\n\"3067846\";\"Limberk\";\"other\"\n\"3067870\";\"Polná\";\"main\"\n\"3067870\";\"Polna\";\"ascii\"\n\"3067882\";\"Polička\";\"main\"\n\"3067882\";\"Policka\";\"ascii\"\n\"3067885\";\"Police nad Metují\";\"main\"\n\"3067885\";\"Police nad Metuji\";\"ascii\"\n\"3067885\";\"Politz\";\"other\"\n\"3067892\";\"Polešovice\";\"main\"\n\"3067892\";\"Polesovice\";\"ascii\"\n\"3067892\";\"Poleschowitz\";\"other\"\n\"3067897\";\"Polepy\";\"main\"\n\"3067953\";\"Pohořelice\";\"main\"\n\"3067953\";\"Pohorelice\";\"ascii\"\n\"3067953\";\"Pohrlitz\";\"other\"\n\"3068020\";\"Podolí\";\"main\"\n\"3068020\";\"Podoli\";\"ascii\"\n\"3068020\";\"Kricen\";\"other\"\n\"3068020\";\"Kritschen\";\"other\"\n\"3068020\";\"Kříčeň\";\"other\"\n\"3068066\";\"Podivín\";\"main\"\n\"3068066\";\"Podivin\";\"ascii\"\n\"3068107\";\"Poděbrady\";\"main\"\n\"3068107\";\"Podebrady\";\"ascii\"\n\"3068107\";\"Podebrad\";\"other\"\n\"3068119\";\"Podbořany\";\"main\"\n\"3068119\";\"Podborany\";\"ascii\"\n\"3068119\";\"Podersam\";\"other\"\n\"3068140\";\"Počátky\";\"main\"\n\"3068140\";\"Pocatky\";\"ascii\"\n\"3068140\";\"Pocatek\";\"other\"\n\"3068140\";\"Počátek\";\"other\"\n\"3068150\";\"Poběžovice\";\"main\"\n\"3068150\";\"Pobezovice\";\"ascii\"\n\"3068150\";\"Ronsperg\";\"other\"\n\"3068150\";\"Ronsperk\";\"other\"\n\"3068150\";\"Ronšperk\";\"other\"\n\"3068160\";\"Plzeň\";\"main\"\n\"3068160\";\"Plzen\";\"ascii\"\n\"3068160\";\"Pilsen\";\"other\"\n\"3068160\";\"Pilsna\";\"other\"\n\"3068160\";\"Pilzen\";\"other\"\n\"3068160\";\"Pilzenas\";\"other\"\n\"3068160\";\"Pilzno\";\"other\"\n\"3068160\";\"Pl'zen'\";\"other\"\n\"3068160\";\"Plzena\";\"other\"\n\"3068160\";\"Plzeņa\";\"other\"\n\"3068160\";\"bylzn\";\"other\"\n\"3068160\";\"peuljen\";\"other\"\n\"3068160\";\"piruzen\";\"other\"\n\"3068160\";\"Πίλζεν\";\"other\"\n\"3068160\";\"Πίλσεν\";\"other\"\n\"3068160\";\"Пилзен\";\"other\"\n\"3068160\";\"Плзен\";\"other\"\n\"3068160\";\"Плзењ\";\"other\"\n\"3068160\";\"Пльзень\";\"other\"\n\"3068160\";\"بيلزن\";\"other\"\n\"3068160\";\"ピルゼン\";\"other\"\n\"3068160\";\"플젠\";\"other\"\n\"3068162\";\"Plumlov\";\"main\"\n\"3068162\";\"Plumenau\";\"other\"\n\"3068191\";\"Plesná\";\"main\"\n\"3068191\";\"Plesna\";\"ascii\"\n\"3068191\";\"Fleissen\";\"other\"\n\"3068215\";\"Plavy\";\"main\"\n\"3068222\";\"Plasy\";\"main\"\n\"3068222\";\"Plass\";\"other\"\n\"3068237\";\"Plánice\";\"main\"\n\"3068237\";\"Planice\";\"ascii\"\n\"3068237\";\"Planitz\";\"other\"\n\"3068244\";\"Plaňany\";\"main\"\n\"3068244\";\"Planany\";\"ascii\"\n\"3068244\";\"Planan\";\"other\"\n\"3068244\";\"Plaňan\";\"other\"\n\"3068245\";\"Planá nad Lužnicí\";\"main\"\n\"3068245\";\"Plana nad Luznici\";\"ascii\"\n\"3068245\";\"Plana an der Lusnitz\";\"other\"\n\"3068245\";\"Planá an der Lusnitz\";\"other\"\n\"3068246\";\"Planá\";\"main\"\n\"3068246\";\"Plana\";\"ascii\"\n\"3068246\";\"Plan\";\"other\"\n\"3068279\";\"Píšť\";\"main\"\n\"3068279\";\"Pist'\";\"ascii\"\n\"3068279\";\"Sandau\";\"other\"\n\"3068292\";\"Písek\";\"main\"\n\"3068292\";\"Pisek\";\"ascii\"\n\"3068292\";\"Piasek\";\"other\"\n\"3068292\";\"Piosek\";\"other\"\n\"3068292\";\"Писек\";\"other\"\n\"3068293\";\"Písek\";\"main\"\n\"3068293\";\"Pisek\";\"ascii\"\n\"3068293\";\"Писек\";\"other\"\n\"3068298\";\"Písečná\";\"main\"\n\"3068298\";\"Pisecna\";\"ascii\"\n\"3068298\";\"Sandhubel\";\"other\"\n\"3068298\";\"Sandhybl\";\"other\"\n\"3068298\";\"Sandhübel\";\"other\"\n\"3068298\";\"Sandhýbl\";\"other\"\n\"3068311\";\"Pilníkov\";\"main\"\n\"3068311\";\"Pilnikov\";\"ascii\"\n\"3068311\";\"Pilsdorf\";\"other\"\n\"3068329\";\"Petřvald\";\"main\"\n\"3068329\";\"Petrvald\";\"ascii\"\n\"3068330\";\"Petřvald\";\"main\"\n\"3068330\";\"Petrvald\";\"ascii\"\n\"3068330\";\"Gross Peterswald\";\"other\"\n\"3068345\";\"Petrovice u Karviné\";\"main\"\n\"3068345\";\"Petrovice u Karvine\";\"ascii\"\n\"3068345\";\"Piotrowice kolo Karwiny\";\"other\"\n\"3068345\";\"Piotrowice koło Karwiny\";\"other\"\n\"3068366\";\"Petrovice\";\"main\"\n\"3068366\";\"Petrowitz\";\"other\"\n\"3068383\";\"Petrov\";\"main\"\n\"3068411\";\"Peruc\";\"main\"\n\"3068411\";\"Perutz\";\"other\"\n\"3068415\";\"Perštejn\";\"main\"\n\"3068415\";\"Perstejn\";\"ascii\"\n\"3068415\";\"Purstein\";\"other\"\n\"3068415\";\"Pürstein\";\"other\"\n\"3068437\";\"Pěnčín\";\"main\"\n\"3068437\";\"Pencin\";\"ascii\"\n\"3068445\";\"Pelhřimov\";\"main\"\n\"3068445\";\"Pelhrimov\";\"ascii\"\n\"3068445\";\"Pilgram\";\"other\"\n\"3068476\";\"Pečky\";\"main\"\n\"3068476\";\"Pecky\";\"ascii\"\n\"3068476\";\"Petschek\";\"other\"\n\"3068478\";\"Pecka\";\"main\"\n\"3068494\";\"Pchery\";\"main\"\n\"3068494\";\"Pcher\";\"other\"\n\"3068522\";\"Pavlíkov\";\"main\"\n\"3068522\";\"Pavlikov\";\"ascii\"\n\"3068522\";\"Pawlikow\";\"other\"\n\"3068547\";\"Paskov\";\"main\"\n\"3068547\";\"Paskau\";\"other\"\n\"3068564\";\"Paseka\";\"main\"\n\"3068564\";\"Paseha\";\"other\"\n\"3068564\";\"Passek\";\"other\"\n\"3068582\";\"Pardubice\";\"main\"\n\"3068582\";\"Pardubitz\";\"other\"\n\"3068582\";\"Parntoumpitse\";\"other\"\n\"3068582\";\"Παρντουμπίτσε\";\"other\"\n\"3068582\";\"Пардубице\";\"other\"\n\"3068623\";\"Palkovice\";\"main\"\n\"3068623\";\"Palkowitz\";\"other\"\n\"3068647\";\"Pacov\";\"main\"\n\"3068647\";\"Patzau\";\"other\"\n\"3068689\";\"Otrokovice\";\"main\"\n\"3068689\";\"Bahnak\";\"other\"\n\"3068689\";\"Bahňák\";\"other\"\n\"3068689\";\"Otrokovice-Kvitkovice\";\"other\"\n\"3068689\";\"Otrokovice-Kvítkovice\";\"other\"\n\"3068690\";\"Otrokovice\";\"main\"\n\"3068690\";\"Kvitkovice\";\"other\"\n\"3068690\";\"Kvítkovice\";\"other\"\n\"3068706\";\"Otnice\";\"main\"\n\"3068706\";\"Ottnitz\";\"other\"\n\"3068719\";\"Otice\";\"main\"\n\"3068719\";\"Ottendorf\";\"other\"\n\"3068727\";\"Otaslavice\";\"main\"\n\"3068727\";\"Dolni Otaslavice\";\"other\"\n\"3068727\";\"Dolní Otaslavice\";\"other\"\n\"3068727\";\"Unter Ottaslawitz\";\"other\"\n\"3068750\";\"Ostrožská Nová Ves\";\"main\"\n\"3068750\";\"Ostrozska Nova Ves\";\"ascii\"\n\"3068750\";\"Hradisch\";\"other\"\n\"3068750\";\"Neudorf\";\"other\"\n\"3068751\";\"Ostrožská Lhota\";\"main\"\n\"3068751\";\"Ostrozska Lhota\";\"ascii\"\n\"3068753\";\"Ostrov u Macochy\";\"main\"\n\"3068753\";\"Ostrow\";\"other\"\n\"3068766\";\"Ostrov\";\"main\"\n\"3068766\";\"Ostrov nad Ohri\";\"other\"\n\"3068766\";\"Ostrov nad Ohří\";\"other\"\n\"3068766\";\"Schlackenwerth\";\"other\"\n\"3068785\";\"Ostroměř\";\"main\"\n\"3068785\";\"Ostromer\";\"ascii\"\n\"3068785\";\"Wostromer\";\"other\"\n\"3068785\";\"Wostroměr\";\"other\"\n\"3068797\";\"Ostravice\";\"main\"\n\"3068797\";\"Ostrawica\";\"other\"\n\"3068797\";\"Ostrawitz\";\"other\"\n\"3068797\";\"Ostrawitza\";\"other\"\n\"3068799\";\"Ostrava\";\"main\"\n\"3068799\";\"Ostraba\";\"other\"\n\"3068799\";\"Ostrawa\";\"other\"\n\"3068799\";\"ao si te la wa\";\"other\"\n\"3068799\";\"awstrafa\";\"other\"\n\"3068799\";\"e si te la fa\";\"other\"\n\"3068799\";\"oseuteulaba\";\"other\"\n\"3068799\";\"osutoravu~a\";\"other\"\n\"3068799\";\"Οστράβα\";\"other\"\n\"3068799\";\"Острава\";\"other\"\n\"3068799\";\"אוסטרבה\";\"other\"\n\"3068799\";\"أوسترافا\";\"other\"\n\"3068799\";\"オストラヴァ\";\"other\"\n\"3068799\";\"俄斯特拉發\";\"other\"\n\"3068799\";\"奥斯特拉瓦\";\"other\"\n\"3068799\";\"오스트라바\";\"other\"\n\"3068805\";\"Ostopovice\";\"main\"\n\"3068818\";\"Osoblaha\";\"main\"\n\"3068818\";\"Hotzenplotz\";\"other\"\n\"3068818\";\"Osoblaga\";\"other\"\n\"3068818\";\"Osobłaga\";\"other\"\n\"3068830\";\"Oslavany\";\"main\"\n\"3068830\";\"Oslawan\";\"other\"\n\"3068837\";\"Oskava\";\"main\"\n\"3068837\";\"Oskau\";\"other\"\n\"3068844\";\"Osík\";\"main\"\n\"3068844\";\"Osik\";\"ascii\"\n\"3068856\";\"Osek nad Bečvou\";\"main\"\n\"3068856\";\"Osek nad Becvou\";\"ascii\"\n\"3068856\";\"Osek\";\"other\"\n\"3068857\";\"Osek\";\"main\"\n\"3068857\";\"Ossegg\";\"other\"\n\"3068861\";\"Osek\";\"main\"\n\"3068861\";\"Wosek\";\"other\"\n\"3068867\";\"Osečná\";\"main\"\n\"3068867\";\"Osecna\";\"ascii\"\n\"3068867\";\"Oschitz\";\"other\"\n\"3068873\";\"Orlová\";\"main\"\n\"3068873\";\"Orlova\";\"ascii\"\n\"3068873\";\"Orlau\";\"other\"\n\"3068873\";\"Orlowa\";\"other\"\n\"3068873\";\"Orłowa\";\"other\"\n\"3068873\";\"Орлова\";\"other\"\n\"3068897\";\"Ořechov\";\"main\"\n\"3068897\";\"Orechov\";\"ascii\"\n\"3068897\";\"Gross Urhau\";\"other\"\n\"3068915\";\"Opočno\";\"main\"\n\"3068915\";\"Opocno\";\"ascii\"\n\"3068927\";\"Opava\";\"main\"\n\"3068927\";\"Opawa\";\"other\"\n\"3068927\";\"Oppavia\";\"other\"\n\"3068927\";\"Troppau\";\"other\"\n\"3068927\";\"Опава\";\"other\"\n\"3068933\";\"Opatovice nad Labem\";\"main\"\n\"3068933\";\"Opatovic\";\"other\"\n\"3068933\";\"Opatovice\";\"other\"\n\"3068946\";\"Opatov\";\"main\"\n\"3068946\";\"Abtsdorf\";\"other\"\n\"3068950\";\"Opařany\";\"main\"\n\"3068950\";\"Oparany\";\"ascii\"\n\"3068950\";\"Oporany\";\"other\"\n\"3068950\";\"Opořany\";\"other\"\n\"3068950\";\"Woporan\";\"other\"\n\"3068950\";\"Wopořan\";\"other\"\n\"3068969\";\"Ondřejov\";\"main\"\n\"3068969\";\"Ondrejov\";\"ascii\"\n\"3068969\";\"Ondrejow\";\"other\"\n\"3068969\";\"Ondřejow\";\"other\"\n\"3068997\";\"Olšany\";\"main\"\n\"3068997\";\"Olsany\";\"ascii\"\n\"3069007\";\"Oloví\";\"main\"\n\"3069007\";\"Olovi\";\"ascii\"\n\"3069007\";\"Bleistadt\";\"other\"\n\"3069011\";\"Olomouc\";\"main\"\n\"3069011\";\"Olmuetz\";\"other\"\n\"3069011\";\"Olmütz\";\"other\"\n\"3069011\";\"Olomouca\";\"other\"\n\"3069011\";\"Olomoucas\";\"other\"\n\"3069011\";\"Olomouch\";\"other\"\n\"3069011\";\"Olomuc\";\"other\"\n\"3069011\";\"Olomucium\";\"other\"\n\"3069011\";\"Olomuniec\";\"other\"\n\"3069011\";\"Ołomuniec\";\"other\"\n\"3069011\";\"ao luo mu ke\";\"other\"\n\"3069011\";\"awlwmwts\";\"other\"\n\"3069011\";\"oromoutsu\";\"other\"\n\"3069011\";\"Оломоуц\";\"other\"\n\"3069011\";\"Оломуц\";\"other\"\n\"3069011\";\"أولوموتس\";\"other\"\n\"3069011\";\"オロモウツ\";\"other\"\n\"3069011\";\"奧洛穆克\";\"other\"\n\"3069029\";\"Olešnice\";\"main\"\n\"3069029\";\"Olesnice\";\"ascii\"\n\"3069029\";\"Oels\";\"other\"\n\"3069059\";\"Oldřišov\";\"main\"\n\"3069059\";\"Oldrisov\";\"ascii\"\n\"3069059\";\"Odersch\";\"other\"\n\"3069082\";\"Olbramovice\";\"main\"\n\"3069082\";\"Wolframitz\";\"other\"\n\"3069092\";\"Okrouhlice\";\"main\"\n\"3069092\";\"Okroulitz\";\"other\"\n\"3069098\";\"Okříšky\";\"main\"\n\"3069098\";\"Okrisky\";\"ascii\"\n\"3069098\";\"Okrischka\";\"other\"\n\"3069098\";\"Okrischko\";\"other\"\n\"3069118\";\"Ohrazenice\";\"main\"\n\"3069118\";\"Wohrazenitz\";\"other\"\n\"3069136\";\"Odry\";\"main\"\n\"3069136\";\"Odrau\";\"other\"\n\"3069150\";\"Odolena Voda\";\"main\"\n\"3069150\";\"Wodolka\";\"other\"\n\"3069179\";\"Obrnice\";\"main\"\n\"3069179\";\"Obernitz\";\"other\"\n\"3069221\";\"Obecnice\";\"main\"\n\"3069221\";\"Obecnitz\";\"other\"\n\"3069230\";\"Nýrsko\";\"main\"\n\"3069230\";\"Nyrsko\";\"ascii\"\n\"3069230\";\"Neuern\";\"other\"\n\"3069232\";\"Nýřany\";\"main\"\n\"3069232\";\"Nyrany\";\"ascii\"\n\"3069232\";\"Nurschan\";\"other\"\n\"3069232\";\"Nürschan\";\"other\"\n\"3069236\";\"Nymburk\";\"main\"\n\"3069236\";\"Neuenberg\";\"other\"\n\"3069236\";\"Nimburg\";\"other\"\n\"3069236\";\"Nimburk\";\"other\"\n\"3069236\";\"Нимбурк\";\"other\"\n\"3069238\";\"Nýdek\";\"main\"\n\"3069238\";\"Nydek\";\"ascii\"\n\"3069290\";\"Nový Malín\";\"main\"\n\"3069290\";\"Novy Malin\";\"ascii\"\n\"3069290\";\"Frankstadt\";\"other\"\n\"3069290\";\"Frankstat\";\"other\"\n\"3069290\";\"Frankštát\";\"other\"\n\"3069300\";\"Nový Knín\";\"main\"\n\"3069300\";\"Novy Knin\";\"ascii\"\n\"3069300\";\"Neu Knin\";\"other\"\n\"3069305\";\"Nový Jičín\";\"main\"\n\"3069305\";\"Novy Jicin\";\"ascii\"\n\"3069305\";\"Neutitschein\";\"other\"\n\"3069305\";\"Novi-Jichin\";\"other\"\n\"3069305\";\"Nowy Jiczyn\";\"other\"\n\"3069305\";\"xin yi qin\";\"other\"\n\"3069305\";\"Нови-Йичин\";\"other\"\n\"3069305\";\"新伊钦\";\"other\"\n\"3069308\";\"Nový Hrozenkov\";\"main\"\n\"3069308\";\"Novy Hrozenkov\";\"ascii\"\n\"3069308\";\"Neu-Hrosenkau\";\"other\"\n\"3069377\";\"Nový Bydžov\";\"main\"\n\"3069377\";\"Novy Bydzov\";\"ascii\"\n\"3069377\";\"Neubidschow\";\"other\"\n\"3069377\";\"Novy Budzov\";\"other\"\n\"3069377\";\"Novy Budžov\";\"other\"\n\"3069381\";\"Nový Bor\";\"main\"\n\"3069381\";\"Novy Bor\";\"ascii\"\n\"3069381\";\"Bor u Ceske Lipy\";\"other\"\n\"3069381\";\"Bor u Ceské Lipy\";\"other\"\n\"3069381\";\"Haida\";\"other\"\n\"3069395\";\"Novosedly\";\"main\"\n\"3069395\";\"Neusiedl\";\"other\"\n\"3069398\";\"Novosedlice\";\"main\"\n\"3069398\";\"Weisskirchlitz\";\"other\"\n\"3069422\";\"Nové Veselí\";\"main\"\n\"3069422\";\"Nove Veseli\";\"ascii\"\n\"3069422\";\"Neuwessely\";\"other\"\n\"3069429\";\"Nové Syrovice\";\"main\"\n\"3069429\";\"Nove Syrovice\";\"ascii\"\n\"3069429\";\"Neu Serowitz\";\"other\"\n\"3069431\";\"Nové Strašecí\";\"main\"\n\"3069431\";\"Nove Straseci\";\"ascii\"\n\"3069431\";\"Neustraschitz\";\"other\"\n\"3069437\";\"Nové Sedlo\";\"main\"\n\"3069437\";\"Nove Sedlo\";\"ascii\"\n\"3069437\";\"Neu Sattl\";\"other\"\n\"3069437\";\"Neusattle\";\"other\"\n\"3069464\";\"Nové Město pod Smrkem\";\"main\"\n\"3069464\";\"Nove Mesto pod Smrkem\";\"ascii\"\n\"3069464\";\"Neustadt an der Tafelfichte\";\"other\"\n\"3069464\";\"Nove Mesto\";\"other\"\n\"3069464\";\"Nové Město\";\"other\"\n\"3069465\";\"Nové Město na Moravě\";\"main\"\n\"3069465\";\"Nove Mesto na Morave\";\"ascii\"\n\"3069465\";\"Neustadtl\";\"other\"\n\"3069466\";\"Nové Město nad Metují\";\"main\"\n\"3069466\";\"Nove Mesto nad Metuji\";\"ascii\"\n\"3069466\";\"Neustadt an der Mettau\";\"other\"\n\"3069493\";\"Nové Hrady\";\"main\"\n\"3069493\";\"Nove Hrady\";\"ascii\"\n\"3069493\";\"Gratzen\";\"other\"\n\"3069648\";\"Nová Včelnice\";\"main\"\n\"3069648\";\"Nova Vcelnice\";\"ascii\"\n\"3069648\";\"Vcelnice\";\"other\"\n\"3069648\";\"Včelnice\";\"other\"\n\"3069662\";\"Nová Role\";\"main\"\n\"3069662\";\"Nova Role\";\"ascii\"\n\"3069662\";\"Neu-Rohlau\";\"other\"\n\"3069669\";\"Nová Paka\";\"main\"\n\"3069669\";\"Nova Paka\";\"ascii\"\n\"3069669\";\"Neu Paka\";\"other\"\n\"3069705\";\"Nová Cerekev\";\"main\"\n\"3069705\";\"Nova Cerekev\";\"ascii\"\n\"3069705\";\"Neucerekwe\";\"other\"\n\"3069706\";\"Nová Bystřice\";\"main\"\n\"3069706\";\"Nova Bystrice\";\"ascii\"\n\"3069706\";\"Neu-Bistritz\";\"other\"\n\"3069706\";\"Novy Bystrice\";\"other\"\n\"3069706\";\"Nový Bystřice\";\"other\"\n\"3069720\";\"Nosislav\";\"main\"\n\"3069720\";\"Noslau\";\"other\"\n\"3069738\";\"Nižbor\";\"main\"\n\"3069738\";\"Nizbor\";\"ascii\"\n\"3069744\";\"Nivnice\";\"main\"\n\"3069758\";\"Nezvěstice\";\"main\"\n\"3069758\";\"Nezvestice\";\"ascii\"\n\"3069758\";\"Nezbawietitz\";\"other\"\n\"3069773\";\"Nezamyslice\";\"main\"\n\"3069773\";\"Nezamislitz\";\"other\"\n\"3069785\";\"Neveklov\";\"main\"\n\"3069785\";\"Neweklau\";\"other\"\n\"3069796\";\"Netvořice\";\"main\"\n\"3069796\";\"Netvorice\";\"ascii\"\n\"3069796\";\"Networitz\";\"other\"\n\"3069808\";\"Netolice\";\"main\"\n\"3069808\";\"Netolitz\";\"other\"\n\"3069832\";\"Nesovice\";\"main\"\n\"3069832\";\"Nessowitz\";\"other\"\n\"3069844\";\"Neratovice\";\"main\"\n\"3069844\";\"Nerarovice\";\"other\"\n\"3069844\";\"Neratowitz\";\"other\"\n\"3069862\";\"Nepomuk\";\"main\"\n\"3069900\";\"Němčice nad Hanou\";\"main\"\n\"3069900\";\"Nemcice nad Hanou\";\"ascii\"\n\"3069900\";\"Nemcice na Hane\";\"other\"\n\"3069900\";\"Němčice na Hané\";\"other\"\n\"3069927\";\"Nelahozeves\";\"main\"\n\"3069927\";\"Muhlhausen\";\"other\"\n\"3069927\";\"Mühlhausen\";\"other\"\n\"3069934\";\"Nejdek\";\"main\"\n\"3069934\";\"Neudek\";\"other\"\n\"3069938\";\"Nehvizdy\";\"main\"\n\"3069938\";\"Gross Nehwist\";\"other\"\n\"3069938\";\"Gross-Nehwizd\";\"other\"\n\"3069952\";\"Nedvědice\";\"main\"\n\"3069952\";\"Nedvedice\";\"ascii\"\n\"3069952\";\"Nedweditz\";\"other\"\n\"3069952\";\"Nedwěditz\";\"other\"\n\"3069960\";\"Nedašov\";\"main\"\n\"3069960\";\"Nedasov\";\"ascii\"\n\"3069966\";\"Nedakonice\";\"main\"\n\"3069966\";\"Nedakonitz\";\"other\"\n\"3069980\";\"Nechanice\";\"main\"\n\"3069980\";\"Nechanitz\";\"other\"\n\"3070010\";\"Návsí u Jablunkova\";\"main\"\n\"3070010\";\"Navsi u Jablunkova\";\"ascii\"\n\"3070010\";\"Navsi\";\"other\"\n\"3070010\";\"Nawsie\";\"other\"\n\"3070010\";\"Nawsy\";\"other\"\n\"3070010\";\"Návsí\";\"other\"\n\"3070030\";\"Nasavrky\";\"main\"\n\"3070030\";\"Nassaberg\";\"other\"\n\"3070045\";\"Napajedla\";\"main\"\n\"3070045\";\"Napajedl\";\"other\"\n\"3070054\";\"Náměšť na Hané\";\"main\"\n\"3070054\";\"Namest' na Hane\";\"ascii\"\n\"3070054\";\"Namiescht\";\"other\"\n\"3070055\";\"Náměšť nad Oslavou\";\"main\"\n\"3070055\";\"Namest' nad Oslavou\";\"ascii\"\n\"3070055\";\"Namiest\";\"other\"\n\"3070071\";\"Náklo\";\"main\"\n\"3070071\";\"Naklo\";\"ascii\"\n\"3070122\";\"Náchod\";\"main\"\n\"3070122\";\"Nachod\";\"ascii\"\n\"3070129\";\"Načeradec\";\"main\"\n\"3070129\";\"Naceradec\";\"ascii\"\n\"3070129\";\"Naceradetz\";\"other\"\n\"3070129\";\"Načeradetz\";\"other\"\n\"3070136\";\"Mýto\";\"main\"\n\"3070136\";\"Myto\";\"ascii\"\n\"3070136\";\"Mauth\";\"other\"\n\"3070190\";\"Mutěnice\";\"main\"\n\"3070190\";\"Mutenice\";\"ascii\"\n\"3070190\";\"Mutienitz\";\"other\"\n\"3070204\";\"Mukařov\";\"main\"\n\"3070204\";\"Mukarov\";\"ascii\"\n\"3070204\";\"Mukarschow\";\"other\"\n\"3070223\";\"Mšeno\";\"main\"\n\"3070223\";\"Mseno\";\"ascii\"\n\"3070223\";\"Mscheno\";\"other\"\n\"3070251\";\"Mrákov\";\"main\"\n\"3070251\";\"Mrakov\";\"ascii\"\n\"3070264\";\"Moutnice\";\"main\"\n\"3070271\";\"Mosty u Jablunkova\";\"main\"\n\"3070271\";\"Mosty\";\"other\"\n\"3070276\";\"Mostkovice\";\"main\"\n\"3070282\";\"Mostek\";\"main\"\n\"3070282\";\"Mastig\";\"other\"\n\"3070291\";\"Most\";\"main\"\n\"3070291\";\"Bruex\";\"other\"\n\"3070291\";\"Brüx\";\"other\"\n\"3070291\";\"Мост\";\"other\"\n\"3070299\";\"Mořkov\";\"main\"\n\"3070299\";\"Morkov\";\"ascii\"\n\"3070299\";\"Murk\";\"other\"\n\"3070306\";\"Moravský Žižkov\";\"main\"\n\"3070306\";\"Moravsky Zizkov\";\"ascii\"\n\"3070308\";\"Moravský Písek\";\"main\"\n\"3070308\";\"Moravsky Pisek\";\"ascii\"\n\"3070310\";\"Moravský Krumlov\";\"main\"\n\"3070310\";\"Moravsky Krumlov\";\"ascii\"\n\"3070310\";\"Mahrisch Kromau\";\"other\"\n\"3070310\";\"Mährisch Kromau\";\"other\"\n\"3070314\";\"Moravský Beroun\";\"main\"\n\"3070314\";\"Moravsky Beroun\";\"ascii\"\n\"3070314\";\"Barn\";\"other\"\n\"3070314\";\"Beroun\";\"other\"\n\"3070314\";\"Bärn\";\"other\"\n\"3070323\";\"Moravské Budějovice\";\"main\"\n\"3070323\";\"Moravske Budejovice\";\"ascii\"\n\"3070323\";\"Mahrisch-Budwitz\";\"other\"\n\"3070323\";\"Mährisch-Budwitz\";\"other\"\n\"3070325\";\"Moravská Třebová\";\"main\"\n\"3070325\";\"Moravska Trebova\";\"ascii\"\n\"3070325\";\"Mahrisch Trubau\";\"other\"\n\"3070325\";\"Mährisch Trübau\";\"other\"\n\"3070329\";\"Moravská Nová Ves\";\"main\"\n\"3070329\";\"Moravska Nova Ves\";\"ascii\"\n\"3070339\";\"Morávka\";\"main\"\n\"3070339\";\"Moravka\";\"ascii\"\n\"3070339\";\"Morawka\";\"other\"\n\"3070344\";\"Moravičany\";\"main\"\n\"3070344\";\"Moravicany\";\"ascii\"\n\"3070344\";\"Morawiczan\";\"other\"\n\"3070354\";\"Moravany\";\"main\"\n\"3070354\";\"Morawan\";\"other\"\n\"3070356\";\"Moravany\";\"main\"\n\"3070356\";\"Morbes\";\"other\"\n\"3070383\";\"Mokré Lazce\";\"main\"\n\"3070383\";\"Mokre Lazce\";\"ascii\"\n\"3070390\";\"Mokrá Hora\";\"main\"\n\"3070390\";\"Mokra Hora\";\"ascii\"\n\"3070404\";\"Mohelno\";\"main\"\n\"3070409\";\"Mohelnice\";\"main\"\n\"3070409\";\"Muglitz\";\"other\"\n\"3070409\";\"Müglitz\";\"other\"\n\"3070416\";\"Modřice\";\"main\"\n\"3070416\";\"Modrice\";\"ascii\"\n\"3070416\";\"Modritz\";\"other\"\n\"3070416\";\"Mödritz\";\"other\"\n\"3070420\";\"Modřany\";\"main\"\n\"3070420\";\"Modrany\";\"ascii\"\n\"3070420\";\"Modran\";\"other\"\n\"3070420\";\"Modrzhany\";\"other\"\n\"3070420\";\"Modřan\";\"other\"\n\"3070420\";\"Модржаны\";\"other\"\n\"3070446\";\"Mníšek pod Brdy\";\"main\"\n\"3070446\";\"Mnisek pod Brdy\";\"ascii\"\n\"3070446\";\"Mnischek\";\"other\"\n\"3070446\";\"Mnisek\";\"other\"\n\"3070447\";\"Mníšek\";\"main\"\n\"3070447\";\"Mnisek\";\"ascii\"\n\"3070447\";\"Einsiedel\";\"other\"\n\"3070447\";\"Mnisk\";\"other\"\n\"3070451\";\"Mnichovo Hradiště\";\"main\"\n\"3070451\";\"Mnichovo Hradiste\";\"ascii\"\n\"3070451\";\"Mnikhovo Gradishte\";\"other\"\n\"3070451\";\"Muenchengraetz\";\"other\"\n\"3070451\";\"Münchengrätz\";\"other\"\n\"3070451\";\"Мнихово Градиште\";\"other\"\n\"3070451\";\"ムニホヴォ・フラジシチェ\";\"other\"\n\"3070452\";\"Mnichovice\";\"main\"\n\"3070452\";\"Mnichowitz\";\"other\"\n\"3070537\";\"Mladé Buky\";\"main\"\n\"3070537\";\"Mlade Buky\";\"ascii\"\n\"3070537\";\"Jungbuch\";\"other\"\n\"3070542\";\"Mladá Vožice\";\"main\"\n\"3070542\";\"Mlada Vozice\";\"ascii\"\n\"3070542\";\"Jungwoschitz\";\"other\"\n\"3070542\";\"Male Vozice\";\"other\"\n\"3070542\";\"Malé Vožice\";\"other\"\n\"3070544\";\"Mladá Boleslav\";\"main\"\n\"3070544\";\"Mlada Boleslav\";\"ascii\"\n\"3070544\";\"Jungbunzlau\";\"other\"\n\"3070544\";\"Mlada Boleslaz\";\"other\"\n\"3070544\";\"Mlada-Boleslav\";\"other\"\n\"3070544\";\"Млада-Болеслав\";\"other\"\n\"3070557\";\"Mistřice\";\"main\"\n\"3070557\";\"Mistrice\";\"ascii\"\n\"3070557\";\"Mistritz\";\"other\"\n\"3070575\";\"Mirovice\";\"main\"\n\"3070575\";\"Mirowitz\";\"other\"\n\"3070580\";\"Mirotice\";\"main\"\n\"3070580\";\"Mirotitz\";\"other\"\n\"3070584\";\"Mirošov\";\"main\"\n\"3070584\";\"Mirosov\";\"ascii\"\n\"3070584\";\"Miroschau\";\"other\"\n\"3070584\";\"Miröschau\";\"other\"\n\"3070593\";\"Miroslav\";\"main\"\n\"3070593\";\"Misslitz\";\"other\"\n\"3070603\";\"Miřetice\";\"main\"\n\"3070603\";\"Miretice\";\"ascii\"\n\"3070622\";\"Mimoň\";\"main\"\n\"3070622\";\"Mimon\";\"ascii\"\n\"3070622\";\"Niemes\";\"other\"\n\"3070628\";\"Milovice\";\"main\"\n\"3070628\";\"Milowitz\";\"other\"\n\"3070640\";\"Milotice\";\"main\"\n\"3070661\";\"Milín\";\"main\"\n\"3070661\";\"Milin\";\"ascii\"\n\"3070666\";\"Milíkov\";\"main\"\n\"3070666\";\"Milikov\";\"ascii\"\n\"3070678\";\"Milevsko\";\"main\"\n\"3070678\";\"Muhlhausen\";\"other\"\n\"3070678\";\"Mühlhausen\";\"other\"\n\"3070715\";\"Mikulovice\";\"main\"\n\"3070715\";\"Niklasdorf\";\"other\"\n\"3070720\";\"Mikulov\";\"main\"\n\"3070720\";\"Nickolsburg\";\"other\"\n\"3070720\";\"Nikolov\";\"other\"\n\"3070720\";\"Nikolsburg\";\"other\"\n\"3070724\";\"Mikulčice\";\"main\"\n\"3070724\";\"Mikulcice\";\"ascii\"\n\"3070725\";\"Mikulášovice\";\"main\"\n\"3070725\";\"Mikulasovice\";\"ascii\"\n\"3070725\";\"Nixdorf\";\"other\"\n\"3070774\";\"Meziměstí\";\"main\"\n\"3070774\";\"Mezimesti\";\"ascii\"\n\"3070774\";\"Halbstadt\";\"other\"\n\"3070774\";\"Mesimesti\";\"other\"\n\"3070774\";\"Mesiměstí\";\"other\"\n\"3070792\";\"Meziboři\";\"main\"\n\"3070792\";\"Mezibori\";\"ascii\"\n\"3070792\";\"Schonbach\";\"other\"\n\"3070792\";\"Schönbach\";\"other\"\n\"3070800\";\"Metylovice\";\"main\"\n\"3070814\";\"Město Touškov\";\"main\"\n\"3070814\";\"Mesto Touskov\";\"ascii\"\n\"3070814\";\"Touskov\";\"other\"\n\"3070814\";\"Touškov\";\"other\"\n\"3070814\";\"Tuschkau Stadt\";\"other\"\n\"3070816\";\"Město Libavá\";\"main\"\n\"3070816\";\"Mesto Libava\";\"ascii\"\n\"3070816\";\"Libava\";\"other\"\n\"3070816\";\"Libavá\";\"other\"\n\"3070816\";\"Stadt Liebau\";\"other\"\n\"3070819\";\"Město Albrechtice\";\"main\"\n\"3070819\";\"Mesto Albrechtice\";\"ascii\"\n\"3070819\";\"Albrechtice\";\"other\"\n\"3070819\";\"Olbersdorf\";\"other\"\n\"3070819\";\"Olbersdorf Stadt\";\"other\"\n\"3070819\";\"Olbrachcice\";\"other\"\n\"3070820\";\"Město\";\"main\"\n\"3070820\";\"Mesto\";\"ascii\"\n\"3070820\";\"Meste Tepla\";\"other\"\n\"3070820\";\"Měste Teplá\";\"other\"\n\"3070820\";\"Tepl\";\"other\"\n\"3070820\";\"Tepl Stadt\";\"other\"\n\"3070820\";\"Tepla\";\"other\"\n\"3070820\";\"Teplá\";\"other\"\n\"3070822\";\"Městec Králové\";\"main\"\n\"3070822\";\"Mestec Kralove\";\"ascii\"\n\"3070822\";\"Konigstadtl\";\"other\"\n\"3070822\";\"Königstadtl\";\"other\"\n\"3070823\";\"Městečko Trnávka\";\"main\"\n\"3070823\";\"Mestecko Trnavka\";\"ascii\"\n\"3070823\";\"Markt Turnau\";\"other\"\n\"3070823\";\"Markt Türnau\";\"other\"\n\"3070823\";\"Trnavka\";\"other\"\n\"3070823\";\"Trnávka\";\"other\"\n\"3070823\";\"Turnau\";\"other\"\n\"3070823\";\"Türnau\";\"other\"\n\"3070834\";\"Měšice\";\"main\"\n\"3070834\";\"Mesice\";\"ascii\"\n\"3070844\";\"Merklín\";\"main\"\n\"3070844\";\"Merklin\";\"ascii\"\n\"3070844\";\"Merkelsgrun\";\"other\"\n\"3070844\";\"Merkelsgrün\";\"other\"\n\"3070844\";\"Merklin u Karlovych Var\";\"other\"\n\"3070844\";\"Merklín u Karlových Var\";\"other\"\n\"3070845\";\"Merklín\";\"main\"\n\"3070845\";\"Merklin\";\"ascii\"\n\"3070847\";\"Měřín\";\"main\"\n\"3070847\";\"Merin\";\"ascii\"\n\"3070847\";\"Wollein\";\"other\"\n\"3070853\";\"Měnín\";\"main\"\n\"3070853\";\"Menin\";\"ascii\"\n\"3070853\";\"Monitz\";\"other\"\n\"3070853\";\"Mönitz\";\"other\"\n\"3070862\";\"Mělník\";\"main\"\n\"3070862\";\"Melnik\";\"ascii\"\n\"3070862\";\"Mel'nik\";\"other\"\n\"3070862\";\"mlnyk\";\"other\"\n\"3070862\";\"Мельник\";\"other\"\n\"3070862\";\"ملنیک\";\"other\"\n\"3070886\";\"Medlov\";\"main\"\n\"3070886\";\"Meedl\";\"other\"\n\"3070899\";\"Meclov\";\"main\"\n\"3070899\";\"Metzling\";\"other\"\n\"3070902\";\"Měčín\";\"main\"\n\"3070902\";\"Mecin\";\"ascii\"\n\"3070906\";\"Měcholupy\";\"main\"\n\"3070906\";\"Mecholupy\";\"ascii\"\n\"3070906\";\"Michelob\";\"other\"\n\"3070995\";\"Markvartovice\";\"main\"\n\"3070995\";\"Markersdorf\";\"other\"\n\"3071024\";\"Mariánské Lázně\";\"main\"\n\"3071024\";\"Marianske Lazne\";\"ascii\"\n\"3071024\";\"Marienbad\";\"other\"\n\"3071024\";\"Mariënbad\";\"other\"\n\"3071024\";\"マリアーンスケー・ラーズニェ\";\"other\"\n\"3071046\";\"Manětín\";\"main\"\n\"3071046\";\"Manetin\";\"ascii\"\n\"3071099\";\"Malšice\";\"main\"\n\"3071099\";\"Malsice\";\"ascii\"\n\"3071099\";\"Malschitz\";\"other\"\n\"3071110\";\"Malonty\";\"main\"\n\"3071110\";\"Meinetschlag\";\"other\"\n\"3071148\";\"Malé Svatoňovice\";\"main\"\n\"3071148\";\"Male Svatonovice\";\"ascii\"\n\"3071148\";\"Klein Schwadowitz\";\"other\"\n\"3071213\";\"Malá Strana\";\"main\"\n\"3071213\";\"Mala Strana\";\"ascii\"\n\"3071213\";\"Kisoldal\";\"other\"\n\"3071213\";\"Malgranda Kvartalo de Prago\";\"other\"\n\"3071213\";\"Prager Kleinseite\";\"other\"\n\"3071213\";\"Μάλα Στράνα\";\"other\"\n\"3071223\";\"Malá Skála\";\"main\"\n\"3071223\";\"Mala Skala\";\"ascii\"\n\"3071272\";\"Majetín\";\"main\"\n\"3071272\";\"Majetin\";\"ascii\"\n\"3071289\";\"Machov\";\"main\"\n\"3071289\";\"Machau\";\"other\"\n\"3071302\";\"Lysice\";\"main\"\n\"3071302\";\"Lissitz\";\"other\"\n\"3071304\";\"Lysá nad Labem\";\"main\"\n\"3071304\";\"Lysa nad Labem\";\"ascii\"\n\"3071304\";\"Lissa an der Elbe\";\"other\"\n\"3071319\";\"Lužná\";\"main\"\n\"3071319\";\"Luzna\";\"ascii\"\n\"3071330\";\"Lužice\";\"main\"\n\"3071330\";\"Luzice\";\"ascii\"\n\"3071333\";\"Lužec nad Vltavou\";\"main\"\n\"3071333\";\"Luzec nad Vltavou\";\"ascii\"\n\"3071333\";\"Luzec\";\"other\"\n\"3071339\";\"Luže\";\"main\"\n\"3071339\";\"Luze\";\"ascii\"\n\"3071350\";\"Lutín\";\"main\"\n\"3071350\";\"Lutin\";\"ascii\"\n\"3071350\";\"Luttein\";\"other\"\n\"3071351\";\"Luštěnice\";\"main\"\n\"3071351\";\"Lustenice\";\"ascii\"\n\"3071351\";\"Luschtenitz\";\"other\"\n\"3071351\";\"Luschtěnitz\";\"other\"\n\"3071374\";\"Lukov\";\"main\"\n\"3071381\";\"Lukavice\";\"main\"\n\"3071388\";\"Lukavec\";\"main\"\n\"3071388\";\"Lukawetz\";\"other\"\n\"3071390\";\"Luka nad Jihlavou\";\"main\"\n\"3071390\";\"Wiese\";\"other\"\n\"3071407\";\"Luhačovice\";\"main\"\n\"3071407\";\"Luhacovice\";\"ascii\"\n\"3071407\";\"Luhatschowitz\";\"other\"\n\"3071429\";\"Ludgeřovice\";\"main\"\n\"3071429\";\"Ludgerovice\";\"ascii\"\n\"3071429\";\"Ludgerstal\";\"other\"\n\"3071447\";\"Lučany nad Nisou\";\"main\"\n\"3071447\";\"Lucany nad Nisou\";\"ascii\"\n\"3071447\";\"Lucany\";\"other\"\n\"3071447\";\"Lučany\";\"other\"\n\"3071447\";\"Wiesenthal\";\"other\"\n\"3071447\";\"Wiesenthal an der Neisse\";\"other\"\n\"3071448\";\"Luby\";\"main\"\n\"3071448\";\"Schoenbach\";\"other\"\n\"3071448\";\"Schonbach\";\"other\"\n\"3071448\";\"Schönbach\";\"other\"\n\"3071467\";\"Lubenec\";\"main\"\n\"3071467\";\"Lubenz\";\"other\"\n\"3071480\";\"Lovosice\";\"main\"\n\"3071480\";\"Lavosice\";\"other\"\n\"3071480\";\"Lobositz\";\"other\"\n\"3071507\";\"Louny\";\"main\"\n\"3071507\";\"Laun\";\"other\"\n\"3071529\";\"Louka\";\"main\"\n\"3071532\";\"Loučovice\";\"main\"\n\"3071532\";\"Loucovice\";\"ascii\"\n\"3071532\";\"Bolechy\";\"other\"\n\"3071532\";\"Wullachen\";\"other\"\n\"3071533\";\"Loučovice\";\"main\"\n\"3071533\";\"Loucovice\";\"ascii\"\n\"3071533\";\"Kienberg\";\"other\"\n\"3071536\";\"Loučná nad Desnou\";\"main\"\n\"3071536\";\"Loucna nad Desnou\";\"ascii\"\n\"3071536\";\"Vizmberk\";\"other\"\n\"3071536\";\"Vízmberk\";\"other\"\n\"3071536\";\"Wiesenberg\";\"other\"\n\"3071571\";\"Loučeň\";\"main\"\n\"3071571\";\"Loucen\";\"ascii\"\n\"3071571\";\"Lautschin\";\"other\"\n\"3071579\";\"Loštice\";\"main\"\n\"3071579\";\"Lostice\";\"ascii\"\n\"3071579\";\"Loschitz\";\"other\"\n\"3071602\";\"Lom u Mostu\";\"main\"\n\"3071602\";\"Bruch\";\"other\"\n\"3071602\";\"Lom\";\"other\"\n\"3071606\";\"Lomnice nad Popelkou\";\"main\"\n\"3071606\";\"Lomnice\";\"other\"\n\"3071606\";\"Lomnitz an der Popelka\";\"other\"\n\"3071607\";\"Lomnice nad Lužnicí\";\"main\"\n\"3071607\";\"Lomnice nad Luznici\";\"ascii\"\n\"3071607\";\"Lomnice na Luznici\";\"other\"\n\"3071607\";\"Lomnice na Lužnicí\";\"other\"\n\"3071607\";\"Lomnitz\";\"other\"\n\"3071609\";\"Lomnice\";\"main\"\n\"3071609\";\"Lanz\";\"other\"\n\"3071611\";\"Lomnice\";\"main\"\n\"3071611\";\"Lomnitz\";\"other\"\n\"3071627\";\"Loket\";\"main\"\n\"3071627\";\"Elbogen\";\"other\"\n\"3071627\";\"Локет\";\"other\"\n\"3071643\";\"Loděnice\";\"main\"\n\"3071643\";\"Lodenice\";\"ascii\"\n\"3071643\";\"Lodenitz\";\"other\"\n\"3071645\";\"Lochovice\";\"main\"\n\"3071645\";\"Lochowitz\";\"other\"\n\"3071664\";\"Litvínovice\";\"main\"\n\"3071664\";\"Litvinovice\";\"ascii\"\n\"3071664\";\"Leitowitz\";\"other\"\n\"3071665\";\"Litvínov\";\"main\"\n\"3071665\";\"Litvinov\";\"ascii\"\n\"3071665\";\"Oberleutensdorf\";\"other\"\n\"3071665\";\"Литвинов\";\"other\"\n\"3071669\";\"Litovel\";\"main\"\n\"3071669\";\"Littau\";\"other\"\n\"3071675\";\"Litomyšl\";\"main\"\n\"3071675\";\"Litomysl\";\"ascii\"\n\"3071675\";\"Leitomischl\";\"other\"\n\"3071677\";\"Litoměřice\";\"main\"\n\"3071677\";\"Litomerice\";\"ascii\"\n\"3071677\";\"Leitmeritz\";\"other\"\n\"3071677\";\"Litomerzhice\";\"other\"\n\"3071677\";\"Литомержице\";\"other\"\n\"3071709\";\"Lišov\";\"main\"\n\"3071709\";\"Lisov\";\"ascii\"\n\"3071709\";\"Lischau\";\"other\"\n\"3071759\";\"Lipůvka\";\"main\"\n\"3071759\";\"Lipuvka\";\"ascii\"\n\"3071759\";\"Lipuwka\";\"other\"\n\"3071762\";\"Liptál\";\"main\"\n\"3071762\";\"Liptal\";\"ascii\"\n\"3071762\";\"Lipove\";\"other\"\n\"3071762\";\"Lipové\";\"other\"\n\"3071762\";\"Lipthal\";\"other\"\n\"3071771\";\"Lipovec\";\"main\"\n\"3071771\";\"Lipowetz\";\"other\"\n\"3071782\";\"Lipov\";\"main\"\n\"3071791\";\"Lipník nad Bečvou\";\"main\"\n\"3071791\";\"Lipnik nad Becvou\";\"ascii\"\n\"3071791\";\"Lipnik\";\"other\"\n\"3071791\";\"Lipník\";\"other\"\n\"3071839\";\"Lípa\";\"main\"\n\"3071839\";\"Lipa\";\"ascii\"\n\"3071844\";\"Líně\";\"main\"\n\"3071844\";\"Line\";\"ascii\"\n\"3071844\";\"Lihn\";\"other\"\n\"3071863\";\"Lidečko\";\"main\"\n\"3071863\";\"Lidecko\";\"ascii\"\n\"3071863\";\"Lidetschko\";\"other\"\n\"3071874\";\"Lichnov\";\"main\"\n\"3071874\";\"Lichnow\";\"other\"\n\"3071874\";\"Lichnów\";\"other\"\n\"3071874\";\"Lichten\";\"other\"\n\"3071875\";\"Lichnov\";\"main\"\n\"3071875\";\"Lichnau\";\"other\"\n\"3071881\";\"Libušín\";\"main\"\n\"3071881\";\"Libusin\";\"ascii\"\n\"3071881\";\"Libuschin\";\"other\"\n\"3071895\";\"Libouchec\";\"main\"\n\"3071895\";\"Konigswald\";\"other\"\n\"3071895\";\"Königswald\";\"other\"\n\"3071911\";\"Libochovice\";\"main\"\n\"3071911\";\"Libochowitz\";\"other\"\n\"3071937\";\"Libiš\";\"main\"\n\"3071937\";\"Libis\";\"ascii\"\n\"3071937\";\"Libisch\";\"other\"\n\"3071947\";\"Libice nad Cidlinou\";\"main\"\n\"3071947\";\"Libice\";\"other\"\n\"3071947\";\"Libice Cidlinou\";\"other\"\n\"3071947\";\"Libitz\";\"other\"\n\"3071951\";\"Líbeznice\";\"main\"\n\"3071951\";\"Libeznice\";\"ascii\"\n\"3071951\";\"Libeznitz\";\"other\"\n\"3071955\";\"Liběšice\";\"main\"\n\"3071955\";\"Libesice\";\"ascii\"\n\"3071955\";\"Libeschitz\";\"other\"\n\"3071961\";\"Liberec\";\"main\"\n\"3071961\";\"Liberecas\";\"other\"\n\"3071961\";\"Reichenberg\";\"other\"\n\"3071961\";\"lybyryts\";\"other\"\n\"3071961\";\"Либерец\";\"other\"\n\"3071961\";\"ليبيريتس\";\"other\"\n\"3071966\";\"Libeň\";\"main\"\n\"3071966\";\"Liben\";\"ascii\"\n\"3071980\";\"Libčice nad Vltavou\";\"main\"\n\"3071980\";\"Libcice nad Vltavou\";\"ascii\"\n\"3071980\";\"Libschitz\";\"other\"\n\"3071980\";\"Libsice\";\"other\"\n\"3071980\";\"Libšice\";\"other\"\n\"3071990\";\"Libáň\";\"main\"\n\"3071990\";\"Liban\";\"ascii\"\n\"3072111\";\"Lhenice\";\"main\"\n\"3072111\";\"Elhenitz\";\"other\"\n\"3072130\";\"Letovice\";\"main\"\n\"3072130\";\"Lettowitz\";\"other\"\n\"3072133\";\"Letonice\";\"main\"\n\"3072133\";\"Letonitz\";\"other\"\n\"3072134\";\"Letohrad\";\"main\"\n\"3072134\";\"Geiersberg\";\"other\"\n\"3072134\";\"Kysperk\";\"other\"\n\"3072134\";\"Kyšperk\";\"other\"\n\"3072134\";\"Supi Hora\";\"other\"\n\"3072134\";\"Supí Hora\";\"other\"\n\"3072137\";\"Letňany\";\"main\"\n\"3072137\";\"Letnany\";\"ascii\"\n\"3072137\";\"Letnan\";\"other\"\n\"3072137\";\"Letňan\";\"other\"\n\"3072155\";\"Leština\";\"main\"\n\"3072155\";\"Lestina\";\"ascii\"\n\"3072155\";\"Lesche\";\"other\"\n\"3072184\";\"Lešná\";\"main\"\n\"3072184\";\"Lesna\";\"ascii\"\n\"3072184\";\"Lesne\";\"other\"\n\"3072184\";\"Lešne\";\"other\"\n\"3072184\";\"Loschna\";\"other\"\n\"3072184\";\"Löschna\";\"other\"\n\"3072221\";\"Lenešice\";\"main\"\n\"3072221\";\"Lenesice\";\"ascii\"\n\"3072221\";\"Leneschitz\";\"other\"\n\"3072224\";\"Lelekovice\";\"main\"\n\"3072224\";\"Lelekowitz\";\"other\"\n\"3072232\";\"Lednice\";\"main\"\n\"3072232\";\"Eisgrub\";\"other\"\n\"3072234\";\"Ledenice\";\"main\"\n\"3072235\";\"Ledeč nad Sázavou\";\"main\"\n\"3072235\";\"Ledec nad Sazavou\";\"ascii\"\n\"3072235\";\"Ledec\";\"other\"\n\"3072235\";\"Ledec na Sazave\";\"other\"\n\"3072235\";\"Ledeč\";\"other\"\n\"3072235\";\"Ledeč na Sazavé\";\"other\"\n\"3072265\";\"Lázně Kynžvart\";\"main\"\n\"3072265\";\"Lazne Kynzvart\";\"ascii\"\n\"3072265\";\"Bad Konigswart\";\"other\"\n\"3072265\";\"Bad Königswart\";\"other\"\n\"3072268\";\"Lázně Bělohrad\";\"main\"\n\"3072268\";\"Lazne Belohrad\";\"ascii\"\n\"3072268\";\"Bad Belohrad\";\"other\"\n\"3072319\";\"Lanžhot\";\"main\"\n\"3072319\";\"Lanzhot\";\"ascii\"\n\"3072319\";\"Landshut\";\"other\"\n\"3072325\";\"Lány\";\"main\"\n\"3072325\";\"Lany\";\"ascii\"\n\"3072325\";\"Lana\";\"other\"\n\"3072332\";\"Lanškroun\";\"main\"\n\"3072332\";\"Lanskroun\";\"ascii\"\n\"3072332\";\"Landskron\";\"other\"\n\"3072394\";\"Kynšperk nad Ohří\";\"main\"\n\"3072394\";\"Kynsperk nad Ohri\";\"ascii\"\n\"3072394\";\"Konigsberg\";\"other\"\n\"3072394\";\"Konigsberg an der Eger\";\"other\"\n\"3072394\";\"Kynsperk\";\"other\"\n\"3072394\";\"Königsberg\";\"other\"\n\"3072394\";\"Königsberg an der Eger\";\"other\"\n\"3072407\";\"Kyjov\";\"main\"\n\"3072407\";\"Gaya\";\"other\"\n\"3072449\";\"Kvasiny\";\"main\"\n\"3072449\";\"Kwasnei\";\"other\"\n\"3072451\";\"Kvasice\";\"main\"\n\"3072451\";\"Kwassitz\";\"other\"\n\"3072463\";\"Kutná Hora\";\"main\"\n\"3072463\";\"Kutna Hora\";\"ascii\"\n\"3072463\";\"Kutna-Gora\";\"other\"\n\"3072463\";\"Kuttenberg\";\"other\"\n\"3072463\";\"gu te na huo la\";\"other\"\n\"3072463\";\"ku te na huo la\";\"other\"\n\"3072463\";\"kuteuna hola\";\"other\"\n\"3072463\";\"Кутна-Гора\";\"other\"\n\"3072463\";\"古特纳霍拉\";\"other\"\n\"3072463\";\"库特纳霍拉\";\"other\"\n\"3072463\";\"쿠트나 호라\";\"other\"\n\"3072476\";\"Kuřim\";\"main\"\n\"3072476\";\"Kurim\";\"ascii\"\n\"3072476\";\"Gurein\";\"other\"\n\"3072483\";\"Kunžak\";\"main\"\n\"3072483\";\"Kunzak\";\"ascii\"\n\"3072483\";\"Konigseck\";\"other\"\n\"3072483\";\"Königseck\";\"other\"\n\"3072484\";\"Kunvald\";\"main\"\n\"3072484\";\"Kunwald\";\"other\"\n\"3072486\";\"Kunštát\";\"main\"\n\"3072486\";\"Kunstat\";\"ascii\"\n\"3072486\";\"Kunstadt\";\"other\"\n\"3072497\";\"Kunovice\";\"main\"\n\"3072497\";\"Kunowitz\";\"other\"\n\"3072503\";\"Kunín\";\"main\"\n\"3072503\";\"Kunin\";\"ascii\"\n\"3072503\";\"Kunewald\";\"other\"\n\"3072503\";\"Kunvald\";\"other\"\n\"3072527\";\"Kunčina\";\"main\"\n\"3072527\";\"Kuncina\";\"ascii\"\n\"3072527\";\"Kunzendorf\";\"other\"\n\"3072531\";\"Kunčice pod Ondřejníkem\";\"main\"\n\"3072531\";\"Kuncice pod Ondrejnikem\";\"ascii\"\n\"3072531\";\"Kuntschitz\";\"other\"\n\"3072581\";\"Kryry\";\"main\"\n\"3072581\";\"Kriegern\";\"other\"\n\"3072598\";\"Krupka\";\"main\"\n\"3072598\";\"Graupen\";\"other\"\n\"3072605\";\"Krumvíř\";\"main\"\n\"3072605\";\"Krumvir\";\"ascii\"\n\"3072638\";\"Krouna\";\"main\"\n\"3072638\";\"Krauna\";\"other\"\n\"3072649\";\"Kroměříž\";\"main\"\n\"3072649\";\"Kromeriz\";\"ascii\"\n\"3072649\";\"Kremsier\";\"other\"\n\"3072649\";\"Kromerizas\";\"other\"\n\"3072649\";\"Kromerižas\";\"other\"\n\"3072649\";\"Kromnerzhizh\";\"other\"\n\"3072649\";\"Кромнержиж\";\"other\"\n\"3072656\";\"Krnov\";\"main\"\n\"3072656\";\"Jaegerndorf\";\"other\"\n\"3072656\";\"Jägerndorf\";\"other\"\n\"3072656\";\"Karniow\";\"other\"\n\"3072656\";\"Karníow\";\"other\"\n\"3072656\";\"Крнов\";\"other\"\n\"3072661\";\"Krmelín\";\"main\"\n\"3072661\";\"Krmelin\";\"ascii\"\n\"3072675\";\"Křížová\";\"main\"\n\"3072675\";\"Krizova\";\"ascii\"\n\"3072675\";\"Kreuzberg\";\"other\"\n\"3072675\";\"Krucemburk\";\"other\"\n\"3072693\";\"Křižanov\";\"main\"\n\"3072693\";\"Krizanov\";\"ascii\"\n\"3072693\";\"Krizanau\";\"other\"\n\"3072693\";\"Křižanau\";\"other\"\n\"3072717\";\"Křinec\";\"main\"\n\"3072717\";\"Krinec\";\"ascii\"\n\"3072717\";\"Krinetz\";\"other\"\n\"3072717\";\"Křinetz\";\"other\"\n\"3072748\";\"Křešice\";\"main\"\n\"3072748\";\"Kresice\";\"ascii\"\n\"3072748\";\"Krzeschitz\";\"other\"\n\"3072760\";\"Křepice\";\"main\"\n\"3072760\";\"Krepice\";\"ascii\"\n\"3072771\";\"Křenovice\";\"main\"\n\"3072771\";\"Krenovice\";\"ascii\"\n\"3072771\";\"Krenowitz\";\"other\"\n\"3072781\";\"Křemže\";\"main\"\n\"3072781\";\"Kremze\";\"ascii\"\n\"3072781\";\"Krems\";\"other\"\n\"3072841\";\"Kravaře\";\"main\"\n\"3072841\";\"Kravare\";\"ascii\"\n\"3072841\";\"Deutsch\";\"other\"\n\"3072841\";\"Krawarn\";\"other\"\n\"3072889\";\"Krásná Lípa\";\"main\"\n\"3072889\";\"Krasna Lipa\";\"ascii\"\n\"3072889\";\"Schonlind\";\"other\"\n\"3072889\";\"Schonlinde\";\"other\"\n\"3072889\";\"Schönlind\";\"other\"\n\"3072889\";\"Schönlinde\";\"other\"\n\"3072890\";\"Krásná Lípa\";\"main\"\n\"3072890\";\"Krasna Lipa\";\"ascii\"\n\"3072890\";\"Schonlind\";\"other\"\n\"3072890\";\"Schönlind\";\"other\"\n\"3072894\";\"Krásná Hora nad Vltavou\";\"main\"\n\"3072894\";\"Krasna Hora nad Vltavou\";\"ascii\"\n\"3072894\";\"Krasna Hora\";\"other\"\n\"3072894\";\"Krásná Hora\";\"other\"\n\"3072894\";\"Schonberg\";\"other\"\n\"3072894\";\"Schönberg\";\"other\"\n\"3072903\";\"Kraslice\";\"main\"\n\"3072903\";\"Graslitz\";\"other\"\n\"3072927\";\"Králův Dvůr\";\"main\"\n\"3072927\";\"Kraluv Dvur\";\"ascii\"\n\"3072927\";\"Konigshof\";\"other\"\n\"3072927\";\"Königshof\";\"other\"\n\"3072929\";\"Kralupy nad Vltavou\";\"main\"\n\"3072929\";\"Kralup\";\"other\"\n\"3072929\";\"Kralupy\";\"other\"\n\"3072941\";\"Kralovice\";\"main\"\n\"3072941\";\"Kralowitz\";\"other\"\n\"3072952\";\"Králíky\";\"main\"\n\"3072952\";\"Kraliky\";\"ascii\"\n\"3072952\";\"Grulich\";\"other\"\n\"3072954\";\"Kralice na Hané\";\"main\"\n\"3072954\";\"Kralice na Hane\";\"ascii\"\n\"3072954\";\"Kralice\";\"other\"\n\"3072954\";\"Kralitz\";\"other\"\n\"3073000\";\"Kozmice\";\"main\"\n\"3073000\";\"Kosmutz\";\"other\"\n\"3073000\";\"Kosmütz\";\"other\"\n\"3073008\";\"Kozlovice\";\"main\"\n\"3073008\";\"Koslowitz\";\"other\"\n\"3073025\";\"Kožlany\";\"main\"\n\"3073025\";\"Kozlany\";\"ascii\"\n\"3073025\";\"Kozlan\";\"other\"\n\"3073052\";\"Kovářská\";\"main\"\n\"3073052\";\"Kovarska\";\"ascii\"\n\"3073052\";\"Schmiedeberg\";\"other\"\n\"3073052\";\"Smideberk\";\"other\"\n\"3073052\";\"Šmídeberk\";\"other\"\n\"3073059\";\"Kovářov\";\"main\"\n\"3073059\";\"Kovarov\";\"ascii\"\n\"3073059\";\"Kowarow\";\"other\"\n\"3073059\";\"Kowářow\";\"other\"\n\"3073082\";\"Kout na Šumavě\";\"main\"\n\"3073082\";\"Kout na Sumave\";\"ascii\"\n\"3073082\";\"Kauth\";\"other\"\n\"3073084\";\"Kouřim\";\"main\"\n\"3073084\";\"Kourim\";\"ascii\"\n\"3073084\";\"Kaurim\";\"other\"\n\"3073084\";\"Kauřim\";\"other\"\n\"3073130\";\"Kostice\";\"main\"\n\"3073147\";\"Kostelec na Hané\";\"main\"\n\"3073147\";\"Kostelec na Hane\";\"ascii\"\n\"3073147\";\"Kostelec\";\"other\"\n\"3073147\";\"Kosteletz\";\"other\"\n\"3073149\";\"Kostelec nad Orlicí\";\"main\"\n\"3073149\";\"Kostelec nad Orlici\";\"ascii\"\n\"3073149\";\"Adler-Kosteletz\";\"other\"\n\"3073151\";\"Kostelec nad Labem\";\"main\"\n\"3073151\";\"Elbe Kosteletz\";\"other\"\n\"3073152\";\"Kostelec nad Černými Lesy\";\"main\"\n\"3073152\";\"Kostelec nad Cernymi Lesy\";\"ascii\"\n\"3073152\";\"Schwarzkosteletz\";\"other\"\n\"3073170\";\"Košťany\";\"main\"\n\"3073170\";\"Kost'any\";\"ascii\"\n\"3073170\";\"Kosten\";\"other\"\n\"3073172\";\"Košťálov\";\"main\"\n\"3073172\";\"Kost'alov\";\"ascii\"\n\"3073178\";\"Kosova Hora\";\"main\"\n\"3073178\";\"Amschelberg\";\"other\"\n\"3073190\";\"Kosmonosy\";\"main\"\n\"3073190\";\"Kosmanos\";\"other\"\n\"3073222\";\"Koryčany\";\"main\"\n\"3073222\";\"Korycany\";\"ascii\"\n\"3073222\";\"Koritschan\";\"other\"\n\"3073241\";\"Kořenov\";\"main\"\n\"3073241\";\"Korenov\";\"ascii\"\n\"3073241\";\"Wurzelsdorf\";\"other\"\n\"3073254\";\"Kopřivnice\";\"main\"\n\"3073254\";\"Koprivnice\";\"ascii\"\n\"3073254\";\"Koprshivnicakh\";\"other\"\n\"3073254\";\"Nesselsdorf\";\"other\"\n\"3073254\";\"Копршивницах\";\"other\"\n\"3073261\";\"Kopidlno\";\"main\"\n\"3073299\";\"Konice\";\"main\"\n\"3073299\";\"Konitz\";\"other\"\n\"3073322\";\"Komorní Lhotka\";\"main\"\n\"3073322\";\"Komorni Lhotka\";\"ascii\"\n\"3073322\";\"Kameralna Ligotka\";\"other\"\n\"3073345\";\"Komárov\";\"main\"\n\"3073345\";\"Komarov\";\"ascii\"\n\"3073369\";\"Kolinec\";\"main\"\n\"3073369\";\"Kolinetz\";\"other\"\n\"3073371\";\"Kolín\";\"main\"\n\"3073371\";\"Kolin\";\"ascii\"\n\"3073371\";\"Koeln an der Elbe\";\"other\"\n\"3073371\";\"Köln an der Elbe\";\"other\"\n\"3073371\";\"Колин\";\"other\"\n\"3073389\";\"Kokory\";\"main\"\n\"3073389\";\"Kokor\";\"other\"\n\"3073407\";\"Kojetín\";\"main\"\n\"3073407\";\"Kojetin\";\"ascii\"\n\"3073407\";\"Kojetein\";\"other\"\n\"3073483\";\"Kobylí\";\"main\"\n\"3073483\";\"Kobyli\";\"ascii\"\n\"3073493\";\"Kobeřice\";\"main\"\n\"3073493\";\"Koberice\";\"ascii\"\n\"3073493\";\"Koberwitz\";\"other\"\n\"3073493\";\"Köberwitz\";\"other\"\n\"3073523\";\"Kněžpole\";\"main\"\n\"3073523\";\"Knezpole\";\"ascii\"\n\"3073526\";\"Kněžmost\";\"main\"\n\"3073526\";\"Knezmost\";\"ascii\"\n\"3073526\";\"Furstenbruck\";\"other\"\n\"3073526\";\"Fürstenbruck\";\"other\"\n\"3073535\";\"Kněžice\";\"main\"\n\"3073535\";\"Knezice\";\"ascii\"\n\"3073535\";\"Knezitz\";\"other\"\n\"3073535\";\"Knězitz\";\"other\"\n\"3073541\";\"Kněždub\";\"main\"\n\"3073541\";\"Knezdub\";\"ascii\"\n\"3073582\";\"Klobuky\";\"main\"\n\"3073583\";\"Klobouky\";\"main\"\n\"3073583\";\"Klobouk\";\"other\"\n\"3073599\";\"Klimkovice\";\"main\"\n\"3073599\";\"Konigsberg\";\"other\"\n\"3073599\";\"Königsberg\";\"other\"\n\"3073644\";\"Klenčí pod Čerchovem\";\"main\"\n\"3073644\";\"Klenci pod Cerchovem\";\"ascii\"\n\"3073644\";\"Klenec pod Cerchovem\";\"other\"\n\"3073644\";\"Kleneč pod Čerchovem\";\"other\"\n\"3073644\";\"Klentsch\";\"other\"\n\"3073652\";\"Klecany\";\"main\"\n\"3073652\";\"Gross-Klecan\";\"other\"\n\"3073660\";\"Klatovy\";\"main\"\n\"3073660\";\"Klattau\";\"other\"\n\"3073660\";\"Клатовы\";\"other\"\n\"3073668\";\"Klášterec nad Ohří\";\"main\"\n\"3073668\";\"Klasterec nad Ohri\";\"ascii\"\n\"3073668\";\"Klosterle an der Eger\";\"other\"\n\"3073668\";\"Klösterle an der Eger\";\"other\"\n\"3073672\";\"Klášter\";\"main\"\n\"3073672\";\"Klaster\";\"ascii\"\n\"3073672\";\"Klaster Tepla\";\"other\"\n\"3073672\";\"Kloster Tepla\";\"other\"\n\"3073672\";\"Klášter Teplá\";\"other\"\n\"3073672\";\"Stift Tepl\";\"other\"\n\"3073672\";\"Tepl Stift\";\"other\"\n\"3073692\";\"Kladruby\";\"main\"\n\"3073692\";\"Kladrau\";\"other\"\n\"3073699\";\"Kladno\";\"main\"\n\"3073699\";\"Klantno\";\"other\"\n\"3073699\";\"Κλάντνο\";\"other\"\n\"3073699\";\"Кладно\";\"other\"\n\"3073731\";\"Kelč\";\"main\"\n\"3073731\";\"Kelc\";\"ascii\"\n\"3073731\";\"Keltsch\";\"other\"\n\"3073731\";\"Kielce\";\"other\"\n\"3073739\";\"Kdyně\";\"main\"\n\"3073739\";\"Kdyne\";\"ascii\"\n\"3073739\";\"Kdyne Nova\";\"other\"\n\"3073739\";\"Kdyně Nová\";\"other\"\n\"3073739\";\"Neugedein\";\"other\"\n\"3073743\";\"Kbely\";\"main\"\n\"3073752\";\"Kaznějov\";\"main\"\n\"3073752\";\"Kaznejov\";\"ascii\"\n\"3073752\";\"Kaznau\";\"other\"\n\"3073754\";\"Katovice\";\"main\"\n\"3073754\";\"Katowitz\";\"other\"\n\"3073769\";\"Kašperské Hory\";\"main\"\n\"3073769\";\"Kasperske Hory\";\"ascii\"\n\"3073769\";\"Bergreichenstein\";\"other\"\n\"3073780\";\"Kasejovice\";\"main\"\n\"3073780\";\"Kasejowitz\";\"other\"\n\"3073789\";\"Karviná\";\"main\"\n\"3073789\";\"Karvina\";\"ascii\"\n\"3073789\";\"Freistadt\";\"other\"\n\"3073789\";\"Frystat\";\"other\"\n\"3073789\";\"Frysztat\";\"other\"\n\"3073789\";\"Fryštát\";\"other\"\n\"3073789\";\"Karvina 1\";\"other\"\n\"3073789\";\"Karviná 1\";\"other\"\n\"3073789\";\"Карвина\";\"other\"\n\"3073792\";\"Karolinka\";\"main\"\n\"3073792\";\"Karolinina Hut'\";\"other\"\n\"3073792\";\"Karolinina Huť\";\"other\"\n\"3073803\";\"Karlovy Vary\";\"main\"\n\"3073803\";\"Carlsbad\";\"other\"\n\"3073803\";\"Karl Vary\";\"other\"\n\"3073803\";\"Karloby Bary\";\"other\"\n\"3073803\";\"Karlove Vari\";\"other\"\n\"3073803\";\"Karlovi Varai\";\"other\"\n\"3073803\";\"Karlovi Vari\";\"other\"\n\"3073803\";\"Karlsbad\";\"other\"\n\"3073803\";\"kaleullobi bali\";\"other\"\n\"3073803\";\"Κάρλοβυ Βάρυ\";\"other\"\n\"3073803\";\"Карлове Вари\";\"other\"\n\"3073803\";\"Карлови Вари\";\"other\"\n\"3073803\";\"Карловы Вары\";\"other\"\n\"3073803\";\"Карлові Вари\";\"other\"\n\"3073803\";\"קרלובי וארי\";\"other\"\n\"3073803\";\"カルロヴィ・ヴァリ\";\"other\"\n\"3073803\";\"카를로비 바리\";\"other\"\n\"3073811\";\"Karlovice\";\"main\"\n\"3073811\";\"Karlsthal\";\"other\"\n\"3073838\";\"Karlín\";\"main\"\n\"3073838\";\"Karlin\";\"ascii\"\n\"3073838\";\"Karolinenthal\";\"other\"\n\"3073850\";\"Kardašova Řečice\";\"main\"\n\"3073850\";\"Kardasova Recice\";\"ascii\"\n\"3073850\";\"Kardasch Recice\";\"other\"\n\"3073850\";\"Kardasch Řečice\";\"other\"\n\"3073862\";\"Kaplice\";\"main\"\n\"3073892\";\"Kamenný Újezd\";\"main\"\n\"3073892\";\"Kamenny Ujezd\";\"ascii\"\n\"3073893\";\"Kamenný Přívoz\";\"main\"\n\"3073893\";\"Kamenny Privoz\";\"ascii\"\n\"3073893\";\"Stein Uberfuhr\";\"other\"\n\"3073893\";\"Stein Überfuhr\";\"other\"\n\"3073899\";\"Kamenné Žehrovice\";\"main\"\n\"3073899\";\"Kamenne Zehrovice\";\"ascii\"\n\"3073899\";\"Zehrovice\";\"other\"\n\"3073899\";\"Žehrovice\";\"other\"\n\"3073928\";\"Kamenický Šenov\";\"main\"\n\"3073928\";\"Kamenicky Senov\";\"ascii\"\n\"3073928\";\"Stein Schonau\";\"other\"\n\"3073928\";\"Stein Schönau\";\"other\"\n\"3073936\";\"Kamenice nad Lipou\";\"main\"\n\"3073936\";\"Kamenice\";\"other\"\n\"3073936\";\"Kamenitz an der Linde\";\"other\"\n\"3073944\";\"Kamenice\";\"main\"\n\"3073944\";\"Kamenitz\";\"other\"\n\"3073948\";\"Kamenice\";\"main\"\n\"3073948\";\"Kamenitz\";\"other\"\n\"3074004\";\"Kájov\";\"main\"\n\"3074004\";\"Kajov\";\"ascii\"\n\"3074004\";\"Gojau\";\"other\"\n\"3074020\";\"Kadaň\";\"main\"\n\"3074020\";\"Kadan\";\"ascii\"\n\"3074031\";\"Kačice\";\"main\"\n\"3074031\";\"Kacice\";\"ascii\"\n\"3074039\";\"Kadaň\";\"main\"\n\"3074039\";\"Kadan\";\"ascii\"\n\"3074039\";\"Kaaden\";\"other\"\n\"3074049\";\"Josefův Důl\";\"main\"\n\"3074049\";\"Josefuv Dul\";\"ascii\"\n\"3074049\";\"Josefodol\";\"other\"\n\"3074049\";\"Josefsthal\";\"other\"\n\"3074099\";\"Jistebník\";\"main\"\n\"3074099\";\"Jistebnik\";\"ascii\"\n\"3074099\";\"Stiebnig\";\"other\"\n\"3074102\";\"Jistebnice\";\"main\"\n\"3074102\";\"Jistebnitz\";\"other\"\n\"3074107\";\"Jirny\";\"main\"\n\"3074107\";\"Gross Jirna\";\"other\"\n\"3074110\";\"Jirkov\";\"main\"\n\"3074110\";\"Gorkau\";\"other\"\n\"3074110\";\"Görkau\";\"other\"\n\"3074119\";\"Jiříkov\";\"main\"\n\"3074119\";\"Jirikov\";\"ascii\"\n\"3074119\";\"Georgswalde\";\"other\"\n\"3074149\";\"Jindřichův Hradec\";\"main\"\n\"3074149\";\"Jindrichuv Hradec\";\"ascii\"\n\"3074149\";\"Neuhaus\";\"other\"\n\"3074161\";\"Jindřichov\";\"main\"\n\"3074161\";\"Jindrichov\";\"ascii\"\n\"3074161\";\"Hennersdorf\";\"other\"\n\"3074166\";\"Jince\";\"main\"\n\"3074166\";\"Jinetz\";\"other\"\n\"3074170\";\"Jimramov\";\"main\"\n\"3074170\";\"Ingrowitz\";\"other\"\n\"3074178\";\"Jílové u Prahy\";\"main\"\n\"3074178\";\"Jilove u Prahy\";\"ascii\"\n\"3074178\";\"Eule\";\"other\"\n\"3074178\";\"Jilove\";\"other\"\n\"3074178\";\"Jílové\";\"other\"\n\"3074181\";\"Jílové\";\"main\"\n\"3074181\";\"Jilove\";\"ascii\"\n\"3074181\";\"Eulau\";\"other\"\n\"3074187\";\"Jilemnice\";\"main\"\n\"3074199\";\"Jihlava\";\"main\"\n\"3074199\";\"Iglau\";\"other\"\n\"3074199\";\"Iglawa\";\"other\"\n\"3074199\";\"Igława\";\"other\"\n\"3074199\";\"Jiglava\";\"other\"\n\"3074199\";\"Jikhlava\";\"other\"\n\"3074199\";\"Јихлава\";\"other\"\n\"3074199\";\"Йиглава\";\"other\"\n\"3074204\";\"Jičín\";\"main\"\n\"3074204\";\"Jicin\";\"ascii\"\n\"3074204\";\"Gitschin\";\"other\"\n\"3074204\";\"Jichin\";\"other\"\n\"3074204\";\"Jitschin\";\"other\"\n\"3074204\";\"Titschein\";\"other\"\n\"3074204\";\"Йичин\";\"other\"\n\"3074239\";\"Jevišovice\";\"main\"\n\"3074239\";\"Jevisovice\";\"ascii\"\n\"3074241\";\"Jevíčko\";\"main\"\n\"3074241\";\"Jevicko\";\"ascii\"\n\"3074241\";\"Gewitsch\";\"other\"\n\"3074280\";\"Jeseník nad Odrou\";\"main\"\n\"3074280\";\"Jesenik nad Odrou\";\"ascii\"\n\"3074280\";\"Deutsch Jasnik\";\"other\"\n\"3074280\";\"Deutsch Jassnik\";\"other\"\n\"3074280\";\"Nemecky Jesenik\";\"other\"\n\"3074280\";\"Německý Jeseník\";\"other\"\n\"3074281\";\"Jeseník\";\"main\"\n\"3074281\";\"Jesenik\";\"ascii\"\n\"3074281\";\"Freiwaldau\";\"other\"\n\"3074281\";\"Fryvaldov\";\"other\"\n\"3074281\";\"Frývaldov\";\"other\"\n\"3074284\";\"Jesenice\";\"main\"\n\"3074284\";\"Jechnitz\";\"other\"\n\"3074286\";\"Jesenice\";\"main\"\n\"3074286\";\"Jessenitz\";\"other\"\n\"3074322\";\"Jeneč\";\"main\"\n\"3074322\";\"Jenec\";\"ascii\"\n\"3074322\";\"Gross Jentsch\";\"other\"\n\"3074331\";\"Jemnice\";\"main\"\n\"3074331\";\"Jamnitz\";\"other\"\n\"3074360\";\"Jedovnice\";\"main\"\n\"3074360\";\"Jedownitz\";\"other\"\n\"3074373\";\"Jedlová\";\"main\"\n\"3074373\";\"Jedlova\";\"ascii\"\n\"3074373\";\"Schonbrunn\";\"other\"\n\"3074373\";\"Schönbrunn\";\"other\"\n\"3074398\";\"Javorník\";\"main\"\n\"3074398\";\"Javornik\";\"ascii\"\n\"3074398\";\"Jauernig\";\"other\"\n\"3074444\";\"Jarošov nad Nežárkou\";\"main\"\n\"3074444\";\"Jarosov nad Nezarkou\";\"ascii\"\n\"3074444\";\"Jareschau\";\"other\"\n\"3074452\";\"Jaroslavice\";\"main\"\n\"3074452\";\"Joslowitz\";\"other\"\n\"3074459\";\"Jaroměřice nad Rokytnou\";\"main\"\n\"3074459\";\"Jaromerice nad Rokytnou\";\"ascii\"\n\"3074459\";\"Jarmeritz\";\"other\"\n\"3074459\";\"Jaromerice na Rokytne\";\"other\"\n\"3074459\";\"Jaroměřice na Rokytné\";\"other\"\n\"3074461\";\"Jaroměřice\";\"main\"\n\"3074461\";\"Jaromerice\";\"ascii\"\n\"3074461\";\"Jarmeritz\";\"other\"\n\"3074461\";\"Jaromeritz\";\"other\"\n\"3074461\";\"Jaroměřitz\";\"other\"\n\"3074462\";\"Jaroměř\";\"main\"\n\"3074462\";\"Jaromer\";\"ascii\"\n\"3074482\";\"Janov nad Nisou\";\"main\"\n\"3074482\";\"Honsberg\";\"other\"\n\"3074482\";\"Honsberk\";\"other\"\n\"3074482\";\"Johannesberg\";\"other\"\n\"3074491\";\"Janovice nad Úhlavou\";\"main\"\n\"3074491\";\"Janovice nad Uhlavou\";\"ascii\"\n\"3074491\";\"Janowitz\";\"other\"\n\"3074500\";\"Janovice\";\"main\"\n\"3074558\";\"Jalubí\";\"main\"\n\"3074558\";\"Jalubi\";\"ascii\"\n\"3074558\";\"Jalub\";\"other\"\n\"3074577\";\"Jakartovice\";\"main\"\n\"3074577\";\"Eckersdorf\";\"other\"\n\"3074587\";\"Jáchymov\";\"main\"\n\"3074587\";\"Jachymov\";\"ascii\"\n\"3074587\";\"Joachimsthal\";\"other\"\n\"3074587\";\"Sankt-Joachimsthal\";\"other\"\n\"3074593\";\"Jablunkov\";\"main\"\n\"3074593\";\"Jablonkow\";\"other\"\n\"3074593\";\"Jablunkau\";\"other\"\n\"3074593\";\"Jabłonków\";\"other\"\n\"3074594\";\"Jablůnka\";\"main\"\n\"3074594\";\"Jablunka\";\"ascii\"\n\"3074597\";\"Jablonné v Podještědí\";\"main\"\n\"3074597\";\"Jablonne v Podjestedi\";\"ascii\"\n\"3074597\";\"Deutsch Gabel\";\"other\"\n\"3074597\";\"Nemecke Jablonne\";\"other\"\n\"3074597\";\"Německé Jablonné\";\"other\"\n\"3074598\";\"Jablonné nad Orlicí\";\"main\"\n\"3074598\";\"Jablonne nad Orlici\";\"ascii\"\n\"3074598\";\"Gabl\";\"other\"\n\"3074603\";\"Jablonec nad Nisou\";\"main\"\n\"3074603\";\"Gablonz\";\"other\"\n\"3074603\";\"Gablonz an der Neisse\";\"other\"\n\"3074603\";\"Jablonec\";\"other\"\n\"3074603\";\"Jablonec nad Nysa\";\"other\"\n\"3074603\";\"Jablonec nad Nysą\";\"other\"\n\"3074603\";\"Jablonecas prie Nisos\";\"other\"\n\"3074603\";\"yabeullonecheunateunisou\";\"other\"\n\"3074603\";\"Яблонец\";\"other\"\n\"3074603\";\"야블로네츠나트니소우\";\"other\"\n\"3074604\";\"Jablonec nad Jizerou\";\"main\"\n\"3074604\";\"Jablonec\";\"other\"\n\"3074604\";\"Jablonec an der Iser\";\"other\"\n\"3074604\";\"Jablonetz\";\"other\"\n\"3074614\";\"Ivanovice na Hané\";\"main\"\n\"3074614\";\"Ivanovice na Hane\";\"ascii\"\n\"3074614\";\"Eiwanowitz\";\"other\"\n\"3074615\";\"Ivančice\";\"main\"\n\"3074615\";\"Ivancice\";\"ascii\"\n\"3074615\";\"Eibenschitz\";\"other\"\n\"3074621\";\"Hýskov\";\"main\"\n\"3074621\";\"Hyskov\";\"ascii\"\n\"3074621\";\"Hyskow\";\"other\"\n\"3074636\";\"Hvozdná\";\"main\"\n\"3074636\";\"Hvozdna\";\"ascii\"\n\"3074676\";\"Hustopeče Nad Bečvou\";\"main\"\n\"3074676\";\"Hustopece Nad Becvou\";\"ascii\"\n\"3074676\";\"Hustopetsch\";\"other\"\n\"3074677\";\"Hustopeče\";\"main\"\n\"3074677\";\"Hustopece\";\"ascii\"\n\"3074677\";\"Auspitz\";\"other\"\n\"3074686\";\"Husinec\";\"main\"\n\"3074686\";\"Husinetz\";\"other\"\n\"3074723\";\"Humpolec\";\"main\"\n\"3074723\";\"Humpoletz\";\"other\"\n\"3074731\";\"Hulín\";\"main\"\n\"3074731\";\"Hulin\";\"ascii\"\n\"3074731\";\"Hullein\";\"other\"\n\"3074733\";\"Hukvaldy\";\"main\"\n\"3074733\";\"Hochwald\";\"other\"\n\"3074737\";\"Hudlice\";\"main\"\n\"3074737\";\"Hudlitz\";\"other\"\n\"3074763\";\"Hrušovany u Brna\";\"main\"\n\"3074763\";\"Hrusovany u Brna\";\"ascii\"\n\"3074763\";\"Rohrbach\";\"other\"\n\"3074764\";\"Hrušovany nad Jevišovkou\";\"main\"\n\"3074764\";\"Hrusovany nad Jevisovkou\";\"ascii\"\n\"3074764\";\"Grusbach\";\"other\"\n\"3074773\";\"Hrušky\";\"main\"\n\"3074773\";\"Hrusky\";\"ascii\"\n\"3074795\";\"Hroznová Lhota\";\"main\"\n\"3074795\";\"Hroznova Lhota\";\"ascii\"\n\"3074797\";\"Hroznětín\";\"main\"\n\"3074797\";\"Hroznetin\";\"ascii\"\n\"3074797\";\"Lichtenstadt\";\"other\"\n\"3074803\";\"Hrotovice\";\"main\"\n\"3074803\";\"Hrottowitz\";\"other\"\n\"3074805\";\"Hronov\";\"main\"\n\"3074805\";\"Hronow\";\"other\"\n\"3074807\";\"Hromnice\";\"main\"\n\"3074808\";\"Hrochův Týnec\";\"main\"\n\"3074808\";\"Hrochuv Tynec\";\"ascii\"\n\"3074808\";\"Hrochowteinitz\";\"other\"\n\"3074817\";\"Hrob\";\"main\"\n\"3074817\";\"Klostergrab\";\"other\"\n\"3074853\";\"Hřebeč\";\"main\"\n\"3074853\";\"Hrebec\";\"ascii\"\n\"3074864\";\"Hrdějovice\";\"main\"\n\"3074864\";\"Hrdejovice\";\"ascii\"\n\"3074864\";\"Hartowitz\";\"other\"\n\"3074889\";\"Hranice\";\"main\"\n\"3074889\";\"Rossbach\";\"other\"\n\"3074893\";\"Hranice\";\"main\"\n\"3074893\";\"Mahrisch Weisskirchen\";\"other\"\n\"3074893\";\"Mährisch Weisskirchen\";\"other\"\n\"3074909\";\"Hradišťko\";\"main\"\n\"3074909\";\"Hradist'ko\";\"ascii\"\n\"3074909\";\"Hradischko\";\"other\"\n\"3074944\";\"Hrádek nad Nisou\";\"main\"\n\"3074944\";\"Hradek nad Nisou\";\"ascii\"\n\"3074944\";\"Grottau\";\"other\"\n\"3074954\";\"Hrádek\";\"main\"\n\"3074954\";\"Hradek\";\"ascii\"\n\"3074955\";\"Hrádek\";\"main\"\n\"3074955\";\"Hradek\";\"ascii\"\n\"3074956\";\"Hrádek\";\"main\"\n\"3074956\";\"Hradek\";\"ascii\"\n\"3074961\";\"Hradec nad Svitavou\";\"main\"\n\"3074961\";\"Graendorf\";\"other\"\n\"3074961\";\"Grandorf\";\"other\"\n\"3074961\";\"Greifendorf\";\"other\"\n\"3074961\";\"Grándorf\";\"other\"\n\"3074967\";\"Hradec Králové\";\"main\"\n\"3074967\";\"Hradec Kralove\";\"ascii\"\n\"3074967\";\"Chrantek Kralobe\";\"other\"\n\"3074967\";\"Gradec Kralove\";\"other\"\n\"3074967\";\"Gradets Kralove\";\"other\"\n\"3074967\";\"Khradec Kralove\";\"other\"\n\"3074967\";\"Koeniggraetz\";\"other\"\n\"3074967\";\"Königgrätz\";\"other\"\n\"3074967\";\"Χράντεκ Κράλοβε\";\"other\"\n\"3074967\";\"Градец Кралове\";\"other\"\n\"3074967\";\"Храдец Кралове\";\"other\"\n\"3074975\";\"Hradec\";\"main\"\n\"3074975\";\"Gratz\";\"other\"\n\"3075005\";\"Hrabyně\";\"main\"\n\"3075005\";\"Hrabyne\";\"ascii\"\n\"3075005\";\"Hrabin\";\"other\"\n\"3075022\";\"Hovorčovice\";\"main\"\n\"3075022\";\"Hovorcovice\";\"ascii\"\n\"3075023\";\"Hovorany\";\"main\"\n\"3075025\";\"Hovězí\";\"main\"\n\"3075025\";\"Hovezi\";\"ascii\"\n\"3075025\";\"Howiezy\";\"other\"\n\"3075042\";\"Hostouň\";\"main\"\n\"3075042\";\"Hostoun\";\"ascii\"\n\"3075042\";\"Hostau\";\"other\"\n\"3075043\";\"Hostomice\";\"main\"\n\"3075043\";\"Hostomitz\";\"other\"\n\"3075044\";\"Hostomice\";\"main\"\n\"3075044\";\"Hostomitz\";\"other\"\n\"3075049\";\"Hošťka\";\"main\"\n\"3075049\";\"Host'ka\";\"ascii\"\n\"3075049\";\"Gastorf\";\"other\"\n\"3075051\";\"Hostivice\";\"main\"\n\"3075051\";\"Hostiwitz\";\"other\"\n\"3075058\";\"Hostinné\";\"main\"\n\"3075058\";\"Hostinne\";\"ascii\"\n\"3075058\";\"Arnau\";\"other\"\n\"3075079\";\"Hostěradice\";\"main\"\n\"3075079\";\"Hosteradice\";\"ascii\"\n\"3075079\";\"Hosterlitz\";\"other\"\n\"3075086\";\"Hostavice\";\"main\"\n\"3075091\";\"Hošťálková\";\"main\"\n\"3075091\";\"Host'alkova\";\"ascii\"\n\"3075091\";\"Hostialkow\";\"other\"\n\"3075112\";\"Horšovský Týn\";\"main\"\n\"3075112\";\"Horsovsky Tyn\";\"ascii\"\n\"3075112\";\"Bischofteinitz\";\"other\"\n\"3075119\";\"Hořovice\";\"main\"\n\"3075119\";\"Horovice\";\"ascii\"\n\"3075119\";\"Horowitz\";\"other\"\n\"3075119\";\"Horschowitz\";\"other\"\n\"3075127\";\"Horoměřice\";\"main\"\n\"3075127\";\"Horomerice\";\"ascii\"\n\"3075127\";\"Horomeritz\";\"other\"\n\"3075127\";\"Horoměřitz\";\"other\"\n\"3075179\";\"Horní Těrlicko\";\"main\"\n\"3075179\";\"Horni Terlicko\";\"ascii\"\n\"3075179\";\"Gorne Cierlicko\";\"other\"\n\"3075179\";\"Górne Cierlicko\";\"other\"\n\"3075179\";\"Tierlitzko\";\"other\"\n\"3075187\";\"Horní Suchá\";\"main\"\n\"3075187\";\"Horni Sucha\";\"ascii\"\n\"3075187\";\"Gorna Sucha\";\"other\"\n\"3075191\";\"Horní Stropnice\";\"main\"\n\"3075191\";\"Horni Stropnice\";\"ascii\"\n\"3075191\";\"Stropnice\";\"other\"\n\"3075193\";\"Horní Štěpánov\";\"main\"\n\"3075193\";\"Horni Stepanov\";\"ascii\"\n\"3075193\";\"Horni Stefanau\";\"other\"\n\"3075193\";\"Horní Stefanau\";\"other\"\n\"3075193\";\"Stefanau\";\"other\"\n\"3075206\";\"Horní Sloupnice\";\"main\"\n\"3075206\";\"Horni Sloupnice\";\"ascii\"\n\"3075206\";\"Sloupnice\";\"other\"\n\"3075206\";\"Sloupnitz\";\"other\"\n\"3075208\";\"Horní Slavkov\";\"main\"\n\"3075208\";\"Horni Slavkov\";\"ascii\"\n\"3075208\";\"Schlaggenwald\";\"other\"\n\"3075257\";\"Horní Počernice\";\"main\"\n\"3075257\";\"Horni Pocernice\";\"ascii\"\n\"3075257\";\"Ober Pocernitz\";\"other\"\n\"3075257\";\"Ober Počernitz\";\"other\"\n\"3075259\";\"Horní Počaply\";\"main\"\n\"3075259\";\"Horni Pocaply\";\"ascii\"\n\"3075259\";\"Ober Podcap\";\"other\"\n\"3075259\";\"Ober Podčáp\";\"other\"\n\"3075262\";\"Horní Planá\";\"main\"\n\"3075262\";\"Horni Plana\";\"ascii\"\n\"3075262\";\"Ober-Plan\";\"other\"\n\"3075262\";\"Oberplan\";\"other\"\n\"3075289\";\"Horní Moštěnice\";\"main\"\n\"3075289\";\"Horni Mostenice\";\"ascii\"\n\"3075289\";\"Ober Moschtienitz\";\"other\"\n\"3075296\";\"Horní Město\";\"main\"\n\"3075296\";\"Horni Mesto\";\"ascii\"\n\"3075296\";\"Bergstadt\";\"other\"\n\"3075316\";\"Horní Lideč\";\"main\"\n\"3075316\";\"Horni Lidec\";\"ascii\"\n\"3075316\";\"Ober Litsch\";\"other\"\n\"3075319\";\"Horní Libina\";\"main\"\n\"3075319\";\"Horni Libina\";\"ascii\"\n\"3075319\";\"Deutsch Liebau\";\"other\"\n\"3075319\";\"Labau\";\"other\"\n\"3075319\";\"Nemecka Libina\";\"other\"\n\"3075319\";\"Německá Libina\";\"other\"\n\"3075356\";\"Horní Jiřetín\";\"main\"\n\"3075356\";\"Horni Jiretin\";\"ascii\"\n\"3075356\";\"Ober-Georgenthal\";\"other\"\n\"3075361\";\"Horní Jelení\";\"main\"\n\"3075361\";\"Horni Jeleni\";\"ascii\"\n\"3075361\";\"Ober Jeleni\";\"other\"\n\"3075361\";\"Ober Jelení\";\"other\"\n\"3075422\";\"Horní Čermná\";\"main\"\n\"3075422\";\"Horni Cermna\";\"ascii\"\n\"3075423\";\"Horní Cerekev\";\"main\"\n\"3075423\";\"Horni Cerekev\";\"ascii\"\n\"3075423\";\"Ober Cerekve\";\"other\"\n\"3075433\";\"Horní Bříza\";\"main\"\n\"3075433\";\"Horni Briza\";\"ascii\"\n\"3075433\";\"Ober Bris\";\"other\"\n\"3075433\";\"Ober Břis\";\"other\"\n\"3075436\";\"Horní Branná\";\"main\"\n\"3075436\";\"Horni Branna\";\"ascii\"\n\"3075436\";\"Branna\";\"other\"\n\"3075447\";\"Horní Bludovice\";\"main\"\n\"3075447\";\"Horni Bludovice\";\"ascii\"\n\"3075451\";\"Horní Benešov\";\"main\"\n\"3075451\";\"Horni Benesov\";\"ascii\"\n\"3075451\";\"Benisch\";\"other\"\n\"3075451\";\"Bennisch\";\"other\"\n\"3075451\";\"Horni Bennisch\";\"other\"\n\"3075451\";\"Horní Bennisch\";\"other\"\n\"3075454\";\"Horní Bečva\";\"main\"\n\"3075454\";\"Horni Becva\";\"ascii\"\n\"3075471\";\"Horka nad Moravou\";\"main\"\n\"3075471\";\"Horka\";\"other\"\n\"3075493\";\"Hořice\";\"main\"\n\"3075493\";\"Horice\";\"ascii\"\n\"3075493\";\"Horitz\";\"other\"\n\"3075493\";\"Hořitz\";\"other\"\n\"3075522\";\"Horažďovice\";\"main\"\n\"3075522\";\"Horazd'ovice\";\"ascii\"\n\"3075522\";\"Horazdowitz\";\"other\"\n\"3075522\";\"Horaždowitz\";\"other\"\n\"3075562\";\"Holýšov\";\"main\"\n\"3075562\";\"Holysov\";\"ascii\"\n\"3075562\";\"Holleischen\";\"other\"\n\"3075587\";\"Holoubkov\";\"main\"\n\"3075587\";\"Holoubkau\";\"other\"\n\"3075599\";\"Holice\";\"main\"\n\"3075599\";\"Holitz\";\"other\"\n\"3075606\";\"Holešov\";\"main\"\n\"3075606\";\"Holesov\";\"ascii\"\n\"3075606\";\"Holleschau\";\"other\"\n\"3075620\";\"Holasovice\";\"main\"\n\"3075620\";\"Kreuzendorf\";\"other\"\n\"3075643\";\"Hodslavice\";\"main\"\n\"3075643\";\"Hotzendorf\";\"other\"\n\"3075654\";\"Hodonín\";\"main\"\n\"3075654\";\"Hodonin\";\"ascii\"\n\"3075654\";\"Goding\";\"other\"\n\"3075654\";\"Godonin\";\"other\"\n\"3075654\";\"Göding\";\"other\"\n\"3075654\";\"Годонин\";\"other\"\n\"3075656\";\"Hodonice\";\"main\"\n\"3075656\";\"Hodnitz\";\"other\"\n\"3075656\";\"Hödnitz\";\"other\"\n\"3075663\";\"Hodkovičky\";\"main\"\n\"3075663\";\"Hodkovicky\";\"ascii\"\n\"3075664\";\"Hodkovice nad Mohelkou\";\"main\"\n\"3075664\";\"Hodkovice\";\"other\"\n\"3075664\";\"Liebenau\";\"other\"\n\"3075664\";\"Liebenau in Bohmen\";\"other\"\n\"3075664\";\"Liebenau in Böhmen\";\"other\"\n\"3075690\";\"Hněvotín\";\"main\"\n\"3075690\";\"Hnevotin\";\"ascii\"\n\"3075690\";\"Nebotein\";\"other\"\n\"3075691\";\"Hněvošice\";\"main\"\n\"3075691\";\"Hnevosice\";\"ascii\"\n\"3075691\";\"Schreibersdorf\";\"other\"\n\"3075715\";\"Hluk\";\"main\"\n\"3075715\";\"Hluck\";\"other\"\n\"3075716\";\"Hlučín\";\"main\"\n\"3075716\";\"Hlucin\";\"ascii\"\n\"3075716\";\"Hulczyn\";\"other\"\n\"3075716\";\"Hultschin\";\"other\"\n\"3075731\";\"Hluboká nad Vltavou\";\"main\"\n\"3075731\";\"Hluboka nad Vltavou\";\"ascii\"\n\"3075731\";\"Frauenberg\";\"other\"\n\"3075744\";\"Hlubočky\";\"main\"\n\"3075744\";\"Hlubocky\";\"ascii\"\n\"3075744\";\"Hombock\";\"other\"\n\"3075756\";\"Hlohovec\";\"main\"\n\"3075766\";\"Hlinsko\";\"main\"\n\"3075827\";\"Hevlín\";\"main\"\n\"3075827\";\"Hevlin\";\"ascii\"\n\"3075827\";\"Hoflein\";\"other\"\n\"3075827\";\"Höflein\";\"other\"\n\"3075841\";\"Heřmanův Městec\";\"main\"\n\"3075841\";\"Hermanuv Mestec\";\"ascii\"\n\"3075841\";\"Hermanmestetz\";\"other\"\n\"3075841\";\"Heřmanměstetz\";\"other\"\n\"3075843\";\"Heřmanova Huť\";\"main\"\n\"3075843\";\"Hermanova Hut'\";\"ascii\"\n\"3075843\";\"Hermannshutte\";\"other\"\n\"3075843\";\"Hermannshütte\";\"other\"\n\"3075877\";\"Herálec\";\"main\"\n\"3075877\";\"Heralec\";\"ascii\"\n\"3075877\";\"Heraletz\";\"other\"\n\"3075878\";\"Herálec\";\"main\"\n\"3075878\";\"Heralec\";\"ascii\"\n\"3075878\";\"Heraletz\";\"other\"\n\"3075894\";\"Hejnice\";\"main\"\n\"3075894\";\"Haindorf\";\"other\"\n\"3075905\";\"Hazlov\";\"main\"\n\"3075905\";\"Haslau\";\"other\"\n\"3075919\";\"Havlíčkův Brod\";\"main\"\n\"3075919\";\"Havlickuv Brod\";\"ascii\"\n\"3075919\";\"Deutsch Brod\";\"other\"\n\"3075919\";\"Gavlichkuv-Brod\";\"other\"\n\"3075919\";\"Nemecky Brod\";\"other\"\n\"3075919\";\"Německý Brod\";\"other\"\n\"3075919\";\"Гавличкув-Брод\";\"other\"\n\"3075921\";\"Havířov\";\"main\"\n\"3075921\";\"Havirov\";\"ascii\"\n\"3075921\";\"Gavirsov\";\"other\"\n\"3075921\";\"Gavirzhov\";\"other\"\n\"3075921\";\"Hawierzow\";\"other\"\n\"3075921\";\"Hawierzów\";\"other\"\n\"3075921\";\"Гавиржов\";\"other\"\n\"3075921\";\"Гавіршов\";\"other\"\n\"3075930\";\"Hať\";\"main\"\n\"3075930\";\"Hat'\";\"ascii\"\n\"3075930\";\"Haatsch\";\"other\"\n\"3075949\";\"Hartmanice\";\"main\"\n\"3075949\";\"Hartmanitz\";\"other\"\n\"3075953\";\"Harrachov\";\"main\"\n\"3075953\";\"Harrachsdorf\";\"other\"\n\"3075958\";\"Hanušovice\";\"main\"\n\"3075958\";\"Hanusovice\";\"ascii\"\n\"3075958\";\"Hannsdorf\";\"other\"\n\"3075958\";\"Hansovice\";\"other\"\n\"3075996\";\"Halenkovice\";\"main\"\n\"3075996\";\"Allenkowitz\";\"other\"\n\"3075996\";\"Halenovice\";\"other\"\n\"3075997\";\"Halenkov\";\"main\"\n\"3075997\";\"Hallenkau\";\"other\"\n\"3076001\";\"Háj ve Slezsku\";\"main\"\n\"3076001\";\"Haj ve Slezsku\";\"ascii\"\n\"3076001\";\"Haj\";\"other\"\n\"3076001\";\"Háj\";\"other\"\n\"3076053\";\"Habry\";\"main\"\n\"3076053\";\"Habern\";\"other\"\n\"3076076\";\"Habartov\";\"main\"\n\"3076076\";\"Habersbirk\";\"other\"\n\"3076084\";\"Grygov\";\"main\"\n\"3076084\";\"Gru\\\"gau\";\"other\"\n\"3076084\";\"Gru”gau\";\"other\"\n\"3076098\";\"Golčův Jeníkov\";\"main\"\n\"3076098\";\"Golcuv Jenikov\";\"ascii\"\n\"3076098\";\"Goleav Jenikov\";\"other\"\n\"3076098\";\"Goltsch Jenikau\";\"other\"\n\"3076116\";\"Fulnek\";\"main\"\n\"3076116\";\"Ful'nek\";\"other\"\n\"3076116\";\"furuneku\";\"other\"\n\"3076116\";\"Фульнек\";\"other\"\n\"3076116\";\"フルネク\";\"other\"\n\"3076118\";\"Fryšták\";\"main\"\n\"3076118\";\"Frystak\";\"ascii\"\n\"3076118\";\"Freistadtl\";\"other\"\n\"3076120\";\"Frymburk\";\"main\"\n\"3076120\";\"Friedberg\";\"other\"\n\"3076123\";\"Frýdlant nad Ostravicí\";\"main\"\n\"3076123\";\"Frydlant nad Ostravici\";\"ascii\"\n\"3076123\";\"Friedland an der Ostrawitza\";\"other\"\n\"3076123\";\"Frydland\";\"other\"\n\"3076123\";\"Frydlant\";\"other\"\n\"3076123\";\"Frydlant n Ostroh\";\"other\"\n\"3076123\";\"Frýdlant n Ostroh\";\"other\"\n\"3076124\";\"Frýdlant\";\"main\"\n\"3076124\";\"Frydlant\";\"ascii\"\n\"3076124\";\"Friedland\";\"other\"\n\"3076124\";\"Friedland in Bohmen\";\"other\"\n\"3076124\";\"Friedland in Böhmen\";\"other\"\n\"3076127\";\"Frýdek-Místek\";\"main\"\n\"3076127\";\"Frydek-Mistek\";\"ascii\"\n\"3076127\";\"Friedeck\";\"other\"\n\"3076127\";\"Friedek\";\"other\"\n\"3076127\";\"Frydek\";\"other\"\n\"3076127\";\"Frýdek\";\"other\"\n\"3076127\";\"Mistek\";\"other\"\n\"3076127\";\"Мистек\";\"other\"\n\"3076129\";\"Fryčovice\";\"main\"\n\"3076129\";\"Frycovice\";\"ascii\"\n\"3076129\";\"Fritschowitz\";\"other\"\n\"3076132\";\"Frenštát pod Radhoštěm\";\"main\"\n\"3076132\";\"Frenstat pod Radhostem\";\"ascii\"\n\"3076132\";\"Frankstadt\";\"other\"\n\"3076132\";\"Frankstadt am Radhost\";\"other\"\n\"3076132\";\"Frankstadt am Radhošt\";\"other\"\n\"3076132\";\"Frenstat\";\"other\"\n\"3076132\";\"Frenštát\";\"other\"\n\"3076136\";\"Františkovy Lázně\";\"main\"\n\"3076136\";\"Frantiskovy Lazne\";\"ascii\"\n\"3076136\";\"Franzensbad\";\"other\"\n\"3076153\";\"Francova Lhota\";\"main\"\n\"3076153\";\"Lhota Franzowa\";\"other\"\n\"3076234\";\"Dýšina\";\"main\"\n\"3076234\";\"Dysina\";\"ascii\"\n\"3076284\";\"Dvorce\";\"main\"\n\"3076284\";\"Hof\";\"other\"\n\"3076311\";\"Duchcov\";\"main\"\n\"3076311\";\"Dux\";\"other\"\n\"3076311\";\"do~ufutsu~ofu\";\"other\"\n\"3076311\";\"ドゥフツォフ\";\"other\"\n\"3076328\";\"Dubné\";\"main\"\n\"3076328\";\"Dubne\";\"ascii\"\n\"3076329\";\"Dubňany\";\"main\"\n\"3076329\";\"Dubnany\";\"ascii\"\n\"3076329\";\"Dubnain\";\"other\"\n\"3076330\";\"Dub nad Moravou\";\"main\"\n\"3076330\";\"Dub\";\"other\"\n\"3076342\";\"Dubicko\";\"main\"\n\"3076342\";\"Dubitzke\";\"other\"\n\"3076346\";\"Dubí\";\"main\"\n\"3076346\";\"Dubi\";\"ascii\"\n\"3076346\";\"Eichwald\";\"other\"\n\"3076363\";\"Dubá\";\"main\"\n\"3076363\";\"Duba\";\"ascii\"\n\"3076363\";\"Dauba\";\"other\"\n\"3076402\";\"Drnovice\";\"main\"\n\"3076402\";\"Drnowitz\";\"other\"\n\"3076403\";\"Drnovice\";\"main\"\n\"3076403\";\"Drnowitz\";\"other\"\n\"3076408\";\"Drnholec\";\"main\"\n\"3076408\";\"Drnoholec\";\"other\"\n\"3076408\";\"Durnholz\";\"other\"\n\"3076408\";\"Dürnholz\";\"other\"\n\"3076413\";\"Dřiteň\";\"main\"\n\"3076413\";\"Driten\";\"ascii\"\n\"3076413\";\"Zirnau\";\"other\"\n\"3076428\";\"Dřevohostice\";\"main\"\n\"3076428\";\"Drevohostice\";\"ascii\"\n\"3076428\";\"Drewohostitz\";\"other\"\n\"3076428\";\"Dřewohostitz\";\"other\"\n\"3076470\";\"Drásov\";\"main\"\n\"3076470\";\"Drasov\";\"ascii\"\n\"3076470\";\"Drasow\";\"other\"\n\"3076508\";\"Drahanovice\";\"main\"\n\"3076508\";\"Drahanowitz\";\"other\"\n\"3076522\";\"Doudleby nad Orlicí\";\"main\"\n\"3076522\";\"Doudleby nad Orlici\";\"ascii\"\n\"3076522\";\"Daudleb\";\"other\"\n\"3076531\";\"Doubravice nad Svitavou\";\"main\"\n\"3076531\";\"Doubrawitz\";\"other\"\n\"3076555\";\"Doubrava\";\"main\"\n\"3076555\";\"Daabrowa\";\"other\"\n\"3076555\";\"Daąbrowa\";\"other\"\n\"3076555\";\"Dombrau\";\"other\"\n\"3076587\";\"Domažlice\";\"main\"\n\"3076587\";\"Domazlice\";\"ascii\"\n\"3076587\";\"Taus\";\"other\"\n\"3076587\";\"Tausz\";\"other\"\n\"3076604\";\"Domanín\";\"main\"\n\"3076604\";\"Domanin\";\"ascii\"\n\"3076615\";\"Doloplazy\";\"main\"\n\"3076615\";\"Doloplas\";\"other\"\n\"3076621\";\"Dolní Životice\";\"main\"\n\"3076621\";\"Dolni Zivotice\";\"ascii\"\n\"3076621\";\"Schonstein\";\"other\"\n\"3076621\";\"Schönstein\";\"other\"\n\"3076627\";\"Dolní Žandov\";\"main\"\n\"3076627\";\"Dolni Zandov\";\"ascii\"\n\"3076627\";\"Unter-Sandau\";\"other\"\n\"3076650\";\"Dolní Újezd\";\"main\"\n\"3076650\";\"Dolni Ujezd\";\"ascii\"\n\"3076650\";\"Unter Aujezd\";\"other\"\n\"3076651\";\"Dolní Újezd\";\"main\"\n\"3076651\";\"Dolni Ujezd\";\"ascii\"\n\"3076671\";\"Dolní Studénky\";\"main\"\n\"3076671\";\"Dolni Studenky\";\"ascii\"\n\"3076671\";\"Schonbrunn\";\"other\"\n\"3076671\";\"Schönbrunn\";\"other\"\n\"3076671\";\"Studenky\";\"other\"\n\"3076671\";\"Studénky\";\"other\"\n\"3076685\";\"Dolní Sloupnice\";\"main\"\n\"3076685\";\"Dolni Sloupnice\";\"ascii\"\n\"3076694\";\"Dolní Rychnov\";\"main\"\n\"3076694\";\"Dolni Rychnov\";\"ascii\"\n\"3076694\";\"Unter-Reichenau\";\"other\"\n\"3076701\";\"Dolní Roveň\";\"main\"\n\"3076701\";\"Dolni Roven\";\"ascii\"\n\"3076701\";\"Roven\";\"other\"\n\"3076701\";\"Roveň\";\"other\"\n\"3076701\";\"Rowen\";\"other\"\n\"3076701\";\"Roweň\";\"other\"\n\"3076726\";\"Dolní Poustevna\";\"main\"\n\"3076726\";\"Dolni Poustevna\";\"ascii\"\n\"3076726\";\"Nieder-Einsiedel\";\"other\"\n\"3076726\";\"Poustevna\";\"other\"\n\"3076734\";\"Dolní Podluží\";\"main\"\n\"3076734\";\"Dolni Podluzi\";\"ascii\"\n\"3076734\";\"Dolni Grunt\";\"other\"\n\"3076734\";\"Dolní Grunt\";\"other\"\n\"3076734\";\"Nieder-Grund\";\"other\"\n\"3076735\";\"Dolní Počernice\";\"main\"\n\"3076735\";\"Dolni Pocernice\";\"ascii\"\n\"3076735\";\"Unter Pocernitz\";\"other\"\n\"3076735\";\"Unter Počernitz\";\"other\"\n\"3076761\";\"Dolní Němčí\";\"main\"\n\"3076761\";\"Dolni Nemci\";\"ascii\"\n\"3076777\";\"Dolní Lutyně\";\"main\"\n\"3076777\";\"Dolni Lutyne\";\"ascii\"\n\"3076777\";\"Nemecka Lutyne\";\"other\"\n\"3076777\";\"Německá Lutyně\";\"other\"\n\"3076780\";\"Dolní Loućky\";\"main\"\n\"3076780\";\"Dolni Loucky\";\"ascii\"\n\"3076780\";\"Unter-Loucka\";\"other\"\n\"3076794\";\"Dolní Libina\";\"main\"\n\"3076794\";\"Dolni Libina\";\"ascii\"\n\"3076794\";\"Bohmisch Liebau\";\"other\"\n\"3076794\";\"Böhmisch Liebau\";\"other\"\n\"3076794\";\"Moravska Libina\";\"other\"\n\"3076794\";\"Moravská Libina\";\"other\"\n\"3076800\";\"Dolní Lhota\";\"main\"\n\"3076800\";\"Dolni Lhota\";\"ascii\"\n\"3076822\";\"Dolní Kounice\";\"main\"\n\"3076822\";\"Dolni Kounice\";\"ascii\"\n\"3076822\";\"Kanitz\";\"other\"\n\"3076873\";\"Dolní Dvořiště\";\"main\"\n\"3076873\";\"Dolni Dvoriste\";\"ascii\"\n\"3076873\";\"Unter-Haid\";\"other\"\n\"3076876\";\"Dolní Dunajovice\";\"main\"\n\"3076876\";\"Dolni Dunajovice\";\"ascii\"\n\"3076876\";\"Unter-Tannowitz\";\"other\"\n\"3076882\";\"Dolní Dobrouč\";\"main\"\n\"3076882\";\"Dolni Dobrouc\";\"ascii\"\n\"3076882\";\"Liebenthal\";\"other\"\n\"3076901\";\"Dolní Černilov\";\"main\"\n\"3076901\";\"Dolni Cernilov\";\"ascii\"\n\"3076902\";\"Dolní Čermná\";\"main\"\n\"3076902\";\"Dolni Cermna\";\"ascii\"\n\"3076903\";\"Dolní Cerekev\";\"main\"\n\"3076903\";\"Dolni Cerekev\";\"ascii\"\n\"3076903\";\"Unter Cerekwe\";\"other\"\n\"3076907\";\"Dolní Bukovsko\";\"main\"\n\"3076907\";\"Dolni Bukovsko\";\"ascii\"\n\"3076907\";\"Bukowsko\";\"other\"\n\"3076915\";\"Dolní Břežany\";\"main\"\n\"3076915\";\"Dolni Brezany\";\"ascii\"\n\"3076915\";\"Unterbrezan\";\"other\"\n\"3076915\";\"Unterbřežan\";\"other\"\n\"3076918\";\"Dolní Bousov\";\"main\"\n\"3076918\";\"Dolni Bousov\";\"ascii\"\n\"3076918\";\"Unter Bautzen\";\"other\"\n\"3076923\";\"Dolní Bojanovice\";\"main\"\n\"3076923\";\"Dolni Bojanovice\";\"ascii\"\n\"3076925\";\"Dolní Bohdíkov\";\"main\"\n\"3076925\";\"Dolni Bohdikov\";\"ascii\"\n\"3076925\";\"Cesky Bohdikov\";\"other\"\n\"3076925\";\"Český Bohdíkov\";\"other\"\n\"3076930\";\"Dolní Beřkovice\";\"main\"\n\"3076930\";\"Dolni Berkovice\";\"ascii\"\n\"3076930\";\"Unter Berkowitz\";\"other\"\n\"3076930\";\"Unter Beřkowitz\";\"other\"\n\"3076931\";\"Dolní Benešov\";\"main\"\n\"3076931\";\"Dolni Benesov\";\"ascii\"\n\"3076931\";\"Beneschau\";\"other\"\n\"3076934\";\"Dolní Bečva\";\"main\"\n\"3076934\";\"Dolni Becva\";\"ascii\"\n\"3076960\";\"Dolany\";\"main\"\n\"3076960\";\"Dollein\";\"other\"\n\"3076972\";\"Doksy\";\"main\"\n\"3076972\";\"Hirschberg\";\"other\"\n\"3076972\";\"Hirschberg in Bohmen\";\"other\"\n\"3076972\";\"Hirschberg in Böhmen\";\"other\"\n\"3076973\";\"Doksy\";\"main\"\n\"3076984\";\"Dobšice\";\"main\"\n\"3076984\";\"Dobsice\";\"ascii\"\n\"3076984\";\"Klein Tesswitz\";\"other\"\n\"3076985\";\"Dobruška\";\"main\"\n\"3076985\";\"Dobruska\";\"ascii\"\n\"3076985\";\"Dobruschka\";\"other\"\n\"3076991\";\"Dobrovice\";\"main\"\n\"3076991\";\"Dobrowitz\";\"other\"\n\"3077001\";\"Dobronín\";\"main\"\n\"3077001\";\"Dobronin\";\"ascii\"\n\"3077001\";\"Dobrenz\";\"other\"\n\"3077006\";\"Dobroměřice\";\"main\"\n\"3077006\";\"Dobromerice\";\"ascii\"\n\"3077023\";\"Dobřív\";\"main\"\n\"3077023\";\"Dobriv\";\"ascii\"\n\"3077023\";\"Dobriw\";\"other\"\n\"3077023\";\"Dobříw\";\"other\"\n\"3077024\";\"Dobříš\";\"main\"\n\"3077024\";\"Dobris\";\"ascii\"\n\"3077034\";\"Dobřichovice\";\"main\"\n\"3077034\";\"Dobrichovice\";\"ascii\"\n\"3077034\";\"Dobrichowitz\";\"other\"\n\"3077071\";\"Dobratice\";\"main\"\n\"3077073\";\"Dobřany\";\"main\"\n\"3077073\";\"Dobrany\";\"ascii\"\n\"3077073\";\"Dobrzan\";\"other\"\n\"3077075\";\"Dobrá\";\"main\"\n\"3077075\";\"Dobra\";\"ascii\"\n\"3077119\";\"Dlouhá Třebová\";\"main\"\n\"3077119\";\"Dlouha Trebova\";\"ascii\"\n\"3077119\";\"Langentriebe\";\"other\"\n\"3077148\";\"Divišov\";\"main\"\n\"3077148\";\"Divisov\";\"ascii\"\n\"3077148\";\"Diwischau\";\"other\"\n\"3077184\";\"Dětmarovice\";\"main\"\n\"3077184\";\"Detmarovice\";\"ascii\"\n\"3077184\";\"Dittmannsdorf\";\"other\"\n\"3077184\";\"Dziecmorowice\";\"other\"\n\"3077184\";\"Dziećmorowice\";\"other\"\n\"3077198\";\"Desná\";\"main\"\n\"3077198\";\"Desna\";\"ascii\"\n\"3077198\";\"Dessendorf\";\"other\"\n\"3077244\";\"Děčín\";\"main\"\n\"3077244\";\"Decin\";\"ascii\"\n\"3077244\";\"Dechin\";\"other\"\n\"3077244\";\"Decinas\";\"other\"\n\"3077244\";\"Dečinas\";\"other\"\n\"3077244\";\"Tetschen\";\"other\"\n\"3077244\";\"Дечин\";\"other\"\n\"3077258\";\"Davle\";\"main\"\n\"3077258\";\"Dalve\";\"other\"\n\"3077258\";\"Dawle\";\"other\"\n\"3077264\";\"Dašice\";\"main\"\n\"3077264\";\"Dasice\";\"ascii\"\n\"3077264\";\"Daschitz\";\"other\"\n\"3077268\";\"Darkovice\";\"main\"\n\"3077285\";\"Dambořice\";\"main\"\n\"3077285\";\"Damborice\";\"ascii\"\n\"3077285\";\"Damboritz\";\"other\"\n\"3077291\";\"Dalovice\";\"main\"\n\"3077291\";\"Dallwitz\";\"other\"\n\"3077304\";\"Dačice\";\"main\"\n\"3077304\";\"Dacice\";\"ascii\"\n\"3077304\";\"Datschitz\";\"other\"\n\"3077318\";\"Cvikov\";\"main\"\n\"3077318\";\"Zwickau\";\"other\"\n\"3077349\";\"Čkyně\";\"main\"\n\"3077349\";\"Ckyne\";\"ascii\"\n\"3077349\";\"Ckyn\";\"other\"\n\"3077349\";\"Čkyn\";\"other\"\n\"3077359\";\"Čížkovice\";\"main\"\n\"3077359\";\"Cizkovice\";\"ascii\"\n\"3077359\";\"Tschischkowitz\";\"other\"\n\"3077366\";\"Cítov\";\"main\"\n\"3077366\";\"Citov\";\"ascii\"\n\"3077391\";\"Církvice\";\"main\"\n\"3077391\";\"Cirkvice\";\"ascii\"\n\"3077407\";\"Čimelice\";\"main\"\n\"3077407\";\"Cimelice\";\"ascii\"\n\"3077407\";\"Cimelitz\";\"other\"\n\"3077407\";\"Čimelitz\";\"other\"\n\"3077453\";\"Chyšky\";\"main\"\n\"3077453\";\"Chysky\";\"ascii\"\n\"3077453\";\"Klein Chyschka\";\"other\"\n\"3077457\";\"Chýnov\";\"main\"\n\"3077457\";\"Chynov\";\"ascii\"\n\"3077457\";\"Chejnow\";\"other\"\n\"3077461\";\"Chyňava\";\"main\"\n\"3077461\";\"Chynava\";\"ascii\"\n\"3077461\";\"Chynawa\";\"other\"\n\"3077478\";\"Chvalšiny\";\"main\"\n\"3077478\";\"Chvalsiny\";\"ascii\"\n\"3077478\";\"Kalsching\";\"other\"\n\"3077501\";\"Chvaletice\";\"main\"\n\"3077501\";\"Chavaletice\";\"other\"\n\"3077501\";\"Chwaletitz\";\"other\"\n\"3077508\";\"Chvalčov\";\"main\"\n\"3077508\";\"Chvalcov\";\"ascii\"\n\"3077533\";\"Chuchelná\";\"main\"\n\"3077533\";\"Chuchelna\";\"ascii\"\n\"3077533\";\"Kuchelna\";\"other\"\n\"3077539\";\"Chrudim\";\"main\"\n\"3077543\";\"Chroustovice\";\"main\"\n\"3077543\";\"Chroustowitz\";\"other\"\n\"3077549\";\"Chropyně\";\"main\"\n\"3077549\";\"Chropyne\";\"ascii\"\n\"3077549\";\"Chropin\";\"other\"\n\"3077558\";\"Chřibská\";\"main\"\n\"3077558\";\"Chribska\";\"ascii\"\n\"3077558\";\"Kreibitz\";\"other\"\n\"3077584\";\"Chrastava\";\"main\"\n\"3077584\";\"Kratzau\";\"other\"\n\"3077596\";\"Chrast\";\"main\"\n\"3077598\";\"Chrást\";\"main\"\n\"3077598\";\"Chrast\";\"ascii\"\n\"3077625\";\"Chotoviny\";\"main\"\n\"3077650\";\"Chotěšov\";\"main\"\n\"3077650\";\"Chotesov\";\"ascii\"\n\"3077650\";\"Choteschau\";\"other\"\n\"3077650\";\"Chotěschau\";\"other\"\n\"3077665\";\"Chotěbuz\";\"main\"\n\"3077665\";\"Chotebuz\";\"ascii\"\n\"3077665\";\"Kocobedz\";\"other\"\n\"3077665\";\"Kocobędz\";\"other\"\n\"3077665\";\"Kotzobenz\";\"other\"\n\"3077665\";\"Kozobentz\";\"other\"\n\"3077669\";\"Chotěboř\";\"main\"\n\"3077669\";\"Chotebor\";\"ascii\"\n\"3077685\";\"Chomutov\";\"main\"\n\"3077685\";\"Khomutov\";\"other\"\n\"3077685\";\"Komotau\";\"other\"\n\"3077685\";\"homutofu\";\"other\"\n\"3077685\";\"Хомутов\";\"other\"\n\"3077685\";\"ホムトフ\";\"other\"\n\"3077705\";\"Chodová Planá\";\"main\"\n\"3077705\";\"Chodova Plana\";\"ascii\"\n\"3077705\";\"Kuttenplan\";\"other\"\n\"3077706\";\"Chodov\";\"main\"\n\"3077706\";\"Chodau\";\"other\"\n\"3077725\";\"Choceň\";\"main\"\n\"3077725\";\"Chocen\";\"ascii\"\n\"3077725\";\"Checen\";\"other\"\n\"3077725\";\"Checeň\";\"other\"\n\"3077725\";\"Chotzen\";\"other\"\n\"3077741\";\"Chlum u Třeboně\";\"main\"\n\"3077741\";\"Chlum u Trebone\";\"ascii\"\n\"3077741\";\"Chlum\";\"other\"\n\"3077741\";\"Chlumec\";\"other\"\n\"3077741\";\"Chlumetz\";\"other\"\n\"3077751\";\"Chlumec nad Cidlinou\";\"main\"\n\"3077751\";\"Chlumec\";\"other\"\n\"3077751\";\"Chlumec na Cidline\";\"other\"\n\"3077751\";\"Chlumec na Cidliňe\";\"other\"\n\"3077754\";\"Chlumec\";\"main\"\n\"3077754\";\"Kulm\";\"other\"\n\"3077760\";\"Chlumčany\";\"main\"\n\"3077760\";\"Chlumcany\";\"ascii\"\n\"3077828\";\"Chlebičov\";\"main\"\n\"3077828\";\"Chlebicov\";\"ascii\"\n\"3077835\";\"Cheb\";\"main\"\n\"3077835\";\"Chebas\";\"other\"\n\"3077835\";\"Eger\";\"other\"\n\"3077835\";\"Kheb\";\"other\"\n\"3077835\";\"hepu\";\"other\"\n\"3077835\";\"Хеб\";\"other\"\n\"3077835\";\"ヘプ\";\"other\"\n\"3077862\";\"Chabařovice\";\"main\"\n\"3077862\";\"Chabarovice\";\"ascii\"\n\"3077862\";\"Karbitz\";\"other\"\n\"3077882\";\"Český Těšín\";\"main\"\n\"3077882\";\"Cesky Tesin\";\"ascii\"\n\"3077882\";\"Ceski Tjesin\";\"other\"\n\"3077882\";\"Cheski-Teshin\";\"other\"\n\"3077882\";\"Czeski Cieszyn\";\"other\"\n\"3077882\";\"Teschen\";\"other\"\n\"3077882\";\"Tesin\";\"other\"\n\"3077882\";\"Tschechisch Teschen\";\"other\"\n\"3077882\";\"Český Tešín\";\"other\"\n\"3077882\";\"Češki Tješin\";\"other\"\n\"3077882\";\"Чески-Тешин\";\"other\"\n\"3077884\";\"Český Rudolec\";\"main\"\n\"3077884\";\"Cesky Rudolec\";\"ascii\"\n\"3077884\";\"Bohmisch Rudoletz\";\"other\"\n\"3077884\";\"Böhmisch Rudoletz\";\"other\"\n\"3077889\";\"Český Krumlov\";\"main\"\n\"3077889\";\"Cesky Krumlov\";\"ascii\"\n\"3077889\";\"Boehmisch Krumau\";\"other\"\n\"3077889\";\"Böhmisch Krumau\";\"other\"\n\"3077889\";\"Ceske Krumlov\";\"other\"\n\"3077889\";\"Cheski Krumlov\";\"other\"\n\"3077889\";\"Krumau\";\"other\"\n\"3077889\";\"Krumlov\";\"other\"\n\"3077889\";\"Krummau\";\"other\"\n\"3077889\";\"Tsesky Kroumlob\";\"other\"\n\"3077889\";\"jie ke ke lu mu luo fu\";\"other\"\n\"3077889\";\"ke lu mu luo fu\";\"other\"\n\"3077889\";\"Τσεσκύ Κρούμλοβ\";\"other\"\n\"3077889\";\"Чески Крумлов\";\"other\"\n\"3077889\";\"克鲁姆洛夫\";\"other\"\n\"3077889\";\"捷克克鲁姆洛夫\";\"other\"\n\"3077895\";\"Český Dub\";\"main\"\n\"3077895\";\"Cesky Dub\";\"ascii\"\n\"3077895\";\"Bohmisch Aicha\";\"other\"\n\"3077895\";\"Böhmisch Aicha\";\"other\"\n\"3077898\";\"Český Brod\";\"main\"\n\"3077898\";\"Cesky Brod\";\"ascii\"\n\"3077898\";\"Bohmisch Brod\";\"other\"\n\"3077898\";\"Böhmisch Brod\";\"other\"\n\"3077903\";\"České Velenice\";\"main\"\n\"3077903\";\"Ceske Velenice\";\"ascii\"\n\"3077906\";\"České Meziříčí\";\"main\"\n\"3077906\";\"Ceske Mezirici\";\"ascii\"\n\"3077906\";\"Mezirici\";\"other\"\n\"3077906\";\"Meziříčí\";\"other\"\n\"3077906\";\"Mezritz\";\"other\"\n\"3077906\";\"Mezřitz\";\"other\"\n\"3077916\";\"České Budějovice\";\"main\"\n\"3077916\";\"Ceske Budejovice\";\"ascii\"\n\"3077916\";\"Boehmisch Budweis\";\"other\"\n\"3077916\";\"Budejovice\";\"other\"\n\"3077916\";\"Budweis\";\"other\"\n\"3077916\";\"Böhmisch Budweis\";\"other\"\n\"3077916\";\"Ceske Budejovicai\";\"other\"\n\"3077916\";\"Cheshke Budjejovice\";\"other\"\n\"3077916\";\"Cheske Budejovice\";\"other\"\n\"3077916\";\"Cheske-Budejovice\";\"other\"\n\"3077916\";\"Czeskie Budziejowice\";\"other\"\n\"3077916\";\"Tseske Mpountegiobitse\";\"other\"\n\"3077916\";\"Česke Budejovicai\";\"other\"\n\"3077916\";\"Τσέσκε Μπουντεγιόβιτσε\";\"other\"\n\"3077916\";\"Ческе Будейовице\";\"other\"\n\"3077916\";\"Ческе-Будеёвице\";\"other\"\n\"3077916\";\"Чешке Будјејовице\";\"other\"\n\"3077916\";\"Чешке Буђејовице\";\"other\"\n\"3077918\";\"Česká Ves\";\"main\"\n\"3077918\";\"Ceska Ves\";\"ascii\"\n\"3077918\";\"Bohmischdorf\";\"other\"\n\"3077918\";\"Böhmischdorf\";\"other\"\n\"3077920\";\"Česká Třebová\";\"main\"\n\"3077920\";\"Ceska Trebova\";\"ascii\"\n\"3077920\";\"Bohmisch-Trubau\";\"other\"\n\"3077920\";\"Böhmisch-Trübau\";\"other\"\n\"3077921\";\"Česká Skalice\";\"main\"\n\"3077921\";\"Ceska Skalice\";\"ascii\"\n\"3077921\";\"Bohmisch\";\"other\"\n\"3077921\";\"Böhmisch\";\"other\"\n\"3077929\";\"Česká Lípa\";\"main\"\n\"3077929\";\"Ceska Lipa\";\"ascii\"\n\"3077929\";\"Boehmisch-Leipa\";\"other\"\n\"3077929\";\"Böhmisch-Leipa\";\"other\"\n\"3077929\";\"Cheska-Lipa\";\"other\"\n\"3077929\";\"Lipa\";\"other\"\n\"3077929\";\"Ческа-Липа\";\"other\"\n\"3077932\";\"Česká Kamenice\";\"main\"\n\"3077932\";\"Ceska Kamenice\";\"ascii\"\n\"3077932\";\"Bohmisch Kamnitz\";\"other\"\n\"3077932\";\"Böhmisch Kamnitz\";\"other\"\n\"3077955\";\"Červený Kostelec\";\"main\"\n\"3077955\";\"Cerveny Kostelec\";\"ascii\"\n\"3077955\";\"Roth-Kosteletz\";\"other\"\n\"3077965\";\"Červenka\";\"main\"\n\"3077965\";\"Cervenka\";\"ascii\"\n\"3077968\";\"Červené Pečky\";\"main\"\n\"3077968\";\"Cervene Pecky\";\"ascii\"\n\"3077968\";\"Cerveny Pecky\";\"other\"\n\"3077968\";\"Petschkau\";\"other\"\n\"3077972\";\"Červená Voda\";\"main\"\n\"3077972\";\"Cervena Voda\";\"ascii\"\n\"3077972\";\"Mahrisch Rothwasser\";\"other\"\n\"3077972\";\"Mährisch Rothwasser\";\"other\"\n\"3077972\";\"Rothwasser\";\"other\"\n\"3078012\";\"Černožice\";\"main\"\n\"3078012\";\"Cernozice\";\"ascii\"\n\"3078021\";\"Černovice\";\"main\"\n\"3078021\";\"Cernovice\";\"ascii\"\n\"3078021\";\"Cernowitz\";\"other\"\n\"3078021\";\"Černowitz\";\"other\"\n\"3078028\";\"Černošín\";\"main\"\n\"3078028\";\"Cernosin\";\"ascii\"\n\"3078028\";\"Tschernoschin\";\"other\"\n\"3078029\";\"Černošice\";\"main\"\n\"3078029\";\"Cernosice\";\"ascii\"\n\"3078038\";\"Černilov\";\"main\"\n\"3078038\";\"Cernilov\";\"ascii\"\n\"3078038\";\"Cernilow\";\"other\"\n\"3078038\";\"Černílow\";\"other\"\n\"3078065\";\"Černčice\";\"main\"\n\"3078065\";\"Cerncice\";\"ascii\"\n\"3078085\";\"Černá Hora\";\"main\"\n\"3078085\";\"Cerna Hora\";\"ascii\"\n\"3078114\";\"Cerhenice\";\"main\"\n\"3078114\";\"Cerhenitz\";\"other\"\n\"3078122\";\"Čerčany\";\"main\"\n\"3078122\";\"Cercany\";\"ascii\"\n\"3078122\";\"Cercan\";\"other\"\n\"3078122\";\"Čerčan\";\"other\"\n\"3078155\";\"Čelechovice na Hané\";\"main\"\n\"3078155\";\"Celechovice na Hane\";\"ascii\"\n\"3078160\";\"Čelákovice\";\"main\"\n\"3078160\";\"Celakovice\";\"ascii\"\n\"3078160\";\"Celakowitz\";\"other\"\n\"3078160\";\"Celakoyice\";\"other\"\n\"3078160\";\"Cellakovice\";\"other\"\n\"3078160\";\"Čelakowitz\";\"other\"\n\"3078161\";\"Čeladná\";\"main\"\n\"3078161\";\"Celadna\";\"ascii\"\n\"3078181\";\"Čejkovice\";\"main\"\n\"3078181\";\"Cejkovice\";\"ascii\"\n\"3078187\";\"Čejč\";\"main\"\n\"3078187\";\"Cejc\";\"ascii\"\n\"3078203\";\"Čechtice\";\"main\"\n\"3078203\";\"Cechtice\";\"ascii\"\n\"3078203\";\"Cechtitz\";\"other\"\n\"3078211\";\"Čebín\";\"main\"\n\"3078211\";\"Cebin\";\"ascii\"\n\"3078223\";\"Častolovice\";\"main\"\n\"3078223\";\"Castolovice\";\"ascii\"\n\"3078223\";\"Castolowitz\";\"other\"\n\"3078223\";\"Častolowitz\";\"other\"\n\"3078234\";\"Čáslav\";\"main\"\n\"3078234\";\"Caslav\";\"ascii\"\n\"3078234\";\"Caslau\";\"other\"\n\"3078234\";\"Tschaslau\";\"other\"\n\"3078234\";\"Časlau\";\"other\"\n\"3078275\";\"Bzenec\";\"main\"\n\"3078275\";\"Bisenz\";\"other\"\n\"3078286\";\"Bystřice pod Hostýnem\";\"main\"\n\"3078286\";\"Bystrice pod Hostynem\";\"ascii\"\n\"3078286\";\"Bystritz-am-Hostein\";\"other\"\n\"3078288\";\"Bystřice nad Pernštejnem\";\"main\"\n\"3078288\";\"Bystrice nad Pernstejnem\";\"ascii\"\n\"3078288\";\"Bystrice pod Pernstynem\";\"other\"\n\"3078288\";\"Bystritz am Pernstein\";\"other\"\n\"3078288\";\"Bystritz-ober-Pernstein\";\"other\"\n\"3078288\";\"Bystřice pod Pernštýnem\";\"other\"\n\"3078300\";\"Bystřice\";\"main\"\n\"3078300\";\"Bystrice\";\"ascii\"\n\"3078300\";\"Bistritz\";\"other\"\n\"3078301\";\"Bystřice\";\"main\"\n\"3078301\";\"Bystrice\";\"ascii\"\n\"3078301\";\"Bystrzyca\";\"other\"\n\"3078303\";\"Bystřec\";\"main\"\n\"3078303\";\"Bystrec\";\"ascii\"\n\"3078303\";\"Waltersdorf\";\"other\"\n\"3078306\";\"Bystré\";\"main\"\n\"3078306\";\"Bystre\";\"ascii\"\n\"3078306\";\"Bistrau\";\"other\"\n\"3078309\";\"Bystřany\";\"main\"\n\"3078309\";\"Bystrany\";\"ascii\"\n\"3078309\";\"Wisterschan\";\"other\"\n\"3078316\";\"Býšť\";\"main\"\n\"3078316\";\"Byst'\";\"ascii\"\n\"3078316\";\"Bejscht\";\"other\"\n\"3078322\";\"Byšice\";\"main\"\n\"3078322\";\"Bysice\";\"ascii\"\n\"3078322\";\"Bischitz\";\"other\"\n\"3078358\";\"Buštěhrad\";\"main\"\n\"3078358\";\"Bustehrad\";\"ascii\"\n\"3078417\";\"Bukovec\";\"main\"\n\"3078421\";\"Bukovany\";\"main\"\n\"3078421\";\"Bukwa\";\"other\"\n\"3078458\";\"Budyně nad Ohří\";\"main\"\n\"3078458\";\"Budyne nad Ohri\";\"ascii\"\n\"3078458\";\"Budin\";\"other\"\n\"3078469\";\"Budišov nad Budišovkou\";\"main\"\n\"3078469\";\"Budisov nad Budisovkou\";\"ascii\"\n\"3078469\";\"Bautsch\";\"other\"\n\"3078469\";\"Budisop n Bud\";\"other\"\n\"3078469\";\"Budišop n Bud\";\"other\"\n\"3078472\";\"Budišov\";\"main\"\n\"3078472\";\"Budisov\";\"ascii\"\n\"3078472\";\"Budischau\";\"other\"\n\"3078503\";\"Bučovice\";\"main\"\n\"3078503\";\"Bucovice\";\"ascii\"\n\"3078503\";\"Butschowitz\";\"other\"\n\"3078513\";\"Buchlovice\";\"main\"\n\"3078513\";\"Buchlowitz\";\"other\"\n\"3078536\";\"Brušperk\";\"main\"\n\"3078536\";\"Brusperk\";\"ascii\"\n\"3078536\";\"Braunsberg\";\"other\"\n\"3078545\";\"Bruntál\";\"main\"\n\"3078545\";\"Bruntal\";\"ascii\"\n\"3078545\";\"Freudenthal\";\"other\"\n\"3078547\";\"Brumovice\";\"main\"\n\"3078547\";\"Braunsdorf\";\"other\"\n\"3078561\";\"Brtnice\";\"main\"\n\"3078561\";\"Pirnitz\";\"other\"\n\"3078577\";\"Broumov\";\"main\"\n\"3078577\";\"Braunau\";\"other\"\n\"3078584\";\"Brodek u Přerova\";\"main\"\n\"3078584\";\"Brodek u Prerova\";\"ascii\"\n\"3078584\";\"Brodek\";\"other\"\n\"3078610\";\"Brno\";\"main\"\n\"3078610\";\"Berno\";\"other\"\n\"3078610\";\"Bruenn\";\"other\"\n\"3078610\";\"Bruna\";\"other\"\n\"3078610\";\"Brunn\";\"other\"\n\"3078610\";\"Brünn\";\"other\"\n\"3078610\";\"Burno\";\"other\"\n\"3078610\";\"Mprno\";\"other\"\n\"3078610\";\"beuleuno\";\"other\"\n\"3078610\";\"brnw\";\"other\"\n\"3078610\";\"bu er nuo\";\"other\"\n\"3078610\";\"buruno\";\"other\"\n\"3078610\";\"Μπρνο\";\"other\"\n\"3078610\";\"Брно\";\"other\"\n\"3078610\";\"Бърно\";\"other\"\n\"3078610\";\"ברנו\";\"other\"\n\"3078610\";\"برنو\";\"other\"\n\"3078610\";\"ブルノ\";\"other\"\n\"3078610\";\"布爾諾\";\"other\"\n\"3078610\";\"브르노\";\"other\"\n\"3078613\";\"Brniště\";\"main\"\n\"3078613\";\"Brniste\";\"ascii\"\n\"3078613\";\"Brims\";\"other\"\n\"3078613\";\"Brins\";\"other\"\n\"3078620\";\"Brněnec\";\"main\"\n\"3078620\";\"Brnenec\";\"ascii\"\n\"3078620\";\"Brunnlitz\";\"other\"\n\"3078620\";\"Brünnlitz\";\"other\"\n\"3078633\";\"Brloh\";\"main\"\n\"3078633\";\"Berlau\";\"other\"\n\"3078633\";\"Brlohy\";\"other\"\n\"3078648\";\"Břidličná\";\"main\"\n\"3078648\";\"Bridlicna\";\"ascii\"\n\"3078648\";\"Friedland\";\"other\"\n\"3078648\";\"Friedland an der Mohra\";\"other\"\n\"3078648\";\"Frydland na Morave\";\"other\"\n\"3078648\";\"Frydlant nad Moravici\";\"other\"\n\"3078648\";\"Frýdland na Moravě\";\"other\"\n\"3078648\";\"Frýdlant nad Moravicí\";\"other\"\n\"3078659\";\"Březová nad Svitavou\";\"main\"\n\"3078659\";\"Brezova nad Svitavou\";\"ascii\"\n\"3078659\";\"Brezova\";\"other\"\n\"3078659\";\"Brusau\";\"other\"\n\"3078659\";\"Brüsau\";\"other\"\n\"3078659\";\"Březová\";\"other\"\n\"3078664\";\"Březová\";\"main\"\n\"3078664\";\"Brezova\";\"ascii\"\n\"3078664\";\"Prosau\";\"other\"\n\"3078664\";\"Prösau\";\"other\"\n\"3078669\";\"Březová\";\"main\"\n\"3078669\";\"Brezova\";\"ascii\"\n\"3078669\";\"Briesau\";\"other\"\n\"3078671\";\"Březová\";\"main\"\n\"3078671\";\"Brezova\";\"ascii\"\n\"3078672\";\"Březolupy\";\"main\"\n\"3078672\";\"Brezolupy\";\"ascii\"\n\"3078672\";\"Brzezoluse\";\"other\"\n\"3078675\";\"Březno\";\"main\"\n\"3078675\";\"Brezno\";\"ascii\"\n\"3078675\";\"Priesen\";\"other\"\n\"3078683\";\"Březnice\";\"main\"\n\"3078683\";\"Breznice\";\"ascii\"\n\"3078683\";\"Breznitz\";\"other\"\n\"3078683\";\"Březnitz\";\"other\"\n\"3078685\";\"Březnice\";\"main\"\n\"3078685\";\"Breznice\";\"ascii\"\n\"3078685\";\"Brzeznitz\";\"other\"\n\"3078685\";\"Břzeznitz\";\"other\"\n\"3078732\";\"Březí\";\"main\"\n\"3078732\";\"Brezi\";\"ascii\"\n\"3078732\";\"Bratelsbrunn\";\"other\"\n\"3078732\";\"Pratelsbrunn\";\"other\"\n\"3078732\";\"Pratlsbrun\";\"other\"\n\"3078732\";\"Prátelsbrunn\";\"other\"\n\"3078732\";\"Prátlsbrun\";\"other\"\n\"3078773\";\"Břeclav\";\"main\"\n\"3078773\";\"Breclav\";\"ascii\"\n\"3078773\";\"Brzheclav\";\"other\"\n\"3078773\";\"Lundenburg\";\"other\"\n\"3078773\";\"bujetsurafu\";\"other\"\n\"3078773\";\"Бржецлав\";\"other\"\n\"3078773\";\"ブジェツラフ\";\"other\"\n\"3078807\";\"Břasy\";\"main\"\n\"3078807\";\"Brasy\";\"ascii\"\n\"3078812\";\"Brantice\";\"main\"\n\"3078812\";\"Bransdorf\";\"other\"\n\"3078833\";\"Braník\";\"main\"\n\"3078833\";\"Branik\";\"ascii\"\n\"3078836\";\"Brandýs nad Orlicí\";\"main\"\n\"3078836\";\"Brandys nad Orlici\";\"ascii\"\n\"3078836\";\"Brandeis\";\"other\"\n\"3078837\";\"Brandýs nad Labem-Stará Boleslav\";\"main\"\n\"3078837\";\"Brandys nad Labem-Stara Boleslav\";\"ascii\"\n\"3078839\";\"Brandýsek\";\"main\"\n\"3078839\";\"Brandysek\";\"ascii\"\n\"3078839\";\"Brandeis\";\"other\"\n\"3078845\";\"Braňany\";\"main\"\n\"3078845\";\"Branany\";\"ascii\"\n\"3078845\";\"Prohn\";\"other\"\n\"3078872\";\"Božice\";\"main\"\n\"3078872\";\"Bozice\";\"ascii\"\n\"3078872\";\"Possitz\";\"other\"\n\"3078885\";\"Bouzov\";\"main\"\n\"3078885\";\"Busau\";\"other\"\n\"3078903\";\"Bošovice\";\"main\"\n\"3078903\";\"Bosovice\";\"ascii\"\n\"3078903\";\"Boschowitz\";\"other\"\n\"3078910\";\"Boskovice\";\"main\"\n\"3078910\";\"Boskowitz\";\"other\"\n\"3078933\";\"Boršice\";\"main\"\n\"3078933\";\"Borsice\";\"ascii\"\n\"3078933\";\"Borschitz\";\"other\"\n\"3078957\";\"Borovany\";\"main\"\n\"3078973\";\"Borohrádek\";\"main\"\n\"3078973\";\"Borohradek\";\"ascii\"\n\"3078982\";\"Bořitov\";\"main\"\n\"3078982\";\"Boritov\";\"ascii\"\n\"3078982\";\"Borstendorf\";\"other\"\n\"3078997\";\"Bořetice\";\"main\"\n\"3078997\";\"Boretice\";\"ascii\"\n\"3079023\";\"Borek\";\"main\"\n\"3079038\";\"Bor\";\"main\"\n\"3079038\";\"Haid\";\"other\"\n\"3079078\";\"Bolatice\";\"main\"\n\"3079078\";\"Bolatitz\";\"other\"\n\"3079082\";\"Bojkovice\";\"main\"\n\"3079082\";\"Bojkowitz\";\"other\"\n\"3079099\";\"Bohutín\";\"main\"\n\"3079099\";\"Bohutin\";\"ascii\"\n\"3079102\";\"Bohušovice nad Ohří\";\"main\"\n\"3079102\";\"Bohusovice nad Ohri\";\"ascii\"\n\"3079102\";\"Bauschowitz\";\"other\"\n\"3079108\";\"Bohuslavice\";\"main\"\n\"3079108\";\"Buslawitz\";\"other\"\n\"3079121\";\"Bohuňovice\";\"main\"\n\"3079121\";\"Bohunovice\";\"ascii\"\n\"3079129\";\"Bohumín\";\"main\"\n\"3079129\";\"Bohumin\";\"ascii\"\n\"3079159\";\"Bohdalov\";\"main\"\n\"3079159\";\"Bohdalau\";\"other\"\n\"3079174\";\"Bochov\";\"main\"\n\"3079174\";\"Buchau\";\"other\"\n\"3079194\";\"Bludov\";\"main\"\n\"3079194\";\"Blauda\";\"other\"\n\"3079199\";\"Blučina\";\"main\"\n\"3079199\";\"Blucina\";\"ascii\"\n\"3079203\";\"Blovice\";\"main\"\n\"3079203\";\"Blowitz\";\"other\"\n\"3079209\";\"Blížkovice\";\"main\"\n\"3079209\";\"Blizkovice\";\"ascii\"\n\"3079212\";\"Blížejov\";\"main\"\n\"3079212\";\"Blizejov\";\"ascii\"\n\"3079212\";\"Blisowa\";\"other\"\n\"3079220\";\"Blažovice\";\"main\"\n\"3079220\";\"Blazovice\";\"ascii\"\n\"3079252\";\"Blatná\";\"main\"\n\"3079252\";\"Blatna\";\"ascii\"\n\"3079273\";\"Blansko\";\"main\"\n\"3079273\";\"Бланско\";\"other\"\n\"3079332\";\"Bílovice nad Svitavou\";\"main\"\n\"3079332\";\"Bilovice nad Svitavou\";\"ascii\"\n\"3079332\";\"Bilowitz\";\"other\"\n\"3079334\";\"Bílovice\";\"main\"\n\"3079334\";\"Bilovice\";\"ascii\"\n\"3079334\";\"Bilowitz\";\"other\"\n\"3079336\";\"Bílovec\";\"main\"\n\"3079336\";\"Bilovec\";\"ascii\"\n\"3079336\";\"Bielowiec\";\"other\"\n\"3079336\";\"Wagstadt\";\"other\"\n\"3079346\";\"Bílina Kyselka\";\"main\"\n\"3079346\";\"Bilina Kyselka\";\"ascii\"\n\"3079346\";\"Sauerbrunn\";\"other\"\n\"3079348\";\"Bílina\";\"main\"\n\"3079348\";\"Bilina\";\"ascii\"\n\"3079348\";\"Bilin\";\"other\"\n\"3079368\";\"Bílá Třemešná\";\"main\"\n\"3079368\";\"Bila Tremesna\";\"ascii\"\n\"3079368\";\"Weiss Tremeschna\";\"other\"\n\"3079374\";\"Bílá Lhota\";\"main\"\n\"3079374\";\"Bila Lhota\";\"ascii\"\n\"3079374\";\"Lhota\";\"other\"\n\"3079403\";\"Bezdružice\";\"main\"\n\"3079403\";\"Bezdruzice\";\"ascii\"\n\"3079403\";\"Weseritz\";\"other\"\n\"3079467\";\"Beroun\";\"main\"\n\"3079467\";\"Beraun\";\"other\"\n\"3079476\";\"Bernartice\";\"main\"\n\"3079476\";\"Bernaditz\";\"other\"\n\"3079500\";\"Benešov nad Ploučnicí\";\"main\"\n\"3079500\";\"Benesov nad Ploucnici\";\"ascii\"\n\"3079500\";\"Bensen\";\"other\"\n\"3079501\";\"Benešov nad Černou\";\"main\"\n\"3079501\";\"Benesov nad Cernou\";\"ascii\"\n\"3079501\";\"Deutsch Beneschau\";\"other\"\n\"3079501\";\"Nemecky Benesov\";\"other\"\n\"3079501\";\"Německý Benešov\";\"other\"\n\"3079508\";\"Benešov\";\"main\"\n\"3079508\";\"Benesov\";\"ascii\"\n\"3079508\";\"Beneschau\";\"other\"\n\"3079511\";\"Benecko\";\"main\"\n\"3079514\";\"Benátky nad Jizerou\";\"main\"\n\"3079514\";\"Benatky nad Jizerou\";\"ascii\"\n\"3079514\";\"Benatky\";\"other\"\n\"3079514\";\"Benátky\";\"other\"\n\"3079514\";\"Neu Benatek\";\"other\"\n\"3079514\";\"Nove Benatky\";\"other\"\n\"3079514\";\"Nové Benátky\";\"other\"\n\"3079532\";\"Bělotín\";\"main\"\n\"3079532\";\"Belotin\";\"ascii\"\n\"3079532\";\"Bolten\";\"other\"\n\"3079532\";\"Bölten\";\"other\"\n\"3079556\";\"Bělá pod Bezdězem\";\"main\"\n\"3079556\";\"Bela pod Bezdezem\";\"ascii\"\n\"3079556\";\"Bela pri Bedez\";\"other\"\n\"3079556\";\"Weisswasser in Bohmen\";\"other\"\n\"3079556\";\"Weisswasser in Böhmen\";\"other\"\n\"3079557\";\"Bělá nad Radbuzou\";\"main\"\n\"3079557\";\"Bela nad Radbuzou\";\"ascii\"\n\"3079557\";\"Weissensulz\";\"other\"\n\"3079605\";\"Bedihošť\";\"main\"\n\"3079605\";\"Bedihost'\";\"ascii\"\n\"3079605\";\"Bedihoscht\";\"other\"\n\"3079611\";\"Bečov\";\"main\"\n\"3079611\";\"Becov\";\"ascii\"\n\"3079611\";\"Hochpetsch\";\"other\"\n\"3079616\";\"Bechyně\";\"main\"\n\"3079616\";\"Bechyne\";\"ascii\"\n\"3079616\";\"Bechyn\";\"other\"\n\"3079620\";\"Bechlín\";\"main\"\n\"3079620\";\"Bechlin\";\"ascii\"\n\"3079632\";\"Bavorov\";\"main\"\n\"3079632\";\"Barau\";\"other\"\n\"3079637\";\"Batelov\";\"main\"\n\"3079637\";\"Batelau\";\"other\"\n\"3079637\";\"Battelau\";\"other\"\n\"3079645\";\"Baška\";\"main\"\n\"3079645\";\"Baska\";\"ascii\"\n\"3079653\";\"Bartošovice\";\"main\"\n\"3079653\";\"Bartosovice\";\"ascii\"\n\"3079653\";\"Partschendorf\";\"other\"\n\"3079671\";\"Bánov\";\"main\"\n\"3079671\";\"Banov\";\"ascii\"\n\"3079685\";\"Bakov nad Jizerou\";\"main\"\n\"3079685\";\"Bakow\";\"other\"\n\"3079732\";\"Babice\";\"main\"\n\"3079751\";\"Aš\";\"main\"\n\"3079751\";\"As\";\"ascii\"\n\"3079751\";\"Asch\";\"other\"\n\"3079817\";\"Albrechtice nad Orlicí\";\"main\"\n\"3079817\";\"Albrechtice nad Orlici\";\"ascii\"\n\"3079824\";\"Albrechtice\";\"main\"\n\"3079841\";\"Adamov\";\"main\"\n\"3079841\";\"Adamsthal\";\"other\"\n\"3079843\";\"Abertamy\";\"main\"\n\"3079843\";\"Abertham\";\"other\"\n\"3337421\";\"Lázně Bohdaneč\";\"main\"\n\"3337421\";\"Lazne Bohdanec\";\"ascii\"\n\"6269470\";\"Černý Most\";\"main\"\n\"6269470\";\"Cerny Most\";\"ascii\"\n\"2803474\";\"Zwota\";\"main\"\n\"2803476\";\"Zwönitz\";\"main\"\n\"2803476\";\"Zwonitz\";\"ascii\"\n\"2803489\";\"Zwochau\";\"main\"\n\"2803489\";\"Grebehna\";\"other\"\n\"2803515\";\"Zwingenberg\";\"main\"\n\"2803537\";\"Zwiesel\";\"main\"\n\"2803537\";\"Zwisel\";\"other\"\n\"2803545\";\"Zwiefalten\";\"main\"\n\"2803560\";\"Zwickau\";\"main\"\n\"2803560\";\"Cvikau\";\"other\"\n\"2803560\";\"Cvikkau\";\"other\"\n\"2803560\";\"Cygnea\";\"other\"\n\"2803560\";\"Stadt Zwickau\";\"other\"\n\"2803560\";\"tsuvu~ikkau\";\"other\"\n\"2803560\";\"zwykaw\";\"other\"\n\"2803560\";\"Цвикау\";\"other\"\n\"2803560\";\"Цвиккау\";\"other\"\n\"2803560\";\"زویکاو\";\"other\"\n\"2803560\";\"ツヴィッカウ\";\"other\"\n\"2803588\";\"Zwenkau\";\"main\"\n\"2803604\";\"Zweiflingen\";\"main\"\n\"2803620\";\"Zweibrücken\";\"main\"\n\"2803620\";\"Zweibrucken\";\"ascii\"\n\"2803620\";\"Deux Ponts\";\"other\"\n\"2803620\";\"Deux-Ponts\";\"other\"\n\"2803620\";\"Zweibruecken\";\"other\"\n\"2803620\";\"tsuvu~aiburyukken\";\"other\"\n\"2803620\";\"ツヴァイブリュッケン\";\"other\"\n\"2803642\";\"Zuzenhausen\";\"main\"\n\"2803651\";\"Züssow\";\"main\"\n\"2803651\";\"Zussow\";\"ascii\"\n\"2803655\";\"Zusmarshausen\";\"main\"\n\"2803667\";\"Zusamaltheim\";\"main\"\n\"2803670\";\"Zurow\";\"main\"\n\"2803723\";\"Zülpich\";\"main\"\n\"2803723\";\"Zulpich\";\"ascii\"\n\"2803723\";\"Bitwa pod Tolbiac\";\"other\"\n\"2803723\";\"Cjul'pikh\";\"other\"\n\"2803723\";\"Slaget vid Tulpiacum\";\"other\"\n\"2803723\";\"Tolbiac\";\"other\"\n\"2803723\";\"Zuelpich\";\"other\"\n\"2803723\";\"Цюльпих\";\"other\"\n\"2803776\";\"Zschortau\";\"main\"\n\"2803781\";\"Zschornewitz\";\"main\"\n\"2803786\";\"Zschorlau\";\"main\"\n\"2803798\";\"Zschopau\";\"main\"\n\"2803823\";\"Zscherndorf\";\"main\"\n\"2803825\";\"Zscherben\";\"main\"\n\"2803827\";\"Zschepplin\";\"main\"\n\"2803848\";\"Zschadrass\";\"main\"\n\"2803870\";\"Zossen\";\"main\"\n\"2803875\";\"Zöschen\";\"main\"\n\"2803875\";\"Zoschen\";\"ascii\"\n\"2803882\";\"Zornheim\";\"main\"\n\"2803884\";\"Zorneding\";\"main\"\n\"2803889\";\"Zorge\";\"main\"\n\"2803891\";\"Zörbig\";\"main\"\n\"2803891\";\"Zorbig\";\"ascii\"\n\"2803923\";\"Zolling\";\"main\"\n\"2803972\";\"Zöblitz\";\"main\"\n\"2803972\";\"Zoblitz\";\"ascii\"\n\"2804008\";\"Zittau\";\"main\"\n\"2804008\";\"Cittau\";\"other\"\n\"2804008\";\"Nimeccina\";\"other\"\n\"2804008\";\"Zitava\";\"other\"\n\"2804008\";\"Zitawa\";\"other\"\n\"2804008\";\"Zytawa\";\"other\"\n\"2804008\";\"tsu~ittau\";\"other\"\n\"2804008\";\"tsu~ittauno\";\"other\"\n\"2804008\";\"Żytawa\";\"other\"\n\"2804008\";\"Žitava\";\"other\"\n\"2804008\";\"Žitawa\";\"other\"\n\"2804008\";\"Німеччина\";\"other\"\n\"2804008\";\"Циттау\";\"other\"\n\"2804008\";\"ツィッタウ\";\"other\"\n\"2804008\";\"ツィッタウの\";\"other\"\n\"2804034\";\"Zirndorf\";\"main\"\n\"2804109\";\"Ostseebad Zinnowitz\";\"main\"\n\"2804109\";\"Zinnowitz\";\"other\"\n\"2804121\";\"Zinna\";\"main\"\n\"2804135\";\"Zingst\";\"main\"\n\"2804159\";\"Zimmern ob Rottweil\";\"main\"\n\"2804207\";\"Ziltendorf\";\"main\"\n\"2804268\";\"Ziesendorf\";\"main\"\n\"2804279\";\"Ziesar\";\"main\"\n\"2804283\";\"Ziertheim\";\"main\"\n\"2804297\";\"Zierenberg\";\"main\"\n\"2804313\";\"Ziemetshausen\";\"main\"\n\"2804318\";\"Zielitz\";\"main\"\n\"2804642\";\"Zeven\";\"main\"\n\"2804646\";\"Zeuthen\";\"main\"\n\"2804654\";\"Zeulenroda\";\"main\"\n\"2804697\";\"Zetel\";\"main\"\n\"2804729\";\"Zernien\";\"main\"\n\"2804745\";\"Zerf\";\"main\"\n\"2804748\";\"Zerbst\";\"main\"\n\"2804764\";\"Zenting\";\"main\"\n\"2804791\";\"Zemmer\";\"main\"\n\"2804803\";\"Zell unter Aichelberg\";\"main\"\n\"2804808\";\"Zellingen\";\"main\"\n\"2804810\";\"Zell im Wiesental\";\"main\"\n\"2804865\";\"Zell am Main\";\"main\"\n\"2804865\";\"Zell\";\"other\"\n\"2804867\";\"Zella-Mehlis\";\"main\"\n\"2804880\";\"Zell\";\"main\"\n\"2804882\";\"Zell\";\"main\"\n\"2804895\";\"Zell\";\"main\"\n\"2804922\";\"Zeitz\";\"main\"\n\"2804925\";\"Zeitlofs\";\"main\"\n\"2804932\";\"Zeitlarn\";\"main\"\n\"2804951\";\"Zeiskam\";\"main\"\n\"2805006\";\"Zeilarn\";\"main\"\n\"2805008\";\"Zeil\";\"main\"\n\"2805075\";\"Zehdenick\";\"main\"\n\"2805193\";\"Zarrentin\";\"main\"\n\"2805195\";\"Zarrendorf\";\"main\"\n\"2805198\";\"Zarpen\";\"main\"\n\"2805223\";\"Zappendorf\";\"main\"\n\"2805228\";\"Zapfendorf\";\"main\"\n\"2805261\";\"Zangberg\";\"main\"\n\"2805264\";\"Zandt\";\"main\"\n\"2805283\";\"Zaisenhausen\";\"main\"\n\"2805313\";\"Zahna\";\"main\"\n\"2805354\";\"Zachenberg\";\"main\"\n\"2805361\";\"Zaberfeld\";\"main\"\n\"2805365\";\"Zabeltitz\";\"main\"\n\"2805385\";\"Xanten\";\"main\"\n\"2805385\";\"Ksanten\";\"other\"\n\"2805385\";\"Santen\";\"other\"\n\"2805385\";\"kusanten\";\"other\"\n\"2805385\";\"Ксантен\";\"other\"\n\"2805385\";\"クサンテン\";\"other\"\n\"2805396\";\"Wyk auf Föhr\";\"main\"\n\"2805396\";\"Wyk auf Fohr\";\"ascii\"\n\"2805396\";\"Vyk\";\"other\"\n\"2805396\";\"Wik\";\"other\"\n\"2805396\";\"Wyck\";\"other\"\n\"2805396\";\"Wyk\";\"other\"\n\"2805396\";\"Wyk auf Foehr\";\"other\"\n\"2805400\";\"Wyhl\";\"main\"\n\"2805419\";\"Wutöschingen\";\"main\"\n\"2805419\";\"Wutoschingen\";\"ascii\"\n\"2805448\";\"Wustrow\";\"main\"\n\"2805451\";\"Wustrow\";\"main\"\n\"2805475\";\"Wusterwitz\";\"main\"\n\"2805475\";\"Grosswusterwitz\";\"other\"\n\"2805475\";\"Großwusterwitz\";\"other\"\n\"2805480\";\"Wustermark\";\"main\"\n\"2805481\";\"Wusterhusen\";\"main\"\n\"2805483\";\"Wusterhausen\";\"main\"\n\"2805497\";\"Wüstenrot\";\"main\"\n\"2805497\";\"Wustenrot\";\"ascii\"\n\"2805597\";\"Wurzen\";\"main\"\n\"2805615\";\"Würzburg\";\"main\"\n\"2805615\";\"Wurzburg\";\"ascii\"\n\"2805615\";\"Birtsmpournk\";\"other\"\n\"2805615\";\"Herbipolis\";\"other\"\n\"2805615\";\"Vircburg\";\"other\"\n\"2805615\";\"Vjurcburg\";\"other\"\n\"2805615\";\"Wuerzburg\";\"other\"\n\"2805615\";\"Wurtzburgo\";\"other\"\n\"2805615\";\"Wurzburgo\";\"other\"\n\"2805615\";\"vu~yurutsuburuku\";\"other\"\n\"2805615\";\"wei er ci bao\";\"other\"\n\"2805615\";\"Βίρτσμπουργκ\";\"other\"\n\"2805615\";\"Вирцбург\";\"other\"\n\"2805615\";\"Вюрцбург\";\"other\"\n\"2805615\";\"ヴュルツブルク\";\"other\"\n\"2805615\";\"维尔茨堡\";\"other\"\n\"2805623\";\"Wurzbach\";\"main\"\n\"2805644\";\"Würselen\";\"main\"\n\"2805644\";\"Wurselen\";\"ascii\"\n\"2805657\";\"Wurmsham\";\"main\"\n\"2805667\";\"Wurmlingen\";\"main\"\n\"2805677\";\"Wurmberg\";\"main\"\n\"2805694\";\"Wurmannsquick\";\"main\"\n\"2805753\";\"Wuppertal\";\"main\"\n\"2805753\";\"Boupertal\";\"other\"\n\"2805753\";\"Vupertale\";\"other\"\n\"2805753\";\"Vupertāle\";\"other\"\n\"2805753\";\"Vuppertal'\";\"other\"\n\"2805753\";\"fwbrtal\";\"other\"\n\"2805753\";\"vuppataru\";\"other\"\n\"2805753\";\"wu po ta er\";\"other\"\n\"2805753\";\"wwprtl\";\"other\"\n\"2805753\";\"Βούπερταλ\";\"other\"\n\"2805753\";\"Вупперталь\";\"other\"\n\"2805753\";\"וופרטל\";\"other\"\n\"2805753\";\"فوبرتال\";\"other\"\n\"2805753\";\"ヴッパータール\";\"other\"\n\"2805753\";\"伍泊塔尔\";\"other\"\n\"2805761\";\"Wunstorf\";\"main\"\n\"2805762\";\"Wunsiedel\";\"main\"\n\"2805773\";\"Wünschendorf\";\"main\"\n\"2805773\";\"Wunschendorf\";\"ascii\"\n\"2805785\";\"Wünnenberg\";\"main\"\n\"2805785\";\"Wunnenberg\";\"ascii\"\n\"2805825\";\"Wulsbüttel\";\"main\"\n\"2805825\";\"Wulsbuttel\";\"ascii\"\n\"2805861\";\"Wülknitz\";\"main\"\n\"2805861\";\"Wulknitz\";\"ascii\"\n\"2805865\";\"Wulkenzin\";\"main\"\n\"2805870\";\"Wulften\";\"main\"\n\"2805891\";\"Wulfsen\";\"main\"\n\"2805910\";\"Wülfrath\";\"main\"\n\"2805910\";\"Wulfrath\";\"ascii\"\n\"2805929\";\"Wülfershausen\";\"main\"\n\"2805929\";\"Wulfershausen\";\"ascii\"\n\"2805945\";\"Wulfen\";\"main\"\n\"2805994\";\"Wrist\";\"main\"\n\"2805999\";\"Wriezen\";\"main\"\n\"2806002\";\"Wriedel\";\"main\"\n\"2806007\";\"Wrestedt\";\"main\"\n\"2806011\";\"Wremen\";\"main\"\n\"2806072\";\"Wörthsee\";\"main\"\n\"2806072\";\"Worthsee\";\"ascii\"\n\"2806079\";\"Wörth an der Isar\";\"main\"\n\"2806079\";\"Worth an der Isar\";\"ascii\"\n\"2806079\";\"Wort\";\"other\"\n\"2806080\";\"Wörth an der Donau\";\"main\"\n\"2806080\";\"Worth an der Donau\";\"ascii\"\n\"2806080\";\"Werth\";\"other\"\n\"2806080\";\"Worth\";\"other\"\n\"2806080\";\"Wörth\";\"other\"\n\"2806081\";\"Wörth am Rhein\";\"main\"\n\"2806081\";\"Worth am Rhein\";\"ascii\"\n\"2806081\";\"Worth\";\"other\"\n\"2806081\";\"Wörth\";\"other\"\n\"2806082\";\"Wörth am Main\";\"main\"\n\"2806082\";\"Worth am Main\";\"ascii\"\n\"2806082\";\"Worth\";\"other\"\n\"2806082\";\"Wörth\";\"other\"\n\"2806097\";\"Wört\";\"main\"\n\"2806097\";\"Wort\";\"ascii\"\n\"2806105\";\"Wörrstadt\";\"main\"\n\"2806105\";\"Worrstadt\";\"ascii\"\n\"2806108\";\"Worpswede\";\"main\"\n\"2806142\";\"Worms\";\"main\"\n\"2806142\";\"Borbetomagus\";\"other\"\n\"2806142\";\"Vormatia\";\"other\"\n\"2806142\";\"Vorms\";\"other\"\n\"2806142\";\"Wormacja\";\"other\"\n\"2806142\";\"Wormatia\";\"other\"\n\"2806142\";\"boleumseu\";\"other\"\n\"2806142\";\"vu~orumusu\";\"other\"\n\"2806142\";\"wwrms\";\"other\"\n\"2806142\";\"Вормс\";\"other\"\n\"2806142\";\"וורמס\";\"other\"\n\"2806142\";\"ヴォルムス\";\"other\"\n\"2806142\";\"보름스\";\"other\"\n\"2806162\";\"Wörlitz\";\"main\"\n\"2806162\";\"Worlitz\";\"ascii\"\n\"2806173\";\"Woringen\";\"main\"\n\"2806192\";\"Worbis\";\"main\"\n\"2806232\";\"Wonsees\";\"main\"\n\"2806239\";\"Wonfurt\";\"main\"\n\"2806285\";\"Woltersdorf\";\"main\"\n\"2806287\";\"Woltersdorf\";\"main\"\n\"2806310\";\"Wolsdorf\";\"main\"\n\"2806320\";\"Wölpinghausen\";\"main\"\n\"2806320\";\"Wolpinghausen\";\"ascii\"\n\"2806322\";\"Wolpertswende\";\"main\"\n\"2806325\";\"Wolpertshausen\";\"main\"\n\"2806339\";\"Wolnzach\";\"main\"\n\"2806342\";\"Wolmirstedt\";\"main\"\n\"2806343\";\"Wolmirsleben\";\"main\"\n\"2806353\";\"Wöllstein\";\"main\"\n\"2806353\";\"Wollstein\";\"ascii\"\n\"2806442\";\"Wollbach\";\"main\"\n\"2806453\";\"Wolkramshausen\";\"main\"\n\"2806474\";\"Wolkenstein\";\"main\"\n\"2806489\";\"Wolken\";\"main\"\n\"2806501\";\"Wolgast\";\"main\"\n\"2806501\";\"Vol'gast\";\"other\"\n\"2806501\";\"Wologoszcz\";\"other\"\n\"2806501\";\"Wołogoszcz\";\"other\"\n\"2806501\";\"Вольгаст\";\"other\"\n\"2806523\";\"Wolfstein\";\"main\"\n\"2806633\";\"Wolfsegg\";\"main\"\n\"2806646\";\"Wolfschlugen\";\"main\"\n\"2806654\";\"Wolfsburg\";\"main\"\n\"2806654\";\"Vol'fsburg\";\"other\"\n\"2806654\";\"Вольфсбург\";\"other\"\n\"2806768\";\"Wolfratshausen\";\"main\"\n\"2806770\";\"Wolframs-Eschenbach\";\"main\"\n\"2806788\";\"Wölfis\";\"main\"\n\"2806788\";\"Wolfis\";\"ascii\"\n\"2806799\";\"Wolfhagen\";\"main\"\n\"2806831\";\"Wolfertschwenden\";\"main\"\n\"2806847\";\"Wolferstadt\";\"main\"\n\"2806852\";\"Wölfersheim\";\"main\"\n\"2806852\";\"Wolfersheim\";\"ascii\"\n\"2806870\";\"Wolfersdorf\";\"main\"\n\"2806870\";\"Wolferstorf\";\"other\"\n\"2806884\";\"Wolferode\";\"main\"\n\"2806914\";\"Wolfenbüttel\";\"main\"\n\"2806914\";\"Wolfenbuttel\";\"ascii\"\n\"2806914\";\"Wolfenbuettel\";\"other\"\n\"2806914\";\"Wulffenbuettel\";\"other\"\n\"2806914\";\"Wulffenbüttel\";\"other\"\n\"2806919\";\"Wolfen\";\"main\"\n\"2806919\";\"Vol'fen\";\"other\"\n\"2806919\";\"Вольфен\";\"other\"\n\"2806923\";\"Wolfegg\";\"main\"\n\"2806946\";\"Wolfach\";\"main\"\n\"2806963\";\"Woldegk\";\"main\"\n\"2807001\";\"Wöhrden\";\"main\"\n\"2807001\";\"Wohrden\";\"ascii\"\n\"2807025\";\"Wohltorf\";\"main\"\n\"2807154\";\"Witzmannsberg\";\"main\"\n\"2807177\";\"Witzhave\";\"main\"\n\"2807184\";\"Witzenhausen\";\"main\"\n\"2807201\";\"Wittstock\";\"main\"\n\"2807213\";\"Wittorf\";\"main\"\n\"2807215\";\"Wittnau\";\"main\"\n\"2807218\";\"Wittmund\";\"main\"\n\"2807229\";\"Wittmar\";\"main\"\n\"2807240\";\"Wittlich\";\"main\"\n\"2807254\";\"Wittislingen\";\"main\"\n\"2807257\";\"Wittingen\";\"main\"\n\"2807265\";\"Wittichenau\";\"main\"\n\"2807279\";\"Wittgensdorf\";\"main\"\n\"2807300\";\"Witterda\";\"main\"\n\"2807325\";\"Wittenhagen\";\"main\"\n\"2807327\";\"Wittenförden\";\"main\"\n\"2807327\";\"Wittenforden\";\"ascii\"\n\"2807335\";\"Wittenburg\";\"main\"\n\"2807344\";\"Wittenberge\";\"main\"\n\"2807363\";\"Witten\";\"main\"\n\"2807363\";\"Vitten\";\"other\"\n\"2807363\";\"vu~itten\";\"other\"\n\"2807363\";\"Виттен\";\"other\"\n\"2807363\";\"ヴィッテン\";\"other\"\n\"2807365\";\"Wittelshofen\";\"main\"\n\"2807411\";\"Wistedt\";\"main\"\n\"2807440\";\"Wissen\";\"main\"\n\"2807465\";\"Wismar\";\"main\"\n\"2807465\";\"Vismar\";\"other\"\n\"2807465\";\"Wyszomierz\";\"other\"\n\"2807465\";\"wei si ma\";\"other\"\n\"2807465\";\"Висмар\";\"other\"\n\"2807465\";\"维斯马\";\"other\"\n\"2807484\";\"Wischhafen\";\"main\"\n\"2807528\";\"Wirsberg\";\"main\"\n\"2807549\";\"Wirges\";\"main\"\n\"2807558\";\"Wirdum\";\"main\"\n\"2807579\";\"Wippra\";\"main\"\n\"2807594\";\"Wipperfürth\";\"main\"\n\"2807594\";\"Wipperfurth\";\"ascii\"\n\"2807594\";\"Viperfiurtas\";\"other\"\n\"2807594\";\"Vipperfjurt\";\"other\"\n\"2807594\";\"Wipperfuerth\";\"other\"\n\"2807594\";\"Wipperfurta\";\"other\"\n\"2807594\";\"Випперфюрт\";\"other\"\n\"2807596\";\"Wipperdorf\";\"main\"\n\"2807625\";\"Wipfeld\";\"main\"\n\"2807640\";\"Winzer\";\"main\"\n\"2807696\";\"Wintersdorf\";\"main\"\n\"2807736\";\"Winterlingen\";\"main\"\n\"2807757\";\"Winterhausen\";\"main\"\n\"2807788\";\"Winterberg\";\"main\"\n\"2807825\";\"Winterbach\";\"main\"\n\"2807845\";\"Winsen\";\"main\"\n\"2807846\";\"Winsen\";\"main\"\n\"2807852\";\"Winnweiler\";\"main\"\n\"2807859\";\"Winningen\";\"main\"\n\"2807872\";\"Winnenden\";\"main\"\n\"2807916\";\"Winklarn\";\"main\"\n\"2807991\";\"Winkelhaid\";\"main\"\n\"2808043\";\"Winhöring\";\"main\"\n\"2808043\";\"Winhoring\";\"ascii\"\n\"2808048\";\"Wingst\";\"main\"\n\"2808067\";\"Wingerode\";\"main\"\n\"2808101\";\"Windsbach\";\"main\"\n\"2808143\";\"Windischleuba\";\"main\"\n\"2808148\";\"Windischeschenbach\";\"main\"\n\"2808189\";\"Windhausen\";\"main\"\n\"2808204\";\"Windhagen\";\"main\"\n\"2808219\";\"Windesheim\";\"main\"\n\"2808241\";\"Winden\";\"main\"\n\"2808251\";\"Windelsbach\";\"main\"\n\"2808263\";\"Windeby\";\"main\"\n\"2808279\";\"Windberg\";\"main\"\n\"2808306\";\"Windach\";\"main\"\n\"2808310\";\"Wincheringen\";\"main\"\n\"2808315\";\"Wimsheim\";\"main\"\n\"2808359\";\"Wimmelburg\";\"main\"\n\"2808404\";\"Wiltingen\";\"main\"\n\"2808406\";\"Wilthen\";\"main\"\n\"2808408\";\"Wilsum\";\"main\"\n\"2808413\";\"Wilster\";\"main\"\n\"2808417\";\"Wilstedt\";\"main\"\n\"2808436\";\"Wilsdruff\";\"main\"\n\"2808461\";\"Wilnsdorf\";\"main\"\n\"2808493\";\"Willstätt\";\"main\"\n\"2808493\";\"Willstatt\";\"ascii\"\n\"2808514\";\"Willmering\";\"main\"\n\"2808533\";\"Willingshausen\";\"main\"\n\"2808544\";\"Willingen\";\"main\"\n\"2808559\";\"Willich\";\"main\"\n\"2808619\";\"Willebadessen\";\"main\"\n\"2808624\";\"Willanzheim\";\"main\"\n\"2808644\";\"Wilkau-Haßlau\";\"main\"\n\"2808644\";\"Wilkau-Hasslau\";\"ascii\"\n\"2808649\";\"Wilhermsdorf\";\"main\"\n\"2808657\";\"Wilhelmsthal\";\"main\"\n\"2808720\";\"Wilhelmshaven\";\"main\"\n\"2808720\";\"Vil'gel'mskhafen\";\"other\"\n\"2808720\";\"Willemshaven\";\"other\"\n\"2808720\";\"bilhelleumseuhapen\";\"other\"\n\"2808720\";\"fylhylmshafn\";\"other\"\n\"2808720\";\"vu~iruherumusuhafen\";\"other\"\n\"2808720\";\"wei lian gang\";\"other\"\n\"2808720\";\"Вильгельмсхафен\";\"other\"\n\"2808720\";\"فيلهيلمسهافن\";\"other\"\n\"2808720\";\"ヴィルヘルムスハーフェン\";\"other\"\n\"2808720\";\"威廉港\";\"other\"\n\"2808720\";\"빌헬름스하펜\";\"other\"\n\"2808734\";\"Wilhelmsfeld\";\"main\"\n\"2808745\";\"Wilhelmsdorf\";\"main\"\n\"2808746\";\"Wilhelmsdorf\";\"main\"\n\"2808792\";\"Wilgartswiesen\";\"main\"\n\"2808810\";\"Wildsteig\";\"main\"\n\"2808833\";\"Wildpoldsried\";\"main\"\n\"2808871\";\"Wildflecken\";\"main\"\n\"2808893\";\"Wildeshausen\";\"main\"\n\"2808947\";\"Wildenhain\";\"main\"\n\"2808956\";\"Wildenfels\";\"main\"\n\"2808970\";\"Wildenberg\";\"main\"\n\"2808987\";\"Wildemann\";\"main\"\n\"2809013\";\"Wildberg\";\"main\"\n\"2809025\";\"Bad Wildbad im Schwarzwald\";\"main\"\n\"2809025\";\"Bad Wildbad\";\"other\"\n\"2809025\";\"Stadt Bad Wildbad im Schwarzwald\";\"other\"\n\"2809025\";\"Wildbad\";\"other\"\n\"2809025\";\"Wildbad im Schwarzwald\";\"other\"\n\"2809042\";\"Wilburgstetten\";\"main\"\n\"2809065\";\"Wiggensbach\";\"main\"\n\"2809085\";\"Wietzendorf\";\"main\"\n\"2809089\";\"Wietzen\";\"main\"\n\"2809092\";\"Wietze\";\"main\"\n\"2809100\";\"Wietmarschen\";\"main\"\n\"2809123\";\"Wiesthal\";\"main\"\n\"2809134\";\"Wiesmoor\";\"main\"\n\"2809138\";\"Wiesloch\";\"main\"\n\"2809191\";\"Wiesentheid\";\"main\"\n\"2809192\";\"Wiesenthau\";\"main\"\n\"2809210\";\"Wiesent\";\"main\"\n\"2809214\";\"Wiesensteig\";\"main\"\n\"2809241\";\"Wiesenfelden\";\"main\"\n\"2809259\";\"Wiesenburg\";\"main\"\n\"2809277\";\"Wiesenbach\";\"main\"\n\"2809286\";\"Wiesenau\";\"main\"\n\"2809291\";\"Wiesen\";\"main\"\n\"2809346\";\"Wiesbaden\";\"main\"\n\"2809346\";\"Aquae Mattiacae\";\"other\"\n\"2809346\";\"Bismpanten\";\"other\"\n\"2809346\";\"Uisibada\";\"other\"\n\"2809346\";\"Visbaden\";\"other\"\n\"2809346\";\"Visbadene\";\"other\"\n\"2809346\";\"Vysbadenas\";\"other\"\n\"2809346\";\"Vīsbādene\";\"other\"\n\"2809346\";\"vu~isubaden\";\"other\"\n\"2809346\";\"wei si ba deng\";\"other\"\n\"2809346\";\"wysbadn\";\"other\"\n\"2809346\";\"Βισμπάντεν\";\"other\"\n\"2809346\";\"Висбаден\";\"other\"\n\"2809346\";\"ויסבאדן\";\"other\"\n\"2809346\";\"ویسبادن\";\"other\"\n\"2809346\";\"ヴィースバーデン\";\"other\"\n\"2809346\";\"威斯巴登\";\"other\"\n\"2809362\";\"Wiesau\";\"main\"\n\"2809367\";\"Wiesa\";\"main\"\n\"2809403\";\"Wiernsheim\";\"main\"\n\"2809415\";\"Wieren\";\"main\"\n\"2809444\";\"Wienhausen\";\"main\"\n\"2809468\";\"Wiemersdorf\";\"main\"\n\"2809509\";\"Wiek\";\"main\"\n\"2809517\";\"Wiehl\";\"main\"\n\"2809517\";\"Vil'\";\"other\"\n\"2809517\";\"Виль\";\"other\"\n\"2809524\";\"Wiehe\";\"main\"\n\"2809544\";\"Wiefelstede\";\"main\"\n\"2809550\";\"Wiednitz\";\"main\"\n\"2809567\";\"Wiederstedt\";\"main\"\n\"2809578\";\"Wiedergeltingen\";\"main\"\n\"2809587\";\"Wiedensahl\";\"main\"\n\"2809628\";\"Wiedemar\";\"main\"\n\"2809645\";\"Wieda\";\"main\"\n\"2809718\";\"Widdern\";\"main\"\n\"2809778\";\"Wickede\";\"main\"\n\"2809837\";\"Weyhausen\";\"main\"\n\"2809845\";\"Weyerbusch\";\"main\"\n\"2809856\";\"Weyarn\";\"main\"\n\"2809861\";\"Wewelsfleth\";\"main\"\n\"2809889\";\"Wetzlar\";\"main\"\n\"2809889\";\"Betslar\";\"other\"\n\"2809889\";\"Veclar\";\"other\"\n\"2809889\";\"Veclara\";\"other\"\n\"2809889\";\"Veclaras\";\"other\"\n\"2809889\";\"Veclāra\";\"other\"\n\"2809889\";\"Vetclar\";\"other\"\n\"2809889\";\"Weslar\";\"other\"\n\"2809889\";\"Weslår\";\"other\"\n\"2809889\";\"vu~ettsura\";\"other\"\n\"2809889\";\"wei ci la er\";\"other\"\n\"2809889\";\"Βέτσλαρ\";\"other\"\n\"2809889\";\"Ветцлар\";\"other\"\n\"2809889\";\"Вецлар\";\"other\"\n\"2809889\";\"ヴェッツラー\";\"other\"\n\"2809889\";\"韦茨拉尔\";\"other\"\n\"2809919\";\"Wettringen\";\"main\"\n\"2809939\";\"Wettin\";\"main\"\n\"2809944\";\"Wetterzeube\";\"main\"\n\"2809984\";\"Wetter (Ruhr)\";\"main\"\n\"2809984\";\"Stadt Wetter (Ruhr)\";\"other\"\n\"2809984\";\"Wetter\";\"other\"\n\"2809985\";\"Wetter\";\"main\"\n\"2810014\";\"Wetschen\";\"main\"\n\"2810110\";\"Westhofen\";\"main\"\n\"2810125\";\"Westheim\";\"main\"\n\"2810128\";\"Westheim\";\"main\"\n\"2810136\";\"Westhausen\";\"main\"\n\"2810184\";\"Westerstetten\";\"main\"\n\"2810188\";\"Westerstede\";\"main\"\n\"2810204\";\"Westerrönfeld\";\"main\"\n\"2810204\";\"Westerronfeld\";\"ascii\"\n\"2810214\";\"Wester-Ohrstedt\";\"main\"\n\"2810284\";\"Westerland\";\"main\"\n\"2810284\";\"Waeaesterloen'\";\"other\"\n\"2810284\";\"Wäästerlön'\";\"other\"\n\"2810289\";\"Westerkappeln\";\"main\"\n\"2810300\";\"Westerhorn\";\"main\"\n\"2810317\";\"Westerholt\";\"main\"\n\"2810336\";\"Westerheim\";\"main\"\n\"2810337\";\"Westerheim\";\"main\"\n\"2810345\";\"Westerhausen\";\"main\"\n\"2810364\";\"Westergellersen\";\"main\"\n\"2810395\";\"Westeregeln\";\"main\"\n\"2810413\";\"Westerburg\";\"main\"\n\"2810505\";\"Westensee\";\"main\"\n\"2810531\";\"Westendorf\";\"main\"\n\"2810533\";\"Westendorf\";\"main\"\n\"2810559\";\"Weste\";\"main\"\n\"2810581\";\"Wessobrunn\";\"main\"\n\"2810587\";\"Weßling\";\"main\"\n\"2810587\";\"Wessling\";\"ascii\"\n\"2810608\";\"Wesseln\";\"main\"\n\"2810612\";\"Wesseling\";\"main\"\n\"2810619\";\"Wesselburen\";\"main\"\n\"2810659\";\"Wesendorf\";\"main\"\n\"2810662\";\"Wesenberg\";\"main\"\n\"2810673\";\"Weselberg\";\"main\"\n\"2810678\";\"Wesel\";\"main\"\n\"2810678\";\"Vezel'\";\"other\"\n\"2810678\";\"Везель\";\"other\"\n\"2810702\";\"Wertingen\";\"main\"\n\"2810710\";\"Werther\";\"main\"\n\"2810716\";\"Wertheim\";\"main\"\n\"2810728\";\"Wertach\";\"main\"\n\"2810763\";\"Werpeloh\";\"main\"\n\"2810775\";\"Wernshausen\";\"main\"\n\"2810808\";\"Wernigerode\";\"main\"\n\"2810808\";\"Vernigerode\";\"other\"\n\"2810808\";\"Вернигероде\";\"other\"\n\"2810815\";\"Werneuchen\";\"main\"\n\"2810828\";\"Wernersberg\";\"main\"\n\"2810832\";\"Werneck\";\"main\"\n\"2810833\";\"Werne\";\"main\"\n\"2810833\";\"Verne\";\"other\"\n\"2810833\";\"Werne an der Lippe\";\"other\"\n\"2810833\";\"Верне\";\"other\"\n\"2810840\";\"Wernberg-Köblitz\";\"main\"\n\"2810840\";\"Wernberg-Koblitz\";\"ascii\"\n\"2810840\";\"Wernberg\";\"other\"\n\"2810841\";\"Wernau\";\"main\"\n\"2810848\";\"Wermsdorf\";\"main\"\n\"2810855\";\"Wermelskirchen\";\"main\"\n\"2810860\";\"Werlte\";\"main\"\n\"2810878\";\"Werl\";\"main\"\n\"2810898\";\"Werftpfuhl\";\"main\"\n\"2810898\";\"Verftpful'\";\"other\"\n\"2810898\";\"Верфтпфуль\";\"other\"\n\"2810919\";\"Werdohl\";\"main\"\n\"2810945\";\"Werder\";\"main\"\n\"2810969\";\"Werdau\";\"main\"\n\"2810970\";\"Werda\";\"main\"\n\"2810985\";\"Werben\";\"main\"\n\"2811000\";\"Werbach\";\"main\"\n\"2811011\";\"Wenzendorf\";\"main\"\n\"2811013\";\"Wenzenbach\";\"main\"\n\"2811034\";\"Wentorf\";\"main\"\n\"2811072\";\"Wennigsen\";\"main\"\n\"2811160\";\"Weng\";\"main\"\n\"2811173\";\"Wendtorf\";\"main\"\n\"2811187\";\"Wendorf\";\"main\"\n\"2811204\";\"Wendlingen am Neckar\";\"main\"\n\"2811204\";\"Wendlingen\";\"other\"\n\"2811218\";\"Wendisch Rietz\";\"main\"\n\"2811218\";\"Markisch Rietz\";\"other\"\n\"2811218\";\"Märkisch Rietz\";\"other\"\n\"2811227\";\"Wendisch Evern\";\"main\"\n\"2811278\";\"Wenden\";\"main\"\n\"2811292\";\"Wendelstein\";\"main\"\n\"2811295\";\"Wendelsheim\";\"main\"\n\"2811317\";\"Wendeburg\";\"main\"\n\"2811342\";\"Wemding\";\"main\"\n\"2811342\";\"Wemdingen\";\"other\"\n\"2811348\";\"Welzow\";\"main\"\n\"2811354\";\"Welzheim\";\"main\"\n\"2811361\";\"Welver\";\"main\"\n\"2811361\";\"Kirchwelver\";\"other\"\n\"2811387\";\"Welsleben\";\"main\"\n\"2811420\";\"Welschbillig\";\"main\"\n\"2811514\";\"Wellendingen\";\"main\"\n\"2811532\";\"Wellen\";\"main\"\n\"2811537\";\"Welle\";\"main\"\n\"2811570\";\"Welden\";\"main\"\n\"2811611\";\"Weitramsdorf\";\"main\"\n\"2811614\";\"Weitnau\";\"main\"\n\"2811644\";\"Weiterstadt\";\"main\"\n\"2811652\";\"Weitersburg\";\"main\"\n\"2811665\";\"Weitenhagen\";\"main\"\n\"2811683\";\"Weiten\";\"main\"\n\"2811685\";\"Weitefeld\";\"main\"\n\"2811691\";\"Weisweil\";\"main\"\n\"2811698\";\"Weißwasser\";\"main\"\n\"2811698\";\"Weisswasser\";\"ascii\"\n\"2811698\";\"Betla Woda\";\"other\"\n\"2811698\";\"Bialawoda\";\"other\"\n\"2811698\";\"Białawoda\";\"other\"\n\"2811698\";\"Bětła Woda\";\"other\"\n\"2811713\";\"Weißkeißel\";\"main\"\n\"2811713\";\"Weisskeissel\";\"ascii\"\n\"2811713\";\"Weiskeissel\";\"other\"\n\"2811715\";\"Weißig\";\"main\"\n\"2811715\";\"Weissig\";\"ascii\"\n\"2811715\";\"Weissig Ort\";\"other\"\n\"2811715\";\"Weißig Ort\";\"other\"\n\"2811837\";\"Weißenthurm\";\"main\"\n\"2811837\";\"Weissenthurm\";\"ascii\"\n\"2811852\";\"Weißenstadt\";\"main\"\n\"2811852\";\"Weissenstadt\";\"ascii\"\n\"2811860\";\"Weißensee\";\"main\"\n\"2811860\";\"Weissensee\";\"ascii\"\n\"2811865\";\"Weißensberg\";\"main\"\n\"2811865\";\"Weissensberg\";\"ascii\"\n\"2811870\";\"Weißenohe\";\"main\"\n\"2811870\";\"Weissenohe\";\"ascii\"\n\"2811879\";\"Weißenhorn\";\"main\"\n\"2811879\";\"Weissenhorn\";\"ascii\"\n\"2811899\";\"Weißenfels\";\"main\"\n\"2811899\";\"Weissenfels\";\"ascii\"\n\"2811909\";\"Weißenburg in Bayern\";\"main\"\n\"2811909\";\"Weissenburg in Bayern\";\"ascii\"\n\"2811909\";\"Weissenburg\";\"other\"\n\"2811918\";\"Weißenbrunn\";\"main\"\n\"2811918\";\"Weissenbrunn\";\"ascii\"\n\"2811927\";\"Weißenborn-Lüderode\";\"main\"\n\"2811927\";\"Weissenborn-Luderode\";\"ascii\"\n\"2811934\";\"Weißenborn\";\"main\"\n\"2811934\";\"Weissenborn\";\"ascii\"\n\"2811937\";\"Weißenborn\";\"main\"\n\"2811937\";\"Weissenborn\";\"ascii\"\n\"2811941\";\"Weißenberg\";\"main\"\n\"2811941\";\"Weissenberg\";\"ascii\"\n\"2812009\";\"Weißdorf\";\"main\"\n\"2812009\";\"Weissdorf\";\"ascii\"\n\"2812036\";\"Weißbach\";\"main\"\n\"2812036\";\"Weissbach\";\"ascii\"\n\"2812043\";\"Weißandt-Gölzau\";\"main\"\n\"2812043\";\"Weissandt-Golzau\";\"ascii\"\n\"2812043\";\"Golzau-Weissandt\";\"other\"\n\"2812043\";\"Gölzau-Weißandt\";\"other\"\n\"2812053\";\"Weissach\";\"main\"\n\"2812067\";\"Weismain\";\"main\"\n\"2812071\";\"Weiskirchen\";\"main\"\n\"2812086\";\"Weisendorf\";\"main\"\n\"2812092\";\"Weisenbach\";\"main\"\n\"2812095\";\"Weisen\";\"main\"\n\"2812099\";\"Weisel\";\"main\"\n\"2812104\";\"Weischlitz\";\"main\"\n\"2812145\";\"Weinstadt-Endersbach\";\"main\"\n\"2812145\";\"Endersbach\";\"other\"\n\"2812148\";\"Weinsheim\";\"main\"\n\"2812149\";\"Weinsheim\";\"main\"\n\"2812158\";\"Weinsberg\";\"main\"\n\"2812174\";\"Weinheim\";\"main\"\n\"2812174\";\"wyynhyym\";\"other\"\n\"2812174\";\"ויינהיים\";\"other\"\n\"2812196\";\"Weingarten\";\"main\"\n\"2812197\";\"Weingarten\";\"main\"\n\"2812204\";\"Weingarten\";\"main\"\n\"2812225\";\"Weinböhla\";\"main\"\n\"2812225\";\"Weinbohla\";\"ascii\"\n\"2812469\";\"Weinbach\";\"main\"\n\"2812482\";\"Weimar\";\"main\"\n\"2812482\";\"Vajmar\";\"other\"\n\"2812482\";\"Vajmaro\";\"other\"\n\"2812482\";\"Vejmar\";\"other\"\n\"2812482\";\"Vymar\";\"other\"\n\"2812482\";\"Výmar\";\"other\"\n\"2812482\";\"faymar\";\"other\"\n\"2812482\";\"vu~aimaru\";\"other\"\n\"2812482\";\"waymar\";\"other\"\n\"2812482\";\"wei ma\";\"other\"\n\"2812482\";\"Ваймар\";\"other\"\n\"2812482\";\"Вајмар\";\"other\"\n\"2812482\";\"Веймар\";\"other\"\n\"2812482\";\"ויימאר\";\"other\"\n\"2812482\";\"فايمار\";\"other\"\n\"2812482\";\"وایمار\";\"other\"\n\"2812482\";\"ヴァイマル\";\"other\"\n\"2812482\";\"魏玛\";\"other\"\n\"2812484\";\"Weiltingen\";\"main\"\n\"2812497\";\"Weilmünster\";\"main\"\n\"2812497\";\"Weilmunster\";\"ascii\"\n\"2812502\";\"Weil im Schönbuch\";\"main\"\n\"2812502\";\"Weil im Schonbuch\";\"ascii\"\n\"2812502\";\"Weil\";\"other\"\n\"2812509\";\"Weilheim an der Teck\";\"main\"\n\"2812515\";\"Weilheim in Oberbayern\";\"main\"\n\"2812515\";\"Weilheim\";\"other\"\n\"2812515\";\"Wilheim\";\"other\"\n\"2812516\";\"Weilheim\";\"main\"\n\"2812522\";\"Weilerswist\";\"main\"\n\"2812568\";\"Weilerbach\";\"main\"\n\"2812584\";\"Weiler\";\"main\"\n\"2812625\";\"Weil der Stadt\";\"main\"\n\"2812626\";\"Weilburg\";\"main\"\n\"2812633\";\"Weilbach\";\"main\"\n\"2812636\";\"Weil am Rhein\";\"main\"\n\"2812636\";\"Stadt Weil am Rhein\";\"other\"\n\"2812636\";\"Vajl'-na-Rejne\";\"other\"\n\"2812636\";\"Weil-am-Rhein\";\"other\"\n\"2812636\";\"Вайль-на-Рейне\";\"other\"\n\"2812644\";\"Weil\";\"main\"\n\"2812655\";\"Weikersheim\";\"main\"\n\"2812670\";\"Weihmichl\";\"main\"\n\"2812752\";\"Weiherhammer\";\"main\"\n\"2812831\";\"Weihenzell\";\"main\"\n\"2812855\";\"Weigendorf\";\"main\"\n\"2812916\";\"Weiding\";\"main\"\n\"2812931\";\"Weidhausen bei Coburg\";\"main\"\n\"2812954\";\"Weidenthal\";\"main\"\n\"2812958\";\"Weidenstetten\";\"main\"\n\"2813023\";\"Weidenbach\";\"main\"\n\"2813040\";\"Weiden\";\"main\"\n\"2813040\";\"Vajden\";\"other\"\n\"2813040\";\"Weyden\";\"other\"\n\"2813040\";\"Вайден\";\"other\"\n\"2813110\";\"Weida\";\"main\"\n\"2813145\";\"Weichs\";\"main\"\n\"2813152\";\"Weichering\";\"main\"\n\"2813176\";\"Weibersbrunn\";\"main\"\n\"2813180\";\"Weibern\";\"main\"\n\"2813209\";\"Wehringen\";\"main\"\n\"2813216\";\"Wehrheim\";\"main\"\n\"2813259\";\"Wehr\";\"main\"\n\"2813262\";\"Wehr\";\"main\"\n\"2813308\";\"Wehingen\";\"main\"\n\"2813344\";\"Wegscheid\";\"main\"\n\"2813383\";\"Wegeleben\";\"main\"\n\"2813390\";\"Wegberg\";\"main\"\n\"2813405\";\"Weferlingen\";\"main\"\n\"2813407\";\"Wefensleben\";\"main\"\n\"2813410\";\"Weeze\";\"main\"\n\"2813427\";\"Wees\";\"main\"\n\"2813433\";\"Weener\";\"main\"\n\"2813464\";\"Wedel\";\"main\"\n\"2813468\";\"Weddingstedt\";\"main\"\n\"2813480\";\"Weddersleben\";\"main\"\n\"2813493\";\"Weddelbrook\";\"main\"\n\"2813524\";\"Wechselburg\";\"main\"\n\"2813531\";\"Wechingen\";\"main\"\n\"2813573\";\"Waxweiler\";\"main\"\n\"2813624\";\"Wattmannshagen\";\"main\"\n\"2813638\";\"Wattenheim\";\"main\"\n\"2813647\";\"Wattenbek\";\"main\"\n\"2813660\";\"Wathlingen\";\"main\"\n\"2813685\";\"Wasungen\";\"main\"\n\"2813700\";\"Wassertrüdingen\";\"main\"\n\"2813700\";\"Wassertrudingen\";\"ascii\"\n\"2813723\";\"Wasserlosen\";\"main\"\n\"2813728\";\"Wasserliesch\";\"main\"\n\"2813732\";\"Wasserleben\";\"main\"\n\"2813755\";\"Wasserburg am Inn\";\"main\"\n\"2813755\";\"Wasserburg\";\"other\"\n\"2813758\";\"Wasserburg\";\"main\"\n\"2813786\";\"Wassenberg\";\"main\"\n\"2813787\";\"Wassenach\";\"main\"\n\"2813847\";\"Wäschenbeuren\";\"main\"\n\"2813847\";\"Waschenbeuren\";\"ascii\"\n\"2813860\";\"Wasbüttel\";\"main\"\n\"2813860\";\"Wasbuttel\";\"ascii\"\n\"2813864\";\"Wasbek\";\"main\"\n\"2813888\";\"Wartmannsroth\";\"main\"\n\"2813914\";\"Warthausen\";\"main\"\n\"2813935\";\"Wartenberg\";\"main\"\n\"2813935\";\"Wartenburg\";\"other\"\n\"2814005\";\"Warstein\";\"main\"\n\"2814005\";\"Stadt Warstein\";\"other\"\n\"2814005\";\"Varshtajn\";\"other\"\n\"2814005\";\"Варштайн\";\"other\"\n\"2814043\";\"Warnow\";\"main\"\n\"2814053\";\"Warngau\";\"main\"\n\"2814055\";\"Warnemünde\";\"main\"\n\"2814055\";\"Warnemuende\";\"ascii\"\n\"2814066\";\"Warmsen\";\"main\"\n\"2814077\";\"Warmensteinach\";\"main\"\n\"2814107\";\"Warin\";\"main\"\n\"2814127\";\"Warendorf\";\"main\"\n\"2814131\";\"Waren\";\"main\"\n\"2814133\";\"Wardow\";\"main\"\n\"2814146\";\"Wardenburg\";\"main\"\n\"2814153\";\"Warburg\";\"main\"\n\"2814181\";\"Wanzleben\";\"main\"\n\"2814187\";\"Wansleben\";\"main\"\n\"2814195\";\"Wannweil\";\"main\"\n\"2814241\";\"Wanna\";\"main\"\n\"2814246\";\"Wankendorf\";\"main\"\n\"2814266\";\"Wangerooge\";\"main\"\n\"2814270\";\"Wangen im Allgäu\";\"main\"\n\"2814270\";\"Wangen im Allgau\";\"ascii\"\n\"2814279\";\"Wangen\";\"main\"\n\"2814287\";\"Wangels\";\"main\"\n\"2814294\";\"Wang\";\"main\"\n\"2814297\";\"Wanfried\";\"main\"\n\"2814305\";\"Wandlitz\";\"main\"\n\"2814312\";\"Wanderup\";\"main\"\n\"2814313\";\"Wandersleben\";\"main\"\n\"2814362\";\"Waltrop\";\"main\"\n\"2814392\";\"Waltershausen\";\"main\"\n\"2814445\";\"Waltenhofen\";\"main\"\n\"2814462\";\"Walsrode\";\"main\"\n\"2814478\";\"Walsdorf\";\"main\"\n\"2814479\";\"Walschleben\";\"main\"\n\"2814486\";\"Walpertskirchen\";\"main\"\n\"2814512\";\"Wallwitz\";\"main\"\n\"2814553\";\"Wallmerod\";\"main\"\n\"2814557\";\"Wallmenroth\";\"main\"\n\"2814570\";\"Wallhausen\";\"main\"\n\"2814571\";\"Wallhausen\";\"main\"\n\"2814572\";\"Wallhausen\";\"main\"\n\"2814582\";\"Wallgau\";\"main\"\n\"2814591\";\"Wallertheim\";\"main\"\n\"2814592\";\"Wallerstein\";\"main\"\n\"2814599\";\"Wallersdorf\";\"main\"\n\"2814612\";\"Wallerfing\";\"main\"\n\"2814613\";\"Wallerfangen\";\"main\"\n\"2814632\";\"Wallenhorst\";\"main\"\n\"2814637\";\"Wallenfels\";\"main\"\n\"2814640\";\"Wallendorf\";\"main\"\n\"2814667\";\"Walldürn\";\"main\"\n\"2814667\";\"Walldurn\";\"ascii\"\n\"2814668\";\"Walldorf\";\"main\"\n\"2814670\";\"Walldorf\";\"main\"\n\"2814718\";\"Walkertshofen\";\"main\"\n\"2814733\";\"Walkenried\";\"main\"\n\"2814747\";\"Walheim\";\"main\"\n\"2814765\";\"Waldthurn\";\"main\"\n\"2814775\";\"Waldstetten\";\"main\"\n\"2814776\";\"Waldstetten\";\"main\"\n\"2814787\";\"Waldsieversdorf\";\"main\"\n\"2814791\";\"Waldshut-Tiengen\";\"main\"\n\"2814795\";\"Waldsee\";\"main\"\n\"2814815\";\"Waldsassen\";\"main\"\n\"2814832\";\"Waldrach\";\"main\"\n\"2814846\";\"Waldmünchen\";\"main\"\n\"2814846\";\"Waldmunchen\";\"ascii\"\n\"2814851\";\"Waldmohr\";\"main\"\n\"2814853\";\"Wald-Michelbach\";\"main\"\n\"2814874\";\"Waldkraiburg\";\"main\"\n\"2814878\";\"Waldkirchen\";\"main\"\n\"2814880\";\"Waldkirchen\";\"main\"\n\"2814883\";\"Waldkirch\";\"main\"\n\"2814888\";\"Waldkappel\";\"main\"\n\"2814956\";\"Waldheim\";\"main\"\n\"2815032\";\"Waldfischbach-Burgalben\";\"main\"\n\"2815035\";\"Waldfeucht\";\"main\"\n\"2815048\";\"Waldershof\";\"main\"\n\"2815059\";\"Walderbach\";\"main\"\n\"2815074\";\"Waldenburg\";\"main\"\n\"2815075\";\"Waldenburg\";\"main\"\n\"2815076\";\"Waldenbuch\";\"main\"\n\"2815101\";\"Waldeck\";\"main\"\n\"2815127\";\"Waldbüttelbrunn\";\"main\"\n\"2815127\";\"Waldbuttelbrunn\";\"ascii\"\n\"2815128\";\"Waldburg\";\"main\"\n\"2815132\";\"Waldbrunn\";\"main\"\n\"2815137\";\"Waldbröl\";\"main\"\n\"2815137\";\"Waldbrol\";\"ascii\"\n\"2815138\";\"Waldbreitbach\";\"main\"\n\"2815139\";\"Waldböckelheim\";\"main\"\n\"2815139\";\"Waldbockelheim\";\"ascii\"\n\"2815180\";\"Waldaschaff\";\"main\"\n\"2815186\";\"Waldalgesheim\";\"main\"\n\"2815198\";\"Wald\";\"main\"\n\"2815204\";\"Wald\";\"main\"\n\"2815204\";\"Kloster Wald\";\"other\"\n\"2815205\";\"Wald\";\"main\"\n\"2815218\";\"Walchum\";\"main\"\n\"2815297\";\"Waischenfeld\";\"main\"\n\"2815300\";\"Wain\";\"main\"\n\"2815303\";\"Waigolshausen\";\"main\"\n\"2815315\";\"Waidhofen\";\"main\"\n\"2815317\";\"Waidhaus\";\"main\"\n\"2815328\";\"Waibstadt\";\"main\"\n\"2815330\";\"Waiblingen\";\"main\"\n\"2815345\";\"Wahrenholz\";\"main\"\n\"2815392\";\"Wahlstedt\";\"main\"\n\"2815412\";\"Wahlitz\";\"main\"\n\"2815484\";\"Waging am See\";\"main\"\n\"2815484\";\"Waging\";\"other\"\n\"2815487\";\"Waghäusel\";\"main\"\n\"2815487\";\"Waghausel\";\"ascii\"\n\"2815507\";\"Wagenhoff\";\"main\"\n\"2815523\";\"Wagenfeld\";\"main\"\n\"2815552\";\"Waffenbrunn\";\"main\"\n\"2815559\";\"Wadgassen\";\"main\"\n\"2815563\";\"Wadersloh\";\"main\"\n\"2815565\";\"Wadern\";\"main\"\n\"2815598\";\"Wackersdorf\";\"main\"\n\"2815600\";\"Wackersberg\";\"main\"\n\"2815604\";\"Wackerow\";\"main\"\n\"2815605\";\"Wackernheim\";\"main\"\n\"2815623\";\"Wacken\";\"main\"\n\"2815642\";\"Wächtersbach\";\"main\"\n\"2815642\";\"Wachtersbach\";\"ascii\"\n\"2815651\";\"Wachtendonk\";\"main\"\n\"2815678\";\"Wachtberg\";\"main\"\n\"2815735\";\"Wachenroth\";\"main\"\n\"2815739\";\"Wachenheim an der Weinstraße\";\"main\"\n\"2815739\";\"Wachenheim an der Weinstrasse\";\"ascii\"\n\"2815739\";\"Wachenheim\";\"other\"\n\"2815782\";\"Wachau\";\"main\"\n\"2815784\";\"Wabern\";\"main\"\n\"2815803\";\"Waal\";\"main\"\n\"2815804\";\"Waakirchen\";\"main\"\n\"2815807\";\"Waake\";\"main\"\n\"2815812\";\"Waabs\";\"main\"\n\"2815823\";\"Vrees\";\"main\"\n\"2815824\";\"Vreden\";\"main\"\n\"2815824\";\"Freden\";\"other\"\n\"2815824\";\"Фреден\";\"other\"\n\"2815987\";\"Vorwerk\";\"main\"\n\"2816010\";\"Vörstetten\";\"main\"\n\"2816010\";\"Vorstetten\";\"ascii\"\n\"2816043\";\"Vorra\";\"main\"\n\"2816127\";\"Vordorf\";\"main\"\n\"2816503\";\"Vorbach\";\"main\"\n\"2816524\";\"Volxheim\";\"main\"\n\"2816527\";\"Voltlage\";\"main\"\n\"2816534\";\"Völpke\";\"main\"\n\"2816534\";\"Volpke\";\"ascii\"\n\"2816578\";\"Vollersode\";\"main\"\n\"2816596\";\"Volkstedt\";\"main\"\n\"2816616\";\"Volkmarsen\";\"main\"\n\"2816630\";\"Völklingen\";\"main\"\n\"2816630\";\"Volklingen\";\"ascii\"\n\"2816646\";\"Volkertshausen\";\"main\"\n\"2816660\";\"Völkershausen\";\"main\"\n\"2816660\";\"Volkershausen\";\"ascii\"\n\"2816687\";\"Volkenschwand\";\"main\"\n\"2816702\";\"Volkach\";\"main\"\n\"2816734\";\"Voigtstedt\";\"main\"\n\"2816760\";\"Vöhringen\";\"main\"\n\"2816760\";\"Vohringen\";\"ascii\"\n\"2816761\";\"Vöhringen\";\"main\"\n\"2816761\";\"Vohringen\";\"ascii\"\n\"2816762\";\"Vöhrenbach\";\"main\"\n\"2816762\";\"Vohrenbach\";\"ascii\"\n\"2816769\";\"Vöhl\";\"main\"\n\"2816769\";\"Vohl\";\"ascii\"\n\"2816770\";\"Vohenstrauß\";\"main\"\n\"2816770\";\"Vohenstrauss\";\"ascii\"\n\"2816770\";\"Vohenstrausz\";\"other\"\n\"2816776\";\"Vohburg an der Donau\";\"main\"\n\"2816776\";\"Vohburg\";\"other\"\n\"2816795\";\"Vogtareuth\";\"main\"\n\"2816795\";\"Voctareit\";\"other\"\n\"2816796\";\"Vogt\";\"main\"\n\"2816874\";\"Vögelsen\";\"main\"\n\"2816874\";\"Vogelsen\";\"ascii\"\n\"2817065\";\"Voerde\";\"main\"\n\"2817065\";\"Ferde\";\"other\"\n\"2817065\";\"Ферде\";\"other\"\n\"2817080\";\"Vockerode\";\"main\"\n\"2817105\";\"Vlotho\";\"main\"\n\"2817130\";\"Visselhövede\";\"main\"\n\"2817130\";\"Visselhovede\";\"ascii\"\n\"2817139\";\"Visbek\";\"main\"\n\"2817154\";\"Viöl\";\"main\"\n\"2817154\";\"Viol\";\"ascii\"\n\"2817168\";\"Vinningen\";\"main\"\n\"2817202\";\"Vilshofen\";\"main\"\n\"2817204\";\"Vilsheim\";\"main\"\n\"2817207\";\"Vilseck\";\"main\"\n\"2817209\";\"Vilsbiburg\";\"main\"\n\"2817217\";\"Villmar\";\"main\"\n\"2817220\";\"Villingen-Schwenningen\";\"main\"\n\"2817220\";\"Villingen-Shvenningen\";\"other\"\n\"2817220\";\"Виллинген-Швеннинген\";\"other\"\n\"2817222\";\"Villingendorf\";\"main\"\n\"2817230\";\"Villenbach\";\"main\"\n\"2817239\";\"Vilgertshofen\";\"main\"\n\"2817311\";\"Viersen\";\"main\"\n\"2817324\";\"Viernheim\";\"main\"\n\"2817325\";\"Viernau\";\"main\"\n\"2817339\";\"Vierkirchen\";\"main\"\n\"2817375\";\"Viereck\";\"main\"\n\"2817394\";\"Vienenburg\";\"main\"\n\"2817483\";\"Viechtach\";\"main\"\n\"2817506\";\"Vettweiß\";\"main\"\n\"2817506\";\"Vettweiss\";\"ascii\"\n\"2817512\";\"Vettelschoß\";\"main\"\n\"2817512\";\"Vettelschoss\";\"ascii\"\n\"2817517\";\"Vetschau\";\"main\"\n\"2817523\";\"Vestenbergsgreuth\";\"main\"\n\"2817537\";\"Versmold\";\"main\"\n\"2817576\";\"Verl\";\"main\"\n\"2817581\";\"Veringenstadt\";\"main\"\n\"2817599\";\"Verden\";\"main\"\n\"2817599\";\"feruden\";\"other\"\n\"2817599\";\"Верден\";\"other\"\n\"2817599\";\"フェルデン\";\"other\"\n\"2817616\";\"Venusberg\";\"main\"\n\"2817668\";\"Veltheim\";\"main\"\n\"2817674\";\"Velten\";\"main\"\n\"2817679\";\"Velpke\";\"main\"\n\"2817694\";\"Vellberg\";\"main\"\n\"2817703\";\"Velgast\";\"main\"\n\"2817704\";\"Velen\";\"main\"\n\"2817717\";\"Velden\";\"main\"\n\"2817719\";\"Velden\";\"main\"\n\"2817722\";\"Velburg\";\"main\"\n\"2817724\";\"Velbert\";\"main\"\n\"2817733\";\"Veitshöchheim\";\"main\"\n\"2817733\";\"Veitshochheim\";\"ascii\"\n\"2817736\";\"Veitsbronn\";\"main\"\n\"2817752\";\"Veilsdorf\";\"main\"\n\"2817806\";\"Veckenstedt\";\"main\"\n\"2817812\";\"Vechta\";\"main\"\n\"2817812\";\"Fekhta\";\"other\"\n\"2817812\";\"Фехта\";\"other\"\n\"2817813\";\"Vechelde\";\"main\"\n\"2817818\";\"Vaterstetten\";\"main\"\n\"2817841\";\"Varrel\";\"main\"\n\"2817873\";\"Varel\";\"main\"\n\"2817904\";\"Valley\";\"main\"\n\"2817909\";\"Vallendar\";\"main\"\n\"2817927\";\"Vaihingen an der Enz\";\"main\"\n\"2817927\";\"Vaihingen\";\"other\"\n\"2817965\";\"Vachendorf\";\"main\"\n\"2817970\";\"Vacha\";\"main\"\n\"2817976\";\"Vaale\";\"main\"\n\"2817980\";\"Üxheim\";\"main\"\n\"2817980\";\"Uxheim\";\"ascii\"\n\"2817980\";\"Uxheim-Ahutte\";\"other\"\n\"2817980\";\"Üxheim-Ahütte\";\"other\"\n\"2818014\";\"Utting am Ammersee\";\"main\"\n\"2818025\";\"Uttenweiler\";\"main\"\n\"2818027\";\"Uttenreuth\";\"main\"\n\"2818059\";\"Uthlede\";\"main\"\n\"2818060\";\"Uthleben\";\"main\"\n\"2818067\";\"Uetersen\";\"main\"\n\"2818067\";\"Utersen\";\"other\"\n\"2818067\";\"Ütersen\";\"other\"\n\"2818082\";\"Ustersbach\";\"main\"\n\"2818094\";\"Uslar\";\"main\"\n\"2818097\";\"Usingen\";\"main\"\n\"2818107\";\"Usedom\";\"main\"\n\"2818142\";\"Urspringen\";\"main\"\n\"2818155\";\"Ursensollen\";\"main\"\n\"2818170\";\"Ursberg\";\"main\"\n\"2818184\";\"Urmitz\";\"main\"\n\"2818229\";\"Urbar\";\"main\"\n\"2818232\";\"Urbach-Überdorf\";\"main\"\n\"2818232\";\"Urbach-Uberdorf\";\"ascii\"\n\"2818232\";\"Uberdorf\";\"other\"\n\"2818232\";\"Überdorf\";\"other\"\n\"2818243\";\"Urbach\";\"main\"\n\"2818246\";\"Bad Urach\";\"main\"\n\"2818246\";\"Urach\";\"other\"\n\"2818297\";\"Upgant-Schott\";\"main\"\n\"2818322\";\"Untrasried\";\"main\"\n\"2818354\";\"Unterwössen\";\"main\"\n\"2818354\";\"Unterwossen\";\"ascii\"\n\"2818418\";\"Unterwellenborn\";\"main\"\n\"2818541\";\"Unterthingau\";\"main\"\n\"2818632\";\"Untersteinach\";\"main\"\n\"2818677\";\"Untersiemau\";\"main\"\n\"2818754\";\"Unterschneidheim\";\"main\"\n\"2818766\";\"Unterschleißheim\";\"main\"\n\"2818766\";\"Unterschleissheim\";\"ascii\"\n\"2818766\";\"Schleisheim\";\"other\"\n\"2818879\";\"Unterreit\";\"main\"\n\"2818879\";\"Kirchreit\";\"other\"\n\"2818889\";\"Unterreichenbach\";\"main\"\n\"2818929\";\"Unterpleichfeld\";\"main\"\n\"2818999\";\"Unterneukirchen\";\"main\"\n\"2819030\";\"Untermünkheim\";\"main\"\n\"2819030\";\"Untermunkheim\";\"ascii\"\n\"2819075\";\"Untermerzbach\";\"main\"\n\"2819081\";\"Untermeitingen\";\"main\"\n\"2819100\";\"Untermaßfeld\";\"main\"\n\"2819100\";\"Untermassfeld\";\"ascii\"\n\"2819117\";\"Unterlüß\";\"main\"\n\"2819117\";\"Unterluss\";\"ascii\"\n\"2819167\";\"Unterleinleiter\";\"main\"\n\"2819248\";\"Unterkirnach\";\"main\"\n\"2819282\";\"Unterjettingen\";\"main\"\n\"2819465\";\"Unterhaching\";\"main\"\n\"2819465\";\"Haching\";\"other\"\n\"2819465\";\"Unterkhakhing\";\"other\"\n\"2819465\";\"Унтерхахинг\";\"other\"\n\"2819479\";\"Untergruppenbach\";\"main\"\n\"2819497\";\"Untergriesbach\";\"main\"\n\"2819568\";\"Unterföhring\";\"main\"\n\"2819568\";\"Unterfohring\";\"ascii\"\n\"2819710\";\"Unterensingen\";\"main\"\n\"2819710\";\"Ensingen\";\"other\"\n\"2819738\";\"Untereisesheim\";\"main\"\n\"2819782\";\"Unteregg\";\"main\"\n\"2819823\";\"Unterdietfurt\";\"main\"\n\"2819825\";\"Unterdießen\";\"main\"\n\"2819825\";\"Unterdiessen\";\"ascii\"\n\"2819892\";\"Unterbreizbach\";\"main\"\n\"2819974\";\"Unter-Bad Krozingen\";\"main\"\n\"2820020\";\"Unterammergau\";\"main\"\n\"2820058\";\"Unter-Abtsteinach\";\"main\"\n\"2820071\";\"Unseburg\";\"main\"\n\"2820084\";\"Unnau\";\"main\"\n\"2820087\";\"Unna\";\"main\"\n\"2820087\";\"Унна\";\"other\"\n\"2820088\";\"Unlingen\";\"main\"\n\"2820101\";\"Unkel\";\"main\"\n\"2820122\";\"Ungerhausen\";\"main\"\n\"2820150\";\"Undenheim\";\"main\"\n\"2820172\";\"Ummern\";\"main\"\n\"2820178\";\"Ummendorf\";\"main\"\n\"2820179\";\"Ummendorf\";\"main\"\n\"2820190\";\"Umkirch\";\"main\"\n\"2820217\";\"Ulrichstein\";\"main\"\n\"2820249\";\"Ulmen\";\"main\"\n\"2820256\";\"Ulm\";\"main\"\n\"2820256\";\"Oulm\";\"other\"\n\"2820256\";\"Ul'm\";\"other\"\n\"2820256\";\"Ulma\";\"other\"\n\"2820256\";\"awlm\";\"other\"\n\"2820256\";\"ulmi\";\"other\"\n\"2820256\";\"urumu\";\"other\"\n\"2820256\";\"wu er mu\";\"other\"\n\"2820256\";\"Ουλμ\";\"other\"\n\"2820256\";\"Улм\";\"other\"\n\"2820256\";\"Ульм\";\"other\"\n\"2820256\";\"אולם\";\"other\"\n\"2820256\";\"اولم\";\"other\"\n\"2820256\";\"ულმი\";\"other\"\n\"2820256\";\"ウルム\";\"other\"\n\"2820256\";\"乌尔姆\";\"other\"\n\"2820312\";\"Uichteritz\";\"main\"\n\"2820314\";\"Uhyst\";\"main\"\n\"2820322\";\"Uehrde\";\"main\"\n\"2820322\";\"Uhrde\";\"other\"\n\"2820322\";\"Ührde\";\"other\"\n\"2820334\";\"Uehlfeld\";\"main\"\n\"2820334\";\"Uhlfeld\";\"other\"\n\"2820334\";\"Ühlfeld\";\"other\"\n\"2820407\";\"Uhingen\";\"main\"\n\"2820413\";\"Uftrungen\";\"main\"\n\"2820419\";\"Uffing\";\"main\"\n\"2820423\";\"Uffenheim\";\"main\"\n\"2820436\";\"Uetze\";\"main\"\n\"2820439\";\"Uettingen\";\"main\"\n\"2820452\";\"Uenglingen\";\"main\"\n\"2820456\";\"Uelzen\";\"main\"\n\"2820457\";\"Uelversheim\";\"main\"\n\"2820458\";\"Uelsen\";\"main\"\n\"2820465\";\"Uedem\";\"main\"\n\"2820471\";\"Ueckermünde\";\"main\"\n\"2820471\";\"Ueckermunde\";\"ascii\"\n\"2820496\";\"Üdersdorf\";\"main\"\n\"2820496\";\"Udersdorf\";\"ascii\"\n\"2820498\";\"Uder\";\"main\"\n\"2820499\";\"Udenheim\";\"main\"\n\"2820529\";\"Uchtspringe\";\"main\"\n\"2820533\";\"Üchtelhausen\";\"main\"\n\"2820533\";\"Uchtelhausen\";\"ascii\"\n\"2820537\";\"Uchte\";\"main\"\n\"2820564\";\"Übersee\";\"main\"\n\"2820564\";\"Ubersee\";\"ascii\"\n\"2820577\";\"Überlingen\";\"main\"\n\"2820577\";\"Uberlingen\";\"ascii\"\n\"2820583\";\"Überherrn\";\"main\"\n\"2820583\";\"Uberherrn\";\"ascii\"\n\"2820621\";\"Übach-Palenberg\";\"main\"\n\"2820621\";\"Ubach-Palenberg\";\"ascii\"\n\"2820624\";\"Tschernitz\";\"main\"\n\"2820624\";\"Tzschernitz\";\"other\"\n\"2820633\";\"Tyrlaching\";\"main\"\n\"2820643\";\"Twistringen\";\"main\"\n\"2820692\";\"Tutzing\";\"main\"\n\"2820693\";\"Tuttlingen\";\"main\"\n\"2820697\";\"Tüttendorf\";\"main\"\n\"2820697\";\"Tuttendorf\";\"ascii\"\n\"2820704\";\"Tutow\";\"main\"\n\"2820704\";\"Tutov\";\"other\"\n\"2820704\";\"Тутов\";\"other\"\n\"2820714\";\"Tüßling\";\"main\"\n\"2820714\";\"Tussling\";\"ascii\"\n\"2820714\";\"Tuszshing\";\"other\"\n\"2820716\";\"Tussenhausen\";\"main\"\n\"2820752\";\"Türkheim\";\"main\"\n\"2820752\";\"Turkheim\";\"ascii\"\n\"2820756\";\"Türkenfeld\";\"main\"\n\"2820756\";\"Tuerkenfeld\";\"ascii\"\n\"2820775\";\"Tuntenhausen\";\"main\"\n\"2820786\";\"Tuningen\";\"main\"\n\"2820823\";\"Tülau\";\"main\"\n\"2820823\";\"Tulau\";\"ascii\"\n\"2820851\";\"Tuchenbach\";\"main\"\n\"2820856\";\"Tucheim\";\"main\"\n\"2820860\";\"Tübingen\";\"main\"\n\"2820860\";\"Tubingen\";\"ascii\"\n\"2820860\";\"Tjubingen\";\"other\"\n\"2820860\";\"Tubinga\";\"other\"\n\"2820860\";\"Tuebingen\";\"other\"\n\"2820860\";\"Tybinga\";\"other\"\n\"2820860\";\"te~yubingen\";\"other\"\n\"2820860\";\"tu bin gen\";\"other\"\n\"2820860\";\"twbyngn\";\"other\"\n\"2820860\";\"tybyngn\";\"other\"\n\"2820860\";\"Тубинген\";\"other\"\n\"2820860\";\"Тюбинген\";\"other\"\n\"2820860\";\"טובינגן\";\"other\"\n\"2820860\";\"טיבינגן\";\"other\"\n\"2820860\";\"توبینگن\";\"other\"\n\"2820860\";\"テュービンゲン\";\"other\"\n\"2820860\";\"图宾根\";\"other\"\n\"2820882\";\"Trusetal\";\"main\"\n\"2820882\";\"Auwallenburg\";\"other\"\n\"2820882\";\"Herges-Auwallenburg\";\"other\"\n\"2820905\";\"Trunkelsberg\";\"main\"\n\"2820912\";\"Trulben\";\"main\"\n\"2820964\";\"Trostberg an der Alz\";\"main\"\n\"2820964\";\"Trosburg\";\"other\"\n\"2820964\";\"Trostberg\";\"other\"\n\"2820967\";\"Tröstau\";\"main\"\n\"2820967\";\"Trostau\";\"ascii\"\n\"2820973\";\"Trossingen\";\"main\"\n\"2820974\";\"Trossin\";\"main\"\n\"2821022\";\"Trollenhagen\";\"main\"\n\"2821029\";\"Troisdorf\";\"main\"\n\"2821029\";\"Trojsdorf\";\"other\"\n\"2821029\";\"Тройсдорф\";\"other\"\n\"2821043\";\"Trogen\";\"main\"\n\"2821065\";\"Trochtelfingen\";\"main\"\n\"2821081\";\"Trittenheim\";\"main\"\n\"2821085\";\"Trittau\";\"main\"\n\"2821094\";\"Triptis\";\"main\"\n\"2821099\";\"Trippstadt\";\"main\"\n\"2821106\";\"Trinwillershagen\";\"main\"\n\"2821143\";\"Triftern\";\"main\"\n\"2821143\";\"Truftlern\";\"other\"\n\"2821157\";\"Trierweiler\";\"main\"\n\"2821164\";\"Trier\";\"main\"\n\"2821164\";\"Augusta Treverorum\";\"other\"\n\"2821164\";\"Treier\";\"other\"\n\"2821164\";\"Treveris\";\"other\"\n\"2821164\";\"Treves\";\"other\"\n\"2821164\";\"Treviri\";\"other\"\n\"2821164\";\"Treviro\";\"other\"\n\"2821164\";\"Trewir\";\"other\"\n\"2821164\";\"Trir\";\"other\"\n\"2821164\";\"Trèveris\";\"other\"\n\"2821164\";\"Trèves\";\"other\"\n\"2821164\";\"Tréier\";\"other\"\n\"2821164\";\"Tréveris\";\"other\"\n\"2821164\";\"te li er\";\"other\"\n\"2821164\";\"teulieo\";\"other\"\n\"2821164\";\"toria\";\"other\"\n\"2821164\";\"Трир\";\"other\"\n\"2821164\";\"トリーア\";\"other\"\n\"2821164\";\"特里尔\";\"other\"\n\"2821164\";\"트리어\";\"other\"\n\"2821192\";\"Triebes\";\"main\"\n\"2821211\";\"Tribsees\";\"main\"\n\"2821216\";\"Triberg\";\"main\"\n\"2821248\";\"Treuenbrietzen\";\"main\"\n\"2821251\";\"Treuen\";\"main\"\n\"2821254\";\"Treuchtlingen\";\"main\"\n\"2821336\";\"Trendelburg\";\"main\"\n\"2821342\";\"Tremsbüttel\";\"main\"\n\"2821342\";\"Tremsbuttel\";\"ascii\"\n\"2821362\";\"Treis-Karden\";\"main\"\n\"2821389\";\"Treia\";\"main\"\n\"2821395\";\"Treffurt\";\"main\"\n\"2821400\";\"Treffelstein\";\"main\"\n\"2821408\";\"Trechtingshausen\";\"main\"\n\"2821416\";\"Trebur\";\"main\"\n\"2821418\";\"Trebsen\";\"main\"\n\"2821439\";\"Trebitz\";\"main\"\n\"2821444\";\"Trebgast\";\"main\"\n\"2821450\";\"Trebendorf\";\"main\"\n\"2821465\";\"Trebbin\";\"main\"\n\"2821480\";\"Travemünde\";\"main\"\n\"2821480\";\"Travemuende\";\"ascii\"\n\"2821480\";\"Luebeck-Travemuende\";\"other\"\n\"2821480\";\"Lübeck-Travemünde\";\"other\"\n\"2821480\";\"Travemjunde\";\"other\"\n\"2821480\";\"Travenamunde\";\"other\"\n\"2821480\";\"Травемюнде\";\"other\"\n\"2821488\";\"Trautskirchen\";\"main\"\n\"2821504\";\"Trausnitz\";\"main\"\n\"2821515\";\"Traunstein\";\"main\"\n\"2821515\";\"Traunshtajn\";\"other\"\n\"2821515\";\"Траунштайн\";\"other\"\n\"2821517\";\"Traunreut\";\"main\"\n\"2821517\";\"Traunrojt\";\"other\"\n\"2821517\";\"Траунройт\";\"other\"\n\"2821548\";\"Trassem\";\"main\"\n\"2821555\";\"Trappstadt\";\"main\"\n\"2821558\";\"Trappenkamp\";\"main\"\n\"2821617\";\"Traitsching\";\"main\"\n\"2821633\";\"Train\";\"main\"\n\"2821687\";\"Trabitz\";\"main\"\n\"2821690\";\"Traben-Trarbach\";\"main\"\n\"2821736\";\"Tostedt\";\"main\"\n\"2821779\";\"Tornesch\";\"main\"\n\"2821802\";\"Torgelow\";\"main\"\n\"2821807\";\"Torgau\";\"main\"\n\"2821807\";\"Торгау\";\"other\"\n\"2821843\";\"Toppenstedt\";\"main\"\n\"2821864\";\"Töpen\";\"main\"\n\"2821864\";\"Topen\";\"ascii\"\n\"2821878\";\"Tönning\";\"main\"\n\"2821878\";\"Tonning\";\"ascii\"\n\"2821899\";\"Tönisvorst\";\"main\"\n\"2821899\";\"Tonisvorst\";\"ascii\"\n\"2821899\";\"Stadt Tonisvorst\";\"other\"\n\"2821899\";\"Stadt Tönisvorst\";\"other\"\n\"2821930\";\"Tollwitz\";\"main\"\n\"2821956\";\"Tolk\";\"main\"\n\"2821963\";\"Töging am Inn\";\"main\"\n\"2821963\";\"Toging am Inn\";\"ascii\"\n\"2821963\";\"Toging\";\"other\"\n\"2821963\";\"Töging\";\"other\"\n\"2821975\";\"Todtnau\";\"main\"\n\"2821980\";\"Todtmoos\";\"main\"\n\"2821985\";\"Todtenweis\";\"main\"\n\"2822017\";\"Todesfelde\";\"main\"\n\"2822029\";\"Todendorf\";\"main\"\n\"2822030\";\"Todenbüttel\";\"main\"\n\"2822030\";\"Todenbuttel\";\"ascii\"\n\"2822073\";\"Titz\";\"main\"\n\"2822075\";\"Tittmoning\";\"main\"\n\"2822075\";\"Tittmaning\";\"other\"\n\"2822075\";\"Tittmening\";\"other\"\n\"2822076\";\"Tittling\";\"main\"\n\"2822076\";\"Tutling\";\"other\"\n\"2822083\";\"Titisee-Neustadt\";\"main\"\n\"2822100\";\"Tirschenreuth\";\"main\"\n\"2822100\";\"Tirschenreit\";\"other\"\n\"2822100\";\"Tirshenrojt\";\"other\"\n\"2822100\";\"Тиршенройт\";\"other\"\n\"2822104\";\"Tirpersdorf\";\"main\"\n\"2822159\";\"Timmenrode\";\"main\"\n\"2822160\";\"Timmendorfer Strand\";\"main\"\n\"2822168\";\"Timmaspe\";\"main\"\n\"2822368\";\"Tiefenort\";\"main\"\n\"2822401\";\"Tiefenbronn\";\"main\"\n\"2822436\";\"Tiefenbach\";\"main\"\n\"2822443\";\"Tiefenbach\";\"main\"\n\"2822471\";\"Tiddische\";\"main\"\n\"2822484\";\"Thyrnau\";\"main\"\n\"2822522\";\"Thurnau\";\"main\"\n\"2822531\";\"Thurmannsbang\";\"main\"\n\"2822556\";\"Thür\";\"main\"\n\"2822556\";\"Thur\";\"ascii\"\n\"2822563\";\"Thüngersheim\";\"main\"\n\"2822563\";\"Thungersheim\";\"ascii\"\n\"2822564\";\"Thüngen\";\"main\"\n\"2822564\";\"Thungen\";\"ascii\"\n\"2822571\";\"Thundorf in Unterfranken\";\"main\"\n\"2822595\";\"Thum\";\"main\"\n\"2822607\";\"Thuine\";\"main\"\n\"2822684\";\"Thomm\";\"main\"\n\"2822703\";\"Thomasburg\";\"main\"\n\"2822713\";\"Tholey\";\"main\"\n\"2822736\";\"Thierstein\";\"main\"\n\"2822737\";\"Thiersheim\";\"main\"\n\"2822749\";\"Thierhaupten\";\"main\"\n\"2822786\";\"Thiendorf\";\"main\"\n\"2822786\";\"Theindorf\";\"other\"\n\"2822822\";\"Theuma\";\"main\"\n\"2822868\";\"Themar\";\"main\"\n\"2822881\";\"Theißen\";\"main\"\n\"2822881\";\"Theissen\";\"ascii\"\n\"2822883\";\"Theisseil\";\"main\"\n\"2822903\";\"Theilheim\";\"main\"\n\"2822930\";\"Thedinghausen\";\"main\"\n\"2822939\";\"Tharandt\";\"main\"\n\"2822941\";\"Thanstein\";\"main\"\n\"2822958\";\"Thannhausen\";\"main\"\n\"2823044\";\"Thalmässing\";\"main\"\n\"2823044\";\"Thalmassing\";\"ascii\"\n\"2823045\";\"Thalmassing\";\"main\"\n\"2823049\";\"Thallwitz\";\"main\"\n\"2823078\";\"Thalheim\";\"main\"\n\"2823081\";\"Thalheim\";\"main\"\n\"2823137\";\"Thaleischweiler-Fröschen\";\"main\"\n\"2823137\";\"Thaleischweiler-Froschen\";\"ascii\"\n\"2823141\";\"Thale\";\"main\"\n\"2823230\";\"Teutschenthal\";\"main\"\n\"2823245\";\"Teuschnitz\";\"main\"\n\"2823256\";\"Teupitz\";\"main\"\n\"2823257\";\"Teunz\";\"main\"\n\"2823259\";\"Teugn\";\"main\"\n\"2823355\";\"Teuchern\";\"main\"\n\"2823360\";\"Teublitz\";\"main\"\n\"2823368\";\"Tettnang\";\"main\"\n\"2823372\";\"Tettenweis\";\"main\"\n\"2823395\";\"Tettau\";\"main\"\n\"2823398\";\"Teterow\";\"main\"\n\"2823418\";\"Tessin\";\"main\"\n\"2823426\";\"Tespe\";\"main\"\n\"2823497\";\"Tennenbronn\";\"main\"\n\"2823504\";\"Teningen\";\"main\"\n\"2823515\";\"Tengen\";\"main\"\n\"2823533\";\"Templin\";\"main\"\n\"2823567\";\"Teltow\";\"main\"\n\"2823578\";\"Tellingstedt\";\"main\"\n\"2823590\";\"Telgte\";\"main\"\n\"2823603\";\"Teistungen\";\"main\"\n\"2823605\";\"Teisnach\";\"main\"\n\"2823608\";\"Teising\";\"main\"\n\"2823611\";\"Teisendorf\";\"main\"\n\"2823625\";\"Teichwolframsdorf\";\"main\"\n\"2823667\";\"Teicha\";\"main\"\n\"2823679\";\"Tegernsee\";\"main\"\n\"2823682\";\"Tegernheim\";\"main\"\n\"2823728\";\"Tecklenburg\";\"main\"\n\"2823755\";\"Tawern\";\"main\"\n\"2823764\";\"Tautenhain\";\"main\"\n\"2823788\";\"Tauscha\";\"main\"\n\"2823795\";\"Taura\";\"main\"\n\"2823799\";\"Taunusstein\";\"main\"\n\"2823799\";\"Stadt Taunusstein\";\"other\"\n\"2823799\";\"Taunusshtajn\";\"other\"\n\"2823799\";\"Таунусштайн\";\"other\"\n\"2823810\";\"Taufkirchen\";\"main\"\n\"2823811\";\"Taufkirchen\";\"main\"\n\"2823812\";\"Taufkirchen\";\"main\"\n\"2823835\";\"Tauche\";\"main\"\n\"2823836\";\"Taucha\";\"main\"\n\"2823854\";\"Tauberbischofsheim\";\"main\"\n\"2823936\";\"Tating\";\"main\"\n\"2823968\";\"Markt Taschendorf\";\"main\"\n\"2823968\";\"Taschendorf\";\"other\"\n\"2823978\";\"Tarp\";\"main\"\n\"2823981\";\"Tarnow\";\"main\"\n\"2823989\";\"Tarmstedt\";\"main\"\n\"2824000\";\"Tappenbeck\";\"main\"\n\"2824005\";\"Tapfheim\";\"main\"\n\"2824053\";\"Tannheim\";\"main\"\n\"2824055\";\"Tannhausen\";\"main\"\n\"2824063\";\"Tännesberg\";\"main\"\n\"2824063\";\"Tannesberg\";\"ascii\"\n\"2824063\";\"Tenesberg\";\"other\"\n\"2824148\";\"Tannenbergsthal\";\"main\"\n\"2824152\";\"Tannenberg\";\"main\"\n\"2824227\";\"Tanna\";\"main\"\n\"2824229\";\"Tann\";\"main\"\n\"2824230\";\"Tann\";\"main\"\n\"2824245\";\"Tangstedt\";\"main\"\n\"2824246\";\"Tangstedt\";\"main\"\n\"2824254\";\"Tangermünde\";\"main\"\n\"2824254\";\"Tangermunde\";\"ascii\"\n\"2824255\";\"Tangerhütte\";\"main\"\n\"2824255\";\"Tangerhutte\";\"ascii\"\n\"2824284\";\"Tamm\";\"main\"\n\"2824285\";\"Tambach-Dietharz\";\"main\"\n\"2824285\";\"Dietharz\";\"other\"\n\"2824316\";\"Talheim\";\"main\"\n\"2824319\";\"Talheim\";\"main\"\n\"2824379\";\"Tagmersheim\";\"main\"\n\"2824393\";\"Täferrot\";\"main\"\n\"2824393\";\"Taferrot\";\"ascii\"\n\"2824419\";\"Taching am See\";\"main\"\n\"2824420\";\"Tacherting\";\"main\"\n\"2824437\";\"Tabarz\";\"main\"\n\"2824448\";\"Syrau\";\"main\"\n\"2824461\";\"Syke\";\"main\"\n\"2824522\";\"Sustrum\";\"main\"\n\"2824525\";\"Süstedt\";\"main\"\n\"2824525\";\"Sustedt\";\"ascii\"\n\"2824545\";\"Süßen\";\"main\"\n\"2824545\";\"Sussen\";\"ascii\"\n\"2824564\";\"Süsel\";\"main\"\n\"2824564\";\"Susel\";\"ascii\"\n\"2824572\";\"Surwold\";\"main\"\n\"2824593\";\"Surberg\";\"main\"\n\"2824603\";\"Süpplingen\";\"main\"\n\"2824603\";\"Supplingen\";\"ascii\"\n\"2824609\";\"Süplingen\";\"main\"\n\"2824609\";\"Suplingen\";\"ascii\"\n\"2824655\";\"Sundern\";\"main\"\n\"2824687\";\"Sünching\";\"main\"\n\"2824687\";\"Sunching\";\"ascii\"\n\"2824729\";\"Sulzheim\";\"main\"\n\"2824730\";\"Sulzheim\";\"main\"\n\"2824738\";\"Sulzfeld am Main\";\"main\"\n\"2824741\";\"Sulzfeld\";\"main\"\n\"2824742\";\"Sulzfeld\";\"main\"\n\"2824753\";\"Sulzemoos\";\"main\"\n\"2824770\";\"Sulzdorf\";\"main\"\n\"2824776\";\"Sulzburg\";\"main\"\n\"2824787\";\"Sulzberg\";\"main\"\n\"2824801\";\"Sulzbach-Rosenberg\";\"main\"\n\"2824801\";\"Sulzbach\";\"other\"\n\"2824801\";\"Zul'cbakh-Rozenberg\";\"other\"\n\"2824801\";\"Зульцбах-Розенберг\";\"other\"\n\"2824804\";\"Sulzbach an der Murr\";\"main\"\n\"2824804\";\"Sulzbach\";\"other\"\n\"2824806\";\"Sulzbach am Main\";\"main\"\n\"2824806\";\"Sulzbach\";\"other\"\n\"2824837\";\"Sulzbach\";\"main\"\n\"2824841\";\"Sulzbach\";\"main\"\n\"2824855\";\"Sulz am Neckar\";\"main\"\n\"2824855\";\"Sulz\";\"other\"\n\"2824902\";\"Sulingen\";\"main\"\n\"2824907\";\"Sülfeld\";\"main\"\n\"2824907\";\"Sulfeld\";\"ascii\"\n\"2824926\";\"Sukow\";\"main\"\n\"2824937\";\"Sülstorf\";\"main\"\n\"2824937\";\"Sulstorf\";\"ascii\"\n\"2824937\";\"Suhlstorf\";\"other\"\n\"2824937\";\"Sühlstorf\";\"other\"\n\"2824940\";\"Suhlendorf\";\"main\"\n\"2824948\";\"Suhl\";\"main\"\n\"2824948\";\"zul'\";\"other\"\n\"2824948\";\"zuru\";\"other\"\n\"2824948\";\"Зуль\";\"other\"\n\"2824948\";\"ズール\";\"other\"\n\"2824954\";\"Sugenheim\";\"main\"\n\"2824967\";\"Sudwalde\";\"main\"\n\"2824998\";\"Südlohn\";\"main\"\n\"2824998\";\"Sudlohn\";\"ascii\"\n\"2825077\";\"Süderstapel\";\"main\"\n\"2825077\";\"Suderstapel\";\"ascii\"\n\"2825108\";\"Süderlügum\";\"main\"\n\"2825108\";\"Suderlugum\";\"ascii\"\n\"2825148\";\"Südergellersen\";\"main\"\n\"2825148\";\"Sudergellersen\";\"ascii\"\n\"2825180\";\"Suderburg\";\"main\"\n\"2825186\";\"Süderbrarup\";\"main\"\n\"2825186\";\"Suderbrarup\";\"ascii\"\n\"2825225\";\"Suddendorf\";\"main\"\n\"2825273\";\"Stützerbach\";\"main\"\n\"2825273\";\"Stutzerbach\";\"ascii\"\n\"2825275\";\"Stützengrün\";\"main\"\n\"2825275\";\"Stutzengrun\";\"ascii\"\n\"2825297\";\"Stuttgart\";\"main\"\n\"2825297\";\"Shhutgart\";\"other\"\n\"2825297\";\"Shtutgart\";\"other\"\n\"2825297\";\"Stoccarda\";\"other\"\n\"2825297\";\"Stoutnkarde\";\"other\"\n\"2825297\";\"Stutgartas\";\"other\"\n\"2825297\";\"Stutgarte\";\"other\"\n\"2825297\";\"Stutgarto\";\"other\"\n\"2825297\";\"Stuttgartum\";\"other\"\n\"2825297\";\"ashtwtgart\";\"other\"\n\"2825297\";\"s tu tkart\";\"other\"\n\"2825297\";\"shtwtghart\";\"other\"\n\"2825297\";\"shuto~uttogaruto\";\"other\"\n\"2825297\";\"si tu jia te\";\"other\"\n\"2825297\";\"stwtgrt\";\"other\"\n\"2825297\";\"syututeugaleuteu\";\"other\"\n\"2825297\";\"Štutgartas\";\"other\"\n\"2825297\";\"Štutgarte\";\"other\"\n\"2825297\";\"Στουτγκάρδη\";\"other\"\n\"2825297\";\"Штутгарт\";\"other\"\n\"2825297\";\"Штуттґарт\";\"other\"\n\"2825297\";\"Щутгарт\";\"other\"\n\"2825297\";\"שטוטגרט\";\"other\"\n\"2825297\";\"اشتوتگارت\";\"other\"\n\"2825297\";\"شتوتغارت\";\"other\"\n\"2825297\";\"สตุตการ์ต\";\"other\"\n\"2825297\";\"შტუტგარტი\";\"other\"\n\"2825297\";\"シュトゥットガルト\";\"other\"\n\"2825297\";\"斯图加特\";\"other\"\n\"2825297\";\"슈투트가르트\";\"other\"\n\"2825406\";\"Stulln\";\"main\"\n\"2825422\";\"Stuhr\";\"main\"\n\"2825429\";\"Stühlingen\";\"main\"\n\"2825429\";\"Stuhlingen\";\"ascii\"\n\"2825519\";\"Stubenberg\";\"main\"\n\"2825577\";\"Struvenhütten\";\"main\"\n\"2825577\";\"Struvenhutten\";\"ascii\"\n\"2825620\";\"Struppen\";\"main\"\n\"2825638\";\"Strullendorf\";\"main\"\n\"2825715\";\"Stromberg\";\"main\"\n\"2825797\";\"Ströbeck\";\"main\"\n\"2825797\";\"Strobeck\";\"ascii\"\n\"2826033\";\"Strehla\";\"main\"\n\"2826073\";\"Straußfurt\";\"main\"\n\"2826073\";\"Straussfurt\";\"ascii\"\n\"2826082\";\"Strausberg\";\"main\"\n\"2826088\";\"Straupitz\";\"main\"\n\"2826099\";\"Straubing\";\"main\"\n\"2826099\";\"Страубинг\";\"other\"\n\"2826120\";\"Straßkirchen\";\"main\"\n\"2826120\";\"Strasskirchen\";\"ascii\"\n\"2826187\";\"Straßberg\";\"main\"\n\"2826187\";\"Strassberg\";\"ascii\"\n\"2826258\";\"Strasburg\";\"main\"\n\"2826277\";\"Strande\";\"main\"\n\"2826287\";\"Stralsund\";\"main\"\n\"2826287\";\"Shtral'zund\";\"other\"\n\"2826287\";\"shi te la er song\";\"other\"\n\"2826287\";\"shutoraruzunto\";\"other\"\n\"2826287\";\"Штральзунд\";\"other\"\n\"2826287\";\"シュトラルズント\";\"other\"\n\"2826287\";\"施特拉尔松\";\"other\"\n\"2826290\";\"Stralendorf\";\"main\"\n\"2826304\";\"Straelen\";\"main\"\n\"2826328\";\"Stöttwang\";\"main\"\n\"2826328\";\"Stottwang\";\"ascii\"\n\"2826341\";\"Stötten am Auerberg\";\"main\"\n\"2826341\";\"Stotten am Auerberg\";\"ascii\"\n\"2826356\";\"Stößen\";\"main\"\n\"2826356\";\"Stossen\";\"ascii\"\n\"2826380\";\"Störnstein\";\"main\"\n\"2826380\";\"Stornstein\";\"ascii\"\n\"2826380\";\"Sternstein\";\"other\"\n\"2826403\";\"Storkow\";\"main\"\n\"2826503\";\"Stolzenau\";\"main\"\n\"2826532\";\"Stolpen\";\"main\"\n\"2826536\";\"Stolpe\";\"main\"\n\"2826584\";\"Stollberg\";\"main\"\n\"2826594\";\"Stolberg\";\"main\"\n\"2826595\";\"Stolberg\";\"main\"\n\"2826637\";\"Stödtlen\";\"main\"\n\"2826637\";\"Stodtlen\";\"ascii\"\n\"2826670\";\"Stockstadt am Main\";\"main\"\n\"2826670\";\"Stockstadt\";\"other\"\n\"2826671\";\"Stockstadt am Rhein\";\"main\"\n\"2826681\";\"Stöckse\";\"main\"\n\"2826681\";\"Stockse\";\"ascii\"\n\"2826741\";\"Stockheim\";\"main\"\n\"2826743\";\"Stockheim\";\"main\"\n\"2826861\";\"Stockelsdorf\";\"main\"\n\"2826909\";\"Stockach\";\"main\"\n\"2826997\";\"Stimpfach\";\"main\"\n\"2827166\";\"Steyerberg\";\"main\"\n\"2827197\";\"Stettfeld\";\"main\"\n\"2827216\";\"Stetten am Kalten Markt\";\"main\"\n\"2827240\";\"Stetten\";\"main\"\n\"2827284\";\"Sterup\";\"main\"\n\"2827318\";\"Sternenfels\";\"main\"\n\"2827336\";\"Sternberg\";\"main\"\n\"2827400\";\"Stephansposching\";\"main\"\n\"2827406\";\"Stephanskirchen\";\"main\"\n\"2827479\";\"Stendal\";\"main\"\n\"2827479\";\"Stendal'\";\"other\"\n\"2827479\";\"Стендаль\";\"other\"\n\"2827527\";\"Stelzenberg\";\"main\"\n\"2827574\";\"Stelle\";\"main\"\n\"2827602\";\"Steißlingen\";\"main\"\n\"2827602\";\"Steisslingen\";\"ascii\"\n\"2827610\";\"Steinwiesen\";\"main\"\n\"2827613\";\"Steinwenden\";\"main\"\n\"2827615\";\"Steinweiler\";\"main\"\n\"2827664\";\"Steinsfeld\";\"main\"\n\"2827758\";\"Steinmauern\";\"main\"\n\"2827862\";\"Steinkirchen\";\"main\"\n\"2827870\";\"Steinkirchen\";\"main\"\n\"2827907\";\"Steinigtwolmsdorf\";\"main\"\n\"2827951\";\"Steinhorst\";\"main\"\n\"2827955\";\"Steinhöring\";\"main\"\n\"2827955\";\"Steinhoring\";\"ascii\"\n\"2827965\";\"Steinhöfel\";\"main\"\n\"2827965\";\"Steinhofel\";\"ascii\"\n\"2827988\";\"Steinheim am der Murr\";\"main\"\n\"2827988\";\"Steinheim\";\"other\"\n\"2827989\";\"Steinheim am Albuch\";\"main\"\n\"2827990\";\"Steinheim\";\"main\"\n\"2827999\";\"Steinheid\";\"main\"\n\"2828016\";\"Steinhausen\";\"main\"\n\"2828045\";\"Steinhagen\";\"main\"\n\"2828050\";\"Steinhagen\";\"main\"\n\"2828089\";\"Steingaden\";\"main\"\n\"2828105\";\"Steinfurt\";\"main\"\n\"2828136\";\"Steinfeld\";\"main\"\n\"2828140\";\"Steinfeld\";\"main\"\n\"2828141\";\"Steinfeld\";\"main\"\n\"2828206\";\"Steinenbronn\";\"main\"\n\"2828228\";\"Steinen\";\"main\"\n\"2828396\";\"Steinbergkirche\";\"main\"\n\"2828428\";\"Steinberg\";\"main\"\n\"2828685\";\"Stein bei Nürnberg\";\"main\"\n\"2828685\";\"Stein bei Nurnberg\";\"ascii\"\n\"2828685\";\"Stein\";\"other\"\n\"2828723\";\"Kurort Steinbach-Hallenberg\";\"main\"\n\"2828723\";\"Steinbach-Hallenberg\";\"other\"\n\"2828737\";\"Steinbach am Taunus\";\"main\"\n\"2828737\";\"Steinbach\";\"other\"\n\"2828795\";\"Steinbach\";\"main\"\n\"2828805\";\"Steinbach\";\"main\"\n\"2828871\";\"Steinau an der Straße\";\"main\"\n\"2828871\";\"Steinau an der Strasse\";\"ascii\"\n\"2828871\";\"Steinau\";\"other\"\n\"2828907\";\"Steinach\";\"main\"\n\"2828911\";\"Steinach\";\"main\"\n\"2828913\";\"Steinach\";\"main\"\n\"2828923\";\"Steina\";\"main\"\n\"2828923\";\"Niedersteina\";\"other\"\n\"2828984\";\"Steimel\";\"main\"\n\"2828993\";\"Steimbke\";\"main\"\n\"2829080\";\"Stiefenhofen\";\"main\"\n\"2829080\";\"Steifenhofen\";\"other\"\n\"2829130\";\"Stegen\";\"main\"\n\"2829145\";\"Stegaurach\";\"main\"\n\"2829210\";\"Stedten\";\"main\"\n\"2829218\";\"Stedesdorf\";\"main\"\n\"2829322\";\"Staufenberg\";\"main\"\n\"2829333\";\"Staufen\";\"main\"\n\"2829353\";\"Staudernheim\";\"main\"\n\"2829375\";\"Staudach-Egerndach\";\"main\"\n\"2829402\";\"Stauchitz\";\"main\"\n\"2829422\";\"Staßfurt\";\"main\"\n\"2829422\";\"Stassfurt\";\"ascii\"\n\"2829422\";\"Shtasfurt\";\"other\"\n\"2829422\";\"Stadt Stassfurt\";\"other\"\n\"2829422\";\"Stadt Staßfurt\";\"other\"\n\"2829422\";\"Штасфурт\";\"other\"\n\"2829457\";\"Starnberg\";\"main\"\n\"2829457\";\"Shtarnberg\";\"other\"\n\"2829457\";\"Starenberg\";\"other\"\n\"2829457\";\"Штарнберг\";\"other\"\n\"2829509\";\"Stapelfeld\";\"main\"\n\"2829513\";\"Stapelburg\";\"main\"\n\"2829569\";\"Stamsried\";\"main\"\n\"2829581\";\"Stammham\";\"main\"\n\"2829582\";\"Stammham\";\"main\"\n\"2829595\";\"Stammbach\";\"main\"\n\"2829603\";\"Stallwang\";\"main\"\n\"2829644\";\"Staig\";\"main\"\n\"2829657\";\"Stahnsdorf\";\"main\"\n\"2829701\";\"Bad Staffelstein\";\"main\"\n\"2829701\";\"Staffelstein\";\"other\"\n\"2829731\";\"Stadum\";\"main\"\n\"2829734\";\"Stadt Wehlen\";\"main\"\n\"2829742\";\"Stadtsteinach\";\"main\"\n\"2829750\";\"Stadtroda\";\"main\"\n\"2829751\";\"Stadtprozelten\";\"main\"\n\"2829753\";\"Stadtoldendorf\";\"main\"\n\"2829758\";\"Stadtlohn\";\"main\"\n\"2829759\";\"Stadtlengsfeld\";\"main\"\n\"2829759\";\"Lengsfeld\";\"other\"\n\"2829760\";\"Stadtlauringen\";\"main\"\n\"2829762\";\"Stadtkyll\";\"main\"\n\"2829765\";\"Stadtilm\";\"main\"\n\"2829777\";\"Stadthagen\";\"main\"\n\"2829790\";\"Stadtbergen\";\"main\"\n\"2829790\";\"Stadtberger\";\"other\"\n\"2829804\";\"Stadtallendorf\";\"main\"\n\"2829858\";\"Stadensen\";\"main\"\n\"2829876\";\"Stadelhofen\";\"main\"\n\"2829901\";\"Stade\";\"main\"\n\"2829901\";\"Stood\";\"other\"\n\"2829901\";\"shtadh\";\"other\"\n\"2829901\";\"shutade\";\"other\"\n\"2829901\";\"شتاده\";\"other\"\n\"2829901\";\"シュターデ\";\"other\"\n\"2829943\";\"Stäbelow\";\"main\"\n\"2829943\";\"Stabelow\";\"ascii\"\n\"2829998\";\"Sprockhövel\";\"main\"\n\"2829998\";\"Sprockhovel\";\"ascii\"\n\"2830035\";\"Springe\";\"main\"\n\"2830035\";\"Shpringe\";\"other\"\n\"2830035\";\"Stadt Springe\";\"other\"\n\"2830035\";\"Шпринге\";\"other\"\n\"2830080\";\"Sprendlingen\";\"main\"\n\"2830100\";\"Spreenhagen\";\"main\"\n\"2830121\";\"Sprakensehl\";\"main\"\n\"2830133\";\"Spraitbach\";\"main\"\n\"2830146\";\"Spornitz\";\"main\"\n\"2830449\";\"Spiesheim\";\"main\"\n\"2830452\";\"Spiesen-Elversberg\";\"main\"\n\"2830561\";\"Spiegelberg\";\"main\"\n\"2830582\";\"Speyer\";\"main\"\n\"2830582\";\"Espira\";\"other\"\n\"2830582\";\"Shpejer\";\"other\"\n\"2830582\";\"Spira\";\"other\"\n\"2830582\";\"Spire\";\"other\"\n\"2830582\";\"shupaia\";\"other\"\n\"2830582\";\"Шпейер\";\"other\"\n\"2830582\";\"シュパイアー\";\"other\"\n\"2830620\";\"Spergau\";\"main\"\n\"2830637\";\"Spenge\";\"main\"\n\"2830652\";\"Spelle\";\"main\"\n\"2830661\";\"Speinshart\";\"main\"\n\"2830670\";\"Speichersdorf\";\"main\"\n\"2830674\";\"Speicher\";\"main\"\n\"2830761\";\"Spechbach\";\"main\"\n\"2830790\";\"Sparneck\";\"main\"\n\"2830803\";\"Spardorf\";\"main\"\n\"2830829\";\"Spangenberg\";\"main\"\n\"2830849\";\"Spalt\";\"main\"\n\"2830851\";\"Spaichingen\";\"main\"\n\"2830869\";\"Spabrücken\";\"main\"\n\"2830869\";\"Spabrucken\";\"ascii\"\n\"2830873\";\"Soyen\";\"main\"\n\"2830880\";\"Sottrum\";\"main\"\n\"2830912\";\"Sosa\";\"main\"\n\"2830919\";\"Sörup\";\"main\"\n\"2830919\";\"Sorup\";\"ascii\"\n\"2830959\";\"Sörgenloch\";\"main\"\n\"2830959\";\"Sorgenloch\";\"ascii\"\n\"2831083\";\"Sontra\";\"main\"\n\"2831088\";\"Sonthofen\";\"main\"\n\"2831091\";\"Sontheim an der Brenz\";\"main\"\n\"2831091\";\"Sontheim\";\"other\"\n\"2831097\";\"Sontheim\";\"main\"\n\"2831105\";\"Sonsbeck\";\"main\"\n\"2831121\";\"Sonnewalde\";\"main\"\n\"2831236\";\"Sonnen\";\"main\"\n\"2831239\";\"Sonnefeld\";\"main\"\n\"2831242\";\"Sonneborn\";\"main\"\n\"2831250\";\"Sonneberg\";\"main\"\n\"2831250\";\"Stadt Sonneberg\";\"other\"\n\"2831250\";\"Zonneberg\";\"other\"\n\"2831250\";\"Зоннеберг\";\"other\"\n\"2831269\";\"Sondheim\";\"main\"\n\"2831276\";\"Sondershausen\";\"main\"\n\"2831344\";\"Sommersdorf\";\"main\"\n\"2831377\";\"Sommerkahl\";\"main\"\n\"2831389\";\"Sommerhausen\";\"main\"\n\"2831403\";\"Sömmerda\";\"main\"\n\"2831403\";\"Sommerda\";\"ascii\"\n\"2831455\";\"Sommerach\";\"main\"\n\"2831479\";\"Soltendieck\";\"main\"\n\"2831486\";\"Soltau\";\"main\"\n\"2831493\";\"Solnhofen\";\"main\"\n\"2831497\";\"Solms\";\"main\"\n\"2831502\";\"Sollstedt\";\"main\"\n\"2831580\";\"Solingen\";\"main\"\n\"2831580\";\"Zolingen\";\"other\"\n\"2831580\";\"zoringen\";\"other\"\n\"2831580\";\"Золинген\";\"other\"\n\"2831580\";\"ゾーリンゲン\";\"other\"\n\"2831594\";\"Sölden\";\"main\"\n\"2831594\";\"Solden\";\"ascii\"\n\"2831634\";\"Sohren\";\"main\"\n\"2831671\";\"Söhlde\";\"main\"\n\"2831671\";\"Sohlde\";\"ascii\"\n\"2831684\";\"Sohland am Rotstein\";\"main\"\n\"2831684\";\"Sohland\";\"other\"\n\"2831685\";\"Sohland\";\"main\"\n\"2831699\";\"Sögel\";\"main\"\n\"2831699\";\"Sogel\";\"ascii\"\n\"2831708\";\"Soest\";\"main\"\n\"2831708\";\"Zoest\";\"other\"\n\"2831708\";\"zosuto\";\"other\"\n\"2831708\";\"Зоест\";\"other\"\n\"2831708\";\"ゾースト\";\"other\"\n\"2831715\";\"Soderstorf\";\"main\"\n\"2831731\";\"Söchtenau\";\"main\"\n\"2831731\";\"Sochtenau\";\"ascii\"\n\"2831787\";\"Sitzendorf\";\"main\"\n\"2831802\";\"Sittensen\";\"main\"\n\"2831837\";\"Sipplingen\";\"main\"\n\"2831838\";\"Sippersfeld\";\"main\"\n\"2831847\";\"Sinzing\";\"main\"\n\"2831852\";\"Sinzig\";\"main\"\n\"2831853\";\"Sinzheim\";\"main\"\n\"2831872\";\"Sinsheim\";\"main\"\n\"2831888\";\"Sinnersdorf\";\"main\"\n\"2831896\";\"Sinn\";\"main\"\n\"2831907\";\"Singhofen\";\"main\"\n\"2831924\";\"Singen\";\"main\"\n\"2831942\";\"Sindelsdorf\";\"main\"\n\"2831948\";\"Sindelfingen\";\"main\"\n\"2831948\";\"Zindel'fingen\";\"other\"\n\"2831948\";\"Зиндельфинген\";\"other\"\n\"2831992\";\"Simmozheim\";\"main\"\n\"2832003\";\"Simmersfeld\";\"main\"\n\"2832012\";\"Simmern\";\"main\"\n\"2832013\";\"Simmern\";\"main\"\n\"2832014\";\"Simmertal\";\"main\"\n\"2832014\";\"Simmern\";\"other\"\n\"2832023\";\"Simmerath\";\"main\"\n\"2832025\";\"Simmelsdorf\";\"main\"\n\"2832043\";\"Simbach am Inn\";\"main\"\n\"2832043\";\"Simbach\";\"other\"\n\"2832045\";\"Simbach\";\"main\"\n\"2832045\";\"Simpach\";\"other\"\n\"2832114\";\"Silberstedt\";\"main\"\n\"2832228\";\"Sigmarszell\";\"main\"\n\"2832231\";\"Sigmaringendorf\";\"main\"\n\"2832232\";\"Sigmaringen\";\"main\"\n\"2832232\";\"zygmryngn\";\"other\"\n\"2832232\";\"זיגמרינגן\";\"other\"\n\"2832264\";\"Siggelkow\";\"main\"\n\"2832276\";\"Sieverstedt\";\"main\"\n\"2832280\";\"Sievershütten\";\"main\"\n\"2832280\";\"Sievershutten\";\"ascii\"\n\"2832331\";\"Siersleben\";\"main\"\n\"2832332\";\"Siershahn\";\"main\"\n\"2832338\";\"Sierksdorf\";\"main\"\n\"2832392\";\"Sielenbach\";\"main\"\n\"2832406\";\"Siek\";\"main\"\n\"2832423\";\"Siegsdorf\";\"main\"\n\"2832492\";\"Siegenburg\";\"main\"\n\"2832492\";\"Sigenburg\";\"other\"\n\"2832495\";\"Siegen\";\"main\"\n\"2832495\";\"Zigen\";\"other\"\n\"2832495\";\"jigen\";\"other\"\n\"2832495\";\"Зиген\";\"other\"\n\"2832495\";\"ジーゲン\";\"other\"\n\"2832506\";\"Siegelsbach\";\"main\"\n\"2832521\";\"Siegburg\";\"main\"\n\"2832521\";\"Siebursh\";\"other\"\n\"2832521\";\"jikuburuku\";\"other\"\n\"2832521\";\"zigburg\";\"other\"\n\"2832521\";\"zygbwrg\";\"other\"\n\"2832521\";\"Зигбург\";\"other\"\n\"2832521\";\"זיגבורג\";\"other\"\n\"2832521\";\"ジークブルク\";\"other\"\n\"2832529\";\"Siefersheim\";\"main\"\n\"2832597\";\"Siedenburg\";\"main\"\n\"2832743\";\"Siebeldingen\";\"main\"\n\"2832778\";\"Sickenhausen\";\"main\"\n\"2832819\";\"Sibbesse\";\"main\"\n\"2832835\";\"Seyda\";\"main\"\n\"2832838\";\"Seybothenreuth\";\"main\"\n\"2832841\";\"Sexau\";\"main\"\n\"2832867\";\"Seulingen\";\"main\"\n\"2832871\";\"Seukendorf\";\"main\"\n\"2832884\";\"Seubersdorf\";\"main\"\n\"2832915\";\"Seth\";\"main\"\n\"2832921\";\"Seßlach\";\"main\"\n\"2832921\";\"Sesslach\";\"ascii\"\n\"2832939\";\"Sersheim\";\"main\"\n\"2832940\";\"Serrig\";\"main\"\n\"2833010\";\"Sennfeld\";\"main\"\n\"2833012\";\"Sennewitz\";\"main\"\n\"2833050\";\"Sengenthal\";\"main\"\n\"2833073\";\"Senftenberg\";\"main\"\n\"2833073\";\"Zenftenberg\";\"other\"\n\"2833073\";\"Zly Komorow\";\"other\"\n\"2833073\";\"Zły Komorow\";\"other\"\n\"2833073\";\"Зенфтенберг\";\"other\"\n\"2833076\";\"Sendenhorst\";\"main\"\n\"2833079\";\"Senden\";\"main\"\n\"2833080\";\"Senden\";\"main\"\n\"2833126\";\"Sembach\";\"main\"\n\"2833129\";\"Selzen\";\"main\"\n\"2833138\";\"Selters\";\"main\"\n\"2833139\";\"Selters\";\"main\"\n\"2833154\";\"Selsingen\";\"main\"\n\"2833163\";\"Selmsdorf\";\"main\"\n\"2833170\";\"Selm\";\"main\"\n\"2833170\";\"Stadt Selm\";\"other\"\n\"2833170\";\"Zel'm\";\"other\"\n\"2833170\";\"Зельм\";\"other\"\n\"2833184\";\"Sellin\";\"main\"\n\"2833242\";\"Seligenstadt\";\"main\"\n\"2833259\";\"Selent\";\"main\"\n\"2833269\";\"Selbitz\";\"main\"\n\"2833296\";\"Selb\";\"main\"\n\"2833330\";\"Seinsheim\";\"main\"\n\"2833365\";\"Seifhennersdorf\";\"main\"\n\"2833461\";\"Seibersbach\";\"main\"\n\"2833475\";\"Sehnde\";\"main\"\n\"2833488\";\"Sehlen\";\"main\"\n\"2833491\";\"Sehlem\";\"main\"\n\"2833495\";\"Sehlde\";\"main\"\n\"2833521\";\"Seggebruch\";\"main\"\n\"2833564\";\"Seevetal\";\"main\"\n\"2833590\";\"Seeshaupt\";\"main\"\n\"2833592\";\"Seesen\";\"main\"\n\"2833641\";\"Seelze\";\"main\"\n\"2833651\";\"Seelow\";\"main\"\n\"2833654\";\"Seelitz\";\"main\"\n\"2833657\";\"Seelingstädt\";\"main\"\n\"2833657\";\"Seelingstadt\";\"ascii\"\n\"2833704\";\"Seelbach\";\"main\"\n\"2833754\";\"Seehof\";\"main\"\n\"2833795\";\"Seehausen am Staffelsee\";\"main\"\n\"2833800\";\"Seehausen\";\"main\"\n\"2833801\";\"Seehausen\";\"main\"\n\"2833849\";\"Seeg\";\"main\"\n\"2833866\";\"Seefeld\";\"main\"\n\"2833878\";\"Seedorf\";\"main\"\n\"2833893\";\"Seedorf\";\"main\"\n\"2833903\";\"Seeburg\";\"main\"\n\"2833934\";\"Seebergen\";\"main\"\n\"2833988\";\"Seebad Heringsdorf\";\"main\"\n\"2833988\";\"Heringsdorf\";\"other\"\n\"2833989\";\"Seebad Bansin\";\"main\"\n\"2833989\";\"Bansin\";\"other\"\n\"2834020\";\"Seebach\";\"main\"\n\"2834028\";\"Seebach\";\"main\"\n\"2834081\";\"Seckach\";\"main\"\n\"2834082\";\"Seck\";\"main\"\n\"2834102\";\"Sebnitz\";\"main\"\n\"2834129\";\"Schwörstadt\";\"main\"\n\"2834129\";\"Schworstadt\";\"ascii\"\n\"2834183\";\"Schwindegg\";\"main\"\n\"2834226\";\"Schwieberdingen\";\"main\"\n\"2834240\";\"Schwetzingen\";\"main\"\n\"2834265\";\"Schwerte\";\"main\"\n\"2834282\";\"Schwerin\";\"main\"\n\"2834282\";\"Shverin\";\"other\"\n\"2834282\";\"Suerinum\";\"other\"\n\"2834282\";\"Swerin\";\"other\"\n\"2834282\";\"shen wei lin\";\"other\"\n\"2834282\";\"shuvu~erin\";\"other\"\n\"2834282\";\"syubelin\";\"other\"\n\"2834282\";\"Шверин\";\"other\"\n\"2834282\";\"シュヴェリン\";\"other\"\n\"2834282\";\"什未林\";\"other\"\n\"2834282\";\"슈베린\";\"other\"\n\"2834296\";\"Schwepnitz\";\"main\"\n\"2834312\";\"Schwenningen\";\"main\"\n\"2834313\";\"Schwenningen\";\"main\"\n\"2834334\";\"Schwendi\";\"main\"\n\"2834372\";\"Schwelm\";\"main\"\n\"2834416\";\"Schweitenkirchen\";\"main\"\n\"2834498\";\"Schweinfurt\";\"main\"\n\"2834498\";\"Kuspinian\";\"other\"\n\"2834498\";\"Куспиниан\";\"other\"\n\"2834548\";\"Schweina\";\"main\"\n\"2834594\";\"Schweich\";\"main\"\n\"2834611\";\"Schwegenheim\";\"main\"\n\"2834629\";\"Schwedt (Oder)\";\"main\"\n\"2834629\";\"Schwedt\";\"other\"\n\"2834629\";\"Schwedt/Oder\";\"other\"\n\"2834629\";\"Stadt Schwedt/Oder\";\"other\"\n\"2834646\";\"Schwedelbach\";\"main\"\n\"2834651\";\"Schwebheim\";\"main\"\n\"2834733\";\"Schwarzhofen\";\"main\"\n\"2834740\";\"Schwarzheide\";\"main\"\n\"2834945\";\"Schwarzenfeld\";\"main\"\n\"2834955\";\"Schwarzenbruck\";\"main\"\n\"2834963\";\"Schwarzenborn\";\"main\"\n\"2834978\";\"Schwarzenberg\";\"main\"\n\"2835013\";\"Schwarzenbek\";\"main\"\n\"2835018\";\"Schwarzenbach an der Saale\";\"main\"\n\"2835018\";\"Schwarzenbach\";\"other\"\n\"2835034\";\"Schwarzenbach\";\"main\"\n\"2835164\";\"Spiegelau\";\"main\"\n\"2835164\";\"Schwarzach\";\"other\"\n\"2835164\";\"Schwarzach mit Spiegelau\";\"other\"\n\"2835164\";\"Spiegelau mit Schwarzach\";\"other\"\n\"2835184\";\"Schwarzach\";\"main\"\n\"2835185\";\"Schwarzach\";\"main\"\n\"2835193\";\"Schwarza\";\"main\"\n\"2835220\";\"Schwarmstedt\";\"main\"\n\"2835223\";\"Schwarme\";\"main\"\n\"2835255\";\"Schwangau\";\"main\"\n\"2835256\";\"Schwanfeld\";\"main\"\n\"2835260\";\"Schwanewede\";\"main\"\n\"2835292\";\"Schwanebeck\";\"main\"\n\"2835297\";\"Schwandorf in Bayern\";\"main\"\n\"2835297\";\"Schwandorf\";\"other\"\n\"2835297\";\"Stadt Schwandorf\";\"other\"\n\"2835342\";\"Schwalmtal\";\"main\"\n\"2835343\";\"Schwalmtal\";\"main\"\n\"2835345\";\"Schwalmstadt\";\"main\"\n\"2835352\";\"Schwallungen\";\"main\"\n\"2835380\";\"Schwalbach\";\"main\"\n\"2835381\";\"Schwalbach am Taunus\";\"main\"\n\"2835382\";\"Schwalbach\";\"main\"\n\"2835385\";\"Schwaikheim\";\"main\"\n\"2835411\";\"Schwaigern\";\"main\"\n\"2835421\";\"Schwaig\";\"main\"\n\"2835421\";\"Shvajg\";\"other\"\n\"2835421\";\"Швайг\";\"other\"\n\"2835454\";\"Schwaförden\";\"main\"\n\"2835454\";\"Schwaforden\";\"ascii\"\n\"2835467\";\"Schwabstedt\";\"main\"\n\"2835470\";\"Schwabsoien\";\"main\"\n\"2835477\";\"Schwabmünchen\";\"main\"\n\"2835477\";\"Schwabmunchen\";\"ascii\"\n\"2835481\";\"Schwäbisch Hall\";\"main\"\n\"2835481\";\"Schwabisch Hall\";\"ascii\"\n\"2835481\";\"Hale Suevice\";\"other\"\n\"2835481\";\"Hall\";\"other\"\n\"2835481\";\"Halla Suevica\";\"other\"\n\"2835481\";\"Schwaebisch Hall\";\"other\"\n\"2835481\";\"シュヴェービッシュ・ハル\";\"other\"\n\"2835482\";\"Schwäbisch Gmünd\";\"main\"\n\"2835482\";\"Schwabisch Gmund\";\"ascii\"\n\"2835482\";\"Gmund\";\"other\"\n\"2835482\";\"Gmünd\";\"other\"\n\"2835482\";\"Schwaebisch Gmuend\";\"other\"\n\"2835496\";\"Schwabhausen\";\"main\"\n\"2835496\";\"Kleinschwabhausen\";\"other\"\n\"2835512\";\"Schwabenheim\";\"main\"\n\"2835537\";\"Schwabach\";\"main\"\n\"2835542\";\"Schwaan\";\"main\"\n\"2835587\";\"Schüttorf\";\"main\"\n\"2835587\";\"Schuttorf\";\"ascii\"\n\"2835596\";\"Schutterwald\";\"main\"\n\"2835597\";\"Schuttertal\";\"main\"\n\"2835635\";\"Bad Schussenried\";\"main\"\n\"2835635\";\"Schussenried\";\"other\"\n\"2835787\";\"Schulzendorf\";\"main\"\n\"2835944\";\"Schülp\";\"main\"\n\"2835944\";\"Schulp\";\"ascii\"\n\"2836031\";\"Schuby\";\"main\"\n\"2836040\";\"Schrozberg\";\"main\"\n\"2836084\";\"Schrobenhausen\";\"main\"\n\"2836089\";\"Schriesheim\";\"main\"\n\"2836143\";\"Schrecksbach\";\"main\"\n\"2836182\";\"Schraplau\";\"main\"\n\"2836203\";\"Schramberg\";\"main\"\n\"2836251\";\"Schotten\";\"main\"\n\"2836282\";\"Schortens\";\"main\"\n\"2836306\";\"Schornsheim\";\"main\"\n\"2836319\";\"Schorndorf\";\"main\"\n\"2836320\";\"Schorndorf\";\"main\"\n\"2836320\";\"Shorndorf\";\"other\"\n\"2836320\";\"Шорндорф\";\"other\"\n\"2836390\";\"Schöppingen\";\"main\"\n\"2836390\";\"Schoppingen\";\"ascii\"\n\"2836396\";\"Schöppenstedt\";\"main\"\n\"2836396\";\"Schoppenstedt\";\"ascii\"\n\"2836402\";\"Schopp\";\"main\"\n\"2836407\";\"Schopfloch\";\"main\"\n\"2836409\";\"Schopfloch\";\"main\"\n\"2836413\";\"Schopfheim\";\"main\"\n\"2836438\";\"Schönwalde am Bungsberg\";\"main\"\n\"2836438\";\"Schonwalde am Bungsberg\";\"ascii\"\n\"2836450\";\"Schönwald\";\"main\"\n\"2836450\";\"Schonwald\";\"ascii\"\n\"2836451\";\"Schönwald\";\"main\"\n\"2836451\";\"Schonwald\";\"ascii\"\n\"2836455\";\"Schonungen\";\"main\"\n\"2836460\";\"Schönthal\";\"main\"\n\"2836460\";\"Schonthal\";\"ascii\"\n\"2836469\";\"Schonstett\";\"main\"\n\"2836480\";\"Schönsee\";\"main\"\n\"2836480\";\"Schonsee\";\"ascii\"\n\"2836532\";\"Schönkirchen\";\"main\"\n\"2836532\";\"Schonkirchen\";\"ascii\"\n\"2836543\";\"Schöningen\";\"main\"\n\"2836543\";\"Schoningen\";\"ascii\"\n\"2836581\";\"Schönheide\";\"main\"\n\"2836581\";\"Schonheide\";\"ascii\"\n\"2836587\";\"Schönhausen\";\"main\"\n\"2836587\";\"Schonhausen\";\"ascii\"\n\"2836615\";\"Schöngeising\";\"main\"\n\"2836615\";\"Schongeising\";\"ascii\"\n\"2836616\";\"Schongau\";\"main\"\n\"2836658\";\"Schönfeld\";\"main\"\n\"2836658\";\"Schonfeld\";\"ascii\"\n\"2836658\";\"Schonefeld\";\"other\"\n\"2836658\";\"Schönefeld\";\"other\"\n\"2836680\";\"Schönewalde\";\"main\"\n\"2836680\";\"Schonewalde\";\"ascii\"\n\"2836746\";\"Schöneiche\";\"main\"\n\"2836746\";\"Schoneiche\";\"ascii\"\n\"2836761\";\"Schönefeld\";\"main\"\n\"2836761\";\"Schonefeld\";\"ascii\"\n\"2836770\";\"Schönecken\";\"main\"\n\"2836770\";\"Schonecken\";\"ascii\"\n\"2836772\";\"Schöneck\";\"main\"\n\"2836772\";\"Schoneck\";\"ascii\"\n\"2836809\";\"Schönebeck\";\"main\"\n\"2836809\";\"Schonebeck\";\"ascii\"\n\"2836817\";\"Schondra\";\"main\"\n\"2836834\";\"Schönburg\";\"main\"\n\"2836834\";\"Schonburg\";\"ascii\"\n\"2836908\";\"Schönborn\";\"main\"\n\"2836908\";\"Schonborn\";\"ascii\"\n\"2836945\";\"Schönberg\";\"main\"\n\"2836945\";\"Schonberg\";\"ascii\"\n\"2836952\";\"Schönberg\";\"main\"\n\"2836952\";\"Schonberg\";\"ascii\"\n\"2837022\";\"Schönbach\";\"main\"\n\"2837022\";\"Schonbach\";\"ascii\"\n\"2837041\";\"Schönau-Berzdorf\";\"main\"\n\"2837041\";\"Schonau-Berzdorf\";\"ascii\"\n\"2837041\";\"Berzdorf\";\"other\"\n\"2837041\";\"Berzdorf auf dem Eigen\";\"other\"\n\"2837041\";\"Berzdorf uber Gorlitz\";\"other\"\n\"2837041\";\"Berzdorf über Görlitz\";\"other\"\n\"2837062\";\"Schönau\";\"main\"\n\"2837062\";\"Schonau\";\"ascii\"\n\"2837064\";\"Schönau\";\"main\"\n\"2837064\";\"Schonau\";\"ascii\"\n\"2837072\";\"Schönau\";\"main\"\n\"2837072\";\"Schonau\";\"ascii\"\n\"2837074\";\"Schönau im Schwarzwald\";\"main\"\n\"2837074\";\"Schonau im Schwarzwald\";\"ascii\"\n\"2837074\";\"Schonau\";\"other\"\n\"2837074\";\"Schönau\";\"other\"\n\"2837085\";\"Schönau am Königssee\";\"main\"\n\"2837085\";\"Schoenau am Koenigssee\";\"ascii\"\n\"2837085\";\"Schonau\";\"other\"\n\"2837085\";\"Schönau\";\"other\"\n\"2837093\";\"Schönaich\";\"main\"\n\"2837093\";\"Schonaich\";\"ascii\"\n\"2837096\";\"Schonach\";\"main\"\n\"2837115\";\"Schömberg\";\"main\"\n\"2837115\";\"Schomberg\";\"ascii\"\n\"2837117\";\"Schömberg\";\"main\"\n\"2837117\";\"Schomberg\";\"ascii\"\n\"2837134\";\"Schöllnach\";\"main\"\n\"2837134\";\"Schollnach\";\"ascii\"\n\"2837136\";\"Schöllkrippen\";\"main\"\n\"2837136\";\"Schollkrippen\";\"ascii\"\n\"2837198\";\"Schöfweg\";\"main\"\n\"2837198\";\"Schofweg\";\"ascii\"\n\"2837225\";\"Schochwitz\";\"main\"\n\"2837236\";\"Schobüll\";\"main\"\n\"2837236\";\"Schobull\";\"ascii\"\n\"2837250\";\"Schnürpflingen\";\"main\"\n\"2837250\";\"Schnurpflingen\";\"ascii\"\n\"2837291\";\"Schneverdingen\";\"main\"\n\"2837368\";\"Schnelldorf\";\"main\"\n\"2837375\";\"Schneizlreuth\";\"main\"\n\"2837385\";\"Schneidlingen\";\"main\"\n\"2837441\";\"Schnega\";\"main\"\n\"2837470\";\"Schneeberg\";\"main\"\n\"2837507\";\"Schneckenlohe\";\"main\"\n\"2837569\";\"Schnaittenbach\";\"main\"\n\"2837572\";\"Schnaittach\";\"main\"\n\"2837575\";\"Schnaitsee\";\"main\"\n\"2837652\";\"Schmölln\";\"main\"\n\"2837652\";\"Schmolln\";\"ascii\"\n\"2837706\";\"Schmitten\";\"main\"\n\"2837777\";\"Schmiedefeld am Rennsteig\";\"main\"\n\"2837780\";\"Schmiedefeld\";\"main\"\n\"2837788\";\"Schmiedeberg\";\"main\"\n\"2837809\";\"Schmiechen\";\"main\"\n\"2837850\";\"Schmidmühlen\";\"main\"\n\"2837850\";\"Schmidmuhlen\";\"ascii\"\n\"2837885\";\"Schmidgaden\";\"main\"\n\"2837954\";\"Schmelz\";\"main\"\n\"2838053\";\"Schmallenberg\";\"main\"\n\"2838053\";\"Shmallenberg\";\"other\"\n\"2838053\";\"Шмалленберг\";\"other\"\n\"2838059\";\"Schmalkalden\";\"main\"\n\"2838075\";\"Schmalfeld\";\"main\"\n\"2838167\";\"Schlüsselfeld\";\"main\"\n\"2838167\";\"Schlusselfeld\";\"ascii\"\n\"2838201\";\"Schlüchtern\";\"main\"\n\"2838201\";\"Schluchtern\";\"ascii\"\n\"2838208\";\"Schluchsee\";\"main\"\n\"2838240\";\"Schlotheim\";\"main\"\n\"2838250\";\"Schloßvippach\";\"main\"\n\"2838250\";\"Schlossvippach\";\"ascii\"\n\"2838459\";\"Schlitz\";\"main\"\n\"2838502\";\"Schliersee\";\"main\"\n\"2838502\";\"Schliers\";\"other\"\n\"2838529\";\"Schlierbach\";\"main\"\n\"2838531\";\"Schlier\";\"main\"\n\"2838534\";\"Schliengen\";\"main\"\n\"2838547\";\"Schlieben\";\"main\"\n\"2838600\";\"Schleusingen\";\"main\"\n\"2838628\";\"Schlettau\";\"main\"\n\"2838634\";\"Schleswig\";\"main\"\n\"2838634\";\"Shlezvig\";\"other\"\n\"2838634\";\"Sleeswig\";\"other\"\n\"2838634\";\"Slesvig\";\"other\"\n\"2838634\";\"Sliesthorp\";\"other\"\n\"2838634\";\"Stadt Schleswig\";\"other\"\n\"2838634\";\"Шлезвиг\";\"other\"\n\"2838671\";\"Schlema\";\"main\"\n\"2838671\";\"Niederschlema\";\"other\"\n\"2838673\";\"Schleiz\";\"main\"\n\"2838725\";\"Schleife\";\"main\"\n\"2838725\";\"Slepo\";\"other\"\n\"2838744\";\"Schleiden\";\"main\"\n\"2838749\";\"Schleid\";\"main\"\n\"2838769\";\"Schlehdorf\";\"main\"\n\"2838769\";\"Schleedorf\";\"other\"\n\"2838793\";\"Schlegel\";\"main\"\n\"2838842\";\"Schleching\";\"main\"\n\"2838889\";\"Schlat\";\"main\"\n\"2838918\";\"Schlangenbad\";\"main\"\n\"2838922\";\"Schlangen\";\"main\"\n\"2838938\";\"Schlaitz\";\"main\"\n\"2838939\";\"Schlaitdorf\";\"main\"\n\"2838955\";\"Schlagsdorf\";\"main\"\n\"2839010\";\"Schladen\";\"main\"\n\"2839044\";\"Schkopau\";\"main\"\n\"2839049\";\"Schkölen\";\"main\"\n\"2839049\";\"Schkolen\";\"ascii\"\n\"2839050\";\"Schkeuditz\";\"main\"\n\"2839066\";\"Schirnding\";\"main\"\n\"2839074\";\"Schirmitz\";\"main\"\n\"2839090\";\"Schirgiswalde\";\"main\"\n\"2839101\";\"Schipkau\";\"main\"\n\"2839101\";\"Shipkau\";\"other\"\n\"2839194\";\"Schiltberg\";\"main\"\n\"2839195\";\"Schiltach\";\"main\"\n\"2839212\";\"Schillingsfürst\";\"main\"\n\"2839212\";\"Schillingsfurst\";\"ascii\"\n\"2839222\";\"Schillingen\";\"main\"\n\"2839229\";\"Schillig\";\"main\"\n\"2839229\";\"Shilling\";\"other\"\n\"2839229\";\"Шиллинг\";\"other\"\n\"2839303\";\"Schildau\";\"main\"\n\"2839303\";\"Gneisenaustadt Schildau\";\"other\"\n\"2839316\";\"Schiffweiler\";\"main\"\n\"2839335\";\"Schifferstadt\";\"main\"\n\"2839345\";\"Schiffdorf\";\"main\"\n\"2839393\";\"Schierling\";\"main\"\n\"2839527\";\"Scheyern\";\"main\"\n\"2839538\";\"Scheuring\";\"main\"\n\"2839581\";\"Scheuerfeld\";\"main\"\n\"2839613\";\"Scheßlitz\";\"main\"\n\"2839613\";\"Schesslitz\";\"ascii\"\n\"2839623\";\"Scherstetten\";\"main\"\n\"2839658\";\"Schernberg\";\"main\"\n\"2839670\";\"Schermen\";\"main\"\n\"2839674\";\"Schermbeck\";\"main\"\n\"2839726\";\"Schenklengsfeld\";\"main\"\n\"2839732\";\"Schenkenzell\";\"main\"\n\"2839748\";\"Schenkendöbern\";\"main\"\n\"2839748\";\"Schenkendobern\";\"ascii\"\n\"2839763\";\"Schenefeld\";\"main\"\n\"2839764\";\"Schenefeld\";\"main\"\n\"2839764\";\"Stadt\";\"other\"\n\"2839812\";\"Schellhorn\";\"main\"\n\"2839819\";\"Schellerten\";\"main\"\n\"2839888\";\"Schelklingen\";\"main\"\n\"2839916\";\"Scheinfeld\";\"main\"\n\"2839980\";\"Scheidegg\";\"main\"\n\"2840021\";\"Scheibenberg\";\"main\"\n\"2840070\";\"Scheeßel\";\"main\"\n\"2840070\";\"Scheessel\";\"ascii\"\n\"2840086\";\"Scheer\";\"main\"\n\"2840116\";\"Schechingen\";\"main\"\n\"2840117\";\"Schechen\";\"main\"\n\"2840150\";\"Schaufling\";\"main\"\n\"2840179\";\"Schauenstein\";\"main\"\n\"2840232\";\"Schashagen\";\"main\"\n\"2840297\";\"Scharnebeck\";\"main\"\n\"2840337\";\"Scharfenstein\";\"main\"\n\"2840393\";\"Scharbeutz\";\"main\"\n\"2840419\";\"Schapen\";\"main\"\n\"2840526\";\"Schallstadt\";\"main\"\n\"2840555\";\"Schalksmühle\";\"main\"\n\"2840555\";\"Schalksmuhle\";\"ascii\"\n\"2840590\";\"Schalkau\";\"main\"\n\"2840634\";\"Schäftlarn\";\"main\"\n\"2840634\";\"Schaftlarn\";\"ascii\"\n\"2840647\";\"Schafstädt\";\"main\"\n\"2840647\";\"Schafstadt\";\"ascii\"\n\"2840732\";\"Schafflund\";\"main\"\n\"2840936\";\"Schacht-Audorf\";\"main\"\n\"2841027\";\"Schaalby\";\"main\"\n\"2841039\";\"Schaafheim\";\"main\"\n\"2841047\";\"Sayda\";\"main\"\n\"2841124\";\"Saulgrub\";\"main\"\n\"2841125\";\"Saulgau\";\"main\"\n\"2841125\";\"Bad Saulgau\";\"other\"\n\"2841128\";\"Sauldorf\";\"main\"\n\"2841178\";\"Sauerlach\";\"main\"\n\"2841204\";\"Sauensiek\";\"main\"\n\"2841290\";\"Satteldorf\";\"main\"\n\"2841320\";\"Satrup\";\"main\"\n\"2841321\";\"Satow-Oberhagen\";\"main\"\n\"2841333\";\"Saßnitz\";\"main\"\n\"2841333\";\"Sassnitz\";\"ascii\"\n\"2841351\";\"Sassenberg\";\"main\"\n\"2841375\";\"Sasbachwalden\";\"main\"\n\"2841380\";\"Sasbach\";\"main\"\n\"2841381\";\"Sasbach\";\"main\"\n\"2841386\";\"Sarstedt\";\"main\"\n\"2841457\";\"Sankt Wolfgang\";\"main\"\n\"2841463\";\"Sankt Wendel\";\"main\"\n\"2841463\";\"Kreisstadt Sankt Wendel\";\"other\"\n\"2841463\";\"Sankt-Vendel'\";\"other\"\n\"2841463\";\"Санкт-Вендель\";\"other\"\n\"2841477\";\"Sankt Sebastian\";\"main\"\n\"2841484\";\"Sankt Peter-Ording\";\"main\"\n\"2841484\";\"Sankt Peter-Oring\";\"other\"\n\"2841488\";\"Sankt Peter\";\"main\"\n\"2841509\";\"Sankt Michaelisdonn\";\"main\"\n\"2841509\";\"Saint Michaelisdonn\";\"other\"\n\"2841517\";\"Sankt Martin\";\"main\"\n\"2841521\";\"Sankt Märgen\";\"main\"\n\"2841521\";\"Sankt Margen\";\"ascii\"\n\"2841523\";\"Sankt Margarethen\";\"main\"\n\"2841546\";\"Sankt Kilian\";\"main\"\n\"2841557\";\"Sankt Julian\";\"main\"\n\"2841557\";\"Sankt Julian-Obereisenbach\";\"other\"\n\"2841577\";\"Sankt Johann\";\"main\"\n\"2841590\";\"Sankt Ingbert\";\"main\"\n\"2841609\";\"Sankt Goarshausen\";\"main\"\n\"2841609\";\"Saint Goarshausen\";\"other\"\n\"2841611\";\"Sankt Goar\";\"main\"\n\"2841619\";\"Sankt Georgen im Schwarzwald\";\"main\"\n\"2841619\";\"Sankt Georgen\";\"other\"\n\"2841636\";\"Sankt Gangloff\";\"main\"\n\"2841639\";\"Sankt Egidien\";\"main\"\n\"2841639\";\"Saint Egidien\";\"other\"\n\"2841643\";\"Sankt Blasien\";\"main\"\n\"2841643\";\"Saint Blasien\";\"other\"\n\"2841643\";\"San Blasien\";\"other\"\n\"2841643\";\"St. Blasien\";\"other\"\n\"2841648\";\"Sankt Augustin\";\"main\"\n\"2841672\";\"Sankt Andreasberg\";\"main\"\n\"2841682\";\"Sankelmark\";\"main\"\n\"2841684\";\"Alt-Sanitz\";\"main\"\n\"2841693\";\"Sangerhausen\";\"main\"\n\"2841731\";\"Sandstedt\";\"main\"\n\"2841835\";\"Sandhausen\";\"main\"\n\"2841874\";\"Sandesneben\";\"main\"\n\"2841876\";\"Sandersleben\";\"main\"\n\"2841879\";\"Sandersdorf\";\"main\"\n\"2841895\";\"Sande\";\"main\"\n\"2841935\";\"Sandberg\";\"main\"\n\"2842033\";\"Sandau\";\"main\"\n\"2842047\";\"Sand\";\"main\"\n\"2842059\";\"Samtens\";\"main\"\n\"2842060\";\"Samswegen\";\"main\"\n\"2842084\";\"Samerberg\";\"main\"\n\"2842109\";\"Salzweg\";\"main\"\n\"2842112\";\"Salzwedel\";\"main\"\n\"2842124\";\"Salzmünde\";\"main\"\n\"2842124\";\"Salzmunde\";\"ascii\"\n\"2842131\";\"Salzkotten\";\"main\"\n\"2842143\";\"Salzhemmendorf\";\"main\"\n\"2842144\";\"Salzhausen\";\"main\"\n\"2842175\";\"Salzbergen\";\"main\"\n\"2842203\";\"Salz\";\"main\"\n\"2842258\";\"Sallgast\";\"main\"\n\"2842290\";\"Salgen\";\"main\"\n\"2842311\";\"Saldenburg\";\"main\"\n\"2842315\";\"Salching\";\"main\"\n\"2842331\";\"Salach\";\"main\"\n\"2842434\";\"Sagard\";\"main\"\n\"2842438\";\"Saffig\";\"main\"\n\"2842441\";\"Saerbeck\";\"main\"\n\"2842507\";\"Sachsenkam\";\"main\"\n\"2842531\";\"Sachsenhagen\";\"main\"\n\"2842568\";\"Sachsen\";\"main\"\n\"2842621\";\"Saarwellingen\";\"main\"\n\"2842632\";\"Saarlouis\";\"main\"\n\"2842632\";\"Saarluise\";\"other\"\n\"2842632\";\"Sarrelouis\";\"other\"\n\"2842632\";\"zaarlui\";\"other\"\n\"2842632\";\"Саарлуисе\";\"other\"\n\"2842632\";\"ზაარლუი\";\"other\"\n\"2842638\";\"Saarhölzbach\";\"main\"\n\"2842638\";\"Saarhoelzbach\";\"ascii\"\n\"2842644\";\"Saarburg\";\"main\"\n\"2842647\";\"Saarbrücken\";\"main\"\n\"2842647\";\"Saarbrucken\";\"ascii\"\n\"2842647\";\"Saarbrecken\";\"other\"\n\"2842647\";\"Saarbrjuken\";\"other\"\n\"2842647\";\"Saarbrjukken\";\"other\"\n\"2842647\";\"Saarbruecken\";\"other\"\n\"2842647\";\"Saarbrécken\";\"other\"\n\"2842647\";\"Saarmpryken\";\"other\"\n\"2842647\";\"Sarbriken\";\"other\"\n\"2842647\";\"Sarrebruck\";\"other\"\n\"2842647\";\"sa er bu lu ken\";\"other\"\n\"2842647\";\"zaruburyukken\";\"other\"\n\"2842647\";\"Σααρμπρύκεν\";\"other\"\n\"2842647\";\"Саарбрюкен\";\"other\"\n\"2842647\";\"Саарбрюккен\";\"other\"\n\"2842647\";\"Сарбрикен\";\"other\"\n\"2842647\";\"זארבריקן\";\"other\"\n\"2842647\";\"ზაარბრიუკენი\";\"other\"\n\"2842647\";\"ザールブリュッケン\";\"other\"\n\"2842647\";\"萨尔布吕肯\";\"other\"\n\"2842656\";\"Saara\";\"main\"\n\"2842688\";\"Saalfeld\";\"main\"\n\"2842688\";\"Saalfeld/Saale\";\"other\"\n\"2842688\";\"Zaal'fel'd\";\"other\"\n\"2842688\";\"zaruferuto\";\"other\"\n\"2842688\";\"Заальфельд\";\"other\"\n\"2842688\";\"ザールフェルト\";\"other\"\n\"2842720\";\"Saal an der Saale\";\"main\"\n\"2842725\";\"Saal\";\"main\"\n\"2842728\";\"Saal\";\"main\"\n\"2842816\";\"Rüthen\";\"main\"\n\"2842816\";\"Ruthen\";\"ascii\"\n\"2842824\";\"Rutesheim\";\"main\"\n\"2842861\";\"Rust\";\"main\"\n\"2842884\";\"Rüsselsheim\";\"main\"\n\"2842884\";\"Russelsheim\";\"ascii\"\n\"2842884\";\"Ruesselsheim\";\"other\"\n\"2842960\";\"Ruppichteroth\";\"main\"\n\"2842964\";\"Ruppertsweiler\";\"main\"\n\"2842974\";\"Ruppertshofen\";\"main\"\n\"2842981\";\"Ruppertsberg\";\"main\"\n\"2843042\";\"Runkel\";\"main\"\n\"2843054\";\"Runding\";\"main\"\n\"2843054\";\"Runting\";\"other\"\n\"2843094\";\"Rümpel\";\"main\"\n\"2843094\";\"Rumpel\";\"ascii\"\n\"2843099\";\"Rümmingen\";\"main\"\n\"2843099\";\"Rummingen\";\"ascii\"\n\"2843104\";\"Rümmelsheim\";\"main\"\n\"2843104\";\"Rummelsheim\";\"ascii\"\n\"2843146\";\"Rülzheim\";\"main\"\n\"2843146\";\"Rulzheim\";\"ascii\"\n\"2843148\";\"Rullstorf\";\"main\"\n\"2843177\";\"Ruhwinkel\";\"main\"\n\"2843185\";\"Ruhstorf\";\"main\"\n\"2843203\";\"Ruhpolding\";\"main\"\n\"2843203\";\"Rupolting\";\"other\"\n\"2843223\";\"Ruhmannsfelden\";\"main\"\n\"2843223\";\"Ruemansfelden\";\"other\"\n\"2843256\";\"Ruhland\";\"main\"\n\"2843258\";\"Ruhla\";\"main\"\n\"2843272\";\"Rühen\";\"main\"\n\"2843272\";\"Ruhen\";\"ascii\"\n\"2843290\";\"Rügland\";\"main\"\n\"2843290\";\"Rugland\";\"ascii\"\n\"2843318\";\"Rugendorf\";\"main\"\n\"2843355\";\"Rudolstadt\";\"main\"\n\"2843368\";\"Rüdnitz\";\"main\"\n\"2843368\";\"Rudnitz\";\"ascii\"\n\"2843395\";\"Rüdesheim am Rhein\";\"main\"\n\"2843395\";\"Rudesheim am Rhein\";\"ascii\"\n\"2843395\";\"Rudesheim\";\"other\"\n\"2843395\";\"Rüdesheim\";\"other\"\n\"2843396\";\"Rüdesheim\";\"main\"\n\"2843396\";\"Rudesheim\";\"ascii\"\n\"2843399\";\"Ruderting\";\"main\"\n\"2843415\";\"Rudersberg\";\"main\"\n\"2843431\";\"Ruderatshofen\";\"main\"\n\"2843445\";\"Rudelzhausen\";\"main\"\n\"2843493\";\"Rückersdorf\";\"main\"\n\"2843493\";\"Ruckersdorf\";\"ascii\"\n\"2843497\";\"Rückersdorf\";\"main\"\n\"2843497\";\"Ruckersdorf\";\"ascii\"\n\"2843574\";\"Rübeland\";\"main\"\n\"2843574\";\"Rubeland\";\"ascii\"\n\"2843591\";\"Roxheim\";\"main\"\n\"2843603\";\"Rövershagen\";\"main\"\n\"2843603\";\"Rovershagen\";\"ascii\"\n\"2843603\";\"Mittelrovershagen\";\"other\"\n\"2843603\";\"Mittelrövershagen\";\"other\"\n\"2843617\";\"Rötz\";\"main\"\n\"2843617\";\"Rotz\";\"ascii\"\n\"2843617\";\"Retz\";\"other\"\n\"2843636\";\"Rottweil\";\"main\"\n\"2843636\";\"Rotvajl'\";\"other\"\n\"2843636\";\"Ротвайль\";\"other\"\n\"2843667\";\"Rottleberode\";\"main\"\n\"2843673\";\"Röttingen\";\"main\"\n\"2843673\";\"Rottingen\";\"ascii\"\n\"2843682\";\"Rotthalmünster\";\"main\"\n\"2843682\";\"Rotthalmunster\";\"ascii\"\n\"2843682\";\"Minster\";\"other\"\n\"2843724\";\"Rottendorf\";\"main\"\n\"2843728\";\"Rottenburg an der Laaber\";\"main\"\n\"2843728\";\"Rottenburg\";\"other\"\n\"2843729\";\"Rottenburg\";\"main\"\n\"2843731\";\"Rottenbuch\";\"main\"\n\"2843731\";\"Raitenbuch\";\"other\"\n\"2843738\";\"Rottenbach\";\"main\"\n\"2843741\";\"Röttenbach\";\"main\"\n\"2843741\";\"Rottenbach\";\"ascii\"\n\"2843743\";\"Röttenbach\";\"main\"\n\"2843743\";\"Rottenbach\";\"ascii\"\n\"2843747\";\"Rottenacker\";\"main\"\n\"2843775\";\"Rottach-Egern\";\"main\"\n\"2843803\";\"Rott\";\"main\"\n\"2843897\";\"Röthlein\";\"main\"\n\"2843897\";\"Rothlein\";\"ascii\"\n\"2843978\";\"Rothenstein\";\"main\"\n\"2844042\";\"Rothenfels\";\"main\"\n\"2844056\";\"Rothenburg ob der Tauber\";\"main\"\n\"2844056\";\"Rothenburg nad Tauber\";\"other\"\n\"2844056\";\"ローテンブルク・オプ・デア・タウバー\";\"other\"\n\"2844062\";\"Rothenburg\";\"main\"\n\"2844072\";\"Rothenbuch\";\"main\"\n\"2844089\";\"Rothenberg\";\"main\"\n\"2844126\";\"Röthenbach an der Pegnitz\";\"main\"\n\"2844126\";\"Rothenbach an der Pegnitz\";\"ascii\"\n\"2844126\";\"Rothenbach\";\"other\"\n\"2844126\";\"Röthenbach\";\"other\"\n\"2844148\";\"Röthenbach\";\"main\"\n\"2844148\";\"Rothenbach\";\"ascii\"\n\"2844245\";\"Rötha\";\"main\"\n\"2844245\";\"Rotha\";\"ascii\"\n\"2844249\";\"Roth\";\"main\"\n\"2844265\";\"Roth\";\"main\"\n\"2844265\";\"Rota\";\"other\"\n\"2844265\";\"rosu\";\"other\"\n\"2844265\";\"roto\";\"other\"\n\"2844265\";\"rwt\";\"other\"\n\"2844265\";\"Рота\";\"other\"\n\"2844265\";\"רות\";\"other\"\n\"2844265\";\"ロス\";\"other\"\n\"2844265\";\"ロート\";\"other\"\n\"2844274\";\"Rötgesbüttel\";\"main\"\n\"2844274\";\"Rotgesbuttel\";\"ascii\"\n\"2844277\";\"Roetgen\";\"main\"\n\"2844277\";\"Rotgen\";\"other\"\n\"2844277\";\"Rötgen\";\"other\"\n\"2844434\";\"Rotenburg an der Fulda\";\"main\"\n\"2844434\";\"Rotenburg\";\"other\"\n\"2844437\";\"Rotenburg\";\"main\"\n\"2844437\";\"Ротенбург\";\"other\"\n\"2844567\";\"Rot am See\";\"main\"\n\"2844567\";\"Rot\";\"other\"\n\"2844579\";\"Rot\";\"main\"\n\"2844588\";\"Rostock\";\"main\"\n\"2844588\";\"Roshhok\";\"other\"\n\"2844588\";\"Roshtok\";\"other\"\n\"2844588\";\"Rostok\";\"other\"\n\"2844588\";\"loseutokeu\";\"other\"\n\"2844588\";\"rosutokku\";\"other\"\n\"2844588\";\"rwstwk\";\"other\"\n\"2844588\";\"Росток\";\"other\"\n\"2844588\";\"Рошток\";\"other\"\n\"2844588\";\"Рощок\";\"other\"\n\"2844588\";\"روستوك\";\"other\"\n\"2844588\";\"ロストック\";\"other\"\n\"2844588\";\"로스토크\";\"other\"\n\"2844604\";\"Roßwein\";\"main\"\n\"2844604\";\"Rosswein\";\"ascii\"\n\"2844616\";\"Roßtal\";\"main\"\n\"2844616\";\"Rosstal\";\"ascii\"\n\"2844651\";\"Roßleben\";\"main\"\n\"2844651\";\"Rossleben\";\"ascii\"\n\"2844654\";\"Roßlau\";\"main\"\n\"2844654\";\"Rosslau\";\"ascii\"\n\"2844658\";\"Roßla\";\"main\"\n\"2844658\";\"Rossla\";\"ascii\"\n\"2844701\";\"Roßhaupten\";\"main\"\n\"2844701\";\"Rosshaupten\";\"ascii\"\n\"2844756\";\"Roßdorf\";\"main\"\n\"2844756\";\"Rossdorf\";\"ascii\"\n\"2844829\";\"Rossbach\";\"main\"\n\"2844862\";\"Rösrath\";\"main\"\n\"2844862\";\"Rosrath\";\"ascii\"\n\"2844880\";\"Roskow\";\"main\"\n\"2844883\";\"Rositz\";\"main\"\n\"2844924\";\"Rosenthal\";\"main\"\n\"2844947\";\"Rosenow\";\"main\"\n\"2844988\";\"Rosenheim\";\"main\"\n\"2844988\";\"Pons oeni\";\"other\"\n\"2844988\";\"Rosnheim\";\"other\"\n\"2844988\";\"Rozenkhajm\";\"other\"\n\"2844988\";\"luo sen hai mu\";\"other\"\n\"2844988\";\"Розенхайм\";\"other\"\n\"2844988\";\"罗森海姆\";\"other\"\n\"2845027\";\"Rosenfeld\";\"main\"\n\"2845035\";\"Rosendahl\";\"main\"\n\"2845056\";\"Rosenberg\";\"main\"\n\"2845131\";\"Rosdorf\";\"main\"\n\"2845146\";\"Rosche\";\"main\"\n\"2845160\";\"Rosbach vor der Höhe\";\"main\"\n\"2845160\";\"Rosbach vor der Hohe\";\"ascii\"\n\"2845160\";\"Rosbach\";\"other\"\n\"2845209\";\"Ronshausen\";\"main\"\n\"2845212\";\"Ronsberg\";\"main\"\n\"2845222\";\"Ronnenberg\";\"main\"\n\"2845229\";\"Ronneburg\";\"main\"\n\"2845268\";\"Romrod\";\"main\"\n\"2845273\";\"Rommerskirchen\";\"main\"\n\"2845304\";\"Römhild\";\"main\"\n\"2845304\";\"Romhild\";\"ascii\"\n\"2845433\";\"Röllbach\";\"main\"\n\"2845433\";\"Rollbach\";\"ascii\"\n\"2845475\";\"Roitzsch\";\"main\"\n\"2845503\";\"Roigheim\";\"main\"\n\"2845540\";\"Röhrsen\";\"main\"\n\"2845540\";\"Rohrsen\";\"ascii\"\n\"2845559\";\"Röhrnbach\";\"main\"\n\"2845559\";\"Rohrnbach\";\"ascii\"\n\"2845565\";\"Röhrmoos\";\"main\"\n\"2845565\";\"Rohrmoos\";\"ascii\"\n\"2845625\";\"Rohrenfels\";\"main\"\n\"2845638\";\"Rohrdorf\";\"main\"\n\"2845641\";\"Rohrdorf\";\"main\"\n\"2845714\";\"Rohrbach\";\"main\"\n\"2845723\";\"Rohrbach\";\"main\"\n\"2845744\";\"Rohr\";\"main\"\n\"2845747\";\"Rohr\";\"main\"\n\"2845750\";\"Rohr\";\"main\"\n\"2845840\";\"Roggentin\";\"main\"\n\"2845858\";\"Roggendorf\";\"main\"\n\"2845863\";\"Roggenburg\";\"main\"\n\"2845885\";\"Rogätz\";\"main\"\n\"2845885\";\"Rogatz\";\"ascii\"\n\"2845891\";\"Röfingen\";\"main\"\n\"2845891\";\"Rofingen\";\"ascii\"\n\"2845914\";\"Rodleben\";\"main\"\n\"2845919\";\"Rödinghausen\";\"main\"\n\"2845919\";\"Rodinghausen\";\"ascii\"\n\"2845924\";\"Roding\";\"main\"\n\"2845953\";\"Rodewisch\";\"main\"\n\"2846032\";\"Köln Rodenkirchen\";\"main\"\n\"2846032\";\"Koeln Rodenkirchen\";\"ascii\"\n\"2846032\";\"Rodenkirchen\";\"other\"\n\"2846040\";\"Rodenberg\";\"main\"\n\"2846063\";\"Rodenbach\";\"main\"\n\"2846066\";\"Rodenbach\";\"main\"\n\"2846072\";\"Roden\";\"main\"\n\"2846084\";\"Rödelsee\";\"main\"\n\"2846084\";\"Rodelsee\";\"ascii\"\n\"2846158\";\"Rodalben\";\"main\"\n\"2846229\";\"Rockenhausen\";\"main\"\n\"2846235\";\"Rockenberg\";\"main\"\n\"2846261\";\"Rochlitz\";\"main\"\n\"2846274\";\"Röblingen am See\";\"main\"\n\"2846274\";\"Roblingen am See\";\"ascii\"\n\"2846274\";\"Roblingen\";\"other\"\n\"2846274\";\"Röblingen\";\"other\"\n\"2846286\";\"Röbel\";\"main\"\n\"2846286\";\"Robel\";\"ascii\"\n\"2846378\";\"Rittersgrün\";\"main\"\n\"2846378\";\"Rittersgrun\";\"ascii\"\n\"2846381\";\"Rittersdorf\";\"main\"\n\"2846398\";\"Ritterhude\";\"main\"\n\"2846511\";\"Riol\";\"main\"\n\"2846523\";\"Rinteln\";\"main\"\n\"2846523\";\"Rintel'n\";\"other\"\n\"2846523\";\"Stadt Rinteln\";\"other\"\n\"2846523\";\"Ринтельн\";\"other\"\n\"2846584\";\"Ringsheim\";\"main\"\n\"2846593\";\"Ringleben\";\"main\"\n\"2846658\";\"Ringelai\";\"main\"\n\"2846714\";\"Rinchnach\";\"main\"\n\"2846715\";\"Rimsting\";\"main\"\n\"2846722\";\"Rimpar\";\"main\"\n\"2846754\";\"Rimbach\";\"main\"\n\"2846756\";\"Rimbach\";\"main\"\n\"2846790\";\"Rietz Neuendorf\";\"main\"\n\"2846806\";\"Rietschen\";\"main\"\n\"2846811\";\"Riethnordhausen\";\"main\"\n\"2846843\";\"Rietberg\";\"main\"\n\"2846853\";\"Rieste\";\"main\"\n\"2846854\";\"Riestedt\";\"main\"\n\"2846854\";\"Riestadt\";\"other\"\n\"2846922\";\"Rieseby\";\"main\"\n\"2846939\";\"Riesa\";\"main\"\n\"2846946\";\"Riepsdorf\";\"main\"\n\"2846979\";\"Rieneck\";\"main\"\n\"2847003\";\"Rielasingen-Worblingen\";\"main\"\n\"2847017\";\"Riegsee\";\"main\"\n\"2847033\";\"Riegelsberg\";\"main\"\n\"2847049\";\"Riegel\";\"main\"\n\"2847049\";\"Riege\";\"other\"\n\"2847080\";\"Riedlingen\";\"main\"\n\"2847195\";\"Riedering\";\"main\"\n\"2847198\";\"Riederich\";\"main\"\n\"2847210\";\"Rieder\";\"main\"\n\"2847231\";\"Riedenburg\";\"main\"\n\"2847237\";\"Rieden an der Kötz\";\"main\"\n\"2847237\";\"Rieden an der Kotz\";\"ascii\"\n\"2847240\";\"Rieden\";\"main\"\n\"2847242\";\"Rieden\";\"main\"\n\"2847247\";\"Rieden\";\"main\"\n\"2847271\";\"Riede\";\"main\"\n\"2847319\";\"Ried\";\"main\"\n\"2847429\";\"Rickling\";\"main\"\n\"2847433\";\"Rickert\";\"main\"\n\"2847442\";\"Rickenbach\";\"main\"\n\"2847490\";\"Richtenberg\";\"main\"\n\"2847524\";\"Ribnitz-Damgarten\";\"main\"\n\"2847524\";\"Damgarten\";\"other\"\n\"2847529\";\"Ribbesbüttel\";\"main\"\n\"2847529\";\"Ribbesbuttel\";\"ascii\"\n\"2847547\";\"Rhumspringe\";\"main\"\n\"2847558\";\"Rhodt unter Rietburg\";\"main\"\n\"2847574\";\"Rhinow\";\"main\"\n\"2847586\";\"Rheurdt\";\"main\"\n\"2847588\";\"Rhens\";\"main\"\n\"2847595\";\"Rheinzabern\";\"main\"\n\"2847612\";\"Rheinsberg\";\"main\"\n\"2847639\";\"Rheinfelden\";\"main\"\n\"2847639\";\"Badisch-Rheinfelden\";\"other\"\n\"2847639\";\"Rajnfel'den\";\"other\"\n\"2847639\";\"Райнфельден\";\"other\"\n\"2847645\";\"Rheine\";\"main\"\n\"2847645\";\"Rajn\";\"other\"\n\"2847645\";\"Райн\";\"other\"\n\"2847654\";\"Rheinbrohl\";\"main\"\n\"2847655\";\"Rheinbreitbach\";\"main\"\n\"2847658\";\"Rheinböllen\";\"main\"\n\"2847658\";\"Rheinbollen\";\"ascii\"\n\"2847662\";\"Rheinberg\";\"main\"\n\"2847666\";\"Rheinbach\";\"main\"\n\"2847669\";\"Rheinau\";\"main\"\n\"2847686\";\"Rheden\";\"main\"\n\"2847688\";\"Rhede\";\"main\"\n\"2847689\";\"Rhede\";\"main\"\n\"2847690\";\"Rheda-Wiedenbrück\";\"main\"\n\"2847690\";\"Rheda-Wiedenbruck\";\"ascii\"\n\"2847690\";\"Red-Videnbrjuk\";\"other\"\n\"2847690\";\"Ред-Виденбрюк\";\"other\"\n\"2847695\";\"Rhaunen\";\"main\"\n\"2847708\";\"Rhade\";\"main\"\n\"2847736\";\"Reutlingen\";\"main\"\n\"2847736\";\"Rojtlingen\";\"other\"\n\"2847736\";\"roitoringen\";\"other\"\n\"2847736\";\"rwytlyngn\";\"other\"\n\"2847736\";\"Ройтлинген\";\"other\"\n\"2847736\";\"Ројтлинген\";\"other\"\n\"2847736\";\"רויטלינגן\";\"other\"\n\"2847736\";\"ロイトリンゲン\";\"other\"\n\"2847765\";\"Reuth\";\"main\"\n\"2847774\";\"Reuth\";\"main\"\n\"2847861\";\"Reut\";\"main\"\n\"2847887\";\"Reußen\";\"main\"\n\"2847887\";\"Reussen\";\"ascii\"\n\"2847938\";\"Retzstadt\";\"main\"\n\"2847985\";\"Rettenberg\";\"main\"\n\"2847993\";\"Rettenbach\";\"main\"\n\"2848001\";\"Rettenbach\";\"main\"\n\"2848017\";\"Retschow\";\"main\"\n\"2848051\";\"Rethem\";\"main\"\n\"2848054\";\"Retgendorf\";\"main\"\n\"2848110\";\"Reppenstedt\";\"main\"\n\"2848143\";\"Rentweinsdorf\";\"main\"\n\"2848175\";\"Renningen\";\"main\"\n\"2848181\";\"Rennertshofen\";\"main\"\n\"2848187\";\"Rennerod\";\"main\"\n\"2848215\";\"Rengsdorf\";\"main\"\n\"2848245\";\"Rendsburg\";\"main\"\n\"2848245\";\"Rendsborg\";\"other\"\n\"2848245\";\"Rendsbourg\";\"other\"\n\"2848251\";\"Renchen\";\"main\"\n\"2848269\";\"Remse\";\"main\"\n\"2848273\";\"Remscheid\";\"main\"\n\"2848273\";\"Remshajd\";\"other\"\n\"2848273\";\"remushaito\";\"other\"\n\"2848273\";\"Ремшайд\";\"other\"\n\"2848273\";\"レムシャイト\";\"other\"\n\"2848277\";\"Remptendorf\";\"main\"\n\"2848308\";\"Remlingen\";\"main\"\n\"2848309\";\"Remlingen\";\"main\"\n\"2848335\";\"Remagen\";\"main\"\n\"2848340\";\"Rellingen\";\"main\"\n\"2848382\";\"Reit im Winkl\";\"main\"\n\"2848543\";\"Reiskirchen\";\"main\"\n\"2848606\";\"Reischach\";\"main\"\n\"2848621\";\"Reisbach\";\"main\"\n\"2848689\";\"Reinstorf\";\"main\"\n\"2848710\";\"Reinsfeld\";\"main\"\n\"2848725\";\"Reinsdorf\";\"main\"\n\"2848737\";\"Reinsberg\";\"main\"\n\"2848756\";\"Berlin Reinickendorf\";\"main\"\n\"2848756\";\"Reinickendorf\";\"other\"\n\"2848762\";\"Reinheim\";\"main\"\n\"2848779\";\"Reinhardtsgrimma\";\"main\"\n\"2848811\";\"Reinfeld\";\"main\"\n\"2848841\";\"Reinberg\";\"main\"\n\"2848845\";\"Reinbek\";\"main\"\n\"2848851\";\"Reimlingen\";\"main\"\n\"2848867\";\"Reilingen\";\"main\"\n\"2848872\";\"Reil\";\"main\"\n\"2849001\";\"Reichling\";\"main\"\n\"2849017\";\"Reichertshofen\";\"main\"\n\"2849017\";\"Reichertzhofen\";\"other\"\n\"2849019\";\"Reichertsheim\";\"main\"\n\"2849025\";\"Reichertshausen\";\"main\"\n\"2849047\";\"Reichersbeuern\";\"main\"\n\"2849047\";\"Reichersbeuren\";\"other\"\n\"2849052\";\"Reichenwalde\";\"main\"\n\"2849062\";\"Reichenschwand\";\"main\"\n\"2849093\";\"Reichenberg\";\"main\"\n\"2849102\";\"Reichenbach-Steegen\";\"main\"\n\"2849118\";\"Reichenbach an der Fils\";\"main\"\n\"2849145\";\"Reichenbach\";\"main\"\n\"2849156\";\"Reichenbach/Vogtland\";\"main\"\n\"2849156\";\"Reichenbach\";\"other\"\n\"2849156\";\"Stadt Reichenbach/Vogtland\";\"other\"\n\"2849170\";\"Reichenbach\";\"main\"\n\"2849170\";\"Richenbach\";\"other\"\n\"2849197\";\"Reichelsheim\";\"main\"\n\"2849198\";\"Reichelsheim\";\"main\"\n\"2849209\";\"Reichartshausen\";\"main\"\n\"2849211\";\"Reichardtswerben\";\"main\"\n\"2849263\";\"Rehna\";\"main\"\n\"2849300\";\"Rehling\";\"main\"\n\"2849347\";\"Rehfelde\";\"main\"\n\"2849364\";\"Rehe\";\"main\"\n\"2849369\";\"Rehden\";\"main\"\n\"2849371\";\"Rehburg-Loccum\";\"main\"\n\"2849446\";\"Rehau\";\"main\"\n\"2849455\";\"Regnitzlosau\";\"main\"\n\"2849464\";\"Regis-Breitingen\";\"main\"\n\"2849464\";\"Breitingen Regis\";\"other\"\n\"2849467\";\"Regesbostel\";\"main\"\n\"2849476\";\"Regenstauf\";\"main\"\n\"2849483\";\"Regensburg\";\"main\"\n\"2849483\";\"Ratisbon\";\"other\"\n\"2849483\";\"Ratisbona\";\"other\"\n\"2849483\";\"Ratisbonne\";\"other\"\n\"2849483\";\"Ratyzbona\";\"other\"\n\"2849483\";\"Regensburgo\";\"other\"\n\"2849483\";\"Regenzburg\";\"other\"\n\"2849483\";\"Rengschburg\";\"other\"\n\"2849483\";\"Rezno\";\"other\"\n\"2849483\";\"regensuburuku\";\"other\"\n\"2849483\";\"rgnsbwrg\";\"other\"\n\"2849483\";\"Řezno\";\"other\"\n\"2849483\";\"Регензбург\";\"other\"\n\"2849483\";\"Регенсбург\";\"other\"\n\"2849483\";\"Реґенсбурґ\";\"other\"\n\"2849483\";\"רגנסבורג\";\"other\"\n\"2849483\";\"レーゲンスブルク\";\"other\"\n\"2849495\";\"Regen\";\"main\"\n\"2849528\";\"Reeßum\";\"main\"\n\"2849528\";\"Reessum\";\"ascii\"\n\"2849548\";\"Rees\";\"main\"\n\"2849566\";\"Redwitz an der Rodach\";\"main\"\n\"2849568\";\"Rednitzhembach\";\"main\"\n\"2849647\";\"Recklinghausen\";\"main\"\n\"2849647\";\"Reklingkhauzen\";\"other\"\n\"2849647\";\"Riaekelkusen\";\"other\"\n\"2849647\";\"Riäkelkusen\";\"other\"\n\"2849647\";\"Реклингхаузен\";\"other\"\n\"2849689\";\"Recke\";\"main\"\n\"2849694\";\"Rechtsupweg\";\"main\"\n\"2849698\";\"Rechtmehring\";\"main\"\n\"2849710\";\"Rechtenbach\";\"main\"\n\"2849717\";\"Rechlin\";\"main\"\n\"2849727\";\"Rechenberg-Bienenmühle\";\"main\"\n\"2849727\";\"Rechenberg-Bienenmuhle\";\"ascii\"\n\"2849740\";\"Rechberghausen\";\"main\"\n\"2849802\";\"Ravensburg\";\"main\"\n\"2849802\";\"Равенсбург\";\"other\"\n\"2849875\";\"Rauschenberg\";\"main\"\n\"2849913\";\"Raunheim\";\"main\"\n\"2850056\";\"Rauenberg\";\"main\"\n\"2850058\";\"Rauen\";\"main\"\n\"2850085\";\"Raubling\";\"main\"\n\"2850098\";\"Raubach\";\"main\"\n\"2850132\";\"Ratzeburg\";\"main\"\n\"2850141\";\"Rattiszell\";\"main\"\n\"2850153\";\"Rattenberg\";\"main\"\n\"2850161\";\"Rattelsdorf\";\"main\"\n\"2850174\";\"Ratingen\";\"main\"\n\"2850174\";\"Ратинген\";\"other\"\n\"2850195\";\"Rathmannsdorf\";\"main\"\n\"2850213\";\"Rathenow\";\"main\"\n\"2850235\";\"Ratekau\";\"main\"\n\"2850238\";\"Rastow\";\"main\"\n\"2850248\";\"Rastenberg\";\"main\"\n\"2850253\";\"Rastede\";\"main\"\n\"2850257\";\"Rastatt\";\"main\"\n\"2850257\";\"rashtat\";\"other\"\n\"2850257\";\"rashtatt\";\"other\"\n\"2850257\";\"rashutatto\";\"other\"\n\"2850257\";\"Раштат\";\"other\"\n\"2850257\";\"Раштатт\";\"other\"\n\"2850257\";\"ラシュタット\";\"other\"\n\"2850266\";\"Raßnitz\";\"main\"\n\"2850266\";\"Rassnitz\";\"ascii\"\n\"2850293\";\"Rasdorf\";\"main\"\n\"2850303\";\"Raschau\";\"main\"\n\"2850422\";\"Rantrum\";\"main\"\n\"2850425\";\"Ranstadt\";\"main\"\n\"2850446\";\"Rannungen\";\"main\"\n\"2850484\";\"Ranis\";\"main\"\n\"2850490\";\"Rangsdorf\";\"main\"\n\"2850496\";\"Rangendingen\";\"main\"\n\"2850523\";\"Randersacker\";\"main\"\n\"2850535\";\"Ramsthal\";\"main\"\n\"2850536\";\"Ramstein-Miesenbach\";\"main\"\n\"2850536\";\"Ramstein\";\"other\"\n\"2850555\";\"Ramsin\";\"main\"\n\"2850566\";\"Ramsen\";\"main\"\n\"2850603\";\"Ramsau\";\"main\"\n\"2850608\";\"Ramsau\";\"main\"\n\"2850608\";\"Рамсау\";\"other\"\n\"2850636\";\"Rammingen\";\"main\"\n\"2850648\";\"Rammenau\";\"main\"\n\"2850663\";\"Rammelsbach\";\"main\"\n\"2850705\";\"Ramerberg\";\"main\"\n\"2850718\";\"Rambin\";\"main\"\n\"2850722\";\"Ramberg\";\"main\"\n\"2850740\";\"Ralingen\";\"main\"\n\"2850768\";\"Raitenbuch\";\"main\"\n\"2850776\";\"Raisting\";\"main\"\n\"2850777\";\"Raisdorf\";\"main\"\n\"2850807\";\"Rain\";\"main\"\n\"2850808\";\"Rain\";\"main\"\n\"2850887\";\"Rahden\";\"main\"\n\"2850894\";\"Raguhn\";\"main\"\n\"2850942\";\"Raesfeld\";\"main\"\n\"2850954\";\"Radolfzell am Bodensee\";\"main\"\n\"2850954\";\"Radolfzell\";\"other\"\n\"2850973\";\"Radis\";\"main\"\n\"2850980\";\"Radibor\";\"main\"\n\"2850995\";\"Radevormwald\";\"main\"\n\"2851069\";\"Radegast\";\"main\"\n\"2851074\";\"Radeburg\";\"main\"\n\"2851077\";\"Radebeul\";\"main\"\n\"2851079\";\"Radeberg\";\"main\"\n\"2851096\";\"Raddestorf\";\"main\"\n\"2851100\";\"Radbruch\";\"main\"\n\"2851113\";\"Rackwitz\";\"main\"\n\"2851132\";\"Räckelwitz\";\"main\"\n\"2851132\";\"Rackelwitz\";\"ascii\"\n\"2851175\";\"Raben Steinfeld\";\"main\"\n\"2851262\";\"Rabenau\";\"main\"\n\"2851310\";\"Quitzdorf\";\"main\"\n\"2851337\";\"Quierschied\";\"main\"\n\"2851343\";\"Quickborn\";\"main\"\n\"2851385\";\"Quern\";\"main\"\n\"2851393\";\"Querfurt\";\"main\"\n\"2851450\";\"Quellendorf\";\"main\"\n\"2851455\";\"Queis\";\"main\"\n\"2851459\";\"Queidersbach\";\"main\"\n\"2851465\";\"Quedlinburg\";\"main\"\n\"2851465\";\"Kvedlinburg\";\"other\"\n\"2851465\";\"Stadt Quedlinburg\";\"other\"\n\"2851465\";\"keubedeullinbuleukeu\";\"other\"\n\"2851465\";\"kui de lin bao\";\"other\"\n\"2851465\";\"Кведлинбург\";\"other\"\n\"2851465\";\"奎德林堡\";\"other\"\n\"2851465\";\"크베들린부르크\";\"other\"\n\"2851502\";\"Quarnbek\";\"main\"\n\"2851523\";\"Quakenbrück\";\"main\"\n\"2851523\";\"Quakenbruck\";\"ascii\"\n\"2851543\";\"Pyrbaum\";\"main\"\n\"2851567\";\"Putzbrunn\";\"main\"\n\"2851584\";\"Püttlingen\";\"main\"\n\"2851584\";\"Puttlingen\";\"ascii\"\n\"2851611\";\"Putlitz\";\"main\"\n\"2851615\";\"Putbus\";\"main\"\n\"2851631\";\"Puschwitz\";\"main\"\n\"2851634\";\"Puschendorf\";\"main\"\n\"2851664\";\"Pürgen\";\"main\"\n\"2851664\";\"Purgen\";\"ascii\"\n\"2851734\";\"Pullenreuth\";\"main\"\n\"2851739\";\"Pullach im Isartal\";\"main\"\n\"2851739\";\"Pullach\";\"other\"\n\"2851746\";\"Pulheim\";\"main\"\n\"2851767\";\"Puderbach\";\"main\"\n\"2851782\";\"Puchheim\";\"main\"\n\"2851784\";\"Püchersreuth\";\"main\"\n\"2851784\";\"Puchersreuth\";\"ascii\"\n\"2851801\";\"Prutting\";\"main\"\n\"2851826\";\"Prüm\";\"main\"\n\"2851826\";\"Prum\";\"ascii\"\n\"2851850\";\"Prötzel\";\"main\"\n\"2851850\";\"Protzel\";\"ascii\"\n\"2851863\";\"Prosselsheim\";\"main\"\n\"2851893\";\"Pronstorf\";\"main\"\n\"2851916\";\"Prohn\";\"main\"\n\"2851928\";\"Probstzella\";\"main\"\n\"2851946\";\"Probsteierhagen\";\"main\"\n\"2851962\";\"Pritzwalk\";\"main\"\n\"2851977\";\"Prittriching\";\"main\"\n\"2851980\";\"Prittitz\";\"main\"\n\"2851994\";\"Prisdorf\";\"main\"\n\"2852054\";\"Priestewitz\";\"main\"\n\"2852082\";\"Priesendorf\";\"main\"\n\"2852101\";\"Prien am Chiemsee\";\"main\"\n\"2852101\";\"Prien\";\"other\"\n\"2852129\";\"Prichsenstadt\";\"main\"\n\"2852144\";\"Preußisch Oldendorf\";\"main\"\n\"2852144\";\"Preussisch Oldendorf\";\"ascii\"\n\"2852154\";\"Pretzschendorf\";\"main\"\n\"2852156\";\"Pretzsch\";\"main\"\n\"2852159\";\"Pretzier\";\"main\"\n\"2852162\";\"Pretzfeld\";\"main\"\n\"2852168\";\"Prettin\";\"main\"\n\"2852190\";\"Pressig\";\"main\"\n\"2852197\";\"Presseck\";\"main\"\n\"2852198\";\"Pressath\";\"main\"\n\"2852218\";\"Prenzlau\";\"main\"\n\"2852233\";\"Premnitz\";\"main\"\n\"2852279\";\"Preetz\";\"main\"\n\"2852280\";\"Preetz\";\"main\"\n\"2852299\";\"Prebitz\";\"main\"\n\"2852372\";\"Prackenbach\";\"main\"\n\"2852376\";\"Pracht\";\"main\"\n\"2852394\";\"Poxdorf\";\"main\"\n\"2852400\";\"Pouch\";\"main\"\n\"2852418\";\"Pottum\";\"main\"\n\"2852422\";\"Pöttmes\";\"main\"\n\"2852422\";\"Pottmes\";\"ascii\"\n\"2852440\";\"Pottenstein\";\"main\"\n\"2852458\";\"Potsdam\";\"main\"\n\"2852458\";\"Poczdam\";\"other\"\n\"2852458\";\"Postupim\";\"other\"\n\"2852458\";\"Potsdamo\";\"other\"\n\"2852458\";\"Poztupimi\";\"other\"\n\"2852458\";\"bo ci tan\";\"other\"\n\"2852458\";\"pocheudam\";\"other\"\n\"2852458\";\"potsudamu\";\"other\"\n\"2852458\";\"pwtsdm\";\"other\"\n\"2852458\";\"Πότσδαμ\";\"other\"\n\"2852458\";\"Потсдам\";\"other\"\n\"2852458\";\"פוטסדאם\";\"other\"\n\"2852458\";\"פוטסדם\";\"other\"\n\"2852458\";\"ポツダム\";\"other\"\n\"2852458\";\"波茨坦\";\"other\"\n\"2852458\";\"포츠담\";\"other\"\n\"2852479\";\"Postmünster\";\"main\"\n\"2852479\";\"Postmunster\";\"ascii\"\n\"2852509\";\"Postau\";\"main\"\n\"2852512\";\"Pößneck\";\"main\"\n\"2852512\";\"Possneck\";\"ascii\"\n\"2852541\";\"Poseritz\";\"main\"\n\"2852577\";\"Porta Westfalica\";\"main\"\n\"2852591\";\"Porschdorf\";\"main\"\n\"2852599\";\"Pörnbach\";\"main\"\n\"2852599\";\"Pornbach\";\"ascii\"\n\"2852637\";\"Poppenricht\";\"main\"\n\"2852637\";\"Michaels Poppenricht\";\"other\"\n\"2852656\";\"Poppenhausen\";\"main\"\n\"2852658\";\"Poppenhausen\";\"main\"\n\"2852729\";\"Ponitz\";\"main\"\n\"2852757\";\"Pommersfelden\";\"main\"\n\"2852772\";\"Pommelsbrunn\";\"main\"\n\"2852789\";\"Pölzig\";\"main\"\n\"2852789\";\"Polzig\";\"ascii\"\n\"2852809\";\"Polsingen\";\"main\"\n\"2852840\";\"Polling\";\"main\"\n\"2852841\";\"Polling\";\"main\"\n\"2852847\";\"Pollhagen\";\"main\"\n\"2852857\";\"Polleben\";\"main\"\n\"2852858\";\"Polle\";\"main\"\n\"2852877\";\"Pölitz\";\"main\"\n\"2852877\";\"Politz\";\"ascii\"\n\"2852909\";\"Polch\";\"main\"\n\"2852939\";\"Poing\";\"main\"\n\"2852991\";\"Pöhla\";\"main\"\n\"2852991\";\"Pohla\";\"ascii\"\n\"2852995\";\"Pöhl\";\"main\"\n\"2852995\";\"Pohl\";\"ascii\"\n\"2853052\";\"Podelzig\";\"main\"\n\"2853052\";\"Alt Podeizig\";\"other\"\n\"2853065\";\"Pocking\";\"main\"\n\"2853066\";\"Pöcking\";\"main\"\n\"2853066\";\"Pocking\";\"ascii\"\n\"2853071\";\"Pockau\";\"main\"\n\"2853085\";\"Pobershau\";\"main\"\n\"2853089\";\"Pluwig\";\"main\"\n\"2853107\";\"Plüderhausen\";\"main\"\n\"2853107\";\"Pluderhausen\";\"ascii\"\n\"2853113\";\"Plötzky\";\"main\"\n\"2853113\";\"Plotzky\";\"ascii\"\n\"2853114\";\"Plötzkau\";\"main\"\n\"2853114\";\"Plotzkau\";\"ascii\"\n\"2853146\";\"Plößberg\";\"main\"\n\"2853146\";\"Plossberg\";\"ascii\"\n\"2853162\";\"Plön\";\"main\"\n\"2853162\";\"Plon\";\"ascii\"\n\"2853180\";\"Plochingen\";\"main\"\n\"2853192\";\"Pliezhausen\";\"main\"\n\"2853200\";\"Pliening\";\"main\"\n\"2853202\";\"Pleystein\";\"main\"\n\"2853202\";\"Bleistein\";\"other\"\n\"2853209\";\"Plettenberg\";\"main\"\n\"2853209\";\"Stadt Plettenberg\";\"other\"\n\"2853209\";\"Плеттенберг\";\"other\"\n\"2853231\";\"Plessa\";\"main\"\n\"2853253\";\"Pleiskirchen\";\"main\"\n\"2853260\";\"Pleinfeld\";\"main\"\n\"2853266\";\"Pleidelsheim\";\"main\"\n\"2853292\";\"Plauen\";\"main\"\n\"2853292\";\"plauehn\";\"other\"\n\"2853292\";\"purauen\";\"other\"\n\"2853292\";\"Плауэн\";\"other\"\n\"2853292\";\"プラウエン\";\"other\"\n\"2853295\";\"Plaue\";\"main\"\n\"2853297\";\"Plau\";\"main\"\n\"2853310\";\"Plattling\";\"main\"\n\"2853310\";\"Pladling\";\"other\"\n\"2853332\";\"Plattenburg\";\"main\"\n\"2853406\";\"Plate\";\"main\"\n\"2853435\";\"Plankstadt\";\"main\"\n\"2853463\";\"Planegg\";\"main\"\n\"2853463\";\"Planeck\";\"other\"\n\"2853471\";\"Plaidt\";\"main\"\n\"2853527\";\"Pittenhart\";\"main\"\n\"2853572\";\"Pirna\";\"main\"\n\"2853574\";\"Pirmasens\";\"main\"\n\"2853574\";\"Pirmazens\";\"other\"\n\"2853574\";\"pirumazensu\";\"other\"\n\"2853574\";\"Пирмазенс\";\"other\"\n\"2853574\";\"ピルマゼンス\";\"other\"\n\"2853599\";\"Pirk\";\"main\"\n\"2853599\";\"Purk\";\"other\"\n\"2853627\";\"Pinzberg\";\"main\"\n\"2853647\";\"Pinnow\";\"main\"\n\"2853658\";\"Pinneberg\";\"main\"\n\"2853658\";\"Pinnbarg\";\"other\"\n\"2853691\";\"Pilsting\";\"main\"\n\"2853700\";\"Pilsach\";\"main\"\n\"2853779\";\"Piesport\";\"main\"\n\"2853844\";\"Pielenhofen\";\"main\"\n\"2853855\";\"Piding\";\"main\"\n\"2853855\";\"Au\";\"other\"\n\"2853900\";\"Philippsthal\";\"main\"\n\"2853907\";\"Philippsburg\";\"main\"\n\"2853924\";\"Pfungstadt\";\"main\"\n\"2853928\";\"Pfullingen\";\"main\"\n\"2853930\";\"Pfullendorf\";\"main\"\n\"2853949\";\"Pfronten\";\"main\"\n\"2853951\";\"Pfronstetten\";\"main\"\n\"2853961\";\"Pfreimd\";\"main\"\n\"2853961\";\"Pfrimbt\";\"other\"\n\"2853969\";\"Pforzheim\";\"main\"\n\"2853969\";\"Pforcgejm\";\"other\"\n\"2853969\";\"Pforckhajm\";\"other\"\n\"2853969\";\"puforutsuhaimu\";\"other\"\n\"2853969\";\"Пфорцгейм\";\"other\"\n\"2853969\";\"Пфорцхајм\";\"other\"\n\"2853969\";\"プフォルツハイム\";\"other\"\n\"2853971\";\"Pforzen\";\"main\"\n\"2853984\";\"Pfofeld\";\"main\"\n\"2854149\";\"Pfeffenhausen\";\"main\"\n\"2854149\";\"Pfaffenhausen\";\"other\"\n\"2854151\";\"Pfeffelbach\";\"main\"\n\"2854152\";\"Pfedelbach\";\"main\"\n\"2854165\";\"Pfatter\";\"main\"\n\"2854165\";\"Pfeter\";\"other\"\n\"2854167\";\"Pfarrweisach\";\"main\"\n\"2854179\";\"Pfarrkirchen\";\"main\"\n\"2854252\";\"Pfalzgrafenweiler\";\"main\"\n\"2854272\";\"Pfakofen\";\"main\"\n\"2854298\";\"Pfaffroda\";\"main\"\n\"2854310\";\"Pfaffing\";\"main\"\n\"2854325\";\"Pfaffenweiler\";\"main\"\n\"2854346\";\"Pfaffen-Schwabenheim\";\"main\"\n\"2854384\";\"Pfaffenhofen an der Roth\";\"main\"\n\"2854384\";\"Pfaffenhofen\";\"other\"\n\"2854386\";\"Pfaffenhofen an der Ilm\";\"main\"\n\"2854392\";\"Pfaffenhofen\";\"main\"\n\"2854394\";\"Pfaffenhofen\";\"main\"\n\"2854411\";\"Pfaffenhausen\";\"main\"\n\"2854557\";\"Pettstadt\";\"main\"\n\"2854561\";\"Petting\";\"main\"\n\"2854574\";\"Pettendorf\";\"main\"\n\"2854574\";\"Petendorf\";\"other\"\n\"2854646\";\"Petershausen\";\"main\"\n\"2854653\";\"Petershagen\";\"main\"\n\"2854655\";\"Petershagen\";\"main\"\n\"2854685\";\"Petersdorf\";\"main\"\n\"2854706\";\"Petersberg\";\"main\"\n\"2854737\";\"Petersaurach\";\"main\"\n\"2854840\";\"Perlesreut\";\"main\"\n\"2854840\";\"Berlasreut\";\"other\"\n\"2854848\";\"Perleberg\";\"main\"\n\"2854861\";\"Perkam\";\"main\"\n\"2854892\";\"Perach\";\"main\"\n\"2854906\";\"Penzlin\";\"main\"\n\"2854910\";\"Penzing\";\"main\"\n\"2854923\";\"Penzberg\";\"main\"\n\"2854928\";\"Pentling\";\"main\"\n\"2854947\";\"Pennigsehl\";\"main\"\n\"2854957\";\"Penkun\";\"main\"\n\"2854967\";\"Penig\";\"main\"\n\"2854974\";\"Pemfling\";\"main\"\n\"2854992\";\"Pelm\";\"main\"\n\"2854996\";\"Pellworm\";\"main\"\n\"2854996\";\"Paelweerm\";\"other\"\n\"2854996\";\"Pelvorm\";\"other\"\n\"2854996\";\"Pälweerm\";\"other\"\n\"2854999\";\"Pellingen\";\"main\"\n\"2855024\";\"Peitz\";\"main\"\n\"2855025\";\"Peiting\";\"main\"\n\"2855029\";\"Peißenberg\";\"main\"\n\"2855029\";\"Peissenberg\";\"ascii\"\n\"2855031\";\"Peißen\";\"main\"\n\"2855031\";\"Peissen\";\"ascii\"\n\"2855032\";\"Peißen\";\"main\"\n\"2855032\";\"Peissen\";\"ascii\"\n\"2855047\";\"Peine\";\"main\"\n\"2855065\";\"Pegnitz\";\"main\"\n\"2855068\";\"Pegau\";\"main\"\n\"2855145\";\"Pechbrunn\";\"main\"\n\"2855175\";\"Pausa\";\"main\"\n\"2855177\";\"Paunzhausen\";\"main\"\n\"2855215\";\"Paulinenaue\";\"main\"\n\"2855243\";\"Pattensen\";\"main\"\n\"2855272\";\"Patersdorf\";\"main\"\n\"2855293\";\"Pastetten\";\"main\"\n\"2855328\";\"Passau\";\"main\"\n\"2855328\";\"Batavia Bavariae\";\"other\"\n\"2855328\";\"Pasawa\";\"other\"\n\"2855328\";\"Pasov\";\"other\"\n\"2855328\";\"Passaou\";\"other\"\n\"2855328\";\"Passavia\";\"other\"\n\"2855328\";\"passau\";\"other\"\n\"2855328\";\"Πάσσαου\";\"other\"\n\"2855328\";\"Пассау\";\"other\"\n\"2855328\";\"パッサウ\";\"other\"\n\"2855337\";\"Pasewalk\";\"main\"\n\"2855370\";\"Partenstein\";\"main\"\n\"2855373\";\"Partenheim\";\"main\"\n\"2855388\";\"Parsberg\";\"main\"\n\"2855390\";\"Parsau\";\"main\"\n\"2855414\";\"Parkstetten\";\"main\"\n\"2855416\";\"Parkstein\";\"main\"\n\"2855441\";\"Parchim\";\"main\"\n\"2855466\";\"Pappenheim\";\"main\"\n\"2855466\";\"Kleinschmalkalden\";\"other\"\n\"2855467\";\"Pappenheim\";\"main\"\n\"2855518\";\"Papendorf\";\"main\"\n\"2855525\";\"Papenburg\";\"main\"\n\"2855574\";\"Panschwitz-Kuckau\";\"main\"\n\"2855598\";\"Berlin Pankow\";\"main\"\n\"2855598\";\"Pankow\";\"other\"\n\"2855602\";\"Panker\";\"main\"\n\"2855623\";\"Pampow\";\"main\"\n\"2855632\";\"Palzem\";\"main\"\n\"2855665\";\"Palling\";\"main\"\n\"2855683\";\"Painten\";\"main\"\n\"2855704\";\"Pahlen\";\"main\"\n\"2855707\";\"Pähl\";\"main\"\n\"2855707\";\"Pahl\";\"ascii\"\n\"2855745\";\"Paderborn\";\"main\"\n\"2855745\";\"Patterbuorn\";\"other\"\n\"2855745\";\"padaborun\";\"other\"\n\"2855745\";\"Падерборн\";\"other\"\n\"2855745\";\"パーダーボルン\";\"other\"\n\"2855747\";\"Padenstedt\";\"main\"\n\"2855794\";\"Oyten\";\"main\"\n\"2855820\";\"Owschlag\";\"main\"\n\"2855823\";\"Owingen\";\"main\"\n\"2855824\";\"Owen\";\"main\"\n\"2855824\";\"Auen\";\"other\"\n\"2855834\";\"Oeversee\";\"main\"\n\"2855834\";\"Oversee\";\"other\"\n\"2855834\";\"Översee\";\"other\"\n\"2855859\";\"Overath\";\"main\"\n\"2855881\";\"Ovelgönne\";\"main\"\n\"2855881\";\"Ovelgonne\";\"ascii\"\n\"2855901\";\"Ötzingen\";\"main\"\n\"2855901\";\"Otzingen\";\"ascii\"\n\"2855902\";\"Otzing\";\"main\"\n\"2855917\";\"Ottweiler\";\"main\"\n\"2855923\";\"Ottrau\";\"main\"\n\"2855935\";\"Ottobrunn\";\"main\"\n\"2855937\";\"Ottobeuren\";\"main\"\n\"2855982\";\"Otterwisch\";\"main\"\n\"2855984\";\"Ottersweier\";\"main\"\n\"2855992\";\"Otterstadt\";\"main\"\n\"2856000\";\"Ottersheim\";\"main\"\n\"2856014\";\"Ottersberg\";\"main\"\n\"2856024\";\"Otterndorf\";\"main\"\n\"2856038\";\"Otterfing\";\"main\"\n\"2856042\";\"Otterberg\";\"main\"\n\"2856057\";\"Otterbach\";\"main\"\n\"2856061\";\"Otter\";\"main\"\n\"2856070\";\"Ottenstein\";\"main\"\n\"2856073\";\"Ottensoos\";\"main\"\n\"2856085\";\"Ottenhofen\";\"main\"\n\"2856086\";\"Ottenhofen\";\"main\"\n\"2856107\";\"Ottendorf-Okrilla\";\"main\"\n\"2856139\";\"Ottenbach\";\"main\"\n\"2856159\";\"Ötisheim\";\"main\"\n\"2856159\";\"Otisheim\";\"ascii\"\n\"2856162\";\"Ötigheim\";\"main\"\n\"2856162\";\"Otigheim\";\"ascii\"\n\"2856184\";\"Oststeinbek\";\"main\"\n\"2856189\";\"Ostseebad Sellin\";\"main\"\n\"2856189\";\"Zellin\";\"other\"\n\"2856189\";\"Зеллин\";\"other\"\n\"2856191\";\"Ostseebad Prerow\";\"main\"\n\"2856191\";\"Ostseebad Prerow am Darss\";\"other\"\n\"2856191\";\"Ostseebad Prerow am Darß\";\"other\"\n\"2856191\";\"Prerow\";\"other\"\n\"2856193\";\"Ostseebad Kühlungsborn\";\"main\"\n\"2856193\";\"Ostseebad Kuhlungsborn\";\"ascii\"\n\"2856193\";\"Arendsee\";\"other\"\n\"2856193\";\"Kuhlungsborn\";\"other\"\n\"2856193\";\"Kühlungsborn\";\"other\"\n\"2856194\";\"Seeheilbad Graal-Müritz\";\"main\"\n\"2856194\";\"Seeheilbad Graal-Muritz\";\"ascii\"\n\"2856194\";\"Graal-Muritz\";\"other\"\n\"2856194\";\"Graal-Müritz\";\"other\"\n\"2856194\";\"Ostseebad Graal-Muritz\";\"other\"\n\"2856194\";\"Ostseebad Graal-Müritz\";\"other\"\n\"2856195\";\"Ostseebad Göhren\";\"main\"\n\"2856195\";\"Ostseebad Gohren\";\"ascii\"\n\"2856195\";\"Gohren\";\"other\"\n\"2856195\";\"Göhren\";\"other\"\n\"2856196\";\"Ostseebad Dierhagen\";\"main\"\n\"2856196\";\"Dierhagen\";\"other\"\n\"2856197\";\"Ostseebad Boltenhagen\";\"main\"\n\"2856197\";\"Boltenhagen\";\"other\"\n\"2856198\";\"Ostseebad Binz\";\"main\"\n\"2856198\";\"Binc\";\"other\"\n\"2856198\";\"Binz\";\"other\"\n\"2856198\";\"Бинц\";\"other\"\n\"2856205\";\"Ostritz\";\"main\"\n\"2856207\";\"Östringen\";\"main\"\n\"2856207\";\"Ostringen\";\"ascii\"\n\"2856213\";\"Ostrhauderfehn\";\"main\"\n\"2856217\";\"Ostrau\";\"main\"\n\"2856222\";\"Ostrach\";\"main\"\n\"2856278\";\"Osthofen\";\"main\"\n\"2856284\";\"Ostheim vor der Rhön\";\"main\"\n\"2856284\";\"Ostheim vor der Rhon\";\"ascii\"\n\"2856330\";\"Osterwieck\";\"main\"\n\"2856377\";\"Osterspai\";\"main\"\n\"2856390\";\"Osterrönfeld\";\"main\"\n\"2856390\";\"Osterronfeld\";\"ascii\"\n\"2856413\";\"Osternienburg\";\"main\"\n\"2856500\";\"Osterholz-Scharmbeck\";\"main\"\n\"2856500\";\"Stadt Osterholz-Scharmbeck\";\"other\"\n\"2856530\";\"Osterhofen\";\"main\"\n\"2856562\";\"Osterhausen\";\"main\"\n\"2856562\";\"Grossosterhausen\";\"other\"\n\"2856562\";\"Großosterhausen\";\"other\"\n\"2856591\";\"Osterfeld\";\"main\"\n\"2856629\";\"Ostercappeln\";\"main\"\n\"2856637\";\"Osterburken\";\"main\"\n\"2856639\";\"Osterburg\";\"main\"\n\"2856765\";\"Ostenfeld\";\"main\"\n\"2856792\";\"Osten\";\"main\"\n\"2856798\";\"Ostelsheim\";\"main\"\n\"2856801\";\"Osteel\";\"main\"\n\"2856816\";\"Ostbevern\";\"main\"\n\"2856837\";\"Oßmanstedt\";\"main\"\n\"2856837\";\"Ossmanstedt\";\"ascii\"\n\"2856839\";\"Oßling\";\"main\"\n\"2856839\";\"Ossling\";\"ascii\"\n\"2856883\";\"Osnabrück\";\"main\"\n\"2856883\";\"Osnabruck\";\"ascii\"\n\"2856883\";\"Osnabrik\";\"other\"\n\"2856883\";\"Osnabrjuk\";\"other\"\n\"2856883\";\"Osnabrueck\";\"other\"\n\"2856883\";\"Osnabruga\";\"other\"\n\"2856883\";\"Osnabrugensis\";\"other\"\n\"2856883\";\"Ossenbruegge\";\"other\"\n\"2856883\";\"Ossenbrügge\";\"other\"\n\"2856883\";\"ao si na bu lu ke\";\"other\"\n\"2856883\";\"awsnabrwk\";\"other\"\n\"2856883\";\"oseunabeulwikeu\";\"other\"\n\"2856883\";\"osunaburyukku\";\"other\"\n\"2856883\";\"Оснабрик\";\"other\"\n\"2856883\";\"Оснабрюк\";\"other\"\n\"2856883\";\"أوسنابروك\";\"other\"\n\"2856883\";\"ოსნაბრიუკი\";\"other\"\n\"2856883\";\"オスナブリュック\";\"other\"\n\"2856883\";\"奥斯纳布吕克\";\"other\"\n\"2856883\";\"오스나브뤼크\";\"other\"\n\"2856888\";\"Osloß\";\"main\"\n\"2856888\";\"Osloss\";\"ascii\"\n\"2856917\";\"Osdorf\";\"main\"\n\"2856930\";\"Oschersleben\";\"main\"\n\"2856944\";\"Oschatz\";\"main\"\n\"2856950\";\"Osburg\";\"main\"\n\"2856975\";\"Ortrand\";\"main\"\n\"2857011\";\"Ortenburg\";\"main\"\n\"2857012\";\"Ortenberg\";\"main\"\n\"2857012\";\"Ortenburg\";\"other\"\n\"2857013\";\"Ortenberg\";\"main\"\n\"2857037\";\"Orsingen-Nenzingen\";\"main\"\n\"2857044\";\"Orscholz\";\"main\"\n\"2857062\";\"Ornbau\";\"main\"\n\"2857075\";\"Oerlenbach\";\"main\"\n\"2857075\";\"Orlenbach\";\"other\"\n\"2857075\";\"Örlenbach\";\"other\"\n\"2857080\";\"Orlamünde\";\"main\"\n\"2857080\";\"Orlamunde\";\"ascii\"\n\"2857098\";\"Orenhofen\";\"main\"\n\"2857105\";\"Oerel\";\"main\"\n\"2857105\";\"Orel\";\"other\"\n\"2857105\";\"Örel\";\"other\"\n\"2857129\";\"Oranienburg\";\"main\"\n\"2857129\";\"Ораниенбург\";\"other\"\n\"2857129\";\"אורניינבורג\";\"other\"\n\"2857131\";\"Oranienbaum\";\"main\"\n\"2857134\";\"Oppurg\";\"main\"\n\"2857142\";\"Oppin\";\"main\"\n\"2857159\";\"Oppenweiler\";\"main\"\n\"2857167\";\"Oppenheim\";\"main\"\n\"2857172\";\"Oppenau\";\"main\"\n\"2857182\";\"Oppach\";\"main\"\n\"2857185\";\"Opladen\";\"main\"\n\"2857185\";\"Опладен\";\"other\"\n\"2857197\";\"Öpfingen\";\"main\"\n\"2857197\";\"Opfingen\";\"ascii\"\n\"2857205\";\"Opfenbach\";\"main\"\n\"2857289\";\"Olsbrücken\";\"main\"\n\"2857289\";\"Olsbrucken\";\"ascii\"\n\"2857291\";\"Olsberg\";\"main\"\n\"2857306\";\"Olpe\";\"main\"\n\"2857347\";\"Oelixdorf\";\"main\"\n\"2857347\";\"Olixdorf\";\"other\"\n\"2857347\";\"Ölixdorf\";\"other\"\n\"2857363\";\"Olfen\";\"main\"\n\"2857388\";\"Oldisleben\";\"main\"\n\"2857410\";\"Oldenswort\";\"main\"\n\"2857429\";\"Oldendorf\";\"main\"\n\"2857432\";\"Oldendorf\";\"main\"\n\"2857438\";\"Oldendorf\";\"main\"\n\"2857451\";\"Oldenburg in Holstein\";\"main\"\n\"2857458\";\"Oldenburg\";\"main\"\n\"2857458\";\"Aldinborg\";\"other\"\n\"2857458\";\"Ol'denburg\";\"other\"\n\"2857458\";\"Oldenbourg\";\"other\"\n\"2857458\";\"Oldenburgo\";\"other\"\n\"2857458\";\"Ollnborg\";\"other\"\n\"2857458\";\"awldnbwrgh\";\"other\"\n\"2857458\";\"oldenbuleukeu\";\"other\"\n\"2857458\";\"oldenburgi\";\"other\"\n\"2857458\";\"orudenburuku\";\"other\"\n\"2857458\";\"Ольденбург\";\"other\"\n\"2857458\";\"أولدنبورغ\";\"other\"\n\"2857458\";\"ოლდენბურგი\";\"other\"\n\"2857458\";\"オルデンブルク\";\"other\"\n\"2857458\";\"올덴부르크\";\"other\"\n\"2857472\";\"Olching\";\"main\"\n\"2857481\";\"Olbersdorf\";\"main\"\n\"2857484\";\"Olbernhau\";\"main\"\n\"2857565\";\"Öhringen\";\"main\"\n\"2857565\";\"Ohringen\";\"ascii\"\n\"2857603\";\"Ohorn\";\"main\"\n\"2857610\";\"Öhningen\";\"main\"\n\"2857610\";\"Ohningen\";\"ascii\"\n\"2857637\";\"Ohmden\";\"main\"\n\"2857649\";\"Ohlstadt\";\"main\"\n\"2857653\";\"Ohlsbach\";\"main\"\n\"2857752\";\"Oftersheim\";\"main\"\n\"2857753\";\"Ofterschwang\";\"main\"\n\"2857756\";\"Ofterdingen\";\"main\"\n\"2857765\";\"Offstein\";\"main\"\n\"2857770\";\"Offingen\";\"main\"\n\"2857791\";\"Offenhausen\";\"main\"\n\"2857798\";\"Offenburg\";\"main\"\n\"2857798\";\"Offenbourg\";\"other\"\n\"2857798\";\"Оффенбург\";\"other\"\n\"2857800\";\"Offenberg\";\"main\"\n\"2857803\";\"Offenbach an der Queich\";\"main\"\n\"2857803\";\"Offenbach\";\"other\"\n\"2857807\";\"Offenbach\";\"main\"\n\"2857810\";\"Offenau\";\"main\"\n\"2857847\";\"Oettingen in Bayern\";\"main\"\n\"2857847\";\"Oettingen\";\"other\"\n\"2857900\";\"Oerlinghausen\";\"main\"\n\"2857904\";\"Oer-Erkenschwick\";\"main\"\n\"2857918\";\"Oelsnitz\";\"main\"\n\"2857919\";\"Oelsnitz\";\"main\"\n\"2857943\";\"Oelde\";\"main\"\n\"2857943\";\"Ol'de\";\"other\"\n\"2857943\";\"Stadt Oelde\";\"other\"\n\"2857943\";\"Ольде\";\"other\"\n\"2857967\";\"Oedheim\";\"main\"\n\"2857970\";\"Oederan\";\"main\"\n\"2857985\";\"Oebisfelde\";\"main\"\n\"2858071\";\"Oederquart\";\"main\"\n\"2858071\";\"Oderquart\";\"other\"\n\"2858071\";\"Öderquart\";\"other\"\n\"2858073\";\"Odernheim\";\"main\"\n\"2858092\";\"Oderberg\";\"main\"\n\"2858103\";\"Odenthal\";\"main\"\n\"2858149\";\"Odelzhausen\";\"main\"\n\"2858239\";\"Ockenheim\";\"main\"\n\"2858241\";\"Ockenfels\";\"main\"\n\"2858245\";\"Ochtrup\";\"main\"\n\"2858253\";\"Ochtendung\";\"main\"\n\"2858326\";\"Ochsenhausen\";\"main\"\n\"2858333\";\"Ochsenfurt\";\"main\"\n\"2858416\";\"Obrigheim\";\"main\"\n\"2858417\";\"Obrigheim\";\"main\"\n\"2858424\";\"Obing\";\"main\"\n\"2858426\";\"Obhausen\";\"main\"\n\"2858437\";\"Oberzissen\";\"main\"\n\"2858484\";\"Oberwolfach\";\"main\"\n\"2858548\";\"Oberwiera\";\"main\"\n\"2858562\";\"Oberwesel\";\"main\"\n\"2858586\";\"Oberweißbach\";\"main\"\n\"2858586\";\"Oberweissbach\";\"ascii\"\n\"2858729\";\"Oberviechtach\";\"main\"\n\"2858729\";\"Viechtach\";\"other\"\n\"2858738\";\"Oberursel\";\"main\"\n\"2858763\";\"Obertshausen\";\"main\"\n\"2858765\";\"Obertrubach\";\"main\"\n\"2858773\";\"Obertraubling\";\"main\"\n\"2858787\";\"Oberthulba\";\"main\"\n\"2858807\";\"Oberthal\";\"main\"\n\"2858811\";\"Oberteuringen\";\"main\"\n\"2858827\";\"Obertaufkirchen\";\"main\"\n\"2858852\";\"Obersüßbach\";\"main\"\n\"2858852\";\"Obersussbach\";\"ascii\"\n\"2858874\";\"Oberstreu\";\"main\"\n\"2858906\";\"Oberstenfeld\";\"main\"\n\"2858964\";\"Oberstdorf\";\"main\"\n\"2858966\";\"Oberstaufen\";\"main\"\n\"2858976\";\"Oberstadion\";\"main\"\n\"2858999\";\"Obersontheim\";\"main\"\n\"2859007\";\"Obersöchering\";\"main\"\n\"2859007\";\"Obersochering\";\"ascii\"\n\"2859010\";\"Obersinn\";\"main\"\n\"2859068\";\"Oberschweinbach\";\"main\"\n\"2859077\";\"Oberschwarzach\";\"main\"\n\"2859119\";\"Oberschöna\";\"main\"\n\"2859119\";\"Oberschona\";\"ascii\"\n\"2859129\";\"Oberschneiding\";\"main\"\n\"2859147\";\"Oberschleißheim\";\"main\"\n\"2859147\";\"Oberschleissheim\";\"ascii\"\n\"2859173\";\"Oberscheinfeld\";\"main\"\n\"2859199\";\"Ober-Saulheim\";\"main\"\n\"2859234\";\"Oberrot\";\"main\"\n\"2859277\";\"Oberröblingen\";\"main\"\n\"2859277\";\"Oberroblingen\";\"ascii\"\n\"2859285\";\"Oberriexingen\";\"main\"\n\"2859296\";\"Oberrieden\";\"main\"\n\"2859302\";\"Oberried\";\"main\"\n\"2859325\";\"Oberreute\";\"main\"\n\"2859357\";\"Oberreichenbach\";\"main\"\n\"2859360\";\"Oberreichenbach\";\"main\"\n\"2859380\";\"Ober-Ramstadt\";\"main\"\n\"2859412\";\"Oberpöring\";\"main\"\n\"2859412\";\"Oberporing\";\"ascii\"\n\"2859423\";\"Oberpleichfeld\";\"main\"\n\"2859439\";\"Oberpframmern\";\"main\"\n\"2859458\";\"Oberottmarshausen\";\"main\"\n\"2859460\";\"Oberotterbach\";\"main\"\n\"2859465\";\"Oberostendorf\";\"main\"\n\"2859481\";\"Ober-Olm\";\"main\"\n\"2859511\";\"Obernzenn\";\"main\"\n\"2859512\";\"Obernzell\";\"main\"\n\"2859532\";\"Obernkirchen\";\"main\"\n\"2859545\";\"Obernheim-Kirchenarnbach\";\"main\"\n\"2859547\";\"Obernheim\";\"main\"\n\"2859562\";\"Obernfeld\";\"main\"\n\"2859600\";\"Oberndorf\";\"main\"\n\"2859641\";\"Oberndorf\";\"main\"\n\"2859654\";\"Oberndorf\";\"main\"\n\"2859675\";\"Obernburg am Main\";\"main\"\n\"2859675\";\"Obernburg\";\"other\"\n\"2859678\";\"Obernbreit\";\"main\"\n\"2859733\";\"Obermoschel\";\"main\"\n\"2859739\";\"Ober-Mörlen\";\"main\"\n\"2859739\";\"Ober-Morlen\";\"ascii\"\n\"2859772\";\"Obermichelbach\";\"main\"\n\"2859792\";\"Obermeitingen\";\"main\"\n\"2859800\";\"Obermehler\";\"main\"\n\"2859815\";\"Obermaßfeld-Grimmenthal\";\"main\"\n\"2859815\";\"Obermassfeld-Grimmenthal\";\"ascii\"\n\"2859815\";\"Grimmenthal\";\"other\"\n\"2859826\";\"Obermarchtal\";\"main\"\n\"2859843\";\"Oberlungwitz\";\"main\"\n\"2859903\";\"Oberlichtenau\";\"main\"\n\"2859938\";\"Oberleichtersbach\";\"main\"\n\"2859970\";\"Langfurth\";\"main\"\n\"2859970\";\"Oberlangfurth\";\"other\"\n\"2860021\";\"Oberkotzau\";\"main\"\n\"2860049\";\"Oberkochen\";\"main\"\n\"2860080\";\"Oberkirch\";\"main\"\n\"2860134\";\"Oberjettingen\";\"main\"\n\"2860282\";\"Oberhof\";\"main\"\n\"2860400\";\"Oberhausen-Rheinhausen\";\"main\"\n\"2860410\";\"Oberhausen\";\"main\"\n\"2860410\";\"Oberkhauzen\";\"other\"\n\"2860410\";\"Omperchaouzen\";\"other\"\n\"2860410\";\"Overhus\";\"other\"\n\"2860410\";\"awbrhawzn\";\"other\"\n\"2860410\";\"obahauzen\";\"other\"\n\"2860410\";\"Ομπερχάουζεν\";\"other\"\n\"2860410\";\"Оберхаузен\";\"other\"\n\"2860410\";\"اوبرهاوزن\";\"other\"\n\"2860410\";\"オーバーハウゼン\";\"other\"\n\"2860422\";\"Oberhausen\";\"main\"\n\"2860430\";\"Oberhausen\";\"main\"\n\"2860477\";\"Oberharmersbach\";\"main\"\n\"2860510\";\"Oberhaid\";\"main\"\n\"2860525\";\"Oberhaching\";\"main\"\n\"2860537\";\"Obergurig\";\"main\"\n\"2860540\";\"Obergünzburg\";\"main\"\n\"2860540\";\"Obergunzburg\";\"ascii\"\n\"2860574\";\"Obergriesbach\";\"main\"\n\"2860694\";\"Ober-Flörsheim\";\"main\"\n\"2860694\";\"Ober-Florsheim\";\"ascii\"\n\"2860716\";\"Oberfell\";\"main\"\n\"2860932\";\"Oberelsbach\";\"main\"\n\"2860948\";\"Oberelbert\";\"main\"\n\"2861059\";\"Oberdorla\";\"main\"\n\"2861094\";\"Oberdischingen\";\"main\"\n\"2861096\";\"Oberding\";\"main\"\n\"2861116\";\"Oberderdingen\";\"main\"\n\"2861131\";\"Oberdachstetten\";\"main\"\n\"2861136\";\"Obercunnersdorf\";\"main\"\n\"2861232\";\"Oberboihingen\";\"main\"\n\"2861285\";\"Oberbergkirchen\";\"main\"\n\"2861358\";\"Oberaula\";\"main\"\n\"2861374\";\"Oberaudorf\";\"main\"\n\"2861402\";\"Oberasbach\";\"main\"\n\"2861422\";\"Oberammergau\";\"main\"\n\"2861537\";\"Nützen\";\"main\"\n\"2861537\";\"Nutzen\";\"ascii\"\n\"2861579\";\"Nußloch\";\"main\"\n\"2861579\";\"Nussloch\";\"ascii\"\n\"2861598\";\"Nusse\";\"main\"\n\"2861599\";\"Nußdorf am Inn\";\"main\"\n\"2861599\";\"Nussdorf am Inn\";\"ascii\"\n\"2861603\";\"Nußdorf\";\"main\"\n\"2861603\";\"Nussdorf\";\"ascii\"\n\"2861632\";\"Nürtingen\";\"main\"\n\"2861632\";\"Nurtingen\";\"ascii\"\n\"2861650\";\"Nuremberg\";\"main\"\n\"2861650\";\"Namberch\";\"other\"\n\"2861650\";\"Neurenberg\";\"other\"\n\"2861650\";\"Nirnberg\";\"other\"\n\"2861650\";\"Nirnberga\";\"other\"\n\"2861650\";\"Niurnbergas\";\"other\"\n\"2861650\";\"Njurnberg\";\"other\"\n\"2861650\";\"Norimberg\";\"other\"\n\"2861650\";\"Norimberga\";\"other\"\n\"2861650\";\"Norimberk\";\"other\"\n\"2861650\";\"Norymberga\";\"other\"\n\"2861650\";\"Nuernberg\";\"other\"\n\"2861650\";\"Nuremberg - Nuernberg\";\"other\"\n\"2861650\";\"Nuremberg - Nürnberg\";\"other\"\n\"2861650\";\"Nuremberga\";\"other\"\n\"2861650\";\"Nurembergo\";\"other\"\n\"2861650\";\"Nuremburg\";\"other\"\n\"2861650\";\"Nurenberg\";\"other\"\n\"2861650\";\"Nurenbergo\";\"other\"\n\"2861650\";\"Nurenburg\";\"other\"\n\"2861650\";\"Nurnberg\";\"other\"\n\"2861650\";\"Nyremberge\";\"other\"\n\"2861650\";\"Nyremvergi\";\"other\"\n\"2861650\";\"Nürnberg\";\"other\"\n\"2861650\";\"niu lun bao\";\"other\"\n\"2861650\";\"niurnbergi\";\"other\"\n\"2861650\";\"nurem beirk\";\"other\"\n\"2861650\";\"nwileunbeleukeu\";\"other\"\n\"2861650\";\"nyrnbrg\";\"other\"\n\"2861650\";\"nyurunberuku\";\"other\"\n\"2861650\";\"Νυρεμβέργη\";\"other\"\n\"2861650\";\"Νυρεμβεργη\";\"other\"\n\"2861650\";\"Нирнберг\";\"other\"\n\"2861650\";\"Нюрнберг\";\"other\"\n\"2861650\";\"נירנברג\";\"other\"\n\"2861650\";\"นูเรมเบิร์ก\";\"other\"\n\"2861650\";\"เนิร์นแบร์ก\";\"other\"\n\"2861650\";\"ნიურნბერგი\";\"other\"\n\"2861650\";\"ニュルンベルク\";\"other\"\n\"2861650\";\"纽伦堡\";\"other\"\n\"2861650\";\"뉘른베르크\";\"other\"\n\"2861671\";\"Nünchritz\";\"main\"\n\"2861671\";\"Nunchritz\";\"ascii\"\n\"2861677\";\"Nümbrecht\";\"main\"\n\"2861677\";\"Numbrecht\";\"ascii\"\n\"2861690\";\"Nufringen\";\"main\"\n\"2861695\";\"Nüdlingen\";\"main\"\n\"2861695\";\"Nudlingen\";\"ascii\"\n\"2861698\";\"Nudersdorf\";\"main\"\n\"2861714\";\"Nübbel\";\"main\"\n\"2861714\";\"Nubbel\";\"ascii\"\n\"2861721\";\"Notzingen\";\"main\"\n\"2861733\";\"Nottuln\";\"main\"\n\"2861743\";\"Nottensdorf\";\"main\"\n\"2861774\";\"Nostorf\";\"main\"\n\"2861788\";\"Nossen\";\"main\"\n\"2861801\";\"Nörvenich\";\"main\"\n\"2861801\";\"Norvenich\";\"ascii\"\n\"2861802\";\"Nortrup\";\"main\"\n\"2861804\";\"Nortorf\";\"main\"\n\"2861807\";\"Nortmoor\";\"main\"\n\"2861814\";\"Northeim\";\"main\"\n\"2861815\";\"Nörtershausen\";\"main\"\n\"2861815\";\"Nortershausen\";\"ascii\"\n\"2861817\";\"Nörten-Hardenberg\";\"main\"\n\"2861817\";\"Norten-Hardenberg\";\"ascii\"\n\"2861830\";\"Norheim\";\"main\"\n\"2861847\";\"Nordwalde\";\"main\"\n\"2861866\";\"Nordstemmen\";\"main\"\n\"2861881\";\"Nordrach\";\"main\"\n\"2861914\";\"Nördlingen\";\"main\"\n\"2861914\";\"Noerdlingen\";\"ascii\"\n\"2861919\";\"Nordleda\";\"main\"\n\"2861923\";\"Nordkirchen\";\"main\"\n\"2861934\";\"Nordhorn\";\"main\"\n\"2861939\";\"Nordholz\";\"main\"\n\"2861971\";\"Nordheim\";\"main\"\n\"2861973\";\"Nordheim\";\"main\"\n\"2861982\";\"Nordhausen\";\"main\"\n\"2861982\";\"Nordkhauzen\";\"other\"\n\"2861982\";\"Нордхаузен\";\"other\"\n\"2861988\";\"Nordhastedt\";\"main\"\n\"2861990\";\"Nordhalben\";\"main\"\n\"2862026\";\"Norderstedt\";\"main\"\n\"2862026\";\"Nordershtedt\";\"other\"\n\"2862026\";\"Norderstedt Stadt\";\"other\"\n\"2862026\";\"Нордерштедт\";\"other\"\n\"2862041\";\"Norderney\";\"main\"\n\"2862104\";\"Nordenham\";\"main\"\n\"2862104\";\"Nordenkhame\";\"other\"\n\"2862104\";\"Stadt Nordenham\";\"other\"\n\"2862104\";\"Норденхаме\";\"other\"\n\"2862106\";\"Nordendorf\";\"main\"\n\"2862118\";\"Norden\";\"main\"\n\"2862136\";\"Norddeich\";\"main\"\n\"2862174\";\"Nonnweiler\";\"main\"\n\"2862202\";\"Nonnenhorn\";\"main\"\n\"2862289\";\"Nohra\";\"main\"\n\"2862294\";\"Nohfelden\";\"main\"\n\"2862322\";\"Nobitz\";\"main\"\n\"2862326\";\"Nöbdenitz\";\"main\"\n\"2862326\";\"Nobdenitz\";\"ascii\"\n\"2862347\";\"Nittendorf\";\"main\"\n\"2862348\";\"Nittenau\";\"main\"\n\"2862351\";\"Nittel\";\"main\"\n\"2862357\";\"Nister\";\"main\"\n\"2862389\";\"Nindorf\";\"main\"\n\"2862460\";\"Niesky\";\"main\"\n\"2862485\";\"Nierstein\";\"main\"\n\"2862525\";\"Niepars\";\"main\"\n\"2862541\";\"Nienstädt\";\"main\"\n\"2862541\";\"Nienstadt\";\"ascii\"\n\"2862571\";\"Nienhagen\";\"main\"\n\"2862620\";\"Nienburg\";\"main\"\n\"2862621\";\"Nienburg\";\"main\"\n\"2862640\";\"Niemegk\";\"main\"\n\"2862643\";\"Niemberg\";\"main\"\n\"2862675\";\"Nieheim\";\"main\"\n\"2862696\";\"Niederzissen\";\"main\"\n\"2862697\";\"Niederzimmern\";\"main\"\n\"2862698\";\"Niederzier\";\"main\"\n\"2862713\";\"Niederwinkling\";\"main\"\n\"2862724\";\"Niederwiesa\";\"main\"\n\"2862731\";\"Niederwerth\";\"main\"\n\"2862733\";\"Niederwerrn\";\"main\"\n\"2862785\";\"Niederviehbach\";\"main\"\n\"2862809\";\"Niedertaufkirchen\";\"main\"\n\"2862818\";\"Niederstriegis\";\"main\"\n\"2862825\";\"Niederstotzingen\";\"main\"\n\"2862831\";\"Niederstetten\";\"main\"\n\"2862891\";\"Niederschönenfeld\";\"main\"\n\"2862891\";\"Niederschonenfeld\";\"ascii\"\n\"2862893\";\"Niederschöna\";\"main\"\n\"2862893\";\"Niederschona\";\"ascii\"\n\"2862925\";\"Niedersachswerfen\";\"main\"\n\"2862933\";\"Niederroßla\";\"main\"\n\"2862933\";\"Niederrossla\";\"ascii\"\n\"2862953\";\"Niederrieden\";\"main\"\n\"2863012\";\"Niederorschel\";\"main\"\n\"2863014\";\"Nieder-Olm\";\"main\"\n\"2863031\";\"Niedernwöhren\";\"main\"\n\"2863031\";\"Niedernwohren\";\"ascii\"\n\"2863046\";\"Niedernhausen\";\"main\"\n\"2863049\";\"Niedernhall\";\"main\"\n\"2863065\";\"Niederneisen\";\"main\"\n\"2863083\";\"Niederndodeleben\";\"main\"\n\"2863088\";\"Niedernberg\";\"main\"\n\"2863095\";\"Niedermurach\";\"main\"\n\"2863111\";\"Niedermohr\";\"main\"\n\"2863178\";\"Niederlauer\";\"main\"\n\"2863185\";\"Niederlangen\";\"main\"\n\"2863199\";\"Niederkrüchten\";\"main\"\n\"2863199\";\"Niederkruchten\";\"ascii\"\n\"2863199\";\"Niederkirchen\";\"other\"\n\"2863213\";\"Niederkirchen bei Deidesheim\";\"main\"\n\"2863213\";\"Niederkirchen\";\"other\"\n\"2863214\";\"Niederkirchen\";\"main\"\n\"2863223\";\"Niederkassel\";\"main\"\n\"2863223\";\"Niderkassel'\";\"other\"\n\"2863223\";\"bonn-niederholtdorf\";\"other\"\n\"2863223\";\"Нидеркассель\";\"other\"\n\"2863240\";\"Nieder-Ingelheim\";\"main\"\n\"2863240\";\"Ingelheim-Mitte\";\"other\"\n\"2863401\";\"Niedergörsdorf\";\"main\"\n\"2863401\";\"Niedergorsdorf\";\"ascii\"\n\"2863428\";\"Niederfüllbach\";\"main\"\n\"2863428\";\"Niederfullbach\";\"ascii\"\n\"2863429\";\"Niederfrohna\";\"main\"\n\"2863441\";\"Niederfischbach\";\"main\"\n\"2863444\";\"Niederfell\";\"main\"\n\"2863457\";\"Niedereschach\";\"main\"\n\"2863470\";\"Niedererbach\";\"main\"\n\"2863487\";\"Niederelbert\";\"main\"\n\"2863505\";\"Niederdürenbach\";\"main\"\n\"2863505\";\"Niederdurenbach\";\"ascii\"\n\"2863508\";\"Niederdreisbach\";\"main\"\n\"2863516\";\"Niederdorla\";\"main\"\n\"2863517\";\"Niederdorfelden\";\"main\"\n\"2863523\";\"Niederdorf\";\"main\"\n\"2863545\";\"Niedercunnersdorf\";\"main\"\n\"2863545\";\"Cunnersdorf\";\"other\"\n\"2863545\";\"Neider Cunnersdorf\";\"other\"\n\"2863574\";\"Niederbreitbach\";\"main\"\n\"2863604\";\"Niederbergkirchen\";\"main\"\n\"2863638\";\"Niederaula\";\"main\"\n\"2863643\";\"Niederau\";\"main\"\n\"2863652\";\"Aschau im Chiemgau\";\"main\"\n\"2863652\";\"Aschau\";\"other\"\n\"2863652\";\"Niederaschau\";\"other\"\n\"2863652\";\"Niederaschau im Chiemgau\";\"other\"\n\"2863667\";\"Niederalteich\";\"main\"\n\"2863674\";\"Niederaichbach\";\"main\"\n\"2863685\";\"Niedenstein\";\"main\"\n\"2863685\";\"Niederstein\";\"other\"\n\"2863696\";\"Niebüll\";\"main\"\n\"2863696\";\"Niebull\";\"ascii\"\n\"2863696\";\"Naibel\";\"other\"\n\"2863711\";\"Nideggen\";\"main\"\n\"2863712\";\"Nidderau\";\"main\"\n\"2863716\";\"Nidda\";\"main\"\n\"2863732\";\"Nickenich\";\"main\"\n\"2863756\";\"Newel\";\"main\"\n\"2863765\";\"Neverin\";\"main\"\n\"2863782\";\"Neuzelle\";\"main\"\n\"2863786\";\"Neu Zauche\";\"main\"\n\"2863795\";\"Neu Wulmstorf\";\"main\"\n\"2863810\";\"Neuwittenbek\";\"main\"\n\"2863840\";\"Neuwied\";\"main\"\n\"2863840\";\"Neuweid\";\"other\"\n\"2863840\";\"Nojvid\";\"other\"\n\"2863840\";\"Нойвид\";\"other\"\n\"2863876\";\"Neuweiler\";\"main\"\n\"2863941\";\"Neu-Ulm\";\"main\"\n\"2863941\";\"Noj-Ul'm\";\"other\"\n\"2863941\";\"Nuevo Ulm\";\"other\"\n\"2863941\";\"Subdistrikto Neu-Ulm\";\"other\"\n\"2863941\";\"xin wu er mu\";\"other\"\n\"2863941\";\"Ной-Ульм\";\"other\"\n\"2863941\";\"新乌尔姆\";\"other\"\n\"2863950\";\"Neutrebbin\";\"main\"\n\"2863953\";\"Neutraubling\";\"main\"\n\"2864005\";\"Neustrelitz\";\"main\"\n\"2864005\";\"Nieg Strelitz\";\"other\"\n\"2864005\";\"Nojshtrelice\";\"other\"\n\"2864005\";\"Stadt Neustrelitz\";\"other\"\n\"2864005\";\"Нойштрелице\";\"other\"\n\"2864034\";\"Neustadt in Holstein\";\"main\"\n\"2864036\";\"Neustadt-Glewe\";\"main\"\n\"2864036\";\"Neustadt in Mecklenburg\";\"other\"\n\"2864053\";\"Neustadt bei Coburg\";\"main\"\n\"2864053\";\"Neustadt\";\"other\"\n\"2864054\";\"Neustadt an der Weinstraße\";\"main\"\n\"2864054\";\"Neustadt an der Weinstrasse\";\"ascii\"\n\"2864054\";\"Neustadt\";\"other\"\n\"2864054\";\"Neustadt an der Haardt\";\"other\"\n\"2864054\";\"Nojshtadt-an-der-Vajnshtrasse\";\"other\"\n\"2864054\";\"Нойштадт-ан-дер-Вайнштрассе\";\"other\"\n\"2864055\";\"Neustadt an der Waldnaab\";\"main\"\n\"2864055\";\"Neustadel\";\"other\"\n\"2864055\";\"Neustadt\";\"other\"\n\"2864055\";\"Nojshtadt-na-Val'dnabe\";\"other\"\n\"2864055\";\"Нойштадт-на-Вальднабе\";\"other\"\n\"2864056\";\"Neustadt an der Donau\";\"main\"\n\"2864056\";\"Neustadt\";\"other\"\n\"2864057\";\"Neustadt an der Aisch\";\"main\"\n\"2864057\";\"Neustadt\";\"other\"\n\"2864058\";\"Neustadt am Rübenberge\";\"main\"\n\"2864058\";\"Neustadt am Rubenberge\";\"ascii\"\n\"2864058\";\"Neustadt\";\"other\"\n\"2864058\";\"Nojshtadt-am-Rjubenberge\";\"other\"\n\"2864058\";\"Нойштадт-ам-Рюбенберге\";\"other\"\n\"2864059\";\"Neustadt am Rennsteig\";\"main\"\n\"2864059\";\"Neustadt\";\"other\"\n\"2864060\";\"Neustadt am Main\";\"main\"\n\"2864060\";\"Neustadt\";\"other\"\n\"2864072\";\"Neue Neustadt\";\"main\"\n\"2864072\";\"Magdeburg-Neustadt\";\"other\"\n\"2864072\";\"Nojshtadt\";\"other\"\n\"2864072\";\"Нойштадт\";\"other\"\n\"2864089\";\"Neustadt in Sachsen\";\"main\"\n\"2864089\";\"Nojshtadt\";\"other\"\n\"2864089\";\"Нойштадт\";\"other\"\n\"2864091\";\"Neustadt (Hessen)\";\"main\"\n\"2864091\";\"Neustadt in Hessen\";\"other\"\n\"2864091\";\"Nojshtadt\";\"other\"\n\"2864091\";\"Нойштадт\";\"other\"\n\"2864098\";\"Neustadt Vogtland\";\"main\"\n\"2864098\";\"Neustadt Vogtl.\";\"other\"\n\"2864118\";\"Neuß\";\"main\"\n\"2864118\";\"Neuss\";\"ascii\"\n\"2864118\";\"Nojs\";\"other\"\n\"2864118\";\"Novaesium\";\"other\"\n\"2864118\";\"Nuess\";\"other\"\n\"2864118\";\"Nueuess\";\"other\"\n\"2864118\";\"Nüss\";\"other\"\n\"2864118\";\"Nüüß\";\"other\"\n\"2864118\";\"Нойс\";\"other\"\n\"2864131\";\"Neusorg\";\"main\"\n\"2864141\";\"Neusitz\";\"main\"\n\"2864216\";\"Neuschönau\";\"main\"\n\"2864216\";\"Neuschonau\";\"ascii\"\n\"2864265\";\"Neusalza-Spremberg\";\"main\"\n\"2864265\";\"Neusalza\";\"other\"\n\"2864276\";\"Neuruppin\";\"main\"\n\"2864276\";\"Neuruppino\";\"other\"\n\"2864276\";\"Nojrupin\";\"other\"\n\"2864276\";\"nuo yi lu ping\";\"other\"\n\"2864276\";\"Нойрупин\";\"other\"\n\"2864276\";\"诺伊鲁平\";\"other\"\n\"2864303\";\"Neuried\";\"main\"\n\"2864324\";\"Neureichenau\";\"main\"\n\"2864356\";\"Neupotz\";\"main\"\n\"2864387\";\"Neuötting\";\"main\"\n\"2864387\";\"Neuotting\";\"ascii\"\n\"2864387\";\"Neu Oetting\";\"other\"\n\"2864420\";\"Neunkirchen am Sand\";\"main\"\n\"2864420\";\"Neunkirchen\";\"other\"\n\"2864422\";\"Neunkirchen am Main\";\"main\"\n\"2864422\";\"Neunkirchen\";\"other\"\n\"2864425\";\"Neunkirchen\";\"main\"\n\"2864434\";\"Neunkirchen\";\"main\"\n\"2864435\";\"Neunkirchen\";\"main\"\n\"2864437\";\"Neunkhausen\";\"main\"\n\"2864455\";\"Neundorf\";\"main\"\n\"2864468\";\"Neunburg vorm Wald\";\"main\"\n\"2864468\";\"Neuburg\";\"other\"\n\"2864475\";\"Neumünster\";\"main\"\n\"2864475\";\"Neumunster\";\"ascii\"\n\"2864475\";\"Neumuenster\";\"other\"\n\"2864475\";\"Niemuenster\";\"other\"\n\"2864475\";\"Niemünster\";\"other\"\n\"2864475\";\"Novum Monasterium\";\"other\"\n\"2864475\";\"noimyunsuta\";\"other\"\n\"2864475\";\"ノイミュンスター\";\"other\"\n\"2864502\";\"Neumühle\";\"main\"\n\"2864502\";\"Neumuehle\";\"ascii\"\n\"2864547\";\"Neumarkt-Sankt Veit\";\"main\"\n\"2864547\";\"Neumarkt\";\"other\"\n\"2864547\";\"Neumarkt Sankt Beit\";\"other\"\n\"2864547\";\"Neumarkt an der Rott\";\"other\"\n\"2864547\";\"Neumarkt-Sankt Viet\";\"other\"\n\"2864549\";\"Neumarkt in der Oberpfalz\";\"main\"\n\"2864549\";\"Neumarkt\";\"other\"\n\"2864549\";\"Nojmarkt\";\"other\"\n\"2864549\";\"Stadt Neumarkt in der Oberpfalz\";\"other\"\n\"2864549\";\"Ноймаркт\";\"other\"\n\"2864558\";\"Neumark\";\"main\"\n\"2864577\";\"Neulußheim\";\"main\"\n\"2864577\";\"Neulussheim\";\"ascii\"\n\"2864613\";\"Neulewin\";\"main\"\n\"2864616\";\"Neuler\";\"main\"\n\"2864705\";\"Neukloster\";\"main\"\n\"2864730\";\"Neukirchen-Balbini\";\"main\"\n\"2864730\";\"Neukirchen\";\"other\"\n\"2864735\";\"Neukirchen\";\"main\"\n\"2864738\";\"Neukirchen\";\"main\"\n\"2864748\";\"Neukirchen\";\"main\"\n\"2864749\";\"Neukirchen\";\"main\"\n\"2864750\";\"Neukirchen\";\"main\"\n\"2864759\";\"Neukirchen\";\"main\"\n\"2864761\";\"Neukirchen\";\"main\"\n\"2864761\";\"Neukirchen-Haggn\";\"other\"\n\"2864770\";\"Neukirch\";\"main\"\n\"2864771\";\"Neukirch/Lausitz\";\"main\"\n\"2864774\";\"Neukirch\";\"main\"\n\"2864778\";\"Neukieritzsch\";\"main\"\n\"2864804\";\"Neu Kaliß\";\"main\"\n\"2864804\";\"Neu Kaliss\";\"ascii\"\n\"2864806\";\"Neukalen\";\"main\"\n\"2864820\";\"Neu Isenburg\";\"main\"\n\"2864820\";\"Neulsenburg\";\"other\"\n\"2864820\";\"Noj-Izenburg\";\"other\"\n\"2864820\";\"Ной-Изенбург\";\"other\"\n\"2864826\";\"Neuhütten\";\"main\"\n\"2864826\";\"Neuhutten\";\"ascii\"\n\"2864869\";\"Neuhofen\";\"main\"\n\"2864882\";\"Neuhof an der Zenn\";\"main\"\n\"2864882\";\"Neuhof\";\"other\"\n\"2864936\";\"Neuhof\";\"main\"\n\"2865053\";\"Neuhaus-Schierschnitz\";\"main\"\n\"2865086\";\"Neuhausen auf den Fildern\";\"main\"\n\"2865086\";\"Neuhausen\";\"other\"\n\"2865098\";\"Neuhausen\";\"main\"\n\"2865104\";\"Neuhausen\";\"main\"\n\"2865114\";\"Neuhausen\";\"main\"\n\"2865123\";\"Neuhäusel\";\"main\"\n\"2865123\";\"Neuhausel\";\"ascii\"\n\"2865129\";\"Neuhaus an der Pegnitz\";\"main\"\n\"2865129\";\"Neuhaus\";\"other\"\n\"2865130\";\"Neuhaus an der Oste\";\"main\"\n\"2865130\";\"Neuhaus\";\"other\"\n\"2865155\";\"Neuhaus\";\"main\"\n\"2865219\";\"Neuharlingersiel\";\"main\"\n\"2865223\";\"Neuhardenberg\";\"main\"\n\"2865223\";\"Marxwalde\";\"other\"\n\"2865293\";\"Neugersdorf\";\"main\"\n\"2865325\";\"Neufraunhofen\";\"main\"\n\"2865332\";\"Neufra\";\"main\"\n\"2865341\";\"Neuffen\";\"main\"\n\"2865376\";\"Neufahrn bei Freising\";\"main\"\n\"2865376\";\"Neufahrn\";\"other\"\n\"2865378\";\"Neufahrn\";\"main\"\n\"2865508\";\"Neuerburg\";\"main\"\n\"2865553\";\"Neuental\";\"main\"\n\"2865557\";\"Neuenstein\";\"main\"\n\"2865560\";\"Neuenstadt am Kocher\";\"main\"\n\"2865560\";\"Burg Neuenstadt\";\"other\"\n\"2865560\";\"Neuenstadt\";\"other\"\n\"2865575\";\"Neuensalz\";\"main\"\n\"2865592\";\"Neuenrade\";\"main\"\n\"2865603\";\"Neuenmarkt\";\"main\"\n\"2865633\";\"Neuenkirchen\";\"main\"\n\"2865636\";\"Neuenkirchen\";\"main\"\n\"2865637\";\"Neuenkirchen\";\"main\"\n\"2865638\";\"Neuenkirchen\";\"main\"\n\"2865641\";\"Neuenkirchen\";\"main\"\n\"2865642\";\"Neuenkirchen\";\"main\"\n\"2865716\";\"Neuenhagen\";\"main\"\n\"2865798\";\"Neuendettelsau\";\"main\"\n\"2865812\";\"Neuenbürg\";\"main\"\n\"2865812\";\"Neuenburg\";\"ascii\"\n\"2865813\";\"Neuenburg am Rhein\";\"main\"\n\"2865813\";\"Neueburg\";\"other\"\n\"2865813\";\"Neuenburg\";\"other\"\n\"2865906\";\"Neudrossenfeld\";\"main\"\n\"2865906\";\"Neu Dressenfeld\";\"other\"\n\"2865945\";\"Neudorf-Bornstein\";\"main\"\n\"2866009\";\"Neudietendorf\";\"main\"\n\"2866022\";\"Neudenau\";\"main\"\n\"2866046\";\"Neu Darchau\";\"main\"\n\"2866070\";\"Neuburg an der Donau\";\"main\"\n\"2866070\";\"Neuburg\";\"other\"\n\"2866070\";\"Neuburg-Donau\";\"other\"\n\"2866070\";\"Nojburg-an-der-Donau\";\"other\"\n\"2866070\";\"Нойбург-ан-дер-Донау\";\"other\"\n\"2866072\";\"Neuburg\";\"main\"\n\"2866074\";\"Neuburg\";\"main\"\n\"2866074\";\"Neuburg am Rhein\";\"other\"\n\"2866077\";\"Neuburg\";\"main\"\n\"2866086\";\"Neubulach\";\"main\"\n\"2866087\";\"Neubukow\";\"main\"\n\"2866102\";\"Neubrunn\";\"main\"\n\"2866135\";\"Neubrandenburg\";\"main\"\n\"2866135\";\"Neubrandenbourg\";\"other\"\n\"2866135\";\"Nojbrandenburge\";\"other\"\n\"2866135\";\"Нойбранденбурге\";\"other\"\n\"2866150\";\"Neubörger\";\"main\"\n\"2866150\";\"Neuborger\";\"ascii\"\n\"2866174\";\"Neubiberg\";\"main\"\n\"2866175\";\"Neubeuern\";\"main\"\n\"2866175\";\"Neupeurn\";\"other\"\n\"2866208\";\"Neuberend\";\"main\"\n\"2866280\";\"Neu-Anspach\";\"main\"\n\"2866291\";\"Neualbenreuth\";\"main\"\n\"2866304\";\"Netzschkau\";\"main\"\n\"2866333\";\"Nettetal\";\"main\"\n\"2866336\";\"Nettersheim\";\"main\"\n\"2866375\";\"Netphen\";\"main\"\n\"2866416\";\"Nesselwang\";\"main\"\n\"2866466\";\"Neschwitz\";\"main\"\n\"2866473\";\"Nersingen\";\"main\"\n\"2866486\";\"Neresheim\";\"main\"\n\"2866492\";\"Nerchau\";\"main\"\n\"2866511\";\"Nentershausen\";\"main\"\n\"2866512\";\"Nentershausen\";\"main\"\n\"2866516\";\"Nennslingen\";\"main\"\n\"2866523\";\"Nennhausen\";\"main\"\n\"2866561\";\"Nellingen\";\"main\"\n\"2866583\";\"Neinstedt\";\"main\"\n\"2866593\";\"Neidlingen\";\"main\"\n\"2866606\";\"Neidenstein\";\"main\"\n\"2866632\";\"Nehren\";\"main\"\n\"2866657\";\"Negernbötel\";\"main\"\n\"2866657\";\"Negernbotel\";\"ascii\"\n\"2866751\";\"Neckarzimmern\";\"main\"\n\"2866753\";\"Neckarwestheim\";\"main\"\n\"2866755\";\"Neckartenzlingen\";\"main\"\n\"2866757\";\"Neckartailfingen\";\"main\"\n\"2866758\";\"Neckarsulm\";\"main\"\n\"2866758\";\"Nekkarzul'm\";\"other\"\n\"2866758\";\"Неккарзульм\";\"other\"\n\"2866759\";\"Neckarsteinach\";\"main\"\n\"2866773\";\"Neckargerach\";\"main\"\n\"2866774\";\"Neckargemünd\";\"main\"\n\"2866774\";\"Neckargemund\";\"ascii\"\n\"2866779\";\"Neckarbischofsheim\";\"main\"\n\"2866779\";\"Neckar-bischofshein\";\"other\"\n\"2866793\";\"Nebra\";\"main\"\n\"2866810\";\"Nebelschütz\";\"main\"\n\"2866810\";\"Nebelschutz\";\"ascii\"\n\"2866834\";\"Nauwalde\";\"main\"\n\"2866851\";\"Nauroth\";\"main\"\n\"2866858\";\"Nauort\";\"main\"\n\"2866861\";\"Naunhof\";\"main\"\n\"2866861\";\"Neunhof\";\"other\"\n\"2866885\";\"Naundorf\";\"main\"\n\"2866905\";\"Naumburg\";\"main\"\n\"2866906\";\"Naumburg\";\"main\"\n\"2866906\";\"Naumberg\";\"other\"\n\"2866906\";\"Naumbourg\";\"other\"\n\"2866906\";\"Naumburg an der Saale\";\"other\"\n\"2866906\";\"Naumburg/Saale\";\"other\"\n\"2866906\";\"Stadt Naumburg\";\"other\"\n\"2866906\";\"naumuburuku\";\"other\"\n\"2866906\";\"Наумбург\";\"other\"\n\"2866906\";\"ナウムブルク\";\"other\"\n\"2866925\";\"Nauendorf\";\"main\"\n\"2866930\";\"Nauen\";\"main\"\n\"2866942\";\"Nattheim\";\"main\"\n\"2866990\";\"Nastätten\";\"main\"\n\"2866990\";\"Nastatten\";\"ascii\"\n\"2867037\";\"Nassau\";\"main\"\n\"2867066\";\"Narsdorf\";\"main\"\n\"2867098\";\"Nanzdietschweiler\";\"main\"\n\"2867098\";\"Nanzdiezweiler\";\"other\"\n\"2867112\";\"Nandlstadt\";\"main\"\n\"2867112\";\"Nandelstatt\";\"other\"\n\"2867120\";\"Namborn\";\"main\"\n\"2867127\";\"Nalbach\";\"main\"\n\"2867138\";\"Naila\";\"main\"\n\"2867146\";\"Nahrendorf\";\"main\"\n\"2867160\";\"Nahe\";\"main\"\n\"2867164\";\"Nagold\";\"main\"\n\"2867198\";\"Nagel\";\"main\"\n\"2867229\";\"Nackenheim\";\"main\"\n\"2867245\";\"Nachterstedt\";\"main\"\n\"2867252\";\"Nachrodt-Wiblingwerde\";\"main\"\n\"2867262\";\"Nabburg\";\"main\"\n\"2867274\";\"Mylau\";\"main\"\n\"2867286\";\"Mutzschen\";\"main\"\n\"2867310\";\"Mutterstadt\";\"main\"\n\"2867335\";\"Mutlangen\";\"main\"\n\"2867396\";\"Muschwitz\";\"main\"\n\"2867402\";\"Müschenbach\";\"main\"\n\"2867402\";\"Muschenbach\";\"ascii\"\n\"2867431\";\"Murrhardt\";\"main\"\n\"2867436\";\"Murr\";\"main\"\n\"2867445\";\"Murnau am Staffelsee\";\"main\"\n\"2867445\";\"Murnau\";\"other\"\n\"2867467\";\"Murg\";\"main\"\n\"2867492\";\"Münzenberg\";\"main\"\n\"2867492\";\"Munzenberg\";\"ascii\"\n\"2867511\";\"Münster-Sarmsheim\";\"main\"\n\"2867511\";\"Munster-Sarmsheim\";\"ascii\"\n\"2867514\";\"Münstermaifeld\";\"main\"\n\"2867514\";\"Munstermaifeld\";\"ascii\"\n\"2867520\";\"Münsterhausen\";\"main\"\n\"2867520\";\"Munsterhausen\";\"ascii\"\n\"2867527\";\"Münsterdorf\";\"main\"\n\"2867527\";\"Munsterdorf\";\"ascii\"\n\"2867542\";\"Munster\";\"main\"\n\"2867543\";\"Münster\";\"main\"\n\"2867543\";\"Munster\";\"ascii\"\n\"2867543\";\"Minster\";\"other\"\n\"2867543\";\"Mjunster\";\"other\"\n\"2867543\";\"Moenster\";\"other\"\n\"2867543\";\"Monasterium\";\"other\"\n\"2867543\";\"Muenster\";\"other\"\n\"2867543\";\"Munistri\";\"other\"\n\"2867543\";\"Mönster\";\"other\"\n\"2867543\";\"ming si te\";\"other\"\n\"2867543\";\"mwinseuteo\";\"other\"\n\"2867543\";\"mwnstr\";\"other\"\n\"2867543\";\"mynstr\";\"other\"\n\"2867543\";\"myunsuta\";\"other\"\n\"2867543\";\"Μίνστερ\";\"other\"\n\"2867543\";\"Мюнстер\";\"other\"\n\"2867543\";\"מינסטר\";\"other\"\n\"2867543\";\"مونستر\";\"other\"\n\"2867543\";\"ミュンスター\";\"other\"\n\"2867543\";\"明斯特\";\"other\"\n\"2867543\";\"뮌스터\";\"other\"\n\"2867548\";\"Münster\";\"main\"\n\"2867548\";\"Munster\";\"ascii\"\n\"2867555\";\"Münster\";\"main\"\n\"2867555\";\"Munster\";\"ascii\"\n\"2867560\";\"Münsingen\";\"main\"\n\"2867560\";\"Munsingen\";\"ascii\"\n\"2867560\";\"Muensingen\";\"other\"\n\"2867561\";\"Münsing\";\"main\"\n\"2867561\";\"Munsing\";\"ascii\"\n\"2867568\";\"Munningen\";\"main\"\n\"2867571\";\"Münnerstadt\";\"main\"\n\"2867571\";\"Munnerstadt\";\"ascii\"\n\"2867582\";\"Munkbrarup\";\"main\"\n\"2867608\";\"Munderkingen\";\"main\"\n\"2867613\";\"Hannoversch Münden\";\"main\"\n\"2867613\";\"Hannoversch Munden\";\"ascii\"\n\"2867613\";\"Hann. Muenden\";\"other\"\n\"2867613\";\"Hann. Münden\";\"other\"\n\"2867613\";\"Hann.Muenden\";\"other\"\n\"2867613\";\"Hann.Münden\";\"other\"\n\"2867613\";\"Hannoverisch-Munden\";\"other\"\n\"2867613\";\"Hannoverisch-Münden\";\"other\"\n\"2867613\";\"Hannoversch Muenden\";\"other\"\n\"2867613\";\"Muenden\";\"other\"\n\"2867613\";\"Munden\";\"other\"\n\"2867613\";\"Münden\";\"other\"\n\"2867613\";\"Stadt Hann. Muenden\";\"other\"\n\"2867613\";\"Stadt Hann. Münden\";\"other\"\n\"2867613\";\"ハン・ミュンデン\";\"other\"\n\"2867616\";\"Mundelsheim\";\"main\"\n\"2867626\";\"Münchweiler an der Rodalbe\";\"main\"\n\"2867626\";\"Munchweiler an der Rodalbe\";\"ascii\"\n\"2867626\";\"Munchweiler\";\"other\"\n\"2867626\";\"Munchweiler Rodalb\";\"other\"\n\"2867626\";\"Münchweiler\";\"other\"\n\"2867626\";\"Münchweiler Rodalb\";\"other\"\n\"2867627\";\"Münchweiler an der Alsenz\";\"main\"\n\"2867627\";\"Munchweiler an der Alsenz\";\"ascii\"\n\"2867627\";\"Munchweiler\";\"other\"\n\"2867627\";\"Munchweiler Alsenz\";\"other\"\n\"2867627\";\"Münchweiler\";\"other\"\n\"2867627\";\"Münchweiler Alsenz\";\"other\"\n\"2867633\";\"Münchsteinach\";\"main\"\n\"2867633\";\"Munchsteinach\";\"ascii\"\n\"2867637\";\"Münchsmünster\";\"main\"\n\"2867637\";\"Munchsmunster\";\"ascii\"\n\"2867673\";\"Münchhausen\";\"main\"\n\"2867673\";\"Munchhausen\";\"ascii\"\n\"2867707\";\"Münchenbernsdorf\";\"main\"\n\"2867707\";\"Munchenbernsdorf\";\"ascii\"\n\"2867714\";\"München\";\"main\"\n\"2867714\";\"Muenchen\";\"ascii\"\n\"2867714\";\"Lungsod ng Muenchen\";\"other\"\n\"2867714\";\"Lungsod ng München\";\"other\"\n\"2867714\";\"Minga\";\"other\"\n\"2867714\";\"Minhen\";\"other\"\n\"2867714\";\"Minhene\";\"other\"\n\"2867714\";\"Minkhen\";\"other\"\n\"2867714\";\"Miunchenas\";\"other\"\n\"2867714\";\"Mjunkhen\";\"other\"\n\"2867714\";\"Mnichov\";\"other\"\n\"2867714\";\"Mníchov\";\"other\"\n\"2867714\";\"Monachium\";\"other\"\n\"2867714\";\"Monacho\";\"other\"\n\"2867714\";\"Monaco\";\"other\"\n\"2867714\";\"Monaco 'e Baviera\";\"other\"\n\"2867714\";\"Monaco di Baviera\";\"other\"\n\"2867714\";\"Monacum\";\"other\"\n\"2867714\";\"Muenih\";\"other\"\n\"2867714\";\"Munchen\";\"other\"\n\"2867714\";\"Munic\";\"other\"\n\"2867714\";\"Munic - Muenchen\";\"other\"\n\"2867714\";\"Munich\";\"other\"\n\"2867714\";\"Munike\";\"other\"\n\"2867714\";\"Munique\";\"other\"\n\"2867714\";\"Munkeno\";\"other\"\n\"2867714\";\"Myunxen\";\"other\"\n\"2867714\";\"Múnic - München\";\"other\"\n\"2867714\";\"Múnich\";\"other\"\n\"2867714\";\"Münih\";\"other\"\n\"2867714\";\"mi wnik\";\"other\"\n\"2867714\";\"miunkheni\";\"other\"\n\"2867714\";\"miyunik\";\"other\"\n\"2867714\";\"mu ni hei\";\"other\"\n\"2867714\";\"mwinhen\";\"other\"\n\"2867714\";\"mwnykh\";\"other\"\n\"2867714\";\"mynkn\";\"other\"\n\"2867714\";\"myunhen\";\"other\"\n\"2867714\";\"mywnkh\";\"other\"\n\"2867714\";\"Μόναχο\";\"other\"\n\"2867714\";\"Минхен\";\"other\"\n\"2867714\";\"Мюнхен\";\"other\"\n\"2867714\";\"Մյունխեն\";\"other\"\n\"2867714\";\"מינכן\";\"other\"\n\"2867714\";\"مونیخ\";\"other\"\n\"2867714\";\"ميونخ\";\"other\"\n\"2867714\";\"ميۇنخېن\";\"other\"\n\"2867714\";\"மியூனிக்\";\"other\"\n\"2867714\";\"มิวนิก\";\"other\"\n\"2867714\";\"მიუნხენი\";\"other\"\n\"2867714\";\"ミュンヘン\";\"other\"\n\"2867714\";\"慕尼黑\";\"other\"\n\"2867714\";\"뮌헨\";\"other\"\n\"2867723\";\"Müncheberg\";\"main\"\n\"2867723\";\"Muncheberg\";\"ascii\"\n\"2867723\";\"Muencheberg\";\"other\"\n\"2867726\";\"Münchberg\";\"main\"\n\"2867726\";\"Munchberg\";\"ascii\"\n\"2867753\";\"Mülsen\";\"main\"\n\"2867753\";\"Mulsen\";\"ascii\"\n\"2867763\";\"Müllrose\";\"main\"\n\"2867763\";\"Mullrose\";\"ascii\"\n\"2867770\";\"Müllheim\";\"main\"\n\"2867770\";\"Mullheim\";\"ascii\"\n\"2867770\";\"Muellheim\";\"other\"\n\"2867770\";\"Mulheim\";\"other\"\n\"2867838\";\"Mülheim an der Ruhr\";\"main\"\n\"2867838\";\"Muelheim an der Ruhr\";\"ascii\"\n\"2867838\";\"Milchaim\";\"other\"\n\"2867838\";\"Mjul'khajm-na-Rure\";\"other\"\n\"2867838\";\"Moelm\";\"other\"\n\"2867838\";\"Moeln\";\"other\"\n\"2867838\";\"Muelheim\";\"other\"\n\"2867838\";\"Mulheim\";\"other\"\n\"2867838\";\"Mulheim-on-Ruhr\";\"other\"\n\"2867838\";\"Mölm\";\"other\"\n\"2867838\";\"Möln\";\"other\"\n\"2867838\";\"Mülheim\";\"other\"\n\"2867838\";\"Mülheim-on-Ruhr\";\"other\"\n\"2867838\";\"Μιλχάιμ\";\"other\"\n\"2867838\";\"Мюльхайм-на-Руре\";\"other\"\n\"2867838\";\"מילהיים על הרוהר\";\"other\"\n\"2867847\";\"Mulfingen\";\"main\"\n\"2867850\";\"Muldenstein\";\"main\"\n\"2867863\";\"Mulda\";\"main\"\n\"2867863\";\"Mulda-Randeck\";\"other\"\n\"2867888\";\"Mühltroff\";\"main\"\n\"2867888\";\"Muhltroff\";\"ascii\"\n\"2867929\";\"Mühl Rosin\";\"main\"\n\"2867929\";\"Muhl Rosin\";\"ascii\"\n\"2867953\";\"Mühlingen\";\"main\"\n\"2867953\";\"Muhlingen\";\"ascii\"\n\"2867983\";\"Mühlheim am Bach\";\"main\"\n\"2867983\";\"Muhlheim am Bach\";\"ascii\"\n\"2867985\";\"Mühlheim am Main\";\"main\"\n\"2867985\";\"Muehlheim am Main\";\"ascii\"\n\"2867985\";\"Muehlheim\";\"other\"\n\"2867985\";\"Mühlheim\";\"other\"\n\"2867993\";\"Stuttgart Mühlhausen\";\"main\"\n\"2867993\";\"Stuttgart Muehlhausen\";\"ascii\"\n\"2867996\";\"Mühlhausen\";\"main\"\n\"2867996\";\"Muhlhausen\";\"ascii\"\n\"2867996\";\"Muehlhausen\";\"other\"\n\"2867996\";\"Muehlhausen/Thueringen\";\"other\"\n\"2867996\";\"Mühlhausen/Thüringen\";\"other\"\n\"2867996\";\"Thomas-Muntzer-Stadt-Muhlhausen\";\"other\"\n\"2867996\";\"Thomas-Müntzer-Stadt-Mühlhausen\";\"other\"\n\"2868002\";\"Mühlhausen\";\"main\"\n\"2868002\";\"Muhlhausen\";\"ascii\"\n\"2868004\";\"Mühlhausen\";\"main\"\n\"2868004\";\"Muhlhausen\";\"ascii\"\n\"2868010\";\"Mühlhausen\";\"main\"\n\"2868010\";\"Muhlhausen\";\"ascii\"\n\"2868222\";\"Mühlen Eichsen\";\"main\"\n\"2868222\";\"Muhlen Eichsen\";\"ascii\"\n\"2868457\";\"Mühlenbach\";\"main\"\n\"2868457\";\"Muhlenbach\";\"ascii\"\n\"2868506\";\"Mühldorf\";\"main\"\n\"2868506\";\"Muhldorf\";\"ascii\"\n\"2868506\";\"Muhldorf am Inn\";\"other\"\n\"2868506\";\"Mühldorf am Inn\";\"other\"\n\"2868531\";\"Mühlberg\";\"main\"\n\"2868531\";\"Muhlberg\";\"ascii\"\n\"2868782\";\"Mühlau\";\"main\"\n\"2868782\";\"Muhlau\";\"ascii\"\n\"2868788\";\"Mühlacker\";\"main\"\n\"2868788\";\"Muhlacker\";\"ascii\"\n\"2868807\";\"Muggensturm\";\"main\"\n\"2868842\";\"Mügeln\";\"main\"\n\"2868842\";\"Mugeln\";\"ascii\"\n\"2868853\";\"Mudersbach\";\"main\"\n\"2868861\";\"Müden\";\"main\"\n\"2868861\";\"Muden\";\"ascii\"\n\"2868867\";\"Mudau\";\"main\"\n\"2868923\";\"Mücka\";\"main\"\n\"2868923\";\"Mucka\";\"ascii\"\n\"2868933\";\"Mücheln\";\"main\"\n\"2868933\";\"Mucheln\";\"ascii\"\n\"2868936\";\"Much\";\"main\"\n\"2868967\";\"Mötzingen\";\"main\"\n\"2868967\";\"Motzingen\";\"ascii\"\n\"2868968\";\"Mötzing\";\"main\"\n\"2868968\";\"Motzing\";\"ascii\"\n\"2868986\";\"Möttingen\";\"main\"\n\"2868986\";\"Mottingen\";\"ascii\"\n\"2868992\";\"Motten\";\"main\"\n\"2869019\";\"Mössingen\";\"main\"\n\"2869019\";\"Mossingen\";\"ascii\"\n\"2869053\";\"Möser\";\"main\"\n\"2869053\";\"Moser\";\"ascii\"\n\"2869120\";\"Mosbach\";\"main\"\n\"2869120\";\"Mosbach in Baden\";\"other\"\n\"2869147\";\"Morsum\";\"main\"\n\"2869196\";\"Morsbach\";\"main\"\n\"2869221\";\"Mörlenbach\";\"main\"\n\"2869221\";\"Morlenbach\";\"ascii\"\n\"2869244\";\"Moritzburg\";\"main\"\n\"2869257\";\"Moringen\";\"main\"\n\"2869306\";\"Morbach\";\"main\"\n\"2869325\";\"Moosthenning\";\"main\"\n\"2869361\";\"Moosinning\";\"main\"\n\"2869449\";\"Moosburg\";\"main\"\n\"2869449\";\"Moosburg an der Isar\";\"other\"\n\"2869449\";\"Mosburg\";\"other\"\n\"2869488\";\"Moosbach\";\"main\"\n\"2869488\";\"Mosbach\";\"other\"\n\"2869511\";\"Moosach\";\"main\"\n\"2869542\";\"Moos\";\"main\"\n\"2869627\";\"Moorrege\";\"main\"\n\"2869682\";\"Moorenweis\";\"main\"\n\"2869732\";\"Monzingen\";\"main\"\n\"2869734\";\"Monzelfeld\";\"main\"\n\"2869746\";\"Montabaur\";\"main\"\n\"2869746\";\"Montebaur\";\"other\"\n\"2869751\";\"Monsheim\";\"main\"\n\"2869752\";\"Mönsheim\";\"main\"\n\"2869752\";\"Monsheim\";\"ascii\"\n\"2869756\";\"Monschau\";\"main\"\n\"2869756\";\"Montjoie\";\"other\"\n\"2869783\";\"Mönkeberg\";\"main\"\n\"2869783\";\"Monkeberg\";\"ascii\"\n\"2869791\";\"Monheim\";\"main\"\n\"2869792\";\"Monheim\";\"main\"\n\"2869792\";\"Monkhajm\";\"other\"\n\"2869792\";\"Monnheim\";\"other\"\n\"2869792\";\"Монхайм\";\"other\"\n\"2869808\";\"Mönchweiler\";\"main\"\n\"2869808\";\"Monchweiler\";\"ascii\"\n\"2869823\";\"Mönchsroth\";\"main\"\n\"2869823\";\"Monchsroth\";\"ascii\"\n\"2869847\";\"Mönchsdeggingen\";\"main\"\n\"2869847\";\"Monchsdeggingen\";\"ascii\"\n\"2869847\";\"Deggingen\";\"other\"\n\"2869882\";\"Mönchhagen\";\"main\"\n\"2869882\";\"Monchhagen\";\"ascii\"\n\"2869891\";\"Mönchenholzhausen\";\"main\"\n\"2869891\";\"Monchenholzhausen\";\"ascii\"\n\"2869894\";\"Mönchengladbach\";\"main\"\n\"2869894\";\"Monchengladbach\";\"ascii\"\n\"2869894\";\"Mjonkhengladbakh\";\"other\"\n\"2869894\";\"Moenchengladbach\";\"other\"\n\"2869894\";\"Muenchen-Gladbach\";\"other\"\n\"2869894\";\"dwsldwrf\";\"other\"\n\"2869894\";\"men xing ge la de ba he\";\"other\"\n\"2869894\";\"menhyengurattobahha\";\"other\"\n\"2869894\";\"mwnshghladbakh\";\"other\"\n\"2869894\";\"Мёнхенгладбах\";\"other\"\n\"2869894\";\"دوسلدورف\";\"other\"\n\"2869894\";\"مونشغلادباخ\";\"other\"\n\"2869894\";\"メンヒェングラットバッハ\";\"other\"\n\"2869894\";\"门兴格拉德巴赫\";\"other\"\n\"2869908\";\"Mönchberg\";\"main\"\n\"2869908\";\"Monchberg\";\"ascii\"\n\"2869931\";\"Mommenheim\";\"main\"\n\"2869934\";\"Mömlingen\";\"main\"\n\"2869934\";\"Momlingen\";\"ascii\"\n\"2869936\";\"Mömbris\";\"main\"\n\"2869936\";\"Mombris\";\"ascii\"\n\"2869964\";\"Molschleben\";\"main\"\n\"2869994\";\"Mölln\";\"main\"\n\"2869994\";\"Molln\";\"ascii\"\n\"2869994\";\"Moelln\";\"other\"\n\"2870025\";\"Möllenhagen\";\"main\"\n\"2870025\";\"Mollenhagen\";\"ascii\"\n\"2870079\";\"Molfsee\";\"main\"\n\"2870094\";\"Molbergen\";\"main\"\n\"2870110\";\"Moisburg\";\"main\"\n\"2870143\";\"Möhrendorf\";\"main\"\n\"2870143\";\"Mohrendorf\";\"ascii\"\n\"2870178\";\"Mohlsdorf\";\"main\"\n\"2870190\";\"Möhlau\";\"main\"\n\"2870190\";\"Mohlau\";\"ascii\"\n\"2870194\";\"Möglingen\";\"main\"\n\"2870194\";\"Moglingen\";\"ascii\"\n\"2870202\";\"Mögglingen\";\"main\"\n\"2870202\";\"Mogglingen\";\"ascii\"\n\"2870212\";\"Mogendorf\";\"main\"\n\"2870221\";\"Moers\";\"main\"\n\"2870221\";\"Mers\";\"other\"\n\"2870221\";\"Meurs\";\"other\"\n\"2870221\";\"Mors\";\"other\"\n\"2870221\";\"Mörs\";\"other\"\n\"2870221\";\"Мерс\";\"other\"\n\"2870233\";\"Mödingen\";\"main\"\n\"2870233\";\"Modingen\";\"ascii\"\n\"2870266\";\"Mockrehna\";\"main\"\n\"2870269\";\"Möckmühl\";\"main\"\n\"2870269\";\"Mockmuhl\";\"ascii\"\n\"2870278\";\"Möckern\";\"main\"\n\"2870278\";\"Mockern\";\"ascii\"\n\"2870304\";\"Mochau\";\"main\"\n\"2870312\";\"Mixdorf\";\"main\"\n\"2870315\";\"Mitwitz\";\"main\"\n\"2870318\";\"Mittweida\";\"main\"\n\"2870355\";\"Mitterteich\";\"main\"\n\"2870359\";\"Mitterskirchen\";\"main\"\n\"2870435\";\"Mitterfels\";\"main\"\n\"2870435\";\"Milerfels\";\"other\"\n\"2870481\";\"Mittenwalde\";\"main\"\n\"2870482\";\"Mittenwald\";\"main\"\n\"2870490\";\"Mittenaar\";\"main\"\n\"2870541\";\"Mittelstetten\";\"main\"\n\"2870584\";\"Mittelschöntal\";\"main\"\n\"2870584\";\"Mittelschontal\";\"ascii\"\n\"2870584\";\"Schontal\";\"other\"\n\"2870584\";\"Schöntal\";\"other\"\n\"2870628\";\"Mittelneufnach\";\"main\"\n\"2870673\";\"Mittelhof\";\"main\"\n\"2870687\";\"Mittelherwigsdorf\";\"main\"\n\"2870743\";\"Mitteleschenbach\";\"main\"\n\"2870795\";\"Mittelbiberach\";\"main\"\n\"2870911\";\"Mittegroßefehn\";\"main\"\n\"2870911\";\"Mittegrossefehn\";\"ascii\"\n\"2870911\";\"Grossefehn\";\"other\"\n\"2870936\";\"Mistelgau\";\"main\"\n\"2870986\";\"Mirow\";\"main\"\n\"2870996\";\"Mintraching\";\"main\"\n\"2871020\";\"Minfeld\";\"main\"\n\"2871039\";\"Minden\";\"main\"\n\"2871039\";\"Minn\";\"other\"\n\"2871039\";\"Минден\";\"other\"\n\"2871045\";\"Mindelheim\";\"main\"\n\"2871067\";\"Milz\";\"main\"\n\"2871071\";\"Groß Miltzow\";\"main\"\n\"2871071\";\"Gross Miltzow\";\"ascii\"\n\"2871071\";\"Miltzow\";\"other\"\n\"2871079\";\"Miltenberg\";\"main\"\n\"2871082\";\"Miltach\";\"main\"\n\"2871100\";\"Milmersdorf\";\"main\"\n\"2871130\";\"Mildstedt\";\"main\"\n\"2871142\";\"Mildenau\";\"main\"\n\"2871166\";\"Mihla\";\"main\"\n\"2871173\";\"Mietingen\";\"main\"\n\"2871183\";\"Mieste\";\"main\"\n\"2871198\";\"Miesbach\";\"main\"\n\"2871213\";\"Mielkendorf\";\"main\"\n\"2871225\";\"Miehlen\";\"main\"\n\"2871244\";\"Midlum\";\"main\"\n\"2871266\";\"Mickhausen\";\"main\"\n\"2871279\";\"Michendorf\";\"main\"\n\"2871284\";\"Michelstadt\";\"main\"\n\"2871287\";\"Michelsneukirchen\";\"main\"\n\"2871326\";\"Michelfeld\";\"main\"\n\"2871342\";\"Michelbach an der Bilz\";\"main\"\n\"2871342\";\"Michelbach\";\"other\"\n\"2871367\";\"Michelau\";\"main\"\n\"2871368\";\"Michelau\";\"main\"\n\"2871421\";\"Meyenburg\";\"main\"\n\"2871437\";\"Meuselwitz\";\"main\"\n\"2871441\";\"Meuselbach-Schwarzmühle\";\"main\"\n\"2871441\";\"Meuselbach-Schwarzmuhle\";\"ascii\"\n\"2871441\";\"Meuselbach\";\"other\"\n\"2871460\";\"Meudt\";\"main\"\n\"2871486\";\"Metzingen\";\"main\"\n\"2871535\";\"Mettmann\";\"main\"\n\"2871538\";\"Mettlach\";\"main\"\n\"2871540\";\"Mettingen\";\"main\"\n\"2871555\";\"Mettenheim\";\"main\"\n\"2871556\";\"Mettenheim\";\"main\"\n\"2871559\";\"Mettendorf\";\"main\"\n\"2871573\";\"Metten\";\"main\"\n\"2871591\";\"Metelen\";\"main\"\n\"2871601\";\"Meßstetten\";\"main\"\n\"2871601\";\"Messstetten\";\"ascii\"\n\"2871601\";\"Messstettin\";\"other\"\n\"2871601\";\"Meßstettin\";\"other\"\n\"2871609\";\"Meßkirch\";\"main\"\n\"2871609\";\"Messkirch\";\"ascii\"\n\"2871609\";\"mei si ji xi\";\"other\"\n\"2871609\";\"mesukiruhi\";\"other\"\n\"2871609\";\"メスキルヒ\";\"other\"\n\"2871609\";\"梅斯基希\";\"other\"\n\"2871613\";\"Messingen\";\"main\"\n\"2871636\";\"Messel\";\"main\"\n\"2871654\";\"Mesekenhagen\";\"main\"\n\"2871668\";\"Meschede\";\"main\"\n\"2871675\";\"Merzig\";\"main\"\n\"2871675\";\"Mercige\";\"other\"\n\"2871675\";\"Merzig am Saar\";\"other\"\n\"2871675\";\"Мерциге\";\"other\"\n\"2871680\";\"Merzhausen\";\"main\"\n\"2871690\";\"Merzen\";\"main\"\n\"2871703\";\"Merzalben\";\"main\"\n\"2871707\";\"Merxheim\";\"main\"\n\"2871713\";\"Mertloch\";\"main\"\n\"2871716\";\"Mertingen\";\"main\"\n\"2871719\";\"Mertesdorf\";\"main\"\n\"2871736\";\"Merseburg\";\"main\"\n\"2871736\";\"Mersebourg\";\"other\"\n\"2871736\";\"Merseburga\";\"other\"\n\"2871736\";\"Merzeburg\";\"other\"\n\"2871736\";\"Мерзебург\";\"other\"\n\"2871790\";\"Merklingen\";\"main\"\n\"2871803\";\"Merkendorf\";\"main\"\n\"2871805\";\"Merkenbach\";\"main\"\n\"2871813\";\"Mering\";\"main\"\n\"2871813\";\"Moringen\";\"other\"\n\"2871829\";\"Merenberg\";\"main\"\n\"2871831\";\"Merdingen\";\"main\"\n\"2871832\";\"Merchweiler\";\"main\"\n\"2871835\";\"Merching\";\"main\"\n\"2871845\";\"Meppen\";\"main\"\n\"2871884\";\"Menteroda\";\"main\"\n\"2871889\";\"Menslage\";\"main\"\n\"2871950\";\"Mengkofen\";\"main\"\n\"2871953\";\"Mengerskirchen\";\"main\"\n\"2871958\";\"Mengersgereuth-Hämmern\";\"main\"\n\"2871958\";\"Mengersgereuth-Hammern\";\"ascii\"\n\"2871964\";\"Mengen\";\"main\"\n\"2871979\";\"Mendig\";\"main\"\n\"2871979\";\"Mending\";\"other\"\n\"2871983\";\"Menden\";\"main\"\n\"2871990\";\"Memmingerberg\";\"main\"\n\"2871992\";\"Memmingen\";\"main\"\n\"2871992\";\"memingen\";\"other\"\n\"2871992\";\"メミンゲン\";\"other\"\n\"2872003\";\"Memmelsdorf\";\"main\"\n\"2872028\";\"Melsungen\";\"main\"\n\"2872031\";\"Melsdorf\";\"main\"\n\"2872033\";\"Melsbach\";\"main\"\n\"2872047\";\"Mellrichstadt\";\"main\"\n\"2872056\";\"Mellinghausen\";\"main\"\n\"2872057\";\"Mellingen\";\"main\"\n\"2872073\";\"Mellenbach-Glasbach\";\"main\"\n\"2872079\";\"Melle\";\"main\"\n\"2872100\";\"Meldorf\";\"main\"\n\"2872102\";\"Melchow\";\"main\"\n\"2872117\";\"Melbeck\";\"main\"\n\"2872124\";\"Meitzendorf\";\"main\"\n\"2872126\";\"Meitingen\";\"main\"\n\"2872149\";\"Meißenheim\";\"main\"\n\"2872149\";\"Meissenheim\";\"ascii\"\n\"2872155\";\"Meißen\";\"main\"\n\"2872155\";\"Meissen\";\"ascii\"\n\"2872155\";\"Mejsen\";\"other\"\n\"2872155\";\"Misen\";\"other\"\n\"2872155\";\"Misnia\";\"other\"\n\"2872155\";\"Miśnia\";\"other\"\n\"2872155\";\"Míšeň\";\"other\"\n\"2872155\";\"maisen\";\"other\"\n\"2872155\";\"Мейсен\";\"other\"\n\"2872155\";\"マイセン\";\"other\"\n\"2872173\";\"Meisenheim\";\"main\"\n\"2872225\";\"Meiningen\";\"main\"\n\"2872225\";\"Majningen\";\"other\"\n\"2872225\";\"Stadt Meiningen\";\"other\"\n\"2872225\";\"Майнинген\";\"other\"\n\"2872237\";\"Meinerzhagen\";\"main\"\n\"2872244\";\"Meinersen\";\"main\"\n\"2872362\";\"Mehrstetten\";\"main\"\n\"2872374\";\"Mehringen\";\"main\"\n\"2872375\";\"Mehring\";\"main\"\n\"2872377\";\"Mehring\";\"main\"\n\"2872390\";\"Mehren\";\"main\"\n\"2872409\";\"Mehltheuer\";\"main\"\n\"2872417\";\"Mehlmeisel\";\"main\"\n\"2872428\";\"Mehlingen\";\"main\"\n\"2872449\";\"Mehlbach\";\"main\"\n\"2872486\";\"Meersburg\";\"main\"\n\"2872486\";\"Neersburg\";\"other\"\n\"2872504\";\"Meerbusch\";\"main\"\n\"2872512\";\"Meerbeck\";\"main\"\n\"2872519\";\"Meerane\";\"main\"\n\"2872527\";\"Meeder\";\"main\"\n\"2872557\";\"Medebach\";\"main\"\n\"2872559\";\"Meddersheim\";\"main\"\n\"2872571\";\"Mecklenburg\";\"main\"\n\"2872571\";\"Dorf Mecklenburg\";\"other\"\n\"2872571\";\"Mecklenburg Dorf\";\"other\"\n\"2872580\";\"Meckesheim\";\"main\"\n\"2872582\";\"Meckenheim\";\"main\"\n\"2872583\";\"Meckenheim\";\"main\"\n\"2872583\";\"Meehenheim\";\"other\"\n\"2872583\";\"Mekkenkhajm\";\"other\"\n\"2872583\";\"Меккенхайм\";\"other\"\n\"2872585\";\"Meckenbeuren\";\"main\"\n\"2872600\";\"Mechterstädt\";\"main\"\n\"2872600\";\"Mechterstadt\";\"ascii\"\n\"2872611\";\"Mechernich\";\"main\"\n\"2872649\";\"Mayen\";\"main\"\n\"2872659\";\"Maxsain\";\"main\"\n\"2872670\";\"Maxhütte-Haidhof\";\"main\"\n\"2872670\";\"Maxhutte-Haidhof\";\"ascii\"\n\"2872670\";\"Maxhutte\";\"other\"\n\"2872670\";\"Maxhütte\";\"other\"\n\"2872686\";\"Maxdorf\";\"main\"\n\"2872697\";\"Mauth\";\"main\"\n\"2872775\";\"Maulburg\";\"main\"\n\"2872777\";\"Maulbronn\";\"main\"\n\"2872777\";\"Maul\";\"other\"\n\"2872777\";\"mauruburon\";\"other\"\n\"2872777\";\"マウルブロン\";\"other\"\n\"2872796\";\"Mauerstetten\";\"main\"\n\"2872807\";\"Mauern\";\"main\"\n\"2872807\";\"Mauren\";\"other\"\n\"2872815\";\"Mauer\";\"main\"\n\"2872955\";\"Mastershausen\";\"main\"\n\"2872962\";\"Maßweiler\";\"main\"\n\"2872962\";\"Massweiler\";\"ascii\"\n\"2872972\";\"Massing\";\"main\"\n\"2872972\";\"Maszing\";\"other\"\n\"2872980\";\"Masserberg\";\"main\"\n\"2872996\";\"Massenbachhausen\";\"main\"\n\"2873011\";\"Maßbach\";\"main\"\n\"2873011\";\"Massbach\";\"ascii\"\n\"2873022\";\"Maselheim\";\"main\"\n\"2873049\";\"Masburg\";\"main\"\n\"2873056\";\"Marzling\";\"main\"\n\"2873080\";\"Marxheim\";\"main\"\n\"2873087\";\"Marxen\";\"main\"\n\"2873122\";\"Martinshöhe\";\"main\"\n\"2873122\";\"Martinshohe\";\"ascii\"\n\"2873126\";\"Martinsheim\";\"main\"\n\"2873144\";\"Martinhagen\";\"main\"\n\"2873153\";\"Martfeld\";\"main\"\n\"2873159\";\"Martensrade\";\"main\"\n\"2873211\";\"Marsberg\";\"main\"\n\"2873220\";\"Marquartstein\";\"main\"\n\"2873224\";\"Marpingen\";\"main\"\n\"2873228\";\"Maroldsweisach\";\"main\"\n\"2873234\";\"Marnheim\";\"main\"\n\"2873250\";\"Marlow\";\"main\"\n\"2873251\";\"Marloffstein\";\"main\"\n\"2873263\";\"Marl\";\"main\"\n\"2873278\";\"Marktzeuln\";\"main\"\n\"2873280\";\"Markt Wald\";\"main\"\n\"2873283\";\"Marktsteft\";\"main\"\n\"2873283\";\"Marktstett\";\"other\"\n\"2873285\";\"Markt Schwaben\";\"main\"\n\"2873285\";\"Markt Swaben\";\"other\"\n\"2873285\";\"Schwabe\";\"other\"\n\"2873286\";\"Marktschorgast\";\"main\"\n\"2873287\";\"Marktschellenberg\";\"main\"\n\"2873287\";\"Schellenberg\";\"other\"\n\"2873288\";\"Markt Rettenbach\";\"main\"\n\"2873289\";\"Marktredwitz\";\"main\"\n\"2873289\";\"Harktrednitz\";\"other\"\n\"2873289\";\"Martredwitz\";\"other\"\n\"2873290\";\"Marktoffingen\";\"main\"\n\"2873291\";\"Marktoberdorf\";\"main\"\n\"2873292\";\"Markt Nordheim\";\"main\"\n\"2873295\";\"Marktleuthen\";\"main\"\n\"2873296\";\"Marktleugast\";\"main\"\n\"2873296\";\"Markt Lengast\";\"other\"\n\"2873298\";\"Marktl\";\"main\"\n\"2873298\";\"Markhl\";\"other\"\n\"2873298\";\"Marktl'\";\"other\"\n\"2873298\";\"Марктль\";\"other\"\n\"2873300\";\"Markt Indersdorf\";\"main\"\n\"2873301\";\"Marktheidenfeld\";\"main\"\n\"2873302\";\"Marktgraitz\";\"main\"\n\"2873304\";\"Markt Erlbach\";\"main\"\n\"2873307\";\"Marktbreit\";\"main\"\n\"2873308\";\"Markt Bibart\";\"main\"\n\"2873309\";\"Markt Berolzheim\";\"main\"\n\"2873309\";\"Berolzheim\";\"other\"\n\"2873310\";\"Marktbergel\";\"main\"\n\"2873318\";\"Marksuhl\";\"main\"\n\"2873331\";\"Markranstädt\";\"main\"\n\"2873331\";\"Markranstadt\";\"ascii\"\n\"2873340\";\"Markneukirchen\";\"main\"\n\"2873343\";\"Marklohe\";\"main\"\n\"2873343\";\"Lohe\";\"other\"\n\"2873344\";\"Marklkofen\";\"main\"\n\"2873351\";\"Markkleeberg West\";\"main\"\n\"2873369\";\"Markgröningen\";\"main\"\n\"2873369\";\"Markgroningen\";\"ascii\"\n\"2873369\";\"Markgronningen\";\"other\"\n\"2873400\";\"Markersdorf\";\"main\"\n\"2873409\";\"Markersbach\";\"main\"\n\"2873427\";\"Markdorf\";\"main\"\n\"2873460\";\"Maring-Noviand\";\"main\"\n\"2873464\";\"Marienwerder\";\"main\"\n\"2873499\";\"Mariental\";\"main\"\n\"2873499\";\"Marienthal\";\"other\"\n\"2873513\";\"Marienrachdorf\";\"main\"\n\"2873574\";\"Marienheide\";\"main\"\n\"2873581\";\"Marienhafe\";\"main\"\n\"2873632\";\"Marienberg\";\"main\"\n\"2873667\";\"Mariaposching\";\"main\"\n\"2873701\";\"Margetshöchheim\";\"main\"\n\"2873701\";\"Margetshochheim\";\"ascii\"\n\"2873759\";\"Marburg an der Lahn\";\"main\"\n\"2873759\";\"Marbourg\";\"other\"\n\"2873759\";\"Marburg\";\"other\"\n\"2873759\";\"Marburgo\";\"other\"\n\"2873759\";\"Marmpournk\";\"other\"\n\"2873759\";\"Μάρμπουργκ\";\"other\"\n\"2873759\";\"Марбург\";\"other\"\n\"2873759\";\"マールブルク・アン・デア・ラーン\";\"other\"\n\"2873776\";\"Marbach am Neckar\";\"main\"\n\"2873776\";\"Marbach\";\"other\"\n\"2873841\";\"Mantel\";\"main\"\n\"2873852\";\"Mansfeld\";\"main\"\n\"2873891\";\"Mannheim\";\"main\"\n\"2873891\";\"Man'chaim\";\"other\"\n\"2873891\";\"Mangejm\";\"other\"\n\"2873891\";\"Manheimas\";\"other\"\n\"2873891\";\"Mankhajm\";\"other\"\n\"2873891\";\"manhaim\";\"other\"\n\"2873891\";\"manhaimi\";\"other\"\n\"2873891\";\"manhaimu\";\"other\"\n\"2873891\";\"manhaym\";\"other\"\n\"2873891\";\"mnhyym\";\"other\"\n\"2873891\";\"Μάνχαϊμ\";\"other\"\n\"2873891\";\"Мангейм\";\"other\"\n\"2873891\";\"Манхайм\";\"other\"\n\"2873891\";\"Манхајм\";\"other\"\n\"2873891\";\"מנהיים\";\"other\"\n\"2873891\";\"مانهایم\";\"other\"\n\"2873891\";\"მანჰაიმი\";\"other\"\n\"2873891\";\"マンハイム\";\"other\"\n\"2873891\";\"만하임\";\"other\"\n\"2873970\";\"Manderscheid\";\"main\"\n\"2873992\";\"Manching\";\"main\"\n\"2874000\";\"Mamming\";\"main\"\n\"2874000\";\"Maniing\";\"other\"\n\"2874006\";\"Mammendorf\";\"main\"\n\"2874007\";\"Mammelzen\";\"main\"\n\"2874028\";\"Malterdingen\";\"main\"\n\"2874039\";\"Malsfeld\";\"main\"\n\"2874042\";\"Malschwitz\";\"main\"\n\"2874047\";\"Malsch\";\"main\"\n\"2874048\";\"Malsch\";\"main\"\n\"2874070\";\"Malliß\";\"main\"\n\"2874070\";\"Malliss\";\"ascii\"\n\"2874070\";\"Mallisz\";\"other\"\n\"2874104\";\"Malgersdorf\";\"main\"\n\"2874111\";\"Malente\";\"main\"\n\"2874111\";\"Eutin mit Malente\";\"other\"\n\"2874122\";\"Malchow\";\"main\"\n\"2874127\";\"Malching\";\"main\"\n\"2874131\";\"Malchin\";\"main\"\n\"2874137\";\"Malborn\";\"main\"\n\"2874157\";\"Maitenbeth\";\"main\"\n\"2874200\";\"Maisach\";\"main\"\n\"2874212\";\"Mainzweiler\";\"main\"\n\"2874225\";\"Mainz\";\"main\"\n\"2874225\";\"Magonza\";\"other\"\n\"2874225\";\"Maguncia\";\"other\"\n\"2874225\";\"Magúncia\";\"other\"\n\"2874225\";\"Mainca\";\"other\"\n\"2874225\";\"Maints\";\"other\"\n\"2874225\";\"Majenco\";\"other\"\n\"2874225\";\"Majnc\";\"other\"\n\"2874225\";\"Mayence\";\"other\"\n\"2874225\";\"Mogontiacum\";\"other\"\n\"2874225\";\"Moguncja\";\"other\"\n\"2874225\";\"Moguntiacum\";\"other\"\n\"2874225\";\"Mohuc\";\"other\"\n\"2874225\";\"Mohuč\";\"other\"\n\"2874225\";\"maincheu\";\"other\"\n\"2874225\";\"maintsi\";\"other\"\n\"2874225\";\"maintsu\";\"other\"\n\"2874225\";\"maynz\";\"other\"\n\"2874225\";\"mei yin ci\";\"other\"\n\"2874225\";\"myynz\";\"other\"\n\"2874225\";\"Μάιντς\";\"other\"\n\"2874225\";\"Майнц\";\"other\"\n\"2874225\";\"Мајнц\";\"other\"\n\"2874225\";\"מיינץ\";\"other\"\n\"2874225\";\"ماينز\";\"other\"\n\"2874225\";\"მაინცი\";\"other\"\n\"2874225\";\"マインツ\";\"other\"\n\"2874225\";\"美因茨\";\"other\"\n\"2874225\";\"마인츠\";\"other\"\n\"2874230\";\"Maintal\";\"main\"\n\"2874231\";\"Mainstockheim\";\"main\"\n\"2874239\";\"Mainleus\";\"main\"\n\"2874246\";\"Mainhardt\";\"main\"\n\"2874252\";\"Mainburg\";\"main\"\n\"2874254\";\"Mainbernheim\";\"main\"\n\"2874263\";\"Mainaschaff\";\"main\"\n\"2874282\";\"Maikammer\";\"main\"\n\"2874284\";\"Maihingen\";\"main\"\n\"2874319\";\"Maierhöfen\";\"main\"\n\"2874319\";\"Maierhofen\";\"ascii\"\n\"2874319\";\"Mayerhofen\";\"other\"\n\"2874319\";\"Mayerhöfen\";\"other\"\n\"2874423\";\"Mähring\";\"main\"\n\"2874423\";\"Mahring\";\"ascii\"\n\"2874486\";\"Mahlberg\";\"main\"\n\"2874509\";\"Magstadt\";\"main\"\n\"2874545\";\"Magdeburg\";\"main\"\n\"2874545\";\"Maagdenburg\";\"other\"\n\"2874545\";\"Magdebourg\";\"other\"\n\"2874545\";\"Magdebourgo\";\"other\"\n\"2874545\";\"Magdeburgas\";\"other\"\n\"2874545\";\"Magdeburgo\";\"other\"\n\"2874545\";\"Meideborch\";\"other\"\n\"2874545\";\"ma ge de bao\";\"other\"\n\"2874545\";\"magdbwrg\";\"other\"\n\"2874545\";\"mageudebuleukeu\";\"other\"\n\"2874545\";\"makudeburuku\";\"other\"\n\"2874545\";\"Μαγδεβούργο\";\"other\"\n\"2874545\";\"Магдебург\";\"other\"\n\"2874545\";\"ماگدبورگ\";\"other\"\n\"2874545\";\"マクデブルク\";\"other\"\n\"2874545\";\"马格德堡\";\"other\"\n\"2874545\";\"마그데부르크\";\"other\"\n\"2874556\";\"Magdala\";\"main\"\n\"2874621\";\"Mackenbach\";\"main\"\n\"2874642\";\"Machern\";\"main\"\n\"2874695\";\"Lychen\";\"main\"\n\"2874710\";\"Lützow\";\"main\"\n\"2874710\";\"Lutzow\";\"ascii\"\n\"2874728\";\"Lutzerath\";\"main\"\n\"2874747\";\"Lützen\";\"main\"\n\"2874747\";\"Lutzen\";\"ascii\"\n\"2874768\";\"Lützelbach\";\"main\"\n\"2874768\";\"Lutzelbach\";\"ascii\"\n\"2874832\";\"Lutter am Barenberge\";\"main\"\n\"2874832\";\"Lutter\";\"other\"\n\"2874902\";\"Lütjensee\";\"main\"\n\"2874902\";\"Lutjensee\";\"ascii\"\n\"2874902\";\"Lutiensee\";\"other\"\n\"2874902\";\"Lütiensee\";\"other\"\n\"2874919\";\"Lütjenburg\";\"main\"\n\"2874919\";\"Lutjenburg\";\"ascii\"\n\"2874978\";\"Lustadt\";\"main\"\n\"2875027\";\"Lürschau\";\"main\"\n\"2875027\";\"Lurschau\";\"ascii\"\n\"2875060\";\"Lupburg\";\"main\"\n\"2875060\";\"Luppurg\";\"other\"\n\"2875067\";\"Lunzenau\";\"main\"\n\"2875102\";\"Lunestedt\";\"main\"\n\"2875107\";\"Lünen\";\"main\"\n\"2875107\";\"Lunen\";\"ascii\"\n\"2875107\";\"Luenen\";\"other\"\n\"2875107\";\"ryunen\";\"other\"\n\"2875107\";\"リューネン\";\"other\"\n\"2875115\";\"Lüneburg\";\"main\"\n\"2875115\";\"Luneburg\";\"ascii\"\n\"2875115\";\"Ljuneburg\";\"other\"\n\"2875115\";\"Lueneburg\";\"other\"\n\"2875115\";\"Luneberg\";\"other\"\n\"2875115\";\"Lunebourg\";\"other\"\n\"2875115\";\"lu nei bao\";\"other\"\n\"2875115\";\"lwnybwrgh\";\"other\"\n\"2875115\";\"ryuneburuku\";\"other\"\n\"2875115\";\"Люнебург\";\"other\"\n\"2875115\";\"لونيبورغ\";\"other\"\n\"2875115\";\"リューネブルク\";\"other\"\n\"2875115\";\"吕内堡\";\"other\"\n\"2875130\";\"Lunden\";\"main\"\n\"2875183\";\"Luisenthal\";\"main\"\n\"2875246\";\"Luhe-Wildenau\";\"main\"\n\"2875246\";\"Lue\";\"other\"\n\"2875246\";\"Luhe\";\"other\"\n\"2875250\";\"Luhden\";\"main\"\n\"2875282\";\"Lügde\";\"main\"\n\"2875282\";\"Lugde\";\"ascii\"\n\"2875286\";\"Lugau\";\"main\"\n\"2875286\";\"Henneckestadt Lugau\";\"other\"\n\"2875330\";\"Ludwigsstadt\";\"main\"\n\"2875330\";\"Ludwigstadt\";\"other\"\n\"2875343\";\"Ludwigslust\";\"main\"\n\"2875376\";\"Ludwigshafen am Rhein\";\"main\"\n\"2875376\";\"Ljudvigskhafen\";\"other\"\n\"2875376\";\"Ludvigskhafen\";\"other\"\n\"2875376\";\"Ludwigshafen\";\"other\"\n\"2875376\";\"Ludwigshafen sul Reno\";\"other\"\n\"2875376\";\"lu de wei xi gang\";\"other\"\n\"2875376\";\"rutovu~ihhisuhafen\";\"other\"\n\"2875376\";\"rutovu~ihisuhafen\";\"other\"\n\"2875376\";\"Лудвигсхафен\";\"other\"\n\"2875376\";\"Людвигсхафен\";\"other\"\n\"2875376\";\"ルートヴィッヒスハーフェン\";\"other\"\n\"2875376\";\"ルートヴィヒスハーフェン\";\"other\"\n\"2875376\";\"路德维希港\";\"other\"\n\"2875379\";\"Ludwigsfelde\";\"main\"\n\"2875392\";\"Ludwigsburg\";\"main\"\n\"2875392\";\"Ludvigsburg\";\"other\"\n\"2875392\";\"Ludwigsbourg\";\"other\"\n\"2875392\";\"Лудвигсбург\";\"other\"\n\"2875417\";\"Lüdinghausen\";\"main\"\n\"2875417\";\"Ludinghausen\";\"ascii\"\n\"2875417\";\"Ljudingkhauzen\";\"other\"\n\"2875417\";\"Людингхаузен\";\"other\"\n\"2875427\";\"Lüdersfeld\";\"main\"\n\"2875427\";\"Ludersfeld\";\"ascii\"\n\"2875430\";\"Lüdersdorf\";\"main\"\n\"2875430\";\"Ludersdorf\";\"ascii\"\n\"2875445\";\"Lüderitz\";\"main\"\n\"2875445\";\"Luderitz\";\"ascii\"\n\"2875456\";\"Lüder\";\"main\"\n\"2875456\";\"Luder\";\"ascii\"\n\"2875457\";\"Lüdenscheid\";\"main\"\n\"2875457\";\"Ludenscheid\";\"ascii\"\n\"2875457\";\"Leudenscheid\";\"other\"\n\"2875457\";\"Luedenscheid\";\"other\"\n\"2875484\";\"Luckenwalde\";\"main\"\n\"2875484\";\"Lukkenval'de\";\"other\"\n\"2875484\";\"Stadt Luckenwalde\";\"other\"\n\"2875484\";\"Луккенвальде\";\"other\"\n\"2875509\";\"Luckau\";\"main\"\n\"2875512\";\"Lucka\";\"main\"\n\"2875542\";\"Lüchow\";\"main\"\n\"2875542\";\"Luchow\";\"ascii\"\n\"2875558\";\"Lübz\";\"main\"\n\"2875558\";\"Lubz\";\"ascii\"\n\"2875559\";\"Lübtheen\";\"main\"\n\"2875559\";\"Lubtheen\";\"ascii\"\n\"2875561\";\"Lübstorf\";\"main\"\n\"2875561\";\"Lubstorf\";\"ascii\"\n\"2875577\";\"Lübow\";\"main\"\n\"2875577\";\"Lubow\";\"ascii\"\n\"2875585\";\"Lubmin\";\"main\"\n\"2875601\";\"Lübeck\";\"main\"\n\"2875601\";\"Lubeck\";\"ascii\"\n\"2875601\";\"Limpek\";\"other\"\n\"2875601\";\"Ljubek\";\"other\"\n\"2875601\";\"Lubeca\";\"other\"\n\"2875601\";\"Lubecca\";\"other\"\n\"2875601\";\"Lubeck Hansestadt\";\"other\"\n\"2875601\";\"Lubeka\";\"other\"\n\"2875601\";\"Lubeko\";\"other\"\n\"2875601\";\"Luebeck\";\"other\"\n\"2875601\";\"Lyypekki\";\"other\"\n\"2875601\";\"Lübeck Hansestadt\";\"other\"\n\"2875601\";\"lu bei ke\";\"other\"\n\"2875601\";\"lwibekeu\";\"other\"\n\"2875601\";\"lybq\";\"other\"\n\"2875601\";\"ryubekku\";\"other\"\n\"2875601\";\"Λίμπεκ\";\"other\"\n\"2875601\";\"Любек\";\"other\"\n\"2875601\";\"ליבק\";\"other\"\n\"2875601\";\"ლიუბეკი\";\"other\"\n\"2875601\";\"リューベック\";\"other\"\n\"2875601\";\"吕贝克\";\"other\"\n\"2875601\";\"뤼베크\";\"other\"\n\"2875623\";\"Lübbenau\";\"main\"\n\"2875623\";\"Lubbenau\";\"ascii\"\n\"2875623\";\"Lubnjow\";\"other\"\n\"2875625\";\"Lübben\";\"main\"\n\"2875625\";\"Lubben\";\"ascii\"\n\"2875625\";\"Lubin\";\"other\"\n\"2875625\";\"Luebben\";\"other\"\n\"2875626\";\"Lübbecke\";\"main\"\n\"2875626\";\"Lubbecke\";\"ascii\"\n\"2875645\";\"Loxstedt\";\"main\"\n\"2875656\";\"Löwenstein\";\"main\"\n\"2875656\";\"Lowenstein\";\"ascii\"\n\"2875738\";\"Lottstetten\";\"main\"\n\"2875760\";\"Lotte\";\"main\"\n\"2875785\";\"Lostau\";\"main\"\n\"2875799\";\"Lößnitz\";\"main\"\n\"2875799\";\"Lossnitz\";\"ascii\"\n\"2875815\";\"Loßburg\";\"main\"\n\"2875815\";\"Lossburg\";\"ascii\"\n\"2875831\";\"Losheim\";\"main\"\n\"2875868\";\"Lörzweiler\";\"main\"\n\"2875868\";\"Lorzweiler\";\"ascii\"\n\"2875870\";\"Lorup\";\"main\"\n\"2875877\";\"Lorsch\";\"main\"\n\"2875877\";\"rorushu\";\"other\"\n\"2875877\";\"ロルシュ\";\"other\"\n\"2875881\";\"Lörrach\";\"main\"\n\"2875881\";\"Lorrach\";\"ascii\"\n\"2875881\";\"Loerrach\";\"other\"\n\"2875881\";\"loerrach\";\"other\"\n\"2875881\";\"lörrach\";\"other\"\n\"2875909\";\"Lorch\";\"main\"\n\"2875978\";\"Lonsee\";\"main\"\n\"2875979\";\"Lonnig\";\"main\"\n\"2875983\";\"Lonnerstadt\";\"main\"\n\"2875987\";\"Löningen\";\"main\"\n\"2875987\";\"Loningen\";\"ascii\"\n\"2875988\";\"Longuich\";\"main\"\n\"2875989\";\"Longkamp\";\"main\"\n\"2876009\";\"Lommatzsch\";\"main\"\n\"2876027\";\"Lollar\";\"main\"\n\"2876044\";\"Loitz\";\"main\"\n\"2876092\";\"Loiching\";\"main\"\n\"2876117\";\"Lohsa\";\"main\"\n\"2876144\";\"Lohra\";\"main\"\n\"2876147\";\"Lohr\";\"main\"\n\"2876185\";\"Lohne\";\"main\"\n\"2876194\";\"Löhnberg\";\"main\"\n\"2876194\";\"Lohnberg\";\"ascii\"\n\"2876212\";\"Lohmen\";\"main\"\n\"2876218\";\"Lohmar\";\"main\"\n\"2876282\";\"Lohfelden\";\"main\"\n\"2876282\";\"Crumbach\";\"other\"\n\"2876282\";\"Krumbach\";\"other\"\n\"2876357\";\"Lohberg\";\"main\"\n\"2876461\";\"Löffingen\";\"main\"\n\"2876461\";\"Loffingen\";\"ascii\"\n\"2876462\";\"Loffenau\";\"main\"\n\"2876484\";\"Löf\";\"main\"\n\"2876484\";\"Lof\";\"ascii\"\n\"2876510\";\"Loddin\";\"main\"\n\"2876539\";\"Löcknitz\";\"main\"\n\"2876539\";\"Locknitz\";\"ascii\"\n\"2876604\";\"Löchgau\";\"main\"\n\"2876604\";\"Lochgau\";\"ascii\"\n\"2876645\";\"Lochau\";\"main\"\n\"2876682\";\"Loburg\";\"main\"\n\"2876685\";\"Lobstädt\";\"main\"\n\"2876685\";\"Lobstadt\";\"ascii\"\n\"2876698\";\"Löbnitz\";\"main\"\n\"2876698\";\"Lobnitz\";\"ascii\"\n\"2876708\";\"Löbichau\";\"main\"\n\"2876708\";\"Lobichau\";\"ascii\"\n\"2876714\";\"Löberitz\";\"main\"\n\"2876714\";\"Loberitz\";\"ascii\"\n\"2876739\";\"Löbejün\";\"main\"\n\"2876739\";\"Lobejun\";\"ascii\"\n\"2876739\";\"Labejum\";\"other\"\n\"2876755\";\"Löbau\";\"main\"\n\"2876755\";\"Lobau\";\"ascii\"\n\"2876755\";\"Loebau\";\"other\"\n\"2876755\";\"Lubij\";\"other\"\n\"2876787\";\"Litzendorf\";\"main\"\n\"2876837\";\"List\";\"main\"\n\"2876842\";\"Lissendorf\";\"main\"\n\"2876865\";\"Lippstadt\";\"main\"\n\"2876865\";\"Lippshtadte\";\"other\"\n\"2876865\";\"Липпштадте\";\"other\"\n\"2876952\";\"Linz am Rhein\";\"main\"\n\"2876952\";\"Linz\";\"other\"\n\"2876963\";\"Lintig\";\"main\"\n\"2877021\";\"Linnich\";\"main\"\n\"2877082\";\"Lingenfeld\";\"main\"\n\"2877088\";\"Lingen\";\"main\"\n\"2877088\";\"Линген\";\"other\"\n\"2877104\";\"Lindwedel\";\"main\"\n\"2877126\";\"Lindow\";\"main\"\n\"2877142\";\"Lindlar\";\"main\"\n\"2877171\";\"Lindhorst\";\"main\"\n\"2877204\";\"Lindewitt\";\"main\"\n\"2877315\";\"Lindenfels\";\"main\"\n\"2877357\";\"Lindenberg\";\"main\"\n\"2877455\";\"Linden\";\"main\"\n\"2877525\";\"Lindberg\";\"main\"\n\"2877545\";\"Lindau\";\"main\"\n\"2877546\";\"Lindau\";\"main\"\n\"2877550\";\"Lindau\";\"main\"\n\"2877550\";\"Lindau Bodensee\";\"other\"\n\"2877550\";\"Lindau saar\";\"other\"\n\"2877550\";\"rindau\";\"other\"\n\"2877550\";\"Линдау\";\"other\"\n\"2877550\";\"リンダウ\";\"other\"\n\"2877624\";\"Linau\";\"main\"\n\"2877647\";\"Limburgerhof\";\"main\"\n\"2877648\";\"Limburg an der Lahn\";\"main\"\n\"2877648\";\"Limburg\";\"other\"\n\"2877648\";\"Limburg-na-Lane\";\"other\"\n\"2877648\";\"Limburgis ad Lanem\";\"other\"\n\"2877648\";\"Лимбург-на-Лане\";\"other\"\n\"2877673\";\"Limbach-Oberfrohna\";\"main\"\n\"2877673\";\"Limbach\";\"other\"\n\"2877673\";\"Limbakh-Oberfrona\";\"other\"\n\"2877673\";\"Лимбах-Оберфрона\";\"other\"\n\"2877683\";\"Limbach\";\"main\"\n\"2877709\";\"Lilienthal\";\"main\"\n\"2877767\";\"Lieskau\";\"main\"\n\"2877771\";\"Lieser\";\"main\"\n\"2877843\";\"Lienen\";\"main\"\n\"2877891\";\"Liebstadt\";\"main\"\n\"2877932\";\"Lieberose\";\"main\"\n\"2877942\";\"Liebenwalde\";\"main\"\n\"2877969\";\"Liebenburg\";\"main\"\n\"2877979\";\"Liebenau\";\"main\"\n\"2877980\";\"Liebenau\";\"main\"\n\"2878027\";\"Lichtentanne\";\"main\"\n\"2878037\";\"Lichtenstein\";\"main\"\n\"2878037\";\"Callnberg\";\"other\"\n\"2878037\";\"Lichenstein\";\"other\"\n\"2878037\";\"Lichtenstein-Callnberg\";\"other\"\n\"2878074\";\"Lichtenfels\";\"main\"\n\"2878109\";\"Lichtenberg\";\"main\"\n\"2878111\";\"Lichtenberg\";\"main\"\n\"2878114\";\"Lichtenberg\";\"main\"\n\"2878133\";\"Lichtenau\";\"main\"\n\"2878138\";\"Lichtenau\";\"main\"\n\"2878140\";\"Lichtenau\";\"main\"\n\"2878153\";\"Lichte\";\"main\"\n\"2878166\";\"Lich\";\"main\"\n\"2878234\";\"Leverkusen\";\"main\"\n\"2878234\";\"Laevverkuuse\";\"other\"\n\"2878234\";\"Leberkouzen\";\"other\"\n\"2878234\";\"Leverkuzen\";\"other\"\n\"2878234\";\"Lävverkuuse\";\"other\"\n\"2878234\";\"lyfrkwzn\";\"other\"\n\"2878234\";\"rebakuzen\";\"other\"\n\"2878234\";\"Λεβερκούζεν\";\"other\"\n\"2878234\";\"Леверкузен\";\"other\"\n\"2878234\";\"ليفركوزن\";\"other\"\n\"2878234\";\"レバークーゼン\";\"other\"\n\"2878270\";\"Leutkirch im Allgäu\";\"main\"\n\"2878270\";\"Leutkirch im Allgau\";\"ascii\"\n\"2878270\";\"Leutkirch\";\"other\"\n\"2878284\";\"Leutesdorf\";\"main\"\n\"2878289\";\"Leutershausen\";\"main\"\n\"2878290\";\"Leutersdorf\";\"main\"\n\"2878308\";\"Leutenberg\";\"main\"\n\"2878310\";\"Leutenbach\";\"main\"\n\"2878313\";\"Leutenbach\";\"main\"\n\"2878342\";\"Leupoldsgrün\";\"main\"\n\"2878342\";\"Leupoldsgrun\";\"ascii\"\n\"2878350\";\"Leuna\";\"main\"\n\"2878351\";\"Leun\";\"main\"\n\"2878375\";\"Leuchtenberg\";\"main\"\n\"2878382\";\"Leubsdorf\";\"main\"\n\"2878384\";\"Leubsdorf\";\"main\"\n\"2878387\";\"Leubnitz\";\"main\"\n\"2878410\";\"Letzlingen\";\"main\"\n\"2878471\";\"Letschin\";\"main\"\n\"2878673\";\"Leopoldshöhe\";\"main\"\n\"2878673\";\"Leopoldshohe\";\"ascii\"\n\"2878693\";\"Leonberg\";\"main\"\n\"2878695\";\"Leonberg\";\"main\"\n\"2878695\";\"Leonsberg\";\"other\"\n\"2878695\";\"Леонберг\";\"other\"\n\"2878702\";\"Lenzkirch\";\"main\"\n\"2878731\";\"Lenzen\";\"main\"\n\"2878755\";\"Lentföhrden\";\"main\"\n\"2878755\";\"Lentfohrden\";\"ascii\"\n\"2878773\";\"Lensahn\";\"main\"\n\"2878784\";\"Lennestadt\";\"main\"\n\"2878784\";\"Stadt Lennestadt\";\"other\"\n\"2878824\";\"Lenggries\";\"main\"\n\"2878838\";\"Lengerich\";\"main\"\n\"2878838\";\"Lengerich Dorf\";\"other\"\n\"2878838\";\"Lengerikhe\";\"other\"\n\"2878838\";\"Ленгерихе\";\"other\"\n\"2878840\";\"Lengerich\";\"main\"\n\"2878844\";\"Lengenwang\";\"main\"\n\"2878852\";\"Lengenfeld\";\"main\"\n\"2878878\";\"Lengefeld\";\"main\"\n\"2878879\";\"Lengede\";\"main\"\n\"2878881\";\"Lengdorf\";\"main\"\n\"2878912\";\"Lemwerder\";\"main\"\n\"2878912\";\"Lemverder\";\"other\"\n\"2878943\";\"Lemgo\";\"main\"\n\"2878944\";\"Lemförde\";\"main\"\n\"2878944\";\"Lemforde\";\"ascii\"\n\"2878948\";\"Lemberg\";\"main\"\n\"2878982\";\"Leiwen\";\"main\"\n\"2878986\";\"Leitzkau\";\"main\"\n\"2879106\";\"Leißling\";\"main\"\n\"2879106\";\"Leissling\";\"ascii\"\n\"2879109\";\"Leisnig\";\"main\"\n\"2879139\";\"Leipzig\";\"main\"\n\"2879139\";\"Lajpcig\";\"other\"\n\"2879139\";\"Leipciga\";\"other\"\n\"2879139\";\"Leipcigas\";\"other\"\n\"2879139\";\"Leipsia\";\"other\"\n\"2879139\";\"Lejpcig\";\"other\"\n\"2879139\";\"Lipcse\";\"other\"\n\"2879139\";\"Lipsca\";\"other\"\n\"2879139\";\"Lipsia\";\"other\"\n\"2879139\";\"Lipsk\";\"other\"\n\"2879139\";\"Lipsko\";\"other\"\n\"2879139\";\"lai bi xi\";\"other\"\n\"2879139\";\"laipeuchihi\";\"other\"\n\"2879139\";\"laybzgh\";\"other\"\n\"2879139\";\"laypzyg\";\"other\"\n\"2879139\";\"lip sik\";\"other\"\n\"2879139\";\"liph sik\";\"other\"\n\"2879139\";\"lyypzyg\";\"other\"\n\"2879139\";\"raiputsu~ihi\";\"other\"\n\"2879139\";\"Λειψία\";\"other\"\n\"2879139\";\"Лайпциг\";\"other\"\n\"2879139\";\"Лајпциг\";\"other\"\n\"2879139\";\"Лейпциг\";\"other\"\n\"2879139\";\"לייפציג\";\"other\"\n\"2879139\";\"لايبزغ\";\"other\"\n\"2879139\";\"لایپزیگ\";\"other\"\n\"2879139\";\"লাইপ্‌ৎসিশ\";\"other\"\n\"2879139\";\"ไลป์ซิก\";\"other\"\n\"2879139\";\"ไลพ์ซิก\";\"other\"\n\"2879139\";\"ライプツィヒ\";\"other\"\n\"2879139\";\"萊比錫\";\"other\"\n\"2879139\";\"라이프치히\";\"other\"\n\"2879150\";\"Leipheim\";\"main\"\n\"2879159\";\"Leinzell\";\"main\"\n\"2879185\";\"Leinfelden-Echterdingen\";\"main\"\n\"2879193\";\"Leinefelde\";\"main\"\n\"2879200\";\"Leinburg\";\"main\"\n\"2879230\";\"Leimersheim\";\"main\"\n\"2879241\";\"Leimen\";\"main\"\n\"2879260\";\"Leimbach\";\"main\"\n\"2879276\";\"Leiferde\";\"main\"\n\"2879299\";\"Leidersbach\";\"main\"\n\"2879315\";\"Leichlingen\";\"main\"\n\"2879326\";\"Leiblfing\";\"main\"\n\"2879335\";\"Leibertingen\";\"main\"\n\"2879367\";\"Lehrte\";\"main\"\n\"2879375\";\"Lehrensteinsfeld\";\"main\"\n\"2879378\";\"Lehre\";\"main\"\n\"2879381\";\"Lehrberg\";\"main\"\n\"2879464\";\"Lehmkuhlen\";\"main\"\n\"2879498\";\"Lehmen\";\"main\"\n\"2879543\";\"Lehesten\";\"main\"\n\"2879620\";\"Lehe\";\"main\"\n\"2879653\";\"Legden\";\"main\"\n\"2879657\";\"Legau\";\"main\"\n\"2879666\";\"Leezen\";\"main\"\n\"2879667\";\"Leezen\";\"main\"\n\"2879668\";\"Leezdorf\";\"main\"\n\"2879685\";\"Leese\";\"main\"\n\"2879697\";\"Leer\";\"main\"\n\"2879697\";\"Lera\";\"other\"\n\"2879697\";\"Tuerkce\";\"other\"\n\"2879697\";\"Türkce\";\"other\"\n\"2879697\";\"lyr\";\"other\"\n\"2879697\";\"Лера\";\"other\"\n\"2879697\";\"ליר\";\"other\"\n\"2879713\";\"Leegebruch\";\"main\"\n\"2879758\";\"Leck\";\"main\"\n\"2879789\";\"Lechbruck\";\"main\"\n\"2879795\";\"Lebus\";\"main\"\n\"2879832\";\"Lebach\";\"main\"\n\"2879846\";\"Lawalde\";\"main\"\n\"2879865\";\"Lautrach\";\"main\"\n\"2879870\";\"Lautertal\";\"main\"\n\"2879892\";\"Lauterhofen\";\"main\"\n\"2879895\";\"Lauterecken\";\"main\"\n\"2879929\";\"Lauterbach\";\"main\"\n\"2879944\";\"Lauterbach\";\"main\"\n\"2879964\";\"Lauter\";\"main\"\n\"2879966\";\"Lauter\";\"main\"\n\"2879981\";\"Lautenbach\";\"main\"\n\"2880001\";\"Laußnitz\";\"main\"\n\"2880001\";\"Laussnitz\";\"ascii\"\n\"2880002\";\"Laußig\";\"main\"\n\"2880002\";\"Laussig\";\"ascii\"\n\"2880052\";\"Lauscha\";\"main\"\n\"2880077\";\"Laupheim\";\"main\"\n\"2880099\";\"Lauingen\";\"main\"\n\"2880099\";\"Lavinoen\";\"other\"\n\"2880102\";\"Laugna\";\"main\"\n\"2880111\";\"Lauffen am Neckar\";\"main\"\n\"2880111\";\"Lauffen\";\"other\"\n\"2880121\";\"Laufenburg\";\"main\"\n\"2880121\";\"Klein Laufenburg\";\"other\"\n\"2880121\";\"Laufenburg in Baden\";\"other\"\n\"2880129\";\"Laufen\";\"main\"\n\"2880129\";\"Lauffen\";\"other\"\n\"2880135\";\"Laufdorf\";\"main\"\n\"2880144\";\"Lauf an der Pegnitz\";\"main\"\n\"2880144\";\"Lauf\";\"other\"\n\"2880146\";\"Laufach\";\"main\"\n\"2880150\";\"Lauf\";\"main\"\n\"2880176\";\"Lauenhagen\";\"main\"\n\"2880181\";\"Lauenburg\";\"main\"\n\"2880181\";\"Lauenberg\";\"other\"\n\"2880184\";\"Lauenbrück\";\"main\"\n\"2880184\";\"Lauenbruck\";\"ascii\"\n\"2880189\";\"Lauenau\";\"main\"\n\"2880203\";\"Laudenbach\";\"main\"\n\"2880204\";\"Laudenbach\";\"main\"\n\"2880211\";\"Lauchröden\";\"main\"\n\"2880211\";\"Lauchroden\";\"ascii\"\n\"2880215\";\"Lauchheim\";\"main\"\n\"2880221\";\"Lauchhammer\";\"main\"\n\"2880221\";\"Lauchhammer East\";\"other\"\n\"2880221\";\"Stadt Lauchhammer\";\"other\"\n\"2880228\";\"Laucha\";\"main\"\n\"2880228\";\"Laucha an der Unstrut\";\"other\"\n\"2880280\";\"Lauben\";\"main\"\n\"2880282\";\"Lauben\";\"main\"\n\"2880308\";\"Laubach\";\"main\"\n\"2880310\";\"Laubach\";\"main\"\n\"2880351\";\"Lathen\";\"main\"\n\"2880357\";\"Lastrup\";\"main\"\n\"2880375\";\"Lassan\";\"main\"\n\"2880400\";\"Lasbek\";\"main\"\n\"2880400\";\"Lasbek-Dorf\";\"other\"\n\"2880425\";\"Lappersdorf\";\"main\"\n\"2880489\";\"Lanstrop\";\"main\"\n\"2880503\";\"Lankow\";\"main\"\n\"2880539\";\"Langweid\";\"main\"\n\"2880546\";\"Langwedel\";\"main\"\n\"2880547\";\"Langwedel\";\"main\"\n\"2880564\";\"Langula\";\"main\"\n\"2880565\";\"Langsur\";\"main\"\n\"2880573\";\"Langstedt\";\"main\"\n\"2880597\";\"Langquaid\";\"main\"\n\"2880597\";\"Langquaidt\";\"other\"\n\"2880597\";\"Lankwatt\";\"other\"\n\"2880613\";\"Langlingen\";\"main\"\n\"2880672\";\"Langgöns\";\"main\"\n\"2880672\";\"Langgons\";\"ascii\"\n\"2880672\";\"Lang Gons\";\"other\"\n\"2880672\";\"Lang Göns\";\"other\"\n\"2880684\";\"Langewiesen\";\"main\"\n\"2880726\";\"Langerwehe\";\"main\"\n\"2880758\";\"Langerringen\";\"main\"\n\"2880861\";\"Langeoog\";\"main\"\n\"2880862\";\"Langenzenn\";\"main\"\n\"2880871\";\"Langenwetzendorf\";\"main\"\n\"2880905\";\"Langenstein\";\"main\"\n\"2880912\";\"Langensendelbach\";\"main\"\n\"2880913\";\"Langenselbold\";\"main\"\n\"2880957\";\"Langenpreising\";\"main\"\n\"2880960\";\"Langenorla\";\"main\"\n\"2880965\";\"Langenneufnach\";\"main\"\n\"2880968\";\"Langenmosen\";\"main\"\n\"2880968\";\"Langenmoosen\";\"other\"\n\"2880978\";\"Langenlonsheim\";\"main\"\n\"2881019\";\"Langenhorn\";\"main\"\n\"2881057\";\"Langenhahn\";\"main\"\n\"2881062\";\"Langenhagen\";\"main\"\n\"2881085\";\"Langenfeld\";\"main\"\n\"2881088\";\"Langenfeld\";\"main\"\n\"2881094\";\"Langenenslingen\";\"main\"\n\"2881097\";\"Langeneichstädt\";\"main\"\n\"2881097\";\"Langeneichstadt\";\"ascii\"\n\"2881107\";\"Langendorf\";\"main\"\n\"2881128\";\"Langenburg\";\"main\"\n\"2881150\";\"Langenbogen\";\"main\"\n\"2881154\";\"Langenbernsdorf\";\"main\"\n\"2881175\";\"Langenberg\";\"main\"\n\"2881226\";\"Langenbach bei Marienberg\";\"main\"\n\"2881226\";\"Langenbach\";\"other\"\n\"2881244\";\"Langenbach\";\"main\"\n\"2881259\";\"Langenau\";\"main\"\n\"2881263\";\"Langenargen\";\"main\"\n\"2881263\";\"Arguna\";\"other\"\n\"2881267\";\"Langenaltheim\";\"main\"\n\"2881276\";\"Langen\";\"main\"\n\"2881278\";\"Langen\";\"main\"\n\"2881279\";\"Langen\";\"main\"\n\"2881291\";\"Langelsheim\";\"main\"\n\"2881291\";\"Langelheim\";\"other\"\n\"2881303\";\"Langeln\";\"main\"\n\"2881402\";\"Langballig\";\"main\"\n\"2881477\";\"Landstuhl\";\"main\"\n\"2881485\";\"Landshut\";\"main\"\n\"2881485\";\"Landeshuta\";\"other\"\n\"2881485\";\"Landskhut\";\"other\"\n\"2881485\";\"rantsufuto\";\"other\"\n\"2881485\";\"Ландсхут\";\"other\"\n\"2881485\";\"ランツフート\";\"other\"\n\"2881500\";\"Landscheid\";\"main\"\n\"2881505\";\"Landsberied\";\"main\"\n\"2881508\";\"Landsberg\";\"main\"\n\"2881508\";\"Landsberg bei Halle\";\"other\"\n\"2881509\";\"Landsberg am Lech\";\"main\"\n\"2881509\";\"Landsberg\";\"other\"\n\"2881526\";\"Landolfshausen\";\"main\"\n\"2881599\";\"Landesbergen\";\"main\"\n\"2881646\";\"Landau in der Pfalz\";\"main\"\n\"2881646\";\"Landau\";\"other\"\n\"2881646\";\"Ландау\";\"other\"\n\"2881646\";\"לנדאו\";\"other\"\n\"2881650\";\"Landau an der Isar\";\"main\"\n\"2881650\";\"Landau\";\"other\"\n\"2881659\";\"Lamstedt\";\"main\"\n\"2881661\";\"Lamspringe\";\"main\"\n\"2881682\";\"Lampertswalde\";\"main\"\n\"2881695\";\"Lampertheim\";\"main\"\n\"2881764\";\"Lamerdingen\";\"main\"\n\"2881767\";\"Lambsheim\";\"main\"\n\"2881770\";\"Lambrechtshagen\";\"main\"\n\"2881771\";\"Lambrecht\";\"main\"\n\"2881786\";\"Lam\";\"main\"\n\"2881787\";\"Lalling\";\"main\"\n\"2881789\";\"Lalendorf\";\"main\"\n\"2881857\";\"Laichingen\";\"main\"\n\"2881885\";\"Lahr\";\"main\"\n\"2881885\";\"Lahr/Schwarzwald\";\"other\"\n\"2881885\";\"Lar\";\"other\"\n\"2881885\";\"Лар\";\"other\"\n\"2881889\";\"Lahnstein\";\"main\"\n\"2881921\";\"Lähden\";\"main\"\n\"2881921\";\"Lahden\";\"ascii\"\n\"2881939\";\"Lägerdorf\";\"main\"\n\"2881939\";\"Lagerdorf\";\"ascii\"\n\"2881953\";\"Lage\";\"main\"\n\"2881956\";\"Lage\";\"main\"\n\"2881972\";\"Bad Laer\";\"main\"\n\"2881972\";\"Laer\";\"other\"\n\"2881973\";\"Laer\";\"main\"\n\"2881980\";\"Ladenburg\";\"main\"\n\"2881984\";\"Ladelund\";\"main\"\n\"2881991\";\"Ladbergen\";\"main\"\n\"2882028\";\"Lachendorf\";\"main\"\n\"2882033\";\"Lachen\";\"main\"\n\"2882059\";\"Laboe\";\"main\"\n\"2882059\";\"Labo\";\"other\"\n\"2882061\";\"Laberweinting\";\"main\"\n\"2882087\";\"Laatzen\";\"main\"\n\"2882091\";\"Bad Laasphe\";\"main\"\n\"2882091\";\"Laasphe\";\"other\"\n\"2882115\";\"Laar\";\"main\"\n\"2882141\";\"Laage\";\"main\"\n\"2882161\";\"Kyritz\";\"main\"\n\"2882167\";\"Kyllburg\";\"main\"\n\"2882167\";\"Killburg\";\"other\"\n\"2882192\";\"Kutzenhausen\";\"main\"\n\"2882224\";\"Kutenholz\";\"main\"\n\"2882237\";\"Kusterdingen\";\"main\"\n\"2882243\";\"Küsten\";\"main\"\n\"2882243\";\"Kusten\";\"ascii\"\n\"2882260\";\"Kusey\";\"main\"\n\"2882265\";\"Kusel\";\"main\"\n\"2882318\";\"Kürten\";\"main\"\n\"2882318\";\"Kurten\";\"ascii\"\n\"2882329\";\"Seiffen\";\"main\"\n\"2882329\";\"Zajfen\";\"other\"\n\"2882329\";\"Зайфен\";\"other\"\n\"2882331\";\"Kurort Oybin\";\"main\"\n\"2882332\";\"Kurort Oberwiesenthal\";\"main\"\n\"2882332\";\"Obervizental'\";\"other\"\n\"2882332\";\"Oberwiesenthal\";\"other\"\n\"2882332\";\"Обервизенталь\";\"other\"\n\"2882334\";\"Kurort Jonsdorf\";\"main\"\n\"2882334\";\"Johnsdorf\";\"other\"\n\"2882334\";\"Jonsdorf\";\"other\"\n\"2882335\";\"Kurort Gohrisch\";\"main\"\n\"2882335\";\"Gohrisch\";\"other\"\n\"2882342\";\"Kürnbach\";\"main\"\n\"2882342\";\"Kurnbach\";\"ascii\"\n\"2882347\";\"Kürnach\";\"main\"\n\"2882347\";\"Kurnach\";\"ascii\"\n\"2882366\";\"Küps\";\"main\"\n\"2882366\";\"Kups\";\"ascii\"\n\"2882366\";\"Kueps Oberfranken\";\"other\"\n\"2882375\";\"Kuppenheim\";\"main\"\n\"2882399\";\"Kupferzell\";\"main\"\n\"2882417\";\"Kupferberg\";\"main\"\n\"2882431\";\"Künzing\";\"main\"\n\"2882431\";\"Kunzing\";\"ascii\"\n\"2882439\";\"Künzelsau\";\"main\"\n\"2882439\";\"Kunzelsau\";\"ascii\"\n\"2882440\";\"Künzell\";\"main\"\n\"2882440\";\"Kunzell\";\"ascii\"\n\"2882464\";\"Kunreuth\";\"main\"\n\"2882529\";\"Kümmersbruck\";\"main\"\n\"2882529\";\"Kummersbruck\";\"ascii\"\n\"2882543\";\"Kummerfeld\";\"main\"\n\"2882563\";\"Kumhausen\";\"main\"\n\"2882575\";\"Külsheim\";\"main\"\n\"2882575\";\"Kulsheim\";\"ascii\"\n\"2882588\";\"Kulmbach\";\"main\"\n\"2882588\";\"Culmbach\";\"other\"\n\"2882588\";\"Kul'mbakh\";\"other\"\n\"2882588\";\"Stadt Kulmbach\";\"other\"\n\"2882588\";\"kurumubahha\";\"other\"\n\"2882588\";\"Кульмбах\";\"other\"\n\"2882588\";\"クルムバッハ\";\"other\"\n\"2882589\";\"Kulmain\";\"main\"\n\"2882589\";\"Culmain\";\"other\"\n\"2882597\";\"Küllstedt\";\"main\"\n\"2882597\";\"Kullstedt\";\"ascii\"\n\"2882597\";\"Kullstadt\";\"other\"\n\"2882681\";\"Kührstedt\";\"main\"\n\"2882681\";\"Kuhrstedt\";\"ascii\"\n\"2882729\";\"Kühndorf\";\"main\"\n\"2882729\";\"Kuhndorf\";\"ascii\"\n\"2883000\";\"Kühbach\";\"main\"\n\"2883000\";\"Kuhbach\";\"ascii\"\n\"2883005\";\"Kuhardt\";\"main\"\n\"2883066\";\"Kuddewörde\";\"main\"\n\"2883066\";\"Kuddeworde\";\"ascii\"\n\"2883151\";\"Kuchen\";\"main\"\n\"2883170\";\"Kubschütz\";\"main\"\n\"2883170\";\"Kubschutz\";\"ascii\"\n\"2883236\";\"Krün\";\"main\"\n\"2883236\";\"Krun\";\"ascii\"\n\"2883236\";\"Krunn\";\"other\"\n\"2883236\";\"Krünn\";\"other\"\n\"2883246\";\"Krumpa\";\"main\"\n\"2883246\";\"Crumpa\";\"other\"\n\"2883270\";\"Krummesse\";\"main\"\n\"2883317\";\"Krummennaab\";\"main\"\n\"2883317\";\"Krumennaab\";\"other\"\n\"2883410\";\"Krumbach\";\"main\"\n\"2883471\";\"Kruft\";\"main\"\n\"2883504\";\"Kröv\";\"main\"\n\"2883504\";\"Krov\";\"ascii\"\n\"2883552\";\"Krostitz\";\"main\"\n\"2883560\";\"Kröslin\";\"main\"\n\"2883560\";\"Kroslin\";\"ascii\"\n\"2883570\";\"Kropstädt\";\"main\"\n\"2883570\";\"Kropstadt\";\"ascii\"\n\"2883580\";\"Kroppenstedt\";\"main\"\n\"2883585\";\"Kröppelshagen-Fahrendorf\";\"main\"\n\"2883585\";\"Kroppelshagen-Fahrendorf\";\"ascii\"\n\"2883585\";\"Kroppelshagen\";\"other\"\n\"2883585\";\"Kroppelshausen\";\"other\"\n\"2883585\";\"Kröppelshagen\";\"other\"\n\"2883585\";\"Kröppelshausen\";\"other\"\n\"2883591\";\"Kropp\";\"main\"\n\"2883602\";\"Kröpelin\";\"main\"\n\"2883602\";\"Kropelin\";\"ascii\"\n\"2883602\";\"Kroeplin\";\"other\"\n\"2883647\";\"Kronshagen\";\"main\"\n\"2883749\";\"Kronburg\";\"main\"\n\"2883754\";\"Kronberg\";\"main\"\n\"2883754\";\"Cronberg in Taunus\";\"other\"\n\"2883777\";\"Kronau\";\"main\"\n\"2883784\";\"Kronach\";\"main\"\n\"2883793\";\"Krombach\";\"main\"\n\"2883794\";\"Krölpa\";\"main\"\n\"2883794\";\"Krolpa\";\"ascii\"\n\"2883860\";\"Kritzmow\";\"main\"\n\"2883920\";\"Kriftel\";\"main\"\n\"2883961\";\"Kriegsfeld\";\"main\"\n\"2883986\";\"Kriebstein\";\"main\"\n\"2883987\";\"Kriebitzsch\";\"main\"\n\"2883994\";\"Krickenbach\";\"main\"\n\"2884026\";\"Kreuzwertheim\";\"main\"\n\"2884050\";\"Kreuztal\";\"main\"\n\"2884050\";\"Kreuzthal\";\"other\"\n\"2884245\";\"Kreuzau\";\"main\"\n\"2884245\";\"Kreuzau uber Duren\";\"other\"\n\"2884245\";\"Kreuzau über Düren\";\"other\"\n\"2884296\";\"Kreut\";\"main\"\n\"2884296\";\"Kreuth\";\"other\"\n\"2884308\";\"Kretzschau\";\"main\"\n\"2884344\";\"Kressbronn am Bodensee\";\"main\"\n\"2884344\";\"Kressbronn\";\"other\"\n\"2884380\";\"Kremperheide\";\"main\"\n\"2884393\";\"Krempe\";\"main\"\n\"2884403\";\"Kremmen\";\"main\"\n\"2884451\";\"Kreischa\";\"main\"\n\"2884482\";\"Kreiensen\";\"main\"\n\"2884482\";\"Kreinsen\";\"other\"\n\"2884509\";\"Krefeld\";\"main\"\n\"2884509\";\"Crefeld\";\"other\"\n\"2884509\";\"Krefel'd\";\"other\"\n\"2884509\";\"Krefeld-Uerdingen\";\"other\"\n\"2884509\";\"Krieevel\";\"other\"\n\"2884509\";\"kureferuto\";\"other\"\n\"2884509\";\"Крефельд\";\"other\"\n\"2884509\";\"クレフェルト\";\"other\"\n\"2884509\";\"クレーフェルト\";\"other\"\n\"2884597\";\"Krebeck\";\"main\"\n\"2884625\";\"Krautheim\";\"main\"\n\"2884628\";\"Krauthausen\";\"main\"\n\"2884656\";\"Krauschwitz\";\"main\"\n\"2884667\";\"Krauchenwies\";\"main\"\n\"2884761\";\"Kranichfeld\";\"main\"\n\"2884779\";\"Kranenburg\";\"main\"\n\"2884779\";\"Cranenburg\";\"other\"\n\"2884823\";\"Kramerhof\";\"main\"\n\"2884850\";\"Krakow am See\";\"main\"\n\"2884850\";\"Krakow\";\"other\"\n\"2884878\";\"Krailling\";\"main\"\n\"2884885\";\"Kraiburg am Inn\";\"main\"\n\"2884885\";\"Craiburg\";\"other\"\n\"2884885\";\"Kraiberg\";\"other\"\n\"2884885\";\"Kraiburg\";\"other\"\n\"2885016\";\"Kraftsdorf\";\"main\"\n\"2885070\";\"Kötzting\";\"main\"\n\"2885070\";\"Kotzting\";\"ascii\"\n\"2885074\";\"Kötzschau\";\"main\"\n\"2885074\";\"Kotzschau\";\"ascii\"\n\"2885104\";\"Kottweiler-Schwanden\";\"main\"\n\"2885165\";\"Kottenheim\";\"main\"\n\"2885237\";\"Köthen\";\"main\"\n\"2885237\";\"Kothen\";\"ascii\"\n\"2885237\";\"Cothen\";\"other\"\n\"2885237\";\"Cöthen\";\"other\"\n\"2885237\";\"Kjoten\";\"other\"\n\"2885237\";\"Koethen\";\"other\"\n\"2885237\";\"Кётен\";\"other\"\n\"2885302\";\"Kößlarn\";\"main\"\n\"2885302\";\"Kosslarn\";\"ascii\"\n\"2885302\";\"Chostlarn\";\"other\"\n\"2885326\";\"Kossa\";\"main\"\n\"2885338\";\"Koserow\";\"main\"\n\"2885350\";\"Kosel\";\"main\"\n\"2885397\";\"Korschenbroich\";\"main\"\n\"2885407\";\"Körperich\";\"main\"\n\"2885407\";\"Korperich\";\"ascii\"\n\"2885408\";\"Kornwestheim\";\"main\"\n\"2885408\";\"Kornvestkhajm\";\"other\"\n\"2885408\";\"Kornwestheimium\";\"other\"\n\"2885408\";\"Корнвестхайм\";\"other\"\n\"2885412\";\"Korntal\";\"main\"\n\"2885436\";\"Körner\";\"main\"\n\"2885436\";\"Korner\";\"ascii\"\n\"2885479\";\"Körle\";\"main\"\n\"2885479\";\"Korle\";\"ascii\"\n\"2885495\";\"Kordel\";\"main\"\n\"2885536\";\"Korbach\";\"main\"\n\"2885540\";\"Korb\";\"main\"\n\"2885657\";\"Berlin Köpenick\";\"main\"\n\"2885657\";\"Berlin Koepenick\";\"ascii\"\n\"2885657\";\"Berlin-Kopenick\";\"other\"\n\"2885657\";\"Berlin-Köpenick\";\"other\"\n\"2885657\";\"Koepenick\";\"other\"\n\"2885657\";\"Köpenick\";\"other\"\n\"2885671\";\"Konzell\";\"main\"\n\"2885672\";\"Konz\";\"main\"\n\"2885672\";\"Conz\";\"other\"\n\"2885679\";\"Konstanz\";\"main\"\n\"2885679\";\"Constanca\";\"other\"\n\"2885679\";\"Constance\";\"other\"\n\"2885679\";\"Constanta\";\"other\"\n\"2885679\";\"Constanza\";\"other\"\n\"2885679\";\"Constança\";\"other\"\n\"2885679\";\"Constanţa\";\"other\"\n\"2885679\";\"Costanza\";\"other\"\n\"2885679\";\"Konstanc\";\"other\"\n\"2885679\";\"Konstancja\";\"other\"\n\"2885679\";\"Kostnice\";\"other\"\n\"2885679\";\"kang si tan ci\";\"other\"\n\"2885679\";\"konsutantsu\";\"other\"\n\"2885679\";\"qwnstnz\";\"other\"\n\"2885679\";\"Констанц\";\"other\"\n\"2885679\";\"קונסטנץ\";\"other\"\n\"2885679\";\"コンスタンツ\";\"other\"\n\"2885679\";\"康斯坦茨\";\"other\"\n\"2885688\";\"Konradsreuth\";\"main\"\n\"2885714\";\"Konnersreuth\";\"main\"\n\"2885714\";\"Konradsreuth\";\"other\"\n\"2885716\";\"Könnern\";\"main\"\n\"2885716\";\"Konnern\";\"ascii\"\n\"2885723\";\"Könitz\";\"main\"\n\"2885723\";\"Konitz\";\"ascii\"\n\"2885732\";\"Königs Wusterhausen\";\"main\"\n\"2885732\";\"Konigs Wusterhausen\";\"ascii\"\n\"2885734\";\"Königswinter\";\"main\"\n\"2885734\";\"Konigswinter\";\"ascii\"\n\"2885742\";\"Königswartha\";\"main\"\n\"2885742\";\"Konigswartha\";\"ascii\"\n\"2885746\";\"Königswalde\";\"main\"\n\"2885746\";\"Konigswalde\";\"ascii\"\n\"2885760\";\"Königstein im Taunus\";\"main\"\n\"2885760\";\"Konigstein im Taunus\";\"ascii\"\n\"2885760\";\"Konigstein\";\"other\"\n\"2885760\";\"Königstein\";\"other\"\n\"2885764\";\"Königstein\";\"main\"\n\"2885764\";\"Konigstein\";\"ascii\"\n\"2885764\";\"Koenigstein\";\"other\"\n\"2885765\";\"Königstein\";\"main\"\n\"2885765\";\"Konigstein\";\"ascii\"\n\"2885800\";\"Königslutter am Elm\";\"main\"\n\"2885800\";\"Konigslutter am Elm\";\"ascii\"\n\"2885800\";\"Konigslutter\";\"other\"\n\"2885800\";\"Königslutter\";\"other\"\n\"2885829\";\"Bad Königshofen im Grabfeld\";\"main\"\n\"2885829\";\"Bad Konigshofen im Grabfeld\";\"ascii\"\n\"2885829\";\"Bad Konigshofen\";\"other\"\n\"2885829\";\"Bad Königshofen\";\"other\"\n\"2885829\";\"Konigshofen\";\"other\"\n\"2885829\";\"Konigshofen im Grabfeld\";\"other\"\n\"2885829\";\"Königshofen\";\"other\"\n\"2885829\";\"Königshofen im Grabfeld\";\"other\"\n\"2885863\";\"Königshain\";\"main\"\n\"2885863\";\"Konigshain\";\"ascii\"\n\"2885883\";\"Königsfeld\";\"main\"\n\"2885883\";\"Konigsfeld\";\"ascii\"\n\"2885885\";\"Königsfeld\";\"main\"\n\"2885885\";\"Konigsfeld\";\"ascii\"\n\"2885888\";\"Königsfeld im Schwarzwald\";\"main\"\n\"2885888\";\"Konigsfeld im Schwarzwald\";\"ascii\"\n\"2885888\";\"Konigsfeld\";\"other\"\n\"2885888\";\"Königsfeld\";\"other\"\n\"2885895\";\"Königsee\";\"main\"\n\"2885895\";\"Konigsee\";\"ascii\"\n\"2885895\";\"Konigssee\";\"other\"\n\"2885895\";\"Königssee\";\"other\"\n\"2885898\";\"Königsdorf\";\"main\"\n\"2885898\";\"Konigsdorf\";\"ascii\"\n\"2885908\";\"Königsbrunn\";\"main\"\n\"2885908\";\"Konigsbrunn\";\"ascii\"\n\"2885910\";\"Königsbrück\";\"main\"\n\"2885910\";\"Konigsbruck\";\"ascii\"\n\"2885910\";\"Kinspork\";\"other\"\n\"2885912\";\"Königsbronn\";\"main\"\n\"2885912\";\"Konigsbronn\";\"ascii\"\n\"2885991\";\"Königheim\";\"main\"\n\"2885991\";\"Konigheim\";\"ascii\"\n\"2886006\";\"Köngernheim\";\"main\"\n\"2886006\";\"Kongernheim\";\"ascii\"\n\"2886008\";\"Köngen\";\"main\"\n\"2886008\";\"Kongen\";\"ascii\"\n\"2886242\";\"Köln\";\"main\"\n\"2886242\";\"Koeln\";\"ascii\"\n\"2886242\";\"Augusta Ubiorum\";\"other\"\n\"2886242\";\"Cologne\";\"other\"\n\"2886242\";\"Colonia\";\"other\"\n\"2886242\";\"Colonia Agrippina\";\"other\"\n\"2886242\";\"Colonia Agrippinensis\";\"other\"\n\"2886242\";\"Colonia Claudia Agrippina\";\"other\"\n\"2886242\";\"Colònia\";\"other\"\n\"2886242\";\"Colônia\";\"other\"\n\"2886242\";\"Culonia\";\"other\"\n\"2886242\";\"K'oln\";\"other\"\n\"2886242\";\"Keln\";\"other\"\n\"2886242\";\"Kelnas\";\"other\"\n\"2886242\";\"Kelne\";\"other\"\n\"2886242\";\"Keulen\";\"other\"\n\"2886242\";\"Kjol'n\";\"other\"\n\"2886242\";\"Koelle\";\"other\"\n\"2886242\";\"Kolin nad Rynem\";\"other\"\n\"2886242\";\"Kolin nad Rynom\";\"other\"\n\"2886242\";\"Koln\";\"other\"\n\"2886242\";\"Kolonia\";\"other\"\n\"2886242\";\"Kolonjo\";\"other\"\n\"2886242\";\"Kolín nad Rýnem\";\"other\"\n\"2886242\";\"Kolín nad Rýnom\";\"other\"\n\"2886242\";\"Kölle\";\"other\"\n\"2886242\";\"Lungsod ng Cologne\";\"other\"\n\"2886242\";\"ke long\";\"other\"\n\"2886242\";\"kerun\";\"other\"\n\"2886242\";\"kholoy\";\"other\"\n\"2886242\";\"kln\";\"other\"\n\"2886242\";\"koelleun\";\"other\"\n\"2886242\";\"kwlwnya\";\"other\"\n\"2886242\";\"qln\";\"other\"\n\"2886242\";\"Ķelne\";\"other\"\n\"2886242\";\"Κολωνία\";\"other\"\n\"2886242\";\"Келн\";\"other\"\n\"2886242\";\"Кьолн\";\"other\"\n\"2886242\";\"Кёльн\";\"other\"\n\"2886242\";\"קלן\";\"other\"\n\"2886242\";\"كولونيا\";\"other\"\n\"2886242\";\"کلن\";\"other\"\n\"2886242\";\"โคโลญ\";\"other\"\n\"2886242\";\"ケルン\";\"other\"\n\"2886242\";\"科隆\";\"other\"\n\"2886242\";\"쾰른\";\"other\"\n\"2886281\";\"Kölln-Reisiek\";\"main\"\n\"2886281\";\"Kolln-Reisiek\";\"ascii\"\n\"2886285\";\"Kollnburg\";\"main\"\n\"2886303\";\"Kollmar\";\"main\"\n\"2886363\";\"Kölleda\";\"main\"\n\"2886363\";\"Kolleda\";\"ascii\"\n\"2886382\";\"Kolkwitz\";\"main\"\n\"2886382\";\"Golkojce\";\"other\"\n\"2886404\";\"Kolitzheim\";\"main\"\n\"2886434\";\"Kölbingen\";\"main\"\n\"2886434\";\"Kolbingen\";\"ascii\"\n\"2886435\";\"Kolbingen\";\"main\"\n\"2886446\";\"Kolbermoor\";\"main\"\n\"2886730\";\"Kohlberg\";\"main\"\n\"2886731\";\"Kohlberg\";\"main\"\n\"2886832\";\"Köfering\";\"main\"\n\"2886832\";\"Kofering\";\"ascii\"\n\"2886839\";\"Ködnitz\";\"main\"\n\"2886839\";\"Kodnitz\";\"ascii\"\n\"2886843\";\"Köditz\";\"main\"\n\"2886843\";\"Koditz\";\"ascii\"\n\"2886846\";\"Kodersdorf\";\"main\"\n\"2886924\";\"Kochel\";\"main\"\n\"2886946\";\"Koblenz\";\"main\"\n\"2886946\";\"Coblenca\";\"other\"\n\"2886946\";\"Coblence\";\"other\"\n\"2886946\";\"Coblentz\";\"other\"\n\"2886946\";\"Coblenz\";\"other\"\n\"2886946\";\"Coblenza\";\"other\"\n\"2886946\";\"Coblença\";\"other\"\n\"2886946\";\"Confluentes\";\"other\"\n\"2886946\";\"Koblenc\";\"other\"\n\"2886946\";\"Koblencja\";\"other\"\n\"2886946\";\"ke bu lun ci\";\"other\"\n\"2886946\";\"koburentsu\";\"other\"\n\"2886946\";\"qwblnz\";\"other\"\n\"2886946\";\"Кобленц\";\"other\"\n\"2886946\";\"קובלנץ\";\"other\"\n\"2886946\";\"コブレンツ\";\"other\"\n\"2886946\";\"科布倫茨\";\"other\"\n\"2887140\";\"Knittlingen\";\"main\"\n\"2887141\";\"Knittelsheim\";\"main\"\n\"2887194\";\"Knetzgau\";\"main\"\n\"2887290\";\"Klütz\";\"main\"\n\"2887290\";\"Klutz\";\"ascii\"\n\"2887302\";\"Klüsserath\";\"main\"\n\"2887302\";\"Klusserath\";\"ascii\"\n\"2887315\";\"Kluse\";\"main\"\n\"2887380\";\"Klötze\";\"main\"\n\"2887380\";\"Klotze\";\"ascii\"\n\"2887380\";\"Kloetze\";\"other\"\n\"2887385\";\"Klotten\";\"main\"\n\"2887444\";\"Klostermansfeld\";\"main\"\n\"2887444\";\"Kloster Mansfield\";\"other\"\n\"2887449\";\"Klosterlechfeld\";\"main\"\n\"2887637\";\"Klitten\";\"main\"\n\"2887637\";\"Kletno\";\"other\"\n\"2887637\";\"Klětno\";\"other\"\n\"2887645\";\"Klipphausen\";\"main\"\n\"2887686\";\"Klink\";\"main\"\n\"2887713\";\"Klingenthal\";\"main\"\n\"2887718\";\"Klingenmünster\";\"main\"\n\"2887718\";\"Klingenmunster\";\"ascii\"\n\"2887736\";\"Klingenberg am Main\";\"main\"\n\"2887736\";\"Klingenberg\";\"other\"\n\"2887805\";\"Klietz\";\"main\"\n\"2887812\";\"Klieken\";\"main\"\n\"2887835\";\"Kleve\";\"main\"\n\"2887835\";\"Cleeve\";\"other\"\n\"2887835\";\"Cleve\";\"other\"\n\"2887835\";\"Cleveris\";\"other\"\n\"2887835\";\"Cleves\";\"other\"\n\"2887835\";\"Clèves\";\"other\"\n\"2887835\";\"Cléveris\";\"other\"\n\"2887835\";\"Kleef\";\"other\"\n\"2887835\";\"kurefe\";\"other\"\n\"2887835\";\"Клеве\";\"other\"\n\"2887835\";\"クレーフェ\";\"other\"\n\"2887857\";\"Klettbach\";\"main\"\n\"2887987\";\"Klein-Winternheim\";\"main\"\n\"2888015\";\"Kleinwenden\";\"main\"\n\"2888015\";\"Grosslohra-Kleinwenden\";\"other\"\n\"2888015\";\"Großlohra-Kleinwenden\";\"other\"\n\"2888047\";\"Klein Wanzleben\";\"main\"\n\"2888053\";\"Kleinwallstadt\";\"main\"\n\"2888210\";\"Kleinsendelbach\";\"main\"\n\"2888222\";\"Klein Schwülper\";\"main\"\n\"2888222\";\"Klein Schwulper\";\"ascii\"\n\"2888309\";\"Klein Rönnau\";\"main\"\n\"2888309\";\"Klein Ronnau\";\"ascii\"\n\"2888316\";\"Klein Rogahn\";\"main\"\n\"2888323\";\"Kleinrinderfeld\";\"main\"\n\"2888344\";\"Klein Reken\";\"main\"\n\"2888411\";\"Kleinostheim\";\"main\"\n\"2888436\";\"Klein Nordende\";\"main\"\n\"2888520\";\"Kleinmaischeid\";\"main\"\n\"2888523\";\"Kleinmachnow\";\"main\"\n\"2888584\";\"Kleinlangheim\";\"main\"\n\"2888684\";\"Kleinkahl\";\"main\"\n\"2888751\";\"Kleinheubach\";\"main\"\n\"2888812\";\"Klein Gusborn\";\"main\"\n\"2888890\";\"Kleinfurra\";\"main\"\n\"2889709\";\"Kleinblittersdorf\";\"main\"\n\"2889729\";\"Klein Berßen\";\"main\"\n\"2889729\";\"Klein Berssen\";\"ascii\"\n\"2889814\";\"Kleinaitingen\";\"main\"\n\"2889975\";\"Klausen\";\"main\"\n\"2889990\";\"Klausdorf\";\"main\"\n\"2890155\";\"Kitzscher\";\"main\"\n\"2890158\";\"Kitzingen\";\"main\"\n\"2890168\";\"Kitzen\";\"main\"\n\"2890197\";\"Kist\";\"main\"\n\"2890199\";\"Kißlegg\";\"main\"\n\"2890199\";\"Kisslegg\";\"ascii\"\n\"2890202\";\"Kissing\";\"main\"\n\"2890204\";\"Kissenbrück\";\"main\"\n\"2890204\";\"Kissenbruck\";\"ascii\"\n\"2890204\";\"Kissinbruck\";\"other\"\n\"2890204\";\"Kissinbrück\";\"other\"\n\"2890218\";\"Kisdorf\";\"main\"\n\"2890222\";\"Kirtorf\";\"main\"\n\"2890222\";\"Kirthoff\";\"other\"\n\"2890226\";\"Kirschweiler\";\"main\"\n\"2890273\";\"Kirschau\";\"main\"\n\"2890278\";\"Kirrweiler\";\"main\"\n\"2890314\";\"Kirn\";\"main\"\n\"2890322\";\"Kirkel\";\"main\"\n\"2890327\";\"Kirchzell\";\"main\"\n\"2890328\";\"Kirchzarten\";\"main\"\n\"2890329\";\"Kirchworbis\";\"main\"\n\"2890336\";\"Kirchweidach\";\"main\"\n\"2890344\";\"Kirchwalsede\";\"main\"\n\"2890353\";\"Kirchtimke\";\"main\"\n\"2890381\";\"Kirchseeon\";\"main\"\n\"2890382\";\"Kirchseelte\";\"main\"\n\"2890394\";\"Kirchroth\";\"main\"\n\"2890420\";\"Kirchlinteln\";\"main\"\n\"2890425\";\"Kirchlengern\";\"main\"\n\"2890429\";\"Kirchlauter\";\"main\"\n\"2890442\";\"Kirchhundem\";\"main\"\n\"2890442\";\"Kirchhunden\";\"other\"\n\"2890473\";\"Kirchheim unter Teck\";\"main\"\n\"2890473\";\"Kirchheim\";\"other\"\n\"2890473\";\"Kirkhgajm-unter-Tek\";\"other\"\n\"2890473\";\"Кирхгайм-унтер-Тек\";\"other\"\n\"2890478\";\"Kirchheimbolanden\";\"main\"\n\"2890478\";\"Kircheimbolanden\";\"other\"\n\"2890479\";\"Kirchheim bei München\";\"main\"\n\"2890479\";\"Kirchheim bei Muenchen\";\"ascii\"\n\"2890479\";\"Kirchheim\";\"other\"\n\"2890480\";\"Kirchheim an der Weinstraße\";\"main\"\n\"2890480\";\"Kirchheim an der Weinstrasse\";\"ascii\"\n\"2890480\";\"Kirchheim\";\"other\"\n\"2890480\";\"Kirchheim an der Eck\";\"other\"\n\"2890481\";\"Kirchheim am Ries\";\"main\"\n\"2890481\";\"Kirchheim\";\"other\"\n\"2890482\";\"Kirchheim am Neckar\";\"main\"\n\"2890482\";\"Kirchheim\";\"other\"\n\"2890484\";\"Kirchheim\";\"main\"\n\"2890485\";\"Kirchheim\";\"main\"\n\"2890487\";\"Kirchheim\";\"main\"\n\"2890488\";\"Kirchheim\";\"main\"\n\"2890495\";\"Kirchhaslach\";\"main\"\n\"2890499\";\"Kirchham\";\"main\"\n\"2890504\";\"Kirchhain\";\"main\"\n\"2890511\";\"Kirchgellersen\";\"main\"\n\"2890526\";\"Kirchenthumbach\";\"main\"\n\"2890526\";\"Tumbach\";\"other\"\n\"2890527\";\"Kirchentellinsfurt\";\"main\"\n\"2890532\";\"Kirchensittenbach\";\"main\"\n\"2890539\";\"Kirchenpingarten\";\"main\"\n\"2890544\";\"Kirchenlamitz\";\"main\"\n\"2890586\";\"Kirchen\";\"main\"\n\"2890586\";\"Kirchen an der Sieg\";\"other\"\n\"2890590\";\"Eiselfing\";\"main\"\n\"2890590\";\"Kircheiselfing\";\"other\"\n\"2890592\";\"Kirchehrenbach\";\"main\"\n\"2890599\";\"Kirchdorf im Wald\";\"main\"\n\"2890599\";\"Kirchdorf\";\"other\"\n\"2890602\";\"Kirchdorf am Inn\";\"main\"\n\"2890602\";\"Kirchdorf\";\"other\"\n\"2890609\";\"Kirchdorf\";\"main\"\n\"2890609\";\"Kierchdorf\";\"other\"\n\"2890615\";\"Kirchdorf\";\"main\"\n\"2890616\";\"Kirchdorf\";\"main\"\n\"2890617\";\"Kirchdorf\";\"main\"\n\"2890635\";\"Kirchbrak\";\"main\"\n\"2890645\";\"Kirchberg an der Murr\";\"main\"\n\"2890645\";\"Kirchberg\";\"other\"\n\"2890646\";\"Kirchberg an der Jagst\";\"main\"\n\"2890646\";\"Kirchberg\";\"other\"\n\"2890647\";\"Kirchberg an der Iller\";\"main\"\n\"2890647\";\"Kirchberg\";\"other\"\n\"2890657\";\"Kirchberg\";\"main\"\n\"2890657\";\"Erlbach-Kirchberg\";\"other\"\n\"2890659\";\"Kirchberg\";\"main\"\n\"2890660\";\"Kirchberg\";\"main\"\n\"2890662\";\"Kirchberg\";\"main\"\n\"2890662\";\"Kirchberg im Wald\";\"other\"\n\"2890769\";\"Kirchardt\";\"main\"\n\"2890770\";\"Kirchanschöring\";\"main\"\n\"2890770\";\"Kirchanschoring\";\"ascii\"\n\"2890795\";\"Kippenheim\";\"main\"\n\"2890854\";\"Kindsbach\";\"main\"\n\"2890873\";\"Kinderbeuern\";\"main\"\n\"2890874\";\"Kindenheim\";\"main\"\n\"2890880\";\"Kindelbrück\";\"main\"\n\"2890880\";\"Kindelbruck\";\"ascii\"\n\"2890984\";\"Kieselbronn\";\"main\"\n\"2891014\";\"Kierspe\";\"main\"\n\"2891069\";\"Kienberg\";\"main\"\n\"2891122\";\"Kiel\";\"main\"\n\"2891122\";\"Kielia\";\"other\"\n\"2891122\";\"Kielo\";\"other\"\n\"2891122\";\"Kijlo\";\"other\"\n\"2891122\";\"Kil\";\"other\"\n\"2891122\";\"Kil'\";\"other\"\n\"2891122\";\"Kilonia\";\"other\"\n\"2891122\";\"Kyle\";\"other\"\n\"2891122\";\"ji er\";\"other\"\n\"2891122\";\"kil\";\"other\"\n\"2891122\";\"kiru\";\"other\"\n\"2891122\";\"kyl\";\"other\"\n\"2891122\";\"qyl\";\"other\"\n\"2891122\";\"Κίελο\";\"other\"\n\"2891122\";\"Кил\";\"other\"\n\"2891122\";\"Киль\";\"other\"\n\"2891122\";\"קיל\";\"other\"\n\"2891122\";\"كيل\";\"other\"\n\"2891122\";\"キール\";\"other\"\n\"2891122\";\"基尔\";\"other\"\n\"2891122\";\"킬\";\"other\"\n\"2891175\";\"Kiefersfelden\";\"main\"\n\"2891205\";\"Kiedrich\";\"main\"\n\"2891212\";\"Kiebitzreihe\";\"main\"\n\"2891258\";\"Kevelaer\";\"main\"\n\"2891282\";\"Ketzin\";\"main\"\n\"2891297\";\"Kettig\";\"main\"\n\"2891300\";\"Kettershausen\";\"main\"\n\"2891310\";\"Kettenkamp\";\"main\"\n\"2891343\";\"Ketsch\";\"main\"\n\"2891368\";\"Kessin\";\"main\"\n\"2891480\";\"Kerzenheim\";\"main\"\n\"2891524\";\"Kerpen\";\"main\"\n\"2891524\";\"Kerpe\";\"other\"\n\"2891524\";\"Керпен\";\"other\"\n\"2891590\";\"Kenzingen\";\"main\"\n\"2891605\";\"Kenn\";\"main\"\n\"2891621\";\"Kempten (Allgäu)\";\"main\"\n\"2891621\";\"Kempten (Allgaeu)\";\"ascii\"\n\"2891640\";\"Kempenich\";\"main\"\n\"2891643\";\"Kempen\";\"main\"\n\"2891653\";\"Kemnitz\";\"main\"\n\"2891668\";\"Kemnath\";\"main\"\n\"2891668\";\"Kemmath Stadt\";\"other\"\n\"2891668\";\"Kemnat\";\"other\"\n\"2891687\";\"Kemmern\";\"main\"\n\"2891718\";\"Kemberg\";\"main\"\n\"2891742\";\"Kelsterbach\";\"main\"\n\"2891749\";\"Kellmünz\";\"main\"\n\"2891749\";\"Kellmunz\";\"ascii\"\n\"2891750\";\"Kellinghusen\";\"main\"\n\"2891814\";\"Kellenhusen\";\"main\"\n\"2891831\";\"Kell\";\"main\"\n\"2891832\";\"Kelkheim (Taunus)\";\"main\"\n\"2891832\";\"Kelkheim\";\"other\"\n\"2891832\";\"Stadt Kelkheim (Taunus)\";\"other\"\n\"2891834\";\"Kelheim\";\"main\"\n\"2891844\";\"Kelbra\";\"main\"\n\"2891846\";\"Kelberg\";\"main\"\n\"2891846\";\"Kehlberg\";\"other\"\n\"2891899\";\"Kehrig\";\"main\"\n\"2891951\";\"Kehl\";\"main\"\n\"2891951\";\"Kehl am Rhein\";\"other\"\n\"2891951\";\"Kehl im Hanauerland\";\"other\"\n\"2891951\";\"Kel'\";\"other\"\n\"2891951\";\"Kiel\";\"other\"\n\"2891951\";\"Stadt Kehl\";\"other\"\n\"2891951\";\"keru\";\"other\"\n\"2891951\";\"Кель\";\"other\"\n\"2891951\";\"ケール\";\"other\"\n\"2891973\";\"Kefenrod\";\"main\"\n\"2891991\";\"Kayna\";\"main\"\n\"2891993\";\"Kayhude\";\"main\"\n\"2892008\";\"Kavelstorf\";\"main\"\n\"2892008\";\"Kavelsdorf\";\"other\"\n\"2892052\";\"Kaulsdorf\";\"main\"\n\"2892078\";\"Kaufering\";\"main\"\n\"2892080\";\"Kaufbeuren\";\"main\"\n\"2892101\";\"Kaub\";\"main\"\n\"2892106\";\"Katzweiler\";\"main\"\n\"2892118\";\"Katzhütte\";\"main\"\n\"2892118\";\"Katzhutte\";\"ascii\"\n\"2892192\";\"Katzenelnbogen\";\"main\"\n\"2892192\";\"Katzenelnbogn\";\"other\"\n\"2892409\";\"Katharinenberg\";\"main\"\n\"2892448\";\"Kastorf\";\"main\"\n\"2892459\";\"Kastl\";\"main\"\n\"2892460\";\"Kastl\";\"main\"\n\"2892460\";\"Castel\";\"other\"\n\"2892461\";\"Kastl\";\"main\"\n\"2892485\";\"Kastellaun\";\"main\"\n\"2892518\";\"Kassel\";\"main\"\n\"2892518\";\"Cassel\";\"other\"\n\"2892518\";\"Castellum\";\"other\"\n\"2892518\";\"Chasalla\";\"other\"\n\"2892518\";\"Kasel\";\"other\"\n\"2892518\";\"Kaselo\";\"other\"\n\"2892518\";\"Kassel'\";\"other\"\n\"2892518\";\"ka sai er\";\"other\"\n\"2892518\";\"kasseru\";\"other\"\n\"2892518\";\"Κάσελ\";\"other\"\n\"2892518\";\"Касел\";\"other\"\n\"2892518\";\"Кассель\";\"other\"\n\"2892518\";\"カッセル\";\"other\"\n\"2892518\";\"卡塞尔\";\"other\"\n\"2892518\";\"卡塞爾\";\"other\"\n\"2892520\";\"Kasseedorf\";\"main\"\n\"2892563\";\"Kasendorf\";\"main\"\n\"2892571\";\"Kasel\";\"main\"\n\"2892648\";\"Karstädt\";\"main\"\n\"2892648\";\"Karstadt\";\"ascii\"\n\"2892652\";\"Karsdorf\";\"main\"\n\"2892652\";\"Carsdorf\";\"other\"\n\"2892658\";\"Karsbach\";\"main\"\n\"2892786\";\"Karlstadt\";\"main\"\n\"2892794\";\"Karlsruhe\";\"main\"\n\"2892794\";\"Carlsruhe\";\"other\"\n\"2892794\";\"Carolsruha\";\"other\"\n\"2892794\";\"Karlsroue\";\"other\"\n\"2892794\";\"Karlsrue\";\"other\"\n\"2892794\";\"Karlsrueh\";\"other\"\n\"2892794\";\"ka er si lu e\";\"other\"\n\"2892794\";\"kaleulseulue\";\"other\"\n\"2892794\";\"karlsrwhh\";\"other\"\n\"2892794\";\"karusurue\";\"other\"\n\"2892794\";\"Καρλσρούη\";\"other\"\n\"2892794\";\"Карлсруе\";\"other\"\n\"2892794\";\"Карлсруэ\";\"other\"\n\"2892794\";\"קארלסרוהה\";\"other\"\n\"2892794\";\"كارلسروهه\";\"other\"\n\"2892794\";\"کارلسروهه\";\"other\"\n\"2892794\";\"კარლსრუე\";\"other\"\n\"2892794\";\"カールスルーエ\";\"other\"\n\"2892794\";\"卡尔斯鲁厄\";\"other\"\n\"2892794\";\"카를스루에\";\"other\"\n\"2892808\";\"Karlskron\";\"main\"\n\"2892810\";\"Karlshuld\";\"main\"\n\"2892865\";\"Karlshagen\";\"main\"\n\"2892865\";\"Carlshagen\";\"other\"\n\"2892867\";\"Bad Karlshafen\";\"main\"\n\"2892867\";\"Carlshafen\";\"other\"\n\"2892867\";\"Karlshafen\";\"other\"\n\"2892874\";\"Karlsfeld\";\"main\"\n\"2892980\";\"Karben\";\"main\"\n\"2892988\";\"Karbach\";\"main\"\n\"2892996\";\"Kapsweyer\";\"main\"\n\"2893022\";\"Kappelrodeck\";\"main\"\n\"2893023\";\"Kappeln\";\"main\"\n\"2893023\";\"Kapellen\";\"other\"\n\"2893023\";\"Kappalen\";\"other\"\n\"2893212\";\"Kannawurf\";\"main\"\n\"2893212\";\"Cannawurf\";\"other\"\n\"2893237\";\"Kandern\";\"main\"\n\"2893244\";\"Kandel\";\"main\"\n\"2893255\";\"Kamsdorf\";\"main\"\n\"2893264\";\"Kamp-Lintfort\";\"main\"\n\"2893307\";\"Kamp-Bornhofen\";\"main\"\n\"2893328\";\"Kammerstein\";\"main\"\n\"2893437\";\"Kamenz\";\"main\"\n\"2893437\";\"Kamjenc\";\"other\"\n\"2893438\";\"Kamen\";\"main\"\n\"2893516\";\"Kaltenwestheim\";\"main\"\n\"2893534\";\"Kaltennordheim\";\"main\"\n\"2893544\";\"Kaltenkirchen\";\"main\"\n\"2893544\";\"Kolenkarken\";\"other\"\n\"2893572\";\"Kaltenengers\";\"main\"\n\"2893717\";\"Kallstadt\";\"main\"\n\"2893721\";\"Kallmünz\";\"main\"\n\"2893721\";\"Kallmunz\";\"ascii\"\n\"2893721\";\"Kalmunz\";\"other\"\n\"2893762\";\"Kall\";\"main\"\n\"2893792\";\"Kalkhorst\";\"main\"\n\"2893837\";\"Kalkar\";\"main\"\n\"2893837\";\"Calkar\";\"other\"\n\"2893868\";\"Kalefeld\";\"main\"\n\"2893881\";\"Kalchreuth\";\"main\"\n\"2893939\";\"Kalbe\";\"main\"\n\"2893939\";\"Calbe\";\"other\"\n\"2893954\";\"Kakenstorf\";\"main\"\n\"2893983\";\"Kaisheim\";\"main\"\n\"2893983\";\"Kaysersheim\";\"other\"\n\"2894003\";\"Kaiserslautern\";\"main\"\n\"2894003\";\"Kaiserlautern\";\"other\"\n\"2894003\";\"Kaiserslantern\";\"other\"\n\"2894003\";\"Kaizerslauternas\";\"other\"\n\"2894003\";\"Kajzerslautern\";\"other\"\n\"2894003\";\"kai sa si lao teng\";\"other\"\n\"2894003\";\"kaijeoseullauteleun\";\"other\"\n\"2894003\";\"kaizasurauterun\";\"other\"\n\"2894003\";\"ki se xrs lea theirn\";\"other\"\n\"2894003\";\"Кайзерслаутерн\";\"other\"\n\"2894003\";\"Кајзерслаутерн\";\"other\"\n\"2894003\";\"קייזרסלאוטרן\";\"other\"\n\"2894003\";\"کائزرسلائوٹرن\";\"other\"\n\"2894003\";\"ไกเซอร์สเลาเทิร์น\";\"other\"\n\"2894003\";\"カイザースラウテルン\";\"other\"\n\"2894003\";\"凯撒斯劳滕\";\"other\"\n\"2894003\";\"카이저슬라우테른\";\"other\"\n\"2894007\";\"Kaisersesch\";\"main\"\n\"2894007\";\"Kaisersech\";\"other\"\n\"2894014\";\"Kaisersbach\";\"main\"\n\"2894245\";\"Kahl am Main\";\"main\"\n\"2894245\";\"Kahl\";\"other\"\n\"2894247\";\"Kahla\";\"main\"\n\"2894335\";\"Kadenbach\";\"main\"\n\"2894375\";\"Kaarst\";\"main\"\n\"2894394\";\"Jüterbog\";\"main\"\n\"2894394\";\"Juterbog\";\"ascii\"\n\"2894394\";\"Jueterbog\";\"other\"\n\"2894415\";\"Jürgenshagen\";\"main\"\n\"2894415\";\"Jurgenshagen\";\"ascii\"\n\"2894456\";\"Jünkerath\";\"main\"\n\"2894456\";\"Junkerath\";\"ascii\"\n\"2894476\";\"Jungingen\";\"main\"\n\"2894553\";\"Jülich\";\"main\"\n\"2894553\";\"Julich\";\"ascii\"\n\"2894566\";\"Julbach\";\"main\"\n\"2894569\";\"Juist\";\"main\"\n\"2894576\";\"Jühnde\";\"main\"\n\"2894576\";\"Juhnde\";\"ascii\"\n\"2894581\";\"Jugenheim\";\"main\"\n\"2894617\";\"Judenbach\";\"main\"\n\"2894625\";\"Jüchsen\";\"main\"\n\"2894625\";\"Juchsen\";\"ascii\"\n\"2894637\";\"Jüchen\";\"main\"\n\"2894637\";\"Juchen\";\"ascii\"\n\"2894644\";\"Jübek\";\"main\"\n\"2894644\";\"Jubek\";\"ascii\"\n\"2894702\";\"Jork\";\"main\"\n\"2894707\";\"Jördenstorf\";\"main\"\n\"2894707\";\"Jordenstorf\";\"ascii\"\n\"2894737\";\"Jöhstadt\";\"main\"\n\"2894737\";\"Johstadt\";\"ascii\"\n\"2894771\";\"Johanniskirchen\";\"main\"\n\"2894814\";\"Johanngeorgenstadt\";\"main\"\n\"2894833\";\"Johannesberg\";\"main\"\n\"2894855\";\"Jockgrim\";\"main\"\n\"2894884\";\"Joachimsthal\";\"main\"\n\"2894897\";\"Jever\";\"main\"\n\"2894899\";\"Jevenstedt\";\"main\"\n\"2894907\";\"Jetzendorf\";\"main\"\n\"2894944\";\"Jestetten\";\"main\"\n\"2894945\";\"Jesteburg\";\"main\"\n\"2894948\";\"Jeßnitz\";\"main\"\n\"2894948\";\"Jessnitz\";\"ascii\"\n\"2894962\";\"Jessen\";\"main\"\n\"2894970\";\"Jesewitz\";\"main\"\n\"2894977\";\"Jesenwang\";\"main\"\n\"2894982\";\"Jesberg\";\"main\"\n\"2894988\";\"Jerxheim\";\"main\"\n\"2894998\";\"Jersbek\";\"main\"\n\"2895000\";\"Jerrishoe\";\"main\"\n\"2895008\";\"Jerichow\";\"main\"\n\"2895034\";\"Jengen\";\"main\"\n\"2895044\";\"Jena\";\"main\"\n\"2895044\";\"Iena\";\"other\"\n\"2895044\";\"Iéna\";\"other\"\n\"2895044\";\"Jéna\";\"other\"\n\"2895044\";\"i~ena\";\"other\"\n\"2895044\";\"jena\";\"other\"\n\"2895044\";\"ye na\";\"other\"\n\"2895044\";\"yena\";\"other\"\n\"2895044\";\"Йена\";\"other\"\n\"2895044\";\"জেনা\";\"other\"\n\"2895044\";\"イェーナ\";\"other\"\n\"2895044\";\"耶拿\";\"other\"\n\"2895044\";\"예나\";\"other\"\n\"2895051\";\"Jemgum\";\"main\"\n\"2895053\";\"Jembke\";\"main\"\n\"2895117\";\"Jävenitz\";\"main\"\n\"2895117\";\"Javenitz\";\"ascii\"\n\"2895131\";\"Jatznick\";\"main\"\n\"2895162\";\"Jarmen\";\"main\"\n\"2895189\";\"Jänschwalde\";\"main\"\n\"2895189\";\"Janschwalde\";\"ascii\"\n\"2895189\";\"Jansojce\";\"other\"\n\"2895189\";\"Janšojce\";\"other\"\n\"2895213\";\"Jandelsbrunn\";\"main\"\n\"2895226\";\"Jameln\";\"main\"\n\"2895248\";\"Jacobsdorf\";\"main\"\n\"2895248\";\"Jakobsdorf\";\"other\"\n\"2895284\";\"Jahnsdorf\";\"main\"\n\"2895304\";\"Jagstzell\";\"main\"\n\"2895309\";\"Jagsthausen\";\"main\"\n\"2895552\";\"Itzstedt\";\"main\"\n\"2895569\";\"Itzehoe\";\"main\"\n\"2895574\";\"Ittlingen\";\"main\"\n\"2895582\";\"Itterbeck\";\"main\"\n\"2895617\";\"Issum\";\"main\"\n\"2895630\";\"Isselburg\";\"main\"\n\"2895636\";\"Ispringen\";\"main\"\n\"2895638\";\"Isny im Allgäu\";\"main\"\n\"2895638\";\"Isny im Allgau\";\"ascii\"\n\"2895638\";\"Isny\";\"other\"\n\"2895643\";\"Ismaning\";\"main\"\n\"2895664\";\"Isernhagen Farster Bauerschaft\";\"main\"\n\"2895669\";\"Iserlohn\";\"main\"\n\"2895669\";\"Iserlaun\";\"other\"\n\"2895669\";\"Izerlon\";\"other\"\n\"2895669\";\"Изерлон\";\"other\"\n\"2895688\";\"Isenbüttel\";\"main\"\n\"2895688\";\"Isenbuttel\";\"ascii\"\n\"2895702\";\"Isen\";\"main\"\n\"2895702\";\"Isena\";\"other\"\n\"2895702\";\"Jarna\";\"other\"\n\"2895731\";\"Irxleben\";\"main\"\n\"2895744\";\"Irsee\";\"main\"\n\"2895751\";\"Irschenberg\";\"main\"\n\"2895755\";\"Irsch\";\"main\"\n\"2895756\";\"Irsch\";\"main\"\n\"2895756\";\"Irisch\";\"other\"\n\"2895771\";\"Irrel\";\"main\"\n\"2895823\";\"Irlbach\";\"main\"\n\"2895854\";\"Irchenrieth\";\"main\"\n\"2895863\";\"Ipsheim\";\"main\"\n\"2895870\";\"Ippesheim\";\"main\"\n\"2895882\";\"Iphofen\";\"main\"\n\"2895886\";\"Inzlingen\";\"main\"\n\"2895891\";\"Inzigkofen\";\"main\"\n\"2895898\";\"Inzell\";\"main\"\n\"2895910\";\"Insingen\";\"main\"\n\"2895913\";\"Insheim\";\"main\"\n\"2895937\";\"Inning am Holz\";\"main\"\n\"2895937\";\"Inning\";\"other\"\n\"2895938\";\"Inning am Ammersee\";\"main\"\n\"2895938\";\"Inning\";\"other\"\n\"2895946\";\"Innernzell\";\"main\"\n\"2895992\";\"Ingolstadt\";\"main\"\n\"2895992\";\"Ingol'shtadt\";\"other\"\n\"2895992\";\"Ingolshhat\";\"other\"\n\"2895992\";\"Ingolshtat\";\"other\"\n\"2895992\";\"ingorushutatto\";\"other\"\n\"2895992\";\"Инголштат\";\"other\"\n\"2895992\";\"Инголщат\";\"other\"\n\"2895992\";\"Ингольштадт\";\"other\"\n\"2895992\";\"インゴルシュタット\";\"other\"\n\"2895993\";\"Ingoldingen\";\"main\"\n\"2895995\";\"Ingersleben\";\"main\"\n\"2896021\";\"Ingelfingen\";\"main\"\n\"2896120\";\"Inden\";\"main\"\n\"2896127\";\"Inchenhofen\";\"main\"\n\"2896189\";\"Imsbach\";\"main\"\n\"2896261\";\"Immenstadt im Allgäu\";\"main\"\n\"2896261\";\"Immenstadt im Allgau\";\"ascii\"\n\"2896261\";\"Immenstadt\";\"other\"\n\"2896263\";\"Immenstaad am Bodensee\";\"main\"\n\"2896263\";\"Immenstaad\";\"other\"\n\"2896273\";\"Immenreuth\";\"main\"\n\"2896279\";\"Immenhausen\";\"main\"\n\"2896288\";\"Immendingen\";\"main\"\n\"2896299\";\"Immelborn\";\"main\"\n\"2896468\";\"Ilvesheim\";\"main\"\n\"2896476\";\"Ilshofen\";\"main\"\n\"2896477\";\"Ilsfeld\";\"main\"\n\"2896483\";\"Ilsenburg\";\"main\"\n\"2896506\";\"Ilmmünster\";\"main\"\n\"2896506\";\"Ilmmunster\";\"ascii\"\n\"2896514\";\"Ilmenau\";\"main\"\n\"2896514\";\"Il'menau\";\"other\"\n\"2896514\";\"Stadt Ilmenau\";\"other\"\n\"2896514\";\"Илменау\";\"other\"\n\"2896514\";\"Ильменау\";\"other\"\n\"2896523\";\"Illschwang\";\"main\"\n\"2896530\";\"Illmensee\";\"main\"\n\"2896538\";\"Illingen\";\"main\"\n\"2896539\";\"Illingen\";\"main\"\n\"2896546\";\"Illertissen\";\"main\"\n\"2896547\";\"Illerrieden\";\"main\"\n\"2896592\";\"Ilfeld\";\"main\"\n\"2896592\";\"Ilfeld-Wiegersdorf\";\"other\"\n\"2896600\";\"Ilbesheim\";\"main\"\n\"2896600\";\"Ibenstadt\";\"other\"\n\"2896600\";\"Jlbesheim\";\"other\"\n\"2896602\";\"Ilberstedt\";\"main\"\n\"2896613\";\"Ihrlerstein\";\"main\"\n\"2896616\";\"Ihringen\";\"main\"\n\"2896648\";\"Ihlienworth\";\"main\"\n\"2896677\";\"Iggingen\";\"main\"\n\"2896679\";\"Iggensbach\";\"main\"\n\"2896687\";\"Igersheim\";\"main\"\n\"2896689\";\"Igensdorf\";\"main\"\n\"2896721\";\"Igel\";\"main\"\n\"2896724\";\"Ifta\";\"main\"\n\"2896727\";\"Iffezheim\";\"main\"\n\"2896731\";\"Iffeldorf\";\"main\"\n\"2896736\";\"Idstein\";\"main\"\n\"2896753\";\"Idar-Oberstein\";\"main\"\n\"2896753\";\"Idar-Obershtajn\";\"other\"\n\"2896753\";\"Идар-Оберштайн\";\"other\"\n\"2896761\";\"Icking\";\"main\"\n\"2896768\";\"Ichtershausen\";\"main\"\n\"2896776\";\"Ichenhausen\";\"main\"\n\"2896817\";\"Ibbenbüren\";\"main\"\n\"2896817\";\"Ibbenburen\";\"ascii\"\n\"2896834\";\"Huy-Neinstedt\";\"main\"\n\"2896877\";\"Hüttlingen\";\"main\"\n\"2896877\";\"Huttlingen\";\"ascii\"\n\"2896882\";\"Hüttisheim\";\"main\"\n\"2896882\";\"Huttisheim\";\"ascii\"\n\"2896898\";\"Hutthurm\";\"main\"\n\"2896898\";\"Hutthurm Markt\";\"other\"\n\"2896933\";\"Hüttenrode\";\"main\"\n\"2896933\";\"Huttenrode\";\"ascii\"\n\"2897063\";\"Hütschenhausen\";\"main\"\n\"2897063\";\"Hutschenhausen\";\"ascii\"\n\"2897132\";\"Husum\";\"main\"\n\"2897132\";\"Huesem\";\"other\"\n\"2897132\";\"Hüsem\";\"other\"\n\"2897132\";\"Khuzum\";\"other\"\n\"2897132\";\"Хузум\";\"other\"\n\"2897136\";\"Husum\";\"main\"\n\"2897211\";\"Hürup\";\"main\"\n\"2897211\";\"Hurup\";\"ascii\"\n\"2897216\";\"Hürth\";\"main\"\n\"2897216\";\"Hurth\";\"ascii\"\n\"2897219\";\"Hürtgenwald\";\"main\"\n\"2897219\";\"Hurtgenwald\";\"ascii\"\n\"2897245\";\"Hurlach\";\"main\"\n\"2897283\";\"Hünxe\";\"main\"\n\"2897283\";\"Hunxe\";\"ascii\"\n\"2897431\";\"Hungen\";\"main\"\n\"2897436\";\"Hünfeld\";\"main\"\n\"2897436\";\"Hunfeld\";\"ascii\"\n\"2897557\";\"Hundsangen\";\"main\"\n\"2897564\";\"Hunding\";\"main\"\n\"2897583\";\"Hundeshagen\";\"main\"\n\"2897593\";\"Hunderdorf\";\"main\"\n\"2897800\";\"Hülsede\";\"main\"\n\"2897800\";\"Hulsede\";\"ascii\"\n\"2897844\";\"Hüllhorst\";\"main\"\n\"2897844\";\"Huellhorst\";\"ascii\"\n\"2897879\";\"Hülben\";\"main\"\n\"2897879\";\"Hulben\";\"ascii\"\n\"2897883\";\"Huisheim\";\"main\"\n\"2897991\";\"Huglfing\";\"main\"\n\"2898004\";\"Hügelsheim\";\"main\"\n\"2898004\";\"Hugelsheim\";\"ascii\"\n\"2898028\";\"Hüfingen\";\"main\"\n\"2898028\";\"Hufingen\";\"ascii\"\n\"2898033\";\"Hüffenhardt\";\"main\"\n\"2898033\";\"Huffenhardt\";\"ascii\"\n\"2898033\";\"Huffenhartheim\";\"other\"\n\"2898033\";\"Hüffenhartheim\";\"other\"\n\"2898036\";\"Hüffelsheim\";\"main\"\n\"2898036\";\"Huffelsheim\";\"ascii\"\n\"2898079\";\"Hude\";\"main\"\n\"2898081\";\"Hüde\";\"main\"\n\"2898081\";\"Hude\";\"ascii\"\n\"2898081\";\"Huede\";\"other\"\n\"2898098\";\"Hückeswagen\";\"main\"\n\"2898098\";\"Huckeswagen\";\"ascii\"\n\"2898111\";\"Hückelhoven\";\"main\"\n\"2898111\";\"Huckelhoven\";\"ascii\"\n\"2898299\";\"Hoym\";\"main\"\n\"2898304\";\"Hoyerswerda\";\"main\"\n\"2898304\";\"Hojerice\";\"other\"\n\"2898304\";\"Hojeřice\";\"other\"\n\"2898304\";\"Hoyerwerda\";\"other\"\n\"2898304\";\"Khojersverda\";\"other\"\n\"2898304\";\"Wojerce\";\"other\"\n\"2898304\";\"Wojerecy\";\"other\"\n\"2898304\";\"hoierusuvu~eruda\";\"other\"\n\"2898304\";\"Хойерсверда\";\"other\"\n\"2898304\";\"ホイエルスヴェルダ\";\"other\"\n\"2898316\";\"Hoya\";\"main\"\n\"2898316\";\"Hoya an Weser\";\"other\"\n\"2898321\";\"Höxter\";\"main\"\n\"2898321\";\"Hoxter\";\"ascii\"\n\"2898364\";\"Hövelhof\";\"main\"\n\"2898364\";\"Hovelhof\";\"ascii\"\n\"2898415\";\"Höttingen\";\"main\"\n\"2898415\";\"Hottingen\";\"ascii\"\n\"2898435\";\"Hötensleben\";\"main\"\n\"2898435\";\"Hotensleben\";\"ascii\"\n\"2898435\";\"Hofensleben\";\"other\"\n\"2898435\";\"Höfensleben\";\"other\"\n\"2898471\";\"Höslwang\";\"main\"\n\"2898471\";\"Hoslwang\";\"ascii\"\n\"2898483\";\"Hosenfeld\";\"main\"\n\"2898494\";\"Hösbach\";\"main\"\n\"2898494\";\"Hosbach\";\"ascii\"\n\"2898541\";\"Horstmar\";\"main\"\n\"2898603\";\"Hörstel\";\"main\"\n\"2898603\";\"Horstel\";\"ascii\"\n\"2898608\";\"Horstedt\";\"main\"\n\"2898640\";\"Horst\";\"main\"\n\"2898697\";\"Hörselgau\";\"main\"\n\"2898697\";\"Horselgau\";\"ascii\"\n\"2898697\";\"Hoerselgau\";\"other\"\n\"2898732\";\"Horrenberg\";\"main\"\n\"2898763\";\"Hornstorf\";\"main\"\n\"2898829\";\"Hornhausen\";\"main\"\n\"2898847\";\"Horneburg\";\"main\"\n\"2898863\";\"Hornburg\";\"main\"\n\"2898876\";\"Hornberg\";\"main\"\n\"2898894\";\"Horn-Bad Meinberg\";\"main\"\n\"2898894\";\"Khorn-Bad Majnberg\";\"other\"\n\"2898894\";\"Хорн-Бад Майнберг\";\"other\"\n\"2898902\";\"Hornbach\";\"main\"\n\"2898960\";\"Hormersdorf\";\"main\"\n\"2899013\";\"Horka\";\"main\"\n\"2899024\";\"Horhausen\";\"main\"\n\"2899033\";\"Hörgertshausen\";\"main\"\n\"2899033\";\"Horgertshausen\";\"ascii\"\n\"2899040\";\"Horgenzell\";\"main\"\n\"2899048\";\"Horgau\";\"main\"\n\"2899058\";\"Hördt\";\"main\"\n\"2899058\";\"Hordt\";\"ascii\"\n\"2899066\";\"Hörden\";\"main\"\n\"2899066\";\"Horden\";\"ascii\"\n\"2899093\";\"Horben\";\"main\"\n\"2899101\";\"Horb am Neckar\";\"main\"\n\"2899101\";\"Horb\";\"other\"\n\"2899191\";\"Höpfingen\";\"main\"\n\"2899191\";\"Hopfingen\";\"ascii\"\n\"2899202\";\"Hopferau\";\"main\"\n\"2899291\";\"Hoogstede\";\"main\"\n\"2899449\";\"Homburg\";\"main\"\n\"2899478\";\"Homberg\";\"main\"\n\"2899479\";\"Homberg\";\"main\"\n\"2899479\";\"Homberg an der Ohm\";\"other\"\n\"2899538\";\"Holzwickede\";\"main\"\n\"2899539\";\"Holzweißig\";\"main\"\n\"2899539\";\"Holzweissig\";\"ascii\"\n\"2899539\";\"Holzweiddig\";\"other\"\n\"2899539\";\"Holzweisslig\";\"other\"\n\"2899539\";\"Holzweißlig\";\"other\"\n\"2899601\";\"Holzminden\";\"main\"\n\"2899620\";\"Holzmaden\";\"main\"\n\"2899676\";\"Holzkirchen\";\"main\"\n\"2899723\";\"Holzheim\";\"main\"\n\"2899724\";\"Holzheim\";\"main\"\n\"2899767\";\"Holzhausen an der Haide\";\"main\"\n\"2899767\";\"Holzhausen\";\"other\"\n\"2899870\";\"Holzgünz\";\"main\"\n\"2899870\";\"Holzgunz\";\"ascii\"\n\"2899880\";\"Holzgerlingen\";\"main\"\n\"2899961\";\"Holzdorf\";\"main\"\n\"2900027\";\"Holzappel\";\"main\"\n\"2900079\";\"Holtsee\";\"main\"\n\"2900105\";\"Holtland\";\"main\"\n\"2900341\";\"Holm\";\"main\"\n\"2900375\";\"Hollstadt\";\"main\"\n\"2900409\";\"Hollingstedt\";\"main\"\n\"2900453\";\"Hollfeld\";\"main\"\n\"2900499\";\"Holler\";\"main\"\n\"2900520\";\"Hollenstedt\";\"main\"\n\"2900590\";\"Hollenbach\";\"main\"\n\"2900617\";\"Holleben\";\"main\"\n\"2900623\";\"Holle\";\"main\"\n\"2900740\";\"Holdorf\";\"main\"\n\"2900787\";\"Hoisdorf\";\"main\"\n\"2900825\";\"Höhr-Grenzhausen\";\"main\"\n\"2900825\";\"Hohr-Grenzhausen\";\"ascii\"\n\"2900825\";\"Grenzhausen\";\"other\"\n\"2900844\";\"Hohnstein\";\"main\"\n\"2900849\";\"Höhnstedt\";\"main\"\n\"2900849\";\"Hohnstedt\";\"ascii\"\n\"2900865\";\"Hohnhorst\";\"main\"\n\"2900889\";\"Hohndorf\";\"main\"\n\"2900899\";\"Hohn\";\"main\"\n\"2901348\";\"Hohenwestedt\";\"main\"\n\"2901358\";\"Hohenwarthe\";\"main\"\n\"2901360\";\"Hohenwarth\";\"main\"\n\"2901377\";\"Hohenwarsleben\";\"main\"\n\"2901397\";\"Hohenthurm\";\"main\"\n\"2901397\";\"Hohenturn\";\"other\"\n\"2901398\";\"Hohenthann\";\"main\"\n\"2901398\";\"Hohentan\";\"other\"\n\"2901405\";\"Hohentengen\";\"main\"\n\"2901406\";\"Hohentengen\";\"main\"\n\"2901420\";\"Hohenstein-Ernstthal\";\"main\"\n\"2901568\";\"Hohenpolding\";\"main\"\n\"2901572\";\"Hohenpeißenberg\";\"main\"\n\"2901572\";\"Hohenpeissenberg\";\"ascii\"\n\"2901588\";\"Hohen Neuendorf\";\"main\"\n\"2901601\";\"Hohenmölsen\";\"main\"\n\"2901601\";\"Hohenmolsen\";\"ascii\"\n\"2901621\";\"Hohenlockstedt\";\"main\"\n\"2901621\";\"Lockstedter Lager\";\"other\"\n\"2901625\";\"Hohenlinden\";\"main\"\n\"2901634\";\"Hohenleuben\";\"main\"\n\"2901638\";\"Hohenleipisch\";\"main\"\n\"2901670\";\"Hohenkammer\";\"main\"\n\"2901670\";\"Hohen Cammer\";\"other\"\n\"2901670\";\"Hohenkamer\";\"other\"\n\"2901731\";\"Hohenhameln\";\"main\"\n\"2901757\";\"Hohenfurch\";\"main\"\n\"2901757\";\"Hohenfurth\";\"other\"\n\"2901774\";\"Hohenfels\";\"main\"\n\"2901783\";\"Hohenfelde\";\"main\"\n\"2901839\";\"Hohendodeleben\";\"main\"\n\"2901849\";\"Hohenburg\";\"main\"\n\"2901872\";\"Hohenbrunn\";\"main\"\n\"2901895\";\"Hohenbocka\";\"main\"\n\"2901906\";\"Hohenberg an der Eger\";\"main\"\n\"2901906\";\"Hohenberg\";\"other\"\n\"2901984\";\"Hohenaspe\";\"main\"\n\"2901984\";\"Hohenasbe\";\"other\"\n\"2902064\";\"Höheischweiler\";\"main\"\n\"2902064\";\"Hoheischweiler\";\"ascii\"\n\"2902065\";\"Höheinöd\";\"main\"\n\"2902065\";\"Hoheinod\";\"ascii\"\n\"2902230\";\"Hohburg\";\"main\"\n\"2902235\";\"Hohberg\";\"main\"\n\"2902370\";\"Hofstetten\";\"main\"\n\"2902371\";\"Hofstetten\";\"main\"\n\"2902514\";\"Hofkirchen\";\"main\"\n\"2902531\";\"Hofheim in Unterfranken\";\"main\"\n\"2902531\";\"Hofheim\";\"other\"\n\"2902531\";\"Hofheim in Mainfranken\";\"other\"\n\"2902533\";\"Hofheim am Taunus\";\"main\"\n\"2902533\";\"Hofheim\";\"other\"\n\"2902533\";\"Hofheim in Taunus\";\"other\"\n\"2902559\";\"Hofgeismar\";\"main\"\n\"2902628\";\"Höfen an der Enz\";\"main\"\n\"2902628\";\"Hofen an der Enz\";\"ascii\"\n\"2902628\";\"Hofen\";\"other\"\n\"2902628\";\"Höfen\";\"other\"\n\"2902731\";\"Hofbieber\";\"main\"\n\"2902767\";\"Hof\";\"main\"\n\"2902768\";\"Hof\";\"main\"\n\"2902768\";\"Khof\";\"other\"\n\"2902768\";\"Хоф\";\"other\"\n\"2902818\";\"Hodenhagen\";\"main\"\n\"2902852\";\"Hockenheim\";\"main\"\n\"2902855\";\"Höckendorf\";\"main\"\n\"2902855\";\"Hockendorf\";\"ascii\"\n\"2902951\";\"Höchst im Odenwald\";\"main\"\n\"2902951\";\"Hochst im Odenwald\";\"ascii\"\n\"2902951\";\"Hochst\";\"other\"\n\"2902951\";\"Höchst\";\"other\"\n\"2903011\";\"Höchstädt bei Thiersheim\";\"main\"\n\"2903011\";\"Hochstadt bei Thiersheim\";\"ascii\"\n\"2903011\";\"Hochstadt\";\"other\"\n\"2903011\";\"Höchstädt\";\"other\"\n\"2903012\";\"Höchstädt an der Donau\";\"main\"\n\"2903012\";\"Hochstadt an der Donau\";\"ascii\"\n\"2903012\";\"Hochstadt\";\"other\"\n\"2903012\";\"Hochstatt\";\"other\"\n\"2903012\";\"Höchstädt\";\"other\"\n\"2903013\";\"Hochstadt am Main\";\"main\"\n\"2903013\";\"Hochstadt\";\"other\"\n\"2903016\";\"Höchstadt an der Aisch\";\"main\"\n\"2903016\";\"Hochstadt an der Aisch\";\"ascii\"\n\"2903016\";\"Hochstadt\";\"other\"\n\"2903016\";\"Höchstadt\";\"other\"\n\"2903026\";\"Hochspeyer\";\"main\"\n\"2903125\";\"Hochkirch\";\"main\"\n\"2903175\";\"Hochheim am Main\";\"main\"\n\"2903175\";\"Hochheim\";\"other\"\n\"2903180\";\"Höchheim\";\"main\"\n\"2903180\";\"Hochheim\";\"ascii\"\n\"2903256\";\"Höchenschwand\";\"main\"\n\"2903256\";\"Hochenschwand\";\"ascii\"\n\"2903290\";\"Hochdorf\";\"main\"\n\"2903295\";\"Hochdorf\";\"main\"\n\"2903298\";\"Hochdonn\";\"main\"\n\"2903298\";\"Hochdorn\";\"other\"\n\"2903327\";\"Höchberg\";\"main\"\n\"2903327\";\"Hochberg\";\"ascii\"\n\"2903445\";\"Hitzhusen\";\"main\"\n\"2903470\";\"Hitzacker\";\"main\"\n\"2903504\";\"Hirzenhain\";\"main\"\n\"2903625\";\"Hirschhorn\";\"main\"\n\"2903658\";\"Hirschfelde\";\"main\"\n\"2903659\";\"Hirschfeld\";\"main\"\n\"2903663\";\"Hirschfeld\";\"main\"\n\"2903794\";\"Hirschbach\";\"main\"\n\"2903806\";\"Hirschau\";\"main\"\n\"2903810\";\"Hirschaid\";\"main\"\n\"2903817\";\"Hirrlingen\";\"main\"\n\"2903841\";\"Hipstedt\";\"main\"\n\"2903889\";\"Hinterzarten\";\"main\"\n\"2903908\";\"Hinterweidenthal\";\"main\"\n\"2903991\";\"Hinterschmiding\";\"main\"\n\"2904397\";\"Hinte\";\"main\"\n\"2904499\";\"Himmelstadt\";\"main\"\n\"2904543\";\"Himmelpforten\";\"main\"\n\"2904552\";\"Himmelkron\";\"main\"\n\"2904574\";\"Himbergen\";\"main\"\n\"2904591\";\"Hilzingen\";\"main\"\n\"2904600\";\"Hiltpoltstein\";\"main\"\n\"2904607\";\"Hilter\";\"main\"\n\"2904612\";\"Hiltenfingen\";\"main\"\n\"2904638\";\"Hilpoltstein\";\"main\"\n\"2904667\";\"Hillscheid\";\"main\"\n\"2904691\";\"Hillesheim\";\"main\"\n\"2904698\";\"Hillerse\";\"main\"\n\"2904725\";\"Hille\";\"main\"\n\"2904741\";\"Hilgertshausen-Tandern\";\"main\"\n\"2904741\";\"Hilgertshausen\";\"other\"\n\"2904741\";\"Kilkershausen\";\"other\"\n\"2904743\";\"Hilgert\";\"main\"\n\"2904748\";\"Hilgermissen\";\"main\"\n\"2904784\";\"Hildrizhausen\";\"main\"\n\"2904789\";\"Hildesheim\";\"main\"\n\"2904789\";\"Khil'deskhajm\";\"other\"\n\"2904789\";\"Landkreis Hildesheim\";\"other\"\n\"2904789\";\"Powiat Hildesheim\";\"other\"\n\"2904789\";\"Хильдесхайм\";\"other\"\n\"2904791\";\"Hilders\";\"main\"\n\"2904795\";\"Hilden\";\"main\"\n\"2904804\";\"Hildburghausen\";\"main\"\n\"2904808\";\"Hilchenbach\";\"main\"\n\"2904816\";\"Hilbersdorf\";\"main\"\n\"2904886\";\"Hiddenhausen\";\"main\"\n\"2904906\";\"Heyersum\";\"main\"\n\"2904909\";\"Heyerode\";\"main\"\n\"2904985\";\"Heusweiler\";\"main\"\n\"2904986\";\"Heustreu\";\"main\"\n\"2904992\";\"Heusenstamm\";\"main\"\n\"2905044\";\"Heuerßen\";\"main\"\n\"2905044\";\"Heuerssen\";\"ascii\"\n\"2905058\";\"Heudeber\";\"main\"\n\"2905062\";\"Heuchlingen\";\"main\"\n\"2905069\";\"Heuchelheim bei Frankenthal\";\"main\"\n\"2905069\";\"Heuchelheim\";\"other\"\n\"2905069\";\"Heuchelheim uber Frankenthal\";\"other\"\n\"2905069\";\"Heuchelheim über Frankenthal\";\"other\"\n\"2905070\";\"Heuchelheim\";\"main\"\n\"2905154\";\"Heubach\";\"main\"\n\"2905164\";\"Hetzles\";\"main\"\n\"2905178\";\"Hetzerath\";\"main\"\n\"2905206\";\"Hettstedt\";\"main\"\n\"2905206\";\"Hefstedt\";\"other\"\n\"2905208\";\"Hettstadt\";\"main\"\n\"2905215\";\"Hettingen\";\"main\"\n\"2905222\";\"Hettenshausen\";\"main\"\n\"2905226\";\"Hettenleidelheim\";\"main\"\n\"2905245\";\"Hetlingen\";\"main\"\n\"2905290\";\"Hessisch Oldendorf\";\"main\"\n\"2905293\";\"Hessisch Lichtenau\";\"main\"\n\"2905293\";\"Lichtenau\";\"other\"\n\"2905298\";\"Hessigheim\";\"main\"\n\"2905299\";\"Heßheim\";\"main\"\n\"2905299\";\"Hessheim\";\"ascii\"\n\"2905372\";\"Heßdorf\";\"main\"\n\"2905372\";\"Hessdorf\";\"ascii\"\n\"2905394\";\"Hespe\";\"main\"\n\"2905421\";\"Hesel\";\"main\"\n\"2905455\";\"Herzogenrath\";\"main\"\n\"2905457\";\"Herzogenaurach\";\"main\"\n\"2905457\";\"Khercogenaurakh\";\"other\"\n\"2905457\";\"Херцогенаурах\";\"other\"\n\"2905466\";\"Herzlake\";\"main\"\n\"2905468\";\"Herzhorn\";\"main\"\n\"2905496\";\"Herzberg am Harz\";\"main\"\n\"2905496\";\"Herzberg\";\"other\"\n\"2905504\";\"Herzberg\";\"main\"\n\"2905527\";\"Herxheim am Berg\";\"main\"\n\"2905527\";\"Herxheim\";\"other\"\n\"2905560\";\"Herten\";\"main\"\n\"2905581\";\"Herschweiler-Pettersheim\";\"main\"\n\"2905587\";\"Herscheid\";\"main\"\n\"2905591\";\"Herschdorf\";\"main\"\n\"2905599\";\"Hersbruck\";\"main\"\n\"2905604\";\"Herrsching am Ammersee\";\"main\"\n\"2905604\";\"Herrschin\";\"other\"\n\"2905604\";\"Herrsching\";\"other\"\n\"2905643\";\"Herrnhut\";\"main\"\n\"2905652\";\"Herrngiersdorf\";\"main\"\n\"2905693\";\"Herrischried\";\"main\"\n\"2905706\";\"Herrieden\";\"main\"\n\"2905826\";\"Herrenberg\";\"main\"\n\"2905878\";\"Heroldsberg\";\"main\"\n\"2905881\";\"Heroldsbach\";\"main\"\n\"2905891\";\"Herne\";\"main\"\n\"2905891\";\"Kherne\";\"other\"\n\"2905891\";\"herune\";\"other\"\n\"2905891\";\"Херне\";\"other\"\n\"2905891\";\"ヘルネ\";\"other\"\n\"2905905\";\"Hermsdorf\";\"main\"\n\"2905915\";\"Hermsdorf\";\"main\"\n\"2905916\";\"Hermsdorf\";\"main\"\n\"2905929\";\"Hermeskeil\";\"main\"\n\"2905946\";\"Hermersberg\";\"main\"\n\"2905954\";\"Hermaringen\";\"main\"\n\"2906015\";\"Hermannsburg\";\"main\"\n\"2906050\";\"Herleshausen\";\"main\"\n\"2906078\";\"Heringsdorf\";\"main\"\n\"2906087\";\"Heringen\";\"main\"\n\"2906088\";\"Heringen\";\"main\"\n\"2906098\";\"Hergisdorf\";\"main\"\n\"2906110\";\"Hergensweiler\";\"main\"\n\"2906119\";\"Herforst\";\"main\"\n\"2906121\";\"Herford\";\"main\"\n\"2906121\";\"Hiarwede\";\"other\"\n\"2906121\";\"Kherford\";\"other\"\n\"2906121\";\"Херфорд\";\"other\"\n\"2906130\";\"Heretsried\";\"main\"\n\"2906143\";\"Herdorf\";\"main\"\n\"2906152\";\"Herdecke\";\"main\"\n\"2906175\";\"Herbstein\";\"main\"\n\"2906185\";\"Herbsleben\";\"main\"\n\"2906194\";\"Herbrechtingen\";\"main\"\n\"2906199\";\"Herborn\";\"main\"\n\"2906199\";\"Kherborn\";\"other\"\n\"2906199\";\"Херборн\";\"other\"\n\"2906205\";\"Herbolzheim\";\"main\"\n\"2906222\";\"Herbertingen\";\"main\"\n\"2906256\";\"Hepstedt\";\"main\"\n\"2906268\";\"Heppenheim an der Bergstrasse\";\"main\"\n\"2906268\";\"Heppenheim\";\"other\"\n\"2906312\";\"Hennweiler\";\"main\"\n\"2906316\";\"Hennstedt\";\"main\"\n\"2906331\";\"Hennigsdorf\";\"main\"\n\"2906331\";\"Stadt Hennigsdorf\";\"other\"\n\"2906376\";\"Hennef\";\"main\"\n\"2906464\";\"Hengersberg\";\"main\"\n\"2906489\";\"Henfenfeld\";\"main\"\n\"2906490\";\"Hendungen\";\"main\"\n\"2906500\";\"Hemslingen\";\"main\"\n\"2906510\";\"Hemsbünde\";\"main\"\n\"2906510\";\"Hemsbunde\";\"ascii\"\n\"2906514\";\"Hemsbach\";\"main\"\n\"2906524\";\"Hemmoor\";\"main\"\n\"2906527\";\"Hemmingstedt\";\"main\"\n\"2906530\";\"Hemmingen\";\"main\"\n\"2906531\";\"Hemmingen\";\"main\"\n\"2906531\";\"Hemmigen\";\"other\"\n\"2906583\";\"Hemhofen\";\"main\"\n\"2906595\";\"Hemer\";\"main\"\n\"2906595\";\"Khemer\";\"other\"\n\"2906595\";\"Хемер\";\"other\"\n\"2906595\";\"เหแมร์\";\"other\"\n\"2906605\";\"Hemdingen\";\"main\"\n\"2906625\";\"Hemau\";\"main\"\n\"2906625\";\"Hemman\";\"other\"\n\"2906634\";\"Heltersberg\";\"main\"\n\"2906654\";\"Helsa\";\"main\"\n\"2906660\";\"Helpsen\";\"main\"\n\"2906676\";\"Helmstedt\";\"main\"\n\"2906676\";\"Khel'mshtedt\";\"other\"\n\"2906676\";\"Stadt Helmstedt\";\"other\"\n\"2906676\";\"Хельмштедт\";\"other\"\n\"2906680\";\"Helmstadt\";\"main\"\n\"2906744\";\"Helmbrechts\";\"main\"\n\"2906759\";\"Hellwege\";\"main\"\n\"2906790\";\"Hellingen\";\"main\"\n\"2906843\";\"Hellenthal\";\"main\"\n\"2906851\";\"Hellenhahn-Schellenberg\";\"main\"\n\"2906957\";\"Helferskirchen\";\"main\"\n\"2906990\";\"Heldrungen\";\"main\"\n\"2907018\";\"Helbra\";\"main\"\n\"2907068\";\"Heitersheim\";\"main\"\n\"2907110\";\"Heistenbach\";\"main\"\n\"2907111\";\"Heist\";\"main\"\n\"2907195\";\"Heinsen\";\"main\"\n\"2907201\";\"Heinsberg\";\"main\"\n\"2907201\";\"Heinsburg\";\"other\"\n\"2907201\";\"Khajnsberg\";\"other\"\n\"2907201\";\"Хайнсберг\";\"other\"\n\"2907280\";\"Heiningen\";\"main\"\n\"2907343\";\"Heinböckel\";\"main\"\n\"2907343\";\"Heinbockel\";\"ascii\"\n\"2907349\";\"Heinade\";\"main\"\n\"2907359\";\"Heimsheim\";\"main\"\n\"2907388\";\"Heimertingen\";\"main\"\n\"2907399\";\"Heimenkirch\";\"main\"\n\"2907416\";\"Heimbuchenthal\";\"main\"\n\"2907459\";\"Heimbach\";\"main\"\n\"2907460\";\"Heimbach\";\"main\"\n\"2907488\";\"Heilsbronn\";\"main\"\n\"2907501\";\"Heiligkreuzsteinach\";\"main\"\n\"2907542\";\"Heiligenstedten\";\"main\"\n\"2907545\";\"Heilbad Heiligenstadt\";\"main\"\n\"2907545\";\"Heiligenstadt\";\"other\"\n\"2907546\";\"Heiligenstadt\";\"main\"\n\"2907554\";\"Heiligenroth\";\"main\"\n\"2907585\";\"Heiligenhaus\";\"main\"\n\"2907585\";\"Stadt Heiligenhaus\";\"other\"\n\"2907589\";\"Heiligenhafen\";\"main\"\n\"2907594\";\"Heiligengrabe\";\"main\"\n\"2907616\";\"Heiligenberg\";\"main\"\n\"2907669\";\"Heilbronn\";\"main\"\n\"2907669\";\"Chailmpron\";\"other\"\n\"2907669\";\"Hajlbrono\";\"other\"\n\"2907669\";\"Heilbronn Neckar\";\"other\"\n\"2907669\";\"Khajl'bronn\";\"other\"\n\"2907669\";\"Khajlbron\";\"other\"\n\"2907669\";\"hairuburon\";\"other\"\n\"2907669\";\"haylbrwn\";\"other\"\n\"2907669\";\"Χαϊλμπρόν\";\"other\"\n\"2907669\";\"Хайльбронн\";\"other\"\n\"2907669\";\"Хајлброн\";\"other\"\n\"2907669\";\"هايلبرون\";\"other\"\n\"2907669\";\"هایلبرون\";\"other\"\n\"2907669\";\"ハイルブロン\";\"other\"\n\"2907685\";\"Heikendorf\";\"main\"\n\"2907697\";\"Heigenbrücken\";\"main\"\n\"2907697\";\"Heigenbrucken\";\"ascii\"\n\"2907780\";\"Heidgraben\";\"main\"\n\"2907790\";\"Heidesheim\";\"main\"\n\"2907851\";\"Heidenheim an der Brenz\";\"main\"\n\"2907851\";\"Heidenheim\";\"other\"\n\"2907851\";\"Heidenheim in Wurttemberg\";\"other\"\n\"2907851\";\"Heidenheim in Württemberg\";\"other\"\n\"2907851\";\"Hoana\";\"other\"\n\"2907852\";\"Heidenheim\";\"main\"\n\"2907886\";\"Heidenau\";\"main\"\n\"2907887\";\"Heidenau\";\"main\"\n\"2907889\";\"Heiden\";\"main\"\n\"2907911\";\"Heidelberg\";\"main\"\n\"2907911\";\"Gejdel'berg\";\"other\"\n\"2907911\";\"Hajdelbergo\";\"other\"\n\"2907911\";\"Heidelburg\";\"other\"\n\"2907911\";\"Khajdelberg\";\"other\"\n\"2907911\";\"hai de bao\";\"other\"\n\"2907911\";\"haidelbergi\";\"other\"\n\"2907911\";\"haideruberuku\";\"other\"\n\"2907911\";\"haydlbrg\";\"other\"\n\"2907911\";\"haydlbrgh\";\"other\"\n\"2907911\";\"hyydlbrg\";\"other\"\n\"2907911\";\"Гайдельберґ\";\"other\"\n\"2907911\";\"Гейдельберг\";\"other\"\n\"2907911\";\"Хайделберг\";\"other\"\n\"2907911\";\"Хајделберг\";\"other\"\n\"2907911\";\"היידלברג\";\"other\"\n\"2907911\";\"هايدلبرغ\";\"other\"\n\"2907911\";\"هایدلبرگ\";\"other\"\n\"2907911\";\"ჰაიდელბერგი\";\"other\"\n\"2907911\";\"ハイデルベルク\";\"other\"\n\"2907911\";\"海德堡\";\"other\"\n\"2907983\";\"Heideck\";\"main\"\n\"2907983\";\"Heydeck\";\"other\"\n\"2908032\";\"Heide\";\"main\"\n\"2908165\";\"Hehlen\";\"main\"\n\"2908268\";\"Heeßen\";\"main\"\n\"2908268\";\"Heessen\";\"ascii\"\n\"2908273\";\"Heeslingen\";\"main\"\n\"2908324\";\"Heemsen\";\"main\"\n\"2908330\";\"Heek\";\"main\"\n\"2908350\";\"Heede\";\"main\"\n\"2908373\";\"Hedersleben\";\"main\"\n\"2908374\";\"Hedersleben\";\"main\"\n\"2908398\";\"Heddesheim\";\"main\"\n\"2908411\";\"Hecklingen\";\"main\"\n\"2908486\";\"Hechthausen\";\"main\"\n\"2908495\";\"Hechingen\";\"main\"\n\"2908529\";\"Hebertshausen\";\"main\"\n\"2908531\";\"Hebertsfelden\";\"main\"\n\"2908575\";\"Hayingen\";\"main\"\n\"2908575\";\"Havingen\";\"other\"\n\"2908595\";\"Hawangen\";\"main\"\n\"2908597\";\"Havixbeck\";\"main\"\n\"2908614\";\"Haverlah\";\"main\"\n\"2908644\";\"Havelberg\";\"main\"\n\"2908661\";\"Hauzenberg\";\"main\"\n\"2908678\";\"Hauswalde\";\"main\"\n\"2908678\";\"Bretnig-Hauswalde\";\"other\"\n\"2908783\";\"Hausham\";\"main\"\n\"2908796\";\"Häusern\";\"main\"\n\"2908796\";\"Hausern\";\"ascii\"\n\"2908873\";\"Hausen\";\"main\"\n\"2908886\";\"Hausen\";\"main\"\n\"2908888\";\"Hausen\";\"main\"\n\"2908896\";\"Hausen\";\"main\"\n\"2908913\";\"Hausen\";\"main\"\n\"2908974\";\"Hausach\";\"main\"\n\"2908999\";\"Hauptstuhl\";\"main\"\n\"2909057\";\"Haunsheim\";\"main\"\n\"2909087\";\"Haundorf\";\"main\"\n\"2909129\";\"Hauenstein\";\"main\"\n\"2909129\";\"Hauenstein Kreis Pirmasens\";\"other\"\n\"2909194\";\"Hatzfeld\";\"main\"\n\"2909204\";\"Hatzenbühl\";\"main\"\n\"2909204\";\"Hatzenbuhl\";\"ascii\"\n\"2909222\";\"Hattstedt\";\"main\"\n\"2909226\";\"Hattorf\";\"main\"\n\"2909230\";\"Hattingen\";\"main\"\n\"2909240\";\"Hattersheim\";\"main\"\n\"2909252\";\"Hattenhofen\";\"main\"\n\"2909253\";\"Hattenhofen\";\"main\"\n\"2909268\";\"Hatten\";\"main\"\n\"2909296\";\"Haste\";\"main\"\n\"2909308\";\"Haßmersheim\";\"main\"\n\"2909308\";\"Hassmersheim\";\"ascii\"\n\"2909308\";\"Hassnerheim\";\"other\"\n\"2909308\";\"Haßnerheim\";\"other\"\n\"2909313\";\"Haßloch\";\"main\"\n\"2909313\";\"Hassloch\";\"ascii\"\n\"2909313\";\"Hafsloch\";\"other\"\n\"2909325\";\"Haßleben\";\"main\"\n\"2909325\";\"Hassleben\";\"ascii\"\n\"2909335\";\"Haßfurt\";\"main\"\n\"2909335\";\"Hassfurt\";\"ascii\"\n\"2909335\";\"Haszfurt\";\"other\"\n\"2909335\";\"Haszfurth\";\"other\"\n\"2909350\";\"Hassendorf\";\"main\"\n\"2909386\";\"Hasselfelde\";\"main\"\n\"2909444\";\"Hassel\";\"main\"\n\"2909460\";\"Haßbergen\";\"main\"\n\"2909460\";\"Hassbergen\";\"ascii\"\n\"2909489\";\"Hasloh\";\"main\"\n\"2909491\";\"Hasloch\";\"main\"\n\"2909544\";\"Haslach\";\"main\"\n\"2909761\";\"Haselünne\";\"main\"\n\"2909761\";\"Haselunne\";\"ascii\"\n\"2909821\";\"Haseldorf\";\"main\"\n\"2909877\";\"Haselbach\";\"main\"\n\"2909886\";\"Haselau\";\"main\"\n\"2909892\";\"Hasel\";\"main\"\n\"2909915\";\"Hasbergen\";\"main\"\n\"2909944\";\"Harzgerode\";\"main\"\n\"2909968\";\"Harxheim\";\"main\"\n\"2910048\";\"Hartmannsdorf\";\"main\"\n\"2910051\";\"Hartmannsdorf\";\"main\"\n\"2910108\";\"Hartheim\";\"main\"\n\"2910121\";\"Harthausen\";\"main\"\n\"2910140\";\"Hartha\";\"main\"\n\"2910167\";\"Hartenstein\";\"main\"\n\"2910168\";\"Hartenstein\";\"main\"\n\"2910178\";\"Hartenholm\";\"main\"\n\"2910269\";\"Harsum\";\"main\"\n\"2910275\";\"Harsleben\";\"main\"\n\"2910278\";\"Harsewinkel\";\"main\"\n\"2910280\";\"Harsefeld\";\"main\"\n\"2910283\";\"Harsdorf\";\"main\"\n\"2910302\";\"Harrislee\";\"main\"\n\"2910344\";\"Harpstedt\";\"main\"\n\"2910488\";\"Hargesheim\";\"main\"\n\"2910514\";\"Haren\";\"main\"\n\"2910575\";\"Hardt\";\"main\"\n\"2910633\";\"Hardheim\";\"main\"\n\"2910663\";\"Hardegsen\";\"main\"\n\"2910685\";\"Hamburg-Harburg\";\"main\"\n\"2910685\";\"Harburg\";\"other\"\n\"2910685\";\"Harburg an Elbe\";\"other\"\n\"2910685\";\"Horborg\";\"other\"\n\"2910686\";\"Harburg\";\"main\"\n\"2910694\";\"Harbke\";\"main\"\n\"2910720\";\"Happurg\";\"main\"\n\"2910760\";\"Hanstedt Eins\";\"main\"\n\"2910760\";\"Hanstedt\";\"other\"\n\"2910762\";\"Hanstedt\";\"main\"\n\"2910831\";\"Hannover\";\"main\"\n\"2910831\";\"Annobero\";\"other\"\n\"2910831\";\"Gannover\";\"other\"\n\"2910831\";\"Hannober\";\"other\"\n\"2910831\";\"Hannover - Hannover\";\"other\"\n\"2910831\";\"Hannovere\";\"other\"\n\"2910831\";\"Hannoveria\";\"other\"\n\"2910831\";\"Hannóver - Hannover\";\"other\"\n\"2910831\";\"Hanover\";\"other\"\n\"2910831\";\"Hanoveris\";\"other\"\n\"2910831\";\"Hanovra\";\"other\"\n\"2910831\";\"Hanovre\";\"other\"\n\"2910831\";\"Hanovro\";\"other\"\n\"2910831\";\"Hanower\";\"other\"\n\"2910831\";\"Hanóver\";\"other\"\n\"2910831\";\"Hanôver\";\"other\"\n\"2910831\";\"Honovere\";\"other\"\n\"2910831\";\"Khanover\";\"other\"\n\"2910831\";\"han no wexr\";\"other\"\n\"2910831\";\"han nuo wei\";\"other\"\n\"2910831\";\"hanobeo\";\"other\"\n\"2910831\";\"hanofa\";\"other\"\n\"2910831\";\"hanoveri\";\"other\"\n\"2910831\";\"hanwfr\";\"other\"\n\"2910831\";\"hanwwr\";\"other\"\n\"2910831\";\"hnwbr\";\"other\"\n\"2910831\";\"Αννόβερο\";\"other\"\n\"2910831\";\"Ганновер\";\"other\"\n\"2910831\";\"Хановер\";\"other\"\n\"2910831\";\"הנובר\";\"other\"\n\"2910831\";\"هانوفر\";\"other\"\n\"2910831\";\"هانوور\";\"other\"\n\"2910831\";\"ฮันโนเวอร์\";\"other\"\n\"2910831\";\"ჰანოვერი\";\"other\"\n\"2910831\";\"ハノーファー\";\"other\"\n\"2910831\";\"漢諾威\";\"other\"\n\"2910831\";\"하노버\";\"other\"\n\"2910863\";\"Hankensbüttel\";\"main\"\n\"2910863\";\"Hankensbuttel\";\"ascii\"\n\"2910881\";\"Hanhofen\";\"main\"\n\"2910935\";\"Hangard\";\"main\"\n\"2910949\";\"Hanerau-Hademarschen\";\"main\"\n\"2910973\";\"Handorf\";\"main\"\n\"2910986\";\"Handewitt\";\"main\"\n\"2910992\";\"Handeloh\";\"main\"\n\"2911007\";\"Hanau am Main\";\"main\"\n\"2911007\";\"Chanaou\";\"other\"\n\"2911007\";\"Hanau\";\"other\"\n\"2911007\";\"Khanau\";\"other\"\n\"2911007\";\"hanau\";\"other\"\n\"2911007\";\"Χάναου\";\"other\"\n\"2911007\";\"Ханау\";\"other\"\n\"2911007\";\"ハーナウ\";\"other\"\n\"2911044\";\"Hammoor\";\"main\"\n\"2911051\";\"Hamminkeln\";\"main\"\n\"2911099\";\"Hammersbach\";\"main\"\n\"2911145\";\"Hammerbrücke\";\"main\"\n\"2911145\";\"Hammerbrucke\";\"ascii\"\n\"2911145\";\"Hammerburg\";\"other\"\n\"2911214\";\"Hammelburg\";\"main\"\n\"2911230\";\"Hammah\";\"main\"\n\"2911240\";\"Hamm\";\"main\"\n\"2911240\";\"Hammona\";\"other\"\n\"2911240\";\"Khamm\";\"other\"\n\"2911240\";\"hamu\";\"other\"\n\"2911240\";\"Хамм\";\"other\"\n\"2911240\";\"ハム\";\"other\"\n\"2911242\";\"Hamm\";\"main\"\n\"2911271\";\"Hameln\";\"main\"\n\"2911271\";\"Hamelen\";\"other\"\n\"2911271\";\"Hamelin\";\"other\"\n\"2911271\";\"Hamelín\";\"other\"\n\"2911271\";\"hamerun\";\"other\"\n\"2911271\";\"ハーメルン\";\"other\"\n\"2911282\";\"Hamdorf\";\"main\"\n\"2911285\";\"Hamburg-Wandsbek\";\"main\"\n\"2911285\";\"Wandsbek\";\"other\"\n\"2911287\";\"Hamburg-Nord\";\"main\"\n\"2911293\";\"Hamburg-Eimsbüttel\";\"main\"\n\"2911293\";\"Hamburg-Eimsbuettel\";\"ascii\"\n\"2911293\";\"Eimsbuettel\";\"other\"\n\"2911293\";\"Eimsbüttel\";\"other\"\n\"2911296\";\"Hamburg-Altona\";\"main\"\n\"2911296\";\"Altona\";\"other\"\n\"2911298\";\"Hamburg\";\"main\"\n\"2911298\";\"Amborg\";\"other\"\n\"2911298\";\"Ambourgo\";\"other\"\n\"2911298\";\"Amburgo\";\"other\"\n\"2911298\";\"Ciutat d'Hamburg\";\"other\"\n\"2911298\";\"Estat d'Hamburg\";\"other\"\n\"2911298\";\"Gamburg\";\"other\"\n\"2911298\";\"Hamborg\";\"other\"\n\"2911298\";\"Hambourg\";\"other\"\n\"2911298\";\"Hamburga\";\"other\"\n\"2911298\";\"Hamburgas\";\"other\"\n\"2911298\";\"Hamburgo\";\"other\"\n\"2911298\";\"Hamburgu\";\"other\"\n\"2911298\";\"Hamburgum\";\"other\"\n\"2911298\";\"Hamburk\";\"other\"\n\"2911298\";\"Hampuri\";\"other\"\n\"2911298\";\"Hanburgo\";\"other\"\n\"2911298\";\"Khamburg\";\"other\"\n\"2911298\";\"ham bur k\";\"other\"\n\"2911298\";\"hambuleukeu\";\"other\"\n\"2911298\";\"hamburgi\";\"other\"\n\"2911298\";\"hambwrg\";\"other\"\n\"2911298\";\"hambwrgh\";\"other\"\n\"2911298\";\"han bao\";\"other\"\n\"2911298\";\"han bao shi\";\"other\"\n\"2911298\";\"hanburuku\";\"other\"\n\"2911298\";\"hmbwrg\";\"other\"\n\"2911298\";\"Αμβούργο\";\"other\"\n\"2911298\";\"Гамбург\";\"other\"\n\"2911298\";\"Гамбурґ\";\"other\"\n\"2911298\";\"Хамбург\";\"other\"\n\"2911298\";\"Համբուրգ\";\"other\"\n\"2911298\";\"המבורג\";\"other\"\n\"2911298\";\"هامبورغ\";\"other\"\n\"2911298\";\"هامبورگ\";\"other\"\n\"2911298\";\"ܗܡܒܘܪܓ\";\"other\"\n\"2911298\";\"ฮัมบูร์ก\";\"other\"\n\"2911298\";\"ჰამბურგი\";\"other\"\n\"2911298\";\"ハンブルク\";\"other\"\n\"2911298\";\"汉堡\";\"other\"\n\"2911298\";\"汉堡市\";\"other\"\n\"2911298\";\"함부르크\";\"other\"\n\"2911300\";\"Hambühren\";\"main\"\n\"2911300\";\"Hambuhren\";\"ascii\"\n\"2911308\";\"Hambrücken\";\"main\"\n\"2911308\";\"Hambrucken\";\"ascii\"\n\"2911322\";\"Hambergen\";\"main\"\n\"2911325\";\"Hamberge\";\"main\"\n\"2911384\";\"Halver\";\"main\"\n\"2911395\";\"Haltern\";\"main\"\n\"2911395\";\"Haltern in Westfalen\";\"other\"\n\"2911395\";\"Khal'terne\";\"other\"\n\"2911395\";\"Хальтерне\";\"other\"\n\"2911408\";\"Halstenbek\";\"main\"\n\"2911419\";\"Halsenbach\";\"main\"\n\"2911426\";\"Halsbrücke\";\"main\"\n\"2911426\";\"Halsbrucke\";\"ascii\"\n\"2911463\";\"Hallstadt\";\"main\"\n\"2911491\";\"Hallerndorf\";\"main\"\n\"2911514\";\"Hallenberg\";\"main\"\n\"2911514\";\"Hallenburg\";\"other\"\n\"2911520\";\"Halle\";\"main\"\n\"2911520\";\"Galle\";\"other\"\n\"2911520\";\"Галле\";\"other\"\n\"2911521\";\"Halle\";\"main\"\n\"2911522\";\"Halle\";\"main\"\n\"2911522\";\"Galle\";\"other\"\n\"2911522\";\"Halle (Saale)\";\"other\"\n\"2911522\";\"Halle an der Saale\";\"other\"\n\"2911522\";\"Halle sul Saale\";\"other\"\n\"2911522\";\"Halle-on-the-Saale\";\"other\"\n\"2911522\";\"Khale\";\"other\"\n\"2911522\";\"hale\";\"other\"\n\"2911522\";\"hare\";\"other\"\n\"2911522\";\"Галле\";\"other\"\n\"2911522\";\"Хале\";\"other\"\n\"2911522\";\"ჰალე\";\"other\"\n\"2911522\";\"ハレ\";\"other\"\n\"2911530\";\"Hallbergmoos\";\"main\"\n\"2911556\";\"Halfing\";\"main\"\n\"2911556\";\"Halfing bei Endorff\";\"other\"\n\"2911579\";\"Haldenwang\";\"main\"\n\"2911580\";\"Haldenwang\";\"main\"\n\"2911584\";\"Haldensleben\";\"main\"\n\"2911584\";\"Khal'densleben\";\"other\"\n\"2911584\";\"Neuhaldensleben\";\"other\"\n\"2911584\";\"Хальденслебен\";\"other\"\n\"2911648\";\"Halblech\";\"main\"\n\"2911665\";\"Halberstadt\";\"main\"\n\"2911683\";\"Halbemond\";\"main\"\n\"2911691\";\"Halbe\";\"main\"\n\"2911739\";\"Haiterbach\";\"main\"\n\"2911769\";\"Hainsfarth\";\"main\"\n\"2911795\";\"Hainichen\";\"main\"\n\"2911795\";\"Hainkschen\";\"other\"\n\"2911825\";\"Hain-Gründau\";\"main\"\n\"2911825\";\"Hain-Grundau\";\"ascii\"\n\"2911833\";\"Hainewalde\";\"main\"\n\"2911909\";\"Haina\";\"main\"\n\"2911910\";\"Haina\";\"main\"\n\"2911938\";\"Haiming\";\"main\"\n\"2911940\";\"Haimhausen\";\"main\"\n\"2911960\";\"Haigerloch\";\"main\"\n\"2911964\";\"Haiger\";\"main\"\n\"2911983\";\"Haidmühle\";\"main\"\n\"2911983\";\"Haidmuhle\";\"ascii\"\n\"2912158\";\"Haibach\";\"main\"\n\"2912159\";\"Haibach\";\"main\"\n\"2912168\";\"Hahnstätten\";\"main\"\n\"2912168\";\"Hahnstatten\";\"ascii\"\n\"2912184\";\"Hähnichen\";\"main\"\n\"2912184\";\"Hahnichen\";\"ascii\"\n\"2912195\";\"Hahnheim\";\"main\"\n\"2912351\";\"Hahnbach\";\"main\"\n\"2912417\";\"Hagnau\";\"main\"\n\"2912481\";\"Hagenow\";\"main\"\n\"2912496\";\"Hagen im Bremischen\";\"main\"\n\"2912496\";\"Hagen\";\"other\"\n\"2912534\";\"Hagenburg\";\"main\"\n\"2912539\";\"Hagenbüchach\";\"main\"\n\"2912539\";\"Hagenbuchach\";\"ascii\"\n\"2912577\";\"Hagenbach\";\"main\"\n\"2912618\";\"Hagen am Teuteburger Wald\";\"main\"\n\"2912618\";\"Hagen-Beckerode\";\"other\"\n\"2912618\";\"Khagen\";\"other\"\n\"2912618\";\"Хаген\";\"other\"\n\"2912621\";\"Hagen\";\"main\"\n\"2912621\";\"Khagen\";\"other\"\n\"2912621\";\"hagen\";\"other\"\n\"2912621\";\"hageni\";\"other\"\n\"2912621\";\"Хаген\";\"other\"\n\"2912621\";\"ჰაგენი\";\"other\"\n\"2912621\";\"ハーゲン\";\"other\"\n\"2912646\";\"Hagelstadt\";\"main\"\n\"2912681\";\"Hage\";\"main\"\n\"2912753\";\"Hafenlohr\";\"main\"\n\"2912782\";\"Hadmersleben\";\"main\"\n\"2912863\";\"Hackenheim\";\"main\"\n\"2912921\";\"Hachenburg\";\"main\"\n\"2913069\";\"Habach\";\"main\"\n\"2913177\";\"Haarbach\";\"main\"\n\"2913192\";\"Haar\";\"main\"\n\"2913192\";\"Cabelo\";\"other\"\n\"2913192\";\"Har\";\"other\"\n\"2913192\";\"Haro\";\"other\"\n\"2913192\";\"Hiukset\";\"other\"\n\"2913192\";\"Hår\";\"other\"\n\"2913192\";\"Long\";\"other\"\n\"2913192\";\"Lông\";\"other\"\n\"2913192\";\"Pelo\";\"other\"\n\"2913192\";\"Pilosite humaine\";\"other\"\n\"2913192\";\"Pilosité humaine\";\"other\"\n\"2913192\";\"Plaukas\";\"other\"\n\"2913192\";\"Pêlo\";\"other\"\n\"2913192\";\"Rambut\";\"other\"\n\"2913192\";\"Sac\";\"other\"\n\"2913192\";\"Saç\";\"other\"\n\"2913192\";\"Vlas\";\"other\"\n\"2913192\";\"Volosy\";\"other\"\n\"2913192\";\"Wlos\";\"other\"\n\"2913192\";\"Włos\";\"other\"\n\"2913192\";\"mao\";\"other\"\n\"2913192\";\"mw\";\"other\"\n\"2913192\";\"teol\";\"other\"\n\"2913192\";\"tma\";\"other\"\n\"2913192\";\"tou fa\";\"other\"\n\"2913192\";\"Волосы\";\"other\"\n\"2913192\";\"שיער\";\"other\"\n\"2913192\";\"شعر\";\"other\"\n\"2913192\";\"مو\";\"other\"\n\"2913192\";\"თმა\";\"other\"\n\"2913192\";\"毛\";\"other\"\n\"2913192\";\"頭髮\";\"other\"\n\"2913192\";\"털\";\"other\"\n\"2913195\";\"Haan\";\"main\"\n\"2913195\";\"Khaan\";\"other\"\n\"2913195\";\"Stadt Haan\";\"other\"\n\"2913195\";\"Хаан\";\"other\"\n\"2913210\";\"Haag in Oberbayern\";\"main\"\n\"2913210\";\"Haag\";\"other\"\n\"2913224\";\"Haag an der Amper\";\"main\"\n\"2913224\";\"Haag\";\"other\"\n\"2913280\";\"Gyhum\";\"main\"\n\"2913286\";\"Guxhagen\";\"main\"\n\"2913290\";\"Gützkow\";\"main\"\n\"2913290\";\"Gutzkow\";\"ascii\"\n\"2913328\";\"Guttau\";\"main\"\n\"2913366\";\"Gütersloh\";\"main\"\n\"2913366\";\"Gutersloh\";\"ascii\"\n\"2913366\";\"Gjuterslo\";\"other\"\n\"2913366\";\"Guetersloh\";\"other\"\n\"2913366\";\"ju te si luo\";\"other\"\n\"2913366\";\"Гютерсло\";\"other\"\n\"2913366\";\"居特斯洛\";\"other\"\n\"2913385\";\"Gutenstetten\";\"main\"\n\"2913405\";\"Gutenberg\";\"main\"\n\"2913406\";\"Gutenberg\";\"main\"\n\"2913414\";\"Gütenbach\";\"main\"\n\"2913414\";\"Gutenbach\";\"ascii\"\n\"2913425\";\"Gutach im Breisgau\";\"main\"\n\"2913428\";\"Gutach\";\"main\"\n\"2913433\";\"Güstrow\";\"main\"\n\"2913433\";\"Gustrow\";\"ascii\"\n\"2913445\";\"Gusterath\";\"main\"\n\"2913446\";\"Güster\";\"main\"\n\"2913446\";\"Guster\";\"ascii\"\n\"2913449\";\"Güsten\";\"main\"\n\"2913449\";\"Gusten\";\"ascii\"\n\"2913478\";\"Gusenburg\";\"main\"\n\"2913537\";\"Gunzenhausen\";\"main\"\n\"2913555\";\"Günzburg\";\"main\"\n\"2913555\";\"Gunzburg\";\"ascii\"\n\"2913558\";\"Günzach\";\"main\"\n\"2913558\";\"Gunzach\";\"ascii\"\n\"2913571\";\"Günthersdorf\";\"main\"\n\"2913571\";\"Gunthersdorf\";\"ascii\"\n\"2913587\";\"Güntersleben\";\"main\"\n\"2913587\";\"Guntersleben\";\"ascii\"\n\"2913598\";\"Guntersblum\";\"main\"\n\"2913657\";\"Gundremmingen\";\"main\"\n\"2913681\";\"Gundersheim\";\"main\"\n\"2913692\";\"Gundelsheim\";\"main\"\n\"2913693\";\"Gundelsheim\";\"main\"\n\"2913711\";\"Gundelfingen\";\"main\"\n\"2913713\";\"Gundelfingen\";\"main\"\n\"2913721\";\"Gumtow\";\"main\"\n\"2913761\";\"Gummersbach\";\"main\"\n\"2913783\";\"Gülzow\";\"main\"\n\"2913783\";\"Gulzow\";\"ascii\"\n\"2913838\";\"Güglingen\";\"main\"\n\"2913838\";\"Guglingen\";\"ascii\"\n\"2913880\";\"Gudow\";\"main\"\n\"2913888\";\"Guderhandviertel\";\"main\"\n\"2913890\";\"Gudensberg\";\"main\"\n\"2913905\";\"Gückingen\";\"main\"\n\"2913905\";\"Guckingen\";\"ascii\"\n\"2913922\";\"Guben\";\"main\"\n\"2913922\";\"Gubin\";\"other\"\n\"2913922\";\"Губен\";\"other\"\n\"2913942\";\"Gstadt am Chiemsee\";\"main\"\n\"2913942\";\"Gstadt\";\"other\"\n\"2913972\";\"Gschwend\";\"main\"\n\"2914064\";\"Grünwald\";\"main\"\n\"2914064\";\"Grunwald\";\"ascii\"\n\"2914064\";\"Grienewald\";\"other\"\n\"2914101\";\"Grünstadt\";\"main\"\n\"2914101\";\"Grunstadt\";\"ascii\"\n\"2914101\";\"Gruenspadt\";\"other\"\n\"2914101\";\"Gruenstadt\";\"other\"\n\"2914105\";\"Grünsfeld\";\"main\"\n\"2914105\";\"Grunsfeld\";\"ascii\"\n\"2914137\";\"Grünkraut\";\"main\"\n\"2914137\";\"Grunkraut\";\"ascii\"\n\"2914177\";\"Grünheide\";\"main\"\n\"2914177\";\"Grunheide\";\"ascii\"\n\"2914186\";\"Grünhainichen\";\"main\"\n\"2914186\";\"Grunhainichen\";\"ascii\"\n\"2914188\";\"Grünhain\";\"main\"\n\"2914188\";\"Grunhain\";\"ascii\"\n\"2914263\";\"Grünendeich\";\"main\"\n\"2914263\";\"Grunendeich\";\"ascii\"\n\"2914279\";\"Grünenbach\";\"main\"\n\"2914279\";\"Grunenbach\";\"ascii\"\n\"2914432\";\"Grünberg\";\"main\"\n\"2914432\";\"Grunberg\";\"ascii\"\n\"2914432\";\"Grunberg in Hessen\";\"other\"\n\"2914432\";\"Grünberg in Hessen\";\"other\"\n\"2914457\";\"Grünbach\";\"main\"\n\"2914457\";\"Grunbach\";\"ascii\"\n\"2914548\";\"Gruibingen\";\"main\"\n\"2914642\";\"Grube\";\"main\"\n\"2914661\";\"Grub\";\"main\"\n\"2914801\";\"Groß-Zimmern\";\"main\"\n\"2914801\";\"Gross-Zimmern\";\"ascii\"\n\"2914828\";\"Großwoltersdorf\";\"main\"\n\"2914828\";\"Grosswoltersdorf\";\"ascii\"\n\"2914833\";\"Groß Wokern\";\"main\"\n\"2914833\";\"Gross Wokern\";\"ascii\"\n\"2914836\";\"Groß Wittensee\";\"main\"\n\"2914836\";\"Gross Wittensee\";\"ascii\"\n\"2914872\";\"Großweitzschen\";\"main\"\n\"2914872\";\"Grossweitzschen\";\"ascii\"\n\"2914876\";\"Großweil\";\"main\"\n\"2914876\";\"Grossweil\";\"ascii\"\n\"2914890\";\"Großwallstadt\";\"main\"\n\"2914890\";\"Grosswallstadt\";\"ascii\"\n\"2914929\";\"Groß-Umstadt\";\"main\"\n\"2914929\";\"Gross-Umstadt\";\"ascii\"\n\"2914932\";\"Groß Twülpstedt\";\"main\"\n\"2914932\";\"Gross Twulpstedt\";\"ascii\"\n\"2914950\";\"Großthiemig\";\"main\"\n\"2914950\";\"Grossthiemig\";\"ascii\"\n\"2915028\";\"Großsolt\";\"main\"\n\"2915028\";\"Grosssolt\";\"ascii\"\n\"2915046\";\"Großschweidnitz\";\"main\"\n\"2915046\";\"Grossschweidnitz\";\"ascii\"\n\"2915067\";\"Großschönau\";\"main\"\n\"2915067\";\"Grossschonau\";\"ascii\"\n\"2915067\";\"Grossschoenau\";\"other\"\n\"2915067\";\"Grossschönau\";\"other\"\n\"2915076\";\"Großschirma\";\"main\"\n\"2915076\";\"Grossschirma\";\"ascii\"\n\"2915095\";\"Groß Santersleben\";\"main\"\n\"2915095\";\"Gross Santersleben\";\"ascii\"\n\"2915107\";\"Großrudestedt\";\"main\"\n\"2915107\";\"Grossrudestedt\";\"ascii\"\n\"2915111\";\"Großrückerswalde\";\"main\"\n\"2915111\";\"Grossruckerswalde\";\"ascii\"\n\"2915111\";\"Luckenwalden\";\"other\"\n\"2915116\";\"Großrosseln\";\"main\"\n\"2915116\";\"Grossrosseln\";\"ascii\"\n\"2915118\";\"Groß Rosenburg\";\"main\"\n\"2915118\";\"Gross Rosenburg\";\"ascii\"\n\"2915124\";\"Großröhrsdorf\";\"main\"\n\"2915124\";\"Grossrohrsdorf\";\"ascii\"\n\"2915128\";\"Groß-Rohrheim\";\"main\"\n\"2915128\";\"Gross-Rohrheim\";\"ascii\"\n\"2915131\";\"Groß Rodensleben\";\"main\"\n\"2915131\";\"Gross Rodensleben\";\"ascii\"\n\"2915137\";\"Großrinderfeld\";\"main\"\n\"2915137\";\"Grossrinderfeld\";\"ascii\"\n\"2915143\";\"Groß Rheide\";\"main\"\n\"2915143\";\"Gross Rheide\";\"ascii\"\n\"2915157\";\"Großräschen\";\"main\"\n\"2915157\";\"Grossraschen\";\"ascii\"\n\"2915157\";\"Grosseraeschen\";\"other\"\n\"2915157\";\"Großeraeschen\";\"other\"\n\"2915164\";\"Groß Quenstedt\";\"main\"\n\"2915164\";\"Gross Quenstedt\";\"ascii\"\n\"2915172\";\"Großpostwitz\";\"main\"\n\"2915172\";\"Grosspostwitz\";\"ascii\"\n\"2915173\";\"Großpösna\";\"main\"\n\"2915173\";\"Grossposna\";\"ascii\"\n\"2915173\";\"Grosspoessnitz\";\"other\"\n\"2915173\";\"Großpoeßnitz\";\"other\"\n\"2915191\";\"Groß Pankow\";\"main\"\n\"2915191\";\"Gross Pankow\";\"ascii\"\n\"2915196\";\"Großostheim\";\"main\"\n\"2915196\";\"Grossostheim\";\"ascii\"\n\"2915201\";\"Großörner\";\"main\"\n\"2915201\";\"Grossorner\";\"ascii\"\n\"2915209\";\"Großolbersdorf\";\"main\"\n\"2915209\";\"Grossolbersdorf\";\"ascii\"\n\"2915212\";\"Groß Oesingen\";\"main\"\n\"2915212\";\"Gross Oesingen\";\"ascii\"\n\"2915212\";\"Gross Osingen\";\"other\"\n\"2915212\";\"Groß Ösingen\";\"other\"\n\"2915226\";\"Großniedesheim\";\"main\"\n\"2915226\";\"Grossniedesheim\";\"ascii\"\n\"2915236\";\"Groß Nemerow\";\"main\"\n\"2915236\";\"Gross Nemerow\";\"ascii\"\n\"2915238\";\"Großnaundorf\";\"main\"\n\"2915238\";\"Grossnaundorf\";\"ascii\"\n\"2915252\";\"Großmonra\";\"main\"\n\"2915252\";\"Grossmonra\";\"ascii\"\n\"2915294\";\"Großmaischeid\";\"main\"\n\"2915294\";\"Grossmaischeid\";\"ascii\"\n\"2915318\";\"Großlittgen\";\"main\"\n\"2915318\";\"Grosslittgen\";\"ascii\"\n\"2915321\";\"Groß Lindow\";\"main\"\n\"2915321\";\"Gross Lindow\";\"ascii\"\n\"2915321\";\"Lindow\";\"other\"\n\"2915343\";\"Großlehna\";\"main\"\n\"2915343\";\"Grosslehna\";\"ascii\"\n\"2915349\";\"Großlangheim\";\"main\"\n\"2915349\";\"Grosslangheim\";\"ascii\"\n\"2915357\";\"Groß Laasch\";\"main\"\n\"2915357\";\"Gross Laasch\";\"ascii\"\n\"2915362\";\"Groß Kummerfeld\";\"main\"\n\"2915362\";\"Gross Kummerfeld\";\"ascii\"\n\"2915367\";\"Großkugel\";\"main\"\n\"2915367\";\"Grosskugel\";\"ascii\"\n\"2915372\";\"Großkrotzenburg\";\"main\"\n\"2915372\";\"Grosskrotzenburg\";\"ascii\"\n\"2915375\";\"Groß Kreutz\";\"main\"\n\"2915375\";\"Gross Kreutz\";\"ascii\"\n\"2915375\";\"Gross Kreuz\";\"other\"\n\"2915375\";\"Groß Kreuz\";\"other\"\n\"2915388\";\"Groß Köris\";\"main\"\n\"2915388\";\"Gross Koris\";\"ascii\"\n\"2915392\";\"Großkorbetha\";\"main\"\n\"2915392\";\"Grosskorbetha\";\"ascii\"\n\"2915392\";\"Gross Corbetha\";\"other\"\n\"2915392\";\"Groß Corbetha\";\"other\"\n\"2915410\";\"Großkmehlen\";\"main\"\n\"2915410\";\"Grosskmehlen\";\"ascii\"\n\"2915427\";\"Groß Kiesow\";\"main\"\n\"2915427\";\"Gross Kiesow\";\"ascii\"\n\"2915427\";\"Kiesow\";\"other\"\n\"2915434\";\"Großkayna\";\"main\"\n\"2915434\";\"Grosskayna\";\"ascii\"\n\"2915438\";\"Großkarolinenfeld\";\"main\"\n\"2915438\";\"Grosskarolinenfeld\";\"ascii\"\n\"2915439\";\"Großkarlbach\";\"main\"\n\"2915439\";\"Grosskarlbach\";\"ascii\"\n\"2915459\";\"Groß Ippener\";\"main\"\n\"2915459\";\"Gross Ippener\";\"ascii\"\n\"2915499\";\"Großholbach\";\"main\"\n\"2915499\";\"Grossholbach\";\"ascii\"\n\"2915511\";\"Großheubach\";\"main\"\n\"2915511\";\"Grossheubach\";\"ascii\"\n\"2915523\";\"Großhennersdorf\";\"main\"\n\"2915523\";\"Grosshennersdorf\";\"ascii\"\n\"2915529\";\"Großheirath\";\"main\"\n\"2915529\";\"Grossheirath\";\"ascii\"\n\"2915550\";\"Großhartmannsdorf\";\"main\"\n\"2915550\";\"Grosshartmannsdorf\";\"ascii\"\n\"2915552\";\"Großharthau\";\"main\"\n\"2915552\";\"Grossharthau\";\"ascii\"\n\"2915556\";\"Großhansdorf\";\"main\"\n\"2915556\";\"Grosshansdorf\";\"ascii\"\n\"2915556\";\"Groothansdoerp\";\"other\"\n\"2915556\";\"Groothansdörp\";\"other\"\n\"2915563\";\"Großhabersdorf\";\"main\"\n\"2915563\";\"Grosshabersdorf\";\"ascii\"\n\"2915574\";\"Groß Grönau\";\"main\"\n\"2915574\";\"Gross Gronau\";\"ascii\"\n\"2915613\";\"Groß-Gerau\";\"main\"\n\"2915613\";\"Gross-Gerau\";\"ascii\"\n\"2916224\";\"Großerlach\";\"main\"\n\"2916224\";\"Grosserlach\";\"ascii\"\n\"2916570\";\"Großenwiehe\";\"main\"\n\"2916570\";\"Grossenwiehe\";\"ascii\"\n\"2916581\";\"Großenstein\";\"main\"\n\"2916581\";\"Grossenstein\";\"ascii\"\n\"2916584\";\"Großenseebach\";\"main\"\n\"2916584\";\"Grossenseebach\";\"ascii\"\n\"2916584\";\"Grosenseebach\";\"other\"\n\"2916585\";\"Großensee\";\"main\"\n\"2916585\";\"Grossensee\";\"ascii\"\n\"2916606\";\"Großenlüder\";\"main\"\n\"2916606\";\"Grossenluder\";\"ascii\"\n\"2916611\";\"Großenkneten\";\"main\"\n\"2916611\";\"Grossenkneten\";\"ascii\"\n\"2916630\";\"Großenhain\";\"main\"\n\"2916630\";\"Grossenhain\";\"ascii\"\n\"2916636\";\"Großengottern\";\"main\"\n\"2916636\";\"Grossengottern\";\"ascii\"\n\"2916643\";\"Großenehrich\";\"main\"\n\"2916643\";\"Grossenehrich\";\"ascii\"\n\"2916655\";\"Großenbrode\";\"main\"\n\"2916655\";\"Grossenbrode\";\"ascii\"\n\"2916676\";\"Großenaspe\";\"main\"\n\"2916676\";\"Grossenaspe\";\"ascii\"\n\"2916696\";\"Grosselfingen\";\"main\"\n\"2916731\";\"Großeibstadt\";\"main\"\n\"2916731\";\"Grosseibstadt\";\"ascii\"\n\"2916839\";\"Großdubrau\";\"main\"\n\"2916839\";\"Grossdubrau\";\"ascii\"\n\"2916840\";\"Groß Düben\";\"main\"\n\"2916840\";\"Gross Duben\";\"ascii\"\n\"2916840\";\"Dzewin\";\"other\"\n\"2916840\";\"Džěwin\";\"other\"\n\"2916926\";\"Großbreitenbach\";\"main\"\n\"2916926\";\"Grossbreitenbach\";\"ascii\"\n\"2916936\";\"Großbottwar\";\"main\"\n\"2916936\";\"Grossbottwar\";\"ascii\"\n\"2916937\";\"Großbothen\";\"main\"\n\"2916937\";\"Grossbothen\";\"ascii\"\n\"2916942\";\"Groß Börnecke\";\"main\"\n\"2916942\";\"Gross Bornecke\";\"ascii\"\n\"2916949\";\"Großbodungen\";\"main\"\n\"2916949\";\"Grossbodungen\";\"ascii\"\n\"2916966\";\"Groß-Bieberau\";\"main\"\n\"2916966\";\"Gross-Bieberau\";\"ascii\"\n\"2916972\";\"Großbettlingen\";\"main\"\n\"2916972\";\"Grossbettlingen\";\"ascii\"\n\"2916996\";\"Großbeeren\";\"main\"\n\"2916996\";\"Grossbeeren\";\"ascii\"\n\"2917002\";\"Großbartloff\";\"main\"\n\"2917002\";\"Grossbartloff\";\"ascii\"\n\"2917013\";\"Großbardorf\";\"main\"\n\"2917013\";\"Grossbardorf\";\"ascii\"\n\"2917014\";\"Großbardau\";\"main\"\n\"2917014\";\"Grossbardau\";\"ascii\"\n\"2917046\";\"Groß Ammensleben\";\"main\"\n\"2917046\";\"Gross Ammensleben\";\"ascii\"\n\"2917053\";\"Großalmerode\";\"main\"\n\"2917053\";\"Grossalmerode\";\"ascii\"\n\"2917060\";\"Großaitingen\";\"main\"\n\"2917060\";\"Grossaitingen\";\"ascii\"\n\"2917098\";\"Grönwohld\";\"main\"\n\"2917098\";\"Gronwohld\";\"ascii\"\n\"2917107\";\"Gröningen\";\"main\"\n\"2917107\";\"Groningen\";\"ascii\"\n\"2917138\";\"Gronau\";\"main\"\n\"2917139\";\"Gronau\";\"main\"\n\"2917150\";\"Grömitz\";\"main\"\n\"2917150\";\"Gromitz\";\"ascii\"\n\"2917157\";\"Grolsheim\";\"main\"\n\"2917169\";\"Groitzsch\";\"main\"\n\"2917194\";\"Gröden\";\"main\"\n\"2917194\";\"Groden\";\"ascii\"\n\"2917206\";\"Gröbzig\";\"main\"\n\"2917206\";\"Grobzig\";\"ascii\"\n\"2917217\";\"Gröbers\";\"main\"\n\"2917217\";\"Grobers\";\"ascii\"\n\"2917221\";\"Gröbenzell\";\"main\"\n\"2917221\";\"Grobenzell\";\"ascii\"\n\"2917309\";\"Grimmen\";\"main\"\n\"2917325\";\"Grimma\";\"main\"\n\"2917380\";\"Griesstätt\";\"main\"\n\"2917380\";\"Griesstatt\";\"ascii\"\n\"2917412\";\"Griesheim\";\"main\"\n\"2917461\";\"Bad Griesbach\";\"main\"\n\"2917461\";\"Bad Griesbach im Rottal\";\"other\"\n\"2917461\";\"Griesbach im Rott\";\"other\"\n\"2917466\";\"Gries\";\"main\"\n\"2917520\";\"Grevesmühlen\";\"main\"\n\"2917520\";\"Grevesmuhlen\";\"ascii\"\n\"2917520\";\"Grevesmuehlen\";\"other\"\n\"2917540\";\"Grevenbroich\";\"main\"\n\"2917544\";\"Greven\";\"main\"\n\"2917544\";\"Гревен\";\"other\"\n\"2917578\";\"Greußenheim\";\"main\"\n\"2917578\";\"Greussenheim\";\"ascii\"\n\"2917579\";\"Greußen\";\"main\"\n\"2917579\";\"Greussen\";\"ascii\"\n\"2917586\";\"Grettstadt\";\"main\"\n\"2917626\";\"Greppin\";\"main\"\n\"2917698\";\"Grenzach-Wyhlen\";\"main\"\n\"2917698\";\"Grenzach\";\"other\"\n\"2917714\";\"Gremsdorf\";\"main\"\n\"2917724\";\"Gremersdorf\";\"main\"\n\"2917726\";\"Gremberghoven\";\"main\"\n\"2917726\";\"Grembergkhofen\";\"other\"\n\"2917726\";\"Kjol'n/Porc-Grembergkhofen\";\"other\"\n\"2917726\";\"Грембергхофен\";\"other\"\n\"2917726\";\"Кёльн/Порц-Грембергхофен\";\"other\"\n\"2917737\";\"Greiz\";\"main\"\n\"2917737\";\"Grajc\";\"other\"\n\"2917737\";\"Грайц\";\"other\"\n\"2917776\";\"Greimerath\";\"main\"\n\"2917782\";\"Greiling\";\"main\"\n\"2917788\";\"Greifswald\";\"main\"\n\"2917788\";\"Grajfsval'd\";\"other\"\n\"2917788\";\"Griefswald\";\"other\"\n\"2917788\";\"Griepswohld\";\"other\"\n\"2917788\";\"guraifusuvu~aruto\";\"other\"\n\"2917788\";\"Грайфсвальд\";\"other\"\n\"2917788\";\"グライフスヴァルト\";\"other\"\n\"2917793\";\"Greifenstein\";\"main\"\n\"2917803\";\"Greifenberg\";\"main\"\n\"2917816\";\"Grefrath\";\"main\"\n\"2917833\";\"Greding\";\"main\"\n\"2917846\";\"Grebin\";\"main\"\n\"2917846\";\"Greben\";\"other\"\n\"2917848\";\"Grebenstein\";\"main\"\n\"2917850\";\"Grebenhain\";\"main\"\n\"2917858\";\"Grebenau\";\"main\"\n\"2917868\";\"Grävenwiesbach\";\"main\"\n\"2917868\";\"Gravenwiesbach\";\"ascii\"\n\"2917951\";\"Grattersdorf\";\"main\"\n\"2917978\";\"Grassau\";\"main\"\n\"2917991\";\"Grasleben\";\"main\"\n\"2917991\";\"Graslehen\";\"other\"\n\"2917991\";\"Groslehen\";\"other\"\n\"2918037\";\"Grasbrunn\";\"main\"\n\"2918041\";\"Grasberg\";\"main\"\n\"2918088\";\"Gransee\";\"main\"\n\"2918092\";\"Granschütz\";\"main\"\n\"2918092\";\"Granschutz\";\"ascii\"\n\"2918133\";\"Gramzow\";\"main\"\n\"2918168\";\"Gramkow\";\"main\"\n\"2918200\";\"Grainet\";\"main\"\n\"2918204\";\"Grainau\";\"main\"\n\"2918232\";\"Grafrath\";\"main\"\n\"2918241\";\"Grafing bei München\";\"main\"\n\"2918241\";\"Grafing bei Munchen\";\"ascii\"\n\"2918241\";\"Grafing\";\"other\"\n\"2918241\";\"Markt Grafing\";\"other\"\n\"2918253\";\"Grafhorst\";\"main\"\n\"2918258\";\"Grafenwöhr\";\"main\"\n\"2918258\";\"Grafenwohr\";\"ascii\"\n\"2918258\";\"Gravenwerth\";\"other\"\n\"2918260\";\"Grafenwiesen\";\"main\"\n\"2918271\";\"Gräfenthal\";\"main\"\n\"2918271\";\"Grafenthal\";\"ascii\"\n\"2918282\";\"Gräfenroda\";\"main\"\n\"2918282\";\"Grafenroda\";\"ascii\"\n\"2918288\";\"Grafenrheinfeld\";\"main\"\n\"2918316\";\"Grafenhausen\";\"main\"\n\"2918316\";\"Grafenhaussen\";\"other\"\n\"2918321\";\"Gräfenhainichen\";\"main\"\n\"2918321\";\"Grafenhainichen\";\"ascii\"\n\"2918321\";\"Grafenhainchen\";\"other\"\n\"2918321\";\"Gräfenhainchen\";\"other\"\n\"2918323\";\"Gräfenhain\";\"main\"\n\"2918323\";\"Grafenhain\";\"ascii\"\n\"2918324\";\"Grafengehaig\";\"main\"\n\"2918324\";\"Grafengelhaig\";\"other\"\n\"2918338\";\"Gräfendorf\";\"main\"\n\"2918338\";\"Grafendorf\";\"ascii\"\n\"2918350\";\"Gräfenberg\";\"main\"\n\"2918350\";\"Grafenberg\";\"ascii\"\n\"2918365\";\"Grafenau\";\"main\"\n\"2918365\";\"Gravenau\";\"other\"\n\"2918368\";\"Gräfelfing\";\"main\"\n\"2918368\";\"Grafelfing\";\"ascii\"\n\"2918393\";\"Grabsleben\";\"main\"\n\"2918398\";\"Grabowhöfe\";\"main\"\n\"2918398\";\"Grabowhofe\";\"ascii\"\n\"2918405\";\"Grabow\";\"main\"\n\"2918431\";\"Grabenstetten\";\"main\"\n\"2918434\";\"Grabenstätt\";\"main\"\n\"2918434\";\"Grabenstatt\";\"ascii\"\n\"2918468\";\"Graben\";\"main\"\n\"2918612\";\"Gottmadingen\";\"main\"\n\"2918632\";\"Göttingen\";\"main\"\n\"2918632\";\"Gottingen\";\"ascii\"\n\"2918632\";\"G'otingen\";\"other\"\n\"2918632\";\"Getynga\";\"other\"\n\"2918632\";\"Gjottingen\";\"other\"\n\"2918632\";\"Goettinga\";\"other\"\n\"2918632\";\"Goettingen\";\"other\"\n\"2918632\";\"Gottinga\";\"other\"\n\"2918632\";\"ge ting gen\";\"other\"\n\"2918632\";\"gettingen\";\"other\"\n\"2918632\";\"goeting-gen\";\"other\"\n\"2918632\";\"gtyngn\";\"other\"\n\"2918632\";\"Гьотинген\";\"other\"\n\"2918632\";\"Гёттинген\";\"other\"\n\"2918632\";\"גטינגן\";\"other\"\n\"2918632\";\"გეტინგენი\";\"other\"\n\"2918632\";\"ゲッティンゲン\";\"other\"\n\"2918632\";\"哥廷根\";\"other\"\n\"2918632\";\"괴팅겐\";\"other\"\n\"2918659\";\"Gottfrieding\";\"main\"\n\"2918659\";\"Gottfriedinger Schwaig\";\"other\"\n\"2918661\";\"Gotteszell\";\"main\"\n\"2918707\";\"Gottenheim\";\"main\"\n\"2918752\";\"Gotha\";\"main\"\n\"2918752\";\"Gota\";\"other\"\n\"2918752\";\"ge da\";\"other\"\n\"2918752\";\"Гота\";\"other\"\n\"2918752\";\"哥達\";\"other\"\n\"2918766\";\"Goßwitz\";\"main\"\n\"2918766\";\"Gosswitz\";\"ascii\"\n\"2918767\";\"Gößweinstein\";\"main\"\n\"2918767\";\"Gossweinstein\";\"ascii\"\n\"2918770\";\"Gößnitz\";\"main\"\n\"2918770\";\"Gossnitz\";\"ascii\"\n\"2918804\";\"Gössenheim\";\"main\"\n\"2918804\";\"Gossenheim\";\"ascii\"\n\"2918840\";\"Goslar\";\"main\"\n\"2918840\";\"Goslaria\";\"other\"\n\"2918840\";\"ge si la er\";\"other\"\n\"2918840\";\"gwslr\";\"other\"\n\"2918840\";\"Гослар\";\"other\"\n\"2918840\";\"גוסלר\";\"other\"\n\"2918840\";\"戈斯拉尔\";\"other\"\n\"2918844\";\"Gosheim\";\"main\"\n\"2918868\";\"Goseck\";\"main\"\n\"2918896\";\"Görzke\";\"main\"\n\"2918896\";\"Gorzke\";\"ascii\"\n\"2918899\";\"Görzig\";\"main\"\n\"2918899\";\"Gorzig\";\"ascii\"\n\"2918911\";\"Görwihl\";\"main\"\n\"2918911\";\"Gorwihl\";\"ascii\"\n\"2918911\";\"Gohrwil\";\"other\"\n\"2918911\";\"Göhrwil\";\"other\"\n\"2918942\";\"Görsbach\";\"main\"\n\"2918942\";\"Gorsbach\";\"ascii\"\n\"2918951\";\"Gornsdorf\";\"main\"\n\"2918970\";\"Gornau\";\"main\"\n\"2918974\";\"Görmin\";\"main\"\n\"2918974\";\"Gormin\";\"ascii\"\n\"2918987\";\"Görlitz\";\"main\"\n\"2918987\";\"Gorlitz\";\"ascii\"\n\"2918987\";\"Gjorlic\";\"other\"\n\"2918987\";\"Goerlitz\";\"other\"\n\"2918987\";\"Gorlicium\";\"other\"\n\"2918987\";\"Zhorelec\";\"other\"\n\"2918987\";\"Zhořelec\";\"other\"\n\"2918987\";\"ge er li ci\";\"other\"\n\"2918987\";\"gerurittsu\";\"other\"\n\"2918987\";\"Гёрлиц\";\"other\"\n\"2918987\";\"ゲルリッツ\";\"other\"\n\"2918987\";\"格尔利茨\";\"other\"\n\"2919008\";\"Görisried\";\"main\"\n\"2919008\";\"Gorisried\";\"ascii\"\n\"2919054\";\"Göppingen\";\"main\"\n\"2919054\";\"Goppingen\";\"ascii\"\n\"2919054\";\"Gjoppingen\";\"other\"\n\"2919054\";\"Goeppingen\";\"other\"\n\"2919054\";\"Гёппинген\";\"other\"\n\"2919101\";\"Gönnheim\";\"main\"\n\"2919101\";\"Gonnheim\";\"ascii\"\n\"2919123\";\"Gondelsheim\";\"main\"\n\"2919135\";\"Gommersheim\";\"main\"\n\"2919138\";\"Gommern\";\"main\"\n\"2919146\";\"Gomaringen\";\"main\"\n\"2919147\";\"Gomadingen\";\"main\"\n\"2919156\";\"Golzow\";\"main\"\n\"2919177\";\"Golßen\";\"main\"\n\"2919177\";\"Golssen\";\"ascii\"\n\"2919197\";\"Golmbach\";\"main\"\n\"2919232\";\"Göllheim\";\"main\"\n\"2919232\";\"Gollheim\";\"ascii\"\n\"2919232\";\"Goellheim\";\"other\"\n\"2919290\";\"Goldkronach\";\"main\"\n\"2919310\";\"Goldenstedt\";\"main\"\n\"2919366\";\"Goldberg\";\"main\"\n\"2919415\";\"Goldbeck\";\"main\"\n\"2919436\";\"Goldbach\";\"main\"\n\"2919438\";\"Goldbach\";\"main\"\n\"2919514\";\"Göhl\";\"main\"\n\"2919514\";\"Gohl\";\"ascii\"\n\"2919514\";\"Goel\";\"other\"\n\"2919524\";\"Göggingen\";\"main\"\n\"2919524\";\"Goggingen\";\"ascii\"\n\"2919609\";\"Göda\";\"main\"\n\"2919609\";\"Goda\";\"ascii\"\n\"2919620\";\"Gochsheim\";\"main\"\n\"2919625\";\"Goch\";\"main\"\n\"2919648\";\"Gnutz\";\"main\"\n\"2919657\";\"Gnoien\";\"main\"\n\"2919692\";\"Gnarrenburg\";\"main\"\n\"2919717\";\"Gmund am Tegernsee\";\"main\"\n\"2919717\";\"Gmund\";\"other\"\n\"2919763\";\"Glückstadt\";\"main\"\n\"2919763\";\"Gluckstadt\";\"ascii\"\n\"2919765\";\"Glücksburg\";\"main\"\n\"2919765\";\"Glucksburg\";\"ascii\"\n\"2919765\";\"Gluecksburg\";\"other\"\n\"2919765\";\"Lyksborg\";\"other\"\n\"2919782\";\"Glowe\";\"main\"\n\"2919792\";\"Glött\";\"main\"\n\"2919792\";\"Glott\";\"ascii\"\n\"2919794\";\"Glöthe\";\"main\"\n\"2919794\";\"Glothe\";\"ascii\"\n\"2919812\";\"Glonn\";\"main\"\n\"2919877\";\"Glindenberg\";\"main\"\n\"2919880\";\"Glinde\";\"main\"\n\"2919880\";\"Glinn\";\"other\"\n\"2919908\";\"Glienicke\";\"main\"\n\"2920002\";\"Gleichamberg\";\"main\"\n\"2920020\";\"Glauchau\";\"main\"\n\"2920020\";\"Glaukhau\";\"other\"\n\"2920020\";\"Stadt Glauchau\";\"other\"\n\"2920020\";\"Глаухау\";\"other\"\n\"2920024\";\"Glauburg\";\"main\"\n\"2920027\";\"Glaubitz\";\"main\"\n\"2920041\";\"Glatten\";\"main\"\n\"2920043\";\"Glattbach\";\"main\"\n\"2920085\";\"Glashütten\";\"main\"\n\"2920085\";\"Glashutten\";\"ascii\"\n\"2920086\";\"Glashütten\";\"main\"\n\"2920086\";\"Glashutten\";\"ascii\"\n\"2920104\";\"Glashütte\";\"main\"\n\"2920104\";\"Glashutte\";\"ascii\"\n\"2920197\";\"Glan-Münchweiler\";\"main\"\n\"2920197\";\"Glan-Munchweiler\";\"ascii\"\n\"2920197\";\"Munchweiler\";\"other\"\n\"2920197\";\"Münchweiler\";\"other\"\n\"2920205\";\"Glandorf\";\"main\"\n\"2920229\";\"Gladenbach\";\"main\"\n\"2920236\";\"Gladbeck\";\"main\"\n\"2920268\";\"Gittelde\";\"main\"\n\"2920291\";\"Girod\";\"main\"\n\"2920329\";\"Ginsheim-Gustavsburg\";\"main\"\n\"2920342\";\"Gingst\";\"main\"\n\"2920348\";\"Gingen an der Fils\";\"main\"\n\"2920348\";\"Gingen\";\"other\"\n\"2920377\";\"Gimbsheim\";\"main\"\n\"2920386\";\"Gilten\";\"main\"\n\"2920389\";\"Gilserberg\";\"main\"\n\"2920413\";\"Gillenfeld\";\"main\"\n\"2920433\";\"Gilching\";\"main\"\n\"2920478\";\"Gifhorn\";\"main\"\n\"2920512\";\"Gießen\";\"main\"\n\"2920512\";\"Giessen\";\"ascii\"\n\"2920512\";\"Gieben\";\"other\"\n\"2920512\";\"Gissen\";\"other\"\n\"2920512\";\"Гиссен\";\"other\"\n\"2920582\";\"Giersleben\";\"main\"\n\"2920620\";\"Giengen an der Brenz\";\"main\"\n\"2920620\";\"Giengen\";\"other\"\n\"2920628\";\"Gielow\";\"main\"\n\"2920634\";\"Giekau\";\"main\"\n\"2920645\";\"Gieboldehausen\";\"main\"\n\"2920652\";\"Giebelstadt\";\"main\"\n\"2920652\";\"Geibelstadte\";\"other\"\n\"2920728\";\"Geyer\";\"main\"\n\"2920757\";\"Gevelsberg\";\"main\"\n\"2920768\";\"Geusa\";\"main\"\n\"2920776\";\"Gettorf\";\"main\"\n\"2920796\";\"Gestratz\";\"main\"\n\"2920812\";\"Gessertshausen\";\"main\"\n\"2920830\";\"Geslau\";\"main\"\n\"2920834\";\"Geseke\";\"main\"\n\"2920834\";\"Gesecke\";\"other\"\n\"2920834\";\"Gezeke\";\"other\"\n\"2920834\";\"Гезеке\";\"other\"\n\"2920835\";\"Gesees\";\"main\"\n\"2920837\";\"Geschwenda\";\"main\"\n\"2920842\";\"Gescher\";\"main\"\n\"2920849\";\"Gerzen\";\"main\"\n\"2920850\";\"Gerwisch\";\"main\"\n\"2920881\";\"Gerswalde\";\"main\"\n\"2920883\";\"Gerstungen\";\"main\"\n\"2920891\";\"Gersthofen\";\"main\"\n\"2920896\";\"Gerstetten\";\"main\"\n\"2920914\";\"Gersten\";\"main\"\n\"2920921\";\"Gersheim\";\"main\"\n\"2920926\";\"Gersfeld\";\"main\"\n\"2920934\";\"Gersdorf\";\"main\"\n\"2920939\";\"Gersdorf\";\"main\"\n\"2920959\";\"Gerolzhofen\";\"main\"\n\"2920963\";\"Gerolstein\";\"main\"\n\"2920964\";\"Gerolsheim\";\"main\"\n\"2920967\";\"Gerolsbach\";\"main\"\n\"2920969\";\"Gerolfingen\";\"main\"\n\"2920977\";\"Geroldshausen\";\"main\"\n\"2920979\";\"Geroldsgrün\";\"main\"\n\"2920979\";\"Geroldsgrun\";\"ascii\"\n\"2920994\";\"Gernsheim\";\"main\"\n\"2920997\";\"Gernsbach\";\"main\"\n\"2920999\";\"Gernrode\";\"main\"\n\"2920999\";\"Bad Gernrode\";\"other\"\n\"2921000\";\"Gernrode\";\"main\"\n\"2921034\";\"Germersheim\";\"main\"\n\"2921034\";\"Gemersheim\";\"other\"\n\"2921034\";\"Germerskhajm\";\"other\"\n\"2921034\";\"Гермерсхайм\";\"other\"\n\"2921039\";\"Germering\";\"main\"\n\"2921061\";\"Gerlingen\";\"main\"\n\"2921089\";\"Geringswalde\";\"main\"\n\"2921119\";\"Gerhardshofen\";\"main\"\n\"2921139\";\"Geretsried\";\"main\"\n\"2921162\";\"Gerdau\";\"main\"\n\"2921164\";\"Gerbstedt\";\"main\"\n\"2921165\";\"Gerbrunn\";\"main\"\n\"2921165\";\"Gerbrun\";\"other\"\n\"2921223\";\"Gerach\";\"main\"\n\"2921226\";\"Gerabronn\";\"main\"\n\"2921228\";\"Geraberg\";\"main\"\n\"2921228\";\"Gera\";\"other\"\n\"2921232\";\"Gera\";\"main\"\n\"2921232\";\"ge la\";\"other\"\n\"2921232\";\"gera\";\"other\"\n\"2921232\";\"Гера\";\"other\"\n\"2921232\";\"ゲーラ\";\"other\"\n\"2921232\";\"格拉\";\"other\"\n\"2921242\";\"Georgsmarienhütte\";\"main\"\n\"2921242\";\"Georgsmarienhutte\";\"ascii\"\n\"2921252\";\"Georgsdorf\";\"main\"\n\"2921261\";\"Georgenthal\";\"main\"\n\"2921267\";\"Georgensgmünd\";\"main\"\n\"2921267\";\"Georgensgmund\";\"ascii\"\n\"2921288\";\"Georgenberg\";\"main\"\n\"2921309\";\"Genthin\";\"main\"\n\"2921314\";\"Gensingen\";\"main\"\n\"2921355\";\"Gengenbach\";\"main\"\n\"2921371\";\"Genderkingen\";\"main\"\n\"2921375\";\"Gemünden an der Wohra\";\"main\"\n\"2921375\";\"Gemunden an der Wohra\";\"ascii\"\n\"2921375\";\"Gemunden\";\"other\"\n\"2921375\";\"Gemünden\";\"other\"\n\"2921379\";\"Gemünden\";\"main\"\n\"2921379\";\"Gemunden\";\"ascii\"\n\"2921380\";\"Gemünden\";\"main\"\n\"2921380\";\"Gemunden\";\"ascii\"\n\"2921388\";\"Gemmrigheim\";\"main\"\n\"2921389\";\"Gemmingen\";\"main\"\n\"2921444\";\"Gelting\";\"main\"\n\"2921449\";\"Geltendorf\";\"main\"\n\"2921466\";\"Gelsenkirchen\";\"main\"\n\"2921466\";\"Chaesekerken\";\"other\"\n\"2921466\";\"Chäsekerken\";\"other\"\n\"2921466\";\"Gel'zenkirkhen\";\"other\"\n\"2921466\";\"Gelsenkirhene\";\"other\"\n\"2921466\";\"Gelzenkirchenas\";\"other\"\n\"2921466\";\"Gelzenkirkhen\";\"other\"\n\"2921466\";\"Gelzenkirxen\";\"other\"\n\"2921466\";\"Nkelzen'kirchen\";\"other\"\n\"2921466\";\"gai er sen ji xing\";\"other\"\n\"2921466\";\"geljenkileuhen\";\"other\"\n\"2921466\";\"geruzenkiruhyen\";\"other\"\n\"2921466\";\"ghylznkyrshn\";\"other\"\n\"2921466\";\"glznqyrsn\";\"other\"\n\"2921466\";\"kel sen kheiyr sen\";\"other\"\n\"2921466\";\"Γκελζενκίρχεν\";\"other\"\n\"2921466\";\"Гелзенкирхен\";\"other\"\n\"2921466\";\"Гельзенкирхен\";\"other\"\n\"2921466\";\"גלזנקירשן\";\"other\"\n\"2921466\";\"غيلزنكيرشن\";\"other\"\n\"2921466\";\"گلزن‌کیرشن\";\"other\"\n\"2921466\";\"เกลเซนเคียร์เซน\";\"other\"\n\"2921466\";\"ゲルゼンキルヒェン\";\"other\"\n\"2921466\";\"盖尔森基兴\";\"other\"\n\"2921466\";\"겔젠키르헨\";\"other\"\n\"2921473\";\"Gelnhausen\";\"main\"\n\"2921522\";\"Gelenau\";\"main\"\n\"2921525\";\"Geldersheim\";\"main\"\n\"2921525\";\"Geltersheim\";\"other\"\n\"2921528\";\"Geldern\";\"main\"\n\"2921547\";\"Gelbensande\";\"main\"\n\"2921566\";\"Geithain\";\"main\"\n\"2921642\";\"Geismar\";\"main\"\n\"2921653\";\"Geislingen an der Steige\";\"main\"\n\"2921653\";\"Geislingen\";\"other\"\n\"2921653\";\"Stadt Geislingen an der Steige\";\"other\"\n\"2921656\";\"Geislingen\";\"main\"\n\"2921664\";\"Geisleden\";\"main\"\n\"2921664\";\"Geissleden\";\"other\"\n\"2921664\";\"Geißleden\";\"other\"\n\"2921682\";\"Geisingen\";\"main\"\n\"2921684\";\"Geising\";\"main\"\n\"2921707\";\"Geisenheim\";\"main\"\n\"2921709\";\"Geisenhausen\";\"main\"\n\"2921713\";\"Geisenfeld\";\"main\"\n\"2921724\";\"Geiselwind\";\"main\"\n\"2921736\";\"Geiselhöring\";\"main\"\n\"2921736\";\"Geiselhoring\";\"ascii\"\n\"2921736\";\"Geisselhoving\";\"other\"\n\"2921755\";\"Geiselbach\";\"main\"\n\"2921816\";\"Geisa\";\"main\"\n\"2921837\";\"Geilenkirchen\";\"main\"\n\"2921837\";\"Gejlenkirkhen\";\"other\"\n\"2921837\";\"Гейленкирхен\";\"other\"\n\"2921886\";\"Geiersthal\";\"main\"\n\"2921996\";\"Gehren\";\"main\"\n\"2922008\";\"Gehrden\";\"main\"\n\"2922012\";\"Gehrde\";\"main\"\n\"2922085\";\"Gefrees\";\"main\"\n\"2922102\";\"Geesthacht\";\"main\"\n\"2922102\";\"Stadt Geesthacht\";\"other\"\n\"2922112\";\"Geeste\";\"main\"\n\"2922124\";\"Gedern\";\"main\"\n\"2922136\";\"Gechingen\";\"main\"\n\"2922141\";\"Gebsattel\";\"main\"\n\"2922174\";\"Gebhardshain\";\"main\"\n\"2922177\";\"Gebesee\";\"main\"\n\"2922230\";\"Gauting\";\"main\"\n\"2922245\";\"Gau-Odernheim\";\"main\"\n\"2922271\";\"Gaukönigshofen\";\"main\"\n\"2922271\";\"Gaukonigshofen\";\"ascii\"\n\"2922304\";\"Gau-Bischofsheim\";\"main\"\n\"2922305\";\"Gau-Bickelheim\";\"main\"\n\"2922309\";\"Gau-Algesheim\";\"main\"\n\"2922342\";\"Gatersleben\";\"main\"\n\"2922419\";\"Garz\";\"main\"\n\"2922432\";\"Gartz\";\"main\"\n\"2922432\";\"Gardziec\";\"other\"\n\"2922432\";\"Gartz an der Oder\";\"other\"\n\"2922436\";\"Gärtringen\";\"main\"\n\"2922436\";\"Gartringen\";\"ascii\"\n\"2922438\";\"Gartow\";\"main\"\n\"2922484\";\"Garstedt\";\"main\"\n\"2922502\";\"Gars\";\"main\"\n\"2922511\";\"Garrel\";\"main\"\n\"2922530\";\"Garmisch-Partenkirchen\";\"main\"\n\"2922530\";\"Garmish-Partenkirkhen\";\"other\"\n\"2922530\";\"Markt Garmisch-Partenkirchen\";\"other\"\n\"2922530\";\"garumisshu=parutenkiruhyen\";\"other\"\n\"2922530\";\"Гармиш-Партенкирхен\";\"other\"\n\"2922530\";\"ガルミッシュ＝パルテンキルヒェン\";\"other\"\n\"2922539\";\"Garlstorf\";\"main\"\n\"2922571\";\"Garding\";\"main\"\n\"2922580\";\"Gardelegen\";\"main\"\n\"2922580\";\"Gardelengen\";\"other\"\n\"2922582\";\"Garching bei München\";\"main\"\n\"2922582\";\"Garching bei Munchen\";\"ascii\"\n\"2922582\";\"Arching\";\"other\"\n\"2922582\";\"Garching\";\"other\"\n\"2922583\";\"Garching an der Alz\";\"main\"\n\"2922583\";\"Garching\";\"other\"\n\"2922586\";\"Garbsen\";\"main\"\n\"2922711\";\"Gangloffsömmern\";\"main\"\n\"2922711\";\"Gangloffsommern\";\"ascii\"\n\"2922716\";\"Gangkofen\";\"main\"\n\"2922716\";\"Ganghofen\";\"other\"\n\"2922716\";\"Gankfoken\";\"other\"\n\"2922722\";\"Gangelt\";\"main\"\n\"2922731\";\"Ganderkesee\";\"main\"\n\"2922747\";\"Gammertingen\";\"main\"\n\"2922753\";\"Gammelshausen\";\"main\"\n\"2922754\";\"Gammelsdorf\";\"main\"\n\"2922754\";\"Gamelsdorf\";\"other\"\n\"2923253\";\"Gaißach\";\"main\"\n\"2923253\";\"Gaissach\";\"ascii\"\n\"2923305\";\"Gaimersheim\";\"main\"\n\"2923305\";\"Goamascham\";\"other\"\n\"2923315\";\"Gailingen\";\"main\"\n\"2923325\";\"Gaildorf\";\"main\"\n\"2923333\";\"Gaienhofen\";\"main\"\n\"2923334\";\"Gaiberg\";\"main\"\n\"2923362\";\"Gaggenau\";\"main\"\n\"2923371\";\"Gägelow\";\"main\"\n\"2923371\";\"Gagelow\";\"ascii\"\n\"2923387\";\"Gadheim\";\"main\"\n\"2923410\";\"Gadebusch\";\"main\"\n\"2923426\";\"Gachenbach\";\"main\"\n\"2923439\";\"Gablingen\";\"main\"\n\"2923444\";\"Gablenz\";\"main\"\n\"2923444\";\"Jabtonc\";\"other\"\n\"2923444\";\"Jabtońc\";\"other\"\n\"2923500\";\"Bad Füssing\";\"main\"\n\"2923500\";\"Bad Fussing\";\"ascii\"\n\"2923500\";\"Fussing\";\"other\"\n\"2923500\";\"Füssing\";\"other\"\n\"2923503\";\"Fußgönheim\";\"main\"\n\"2923503\";\"Fussgonheim\";\"ascii\"\n\"2923507\";\"Füssen\";\"main\"\n\"2923507\";\"Fussen\";\"ascii\"\n\"2923507\";\"Fuessen\";\"other\"\n\"2923507\";\"fu~yussen\";\"other\"\n\"2923507\";\"フュッセン\";\"other\"\n\"2923521\";\"Furtwangen\";\"main\"\n\"2923521\";\"Furtwangen im Schwarzwald\";\"other\"\n\"2923521\";\"furutovu~angen\";\"other\"\n\"2923521\";\"فورت‌وانگن\";\"other\"\n\"2923521\";\"フルトヴァンゲン\";\"other\"\n\"2923529\";\"Furth im Wald\";\"main\"\n\"2923529\";\"Brod nad Lesy\";\"other\"\n\"2923529\";\"Furt\";\"other\"\n\"2923529\";\"Furth\";\"other\"\n\"2923534\";\"Fürthen\";\"main\"\n\"2923534\";\"Furthen\";\"ascii\"\n\"2923543\";\"Fürth\";\"main\"\n\"2923543\";\"Furth\";\"ascii\"\n\"2923544\";\"Fürth\";\"main\"\n\"2923544\";\"Furth\";\"ascii\"\n\"2923544\";\"Firt\";\"other\"\n\"2923544\";\"Fjurt\";\"other\"\n\"2923544\";\"Fuerth\";\"other\"\n\"2923544\";\"fei er te\";\"other\"\n\"2923544\";\"fu~yuruto\";\"other\"\n\"2923544\";\"Фирт\";\"other\"\n\"2923544\";\"Фюрт\";\"other\"\n\"2923544\";\"フュルト\";\"other\"\n\"2923544\";\"菲尔特\";\"other\"\n\"2923553\";\"Furth\";\"main\"\n\"2923584\";\"Fürstenzell\";\"main\"\n\"2923584\";\"Furstenzell\";\"ascii\"\n\"2923588\";\"Fürstenwalde\";\"main\"\n\"2923588\";\"Furstenwalde\";\"ascii\"\n\"2923595\";\"Fürstenstein\";\"main\"\n\"2923595\";\"Furstenstein\";\"ascii\"\n\"2923625\";\"Fürstenfeldbruck\";\"main\"\n\"2923625\";\"Fuerstenfeldbruck\";\"ascii\"\n\"2923625\";\"Bruck\";\"other\"\n\"2923625\";\"Fuerstenfeldburg\";\"other\"\n\"2923625\";\"Furstenfeld\";\"other\"\n\"2923625\";\"fjurstenfel'dbruk\";\"other\"\n\"2923625\";\"Фюрстенфельдбрук\";\"other\"\n\"2923626\";\"Fürsteneck\";\"main\"\n\"2923626\";\"Fursteneck\";\"ascii\"\n\"2923637\";\"Fürstenberg\";\"main\"\n\"2923637\";\"Furstenberg\";\"ascii\"\n\"2923638\";\"Fürstenberg\";\"main\"\n\"2923638\";\"Furstenberg\";\"ascii\"\n\"2923658\";\"Fürstenau\";\"main\"\n\"2923658\";\"Furstenau\";\"ascii\"\n\"2923706\";\"Fürfeld\";\"main\"\n\"2923706\";\"Furfeld\";\"ascii\"\n\"2923753\";\"Fünfstetten\";\"main\"\n\"2923753\";\"Funfstetten\";\"ascii\"\n\"2923815\";\"Fuldatal\";\"main\"\n\"2923822\";\"Fulda\";\"main\"\n\"2923822\";\"Ful'da\";\"other\"\n\"2923822\";\"furuda\";\"other\"\n\"2923822\";\"Фульда\";\"other\"\n\"2923822\";\"フルダ\";\"other\"\n\"2923900\";\"Fuchsstadt\";\"main\"\n\"2923907\";\"Fuchsmühl\";\"main\"\n\"2923907\";\"Fuchsmuhl\";\"ascii\"\n\"2923907\";\"Fuchsmuehl\";\"other\"\n\"2924138\";\"Frose\";\"main\"\n\"2924186\";\"Frontenhausen\";\"main\"\n\"2924201\";\"Fronhausen\";\"main\"\n\"2924206\";\"Fröndenberg\";\"main\"\n\"2924206\";\"Frondenberg\";\"ascii\"\n\"2924313\";\"Frohburg\";\"main\"\n\"2924326\";\"Fritzlar\";\"main\"\n\"2924335\";\"Frittlingen\";\"main\"\n\"2924347\";\"Friolzheim\";\"main\"\n\"2924360\";\"Friesoythe\";\"main\"\n\"2924371\";\"Friesenried\";\"main\"\n\"2924388\";\"Friesenhagen\";\"main\"\n\"2924406\";\"Friesack\";\"main\"\n\"2924412\";\"Friemar\";\"main\"\n\"2924428\";\"Frielendorf\";\"main\"\n\"2924428\";\"Freilendorf\";\"other\"\n\"2924461\";\"Friedrichsthal\";\"main\"\n\"2924477\";\"Friedrichstadt\";\"main\"\n\"2924505\";\"Friedrichskoog\";\"main\"\n\"2924505\";\"Konig Friedfricks VII Koog\";\"other\"\n\"2924585\";\"Friedrichshafen\";\"main\"\n\"2924585\";\"Fridrikhskhafen\";\"other\"\n\"2924585\";\"fei te lie gang\";\"other\"\n\"2924585\";\"furidorihisuhafen\";\"other\"\n\"2924585\";\"Фридрихсхафен\";\"other\"\n\"2924585\";\"フリードリヒスハーフェン\";\"other\"\n\"2924585\";\"腓特烈港\";\"other\"\n\"2924625\";\"Friedrichsdorf\";\"main\"\n\"2924628\";\"Friedrichsbrunn\";\"main\"\n\"2924656\";\"Friedrichroda\";\"main\"\n\"2924679\";\"Friedland\";\"main\"\n\"2924680\";\"Friedland\";\"main\"\n\"2924681\";\"Friedland\";\"main\"\n\"2924703\";\"Friedewald\";\"main\"\n\"2924703\";\"Freidewald\";\"other\"\n\"2924704\";\"Friedewald\";\"main\"\n\"2924716\";\"Friedersdorf\";\"main\"\n\"2924722\";\"Friedersdorf\";\"main\"\n\"2924738\";\"Friedenweiler\";\"main\"\n\"2924766\";\"Friedenfels\";\"main\"\n\"2924774\";\"Friedelsheim\";\"main\"\n\"2924788\";\"Friedeburg\";\"main\"\n\"2924802\";\"Friedberg\";\"main\"\n\"2924802\";\"Fridberg\";\"other\"\n\"2924802\";\"Friedberg in Hessen\";\"other\"\n\"2924802\";\"Friedburg\";\"other\"\n\"2924802\";\"Фридберг\";\"other\"\n\"2924803\";\"Friedberg\";\"main\"\n\"2924803\";\"Fridberg\";\"other\"\n\"2924803\";\"Friedberg bei Augsburg\";\"other\"\n\"2924803\";\"Фридберг\";\"other\"\n\"2924819\";\"Fridolfing\";\"main\"\n\"2924819\";\"Friedolfing\";\"other\"\n\"2924820\";\"Fridingen an der Donau\";\"main\"\n\"2924820\";\"Fridingen\";\"other\"\n\"2924826\";\"Frickingen\";\"main\"\n\"2924826\";\"Frickengen\";\"other\"\n\"2924836\";\"Frickenhausen\";\"main\"\n\"2924837\";\"Frickenhausen\";\"main\"\n\"2924850\";\"Freyung\";\"main\"\n\"2924850\";\"Frejung\";\"other\"\n\"2924850\";\"Фрейунг\";\"other\"\n\"2924854\";\"Freystadt\";\"main\"\n\"2924854\";\"Feyenstadt\";\"other\"\n\"2924862\";\"Freyburg\";\"main\"\n\"2924888\";\"Freudental\";\"main\"\n\"2924894\";\"Freudenstadt\";\"main\"\n\"2924910\";\"Freudenburg\";\"main\"\n\"2924915\";\"Freudenberg\";\"main\"\n\"2924916\";\"Freudenberg\";\"main\"\n\"2924917\";\"Freudenberg\";\"main\"\n\"2924967\";\"Freren\";\"main\"\n\"2924983\";\"Frensdorf\";\"main\"\n\"2924999\";\"Fremdingen\";\"main\"\n\"2925017\";\"Freital\";\"main\"\n\"2925017\";\"Frajtal'\";\"other\"\n\"2925017\";\"Freithal\";\"other\"\n\"2925017\";\"Фрайталь\";\"other\"\n\"2925034\";\"Freising\";\"main\"\n\"2925034\";\"Frajzing\";\"other\"\n\"2925034\";\"Freysing\";\"other\"\n\"2925034\";\"Frisinga\";\"other\"\n\"2925034\";\"Fryzynga\";\"other\"\n\"2925034\";\"fu lai xin\";\"other\"\n\"2925034\";\"Фрайзинг\";\"other\"\n\"2925034\";\"弗赖辛\";\"other\"\n\"2925038\";\"Freisen\";\"main\"\n\"2925047\";\"Freisbach\";\"main\"\n\"2925053\";\"Freinsheim\";\"main\"\n\"2925079\";\"Frei-Laubersheim\";\"main\"\n\"2925080\";\"Freilassing\";\"main\"\n\"2925086\";\"Freihung\";\"main\"\n\"2925134\";\"Freienwill\";\"main\"\n\"2925141\";\"Freiensteinau\";\"main\"\n\"2925162\";\"Freienbessingen\";\"main\"\n\"2925177\";\"Freiburg\";\"main\"\n\"2925177\";\"Frajburg\";\"other\"\n\"2925177\";\"Freiburg im Breisgau\";\"other\"\n\"2925177\";\"Fribourg-en-Brisgau\";\"other\"\n\"2925177\";\"Friburg de Brisgovia\";\"other\"\n\"2925177\";\"Friburg de Brisgòvia\";\"other\"\n\"2925177\";\"Friburgo de Brisgovia\";\"other\"\n\"2925177\";\"Friburgo in Brisgovia\";\"other\"\n\"2925177\";\"Fryburg Bryzgowijski\";\"other\"\n\"2925177\";\"Phraimpournk\";\"other\"\n\"2925177\";\"fraybwrg\";\"other\"\n\"2925177\";\"fu lai bao\";\"other\"\n\"2925177\";\"furaiburuku\";\"other\"\n\"2925177\";\"Φράιμπουργκ\";\"other\"\n\"2925177\";\"Фрайбург\";\"other\"\n\"2925177\";\"Фрајбург\";\"other\"\n\"2925177\";\"فرایبورگ\";\"other\"\n\"2925177\";\"フライブルク\";\"other\"\n\"2925177\";\"弗莱堡\";\"other\"\n\"2925181\";\"Freiburg\";\"main\"\n\"2925181\";\"Frajburg\";\"other\"\n\"2925181\";\"Freiburg an der Elbe\";\"other\"\n\"2925181\";\"Фрайбург\";\"other\"\n\"2925189\";\"Freiberg am Neckar\";\"main\"\n\"2925189\";\"Freiberg\";\"other\"\n\"2925192\";\"Freiberg\";\"main\"\n\"2925192\";\"Frajberg\";\"other\"\n\"2925192\";\"Freiburg\";\"other\"\n\"2925192\";\"furaiberuku\";\"other\"\n\"2925192\";\"Фрайберг\";\"other\"\n\"2925192\";\"フライベルク\";\"other\"\n\"2925234\";\"Freden\";\"main\"\n\"2925249\";\"Freckenfeld\";\"main\"\n\"2925259\";\"Frechen\";\"main\"\n\"2925267\";\"Fraureuth\";\"main\"\n\"2925267\";\"Frauenreuth\";\"other\"\n\"2925274\";\"Fraunberg\";\"main\"\n\"2925286\";\"Frauenwald\";\"main\"\n\"2925306\";\"Frauenstein\";\"main\"\n\"2925326\";\"Frauenprießnitz\";\"main\"\n\"2925326\";\"Frauenpriessnitz\";\"ascii\"\n\"2925383\";\"Fraueneuharting\";\"main\"\n\"2925440\";\"Frauenau\";\"main\"\n\"2925458\";\"Frasdorf\";\"main\"\n\"2925488\";\"Franzburg\";\"main\"\n\"2925499\";\"Frankleben\";\"main\"\n\"2925507\";\"Fränkisch-Crumbach\";\"main\"\n\"2925507\";\"Frankisch-Crumbach\";\"ascii\"\n\"2925533\";\"Frankfurt am Main\";\"main\"\n\"2925533\";\"Francfort\";\"other\"\n\"2925533\";\"Francfort - Frankfurt am Main\";\"other\"\n\"2925533\";\"Francfort d'o Meno\";\"other\"\n\"2925533\";\"Francfort del Meno\";\"other\"\n\"2925533\";\"Francfort sul Main\";\"other\"\n\"2925533\";\"Francfort-sur-le-Main\";\"other\"\n\"2925533\";\"Francfòrt sul Main\";\"other\"\n\"2925533\";\"Francoforte\";\"other\"\n\"2925533\";\"Francoforte sul Meno\";\"other\"\n\"2925533\";\"Francofurtum ad Moenum\";\"other\"\n\"2925533\";\"Francuforti supro Menu\";\"other\"\n\"2925533\";\"Francuforti suprô Menu\";\"other\"\n\"2925533\";\"Frankford-on-Main\";\"other\"\n\"2925533\";\"Frankfort\";\"other\"\n\"2925533\";\"Frankfort an'n Main\";\"other\"\n\"2925533\";\"Frankfort an’n Main\";\"other\"\n\"2925533\";\"Frankfort on the Main\";\"other\"\n\"2925533\";\"Frankfurt\";\"other\"\n\"2925533\";\"Frankfurt del Main\";\"other\"\n\"2925533\";\"Frankfurt na Majn\";\"other\"\n\"2925533\";\"Frankfurt na Majni\";\"other\"\n\"2925533\";\"Frankfurt nad Menem\";\"other\"\n\"2925533\";\"Frankfurt nad Mohanem\";\"other\"\n\"2925533\";\"Frankfurt nad Mohanom\";\"other\"\n\"2925533\";\"Frankfurt-na-Majne\";\"other\"\n\"2925533\";\"Frankfurt/Main\";\"other\"\n\"2925533\";\"Frankfurtas prie Maino\";\"other\"\n\"2925533\";\"Frankfurte pie Mainas\";\"other\"\n\"2925533\";\"Frankfurto ce Majno\";\"other\"\n\"2925533\";\"Frankfurto ĉe Majno\";\"other\"\n\"2925533\";\"Fráncfort\";\"other\"\n\"2925533\";\"Fráncfort - Frankfurt am Main\";\"other\"\n\"2925533\";\"Fráncfort d'o Meno\";\"other\"\n\"2925533\";\"Fráncfort del Meno\";\"other\"\n\"2925533\";\"Phran'kphourte\";\"other\"\n\"2925533\";\"fa lan ke fu\";\"other\"\n\"2925533\";\"frankfwrt\";\"other\"\n\"2925533\";\"peulangkeupuleuteu\";\"other\"\n\"2925533\";\"prnqpwrt\";\"other\"\n\"2925533\";\"Φρανκφούρτη\";\"other\"\n\"2925533\";\"Франкфурт на Майн\";\"other\"\n\"2925533\";\"Франкфурт на Мајни\";\"other\"\n\"2925533\";\"Франкфурт-на-Майне\";\"other\"\n\"2925533\";\"פרנקפורט\";\"other\"\n\"2925533\";\"فرانكفورت\";\"other\"\n\"2925533\";\"فرانکفورت\";\"other\"\n\"2925533\";\"แฟรงค์เฟิร์ต\";\"other\"\n\"2925533\";\"ფრანკფურტ-ამ-მაინი\";\"other\"\n\"2925533\";\"フランクフルト・アム・マイン\";\"other\"\n\"2925533\";\"法兰克福\";\"other\"\n\"2925533\";\"프랑크푸르트\";\"other\"\n\"2925535\";\"Frankfurt (Oder)\";\"main\"\n\"2925535\";\"Francfort\";\"other\"\n\"2925535\";\"Francfort del Oder\";\"other\"\n\"2925535\";\"Francfort del Odra\";\"other\"\n\"2925535\";\"Francfort-sur-l'Oder\";\"other\"\n\"2925535\";\"Francoforte sull'Oder\";\"other\"\n\"2925535\";\"Frankfort an de Oder\";\"other\"\n\"2925535\";\"Frankfort on the Oder\";\"other\"\n\"2925535\";\"Frankfurt\";\"other\"\n\"2925535\";\"Frankfurt Oderi aeaeres\";\"other\"\n\"2925535\";\"Frankfurt Oderi ääres\";\"other\"\n\"2925535\";\"Frankfurt an der Oder\";\"other\"\n\"2925535\";\"Frankfurt de l'Oder\";\"other\"\n\"2925535\";\"Frankfurt na Oder\";\"other\"\n\"2925535\";\"Frankfurt na Odri\";\"other\"\n\"2925535\";\"Frankfurt nad Odra\";\"other\"\n\"2925535\";\"Frankfurt nad Odrą\";\"other\"\n\"2925535\";\"Frankfurt-na-Odere\";\"other\"\n\"2925535\";\"Frankfurtas prie Oderio\";\"other\"\n\"2925535\";\"Frankfurto ce Odro\";\"other\"\n\"2925535\";\"Frankfurto ĉe Odro\";\"other\"\n\"2925535\";\"Fráncfort\";\"other\"\n\"2925535\";\"Fráncfort del Odra\";\"other\"\n\"2925535\";\"Fráncfort del Óder\";\"other\"\n\"2925535\";\"Франкфурт на Одер\";\"other\"\n\"2925535\";\"Франкфурт-на-Одере\";\"other\"\n\"2925535\";\"פרנקפורט על האודר\";\"other\"\n\"2925535\";\"ფრანკფურტ-ან-დერ-ოდერი\";\"other\"\n\"2925535\";\"フランクフルト・アン・デア・オーダー\";\"other\"\n\"2925542\";\"Frankenwinheim\";\"main\"\n\"2925548\";\"Frankenthal\";\"main\"\n\"2925550\";\"Frankenthal\";\"main\"\n\"2925550\";\"Frankental'\";\"other\"\n\"2925550\";\"Франкенталь\";\"other\"\n\"2925557\";\"Frankenstein\";\"main\"\n\"2925558\";\"Frankenstein\";\"main\"\n\"2925589\";\"Frankenheim\";\"main\"\n\"2925629\";\"Frankenberg\";\"main\"\n\"2925630\";\"Frankenberg\";\"main\"\n\"2925651\";\"Frankenau\";\"main\"\n\"2925665\";\"Frammersbach\";\"main\"\n\"2925668\";\"Framersheim\";\"main\"\n\"2925729\";\"Forstinning\";\"main\"\n\"2925832\";\"Forst\";\"main\"\n\"2925832\";\"Barsac\";\"other\"\n\"2925832\";\"Barsc\";\"other\"\n\"2925832\";\"Baršć\";\"other\"\n\"2925832\";\"Forst/Lausitz\";\"other\"\n\"2925832\";\"Stadt Forst (Lausitz)\";\"other\"\n\"2925832\";\"Форст\";\"other\"\n\"2925848\";\"Forst\";\"main\"\n\"2925890\";\"Föritz\";\"main\"\n\"2925890\";\"Foritz\";\"ascii\"\n\"2925902\";\"Förderstedt\";\"main\"\n\"2925902\";\"Forderstedt\";\"ascii\"\n\"2925905\";\"Forchtenberg\";\"main\"\n\"2925910\";\"Forchheim\";\"main\"\n\"2925914\";\"Forchheim\";\"main\"\n\"2925924\";\"Forbach\";\"main\"\n\"2925977\";\"Föhren\";\"main\"\n\"2925977\";\"Fohren\";\"ascii\"\n\"2926017\";\"Fockbek\";\"main\"\n\"2926107\";\"Flossenbürg\";\"main\"\n\"2926107\";\"Flossenburg\";\"ascii\"\n\"2926107\";\"Campo di concentramento di Flossenbuerg\";\"other\"\n\"2926107\";\"Campo di concentramento di Flossenbürg\";\"other\"\n\"2926107\";\"Flossenbuerg\";\"other\"\n\"2926107\";\"Flossenbuerg concentration camp\";\"other\"\n\"2926107\";\"Flossenbuerg konsentrasjonsleir\";\"other\"\n\"2926107\";\"Flossenbürg concentration camp\";\"other\"\n\"2926107\";\"Flossenbürg konsentrasjonsleir\";\"other\"\n\"2926107\";\"KZ Flossenbuerg\";\"other\"\n\"2926107\";\"KZ Flossenbürg\";\"other\"\n\"2926107\";\"Stratopedo synkentroses Phlosenmpernk\";\"other\"\n\"2926107\";\"plwsnbwrg\";\"other\"\n\"2926107\";\"Στρατόπεδο συγκέντρωσης Φλόσενμπεργκ\";\"other\"\n\"2926107\";\"פלוסנבורג\";\"other\"\n\"2926119\";\"Floß\";\"main\"\n\"2926119\";\"Floss\";\"ascii\"\n\"2926119\";\"Flosz\";\"other\"\n\"2926120\";\"Flörsheim\";\"main\"\n\"2926120\";\"Florsheim\";\"ascii\"\n\"2926120\";\"Florsheim am Main\";\"other\"\n\"2926120\";\"Flörsheim am Main\";\"other\"\n\"2926135\";\"Flonheim\";\"main\"\n\"2926137\";\"Flomborn\";\"main\"\n\"2926147\";\"Flöha\";\"main\"\n\"2926147\";\"Floha\";\"ascii\"\n\"2926147\";\"Floeha\";\"other\"\n\"2926170\";\"Flintsbach\";\"main\"\n\"2926178\";\"Flintbek\";\"main\"\n\"2926178\";\"Gross Flintbek\";\"other\"\n\"2926178\";\"Groß Flintbek\";\"other\"\n\"2926226\";\"Flieden\";\"main\"\n\"2926252\";\"Flessau\";\"main\"\n\"2926271\";\"Flensburg\";\"main\"\n\"2926271\";\"Flensborg\";\"other\"\n\"2926271\";\"Flensbourg\";\"other\"\n\"2926271\";\"furensuburuku\";\"other\"\n\"2926271\";\"Фленсбург\";\"other\"\n\"2926271\";\"フレンスブルク\";\"other\"\n\"2926304\";\"Flein\";\"main\"\n\"2926339\";\"Fleckeby\";\"main\"\n\"2926351\";\"Flechtingen\";\"main\"\n\"2926385\";\"Flammersfeld\";\"main\"\n\"2926402\";\"Fladungen\";\"main\"\n\"2926419\";\"Flacht\";\"main\"\n\"2926426\";\"Flachslanden\";\"main\"\n\"2926557\";\"Fischerbach\";\"main\"\n\"2926586\";\"Fischbachau\";\"main\"\n\"2926638\";\"Fischbach\";\"main\"\n\"2926638\";\"Fischbach bei Dahn\";\"other\"\n\"2926654\";\"Fischach\";\"main\"\n\"2926667\";\"Fintel\";\"main\"\n\"2926670\";\"Finsterwalde\";\"main\"\n\"2926688\";\"Finsterbergen\";\"main\"\n\"2926703\";\"Finsing\";\"main\"\n\"2926716\";\"Finnentrop\";\"main\"\n\"2926716\";\"Neubrucke\";\"other\"\n\"2926716\";\"Neubrücke\";\"other\"\n\"2926858\";\"Filsum\";\"main\"\n\"2926941\";\"Fichtenwalde\";\"main\"\n\"2926941\";\"Beelitz (Mark) OT Fichtenwalde\";\"other\"\n\"2926941\";\"Beelitz Ortsteil Fichtenwalde\";\"other\"\n\"2926941\";\"Kolonie Fichtenwalde\";\"other\"\n\"2926960\";\"Fichtenberg\";\"main\"\n\"2926981\";\"Fichtelberg\";\"main\"\n\"2927043\";\"Stuttgart Feuerbach\";\"main\"\n\"2927043\";\"Feuerbach\";\"other\"\n\"2927048\";\"Feuchtwangen\";\"main\"\n\"2927048\";\"Feuchtwanger\";\"other\"\n\"2927054\";\"Feucht\";\"main\"\n\"2927142\";\"Ferdinandshof\";\"main\"\n\"2927226\";\"Felsberg\";\"main\"\n\"2927236\";\"Felm\";\"main\"\n\"2927249\";\"Fellheim\";\"main\"\n\"2927268\";\"Fellbach\";\"main\"\n\"2927273\";\"Fell\";\"main\"\n\"2927339\";\"Feldkirchen-Westerham\";\"main\"\n\"2927347\";\"Feldkirchen\";\"main\"\n\"2927430\";\"Felde\";\"main\"\n\"2927443\";\"Feldberg\";\"main\"\n\"2927464\";\"Feldafing\";\"main\"\n\"2927510\";\"Feilitzsch\";\"main\"\n\"2927514\";\"Feilbingert\";\"main\"\n\"2927564\";\"Fehrbellin\";\"main\"\n\"2927726\";\"Faulbach\";\"main\"\n\"2927750\";\"Faßberg\";\"main\"\n\"2927750\";\"Fassberg\";\"ascii\"\n\"2927798\";\"Farnstädt\";\"main\"\n\"2927798\";\"Farnstadt\";\"ascii\"\n\"2927828\";\"Farchant\";\"main\"\n\"2927850\";\"Fambach\";\"main\"\n\"2927871\";\"Fallingbostel\";\"main\"\n\"2927871\";\"Bad Fallingbostel\";\"other\"\n\"2927913\";\"Falkenstein\";\"main\"\n\"2927917\";\"Falkenstein\";\"main\"\n\"2927930\";\"Falkensee\";\"main\"\n\"2927959\";\"Falkenhain\";\"main\"\n\"2927984\";\"Falkenfels\";\"main\"\n\"2928006\";\"Falkenberg\";\"main\"\n\"2928011\";\"Falkenberg\";\"main\"\n\"2928011\";\"Falkenburg\";\"other\"\n\"2928017\";\"Falkenberg\";\"main\"\n\"2928047\";\"Falkenau\";\"main\"\n\"2928084\";\"Faid\";\"main\"\n\"2928116\";\"Fahrenzhausen\";\"main\"\n\"2928120\";\"Fahrenkrug\";\"main\"\n\"2928163\";\"Fahrenbach\";\"main\"\n\"2928170\";\"Fahrdorf\";\"main\"\n\"2928227\";\"Fachbach\";\"main\"\n\"2928239\";\"Eystrup\";\"main\"\n\"2928258\";\"Eyendorf\";\"main\"\n\"2928261\";\"Eydelstedt\";\"main\"\n\"2928315\";\"Evessen\";\"main\"\n\"2928320\";\"Everswinkel\";\"main\"\n\"2928379\";\"Eutingen\";\"main\"\n\"2928379\";\"Entingen\";\"other\"\n\"2928379\";\"Eutingen an der Enz\";\"other\"\n\"2928381\";\"Eutin\";\"main\"\n\"2928381\";\"Eutin mit Malente\";\"other\"\n\"2928394\";\"Eußenheim\";\"main\"\n\"2928394\";\"Eussenheim\";\"ascii\"\n\"2928396\";\"Euskirchen\";\"main\"\n\"2928407\";\"Eurasburg\";\"main\"\n\"2928407\";\"Eurasberg\";\"other\"\n\"2928408\";\"Eurasburg\";\"main\"\n\"2928518\";\"Euerdorf\";\"main\"\n\"2928520\";\"Euerbach\";\"main\"\n\"2928564\";\"Etzenricht\";\"main\"\n\"2928583\";\"Etzelwang\";\"main\"\n\"2928600\";\"Etzbach\";\"main\"\n\"2928605\";\"Ettringen\";\"main\"\n\"2928615\";\"Ettlingen\";\"main\"\n\"2928659\";\"Ettenheim\";\"main\"\n\"2928711\";\"Estorf\";\"main\"\n\"2928712\";\"Estorf\";\"main\"\n\"2928715\";\"Esthal\";\"main\"\n\"2928717\";\"Esterwegen\";\"main\"\n\"2928738\";\"Estenfeld\";\"main\"\n\"2928751\";\"Esslingen\";\"main\"\n\"2928751\";\"Ehslingen\";\"other\"\n\"2928751\";\"Eslinga\";\"other\"\n\"2928751\";\"Eslingen\";\"other\"\n\"2928751\";\"Esslingen am Neckar\";\"other\"\n\"2928751\";\"Eszlingen\";\"other\"\n\"2928751\";\"Eszlingen am Neckar\";\"other\"\n\"2928751\";\"Еслинген\";\"other\"\n\"2928751\";\"Эслинген\";\"other\"\n\"2928760\";\"Essingen\";\"main\"\n\"2928761\";\"Essingen\";\"main\"\n\"2928764\";\"Essing\";\"main\"\n\"2928793\";\"Essenheim\";\"main\"\n\"2928804\";\"Essenbach\";\"main\"\n\"2928809\";\"Essen\";\"main\"\n\"2928810\";\"Essen\";\"main\"\n\"2928810\";\"Assindia\";\"other\"\n\"2928810\";\"Ehssen\";\"other\"\n\"2928810\";\"Esen\";\"other\"\n\"2928810\";\"Esenas\";\"other\"\n\"2928810\";\"Esene\";\"other\"\n\"2928810\";\"ai sen\";\"other\"\n\"2928810\";\"asn\";\"other\"\n\"2928810\";\"essen\";\"other\"\n\"2928810\";\"xes sen\";\"other\"\n\"2928810\";\"Έσσεν\";\"other\"\n\"2928810\";\"Есен\";\"other\"\n\"2928810\";\"Эссен\";\"other\"\n\"2928810\";\"אסן\";\"other\"\n\"2928810\";\"إسن\";\"other\"\n\"2928810\";\"เอสเซ่น\";\"other\"\n\"2928810\";\"エッセン\";\"other\"\n\"2928810\";\"埃森\";\"other\"\n\"2928819\";\"Esselbach\";\"main\"\n\"2928821\";\"Essel\";\"main\"\n\"2928862\";\"Espenhain\";\"main\"\n\"2928868\";\"Espenau\";\"main\"\n\"2928874\";\"Espelkamp\";\"main\"\n\"2928890\";\"Eslohe\";\"main\"\n\"2928894\";\"Eslarn\";\"main\"\n\"2928894\";\"Eszlarn\";\"other\"\n\"2928911\";\"Esens\";\"main\"\n\"2928963\";\"Eschweiler\";\"main\"\n\"2928963\";\"Aischwiele\";\"other\"\n\"2928967\";\"Eschwege\";\"main\"\n\"2928967\";\"Escevegia\";\"other\"\n\"2928979\";\"Eschlkam\";\"main\"\n\"2929008\";\"Eschershausen\";\"main\"\n\"2929038\";\"Eschenlohe\";\"main\"\n\"2929091\";\"Eschenbach\";\"main\"\n\"2929112\";\"Eschelbronn\";\"main\"\n\"2929112\";\"Ehshel'bronn\";\"other\"\n\"2929112\";\"Eselmpron\";\"other\"\n\"2929112\";\"Έσελμπρον\";\"other\"\n\"2929112\";\"Эшельбронн\";\"other\"\n\"2929122\";\"Eschede\";\"main\"\n\"2929123\";\"Escheburg\";\"main\"\n\"2929134\";\"Eschborn\";\"main\"\n\"2929165\";\"Eschau\";\"main\"\n\"2929177\";\"Eschach\";\"main\"\n\"2929224\";\"Erzhausen\";\"main\"\n\"2929245\";\"Erxleben\";\"main\"\n\"2929247\";\"Erwitte\";\"main\"\n\"2929252\";\"Ertingen\";\"main\"\n\"2929279\";\"Erpolzheim\";\"main\"\n\"2929302\";\"Erpel\";\"main\"\n\"2929305\";\"Erolzheim\";\"main\"\n\"2929314\";\"Ernstroda\";\"main\"\n\"2929353\";\"Ernsgaden\";\"main\"\n\"2929370\";\"Erndtebrück\";\"main\"\n\"2929370\";\"Erndtebruck\";\"ascii\"\n\"2929370\";\"Ernatebruck\";\"other\"\n\"2929383\";\"Ermlitz\";\"main\"\n\"2929429\";\"Erligheim\";\"main\"\n\"2929451\";\"Erlensee\";\"main\"\n\"2929452\";\"Erlenmoos\";\"main\"\n\"2929484\";\"Erlenbach am Main\";\"main\"\n\"2929484\";\"Erlenbach\";\"other\"\n\"2929484\";\"Erlenbach uber Klingenberg\";\"other\"\n\"2929484\";\"Erlenbach über Klingenberg\";\"other\"\n\"2929499\";\"Erlenbach\";\"main\"\n\"2929506\";\"Erlenbach\";\"main\"\n\"2929541\";\"Erlbach\";\"main\"\n\"2929541\";\"Markt Erlbach\";\"other\"\n\"2929549\";\"Erlbach\";\"main\"\n\"2929557\";\"Erlau\";\"main\"\n\"2929567\";\"Erlangen\";\"main\"\n\"2929567\";\"Ehrlangen\";\"other\"\n\"2929567\";\"ai er lan gen\";\"other\"\n\"2929567\";\"ai er lang gen\";\"other\"\n\"2929567\";\"earangen\";\"other\"\n\"2929567\";\"Ерланген\";\"other\"\n\"2929567\";\"Эрланген\";\"other\"\n\"2929567\";\"エアランゲン\";\"other\"\n\"2929567\";\"埃尔朗根\";\"other\"\n\"2929567\";\"埃爾蘭根\";\"other\"\n\"2929594\";\"Erlabrunn\";\"main\"\n\"2929600\";\"Erkrath\";\"main\"\n\"2929600\";\"Ehrkrat\";\"other\"\n\"2929600\";\"Эркрат\";\"other\"\n\"2929602\";\"Erkner\";\"main\"\n\"2929605\";\"Erkheim\";\"main\"\n\"2929610\";\"Erkerode\";\"main\"\n\"2929614\";\"Erkenbrechtsweiler\";\"main\"\n\"2929622\";\"Erkelenz\";\"main\"\n\"2929626\";\"Eriskirch\";\"main\"\n\"2929631\";\"Ering\";\"main\"\n\"2929631\";\"Fring\";\"other\"\n\"2929649\";\"Ergoldsbach\";\"main\"\n\"2929649\";\"Erblsbach\";\"other\"\n\"2929650\";\"Ergolding\";\"main\"\n\"2929658\";\"Ergersheim\";\"main\"\n\"2929665\";\"Erfweiler\";\"main\"\n\"2929670\";\"Erfurt\";\"main\"\n\"2929670\";\"Ehrfurt\";\"other\"\n\"2929670\";\"Erfurtas\";\"other\"\n\"2929670\";\"Erfurto\";\"other\"\n\"2929670\";\"Erfurtum\";\"other\"\n\"2929670\";\"Erphourte\";\"other\"\n\"2929670\";\"ai er fu te\";\"other\"\n\"2929670\";\"eafuruto\";\"other\"\n\"2929670\";\"eleupuleuteu\";\"other\"\n\"2929670\";\"Érfurt\";\"other\"\n\"2929670\";\"Ερφούρτη\";\"other\"\n\"2929670\";\"Ерфурт\";\"other\"\n\"2929670\";\"Эрфурт\";\"other\"\n\"2929670\";\"ארפורט\";\"other\"\n\"2929670\";\"エアフルト\";\"other\"\n\"2929670\";\"艾尔福特\";\"other\"\n\"2929670\";\"에르푸르트\";\"other\"\n\"2929671\";\"Erftstadt\";\"main\"\n\"2929685\";\"Erfde\";\"main\"\n\"2929689\";\"Eresing\";\"main\"\n\"2929692\";\"Erdweg\";\"main\"\n\"2929708\";\"Erdmannhausen\";\"main\"\n\"2929715\";\"Erding\";\"main\"\n\"2929715\";\"Aerding\";\"other\"\n\"2929715\";\"Ehrding\";\"other\"\n\"2929715\";\"Erding As\";\"other\"\n\"2929715\";\"Эрдинг\";\"other\"\n\"2929769\";\"Erbes-Büdesheim\";\"main\"\n\"2929769\";\"Erbes-Budesheim\";\"ascii\"\n\"2929783\";\"Erbendorf\";\"main\"\n\"2929802\";\"Erbach\";\"main\"\n\"2929804\";\"Erbach\";\"main\"\n\"2929817\";\"Eppstein\";\"main\"\n\"2929827\";\"Eppishausen\";\"main\"\n\"2929831\";\"Eppingen\";\"main\"\n\"2929837\";\"Eppertshausen\";\"main\"\n\"2929855\";\"Eppendorf\";\"main\"\n\"2929858\";\"Eppenbrunn\";\"main\"\n\"2929862\";\"Eppelsheim\";\"main\"\n\"2929863\";\"Eppelheim\";\"main\"\n\"2929865\";\"Eppelborn\";\"main\"\n\"2929871\";\"Epfendorf\";\"main\"\n\"2929872\";\"Epfenbach\";\"main\"\n\"2929892\";\"Enzklösterle\";\"main\"\n\"2929892\";\"Enzklosterle\";\"ascii\"\n\"2929892\";\"Enzklostelte\";\"other\"\n\"2930018\";\"Ensdorf\";\"main\"\n\"2930019\";\"Ensdorf\";\"main\"\n\"2930030\";\"Ennigerloh\";\"main\"\n\"2930035\";\"Ennetach\";\"main\"\n\"2930043\";\"Ennepetal\";\"main\"\n\"2930053\";\"Enkirch\";\"main\"\n\"2930071\";\"Enkenbach-Alsenborn\";\"main\"\n\"2930080\";\"Eningen unter Achalm\";\"main\"\n\"2930080\";\"Eningen\";\"other\"\n\"2930109\";\"Sankt Englmar\";\"main\"\n\"2930109\";\"Englmar\";\"other\"\n\"2930182\";\"Enger\";\"main\"\n\"2930201\";\"Engen\";\"main\"\n\"2930205\";\"Engelthal\";\"main\"\n\"2930216\";\"Engelskirchen\";\"main\"\n\"2930248\";\"Engelsbrand\";\"main\"\n\"2930252\";\"Engelsberg\";\"main\"\n\"2930278\";\"Engeln\";\"main\"\n\"2930367\";\"Bad Endorf\";\"main\"\n\"2930367\";\"Bad Endorf in Oberbayern\";\"other\"\n\"2930367\";\"Endorf\";\"other\"\n\"2930367\";\"Endorf in Oberbayern\";\"other\"\n\"2930383\";\"Endingen\";\"main\"\n\"2930408\";\"Bad Endbach\";\"main\"\n\"2930408\";\"Endbach\";\"other\"\n\"2930416\";\"Emtmannsberg\";\"main\"\n\"2930417\";\"Emtinghausen\";\"main\"\n\"2930426\";\"Emstek\";\"main\"\n\"2930432\";\"Emskirchen\";\"main\"\n\"2930449\";\"Emsdetten\";\"main\"\n\"2930454\";\"Emsbüren\";\"main\"\n\"2930454\";\"Emsburen\";\"ascii\"\n\"2930461\";\"Empfingen\";\"main\"\n\"2930500\";\"Emmering\";\"main\"\n\"2930502\";\"Emmering\";\"main\"\n\"2930509\";\"Emmerich\";\"main\"\n\"2930509\";\"Ehmmerikh\";\"other\"\n\"2930509\";\"Stadt Emmerich\";\"other\"\n\"2930509\";\"Эммерих\";\"other\"\n\"2930523\";\"Emmendingen\";\"main\"\n\"2930528\";\"Emmelshausen\";\"main\"\n\"2930546\";\"Emlichheim\";\"main\"\n\"2930550\";\"Emkendorf\";\"main\"\n\"2930575\";\"Emersacker\";\"main\"\n\"2930596\";\"Emden\";\"main\"\n\"2930596\";\"ai mu deng\";\"other\"\n\"2930596\";\"amdn\";\"other\"\n\"2930596\";\"emuden\";\"other\"\n\"2930596\";\"Емден\";\"other\"\n\"2930596\";\"אמדן\";\"other\"\n\"2930596\";\"إمدن\";\"other\"\n\"2930596\";\"エムデン\";\"other\"\n\"2930596\";\"埃姆登\";\"other\"\n\"2930602\";\"Embsen\";\"main\"\n\"2930602\";\"Embden\";\"other\"\n\"2930623\";\"Elze\";\"main\"\n\"2930626\";\"Elzach\";\"main\"\n\"2930628\";\"Elz\";\"main\"\n\"2930630\";\"Elxleben\";\"main\"\n\"2930646\";\"Eltville\";\"main\"\n\"2930650\";\"Eltmann\";\"main\"\n\"2930662\";\"Elterlein\";\"main\"\n\"2930672\";\"Elstra\";\"main\"\n\"2930672\";\"Halstrow\";\"other\"\n\"2930672\";\"Halštrow\";\"other\"\n\"2930680\";\"Elsterwerda\";\"main\"\n\"2930680\";\"Esterwerda\";\"other\"\n\"2930682\";\"Elstertrebnitz\";\"main\"\n\"2930687\";\"Elsterberg\";\"main\"\n\"2930695\";\"Elster\";\"main\"\n\"2930708\";\"Elsnig\";\"main\"\n\"2930726\";\"Elsfleth\";\"main\"\n\"2930747\";\"Elsenfeld\";\"main\"\n\"2930750\";\"Elsendorf\";\"main\"\n\"2930771\";\"Elsdorf-Westermühlen\";\"main\"\n\"2930771\";\"Elsdorf-Westermuhlen\";\"ascii\"\n\"2930776\";\"Elsdorf\";\"main\"\n\"2930778\";\"Elsdorf\";\"main\"\n\"2930820\";\"Elmstein\";\"main\"\n\"2930821\";\"Elmshorn\";\"main\"\n\"2930850\";\"Elmenhorst\";\"main\"\n\"2930852\";\"Elmenhorst\";\"main\"\n\"2930881\";\"Ellzee\";\"main\"\n\"2930889\";\"Ellwangen\";\"main\"\n\"2930900\";\"Ellrich\";\"main\"\n\"2930934\";\"Ellingen\";\"main\"\n\"2930948\";\"Ellhofen\";\"main\"\n\"2930952\";\"Ellgau\";\"main\"\n\"2930965\";\"Ellerstadt\";\"main\"\n\"2931000\";\"Ellerhoop\";\"main\"\n\"2931024\";\"Ellerbek\";\"main\"\n\"2931038\";\"Ellerau\";\"main\"\n\"2931080\";\"Ellenberg\";\"main\"\n\"2931097\";\"Ellefeld\";\"main\"\n\"2931125\";\"Elkenroth\";\"main\"\n\"2931171\";\"Elgersburg\";\"main\"\n\"2931182\";\"Elfershausen\";\"main\"\n\"2931210\";\"Eldingen\";\"main\"\n\"2931217\";\"Eldena\";\"main\"\n\"2931245\";\"Elbingerode\";\"main\"\n\"2931357\";\"Eitting\";\"main\"\n\"2931357\";\"Euting\";\"other\"\n\"2931361\";\"Eitorf\";\"main\"\n\"2931361\";\"Eitdorf\";\"other\"\n\"2931372\";\"Eiterfeld\";\"main\"\n\"2931385\";\"Eitelborn\";\"main\"\n\"2931414\";\"Eislingen\";\"main\"\n\"2931414\";\"Eislingen-Fils\";\"other\"\n\"2931423\";\"Eisingen\";\"main\"\n\"2931424\";\"Eisingen\";\"main\"\n\"2931433\";\"Eisfeld\";\"main\"\n\"2931481\";\"Eisenhüttenstadt\";\"main\"\n\"2931481\";\"Eisenhuettenstadt\";\"ascii\"\n\"2931481\";\"Ajzenkhjuttenshtadt\";\"other\"\n\"2931481\";\"Fuerstenberg\";\"other\"\n\"2931481\";\"Айзенхюттенштадт\";\"other\"\n\"2931521\";\"Eisenberg\";\"main\"\n\"2931522\";\"Eisenberg\";\"main\"\n\"2931569\";\"Eisenbach\";\"main\"\n\"2931574\";\"Eisenach\";\"main\"\n\"2931574\";\"Ajzenakh\";\"other\"\n\"2931574\";\"ESA\";\"other\"\n\"2931574\";\"Ehjzenakh\";\"other\"\n\"2931574\";\"aizenaha\";\"other\"\n\"2931574\";\"Айзенах\";\"other\"\n\"2931574\";\"Эйзенах\";\"other\"\n\"2931574\";\"アイゼナハ\";\"other\"\n\"2931594\";\"Eisdorf am Harz\";\"main\"\n\"2931594\";\"Eisdorf\";\"other\"\n\"2931594\";\"Eisdorf uber Herzberg\";\"other\"\n\"2931594\";\"Eisdorf über Herzberg\";\"other\"\n\"2931753\";\"Einhausen\";\"main\"\n\"2931784\";\"Markt Einersheim\";\"main\"\n\"2931784\";\"Einersheim\";\"other\"\n\"2931804\";\"Einbeck\";\"main\"\n\"2931804\";\"Ajnbek\";\"other\"\n\"2931804\";\"Stadt Einbeck\";\"other\"\n\"2931804\";\"Айнбек\";\"other\"\n\"2931818\";\"Eimke\";\"main\"\n\"2931825\";\"Eimen\";\"main\"\n\"2931827\";\"Eimeldingen\";\"main\"\n\"2931828\";\"Eime\";\"main\"\n\"2931838\";\"Eilsleben\";\"main\"\n\"2931838\";\"Eisleben\";\"other\"\n\"2931871\";\"Eilenburg\";\"main\"\n\"2931881\";\"Eil\";\"main\"\n\"2931911\";\"Eigeltingen\";\"main\"\n\"2931985\";\"Eicklingen\";\"main\"\n\"2932012\";\"Eickendorf\";\"main\"\n\"2932012\";\"Eikendorf\";\"other\"\n\"2932040\";\"Eichwalde\";\"main\"\n\"2932063\";\"Eichstetten\";\"main\"\n\"2932069\";\"Eichstätt\";\"main\"\n\"2932069\";\"Eichstatt\";\"ascii\"\n\"2932119\";\"Eichigt\";\"main\"\n\"2932266\";\"Eichenzell\";\"main\"\n\"2932286\";\"Eichenried\";\"main\"\n\"2932286\";\"Eichenried bei Erding\";\"other\"\n\"2932321\";\"Eichendorf\";\"main\"\n\"2932321\";\"Euchendorf\";\"other\"\n\"2932329\";\"Eichenbühl\";\"main\"\n\"2932329\";\"Eichenbuhl\";\"ascii\"\n\"2932376\";\"Eichenbarleben\";\"main\"\n\"2932382\";\"Eichenau\";\"main\"\n\"2932738\";\"Eibenstock\";\"main\"\n\"2932748\";\"Eibelstadt\";\"main\"\n\"2932756\";\"Eibau\";\"main\"\n\"2932788\";\"Ehringshausen\";\"main\"\n\"2932828\";\"Ehrenfriedersdorf\";\"main\"\n\"2932841\";\"Ehrenburg\";\"main\"\n\"2932882\";\"Ehningen\";\"main\"\n\"2932893\";\"Ehlscheid\";\"main\"\n\"2932922\";\"Ehingen\";\"main\"\n\"2932924\";\"Ehingen\";\"main\"\n\"2932924\";\"Ehingen Donau\";\"other\"\n\"2932924\";\"Ehingen an der Donau\";\"other\"\n\"2932924\";\"Ehkhingen\";\"other\"\n\"2932924\";\"Эхинген\";\"other\"\n\"2932938\";\"Ehekirchen\";\"main\"\n\"2932960\";\"Egmating\";\"main\"\n\"2932987\";\"Egloffstein\";\"main\"\n\"2932991\";\"Egling\";\"main\"\n\"2932992\";\"Egling\";\"main\"\n\"2933009\";\"Eging\";\"main\"\n\"2933018\";\"Eggstätt\";\"main\"\n\"2933018\";\"Eggstatt\";\"ascii\"\n\"2933019\";\"Eggolsheim\";\"main\"\n\"2933025\";\"Egglkofen\";\"main\"\n\"2933029\";\"Egglham\";\"main\"\n\"2933042\";\"Eggesin\";\"main\"\n\"2933064\";\"Eggersdorf\";\"main\"\n\"2933099\";\"Eggenthal\";\"main\"\n\"2933101\";\"Eggenstein-Leopoldshafen\";\"main\"\n\"2933101\";\"Leopoldshafen\";\"other\"\n\"2933115\";\"Eggenfelden\";\"main\"\n\"2933150\";\"Eggebek\";\"main\"\n\"2933168\";\"Egg an der Günz\";\"main\"\n\"2933168\";\"Egg an der Gunz\";\"ascii\"\n\"2933168\";\"Egg\";\"other\"\n\"2933187\";\"Egestorf\";\"main\"\n\"2933187\";\"Egestorf am Suentel\";\"other\"\n\"2933187\";\"Egestorf am Suntel\";\"other\"\n\"2933187\";\"Egestorf am Süntel\";\"other\"\n\"2933212\";\"Egenhofen\";\"main\"\n\"2933216\";\"Egenhausen\";\"main\"\n\"2933246\";\"Egelsbach\";\"main\"\n\"2933256\";\"Egeln\";\"main\"\n\"2933256\";\"Bleckendorf\";\"other\"\n\"2933274\";\"Efringen-Kirchen\";\"main\"\n\"2933287\";\"Effeltrich\";\"main\"\n\"2933297\";\"Effelder\";\"main\"\n\"2933345\";\"Edingen-Neckarhausen\";\"main\"\n\"2933364\";\"Edewecht\";\"main\"\n\"2933367\";\"Edesheim\";\"main\"\n\"2933372\";\"Edersleben\";\"main\"\n\"2933385\";\"Ederheim\";\"main\"\n\"2933410\";\"Edenkoben\";\"main\"\n\"2933442\";\"Edemissen\";\"main\"\n\"2933452\";\"Edelsfeld\";\"main\"\n\"2933485\";\"Edderitz\";\"main\"\n\"2933488\";\"Eddelak\";\"main\"\n\"2933607\";\"Eckersdorf\";\"main\"\n\"2933627\";\"Eckernförde\";\"main\"\n\"2933627\";\"Eckernforde\";\"ascii\"\n\"2933627\";\"Eckernfoeoer\";\"other\"\n\"2933627\";\"Eckernföör\";\"other\"\n\"2933627\";\"Egernforde\";\"other\"\n\"2933627\";\"Egernførde\";\"other\"\n\"2933720\";\"Eckartsberga\";\"main\"\n\"2933772\";\"Echzell\";\"main\"\n\"2933798\";\"Eching\";\"main\"\n\"2933799\";\"Eching\";\"main\"\n\"2933801\";\"Eching\";\"main\"\n\"2933808\";\"Echem\";\"main\"\n\"2933817\";\"Ebstorf\";\"main\"\n\"2933817\";\"Ebsdorf\";\"other\"\n\"2933821\";\"Ebringen\";\"main\"\n\"2933840\";\"Ebnath\";\"main\"\n\"2933840\";\"Ebriat\";\"other\"\n\"2933857\";\"Ebhausen\";\"main\"\n\"2933857\";\"Ebhausen uber Wollhausen\";\"other\"\n\"2933857\";\"Ebhausen über Wollhausen\";\"other\"\n\"2933863\";\"Ebertsheim\";\"main\"\n\"2933882\";\"Eberswalde\";\"main\"\n\"2933882\";\"Ehbersval'de\";\"other\"\n\"2933882\";\"eberusuvu~arude\";\"other\"\n\"2933882\";\"Эберсвальде\";\"other\"\n\"2933882\";\"エーベルスヴァルデ\";\"other\"\n\"2933897\";\"Eberstadt\";\"main\"\n\"2933916\";\"Ebersdorf\";\"main\"\n\"2933922\";\"Ebersdorf\";\"main\"\n\"2933945\";\"Ebersberg\";\"main\"\n\"2933959\";\"Ebersbach an der Fils\";\"main\"\n\"2933959\";\"Ebersbach\";\"other\"\n\"2933959\";\"Ebersbachander Fils\";\"other\"\n\"2933963\";\"Ebersbach\";\"main\"\n\"2933965\";\"Ebersbach\";\"main\"\n\"2933965\";\"Habrachcicy\";\"other\"\n\"2933965\";\"Habrachćicy\";\"other\"\n\"2933981\";\"Ebernhahn\";\"main\"\n\"2933986\";\"Ebermannstadt\";\"main\"\n\"2933987\";\"Ebermannsdorf\";\"main\"\n\"2934000\";\"Eberhardzell\";\"main\"\n\"2934009\";\"Ebergötzen\";\"main\"\n\"2934009\";\"Ebergotzen\";\"ascii\"\n\"2934014\";\"Eberdingen\";\"main\"\n\"2934020\";\"Eberbach\";\"main\"\n\"2934023\";\"Ebenweiler\";\"main\"\n\"2934033\";\"Ebensfeld\";\"main\"\n\"2934073\";\"Ebendorf\";\"main\"\n\"2934094\";\"Ebelsbach\";\"main\"\n\"2934097\";\"Ebeleben\";\"main\"\n\"2934097\";\"Elsleben\";\"other\"\n\"2934235\";\"Dußlingen\";\"main\"\n\"2934235\";\"Dusslingen\";\"ascii\"\n\"2934246\";\"Düsseldorf\";\"main\"\n\"2934246\";\"Dusseldorf\";\"ascii\"\n\"2934246\";\"Diseldorf\";\"other\"\n\"2934246\";\"Diseldorfa\";\"other\"\n\"2934246\";\"Diuseldorfas\";\"other\"\n\"2934246\";\"Djuseldorf\";\"other\"\n\"2934246\";\"Djussel'dorf\";\"other\"\n\"2934246\";\"Duesseldoerp\";\"other\"\n\"2934246\";\"Duesseldorf\";\"other\"\n\"2934246\";\"Duseldorfo\";\"other\"\n\"2934246\";\"Dusseldoerp\";\"other\"\n\"2934246\";\"Dusseldorpium\";\"other\"\n\"2934246\";\"Dusseldörp\";\"other\"\n\"2934246\";\"Düsseldörp\";\"other\"\n\"2934246\";\"Ntiselntorph\";\"other\"\n\"2934246\";\"de~yusserudorufu\";\"other\"\n\"2934246\";\"du sai er duo fu\";\"other\"\n\"2934246\";\"dwiseldoleupeu\";\"other\"\n\"2934246\";\"dwsldwrf\";\"other\"\n\"2934246\";\"dysldwrp\";\"other\"\n\"2934246\";\"Ντίσελντορφ\";\"other\"\n\"2934246\";\"Диселдорф\";\"other\"\n\"2934246\";\"Дюселдорф\";\"other\"\n\"2934246\";\"Дюссельдорф\";\"other\"\n\"2934246\";\"דיסלדורף\";\"other\"\n\"2934246\";\"دوسلدورف\";\"other\"\n\"2934246\";\"デュッセルドルフ\";\"other\"\n\"2934246\";\"杜塞尔多夫\";\"other\"\n\"2934246\";\"뒤셀도르프\";\"other\"\n\"2934281\";\"Dürrwangen\";\"main\"\n\"2934281\";\"Durrwangen\";\"ascii\"\n\"2934286\";\"Dürrröhrsdorf\";\"main\"\n\"2934286\";\"Durrrohrsdorf\";\"ascii\"\n\"2934286\";\"Durrohrsdorf\";\"other\"\n\"2934286\";\"Durrrohrsdorf-Dittersbach\";\"other\"\n\"2934286\";\"Dürrröhrsdorf-Dittersbach\";\"other\"\n\"2934286\";\"Dürröhrsdorf\";\"other\"\n\"2934317\";\"Dürrlauingen\";\"main\"\n\"2934317\";\"Durrlauingen\";\"ascii\"\n\"2934324\";\"Dürrhennersdorf\";\"main\"\n\"2934324\";\"Durrhennersdorf\";\"ascii\"\n\"2934452\";\"Dürnau\";\"main\"\n\"2934452\";\"Durnau\";\"ascii\"\n\"2934462\";\"Durmersheim\";\"main\"\n\"2934462\";\"Ntyrmerschaim\";\"other\"\n\"2934462\";\"Ντύρμερσχαϊμ\";\"other\"\n\"2934464\";\"Dürmentingen\";\"main\"\n\"2934464\";\"Durmentingen\";\"ascii\"\n\"2934466\";\"Durlangen\";\"main\"\n\"2934486\";\"Düren\";\"main\"\n\"2934486\";\"Duren\";\"ascii\"\n\"2934486\";\"Djuren\";\"other\"\n\"2934486\";\"Dueren\";\"other\"\n\"2934486\";\"Дюрен\";\"other\"\n\"2934499\";\"Dürbheim\";\"main\"\n\"2934499\";\"Durbheim\";\"ascii\"\n\"2934505\";\"Durbach\";\"main\"\n\"2934509\";\"Durach\";\"main\"\n\"2934541\";\"Dunum\";\"main\"\n\"2934548\";\"Dünsen\";\"main\"\n\"2934548\";\"Dunsen\";\"ascii\"\n\"2934560\";\"Dunningen\";\"main\"\n\"2934594\";\"Düngenheim\";\"main\"\n\"2934594\";\"Dungenheim\";\"ascii\"\n\"2934635\";\"Dummerstorf\";\"main\"\n\"2934643\";\"Dümmer\";\"main\"\n\"2934643\";\"Dummer\";\"ascii\"\n\"2934662\";\"Dülmen\";\"main\"\n\"2934662\";\"Dulmen\";\"ascii\"\n\"2934691\";\"Duisburg\";\"main\"\n\"2934691\";\"Disburga\";\"other\"\n\"2934691\";\"Duisborg\";\"other\"\n\"2934691\";\"Duisbourg\";\"other\"\n\"2934691\";\"Duisburch\";\"other\"\n\"2934691\";\"Duisburg and Hamborn\";\"other\"\n\"2934691\";\"Duisburg-Hamborn\";\"other\"\n\"2934691\";\"Duisburgo\";\"other\"\n\"2934691\";\"Duizburg\";\"other\"\n\"2934691\";\"Dujsburg\";\"other\"\n\"2934691\";\"Dīsburga\";\"other\"\n\"2934691\";\"Ntouismpournk\";\"other\"\n\"2934691\";\"Thuiscoburgum\";\"other\"\n\"2934691\";\"de~yusuburuku\";\"other\"\n\"2934691\";\"du yi si bao\";\"other\"\n\"2934691\";\"dwsbwrgh\";\"other\"\n\"2934691\";\"dysbwrg\";\"other\"\n\"2934691\";\"Ντούισμπουργκ\";\"other\"\n\"2934691\";\"Дуизбург\";\"other\"\n\"2934691\";\"Дуйсбург\";\"other\"\n\"2934691\";\"דיסבורג\";\"other\"\n\"2934691\";\"دوسبورغ\";\"other\"\n\"2934691\";\"デュースブルク\";\"other\"\n\"2934691\";\"杜伊斯堡\";\"other\"\n\"2934697\";\"Duingen\";\"main\"\n\"2934707\";\"Duggendorf\";\"main\"\n\"2934728\";\"Duderstadt\";\"main\"\n\"2934737\";\"Dudenhofen\";\"main\"\n\"2934747\";\"Dudeldorf\";\"main\"\n\"2934766\";\"Ducherow\";\"main\"\n\"2934831\";\"Drübeck\";\"main\"\n\"2934831\";\"Drubeck\";\"ascii\"\n\"2934835\";\"Droyßig\";\"main\"\n\"2934835\";\"Droyssig\";\"ascii\"\n\"2934886\";\"Drolshagen\";\"main\"\n\"2934915\";\"Drochtersen\";\"main\"\n\"2934965\";\"Driedorf\";\"main\"\n\"2935022\";\"Dresden\";\"main\"\n\"2935022\";\"Drazdany\";\"other\"\n\"2935022\";\"Drazgany\";\"other\"\n\"2935022\";\"Dresda\";\"other\"\n\"2935022\";\"Dresde\";\"other\"\n\"2935022\";\"Dresdeno\";\"other\"\n\"2935022\";\"Drezda\";\"other\"\n\"2935022\";\"Drezden\";\"other\"\n\"2935022\";\"Drezdenas\";\"other\"\n\"2935022\";\"Drezdene\";\"other\"\n\"2935022\";\"Drezno\";\"other\"\n\"2935022\";\"Drážďany\";\"other\"\n\"2935022\";\"Drēzdene\";\"other\"\n\"2935022\";\"de lei si dun\";\"other\"\n\"2935022\";\"deuleseuden\";\"other\"\n\"2935022\";\"doresuden\";\"other\"\n\"2935022\";\"dresadana\";\"other\"\n\"2935022\";\"drezdeni\";\"other\"\n\"2935022\";\"drsdn\";\"other\"\n\"2935022\";\"drysdn\";\"other\"\n\"2935022\";\"drzdn\";\"other\"\n\"2935022\";\"Δρέσδη\";\"other\"\n\"2935022\";\"Дрезден\";\"other\"\n\"2935022\";\"דרזדן\";\"other\"\n\"2935022\";\"درسدن\";\"other\"\n\"2935022\";\"دريسدن\";\"other\"\n\"2935022\";\"ड्रेसडन\";\"other\"\n\"2935022\";\"დრეზდენი\";\"other\"\n\"2935022\";\"ドレスデン\";\"other\"\n\"2935022\";\"德累斯顿\";\"other\"\n\"2935022\";\"드레스덴\";\"other\"\n\"2935041\";\"Drentwede\";\"main\"\n\"2935042\";\"Drensteinfurt\";\"main\"\n\"2935056\";\"Drelsdorf\";\"main\"\n\"2935056\";\"Troelstrup\";\"other\"\n\"2935056\";\"Trölstrup\";\"other\"\n\"2935095\";\"Dreisen\";\"main\"\n\"2935117\";\"Dreis\";\"main\"\n\"2935209\";\"Dreierwalde\";\"main\"\n\"2935220\";\"Dreieich\";\"main\"\n\"2935266\";\"Dreetz\";\"main\"\n\"2935298\";\"Drebkau\";\"main\"\n\"2935303\";\"Drebach\";\"main\"\n\"2935325\";\"Dranske\";\"main\"\n\"2935326\";\"Dransfeld\";\"main\"\n\"2935334\";\"Drangstedt\";\"main\"\n\"2935341\";\"Drakenburg\";\"main\"\n\"2935375\";\"Drage\";\"main\"\n\"2935384\";\"Drachselsried\";\"main\"\n\"2935425\";\"Dotternhausen\";\"main\"\n\"2935441\";\"Dötlingen\";\"main\"\n\"2935441\";\"Dotlingen\";\"ascii\"\n\"2935453\";\"Dossenheim\";\"main\"\n\"2935488\";\"Dörzbach\";\"main\"\n\"2935488\";\"Dorzbach\";\"ascii\"\n\"2935488\";\"Dorzbach Ober Franken\";\"other\"\n\"2935488\";\"Dörzbach Ober Franken\";\"other\"\n\"2935491\";\"Dörverden\";\"main\"\n\"2935491\";\"Dorverden\";\"ascii\"\n\"2935491\";\"Doerverden\";\"other\"\n\"2935494\";\"Dorum\";\"main\"\n\"2935517\";\"Dortmund\";\"main\"\n\"2935517\";\"Dortmundas\";\"other\"\n\"2935517\";\"Dortmunde\";\"other\"\n\"2935517\";\"Dortmundi\";\"other\"\n\"2935517\";\"Dueoerpm\";\"other\"\n\"2935517\";\"Düörpm\";\"other\"\n\"2935517\";\"Ntortmount\";\"other\"\n\"2935517\";\"Throtmenni\";\"other\"\n\"2935517\";\"Tremonia\";\"other\"\n\"2935517\";\"d xr thmund\";\"other\"\n\"2935517\";\"doleuteumunteu\";\"other\"\n\"2935517\";\"dorutomunto\";\"other\"\n\"2935517\";\"duo te meng de\";\"other\"\n\"2935517\";\"dwrtmwnd\";\"other\"\n\"2935517\";\"Ντόρτμουντ\";\"other\"\n\"2935517\";\"Дортмунд\";\"other\"\n\"2935517\";\"דורטמונד\";\"other\"\n\"2935517\";\"دورتموند\";\"other\"\n\"2935517\";\"ดอร์ทมุนด์\";\"other\"\n\"2935517\";\"ドルトムント\";\"other\"\n\"2935517\";\"多特蒙德\";\"other\"\n\"2935517\";\"도르트문트\";\"other\"\n\"2935530\";\"Dorsten\";\"main\"\n\"2935530\";\"Дорстен\";\"other\"\n\"2935573\";\"Dörrenbach\";\"main\"\n\"2935573\";\"Dorrenbach\";\"ascii\"\n\"2935597\";\"Dörpen\";\"main\"\n\"2935597\";\"Dorpen\";\"ascii\"\n\"2935633\";\"Dornum\";\"main\"\n\"2935642\";\"Dornstetten\";\"main\"\n\"2935647\";\"Dornstadt\";\"main\"\n\"2935702\";\"Dornhan\";\"main\"\n\"2935729\";\"Dorndorf\";\"main\"\n\"2935816\";\"Dormitz\";\"main\"\n\"2935817\";\"Dormettingen\";\"main\"\n\"2935825\";\"Dormagen\";\"main\"\n\"2935825\";\"Дормаген\";\"other\"\n\"2936040\";\"Dorfprozelten\";\"main\"\n\"2936089\";\"Dorfhain\";\"main\"\n\"2936103\";\"Dorfen\";\"main\"\n\"2936120\";\"Dorfchemnitz\";\"main\"\n\"2936153\";\"Dörentrup\";\"main\"\n\"2936153\";\"Dorentrup\";\"ascii\"\n\"2936186\";\"Donzdorf\";\"main\"\n\"2936210\";\"Donnersdorf\";\"main\"\n\"2936253\";\"Donauwörth\";\"main\"\n\"2936253\";\"Donauworth\";\"ascii\"\n\"2936253\";\"Donauwerth\";\"other\"\n\"2936253\";\"Donauwoerth\";\"other\"\n\"2936253\";\"donauvu~eruto\";\"other\"\n\"2936253\";\"ドナウヴェルト\";\"other\"\n\"2936259\";\"Donaustauf\";\"main\"\n\"2936267\";\"Donaueschingen\";\"main\"\n\"2936267\";\"Donauehshingen\";\"other\"\n\"2936267\";\"donauesshingen\";\"other\"\n\"2936267\";\"Донауэшинген\";\"other\"\n\"2936267\";\"ドナウエッシンゲン\";\"other\"\n\"2936271\";\"Domsühl\";\"main\"\n\"2936271\";\"Domsuhl\";\"ascii\"\n\"2936280\";\"Dommitzsch\";\"main\"\n\"2936281\";\"Dommershausen\";\"main\"\n\"2936292\";\"Dömitz\";\"main\"\n\"2936292\";\"Domitz\";\"ascii\"\n\"2936292\";\"Doemitz\";\"other\"\n\"2936298\";\"Domersleben\";\"main\"\n\"2936302\";\"Dombühl\";\"main\"\n\"2936302\";\"Dombuhl\";\"ascii\"\n\"2936331\";\"Döllstädt\";\"main\"\n\"2936331\";\"Dollstadt\";\"ascii\"\n\"2936343\";\"Döllnitz\";\"main\"\n\"2936343\";\"Dollnitz\";\"ascii\"\n\"2936366\";\"Dollerup\";\"main\"\n\"2936369\";\"Dollern\";\"main\"\n\"2936431\";\"Dölbau\";\"main\"\n\"2936431\";\"Dolbau\";\"ascii\"\n\"2936470\";\"Dohna\";\"main\"\n\"2936473\";\"Dohma\";\"main\"\n\"2936497\";\"Döhlau\";\"main\"\n\"2936497\";\"Dohlau\";\"ascii\"\n\"2936503\";\"Dogern\";\"main\"\n\"2936613\";\"Dobersdorf\";\"main\"\n\"2936616\";\"Doberschütz\";\"main\"\n\"2936616\";\"Doberschutz\";\"ascii\"\n\"2936623\";\"Döbernitz\";\"main\"\n\"2936623\";\"Dobernitz\";\"ascii\"\n\"2936631\";\"Doberlug-Kirchhain\";\"main\"\n\"2936631\";\"Dobrilugk-Kirchhain\";\"other\"\n\"2936658\";\"Döbeln\";\"main\"\n\"2936658\";\"Dobeln\";\"ascii\"\n\"2936658\";\"Debel'n\";\"other\"\n\"2936658\";\"Doebeln\";\"other\"\n\"2936658\";\"Doeberln\";\"other\"\n\"2936658\";\"Stadt Dobeln\";\"other\"\n\"2936658\";\"Stadt Döbeln\";\"other\"\n\"2936658\";\"Дебельн\";\"other\"\n\"2936667\";\"Dobel\";\"main\"\n\"2936683\";\"Dobbertin\";\"main\"\n\"2936705\";\"Ditzingen\";\"main\"\n\"2936750\";\"Dittenheim\";\"main\"\n\"2936759\";\"Dittelbrunn\";\"main\"\n\"2936766\";\"Ditfurt\";\"main\"\n\"2936787\";\"Dissen\";\"main\"\n\"2936796\";\"Dischingen\";\"main\"\n\"2936822\";\"Dirmstein\";\"main\"\n\"2936827\";\"Dirlewang\";\"main\"\n\"2936842\";\"Dippoldiswalde\";\"main\"\n\"2936845\";\"Dipperz\";\"main\"\n\"2936857\";\"Dippach\";\"main\"\n\"2936871\";\"Dinslaken\";\"main\"\n\"2936871\";\"Dinslakena\";\"other\"\n\"2936871\";\"Ntinslaken\";\"other\"\n\"2936871\";\"Ντίνσλακεν\";\"other\"\n\"2936871\";\"Динслакена\";\"other\"\n\"2936881\";\"Dinklage\";\"main\"\n\"2936885\";\"Dinkelscherben\";\"main\"\n\"2936886\";\"Dinkelsbühl\";\"main\"\n\"2936886\";\"Dinkelsbuhl\";\"ascii\"\n\"2936886\";\"Dinkelsbuehl\";\"other\"\n\"2936908\";\"Dingolshausen\";\"main\"\n\"2936909\";\"Dingolfing\";\"main\"\n\"2936909\";\"Dingelfing\";\"other\"\n\"2936933\";\"Dingelstädt\";\"main\"\n\"2936933\";\"Dingelstadt\";\"ascii\"\n\"2936974\";\"Dillingen an der Donau\";\"main\"\n\"2936974\";\"Dillingen\";\"other\"\n\"2936974\";\"Dillingen-na-Dunae\";\"other\"\n\"2936974\";\"Диллинген-на-Дунае\";\"other\"\n\"2936977\";\"Dillingen\";\"main\"\n\"2936977\";\"Dillengen\";\"other\"\n\"2936985\";\"Dillenburg\";\"main\"\n\"2936985\";\"Dillenberg\";\"other\"\n\"2936985\";\"Дилленбург\";\"other\"\n\"2937018\";\"Diez\";\"main\"\n\"2937018\";\"Dietz\";\"other\"\n\"2937018\";\"Diez an der Lahn\";\"other\"\n\"2937040\";\"Dietzenbach\";\"main\"\n\"2937040\";\"Stadt Dietzenbach\";\"other\"\n\"2937073\";\"Dietramszell\";\"main\"\n\"2937077\";\"Dietmannsried\";\"main\"\n\"2937096\";\"Dietingen\";\"main\"\n\"2937110\";\"Dietfurt\";\"main\"\n\"2937110\";\"Diefurt\";\"other\"\n\"2937115\";\"Dieterskirchen\";\"main\"\n\"2937124\";\"Dietersheim\";\"main\"\n\"2937142\";\"Dietersburg\";\"main\"\n\"2937160\";\"Dietenhofen\";\"main\"\n\"2937164\";\"Dietenheim\";\"main\"\n\"2937217\";\"Dießen am Ammersee\";\"main\"\n\"2937217\";\"Diessen am Ammersee\";\"ascii\"\n\"2937217\";\"Diessen\";\"other\"\n\"2937217\";\"Dießen\";\"other\"\n\"2937217\";\"Markt Diessen am Ammersee\";\"other\"\n\"2937217\";\"Markt Dießen am Ammersee\";\"other\"\n\"2937223\";\"Diespeck\";\"main\"\n\"2937228\";\"Dieskau\";\"main\"\n\"2937239\";\"Diesdorf\";\"main\"\n\"2937239\";\"Magdeburg-Diesdorf\";\"other\"\n\"2937280\";\"Dierdorf\";\"main\"\n\"2937317\";\"Diepholz\";\"main\"\n\"2937349\";\"Dienheim\";\"main\"\n\"2937407\";\"Dielheim\";\"main\"\n\"2937449\";\"Diekholzen\";\"main\"\n\"2937553\";\"Diedorf\";\"main\"\n\"2937591\";\"Dieburg\";\"main\"\n\"2937607\";\"Dieblich\";\"main\"\n\"2937632\";\"Diebach\";\"main\"\n\"2937641\";\"Didderse\";\"main\"\n\"2937768\";\"Dexheim\";\"main\"\n\"2937789\";\"Deutzen\";\"main\"\n\"2937809\";\"Deutsch Evern\";\"main\"\n\"2937860\";\"Deuna\";\"main\"\n\"2937865\";\"Deuerling\";\"main\"\n\"2937873\";\"Deuben\";\"main\"\n\"2937889\";\"Dettum\";\"main\"\n\"2937896\";\"Dettingen unter Teck\";\"main\"\n\"2937896\";\"Dettingen\";\"other\"\n\"2937898\";\"Dettingen an der Erms\";\"main\"\n\"2937898\";\"Dettingen\";\"other\"\n\"2937904\";\"Dettingen\";\"main\"\n\"2937906\";\"Dettighofen\";\"main\"\n\"2937919\";\"Dettenhausen\";\"main\"\n\"2937932\";\"Dettelbach\";\"main\"\n\"2937936\";\"Detmold\";\"main\"\n\"2937936\";\"Detmol'd\";\"other\"\n\"2937936\";\"Detmoldas\";\"other\"\n\"2937936\";\"deteumolteu\";\"other\"\n\"2937936\";\"Детмольд\";\"other\"\n\"2937936\";\"데트몰트\";\"other\"\n\"2937944\";\"Detern\";\"main\"\n\"2937944\";\"Lehe Kol\";\"other\"\n\"2937959\";\"Dessau\";\"main\"\n\"2937959\";\"Desau\";\"other\"\n\"2937959\";\"dessau\";\"other\"\n\"2937959\";\"Десау\";\"other\"\n\"2937959\";\"Дессау\";\"other\"\n\"2937959\";\"דסאו\";\"other\"\n\"2937959\";\"デッサウ\";\"other\"\n\"2938004\";\"Dersum\";\"main\"\n\"2938019\";\"Dersekow\";\"main\"\n\"2938030\";\"Derschen\";\"main\"\n\"2938064\";\"Dernbach\";\"main\"\n\"2938065\";\"Dernbach\";\"main\"\n\"2938068\";\"Dernau\";\"main\"\n\"2938075\";\"Dermbach\";\"main\"\n\"2938136\";\"Derenburg\";\"main\"\n\"2938190\";\"Denzlingen\";\"main\"\n\"2938197\";\"Dentlein am Forst\";\"main\"\n\"2938197\";\"Dentlein\";\"other\"\n\"2938197\";\"Dentlein a. Forst\";\"other\"\n\"2938223\";\"Dennheritz\";\"main\"\n\"2938241\";\"Denklingen\";\"main\"\n\"2938245\";\"Denkingen\";\"main\"\n\"2938253\";\"Denkendorf\";\"main\"\n\"2938253\";\"Denkendorf Kr.Esslingen\";\"other\"\n\"2938284\";\"Demmin\";\"main\"\n\"2938284\";\"Dymin\";\"other\"\n\"2938284\";\"Деммин\";\"other\"\n\"2938295\";\"Demitz-Thumitz\";\"main\"\n\"2938304\";\"Demen\";\"main\"\n\"2938323\";\"Delmenhorst\";\"main\"\n\"2938323\";\"Del'menkhorst\";\"other\"\n\"2938323\";\"Demost\";\"other\"\n\"2938323\";\"derumenhorusuto\";\"other\"\n\"2938323\";\"Дельменхорст\";\"other\"\n\"2938323\";\"デルメンホルスト\";\"other\"\n\"2938344\";\"Delligsen\";\"main\"\n\"2938351\";\"Dellfeld\";\"main\"\n\"2938376\";\"Delitzsch\";\"main\"\n\"2938376\";\"Delich\";\"other\"\n\"2938376\";\"Stadt Delitzsch\";\"other\"\n\"2938376\";\"Делич\";\"other\"\n\"2938379\";\"Delingsdorf\";\"main\"\n\"2938389\";\"Delbrück\";\"main\"\n\"2938389\";\"Delbruck\";\"ascii\"\n\"2938391\";\"Deizisau\";\"main\"\n\"2938403\";\"Deißlingen\";\"main\"\n\"2938403\";\"Deisslingen\";\"ascii\"\n\"2938415\";\"Deisenhausen\";\"main\"\n\"2938430\";\"Deinste\";\"main\"\n\"2938439\";\"Deiningen\";\"main\"\n\"2938441\";\"Deining\";\"main\"\n\"2938460\";\"Deilingen\";\"main\"\n\"2938465\";\"Deidesheim\";\"main\"\n\"2938538\";\"Deggingen\";\"main\"\n\"2938540\";\"Deggendorf\";\"main\"\n\"2938540\";\"Deckendorf\";\"other\"\n\"2938540\";\"Degendorf\";\"other\"\n\"2938540\";\"Дегендорф\";\"other\"\n\"2938598\";\"Deensen\";\"main\"\n\"2938619\";\"Dedelstorf\";\"main\"\n\"2938633\";\"Deckenpfronn\";\"main\"\n\"2938711\";\"Dausenau\";\"main\"\n\"2938714\";\"Daun\";\"main\"\n\"2938740\";\"Dauchingen\";\"main\"\n\"2938780\";\"Dattenberg\";\"main\"\n\"2938784\";\"Datteln\";\"main\"\n\"2938798\";\"Dassow\";\"main\"\n\"2938805\";\"Dassendorf\";\"main\"\n\"2938813\";\"Dassel\";\"main\"\n\"2938837\";\"Dasing\";\"main\"\n\"2938913\";\"Darmstadt\";\"main\"\n\"2938913\";\"Darmshhat\";\"other\"\n\"2938913\";\"Darmshtadt\";\"other\"\n\"2938913\";\"Darmundestadt\";\"other\"\n\"2938913\";\"daleumsyutateu\";\"other\"\n\"2938913\";\"darmshtadt\";\"other\"\n\"2938913\";\"darumushutatto\";\"other\"\n\"2938913\";\"Дармштадт\";\"other\"\n\"2938913\";\"Дармщат\";\"other\"\n\"2938913\";\"دارمشتادت\";\"other\"\n\"2938913\";\"ダルムシュタット\";\"other\"\n\"2938913\";\"다름슈타트\";\"other\"\n\"2938918\";\"Darlingerode\";\"main\"\n\"2938924\";\"Dargun\";\"main\"\n\"2938976\";\"Dannewerk\";\"main\"\n\"2938991\";\"Dannenberg\";\"main\"\n\"2939000\";\"Danndorf\";\"main\"\n\"2939009\";\"Dankmarshausen\";\"main\"\n\"2939032\";\"Dänischenhagen\";\"main\"\n\"2939032\";\"Danischenhagen\";\"ascii\"\n\"2939088\";\"Damp\";\"main\"\n\"2939167\";\"Damme\";\"main\"\n\"2939167\";\"Дамме\";\"other\"\n\"2939321\";\"Dalheim\";\"main\"\n\"2939345\";\"Daisendorf\";\"main\"\n\"2939370\";\"Dahn\";\"main\"\n\"2939387\";\"Dahme\";\"main\"\n\"2939388\";\"Dahme\";\"main\"\n\"2939420\";\"Dahlenwarsleben\";\"main\"\n\"2939426\";\"Dahlenburg\";\"main\"\n\"2939434\";\"Dahlen\";\"main\"\n\"2939442\";\"Dahlem\";\"main\"\n\"2939482\";\"Dägeling\";\"main\"\n\"2939482\";\"Dageling\";\"ascii\"\n\"2939510\";\"Dachwig\";\"main\"\n\"2939532\";\"Dachsenhausen\";\"main\"\n\"2939623\";\"Dachau\";\"main\"\n\"2939623\";\"Campo de concentracion de Dachau\";\"other\"\n\"2939623\";\"Campo de concentración de Dachau\";\"other\"\n\"2939623\";\"Campo di concentramento di Dachau\";\"other\"\n\"2939623\";\"Dachau concentration camp\";\"other\"\n\"2939623\";\"Dachau konsentrasjonsleir\";\"other\"\n\"2939623\";\"Dachaun keskitysleiri\";\"other\"\n\"2939623\";\"Dakhau\";\"other\"\n\"2939623\";\"KZ Dachau\";\"other\"\n\"2939623\";\"Дахау\";\"other\"\n\"2939623\";\"דכאו\";\"other\"\n\"2939645\";\"Dabel\";\"main\"\n\"2939650\";\"Daaden\";\"main\"\n\"2939658\";\"Cuxhaven\";\"main\"\n\"2939658\";\"Kukskhafen\";\"other\"\n\"2939658\";\"Куксхафен\";\"other\"\n\"2939687\";\"Cunewalde\";\"main\"\n\"2939710\";\"Crottendorf\";\"main\"\n\"2939714\";\"Crostwitz\";\"main\"\n\"2939714\";\"Chroscicy\";\"other\"\n\"2939714\";\"Chrósćicy\";\"other\"\n\"2939717\";\"Crostau\";\"main\"\n\"2939739\";\"Crivitz\";\"main\"\n\"2939745\";\"Crinitz\";\"main\"\n\"2939747\";\"Crimmitschau\";\"main\"\n\"2939747\";\"Crimmitshau\";\"other\"\n\"2939747\";\"Krimmichau\";\"other\"\n\"2939747\";\"Stadt Crimmitschau\";\"other\"\n\"2939747\";\"Криммичау\";\"other\"\n\"2939754\";\"Creuzburg\";\"main\"\n\"2939756\";\"Creußen\";\"main\"\n\"2939756\";\"Creussen\";\"ascii\"\n\"2939756\";\"Creuszen\";\"other\"\n\"2939763\";\"Cremlingen\";\"main\"\n\"2939767\";\"Creglingen\";\"main\"\n\"2939767\";\"Kreglingen\";\"other\"\n\"2939770\";\"Crawinkel\";\"main\"\n\"2939797\";\"Crailsheim\";\"main\"\n\"2939797\";\"Krajl'skhajm\";\"other\"\n\"2939797\";\"Stadt Crailsheim\";\"other\"\n\"2939797\";\"Крайльсхайм\";\"other\"\n\"2939811\";\"Cottbus\";\"main\"\n\"2939811\";\"Chocebuz\";\"other\"\n\"2939811\";\"Chociebuz\";\"other\"\n\"2939811\";\"Chociebuż\";\"other\"\n\"2939811\";\"Chosebuz\";\"other\"\n\"2939811\";\"Choćebuz\";\"other\"\n\"2939811\";\"Chośebuz\";\"other\"\n\"2939811\";\"Kotbus\";\"other\"\n\"2939811\";\"Kottbus\";\"other\"\n\"2939811\";\"ke te bu si\";\"other\"\n\"2939811\";\"koteubuseu\";\"other\"\n\"2939811\";\"kotobusu\";\"other\"\n\"2939811\";\"Котбус\";\"other\"\n\"2939811\";\"Коттбус\";\"other\"\n\"2939811\";\"コトブス\";\"other\"\n\"2939811\";\"科特布斯\";\"other\"\n\"2939811\";\"코트부스\";\"other\"\n\"2939819\";\"Coswig\";\"main\"\n\"2939820\";\"Coswig\";\"main\"\n\"2939847\";\"Cornberg\";\"main\"\n\"2939847\";\"Dorf Kornberg\";\"other\"\n\"2939847\";\"Kornberg\";\"other\"\n\"2939862\";\"Coppenbrügge\";\"main\"\n\"2939862\";\"Coppenbrugge\";\"ascii\"\n\"2939862\";\"Koppenbrugge\";\"other\"\n\"2939862\";\"Koppenbrügge\";\"other\"\n\"2939870\";\"Contwig\";\"main\"\n\"2939907\";\"Colmberg\";\"main\"\n\"2939927\";\"Colditz\";\"main\"\n\"2939927\";\"ke er di ci\";\"other\"\n\"2939927\";\"科尔迪茨\";\"other\"\n\"2939940\";\"Colbitz\";\"main\"\n\"2939940\";\"Kolbitz\";\"other\"\n\"2939942\";\"Cölbe\";\"main\"\n\"2939942\";\"Colbe\";\"ascii\"\n\"2939945\";\"Coesfeld\";\"main\"\n\"2939945\";\"Koesfeld\";\"other\"\n\"2939945\";\"Kosfel'd\";\"other\"\n\"2939945\";\"Косфельд\";\"other\"\n\"2939946\";\"Cochstedt\";\"main\"\n\"2939946\";\"Kochstedt\";\"other\"\n\"2939949\";\"Cochem\";\"main\"\n\"2939949\";\"Kochem\";\"other\"\n\"2939951\";\"Coburg\";\"main\"\n\"2939951\";\"Coburgo\";\"other\"\n\"2939951\";\"Koburg\";\"other\"\n\"2939951\";\"Landkreis Coburg\";\"other\"\n\"2939951\";\"Powiat Coburg\";\"other\"\n\"2939951\";\"Subdistrikto Coburg\";\"other\"\n\"2939951\";\"koburuku jun\";\"other\"\n\"2939951\";\"Кобург\";\"other\"\n\"2939951\";\"コーブルク郡\";\"other\"\n\"2939969\";\"Cloppenburg\";\"main\"\n\"2939969\";\"Kloppenburg\";\"other\"\n\"2939969\";\"Клоппенбург\";\"other\"\n\"2939972\";\"Clingen\";\"main\"\n\"2939983\";\"Clenze\";\"main\"\n\"2939983\";\"Klenze\";\"other\"\n\"2939990\";\"Cleebronn\";\"main\"\n\"2939995\";\"Clausthal-Zellerfeld\";\"main\"\n\"2939995\";\"Bergstadt-Clausthal-Zellerfeld\";\"other\"\n\"2939997\";\"Claußnitz\";\"main\"\n\"2939997\";\"Claussnitz\";\"ascii\"\n\"2940003\";\"Clausen\";\"main\"\n\"2940119\";\"Chorin\";\"main\"\n\"2940127\";\"Chieming\";\"main\"\n\"2940132\";\"Chemnitz\";\"main\"\n\"2940132\";\"Chemnicium\";\"other\"\n\"2940132\";\"Karl-Marx-Stadt\";\"other\"\n\"2940132\";\"Kemnic\";\"other\"\n\"2940132\";\"Kemnits\";\"other\"\n\"2940132\";\"Khemnic\";\"other\"\n\"2940132\";\"Saska Kamenice\";\"other\"\n\"2940132\";\"Saská Kamenice\";\"other\"\n\"2940132\";\"kai mu ni ci\";\"other\"\n\"2940132\";\"kemunittsu\";\"other\"\n\"2940132\";\"qmnyz\";\"other\"\n\"2940132\";\"Κέμνιτς\";\"other\"\n\"2940132\";\"Кемниц\";\"other\"\n\"2940132\";\"Хемниц\";\"other\"\n\"2940132\";\"קמניץ\";\"other\"\n\"2940132\";\"ケムニッツ\";\"other\"\n\"2940132\";\"开姆尼茨\";\"other\"\n\"2940201\";\"Chamerau\";\"main\"\n\"2940204\";\"Cham\";\"main\"\n\"2940204\";\"Cham Regen\";\"other\"\n\"2940213\";\"Celle\";\"main\"\n\"2940213\";\"Целле\";\"other\"\n\"2940218\";\"Cavertitz\";\"main\"\n\"2940231\";\"Castrop-Rauxel\";\"main\"\n\"2940231\";\"Stadt Castrop-Rauxel\";\"other\"\n\"2940246\";\"Casekow\";\"main\"\n\"2940246\";\"Kasekow\";\"other\"\n\"2940259\";\"Carpin\";\"main\"\n\"2940309\";\"Carlsberg\";\"main\"\n\"2940311\";\"Carlow\";\"main\"\n\"2940317\";\"Cappeln\";\"main\"\n\"2940377\";\"Camburg\";\"main\"\n\"2940381\";\"Bad Camberg\";\"main\"\n\"2940381\";\"Camberg\";\"other\"\n\"2940381\";\"Kamberg\";\"other\"\n\"2940383\";\"Calw\";\"main\"\n\"2940383\";\"Kalv\";\"other\"\n\"2940383\";\"karufu\";\"other\"\n\"2940383\";\"Калв\";\"other\"\n\"2940383\";\"カルフ\";\"other\"\n\"2940386\";\"Calvörde\";\"main\"\n\"2940386\";\"Calvorde\";\"ascii\"\n\"2940397\";\"Callenberg\";\"main\"\n\"2940412\";\"Calden\";\"main\"\n\"2940412\";\"Kalden\";\"other\"\n\"2940416\";\"Calberlah\";\"main\"\n\"2940416\";\"Kalberlah\";\"other\"\n\"2940419\";\"Calbe\";\"main\"\n\"2940419\";\"Calbe an der Saale\";\"other\"\n\"2940419\";\"Kalbe\";\"other\"\n\"2940424\";\"Calau\";\"main\"\n\"2940424\";\"Kalawa\";\"other\"\n\"2940428\";\"Cadolzburg\";\"main\"\n\"2940430\";\"Cadenberge\";\"main\"\n\"2940430\";\"Kadenberge\";\"other\"\n\"2940451\";\"Buxtehude\";\"main\"\n\"2940457\";\"Buxheim\";\"main\"\n\"2940476\";\"Bützow\";\"main\"\n\"2940476\";\"Butzow\";\"ascii\"\n\"2940512\";\"Butzbach\";\"main\"\n\"2940516\";\"Büttstedt\";\"main\"\n\"2940516\";\"Buttstedt\";\"ascii\"\n\"2940518\";\"Buttstädt\";\"main\"\n\"2940518\";\"Buttstadt\";\"ascii\"\n\"2940518\";\"Buttstaedt\";\"other\"\n\"2940529\";\"Buttlar\";\"main\"\n\"2940534\";\"Bütthard\";\"main\"\n\"2940534\";\"Butthard\";\"ascii\"\n\"2940534\";\"Butthar\";\"other\"\n\"2940534\";\"Butthart\";\"other\"\n\"2940534\";\"Bütthar\";\"other\"\n\"2940534\";\"Bütthart\";\"other\"\n\"2940611\";\"Buttenwiesen\";\"main\"\n\"2940613\";\"Buttenheim\";\"main\"\n\"2940622\";\"Buttelstedt\";\"main\"\n\"2940633\";\"Büttelborn\";\"main\"\n\"2940633\";\"Buttelborn\";\"ascii\"\n\"2940669\";\"Büsum\";\"main\"\n\"2940669\";\"Busum\";\"ascii\"\n\"2940715\";\"Büsingen\";\"main\"\n\"2940715\";\"Busingen\";\"ascii\"\n\"2940715\";\"Buesingen\";\"other\"\n\"2940715\";\"Buesingen am Hochrhein\";\"other\"\n\"2940715\";\"Büsingen am Hochrhein\";\"other\"\n\"2940733\";\"Busenberg\";\"main\"\n\"2940743\";\"Busdorf\";\"main\"\n\"2940929\";\"Burtenbach\";\"main\"\n\"2940938\";\"Bürstadt\";\"main\"\n\"2940938\";\"Burstadt\";\"ascii\"\n\"2940942\";\"Burscheid\";\"main\"\n\"2940942\";\"Burshajd\";\"other\"\n\"2940942\";\"Буршайд\";\"other\"\n\"2940959\";\"Burow\";\"main\"\n\"2940977\";\"Burladingen\";\"main\"\n\"2940993\";\"Burkhardtsdorf\";\"main\"\n\"2941028\";\"Burkau\";\"main\"\n\"2941034\";\"Burkardroth\";\"main\"\n\"2941038\";\"Burk\";\"main\"\n\"2941052\";\"Burgwindheim\";\"main\"\n\"2941053\";\"Burgwerben\";\"main\"\n\"2941090\";\"Burgthann\";\"main\"\n\"2941107\";\"Burg Stargard\";\"main\"\n\"2941150\";\"Burgstädt\";\"main\"\n\"2941150\";\"Burgstadt\";\"ascii\"\n\"2941151\";\"Bürgstadt\";\"main\"\n\"2941151\";\"Burgstadt\";\"ascii\"\n\"2941159\";\"Burgsinn\";\"main\"\n\"2941166\";\"Burgschwalbach\";\"main\"\n\"2941172\";\"Burgsalach\";\"main\"\n\"2941172\";\"Burgsalack\";\"other\"\n\"2941173\";\"Burgrieden\";\"main\"\n\"2941178\";\"Burgpreppach\";\"main\"\n\"2941179\";\"Burgoberbach\";\"main\"\n\"2941190\";\"Burglengenfeld\";\"main\"\n\"2941190\";\"Burglegenfeld\";\"other\"\n\"2941204\";\"Burglauer\";\"main\"\n\"2941207\";\"Burgkunstadt\";\"main\"\n\"2941207\";\"Burgkundstadt\";\"other\"\n\"2941216\";\"Burgkirchen an der Alz\";\"main\"\n\"2941216\";\"Burgkirchen\";\"other\"\n\"2941271\";\"Burgheim\";\"main\"\n\"2941271\";\"Burkheim\";\"other\"\n\"2941279\";\"Burghausen\";\"main\"\n\"2941279\";\"Burkhausen\";\"other\"\n\"2941283\";\"Burghaun\";\"main\"\n\"2941285\";\"Burghaslach\";\"main\"\n\"2941319\";\"Burggen\";\"main\"\n\"2941401\";\"Bürgel\";\"main\"\n\"2941401\";\"Burgel\";\"ascii\"\n\"2941403\";\"Burgebrach\";\"main\"\n\"2941405\";\"Burgdorf\";\"main\"\n\"2941413\";\"Burgbrohl\";\"main\"\n\"2941416\";\"Burgbernheim\";\"main\"\n\"2941422\";\"Burgberg\";\"main\"\n\"2941485\";\"Burgau\";\"main\"\n\"2941485\";\"Burgau Kreis Gunzburg\";\"other\"\n\"2941485\";\"Burgau Kreis Günzburg\";\"other\"\n\"2941496\";\"Burg auf Fehmarn\";\"main\"\n\"2941496\";\"Burg\";\"other\"\n\"2941496\";\"Burg am Fehmarn\";\"other\"\n\"2941496\";\"Бург\";\"other\"\n\"2941497\";\"Burg\";\"main\"\n\"2941501\";\"Burg bei Magdeburg\";\"main\"\n\"2941501\";\"Burg\";\"other\"\n\"2941501\";\"Stadt Burg bei Magdeburg\";\"other\"\n\"2941502\";\"Burg\";\"main\"\n\"2941502\";\"Borkowy\";\"other\"\n\"2941502\";\"Burg-Dorf\";\"other\"\n\"2941570\";\"Büren\";\"main\"\n\"2941570\";\"Buren\";\"ascii\"\n\"2941595\";\"Burbach\";\"main\"\n\"2941690\";\"Bundenthal\";\"main\"\n\"2941692\";\"Bundenbach\";\"main\"\n\"2941693\";\"Bunde\";\"main\"\n\"2941694\";\"Bünde\";\"main\"\n\"2941694\";\"Buende\";\"ascii\"\n\"2941826\";\"Bullay\";\"main\"\n\"2941877\";\"Bühren\";\"main\"\n\"2941877\";\"Buehren\";\"ascii\"\n\"2941923\";\"Bühlerzell\";\"main\"\n\"2941923\";\"Buhlerzell\";\"ascii\"\n\"2941926\";\"Bühlertann\";\"main\"\n\"2941926\";\"Buhlertann\";\"ascii\"\n\"2941928\";\"Bühlertal\";\"main\"\n\"2941928\";\"Buhlertal\";\"ascii\"\n\"2941976\";\"Bühl\";\"main\"\n\"2941976\";\"Buhl\";\"ascii\"\n\"2942017\";\"Buggingen\";\"main\"\n\"2942048\";\"Bufleben\";\"main\"\n\"2942073\";\"Büdingen\";\"main\"\n\"2942073\";\"Budingen\";\"ascii\"\n\"2942087\";\"Budenheim\";\"main\"\n\"2942093\";\"Büdelsdorf\";\"main\"\n\"2942093\";\"Budelsdorf\";\"ascii\"\n\"2942126\";\"Buckow\";\"main\"\n\"2942147\";\"Buckenhof\";\"main\"\n\"2942154\";\"Bücken\";\"main\"\n\"2942154\";\"Bucken\";\"ascii\"\n\"2942159\";\"Bückeburg\";\"main\"\n\"2942159\";\"Buckeburg\";\"ascii\"\n\"2942281\";\"Buchloe\";\"main\"\n\"2942290\";\"Büchlberg\";\"main\"\n\"2942290\";\"Buchlberg\";\"ascii\"\n\"2942323\";\"Buchholz in der Nordheide\";\"main\"\n\"2942323\";\"Buchholz\";\"other\"\n\"2942323\";\"Bukhgol'c-in-der-Nordkhajde\";\"other\"\n\"2942323\";\"Бухгольц-ин-дер-Нордхайде\";\"other\"\n\"2942345\";\"Buchholz\";\"main\"\n\"2942358\";\"Buchholz\";\"main\"\n\"2942559\";\"Büchenbeuren\";\"main\"\n\"2942559\";\"Buchenbeuren\";\"ascii\"\n\"2942566\";\"Buchenberg\";\"main\"\n\"2942612\";\"Büchenbach\";\"main\"\n\"2942612\";\"Buchenbach\";\"ascii\"\n\"2942614\";\"Buchenbach\";\"main\"\n\"2942627\";\"Büchen\";\"main\"\n\"2942627\";\"Buchen\";\"ascii\"\n\"2942634\";\"Buchen\";\"main\"\n\"2942634\";\"Buchen in Odenwald\";\"other\"\n\"2942688\";\"Büchel\";\"main\"\n\"2942688\";\"Buchel\";\"ascii\"\n\"2942702\";\"Buchdorf\";\"main\"\n\"2942706\";\"Buchbrunn\";\"main\"\n\"2942795\";\"Buchbach\";\"main\"\n\"2942810\";\"Buch am Buchrain\";\"main\"\n\"2942810\";\"Buch\";\"other\"\n\"2942811\";\"Buch am Ahorn\";\"main\"\n\"2942811\";\"Buch\";\"other\"\n\"2942819\";\"Bucha\";\"main\"\n\"2942858\";\"Buch\";\"main\"\n\"2942866\";\"Buch\";\"main\"\n\"2942913\";\"Bubsheim\";\"main\"\n\"2942922\";\"Bubesheim\";\"main\"\n\"2942930\";\"Bubenreuth\";\"main\"\n\"2942986\";\"Brüssow\";\"main\"\n\"2942986\";\"Brussow\";\"ascii\"\n\"2942992\";\"Brüsewitz\";\"main\"\n\"2942992\";\"Brusewitz\";\"ascii\"\n\"2943049\";\"Brunsbüttel\";\"main\"\n\"2943049\";\"Brunsbuttel\";\"ascii\"\n\"2943074\";\"Brunnthal\";\"main\"\n\"2943163\";\"Brunnen\";\"main\"\n\"2943203\";\"Brunn\";\"main\"\n\"2943217\";\"Brunn\";\"main\"\n\"2943292\";\"Brumby\";\"main\"\n\"2943320\";\"Brühl\";\"main\"\n\"2943320\";\"Bruhl\";\"ascii\"\n\"2943321\";\"Brühl\";\"main\"\n\"2943321\";\"Bruhl\";\"ascii\"\n\"2943321\";\"Brjul'\";\"other\"\n\"2943321\";\"Bruehl\";\"other\"\n\"2943321\";\"Брюль\";\"other\"\n\"2943335\";\"Brüggen\";\"main\"\n\"2943335\";\"Bruggen\";\"ascii\"\n\"2943336\";\"Brüggen\";\"main\"\n\"2943336\";\"Bruggen\";\"ascii\"\n\"2943350\";\"Brügge\";\"main\"\n\"2943350\";\"Brugge\";\"ascii\"\n\"2943362\";\"Brüel\";\"main\"\n\"2943362\";\"Bruel\";\"ascii\"\n\"2943408\";\"Bruckmühl\";\"main\"\n\"2943408\";\"Bruckmuhl\";\"ascii\"\n\"2943425\";\"Bruck in der Oberpfalz\";\"main\"\n\"2943425\";\"Bruck\";\"other\"\n\"2943425\";\"Bruck bei Nittenau\";\"other\"\n\"2943425\";\"Bruck i.d. OPf.\";\"other\"\n\"2943425\";\"Bruck in der Oberptalz\";\"other\"\n\"2943487\";\"Brücken\";\"main\"\n\"2943487\";\"Brucken\";\"ascii\"\n\"2943488\";\"Brücken\";\"main\"\n\"2943488\";\"Brucken\";\"ascii\"\n\"2943500\";\"Bruckberg\";\"main\"\n\"2943501\";\"Bruckberg\";\"main\"\n\"2943516\";\"Brück\";\"main\"\n\"2943516\";\"Bruck\";\"ascii\"\n\"2943531\";\"Bruck\";\"main\"\n\"2943546\";\"Bruchweiler-Bärenbach\";\"main\"\n\"2943546\";\"Bruchweiler-Barenbach\";\"ascii\"\n\"2943560\";\"Bruchsal\";\"main\"\n\"2943560\";\"Bruchsalia\";\"other\"\n\"2943560\";\"Brukhzal'\";\"other\"\n\"2943560\";\"Брухзаль\";\"other\"\n\"2943573\";\"Bruchköbel\";\"main\"\n\"2943573\";\"Bruchkobel\";\"ascii\"\n\"2943587\";\"Bruchhausen-Vilsen\";\"main\"\n\"2943587\";\"Bruchhausen\";\"other\"\n\"2943697\";\"Brotterode\";\"main\"\n\"2943783\";\"Bromskirchen\";\"main\"\n\"2943795\";\"Brome\";\"main\"\n\"2943829\";\"Brokstedt\";\"main\"\n\"2943851\";\"Brokdorf\";\"main\"\n\"2943919\";\"Broderstorf\";\"main\"\n\"2943945\";\"Brockum\";\"main\"\n\"2943997\";\"Brockel\";\"main\"\n\"2944028\";\"Britz\";\"main\"\n\"2944031\";\"Britten\";\"main\"\n\"2944079\";\"Brilon\";\"main\"\n\"2944093\";\"Brietlingen\";\"main\"\n\"2944103\";\"Brieskow-Finkenheerd\";\"main\"\n\"2944103\";\"Brieskow\";\"other\"\n\"2944103\";\"Finkenheerd\";\"other\"\n\"2944121\";\"Briesen\";\"main\"\n\"2944126\";\"Brieselang\";\"main\"\n\"2944146\";\"Briedel\";\"main\"\n\"2944155\";\"Brey\";\"main\"\n\"2944169\";\"Breuna\";\"main\"\n\"2944178\";\"Bretzfeld\";\"main\"\n\"2944181\";\"Bretzenheim\";\"main\"\n\"2944200\";\"Bretten\";\"main\"\n\"2944254\";\"Brensbach\";\"main\"\n\"2944288\";\"Brennberg\";\"main\"\n\"2944354\";\"Bremervörde\";\"main\"\n\"2944354\";\"Bremervorde\";\"ascii\"\n\"2944368\";\"Bremerhaven\";\"main\"\n\"2944368\";\"Bremerhoben\";\"other\"\n\"2944368\";\"Bremerkhafen\";\"other\"\n\"2944368\";\"beulemeohapen\";\"other\"\n\"2944368\";\"buremahafen\";\"other\"\n\"2944368\";\"Бремерхафен\";\"other\"\n\"2944368\";\"ブレーマーハーフェン\";\"other\"\n\"2944368\";\"브레머하펜\";\"other\"\n\"2944388\";\"Bremen\";\"main\"\n\"2944388\";\"Brema\";\"other\"\n\"2944388\";\"Breme\";\"other\"\n\"2944388\";\"Bremen hiria\";\"other\"\n\"2944388\";\"Bremenas\";\"other\"\n\"2944388\";\"Bremene\";\"other\"\n\"2944388\";\"Bremy\";\"other\"\n\"2944388\";\"Brémy\";\"other\"\n\"2944388\";\"Brême\";\"other\"\n\"2944388\";\"Brēmene\";\"other\"\n\"2944388\";\"Brėmenas\";\"other\"\n\"2944388\";\"beulemen\";\"other\"\n\"2944388\";\"brmn\";\"other\"\n\"2944388\";\"brymn\";\"other\"\n\"2944388\";\"bu lai mei\";\"other\"\n\"2944388\";\"buremen\";\"other\"\n\"2944388\";\"mdynt brymn\";\"other\"\n\"2944388\";\"Βρέμη\";\"other\"\n\"2944388\";\"Бремен\";\"other\"\n\"2944388\";\"برمن\";\"other\"\n\"2944388\";\"بريمن\";\"other\"\n\"2944388\";\"مدينة بريمن\";\"other\"\n\"2944388\";\"ブレーメン\";\"other\"\n\"2944388\";\"不来梅\";\"other\"\n\"2944388\";\"브레멘\";\"other\"\n\"2944426\";\"Breklum\";\"main\"\n\"2944426\";\"Braeaeklem\";\"other\"\n\"2944426\";\"Brääklem\";\"other\"\n\"2944431\";\"Brekendorf\";\"main\"\n\"2944440\";\"Breitungen\";\"main\"\n\"2944440\";\"Altenbreitungen\";\"other\"\n\"2944443\";\"Breitscheidt\";\"main\"\n\"2944443\";\"Breitscheid\";\"other\"\n\"2944445\";\"Breitscheid\";\"main\"\n\"2944455\";\"Breitnau\";\"main\"\n\"2944516\";\"Breitenworbis\";\"main\"\n\"2944529\";\"Breitenthal\";\"main\"\n\"2944599\";\"Breitengüßbach\";\"main\"\n\"2944599\";\"Breitengussbach\";\"ascii\"\n\"2944608\";\"Breitenfelde\";\"main\"\n\"2944627\";\"Breitenburg\";\"main\"\n\"2944630\";\"Breitenbrunn\";\"main\"\n\"2944636\";\"Breitenbrunn\";\"main\"\n\"2944638\";\"Breitenbrunn\";\"main\"\n\"2944657\";\"Breitenberg\";\"main\"\n\"2944657\";\"Breitenburg\";\"other\"\n\"2944707\";\"Breitenbach\";\"main\"\n\"2944710\";\"Breitenbach\";\"main\"\n\"2944781\";\"Breitbrunn\";\"main\"\n\"2944782\";\"Breitbrunn\";\"main\"\n\"2944800\";\"Breisach am Rhein\";\"main\"\n\"2944800\";\"Alt-Breisach\";\"other\"\n\"2944800\";\"Breisach\";\"other\"\n\"2944800\";\"Vieux-Brisach\";\"other\"\n\"2944812\";\"Breiholz\";\"main\"\n\"2944820\";\"Breidenbach\";\"main\"\n\"2944828\";\"Brehna\";\"main\"\n\"2944834\";\"Brehme\";\"main\"\n\"2944865\";\"Breese\";\"main\"\n\"2944879\";\"Bredstedt\";\"main\"\n\"2944879\";\"Braeist\";\"other\"\n\"2944879\";\"Bräist\";\"other\"\n\"2944915\";\"Bredenbek\";\"main\"\n\"2944944\";\"Breddorf\";\"main\"\n\"2944945\";\"Breddin\";\"main\"\n\"2944955\";\"Breckerfeld\";\"main\"\n\"2945024\";\"Braunschweig\";\"main\"\n\"2945024\";\"Braunshvejg\";\"other\"\n\"2945024\";\"Bronswiek\";\"other\"\n\"2945024\";\"Brunsvicum\";\"other\"\n\"2945024\";\"Brunsvik\";\"other\"\n\"2945024\";\"Brunswick\";\"other\"\n\"2945024\";\"Brunswyck\";\"other\"\n\"2945024\";\"Brunszwik\";\"other\"\n\"2945024\";\"Brúnsvík\";\"other\"\n\"2945024\";\"beulaunsyubaikeu\";\"other\"\n\"2945024\";\"braunshvaigi\";\"other\"\n\"2945024\";\"brawnshfaygh\";\"other\"\n\"2945024\";\"bu lun rui ke\";\"other\"\n\"2945024\";\"buraunshuvu~aiku\";\"other\"\n\"2945024\";\"Брауншвейг\";\"other\"\n\"2945024\";\"براونشفايغ\";\"other\"\n\"2945024\";\"ბრაუნშვაიგი\";\"other\"\n\"2945024\";\"ブラウンシュヴァイク\";\"other\"\n\"2945024\";\"不伦瑞克\";\"other\"\n\"2945024\";\"브라운슈바이크\";\"other\"\n\"2945041\";\"Braunsbedra\";\"main\"\n\"2945041\";\"Braunsdorf\";\"other\"\n\"2945043\";\"Braunsbach\";\"main\"\n\"2945051\";\"Bräunlingen\";\"main\"\n\"2945051\";\"Braunlingen\";\"ascii\"\n\"2945055\";\"Braunlage\";\"main\"\n\"2945073\";\"Braunfels\";\"main\"\n\"2945103\";\"Brauneberg\";\"main\"\n\"2945136\";\"Braubach\";\"main\"\n\"2945151\";\"Braschwitz\";\"main\"\n\"2945165\";\"Brannenburg\";\"main\"\n\"2945209\";\"Brandshagen\";\"main\"\n\"2945270\";\"Brandis\";\"main\"\n\"2945341\";\"Brand-Erbisdorf\";\"main\"\n\"2945341\";\"Erbisdorf\";\"other\"\n\"2945358\";\"Brandenburg an der Havel\";\"main\"\n\"2945358\";\"Brandebourg-sur-la-Havel\";\"other\"\n\"2945358\";\"Brandeburgas\";\"other\"\n\"2945358\";\"Brandeburgo\";\"other\"\n\"2945358\";\"Brandeburgo sull'Havel\";\"other\"\n\"2945358\";\"Brandenburg\";\"other\"\n\"2945358\";\"Brandenburg un der Havel\";\"other\"\n\"2945358\";\"Brandenburgas\";\"other\"\n\"2945358\";\"Brannenborg an de Havel\";\"other\"\n\"2945358\";\"brandenburgi\";\"other\"\n\"2945358\";\"Бранденбург\";\"other\"\n\"2945358\";\"ברנדנבורג על נהר האבל\";\"other\"\n\"2945358\";\"ბრანდენბურგი\";\"other\"\n\"2945358\";\"ブランデンブルク・アン・デア・ハーフェル\";\"other\"\n\"2945382\";\"Brande-Hörnerkirchen\";\"main\"\n\"2945382\";\"Brande-Hornerkirchen\";\"ascii\"\n\"2945429\";\"Brand\";\"main\"\n\"2945469\";\"Bramstedt\";\"main\"\n\"2945474\";\"Bramsche\";\"main\"\n\"2945474\";\"Bramshe\";\"other\"\n\"2945474\";\"Брамше\";\"other\"\n\"2945542\";\"Brakel\";\"main\"\n\"2945545\";\"Brake (Unterweser)\";\"main\"\n\"2945545\";\"Brake\";\"other\"\n\"2945561\";\"Brahmenau\";\"main\"\n\"2945591\";\"Brackenheim\";\"main\"\n\"2945600\";\"Brackel\";\"main\"\n\"2945647\";\"Brachbach\";\"main\"\n\"2945647\";\"Brachback\";\"other\"\n\"2945698\";\"Boxberg\";\"main\"\n\"2945703\";\"Boxberg\";\"main\"\n\"2945703\";\"Boxberg Stadt\";\"other\"\n\"2945726\";\"Bovenden\";\"main\"\n\"2945729\";\"Bovenau\";\"main\"\n\"2945730\";\"Bous\";\"main\"\n\"2945730\";\"Buss\";\"other\"\n\"2945730\";\"Buß\";\"other\"\n\"2945740\";\"Bötzingen\";\"main\"\n\"2945740\";\"Botzingen\";\"ascii\"\n\"2945756\";\"Bottrop\";\"main\"\n\"2945756\";\"Botrop\";\"other\"\n\"2945756\";\"botoroppu\";\"other\"\n\"2945756\";\"Ботроп\";\"other\"\n\"2945756\";\"ボトロップ\";\"other\"\n\"2945762\";\"Böttingen\";\"main\"\n\"2945762\";\"Bottingen\";\"ascii\"\n\"2945802\";\"Bothel\";\"main\"\n\"2945807\";\"Bötersen\";\"main\"\n\"2945807\";\"Botersen\";\"ascii\"\n\"2945866\";\"Bösingen\";\"main\"\n\"2945866\";\"Bosingen\";\"ascii\"\n\"2945891\";\"Bösenbrunn\";\"main\"\n\"2945891\";\"Bosenbrunn\";\"ascii\"\n\"2945907\";\"Bösel\";\"main\"\n\"2945907\";\"Bosel\";\"ascii\"\n\"2945907\";\"Boesel\";\"other\"\n\"2945911\";\"Bösdorf\";\"main\"\n\"2945911\";\"Bosdorf\";\"ascii\"\n\"2945945\";\"Bosau\";\"main\"\n\"2945957\";\"Börtlingen\";\"main\"\n\"2945957\";\"Bortlingen\";\"ascii\"\n\"2945980\";\"Borstendorf\";\"main\"\n\"2945982\";\"Borstel-Hohenraden\";\"main\"\n\"2945982\";\"Borstel\";\"other\"\n\"2945995\";\"Borstel\";\"main\"\n\"2946007\";\"Börßum\";\"main\"\n\"2946007\";\"Borssum\";\"ascii\"\n\"2946016\";\"Borsdorf\";\"main\"\n\"2946034\";\"Borrentin\";\"main\"\n\"2946060\";\"Börnsen\";\"main\"\n\"2946060\";\"Bornsen\";\"ascii\"\n\"2946097\";\"Börnichen\";\"main\"\n\"2946097\";\"Bornichen\";\"ascii\"\n\"2946098\";\"Bornich\";\"main\"\n\"2946100\";\"Bornhöved\";\"main\"\n\"2946100\";\"Bornhoved\";\"ascii\"\n\"2946111\";\"Bornheim\";\"main\"\n\"2946113\";\"Bornheim\";\"main\"\n\"2946137\";\"Borne\";\"main\"\n\"2946172\";\"Borna\";\"main\"\n\"2946176\";\"Born\";\"main\"\n\"2946176\";\"Born am Darss\";\"other\"\n\"2946176\";\"Born am Darß\";\"other\"\n\"2946176\";\"Born uber Barth\";\"other\"\n\"2946176\";\"Born über Barth\";\"other\"\n\"2946203\";\"Borkwalde\";\"main\"\n\"2946206\";\"Borkum\";\"main\"\n\"2946206\";\"Boarkum\";\"other\"\n\"2946206\";\"bwrqwm\";\"other\"\n\"2946206\";\"Боркум\";\"other\"\n\"2946206\";\"בורקום\";\"other\"\n\"2946214\";\"Borkheide\";\"main\"\n\"2946214\";\"Bork\";\"other\"\n\"2946214\";\"Kolonie Bork\";\"other\"\n\"2946228\";\"Borken\";\"main\"\n\"2946230\";\"Borken\";\"main\"\n\"2946247\";\"Borgstedt\";\"main\"\n\"2946270\";\"Borgholzhausen\";\"main\"\n\"2946290\";\"Börger\";\"main\"\n\"2946290\";\"Borger\";\"ascii\"\n\"2946291\";\"Borgentreich\";\"main\"\n\"2946321\";\"Bordesholm\";\"main\"\n\"2946366\";\"Boppard\";\"main\"\n\"2946366\";\"Боппард\";\"other\"\n\"2946368\";\"Bopfingen\";\"main\"\n\"2946373\";\"Boostedt\";\"main\"\n\"2946379\";\"Boos\";\"main\"\n\"2946409\";\"Bonstetten\";\"main\"\n\"2946421\";\"Bönningstedt\";\"main\"\n\"2946421\";\"Bonningstedt\";\"ascii\"\n\"2946428\";\"Bönnigheim\";\"main\"\n\"2946428\";\"Bonnigheim\";\"ascii\"\n\"2946445\";\"Bonndorf im Schwarzwald\";\"main\"\n\"2946445\";\"Bonndorf\";\"other\"\n\"2946447\";\"Bonn\";\"main\"\n\"2946447\";\"Бонн\";\"other\"\n\"2946478\";\"Bönen\";\"main\"\n\"2946478\";\"Bonen\";\"ascii\"\n\"2946481\";\"Bonefeld\";\"main\"\n\"2946482\";\"Bönebüttel\";\"main\"\n\"2946482\";\"Bonebuttel\";\"ascii\"\n\"2946485\";\"Bondorf\";\"main\"\n\"2946524\";\"Bomlitz\";\"main\"\n\"2946583\";\"Bolsterlang\";\"main\"\n\"2946599\";\"Bollschweil\";\"main\"\n\"2946610\";\"Bollingstedt\";\"main\"\n\"2946610\";\"Bolingsted\";\"other\"\n\"2946657\";\"Bollendorf\";\"main\"\n\"2946657\";\"Bottendorf\";\"other\"\n\"2946696\";\"Boll\";\"main\"\n\"2946713\";\"Bolheim\";\"main\"\n\"2946713\";\"Bola\";\"other\"\n\"2946733\";\"Bolanden\";\"main\"\n\"2946733\";\"Boulanden\";\"other\"\n\"2946753\";\"Bokholt-Hanredder\";\"main\"\n\"2946801\";\"Bokel\";\"main\"\n\"2946821\";\"Boizenburg\";\"main\"\n\"2946821\";\"Boizenberg\";\"other\"\n\"2946923\";\"Bohmte\";\"main\"\n\"2946950\";\"Böhmenkirch\";\"main\"\n\"2946950\";\"Bohmenkirch\";\"ascii\"\n\"2946980\";\"Böhlen\";\"main\"\n\"2946980\";\"Bohlen\";\"ascii\"\n\"2946980\";\"Boehlen\";\"other\"\n\"2947026\";\"Bogen\";\"main\"\n\"2947038\";\"Boffzen\";\"main\"\n\"2947067\";\"Bodolz\";\"main\"\n\"2947069\";\"Bodnegg\";\"main\"\n\"2947090\";\"Bodenwöhr\";\"main\"\n\"2947090\";\"Bodenwohr\";\"ascii\"\n\"2947092\";\"Bodenwerder\";\"main\"\n\"2947120\";\"Bodenmais\";\"main\"\n\"2947125\";\"Bodenkirchen\";\"main\"\n\"2947133\";\"Bodenheim\";\"main\"\n\"2947139\";\"Bodenfelde\";\"main\"\n\"2947172\";\"Bodelshausen\";\"main\"\n\"2947299\";\"Bockhorst\";\"main\"\n\"2947312\";\"Bockhorn\";\"main\"\n\"2947316\";\"Bockhorn\";\"main\"\n\"2947355\";\"Bockenheim\";\"main\"\n\"2947355\";\"Bockenheim an der Weinstrasse\";\"other\"\n\"2947355\";\"Bockenheim an der Weinstraße\";\"other\"\n\"2947359\";\"Bockenem\";\"main\"\n\"2947370\";\"Bockenau\";\"main\"\n\"2947372\";\"Bockelwitz\";\"main\"\n\"2947403\";\"Bockau\";\"main\"\n\"2947416\";\"Bochum\";\"main\"\n\"2947416\";\"Baukem\";\"other\"\n\"2947416\";\"Bohuma\";\"other\"\n\"2947416\";\"Bokhum\";\"other\"\n\"2947416\";\"bo hong\";\"other\"\n\"2947416\";\"bofumu\";\"other\"\n\"2947416\";\"bwkhwm\";\"other\"\n\"2947416\";\"bwkwm\";\"other\"\n\"2947416\";\"Бохум\";\"other\"\n\"2947416\";\"בוכום\";\"other\"\n\"2947416\";\"بوخوم\";\"other\"\n\"2947416\";\"ボーフム\";\"other\"\n\"2947416\";\"波鸿\";\"other\"\n\"2947421\";\"Bocholt\";\"main\"\n\"2947421\";\"Bokelt\";\"other\"\n\"2947439\";\"Böbrach\";\"main\"\n\"2947439\";\"Bobrach\";\"ascii\"\n\"2947444\";\"Böblingen\";\"main\"\n\"2947444\";\"Boblingen\";\"ascii\"\n\"2947444\";\"B'oblingen\";\"other\"\n\"2947444\";\"Boeblingen\";\"other\"\n\"2947444\";\"Бьоблинген\";\"other\"\n\"2947447\";\"Bobitz\";\"main\"\n\"2947449\";\"Bobingen\";\"main\"\n\"2947450\";\"Böbing\";\"main\"\n\"2947450\";\"Bobing\";\"ascii\"\n\"2947465\";\"Bobenheim-Roxheim\";\"main\"\n\"2947465\";\"Bobenheim\";\"other\"\n\"2947465\";\"Bobenheim am Rhein\";\"other\"\n\"2947477\";\"Bobbau\";\"main\"\n\"2947584\";\"Blumberg\";\"main\"\n\"2947604\";\"Blowatz\";\"main\"\n\"2947641\";\"Blomberg\";\"main\"\n\"2947646\";\"Blomberg\";\"main\"\n\"2947713\";\"Blindheim\";\"main\"\n\"2947739\";\"Blieskastel\";\"main\"\n\"2947751\";\"Bliesdorf\";\"main\"\n\"2947769\";\"Bliedersdorf\";\"main\"\n\"2947810\";\"Blender\";\"main\"\n\"2947813\";\"Blekendorf\";\"main\"\n\"2947837\";\"Bleicherode\";\"main\"\n\"2947874\";\"Bleialf\";\"main\"\n\"2947894\";\"Bleckede\";\"main\"\n\"2947919\";\"Blaufelden\";\"main\"\n\"2947949\";\"Blaubeuren\";\"main\"\n\"2948038\";\"Blankensee\";\"main\"\n\"2948046\";\"Blankenrath\";\"main\"\n\"2948054\";\"Blankenheim\";\"main\"\n\"2948056\";\"Blankenheim\";\"main\"\n\"2948058\";\"Blankenhain\";\"main\"\n\"2948071\";\"Blankenburg\";\"main\"\n\"2948114\";\"Blaichach\";\"main\"\n\"2948115\";\"Blaibach\";\"main\"\n\"2948147\";\"Bitz\";\"main\"\n\"2948164\";\"Bitterfeld\";\"main\"\n\"2948164\";\"Bitterfel'd\";\"other\"\n\"2948164\";\"Bitterfelde\";\"other\"\n\"2948164\";\"Биттерфельд\";\"other\"\n\"2948184\";\"Bitburg\";\"main\"\n\"2948184\";\"Beibreg\";\"other\"\n\"2948184\";\"Béibreg\";\"other\"\n\"2948202\";\"Bissingen an der Teck\";\"main\"\n\"2948202\";\"Bissingen\";\"other\"\n\"2948204\";\"Bissingen\";\"main\"\n\"2948212\";\"Bissendorf\";\"main\"\n\"2948222\";\"Bispingen\";\"main\"\n\"2948229\";\"Bismark\";\"main\"\n\"2948246\";\"Bisingen\";\"main\"\n\"2948261\";\"Bischweier\";\"main\"\n\"2948265\";\"Bischofswiesen\";\"main\"\n\"2948267\";\"Bischofswerda\";\"main\"\n\"2948282\";\"Bischofsmais\";\"main\"\n\"2948287\";\"Bischofsheim an der Rhön\";\"main\"\n\"2948287\";\"Bischofsheim an der Rhon\";\"ascii\"\n\"2948287\";\"Bischofsheim\";\"other\"\n\"2948290\";\"Bischofsheim\";\"main\"\n\"2948290\";\"Gau-Bischofsheim\";\"other\"\n\"2948292\";\"Bischofsgrün\";\"main\"\n\"2948292\";\"Bischofsgrun\";\"ascii\"\n\"2948305\";\"Bischofferode\";\"main\"\n\"2948307\";\"Bischoffen\";\"main\"\n\"2948337\";\"Bischbrunn\";\"main\"\n\"2948339\";\"Bischberg\";\"main\"\n\"2948351\";\"Birstein\";\"main\"\n\"2948355\";\"Birresborn\";\"main\"\n\"2948355\";\"Birreses Born\";\"other\"\n\"2948384\";\"Bad Birnbach\";\"main\"\n\"2948396\";\"Birlenbach\";\"main\"\n\"2948503\";\"Birkenwerder\";\"main\"\n\"2948570\";\"Birkenheide\";\"main\"\n\"2948594\";\"Birkenfeld\";\"main\"\n\"2948595\";\"Birkenfeld\";\"main\"\n\"2948595\";\"Birkenfell\";\"other\"\n\"2948598\";\"Birkenfeld\";\"main\"\n\"2948652\";\"Birkenau\";\"main\"\n\"2948717\";\"Birgte\";\"main\"\n\"2948727\";\"Birenbach\";\"main\"\n\"2948733\";\"Bippen\";\"main\"\n\"2948746\";\"Binzen\";\"main\"\n\"2948750\";\"Binswangen\";\"main\"\n\"2948759\";\"Binsfeld\";\"main\"\n\"2948810\";\"Binnen\";\"main\"\n\"2948825\";\"Bingen am Rhein\";\"main\"\n\"2948825\";\"Bingen\";\"other\"\n\"2948825\";\"Bingen na Rejn\";\"other\"\n\"2948825\";\"Bingen-Am-Rhein\";\"other\"\n\"2948825\";\"Бинген на Рейн\";\"other\"\n\"2948825\";\"ビンゲン・アム・ライン\";\"other\"\n\"2948826\";\"Bingen\";\"main\"\n\"2948840\";\"Bindlach\";\"main\"\n\"2948861\";\"Binau\";\"main\"\n\"2948895\";\"Bilshausen\";\"main\"\n\"2948934\";\"Billigheim\";\"main\"\n\"2948944\";\"Billerbeck\";\"main\"\n\"2949012\";\"Bietigheim-Bissingen\";\"main\"\n\"2949014\";\"Bietigheim\";\"main\"\n\"2949032\";\"Biessenhofen\";\"main\"\n\"2949046\";\"Biesenthal\";\"main\"\n\"2949103\";\"Biere\";\"main\"\n\"2949150\";\"Bienenbüttel\";\"main\"\n\"2949150\";\"Bienenbuttel\";\"ascii\"\n\"2949160\";\"Biendorf\";\"main\"\n\"2949186\";\"Bielefeld\";\"main\"\n\"2949186\";\"Bilefel'd\";\"other\"\n\"2949186\";\"Bilefelde\";\"other\"\n\"2949186\";\"Builefeld\";\"other\"\n\"2949186\";\"Bīlefelde\";\"other\"\n\"2949186\";\"Mpilephelnt\";\"other\"\n\"2949186\";\"bi lei fei er de\";\"other\"\n\"2949186\";\"bireferuto\";\"other\"\n\"2949186\";\"bylyfyld\";\"other\"\n\"2949186\";\"Μπίλεφελντ\";\"other\"\n\"2949186\";\"Билефельд\";\"other\"\n\"2949186\";\"بيليفيلد\";\"other\"\n\"2949186\";\"ビーレフェルト\";\"other\"\n\"2949186\";\"比勒费尔德\";\"other\"\n\"2949221\";\"Biederitz\";\"main\"\n\"2949229\";\"Biedenkopf\";\"main\"\n\"2949240\";\"Biebesheim\";\"main\"\n\"2949276\";\"Biebelried\";\"main\"\n\"2949279\";\"Bidingen\";\"main\"\n\"2949296\";\"Bickenbach\";\"main\"\n\"2949324\";\"Bichl\";\"main\"\n\"2949353\";\"Biburg\";\"main\"\n\"2949367\";\"Biblis\";\"main\"\n\"2949415\";\"Biberbach\";\"main\"\n\"2949423\";\"Biberach an der Riß\";\"main\"\n\"2949423\";\"Biberach an der Riss\";\"ascii\"\n\"2949423\";\"Biberach\";\"other\"\n\"2949423\";\"Biberakh-na-Rise\";\"other\"\n\"2949423\";\"Биберах-на-Рисе\";\"other\"\n\"2949426\";\"Biberach\";\"main\"\n\"2949470\";\"Bexbach\";\"main\"\n\"2949475\";\"Beverungen\";\"main\"\n\"2949482\";\"Beverstedt\";\"main\"\n\"2949489\";\"Bevern\";\"main\"\n\"2949511\";\"Bad Bevensen\";\"main\"\n\"2949511\";\"Bevensen\";\"other\"\n\"2949538\";\"Beutelsbach\";\"main\"\n\"2949569\";\"Beuren\";\"main\"\n\"2949582\";\"Beuna\";\"main\"\n\"2949646\";\"Betzigau\";\"main\"\n\"2949661\";\"Betzendorf\";\"main\"\n\"2949669\";\"Betzdorf\";\"main\"\n\"2949697\";\"Bettingen\";\"main\"\n\"2949697\";\"Nieder Bettingen\";\"other\"\n\"2949765\";\"Betheln\";\"main\"\n\"2949773\";\"Bestwig\";\"main\"\n\"2949777\";\"Bestensee\";\"main\"\n\"2949803\";\"Besigheim\";\"main\"\n\"2949855\";\"Berumbur\";\"main\"\n\"2949880\";\"Berthelsdorf\";\"main\"\n\"2949906\";\"Bersenbrück\";\"main\"\n\"2949906\";\"Bersenbruck\";\"ascii\"\n\"2949949\";\"Bernstadt\";\"main\"\n\"2949950\";\"Bernstadt\";\"main\"\n\"2949961\";\"Bernsdorf\";\"main\"\n\"2949967\";\"Bernsdorf\";\"main\"\n\"2949970\";\"Bernsbach\";\"main\"\n\"2949975\";\"Bernried\";\"main\"\n\"2949998\";\"Bernkastel-Kues\";\"main\"\n\"2949998\";\"Bern Kastel\";\"other\"\n\"2949998\";\"Bernkastel-Cues\";\"other\"\n\"2950003\";\"Bernitt\";\"main\"\n\"2950019\";\"Bernhardswald\";\"main\"\n\"2950037\";\"Berngau\";\"main\"\n\"2950073\";\"Bernburg\";\"main\"\n\"2950073\";\"Бернбург\";\"other\"\n\"2950078\";\"Bernbeuren\";\"main\"\n\"2950095\";\"Bernau am Chiemsee\";\"main\"\n\"2950095\";\"Bernau\";\"other\"\n\"2950096\";\"Bernau bei Berlin\";\"main\"\n\"2950096\";\"Bernau\";\"other\"\n\"2950096\";\"Бернау\";\"other\"\n\"2950099\";\"Bernau\";\"main\"\n\"2950130\";\"Bermatingen\";\"main\"\n\"2950132\";\"Berlstedt\";\"main\"\n\"2950139\";\"Berlingerode\";\"main\"\n\"2950159\";\"Berlin\";\"main\"\n\"2950159\";\"BER\";\"other\"\n\"2950159\";\"Beirlin\";\"other\"\n\"2950159\";\"Beirlín\";\"other\"\n\"2950159\";\"Berleno\";\"other\"\n\"2950159\";\"Berlien\";\"other\"\n\"2950159\";\"Berliin\";\"other\"\n\"2950159\";\"Berliini\";\"other\"\n\"2950159\";\"Berlijn\";\"other\"\n\"2950159\";\"Berlim\";\"other\"\n\"2950159\";\"Berlin - Berlin\";\"other\"\n\"2950159\";\"Berline\";\"other\"\n\"2950159\";\"Berlini\";\"other\"\n\"2950159\";\"Berlino\";\"other\"\n\"2950159\";\"Berlyn\";\"other\"\n\"2950159\";\"Berlynas\";\"other\"\n\"2950159\";\"Berlëno\";\"other\"\n\"2950159\";\"Berlín\";\"other\"\n\"2950159\";\"Berlín - Berlin\";\"other\"\n\"2950159\";\"Berlîn\";\"other\"\n\"2950159\";\"Berlīne\";\"other\"\n\"2950159\";\"Berolino\";\"other\"\n\"2950159\";\"Berolinum\";\"other\"\n\"2950159\";\"Birlinu\";\"other\"\n\"2950159\";\"Bèrlîn\";\"other\"\n\"2950159\";\"Estat de Berlin\";\"other\"\n\"2950159\";\"Estat de Berlín\";\"other\"\n\"2950159\";\"bai lin\";\"other\"\n\"2950159\";\"barlina\";\"other\"\n\"2950159\";\"beleullin\";\"other\"\n\"2950159\";\"berlini\";\"other\"\n\"2950159\";\"berurin\";\"other\"\n\"2950159\";\"bexrlin\";\"other\"\n\"2950159\";\"brlyn\";\"other\"\n\"2950159\";\"perlin\";\"other\"\n\"2950159\";\"Βερολίνο\";\"other\"\n\"2950159\";\"Берлин\";\"other\"\n\"2950159\";\"Берлін\";\"other\"\n\"2950159\";\"Бэрлін\";\"other\"\n\"2950159\";\"Բերլին\";\"other\"\n\"2950159\";\"בערלין\";\"other\"\n\"2950159\";\"ברלין\";\"other\"\n\"2950159\";\"برلين\";\"other\"\n\"2950159\";\"برلین\";\"other\"\n\"2950159\";\"بېرلىن\";\"other\"\n\"2950159\";\"ܒܪܠܝܢ\";\"other\"\n\"2950159\";\"बर्लिन\";\"other\"\n\"2950159\";\"বার্লিন\";\"other\"\n\"2950159\";\"பெர்லின்\";\"other\"\n\"2950159\";\"เบอร์ลิน\";\"other\"\n\"2950159\";\"ბერლინი\";\"other\"\n\"2950159\";\"ベルリン\";\"other\"\n\"2950159\";\"柏林\";\"other\"\n\"2950159\";\"베를린\";\"other\"\n\"2950187\";\"Berkheim\";\"main\"\n\"2950189\";\"Berkenthin\";\"main\"\n\"2950189\";\"Berkinthin\";\"other\"\n\"2950196\";\"Berkenbrück\";\"main\"\n\"2950196\";\"Berkenbruck\";\"ascii\"\n\"2950228\";\"Bergwitz\";\"main\"\n\"2950249\";\"Bergtheim\";\"main\"\n\"2950287\";\"Bergrheinfeld\";\"main\"\n\"2950287\";\"Bergrhemfeld\";\"other\"\n\"2950294\";\"Bergneustadt\";\"main\"\n\"2950318\";\"Berglern\";\"main\"\n\"2950340\";\"Bergkirchen\";\"main\"\n\"2950344\";\"Bergkamen\";\"main\"\n\"2950349\";\"Bergisch Gladbach\";\"main\"\n\"2950349\";\"Bergish Gladbakh\";\"other\"\n\"2950349\";\"Jlaebbisch\";\"other\"\n\"2950349\";\"Jläbbisch\";\"other\"\n\"2950349\";\"Бергиш Гладбах\";\"other\"\n\"2950358\";\"Berg im Gau\";\"main\"\n\"2950358\";\"Berg\";\"other\"\n\"2950361\";\"Berghülen\";\"main\"\n\"2950361\";\"Berghulen\";\"ascii\"\n\"2950438\";\"Bergheim\";\"main\"\n\"2950438\";\"Bergem\";\"other\"\n\"2950438\";\"Bergheim an der Erft\";\"other\"\n\"2950438\";\"Бергем\";\"other\"\n\"2950492\";\"Berghaupten\";\"main\"\n\"2950620\";\"Bergen\";\"main\"\n\"2950620\";\"Bergen Rugen\";\"other\"\n\"2950620\";\"Bergen Rügen\";\"other\"\n\"2950620\";\"Bergen auf Rugen\";\"other\"\n\"2950620\";\"Bergen auf Rügen\";\"other\"\n\"2950621\";\"Bergen\";\"main\"\n\"2950621\";\"Bergen Dumme\";\"other\"\n\"2950622\";\"Bergen\";\"main\"\n\"2950626\";\"Bergen\";\"main\"\n\"2950630\";\"Bergen\";\"main\"\n\"2950635\";\"Bergen\";\"main\"\n\"2950660\";\"Berge\";\"main\"\n\"2950686\";\"Bergatreute\";\"main\"\n\"2950696\";\"Berga\";\"main\"\n\"2950697\";\"Berga\";\"main\"\n\"2950697\";\"Berga an der Elster\";\"other\"\n\"2950721\";\"Berg\";\"main\"\n\"2950722\";\"Berg\";\"main\"\n\"2950725\";\"Berg\";\"main\"\n\"2950731\";\"Berg\";\"main\"\n\"2950775\";\"Berg\";\"main\"\n\"2950881\";\"Berchtesgaden\";\"main\"\n\"2950881\";\"Berchtolsgaden\";\"other\"\n\"2950881\";\"Berchtsgan\";\"other\"\n\"2950881\";\"Berchtsgån\";\"other\"\n\"2950881\";\"beruhitesugaden\";\"other\"\n\"2950881\";\"ベルヒテスガーデン\";\"other\"\n\"2950882\";\"Berching\";\"main\"\n\"2950898\";\"Beratzhausen\";\"main\"\n\"2950933\";\"Bentzin\";\"main\"\n\"2950934\";\"Bentwisch\";\"main\"\n\"2950978\";\"Bensheim\";\"main\"\n\"2950979\";\"Benshausen\";\"main\"\n\"2950998\";\"Bennungen\";\"main\"\n\"2950999\";\"Bennstedt\";\"main\"\n\"2951013\";\"Benningen am Neckar\";\"main\"\n\"2951013\";\"Benningen\";\"other\"\n\"2951014\";\"Benningen\";\"main\"\n\"2951026\";\"Bennewitz\";\"main\"\n\"2951040\";\"Benneckenstein\";\"main\"\n\"2951046\";\"Benndorf\";\"main\"\n\"2951104\";\"Benediktbeuern\";\"main\"\n\"2951104\";\"Benedict Beyrn\";\"other\"\n\"2951111\";\"Bendorf\";\"main\"\n\"2951115\";\"Bendestorf\";\"main\"\n\"2951124\";\"Bempflingen\";\"main\"\n\"2951134\";\"Belzig\";\"main\"\n\"2951151\";\"Beltheim\";\"main\"\n\"2951175\";\"Belm\";\"main\"\n\"2951206\";\"Bellheim\";\"main\"\n\"2951232\";\"Bellenberg\";\"main\"\n\"2951236\";\"Belleben\";\"main\"\n\"2951239\";\"Bell\";\"main\"\n\"2951240\";\"Bell\";\"main\"\n\"2951254\";\"Belgershain\";\"main\"\n\"2951258\";\"Belgern\";\"main\"\n\"2951327\";\"Beindersheim\";\"main\"\n\"2951340\";\"Beimerstetten\";\"main\"\n\"2951346\";\"Beilstein\";\"main\"\n\"2951352\";\"Beilrode\";\"main\"\n\"2951397\";\"Beiersdorf\";\"main\"\n\"2951404\";\"Beierfeld\";\"main\"\n\"2951428\";\"Bei der Höhne\";\"main\"\n\"2951428\";\"Bei der Hohne\";\"ascii\"\n\"2951454\";\"Behringen\";\"main\"\n\"2951522\";\"Beetzendorf\";\"main\"\n\"2951526\";\"Beesten\";\"main\"\n\"2951528\";\"Beeskow\";\"main\"\n\"2951531\";\"Beesenstedt\";\"main\"\n\"2951532\";\"Beesenlaublingen\";\"main\"\n\"2951556\";\"Beerfelden\";\"main\"\n\"2951595\";\"Beelitz\";\"main\"\n\"2951596\";\"Beelen\";\"main\"\n\"2951616\";\"Beedenbostel\";\"main\"\n\"2951648\";\"Bedburg\";\"main\"\n\"2951654\";\"Beckum\";\"main\"\n\"2951679\";\"Beckingen\";\"main\"\n\"2951717\";\"Beckedorf\";\"main\"\n\"2951725\";\"Beckdorf\";\"main\"\n\"2951732\";\"Bechtsrieth\";\"main\"\n\"2951736\";\"Bechtolsheim\";\"main\"\n\"2951741\";\"Bechtheim\";\"main\"\n\"2951763\";\"Bechhofen\";\"main\"\n\"2951793\";\"Bebra\";\"main\"\n\"2951824\";\"Bayrischzell\";\"main\"\n\"2951825\";\"Bayreuth\";\"main\"\n\"2951825\";\"Bajrojt\";\"other\"\n\"2951825\";\"bairoito\";\"other\"\n\"2951825\";\"bayrwyt\";\"other\"\n\"2951825\";\"Байройт\";\"other\"\n\"2951825\";\"بایرویت\";\"other\"\n\"2951825\";\"バイロイト\";\"other\"\n\"2951843\";\"Bayerisch Gmain\";\"main\"\n\"2951849\";\"Bayerisch Eisenstein\";\"main\"\n\"2951856\";\"Bayerbach\";\"main\"\n\"2951857\";\"Bayerbach\";\"main\"\n\"2951863\";\"Bawinkel\";\"main\"\n\"2951881\";\"Bautzen\";\"main\"\n\"2951881\";\"Baucen\";\"other\"\n\"2951881\";\"Budysin\";\"other\"\n\"2951881\";\"Budyšin\";\"other\"\n\"2951881\";\"Budyšín\";\"other\"\n\"2951881\";\"Budziszyn\";\"other\"\n\"2951881\";\"bautsu~en\";\"other\"\n\"2951881\";\"Бауцен\";\"other\"\n\"2951881\";\"バウツェン\";\"other\"\n\"2951894\";\"Bausendorf\";\"main\"\n\"2951923\";\"Baunatal\";\"main\"\n\"2951926\";\"Baunach\";\"main\"\n\"2951950\";\"Baumholder\";\"main\"\n\"2952174\";\"Baudenbach\";\"main\"\n\"2952213\";\"Battenberg\";\"main\"\n\"2952235\";\"Bastorf\";\"main\"\n\"2952238\";\"Bastheim\";\"main\"\n\"2952252\";\"Bassum\";\"main\"\n\"2952261\";\"Bassenheim\";\"main\"\n\"2952304\";\"Basdahl\";\"main\"\n\"2952324\";\"Barwedel\";\"main\"\n\"2952330\";\"Barver\";\"main\"\n\"2952335\";\"Baruth\";\"main\"\n\"2952339\";\"Barum\";\"main\"\n\"2952359\";\"Bartholomä\";\"main\"\n\"2952359\";\"Bartholoma\";\"ascii\"\n\"2952372\";\"Barth\";\"main\"\n\"2952398\";\"Barßel\";\"main\"\n\"2952398\";\"Barssel\";\"ascii\"\n\"2952406\";\"Barsinghausen\";\"main\"\n\"2952415\";\"Barsbüttel\";\"main\"\n\"2952415\";\"Barsbuttel\";\"ascii\"\n\"2952444\";\"Barntrup\";\"main\"\n\"2952452\";\"Barnstorf\";\"main\"\n\"2952461\";\"Barnstädt\";\"main\"\n\"2952461\";\"Barnstadt\";\"ascii\"\n\"2952527\";\"Bärnau\";\"main\"\n\"2952527\";\"Barnau\";\"ascii\"\n\"2952527\";\"Bernau\";\"other\"\n\"2952531\";\"Barmstedt\";\"main\"\n\"2952564\";\"Barleben\";\"main\"\n\"2952605\";\"Barkelsby\";\"main\"\n\"2952611\";\"Bark\";\"main\"\n\"2952633\";\"Bargteheide\";\"main\"\n\"2952637\";\"Bargstedt\";\"main\"\n\"2952651\";\"Bargfeld-Stegen\";\"main\"\n\"2952702\";\"Bärenstein\";\"main\"\n\"2952702\";\"Barenstein\";\"ascii\"\n\"2952703\";\"Bärenstein\";\"main\"\n\"2952703\";\"Barenstein\";\"ascii\"\n\"2952762\";\"Barendorf\";\"main\"\n\"2952767\";\"Barenburg\";\"main\"\n\"2952814\";\"Bardowick\";\"main\"\n\"2952814\";\"Bardowiek\";\"other\"\n\"2952833\";\"Barchfeld\";\"main\"\n\"2952842\";\"Barbing\";\"main\"\n\"2952842\";\"Perbing\";\"other\"\n\"2952857\";\"Banzkow\";\"main\"\n\"2952884\";\"Banteln\";\"main\"\n\"2952916\";\"Bannewitz\";\"main\"\n\"2952934\";\"Bann\";\"main\"\n\"2952973\";\"Bammental\";\"main\"\n\"2952973\";\"Bammemtal\";\"other\"\n\"2952973\";\"Bammenthal\";\"other\"\n\"2952984\";\"Bamberg\";\"main\"\n\"2952984\";\"Bamberga\";\"other\"\n\"2952984\";\"ban bao\";\"other\"\n\"2952984\";\"ban bei ke\";\"other\"\n\"2952984\";\"banberuku\";\"other\"\n\"2952984\";\"Бамберг\";\"other\"\n\"2952984\";\"バンベルク\";\"other\"\n\"2952984\";\"班堡\";\"other\"\n\"2952984\";\"班貝克\";\"other\"\n\"2952991\";\"Balzhausen\";\"main\"\n\"2952993\";\"Balzfeld\";\"main\"\n\"2953003\";\"Balve\";\"main\"\n\"2953008\";\"Baltmannsweiler\";\"main\"\n\"2953060\";\"Ballenstedt\";\"main\"\n\"2953088\";\"Balje\";\"main\"\n\"2953089\";\"Balingen\";\"main\"\n\"2953100\";\"Balge\";\"main\"\n\"2953136\";\"Bakum\";\"main\"\n\"2953168\";\"Baisweil\";\"main\"\n\"2953178\";\"Baindt\";\"main\"\n\"2953194\";\"Baiersdorf\";\"main\"\n\"2953197\";\"Baiersbronn\";\"main\"\n\"2953213\";\"Baierbrunn\";\"main\"\n\"2953213\";\"Baierbrun\";\"other\"\n\"2953222\";\"Baienfurt\";\"main\"\n\"2953240\";\"Bahrenborstel\";\"main\"\n\"2953240\";\"Bahrenbostel\";\"other\"\n\"2953247\";\"Bahrdorf\";\"main\"\n\"2953269\";\"Bahnhof Löhne\";\"main\"\n\"2953269\";\"Bahnhof Lohne\";\"ascii\"\n\"2953276\";\"Bahlingen\";\"main\"\n\"2953302\";\"Baesweiler\";\"main\"\n\"2953302\";\"Basweilen\";\"other\"\n\"2953302\";\"Basweiler\";\"other\"\n\"2953302\";\"Besvajler\";\"other\"\n\"2953302\";\"Bäsweiler\";\"other\"\n\"2953302\";\"Бесвайлер\";\"other\"\n\"2953310\";\"Bad Zwischenahn\";\"main\"\n\"2953312\";\"Bad Wurzach\";\"main\"\n\"2953313\";\"Bad Wörishofen\";\"main\"\n\"2953313\";\"Bad Worishofen\";\"ascii\"\n\"2953314\";\"Bad Windsheim\";\"main\"\n\"2953315\";\"Bad Wimpfen\";\"main\"\n\"2953316\";\"Bad Wilsnack\";\"main\"\n\"2953317\";\"Bad Wildungen\";\"main\"\n\"2953318\";\"Bad Wiessee\";\"main\"\n\"2953320\";\"Bad Waldsee\";\"main\"\n\"2953321\";\"Bad Vilbel\";\"main\"\n\"2953322\";\"Bad Überkingen\";\"main\"\n\"2953322\";\"Bad Uberkingen\";\"ascii\"\n\"2953324\";\"Bad Tölz\";\"main\"\n\"2953324\";\"Bad Tolz\";\"ascii\"\n\"2953324\";\"Bad Toelz\";\"other\"\n\"2953324\";\"Tolz\";\"other\"\n\"2953325\";\"Bad Tennstedt\";\"main\"\n\"2953327\";\"Bad Sülze\";\"main\"\n\"2953327\";\"Bad Sulze\";\"ascii\"\n\"2953330\";\"Bad Sulza\";\"main\"\n\"2953331\";\"Bad Suderode\";\"main\"\n\"2953334\";\"Bad Steben\";\"main\"\n\"2953334\";\"Badsteban\";\"other\"\n\"2953336\";\"Bad Sooden-Allendorf\";\"main\"\n\"2953336\";\"Allendorf\";\"other\"\n\"2953336\";\"Bad Sooden\";\"other\"\n\"2953338\";\"Bad Soden-Salmünster\";\"main\"\n\"2953338\";\"Bad Soden-Salmunster\";\"ascii\"\n\"2953339\";\"Bad Soden am Taunus\";\"main\"\n\"2953339\";\"Bad Soden\";\"other\"\n\"2953339\";\"Bad Soden in Taunus\";\"other\"\n\"2953341\";\"Bad Segeberg\";\"main\"\n\"2953347\";\"Bad Schwartau\";\"main\"\n\"2953348\";\"Bad Schwalbach\";\"main\"\n\"2953350\";\"Bad Schmiedeberg\";\"main\"\n\"2953352\";\"Bad Schandau\";\"main\"\n\"2953355\";\"Bad Sassendorf\";\"main\"\n\"2953357\";\"Bad Salzungen\";\"main\"\n\"2953358\";\"Bad Salzuflen\";\"main\"\n\"2953359\";\"Bad Salzschlirf\";\"main\"\n\"2953362\";\"Bad Salzdetfurth\";\"main\"\n\"2953362\";\"Bad Salzendetkuith\";\"other\"\n\"2953363\";\"Bad Säckingen\";\"main\"\n\"2953363\";\"Bad Sackingen\";\"ascii\"\n\"2953363\";\"Sackingen\";\"other\"\n\"2953363\";\"Säckingen\";\"other\"\n\"2953364\";\"Bad Sachsa\";\"main\"\n\"2953366\";\"Bad Saarow\";\"main\"\n\"2953367\";\"Bad Rothenfelde\";\"main\"\n\"2953367\";\"Bad Rotenfel'de\";\"other\"\n\"2953367\";\"Бад Ротенфельде\";\"other\"\n\"2953371\";\"Bad Reichenhall\";\"main\"\n\"2953371\";\"Datreiche Hall\";\"other\"\n\"2953371\";\"Reichenhall\";\"other\"\n\"2953374\";\"Bad Rappenau\";\"main\"\n\"2953379\";\"Bad Pyrmont\";\"main\"\n\"2953384\";\"Bad Orb\";\"main\"\n\"2953385\";\"Bad Oldesloe\";\"main\"\n\"2953386\";\"Bad Oeynhausen\";\"main\"\n\"2953386\";\"Bad Oeyhausen\";\"other\"\n\"2953389\";\"Bad Neustadt an der Saale\";\"main\"\n\"2953389\";\"Bad Neustadt\";\"other\"\n\"2953389\";\"Neustadt\";\"other\"\n\"2953389\";\"Neustadt an der Saale\";\"other\"\n\"2953391\";\"Bad Neuenahr-Ahrweiler\";\"main\"\n\"2953391\";\"Stadt Bad Neuenahr-Ahrweiler\";\"other\"\n\"2953394\";\"Bad Nenndorf\";\"main\"\n\"2953394\";\"Bad Neundorf\";\"other\"\n\"2953395\";\"Bad Nauheim\";\"main\"\n\"2953395\";\"Stadt Bad Nauheim\";\"other\"\n\"2953397\";\"Bad Muskau\";\"main\"\n\"2953397\";\"Hora\";\"other\"\n\"2953397\";\"Muskau\";\"other\"\n\"2953397\";\"Muskau Bad\";\"other\"\n\"2953397\";\"Muzakow\";\"other\"\n\"2953397\";\"Muzaków\";\"other\"\n\"2953397\";\"Mužakow\";\"other\"\n\"2953398\";\"Bad Münstereifel\";\"main\"\n\"2953398\";\"Bad Munstereifel\";\"ascii\"\n\"2953398\";\"Munstereifel\";\"other\"\n\"2953398\";\"Münstereifel\";\"other\"\n\"2953399\";\"Bad Münster am Stein-Ebernburg\";\"main\"\n\"2953399\";\"Bad Munster am Stein-Ebernburg\";\"ascii\"\n\"2953399\";\"Bad Munster\";\"other\"\n\"2953399\";\"Bad Munster-Ebernburg\";\"other\"\n\"2953399\";\"Bad Münster\";\"other\"\n\"2953399\";\"Bad Münster-Ebernburg\";\"other\"\n\"2953399\";\"Ebernburg\";\"other\"\n\"2953400\";\"Bad Münder am Deister\";\"main\"\n\"2953400\";\"Bad Munder am Deister\";\"ascii\"\n\"2953400\";\"Bad Munder\";\"other\"\n\"2953400\";\"Bad Münder\";\"other\"\n\"2953400\";\"Munder am Deister\";\"other\"\n\"2953400\";\"Münder am Deister\";\"other\"\n\"2953402\";\"Bad Mergentheim\";\"main\"\n\"2953404\";\"Bad Marienberg\";\"main\"\n\"2953404\";\"Marienberg\";\"other\"\n\"2953405\";\"Bad Lippspringe\";\"main\"\n\"2953405\";\"Lippspringe\";\"other\"\n\"2953407\";\"Bad Liebenzell\";\"main\"\n\"2953408\";\"Bad Liebenwerda\";\"main\"\n\"2953408\";\"Liebenwerda\";\"other\"\n\"2953409\";\"Bad Liebenstein\";\"main\"\n\"2953410\";\"Bad Lauterberg\";\"main\"\n\"2953410\";\"Lauterberg\";\"other\"\n\"2953411\";\"Bad Lausick\";\"main\"\n\"2953412\";\"Bad Lauchstädt\";\"main\"\n\"2953412\";\"Bad Lauchstadt\";\"ascii\"\n\"2953412\";\"Bad Lauchstedt\";\"other\"\n\"2953412\";\"Lauchstadt\";\"other\"\n\"2953412\";\"Lauchstaedt\";\"other\"\n\"2953413\";\"Bad Langensalza\";\"main\"\n\"2953413\";\"Langensalza\";\"other\"\n\"2953416\";\"Bad Kreuznach\";\"main\"\n\"2953416\";\"Kreuznach\";\"other\"\n\"2953417\";\"Bad Köstritz\";\"main\"\n\"2953417\";\"Bad Kostritz\";\"ascii\"\n\"2953417\";\"Kostritz\";\"other\"\n\"2953417\";\"Köstritz\";\"other\"\n\"2953418\";\"Bad Kösen\";\"main\"\n\"2953418\";\"Bad Kosen\";\"ascii\"\n\"2953418\";\"Kosen\";\"other\"\n\"2953418\";\"Kösen\";\"other\"\n\"2953419\";\"Bad König\";\"main\"\n\"2953419\";\"Bad Konig\";\"ascii\"\n\"2953419\";\"Konig\";\"other\"\n\"2953419\";\"König\";\"other\"\n\"2953420\";\"Bad Kohlgrub\";\"main\"\n\"2953421\";\"Bad Klosterlausnitz\";\"main\"\n\"2953421\";\"Klosterlausnitz\";\"other\"\n\"2953422\";\"Bad Kleinen\";\"main\"\n\"2953422\";\"Kleinen\";\"other\"\n\"2953424\";\"Bad Kissingen\";\"main\"\n\"2953430\";\"Bad Iburg\";\"main\"\n\"2953434\";\"Bad Hönningen\";\"main\"\n\"2953434\";\"Bad Honningen\";\"ascii\"\n\"2953434\";\"Honningen\";\"other\"\n\"2953434\";\"Hönningen\";\"other\"\n\"2953435\";\"Bad Honnef am Rhein\";\"main\"\n\"2953435\";\"Honnef\";\"other\"\n\"2953436\";\"Bad Homburg vor der Höhe\";\"main\"\n\"2953436\";\"Bad Homburg vor der Hohe\";\"ascii\"\n\"2953436\";\"Bad Homburg\";\"other\"\n\"2953436\";\"Bad Homburg v.d. Hoehe\";\"other\"\n\"2953436\";\"Bad Homburg v.d. Höhe\";\"other\"\n\"2953436\";\"Bad Homburg vor der Hoehe\";\"other\"\n\"2953436\";\"Homburg vor der Hohe\";\"other\"\n\"2953436\";\"Homburg vor der Höhe\";\"other\"\n\"2953436\";\"Mpant Chommpournk\";\"other\"\n\"2953436\";\"Μπαντ Χόμμπουργκ\";\"other\"\n\"2953439\";\"Bad Hersfeld\";\"main\"\n\"2953439\";\"Bad-Khersfel'd\";\"other\"\n\"2953439\";\"Hersfeld\";\"other\"\n\"2953439\";\"Бад-Херсфельд\";\"other\"\n\"2953440\";\"Bad Herrenalb\";\"main\"\n\"2953440\";\"Herrenalb\";\"other\"\n\"2953443\";\"Bad Heilbrunn\";\"main\"\n\"2953449\";\"Bad Harzburg\";\"main\"\n\"2953449\";\"Bad-Kharcburge\";\"other\"\n\"2953449\";\"Stadt Bad Harzburg\";\"other\"\n\"2953449\";\"Бад-Харцбурге\";\"other\"\n\"2953451\";\"Bad Grund\";\"main\"\n\"2953456\";\"Bad Gandersheim\";\"main\"\n\"2953456\";\"Gandersheim\";\"other\"\n\"2953458\";\"Bad Freienwalde\";\"main\"\n\"2953458\";\"Freienwalde\";\"other\"\n\"2953459\";\"Bad Frankenhausen\";\"main\"\n\"2953459\";\"Frankenhausen\";\"other\"\n\"2953460\";\"Bad Feilnbach\";\"main\"\n\"2953460\";\"Feilnbach\";\"other\"\n\"2953464\";\"Bad Essen\";\"main\"\n\"2953482\";\"Badenweiler\";\"main\"\n\"2953482\";\"Badwyler\";\"other\"\n\"2953493\";\"Badenhausen\";\"main\"\n\"2953504\";\"Baden-Baden\";\"main\"\n\"2953504\";\"Aquae Aureliae\";\"other\"\n\"2953504\";\"Baden\";\"other\"\n\"2953504\";\"b+b\";\"other\"\n\"2953504\";\"ba deng ba deng\";\"other\"\n\"2953504\";\"badn badn\";\"other\"\n\"2953504\";\"Баден-Баден\";\"other\"\n\"2953504\";\"באדן-באדן\";\"other\"\n\"2953504\";\"بادن بادن\";\"other\"\n\"2953504\";\"バーデン・バーデン\";\"other\"\n\"2953504\";\"巴登巴登\";\"other\"\n\"2953507\";\"Bad Ems\";\"main\"\n\"2953507\";\"Ems\";\"other\"\n\"2953507\";\"バート・エムス\";\"other\"\n\"2953508\";\"Badem\";\"main\"\n\"2953509\";\"Bad Elster\";\"main\"\n\"2953516\";\"Bad Eilsen\";\"main\"\n\"2953516\";\"Eilsen\";\"other\"\n\"2953520\";\"Bad Dürrheim\";\"main\"\n\"2953520\";\"Bad Durrheim\";\"ascii\"\n\"2953520\";\"Durrheim\";\"other\"\n\"2953520\";\"Dürrheim\";\"other\"\n\"2953521\";\"Bad Dürrenberg\";\"main\"\n\"2953521\";\"Bad Durrenberg\";\"ascii\"\n\"2953521\";\"Durrenberg\";\"other\"\n\"2953521\";\"Dürrenberg\";\"other\"\n\"2953522\";\"Bad Dürkheim\";\"main\"\n\"2953522\";\"Bad Durkheim\";\"ascii\"\n\"2953522\";\"Durkheim\";\"other\"\n\"2953522\";\"Dürkheim\";\"other\"\n\"2953524\";\"Bad Düben\";\"main\"\n\"2953524\";\"Bad Duben\";\"ascii\"\n\"2953524\";\"Duben\";\"other\"\n\"2953524\";\"Düben\";\"other\"\n\"2953525\";\"Bad Driburg\";\"main\"\n\"2953528\";\"Bad Doberan\";\"main\"\n\"2953528\";\"Bad-Doberan\";\"other\"\n\"2953528\";\"Doberan\";\"other\"\n\"2953528\";\"Бад-Доберан\";\"other\"\n\"2953529\";\"Bad Ditzenbach\";\"main\"\n\"2953531\";\"Baddeckenstedt\";\"main\"\n\"2953534\";\"Bad Buchau\";\"main\"\n\"2953534\";\"Buchau\";\"other\"\n\"2953534\";\"Buchau am Federsee\";\"other\"\n\"2953535\";\"Bad Brückenau\";\"main\"\n\"2953535\";\"Bad Bruckenau\";\"ascii\"\n\"2953535\";\"Bruckenau\";\"other\"\n\"2953535\";\"Brückenau\";\"other\"\n\"2953536\";\"Bad Breisig\";\"main\"\n\"2953536\";\"Bad Breissig\";\"other\"\n\"2953537\";\"Bad Bramstedt\";\"main\"\n\"2953538\";\"Bad Brambach\";\"main\"\n\"2953538\";\"Brambach\";\"other\"\n\"2953540\";\"Bad Bocklet\";\"main\"\n\"2953541\";\"Bad Blankenburg\";\"main\"\n\"2953542\";\"Bad Bibra\";\"main\"\n\"2953544\";\"Bad Berneck im Fichtelgebirge\";\"main\"\n\"2953544\";\"Bad Berneck\";\"other\"\n\"2953544\";\"Berneck\";\"other\"\n\"2953545\";\"Bad Berleburg\";\"main\"\n\"2953545\";\"Berleberg\";\"other\"\n\"2953545\";\"Berleburg\";\"other\"\n\"2953548\";\"Bad Berka\";\"main\"\n\"2953549\";\"Bad Bergzabern\";\"main\"\n\"2953549\";\"Bergzabern\";\"other\"\n\"2953550\";\"Badbergen\";\"main\"\n\"2953552\";\"Bad Bentheim\";\"main\"\n\"2953553\";\"Bad Bellingen\";\"main\"\n\"2953553\";\"Bellingen\";\"other\"\n\"2953558\";\"Bad Aibling\";\"main\"\n\"2953558\";\"Aibling\";\"other\"\n\"2953558\";\"Albling\";\"other\"\n\"2953559\";\"Bad Abbach\";\"main\"\n\"2953559\";\"Abach\";\"other\"\n\"2953559\";\"Abacum\";\"other\"\n\"2953559\";\"Abbach\";\"other\"\n\"2953568\";\"Backnang\";\"main\"\n\"2953636\";\"Bächingen an der Brenz\";\"main\"\n\"2953636\";\"Bachingen an der Brenz\";\"ascii\"\n\"2953636\";\"Bachingen\";\"other\"\n\"2953636\";\"Bächingen\";\"other\"\n\"2953662\";\"Bachhagel\";\"main\"\n\"2953702\";\"Bacharach\";\"main\"\n\"2953712\";\"Bach\";\"main\"\n\"2953768\";\"Babensham\";\"main\"\n\"2953770\";\"Babenhausen\";\"main\"\n\"2953771\";\"Babenhausen\";\"main\"\n\"2953810\";\"Baalberge\";\"main\"\n\"2953825\";\"Aystetten\";\"main\"\n\"2953828\";\"Ayl\";\"main\"\n\"2953829\";\"Aying\";\"main\"\n\"2953840\";\"Axstedt\";\"main\"\n\"2953932\";\"Außernzell\";\"main\"\n\"2953932\";\"Aussernzell\";\"ascii\"\n\"2953970\";\"Ausleben\";\"main\"\n\"2954006\";\"Aurich\";\"main\"\n\"2954006\";\"Auerk\";\"other\"\n\"2954012\";\"Aura im Sinngrund\";\"main\"\n\"2954012\";\"Aura\";\"other\"\n\"2954039\";\"Aumühle\";\"main\"\n\"2954039\";\"Aumuhle\";\"ascii\"\n\"2954048\";\"Auma\";\"main\"\n\"2954065\";\"Aulendorf\";\"main\"\n\"2954069\";\"Auleben\";\"main\"\n\"2954088\";\"Au in der Hallertau\";\"main\"\n\"2954088\";\"Au\";\"other\"\n\"2954088\";\"Au bei Ambs\";\"other\"\n\"2954120\";\"Auhausen\";\"main\"\n\"2954123\";\"Auhagen\";\"main\"\n\"2954127\";\"Augustusburg\";\"main\"\n\"2954164\";\"Augustdorf\";\"main\"\n\"2954172\";\"Augsburg\";\"main\"\n\"2954172\";\"Aounksmpournk\";\"other\"\n\"2954172\";\"Augsberg\";\"other\"\n\"2954172\";\"Augsbourg\";\"other\"\n\"2954172\";\"Augsburgas\";\"other\"\n\"2954172\";\"Augsburgo\";\"other\"\n\"2954172\";\"Augusta\";\"other\"\n\"2954172\";\"Augusta Vindelicorum\";\"other\"\n\"2954172\";\"ao ge si bao\";\"other\"\n\"2954172\";\"augusuburuku\";\"other\"\n\"2954172\";\"aukusuburuku\";\"other\"\n\"2954172\";\"awghsbwrgh\";\"other\"\n\"2954172\";\"Άουγκσμπουργκ\";\"other\"\n\"2954172\";\"Аугсбург\";\"other\"\n\"2954172\";\"آوغسبورغ\";\"other\"\n\"2954172\";\"アウクスブルク\";\"other\"\n\"2954172\";\"アウグスブルク\";\"other\"\n\"2954172\";\"奥格斯堡\";\"other\"\n\"2954197\";\"Auggen\";\"main\"\n\"2954213\";\"Aufseß\";\"main\"\n\"2954213\";\"Aufsess\";\"ascii\"\n\"2954244\";\"Aufhausen\";\"main\"\n\"2954602\";\"Auerbach\";\"main\"\n\"2954603\";\"Auerbach\";\"main\"\n\"2954603\";\"Auehrbakh\";\"other\"\n\"2954603\";\"Auerbach in der Oberpfalz\";\"other\"\n\"2954603\";\"Aurbach\";\"other\"\n\"2954603\";\"Ауэрбах\";\"other\"\n\"2954608\";\"Auerbach\";\"main\"\n\"2954695\";\"Aue\";\"main\"\n\"2954695\";\"Aue-Auerhammer\";\"other\"\n\"2954695\";\"Aueh\";\"other\"\n\"2954695\";\"Stadt Aue\";\"other\"\n\"2954695\";\"Ауэ\";\"other\"\n\"2954774\";\"Aub\";\"main\"\n\"2954775\";\"Au am Rhein\";\"main\"\n\"2954775\";\"Au\";\"other\"\n\"2954803\";\"Au\";\"main\"\n\"2954874\";\"Atzendorf\";\"main\"\n\"2954897\";\"Atting\";\"main\"\n\"2954906\";\"Attenweiler\";\"main\"\n\"2954910\";\"Attenkirchen\";\"main\"\n\"2954916\";\"Attenhofen\";\"main\"\n\"2954932\";\"Attendorn\";\"main\"\n\"2955007\";\"Aßling\";\"main\"\n\"2955007\";\"Assling\";\"ascii\"\n\"2955009\";\"Aßlar\";\"main\"\n\"2955009\";\"Asslar\";\"ascii\"\n\"2955025\";\"Asselfingen\";\"main\"\n\"2955050\";\"Assamstadt\";\"main\"\n\"2955050\";\"Assumstadt\";\"other\"\n\"2955068\";\"Asperg\";\"main\"\n\"2955126\";\"Asendorf\";\"main\"\n\"2955127\";\"Asendorf\";\"main\"\n\"2955159\";\"Aschheim\";\"main\"\n\"2955168\";\"Aschersleben\";\"main\"\n\"2955168\";\"Ashersleben\";\"other\"\n\"2955168\";\"Ашерслебен\";\"other\"\n\"2955223\";\"Ascheberg\";\"main\"\n\"2955224\";\"Ascheberg\";\"main\"\n\"2955259\";\"Aschau am Inn\";\"main\"\n\"2955259\";\"Aschau\";\"other\"\n\"2955259\";\"Aschau bei Kraiburg\";\"other\"\n\"2955272\";\"Aschaffenburg\";\"main\"\n\"2955272\";\"Asafenburga\";\"other\"\n\"2955272\";\"Aschaffenbourg\";\"other\"\n\"2955272\";\"Ashaffenburg\";\"other\"\n\"2955272\";\"Auscheffenburg\";\"other\"\n\"2955272\";\"Ašafenburga\";\"other\"\n\"2955272\";\"ashaffenburuku\";\"other\"\n\"2955272\";\"Ашаффенбург\";\"other\"\n\"2955272\";\"アシャッフェンブルク\";\"other\"\n\"2955282\";\"Ascha\";\"main\"\n\"2955315\";\"Asbach\";\"main\"\n\"2955363\";\"Arzfeld\";\"main\"\n\"2955367\";\"Arzberg\";\"main\"\n\"2955368\";\"Arzberg\";\"main\"\n\"2955376\";\"Arzbach\";\"main\"\n\"2955389\";\"Artlenburg\";\"main\"\n\"2955394\";\"Artern\";\"main\"\n\"2955410\";\"Arrach\";\"main\"\n\"2955421\";\"Bad Arolsen\";\"main\"\n\"2955429\";\"Arnstorf\";\"main\"\n\"2955429\";\"Armstorf\";\"other\"\n\"2955431\";\"Arnstein\";\"main\"\n\"2955439\";\"Arnstadt\";\"main\"\n\"2955439\";\"Arnshtadte\";\"other\"\n\"2955439\";\"Арнштадте\";\"other\"\n\"2955464\";\"Arnschwang\";\"main\"\n\"2955471\";\"Arnsberg\";\"main\"\n\"2955471\";\"Arnsberga\";\"other\"\n\"2955471\";\"Arnsberge\";\"other\"\n\"2955471\";\"Арнсберге\";\"other\"\n\"2955519\";\"Arneburg\";\"main\"\n\"2955527\";\"Arnbruck\";\"main\"\n\"2955542\";\"Armsheim\";\"main\"\n\"2955605\";\"Argenthal\";\"main\"\n\"2955627\";\"Aresing\";\"main\"\n\"2955633\";\"Arenshausen\";\"main\"\n\"2955633\";\"Ahrenshausen\";\"other\"\n\"2955651\";\"Luftkurort Arendsee\";\"main\"\n\"2955651\";\"Arendsee\";\"other\"\n\"2955697\";\"Arberg\";\"main\"\n\"2955732\";\"Appenheim\";\"main\"\n\"2955745\";\"Appen\";\"main\"\n\"2955762\";\"Appel\";\"main\"\n\"2955770\";\"Apolda\";\"main\"\n\"2955770\";\"Apol'de\";\"other\"\n\"2955770\";\"Stadt Apolda\";\"other\"\n\"2955770\";\"Апольде\";\"other\"\n\"2955787\";\"Apfelstädt\";\"main\"\n\"2955787\";\"Apfelstadt\";\"ascii\"\n\"2955815\";\"Apensen\";\"main\"\n\"2955817\";\"Apen\";\"main\"\n\"2955822\";\"Apelern\";\"main\"\n\"2955835\";\"Anzing\";\"main\"\n\"2955914\";\"Antdorf\";\"main\"\n\"2955936\";\"Ansbach\";\"main\"\n\"2955936\";\"Ansbakh\";\"other\"\n\"2955936\";\"Ансбах\";\"other\"\n\"2955939\";\"Anrode\";\"main\"\n\"2955940\";\"Anröchte\";\"main\"\n\"2955940\";\"Anrochte\";\"ascii\"\n\"2955951\";\"Annweiler am Trifels\";\"main\"\n\"2955951\";\"Annweiler\";\"other\"\n\"2955999\";\"Annaburg\";\"main\"\n\"2956005\";\"Annaberg-Buchholz\";\"main\"\n\"2956005\";\"Annaberg\";\"other\"\n\"2956005\";\"Annaberg-Bukhkhol'c\";\"other\"\n\"2956005\";\"Buchholz\";\"other\"\n\"2956005\";\"Stadt Annaberg-Buchholz\";\"other\"\n\"2956005\";\"Аннаберг-Буххольц\";\"other\"\n\"2956014\";\"Ankum\";\"main\"\n\"2956018\";\"Anklam\";\"main\"\n\"2956018\";\"Анклам\";\"other\"\n\"2956044\";\"Anhausen\";\"main\"\n\"2956081\";\"Angersdorf\";\"main\"\n\"2956090\";\"Angern\";\"main\"\n\"2956093\";\"Angermünde\";\"main\"\n\"2956093\";\"Angermunde\";\"ascii\"\n\"2956206\";\"Andernach\";\"main\"\n\"2956206\";\"Andernakh\";\"other\"\n\"2956206\";\"Stadt Andernach\";\"other\"\n\"2956206\";\"Андернах\";\"other\"\n\"2956253\";\"Andechs\";\"main\"\n\"2956253\";\"Abbaye d'Andechs\";\"other\"\n\"2956253\";\"Andeks\";\"other\"\n\"2956253\";\"Kloster Andechs\";\"other\"\n\"2956253\";\"Андекс\";\"other\"\n\"2956277\";\"Amtzell\";\"main\"\n\"2956310\";\"Amstetten\";\"main\"\n\"2956378\";\"Ampfing\";\"main\"\n\"2956404\";\"Amöneburg\";\"main\"\n\"2956404\";\"Amoneburg\";\"ascii\"\n\"2956434\";\"Ammerndorf\";\"main\"\n\"2956570\";\"Amerang\";\"main\"\n\"2956584\";\"Amelinghausen\";\"main\"\n\"2956656\";\"Amberg\";\"main\"\n\"2956656\";\"Gebenbach\";\"other\"\n\"2956656\";\"amberg\";\"other\"\n\"2956656\";\"Амберг\";\"other\"\n\"2956657\";\"Amberg\";\"main\"\n\"2956710\";\"Alzey\";\"main\"\n\"2956715\";\"Alzenau in Unterfranken\";\"main\"\n\"2956715\";\"Alzenau\";\"other\"\n\"2956729\";\"Alveslohe\";\"main\"\n\"2956781\";\"Alt Wallmoden\";\"main\"\n\"2956787\";\"Altusried\";\"main\"\n\"2956789\";\"Alt Tucheband\";\"main\"\n\"2956847\";\"Altshausen\";\"main\"\n\"2956891\";\"Altrip\";\"main\"\n\"2956893\";\"Altrich\";\"main\"\n\"2956940\";\"Altötting\";\"main\"\n\"2956940\";\"Altotting\";\"ascii\"\n\"2956951\";\"Altomünster\";\"main\"\n\"2956951\";\"Altomunster\";\"ascii\"\n\"2956951\";\"Altmunster\";\"other\"\n\"2956987\";\"Altmittweida\";\"main\"\n\"2956988\";\"Alt Meteln\";\"main\"\n\"2957021\";\"Altlußheim\";\"main\"\n\"2957021\";\"Altlussheim\";\"ascii\"\n\"2957040\";\"Altleiningen\";\"main\"\n\"2957051\";\"Altlandsberg\";\"main\"\n\"2957073\";\"Altkirchen\";\"main\"\n\"2957108\";\"Althütte\";\"main\"\n\"2957108\";\"Althutte\";\"ascii\"\n\"2957133\";\"Althengstett\";\"main\"\n\"2957153\";\"Althegnenberg\";\"main\"\n\"2957207\";\"Altfraunhofen\";\"main\"\n\"2957437\";\"Altentreptow\";\"main\"\n\"2957439\";\"Altenthann\";\"main\"\n\"2957459\";\"Altensteig\";\"main\"\n\"2957463\";\"Altenstadt\";\"main\"\n\"2957468\";\"Altenstadt\";\"main\"\n\"2957469\";\"Altenstadt\";\"main\"\n\"2957499\";\"Altenriet\";\"main\"\n\"2957516\";\"Altenpleen\";\"main\"\n\"2957528\";\"Altenmünster\";\"main\"\n\"2957528\";\"Altenmunster\";\"ascii\"\n\"2957538\";\"Altenmedingen\";\"main\"\n\"2957543\";\"Altenmarkt\";\"main\"\n\"2957555\";\"Altenkunstadt\";\"main\"\n\"2957557\";\"Altenkrempe\";\"main\"\n\"2957566\";\"Altenkirchen\";\"main\"\n\"2957567\";\"Altenkirchen\";\"main\"\n\"2957570\";\"Altenkirchen\";\"main\"\n\"2957588\";\"Altenholz\";\"main\"\n\"2957678\";\"Altengottern\";\"main\"\n\"2957681\";\"Altenglan\";\"main\"\n\"2957701\";\"Altenfeld\";\"main\"\n\"2957733\";\"Altendorf\";\"main\"\n\"2957742\";\"Altendiez\";\"main\"\n\"2957761\";\"Alten Buseck\";\"main\"\n\"2957773\";\"Altenburg\";\"main\"\n\"2957773\";\"Al'tenburg\";\"other\"\n\"2957773\";\"Altenbourg\";\"other\"\n\"2957773\";\"Альтенбург\";\"other\"\n\"2957829\";\"Altenberge\";\"main\"\n\"2957834\";\"Altenberg\";\"main\"\n\"2957864\";\"Altenbeken\";\"main\"\n\"2957880\";\"Altenau\";\"main\"\n\"2957883\";\"Altenahr\";\"main\"\n\"2957886\";\"Altena\";\"main\"\n\"2957938\";\"Alteglofsheim\";\"main\"\n\"2957938\";\"Eglofsheim\";\"other\"\n\"2957949\";\"Altefähr\";\"main\"\n\"2957949\";\"Altefahr\";\"ascii\"\n\"2958016\";\"Alt Duvenstedt\";\"main\"\n\"2958024\";\"Altdorf\";\"main\"\n\"2958028\";\"Altdorf\";\"main\"\n\"2958029\";\"Altdorf\";\"main\"\n\"2958032\";\"Altdorf\";\"main\"\n\"2958036\";\"Altdöbern\";\"main\"\n\"2958036\";\"Altdobern\";\"ascii\"\n\"2958085\";\"Altbach\";\"main\"\n\"2958092\";\"Ammerthal\";\"main\"\n\"2958092\";\"Altammerthal\";\"other\"\n\"2958121\";\"Alsleben\";\"main\"\n\"2958126\";\"Alsheim\";\"main\"\n\"2958128\";\"Alsfeld\";\"main\"\n\"2958134\";\"Alsenz\";\"main\"\n\"2958141\";\"Alsdorf\";\"main\"\n\"2958142\";\"Alsdorf\";\"main\"\n\"2958173\";\"Alpirsbach\";\"main\"\n\"2958186\";\"Alpenrod\";\"main\"\n\"2958188\";\"Alpen\";\"main\"\n\"2958266\";\"Allstedt\";\"main\"\n\"2958288\";\"Allmersbach im Tal\";\"main\"\n\"2958288\";\"Allmersbach\";\"other\"\n\"2958296\";\"Allmendingen\";\"main\"\n\"2958331\";\"Alling\";\"main\"\n\"2958376\";\"Allershausen\";\"main\"\n\"2958391\";\"Allersberg\";\"main\"\n\"2958429\";\"Allensbach\";\"main\"\n\"2958436\";\"Allendorf an der Lahn\";\"main\"\n\"2958436\";\"Allendorf\";\"other\"\n\"2958438\";\"Allendorf\";\"main\"\n\"2958438\";\"Allendorf-Eder\";\"other\"\n\"2958494\";\"Alheim\";\"main\"\n\"2958509\";\"Algermissen\";\"main\"\n\"2958516\";\"Alfter\";\"main\"\n\"2958523\";\"Alfhausen\";\"main\"\n\"2958533\";\"Alfeld\";\"main\"\n\"2958534\";\"Alfeld\";\"main\"\n\"2958535\";\"Alfdorf\";\"main\"\n\"2958545\";\"Bad Alexandersbad\";\"main\"\n\"2958545\";\"Alexandersbad\";\"other\"\n\"2958555\";\"Aletshausen\";\"main\"\n\"2958557\";\"Alesheim\";\"main\"\n\"2958560\";\"Alerheim\";\"main\"\n\"2958575\";\"Aldingen\";\"main\"\n\"2958577\";\"Aldersbach\";\"main\"\n\"2958577\";\"Allersbach\";\"other\"\n\"2958580\";\"Aldenhoven\";\"main\"\n\"2958580\";\"Aldenhoffen\";\"other\"\n\"2958595\";\"Albstadt\";\"main\"\n\"2958631\";\"Albisheim\";\"main\"\n\"2958638\";\"Albig\";\"main\"\n\"2958653\";\"Albertshofen\";\"main\"\n\"2958696\";\"Albersweiler\";\"main\"\n\"2958707\";\"Albershausen\";\"main\"\n\"2958710\";\"Albersdorf\";\"main\"\n\"2958744\";\"Albbruck\";\"main\"\n\"2958744\";\"Albbruck-Dogern\";\"other\"\n\"2958756\";\"Albaching\";\"main\"\n\"2958781\";\"Aken\";\"main\"\n\"2958795\";\"Aitrang\";\"main\"\n\"2958798\";\"Aitrach\";\"main\"\n\"2958802\";\"Alterhofen\";\"main\"\n\"2958813\";\"Aislingen\";\"main\"\n\"2958831\";\"Ainring\";\"main\"\n\"2958835\";\"Aindling\";\"main\"\n\"2958835\";\"Ainling\";\"other\"\n\"2958887\";\"Aiglsbach\";\"main\"\n\"2958904\";\"Aidlingen\";\"main\"\n\"2958906\";\"Aidhausen\";\"main\"\n\"2958908\";\"Aidenbach\";\"main\"\n\"2958908\";\"Aitenbach\";\"other\"\n\"2958917\";\"Aichstetten\";\"main\"\n\"2958937\";\"Aichhalden\";\"main\"\n\"2958937\";\"Gemeinde Aichhalden\";\"other\"\n\"2958951\";\"Aichen\";\"main\"\n\"2958956\";\"Aichelberg\";\"main\"\n\"2958956\";\"Aichelburg\";\"other\"\n\"2958975\";\"Aichach\";\"main\"\n\"2958975\";\"Aicha\";\"other\"\n\"2959043\";\"Ahsen-Oetzen\";\"main\"\n\"2959043\";\"Ahsen-Oetz\";\"other\"\n\"2959043\";\"Oetzen\";\"other\"\n\"2959083\";\"Ahrensburg\";\"main\"\n\"2959083\";\"Stadt Ahrensburg\";\"other\"\n\"2959084\";\"Ahrensbök\";\"main\"\n\"2959084\";\"Ahrensbok\";\"ascii\"\n\"2959084\";\"Ahrensbock\";\"other\"\n\"2959140\";\"Ahorn\";\"main\"\n\"2959142\";\"Aholming\";\"main\"\n\"2959143\";\"Aholfing\";\"main\"\n\"2959146\";\"Ahnsen\";\"main\"\n\"2959150\";\"Ahnsbeck\";\"main\"\n\"2959181\";\"Ahlsdorf\";\"main\"\n\"2959205\";\"Ahlerstedt\";\"main\"\n\"2959223\";\"Ahlen\";\"main\"\n\"2959223\";\"Alen\";\"other\"\n\"2959223\";\"Alena\";\"other\"\n\"2959223\";\"Aulen\";\"other\"\n\"2959223\";\"aren\";\"other\"\n\"2959223\";\"Ālena\";\"other\"\n\"2959223\";\"Ален\";\"other\"\n\"2959223\";\"アーレン\";\"other\"\n\"2959237\";\"Ahlden\";\"main\"\n\"2959244\";\"Ahlbeck\";\"main\"\n\"2959272\";\"Ahausen\";\"main\"\n\"2959279\";\"Ahaus\";\"main\"\n\"2959283\";\"Aham\";\"main\"\n\"2959296\";\"Aglasterhausen\";\"main\"\n\"2959318\";\"Agathenburg\";\"main\"\n\"2959343\";\"Affing\";\"main\"\n\"2959368\";\"Affalterbach\";\"main\"\n\"2959374\";\"Aerzen\";\"main\"\n\"2959374\";\"Arzen\";\"other\"\n\"2959374\";\"Ärzen\";\"other\"\n\"2959390\";\"Adorf\";\"main\"\n\"2959422\";\"Adlkofen\";\"main\"\n\"2959475\";\"Adenstedt\";\"main\"\n\"2959479\";\"Adendorf\";\"main\"\n\"2959482\";\"Adenbüttel\";\"main\"\n\"2959482\";\"Adenbuttel\";\"ascii\"\n\"2959489\";\"Adenau\";\"main\"\n\"2959492\";\"Adelzhausen\";\"main\"\n\"2959498\";\"Adelsried\";\"main\"\n\"2959504\";\"Adelshofen\";\"main\"\n\"2959508\";\"Adelsheim\";\"main\"\n\"2959514\";\"Adelsdorf\";\"main\"\n\"2959530\";\"Adelmannsfelden\";\"main\"\n\"2959538\";\"Adelheidsdorf\";\"main\"\n\"2959548\";\"Adelebsen\";\"main\"\n\"2959553\";\"Adelberg\";\"main\"\n\"2959553\";\"Adelberg-Dorf\";\"other\"\n\"2959553\";\"Dorf-Adelberg\";\"other\"\n\"2959621\";\"Achtrup\";\"main\"\n\"2959659\";\"Achstetten\";\"main\"\n\"2959660\";\"Achslach\";\"main\"\n\"2959681\";\"Achim\";\"main\"\n\"2959686\";\"Achern\";\"main\"\n\"2959686\";\"Achara\";\"other\"\n\"2959686\";\"Akhern\";\"other\"\n\"2959686\";\"Ахерн\";\"other\"\n\"2959766\";\"Abtsgmünd\";\"main\"\n\"2959766\";\"Abtsgmund\";\"ascii\"\n\"2959771\";\"Abtsdorf\";\"main\"\n\"2959793\";\"Abstatt\";\"main\"\n\"2959803\";\"Absberg\";\"main\"\n\"2959842\";\"Abensberg\";\"main\"\n\"2959842\";\"Abensperg\";\"other\"\n\"2959842\";\"Абенсберг\";\"other\"\n\"2959855\";\"Abenberg\";\"main\"\n\"2959927\";\"Aalen\";\"main\"\n\"2959927\";\"Alene\";\"other\"\n\"2959927\";\"Ālene\";\"other\"\n\"2959927\";\"Аален\";\"other\"\n\"2959944\";\"Aach\";\"main\"\n\"2959946\";\"Aach\";\"main\"\n\"3204947\";\"Eggermühlen\";\"main\"\n\"3204947\";\"Eggermuhlen\";\"ascii\"\n\"3204961\";\"Thalfang\";\"main\"\n\"3204998\";\"Erdeborn\";\"main\"\n\"3205000\";\"Barby\";\"main\"\n\"3205010\";\"Hohenau\";\"main\"\n\"3205437\";\"Apfeldorf\";\"main\"\n\"3205535\";\"Höhenkirchen-Siegertsbrunn\";\"main\"\n\"3205535\";\"Hohenkirchen-Siegertsbrunn\";\"ascii\"\n\"3205552\";\"Missen-Wilhams\";\"main\"\n\"3205561\";\"Oy-Mittelberg\";\"main\"\n\"3205570\";\"Straßlach-Dingharting\";\"main\"\n\"3205570\";\"Strasslach-Dingharting\";\"ascii\"\n\"3205570\";\"Strasslach\";\"other\"\n\"3205570\";\"Straßlach\";\"other\"\n\"3205596\";\"Sankt Leonhard am Wonneberg\";\"main\"\n\"3205634\";\"Seeon-Seebruck\";\"main\"\n\"3205634\";\"Seon-Seebruck\";\"other\"\n\"3205641\";\"Weiler-Simmerberg\";\"main\"\n\"3205645\";\"Bodman-Ludwigshafen\";\"main\"\n\"3205651\";\"Eggingen\";\"main\"\n\"3205653\";\"Emmingen-Liptingen\";\"main\"\n\"3205658\";\"Herdwangen-Schönach\";\"main\"\n\"3205658\";\"Herdwangen-Schonach\";\"ascii\"\n\"3205666\";\"Lauchringen\";\"main\"\n\"3205682\";\"Mühlhausen-Ehingen\";\"main\"\n\"3205682\";\"Muhlhausen-Ehingen\";\"ascii\"\n\"3205690\";\"Uhldingen-Mühlhofen\";\"main\"\n\"3205690\";\"Uhldingen-Muhlhofen\";\"ascii\"\n\"3205691\";\"Ühlingen-Birkendorf\";\"main\"\n\"3205691\";\"Uhlingen-Birkendorf\";\"ascii\"\n\"3206149\";\"Altes Lager\";\"main\"\n\"3206149\";\"Al'tes Lager\";\"other\"\n\"3206149\";\"Альтес Лагер\";\"other\"\n\"3206150\";\"Aspach\";\"main\"\n\"3206151\";\"Bad Peterstal-Griesbach\";\"main\"\n\"3206152\";\"Bad Rippoldsau-Schapbach\";\"main\"\n\"3206153\";\"Bad Teinach-Zavelstein\";\"main\"\n\"3206154\";\"Böbingen an der Rems\";\"main\"\n\"3206154\";\"Bobingen an der Rems\";\"ascii\"\n\"3206164\";\"Burgstetten\";\"main\"\n\"3206180\";\"Gutenzell-Hürbel\";\"main\"\n\"3206180\";\"Gutenzell-Hurbel\";\"ascii\"\n\"3206188\";\"Königsbach-Stein\";\"main\"\n\"3206188\";\"Konigsbach-Stein\";\"ascii\"\n\"3206254\";\"Niefern-Öschelbronn\";\"main\"\n\"3206254\";\"Niefern-Oschelbronn\";\"ascii\"\n\"3206256\";\"Ölbronn-Dürrn\";\"main\"\n\"3206256\";\"Olbronn-Durrn\";\"ascii\"\n\"3206259\";\"Rietheim-Weilheim\";\"main\"\n\"3206269\";\"Seitingen-Oberflacht\";\"main\"\n\"3206285\";\"Urbach\";\"main\"\n\"3206402\";\"Giesen\";\"main\"\n\"3206682\";\"Mallersdorf-Pfaffenberg\";\"main\"\n\"3206926\";\"Muhr am See\";\"main\"\n\"3206926\";\"Muhr\";\"other\"\n\"3206934\";\"Postbauer-Heng\";\"main\"\n\"3207000\";\"Viereth-Trunstadt\";\"main\"\n\"3207003\";\"Weilersbach\";\"main\"\n\"3207077\";\"Katlenburg-Lindau\";\"main\"\n\"3207130\";\"Kromsdorf\";\"main\"\n\"3207136\";\"Schönstedt\";\"main\"\n\"3207136\";\"Schonstedt\";\"ascii\"\n\"3207197\";\"Vellmar\";\"main\"\n\"3207220\";\"Scheden\";\"main\"\n\"3207377\";\"Möhnesee\";\"main\"\n\"3207377\";\"Mohnesee\";\"ascii\"\n\"3207383\";\"Schieder-Schwalenberg\";\"main\"\n\"3207384\";\"Schloß Holte-Stukenbrock\";\"main\"\n\"3207384\";\"Schloss Holte-Stukenbrock\";\"ascii\"\n\"3207405\";\"Lautertal\";\"main\"\n\"3207410\";\"Rödental\";\"main\"\n\"3207410\";\"Rodental\";\"ascii\"\n\"3207412\";\"Röslau\";\"main\"\n\"3207412\";\"Roslau\";\"ascii\"\n\"3207512\";\"Bruchmühlbach-Miesau\";\"main\"\n\"3207512\";\"Bruchmuhlbach-Miesau\";\"ascii\"\n\"3207519\";\"Gossersweiler-Stein\";\"main\"\n\"3207525\";\"Hochstetten-Dhaun\";\"main\"\n\"3207526\";\"Hoppstädten-Weiersbach\";\"main\"\n\"3207526\";\"Hoppstadten-Weiersbach\";\"ascii\"\n\"3207532\";\"Neumagen-Dhron\";\"main\"\n\"3207534\";\"Oestrich-Winkel\";\"main\"\n\"3207535\";\"Offenbach-Hundheim\";\"main\"\n\"3207536\";\"Osann-Monzel\";\"main\"\n\"3207537\";\"Rieschweiler-Mühlbach\";\"main\"\n\"3207537\";\"Rieschweiler-Muhlbach\";\"ascii\"\n\"3207539\";\"Salmtal\";\"main\"\n\"3207540\";\"Schönenberg-Kübelberg\";\"main\"\n\"3207540\";\"Schonenberg-Kubelberg\";\"ascii\"\n\"3207541\";\"Schweigen-Rechtenbach\";\"main\"\n\"3207549\";\"Zeltingen-Rachtig\";\"main\"\n\"3207567\";\"Rehlingen-Siersburg\";\"main\"\n\"3207679\";\"Ahrbrück\";\"main\"\n\"3207679\";\"Ahrbruck\";\"ascii\"\n\"3207685\";\"Birken-Honigsessen\";\"main\"\n\"3207690\";\"Bruttig-Fankel\";\"main\"\n\"3207697\";\"Dreikirchen\";\"main\"\n\"3207699\";\"Ediger-Eller\";\"main\"\n\"3207709\";\"Gondershausen\";\"main\"\n\"3207732\";\"Hattert\";\"main\"\n\"3207742\";\"Höhn\";\"main\"\n\"3207742\";\"Hohn\";\"ascii\"\n\"3207750\";\"Kasbach-Ohlenberg\";\"main\"\n\"3207752\";\"Katzwinkel\";\"main\"\n\"3207753\";\"Kirchwald\";\"main\"\n\"3207786\";\"Kobern-Gondorf\";\"main\"\n\"3207806\";\"Mülheim-Kärlich\";\"main\"\n\"3207806\";\"Mulheim-Karlich\";\"ascii\"\n\"3207894\";\"Ruppach-Goldhausen\";\"main\"\n\"3207895\";\"Sankt Katharinen\";\"main\"\n\"3207904\";\"Spay\";\"main\"\n\"3207992\";\"Blankenbach\";\"main\"\n\"3208006\";\"Riedenberg\";\"main\"\n\"3208010\";\"Sailauf\";\"main\"\n\"3208053\";\"Florstadt\";\"main\"\n\"3208086\";\"Liederbach\";\"main\"\n\"3208118\";\"Schöffengrund\";\"main\"\n\"3208118\";\"Schoeffengrund\";\"ascii\"\n\"3208129\";\"Waldbrunn\";\"main\"\n\"3208130\";\"Waldems\";\"main\"\n\"3208134\";\"Walluf\";\"main\"\n\"3208303\";\"Klein Offenseth-Sparrieshoop\";\"main\"\n\"3208324\";\"Asbach-Bäumenheim\";\"main\"\n\"3208324\";\"Asbach-Baumenheim\";\"ascii\"\n\"3208325\";\"Baar-Ebenhausen\";\"main\"\n\"3208331\";\"Ettringen\";\"main\"\n\"3208334\";\"Finningen\";\"main\"\n\"3208350\";\"Kottgeisering\";\"main\"\n\"3208353\";\"Medlingen\";\"main\"\n\"3208367\";\"Schondorf am Ammersee\";\"main\"\n\"3208367\";\"Schondorf\";\"other\"\n\"3208380\";\"Wörth\";\"main\"\n\"3208380\";\"Worth\";\"ascii\"\n\"3208422\";\"Dohren\";\"main\"\n\"3208438\";\"Lünne\";\"main\"\n\"3208438\";\"Lunne\";\"ascii\"\n\"3208505\";\"Neukamperfehn\";\"main\"\n\"3208536\";\"Aukrug\";\"main\"\n\"3208539\";\"Bordelum\";\"main\"\n\"3208543\";\"Emmelsbüll-Horsbüll\";\"main\"\n\"3208543\";\"Emmelsbull-Horsbull\";\"ascii\"\n\"3208547\";\"Helgoland\";\"main\"\n\"3208547\";\"Khel'goland\";\"other\"\n\"3208547\";\"Хельголанд\";\"other\"\n\"3208552\";\"Jarplund-Weding\";\"main\"\n\"3208554\";\"Lohe-Rickelshof\";\"main\"\n\"3208557\";\"Mohrkirch\";\"main\"\n\"3208565\";\"Risum-Lindholm\";\"main\"\n\"3208571\";\"Sylt-Ost\";\"main\"\n\"3208571\";\"Sylt\";\"other\"\n\"3208594\";\"Büddenstedt\";\"main\"\n\"3208594\";\"Buddenstedt\";\"ascii\"\n\"3208598\";\"Elbe\";\"main\"\n\"3208599\";\"Flöthe\";\"main\"\n\"3208599\";\"Flothe\";\"ascii\"\n\"3208605\";\"Heere\";\"main\"\n\"3208606\";\"Ilsede\";\"main\"\n\"3208618\";\"Sassenburg\";\"main\"\n\"3208620\";\"Sickte\";\"main\"\n\"3208736\";\"Bensdorf\";\"main\"\n\"3209001\";\"Ebersbach\";\"main\"\n\"3209055\";\"Mühlanger\";\"main\"\n\"3209055\";\"Muhlanger\";\"ascii\"\n\"3209056\";\"Nessa\";\"main\"\n\"3209070\";\"Marschacht\";\"main\"\n\"3209083\";\"Henstedt-Ulzburg\";\"main\"\n\"3209174\";\"Admannshagen-Bargeshagen\";\"main\"\n\"3209175\";\"Bartenshagen-Parkentin\";\"main\"\n\"3209175\";\"Bartenshagen-Parkenthin\";\"other\"\n\"3209176\";\"Börgerende-Rethwisch\";\"main\"\n\"3209176\";\"Borgerende-Rethwisch\";\"ascii\"\n\"3209181\";\"Gattendorf\";\"main\"\n\"3209193\";\"Rossau\";\"main\"\n\"3209257\";\"Kappel-Grafenhausen\";\"main\"\n\"3209281\";\"Hiddensee\";\"main\"\n\"3209313\";\"Ebersbach-Musbach\";\"main\"\n\"3209418\";\"Reichenau\";\"main\"\n\"3209420\";\"Vogtsburg\";\"main\"\n\"3209903\";\"Brohl-Lützing\";\"main\"\n\"3209903\";\"Brohl-Lutzing\";\"ascii\"\n\"3209911\";\"Burg Hohenstein\";\"main\"\n\"3210390\";\"Marktrodach\";\"main\"\n\"3210420\";\"Triebel\";\"main\"\n\"3225108\";\"Ransbach-Baumbach\";\"main\"\n\"3247449\";\"Aachen\";\"main\"\n\"3247449\";\"Aakhen\";\"other\"\n\"3247449\";\"Achenas\";\"other\"\n\"3247449\";\"Ahene\";\"other\"\n\"3247449\";\"Aix-la-Chapelle\";\"other\"\n\"3247449\";\"Aken\";\"other\"\n\"3247449\";\"Akhen\";\"other\"\n\"3247449\";\"Akwizgran\";\"other\"\n\"3247449\";\"Aoke\";\"other\"\n\"3247449\";\"Aquae Grani\";\"other\"\n\"3247449\";\"Aquisgra\";\"other\"\n\"3247449\";\"Aquisgran\";\"other\"\n\"3247449\";\"Aquisgrana\";\"other\"\n\"3247449\";\"Aquisgranum\";\"other\"\n\"3247449\";\"Aquisgrà\";\"other\"\n\"3247449\";\"Aquisgrán\";\"other\"\n\"3247449\";\"Axhe\";\"other\"\n\"3247449\";\"Cachy\";\"other\"\n\"3247449\";\"Cáchy\";\"other\"\n\"3247449\";\"Kreisfreie Stadt Aachen\";\"other\"\n\"3247449\";\"Lungsod ng Aachen\";\"other\"\n\"3247449\";\"Oche\";\"other\"\n\"3247449\";\"Oochen\";\"other\"\n\"3247449\";\"a heng\";\"other\"\n\"3247449\";\"aakheni\";\"other\"\n\"3247449\";\"ahen\";\"other\"\n\"3247449\";\"akhn\";\"other\"\n\"3247449\";\"xakhen\";\"other\"\n\"3247449\";\"Åxhe\";\"other\"\n\"3247449\";\"Āhene\";\"other\"\n\"3247449\";\"Άαχεν\";\"other\"\n\"3247449\";\"Аахен\";\"other\"\n\"3247449\";\"Ахен\";\"other\"\n\"3247449\";\"אאכן\";\"other\"\n\"3247449\";\"آخن\";\"other\"\n\"3247449\";\"อาเค่น\";\"other\"\n\"3247449\";\"აახენი\";\"other\"\n\"3247449\";\"アーヘン\";\"other\"\n\"3247449\";\"阿亨\";\"other\"\n\"3247449\";\"아헨\";\"other\"\n\"3272450\";\"Ubstadt-Weiher\";\"main\"\n\"3272454\";\"Stadecken-Elsheim\";\"main\"\n\"3272455\";\"Dannstadt-Schauernheim\";\"main\"\n\"3272456\";\"Sankt Leon-Rot\";\"main\"\n\"3272456\";\"St. Leon-Rot\";\"other\"\n\"3272457\";\"Rödersheim-Gronau\";\"main\"\n\"3272457\";\"Rodersheim-Gronau\";\"ascii\"\n\"3272458\";\"Karlsdorf-Neuthard\";\"main\"\n\"3272459\";\"Graben-Neudorf\";\"main\"\n\"3272460\";\"Mörfelden-Walldorf\";\"main\"\n\"3272460\";\"Morfelden-Walldorf\";\"ascii\"\n\"3272461\";\"Linkenheim-Hochstetten\";\"main\"\n\"3272462\";\"Billigheim-Ingenheim\";\"main\"\n\"3272463\";\"Böhl-Iggelheim\";\"main\"\n\"3272463\";\"Bohl-Iggelheim\";\"ascii\"\n\"3272464\";\"Hochdorf-Assenheim\";\"main\"\n\"3272934\";\"Alsbach-Hähnlein\";\"main\"\n\"3272934\";\"Alsbach-Hahnlein\";\"ascii\"\n\"3272935\";\"Dittelsheim-Heßloch\";\"main\"\n\"3272935\";\"Dittelsheim-Hessloch\";\"ascii\"\n\"3272941\";\"Riedstadt\";\"main\"\n\"3272957\";\"Hochstadt\";\"main\"\n\"3274259\";\"Leingarten\";\"main\"\n\"3274966\";\"Lauda-Königshofen\";\"main\"\n\"3274966\";\"Lauda-Konigshofen\";\"ascii\"\n\"3274987\";\"Altenbuch\";\"main\"\n\"3274989\";\"Mespelbrunn\";\"main\"\n\"3336891\";\"Filderstadt\";\"main\"\n\"3336892\";\"Ostfildern\";\"main\"\n\"3336893\";\"Rodgau\";\"main\"\n\"3336894\";\"Butjadingen\";\"main\"\n\"3336895\";\"Kaufungen\";\"main\"\n\"3336896\";\"Jettingen-Scheppach\";\"main\"\n\"3337504\";\"Seeheim-Jugenheim\";\"main\"\n\"6269602\";\"Lauben\";\"main\"\n\"6545310\";\"Berlin Mitte\";\"main\"\n\"6545310\";\"Mitte\";\"other\"\n\"6547590\";\"Dallgow-Döberitz\";\"main\"\n\"6547590\";\"Dallgow-Doeberitz\";\"ascii\"\n\"6547667\";\"Borkwalde\";\"main\"\n\"6548670\";\"Bertsdorf-Hörnitz\";\"main\"\n\"6548670\";\"Bertsdorf-Hoernitz\";\"ascii\"\n\"6550659\";\"Spremberg\";\"main\"\n\"6558039\";\"Rheinstetten\";\"main\"\n\"6559224\";\"Münstertal/Schwarzwald\";\"main\"\n\"6559224\";\"Muenstertal/Schwarzwald\";\"ascii\"\n\"6694210\";\"Neunkirchen am Brand\";\"main\"\n\"6930414\";\"Stuttgart-Ost\";\"main\"\n\"6930414\";\"S-Ost\";\"other\"\n\"6930414\";\"Stgt-Ost\";\"other\"\n\"6941055\";\"Bochum-Hordel\";\"main\"\n\"6947478\";\"Köln-Chorweiler\";\"main\"\n\"6947478\";\"Koeln-Chorweiler\";\"ascii\"\n\"6947478\";\"Chorweiler\";\"other\"\n\"6947480\";\"Köln-Kalk\";\"main\"\n\"6947480\";\"Koeln-Kalk\";\"ascii\"\n\"6947480\";\"Kalk\";\"other\"\n\"6947481\";\"Köln-Lindenthal\";\"main\"\n\"6947481\";\"Koeln-Lindenthal\";\"ascii\"\n\"6947481\";\"Lindenthal\";\"other\"\n\"6947482\";\"Köln-Mülheim\";\"main\"\n\"6947482\";\"Koeln-Muelheim\";\"ascii\"\n\"6947482\";\"Muelheim\";\"other\"\n\"6947482\";\"Mülheim\";\"other\"\n\"6947483\";\"Köln-Nippes\";\"main\"\n\"6947483\";\"Koeln-Nippes\";\"ascii\"\n\"6947483\";\"Nippes\";\"other\"\n\"7117230\";\"Schwanau\";\"main\"\n\"7117230\";\"Shvanau\";\"other\"\n\"7117230\";\"Шванау\";\"other\"\n\"7274677\";\"Hamburg-Eidelstedt\";\"main\"\n\"7274677\";\"Eidelstedt\";\"other\"\n\"7274677\";\"Hamburg Eidelstedt\";\"other\"\n\"7284134\";\"Schelfstadt\";\"main\"\n\"7284135\";\"Werdervorstadt\";\"main\"\n\"7284137\";\"Altstadt\";\"main\"\n\"7284138\";\"Feldstadt\";\"main\"\n\"7284168\";\"Paulsstadt\";\"main\"\n\"7284171\";\"Weststadt\";\"main\"\n\"7284172\";\"Lewenberg\";\"main\"\n\"7289614\";\"Halle Neustadt\";\"main\"\n\"7290243\";\"Hamburg-Bergedorf\";\"main\"\n\"7290243\";\"Bardoerp\";\"other\"\n\"7290243\";\"Bardörp\";\"other\"\n\"7290243\";\"Bergedorf\";\"other\"\n\"7290245\";\"Berlin Steglitz Zehlendorf\";\"main\"\n\"7290245\";\"Berlin Steglitz\";\"other\"\n\"7290245\";\"Berlin Zehlendorf\";\"other\"\n\"7290245\";\"Steglitz\";\"other\"\n\"7290245\";\"Zehlendorf\";\"other\"\n\"7290251\";\"Berlin Wilmersdorf\";\"main\"\n\"7290251\";\"Wilmersdorf\";\"other\"\n\"7290252\";\"Berlin Spandau\";\"main\"\n\"7290252\";\"Spandau\";\"other\"\n\"7290253\";\"Berlin Tempelhof\";\"main\"\n\"7290253\";\"Tempelhof\";\"other\"\n\"7290254\";\"Berlin Schöneberg\";\"main\"\n\"7290254\";\"Berlin Schoeneberg\";\"ascii\"\n\"7290254\";\"Schoeneberg\";\"other\"\n\"7290254\";\"Schöneberg\";\"other\"\n\"7290255\";\"Berlin Treptow\";\"main\"\n\"7290255\";\"Treptow\";\"other\"\n\"7290401\";\"Frankfurt (Main) Niederrad\";\"main\"\n\"7290401\";\"Frankfurt Niederrad\";\"other\"\n\"7290401\";\"Niederrad\";\"other\"\n\"7302786\";\"Haselbachtal\";\"main\"\n\"220782\";\"Tadjoura\";\"main\"\n\"220782\";\"Tadjura\";\"other\"\n\"220782\";\"Tadzhura\";\"other\"\n\"220782\";\"Tadzura\";\"other\"\n\"220782\";\"Tadżura\";\"other\"\n\"220782\";\"Tagiura\";\"other\"\n\"220782\";\"Tajura\";\"other\"\n\"220782\";\"Таджура\";\"other\"\n\"221527\";\"Obock\";\"main\"\n\"221527\";\"Hayyou\";\"other\"\n\"221527\";\"Obok\";\"other\"\n\"221915\";\"Loyada\";\"main\"\n\"221915\";\"La-waada\";\"other\"\n\"221915\";\"Loya Ada\";\"other\"\n\"221915\";\"Loyi Ada\";\"other\"\n\"222596\";\"Holhol\";\"main\"\n\"222596\";\"Hol Holl\";\"other\"\n\"222596\";\"Holl-Holl\";\"other\"\n\"223773\";\"Dorra\";\"main\"\n\"223817\";\"Djibouti\";\"main\"\n\"223817\";\"Cibuti\";\"other\"\n\"223817\";\"Djibuti\";\"other\"\n\"223817\";\"Dschibuti\";\"other\"\n\"223817\";\"Dzhibuti\";\"other\"\n\"223817\";\"Dzibuti\";\"other\"\n\"223817\";\"Dzibutis\";\"other\"\n\"223817\";\"Dżibuti\";\"other\"\n\"223817\";\"Džibuti\";\"other\"\n\"223817\";\"Džibutis\";\"other\"\n\"223817\";\"Gibuti\";\"other\"\n\"223817\";\"Gibuto\";\"other\"\n\"223817\";\"Jibouti\";\"other\"\n\"223817\";\"Jibuti\";\"other\"\n\"223817\";\"Tzimpouti\";\"other\"\n\"223817\";\"Yibuti\";\"other\"\n\"223817\";\"g'ybwty\";\"other\"\n\"223817\";\"ji bu de\";\"other\"\n\"223817\";\"jibuchi shi\";\"other\"\n\"223817\";\"jibuti\";\"other\"\n\"223817\";\"jybwty\";\"other\"\n\"223817\";\"Ĝibuto\";\"other\"\n\"223817\";\"Τζιμπουτί\";\"other\"\n\"223817\";\"Джибути\";\"other\"\n\"223817\";\"ג'יבוטי\";\"other\"\n\"223817\";\"جبوتی سٹی\";\"other\"\n\"223817\";\"جیبوتی\";\"other\"\n\"223817\";\"ジブチ市\";\"other\"\n\"223817\";\"吉布地\";\"other\"\n\"223817\";\"지부티\";\"other\"\n\"223890\";\"Dikhil\";\"main\"\n\"223890\";\"Dicchil\";\"other\"\n\"223890\";\"Dikil\";\"other\"\n\"223890\";\"Dikkil\";\"other\"\n\"225037\";\"‘Arta\";\"main\"\n\"225037\";\"`Arta\";\"ascii\"\n\"225037\";\"Arta\";\"other\"\n\"225284\";\"‘Ali Sabieh\";\"main\"\n\"225284\";\"`Ali Sabieh\";\"ascii\"\n\"225284\";\"Ali Sabie\";\"other\"\n\"225284\";\"Ali Sabiet\";\"other\"\n\"225284\";\"Ali Sabih\";\"other\"\n\"225284\";\"Ali Sabiè\";\"other\"\n\"225284\";\"Ali-Sabie\";\"other\"\n\"225284\";\"`Ali Sabih\";\"other\"\n\"225284\";\"Али-Сабие\";\"other\"\n\"225284\";\"‘Ali Sabîẖ\";\"other\"\n\"400462\";\"Alaïli Ḏaḏḏa‘\";\"main\"\n\"400462\";\"Alaili Dadda`\";\"ascii\"\n\"400462\";\"Alayli Dadda`\";\"other\"\n\"400462\";\"Alayli Ḏaḏḏa‘\";\"other\"\n\"408698\";\"Gâlâfi\";\"main\"\n\"408698\";\"Galafi\";\"ascii\"\n\"2609990\";\"Vrå\";\"main\"\n\"2609990\";\"Vra\";\"ascii\"\n\"2609990\";\"Vraa\";\"other\"\n\"2610020\";\"Vordingborg\";\"main\"\n\"2610020\";\"Вордингборг\";\"other\"\n\"2610075\";\"Vojens\";\"main\"\n\"2610095\";\"Vodskov\";\"main\"\n\"2610140\";\"Vissenbjerg\";\"main\"\n\"2610140\";\"Vissenbjerg Kirke\";\"other\"\n\"2610159\";\"Virklund\";\"main\"\n\"2610162\";\"Vipperød\";\"main\"\n\"2610162\";\"Vipperod\";\"ascii\"\n\"2610189\";\"Vindinge\";\"main\"\n\"2610196\";\"Vinderup\";\"main\"\n\"2610196\";\"Vinderup Garde\";\"other\"\n\"2610196\";\"Vinderup Gårde\";\"other\"\n\"2610207\";\"Vindeby\";\"main\"\n\"2610259\";\"Vildbjerg\";\"main\"\n\"2610259\";\"Vilbjaerg\";\"other\"\n\"2610259\";\"Vilbjerg\";\"other\"\n\"2610259\";\"Vilbjærg\";\"other\"\n\"2610307\";\"Videbæk\";\"main\"\n\"2610307\";\"Videbaek\";\"ascii\"\n\"2610307\";\"Videbäk\";\"other\"\n\"2610311\";\"Viby\";\"main\"\n\"2610319\";\"Viborg\";\"main\"\n\"2610319\";\"Wibergis\";\"other\"\n\"2610319\";\"Виборг\";\"other\"\n\"2610437\";\"Vester Hassing\";\"main\"\n\"2610437\";\"Vester Hasing\";\"other\"\n\"2610499\";\"Vestbjerg\";\"main\"\n\"2610499\";\"Vestbjaerg\";\"other\"\n\"2610499\";\"Vestbjærg\";\"other\"\n\"2610566\";\"Veksø\";\"main\"\n\"2610566\";\"Vekso\";\"ascii\"\n\"2610566\";\"Vikso\";\"other\"\n\"2610566\";\"Viksø\";\"other\"\n\"2610613\";\"Vejle\";\"main\"\n\"2610613\";\"Vajle\";\"other\"\n\"2610613\";\"Вайле\";\"other\"\n\"2610634\";\"Vejen\";\"main\"\n\"2610726\";\"Varde\";\"main\"\n\"2610726\";\"Варде\";\"other\"\n\"2610760\";\"Vamdrup\";\"main\"\n\"2610789\";\"Vallensbæk\";\"main\"\n\"2610789\";\"Vallensbaek\";\"ascii\"\n\"2610823\";\"Vadum\";\"main\"\n\"2610908\";\"Ulstrup\";\"main\"\n\"2610908\";\"Ulstrupbro\";\"other\"\n\"2610942\";\"Ullerslev\";\"main\"\n\"2610959\";\"Ulfborg\";\"main\"\n\"2610959\";\"Ulborg\";\"other\"\n\"2610959\";\"Ulfkaer\";\"other\"\n\"2610959\";\"Ulfkær\";\"other\"\n\"2610959\";\"Ulvborg Stationsby\";\"other\"\n\"2611132\";\"Tune\";\"main\"\n\"2611189\";\"Trørød\";\"main\"\n\"2611189\";\"Trorod\";\"ascii\"\n\"2611256\";\"Trige\";\"main\"\n\"2611316\";\"Tranbjerg\";\"main\"\n\"2611316\";\"Tranbjaerg\";\"other\"\n\"2611316\";\"Tranbjærg\";\"other\"\n\"2611486\";\"Tørring\";\"main\"\n\"2611486\";\"Torring\";\"ascii\"\n\"2611486\";\"Nye Torring\";\"other\"\n\"2611486\";\"Nye Törring\";\"other\"\n\"2611486\";\"Torring Stationsby\";\"other\"\n\"2611486\";\"Tørring Stationsby\";\"other\"\n\"2611497\";\"Tønder\";\"main\"\n\"2611497\";\"Tonder\";\"ascii\"\n\"2611497\";\"Tondern\";\"other\"\n\"2611497\";\"Tuner\";\"other\"\n\"2611497\";\"Tynne\";\"other\"\n\"2611509\";\"Tølløse\";\"main\"\n\"2611509\";\"Tollose\";\"ascii\"\n\"2611509\";\"Tollose Stationsby\";\"other\"\n\"2611509\";\"Töllöse Stationsby\";\"other\"\n\"2611520\";\"Tommerup\";\"main\"\n\"2611565\";\"Toftlund\";\"main\"\n\"2611610\";\"Tjæreborg\";\"main\"\n\"2611610\";\"Tjaereborg\";\"ascii\"\n\"2611684\";\"Tinglev\";\"main\"\n\"2611738\";\"Thyborøn\";\"main\"\n\"2611738\";\"Thyboron\";\"ascii\"\n\"2611738\";\"Tyboron\";\"other\"\n\"2611738\";\"Tyboron By\";\"other\"\n\"2611738\";\"Tyborøn\";\"other\"\n\"2611738\";\"Tyborøn By\";\"other\"\n\"2611742\";\"Thurø By\";\"main\"\n\"2611742\";\"Thuro By\";\"ascii\"\n\"2611742\";\"Thuro\";\"other\"\n\"2611742\";\"Thurø\";\"other\"\n\"2611742\";\"Turo By\";\"other\"\n\"2611742\";\"Turö By\";\"other\"\n\"2611755\";\"Thisted\";\"main\"\n\"2611755\";\"Thystad\";\"other\"\n\"2611755\";\"Tisted\";\"other\"\n\"2611817\";\"Taulov\";\"main\"\n\"2611817\";\"Tavlov\";\"other\"\n\"2611817\";\"Tavlov Nebel\";\"other\"\n\"2611828\";\"Taastrup\";\"main\"\n\"2611828\";\"Tastrup\";\"other\"\n\"2611828\";\"Tåstrup\";\"other\"\n\"2611828\";\"Тааструп\";\"other\"\n\"2611852\";\"Tårs\";\"main\"\n\"2611852\";\"Tars\";\"ascii\"\n\"2611852\";\"Taars\";\"other\"\n\"2611852\";\"Tors\";\"other\"\n\"2611862\";\"Tårnby\";\"main\"\n\"2611862\";\"Tarnby\";\"ascii\"\n\"2611862\";\"Taarnby\";\"other\"\n\"2611865\";\"Tarm\";\"main\"\n\"2611982\";\"Svogerslev\";\"main\"\n\"2611999\";\"Svinninge\";\"main\"\n\"2612021\";\"Svenstrup\";\"main\"\n\"2612045\";\"Svendborg\";\"main\"\n\"2612045\";\"Svenborg\";\"other\"\n\"2612045\";\"Svennborge\";\"other\"\n\"2612045\";\"Свеннборге\";\"other\"\n\"2612053\";\"Svejbæk\";\"main\"\n\"2612053\";\"Svejbaek\";\"ascii\"\n\"2612057\";\"Svebølle\";\"main\"\n\"2612057\";\"Svebolle\";\"ascii\"\n\"2612057\";\"Svebolle Stationsby\";\"other\"\n\"2612057\";\"Svebølle Stationsby\";\"other\"\n\"2612107\";\"Sunds\";\"main\"\n\"2612107\";\"Sunde\";\"other\"\n\"2612121\";\"Sundby\";\"main\"\n\"2612121\";\"Stadager\";\"other\"\n\"2612192\";\"Stubbekøbing\";\"main\"\n\"2612192\";\"Stubbekobing\";\"ascii\"\n\"2612192\";\"Stubbekiobing\";\"other\"\n\"2612192\";\"Stubbekiöbing\";\"other\"\n\"2612192\";\"Stubbekjobing\";\"other\"\n\"2612192\";\"Stubbekjöbing\";\"other\"\n\"2612204\";\"Struer\";\"main\"\n\"2612204\";\"Struehr\";\"other\"\n\"2612204\";\"Струэр\";\"other\"\n\"2612211\";\"Strøby Egede\";\"main\"\n\"2612211\";\"Stroby Egede\";\"ascii\"\n\"2612224\";\"Strib\";\"main\"\n\"2612224\";\"Стриб\";\"other\"\n\"2612274\";\"Strandby\";\"main\"\n\"2612301\";\"Storvorde\";\"main\"\n\"2612301\";\"Storevorde\";\"other\"\n\"2612411\";\"Store Heddinge\";\"main\"\n\"2612411\";\"Store Hedinge\";\"other\"\n\"2612500\";\"Støvring\";\"main\"\n\"2612500\";\"Stovring\";\"ascii\"\n\"2612529\";\"Stoholm\";\"main\"\n\"2612541\";\"Stilling\";\"main\"\n\"2612552\";\"Stige\";\"main\"\n\"2612629\";\"Stenløse\";\"main\"\n\"2612629\";\"Stenlose\";\"ascii\"\n\"2612633\";\"Stenlille\";\"main\"\n\"2612689\";\"Stege\";\"main\"\n\"2612695\";\"Stavtrup\";\"main\"\n\"2612695\";\"Stautrup\";\"other\"\n\"2612710\";\"Stavnsholt\";\"main\"\n\"2612730\";\"Starup\";\"main\"\n\"2612823\";\"Spentrup\";\"main\"\n\"2612862\";\"Sorø\";\"main\"\n\"2612862\";\"Soro\";\"ascii\"\n\"2612955\";\"Søndersø\";\"main\"\n\"2612955\";\"Sonderso\";\"ascii\"\n\"2612955\";\"Sonderse\";\"other\"\n\"2612955\";\"Sönderse\";\"other\"\n\"2613102\";\"Sønderborg\";\"main\"\n\"2613102\";\"Sonderborg\";\"ascii\"\n\"2613102\";\"Sjonnenborg\";\"other\"\n\"2613102\";\"Sonderburg\";\"other\"\n\"2613102\";\"Synneborre\";\"other\"\n\"2613102\";\"Сённенборг\";\"other\"\n\"2613106\";\"Sønder Bjert\";\"main\"\n\"2613106\";\"Sonder Bjert\";\"ascii\"\n\"2613106\";\"Bjaert\";\"other\"\n\"2613106\";\"Bjært\";\"other\"\n\"2613172\";\"Søften\";\"main\"\n\"2613172\";\"Soften\";\"ascii\"\n\"2613233\";\"Solrød Strand\";\"main\"\n\"2613233\";\"Solrod Strand\";\"ascii\"\n\"2613234\";\"Solrød\";\"main\"\n\"2613234\";\"Solrod\";\"ascii\"\n\"2613254\";\"Solbjerg\";\"main\"\n\"2613254\";\"Solbjaerg\";\"other\"\n\"2613254\";\"Solbjærg\";\"other\"\n\"2613293\";\"Snoghøj\";\"main\"\n\"2613293\";\"Snoghoj\";\"ascii\"\n\"2613322\";\"Snejbjerg\";\"main\"\n\"2613322\";\"Snejbjaerg\";\"other\"\n\"2613322\";\"Snejbjærg\";\"other\"\n\"2613345\";\"Smørumnedre\";\"main\"\n\"2613345\";\"Smorumnedre\";\"ascii\"\n\"2613451\";\"Slangerup\";\"main\"\n\"2613451\";\"Gmina Slangerup\";\"other\"\n\"2613460\";\"Slagelse\";\"main\"\n\"2613460\";\"Slagel'se\";\"other\"\n\"2613460\";\"Слагельсе\";\"other\"\n\"2613539\";\"Skærbæk\";\"main\"\n\"2613539\";\"Skaerbaek\";\"ascii\"\n\"2613539\";\"Sherrebek\";\"other\"\n\"2613621\";\"Skovby\";\"main\"\n\"2613621\";\"Skovby Ostj\";\"other\"\n\"2613621\";\"Skovby Østj\";\"other\"\n\"2613672\";\"Skørping\";\"main\"\n\"2613672\";\"Skorping\";\"ascii\"\n\"2613672\";\"Gmina Skorping\";\"other\"\n\"2613672\";\"Gmina Skørping\";\"other\"\n\"2613672\";\"Skoerping\";\"other\"\n\"2613672\";\"Skorping Stationsby\";\"other\"\n\"2613672\";\"Skörping\";\"other\"\n\"2613672\";\"Skörping Stationsby\";\"other\"\n\"2613694\";\"Skælskør\";\"main\"\n\"2613694\";\"Skaelskor\";\"ascii\"\n\"2613694\";\"Skjelskor\";\"other\"\n\"2613694\";\"Skjelskör\";\"other\"\n\"2613715\";\"Skjern\";\"main\"\n\"2613715\";\"Gmina Skjern\";\"other\"\n\"2613715\";\"Skern\";\"other\"\n\"2613715\";\"Skerne\";\"other\"\n\"2613731\";\"Skive\";\"main\"\n\"2613731\";\"Скиве\";\"other\"\n\"2613766\";\"Skibby\";\"main\"\n\"2613766\";\"Skiby\";\"other\"\n\"2613887\";\"Skanderborg\";\"main\"\n\"2613939\";\"Skagen\";\"main\"\n\"2613939\";\"Скаген\";\"other\"\n\"2614010\";\"Sindal\";\"main\"\n\"2614010\";\"Gmina Sindal\";\"other\"\n\"2614030\";\"Silkeborg\";\"main\"\n\"2614030\";\"Sil'keborg\";\"other\"\n\"2614030\";\"Силькеборг\";\"other\"\n\"2614135\";\"Seden\";\"main\"\n\"2614172\";\"Sæby\";\"main\"\n\"2614172\";\"Saeby\";\"ascii\"\n\"2614328\";\"Sakskøbing\";\"main\"\n\"2614328\";\"Sakskobing\";\"ascii\"\n\"2614328\";\"Gmina Sakskobing\";\"other\"\n\"2614328\";\"Gmina Sakskøbing\";\"other\"\n\"2614328\";\"Saxkiobing\";\"other\"\n\"2614328\";\"Saxkiöbing\";\"other\"\n\"2614328\";\"Saxkjobing\";\"other\"\n\"2614328\";\"Saxkjöbing\";\"other\"\n\"2614343\";\"Sabro\";\"main\"\n\"2614353\";\"Ryomgård\";\"main\"\n\"2614353\";\"Ryomgard\";\"ascii\"\n\"2614353\";\"Ryomgaard\";\"other\"\n\"2614353\";\"Ryumgaard\";\"other\"\n\"2614353\";\"Ryumgard\";\"other\"\n\"2614353\";\"Ryumgård\";\"other\"\n\"2614387\";\"Ry\";\"main\"\n\"2614387\";\"Rye\";\"other\"\n\"2614387\";\"Rye Stationsby\";\"other\"\n\"2614432\";\"Rudkøbing\";\"main\"\n\"2614432\";\"Rudkobing\";\"ascii\"\n\"2614432\";\"Rudkiobing\";\"other\"\n\"2614432\";\"Rudkjobing\";\"other\"\n\"2614432\";\"Rudkjöbing\";\"other\"\n\"2614481\";\"Roskilde\";\"main\"\n\"2614481\";\"Hroarskelda\";\"other\"\n\"2614481\";\"Hróarskelda\";\"other\"\n\"2614481\";\"Roskille\";\"other\"\n\"2614481\";\"luo si ji lei\";\"other\"\n\"2614481\";\"rosukire\";\"other\"\n\"2614481\";\"Роскилле\";\"other\"\n\"2614481\";\"ロスキレ\";\"other\"\n\"2614481\";\"罗斯基勒\";\"other\"\n\"2614547\";\"Rønnede\";\"main\"\n\"2614547\";\"Ronnede\";\"ascii\"\n\"2614547\";\"Gmina Ronnede\";\"other\"\n\"2614547\";\"Gmina Rønnede\";\"other\"\n\"2614553\";\"Rønne\";\"main\"\n\"2614553\";\"Ronne\";\"ascii\"\n\"2614565\";\"Rønde\";\"main\"\n\"2614565\";\"Ronde\";\"ascii\"\n\"2614600\";\"Rødovre\";\"main\"\n\"2614600\";\"Rodovre\";\"ascii\"\n\"2614611\";\"Rødekro\";\"main\"\n\"2614611\";\"Rodekro\";\"ascii\"\n\"2614611\";\"Gmina Rodekro\";\"other\"\n\"2614611\";\"Gmina Rødekro\";\"other\"\n\"2614623\";\"Rødding\";\"main\"\n\"2614623\";\"Rodding\";\"ascii\"\n\"2614624\";\"Rødbyhavn\";\"main\"\n\"2614624\";\"Rodbyhavn\";\"ascii\"\n\"2614624\";\"Rodby Havn\";\"other\"\n\"2614624\";\"Roedby-havn\";\"other\"\n\"2614626\";\"Rødby\";\"main\"\n\"2614626\";\"Rodby\";\"ascii\"\n\"2614626\";\"Gmina Rodby\";\"other\"\n\"2614626\";\"Gmina Rødby\";\"other\"\n\"2614764\";\"Ringsted\";\"main\"\n\"2614764\";\"Рингстед\";\"other\"\n\"2614776\";\"Ringkøbing\";\"main\"\n\"2614776\";\"Ringkobing\";\"ascii\"\n\"2614776\";\"Ringkjobing\";\"other\"\n\"2614776\";\"Ringkjöbing\";\"other\"\n\"2614790\";\"Ringe\";\"main\"\n\"2614813\";\"Ribe\";\"main\"\n\"2614813\";\"Рибе\";\"other\"\n\"2615006\";\"Randers\";\"main\"\n\"2615006\";\"Рандерс\";\"other\"\n\"2615089\";\"Præstø\";\"main\"\n\"2615089\";\"Praesto\";\"ascii\"\n\"2615089\";\"Gmina Praesto\";\"other\"\n\"2615089\";\"Gmina Præstø\";\"other\"\n\"2615222\";\"Pandrup\";\"main\"\n\"2615222\";\"Gmina Pandrup\";\"other\"\n\"2615222\";\"Panderup\";\"other\"\n\"2615242\";\"Padborg\";\"main\"\n\"2615242\";\"Падборг\";\"other\"\n\"2615351\";\"Otterup\";\"main\"\n\"2615359\";\"Osted\";\"main\"\n\"2615359\";\"Ousted\";\"other\"\n\"2615666\";\"Ørslev\";\"main\"\n\"2615666\";\"Orslev\";\"ascii\"\n\"2615730\";\"Ølstykke\";\"main\"\n\"2615730\";\"Olstykke\";\"ascii\"\n\"2615749\";\"Ølgod\";\"main\"\n\"2615749\";\"Olgod\";\"ascii\"\n\"2615749\";\"Gmina Olgod\";\"other\"\n\"2615749\";\"Gmina Ølgod\";\"other\"\n\"2615749\";\"OElgod\";\"other\"\n\"2615749\";\"Ölgod\";\"other\"\n\"2615859\";\"Oksbøl\";\"main\"\n\"2615859\";\"Oksbol\";\"ascii\"\n\"2615859\";\"Oxbol\";\"other\"\n\"2615859\";\"Oxbøl\";\"other\"\n\"2615859\";\"Oxsbol\";\"other\"\n\"2615859\";\"Oxsböl\";\"other\"\n\"2615876\";\"Odense\";\"main\"\n\"2615876\";\"Odenze\";\"other\"\n\"2615876\";\"awdnsh\";\"other\"\n\"2615876\";\"odense\";\"other\"\n\"2615876\";\"ou deng sai\";\"other\"\n\"2615876\";\"Одензе\";\"other\"\n\"2615876\";\"Оденсе\";\"other\"\n\"2615876\";\"אודנזה\";\"other\"\n\"2615876\";\"أودنسه\";\"other\"\n\"2615876\";\"オーデンセ\";\"other\"\n\"2615876\";\"欧登塞\";\"other\"\n\"2615876\";\"오덴세\";\"other\"\n\"2615886\";\"Odder\";\"main\"\n\"2615886\";\"Оддер\";\"other\"\n\"2615932\";\"Nyråd\";\"main\"\n\"2615932\";\"Nyrad\";\"ascii\"\n\"2615932\";\"Nyraad\";\"other\"\n\"2615961\";\"Nykøbing Falster\";\"main\"\n\"2615961\";\"Nykobing Falster\";\"ascii\"\n\"2615961\";\"Nykjobing\";\"other\"\n\"2615962\";\"Nykøbing Sjælland\";\"main\"\n\"2615962\";\"Nykobing Sjaelland\";\"ascii\"\n\"2615962\";\"Nykiobing\";\"other\"\n\"2615962\";\"Nykiöbing\";\"other\"\n\"2615962\";\"Nykjobing\";\"other\"\n\"2615962\";\"Nykjöbing\";\"other\"\n\"2615964\";\"Nykøbing Mors\";\"main\"\n\"2615964\";\"Nykobing Mors\";\"ascii\"\n\"2615964\";\"Nykjobing\";\"other\"\n\"2615964\";\"Nykjöbing\";\"other\"\n\"2615964\";\"Nykobing\";\"other\"\n\"2615964\";\"Nykøbing\";\"other\"\n\"2616015\";\"Nyborg\";\"main\"\n\"2616038\";\"Næstved\";\"main\"\n\"2616038\";\"Naestved\";\"ascii\"\n\"2616038\";\"Nestved\";\"other\"\n\"2616038\";\"Нествед\";\"other\"\n\"2616172\";\"Nordby\";\"main\"\n\"2616172\";\"Odden\";\"other\"\n\"2616176\";\"Nordborg\";\"main\"\n\"2616176\";\"Gmina Nordborg\";\"other\"\n\"2616176\";\"Nordburg\";\"other\"\n\"2616308\";\"Nørre Hvalsø\";\"main\"\n\"2616308\";\"Norre Hvalso\";\"ascii\"\n\"2616365\";\"Nørre Alslev\";\"main\"\n\"2616365\";\"Norre Alslev\";\"ascii\"\n\"2616365\";\"Gmina Norre Alslev\";\"other\"\n\"2616365\";\"Gmina Nørre Alslev\";\"other\"\n\"2616368\";\"Nørre Åby\";\"main\"\n\"2616368\";\"Norre Aby\";\"ascii\"\n\"2616368\";\"Norre Aaby\";\"other\"\n\"2616368\";\"Nørre Aaby\";\"other\"\n\"2616423\";\"Nødebo\";\"main\"\n\"2616423\";\"Nodebo\";\"ascii\"\n\"2616450\";\"Nivå\";\"main\"\n\"2616450\";\"Niva\";\"ascii\"\n\"2616450\";\"Nivaa\";\"other\"\n\"2616483\";\"Nibe\";\"main\"\n\"2616483\";\"Нибе\";\"other\"\n\"2616504\";\"Nexø\";\"main\"\n\"2616504\";\"Nexo\";\"ascii\"\n\"2616504\";\"Nekso\";\"other\"\n\"2616504\";\"Neksø\";\"other\"\n\"2616518\";\"Neder Vindinge\";\"main\"\n\"2616540\";\"Neder Holluf\";\"main\"\n\"2616599\";\"Nakskov\";\"main\"\n\"2616599\";\"Naskov\";\"other\"\n\"2616599\";\"Наксков\";\"other\"\n\"2616672\";\"Munkebo\";\"main\"\n\"2616933\";\"Middelfart\";\"main\"\n\"2616933\";\"Middel'fart\";\"other\"\n\"2616933\";\"Миддельфарт\";\"other\"\n\"2617030\";\"Marstal\";\"main\"\n\"2617030\";\"Marstal'\";\"other\"\n\"2617030\";\"Марсталь\";\"other\"\n\"2617034\";\"Mårslet\";\"main\"\n\"2617034\";\"Marslet\";\"ascii\"\n\"2617034\";\"Maarslet\";\"other\"\n\"2617072\";\"Maribo\";\"main\"\n\"2617072\";\"Марибо\";\"other\"\n\"2617076\";\"Mariager\";\"main\"\n\"2617076\";\"Gmina Mariager\";\"other\"\n\"2617076\";\"Мариагер\";\"other\"\n\"2617112\";\"Måløv\";\"main\"\n\"2617112\";\"Malov\";\"ascii\"\n\"2617112\";\"Maalov\";\"other\"\n\"2617112\";\"Maaløv\";\"other\"\n\"2617114\";\"Malling\";\"main\"\n\"2617176\";\"Lystrup\";\"main\"\n\"2617220\";\"Lynge\";\"main\"\n\"2617312\";\"Lunderskov\";\"main\"\n\"2617450\";\"Løjt Kirkeby\";\"main\"\n\"2617450\";\"Lojt Kirkeby\";\"ascii\"\n\"2617450\";\"Loitkirkeby\";\"other\"\n\"2617450\";\"Lojt\";\"other\"\n\"2617450\";\"Löjt\";\"other\"\n\"2617457\";\"Løgumkloster\";\"main\"\n\"2617457\";\"Logumkloster\";\"ascii\"\n\"2617457\";\"Gmina Logumkloster\";\"other\"\n\"2617457\";\"Gmina Løgumkloster\";\"other\"\n\"2617457\";\"Loegumkloster\";\"other\"\n\"2617457\";\"Logumkloster Sogn\";\"other\"\n\"2617457\";\"Lögumkloster\";\"other\"\n\"2617457\";\"Løgumkloster Sogn\";\"other\"\n\"2617463\";\"Løgten\";\"main\"\n\"2617463\";\"Logten\";\"ascii\"\n\"2617467\";\"Løgstør\";\"main\"\n\"2617467\";\"Logstor\";\"ascii\"\n\"2617467\";\"Gmina Logstor\";\"other\"\n\"2617467\";\"Gmina Løgstør\";\"other\"\n\"2617467\";\"Loegstoer\";\"other\"\n\"2617467\";\"Lögstör\";\"other\"\n\"2617538\";\"Liseleje\";\"main\"\n\"2617619\";\"Lind\";\"main\"\n\"2617626\";\"Værløse\";\"main\"\n\"2617626\";\"Vaerlose\";\"ascii\"\n\"2617626\";\"Lille Vaerlose\";\"other\"\n\"2617626\";\"Lille Værløse\";\"other\"\n\"2617658\";\"Lillerød\";\"main\"\n\"2617658\";\"Lillerod\";\"ascii\"\n\"2617812\";\"Lemvig\";\"main\"\n\"2617812\";\"Лемвиг\";\"other\"\n\"2617832\";\"Lejre\";\"main\"\n\"2617936\";\"Langeskov\";\"main\"\n\"2617981\";\"Langå\";\"main\"\n\"2617981\";\"Langa\";\"ascii\"\n\"2617981\";\"Langaa\";\"other\"\n\"2618148\";\"Kruså\";\"main\"\n\"2618148\";\"Krusa\";\"ascii\"\n\"2618148\";\"Krusaa\";\"other\"\n\"2618361\";\"Korsør\";\"main\"\n\"2618361\";\"Korsor\";\"ascii\"\n\"2618415\";\"Køge\";\"main\"\n\"2618415\";\"Koge\";\"ascii\"\n\"2618415\";\"Kege\";\"other\"\n\"2618415\";\"Kjoge\";\"other\"\n\"2618415\";\"kyuge\";\"other\"\n\"2618415\";\"Кеге\";\"other\"\n\"2618415\";\"キューゲ\";\"other\"\n\"2618425\";\"Copenhagen\";\"main\"\n\"2618425\";\"Cobanhavan\";\"other\"\n\"2618425\";\"Copenaga\";\"other\"\n\"2618425\";\"Copenaghen\";\"other\"\n\"2618425\";\"Copenaguen\";\"other\"\n\"2618425\";\"Copenhaga\";\"other\"\n\"2618425\";\"Copenhague\";\"other\"\n\"2618425\";\"Copenhaguen\";\"other\"\n\"2618425\";\"Copenhaguen - Kobenhavn\";\"other\"\n\"2618425\";\"Copenhaguen - København\";\"other\"\n\"2618425\";\"Cóbanhávan\";\"other\"\n\"2618425\";\"Hafnia\";\"other\"\n\"2618425\";\"Kapehngagen\";\"other\"\n\"2618425\";\"Kaupmannahoefn\";\"other\"\n\"2618425\";\"Kaupmannahöfn\";\"other\"\n\"2618425\";\"Keypmannahavn\";\"other\"\n\"2618425\";\"Kjobenhavn\";\"other\"\n\"2618425\";\"Kjopenhamn\";\"other\"\n\"2618425\";\"Kjøpenhamn\";\"other\"\n\"2618425\";\"Kobenhamman\";\"other\"\n\"2618425\";\"Kobenhaven\";\"other\"\n\"2618425\";\"Kobenhavn\";\"other\"\n\"2618425\";\"Kodan\";\"other\"\n\"2618425\";\"Kodaň\";\"other\"\n\"2618425\";\"Koebenhavn\";\"other\"\n\"2618425\";\"Koeoepenhamina\";\"other\"\n\"2618425\";\"Koepenhamn\";\"other\"\n\"2618425\";\"Kopenage\";\"other\"\n\"2618425\";\"Kopenchage\";\"other\"\n\"2618425\";\"Kopengagen\";\"other\"\n\"2618425\";\"Kopenhaagen\";\"other\"\n\"2618425\";\"Kopenhag\";\"other\"\n\"2618425\";\"Kopenhaga\";\"other\"\n\"2618425\";\"Kopenhage\";\"other\"\n\"2618425\";\"Kopenhagen\";\"other\"\n\"2618425\";\"Kopenhagena\";\"other\"\n\"2618425\";\"Kopenhago\";\"other\"\n\"2618425\";\"Kopenhāgena\";\"other\"\n\"2618425\";\"Kopenkhagen\";\"other\"\n\"2618425\";\"Koppenhaga\";\"other\"\n\"2618425\";\"Koppenhága\";\"other\"\n\"2618425\";\"Kòpenhaga\";\"other\"\n\"2618425\";\"Köbenhavn\";\"other\"\n\"2618425\";\"Köpenhamn\";\"other\"\n\"2618425\";\"Kööpenhamina\";\"other\"\n\"2618425\";\"København\";\"other\"\n\"2618425\";\"Københámman\";\"other\"\n\"2618425\";\"ge ben ha gen\";\"other\"\n\"2618425\";\"khopenheken\";\"other\"\n\"2618425\";\"kopanahagana\";\"other\"\n\"2618425\";\"kopenahagena\";\"other\"\n\"2618425\";\"kopenahegena\";\"other\"\n\"2618425\";\"kopenhagen\";\"other\"\n\"2618425\";\"kwbnhaghn\";\"other\"\n\"2618425\";\"kwpnhgn\";\"other\"\n\"2618425\";\"qwpnhgn\";\"other\"\n\"2618425\";\"Κοπεγχάγη\";\"other\"\n\"2618425\";\"Капэнгаген\";\"other\"\n\"2618425\";\"Копенгаген\";\"other\"\n\"2618425\";\"Копенхаген\";\"other\"\n\"2618425\";\"Կոպենհագեն\";\"other\"\n\"2618425\";\"קופנהאגן\";\"other\"\n\"2618425\";\"קופנהגן\";\"other\"\n\"2618425\";\"كوبنهاغن\";\"other\"\n\"2618425\";\"كوپېنھاگېن\";\"other\"\n\"2618425\";\"ܟܘܦܢܗܓܢ\";\"other\"\n\"2618425\";\"कोपनहागन\";\"other\"\n\"2618425\";\"কোপেনহাগেন\";\"other\"\n\"2618425\";\"কোপেনহেগেন\";\"other\"\n\"2618425\";\"โคเปนเฮเกน\";\"other\"\n\"2618425\";\"ཀའོ་པེན་ཧ་ཀེན\";\"other\"\n\"2618425\";\"კოპენჰაგენი\";\"other\"\n\"2618425\";\"ኮፐንሀገን\";\"other\"\n\"2618425\";\"ኮፕንሀግ\";\"other\"\n\"2618425\";\"コペンハーゲン\";\"other\"\n\"2618425\";\"哥本哈根\";\"other\"\n\"2618425\";\"코펜하겐\";\"other\"\n\"2618468\";\"Kongens Lyngby\";\"main\"\n\"2618468\";\"Konigs Lyngby\";\"other\"\n\"2618468\";\"Lyngby\";\"other\"\n\"2618489\";\"Kolt\";\"main\"\n\"2618528\";\"Kolding\";\"main\"\n\"2618528\";\"Koldingo\";\"other\"\n\"2618528\";\"Kolinga\";\"other\"\n\"2618528\";\"Колдинг\";\"other\"\n\"2618787\";\"Klarup\";\"main\"\n\"2618814\";\"Kjellerup\";\"main\"\n\"2618814\";\"Kellerup\";\"other\"\n\"2618931\";\"Kibæk\";\"main\"\n\"2618931\";\"Kibaek\";\"ascii\"\n\"2618944\";\"Kerteminde\";\"main\"\n\"2618944\";\"Kierteminde\";\"other\"\n\"2618944\";\"Kjerteminde\";\"other\"\n\"2619061\";\"Kås\";\"main\"\n\"2619061\";\"Kas\";\"ascii\"\n\"2619061\";\"Kaas\";\"other\"\n\"2619068\";\"Karup\";\"main\"\n\"2619154\";\"Kalundborg\";\"main\"\n\"2619154\";\"Kallundborg\";\"other\"\n\"2619216\";\"Jyllinge\";\"main\"\n\"2619221\";\"Jyderup\";\"main\"\n\"2619251\";\"Juelsminde\";\"main\"\n\"2619287\";\"Jægerspris\";\"main\"\n\"2619287\";\"Jaegerspris\";\"ascii\"\n\"2619287\";\"Gmina Jaegerspris\";\"other\"\n\"2619287\";\"Gmina Jægerspris\";\"other\"\n\"2619340\";\"Jelling\";\"main\"\n\"2619340\";\"Elling\";\"other\"\n\"2619340\";\"Gravhoegarna\";\"other\"\n\"2619340\";\"Gravhögarna\";\"other\"\n\"2619340\";\"Еллинг\";\"other\"\n\"2619377\";\"Ishøj\";\"main\"\n\"2619377\";\"Ishoj\";\"ascii\"\n\"2619426\";\"Ikast\";\"main\"\n\"2619528\";\"Hvidovre\";\"main\"\n\"2619528\";\"Khvidovre\";\"other\"\n\"2619528\";\"Хвидовре\";\"other\"\n\"2619537\";\"Hvide Sande\";\"main\"\n\"2619624\";\"Hurup\";\"main\"\n\"2619624\";\"Thy\";\"other\"\n\"2619650\";\"Hundested\";\"main\"\n\"2619650\";\"Gmina Hundested\";\"other\"\n\"2619669\";\"Humlebæk\";\"main\"\n\"2619669\";\"Humlebaek\";\"ascii\"\n\"2619771\";\"Horsens\";\"main\"\n\"2619771\";\"Khorsens\";\"other\"\n\"2619771\";\"huo er sen si\";\"other\"\n\"2619771\";\"Хорсенс\";\"other\"\n\"2619771\";\"霍尔森斯\";\"other\"\n\"2619787\";\"Hornslet\";\"main\"\n\"2619807\";\"Hornbæk\";\"main\"\n\"2619807\";\"Hornbaek\";\"ascii\"\n\"2619844\";\"Hørve\";\"main\"\n\"2619844\";\"Horve\";\"ascii\"\n\"2619844\";\"Horv\";\"other\"\n\"2619844\";\"Hørv\";\"other\"\n\"2619845\";\"Høruphav\";\"main\"\n\"2619845\";\"Horuphav\";\"ascii\"\n\"2619856\";\"Hørsholm\";\"main\"\n\"2619856\";\"Horsholm\";\"ascii\"\n\"2619856\";\"Kherskhol'm\";\"other\"\n\"2619856\";\"Херсхольм\";\"other\"\n\"2619860\";\"Hørning\";\"main\"\n\"2619860\";\"Horning\";\"ascii\"\n\"2619882\";\"Høng\";\"main\"\n\"2619882\";\"Hong\";\"ascii\"\n\"2619882\";\"Gmina Hong\";\"other\"\n\"2619882\";\"Gmina Høng\";\"other\"\n\"2619908\";\"Højslev\";\"main\"\n\"2619908\";\"Hojslev\";\"ascii\"\n\"2619908\";\"Hoislev\";\"other\"\n\"2619908\";\"Höislev\";\"other\"\n\"2619967\";\"Højby\";\"main\"\n\"2619967\";\"Hojby\";\"ascii\"\n\"2620042\";\"Holsted\";\"main\"\n\"2620046\";\"Holstebro\";\"main\"\n\"2620046\";\"Khol'stebro\";\"other\"\n\"2620046\";\"Хольстебро\";\"other\"\n\"2620134\";\"Holeby\";\"main\"\n\"2620134\";\"Gmina Holeby\";\"other\"\n\"2620147\";\"Holbæk\";\"main\"\n\"2620147\";\"Holbaek\";\"ascii\"\n\"2620147\";\"Hollbaek\";\"other\"\n\"2620147\";\"Hollbæk\";\"other\"\n\"2620147\";\"Khol'bek\";\"other\"\n\"2620147\";\"Хольбек\";\"other\"\n\"2620167\";\"Hobro\";\"main\"\n\"2620167\";\"Khobro\";\"other\"\n\"2620167\";\"Хобро\";\"other\"\n\"2620186\";\"Hjortshøj\";\"main\"\n\"2620186\";\"Hjortshoj\";\"ascii\"\n\"2620214\";\"Hjørring\";\"main\"\n\"2620214\";\"Hjorring\";\"ascii\"\n\"2620214\";\"Hjoerring\";\"other\"\n\"2620214\";\"Hjörring\";\"other\"\n\"2620275\";\"Hjallerup\";\"main\"\n\"2620279\";\"Hirtshals\";\"main\"\n\"2620279\";\"Khirtskhal's\";\"other\"\n\"2620279\";\"Lilleheden Hornsnaes\";\"other\"\n\"2620279\";\"Lilleheden Hornsnæs\";\"other\"\n\"2620279\";\"Хиртсхальс\";\"other\"\n\"2620288\";\"Hinnerup\";\"main\"\n\"2620288\";\"Gmina Hinnerup\";\"other\"\n\"2620288\";\"Hinnerup-Broby\";\"other\"\n\"2620288\";\"Khinnerup\";\"other\"\n\"2620288\";\"Хиннеруп\";\"other\"\n\"2620320\";\"Hillerød\";\"main\"\n\"2620320\";\"Hillerod\";\"ascii\"\n\"2620320\";\"Khillerod\";\"other\"\n\"2620320\";\"hylrwd\";\"other\"\n\"2620320\";\"Хиллерод\";\"other\"\n\"2620320\";\"הילרוד\";\"other\"\n\"2620425\";\"Herning\";\"main\"\n\"2620425\";\"Kherning\";\"other\"\n\"2620425\";\"Хернинг\";\"other\"\n\"2620473\";\"Helsingør\";\"main\"\n\"2620473\";\"Helsingor\";\"ascii\"\n\"2620473\";\"Elseneur\";\"other\"\n\"2620473\";\"Elsinor\";\"other\"\n\"2620473\";\"Elsinore\";\"other\"\n\"2620473\";\"Khel'singjor\";\"other\"\n\"2620473\";\"Хельсингёр\";\"other\"\n\"2620476\";\"Helsinge\";\"main\"\n\"2620476\";\"Khel'singe\";\"other\"\n\"2620476\";\"Хельсинге\";\"other\"\n\"2620528\";\"Hellebæk\";\"main\"\n\"2620528\";\"Hellebaek\";\"ascii\"\n\"2620583\";\"Hedensted\";\"main\"\n\"2620664\";\"Havdrup\";\"main\"\n\"2620712\";\"Haslev\";\"main\"\n\"2620712\";\"Khaslev\";\"other\"\n\"2620712\";\"Хаслев\";\"other\"\n\"2620751\";\"Hårlev\";\"main\"\n\"2620751\";\"Harlev\";\"ascii\"\n\"2620751\";\"Haarlev\";\"other\"\n\"2620765\";\"Hårby\";\"main\"\n\"2620765\";\"Harby\";\"ascii\"\n\"2620765\";\"Haarby\";\"other\"\n\"2620767\";\"Harboøre\";\"main\"\n\"2620767\";\"Harboore\";\"ascii\"\n\"2620767\";\"Harboor\";\"other\"\n\"2620767\";\"Harboør\";\"other\"\n\"2620786\";\"Hanstholm\";\"main\"\n\"2620786\";\"Gmina Hanstholm\";\"other\"\n\"2620814\";\"Hammerum\";\"main\"\n\"2620814\";\"Hamrum\";\"other\"\n\"2620835\";\"Hammel\";\"main\"\n\"2620835\";\"Gmina Hammel\";\"other\"\n\"2620835\";\"funmeru ren xing\";\"other\"\n\"2620835\";\"フンメル人形\";\"other\"\n\"2620871\";\"Hals\";\"main\"\n\"2620952\";\"Hadsund\";\"main\"\n\"2620952\";\"Gmina Hadsund\";\"other\"\n\"2620956\";\"Hadsten\";\"main\"\n\"2620956\";\"Hadsten Stationsby\";\"other\"\n\"2620956\";\"Khadsten\";\"other\"\n\"2620956\";\"Хадстен\";\"other\"\n\"2620964\";\"Haderslev\";\"main\"\n\"2620964\";\"Hadersleben\";\"other\"\n\"2620964\";\"Haderslevo\";\"other\"\n\"2620964\";\"Khaderslev\";\"other\"\n\"2620964\";\"Хадерслев\";\"other\"\n\"2620997\";\"Gundsømagle\";\"main\"\n\"2620997\";\"Gundsomagle\";\"ascii\"\n\"2621072\";\"Guderup\";\"main\"\n\"2621101\";\"Græsted\";\"main\"\n\"2621101\";\"Graested\";\"ascii\"\n\"2621193\";\"Grindsted\";\"main\"\n\"2621215\";\"Greve\";\"main\"\n\"2621230\";\"Grenaa\";\"main\"\n\"2621230\";\"Grena\";\"other\"\n\"2621230\";\"Grenå\";\"other\"\n\"2621258\";\"Gråsten\";\"main\"\n\"2621258\";\"Grasten\";\"ascii\"\n\"2621258\";\"Gmina Grasten\";\"other\"\n\"2621258\";\"Gmina Gråsten\";\"other\"\n\"2621258\";\"Graasten\";\"other\"\n\"2621258\";\"Gravenstein\";\"other\"\n\"2621279\";\"Gram\";\"main\"\n\"2621304\";\"Gørlev\";\"main\"\n\"2621304\";\"Gorlev\";\"ascii\"\n\"2621304\";\"Giorley\";\"other\"\n\"2621304\";\"Gjorlev\";\"other\"\n\"2621304\";\"Gjörlev\";\"other\"\n\"2621304\";\"Gmina Gorlev\";\"other\"\n\"2621304\";\"Gmina Gørlev\";\"other\"\n\"2621356\";\"Glostrup\";\"main\"\n\"2621393\";\"Glamsbjerg\";\"main\"\n\"2621393\";\"Glamsbjaerg\";\"other\"\n\"2621393\";\"Glamsbjærg\";\"other\"\n\"2621393\";\"Gmina Glamsbjerg\";\"other\"\n\"2621434\";\"Gjellerup Kirkeby\";\"main\"\n\"2621434\";\"Gjellerup\";\"other\"\n\"2621434\";\"Kirkeby\";\"other\"\n\"2621448\";\"Give\";\"main\"\n\"2621449\";\"Gistrup\";\"main\"\n\"2621471\";\"Gilleleje\";\"main\"\n\"2621471\";\"Gilleje\";\"other\"\n\"2621614\";\"Ganløse\";\"main\"\n\"2621614\";\"Ganlose\";\"ascii\"\n\"2621710\";\"Galten\";\"main\"\n\"2621710\";\"Sonder Galten\";\"other\"\n\"2621805\";\"Fuglebjerg\";\"main\"\n\"2621805\";\"Fuglebaerg\";\"other\"\n\"2621805\";\"Fuglebærg\";\"other\"\n\"2621805\";\"Gmina Fuglebjerg\";\"other\"\n\"2621896\";\"Frejlev\";\"main\"\n\"2621896\";\"Freilev\";\"other\"\n\"2621910\";\"Frederiksværk\";\"main\"\n\"2621910\";\"Frederiksvaerk\";\"ascii\"\n\"2621912\";\"Frederikssund\";\"main\"\n\"2621912\";\"Frederiksund\";\"other\"\n\"2621927\";\"Frederikshavn\";\"main\"\n\"2621927\";\"Fladstrand\";\"other\"\n\"2621927\";\"Frederikskhavn\";\"other\"\n\"2621927\";\"Фредериксхавн\";\"other\"\n\"2621942\";\"Frederiksberg\";\"main\"\n\"2621942\";\"Фредериксберг\";\"other\"\n\"2621945\";\"Frederiksberg\";\"main\"\n\"2621951\";\"Fredericia\";\"main\"\n\"2621951\";\"Frederisija\";\"other\"\n\"2621951\";\"Фредерисия\";\"other\"\n\"2621956\";\"Fredensborg\";\"main\"\n\"2621967\";\"Framlev\";\"main\"\n\"2622002\";\"Forlev\";\"main\"\n\"2622061\";\"Fløng\";\"main\"\n\"2622061\";\"Flong\";\"ascii\"\n\"2622139\";\"Fjerritslev\";\"main\"\n\"2622139\";\"Fjerreslev\";\"other\"\n\"2622139\";\"Gmina Fjerritslev\";\"other\"\n\"2622226\";\"Fensmark\";\"main\"\n\"2622306\";\"Farum\";\"main\"\n\"2622306\";\"Фарум\";\"other\"\n\"2622310\";\"Farsø\";\"main\"\n\"2622310\";\"Farso\";\"ascii\"\n\"2622310\";\"Farsoe\";\"other\"\n\"2622310\";\"Farsö\";\"other\"\n\"2622310\";\"Gmina Farso\";\"other\"\n\"2622310\";\"Gmina Farsø\";\"other\"\n\"2622369\";\"Fakse Ladeplads\";\"main\"\n\"2622369\";\"Faxe Havn\";\"other\"\n\"2622372\";\"Fakse\";\"main\"\n\"2622372\";\"Faxe\";\"other\"\n\"2622372\";\"Gmina Fakse\";\"other\"\n\"2622372\";\"Факсе\";\"other\"\n\"2622383\";\"Faaborg\";\"main\"\n\"2622383\";\"Fabberg\";\"other\"\n\"2622383\";\"Faborg\";\"other\"\n\"2622383\";\"Fåborg\";\"other\"\n\"2622418\";\"Espergærde\";\"main\"\n\"2622418\";\"Espergaerde\";\"ascii\"\n\"2622418\";\"Espergjaerde\";\"other\"\n\"2622418\";\"Espergjærde\";\"other\"\n\"2622447\";\"Esbjerg\";\"main\"\n\"2622447\";\"Ehsberg\";\"other\"\n\"2622447\";\"Esbjaerg\";\"other\"\n\"2622447\";\"Esbjerga\";\"other\"\n\"2622447\";\"Esbjærg\";\"other\"\n\"2622447\";\"Эсберг\";\"other\"\n\"2622664\";\"Ejby\";\"main\"\n\"2622665\";\"Ejby\";\"main\"\n\"2622666\";\"Ejby\";\"main\"\n\"2622666\";\"Egby\";\"other\"\n\"2622666\";\"Gammel Ejby\";\"other\"\n\"2622686\";\"Egtved\";\"main\"\n\"2622686\";\"Gmina Egtved\";\"other\"\n\"2622793\";\"Ebeltoft\";\"main\"\n\"2622793\";\"AEbeltoft\";\"other\"\n\"2622793\";\"Ehbel'toft\";\"other\"\n\"2622793\";\"Æbeltoft\";\"other\"\n\"2622793\";\"Эбельтофт\";\"other\"\n\"2622854\";\"Dybbøl\";\"main\"\n\"2622854\";\"Dybbol\";\"ascii\"\n\"2622888\";\"Dronninglund\";\"main\"\n\"2622888\";\"Gmina Dronninglund\";\"other\"\n\"2622937\";\"Dragør\";\"main\"\n\"2622937\";\"Dragor\";\"ascii\"\n\"2622937\";\"Dragoer\";\"other\"\n\"2622937\";\"Dragör\";\"other\"\n\"2623028\";\"Dianalund\";\"main\"\n\"2623183\";\"Christiansfeld\";\"main\"\n\"2623183\";\"Gmina Christiansfeld\";\"other\"\n\"2623188\";\"Charlottenlund\";\"main\"\n\"2623247\";\"Bullerup\";\"main\"\n\"2623306\";\"Brovst\";\"main\"\n\"2623306\";\"Gmina Brovst\";\"other\"\n\"2623321\";\"Brørup\";\"main\"\n\"2623321\";\"Brorup\";\"ascii\"\n\"2623337\";\"Brønderslev\";\"main\"\n\"2623337\";\"Bronderslev\";\"ascii\"\n\"2623394\";\"Broager\";\"main\"\n\"2623394\";\"Broacker\";\"other\"\n\"2623394\";\"Broager Sogn\";\"other\"\n\"2623394\";\"Gmina Broager\";\"other\"\n\"2623441\";\"Brejning\";\"main\"\n\"2623441\";\"Bregning\";\"other\"\n\"2623516\";\"Brædstrup\";\"main\"\n\"2623516\";\"Braedstrup\";\"ascii\"\n\"2623516\";\"Bredstrup\";\"other\"\n\"2623554\";\"Brande\";\"main\"\n\"2623554\";\"Gmina Brande\";\"other\"\n\"2623570\";\"Bramming\";\"main\"\n\"2623570\";\"Bramminge\";\"other\"\n\"2623570\";\"Bramminge Stationsby\";\"other\"\n\"2623570\";\"Gmina Bramming\";\"other\"\n\"2623628\";\"Borup\";\"main\"\n\"2623694\";\"Bording Kirkeby\";\"main\"\n\"2623694\";\"Bording\";\"other\"\n\"2623694\";\"Borring\";\"other\"\n\"2623736\";\"Børkop\";\"main\"\n\"2623736\";\"Borkop\";\"ascii\"\n\"2623857\";\"Bogense\";\"main\"\n\"2623857\";\"Богенсе\";\"other\"\n\"2623905\";\"Blovstrød\";\"main\"\n\"2623905\";\"Blovstrod\";\"ascii\"\n\"2623978\";\"Bjæverskov\";\"main\"\n\"2623978\";\"Bjaeverskov\";\"ascii\"\n\"2623978\";\"Bjeverskov\";\"other\"\n\"2624019\";\"Bjerringbro\";\"main\"\n\"2624112\";\"Birkerød\";\"main\"\n\"2624112\";\"Birkerod\";\"ascii\"\n\"2624144\";\"Billund\";\"main\"\n\"2624144\";\"Gmina Billund\";\"other\"\n\"2624193\";\"Bellinge\";\"main\"\n\"2624212\";\"Beder\";\"main\"\n\"2624212\";\"Бедер\";\"other\"\n\"2624341\";\"Ballerup\";\"main\"\n\"2624341\";\"Balleru\";\"other\"\n\"2624419\";\"Avlum\";\"main\"\n\"2624419\";\"Aulum\";\"other\"\n\"2624435\";\"Auning\";\"main\"\n\"2624435\";\"Avning\";\"other\"\n\"2624439\";\"Augustenborg\";\"main\"\n\"2624439\";\"Gmina Augustenborg\";\"other\"\n\"2624439\";\"Аугустенборг\";\"other\"\n\"2624499\";\"Assentoft\";\"main\"\n\"2624502\";\"Assens\";\"main\"\n\"2624502\";\"Ассенс\";\"other\"\n\"2624521\";\"Asnæs\";\"main\"\n\"2624521\";\"Asnaes\";\"ascii\"\n\"2624587\";\"Årup\";\"main\"\n\"2624587\";\"Arup\";\"ascii\"\n\"2624587\";\"Aarup\";\"other\"\n\"2624595\";\"Årslev\";\"main\"\n\"2624595\";\"Arslev\";\"ascii\"\n\"2624595\";\"Aarslev\";\"other\"\n\"2624602\";\"Aars\";\"main\"\n\"2624602\";\"Ars\";\"other\"\n\"2624602\";\"Gmina Aars\";\"other\"\n\"2624602\";\"Års\";\"other\"\n\"2624652\";\"Århus\";\"main\"\n\"2624652\";\"Arhus\";\"ascii\"\n\"2624652\";\"Aarhus\";\"other\"\n\"2624652\";\"Aarhusium\";\"other\"\n\"2624652\";\"Arhuzo\";\"other\"\n\"2624652\";\"Arkhus\";\"other\"\n\"2624652\";\"Arosar\";\"other\"\n\"2624652\";\"Orhusa\";\"other\"\n\"2624652\";\"Orhūsa\";\"other\"\n\"2624652\";\"Orkhus\";\"other\"\n\"2624652\";\"ao hu si\";\"other\"\n\"2624652\";\"ofusu\";\"other\"\n\"2624652\";\"Árósar\";\"other\"\n\"2624652\";\"Архус\";\"other\"\n\"2624652\";\"Орхус\";\"other\"\n\"2624652\";\"אורהוס\";\"other\"\n\"2624652\";\"オーフス\";\"other\"\n\"2624652\";\"奥胡斯\";\"other\"\n\"2624660\";\"Arden\";\"main\"\n\"2624660\";\"Arden Stationsby\";\"other\"\n\"2624819\";\"Allingåbro\";\"main\"\n\"2624819\";\"Allingabro\";\"ascii\"\n\"2624819\";\"Allingaabro\";\"other\"\n\"2624864\";\"Ålestrup\";\"main\"\n\"2624864\";\"Alestrup\";\"ascii\"\n\"2624864\";\"Aalestrup\";\"other\"\n\"2624886\";\"Aalborg\";\"main\"\n\"2624886\";\"Alaborg\";\"other\"\n\"2624886\";\"Alborg\";\"other\"\n\"2624886\";\"Ol'borg\";\"other\"\n\"2624886\";\"Olborg\";\"other\"\n\"2624886\";\"Olborga\";\"other\"\n\"2624886\";\"orubo\";\"other\"\n\"2624886\";\"Álaborg\";\"other\"\n\"2624886\";\"Ålborg\";\"other\"\n\"2624886\";\"Олборг\";\"other\"\n\"2624886\";\"Ольборг\";\"other\"\n\"2624886\";\"オールボー\";\"other\"\n\"2624906\";\"Albertslund\";\"main\"\n\"2624906\";\"Al'bertslunn\";\"other\"\n\"2624906\";\"Gmina Albertslund\";\"other\"\n\"2624906\";\"Альбертслунн\";\"other\"\n\"2624929\";\"Åkirkeby\";\"main\"\n\"2624929\";\"Akirkeby\";\"ascii\"\n\"2624929\";\"Aakirkeby\";\"other\"\n\"2625037\";\"Åbybro\";\"main\"\n\"2625037\";\"Abybro\";\"ascii\"\n\"2625037\";\"Aabybro\";\"other\"\n\"2625037\";\"Gmina Aabybro\";\"other\"\n\"2625070\";\"Aabenraa\";\"main\"\n\"2625070\";\"Abenra\";\"other\"\n\"2625070\";\"Abenrá\";\"other\"\n\"2625070\";\"Abrenra\";\"other\"\n\"2625070\";\"Apenrade\";\"other\"\n\"2625070\";\"Åbenrå\";\"other\"\n\"2625070\";\"Åbrenrå\";\"other\"\n\"7290267\";\"Læsø\";\"main\"\n\"7290267\";\"Laeso\";\"ascii\"\n\"3575565\";\"Woodford Hill\";\"main\"\n\"3575568\";\"Wesley\";\"main\"\n\"3575568\";\"La Soie\";\"other\"\n\"3575602\";\"Soufrière\";\"main\"\n\"3575602\";\"Soufriere\";\"ascii\"\n\"3575612\";\"Salisbury\";\"main\"\n\"3575612\";\"Baroui\";\"other\"\n\"3575612\";\"Barroui\";\"other\"\n\"3575624\";\"Saint Joseph\";\"main\"\n\"3575635\";\"Roseau\";\"main\"\n\"3575635\";\"Charlotte Town\";\"other\"\n\"3575635\";\"Rozo\";\"other\"\n\"3575635\";\"lojo\";\"other\"\n\"3575635\";\"luo suo\";\"other\"\n\"3575635\";\"rozo\";\"other\"\n\"3575635\";\"rwsw\";\"other\"\n\"3575635\";\"Ροζό\";\"other\"\n\"3575635\";\"רוסאו\";\"other\"\n\"3575635\";\"روسو\";\"other\"\n\"3575635\";\"ሮዞ\";\"other\"\n\"3575635\";\"ロゾー\";\"other\"\n\"3575635\";\"羅索\";\"other\"\n\"3575635\";\"로조\";\"other\"\n\"3575654\";\"Portsmouth\";\"main\"\n\"3575654\";\"Grand-Anse\";\"other\"\n\"3575660\";\"Pointe Michel\";\"main\"\n\"3575660\";\"La Pointe\";\"other\"\n\"3575721\";\"Marigot\";\"main\"\n\"3575721\";\"Petit Marigot\";\"other\"\n\"3575733\";\"Mahaut\";\"main\"\n\"3575755\";\"La Plaine\";\"main\"\n\"3575870\";\"Castle Bruce\";\"main\"\n\"3575882\";\"Calibishie\";\"main\"\n\"3575882\";\"Calibishi\";\"other\"\n\"3575899\";\"Berekua\";\"main\"\n\"3575899\";\"Grand Baie\";\"other\"\n\"3575899\";\"Grand Bay\";\"other\"\n\"3491736\";\"Yayas de Viajama\";\"main\"\n\"3491736\";\"Las Yayas\";\"other\"\n\"3491736\";\"Las Yayas de Viajama\";\"other\"\n\"3491796\";\"Yamasá\";\"main\"\n\"3491796\";\"Yamasa\";\"ascii\"\n\"3491796\";\"Villa de Yamasa\";\"other\"\n\"3491796\";\"Villa de Yamasá\";\"other\"\n\"3491807\";\"Yaguate\";\"main\"\n\"3491807\";\"Villa de Yaguate\";\"other\"\n\"3491905\";\"Villa Vásquez\";\"main\"\n\"3491905\";\"Villa Vasquez\";\"ascii\"\n\"3491905\";\"Lucas Evangelista de Pena\";\"other\"\n\"3491905\";\"Lucas Evangelista de Peña\";\"other\"\n\"3491905\";\"Villa Isabel\";\"other\"\n\"3491905\";\"Villa Vazquez\";\"other\"\n\"3491905\";\"Villa Vázquez\";\"other\"\n\"3491908\";\"Villa Tapia\";\"main\"\n\"3491914\";\"Villarpando\";\"main\"\n\"3491916\";\"Villa Riva\";\"main\"\n\"3491916\";\"Riva\";\"other\"\n\"3491916\";\"Rivas\";\"other\"\n\"3491916\";\"Villa Rivas\";\"other\"\n\"3491927\";\"Villa Jaragua\";\"main\"\n\"3491927\";\"Jaragua\";\"other\"\n\"3491927\";\"Jose Trujillo Valdez\";\"other\"\n\"3491927\";\"José Trujillo Valdéz\";\"other\"\n\"3491927\";\"Villa Jose Trujillo Valdez\";\"other\"\n\"3491927\";\"Villa José Trujillo Valdéz\";\"other\"\n\"3491929\";\"Villa Isabela\";\"main\"\n\"3491929\";\"La Isabela\";\"other\"\n\"3491937\";\"Villa González\";\"main\"\n\"3491937\";\"Villa Gonzalez\";\"ascii\"\n\"3491937\";\"Las Lagunas\";\"other\"\n\"3491943\";\"Villa Elisa\";\"main\"\n\"3491948\";\"Villa Bisonó\";\"main\"\n\"3491948\";\"Villa Bisono\";\"ascii\"\n\"3491948\";\"Bisono\";\"other\"\n\"3491948\";\"Bisonó\";\"other\"\n\"3491948\";\"Jose E. Bisono\";\"other\"\n\"3491948\";\"Jose Elias Bisono\";\"other\"\n\"3491948\";\"José E. Bisonó\";\"other\"\n\"3491948\";\"José Eliás Bisonó\";\"other\"\n\"3491952\";\"Villa Altagracia\";\"main\"\n\"3491952\";\"Vil'ja-Al'tagrasija\";\"other\"\n\"3491952\";\"Вилья-Альтаграсия\";\"other\"\n\"3492030\";\"Vicente Noble\";\"main\"\n\"3492030\";\"Villa de Vicente Noble\";\"other\"\n\"3492073\";\"Veragua Arriba\";\"main\"\n\"3492073\";\"Veragua\";\"other\"\n\"3492123\";\"Vallejuelo\";\"main\"\n\"3492367\";\"Tireo Arriba\";\"main\"\n\"3492477\";\"Tenares\";\"main\"\n\"3492477\";\"Villa Tenares\";\"other\"\n\"3492477\";\"Villa de Tenares\";\"other\"\n\"3492517\";\"Tamboril\";\"main\"\n\"3492517\";\"Pena\";\"other\"\n\"3492517\";\"Peña\";\"other\"\n\"3492520\";\"Tamayo\";\"main\"\n\"3492557\";\"Tábara Arriba\";\"main\"\n\"3492557\";\"Tabara Arriba\";\"ascii\"\n\"3492557\";\"Villa Tabara Arriba\";\"other\"\n\"3492557\";\"Villa Tábara Arriba\";\"other\"\n\"3492627\";\"Sosúa\";\"main\"\n\"3492627\";\"Sosua\";\"ascii\"\n\"3492897\";\"San Víctor Arriba\";\"main\"\n\"3492897\";\"San Victor Arriba\";\"ascii\"\n\"3492897\";\"San Victor\";\"other\"\n\"3492908\";\"Santo Domingo\";\"main\"\n\"3492908\";\"Ciudad Trujillo\";\"other\"\n\"3492908\";\"Saint Domingue\";\"other\"\n\"3492908\";\"Santa Domingo\";\"other\"\n\"3492908\";\"Santo Domingo City\";\"other\"\n\"3492908\";\"Santo Domingo de Guzman\";\"other\"\n\"3492908\";\"Santo Domingo de Guzmán\";\"other\"\n\"3492908\";\"Santo Ntomin'nko\";\"other\"\n\"3492908\";\"Santo-Domingo\";\"other\"\n\"3492908\";\"Σάντο Ντομίνγκο\";\"other\"\n\"3492908\";\"Санто-Доминго\";\"other\"\n\"3492914\";\"Santiago de los Caballeros\";\"main\"\n\"3492914\";\"Sant'jago-de-los-Kabal'eros\";\"other\"\n\"3492914\";\"Santiago\";\"other\"\n\"3492914\";\"Сантьяго-де-лос-Кабальерос\";\"other\"\n\"3492984\";\"Santa Cruz de El Seibo\";\"main\"\n\"3492984\";\"El Seibo\";\"other\"\n\"3492984\";\"Santa Cruz del Seibo\";\"other\"\n\"3492984\";\"Santa Cruz del Seybo\";\"other\"\n\"3492984\";\"Seibo\";\"other\"\n\"3492984\";\"Seybo\";\"other\"\n\"3492985\";\"Santa Cruz de Barahona\";\"main\"\n\"3492985\";\"Barahona\";\"other\"\n\"3492985\";\"Santa-Krus-de-Baraona\";\"other\"\n\"3492985\";\"Санта-Крус-де-Бараона\";\"other\"\n\"3492997\";\"Santa Bárbara de Samaná\";\"main\"\n\"3492997\";\"Santa Barbara de Samana\";\"ascii\"\n\"3492997\";\"Samana\";\"other\"\n\"3492997\";\"Samaná\";\"other\"\n\"3493022\";\"San Rafael del Yuma\";\"main\"\n\"3493022\";\"San Rafael de Yuma\";\"other\"\n\"3493022\";\"Yuma\";\"other\"\n\"3493032\";\"San Pedro de Macorís\";\"main\"\n\"3493032\";\"San Pedro de Macoris\";\"ascii\"\n\"3493032\";\"San Pedro Macoris\";\"other\"\n\"3493081\";\"San Juan de la Maguana\";\"main\"\n\"3493081\";\"San Juan\";\"other\"\n\"3493100\";\"San José de Ocoa\";\"main\"\n\"3493100\";\"San Jose de Ocoa\";\"ascii\"\n\"3493103\";\"San José de Las Matas\";\"main\"\n\"3493103\";\"San Jose de Las Matas\";\"ascii\"\n\"3493103\";\"San Jose de los Matas\";\"other\"\n\"3493103\";\"San José de los Matas\";\"other\"\n\"3493143\";\"San Gregorio de Nigua\";\"main\"\n\"3493146\";\"San Francisco de Macorís\";\"main\"\n\"3493146\";\"San Francisco de Macoris\";\"ascii\"\n\"3493174\";\"San Fernando de Monte Cristi\";\"main\"\n\"3493174\";\"Monte Cristi\";\"other\"\n\"3493174\";\"Monte Cristy\";\"other\"\n\"3493174\";\"Monte-Christi\";\"other\"\n\"3493175\";\"Puerto Plata\";\"main\"\n\"3493175\";\"Port Plata\";\"other\"\n\"3493175\";\"San Felipe de Puerto Plata\";\"other\"\n\"3493198\";\"Sánchez\";\"main\"\n\"3493198\";\"Sanchez\";\"ascii\"\n\"3493240\";\"Salvaleón de Higüey\";\"main\"\n\"3493240\";\"Salvaleon de Higuey\";\"ascii\"\n\"3493240\";\"Higueey\";\"other\"\n\"3493240\";\"Higuey\";\"other\"\n\"3493240\";\"Higüey\";\"other\"\n\"3493240\";\"Salvaleon de Higueey\";\"other\"\n\"3493271\";\"Salsipuedes\";\"main\"\n\"3493383\";\"Sabaneta\";\"main\"\n\"3493383\";\"San Ignacio de Sabaneta\";\"other\"\n\"3493383\";\"Santiago Rodriguez\";\"other\"\n\"3493383\";\"Santiago Rodríguez\";\"other\"\n\"3493410\";\"Sabana Yegua\";\"main\"\n\"3493410\";\"Sabaneta Yegua\";\"other\"\n\"3493478\";\"Sabana Iglesia\";\"main\"\n\"3493480\";\"Sabana Grande de Palenque\";\"main\"\n\"3493480\";\"Sabana Grande\";\"other\"\n\"3493480\";\"Sabana Grande Palenque\";\"other\"\n\"3493480\";\"Villa de Sabana Grande de Palenque\";\"other\"\n\"3493482\";\"Sabana Grande de Boyá\";\"main\"\n\"3493482\";\"Sabana Grande de Boya\";\"ascii\"\n\"3493482\";\"Sabana Grande\";\"other\"\n\"3493482\";\"Sabana Grande Boya\";\"other\"\n\"3493482\";\"Sabana Grande Boyá\";\"other\"\n\"3493482\";\"Villa de Sabana Grande de Boya\";\"other\"\n\"3493482\";\"Villa de Sabana Grande de Boyá\";\"other\"\n\"3493537\";\"Sabana del Puerto\";\"main\"\n\"3493568\";\"Sabana de La Mar\";\"main\"\n\"3493568\";\"Sabana la Mar\";\"other\"\n\"3493568\";\"Savana la Mar\";\"other\"\n\"3493601\";\"Sabana Buey\";\"main\"\n\"3493732\";\"Río Verde Arriba\";\"main\"\n\"3493732\";\"Rio Verde Arriba\";\"ascii\"\n\"3493743\";\"Río San Juan\";\"main\"\n\"3493743\";\"Rio San Juan\";\"ascii\"\n\"3493743\";\"Laguna Grigri\";\"other\"\n\"3493756\";\"Río Limpio\";\"main\"\n\"3493756\";\"Rio Limpio\";\"ascii\"\n\"3493756\";\"Colonia Rio Limpio\";\"other\"\n\"3493756\";\"Colonia Río Limpio\";\"other\"\n\"3493873\";\"Rincón\";\"main\"\n\"3493873\";\"Rincon\";\"ascii\"\n\"3493887\";\"Restauración\";\"main\"\n\"3493887\";\"Restauracion\";\"ascii\"\n\"3494064\";\"Ramón Santana\";\"main\"\n\"3494064\";\"Ramon Santana\";\"ascii\"\n\"3494121\";\"Quisqueya\";\"main\"\n\"3494121\";\"Ingenio Quisquella\";\"other\"\n\"3494242\";\"Punta Cana\";\"main\"\n\"3494242\";\"Punta Kana\";\"other\"\n\"3494242\";\"Пунта Кана\";\"other\"\n\"3494329\";\"Pueblo Viejo\";\"main\"\n\"3494509\";\"Postrer Río\";\"main\"\n\"3494509\";\"Postrer Rio\";\"ascii\"\n\"3494509\";\"Postrer Rios\";\"other\"\n\"3494509\";\"Postrer Ríos\";\"other\"\n\"3494584\";\"Polo\";\"main\"\n\"3494655\";\"Pizarrete\";\"main\"\n\"3494768\";\"Pimentel\";\"main\"\n\"3494768\";\"Pimental\";\"other\"\n\"3494863\";\"Piedra Blanca\";\"main\"\n\"3494979\";\"Pescadería\";\"main\"\n\"3494979\";\"Pescaderia\";\"ascii\"\n\"3495020\";\"Peralta\";\"main\"\n\"3495020\";\"Pinar de Peralta\";\"other\"\n\"3495024\";\"Pepillo Salcedo\";\"main\"\n\"3495024\";\"Manzanillo\";\"other\"\n\"3495024\";\"Puerto Alto\";\"other\"\n\"3495098\";\"Pedro Santana\";\"main\"\n\"3495102\";\"Pedro Sánchez\";\"main\"\n\"3495102\";\"Pedro Sanchez\";\"ascii\"\n\"3495102\";\"Pedro Sanches\";\"other\"\n\"3495111\";\"Pedro García\";\"main\"\n\"3495111\";\"Pedro Garcia\";\"ascii\"\n\"3495111\";\"Padre Garcia\";\"other\"\n\"3495111\";\"Padre García\";\"other\"\n\"3495115\";\"Pedro Corto\";\"main\"\n\"3495137\";\"Pedernales\";\"main\"\n\"3495137\";\"Anse a Pitre\";\"other\"\n\"3495137\";\"Anse à Pitre\";\"other\"\n\"3495137\";\"Puerto de Pedernales\";\"other\"\n\"3495159\";\"Paya\";\"main\"\n\"3495256\";\"Partido\";\"main\"\n\"3495272\";\"Paraíso\";\"main\"\n\"3495272\";\"Paraiso\";\"ascii\"\n\"3495546\";\"Palmar de Ocoa\";\"main\"\n\"3495555\";\"Palmar Arriba\";\"main\"\n\"3495664\";\"Padre Las Casas\";\"main\"\n\"3495664\";\"Padre de las Casas\";\"other\"\n\"3495664\";\"Villa de Padre Las Casas\";\"other\"\n\"3495684\";\"Oviedo\";\"main\"\n\"3495684\";\"Trujin\";\"other\"\n\"3495694\";\"Otra Banda\";\"main\"\n\"3495811\";\"Nizao\";\"main\"\n\"3495811\";\"Hizao\";\"other\"\n\"3495811\";\"Villa de Nizao\";\"other\"\n\"3495857\";\"Neiba\";\"main\"\n\"3495857\";\"Neyba\";\"other\"\n\"3496021\";\"Nagua\";\"main\"\n\"3496021\";\"Ciudad de Nagua\";\"other\"\n\"3496021\";\"Julia Molina\";\"other\"\n\"3496021\";\"Villa Julia Molina\";\"other\"\n\"3496021\";\"callejon a\";\"other\"\n\"3496021\";\"Нагуа\";\"other\"\n\"3496134\";\"Monte Plata\";\"main\"\n\"3496134\";\"San Antonio de Monte Plata\";\"other\"\n\"3496134\";\"Монте Плата\";\"other\"\n\"3496284\";\"Monción\";\"main\"\n\"3496284\";\"Moncion\";\"ascii\"\n\"3496284\";\"Benito Moncion\";\"other\"\n\"3496284\";\"Benito Monción\";\"other\"\n\"3496284\";\"Villa de Moncion\";\"other\"\n\"3496284\";\"Villa de Monción\";\"other\"\n\"3496331\";\"Moca\";\"main\"\n\"3496396\";\"Miches\";\"main\"\n\"3496396\";\"El Jovero\";\"other\"\n\"3496396\";\"Jovero\";\"other\"\n\"3496446\";\"Mella\";\"main\"\n\"3496446\";\"Los Yesos\";\"other\"\n\"3496574\";\"Matayaya\";\"main\"\n\"3496601\";\"Matanzas\";\"main\"\n\"3496601\";\"Matanza\";\"other\"\n\"3496831\";\"Mao\";\"main\"\n\"3496831\";\"Valverde\";\"other\"\n\"3496831\";\"Мао\";\"other\"\n\"3497176\";\"Majagual\";\"main\"\n\"3497204\";\"Maizal\";\"main\"\n\"3497350\";\"Luperón\";\"main\"\n\"3497350\";\"Luperon\";\"ascii\"\n\"3497350\";\"Blanco\";\"other\"\n\"3497350\";\"Puerto de Luperon\";\"other\"\n\"3497564\";\"Los Ríos\";\"main\"\n\"3497564\";\"Los Rios\";\"ascii\"\n\"3498191\";\"Los Llanos\";\"main\"\n\"3498191\";\"San Jose de Los Llanos\";\"other\"\n\"3498191\";\"San José de Los Llanos\";\"other\"\n\"3498418\";\"Los Hidalgos\";\"main\"\n\"3498418\";\"Los Hidalagos\";\"other\"\n\"3499230\";\"Los Botados\";\"main\"\n\"3499230\";\"El Centro\";\"other\"\n\"3499602\";\"Loma de Cabrera\";\"main\"\n\"3499602\";\"Villa de Loma de Cabrera\";\"other\"\n\"3499748\";\"Licey al Medio\";\"main\"\n\"3500013\";\"La Uvilla\";\"main\"\n\"3500013\";\"Ubilla\";\"other\"\n\"3500013\";\"Uvilla\";\"other\"\n\"3500243\";\"Las Terrenas\";\"main\"\n\"3500243\";\"La Terenas\";\"other\"\n\"3500243\";\"Las Terenas\";\"other\"\n\"3500243\";\"Las Terreras\";\"other\"\n\"3500243\";\"Laterriena\";\"other\"\n\"3500243\";\"Terrenas\";\"other\"\n\"3500261\";\"Las Salinas\";\"main\"\n\"3500261\";\"La Salina\";\"other\"\n\"3500367\";\"Las Matas de Santa Cruz\";\"main\"\n\"3500367\";\"La Mata de Santa Cruz\";\"other\"\n\"3500367\";\"Matas de Santa Cruz\";\"other\"\n\"3500370\";\"Las Matas de Farfán\";\"main\"\n\"3500370\";\"Las Matas de Farfan\";\"ascii\"\n\"3500370\";\"Las Matas\";\"other\"\n\"3500370\";\"Las-Matas-de-Farfan\";\"other\"\n\"3500370\";\"Matas de Farfan\";\"other\"\n\"3500370\";\"Лас-Матас-де-Фарфан\";\"other\"\n\"3500518\";\"Las Guáranas\";\"main\"\n\"3500518\";\"Las Guaranas\";\"ascii\"\n\"3500641\";\"Las Charcas\";\"main\"\n\"3500957\";\"La Romana\";\"main\"\n\"3500957\";\"La-Romana\";\"other\"\n\"3500957\";\"Romana\";\"other\"\n\"3500957\";\"Ла-Романа\";\"other\"\n\"3502373\";\"Laguna Salada\";\"main\"\n\"3502373\";\"Villa de Laguna Salada\";\"other\"\n\"3502745\";\"La Entrada\";\"main\"\n\"3502786\";\"La Descubierta\";\"main\"\n\"3502786\";\"Descubierta\";\"other\"\n\"3503100\";\"La Ciénaga\";\"main\"\n\"3503100\";\"La Cienaga\";\"ascii\"\n\"3503100\";\"La Cienega\";\"other\"\n\"3503100\";\"La Ciénega\";\"other\"\n\"3503256\";\"La Caya\";\"main\"\n\"3503338\";\"La Canela\";\"main\"\n\"3503338\";\"Canela\";\"other\"\n\"3503782\";\"Juncalito Abajo\";\"main\"\n\"3503782\";\"Juncalito\";\"other\"\n\"3503811\";\"Juan Santiago\";\"main\"\n\"3503845\";\"Juan López Abajo\";\"main\"\n\"3503845\";\"Juan Lopez Abajo\";\"ascii\"\n\"3503900\";\"Juan de Herrera\";\"main\"\n\"3503910\";\"Juancho\";\"main\"\n\"3503910\";\"Juana\";\"other\"\n\"3503950\";\"Juan Adrián\";\"main\"\n\"3503950\";\"Juan Adrian\";\"ascii\"\n\"3503950\";\"Juan Aldian\";\"other\"\n\"3503950\";\"Juan Aldián\";\"other\"\n\"3504033\";\"Joba Arriba\";\"main\"\n\"3504033\";\"Jobo Arriba\";\"other\"\n\"3504077\";\"Jimaní\";\"main\"\n\"3504077\";\"Jimani\";\"ascii\"\n\"3504077\";\"San Jose de Jimani\";\"other\"\n\"3504077\";\"San José de Jimaní\";\"other\"\n\"3504080\";\"Jima Abajo\";\"main\"\n\"3504080\";\"Jima\";\"other\"\n\"3504097\";\"Jicomé\";\"main\"\n\"3504097\";\"Jicome\";\"ascii\"\n\"3504158\";\"Jarabacoa\";\"main\"\n\"3504158\";\"Kharabakoa\";\"other\"\n\"3504158\";\"Харабакоа\";\"other\"\n\"3504160\";\"Jaquimeyes\";\"main\"\n\"3504160\";\"Jaquimelles\";\"other\"\n\"3504160\";\"Las Jaquimelles\";\"other\"\n\"3504160\";\"Los Jaquimelles\";\"other\"\n\"3504160\";\"Los Jaquimeyes\";\"other\"\n\"3504175\";\"Jamao al Norte\";\"main\"\n\"3504175\";\"Jamao\";\"other\"\n\"3504175\";\"Jamao Norte\";\"other\"\n\"3504175\";\"Jamao al Morte\";\"other\"\n\"3504193\";\"Jaibón\";\"main\"\n\"3504193\";\"Jaibon\";\"ascii\"\n\"3504193\";\"Jaibar\";\"other\"\n\"3504332\";\"Imbert\";\"main\"\n\"3504332\";\"Bajabonico\";\"other\"\n\"3504438\";\"Hostos\";\"main\"\n\"3504438\";\"Villa de Hostos\";\"other\"\n\"3504466\";\"Hondo Valle\";\"main\"\n\"3504765\";\"Hato Mayor del Rey\";\"main\"\n\"3504765\";\"Hato Mayor\";\"other\"\n\"3504793\";\"Hatillo Palma\";\"main\"\n\"3504951\";\"Guaymate\";\"main\"\n\"3504951\";\"Guaimate\";\"other\"\n\"3504983\";\"Guayabo Dulce\";\"main\"\n\"3504983\";\"Guajabo Dulce\";\"other\"\n\"3505029\";\"Guayabal\";\"main\"\n\"3505034\";\"Guatapanal\";\"main\"\n\"3505128\";\"Guananico\";\"main\"\n\"3505432\";\"Gonzalo\";\"main\"\n\"3505432\";\"Batey Gonzalo\";\"other\"\n\"3505488\";\"Gaspar Hernández\";\"main\"\n\"3505488\";\"Gaspar Hernandez\";\"ascii\"\n\"3505488\";\"Jaspar Hernandez\";\"other\"\n\"3505517\";\"Galván\";\"main\"\n\"3505517\";\"Galvan\";\"ascii\"\n\"3505517\";\"Galvah\";\"other\"\n\"3505517\";\"Galváh\";\"other\"\n\"3505612\";\"Fundación\";\"main\"\n\"3505612\";\"Fundacion\";\"ascii\"\n\"3505778\";\"Fantino\";\"main\"\n\"3505778\";\"Villa de Fantino\";\"other\"\n\"3505819\";\"Estero Hondo\";\"main\"\n\"3505825\";\"Estebanía\";\"main\"\n\"3505825\";\"Estebania\";\"ascii\"\n\"3505855\";\"Esperanza\";\"main\"\n\"3505861\";\"Esperalvillo\";\"main\"\n\"3505861\";\"El Centro\";\"other\"\n\"3505861\";\"El Esperalvillo\";\"other\"\n\"3505861\";\"Esperalvilla\";\"other\"\n\"3505861\";\"Peraldillo\";\"other\"\n\"3505861\";\"Peralvillo\";\"other\"\n\"3505947\";\"Enriquillo\";\"main\"\n\"3505947\";\"Enriquilla\";\"other\"\n\"3505947\";\"Petit Trou\";\"other\"\n\"3506034\";\"El Valle\";\"main\"\n\"3506034\";\"Villa Trujillo\";\"other\"\n\"3506415\";\"El Puerto\";\"main\"\n\"3506541\";\"El Pino\";\"main\"\n\"3506630\";\"El Peñón\";\"main\"\n\"3506630\";\"El Penon\";\"ascii\"\n\"3506630\";\"Penon\";\"other\"\n\"3506630\";\"Peñón\";\"other\"\n\"3506719\";\"El Palmar\";\"main\"\n\"3506719\";\"Palmar\";\"other\"\n\"3507117\";\"El Llano\";\"main\"\n\"3507461\";\"El Guayabal\";\"main\"\n\"3507461\";\"Guayabal\";\"other\"\n\"3507628\";\"El Factor\";\"main\"\n\"3508083\";\"El Carril\";\"main\"\n\"3508083\";\"El Corral\";\"other\"\n\"3508286\";\"El Cacao\";\"main\"\n\"3508286\";\"Los Cacaos\";\"other\"\n\"3508694\";\"Duvergé\";\"main\"\n\"3508694\";\"Duverge\";\"ascii\"\n\"3508694\";\"Las Damas\";\"other\"\n\"3508761\";\"Don Juan\";\"main\"\n\"3508952\";\"Dajabón\";\"main\"\n\"3508952\";\"Dajabon\";\"ascii\"\n\"3509191\";\"Cristóbal\";\"main\"\n\"3509191\";\"Cristobal\";\"ascii\"\n\"3509191\";\"San Cristobal\";\"other\"\n\"3509191\";\"San Cristóbal\";\"other\"\n\"3509207\";\"Cotuí\";\"main\"\n\"3509207\";\"Cotui\";\"ascii\"\n\"3509207\";\"Cotuy\";\"other\"\n\"3509363\";\"Constanza\";\"main\"\n\"3509363\";\"Costanza\";\"other\"\n\"3509363\";\"Konstancija\";\"other\"\n\"3509363\";\"Villa de Constanza\";\"other\"\n\"3509363\";\"Констанция\";\"other\"\n\"3509382\";\"Concepción de La Vega\";\"main\"\n\"3509382\";\"Concepcion de La Vega\";\"ascii\"\n\"3509382\";\"Concepcion de la Vega\";\"other\"\n\"3509382\";\"Concepción de la Vega\";\"other\"\n\"3509382\";\"La Vega\";\"other\"\n\"3509386\";\"Comendador\";\"main\"\n\"3509386\";\"Comendado\";\"other\"\n\"3509386\";\"Elias Pena\";\"other\"\n\"3509386\";\"Elias Peña\";\"other\"\n\"3509386\";\"Elias Pina\";\"other\"\n\"3509386\";\"Elías Piña\";\"other\"\n\"3509823\";\"Cevicos\";\"main\"\n\"3509823\";\"Villa de Cevicos\";\"other\"\n\"3509882\";\"Cercado Abajo\";\"main\"\n\"3509882\";\"El Cercado Abajo\";\"other\"\n\"3509882\";\"El Sercado\";\"other\"\n\"3509989\";\"Cayetano Germosén\";\"main\"\n\"3509989\";\"Cayetano Germosen\";\"ascii\"\n\"3509989\";\"Cayetano Bermosen\";\"other\"\n\"3509989\";\"Gayetano Germosen\";\"other\"\n\"3509989\";\"Villa de Cayetano Germosen\";\"other\"\n\"3509989\";\"Villa de Cayetano Germosén\";\"other\"\n\"3510065\";\"Castillo\";\"main\"\n\"3510065\";\"Cachanes\";\"other\"\n\"3510065\";\"Villa de Castillo\";\"other\"\n\"3510083\";\"Castañuelas\";\"main\"\n\"3510083\";\"Castanuelas\";\"ascii\"\n\"3510083\";\"Castanuela\";\"other\"\n\"3510083\";\"Castañuela\";\"other\"\n\"3510363\";\"Canoa\";\"main\"\n\"3510363\";\"La Canoa\";\"other\"\n\"3510553\";\"Cana Chapetón\";\"main\"\n\"3510553\";\"Cana Chapeton\";\"ascii\"\n\"3510637\";\"Cambita Garabitos\";\"main\"\n\"3510637\";\"Cambita\";\"other\"\n\"3510637\";\"Cambita Garabitas\";\"other\"\n\"3510637\";\"Cambita Garabito\";\"other\"\n\"3510822\";\"Cachón\";\"main\"\n\"3510822\";\"Cachon\";\"ascii\"\n\"3510822\";\"El Cachon\";\"other\"\n\"3510822\";\"El Cachón\";\"other\"\n\"3510874\";\"Cabrera\";\"main\"\n\"3510874\";\"Cabrar\";\"other\"\n\"3510885\";\"Cabral\";\"main\"\n\"3510885\";\"Rincon\";\"other\"\n\"3510885\";\"Rincon Nuevo\";\"other\"\n\"3510969\";\"Cabarete\";\"main\"\n\"3510969\";\"Kabarete\";\"other\"\n\"3510969\";\"Кабарете\";\"other\"\n\"3511233\";\"Bonao\";\"main\"\n\"3511233\";\"Banao\";\"other\"\n\"3511233\";\"Monsenor Nouel\";\"other\"\n\"3511233\";\"Monseñor Nouel\";\"other\"\n\"3511233\";\"Бонао\";\"other\"\n\"3511262\";\"Bohechío\";\"main\"\n\"3511262\";\"Bohechio\";\"ascii\"\n\"3511262\";\"Boechio\";\"other\"\n\"3511262\";\"Boechío\";\"other\"\n\"3511277\";\"Boca de Yuma\";\"main\"\n\"3511277\";\"Boca del Yuma\";\"other\"\n\"3511277\";\"Yuma\";\"other\"\n\"3511540\";\"Benemérita de San Cristóbal\";\"main\"\n\"3511540\";\"Benemerita de San Cristobal\";\"ascii\"\n\"3511540\";\"San Cristobal\";\"other\"\n\"3511540\";\"San Cristóbal\";\"other\"\n\"3511626\";\"Bayaguana\";\"main\"\n\"3511626\";\"San Juan Bautista de Bayaguana\";\"other\"\n\"3511626\";\"San Juan de Bayaguana\";\"other\"\n\"3512064\";\"Bánica\";\"main\"\n\"3512064\";\"Banica\";\"ascii\"\n\"3512067\";\"Baní\";\"main\"\n\"3512067\";\"Bani\";\"ascii\"\n\"3512067\";\"Ban\";\"other\"\n\"3512067\";\"Banti\";\"other\"\n\"3512067\";\"Бан\";\"other\"\n\"3512128\";\"Bajos de Haina\";\"main\"\n\"3512128\";\"Bajos de Jaina\";\"other\"\n\"3512166\";\"Baitoa\";\"main\"\n\"3512208\";\"Azua de Compostela\";\"main\"\n\"3512208\";\"Asua-de-Kompostela\";\"other\"\n\"3512208\";\"Azua\";\"other\"\n\"3512208\";\"Compostela de Azua\";\"other\"\n\"3512208\";\"Асуа-де-Компостела\";\"other\"\n\"3512332\";\"Arroyo Salado\";\"main\"\n\"3512332\";\"Paso del Rio\";\"other\"\n\"3512332\";\"Paso del Río\";\"other\"\n\"3512573\";\"Arenoso\";\"main\"\n\"3512573\";\"Majagual\";\"other\"\n\"3512720\";\"Amina\";\"main\"\n\"3512795\";\"Altamira\";\"main\"\n\"3512902\";\"Agua Santa del Yuna\";\"main\"\n\"3512902\";\"Trujillo del Yuna\";\"other\"\n\"2474141\";\"Boumerdas\";\"main\"\n\"2474141\";\"Bou-Merdes\";\"other\"\n\"2474141\";\"Bumerdes\";\"other\"\n\"2474141\";\"Cite de Boumerdes\";\"other\"\n\"2474141\";\"Cité de Boumerdes\";\"other\"\n\"2474141\";\"Le Rocher Noir\";\"other\"\n\"2474141\";\"Roche Noire\";\"other\"\n\"2474141\";\"Rocher Noir\";\"other\"\n\"2474141\";\"Бумердес\";\"other\"\n\"2474506\";\"Zeribet el Oued\";\"main\"\n\"2474506\";\"Zribet el Oued\";\"other\"\n\"2474583\";\"Zeralda\";\"main\"\n\"2474638\";\"Zemoura\";\"main\"\n\"2474638\";\"Zemmora\";\"other\"\n\"2475475\";\"Touggourt\";\"main\"\n\"2475475\";\"Tougourt\";\"other\"\n\"2475475\";\"Tuggurt\";\"other\"\n\"2475612\";\"Tolga\";\"main\"\n\"2475612\";\"Толга\";\"other\"\n\"2475687\";\"Tlemcen\";\"main\"\n\"2475687\";\"Tilimsan\";\"other\"\n\"2475687\";\"Tlemecen\";\"other\"\n\"2475687\";\"Tlemecén\";\"other\"\n\"2475687\";\"Tlemsen\";\"other\"\n\"2475687\";\"te lai mu sen\";\"other\"\n\"2475687\";\"tlmsan\";\"other\"\n\"2475687\";\"toremusen\";\"other\"\n\"2475687\";\"Тлемсен\";\"other\"\n\"2475687\";\"تلمسان\";\"other\"\n\"2475687\";\"トレムセン\";\"other\"\n\"2475687\";\"特莱姆森\";\"other\"\n\"2475740\";\"Tizi Rached\";\"main\"\n\"2475752\";\"Tizi-n-Tleta\";\"main\"\n\"2475764\";\"Tizi Gheniff\";\"main\"\n\"2475764\";\"Tizi Ghenif\";\"other\"\n\"2475764\";\"Tizi R'Nif\";\"other\"\n\"2475764\";\"Tizi Renif\";\"other\"\n\"2475764\";\"Tizi Rniff\";\"other\"\n\"2475764\";\"Tizi R’Nif\";\"other\"\n\"2475764\";\"Tizi-Reniff\";\"other\"\n\"2475921\";\"Tirmitine\";\"main\"\n\"2476396\";\"Timizart\";\"main\"\n\"2476403\";\"Timimoun\";\"main\"\n\"2476403\";\"Timmoun\";\"other\"\n\"2476412\";\"el hed\";\"main\"\n\"2476412\";\"El Maten\";\"other\"\n\"2476412\";\"Il Maten\";\"other\"\n\"2476412\";\"Il Matene\";\"other\"\n\"2476412\";\"Il Matten\";\"other\"\n\"2476412\";\"Timezrit Il Maten\";\"other\"\n\"2476915\";\"Theniet el Had\";\"main\"\n\"2476915\";\"Teniet el Haad\";\"other\"\n\"2476915\";\"Teniet el Had\";\"other\"\n\"2476915\";\"Teniet-el-Ha\";\"other\"\n\"2476917\";\"Thenia\";\"main\"\n\"2476917\";\"Menerville\";\"other\"\n\"2476917\";\"Ménerville\";\"other\"\n\"2476917\";\"Theniet Beni Aicha\";\"other\"\n\"2476917\";\"Theniet Béni Aicha\";\"other\"\n\"2477255\";\"Telerghma\";\"main\"\n\"2477255\";\"Telergma\";\"other\"\n\"2477462\";\"Tebesbest\";\"main\"\n\"2477528\";\"Tazoult-Lambese\";\"main\"\n\"2477528\";\"Lambese\";\"other\"\n\"2477528\";\"Lambèse\";\"other\"\n\"2477528\";\"Tazoult\";\"other\"\n\"2478216\";\"Tamanrasset\";\"main\"\n\"2478216\";\"Fort Laperine\";\"other\"\n\"2478216\";\"Fort Laperrine\";\"other\"\n\"2478216\";\"Tamahrasset\";\"other\"\n\"2478216\";\"Tamanghasset\";\"other\"\n\"2478216\";\"Tamanrassete\";\"other\"\n\"2478216\";\"tmnrast\";\"other\"\n\"2478216\";\"Таманрассете\";\"other\"\n\"2478216\";\"تمنراست\";\"other\"\n\"2478226\";\"Tamalous\";\"main\"\n\"2478831\";\"Tadmaït\";\"main\"\n\"2478831\";\"Tadmait\";\"ascii\"\n\"2478831\";\"Camp du Marechal\";\"other\"\n\"2478831\";\"Camp du Maréchal\";\"other\"\n\"2479161\";\"Sour el Ghozlane\";\"main\"\n\"2479161\";\"Aumale\";\"other\"\n\"2479161\";\"Aumale-d'Algerie\";\"other\"\n\"2479161\";\"Aumale-d’Algérie\";\"other\"\n\"2479161\";\"Aumate\";\"other\"\n\"2479183\";\"Souma\";\"main\"\n\"2479247\";\"Sougueur\";\"main\"\n\"2479247\";\"Nadhora\";\"other\"\n\"2479247\";\"Nador\";\"other\"\n\"2479247\";\"Trezel\";\"other\"\n\"2479247\";\"Trézel\";\"other\"\n\"2479536\";\"Skikda\";\"main\"\n\"2479536\";\"Philippeville\";\"other\"\n\"2479536\";\"Phillippville\";\"other\"\n\"2479536\";\"wlayt skykdt\";\"other\"\n\"2479536\";\"Скикда\";\"other\"\n\"2479536\";\"ولاية سعيدة\";\"other\"\n\"2479536\";\"ولاية سكيكدة\";\"other\"\n\"2479609\";\"Sig\";\"main\"\n\"2479609\";\"Saint-Denis-du-Sig\";\"other\"\n\"2479916\";\"Sidi Okba\";\"main\"\n\"2479966\";\"Sidi Moussa\";\"main\"\n\"2480198\";\"Sidi Mérouane\";\"main\"\n\"2480198\";\"Sidi Merouane\";\"ascii\"\n\"2480198\";\"Sidi Merouan\";\"other\"\n\"2480368\";\"Sidi Khaled\";\"main\"\n\"2480368\";\"Sidi Kraled\";\"other\"\n\"2480618\";\"Sidi ech Chahmi\";\"main\"\n\"2480618\";\"Sidi Chami\";\"other\"\n\"2480618\";\"Sidi Chamy\";\"other\"\n\"2481007\";\"Sidi Bel Abbès\";\"main\"\n\"2481007\";\"Sidi Bel Abbes\";\"ascii\"\n\"2481007\";\"Sid Bel Abbes\";\"other\"\n\"2481007\";\"Sid Bel Abbès\";\"other\"\n\"2481007\";\"Sidi Bel Abes\";\"other\"\n\"2481007\";\"Sidi bel Abbes\";\"other\"\n\"2481007\";\"Sidi bel Abbès\";\"other\"\n\"2481007\";\"Sidi-Bal-Abbes\";\"other\"\n\"2481007\";\"Sidi-Bal-Abbès\";\"other\"\n\"2481007\";\"Sidi-Bel-Abbes\";\"other\"\n\"2481007\";\"Sidi-Bel-Abbès\";\"other\"\n\"2481007\";\"Sidi-bel-Abbes\";\"other\"\n\"2481007\";\"Sidi-bel-Abbès\";\"other\"\n\"2481007\";\"Сиди Бел Абес\";\"other\"\n\"2481007\";\"سيدي بلعباس\";\"other\"\n\"2481007\";\"ولاية سيدي بلعباس\";\"other\"\n\"2481058\";\"Sidi Amrane\";\"main\"\n\"2481207\";\"Sidi Akkacha\";\"main\"\n\"2481207\";\"Montenotte\";\"other\"\n\"2481207\";\"Sidi Akacha\";\"other\"\n\"2481246\";\"Sidi Aïssa\";\"main\"\n\"2481246\";\"Sidi Aissa\";\"ascii\"\n\"2481246\";\"Sid Aissa\";\"other\"\n\"2481246\";\"Sid Aïssa\";\"other\"\n\"2481246\";\"Sidi-Aissa\";\"other\"\n\"2481246\";\"Сиди-Аисса\";\"other\"\n\"2481389\";\"Sidi Abdelli\";\"main\"\n\"2481389\";\"Les Abdellys\";\"other\"\n\"2481389\";\"Les Abdelys\";\"other\"\n\"2481639\";\"Sfizef\";\"main\"\n\"2481639\";\"Mercier-Lacombe\";\"other\"\n\"2481639\";\"Sfisef\";\"other\"\n\"2481639\";\"Sfissef\";\"other\"\n\"2482090\";\"Sedrata\";\"main\"\n\"2482159\";\"Seddouk\";\"main\"\n\"2482211\";\"Sebdou\";\"main\"\n\"2482390\";\"Saoula\";\"main\"\n\"2482447\";\"Salah Bey\";\"main\"\n\"2482447\";\"Dzeira\";\"other\"\n\"2482447\";\"Pascal\";\"other\"\n\"2482572\";\"Saïda\";\"main\"\n\"2482572\";\"Saida\";\"ascii\"\n\"2482572\";\"Sajda\";\"other\"\n\"2482572\";\"Сайда\";\"other\"\n\"2482886\";\"Rouissat\";\"main\"\n\"2482908\";\"Rouiba\";\"main\"\n\"2482939\";\"Rouached\";\"main\"\n\"2483000\";\"Robbah\";\"main\"\n\"2483649\";\"Remchi\";\"main\"\n\"2483649\";\"Montagnac\";\"other\"\n\"2483746\";\"Reguiba\";\"main\"\n\"2483757\";\"Reghaïa\";\"main\"\n\"2483757\";\"Reghaia\";\"ascii\"\n\"2483757\";\"La Reghaia\";\"other\"\n\"2483757\";\"La Reghaïa\";\"other\"\n\"2483757\";\"La Reghia-Alma\";\"other\"\n\"2483761\";\"Reggane\";\"main\"\n\"2483761\";\"Reggan\";\"other\"\n\"2483761\";\"Zaouiet Reggan\";\"other\"\n\"2483761\";\"Zaouiet Reggane\";\"other\"\n\"2483936\";\"Râs el Oued\";\"main\"\n\"2483936\";\"Ras el Oued\";\"ascii\"\n\"2483936\";\"Ras-ehl'-Uehd\";\"other\"\n\"2483936\";\"Rass el Oued\";\"other\"\n\"2483936\";\"Tocqueville\";\"other\"\n\"2483936\";\"Рас-эль-Уэд\";\"other\"\n\"2483968\";\"Râs el Aïoun\";\"main\"\n\"2483968\";\"Ras el Aioun\";\"ascii\"\n\"2483968\";\"Ras el Ayoun\";\"other\"\n\"2483968\";\"Rass el Aioun\";\"other\"\n\"2483968\";\"Rass el Aïoun\";\"other\"\n\"2484620\";\"Oum el Bouaghi\";\"main\"\n\"2484620\";\"Canrobert\";\"other\"\n\"2484620\";\"Oum-el-Bouachi\";\"other\"\n\"2484738\";\"Oumache\";\"main\"\n\"2484738\";\"Oumach\";\"other\"\n\"2484738\";\"Umash\";\"other\"\n\"2484835\";\"Ouled Moussa\";\"main\"\n\"2484835\";\"Saint Pierre\";\"other\"\n\"2484835\";\"Saint-Pierre-Saint-Paul\";\"other\"\n\"2484846\";\"Ouled Mimoun\";\"main\"\n\"2484846\";\"Lamariciere\";\"other\"\n\"2484846\";\"Lamaricière\";\"other\"\n\"2484846\";\"Lamoriciere\";\"other\"\n\"2484846\";\"Lamoricière\";\"other\"\n\"2484846\";\"Lemoriciere\";\"other\"\n\"2485572\";\"Oued Sly\";\"main\"\n\"2485572\";\"Malakoff\";\"other\"\n\"2485572\";\"Malakoft\";\"other\"\n\"2485572\";\"Oued Sli\";\"other\"\n\"2485582\";\"Oued Rhiou\";\"main\"\n\"2485582\";\"Inkermann\";\"other\"\n\"2485582\";\"Oued Riou\";\"other\"\n\"2485618\";\"Oued Fodda\";\"main\"\n\"2485633\";\"Oued el Alleug\";\"main\"\n\"2485633\";\"Oued Alleug\";\"other\"\n\"2485633\";\"Oued el Alleng\";\"other\"\n\"2485636\";\"Oued el Abtal\";\"main\"\n\"2485636\";\"Torki-le-Djuk\";\"other\"\n\"2485636\";\"Uzes-le-Duc\";\"other\"\n\"2485636\";\"Uzes-le-Due\";\"other\"\n\"2485636\";\"Uzès-le-Duc\";\"other\"\n\"2485636\";\"Uzès-le-Due\";\"other\"\n\"2485636\";\"Торки-ле-Дюк\";\"other\"\n\"2485801\";\"Ouargla\";\"main\"\n\"2485801\";\"Quargla\";\"other\"\n\"2485801\";\"Warkala\";\"other\"\n\"2485801\";\"Warqla\";\"other\"\n\"2485801\";\"wrqlt\";\"other\"\n\"2485801\";\"ورقلة\";\"other\"\n\"2485926\";\"Oran\";\"main\"\n\"2485926\";\"Ora\";\"other\"\n\"2485926\";\"Orà\";\"other\"\n\"2485926\";\"Orán\";\"other\"\n\"2485926\";\"Ouahran\";\"other\"\n\"2485926\";\"Wahran\";\"other\"\n\"2485926\";\"Wahrān\";\"other\"\n\"2485926\";\"whran\";\"other\"\n\"2485926\";\"wlayt whran\";\"other\"\n\"2485926\";\"Оран\";\"other\"\n\"2485926\";\"אוראן\";\"other\"\n\"2485926\";\"ولاية وهران\";\"other\"\n\"2485926\";\"وهران\";\"other\"\n\"2486284\";\"Nedroma\";\"main\"\n\"2486505\";\"Naciria\";\"main\"\n\"2486505\";\"Azib Zamoun\";\"other\"\n\"2486505\";\"Haussonviller\";\"other\"\n\"2486505\";\"Haussonvillers\";\"other\"\n\"2486523\";\"Naama\";\"main\"\n\"2486825\";\"Mouzaïa\";\"main\"\n\"2486825\";\"Mouzaia\";\"ascii\"\n\"2486825\";\"Mouzaiaville\";\"other\"\n\"2486825\";\"Mouzaïaville\";\"other\"\n\"2487134\";\"Mostaganem\";\"main\"\n\"2487134\";\"Mastaganeam\";\"other\"\n\"2487134\";\"Mustaghanam\";\"other\"\n\"2487134\";\"Mustaghanim\";\"other\"\n\"2487134\";\"Мостаганем\";\"other\"\n\"2487452\";\"Mila\";\"main\"\n\"2487620\";\"Metlili Chaamba\";\"main\"\n\"2487620\";\"Metlili\";\"other\"\n\"2487620\";\"Metlili-les Chaamba\";\"other\"\n\"2487620\";\"Mettlili Chaamba\";\"other\"\n\"2487772\";\"Messaad\";\"main\"\n\"2487772\";\"Messad\";\"other\"\n\"2487772\";\"Мессад\";\"other\"\n\"2487805\";\"Meskiana\";\"main\"\n\"2487805\";\"La Meskiana\";\"other\"\n\"2487852\";\"Mers el Kebir\";\"main\"\n\"2487852\";\"Mers el Kabir\";\"other\"\n\"2487852\";\"Mers-ehl'-Kebir\";\"other\"\n\"2487852\";\"Мерс-эль-Кебир\";\"other\"\n\"2487882\";\"Merouana\";\"main\"\n\"2487882\";\"Corneille\";\"other\"\n\"2488202\";\"Melouza\";\"main\"\n\"2488202\";\"Melouda\";\"other\"\n\"2488202\";\"Ouan Ougha\";\"other\"\n\"2488202\";\"Souk el Tleta\";\"other\"\n\"2488500\";\"Mekla\";\"main\"\n\"2488616\";\"Mehdia\";\"main\"\n\"2488616\";\"Burdeau\";\"other\"\n\"2488616\";\"Mahdia\";\"other\"\n\"2488616\";\"Makhdija\";\"other\"\n\"2488616\";\"Махдия\";\"other\"\n\"2488716\";\"Megarine\";\"main\"\n\"2488716\";\"Meggarine\";\"other\"\n\"2488722\";\"Meftah\";\"main\"\n\"2488722\";\"Meftakh\";\"other\"\n\"2488722\";\"Rivet\";\"other\"\n\"2488722\";\"Мефтах\";\"other\"\n\"2488835\";\"Médéa\";\"main\"\n\"2488835\";\"Medea\";\"ascii\"\n\"2488835\";\"Lambdia\";\"other\"\n\"2488835\";\"Medeah\";\"other\"\n\"2488835\";\"Medeja\";\"other\"\n\"2488835\";\"Медея\";\"other\"\n\"2489987\";\"Mazouna\";\"main\"\n\"2490180\";\"Mansourah\";\"main\"\n\"2490180\";\"Mansoura\";\"other\"\n\"2490180\";\"Mansur\";\"other\"\n\"2490180\";\"Мансур\";\"other\"\n\"2490183\";\"Mansoûra\";\"main\"\n\"2490183\";\"Mansoura\";\"ascii\"\n\"2490183\";\"Mansourah\";\"other\"\n\"2490183\";\"Mansura\";\"other\"\n\"2490183\";\"Мансура\";\"other\"\n\"2490297\";\"Makouda\";\"main\"\n\"2490297\";\"Macouda\";\"other\"\n\"2491042\";\"L’Arbaa Naït Irathen\";\"main\"\n\"2491042\";\"L'Arbaa Nait Irathen\";\"ascii\"\n\"2491042\";\"Fort National\";\"other\"\n\"2491042\";\"L'Arbaa Irathen Nait\";\"other\"\n\"2491042\";\"Larbaa Nath Iraten\";\"other\"\n\"2491042\";\"L’Arbaa Irathen Naït\";\"other\"\n\"2491050\";\"L’Arba\";\"main\"\n\"2491050\";\"L'Arba\";\"ascii\"\n\"2491050\";\"Arba\";\"other\"\n\"2491050\";\"El-Arba\";\"other\"\n\"2491050\";\"Larba\";\"other\"\n\"2491050\";\"Ларба\";\"other\"\n\"2491134\";\"Lakhdaria\";\"main\"\n\"2491134\";\"Palestro\";\"other\"\n\"2491191\";\"Laghouat\";\"main\"\n\"2491191\";\"Laguat\";\"other\"\n\"2491191\";\"Larhouat\";\"other\"\n\"2491191\";\"Prowincja Laghouat\";\"other\"\n\"2491191\";\"wlayt alaghwat\";\"other\"\n\"2491191\";\"Лагуат\";\"other\"\n\"2491191\";\"ولاية الأغواط\";\"other\"\n\"2491323\";\"Ksar el Boukhari\";\"main\"\n\"2491323\";\"Boghari\";\"other\"\n\"2491323\";\"Borhari\";\"other\"\n\"2491335\";\"Ksar Chellala\";\"main\"\n\"2491335\";\"Chellala\";\"other\"\n\"2491335\";\"Chellala-Reibell\";\"other\"\n\"2491335\";\"Reibel\";\"other\"\n\"2491335\";\"Reibell\";\"other\"\n\"2491335\";\"Reïbell\";\"other\"\n\"2491335\";\"Shelala\";\"other\"\n\"2491578\";\"Kolea\";\"main\"\n\"2491911\";\"Khemis Miliana\";\"main\"\n\"2491911\";\"Affreville\";\"other\"\n\"2491911\";\"El Khemis\";\"other\"\n\"2491911\";\"El Khemis Miliana\";\"other\"\n\"2491913\";\"Khemis el Khechna\";\"main\"\n\"2491913\";\"Fondouk\";\"other\"\n\"2491913\";\"Khemis El Khechma\";\"other\"\n\"2491913\";\"Le Fondouk\";\"other\"\n\"2492345\";\"Kerkera\";\"main\"\n\"2492345\";\"El Achra\";\"other\"\n\"2492920\";\"Djidiouia\";\"main\"\n\"2492920\";\"Djidioua\";\"other\"\n\"2492920\";\"Djidjiouia\";\"other\"\n\"2492920\";\"Jdiouia\";\"other\"\n\"2492920\";\"Saint-Aime\";\"other\"\n\"2492920\";\"Saint-Aimé\";\"other\"\n\"2492991\";\"Isser\";\"main\"\n\"2492991\";\"Isserville\";\"other\"\n\"2493222\";\"I-n-Salah\";\"main\"\n\"2493222\";\"Ain Salah\";\"other\"\n\"2493222\";\"Aïn Salah\";\"other\"\n\"2493456\";\"Illizi\";\"main\"\n\"2493456\";\"Fort Polignac\";\"other\"\n\"2493456\";\"Fort de Polignac\";\"other\"\n\"2493456\";\"Polignac\";\"other\"\n\"2493605\";\"Ighram\";\"main\"\n\"2493605\";\"Irhram\";\"other\"\n\"2493918\";\"Hennaya\";\"main\"\n\"2493918\";\"Eugene Etienne\";\"other\"\n\"2493918\";\"Eugene-Etienne Hennaya\";\"other\"\n\"2493918\";\"Eugène Étienne\";\"other\"\n\"2493918\";\"Eugéne-Étienne Hennaya\";\"other\"\n\"2493956\";\"Héliopolis\";\"main\"\n\"2493956\";\"Heliopolis\";\"ascii\"\n\"2494029\";\"Hassi Messaoud\";\"main\"\n\"2494029\";\"Khassi-Messaud\";\"other\"\n\"2494029\";\"Хасси-Мессауд\";\"other\"\n\"2494548\";\"Hammamet\";\"main\"\n\"2494548\";\"Gidjel\";\"other\"\n\"2494548\";\"Khammamet\";\"other\"\n\"2494548\";\"Youks-les-Bains\";\"other\"\n\"2494548\";\"Youks-les-Banins\";\"other\"\n\"2494548\";\"Хаммамет\";\"other\"\n\"2494554\";\"Hammam Bou Hadjar\";\"main\"\n\"2494554\";\"Hamman Bou Habjar\";\"other\"\n\"2494554\";\"Hommam Bou Hadjar\";\"other\"\n\"2494610\";\"Hamma Bouziane\";\"main\"\n\"2494610\";\"Hamma\";\"other\"\n\"2494610\";\"Hamma Bouniane\";\"other\"\n\"2494610\";\"Hamma-Plaisance\";\"other\"\n\"2494610\";\"Le Hamma\";\"other\"\n\"2494610\";\"Le Hamma-Plaisance\";\"other\"\n\"2494962\";\"Hadjout\";\"main\"\n\"2494962\";\"Marengo\";\"other\"\n\"2495662\";\"Guelma\";\"main\"\n\"2495662\";\"qalmt\";\"other\"\n\"2495662\";\"قالمة\";\"other\"\n\"2496232\";\"Frenda\";\"main\"\n\"2496241\";\"Freha\";\"main\"\n\"2496241\";\"Freda\";\"other\"\n\"2496573\";\"Feraoun\";\"main\"\n\"2497060\";\"Es Senia\";\"main\"\n\"2497060\";\"La Senia\";\"other\"\n\"2497060\";\"La Sénia\";\"other\"\n\"2497714\";\"El Malah\";\"main\"\n\"2497714\";\"El Melah\";\"other\"\n\"2497714\";\"Rio Salado\";\"other\"\n\"2497714\";\"Zfissaf\";\"other\"\n\"2497796\";\"El Kseur\";\"main\"\n\"2497849\";\"El Khroub\";\"main\"\n\"2497849\";\"El-Kroub\";\"other\"\n\"2497849\";\"Kroubs\";\"other\"\n\"2497849\";\"Le Khroub\";\"other\"\n\"2497849\";\"Le Kroub\";\"other\"\n\"2497988\";\"El Kala\";\"main\"\n\"2497988\";\"Ehl'-Kaly\";\"other\"\n\"2497988\";\"La Calle\";\"other\"\n\"2497988\";\"Port de la Calle\";\"other\"\n\"2497988\";\"Эль-Калы\";\"other\"\n\"2498000\";\"El Idrissia\";\"main\"\n\"2498000\";\"Zenina\";\"other\"\n\"2498172\";\"El Hadjira\";\"main\"\n\"2498183\";\"El Hadjar\";\"main\"\n\"2498183\";\"Duzerville\";\"other\"\n\"2498392\";\"El Eulma\";\"main\"\n\"2498392\";\"Saint-Arnaud\";\"other\"\n\"2498590\";\"El Attaf\";\"main\"\n\"2498590\";\"Ehl'-Attafom\";\"other\"\n\"2498590\";\"Les Attafs\";\"other\"\n\"2498590\";\"Les Attats\";\"other\"\n\"2498590\";\"Les Attefs\";\"other\"\n\"2498590\";\"Эль-Аттафом\";\"other\"\n\"2498667\";\"El Aouinet\";\"main\"\n\"2498667\";\"Aouinet-ed-Dieb\";\"other\"\n\"2498667\";\"Aouinet-el-Dieb\";\"other\"\n\"2498667\";\"Aouïnet-ed-Dieb\";\"other\"\n\"2498667\";\"Clairefontaine\";\"other\"\n\"2498667\";\"Clairfontaine\";\"other\"\n\"2498704\";\"El Amria\";\"main\"\n\"2498704\";\"El Amiria\";\"other\"\n\"2498704\";\"Lourmel\";\"other\"\n\"2498704\";\"Lurmel\";\"other\"\n\"2498752\";\"El Affroun\";\"main\"\n\"2498752\";\"El Afroun\";\"other\"\n\"2498752\";\"El Alfroun\";\"other\"\n\"2498766\";\"El Achir\";\"main\"\n\"2498775\";\"El Abiodh Sidi Cheikh\";\"main\"\n\"2498775\";\"El Abiod Sidi Cheikh\";\"other\"\n\"2498775\";\"El Abiod Sidi Cheiki\";\"other\"\n\"2498775\";\"El Abiod Sidi Cheikr\";\"other\"\n\"2498775\";\"El Abiod Sidi Cheïkr\";\"other\"\n\"2498775\";\"El Abiodh\";\"other\"\n\"2498775\";\"El Abrod Sidi Cheikr\";\"other\"\n\"2498775\";\"El-Abiod-Sidi-Cheik\";\"other\"\n\"2498775\";\"Sidi Cheikh\";\"other\"\n\"2498782\";\"El Abadia\";\"main\"\n\"2498782\";\"Al Abadia\";\"other\"\n\"2498782\";\"Carnot\";\"other\"\n\"2498954\";\"Ech Chettia\";\"main\"\n\"2498954\";\"Ech Chetia\";\"other\"\n\"2498954\";\"Ech Chettiâ\";\"other\"\n\"2498954\";\"Ech Chétia\";\"other\"\n\"2499055\";\"Drean\";\"main\"\n\"2499055\";\"Mondovi\";\"other\"\n\"2499104\";\"Draa el Mizan\";\"main\"\n\"2499104\";\"Dra el Mizan\";\"other\"\n\"2499104\";\"Dra el Mizane\";\"other\"\n\"2499104\";\"Dra-ehl'-Mizan\";\"other\"\n\"2499104\";\"Дра-эль-Мизан\";\"other\"\n\"2499116\";\"Draa Ben Khedda\";\"main\"\n\"2499116\";\"Dra Ben Khedda\";\"other\"\n\"2499116\";\"Draa Ben Kheda\";\"other\"\n\"2499116\";\"Draa Ben Kredda\";\"other\"\n\"2499116\";\"Mirabeau\";\"other\"\n\"2499193\";\"Douera\";\"main\"\n\"2500282\";\"Djamaa\";\"main\"\n\"2500282\";\"Djama\";\"other\"\n\"2500282\";\"Djemaa\";\"other\"\n\"2500282\";\"Djemâa\";\"other\"\n\"2500401\";\"Didouche Mourad\";\"main\"\n\"2500401\";\"Bizot\";\"other\"\n\"2500583\";\"Dellys\";\"main\"\n\"2500583\";\"Delis\";\"other\"\n\"2500737\";\"Debila\";\"main\"\n\"2500889\";\"Dar el Beïda\";\"main\"\n\"2500889\";\"Dar el Beida\";\"ascii\"\n\"2500889\";\"Dar El Baida\";\"other\"\n\"2500889\";\"Dar-ehl'-Bejda\";\"other\"\n\"2500889\";\"La Maison Blanche\";\"other\"\n\"2500889\";\"Maison Blanche\";\"other\"\n\"2500889\";\"Дар-эль-Бейда\";\"other\"\n\"2500904\";\"Dar Chioukh\";\"main\"\n\"2500904\";\"Diar el Chioukh\";\"other\"\n\"2501152\";\"Constantine\";\"main\"\n\"2501289\";\"Chorfa\";\"main\"\n\"2501289\";\"Cheurfa\";\"other\"\n\"2501289\";\"Чорфа\";\"other\"\n\"2501323\";\"Chiffa\";\"main\"\n\"2501323\";\"La Chiffa\";\"other\"\n\"2501362\";\"Chetouane\";\"main\"\n\"2501362\";\"Negrier\";\"other\"\n\"2501362\";\"Négrier\";\"other\"\n\"2501404\";\"Cheria\";\"main\"\n\"2501465\";\"Cheraga\";\"main\"\n\"2501465\";\"Cheragas\";\"other\"\n\"2501508\";\"Chemini\";\"main\"\n\"2501508\";\"Azerou Ait Chemini\";\"other\"\n\"2501508\";\"Azerou Aït Chemini\";\"other\"\n\"2501508\";\"Azrou-n-Ait Chemini\";\"other\"\n\"2501508\";\"Azrou-n-Aït Chemini\";\"other\"\n\"2501541\";\"Chelghoum el Aïd\";\"main\"\n\"2501541\";\"Chelghoum el Aid\";\"ascii\"\n\"2501541\";\"Chateaudun\";\"other\"\n\"2501541\";\"Chateaudun de Rhumel\";\"other\"\n\"2501541\";\"Chateaudun-du Rummel\";\"other\"\n\"2501541\";\"Chateaudun-du-Rhumel\";\"other\"\n\"2501541\";\"Chateaudun-du-Rhummel\";\"other\"\n\"2501541\";\"Châteaudun\";\"other\"\n\"2501541\";\"Châteaudun de Rhumel\";\"other\"\n\"2501541\";\"Châteaudun-du Rummel\";\"other\"\n\"2501541\";\"Châteaudun-du-Rhumel\";\"other\"\n\"2501541\";\"Châteaudun-du-Rhummel\";\"other\"\n\"2501541\";\"Ghelghoum Elaid\";\"other\"\n\"2501541\";\"Ghelghoum Elaïd\";\"other\"\n\"2501541\";\"Ghelgoum Elaid\";\"other\"\n\"2501541\";\"Ghelgoum Elaïd\";\"other\"\n\"2501680\";\"Chebli\";\"main\"\n\"2501767\";\"Charef\";\"main\"\n\"2501767\";\"Charet\";\"other\"\n\"2501873\";\"Chabet el Ameur\";\"main\"\n\"2501873\";\"Chabet -el -Ameuro\";\"other\"\n\"2502034\";\"Brezina\";\"main\"\n\"2502034\";\"Brexina\";\"other\"\n\"2502239\";\"Bou Tlelis\";\"main\"\n\"2502686\";\"Boumahra Ahmed\";\"main\"\n\"2502686\";\"Petit\";\"other\"\n\"2502924\";\"Boukadir\";\"main\"\n\"2502924\";\"Bou Kadir\";\"other\"\n\"2502924\";\"Bu-Kadir\";\"other\"\n\"2502924\";\"Charon\";\"other\"\n\"2502924\";\"Charron\";\"other\"\n\"2502924\";\"Oued Ben Kader\";\"other\"\n\"2502924\";\"Бу-Кадир\";\"other\"\n\"2502939\";\"Bou Ismaïl\";\"main\"\n\"2502939\";\"Bou Ismail\";\"ascii\"\n\"2502939\";\"Bou Ismael\";\"other\"\n\"2502939\";\"Bou Ismaël\";\"other\"\n\"2502939\";\"Bu-Ismail\";\"other\"\n\"2502939\";\"Castiglione\";\"other\"\n\"2502939\";\"Бу-Исмаил\";\"other\"\n\"2502962\";\"Bouinan\";\"main\"\n\"2502962\";\"Bouinane\";\"other\"\n\"2502962\";\"Bouïnane\";\"other\"\n\"2503033\";\"Bou Hanifia el Hamamat\";\"main\"\n\"2503033\";\"Bou Hanifia\";\"other\"\n\"2503033\";\"Bou Hanifia el Hammamet\";\"other\"\n\"2503033\";\"Bou Hanifia-les Thermes\";\"other\"\n\"2503033\";\"Sidi Bou Hanifia\";\"other\"\n\"2503147\";\"Bougara\";\"main\"\n\"2503147\";\"Bouguera\";\"other\"\n\"2503147\";\"Bouguerra\";\"other\"\n\"2503147\";\"Rovigo\";\"other\"\n\"2503156\";\"Bougaa\";\"main\"\n\"2503156\";\"Lafayette\";\"other\"\n\"2503181\";\"Boufarik\";\"main\"\n\"2503229\";\"Boudouaou\";\"main\"\n\"2503229\";\"Alma\";\"other\"\n\"2503229\";\"L'Alma\";\"other\"\n\"2503229\";\"L’Alma\";\"other\"\n\"2503237\";\"Boudjima\";\"main\"\n\"2503468\";\"Boû Arfa\";\"main\"\n\"2503468\";\"Bou Arfa\";\"ascii\"\n\"2503620\";\"Bordj Zemoura\";\"main\"\n\"2503620\";\"Zemmoura\";\"other\"\n\"2503620\";\"Zemmours\";\"other\"\n\"2503620\";\"Zemoura\";\"other\"\n\"2503620\";\"Zemours\";\"other\"\n\"2503654\";\"Bordj Ghdir\";\"main\"\n\"2503654\";\"Bordj R'dir\";\"other\"\n\"2503654\";\"Bordj Redir\";\"other\"\n\"2503654\";\"Bordj Rhedir\";\"other\"\n\"2503654\";\"Bordj Rédir\";\"other\"\n\"2503654\";\"Bordj R’dir\";\"other\"\n\"2503661\";\"Bordj el Kiffan\";\"main\"\n\"2503661\";\"Bordj El Kifan\";\"other\"\n\"2503661\";\"Fort de l'Eau\";\"other\"\n\"2503661\";\"Fort de l’Eau\";\"other\"\n\"2503755\";\"Boghni\";\"main\"\n\"2503755\";\"Boghari\";\"other\"\n\"2503755\";\"Borhni\";\"other\"\n\"2503847\";\"Birkhadem\";\"main\"\n\"2503847\";\"Birkadem\";\"other\"\n\"2503852\";\"Birine\";\"main\"\n\"2503852\";\"Birin\";\"other\"\n\"2503874\";\"Bir el Djir\";\"main\"\n\"2503874\";\"Arcole\";\"other\"\n\"2503878\";\"Bir el Ater\";\"main\"\n\"2504072\";\"Besbes\";\"main\"\n\"2504072\";\"Randon\";\"other\"\n\"2504099\";\"Berrouaghia\";\"main\"\n\"2504099\";\"Berrouarhia\";\"other\"\n\"2504110\";\"Berriane\";\"main\"\n\"2504110\";\"Berrian\";\"other\"\n\"2504136\";\"Berrahal\";\"main\"\n\"2504136\";\"Ain Mokra\";\"other\"\n\"2504136\";\"Aine Mokra\";\"other\"\n\"2504136\";\"Aïn Mokra\";\"other\"\n\"2504136\";\"Aïne Mokra\";\"other\"\n\"2504385\";\"Bensekrane\";\"main\"\n\"2504385\";\"Ben Sokrane\";\"other\"\n\"2504385\";\"Pont de l'Isser\";\"other\"\n\"2504385\";\"Pont de l’Isser\";\"other\"\n\"2504486\";\"Ben Mehidi\";\"main\"\n\"2504486\";\"Morris\";\"other\"\n\"2504581\";\"Beni Saf\";\"main\"\n\"2504581\";\"Beni Sat\";\"other\"\n\"2504616\";\"Beni Mester\";\"main\"\n\"2504622\";\"Beni Mered\";\"main\"\n\"2504703\";\"Beni Douala\";\"main\"\n\"2504703\";\"Beni Doula\";\"other\"\n\"2504739\";\"Beni Amrane\";\"main\"\n\"2504739\";\"Beni Amran\";\"other\"\n\"2505329\";\"Bejaïa\";\"main\"\n\"2505329\";\"Bejaia\";\"ascii\"\n\"2505329\";\"Bedzaja\";\"other\"\n\"2505329\";\"Bougie\";\"other\"\n\"2505329\";\"Bugia\";\"other\"\n\"2505329\";\"Bugía\";\"other\"\n\"2505329\";\"Béjaïa\";\"other\"\n\"2505329\";\"bjayt\";\"other\"\n\"2505329\";\"Беџаја\";\"other\"\n\"2505329\";\"بجاية\";\"other\"\n\"2505530\";\"Béchar\";\"main\"\n\"2505530\";\"Bechar\";\"ascii\"\n\"2505530\";\"Beshare\";\"other\"\n\"2505530\";\"Colomb-Bechar\";\"other\"\n\"2505530\";\"Colomb-Béchar\";\"other\"\n\"2505530\";\"Wilaya de Beshar\";\"other\"\n\"2505530\";\"wlayt bshar\";\"other\"\n\"2505530\";\"Бешаре\";\"other\"\n\"2505530\";\"ولاية بشار\";\"other\"\n\"2505572\";\"Batna\";\"main\"\n\"2505572\";\"Batna City\";\"other\"\n\"2505572\";\"Wilaya de Batna\";\"other\"\n\"2505572\";\"batnh\";\"other\"\n\"2505572\";\"batnt\";\"other\"\n\"2505572\";\"wlayt batnt\";\"other\"\n\"2505572\";\"Батна\";\"other\"\n\"2505572\";\"باتنة\";\"other\"\n\"2505572\";\"باتنه\";\"other\"\n\"2505572\";\"ولاية باتنة\";\"other\"\n\"2505629\";\"Barika\";\"main\"\n\"2505629\";\"Барика\";\"other\"\n\"2505651\";\"Barbacha\";\"main\"\n\"2505651\";\"Souk et Tleta\";\"other\"\n\"2505651\";\"Souk et Tléta\";\"other\"\n\"2505653\";\"Baraki\";\"main\"\n\"2505854\";\"Bab Ezzouar\";\"main\"\n\"2505854\";\"Le Retour de la Chasse\";\"other\"\n\"2505915\";\"Azzaba\";\"main\"\n\"2505915\";\"Jemmapes\";\"other\"\n\"2506043\";\"Azazga\";\"main\"\n\"2506043\";\"Agagza\";\"other\"\n\"2506043\";\"Agazza\";\"other\"\n\"2506404\";\"Arris\";\"main\"\n\"2506519\";\"Arhribs\";\"main\"\n\"2506519\";\"Aghribs\";\"other\"\n\"2506623\";\"Arbatache\";\"main\"\n\"2506623\";\"Arbatach\";\"other\"\n\"2506623\";\"L'Arbatach\";\"other\"\n\"2506623\";\"L'Arbetache\";\"other\"\n\"2506623\";\"L’Arbatach\";\"other\"\n\"2506623\";\"L’Arbetache\";\"other\"\n\"2506623\";\"Marechal Foch\";\"other\"\n\"2506623\";\"Maréchal Foch\";\"other\"\n\"2506795\";\"Aoulef\";\"main\"\n\"2506795\";\"Aoulef el Arab\";\"other\"\n\"2506999\";\"Annaba\";\"main\"\n\"2506999\";\"Anaba\";\"other\"\n\"2506999\";\"Annaba - syaht\";\"other\"\n\"2506999\";\"Annaba - سياحة\";\"other\"\n\"2506999\";\"Bona\";\"other\"\n\"2506999\";\"Bone\";\"other\"\n\"2506999\";\"Bône\";\"other\"\n\"2506999\";\"an na ba\";\"other\"\n\"2506999\";\"Анаба\";\"other\"\n\"2506999\";\"عنابة\";\"other\"\n\"2506999\";\"安纳巴\";\"other\"\n\"2507155\";\"Ammi Moussa\";\"main\"\n\"2507169\";\"Amizour\";\"main\"\n\"2507169\";\"Colmar\";\"other\"\n\"2507169\";\"Oued Amizour\";\"other\"\n\"2507480\";\"Algiers\";\"main\"\n\"2507480\";\"Al Jazair\";\"other\"\n\"2507480\";\"Al-jezair\";\"other\"\n\"2507480\";\"Algeirsborg\";\"other\"\n\"2507480\";\"Alger\";\"other\"\n\"2507480\";\"Algeri\";\"other\"\n\"2507480\";\"Algeria\";\"other\"\n\"2507480\";\"Algero\";\"other\"\n\"2507480\";\"Algier\";\"other\"\n\"2507480\";\"Aljer\";\"other\"\n\"2507480\";\"Alzhir\";\"other\"\n\"2507480\";\"Alziir\";\"other\"\n\"2507480\";\"Alzir\";\"other\"\n\"2507480\";\"Alzyras\";\"other\"\n\"2507480\";\"Alĝero\";\"other\"\n\"2507480\";\"Alžiir\";\"other\"\n\"2507480\";\"Alžir\";\"other\"\n\"2507480\";\"Alžyras\";\"other\"\n\"2507480\";\"Alžír\";\"other\"\n\"2507480\";\"Argel\";\"other\"\n\"2507480\";\"Arjel\";\"other\"\n\"2507480\";\"Caesair\";\"other\"\n\"2507480\";\"Cäsair\";\"other\"\n\"2507480\";\"a er ji er\";\"other\"\n\"2507480\";\"alje\";\"other\"\n\"2507480\";\"aljiyarsa\";\"other\"\n\"2507480\";\"aruje\";\"other\"\n\"2507480\";\"wlayt aljzayr\";\"other\"\n\"2507480\";\"Αλγέρι\";\"other\"\n\"2507480\";\"Алжир\";\"other\"\n\"2507480\";\"אלג'יר\";\"other\"\n\"2507480\";\"ولاية الجزائر\";\"other\"\n\"2507480\";\"अल्जीयर्स\";\"other\"\n\"2507480\";\"አልጀርስ\";\"other\"\n\"2507480\";\"アルジェ\";\"other\"\n\"2507480\";\"阿爾及爾\";\"other\"\n\"2507480\";\"알제\";\"other\"\n\"2507646\";\"Akbou\";\"main\"\n\"2507646\";\"Metz\";\"other\"\n\"2507877\";\"Aïn Touta\";\"main\"\n\"2507877\";\"Ain Touta\";\"ascii\"\n\"2507877\";\"Mac Mahon\";\"other\"\n\"2507901\";\"’Aïn Temouchent\";\"main\"\n\"2507901\";\"'Ain Temouchent\";\"ascii\"\n\"2507901\";\"Ain Temonchent\";\"other\"\n\"2507901\";\"Ain Temoucheni\";\"other\"\n\"2507901\";\"Ain Temushent\";\"other\"\n\"2507901\";\"Aine Temouchent\";\"other\"\n\"2507901\";\"Aïn Témoucheni\";\"other\"\n\"2507901\";\"Aïne Temouchent\";\"other\"\n\"2507912\";\"Aïn Taya\";\"main\"\n\"2507912\";\"Ain Taya\";\"ascii\"\n\"2507912\";\"Aine Taya\";\"other\"\n\"2507912\";\"Aïne Taya\";\"other\"\n\"2507926\";\"Aïn Smara\";\"main\"\n\"2507926\";\"Ain Smara\";\"ascii\"\n\"2507926\";\"Aine Smara\";\"other\"\n\"2507926\";\"Aïne Smara\";\"other\"\n\"2507943\";\"Aïn Sefra\";\"main\"\n\"2507943\";\"Ain Sefra\";\"ascii\"\n\"2507943\";\"Aine Sefra\";\"other\"\n\"2507943\";\"Aïne Sefra\";\"other\"\n\"2507972\";\"Aïn Oussera\";\"main\"\n\"2507972\";\"Ain Oussera\";\"ascii\"\n\"2507972\";\"El Oussera\";\"other\"\n\"2507972\";\"Paul Cazelles\";\"other\"\n\"2508010\";\"’Aïn Merane\";\"main\"\n\"2508010\";\"'Ain Merane\";\"ascii\"\n\"2508010\";\"Aine Merane\";\"other\"\n\"2508010\";\"Aïne Merane\";\"other\"\n\"2508010\";\"Rabelais\";\"other\"\n\"2508059\";\"Aïn Kercha\";\"main\"\n\"2508059\";\"Ain Kercha\";\"ascii\"\n\"2508059\";\"Ain Kercka\";\"other\"\n\"2508059\";\"Aine Kercha\";\"other\"\n\"2508059\";\"Aïn Kercka\";\"other\"\n\"2508059\";\"Aïne Kercha\";\"other\"\n\"2508102\";\"Aïn Fakroun\";\"main\"\n\"2508102\";\"Ain Fakroun\";\"ascii\"\n\"2508102\";\"Aine Fakroun\";\"other\"\n\"2508102\";\"Aïne Fakroun\";\"other\"\n\"2508119\";\"’Aïn el Turk\";\"main\"\n\"2508119\";\"'Ain el Turk\";\"ascii\"\n\"2508119\";\"Ain-et-Turk\";\"other\"\n\"2508119\";\"Aine et Turk\";\"other\"\n\"2508119\";\"Ajn-ehl'-Terk\";\"other\"\n\"2508119\";\"Aïn-et-Turk\";\"other\"\n\"2508119\";\"Aïne et Turk\";\"other\"\n\"2508119\";\"Айн-эль-Терк\";\"other\"\n\"2508130\";\"’Aïn el Melh\";\"main\"\n\"2508130\";\"'Ain el Melh\";\"ascii\"\n\"2508130\";\"Ain Melah\";\"other\"\n\"2508130\";\"Ain Melh\";\"other\"\n\"2508130\";\"Ain Mellah\";\"other\"\n\"2508130\";\"Aine Melah\";\"other\"\n\"2508130\";\"Ajn-ehl'-Mel'kh\";\"other\"\n\"2508130\";\"Aïn Melah\";\"other\"\n\"2508130\";\"Aïn Melh\";\"other\"\n\"2508130\";\"Aïne Melah\";\"other\"\n\"2508130\";\"Айн-эль-Мельх\";\"other\"\n\"2508152\";\"’Aïn el Hammam\";\"main\"\n\"2508152\";\"'Ain el Hammam\";\"ascii\"\n\"2508152\";\"Ain El Hamman\";\"other\"\n\"2508152\";\"Ain-el-Hamam\";\"other\"\n\"2508152\";\"Aine el Hammam\";\"other\"\n\"2508152\";\"Ajn-ehl'-Khammam\";\"other\"\n\"2508152\";\"Aïn El Hamman\";\"other\"\n\"2508152\";\"Aïn-el-Hamam\";\"other\"\n\"2508152\";\"Aïne el Hammam\";\"other\"\n\"2508152\";\"Michelet\";\"other\"\n\"2508152\";\"Айн-эль-Хаммам\";\"other\"\n\"2508157\";\"‘Aïn el Hadjel\";\"main\"\n\"2508157\";\"`Ain el Hadjel\";\"ascii\"\n\"2508157\";\"Ain el Hadjel\";\"other\"\n\"2508157\";\"Aine el Hadjel\";\"other\"\n\"2508157\";\"Aïne el Hadjel\";\"other\"\n\"2508157\";\"Selamate\";\"other\"\n\"2508162\";\"’Aïn el Hadjar\";\"main\"\n\"2508162\";\"'Ain el Hadjar\";\"ascii\"\n\"2508162\";\"Aine el Hadjar\";\"other\"\n\"2508162\";\"Aïne el Hadjar\";\"other\"\n\"2508174\";\"Aïn el Bya\";\"main\"\n\"2508174\";\"Ain el Bya\";\"ascii\"\n\"2508174\";\"'Ain el Bia\";\"other\"\n\"2508174\";\"Damesme\";\"other\"\n\"2508174\";\"’Aïn el Bia\";\"other\"\n\"2508180\";\"’Aïn el Berd\";\"main\"\n\"2508180\";\"'Ain el Berd\";\"ascii\"\n\"2508180\";\"Oued Imbert\";\"other\"\n\"2508184\";\"’Aïn el Bell\";\"main\"\n\"2508184\";\"'Ain el Bell\";\"ascii\"\n\"2508184\";\"Ain el Ibel\";\"other\"\n\"2508184\";\"Ajn-ehl'-Bella\";\"other\"\n\"2508184\";\"Aïn el Ibel\";\"other\"\n\"2508184\";\"Fontaine des Chameaux\";\"other\"\n\"2508184\";\"Айн-эль-Белла\";\"other\"\n\"2508225\";\"’Aïn Deheb\";\"main\"\n\"2508225\";\"'Ain Deheb\";\"ascii\"\n\"2508225\";\"El Ousseukh\";\"other\"\n\"2508225\";\"El Ousseukhr\";\"other\"\n\"2508225\";\"El Ousseukr\";\"other\"\n\"2508225\";\"La Fontaine\";\"other\"\n\"2508262\";\"’Aïn Boucif\";\"main\"\n\"2508262\";\"'Ain Boucif\";\"ascii\"\n\"2508262\";\"Aine Boucif\";\"other\"\n\"2508262\";\"Aïne Boucif\";\"other\"\n\"2508262\";\"Bordj Ain Boucif\";\"other\"\n\"2508262\";\"Bordj Aïn Boucif\";\"other\"\n\"2508268\";\"Aïn Bessem\";\"main\"\n\"2508268\";\"Ain Bessem\";\"ascii\"\n\"2508275\";\"’Aïn Benian\";\"main\"\n\"2508275\";\"'Ain Benian\";\"ascii\"\n\"2508275\";\"Ain Berrian\";\"other\"\n\"2508275\";\"Bou Ismail\";\"other\"\n\"2508275\";\"Castiglione\";\"other\"\n\"2508275\";\"Cuyotville\";\"other\"\n\"2508275\";\"Guyotville\";\"other\"\n\"2508287\";\"Aïn Beïda\";\"main\"\n\"2508287\";\"Ain Beida\";\"ascii\"\n\"2508287\";\"Aine Beida\";\"other\"\n\"2508287\";\"Aïne Beïda\";\"other\"\n\"2508297\";\"’Aïn Arnat\";\"main\"\n\"2508297\";\"'Ain Arnat\";\"ascii\"\n\"2508297\";\"Aine Arnat\";\"other\"\n\"2508297\";\"Arnat\";\"other\"\n\"2508297\";\"Aïne Arnat\";\"other\"\n\"2508309\";\"’Aïn Abid\";\"main\"\n\"2508309\";\"'Ain Abid\";\"ascii\"\n\"2508309\";\"Aine Abid\";\"other\"\n\"2508309\";\"Aïne Abid\";\"other\"\n\"2508737\";\"Aflou\";\"main\"\n\"2508737\";\"Aflu\";\"other\"\n\"2509031\";\"Abou el Hassan\";\"main\"\n\"2509031\";\"Abou el Hassen\";\"other\"\n\"2509031\";\"Beni Madoun\";\"other\"\n\"2509031\";\"Bordj Abou el Hassen\";\"other\"\n\"2509031\";\"Cavaignac\";\"other\"\n\"6698360\";\"BABOR - VILLE\";\"main\"\n\"7115828\";\"Smala\";\"main\"\n\"3649914\";\"Zaruma\";\"main\"\n\"3649959\";\"Zamora\";\"main\"\n\"3650053\";\"Yantzaza\";\"main\"\n\"3650121\";\"Yaguachi\";\"main\"\n\"3650121\";\"Yaguachi Nuevo\";\"other\"\n\"3650186\";\"Vinces\";\"main\"\n\"3650267\";\"Ventanas\";\"main\"\n\"3650273\";\"Velasco Ibarra\";\"main\"\n\"3650273\";\"El Empalme\";\"other\"\n\"3650273\";\"Empalme\";\"other\"\n\"3650312\";\"Valdez\";\"main\"\n\"3650312\";\"Limones\";\"other\"\n\"3650312\";\"Valdes\";\"other\"\n\"3650312\";\"Valdés\";\"other\"\n\"3650554\";\"Tosagua\";\"main\"\n\"3650721\";\"Tena\";\"main\"\n\"3650721\";\"Napo\";\"other\"\n\"3650721\";\"San Juan de Tena\";\"other\"\n\"3650956\";\"Sucúa\";\"main\"\n\"3650956\";\"Sucua\";\"ascii\"\n\"3650960\";\"Sucre\";\"main\"\n\"3651251\";\"Saquisilí\";\"main\"\n\"3651251\";\"Saquisili\";\"ascii\"\n\"3651297\";\"Santo Domingo de los Colorados\";\"main\"\n\"3651297\";\"Santo Domingo\";\"other\"\n\"3651297\";\"Santo-Domingo-de-los-Kolorados\";\"other\"\n\"3651297\";\"Санто-Доминго-де-лос-Колорадос\";\"other\"\n\"3651356\";\"Santa Rosa\";\"main\"\n\"3651411\";\"Santa Lucía\";\"main\"\n\"3651411\";\"Santa Lucia\";\"ascii\"\n\"3651438\";\"Santa Elena\";\"main\"\n\"3651495\";\"Santa Ana\";\"main\"\n\"3651613\";\"San Miguel de Salcedo\";\"main\"\n\"3651613\";\"Salcedo\";\"other\"\n\"3651613\";\"San Miguel\";\"other\"\n\"3651639\";\"San Miguel\";\"main\"\n\"3651639\";\"San Miguel de Chimbo\";\"other\"\n\"3651694\";\"San Lorenzo de Esmeraldas\";\"main\"\n\"3651694\";\"Puerto San Lorenzo\";\"other\"\n\"3651694\";\"San Lorenzo\";\"other\"\n\"3651857\";\"Sangolquí\";\"main\"\n\"3651857\";\"Sangolqui\";\"ascii\"\n\"3651868\";\"San Gabriel\";\"main\"\n\"3651868\";\"Montufar\";\"other\"\n\"3651868\";\"Montúfar\";\"other\"\n\"3651949\";\"San Cristóbal\";\"main\"\n\"3651949\";\"San Cristobal\";\"ascii\"\n\"3652065\";\"Samborondón\";\"main\"\n\"3652065\";\"Samborondon\";\"ascii\"\n\"3652065\";\"Samrondon\";\"other\"\n\"3652065\";\"Samrondón\";\"other\"\n\"3652065\";\"Zamborondon\";\"other\"\n\"3652065\";\"Zamborondón\";\"other\"\n\"3652100\";\"Salinas\";\"main\"\n\"3652100\";\"Салинас\";\"other\"\n\"3652257\";\"Rosa Zárate\";\"main\"\n\"3652257\";\"Rosa Zarate\";\"ascii\"\n\"3652257\";\"Quininde\";\"other\"\n\"3652315\";\"Rocafuerte\";\"main\"\n\"3652350\";\"Riobamba\";\"main\"\n\"3652462\";\"Quito\";\"main\"\n\"3652462\";\"Kita\";\"other\"\n\"3652462\";\"Kitas\";\"other\"\n\"3652462\";\"Kito\";\"other\"\n\"3652462\";\"Kitu\";\"other\"\n\"3652462\";\"San Francisco de Quito\";\"other\"\n\"3652462\";\"ji duo\";\"other\"\n\"3652462\";\"ki to\";\"other\"\n\"3652462\";\"kito\";\"other\"\n\"3652462\";\"kytw\";\"other\"\n\"3652462\";\"qytw\";\"other\"\n\"3652462\";\"Κίτο\";\"other\"\n\"3652462\";\"Кито\";\"other\"\n\"3652462\";\"Кіта\";\"other\"\n\"3652462\";\"Кіто\";\"other\"\n\"3652462\";\"Կիտո\";\"other\"\n\"3652462\";\"קיטו\";\"other\"\n\"3652462\";\"كيتو\";\"other\"\n\"3652462\";\"กีโต\";\"other\"\n\"3652462\";\"ኪቶ\";\"other\"\n\"3652462\";\"キト\";\"other\"\n\"3652462\";\"基多\";\"other\"\n\"3652462\";\"키토\";\"other\"\n\"3652567\";\"Quevedo\";\"main\"\n\"3652584\";\"Puyo\";\"main\"\n\"3652584\";\"El Puyo\";\"other\"\n\"3652584\";\"Pujo\";\"other\"\n\"3652584\";\"Пуйо\";\"other\"\n\"3652684\";\"Pujilí\";\"main\"\n\"3652684\";\"Pujili\";\"ascii\"\n\"3652684\";\"Pajili\";\"other\"\n\"3652757\";\"Puerto Bolívar\";\"main\"\n\"3652757\";\"Puerto Bolivar\";\"ascii\"\n\"3652757\";\"Ponto Bolivar\";\"other\"\n\"3652757\";\"Пуерто Боливар\";\"other\"\n\"3652758\";\"Puerto Baquerizo Moreno\";\"main\"\n\"3652758\";\"Baquerizo Moreno\";\"other\"\n\"3652758\";\"Puerto Baquerizo\";\"other\"\n\"3652758\";\"Puerto Chico\";\"other\"\n\"3652764\";\"Puerto Ayora\";\"main\"\n\"3652881\";\"Propicia\";\"main\"\n\"3652941\";\"Portoviejo\";\"main\"\n\"3652941\";\"Portov'ekho\";\"other\"\n\"3652941\";\"Портовьехо\";\"other\"\n\"3652943\";\"Portovelo\";\"main\"\n\"3652943\";\"Portobelo\";\"other\"\n\"3652943\";\"Portoviejo\";\"other\"\n\"3653015\";\"Playas\";\"main\"\n\"3653015\";\"General Villamil\";\"other\"\n\"3653015\";\"Villamil\";\"other\"\n\"3653130\";\"Piñas\";\"main\"\n\"3653130\";\"Pinas\";\"ascii\"\n\"3653146\";\"Pimampiro\";\"main\"\n\"3653146\";\"Pimanpiro\";\"other\"\n\"3653159\";\"Píllaro\";\"main\"\n\"3653159\";\"Pillaro\";\"ascii\"\n\"3653287\";\"Pelileo\";\"main\"\n\"3653295\";\"Pedro Carbo\";\"main\"\n\"3653307\";\"Pedernales\";\"main\"\n\"3653403\";\"Pasaje\";\"main\"\n\"3653523\";\"Palora\";\"main\"\n\"3653523\";\"Metzera\";\"other\"\n\"3653581\";\"Palestina\";\"main\"\n\"3653587\";\"Palenque\";\"main\"\n\"3653609\";\"Paján\";\"main\"\n\"3653609\";\"Pajan\";\"ascii\"\n\"3653693\";\"Otavalo\";\"main\"\n\"3653693\";\"Otovalo\";\"other\"\n\"3653693\";\"Отавало\";\"other\"\n\"3653873\";\"Naranjito\";\"main\"\n\"3653882\";\"Naranjal\";\"main\"\n\"3653967\";\"Muisne\";\"main\"\n\"3654055\";\"Montecristi\";\"main\"\n\"3654064\";\"Montalvo\";\"main\"\n\"3654410\";\"Manta\";\"main\"\n\"3654410\";\"Manta Ecuador\";\"other\"\n\"3654410\";\"Puerto de Manta\";\"other\"\n\"3654410\";\"Манта\";\"other\"\n\"3654533\";\"Machala\";\"main\"\n\"3654533\";\"machala\";\"other\"\n\"3654533\";\"Мачала\";\"other\"\n\"3654533\";\"ماچالا\";\"other\"\n\"3654536\";\"Machachi\";\"main\"\n\"3654536\";\"Ciudad de Machachi\";\"other\"\n\"3654536\";\"Machache\";\"other\"\n\"3654541\";\"Macas\";\"main\"\n\"3654545\";\"Macará\";\"main\"\n\"3654545\";\"Macara\";\"ascii\"\n\"3654650\";\"Lomas de Sargentillo\";\"main\"\n\"3654667\";\"Loja\";\"main\"\n\"3654667\";\"Lokha\";\"other\"\n\"3654667\";\"Лоха\";\"other\"\n\"3654853\";\"La Troncal\";\"main\"\n\"3654870\";\"Latacunga\";\"main\"\n\"3655117\";\"La Maná\";\"main\"\n\"3655117\";\"La Mana\";\"ascii\"\n\"3655131\";\"La Libertad\";\"main\"\n\"3655185\";\"Nueva Loja\";\"main\"\n\"3655185\";\"Lago Agrio\";\"other\"\n\"3655185\";\"Nuehva-Lokha\";\"other\"\n\"3655185\";\"Нуэва-Лоха\";\"other\"\n\"3655385\";\"Junín\";\"main\"\n\"3655385\";\"Junin\";\"ascii\"\n\"3655446\";\"Jipijapa\";\"main\"\n\"3655673\";\"Ibarra\";\"main\"\n\"3655673\";\"Ибарра\";\"other\"\n\"3655720\";\"Huaquillas\";\"main\"\n\"3657509\";\"Guayaquil\";\"main\"\n\"3657509\";\"Gouagiakil\";\"other\"\n\"3657509\";\"Guajakil'\";\"other\"\n\"3657509\";\"Gvajakil\";\"other\"\n\"3657509\";\"Gvajakila\";\"other\"\n\"3657509\";\"Gvajakilis\";\"other\"\n\"3657509\";\"Wayakil\";\"other\"\n\"3657509\";\"ghwayakyl\";\"other\"\n\"3657509\";\"guayakiru\";\"other\"\n\"3657509\";\"Γουαγιακίλ\";\"other\"\n\"3657509\";\"Гвајакил\";\"other\"\n\"3657509\";\"Гуаякиль\";\"other\"\n\"3657509\";\"Ґуаякіль\";\"other\"\n\"3657509\";\"غواياكيل\";\"other\"\n\"3657509\";\"グアヤキル\";\"other\"\n\"3657571\";\"Guaranda\";\"main\"\n\"3657571\";\"Гуаранда\";\"other\"\n\"3657594\";\"Guano\";\"main\"\n\"3657661\";\"Gualaquiza\";\"main\"\n\"3657661\";\"Gualiquiza\";\"other\"\n\"3657661\";\"Santiago\";\"other\"\n\"3657670\";\"Gualaceo\";\"main\"\n\"3658053\";\"El Triunfo\";\"main\"\n\"3658192\";\"Durán\";\"main\"\n\"3658192\";\"Duran\";\"ascii\"\n\"3658192\";\"Alfaro\";\"other\"\n\"3658192\";\"Eloy alfaro\";\"other\"\n\"3658379\";\"El Ángel\";\"main\"\n\"3658379\";\"El Angel\";\"ascii\"\n\"3658379\";\"Espejo\";\"other\"\n\"3658666\";\"Cuenca\";\"main\"\n\"3658666\";\"Kuehnka\";\"other\"\n\"3658666\";\"Куэнка\";\"other\"\n\"3658781\";\"Cotacachi\";\"main\"\n\"3658822\";\"Coronel Marcelino Maridueña\";\"main\"\n\"3658822\";\"Coronel Marcelino Mariduena\";\"ascii\"\n\"3658822\";\"Coronel Mariduena\";\"other\"\n\"3658822\";\"Coronel Maridueña\";\"other\"\n\"3658822\";\"Mariduena\";\"other\"\n\"3658822\";\"Maridueña\";\"other\"\n\"3658948\";\"Colimes\";\"main\"\n\"3659139\";\"Chone\";\"main\"\n\"3659544\";\"Celica\";\"main\"\n\"3659578\";\"Cayambe\";\"main\"\n\"3659578\";\"Kajambe\";\"other\"\n\"3659578\";\"Каямбе\";\"other\"\n\"3659592\";\"Catarama\";\"main\"\n\"3659592\";\"Urdaneta\";\"other\"\n\"3659599\";\"Catamayo\";\"main\"\n\"3659599\";\"La Toma\";\"other\"\n\"3659602\";\"Catacocha\";\"main\"\n\"3659711\";\"Cariamanga\";\"main\"\n\"3659711\";\"Calvas\";\"other\"\n\"3659852\";\"Cañar\";\"main\"\n\"3659852\";\"Canar\";\"ascii\"\n\"3659926\";\"Calceta\";\"main\"\n\"3659926\";\"Bolivar\";\"other\"\n\"3659926\";\"Bolívar\";\"other\"\n\"3660152\";\"Boca Suno\";\"main\"\n\"3660152\";\"Suno\";\"other\"\n\"3660346\";\"Baños\";\"main\"\n\"3660346\";\"Banos\";\"ascii\"\n\"3660361\";\"Balzar\";\"main\"\n\"3660387\";\"Baláo\";\"main\"\n\"3660387\";\"Balao\";\"ascii\"\n\"3660401\";\"Bahía de Caráquez\";\"main\"\n\"3660401\";\"Bahia de Caraquez\";\"ascii\"\n\"3660401\";\"Bahia\";\"other\"\n\"3660401\";\"Bahia de Caraques\";\"other\"\n\"3660401\";\"Bahia de Caráques\";\"other\"\n\"3660401\";\"Bahía\";\"other\"\n\"3660401\";\"Caracas\";\"other\"\n\"3660401\";\"Sucre\";\"other\"\n\"3660418\";\"Babahoyo\";\"main\"\n\"3660418\";\"Babahoya\";\"other\"\n\"3660434\";\"Azogues\";\"main\"\n\"3660434\";\"Azoguez\";\"other\"\n\"3660478\";\"Atuntaqui\";\"main\"\n\"3660573\";\"Archidona\";\"main\"\n\"3660689\";\"Ambato\";\"main\"\n\"3660689\";\"San Juan de Ambato\";\"other\"\n\"3660689\";\"Амбато\";\"other\"\n\"3660773\";\"Alfredo Baquerizo Moreno\";\"main\"\n\"3660773\";\"Jujan\";\"other\"\n\"3660773\";\"Juján\";\"other\"\n\"3660798\";\"Alausí\";\"main\"\n\"3660798\";\"Alausi\";\"ascii\"\n\"587440\";\"Vändra\";\"main\"\n\"587440\";\"Vandra\";\"ascii\"\n\"587440\";\"Alt-Fennern\";\"other\"\n\"587440\";\"Fennern\";\"other\"\n\"587440\";\"Staryy Fennern'\";\"other\"\n\"587440\";\"Staryy Fennern’\";\"other\"\n\"587440\";\"VJANDRA\";\"other\"\n\"587440\";\"Vaendra\";\"other\"\n\"587440\";\"Vana Vendre\";\"other\"\n\"587440\";\"Vana-Vandra\";\"other\"\n\"587440\";\"Vana-Vendra\";\"other\"\n\"587440\";\"Vana-Vyandra\";\"other\"\n\"587440\";\"Vana-Vändra\";\"other\"\n\"587440\";\"Vendra\";\"other\"\n\"587440\";\"Vyandra\";\"other\"\n\"587440\";\"Vėndra\";\"other\"\n\"587440\";\"ВЯНДРА\";\"other\"\n\"587450\";\"Võru\";\"main\"\n\"587450\";\"Voru\";\"ascii\"\n\"587450\";\"VYRU\";\"other\"\n\"587450\";\"Verava\";\"other\"\n\"587450\";\"Veri\";\"other\"\n\"587450\";\"Verro\";\"other\"\n\"587450\";\"Veru\";\"other\"\n\"587450\";\"Voru vald\";\"other\"\n\"587450\";\"Vyru\";\"other\"\n\"587450\";\"Võru vald\";\"other\"\n\"587450\";\"Werro\";\"other\"\n\"587450\";\"Woru\";\"other\"\n\"587450\";\"Wöru\";\"other\"\n\"587450\";\"ВЫРУ\";\"other\"\n\"587491\";\"Voka\";\"main\"\n\"587517\";\"Võhma\";\"main\"\n\"587517\";\"Vohma\";\"ascii\"\n\"587517\";\"Myasto Vykhma\";\"other\"\n\"587517\";\"VYKHMA\";\"other\"\n\"587517\";\"Vechma\";\"other\"\n\"587517\";\"Vekhma\";\"other\"\n\"587517\";\"Wochma\";\"other\"\n\"587517\";\"Wohma\";\"other\"\n\"587517\";\"Wöchma\";\"other\"\n\"587517\";\"Wöhma\";\"other\"\n\"587517\";\"ВЫХМА\";\"other\"\n\"587571\";\"Vinni\";\"main\"\n\"587571\";\"Myza Vinni\";\"other\"\n\"587571\";\"Vinni Asundus\";\"other\"\n\"587577\";\"Viljandi\";\"main\"\n\"587577\";\"Felin\";\"other\"\n\"587577\";\"Fellin\";\"other\"\n\"587577\";\"VIL'JANDI\";\"other\"\n\"587577\";\"Vil'jandi\";\"other\"\n\"587577\";\"Vil'yandi\";\"other\"\n\"587577\";\"Vilande\";\"other\"\n\"587577\";\"Viljandis\";\"other\"\n\"587577\";\"Vil’yandi\";\"other\"\n\"587577\";\"Vylande\";\"other\"\n\"587577\";\"Vylandė\";\"other\"\n\"587577\";\"Wiljandi\";\"other\"\n\"587577\";\"ВИЛЬЯНДИ\";\"other\"\n\"587577\";\"Вильянди\";\"other\"\n\"587577\";\"ויליאנדי\";\"other\"\n\"587620\";\"Viiratsi\";\"main\"\n\"587620\";\"Myza Viratsi\";\"other\"\n\"587629\";\"Viimsi\";\"main\"\n\"587629\";\"Myza Viymsi\";\"other\"\n\"587826\";\"Vana-Antsla\";\"main\"\n\"587876\";\"Valga\";\"main\"\n\"587876\";\"VALGA\";\"other\"\n\"587876\";\"VALKA\";\"other\"\n\"587876\";\"Valk\";\"other\"\n\"587876\";\"Valka\";\"other\"\n\"587876\";\"Walga\";\"other\"\n\"587876\";\"Walk\";\"other\"\n\"587876\";\"wlgh\";\"other\"\n\"587876\";\"ВАЛГА\";\"other\"\n\"587876\";\"ВАЛКА\";\"other\"\n\"587876\";\"Валга\";\"other\"\n\"587876\";\"ולגה\";\"other\"\n\"587923\";\"Väike-Maarja\";\"main\"\n\"587923\";\"Vaike-Maarja\";\"ascii\"\n\"587923\";\"Klein-Marien\";\"other\"\n\"587923\";\"Klein-Sankt-Marien\";\"other\"\n\"587923\";\"Kleyn Mariyen\";\"other\"\n\"587923\";\"Sankt-Marien\";\"other\"\n\"587923\";\"Vaeike-Maarja\";\"other\"\n\"587923\";\"Vaike-Maaja\";\"other\"\n\"587923\";\"Vjajke-Maar'ja\";\"other\"\n\"587923\";\"Väike-Maaja\";\"other\"\n\"587923\";\"Вяйке-Маарья\";\"other\"\n\"587938\";\"Vaida\";\"main\"\n\"587938\";\"Vajda\";\"other\"\n\"587938\";\"Vayda\";\"other\"\n\"587938\";\"Вайда\";\"other\"\n\"588015\";\"Uuemõisa\";\"main\"\n\"588015\";\"Uuemoisa\";\"ascii\"\n\"588015\";\"Myza Uemyyza\";\"other\"\n\"588092\";\"Ülenurme\";\"main\"\n\"588092\";\"Ulenurme\";\"ascii\"\n\"588092\";\"Ilenurme\";\"other\"\n\"588092\";\"Julenurme\";\"other\"\n\"588092\";\"UElenurme\";\"other\"\n\"588092\";\"Юленурме\";\"other\"\n\"588153\";\"Türi\";\"main\"\n\"588153\";\"Turi\";\"ascii\"\n\"588153\";\"TJURI\";\"other\"\n\"588153\";\"Thurgel\";\"other\"\n\"588153\";\"Tiri\";\"other\"\n\"588153\";\"Tueri\";\"other\"\n\"588153\";\"Turgel\";\"other\"\n\"588153\";\"Tyuri\";\"other\"\n\"588153\";\"ТЮРИ\";\"other\"\n\"588157\";\"Turba\";\"main\"\n\"588157\";\"Турба\";\"other\"\n\"588204\";\"Tõrva\";\"main\"\n\"588204\";\"Torva\";\"ascii\"\n\"588204\";\"Helmut\";\"other\"\n\"588204\";\"Khel'met\";\"other\"\n\"588204\";\"Khel’met\";\"other\"\n\"588204\";\"TYRVA\";\"other\"\n\"588204\";\"Terva\";\"other\"\n\"588204\";\"Torrwa\";\"other\"\n\"588204\";\"Torwa\";\"other\"\n\"588204\";\"Tyrva\";\"other\"\n\"588204\";\"Törrwa\";\"other\"\n\"588204\";\"Törwa\";\"other\"\n\"588204\";\"ТЫРВА\";\"other\"\n\"588223\";\"Tootsi\";\"main\"\n\"588223\";\"TOOTSI\";\"other\"\n\"588223\";\"Totsi\";\"other\"\n\"588223\";\"ТООТСИ\";\"other\"\n\"588264\";\"Toila\";\"main\"\n\"588264\";\"Tojla\";\"other\"\n\"588264\";\"Toyla\";\"other\"\n\"588264\";\"Тойла\";\"other\"\n\"588335\";\"Tartu\";\"main\"\n\"588335\";\"Derpt\";\"other\"\n\"588335\";\"Dorpat\";\"other\"\n\"588335\";\"TARTU\";\"other\"\n\"588335\";\"Tarbatum\";\"other\"\n\"588335\";\"Tartto\";\"other\"\n\"588335\";\"Terbata\";\"other\"\n\"588335\";\"Tērbata\";\"other\"\n\"588335\";\"Yur'yev\";\"other\"\n\"588335\";\"Yurev\";\"other\"\n\"588335\";\"taleutu\";\"other\"\n\"588335\";\"taruto~u\";\"other\"\n\"588335\";\"trtw\";\"other\"\n\"588335\";\"ТАРТУ\";\"other\"\n\"588335\";\"Тарту\";\"other\"\n\"588335\";\"טרטו\";\"other\"\n\"588335\";\"ტარტუ\";\"other\"\n\"588335\";\"タルトゥ\";\"other\"\n\"588335\";\"타르투\";\"other\"\n\"588348\";\"Tapa\";\"main\"\n\"588348\";\"TAPA\";\"other\"\n\"588348\";\"Taps\";\"other\"\n\"588348\";\"ТАПА\";\"other\"\n\"588365\";\"Tamsalu\";\"main\"\n\"588365\";\"TAMSALU\";\"other\"\n\"588365\";\"Tamsal\";\"other\"\n\"588365\";\"ТАМСАЛУ\";\"other\"\n\"588409\";\"Tallinn\";\"main\"\n\"588409\";\"Castrum Danorum\";\"other\"\n\"588409\";\"Kallinn\";\"other\"\n\"588409\";\"Kolyvan\";\"other\"\n\"588409\";\"QUF\";\"other\"\n\"588409\";\"Raaveli\";\"other\"\n\"588409\";\"Reval\";\"other\"\n\"588409\";\"Revel'\";\"other\"\n\"588409\";\"Rääveli\";\"other\"\n\"588409\";\"Talin\";\"other\"\n\"588409\";\"Talin - Tallinn\";\"other\"\n\"588409\";\"Talinas\";\"other\"\n\"588409\";\"Talino\";\"other\"\n\"588409\";\"Tallin\";\"other\"\n\"588409\";\"Tallina\";\"other\"\n\"588409\";\"Tallinna\";\"other\"\n\"588409\";\"Talín - Tallinn\";\"other\"\n\"588409\";\"Tàllin\";\"other\"\n\"588409\";\"ta lin\";\"other\"\n\"588409\";\"tallin\";\"other\"\n\"588409\";\"talyn\";\"other\"\n\"588409\";\"tarin\";\"other\"\n\"588409\";\"thallin n\";\"other\"\n\"588409\";\"Ταλίν\";\"other\"\n\"588409\";\"Ταλιν\";\"other\"\n\"588409\";\"Ταλλίν\";\"other\"\n\"588409\";\"Талин\";\"other\"\n\"588409\";\"Таллин\";\"other\"\n\"588409\";\"Таллін\";\"other\"\n\"588409\";\"Талін\";\"other\"\n\"588409\";\"Տալլին\";\"other\"\n\"588409\";\"טאלין\";\"other\"\n\"588409\";\"تالين\";\"other\"\n\"588409\";\"ทาลลินน์\";\"other\"\n\"588409\";\"ტალინი\";\"other\"\n\"588409\";\"ታሊን\";\"other\"\n\"588409\";\"タリン\";\"other\"\n\"588409\";\"塔林\";\"other\"\n\"588409\";\"탈린\";\"other\"\n\"588454\";\"Tabasalu\";\"main\"\n\"588454\";\"Tabasalyu\";\"other\"\n\"588532\";\"Suure-Jaani\";\"main\"\n\"588532\";\"Gros Iogannis\";\"other\"\n\"588532\";\"Gross-Sankt-Johannis\";\"other\"\n\"588532\";\"Sur-Yani\";\"other\"\n\"588532\";\"Suure-Yani\";\"other\"\n\"588532\";\"Сууре-Яани\";\"other\"\n\"588673\";\"Sindi\";\"main\"\n\"588673\";\"SINDI\";\"other\"\n\"588673\";\"Tsintengof\";\"other\"\n\"588673\";\"Zinten\";\"other\"\n\"588673\";\"Zintenhof\";\"other\"\n\"588673\";\"СИНДИ\";\"other\"\n\"588686\";\"Sillamäe\";\"main\"\n\"588686\";\"Sillamae\";\"ascii\"\n\"588686\";\"SILLAMJAEH\";\"other\"\n\"588686\";\"Silameje\";\"other\"\n\"588686\";\"Silamejė\";\"other\"\n\"588686\";\"Silamiaje\";\"other\"\n\"588686\";\"Silamiajė\";\"other\"\n\"588686\";\"Sillamaee\";\"other\"\n\"588686\";\"Sillamagi\";\"other\"\n\"588686\";\"Sillame\";\"other\"\n\"588686\";\"Sillamyae\";\"other\"\n\"588686\";\"Sillamē\";\"other\"\n\"588686\";\"Suvilad\";\"other\"\n\"588686\";\"sillamjae\";\"other\"\n\"588686\";\"sillamjaeh\";\"other\"\n\"588686\";\"СИЛЛАМЯЭ\";\"other\"\n\"588686\";\"Силламяе\";\"other\"\n\"588686\";\"Силламяэ\";\"other\"\n\"588774\";\"Sauga\";\"main\"\n\"588774\";\"Myza Sauga\";\"other\"\n\"588780\";\"Saue\";\"main\"\n\"588780\";\"Myza Saue\";\"other\"\n\"588780\";\"SAUEH\";\"other\"\n\"588780\";\"САУЭ\";\"other\"\n\"588792\";\"Särevere\";\"main\"\n\"588792\";\"Sarevere\";\"ascii\"\n\"588792\";\"Myza Syarevere\";\"other\"\n\"588792\";\"Saerevere\";\"other\"\n\"588792\";\"Sarevere Asundus\";\"other\"\n\"588792\";\"Sjarevere\";\"other\"\n\"588792\";\"Särevere Asundus\";\"other\"\n\"588792\";\"Сяревере\";\"other\"\n\"588831\";\"Saku\";\"main\"\n\"588831\";\"Саку\";\"other\"\n\"588922\";\"Rummu\";\"main\"\n\"589024\";\"Riisipere\";\"main\"\n\"589024\";\"Riesenberg\";\"other\"\n\"589024\";\"Rijzipere\";\"other\"\n\"589024\";\"Risipere\";\"other\"\n\"589024\";\"Riyzipere\";\"other\"\n\"589024\";\"Rizipere\";\"other\"\n\"589024\";\"Rozenberg'\";\"other\"\n\"589024\";\"Rozenberg’\";\"other\"\n\"589024\";\"Рийзипере\";\"other\"\n\"589116\";\"Rapla\";\"main\"\n\"589116\";\"Odenkam\";\"other\"\n\"589116\";\"RAPLA\";\"other\"\n\"589116\";\"Rapla-kyulya\";\"other\"\n\"589116\";\"Raplakula\";\"other\"\n\"589116\";\"Raplaküla\";\"other\"\n\"589116\";\"Rappel\";\"other\"\n\"589116\";\"РАПЛА\";\"other\"\n\"589117\";\"Räpina\";\"main\"\n\"589117\";\"Rapina\";\"ascii\"\n\"589117\";\"Raepina\";\"other\"\n\"589117\";\"Rapin\";\"other\"\n\"589117\";\"Rapino\";\"other\"\n\"589117\";\"Rjapina\";\"other\"\n\"589117\";\"Ryapina\";\"other\"\n\"589117\";\"Ряпина\";\"other\"\n\"589165\";\"Rakvere\";\"main\"\n\"589165\";\"RAKVERE\";\"other\"\n\"589165\";\"Rakvere_vald\";\"other\"\n\"589165\";\"Rakwere\";\"other\"\n\"589165\";\"Vezenberg\";\"other\"\n\"589165\";\"Wesenberg\";\"other\"\n\"589165\";\"РАКВЕРЕ\";\"other\"\n\"589166\";\"Rakke\";\"main\"\n\"589166\";\"Racke\";\"other\"\n\"589166\";\"Rake\";\"other\"\n\"589166\";\"Ракке\";\"other\"\n\"589223\";\"Raasiku\";\"main\"\n\"589223\";\"Harju Jani\";\"other\"\n\"589223\";\"Harju Jãni\";\"other\"\n\"589223\";\"Harju-Jaani\";\"other\"\n\"589223\";\"Raaziku\";\"other\"\n\"589223\";\"Rasik\";\"other\"\n\"589223\";\"Rasiku\";\"other\"\n\"589223\";\"Razik'\";\"other\"\n\"589223\";\"Razik’\";\"other\"\n\"589223\";\"Sankt-Johannis\";\"other\"\n\"589223\";\"Раазику\";\"other\"\n\"589253\";\"Püssi\";\"main\"\n\"589253\";\"Pussi\";\"ascii\"\n\"589253\";\"Neu-Isenhof\";\"other\"\n\"589253\";\"PJUSSI\";\"other\"\n\"589253\";\"Pisi\";\"other\"\n\"589253\";\"Piusis\";\"other\"\n\"589253\";\"Pjujssi\";\"other\"\n\"589253\";\"Puessi\";\"other\"\n\"589253\";\"Pyussi\";\"other\"\n\"589253\";\"ПЮССИ\";\"other\"\n\"589253\";\"Пюйсси\";\"other\"\n\"589307\";\"Puhja\";\"main\"\n\"589307\";\"Kawelecht\";\"other\"\n\"589307\";\"Pukh\\\"ja\";\"other\"\n\"589307\";\"Pukh'ya\";\"other\"\n\"589307\";\"Pukhiya\";\"other\"\n\"589307\";\"Pukh’ya\";\"other\"\n\"589307\";\"Пухъя\";\"other\"\n\"589375\";\"Põlva\";\"main\"\n\"589375\";\"Polva\";\"ascii\"\n\"589375\";\"PYLVA\";\"other\"\n\"589375\";\"Pel've\";\"other\"\n\"589375\";\"Pelva\";\"other\"\n\"589375\";\"Pel’ve\";\"other\"\n\"589375\";\"Polva Alevik\";\"other\"\n\"589375\";\"Polwa\";\"other\"\n\"589375\";\"Polwe\";\"other\"\n\"589375\";\"Pyl'va\";\"other\"\n\"589375\";\"Pyl’va\";\"other\"\n\"589375\";\"Põlva Alevik\";\"other\"\n\"589375\";\"Pölwa\";\"other\"\n\"589375\";\"Pölwe\";\"other\"\n\"589375\";\"ПЫЛВА\";\"other\"\n\"589379\";\"Põltsamaa\";\"main\"\n\"589379\";\"Poltsamaa\";\"ascii\"\n\"589379\";\"Ober\\\"-Palen\\\"\";\"other\"\n\"589379\";\"Oberpahlen\";\"other\"\n\"589379\";\"Ober”-Palen”\";\"other\"\n\"589379\";\"PYLTSAMAA\";\"other\"\n\"589379\";\"Peltsama\";\"other\"\n\"589379\";\"Peltsamā\";\"other\"\n\"589379\";\"Poltsamaa_vald\";\"other\"\n\"589379\";\"Pyltsama\";\"other\"\n\"589379\";\"Pyltsamaa\";\"other\"\n\"589379\";\"Põltsamaa_vald\";\"other\"\n\"589379\";\"ПЫЛТСАМАА\";\"other\"\n\"589578\";\"Pärnu-Jaagupi\";\"main\"\n\"589578\";\"Parnu-Jaagupi\";\"ascii\"\n\"589578\";\"Jaagupi\";\"other\"\n\"589578\";\"Jakobi\";\"other\"\n\"589578\";\"Paernu-Jaagupi\";\"other\"\n\"589578\";\"Parnu-Jakobi\";\"other\"\n\"589578\";\"Pjarnu-Jaagupi\";\"other\"\n\"589578\";\"Pyarnu-Yaagupi\";\"other\"\n\"589578\";\"Pyarnu-Yagupi\";\"other\"\n\"589578\";\"Pärnu-Jakobi\";\"other\"\n\"589578\";\"Sankt-Jakobi\";\"other\"\n\"589578\";\"Sankt-Jakoby\";\"other\"\n\"589578\";\"Svyatogo Iakova\";\"other\"\n\"589578\";\"Yakobi\";\"other\"\n\"589578\";\"Пярну-Яагупи\";\"other\"\n\"589580\";\"Pärnu\";\"main\"\n\"589580\";\"Parnu\";\"ascii\"\n\"589580\";\"PJARNU\";\"other\"\n\"589580\";\"Paernu\";\"other\"\n\"589580\";\"Parnawa\";\"other\"\n\"589580\";\"Pernau\";\"other\"\n\"589580\";\"Pernava\";\"other\"\n\"589580\";\"Pernavia\";\"other\"\n\"589580\";\"Pernov\";\"other\"\n\"589580\";\"Piarnu\";\"other\"\n\"589580\";\"Pjarnu\";\"other\"\n\"589580\";\"Pyaonu\";\"other\"\n\"589580\";\"Pyarnu\";\"other\"\n\"589580\";\"Pērnava\";\"other\"\n\"589580\";\"ПЯРНУ\";\"other\"\n\"589580\";\"Пярну\";\"other\"\n\"589580\";\"პიარნუ\";\"other\"\n\"589663\";\"Paldiski\";\"main\"\n\"589663\";\"Baltiiskii Port\";\"other\"\n\"589663\";\"Baltijas Ports\";\"other\"\n\"589663\";\"Baltischport\";\"other\"\n\"589663\";\"Baltiski\";\"other\"\n\"589663\";\"Baltiysk Port\";\"other\"\n\"589663\";\"Baltiyskiy Port\";\"other\"\n\"589663\";\"PALDISKI\";\"other\"\n\"589663\";\"Paldiskis\";\"other\"\n\"589663\";\"Paltiski\";\"other\"\n\"589663\";\"Port Baltic\";\"other\"\n\"589663\";\"Port Baltique\";\"other\"\n\"589663\";\"Rogowik\";\"other\"\n\"589663\";\"ПАЛДИСКИ\";\"other\"\n\"589663\";\"Палдиски\";\"other\"\n\"589703\";\"Paikuse\";\"main\"\n\"589709\";\"Paide\";\"main\"\n\"589709\";\"PAJDE\";\"other\"\n\"589709\";\"Paide_vald\";\"other\"\n\"589709\";\"Payde\";\"other\"\n\"589709\";\"Veisenshtein\";\"other\"\n\"589709\";\"Veisenshteyn\";\"other\"\n\"589709\";\"Veysenshteyn\";\"other\"\n\"589709\";\"Weissenstein\";\"other\"\n\"589709\";\"ПАЙДЕ\";\"other\"\n\"589782\";\"Otepää\";\"main\"\n\"589782\";\"Otepaa\";\"ascii\"\n\"589782\";\"Nustago\";\"other\"\n\"589782\";\"OTEPJA\";\"other\"\n\"589782\";\"Odenpa\";\"other\"\n\"589782\";\"Odenpaeh\";\"other\"\n\"589782\";\"Odenpe\";\"other\"\n\"589782\";\"Odenpä\";\"other\"\n\"589782\";\"Odenpäh\";\"other\"\n\"589782\";\"Otepaeae\";\"other\"\n\"589782\";\"Otepaeae_vald\";\"other\"\n\"589782\";\"Otepea\";\"other\"\n\"589782\";\"Otepya\";\"other\"\n\"589782\";\"Otepää_vald\";\"other\"\n\"589782\";\"Shloss\";\"other\"\n\"589782\";\"ОТЕПЯ\";\"other\"\n\"589796\";\"Orissaare\";\"main\"\n\"589796\";\"Orisaara\";\"other\"\n\"589796\";\"Orisaare\";\"other\"\n\"589796\";\"Orisar\";\"other\"\n\"589796\";\"Orisare\";\"other\"\n\"589796\";\"Orissaar\";\"other\"\n\"589796\";\"Orissare\";\"other\"\n\"589796\";\"Orrisar\";\"other\"\n\"589796\";\"Orrissaar\";\"other\"\n\"589796\";\"Orrissar\";\"other\"\n\"589922\";\"Karksi-Nuia\";\"main\"\n\"589922\";\"KARKSI-NUAJ\";\"other\"\n\"589922\";\"Karksi\";\"other\"\n\"589922\";\"Karksi-Nuya\";\"other\"\n\"589922\";\"Karkus\";\"other\"\n\"589922\";\"Nuia\";\"other\"\n\"589922\";\"Nuiya\";\"other\"\n\"589922\";\"Nuya\";\"other\"\n\"589922\";\"Nuyya\";\"other\"\n\"589922\";\"КАРКСИ-НУАЙ\";\"other\"\n\"589922\";\"Каркси\";\"other\"\n\"589933\";\"Nõo\";\"main\"\n\"589933\";\"Noo\";\"ascii\"\n\"589933\";\"Neo\";\"other\"\n\"589933\";\"Niggen'\";\"other\"\n\"589933\";\"Niggen’\";\"other\"\n\"589933\";\"Nueggen\";\"other\"\n\"589933\";\"Nyo\";\"other\"\n\"589933\";\"Nüggen\";\"other\"\n\"589933\";\"Ныо\";\"other\"\n\"590030\";\"Narva-Jõesuu\";\"main\"\n\"590030\";\"Narva-Joesuu\";\"ascii\"\n\"590030\";\"Gungerburg\";\"other\"\n\"590030\";\"Hungerburg\";\"other\"\n\"590030\";\"NARVA-JYEHSUU\";\"other\"\n\"590030\";\"Naroova-Joesuu\";\"other\"\n\"590030\";\"Naroova-Jõesuu\";\"other\"\n\"590030\";\"Narva Ioesu\";\"other\"\n\"590030\";\"Narva Jeesu\";\"other\"\n\"590030\";\"Narva Jeesū\";\"other\"\n\"590030\";\"Narva Joesu\";\"other\"\n\"590030\";\"Narva-Iyesu\";\"other\"\n\"590030\";\"Narva-Iyesuu\";\"other\"\n\"590030\";\"Narva-Jesu\";\"other\"\n\"590030\";\"Narva-Jyehsuu\";\"other\"\n\"590030\";\"Narva-Jyesuu\";\"other\"\n\"590030\";\"Narva-Jēsū\";\"other\"\n\"590030\";\"Narva-Yodsu\";\"other\"\n\"590030\";\"Narva-Yyesu\";\"other\"\n\"590030\";\"Narva-Yyesuu\";\"other\"\n\"590030\";\"Narwa Joesuu\";\"other\"\n\"590030\";\"Narwa Jõesuu\";\"other\"\n\"590030\";\"НАРВА-ЙЫЭСУУ\";\"other\"\n\"590030\";\"Нарва-Йыесуу\";\"other\"\n\"590030\";\"Нарва-Йыэсуу\";\"other\"\n\"590031\";\"Narva\";\"main\"\n\"590031\";\"NARVA\";\"other\"\n\"590031\";\"Narwa\";\"other\"\n\"590031\";\"na er wa\";\"other\"\n\"590031\";\"narva\";\"other\"\n\"590031\";\"НАРВА\";\"other\"\n\"590031\";\"Нарва\";\"other\"\n\"590031\";\"ნარვა\";\"other\"\n\"590031\";\"纳尔瓦\";\"other\"\n\"590067\";\"Mustvee\";\"main\"\n\"590067\";\"Chernii\";\"other\"\n\"590067\";\"Chernoe\";\"other\"\n\"590067\";\"Chernyy\";\"other\"\n\"590067\";\"MUSTVEEH\";\"other\"\n\"590067\";\"Mustve\";\"other\"\n\"590067\";\"Mustwee\";\"other\"\n\"590067\";\"Tschorna\";\"other\"\n\"590067\";\"МУСТВЕЭ\";\"other\"\n\"590186\";\"Mõisaküla\";\"main\"\n\"590186\";\"Moisakula\";\"ascii\"\n\"590186\";\"MYJZAKJULA\";\"other\"\n\"590186\";\"Moisakila\";\"other\"\n\"590186\";\"Moisakuela\";\"other\"\n\"590186\";\"Moisakull\";\"other\"\n\"590186\";\"Moisaküll\";\"other\"\n\"590186\";\"Moisekuell\";\"other\"\n\"590186\";\"Moiseküll\";\"other\"\n\"590186\";\"Moizekyul'\";\"other\"\n\"590186\";\"Moizekyul’\";\"other\"\n\"590186\";\"Myysakyula\";\"other\"\n\"590186\";\"Myyzakyuilya\";\"other\"\n\"590186\";\"Myyzakyula\";\"other\"\n\"590186\";\"МЫЙЗАКЮЛА\";\"other\"\n\"590322\";\"Märjamaa\";\"main\"\n\"590322\";\"Marjamaa\";\"ascii\"\n\"590322\";\"MJAR'JAMAA\";\"other\"\n\"590322\";\"Maerjamaa\";\"other\"\n\"590322\";\"Mar'yama\";\"other\"\n\"590322\";\"Mar’yama\";\"other\"\n\"590322\";\"Mer'yama\";\"other\"\n\"590322\";\"Merjama\";\"other\"\n\"590322\";\"Merjamā\";\"other\"\n\"590322\";\"Mer’yama\";\"other\"\n\"590322\";\"Myar'yama\";\"other\"\n\"590322\";\"Myar'yamaa\";\"other\"\n\"590322\";\"Myar’yama\";\"other\"\n\"590322\";\"Myar’yamaa\";\"other\"\n\"590322\";\"МЯРЬЯМАА\";\"other\"\n\"590447\";\"Maardu\";\"main\"\n\"590447\";\"Mardu\";\"other\"\n\"590447\";\"Mārdu\";\"other\"\n\"590447\";\"Маарду\";\"other\"\n\"590537\";\"Loo\";\"main\"\n\"590552\";\"Loksa\";\"main\"\n\"590552\";\"LOKSA\";\"other\"\n\"590552\";\"Loxa\";\"other\"\n\"590552\";\"ЛОКСА\";\"other\"\n\"590657\";\"Lihula\";\"main\"\n\"590657\";\"Gmina Lihula\";\"other\"\n\"590657\";\"Leal\";\"other\"\n\"590657\";\"Ligulya\";\"other\"\n\"590657\";\"Lihula vald\";\"other\"\n\"590657\";\"Likhula\";\"other\"\n\"590657\";\"Лихула\";\"other\"\n\"590888\";\"Kuusalu\";\"main\"\n\"590888\";\"Kusal\";\"other\"\n\"590888\";\"Kusalu\";\"other\"\n\"590888\";\"Kuzal'\";\"other\"\n\"590888\";\"Kuzal’\";\"other\"\n\"590888\";\"Куусалу\";\"other\"\n\"590939\";\"Kuressaare\";\"main\"\n\"590939\";\"Arensburg\";\"other\"\n\"590939\";\"Arensburga\";\"other\"\n\"590939\";\"Kingisepp\";\"other\"\n\"590939\";\"Kingissepa\";\"other\"\n\"590939\";\"Kingissepp\";\"other\"\n\"590939\";\"Kuresaar\";\"other\"\n\"590939\";\"Kuresaare\";\"other\"\n\"590939\";\"Kuresaari\";\"other\"\n\"590939\";\"Kuresare\";\"other\"\n\"590939\";\"Kuresarė\";\"other\"\n\"590939\";\"Kuressaari\";\"other\"\n\"590939\";\"Kuresāre\";\"other\"\n\"590939\";\"Курессааре\";\"other\"\n\"590939\";\"קורסארה\";\"other\"\n\"590976\";\"Kunda\";\"main\"\n\"591076\";\"Kose\";\"main\"\n\"591076\";\"Koze\";\"other\"\n\"591260\";\"Kohtla-Järve\";\"main\"\n\"591260\";\"Kohtla-Jarve\";\"ascii\"\n\"591260\";\"Jarve\";\"other\"\n\"591260\";\"KOKHTLA-JARVE\";\"other\"\n\"591260\";\"Kochtel\";\"other\"\n\"591260\";\"Kohtla Jerve\";\"other\"\n\"591260\";\"Kohtla Jervė\";\"other\"\n\"591260\";\"Kohtla-Jaerve\";\"other\"\n\"591260\";\"Kohtla-Jaervi\";\"other\"\n\"591260\";\"Kohtla-Jerve\";\"other\"\n\"591260\";\"Kohtla-Järvi\";\"other\"\n\"591260\";\"Kokhtla\";\"other\"\n\"591260\";\"Kokhtla-Jarve\";\"other\"\n\"591260\";\"Kokhtla-Yarve\";\"other\"\n\"591260\";\"Kotayarvi\";\"other\"\n\"591260\";\"Turpsal\";\"other\"\n\"591260\";\"Tyurpsal'\";\"other\"\n\"591260\";\"Tyurpsal’\";\"other\"\n\"591260\";\"Türpsal\";\"other\"\n\"591260\";\"КОХТЛА-ЯРВЕ\";\"other\"\n\"591260\";\"Кохтла-Ярве\";\"other\"\n\"591260\";\"კოხტლა-იარვე\";\"other\"\n\"591264\";\"Kohtla-Nõmme\";\"main\"\n\"591264\";\"Kohtla-Nomme\";\"ascii\"\n\"591264\";\"Kohtla\";\"other\"\n\"591264\";\"Kohtla Asundus\";\"other\"\n\"591264\";\"Myza Kokhtla\";\"other\"\n\"591265\";\"Kohila\";\"main\"\n\"591265\";\"KOKHILA\";\"other\"\n\"591265\";\"Koil\";\"other\"\n\"591265\";\"Kokhil'\";\"other\"\n\"591265\";\"Kokhila\";\"other\"\n\"591265\";\"Kokhil’\";\"other\"\n\"591265\";\"Koyl'\";\"other\"\n\"591265\";\"Koyl’\";\"other\"\n\"591265\";\"КОХИЛА\";\"other\"\n\"591276\";\"Koeru\";\"main\"\n\"591276\";\"Keras\";\"other\"\n\"591276\";\"Koehru\";\"other\"\n\"591276\";\"Koyero\";\"other\"\n\"591276\";\"Koyeru\";\"other\"\n\"591276\";\"Kėras\";\"other\"\n\"591276\";\"Maria Magdaliny\";\"other\"\n\"591276\";\"Marien-Magdalenen\";\"other\"\n\"591276\";\"Myza Koyeru\";\"other\"\n\"591276\";\"Sankt-Marien-Magdalenen\";\"other\"\n\"591276\";\"Коэру\";\"other\"\n\"591313\";\"Kiviõli\";\"main\"\n\"591313\";\"Kivioli\";\"ascii\"\n\"591313\";\"KIVIYLI\";\"other\"\n\"591313\";\"Kivieli\";\"other\"\n\"591313\";\"Kivielis\";\"other\"\n\"591313\";\"Kiviyli\";\"other\"\n\"591313\";\"КИВИЫЛИ\";\"other\"\n\"591313\";\"Кивиыли\";\"other\"\n\"591381\";\"Kilingi-Nõmme\";\"main\"\n\"591381\";\"Kilingi-Nomme\";\"ascii\"\n\"591381\";\"Kilingi-Nemme\";\"other\"\n\"591381\";\"Kilingi-Nymme\";\"other\"\n\"591381\";\"Kilingi-nymme\";\"other\"\n\"591381\";\"Killingi-Nymme\";\"other\"\n\"591381\";\"Kurkund\";\"other\"\n\"591381\";\"Nemme\";\"other\"\n\"591381\";\"Nomme\";\"other\"\n\"591381\";\"Nõmme\";\"other\"\n\"591381\";\"Saara\";\"other\"\n\"591381\";\"Saarde\";\"other\"\n\"591381\";\"Tegnits\";\"other\"\n\"591381\";\"Килинги-нымме\";\"other\"\n\"591472\";\"Keila\";\"main\"\n\"591472\";\"KEJLA\";\"other\"\n\"591472\";\"Kegel\";\"other\"\n\"591472\";\"Keyla\";\"other\"\n\"591472\";\"КЕЙЛА\";\"other\"\n\"591475\";\"Kehtna\";\"main\"\n\"591475\";\"Kehtna Asundus\";\"other\"\n\"591475\";\"Kekhna\";\"other\"\n\"591475\";\"Kekhtna\";\"other\"\n\"591475\";\"Кехтна\";\"other\"\n\"591476\";\"Kehra\";\"main\"\n\"591476\";\"KEKHRA\";\"other\"\n\"591476\";\"Kedder\";\"other\"\n\"591476\";\"Kekhra\";\"other\"\n\"591476\";\"Kekra\";\"other\"\n\"591476\";\"КЕХРА\";\"other\"\n\"591632\";\"Kärdla\";\"main\"\n\"591632\";\"Kardla\";\"ascii\"\n\"591632\";\"Kartla\";\"other\"\n\"591632\";\"Kerdla\";\"other\"\n\"591632\";\"Kerdlya\";\"other\"\n\"591632\";\"Kerhl\";\"other\"\n\"591632\";\"Kertel\";\"other\"\n\"591632\";\"Kjardla\";\"other\"\n\"591632\";\"Kyardla\";\"other\"\n\"591632\";\"Kärtla\";\"other\"\n\"591632\";\"Myasto Kyardla\";\"other\"\n\"591632\";\"Кярдла\";\"other\"\n\"591703\";\"Kallaste\";\"main\"\n\"591703\";\"KALLASTE\";\"other\"\n\"591703\";\"Krasnaja Gora\";\"other\"\n\"591703\";\"Krasnaya Gora\";\"other\"\n\"591703\";\"Krasnogar\";\"other\"\n\"591703\";\"Krasnogor\";\"other\"\n\"591703\";\"Krasnyye Gory\";\"other\"\n\"591703\";\"КАЛЛАСТЕ\";\"other\"\n\"591783\";\"Kadrina\";\"main\"\n\"591783\";\"Katharinen\";\"other\"\n\"591783\";\"Katrinen'\";\"other\"\n\"591783\";\"Katrinen’\";\"other\"\n\"591783\";\"Sankt-Katharinen\";\"other\"\n\"591783\";\"Кадрина\";\"other\"\n\"591876\";\"Jüri\";\"main\"\n\"591876\";\"Juri\";\"ascii\"\n\"591876\";\"Jueri\";\"other\"\n\"591876\";\"Yuri\";\"other\"\n\"591876\";\"Юри\";\"other\"\n\"591893\";\"Jõhvi\";\"main\"\n\"591893\";\"Johvi\";\"ascii\"\n\"591893\";\"Ievve\";\"other\"\n\"591893\";\"Iohvi\";\"other\"\n\"591893\";\"Iyeve\";\"other\"\n\"591893\";\"Iyevve\";\"other\"\n\"591893\";\"Iykhvi\";\"other\"\n\"591893\";\"Jechvi\";\"other\"\n\"591893\";\"Jehvi\";\"other\"\n\"591893\";\"Jehvis\";\"other\"\n\"591893\";\"Jeve\";\"other\"\n\"591893\";\"Jewe\";\"other\"\n\"591893\";\"Johwi\";\"other\"\n\"591893\";\"Johyl\";\"other\"\n\"591893\";\"Jykhvi\";\"other\"\n\"591893\";\"Jöhwi\";\"other\"\n\"591893\";\"Levve\";\"other\"\n\"591893\";\"Yokhvi\";\"other\"\n\"591893\";\"Yykhvi\";\"other\"\n\"591893\";\"Йыхви\";\"other\"\n\"591902\";\"Jõgeva\";\"main\"\n\"591902\";\"Jogeva\";\"ascii\"\n\"591902\";\"Iyegeva\";\"other\"\n\"591902\";\"Iygeva\";\"other\"\n\"591902\";\"Jegeva\";\"other\"\n\"591902\";\"Jygeva\";\"other\"\n\"591902\";\"Laisholm\";\"other\"\n\"591902\";\"Laysgol'm\";\"other\"\n\"591902\";\"Laysgol’m\";\"other\"\n\"591902\";\"Yogeva\";\"other\"\n\"591902\";\"Yygeva\";\"other\"\n\"591902\";\"ywgbh\";\"other\"\n\"591902\";\"Йыгева\";\"other\"\n\"591902\";\"יוגבה\";\"other\"\n\"591965\";\"Järvakandi\";\"main\"\n\"591965\";\"Jarvakandi\";\"ascii\"\n\"591965\";\"JARVAKANDI\";\"other\"\n\"591965\";\"Jaervakandi\";\"other\"\n\"591965\";\"Jarvakandi Klaasivabrik\";\"other\"\n\"591965\";\"Jarvakandi Tehasid\";\"other\"\n\"591965\";\"Jarwakandi Klaasi Wabrik\";\"other\"\n\"591965\";\"Järvakandi Klaasivabrik\";\"other\"\n\"591965\";\"Järvakandi Tehasid\";\"other\"\n\"591965\";\"Järwakandi Klaasi Wabrik\";\"other\"\n\"591965\";\"Stekol'nyy Zavod Yarvakandi\";\"other\"\n\"591965\";\"Stekol’nyy Zavod Yarvakandi\";\"other\"\n\"591965\";\"ЯРВАКАНДИ\";\"other\"\n\"591968\";\"Järva-Jaani\";\"main\"\n\"591968\";\"Jarva-Jaani\";\"ascii\"\n\"591968\";\"J. Jaani\";\"other\"\n\"591968\";\"Jaani\";\"other\"\n\"591968\";\"Jaerva-Jaani\";\"other\"\n\"591968\";\"Jarvi-Jaani\";\"other\"\n\"591968\";\"Jerve Jani\";\"other\"\n\"591968\";\"Jerve Jāni\";\"other\"\n\"591968\";\"Järvi-Jaani\";\"other\"\n\"591968\";\"Sankt-Johannis\";\"other\"\n\"591968\";\"Svyatogo Ioanna\";\"other\"\n\"591968\";\"Yarva-Yani\";\"other\"\n\"591968\";\"Yyarva-Yani\";\"other\"\n\"591968\";\"Ярва-Яани\";\"other\"\n\"592200\";\"Haljala\";\"main\"\n\"592200\";\"Haljall\";\"other\"\n\"592200\";\"Khal'jala\";\"other\"\n\"592200\";\"Khal'yal'\";\"other\"\n\"592200\";\"Khal'yala\";\"other\"\n\"592200\";\"Khal’yala\";\"other\"\n\"592200\";\"Khal’yal’\";\"other\"\n\"592200\";\"Хальяла\";\"other\"\n\"592225\";\"Haapsalu\";\"main\"\n\"592225\";\"Gaapsalu\";\"other\"\n\"592225\";\"Gapsal'\";\"other\"\n\"592225\";\"Gapsal’\";\"other\"\n\"592225\";\"Haapsula\";\"other\"\n\"592225\";\"Hapsal\";\"other\"\n\"592225\";\"Hapsalu\";\"other\"\n\"592225\";\"Hāpsalu\";\"other\"\n\"592225\";\"Khaapsalu\";\"other\"\n\"592225\";\"Khaapsalyu\";\"other\"\n\"592225\";\"Khapsalu\";\"other\"\n\"592225\";\"Хаапсалу\";\"other\"\n\"592233\";\"Haabneeme\";\"main\"\n\"592233\";\"Khaabneehme\";\"other\"\n\"592233\";\"Khaabneeme\";\"other\"\n\"592233\";\"Хаабнеэме\";\"other\"\n\"592279\";\"Elva\";\"main\"\n\"592279\";\"EHLVA\";\"other\"\n\"592279\";\"Elwa\";\"other\"\n\"592279\";\"ЭЛВА\";\"other\"\n\"592351\";\"Audru\";\"main\"\n\"592351\";\"Аудру\";\"other\"\n\"592379\";\"Aseri\";\"main\"\n\"592379\";\"Asari\";\"other\"\n\"592379\";\"Aseri Mois\";\"other\"\n\"592379\";\"Aseri Mõis\";\"other\"\n\"592379\";\"Asserien\";\"other\"\n\"592379\";\"Asserin\";\"other\"\n\"592379\";\"Azeri\";\"other\"\n\"592379\";\"Azern\";\"other\"\n\"592379\";\"Азерн\";\"other\"\n\"592396\";\"Aruküla\";\"main\"\n\"592396\";\"Arukula\";\"ascii\"\n\"592396\";\"Arukyula\";\"other\"\n\"592626\";\"Abja-Paluoja\";\"main\"\n\"592626\";\"Ab'ja-Paluoja\";\"other\"\n\"592626\";\"Ab'ya\";\"other\"\n\"592626\";\"Ab'ya-Paluoya\";\"other\"\n\"592626\";\"Abbia\";\"other\"\n\"592626\";\"Abia\";\"other\"\n\"592626\";\"Ab’ya\";\"other\"\n\"592626\";\"Ab’ya-Paluoya\";\"other\"\n\"592626\";\"Paluoja\";\"other\"\n\"592626\";\"Paluoya\";\"other\"\n\"592626\";\"Абья-Палуоя\";\"other\"\n\"793457\";\"Sõmeru\";\"main\"\n\"793457\";\"Someru\";\"ascii\"\n\"793956\";\"Tabivere\";\"main\"\n\"793956\";\"Табивере\";\"other\"\n\"794964\";\"Laagri\";\"main\"\n\"346030\";\"Ziftá\";\"main\"\n\"346030\";\"Zifta\";\"ascii\"\n\"346030\";\"Зифта\";\"other\"\n\"347236\";\"Ţūkh\";\"main\"\n\"347236\";\"Tukh\";\"ascii\"\n\"347236\";\"Toukh\";\"other\"\n\"347236\";\"Tukh al Malaq\";\"other\"\n\"347236\";\"Tukh el-Malaq\";\"other\"\n\"347236\";\"Tûkh\";\"other\"\n\"347236\";\"Tûkh el-Malaq\";\"other\"\n\"347236\";\"Ţūkh al Malaq\";\"other\"\n\"347236\";\"Тух\";\"other\"\n\"347497\";\"Ţanţā\";\"main\"\n\"347497\";\"Tanta\";\"ascii\"\n\"347497\";\"Tanda\";\"other\"\n\"347497\";\"tnta\";\"other\"\n\"347497\";\"tnth\";\"other\"\n\"347497\";\"Танта\";\"other\"\n\"347497\";\"טנטא\";\"other\"\n\"347497\";\"טנטה\";\"other\"\n\"347497\";\"طنطا\";\"other\"\n\"347497\";\"Ṭanṭa\";\"other\"\n\"347542\";\"Ţāmiyah\";\"main\"\n\"347542\";\"Tamiyah\";\"ascii\"\n\"347542\";\"Tamiya\";\"other\"\n\"347542\";\"Tumyah\";\"other\"\n\"347542\";\"Tāmīya\";\"other\"\n\"347591\";\"Ṭalkha\";\"main\"\n\"347591\";\"Talkha\";\"ascii\"\n\"347591\";\"Talha\";\"other\"\n\"347612\";\"Talā\";\"main\"\n\"347612\";\"Tala\";\"ascii\"\n\"347612\";\"Tale\";\"other\"\n\"347612\";\"Talla\";\"other\"\n\"347612\";\"Тале\";\"other\"\n\"347634\";\"Ţahţā\";\"main\"\n\"347634\";\"Tahta\";\"ascii\"\n\"347634\";\"Takhta\";\"other\"\n\"347634\";\"Тахта\";\"other\"\n\"347749\";\"Sumusţā as Sulţānī\";\"main\"\n\"347749\";\"Sumusta as Sultani\";\"ascii\"\n\"347749\";\"Sumusta el Sultani\";\"other\"\n\"347749\";\"Sumusṭa el Sulṭâni\";\"other\"\n\"347796\";\"Sūhāj\";\"main\"\n\"347796\";\"Suhaj\";\"ascii\"\n\"347796\";\"Sawhaj\";\"other\"\n\"347796\";\"Sawhāj\";\"other\"\n\"347796\";\"Sohag\";\"other\"\n\"347796\";\"Sohāg\";\"other\"\n\"347796\";\"Souhag\";\"other\"\n\"347796\";\"Suhag\";\"other\"\n\"347796\";\"Suwhaj\";\"other\"\n\"347796\";\"Sūhāg\";\"other\"\n\"347863\";\"Sīwah\";\"main\"\n\"347863\";\"Siwah\";\"ascii\"\n\"347863\";\"Siuah\";\"other\"\n\"347863\";\"Siva\";\"other\"\n\"347863\";\"Siwa\";\"other\"\n\"347863\";\"Siwe\";\"other\"\n\"347863\";\"Сива\";\"other\"\n\"348112\";\"Sīdī Sālim\";\"main\"\n\"348112\";\"Sidi Salim\";\"ascii\"\n\"349114\";\"Shirbîn\";\"main\"\n\"349114\";\"Shirbin\";\"ascii\"\n\"349114\";\"Sharbin\";\"other\"\n\"349114\";\"Sharbīn\";\"other\"\n\"349114\";\"Sherbin\";\"other\"\n\"349156\";\"Shibīn al Qanāţir\";\"main\"\n\"349156\";\"Shibin al Qanatir\";\"ascii\"\n\"349156\";\"Shabin al Qanatir\";\"other\"\n\"349156\";\"Shabir al-Kanatir\";\"other\"\n\"349156\";\"Shabīn al Qanātir\";\"other\"\n\"349156\";\"Shibin el-Qanatir\";\"other\"\n\"349156\";\"Shibîn el-Qanâṭir\";\"other\"\n\"349158\";\"Shibīn al Kawm\";\"main\"\n\"349158\";\"Shibin al Kawm\";\"ascii\"\n\"349158\";\"Shabin al-Kum\";\"other\"\n\"349158\";\"Shebin al-Kom\";\"other\"\n\"349158\";\"Shibin el-Kom\";\"other\"\n\"349158\";\"Shibîn el-Kôm\";\"other\"\n\"349340\";\"Sharm ash Shaykh\";\"main\"\n\"349340\";\"Awfir\";\"other\"\n\"349340\";\"Awfīr\";\"other\"\n\"349340\";\"Cherm\";\"other\"\n\"349340\";\"Ofira\";\"other\"\n\"349340\";\"Ophira\";\"other\"\n\"349340\";\"Ras Muhammad\";\"other\"\n\"349340\";\"Ras Umm Sidd\";\"other\"\n\"349340\";\"Sharm al Shaikh\";\"other\"\n\"349340\";\"Sharm ehl' Shejkh\";\"other\"\n\"349340\";\"Sharm el Sheikh\";\"other\"\n\"349340\";\"Sharm el-Sheij\";\"other\"\n\"349340\";\"Sharm el-Sheikh\";\"other\"\n\"349340\";\"Sharm esh Sheikh\";\"other\"\n\"349340\";\"Sharm-ehl'-Shejkh\";\"other\"\n\"349340\";\"Sherm el Sheik\";\"other\"\n\"349340\";\"Sherm el Sheikh\";\"other\"\n\"349340\";\"Sherm el Shekh\";\"other\"\n\"349340\";\"shrm alshykh\";\"other\"\n\"349340\";\"Шарм эль Шейх\";\"other\"\n\"349340\";\"Шарм-эль-Шейх\";\"other\"\n\"349340\";\"شرم الشيخ\";\"other\"\n\"349715\";\"Samannūd\";\"main\"\n\"349715\";\"Samannud\";\"ascii\"\n\"349715\";\"Samannûd\";\"other\"\n\"349715\";\"Samnud\";\"other\"\n\"349715\";\"Samnūd\";\"other\"\n\"349715\";\"Sebennytos\";\"other\"\n\"349717\";\"Samālūţ\";\"main\"\n\"349717\";\"Samalut\";\"ascii\"\n\"350203\";\"Rosetta\";\"main\"\n\"350203\";\"Bolbitine\";\"other\"\n\"350203\";\"Er-Rashid\";\"other\"\n\"350203\";\"Rachid\";\"other\"\n\"350203\";\"Rashid\";\"other\"\n\"350203\";\"Rashîd\";\"other\"\n\"350203\";\"Rashīd\";\"other\"\n\"350203\";\"Rosette\";\"other\"\n\"350203\";\"mdynt rshyd\";\"other\"\n\"350203\";\"مدينة رشيد\";\"other\"\n\"350370\";\"Quwaysinā\";\"main\"\n\"350370\";\"Quwaysina\";\"ascii\"\n\"350370\";\"Kuesnah\";\"other\"\n\"350370\";\"Quweisna\";\"other\"\n\"350376\";\"Quţūr\";\"main\"\n\"350376\";\"Qutur\";\"ascii\"\n\"350376\";\"Kotur\";\"other\"\n\"350376\";\"Kotûr\";\"other\"\n\"350376\";\"Qotur\";\"other\"\n\"350376\";\"Quṭûr\";\"other\"\n\"350422\";\"Qūş\";\"main\"\n\"350422\";\"Qus\";\"ascii\"\n\"350422\";\"Apollinopolis Parva\";\"other\"\n\"350422\";\"Apollonopolis Parva\";\"other\"\n\"350422\";\"Kousa\";\"other\"\n\"350550\";\"Qinā\";\"main\"\n\"350550\";\"Qina\";\"ascii\"\n\"350550\";\"Caene\";\"other\"\n\"350550\";\"Kena\";\"other\"\n\"350550\";\"Keneh\";\"other\"\n\"350550\";\"Qana\";\"other\"\n\"350550\";\"Qanā\";\"other\"\n\"350550\";\"Qena\";\"other\"\n\"350550\";\"astan qna\";\"other\"\n\"350550\";\"qna\";\"other\"\n\"350550\";\"استان قنا\";\"other\"\n\"350550\";\"قنا\";\"other\"\n\"350661\";\"Qaşr al Farāfirah\";\"main\"\n\"350661\";\"Qasr al Farafirah\";\"ascii\"\n\"350661\";\"Al Farafirah\";\"other\"\n\"350661\";\"Al Farāfirah\";\"other\"\n\"350661\";\"Farafra\";\"other\"\n\"350661\";\"Qasr Farafra\";\"other\"\n\"350661\";\"Фарафра\";\"other\"\n\"350789\";\"Qalyūb\";\"main\"\n\"350789\";\"Qalyub\";\"ascii\"\n\"350789\";\"Kal'jub\";\"other\"\n\"350789\";\"Kalyub\";\"other\"\n\"350789\";\"Kalyûb\";\"other\"\n\"350789\";\"Qaliub\";\"other\"\n\"350789\";\"Кальюб\";\"other\"\n\"350893\";\"Nuwaybi‘a\";\"main\"\n\"350893\";\"Nuwaybi`a\";\"ascii\"\n\"350893\";\"Nueiba\";\"other\"\n\"350893\";\"Nuvejba\";\"other\"\n\"350893\";\"Nuwaiba`\";\"other\"\n\"350893\";\"Nuwaiba‘\";\"other\"\n\"350893\";\"Nuweiba\";\"other\"\n\"350893\";\"Nuweibeh\";\"other\"\n\"350893\";\"Nuweibá\";\"other\"\n\"350893\";\"Нувейба\";\"other\"\n\"351434\";\"Naj‘ Ḩammādī\";\"main\"\n\"351434\";\"Naj` Hammadi\";\"ascii\"\n\"351434\";\"Gebel el Hagif\";\"other\"\n\"351434\";\"Nag Hamadi\";\"other\"\n\"351434\";\"Nag Hamady\";\"other\"\n\"351434\";\"Nag Hammadi\";\"other\"\n\"351434\";\"Nag Hammadi-geschriften\";\"other\"\n\"351434\";\"Nag Hammádí\";\"other\"\n\"351434\";\"Nag Hammâdi\";\"other\"\n\"351434\";\"Nag-Hamado\";\"other\"\n\"351434\";\"Nag` Hammadi\";\"other\"\n\"351434\";\"Naga Hamadi\";\"other\"\n\"351434\";\"Nag‘ Hammādi\";\"other\"\n\"351434\";\"Naj` al Hammadi\";\"other\"\n\"351434\";\"Naj‘ al Ḩammādī\";\"other\"\n\"351434\";\"na ge ma di\";\"other\"\n\"351434\";\"ナグ・ハマディ写本\";\"other\"\n\"351434\";\"拿戈瑪第\";\"other\"\n\"352344\";\"Minyat an Naşr\";\"main\"\n\"352344\";\"Minyat an Nasr\";\"ascii\"\n\"352344\";\"Minyet el-Nasr\";\"other\"\n\"352344\";\"Minyet el-Naṣr\";\"other\"\n\"352354\";\"Minūf\";\"main\"\n\"352354\";\"Minuf\";\"ascii\"\n\"352354\";\"Manuf\";\"other\"\n\"352354\";\"Manūf\";\"other\"\n\"352354\";\"Menouf\";\"other\"\n\"352354\";\"Menoufis\";\"other\"\n\"352354\";\"Menuf\";\"other\"\n\"352628\";\"Maţāy\";\"main\"\n\"352628\";\"Matay\";\"ascii\"\n\"352628\";\"Matai\";\"other\"\n\"352628\";\"Matâi\";\"other\"\n\"352628\";\"Muttay\";\"other\"\n\"352679\";\"Mashtūl as Sūq\";\"main\"\n\"352679\";\"Mashtul as Suq\";\"ascii\"\n\"352679\";\"Mashtul el-Suq\";\"other\"\n\"352679\";\"Mashtûl el-Sûq\";\"other\"\n\"352733\";\"Marsá Maţrūḩ\";\"main\"\n\"352733\";\"Marsa Matruh\";\"ascii\"\n\"352733\";\"Madara\";\"other\"\n\"352733\";\"Marsa-Matrukh\";\"other\"\n\"352733\";\"Matruh\";\"other\"\n\"352733\";\"Maţrūḩ\";\"other\"\n\"352733\";\"Mersa Matrouh\";\"other\"\n\"352733\";\"Mersa Matruh\";\"other\"\n\"352733\";\"Mersa Maṭrûḥ\";\"other\"\n\"352733\";\"Mhadara\";\"other\"\n\"352733\";\"Paraetonium\";\"other\"\n\"352733\";\"Марса-Матрух\";\"other\"\n\"352736\";\"Marsá al `Alam\";\"main\"\n\"352736\";\"Marsa al `Alam\";\"ascii\"\n\"352736\";\"Marsa Alam\";\"other\"\n\"352736\";\"Marsa `Alam\";\"other\"\n\"352736\";\"Mersa Alam\";\"other\"\n\"352736\";\"Марса Алам\";\"other\"\n\"352913\";\"Manfalūţ\";\"main\"\n\"352913\";\"Manfalut\";\"ascii\"\n\"352913\";\"Monfalut\";\"other\"\n\"352951\";\"Mallawī\";\"main\"\n\"352951\";\"Mallawi\";\"ascii\"\n\"352951\";\"Mallauri\";\"other\"\n\"352951\";\"Mallavi\";\"other\"\n\"352951\";\"Маллави\";\"other\"\n\"353219\";\"Madīnat Sittah Uktūbar\";\"main\"\n\"353219\";\"Madinat Sittah Uktubar\";\"ascii\"\n\"353219\";\"6 October City\";\"other\"\n\"353219\";\"October 6\";\"other\"\n\"353802\";\"Kawm Umbū\";\"main\"\n\"353802\";\"Kawm Umbu\";\"ascii\"\n\"353802\";\"Kawm Ombo\";\"other\"\n\"353802\";\"Kom Ombo\";\"other\"\n\"353802\";\"Kom Ombo - kwm ambw\";\"other\"\n\"353802\";\"Kom Ombo - كوم أمبو\";\"other\"\n\"353802\";\"Kum Ombu\";\"other\"\n\"353802\";\"Kôm Ombo\";\"other\"\n\"353802\";\"Omboi\";\"other\"\n\"353802\";\"Ombos\";\"other\"\n\"353802\";\"kom-ombo\";\"other\"\n\"353802\";\"Ком-Омбо\";\"other\"\n\"353802\";\"コム・オンボ\";\"other\"\n\"353828\";\"Kawm Ḩamādah\";\"main\"\n\"353828\";\"Kawm Hamadah\";\"ascii\"\n\"353828\";\"Kom Hamada\";\"other\"\n\"353828\";\"Kôm Ḥamâda\";\"other\"\n\"354105\";\"Kafr Şaqr\";\"main\"\n\"354105\";\"Kafr Saqr\";\"ascii\"\n\"354105\";\"Kafr Ṣaqr\";\"other\"\n\"354365\";\"Kafr az Zayyāt\";\"main\"\n\"354365\";\"Kafr az Zayyat\";\"ascii\"\n\"354365\";\"Kafr az Zayat\";\"other\"\n\"354365\";\"Kafr az Zayāt\";\"other\"\n\"354365\";\"Kafr el-Zaiyat\";\"other\"\n\"354365\";\"Kafr el-Zaiyât\";\"other\"\n\"354365\";\"Kafr el-Zayat\";\"other\"\n\"354365\";\"Kafr ez Zaiyat\";\"other\"\n\"354365\";\"Kafraz Zayyt\";\"other\"\n\"354502\";\"Kafr ash Shaykh\";\"main\"\n\"354502\";\"Kafr al-Sheikh\";\"other\"\n\"354502\";\"Kafr el-Sheikh\";\"other\"\n\"354502\";\"Kafr-Sheikh\";\"other\"\n\"354775\";\"Kafr ad Dawwār\";\"main\"\n\"354775\";\"Kafr ad Dawwar\";\"ascii\"\n\"354775\";\"Kafr al-Dawar\";\"other\"\n\"354775\";\"Kafr ed-Dauwar\";\"other\"\n\"354775\";\"Kafr ed-Dauwâr\";\"other\"\n\"354775\";\"Kafr el Dawdar\";\"other\"\n\"354775\";\"Kafr el-Dauwar\";\"other\"\n\"354775\";\"Kafr el-Dauwâr\";\"other\"\n\"354981\";\"Juhaynah\";\"main\"\n\"354981\";\"Giheina\";\"other\"\n\"354981\";\"Jihaynah\";\"other\"\n\"355026\";\"Jirjā\";\"main\"\n\"355026\";\"Jirja\";\"ascii\"\n\"355026\";\"Girga\";\"other\"\n\"355392\";\"‘Izbat al Burj\";\"main\"\n\"355392\";\"`Izbat al Burj\";\"ascii\"\n\"355392\";\"Ezbet el-Burg\";\"other\"\n\"355392\";\"`Ezbet el-Burg\";\"other\"\n\"355392\";\"‘Ezbet el-Burg\";\"other\"\n\"355420\";\"Iţsā\";\"main\"\n\"355420\";\"Itsa\";\"ascii\"\n\"355449\";\"Isnā\";\"main\"\n\"355449\";\"Isna\";\"ascii\"\n\"355449\";\"Asna\";\"other\"\n\"355449\";\"Asnā\";\"other\"\n\"355449\";\"Ehsna\";\"other\"\n\"355449\";\"Esna\";\"other\"\n\"355449\";\"Esneh\";\"other\"\n\"355449\";\"Latonpolis\";\"other\"\n\"355449\";\"Latopolia\";\"other\"\n\"355449\";\"Latopolis\";\"other\"\n\"355449\";\"Latónpolis\";\"other\"\n\"355449\";\"asna\";\"other\"\n\"355449\";\"Эсна\";\"other\"\n\"355449\";\"איסנא\";\"other\"\n\"355449\";\"אסנא\";\"other\"\n\"355449\";\"إسنا\";\"other\"\n\"355628\";\"Idkū\";\"main\"\n\"355628\";\"Idku\";\"ascii\"\n\"355628\";\"Edkou\";\"other\"\n\"355628\";\"Идку\";\"other\"\n\"355648\";\"Ibshawāy\";\"main\"\n\"355648\";\"Ibshaway\";\"ascii\"\n\"355648\";\"Ibshawai\";\"other\"\n\"355795\";\"Hilwan\";\"main\"\n\"355795\";\"Halwan\";\"other\"\n\"355795\";\"Helouan\";\"other\"\n\"355795\";\"Helouan-les-Bains\";\"other\"\n\"355795\";\"Helwan\";\"other\"\n\"355795\";\"Helwan Les Bains\";\"other\"\n\"355795\";\"Hulwan\";\"other\"\n\"355795\";\"Hélouan-les-Bains\";\"other\"\n\"355795\";\"Kheluan\";\"other\"\n\"355795\";\"Хелуан\";\"other\"\n\"355795\";\"Ḥelwân\";\"other\"\n\"355795\";\"Ḩalwān\";\"other\"\n\"355795\";\"Ḩulwān\";\"other\"\n\"355939\";\"Hihyā\";\"main\"\n\"355939\";\"Hihya\";\"ascii\"\n\"355939\";\"Hehia\";\"other\"\n\"355939\";\"Rehia\";\"other\"\n\"356000\";\"Ḩawsh ‘Īsá\";\"main\"\n\"356000\";\"Hawsh `Isa\";\"ascii\"\n\"356000\";\"Haush `Isa\";\"other\"\n\"356000\";\"Haush ‘Isá\";\"other\"\n\"356000\";\"Hosh `Isa\";\"other\"\n\"356000\";\"Ḥôsh ‘Îsa\";\"other\"\n\"356806\";\"Fuwah\";\"main\"\n\"356806\";\"Fouah\";\"other\"\n\"356806\";\"Fowa\";\"other\"\n\"356806\";\"Fuwa\";\"other\"\n\"356933\";\"Farshūţ\";\"main\"\n\"356933\";\"Farshut\";\"ascii\"\n\"356933\";\"Farshuut\";\"other\"\n\"356945\";\"Fāriskūr\";\"main\"\n\"356945\";\"Fariskur\";\"ascii\"\n\"356945\";\"Faraskur\";\"other\"\n\"356945\";\"Faraskûr\";\"other\"\n\"356945\";\"Fâriskûr\";\"other\"\n\"356989\";\"Fāqūs\";\"main\"\n\"356989\";\"Faqus\";\"ascii\"\n\"356989\";\"Fakous\";\"other\"\n\"356989\";\"Fakus\";\"other\"\n\"358048\";\"Damietta\";\"main\"\n\"358048\";\"Damiata\";\"other\"\n\"358048\";\"Damiette\";\"other\"\n\"358048\";\"Dimyat\";\"other\"\n\"358048\";\"Dimyāṭ\";\"other\"\n\"358048\";\"Dum'jat\";\"other\"\n\"358048\";\"Dumiat\";\"other\"\n\"358048\";\"Dumqat\";\"other\"\n\"358048\";\"Dumyat\";\"other\"\n\"358048\";\"Dumyâṭ\";\"other\"\n\"358048\";\"Dumyāţ\";\"other\"\n\"358048\";\"dmyat\";\"other\"\n\"358048\";\"Думьят\";\"other\"\n\"358048\";\"دمياط\";\"other\"\n\"358095\";\"Diyarb Najm\";\"main\"\n\"358095\";\"Diarb Negm\";\"other\"\n\"358095\";\"Diyarb Nigm\";\"other\"\n\"358108\";\"Disūq\";\"main\"\n\"358108\";\"Disuq\";\"ascii\"\n\"358108\";\"Dasuq\";\"other\"\n\"358108\";\"Dasūq\";\"other\"\n\"358108\";\"Dessouk\";\"other\"\n\"358108\";\"Disuk\";\"other\"\n\"358108\";\"Дисук\";\"other\"\n\"358115\";\"Dishnā\";\"main\"\n\"358115\";\"Dishna\";\"ascii\"\n\"358115\";\"Dashna\";\"other\"\n\"358115\";\"Dashnā\";\"other\"\n\"358115\";\"Dechna\";\"other\"\n\"358115\";\"Deshna\";\"other\"\n\"358172\";\"Dikirnis\";\"main\"\n\"358172\";\"Dekernes\";\"other\"\n\"358172\";\"Dikinis\";\"other\"\n\"358172\";\"Дикирнис\";\"other\"\n\"358245\";\"Dhahab\";\"main\"\n\"358245\";\"Dahab\";\"other\"\n\"358245\";\"Dahabas\";\"other\"\n\"358245\";\"Dakhab\";\"other\"\n\"358245\";\"dhb\";\"other\"\n\"358245\";\"Дахаб\";\"other\"\n\"358245\";\"דהב\";\"other\"\n\"358245\";\"دهب\";\"other\"\n\"358269\";\"Dayrūţ\";\"main\"\n\"358269\";\"Dayrut\";\"ascii\"\n\"358269\";\"Dairut\";\"other\"\n\"358269\";\"Dairut el Mahatta\";\"other\"\n\"358269\";\"Dairût\";\"other\"\n\"358269\";\"Dairût el Maḥaṭṭa\";\"other\"\n\"358269\";\"Dayrut al Mahattah\";\"other\"\n\"358269\";\"Dayrūţ al Maḩaţţah\";\"other\"\n\"358269\";\"Deirout\";\"other\"\n\"358269\";\"Deirut\";\"other\"\n\"358274\";\"Dayr Mawās\";\"main\"\n\"358274\";\"Dayr Mawas\";\"ascii\"\n\"358274\";\"Deir Mawas\";\"other\"\n\"358274\";\"Deir Mawās\";\"other\"\n\"358448\";\"Damanhûr\";\"main\"\n\"358448\";\"Damanhur\";\"ascii\"\n\"358448\";\"Bandar Damanhur\";\"other\"\n\"358448\";\"Bandar Damanhūr\";\"other\"\n\"358448\";\"Damanhour\";\"other\"\n\"358448\";\"Damankhur\";\"other\"\n\"358448\";\"Hermopolis Parva\";\"other\"\n\"358448\";\"Hermupolis Parva\";\"other\"\n\"358448\";\"dmnhwr\";\"other\"\n\"358448\";\"Даманхур\";\"other\"\n\"358448\";\"دمنهور\";\"other\"\n\"358600\";\"Būsh\";\"main\"\n\"358600\";\"Bush\";\"ascii\"\n\"358619\";\"Port Said\";\"main\"\n\"358619\";\"Bor Sa`id\";\"other\"\n\"358619\";\"Bor Sa‘īd\";\"other\"\n\"358619\";\"Bur Sa`id\";\"other\"\n\"358619\";\"Bursaid\";\"other\"\n\"358619\";\"Būr Sa‘īd\";\"other\"\n\"358619\";\"Madinat Bur Sa`id\";\"other\"\n\"358619\";\"Madinet Port Said\";\"other\"\n\"358619\";\"Madînat Būr Sa‘īd\";\"other\"\n\"358619\";\"Madînet Port Said\";\"other\"\n\"358619\";\"Port Saidas\";\"other\"\n\"358619\";\"Port Saíd\";\"other\"\n\"358619\";\"Port-Said\";\"other\"\n\"358619\";\"Port-Saïd\";\"other\"\n\"358619\";\"Porto Said\";\"other\"\n\"358619\";\"Puerto Said\";\"other\"\n\"358619\";\"Puerto Saíd\";\"other\"\n\"358619\";\"sai de gang\";\"other\"\n\"358619\";\"Порт-Саид\";\"other\"\n\"358619\";\"פורט סעיד\";\"other\"\n\"358619\";\"بورسعيد\";\"other\"\n\"358619\";\"塞德港\";\"other\"\n\"358620\";\"Būr Safājah\";\"main\"\n\"358620\";\"Bur Safajah\";\"ascii\"\n\"358620\";\"Port Safaga\";\"other\"\n\"358620\";\"Port Safâga\";\"other\"\n\"358620\";\"Safaga\";\"other\"\n\"358620\";\"sfaja\";\"other\"\n\"358620\";\"Сафага\";\"other\"\n\"358620\";\"سفاجا\";\"other\"\n\"358821\";\"Bilqās Qism Awwal\";\"main\"\n\"358821\";\"Bilqas Qism Awwal\";\"ascii\"\n\"358821\";\"Balqas\";\"other\"\n\"358821\";\"Balqās\";\"other\"\n\"358821\";\"Bilqas\";\"other\"\n\"358821\";\"Bilqas Qism Auwal\";\"other\"\n\"358821\";\"Bilqâs\";\"other\"\n\"358821\";\"Bilqâs Qism Auwal\";\"other\"\n\"358840\";\"Bilbays\";\"main\"\n\"358840\";\"Belbeis\";\"other\"\n\"358840\";\"Bilbeis\";\"other\"\n\"358840\";\"Bilbes\";\"other\"\n\"358840\";\"Bilbês\";\"other\"\n\"358840\";\"blbys\";\"other\"\n\"358840\";\"بلبيس\";\"other\"\n\"358970\";\"Basyūn\";\"main\"\n\"358970\";\"Basyun\";\"ascii\"\n\"358970\";\"Basyûn\";\"other\"\n\"359173\";\"Banī Suwayf\";\"main\"\n\"359173\";\"Bani Suwayf\";\"ascii\"\n\"359173\";\"Beni Souef\";\"other\"\n\"359173\";\"Beni Sue\";\"other\"\n\"359173\";\"Beni Suef\";\"other\"\n\"359173\";\"Beni Suweif\";\"other\"\n\"359212\";\"Banī Mazār\";\"main\"\n\"359212\";\"Bani Mazar\";\"ascii\"\n\"359212\";\"Beni Mazar\";\"other\"\n\"359212\";\"Beni Mazâr\";\"other\"\n\"359280\";\"Banhā\";\"main\"\n\"359280\";\"Banha\";\"ascii\"\n\"359280\";\"Athribis\";\"other\"\n\"359280\";\"Bandar Banha\";\"other\"\n\"359280\";\"Bandar Banhā\";\"other\"\n\"359280\";\"Bankha\";\"other\"\n\"359280\";\"Benha\";\"other\"\n\"359280\";\"Benna\";\"other\"\n\"359280\";\"Банха\";\"other\"\n\"359493\";\"Az Zaqāzīq\";\"main\"\n\"359493\";\"Az Zaqaziq\";\"ascii\"\n\"359493\";\"As Zaqaziq\";\"other\"\n\"359493\";\"As Zaqāzīq\";\"other\"\n\"359493\";\"Az Zagazig\";\"other\"\n\"359493\";\"Az Zagāzīg\";\"other\"\n\"359493\";\"Es Zaqiziq\";\"other\"\n\"359493\";\"Ez Zaqaziq\";\"other\"\n\"359493\";\"Ez Zaqāzīq\";\"other\"\n\"359493\";\"Zagazig\";\"other\"\n\"359493\";\"Zaqaziq\";\"other\"\n\"359493\";\"Zaqazîq\";\"other\"\n\"359493\";\"alzqazyq\";\"other\"\n\"359493\";\"الزقازيق\";\"other\"\n\"359576\";\"Awsīm\";\"main\"\n\"359576\";\"Awsim\";\"ascii\"\n\"359576\";\"Ausim\";\"other\"\n\"359576\";\"Ausîm\";\"other\"\n\"359576\";\"Letopolis\";\"other\"\n\"359576\";\"Letous Polis\";\"other\"\n\"359576\";\"Usiim\";\"other\"\n\"359678\";\"Aţ Ţūr\";\"main\"\n\"359678\";\"At Tur\";\"ascii\"\n\"359678\";\"Al-Tur\";\"other\"\n\"359678\";\"El-Tor\";\"other\"\n\"359678\";\"El-Tur\";\"other\"\n\"359678\";\"El-Tûr\";\"other\"\n\"359678\";\"Et Tor\";\"other\"\n\"359678\";\"Thur\";\"other\"\n\"359678\";\"Tor\";\"other\"\n\"359710\";\"At Tall al Kabīr\";\"main\"\n\"359710\";\"At Tall al Kabir\";\"ascii\"\n\"359710\";\"At Tell al Kebir\";\"other\"\n\"359710\";\"At Tell al Kebīr\";\"other\"\n\"359710\";\"El-Tell el-Kebir\";\"other\"\n\"359710\";\"El-Tell el-Kebîr\";\"other\"\n\"359710\";\"Et Tell el Kebir\";\"other\"\n\"359710\";\"Et Tell el Kebīr\";\"other\"\n\"359710\";\"Tel el Kebir\";\"other\"\n\"359710\";\"Tell el- Kebir\";\"other\"\n\"359710\";\"Tell el- Kebîr\";\"other\"\n\"359783\";\"Asyūţ\";\"main\"\n\"359783\";\"Asyut\";\"ascii\"\n\"359783\";\"As'jut\";\"other\"\n\"359783\";\"Assiout\";\"other\"\n\"359783\";\"Assiut\";\"other\"\n\"359783\";\"Assuit\";\"other\"\n\"359783\";\"Licopolis\";\"other\"\n\"359783\";\"Likupulis\";\"other\"\n\"359783\";\"Lycopolis\";\"other\"\n\"359783\";\"Līkūpūlīs\";\"other\"\n\"359783\";\"Siut\";\"other\"\n\"359783\";\"Асьют\";\"other\"\n\"359792\";\"Aswān\";\"main\"\n\"359792\";\"Aswan\";\"ascii\"\n\"359792\";\"Assouan\";\"other\"\n\"359792\";\"Assuan\";\"other\"\n\"359792\";\"Assuao\";\"other\"\n\"359792\";\"Assuão\";\"other\"\n\"359792\";\"Asuan\";\"other\"\n\"359792\";\"Asuan - aswan\";\"other\"\n\"359792\";\"Asuanas\";\"other\"\n\"359792\";\"Asuano\";\"other\"\n\"359792\";\"Asuán\";\"other\"\n\"359792\";\"Asuán - أسوان\";\"other\"\n\"359792\";\"Aswân\";\"other\"\n\"359792\";\"Asŭano\";\"other\"\n\"359792\";\"Es-Suan\";\"other\"\n\"359792\";\"Syena\";\"other\"\n\"359792\";\"Syene\";\"other\"\n\"359792\";\"Syeue\";\"other\"\n\"359792\";\"asuwan\";\"other\"\n\"359792\";\"aswan\";\"other\"\n\"359792\";\"Асуан\";\"other\"\n\"359792\";\"אסואן\";\"other\"\n\"359792\";\"أسوان\";\"other\"\n\"359792\";\"アスワン\";\"other\"\n\"359796\";\"Suez\";\"main\"\n\"359796\";\"Al Qulzum\";\"other\"\n\"359796\";\"As Suways\";\"other\"\n\"359796\";\"Clysma\";\"other\"\n\"359796\";\"El Seweis\";\"other\"\n\"359796\";\"El Suweis\";\"other\"\n\"359796\";\"El-Qulzum\";\"other\"\n\"359796\";\"Es Suweis\";\"other\"\n\"359796\";\"Klysma\";\"other\"\n\"359796\";\"Souez\";\"other\"\n\"359796\";\"Suecas\";\"other\"\n\"359796\";\"Suehc\";\"other\"\n\"359796\";\"Suehckij\";\"other\"\n\"359796\";\"Sues\";\"other\"\n\"359796\";\"Suess\";\"other\"\n\"359796\";\"Sueveys\";\"other\"\n\"359796\";\"Suës\";\"other\"\n\"359796\";\"Súes\";\"other\"\n\"359796\";\"Süveyş\";\"other\"\n\"359796\";\"suejeu\";\"other\"\n\"359796\";\"suezu\";\"other\"\n\"359796\";\"swys\";\"other\"\n\"359796\";\"Σουέζ\";\"other\"\n\"359796\";\"Суэц\";\"other\"\n\"359796\";\"Суэцкий\";\"other\"\n\"359796\";\"سويس\";\"other\"\n\"359796\";\"スエズ\";\"other\"\n\"359796\";\"수에즈\";\"other\"\n\"359900\";\"Aş Şaff\";\"main\"\n\"359900\";\"As Saff\";\"ascii\"\n\"359900\";\"El-Saff\";\"other\"\n\"359900\";\"Es Saff\";\"other\"\n\"359953\";\"Ash Shuhadā’\";\"main\"\n\"359953\";\"Ash Shuhada'\";\"ascii\"\n\"359953\";\"El Shohada\";\"other\"\n\"359953\";\"El-Shuhada\";\"other\"\n\"359953\";\"Esh-Shuhada\";\"other\"\n\"360048\";\"Ashmūn\";\"main\"\n\"360048\";\"Ashmun\";\"ascii\"\n\"360464\";\"Al Wāsiţah\";\"main\"\n\"360464\";\"Al Wasitah\";\"ascii\"\n\"360464\";\"El Wasta\";\"other\"\n\"360464\";\"El Wāsta\";\"other\"\n\"360464\";\"Wasta\";\"other\"\n\"360502\";\"Luxor\";\"main\"\n\"360502\";\"Al Uqsur\";\"other\"\n\"360502\";\"Al Uqşur\";\"other\"\n\"360502\";\"El Aqsur\";\"other\"\n\"360502\";\"El Kusur\";\"other\"\n\"360502\";\"El Qusur\";\"other\"\n\"360502\";\"El Uqsor\";\"other\"\n\"360502\";\"El-Aksur\";\"other\"\n\"360502\";\"Louksor\";\"other\"\n\"360502\";\"Louxor\";\"other\"\n\"360502\";\"Loxor\";\"other\"\n\"360502\";\"Loxòr\";\"other\"\n\"360502\";\"Luksor\";\"other\"\n\"360502\";\"Luksoras\";\"other\"\n\"360502\";\"Luksoro\";\"other\"\n\"360502\";\"Luqsor\";\"other\"\n\"360502\";\"Luxor- alaqsr\";\"other\"\n\"360502\";\"Luxor- الأقصر\";\"other\"\n\"360502\";\"alaqsr\";\"other\"\n\"360502\";\"aqsr\";\"other\"\n\"360502\";\"le shu\";\"other\"\n\"360502\";\"luksori\";\"other\"\n\"360502\";\"Луксор\";\"other\"\n\"360502\";\"اقصر\";\"other\"\n\"360502\";\"الأقصر\";\"other\"\n\"360502\";\"ლუქსორი\";\"other\"\n\"360502\";\"樂蜀\";\"other\"\n\"360526\";\"Al Qūşīyah\";\"main\"\n\"360526\";\"Al Qusiyah\";\"ascii\"\n\"360526\";\"Cusae\";\"other\"\n\"360526\";\"El Qusiya\";\"other\"\n\"360526\";\"El Qūsīya\";\"other\"\n\"360531\";\"Al Quşayr\";\"main\"\n\"360531\";\"Al Qusayr\";\"ascii\"\n\"360531\";\"Al'-Kusajra\";\"other\"\n\"360531\";\"Koseir\";\"other\"\n\"360531\";\"Leucus Limen\";\"other\"\n\"360531\";\"Qosier\";\"other\"\n\"360531\";\"Qosseir\";\"other\"\n\"360531\";\"Quseir\";\"other\"\n\"360531\";\"Аль-Кусайра\";\"other\"\n\"360542\";\"Al Qurayn\";\"main\"\n\"360542\";\"Al'-Ehl'-Kurajn\";\"other\"\n\"360542\";\"El-Qurein\";\"other\"\n\"360542\";\"Аль-Эль-Курайн\";\"other\"\n\"360612\";\"Al Qanāyāt\";\"main\"\n\"360612\";\"Al Qanayat\";\"ascii\"\n\"360612\";\"El-Qanayat\";\"other\"\n\"360612\";\"El-Qanâyât\";\"other\"\n\"360615\";\"Al Qanāţir al Khayrīyah\";\"main\"\n\"360615\";\"Al Qanatir al Khayriyah\";\"ascii\"\n\"360615\";\"Barrage\";\"other\"\n\"360615\";\"Delta Barrage Station\";\"other\"\n\"360615\";\"Delta-Barrage\";\"other\"\n\"360615\";\"El-Qanatir el-Khairiya\";\"other\"\n\"360615\";\"El-Qanâṭir el-Khairîya\";\"other\"\n\"360630\";\"Cairo\";\"main\"\n\"360630\";\"Al Qahirah\";\"other\"\n\"360630\";\"Al Qāhirah\";\"other\"\n\"360630\";\"Caire\";\"other\"\n\"360630\";\"Cairo - alqahrt\";\"other\"\n\"360630\";\"Cairo - القاهرة\";\"other\"\n\"360630\";\"Cairu\";\"other\"\n\"360630\";\"Cairus\";\"other\"\n\"360630\";\"Caïro\";\"other\"\n\"360630\";\"El Caire\";\"other\"\n\"360630\";\"El Cairo\";\"other\"\n\"360630\";\"El Kahira\";\"other\"\n\"360630\";\"El Kahirah\";\"other\"\n\"360630\";\"El-Qahira\";\"other\"\n\"360630\";\"El-Qâhira\";\"other\"\n\"360630\";\"Il Cairo\";\"other\"\n\"360630\";\"Kaherah\";\"other\"\n\"360630\";\"Kahira\";\"other\"\n\"360630\";\"Kahirae\";\"other\"\n\"360630\";\"Kahire\";\"other\"\n\"360630\";\"Kahirä\";\"other\"\n\"360630\";\"Kair\";\"other\"\n\"360630\";\"Kaira\";\"other\"\n\"360630\";\"Kairas\";\"other\"\n\"360630\";\"Kairo\";\"other\"\n\"360630\";\"Kairó\";\"other\"\n\"360630\";\"Kajro\";\"other\"\n\"360630\";\"Kaíró\";\"other\"\n\"360630\";\"Kaïro\";\"other\"\n\"360630\";\"Káhira\";\"other\"\n\"360630\";\"Le Caire\";\"other\"\n\"360630\";\"Lo Cayiro\";\"other\"\n\"360630\";\"Lungsod ng Cairo\";\"other\"\n\"360630\";\"Masr\";\"other\"\n\"360630\";\"Misr\";\"other\"\n\"360630\";\"Qahirə\";\"other\"\n\"360630\";\"alqahrt\";\"other\"\n\"360630\";\"kai luo\";\"other\"\n\"360630\";\"kailo\";\"other\"\n\"360630\";\"kairo\";\"other\"\n\"360630\";\"keyro\";\"other\"\n\"360630\";\"khiro\";\"other\"\n\"360630\";\"qahrh\";\"other\"\n\"360630\";\"qhyr\";\"other\"\n\"360630\";\"Ël Cairo\";\"other\"\n\"360630\";\"Ël Càiro\";\"other\"\n\"360630\";\"Κάιρο\";\"other\"\n\"360630\";\"Каир\";\"other\"\n\"360630\";\"Каиро\";\"other\"\n\"360630\";\"Кайро\";\"other\"\n\"360630\";\"Каїр\";\"other\"\n\"360630\";\"קהיר\";\"other\"\n\"360630\";\"القاهرة\";\"other\"\n\"360630\";\"قاهره\";\"other\"\n\"360630\";\"قاھىرە\";\"other\"\n\"360630\";\"قاہرہ\";\"other\"\n\"360630\";\"கெய்ரோ\";\"other\"\n\"360630\";\"ไคโร\";\"other\"\n\"360630\";\"ཁ་ཡི་རོ\";\"other\"\n\"360630\";\"ქაირო\";\"other\"\n\"360630\";\"ካይሮ\";\"other\"\n\"360630\";\"カイロ\";\"other\"\n\"360630\";\"开罗\";\"other\"\n\"360630\";\"카이로\";\"other\"\n\"360686\";\"Al Minyā\";\"main\"\n\"360686\";\"Al Minya\";\"ascii\"\n\"360686\";\"Ehl'-Min'ja\";\"other\"\n\"360686\";\"El Minia\";\"other\"\n\"360686\";\"El-Minya\";\"other\"\n\"360686\";\"Minia\";\"other\"\n\"360686\";\"Minieh\";\"other\"\n\"360686\";\"Minya\";\"other\"\n\"360686\";\"Эль-Минья\";\"other\"\n\"360716\";\"Al Maţarīyah\";\"main\"\n\"360716\";\"Al Matariyah\";\"ascii\"\n\"360716\";\"El Mataria\";\"other\"\n\"360716\";\"El-Matariya\";\"other\"\n\"360716\";\"El-Maṭarîya\";\"other\"\n\"360716\";\"Matarieh\";\"other\"\n\"360754\";\"Al Manzilah\";\"main\"\n\"360754\";\"Al Manzalah\";\"other\"\n\"360754\";\"El-Manzala\";\"other\"\n\"360761\";\"Al Manşūrah\";\"main\"\n\"360761\";\"Al Mansurah\";\"ascii\"\n\"360761\";\"Al-Mansura\";\"other\"\n\"360761\";\"Al-Mansurah\";\"other\"\n\"360761\";\"El Mansura\";\"other\"\n\"360761\";\"El-Mansura\";\"other\"\n\"360761\";\"El-Manṣûra\";\"other\"\n\"360761\";\"El-Masura\";\"other\"\n\"360761\";\"El-Masûra\";\"other\"\n\"360761\";\"Manoura\";\"other\"\n\"360761\";\"Mansoura\";\"other\"\n\"360761\";\"Mansourah\";\"other\"\n\"360761\";\"Mansura\";\"other\"\n\"360761\";\"Mansurah\";\"other\"\n\"360761\";\"Mansûra\";\"other\"\n\"360761\";\"mnswrh\";\"other\"\n\"360761\";\"mnswrt\";\"other\"\n\"360761\";\"منصورة\";\"other\"\n\"360761\";\"منصوره\";\"other\"\n\"360773\";\"Al Manshāh\";\"main\"\n\"360773\";\"Al Manshah\";\"ascii\"\n\"360773\";\"El Manshah\";\"other\"\n\"360773\";\"El Manshāh\";\"other\"\n\"360773\";\"Ptolemais Hernnon\";\"other\"\n\"360773\";\"Ptolemaîs Hernnon\";\"other\"\n\"360829\";\"Al Maḩallah al Kubrá\";\"main\"\n\"360829\";\"Al Mahallah al Kubra\";\"ascii\"\n\"360829\";\"El Mahalla\";\"other\"\n\"360829\";\"El Mahalla el Kubra\";\"other\"\n\"360829\";\"El Mehalla el Kubra\";\"other\"\n\"360829\";\"El-Mahalla el-Kubra\";\"other\"\n\"360829\";\"El-Maḥalla el-Kubra\";\"other\"\n\"360829\";\"Mahalla el Kubra\";\"other\"\n\"360829\";\"Mehalla el Kobra\";\"other\"\n\"360829\";\"almhlt alkbry\";\"other\"\n\"360829\";\"المحلة الكبرى\";\"other\"\n\"360923\";\"Al Khārijah\";\"main\"\n\"360923\";\"Al Kharijah\";\"ascii\"\n\"360923\";\"Al-Kharga\";\"other\"\n\"360923\";\"El Kharga\";\"other\"\n\"360923\";\"El Khârga\";\"other\"\n\"360923\";\"El-Charge\";\"other\"\n\"360923\";\"Kharga\";\"other\"\n\"360928\";\"Al Khānkah\";\"main\"\n\"360928\";\"Al Khankah\";\"ascii\"\n\"360928\";\"El-Khanka\";\"other\"\n\"360928\";\"El-Khankah\";\"other\"\n\"360928\";\"El-Khânka\";\"other\"\n\"360928\";\"El-Khânkâh\";\"other\"\n\"360928\";\"Khanka\";\"other\"\n\"360995\";\"Al Jīzah\";\"main\"\n\"360995\";\"Al Jizah\";\"ascii\"\n\"360995\";\"El Gizeh\";\"other\"\n\"360995\";\"El-Giza\";\"other\"\n\"360995\";\"El-Gîza\";\"other\"\n\"360995\";\"Ghizeh\";\"other\"\n\"360995\";\"Giza\";\"other\"\n\"360995\";\"Gizah\";\"other\"\n\"360995\";\"Gizeh\";\"other\"\n\"360995\";\"Gizo\";\"other\"\n\"360995\";\"Guize\";\"other\"\n\"360995\";\"Guizé\";\"other\"\n\"360995\";\"Gíza\";\"other\"\n\"360995\";\"Gîza\";\"other\"\n\"360995\";\"aljyzt\";\"other\"\n\"360995\";\"giza\";\"other\"\n\"360995\";\"jyzh\";\"other\"\n\"360995\";\"Гиза\";\"other\"\n\"360995\";\"الجيزة\";\"other\"\n\"360995\";\"جیزه\";\"other\"\n\"360995\";\"ギーザ\";\"other\"\n\"361029\";\"Al Jamālīyah\";\"main\"\n\"361029\";\"Al Jamaliyah\";\"ascii\"\n\"361029\";\"El-Gamaliya\";\"other\"\n\"361029\";\"El-Gamalîya\";\"other\"\n\"361055\";\"Ismailia\";\"main\"\n\"361055\";\"Al Isma`iliya\";\"other\"\n\"361055\";\"Al Isma`iliyah\";\"other\"\n\"361055\";\"Al Ismā‘īlīya\";\"other\"\n\"361055\";\"Al Ismā‘īlīyah\";\"other\"\n\"361055\";\"Ismailieh\";\"other\"\n\"361055\";\"Ismailija\";\"other\"\n\"361055\";\"Ismailiya\";\"other\"\n\"361055\";\"Ismailiyah\";\"other\"\n\"361055\";\"Ismailîya\";\"other\"\n\"361055\";\"Ismaïlia\";\"other\"\n\"361055\";\"Исмаилия\";\"other\"\n\"361055\";\"مدينة الإسماعيلية\";\"other\"\n\"361058\";\"Alexandria\";\"main\"\n\"361058\";\"Al Iskandariyah\";\"other\"\n\"361058\";\"Al Iskandarīyah\";\"other\"\n\"361058\";\"Alejandria\";\"other\"\n\"361058\";\"Alejandría\";\"other\"\n\"361058\";\"Aleksandria\";\"other\"\n\"361058\";\"Aleksandrija\";\"other\"\n\"361058\";\"Aleksandrio\";\"other\"\n\"361058\";\"Alessandria\";\"other\"\n\"361058\";\"Alessandria d'Eggittu\";\"other\"\n\"361058\";\"Alessandria d'Egitto\";\"other\"\n\"361058\";\"Alexandreia\";\"other\"\n\"361058\";\"Alexandria - alaskndryt\";\"other\"\n\"361058\";\"Alexandria Magna\";\"other\"\n\"361058\";\"Alexandrie\";\"other\"\n\"361058\";\"Alexandrië\";\"other\"\n\"361058\";\"Alexandría\";\"other\"\n\"361058\";\"Alexandría - الإسكندرية\";\"other\"\n\"361058\";\"El Iskandariya\";\"other\"\n\"361058\";\"El Iskandarīya\";\"other\"\n\"361058\";\"Iskandariyah\";\"other\"\n\"361058\";\"Iskenderiye\";\"other\"\n\"361058\";\"Iskindiriya\";\"other\"\n\"361058\";\"Iskindirîya\";\"other\"\n\"361058\";\"alaskndryt\";\"other\"\n\"361058\";\"alekajandriya\";\"other\"\n\"361058\";\"aleksandria\";\"other\"\n\"361058\";\"arekusandoria\";\"other\"\n\"361058\";\"askndryh\";\"other\"\n\"361058\";\"ya li shan da gang\";\"other\"\n\"361058\";\"ya li shan zhuo\";\"other\"\n\"361058\";\"İskenderiye\";\"other\"\n\"361058\";\"Αλεξάνδρεια\";\"other\"\n\"361058\";\"Александрия\";\"other\"\n\"361058\";\"Александрија\";\"other\"\n\"361058\";\"Александрія\";\"other\"\n\"361058\";\"אלכסנדריה\";\"other\"\n\"361058\";\"اسکندریه\";\"other\"\n\"361058\";\"الإسكندرية\";\"other\"\n\"361058\";\"আলেকজান্দ্রিয়া\";\"other\"\n\"361058\";\"ალექსანდრია\";\"other\"\n\"361058\";\"アレクサンドリア\";\"other\"\n\"361058\";\"亞歷山卓\";\"other\"\n\"361058\";\"亞歷山大港\";\"other\"\n\"361103\";\"Al Ibrāhīmīyah\";\"main\"\n\"361103\";\"Al Ibrahimiyah\";\"ascii\"\n\"361103\";\"El-Ibrahimiya\";\"other\"\n\"361103\";\"El-Ibrâhîmîya\";\"other\"\n\"361103\";\"Ibrahimiya\";\"other\"\n\"361103\";\"Ibrahimiyyah\";\"other\"\n\"361103\";\"Ibrâhîmîya\";\"other\"\n\"361179\";\"Al Ḩawāmidīyah\";\"main\"\n\"361179\";\"Al Hawamidiyah\";\"ascii\"\n\"361179\";\"El-Hawamdiya\";\"other\"\n\"361179\";\"El-Ḥawâmdîya\";\"other\"\n\"361179\";\"Hawamidyah\";\"other\"\n\"361213\";\"Al Ḩāmūl\";\"main\"\n\"361213\";\"Al Hamul\";\"ascii\"\n\"361213\";\"El-Hamul\";\"other\"\n\"361213\";\"El-Ḥâmûl\";\"other\"\n\"361291\";\"Al Ghardaqah\";\"main\"\n\"361291\";\"Al-Ghardaqa\";\"other\"\n\"361291\";\"El-Ghardaqa\";\"other\"\n\"361291\";\"Hurgada\";\"other\"\n\"361291\";\"Hurghada\";\"other\"\n\"361291\";\"Khurgada\";\"other\"\n\"361291\";\"Urgada\";\"other\"\n\"361291\";\"alghrdqt\";\"other\"\n\"361291\";\"ghrdqh\";\"other\"\n\"361291\";\"hong jia da\";\"other\"\n\"361291\";\"Хургада\";\"other\"\n\"361291\";\"الغردقة\";\"other\"\n\"361291\";\"غردقه\";\"other\"\n\"361291\";\"洪加達\";\"other\"\n\"361320\";\"Al Fayyūm\";\"main\"\n\"361320\";\"Al Fayyum\";\"ascii\"\n\"361320\";\"Al'-Fajum\";\"other\"\n\"361320\";\"Al-Fayyum\";\"other\"\n\"361320\";\"Arsinoe\";\"other\"\n\"361320\";\"Arsinoë\";\"other\"\n\"361320\";\"Crocodilopolis\";\"other\"\n\"361320\";\"El Faiyum\";\"other\"\n\"361320\";\"El Faiyûm\";\"other\"\n\"361320\";\"El-Fayum\";\"other\"\n\"361320\";\"Faijum\";\"other\"\n\"361320\";\"Faium\";\"other\"\n\"361320\";\"Fajum\";\"other\"\n\"361320\";\"Fayoom\";\"other\"\n\"361320\";\"Fayoum\";\"other\"\n\"361320\";\"Fayum\";\"other\"\n\"361320\";\"Fayyoum\";\"other\"\n\"361320\";\"Fayyum\";\"other\"\n\"361320\";\"Madinat al-Fayyum\";\"other\"\n\"361320\";\"Madinet el Faiyum\";\"other\"\n\"361320\";\"Madīnet el Faiyūm\";\"other\"\n\"361320\";\"Medinat Fayum\";\"other\"\n\"361320\";\"Medinat el-Fayoum\";\"other\"\n\"361320\";\"Médinat el-Fayoum\";\"other\"\n\"361320\";\"Shedit\";\"other\"\n\"361320\";\"alfywm\";\"other\"\n\"361320\";\"astan fywm\";\"other\"\n\"361320\";\"mhafzt alfywm\";\"other\"\n\"361320\";\"Аль-Фаюм\";\"other\"\n\"361320\";\"استان فیوم\";\"other\"\n\"361320\";\"الفيوم\";\"other\"\n\"361320\";\"محافظة الفيوم\";\"other\"\n\"361329\";\"Al Fashn\";\"main\"\n\"361329\";\"El Fashn\";\"other\"\n\"361329\";\"Fashn\";\"other\"\n\"361394\";\"Al Bawīţī\";\"main\"\n\"361394\";\"Al Bawiti\";\"ascii\"\n\"361394\";\"Baviti\";\"other\"\n\"361394\";\"Bawiti\";\"other\"\n\"361394\";\"Bawīti\";\"other\"\n\"361394\";\"El Bawiti\";\"other\"\n\"361394\";\"El Bawîti\";\"other\"\n\"361394\";\"Бавити\";\"other\"\n\"361435\";\"Al Balyanā\";\"main\"\n\"361435\";\"Al Balyana\";\"ascii\"\n\"361435\";\"Balyana\";\"other\"\n\"361435\";\"El Balyana\";\"other\"\n\"361457\";\"Al Bājūr\";\"main\"\n\"361457\";\"Al Bajur\";\"ascii\"\n\"361457\";\"El Baqur\";\"other\"\n\"361457\";\"El-Bagur\";\"other\"\n\"361457\";\"El-Bâgûr\";\"other\"\n\"361478\";\"Al Badārī\";\"main\"\n\"361478\";\"Al Badari\";\"ascii\"\n\"361478\";\"El Badari\";\"other\"\n\"361478\";\"El Badâri\";\"other\"\n\"361495\";\"Al ‘Ayyāţ\";\"main\"\n\"361495\";\"Al `Ayyat\";\"ascii\"\n\"361495\";\"Ayat\";\"other\"\n\"361495\";\"El `Ayyat\";\"other\"\n\"361495\";\"El ‘Ayyat\";\"other\"\n\"361495\";\"El-`Aiyat\";\"other\"\n\"361495\";\"El-‘Aiyaṭ\";\"other\"\n\"361546\";\"Al ‘Arīsh\";\"main\"\n\"361546\";\"Al `Arish\";\"ascii\"\n\"361546\";\"City of Cut Noses\";\"other\"\n\"361546\";\"El-`Arish\";\"other\"\n\"361546\";\"El-‘Arîsh\";\"other\"\n\"361546\";\"Rhinocolorum\";\"other\"\n\"361546\";\"Rhinocolura\";\"other\"\n\"361546\";\"Rhinocorura\";\"other\"\n\"361546\";\"Rhinokorura\";\"other\"\n\"361612\";\"Al ‘Alamayn\";\"main\"\n\"361612\";\"Al `Alamayn\";\"ascii\"\n\"361612\";\"Alamein\";\"other\"\n\"361612\";\"Alamejn\";\"other\"\n\"361612\";\"Ehl'-Alamejn\";\"other\"\n\"361612\";\"El Alamein\";\"other\"\n\"361612\";\"El Alamejn\";\"other\"\n\"361612\";\"El `Alamein\";\"other\"\n\"361612\";\"El ‘Alamein\";\"other\"\n\"361612\";\"El-Alamein\";\"other\"\n\"361612\";\"El-`Alamen\";\"other\"\n\"361612\";\"El-‘Alamên\";\"other\"\n\"361612\";\"a lai man\";\"other\"\n\"361612\";\"Аламейн\";\"other\"\n\"361612\";\"Ел Аламејн\";\"other\"\n\"361612\";\"Эль-Аламейн\";\"other\"\n\"361612\";\"علمين\";\"other\"\n\"361612\";\"阿莱曼\";\"other\"\n\"361661\";\"Akhmīm\";\"main\"\n\"361661\";\"Akhmim\";\"ascii\"\n\"361661\";\"Akhmun\";\"other\"\n\"361661\";\"Akhmûn\";\"other\"\n\"361661\";\"Ekhmin\";\"other\"\n\"361661\";\"Khemmis\";\"other\"\n\"361661\";\"Paloupolis\";\"other\"\n\"361661\";\"Panopolis\";\"other\"\n\"361661\";\"Panospolis\";\"other\"\n\"361661\";\"Ахмим\";\"other\"\n\"361702\";\"Ajā\";\"main\"\n\"361702\";\"Aja\";\"ascii\"\n\"361702\";\"Aga\";\"other\"\n\"361702\";\"Айа\";\"other\"\n\"361827\";\"Ad Dilinjāt\";\"main\"\n\"361827\";\"Ad Dilinjat\";\"ascii\"\n\"361827\";\"Delingat\";\"other\"\n\"361827\";\"Ed Dilingat\";\"other\"\n\"361827\";\"Ed Dilingāt\";\"other\"\n\"361827\";\"El-Dilingat\";\"other\"\n\"361827\";\"El-Dilingât\";\"other\"\n\"361827\";\"Tayyibat al Ism\";\"other\"\n\"361827\";\"Ţayyibat al Ism\";\"other\"\n\"362004\";\"Abū Tīj\";\"main\"\n\"362004\";\"Abu Tij\";\"ascii\"\n\"362004\";\"Abu Tig\";\"other\"\n\"362004\";\"Abu Tîg\";\"other\"\n\"362041\";\"Abū Sunbul\";\"main\"\n\"362041\";\"Abu Sunbul\";\"ascii\"\n\"362041\";\"Abou Simbel\";\"other\"\n\"362041\";\"Abu Simbel\";\"other\"\n\"362041\";\"Abu Simbil\";\"other\"\n\"362041\";\"Abu Sinbil\";\"other\"\n\"362041\";\"Abu Sumbul\";\"other\"\n\"362041\";\"Abu-Simbel\";\"other\"\n\"362041\";\"Абу-Симбел\";\"other\"\n\"362277\";\"Abū Qurqāş\";\"main\"\n\"362277\";\"Abu Qurqas\";\"ascii\"\n\"362277\";\"Abu Gurgas\";\"other\"\n\"362277\";\"Abu Kerkae\";\"other\"\n\"362277\";\"Abu Kirkas\";\"other\"\n\"362277\";\"Abu-Qirqas\";\"other\"\n\"362485\";\"Abū Kabīr\";\"main\"\n\"362485\";\"Abu Kabir\";\"ascii\"\n\"362485\";\"Abu Kebir\";\"other\"\n\"362485\";\"Abu Kebîr\";\"other\"\n\"362882\";\"Abū al Maţāmīr\";\"main\"\n\"362882\";\"Abu al Matamir\";\"ascii\"\n\"362882\";\"Abu `elwet-Matamir\";\"other\"\n\"362882\";\"Abu el Matamir\";\"other\"\n\"362882\";\"Abu el Matāmīr\";\"other\"\n\"362882\";\"Abû ‘elwet-Maṭâmîr\";\"other\"\n\"362973\";\"Abnūb\";\"main\"\n\"362973\";\"Abnub\";\"ascii\"\n\"411165\";\"Idfu\";\"main\"\n\"412793\";\"Al Minyā\";\"main\"\n\"412793\";\"Al Minya\";\"ascii\"\n\"419435\";\"Az Zarqā\";\"main\"\n\"419435\";\"Az Zarqa\";\"ascii\"\n\"6692512\";\"El Gouna\";\"main\"\n\"6692512\";\"Ehl'-Guna\";\"other\"\n\"6692512\";\"Эль-Гуна\";\"other\"\n\"6692518\";\"Makadi Bay\";\"main\"\n\"6692518\";\"Makadi\";\"other\"\n\"6692518\";\"Makady\";\"other\"\n\"6692518\";\"Макади\";\"other\"\n\"7284537\";\"Emirate's Embassy\";\"main\"\n\"7521348\";\"Ain Sukhna\";\"main\"\n\"7521348\";\"Ajn-Sukhna\";\"other\"\n\"7521348\";\"Айн-Сухна\";\"other\"\n\"2462881\";\"Ejbei Uad el Aabd\";\"main\"\n\"2462881\";\"Aaium\";\"other\"\n\"2462881\";\"Aaiun\";\"other\"\n\"2462881\";\"Aaiún\";\"other\"\n\"2462881\";\"Aiun\";\"other\"\n\"2462881\";\"Ajuno\";\"other\"\n\"2462881\";\"Al Ayoun\";\"other\"\n\"2462881\";\"Al-Aaiun\";\"other\"\n\"2462881\";\"Al-Ayun\";\"other\"\n\"2462881\";\"Al-Ujun\";\"other\"\n\"2462881\";\"Ehl'-Ajun\";\"other\"\n\"2462881\";\"El Aaiun\";\"other\"\n\"2462881\";\"El Aaiún\";\"other\"\n\"2462881\";\"El Aium\";\"other\"\n\"2462881\";\"El Aiun\";\"other\"\n\"2462881\";\"El Aiún\";\"other\"\n\"2462881\";\"El Ajun\";\"other\"\n\"2462881\";\"El Ayun\";\"other\"\n\"2462881\";\"El-Aaiun\";\"other\"\n\"2462881\";\"El-Aaiún\";\"other\"\n\"2462881\";\"La'Youn\";\"other\"\n\"2462881\";\"Laayoune\";\"other\"\n\"2462881\";\"Laâyoune\";\"other\"\n\"2462881\";\"La’Youn\";\"other\"\n\"2462881\";\"O Aiún - العيون\";\"other\"\n\"2462881\";\"a you en\";\"other\"\n\"2462881\";\"aiun\";\"other\"\n\"2462881\";\"el-ayun\";\"other\"\n\"2462881\";\"Ел Ајун\";\"other\"\n\"2462881\";\"Эль-Аюн\";\"other\"\n\"2462881\";\"العيون\";\"other\"\n\"2462881\";\"العیون\";\"other\"\n\"2462881\";\"アイウン\";\"other\"\n\"2462881\";\"阿尤恩\";\"other\"\n\"2462881\";\"엘아윤\";\"other\"\n\"2463447\";\"Ad Dakhla\";\"main\"\n\"2463447\";\"Ad - Dakhla\";\"other\"\n\"2463447\";\"Dakhla\";\"other\"\n\"2463447\";\"Dakhlah\";\"other\"\n\"2463447\";\"Factoria Villa Cisneros\";\"other\"\n\"2463447\";\"Villa Cisneras\";\"other\"\n\"2463447\";\"Villa Cisneros\";\"other\"\n\"2463447\";\"Дахла\";\"other\"\n\"327651\";\"Teseney\";\"main\"\n\"327651\";\"Tehsehnehj\";\"other\"\n\"327651\";\"Tesene\";\"other\"\n\"327651\";\"Tesenei\";\"other\"\n\"327651\";\"Tessenei\";\"other\"\n\"327651\";\"Тэсэнэй\";\"other\"\n\"330546\";\"Massawa\";\"main\"\n\"330546\";\"Masava\";\"other\"\n\"330546\";\"Masawa\";\"other\"\n\"330546\";\"Massaoua\";\"other\"\n\"330546\";\"Massau\";\"other\"\n\"330546\";\"Massaua\";\"other\"\n\"330546\";\"Massawah\";\"other\"\n\"330546\";\"Massowa\";\"other\"\n\"330546\";\"Massowah\";\"other\"\n\"330546\";\"Mesewa\";\"other\"\n\"330546\";\"Mits'iwa\";\"other\"\n\"330546\";\"Mitsewa\";\"other\"\n\"330546\";\"Mits’iwa\";\"other\"\n\"330546\";\"massawa\";\"other\"\n\"330546\";\"מסוע\";\"other\"\n\"330546\";\"ምጽዋ\";\"other\"\n\"330546\";\"マッサワ\";\"other\"\n\"333287\";\"Keren\";\"main\"\n\"333287\";\"Cheren\";\"other\"\n\"333287\";\"Kehrehn\";\"other\"\n\"333287\";\"Кэрэн\";\"other\"\n\"333287\";\"ከረን\";\"other\"\n\"338345\";\"‘Idī\";\"main\"\n\"338345\";\"`Idi\";\"ascii\"\n\"338345\";\"Ed\";\"other\"\n\"338345\";\"Edd\";\"other\"\n\"338345\";\"Eid\";\"other\"\n\"338345\";\"Ēd\";\"other\"\n\"338345\";\"ዕዲ\";\"other\"\n\"339537\";\"Dek’emhare\";\"main\"\n\"339537\";\"Dek'emhare\";\"ascii\"\n\"339537\";\"Decamere\";\"other\"\n\"339537\";\"Dekamere\";\"other\"\n\"339537\";\"Dekemehare\";\"other\"\n\"339537\";\"Dekemehre\";\"other\"\n\"339537\";\"ደቀምሓረ\";\"other\"\n\"342711\";\"Barentu\";\"main\"\n\"342711\";\"Barehntu\";\"other\"\n\"342711\";\"Mai Tsada\";\"other\"\n\"342711\";\"Барэнту\";\"other\"\n\"342711\";\"ባረንቱ\";\"other\"\n\"343300\";\"Asmara\";\"main\"\n\"343300\";\"Asmehra\";\"other\"\n\"343300\";\"Asmera\";\"other\"\n\"343300\";\"Aszmara\";\"other\"\n\"343300\";\"a si ma la\";\"other\"\n\"343300\";\"aseumala\";\"other\"\n\"343300\";\"asmrt\";\"other\"\n\"343300\";\"asumara\";\"other\"\n\"343300\";\"Ασμάρα\";\"other\"\n\"343300\";\"Асмара\";\"other\"\n\"343300\";\"Асмэра\";\"other\"\n\"343300\";\"Ասմարա\";\"other\"\n\"343300\";\"אסמרה\";\"other\"\n\"343300\";\"أسمرة\";\"other\"\n\"343300\";\"አስመራ\";\"other\"\n\"343300\";\"ኣሥመራ\";\"other\"\n\"343300\";\"ኣስመራ\";\"other\"\n\"343300\";\"アスマラ\";\"other\"\n\"343300\";\"阿斯瑪拉\";\"other\"\n\"343300\";\"阿斯馬拉\";\"other\"\n\"343300\";\"아스마라\";\"other\"\n\"343386\";\"Assab\";\"main\"\n\"343386\";\"Aseb\";\"other\"\n\"343386\";\"Baia di Assab\";\"other\"\n\"343386\";\"`Aseb\";\"other\"\n\"343386\";\"a sa bu\";\"other\"\n\"343386\";\"عصب\";\"other\"\n\"343386\";\"ዓስብ\";\"other\"\n\"343386\";\"‘Aseb\";\"other\"\n\"343386\";\"阿萨布\";\"other\"\n\"344426\";\"Ak’ordat\";\"main\"\n\"344426\";\"Ak'ordat\";\"ascii\"\n\"344426\";\"Agordat\";\"other\"\n\"344426\";\"Ak' Wirdet\";\"other\"\n\"344426\";\"Ak'irdat\";\"other\"\n\"344426\";\"Ak'urdet\";\"other\"\n\"344426\";\"Figordat\";\"other\"\n\"344426\";\"Āk’ Wirdet\";\"other\"\n\"344426\";\"Āk’irdat\";\"other\"\n\"344426\";\"Āk’urdet\";\"other\"\n\"344426\";\"ኣቁርደት\";\"other\"\n\"344426\";\"ኣቆርዳት\";\"other\"\n\"344901\";\"Mendefera\";\"main\"\n\"344901\";\"Addi Ugri\";\"other\"\n\"344901\";\"Adi Ugri\";\"other\"\n\"344901\";\"Mehndehfehra\";\"other\"\n\"344901\";\"`Adi Wegri\";\"other\"\n\"344901\";\"Ādī Ugrī\";\"other\"\n\"344901\";\"Мэндэфэра\";\"other\"\n\"344901\";\"መንደፈራ\";\"other\"\n\"344901\";\"‘Adī Wegrī\";\"other\"\n\"345046\";\"Adi Keyh\";\"main\"\n\"345046\";\"Addi Caieh\";\"other\"\n\"345046\";\"Addi Kaye\";\"other\"\n\"345046\";\"Addicaie\";\"other\"\n\"345046\";\"Addicaiè\";\"other\"\n\"345046\";\"Adi Caieh\";\"other\"\n\"345046\";\"Adi K'eyih\";\"other\"\n\"345046\";\"Adi Keih\";\"other\"\n\"345046\";\"Adi Keyeh\";\"other\"\n\"345046\";\"Ādī K’eyih\";\"other\"\n\"2509293\";\"Zurgena\";\"main\"\n\"2509300\";\"Zújar\";\"main\"\n\"2509300\";\"Zujar\";\"ascii\"\n\"2509305\";\"Zubia\";\"main\"\n\"2509305\";\"La Zubia\";\"other\"\n\"2509311\";\"Zorita\";\"main\"\n\"2509325\";\"Zarza la Mayor\";\"main\"\n\"2509329\";\"Zarza de Alange\";\"main\"\n\"2509329\";\"Zarza\";\"other\"\n\"2509329\";\"Zarza de San Alanje\";\"other\"\n\"2509329\";\"Zarza de junto Alange\";\"other\"\n\"2509329\";\"Zarza junto Alange\";\"other\"\n\"2509364\";\"Zalamea la Real\";\"main\"\n\"2509364\";\"Zalamea\";\"other\"\n\"2509365\";\"Zalamea de la Serena\";\"main\"\n\"2509368\";\"Zahinos\";\"main\"\n\"2509369\";\"Zahara de los Atunes\";\"main\"\n\"2509369\";\"Saara-de-los-Atunes\";\"other\"\n\"2509369\";\"Zahara\";\"other\"\n\"2509369\";\"Саара-де-лос-Атунес\";\"other\"\n\"2509371\";\"Zahara\";\"main\"\n\"2509374\";\"Zagra\";\"main\"\n\"2509377\";\"Zafra\";\"main\"\n\"2509379\";\"Zafarraya\";\"main\"\n\"2509382\";\"Yunquera\";\"main\"\n\"2509386\";\"Yeste\";\"main\"\n\"2509386\";\"Zoste\";\"other\"\n\"2509389\";\"Yepes\";\"main\"\n\"2509402\";\"Yecla\";\"main\"\n\"2509402\";\"Ekla\";\"other\"\n\"2509402\";\"Iecla\";\"other\"\n\"2509402\";\"Екла\";\"other\"\n\"2509406\";\"Yátova\";\"main\"\n\"2509406\";\"Yatova\";\"ascii\"\n\"2509406\";\"Iatova\";\"other\"\n\"2509406\";\"Iàtova\";\"other\"\n\"2509408\";\"Yaiza\";\"main\"\n\"2509420\";\"Viver\";\"main\"\n\"2509437\";\"Viso del Marqués\";\"main\"\n\"2509437\";\"Viso del Marques\";\"ascii\"\n\"2509437\";\"El Viso del Marques\";\"other\"\n\"2509437\";\"El Viso del Marqués\";\"other\"\n\"2509451\";\"Viñuela\";\"main\"\n\"2509451\";\"Vinuela\";\"ascii\"\n\"2509457\";\"Vinalesa\";\"main\"\n\"2509463\";\"Villena\";\"main\"\n\"2509463\";\"Vil'ena\";\"other\"\n\"2509463\";\"Вильена\";\"other\"\n\"2509465\";\"Villavieja\";\"main\"\n\"2509465\";\"La Vila Vella\";\"other\"\n\"2509466\";\"Villaviciosa de Córdoba\";\"main\"\n\"2509466\";\"Villaviciosa de Cordoba\";\"ascii\"\n\"2509466\";\"Villaviciosa\";\"other\"\n\"2509468\";\"Villaverde del Río\";\"main\"\n\"2509468\";\"Villaverde del Rio\";\"ascii\"\n\"2509475\";\"Villatobas\";\"main\"\n\"2509477\";\"Villasequilla de Yepes\";\"main\"\n\"2509477\";\"Villasequilla\";\"other\"\n\"2509479\";\"Villaseca de la Sagra\";\"main\"\n\"2509479\";\"Villaseca\";\"other\"\n\"2509480\";\"Villarta de San Juan\";\"main\"\n\"2509486\";\"Villarrubia de Santiago\";\"main\"\n\"2509487\";\"Villarrubia de los Ojos\";\"main\"\n\"2509487\";\"Villarrubia los Ojos\";\"other\"\n\"2509488\";\"Villarrubia\";\"main\"\n\"2509488\";\"Villariba\";\"other\"\n\"2509488\";\"Виллариба\";\"other\"\n\"2509491\";\"Villarrobledo\";\"main\"\n\"2509491\";\"Billarrobledo\";\"other\"\n\"2509491\";\"Vil'jarrobledo\";\"other\"\n\"2509491\";\"Villa Robletum\";\"other\"\n\"2509491\";\"biryaroburedo\";\"other\"\n\"2509491\";\"Βιλλαρροβλέδο\";\"other\"\n\"2509491\";\"Вильярробледо\";\"other\"\n\"2509491\";\"ビリャロブレド\";\"other\"\n\"2509494\";\"Villarrasa\";\"main\"\n\"2509509\";\"Vila-real\";\"main\"\n\"2509509\";\"Vila-Real\";\"other\"\n\"2509509\";\"Villareal\";\"other\"\n\"2509509\";\"Villarreal\";\"other\"\n\"2509509\";\"Вила-Реал\";\"other\"\n\"2509510\";\"Villardompardo\";\"main\"\n\"2509513\";\"Villar de Rena\";\"main\"\n\"2509516\";\"Villar del Rey\";\"main\"\n\"2509520\";\"Villar del Arzobispo\";\"main\"\n\"2509520\";\"El Villar\";\"other\"\n\"2509520\";\"Villora del Arzobispo\";\"other\"\n\"2509528\";\"Villaralto\";\"main\"\n\"2509538\";\"Villanueva de Tapia\";\"main\"\n\"2509539\";\"Villanueva de San Juan\";\"main\"\n\"2509543\";\"Villanueva del Trabuco\";\"main\"\n\"2509544\";\"Villanueva del Rosario\";\"main\"\n\"2509545\";\"Villanueva del Río y Minas\";\"main\"\n\"2509545\";\"Villanueva del Rio y Minas\";\"ascii\"\n\"2509545\";\"Minas de la Reunion\";\"other\"\n\"2509545\";\"Villanueva de las Minas\";\"other\"\n\"2509550\";\"Villanueva del Fresno\";\"main\"\n\"2509551\";\"Villanueva del Duque\";\"main\"\n\"2509553\";\"Villanueva de la Serena\";\"main\"\n\"2509553\";\"Vil'januehva-de-la-Serena\";\"other\"\n\"2509553\";\"Вильянуэва-де-ла-Серена\";\"other\"\n\"2509555\";\"Villanueva del Arzobispo\";\"main\"\n\"2509556\";\"Villanueva del Ariscal\";\"main\"\n\"2509557\";\"Villanueva de la Reina\";\"main\"\n\"2509558\";\"Villanueva de la Jara\";\"main\"\n\"2509560\";\"Villanueva de la Fuente\";\"main\"\n\"2509562\";\"Villanueva de Córdoba\";\"main\"\n\"2509562\";\"Villanueva de Cordoba\";\"ascii\"\n\"2509562\";\"Villanueva de Cordova\";\"other\"\n\"2509562\";\"Villanueva de Córdova\";\"other\"\n\"2509564\";\"Villanueva de Castellón\";\"main\"\n\"2509564\";\"Villanueva de Castellon\";\"ascii\"\n\"2509564\";\"Castello de la Ribera\";\"other\"\n\"2509564\";\"Castelló de la Ribera\";\"other\"\n\"2509564\";\"Villanueva de Castellan\";\"other\"\n\"2509564\";\"Villanueva de Castellán\";\"other\"\n\"2509566\";\"Villanueva de Algaidas\";\"main\"\n\"2509567\";\"Villanueva de Alcardete\";\"main\"\n\"2509567\";\"Villanueva del Cardete\";\"other\"\n\"2509573\";\"Villamayor de Santiago\";\"main\"\n\"2509575\";\"Villamartín\";\"main\"\n\"2509575\";\"Villamartin\";\"ascii\"\n\"2509576\";\"Vilamarxant\";\"main\"\n\"2509576\";\"Villamarchante\";\"other\"\n\"2509577\";\"Villamanrique de la Condesa\";\"main\"\n\"2509577\";\"Villamanrique\";\"other\"\n\"2509578\";\"Villamanrique\";\"main\"\n\"2509580\";\"Villamalea\";\"main\"\n\"2509582\";\"Villalpardo\";\"main\"\n\"2509583\";\"Villalonga\";\"main\"\n\"2509583\";\"Vilallonga\";\"other\"\n\"2509586\";\"Villalba de los Barros\";\"main\"\n\"2509587\";\"Villalba del Alcor\";\"main\"\n\"2509588\";\"Villajoyosa\";\"main\"\n\"2509588\";\"La Vila Joiosa\";\"other\"\n\"2509589\";\"Villahermosa\";\"main\"\n\"2509592\";\"Villagonzalo\";\"main\"\n\"2509594\";\"Villagarcía de la Torre\";\"main\"\n\"2509594\";\"Villagarcia de la Torre\";\"ascii\"\n\"2509594\";\"Villagarcia\";\"other\"\n\"2509597\";\"Villafranca de los Caballeros\";\"main\"\n\"2509598\";\"Villafranca de los Barros\";\"main\"\n\"2509599\";\"Villafranca de Córdoba\";\"main\"\n\"2509599\";\"Villafranca de Cordoba\";\"ascii\"\n\"2509600\";\"Vilafranca de Bonany\";\"main\"\n\"2509600\";\"Villafranca\";\"other\"\n\"2509603\";\"Villa del Río\";\"main\"\n\"2509603\";\"Villa del Rio\";\"ascii\"\n\"2509605\";\"Villa de Don Fadrique\";\"main\"\n\"2509605\";\"La Villa de Don Fadrique\";\"other\"\n\"2509605\";\"Villa de Don Fabrique\";\"other\"\n\"2509606\";\"Villacarrillo\";\"main\"\n\"2509606\";\"Villacarillo\";\"other\"\n\"2509607\";\"Es Castell\";\"main\"\n\"2509607\";\"Vilacarlos\";\"other\"\n\"2509607\";\"Villacarlos\";\"other\"\n\"2509608\";\"Villacañas\";\"main\"\n\"2509608\";\"Villacanas\";\"ascii\"\n\"2509609\";\"Villablanca\";\"main\"\n\"2509615\";\"Vilches\";\"main\"\n\"2509617\";\"Vilaflor\";\"main\"\n\"2509617\";\"Villaflor\";\"other\"\n\"2509650\";\"Vícar\";\"main\"\n\"2509650\";\"Vicar\";\"ascii\"\n\"2509660\";\"Viator\";\"main\"\n\"2509669\";\"Vergel\";\"main\"\n\"2509669\";\"El Verger\";\"other\"\n\"2509669\";\"el verger\";\"other\"\n\"2509693\";\"Vera\";\"main\"\n\"2509713\";\"Ventas con Peña Aguilera\";\"main\"\n\"2509713\";\"Ventas con Pena Aguilera\";\"ascii\"\n\"2509728\";\"Venta del Moro\";\"main\"\n\"2509768\";\"Vélez Rubio\";\"main\"\n\"2509768\";\"Velez Rubio\";\"ascii\"\n\"2509768\";\"Velez-Rubio\";\"other\"\n\"2509768\";\"Vélez-Rubio\";\"other\"\n\"2509769\";\"Vélez-Málaga\";\"main\"\n\"2509769\";\"Velez-Malaga\";\"ascii\"\n\"2509769\";\"Veles-Malaga\";\"other\"\n\"2509769\";\"Vélez-Màlaga\";\"other\"\n\"2509769\";\"Велес-Малага\";\"other\"\n\"2509771\";\"Vélez de Benaudalla\";\"main\"\n\"2509771\";\"Velez de Benaudalla\";\"ascii\"\n\"2509771\";\"Velez Benahudalla\";\"other\"\n\"2509771\";\"Velez Benandalla\";\"other\"\n\"2509771\";\"Velez de Benaudilla\";\"other\"\n\"2509771\";\"Vélez Benandalla\";\"other\"\n\"2509772\";\"Vélez Blanco\";\"main\"\n\"2509772\";\"Velez Blanco\";\"ascii\"\n\"2509772\";\"Velez-Blanco\";\"other\"\n\"2509781\";\"Velada\";\"main\"\n\"2509783\";\"Vejer de la Frontera\";\"main\"\n\"2509799\";\"Vega de San Mateo\";\"main\"\n\"2509799\";\"San Mateo\";\"other\"\n\"2509832\";\"Valverde de Mérida\";\"main\"\n\"2509832\";\"Valverde de Merida\";\"ascii\"\n\"2509834\";\"Valverde de Leganés\";\"main\"\n\"2509834\";\"Valverde de Leganes\";\"ascii\"\n\"2509835\";\"Valverde del Camino\";\"main\"\n\"2509836\";\"Valverde de Júcar\";\"main\"\n\"2509836\";\"Valverde de Jucar\";\"ascii\"\n\"2509836\";\"Valverde del Jucar\";\"other\"\n\"2509836\";\"Valverde del Júcar\";\"other\"\n\"2509841\";\"Valverde\";\"main\"\n\"2509841\";\"Val'verde\";\"other\"\n\"2509841\";\"Вальверде\";\"other\"\n\"2509846\";\"Valsequillo de Gran Canaria\";\"main\"\n\"2509846\";\"Valsequillo\";\"other\"\n\"2509864\";\"Valleseco\";\"main\"\n\"2509887\";\"Vallehermosa\";\"main\"\n\"2509887\";\"Vallehermoso\";\"other\"\n\"2509891\";\"Valle de Santa Ana\";\"main\"\n\"2509902\";\"Valle de la Serena\";\"main\"\n\"2509929\";\"Valldemossa\";\"main\"\n\"2509929\";\"Valldemosa\";\"other\"\n\"2509929\";\"fa de mo sa\";\"other\"\n\"2509929\";\"法德摩薩\";\"other\"\n\"2509934\";\"Vallada\";\"main\"\n\"2509944\";\"Valenzuela\";\"main\"\n\"2509946\";\"Valencina de la Concepción\";\"main\"\n\"2509946\";\"Valencina de la Concepcion\";\"ascii\"\n\"2509946\";\"Valencina\";\"other\"\n\"2509946\";\"Valencina del Alcor\";\"other\"\n\"2509947\";\"Valencia del Ventoso\";\"main\"\n\"2509947\";\"Valencia de Ventoso\";\"other\"\n\"2509947\";\"Valencia del Barrial\";\"other\"\n\"2509947\";\"Valencia del Mentoso\";\"other\"\n\"2509950\";\"Valencia de Alcántara\";\"main\"\n\"2509950\";\"Valencia de Alcantara\";\"ascii\"\n\"2509950\";\"Valencia del Alcantara\";\"other\"\n\"2509954\";\"Valencia\";\"main\"\n\"2509954\";\"Balenzia\";\"other\"\n\"2509954\";\"Lungsod ng Valencia\";\"other\"\n\"2509954\";\"Lungsod ng València\";\"other\"\n\"2509954\";\"Valence\";\"other\"\n\"2509954\";\"Valencia - Valencia\";\"other\"\n\"2509954\";\"Valencia - València\";\"other\"\n\"2509954\";\"Valencija\";\"other\"\n\"2509954\";\"Valencio\";\"other\"\n\"2509954\";\"Valensia\";\"other\"\n\"2509954\";\"Valensija\";\"other\"\n\"2509954\";\"Valensiya\";\"other\"\n\"2509954\";\"Valentia\";\"other\"\n\"2509954\";\"Valentzia\";\"other\"\n\"2509954\";\"Valenza\";\"other\"\n\"2509954\";\"València\";\"other\"\n\"2509954\";\"Valéncia\";\"other\"\n\"2509954\";\"Valência\";\"other\"\n\"2509954\";\"Walencja\";\"other\"\n\"2509954\";\"ba lun xi ya\";\"other\"\n\"2509954\";\"barenshia\";\"other\"\n\"2509954\";\"blnsyt\";\"other\"\n\"2509954\";\"valensia\";\"other\"\n\"2509954\";\"wlnsyh\";\"other\"\n\"2509954\";\"Валенсия\";\"other\"\n\"2509954\";\"ולנסיה\";\"other\"\n\"2509954\";\"بلنسية\";\"other\"\n\"2509954\";\"ვალენსია\";\"other\"\n\"2509954\";\"バレンシア\";\"other\"\n\"2509954\";\"巴倫西亞\";\"other\"\n\"2509964\";\"Valdetorres\";\"main\"\n\"2509974\";\"Valdés\";\"main\"\n\"2509974\";\"Valdes\";\"ascii\"\n\"2509980\";\"Valdepeñas de Jaén\";\"main\"\n\"2509980\";\"Valdepenas de Jaen\";\"ascii\"\n\"2509980\";\"Valdepenas\";\"other\"\n\"2509980\";\"Valdepeñas\";\"other\"\n\"2509982\";\"Valdepeñas\";\"main\"\n\"2509982\";\"Valdepenas\";\"ascii\"\n\"2509982\";\"Val'depen'jase\";\"other\"\n\"2509982\";\"Yaldepenas\";\"other\"\n\"2509982\";\"Вальдепеньясе\";\"other\"\n\"2510028\";\"Valdeganga\";\"main\"\n\"2510031\";\"Valdefuentes\";\"main\"\n\"2510045\";\"Valdecaballeros\";\"main\"\n\"2510045\";\"Valdecaballero\";\"other\"\n\"2510073\";\"Utrera\";\"main\"\n\"2510073\";\"Утрера\";\"other\"\n\"2510075\";\"Utiel\";\"main\"\n\"2510079\";\"Usagre\";\"main\"\n\"2510083\";\"Urda\";\"main\"\n\"2510098\";\"Umbrete\";\"main\"\n\"2510103\";\"Ugíjar\";\"main\"\n\"2510103\";\"Ugijar\";\"ascii\"\n\"2510112\";\"Ubrique\";\"main\"\n\"2510116\";\"Úbeda\";\"main\"\n\"2510116\";\"Ubeda\";\"ascii\"\n\"2510116\";\"ubeda\";\"other\"\n\"2510116\";\"ウベダ\";\"other\"\n\"2510124\";\"Turre\";\"main\"\n\"2510128\";\"Turís\";\"main\"\n\"2510128\";\"Turis\";\"ascii\"\n\"2510128\";\"Toris\";\"other\"\n\"2510128\";\"Torís\";\"other\"\n\"2510137\";\"Tuineje\";\"main\"\n\"2510140\";\"Tuéjar\";\"main\"\n\"2510140\";\"Tuejar\";\"ascii\"\n\"2510140\";\"Toixa\";\"other\"\n\"2510145\";\"Trujillo\";\"main\"\n\"2510145\";\"toruhiryo\";\"other\"\n\"2510145\";\"トルヒーリョ\";\"other\"\n\"2510147\";\"Trujillanos\";\"main\"\n\"2510165\";\"Trigueros\";\"main\"\n\"2510186\";\"Trebujena\";\"main\"\n\"2510221\";\"Tous\";\"main\"\n\"2510224\";\"Totana\";\"main\"\n\"2510224\";\"Тотана\";\"other\"\n\"2510245\";\"Torrox\";\"main\"\n\"2510249\";\"Torrijos\";\"main\"\n\"2510249\";\"Torrijas\";\"other\"\n\"2510253\";\"Torrevieja\";\"main\"\n\"2510253\";\"Torrev'ekha\";\"other\"\n\"2510253\";\"Torrevella\";\"other\"\n\"2510253\";\"Torrevella de la Mata\";\"other\"\n\"2510253\";\"Торревьеха\";\"other\"\n\"2510266\";\"Torres\";\"main\"\n\"2510270\";\"Torreperogil\";\"main\"\n\"2510271\";\"Torre-Pacheco\";\"main\"\n\"2510271\";\"Torre-Pacheko\";\"other\"\n\"2510271\";\"Торре-Пачеко\";\"other\"\n\"2510272\";\"Torreorgaz\";\"main\"\n\"2510274\";\"Torrenueva\";\"main\"\n\"2510279\";\"Torrent\";\"main\"\n\"2510279\";\"Torrente\";\"other\"\n\"2510281\";\"Torremolinos\";\"main\"\n\"2510281\";\"Toremolinos-Malaga\";\"other\"\n\"2510281\";\"Toremolinos-Málaga\";\"other\"\n\"2510281\";\"Torremolinos-Malaga\";\"other\"\n\"2510281\";\"Torremolinos-Málaga\";\"other\"\n\"2510281\";\"Торремолинос\";\"other\"\n\"2510283\";\"Torremocha\";\"main\"\n\"2510295\";\"Torrejoncillo\";\"main\"\n\"2510301\";\"Torredonjimeno\";\"main\"\n\"2510301\";\"Torredongimeno\";\"other\"\n\"2510306\";\"Torre de Miguel Sesmero\";\"main\"\n\"2510310\";\"Torre del Campo\";\"main\"\n\"2510310\";\"Torre del Compo\";\"other\"\n\"2510314\";\"Torre de Juan Abad\";\"main\"\n\"2510319\";\"Torrecillas de la Tiesa\";\"main\"\n\"2510319\";\"Torrecilla de la Tiesa\";\"other\"\n\"2510328\";\"Torre-Cardela\";\"main\"\n\"2510329\";\"Torrecampo\";\"main\"\n\"2510330\";\"Torreblascopedro\";\"main\"\n\"2510349\";\"Torralba de Calatrava\";\"main\"\n\"2510349\";\"Torralba\";\"other\"\n\"2510392\";\"Tomelloso\";\"main\"\n\"2510392\";\"Tomel'oso\";\"other\"\n\"2510392\";\"Томельосо\";\"other\"\n\"2510394\";\"Tomares\";\"main\"\n\"2510398\";\"Tolox\";\"main\"\n\"2510409\";\"Toledo\";\"main\"\n\"2510409\";\"Tolede\";\"other\"\n\"2510409\";\"Toletum\";\"other\"\n\"2510409\";\"Tolède\";\"other\"\n\"2510409\";\"tlytlt\";\"other\"\n\"2510409\";\"toredo\";\"other\"\n\"2510409\";\"tuo lai duo\";\"other\"\n\"2510409\";\"twldw\";\"other\"\n\"2510409\";\"Толедо\";\"other\"\n\"2510409\";\"טולדו\";\"other\"\n\"2510409\";\"طليطلة\";\"other\"\n\"2510409\";\"トレド\";\"other\"\n\"2510409\";\"托萊多\";\"other\"\n\"2510419\";\"Tocina\";\"main\"\n\"2510426\";\"Tobarra\";\"main\"\n\"2510455\";\"Tinajo\";\"main\"\n\"2510463\";\"Tíjola\";\"main\"\n\"2510463\";\"Tijola\";\"ascii\"\n\"2510468\";\"Tijarafe\";\"main\"\n\"2510468\";\"Tirajafe\";\"other\"\n\"2510484\";\"Tibi\";\"main\"\n\"2510484\";\"Maigmo\";\"other\"\n\"2510485\";\"Tías\";\"main\"\n\"2510485\";\"Tias\";\"ascii\"\n\"2510488\";\"Teulada\";\"main\"\n\"2510497\";\"Terrinches\";\"main\"\n\"2510508\";\"Teror\";\"main\"\n\"2510540\";\"Tembleque\";\"main\"\n\"2510542\";\"Telde\";\"main\"\n\"2510542\";\"Tel'de\";\"other\"\n\"2510542\";\"Тельде\";\"other\"\n\"2510558\";\"Tejeda\";\"main\"\n\"2510558\";\"Tejada\";\"other\"\n\"2510573\";\"Teguise\";\"main\"\n\"2510574\";\"Tegueste\";\"main\"\n\"2510580\";\"Teba\";\"main\"\n\"2510582\";\"Tazacorte\";\"main\"\n\"2510599\";\"Tarifa\";\"main\"\n\"2510599\";\"Тарифа\";\"other\"\n\"2510602\";\"Tarazona de la Mancha\";\"main\"\n\"2510602\";\"Tarazona\";\"other\"\n\"2510621\";\"Tanque\";\"main\"\n\"2510689\";\"Talayuela\";\"main\"\n\"2510692\";\"Talavera la Real\";\"main\"\n\"2510693\";\"Talavera de la Reina\";\"main\"\n\"2510693\";\"Talavera del Tajo\";\"other\"\n\"2510700\";\"Talarrubias\";\"main\"\n\"2510700\";\"Talarrubia\";\"other\"\n\"2510725\";\"Tacoronte\";\"main\"\n\"2510743\";\"Tavernes de la Valldigna\";\"main\"\n\"2510743\";\"Tabernas\";\"other\"\n\"2510743\";\"Tabernes de Valldigna\";\"other\"\n\"2510744\";\"Tavernes Blanques\";\"main\"\n\"2510744\";\"Tabernes\";\"other\"\n\"2510744\";\"Tabernes Blanques\";\"other\"\n\"2510746\";\"Tabernas\";\"main\"\n\"2510758\";\"Sumacàrcer\";\"main\"\n\"2510758\";\"Sumacarcer\";\"ascii\"\n\"2510758\";\"Sumacarcel\";\"other\"\n\"2510758\";\"Sumacárcel\";\"other\"\n\"2510764\";\"Sueca\";\"main\"\n\"2510787\";\"Sorihuela del Guadalimar\";\"main\"\n\"2510793\";\"Sorbas\";\"main\"\n\"2510799\";\"Son Servera\";\"main\"\n\"2510801\";\"Sonseca\";\"main\"\n\"2510801\";\"Sonseca con Casalgordo\";\"other\"\n\"2510809\";\"Soneja\";\"main\"\n\"2510809\";\"Soneixa\";\"other\"\n\"2510821\";\"Sóller\";\"main\"\n\"2510821\";\"Soller\";\"ascii\"\n\"2510822\";\"Sollana\";\"main\"\n\"2510839\";\"Solana de los Barros\";\"main\"\n\"2510839\";\"Solana\";\"other\"\n\"2510852\";\"Socuéllamos\";\"main\"\n\"2510852\";\"Socuellamos\";\"ascii\"\n\"2510853\";\"Socovos\";\"main\"\n\"2510861\";\"Sisante\";\"main\"\n\"2510864\";\"Siruela\";\"main\"\n\"2510868\";\"Sineu\";\"main\"\n\"2510869\";\"Sinarcas\";\"main\"\n\"2510869\";\"Sinarques\";\"other\"\n\"2510870\";\"Simat de la Valldigna\";\"main\"\n\"2510870\";\"Simat de Valldigna\";\"other\"\n\"2510880\";\"Silla\";\"main\"\n\"2510889\";\"Siete Aguas\";\"main\"\n\"2510889\";\"Setaiguees\";\"other\"\n\"2510889\";\"Setaigües\";\"other\"\n\"2510895\";\"Sierra de Yeguas\";\"main\"\n\"2510896\";\"Sierra de Fuentes\";\"main\"\n\"2510911\";\"Sevilla\";\"main\"\n\"2510911\";\"Hispalis\";\"other\"\n\"2510911\";\"Lungsod ng Sevilla\";\"other\"\n\"2510911\";\"Sebilla\";\"other\"\n\"2510911\";\"Sebille\";\"other\"\n\"2510911\";\"Sevil'ja\";\"other\"\n\"2510911\";\"Sevila\";\"other\"\n\"2510911\";\"Sevilha\";\"other\"\n\"2510911\";\"Sevilia\";\"other\"\n\"2510911\";\"Sevilija\";\"other\"\n\"2510911\";\"Sevilja\";\"other\"\n\"2510911\";\"Seville\";\"other\"\n\"2510911\";\"Sevilo\";\"other\"\n\"2510911\";\"Seviya\";\"other\"\n\"2510911\";\"Seviļa\";\"other\"\n\"2510911\";\"Sewilla\";\"other\"\n\"2510911\";\"Siviglia\";\"other\"\n\"2510911\";\"Séville\";\"other\"\n\"2510911\";\"ashbylyt\";\"other\"\n\"2510911\";\"sai wei li ya\";\"other\"\n\"2510911\";\"sbylyh\";\"other\"\n\"2510911\";\"se will\";\"other\"\n\"2510911\";\"sebirya\";\"other\"\n\"2510911\";\"sebirya shi\";\"other\"\n\"2510911\";\"sebiya\";\"other\"\n\"2510911\";\"sevilia\";\"other\"\n\"2510911\";\"Σεβίλλη\";\"other\"\n\"2510911\";\"Севилья\";\"other\"\n\"2510911\";\"Севиля\";\"other\"\n\"2510911\";\"Севиља\";\"other\"\n\"2510911\";\"Сэвільля\";\"other\"\n\"2510911\";\"סביליה\";\"other\"\n\"2510911\";\"إشبيلية\";\"other\"\n\"2510911\";\"اشبیلیہ\";\"other\"\n\"2510911\";\"เซวิลล์\";\"other\"\n\"2510911\";\"სევილია\";\"other\"\n\"2510911\";\"セビリャ\";\"other\"\n\"2510911\";\"セビリャ市\";\"other\"\n\"2510911\";\"塞維利亞\";\"other\"\n\"2510911\";\"세비야\";\"other\"\n\"2510915\";\"Setenil de las Bodegas\";\"main\"\n\"2510915\";\"Setenil\";\"other\"\n\"2510919\";\"Ses Salines\";\"main\"\n\"2510919\";\"les Salines\";\"other\"\n\"2510919\";\"ses Salines\";\"other\"\n\"2510936\";\"Serradilla\";\"main\"\n\"2510940\";\"Serra\";\"main\"\n\"2510944\";\"Serón\";\"main\"\n\"2510944\";\"Seron\";\"ascii\"\n\"2510957\";\"Senyera\";\"main\"\n\"2510957\";\"Senera\";\"other\"\n\"2510957\";\"Señera\";\"other\"\n\"2510961\";\"Selva\";\"main\"\n\"2510967\";\"Segura de León\";\"main\"\n\"2510967\";\"Segura de Leon\";\"ascii\"\n\"2510968\";\"Segura de la Sierra\";\"main\"\n\"2510972\";\"Segorbe\";\"main\"\n\"2510972\";\"Sogorb\";\"other\"\n\"2510975\";\"Sedaví\";\"main\"\n\"2510975\";\"Sedavi\";\"ascii\"\n\"2511009\";\"Sayalonga\";\"main\"\n\"2511010\";\"Sax\";\"main\"\n\"2511012\";\"Sauzal\";\"main\"\n\"2511012\";\"El Sauzal\";\"other\"\n\"2511032\";\"San Vicente del Raspeig\";\"main\"\n\"2511032\";\"Sant Vicent del Raspeig\";\"other\"\n\"2511038\";\"Santo Tomé\";\"main\"\n\"2511038\";\"Santo Tome\";\"ascii\"\n\"2511050\";\"Santomera\";\"main\"\n\"2511063\";\"Santisteban del Puerto\";\"main\"\n\"2511064\";\"Santiponce\";\"main\"\n\"2511070\";\"Santiago del Teide\";\"main\"\n\"2511070\";\"Santiago\";\"other\"\n\"2511070\";\"Santiago del Teyde\";\"other\"\n\"2511091\";\"Santa Úrsula\";\"main\"\n\"2511091\";\"Santa Ursula\";\"ascii\"\n\"2511102\";\"Santa Pola\";\"main\"\n\"2511102\";\"Santa-Pola\";\"other\"\n\"2511102\";\"Санта-Пола\";\"other\"\n\"2511106\";\"Santanyí\";\"main\"\n\"2511106\";\"Santanyi\";\"ascii\"\n\"2511112\";\"Santa Marta\";\"main\"\n\"2511143\";\"Santa Margalida\";\"main\"\n\"2511143\";\"Santa Margarita\";\"other\"\n\"2511150\";\"Santa Lucía\";\"main\"\n\"2511150\";\"Santa Lucia\";\"ascii\"\n\"2511150\";\"Santa Lucia de Tirajana\";\"other\"\n\"2511150\";\"Santa Lucía de Tirajana\";\"other\"\n\"2511162\";\"Santa Eulària des Riu\";\"main\"\n\"2511162\";\"Santa Eularia des Riu\";\"ascii\"\n\"2511162\";\"Santa Eulalia del Rio\";\"other\"\n\"2511162\";\"Santa Eulalia del Río\";\"other\"\n\"2511162\";\"Santa Eularia del Riu\";\"other\"\n\"2511162\";\"Santa Eulària del Riu\";\"other\"\n\"2511166\";\"Santa Eugènia\";\"main\"\n\"2511166\";\"Santa Eugenia\";\"ascii\"\n\"2511167\";\"Santa Eufemia\";\"main\"\n\"2511170\";\"Santaella\";\"main\"\n\"2511174\";\"Santa Cruz de Tenerife\";\"main\"\n\"2511174\";\"Santa Cruz\";\"other\"\n\"2511174\";\"Santa Cruz de Ténérife\";\"other\"\n\"2511174\";\"Santa-Krus-de-Tenerife\";\"other\"\n\"2511174\";\"Tenerife\";\"other\"\n\"2511174\";\"Teneriffa\";\"other\"\n\"2511174\";\"Санта-Крус-де-Тенерифе\";\"other\"\n\"2511174\";\"サンタ・クルス・デ・テネリフェ\";\"other\"\n\"2511175\";\"Santa Cruz de Mudela\";\"main\"\n\"2511178\";\"Santa Cruz de la Zarza\";\"main\"\n\"2511178\";\"Santa Cruz de la Zaraza\";\"other\"\n\"2511180\";\"Santa Cruz de la Palma\";\"main\"\n\"2511180\";\"Santa Cruz de La Palma\";\"other\"\n\"2511202\";\"Santa Brígida\";\"main\"\n\"2511202\";\"Santa Brigida\";\"ascii\"\n\"2511222\";\"Santa Amalia\";\"main\"\n\"2511230\";\"San Sebastián de la Gomera\";\"main\"\n\"2511230\";\"San Sebastian de la Gomera\";\"ascii\"\n\"2511230\";\"San Sebastian\";\"other\"\n\"2511230\";\"San Sebastian de La Gomera\";\"other\"\n\"2511230\";\"San Sebastián de La Gomera\";\"other\"\n\"2511239\";\"San Roque\";\"main\"\n\"2511247\";\"San Pedro del Pinatar\";\"main\"\n\"2511247\";\"San Pedro del Pintar\";\"other\"\n\"2511265\";\"San Pedro\";\"main\"\n\"2511275\";\"San Nicolás\";\"main\"\n\"2511275\";\"San Nicolas\";\"ascii\"\n\"2511275\";\"Aldea de San Nicolas\";\"other\"\n\"2511277\";\"San Miguel de Salinas\";\"main\"\n\"2511277\";\"San Miguehl'\";\"other\"\n\"2511277\";\"San Miguel\";\"other\"\n\"2511277\";\"Sant Miquel de Salines\";\"other\"\n\"2511277\";\"Сан Мигуэль\";\"other\"\n\"2511287\";\"San Miguel\";\"main\"\n\"2511302\";\"Sant Lluís\";\"main\"\n\"2511302\";\"Sant Lluis\";\"ascii\"\n\"2511304\";\"Sanlúcar la Mayor\";\"main\"\n\"2511304\";\"Sanlucar la Mayor\";\"ascii\"\n\"2511306\";\"Sanlúcar de Barrameda\";\"main\"\n\"2511306\";\"Sanlucar de Barrameda\";\"ascii\"\n\"2511306\";\"Sanlukar-de-Barrameda\";\"other\"\n\"2511306\";\"Sunlucar de Barrameda\";\"other\"\n\"2511306\";\"Санлукар-де-Баррамеда\";\"other\"\n\"2511308\";\"San Lorenzo de la Parrilla\";\"main\"\n\"2511308\";\"San Lorenzo de la Parilla\";\"other\"\n\"2511326\";\"San Juan del Puerto\";\"main\"\n\"2511326\";\"Juan del Puerto\";\"other\"\n\"2511326\";\"San Juan\";\"other\"\n\"2511327\";\"San Juan de la Rambla\";\"main\"\n\"2511327\";\"Juan de Rambla\";\"other\"\n\"2511327\";\"San Juan de Rambla\";\"other\"\n\"2511329\";\"San Juan de Aznalfarache\";\"main\"\n\"2511330\";\"San Juan de Alicante\";\"main\"\n\"2511330\";\"Sant Joan d'Alacant\";\"other\"\n\"2511331\";\"Sant Joan de Labritja\";\"main\"\n\"2511331\";\"San Juan\";\"other\"\n\"2511331\";\"San Juan Bautista\";\"other\"\n\"2511352\";\"Sant Josep de sa Talaia\";\"main\"\n\"2511352\";\"San Jose de la Atalaya\";\"other\"\n\"2511366\";\"San Javier\";\"main\"\n\"2511381\";\"Sant Francesc de Formentera\";\"main\"\n\"2511381\";\"San Francisco\";\"other\"\n\"2511381\";\"San Francisco Javier\";\"other\"\n\"2511381\";\"Sant Francesc\";\"other\"\n\"2511388\";\"San Fernando\";\"main\"\n\"2511388\";\"San Fernanando\";\"other\"\n\"2511388\";\"San-Fernando\";\"other\"\n\"2511401\";\"La Laguna\";\"main\"\n\"2511401\";\"La-Laguna\";\"other\"\n\"2511401\";\"San Cristobal de La Laguna\";\"other\"\n\"2511401\";\"San Cristóbal de La Laguna\";\"other\"\n\"2511401\";\"Ла-Лагуна\";\"other\"\n\"2511411\";\"San Clemente\";\"main\"\n\"2511420\";\"Sencelles\";\"main\"\n\"2511423\";\"San Carlos del Valle\";\"main\"\n\"2511440\";\"San Bartolomé\";\"main\"\n\"2511440\";\"San Bartolome\";\"ascii\"\n\"2511440\";\"San Bartolome Tirajana\";\"other\"\n\"2511440\";\"San Bartolome de Tirajana\";\"other\"\n\"2511440\";\"San Bartolomé Tirajana\";\"other\"\n\"2511440\";\"San Bartolomé de Tirajana\";\"other\"\n\"2511441\";\"San Bartolomé de la Torre\";\"main\"\n\"2511441\";\"San Bartolome de la Torre\";\"ascii\"\n\"2511447\";\"San Bartolomé\";\"main\"\n\"2511447\";\"San Bartolome\";\"ascii\"\n\"2511447\";\"San - Bartolome\";\"other\"\n\"2511447\";\"Сан - Бартоломе\";\"other\"\n\"2511448\";\"Sant Antoni de Portmany\";\"main\"\n\"2511448\";\"San Antonio\";\"other\"\n\"2511448\";\"Sant Antoni\";\"other\"\n\"2511475\";\"Salvatierra de los Barros\";\"main\"\n\"2511475\";\"Salvatierra\";\"other\"\n\"2511477\";\"Salvaleón\";\"main\"\n\"2511477\";\"Salvaleon\";\"ascii\"\n\"2511495\";\"Salteras\";\"main\"\n\"2511503\";\"Salobreña\";\"main\"\n\"2511503\";\"Salobrena\";\"ascii\"\n\"2511535\";\"Salinas\";\"main\"\n\"2511551\";\"Salar\";\"main\"\n\"2511619\";\"Sagunto\";\"main\"\n\"2511619\";\"Morvedre\";\"other\"\n\"2511619\";\"Sagonte\";\"other\"\n\"2511619\";\"Sagunt\";\"other\"\n\"2511619\";\"Saguntum\";\"other\"\n\"2511619\";\"sgwntwm\";\"other\"\n\"2511619\";\"Сагунто\";\"other\"\n\"2511619\";\"סגונטום\";\"other\"\n\"2511633\";\"Sabiote\";\"main\"\n\"2511649\";\"Rute\";\"main\"\n\"2511649\";\"Rute foersamling\";\"other\"\n\"2511649\";\"Rute församling\";\"other\"\n\"2511651\";\"Rus\";\"main\"\n\"2511695\";\"Rótova\";\"main\"\n\"2511695\";\"Rotova\";\"ascii\"\n\"2511695\";\"Ròtova\";\"other\"\n\"2511697\";\"Rotglá y Corbera\";\"main\"\n\"2511697\";\"Rotgla y Corbera\";\"ascii\"\n\"2511700\";\"Rota\";\"main\"\n\"2511700\";\"Рота\";\"other\"\n\"2511704\";\"Rosalejo\";\"main\"\n\"2511704\";\"Caserio Rosalejo\";\"other\"\n\"2511704\";\"Caserío Rosalejo\";\"other\"\n\"2511716\";\"Roquetas de Mar\";\"main\"\n\"2511716\";\"Roketas-de-Mar\";\"other\"\n\"2511716\";\"Roquetas\";\"other\"\n\"2511716\";\"Рокетас-де-Мар\";\"other\"\n\"2511730\";\"Ronda\";\"main\"\n\"2511730\";\"Ронда\";\"other\"\n\"2511752\";\"Rojales\";\"main\"\n\"2511752\";\"Rojals\";\"other\"\n\"2511771\";\"Rocafort\";\"main\"\n\"2511818\";\"Riópar\";\"main\"\n\"2511818\";\"Riopar\";\"ascii\"\n\"2511822\";\"Ríolobos\";\"main\"\n\"2511822\";\"Riolobos\";\"ascii\"\n\"2511823\";\"Riola\";\"main\"\n\"2511824\";\"Rioja\";\"main\"\n\"2511825\";\"Ríogordo\";\"main\"\n\"2511825\";\"Riogordo\";\"ascii\"\n\"2511852\";\"Rincón de la Victoria\";\"main\"\n\"2511852\";\"Rincon de la Victoria\";\"ascii\"\n\"2511852\";\"Rinkon-de-la-Viktorija\";\"other\"\n\"2511852\";\"Ринкон-де-ла-Виктория\";\"other\"\n\"2511869\";\"Ricote\";\"main\"\n\"2511873\";\"Ribera del Fresno\";\"main\"\n\"2511880\";\"Ribarroja\";\"main\"\n\"2511905\";\"Retuerta de Bullaque\";\"main\"\n\"2511905\";\"Retuerta\";\"other\"\n\"2511905\";\"Returta\";\"other\"\n\"2511930\";\"Requena\";\"main\"\n\"2511969\";\"Redován\";\"main\"\n\"2511969\";\"Redovan\";\"ascii\"\n\"2511969\";\"Redova\";\"other\"\n\"2511969\";\"Redovà\";\"other\"\n\"2511994\";\"Realejo Alto\";\"main\"\n\"2511996\";\"Real de Montroi\";\"main\"\n\"2511996\";\"Real de Montroy\";\"other\"\n\"2511998\";\"Real de Gandía\";\"main\"\n\"2511998\";\"Real de Gandia\";\"ascii\"\n\"2512071\";\"Rafelguaraf\";\"main\"\n\"2512072\";\"Rafelcofer\";\"main\"\n\"2512075\";\"Rafal\";\"main\"\n\"2512095\";\"Quintanar del Rey\";\"main\"\n\"2512096\";\"Quintanar de la Orden\";\"main\"\n\"2512096\";\"Quintanar la Orden\";\"other\"\n\"2512099\";\"Quintana de la Serena\";\"main\"\n\"2512107\";\"Quesada\";\"main\"\n\"2512109\";\"Quero\";\"main\"\n\"2512110\";\"Quéntar\";\"main\"\n\"2512110\";\"Quentar\";\"ascii\"\n\"2512127\";\"Puçol\";\"main\"\n\"2512127\";\"Pucol\";\"ascii\"\n\"2512127\";\"Puzol\";\"other\"\n\"2512131\";\"Purullena\";\"main\"\n\"2512131\";\"Parullena\";\"other\"\n\"2512133\";\"Purchena\";\"main\"\n\"2512138\";\"Puntallana\";\"main\"\n\"2512138\";\"San Juan de Puntallana\";\"other\"\n\"2512144\";\"Puntagorda\";\"main\"\n\"2512152\";\"Pulpí\";\"main\"\n\"2512152\";\"Pulpi\";\"ascii\"\n\"2512155\";\"Pulianas\";\"main\"\n\"2512156\";\"Pulgar\";\"main\"\n\"2512160\";\"Puigpunyent\";\"main\"\n\"2512162\";\"Puig\";\"main\"\n\"2512162\";\"El Puche\";\"other\"\n\"2512162\";\"El Puig\";\"other\"\n\"2512162\";\"Puig de Santa Maria\";\"other\"\n\"2512162\";\"Puig de Santa María\";\"other\"\n\"2512164\";\"Puerto Serrano\";\"main\"\n\"2512169\";\"Puerto Real\";\"main\"\n\"2512169\";\"Puehrto-Real'\";\"other\"\n\"2512169\";\"Пуэрто-Реаль\";\"other\"\n\"2512177\";\"Puertollano\";\"main\"\n\"2512177\";\"Puehrtol'jano\";\"other\"\n\"2512177\";\"Пуэртольяно\";\"other\"\n\"2512178\";\"Puerto Lápice\";\"main\"\n\"2512178\";\"Puerto Lapice\";\"ascii\"\n\"2512186\";\"Puerto del Rosario\";\"main\"\n\"2512186\";\"Puehrto-del'-Rosario\";\"other\"\n\"2512186\";\"Puerto Cabras\";\"other\"\n\"2512186\";\"Puerto Rosario\";\"other\"\n\"2512186\";\"Puerto de Cabras\";\"other\"\n\"2512186\";\"Пуэрто-дель-Росарио\";\"other\"\n\"2512196\";\"Puerto de la Cruz\";\"main\"\n\"2512232\";\"Puente-Genil\";\"main\"\n\"2512238\";\"Puente de Génave\";\"main\"\n\"2512238\";\"Puente de Genave\";\"ascii\"\n\"2512238\";\"Puente-Genave\";\"other\"\n\"2512238\";\"Puente-Génave\";\"other\"\n\"2512250\";\"La Pobla Llarga\";\"main\"\n\"2512250\";\"Puebla Larga\";\"other\"\n\"2512251\";\"La Pobla de Vallbona\";\"main\"\n\"2512251\";\"Puebla de Vallbona\";\"other\"\n\"2512253\";\"Puebla de Sancho Pérez\";\"main\"\n\"2512253\";\"Puebla de Sancho Perez\";\"ascii\"\n\"2512253\";\"La Puebla\";\"other\"\n\"2512255\";\"Puebla de Obando\";\"main\"\n\"2512263\";\"Puebla de la Calzada\";\"main\"\n\"2512264\";\"Puebla de Guzmán\";\"main\"\n\"2512264\";\"Puebla de Guzman\";\"ascii\"\n\"2512266\";\"Puebla de Don Rodrigo\";\"main\"\n\"2512269\";\"Puebla de Alcocer\";\"main\"\n\"2512272\";\"Pruna\";\"main\"\n\"2512272\";\"Porcuna\";\"other\"\n\"2512282\";\"Priego de Córdoba\";\"main\"\n\"2512282\";\"Priego de Cordoba\";\"ascii\"\n\"2512282\";\"Priego\";\"other\"\n\"2512294\";\"Prado del Rey\";\"main\"\n\"2512305\";\"Pozuelo de Calatrava\";\"main\"\n\"2512319\";\"Pozohondo\";\"main\"\n\"2512337\";\"Pozo-Cañada\";\"main\"\n\"2512337\";\"Pozo-Canada\";\"ascii\"\n\"2512340\";\"Pozoblanco\";\"main\"\n\"2512343\";\"Pozo Alcón\";\"main\"\n\"2512343\";\"Pozo Alcon\";\"ascii\"\n\"2512343\";\"Pozo Alcor\";\"other\"\n\"2512367\";\"Posadas\";\"main\"\n\"2512369\";\"Porzuna\";\"main\"\n\"2512398\";\"Porreres\";\"main\"\n\"2512398\";\"Porreras\";\"other\"\n\"2512408\";\"Porcuna\";\"main\"\n\"2512423\";\"Polopos\";\"main\"\n\"2512427\";\"Polop\";\"main\"\n\"2512432\";\"Pollença\";\"main\"\n\"2512432\";\"Pollenca\";\"ascii\"\n\"2512432\";\"Pollensa\";\"other\"\n\"2512433\";\"Polinyà de Xúquer\";\"main\"\n\"2512433\";\"Polinya de Xuquer\";\"ascii\"\n\"2512433\";\"Polina\";\"other\"\n\"2512433\";\"Polina de Jucar\";\"other\"\n\"2512433\";\"Polina del Jucar\";\"other\"\n\"2512433\";\"Poliña\";\"other\"\n\"2512433\";\"Poliña de Júcar\";\"other\"\n\"2512433\";\"Poliñá de Júcar\";\"other\"\n\"2512433\";\"Poliñá del Júcar\";\"other\"\n\"2512437\";\"Polán\";\"main\"\n\"2512437\";\"Polan\";\"ascii\"\n\"2512458\";\"Pliego\";\"main\"\n\"2512490\";\"Pizarra\";\"main\"\n\"2512490\";\"Pizarro\";\"other\"\n\"2512509\";\"Pinos Puente\";\"main\"\n\"2512510\";\"Pinoso\";\"main\"\n\"2512510\";\"El Pinos\";\"other\"\n\"2512510\";\"El Pinós\";\"other\"\n\"2512511\";\"Pinos Genil\";\"main\"\n\"2512558\";\"Piñar\";\"main\"\n\"2512558\";\"Pinar\";\"ascii\"\n\"2512571\";\"Piles\";\"main\"\n\"2512578\";\"Pilas\";\"main\"\n\"2512581\";\"Pilar de la Horadada\";\"main\"\n\"2512581\";\"El Pilar de Horadada\";\"other\"\n\"2512609\";\"Piedrabuena\";\"main\"\n\"2512620\";\"Picassent\";\"main\"\n\"2512620\";\"Picasent\";\"other\"\n\"2512624\";\"Picanya\";\"main\"\n\"2512624\";\"Picana\";\"other\"\n\"2512624\";\"Picaña\";\"other\"\n\"2512638\";\"Petra\";\"main\"\n\"2512638\";\"Петра\";\"other\"\n\"2512660\";\"Periana\";\"main\"\n\"2512691\";\"Peraleda de la Mata\";\"main\"\n\"2512691\";\"Peraleda\";\"other\"\n\"2512715\";\"Peñas de San Pedro\";\"main\"\n\"2512715\";\"Penas de San Pedro\";\"ascii\"\n\"2512730\";\"Peñarroya-Pueblonuevo\";\"main\"\n\"2512730\";\"Penarroya-Pueblonuevo\";\"ascii\"\n\"2512730\";\"Pueblonuevo del Terrible\";\"other\"\n\"2512737\";\"Peñalsordo\";\"main\"\n\"2512737\";\"Penalsordo\";\"ascii\"\n\"2512746\";\"Peñaflor\";\"main\"\n\"2512746\";\"Penaflor\";\"ascii\"\n\"2512767\";\"Peligros\";\"main\"\n\"2512784\";\"Pegalajar\";\"main\"\n\"2512784\";\"Pegalapar\";\"other\"\n\"2512794\";\"Pedro Muñoz\";\"main\"\n\"2512794\";\"Pedro Munoz\";\"ascii\"\n\"2512796\";\"Pedro Martínez\";\"main\"\n\"2512796\";\"Pedro Martinez\";\"ascii\"\n\"2512805\";\"Pedroche\";\"main\"\n\"2512812\";\"Pedro Abad\";\"main\"\n\"2512824\";\"Pedrera\";\"main\"\n\"2512825\";\"Pedreguer\";\"main\"\n\"2512825\";\"Medreguer\";\"other\"\n\"2512837\";\"Pedralba\";\"main\"\n\"2512837\";\"Pedralva\";\"other\"\n\"2512844\";\"Peal de Becerro\";\"main\"\n\"2512846\";\"Paymogo\";\"main\"\n\"2512857\";\"Paterna de Rivera\";\"main\"\n\"2512857\";\"Paterna de la Rivera\";\"other\"\n\"2512860\";\"Paterna del Campo\";\"main\"\n\"2512860\";\"Paterna del Camino\";\"other\"\n\"2512862\";\"Paterna\";\"main\"\n\"2512862\";\"Патерна\";\"other\"\n\"2512933\";\"Paradas\";\"main\"\n\"2512950\";\"Palos de la Frontera\";\"main\"\n\"2512950\";\"Palos\";\"other\"\n\"2512964\";\"Palomares del Río\";\"main\"\n\"2512964\";\"Palomares del Rio\";\"ascii\"\n\"2512964\";\"Palomares\";\"other\"\n\"2512989\";\"Palma\";\"main\"\n\"2512989\";\"Ciutat de Mallorca\";\"other\"\n\"2512989\";\"Madina Mayurqa\";\"other\"\n\"2512989\";\"Pal'ma-de-Majorka\";\"other\"\n\"2512989\";\"Palma de Maiorca\";\"other\"\n\"2512989\";\"Palma de Majorque\";\"other\"\n\"2512989\";\"Palma de Malhorca\";\"other\"\n\"2512989\";\"Palma de Malhòrca\";\"other\"\n\"2512989\";\"Palma de Mallorca\";\"other\"\n\"2512989\";\"Palma di Majorca\";\"other\"\n\"2512989\";\"balma dy maywrka\";\"other\"\n\"2512989\";\"pa er ma\";\"other\"\n\"2512989\";\"palmademayoleuka\";\"other\"\n\"2512989\";\"plmh dh mywrqh\";\"other\"\n\"2512989\";\"Пальма-де-Майорка\";\"other\"\n\"2512989\";\"פלמה דה מיורקה\";\"other\"\n\"2512989\";\"بالما دي مايوركا\";\"other\"\n\"2512989\";\"パルマ・デ・マリョルカ\";\"other\"\n\"2512989\";\"帕爾馬\";\"other\"\n\"2512989\";\"팔마데마요르카\";\"other\"\n\"2512990\";\"Palma del Río\";\"main\"\n\"2512990\";\"Palma del Rio\";\"ascii\"\n\"2512990\";\"Pal'ma-del'-Rio\";\"other\"\n\"2512990\";\"Пальма-дель-Рио\";\"other\"\n\"2512991\";\"Palma de Gandía\";\"main\"\n\"2512991\";\"Palma de Gandia\";\"ascii\"\n\"2512998\";\"Palenciana\";\"main\"\n\"2513026\";\"Pájara\";\"main\"\n\"2513026\";\"Pajara\";\"ascii\"\n\"2513029\";\"Paiporta\";\"main\"\n\"2513029\";\"Pajporta\";\"other\"\n\"2513029\";\"Пайпорта\";\"other\"\n\"2513035\";\"Padul\";\"main\"\n\"2513045\";\"Otura\";\"main\"\n\"2513049\";\"Otívar\";\"main\"\n\"2513049\";\"Otivar\";\"ascii\"\n\"2513052\";\"Osuna\";\"main\"\n\"2513053\";\"Ossa de Montiel\";\"main\"\n\"2513053\";\"Osa de Montiel\";\"other\"\n\"2513069\";\"Oropesa\";\"main\"\n\"2513069\";\"Oropesa y Corchueta\";\"other\"\n\"2513069\";\"Oropesay Corchuela\";\"other\"\n\"2513073\";\"Órjiva\";\"main\"\n\"2513073\";\"Orjiva\";\"ascii\"\n\"2513073\";\"Orgiva\";\"other\"\n\"2513073\";\"Órgiva\";\"other\"\n\"2513076\";\"Orihuela\";\"main\"\n\"2513076\";\"Aurariola\";\"other\"\n\"2513076\";\"Oriola\";\"other\"\n\"2513076\";\"Oriuehla\";\"other\"\n\"2513076\";\"Ориуэла\";\"other\"\n\"2513079\";\"Oria\";\"main\"\n\"2513081\";\"Orgaz\";\"main\"\n\"2513084\";\"Orellana la Vieja\";\"main\"\n\"2513092\";\"Orcheta\";\"main\"\n\"2513092\";\"Orxeta\";\"other\"\n\"2513094\";\"Orcera\";\"main\"\n\"2513097\";\"Orce\";\"main\"\n\"2513098\";\"Orba\";\"main\"\n\"2513103\";\"Ontur\";\"main\"\n\"2513103\";\"Ontar\";\"other\"\n\"2513104\";\"Ontígola\";\"main\"\n\"2513104\";\"Ontigola\";\"ascii\"\n\"2513106\";\"Ontinyent\";\"main\"\n\"2513106\";\"Onten'ente\";\"other\"\n\"2513106\";\"Onteniente\";\"other\"\n\"2513106\";\"Онтеньенте\";\"other\"\n\"2513113\";\"Onil\";\"main\"\n\"2513114\";\"Ondara\";\"main\"\n\"2513115\";\"Onda\";\"main\"\n\"2513115\";\"Онда\";\"other\"\n\"2513120\";\"Olvera\";\"main\"\n\"2513121\";\"Olula del Río\";\"main\"\n\"2513121\";\"Olula del Rio\";\"ascii\"\n\"2513121\";\"Olula\";\"other\"\n\"2513124\";\"Olocau\";\"main\"\n\"2513130\";\"L'Olleria\";\"main\"\n\"2513130\";\"Olleria\";\"other\"\n\"2513130\";\"Ollería\";\"other\"\n\"2513140\";\"Olivares\";\"main\"\n\"2513142\";\"Oliva de Mérida\";\"main\"\n\"2513142\";\"Oliva de Merida\";\"ascii\"\n\"2513143\";\"Oliva de la Frontera\";\"main\"\n\"2513143\";\"Oliva de Frontera\";\"other\"\n\"2513143\";\"Oliva de Jerez\";\"other\"\n\"2513145\";\"Oliva\";\"main\"\n\"2513145\";\"Олива\";\"other\"\n\"2513146\";\"Olías del Rey\";\"main\"\n\"2513146\";\"Olias del Rey\";\"ascii\"\n\"2513163\";\"Ojén\";\"main\"\n\"2513163\";\"Ojen\";\"ascii\"\n\"2513167\";\"Ogíjares\";\"main\"\n\"2513167\";\"Ogijares\";\"ascii\"\n\"2513175\";\"Ocaña\";\"main\"\n\"2513175\";\"Ocana\";\"ascii\"\n\"2513179\";\"Obejo\";\"main\"\n\"2513179\";\"Ovejo\";\"other\"\n\"2513180\";\"Nules\";\"main\"\n\"2513184\";\"Nueva-Carteya\";\"main\"\n\"2513195\";\"Novelda\";\"main\"\n\"2513195\";\"Novel'da\";\"other\"\n\"2513195\";\"Новельда\";\"other\"\n\"2513216\";\"Noblejas\";\"main\"\n\"2513217\";\"Noalejo\";\"main\"\n\"2513222\";\"Níjar\";\"main\"\n\"2513222\";\"Nijar\";\"ascii\"\n\"2513222\";\"Nikhar\";\"other\"\n\"2513222\";\"Нихар\";\"other\"\n\"2513230\";\"Niebla\";\"main\"\n\"2513237\";\"Nerva\";\"main\"\n\"2513238\";\"Nerpio\";\"main\"\n\"2513240\";\"Nerja\";\"main\"\n\"2513298\";\"Navas del Madroño\";\"main\"\n\"2513298\";\"Navas del Madrono\";\"ascii\"\n\"2513298\";\"Navas del Modrono\";\"other\"\n\"2513306\";\"Navarrés\";\"main\"\n\"2513306\";\"Navarres\";\"ascii\"\n\"2513313\";\"Navalvillar de Pela\";\"main\"\n\"2513324\";\"Navalmoral de la Mata\";\"main\"\n\"2513324\";\"Navalmoral\";\"other\"\n\"2513324\";\"Navalmoral de la Mota\";\"other\"\n\"2513346\";\"Navahermosa\";\"main\"\n\"2513375\";\"Náquera\";\"main\"\n\"2513375\";\"Naquera\";\"ascii\"\n\"2513375\";\"Nàquera\";\"other\"\n\"2513384\";\"Nambroca\";\"main\"\n\"2513395\";\"Museros\";\"main\"\n\"2513403\";\"Muro del Alcoy\";\"main\"\n\"2513403\";\"Muro\";\"other\"\n\"2513403\";\"Muro de Alcoy\";\"other\"\n\"2513406\";\"Muro\";\"main\"\n\"2513416\";\"Murcia\";\"main\"\n\"2513416\";\"Ciutat de Murcia\";\"other\"\n\"2513416\";\"Ciutat de Múrcia\";\"other\"\n\"2513416\";\"Murcie\";\"other\"\n\"2513416\";\"Murcio\";\"other\"\n\"2513416\";\"Murcja\";\"other\"\n\"2513416\";\"Mursia\";\"other\"\n\"2513416\";\"Mursija\";\"other\"\n\"2513416\";\"Múrcia\";\"other\"\n\"2513416\";\"mrsyt\";\"other\"\n\"2513416\";\"mu er xi ya\";\"other\"\n\"2513416\";\"murushia\";\"other\"\n\"2513416\";\"mwrsya\";\"other\"\n\"2513416\";\"mwrsyh\";\"other\"\n\"2513416\";\"Мурсия\";\"other\"\n\"2513416\";\"מורסיה\";\"other\"\n\"2513416\";\"مرسية\";\"other\"\n\"2513416\";\"مورسیا\";\"other\"\n\"2513416\";\"ムルシア\";\"other\"\n\"2513416\";\"穆尔西亚\";\"other\"\n\"2513421\";\"Munera\";\"main\"\n\"2513436\";\"Mula\";\"main\"\n\"2513465\";\"Muchamiel\";\"main\"\n\"2513465\";\"Mutxamel\";\"other\"\n\"2513476\";\"Moya\";\"main\"\n\"2513477\";\"Motril\";\"main\"\n\"2513477\";\"Motril'\";\"other\"\n\"2513477\";\"Мотриль\";\"other\"\n\"2513480\";\"Motilla del Palancar\";\"main\"\n\"2513481\";\"Mota del Cuervo\";\"main\"\n\"2513481\";\"Mata del Cuervo\";\"other\"\n\"2513509\";\"Morón de la Frontera\";\"main\"\n\"2513509\";\"Moron de la Frontera\";\"ascii\"\n\"2513509\";\"Moron\";\"other\"\n\"2513509\";\"Moron-de-la-Frontera\";\"other\"\n\"2513509\";\"Morón\";\"other\"\n\"2513509\";\"Морон-де-ла-Фронтера\";\"other\"\n\"2513562\";\"Moratalla\";\"main\"\n\"2513579\";\"Moraleda de Zafayona\";\"main\"\n\"2513580\";\"Moral de Calatrava\";\"main\"\n\"2513588\";\"Mora\";\"main\"\n\"2513589\";\"Monturque\";\"main\"\n\"2513590\";\"Montuïri\";\"main\"\n\"2513590\";\"Montuiri\";\"ascii\"\n\"2513592\";\"Montroy\";\"main\"\n\"2513592\";\"Montroi\";\"other\"\n\"2513595\";\"Montoro\";\"main\"\n\"2513597\";\"Montizón\";\"main\"\n\"2513597\";\"Montizon\";\"ascii\"\n\"2513599\";\"Montillana\";\"main\"\n\"2513601\";\"Montilla\";\"main\"\n\"2513601\";\"Montil'ja\";\"other\"\n\"2513601\";\"Монтилья\";\"other\"\n\"2513604\";\"Montijo\";\"main\"\n\"2513606\";\"Montiel\";\"main\"\n\"2513614\";\"Montesa\";\"main\"\n\"2513618\";\"Monterrubio de la Serena\";\"main\"\n\"2513618\";\"Monterrubio\";\"other\"\n\"2513628\";\"Montemolín\";\"main\"\n\"2513628\";\"Montemolin\";\"ascii\"\n\"2513632\";\"Montemayor\";\"main\"\n\"2513637\";\"Montellano\";\"main\"\n\"2513638\";\"Montejicar\";\"main\"\n\"2513640\";\"Montefrío\";\"main\"\n\"2513640\";\"Montefrio\";\"ascii\"\n\"2513649\";\"Montealegre del Castillo\";\"main\"\n\"2513649\";\"Montealegre\";\"other\"\n\"2513659\";\"Montánchez\";\"main\"\n\"2513659\";\"Montanchez\";\"ascii\"\n\"2513671\";\"Montalbán de Córdoba\";\"main\"\n\"2513671\";\"Montalban de Cordoba\";\"ascii\"\n\"2513673\";\"Montaberner\";\"main\"\n\"2513674\";\"Monserrat\";\"main\"\n\"2513674\";\"Montserrat d'Alcala\";\"other\"\n\"2513674\";\"Montserrat d'Alcalà\";\"other\"\n\"2513680\";\"Monóvar\";\"main\"\n\"2513680\";\"Monovar\";\"ascii\"\n\"2513680\";\"Monover\";\"other\"\n\"2513680\";\"Monòver\";\"other\"\n\"2513691\";\"Monforte del Cid\";\"main\"\n\"2513691\";\"Monforte\";\"other\"\n\"2513691\";\"Monforte de la Rambla\";\"other\"\n\"2513691\";\"Montfort del Cid\";\"other\"\n\"2513692\";\"Monesterio\";\"main\"\n\"2513692\";\"Monasterio\";\"other\"\n\"2513692\";\"Monestorio\";\"other\"\n\"2513699\";\"Monda\";\"main\"\n\"2513700\";\"Moncófar\";\"main\"\n\"2513700\";\"Moncofar\";\"ascii\"\n\"2513700\";\"Mocofar\";\"other\"\n\"2513700\";\"Moncofa\";\"other\"\n\"2513703\";\"Moncada\";\"main\"\n\"2513703\";\"Monkada\";\"other\"\n\"2513703\";\"Montcada\";\"other\"\n\"2513703\";\"Монкада\";\"other\"\n\"2513709\";\"Monachil\";\"main\"\n\"2513713\";\"Molvízar\";\"main\"\n\"2513713\";\"Molvizar\";\"ascii\"\n\"2513717\";\"Mollina\";\"main\"\n\"2513753\";\"Molinicos\";\"main\"\n\"2513759\";\"Molina de Segura\";\"main\"\n\"2513759\";\"Molina\";\"other\"\n\"2513759\";\"Molina-de-Segura\";\"other\"\n\"2513759\";\"Молина-де-Сегура\";\"other\"\n\"2513786\";\"Mojácar\";\"main\"\n\"2513786\";\"Mojacar\";\"ascii\"\n\"2513791\";\"Moguer\";\"main\"\n\"2513794\";\"Mogente\";\"main\"\n\"2513798\";\"Mogán\";\"main\"\n\"2513798\";\"Mogan\";\"ascii\"\n\"2513800\";\"Moclinejo\";\"main\"\n\"2513801\";\"Moclín\";\"main\"\n\"2513801\";\"Moclin\";\"ascii\"\n\"2513803\";\"Mocejón\";\"main\"\n\"2513803\";\"Mocejon\";\"ascii\"\n\"2513811\";\"Mislata\";\"main\"\n\"2513811\";\"Мислата\";\"other\"\n\"2513821\";\"Mirandilla\";\"main\"\n\"2513827\";\"Miramar\";\"main\"\n\"2513844\";\"Mira\";\"main\"\n\"2513852\";\"Minglanilla\";\"main\"\n\"2513852\";\"Minglanillo\";\"other\"\n\"2513855\";\"Minaya\";\"main\"\n\"2513882\";\"Mijas\";\"main\"\n\"2513882\";\"Mikhas\";\"other\"\n\"2513882\";\"Михас\";\"other\"\n\"2513885\";\"Miguelturra\";\"main\"\n\"2513886\";\"Miguel Esteban\";\"main\"\n\"2513893\";\"Miajadas\";\"main\"\n\"2513917\";\"Mérida\";\"main\"\n\"2513917\";\"Merida\";\"ascii\"\n\"2513917\";\"Emerita Augusta\";\"other\"\n\"2513917\";\"Merido\";\"other\"\n\"2513917\";\"merida\";\"other\"\n\"2513917\";\"mryda\";\"other\"\n\"2513917\";\"mrydh\";\"other\"\n\"2513917\";\"Мерида\";\"other\"\n\"2513917\";\"מרידה\";\"other\"\n\"2513917\";\"مریدا\";\"other\"\n\"2513917\";\"メリダ\";\"other\"\n\"2513922\";\"Es Mercadal\";\"main\"\n\"2513931\";\"Mengibar\";\"main\"\n\"2513935\";\"Menasalbas\";\"main\"\n\"2513944\";\"Membrilla\";\"main\"\n\"2513947\";\"Melilla\";\"main\"\n\"2513947\";\"Ciudad Autonoma de Melilla\";\"other\"\n\"2513947\";\"Ciudad Autónoma de Melilla\";\"other\"\n\"2513947\";\"Ciudad de Melilla\";\"other\"\n\"2513947\";\"Korisnik:Slaven Kosanovic/Melila\";\"other\"\n\"2513947\";\"Lungsod ng Melilla\";\"other\"\n\"2513947\";\"M'lila\";\"other\"\n\"2513947\";\"Melil'ja\";\"other\"\n\"2513947\";\"Melila\";\"other\"\n\"2513947\";\"Melilo\";\"other\"\n\"2513947\";\"Melilya\";\"other\"\n\"2513947\";\"Meliya\";\"other\"\n\"2513947\";\"Millela\";\"other\"\n\"2513947\";\"Rusaddir\";\"other\"\n\"2513947\";\"Rusadir\";\"other\"\n\"2513947\";\"Russadir\";\"other\"\n\"2513947\";\"me li ya\";\"other\"\n\"2513947\";\"mei li li ya\";\"other\"\n\"2513947\";\"melilia\";\"other\"\n\"2513947\";\"melliya\";\"other\"\n\"2513947\";\"merirya\";\"other\"\n\"2513947\";\"mlylyh\";\"other\"\n\"2513947\";\"mlylyt\";\"other\"\n\"2513947\";\"mlyyh\";\"other\"\n\"2513947\";\"Корисник:Славен Косановић/Мелиља\";\"other\"\n\"2513947\";\"Мелила\";\"other\"\n\"2513947\";\"Мелилья\";\"other\"\n\"2513947\";\"Мелиља\";\"other\"\n\"2513947\";\"מלייה\";\"other\"\n\"2513947\";\"مليلية\";\"other\"\n\"2513947\";\"ملیلیه\";\"other\"\n\"2513947\";\"เมลียา\";\"other\"\n\"2513947\";\"მელილია\";\"other\"\n\"2513947\";\"メリリャ\";\"other\"\n\"2513947\";\"梅利利亚\";\"other\"\n\"2513947\";\"멜리야\";\"other\"\n\"2513949\";\"Meliana\";\"main\"\n\"2513961\";\"Medina Sidonia\";\"main\"\n\"2513961\";\"Medina-Sidonia\";\"other\"\n\"2513962\";\"Medina de las Torres\";\"main\"\n\"2513968\";\"Medellín\";\"main\"\n\"2513968\";\"Medellin\";\"ascii\"\n\"2513978\";\"Mazo\";\"main\"\n\"2513978\";\"El Pueblo\";\"other\"\n\"2513983\";\"Mazarrón\";\"main\"\n\"2513983\";\"Mazarron\";\"ascii\"\n\"2513983\";\"Masarron\";\"other\"\n\"2513983\";\"Масаррон\";\"other\"\n\"2513985\";\"Mazarambroz\";\"main\"\n\"2514066\";\"Massamagrell\";\"main\"\n\"2514066\";\"Masamgrell\";\"other\"\n\"2514068\";\"Masalavés\";\"main\"\n\"2514068\";\"Masalaves\";\"ascii\"\n\"2514068\";\"Massalaves\";\"other\"\n\"2514068\";\"Massalavés\";\"other\"\n\"2514073\";\"Martos\";\"main\"\n\"2514073\";\"Мартос\";\"other\"\n\"2514084\";\"Martín de la Jara\";\"main\"\n\"2514084\";\"Martin de la Jara\";\"ascii\"\n\"2514097\";\"Marratxí\";\"main\"\n\"2514097\";\"Marratxi\";\"ascii\"\n\"2514097\";\"Marrachi\";\"other\"\n\"2514097\";\"Маррачи\";\"other\"\n\"2514107\";\"Marmolejo\";\"main\"\n\"2514117\";\"Marines\";\"main\"\n\"2514117\";\"Marines el Viejo\";\"other\"\n\"2514120\";\"Marinaleda\";\"main\"\n\"2514134\";\"Maria de la Salut\";\"main\"\n\"2514134\";\"Maria\";\"other\"\n\"2514139\";\"María\";\"main\"\n\"2514139\";\"Maria\";\"ascii\"\n\"2514158\";\"Marchena\";\"main\"\n\"2514169\";\"Marbella\";\"main\"\n\"2514169\";\"Marbel'ja\";\"other\"\n\"2514169\";\"Marbela\";\"other\"\n\"2514169\";\"marbya\";\"other\"\n\"2514169\";\"marbyla\";\"other\"\n\"2514169\";\"Марбелья\";\"other\"\n\"2514169\";\"Марбеља\";\"other\"\n\"2514169\";\"ماربيا\";\"other\"\n\"2514169\";\"ماربيلا\";\"other\"\n\"2514176\";\"Maracena\";\"main\"\n\"2514185\";\"Manzanilla\";\"main\"\n\"2514190\";\"Manzanares\";\"main\"\n\"2514190\";\"Manzanarre\";\"other\"\n\"2514192\";\"Manuel\";\"main\"\n\"2514197\";\"Manises\";\"main\"\n\"2514197\";\"Манисес\";\"other\"\n\"2514199\";\"Manilva\";\"main\"\n\"2514211\";\"Mancha Real\";\"main\"\n\"2514216\";\"Manacor\";\"main\"\n\"2514216\";\"Manakor\";\"other\"\n\"2514216\";\"Манакор\";\"other\"\n\"2514219\";\"Malpica\";\"main\"\n\"2514225\";\"Malpartida de Plasencia\";\"main\"\n\"2514227\";\"Malpartida de Cáceres\";\"main\"\n\"2514227\";\"Malpartida de Caceres\";\"ascii\"\n\"2514252\";\"Malagón\";\"main\"\n\"2514252\";\"Malagon\";\"ascii\"\n\"2514256\";\"Málaga\";\"main\"\n\"2514256\";\"Malaga\";\"ascii\"\n\"2514256\";\"Malaca\";\"other\"\n\"2514256\";\"Malago\";\"other\"\n\"2514256\";\"Màlaga\";\"other\"\n\"2514256\";\"ma la jia\";\"other\"\n\"2514256\";\"malaga\";\"other\"\n\"2514256\";\"malaka\";\"other\"\n\"2514256\";\"malqt\";\"other\"\n\"2514256\";\"maraga\";\"other\"\n\"2514256\";\"mlqt\";\"other\"\n\"2514256\";\"Малага\";\"other\"\n\"2514256\";\"מאלגה\";\"other\"\n\"2514256\";\"מלאגה\";\"other\"\n\"2514256\";\"مالاگا\";\"other\"\n\"2514256\";\"مالقة\";\"other\"\n\"2514256\";\"ملقة\";\"other\"\n\"2514256\";\"มาลากา\";\"other\"\n\"2514256\";\"マラガ\";\"other\"\n\"2514256\";\"马拉加\";\"other\"\n\"2514279\";\"Majadas\";\"main\"\n\"2514287\";\"Mairena del Aljarafe\";\"main\"\n\"2514287\";\"Aljarafe\";\"other\"\n\"2514288\";\"Mairena del Alcor\";\"main\"\n\"2514288\";\"Mairano del Alcor\";\"other\"\n\"2514288\";\"Maireno del Alcor\";\"other\"\n\"2514297\";\"Mahora\";\"main\"\n\"2514301\";\"Maó\";\"main\"\n\"2514301\";\"Mao\";\"ascii\"\n\"2514301\";\"Mahon\";\"other\"\n\"2514301\";\"Mahón\";\"other\"\n\"2514301\";\"Мао\";\"other\"\n\"2514304\";\"Maguilla\";\"main\"\n\"2514314\";\"Magán\";\"main\"\n\"2514314\";\"Magan\";\"ascii\"\n\"2514324\";\"Madroñera\";\"main\"\n\"2514324\";\"Madronera\";\"ascii\"\n\"2514332\";\"Madrigueras\";\"main\"\n\"2514332\";\"Madriguera\";\"other\"\n\"2514333\";\"Madrigalejo\";\"main\"\n\"2514334\";\"Madridejos\";\"main\"\n\"2514359\";\"Macastre\";\"main\"\n\"2514360\";\"Macael\";\"main\"\n\"2514367\";\"Luque\";\"main\"\n\"2514369\";\"Lupión\";\"main\"\n\"2514369\";\"Lupion\";\"ascii\"\n\"2514370\";\"Puerto Lumbreras\";\"main\"\n\"2514370\";\"Lumbreras\";\"other\"\n\"2514386\";\"Llutxent\";\"main\"\n\"2514386\";\"Luchente\";\"other\"\n\"2514389\";\"Lucena del Puerto\";\"main\"\n\"2514392\";\"Lucena\";\"main\"\n\"2514399\";\"Lubrín\";\"main\"\n\"2514399\";\"Lubrin\";\"ascii\"\n\"2514406\";\"Los Yébenes\";\"main\"\n\"2514406\";\"Los Yebenes\";\"ascii\"\n\"2514406\";\"Yebenes\";\"other\"\n\"2514406\";\"Yébenes\";\"other\"\n\"2514452\";\"Los Silos\";\"main\"\n\"2514452\";\"Silos\";\"other\"\n\"2514460\";\"Los Santos de Maimona\";\"main\"\n\"2514460\";\"Los Santos\";\"other\"\n\"2514553\";\"Los Palacios y Villafranca\";\"main\"\n\"2514553\";\"Villafranca Los Palacios\";\"other\"\n\"2514573\";\"Los Navalucillos\";\"main\"\n\"2514574\";\"Los Navalmorales\";\"main\"\n\"2514593\";\"Los Montesinos\";\"main\"\n\"2514593\";\"Els Montesins\";\"other\"\n\"2514593\";\"Montesinos\";\"other\"\n\"2514601\";\"Los Molares\";\"main\"\n\"2514651\";\"Los Llanos de Aridane\";\"main\"\n\"2514651\";\"Los Llanos\";\"other\"\n\"2514687\";\"Los Hinojosos\";\"main\"\n\"2514747\";\"Los Corrales\";\"main\"\n\"2514824\";\"Los Barrios\";\"main\"\n\"2514824\";\"Barrios\";\"other\"\n\"2514868\";\"Los Alcázares\";\"main\"\n\"2514868\";\"Los Alcazares\";\"ascii\"\n\"2514868\";\"Alcazares\";\"other\"\n\"2514868\";\"Alcázares\";\"other\"\n\"2514883\";\"Lorquí\";\"main\"\n\"2514883\";\"Lorqui\";\"ascii\"\n\"2514887\";\"Loriguilla\";\"main\"\n\"2514891\";\"Lorca\";\"main\"\n\"2514891\";\"Llorca\";\"other\"\n\"2514891\";\"Lorka\";\"other\"\n\"2514891\";\"Lorko\";\"other\"\n\"2514891\";\"lwrqh\";\"other\"\n\"2514891\";\"Лорка\";\"other\"\n\"2514891\";\"לורקה\";\"other\"\n\"2514893\";\"Lora del Río\";\"main\"\n\"2514893\";\"Lora del Rio\";\"ascii\"\n\"2514896\";\"Lopera\";\"main\"\n\"2514912\";\"Lomo de Arico\";\"main\"\n\"2514912\";\"Arico\";\"other\"\n\"2514946\";\"Loja\";\"main\"\n\"2514946\";\"Lokha\";\"other\"\n\"2514946\";\"Лоха\";\"other\"\n\"2514947\";\"Logrosán\";\"main\"\n\"2514947\";\"Logrosan\";\"ascii\"\n\"2514964\";\"Lobón\";\"main\"\n\"2514964\";\"Lobon\";\"ascii\"\n\"2514984\";\"Llucmajor\";\"main\"\n\"2514987\";\"Llubí\";\"main\"\n\"2514987\";\"Llubi\";\"ascii\"\n\"2514988\";\"Lloseta\";\"main\"\n\"2514989\";\"Llosa de Ranes\";\"main\"\n\"2514991\";\"Lloret de Vistalegre\";\"main\"\n\"2514994\";\"Llombai\";\"main\"\n\"2514994\";\"Llombay\";\"other\"\n\"2515002\";\"Llerena\";\"main\"\n\"2515005\";\"Llaurí\";\"main\"\n\"2515005\";\"Llauri\";\"ascii\"\n\"2515024\";\"Llanera de Ranes\";\"main\"\n\"2515036\";\"Llíria\";\"main\"\n\"2515036\";\"Lliria\";\"ascii\"\n\"2515036\";\"Liria\";\"other\"\n\"2515045\";\"Linares\";\"main\"\n\"2515045\";\"Линарес\";\"other\"\n\"2515055\";\"Lillo\";\"main\"\n\"2515058\";\"Liétor\";\"main\"\n\"2515058\";\"Lietor\";\"ascii\"\n\"2515058\";\"Lieto\";\"other\"\n\"2515058\";\"Liéto\";\"other\"\n\"2515060\";\"Librilla\";\"main\"\n\"2515064\";\"Lezuza\";\"main\"\n\"2515070\";\"Letur\";\"main\"\n\"2515072\";\"Lepe\";\"main\"\n\"2515072\";\"Лепе\";\"other\"\n\"2515093\";\"Ledaña\";\"main\"\n\"2515093\";\"Ledana\";\"ascii\"\n\"2515096\";\"Lebrija\";\"main\"\n\"2515096\";\"Lebrikha\";\"other\"\n\"2515096\";\"Лебриха\";\"other\"\n\"2515118\";\"La Victoria de Acentejo\";\"main\"\n\"2515119\";\"La Victoria\";\"main\"\n\"2515151\";\"La Unión\";\"main\"\n\"2515151\";\"La Union\";\"ascii\"\n\"2515151\";\"Unio\";\"other\"\n\"2515158\";\"Laujar de Andarax\";\"main\"\n\"2515158\";\"Laujar\";\"other\"\n\"2515219\";\"Las Torres de Cotillas\";\"main\"\n\"2515219\";\"La Torres de Cotillas\";\"other\"\n\"2515261\";\"Las Pedroñeras\";\"main\"\n\"2515261\";\"Las Pedroneras\";\"ascii\"\n\"2515270\";\"Las Palmas de Gran Canaria\";\"main\"\n\"2515270\";\"Kanaria Handiko Las Palmas\";\"other\"\n\"2515270\";\"Las Palmas\";\"other\"\n\"2515270\";\"Las Palmas de G.C.\";\"other\"\n\"2515270\";\"Las Palmas de Gran Kanaria\";\"other\"\n\"2515270\";\"Las-Pal'mas-de-Gran-Kanarija\";\"other\"\n\"2515270\";\"Laspalmasa\";\"other\"\n\"2515270\";\"Les Palmes de Gran Canaria\";\"other\"\n\"2515270\";\"Les Palmes de Gran Canària\";\"other\"\n\"2515270\";\"Palmas\";\"other\"\n\"2515270\";\"Palmas de Gran Canaria\";\"other\"\n\"2515270\";\"la si pa er ma si\";\"other\"\n\"2515270\";\"Лас Палмас де Гран Канариа\";\"other\"\n\"2515270\";\"Лас-Пальмас-де-Гран-Канария\";\"other\"\n\"2515270\";\"ラス・パルマス・デ・グラン・カナリア\";\"other\"\n\"2515270\";\"拉斯帕尔马斯\";\"other\"\n\"2515284\";\"La Solana\";\"main\"\n\"2515319\";\"Las Mesas\";\"main\"\n\"2515493\";\"Las Cabezas de San Juan\";\"main\"\n\"2515493\";\"Las Cabezas San Juan\";\"other\"\n\"2515550\";\"La Romana\";\"main\"\n\"2515554\";\"La Roda de Andalucía\";\"main\"\n\"2515554\";\"La Roda de Andalucia\";\"ascii\"\n\"2515554\";\"La Roda\";\"other\"\n\"2515554\";\"Roda de Andulucia\";\"other\"\n\"2515555\";\"La Roda\";\"main\"\n\"2515557\";\"La Roca de la Sierra\";\"main\"\n\"2515557\";\"La Roca\";\"other\"\n\"2515562\";\"La Rinconada\";\"main\"\n\"2515562\";\"La-Rinkonada\";\"other\"\n\"2515562\";\"Ла-Ринконада\";\"other\"\n\"2515597\";\"La Rambla\";\"main\"\n\"2515617\";\"La Puerta de Segura\";\"main\"\n\"2515617\";\"La Puerta\";\"other\"\n\"2515618\";\"La Pueblanueva\";\"main\"\n\"2515619\";\"La Puebla de Montalbán\";\"main\"\n\"2515619\";\"La Puebla de Montalban\";\"ascii\"\n\"2515619\";\"Puebla de Montalban\";\"other\"\n\"2515619\";\"Puebla de Montalbán\";\"other\"\n\"2515620\";\"La Puebla del Río\";\"main\"\n\"2515620\";\"La Puebla del Rio\";\"ascii\"\n\"2515620\";\"Puebla del Rio\";\"other\"\n\"2515620\";\"Puebla del Río\";\"other\"\n\"2515621\";\"La Puebla de los Infantes\";\"main\"\n\"2515622\";\"La Puebla de Cazalla\";\"main\"\n\"2515622\";\"Puebla de Cazalla\";\"other\"\n\"2515623\";\"La Puebla de Almoradiel\";\"main\"\n\"2515623\";\"La Puebla de Almordier\";\"other\"\n\"2515623\";\"Puebla de Almoradiel\";\"other\"\n\"2515624\";\"sa Pobla\";\"main\"\n\"2515624\";\"la Pobla\";\"other\"\n\"2515670\";\"La Parra\";\"main\"\n\"2515679\";\"La Palma del Condado\";\"main\"\n\"2515679\";\"La Palma\";\"other\"\n\"2515692\";\"La Orotava\";\"main\"\n\"2515692\";\"Orotava\";\"other\"\n\"2515692\";\"Villa Orotava\";\"other\"\n\"2515692\";\"Villa de la Orotava\";\"other\"\n\"2515698\";\"La Oliva\";\"main\"\n\"2515698\";\"Oliva\";\"other\"\n\"2515701\";\"la Nucia\";\"main\"\n\"2515701\";\"La-Nusia\";\"other\"\n\"2515701\";\"Ла-Нусиа\";\"other\"\n\"2515708\";\"Lanjarón\";\"main\"\n\"2515708\";\"Lanjaron\";\"ascii\"\n\"2515709\";\"Landete\";\"main\"\n\"2515717\";\"La Nava de Santiago\";\"main\"\n\"2515717\";\"La Nava\";\"other\"\n\"2515755\";\"La Mojonera\";\"main\"\n\"2515755\";\"Caserio La Mojonera\";\"other\"\n\"2515755\";\"Caserío La Mojonera\";\"other\"\n\"2515772\";\"La Matanza de Acentejo\";\"main\"\n\"2515801\";\"La Luisiana\";\"main\"\n\"2515801\";\"La Luisana\";\"other\"\n\"2515812\";\"La Línea de la Concepción\";\"main\"\n\"2515812\";\"La Linea de la Concepcion\";\"ascii\"\n\"2515812\";\"La Linea\";\"other\"\n\"2515812\";\"La Línea\";\"other\"\n\"2515812\";\"La-Linea-de-la-Konseps'on\";\"other\"\n\"2515812\";\"Ла-Линеа-де-ла-Консепсьон\";\"other\"\n\"2515814\";\"La Lantejuela\";\"main\"\n\"2515814\";\"La Lentejuela\";\"other\"\n\"2515864\";\"La Iruela\";\"main\"\n\"2515864\";\"Iruela\";\"other\"\n\"2515900\";\"La Haba\";\"main\"\n\"2515908\";\"La Guardia de Jaén\";\"main\"\n\"2515908\";\"La Guardia de Jaen\";\"ascii\"\n\"2515908\";\"La Guardia\";\"other\"\n\"2515911\";\"La Guancha\";\"main\"\n\"2515911\";\"Guancha\";\"other\"\n\"2515922\";\"La Gineta\";\"main\"\n\"2515928\";\"Lagartera\";\"main\"\n\"2515929\";\"La Garrovilla\";\"main\"\n\"2516004\";\"L'Eliana\";\"main\"\n\"2516004\";\"La Eliana\";\"other\"\n\"2516024\";\"La Cumbre\";\"main\"\n\"2516049\";\"La Coronada\";\"main\"\n\"2516049\";\"Coronada\";\"other\"\n\"2516065\";\"La Codosera\";\"main\"\n\"2516071\";\"Láchar\";\"main\"\n\"2516071\";\"Lachar\";\"ascii\"\n\"2516088\";\"La Carolina\";\"main\"\n\"2516089\";\"La Carlota\";\"main\"\n\"2516118\";\"La Campana\";\"main\"\n\"2516122\";\"La Calzada de Calatrava\";\"main\"\n\"2516122\";\"Calzada de Calatrava\";\"other\"\n\"2516122\";\"La Calzada\";\"other\"\n\"2516217\";\"La Algaba\";\"main\"\n\"2516217\";\"Algaba\";\"other\"\n\"2516228\";\"La Albuera\";\"main\"\n\"2516228\";\"Albuera\";\"other\"\n\"2516230\";\"La Alberca de Záncara\";\"main\"\n\"2516230\";\"La Alberca de Zancara\";\"ascii\"\n\"2516230\";\"La Alberca\";\"other\"\n\"2516255\";\"Jumilla\";\"main\"\n\"2516255\";\"Jumella\";\"other\"\n\"2516255\";\"Khumil'e\";\"other\"\n\"2516255\";\"Хумилье\";\"other\"\n\"2516304\";\"Jódar\";\"main\"\n\"2516304\";\"Jodar\";\"ascii\"\n\"2516315\";\"Jimena de la Frontera\";\"main\"\n\"2516315\";\"Jimena\";\"other\"\n\"2516317\";\"Jimena\";\"main\"\n\"2516318\";\"Jijona\";\"main\"\n\"2516318\";\"Xixona\";\"other\"\n\"2516324\";\"Jérica\";\"main\"\n\"2516324\";\"Jerica\";\"ascii\"\n\"2516324\";\"Xerica\";\"other\"\n\"2516325\";\"Jerez de los Caballeros\";\"main\"\n\"2516326\";\"Jerez de la Frontera\";\"main\"\n\"2516326\";\"Herezo\";\"other\"\n\"2516326\";\"Jarez de la Frontera\";\"other\"\n\"2516326\";\"Jerez\";\"other\"\n\"2516326\";\"Xeres\";\"other\"\n\"2516326\";\"Xérès\";\"other\"\n\"2516326\";\"hrs dh lh prwntrh\";\"other\"\n\"2516326\";\"shrysh\";\"other\"\n\"2516326\";\"Ĥerezo\";\"other\"\n\"2516326\";\"חרס דה לה פרונטרה\";\"other\"\n\"2516326\";\"شريش\";\"other\"\n\"2516326\";\"ヘレス・デ・ラ・フロンテーラ\";\"other\"\n\"2516327\";\"Jeres del Marquesado\";\"main\"\n\"2516327\";\"Jerez del Marquesado\";\"other\"\n\"2516330\";\"Xeresa\";\"main\"\n\"2516330\";\"Jeresa\";\"other\"\n\"2516334\";\"Jayena\";\"main\"\n\"2516336\";\"Xàbia\";\"main\"\n\"2516336\";\"Xabia\";\"ascii\"\n\"2516336\";\"Javea\";\"other\"\n\"2516336\";\"Jávea\";\"other\"\n\"2516345\";\"Xàtiva\";\"main\"\n\"2516345\";\"Xativa\";\"ascii\"\n\"2516345\";\"Jativa\";\"other\"\n\"2516345\";\"Játiva\";\"other\"\n\"2516345\";\"Khativa\";\"other\"\n\"2516345\";\"shatbt\";\"other\"\n\"2516345\";\"Хатива\";\"other\"\n\"2516345\";\"شاطبة\";\"other\"\n\"2516372\";\"Xeraco,Jaraco\";\"main\"\n\"2516386\";\"Jamilena\";\"main\"\n\"2516389\";\"Jalón\";\"main\"\n\"2516389\";\"Jalon\";\"ascii\"\n\"2516389\";\"Xalo\";\"other\"\n\"2516389\";\"Xaló\";\"other\"\n\"2516395\";\"Jaén\";\"main\"\n\"2516395\";\"Jaen\";\"ascii\"\n\"2516395\";\"Haeno\";\"other\"\n\"2516395\";\"Khaehn\";\"other\"\n\"2516395\";\"Xaen - Jaen\";\"other\"\n\"2516395\";\"Xaén - Jaén\";\"other\"\n\"2516395\";\"haen\";\"other\"\n\"2516395\";\"jyan\";\"other\"\n\"2516395\";\"Ĥaeno\";\"other\"\n\"2516395\";\"Хаэн\";\"other\"\n\"2516395\";\"جيان\";\"other\"\n\"2516395\";\"ハエン\";\"other\"\n\"2516399\";\"Jacarilla\";\"main\"\n\"2516399\";\"Xacarella\";\"other\"\n\"2516404\";\"Jabalquinto\";\"main\"\n\"2516412\";\"Iznatoraf\";\"main\"\n\"2516414\";\"Iznalloz\";\"main\"\n\"2516415\";\"Iznájar\";\"main\"\n\"2516415\";\"Iznajar\";\"ascii\"\n\"2516415\";\"Iznar\";\"other\"\n\"2516419\";\"Ítrabo\";\"main\"\n\"2516419\";\"Itrabo\";\"ascii\"\n\"2516421\";\"Istán\";\"main\"\n\"2516421\";\"Istan\";\"ascii\"\n\"2516431\";\"Isla Cristina\";\"main\"\n\"2516440\";\"Iniesta\";\"main\"\n\"2516443\";\"Ingenio\";\"main\"\n\"2516443\";\"Carrizal de Ingenio\";\"other\"\n\"2516449\";\"Infantes\";\"main\"\n\"2516449\";\"Villanueva de Infantes\";\"other\"\n\"2516449\";\"Villanueva de los Infantes\";\"other\"\n\"2516452\";\"Inca\";\"main\"\n\"2516452\";\"Inka\";\"other\"\n\"2516452\";\"Инка\";\"other\"\n\"2516455\";\"Illora\";\"main\"\n\"2516463\";\"Igualeja\";\"main\"\n\"2516474\";\"Icod de los Vinos\";\"main\"\n\"2516474\";\"Icod\";\"other\"\n\"2516475\";\"Ibros\";\"main\"\n\"2516479\";\"Eivissa\";\"main\"\n\"2516479\";\"Ibica\";\"other\"\n\"2516479\";\"Ibiza\";\"other\"\n\"2516479\";\"Ibiza Town\";\"other\"\n\"2516479\";\"Ibiza-Stadt\";\"other\"\n\"2516479\";\"Ibiza-stad\";\"other\"\n\"2516479\";\"Vila d'Eivissa\";\"other\"\n\"2516479\";\"Ибица\";\"other\"\n\"2516480\";\"Ibi\";\"main\"\n\"2516480\";\"Иби\";\"other\"\n\"2516490\";\"Humilladero\";\"main\"\n\"2516498\";\"Huétor Vega\";\"main\"\n\"2516498\";\"Huetor Vega\";\"ascii\"\n\"2516499\";\"Huétor-Tájar\";\"main\"\n\"2516499\";\"Huetor-Tajar\";\"ascii\"\n\"2516500\";\"Huétor Santillán\";\"main\"\n\"2516500\";\"Huetor Santillan\";\"ascii\"\n\"2516507\";\"Huéscar\";\"main\"\n\"2516507\";\"Huescar\";\"ascii\"\n\"2516508\";\"Huesa\";\"main\"\n\"2516534\";\"Huerta de Valdecarábanos\";\"main\"\n\"2516534\";\"Huerta de Valdecarabanos\";\"ascii\"\n\"2516534\";\"Huerta\";\"other\"\n\"2516542\";\"Huércal-Overa\";\"main\"\n\"2516542\";\"Huercal-Overa\";\"ascii\"\n\"2516542\";\"Huercal Overa\";\"other\"\n\"2516542\";\"Huescal-Overa\";\"other\"\n\"2516542\";\"Huércal Overa\";\"other\"\n\"2516543\";\"Huércal de Almería\";\"main\"\n\"2516543\";\"Huercal de Almeria\";\"ascii\"\n\"2516545\";\"Huéneja\";\"main\"\n\"2516545\";\"Hueneja\";\"ascii\"\n\"2516548\";\"Huelva\";\"main\"\n\"2516548\";\"Onubo\";\"other\"\n\"2516548\";\"Uehl'va\";\"other\"\n\"2516548\";\"ueruba\";\"other\"\n\"2516548\";\"u~eruba\";\"other\"\n\"2516548\";\"Уэльва\";\"other\"\n\"2516548\";\"ウェルバ\";\"other\"\n\"2516548\";\"ウエルバ\";\"other\"\n\"2516549\";\"Huelma\";\"main\"\n\"2516630\";\"Hornachuelos\";\"main\"\n\"2516632\";\"Hornachos\";\"main\"\n\"2516641\";\"Horcajo de Santiago\";\"main\"\n\"2516641\";\"Horcajo\";\"other\"\n\"2516652\";\"Honrubia\";\"main\"\n\"2516655\";\"Hondón de los Frailes\";\"main\"\n\"2516655\";\"Hondon de los Frailes\";\"ascii\"\n\"2516655\";\"Fondo dels Frares\";\"other\"\n\"2516655\";\"Fondó dels Frares\";\"other\"\n\"2516656\";\"Hondón de las Nieves\";\"main\"\n\"2516656\";\"Hondon de las Nieves\";\"ascii\"\n\"2516656\";\"Fondo de les Neus\";\"other\"\n\"2516656\";\"Fondó de les Neus\";\"other\"\n\"2516695\";\"Hinojosa del Duque\";\"main\"\n\"2516697\";\"Hinojos\";\"main\"\n\"2516713\";\"Higueruela\";\"main\"\n\"2516723\";\"Higuera la Real\";\"main\"\n\"2516723\";\"Higuera\";\"other\"\n\"2516728\";\"Higuera de Vargas\";\"main\"\n\"2516731\";\"Higuera de la Serena\";\"main\"\n\"2516733\";\"Higuera de Arjona\";\"main\"\n\"2516768\";\"Herrera del Duque\";\"main\"\n\"2516773\";\"Herrera\";\"main\"\n\"2516773\";\"Herrer\";\"other\"\n\"2516785\";\"Hermigua\";\"main\"\n\"2516790\";\"Herencia\";\"main\"\n\"2516797\";\"Hellín\";\"main\"\n\"2516797\";\"Hellin\";\"ascii\"\n\"2516797\";\"Ehl'ine\";\"other\"\n\"2516797\";\"Эльине\";\"other\"\n\"2516814\";\"Haría\";\"main\"\n\"2516814\";\"Haria\";\"ascii\"\n\"2516852\";\"Güimar\";\"main\"\n\"2516852\";\"Guimar\";\"ascii\"\n\"2516855\";\"Guillena\";\"main\"\n\"2516860\";\"Guía de Isora\";\"main\"\n\"2516860\";\"Guia de Isora\";\"ascii\"\n\"2516860\";\"Guia\";\"other\"\n\"2516860\";\"Guia de Izara\";\"other\"\n\"2516860\";\"Guía\";\"other\"\n\"2516861\";\"Guia\";\"main\"\n\"2516861\";\"Guia de Gran Canaria\";\"other\"\n\"2516861\";\"Guía de Gran Canaria\";\"other\"\n\"2516865\";\"Güevéjar\";\"main\"\n\"2516865\";\"Guevejar\";\"ascii\"\n\"2516873\";\"Güéjar-Sierra\";\"main\"\n\"2516873\";\"Guejar-Sierra\";\"ascii\"\n\"2516887\";\"Guarromán\";\"main\"\n\"2516887\";\"Guarroman\";\"ascii\"\n\"2516892\";\"Guaro\";\"main\"\n\"2516896\";\"Guareña\";\"main\"\n\"2516896\";\"Guarena\";\"ascii\"\n\"2516902\";\"Guardamar del Segura\";\"main\"\n\"2516902\";\"Guardamar\";\"other\"\n\"2516902\";\"Guardamar de la Safor\";\"other\"\n\"2516902\";\"Guardamar de la Segura\";\"other\"\n\"2516915\";\"Gualchos\";\"main\"\n\"2516925\";\"Guadix\";\"main\"\n\"2516925\";\"Gvadiks\";\"other\"\n\"2516925\";\"Quadix\";\"other\"\n\"2516925\";\"Гвадикс\";\"other\"\n\"2516944\";\"Guadassuar\";\"main\"\n\"2516944\";\"Guadasuar\";\"other\"\n\"2516957\";\"Guadamur\";\"main\"\n\"2516970\";\"Guadalupe\";\"main\"\n\"2516970\";\"Gundalupe\";\"other\"\n\"2517004\";\"Guadalcázar\";\"main\"\n\"2517004\";\"Guadalcazar\";\"ascii\"\n\"2517023\";\"Guadahortuna\";\"main\"\n\"2517049\";\"Grazalema\";\"main\"\n\"2517059\";\"Granja de Torrehermosa\";\"main\"\n\"2517060\";\"Granja de Rocamora\";\"main\"\n\"2517111\";\"Granadilla de Abona\";\"main\"\n\"2517111\";\"Granadilla\";\"other\"\n\"2517117\";\"Granada\";\"main\"\n\"2517117\";\"Granada - Grenada\";\"other\"\n\"2517117\";\"Granado\";\"other\"\n\"2517117\";\"Granata\";\"other\"\n\"2517117\";\"Grenada\";\"other\"\n\"2517117\";\"Grenade\";\"other\"\n\"2517117\";\"Grenado\";\"other\"\n\"2517117\";\"Grenayd\";\"other\"\n\"2517117\";\"ge la na da\";\"other\"\n\"2517117\";\"ge lin na da\";\"other\"\n\"2517117\";\"geulenada\";\"other\"\n\"2517117\";\"ghrnatt\";\"other\"\n\"2517117\";\"granada\";\"other\"\n\"2517117\";\"grndh\";\"other\"\n\"2517117\";\"guranada\";\"other\"\n\"2517117\";\"gurenada\";\"other\"\n\"2517117\";\"jrynada\";\"other\"\n\"2517117\";\"pra thes kerne da\";\"other\"\n\"2517117\";\"Γρενάδα\";\"other\"\n\"2517117\";\"Гранада\";\"other\"\n\"2517117\";\"Гренада\";\"other\"\n\"2517117\";\"גרנדה\";\"other\"\n\"2517117\";\"جرينادا\";\"other\"\n\"2517117\";\"غرناطة\";\"other\"\n\"2517117\";\"ګرېنادا\";\"other\"\n\"2517117\";\"گرانادا\";\"other\"\n\"2517117\";\"گرېنادا\";\"other\"\n\"2517117\";\"ประเทศเกรเนดา\";\"other\"\n\"2517117\";\"グラナダ\";\"other\"\n\"2517117\";\"グレナダ\";\"other\"\n\"2517117\";\"格拉纳达\";\"other\"\n\"2517117\";\"格林纳达\";\"other\"\n\"2517117\";\"그레나다\";\"other\"\n\"2517175\";\"Gor\";\"main\"\n\"2517197\";\"Gójar\";\"main\"\n\"2517197\";\"Gojar\";\"ascii\"\n\"2517199\";\"Godelleta\";\"main\"\n\"2517200\";\"Godella\";\"main\"\n\"2517217\";\"Ginés\";\"main\"\n\"2517217\";\"Gines\";\"ascii\"\n\"2517223\";\"Gilet\";\"main\"\n\"2517225\";\"Gilena\";\"main\"\n\"2517236\";\"Gibraleón\";\"main\"\n\"2517236\";\"Gibraleon\";\"ascii\"\n\"2517242\";\"Gerindote\";\"main\"\n\"2517247\";\"Gérgal\";\"main\"\n\"2517247\";\"Gergal\";\"ascii\"\n\"2517249\";\"Gerena\";\"main\"\n\"2517252\";\"Genovés\";\"main\"\n\"2517252\";\"Genoves\";\"ascii\"\n\"2517262\";\"Gelves\";\"main\"\n\"2517283\";\"Gaucín\";\"main\"\n\"2517283\";\"Gaucin\";\"ascii\"\n\"2517298\";\"Gata de Gorgos\";\"main\"\n\"2517298\";\"Gata\";\"other\"\n\"2517310\";\"Garrucha\";\"main\"\n\"2517310\";\"Garrucho\";\"other\"\n\"2517310\";\"La Garrucha\";\"other\"\n\"2517311\";\"Garrovillas\";\"main\"\n\"2517311\";\"Garrovillas de Alconetar\";\"other\"\n\"2517311\";\"Garrovillas de Alconétar\";\"other\"\n\"2517346\";\"Garafía\";\"main\"\n\"2517346\";\"Garafia\";\"ascii\"\n\"2517346\";\"Santo Domingo\";\"other\"\n\"2517349\";\"Garachico\";\"main\"\n\"2517349\";\"Garachiko\";\"other\"\n\"2517349\";\"Гарачико\";\"other\"\n\"2517350\";\"Garachico\";\"main\"\n\"2517350\";\"Garachiko\";\"other\"\n\"2517350\";\"Garachiro\";\"other\"\n\"2517350\";\"Гарачико\";\"other\"\n\"2517367\";\"Gandia\";\"main\"\n\"2517367\";\"Gandie\";\"other\"\n\"2517367\";\"Gandija\";\"other\"\n\"2517367\";\"Gandía\";\"other\"\n\"2517367\";\"Гандия\";\"other\"\n\"2517383\";\"Gálvez\";\"main\"\n\"2517383\";\"Galvez\";\"ascii\"\n\"2517409\";\"Galisteo\";\"main\"\n\"2517432\";\"Galera\";\"main\"\n\"2517436\";\"Gáldar\";\"main\"\n\"2517436\";\"Galdar\";\"ascii\"\n\"2517436\";\"Gal'dar\";\"other\"\n\"2517436\";\"Гальдар\";\"other\"\n\"2517460\";\"Gádor\";\"main\"\n\"2517460\";\"Gador\";\"ascii\"\n\"2517473\";\"Gavarda\";\"main\"\n\"2517473\";\"Gabarda\";\"other\"\n\"2517482\";\"Fuerte del Rey\";\"main\"\n\"2517493\";\"Fuente Vaqueros\";\"main\"\n\"2517493\";\"Fuente Vagueros\";\"other\"\n\"2517498\";\"Fuentes de León\";\"main\"\n\"2517498\";\"Fuentes de Leon\";\"ascii\"\n\"2517500\";\"Fuentes de Andalucía\";\"main\"\n\"2517500\";\"Fuentes de Andalucia\";\"ascii\"\n\"2517512\";\"Fuente Palmera\";\"main\"\n\"2517515\";\"Fuente Obejuna\";\"main\"\n\"2517515\";\"Fuenteovejuna\";\"other\"\n\"2517523\";\"La Font de la Figuera\";\"main\"\n\"2517523\";\"Fuente la Higuera\";\"other\"\n\"2517530\";\"Fuente el Fresno\";\"main\"\n\"2517530\";\"Fuente del Fresno\";\"other\"\n\"2517534\";\"Fuente de Piedra\";\"main\"\n\"2517535\";\"Fuente de Pedro Naharro\";\"main\"\n\"2517547\";\"Fuente del Maestre\";\"main\"\n\"2517560\";\"Fuente de Cantos\";\"main\"\n\"2517573\";\"Fuentealbilla\";\"main\"\n\"2517574\";\"Fuente-Álamo de Murcia\";\"main\"\n\"2517574\";\"Fuente-Alamo de Murcia\";\"ascii\"\n\"2517574\";\"Fuente Alamo\";\"other\"\n\"2517574\";\"Fuente Álamo\";\"other\"\n\"2517576\";\"Fuente-Álamo\";\"main\"\n\"2517576\";\"Fuente-Alamo\";\"ascii\"\n\"2517581\";\"Fuensanta de Martos\";\"main\"\n\"2517591\";\"Fuenlabrada de los Montes\";\"main\"\n\"2517591\";\"Fuentelabrada de los Montes\";\"other\"\n\"2517595\";\"Fuengirola\";\"main\"\n\"2517598\";\"Fuencaliente de la Palma\";\"main\"\n\"2517598\";\"Los Canarios\";\"other\"\n\"2517598\";\"fuencaliente\";\"other\"\n\"2517603\";\"Fuencaliente\";\"main\"\n\"2517603\";\"La Fuencaliente\";\"other\"\n\"2517611\";\"Frontera\";\"main\"\n\"2517611\";\"La Frontera\";\"other\"\n\"2517611\";\"Las Lapas\";\"other\"\n\"2517611\";\"Фронтера\";\"other\"\n\"2517618\";\"Frigiliana\";\"main\"\n\"2517641\";\"Freila\";\"main\"\n\"2517643\";\"Fregenal de la Sierra\";\"main\"\n\"2517643\";\"Fregenal\";\"other\"\n\"2517659\";\"Frailes\";\"main\"\n\"2517675\";\"Foios\";\"main\"\n\"2517675\";\"Foyos\";\"other\"\n\"2517679\";\"Fortuna\";\"main\"\n\"2517682\";\"Fortaleny\";\"main\"\n\"2517689\";\"Formentera de Segura\";\"main\"\n\"2517689\";\"Formentera del Segura\";\"other\"\n\"2517711\";\"Fonelas\";\"main\"\n\"2517717\";\"Firgas\";\"main\"\n\"2517719\";\"Finestrat\";\"main\"\n\"2517720\";\"Fines\";\"main\"\n\"2517722\";\"Fiñana\";\"main\"\n\"2517722\";\"Finana\";\"ascii\"\n\"2517722\";\"Pinana\";\"other\"\n\"2517722\";\"Piñana\";\"other\"\n\"2517733\";\"Ferreries\";\"main\"\n\"2517733\";\"Ferrerias\";\"other\"\n\"2517733\";\"Ferrerías\";\"other\"\n\"2517740\";\"Fernán-Núñez\";\"main\"\n\"2517740\";\"Fernan-Nunez\";\"ascii\"\n\"2517744\";\"Feria\";\"main\"\n\"2517750\";\"Felanitx\";\"main\"\n\"2517753\";\"Favara\";\"main\"\n\"2517753\";\"Favareta\";\"other\"\n\"2517755\";\"Faura\";\"main\"\n\"2517763\";\"Fasnia\";\"main\"\n\"2517763\";\"Fasnea\";\"other\"\n\"2517812\";\"Estivella\";\"main\"\n\"2517816\";\"Estepona\";\"main\"\n\"2517816\";\"Естепона\";\"other\"\n\"2517820\";\"Estepa\";\"main\"\n\"2517880\";\"Esporles\";\"main\"\n\"2517894\";\"Espiel\";\"main\"\n\"2517897\";\"Espera\";\"main\"\n\"2517900\";\"Espejo\";\"main\"\n\"2517903\";\"Espartinas\";\"main\"\n\"2517909\";\"Esparragosa de la Serena\";\"main\"\n\"2517910\";\"Esparragosa de Lares\";\"main\"\n\"2517913\";\"Esparragalejo\";\"main\"\n\"2517955\";\"Escalonilla\";\"main\"\n\"2517964\";\"Escacena del Campo\";\"main\"\n\"2517964\";\"Escacena\";\"other\"\n\"2518011\";\"Enguera\";\"main\"\n\"2518011\";\"Ènguera\";\"other\"\n\"2518011\";\"Énguera\";\"other\"\n\"2518019\";\"Encinas Reales\";\"main\"\n\"2518040\";\"El Viso del Alcor\";\"main\"\n\"2518040\";\"Viso del Alcor\";\"other\"\n\"2518042\";\"El Viso\";\"main\"\n\"2518052\";\"El Varadero\";\"main\"\n\"2518052\";\"Barriada El Varadero\";\"other\"\n\"2518052\";\"Varadero\";\"other\"\n\"2518078\";\"El Toboso\";\"main\"\n\"2518113\";\"El Saucejo\";\"main\"\n\"2518113\";\"Saucejo\";\"other\"\n\"2518129\";\"El Rubio\";\"main\"\n\"2518146\";\"El Ronquillo\";\"main\"\n\"2518146\";\"Ronquillo\";\"other\"\n\"2518158\";\"El Robledo\";\"main\"\n\"2518207\";\"El Puerto de Santa María\";\"main\"\n\"2518207\";\"El Puerto de Santa Maria\";\"ascii\"\n\"2518207\";\"Ehl'-Puehrto-de-Santa-Marija\";\"other\"\n\"2518207\";\"El Puerto\";\"other\"\n\"2518207\";\"Pto. de Sta. Maria\";\"other\"\n\"2518207\";\"Pto. de Sta. María\";\"other\"\n\"2518207\";\"Puerto\";\"other\"\n\"2518207\";\"Puerto de Santa Maria\";\"other\"\n\"2518207\";\"Puerto de Santa María\";\"other\"\n\"2518207\";\"Эль-Пуэрто-де-Санта-Мария\";\"other\"\n\"2518221\";\"El Puente del Arzobispo\";\"main\"\n\"2518221\";\"Puente del Arzobispo\";\"other\"\n\"2518224\";\"El Provencio\";\"main\"\n\"2518273\";\"El Pedernoso\";\"main\"\n\"2518277\";\"El Paso\";\"main\"\n\"2518277\";\"Paso\";\"other\"\n\"2518455\";\"El Gastor\";\"main\"\n\"2518494\";\"El Ejido\";\"main\"\n\"2518494\";\"Barriada El Ejido\";\"other\"\n\"2518494\";\"Ehl'-Ehkhido\";\"other\"\n\"2518494\";\"Ejido\";\"other\"\n\"2518494\";\"Эль-Эхидо\";\"other\"\n\"2518505\";\"Elda\";\"main\"\n\"2518505\";\"Ehl'da\";\"other\"\n\"2518505\";\"Эльда\";\"other\"\n\"2518521\";\"El Coronil\";\"main\"\n\"2518521\";\"El Goronil\";\"other\"\n\"2518555\";\"Elche de la Sierra\";\"main\"\n\"2518555\";\"Elche Sierra\";\"other\"\n\"2518559\";\"Elx\";\"main\"\n\"2518559\";\"Ehl'ch\";\"other\"\n\"2518559\";\"Elch\";\"other\"\n\"2518559\";\"Elche\";\"other\"\n\"2518559\";\"Elig\";\"other\"\n\"2518559\";\"Illice\";\"other\"\n\"2518559\";\"ai er qie\";\"other\"\n\"2518559\";\"altshh\";\"other\"\n\"2518559\";\"eruche\";\"other\"\n\"2518559\";\"Елч\";\"other\"\n\"2518559\";\"Эльч\";\"other\"\n\"2518559\";\"אלצ'ה\";\"other\"\n\"2518559\";\"إلتشه\";\"other\"\n\"2518559\";\"エルチェ\";\"other\"\n\"2518559\";\"埃爾切\";\"other\"\n\"2518575\";\"El Cerro de Andévalo\";\"main\"\n\"2518575\";\"El Cerro de Andevalo\";\"ascii\"\n\"2518575\";\"El Cerro\";\"other\"\n\"2518591\";\"El Castillo de las Guardas\";\"main\"\n\"2518591\";\"El Castello de las Guardas\";\"other\"\n\"2518597\";\"El Casar\";\"main\"\n\"2518597\";\"Cortijo El Casar\";\"other\"\n\"2518606\";\"El Carpio de Tajo\";\"main\"\n\"2518607\";\"El Carpio\";\"main\"\n\"2518682\";\"El Bosque\";\"main\"\n\"2518684\";\"El Bonillo\";\"main\"\n\"2518684\";\"Bonillo\";\"other\"\n\"2518723\";\"s'Arenal\";\"main\"\n\"2518723\";\"Arenal'\";\"other\"\n\"2518723\";\"El Arenal\";\"other\"\n\"2518723\";\"l'Arenal\";\"other\"\n\"2518723\";\"Ареналь\";\"other\"\n\"2518729\";\"El Arahal\";\"main\"\n\"2518729\";\"Arahal\";\"other\"\n\"2518770\";\"Écija\";\"main\"\n\"2518770\";\"Ecija\";\"ascii\"\n\"2518770\";\"Ehsikha\";\"other\"\n\"2518770\";\"Эсиха\";\"other\"\n\"2518774\";\"Dúrcal\";\"main\"\n\"2518774\";\"Durcal\";\"ascii\"\n\"2518791\";\"Dos Torres\";\"main\"\n\"2518794\";\"Dos Hermanas\";\"main\"\n\"2518794\";\"Dos Ermanas\";\"other\"\n\"2518794\";\"Дос Ерманас\";\"other\"\n\"2518796\";\"Dosbarrios\";\"main\"\n\"2518820\";\"Don Benito\";\"main\"\n\"2518820\";\"Don-Benito\";\"other\"\n\"2518820\";\"Дон-Бенито\";\"other\"\n\"2518825\";\"Doña Mencía\";\"main\"\n\"2518825\";\"Dona Mencia\";\"ascii\"\n\"2518842\";\"Dolores\";\"main\"\n\"2518842\";\"Dolors\";\"other\"\n\"2518849\";\"Dílar\";\"main\"\n\"2518849\";\"Dilar\";\"ascii\"\n\"2518878\";\"Denia\";\"main\"\n\"2518878\";\"Denija\";\"other\"\n\"2518878\";\"Dénia\";\"other\"\n\"2518878\";\"Дения\";\"other\"\n\"2518882\";\"Deifontes\";\"main\"\n\"2518913\";\"Daya Nueva\";\"main\"\n\"2518913\";\"Daia Nova\";\"other\"\n\"2518917\";\"Darro\";\"main\"\n\"2518921\";\"Dalías\";\"main\"\n\"2518921\";\"Dalias\";\"ascii\"\n\"2518923\";\"Daimús\";\"main\"\n\"2518923\";\"Daimus\";\"ascii\"\n\"2518923\";\"Daimuz\";\"other\"\n\"2518924\";\"Daimiel\";\"main\"\n\"2518949\";\"Cullera\";\"main\"\n\"2518949\";\"Kul'era\";\"other\"\n\"2518949\";\"Кульера\";\"other\"\n\"2518950\";\"Cúllar-Vega\";\"main\"\n\"2518950\";\"Cullar-Vega\";\"ascii\"\n\"2518969\";\"Cuevas de San Marcos\";\"main\"\n\"2518981\";\"Cuevas del Campo\";\"main\"\n\"2518982\";\"Cuevas del Becerro\";\"main\"\n\"2518988\";\"Cuevas del Almanzora\";\"main\"\n\"2518988\";\"Cuevas de Almanzora\";\"other\"\n\"2518988\";\"Cuevas de Vera\";\"other\"\n\"2518993\";\"Cuevas Bajas\";\"main\"\n\"2519028\";\"Cuerva\";\"main\"\n\"2519061\";\"Quatretonda\";\"main\"\n\"2519061\";\"Cuatretonda\";\"other\"\n\"2519066\";\"Quartell\";\"main\"\n\"2519066\";\"Cuartell\";\"other\"\n\"2519068\";\"Quart de Poblet\";\"main\"\n\"2519068\";\"Cuart de Poblet\";\"other\"\n\"2519068\";\"Kuart-de-Poblet\";\"other\"\n\"2519068\";\"Куарт-де-Поблет\";\"other\"\n\"2519069\";\"Quart de les Valls\";\"main\"\n\"2519069\";\"Cuart de les Valls\";\"other\"\n\"2519110\";\"Crevillente\";\"main\"\n\"2519110\";\"Crevillent\";\"other\"\n\"2519110\";\"Krevil'ente\";\"other\"\n\"2519110\";\"Кревильенте\";\"other\"\n\"2519118\";\"Cózar\";\"main\"\n\"2519118\";\"Cozar\";\"ascii\"\n\"2519120\";\"Cox\";\"main\"\n\"2519120\";\"Coix\";\"other\"\n\"2519139\";\"Costitx\";\"main\"\n\"2519198\";\"Cortes de la Frontera\";\"main\"\n\"2519199\";\"Cortes de Baza\";\"main\"\n\"2519207\";\"Corte de Peleas\";\"main\"\n\"2519217\";\"Corralejo\";\"main\"\n\"2519217\";\"Koral'ekho\";\"other\"\n\"2519217\";\"Коральехо\";\"other\"\n\"2519219\";\"Corral de Calatrava\";\"main\"\n\"2519221\";\"Corral de Almaguer\";\"main\"\n\"2519232\";\"Coripe\";\"main\"\n\"2519233\";\"Coria del Río\";\"main\"\n\"2519233\";\"Coria del Rio\";\"ascii\"\n\"2519233\";\"Koria-del'-Rio\";\"other\"\n\"2519233\";\"Кориа-дель-Рио\";\"other\"\n\"2519233\";\"コリア・デル・リオ\";\"other\"\n\"2519234\";\"Coria\";\"main\"\n\"2519237\";\"Cordobilla de Lácara\";\"main\"\n\"2519237\";\"Cordobilla de Lacara\";\"ascii\"\n\"2519240\";\"Córdoba\";\"main\"\n\"2519240\";\"Cordoba\";\"ascii\"\n\"2519240\";\"Cardoue\";\"other\"\n\"2519240\";\"Cordoue\";\"other\"\n\"2519240\";\"Cordova\";\"other\"\n\"2519240\";\"Corduba\";\"other\"\n\"2519240\";\"Còrdova\";\"other\"\n\"2519240\";\"Kordava\";\"other\"\n\"2519240\";\"Kordoba\";\"other\"\n\"2519240\";\"Kordova\";\"other\"\n\"2519240\";\"Kordovo\";\"other\"\n\"2519240\";\"Kordowa\";\"other\"\n\"2519240\";\"korudoba\";\"other\"\n\"2519240\";\"kwrdwba\";\"other\"\n\"2519240\";\"kxr do ba\";\"other\"\n\"2519240\";\"qrtbh\";\"other\"\n\"2519240\";\"qrtbt\";\"other\"\n\"2519240\";\"qwrdwbh\";\"other\"\n\"2519240\";\"Кордава\";\"other\"\n\"2519240\";\"Кордоба\";\"other\"\n\"2519240\";\"Кордова\";\"other\"\n\"2519240\";\"קורדובה\";\"other\"\n\"2519240\";\"قرطبة\";\"other\"\n\"2519240\";\"قرطبه\";\"other\"\n\"2519240\";\"قرطبہ\";\"other\"\n\"2519240\";\"کوردوبا\";\"other\"\n\"2519240\";\"กอร์โดบา\";\"other\"\n\"2519240\";\"コルドバ\";\"other\"\n\"2519264\";\"Corbera\";\"main\"\n\"2519264\";\"Corbera de Alcira\";\"other\"\n\"2519277\";\"Consuegra\";\"main\"\n\"2519283\";\"Consell\";\"main\"\n\"2519289\";\"Conil de la Frontera\";\"main\"\n\"2519289\";\"Conil\";\"other\"\n\"2519325\";\"Comares\";\"main\"\n\"2519343\";\"Colomera\";\"main\"\n\"2519352\";\"Colmenar\";\"main\"\n\"2519367\";\"Coín\";\"main\"\n\"2519367\";\"Coin\";\"ascii\"\n\"2519382\";\"Cocentaina\";\"main\"\n\"2519385\";\"Cobisa\";\"main\"\n\"2519402\";\"Ciudad Real\";\"main\"\n\"2519402\";\"S'judad-Real'\";\"other\"\n\"2519402\";\"Villa-Real\";\"other\"\n\"2519402\";\"lei a er cheng\";\"other\"\n\"2519402\";\"Сьюдад-Реаль\";\"other\"\n\"2519402\";\"シウダー・レアル\";\"other\"\n\"2519402\";\"雷阿爾城\";\"other\"\n\"2519421\";\"Cijuela\";\"main\"\n\"2519425\";\"Cieza\";\"main\"\n\"2519425\";\"S'esa\";\"other\"\n\"2519425\";\"Сьеса\";\"other\"\n\"2519436\";\"Churriana de la Vega\";\"main\"\n\"2519436\";\"Churriana\";\"other\"\n\"2519447\";\"Chucena\";\"main\"\n\"2519464\";\"Chiva\";\"main\"\n\"2519464\";\"Xiva de Bunyol\";\"other\"\n\"2519466\";\"Xirivella\";\"main\"\n\"2519466\";\"Chirivel'ja\";\"other\"\n\"2519466\";\"Чиривелья\";\"other\"\n\"2519468\";\"Chirivel\";\"main\"\n\"2519477\";\"Chipiona\";\"main\"\n\"2519477\";\"Chipiana\";\"other\"\n\"2519483\";\"Chinchilla de Monte Aragón\";\"main\"\n\"2519483\";\"Chinchilla de Monte Aragon\";\"ascii\"\n\"2519483\";\"Chinchilla\";\"other\"\n\"2519491\";\"Chimeneas\";\"main\"\n\"2519495\";\"Chilluévar\";\"main\"\n\"2519495\";\"Chilluevar\";\"ascii\"\n\"2519503\";\"Chilches\";\"main\"\n\"2519503\";\"Xilxes\";\"other\"\n\"2519512\";\"Chiclana de Segura\";\"main\"\n\"2519512\";\"Chiclana\";\"other\"\n\"2519513\";\"Chiclana de la Frontera\";\"main\"\n\"2519513\";\"Chiclana\";\"other\"\n\"2519513\";\"Chiklana-de-la-Frontera\";\"other\"\n\"2519513\";\"Чиклана-де-ла-Фронтера\";\"other\"\n\"2519522\";\"Cheste\";\"main\"\n\"2519522\";\"Xest\";\"other\"\n\"2519528\";\"Chelva\";\"main\"\n\"2519528\";\"Xelva\";\"other\"\n\"2519529\";\"Chella\";\"main\"\n\"2519529\";\"Xella\";\"other\"\n\"2519530\";\"Cheles\";\"main\"\n\"2519534\";\"Chauchina\";\"main\"\n\"2519579\";\"Ceuti\";\"main\"\n\"2519632\";\"Cenizate\";\"main\"\n\"2519634\";\"Cenes de la Vega\";\"main\"\n\"2519651\";\"Cehegín\";\"main\"\n\"2519651\";\"Cehegin\";\"ascii\"\n\"2519659\";\"Ceclavín\";\"main\"\n\"2519659\";\"Ceclavin\";\"ascii\"\n\"2519664\";\"Cebolla\";\"main\"\n\"2519672\";\"Cazorla\";\"main\"\n\"2519685\";\"Caudete\";\"main\"\n\"2519685\";\"Cabdet\";\"other\"\n\"2519688\";\"Catral\";\"main\"\n\"2519688\";\"Barrio de Catral\";\"other\"\n\"2519688\";\"Barrio de Catral y Callosa\";\"other\"\n\"2519690\";\"Catarroja\";\"main\"\n\"2519690\";\"Katarrokh\";\"other\"\n\"2519690\";\"Катаррох\";\"other\"\n\"2519694\";\"Catadau\";\"main\"\n\"2519696\";\"Castuera\";\"main\"\n\"2519697\";\"Castro del Río\";\"main\"\n\"2519697\";\"Castro del Rio\";\"ascii\"\n\"2519703\";\"Castril\";\"main\"\n\"2519711\";\"Castillo de Locubín\";\"main\"\n\"2519711\";\"Castillo de Locubin\";\"ascii\"\n\"2519736\";\"Castilléjar\";\"main\"\n\"2519736\";\"Castillejar\";\"ascii\"\n\"2519738\";\"Castilleja de la Cuesta\";\"main\"\n\"2519738\";\"Castilleja\";\"other\"\n\"2519739\";\"Castilleja de Guzmán\";\"main\"\n\"2519739\";\"Castilleja de Guzman\";\"ascii\"\n\"2519746\";\"Castilblanco de los Arroyos\";\"main\"\n\"2519746\";\"Castilblanco\";\"other\"\n\"2519747\";\"Castilblanco\";\"main\"\n\"2519751\";\"Castelló de Rugat\";\"main\"\n\"2519751\";\"Castello de Rugat\";\"ascii\"\n\"2519751\";\"Castellon de Rugat\";\"other\"\n\"2519751\";\"Castellón de Rugat\";\"other\"\n\"2519752\";\"Castelló de la Plana\";\"main\"\n\"2519752\";\"Castello de la Plana\";\"ascii\"\n\"2519752\";\"Castello\";\"other\"\n\"2519752\";\"Castellon\";\"other\"\n\"2519752\";\"Castellon de la Plana\";\"other\"\n\"2519752\";\"Castelló\";\"other\"\n\"2519752\";\"Castellón\";\"other\"\n\"2519752\";\"Castellón de la Plana\";\"other\"\n\"2519752\";\"Kastel'on-de-la-Plana\";\"other\"\n\"2519752\";\"Kastelon de la Plana\";\"other\"\n\"2519752\";\"ka si te li weng-de la pu la na\";\"other\"\n\"2519752\";\"Кастельон-де-ла-Плана\";\"other\"\n\"2519752\";\"Кастељон де ла Плана\";\"other\"\n\"2519752\";\"קאסטלון\";\"other\"\n\"2519752\";\"カステリョン・デ・ラ・プラナ\";\"other\"\n\"2519752\";\"卡斯特利翁-德拉普拉納\";\"other\"\n\"2519762\";\"Castellar de Santiago\";\"main\"\n\"2519763\";\"Castellar de la Frontera\";\"main\"\n\"2519763\";\"Castellar\";\"other\"\n\"2519780\";\"Castañar de Ibor\";\"main\"\n\"2519780\";\"Castanar de Ibor\";\"ascii\"\n\"2519783\";\"Castalla\";\"main\"\n\"2519786\";\"Casinos\";\"main\"\n\"2519861\";\"Casatejada\";\"main\"\n\"2519879\";\"Casasimarro\";\"main\"\n\"2519880\";\"Casas Ibáñez\";\"main\"\n\"2519880\";\"Casas Ibanez\";\"ascii\"\n\"2519937\";\"Casas de Juan Núñez\";\"main\"\n\"2519937\";\"Casas de Juan Nunez\";\"ascii\"\n\"2519946\";\"Casas de Fernando Alonso\";\"main\"\n\"2519946\";\"Casas de los Teatinos\";\"other\"\n\"2519949\";\"Casas de Don Pedro\";\"main\"\n\"2519954\";\"Casas de Benítez\";\"main\"\n\"2519954\";\"Casas de Benitez\";\"ascii\"\n\"2519979\";\"Casariche\";\"main\"\n\"2519980\";\"Casares\";\"main\"\n\"2519985\";\"Casar de Cáceres\";\"main\"\n\"2519985\";\"Casar de Caceres\";\"ascii\"\n\"2519988\";\"Casarabonela\";\"main\"\n\"2520045\";\"Casabermeja\";\"main\"\n\"2520052\";\"Cartaya\";\"main\"\n\"2520053\";\"Estación de Cártama\";\"main\"\n\"2520053\";\"Estacion de Cartama\";\"ascii\"\n\"2520055\";\"Cártama\";\"main\"\n\"2520055\";\"Cartama\";\"ascii\"\n\"2520058\";\"Cartagena\";\"main\"\n\"2520058\";\"Carthagene\";\"other\"\n\"2520058\";\"Carthago Nova\";\"other\"\n\"2520058\";\"Carthagène\";\"other\"\n\"2520058\";\"Kartagena\";\"other\"\n\"2520058\";\"Kartakhena\";\"other\"\n\"2520058\";\"karutahena\";\"other\"\n\"2520058\";\"qrthnh\";\"other\"\n\"2520058\";\"Картагена\";\"other\"\n\"2520058\";\"Картахена\";\"other\"\n\"2520058\";\"קרטחנה\";\"other\"\n\"2520058\";\"カルタヘナ\";\"other\"\n\"2520064\";\"Carrizosa\";\"main\"\n\"2520071\";\"Carrión de los Céspedes\";\"main\"\n\"2520071\";\"Carrion de los Cespedes\";\"ascii\"\n\"2520072\";\"Carrión de Calatrava\";\"main\"\n\"2520072\";\"Carrion de Calatrava\";\"ascii\"\n\"2520072\";\"Carrion\";\"other\"\n\"2520072\";\"Carrión\";\"other\"\n\"2520118\";\"Carmona\";\"main\"\n\"2520118\";\"Karmona\";\"other\"\n\"2520118\";\"Кармона\";\"other\"\n\"2520121\";\"Carlet\";\"main\"\n\"2520134\";\"Cardeña\";\"main\"\n\"2520134\";\"Cardena\";\"ascii\"\n\"2520134\";\"Cardenas\";\"other\"\n\"2520134\";\"Cárdenas\";\"other\"\n\"2520144\";\"Càrcer\";\"main\"\n\"2520144\";\"Carcer\";\"ascii\"\n\"2520144\";\"Cárcer\";\"other\"\n\"2520150\";\"Carcaixent\";\"main\"\n\"2520150\";\"Carcagente\";\"other\"\n\"2520150\";\"Carcaixen\";\"other\"\n\"2520150\";\"Carcaixén\";\"other\"\n\"2520150\";\"Karkakhente\";\"other\"\n\"2520150\";\"Каркахенте\";\"other\"\n\"2520151\";\"Carcabuey\";\"main\"\n\"2520163\";\"Carboneras\";\"main\"\n\"2520171\";\"Caravaca\";\"main\"\n\"2520200\";\"Capdepera\";\"main\"\n\"2520209\";\"Cantoria\";\"main\"\n\"2520215\";\"Cantillana\";\"main\"\n\"2520248\";\"Canjáyar\";\"main\"\n\"2520248\";\"Canjayar\";\"ascii\"\n\"2520248\";\"Lanjavar\";\"other\"\n\"2520254\";\"Canillas de Aceituno\";\"main\"\n\"2520254\";\"Canillas\";\"other\"\n\"2520254\";\"Canillas de Aceituna\";\"other\"\n\"2520261\";\"Caniles\";\"main\"\n\"2520266\";\"Cañete la Real\";\"main\"\n\"2520266\";\"Canete la Real\";\"ascii\"\n\"2520268\";\"Cañete de las Torres\";\"main\"\n\"2520268\";\"Canete de las Torres\";\"ascii\"\n\"2520271\";\"Canet d'En Berenguer\";\"main\"\n\"2520271\";\"Canet de Berenguer\";\"other\"\n\"2520272\";\"Canena\";\"main\"\n\"2520283\";\"Candelaria\";\"main\"\n\"2520283\";\"Cancelaria\";\"other\"\n\"2520283\";\"Kandelarii\";\"other\"\n\"2520283\";\"Канделарии\";\"other\"\n\"2520295\";\"Cañaveral\";\"main\"\n\"2520295\";\"Canaveral\";\"ascii\"\n\"2520314\";\"Cañamero\";\"main\"\n\"2520314\";\"Canamero\";\"ascii\"\n\"2520314\";\"Canamera\";\"other\"\n\"2520314\";\"Cañamera\";\"other\"\n\"2520320\";\"Canals\";\"main\"\n\"2520320\";\"Canals de Canolas\";\"other\"\n\"2520320\";\"Canals de Cañolas\";\"other\"\n\"2520344\";\"Cañada Rosal\";\"main\"\n\"2520344\";\"Canada Rosal\";\"ascii\"\n\"2520399\";\"Camuñas\";\"main\"\n\"2520399\";\"Camunas\";\"ascii\"\n\"2520401\";\"Campotéjar\";\"main\"\n\"2520401\";\"Campotejar\";\"ascii\"\n\"2520402\";\"Campos del Río\";\"main\"\n\"2520402\";\"Campos del Rio\";\"ascii\"\n\"2520405\";\"Camporrobles\";\"main\"\n\"2520413\";\"Campo de Criptana\";\"main\"\n\"2520428\";\"Campillos\";\"main\"\n\"2520430\";\"Campillo de Llerena\";\"main\"\n\"2520435\";\"Campillo de Arenas\";\"main\"\n\"2520436\";\"Campillo de Altobuey\";\"main\"\n\"2520447\";\"el Campello\";\"main\"\n\"2520447\";\"Campello\";\"other\"\n\"2520447\";\"El Campello\";\"other\"\n\"2520453\";\"Campanet\";\"main\"\n\"2520456\";\"Campanario\";\"main\"\n\"2520476\";\"Cambil\";\"main\"\n\"2520476\";\"Cambril\";\"other\"\n\"2520477\";\"Camas\";\"main\"\n\"2520477\";\"Kamas\";\"other\"\n\"2520477\";\"Камас\";\"other\"\n\"2520493\";\"Calvià\";\"main\"\n\"2520493\";\"Calvia\";\"ascii\"\n\"2520496\";\"Calp\";\"main\"\n\"2520496\";\"Calpe\";\"other\"\n\"2520502\";\"Callosa de Segura\";\"main\"\n\"2520528\";\"Calera y Chozas\";\"main\"\n\"2520528\";\"Calera\";\"other\"\n\"2520529\";\"Calera de León\";\"main\"\n\"2520529\";\"Calera de Leon\";\"ascii\"\n\"2520558\";\"Calasparra\";\"main\"\n\"2520566\";\"Calañas\";\"main\"\n\"2520566\";\"Calanas\";\"ascii\"\n\"2520568\";\"Calamonte\";\"main\"\n\"2520592\";\"Cájar\";\"main\"\n\"2520592\";\"Cajar\";\"ascii\"\n\"2520600\";\"Cadiz\";\"main\"\n\"2520600\";\"Cadice\";\"other\"\n\"2520600\";\"Cadis\";\"other\"\n\"2520600\";\"Cadix\";\"other\"\n\"2520600\";\"Cai\";\"other\"\n\"2520600\";\"Cádice\";\"other\"\n\"2520600\";\"Cádis\";\"other\"\n\"2520600\";\"Cádiz\";\"other\"\n\"2520600\";\"Gadeira\";\"other\"\n\"2520600\";\"Gades\";\"other\"\n\"2520600\";\"Gadir\";\"other\"\n\"2520600\";\"Iungadir\";\"other\"\n\"2520600\";\"Kadis\";\"other\"\n\"2520600\";\"Kadiz\";\"other\"\n\"2520600\";\"Kadizo\";\"other\"\n\"2520600\";\"Kadyks\";\"other\"\n\"2520600\";\"La tacita de plata\";\"other\"\n\"2520600\";\"jia de si\";\"other\"\n\"2520600\";\"kadi s\";\"other\"\n\"2520600\";\"kadisu\";\"other\"\n\"2520600\";\"qads\";\"other\"\n\"2520600\";\"Кадиз\";\"other\"\n\"2520600\";\"Кадис\";\"other\"\n\"2520600\";\"قادس\";\"other\"\n\"2520600\";\"กาดิซ\";\"other\"\n\"2520600\";\"カディス\";\"other\"\n\"2520600\";\"加的斯\";\"other\"\n\"2520601\";\"Cádiar\";\"main\"\n\"2520601\";\"Cadiar\";\"ascii\"\n\"2520611\";\"Cáceres\";\"main\"\n\"2520611\";\"Caceres\";\"ascii\"\n\"2520611\";\"Càceres\";\"other\"\n\"2520611\";\"Kaseres\";\"other\"\n\"2520611\";\"Norba Caesarina\";\"other\"\n\"2520611\";\"kaseresu\";\"other\"\n\"2520611\";\"qsrs\";\"other\"\n\"2520611\";\"Касерес\";\"other\"\n\"2520611\";\"קסרס\";\"other\"\n\"2520611\";\"カセレス\";\"other\"\n\"2520641\";\"Cabra del Santo Cristo\";\"main\"\n\"2520641\";\"Cabra de Santo Cristo\";\"other\"\n\"2520641\";\"Cabra del San Cristo\";\"other\"\n\"2520645\";\"Cabra\";\"main\"\n\"2520645\";\"Kabra\";\"other\"\n\"2520645\";\"Кабра\";\"other\"\n\"2520666\";\"Cabeza la Vaca\";\"main\"\n\"2520672\";\"Cabeza del Buey\";\"main\"\n\"2520672\";\"Cabeza de Buey\";\"other\"\n\"2520672\";\"Cabezabuei\";\"other\"\n\"2520698\";\"Busot\";\"main\"\n\"2520700\";\"Burujón\";\"main\"\n\"2520700\";\"Burujon\";\"ascii\"\n\"2520709\";\"Burriana\";\"main\"\n\"2520709\";\"Borriana\";\"other\"\n\"2520712\";\"Burjassot\";\"main\"\n\"2520712\";\"Bujursot\";\"other\"\n\"2520712\";\"Burkhasot\";\"other\"\n\"2520712\";\"Бурхасот\";\"other\"\n\"2520713\";\"Burguillos de Toledo\";\"main\"\n\"2520713\";\"Burguillos\";\"other\"\n\"2520714\";\"Burguillos del Cerro\";\"main\"\n\"2520714\";\"Burguillos\";\"other\"\n\"2520715\";\"Burguillos\";\"main\"\n\"2520724\";\"Bunyola\";\"main\"\n\"2520726\";\"Buñol\";\"main\"\n\"2520726\";\"Bunol\";\"ascii\"\n\"2520726\";\"Bun'ol'\";\"other\"\n\"2520726\";\"Bunyol\";\"other\"\n\"2520726\";\"Буньоль\";\"other\"\n\"2520727\";\"Bullas\";\"main\"\n\"2520727\";\"Bulles\";\"other\"\n\"2520735\";\"Bujalance\";\"main\"\n\"2520745\";\"Búger\";\"main\"\n\"2520745\";\"Buger\";\"ascii\"\n\"2520760\";\"Buenavista del Norte\";\"main\"\n\"2520760\";\"Buehnavista del' Norte\";\"other\"\n\"2520760\";\"Buenavista\";\"other\"\n\"2520760\";\"Буенависта дел Норте\";\"other\"\n\"2520760\";\"Буэнависта дель Норте\";\"other\"\n\"2520790\";\"Brozas\";\"main\"\n\"2520798\";\"Brenes\";\"main\"\n\"2520799\";\"Breña Baja\";\"main\"\n\"2520799\";\"Brena Baja\";\"ascii\"\n\"2520799\";\"San Jose\";\"other\"\n\"2520799\";\"San José\";\"other\"\n\"2520800\";\"Breña Alta\";\"main\"\n\"2520800\";\"Brena Alta\";\"ascii\"\n\"2520805\";\"Brazatortas\";\"main\"\n\"2520832\";\"Bornos\";\"main\"\n\"2520833\";\"Bormujos\";\"main\"\n\"2520849\";\"Bonete\";\"main\"\n\"2520850\";\"Bonares\";\"main\"\n\"2520869\";\"Bollullos par del Condado\";\"main\"\n\"2520869\";\"Bollullos\";\"other\"\n\"2520870\";\"Bollullos de la Mitación\";\"main\"\n\"2520870\";\"Bollullos de la Mitacion\";\"ascii\"\n\"2520874\";\"Bolbaite\";\"main\"\n\"2520874\";\"Bolbait\";\"other\"\n\"2520875\";\"Bolaños de Calatrava\";\"main\"\n\"2520875\";\"Bolanos de Calatrava\";\"ascii\"\n\"2520875\";\"Bolanos\";\"other\"\n\"2520875\";\"Bolaños\";\"other\"\n\"2520885\";\"Bogarra\";\"main\"\n\"2520887\";\"Bodonal de la Sierra\";\"main\"\n\"2520898\";\"Bocairent\";\"main\"\n\"2520898\";\"Bocairente\";\"other\"\n\"2520940\";\"Blanca\";\"main\"\n\"2520943\";\"Binissalem\";\"main\"\n\"2520955\";\"Bigastro\";\"main\"\n\"2520955\";\"Bigastre\";\"other\"\n\"2520957\";\"Bienvenida\";\"main\"\n\"2520964\";\"Biar\";\"main\"\n\"2520968\";\"Bétera\";\"main\"\n\"2520968\";\"Betera\";\"ascii\"\n\"2521015\";\"Berlanga\";\"main\"\n\"2521016\";\"Berja\";\"main\"\n\"2521044\";\"Benitachell\";\"main\"\n\"2521044\";\"El Poble Nou de Benitatxell\";\"other\"\n\"2521049\";\"Benisanó\";\"main\"\n\"2521049\";\"Benisano\";\"ascii\"\n\"2521049\";\"Benissano\";\"other\"\n\"2521049\";\"Benissanó\";\"other\"\n\"2521050\";\"Benissa\";\"main\"\n\"2521052\";\"Benirredrà\";\"main\"\n\"2521052\";\"Benirredra\";\"ascii\"\n\"2521052\";\"Benirredrá\";\"other\"\n\"2521055\";\"Beniparrell\";\"main\"\n\"2521060\";\"Benimodo\";\"main\"\n\"2521072\";\"Benijófar\";\"main\"\n\"2521072\";\"Benijofar\";\"ascii\"\n\"2521075\";\"Benigànim\";\"main\"\n\"2521075\";\"Beniganim\";\"ascii\"\n\"2521075\";\"Benigánim\";\"other\"\n\"2521080\";\"Benifaió\";\"main\"\n\"2521080\";\"Benifaio\";\"ascii\"\n\"2521080\";\"Banifaio\";\"other\"\n\"2521080\";\"Banifaió\";\"other\"\n\"2521080\";\"Benifayo\";\"other\"\n\"2521080\";\"Benifayó\";\"other\"\n\"2521085\";\"Benifairó de les Valls\";\"main\"\n\"2521085\";\"Benifairo de les Valls\";\"ascii\"\n\"2521085\";\"Benifairo de Les Valls\";\"other\"\n\"2521085\";\"Benifairó de Les Valls\";\"other\"\n\"2521086\";\"Beniel\";\"main\"\n\"2521088\";\"Benidorm\";\"main\"\n\"2521088\";\"Бенидорм\";\"other\"\n\"2521089\";\"Benidoleig\";\"main\"\n\"2521096\";\"Beniarrés\";\"main\"\n\"2521096\";\"Beniarres\";\"ascii\"\n\"2521097\";\"Beniarjó\";\"main\"\n\"2521097\";\"Beniarjo\";\"ascii\"\n\"2521100\";\"Beniarbeig\";\"main\"\n\"2521104\";\"Benferri\";\"main\"\n\"2521105\";\"Benetússer\";\"main\"\n\"2521105\";\"Benetusser\";\"ascii\"\n\"2521106\";\"Benejúzar\";\"main\"\n\"2521106\";\"Benejuzar\";\"ascii\"\n\"2521106\";\"Benejusser\";\"other\"\n\"2521106\";\"Benejússer\";\"other\"\n\"2521108\";\"Beneixama\";\"main\"\n\"2521108\";\"Benejama\";\"other\"\n\"2521123\";\"Benaoján\";\"main\"\n\"2521123\";\"Benaojan\";\"ascii\"\n\"2521128\";\"Benamocarra\";\"main\"\n\"2521130\";\"Benamejí\";\"main\"\n\"2521130\";\"Benameji\";\"ascii\"\n\"2521131\";\"Benamaurel\";\"main\"\n\"2521132\";\"Benamargosa\";\"main\"\n\"2521132\";\"Benam\";\"other\"\n\"2521136\";\"Benalúa de las Villas\";\"main\"\n\"2521136\";\"Benalua de las Villas\";\"ascii\"\n\"2521137\";\"Benalúa de Guadix\";\"main\"\n\"2521137\";\"Benalua de Guadix\";\"ascii\"\n\"2521139\";\"Benalmádena\";\"main\"\n\"2521139\";\"Benalmadena\";\"ascii\"\n\"2521139\";\"Benal'madena\";\"other\"\n\"2521139\";\"Бенальмадена\";\"other\"\n\"2521146\";\"Benahavís\";\"main\"\n\"2521146\";\"Benahavis\";\"ascii\"\n\"2521147\";\"Benahadux\";\"main\"\n\"2521147\";\"Benahadur\";\"other\"\n\"2521148\";\"Benaguasil\";\"main\"\n\"2521148\";\"Benaguacil\";\"other\"\n\"2521154\";\"Benacazón\";\"main\"\n\"2521154\";\"Benacazon\";\"ascii\"\n\"2521159\";\"Belvis de la Jara\";\"main\"\n\"2521165\";\"Belmonte\";\"main\"\n\"2521166\";\"Bélmez de la Moraleda\";\"main\"\n\"2521166\";\"Belmez de la Moraleda\";\"ascii\"\n\"2521167\";\"Bélmez\";\"main\"\n\"2521167\";\"Belmez\";\"ascii\"\n\"2521172\";\"Bellreguard\";\"main\"\n\"2521172\";\"Bellreguart\";\"other\"\n\"2521183\";\"Belalcázar\";\"main\"\n\"2521183\";\"Belalcazar\";\"ascii\"\n\"2521183\";\"Balalcazar\";\"other\"\n\"2521192\";\"Begíjar\";\"main\"\n\"2521192\";\"Begijar\";\"ascii\"\n\"2521207\";\"Beas de Segura\";\"main\"\n\"2521209\";\"Beas de Granada\";\"main\"\n\"2521212\";\"Beas\";\"main\"\n\"2521215\";\"Baza\";\"main\"\n\"2521215\";\"База\";\"other\"\n\"2521273\";\"Barrax\";\"main\"\n\"2521309\";\"Barlovento\";\"main\"\n\"2521311\";\"Barx\";\"main\"\n\"2521311\";\"Barig\";\"other\"\n\"2521311\";\"Bárig\";\"other\"\n\"2521316\";\"Bargas\";\"main\"\n\"2521325\";\"Barxeta\";\"main\"\n\"2521325\";\"Barcheta\";\"other\"\n\"2521329\";\"Barcarrota\";\"main\"\n\"2521335\";\"Barbate de Franco\";\"main\"\n\"2521335\";\"Barbate\";\"other\"\n\"2521351\";\"Baños de la Encina\";\"main\"\n\"2521351\";\"Banos de la Encina\";\"ascii\"\n\"2521351\";\"Banos de Encina\";\"other\"\n\"2521351\";\"Baños de Encina\";\"other\"\n\"2521390\";\"Balazote\";\"main\"\n\"2521410\";\"Bailén\";\"main\"\n\"2521410\";\"Bailen\";\"ascii\"\n\"2521413\";\"Baeza\";\"main\"\n\"2521415\";\"Baena\";\"main\"\n\"2521415\";\"Baehna\";\"other\"\n\"2521415\";\"Баэна\";\"other\"\n\"2521417\";\"Badolatosa\";\"main\"\n\"2521420\";\"Badajoz\";\"main\"\n\"2521420\";\"Ara Pacis Augustalis\";\"other\"\n\"2521420\";\"Badahozo\";\"other\"\n\"2521420\";\"Badakhos\";\"other\"\n\"2521420\";\"Badaĥozo\";\"other\"\n\"2521420\";\"badahosu\";\"other\"\n\"2521420\";\"badakhwz\";\"other\"\n\"2521420\";\"Бадахос\";\"other\"\n\"2521420\";\"باداخوز\";\"other\"\n\"2521420\";\"バダホス\";\"other\"\n\"2521436\";\"Azuaga\";\"main\"\n\"2521439\";\"Aznalcóllar\";\"main\"\n\"2521439\";\"Aznalcollar\";\"ascii\"\n\"2521439\";\"Aznacollar\";\"other\"\n\"2521439\";\"Aznacóllar\";\"other\"\n\"2521440\";\"Aznalcázar\";\"main\"\n\"2521440\";\"Aznalcazar\";\"ascii\"\n\"2521451\";\"Ayora\";\"main\"\n\"2521451\";\"Aiora\";\"other\"\n\"2521455\";\"Aielo de Malferit\";\"main\"\n\"2521455\";\"Ayelo de Malferit\";\"other\"\n\"2521456\";\"Ayamonte\";\"main\"\n\"2521485\";\"Atarfe\";\"main\"\n\"2521510\";\"Aspe\";\"main\"\n\"2521510\";\"Asp\";\"other\"\n\"2521519\";\"Arucas\";\"main\"\n\"2521519\";\"Arukas\";\"other\"\n\"2521519\";\"Арукас\";\"other\"\n\"2521521\";\"Artenara\";\"main\"\n\"2521528\";\"Artana\";\"main\"\n\"2521528\";\"Arlana\";\"other\"\n\"2521534\";\"Artà\";\"main\"\n\"2521534\";\"Arta\";\"ascii\"\n\"2521549\";\"Arroyo de San Serván\";\"main\"\n\"2521549\";\"Arroyo de San Servan\";\"ascii\"\n\"2521550\";\"Arroyo del Ojanco\";\"main\"\n\"2521555\";\"Arroyo de la Luz\";\"main\"\n\"2521555\";\"Arroyo del Puerco\";\"other\"\n\"2521566\";\"Arriate\";\"main\"\n\"2521570\";\"Arrecife\";\"main\"\n\"2521570\";\"Aresife\";\"other\"\n\"2521570\";\"Аресифе\";\"other\"\n\"2521577\";\"Arquillos\";\"main\"\n\"2521582\";\"Arona\";\"main\"\n\"2521582\";\"Aron\";\"other\"\n\"2521582\";\"Арон\";\"other\"\n\"2521590\";\"Armilla\";\"main\"\n\"2521593\";\"Arjonilla\";\"main\"\n\"2521594\";\"Arjona\";\"main\"\n\"2521602\";\"Cruce de Arinaga\";\"main\"\n\"2521602\";\"Puerto de Arinaga\";\"other\"\n\"2521619\";\"Argamasilla de Calatrava\";\"main\"\n\"2521620\";\"Argamasilla de Alba\";\"main\"\n\"2521636\";\"Arenas de San Juan\";\"main\"\n\"2521637\";\"Arenas del Rey\";\"main\"\n\"2521642\";\"Arenas\";\"main\"\n\"2521661\";\"Ardales\";\"main\"\n\"2521665\";\"Arcos de la Frontera\";\"main\"\n\"2521665\";\"Arcos\";\"other\"\n\"2521665\";\"Arkos-de-la-Frontera\";\"other\"\n\"2521665\";\"Аркос-де-ла-Фронтера\";\"other\"\n\"2521673\";\"Archidona\";\"main\"\n\"2521676\";\"Archena\";\"main\"\n\"2521683\";\"Arboleas\";\"main\"\n\"2521692\";\"Arafo\";\"main\"\n\"2521692\";\"Arato\";\"other\"\n\"2521694\";\"Aracena\";\"main\"\n\"2521694\";\"Arasena\";\"other\"\n\"2521694\";\"Арасена\";\"other\"\n\"2521706\";\"Antigua\";\"main\"\n\"2521706\";\"La Antigua\";\"other\"\n\"2521710\";\"Antequera\";\"main\"\n\"2521710\";\"Anteguera\";\"other\"\n\"2521710\";\"Antekera\";\"other\"\n\"2521710\";\"Антекера\";\"other\"\n\"2521712\";\"Antella\";\"main\"\n\"2521714\";\"Antas\";\"main\"\n\"2521718\";\"Añover de Tajo\";\"main\"\n\"2521718\";\"Anover de Tajo\";\"ascii\"\n\"2521721\";\"Añora\";\"main\"\n\"2521721\";\"Anora\";\"ascii\"\n\"2521722\";\"Anna\";\"main\"\n\"2521738\";\"Andújar\";\"main\"\n\"2521738\";\"Andujar\";\"ascii\"\n\"2521741\";\"Andratx\";\"main\"\n\"2521793\";\"Altura\";\"main\"\n\"2521804\";\"Altea\";\"main\"\n\"2521824\";\"L'Alqueria de la Comtessa\";\"main\"\n\"2521824\";\"Alqueria de la Condesa\";\"other\"\n\"2521824\";\"Alquería de la Condesa\";\"other\"\n\"2521836\";\"Alpera\";\"main\"\n\"2521838\";\"Alozaina\";\"main\"\n\"2521839\";\"Alosno\";\"main\"\n\"2521840\";\"Alora\";\"main\"\n\"2521845\";\"Almussafes\";\"main\"\n\"2521845\";\"Almusafes\";\"other\"\n\"2521847\";\"Almuñécar\";\"main\"\n\"2521847\";\"Almunecar\";\"ascii\"\n\"2521855\";\"Almoradí\";\"main\"\n\"2521855\";\"Almoradi\";\"ascii\"\n\"2521855\";\"Almordi\";\"other\"\n\"2521857\";\"Almonte\";\"main\"\n\"2521863\";\"Almoines\";\"main\"\n\"2521864\";\"Almoharín\";\"main\"\n\"2521864\";\"Almoharin\";\"ascii\"\n\"2521866\";\"Almogía\";\"main\"\n\"2521866\";\"Almogia\";\"ascii\"\n\"2521866\";\"Almojia\";\"other\"\n\"2521867\";\"Almodóvar del Río\";\"main\"\n\"2521867\";\"Almodovar del Rio\";\"ascii\"\n\"2521869\";\"Almodóvar del Campo\";\"main\"\n\"2521869\";\"Almodovar del Campo\";\"ascii\"\n\"2521869\";\"Almodovar\";\"other\"\n\"2521886\";\"Almería\";\"main\"\n\"2521886\";\"Almeria\";\"ascii\"\n\"2521886\";\"Al'merija\";\"other\"\n\"2521886\";\"Almerija\";\"other\"\n\"2521886\";\"Almerio\";\"other\"\n\"2521886\";\"Unci\";\"other\"\n\"2521886\";\"almryt\";\"other\"\n\"2521886\";\"arumeria\";\"other\"\n\"2521886\";\"Алмерија\";\"other\"\n\"2521886\";\"Альмерия\";\"other\"\n\"2521886\";\"المرية\";\"other\"\n\"2521886\";\"アルメリア\";\"other\"\n\"2521887\";\"Almensilla\";\"main\"\n\"2521893\";\"Almendralejo\";\"main\"\n\"2521893\";\"Al'mendralekho\";\"other\"\n\"2521893\";\"Альмендралехо\";\"other\"\n\"2521894\";\"Almendral\";\"main\"\n\"2521899\";\"Almenara\";\"main\"\n\"2521905\";\"Almedinilla\";\"main\"\n\"2521909\";\"Almassora\";\"main\"\n\"2521909\";\"Almazora\";\"other\"\n\"2521913\";\"Almargen\";\"main\"\n\"2521917\";\"Almaraz\";\"main\"\n\"2521923\";\"Almansa\";\"main\"\n\"2521923\";\"Al'mansa\";\"other\"\n\"2521923\";\"Альманса\";\"other\"\n\"2521928\";\"Almagro\";\"main\"\n\"2521945\";\"Almáchar\";\"main\"\n\"2521945\";\"Almachar\";\"ascii\"\n\"2521964\";\"Aljaraque\";\"main\"\n\"2521972\";\"Aliseda\";\"main\"\n\"2521978\";\"Alicante\";\"main\"\n\"2521978\";\"Akra Leuke\";\"other\"\n\"2521978\";\"Alacant\";\"other\"\n\"2521978\";\"Alakanto\";\"other\"\n\"2521978\";\"Alikante\";\"other\"\n\"2521978\";\"Alíkante\";\"other\"\n\"2521978\";\"Lucentum\";\"other\"\n\"2521978\";\"a li kan te\";\"other\"\n\"2521978\";\"alykanth\";\"other\"\n\"2521978\";\"arikante\";\"other\"\n\"2521978\";\"Аликанте\";\"other\"\n\"2521978\";\"أليكانته\";\"other\"\n\"2521978\";\"アリカンテ\";\"other\"\n\"2521978\";\"阿利坎特\";\"other\"\n\"2521981\";\"Alía\";\"main\"\n\"2521981\";\"Alia\";\"ascii\"\n\"2521984\";\"Alhendín\";\"main\"\n\"2521984\";\"Alhendin\";\"ascii\"\n\"2521984\";\"C/ ALTA\";\"other\"\n\"2521985\";\"Alhaurín el Grande\";\"main\"\n\"2521985\";\"Alhaurin el Grande\";\"ascii\"\n\"2521986\";\"Alhaurín de la Torre\";\"main\"\n\"2521986\";\"Alhaurin de la Torre\";\"ascii\"\n\"2521991\";\"Alhambra\";\"main\"\n\"2521992\";\"Alhama de Murcia\";\"main\"\n\"2521992\";\"Alhama\";\"other\"\n\"2521993\";\"Alhama de Granada\";\"main\"\n\"2521993\";\"Alhama\";\"other\"\n\"2521994\";\"Alhama de Almería\";\"main\"\n\"2521994\";\"Alhama de Almeria\";\"ascii\"\n\"2521994\";\"Alhama\";\"other\"\n\"2521999\";\"Algueña\";\"main\"\n\"2521999\";\"Alguena\";\"ascii\"\n\"2521999\";\"L'Alguenya\";\"other\"\n\"2522000\";\"Alguazas\";\"main\"\n\"2522001\";\"Algorfa\";\"main\"\n\"2522005\";\"Algodonales\";\"main\"\n\"2522007\";\"Alginet\";\"main\"\n\"2522012\";\"Algemesí\";\"main\"\n\"2522012\";\"Algemesi\";\"ascii\"\n\"2522013\";\"Algeciras\";\"main\"\n\"2522013\";\"Al Jezita\";\"other\"\n\"2522013\";\"Algecires\";\"other\"\n\"2522013\";\"Algesiras\";\"other\"\n\"2522013\";\"Algésiras\";\"other\"\n\"2522013\";\"Alkhesiras\";\"other\"\n\"2522013\";\"Alxeciras - Algeciras\";\"other\"\n\"2522013\";\"aruheshirasu\";\"other\"\n\"2522013\";\"Алхесирас\";\"other\"\n\"2522013\";\"アルヘシラス\";\"other\"\n\"2522019\";\"Algarrobo\";\"main\"\n\"2522019\";\"Algarrobe\";\"other\"\n\"2522023\";\"Algarinejo\";\"main\"\n\"2522023\";\"Algarmejo\";\"other\"\n\"2522031\";\"Algar\";\"main\"\n\"2522032\";\"Algámitas\";\"main\"\n\"2522032\";\"Algamitas\";\"ascii\"\n\"2522036\";\"Algaida\";\"main\"\n\"2522046\";\"Alfarrasí\";\"main\"\n\"2522046\";\"Alfarrasi\";\"ascii\"\n\"2522046\";\"Alfarrassi\";\"other\"\n\"2522046\";\"Alfarrassí\";\"other\"\n\"2522047\";\"Alfarp\";\"main\"\n\"2522047\";\"Alfarb\";\"other\"\n\"2522050\";\"Alfarnate\";\"main\"\n\"2522052\";\"Alfara del Patriarca\";\"main\"\n\"2522052\";\"Alfara\";\"other\"\n\"2522057\";\"Alfafar\";\"main\"\n\"2522058\";\"Alfacar\";\"main\"\n\"2522061\";\"Aledo\";\"main\"\n\"2522072\";\"Aldea del Rey\";\"main\"\n\"2522077\";\"Aldaia\";\"main\"\n\"2522077\";\"Al'dajja\";\"other\"\n\"2522077\";\"Aldaya\";\"other\"\n\"2522077\";\"Альдайя\";\"other\"\n\"2522079\";\"Alcuéscar\";\"main\"\n\"2522079\";\"Alcuescar\";\"ascii\"\n\"2522084\";\"L'Alcúdia de Crespìns\";\"main\"\n\"2522084\";\"L'Alcudia de Crespins\";\"ascii\"\n\"2522084\";\"Alcudia de Crespins\";\"other\"\n\"2522085\";\"L'Alcúdia\";\"main\"\n\"2522085\";\"L'Alcudia\";\"ascii\"\n\"2522085\";\"Alcudia\";\"other\"\n\"2522085\";\"Alcudia de Carlet\";\"other\"\n\"2522091\";\"Alcúdia\";\"main\"\n\"2522091\";\"Alcudia\";\"ascii\"\n\"2522098\";\"Alcoi\";\"main\"\n\"2522098\";\"Al'ka\";\"other\"\n\"2522098\";\"Alcoi/Alcoy\";\"other\"\n\"2522098\";\"Alcoy\";\"other\"\n\"2522098\";\"Alcòi\";\"other\"\n\"2522098\";\"Алька\";\"other\"\n\"2522112\";\"Alconchel\";\"main\"\n\"2522117\";\"Alcolea del Río\";\"main\"\n\"2522117\";\"Alcolea del Rio\";\"ascii\"\n\"2522117\";\"Alcolea\";\"other\"\n\"2522118\";\"Alcolea de Calatrava\";\"main\"\n\"2522121\";\"Alcolea\";\"main\"\n\"2522129\";\"Alzira\";\"main\"\n\"2522129\";\"Al'sira\";\"other\"\n\"2522129\";\"Alcira\";\"other\"\n\"2522129\";\"Альсира\";\"other\"\n\"2522131\";\"Alcázar de San Juan\";\"main\"\n\"2522131\";\"Alcazar de San Juan\";\"ascii\"\n\"2522131\";\"Al'kasar-de-San-Khuan\";\"other\"\n\"2522131\";\"Alcaraz de San Juan\";\"other\"\n\"2522131\";\"Alcazar\";\"other\"\n\"2522131\";\"Alcázar\";\"other\"\n\"2522131\";\"Алькасар-де-Сан-Хуан\";\"other\"\n\"2522137\";\"Alcaudete\";\"main\"\n\"2522138\";\"Alcaucín\";\"main\"\n\"2522138\";\"Alcaucin\";\"ascii\"\n\"2522143\";\"Alcaraz\";\"main\"\n\"2522146\";\"Alcaracejos\";\"main\"\n\"2522146\";\"Alcaraces\";\"other\"\n\"2522146\";\"Alcarazejos\";\"other\"\n\"2522152\";\"Alcantarilla\";\"main\"\n\"2522152\";\"Al'kantaril'ja\";\"other\"\n\"2522152\";\"Алькантарилья\";\"other\"\n\"2522153\";\"Alcàntera de Xúquer\";\"main\"\n\"2522153\";\"Alcantera de Xuquer\";\"ascii\"\n\"2522153\";\"Alcantara de Jucar\";\"other\"\n\"2522153\";\"Alcántara de Júcar\";\"other\"\n\"2522155\";\"Alcántara\";\"main\"\n\"2522155\";\"Alcantara\";\"ascii\"\n\"2522155\";\"Bruecke von Alcantara\";\"other\"\n\"2522155\";\"Brücke von Alcántara\";\"other\"\n\"2522159\";\"Alcalalí\";\"main\"\n\"2522159\";\"Alcalali\";\"ascii\"\n\"2522159\";\"benarossa gardens\";\"other\"\n\"2522160\";\"Alcalá la Real\";\"main\"\n\"2522160\";\"Alcala la Real\";\"ascii\"\n\"2522160\";\"Al'kala-la-Real'\";\"other\"\n\"2522160\";\"Алькала-ла-Реаль\";\"other\"\n\"2522161\";\"Alcalá del Valle\";\"main\"\n\"2522161\";\"Alcala del Valle\";\"ascii\"\n\"2522162\";\"Alcalá de los Gazules\";\"main\"\n\"2522162\";\"Alcala de los Gazules\";\"ascii\"\n\"2522163\";\"Alcalá del Júcar\";\"main\"\n\"2522163\";\"Alcala del Jucar\";\"ascii\"\n\"2522163\";\"Alcala de Jucar\";\"other\"\n\"2522163\";\"Alcalá de Jucar\";\"other\"\n\"2522165\";\"Alcalá de Guadaira\";\"main\"\n\"2522165\";\"Alcala de Guadaira\";\"ascii\"\n\"2522165\";\"Al'kala-de-Gvadaira\";\"other\"\n\"2522165\";\"Alcalá de Guadaíra\";\"other\"\n\"2522165\";\"Алькала-де-Гвадаира\";\"other\"\n\"2522179\";\"Alcàsser\";\"main\"\n\"2522179\";\"Alcasser\";\"ascii\"\n\"2522183\";\"Alburquerque\";\"main\"\n\"2522185\";\"Albuñuelas\";\"main\"\n\"2522185\";\"Albunuelas\";\"ascii\"\n\"2522187\";\"Albuñol\";\"main\"\n\"2522187\";\"Albunol\";\"ascii\"\n\"2522191\";\"Albuixech\";\"main\"\n\"2522191\";\"Albuixec\";\"other\"\n\"2522197\";\"Albudeite\";\"main\"\n\"2522200\";\"Albox\";\"main\"\n\"2522203\";\"Alboraya\";\"main\"\n\"2522203\";\"Al'borajja\";\"other\"\n\"2522203\";\"Alboraia\";\"other\"\n\"2522203\";\"Альборайя\";\"other\"\n\"2522208\";\"Albolote\";\"main\"\n\"2522222\";\"Alberic\";\"main\"\n\"2522222\";\"Alberique\";\"other\"\n\"2522228\";\"Albatera\";\"main\"\n\"2522244\";\"Albalat dels Sorells\";\"main\"\n\"2522245\";\"Albalat de la Ribera\";\"main\"\n\"2522247\";\"Albaladejo\";\"main\"\n\"2522247\";\"Albadalejo\";\"other\"\n\"2522250\";\"Albal\";\"main\"\n\"2522251\";\"Albaida del Aljarafe\";\"main\"\n\"2522253\";\"Albaida\";\"main\"\n\"2522258\";\"Albacete\";\"main\"\n\"2522258\";\"Al'basete\";\"other\"\n\"2522258\";\"Albasete\";\"other\"\n\"2522258\";\"albsyt\";\"other\"\n\"2522258\";\"arubasete\";\"other\"\n\"2522258\";\"Албасете\";\"other\"\n\"2522258\";\"Альбасете\";\"other\"\n\"2522258\";\"אלבסטה\";\"other\"\n\"2522258\";\"البسيط\";\"other\"\n\"2522258\";\"アルバセテ\";\"other\"\n\"2522259\";\"Alaior\";\"main\"\n\"2522259\";\"Alayor\";\"other\"\n\"2522261\";\"Alaró\";\"main\"\n\"2522261\";\"Alaro\";\"ascii\"\n\"2522268\";\"Alange\";\"main\"\n\"2522291\";\"Alameda\";\"main\"\n\"2522293\";\"Alajeró\";\"main\"\n\"2522293\";\"Alajero\";\"ascii\"\n\"2522297\";\"Alaquàs\";\"main\"\n\"2522297\";\"Alaquas\";\"ascii\"\n\"2522297\";\"Alacuas\";\"other\"\n\"2522297\";\"Alacuás\";\"other\"\n\"2522297\";\"Alakuas\";\"other\"\n\"2522297\";\"Алакуас\";\"other\"\n\"2522299\";\"Ajofrín\";\"main\"\n\"2522299\";\"Ajofrin\";\"ascii\"\n\"2522312\";\"Ahillones\";\"main\"\n\"2522318\";\"Agulo\";\"main\"\n\"2522319\";\"Agullent\";\"main\"\n\"2522325\";\"Agüimes\";\"main\"\n\"2522325\";\"Aguimes\";\"ascii\"\n\"2522325\";\"Agueimes\";\"other\"\n\"2522325\";\"Агуимес\";\"other\"\n\"2522333\";\"Águilas\";\"main\"\n\"2522333\";\"Aguilas\";\"ascii\"\n\"2522333\";\"Agilas\";\"other\"\n\"2522333\";\"Agudas\";\"other\"\n\"2522333\";\"Агилас\";\"other\"\n\"2522335\";\"Aguilar\";\"main\"\n\"2522335\";\"Aguilar de la Frontera\";\"other\"\n\"2522387\";\"Aguadulce\";\"main\"\n\"2522388\";\"Aguadulce\";\"main\"\n\"2522388\";\"Barriada de Aguadulce\";\"other\"\n\"2522419\";\"Agost\";\"main\"\n\"2522423\";\"Agaete\";\"main\"\n\"2522425\";\"Atzeneta d'Albaida\";\"main\"\n\"2522425\";\"Adzaneta de Albaida\";\"other\"\n\"2522430\";\"Adra\";\"main\"\n\"2522430\";\"Abdera\";\"other\"\n\"2522430\";\"Адра\";\"other\"\n\"2522432\";\"Ador\";\"main\"\n\"2522437\";\"Adeje\";\"main\"\n\"2522437\";\"Costa Adeje\";\"other\"\n\"2522438\";\"Adamuz\";\"main\"\n\"2522446\";\"Aceuchal\";\"main\"\n\"2522446\";\"Acebuchal\";\"other\"\n\"2522446\";\"Acenchal\";\"other\"\n\"2522474\";\"Acalá del Río\";\"main\"\n\"2522474\";\"Acala del Rio\";\"ascii\"\n\"2522474\";\"Alcala\";\"other\"\n\"2522474\";\"Alcalá\";\"other\"\n\"2522476\";\"Abrucena\";\"main\"\n\"2522483\";\"Abla\";\"main\"\n\"2522488\";\"Abenójar\";\"main\"\n\"2522488\";\"Abenojar\";\"ascii\"\n\"2522499\";\"Abarán\";\"main\"\n\"2522499\";\"Abaran\";\"ascii\"\n\"2522499\";\"Albaran\";\"other\"\n\"2522505\";\"Abanilla\";\"main\"\n\"2522505\";\"Albanilla\";\"other\"\n\"2522505\";\"Favanella\";\"other\"\n\"2522505\";\"La Zarza de Abanilla\";\"other\"\n\"2565056\";\"Punta Umbría\";\"main\"\n\"2565056\";\"Punta Umbria\";\"ascii\"\n\"2567529\";\"Groa de Murviedro\";\"main\"\n\"3104218\";\"Zumaia\";\"main\"\n\"3104218\";\"Zumaya\";\"other\"\n\"3104219\";\"Zumarraga\";\"main\"\n\"3104219\";\"Zumárraga\";\"other\"\n\"3104226\";\"Zuera\";\"main\"\n\"3104296\";\"Zarzalejo\";\"main\"\n\"3104298\";\"Zarza de Granadilla\";\"main\"\n\"3104316\";\"Zarautz\";\"main\"\n\"3104316\";\"Zarauz\";\"other\"\n\"3104318\";\"Zaratán\";\"main\"\n\"3104318\";\"Zaratan\";\"ascii\"\n\"3104320\";\"Zaratamo\";\"main\"\n\"3104320\";\"Zarátamo\";\"other\"\n\"3104324\";\"Zaragoza\";\"main\"\n\"3104324\";\"Caesaraugusta\";\"other\"\n\"3104324\";\"Caesarea Augusta\";\"other\"\n\"3104324\";\"Salduba\";\"other\"\n\"3104324\";\"Salduie\";\"other\"\n\"3104324\";\"Saragoca\";\"other\"\n\"3104324\";\"Saragosa\";\"other\"\n\"3104324\";\"Saragossa\";\"other\"\n\"3104324\";\"Saragosse\";\"other\"\n\"3104324\";\"Saragozza\";\"other\"\n\"3104324\";\"Saragoça\";\"other\"\n\"3104324\";\"ZGZ\";\"other\"\n\"3104324\";\"Zaragosa\";\"other\"\n\"3104324\";\"Zaragozo\";\"other\"\n\"3104324\";\"Zargoza\";\"other\"\n\"3104324\";\"sa la ge sa\";\"other\"\n\"3104324\";\"saragosa\";\"other\"\n\"3104324\";\"srgwsh\";\"other\"\n\"3104324\";\"srqstt\";\"other\"\n\"3104324\";\"Сарагоса\";\"other\"\n\"3104324\";\"סרגוסה\";\"other\"\n\"3104324\";\"سرقسطة\";\"other\"\n\"3104324\";\"サラゴサ\";\"other\"\n\"3104324\";\"萨拉戈萨\";\"other\"\n\"3104339\";\"Zamudio\";\"main\"\n\"3104339\";\"Zamudia\";\"other\"\n\"3104339\";\"Zamudio-Derio\";\"other\"\n\"3104342\";\"Zamora\";\"main\"\n\"3104342\";\"Samora\";\"other\"\n\"3104342\";\"Zamoro\";\"other\"\n\"3104342\";\"samora\";\"other\"\n\"3104342\";\"thamora\";\"other\"\n\"3104342\";\"zamwra\";\"other\"\n\"3104342\";\"Самора\";\"other\"\n\"3104342\";\"زامورا\";\"other\"\n\"3104342\";\"থামোরা\";\"other\"\n\"3104342\";\"サモラ\";\"other\"\n\"3104368\";\"Saidí / Zaidín\";\"main\"\n\"3104368\";\"Saidi / Zaidin\";\"ascii\"\n\"3104368\";\"Saidi\";\"other\"\n\"3104368\";\"Saidí\";\"other\"\n\"3104368\";\"Zaidin\";\"other\"\n\"3104368\";\"Zaidín\";\"other\"\n\"3104394\";\"Yunquera de Henares\";\"main\"\n\"3104394\";\"Yunquera\";\"other\"\n\"3104394\";\"Yunqueria de Henares\";\"other\"\n\"3104394\";\"Yunquería de Henares\";\"other\"\n\"3104395\";\"Yuncos\";\"main\"\n\"3104397\";\"Yuncler\";\"main\"\n\"3104427\";\"Yeles\";\"main\"\n\"3104475\";\"Viveiro\";\"main\"\n\"3104499\";\"Vitoria-Gasteiz\";\"main\"\n\"3104499\";\"Bittorixa\";\"other\"\n\"3104499\";\"Gasteiz\";\"other\"\n\"3104499\";\"Victoriacum\";\"other\"\n\"3104499\";\"Vitoria\";\"other\"\n\"3104499\";\"Vitorija\";\"other\"\n\"3104499\";\"Vitorio\";\"other\"\n\"3104499\";\"Vitòria\";\"other\"\n\"3104499\";\"Vitória\";\"other\"\n\"3104499\";\"bitoria\";\"other\"\n\"3104499\";\"wytwryh\";\"other\"\n\"3104499\";\"Витория\";\"other\"\n\"3104499\";\"ויטוריה\";\"other\"\n\"3104499\";\"ビトリア\";\"other\"\n\"3104501\";\"Vitigudino\";\"main\"\n\"3104551\";\"Vinuesa\";\"main\"\n\"3104584\";\"Vinaròs\";\"main\"\n\"3104584\";\"Vinaros\";\"ascii\"\n\"3104584\";\"Vinarose\";\"other\"\n\"3104584\";\"Vinaroz\";\"other\"\n\"3104584\";\"Винаросе\";\"other\"\n\"3104603\";\"Vimbodí\";\"main\"\n\"3104603\";\"Vimbodi\";\"ascii\"\n\"3104652\";\"Villoría\";\"main\"\n\"3104652\";\"Villoria\";\"ascii\"\n\"3104689\";\"Villayón\";\"main\"\n\"3104689\";\"Villayon\";\"ascii\"\n\"3104694\";\"Villavieja de Yeltes\";\"main\"\n\"3104694\";\"Villarieja\";\"other\"\n\"3104694\";\"Villavieja\";\"other\"\n\"3104703\";\"Villaviciosa de Odón\";\"main\"\n\"3104703\";\"Villaviciosa de Odon\";\"ascii\"\n\"3104703\";\"Vil'javisiosa-de-Odon\";\"other\"\n\"3104703\";\"Вильявисиоса-де-Одон\";\"other\"\n\"3104707\";\"Villaviciosa\";\"main\"\n\"3104773\";\"Villaturiel\";\"main\"\n\"3104776\";\"Villatuerta\";\"main\"\n\"3104847\";\"Villasana de Mena\";\"main\"\n\"3104847\";\"Valle de Mena\";\"other\"\n\"3104847\";\"Villasana de Mona\";\"other\"\n\"3104849\";\"Villasabariego\";\"main\"\n\"3104930\";\"Villarino de los Aires\";\"main\"\n\"3104930\";\"Villarino\";\"other\"\n\"3104969\";\"Villares de la Reina\";\"main\"\n\"3104979\";\"Villarejo de Salvanés\";\"main\"\n\"3104979\";\"Villarejo de Salvanes\";\"ascii\"\n\"3104980\";\"Villarejo de Órbigo\";\"main\"\n\"3104980\";\"Villarejo de Orbigo\";\"ascii\"\n\"3105028\";\"Villar de Olalla\";\"main\"\n\"3105028\";\"Villar de Ollala\";\"other\"\n\"3105046\";\"Villar del Olmo\";\"main\"\n\"3105103\";\"Villaralbo\";\"main\"\n\"3105148\";\"Villaquilambre\";\"main\"\n\"3105149\";\"Villaquejida\";\"main\"\n\"3105184\";\"Vilanova i la Geltrú\";\"main\"\n\"3105184\";\"Vilanova i la Geltru\";\"ascii\"\n\"3105184\";\"Vilanova\";\"other\"\n\"3105195\";\"Villanueva de Valdegovía\";\"main\"\n\"3105195\";\"Villanueva de Valdegovia\";\"ascii\"\n\"3105195\";\"Valdegobia\";\"other\"\n\"3105195\";\"Valdegovia\";\"other\"\n\"3105214\";\"Villanueva del Pardillo\";\"main\"\n\"3105229\";\"Villanueva del Campo\";\"main\"\n\"3105229\";\"Villanueva\";\"other\"\n\"3105231\";\"Villanueva de la Vera\";\"main\"\n\"3105233\";\"Villanueva de la Torre\";\"main\"\n\"3105247\";\"Villanueva de la Cañada\";\"main\"\n\"3105247\";\"Villanueva de la Canada\";\"ascii\"\n\"3105257\";\"Villanueva de Gállego\";\"main\"\n\"3105257\";\"Villanueva de Gallego\";\"ascii\"\n\"3105257\";\"Villanueva del Gallego\";\"other\"\n\"3105257\";\"Villanueva del Gállego\";\"other\"\n\"3105258\";\"Villanueva de Duero\";\"main\"\n\"3105267\";\"Vilanova de Arousa\";\"main\"\n\"3105267\";\"Villanueva\";\"other\"\n\"3105310\";\"Villanubla\";\"main\"\n\"3105331\";\"Villamuriel de Cerrato\";\"main\"\n\"3105381\";\"Villamediana de Iregua\";\"main\"\n\"3105411\";\"Villamayor\";\"main\"\n\"3105437\";\"Villamanta\";\"main\"\n\"3105439\";\"Villamanín\";\"main\"\n\"3105439\";\"Villamanin\";\"ascii\"\n\"3105443\";\"Villamañán\";\"main\"\n\"3105443\";\"Villamanan\";\"ascii\"\n\"3105462\";\"Villalpando\";\"main\"\n\"3105462\";\"Villapando\";\"other\"\n\"3105467\";\"Villalón de Campos\";\"main\"\n\"3105467\";\"Villalon de Campos\";\"ascii\"\n\"3105467\";\"Villalon\";\"other\"\n\"3105467\";\"Villalón\";\"other\"\n\"3105501\";\"Villalbilla\";\"main\"\n\"3105522\";\"Vilalba\";\"main\"\n\"3105522\";\"Villalba\";\"other\"\n\"3105564\";\"Villagonzalo-Pedernales\";\"main\"\n\"3105575\";\"Vilagarcía de Arousa\";\"main\"\n\"3105575\";\"Vilagarcia de Arousa\";\"ascii\"\n\"3105575\";\"Vil'jagarsia-de-Arosa\";\"other\"\n\"3105575\";\"Vilagarcia\";\"other\"\n\"3105575\";\"Vilagarcía\";\"other\"\n\"3105575\";\"Вильягарсиа-де-Ароса\";\"other\"\n\"3105581\";\"Villafufre\";\"main\"\n\"3105600\";\"Vilafranca del Penedès\";\"main\"\n\"3105600\";\"Vilafranca del Penedes\";\"ascii\"\n\"3105600\";\"Vil'jafranka-del'-Penedes\";\"other\"\n\"3105600\";\"Vilafranca Penedes\";\"other\"\n\"3105600\";\"Vilafranca do Penedes - Vilafranca del Penedes\";\"other\"\n\"3105600\";\"Vilafranca do Penedés - Vilafranca del Penedès\";\"other\"\n\"3105600\";\"Villafranca del Panades\";\"other\"\n\"3105600\";\"Villafranca del Panadés\";\"other\"\n\"3105600\";\"Villafranca del Penedes\";\"other\"\n\"3105600\";\"Villafranca del Penedés\";\"other\"\n\"3105600\";\"Вильяфранка-дель-Пенедес\";\"other\"\n\"3105601\";\"Villafranca del Cid\";\"main\"\n\"3105601\";\"Vilafranca del Maestrat\";\"other\"\n\"3105603\";\"Villafranca del Bierzo\";\"main\"\n\"3105609\";\"Villafranca\";\"main\"\n\"3105630\";\"Villafamés\";\"main\"\n\"3105630\";\"Villafames\";\"ascii\"\n\"3105630\";\"Vilafames\";\"other\"\n\"3105651\";\"Villaescusa\";\"main\"\n\"3105661\";\"Villadiego\";\"main\"\n\"3105675\";\"Villa del Prado\";\"main\"\n\"3105679\";\"Villadecanes\";\"main\"\n\"3105681\";\"Villadangos del Páramo\";\"main\"\n\"3105681\";\"Villadangos del Paramo\";\"ascii\"\n\"3105684\";\"Villada\";\"main\"\n\"3105694\";\"Villaconejos\";\"main\"\n\"3105720\";\"Villacastín\";\"main\"\n\"3105720\";\"Villacastin\";\"ascii\"\n\"3105721\";\"Villacarriedo\";\"main\"\n\"3105738\";\"Villabrágima\";\"main\"\n\"3105738\";\"Villabragima\";\"ascii\"\n\"3105742\";\"Villabona\";\"main\"\n\"3105748\";\"Villablino\";\"main\"\n\"3105763\";\"Atarrabia\";\"main\"\n\"3105763\";\"Villava\";\"other\"\n\"3105803\";\"Vila-seca\";\"main\"\n\"3105803\";\"Vilaseca\";\"other\"\n\"3105803\";\"Vilaseca de Solcina\";\"other\"\n\"3105805\";\"Vilaseca\";\"main\"\n\"3105805\";\"Vila-seka\";\"other\"\n\"3105805\";\"Вила-сека\";\"other\"\n\"3105806\";\"Vilasantar\";\"main\"\n\"3105806\";\"Santiago\";\"other\"\n\"3105885\";\"Vilanova del Camí\";\"main\"\n\"3105885\";\"Vilanova del Cami\";\"ascii\"\n\"3105890\";\"Vilanova de Bellpuig\";\"main\"\n\"3105917\";\"Vilajuïga\";\"main\"\n\"3105917\";\"Vilajuiga\";\"ascii\"\n\"3105922\";\"Vilafant\";\"main\"\n\"3105923\";\"Viladrau\";\"main\"\n\"3105935\";\"Viladecans\";\"main\"\n\"3105935\";\"Viladekans\";\"other\"\n\"3105935\";\"Виладеканс\";\"other\"\n\"3105955\";\"Vilablareix\";\"main\"\n\"3105976\";\"Vigo\";\"main\"\n\"3105976\";\"bigo\";\"other\"\n\"3105976\";\"fyghw\";\"other\"\n\"3105976\";\"wygw\";\"other\"\n\"3105976\";\"Виго\";\"other\"\n\"3105976\";\"ויגו\";\"other\"\n\"3105976\";\"فيغو\";\"other\"\n\"3105976\";\"ویگو\";\"other\"\n\"3105976\";\"ビーゴ\";\"other\"\n\"3105994\";\"Vielha\";\"main\"\n\"3105994\";\"V'el'ja\";\"other\"\n\"3105994\";\"Vielha e Mijaran\";\"other\"\n\"3105994\";\"Viella\";\"other\"\n\"3105994\";\"Viella Mitg Aran\";\"other\"\n\"3105994\";\"Viella Mitg Arán\";\"other\"\n\"3105994\";\"Вьелья\";\"other\"\n\"3106050\";\"Vic\";\"main\"\n\"3106050\";\"a'usa\";\"other\"\n\"3106050\";\"আউসা\";\"other\"\n\"3106067\";\"Viana de Cega\";\"main\"\n\"3106086\";\"Verín\";\"main\"\n\"3106086\";\"Verin\";\"ascii\"\n\"3106089\";\"Verges\";\"main\"\n\"3106090\";\"Bergara\";\"main\"\n\"3106090\";\"Vergara\";\"other\"\n\"3106095\";\"Verea\";\"main\"\n\"3106095\";\"Santiago\";\"other\"\n\"3106097\";\"Verdú\";\"main\"\n\"3106097\";\"Verdu\";\"ascii\"\n\"3106112\";\"Bera\";\"main\"\n\"3106112\";\"Vera\";\"other\"\n\"3106112\";\"Vera de Bidasoa\";\"other\"\n\"3106116\";\"Venturada\";\"main\"\n\"3106166\";\"Venta de Baños\";\"main\"\n\"3106166\";\"Venta de Banos\";\"ascii\"\n\"3106180\";\"el Vendrell\";\"main\"\n\"3106180\";\"El Vendrell\";\"other\"\n\"3106180\";\"Vendrel'\";\"other\"\n\"3106180\";\"Vendrell\";\"other\"\n\"3106180\";\"Вендрель\";\"other\"\n\"3106202\";\"Velilla de San Antonio\";\"main\"\n\"3106204\";\"Velilla del Río Carrión\";\"main\"\n\"3106204\";\"Velilla del Rio Carrion\";\"ascii\"\n\"3106204\";\"Velilla de Guardo\";\"other\"\n\"3106293\";\"Vegadeo\";\"main\"\n\"3106313\";\"Vega de Espinareda\";\"main\"\n\"3106313\";\"Vega del Espinareda\";\"other\"\n\"3106356\";\"Vedra\";\"main\"\n\"3106356\";\"Santa Eulalia\";\"other\"\n\"3106396\";\"Valverde del Fresno\";\"main\"\n\"3106397\";\"Valverde de la Virgen\";\"main\"\n\"3106430\";\"Valtierra\";\"main\"\n\"3106471\";\"Valmojado\";\"main\"\n\"3106492\";\"Valls\";\"main\"\n\"3106492\";\"Val's\";\"other\"\n\"3106492\";\"Вальс\";\"other\"\n\"3106504\";\"Vallmoll\";\"main\"\n\"3106515\";\"Vallirana\";\"main\"\n\"3106526\";\"Vallgorguina\";\"main\"\n\"3106528\";\"Vallfogona de Balaguer\";\"main\"\n\"3106672\";\"Valladolid\";\"main\"\n\"3106672\";\"Balladolid\";\"other\"\n\"3106672\";\"Pincia\";\"other\"\n\"3106672\";\"Pintia\";\"other\"\n\"3106672\";\"Pucela\";\"other\"\n\"3106672\";\"Val'jadolid\";\"other\"\n\"3106672\";\"Valadolido\";\"other\"\n\"3106672\";\"Vallis Tolitum\";\"other\"\n\"3106672\";\"Vayadolid\";\"other\"\n\"3106672\";\"baryadoriddo\";\"other\"\n\"3106672\";\"bld alwlyd\";\"other\"\n\"3106672\";\"Вальлядалід\";\"other\"\n\"3106672\";\"Вальядолид\";\"other\"\n\"3106672\";\"ויאדוליד\";\"other\"\n\"3106672\";\"بلد الوليد\";\"other\"\n\"3106672\";\"バリャドリッド\";\"other\"\n\"3106702\";\"Valga\";\"main\"\n\"3106718\";\"Valencia de Don Juan\";\"main\"\n\"3106732\";\"Valdoviño\";\"main\"\n\"3106732\";\"Valdovino\";\"ascii\"\n\"3106732\";\"Santa Eulalia\";\"other\"\n\"3106742\";\"Valdilecha\";\"main\"\n\"3106748\";\"Valdevimbre\";\"main\"\n\"3106759\";\"Valdetorres de Jarama\";\"main\"\n\"3106763\";\"Valdestillas\";\"main\"\n\"3106797\";\"Valderrueda\";\"main\"\n\"3106803\";\"Valderrobres\";\"main\"\n\"3106803\";\"Baldecaxicos\";\"other\"\n\"3106803\";\"Vall-de-roures\";\"other\"\n\"3106803\";\"Vallderroures\";\"other\"\n\"3106812\";\"Valderas\";\"main\"\n\"3106826\";\"Valdepolo\";\"main\"\n\"3106843\";\"Valdeolmos\";\"main\"\n\"3106868\";\"Valdemoro\";\"main\"\n\"3106868\";\"Val'demoro\";\"other\"\n\"3106868\";\"Вальдеморо\";\"other\"\n\"3106870\";\"Valdemorillo\";\"main\"\n\"3106955\";\"Valdefresno\";\"main\"\n\"3107112\";\"Vaciamadrid\";\"main\"\n\"3107112\";\"Vasiamadrid\";\"other\"\n\"3107112\";\"Васиамадрид\";\"other\"\n\"3107133\";\"Utrillas\";\"main\"\n\"3107133\";\"Utrella\";\"other\"\n\"3107139\";\"Utebo\";\"main\"\n\"3107141\";\"Usurbil\";\"main\"\n\"3107141\";\"Usúrbil\";\"other\"\n\"3107204\";\"Urnieta\";\"main\"\n\"3107305\";\"Ulldecona\";\"main\"\n\"3107306\";\"Ullastrell\";\"main\"\n\"3107320\";\"Ugena\";\"main\"\n\"3107348\";\"Uceda\";\"main\"\n\"3107364\";\"Tui\";\"main\"\n\"3107364\";\"Tuy\";\"other\"\n\"3107386\";\"Turégano\";\"main\"\n\"3107386\";\"Turegano\";\"ascii\"\n\"3107387\";\"Turcia\";\"main\"\n\"3107415\";\"Tudela de Duero\";\"main\"\n\"3107415\";\"Tudela\";\"other\"\n\"3107415\";\"Tudela de Duera\";\"other\"\n\"3107418\";\"Tudela\";\"main\"\n\"3107418\";\"Тудела\";\"other\"\n\"3107474\";\"Trillo\";\"main\"\n\"3107475\";\"Trijueque\";\"main\"\n\"3107475\";\"Trijeque\";\"other\"\n\"3107504\";\"Trespaderne\";\"main\"\n\"3107519\";\"Tremp\";\"main\"\n\"3107546\";\"Trazo\";\"main\"\n\"3107546\";\"Santa Maria\";\"other\"\n\"3107546\";\"Santa María\";\"other\"\n\"3107546\";\"Trac\";\"other\"\n\"3107546\";\"Traç\";\"other\"\n\"3107574\";\"Trasmiras\";\"main\"\n\"3107610\";\"Traiguera\";\"main\"\n\"3107637\";\"Trabada\";\"main\"\n\"3107653\";\"Touro\";\"main\"\n\"3107653\";\"San Juan\";\"other\"\n\"3107661\";\"Tossa de Mar\";\"main\"\n\"3107661\";\"Tossa\";\"other\"\n\"3107677\";\"Tortosa\";\"main\"\n\"3107677\";\"Tortoza\";\"other\"\n\"3107677\";\"twrtwsh\";\"other\"\n\"3107677\";\"טורטוסה\";\"other\"\n\"3107700\";\"Torroella de Montgrí\";\"main\"\n\"3107700\";\"Torroella de Montgri\";\"ascii\"\n\"3107700\";\"Torroella\";\"other\"\n\"3107717\";\"Torres de Segre\";\"main\"\n\"3107717\";\"Torres del Segre\";\"other\"\n\"3107722\";\"Torres de la Alameda\";\"main\"\n\"3107723\";\"Torres de Berrellén\";\"main\"\n\"3107723\";\"Torres de Berrellen\";\"ascii\"\n\"3107723\";\"Torres de Berellen\";\"other\"\n\"3107723\";\"Torres de Berellén\";\"other\"\n\"3107765\";\"Torrelodones\";\"main\"\n\"3107768\";\"Torrelles de Llobregat\";\"main\"\n\"3107768\";\"Torrellas de Llobregat\";\"other\"\n\"3107768\";\"Torrelles\";\"other\"\n\"3107775\";\"Torrelavega\";\"main\"\n\"3107775\";\"Торрелавега\";\"other\"\n\"3107779\";\"Torrelaguna\";\"main\"\n\"3107781\";\"Torrejón de Velasco\";\"main\"\n\"3107781\";\"Torrejon de Velasco\";\"ascii\"\n\"3107782\";\"Torrejón del Rey\";\"main\"\n\"3107782\";\"Torrejon del Rey\";\"ascii\"\n\"3107782\";\"Torrejon\";\"other\"\n\"3107783\";\"Torrejón de la Calzada\";\"main\"\n\"3107783\";\"Torrejon de la Calzada\";\"ascii\"\n\"3107784\";\"Torrejón de Ardoz\";\"main\"\n\"3107784\";\"Torrejon de Ardoz\";\"ascii\"\n\"3107784\";\"Torrejon de Ardos\";\"other\"\n\"3107784\";\"Torrekhon-de-Ardos\";\"other\"\n\"3107784\";\"Торрехон-де-Ардос\";\"other\"\n\"3107797\";\"Torrefarrera\";\"main\"\n\"3107807\";\"Torredembarra\";\"main\"\n\"3107807\";\"Torredembara\";\"other\"\n\"3107813\";\"Torre del Bierzo\";\"main\"\n\"3107813\";\"Albares\";\"other\"\n\"3107813\";\"Albares de la Ribera\";\"other\"\n\"3107849\";\"Torreblanca\";\"main\"\n\"3107878\";\"Torquemada\";\"main\"\n\"3107886\";\"Toro\";\"main\"\n\"3107902\";\"Tornavacas\";\"main\"\n\"3107940\";\"Toreno\";\"main\"\n\"3107941\";\"Torelló\";\"main\"\n\"3107941\";\"Torello\";\"ascii\"\n\"3107952\";\"Tordesillas\";\"main\"\n\"3107952\";\"Tordesilhas\";\"other\"\n\"3107955\";\"Tordera\";\"main\"\n\"3107983\";\"Torà de Riubregós\";\"main\"\n\"3107983\";\"Tora de Riubregos\";\"ascii\"\n\"3107983\";\"Tora\";\"other\"\n\"3107983\";\"Tora de Rulbregos\";\"other\"\n\"3107983\";\"Torá\";\"other\"\n\"3107983\";\"Torá de Rulbregos\";\"other\"\n\"3107997\";\"Tona\";\"main\"\n\"3108000\";\"Tomiño\";\"main\"\n\"3108000\";\"Tomino\";\"ascii\"\n\"3108000\";\"Santa Maria\";\"other\"\n\"3108000\";\"Santa María\";\"other\"\n\"3108008\";\"Tolosa\";\"main\"\n\"3108009\";\"Toloriu\";\"main\"\n\"3108036\";\"Toén\";\"main\"\n\"3108036\";\"Toen\";\"ascii\"\n\"3108087\";\"Tineo\";\"main\"\n\"3108087\";\"Tineu\";\"other\"\n\"3108087\";\"Tinéu\";\"other\"\n\"3108104\";\"Tielmes\";\"main\"\n\"3108110\";\"Tiana\";\"main\"\n\"3108116\";\"Teià\";\"main\"\n\"3108116\";\"Teia\";\"ascii\"\n\"3108126\";\"Teruel\";\"main\"\n\"3108126\";\"Provincia Terulium\";\"other\"\n\"3108126\";\"Tergueel\";\"other\"\n\"3108126\";\"Tergüel\";\"other\"\n\"3108126\";\"Terol\";\"other\"\n\"3108126\";\"Teruehl'\";\"other\"\n\"3108126\";\"Teruelo\";\"other\"\n\"3108126\";\"Terulium\";\"other\"\n\"3108126\";\"terueru\";\"other\"\n\"3108126\";\"Теруэль\";\"other\"\n\"3108126\";\"テルエル\";\"other\"\n\"3108144\";\"Terradillos\";\"main\"\n\"3108155\";\"Térmens\";\"main\"\n\"3108155\";\"Termens\";\"ascii\"\n\"3108165\";\"Teo\";\"main\"\n\"3108165\";\"Santa Maria\";\"other\"\n\"3108165\";\"Santa María\";\"other\"\n\"3108269\";\"Tauste\";\"main\"\n\"3108285\";\"Tàrrega\";\"main\"\n\"3108285\";\"Tarrega\";\"ascii\"\n\"3108286\";\"Terrassa\";\"main\"\n\"3108286\";\"Terasa\";\"other\"\n\"3108286\";\"telasa\";\"other\"\n\"3108286\";\"terrasa\";\"other\"\n\"3108286\";\"Τεράσα\";\"other\"\n\"3108286\";\"Террасса\";\"other\"\n\"3108286\";\"テッラーサ\";\"other\"\n\"3108286\";\"테라사\";\"other\"\n\"3108288\";\"Tarragona\";\"main\"\n\"3108288\";\"Taragono\";\"other\"\n\"3108288\";\"Tarraco\";\"other\"\n\"3108288\";\"Tarrago\";\"other\"\n\"3108288\";\"Tarragone\";\"other\"\n\"3108288\";\"taragona\";\"other\"\n\"3108288\";\"taragwna\";\"other\"\n\"3108288\";\"trgwnh\";\"other\"\n\"3108288\";\"Таррагона\";\"other\"\n\"3108288\";\"טרגונה\";\"other\"\n\"3108288\";\"تاراگونا\";\"other\"\n\"3108288\";\"タラゴナ\";\"other\"\n\"3108299\";\"Tardienta\";\"main\"\n\"3108308\";\"Tarazona\";\"main\"\n\"3108317\";\"Tarancón\";\"main\"\n\"3108317\";\"Tarancon\";\"ascii\"\n\"3108327\";\"Taradell\";\"main\"\n\"3108335\";\"Tapia de Casariego\";\"main\"\n\"3108335\";\"Tapia\";\"other\"\n\"3108360\";\"Tamarit de Llitera / Tamarite de Litera\";\"main\"\n\"3108360\";\"Tamarit de Litera\";\"other\"\n\"3108360\";\"Tamarit de Llitera\";\"other\"\n\"3108360\";\"Tamarite de Litera\";\"other\"\n\"3108389\";\"Talamanca de Jarama\";\"main\"\n\"3108412\";\"Tafalla\";\"main\"\n\"3108422\";\"Taboadela\";\"main\"\n\"3108425\";\"Taboada\";\"main\"\n\"3108487\";\"Súria\";\"main\"\n\"3108487\";\"Suria\";\"ascii\"\n\"3108520\";\"Subirats\";\"main\"\n\"3108534\";\"Suances\";\"main\"\n\"3108606\";\"Soto del Barco\";\"main\"\n\"3108606\";\"San Pedro\";\"other\"\n\"3108606\";\"Soto\";\"other\"\n\"3108606\";\"Sotu'l Barcu\";\"other\"\n\"3108607\";\"Soto de la Vega\";\"main\"\n\"3108636\";\"Sotillo de la Adrada\";\"main\"\n\"3108655\";\"Soses\";\"main\"\n\"3108663\";\"Sort\";\"main\"\n\"3108681\";\"Soria\";\"main\"\n\"3108681\";\"Sorija\";\"other\"\n\"3108681\";\"Сория\";\"other\"\n\"3108702\";\"Sopelana\";\"main\"\n\"3108702\";\"Sopela\";\"other\"\n\"3108718\";\"Somozas\";\"main\"\n\"3108718\";\"Santiago Sere\";\"other\"\n\"3108718\";\"Santiago Seré\";\"other\"\n\"3108747\";\"Solsona\";\"main\"\n\"3108749\";\"Solosancho\";\"main\"\n\"3108750\";\"Solórzano\";\"main\"\n\"3108750\";\"Solorzano\";\"ascii\"\n\"3108847\";\"Sobrado\";\"main\"\n\"3108862\";\"Sober\";\"main\"\n\"3108862\";\"Vello\";\"other\"\n\"3108877\";\"Sitges\";\"main\"\n\"3108877\";\"Sitzhes\";\"other\"\n\"3108877\";\"Ситжес\";\"other\"\n\"3108917\";\"Simancas\";\"main\"\n\"3108945\";\"Sils\";\"main\"\n\"3108950\";\"Silleda\";\"main\"\n\"3108950\";\"Sillede\";\"other\"\n\"3108961\";\"Sigüenza\";\"main\"\n\"3108961\";\"Siguenza\";\"ascii\"\n\"3108961\";\"Segontia\";\"other\"\n\"3108961\";\"Sigueenza\";\"other\"\n\"3108987\";\"Sierra-Engarcerán\";\"main\"\n\"3108987\";\"Sierra-Engarceran\";\"ascii\"\n\"3109018\";\"Sevilla La Nueva\";\"main\"\n\"3109023\";\"Seva\";\"main\"\n\"3109041\";\"Sestao\";\"main\"\n\"3109045\";\"Sesma\";\"main\"\n\"3109050\";\"Seseña\";\"main\"\n\"3109050\";\"Sesena\";\"ascii\"\n\"3109077\";\"Serranillos del Valle\";\"main\"\n\"3109077\";\"Serranillos\";\"other\"\n\"3109091\";\"Serrada\";\"main\"\n\"3109099\";\"Seròs\";\"main\"\n\"3109099\";\"Seros\";\"ascii\"\n\"3109099\";\"Serós\";\"other\"\n\"3109139\";\"Sepúlveda\";\"main\"\n\"3109139\";\"Sepulveda\";\"ascii\"\n\"3109139\";\"Valleruca de Sepulveda\";\"other\"\n\"3109143\";\"la Seu d'Urgell\";\"main\"\n\"3109143\";\"La Seo de Urgel\";\"other\"\n\"3109143\";\"La Seu d'Urgell\";\"other\"\n\"3109143\";\"La Seu de Urgell\";\"other\"\n\"3109143\";\"Orgellis civitas\";\"other\"\n\"3109143\";\"Orgellum\";\"other\"\n\"3109143\";\"Seo de Urgel\";\"other\"\n\"3109143\";\"Urgelitana sedes\";\"other\"\n\"3109143\";\"Urgellum\";\"other\"\n\"3109165\";\"Sentmenat\";\"main\"\n\"3109211\";\"Selaya\";\"main\"\n\"3109238\";\"Segurilla\";\"main\"\n\"3109242\";\"Segura\";\"main\"\n\"3109256\";\"Segovia\";\"main\"\n\"3109256\";\"Segovie\";\"other\"\n\"3109256\";\"Segovija\";\"other\"\n\"3109256\";\"Segovio\";\"other\"\n\"3109256\";\"Segowia\";\"other\"\n\"3109256\";\"Segòvia\";\"other\"\n\"3109256\";\"Segóvia\";\"other\"\n\"3109256\";\"Ségovie\";\"other\"\n\"3109256\";\"segobia\";\"other\"\n\"3109256\";\"Сеговия\";\"other\"\n\"3109256\";\"セゴビア\";\"other\"\n\"3109336\";\"Sástago\";\"main\"\n\"3109336\";\"Sastago\";\"ascii\"\n\"3109344\";\"Sasamón\";\"main\"\n\"3109344\";\"Sasamon\";\"ascii\"\n\"3109353\";\"Sartaguda\";\"main\"\n\"3109360\";\"Sarrión\";\"main\"\n\"3109360\";\"Sarrion\";\"ascii\"\n\"3109364\";\"Sarrià de Ter\";\"main\"\n\"3109364\";\"Sarria de Ter\";\"ascii\"\n\"3109364\";\"Sarriá de Ter\";\"other\"\n\"3109369\";\"Sarria\";\"main\"\n\"3109369\";\"Sorria\";\"other\"\n\"3109370\";\"Sarreaus\";\"main\"\n\"3109380\";\"Sariñena\";\"main\"\n\"3109380\";\"Sarinena\";\"ascii\"\n\"3109381\";\"Sariegos\";\"main\"\n\"3109383\";\"Sariego\";\"main\"\n\"3109383\";\"Santiago\";\"other\"\n\"3109383\";\"Sariegu\";\"other\"\n\"3109402\";\"Cerdanyola del Vallès\";\"main\"\n\"3109402\";\"Cerdanyola del Valles\";\"ascii\"\n\"3109402\";\"Cerdanyola\";\"other\"\n\"3109442\";\"Sant Vicenç dels Horts\";\"main\"\n\"3109442\";\"Sant Vicenc dels Horts\";\"ascii\"\n\"3109447\";\"San Vicente de la Sonsierra\";\"main\"\n\"3109447\";\"San Vicente\";\"other\"\n\"3109447\";\"San Vincente de la Sonsierra\";\"other\"\n\"3109450\";\"San Vicente de la Barquera\";\"main\"\n\"3109450\";\"San Vicente\";\"other\"\n\"3109450\";\"San Vicente la Barquera\";\"other\"\n\"3109453\";\"Barakaldo\";\"main\"\n\"3109453\";\"Baracaldo\";\"other\"\n\"3109453\";\"Done Bikendi\";\"other\"\n\"3109453\";\"San Bizente\";\"other\"\n\"3109453\";\"San Bizenti-Barakaldo\";\"other\"\n\"3109453\";\"San Vicente de Baracaldo\";\"other\"\n\"3109453\";\"Sanbi\";\"other\"\n\"3109481\";\"Santurtzi\";\"main\"\n\"3109481\";\"Santurce\";\"other\"\n\"3109481\";\"Santurce-Antiguo\";\"other\"\n\"3109501\";\"Santovenia de Pisuerga\";\"main\"\n\"3109527\";\"Santoña\";\"main\"\n\"3109527\";\"Santona\";\"ascii\"\n\"3109535\";\"Santo Domingo de la Calzada\";\"main\"\n\"3109535\";\"Ozkabarte\";\"other\"\n\"3109546\";\"Sant Just Desvern\";\"main\"\n\"3109550\";\"Sant Joan les Fonts\";\"main\"\n\"3109551\";\"Sant Joan de Vilatorrada\";\"main\"\n\"3109551\";\"San Joan de Vilatorrada\";\"other\"\n\"3109561\";\"Santiurde de Toranzo\";\"main\"\n\"3109582\";\"Santillana\";\"main\"\n\"3109582\";\"Santillana del Mar\";\"other\"\n\"3109591\";\"Santibáñez de Vidriales\";\"main\"\n\"3109591\";\"Santibanez de Vidriales\";\"ascii\"\n\"3109605\";\"Santibáñez de la Peña\";\"main\"\n\"3109605\";\"Santibanez de la Pena\";\"ascii\"\n\"3109642\";\"Santiago de Compostela\";\"main\"\n\"3109642\";\"Compostelako Donejakue\";\"other\"\n\"3109642\";\"Compostella\";\"other\"\n\"3109642\";\"Lungsod ng Santiago de Compostela\";\"other\"\n\"3109642\";\"Saint-Jacques-de-Compostelle\";\"other\"\n\"3109642\";\"Sant'jago-de-Kompostela\";\"other\"\n\"3109642\";\"Santiago\";\"other\"\n\"3109642\";\"Santiago de Compostella\";\"other\"\n\"3109642\";\"Santiago de Compostel·la\";\"other\"\n\"3109642\";\"Santiago di Compostela\";\"other\"\n\"3109642\";\"Santjago de Kompostela\";\"other\"\n\"3109642\";\"kong bo si te la de sheng de ya ge\";\"other\"\n\"3109642\";\"santyagw d kampwstla\";\"other\"\n\"3109642\";\"Сантьяго-де-Компостела\";\"other\"\n\"3109642\";\"Сантяго де Компостела\";\"other\"\n\"3109642\";\"סנטיאגו דה קומפוסטלה\";\"other\"\n\"3109642\";\"سانتیاگو د کامپوستلا\";\"other\"\n\"3109642\";\"サンティアゴ・デ・コンポステーラ\";\"other\"\n\"3109642\";\"孔波斯特拉的聖地牙哥\";\"other\"\n\"3109653\";\"Doneztebe\";\"main\"\n\"3109653\";\"Santesteban\";\"other\"\n\"3109680\";\"Santa Susanna\";\"main\"\n\"3109680\";\"Santa Susana\";\"other\"\n\"3109680\";\"Santa-Susanna\";\"other\"\n\"3109680\";\"Санта-Сусанна\";\"other\"\n\"3109689\";\"Santa Perpètua de Mogoda\";\"main\"\n\"3109689\";\"Santa Perpetua de Mogoda\";\"ascii\"\n\"3109689\";\"Santa Perpetua de Moguda\";\"other\"\n\"3109692\";\"Santa Pau\";\"main\"\n\"3109693\";\"Santa Oliva\";\"main\"\n\"3109705\";\"Santa Olalla\";\"main\"\n\"3109705\";\"Santa Olalla de Toledo\";\"other\"\n\"3109718\";\"Santander\";\"main\"\n\"3109718\";\"Portus Victoriae Iuliobrigensium\";\"other\"\n\"3109718\";\"Sanandere\";\"other\"\n\"3109718\";\"Santandehr\";\"other\"\n\"3109718\";\"Santandero\";\"other\"\n\"3109718\";\"santanderu\";\"other\"\n\"3109718\";\"sntndr\";\"other\"\n\"3109718\";\"Сантандер\";\"other\"\n\"3109718\";\"Сантандэр\";\"other\"\n\"3109718\";\"סנטנדר\";\"other\"\n\"3109718\";\"サンタンデール\";\"other\"\n\"3109721\";\"Santa Marta de Tormes\";\"main\"\n\"3109724\";\"Santa Marta de Ortigueira\";\"main\"\n\"3109724\";\"Ortigueira\";\"other\"\n\"3109736\";\"Santa Marina del Rey\";\"main\"\n\"3109756\";\"Santa María la Real de Nieva\";\"main\"\n\"3109756\";\"Santa Maria la Real de Nieva\";\"ascii\"\n\"3109756\";\"Santa Maria de la Nieva\";\"other\"\n\"3109756\";\"Santa-Maria de Nieva\";\"other\"\n\"3109756\";\"Santa-María de Nieva\";\"other\"\n\"3109764\";\"Santa Maria de Palautordera\";\"main\"\n\"3109767\";\"Santa Maria d'Oló\";\"main\"\n\"3109767\";\"Santa Maria d'Olo\";\"ascii\"\n\"3109778\";\"Santa María del Páramo\";\"main\"\n\"3109778\";\"Santa Maria del Paramo\";\"ascii\"\n\"3109778\";\"Santa Maria\";\"other\"\n\"3109799\";\"Santa Maria de Corcó\";\"main\"\n\"3109799\";\"Santa Maria de Corco\";\"ascii\"\n\"3109799\";\"l'Esquirol\";\"other\"\n\"3109800\";\"Santa María de Cayón\";\"main\"\n\"3109800\";\"Santa Maria de Cayon\";\"ascii\"\n\"3109804\";\"Barberà del Vallès\";\"main\"\n\"3109804\";\"Barbera del Valles\";\"ascii\"\n\"3109804\";\"Barbera Del Valles\";\"other\"\n\"3109804\";\"Santa Maria de Barbera\";\"other\"\n\"3109804\";\"Santa María de Barberà\";\"other\"\n\"3109871\";\"Santa Eulàlia de Ronçana\";\"main\"\n\"3109871\";\"Santa Eulalia de Roncana\";\"ascii\"\n\"3109887\";\"Santa Eulalia\";\"main\"\n\"3109887\";\"Cabranes\";\"other\"\n\"3109891\";\"Santa Eulalia\";\"main\"\n\"3109894\";\"Santa Eugènia de Berga\";\"main\"\n\"3109894\";\"Santa Eugenia de Berga\";\"ascii\"\n\"3109911\";\"Santa Elena de Jamuz\";\"main\"\n\"3109925\";\"Santa Cruz del Retamar\";\"main\"\n\"3109925\";\"Santa Cruz de Retamar\";\"other\"\n\"3109935\";\"Santa Cruz de Bezana\";\"main\"\n\"3109956\";\"Santa Cristina de la Polvorosa\";\"main\"\n\"3109966\";\"Santa Comba\";\"main\"\n\"3109981\";\"Santa Coloma de Gramenet\";\"main\"\n\"3109981\";\"Santa-Koloma-de-Gramanet\";\"other\"\n\"3109981\";\"Санта-Колома-де-Граманет\";\"other\"\n\"3109982\";\"Santa Coloma de Farners\";\"main\"\n\"3109982\";\"Santa Colama de Farnes\";\"other\"\n\"3109982\";\"Santa Colama de Farnés\";\"other\"\n\"3109982\";\"Santa Coloma de Farnes\";\"other\"\n\"3109982\";\"Santa Coloma de Farnés\";\"other\"\n\"3109983\";\"Santa Coloma de Cervelló\";\"main\"\n\"3109983\";\"Santa Coloma de Cervello\";\"ascii\"\n\"3109983\";\"Santa Coloma\";\"other\"\n\"3109983\";\"Santa Colomba de Cervello\";\"other\"\n\"3109983\";\"Santa Colomba de Cervelló\";\"other\"\n\"3110010\";\"Santacara\";\"main\"\n\"3110016\";\"Santa Bárbara\";\"main\"\n\"3110016\";\"Santa Barbara\";\"ascii\"\n\"3110040\";\"San Sebastián de los Reyes\";\"main\"\n\"3110040\";\"San Sebastian de los Reyes\";\"ascii\"\n\"3110040\";\"S.S. de los Reyes\";\"other\"\n\"3110040\";\"SS de los Reyes\";\"other\"\n\"3110040\";\"Sanse\";\"other\"\n\"3110044\";\"San Sebastián\";\"main\"\n\"3110044\";\"San Sebastian\";\"ascii\"\n\"3110044\";\"Donosti\";\"other\"\n\"3110044\";\"Donostia\";\"other\"\n\"3110044\";\"Donostia-San Sebastian\";\"other\"\n\"3110044\";\"Donostia-San Sebastián\";\"other\"\n\"3110044\";\"Donostio\";\"other\"\n\"3110044\";\"La Bella Easo\";\"other\"\n\"3110044\";\"Saint-Sebastien\";\"other\"\n\"3110044\";\"Saint-Sébastien\";\"other\"\n\"3110044\";\"San-Sebast'jan\";\"other\"\n\"3110044\";\"Sanse\";\"other\"\n\"3110044\";\"Sant Sebastia\";\"other\"\n\"3110044\";\"Sant Sebastià\";\"other\"\n\"3110044\";\"Sao Sebastiao\";\"other\"\n\"3110044\";\"São Sebastião\";\"other\"\n\"3110044\";\"san sbastyan\";\"other\"\n\"3110044\";\"sheng sai wa si ti an\";\"other\"\n\"3110044\";\"Сан-Себастьян\";\"other\"\n\"3110044\";\"סן סבסטיאן\";\"other\"\n\"3110044\";\"سان سباستيان\";\"other\"\n\"3110044\";\"サン・セバスティアン\";\"other\"\n\"3110044\";\"圣塞瓦斯提安\";\"other\"\n\"3110064\";\"Sant Sadurní d'Anoia\";\"main\"\n\"3110064\";\"Sant Sadurni d'Anoia\";\"ascii\"\n\"3110064\";\"Sant Sadurni\";\"other\"\n\"3110064\";\"Sant Sadurní\";\"other\"\n\"3110092\";\"San Román\";\"main\"\n\"3110092\";\"San Roman\";\"ascii\"\n\"3110092\";\"Cervantes\";\"other\"\n\"3110101\";\"Sant Quirze del Vallès\";\"main\"\n\"3110101\";\"Sant Quirze del Valles\";\"ascii\"\n\"3110101\";\"San Quirico de Tarrasa\";\"other\"\n\"3110101\";\"San Quírico de Tarrasa\";\"other\"\n\"3110142\";\"Sant Pere de Riudebitlles\";\"main\"\n\"3110143\";\"Sant Pere de Ribes\";\"main\"\n\"3110143\";\"San Pedro de Ribas\";\"other\"\n\"3110254\";\"San Miguel de Meruelo\";\"main\"\n\"3110254\";\"Meruelo\";\"other\"\n\"3110305\";\"San Mateo de Gállego\";\"main\"\n\"3110305\";\"San Mateo de Gallego\";\"ascii\"\n\"3110326\";\"San Martín de Valdeiglesias\";\"main\"\n\"3110326\";\"San Martin de Valdeiglesias\";\"ascii\"\n\"3110326\";\"San Martin de Valdieglesias\";\"other\"\n\"3110360\";\"San Martín de la Vega\";\"main\"\n\"3110360\";\"San Martin de la Vega\";\"ascii\"\n\"3110374\";\"San Martín de Elines\";\"main\"\n\"3110374\";\"San Martin de Elines\";\"ascii\"\n\"3110374\";\"San Martin\";\"other\"\n\"3110374\";\"Valderredible\";\"other\"\n\"3110458\";\"San Lorenzo de El Escorial\";\"main\"\n\"3110458\";\"El Escorial\";\"other\"\n\"3110458\";\"Eskorialo\";\"other\"\n\"3110458\";\"San Lorenzo\";\"other\"\n\"3110458\";\"San Lorenzo del Escorial\";\"other\"\n\"3110479\";\"San Leonardo de Yagüe\";\"main\"\n\"3110479\";\"San Leonardo de Yague\";\"ascii\"\n\"3110479\";\"Leonardo\";\"other\"\n\"3110479\";\"San Leonardo\";\"other\"\n\"3110479\";\"San Leonardo de Yaguee\";\"other\"\n\"3110482\";\"San Justo de la Vega\";\"main\"\n\"3110499\";\"Sant Julià de Cerdanyola\";\"main\"\n\"3110499\";\"Sant Julia de Cerdanyola\";\"ascii\"\n\"3110516\";\"Vilassar de Mar\";\"main\"\n\"3110516\";\"Vilassar del Mar\";\"other\"\n\"3110519\";\"Sant Joan Despí\";\"main\"\n\"3110519\";\"Sant Joan Despi\";\"ascii\"\n\"3110528\";\"San Juan de Moró\";\"main\"\n\"3110528\";\"San Juan de Moro\";\"ascii\"\n\"3110528\";\"Caserio San Juan de Moro\";\"other\"\n\"3110528\";\"Caserío San Juan de Moró\";\"other\"\n\"3110528\";\"Sant Joan de Moro\";\"other\"\n\"3110533\";\"Sant Joan de les Abadesses\";\"main\"\n\"3110581\";\"San Ildefonso\";\"main\"\n\"3110581\";\"La Granja\";\"other\"\n\"3110581\";\"La Granja de San Ildefonso\";\"other\"\n\"3110581\";\"San Ildefanso\";\"other\"\n\"3110589\";\"Sangüesa\";\"main\"\n\"3110589\";\"Sanguesa\";\"ascii\"\n\"3110589\";\"Sangueesa\";\"other\"\n\"3110589\";\"Zangotza\";\"other\"\n\"3110589\";\"Zangoza\";\"other\"\n\"3110610\";\"Sanxenxo\";\"main\"\n\"3110610\";\"Sangenjo\";\"other\"\n\"3110627\";\"San Fernando de Henares\";\"main\"\n\"3110642\";\"Sant Feliu de Llobregat\";\"main\"\n\"3110642\";\"Feliu-de-L'obregat\";\"other\"\n\"3110642\";\"San Feliu de Llobregat\";\"other\"\n\"3110642\";\"San Feliú de Llobregat\";\"other\"\n\"3110642\";\"Sant Feliu\";\"other\"\n\"3110642\";\"Фелиу-де-Льобрегат\";\"other\"\n\"3110643\";\"Sant Feliu de Guíxols\";\"main\"\n\"3110643\";\"Sant Feliu de Guixols\";\"ascii\"\n\"3110678\";\"San Esteban de Gormaz\";\"main\"\n\"3110718\";\"Sant Cugat del Vallès\";\"main\"\n\"3110718\";\"Sant Cugat del Valles\";\"ascii\"\n\"3110718\";\"Sant Cugat\";\"other\"\n\"3110723\";\"San Cristóbal de Segovia\";\"main\"\n\"3110723\";\"San Cristobal de Segovia\";\"ascii\"\n\"3110729\";\"San Cristóbal de Entreviñas\";\"main\"\n\"3110729\";\"San Cristobal de Entrevinas\";\"ascii\"\n\"3110813\";\"Sant Celoni\";\"main\"\n\"3110813\";\"San Celoni\";\"other\"\n\"3110821\";\"Sant Carles de la Ràpita\";\"main\"\n\"3110821\";\"Sant Carles de la Rapita\";\"ascii\"\n\"3110821\";\"San-Karlos-de-la-Rapita\";\"other\"\n\"3110821\";\"Сан-Карлос-де-ла-Рапита\";\"other\"\n\"3110834\";\"Sant Boi de Llobregat\";\"main\"\n\"3110850\";\"San Asensio\";\"main\"\n\"3110870\";\"San Antolín\";\"main\"\n\"3110870\";\"San Antolin\";\"ascii\"\n\"3110870\";\"Ibias\";\"other\"\n\"3110870\";\"San Antolin de Ibias\";\"other\"\n\"3110880\";\"San Andrés del Rabanedo\";\"main\"\n\"3110880\";\"San Andres del Rabanedo\";\"ascii\"\n\"3110880\";\"San Andres de Rabanedo\";\"other\"\n\"3110880\";\"San Andrés de Rabanedo\";\"other\"\n\"3110881\";\"Sant Andreu de Llavaneres\";\"main\"\n\"3110885\";\"Sant Andreu de la Barca\";\"main\"\n\"3110885\";\"San Andres de la Barca\";\"other\"\n\"3110885\";\"San Andrés de la Barca\";\"other\"\n\"3110906\";\"San Amaro\";\"main\"\n\"3110911\";\"San Agustín de Guadalix\";\"main\"\n\"3110911\";\"San Agustin de Guadalix\";\"ascii\"\n\"3110911\";\"San Agustin\";\"other\"\n\"3110911\";\"San Agustin del Guadalix\";\"other\"\n\"3110911\";\"San Agustín\";\"other\"\n\"3110911\";\"San Agustín del Guadalix\";\"other\"\n\"3110921\";\"Sant Adrià de Besòs\";\"main\"\n\"3110921\";\"Sant Adria de Besos\";\"ascii\"\n\"3110921\";\"Sant Adria\";\"other\"\n\"3110921\";\"Sant Adrià\";\"other\"\n\"3110924\";\"San Adrián\";\"main\"\n\"3110924\";\"San Adrian\";\"ascii\"\n\"3110938\";\"Samos\";\"main\"\n\"3110962\";\"Sama\";\"main\"\n\"3110962\";\"Langreo\";\"other\"\n\"3110962\";\"Llangreu\";\"other\"\n\"3110962\";\"Llangréu\";\"other\"\n\"3110962\";\"Sama de Langreo\";\"other\"\n\"3110962\";\"Same\";\"other\"\n\"3110962\";\"Саме\";\"other\"\n\"3110967\";\"Salvatierra\";\"main\"\n\"3110967\";\"Agurain\";\"other\"\n\"3110983\";\"Salt\";\"main\"\n\"3110986\";\"Salou\";\"main\"\n\"3110986\";\"Салоу\";\"other\"\n\"3111001\";\"Sallent de Gállego\";\"main\"\n\"3111001\";\"Sallent de Gallego\";\"ascii\"\n\"3111001\";\"Sallen de Galligo\";\"other\"\n\"3111001\";\"Sallent\";\"other\"\n\"3111001\";\"Sallén de Galligo\";\"other\"\n\"3111003\";\"Sallent\";\"main\"\n\"3111003\";\"Sallent de Llobregat\";\"other\"\n\"3111065\";\"Saldaña\";\"main\"\n\"3111065\";\"Saldana\";\"ascii\"\n\"3111092\";\"Salas de los Infantes\";\"main\"\n\"3111101\";\"Salas\";\"main\"\n\"3111108\";\"Salamanca\";\"main\"\n\"3111108\";\"Helmantica\";\"other\"\n\"3111108\";\"Salamanka\";\"other\"\n\"3111108\";\"Salamanko\";\"other\"\n\"3111108\";\"Salamanque\";\"other\"\n\"3111108\";\"Salmantica\";\"other\"\n\"3111108\";\"saramanka\";\"other\"\n\"3111108\";\"slmnqt\";\"other\"\n\"3111108\";\"Саламанка\";\"other\"\n\"3111108\";\"سلمنقة\";\"other\"\n\"3111108\";\"サラマンカ\";\"other\"\n\"3111131\";\"Sahagún\";\"main\"\n\"3111131\";\"Sahagun\";\"ascii\"\n\"3111131\";\"Sant Fagund\";\"other\"\n\"3111157\";\"Sádaba\";\"main\"\n\"3111157\";\"Sadaba\";\"ascii\"\n\"3111158\";\"Sada\";\"main\"\n\"3111158\";\"Sada da Area\";\"other\"\n\"3111158\";\"Santa Maria de Sada\";\"other\"\n\"3111158\";\"Santa María de Sada\";\"other\"\n\"3111164\";\"Sacedón\";\"main\"\n\"3111164\";\"Sacedon\";\"ascii\"\n\"3111185\";\"Sabiñánigo\";\"main\"\n\"3111185\";\"Sabinanigo\";\"ascii\"\n\"3111185\";\"Samianigo\";\"other\"\n\"3111187\";\"Sabero\";\"main\"\n\"3111199\";\"Sabadell\";\"main\"\n\"3111240\";\"Ruesga\";\"main\"\n\"3111251\";\"Rueda\";\"main\"\n\"3111294\";\"Rubí\";\"main\"\n\"3111294\";\"Rubi\";\"ascii\"\n\"3111294\";\"Руби\";\"other\"\n\"3111344\";\"Rosell\";\"main\"\n\"3111344\";\"Rossell\";\"other\"\n\"3111348\";\"Roses\";\"main\"\n\"3111348\";\"Rhode\";\"other\"\n\"3111348\";\"Rosas\";\"other\"\n\"3111348\";\"Росас\";\"other\"\n\"3111353\";\"Rosal\";\"main\"\n\"3111353\";\"Santa Marina\";\"other\"\n\"3111459\";\"Rodeiro\";\"main\"\n\"3111468\";\"Roda de Barà\";\"main\"\n\"3111468\";\"Roda de Bara\";\"ascii\"\n\"3111468\";\"Roda de Bera\";\"other\"\n\"3111468\";\"Roda de Berà\";\"other\"\n\"3111525\";\"Robledo de Chavela\";\"main\"\n\"3111567\";\"Roa\";\"main\"\n\"3111590\";\"Riudoms\";\"main\"\n\"3111590\";\"Riudors\";\"other\"\n\"3111590\";\"Ruidoms\";\"other\"\n\"3111590\";\"Ruidons\";\"other\"\n\"3111592\";\"Riudellots de la Selva\";\"main\"\n\"3111596\";\"Riudecols\";\"main\"\n\"3111605\";\"Ripollet\";\"main\"\n\"3111607\";\"Ripoll\";\"main\"\n\"3111607\";\"Rivipolli\";\"other\"\n\"3111607\";\"Rivipullo\";\"other\"\n\"3111612\";\"Ríotorto\";\"main\"\n\"3111612\";\"Riotorto\";\"ascii\"\n\"3111612\";\"San Pedro\";\"other\"\n\"3111640\";\"Riós\";\"main\"\n\"3111640\";\"Rios\";\"ascii\"\n\"3111665\";\"Ríofrío de Aliste\";\"main\"\n\"3111665\";\"Riofrio de Aliste\";\"ascii\"\n\"3111665\";\"Riofrio\";\"other\"\n\"3111704\";\"Río Aller\";\"main\"\n\"3111704\";\"Rio Aller\";\"ascii\"\n\"3111717\";\"Rincón de Soto\";\"main\"\n\"3111717\";\"Rincon de Soto\";\"ascii\"\n\"3111769\";\"Ricla\";\"main\"\n\"3111781\";\"Ribesalbes\";\"main\"\n\"3111807\";\"Ribeira\";\"main\"\n\"3111822\";\"Luintra\";\"main\"\n\"3111822\";\"San Estebo\";\"other\"\n\"3111825\";\"Ribes de Freser\";\"main\"\n\"3111845\";\"Ribaforada\";\"main\"\n\"3111847\";\"Ribadumia\";\"main\"\n\"3111847\";\"Santa Eulalia\";\"other\"\n\"3111855\";\"Ribadesella\";\"main\"\n\"3111855\";\"Ribesella\";\"other\"\n\"3111859\";\"Ribadeo\";\"main\"\n\"3111863\";\"Ribadavia\";\"main\"\n\"3111867\";\"Riaza\";\"main\"\n\"3111867\";\"Riofrio de Riaza\";\"other\"\n\"3111879\";\"Rianxo\";\"main\"\n\"3111933\";\"Reus\";\"main\"\n\"3111933\";\"Реус\";\"other\"\n\"3112008\";\"Reocín\";\"main\"\n\"3112008\";\"Reocin\";\"ascii\"\n\"3112011\";\"Errenteria\";\"main\"\n\"3112011\";\"Orereta\";\"other\"\n\"3112011\";\"Renteria\";\"other\"\n\"3112011\";\"Rentería\";\"other\"\n\"3112042\";\"Remolinos\";\"main\"\n\"3112075\";\"Reinosa\";\"main\"\n\"3112154\";\"Redondela\";\"main\"\n\"3112154\";\"Редондела\";\"other\"\n\"3112188\";\"Recas\";\"main\"\n\"3112276\";\"Rascafría\";\"main\"\n\"3112276\";\"Rascafria\";\"ascii\"\n\"3112325\";\"Ramales de la Victoria\";\"main\"\n\"3112325\";\"Ramales\";\"other\"\n\"3112338\";\"Rairiz de Veiga\";\"main\"\n\"3112388\";\"Rábade\";\"main\"\n\"3112388\";\"Rabade\";\"ascii\"\n\"3112388\";\"Santa Marina\";\"other\"\n\"3112391\";\"Quismondo\";\"main\"\n\"3112395\";\"Quiroga\";\"main\"\n\"3112403\";\"Quinto\";\"main\"\n\"3112454\";\"Quintanilla de Onésimo\";\"main\"\n\"3112454\";\"Quintanilla de Onesimo\";\"ascii\"\n\"3112454\";\"Quintanilla de Abajo\";\"other\"\n\"3112509\";\"Quintanar de la Sierra\";\"main\"\n\"3112541\";\"Quintana del Castillo\";\"main\"\n\"3112573\";\"Quijorna\";\"main\"\n\"3112586\";\"Quer\";\"main\"\n\"3112593\";\"Quel\";\"main\"\n\"3112615\";\"Quart d’Onyar\";\"main\"\n\"3112615\";\"Quart d'Onyar\";\"ascii\"\n\"3112615\";\"Quart\";\"other\"\n\"3112680\";\"Puigcerdà\";\"main\"\n\"3112680\";\"Puigcerda\";\"ascii\"\n\"3112717\";\"Puente Viesgo\";\"main\"\n\"3112721\";\"Puentes de García Rodríguez\";\"main\"\n\"3112721\";\"Puentes de Garcia Rodriguez\";\"ascii\"\n\"3112721\";\"As Pontes De Garcia Rodriguez\";\"other\"\n\"3112721\";\"As Pontes De García Rodríguez\";\"other\"\n\"3112732\";\"Puente la Reina\";\"main\"\n\"3112732\";\"Puente de la Reina\";\"other\"\n\"3112750\";\"Puente de Domingo Flórez\";\"main\"\n\"3112750\";\"Puente de Domingo Florez\";\"ascii\"\n\"3112761\";\"Ponteareas\";\"main\"\n\"3112784\";\"Puebla de Sanabria\";\"main\"\n\"3112788\";\"Poboa do Brollón\";\"main\"\n\"3112788\";\"Poboa do Brollon\";\"ascii\"\n\"3112788\";\"Puebla de Brollon\";\"other\"\n\"3112788\";\"Puebla de Brollón\";\"other\"\n\"3112795\";\"Puebla de Alfindén\";\"main\"\n\"3112795\";\"Puebla de Alfinden\";\"ascii\"\n\"3112841\";\"Priego\";\"main\"\n\"3112866\";\"Premià de Mar\";\"main\"\n\"3112866\";\"Premia de Mar\";\"ascii\"\n\"3112866\";\"Premija-de-Mar\";\"other\"\n\"3112866\";\"Премия-де-Мар\";\"other\"\n\"3112907\";\"Pradoluengo\";\"main\"\n\"3112966\";\"Pradejón\";\"main\"\n\"3112966\";\"Pradejon\";\"ascii\"\n\"3112989\";\"Pozuelo de Alarcón\";\"main\"\n\"3112989\";\"Pozuelo de Alarcon\";\"ascii\"\n\"3112989\";\"Posuehlo-de-Alarkon\";\"other\"\n\"3112989\";\"Pozuelo\";\"other\"\n\"3112989\";\"Посуэло-де-Аларкон\";\"other\"\n\"3113035\";\"Poio\";\"main\"\n\"3113035\";\"San Juan\";\"other\"\n\"3113082\";\"Portugalete\";\"main\"\n\"3113082\";\"Portu\";\"other\"\n\"3113082\";\"la villa jarrillera\";\"other\"\n\"3113082\";\"Португалете\";\"other\"\n\"3113108\";\"Portillo de Toledo\";\"main\"\n\"3113112\";\"Portillo\";\"main\"\n\"3113144\";\"Portbou\";\"main\"\n\"3113144\";\"Portbu\";\"other\"\n\"3113144\";\"Портбу\";\"other\"\n\"3113147\";\"Portas\";\"main\"\n\"3113147\";\"Santa Maria\";\"other\"\n\"3113147\";\"Santa María\";\"other\"\n\"3113157\";\"Porriño\";\"main\"\n\"3113157\";\"Porrino\";\"ascii\"\n\"3113209\";\"Pontevedra\";\"main\"\n\"3113209\";\"Pontevedro\";\"other\"\n\"3113209\";\"pontebedora\";\"other\"\n\"3113209\";\"Понтеведра\";\"other\"\n\"3113209\";\"ポンテベドラ\";\"other\"\n\"3113231\";\"Ponts\";\"main\"\n\"3113231\";\"Ponts-sous-Avranches\";\"other\"\n\"3113236\";\"Ponferrada\";\"main\"\n\"3113236\";\"Pomeriada\";\"other\"\n\"3113236\";\"Понферрада\";\"other\"\n\"3113254\";\"Polinyà\";\"main\"\n\"3113254\";\"Polinya\";\"ascii\"\n\"3113254\";\"Polinya del Valles\";\"other\"\n\"3113254\";\"Polinyà del Vallès\";\"other\"\n\"3113254\";\"Polinyá\";\"other\"\n\"3113267\";\"Pola de Somiedo\";\"main\"\n\"3113267\";\"Pola de Somieda\";\"other\"\n\"3113267\";\"Somiedo\";\"other\"\n\"3113268\";\"Pola de Siero\";\"main\"\n\"3113268\";\"Pola-de-S'ero\";\"other\"\n\"3113268\";\"Siero\";\"other\"\n\"3113268\";\"Пола-де-Сьеро\";\"other\"\n\"3113270\";\"Pola de Lena\";\"main\"\n\"3113270\";\"Lena\";\"other\"\n\"3113270\";\"Llena\";\"other\"\n\"3113270\";\"Pola de Llena\";\"other\"\n\"3113271\";\"Pola de Laviana\";\"main\"\n\"3113271\";\"Labiana\";\"other\"\n\"3113271\";\"Laviana\";\"other\"\n\"3113271\";\"Llaviana\";\"other\"\n\"3113271\";\"Pola de Labiana\";\"other\"\n\"3113272\";\"Pola de Allande\";\"main\"\n\"3113272\";\"Allande\";\"other\"\n\"3113272\";\"La Puela d'Ayande\";\"other\"\n\"3113331\";\"Plasencia\";\"main\"\n\"3113331\";\"Plasence\";\"other\"\n\"3113331\";\"Plasencio\";\"other\"\n\"3113331\";\"Plasensia\";\"other\"\n\"3113331\";\"Plasència\";\"other\"\n\"3113331\";\"Пласенсиа\";\"other\"\n\"3113402\";\"Piornal\";\"main\"\n\"3113415\";\"Pinto\";\"main\"\n\"3113415\";\"Пинто\";\"other\"\n\"3113420\";\"Pinseque\";\"main\"\n\"3113429\";\"Pinofranqueado\";\"main\"\n\"3113526\";\"Pineda de Mar\";\"main\"\n\"3113526\";\"Pineda\";\"other\"\n\"3113526\";\"Пинеда де Мар\";\"other\"\n\"3113549\";\"Pina de Ebro\";\"main\"\n\"3113549\";\"Pina\";\"other\"\n\"3113555\";\"Piloña\";\"main\"\n\"3113555\";\"Pilona\";\"ascii\"\n\"3113576\";\"Piera\";\"main\"\n\"3113590\";\"Piedralaves\";\"main\"\n\"3113663\";\"Petín\";\"main\"\n\"3113663\";\"Petin\";\"ascii\"\n\"3113733\";\"el Perelló\";\"main\"\n\"3113733\";\"el Perello\";\"ascii\"\n\"3113733\";\"El Perello\";\"other\"\n\"3113733\";\"El Perelló\";\"other\"\n\"3113733\";\"Perello\";\"other\"\n\"3113733\";\"Perelló\";\"other\"\n\"3113738\";\"Pereiro de Aguiar\";\"main\"\n\"3113800\";\"Peralta\";\"main\"\n\"3113800\";\"Azkoien\";\"other\"\n\"3113801\";\"Perales de Tajuña\";\"main\"\n\"3113801\";\"Perales de Tajuna\";\"ascii\"\n\"3113801\";\"Tajuna\";\"other\"\n\"3113801\";\"Tajuña\";\"other\"\n\"3113860\";\"Peníscola\";\"main\"\n\"3113860\";\"Peniscola\";\"ascii\"\n\"3113860\";\"Penhiscola\";\"other\"\n\"3113860\";\"Penhíscola\";\"other\"\n\"3113860\";\"Peñíscola\";\"other\"\n\"3113910\";\"Peñaranda de Bracamonte\";\"main\"\n\"3113910\";\"Penaranda de Bracamonte\";\"ascii\"\n\"3113944\";\"Penagos\";\"main\"\n\"3113957\";\"Peñafiel\";\"main\"\n\"3113957\";\"Penafiel\";\"ascii\"\n\"3114019\";\"Pelayos de la Presa\";\"main\"\n\"3114097\";\"Pedrola\";\"main\"\n\"3114101\";\"Pedro Bernardo\";\"main\"\n\"3114112\";\"Pedrezuela\";\"main\"\n\"3114138\";\"Pedrajas de San Esteban\";\"main\"\n\"3114204\";\"Pastrana\";\"main\"\n\"3114245\";\"Parres\";\"main\"\n\"3114256\";\"Parla\";\"main\"\n\"3114256\";\"Парла\";\"other\"\n\"3114267\";\"Parets del Vallès\";\"main\"\n\"3114267\";\"Parets del Valles\";\"ascii\"\n\"3114267\";\"Sant Esteve de Parets\";\"other\"\n\"3114273\";\"Paredes de Nava\";\"main\"\n\"3114273\";\"Paredes\";\"other\"\n\"3114317\";\"Páramo\";\"main\"\n\"3114317\";\"Paramo\";\"ascii\"\n\"3114317\";\"San Miguel\";\"other\"\n\"3114348\";\"Paradela\";\"main\"\n\"3114348\";\"San Miguel\";\"other\"\n\"3114397\";\"Paracuellos de Jarama\";\"main\"\n\"3114411\";\"Pantoja\";\"main\"\n\"3114472\";\"Pamplona\";\"main\"\n\"3114472\";\"Iruinea\";\"other\"\n\"3114472\";\"Iruna\";\"other\"\n\"3114472\";\"Irunea\";\"other\"\n\"3114472\";\"Iruña\";\"other\"\n\"3114472\";\"Iruñea\";\"other\"\n\"3114472\";\"Lungsod ng Irunea\";\"other\"\n\"3114472\";\"Lungsod ng Iruñea\";\"other\"\n\"3114472\";\"Pampeluna\";\"other\"\n\"3114472\";\"Pampelune\";\"other\"\n\"3114472\";\"Pampljona\";\"other\"\n\"3114472\";\"Pamplono\";\"other\"\n\"3114472\";\"Pompaelo\";\"other\"\n\"3114472\";\"bamblwna\";\"other\"\n\"3114472\";\"panpurona\";\"other\"\n\"3114472\";\"Памплона\";\"other\"\n\"3114472\";\"Памплёна\";\"other\"\n\"3114472\";\"بامبلونا\";\"other\"\n\"3114472\";\"パンプローナ\";\"other\"\n\"3114479\";\"Pals\";\"main\"\n\"3114479\";\"Pais\";\"other\"\n\"3114479\";\"Palls\";\"other\"\n\"3114516\";\"Pallejà\";\"main\"\n\"3114516\";\"Palleja\";\"ascii\"\n\"3114531\";\"Palencia\";\"main\"\n\"3114531\";\"Palencio\";\"other\"\n\"3114531\";\"Palensija\";\"other\"\n\"3114531\";\"Pallantia\";\"other\"\n\"3114531\";\"Palència\";\"other\"\n\"3114531\";\"Palência\";\"other\"\n\"3114531\";\"parenshia\";\"other\"\n\"3114531\";\"Паленсия\";\"other\"\n\"3114531\";\"パレンシア\";\"other\"\n\"3114535\";\"Palazuelos de Eresma\";\"main\"\n\"3114566\";\"Palamós\";\"main\"\n\"3114566\";\"Palamos\";\"ascii\"\n\"3114567\";\"Palafrugell\";\"main\"\n\"3114567\";\"Palafruzhel'\";\"other\"\n\"3114567\";\"Палафружель\";\"other\"\n\"3114581\";\"Palacios del Sil\";\"main\"\n\"3114581\";\"Palacios\";\"other\"\n\"3114643\";\"Padrón\";\"main\"\n\"3114643\";\"Padron\";\"ascii\"\n\"3114649\";\"Padrenda\";\"main\"\n\"3114649\";\"San Ciprian\";\"other\"\n\"3114649\";\"San Ciprián\";\"other\"\n\"3114697\";\"Oyón\";\"main\"\n\"3114697\";\"Oyon\";\"ascii\"\n\"3114697\";\"Oion\";\"other\"\n\"3114711\";\"Oviedo\";\"main\"\n\"3114711\";\"Aueda\";\"other\"\n\"3114711\";\"Ov'edo\";\"other\"\n\"3114711\";\"Ovetus\";\"other\"\n\"3114711\";\"Ovijedo\";\"other\"\n\"3114711\";\"Uvieu\";\"other\"\n\"3114711\";\"Uviéu\";\"other\"\n\"3114711\";\"awfyydw\";\"other\"\n\"3114711\";\"obiedo\";\"other\"\n\"3114711\";\"Аўеда\";\"other\"\n\"3114711\";\"Овиједо\";\"other\"\n\"3114711\";\"Овьедо\";\"other\"\n\"3114711\";\"אוביידו\";\"other\"\n\"3114711\";\"أوفييدو\";\"other\"\n\"3114711\";\"オビエド\";\"other\"\n\"3114726\";\"Outes\";\"main\"\n\"3114732\";\"Outeiro\";\"main\"\n\"3114745\";\"Ourol\";\"main\"\n\"3114745\";\"San Julian\";\"other\"\n\"3114745\";\"San Julián\";\"other\"\n\"3114866\";\"Urtuella\";\"main\"\n\"3114866\";\"Ortuella\";\"other\"\n\"3114904\";\"Oroso\";\"main\"\n\"3114912\";\"Orpesa/Oropesa del Mar\";\"main\"\n\"3114912\";\"Oropesa del Mar\";\"other\"\n\"3114912\";\"Orpesa\";\"other\"\n\"3114942\";\"Orio\";\"main\"\n\"3114957\";\"Oria\";\"main\"\n\"3114965\";\"Ourense\";\"main\"\n\"3114965\";\"Orense\";\"other\"\n\"3114965\";\"Orenso\";\"other\"\n\"3114965\";\"ourense\";\"other\"\n\"3114965\";\"Оренсе\";\"other\"\n\"3114965\";\"オウレンセ\";\"other\"\n\"3114980\";\"Urduña\";\"main\"\n\"3114980\";\"Urduna\";\"ascii\"\n\"3114980\";\"Orduna\";\"other\"\n\"3114980\";\"Orduña\";\"other\"\n\"3114992\";\"Ordes\";\"main\"\n\"3114997\";\"Orkoien\";\"main\"\n\"3114997\";\"Orcoyen\";\"other\"\n\"3115028\";\"Onzonilla\";\"main\"\n\"3115056\";\"Ondarroa\";\"main\"\n\"3115056\";\"Ondárroa\";\"other\"\n\"3115063\";\"Oñati\";\"main\"\n\"3115063\";\"Onate\";\"ascii\"\n\"3115063\";\"Onati\";\"other\"\n\"3115063\";\"Oñate\";\"other\"\n\"3115068\";\"Oña\";\"main\"\n\"3115068\";\"Ona\";\"ascii\"\n\"3115082\";\"Oltza\";\"main\"\n\"3115082\";\"Olza\";\"other\"\n\"3115088\";\"Olvega\";\"main\"\n\"3115093\";\"Olot\";\"main\"\n\"3115093\";\"Олот\";\"other\"\n\"3115094\";\"Olost\";\"main\"\n\"3115118\";\"Olmedo\";\"main\"\n\"3115150\";\"Olivella\";\"main\"\n\"3115162\";\"Olite\";\"main\"\n\"3115162\";\"Oligitum\";\"other\"\n\"3115170\";\"Oliana\";\"main\"\n\"3115171\";\"Olesa de Montserrat\";\"main\"\n\"3115171\";\"Olesa\";\"other\"\n\"3115172\";\"Olesa de Bonesvalls\";\"main\"\n\"3115172\";\"Olesa de Bonesvall\";\"other\"\n\"3115177\";\"Oleiros\";\"main\"\n\"3115177\";\"Olejros\";\"other\"\n\"3115177\";\"Santa Maria\";\"other\"\n\"3115177\";\"Santa María\";\"other\"\n\"3115177\";\"Олейрос\";\"other\"\n\"3115190\";\"Olazagutía\";\"main\"\n\"3115190\";\"Olazagutia\";\"ascii\"\n\"3115233\";\"Oimbra\";\"main\"\n\"3115252\";\"Òdena\";\"main\"\n\"3115252\";\"Odena\";\"ascii\"\n\"3115303\";\"Nuñomoral\";\"main\"\n\"3115303\";\"Nunomoral\";\"ascii\"\n\"3115307\";\"Numancia de la Sagra\";\"main\"\n\"3115314\";\"Nuevo Baztán\";\"main\"\n\"3115314\";\"Nuevo Baztan\";\"ascii\"\n\"3115363\";\"Noreña\";\"main\"\n\"3115363\";\"Norena\";\"ascii\"\n\"3115370\";\"Nonaspe\";\"main\"\n\"3115376\";\"Noja\";\"main\"\n\"3115394\";\"Nogueira de Ramuín\";\"main\"\n\"3115394\";\"Nogueira de Ramuin\";\"ascii\"\n\"3115394\";\"Nogueira\";\"other\"\n\"3115463\";\"Nigrán\";\"main\"\n\"3115463\";\"Nigran\";\"ascii\"\n\"3115463\";\"San Felix\";\"other\"\n\"3115463\";\"San Félix\";\"other\"\n\"3115523\";\"Negreira\";\"main\"\n\"3115550\";\"Navia de Suarna\";\"main\"\n\"3115553\";\"Navia\";\"main\"\n\"3115584\";\"Navas de Oro\";\"main\"\n\"3115585\";\"Navas del Rey\";\"main\"\n\"3115593\";\"Navàs\";\"main\"\n\"3115593\";\"Navas\";\"ascii\"\n\"3115593\";\"Navars\";\"other\"\n\"3115616\";\"Navarcles\";\"main\"\n\"3115629\";\"Navaluenga\";\"main\"\n\"3115634\";\"Navalperal de Pinares\";\"main\"\n\"3115634\";\"Navalperal\";\"other\"\n\"3115642\";\"Navalmanzano\";\"main\"\n\"3115659\";\"Navalcarnero\";\"main\"\n\"3115660\";\"Navalcán\";\"main\"\n\"3115660\";\"Navalcan\";\"ascii\"\n\"3115660\";\"Navalacan\";\"other\"\n\"3115665\";\"Navalagamella\";\"main\"\n\"3115691\";\"Nava del Rey\";\"main\"\n\"3115696\";\"Nava de la Asunción\";\"main\"\n\"3115696\";\"Nava de la Asuncion\";\"ascii\"\n\"3115700\";\"Navaconcejo\";\"main\"\n\"3115704\";\"Navacerrada\";\"main\"\n\"3115739\";\"Narón\";\"main\"\n\"3115739\";\"Naron\";\"ascii\"\n\"3115739\";\"San Julian\";\"other\"\n\"3115739\";\"San Julian de Naron\";\"other\"\n\"3115739\";\"Нарон\";\"other\"\n\"3115780\";\"Nájera\";\"main\"\n\"3115780\";\"Najera\";\"ascii\"\n\"3115780\";\"Naiara\";\"other\"\n\"3115823\";\"Muros de Nalón\";\"main\"\n\"3115823\";\"Muros de Nalon\";\"ascii\"\n\"3115823\";\"Muros\";\"other\"\n\"3115823\";\"Santa Maria de Muros de Nalon\";\"other\"\n\"3115823\";\"Santa María de Muros de Nalón\";\"other\"\n\"3115824\";\"Muros\";\"main\"\n\"3115837\";\"Murillo de Río Leza\";\"main\"\n\"3115837\";\"Murillo de Rio Leza\";\"ascii\"\n\"3115837\";\"Murillo\";\"other\"\n\"3115874\";\"Murguía\";\"main\"\n\"3115874\";\"Murguia\";\"ascii\"\n\"3115874\";\"Murgia\";\"other\"\n\"3115874\";\"Murguia Zuya\";\"other\"\n\"3115874\";\"Zuya\";\"other\"\n\"3115878\";\"Murchante\";\"main\"\n\"3115907\";\"Mungia\";\"main\"\n\"3115907\";\"Munguia\";\"other\"\n\"3115907\";\"Munguía\";\"other\"\n\"3115933\";\"Muiños\";\"main\"\n\"3115933\";\"Muinos\";\"ascii\"\n\"3115943\";\"Mugardos\";\"main\"\n\"3115958\";\"Muel\";\"main\"\n\"3115985\";\"Moià\";\"main\"\n\"3115985\";\"Moia\";\"ascii\"\n\"3116018\";\"Mutriku\";\"main\"\n\"3116018\";\"Motrico\";\"other\"\n\"3116025\";\"Móstoles\";\"main\"\n\"3116025\";\"Mostoles\";\"ascii\"\n\"3116025\";\"Мостолес\";\"other\"\n\"3116057\";\"Mos\";\"main\"\n\"3116121\";\"Morella\";\"main\"\n\"3116157\";\"Morata de Tajuña\";\"main\"\n\"3116157\";\"Morata de Tajuna\";\"ascii\"\n\"3116157\";\"Morata\";\"other\"\n\"3116159\";\"Morata de Jalón\";\"main\"\n\"3116159\";\"Morata de Jalon\";\"ascii\"\n\"3116172\";\"Moraña\";\"main\"\n\"3116172\";\"Morana\";\"ascii\"\n\"3116172\";\"San Lorenzo\";\"other\"\n\"3116175\";\"Moralzarzal\";\"main\"\n\"3116178\";\"Morales de Toro\";\"main\"\n\"3116179\";\"Morales del Vino\";\"main\"\n\"3116189\";\"Moraleja del Vino\";\"main\"\n\"3116191\";\"Moraleja de Enmedio\";\"main\"\n\"3116198\";\"Moraleja\";\"main\"\n\"3116215\";\"Mora de Rubielos\";\"main\"\n\"3116224\";\"Monzón\";\"main\"\n\"3116224\";\"Monzon\";\"ascii\"\n\"3116224\";\"Montso\";\"other\"\n\"3116224\";\"Montsó\";\"other\"\n\"3116245\";\"Mont-roig del Camp\";\"main\"\n\"3116245\";\"Montroig\";\"other\"\n\"3116262\";\"Montornès del Vallès\";\"main\"\n\"3116262\";\"Montornes del Valles\";\"ascii\"\n\"3116276\";\"Montmeló\";\"main\"\n\"3116276\";\"Montmelo\";\"ascii\"\n\"3116318\";\"Monterroso\";\"main\"\n\"3116334\";\"Montemayor de Pililla\";\"main\"\n\"3116351\";\"Montehermoso\";\"main\"\n\"3116351\";\"Montehermosa\";\"other\"\n\"3116359\";\"Montederramo\";\"main\"\n\"3116411\";\"Montblanc\";\"main\"\n\"3116411\";\"Monblan\";\"other\"\n\"3116411\";\"Montblanch\";\"other\"\n\"3116411\";\"Монблан\";\"other\"\n\"3116441\";\"Montalbán\";\"main\"\n\"3116441\";\"Montalban\";\"ascii\"\n\"3116454\";\"Monreal del Campo\";\"main\"\n\"3116466\";\"Monistrol de Montserrat\";\"main\"\n\"3116466\";\"Monistrol\";\"other\"\n\"3116474\";\"Montgat\";\"main\"\n\"3116478\";\"Monforte de Lemos\";\"main\"\n\"3116478\";\"Monforte\";\"other\"\n\"3116482\";\"Monfero\";\"main\"\n\"3116482\";\"Monferro\";\"other\"\n\"3116482\";\"San Felix\";\"other\"\n\"3116482\";\"San Félix\";\"other\"\n\"3116503\";\"Arrasate\";\"main\"\n\"3116503\";\"Arrasate-Mondragon\";\"ascii\"\n\"3116503\";\"Arrasate edo Mondragon\";\"other\"\n\"3116503\";\"Arrasate-Mondragón\";\"other\"\n\"3116503\";\"Arresate\";\"other\"\n\"3116503\";\"Mondragoe\";\"other\"\n\"3116503\";\"Mondragon\";\"other\"\n\"3116503\";\"Mondrague\";\"other\"\n\"3116503\";\"Mondragón\";\"other\"\n\"3116503\";\"Montdragon\";\"other\"\n\"3116507\";\"Mondoñedo\";\"main\"\n\"3116507\";\"Mondonedo\";\"ascii\"\n\"3116507\";\"San Vicente\";\"other\"\n\"3116510\";\"Mondéjar\";\"main\"\n\"3116510\";\"Mondejar\";\"ascii\"\n\"3116514\";\"Mondariz\";\"main\"\n\"3116527\";\"Montcada i Reixac\";\"main\"\n\"3116527\";\"Moncada i Reixac\";\"other\"\n\"3116527\";\"Montcada\";\"other\"\n\"3116544\";\"Mombeltrán\";\"main\"\n\"3116544\";\"Mombeltran\";\"ascii\"\n\"3116553\";\"Mollet del Vallès\";\"main\"\n\"3116553\";\"Mollet del Valles\";\"ascii\"\n\"3116553\";\"Mollet del Vallés\";\"other\"\n\"3116554\";\"Mollerussa\";\"main\"\n\"3116554\";\"Mollerusa\";\"other\"\n\"3116554\";\"Morellusa\";\"other\"\n\"3116556\";\"Molledo\";\"main\"\n\"3116562\";\"Molins de Rei\";\"main\"\n\"3116562\";\"Molins\";\"other\"\n\"3116595\";\"Molina de Aragón\";\"main\"\n\"3116595\";\"Molina de Aragon\";\"ascii\"\n\"3116595\";\"Molina\";\"other\"\n\"3116595\";\"Molino de Aragon\";\"other\"\n\"3116595\";\"Molino de Aragón\";\"other\"\n\"3116619\";\"Mojados\";\"main\"\n\"3116637\";\"Moeche\";\"main\"\n\"3116637\";\"San Juan\";\"other\"\n\"3116653\";\"Moaña\";\"main\"\n\"3116653\";\"Moana\";\"ascii\"\n\"3116653\";\"San Martin\";\"other\"\n\"3116653\";\"San Martín\";\"other\"\n\"3116689\";\"Miranda de Ebro\";\"main\"\n\"3116689\";\"Miranda\";\"other\"\n\"3116689\";\"Miranda Ebro\";\"other\"\n\"3116689\";\"Miranda del Ebro\";\"other\"\n\"3116689\";\"Miranda-de-Ehbro\";\"other\"\n\"3116689\";\"Миранда-де-Эбро\";\"other\"\n\"3116706\";\"Miralcamp\";\"main\"\n\"3116708\";\"Miraflores de la Sierra\";\"main\"\n\"3116729\";\"Miño\";\"main\"\n\"3116729\";\"Mino\";\"ascii\"\n\"3116729\";\"Santa Maria\";\"other\"\n\"3116729\";\"Santa María\";\"other\"\n\"3116770\";\"Milagro\";\"main\"\n\"3116789\";\"Mieres\";\"main\"\n\"3116789\";\"M'eres\";\"other\"\n\"3116789\";\"Мьерес\";\"other\"\n\"3116794\";\"Miengo\";\"main\"\n\"3116829\";\"Mesia\";\"main\"\n\"3116829\";\"San Cristobal\";\"other\"\n\"3116829\";\"San Cristóbal\";\"other\"\n\"3116881\";\"Mequinensa / Mequinenza\";\"main\"\n\"3116881\";\"Mequinensa\";\"other\"\n\"3116881\";\"Mequinensa / Maquinenza\";\"other\"\n\"3116881\";\"Mequinenza\";\"other\"\n\"3116884\";\"Méntrida\";\"main\"\n\"3116884\";\"Mentrida\";\"ascii\"\n\"3116914\";\"Mendigorría\";\"main\"\n\"3116914\";\"Mendigorria\";\"ascii\"\n\"3116921\";\"Mendavia\";\"main\"\n\"3116921\";\"Mondaria\";\"other\"\n\"3116924\";\"Mendaro\";\"main\"\n\"3116939\";\"Melón\";\"main\"\n\"3116939\";\"Melon\";\"ascii\"\n\"3116955\";\"Melgar de Fernamental\";\"main\"\n\"3116963\";\"Mejorada del Campo\";\"main\"\n\"3116964\";\"Mejorada\";\"main\"\n\"3116968\";\"Meis\";\"main\"\n\"3116968\";\"San Martin\";\"other\"\n\"3116968\";\"San Martín\";\"other\"\n\"3116981\";\"Meira\";\"main\"\n\"3117000\";\"Mediona\";\"main\"\n\"3117008\";\"Medina de Ríoseco\";\"main\"\n\"3117008\";\"Medina de Rioseco\";\"ascii\"\n\"3117009\";\"Medina de Pomar\";\"main\"\n\"3117010\";\"Medina del Campo\";\"main\"\n\"3117010\";\"Medina-del'-Kampo\";\"other\"\n\"3117010\";\"Медина-дель-Кампо\";\"other\"\n\"3117041\";\"Meco\";\"main\"\n\"3117048\";\"Meaño\";\"main\"\n\"3117048\";\"Meano\";\"ascii\"\n\"3117048\";\"San Juan\";\"other\"\n\"3117076\";\"Mazaricos\";\"main\"\n\"3117091\";\"Mayorga\";\"main\"\n\"3117164\";\"Mataró\";\"main\"\n\"3117164\";\"Mataro\";\"ascii\"\n\"3117164\";\"Iluro\";\"other\"\n\"3117164\";\"Матаро\";\"other\"\n\"3117165\";\"Matapozuelos\";\"main\"\n\"3117166\";\"Mataporquera\";\"main\"\n\"3117166\";\"Valdeolea\";\"other\"\n\"3117188\";\"Matallana de Torío\";\"main\"\n\"3117188\";\"Matallana de Torio\";\"ascii\"\n\"3117200\";\"Matadepera\";\"main\"\n\"3117225\";\"Masquefa\";\"main\"\n\"3117232\";\"el Masnou\";\"main\"\n\"3117238\";\"Maside\";\"main\"\n\"3117281\";\"Masdenverge\";\"main\"\n\"3117289\";\"Mas de las Matas\";\"main\"\n\"3117331\";\"Martorell\";\"main\"\n\"3117331\";\"Martorelle\";\"other\"\n\"3117331\";\"Марторелле\";\"other\"\n\"3117409\";\"Marín\";\"main\"\n\"3117409\";\"Marin\";\"ascii\"\n\"3117420\";\"María de Huerva\";\"main\"\n\"3117420\";\"Maria de Huerva\";\"ascii\"\n\"3117420\";\"Maria\";\"other\"\n\"3117442\";\"Marcilla\";\"main\"\n\"3117443\";\"Marchamalo\";\"main\"\n\"3117501\";\"Manzaneda\";\"main\"\n\"3117501\";\"Mazaneda\";\"other\"\n\"3117503\";\"Manzanares el Real\";\"main\"\n\"3117527\";\"Mansilla de las Mulas\";\"main\"\n\"3117527\";\"Mansillas de las Mulas\";\"other\"\n\"3117533\";\"Manresa\";\"main\"\n\"3117533\";\"Манреса\";\"other\"\n\"3117539\";\"Manlleu\";\"main\"\n\"3117602\";\"Maluenda\";\"main\"\n\"3117606\";\"Malpica\";\"main\"\n\"3117606\";\"Malpica de Bergantinos\";\"other\"\n\"3117606\";\"Malpica de Bergantiños\";\"other\"\n\"3117623\";\"Mallén\";\"main\"\n\"3117623\";\"Mallen\";\"ascii\"\n\"3117636\";\"Malgrat de Mar\";\"main\"\n\"3117667\";\"Majadahonda\";\"main\"\n\"3117667\";\"Makhadaonda\";\"other\"\n\"3117667\";\"Махадаонда\";\"other\"\n\"3117708\";\"Magallón\";\"main\"\n\"3117708\";\"Magallon\";\"ascii\"\n\"3117715\";\"Maella\";\"main\"\n\"3117727\";\"Madrigal de la Vera\";\"main\"\n\"3117728\";\"Madrigal de las Altas Torres\";\"main\"\n\"3117728\";\"Madrigal\";\"other\"\n\"3117735\";\"Madrid\";\"main\"\n\"3117735\";\"La Villa y Corte\";\"other\"\n\"3117735\";\"Los Madriles\";\"other\"\n\"3117735\";\"Lungsod ng Madrid\";\"other\"\n\"3117735\";\"Madridas\";\"other\"\n\"3117735\";\"Madride\";\"other\"\n\"3117735\";\"Madridi\";\"other\"\n\"3117735\";\"Madrido\";\"other\"\n\"3117735\";\"Madril\";\"other\"\n\"3117735\";\"Madrite\";\"other\"\n\"3117735\";\"Madryd\";\"other\"\n\"3117735\";\"Madryt\";\"other\"\n\"3117735\";\"Madríd\";\"other\"\n\"3117735\";\"Magerit\";\"other\"\n\"3117735\";\"Maidrid\";\"other\"\n\"3117735\";\"Matritum\";\"other\"\n\"3117735\";\"Sanchinarro\";\"other\"\n\"3117735\";\"ma de li\";\"other\"\n\"3117735\";\"madeulideu\";\"other\"\n\"3117735\";\"madorido\";\"other\"\n\"3117735\";\"madorido shi\";\"other\"\n\"3117735\";\"madrid\";\"other\"\n\"3117735\";\"madrida\";\"other\"\n\"3117735\";\"madridi\";\"other\"\n\"3117735\";\"madryd\";\"other\"\n\"3117735\";\"mdryd\";\"other\"\n\"3117735\";\"Μαδρίτη\";\"other\"\n\"3117735\";\"Мадрид\";\"other\"\n\"3117735\";\"Мадрыд\";\"other\"\n\"3117735\";\"Մադրիդ\";\"other\"\n\"3117735\";\"מדריד\";\"other\"\n\"3117735\";\"مادرىد\";\"other\"\n\"3117735\";\"مادرید\";\"other\"\n\"3117735\";\"مدريد\";\"other\"\n\"3117735\";\"میڈرڈ\";\"other\"\n\"3117735\";\"ܡܕܪܝܕ\";\"other\"\n\"3117735\";\"मद्रीद\";\"other\"\n\"3117735\";\"माद्रिद\";\"other\"\n\"3117735\";\"มาดริด\";\"other\"\n\"3117735\";\"მადრიდი\";\"other\"\n\"3117735\";\"ማድሪድ\";\"other\"\n\"3117735\";\"マドリード\";\"other\"\n\"3117735\";\"マドリード市\";\"other\"\n\"3117735\";\"馬德里\";\"other\"\n\"3117735\";\"马德里\";\"other\"\n\"3117735\";\"마드리드\";\"other\"\n\"3117755\";\"Macotera\";\"main\"\n\"3117771\";\"Maceda\";\"main\"\n\"3117777\";\"Luzmela\";\"main\"\n\"3117777\";\"Mazcuerras\";\"other\"\n\"3117803\";\"Lumbrales\";\"main\"\n\"3117804\";\"Lumbier\";\"main\"\n\"3117804\";\"Ilunberri\";\"other\"\n\"3117811\";\"Lugones\";\"main\"\n\"3117811\";\"Llugones\";\"other\"\n\"3117814\";\"Lugo\";\"main\"\n\"3117814\";\"lwghw\";\"other\"\n\"3117814\";\"rugo\";\"other\"\n\"3117814\";\"Луго\";\"other\"\n\"3117814\";\"لوغو\";\"other\"\n\"3117814\";\"ルーゴ\";\"other\"\n\"3117849\";\"Luceni\";\"main\"\n\"3117850\";\"Lucena del Cid\";\"main\"\n\"3117850\";\"Llucena\";\"other\"\n\"3117862\";\"Luanco\";\"main\"\n\"3117862\";\"Gozon\";\"other\"\n\"3117862\";\"Lluancu\";\"other\"\n\"3117862\";\"Luanzo\";\"other\"\n\"3117862\";\"Santa Maria de Luanco\";\"other\"\n\"3117862\";\"Santa María de Luanco\";\"other\"\n\"3117888\";\"Lousame\";\"main\"\n\"3117945\";\"Los Santos de la Humosa\";\"main\"\n\"3117982\";\"Los Molinos\";\"main\"\n\"3118024\";\"Los Corrales de Buelna\";\"main\"\n\"3118024\";\"Los Corrales\";\"other\"\n\"3118057\";\"Losar de la Vera\";\"main\"\n\"3118058\";\"Los Arcos\";\"main\"\n\"3118120\";\"Lominchar\";\"main\"\n\"3118150\";\"Logroño\";\"main\"\n\"3118150\";\"Logrono\";\"ascii\"\n\"3118150\";\"Logron'o\";\"other\"\n\"3118150\";\"Logronjo\";\"other\"\n\"3118150\";\"Logronyo\";\"other\"\n\"3118150\";\"lwgrwnyw\";\"other\"\n\"3118150\";\"roguronyo\";\"other\"\n\"3118150\";\"Логроньо\";\"other\"\n\"3118150\";\"לוגרוניו\";\"other\"\n\"3118150\";\"ログローニョ\";\"other\"\n\"3118155\";\"Loeches\";\"main\"\n\"3118161\";\"Lodosa\";\"main\"\n\"3118175\";\"Lobios\";\"main\"\n\"3118212\";\"Lloret de Mar\";\"main\"\n\"3118212\";\"L'oret-de-Mar\";\"other\"\n\"3118212\";\"Ljoret de Mar\";\"other\"\n\"3118212\";\"Љорет де Мар\";\"other\"\n\"3118212\";\"Льорет-де-Мар\";\"other\"\n\"3118228\";\"Llodio\";\"main\"\n\"3118228\";\"Laudio\";\"other\"\n\"3118228\";\"Laudio-Llodio\";\"other\"\n\"3118228\";\"Plaza\";\"other\"\n\"3118228\";\"Plaza de Gogenuri\";\"other\"\n\"3118238\";\"Lliçà d'Amunt\";\"main\"\n\"3118238\";\"Llica d'Amunt\";\"ascii\"\n\"3118238\";\"Llissa de Munt\";\"other\"\n\"3118238\";\"Llissá de Munt\";\"other\"\n\"3118250\";\"Llers\";\"main\"\n\"3118287\";\"Llançà\";\"main\"\n\"3118287\";\"Llanca\";\"ascii\"\n\"3118287\";\"L'janssa\";\"other\"\n\"3118287\";\"Льянсса\";\"other\"\n\"3118304\";\"Llanes\";\"main\"\n\"3118307\";\"Llanera\";\"main\"\n\"3118307\";\"Santa Cruz\";\"other\"\n\"3118332\";\"Llamas de la Ribera\";\"main\"\n\"3118332\";\"Llamas\";\"other\"\n\"3118340\";\"Llagostera\";\"main\"\n\"3118370\";\"Linyola\";\"main\"\n\"3118370\";\"Linola\";\"other\"\n\"3118370\";\"Liñola\";\"other\"\n\"3118388\";\"Linares de Riofrío\";\"main\"\n\"3118388\";\"Linares de Riofrio\";\"ascii\"\n\"3118388\";\"Linares\";\"other\"\n\"3118415\";\"Limpias\";\"main\"\n\"3118415\";\"Rucoba\";\"other\"\n\"3118469\";\"Lezo\";\"main\"\n\"3118472\";\"Lezama\";\"main\"\n\"3118472\";\"Lexama\";\"other\"\n\"3118511\";\"Lerma\";\"main\"\n\"3118512\";\"Lerín\";\"main\"\n\"3118512\";\"Lerin\";\"ascii\"\n\"3118514\";\"Lleida\";\"main\"\n\"3118514\";\"Ilerda\";\"other\"\n\"3118514\";\"Ilerdo\";\"other\"\n\"3118514\";\"Lerida\";\"other\"\n\"3118514\";\"Lheida\";\"other\"\n\"3118514\";\"Lhèida\";\"other\"\n\"3118514\";\"Ljeida\";\"other\"\n\"3118514\";\"Lérida\";\"other\"\n\"3118514\";\"lyydh\";\"other\"\n\"3118514\";\"rerida\";\"other\"\n\"3118514\";\"ryeida\";\"other\"\n\"3118514\";\"Љеида\";\"other\"\n\"3118514\";\"Лерида\";\"other\"\n\"3118514\";\"ליידה\";\"other\"\n\"3118514\";\"リェイダ\";\"other\"\n\"3118514\";\"レリダ\";\"other\"\n\"3118523\";\"Lekeitio\";\"main\"\n\"3118523\";\"Lequeilio\";\"other\"\n\"3118523\";\"Lequeitio\";\"other\"\n\"3118532\";\"León\";\"main\"\n\"3118532\";\"Leon\";\"ascii\"\n\"3118532\";\"Ciuda de Llion\";\"other\"\n\"3118532\";\"Ciudá de Llión\";\"other\"\n\"3118532\";\"Leono\";\"other\"\n\"3118532\";\"Lleo\";\"other\"\n\"3118532\";\"Lleon\";\"other\"\n\"3118532\";\"Lleó\";\"other\"\n\"3118532\";\"Lleón\";\"other\"\n\"3118532\";\"lywn\";\"other\"\n\"3118532\";\"reon\";\"other\"\n\"3118532\";\"Леон\";\"other\"\n\"3118532\";\"ليون\";\"other\"\n\"3118532\";\"レオン\";\"other\"\n\"3118554\";\"Leioa\";\"main\"\n\"3118554\";\"Lejona\";\"other\"\n\"3118586\";\"Legorreta\";\"main\"\n\"3118594\";\"Leganés\";\"main\"\n\"3118594\";\"Leganes\";\"ascii\"\n\"3118594\";\"Леганес\";\"other\"\n\"3118605\";\"Ledesma\";\"main\"\n\"3118609\";\"Leciñena\";\"main\"\n\"3118609\";\"Lecinena\";\"ascii\"\n\"3118653\";\"Laza\";\"main\"\n\"3118771\";\"La Torre de Esteban Hambrán\";\"main\"\n\"3118771\";\"La Torre de Esteban Hambran\";\"ascii\"\n\"3118812\";\"Las Ventas de Retamosa\";\"main\"\n\"3118812\";\"Ventas de Retamosa\";\"other\"\n\"3118848\";\"Las Rozas de Madrid\";\"main\"\n\"3118848\";\"Las Rozas\";\"other\"\n\"3118848\";\"Las-Rosas-de-Madrid\";\"other\"\n\"3118848\";\"Rozas de Madrid\";\"other\"\n\"3118848\";\"Лас-Росас-де-Мадрид\";\"other\"\n\"3118866\";\"les Planes d'Hostoles\";\"main\"\n\"3118888\";\"Las Navas del Marqués\";\"main\"\n\"3118888\";\"Las Navas del Marques\";\"ascii\"\n\"3118888\";\"Las Navas\";\"other\"\n\"3118888\";\"Navas del Marques\";\"other\"\n\"3118900\";\"Las Matas\";\"main\"\n\"3118900\";\"Barrio Obrero Las Matas\";\"other\"\n\"3118900\";\"La Mata\";\"other\"\n\"3118952\";\"La Selva\";\"main\"\n\"3118952\";\"La Selva del Camp\";\"other\"\n\"3118952\";\"La Selva del Campo\";\"other\"\n\"3118952\";\"Selva\";\"other\"\n\"3118958\";\"La Secuita\";\"main\"\n\"3118961\";\"La Seca\";\"main\"\n\"3119027\";\"Lasarte\";\"main\"\n\"3119027\";\"Lasarte-Oria\";\"other\"\n\"3119053\";\"La Rúa\";\"main\"\n\"3119053\";\"La Rua\";\"ascii\"\n\"3119053\";\"Rua\";\"other\"\n\"3119081\";\"Larraga\";\"main\"\n\"3119099\";\"La Roca del Vallès\";\"main\"\n\"3119099\";\"La Roca del Valles\";\"ascii\"\n\"3119100\";\"La Robla\";\"main\"\n\"3119145\";\"Laredo\";\"main\"\n\"3119153\";\"Lardero\";\"main\"\n\"3119172\";\"Laracha\";\"main\"\n\"3119212\";\"La Pola de Gordón\";\"main\"\n\"3119212\";\"La Pola de Gordon\";\"ascii\"\n\"3119214\";\"la Pobla de Mafumet\";\"main\"\n\"3119214\";\"La Pobla de Mafumet\";\"other\"\n\"3119214\";\"Pobla de Mafumet\";\"other\"\n\"3119216\";\"La Pobla de Claramunt\";\"main\"\n\"3119216\";\"Claramunt\";\"other\"\n\"3119216\";\"Pobla de Claramunt\";\"other\"\n\"3119220\";\"La Plaza\";\"main\"\n\"3119220\";\"Teberga\";\"other\"\n\"3119220\";\"Teverga\";\"other\"\n\"3119231\";\"La Pineda\";\"main\"\n\"3119231\";\"Ла Пинеда\";\"other\"\n\"3119236\";\"La Pesga\";\"main\"\n\"3119262\";\"La Pedraja de Portillo\";\"main\"\n\"3119361\";\"Láncara\";\"main\"\n\"3119361\";\"Lancara\";\"ascii\"\n\"3119374\";\"Lanaja\";\"main\"\n\"3119509\";\"Lama\";\"main\"\n\"3119509\";\"San Salvador\";\"other\"\n\"3119531\";\"La Llagosta\";\"main\"\n\"3119536\";\"Lalín\";\"main\"\n\"3119536\";\"Lalin\";\"ascii\"\n\"3119536\";\"Лалин\";\"other\"\n\"3119541\";\"La Lastrilla\";\"main\"\n\"3119629\";\"Laguna de Negrillos\";\"main\"\n\"3119631\";\"Laguna de Duero\";\"main\"\n\"3119631\";\"Laguna-de-Duehro\";\"other\"\n\"3119631\";\"Лагуна-де-Дуэро\";\"other\"\n\"3119645\";\"Laguardia\";\"main\"\n\"3119645\";\"Biasteri\";\"other\"\n\"3119655\";\"La Granada\";\"main\"\n\"3119694\";\"la Garriga\";\"main\"\n\"3119704\";\"La Fuliola\";\"main\"\n\"3119704\";\"Fuliola\";\"other\"\n\"3119704\";\"la Fuliola\";\"other\"\n\"3119705\";\"La Fuente de San Esteban\";\"main\"\n\"3119705\";\"Fuente San Esteban\";\"other\"\n\"3119705\";\"Fuentes de San Esteban\";\"other\"\n\"3119746\";\"A Estrada\";\"main\"\n\"3119746\";\"Ehstrada\";\"other\"\n\"3119746\";\"La Estrada\";\"other\"\n\"3119746\";\"Эстрада\";\"other\"\n\"3119779\";\"l'Escala\";\"main\"\n\"3119822\";\"La Cuesta\";\"main\"\n\"3119822\";\"Cuesta\";\"other\"\n\"3119822\";\"La Kosta\";\"other\"\n\"3119822\";\"Ла Коста\";\"other\"\n\"3119841\";\"A Coruña\";\"main\"\n\"3119841\";\"A Coruna\";\"ascii\"\n\"3119841\";\"A Cruna\";\"other\"\n\"3119841\";\"A Cruña\";\"other\"\n\"3119841\";\"Caronium\";\"other\"\n\"3119841\";\"Coruna\";\"other\"\n\"3119841\";\"Corunako\";\"other\"\n\"3119841\";\"Corunha\";\"other\"\n\"3119841\";\"Corunna\";\"other\"\n\"3119841\";\"Corunya\";\"other\"\n\"3119841\";\"Coruña\";\"other\"\n\"3119841\";\"Coruñako\";\"other\"\n\"3119841\";\"La Corogne\";\"other\"\n\"3119841\";\"La Coruna\";\"other\"\n\"3119841\";\"La Coruña\";\"other\"\n\"3119841\";\"La-Korun'ja\";\"other\"\n\"3119841\";\"The Groyne\";\"other\"\n\"3119841\";\"Ла-Корунья\";\"other\"\n\"3119841\";\"ラ・コルーニャ県\";\"other\"\n\"3119918\";\"La Cabrera\";\"main\"\n\"3119952\";\"la Bisbal d'Empordà\";\"main\"\n\"3119952\";\"la Bisbal d'Emporda\";\"ascii\"\n\"3119952\";\"La Bisbal\";\"other\"\n\"3119952\";\"La Bisbal d'Emporda\";\"other\"\n\"3119952\";\"La Bisbal d'Empordà\";\"other\"\n\"3119952\";\"La Bisbal del Ampurdan\";\"other\"\n\"3119952\";\"La Bisbal del Ampurdán\";\"other\"\n\"3119952\";\"la  Bisbal\";\"other\"\n\"3119952\";\"la Bisbal\";\"other\"\n\"3119965\";\"Labastida\";\"main\"\n\"3119965\";\"Bastida\";\"other\"\n\"3119979\";\"La Bañeza\";\"main\"\n\"3119979\";\"La Baneza\";\"ascii\"\n\"3120003\";\"l'Ampolla\";\"main\"\n\"3120003\";\"Ampolla\";\"other\"\n\"3120006\";\"L'Ametlla del Vallès\";\"main\"\n\"3120006\";\"L'Ametlla del Valles\";\"ascii\"\n\"3120006\";\"L'Ametlla\";\"other\"\n\"3120012\";\"La Almunia de Doña Godina\";\"main\"\n\"3120012\";\"La Almunia de Dona Godina\";\"ascii\"\n\"3120012\";\"Almunia de Dona Godina\";\"other\"\n\"3120012\";\"Almunia de Doña Godina\";\"other\"\n\"3120012\";\"La Almunia\";\"other\"\n\"3120027\";\"La Alberca\";\"main\"\n\"3120027\";\"Alberca\";\"other\"\n\"3120027\";\"Las Alberca\";\"other\"\n\"3120031\";\"La Alameda de la Sagra\";\"main\"\n\"3120031\";\"Alameda de la Sagra\";\"other\"\n\"3120038\";\"La Adrada\";\"main\"\n\"3120073\";\"Juneda\";\"main\"\n\"3120141\";\"Jerte\";\"main\"\n\"3120179\";\"Jarandilla de la Vera\";\"main\"\n\"3120179\";\"Jarandilla\";\"other\"\n\"3120186\";\"Jaraiz de la Vera\";\"main\"\n\"3120186\";\"Jaraiz\";\"other\"\n\"3120209\";\"Jadraque\";\"main\"\n\"3120211\";\"Jaca\";\"main\"\n\"3120211\";\"Chaca\";\"other\"\n\"3120211\";\"Jaka\";\"other\"\n\"3120211\";\"haka\";\"other\"\n\"3120211\";\"ハカ\";\"other\"\n\"3120288\";\"Iscar\";\"main\"\n\"3120302\";\"Irura\";\"main\"\n\"3120304\";\"Irun\";\"main\"\n\"3120304\";\"Irun-Uranzu\";\"other\"\n\"3120304\";\"Irún\";\"other\"\n\"3120304\";\"Irún-Uranzu\";\"other\"\n\"3120304\";\"yi lun\";\"other\"\n\"3120304\";\"Ирун\";\"other\"\n\"3120304\";\"伊倫\";\"other\"\n\"3120392\";\"Incio\";\"main\"\n\"3120392\";\"San Pedro\";\"other\"\n\"3120407\";\"Illueca\";\"main\"\n\"3120410\";\"Illescas\";\"main\"\n\"3120412\";\"Illas\";\"main\"\n\"3120412\";\"San Julian\";\"other\"\n\"3120412\";\"San Julián\";\"other\"\n\"3120427\";\"Igüeña\";\"main\"\n\"3120427\";\"Iguena\";\"ascii\"\n\"3120431\";\"Igualada\";\"main\"\n\"3120431\";\"Игуалада\";\"other\"\n\"3120453\";\"Idiazabal\";\"main\"\n\"3120453\";\"Idiazábal\";\"other\"\n\"3120476\";\"Ibeas de Juarros\";\"main\"\n\"3120501\";\"Humanes de Madrid\";\"main\"\n\"3120502\";\"Humanes\";\"main\"\n\"3120511\";\"Huete\";\"main\"\n\"3120514\";\"Huesca\";\"main\"\n\"3120514\";\"Osca\";\"other\"\n\"3120514\";\"Oska\";\"other\"\n\"3120514\";\"Uehska\";\"other\"\n\"3120514\";\"Uesca\";\"other\"\n\"3120514\";\"uesuka\";\"other\"\n\"3120514\";\"wsqh\";\"other\"\n\"3120514\";\"Уэска\";\"other\"\n\"3120514\";\"וסקה\";\"other\"\n\"3120514\";\"ウエスカ\";\"other\"\n\"3120527\";\"Huerta del Rey\";\"main\"\n\"3120527\";\"Puerta del Rey\";\"other\"\n\"3120567\";\"Egues-Uharte\";\"main\"\n\"3120567\";\"Huarte\";\"other\"\n\"3120567\";\"Uharte\";\"other\"\n\"3120605\";\"Hoyo de Manzanares\";\"main\"\n\"3120616\";\"Hostalric\";\"main\"\n\"3120619\";\"l'Hospitalet de Llobregat\";\"main\"\n\"3120619\";\"Hospitalet de Llobregat\";\"other\"\n\"3120619\";\"Ospitalet-de-L'obregat\";\"other\"\n\"3120619\";\"l'Hospitalet\";\"other\"\n\"3120619\";\"Оспиталет-де-Льобрегат\";\"other\"\n\"3120621\";\"Hospital de Órbigo\";\"main\"\n\"3120621\";\"Hospital de Orbigo\";\"ascii\"\n\"3120672\";\"Horche\";\"main\"\n\"3120763\";\"Híjar\";\"main\"\n\"3120763\";\"Hijar\";\"ascii\"\n\"3120776\";\"Hervás\";\"main\"\n\"3120776\";\"Hervas\";\"ascii\"\n\"3120793\";\"Herrera de Pisuerga\";\"main\"\n\"3120793\";\"Herrera\";\"other\"\n\"3120811\";\"Hernani\";\"main\"\n\"3120868\";\"Hazas de Cesto\";\"main\"\n\"3120874\";\"Haro\";\"main\"\n\"3120898\";\"Gurrea de Gállego\";\"main\"\n\"3120898\";\"Gurrea de Gallego\";\"ascii\"\n\"3120898\";\"Gurrea\";\"other\"\n\"3120928\";\"Guitiriz\";\"main\"\n\"3120963\";\"Guijuelo\";\"main\"\n\"3120968\";\"Guijo de Galisteo\";\"main\"\n\"3120985\";\"Getaria\";\"main\"\n\"3120985\";\"Guetaria\";\"other\"\n\"3120989\";\"Gernika-Lumo\";\"main\"\n\"3120989\";\"Gernika\";\"other\"\n\"3120989\";\"Guernica\";\"other\"\n\"3120989\";\"Guernica y Luno\";\"other\"\n\"3120998\";\"Gueñes\";\"main\"\n\"3120998\";\"Guenes\";\"ascii\"\n\"3120998\";\"Gueenes\";\"other\"\n\"3120998\";\"Güeñes\";\"other\"\n\"3121007\";\"Getxo\";\"main\"\n\"3121007\";\"Guecho\";\"other\"\n\"3121029\";\"Guardo\";\"main\"\n\"3121029\";\"Cuardo\";\"other\"\n\"3121058\";\"Guadarrama\";\"main\"\n\"3121058\";\"Guadarram\";\"other\"\n\"3121065\";\"Guadalix de la Sierra\";\"main\"\n\"3121070\";\"Guadalajara\";\"main\"\n\"3121070\";\"Gvadalaharo\";\"other\"\n\"3121070\";\"Gvadalakhara\";\"other\"\n\"3121070\";\"guadarahara\";\"other\"\n\"3121070\";\"Гвадалахара\";\"other\"\n\"3121070\";\"グアダラハラ\";\"other\"\n\"3121078\";\"O Grove\";\"main\"\n\"3121078\";\"Jrobe\";\"other\"\n\"3121078\";\"Ogrobe\";\"other\"\n\"3121078\";\"Ogrove\";\"other\"\n\"3121105\";\"Griñón\";\"main\"\n\"3121105\";\"Grinon\";\"ascii\"\n\"3121108\";\"Grijota\";\"main\"\n\"3121135\";\"Graus\";\"main\"\n\"3121145\";\"Granollers\";\"main\"\n\"3121161\";\"Grañén\";\"main\"\n\"3121161\";\"Granen\";\"ascii\"\n\"3121197\";\"Grandas de Salime\";\"main\"\n\"3121197\";\"Crandas de Salime\";\"other\"\n\"3121197\";\"Grandas\";\"other\"\n\"3121238\";\"Grado\";\"main\"\n\"3121238\";\"Grao\";\"other\"\n\"3121241\";\"Gradefes\";\"main\"\n\"3121286\";\"Górliz-Elexalde\";\"main\"\n\"3121286\";\"Gorliz-Elexalde\";\"ascii\"\n\"3121286\";\"Elexalde\";\"other\"\n\"3121286\";\"Gorliz\";\"other\"\n\"3121286\";\"Górliz\";\"other\"\n\"3121316\";\"Gondomar\";\"main\"\n\"3121344\";\"Golmés\";\"main\"\n\"3121344\";\"Golmes\";\"ascii\"\n\"3121345\";\"Golmayo\";\"main\"\n\"3121397\";\"Gironella\";\"main\"\n\"3121404\";\"Xinzo de Limia\";\"main\"\n\"3121404\";\"Xinzo\";\"other\"\n\"3121424\";\"Gijón\";\"main\"\n\"3121424\";\"Gijon\";\"ascii\"\n\"3121424\";\"Hihono\";\"other\"\n\"3121424\";\"Khikhon\";\"other\"\n\"3121424\";\"Kixoi\";\"other\"\n\"3121424\";\"Xixon\";\"other\"\n\"3121424\";\"Xixon - Gijon\";\"other\"\n\"3121424\";\"Xixón\";\"other\"\n\"3121424\";\"Xixón - Gijón\";\"other\"\n\"3121424\";\"hihon\";\"other\"\n\"3121424\";\"khykhwn\";\"other\"\n\"3121424\";\"Ĥiĥono\";\"other\"\n\"3121424\";\"Хихон\";\"other\"\n\"3121424\";\"خيخون\";\"other\"\n\"3121424\";\"ヒホン\";\"other\"\n\"3121437\";\"Getafe\";\"main\"\n\"3121437\";\"Khetafe\";\"other\"\n\"3121437\";\"Хетафе\";\"other\"\n\"3121456\";\"Girona\";\"main\"\n\"3121456\";\"Gerona\";\"other\"\n\"3121456\";\"Gerone\";\"other\"\n\"3121456\";\"Girono\";\"other\"\n\"3121456\";\"Gérone\";\"other\"\n\"3121456\";\"Kherona\";\"other\"\n\"3121456\";\"Zherona\";\"other\"\n\"3121456\";\"jirona\";\"other\"\n\"3121456\";\"Ĝirono\";\"other\"\n\"3121456\";\"Жерона\";\"other\"\n\"3121456\";\"Херона\";\"other\"\n\"3121456\";\"ジローナ\";\"other\"\n\"3121485\";\"Gelsa\";\"main\"\n\"3121486\";\"Gelida\";\"main\"\n\"3121519\";\"Gavà\";\"main\"\n\"3121519\";\"Gava\";\"ascii\"\n\"3121519\";\"Гава\";\"other\"\n\"3121527\";\"Gatika\";\"main\"\n\"3121527\";\"Gatica\";\"other\"\n\"3121527\";\"Santa Maria de Gatica\";\"other\"\n\"3121527\";\"Santa María de Gatica\";\"other\"\n\"3121529\";\"Gata\";\"main\"\n\"3121555\";\"Garrafe de Torío\";\"main\"\n\"3121555\";\"Garrafe de Torio\";\"ascii\"\n\"3121555\";\"Carrafe de Torio\";\"other\"\n\"3121555\";\"Garrafe\";\"other\"\n\"3121586\";\"Garganta la Olla\";\"main\"\n\"3121642\";\"Gandesa\";\"main\"\n\"3121642\";\"Grandesa\";\"other\"\n\"3121679\";\"Gallur\";\"main\"\n\"3121744\";\"Galende\";\"main\"\n\"3121751\";\"Galdakao\";\"main\"\n\"3121751\";\"Gal'dakano\";\"other\"\n\"3121751\";\"Galdacan\";\"other\"\n\"3121751\";\"Galdacano\";\"other\"\n\"3121751\";\"Galdacon\";\"other\"\n\"3121751\";\"Galdácano\";\"other\"\n\"3121751\";\"Гальдакано\";\"other\"\n\"3121762\";\"Galar\";\"main\"\n\"3121766\";\"Galapagar\";\"main\"\n\"3121766\";\"Галапагар\";\"other\"\n\"3121796\";\"Fustiñana\";\"main\"\n\"3121796\";\"Fustinana\";\"ascii\"\n\"3121806\";\"Funes\";\"main\"\n\"3121819\";\"Fuentidueña de Tajo\";\"main\"\n\"3121819\";\"Fuentiduena de Tajo\";\"ascii\"\n\"3121840\";\"Fuentes de Oñoro\";\"main\"\n\"3121840\";\"Fuentes de Onoro\";\"ascii\"\n\"3121849\";\"Fuentes de Ebro\";\"main\"\n\"3121867\";\"Fuentesaúco\";\"main\"\n\"3121867\";\"Fuentesauco\";\"ascii\"\n\"3121881\";\"Hondarribia\";\"main\"\n\"3121881\";\"Fuenterrabia\";\"ascii\"\n\"3121881\";\"Fontarabie\";\"other\"\n\"3121881\";\"Fuenterrabía\";\"other\"\n\"3121881\";\"Hondarribi\";\"other\"\n\"3121926\";\"Fuente el Saz\";\"main\"\n\"3121956\";\"Fuensalida\";\"main\"\n\"3121957\";\"Fuensaldaña\";\"main\"\n\"3121957\";\"Fuensaldana\";\"ascii\"\n\"3121959\";\"Fuenmayor\";\"main\"\n\"3121960\";\"Fuenlabrada\";\"main\"\n\"3121960\";\"Фуенлабрада\";\"other\"\n\"3122002\";\"Friol\";\"main\"\n\"3122002\";\"Frio\";\"other\"\n\"3122021\";\"Fresno El Viejo\";\"main\"\n\"3122022\";\"Fresno de Torote\";\"main\"\n\"3122060\";\"Fresnedillas\";\"main\"\n\"3122157\";\"Fraga\";\"main\"\n\"3122172\";\"Foz\";\"main\"\n\"3122180\";\"Forua\";\"main\"\n\"3122198\";\"Fornelos de Montes\";\"main\"\n\"3122198\";\"San Lorenzo\";\"other\"\n\"3122205\";\"Fornells de la Selva\";\"main\"\n\"3122252\";\"Fonz\";\"main\"\n\"3122252\";\"Fonts\";\"other\"\n\"3122304\";\"Fontanar\";\"main\"\n\"3122313\";\"Fonsagrada\";\"main\"\n\"3122315\";\"Fonollosa\";\"main\"\n\"3122321\";\"Fonfría\";\"main\"\n\"3122321\";\"Fonfria\";\"ascii\"\n\"3122367\";\"Folgoso de la Ribera\";\"main\"\n\"3122407\";\"Flix\";\"main\"\n\"3122415\";\"Fitero\";\"main\"\n\"3122440\";\"Figueruelas\";\"main\"\n\"3122452\";\"Figueras\";\"main\"\n\"3122452\";\"Figejras\";\"other\"\n\"3122452\";\"Фигейрас\";\"other\"\n\"3122453\";\"Figueres\";\"main\"\n\"3122453\";\"Figeras\";\"other\"\n\"3122453\";\"Figeres\";\"other\"\n\"3122453\";\"Фигерeс\";\"other\"\n\"3122453\";\"Фигерас\";\"other\"\n\"3122558\";\"Fermoselle\";\"main\"\n\"3122564\";\"Fene\";\"main\"\n\"3122564\";\"San Salvador\";\"other\"\n\"3122656\";\"Falset\";\"main\"\n\"3122667\";\"Falces\";\"main\"\n\"3122695\";\"Fabero\";\"main\"\n\"3122697\";\"Fabara\";\"main\"\n\"3122697\";\"Favara de Matarranya\";\"other\"\n\"3122709\";\"Ezcaray\";\"main\"\n\"3122709\";\"Ezkarai\";\"other\"\n\"3122730\";\"Estremera\";\"main\"\n\"3122762\";\"Estella\";\"main\"\n\"3122762\";\"Lizarra\";\"other\"\n\"3122807\";\"Esquivias\";\"main\"\n\"3122826\";\"Esplugues de Llobregat\";\"main\"\n\"3122838\";\"Espinosa de los Monteros\";\"main\"\n\"3122912\";\"Esparreguera\";\"main\"\n\"3122912\";\"Esparraguera\";\"other\"\n\"3122936\";\"Esgos\";\"main\"\n\"3122959\";\"Escucha\";\"main\"\n\"3122970\";\"Eskoriatza\";\"main\"\n\"3122970\";\"Ehskoriasa\";\"other\"\n\"3122970\";\"Escoriaza\";\"other\"\n\"3122970\";\"Эскориаса\";\"other\"\n\"3122995\";\"Escatrón\";\"main\"\n\"3122995\";\"Escatron\";\"ascii\"\n\"3123024\";\"Escalona\";\"main\"\n\"3123024\";\"Escalona del Alberche\";\"other\"\n\"3123063\";\"Ermua\";\"main\"\n\"3123104\";\"Erandio\";\"main\"\n\"3123104\";\"Ehrandio\";\"other\"\n\"3123104\";\"Эрандио\";\"other\"\n\"3123106\";\"Épila\";\"main\"\n\"3123106\";\"Epila\";\"ascii\"\n\"3123113\";\"Entrimo\";\"main\"\n\"3123113\";\"Santa Maria la Real\";\"other\"\n\"3123113\";\"Santa María la Real\";\"other\"\n\"3123124\";\"Entrena\";\"main\"\n\"3123124\";\"Ehntrena\";\"other\"\n\"3123124\";\"Энтрена\";\"other\"\n\"3123206\";\"El Viso de San Juan\";\"main\"\n\"3123219\";\"El Vellón\";\"main\"\n\"3123219\";\"El Vellon\";\"ascii\"\n\"3123246\";\"El Tiemblo\";\"main\"\n\"3123303\";\"El Real de San Vicente\";\"main\"\n\"3123303\";\"Real de San Vicente\";\"other\"\n\"3123329\";\"el Prat de Llobregat\";\"main\"\n\"3123329\";\"Ehl' Prat\";\"other\"\n\"3123329\";\"El Prat de Llobregat\";\"other\"\n\"3123329\";\"el Prat\";\"other\"\n\"3123329\";\"Эль Прат\";\"other\"\n\"3123398\";\"Elorz\";\"main\"\n\"3123399\";\"Elorrio\";\"main\"\n\"3123421\";\"El Molar\";\"main\"\n\"3123445\";\"Éller\";\"main\"\n\"3123445\";\"Eller\";\"ascii\"\n\"3123449\";\"Eljas\";\"main\"\n\"3123449\";\"Elijas\";\"other\"\n\"3123455\";\"El Hoyo de Pinares\";\"main\"\n\"3123455\";\"Hoyo de Pinares\";\"other\"\n\"3123462\";\"Gurb\";\"main\"\n\"3123473\";\"Empuriabrava\";\"main\"\n\"3123473\";\"Ehmpuriabrava\";\"other\"\n\"3123473\";\"Эмпуриабрава\";\"other\"\n\"3123478\";\"Elgoibar\";\"main\"\n\"3123478\";\"Elgóibar\";\"other\"\n\"3123488\";\"El Franco\";\"main\"\n\"3123491\";\"Figaró\";\"main\"\n\"3123491\";\"Figaro\";\"ascii\"\n\"3123491\";\"El Figaro\";\"other\"\n\"3123491\";\"El Figaró\";\"other\"\n\"3123491\";\"el Figuero\";\"other\"\n\"3123491\";\"el Figueró\";\"other\"\n\"3123493\";\"Ferrol\";\"main\"\n\"3123493\";\"El Ferrol\";\"other\"\n\"3123493\";\"El Ferrol del Caudillo\";\"other\"\n\"3123493\";\"Fehrol'\";\"other\"\n\"3123493\";\"Ferrol del Caudillo\";\"other\"\n\"3123493\";\"xian zhi chuang jian xin ye mian\";\"other\"\n\"3123493\";\"Фэроль\";\"other\"\n\"3123493\";\"הוריישיו הורנבלואר\";\"other\"\n\"3123493\";\"限制创建新页面\";\"other\"\n\"3123504\";\"El Escorial\";\"main\"\n\"3123504\";\"Escorial\";\"other\"\n\"3123531\";\"El Corrillo\";\"main\"\n\"3123531\";\"Zalla\";\"other\"\n\"3123579\";\"El Casar de Escalona\";\"main\"\n\"3123622\";\"El Burgo de Osma\";\"main\"\n\"3123622\";\"Burgo de Osma\";\"other\"\n\"3123623\";\"El Burgo de Ebro\";\"main\"\n\"3123623\";\"El Burgos de Ebro\";\"other\"\n\"3123658\";\"O Barco de Valdeorras\";\"main\"\n\"3123658\";\"O Barco\";\"other\"\n\"3123658\";\"Valdeorras\";\"other\"\n\"3123659\";\"El Barco de Ávila\";\"main\"\n\"3123659\";\"El Barco de Avila\";\"ascii\"\n\"3123659\";\"Barco de Avila\";\"other\"\n\"3123659\";\"El Barco de Avile\";\"other\"\n\"3123659\";\"El Barco de Ávile\";\"other\"\n\"3123667\";\"El Astillero\";\"main\"\n\"3123667\";\"Astillero\";\"other\"\n\"3123682\";\"El Álamo\";\"main\"\n\"3123682\";\"El Alamo\";\"ascii\"\n\"3123688\";\"Ejea de los Caballeros\";\"main\"\n\"3123688\";\"Egea de los Caballeros\";\"other\"\n\"3123688\";\"Ejea\";\"other\"\n\"3123688\";\"Exea\";\"other\"\n\"3123709\";\"Eibar\";\"main\"\n\"3123709\";\"Ehibar\";\"other\"\n\"3123709\";\"Ehjbar\";\"other\"\n\"3123709\";\"Eybar\";\"other\"\n\"3123709\";\"Heivar\";\"other\"\n\"3123709\";\"Heybar\";\"other\"\n\"3123709\";\"Villanueva de San Andres\";\"other\"\n\"3123709\";\"Villanueva de San Andres de Heybar\";\"other\"\n\"3123709\";\"Villanueva de San Andrés\";\"other\"\n\"3123709\";\"Villanueva de San Andrés de Heybar\";\"other\"\n\"3123709\";\"Éibar\";\"other\"\n\"3123709\";\"Эйбар\";\"other\"\n\"3123738\";\"Echarri-Aranaz\";\"main\"\n\"3123738\";\"Etxarri-Aranatz\";\"other\"\n\"3123759\";\"Ea\";\"main\"\n\"3123765\";\"Duruelo de la Sierra\";\"main\"\n\"3123765\";\"Duruelo\";\"other\"\n\"3123773\";\"Durango\";\"main\"\n\"3123773\";\"Tavira\";\"other\"\n\"3123773\";\"Дуранго\";\"other\"\n\"3123779\";\"Dumbría\";\"main\"\n\"3123779\";\"Dumbria\";\"ascii\"\n\"3123779\";\"Santa Eulalia\";\"other\"\n\"3123786\";\"Dueñas\";\"main\"\n\"3123786\";\"Duenas\";\"ascii\"\n\"3123797\";\"Dozón\";\"main\"\n\"3123797\";\"Dozon\";\"ascii\"\n\"3123801\";\"Dosrius\";\"main\"\n\"3123801\";\"Dosríus\";\"other\"\n\"3123910\";\"Deba\";\"main\"\n\"3123910\";\"Deva\";\"other\"\n\"3123921\";\"Derio\";\"main\"\n\"3123969\";\"Daroca\";\"main\"\n\"3123981\";\"Daganzo de Arriba\";\"main\"\n\"3124002\";\"Curtis\";\"main\"\n\"3124002\";\"San Vicente\";\"other\"\n\"3124021\";\"Cuntis\";\"main\"\n\"3124021\";\"Bano\";\"other\"\n\"3124021\";\"Baño\";\"other\"\n\"3124026\";\"Cunit\";\"main\"\n\"3124041\";\"Culleredo\";\"main\"\n\"3124041\";\"Kul'eredo\";\"other\"\n\"3124041\";\"San Esteban\";\"other\"\n\"3124041\";\"Кульередо\";\"other\"\n\"3124065\";\"Cuevas de Vinromá\";\"main\"\n\"3124065\";\"Cuevas de Vinroma\";\"ascii\"\n\"3124065\";\"Les Coves de Vinroma\";\"other\"\n\"3124132\";\"Cuenca\";\"main\"\n\"3124132\";\"Kuehnka\";\"other\"\n\"3124132\";\"Куэнка\";\"other\"\n\"3124136\";\"Cuéllar\";\"main\"\n\"3124136\";\"Cuellar\";\"ascii\"\n\"3124142\";\"Cudillero\";\"main\"\n\"3124142\";\"Cuideiru\";\"other\"\n\"3124162\";\"Cubillos del Sil\";\"main\"\n\"3124201\";\"Cubelles\";\"main\"\n\"3124209\";\"Cubas\";\"main\"\n\"3124215\";\"Cuarte de Huerva\";\"main\"\n\"3124219\";\"Cualedro\";\"main\"\n\"3124221\";\"Cuadros\";\"main\"\n\"3124248\";\"Cruïlles\";\"main\"\n\"3124248\";\"Cruilles\";\"ascii\"\n\"3124285\";\"Creixell\";\"main\"\n\"3124297\";\"Covelo\";\"main\"\n\"3124316\";\"Covaleda\";\"main\"\n\"3124316\";\"Dovaleda\";\"other\"\n\"3124408\";\"Coslada\";\"main\"\n\"3124408\";\"Koslada\";\"other\"\n\"3124408\";\"Кослада\";\"other\"\n\"3124432\";\"Corvera\";\"main\"\n\"3124441\";\"Corullón\";\"main\"\n\"3124441\";\"Corullon\";\"ascii\"\n\"3124519\";\"Corrales\";\"main\"\n\"3124569\";\"Cornellà de Llobregat\";\"main\"\n\"3124569\";\"Cornella de Llobregat\";\"ascii\"\n\"3124589\";\"Coristanco\";\"main\"\n\"3124589\";\"San Pelayo\";\"other\"\n\"3124594\";\"Corgo\";\"main\"\n\"3124595\";\"Coreses\";\"main\"\n\"3124600\";\"Corella\";\"main\"\n\"3124600\";\"Corello\";\"other\"\n\"3124614\";\"Corcubión\";\"main\"\n\"3124614\";\"Corcubion\";\"ascii\"\n\"3124624\";\"Corbins\";\"main\"\n\"3124628\";\"Corbera de Llobregat\";\"main\"\n\"3124628\";\"Corbera\";\"other\"\n\"3124628\";\"Corbera Baja\";\"other\"\n\"3124628\";\"Corbera del Llobregat\";\"other\"\n\"3124661\";\"Constantí\";\"main\"\n\"3124661\";\"Constanti\";\"ascii\"\n\"3124675\";\"Congosto\";\"main\"\n\"3124727\";\"Comillas\";\"main\"\n\"3124727\";\"Comillos\";\"other\"\n\"3124736\";\"Combarro\";\"main\"\n\"3124736\";\"Kombarro\";\"other\"\n\"3124736\";\"Комбарро\";\"other\"\n\"3124751\";\"Colunga\";\"main\"\n\"3124765\";\"Colmenar Viejo\";\"main\"\n\"3124768\";\"Colmenarejo\";\"main\"\n\"3124769\";\"Colmenar de Oreja\";\"main\"\n\"3124772\";\"Colmenar del Arroyo\";\"main\"\n\"3124786\";\"Collbató\";\"main\"\n\"3124786\";\"Collbato\";\"ascii\"\n\"3124794\";\"Collado-Villalba\";\"main\"\n\"3124794\";\"Collado Villalba\";\"other\"\n\"3124794\";\"Kol'jado-Vil'jal'ba\";\"other\"\n\"3124794\";\"Кольядо-Вильяльба\";\"other\"\n\"3124798\";\"Collado Mediano\";\"main\"\n\"3124821\";\"Colindres\";\"main\"\n\"3124828\";\"Coles\";\"main\"\n\"3124828\";\"San Juan\";\"other\"\n\"3124837\";\"Coirós\";\"main\"\n\"3124837\";\"Coiros\";\"ascii\"\n\"3124837\";\"San Julian\";\"other\"\n\"3124837\";\"San Julián\";\"other\"\n\"3124895\";\"Coca\";\"main\"\n\"3124911\";\"Cobeña\";\"main\"\n\"3124911\";\"Cobena\";\"ascii\"\n\"3124914\";\"Cobeja\";\"main\"\n\"3124925\";\"Coaña\";\"main\"\n\"3124925\";\"Coana\";\"ascii\"\n\"3124925\";\"Coano\";\"other\"\n\"3124925\";\"Coaño\";\"other\"\n\"3124955\";\"Cizur Mayor\";\"main\"\n\"3124955\";\"Zizur Nagusia\";\"other\"\n\"3124963\";\"Ciudad-Rodrigo\";\"main\"\n\"3124963\";\"Siudad-Rodrigo\";\"other\"\n\"3124967\";\"Ciutadella\";\"main\"\n\"3124967\";\"Ciudadela\";\"other\"\n\"3124970\";\"Cistierna\";\"main\"\n\"3124971\";\"Cistérniga\";\"main\"\n\"3124971\";\"Cisterniga\";\"ascii\"\n\"3125009\";\"Cintruénigo\";\"main\"\n\"3125009\";\"Cintruenigo\";\"ascii\"\n\"3125009\";\"Cintruenico\";\"other\"\n\"3125009\";\"Cintruénico\";\"other\"\n\"3125009\";\"Zentroniko\";\"other\"\n\"3125047\";\"Cilleros\";\"main\"\n\"3125068\";\"Cigales\";\"main\"\n\"3125072\";\"Cifuentes\";\"main\"\n\"3125077\";\"Zierbena\";\"main\"\n\"3125077\";\"Ciervana\";\"other\"\n\"3125077\";\"Ciervana-Abanto\";\"other\"\n\"3125077\";\"Ciérvana\";\"other\"\n\"3125077\";\"Ciérvana-Abanto\";\"other\"\n\"3125077\";\"La Cuesta-Ciervana\";\"other\"\n\"3125077\";\"La Cuesta-Ciérvana\";\"other\"\n\"3125082\";\"Ciempozuelos\";\"main\"\n\"3125108\";\"Chozas de Canales\";\"main\"\n\"3125110\";\"Chozas de Abajo\";\"main\"\n\"3125144\";\"Chinchón\";\"main\"\n\"3125144\";\"Chinchon\";\"ascii\"\n\"3125149\";\"Chiloeches\";\"main\"\n\"3125198\";\"Chapinería\";\"main\"\n\"3125198\";\"Chapineria\";\"ascii\"\n\"3125212\";\"Chantada\";\"main\"\n\"3125271\";\"Cesuras\";\"main\"\n\"3125271\";\"Dordano\";\"other\"\n\"3125271\";\"Dordaño\";\"other\"\n\"3125287\";\"Cervo\";\"main\"\n\"3125296\";\"Cervera de Pisuerga\";\"main\"\n\"3125296\";\"Cervera\";\"other\"\n\"3125297\";\"Cervera del Río Alhama\";\"main\"\n\"3125297\";\"Cervera del Rio Alhama\";\"ascii\"\n\"3125297\";\"Cervera de Rio Alhama\";\"other\"\n\"3125297\";\"Cervera del Rio Alhambra\";\"other\"\n\"3125297\";\"Cervera del Río Alhambra\";\"other\"\n\"3125308\";\"Cervera\";\"main\"\n\"3125309\";\"Cervelló\";\"main\"\n\"3125309\";\"Cervello\";\"ascii\"\n\"3125397\";\"Cerdido\";\"main\"\n\"3125397\";\"San Martin\";\"other\"\n\"3125397\";\"San Martín\";\"other\"\n\"3125408\";\"Cercedilla\";\"main\"\n\"3125442\";\"Centelles\";\"main\"\n\"3125445\";\"Cenlle\";\"main\"\n\"3125449\";\"Cenicero\";\"main\"\n\"3125449\";\"Ceracero\";\"other\"\n\"3125469\";\"Celrà\";\"main\"\n\"3125469\";\"Celra\";\"ascii\"\n\"3125469\";\"Celrá\";\"other\"\n\"3125480\";\"Cella\";\"main\"\n\"3125488\";\"Celanova\";\"main\"\n\"3125526\";\"Cee\";\"main\"\n\"3125533\";\"Cedillo del Condado\";\"main\"\n\"3125537\";\"Cedeira\";\"main\"\n\"3125548\";\"Cebreros\";\"main\"\n\"3125563\";\"Zeanuri\";\"main\"\n\"3125563\";\"Ceanuri\";\"other\"\n\"3125563\";\"Ceanuri Alto\";\"other\"\n\"3125563\";\"Ceánuri\";\"other\"\n\"3125563\";\"Ceánuri Alto\";\"other\"\n\"3125563\";\"Elexondo\";\"other\"\n\"3125569\";\"Cea\";\"main\"\n\"3125569\";\"San Cristobal\";\"other\"\n\"3125569\";\"San Cristobal de Cea\";\"other\"\n\"3125569\";\"San Cristóbal\";\"other\"\n\"3125569\";\"San Cristóbal de Cea\";\"other\"\n\"3125579\";\"Cazalegas\";\"main\"\n\"3125602\";\"Catoira\";\"main\"\n\"3125616\";\"Castroverde\";\"main\"\n\"3125621\";\"Castro-Urdiales\";\"main\"\n\"3125621\";\"Castro Urdiales\";\"other\"\n\"3125621\";\"Urdialaitz\";\"other\"\n\"3125633\";\"Castropodame\";\"main\"\n\"3125636\";\"Castronuño\";\"main\"\n\"3125636\";\"Castronuno\";\"ascii\"\n\"3125679\";\"Castrocontrigo\";\"main\"\n\"3125679\";\"Castrocontigo\";\"other\"\n\"3125681\";\"Castro Caldelas\";\"main\"\n\"3125682\";\"Castrocalbón\";\"main\"\n\"3125682\";\"Castrocalbon\";\"ascii\"\n\"3125713\";\"Castro\";\"main\"\n\"3125723\";\"Castrillón\";\"main\"\n\"3125723\";\"Castrillon\";\"ascii\"\n\"3125758\";\"Castrelo de Miño\";\"main\"\n\"3125758\";\"Castrelo de Mino\";\"ascii\"\n\"3125758\";\"Santa Maria\";\"other\"\n\"3125758\";\"Santa María\";\"other\"\n\"3125799\";\"Castillo de Bayuela\";\"main\"\n\"3125800\";\"Castell-Platja d'Aro\";\"main\"\n\"3125800\";\"Castillo de Aro\";\"other\"\n\"3125800\";\"Kastel'-Pladzha-de-Aro\";\"other\"\n\"3125800\";\"Кастель-Пладжа-де-Аро\";\"other\"\n\"3125876\";\"Castellví de Rosanes\";\"main\"\n\"3125876\";\"Castellvi de Rosanes\";\"ascii\"\n\"3125876\";\"Castellví de Rosanés\";\"other\"\n\"3125879\";\"Castellserà\";\"main\"\n\"3125879\";\"Castellsera\";\"ascii\"\n\"3125884\";\"Castelló d'Empúries\";\"main\"\n\"3125884\";\"Castello d'Empuries\";\"ascii\"\n\"3125895\";\"Castellet\";\"main\"\n\"3125897\";\"Castelldefels\";\"main\"\n\"3125904\";\"Castellbisbal\";\"main\"\n\"3125904\";\"CastelbisBal\";\"other\"\n\"3125904\";\"CastellbisBal\";\"other\"\n\"3125915\";\"Castellar del Vallès\";\"main\"\n\"3125915\";\"Castellar del Valles\";\"ascii\"\n\"3125951\";\"Castejón\";\"main\"\n\"3125951\";\"Castejon\";\"ascii\"\n\"3125982\";\"Castandiello\";\"main\"\n\"3125982\";\"Castandiella\";\"other\"\n\"3125982\";\"Morcin\";\"other\"\n\"3125991\";\"Cassà de la Selva\";\"main\"\n\"3125991\";\"Cassa de la Selva\";\"ascii\"\n\"3125994\";\"Caspe\";\"main\"\n\"3125994\";\"Casp\";\"other\"\n\"3126027\";\"Cáseda\";\"main\"\n\"3126027\";\"Caseda\";\"ascii\"\n\"3126040\";\"Casavieja\";\"main\"\n\"3126082\";\"Casarrubuelos\";\"main\"\n\"3126083\";\"Casarrubios del Monte\";\"main\"\n\"3126096\";\"Casar de Palomero\";\"main\"\n\"3126096\";\"Casar\";\"other\"\n\"3126107\";\"Casalarreina\";\"main\"\n\"3126107\";\"Casalareina\";\"other\"\n\"3126107\";\"Nafarruri\";\"other\"\n\"3126139\";\"Cartes\";\"main\"\n\"3126141\";\"Cartelle\";\"main\"\n\"3126155\";\"Carrizo de la Ribera\";\"main\"\n\"3126155\";\"Carrizo\";\"other\"\n\"3126161\";\"Carrión de los Condes\";\"main\"\n\"3126161\";\"Carrion de los Condes\";\"ascii\"\n\"3126178\";\"Carreña\";\"main\"\n\"3126178\";\"Carrena\";\"ascii\"\n\"3126178\";\"Cabrales\";\"other\"\n\"3126178\";\"Carrena de Cabrales\";\"other\"\n\"3126178\";\"Carrena de Cabreles\";\"other\"\n\"3126178\";\"Carrena-Cabrales\";\"other\"\n\"3126178\";\"Carreña de Cabrales\";\"other\"\n\"3126178\";\"Carreña de Cabreles\";\"other\"\n\"3126178\";\"Carreña-Cabrales\";\"other\"\n\"3126214\";\"Carranque\";\"main\"\n\"3126222\";\"Carral\";\"main\"\n\"3126237\";\"Carracedelo\";\"main\"\n\"3126254\";\"Carnota\";\"main\"\n\"3126276\";\"Cariño\";\"main\"\n\"3126276\";\"Carino\";\"ascii\"\n\"3126278\";\"Cariñena\";\"main\"\n\"3126278\";\"Carinena\";\"ascii\"\n\"3126293\";\"Cardona\";\"main\"\n\"3126317\";\"Cardedeu\";\"main\"\n\"3126331\";\"Carcastillo\";\"main\"\n\"3126332\";\"Cárcar\";\"main\"\n\"3126332\";\"Carcar\";\"ascii\"\n\"3126335\";\"Carcaboso\";\"main\"\n\"3126344\";\"Carbonero el Mayor\";\"main\"\n\"3126344\";\"Carbonero\";\"other\"\n\"3126344\";\"Carbonero el Mavor\";\"other\"\n\"3126369\";\"Carballo\";\"main\"\n\"3126369\";\"Karbal'o\";\"other\"\n\"3126369\";\"Карбальо\";\"other\"\n\"3126373\";\"O Carballiño\";\"main\"\n\"3126373\";\"O Carballino\";\"ascii\"\n\"3126384\";\"Carballeda de Avia\";\"main\"\n\"3126397\";\"Carbajosa de la Sagrada\";\"main\"\n\"3126454\";\"Carabaña\";\"main\"\n\"3126454\";\"Carabana\";\"ascii\"\n\"3126466\";\"Capellades\";\"main\"\n\"3126476\";\"Caparroso\";\"main\"\n\"3126498\";\"Cantimpalos\";\"main\"\n\"3126510\";\"Cantalpino\";\"main\"\n\"3126513\";\"Cantalejo\";\"main\"\n\"3126513\";\"Cantalojos\";\"other\"\n\"3126515\";\"Cantalapiedra\";\"main\"\n\"3126533\";\"Cànoves i Samalús\";\"main\"\n\"3126533\";\"Canoves i Samalus\";\"ascii\"\n\"3126533\";\"Canoves\";\"other\"\n\"3126533\";\"Cànoves\";\"other\"\n\"3126534\";\"Canovelles\";\"main\"\n\"3126534\";\"Canovellas\";\"other\"\n\"3126571\";\"Cangas de Onís\";\"main\"\n\"3126571\";\"Cangas de Onis\";\"ascii\"\n\"3126571\";\"Cangues d'Onis\";\"other\"\n\"3126571\";\"Cangues d'Onís\";\"other\"\n\"3126572\";\"Cangas del Narcea\";\"main\"\n\"3126572\";\"Cangas\";\"other\"\n\"3126572\";\"Cangas de Tineo\";\"other\"\n\"3126577\";\"Cangas\";\"main\"\n\"3126577\";\"Cangas del Morrazo\";\"other\"\n\"3126577\";\"Cangas do Morrazo\";\"other\"\n\"3126577\";\"Kangas\";\"other\"\n\"3126577\";\"Кангас\";\"other\"\n\"3126584\";\"Canet de Mar\";\"main\"\n\"3126622\";\"Candeleda\";\"main\"\n\"3126622\";\"Candaleda\";\"other\"\n\"3126624\";\"Candelario\";\"main\"\n\"3126722\";\"Camprodon\";\"main\"\n\"3126722\";\"Camprodón\";\"other\"\n\"3126750\";\"Campo Real\";\"main\"\n\"3126750\";\"Camporreal\";\"other\"\n\"3126754\";\"Camponaraya\";\"main\"\n\"3126777\";\"Campo de Caso\";\"main\"\n\"3126777\";\"Caso\";\"other\"\n\"3126777\";\"Casu\";\"other\"\n\"3126777\";\"San Juan el Real\";\"other\"\n\"3126835\";\"Campdevànol\";\"main\"\n\"3126835\";\"Campdevanol\";\"ascii\"\n\"3126838\";\"Campaspero\";\"main\"\n\"3126854\";\"Landa\";\"main\"\n\"3126854\";\"Campa\";\"other\"\n\"3126854\";\"Urduliz\";\"other\"\n\"3126854\";\"Urdúliz\";\"other\"\n\"3126864\";\"Caminomorisco\";\"main\"\n\"3126888\";\"Cambrils\";\"main\"\n\"3126890\";\"Cambre\";\"main\"\n\"3126899\";\"Cambados\";\"main\"\n\"3126913\";\"Camarma de Esteruelas\";\"main\"\n\"3126915\";\"Camariñas\";\"main\"\n\"3126915\";\"Camarinas\";\"ascii\"\n\"3126915\";\"Camarines\";\"other\"\n\"3126917\";\"Camargo\";\"main\"\n\"3126917\";\"Kamargo\";\"other\"\n\"3126917\";\"Камарго\";\"other\"\n\"3126922\";\"Camarena\";\"main\"\n\"3126956\";\"Calvos\";\"main\"\n\"3126956\";\"Calvos de Randin\";\"other\"\n\"3126968\";\"Calvarrasa de Abajo\";\"main\"\n\"3126974\";\"Calonge\";\"main\"\n\"3126997\";\"Càlig\";\"main\"\n\"3126997\";\"Calig\";\"ascii\"\n\"3127007\";\"Calella\";\"main\"\n\"3127007\";\"Callella\";\"other\"\n\"3127034\";\"Caldas de Reis\";\"main\"\n\"3127034\";\"Caldas de Reves\";\"other\"\n\"3127035\";\"Caldes de Montbui\";\"main\"\n\"3127035\";\"Caldes de Montbuy\";\"other\"\n\"3127046\";\"Calatorao\";\"main\"\n\"3127047\";\"Calatayud\";\"main\"\n\"3127047\";\"Calataiud\";\"other\"\n\"3127047\";\"Calatayu\";\"other\"\n\"3127047\";\"Calatayú\";\"other\"\n\"3127052\";\"Calanda\";\"main\"\n\"3127059\";\"Calamocha\";\"main\"\n\"3127065\";\"Calahorra\";\"main\"\n\"3127065\";\"Calagorra\";\"other\"\n\"3127065\";\"Calagurris\";\"other\"\n\"3127065\";\"Kalagorria\";\"other\"\n\"3127066\";\"Calafell\";\"main\"\n\"3127068\";\"Calaf\";\"main\"\n\"3127071\";\"Calaceite\";\"main\"\n\"3127071\";\"Calaceit\";\"other\"\n\"3127099\";\"Cadrete\";\"main\"\n\"3127100\";\"Cadreita\";\"main\"\n\"3127117\";\"Cadaqués\";\"main\"\n\"3127117\";\"Cadaques\";\"ascii\"\n\"3127135\";\"Cacabelos\";\"main\"\n\"3127147\";\"Cabrils\";\"main\"\n\"3127159\";\"Cabrerizos\";\"main\"\n\"3127161\";\"Cabrera de Mar\";\"main\"\n\"3127217\";\"Cabezuela del Valle\";\"main\"\n\"3127217\";\"Cabezuela\";\"other\"\n\"3127224\";\"Cabezón de la Sal\";\"main\"\n\"3127224\";\"Cabezon de la Sal\";\"ascii\"\n\"3127226\";\"Cabezón\";\"main\"\n\"3127226\";\"Cabezon\";\"ascii\"\n\"3127267\";\"Cabanillas del Campo\";\"main\"\n\"3127277\";\"Cabanes\";\"main\"\n\"3127288\";\"Cabañas de la Sagra\";\"main\"\n\"3127288\";\"Cabanas de la Sagra\";\"ascii\"\n\"3127379\";\"Bustillo del Páramo\";\"main\"\n\"3127379\";\"Bustillo del Paramo\";\"ascii\"\n\"3127407\";\"Bustarviejo\";\"main\"\n\"3127451\";\"Burlata\";\"main\"\n\"3127451\";\"Burlada\";\"other\"\n\"3127461\";\"Burgos\";\"main\"\n\"3127461\";\"Burgoso\";\"other\"\n\"3127461\";\"burugosu\";\"other\"\n\"3127461\";\"bwrghws\";\"other\"\n\"3127461\";\"Бургос\";\"other\"\n\"3127461\";\"بورغوس\";\"other\"\n\"3127461\";\"ブルゴス\";\"other\"\n\"3127463\";\"Burgohondo\";\"main\"\n\"3127476\";\"Burela de Cabo\";\"main\"\n\"3127476\";\"Burela\";\"other\"\n\"3127489\";\"Buñuel\";\"main\"\n\"3127489\";\"Bunuel\";\"ascii\"\n\"3127521\";\"Buitrago del Lozoya\";\"main\"\n\"3127521\";\"Buitrago\";\"other\"\n\"3127521\";\"Buitrago de Lozoya\";\"other\"\n\"3127521\";\"Buitrago del Lozoyo\";\"other\"\n\"3127538\";\"Bueu\";\"main\"\n\"3127588\";\"Brunete\";\"main\"\n\"3127611\";\"Briviesca\";\"main\"\n\"3127611\";\"Bribiesca\";\"other\"\n\"3127628\";\"Brihuega\";\"main\"\n\"3127655\";\"Breda\";\"main\"\n\"3127659\";\"Brea de Aragón\";\"main\"\n\"3127659\";\"Brea de Aragon\";\"ascii\"\n\"3127659\";\"Brea\";\"other\"\n\"3127773\";\"Borriol\";\"main\"\n\"3127785\";\"Borox\";\"main\"\n\"3127797\";\"les Borges del Camp\";\"main\"\n\"3127797\";\"Borjas del Campo\";\"other\"\n\"3127797\";\"Les Borges del Camp\";\"other\"\n\"3127800\";\"Borja\";\"main\"\n\"3127814\";\"Bordils\";\"main\"\n\"3127826\";\"Boquiñeni\";\"main\"\n\"3127826\";\"Boquineni\";\"ascii\"\n\"3127850\";\"Boñar\";\"main\"\n\"3127850\";\"Bonar\";\"ascii\"\n\"3127889\";\"Boiro\";\"main\"\n\"3127891\";\"Boimorto\";\"main\"\n\"3127891\";\"Santiago\";\"other\"\n\"3127913\";\"Boecillo\";\"main\"\n\"3127935\";\"Boborás\";\"main\"\n\"3127935\";\"Boboras\";\"ascii\"\n\"3127952\";\"Boalo\";\"main\"\n\"3127954\";\"Boal\";\"main\"\n\"3127958\";\"Boadilla del Monte\";\"main\"\n\"3127978\";\"Blanes\";\"main\"\n\"3127978\";\"Бланес\";\"other\"\n\"3127979\";\"Blancos\";\"main\"\n\"3128009\";\"Biota\";\"main\"\n\"3128015\";\"Binéfar\";\"main\"\n\"3128015\";\"Binefar\";\"ascii\"\n\"3128015\";\"Binèfar\";\"other\"\n\"3128017\";\"Binaced\";\"main\"\n\"3128017\";\"Binazed\";\"other\"\n\"3128019\";\"Bimenes\";\"main\"\n\"3128019\";\"San Emeterio\";\"other\"\n\"3128026\";\"Bilbao\";\"main\"\n\"3128026\";\"Bil'bao\";\"other\"\n\"3128026\";\"Bilbau\";\"other\"\n\"3128026\";\"Bilbo\";\"other\"\n\"3128026\";\"El Bocho\";\"other\"\n\"3128026\";\"Бильбао\";\"other\"\n\"3128030\";\"Bigues i Riells\";\"main\"\n\"3128030\";\"Bigues\";\"other\"\n\"3128071\";\"Betanzos\";\"main\"\n\"3128090\";\"Bescanó\";\"main\"\n\"3128090\";\"Bescano\";\"ascii\"\n\"3128096\";\"Besalú\";\"main\"\n\"3128096\";\"Besalu\";\"ascii\"\n\"3128129\";\"Berriz\";\"main\"\n\"3128129\";\"Bérriz\";\"other\"\n\"3128130\";\"Berriozar\";\"main\"\n\"3128133\";\"Berriobeiti\";\"main\"\n\"3128133\";\"Berrioplano\";\"other\"\n\"3128136\";\"Berriatua\";\"main\"\n\"3128136\";\"Berriatúa\";\"other\"\n\"3128170\";\"Bermillo de Sayago\";\"main\"\n\"3128174\";\"Bermeo\";\"main\"\n\"3128174\";\"Bermio\";\"other\"\n\"3128181\";\"Berlanga de Duero\";\"main\"\n\"3128181\";\"Berlanga\";\"other\"\n\"3128181\";\"Berlanga del Duero\";\"other\"\n\"3128184\";\"Beriáin\";\"main\"\n\"3128184\";\"Beriain\";\"ascii\"\n\"3128190\";\"Bergondo\";\"main\"\n\"3128190\";\"San Salvador\";\"other\"\n\"3128201\";\"Berga\";\"main\"\n\"3128248\";\"Berango\";\"main\"\n\"3128272\";\"Benicàssim\";\"main\"\n\"3128272\";\"Benicassim\";\"ascii\"\n\"3128272\";\"Benicasim\";\"other\"\n\"3128272\";\"Benicásim\";\"other\"\n\"3128272\";\"bnw qasm\";\"other\"\n\"3128272\";\"بنو قاسم\";\"other\"\n\"3128273\";\"Benicarló\";\"main\"\n\"3128273\";\"Benicarlo\";\"ascii\"\n\"3128273\";\"Benikarlo\";\"other\"\n\"3128273\";\"Беникарло\";\"other\"\n\"3128290\";\"Benavides\";\"main\"\n\"3128290\";\"Benavides de Orbigo\";\"other\"\n\"3128291\";\"Benavente\";\"main\"\n\"3128296\";\"Benasque\";\"main\"\n\"3128296\";\"Benas\";\"other\"\n\"3128296\";\"Benas - Benasque\";\"other\"\n\"3128296\";\"Benasc\";\"other\"\n\"3128296\";\"Benás\";\"other\"\n\"3128296\";\"Benás - Benasque\";\"other\"\n\"3128296\";\"Venasque\";\"other\"\n\"3128297\";\"Benasal\";\"main\"\n\"3128297\";\"Benassal\";\"other\"\n\"3128304\";\"Benavarri / Benabarre\";\"main\"\n\"3128304\";\"Benabarre\";\"other\"\n\"3128304\";\"Benabarri\";\"other\"\n\"3128304\";\"Benavarri\";\"other\"\n\"3128308\";\"Bembibre\";\"main\"\n\"3128308\";\"Bembibire\";\"other\"\n\"3128308\";\"Bembribe\";\"other\"\n\"3128313\";\"Belver\";\"main\"\n\"3128313\";\"Bellver de Cinca\";\"other\"\n\"3128320\";\"Belorado\";\"main\"\n\"3128323\";\"Belmonte de Tajo\";\"main\"\n\"3128328\";\"Belmonte\";\"main\"\n\"3128328\";\"Miranda\";\"other\"\n\"3128331\";\"Bellvís\";\"main\"\n\"3128331\";\"Bellvis\";\"ascii\"\n\"3128333\";\"Bellver de Cerdanya\";\"main\"\n\"3128336\";\"Bellpuig\";\"main\"\n\"3128336\";\"Belpuig\";\"other\"\n\"3128348\";\"Bellcaire d'Urgell\";\"main\"\n\"3128365\";\"Belchite\";\"main\"\n\"3128365\";\"Belchit\";\"other\"\n\"3128382\";\"Béjar\";\"main\"\n\"3128382\";\"Bejar\";\"ascii\"\n\"3128394\";\"Begonte\";\"main\"\n\"3128394\";\"San Pedro\";\"other\"\n\"3128398\";\"Begues\";\"main\"\n\"3128398\";\"Begas\";\"other\"\n\"3128415\";\"Becerril de la Sierra\";\"main\"\n\"3128416\";\"Becerril de Campos\";\"main\"\n\"3128416\";\"Becerril\";\"other\"\n\"3128419\";\"Becerreá\";\"main\"\n\"3128419\";\"Becerrea\";\"ascii\"\n\"3128436\";\"Beasain\";\"main\"\n\"3128436\";\"Beasáin\";\"other\"\n\"3128462\";\"Baiona\";\"main\"\n\"3128462\";\"Bayona\";\"other\"\n\"3128477\";\"Batres\";\"main\"\n\"3128482\";\"Batea\";\"main\"\n\"3128535\";\"Bas\";\"main\"\n\"3128543\";\"Bárzana\";\"main\"\n\"3128543\";\"Barzana\";\"ascii\"\n\"3128543\";\"Quiros\";\"other\"\n\"3128543\";\"Quirós\";\"other\"\n\"3128546\";\"Barruelo de Santullán\";\"main\"\n\"3128546\";\"Barruelo de Santullan\";\"ascii\"\n\"3128546\";\"Barruelo\";\"other\"\n\"3128653\";\"Barraco\";\"main\"\n\"3128696\";\"Bareyo\";\"main\"\n\"3128745\";\"Bárcena de Cicero\";\"main\"\n\"3128745\";\"Barcena de Cicero\";\"ascii\"\n\"3128745\";\"Barcena\";\"other\"\n\"3128745\";\"Bárcena\";\"other\"\n\"3128760\";\"Barcelona\";\"main\"\n\"3128760\";\"Barcellona\";\"other\"\n\"3128760\";\"Barcelone\";\"other\"\n\"3128760\";\"Barcelono\";\"other\"\n\"3128760\";\"Barcillona catalana\";\"other\"\n\"3128760\";\"Barcino\";\"other\"\n\"3128760\";\"Barkelone\";\"other\"\n\"3128760\";\"Barselona\";\"other\"\n\"3128760\";\"Barselóna\";\"other\"\n\"3128760\";\"Bartzelona\";\"other\"\n\"3128760\";\"Barzelona\";\"other\"\n\"3128760\";\"Lungsod ng Barcelona\";\"other\"\n\"3128760\";\"ba sai luo na\";\"other\"\n\"3128760\";\"baleusellona\";\"other\"\n\"3128760\";\"bar se lon a\";\"other\"\n\"3128760\";\"barselona\";\"other\"\n\"3128760\";\"barslwn\";\"other\"\n\"3128760\";\"baruserona shi\";\"other\"\n\"3128760\";\"brshlwnt\";\"other\"\n\"3128760\";\"brzlwnh\";\"other\"\n\"3128760\";\"la Ciudad Condal\";\"other\"\n\"3128760\";\"Βαρκελώνη\";\"other\"\n\"3128760\";\"Барселона\";\"other\"\n\"3128760\";\"Բարսելոնա\";\"other\"\n\"3128760\";\"ברצלונה\";\"other\"\n\"3128760\";\"بارسلون\";\"other\"\n\"3128760\";\"برشلونة\";\"other\"\n\"3128760\";\"บาร์เซโลนา\";\"other\"\n\"3128760\";\"ბარსელონა\";\"other\"\n\"3128760\";\"バルセロナ市\";\"other\"\n\"3128760\";\"巴塞罗那\";\"other\"\n\"3128760\";\"바르셀로나\";\"other\"\n\"3128795\";\"Barbastro\";\"main\"\n\"3128795\";\"Balbastro\";\"other\"\n\"3128795\";\"Barbastre\";\"other\"\n\"3128824\";\"Barañáin\";\"main\"\n\"3128824\";\"Baranain\";\"ascii\"\n\"3128824\";\"Baran'jajn\";\"other\"\n\"3128824\";\"Бараньяйн\";\"other\"\n\"3128828\";\"Baralla\";\"main\"\n\"3128828\";\"Neira de Jusa\";\"other\"\n\"3128828\";\"Neira de Xusa\";\"other\"\n\"3128828\";\"Neira de Xusá\";\"other\"\n\"3128870\";\"Baños de Río Tobía\";\"main\"\n\"3128870\";\"Banos de Rio Tobia\";\"ascii\"\n\"3128875\";\"Baños de Molgas\";\"main\"\n\"3128875\";\"Banos de Molgas\";\"ascii\"\n\"3128885\";\"Banyoles\";\"main\"\n\"3128885\";\"Banolas\";\"other\"\n\"3128885\";\"Bañolas\";\"other\"\n\"3128903\";\"Bande\";\"main\"\n\"3128923\";\"Baltar\";\"main\"\n\"3128924\";\"Baltanás\";\"main\"\n\"3128924\";\"Baltanas\";\"ascii\"\n\"3128928\";\"Balsareny\";\"main\"\n\"3128948\";\"Ballobar\";\"main\"\n\"3128948\";\"Argavieso\";\"other\"\n\"3128978\";\"Balaguer\";\"main\"\n\"3129007\";\"Begur\";\"main\"\n\"3129007\";\"Bagur\";\"other\"\n\"3129017\";\"Bagà\";\"main\"\n\"3129017\";\"Baga\";\"ascii\"\n\"3129017\";\"Bagá\";\"other\"\n\"3129017\";\"Бага\";\"other\"\n\"3129028\";\"Badalona\";\"main\"\n\"3129028\";\"Бадалона\";\"other\"\n\"3129046\";\"Azuqueca de Henares\";\"main\"\n\"3129046\";\"Asukeka-de-Ehnares\";\"other\"\n\"3129046\";\"Azuqueca\";\"other\"\n\"3129046\";\"Асукека-де-Энарес\";\"other\"\n\"3129059\";\"Azpeitia\";\"main\"\n\"3129071\";\"Azkoitia\";\"main\"\n\"3129071\";\"Azcoitia\";\"other\"\n\"3129086\";\"Azagra\";\"main\"\n\"3129099\";\"Aitona\";\"main\"\n\"3129099\";\"Aytona\";\"other\"\n\"3129106\";\"Ayllón\";\"main\"\n\"3129106\";\"Ayllon\";\"ascii\"\n\"3129108\";\"Aiguafreda\";\"main\"\n\"3129111\";\"Ayerbe\";\"main\"\n\"3129111\";\"Ajerbe\";\"other\"\n\"3129111\";\"Айербе\";\"other\"\n\"3129113\";\"Ayegui\";\"main\"\n\"3129122\";\"Busturi-Axpe\";\"main\"\n\"3129122\";\"Axpe de Busturia\";\"other\"\n\"3129126\";\"Avión\";\"main\"\n\"3129126\";\"Avion\";\"ascii\"\n\"3129126\";\"San Justo\";\"other\"\n\"3129126\";\"Santos Justo y Pastor\";\"other\"\n\"3129128\";\"Avinyó\";\"main\"\n\"3129128\";\"Avinyo\";\"ascii\"\n\"3129135\";\"Avilés\";\"main\"\n\"3129135\";\"Aviles\";\"ascii\"\n\"3129135\";\"Авилес\";\"other\"\n\"3129136\";\"Ávila de los Caballeros\";\"main\"\n\"3129136\";\"Avila de los Caballeros\";\"ascii\"\n\"3129136\";\"Avila\";\"other\"\n\"3129136\";\"Avila de los Santos\";\"other\"\n\"3129136\";\"Avilo\";\"other\"\n\"3129136\";\"abira\";\"other\"\n\"3129136\";\"Àvila\";\"other\"\n\"3129136\";\"Ávila\";\"other\"\n\"3129136\";\"Ávila de los Santos\";\"other\"\n\"3129136\";\"Авила\";\"other\"\n\"3129136\";\"アビラ\";\"other\"\n\"3129154\";\"Urrestieta\";\"main\"\n\"3129154\";\"Avellaneda\";\"other\"\n\"3129154\";\"Avellaneda-Sopuerta\";\"other\"\n\"3129169\";\"Autol\";\"main\"\n\"3129199\";\"Ateca\";\"main\"\n\"3129203\";\"Ataun\";\"main\"\n\"3129203\";\"Atáun\";\"other\"\n\"3129225\";\"Astudillo\";\"main\"\n\"3129231\";\"Astorga\";\"main\"\n\"3129231\";\"Asturica Augusta\";\"other\"\n\"3129231\";\"Асторга\";\"other\"\n\"3129239\";\"Astigarraga\";\"main\"\n\"3129244\";\"Asteasu\";\"main\"\n\"3129277\";\"Ascó\";\"main\"\n\"3129277\";\"Asco\";\"ascii\"\n\"3129293\";\"Arzúa\";\"main\"\n\"3129293\";\"Arzua\";\"ascii\"\n\"3129322\";\"Artesa de Segre\";\"main\"\n\"3129326\";\"Artés\";\"main\"\n\"3129326\";\"Artes\";\"ascii\"\n\"3129329\";\"Arteixo\";\"main\"\n\"3129329\";\"Santiago\";\"other\"\n\"3129343\";\"Artajona\";\"main\"\n\"3129356\";\"Arroyomolinos\";\"main\"\n\"3129356\";\"Aorroyomolinos\";\"other\"\n\"3129371\";\"Arroyo\";\"main\"\n\"3129380\";\"Arróniz\";\"main\"\n\"3129380\";\"Arroniz\";\"ascii\"\n\"3129406\";\"Arrigorriaga\";\"main\"\n\"3129406\";\"Arrigunaga\";\"other\"\n\"3129413\";\"Arriba\";\"main\"\n\"3129476\";\"Arnedo, La Rioja\";\"main\"\n\"3129550\";\"Ariza\";\"main\"\n\"3129588\";\"Arguedas\";\"main\"\n\"3129593\";\"Argoños\";\"main\"\n\"3129593\";\"Argonos\";\"ascii\"\n\"3129607\";\"Argentona\";\"main\"\n\"3129636\";\"Arganda\";\"main\"\n\"3129636\";\"Арганда\";\"other\"\n\"3129644\";\"Arévalo\";\"main\"\n\"3129644\";\"Arevalo\";\"ascii\"\n\"3129655\";\"Ares\";\"main\"\n\"3129660\";\"Arenys de Munt\";\"main\"\n\"3129661\";\"Arenys de Mar\";\"main\"\n\"3129678\";\"Arenas de San Pedro\";\"main\"\n\"3129679\";\"Arenas de Iguña\";\"main\"\n\"3129679\";\"Arenas de Iguna\";\"ascii\"\n\"3129679\";\"Las Arenas\";\"other\"\n\"3129692\";\"Aretxabaleta\";\"main\"\n\"3129692\";\"Arechavaleta\";\"other\"\n\"3129723\";\"Arcos de Jalón\";\"main\"\n\"3129723\";\"Arcos de Jalon\";\"ascii\"\n\"3129723\";\"Arcos\";\"other\"\n\"3129802\";\"Arbo\";\"main\"\n\"3129802\";\"Santa Maria\";\"other\"\n\"3129802\";\"Santa María\";\"other\"\n\"3129809\";\"Arbeca\";\"main\"\n\"3129822\";\"Araya\";\"main\"\n\"3129822\";\"Araia\";\"other\"\n\"3129822\";\"Asparren\";\"other\"\n\"3129822\";\"Asparrena\";\"other\"\n\"3129822\";\"Aspárrena\";\"other\"\n\"3129857\";\"Aranjuez\";\"main\"\n\"3129857\";\"Arankhuehs\";\"other\"\n\"3129857\";\"Аранхуэс\";\"other\"\n\"3129857\";\"ארנחואס\";\"other\"\n\"3129864\";\"Aranga\";\"main\"\n\"3129864\";\"San Pelayo\";\"other\"\n\"3129877\";\"Aranda de Duero\";\"main\"\n\"3129877\";\"Aranda\";\"other\"\n\"3129877\";\"Aranda-de-Duehro\";\"other\"\n\"3129877\";\"Аранда-де-Дуэро\";\"other\"\n\"3129937\";\"Aoiz\";\"main\"\n\"3130031\";\"Anglesola\";\"main\"\n\"3130032\";\"Anglès\";\"main\"\n\"3130032\";\"Angles\";\"ascii\"\n\"3130066\";\"Andosilla\";\"main\"\n\"3130067\";\"Andorra\";\"main\"\n\"3130070\";\"Andoain\";\"main\"\n\"3130070\";\"Andoaín\";\"other\"\n\"3130070\";\"Andoáin\";\"other\"\n\"3130124\";\"Amurrio\";\"main\"\n\"3130128\";\"Ampuero\";\"main\"\n\"3130131\";\"Amposta\";\"main\"\n\"3130137\";\"Amorebieta-Etxano\";\"main\"\n\"3130137\";\"Amorebieta\";\"other\"\n\"3130137\";\"Amorebieta-Echano\";\"other\"\n\"3130137\";\"Zornotza\";\"other\"\n\"3130141\";\"Amoeiro\";\"main\"\n\"3130155\";\"Amés\";\"main\"\n\"3130155\";\"Ames\";\"ascii\"\n\"3130155\";\"Ehjmsa\";\"other\"\n\"3130155\";\"Santo Tomas\";\"other\"\n\"3130155\";\"Santo Tomás\";\"other\"\n\"3130155\";\"Эймса\";\"other\"\n\"3130175\";\"Ambía\";\"main\"\n\"3130175\";\"Ambia\";\"ascii\"\n\"3130175\";\"San Esteban\";\"other\"\n\"3130240\";\"Altafulla\";\"main\"\n\"3130244\";\"Altsasu\";\"main\"\n\"3130244\";\"Alsasua\";\"other\"\n\"3130249\";\"Alpicat\";\"main\"\n\"3130255\";\"Alpedrete\";\"main\"\n\"3130262\";\"Alovera\";\"main\"\n\"3130279\";\"Almudébar\";\"main\"\n\"3130279\";\"Almudebar\";\"ascii\"\n\"3130279\";\"Almudevar\";\"other\"\n\"3130282\";\"Almoster\";\"main\"\n\"3130283\";\"Almorox\";\"main\"\n\"3130283\";\"Almora\";\"other\"\n\"3130306\";\"Almenar\";\"main\"\n\"3130313\";\"Almazán\";\"main\"\n\"3130313\";\"Almazan\";\"ascii\"\n\"3130343\";\"Allo\";\"main\"\n\"3130354\";\"Allariz\";\"main\"\n\"3130376\";\"Alhama de Aragón\";\"main\"\n\"3130376\";\"Alhama de Aragon\";\"ascii\"\n\"3130376\";\"Alhama\";\"other\"\n\"3130379\";\"Alguaire\";\"main\"\n\"3130380\";\"Algorta\";\"main\"\n\"3130383\";\"Algete\";\"main\"\n\"3130395\";\"Alforja\";\"main\"\n\"3130398\";\"Alfarràs\";\"main\"\n\"3130398\";\"Alfarras\";\"ascii\"\n\"3130399\";\"Alfaro\";\"main\"\n\"3130406\";\"Alfamén\";\"main\"\n\"3130406\";\"Alfamen\";\"ascii\"\n\"3130409\";\"Alfajarín\";\"main\"\n\"3130409\";\"Alfajarin\";\"ascii\"\n\"3130422\";\"Alella\";\"main\"\n\"3130492\";\"Aldeanueva de la Vera\";\"main\"\n\"3130496\";\"Aldeanueva de Ebro\";\"main\"\n\"3130500\";\"Aldeamayor de San Martín\";\"main\"\n\"3130500\";\"Aldeamayor de San Martin\";\"ascii\"\n\"3130523\";\"Aldea del Fresno\";\"main\"\n\"3130529\";\"Aldeadávila de la Ribera\";\"main\"\n\"3130529\";\"Aldeadavila de la Ribera\";\"ascii\"\n\"3130529\";\"Alveavila de la Ribera\";\"other\"\n\"3130557\";\"Alcover\";\"main\"\n\"3130557\";\"Alcober\";\"other\"\n\"3130563\";\"Alcorisa\";\"main\"\n\"3130563\";\"Alcoriza\";\"other\"\n\"3130564\";\"Alcorcón\";\"main\"\n\"3130564\";\"Alcorcon\";\"ascii\"\n\"3130564\";\"Al'korkon\";\"other\"\n\"3130564\";\"Alkorkono\";\"other\"\n\"3130564\";\"Алькоркон\";\"other\"\n\"3130567\";\"l'Alcora\";\"main\"\n\"3130567\";\"Alcora\";\"other\"\n\"3130567\";\"L'Alcora\";\"other\"\n\"3130573\";\"Alcoletge\";\"main\"\n\"3130576\";\"Alcolea de Cinca\";\"main\"\n\"3130582\";\"Alcocéber\";\"main\"\n\"3130582\";\"Alcoceber\";\"ascii\"\n\"3130582\";\"Alcocebre\";\"other\"\n\"3130582\";\"Alcossebre\";\"other\"\n\"3130582\";\"Aleosebre\";\"other\"\n\"3130583\";\"Alcobendas\";\"main\"\n\"3130583\";\"Alkobendas\";\"other\"\n\"3130583\";\"Алкобендас\";\"other\"\n\"3130598\";\"Alcarràs\";\"main\"\n\"3130598\";\"Alcarras\";\"ascii\"\n\"3130598\";\"Alcarraz\";\"other\"\n\"3130598\";\"Alcarrás\";\"other\"\n\"3130606\";\"Alcañiz\";\"main\"\n\"3130606\";\"Alcaniz\";\"ascii\"\n\"3130606\";\"Alcanyis\";\"other\"\n\"3130606\";\"Alcanyís\";\"other\"\n\"3130607\";\"Alcañices\";\"main\"\n\"3130607\";\"Alcanices\";\"ascii\"\n\"3130608\";\"Alcanar\";\"main\"\n\"3130616\";\"Alcalá de Henares\";\"main\"\n\"3130616\";\"Alcala de Henares\";\"ascii\"\n\"3130616\";\"Alcála de Henares\";\"other\"\n\"3130616\";\"Alkala de Enares\";\"other\"\n\"3130616\";\"Compluto\";\"other\"\n\"3130616\";\"Complutum\";\"other\"\n\"3130616\";\"Cómpluto\";\"other\"\n\"3130616\";\"Алкала де Енарес\";\"other\"\n\"3130616\";\"アルカラ・デ・エナレス\";\"other\"\n\"3130619\";\"Alcalà de Xivert\";\"main\"\n\"3130619\";\"Alcala de Xivert\";\"ascii\"\n\"3130619\";\"Alcala\";\"other\"\n\"3130619\";\"Alcala de Chisvert\";\"other\"\n\"3130619\";\"Alcala de Chivert\";\"other\"\n\"3130619\";\"Alcalá de Chisvert\";\"other\"\n\"3130637\";\"Albocàsser\";\"main\"\n\"3130637\";\"Albocasser\";\"ascii\"\n\"3130637\";\"Albocacer\";\"other\"\n\"3130652\";\"Albesa\";\"main\"\n\"3130660\";\"Alberite\";\"main\"\n\"3130672\";\"Albelda de Iregua\";\"main\"\n\"3130679\";\"Albarracín\";\"main\"\n\"3130679\";\"Albarracin\";\"ascii\"\n\"3130698\";\"Albalate del Arzobispo\";\"main\"\n\"3130699\";\"Albalate de Cinca\";\"main\"\n\"3130699\";\"Albalat de Cinca\";\"other\"\n\"3130706\";\"Alba de Tormes\";\"main\"\n\"3130720\";\"Alàs i Cerc\";\"main\"\n\"3130720\";\"Alas i Cerc\";\"ascii\"\n\"3130723\";\"Alar del Rey\";\"main\"\n\"3130739\";\"Alagón\";\"main\"\n\"3130739\";\"Alagon\";\"ascii\"\n\"3130741\";\"Alaejos\";\"main\"\n\"3130753\";\"Ajalvir\";\"main\"\n\"3130771\";\"Ainzón\";\"main\"\n\"3130771\";\"Ainzon\";\"ascii\"\n\"3130772\";\"Aínsa\";\"main\"\n\"3130772\";\"Ainsa\";\"ascii\"\n\"3130772\";\"L'Ainsa\";\"other\"\n\"3130792\";\"Ahigal\";\"main\"\n\"3130824\";\"Aguilar de Campóo\";\"main\"\n\"3130824\";\"Aguilar de Campoo\";\"ascii\"\n\"3130824\";\"Aguilar de Compoa\";\"other\"\n\"3130909\";\"Ágreda\";\"main\"\n\"3130909\";\"Agreda\";\"ascii\"\n\"3130911\";\"Agramunt\";\"main\"\n\"3130930\";\"Adzaneta\";\"main\"\n\"3130930\";\"Atzaneta del Maestrat\";\"other\"\n\"3130950\";\"Ademuz\";\"main\"\n\"3130950\";\"Ademus\";\"other\"\n\"3130950\";\"Ademús\";\"other\"\n\"3130950\";\"Aldemuz\";\"other\"\n\"3131024\";\"Abrera\";\"main\"\n\"3131093\";\"Abegondo\";\"main\"\n\"3131093\";\"Santa Eulalia\";\"other\"\n\"3131136\";\"Abadín\";\"main\"\n\"3131136\";\"Abadin\";\"ascii\"\n\"3131136\";\"Santa Maria\";\"other\"\n\"3131136\";\"Santa María\";\"other\"\n\"6252065\";\"Nou Barris\";\"main\"\n\"6252065\";\"Distrito Nou Barris\";\"other\"\n\"6269610\";\"Yerri\";\"main\"\n\"6324376\";\"Pinar de Chamartín\";\"main\"\n\"6324376\";\"Pinar de Chamartin\";\"ascii\"\n\"6324402\";\"Las Tablas\";\"main\"\n\"6324402\";\"The Tables\";\"other\"\n\"6324533\";\"Santa Ponça\";\"main\"\n\"6324533\";\"Santa Ponca\";\"ascii\"\n\"6324533\";\"Santa Ponsa\";\"other\"\n\"6324533\";\"Santa-Ponsa\";\"other\"\n\"6324533\";\"Санта-Понса\";\"other\"\n\"6324699\";\"el Torricó / Altorricon\";\"main\"\n\"6324699\";\"el Torrico / Altorricon\";\"ascii\"\n\"6324699\";\"Altorricon\";\"other\"\n\"6324699\";\"Altorricón\";\"other\"\n\"6324699\";\"el Torrico\";\"other\"\n\"6324699\";\"el Torricó\";\"other\"\n\"6354969\";\"Playa del Ingles\";\"main\"\n\"6354969\";\"Plaja del' Ingles\";\"other\"\n\"6354969\";\"Playa del Inglés\";\"other\"\n\"6354969\";\"Плая дель Инглес\";\"other\"\n\"6354970\";\"Puerto Rico\";\"main\"\n\"6355013\";\"Puerto del Carmen\";\"main\"\n\"6355013\";\"Puehrto-del'-Karmen\";\"other\"\n\"6355013\";\"Пуэрто-дель-Кармен\";\"other\"\n\"6355015\";\"Magaluf\";\"main\"\n\"6355015\";\"Magalluf\";\"other\"\n\"6355023\";\"es Camp de Mar\";\"main\"\n\"6355023\";\"Kamp-de-Mar\";\"other\"\n\"6355023\";\"el Camp de Mar\";\"other\"\n\"6355023\";\"Камп-де-Мар\";\"other\"\n\"6355183\";\"Playa de las Américas\";\"main\"\n\"6355183\";\"Playa de las Americas\";\"ascii\"\n\"6355183\";\"las americas\";\"other\"\n\"6355214\";\"Las Rosas\";\"main\"\n\"6357326\";\"Noia\";\"main\"\n\"6357335\";\"Pobra do Caramiñal\";\"main\"\n\"6357335\";\"Pobra do Caraminal\";\"ascii\"\n\"6357335\";\"A Pobra do Caraminal\";\"other\"\n\"6357335\";\"A Pobra do Caramiñal\";\"other\"\n\"6358456\";\"Albanchez de Mágina\";\"main\"\n\"6358456\";\"Albanchez de Magina\";\"ascii\"\n\"6359208\";\"Portomarín\";\"main\"\n\"6359208\";\"Portomarin\";\"ascii\"\n\"6359405\";\"Tres Cantos\";\"main\"\n\"6359608\";\"Burlada/Burlata\";\"main\"\n\"6362987\";\"Ceuta\";\"main\"\n\"6362987\";\"Seuta\";\"other\"\n\"6362987\";\"Сеута\";\"other\"\n\"6363003\";\"Sopuerta\";\"main\"\n\"6533820\";\"Sant Cristòfol de les Fonts\";\"main\"\n\"6533820\";\"Sant Cristofol de les Fonts\";\"ascii\"\n\"6543871\";\"Alquerías del Niño Perdido\";\"main\"\n\"6543871\";\"Alquerias del Nino Perdido\";\"ascii\"\n\"6544075\";\"Port d'Alcúdia\";\"main\"\n\"6544075\";\"Port d'Alcudia\";\"ascii\"\n\"6544100\";\"Eixample\";\"main\"\n\"6544100\";\"Distrito Eixample\";\"other\"\n\"6544100\";\"L'Eixample\";\"other\"\n\"6544105\";\"Sant Martí\";\"main\"\n\"6544105\";\"Sant Marti\";\"ascii\"\n\"6544105\";\"Districte de Sant Marti\";\"other\"\n\"6544105\";\"Districte de Sant Martí\";\"other\"\n\"6544106\";\"Ciutat Vella\";\"main\"\n\"6544106\";\"Distrito Ciutat Vella\";\"other\"\n\"6544350\";\"Retamar\";\"main\"\n\"6559502\";\"Pego\";\"main\"\n\"6559503\";\"l'Alfàs del Pi\";\"main\"\n\"6559503\";\"l'Alfas del Pi\";\"ascii\"\n\"6559503\";\"Alfas Del Pi\";\"other\"\n\"6559503\";\"Alfaz del Pi\";\"other\"\n\"6559503\";\"L'Alfas Del Pi\";\"other\"\n\"6559504\";\"Deltebre\";\"main\"\n\"6559641\";\"Las Gabias\";\"main\"\n\"6615440\";\"Delicias\";\"main\"\n\"6615442\";\"Almozara\";\"main\"\n\"6615442\";\"Al'mozara\";\"other\"\n\"6615442\";\"La Quimica\";\"other\"\n\"6615442\";\"La Química\";\"other\"\n\"6615442\";\"Альмозара\";\"other\"\n\"6615443\";\"Montecanal\";\"main\"\n\"6615444\";\"Oliver-Valdefierro, Oliver, Valdefierro\";\"main\"\n\"6618856\";\"Santutxu\";\"main\"\n\"6692439\";\"El Cotillo\";\"main\"\n\"6692439\";\"Ehl'-Kotil'o\";\"other\"\n\"6692439\";\"Эль-Котильо\";\"other\"\n\"6692471\";\"Los Realejos\";\"main\"\n\"6693046\";\"Sant Joan de Mediona\";\"main\"\n\"6693088\";\"Pasaia\";\"main\"\n\"6694300\";\"El entrego\";\"main\"\n\"6694300\";\"L'Entregu\";\"other\"\n\"6697039\";\"Basauri\";\"main\"\n\"6943537\";\"Llefià\";\"main\"\n\"6943537\";\"Llefia\";\"ascii\"\n\"7115111\";\"Corvera de Asturias\";\"main\"\n\"7521822\";\"Alpujarra Granadina\";\"main\"\n\"7521822\";\"Alpujarras\";\"other\"\n\"7521822\";\"La Alpujarra\";\"other\"\n\"7521822\";\"Las Alpujarras\";\"other\"\n\"325579\";\"Ziway\";\"main\"\n\"325579\";\"Zwai\";\"other\"\n\"325579\";\"Zway\";\"other\"\n\"325780\";\"Yirga ‘Alem\";\"main\"\n\"325780\";\"Yirga `Alem\";\"ascii\"\n\"325780\";\"Abosto\";\"other\"\n\"325780\";\"Agraria\";\"other\"\n\"325780\";\"Dalle\";\"other\"\n\"325780\";\"Irgalem\";\"other\"\n\"325780\";\"Yirgalem\";\"other\"\n\"325780\";\"Ābosto\";\"other\"\n\"326036\";\"Yabēlo\";\"main\"\n\"326036\";\"Yabelo\";\"ascii\"\n\"326036\";\"Iavello\";\"other\"\n\"326036\";\"Yabalo\";\"other\"\n\"326036\";\"Yavello\";\"other\"\n\"326036\";\"Yavelo\";\"other\"\n\"326036\";\"Yeabelo\";\"other\"\n\"326036\";\"Yābalo\";\"other\"\n\"326206\";\"Werota\";\"main\"\n\"326206\";\"Wereta\";\"other\"\n\"326206\";\"Wereta (2)\";\"other\"\n\"326206\";\"Worota\";\"other\"\n\"326206\";\"Worrota\";\"other\"\n\"326259\";\"Were Īlu\";\"main\"\n\"326259\";\"Were Ilu\";\"ascii\"\n\"326259\";\"Uorra Ilu\";\"other\"\n\"326259\";\"Wara Haylu\";\"other\"\n\"326259\";\"Wara Hāylu\";\"other\"\n\"326259\";\"Warayelu\";\"other\"\n\"326259\";\"Ware Ilu\";\"other\"\n\"326259\";\"Warra Hailu\";\"other\"\n\"326259\";\"Wereyilu\";\"other\"\n\"326259\";\"Woreyilu\";\"other\"\n\"326308\";\"Wenjī\";\"main\"\n\"326308\";\"Wenji\";\"ascii\"\n\"326308\";\"Uongi\";\"other\"\n\"326308\";\"Wonji\";\"other\"\n\"326321\";\"Wendo\";\"main\"\n\"326321\";\"Uondo\";\"other\"\n\"326321\";\"Wando\";\"other\"\n\"326321\";\"Wondo\";\"other\"\n\"327162\";\"Turmi\";\"main\"\n\"327162\";\"Турми\";\"other\"\n\"327234\";\"Tulu Bolo\";\"main\"\n\"327234\";\"Masno Gabado\";\"other\"\n\"327694\";\"Tēpī\";\"main\"\n\"327694\";\"Tepi\";\"ascii\"\n\"327694\";\"Tippi\";\"other\"\n\"328316\";\"Sīrē\";\"main\"\n\"328316\";\"Sire\";\"ascii\"\n\"328316\";\"Sere\";\"other\"\n\"328316\";\"Seri\";\"other\"\n\"328316\";\"Serē\";\"other\"\n\"328316\";\"Sire (2)\";\"other\"\n\"328316\";\"Siri\";\"other\"\n\"328316\";\"Sirie\";\"other\"\n\"328316\";\"Siriè\";\"other\"\n\"328316\";\"Sirre\";\"other\"\n\"328316\";\"Sīrē (2)\";\"other\"\n\"328689\";\"Shashemenē\";\"main\"\n\"328689\";\"Shashemene\";\"ascii\"\n\"328689\";\"Sciasciamanna\";\"other\"\n\"328689\";\"Sciasciamanne\";\"other\"\n\"328689\";\"Shashamana\";\"other\"\n\"328689\";\"Shashamane\";\"other\"\n\"328689\";\"Shashamani\";\"other\"\n\"328689\";\"Shashamanna\";\"other\"\n\"328689\";\"Shashamanni\";\"other\"\n\"328689\";\"Shashamané\";\"other\"\n\"328689\";\"Shāshamani\";\"other\"\n\"328689\";\"ሻሸመኔ\";\"other\"\n\"328709\";\"Shambu\";\"main\"\n\"328709\";\"Sciambo\";\"other\"\n\"328709\";\"Shambo\";\"other\"\n\"328709\";\"Shembo\";\"other\"\n\"328709\";\"Shembu\";\"other\"\n\"328716\";\"Shakīso\";\"main\"\n\"328716\";\"Shakiso\";\"ascii\"\n\"328880\";\"Sendafa\";\"main\"\n\"328880\";\"Sandafe\";\"other\"\n\"328880\";\"Sendefa\";\"other\"\n\"328880\";\"Sendefà\";\"other\"\n\"329114\";\"Sebeta\";\"main\"\n\"329586\";\"Robīt\";\"main\"\n\"329586\";\"Robit\";\"ascii\"\n\"330120\";\"Nejo\";\"main\"\n\"330120\";\"Najo\";\"other\"\n\"330120\";\"Nedjo\";\"other\"\n\"330120\";\"Neggio\";\"other\"\n\"330120\";\"Nego\";\"other\"\n\"330120\";\"Neju\";\"other\"\n\"330186\";\"Nazrēt\";\"main\"\n\"330186\";\"Nazret\";\"ascii\"\n\"330186\";\"Adama\";\"other\"\n\"330186\";\"Hadama\";\"other\"\n\"330186\";\"Nazareth\";\"other\"\n\"330186\";\"Nazreth\";\"other\"\n\"330491\";\"Mojo\";\"main\"\n\"330491\";\"Maggio\";\"other\"\n\"330491\";\"Moccia\";\"other\"\n\"330491\";\"Modjo\";\"other\"\n\"330491\";\"Moggio\";\"other\"\n\"330491\";\"Mojjio\";\"other\"\n\"330491\";\"Mojjo\";\"other\"\n\"330534\";\"Mīzan Teferī\";\"main\"\n\"330534\";\"Mizan Teferi\";\"ascii\"\n\"330534\";\"Mesan\";\"other\"\n\"330534\";\"Mizan\";\"other\"\n\"330534\";\"Mizan Tafari\";\"other\"\n\"330534\";\"Mizon Teferi\";\"other\"\n\"330764\";\"Metu\";\"main\"\n\"330764\";\"Mattu\";\"other\"\n\"330764\";\"Mettu\";\"other\"\n\"330811\";\"Metahāra\";\"main\"\n\"330811\";\"Metahara\";\"ascii\"\n\"330811\";\"Matahara\";\"other\"\n\"330811\";\"Matahārā\";\"other\"\n\"330811\";\"Metehara\";\"other\"\n\"331038\";\"Mendī\";\"main\"\n\"331038\";\"Mendi\";\"ascii\"\n\"331038\";\"Mandi\";\"other\"\n\"331038\";\"Менди\";\"other\"\n\"331180\";\"Mek’elē\";\"main\"\n\"331180\";\"Mek'ele\";\"ascii\"\n\"331180\";\"Macalle\";\"other\"\n\"331180\";\"Makale\";\"other\"\n\"331180\";\"Makalle\";\"other\"\n\"331180\";\"Maqale\";\"other\"\n\"331180\";\"Maqalle\";\"other\"\n\"331180\";\"Maqalē\";\"other\"\n\"331259\";\"Mēga\";\"main\"\n\"331259\";\"Mega\";\"ascii\"\n\"331259\";\"Megga\";\"other\"\n\"331416\";\"Maych’ew\";\"main\"\n\"331416\";\"Maych'ew\";\"ascii\"\n\"331416\";\"Mai Ceu\";\"other\"\n\"331416\";\"Mai Chio\";\"other\"\n\"331416\";\"Mai Cio\";\"other\"\n\"331416\";\"Mai Ciò\";\"other\"\n\"331416\";\"Mai Keu\";\"other\"\n\"331416\";\"Maichew\";\"other\"\n\"331416\";\"Maitchew\";\"other\"\n\"331416\";\"Maych'awu\";\"other\"\n\"331416\";\"Maych’awu\";\"other\"\n\"331968\";\"Lobuni\";\"main\"\n\"331968\";\"Omorate\";\"other\"\n\"331968\";\"Оморате\";\"other\"\n\"332129\";\"Leku\";\"main\"\n\"332129\";\"Locu\";\"other\"\n\"332288\";\"Lalībela\";\"main\"\n\"332288\";\"Lalibela\";\"ascii\"\n\"332288\";\"Klippekirkerne i Lalibela\";\"other\"\n\"332288\";\"Klippkyrkorna i Lalibela\";\"other\"\n\"332288\";\"Labibela\";\"other\"\n\"332288\";\"Lalibala\";\"other\"\n\"332288\";\"Lālibalā\";\"other\"\n\"332288\";\"la li bei la\";\"other\"\n\"332288\";\"Лалибела\";\"other\"\n\"332288\";\"ላሊበላ\";\"other\"\n\"332288\";\"拉利貝拉\";\"other\"\n\"332746\";\"Korem\";\"main\"\n\"332746\";\"Koram\";\"other\"\n\"332746\";\"Kworam\";\"other\"\n\"332746\";\"Quaram\";\"other\"\n\"332746\";\"Quoram\";\"other\"\n\"332746\";\"Quoram Vecchia\";\"other\"\n\"332746\";\"Quorem\";\"other\"\n\"332817\";\"Konso\";\"main\"\n\"332817\";\"Консо\";\"other\"\n\"332880\";\"K’olīto\";\"main\"\n\"332880\";\"K'olito\";\"ascii\"\n\"332880\";\"Alaba\";\"other\"\n\"332880\";\"Alaba K'ulito\";\"other\"\n\"332880\";\"Alaba Kolito\";\"other\"\n\"332880\";\"Colito\";\"other\"\n\"332880\";\"Golito\";\"other\"\n\"332880\";\"Goluto\";\"other\"\n\"332880\";\"Ālaba K’ulīto\";\"other\"\n\"332938\";\"Kofelē\";\"main\"\n\"332938\";\"Kofele\";\"ascii\"\n\"332938\";\"Cofole\";\"other\"\n\"332938\";\"Kefole\";\"other\"\n\"332938\";\"Kofale\";\"other\"\n\"333103\";\"Kibre Mengist\";\"main\"\n\"333103\";\"Adola\";\"other\"\n\"333103\";\"Angedi\";\"other\"\n\"333356\";\"Kemisē\";\"main\"\n\"333356\";\"Kemise\";\"ascii\"\n\"333356\";\"Cascim\";\"other\"\n\"333356\";\"Kassebie\";\"other\"\n\"333356\";\"Kemissie\";\"other\"\n\"333356\";\"Kemse\";\"other\"\n\"333356\";\"Kemsē\";\"other\"\n\"333373\";\"Kombolcha\";\"main\"\n\"333373\";\"Cambolcia\";\"other\"\n\"333373\";\"Combolcha\";\"other\"\n\"333373\";\"Combolcia\";\"other\"\n\"333373\";\"Kambolcha\";\"other\"\n\"333373\";\"Kambolchā\";\"other\"\n\"333373\";\"Kembolcha\";\"other\"\n\"333373\";\"Kombol'cha\";\"other\"\n\"333373\";\"Kombolcah\";\"other\"\n\"333373\";\"Комбольча\";\"other\"\n\"333750\";\"Jinka\";\"main\"\n\"333772\";\"Jīma\";\"main\"\n\"333772\";\"Jima\";\"ascii\"\n\"333772\";\"Djimma\";\"other\"\n\"333772\";\"Gima\";\"other\"\n\"333772\";\"Gimma\";\"other\"\n\"333772\";\"Jimma\";\"other\"\n\"333795\";\"Jijiga\";\"main\"\n\"333795\";\"Djigdjiga\";\"other\"\n\"333795\";\"Dzhidzhiga\";\"other\"\n\"333795\";\"Giggiga\";\"other\"\n\"333795\";\"Giggigga\";\"other\"\n\"333795\";\"Jigjiga\";\"other\"\n\"333795\";\"Jigjigga\";\"other\"\n\"333795\";\"Джиджига\";\"other\"\n\"334227\";\"Inda Silasē\";\"main\"\n\"334227\";\"Inda Silase\";\"ascii\"\n\"334227\";\"Enda Salassie\";\"other\"\n\"334227\";\"Enda Selase\";\"other\"\n\"334227\";\"Enda Selassie\";\"other\"\n\"334227\";\"Enda Selassye\";\"other\"\n\"334227\";\"Enda Sellassie\";\"other\"\n\"334227\";\"Endā Selāsē\";\"other\"\n\"334227\";\"Inda Selassie\";\"other\"\n\"334227\";\"Shire Inda Silase\";\"other\"\n\"334227\";\"Shirē Inda Silasē\";\"other\"\n\"334227\";\"Ynda Syllase\";\"other\"\n\"334529\";\"Huruta\";\"main\"\n\"334529\";\"Hurruta\";\"other\"\n\"334529\";\"Huruta (1)\";\"other\"\n\"334529\";\"Uruta Mariam\";\"other\"\n\"334700\";\"Hīrna\";\"main\"\n\"334700\";\"Hirna\";\"ascii\"\n\"335035\";\"Hārer\";\"main\"\n\"335035\";\"Harer\";\"ascii\"\n\"335035\";\"Harar\";\"other\"\n\"335035\";\"Harrar\";\"other\"\n\"335035\";\"Hārar\";\"other\"\n\"335035\";\"Kharer\";\"other\"\n\"335035\";\"ሐረር\";\"other\"\n\"335286\";\"Hāgere Selam\";\"main\"\n\"335286\";\"Hagere Selam\";\"ascii\"\n\"335286\";\"Agere Selam\";\"other\"\n\"335286\";\"Agheresalam\";\"other\"\n\"335286\";\"Hula\";\"other\"\n\"335288\";\"Hāgere Hiywet\";\"main\"\n\"335288\";\"Hagere Hiywet\";\"ascii\"\n\"335288\";\"Agere Hiywet\";\"other\"\n\"335288\";\"Ambo\";\"other\"\n\"335288\";\"Hagere Hiwot\";\"other\"\n\"335288\";\"Hagere Hiywot\";\"other\"\n\"335288\";\"Hagere-Hiywer\";\"other\"\n\"335288\";\"Āmbo\";\"other\"\n\"335733\";\"Guder\";\"main\"\n\"335943\";\"Gorē\";\"main\"\n\"335943\";\"Gore\";\"ascii\"\n\"335943\";\"Gannat\";\"other\"\n\"335943\";\"Genud\";\"other\"\n\"335943\";\"Gorei\";\"other\"\n\"335943\";\"Gwore\";\"other\"\n\"336014\";\"Gonder\";\"main\"\n\"336014\";\"Gondar\";\"other\"\n\"336014\";\"Gondehr\";\"other\"\n\"336014\";\"Gwender\";\"other\"\n\"336014\";\"Gwonder\";\"other\"\n\"336014\";\"gong de er\";\"other\"\n\"336014\";\"gwndr\";\"other\"\n\"336014\";\"Гондар\";\"other\"\n\"336014\";\"Гондэр\";\"other\"\n\"336014\";\"גונדר\";\"other\"\n\"336014\";\"ጎንደር\";\"other\"\n\"336014\";\"貢德爾\";\"other\"\n\"336350\";\"Goba\";\"main\"\n\"336350\";\"Gobba\";\"other\"\n\"336350\";\"Gobbà\";\"other\"\n\"336350\";\"Гоба\";\"other\"\n\"336372\";\"Giyon\";\"main\"\n\"336372\";\"Chitu\";\"other\"\n\"336372\";\"Ghion\";\"other\"\n\"336372\";\"Gion\";\"other\"\n\"336372\";\"Guyon\";\"other\"\n\"336372\";\"Ualiso\";\"other\"\n\"336372\";\"Uoliso\";\"other\"\n\"336372\";\"Uolisò\";\"other\"\n\"336372\";\"Waliso\";\"other\"\n\"336372\";\"Walliso\";\"other\"\n\"336372\";\"Walso\";\"other\"\n\"336372\";\"Weliso\";\"other\"\n\"336372\";\"Welso\";\"other\"\n\"336372\";\"Welīso\";\"other\"\n\"336372\";\"Woliso\";\"other\"\n\"336372\";\"Wolisso\";\"other\"\n\"336372\";\"Wolliso\";\"other\"\n\"336454\";\"Gīnīr\";\"main\"\n\"336454\";\"Ginir\";\"ascii\"\n\"336454\";\"Ghigner\";\"other\"\n\"336454\";\"Ghiignir\";\"other\"\n\"336454\";\"Ghimir\";\"other\"\n\"336454\";\"Ghinner\";\"other\"\n\"336454\";\"Ghinnir\";\"other\"\n\"336454\";\"Ginnir\";\"other\"\n\"336454\";\"Ginnīr\";\"other\"\n\"336496\";\"Gīmbī\";\"main\"\n\"336496\";\"Gimbi\";\"ascii\"\n\"336496\";\"Gembi\";\"other\"\n\"336496\";\"Ghimbi\";\"other\"\n\"336526\";\"Gīdolē\";\"main\"\n\"336526\";\"Gidole\";\"ascii\"\n\"336526\";\"Ghidole\";\"other\"\n\"336526\";\"Ghidolie\";\"other\"\n\"336745\";\"Gewanē\";\"main\"\n\"336745\";\"Gewane\";\"ascii\"\n\"336745\";\"Gauani\";\"other\"\n\"336745\";\"Gawani\";\"other\"\n\"336745\";\"Gawāni\";\"other\"\n\"336745\";\"Gewani\";\"other\"\n\"336745\";\"Gewanī\";\"other\"\n\"336931\";\"Genet\";\"main\"\n\"336931\";\"Gennet\";\"other\"\n\"336931\";\"Holata\";\"other\"\n\"336931\";\"Holeta\";\"other\"\n\"336931\";\"Holetta\";\"other\"\n\"336931\";\"Hollatta\";\"other\"\n\"336931\";\"Holota\";\"other\"\n\"336931\";\"Holotā\";\"other\"\n\"336931\";\"Oletta\";\"other\"\n\"336931\";\"Zhenja\";\"other\"\n\"336931\";\"Женя\";\"other\"\n\"337010\";\"Gelemso\";\"main\"\n\"337010\";\"Galamso\";\"other\"\n\"337010\";\"Ghelemso\";\"other\"\n\"337010\";\"Ghelemsò\";\"other\"\n\"337083\";\"Gēdo\";\"main\"\n\"337083\";\"Gedo\";\"ascii\"\n\"337083\";\"Ghedo\";\"other\"\n\"337152\";\"Gebre Guracha\";\"main\"\n\"337152\";\"Cuyu\";\"other\"\n\"337152\";\"Gabra Guracha\";\"other\"\n\"337152\";\"Gabre Guracha\";\"other\"\n\"337152\";\"Kuyu\";\"other\"\n\"337405\";\"Gambēla\";\"main\"\n\"337405\";\"Gambela\";\"ascii\"\n\"337405\";\"Gambeila\";\"other\"\n\"337405\";\"Gambela Post\";\"other\"\n\"337405\";\"Gambele\";\"other\"\n\"337405\";\"Gambella\";\"other\"\n\"337405\";\"Гамбеле\";\"other\"\n\"337712\";\"Finote Selam\";\"main\"\n\"337712\";\"Fenote Selam\";\"other\"\n\"337771\";\"Fichē\";\"main\"\n\"337771\";\"Fiche\";\"ascii\"\n\"337771\";\"Feche\";\"other\"\n\"337771\";\"Fechē\";\"other\"\n\"337771\";\"Ficce\";\"other\"\n\"337771\";\"Fice\";\"other\"\n\"337771\";\"Fitche\";\"other\"\n\"337853\";\"Felege Neway\";\"main\"\n\"337853\";\"Felege Niway\";\"other\"\n\"337853\";\"Sawla Felege Neway\";\"other\"\n\"338554\";\"Dubtī\";\"main\"\n\"338554\";\"Dubti\";\"ascii\"\n\"338554\";\"Dufti\";\"other\"\n\"338554\";\"Dufty\";\"other\"\n\"338554\";\"Duftī\";\"other\"\n\"338726\";\"Dodola\";\"main\"\n\"338726\";\"Dodolla\";\"other\"\n\"338726\";\"Dodolo\";\"other\"\n\"338726\";\"Додола\";\"other\"\n\"338832\";\"Dirē Dawa\";\"main\"\n\"338832\";\"Dire Dawa\";\"ascii\"\n\"338832\";\"D'ire Daua\";\"other\"\n\"338832\";\"Daredawa\";\"other\"\n\"338832\";\"Dirdabo\";\"other\"\n\"338832\";\"Dirdabò\";\"other\"\n\"338832\";\"Dire Daba\";\"other\"\n\"338832\";\"Dire Daua\";\"other\"\n\"338832\";\"Dire Dewa\";\"other\"\n\"338832\";\"Dire-Daoua\";\"other\"\n\"338832\";\"Direaoua\";\"other\"\n\"338832\";\"Diredavy\";\"other\"\n\"338832\";\"Dirediua\";\"other\"\n\"338832\";\"Diré-Daoua\";\"other\"\n\"338832\";\"D’ire Daua\";\"other\"\n\"338832\";\"dile dawa\";\"other\"\n\"338832\";\"dyrt dawa\";\"other\"\n\"338832\";\"Диредавы\";\"other\"\n\"338832\";\"דירה דאווה\";\"other\"\n\"338832\";\"ديرة داوا\";\"other\"\n\"338832\";\"ድሬዳዋ\";\"other\"\n\"338832\";\"디레 다와\";\"other\"\n\"338998\";\"Dīla\";\"main\"\n\"338998\";\"Dila\";\"ascii\"\n\"338998\";\"Dilla\";\"other\"\n\"338998\";\"Дила\";\"other\"\n\"339219\";\"Desē\";\"main\"\n\"339219\";\"Dese\";\"ascii\"\n\"339219\";\"Dase\";\"other\"\n\"339219\";\"Dasē\";\"other\"\n\"339219\";\"Desje\";\"other\"\n\"339219\";\"Dessa\";\"other\"\n\"339219\";\"Dessi\";\"other\"\n\"339219\";\"Dessie\";\"other\"\n\"339219\";\"Dessye\";\"other\"\n\"339219\";\"Desė\";\"other\"\n\"339448\";\"Dembī Dolo\";\"main\"\n\"339448\";\"Dembi Dolo\";\"ascii\"\n\"339448\";\"Dambidollo\";\"other\"\n\"339448\";\"Dambidolo\";\"other\"\n\"339448\";\"Dembi Doilo\";\"other\"\n\"339448\";\"Dembidollo\";\"other\"\n\"339448\";\"Dembilollo\";\"other\"\n\"339448\";\"Saio\";\"other\"\n\"339551\";\"Dejen\";\"main\"\n\"339551\";\"Degen\";\"other\"\n\"339551\";\"Dingab\";\"other\"\n\"339629\";\"Deder\";\"main\"\n\"339629\";\"Dadar\";\"other\"\n\"339666\";\"Debre Zeyit\";\"main\"\n\"339666\";\"Biscioftu\";\"other\"\n\"339666\";\"Biscioftù\";\"other\"\n\"339666\";\"Bishoftu\";\"other\"\n\"339666\";\"Debra Zeit\";\"other\"\n\"339666\";\"Debre Zeit\";\"other\"\n\"339666\";\"Debre Zeyt\";\"other\"\n\"339671\";\"Debre Werk’\";\"main\"\n\"339671\";\"Debre Werk'\";\"ascii\"\n\"339671\";\"Dabra Wark'\";\"other\"\n\"339671\";\"Dabra Wark’\";\"other\"\n\"339671\";\"Dabra-Warq\";\"other\"\n\"339671\";\"Debra Uerch\";\"other\"\n\"339671\";\"Debra Uorc\";\"other\"\n\"339671\";\"Debra Uorch\";\"other\"\n\"339671\";\"Debra Uork\";\"other\"\n\"339671\";\"Debra Wark\";\"other\"\n\"339671\";\"Debra Werk\";\"other\"\n\"339671\";\"Debra Work\";\"other\"\n\"339686\";\"Debre Tabor\";\"main\"\n\"339686\";\"Dabra-Tabor\";\"other\"\n\"339686\";\"Dabra-Tābor\";\"other\"\n\"339686\";\"Debra Tabor\";\"other\"\n\"339686\";\"Samara\";\"other\"\n\"339692\";\"Debre Sīna\";\"main\"\n\"339692\";\"Debre Sina\";\"ascii\"\n\"339692\";\"Debra Sina\";\"other\"\n\"339708\";\"Debre Mark’os\";\"main\"\n\"339708\";\"Debre Mark'os\";\"ascii\"\n\"339708\";\"Dabra Marko's\";\"other\"\n\"339708\";\"Dabra Mārko’s\";\"other\"\n\"339708\";\"Dabra-7arqos\";\"other\"\n\"339708\";\"Dabra-7ārqos\";\"other\"\n\"339708\";\"Debra Marcos\";\"other\"\n\"339708\";\"Debra Markos\";\"other\"\n\"339708\";\"Debre Marcos\";\"other\"\n\"339708\";\"Moncorer\";\"other\"\n\"339708\";\"Monkorer\";\"other\"\n\"339734\";\"Debre Birhan\";\"main\"\n\"339734\";\"Dabra Berham\";\"other\"\n\"339734\";\"Dabra-Berhan\";\"other\"\n\"339734\";\"Dabra-Berhān\";\"other\"\n\"339734\";\"Debra Berham\";\"other\"\n\"339734\";\"Debra Berhan\";\"other\"\n\"339734\";\"Debra Birhan\";\"other\"\n\"339734\";\"Debra Brehan\";\"other\"\n\"339734\";\"Debre Berhan\";\"other\"\n\"339823\";\"Debark’\";\"main\"\n\"339823\";\"Debark'\";\"ascii\"\n\"339823\";\"Dabark'\";\"other\"\n\"339823\";\"Dabarq\";\"other\"\n\"339823\";\"Dabārk’\";\"other\"\n\"339823\";\"Dabārq\";\"other\"\n\"339823\";\"Davark\";\"other\"\n\"339823\";\"Debarec\";\"other\"\n\"339823\";\"Debarech\";\"other\"\n\"339823\";\"Debarek\";\"other\"\n\"339823\";\"Devark\";\"other\"\n\"339823\";\"Dibark\";\"other\"\n\"340358\";\"Dabat\";\"main\"\n\"340358\";\"Dabat (2)\";\"other\"\n\"340358\";\"Dahat\";\"other\"\n\"341297\";\"Butajīra\";\"main\"\n\"341297\";\"Butajira\";\"ascii\"\n\"341297\";\"Butajera\";\"other\"\n\"341297\";\"Butlagira\";\"other\"\n\"341297\";\"Buttagira\";\"other\"\n\"341397\";\"Burē\";\"main\"\n\"341397\";\"Bure\";\"ascii\"\n\"341397\";\"Burie\";\"other\"\n\"341397\";\"Burja\";\"other\"\n\"341397\";\"Burye\";\"other\"\n\"341397\";\"Буря\";\"other\"\n\"341742\";\"Bonga\";\"main\"\n\"341742\";\"Bonga (1)\";\"other\"\n\"341742\";\"Бонга\";\"other\"\n\"341877\";\"Bodītī\";\"main\"\n\"341877\";\"Boditi\";\"ascii\"\n\"341877\";\"Boditti\";\"other\"\n\"341877\";\"Boditu\";\"other\"\n\"341877\";\"Bodity\";\"other\"\n\"342190\";\"Bichena\";\"main\"\n\"342190\";\"Bechana\";\"other\"\n\"342190\";\"Bechanā\";\"other\"\n\"342190\";\"Biccena\";\"other\"\n\"342190\";\"Bichana\";\"other\"\n\"342559\";\"Bedēsa\";\"main\"\n\"342559\";\"Bedesa\";\"ascii\"\n\"342559\";\"Bedessa\";\"other\"\n\"342567\";\"Bedelē\";\"main\"\n\"342567\";\"Bedele\";\"ascii\"\n\"342567\";\"Beddele\";\"other\"\n\"342567\";\"Bedelle\";\"other\"\n\"342567\";\"Bedelli\";\"other\"\n\"342641\";\"Batī\";\"main\"\n\"342641\";\"Bati\";\"ascii\"\n\"342641\";\"Batia\";\"other\"\n\"342641\";\"Batie\";\"other\"\n\"342856\";\"Bako\";\"main\"\n\"342856\";\"Bachio\";\"other\"\n\"342856\";\"Baco\";\"other\"\n\"342856\";\"Baka\";\"other\"\n\"342856\";\"Бако\";\"other\"\n\"342884\";\"Bahir Dar\";\"main\"\n\"342884\";\"Babardur Georgis\";\"other\"\n\"342884\";\"Bahar\";\"other\"\n\"342884\";\"Bahar Dar\";\"other\"\n\"342884\";\"Bahar Dar Ghiorghis\";\"other\"\n\"342884\";\"Baher Dar\";\"other\"\n\"342884\";\"Baherdar-Giyorgis\";\"other\"\n\"342884\";\"Bahr Dar\";\"other\"\n\"342884\";\"Bahrdar Giyergio\";\"other\"\n\"342884\";\"Bahrdar Giyorgis\";\"other\"\n\"342884\";\"Bakhr-Dar\";\"other\"\n\"342884\";\"Bāherdār-Giyorgis\";\"other\"\n\"342884\";\"bhr dr\";\"other\"\n\"342884\";\"Бахр-Дар\";\"other\"\n\"342884\";\"בהר דר\";\"other\"\n\"343134\";\"Āwash\";\"main\"\n\"343134\";\"Awash\";\"ascii\"\n\"343134\";\"Auasc\";\"other\"\n\"343137\";\"Āwasa\";\"main\"\n\"343137\";\"Awasa\";\"ascii\"\n\"343137\";\"Avase\";\"other\"\n\"343137\";\"Awassa\";\"other\"\n\"343137\";\"Hawassa\";\"other\"\n\"343137\";\"Авасе\";\"other\"\n\"343137\";\"אוושה\";\"other\"\n\"343292\";\"Āsosa\";\"main\"\n\"343292\";\"Asosa\";\"ascii\"\n\"343402\";\"Āsbe Teferī\";\"main\"\n\"343402\";\"Asbe Teferi\";\"ascii\"\n\"343402\";\"Asba Littorio\";\"other\"\n\"343402\";\"Asbar Tafari\";\"other\"\n\"343402\";\"Asbatafari\";\"other\"\n\"343402\";\"Asbe Taferi\";\"other\"\n\"343402\";\"Asbe Tefen\";\"other\"\n\"343402\";\"Asebe Tafari\";\"other\"\n\"343402\";\"Asebe Teferi\";\"other\"\n\"343402\";\"Āsebe Teferī\";\"other\"\n\"343409\";\"Asaita\";\"main\"\n\"343409\";\"Aisaita\";\"other\"\n\"343409\";\"Asajita\";\"other\"\n\"343409\";\"Asayita\";\"other\"\n\"343409\";\"Asayta\";\"other\"\n\"343409\";\"Assayita\";\"other\"\n\"343409\";\"Aysa'ita\";\"other\"\n\"343409\";\"Āsayita\";\"other\"\n\"343409\";\"Āysa’īta\";\"other\"\n\"343409\";\"Асайита\";\"other\"\n\"343413\";\"Āsasa\";\"main\"\n\"343413\";\"Asasa\";\"ascii\"\n\"343593\";\"Āreka\";\"main\"\n\"343593\";\"Areka\";\"ascii\"\n\"343593\";\"Ancheto\";\"other\"\n\"343593\";\"Areka Ancheto\";\"other\"\n\"343663\";\"Ārba Minch’\";\"main\"\n\"343663\";\"Arba Minch'\";\"ascii\"\n\"343663\";\"Arba Mench\";\"other\"\n\"343663\";\"Arba Mintch\";\"other\"\n\"343663\";\"Gantar\";\"other\"\n\"343663\";\"Minghi\";\"other\"\n\"344420\";\"Āksum\";\"main\"\n\"344420\";\"Aksum\";\"ascii\"\n\"344420\";\"Akesum\";\"other\"\n\"344420\";\"Aksoum\";\"other\"\n\"344420\";\"Aksumo\";\"other\"\n\"344420\";\"Axum\";\"other\"\n\"344420\";\"akswm\";\"other\"\n\"344420\";\"Аксум\";\"other\"\n\"344420\";\"أكسوم\";\"other\"\n\"344420\";\"አክሱም\";\"other\"\n\"344620\";\"Āgere Maryam\";\"main\"\n\"344620\";\"Agere Maryam\";\"ascii\"\n\"344620\";\"Agere Mariam\";\"other\"\n\"344620\";\"Aghere Mariam\";\"other\"\n\"344620\";\"Alga\";\"other\"\n\"344620\";\"Alge\";\"other\"\n\"344620\";\"Alghe\";\"other\"\n\"344620\";\"Algheremariam\";\"other\"\n\"344620\";\"Algā\";\"other\"\n\"344620\";\"Hagere Mariam\";\"other\"\n\"344661\";\"Āgaro\";\"main\"\n\"344661\";\"Agaro\";\"ascii\"\n\"344661\";\"Aggaro\";\"other\"\n\"344661\";\"Aggarò\";\"other\"\n\"344923\";\"Ādīs Zemen\";\"main\"\n\"344923\";\"Adis Zemen\";\"ascii\"\n\"344923\";\"Addis Zaman\";\"other\"\n\"344923\";\"Addis Zemen\";\"other\"\n\"344976\";\"Ādīs ‘Alem\";\"main\"\n\"344976\";\"Adis `Alem\";\"ascii\"\n\"344976\";\"Addis Alem\";\"other\"\n\"344976\";\"Addis-Alam\";\"other\"\n\"344976\";\"Addis-Ālam\";\"other\"\n\"344979\";\"Addis Ababa\";\"main\"\n\"344979\";\"Addis Abbaba\";\"other\"\n\"344979\";\"Addis Abeba\";\"other\"\n\"344979\";\"Addis-Abeba\";\"other\"\n\"344979\";\"Addis-Abebae\";\"other\"\n\"344979\";\"Addisz-Abeba\";\"other\"\n\"344979\";\"Adis Abeba\";\"other\"\n\"344979\";\"Adis-Abebo\";\"other\"\n\"344979\";\"Adisabeba\";\"other\"\n\"344979\";\"Adís Abeba\";\"other\"\n\"344979\";\"Adís Abeba - አዲስ አበባ\";\"other\"\n\"344979\";\"Adís Abeba - አዲስ ፡ አበባ\";\"other\"\n\"344979\";\"Antis Ampempa\";\"other\"\n\"344979\";\"Neanthopolis\";\"other\"\n\"344979\";\"a di si a bei ba\";\"other\"\n\"344979\";\"adisa ababa\";\"other\"\n\"344979\";\"adiseuababa\";\"other\"\n\"344979\";\"adisuabeba\";\"other\"\n\"344979\";\"adys ababa\";\"other\"\n\"344979\";\"Ādīs Ābeba\";\"other\"\n\"344979\";\"Αντίς Αμπέμπα\";\"other\"\n\"344979\";\"Аддис-Абебæ\";\"other\"\n\"344979\";\"Аддис-Абеба\";\"other\"\n\"344979\";\"Аддіс-Абеба\";\"other\"\n\"344979\";\"Адис Абеба\";\"other\"\n\"344979\";\"Ադիս Աբեբա\";\"other\"\n\"344979\";\"אדיס אבבה\";\"other\"\n\"344979\";\"آدیس آبابا\";\"other\"\n\"344979\";\"أديس أبابا\";\"other\"\n\"344979\";\"ئەددىس -ئەبىبە\";\"other\"\n\"344979\";\"अदिस अबाबा\";\"other\"\n\"344979\";\"አዲስ አበባ\";\"other\"\n\"344979\";\"アディスアベバ\";\"other\"\n\"344979\";\"阿迪斯阿貝巴\";\"other\"\n\"344979\";\"아디스아바바\";\"other\"\n\"345353\";\"Ādēt\";\"main\"\n\"345353\";\"Adet\";\"ascii\"\n\"345353\";\"Addiet\";\"other\"\n\"345353\";\"Addiet Canna\";\"other\"\n\"345704\";\"Abomsa\";\"main\"\n\"345704\";\"Abonsa\";\"other\"\n\"6913519\";\"Semera\";\"main\"\n\"630736\";\"Ypäjä\";\"main\"\n\"630736\";\"Ypaejae\";\"ascii\"\n\"630752\";\"Ylöjärvi\";\"main\"\n\"630752\";\"Ylojarvi\";\"ascii\"\n\"630752\";\"Ylajarvi\";\"other\"\n\"630752\";\"Yloejaervi\";\"other\"\n\"630752\";\"Yläjarvi\";\"other\"\n\"630768\";\"Ylivieska\";\"main\"\n\"630768\";\"ILIVIESKA\";\"other\"\n\"630768\";\"ИЛИВИЕСКА\";\"other\"\n\"630779\";\"Ylitornio\";\"main\"\n\"630779\";\"Badje-Duortnus\";\"other\"\n\"630779\";\"OEvertornea\";\"other\"\n\"630779\";\"Övertorneå\";\"other\"\n\"630805\";\"Ylistaro\";\"main\"\n\"630918\";\"Ylikiiminki\";\"main\"\n\"630918\";\"Ilikiminki\";\"other\"\n\"630918\";\"OEverkiminge\";\"other\"\n\"630918\";\"Överkiminge\";\"other\"\n\"630918\";\"Иликиминки\";\"other\"\n\"630952\";\"Yli-Ii\";\"main\"\n\"630952\";\"Ili-I\";\"other\"\n\"630952\";\"OEverijo\";\"other\"\n\"630952\";\"Överijo\";\"other\"\n\"630952\";\"Или-И\";\"other\"\n\"630956\";\"Ylihärmä\";\"main\"\n\"630956\";\"Yliharma\";\"ascii\"\n\"630998\";\"Yläne\";\"main\"\n\"630998\";\"Ylane\";\"ascii\"\n\"630998\";\"Yulyane\";\"other\"\n\"631003\";\"Ylämaa\";\"main\"\n\"631003\";\"Ylamaa\";\"ascii\"\n\"631003\";\"Juljamaa\";\"other\"\n\"631003\";\"Ylaemaa\";\"other\"\n\"631003\";\"Юлямаа\";\"other\"\n\"631191\";\"Vuolijoki\";\"main\"\n\"631191\";\"Vuolijo\";\"other\"\n\"631191\";\"Вуолийо\";\"other\"\n\"631254\";\"Vörå\";\"main\"\n\"631254\";\"Voera\";\"ascii\"\n\"631254\";\"Voeyri\";\"other\"\n\"631254\";\"Vora\";\"other\"\n\"631254\";\"Vöyri\";\"other\"\n\"631358\";\"Virtasalmi\";\"main\"\n\"631358\";\"Виртасалми\";\"other\"\n\"631376\";\"Virrat\";\"main\"\n\"631376\";\"Virdois\";\"other\"\n\"631376\";\"Virtois\";\"other\"\n\"631376\";\"Wirrat\";\"other\"\n\"631376\";\"Виррат\";\"other\"\n\"631448\";\"Vimpeli\";\"main\"\n\"631448\";\"Wimpeli\";\"other\"\n\"631459\";\"Vilppula\";\"main\"\n\"631459\";\"Val'ppu\";\"other\"\n\"631459\";\"Vil'ppula\";\"other\"\n\"631459\";\"Вильппула\";\"other\"\n\"631511\";\"Viljakkala\";\"main\"\n\"631511\";\"Viliakkala\";\"other\"\n\"631511\";\"Wiljakkala\";\"other\"\n\"631560\";\"Viitasaari\";\"main\"\n\"631560\";\"Vijtasaari\";\"other\"\n\"631560\";\"Вийтасаари\";\"other\"\n\"631693\";\"Viiala\";\"main\"\n\"631707\";\"Vihti\";\"main\"\n\"631707\";\"Vichtis\";\"other\"\n\"631707\";\"Vikhti\";\"other\"\n\"631707\";\"Вихти\";\"other\"\n\"631758\";\"Vihanti\";\"main\"\n\"631758\";\"Vikhanti\";\"other\"\n\"631758\";\"Wihanti\";\"other\"\n\"631758\";\"Виханти\";\"other\"\n\"631778\";\"Vieremä\";\"main\"\n\"631778\";\"Vierema\";\"ascii\"\n\"631778\";\"Vieremae\";\"other\"\n\"631778\";\"Vieremja\";\"other\"\n\"631778\";\"Виеремя\";\"other\"\n\"631825\";\"Veteli\";\"main\"\n\"631825\";\"Vetil\";\"other\"\n\"631856\";\"Vesilahti\";\"main\"\n\"631873\";\"Vesanto\";\"main\"\n\"631873\";\"Wesanto\";\"other\"\n\"631873\";\"Весанто\";\"other\"\n\"632041\";\"Vehmersalmi\";\"main\"\n\"632041\";\"Vekhmersalmi\";\"other\"\n\"632041\";\"Вехмерсалми\";\"other\"\n\"632062\";\"Vehmaa\";\"main\"\n\"632062\";\"Vehmo\";\"other\"\n\"632062\";\"Vemo\";\"other\"\n\"632361\";\"Varpaisjärvi\";\"main\"\n\"632361\";\"Varpaisjarvi\";\"ascii\"\n\"632361\";\"Varpaisjaervi\";\"other\"\n\"632361\";\"Varpajs\\\"jarvi\";\"other\"\n\"632361\";\"Варпайсъярви\";\"other\"\n\"632370\";\"Varkaus\";\"main\"\n\"632370\";\"VARKAUS\";\"other\"\n\"632370\";\"ВАРКАУС\";\"other\"\n\"632453\";\"Vantaa\";\"main\"\n\"632453\";\"Vanda\";\"other\"\n\"632453\";\"Вантаа\";\"other\"\n\"632539\";\"Vampula\";\"main\"\n\"632542\";\"Vammala\";\"main\"\n\"632542\";\"Ваммала\";\"other\"\n\"632552\";\"Valtimo\";\"main\"\n\"632552\";\"Valtimojarvi\";\"other\"\n\"632552\";\"Valtimojärvi\";\"other\"\n\"632552\";\"Waltimo\";\"other\"\n\"632552\";\"Валтимо\";\"other\"\n\"632669\";\"Valkeala\";\"main\"\n\"632669\";\"Валкеала\";\"other\"\n\"632672\";\"Valkeakoski\";\"main\"\n\"632672\";\"VALKEAKOSKI\";\"other\"\n\"632672\";\"ВАЛКЕАКОСКИ\";\"other\"\n\"632860\";\"Vahto\";\"main\"\n\"632923\";\"Vähäkyrö\";\"main\"\n\"632923\";\"Vahakyro\";\"ascii\"\n\"632923\";\"Lillkyro\";\"other\"\n\"632923\";\"Vaehaekyroe\";\"other\"\n\"632923\";\"Vaehaeykyroe\";\"other\"\n\"632923\";\"Vähäykyrö\";\"other\"\n\"632978\";\"Vaasa\";\"main\"\n\"632978\";\"Nikolainkaupunki\";\"other\"\n\"632978\";\"Nikolaistad\";\"other\"\n\"632978\";\"Vasa\";\"other\"\n\"632978\";\"Wasa\";\"other\"\n\"632978\";\"basa\";\"other\"\n\"632978\";\"wa sa\";\"other\"\n\"632978\";\"Вааса\";\"other\"\n\"632978\";\"バーサ\";\"other\"\n\"632978\";\"瓦萨\";\"other\"\n\"633096\";\"Vaala\";\"main\"\n\"633096\";\"Vala\";\"other\"\n\"633096\";\"Вала\";\"other\"\n\"633221\";\"Uusikaupunki\";\"main\"\n\"633221\";\"Nystad\";\"other\"\n\"633221\";\"Nyustad\";\"other\"\n\"633221\";\"Usikaupunki\";\"other\"\n\"633221\";\"uusikaupunki\";\"other\"\n\"633221\";\"Уусикаупунки\";\"other\"\n\"633242\";\"Uurainen\";\"main\"\n\"633242\";\"Urajnen\";\"other\"\n\"633242\";\"Урайнен\";\"other\"\n\"633268\";\"Utsjoki\";\"main\"\n\"633268\";\"Ohcejohka\";\"other\"\n\"633268\";\"Utsyoki\";\"other\"\n\"633268\";\"Утсйоки\";\"other\"\n\"633295\";\"Utajärvi\";\"main\"\n\"633295\";\"Utajarvi\";\"ascii\"\n\"633295\";\"Utajaervi\";\"other\"\n\"633295\";\"Utayarvi\";\"other\"\n\"633295\";\"Утаярви\";\"other\"\n\"633332\";\"Urjala\";\"main\"\n\"633332\";\"Urdiala\";\"other\"\n\"633395\";\"Ulvila\";\"main\"\n\"633395\";\"Ulfsby\";\"other\"\n\"633395\";\"Ulfsbyu\";\"other\"\n\"633395\";\"Ulvsby\";\"other\"\n\"633395\";\"Улвила\";\"other\"\n\"633413\";\"Ullava\";\"main\"\n\"633541\";\"Tyrnävä\";\"main\"\n\"633541\";\"Tyrnava\";\"ascii\"\n\"633591\";\"Tuusula\";\"main\"\n\"633591\";\"Thusby\";\"other\"\n\"633591\";\"Tusby\";\"other\"\n\"633591\";\"Туусула\";\"other\"\n\"633593\";\"Tuusniemi\";\"main\"\n\"633593\";\"Tusniemi\";\"other\"\n\"633593\";\"Тусниеми\";\"other\"\n\"633611\";\"Tuupovaara\";\"main\"\n\"633611\";\"Tupovara\";\"other\"\n\"633611\";\"Туповара\";\"other\"\n\"633619\";\"Tuulos\";\"main\"\n\"633619\";\"Tulos\";\"other\"\n\"633619\";\"Тулос\";\"other\"\n\"633679\";\"Turku\";\"main\"\n\"633679\";\"Abo\";\"other\"\n\"633679\";\"Aboa\";\"other\"\n\"633679\";\"Turcu\";\"other\"\n\"633679\";\"Turu\";\"other\"\n\"633679\";\"Túrcú\";\"other\"\n\"633679\";\"to~uruku\";\"other\"\n\"633679\";\"tu er ku\";\"other\"\n\"633679\";\"twrqw\";\"other\"\n\"633679\";\"Åbo\";\"other\"\n\"633679\";\"Турку\";\"other\"\n\"633679\";\"טורקו\";\"other\"\n\"633679\";\"トゥルク\";\"other\"\n\"633679\";\"圖爾庫\";\"other\"\n\"634008\";\"Töysä\";\"main\"\n\"634008\";\"Toysa\";\"ascii\"\n\"634093\";\"Tornio\";\"main\"\n\"634093\";\"Duortnus\";\"other\"\n\"634093\";\"Tornea\";\"other\"\n\"634093\";\"Torneå\";\"other\"\n\"634093\";\"Торнио\";\"other\"\n\"634297\";\"Toivakka\";\"main\"\n\"634297\";\"Tojvakka\";\"other\"\n\"634297\";\"Тойвакка\";\"other\"\n\"634317\";\"Toijala\";\"main\"\n\"634317\";\"Akaa\";\"other\"\n\"634324\";\"Toholampi\";\"main\"\n\"634324\";\"Tokholampi\";\"other\"\n\"634324\";\"Тохолампи\";\"other\"\n\"634331\";\"Tohmajärvi\";\"main\"\n\"634331\";\"Tohmajarvi\";\"ascii\"\n\"634331\";\"Tohmajaervi\";\"other\"\n\"634561\";\"Teuva\";\"main\"\n\"634561\";\"OEstermark\";\"other\"\n\"634561\";\"Östermark\";\"other\"\n\"634592\";\"Tervola\";\"main\"\n\"634592\";\"Тервола\";\"other\"\n\"634604\";\"Tervo\";\"main\"\n\"634604\";\"Терво\";\"other\"\n\"634651\";\"Tervakoski\";\"main\"\n\"634651\";\"Тервакоски\";\"other\"\n\"634851\";\"Tarvasjoki\";\"main\"\n\"634963\";\"Tampere\";\"main\"\n\"634963\";\"Tammerfors\";\"other\"\n\"634963\";\"Tamperė\";\"other\"\n\"634963\";\"tanpere\";\"other\"\n\"634963\";\"tmprh\";\"other\"\n\"634963\";\"Тампере\";\"other\"\n\"634963\";\"טמפרה\";\"other\"\n\"634963\";\"タンペレ\";\"other\"\n\"634992\";\"Tammela\";\"main\"\n\"635130\";\"Taivassalo\";\"main\"\n\"635130\";\"Tefsala\";\"other\"\n\"635130\";\"Toevsala\";\"other\"\n\"635130\";\"Tofsala\";\"other\"\n\"635130\";\"Töfsala\";\"other\"\n\"635130\";\"Tövsala\";\"other\"\n\"635141\";\"Taivalkoski\";\"main\"\n\"635141\";\"Tajvalkoski\";\"other\"\n\"635141\";\"Тайвалкоски\";\"other\"\n\"635150\";\"Taipalsaari\";\"main\"\n\"635150\";\"Tajpalsari\";\"other\"\n\"635150\";\"Тайпалсари\";\"other\"\n\"635336\";\"Sysmä\";\"main\"\n\"635336\";\"Sysma\";\"ascii\"\n\"635336\";\"Sysmae\";\"other\"\n\"635692\";\"Suonenjoki\";\"main\"\n\"635692\";\"SUONENJOKI\";\"other\"\n\"635692\";\"Suomenjoki\";\"other\"\n\"635692\";\"СУОНЕНЙОКИ\";\"other\"\n\"635696\";\"Suomussalmi\";\"main\"\n\"635696\";\"Suomusal'mi\";\"other\"\n\"635696\";\"Suomussahni\";\"other\"\n\"635696\";\"Суомуссалми\";\"other\"\n\"635698\";\"Suomusjärvi\";\"main\"\n\"635698\";\"Suomusjarvi\";\"ascii\"\n\"635745\";\"Suolahti\";\"main\"\n\"635745\";\"SUOLAKHTI\";\"other\"\n\"635745\";\"СУОЛАХТИ\";\"other\"\n\"635780\";\"Suodenniemi\";\"main\"\n\"635826\";\"Sumiainen\";\"main\"\n\"635826\";\"Sumiajnen\";\"other\"\n\"635826\";\"Сумиайнен\";\"other\"\n\"635844\";\"Sulkava\";\"main\"\n\"635844\";\"Сулкава\";\"other\"\n\"636173\";\"Sotkamo\";\"main\"\n\"636173\";\"Соткамо\";\"other\"\n\"636301\";\"Sonkajärvi\";\"main\"\n\"636301\";\"Sonkajarvi\";\"ascii\"\n\"636301\";\"Sonkajaervi\";\"other\"\n\"636301\";\"Сонкаярви\";\"other\"\n\"636345\";\"Somero\";\"main\"\n\"636345\";\"Сомеро\";\"other\"\n\"636393\";\"Soini\";\"main\"\n\"636393\";\"Sojni\";\"other\"\n\"636393\";\"Сойни\";\"other\"\n\"636464\";\"Sodankylä\";\"main\"\n\"636464\";\"Sodankyla\";\"ascii\"\n\"636464\";\"SODANKJULJA\";\"other\"\n\"636464\";\"Soadegilli\";\"other\"\n\"636464\";\"Soađegilli\";\"other\"\n\"636464\";\"Sodankylae\";\"other\"\n\"636464\";\"Sodankyulya\";\"other\"\n\"636464\";\"СОДАНКЮЛЯ\";\"other\"\n\"636608\";\"Siuntio\";\"main\"\n\"636608\";\"Shundeo\";\"other\"\n\"636608\";\"Siunlia\";\"other\"\n\"636608\";\"Sjundea\";\"other\"\n\"636608\";\"Sjundeå\";\"other\"\n\"636608\";\"Шундео\";\"other\"\n\"636802\";\"Simo\";\"main\"\n\"636802\";\"Симо\";\"other\"\n\"636803\";\"Simo\";\"main\"\n\"636803\";\"Sima\";\"other\"\n\"636803\";\"Simå\";\"other\"\n\"636803\";\"Симо\";\"other\"\n\"636947\";\"Siilinjärvi\";\"main\"\n\"636947\";\"Siilinjarvi\";\"ascii\"\n\"636947\";\"Siilinjaervi\";\"other\"\n\"636947\";\"Silin\\\"jarvi\";\"other\"\n\"636947\";\"Силинъярви\";\"other\"\n\"637002\";\"Siikajoki\";\"main\"\n\"637002\";\"Sikaioki\";\"other\"\n\"637002\";\"Sikajoki\";\"other\"\n\"637002\";\"Сикайоки\";\"other\"\n\"637020\";\"Siikainen\";\"main\"\n\"637035\";\"Sievi\";\"main\"\n\"637035\";\"Сиеви\";\"other\"\n\"637067\";\"Sibbo\";\"main\"\n\"637067\";\"Sibba\";\"other\"\n\"637067\";\"Sibbå\";\"other\"\n\"637067\";\"Sipoo\";\"other\"\n\"637219\";\"Seinäjoki\";\"main\"\n\"637219\";\"Seinajoki\";\"ascii\"\n\"637219\";\"Seinaejoki\";\"other\"\n\"637247\";\"Säynätsalo\";\"main\"\n\"637247\";\"Saeynaetsalo\";\"ascii\"\n\"637247\";\"Sjajnjatsalo\";\"other\"\n\"637247\";\"Сяйнятсало\";\"other\"\n\"637284\";\"Savukoski\";\"main\"\n\"637284\";\"Saukoski\";\"other\"\n\"637284\";\"Sayukoski\";\"other\"\n\"637284\";\"Suovvaguoika\";\"other\"\n\"637284\";\"Савукоски\";\"other\"\n\"637288\";\"Savonranta\";\"main\"\n\"637288\";\"Савонранта\";\"other\"\n\"637292\";\"Savonlinna\";\"main\"\n\"637292\";\"Nyslott\";\"other\"\n\"637292\";\"SAVONLINNA\";\"other\"\n\"637292\";\"Savonlina\";\"other\"\n\"637292\";\"САВОНЛИННА\";\"other\"\n\"637292\";\"Савонлина\";\"other\"\n\"637292\";\"Савонлинна\";\"other\"\n\"637312\";\"Savitaipale\";\"main\"\n\"637312\";\"Savitajpale\";\"other\"\n\"637312\";\"Savitaypole\";\"other\"\n\"637312\";\"Савитайпале\";\"other\"\n\"637400\";\"Sauvo\";\"main\"\n\"637400\";\"Sagu\";\"other\"\n\"637835\";\"Sammatti\";\"main\"\n\"637948\";\"Salo\";\"main\"\n\"637948\";\"Sala\";\"other\"\n\"637948\";\"Salo Kapell\";\"other\"\n\"637948\";\"Сало\";\"other\"\n\"638074\";\"Salla\";\"main\"\n\"638074\";\"Салла\";\"other\"\n\"638104\";\"Säkylä\";\"main\"\n\"638104\";\"Sakyla\";\"ascii\"\n\"638210\";\"Sahalahti\";\"main\"\n\"638210\";\"Sakalakhti\";\"other\"\n\"638210\";\"Сакалахти\";\"other\"\n\"638321\";\"Saarijärvi\";\"main\"\n\"638321\";\"Saarijarvi\";\"ascii\"\n\"638321\";\"Saaijarvi\";\"other\"\n\"638321\";\"Saaijärvi\";\"other\"\n\"638321\";\"Saarijaervi\";\"other\"\n\"638321\";\"Sariyarvi\";\"other\"\n\"638321\";\"Саариярви\";\"other\"\n\"638398\";\"Saari\";\"main\"\n\"638398\";\"Sari\";\"other\"\n\"638398\";\"Сари\";\"other\"\n\"638582\";\"Rymättylä\";\"main\"\n\"638582\";\"Rymattyla\";\"ascii\"\n\"638582\";\"Rimito\";\"other\"\n\"638582\";\"Rymaettylae\";\"other\"\n\"638622\";\"Ruukki\";\"main\"\n\"638622\";\"Rukki\";\"other\"\n\"638622\";\"Рукки\";\"other\"\n\"638670\";\"Rusko\";\"main\"\n\"638691\";\"Ruovesi\";\"main\"\n\"638691\";\"Руовеси\";\"other\"\n\"638711\";\"Ruotsinpyhtää\";\"main\"\n\"638711\";\"Ruotsinpyhtaeae\";\"ascii\"\n\"638711\";\"Pyhtaa\";\"other\"\n\"638711\";\"Pyhtää\";\"other\"\n\"638711\";\"Ruotsinpyhtaa\";\"other\"\n\"638711\";\"Stroemfors\";\"other\"\n\"638711\";\"Strömfors\";\"other\"\n\"638803\";\"Ruokolahti\";\"main\"\n\"638803\";\"Ruokolakhti\";\"other\"\n\"638803\";\"Руоколахти\";\"other\"\n\"638936\";\"Rovaniemi\";\"main\"\n\"638936\";\"Roavvenjarga\";\"other\"\n\"638936\";\"Roavvenjárga\";\"other\"\n\"638936\";\"Robaniemi\";\"other\"\n\"638936\";\"Ronianemi\";\"other\"\n\"638936\";\"Rovaniemis\";\"other\"\n\"638936\";\"Rovanieni\";\"other\"\n\"638936\";\"luo wa nie mi\";\"other\"\n\"638936\";\"rovu~aniemi\";\"other\"\n\"638936\";\"rwbnyymy\";\"other\"\n\"638936\";\"Ροβανιέμι\";\"other\"\n\"638936\";\"Рованиеми\";\"other\"\n\"638936\";\"רובניימי\";\"other\"\n\"638936\";\"ロヴァニエミ\";\"other\"\n\"638936\";\"罗瓦涅米\";\"other\"\n\"639234\";\"Ristijärvi\";\"main\"\n\"639234\";\"Ristijarvi\";\"ascii\"\n\"639234\";\"Ristijaervi\";\"other\"\n\"639234\";\"Ристиярви\";\"other\"\n\"639248\";\"Ristiina\";\"main\"\n\"639248\";\"Ristina\";\"other\"\n\"639248\";\"Ристина\";\"other\"\n\"639406\";\"Riihimäki\";\"main\"\n\"639406\";\"Riihimaki\";\"ascii\"\n\"639406\";\"RIJKHIMJAKI\";\"other\"\n\"639406\";\"Riihimaeki\";\"other\"\n\"639406\";\"rihimaki\";\"other\"\n\"639406\";\"РИЙХИМЯКИ\";\"other\"\n\"639406\";\"リーヒマキ\";\"other\"\n\"639522\";\"Replot\";\"main\"\n\"639522\";\"Raippaluoto\";\"other\"\n\"639522\";\"Replotoe\";\"other\"\n\"639522\";\"Replotö\";\"other\"\n\"639534\";\"Renko\";\"main\"\n\"639534\";\"Ренко\";\"other\"\n\"639576\";\"Reisjärvi\";\"main\"\n\"639576\";\"Reisjarvi\";\"ascii\"\n\"639576\";\"Reisjaervi\";\"other\"\n\"639576\";\"Rejs\\\"jarvi\";\"other\"\n\"639576\";\"Рейсъярви\";\"other\"\n\"639666\";\"Rautjärvi\";\"main\"\n\"639666\";\"Rautjarvi\";\"ascii\"\n\"639700\";\"Rautavaara\";\"main\"\n\"639700\";\"Rautavara\";\"other\"\n\"639700\";\"Раутавара\";\"other\"\n\"639709\";\"Rautalampi\";\"main\"\n\"639709\";\"Рауталампи\";\"other\"\n\"639734\";\"Rauma\";\"main\"\n\"639734\";\"Raumo\";\"other\"\n\"639734\";\"Raŭmo\";\"other\"\n\"639734\";\"Раума\";\"other\"\n\"639888\";\"Ranua\";\"main\"\n\"639888\";\"Рануа\";\"other\"\n\"639895\";\"Rantsila\";\"main\"\n\"639895\";\"Рантсила\";\"other\"\n\"639906\";\"Rantasalmi\";\"main\"\n\"639906\";\"Rantasalimi\";\"other\"\n\"639906\";\"Рантасалми\";\"other\"\n\"640124\";\"Raisio\";\"main\"\n\"640124\";\"Reso\";\"other\"\n\"640271\";\"Rääkkylä\";\"main\"\n\"640271\";\"Raakkyla\";\"ascii\"\n\"640271\";\"Braekylae\";\"other\"\n\"640271\";\"Bräkylä\";\"other\"\n\"640271\";\"Raeaekkylae\";\"other\"\n\"640276\";\"Raahe\";\"main\"\n\"640276\";\"Brahestad\";\"other\"\n\"640276\";\"RAKHE\";\"other\"\n\"640276\";\"Raakhe\";\"other\"\n\"640276\";\"Rahe\";\"other\"\n\"640276\";\"Rahė\";\"other\"\n\"640276\";\"Rakhe\";\"other\"\n\"640276\";\"РАХЕ\";\"other\"\n\"640276\";\"Раахе\";\"other\"\n\"640384\";\"Pyhtää\";\"main\"\n\"640384\";\"Pyhtaa\";\"ascii\"\n\"640384\";\"Pyhtaeae\";\"other\"\n\"640384\";\"Pyttis\";\"other\"\n\"640398\";\"Pyhäselkä\";\"main\"\n\"640398\";\"Pyhaselka\";\"ascii\"\n\"640398\";\"Pyhaeselkae\";\"other\"\n\"640405\";\"Pyhäranta\";\"main\"\n\"640405\";\"Pyharanta\";\"ascii\"\n\"640405\";\"Pitharanta\";\"other\"\n\"640405\";\"Pithäranta\";\"other\"\n\"640409\";\"Pyhäntä\";\"main\"\n\"640409\";\"Pyhanta\";\"ascii\"\n\"640437\";\"Pyhäjoki\";\"main\"\n\"640437\";\"Pyhajoki\";\"ascii\"\n\"640437\";\"Kyhajoki\";\"other\"\n\"640437\";\"Pyukha\";\"other\"\n\"640440\";\"Pyhäjärvi\";\"main\"\n\"640440\";\"Pyhajarvi\";\"ascii\"\n\"640440\";\"Pjukhjajarvi\";\"other\"\n\"640440\";\"Pyhaejaervi\";\"other\"\n\"640440\";\"Пюхяярви\";\"other\"\n\"640441\";\"Pyhäjärvi\";\"main\"\n\"640441\";\"Pyhaejaervi\";\"ascii\"\n\"640441\";\"Pjukhjajarvi\";\"other\"\n\"640441\";\"Пюхяярви\";\"other\"\n\"640504\";\"Puumala\";\"main\"\n\"640504\";\"Pumala\";\"other\"\n\"640504\";\"Puuinala\";\"other\"\n\"640504\";\"Пумала\";\"other\"\n\"640658\";\"Puolanka\";\"main\"\n\"640658\";\"Puolango\";\"other\"\n\"640658\";\"Пуоланка\";\"other\"\n\"640689\";\"Punkalaidun\";\"main\"\n\"640693\";\"Punkaharju\";\"main\"\n\"640718\";\"Pulkkila\";\"main\"\n\"640718\";\"Pulkilla\";\"other\"\n\"640718\";\"Пулкилла\";\"other\"\n\"640749\";\"Pukkila\";\"main\"\n\"640749\";\"Пуккила\";\"other\"\n\"640803\";\"Pudasjärvi\";\"main\"\n\"640803\";\"Pudasjarvi\";\"ascii\"\n\"640803\";\"Pudasjaervi\";\"other\"\n\"640828\";\"Pöytyä\";\"main\"\n\"640828\";\"Poytya\";\"ascii\"\n\"640893\";\"Posio\";\"main\"\n\"640893\";\"Посио\";\"other\"\n\"640973\";\"Pornainen\";\"main\"\n\"640973\";\"Borgnaes\";\"other\"\n\"640973\";\"Borgnäs\";\"other\"\n\"640973\";\"Pornajnen\";\"other\"\n\"640973\";\"Порнайнен\";\"other\"\n\"640999\";\"Pori\";\"main\"\n\"640999\";\"Berneborg\";\"other\"\n\"640999\";\"Bjoerneborg\";\"other\"\n\"640999\";\"Björneborg\";\"other\"\n\"640999\";\"Bërneborg\";\"other\"\n\"640999\";\"pori\";\"other\"\n\"640999\";\"Пори\";\"other\"\n\"640999\";\"ポリ\";\"other\"\n\"641044\";\"Pomarkku\";\"main\"\n\"641044\";\"Pamark\";\"other\"\n\"641044\";\"Påmark\";\"other\"\n\"641055\";\"Polvijärvi\";\"main\"\n\"641055\";\"Polvijaervi\";\"ascii\"\n\"641055\";\"Polvijarvi\";\"other\"\n\"641055\";\"Полвиярви\";\"other\"\n\"641124\";\"Pohja\";\"main\"\n\"641124\";\"Pojo\";\"other\"\n\"641489\";\"Pirkkala\";\"main\"\n\"641489\";\"Birkala\";\"other\"\n\"641612\";\"Piippola\";\"main\"\n\"641612\";\"Pippola\";\"other\"\n\"641612\";\"Пиппола\";\"other\"\n\"641651\";\"Piikkiö\";\"main\"\n\"641651\";\"Piikkio\";\"ascii\"\n\"641651\";\"Piikkioe\";\"other\"\n\"641651\";\"Piikkis\";\"other\"\n\"641651\";\"Pikis\";\"other\"\n\"641660\";\"Pihtipudas\";\"main\"\n\"641660\";\"Pihtipuoas\";\"other\"\n\"641660\";\"Pikhtipudas\";\"other\"\n\"641660\";\"Пихтипудас\";\"other\"\n\"641861\";\"Pielavesi\";\"main\"\n\"641861\";\"Пиелавеси\";\"other\"\n\"641869\";\"Pieksämäki\";\"main\"\n\"641869\";\"Pieksamaki\";\"ascii\"\n\"641869\";\"PIEKSJAMJAKI\";\"other\"\n\"641869\";\"Pieksaemaeki\";\"other\"\n\"641869\";\"Pieksama\";\"other\"\n\"641869\";\"Pieksyamyaki\";\"other\"\n\"641869\";\"Pieksämä\";\"other\"\n\"641869\";\"ПИЕКСЯМЯКИ\";\"other\"\n\"641974\";\"Petäjävesi\";\"main\"\n\"641974\";\"Petajavesi\";\"ascii\"\n\"641974\";\"Petaejaevesi\";\"other\"\n\"641974\";\"Petjajavesi\";\"other\"\n\"641974\";\"Петяявеси\";\"other\"\n\"642077\";\"Pertunmaa\";\"main\"\n\"642077\";\"Pertunma\";\"other\"\n\"642077\";\"Пертунма\";\"other\"\n\"642093\";\"Pertteli\";\"main\"\n\"642093\";\"S:t Bertils\";\"other\"\n\"642093\";\"T Bertils\";\"other\"\n\"642113\";\"Perniö\";\"main\"\n\"642113\";\"Pernio\";\"ascii\"\n\"642113\";\"Bjaerna\";\"other\"\n\"642113\";\"Bjerna\";\"other\"\n\"642113\";\"Bjerno\";\"other\"\n\"642113\";\"Bjernå\";\"other\"\n\"642113\";\"Bjärnå\";\"other\"\n\"642118\";\"Pernå\";\"main\"\n\"642118\";\"Perna\";\"ascii\"\n\"642118\";\"Pernaja\";\"other\"\n\"642118\";\"Perno\";\"other\"\n\"642118\";\"Pernö\";\"other\"\n\"642139\";\"Perho\";\"main\"\n\"642139\";\"Perkho\";\"other\"\n\"642139\";\"Перхо\";\"other\"\n\"642367\";\"Pello\";\"main\"\n\"642377\";\"Pelkosenniemi\";\"main\"\n\"642455\";\"Pedersören Kunta\";\"main\"\n\"642455\";\"Pedersoren Kunta\";\"ascii\"\n\"642455\";\"Pedersore\";\"other\"\n\"642455\";\"Pedersöre\";\"other\"\n\"642455\";\"Pietarsaaren Pitaja\";\"other\"\n\"642455\";\"Pietarsaaren Pitäjä\";\"other\"\n\"642455\";\"Pietarsaari\";\"other\"\n\"642657\";\"Parkano\";\"main\"\n\"642657\";\"Паркано\";\"other\"\n\"642666\";\"Parikkala\";\"main\"\n\"642666\";\"PARIKKALA\";\"other\"\n\"642666\";\"ПАРИККАЛА\";\"other\"\n\"642673\";\"Pargas\";\"main\"\n\"642673\";\"Parainen\";\"other\"\n\"642750\";\"Paltamo\";\"main\"\n\"642750\";\"Палтамо\";\"other\"\n\"642976\";\"Pälkäne\";\"main\"\n\"642976\";\"Palkane\";\"ascii\"\n\"643153\";\"Paimio\";\"main\"\n\"643153\";\"Pemar\";\"other\"\n\"643260\";\"Padasjoki\";\"main\"\n\"643260\";\"Падасйоки\";\"other\"\n\"643453\";\"Outokumpu\";\"main\"\n\"643453\";\"OUTOKUMPU\";\"other\"\n\"643453\";\"Outakumpy\";\"other\"\n\"643453\";\"ОУТОКУМПУ\";\"other\"\n\"643481\";\"Oulunsalo\";\"main\"\n\"643481\";\"Olulunsalo\";\"other\"\n\"643481\";\"Uleasalo\";\"other\"\n\"643481\";\"Uleåsalö\";\"other\"\n\"643481\";\"Олулунсало\";\"other\"\n\"643492\";\"Oulu\";\"main\"\n\"643492\";\"Oulo\";\"other\"\n\"643492\";\"Oŭlo\";\"other\"\n\"643492\";\"Uleaborg\";\"other\"\n\"643492\";\"Uleoborg\";\"other\"\n\"643492\";\"Uleåborg\";\"other\"\n\"643492\";\"oullu\";\"other\"\n\"643492\";\"ouru\";\"other\"\n\"643492\";\"Оулу\";\"other\"\n\"643492\";\"オウル\";\"other\"\n\"643492\";\"오울루\";\"other\"\n\"643497\";\"Oulainen\";\"main\"\n\"643497\";\"OULAJNEN\";\"other\"\n\"643497\";\"Oulais\";\"other\"\n\"643497\";\"ОУЛАЙНЕН\";\"other\"\n\"643522\";\"Otaniemi\";\"main\"\n\"643522\";\"Otnaes\";\"other\"\n\"643522\";\"Otnäs\";\"other\"\n\"643629\";\"Orivesi\";\"main\"\n\"643629\";\"Orihvesi\";\"other\"\n\"643629\";\"Оривеси\";\"other\"\n\"643640\";\"Oripää\";\"main\"\n\"643640\";\"Oripaa\";\"ascii\"\n\"643640\";\"Oripaeae\";\"other\"\n\"643644\";\"Orimattila\";\"main\"\n\"643644\";\"Ориматтила\";\"other\"\n\"643681\";\"Oravais\";\"main\"\n\"643681\";\"Oravainen\";\"other\"\n\"644100\";\"Nykarleby\";\"main\"\n\"644100\";\"Neo-Carolina\";\"other\"\n\"644100\";\"Nyukarlebyu\";\"other\"\n\"644100\";\"Usikarlepyu\";\"other\"\n\"644100\";\"Uusikaarlepyy\";\"other\"\n\"644159\";\"Nurmo\";\"main\"\n\"644171\";\"Nurmijärvi\";\"main\"\n\"644171\";\"Nurmijarvi\";\"ascii\"\n\"644171\";\"Nurmijaervi\";\"other\"\n\"644171\";\"Нурмиярви\";\"other\"\n\"644187\";\"Nurmes\";\"main\"\n\"644187\";\"Нурмес\";\"other\"\n\"644326\";\"Nousiainen\";\"main\"\n\"644326\";\"Nousis\";\"other\"\n\"644436\";\"Noormarkku\";\"main\"\n\"644436\";\"Norrmark\";\"other\"\n\"644450\";\"Nokia\";\"main\"\n\"644450\";\"Nokia stad\";\"other\"\n\"644450\";\"nuo ji ya\";\"other\"\n\"644450\";\"nwqyh\";\"other\"\n\"644450\";\"Нокиа\";\"other\"\n\"644450\";\"נוקיה\";\"other\"\n\"644450\";\"诺基亚\";\"other\"\n\"644499\";\"Nivala\";\"main\"\n\"644499\";\"Нивала\";\"other\"\n\"644632\";\"Nilsiä\";\"main\"\n\"644632\";\"Nilsia\";\"ascii\"\n\"644632\";\"Nil'sija\";\"other\"\n\"644632\";\"Nilsiae\";\"other\"\n\"644632\";\"Нильсия\";\"other\"\n\"645035\";\"Nastola\";\"main\"\n\"645035\";\"Настола\";\"other\"\n\"645148\";\"Nakkila\";\"main\"\n\"645165\";\"Nagu\";\"main\"\n\"645165\";\"Nauvo\";\"other\"\n\"645211\";\"Naantali\";\"main\"\n\"645211\";\"Nadendal\";\"other\"\n\"645211\";\"Nantali\";\"other\"\n\"645211\";\"Nodendal'\";\"other\"\n\"645211\";\"Nådendal\";\"other\"\n\"645211\";\"Наантали\";\"other\"\n\"645233\";\"Myrskylä\";\"main\"\n\"645233\";\"Myrskylae\";\"ascii\"\n\"645233\";\"Moerskom\";\"other\"\n\"645233\";\"Myrskyla\";\"other\"\n\"645233\";\"Mörskom\";\"other\"\n\"645243\";\"Mynämäki\";\"main\"\n\"645243\";\"Mynamaki\";\"ascii\"\n\"645243\";\"Virmo\";\"other\"\n\"645370\";\"Muurla\";\"main\"\n\"645385\";\"Muurame\";\"main\"\n\"645385\";\"Муураме\";\"other\"\n\"645672\";\"Muonio\";\"main\"\n\"645672\";\"Muonioniska\";\"other\"\n\"645710\";\"Multia\";\"main\"\n\"645710\";\"Muldia\";\"other\"\n\"645710\";\"Мултиа\";\"other\"\n\"645765\";\"Muhos\";\"main\"\n\"645765\";\"Mukhos\";\"other\"\n\"645765\";\"Мухос\";\"other\"\n\"645800\";\"Mouhijärvi\";\"main\"\n\"645800\";\"Mouhijarvi\";\"ascii\"\n\"646005\";\"Mikkeli\";\"main\"\n\"646005\";\"MIKKELI\";\"other\"\n\"646005\";\"S:t Michel\";\"other\"\n\"646005\";\"Sankt Michel\";\"other\"\n\"646005\";\"St. Michel\";\"other\"\n\"646005\";\"T Michel\";\"other\"\n\"646005\";\"mi kai li\";\"other\"\n\"646005\";\"mikkeri\";\"other\"\n\"646005\";\"МИККЕЛИ\";\"other\"\n\"646005\";\"Миккели\";\"other\"\n\"646005\";\"ミッケリ\";\"other\"\n\"646005\";\"米凱利\";\"other\"\n\"646031\";\"Mietoinen\";\"main\"\n\"646031\";\"Mietois\";\"other\"\n\"646079\";\"Miehikkälä\";\"main\"\n\"646079\";\"Miehikkala\";\"ascii\"\n\"646079\";\"Michikkala\";\"other\"\n\"646079\";\"Miehikkaelae\";\"other\"\n\"646079\";\"Miekhikkjalja\";\"other\"\n\"646079\";\"Миехиккяля\";\"other\"\n\"646179\";\"Merimasku\";\"main\"\n\"646179\";\"Merimasko\";\"other\"\n\"646192\";\"Merikarvia\";\"main\"\n\"646192\";\"Sastmola\";\"other\"\n\"646195\";\"Merijärvi\";\"main\"\n\"646195\";\"Merijarvi\";\"ascii\"\n\"646195\";\"Merijaervi\";\"other\"\n\"646195\";\"Мериярви\";\"other\"\n\"646220\";\"Mellilä\";\"main\"\n\"646220\";\"Mellila\";\"ascii\"\n\"646486\";\"Masku\";\"main\"\n\"646486\";\"Masko\";\"other\"\n\"646511\";\"Marttila\";\"main\"\n\"646511\";\"S:t Martens\";\"other\"\n\"646511\";\"S:t Mårtens\";\"other\"\n\"646511\";\"Sankt Martens\";\"other\"\n\"646511\";\"Sankt Mårtens\";\"other\"\n\"646511\";\"T Martens\";\"other\"\n\"646511\";\"T Mårtens\";\"other\"\n\"646511\";\"Марттила\";\"other\"\n\"646699\";\"Mäntyharju\";\"main\"\n\"646699\";\"Mantyharju\";\"ascii\"\n\"646699\";\"Mantyharja\";\"other\"\n\"646699\";\"Mäntyharja\";\"other\"\n\"646705\";\"Mänttä\";\"main\"\n\"646705\";\"Maenttae\";\"ascii\"\n\"646723\";\"Mäntsälä\";\"main\"\n\"646723\";\"Mantsala\";\"ascii\"\n\"646723\";\"Maentsaelae\";\"other\"\n\"646723\";\"Mjantsjalja\";\"other\"\n\"646723\";\"Мянтсяля\";\"other\"\n\"646875\";\"Malax\";\"main\"\n\"646875\";\"Maahlahti\";\"other\"\n\"646875\";\"Maalahti\";\"other\"\n\"646875\";\"Maalalahti\";\"other\"\n\"646875\";\"Malaks\";\"other\"\n\"646875\";\"Mallax\";\"other\"\n\"647202\";\"Maaninka\";\"main\"\n\"647202\";\"Maninka\";\"other\"\n\"647202\";\"Манинка\";\"other\"\n\"647260\";\"Luvia\";\"main\"\n\"647288\";\"Luumäki\";\"main\"\n\"647288\";\"Luumaki\";\"ascii\"\n\"647288\";\"Lumjaki\";\"other\"\n\"647288\";\"Luumaeki\";\"other\"\n\"647288\";\"Лумяки\";\"other\"\n\"647383\";\"Luopioinen\";\"main\"\n\"647383\";\"Luopiojnen\";\"other\"\n\"647383\";\"Луопиойнен\";\"other\"\n\"647471\";\"Lumijoki\";\"main\"\n\"647471\";\"Lymelki\";\"other\"\n\"647471\";\"Лумийоки\";\"other\"\n\"647571\";\"Lovisa\";\"main\"\n\"647571\";\"LOVIJSA\";\"other\"\n\"647571\";\"Loviisa\";\"other\"\n\"647571\";\"Loviza\";\"other\"\n\"647571\";\"Svartkhol'm\";\"other\"\n\"647571\";\"ЛОВИЙСА\";\"other\"\n\"647571\";\"Свартхольм\";\"other\"\n\"647660\";\"Loppi\";\"main\"\n\"647660\";\"Лоппи\";\"other\"\n\"647741\";\"Lohtaja\";\"main\"\n\"647741\";\"Lochtea\";\"other\"\n\"647741\";\"Lochteå\";\"other\"\n\"647741\";\"Lokhteo\";\"other\"\n\"647751\";\"Lohja\";\"main\"\n\"647751\";\"Lojo\";\"other\"\n\"647851\";\"Liperi\";\"main\"\n\"647851\";\"Libelits\";\"other\"\n\"647851\";\"Липери\";\"other\"\n\"647930\";\"Liminka\";\"main\"\n\"647930\";\"Limingo\";\"other\"\n\"647930\";\"Лиминка\";\"other\"\n\"647978\";\"Liljendal\";\"main\"\n\"647978\";\"Lil'endal'\";\"other\"\n\"647978\";\"Лильендаль\";\"other\"\n\"648056\";\"Lieto\";\"main\"\n\"648056\";\"Lundo\";\"other\"\n\"648090\";\"Lieksa\";\"main\"\n\"648090\";\"LIEKSA\";\"other\"\n\"648090\";\"ЛИЕКСА\";\"other\"\n\"648227\";\"Leppävirta\";\"main\"\n\"648227\";\"Leppavirta\";\"ascii\"\n\"648227\";\"Leppaevirta\";\"other\"\n\"648227\";\"Leppjavirta\";\"other\"\n\"648227\";\"Леппявирта\";\"other\"\n\"648350\";\"Lemu\";\"main\"\n\"648350\";\"Lemo\";\"other\"\n\"648366\";\"Lempäälä\";\"main\"\n\"648366\";\"Lempaala\";\"ascii\"\n\"648366\";\"Lembois\";\"other\"\n\"648366\";\"Lempaeaelae\";\"other\"\n\"648387\";\"Lemi\";\"main\"\n\"648387\";\"Леми\";\"other\"\n\"648397\";\"Leivonmäki\";\"main\"\n\"648397\";\"Leivonmaki\";\"ascii\"\n\"648397\";\"Leivonmaeki\";\"other\"\n\"648397\";\"Lejvonmjaki\";\"other\"\n\"648397\";\"Лейвонмяки\";\"other\"\n\"648554\";\"Lehtimäki\";\"main\"\n\"648554\";\"Lehtimaki\";\"ascii\"\n\"648613\";\"Lavia\";\"main\"\n\"648738\";\"Laukaa\";\"main\"\n\"648738\";\"Lauka\";\"other\"\n\"648738\";\"Лаука\";\"other\"\n\"648847\";\"Larsmo\";\"main\"\n\"648847\";\"Luoto\";\"other\"\n\"648855\";\"Lapua\";\"main\"\n\"648855\";\"Lappo\";\"other\"\n\"648855\";\"Лапуа\";\"other\"\n\"648886\";\"Lappi\";\"main\"\n\"648886\";\"Lapinkyla\";\"other\"\n\"648886\";\"Lapinkylä\";\"other\"\n\"648886\";\"Лаппи\";\"other\"\n\"648900\";\"Lappeenranta\";\"main\"\n\"648900\";\"LAPPENRANTA\";\"other\"\n\"648900\";\"Lappenranta\";\"other\"\n\"648900\";\"Villmanstrand\";\"other\"\n\"648900\";\"la pu lan da\";\"other\"\n\"648900\";\"ЛАППЕНРАНТА\";\"other\"\n\"648900\";\"Лаппеенранта\";\"other\"\n\"648900\";\"拉普兰大\";\"other\"\n\"648919\";\"Lappajärvi\";\"main\"\n\"648919\";\"Lappajarvi\";\"ascii\"\n\"648953\";\"Lapinlahti\";\"main\"\n\"648953\";\"Lapinlakhti\";\"other\"\n\"648953\";\"Лапинлахти\";\"other\"\n\"648965\";\"Lapinjärvi\";\"main\"\n\"648965\";\"Lapinjarvi\";\"ascii\"\n\"648965\";\"Lapin\\\"jarvi\";\"other\"\n\"648965\";\"Lapinjaervi\";\"other\"\n\"648965\";\"Lapptraesk\";\"other\"\n\"648965\";\"Lapptrask\";\"other\"\n\"648965\";\"Lappträsk\";\"other\"\n\"648965\";\"Лапинъярви\";\"other\"\n\"649121\";\"Längelmäki\";\"main\"\n\"649121\";\"Langelmaki\";\"ascii\"\n\"649223\";\"Lammi\";\"main\"\n\"649223\";\"Ламми\";\"other\"\n\"649302\";\"Laitila\";\"main\"\n\"649302\";\"Letala\";\"other\"\n\"649348\";\"Laihia\";\"main\"\n\"649348\";\"Laihela\";\"other\"\n\"649360\";\"Lahti\";\"main\"\n\"649360\";\"LAKHTI\";\"other\"\n\"649360\";\"Lahtis\";\"other\"\n\"649360\";\"Lakhti\";\"other\"\n\"649360\";\"rahati\";\"other\"\n\"649360\";\"ЛАХТИ\";\"other\"\n\"649360\";\"Лахти\";\"other\"\n\"649360\";\"ラハティ\";\"other\"\n\"649582\";\"Kyyjärvi\";\"main\"\n\"649582\";\"Kyyjarvi\";\"ascii\"\n\"649582\";\"Kjujarvi\";\"other\"\n\"649582\";\"Kyyjaervi\";\"other\"\n\"649582\";\"Кюярви\";\"other\"\n\"649630\";\"Kirkkonummi\";\"main\"\n\"649630\";\"Kyrkslaett\";\"other\"\n\"649630\";\"Kyrkslatt\";\"other\"\n\"649630\";\"Kyrkslätt\";\"other\"\n\"649728\";\"Kylmäkoski\";\"main\"\n\"649728\";\"Kylmakoski\";\"ascii\"\n\"649825\";\"Kuusjoki\";\"main\"\n\"649919\";\"Kuusankoski\";\"main\"\n\"649919\";\"KUUSANKOSKI\";\"other\"\n\"649919\";\"КУУСАНКОСКИ\";\"other\"\n\"649924\";\"Kuusamo\";\"main\"\n\"649924\";\"Куусамо\";\"other\"\n\"650014\";\"Kuru\";\"main\"\n\"650095\";\"Kurikka\";\"main\"\n\"650095\";\"Курикка\";\"other\"\n\"650166\";\"Kuortane\";\"main\"\n\"650224\";\"Kuopio\";\"main\"\n\"650224\";\"Kouopio\";\"other\"\n\"650224\";\"Kuopijas\";\"other\"\n\"650224\";\"kuopio\";\"other\"\n\"650224\";\"Κουόπιο\";\"other\"\n\"650224\";\"Куопио\";\"other\"\n\"650224\";\"クオピオ\";\"other\"\n\"650469\";\"Kullaa\";\"main\"\n\"650628\";\"Kuivaniemi\";\"main\"\n\"650628\";\"Kujvaniemi\";\"other\"\n\"650628\";\"Куйваниеми\";\"other\"\n\"650703\";\"Kuhmoinen\";\"main\"\n\"650703\";\"Kukhmojnen\";\"other\"\n\"650703\";\"Кухмойнен\";\"other\"\n\"650705\";\"Kuhmo\";\"main\"\n\"650705\";\"KUKHMO\";\"other\"\n\"650705\";\"Kuhmoniemi\";\"other\"\n\"650705\";\"КУХМО\";\"other\"\n\"650707\";\"Kuhmalahti\";\"main\"\n\"650707\";\"Kukhmalakhti\";\"other\"\n\"650707\";\"Кухмалахти\";\"other\"\n\"650754\";\"Kronoby\";\"main\"\n\"650754\";\"Kronobyu\";\"other\"\n\"650754\";\"Kruununkyla\";\"other\"\n\"650754\";\"Kruununkylä\";\"other\"\n\"650754\";\"Kruunupyy\";\"other\"\n\"650769\";\"Kristinestad\";\"main\"\n\"650769\";\"Kristiina\";\"other\"\n\"650769\";\"Kristiinankaupunki\";\"other\"\n\"650805\";\"Köyliö\";\"main\"\n\"650805\";\"Koylio\";\"ascii\"\n\"650805\";\"Kjulo\";\"other\"\n\"650805\";\"Koeylioe\";\"other\"\n\"650859\";\"Kouvola\";\"main\"\n\"650859\";\"KOUVOLA\";\"other\"\n\"650859\";\"КОУВОЛА\";\"other\"\n\"650946\";\"Kotka\";\"main\"\n\"650946\";\"Kotko\";\"other\"\n\"650946\";\"Ruotsinsalmi\";\"other\"\n\"650946\";\"Svensksund\";\"other\"\n\"650946\";\"Котка\";\"other\"\n\"651073\";\"Hämeenkoski\";\"main\"\n\"651073\";\"Haemeenkoski\";\"ascii\"\n\"651073\";\"Koski\";\"other\"\n\"651073\";\"Коски\";\"other\"\n\"651245\";\"Kortesjärvi\";\"main\"\n\"651245\";\"Kortesjarvi\";\"ascii\"\n\"651294\";\"Korsnäs\";\"main\"\n\"651294\";\"Korsnas\";\"ascii\"\n\"651294\";\"Korsnes\";\"other\"\n\"651299\";\"Korsholm\";\"main\"\n\"651299\";\"Mustasaari\";\"other\"\n\"651350\";\"Korpilahti\";\"main\"\n\"651350\";\"Korpilakhti\";\"other\"\n\"651350\";\"Корпилахти\";\"other\"\n\"651659\";\"Kontiolahti\";\"main\"\n\"651659\";\"Kontiolakhti\";\"other\"\n\"651659\";\"Контиолахти\";\"other\"\n\"651696\";\"Konnevesi\";\"main\"\n\"651696\";\"Конневеси\";\"other\"\n\"651889\";\"Kolari\";\"main\"\n\"651943\";\"Karleby\";\"main\"\n\"651943\";\"Carolina Vetus\";\"other\"\n\"651943\";\"Gamla-Kargabyu\";\"other\"\n\"651943\";\"Gamla-Karlabyu\";\"other\"\n\"651943\";\"Gamla-Kergabyu\";\"other\"\n\"651943\";\"Gamlakarleby\";\"other\"\n\"651943\";\"Kokkola\";\"other\"\n\"651980\";\"Kokemäki\";\"main\"\n\"651980\";\"Kokemaki\";\"ascii\"\n\"651980\";\"Kokemaeki\";\"other\"\n\"651980\";\"Kumo\";\"other\"\n\"652432\";\"Kivijärvi\";\"main\"\n\"652432\";\"Kivijaervi\";\"ascii\"\n\"652432\";\"Kivijarvi\";\"other\"\n\"652432\";\"Кивиярви\";\"other\"\n\"652559\";\"Kiuruvesi\";\"main\"\n\"652559\";\"Киурувеси\";\"other\"\n\"652578\";\"Kiukainen\";\"main\"\n\"652578\";\"Kiukais\";\"other\"\n\"652590\";\"Kittilä\";\"main\"\n\"652590\";\"Kittila\";\"ascii\"\n\"652590\";\"Gihttel\";\"other\"\n\"652590\";\"Kittilae\";\"other\"\n\"652590\";\"Kittilja\";\"other\"\n\"652590\";\"Киттиля\";\"other\"\n\"652615\";\"Kitee\";\"main\"\n\"652615\";\"Kides\";\"other\"\n\"652615\";\"Kiteh\";\"other\"\n\"652615\";\"Китее\";\"other\"\n\"652615\";\"Китэ\";\"other\"\n\"652629\";\"Kisko\";\"main\"\n\"652736\";\"Kinnula\";\"main\"\n\"652736\";\"Киннула\";\"other\"\n\"652776\";\"Kimito\";\"main\"\n\"652776\";\"Kemioe\";\"other\"\n\"652776\";\"Kemiö\";\"other\"\n\"652858\";\"Kiiminki\";\"main\"\n\"652858\";\"Kiminki\";\"other\"\n\"652858\";\"Киминки\";\"other\"\n\"652878\";\"Kiikoinen\";\"main\"\n\"652878\";\"Kikois\";\"other\"\n\"652888\";\"Kiikala\";\"main\"\n\"652891\";\"Kiihtelysvaara\";\"main\"\n\"652891\";\"Kikhteljusvara\";\"other\"\n\"652891\";\"Кихтелюсвара\";\"other\"\n\"652896\";\"Kihniö\";\"main\"\n\"652896\";\"Kihnioe\";\"ascii\"\n\"652977\";\"Keuruu\";\"main\"\n\"652977\";\"Keuru\";\"other\"\n\"652977\";\"Кеуруу\";\"other\"\n\"653039\";\"Kestilä\";\"main\"\n\"653039\";\"Kestila\";\"ascii\"\n\"653039\";\"Kestilja\";\"other\"\n\"653039\";\"Кестиля\";\"other\"\n\"653129\";\"Kesälahti\";\"main\"\n\"653129\";\"Kesalahti\";\"ascii\"\n\"653129\";\"Kesaelahti\";\"other\"\n\"653129\";\"Kesjalakhti\";\"other\"\n\"653129\";\"Кесялахти\";\"other\"\n\"653180\";\"Kerimäki\";\"main\"\n\"653180\";\"Kerimaki\";\"ascii\"\n\"653180\";\"Kerimaeki\";\"other\"\n\"653180\";\"Kerimjaki\";\"other\"\n\"653180\";\"Керимяки\";\"other\"\n\"653185\";\"Kerava\";\"main\"\n\"653185\";\"Kervo\";\"other\"\n\"653185\";\"Керава\";\"other\"\n\"653252\";\"Kempele\";\"main\"\n\"653252\";\"Kempelen\";\"other\"\n\"653252\";\"Кемпеле\";\"other\"\n\"653272\";\"Kemijärvi\";\"main\"\n\"653272\";\"Kemijaervi\";\"ascii\"\n\"653272\";\"Giemajavri\";\"other\"\n\"653272\";\"Giemajávri\";\"other\"\n\"653272\";\"KEMIJARVI\";\"other\"\n\"653272\";\"КЕМИЯРВИ\";\"other\"\n\"653280\";\"Keminmaa\";\"main\"\n\"653280\";\"Kemi\";\"other\"\n\"653281\";\"Kemi\";\"main\"\n\"653281\";\"Giepma\";\"other\"\n\"653281\";\"Кеми\";\"other\"\n\"653387\";\"Keitele\";\"main\"\n\"653482\";\"Kaustinen\";\"main\"\n\"653482\";\"Kaustby\";\"other\"\n\"653559\";\"Kauniainen\";\"main\"\n\"653559\";\"GRANKULLA\";\"other\"\n\"653559\";\"Grankulla\";\"other\"\n\"653559\";\"ГРАНКУЛЛА\";\"other\"\n\"653559\";\"კაუნიაინენი\";\"other\"\n\"653616\";\"Kauhava\";\"main\"\n\"653616\";\"Kaukhava\";\"other\"\n\"653616\";\"Каухава\";\"other\"\n\"653627\";\"Kauhajoki\";\"main\"\n\"653627\";\"Kaukha-Yoki\";\"other\"\n\"653758\";\"Kaskinen\";\"main\"\n\"653758\";\"Kaske\";\"other\"\n\"653758\";\"Kaskoe\";\"other\"\n\"653758\";\"Kaskë\";\"other\"\n\"653758\";\"Kaskö\";\"other\"\n\"653813\";\"Karvia\";\"main\"\n\"653841\";\"Karttula\";\"main\"\n\"653841\";\"Karttulankyla\";\"other\"\n\"653841\";\"Karttulankylä\";\"other\"\n\"653841\";\"Vapaakirkko\";\"other\"\n\"653841\";\"Карттула\";\"other\"\n\"653852\";\"Karstula\";\"main\"\n\"653852\";\"Карстула\";\"other\"\n\"653880\";\"Kärsämäki\";\"main\"\n\"653880\";\"Karsamaki\";\"ascii\"\n\"653880\";\"Kaersaemaeki\";\"other\"\n\"653880\";\"Kjarsjamjaki\";\"other\"\n\"653880\";\"Кярсямяки\";\"other\"\n\"653952\";\"Kärkölä\";\"main\"\n\"653952\";\"Karkola\";\"ascii\"\n\"653952\";\"Karkala\";\"other\"\n\"653952\";\"Kjarkela\";\"other\"\n\"653952\";\"Kärkälä\";\"other\"\n\"653952\";\"Кяркела\";\"other\"\n\"653960\";\"Karkkila\";\"main\"\n\"653960\";\"Hoegfors\";\"other\"\n\"653960\";\"Högfors\";\"other\"\n\"653960\";\"Карккила\";\"other\"\n\"654012\";\"Karjalohja\";\"main\"\n\"654012\";\"Karislojo\";\"other\"\n\"654047\";\"Karis\";\"main\"\n\"654047\";\"Karja\";\"other\"\n\"654047\";\"Karjaa\";\"other\"\n\"654059\";\"Karinainen\";\"main\"\n\"654075\";\"Karijoki\";\"main\"\n\"654075\";\"Boetom\";\"other\"\n\"654075\";\"Bötom\";\"other\"\n\"654137\";\"Karhula\";\"main\"\n\"654137\";\"Karkhula\";\"other\"\n\"654137\";\"Кархула\";\"other\"\n\"654314\";\"Kannus\";\"main\"\n\"654314\";\"Каннус\";\"other\"\n\"654318\";\"Kannonkoski\";\"main\"\n\"654318\";\"Каннонкоски\";\"other\"\n\"654363\";\"Kankaanpää\";\"main\"\n\"654363\";\"Kankaanpaa\";\"ascii\"\n\"654405\";\"Kangasniemi\";\"main\"\n\"654405\";\"Кангасниеми\";\"other\"\n\"654413\";\"Kangaslampi\";\"main\"\n\"654440\";\"Kangasala\";\"main\"\n\"654440\";\"KANGASALA\";\"other\"\n\"654440\";\"КАНГАСАЛА\";\"other\"\n\"654521\";\"Kalvola\";\"main\"\n\"654533\";\"Kälviä\";\"main\"\n\"654533\";\"Kalvia\";\"ascii\"\n\"654533\";\"Kaelviae\";\"other\"\n\"654533\";\"Kelvia\";\"other\"\n\"654533\";\"Kelviå\";\"other\"\n\"654533\";\"Kyal'viya\";\"other\"\n\"654837\";\"Kalajoki\";\"main\"\n\"654899\";\"Kajaani\";\"main\"\n\"654899\";\"Kajana\";\"other\"\n\"654899\";\"Kajani\";\"other\"\n\"654899\";\"Kajauni\";\"other\"\n\"654899\";\"Kayani\";\"other\"\n\"654899\";\"Kjana\";\"other\"\n\"654899\";\"Knyaaani\";\"other\"\n\"654899\";\"Knyaani\";\"other\"\n\"654899\";\"Каяни\";\"other\"\n\"655069\";\"Kaavi\";\"main\"\n\"655069\";\"Kavi\";\"other\"\n\"655069\";\"Кави\";\"other\"\n\"655130\";\"Kaarina\";\"main\"\n\"655130\";\"S:t Karins\";\"other\"\n\"655130\";\"Saint Karin\";\"other\"\n\"655130\";\"Sankt Karins\";\"other\"\n\"655130\";\"St Karins\";\"other\"\n\"655130\";\"Каарина\";\"other\"\n\"655194\";\"Jyväskylä\";\"main\"\n\"655194\";\"Jyvaskyla\";\"ascii\"\n\"655194\";\"Juvjaskjulja\";\"other\"\n\"655194\";\"Jyvaeskylae\";\"other\"\n\"655194\";\"yuvu~asukyura\";\"other\"\n\"655194\";\"Ювяскюля\";\"other\"\n\"655194\";\"ユヴァスキュラ\";\"other\"\n\"655253\";\"Juva\";\"main\"\n\"655253\";\"Jockas\";\"other\"\n\"655253\";\"Юва\";\"other\"\n\"655307\";\"Juupajoki\";\"main\"\n\"655312\";\"Juuka\";\"main\"\n\"655312\";\"Juga\";\"other\"\n\"655312\";\"Juka\";\"other\"\n\"655312\";\"Юка\";\"other\"\n\"655363\";\"Jurva\";\"main\"\n\"655533\";\"Juankoski\";\"main\"\n\"655533\";\"Stroemsdal\";\"other\"\n\"655533\";\"Strömsdal\";\"other\"\n\"655533\";\"Юанкоски\";\"other\"\n\"655563\";\"Joutseno\";\"main\"\n\"655563\";\"JOUTSENO\";\"other\"\n\"655563\";\"ЙОУТСЕНО\";\"other\"\n\"655563\";\"Йоутсено\";\"other\"\n\"655581\";\"Joutsa\";\"main\"\n\"655581\";\"Йоутса\";\"other\"\n\"655626\";\"Joroinen\";\"main\"\n\"655626\";\"Jorois\";\"other\"\n\"655626\";\"Jorojnen\";\"other\"\n\"655626\";\"Йоройнен\";\"other\"\n\"655692\";\"Jokioinen\";\"main\"\n\"655692\";\"Jockis\";\"other\"\n\"655808\";\"Joensuu\";\"main\"\n\"655808\";\"JOEHNSUU\";\"other\"\n\"655808\";\"Joensu\";\"other\"\n\"655808\";\"Yoensu\";\"other\"\n\"655808\";\"yoensu\";\"other\"\n\"655808\";\"ЙОЭНСУУ\";\"other\"\n\"655808\";\"Йоенсу\";\"other\"\n\"655808\";\"ヨエンスー\";\"other\"\n\"655958\";\"Järvenpää\";\"main\"\n\"655958\";\"Jarvenpaa\";\"ascii\"\n\"655958\";\"Jaervenpaeae\";\"other\"\n\"655958\";\"Jarvenpjaja\";\"other\"\n\"655958\";\"Traeskaenda\";\"other\"\n\"655958\";\"Träskända\";\"other\"\n\"655958\";\"Ярвенпяя\";\"other\"\n\"656015\";\"Jäppilä\";\"main\"\n\"656015\";\"Jappila\";\"ascii\"\n\"656015\";\"Jaeppilae\";\"other\"\n\"656015\";\"Jappilja\";\"other\"\n\"656015\";\"Яппиля\";\"other\"\n\"656073\";\"Janakkala\";\"main\"\n\"656073\";\"Янаккала\";\"other\"\n\"656076\";\"Jämsänkoski\";\"main\"\n\"656076\";\"Jamsankoski\";\"ascii\"\n\"656076\";\"Jaemsaenkoski\";\"other\"\n\"656076\";\"Jjamsjankoski\";\"other\"\n\"656076\";\"Йямсянкоски\";\"other\"\n\"656083\";\"Jämsä\";\"main\"\n\"656083\";\"Jamsa\";\"ascii\"\n\"656083\";\"Jaemsae\";\"other\"\n\"656083\";\"Jjamsja\";\"other\"\n\"656083\";\"Yamsya\";\"other\"\n\"656083\";\"Йямся\";\"other\"\n\"656090\";\"Jämijärvi\";\"main\"\n\"656090\";\"Jamijarvi\";\"ascii\"\n\"656117\";\"Jalasjärvi\";\"main\"\n\"656117\";\"Jalasjarvi\";\"ascii\"\n\"656117\";\"Yalas'yarvi\";\"other\"\n\"656130\";\"Jakobstad\";\"main\"\n\"656130\";\"Pietarsaari\";\"other\"\n\"656130\";\"Pietarsari\";\"other\"\n\"656130\";\"Pietasaari\";\"other\"\n\"656130\";\"Yakobstad\";\"other\"\n\"656130\";\"Якобстад\";\"other\"\n\"656183\";\"Jaala\";\"main\"\n\"656183\";\"Яала\";\"other\"\n\"656220\";\"Ivalo\";\"main\"\n\"656220\";\"Avveel\";\"other\"\n\"656220\";\"Avvil\";\"other\"\n\"656220\";\"Kyro\";\"other\"\n\"656220\";\"Kyrö\";\"other\"\n\"656220\";\"Ивало\";\"other\"\n\"656456\";\"Isokyrö\";\"main\"\n\"656456\";\"Isokyro\";\"ascii\"\n\"656456\";\"Isokyroe\";\"other\"\n\"656456\";\"Storkyro\";\"other\"\n\"656517\";\"Isojoki\";\"main\"\n\"656517\";\"Stora\";\"other\"\n\"656517\";\"Storå\";\"other\"\n\"656652\";\"Ingå\";\"main\"\n\"656652\";\"Inga\";\"ascii\"\n\"656652\";\"Inkoo\";\"other\"\n\"656657\";\"Inari\";\"main\"\n\"656657\";\"Aanaar\";\"other\"\n\"656657\";\"Anar\";\"other\"\n\"656657\";\"Anár\";\"other\"\n\"656657\";\"Enare\";\"other\"\n\"656657\";\"Ânar\";\"other\"\n\"656657\";\"Инари\";\"other\"\n\"656688\";\"Imatra\";\"main\"\n\"656688\";\"imatra\";\"other\"\n\"656688\";\"Иматра\";\"other\"\n\"656709\";\"Ilomantsi\";\"main\"\n\"656709\";\"Ilomants\";\"other\"\n\"656709\";\"Иломантси\";\"other\"\n\"656739\";\"Ilmajoki\";\"main\"\n\"656789\";\"Ikaalinen\";\"main\"\n\"656789\";\"Ikalis\";\"other\"\n\"656789\";\"Икаалинен\";\"other\"\n\"656807\";\"Iitti\";\"main\"\n\"656820\";\"Iisalmi\";\"main\"\n\"656820\";\"ISALMI\";\"other\"\n\"656820\";\"Idensalmi\";\"other\"\n\"656820\";\"Iisalmo\";\"other\"\n\"656820\";\"Isal'mi\";\"other\"\n\"656820\";\"ИСАЛМИ\";\"other\"\n\"656851\";\"Ii\";\"main\"\n\"656851\";\"Ii vald\";\"other\"\n\"656851\";\"Iio\";\"other\"\n\"656851\";\"Ijo\";\"other\"\n\"656913\";\"Hyvinkää\";\"main\"\n\"656913\";\"Hyvinkaa\";\"ascii\"\n\"656913\";\"Hyvinge\";\"other\"\n\"656913\";\"Hyvinkaeae\";\"other\"\n\"656913\";\"Khjuvinkjaja\";\"other\"\n\"656913\";\"Хювинкяя\";\"other\"\n\"656949\";\"Hyrynsalmi\";\"main\"\n\"656949\";\"Hyrynsaimi\";\"other\"\n\"656949\";\"Khjurjunsalmi\";\"other\"\n\"656949\";\"Khyuryunsalmi\";\"other\"\n\"656949\";\"Хюрюнсалми\";\"other\"\n\"657112\";\"Humppila\";\"main\"\n\"657180\";\"Huittinen\";\"main\"\n\"657530\";\"Hollola\";\"main\"\n\"657530\";\"Khollola\";\"other\"\n\"657530\";\"Холлола\";\"other\"\n\"657730\";\"Hirvensalmi\";\"main\"\n\"657730\";\"Khirvensalmi\";\"other\"\n\"657730\";\"Хирвенсалми\";\"other\"\n\"657838\";\"Himanka\";\"main\"\n\"657838\";\"Himango\";\"other\"\n\"658225\";\"Helsinki\";\"main\"\n\"658225\";\"Elsin'ki\";\"other\"\n\"658225\";\"Heilsinci\";\"other\"\n\"658225\";\"Heilsincí\";\"other\"\n\"658225\";\"Helsingfors\";\"other\"\n\"658225\";\"Helsingi\";\"other\"\n\"658225\";\"Helsingia\";\"other\"\n\"658225\";\"Helsinkis\";\"other\"\n\"658225\";\"Helsinkium\";\"other\"\n\"658225\";\"Helsinko\";\"other\"\n\"658225\";\"Helsinky\";\"other\"\n\"658225\";\"Helsinqui - Helsinki\";\"other\"\n\"658225\";\"Helsinquia\";\"other\"\n\"658225\";\"Helsset\";\"other\"\n\"658225\";\"Helsínquia\";\"other\"\n\"658225\";\"Hèlsinki\";\"other\"\n\"658225\";\"Hêlsînkî\";\"other\"\n\"658225\";\"Khel'sinki\";\"other\"\n\"658225\";\"Khelsinki\";\"other\"\n\"658225\";\"Khelzinki\";\"other\"\n\"658225\";\"Yelsinki\";\"other\"\n\"658225\";\"he er xin ji\";\"other\"\n\"658225\";\"helasinki\";\"other\"\n\"658225\";\"helsingki\";\"other\"\n\"658225\";\"herushinki\";\"other\"\n\"658225\";\"hlsnky\";\"other\"\n\"658225\";\"hlsynky\";\"other\"\n\"658225\";\"hlsynqy\";\"other\"\n\"658225\";\"Ελσίνκι\";\"other\"\n\"658225\";\"Хелзинки\";\"other\"\n\"658225\";\"Хелсинки\";\"other\"\n\"658225\";\"Хельсинки\";\"other\"\n\"658225\";\"Хэльсынкі\";\"other\"\n\"658225\";\"Հելսինկի\";\"other\"\n\"658225\";\"הלסינקי\";\"other\"\n\"658225\";\"هلسنكي\";\"other\"\n\"658225\";\"هلسینکی\";\"other\"\n\"658225\";\"ܗܠܣܢܟܝ\";\"other\"\n\"658225\";\"हेलसिंकी\";\"other\"\n\"658225\";\"เฮลซิงกิ\";\"other\"\n\"658225\";\"ჰელსინკი\";\"other\"\n\"658225\";\"ሄልሲንኪ\";\"other\"\n\"658225\";\"ヘルシンキ\";\"other\"\n\"658225\";\"赫尔辛基\";\"other\"\n\"658225\";\"헬싱키\";\"other\"\n\"658288\";\"Heinola\";\"main\"\n\"658288\";\"KHEJNOLA\";\"other\"\n\"658288\";\"Khejnola\";\"other\"\n\"658288\";\"Kheynola\";\"other\"\n\"658288\";\"ХЕЙНОЛА\";\"other\"\n\"658288\";\"Хейнола\";\"other\"\n\"658318\";\"Heinävesi\";\"main\"\n\"658318\";\"Heinavesi\";\"ascii\"\n\"658318\";\"Heinaevesi\";\"other\"\n\"658318\";\"Heinaevesi vald\";\"other\"\n\"658318\";\"Heinnvesi\";\"other\"\n\"658318\";\"Heinävesi vald\";\"other\"\n\"658318\";\"Khejnjavesi\";\"other\"\n\"658318\";\"Хейнявеси\";\"other\"\n\"658581\";\"Hausjärvi\";\"main\"\n\"658581\";\"Hausjarvi\";\"ascii\"\n\"658617\";\"Haukivuori\";\"main\"\n\"658617\";\"Khaukivuori\";\"other\"\n\"658617\";\"Хаукивуори\";\"other\"\n\"658629\";\"Haukipudas\";\"main\"\n\"658629\";\"Khaukipudas\";\"other\"\n\"658629\";\"Хаукипудас\";\"other\"\n\"658670\";\"Hauho\";\"main\"\n\"658670\";\"Khaukho\";\"other\"\n\"658670\";\"Хаухо\";\"other\"\n\"658757\";\"Hartola\";\"main\"\n\"658757\";\"Khartola\";\"other\"\n\"658757\";\"Хартола\";\"other\"\n\"658921\";\"Harjavalta\";\"main\"\n\"659024\";\"Hankasalmi\";\"main\"\n\"659024\";\"Khalkasalmi\";\"other\"\n\"659024\";\"Халкасалми\";\"other\"\n\"659101\";\"Hanko\";\"main\"\n\"659101\";\"Hango\";\"other\"\n\"659101\";\"Hangoe\";\"other\"\n\"659101\";\"Hangonkyla\";\"other\"\n\"659101\";\"Hangonkylä\";\"other\"\n\"659101\";\"Hangö\";\"other\"\n\"659101\";\"Khanko\";\"other\"\n\"659101\";\"Ханко\";\"other\"\n\"659101\";\"האנקו\";\"other\"\n\"659169\";\"Hamina\";\"main\"\n\"659169\";\"Fredrikshamn\";\"other\"\n\"659169\";\"KHAMINA\";\"other\"\n\"659169\";\"Khamina\";\"other\"\n\"659169\";\"ХАМИНА\";\"other\"\n\"659169\";\"Хамина\";\"other\"\n\"659180\";\"Hämeenlinna\";\"main\"\n\"659180\";\"Hameenlinna\";\"ascii\"\n\"659180\";\"Haemeenlinna\";\"other\"\n\"659180\";\"Khamenlinna\";\"other\"\n\"659180\";\"Khjameenlinna\";\"other\"\n\"659180\";\"Tavastehus\";\"other\"\n\"659180\";\"hamenrin'na\";\"other\"\n\"659180\";\"Хямеенлинна\";\"other\"\n\"659180\";\"ハメーンリンナ\";\"other\"\n\"659184\";\"Hämeenkyrö\";\"main\"\n\"659184\";\"Hameenkyro\";\"ascii\"\n\"659184\";\"Haemeenkyroe\";\"other\"\n\"659184\";\"Tavastkyroe\";\"other\"\n\"659184\";\"Tavastkyrö\";\"other\"\n\"659231\";\"Halsua\";\"main\"\n\"659231\";\"Khalsua\";\"other\"\n\"659231\";\"Халсуа\";\"other\"\n\"659350\";\"Halikko\";\"main\"\n\"659554\";\"Haapavesi\";\"main\"\n\"659554\";\"Khapavesi\";\"other\"\n\"659554\";\"Хапавеси\";\"other\"\n\"659681\";\"Haapajärvi\";\"main\"\n\"659681\";\"Haapajarvi\";\"ascii\"\n\"659681\";\"Haapajaervi\";\"other\"\n\"659681\";\"Haapavesi\";\"other\"\n\"659681\";\"KHAPAJARVI\";\"other\"\n\"659681\";\"Khapayarvi\";\"other\"\n\"659681\";\"ХАПАЯРВИ\";\"other\"\n\"659935\";\"Forssa\";\"main\"\n\"659935\";\"Форсса\";\"other\"\n\"660065\";\"Evijärvi\";\"main\"\n\"660065\";\"Evijarvi\";\"ascii\"\n\"660073\";\"Eurajoki\";\"main\"\n\"660073\";\"Euraaminne\";\"other\"\n\"660073\";\"Euraåminne\";\"other\"\n\"660077\";\"Eura\";\"main\"\n\"660158\";\"Espoo\";\"main\"\n\"660158\";\"Ehspoo\";\"other\"\n\"660158\";\"Esbo\";\"other\"\n\"660158\";\"Espo\";\"other\"\n\"660158\";\"ai si bo\";\"other\"\n\"660158\";\"esupo\";\"other\"\n\"660158\";\"Έσποο\";\"other\"\n\"660158\";\"Еспо\";\"other\"\n\"660158\";\"Еспоо\";\"other\"\n\"660158\";\"Эспоо\";\"other\"\n\"660158\";\"ესპოო\";\"other\"\n\"660158\";\"エスポー\";\"other\"\n\"660158\";\"埃斯波\";\"other\"\n\"660229\";\"Enontekiö\";\"main\"\n\"660229\";\"Enontekio\";\"ascii\"\n\"660229\";\"Eanodat\";\"other\"\n\"660229\";\"Enodak\";\"other\"\n\"660229\";\"Enontekioe\";\"other\"\n\"660229\";\"Enontekis\";\"other\"\n\"660229\";\"Heahtta\";\"other\"\n\"660229\";\"Hetta\";\"other\"\n\"660229\";\"Heähtta\";\"other\"\n\"660235\";\"Enonkoski\";\"main\"\n\"660235\";\"Ehnonkoski\";\"other\"\n\"660235\";\"Энонкоски\";\"other\"\n\"660242\";\"Eno\";\"main\"\n\"660294\";\"Elimäki\";\"main\"\n\"660294\";\"Elimaki\";\"ascii\"\n\"660294\";\"Ehlimjaki\";\"other\"\n\"660294\";\"Elima\";\"other\"\n\"660294\";\"Elimae\";\"other\"\n\"660294\";\"Elimaeki\";\"other\"\n\"660294\";\"Elimä\";\"other\"\n\"660294\";\"Элимяки\";\"other\"\n\"660325\";\"Ekenäs\";\"main\"\n\"660325\";\"Ekenaes\";\"ascii\"\n\"660325\";\"Ekenas\";\"other\"\n\"660325\";\"Tammisaari\";\"other\"\n\"660325\";\"Tammisari\";\"other\"\n\"660325\";\"Таммисаари\";\"other\"\n\"660374\";\"Dragsfjärd\";\"main\"\n\"660374\";\"Dragsfjard\";\"ascii\"\n\"660561\";\"Porvoo\";\"main\"\n\"660561\";\"Borga\";\"other\"\n\"660561\";\"Borgo\";\"other\"\n\"660561\";\"Borgå\";\"other\"\n\"660561\";\"PORVOO\";\"other\"\n\"660561\";\"Porvo\";\"other\"\n\"660561\";\"ПОРВОО\";\"other\"\n\"660838\";\"Auttoinen\";\"main\"\n\"660838\";\"Auttojnen\";\"other\"\n\"660838\";\"Ауттойнен\";\"other\"\n\"660873\";\"Aura\";\"main\"\n\"660927\";\"Askola\";\"main\"\n\"660940\";\"Askainen\";\"main\"\n\"660940\";\"Askas\";\"other\"\n\"660949\";\"Asikkala\";\"main\"\n\"660949\";\"Асиккала\";\"other\"\n\"660974\";\"Artjärvi\";\"main\"\n\"660974\";\"Artjarvi\";\"ascii\"\n\"660974\";\"Artsjoe\";\"other\"\n\"660974\";\"Artsjö\";\"other\"\n\"661164\";\"Anjala\";\"main\"\n\"661164\";\"AN\\\"JALA\";\"other\"\n\"661164\";\"АНЪЯЛА\";\"other\"\n\"661352\";\"Alavus\";\"main\"\n\"661352\";\"Alavo\";\"other\"\n\"661352\";\"Алавус\";\"other\"\n\"661363\";\"Alavieska\";\"main\"\n\"661363\";\"Алавиеска\";\"other\"\n\"661411\";\"Alastaro\";\"main\"\n\"661411\";\"Alastaromaenpaa\";\"other\"\n\"661411\";\"Alastaromäenpää\";\"other\"\n\"661576\";\"Alajärvi\";\"main\"\n\"661576\";\"Alajarvi\";\"ascii\"\n\"661576\";\"Alajaervi\";\"other\"\n\"661576\";\"Alayarvi\";\"other\"\n\"661576\";\"Алаярви\";\"other\"\n\"661601\";\"Alahärmä\";\"main\"\n\"661601\";\"Alaharma\";\"ascii\"\n\"661601\";\"Alahaermae\";\"other\"\n\"661896\";\"Ähtäri\";\"main\"\n\"661896\";\"Ahtari\";\"ascii\"\n\"661896\";\"AEhtaeri\";\"other\"\n\"661896\";\"Atsari\";\"other\"\n\"661896\";\"Ehkhtjari\";\"other\"\n\"661896\";\"Eteyari\";\"other\"\n\"661896\";\"Etseri\";\"other\"\n\"661896\";\"Ätsari\";\"other\"\n\"661896\";\"Эхтяри\";\"other\"\n\"662095\";\"Äänekoski\";\"main\"\n\"662095\";\"Aanekoski\";\"ascii\"\n\"662095\";\"AEaenekoski\";\"other\"\n\"662095\";\"Ehehnekoski\";\"other\"\n\"662095\";\"Ээнекоски\";\"other\"\n\"846663\";\"Loimaan Kunta\";\"main\"\n\"846664\";\"Äetsä\";\"main\"\n\"846664\";\"Aetsa\";\"ascii\"\n\"846667\";\"Jyväskylän Maalaiskunta\";\"main\"\n\"846667\";\"Jyvaskylan Maalaiskunta\";\"ascii\"\n\"846667\";\"Jyvaeskylae landskommun\";\"other\"\n\"846667\";\"Jyvaeskylae vald\";\"other\"\n\"846667\";\"Jyvaeskylaen maalaiskunta\";\"other\"\n\"846667\";\"Jyväskylä landskommun\";\"other\"\n\"846667\";\"Jyväskylä vald\";\"other\"\n\"846667\";\"Jyväskylän maalaiskunta\";\"other\"\n\"846667\";\"Kampara komunumo de Jyvaeskylae\";\"other\"\n\"846667\";\"Kampara komunumo de Jyväskylä\";\"other\"\n\"846667\";\"Landgemeinde Jyvaeskylae\";\"other\"\n\"846667\";\"Landgemeinde Jyväskylä\";\"other\"\n\"846668\";\"Pieksämäen Maalaiskunta\";\"main\"\n\"846668\";\"Pieksamaen Maalaiskunta\";\"ascii\"\n\"6295613\";\"Kilo\";\"main\"\n\"6691859\";\"Teekkarikylä\";\"main\"\n\"6691859\";\"Teekkarikylae\";\"ascii\"\n\"6691859\";\"Helsinki University of Technology student village\";\"other\"\n\"2198148\";\"Suva\";\"main\"\n\"2198148\";\"Souba\";\"other\"\n\"2198148\";\"Suva City\";\"other\"\n\"2198148\";\"Suwa\";\"other\"\n\"2198148\";\"su wa\";\"other\"\n\"2198148\";\"suba\";\"other\"\n\"2198148\";\"subha\";\"other\"\n\"2198148\";\"swbh\";\"other\"\n\"2198148\";\"swfa\";\"other\"\n\"2198148\";\"swwa\";\"other\"\n\"2198148\";\"Σούβα\";\"other\"\n\"2198148\";\"Сува\";\"other\"\n\"2198148\";\"סובה\";\"other\"\n\"2198148\";\"سوفا\";\"other\"\n\"2198148\";\"سووا\";\"other\"\n\"2198148\";\"সুভা\";\"other\"\n\"2198148\";\"ሱቫ\";\"other\"\n\"2198148\";\"スバ\";\"other\"\n\"2198148\";\"蘇瓦\";\"other\"\n\"2198148\";\"수바\";\"other\"\n\"2202064\";\"Nadi\";\"main\"\n\"2202064\";\"Nandi\";\"other\"\n\"2202064\";\"Нанди\";\"other\"\n\"2204582\";\"Lambasa\";\"main\"\n\"2204582\";\"Labasa\";\"other\"\n\"2204582\";\"Lambasa Mill\";\"other\"\n\"2204582\";\"Lambase\";\"other\"\n\"2204582\";\"Lambassa\";\"other\"\n\"3426691\";\"Stanley\";\"main\"\n\"3426691\";\"Port Stanley\";\"other\"\n\"3426691\";\"Port Stenli\";\"other\"\n\"3426691\";\"Puerto Archentinas/Stenlis\";\"other\"\n\"3426691\";\"Puerto Argentino/Stanley\";\"other\"\n\"3426691\";\"Stanley Harbour\";\"other\"\n\"3426691\";\"Stenlis\";\"other\"\n\"3426691\";\"stnly\";\"other\"\n\"3426691\";\"sutanre\";\"other\"\n\"3426691\";\"sutanri\";\"other\"\n\"3426691\";\"Порт Стенли\";\"other\"\n\"3426691\";\"סטנלי\";\"other\"\n\"3426691\";\"スタンリー\";\"other\"\n\"3426691\";\"スタンレー\";\"other\"\n\"1559265\";\"Colonia\";\"main\"\n\"1559265\";\"Doanguuc\";\"other\"\n\"1559265\";\"Kolonie\";\"other\"\n\"1559265\";\"Korronii\";\"other\"\n\"1559265\";\"Yap\";\"other\"\n\"1559265\";\"Yappu\";\"other\"\n\"1559265\";\"Yaptown\";\"other\"\n\"2081114\";\"Weno\";\"main\"\n\"2081114\";\"Moen\";\"other\"\n\"2081320\";\"Tonoas\";\"main\"\n\"2081320\";\"Dublon Town\";\"other\"\n\"2081320\";\"Natsu\";\"other\"\n\"2081342\";\"Toynim\";\"main\"\n\"2081395\";\"Tafunsak\";\"main\"\n\"2081395\";\"Saventiac\";\"other\"\n\"2081395\";\"Tafonsak\";\"other\"\n\"2081395\";\"Tahonsaku\";\"other\"\n\"2081659\";\"Paata\";\"main\"\n\"2081659\";\"Pada\";\"other\"\n\"2081659\";\"Pata\";\"other\"\n\"2081828\";\"Nan Uh\";\"main\"\n\"2081828\";\"U\";\"other\"\n\"2081828\";\"U Mura\";\"other\"\n\"2081986\";\"Palikir\";\"main\"\n\"2081986\";\"Kolonia\";\"other\"\n\"2081986\";\"Palakir\";\"other\"\n\"2081986\";\"Palikiras\";\"other\"\n\"2081986\";\"Palirik\";\"other\"\n\"2081986\";\"Pallikir\";\"other\"\n\"2081986\";\"pa li ji er\";\"other\"\n\"2081986\";\"pa li kexr\";\"other\"\n\"2081986\";\"pallikileu\";\"other\"\n\"2081986\";\"parikiru\";\"other\"\n\"2081986\";\"plyqyr\";\"other\"\n\"2081986\";\"Παλιρίκ\";\"other\"\n\"2081986\";\"Паликир\";\"other\"\n\"2081986\";\"Պալիկիր\";\"other\"\n\"2081986\";\"פליקיר\";\"other\"\n\"2081986\";\"ปาลิเกอร์\";\"other\"\n\"2081986\";\"ፓሊኪር\";\"other\"\n\"2081986\";\"パリキール\";\"other\"\n\"2081986\";\"帕利基爾\";\"other\"\n\"2081986\";\"팔리키르\";\"other\"\n\"2082038\";\"Kolonia\";\"main\"\n\"2082038\";\"Colony Koronia\";\"other\"\n\"2082038\";\"Colony Town\";\"other\"\n\"2082038\";\"Kolonie\";\"other\"\n\"2082038\";\"Koroni\";\"other\"\n\"2082038\";\"Koronia\";\"other\"\n\"2082038\";\"Koronie\";\"other\"\n\"2082038\";\"Mesieng\";\"other\"\n\"2082038\";\"Ponape\";\"other\"\n\"2082038\";\"Ponape Town\";\"other\"\n\"2610343\";\"Vestmanna\";\"main\"\n\"2610343\";\"Vestmanhavn\";\"other\"\n\"2610343\";\"Vestmanshavn\";\"other\"\n\"2610343\";\"Vestnanhavn\";\"other\"\n\"2610806\";\"Vágur\";\"main\"\n\"2610806\";\"Vagur\";\"ascii\"\n\"2610806\";\"Vaag\";\"other\"\n\"2610806\";\"Vag\";\"other\"\n\"2610806\";\"Våg\";\"other\"\n\"2611060\";\"Tvøroyri\";\"main\"\n\"2611060\";\"Tvoroyri\";\"ascii\"\n\"2611060\";\"Tvaera\";\"other\"\n\"2611060\";\"Tvaeraa\";\"other\"\n\"2611060\";\"Tvaora\";\"other\"\n\"2611060\";\"Tvera\";\"other\"\n\"2611060\";\"Tveraa\";\"other\"\n\"2611060\";\"Tverå\";\"other\"\n\"2611060\";\"Tvorovri\";\"other\"\n\"2611060\";\"Tværaa\";\"other\"\n\"2611060\";\"Tværå\";\"other\"\n\"2611060\";\"Tvörovri\";\"other\"\n\"2611396\";\"Tórshavn\";\"main\"\n\"2611396\";\"Torshavn\";\"ascii\"\n\"2611396\";\"Havn\";\"other\"\n\"2611396\";\"THorshoefn\";\"other\"\n\"2611396\";\"Tarskhavn\";\"other\"\n\"2611396\";\"Thorshavn\";\"other\"\n\"2611396\";\"Torshamn\";\"other\"\n\"2611396\";\"Torshavnas\";\"other\"\n\"2611396\";\"Torskhavn\";\"other\"\n\"2611396\";\"toleuseuhaun\";\"other\"\n\"2611396\";\"tosuhaun\";\"other\"\n\"2611396\";\"Þórshöfn\";\"other\"\n\"2611396\";\"Тарсхавн\";\"other\"\n\"2611396\";\"Торсхавн\";\"other\"\n\"2611396\";\"טורסהאבן\";\"other\"\n\"2611396\";\"トースハウン\";\"other\"\n\"2611396\";\"토르스하운\";\"other\"\n\"2612890\";\"Sørvágur\";\"main\"\n\"2612890\";\"Sorvagur\";\"ascii\"\n\"2612890\";\"Soervaag\";\"other\"\n\"2612890\";\"Sorvaag\";\"other\"\n\"2612890\";\"Sorvag\";\"other\"\n\"2612890\";\"Sörvag\";\"other\"\n\"2612890\";\"Sørvaag\";\"other\"\n\"2614212\";\"Sandur\";\"main\"\n\"2614212\";\"Sand\";\"other\"\n\"2616914\";\"Miðvágur\";\"main\"\n\"2616914\";\"Midvagur\";\"ascii\"\n\"2616914\";\"Midvaag\";\"other\"\n\"2616914\";\"Midvag\";\"other\"\n\"2616914\";\"Midvåg\";\"other\"\n\"2618511\";\"Kollafjørður\";\"main\"\n\"2618511\";\"Kollafjordhur\";\"ascii\"\n\"2618511\";\"Kollefiord Church\";\"other\"\n\"2618511\";\"Kollefjord\";\"other\"\n\"2618511\";\"Kollefjord Kirke\";\"other\"\n\"2618795\";\"Klaksvík\";\"main\"\n\"2618795\";\"Klaksvik\";\"ascii\"\n\"2618795\";\"Klakksvik\";\"other\"\n\"2618795\";\"Klakksvík\";\"other\"\n\"2618795\";\"Klaksvig\";\"other\"\n\"2618795\";\"קלאקסוויק\";\"other\"\n\"2619693\";\"Hoyvík\";\"main\"\n\"2619693\";\"Hoyvik\";\"ascii\"\n\"2619693\";\"Hojvig\";\"other\"\n\"2619693\";\"Hoyvig\";\"other\"\n\"2619693\";\"Höjvig\";\"other\"\n\"2621808\";\"Fuglafjørður\";\"main\"\n\"2621808\";\"Fuglafjordur\";\"ascii\"\n\"2621808\";\"Fuglefiord\";\"other\"\n\"2621808\";\"Fuglefjord\";\"other\"\n\"2624653\";\"Argir\";\"main\"\n\"2624653\";\"Arge\";\"other\"\n\"2967103\";\"Peyrat-le-Château\";\"main\"\n\"2967103\";\"Peyrat-le-Chateau\";\"ascii\"\n\"2967103\";\"Peyrat\";\"other\"\n\"2967108\";\"Blaye\";\"main\"\n\"2967108\";\"Blaia\";\"other\"\n\"2967108\";\"Blaye-et-Sainte-Luce\";\"other\"\n\"2967110\";\"Zuydcoote\";\"main\"\n\"2967110\";\"Zuidcoote\";\"other\"\n\"2967112\";\"Zutkerque\";\"main\"\n\"2967125\";\"Zonza\";\"main\"\n\"2967137\";\"Zimmersheim\";\"main\"\n\"2967139\";\"Zillisheim\";\"main\"\n\"2967157\";\"Zegerscappel\";\"main\"\n\"2967165\";\"Yzeures-sur-Creuse\";\"main\"\n\"2967165\";\"Yzeures\";\"other\"\n\"2967166\";\"Yzeure\";\"main\"\n\"2967169\";\"Yzernay\";\"main\"\n\"2967175\";\"Yvré-le-Pôlin\";\"main\"\n\"2967175\";\"Yvre-le-Polin\";\"ascii\"\n\"2967175\";\"Yvre\";\"other\"\n\"2967175\";\"Yvré\";\"other\"\n\"2967179\";\"Yvrac\";\"main\"\n\"2967183\";\"Yvignac-la-Tour\";\"main\"\n\"2967189\";\"Yvetot\";\"main\"\n\"2967189\";\"Yvetot-la-Montagne\";\"other\"\n\"2967191\";\"Yves\";\"main\"\n\"2967201\";\"Ytrac\";\"main\"\n\"2967203\";\"Yssingeaux\";\"main\"\n\"2967203\";\"Issingeaux\";\"other\"\n\"2967217\";\"Yport\";\"main\"\n\"2967218\";\"Youx\";\"main\"\n\"2967230\";\"Ymare\";\"main\"\n\"2967232\";\"Ygos-Saint-Saturnin\";\"main\"\n\"2967232\";\"Ygos\";\"other\"\n\"2967234\";\"Yffiniac\";\"main\"\n\"2967234\";\"Ilfinieg\";\"other\"\n\"2967236\";\"Yèvres\";\"main\"\n\"2967236\";\"Yevres\";\"ascii\"\n\"2967242\";\"Yerville\";\"main\"\n\"2967245\";\"Yerres\";\"main\"\n\"2967245\";\"Jerre\";\"other\"\n\"2967245\";\"ierr\";\"other\"\n\"2967245\";\"Иерр\";\"other\"\n\"2967245\";\"Йерре\";\"other\"\n\"2967249\";\"Yenne\";\"main\"\n\"2967251\";\"Yébleron\";\"main\"\n\"2967251\";\"Yebleron\";\"ascii\"\n\"2967252\";\"Ydes\";\"main\"\n\"2967253\";\"Ychoux\";\"main\"\n\"2967256\";\"Yainville\";\"main\"\n\"2967263\";\"Xonrupt-Longemer\";\"main\"\n\"2967263\";\"Xonrupt\";\"other\"\n\"2967269\";\"Xertigny\";\"main\"\n\"2967287\";\"Woustviller\";\"main\"\n\"2967288\";\"Wormhout\";\"main\"\n\"2967288\";\"Wormhoudt\";\"other\"\n\"2967293\";\"Wolfisheim\";\"main\"\n\"2967294\";\"Wolfgantzen\";\"main\"\n\"2967297\";\"Woippy\";\"main\"\n\"2967299\";\"Woincourt\";\"main\"\n\"2967299\";\"Wornicourt\";\"other\"\n\"2967309\";\"Wizernes\";\"main\"\n\"2967312\";\"Wittisheim\";\"main\"\n\"2967318\";\"Wittenheim\";\"main\"\n\"2967319\";\"Wittelsheim\";\"main\"\n\"2967320\";\"Witry-lès-Reims\";\"main\"\n\"2967320\";\"Witry-les-Reims\";\"ascii\"\n\"2967320\";\"Witry\";\"other\"\n\"2967320\";\"Witry-lez-Reims\";\"other\"\n\"2967322\";\"Wissous\";\"main\"\n\"2967325\";\"Wissembourg\";\"main\"\n\"2967325\";\"Vissemburg\";\"other\"\n\"2967325\";\"Weissenburg\";\"other\"\n\"2967325\";\"Weißenburg\";\"other\"\n\"2967325\";\"Wissemborg\";\"other\"\n\"2967325\";\"Виссембург\";\"other\"\n\"2967326\";\"Wissant\";\"main\"\n\"2967331\";\"Wisches\";\"main\"\n\"2967337\";\"Wintzenheim\";\"main\"\n\"2967337\";\"Winzenheim\";\"other\"\n\"2967341\";\"Winnezeele\";\"main\"\n\"2967343\";\"Wingles\";\"main\"\n\"2967344\";\"Wingersheim\";\"main\"\n\"2967349\";\"Wimmenau\";\"main\"\n\"2967350\";\"Wimille\";\"main\"\n\"2967351\";\"Wimereux\";\"main\"\n\"2967357\";\"Willerwald\";\"main\"\n\"2967357\";\"Villerwaldt\";\"other\"\n\"2967363\";\"Willems\";\"main\"\n\"2967370\";\"Wihr-au-Val\";\"main\"\n\"2967370\";\"Wihr\";\"other\"\n\"2967372\";\"Wignehies\";\"main\"\n\"2967373\";\"Wiesviller\";\"main\"\n\"2967378\";\"Widensolen\";\"main\"\n\"2967378\";\"Widensohlen\";\"other\"\n\"2967386\";\"Weyersheim\";\"main\"\n\"2967389\";\"Wettolsheim\";\"main\"\n\"2967393\";\"Westhoffen\";\"main\"\n\"2967397\";\"Wervicq-Sud\";\"main\"\n\"2967404\";\"Weitbruch\";\"main\"\n\"2967410\";\"Waziers\";\"main\"\n\"2967411\";\"Wavrin\";\"main\"\n\"2967414\";\"Wavrechain-sous-Denain\";\"main\"\n\"2967414\";\"Wavrechain\";\"other\"\n\"2967418\";\"Wavignies\";\"main\"\n\"2967420\";\"Wattwiller\";\"main\"\n\"2967421\";\"Wattrelos\";\"main\"\n\"2967423\";\"Wattignies\";\"main\"\n\"2967426\";\"Watten\";\"main\"\n\"2967434\";\"Wassy\";\"main\"\n\"2967434\";\"Vassy\";\"other\"\n\"2967435\";\"Wassigny\";\"main\"\n\"2967437\";\"Wasselonne\";\"main\"\n\"2967437\";\"Wasselnheim\";\"other\"\n\"2967438\";\"Wasquehal\";\"main\"\n\"2967449\";\"Warmeriville\";\"main\"\n\"2967453\";\"Warluis\";\"main\"\n\"2967460\";\"Warhem\";\"main\"\n\"2967462\";\"Wargnies-le-Grand\";\"main\"\n\"2967467\";\"Wardrecques\";\"main\"\n\"2967468\";\"Warcq\";\"main\"\n\"2967472\";\"Wangenbourg-Engenthal\";\"main\"\n\"2967476\";\"Wandignies-Hamage\";\"main\"\n\"2967482\";\"Wambrechies\";\"main\"\n\"2967490\";\"Walscheid\";\"main\"\n\"2967494\";\"Wallers\";\"main\"\n\"2967500\";\"Waldighofen\";\"main\"\n\"2967500\";\"Waldighoffen\";\"other\"\n\"2967506\";\"Walbourg\";\"main\"\n\"2967506\";\"Walburg\";\"other\"\n\"2967510\";\"Wailly\";\"main\"\n\"2967516\";\"Wahagnies\";\"main\"\n\"2967542\";\"Vulaines-sur-Seine\";\"main\"\n\"2967542\";\"Vulaines\";\"other\"\n\"2967549\";\"Vue\";\"main\"\n\"2967549\";\"Gwagenez\";\"other\"\n\"2967549\";\"Ile-Tortue\";\"other\"\n\"2967570\";\"Vrigne-aux-Bois\";\"main\"\n\"2967570\";\"Vrigne\";\"other\"\n\"2967577\";\"Vred\";\"main\"\n\"2967595\";\"Voves\";\"main\"\n\"2967600\";\"Vouzon\";\"main\"\n\"2967603\";\"Vouziers\";\"main\"\n\"2967612\";\"Vouvray\";\"main\"\n\"2967620\";\"Voutezac\";\"main\"\n\"2967620\";\"Vautezac\";\"other\"\n\"2967625\";\"Vourles\";\"main\"\n\"2967625\";\"Vourles-le-Courageux\";\"other\"\n\"2967626\";\"Vourey\";\"main\"\n\"2967627\";\"Vouneuil-sur-Vienne\";\"main\"\n\"2967627\";\"Vouneuil\";\"other\"\n\"2967628\";\"Vouneuil-sous-Biard\";\"main\"\n\"2967628\";\"Vouneuil\";\"other\"\n\"2967631\";\"Voulx\";\"main\"\n\"2967639\";\"Voulangis\";\"main\"\n\"2967641\";\"Voujeaucourt\";\"main\"\n\"2967641\";\"Voujaucourt\";\"other\"\n\"2967647\";\"Vouillé\";\"main\"\n\"2967647\";\"Vouille\";\"ascii\"\n\"2967648\";\"Vouillé\";\"main\"\n\"2967648\";\"Vouille\";\"ascii\"\n\"2967654\";\"Vougy\";\"main\"\n\"2967655\";\"Vougy\";\"main\"\n\"2967693\";\"Vorey\";\"main\"\n\"2967693\";\"Vorey sur Arzon\";\"other\"\n\"2967695\";\"Voreppe\";\"main\"\n\"2967700\";\"Vonnas\";\"main\"\n\"2967708\";\"Volx\";\"main\"\n\"2967710\";\"Volvic\";\"main\"\n\"2967715\";\"Volstroff\";\"main\"\n\"2967718\";\"Volonne\";\"main\"\n\"2967728\";\"Volmerange-les-Mines\";\"main\"\n\"2967728\";\"Volmerange\";\"other\"\n\"2967745\";\"Voisins-le-Bretonneux\";\"main\"\n\"2967745\";\"Voisins\";\"other\"\n\"2967754\";\"Voisenon\";\"main\"\n\"2967758\";\"Voiron\";\"main\"\n\"2967781\";\"Voglans\";\"main\"\n\"2967785\";\"Vœuil-et-Giget\";\"main\"\n\"2967785\";\"Voeuil-et-Giget\";\"ascii\"\n\"2967785\";\"Voeuil\";\"other\"\n\"2967796\";\"Vizille\";\"main\"\n\"2967801\";\"Vix\";\"main\"\n\"2967802\";\"Vivy\";\"main\"\n\"2967803\";\"Vivonne\";\"main\"\n\"2967806\";\"Viviez\";\"main\"\n\"2967812\";\"Viviers-lès-Montagnes\";\"main\"\n\"2967812\";\"Viviers-les-Montagnes\";\"ascii\"\n\"2967812\";\"Viviers\";\"other\"\n\"2967812\";\"Viviers-la-Montagne\";\"other\"\n\"2967820\";\"Viviers\";\"main\"\n\"2967820\";\"Viviers-sur-Rhone\";\"other\"\n\"2967823\";\"Vivier-au-Court\";\"main\"\n\"2967823\";\"Vivier\";\"other\"\n\"2967836\";\"Viuz-la-Chiésaz\";\"main\"\n\"2967836\";\"Viuz-la-Chiesaz\";\"ascii\"\n\"2967837\";\"Viuz-en-Sallaz\";\"main\"\n\"2967837\";\"Viux-en-Sallaz\";\"other\"\n\"2967837\";\"Viuz\";\"other\"\n\"2967845\";\"Vittel\";\"main\"\n\"2967845\";\"Mouzon-Meuse\";\"other\"\n\"2967847\";\"Vitteaux\";\"main\"\n\"2967849\";\"Vitry-sur-Seine\";\"main\"\n\"2967849\";\"Port-de-Marat\";\"other\"\n\"2967849\";\"Vitri-sjur-Sen\";\"other\"\n\"2967849\";\"Vitry\";\"other\"\n\"2967849\";\"Витри-сюр-Сен\";\"other\"\n\"2967850\";\"Vitry-sur-Orne\";\"main\"\n\"2967850\";\"Vitry\";\"other\"\n\"2967856\";\"Vitry-le-François\";\"main\"\n\"2967856\";\"Vitry-le-Francois\";\"ascii\"\n\"2967856\";\"Vitri-le-Fransua\";\"other\"\n\"2967856\";\"Vitry-sur-Marne\";\"other\"\n\"2967856\";\"Витри-ле-Франсуа\";\"other\"\n\"2967863\";\"Vitry-en-Artois\";\"main\"\n\"2967863\";\"Vitry\";\"other\"\n\"2967864\";\"Vitry-aux-Loges\";\"main\"\n\"2967864\";\"Vitry\";\"other\"\n\"2967870\";\"Vitrolles\";\"main\"\n\"2967870\";\"Vitrol'\";\"other\"\n\"2967870\";\"Витроль\";\"other\"\n\"2967879\";\"Vitré\";\"main\"\n\"2967879\";\"Vitre\";\"ascii\"\n\"2967879\";\"Bitre\";\"other\"\n\"2967879\";\"Gwitreg\";\"other\"\n\"2967879\";\"Vitreh\";\"other\"\n\"2967879\";\"fytry\";\"other\"\n\"2967879\";\"vu~itore\";\"other\"\n\"2967879\";\"wei te lei\";\"other\"\n\"2967879\";\"Βιτρέ\";\"other\"\n\"2967879\";\"Витрэ\";\"other\"\n\"2967879\";\"فيتري\";\"other\"\n\"2967879\";\"ヴィトレ\";\"other\"\n\"2967879\";\"维特雷\";\"other\"\n\"2967914\";\"Visan\";\"main\"\n\"2967916\";\"Viry-Noureuil\";\"main\"\n\"2967916\";\"Viry\";\"other\"\n\"2967917\";\"Viry-Châtillon\";\"main\"\n\"2967917\";\"Viry-Chatillon\";\"ascii\"\n\"2967917\";\"Viri-Shatillon\";\"other\"\n\"2967917\";\"Viry\";\"other\"\n\"2967917\";\"Вири-Шатиллон\";\"other\"\n\"2967920\";\"Viry\";\"main\"\n\"2967934\";\"Viroflay\";\"main\"\n\"2967940\";\"Viriville\";\"main\"\n\"2967945\";\"Virieu-le-Grand\";\"main\"\n\"2967945\";\"Virieu\";\"other\"\n\"2967947\";\"Virieu\";\"main\"\n\"2967949\";\"Viriat\";\"main\"\n\"2967954\";\"Virey-le-Grand\";\"main\"\n\"2967954\";\"Virey\";\"other\"\n\"2967955\";\"Vireux-Wallerand\";\"main\"\n\"2967955\";\"Vireux\";\"other\"\n\"2967956\";\"Vireux-Molhain\";\"main\"\n\"2967956\";\"Vireux\";\"other\"\n\"2967972\";\"Vire\";\"main\"\n\"2967975\";\"Virazeil\";\"main\"\n\"2967997\";\"Vion\";\"main\"\n\"2968005\";\"Violès\";\"main\"\n\"2968005\";\"Violes\";\"ascii\"\n\"2968007\";\"Violay\";\"main\"\n\"2968008\";\"Violaines\";\"main\"\n\"2968019\";\"Vinsobres\";\"main\"\n\"2968023\";\"Vinon-sur-Verdon\";\"main\"\n\"2968023\";\"Vinon\";\"other\"\n\"2968026\";\"Vinneuf\";\"main\"\n\"2968034\";\"Vineuil-Saint-Firmin\";\"main\"\n\"2968034\";\"Les Sans-Culottes-sur-Nonette\";\"other\"\n\"2968034\";\"Vineuil\";\"other\"\n\"2968035\";\"Vineuil\";\"main\"\n\"2968036\";\"Vineuil\";\"main\"\n\"2968051\";\"Vincey\";\"main\"\n\"2968054\";\"Vincennes\";\"main\"\n\"2968062\";\"Vinça\";\"main\"\n\"2968062\";\"Vinca\";\"ascii\"\n\"2968062\";\"Vinçà\";\"other\"\n\"2968064\";\"Vinay\";\"main\"\n\"2968066\";\"Vinassan\";\"main\"\n\"2968070\";\"Vimy\";\"main\"\n\"2968072\";\"Vimoutiers\";\"main\"\n\"2968073\";\"Vimory\";\"main\"\n\"2968076\";\"Vimines\";\"main\"\n\"2968139\";\"Villiers-sur-Orge\";\"main\"\n\"2968139\";\"Villiers\";\"other\"\n\"2968140\";\"Villiers-sur-Morin\";\"main\"\n\"2968140\";\"Villiers\";\"other\"\n\"2968142\";\"Villiers-sur-Marne\";\"main\"\n\"2968142\";\"Vil'e-sjur-Marn\";\"other\"\n\"2968142\";\"Villiers\";\"other\"\n\"2968142\";\"Вилье-сюр-Марн\";\"other\"\n\"2968144\";\"Villiers-sur-Loir\";\"main\"\n\"2968144\";\"Villiers\";\"other\"\n\"2968151\";\"Villiers-Saint-Georges\";\"main\"\n\"2968152\";\"Villiers-Saint-Fréderic\";\"main\"\n\"2968152\";\"Villiers-Saint-Frederic\";\"ascii\"\n\"2968152\";\"Villiers\";\"other\"\n\"2968152\";\"Villiers-le-Voltaire\";\"other\"\n\"2968170\";\"Villiers-le-Morhier\";\"main\"\n\"2968170\";\"Villiers\";\"other\"\n\"2968170\";\"Villiers-le-Mornier\";\"other\"\n\"2968176\";\"Villiers-le-Bel\";\"main\"\n\"2968176\";\"Vil'e-le-Bel'\";\"other\"\n\"2968176\";\"Villiers\";\"other\"\n\"2968176\";\"Вилье-ле-Бель\";\"other\"\n\"2968177\";\"Villiers-le-Bâcle\";\"main\"\n\"2968177\";\"Villiers-le-Bacle\";\"ascii\"\n\"2968177\";\"Villiers\";\"other\"\n\"2968183\";\"Villiers-en-Plaine\";\"main\"\n\"2968183\";\"Villiers\";\"other\"\n\"2968185\";\"Villiers-en-Lieu\";\"main\"\n\"2968185\";\"Villiers\";\"other\"\n\"2968214\";\"Villié-Morgon\";\"main\"\n\"2968214\";\"Villie-Morgon\";\"ascii\"\n\"2968214\";\"Villie\";\"other\"\n\"2968214\";\"Villié\";\"other\"\n\"2968220\";\"Villey-Saint-Étienne\";\"main\"\n\"2968220\";\"Villey-Saint-Etienne\";\"ascii\"\n\"2968220\";\"Villey\";\"other\"\n\"2968220\";\"Villey-sur-Moselle\";\"other\"\n\"2968227\";\"Villevocance\";\"main\"\n\"2968236\";\"Villevieille\";\"main\"\n\"2968236\";\"Ville Vielle\";\"other\"\n\"2968238\";\"Villeveyrac\";\"main\"\n\"2968242\";\"Villevêque\";\"main\"\n\"2968242\";\"Villeveque\";\"ascii\"\n\"2968242\";\"Port-du-Loir\";\"other\"\n\"2968249\";\"Villevaudé\";\"main\"\n\"2968249\";\"Villevaude\";\"ascii\"\n\"2968254\";\"Villeurbanne\";\"main\"\n\"2968254\";\"Villerban\";\"other\"\n\"2968254\";\"Виллербан\";\"other\"\n\"2968260\";\"Villette-de-Vienne\";\"main\"\n\"2968260\";\"Villette\";\"other\"\n\"2968274\";\"Villetelle\";\"main\"\n\"2968275\";\"Villetaneuse\";\"main\"\n\"2968290\";\"Villes-sur-Auzon\";\"main\"\n\"2968290\";\"Villes\";\"other\"\n\"2968293\";\"Ville-sous-la-Ferté\";\"main\"\n\"2968293\";\"Ville-sous-la-Ferte\";\"ascii\"\n\"2968293\";\"Ville\";\"other\"\n\"2968294\";\"Ville-sous-Anjou\";\"main\"\n\"2968294\";\"Ville\";\"other\"\n\"2968316\";\"Villerupt\";\"main\"\n\"2968325\";\"Villers-sur-Mer\";\"main\"\n\"2968325\";\"Villers\";\"other\"\n\"2968330\";\"Villers-sur-Coudun\";\"main\"\n\"2968330\";\"Villers\";\"other\"\n\"2968335\";\"Villers-sous-Saint-Leu\";\"main\"\n\"2968335\";\"Villers\";\"other\"\n\"2968335\";\"Villers-sur-Oise\";\"other\"\n\"2968346\";\"Villers-Semeuse\";\"main\"\n\"2968346\";\"Villers\";\"other\"\n\"2968346\";\"Villers-devant Mezieres\";\"other\"\n\"2968346\";\"Villers-devant Mézières\";\"other\"\n\"2968348\";\"Villers-Saint-Paul\";\"main\"\n\"2968348\";\"Villers\";\"other\"\n\"2968356\";\"Villers-Pol\";\"main\"\n\"2968360\";\"Villers-Outréaux\";\"main\"\n\"2968360\";\"Villers-Outreaux\";\"ascii\"\n\"2968368\";\"Villers-lès-Nancy\";\"main\"\n\"2968368\";\"Villers-les-Nancy\";\"ascii\"\n\"2968368\";\"Villers\";\"other\"\n\"2968379\";\"Villers-le-Lac\";\"main\"\n\"2968379\";\"Lac-ou-Villers\";\"other\"\n\"2968379\";\"Le Lac ou Villers\";\"other\"\n\"2968379\";\"Villers\";\"other\"\n\"2968382\";\"Villers-la-Montagne\";\"main\"\n\"2968382\";\"Villers\";\"other\"\n\"2968392\";\"Villersexel\";\"main\"\n\"2968398\";\"Villers-en-Cauchies\";\"main\"\n\"2968398\";\"Villers\";\"other\"\n\"2968401\";\"Villers-Écalles\";\"main\"\n\"2968401\";\"Villers-Ecalles\";\"ascii\"\n\"2968401\";\"Villers\";\"other\"\n\"2968401\";\"Villers-sous-Barentin\";\"other\"\n\"2968405\";\"Villers-Cotterêts\";\"main\"\n\"2968405\";\"Villers-Cotterets\";\"ascii\"\n\"2968415\";\"Villers-Bretonneux\";\"main\"\n\"2968418\";\"Villers-Bocage\";\"main\"\n\"2968418\";\"Villers\";\"other\"\n\"2968419\";\"Villers-Bocage\";\"main\"\n\"2968419\";\"Villers\";\"other\"\n\"2968453\";\"Villereversure\";\"main\"\n\"2968456\";\"Villerest\";\"main\"\n\"2968456\";\"Villeret\";\"other\"\n\"2968456\";\"Villerêt\";\"other\"\n\"2968463\";\"Villeréal\";\"main\"\n\"2968463\";\"Villereal\";\"ascii\"\n\"2968475\";\"Villepreux\";\"main\"\n\"2968482\";\"Villepinte\";\"main\"\n\"2968483\";\"Villepinte\";\"main\"\n\"2968496\";\"Villeparisis\";\"main\"\n\"2968496\";\"Vil'parizi\";\"other\"\n\"2968496\";\"Вильпаризи\";\"other\"\n\"2968502\";\"Villenoy\";\"main\"\n\"2968504\";\"Villenouvelle\";\"main\"\n\"2968507\";\"Villennes-sur-Seine\";\"main\"\n\"2968507\";\"Villennes\";\"other\"\n\"2968510\";\"Villeneuve-Tolosane\";\"main\"\n\"2968510\";\"Villeneuve\";\"other\"\n\"2968510\";\"Villeneuve-les Cugnax\";\"other\"\n\"2968511\";\"Villeneuve-sur-Yonne\";\"main\"\n\"2968511\";\"Villeneuve\";\"other\"\n\"2968515\";\"Villeneuve-sur-Lot\";\"main\"\n\"2968515\";\"Vil'nev-sjur-Lo\";\"other\"\n\"2968515\";\"Villeneuve\";\"other\"\n\"2968515\";\"Вильнев-сюр-Ло\";\"other\"\n\"2968519\";\"Villeneuve-sur-Bellot\";\"main\"\n\"2968519\";\"Bellot-la-Montagne\";\"other\"\n\"2968519\";\"Villeneuve\";\"other\"\n\"2968528\";\"Villeneuve-Saint-Germain\";\"main\"\n\"2968529\";\"Villeneuve-Saint-Georges\";\"main\"\n\"2968529\";\"Villeneuve\";\"other\"\n\"2968529\";\"Villeneuve-la-Montagne\";\"other\"\n\"2968533\";\"Villeneuve-Loubet\";\"main\"\n\"2968533\";\"Villeneuve\";\"other\"\n\"2968534\";\"Villeneuve-les-Sablons\";\"main\"\n\"2968534\";\"Villeneuve\";\"other\"\n\"2968536\";\"Villeneuve-lès-Maguelone\";\"main\"\n\"2968536\";\"Villeneuve-les-Maguelone\";\"ascii\"\n\"2968536\";\"Villeneuve\";\"other\"\n\"2968542\";\"Villeneuve-lès-Bouloc\";\"main\"\n\"2968542\";\"Villeneuve-les-Bouloc\";\"ascii\"\n\"2968542\";\"Villeneuve\";\"other\"\n\"2968544\";\"Villeneuve-lès-Béziers\";\"main\"\n\"2968544\";\"Villeneuve-les-Beziers\";\"ascii\"\n\"2968544\";\"Villeneuve\";\"other\"\n\"2968544\";\"Villeneuve les beziers\";\"other\"\n\"2968545\";\"Villeneuve-lès-Avignon\";\"main\"\n\"2968545\";\"Villeneuve-les-Avignon\";\"ascii\"\n\"2968545\";\"Villeneuve\";\"other\"\n\"2968545\";\"Villeneuve-lez-Avignon\";\"other\"\n\"2968546\";\"Villeneuve-le-Roi\";\"main\"\n\"2968546\";\"Villeneuve\";\"other\"\n\"2968546\";\"Villeneuve-sur-Seine\";\"other\"\n\"2968548\";\"Villeneuve-le-Comte\";\"main\"\n\"2968548\";\"Villeneuve\";\"other\"\n\"2968548\";\"Villeneuve-le-Peuple\";\"other\"\n\"2968548\";\"Villeneuve-les-Bordes\";\"other\"\n\"2968549\";\"Villeneuve-la-Rivière\";\"main\"\n\"2968549\";\"Villeneuve-la-Riviere\";\"ascii\"\n\"2968549\";\"Vilanova\";\"other\"\n\"2968549\";\"Villeneuve\";\"other\"\n\"2968549\";\"Villeneuve-de-la-Riviere\";\"other\"\n\"2968549\";\"Villeneuve-de-la-Rivière\";\"other\"\n\"2968554\";\"Villeneuve-la-Guyard\";\"main\"\n\"2968554\";\"Villeneuve\";\"other\"\n\"2968554\";\"Villeneuve-la-Guerre\";\"other\"\n\"2968555\";\"Villeneuve-la-Garenne\";\"main\"\n\"2968555\";\"Villeneuve\";\"other\"\n\"2968558\";\"Villeneuve-la-Comptal\";\"main\"\n\"2968558\";\"Villeneuve\";\"other\"\n\"2968566\";\"Villeneuve-de-Rivière\";\"main\"\n\"2968566\";\"Villeneuve-de-Riviere\";\"ascii\"\n\"2968566\";\"Villeneuve\";\"other\"\n\"2968569\";\"Villeneuve-de-Marsan\";\"main\"\n\"2968569\";\"Villeneuve\";\"other\"\n\"2968571\";\"Villeneuve-de-la-Raho\";\"main\"\n\"2968571\";\"Villeneuve\";\"other\"\n\"2968574\";\"Villeneuve-de-Berg\";\"main\"\n\"2968574\";\"Villeneuve\";\"other\"\n\"2968575\";\"Villeneuve\";\"main\"\n\"2968575\";\"Villeneuve-d'Aveyron\";\"other\"\n\"2968601\";\"Villeneuve\";\"main\"\n\"2968614\";\"Villeneuve\";\"main\"\n\"2968620\";\"Villenave-d'Ornon\";\"main\"\n\"2968620\";\"Vilanava\";\"other\"\n\"2968620\";\"Villenave\";\"other\"\n\"2968624\";\"Villenauxe-la-Grande\";\"main\"\n\"2968626\";\"Villemur-sur-Tarn\";\"main\"\n\"2968626\";\"Villemur\";\"other\"\n\"2968631\";\"Villemoustaussou\";\"main\"\n\"2968653\";\"Villemomble\";\"main\"\n\"2968653\";\"Villemonble\";\"other\"\n\"2968654\";\"Villemolaque\";\"main\"\n\"2968654\";\"Vilamulaca\";\"other\"\n\"2968655\";\"Villemoisson-sur-Orge\";\"main\"\n\"2968655\";\"Villemoisson\";\"other\"\n\"2968660\";\"Villemoirieu\";\"main\"\n\"2968662\";\"Villemeux-sur-Eure\";\"main\"\n\"2968662\";\"Villemeux\";\"other\"\n\"2968682\";\"Villemandeur\";\"main\"\n\"2968690\";\"Vilallonga dels Monts\";\"main\"\n\"2968690\";\"Vilallonga\";\"other\"\n\"2968690\";\"Villelongue-dels-Monts\";\"other\"\n\"2968691\";\"Villelongue-de-la-Salanque\";\"main\"\n\"2968691\";\"Villelongue\";\"other\"\n\"2968701\";\"Villelaure\";\"main\"\n\"2968703\";\"Ville-la-Grand\";\"main\"\n\"2968704\";\"Villejust\";\"main\"\n\"2968705\";\"Villejuif\";\"main\"\n\"2968726\";\"Villegouge\";\"main\"\n\"2968739\";\"Villegailhenc\";\"main\"\n\"2968744\";\"Villefranque\";\"main\"\n\"2968744\";\"Milafranga\";\"other\"\n\"2968744\";\"Tricolor\";\"other\"\n\"2968748\";\"Villefranche-sur-Saône\";\"main\"\n\"2968748\";\"Villefranche-sur-Saone\";\"ascii\"\n\"2968748\";\"Commune-Franche\";\"other\"\n\"2968748\";\"Vil'fransh-sjur-Son\";\"other\"\n\"2968748\";\"Ville-Libre-sur-Saone\";\"other\"\n\"2968748\";\"Ville-Libre-sur-Saône\";\"other\"\n\"2968748\";\"Villefranche\";\"other\"\n\"2968748\";\"Villefranche sobre Saona\";\"other\"\n\"2968748\";\"Вильфранш-сюр-Сон\";\"other\"\n\"2968749\";\"Villefranche-sur-Mer\";\"main\"\n\"2968749\";\"Villefranche\";\"other\"\n\"2968755\";\"Villefranche-de-Rouergue\";\"main\"\n\"2968755\";\"Vilafranca de Roergue\";\"other\"\n\"2968755\";\"Villefranche\";\"other\"\n\"2968758\";\"Villefranche-de-Lauragais\";\"main\"\n\"2968758\";\"Villefranche\";\"other\"\n\"2968765\";\"Villefranche-sur-Cher\";\"main\"\n\"2968771\";\"Villefontaine\";\"main\"\n\"2968781\";\"Villefagnan\";\"main\"\n\"2968797\";\"Villedômer\";\"main\"\n\"2968797\";\"Villedomer\";\"ascii\"\n\"2968800\";\"Villedieu-sur-Indre\";\"main\"\n\"2968800\";\"Verite\";\"other\"\n\"2968800\";\"Villedieu\";\"other\"\n\"2968800\";\"Vérité\";\"other\"\n\"2968801\";\"Villedieu-les-Poêles\";\"main\"\n\"2968801\";\"Villedieu-les-Poeles\";\"ascii\"\n\"2968801\";\"Villedieu\";\"other\"\n\"2968805\";\"Villedieu-la-Blouère\";\"main\"\n\"2968805\";\"Villedieu-la-Blouere\";\"ascii\"\n\"2968805\";\"Villedieu\";\"other\"\n\"2968819\";\"Ville-d'Avray\";\"main\"\n\"2968822\";\"Villecroze\";\"main\"\n\"2968823\";\"Villecresnes\";\"main\"\n\"2968855\";\"Villebret\";\"main\"\n\"2968861\";\"Villebon-sur-Yvette\";\"main\"\n\"2968861\";\"Villebon\";\"other\"\n\"2968867\";\"Villebois\";\"main\"\n\"2968869\";\"Villeblevin\";\"main\"\n\"2968869\";\"Vilbleven\";\"other\"\n\"2968869\";\"Вилблевен\";\"other\"\n\"2968873\";\"Villebernier\";\"main\"\n\"2968879\";\"Villebarou\";\"main\"\n\"2968879\";\"Commune-Barou\";\"other\"\n\"2968894\";\"Villé\";\"main\"\n\"2968894\";\"Ville\";\"ascii\"\n\"2968897\";\"Villaz\";\"main\"\n\"2968900\";\"Villaudric\";\"main\"\n\"2968917\";\"Villars-les-Dombes\";\"main\"\n\"2968917\";\"Villars\";\"other\"\n\"2968929\";\"Villar-Saint-Pancrace\";\"main\"\n\"2968929\";\"Villar\";\"other\"\n\"2968929\";\"Villard-Saint-Pancrace\";\"other\"\n\"2968935\";\"Villars\";\"main\"\n\"2968951\";\"Villargondran\";\"main\"\n\"2968984\";\"Villard-de-Lans\";\"main\"\n\"2968984\";\"Villard\";\"other\"\n\"2968985\";\"Villard-Bonnot\";\"main\"\n\"2968985\";\"Villard\";\"other\"\n\"2969013\";\"Villandry\";\"main\"\n\"2969032\";\"Villaines-la-Juhel\";\"main\"\n\"2969032\";\"Villaines\";\"other\"\n\"2969046\";\"Village-Neuf\";\"main\"\n\"2969058\";\"Villabé\";\"main\"\n\"2969058\";\"Villabe\";\"ascii\"\n\"2969073\";\"Vihiers\";\"main\"\n\"2969074\";\"Vigy\";\"main\"\n\"2969083\";\"Vigny\";\"main\"\n\"2969087\";\"Vignoux-sur-Barangeon\";\"main\"\n\"2969087\";\"Vignoux\";\"other\"\n\"2969092\";\"Vignot\";\"main\"\n\"2969105\";\"Vignoc\";\"main\"\n\"2969105\";\"Gwinieg\";\"other\"\n\"2969109\";\"Vigneux-sur-Seine\";\"main\"\n\"2969109\";\"Vigneux\";\"other\"\n\"2969111\";\"Vigneux-de-Bretagne\";\"main\"\n\"2969111\";\"Gwinieg-Breizh\";\"other\"\n\"2969111\";\"Vigneux\";\"other\"\n\"2969113\";\"Vigneulles-lès-Hattonchâtel\";\"main\"\n\"2969113\";\"Vigneulles-les-Hattonchatel\";\"ascii\"\n\"2969113\";\"Vigneulles\";\"other\"\n\"2969146\";\"Vignacourt\";\"main\"\n\"2969154\";\"Vigeois\";\"main\"\n\"2969160\";\"Vif\";\"main\"\n\"2969176\";\"Vieux-Thann\";\"main\"\n\"2969176\";\"Alt-Tann Mulhausen\";\"other\"\n\"2969176\";\"Alt-Thann\";\"other\"\n\"2969197\";\"Le Vieux-Marché\";\"main\"\n\"2969197\";\"Le Vieux-Marche\";\"ascii\"\n\"2969197\";\"Ar C'houerc'had\";\"other\"\n\"2969213\";\"Vieux-Condé\";\"main\"\n\"2969213\";\"Vieux-Conde\";\"ascii\"\n\"2969213\";\"Vieux-Nord-Libre\";\"other\"\n\"2969219\";\"Vieux-Charmont\";\"main\"\n\"2969233\";\"Vieux-Boucau-les-Bains\";\"main\"\n\"2969233\";\"Vieux-Boucau\";\"other\"\n\"2969234\";\"Vieux-Berquin\";\"main\"\n\"2969250\";\"Viesly\";\"main\"\n\"2969257\";\"Vierzon\";\"main\"\n\"2969257\";\"V'erzon\";\"other\"\n\"2969257\";\"Vierzon-Ville\";\"other\"\n\"2969257\";\"Вьерзон\";\"other\"\n\"2969276\";\"Vienne-en-Val\";\"main\"\n\"2969284\";\"Vienne\";\"main\"\n\"2969284\";\"V'enn\";\"other\"\n\"2969284\";\"Viana\";\"other\"\n\"2969284\";\"Viena\";\"other\"\n\"2969284\";\"Viena del Delfinat\";\"other\"\n\"2969284\";\"Vienne-la-Patriote\";\"other\"\n\"2969284\";\"Vièna\";\"other\"\n\"2969284\";\"Вьенн\";\"other\"\n\"2969285\";\"Viennay\";\"main\"\n\"2969291\";\"Vielmur-sur-Agout\";\"main\"\n\"2969299\";\"Vielle-Saint-Girons\";\"main\"\n\"2969316\";\"Vieillevigne\";\"main\"\n\"2969316\";\"Henwinieg\";\"other\"\n\"2969320\";\"Vieille-Toulouse\";\"main\"\n\"2969329\";\"Vieille-Église\";\"main\"\n\"2969329\";\"Vieille-Eglise\";\"ascii\"\n\"2969329\";\"L'Indivisible\";\"other\"\n\"2969333\";\"Vieille-Brioude\";\"main\"\n\"2969353\";\"Vidauban\";\"main\"\n\"2969364\";\"Vic-sur-Seille\";\"main\"\n\"2969364\";\"Vic\";\"other\"\n\"2969365\";\"Vic-sur-Cère\";\"main\"\n\"2969365\";\"Vic-sur-Cere\";\"ascii\"\n\"2969365\";\"Vic\";\"other\"\n\"2969366\";\"Vic-sur-Aisne\";\"main\"\n\"2969366\";\"Vic\";\"other\"\n\"2969373\";\"Vicq-sur-Breuilh\";\"main\"\n\"2969373\";\"Vicq\";\"other\"\n\"2969376\";\"Vicq\";\"main\"\n\"2969388\";\"Vic-le-Comte\";\"main\"\n\"2969388\";\"Vic-sur-Allier\";\"other\"\n\"2969389\";\"Vic-la-Gardiole\";\"main\"\n\"2969389\";\"Vic\";\"other\"\n\"2969392\";\"Vichy\";\"main\"\n\"2969392\";\"Vishi\";\"other\"\n\"2969392\";\"Виши\";\"other\"\n\"2969400\";\"Vic-Fezensac\";\"main\"\n\"2969400\";\"Vic-sur-l'Osse\";\"other\"\n\"2969401\";\"Vic-en-Bigorre\";\"main\"\n\"2969401\";\"Vic\";\"other\"\n\"2969401\";\"Vic-de Bigorre\";\"other\"\n\"2969411\";\"Vibraye\";\"main\"\n\"2969421\";\"Vias\";\"main\"\n\"2969423\";\"Viarmes\";\"main\"\n\"2969427\";\"Vianne\";\"main\"\n\"2969463\";\"Vezins\";\"main\"\n\"2969463\";\"Chalain\";\"other\"\n\"2969465\";\"Vezin-le-Coquet\";\"main\"\n\"2969465\";\"Gwezin\";\"other\"\n\"2969465\";\"Vezin\";\"other\"\n\"2969474\";\"Vézénobres\";\"main\"\n\"2969474\";\"Vezenobres\";\"ascii\"\n\"2969477\";\"Vézelise\";\"main\"\n\"2969477\";\"Vezelise\";\"ascii\"\n\"2969502\";\"Veyrier-du-Lac\";\"main\"\n\"2969502\";\"Veyrier\";\"other\"\n\"2969506\";\"Veyre-Monton\";\"main\"\n\"2969506\";\"Veyre\";\"other\"\n\"2969512\";\"Veyras\";\"main\"\n\"2969514\";\"Veyrac\";\"main\"\n\"2969516\";\"Veynes\";\"main\"\n\"2969532\";\"Veurey-Voroize\";\"main\"\n\"2969532\";\"Veurey\";\"other\"\n\"2969543\";\"Vétraz-Monthoux\";\"main\"\n\"2969543\";\"Vetraz-Monthoux\";\"ascii\"\n\"2969556\";\"Vestric-et-Candiac\";\"main\"\n\"2969556\";\"Vestric\";\"other\"\n\"2969559\";\"Vesseaux\";\"main\"\n\"2969562\";\"Vesoul\";\"main\"\n\"2969562\";\"vuzu\";\"other\"\n\"2969562\";\"ヴズー\";\"other\"\n\"2969578\";\"Vescovato\";\"main\"\n\"2969587\";\"Verzy\";\"main\"\n\"2969590\";\"Verzenay\";\"main\"\n\"2969599\";\"Vervins\";\"main\"\n\"2969607\";\"Vertus\";\"main\"\n\"2969608\";\"Vert-Saint-Denis\";\"main\"\n\"2969612\";\"Vertou\";\"main\"\n\"2969612\";\"Gwerzhav\";\"other\"\n\"2969613\";\"Verton\";\"main\"\n\"2969616\";\"Vert-le-Petit\";\"main\"\n\"2969617\";\"Vert-le-Grand\";\"main\"\n\"2969622\";\"Vertheuil\";\"main\"\n\"2969622\";\"Vertheuil-en-Medoc\";\"other\"\n\"2969622\";\"Vertheuil-en-Médoc\";\"other\"\n\"2969628\";\"Vert-en-Drouais\";\"main\"\n\"2969628\";\"Vert\";\"other\"\n\"2969646\";\"Vertaizon\";\"main\"\n\"2969657\";\"Ver-sur-Mer\";\"main\"\n\"2969657\";\"Ver\";\"other\"\n\"2969658\";\"Ver-sur-Launette\";\"main\"\n\"2969658\";\"Ver\";\"other\"\n\"2969664\";\"Versonnex\";\"main\"\n\"2969665\";\"Verson\";\"main\"\n\"2969679\";\"Versailles\";\"main\"\n\"2969679\";\"Berceau-de-la-Liberte\";\"other\"\n\"2969679\";\"Berceau-de-la-Liberté\";\"other\"\n\"2969679\";\"Bersallies\";\"other\"\n\"2969679\";\"Versaj\";\"other\"\n\"2969679\";\"Versajlo\";\"other\"\n\"2969679\";\"Versal'\";\"other\"\n\"2969679\";\"Versalhes\";\"other\"\n\"2969679\";\"Versalia\";\"other\"\n\"2969679\";\"Versaliae\";\"other\"\n\"2969679\";\"Versalis\";\"other\"\n\"2969679\";\"Versalles\";\"other\"\n\"2969679\";\"Wersal\";\"other\"\n\"2969679\";\"beleusayu\";\"other\"\n\"2969679\";\"vu~erusaiyu\";\"other\"\n\"2969679\";\"Βερσαλλίες\";\"other\"\n\"2969679\";\"Версай\";\"other\"\n\"2969679\";\"Версаль\";\"other\"\n\"2969679\";\"ורסאי\";\"other\"\n\"2969679\";\"ヴェルサイユ\";\"other\"\n\"2969679\";\"베르사유\";\"other\"\n\"2969692\";\"Verrières-le-Buisson\";\"main\"\n\"2969692\";\"Verrieres-le-Buisson\";\"ascii\"\n\"2969692\";\"Verrieres\";\"other\"\n\"2969692\";\"Verrières\";\"other\"\n\"2969700\";\"Verrières\";\"main\"\n\"2969700\";\"Verrieres\";\"ascii\"\n\"2969722\";\"Verquin\";\"main\"\n\"2969734\";\"Véron\";\"main\"\n\"2969734\";\"Veron\";\"ascii\"\n\"2969736\";\"Verny\";\"main\"\n\"2969741\";\"Vern-sur-Seiche\";\"main\"\n\"2969741\";\"Gwern-ar-Sec'h\";\"other\"\n\"2969741\";\"Vern\";\"other\"\n\"2969746\";\"Vernoux-en-Vivarais\";\"main\"\n\"2969746\";\"Vernoux\";\"other\"\n\"2969746\";\"Vernoux-d'Ardeche\";\"other\"\n\"2969746\";\"Vernoux-d'Ardèche\";\"other\"\n\"2969749\";\"Vernou-la-Celle-sur-Seine\";\"main\"\n\"2969749\";\"Vernou\";\"other\"\n\"2969750\";\"Vernou-sur-Brenne\";\"main\"\n\"2969750\";\"Vernou\";\"other\"\n\"2969751\";\"Vernouillet\";\"main\"\n\"2969752\";\"Vernouillet\";\"main\"\n\"2969758\";\"Vernosc-lès-Annonay\";\"main\"\n\"2969758\";\"Vernosc-les-Annonay\";\"ascii\"\n\"2969758\";\"Vernosc\";\"other\"\n\"2969766\";\"Vernon\";\"main\"\n\"2969776\";\"Vernoil-le-Fourrier\";\"main\"\n\"2969776\";\"Vernoil\";\"other\"\n\"2969780\";\"Vernioz\";\"main\"\n\"2969781\";\"Verniolle\";\"main\"\n\"2969794\";\"Verneuil-sur-Vienne\";\"main\"\n\"2969794\";\"Verneuil\";\"other\"\n\"2969796\";\"Verneuil-sur-Seine\";\"main\"\n\"2969796\";\"Verneuil\";\"other\"\n\"2969799\";\"Verneuil-sur-Avre\";\"main\"\n\"2969799\";\"Verneuil\";\"other\"\n\"2969806\";\"Verneuil-en-Halatte\";\"main\"\n\"2969806\";\"Verneuil\";\"other\"\n\"2969806\";\"Verneuil-sur-Oise\";\"other\"\n\"2969817\";\"Vernet-les-Bains\";\"main\"\n\"2969817\";\"Vernet\";\"other\"\n\"2969832\";\"Vernègues\";\"main\"\n\"2969832\";\"Vernegues\";\"ascii\"\n\"2969850\";\"Vernantes\";\"main\"\n\"2969854\";\"Vernaison\";\"main\"\n\"2969863\";\"Vermenton\";\"main\"\n\"2969864\";\"Vermelles\";\"main\"\n\"2969868\";\"Vermand\";\"main\"\n\"2969871\";\"Verlinghem\";\"main\"\n\"2969885\";\"Vérines\";\"main\"\n\"2969885\";\"Verines\";\"ascii\"\n\"2969899\";\"Vergt\";\"main\"\n\"2969905\";\"Vergongheon\";\"main\"\n\"2969926\";\"Vergigny\";\"main\"\n\"2969930\";\"Vergèze\";\"main\"\n\"2969930\";\"Vergeze\";\"ascii\"\n\"2969944\";\"Verfeil\";\"main\"\n\"2969947\";\"Véretz\";\"main\"\n\"2969947\";\"Veretz\";\"ascii\"\n\"2969958\";\"Verdun\";\"main\"\n\"2969958\";\"Verdan\";\"other\"\n\"2969958\";\"Verden\";\"other\"\n\"2969958\";\"Verdun-sur-Meuse\";\"other\"\n\"2969958\";\"vu~erudan\";\"other\"\n\"2969958\";\"Вердан\";\"other\"\n\"2969958\";\"Верден\";\"other\"\n\"2969958\";\"ヴェルダン\";\"other\"\n\"2969959\";\"Verdun-sur-le-Doubs\";\"main\"\n\"2969959\";\"Verdun\";\"other\"\n\"2969960\";\"Verdun-sur-Garonne\";\"main\"\n\"2969960\";\"Verdun\";\"other\"\n\"2970016\";\"Vercel-Villedieu-le-Camp\";\"main\"\n\"2970016\";\"Campdu Vercel\";\"other\"\n\"2970016\";\"Vercel\";\"other\"\n\"2970018\";\"Verberie\";\"main\"\n\"2970033\";\"Ventiseri\";\"main\"\n\"2970054\";\"Ventabren\";\"main\"\n\"2970061\";\"Venoy\";\"main\"\n\"2970068\";\"Vennecy\";\"main\"\n\"2970071\";\"Venizel\";\"main\"\n\"2970072\";\"Vénissieux\";\"main\"\n\"2970072\";\"Venissieux\";\"ascii\"\n\"2970072\";\"Venis'e\";\"other\"\n\"2970072\";\"Венисье\";\"other\"\n\"2970080\";\"Veneux-les-Sablons\";\"main\"\n\"2970080\";\"Veneux\";\"other\"\n\"2970081\";\"Venette\";\"main\"\n\"2970086\";\"Venerque\";\"main\"\n\"2970092\";\"Venelles\";\"main\"\n\"2970095\";\"Vénéjan\";\"main\"\n\"2970095\";\"Venejan\";\"ascii\"\n\"2970104\";\"Vendres\";\"main\"\n\"2970105\";\"Vendrennes\";\"main\"\n\"2970110\";\"Vendôme\";\"main\"\n\"2970110\";\"Vendome\";\"ascii\"\n\"2970110\";\"Vendome-Regenere\";\"other\"\n\"2970110\";\"Vendôme-Regénéré\";\"other\"\n\"2970112\";\"Vendœuvres\";\"main\"\n\"2970112\";\"Vendoeuvres\";\"ascii\"\n\"2970113\";\"Vendin-le-Vieil\";\"main\"\n\"2970113\";\"Vendin\";\"other\"\n\"2970113\";\"Vendin Le Veil\";\"other\"\n\"2970114\";\"Vendin-lès-Béthune\";\"main\"\n\"2970114\";\"Vendin-les-Bethune\";\"ascii\"\n\"2970114\";\"Vendin\";\"other\"\n\"2970118\";\"Vendeville\";\"main\"\n\"2970119\";\"Vendeuvre-sur-Barse\";\"main\"\n\"2970119\";\"Vendeuvre\";\"other\"\n\"2970120\";\"Vendeuvre-du-Poitou\";\"main\"\n\"2970120\";\"Vendeuvre\";\"other\"\n\"2970128\";\"Vendenheim\";\"main\"\n\"2970137\";\"Vendegies-sur-Écaillon\";\"main\"\n\"2970137\";\"Vendegies-sur-Ecaillon\";\"ascii\"\n\"2970137\";\"Vendegies\";\"other\"\n\"2970143\";\"Vendat\";\"main\"\n\"2970144\";\"Vendargues\";\"main\"\n\"2970148\";\"Vence\";\"main\"\n\"2970151\";\"Venasque\";\"main\"\n\"2970154\";\"Venarey-les-Laumes\";\"main\"\n\"2970154\";\"Venarey\";\"other\"\n\"2970157\";\"Venansault\";\"main\"\n\"2970163\";\"Vémars\";\"main\"\n\"2970163\";\"Vemars\";\"ascii\"\n\"2970187\";\"Velleron\";\"main\"\n\"2970203\";\"Vélizy-Villacoublay\";\"main\"\n\"2970203\";\"Velizy-Villacoublay\";\"ascii\"\n\"2970203\";\"Velizy\";\"other\"\n\"2970203\";\"Villacoublay\";\"other\"\n\"2970203\";\"Vélizy\";\"other\"\n\"2970205\";\"Vélines\";\"main\"\n\"2970205\";\"Velines\";\"ascii\"\n\"2970216\";\"Velaux\";\"main\"\n\"2970217\";\"Velars-sur-Ouche\";\"main\"\n\"2970217\";\"Velars\";\"other\"\n\"2970224\";\"Velaines\";\"main\"\n\"2970225\";\"Velaine-en-Haye\";\"main\"\n\"2970225\";\"Velaine\";\"other\"\n\"2970236\";\"Veigy-Foncenex\";\"main\"\n\"2970236\";\"Veigy\";\"other\"\n\"2970237\";\"Veigné\";\"main\"\n\"2970237\";\"Veigne\";\"ascii\"\n\"2970253\";\"Vedène\";\"main\"\n\"2970253\";\"Vedene\";\"ascii\"\n\"2970253\";\"Vedenes\";\"other\"\n\"2970253\";\"Vedènes\";\"other\"\n\"2970256\";\"Vecoux\";\"main\"\n\"2970275\";\"Veauche\";\"main\"\n\"2970287\";\"Vayres\";\"main\"\n\"2970288\";\"Vayrac\";\"main\"\n\"2970293\";\"Vay\";\"main\"\n\"2970293\";\"Gwez\";\"other\"\n\"2970313\";\"Vaux-sur-Seine\";\"main\"\n\"2970313\";\"Vaux\";\"other\"\n\"2970317\";\"Vaux-sur-Mer\";\"main\"\n\"2970317\";\"Vaux\";\"other\"\n\"2970338\";\"Vaux-le-Pénil\";\"main\"\n\"2970338\";\"Vaux-le-Penil\";\"ascii\"\n\"2970338\";\"Vaux\";\"other\"\n\"2970351\";\"Vaux-en-Bugey\";\"main\"\n\"2970351\";\"Vaux\";\"other\"\n\"2970407\";\"Vauvert\";\"main\"\n\"2970432\";\"Vauréal\";\"main\"\n\"2970432\";\"Vaureal\";\"ascii\"\n\"2970432\";\"Lieux\";\"other\"\n\"2970448\";\"Vaumoise\";\"main\"\n\"2970453\";\"Vaulx-Vraucourt\";\"main\"\n\"2970453\";\"Vaulx\";\"other\"\n\"2970455\";\"Vaulx-Milieu\";\"main\"\n\"2970456\";\"Vaulx-en-Velin\";\"main\"\n\"2970456\";\"Vaulx\";\"other\"\n\"2970462\";\"Vaulnaveys-le-Haut\";\"main\"\n\"2970462\";\"Vaulnaveys\";\"other\"\n\"2970463\";\"Vaulnaveys-le-Bas\";\"main\"\n\"2970463\";\"Vaulnaveys\";\"other\"\n\"2970469\";\"Vaujours\";\"main\"\n\"2970472\";\"Vauhallan\";\"main\"\n\"2970474\";\"Vaugrigneuse\";\"main\"\n\"2970477\";\"Vaugneray\";\"main\"\n\"2970495\";\"Vaudry\";\"main\"\n\"2970534\";\"Vaudelnay\";\"main\"\n\"2970534\";\"Vaudelenay\";\"other\"\n\"2970540\";\"Vaucresson\";\"main\"\n\"2970546\";\"Vaucouleurs\";\"main\"\n\"2970564\";\"Vauchrétien\";\"main\"\n\"2970564\";\"Vauchretien\";\"ascii\"\n\"2970606\";\"Vatan\";\"main\"\n\"2970606\";\"Watan\";\"other\"\n\"2970610\";\"Vassy\";\"main\"\n\"2970627\";\"Vasselay\";\"main\"\n\"2970634\";\"Vasles\";\"main\"\n\"2970637\";\"Varzy\";\"main\"\n\"2970648\";\"Vars\";\"main\"\n\"2970650\";\"Varreddes\";\"main\"\n\"2970651\";\"Varrains\";\"main\"\n\"2970653\";\"Varois-et-Chaignot\";\"main\"\n\"2970653\";\"Varois\";\"other\"\n\"2970669\";\"Varilhes\";\"main\"\n\"2970673\";\"Varetz\";\"main\"\n\"2970673\";\"Varets\";\"other\"\n\"2970679\";\"Varennes-sur-Seine\";\"main\"\n\"2970679\";\"Varennes\";\"other\"\n\"2970681\";\"Varennes-sur-Loire\";\"main\"\n\"2970681\";\"Varennes\";\"other\"\n\"2970685\";\"Varennes-sur-Allier\";\"main\"\n\"2970685\";\"Varennes\";\"other\"\n\"2970687\";\"Varennes-Saint-Sauveur\";\"main\"\n\"2970687\";\"Varenne-Saint-Sauveur\";\"other\"\n\"2970687\";\"Varennes\";\"other\"\n\"2970687\";\"Varennes-sur-Sevron\";\"other\"\n\"2970692\";\"Varennes-le-Grand\";\"main\"\n\"2970692\";\"Varennes\";\"other\"\n\"2970693\";\"Varennes-Jarcy\";\"main\"\n\"2970725\";\"Varengeville-sur-Mer\";\"main\"\n\"2970725\";\"Varengeville\";\"other\"\n\"2970739\";\"Varangéville\";\"main\"\n\"2970739\";\"Varangeville\";\"ascii\"\n\"2970747\";\"Varades\";\"main\"\n\"2970747\";\"Gwared\";\"other\"\n\"2970761\";\"Vanves\";\"main\"\n\"2970777\";\"Vannes\";\"main\"\n\"2970777\";\"Gwened\";\"other\"\n\"2970777\";\"Vann\";\"other\"\n\"2970777\";\"Venetens\";\"other\"\n\"2970777\";\"vu~an'nu\";\"other\"\n\"2970777\";\"Ванн\";\"other\"\n\"2970777\";\"ヴァンヌ\";\"other\"\n\"2970797\";\"Vandœuvre-lès-Nancy\";\"main\"\n\"2970797\";\"Vandoeuvre-les-Nancy\";\"ascii\"\n\"2970797\";\"Vandoeuvre\";\"other\"\n\"2970826\";\"Vals-près-le-Puy\";\"main\"\n\"2970826\";\"Vals-pres-le-Puy\";\"ascii\"\n\"2970826\";\"Vals\";\"other\"\n\"2970828\";\"Vals-les-Bains\";\"main\"\n\"2970828\";\"Vals\";\"other\"\n\"2970837\";\"Valros\";\"main\"\n\"2970838\";\"Valréas\";\"main\"\n\"2970838\";\"Valreas\";\"ascii\"\n\"2970839\";\"Valras-Plage\";\"main\"\n\"2970839\";\"Valras\";\"other\"\n\"2970860\";\"Valognes\";\"main\"\n\"2970865\";\"Valmont\";\"main\"\n\"2970866\";\"Valmondois\";\"main\"\n\"2970889\";\"Vallon-en-Sully\";\"main\"\n\"2970889\";\"Vallon\";\"other\"\n\"2970899\";\"Valloire\";\"main\"\n\"2970901\";\"Valliquerville\";\"main\"\n\"2970911\";\"Vallières\";\"main\"\n\"2970911\";\"Vallieres\";\"ascii\"\n\"2970923\";\"Vallet\";\"main\"\n\"2970923\";\"Gwaled\";\"other\"\n\"2970932\";\"Valleroy\";\"main\"\n\"2970941\";\"Valleraugue\";\"main\"\n\"2970948\";\"Valleiry\";\"main\"\n\"2970962\";\"Vallauris\";\"main\"\n\"2970978\";\"Vallabrègues\";\"main\"\n\"2970978\";\"Vallabregues\";\"ascii\"\n\"2971000\";\"Valframbert\";\"main\"\n\"2971006\";\"Valfin-lès-Saint-Claude\";\"main\"\n\"2971006\";\"Valfin-les-Saint-Claude\";\"ascii\"\n\"2971006\";\"Condat-Montagne\";\"other\"\n\"2971006\";\"Valfin\";\"other\"\n\"2971007\";\"Valff\";\"main\"\n\"2971025\";\"Valergues\";\"main\"\n\"2971027\";\"Valenton\";\"main\"\n\"2971030\";\"Valentigney\";\"main\"\n\"2971033\";\"Valensole\";\"main\"\n\"2971033\";\"Valesole\";\"other\"\n\"2971039\";\"Valencin\";\"main\"\n\"2971041\";\"Valenciennes\";\"main\"\n\"2971041\";\"Valans'en\";\"other\"\n\"2971041\";\"Valansien\";\"other\"\n\"2971041\";\"wa lang xie ne\";\"other\"\n\"2971041\";\"Валансиен\";\"other\"\n\"2971041\";\"Валансьен\";\"other\"\n\"2971041\";\"ואלנסיין\";\"other\"\n\"2971041\";\"瓦朗謝訥\";\"other\"\n\"2971043\";\"Valence-sur-Baïse\";\"main\"\n\"2971043\";\"Valence-sur-Baise\";\"ascii\"\n\"2971043\";\"Valence\";\"other\"\n\"2971053\";\"Valence\";\"main\"\n\"2971053\";\"Valenca\";\"other\"\n\"2971053\";\"Valencia\";\"other\"\n\"2971053\";\"Valença\";\"other\"\n\"2971053\";\"valansa\";\"other\"\n\"2971053\";\"vu~aransu\";\"other\"\n\"2971053\";\"वलांस\";\"other\"\n\"2971053\";\"ヴァランス\";\"other\"\n\"2971054\";\"Valence\";\"main\"\n\"2971054\";\"Valence-d'Agen\";\"other\"\n\"2971056\";\"Valençay\";\"main\"\n\"2971056\";\"Valencay\";\"ascii\"\n\"2971072\";\"Valdoie\";\"main\"\n\"2971074\";\"Val-d'Isère\";\"main\"\n\"2971074\";\"Val-d'Isere\";\"ascii\"\n\"2971074\";\"Laval\";\"other\"\n\"2971074\";\"Val d Isere\";\"other\"\n\"2971074\";\"Val d'Isere\";\"other\"\n\"2971074\";\"Val d'Isère\";\"other\"\n\"2971074\";\"Val'd'Izer\";\"other\"\n\"2971074\";\"Валь д'Изер\";\"other\"\n\"2971117\";\"Valbonne\";\"main\"\n\"2971137\";\"Valady\";\"main\"\n\"2971147\";\"Vaivre-et-Montoille\";\"main\"\n\"2971147\";\"Vaivre\";\"other\"\n\"2971154\";\"Vaison-la-Romaine\";\"main\"\n\"2971154\";\"Vaison\";\"other\"\n\"2971154\";\"vu~ezon=ra=romenu\";\"other\"\n\"2971154\";\"ヴェゾン＝ラ＝ロメーヌ\";\"other\"\n\"2971157\";\"Vaires-sur-Marne\";\"main\"\n\"2971157\";\"Vaires\";\"other\"\n\"2971162\";\"Vairé\";\"main\"\n\"2971162\";\"Vaire\";\"ascii\"\n\"2971162\";\"Varie\";\"other\"\n\"2971162\";\"Varié\";\"other\"\n\"2971169\";\"Vailly-sur-Aisne\";\"main\"\n\"2971169\";\"Vailly\";\"other\"\n\"2971176\";\"Vailhauquès\";\"main\"\n\"2971176\";\"Vailhauques\";\"ascii\"\n\"2971179\";\"Vaiges\";\"main\"\n\"2971186\";\"Vagney\";\"main\"\n\"2971202\";\"Vacquiers\";\"main\"\n\"2971205\";\"Vacqueyras\";\"main\"\n\"2971205\";\"Vacquevras\";\"other\"\n\"2971211\";\"Vacon\";\"main\"\n\"2971251\";\"Vaas\";\"main\"\n\"2971258\";\"Uzès\";\"main\"\n\"2971258\";\"Uzes\";\"ascii\"\n\"2971258\";\"Firmin-les-Uzes\";\"other\"\n\"2971258\";\"Firmin-les-Uzés\";\"other\"\n\"2971258\";\"Uses\";\"other\"\n\"2971258\";\"Usès\";\"other\"\n\"2971258\";\"Uzes-la-Montagne\";\"other\"\n\"2971258\";\"Uzès-la-Montagne\";\"other\"\n\"2971259\";\"Uzerche\";\"main\"\n\"2971259\";\"Faubourg-Egalite\";\"other\"\n\"2971259\";\"Faubourg-Egalité\";\"other\"\n\"2971262\";\"Uzemain\";\"main\"\n\"2971265\";\"Uzein\";\"main\"\n\"2971272\";\"Uxem\";\"main\"\n\"2971274\";\"Uxegney\";\"main\"\n\"2971274\";\"Uxegny\";\"other\"\n\"2971286\";\"Ustaritz\";\"main\"\n\"2971286\";\"Marat-sur-Nive\";\"other\"\n\"2971286\";\"Uztaritze\";\"other\"\n\"2971290\";\"Usson-en-Forez\";\"main\"\n\"2971290\";\"Usson\";\"other\"\n\"2971291\";\"Usson-du-Poitou\";\"main\"\n\"2971291\";\"Usson\";\"other\"\n\"2971298\";\"Ussel\";\"main\"\n\"2971305\";\"Ussac\";\"main\"\n\"2971316\";\"Us\";\"main\"\n\"2971317\";\"Urzy\";\"main\"\n\"2971321\";\"Urville-Nacqueville\";\"main\"\n\"2971321\";\"Urville\";\"other\"\n\"2971321\";\"Urville-Hague\";\"other\"\n\"2971333\";\"Urt\";\"main\"\n\"2971333\";\"Ahurti\";\"other\"\n\"2971333\";\"Liberte\";\"other\"\n\"2971333\";\"Liberté\";\"other\"\n\"2971336\";\"Urrugne\";\"main\"\n\"2971336\";\"Urruna\";\"other\"\n\"2971336\";\"Urruña\";\"other\"\n\"2971340\";\"Urmatt\";\"main\"\n\"2971344\";\"Uriménil\";\"main\"\n\"2971344\";\"Urimenil\";\"ascii\"\n\"2971357\";\"Urcuit\";\"main\"\n\"2971357\";\"Le Laurier\";\"other\"\n\"2971357\";\"Urketa\";\"other\"\n\"2971372\";\"Upie\";\"main\"\n\"2971375\";\"Unverre\";\"main\"\n\"2971377\";\"Unieux\";\"main\"\n\"2971377\";\"Unieux-Firminy\";\"other\"\n\"2971380\";\"Ungersheim\";\"main\"\n\"2971386\";\"Ully-Saint-Georges\";\"main\"\n\"2971386\";\"Ully\";\"other\"\n\"2971399\";\"Ugine\";\"main\"\n\"2971399\";\"Ugines\";\"other\"\n\"2971401\";\"Uffholtz\";\"main\"\n\"2971407\";\"Uckange\";\"main\"\n\"2971411\";\"Uchaux\";\"main\"\n\"2971412\";\"Uchaud\";\"main\"\n\"2971418\";\"Uberach\";\"main\"\n\"2971418\";\"Ueberach\";\"other\"\n\"2971446\";\"Turretot\";\"main\"\n\"2971469\";\"Turckheim\";\"main\"\n\"2971480\";\"Tullins\";\"main\"\n\"2971482\";\"Tulle\";\"main\"\n\"2971482\";\"Tjul'\";\"other\"\n\"2971482\";\"Tula\";\"other\"\n\"2971482\";\"Tyll\";\"other\"\n\"2971482\";\"churu\";\"other\"\n\"2971482\";\"Тюль\";\"other\"\n\"2971482\";\"チュール\";\"other\"\n\"2971483\";\"Tulette\";\"main\"\n\"2971493\";\"Tuffé\";\"main\"\n\"2971493\";\"Tuffe\";\"ascii\"\n\"2971504\";\"Tucquegnieux\";\"main\"\n\"2971515\";\"Truyes\";\"main\"\n\"2971521\";\"Trun\";\"main\"\n\"2971536\";\"Truchtersheim\";\"main\"\n\"2971549\";\"Troyes\";\"main\"\n\"2971549\";\"Trua\";\"other\"\n\"2971549\";\"te lu wa\";\"other\"\n\"2971549\";\"torowa\";\"other\"\n\"2971549\";\"trwa\";\"other\"\n\"2971549\";\"Труа\";\"other\"\n\"2971549\";\"تروا\";\"other\"\n\"2971549\";\"トロワ\";\"other\"\n\"2971549\";\"特鲁瓦\";\"other\"\n\"2971553\";\"Trouy\";\"main\"\n\"2971555\";\"Trouville-sur-Mer\";\"main\"\n\"2971555\";\"Deauville-Trouville\";\"other\"\n\"2971555\";\"Trouville\";\"other\"\n\"2971555\";\"Truvil'-Sjur-Mer\";\"other\"\n\"2971555\";\"Трувиль-Сюр-Мер\";\"other\"\n\"2971568\";\"Trouillas\";\"main\"\n\"2971580\";\"Trosly-Breuil\";\"main\"\n\"2971580\";\"Trosly\";\"other\"\n\"2971582\";\"Tronville-en-Barrois\";\"main\"\n\"2971582\";\"Tronville\";\"other\"\n\"2971616\";\"Troissereux\";\"main\"\n\"2971641\";\"Troarn\";\"main\"\n\"2971645\";\"Trizay\";\"main\"\n\"2971651\";\"Trith-Saint-Léger\";\"main\"\n\"2971651\";\"Trith-Saint-Leger\";\"ascii\"\n\"2971651\";\"Trith\";\"other\"\n\"2971673\";\"Trilport\";\"main\"\n\"2971676\";\"Triguères\";\"main\"\n\"2971676\";\"Trigueres\";\"ascii\"\n\"2971680\";\"Trignac\";\"main\"\n\"2971680\";\"Trinieg\";\"other\"\n\"2971686\";\"Trieux\";\"main\"\n\"2971689\";\"Triel-sur-Seine\";\"main\"\n\"2971689\";\"Triel\";\"other\"\n\"2971692\";\"Trie-Château\";\"main\"\n\"2971692\";\"Trie-Chateau\";\"ascii\"\n\"2971692\";\"Trye-sur-Troesne\";\"other\"\n\"2971693\";\"Trie-sur-Baïse\";\"main\"\n\"2971693\";\"Trie-sur-Baise\";\"ascii\"\n\"2971693\";\"Trie\";\"other\"\n\"2971694\";\"Tricot\";\"main\"\n\"2971704\";\"Triaize\";\"main\"\n\"2971722\";\"Trévoux\";\"main\"\n\"2971722\";\"Trevoux\";\"ascii\"\n\"2971723\";\"Trévou-Tréguignec\";\"main\"\n\"2971723\";\"Trevou-Treguignec\";\"ascii\"\n\"2971723\";\"An Trevou\";\"other\"\n\"2971723\";\"An Trevoù\";\"other\"\n\"2971725\";\"Trévol\";\"main\"\n\"2971725\";\"Trevol\";\"ascii\"\n\"2971751\";\"Trévé\";\"main\"\n\"2971751\";\"Treve\";\"ascii\"\n\"2971765\";\"Trets\";\"main\"\n\"2971771\";\"Tressin\";\"main\"\n\"2971773\";\"Tresses\";\"main\"\n\"2971774\";\"Tresserve\";\"main\"\n\"2971774\";\"Tresserves\";\"other\"\n\"2971777\";\"Tressange\";\"main\"\n\"2971782\";\"Tresques\";\"main\"\n\"2971796\";\"Tresbœuf\";\"main\"\n\"2971796\";\"Tresboeuf\";\"ascii\"\n\"2971796\";\"Trevo\";\"other\"\n\"2971799\";\"Trept\";\"main\"\n\"2971810\";\"Tréon\";\"main\"\n\"2971810\";\"Treon\";\"ascii\"\n\"2971825\";\"Trémuson\";\"main\"\n\"2971825\";\"Tremuson\";\"ascii\"\n\"2971825\";\"Tremuzon\";\"other\"\n\"2971856\";\"Tréméven\";\"main\"\n\"2971856\";\"Tremeven\";\"ascii\"\n\"2971856\";\"Tremeven-Kemperle\";\"other\"\n\"2971858\";\"Trémery\";\"main\"\n\"2971858\";\"Tremery\";\"ascii\"\n\"2971861\";\"Trémentines\";\"main\"\n\"2971861\";\"Trementines\";\"ascii\"\n\"2971874\";\"Tremblay-en-France\";\"main\"\n\"2971874\";\"Tremblay-sans-Culottes\";\"other\"\n\"2971876\";\"Tremblay\";\"main\"\n\"2971876\";\"Kreneg\";\"other\"\n\"2971887\";\"Trélon\";\"main\"\n\"2971887\";\"Trelon\";\"ascii\"\n\"2971889\";\"Trélivan\";\"main\"\n\"2971889\";\"Trelivan\";\"ascii\"\n\"2971890\";\"Trélissac\";\"main\"\n\"2971890\";\"Trelissac\";\"ascii\"\n\"2971893\";\"Trélévern\";\"main\"\n\"2971893\";\"Trelevern\";\"ascii\"\n\"2971893\";\"Trelêvern\";\"other\"\n\"2971896\";\"Trélazé\";\"main\"\n\"2971896\";\"Trelaze\";\"ascii\"\n\"2971903\";\"Treize-Septiers\";\"main\"\n\"2971908\";\"Treillières\";\"main\"\n\"2971908\";\"Treillieres\";\"ascii\"\n\"2971908\";\"Trelier\";\"other\"\n\"2971915\";\"Treignac\";\"main\"\n\"2971915\";\"Treignac-la-Montagne\";\"other\"\n\"2971926\";\"Trégunc\";\"main\"\n\"2971926\";\"Tregunc\";\"ascii\"\n\"2971926\";\"Tregon\";\"other\"\n\"2971929\";\"Tréguier\";\"main\"\n\"2971929\";\"Treguier\";\"ascii\"\n\"2971929\";\"Landreger\";\"other\"\n\"2971953\";\"Trégastel\";\"main\"\n\"2971953\";\"Tregastel\";\"ascii\"\n\"2971953\";\"Tregastel-Bourg\";\"other\"\n\"2971976\";\"Treffléan\";\"main\"\n\"2971976\";\"Trefflean\";\"ascii\"\n\"2971976\";\"Trevlean\";\"other\"\n\"2971978\";\"Treffiagat\";\"main\"\n\"2971978\";\"Triagad\";\"other\"\n\"2971988\";\"Trédarzec\";\"main\"\n\"2971988\";\"Tredarzec\";\"ascii\"\n\"2971988\";\"Tredarzeg\";\"other\"\n\"2972009\";\"Trébeurden\";\"main\"\n\"2972009\";\"Trebeurden\";\"ascii\"\n\"2972010\";\"Trèbes\";\"main\"\n\"2972010\";\"Trebes\";\"ascii\"\n\"2972049\";\"Trappes\";\"main\"\n\"2972058\";\"Trans-en-Provence\";\"main\"\n\"2972058\";\"Trans\";\"other\"\n\"2972064\";\"Trangé\";\"main\"\n\"2972064\";\"Trange\";\"ascii\"\n\"2972071\";\"Tramoyes\";\"main\"\n\"2972095\";\"Traînou\";\"main\"\n\"2972095\";\"Trainou\";\"ascii\"\n\"2972107\";\"Tracy-le-Mont\";\"main\"\n\"2972107\";\"Tracy\";\"other\"\n\"2972126\";\"Touvre\";\"main\"\n\"2972128\";\"Touvois\";\"main\"\n\"2972128\";\"Tolvez\";\"other\"\n\"2972137\";\"Toutlemonde\";\"main\"\n\"2972142\";\"Toutainville\";\"main\"\n\"2972146\";\"Toussieu\";\"main\"\n\"2972156\";\"Toury\";\"main\"\n\"2972160\";\"Tourville-sur-Odon\";\"main\"\n\"2972160\";\"Tourville\";\"other\"\n\"2972161\";\"Tourville-sur-Arques\";\"main\"\n\"2972161\";\"Tourville\";\"other\"\n\"2972163\";\"Tourville-la-Rivière\";\"main\"\n\"2972163\";\"Tourville-la-Riviere\";\"ascii\"\n\"2972163\";\"Tourville\";\"other\"\n\"2972168\";\"Tourves\";\"main\"\n\"2972186\";\"Tours-sur-Marne\";\"main\"\n\"2972186\";\"Tours\";\"other\"\n\"2972191\";\"Tours\";\"main\"\n\"2972191\";\"Augusta-Turonum\";\"other\"\n\"2972191\";\"La Reunion-du-Nord\";\"other\"\n\"2972191\";\"La Réunion-du-Nord\";\"other\"\n\"2972191\";\"Tur\";\"other\"\n\"2972191\";\"Turonum\";\"other\"\n\"2972191\";\"to~uru\";\"other\"\n\"2972191\";\"tu er\";\"other\"\n\"2972191\";\"twr\";\"other\"\n\"2972191\";\"Тур\";\"other\"\n\"2972191\";\"טור\";\"other\"\n\"2972191\";\"トゥール\";\"other\"\n\"2972191\";\"图尔\";\"other\"\n\"2972195\";\"Tourrette-Levens\";\"main\"\n\"2972195\";\"Tourrette\";\"other\"\n\"2972201\";\"Tourouvre\";\"main\"\n\"2972203\";\"Tournus\";\"main\"\n\"2972203\";\"Tournus-Lacrost\";\"other\"\n\"2972209\";\"Tournon-Saint-Martin\";\"main\"\n\"2972209\";\"Tournon\";\"other\"\n\"2972214\";\"Tournon-sur-Rhône\";\"main\"\n\"2972214\";\"Tournon-sur-Rhone\";\"ascii\"\n\"2972214\";\"Tornon\";\"other\"\n\"2972229\";\"Tournes\";\"main\"\n\"2972235\";\"Tournehem-sur-la-Hem\";\"main\"\n\"2972237\";\"Tournefeuille\";\"main\"\n\"2972237\";\"Brumaire\";\"other\"\n\"2972237\";\"Frimaire\";\"other\"\n\"2972237\";\"Fructidor\";\"other\"\n\"2972237\";\"Germinal\";\"other\"\n\"2972237\";\"Messidor\";\"other\"\n\"2972237\";\"Nivose\";\"other\"\n\"2972237\";\"Nivôse\";\"other\"\n\"2972237\";\"Prairial\";\"other\"\n\"2972237\";\"Vendemiaire\";\"other\"\n\"2972237\";\"Vendémiaire\";\"other\"\n\"2972237\";\"Ventose\";\"other\"\n\"2972237\";\"Ventôse\";\"other\"\n\"2972248\";\"Tournay\";\"main\"\n\"2972253\";\"Tournan-en-Brie\";\"main\"\n\"2972253\";\"Tournan\";\"other\"\n\"2972253\";\"Tournan-l'Union\";\"other\"\n\"2972270\";\"Tourlaville\";\"main\"\n\"2972273\";\"Tourrettes-sur-Loup\";\"main\"\n\"2972273\";\"Tourette\";\"other\"\n\"2972284\";\"Tourcoing\";\"main\"\n\"2972284\";\"Toerkonje\";\"other\"\n\"2972284\";\"Turcundium\";\"other\"\n\"2972284\";\"to~urukowan\";\"other\"\n\"2972284\";\"トゥールコワン\";\"other\"\n\"2972288\";\"Tourbes\";\"main\"\n\"2972301\";\"Touquin\";\"main\"\n\"2972307\";\"Touques\";\"main\"\n\"2972315\";\"Toulouse\";\"main\"\n\"2972315\";\"Tolosa\";\"other\"\n\"2972315\";\"Tolosa de Francia\";\"other\"\n\"2972315\";\"Tolosa de Llenguadoc\";\"other\"\n\"2972315\";\"Tuluz\";\"other\"\n\"2972315\";\"Tuluza\";\"other\"\n\"2972315\";\"Tuluzo\";\"other\"\n\"2972315\";\"Tulūza\";\"other\"\n\"2972315\";\"to~uruzu\";\"other\"\n\"2972315\";\"tu lu zi\";\"other\"\n\"2972315\";\"tullujeu\";\"other\"\n\"2972315\";\"twlwz\";\"other\"\n\"2972315\";\"Тулуз\";\"other\"\n\"2972315\";\"Тулуза\";\"other\"\n\"2972315\";\"טולוז\";\"other\"\n\"2972315\";\"تولوز\";\"other\"\n\"2972315\";\"トゥールーズ\";\"other\"\n\"2972315\";\"圖盧茲\";\"other\"\n\"2972315\";\"툴루즈\";\"other\"\n\"2972317\";\"Toulouges\";\"main\"\n\"2972317\";\"Toluges\";\"other\"\n\"2972320\";\"Toulon-sur-Arroux\";\"main\"\n\"2972320\";\"Bel-Air-sur-Arroux\";\"other\"\n\"2972320\";\"Toulon\";\"other\"\n\"2972321\";\"Toulon-sur-Allier\";\"main\"\n\"2972321\";\"Mont-la-Loi\";\"other\"\n\"2972321\";\"Toulon\";\"other\"\n\"2972328\";\"Toulon\";\"main\"\n\"2972328\";\"Port-la-Montagne\";\"other\"\n\"2972328\";\"Telo Martius\";\"other\"\n\"2972328\";\"Tolo\";\"other\"\n\"2972328\";\"Tolon\";\"other\"\n\"2972328\";\"Tolone\";\"other\"\n\"2972328\";\"Toló\";\"other\"\n\"2972328\";\"Tolón\";\"other\"\n\"2972328\";\"Toulon-sur-Mer\";\"other\"\n\"2972328\";\"Tulon\";\"other\"\n\"2972328\";\"to~uron\";\"other\"\n\"2972328\";\"tu lun\";\"other\"\n\"2972328\";\"tulom\";\"other\"\n\"2972328\";\"twlwn\";\"other\"\n\"2972328\";\"Тулон\";\"other\"\n\"2972328\";\"טולון\";\"other\"\n\"2972328\";\"طولون\";\"other\"\n\"2972328\";\"तुलों\";\"other\"\n\"2972328\";\"トゥーロン\";\"other\"\n\"2972328\";\"土伦\";\"other\"\n\"2972339\";\"Toulenne\";\"main\"\n\"2972342\";\"Toulaud\";\"main\"\n\"2972350\";\"Toul\";\"main\"\n\"2972350\";\"La Moselle\";\"other\"\n\"2972350\";\"La Paix\";\"other\"\n\"2972350\";\"Tul'\";\"other\"\n\"2972350\";\"Туль\";\"other\"\n\"2972365\";\"Toufflers\";\"main\"\n\"2972372\";\"Toucy\";\"main\"\n\"2972381\";\"Tôtes\";\"main\"\n\"2972381\";\"Totes\";\"ascii\"\n\"2972387\";\"Tossiat\";\"main\"\n\"2972388\";\"Tosse\";\"main\"\n\"2972412\";\"Torreilles\";\"main\"\n\"2972427\";\"Torigni-sur-Vire\";\"main\"\n\"2972427\";\"Torigni\";\"other\"\n\"2972427\";\"Torigny\";\"other\"\n\"2972427\";\"Torigny-sur-Vire\";\"other\"\n\"2972430\";\"Torfou\";\"main\"\n\"2972444\";\"Torcy\";\"main\"\n\"2972445\";\"Torcy\";\"main\"\n\"2972457\";\"Torcé\";\"main\"\n\"2972457\";\"Torce\";\"ascii\"\n\"2972457\";\"Tourc'heg\";\"other\"\n\"2972462\";\"Tonquédec\";\"main\"\n\"2972462\";\"Tonquedec\";\"ascii\"\n\"2972462\";\"Tonkedeg\";\"other\"\n\"2972467\";\"Tonnerre\";\"main\"\n\"2972468\";\"Tonneins\";\"main\"\n\"2972468\";\"Tonneins-la-Montagne\";\"other\"\n\"2972470\";\"Tonnay-Charente\";\"main\"\n\"2972470\";\"Tonnay Charenta\";\"other\"\n\"2972471\";\"Tonnay-Boutonne\";\"main\"\n\"2972486\";\"Tomblaine\";\"main\"\n\"2972494\";\"Tollevast\";\"main\"\n\"2972516\";\"Tocane-Saint-Apre\";\"main\"\n\"2972516\";\"Barra-sur-Dronne\";\"other\"\n\"2972516\";\"Tocane\";\"other\"\n\"2972516\";\"Tocuno\";\"other\"\n\"2972516\";\"Tooane-Saint-Abre\";\"other\"\n\"2972544\";\"Tinténiac\";\"main\"\n\"2972544\";\"Tinteniac\";\"ascii\"\n\"2972544\";\"Tintenieg\";\"other\"\n\"2972546\";\"Tinqueux\";\"main\"\n\"2972555\";\"Tinchebray\";\"main\"\n\"2972559\";\"Tilques\";\"main\"\n\"2972560\";\"Tilly-sur-Seulles\";\"main\"\n\"2972560\";\"Tilly\";\"other\"\n\"2972571\";\"Tilloy-lès-Mofflaines\";\"main\"\n\"2972571\";\"Tilloy-les-Mofflaines\";\"ascii\"\n\"2972571\";\"Tilloy\";\"other\"\n\"2972571\";\"Tilloy-anx-Fosses\";\"other\"\n\"2972583\";\"Tillières-sur-Avre\";\"main\"\n\"2972583\";\"Tillieres-sur-Avre\";\"ascii\"\n\"2972583\";\"Tillieres\";\"other\"\n\"2972583\";\"Tillières\";\"other\"\n\"2972584\";\"Tillières\";\"main\"\n\"2972584\";\"Tillieres\";\"ascii\"\n\"2972584\";\"Tilliers\";\"other\"\n\"2972594\";\"Tillé\";\"main\"\n\"2972594\";\"Tille\";\"ascii\"\n\"2972600\";\"Tigy\";\"main\"\n\"2972605\";\"Tignieu-Jameyzieu\";\"main\"\n\"2972605\";\"Tignieu\";\"other\"\n\"2972607\";\"Tignes\";\"main\"\n\"2972607\";\"Tignes-sur-Boisses\";\"other\"\n\"2972611\";\"Tigery\";\"main\"\n\"2972613\";\"Tiffauges\";\"main\"\n\"2972620\";\"Tiercé\";\"main\"\n\"2972620\";\"Tierce\";\"ascii\"\n\"2972633\";\"Thyez\";\"main\"\n\"2972640\";\"Thury-Harcourt\";\"main\"\n\"2972640\";\"Thury\";\"other\"\n\"2972644\";\"Thurins\";\"main\"\n\"2972644\";\"Thurins-le-Francais\";\"other\"\n\"2972644\";\"Thurins-le-Français\";\"other\"\n\"2972651\";\"Thuré\";\"main\"\n\"2972651\";\"Thure\";\"ascii\"\n\"2972655\";\"Thun-Saint-Amand\";\"main\"\n\"2972655\";\"Thun\";\"other\"\n\"2972658\";\"Thumeries\";\"main\"\n\"2972665\";\"Thuir\";\"main\"\n\"2972665\";\"Tuir\";\"other\"\n\"2972670\";\"Thueyts\";\"main\"\n\"2972673\";\"Thuellin\";\"main\"\n\"2972684\";\"Thourotte\";\"main\"\n\"2972695\";\"Thouars\";\"main\"\n\"2972696\";\"Thouaré-sur-Loire\";\"main\"\n\"2972696\";\"Thouare-sur-Loire\";\"ascii\"\n\"2972696\";\"Tarvieg\";\"other\"\n\"2972696\";\"Thouare\";\"other\"\n\"2972696\";\"Thouaré\";\"other\"\n\"2972697\";\"Thouarcé\";\"main\"\n\"2972697\";\"Thouarce\";\"ascii\"\n\"2972710\";\"Thorigny-sur-Oreuse\";\"main\"\n\"2972710\";\"Thorigny\";\"other\"\n\"2972711\";\"Thorigny-sur-Marne\";\"main\"\n\"2972711\";\"Thorigny\";\"other\"\n\"2972716\";\"Thorigné-sur-Dué\";\"main\"\n\"2972716\";\"Thorigne-sur-Due\";\"ascii\"\n\"2972716\";\"Thorigne\";\"other\"\n\"2972716\";\"Thorigné\";\"other\"\n\"2972719\";\"Thorigné\";\"main\"\n\"2972719\";\"Thorigne\";\"ascii\"\n\"2972727\";\"Thorens-Glières\";\"main\"\n\"2972727\";\"Thorens-Glieres\";\"ascii\"\n\"2972727\";\"Thorens\";\"other\"\n\"2972742\";\"Thonon-les-Bains\";\"main\"\n\"2972742\";\"Thonon\";\"other\"\n\"2972742\";\"Tonon-le-Ben\";\"other\"\n\"2972742\";\"Тонон-ле-Бен\";\"other\"\n\"2972749\";\"Thônes\";\"main\"\n\"2972749\";\"Thones\";\"ascii\"\n\"2972754\";\"Thomery\";\"main\"\n\"2972772\";\"Thoissey\";\"main\"\n\"2972773\";\"Thoiry\";\"main\"\n\"2972774\";\"Thoiry\";\"main\"\n\"2972786\";\"Thizy\";\"main\"\n\"2972792\";\"Thiviers\";\"main\"\n\"2972794\";\"Thiverval-Grignon\";\"main\"\n\"2972794\";\"Thivernal-Grignon\";\"other\"\n\"2972794\";\"Thiverval\";\"other\"\n\"2972795\";\"Thiverny\";\"main\"\n\"2972798\";\"Thise\";\"main\"\n\"2972801\";\"Thiron Gardais\";\"main\"\n\"2972801\";\"Thiron\";\"other\"\n\"2972811\";\"Thionville\";\"main\"\n\"2972811\";\"Diddenuewen\";\"other\"\n\"2972811\";\"Diedenhofen\";\"other\"\n\"2972822\";\"Thilouze\";\"main\"\n\"2972829\";\"Thilay\";\"main\"\n\"2972830\";\"Thil\";\"main\"\n\"2972833\";\"Thil\";\"main\"\n\"2972851\";\"Thierville-sur-Meuse\";\"main\"\n\"2972851\";\"Thierville\";\"other\"\n\"2972853\";\"Thiers-sur-Thève\";\"main\"\n\"2972853\";\"Thiers-sur-Theve\";\"ascii\"\n\"2972853\";\"Thiers\";\"other\"\n\"2972857\";\"Thiers\";\"main\"\n\"2972857\";\"Tiern\";\"other\"\n\"2972857\";\"Tièrn\";\"other\"\n\"2972882\";\"Thiberville\";\"main\"\n\"2972889\";\"Thiant\";\"main\"\n\"2972893\";\"Thiais\";\"main\"\n\"2972904\";\"Thézan-lès-Béziers\";\"main\"\n\"2972904\";\"Thezan-les-Beziers\";\"ascii\"\n\"2972904\";\"Thezan\";\"other\"\n\"2972904\";\"Thézan\";\"other\"\n\"2972908\";\"Théza\";\"main\"\n\"2972908\";\"Theza\";\"ascii\"\n\"2972908\";\"Tesa\";\"other\"\n\"2972908\";\"Tesà\";\"other\"\n\"2972908\";\"Thèza\";\"other\"\n\"2972911\";\"Theys\";\"main\"\n\"2972931\";\"Thésée\";\"main\"\n\"2972931\";\"Thesee\";\"ascii\"\n\"2972931\";\"Thezee\";\"other\"\n\"2972931\";\"Thézée\";\"other\"\n\"2972936\";\"Thérouanne\";\"main\"\n\"2972936\";\"Therouanne\";\"ascii\"\n\"2972942\";\"Théoule-sur-Mer\";\"main\"\n\"2972942\";\"Theoule-sur-Mer\";\"ascii\"\n\"2972942\";\"Theoule\";\"other\"\n\"2972942\";\"Théoule\";\"other\"\n\"2972947\";\"Thenon\";\"main\"\n\"2972953\";\"Thénezay\";\"main\"\n\"2972953\";\"Thenezay\";\"ascii\"\n\"2972963\";\"Thénac\";\"main\"\n\"2972963\";\"Thenac\";\"ascii\"\n\"2972969\";\"Thélus\";\"main\"\n\"2972969\";\"Thelus\";\"ascii\"\n\"2972978\";\"Theizé\";\"main\"\n\"2972978\";\"Theize\";\"ascii\"\n\"2972979\";\"Theix\";\"main\"\n\"2972979\";\"Teiz\";\"other\"\n\"2972986\";\"Theillay\";\"main\"\n\"2972992\";\"Théding\";\"main\"\n\"2972992\";\"Theding\";\"ascii\"\n\"2973008\";\"Thaon-les-Vosges\";\"main\"\n\"2973008\";\"Thaon\";\"other\"\n\"2973009\";\"Thaon\";\"main\"\n\"2973013\";\"Thann\";\"main\"\n\"2973021\";\"Thairé\";\"main\"\n\"2973021\";\"Thaire\";\"ascii\"\n\"2973021\";\"Thaire-d'Aunis\";\"other\"\n\"2973021\";\"Thairé-d'Aunis\";\"other\"\n\"2973033\";\"Teyran\";\"main\"\n\"2973045\";\"Teting-sur-Nied\";\"main\"\n\"2973045\";\"Teting\";\"other\"\n\"2973045\";\"Téting\";\"other\"\n\"2973049\";\"Téteghem\";\"main\"\n\"2973049\";\"Teteghem\";\"ascii\"\n\"2973058\";\"Tessy-sur-Vire\";\"main\"\n\"2973058\";\"Tessy\";\"other\"\n\"2973058\";\"Tessy-sur-ville\";\"other\"\n\"2973064\";\"Tessé-la-Madeleine\";\"main\"\n\"2973064\";\"Tesse-la-Madeleine\";\"ascii\"\n\"2973064\";\"Tesse\";\"other\"\n\"2973064\";\"Tessé\";\"other\"\n\"2973073\";\"Terville\";\"main\"\n\"2973108\";\"Terrasson-Lavilledieu\";\"main\"\n\"2973128\";\"Ternay\";\"main\"\n\"2973146\";\"Tergnier\";\"main\"\n\"2973151\";\"Tercis-les-Bains\";\"main\"\n\"2973151\";\"Tercis\";\"other\"\n\"2973155\";\"Tercé\";\"main\"\n\"2973155\";\"Terce\";\"ascii\"\n\"2973164\";\"Tenteling\";\"main\"\n\"2973166\";\"Tennie\";\"main\"\n\"2973180\";\"Tende\";\"main\"\n\"2973180\";\"Tenda\";\"other\"\n\"2973181\";\"Tencin\";\"main\"\n\"2973182\";\"Tence\";\"main\"\n\"2973183\";\"Tenay\";\"main\"\n\"2973187\";\"Templeuve\";\"main\"\n\"2973187\";\"Templeuve-en Pevele\";\"other\"\n\"2973187\";\"Templeuve-en Pévele\";\"other\"\n\"2973188\";\"Templemars\";\"main\"\n\"2973192\";\"Teloché\";\"main\"\n\"2973192\";\"Teloche\";\"ascii\"\n\"2973197\";\"Telgruc-sur-Mer\";\"main\"\n\"2973197\";\"Telgruc\";\"other\"\n\"2973197\";\"Terrug\";\"other\"\n\"2973219\";\"Teillé\";\"main\"\n\"2973219\";\"Teille\";\"ascii\"\n\"2973219\";\"Tilhieg\";\"other\"\n\"2973257\";\"Tavers\";\"main\"\n\"2973258\";\"Taverny\";\"main\"\n\"2973264\";\"Tavel\";\"main\"\n\"2973267\";\"Tavaux\";\"main\"\n\"2973272\";\"Tauxigny\";\"main\"\n\"2973293\";\"Tauriac\";\"main\"\n\"2973297\";\"Taupont\";\"main\"\n\"2973297\";\"Talbont\";\"other\"\n\"2973301\";\"Taulignan\";\"main\"\n\"2973303\";\"Taulé\";\"main\"\n\"2973303\";\"Taule\";\"ascii\"\n\"2973303\";\"Taole\";\"other\"\n\"2973311\";\"Tatinghem\";\"main\"\n\"2973311\";\"Tatinghen\";\"other\"\n\"2973317\";\"Tassin-la-Demi-Lune\";\"main\"\n\"2973317\";\"Tassin\";\"other\"\n\"2973317\";\"Tassin la Demi Lena\";\"other\"\n\"2973317\";\"Tassin-la-Lune\";\"other\"\n\"2973317\";\"Tassin-la-Lûne\";\"other\"\n\"2973338\";\"Tartas\";\"main\"\n\"2973355\";\"Tarnos\";\"main\"\n\"2973355\";\"Tarnose\";\"other\"\n\"2973365\";\"Targon\";\"main\"\n\"2973385\";\"Tarbes\";\"main\"\n\"2973385\";\"Tarba\";\"other\"\n\"2973385\";\"tarubu\";\"other\"\n\"2973385\";\"タルブ\";\"other\"\n\"2973392\";\"Tarascon-sur-Ariège\";\"main\"\n\"2973392\";\"Tarascon-sur-Ariege\";\"ascii\"\n\"2973392\";\"Tarascon\";\"other\"\n\"2973392\";\"Tarascon-Ussat\";\"other\"\n\"2973393\";\"Tarascon\";\"main\"\n\"2973393\";\"Barra\";\"other\"\n\"2973393\";\"Marat\";\"other\"\n\"2973393\";\"Tarascuni\";\"other\"\n\"2973393\";\"tarasukon\";\"other\"\n\"2973393\";\"タラスコン\";\"other\"\n\"2973394\";\"Tarare\";\"main\"\n\"2973396\";\"Taradeau\";\"main\"\n\"2973399\";\"Taponnat-Fleurignac\";\"main\"\n\"2973399\";\"Taponnat\";\"other\"\n\"2973418\";\"Tanneron\";\"main\"\n\"2973421\";\"Tanlay\";\"main\"\n\"2973424\";\"Taninges\";\"main\"\n\"2973437\";\"Tancarville\";\"main\"\n\"2973457\";\"Taluyers\";\"main\"\n\"2973476\";\"Talmas\";\"main\"\n\"2973480\";\"Talloires\";\"main\"\n\"2973483\";\"Tallende\";\"main\"\n\"2973485\";\"Tallard\";\"main\"\n\"2973492\";\"Talensac\";\"main\"\n\"2973492\";\"Talenseg\";\"other\"\n\"2973495\";\"Talence\";\"main\"\n\"2973495\";\"Talenca\";\"other\"\n\"2973495\";\"Talença\";\"other\"\n\"2973510\";\"Talant\";\"main\"\n\"2973511\";\"Talange\";\"main\"\n\"2973524\";\"Taissy\";\"main\"\n\"2973530\";\"Taintrux\";\"main\"\n\"2973551\";\"Taillecourt\";\"main\"\n\"2973564\";\"Taillades\";\"main\"\n\"2973579\";\"Taden\";\"main\"\n\"2973582\";\"Tacoignières\";\"main\"\n\"2973582\";\"Tacoignieres\";\"ascii\"\n\"2973597\";\"Tabanac\";\"main\"\n\"2973597\";\"Coteau-Libre\";\"other\"\n\"2973613\";\"Suze-la-Rousse\";\"main\"\n\"2973613\";\"Suze\";\"other\"\n\"2973626\";\"Sussargues\";\"main\"\n\"2973637\";\"Surzur\";\"main\"\n\"2973637\";\"Surzhur\";\"other\"\n\"2973639\";\"Sury-le-Comtal\";\"main\"\n\"2973639\";\"Sury\";\"other\"\n\"2973639\";\"Sury-la-Chaux\";\"other\"\n\"2973645\";\"Survilliers\";\"main\"\n\"2973655\";\"Surtainville\";\"main\"\n\"2973672\";\"Surgères\";\"main\"\n\"2973672\";\"Surgeres\";\"ascii\"\n\"2973675\";\"Suresnes\";\"main\"\n\"2973675\";\"Siren\";\"other\"\n\"2973675\";\"Sjuren\";\"other\"\n\"2973675\";\"Сирен\";\"other\"\n\"2973675\";\"Сюрен\";\"other\"\n\"2973686\";\"Surbourg\";\"main\"\n\"2973697\";\"Sundhouse\";\"main\"\n\"2973697\";\"Sundhausen\";\"other\"\n\"2973698\";\"Sundhoffen\";\"main\"\n\"2973701\";\"Sumène\";\"main\"\n\"2973701\";\"Sumene\";\"ascii\"\n\"2973702\";\"Sulniac\";\"main\"\n\"2973702\";\"Sulnieg\";\"other\"\n\"2973703\";\"Sully-sur-Loire\";\"main\"\n\"2973703\";\"Sully\";\"other\"\n\"2973720\";\"Suippes\";\"main\"\n\"2973735\";\"Suèvres\";\"main\"\n\"2973735\";\"Suevres\";\"ascii\"\n\"2973745\";\"Sucy-en-Brie\";\"main\"\n\"2973745\";\"Sucy\";\"other\"\n\"2973748\";\"Sucé-sur-Erdre\";\"main\"\n\"2973748\";\"Suce-sur-Erdre\";\"ascii\"\n\"2973783\";\"Strasbourg\";\"main\"\n\"2973783\";\"Argentoratum\";\"other\"\n\"2973783\";\"Estrasburg\";\"other\"\n\"2973783\";\"Estrasburgo\";\"other\"\n\"2973783\";\"Estrasburgo - Strasbourg\";\"other\"\n\"2973783\";\"Lungsod ng Strasbourg\";\"other\"\n\"2973783\";\"Straatsburg\";\"other\"\n\"2973783\";\"Strasborg\";\"other\"\n\"2973783\";\"Strasbourgo\";\"other\"\n\"2973783\";\"Strasbura\";\"other\"\n\"2973783\";\"Strasburas\";\"other\"\n\"2973783\";\"Strasburg\";\"other\"\n\"2973783\";\"Strasburgo\";\"other\"\n\"2973783\";\"Strasburgu\";\"other\"\n\"2973783\";\"Strasburk\";\"other\"\n\"2973783\";\"Strasbôrg\";\"other\"\n\"2973783\";\"Strasbūra\";\"other\"\n\"2973783\";\"Strasbūras\";\"other\"\n\"2973783\";\"Strassborg\";\"other\"\n\"2973783\";\"Strassbourg\";\"other\"\n\"2973783\";\"Strassburg\";\"other\"\n\"2973783\";\"Straszburg\";\"other\"\n\"2973783\";\"Strazbur\";\"other\"\n\"2973783\";\"Strazburg\";\"other\"\n\"2973783\";\"Straßburg\";\"other\"\n\"2973783\";\"Stroossbuerg\";\"other\"\n\"2973783\";\"seuteulaseubuleu\";\"other\"\n\"2973783\";\"si te la si bao\";\"other\"\n\"2973783\";\"strasabarga\";\"other\"\n\"2973783\";\"strasbwrgh\";\"other\"\n\"2973783\";\"strsbwrg\";\"other\"\n\"2973783\";\"sutorasuburu\";\"other\"\n\"2973783\";\"Štrasburg\";\"other\"\n\"2973783\";\"Štrasburk\";\"other\"\n\"2973783\";\"Στρασβούργο\";\"other\"\n\"2973783\";\"Стразбур\";\"other\"\n\"2973783\";\"Страсбург\";\"other\"\n\"2973783\";\"שטרסבורג\";\"other\"\n\"2973783\";\"ستراسبورغ\";\"other\"\n\"2973783\";\"स्ट्रासबर्ग\";\"other\"\n\"2973783\";\"ストラスブール\";\"other\"\n\"2973783\";\"斯特拉斯堡\";\"other\"\n\"2973783\";\"스트라스부르\";\"other\"\n\"2973787\";\"Stotzheim\";\"main\"\n\"2973788\";\"Stosswihr\";\"main\"\n\"2973795\";\"Stiring-Wendel\";\"main\"\n\"2973795\";\"Steringen-Wendel\";\"other\"\n\"2973795\";\"Stieringen-Wendel\";\"other\"\n\"2973795\";\"Strying\";\"other\"\n\"2973795\";\"Styring\";\"other\"\n\"2973795\";\"Wendel\";\"other\"\n\"2973798\";\"Still\";\"main\"\n\"2973809\";\"Stenay\";\"main\"\n\"2973818\";\"Steinbourg\";\"main\"\n\"2973819\";\"Steinbach\";\"main\"\n\"2973821\";\"Steenwerck\";\"main\"\n\"2973823\";\"Steenvoorde\";\"main\"\n\"2973825\";\"Steene\";\"main\"\n\"2973826\";\"Steenbecque\";\"main\"\n\"2973841\";\"Stains\";\"main\"\n\"2973843\";\"Staffelfelden\";\"main\"\n\"2973847\";\"Spycker\";\"main\"\n\"2973857\";\"Spicheren\";\"main\"\n\"2973857\";\"Speicheren\";\"other\"\n\"2973857\";\"Spieherer Burg\";\"other\"\n\"2973858\";\"Spézet\";\"main\"\n\"2973858\";\"Spezet\";\"ascii\"\n\"2973858\";\"Speied\";\"other\"\n\"2973863\";\"Spéracèdes\";\"main\"\n\"2973863\";\"Speracedes\";\"ascii\"\n\"2973869\";\"Spay\";\"main\"\n\"2973875\";\"Soyons\";\"main\"\n\"2973882\";\"Soyaux\";\"main\"\n\"2973897\";\"Souvigny\";\"main\"\n\"2973918\";\"Soustons\";\"main\"\n\"2973924\";\"Soussans\";\"main\"\n\"2973936\";\"Sourzac\";\"main\"\n\"2973938\";\"Sours\";\"main\"\n\"2973944\";\"Sourdun\";\"main\"\n\"2973949\";\"Sourdeval\";\"main\"\n\"2973953\";\"Sourcieux-les-Mines\";\"main\"\n\"2973953\";\"Sourcieux\";\"other\"\n\"2973959\";\"Souraïde\";\"main\"\n\"2973959\";\"Souraide\";\"ascii\"\n\"2973959\";\"Mendialte\";\"other\"\n\"2973959\";\"Zuraide\";\"other\"\n\"2973962\";\"Souprosse\";\"main\"\n\"2973963\";\"Souppes-sur-Loing\";\"main\"\n\"2973963\";\"Souppes\";\"other\"\n\"2973973\";\"Soumoulou\";\"main\"\n\"2973990\";\"Soultz-sous-Forêts\";\"main\"\n\"2973990\";\"Soultz-sous-Forets\";\"ascii\"\n\"2973990\";\"Soultz\";\"other\"\n\"2973991\";\"Soultzmatt\";\"main\"\n\"2973993\";\"Soultz-Haut-Rhin\";\"main\"\n\"2973993\";\"Soultz\";\"other\"\n\"2973994\";\"Soultzeren\";\"main\"\n\"2973994\";\"Soultzern\";\"other\"\n\"2974007\";\"Soullans\";\"main\"\n\"2974012\";\"Souligné-sous-Ballon\";\"main\"\n\"2974012\";\"Souligne-sous-Ballon\";\"ascii\"\n\"2974012\";\"Souligne\";\"other\"\n\"2974012\";\"Souligné\";\"other\"\n\"2974022\";\"Soulgé-sur-Ouette\";\"main\"\n\"2974022\";\"Soulge-sur-Ouette\";\"ascii\"\n\"2974022\";\"Soulge\";\"other\"\n\"2974022\";\"Soulge-le-Bruant\";\"other\"\n\"2974022\";\"Soulgé\";\"other\"\n\"2974022\";\"Soulgé-le-Bruant\";\"other\"\n\"2974047\";\"Soulaire-et-Bourg\";\"main\"\n\"2974047\";\"Soulaire\";\"other\"\n\"2974048\";\"Soulaines-sur-Aubance\";\"main\"\n\"2974048\";\"Soulaines\";\"other\"\n\"2974056\";\"Soulac-sur-Mer\";\"main\"\n\"2974056\";\"Soulac\";\"other\"\n\"2974066\";\"Souillac\";\"main\"\n\"2974066\";\"Trente-un-Mai\";\"other\"\n\"2974086\";\"Soufflenheim\";\"main\"\n\"2974086\";\"Sablono:TabelKapoLauCarta\";\"other\"\n\"2974086\";\"Ŝablono:TabelKapoLaŭĈarta\";\"other\"\n\"2974087\";\"Souffelweyersheim\";\"main\"\n\"2974089\";\"Souesmes\";\"main\"\n\"2974091\";\"Soues\";\"main\"\n\"2974108\";\"Soudan\";\"main\"\n\"2974108\";\"Saoudan\";\"other\"\n\"2974115\";\"Soucy\";\"main\"\n\"2974118\";\"Soucieu-en-Jarrest\";\"main\"\n\"2974118\";\"Soucieu\";\"other\"\n\"2974118\";\"Soucieu-en-Jarez\";\"other\"\n\"2974120\";\"Soucht\";\"main\"\n\"2974123\";\"Souchez\";\"main\"\n\"2974130\";\"Soucelles\";\"main\"\n\"2974135\";\"Soubise\";\"main\"\n\"2974135\";\"La Regeneration\";\"other\"\n\"2974135\";\"La Regénération\";\"other\"\n\"2974146\";\"Soual\";\"main\"\n\"2974146\";\"Soual-et-lestap\";\"other\"\n\"2974153\";\"Sotteville-lès-Rouen\";\"main\"\n\"2974153\";\"Sotteville-les-Rouen\";\"ascii\"\n\"2974153\";\"Sottevil'-le-Ruan\";\"other\"\n\"2974153\";\"Sotteville\";\"other\"\n\"2974153\";\"Sottville-les-Rouen\";\"other\"\n\"2974153\";\"Соттевиль-ле-Руан\";\"other\"\n\"2974155\";\"Sottevast\";\"main\"\n\"2974162\";\"Sospel\";\"main\"\n\"2974175\";\"Sornay\";\"main\"\n\"2974185\";\"Sorigny\";\"main\"\n\"2974188\";\"Sorgues\";\"main\"\n\"2974193\";\"Sorges\";\"main\"\n\"2974193\";\"Surges\";\"other\"\n\"2974195\";\"Sorèze\";\"main\"\n\"2974195\";\"Soreze\";\"ascii\"\n\"2974197\";\"Sorel-Moussel\";\"main\"\n\"2974197\";\"Montagne-du-Droit-de-l'Homme\";\"other\"\n\"2974203\";\"Sureda\";\"main\"\n\"2974203\";\"Sorede\";\"other\"\n\"2974203\";\"Sorède\";\"other\"\n\"2974215\";\"Sorbiers\";\"main\"\n\"2974215\";\"Sorbier\";\"other\"\n\"2974235\";\"Soorts-Hossegor\";\"main\"\n\"2974235\";\"Soorts\";\"other\"\n\"2974235\";\"Soorts-Hossegort\";\"other\"\n\"2974236\";\"Sonzay\";\"main\"\n\"2974245\";\"Sonnaz\";\"main\"\n\"2974246\";\"Sonnay\";\"main\"\n\"2974257\";\"Songeons\";\"main\"\n\"2974263\";\"Sonchamp\";\"main\"\n\"2974273\";\"Sommières\";\"main\"\n\"2974273\";\"Sommieres\";\"ascii\"\n\"2974324\";\"Somain\";\"main\"\n\"2974336\";\"Solliès-Ville\";\"main\"\n\"2974336\";\"Sollies-Ville\";\"ascii\"\n\"2974337\";\"Solliès-Toucas\";\"main\"\n\"2974337\";\"Sollies-Toucas\";\"ascii\"\n\"2974338\";\"Solliès-Pont\";\"main\"\n\"2974338\";\"Sollies-Pont\";\"ascii\"\n\"2974347\";\"Solignac-sur-Loire\";\"main\"\n\"2974347\";\"Solignac\";\"other\"\n\"2974349\";\"Solignac\";\"main\"\n\"2974352\";\"Soliers\";\"main\"\n\"2974354\";\"Solgne\";\"main\"\n\"2974360\";\"Solesmes\";\"main\"\n\"2974361\";\"Solesmes\";\"main\"\n\"2974362\";\"Solers\";\"main\"\n\"2974378\";\"Solaize\";\"main\"\n\"2974383\";\"Soisy-sur-Seine\";\"main\"\n\"2974383\";\"Soisy\";\"other\"\n\"2974384\";\"Soisy-sur-École\";\"main\"\n\"2974384\";\"Soisy-sur-Ecole\";\"ascii\"\n\"2974384\";\"Soisy\";\"other\"\n\"2974384\";\"Soisy-Marat\";\"other\"\n\"2974385\";\"Soisy-sous-Montmorency\";\"main\"\n\"2974385\";\"Emile\";\"other\"\n\"2974385\";\"Mont-Emile\";\"other\"\n\"2974385\";\"Soisy\";\"other\"\n\"2974389\";\"Soissons\";\"main\"\n\"2974389\";\"Suasson\";\"other\"\n\"2974389\";\"sowason\";\"other\"\n\"2974389\";\"Суассон\";\"other\"\n\"2974389\";\"ソワソン\";\"other\"\n\"2974391\";\"Soings-en-Sologne\";\"main\"\n\"2974391\";\"Soings\";\"other\"\n\"2974396\";\"Soignolles-en-Brie\";\"main\"\n\"2974396\";\"Soignolles\";\"other\"\n\"2974410\";\"Socx\";\"main\"\n\"2974410\";\"Soex\";\"other\"\n\"2974413\";\"Sochaux\";\"main\"\n\"2974418\";\"Smarves\";\"main\"\n\"2974423\";\"Sizun\";\"main\"\n\"2974424\";\"Sixt-sur-Aff\";\"main\"\n\"2974424\";\"Seizh\";\"other\"\n\"2974424\";\"Sixt\";\"other\"\n\"2974427\";\"Six-Fours-les-Plages\";\"main\"\n\"2974427\";\"Six Fours\";\"other\"\n\"2974446\";\"Sisteron\";\"main\"\n\"2974450\";\"Sissonne\";\"main\"\n\"2974461\";\"Sireuil\";\"main\"\n\"2974485\";\"Sion-les-Mines\";\"main\"\n\"2974485\";\"Hezin-ar-Mengleuziou\";\"other\"\n\"2974485\";\"Hezin-ar-Mengleuzioù\";\"other\"\n\"2974485\";\"Sion\";\"other\"\n\"2974494\";\"Sin-le-Noble\";\"main\"\n\"2974494\";\"Sin\";\"other\"\n\"2974494\";\"Sin-les-Douai\";\"other\"\n\"2974494\";\"Sin-lès-Douai\";\"other\"\n\"2974506\";\"Sinceny\";\"main\"\n\"2974506\";\"Sincency\";\"other\"\n\"2974519\";\"Simiane-Collongue\";\"main\"\n\"2974519\";\"Collongue\";\"other\"\n\"2974519\";\"Simiane\";\"other\"\n\"2974524\";\"Simandres\";\"main\"\n\"2974525\";\"Simandre\";\"main\"\n\"2974534\";\"Silly-le-Long\";\"main\"\n\"2974534\";\"Silly\";\"other\"\n\"2974540\";\"Sillingy\";\"main\"\n\"2974547\";\"Sillery\";\"main\"\n\"2974550\";\"Sillé-le-Guillaume\";\"main\"\n\"2974550\";\"Sille-le-Guillaume\";\"ascii\"\n\"2974550\";\"Sille\";\"other\"\n\"2974550\";\"Sillee-la-Montagne\";\"other\"\n\"2974550\";\"Sillé\";\"other\"\n\"2974550\";\"Sillée-la-Montagne\";\"other\"\n\"2974556\";\"Sillans\";\"main\"\n\"2974575\";\"Sigolsheim\";\"main\"\n\"2974579\";\"Signy-le-Petit\";\"main\"\n\"2974579\";\"Signy\";\"other\"\n\"2974586\";\"Signes\";\"main\"\n\"2974591\";\"Sigean\";\"main\"\n\"2974608\";\"Sierentz\";\"main\"\n\"2974609\";\"Sierck-les-Bains\";\"main\"\n\"2974609\";\"Sierck\";\"other\"\n\"2974629\";\"Sibiril\";\"main\"\n\"2974629\";\"Sibirill\";\"other\"\n\"2974640\";\"Sézanne\";\"main\"\n\"2974640\";\"Sezanne\";\"ascii\"\n\"2974643\";\"Seyssuel\";\"main\"\n\"2974644\";\"Seyssins\";\"main\"\n\"2974645\";\"Seyssinet-Pariset\";\"main\"\n\"2974645\";\"Seyssinet\";\"other\"\n\"2974648\";\"Seysses\";\"main\"\n\"2974655\";\"Seynod\";\"main\"\n\"2974661\";\"Seyne\";\"main\"\n\"2974661\";\"Seyne-les-Alpes\";\"other\"\n\"2974675\";\"Sévrier\";\"main\"\n\"2974675\";\"Sevrier\";\"ascii\"\n\"2974676\";\"Sevrey\";\"main\"\n\"2974676\";\"Sezrey\";\"other\"\n\"2974677\";\"Sèvres-Anxaumont\";\"main\"\n\"2974677\";\"Sevres-Anxaumont\";\"ascii\"\n\"2974677\";\"Sevres\";\"other\"\n\"2974677\";\"Sèvres\";\"other\"\n\"2974678\";\"Sèvres\";\"main\"\n\"2974678\";\"Sevres\";\"ascii\"\n\"2974678\";\"Sevr\";\"other\"\n\"2974678\";\"sebeuleu\";\"other\"\n\"2974678\";\"sevuru\";\"other\"\n\"2974678\";\"Севр\";\"other\"\n\"2974678\";\"セーヴル\";\"other\"\n\"2974678\";\"세브르\";\"other\"\n\"2974681\";\"Sevran\";\"main\"\n\"2974691\";\"Sévignac\";\"main\"\n\"2974691\";\"Sevignac\";\"ascii\"\n\"2974691\";\"Sevinieg\";\"other\"\n\"2974699\";\"Sévérac-le-Château\";\"main\"\n\"2974699\";\"Severac-le-Chateau\";\"ascii\"\n\"2974699\";\"Severac\";\"other\"\n\"2974699\";\"Severac-la-Montagne\";\"other\"\n\"2974699\";\"Sévérac\";\"other\"\n\"2974699\";\"Sévérac-la-Montagne\";\"other\"\n\"2974701\";\"Sévérac\";\"main\"\n\"2974701\";\"Severac\";\"ascii\"\n\"2974701\";\"Severeg\";\"other\"\n\"2974710\";\"Seurre\";\"main\"\n\"2974717\";\"Seugy\";\"main\"\n\"2974733\";\"Sète\";\"main\"\n\"2974733\";\"Sete\";\"ascii\"\n\"2974733\";\"Cette\";\"other\"\n\"2974733\";\"Set\";\"other\"\n\"2974733\";\"Сет\";\"other\"\n\"2974745\";\"Servon-sur-Vilaine\";\"main\"\n\"2974745\";\"Servon\";\"other\"\n\"2974747\";\"Servon\";\"main\"\n\"2974775\";\"Servian\";\"main\"\n\"2974782\";\"Servas\";\"main\"\n\"2974799\";\"Serris\";\"main\"\n\"2974809\";\"Serrières\";\"main\"\n\"2974809\";\"Serrieres\";\"ascii\"\n\"2974809\";\"Port-du-Mezenc\";\"other\"\n\"2974809\";\"Port-du-Mézenc\";\"other\"\n\"2974809\";\"Serrieres-les-Saint-Sornin\";\"other\"\n\"2974809\";\"Serrières-les-Saint-Sornin\";\"other\"\n\"2974821\";\"Serres-Castet\";\"main\"\n\"2974821\";\"Serres\";\"other\"\n\"2974831\";\"Serres\";\"main\"\n\"2974839\";\"Serre-les-Sapins\";\"main\"\n\"2974839\";\"Serre\";\"other\"\n\"2974867\";\"Serquigny\";\"main\"\n\"2974868\";\"Serqueux\";\"main\"\n\"2974870\";\"Serques\";\"main\"\n\"2974873\";\"Serpaize\";\"main\"\n\"2974879\";\"Sernhac\";\"main\"\n\"2974886\";\"Sermoise-sur-Loire\";\"main\"\n\"2974893\";\"Sermérieu\";\"main\"\n\"2974893\";\"Sermerieu\";\"ascii\"\n\"2974901\";\"Sermaize-les-Bains\";\"main\"\n\"2974901\";\"Sermaize\";\"other\"\n\"2974904\";\"Sermaises\";\"main\"\n\"2974922\";\"Sérigné\";\"main\"\n\"2974922\";\"Serigne\";\"ascii\"\n\"2974923\";\"Sérignan-du-Comtat\";\"main\"\n\"2974923\";\"Serignan-du-Comtat\";\"ascii\"\n\"2974923\";\"Serignan\";\"other\"\n\"2974923\";\"Sérignan\";\"other\"\n\"2974925\";\"Sérignan\";\"main\"\n\"2974925\";\"Serignan\";\"ascii\"\n\"2974931\";\"Sérifontaine\";\"main\"\n\"2974931\";\"Serifontaine\";\"ascii\"\n\"2974936\";\"Sergy\";\"main\"\n\"2974937\";\"Sergines\";\"main\"\n\"2974942\";\"Sérézin-du-Rhône\";\"main\"\n\"2974942\";\"Serezin-du-Rhone\";\"ascii\"\n\"2974942\";\"Serezin\";\"other\"\n\"2974942\";\"Sérézin\";\"other\"\n\"2974949\";\"Sérent\";\"main\"\n\"2974949\";\"Serent\";\"ascii\"\n\"2974955\";\"Serémange-Erzange\";\"main\"\n\"2974955\";\"Seremange-Erzange\";\"ascii\"\n\"2974955\";\"Erzange\";\"other\"\n\"2974955\";\"Schoemange\";\"other\"\n\"2974955\";\"Seremange\";\"other\"\n\"2974955\";\"Serémange\";\"other\"\n\"2974962\";\"Séreilhac\";\"main\"\n\"2974962\";\"Sereilhac\";\"ascii\"\n\"2974991\";\"Seraincourt\";\"main\"\n\"2974996\";\"Sequedin\";\"main\"\n\"2975018\";\"Septfonds\";\"main\"\n\"2975019\";\"Septeuil\";\"main\"\n\"2975020\";\"Septèmes-les-Vallons\";\"main\"\n\"2975020\";\"Septemes-les-Vallons\";\"ascii\"\n\"2975020\";\"Septemes\";\"other\"\n\"2975020\";\"Septêmes\";\"other\"\n\"2975021\";\"Septème\";\"main\"\n\"2975021\";\"Septeme\";\"ascii\"\n\"2975036\";\"Sentheim\";\"main\"\n\"2975036\";\"Senheim\";\"other\"\n\"2975046\";\"Sens-de-Bretagne\";\"main\"\n\"2975046\";\"Sen\";\"other\"\n\"2975046\";\"Sens\";\"other\"\n\"2975050\";\"Sens\";\"main\"\n\"2975050\";\"Agedincum\";\"other\"\n\"2975050\";\"Sens-sur-Yonne\";\"other\"\n\"2975063\";\"Senones\";\"main\"\n\"2975067\";\"Senonches\";\"main\"\n\"2975079\";\"Sennecey-lès-Dijon\";\"main\"\n\"2975079\";\"Sennecey-les-Dijon\";\"ascii\"\n\"2975079\";\"Sennecey\";\"other\"\n\"2975080\";\"Sennecey-le-Grand\";\"main\"\n\"2975080\";\"Grand-Sennecey\";\"other\"\n\"2975080\";\"Sennecey\";\"other\"\n\"2975088\";\"Senlis\";\"main\"\n\"2975113\";\"Séné\";\"main\"\n\"2975113\";\"Sene\";\"ascii\"\n\"2975113\";\"Sine\";\"other\"\n\"2975120\";\"Sénas\";\"main\"\n\"2975120\";\"Senas\";\"ascii\"\n\"2975140\";\"Semussac\";\"main\"\n\"2975143\";\"Semur-en-Auxois\";\"main\"\n\"2975143\";\"Semur\";\"other\"\n\"2975147\";\"Semoy\";\"main\"\n\"2975181\";\"Séméac\";\"main\"\n\"2975181\";\"Semeac\";\"ascii\"\n\"2975191\";\"Sémalens\";\"main\"\n\"2975191\";\"Semalens\";\"ascii\"\n\"2975194\";\"Selvigny\";\"main\"\n\"2975199\";\"Seltz\";\"main\"\n\"2975203\";\"Selongey\";\"main\"\n\"2975204\";\"Seloncourt\";\"main\"\n\"2975215\";\"Selles-sur-Cher\";\"main\"\n\"2975215\";\"Selles\";\"other\"\n\"2975216\";\"Selles-Saint-Denis\";\"main\"\n\"2975216\";\"Selles\";\"other\"\n\"2975233\";\"Sélestat\";\"main\"\n\"2975233\";\"Selestat\";\"ascii\"\n\"2975233\";\"Schlestadt\";\"other\"\n\"2975233\";\"Schlettstadt\";\"other\"\n\"2975244\";\"Seissan\";\"main\"\n\"2975245\";\"Seingbouse\";\"main\"\n\"2975245\";\"Seingbousse\";\"other\"\n\"2975247\";\"Seine-Port\";\"main\"\n\"2975265\";\"Seillans\";\"main\"\n\"2975268\";\"Seilhac\";\"main\"\n\"2975269\";\"Seilh\";\"main\"\n\"2975270\";\"Seigy\";\"main\"\n\"2975273\";\"Seignosse\";\"main\"\n\"2975278\";\"Seignelay\";\"main\"\n\"2975288\";\"Seiches-sur-le-Loir\";\"main\"\n\"2975288\";\"Seiches\";\"other\"\n\"2975292\";\"Seichamps\";\"main\"\n\"2975314\";\"Segré\";\"main\"\n\"2975314\";\"Segre\";\"ascii\"\n\"2975321\";\"Segonzac\";\"main\"\n\"2975326\";\"Ségny\";\"main\"\n\"2975326\";\"Segny\";\"ascii\"\n\"2975339\";\"Séez\";\"main\"\n\"2975339\";\"Seez\";\"ascii\"\n\"2975339\";\"Val-Joli\";\"other\"\n\"2975340\";\"Sées\";\"main\"\n\"2975340\";\"Sees\";\"ascii\"\n\"2975349\";\"Sedan\";\"main\"\n\"2975349\";\"sudan\";\"other\"\n\"2975349\";\"Седан\";\"other\"\n\"2975349\";\"スダン\";\"other\"\n\"2975358\";\"Secondigny\";\"main\"\n\"2975358\";\"Secondigny-en-Gatine\";\"other\"\n\"2975358\";\"Secondigny-en-Gâtine\";\"other\"\n\"2975361\";\"Seclin\";\"main\"\n\"2975382\";\"Sebourg\";\"main\"\n\"2975383\";\"Seboncourt\";\"main\"\n\"2975387\";\"Sébazac-Concourès\";\"main\"\n\"2975387\";\"Sebazac-Concoures\";\"ascii\"\n\"2975387\";\"Haute-Sebazac-Concoures\";\"other\"\n\"2975387\";\"Haute-Sébazac-Concourès\";\"other\"\n\"2975387\";\"Sebazac\";\"other\"\n\"2975387\";\"Sébazac\";\"other\"\n\"2975392\";\"Scy-Chazelles\";\"main\"\n\"2975392\";\"Scy\";\"other\"\n\"2975400\";\"Scorbé-Clairvaux\";\"main\"\n\"2975400\";\"Scorbe-Clairvaux\";\"ascii\"\n\"2975408\";\"Scionzier\";\"main\"\n\"2975410\";\"Sciez\";\"main\"\n\"2975419\";\"Schwindratzheim\";\"main\"\n\"2975424\";\"Schweighouse-sur-Moder\";\"main\"\n\"2975424\";\"Schweighausen\";\"other\"\n\"2975424\";\"Schweighouse\";\"other\"\n\"2975432\";\"Schœneck\";\"main\"\n\"2975432\";\"Schoeneck\";\"ascii\"\n\"2975432\";\"Schoenecken\";\"other\"\n\"2975435\";\"Schnersheim\";\"main\"\n\"2975445\";\"Schirmeck\";\"main\"\n\"2975446\";\"Schiltigheim\";\"main\"\n\"2975446\";\"Schiltighein\";\"other\"\n\"2975446\";\"schilfigheim\";\"other\"\n\"2975449\";\"Scherwiller\";\"main\"\n\"2975460\";\"Scey-sur-Saône-et-Saint-Albin\";\"main\"\n\"2975460\";\"Scey-sur-Saone-et-Saint-Albin\";\"ascii\"\n\"2975460\";\"Scey-Saint-Albin\";\"other\"\n\"2975460\";\"Scey-sur-Saone\";\"other\"\n\"2975460\";\"Scey-sur-Saône\";\"other\"\n\"2975469\";\"Sceaux\";\"main\"\n\"2975469\";\"Sceaux-l'Unite\";\"other\"\n\"2975469\";\"Sceaux-l'Unité\";\"other\"\n\"2975485\";\"Scaër\";\"main\"\n\"2975485\";\"Scaer\";\"ascii\"\n\"2975485\";\"Skaer\";\"other\"\n\"2975492\";\"Saze\";\"main\"\n\"2975495\";\"Sayat\";\"main\"\n\"2975501\";\"Savy-Berlette\";\"main\"\n\"2975513\";\"Savonnières\";\"main\"\n\"2975513\";\"Savonnieres\";\"ascii\"\n\"2975513\";\"Savonniere\";\"other\"\n\"2975513\";\"Savonnière\";\"other\"\n\"2975525\";\"Savigny-sur-Orge\";\"main\"\n\"2975525\";\"Savigny\";\"other\"\n\"2975528\";\"Savigny-sur-Braye\";\"main\"\n\"2975528\";\"Savigny\";\"other\"\n\"2975535\";\"Savigny-Lévescault\";\"main\"\n\"2975535\";\"Savigny-Levescault\";\"ascii\"\n\"2975535\";\"Savigny\";\"other\"\n\"2975536\";\"Savigny-le-Temple\";\"main\"\n\"2975536\";\"Savigny\";\"other\"\n\"2975536\";\"Savigny-le-Port\";\"other\"\n\"2975536\";\"Savigny-sur-Balory\";\"other\"\n\"2975536\";\"Savin'i-le-khram\";\"other\"\n\"2975536\";\"Савиньи-ле-храм\";\"other\"\n\"2975538\";\"Savigny-lès-Beaune\";\"main\"\n\"2975538\";\"Savigny-les-Beaune\";\"ascii\"\n\"2975538\";\"Savigny\";\"other\"\n\"2975540\";\"Savigny-en-Véron\";\"main\"\n\"2975540\";\"Savigny-en-Veron\";\"ascii\"\n\"2975543\";\"Savigny-en-Sancerre\";\"main\"\n\"2975543\";\"Savigny\";\"other\"\n\"2975553\";\"Savigny\";\"main\"\n\"2975556\";\"Savigneux\";\"main\"\n\"2975558\";\"Savigné-sur-Lathan\";\"main\"\n\"2975558\";\"Savigne-sur-Lathan\";\"ascii\"\n\"2975558\";\"Savigne\";\"other\"\n\"2975558\";\"Savigné\";\"other\"\n\"2975561\";\"Savigné\";\"main\"\n\"2975561\";\"Savigne\";\"ascii\"\n\"2975588\";\"Saverne\";\"main\"\n\"2975588\";\"Zabern\";\"other\"\n\"2975592\";\"Saverdun\";\"main\"\n\"2975593\";\"Savennières\";\"main\"\n\"2975593\";\"Savennieres\";\"ascii\"\n\"2975597\";\"Savenay\";\"main\"\n\"2975597\";\"Savenneg\";\"other\"\n\"2975606\";\"Savasse\";\"main\"\n\"2975612\";\"Sauzé-Vaussais\";\"main\"\n\"2975612\";\"Sauze-Vaussais\";\"ascii\"\n\"2975616\";\"Sauzet\";\"main\"\n\"2975625\";\"Sauxillanges\";\"main\"\n\"2975635\";\"Sauvigny-les-Bois\";\"main\"\n\"2975635\";\"Sauvigny\";\"other\"\n\"2975647\";\"Sauviat-sur-Vige\";\"main\"\n\"2975647\";\"Sauviat\";\"other\"\n\"2975649\";\"Sauvian\";\"main\"\n\"2975655\";\"Sauveterre-de-Guyenne\";\"main\"\n\"2975655\";\"Sauveterre\";\"other\"\n\"2975659\";\"Sauveterre\";\"main\"\n\"2975663\";\"Sauveterre-de-Béarn\";\"main\"\n\"2975663\";\"Sauveterre-de-Bearn\";\"ascii\"\n\"2975663\";\"Sauveterre\";\"other\"\n\"2975667\";\"Sauverny\";\"main\"\n\"2975667\";\"Sauvergny\";\"other\"\n\"2975674\";\"Sauve\";\"main\"\n\"2975683\";\"Sauvagnon\";\"main\"\n\"2975702\";\"Sautron\";\"main\"\n\"2975702\";\"Saotron\";\"other\"\n\"2975726\";\"Sausset-les-Pins\";\"main\"\n\"2975726\";\"Sausset\";\"other\"\n\"2975740\";\"Saussay\";\"main\"\n\"2975740\";\"Sausset\";\"other\"\n\"2975741\";\"Saussan\";\"main\"\n\"2975743\";\"Sausheim\";\"main\"\n\"2975758\";\"Saumur\";\"main\"\n\"2975758\";\"Somjur\";\"other\"\n\"2975758\";\"somyuru\";\"other\"\n\"2975758\";\"Сомюр\";\"other\"\n\"2975758\";\"ソミュール\";\"other\"\n\"2975771\";\"Saulzoir\";\"main\"\n\"2975776\";\"Saulxures-sur-Moselotte\";\"main\"\n\"2975776\";\"Saulxures\";\"other\"\n\"2975778\";\"Saulxures-lès-Nancy\";\"main\"\n\"2975778\";\"Saulxures-les-Nancy\";\"ascii\"\n\"2975778\";\"Saulxures\";\"other\"\n\"2975785\";\"Saulx-les-Chartreux\";\"main\"\n\"2975785\";\"Saulx\";\"other\"\n\"2975785\";\"Saulx-le-Rocher\";\"other\"\n\"2975797\";\"Sault-lès-Rethel\";\"main\"\n\"2975797\";\"Sault-les-Rethel\";\"ascii\"\n\"2975797\";\"Sault\";\"other\"\n\"2975798\";\"Sault\";\"main\"\n\"2975798\";\"Sault-de-Vaucluse\";\"other\"\n\"2975801\";\"Sault-Brénaz\";\"main\"\n\"2975801\";\"Sault-Brenaz\";\"ascii\"\n\"2975801\";\"Sault\";\"other\"\n\"2975802\";\"Saultain\";\"main\"\n\"2975808\";\"Saulny\";\"main\"\n\"2975814\";\"Saulnes\";\"main\"\n\"2975819\";\"Saulieu\";\"main\"\n\"2975826\";\"Saulgé\";\"main\"\n\"2975826\";\"Saulge\";\"ascii\"\n\"2975833\";\"Saulcy-sur-Meurthe\";\"main\"\n\"2975833\";\"Saulcy\";\"other\"\n\"2975840\";\"Saulce-sur-Rhône\";\"main\"\n\"2975840\";\"Saulce-sur-Rhone\";\"ascii\"\n\"2975840\";\"Saulce\";\"other\"\n\"2975844\";\"Saujon\";\"main\"\n\"2975850\";\"Saugues\";\"main\"\n\"2975850\";\"Saugues-la-Montagne\";\"other\"\n\"2975854\";\"Saugnac-et-Cambran\";\"main\"\n\"2975883\";\"Saucats\";\"main\"\n\"2975885\";\"Saubrigues\";\"main\"\n\"2975887\";\"Saubion\";\"main\"\n\"2975888\";\"Saubens\";\"main\"\n\"2975891\";\"Satolas-et-Bonce\";\"main\"\n\"2975891\";\"Satolas\";\"other\"\n\"2975893\";\"Satillieu\";\"main\"\n\"2975894\";\"Sathonay-Village\";\"main\"\n\"2975894\";\"Sathonay\";\"other\"\n\"2975895\";\"Sathonay-Camp\";\"main\"\n\"2975907\";\"Sassenay\";\"main\"\n\"2975908\";\"Sassenage\";\"main\"\n\"2975916\";\"Sarzeau\";\"main\"\n\"2975916\";\"Sarzhav\";\"other\"\n\"2975921\";\"Sartrouville\";\"main\"\n\"2975924\";\"Sartilly\";\"main\"\n\"2975931\";\"Sartène\";\"main\"\n\"2975931\";\"Sartene\";\"ascii\"\n\"2975931\";\"Sarte\";\"other\"\n\"2975931\";\"Sartè\";\"other\"\n\"2975939\";\"Sarry\";\"main\"\n\"2975949\";\"Sarrola-Carcopino\";\"main\"\n\"2975949\";\"Sarrola\";\"other\"\n\"2975953\";\"Sarrians\";\"main\"\n\"2975953\";\"Marat\";\"other\"\n\"2975956\";\"Sarrewerden\";\"main\"\n\"2975957\";\"Sarre-Union\";\"main\"\n\"2975957\";\"Saar-Union\";\"other\"\n\"2975957\";\"Sarr-Union\";\"other\"\n\"2975961\";\"Sarreinsming\";\"main\"\n\"2975961\";\"Sarreinsmeing\";\"other\"\n\"2975964\";\"Sarreguemines\";\"main\"\n\"2975964\";\"Saargemines\";\"other\"\n\"2975964\";\"Saargemuend\";\"other\"\n\"2975964\";\"Saargemund\";\"other\"\n\"2975964\";\"Saargemünd\";\"other\"\n\"2975964\";\"Sargemin\";\"other\"\n\"2975964\";\"Sarrequemines\";\"other\"\n\"2975964\";\"saruguminu\";\"other\"\n\"2975964\";\"Саргемин\";\"other\"\n\"2975964\";\"サルグミーヌ\";\"other\"\n\"2975967\";\"Sarrebourg\";\"main\"\n\"2975967\";\"Saarburg\";\"other\"\n\"2975967\";\"Sarrebourc\";\"other\"\n\"2975980\";\"Sarras\";\"main\"\n\"2975992\";\"Sarralbe\";\"main\"\n\"2975992\";\"Saaralben\";\"other\"\n\"2976007\";\"Sarlat-la-Canéda\";\"main\"\n\"2976007\";\"Sarlat-la-Caneda\";\"ascii\"\n\"2976007\";\"Sarlat\";\"other\"\n\"2976014\";\"Sari-Solenzara\";\"main\"\n\"2976014\";\"Sari\";\"other\"\n\"2976014\";\"Sari-di-Porto-Vecchio\";\"other\"\n\"2976017\";\"Sargé-sur-Braye\";\"main\"\n\"2976017\";\"Sarge-sur-Braye\";\"ascii\"\n\"2976017\";\"Sarge\";\"other\"\n\"2976017\";\"Sargé\";\"other\"\n\"2976019\";\"Sargé-lès-le-Mans\";\"main\"\n\"2976019\";\"Sarge-les-le-Mans\";\"ascii\"\n\"2976019\";\"Sarge\";\"other\"\n\"2976019\";\"Sargé\";\"other\"\n\"2976021\";\"Sare\";\"main\"\n\"2976021\";\"Sara\";\"other\"\n\"2976043\";\"Sarcelles\";\"main\"\n\"2976043\";\"Sarcelles-Lochere\";\"other\"\n\"2976043\";\"Sarcelles-Lochère\";\"other\"\n\"2976043\";\"Sarsel'\";\"other\"\n\"2976043\";\"Сарсель\";\"other\"\n\"2976047\";\"Sarbazan\";\"main\"\n\"2976050\";\"Saran\";\"main\"\n\"2976084\";\"Saône\";\"main\"\n\"2976084\";\"Saone\";\"ascii\"\n\"2976090\";\"Sanvignes-les-Mines\";\"main\"\n\"2976090\";\"Sanvignes\";\"other\"\n\"2976108\";\"Santes\";\"main\"\n\"2976109\";\"Santeny\";\"main\"\n\"2976117\";\"Santec\";\"main\"\n\"2976117\";\"Santeg\";\"other\"\n\"2976140\";\"Santa-Maria-di-Lota\";\"main\"\n\"2976140\";\"Santa-Maria\";\"other\"\n\"2976145\";\"Santa-Lucia-di-Moriani\";\"main\"\n\"2976145\";\"Sainte-Lucie-de-Moriani\";\"other\"\n\"2976145\";\"Santa-Lucia\";\"other\"\n\"2976160\";\"Sansac-de-Marmiesse\";\"main\"\n\"2976160\";\"Sansac\";\"other\"\n\"2976179\";\"Sannois\";\"main\"\n\"2976180\";\"San-Nicolao\";\"main\"\n\"2976182\";\"Sannerville\";\"main\"\n\"2976186\";\"San-Martino-di-Lota\";\"main\"\n\"2976186\";\"San-Martino\";\"other\"\n\"2976195\";\"Sanguinet\";\"main\"\n\"2976217\";\"Sangatte\";\"main\"\n\"2976224\";\"Sandillon\";\"main\"\n\"2976231\";\"Sand\";\"main\"\n\"2976245\";\"Sancoins\";\"main\"\n\"2976249\";\"Sancey-le-Grand\";\"main\"\n\"2976251\";\"Sancerre\";\"main\"\n\"2976254\";\"Sancé\";\"main\"\n\"2976254\";\"Sance\";\"ascii\"\n\"2976258\";\"Sanary-sur-Mer\";\"main\"\n\"2976258\";\"Sanary\";\"other\"\n\"2976279\";\"Samoreau\";\"main\"\n\"2976281\";\"Samois-sur-Seine\";\"main\"\n\"2976281\";\"Samois\";\"other\"\n\"2976284\";\"Samoëns\";\"main\"\n\"2976284\";\"Samoens\";\"ascii\"\n\"2976285\";\"Sammeron\";\"main\"\n\"2976291\";\"Samer\";\"main\"\n\"2976292\";\"Saméon\";\"main\"\n\"2976292\";\"Sameon\";\"ascii\"\n\"2976301\";\"Samatan\";\"main\"\n\"2976305\";\"Samadet\";\"main\"\n\"2976310\";\"Salviac\";\"main\"\n\"2976337\";\"Salouël\";\"main\"\n\"2976337\";\"Salouel\";\"ascii\"\n\"2976341\";\"Salon-de-Provence\";\"main\"\n\"2976341\";\"Salon\";\"other\"\n\"2976341\";\"Salon-de-Provans\";\"other\"\n\"2976341\";\"saron=do=purovu~ansu\";\"other\"\n\"2976341\";\"Салон-де-Прованс\";\"other\"\n\"2976341\";\"サロン＝ド＝プロヴァンス\";\"other\"\n\"2976348\";\"Salomé\";\"main\"\n\"2976348\";\"Salome\";\"ascii\"\n\"2976358\";\"Salles-sur-Mer\";\"main\"\n\"2976358\";\"Salles\";\"other\"\n\"2976366\";\"Salles-la-Source\";\"main\"\n\"2976366\";\"Salles\";\"other\"\n\"2976375\";\"Salles-Curan\";\"main\"\n\"2976384\";\"Salles\";\"main\"\n\"2976387\";\"Sallertaine\";\"main\"\n\"2976399\";\"Sallebœuf\";\"main\"\n\"2976399\";\"Salleboeuf\";\"ascii\"\n\"2976404\";\"Sallaumines\";\"main\"\n\"2976404\";\"Sallaumones\";\"other\"\n\"2976406\";\"Sallanches\";\"main\"\n\"2976412\";\"Salins-les-Thermes\";\"main\"\n\"2976412\";\"Salins\";\"other\"\n\"2976413\";\"Salins-les-Bains\";\"main\"\n\"2976413\";\"Fort-Egalite\";\"other\"\n\"2976413\";\"Fort-Egalité\";\"other\"\n\"2976413\";\"Salins\";\"other\"\n\"2976415\";\"Salins\";\"main\"\n\"2976421\";\"Salindres\";\"main\"\n\"2976433\";\"Saligny\";\"main\"\n\"2976439\";\"Salignac\";\"main\"\n\"2976443\";\"Salies-du-Salat\";\"main\"\n\"2976443\";\"Salies\";\"other\"\n\"2976444\";\"Salies-de-Béarn\";\"main\"\n\"2976444\";\"Salies-de-Bearn\";\"ascii\"\n\"2976444\";\"Salies\";\"other\"\n\"2976459\";\"Saleux\";\"main\"\n\"2976470\";\"Sales\";\"main\"\n\"2976472\";\"Salernes\";\"main\"\n\"2976481\";\"Saleilles\";\"main\"\n\"2976481\";\"Salelles\";\"other\"\n\"2976489\";\"Salses-le-Château\";\"main\"\n\"2976489\";\"Salses-le-Chateau\";\"ascii\"\n\"2976489\";\"Salses\";\"other\"\n\"2976490\";\"Salbris\";\"main\"\n\"2976491\";\"Salbert\";\"main\"\n\"2976491\";\"Le Salbert\";\"other\"\n\"2976507\";\"Salaise-sur-Sanne\";\"main\"\n\"2976507\";\"Salaise\";\"other\"\n\"2976509\";\"Salagnon\";\"main\"\n\"2976516\";\"Saizerais\";\"main\"\n\"2976520\";\"Saïx\";\"main\"\n\"2976520\";\"Saix\";\"ascii\"\n\"2976521\";\"Saivres\";\"main\"\n\"2976534\";\"Saint-Zacharie\";\"main\"\n\"2976534\";\"Theonlen\";\"other\"\n\"2976534\";\"Théonlen\";\"other\"\n\"2976536\";\"Saint-Yzan-de-Soudiac\";\"main\"\n\"2976536\";\"Saint Yzan\";\"other\"\n\"2976537\";\"Saint-Yvi\";\"main\"\n\"2976537\";\"Sant-Ivi\";\"other\"\n\"2976542\";\"Saint-Yrieix-sur-Charente\";\"main\"\n\"2976542\";\"Saint Yrieix sobre Charenta\";\"other\"\n\"2976542\";\"Saint-Yrieix\";\"other\"\n\"2976542\";\"San Yrieix sobre Charenta\";\"other\"\n\"2976546\";\"Saint-Yrieix-la-Perche\";\"main\"\n\"2976546\";\"Saint-Yrieix\";\"other\"\n\"2976546\";\"Yrieix-la-Montagne\";\"other\"\n\"2976548\";\"Saint-Yorre\";\"main\"\n\"2976553\";\"Saint-Yan\";\"main\"\n\"2976553\";\"Yan-l'Arconce\";\"other\"\n\"2976556\";\"Saint-Xandre\";\"main\"\n\"2976556\";\"Gemmapes\";\"other\"\n\"2976557\";\"Saint-Witz\";\"main\"\n\"2976558\";\"Saint-Wandrille-Rançon\";\"main\"\n\"2976558\";\"Saint-Wandrille-Rancon\";\"ascii\"\n\"2976558\";\"Saint-Vandrille\";\"other\"\n\"2976558\";\"Saint-Wandrille\";\"other\"\n\"2976565\";\"Saint-Vrain\";\"main\"\n\"2976577\";\"Saint-Vite\";\"main\"\n\"2976579\";\"Saint-Vit\";\"main\"\n\"2976579\";\"Egalite-sur-Doubs\";\"other\"\n\"2976579\";\"Egalité-sur-Doubs\";\"other\"\n\"2976581\";\"Saint-Vincent-sur-Oust\";\"main\"\n\"2976581\";\"Saint-Vincent\";\"other\"\n\"2976581\";\"Sant-Visant-an-Oust\";\"other\"\n\"2976585\";\"Saint-Vincent-sur-Graon\";\"main\"\n\"2976585\";\"Le Graon\";\"other\"\n\"2976585\";\"Saint-Vincent\";\"other\"\n\"2976600\";\"Saint-Vincent-de-Tyrosse\";\"main\"\n\"2976600\";\"Saint-Vincent\";\"other\"\n\"2976600\";\"San Bisentse\";\"other\"\n\"2976603\";\"Saint-Vincent-des-Landes\";\"main\"\n\"2976603\";\"Saint Vincent\";\"other\"\n\"2976603\";\"Sant-Visant-al-Lann\";\"other\"\n\"2976607\";\"Saint-Vincent-de-Paul\";\"main\"\n\"2976607\";\"Saint-Vincent\";\"other\"\n\"2976608\";\"Saint-Vincent-de-Paul\";\"main\"\n\"2976609\";\"Saint-Vincent-de-Mercuze\";\"main\"\n\"2976609\";\"Saint Vincent-de Mercuse\";\"other\"\n\"2976609\";\"Saint-Vincent\";\"other\"\n\"2976637\";\"Saint-Vigor-le-Grand\";\"main\"\n\"2976637\";\"Saint-Vigor\";\"other\"\n\"2976643\";\"Saint-Victurnien\";\"main\"\n\"2976653\";\"Saint-Victor-la-Coste\";\"main\"\n\"2976653\";\"Saint-Victor\";\"other\"\n\"2976653\";\"Serre-la-Coste\";\"other\"\n\"2976656\";\"Saint-Victoret\";\"main\"\n\"2976663\";\"Saint-Victor-de-Cessieu\";\"main\"\n\"2976663\";\"Saint-Victor\";\"other\"\n\"2976667\";\"Saint-Victor\";\"main\"\n\"2976678\";\"Saint-Viaud\";\"main\"\n\"2976678\";\"Sant-Widel-Skovrid\";\"other\"\n\"2976679\";\"Saint-Viâtre\";\"main\"\n\"2976679\";\"Saint-Viatre\";\"ascii\"\n\"2976680\";\"Saint-Viance\";\"main\"\n\"2976680\";\"Avelque-Courte\";\"other\"\n\"2976680\";\"Belle-Rive\";\"other\"\n\"2976683\";\"Saint-Vérand\";\"main\"\n\"2976683\";\"Saint-Verand\";\"ascii\"\n\"2976684\";\"Saint-Vérand\";\"main\"\n\"2976684\";\"Saint-Verand\";\"ascii\"\n\"2976690\";\"Saint-Venant\";\"main\"\n\"2976690\";\"Fort-Vert\";\"other\"\n\"2976690\";\"Pot-Vert\";\"other\"\n\"2976691\";\"Saint-Vaury\";\"main\"\n\"2976693\";\"Saint-Varent\";\"main\"\n\"2976695\";\"Saint-Vallier-de-Thiey\";\"main\"\n\"2976695\";\"Saint-Vallier\";\"other\"\n\"2976697\";\"Saint-Vallier\";\"main\"\n\"2976697\";\"Vallier-les-Bois\";\"other\"\n\"2976699\";\"Saint-Vallier\";\"main\"\n\"2976699\";\"Val-Libre\";\"other\"\n\"2976701\";\"Saint-Valery-sur-Somme\";\"main\"\n\"2976701\";\"La Montagne-sur-Somme\";\"other\"\n\"2976701\";\"Port-Somme\";\"other\"\n\"2976701\";\"Saint-Valery\";\"other\"\n\"2976703\";\"Saint-Valery-en-Caux\";\"main\"\n\"2976703\";\"Port-le-Pelletier\";\"other\"\n\"2976703\";\"Saint-Valery\";\"other\"\n\"2976703\";\"Saint-Valéry\";\"other\"\n\"2976704\";\"Saint-Valérien\";\"main\"\n\"2976704\";\"Saint-Valerien\";\"ascii\"\n\"2976712\";\"Saint-Vaast-la-Hougue\";\"main\"\n\"2976712\";\"La Hougue\";\"other\"\n\"2976712\";\"Port-la-Hougue\";\"other\"\n\"2976712\";\"Saint-Vaast\";\"other\"\n\"2976719\";\"Saint-Uze\";\"main\"\n\"2976719\";\"Mont-Bertheud\";\"other\"\n\"2976721\";\"Saint-Usuge\";\"main\"\n\"2976721\";\"Chalon-sur-Seille\";\"other\"\n\"2976724\";\"Saint-Usage\";\"main\"\n\"2976724\";\"Bon-Usage\";\"other\"\n\"2976730\";\"Saint-Urbain\";\"main\"\n\"2976730\";\"Lannurvan\";\"other\"\n\"2976731\";\"Saint-Urbain\";\"main\"\n\"2976742\";\"Saint-Tropez\";\"main\"\n\"2976742\";\"Heraclee\";\"other\"\n\"2976742\";\"Héraclée\";\"other\"\n\"2976742\";\"San-Trope\";\"other\"\n\"2976742\";\"santorope\";\"other\"\n\"2976742\";\"Сан-Тропе\";\"other\"\n\"2976742\";\"サントロペ\";\"other\"\n\"2976743\";\"Saint-Trojan-les-Bains\";\"main\"\n\"2976743\";\"La Montagne\";\"other\"\n\"2976743\";\"Saint-Trojan\";\"other\"\n\"2976747\";\"Saint-Trivier-sur-Moignans\";\"main\"\n\"2976747\";\"Pont-Moignans\";\"other\"\n\"2976747\";\"Saint-Trivier\";\"other\"\n\"2976748\";\"Saint-Trivier-de-Courtes\";\"main\"\n\"2976748\";\"Saint-Trivier\";\"other\"\n\"2976748\";\"Val-Libre\";\"other\"\n\"2976756\";\"Saint-Thuriau\";\"main\"\n\"2976756\";\"Sant-Turiav\";\"other\"\n\"2976757\";\"Saint-Thurial\";\"main\"\n\"2976757\";\"Sant-Turiav-Porc'hoed\";\"other\"\n\"2976759\";\"Saint-Thonan\";\"main\"\n\"2976759\";\"Sant-Tonan\";\"other\"\n\"2976777\";\"Saint-Thibéry\";\"main\"\n\"2976777\";\"Saint-Thibery\";\"ascii\"\n\"2976780\";\"Saint-Thibault-des-Vignes\";\"main\"\n\"2976780\";\"La Cote-des-Vignes\";\"other\"\n\"2976780\";\"La Côte-des-Vignes\";\"other\"\n\"2976780\";\"Saint-Thibault\";\"other\"\n\"2976791\";\"Saint-Thégonnec\";\"main\"\n\"2976791\";\"Saint-Thegonnec\";\"ascii\"\n\"2976791\";\"Sant-Tegoneg\";\"other\"\n\"2976794\";\"Saint-Symphorien-sur-Coise\";\"main\"\n\"2976794\";\"Chausse-Armee\";\"other\"\n\"2976794\";\"Chausse-Armée\";\"other\"\n\"2976794\";\"Saint-Symphorien\";\"other\"\n\"2976805\";\"Saint-Symphorien-de-Lay\";\"main\"\n\"2976805\";\"Lay\";\"other\"\n\"2976805\";\"Saint-Symphorien\";\"other\"\n\"2976805\";\"Symphorien-Lay\";\"other\"\n\"2976816\";\"Saint-Symphorien\";\"main\"\n\"2976816\";\"Phorien-sur-Sevre\";\"other\"\n\"2976816\";\"Phorien-sur-Sèvre\";\"other\"\n\"2976816\";\"saint symphorien\";\"other\"\n\"2976818\";\"Saint-Symphorien\";\"main\"\n\"2976818\";\"Grand-Air\";\"other\"\n\"2976818\";\"La Hure\";\"other\"\n\"2976820\";\"Saint-Sylvestre-sur-Lot\";\"main\"\n\"2976820\";\"Saint-Sylvestre\";\"other\"\n\"2976821\";\"Saint-Sylvestre-Pragoulin\";\"main\"\n\"2976821\";\"Saint-Sylvestre\";\"other\"\n\"2976823\";\"Saint-Sylvestre-Cappel\";\"main\"\n\"2976830\";\"Saint-Sylvain\";\"main\"\n\"2976836\";\"Saint-Sulpice-sur-Risle\";\"main\"\n\"2976836\";\"Saint-Sulpice\";\"other\"\n\"2976836\";\"Saint-Sulpice-sur-Rile\";\"other\"\n\"2976836\";\"Saint-Sulpice-sur-Rille\";\"other\"\n\"2976836\";\"Saint-Sulpice-sur-Rîle\";\"other\"\n\"2976836\";\"Sulpice-la-Montagne\";\"other\"\n\"2976836\";\"Vendemiaire\";\"other\"\n\"2976836\";\"Vendémiaire\";\"other\"\n\"2976837\";\"Saint-Sulpice-sur-Lèze\";\"main\"\n\"2976837\";\"Saint-Sulpice-sur-Leze\";\"ascii\"\n\"2976837\";\"Libre-Lese\";\"other\"\n\"2976837\";\"Libre-Lèse\";\"other\"\n\"2976837\";\"Saint-Sulpice\";\"other\"\n\"2976840\";\"Saint-Sulpice-les-Feuilles\";\"main\"\n\"2976840\";\"Saint-Sulpice\";\"other\"\n\"2976843\";\"Saint-Sulpice-le-Guérétois\";\"main\"\n\"2976843\";\"Saint-Sulpice-le-Gueretois\";\"ascii\"\n\"2976843\";\"Saint-Sulpice\";\"other\"\n\"2976846\";\"Saint-Sulpice-la-Forêt\";\"main\"\n\"2976846\";\"Saint-Sulpice-la-Foret\";\"ascii\"\n\"2976846\";\"Saint-Sulpice\";\"other\"\n\"2976846\";\"Sant-Suleg-ar-C'hoad\";\"other\"\n\"2976847\";\"Saint-Sulpice-et-Cameyrac\";\"main\"\n\"2976847\";\"Saint-Sulpice\";\"other\"\n\"2976855\";\"Saint-Sulpice-de-Royan\";\"main\"\n\"2976855\";\"Saint-Sulpice\";\"other\"\n\"2976862\";\"Saint-Sulpice-de-Faleyrens\";\"main\"\n\"2976862\";\"Saint-Sulpice\";\"other\"\n\"2976862\";\"Saint-Sulpice-de Faleyren\";\"other\"\n\"2976863\";\"Saint-Sulpice-de-Cognac\";\"main\"\n\"2976863\";\"Saint-Sulpice\";\"other\"\n\"2976866\";\"Saint-Sulpice\";\"main\"\n\"2976868\";\"Saint-Sulpice-de-Pommeray\";\"main\"\n\"2976868\";\"Les Gorges-Sableuses\";\"other\"\n\"2976868\";\"Sulpice\";\"other\"\n\"2976868\";\"Suplice\";\"other\"\n\"2976879\";\"Saint-Sulpice\";\"main\"\n\"2976879\";\"Saint-Sulpice-la-Pointe\";\"other\"\n\"2976883\";\"Saint-Soupplets\";\"main\"\n\"2976885\";\"Saint-Souplet\";\"main\"\n\"2976895\";\"Saint-Sorlin-en-Valloire\";\"main\"\n\"2976895\";\"Saint-Sorlin\";\"other\"\n\"2976896\";\"Saint-Sorlin-en-Bugey\";\"main\"\n\"2976896\";\"Bonne-Fontaine\";\"other\"\n\"2976896\";\"Saint-Sorlin\";\"other\"\n\"2976914\";\"Saint-Simon\";\"main\"\n\"2976919\";\"Saint-Siméon-de-Bressieux\";\"main\"\n\"2976919\";\"Saint-Simeon-de-Bressieux\";\"ascii\"\n\"2976919\";\"Saint-Simeon\";\"other\"\n\"2976939\";\"Saint-Sever-Calvados\";\"main\"\n\"2976939\";\"Saint-Sever\";\"other\"\n\"2976942\";\"Saint-Sever\";\"main\"\n\"2976942\";\"Mont-Adour\";\"other\"\n\"2976942\";\"Saint-Sever-sur-l'Adour\";\"other\"\n\"2976944\";\"Saint-Seurin-sur-l'Isle\";\"main\"\n\"2976944\";\"Saint-Seurin\";\"other\"\n\"2976962\";\"Saint-Sernin-du-Bois\";\"main\"\n\"2976962\";\"Saint-Sernin\";\"other\"\n\"2976964\";\"Saint-Sernin\";\"main\"\n\"2976969\";\"Saint-Senoux\";\"main\"\n\"2976969\";\"Sant-Senour\";\"other\"\n\"2976972\";\"Saint-Senier-sous-Avranches\";\"main\"\n\"2976972\";\"Saint-Senier\";\"other\"\n\"2976974\";\"Saint-Selve\";\"main\"\n\"2976984\";\"Saint-Sébastien-sur-Loire\";\"main\"\n\"2976984\";\"Saint-Sebastien-sur-Loire\";\"ascii\"\n\"2976984\";\"Saint-Sebastien\";\"other\"\n\"2976984\";\"Saint-Sébastien\";\"other\"\n\"2976984\";\"San Sebastian sobre Loira\";\"other\"\n\"2976984\";\"San Sebastián sobre Loira\";\"other\"\n\"2976984\";\"Sankt-Sebast'jan-sjur-Luar\";\"other\"\n\"2976984\";\"Sant-Sebastian-an-Enk\";\"other\"\n\"2976984\";\"Санкт-Себастьян-сюр-Луар\";\"other\"\n\"2976986\";\"Saint-Sébastien-de-Morsent\";\"main\"\n\"2976986\";\"Saint-Sebastien-de-Morsent\";\"ascii\"\n\"2976986\";\"Saint-Sebastien\";\"other\"\n\"2976986\";\"Saint-Sebastion-de Morsent\";\"other\"\n\"2976986\";\"Saint-Sébastien\";\"other\"\n\"2976986\";\"Saint-Sébastion-de Morsent\";\"other\"\n\"2976994\";\"Saint-Savournin\";\"main\"\n\"2976996\";\"Saint-Savinien\";\"main\"\n\"2976996\";\"Carriere-Charente\";\"other\"\n\"2976996\";\"Carrière-Charente\";\"other\"\n\"2976996\";\"La Roche-sur-Charente\";\"other\"\n\"2976997\";\"Saint-Savin\";\"main\"\n\"2976997\";\"Mont-des-Landes\";\"other\"\n\"2976997\";\"Saint-Savin-de-Blay\";\"other\"\n\"2977000\";\"Saint-Savin\";\"main\"\n\"2977000\";\"Pont-sur-Gartempe\";\"other\"\n\"2977000\";\"Saint-Savin-sur-Gartempe\";\"other\"\n\"2977001\";\"Saint-Savin\";\"main\"\n\"2977006\";\"Saint-Sauveur-sur-École\";\"main\"\n\"2977006\";\"Saint-Sauveur-sur-Ecole\";\"ascii\"\n\"2977006\";\"Saint-Sauveur\";\"other\"\n\"2977007\";\"Saint-Sauveur-le-Vicomte\";\"main\"\n\"2977007\";\"Saint-Sauveur\";\"other\"\n\"2977007\";\"Sauveur-sur-Douve\";\"other\"\n\"2977010\";\"Saint-Sauveur-Lendelin\";\"main\"\n\"2977015\";\"Saint-Sauveur-en-Rue\";\"main\"\n\"2977015\";\"Saint-Sauveur\";\"other\"\n\"2977019\";\"Saint-Sauveur-des-Landes\";\"main\"\n\"2977019\";\"Kersalver-al-Lann\";\"other\"\n\"2977019\";\"Saint-Sauveur\";\"other\"\n\"2977023\";\"Saint-Sauveur-de-Montagut\";\"main\"\n\"2977023\";\"Saint-Sauveur\";\"other\"\n\"2977033\";\"Saint-Sauveur\";\"main\"\n\"2977034\";\"Saint-Sauveur\";\"main\"\n\"2977034\";\"La Reunion\";\"other\"\n\"2977034\";\"La Réunion\";\"other\"\n\"2977034\";\"Sauveur-Geromenil\";\"other\"\n\"2977034\";\"Sauveur-Géroménil\";\"other\"\n\"2977038\";\"Saint-Sauveur\";\"main\"\n\"2977041\";\"Saint-Sauveur\";\"main\"\n\"2977043\";\"Saint-Sauveur\";\"main\"\n\"2977044\";\"Saint-Sauveur\";\"main\"\n\"2977049\";\"Saint-Sauveur\";\"main\"\n\"2977050\";\"Saint-Sauves-d'Auvergne\";\"main\"\n\"2977050\";\"Saint-Sauves\";\"other\"\n\"2977050\";\"Sauve-Libre\";\"other\"\n\"2977054\";\"Saint-Sauvant\";\"main\"\n\"2977054\";\"Saint-Sauvant-la-Plaine\";\"other\"\n\"2977054\";\"Sauvent-la-Plaine\";\"other\"\n\"2977058\";\"Saint-Saulve\";\"main\"\n\"2977062\";\"Saint-Saturnin-sur-Loire\";\"main\"\n\"2977062\";\"Mont-Rude\";\"other\"\n\"2977062\";\"Saint-Saturnin\";\"other\"\n\"2977063\";\"Saint-Saturnin-lès-Avignon\";\"main\"\n\"2977063\";\"Saint-Saturnin-les-Avignon\";\"ascii\"\n\"2977063\";\"Mont-Saturnin\";\"other\"\n\"2977063\";\"Saint-Saturnin\";\"other\"\n\"2977068\";\"Saint-Saturnin-lès-Apt\";\"main\"\n\"2977068\";\"Saint-Saturnin-les-Apt\";\"ascii\"\n\"2977068\";\"Saint-Saturnin\";\"other\"\n\"2977070\";\"Saint-Saturnin\";\"main\"\n\"2977072\";\"Saint-Saturnin\";\"main\"\n\"2977073\";\"Saint-Saturnin\";\"main\"\n\"2977077\";\"Saint-Satur\";\"main\"\n\"2977077\";\"Thibault-la-Fontaine\";\"other\"\n\"2977085\";\"Saint-Samson-sur-Rance\";\"main\"\n\"2977085\";\"Saint-Samson\";\"other\"\n\"2977085\";\"Sant-Samzun\";\"other\"\n\"2977100\";\"Saint-Saëns\";\"main\"\n\"2977100\";\"Saint-Saens\";\"ascii\"\n\"2977100\";\"Saens-la-Foret\";\"other\"\n\"2977100\";\"Saens-la-Forêt\";\"other\"\n\"2977101\";\"Saints\";\"main\"\n\"2977103\";\"Saintry-sur-Seine\";\"main\"\n\"2977103\";\"Saintry\";\"other\"\n\"2977114\";\"Saint-Romans\";\"main\"\n\"2977114\";\"Romans-Libre\";\"other\"\n\"2977122\";\"Saint-Romain-sur-Cher\";\"main\"\n\"2977122\";\"Brutus\";\"other\"\n\"2977122\";\"Saint-Romain\";\"other\"\n\"2977126\";\"Saint-Romain-le-Puy\";\"main\"\n\"2977126\";\"Saint-Romain\";\"other\"\n\"2977131\";\"Saint-Romain-la-Motte\";\"main\"\n\"2977131\";\"Saint-Romain\";\"other\"\n\"2977137\";\"Saint-Romain-en-Gal\";\"main\"\n\"2977137\";\"Romain-les-Roches\";\"other\"\n\"2977137\";\"Saint Romain\";\"other\"\n\"2977142\";\"Saint-Romain-de-Popey\";\"main\"\n\"2977142\";\"Saint Romain\";\"other\"\n\"2977145\";\"Saint-Romain-de-Jalionas\";\"main\"\n\"2977145\";\"Saint Romain\";\"other\"\n\"2977146\";\"Saint-Romain-de-Colbosc\";\"main\"\n\"2977146\";\"Romain-de-Colbosc\";\"other\"\n\"2977146\";\"Saint-Romain\";\"other\"\n\"2977147\";\"Saint-Romain-de-Benet\";\"main\"\n\"2977147\";\"Romain-la-Fontaine\";\"other\"\n\"2977147\";\"Saint-Romain\";\"other\"\n\"2977159\";\"Saint-Rogatien\";\"main\"\n\"2977159\";\"L'Egalite\";\"other\"\n\"2977159\";\"L'Egalité\";\"other\"\n\"2977159\";\"Prompt-Secours\";\"other\"\n\"2977178\";\"Saint-Riquier\";\"main\"\n\"2977187\";\"Saint-Restitut\";\"main\"\n\"2977187\";\"Restitut-la-Montagne\";\"other\"\n\"2977189\";\"Saint-Renan\";\"main\"\n\"2977189\";\"Lokournan\";\"other\"\n\"2977190\";\"Saint-Rémy-sur-Durolle\";\"main\"\n\"2977190\";\"Saint-Remy-sur-Durolle\";\"ascii\"\n\"2977190\";\"Montoncel\";\"other\"\n\"2977190\";\"Saint-Remy\";\"other\"\n\"2977190\";\"Saint-Rémy\";\"other\"\n\"2977193\";\"Saint-Rémy-sur-Avre\";\"main\"\n\"2977193\";\"Saint-Remy-sur-Avre\";\"ascii\"\n\"2977193\";\"Saint Remi-sur-Avre\";\"other\"\n\"2977193\";\"Saint Rémi-sur-Avre\";\"other\"\n\"2977193\";\"Saint-Remy\";\"other\"\n\"2977193\";\"Saint-Remy-Avre\";\"other\"\n\"2977193\";\"Saint-Rémy\";\"other\"\n\"2977197\";\"Saint-Rémy-lès-Chevreuse\";\"main\"\n\"2977197\";\"Saint-Remy-les-Chevreuse\";\"ascii\"\n\"2977197\";\"Saint-Remy\";\"other\"\n\"2977202\";\"Saint-Rémy-en-Rollat\";\"main\"\n\"2977202\";\"Saint-Remy-en-Rollat\";\"ascii\"\n\"2977202\";\"Saint-Remy\";\"other\"\n\"2977202\";\"Saint-Rémy\";\"other\"\n\"2977202\";\"Servagnon\";\"other\"\n\"2977204\";\"Saint-Rémy-en-Mauges\";\"main\"\n\"2977204\";\"Saint-Remy-en-Mauges\";\"ascii\"\n\"2977204\";\"Saint-Remy\";\"other\"\n\"2977214\";\"Saint-Rémy-de-Provence\";\"main\"\n\"2977214\";\"Saint-Remy-de-Provence\";\"ascii\"\n\"2977214\";\"Glanum\";\"other\"\n\"2977214\";\"Saint Remy Provence\";\"other\"\n\"2977214\";\"Saint-Remy\";\"other\"\n\"2977214\";\"Saint-Rémy\";\"other\"\n\"2977214\";\"St Remy Provence\";\"other\"\n\"2977214\";\"san=remi=do=purovu~ansu\";\"other\"\n\"2977214\";\"サン＝レミ＝ド＝プロヴァンス\";\"other\"\n\"2977225\";\"Saint-Rémy\";\"main\"\n\"2977225\";\"Saint-Remy\";\"ascii\"\n\"2977229\";\"Saint-Rémy\";\"main\"\n\"2977229\";\"Saint-Remy\";\"ascii\"\n\"2977229\";\"Bellevue-sur-Saone\";\"other\"\n\"2977229\";\"Bellevue-sur-Saône\";\"other\"\n\"2977229\";\"Chene-Libre\";\"other\"\n\"2977229\";\"Chêne-Libre\";\"other\"\n\"2977235\";\"Saint-Rémy-de-Maurienne\";\"main\"\n\"2977235\";\"Saint-Remy-de-Maurienne\";\"ascii\"\n\"2977246\";\"Saint-Raphaël\";\"main\"\n\"2977246\";\"Saint-Raphael\";\"ascii\"\n\"2977246\";\"Barraton\";\"other\"\n\"2977246\";\"Saint Raphell\";\"other\"\n\"2977246\";\"Sent-Rafaehl'\";\"other\"\n\"2977246\";\"Сент-Рафаэль\";\"other\"\n\"2977250\";\"Saint-Rambert-en-Bugey\";\"main\"\n\"2977250\";\"Mont-Ferme\";\"other\"\n\"2977250\";\"Saint-Rambert\";\"other\"\n\"2977261\";\"Saint-Quentin-sur-le-Homme\";\"main\"\n\"2977261\";\"Saint-Quentin\";\"other\"\n\"2977262\";\"Saint-Quentin-sur-Isère\";\"main\"\n\"2977262\";\"Saint-Quentin-sur-Isere\";\"ascii\"\n\"2977262\";\"Saint-Quentin\";\"other\"\n\"2977274\";\"Saint-Quentin-la-Poterie\";\"main\"\n\"2977274\";\"Quentin-la-Poterie\";\"other\"\n\"2977274\";\"Saint-Quentin\";\"other\"\n\"2977277\";\"Saint-Quentin-Fallavier\";\"main\"\n\"2977277\";\"Fallavier\";\"other\"\n\"2977277\";\"Grand-Chalier\";\"other\"\n\"2977277\";\"Grand-Châlier\";\"other\"\n\"2977277\";\"Saint-Quentin\";\"other\"\n\"2977280\";\"Saint-Quentin-en-Mauges\";\"main\"\n\"2977280\";\"Saint-Quentin\";\"other\"\n\"2977287\";\"Saint-Quentin-de-Baron\";\"main\"\n\"2977287\";\"Saint-Quentin\";\"other\"\n\"2977295\";\"Saint-Quentin\";\"main\"\n\"2977295\";\"Egalite-sur-Somme\";\"other\"\n\"2977295\";\"Egalité-sur-Somme\";\"other\"\n\"2977295\";\"Linon-sur-Somme\";\"other\"\n\"2977295\";\"Somme-Libre\";\"other\"\n\"2977299\";\"Saint-Quay-Portrieux\";\"main\"\n\"2977299\";\"Saint-Quay\";\"other\"\n\"2977299\";\"Sant-Ke-Porzh-Olued\";\"other\"\n\"2977300\";\"Saint-Quay-Perros\";\"main\"\n\"2977300\";\"Saint-Quay\";\"other\"\n\"2977300\";\"Sant-Ke-Perroz\";\"other\"\n\"2977304\";\"Saint-Python\";\"main\"\n\"2977308\";\"Saint-Pryvé-Saint-Mesmin\";\"main\"\n\"2977308\";\"Saint-Pryve-Saint-Mesmin\";\"ascii\"\n\"2977308\";\"Saint-Pryve\";\"other\"\n\"2977308\";\"Saint-Pryvé\";\"other\"\n\"2977309\";\"Saint-Prouant\";\"main\"\n\"2977309\";\"La Draperie\";\"other\"\n\"2977310\";\"Saint-Projet-Saint-Constant\";\"main\"\n\"2977310\";\"Saint-Projet\";\"other\"\n\"2977317\";\"Saint-Prix\";\"main\"\n\"2977323\";\"Saint-Privat-la-Montagne\";\"main\"\n\"2977323\";\"Saint-Privat\";\"other\"\n\"2977327\";\"Saint-Privat-des-Vieux\";\"main\"\n\"2977327\";\"La Font-le-Vieux\";\"other\"\n\"2977327\";\"Marat-de-Bruege\";\"other\"\n\"2977327\";\"Marat-de-Bruège\";\"other\"\n\"2977327\";\"Saint-Privat\";\"other\"\n\"2977332\";\"Saint-Privat\";\"main\"\n\"2977332\";\"Privat-Haute-Montagne\";\"other\"\n\"2977332\";\"Privat-le-Centre\";\"other\"\n\"2977333\";\"Saint-Privat\";\"main\"\n\"2977336\";\"Saint-Priest-Taurion\";\"main\"\n\"2977336\";\"Saint-Priest\";\"other\"\n\"2977337\";\"Saint-Priest-sous-Aixe\";\"main\"\n\"2977337\";\"Saint-Priest\";\"other\"\n\"2977350\";\"Saint-Priest-en-Jarez\";\"main\"\n\"2977350\";\"Saint-Priest\";\"other\"\n\"2977356\";\"Saint-Priest\";\"main\"\n\"2977356\";\"Beau-Priest\";\"other\"\n\"2977356\";\"Zele-Patriote\";\"other\"\n\"2977356\";\"Zélé-Patriote\";\"other\"\n\"2977358\";\"Saint-Priest\";\"main\"\n\"2977358\";\"Val-d'Or\";\"other\"\n\"2977360\";\"Saint-Prest\";\"main\"\n\"2977365\";\"Saint-Pourçain-sur-Sioule\";\"main\"\n\"2977365\";\"Saint-Pourcain-sur-Sioule\";\"ascii\"\n\"2977365\";\"Mont-sur-Sioule\";\"other\"\n\"2977365\";\"Saint-Pourcain\";\"other\"\n\"2977365\";\"Saint-Pourçain\";\"other\"\n\"2977368\";\"Saint-Pouange\";\"main\"\n\"2977371\";\"Saint-Porquier\";\"main\"\n\"2977371\";\"Mont-Porquier\";\"other\"\n\"2977373\";\"Saint-Porchaire\";\"main\"\n\"2977373\";\"L'Epine\";\"other\"\n\"2977382\";\"Saint-Pons-de-Thomières\";\"main\"\n\"2977382\";\"Saint-Pons-de-Thomieres\";\"ascii\"\n\"2977387\";\"Saint-Pol-sur-Ternoise\";\"main\"\n\"2977387\";\"Pol\";\"other\"\n\"2977387\";\"Rernois-Libre\";\"other\"\n\"2977387\";\"Saint-Pol\";\"other\"\n\"2977388\";\"Saint-Pol-sur-Mer\";\"main\"\n\"2977388\";\"Saint-Pol\";\"other\"\n\"2977388\";\"Sen-Pol'-sjur-Mer\";\"other\"\n\"2977388\";\"Сен-Поль-сюр-Мер\";\"other\"\n\"2977390\";\"Saint-Pol-de-Léon\";\"main\"\n\"2977390\";\"Saint-Pol-de-Leon\";\"ascii\"\n\"2977390\";\"Kastell-Paol\";\"other\"\n\"2977390\";\"Mont-Frimaire\";\"other\"\n\"2977390\";\"Port-Pol\";\"other\"\n\"2977397\";\"Saint-Planchers\";\"main\"\n\"2977411\";\"Saint-Pierre-sur-Dives\";\"main\"\n\"2977411\";\"Saint-Pierre\";\"other\"\n\"2977414\";\"Saint-Pierre-Quiberon\";\"main\"\n\"2977414\";\"Sant-Per-Kiberen\";\"other\"\n\"2977414\";\"Sant-Pêr-Kiberen\";\"other\"\n\"2977415\";\"Saint-Pierre-Montlimart\";\"main\"\n\"2977415\";\"Saint-Pierre\";\"other\"\n\"2977415\";\"Saint-Pierre-Montlimard\";\"other\"\n\"2977425\";\"Saint-Pierre-lès-Nemours\";\"main\"\n\"2977425\";\"Saint-Pierre-les-Nemours\";\"ascii\"\n\"2977425\";\"Saint-Pierre\";\"other\"\n\"2977428\";\"Saint-Pierre-lès-Elbeuf\";\"main\"\n\"2977428\";\"Saint-Pierre-les-Elbeuf\";\"ascii\"\n\"2977428\";\"Saint-Pierre\";\"other\"\n\"2977432\";\"Saint-Pierre-le-Moûtier\";\"main\"\n\"2977432\";\"Saint-Pierre-le-Moutier\";\"ascii\"\n\"2977432\";\"Brutus-la-Vallee\";\"other\"\n\"2977432\";\"Brutus-la-Vallée\";\"other\"\n\"2977432\";\"Brutus-le-Magnanime\";\"other\"\n\"2977432\";\"Brutus-le-Moutier\";\"other\"\n\"2977432\";\"Saint-Pierre\";\"other\"\n\"2977441\";\"Saint-Pierre-la-Palud\";\"main\"\n\"2977441\";\"Palud-la-Montagne\";\"other\"\n\"2977441\";\"Pelletier-la-Palud\";\"other\"\n\"2977441\";\"Saint Pierre\";\"other\"\n\"2977446\";\"Saint-Pierre-la-Cour\";\"main\"\n\"2977446\";\"Bourg-l'Union\";\"other\"\n\"2977446\";\"Saint-Pierre\";\"other\"\n\"2977451\";\"Saint-Pierre-en-Val\";\"main\"\n\"2977451\";\"Saint-Pierre\";\"other\"\n\"2977453\";\"Saint-Pierre-Église\";\"main\"\n\"2977453\";\"Saint-Pierre-Eglise\";\"ascii\"\n\"2977453\";\"Pierre-Ferme\";\"other\"\n\"2977453\";\"Saint-Pierre\";\"other\"\n\"2977454\";\"Saint-Pierre-du-Vauvray\";\"main\"\n\"2977454\";\"Saint-Pierre\";\"other\"\n\"2977456\";\"Saint-Pierre-du-Regard\";\"main\"\n\"2977456\";\"Saint-Pierre\";\"other\"\n\"2977458\";\"Saint-Pierre-du-Perray\";\"main\"\n\"2977458\";\"Saint-Pierre\";\"other\"\n\"2977462\";\"Saint-Pierre-du-Mont\";\"main\"\n\"2977462\";\"Saint-Pierre\";\"other\"\n\"2977467\";\"Saint-Pierre-du-Chemin\";\"main\"\n\"2977467\";\"Chemin-sur-le-Lay\";\"other\"\n\"2977467\";\"Saint-Pierre\";\"other\"\n\"2977477\";\"Saint-Pierre-de-Varengeville\";\"main\"\n\"2977477\";\"Saint-Pierre\";\"other\"\n\"2977482\";\"Saint-Pierre-des-Nids\";\"main\"\n\"2977482\";\"Saint-Pierre\";\"other\"\n\"2977488\";\"Saint-Pierre-des-Fleurs\";\"main\"\n\"2977488\";\"Saint-Pierre\";\"other\"\n\"2977490\";\"Saint-Pierre-des-Échaubrognes\";\"main\"\n\"2977490\";\"Saint-Pierre-des-Echaubrognes\";\"ascii\"\n\"2977490\";\"Saint-Pierre\";\"other\"\n\"2977491\";\"Saint-Pierre-des-Corps\";\"main\"\n\"2977491\";\"La Clarte-Republicaine\";\"other\"\n\"2977491\";\"La Clarté-Républicaine\";\"other\"\n\"2977491\";\"Saint-Pierre\";\"other\"\n\"2977497\";\"Saint-Pierre-de-Plesguen\";\"main\"\n\"2977497\";\"Saint-Pierre\";\"other\"\n\"2977497\";\"Sant-Per-Plewenn\";\"other\"\n\"2977497\";\"Sant-Pêr-Plewenn\";\"other\"\n\"2977530\";\"Saint-Pierre-de-Chandieu\";\"main\"\n\"2977530\";\"Chandieu-la-Montagne\";\"other\"\n\"2977530\";\"Saint Pierre Chandieu\";\"other\"\n\"2977530\";\"Saint-Pierre\";\"other\"\n\"2977535\";\"Saint-Pierre-de-Bœuf\";\"main\"\n\"2977535\";\"Saint-Pierre-de-Boeuf\";\"ascii\"\n\"2977535\";\"Saint Pierre\";\"other\"\n\"2977587\";\"Saint-Piat\";\"main\"\n\"2977587\";\"Martel-les-Vaux\";\"other\"\n\"2977593\";\"Saint-Philibert\";\"main\"\n\"2977593\";\"Sant-Filberzh\";\"other\"\n\"2977600\";\"Saint-Philbert-du-Peuple\";\"main\"\n\"2977600\";\"Saint-Philbert\";\"other\"\n\"2977602\";\"Saint-Philbert-de-Grand-Lieu\";\"main\"\n\"2977602\";\"Saint-Philbert\";\"other\"\n\"2977602\";\"Sant-Filberzh-Deaz\";\"other\"\n\"2977603\";\"Saint-Philbert-de-Bouaine\";\"main\"\n\"2977603\";\"Saint-Philbert\";\"other\"\n\"2977610\";\"Saint-Perreux\";\"main\"\n\"2977610\";\"Sant-Pereg\";\"other\"\n\"2977613\";\"Saint-Père-sur-Loire\";\"main\"\n\"2977613\";\"Saint-Pere-sur-Loire\";\"ascii\"\n\"2977613\";\"Saint-Pere\";\"other\"\n\"2977613\";\"Saint-Père\";\"other\"\n\"2977614\";\"Saint-Père-en-Retz\";\"main\"\n\"2977614\";\"Saint-Pere-en-Retz\";\"ascii\"\n\"2977614\";\"Fraternite\";\"other\"\n\"2977614\";\"Fraternité\";\"other\"\n\"2977614\";\"Sant-Per-Raez\";\"other\"\n\"2977614\";\"Sant-Pêr-Raez\";\"other\"\n\"2977616\";\"Saint-Père\";\"main\"\n\"2977616\";\"Saint-Pere\";\"ascii\"\n\"2977616\";\"Sant-Per-Poualed\";\"other\"\n\"2977616\";\"Sant-Pêr-Poualed\";\"other\"\n\"2977622\";\"Saint-Perdon\";\"main\"\n\"2977623\";\"Saint-Péray\";\"main\"\n\"2977623\";\"Saint-Peray\";\"ascii\"\n\"2977623\";\"Peray-Vin-Blanc\";\"other\"\n\"2977631\";\"Saint-Pée-sur-Nivelle\";\"main\"\n\"2977631\";\"Saint-Pee-sur-Nivelle\";\"ascii\"\n\"2977631\";\"Beaugard\";\"other\"\n\"2977631\";\"Saint-Pee\";\"other\"\n\"2977631\";\"Saint-Pée\";\"other\"\n\"2977631\";\"Senpere\";\"other\"\n\"2977636\";\"Saint-Pé-de-Bigorre\";\"main\"\n\"2977636\";\"Saint-Pe-de-Bigorre\";\"ascii\"\n\"2977636\";\"Saint-Pe\";\"other\"\n\"2977636\";\"Saint-Pé\";\"other\"\n\"2977638\";\"Saint-Paul-Trois-Châteaux\";\"main\"\n\"2977638\";\"Saint-Paul-Trois-Chateaux\";\"ascii\"\n\"2977638\";\"Paul-les-Fontaines\";\"other\"\n\"2977638\";\"Saint-Paul\";\"other\"\n\"2977645\";\"Saint-Paul-lès-Romans\";\"main\"\n\"2977645\";\"Saint-Paul-les-Romans\";\"ascii\"\n\"2977645\";\"Paul-la-Joyeuse\";\"other\"\n\"2977645\";\"Saint-Paul\";\"other\"\n\"2977648\";\"Saint-Paul-lès-Dax\";\"main\"\n\"2977648\";\"Saint-Paul-les-Dax\";\"ascii\"\n\"2977648\";\"Bonnet-Rouge\";\"other\"\n\"2977648\";\"Saint-Paul\";\"other\"\n\"2977655\";\"Saint-Paulien\";\"main\"\n\"2977655\";\"Velaune\";\"other\"\n\"2977657\";\"Saint-Paulet-de-Caisson\";\"main\"\n\"2977657\";\"Caisson\";\"other\"\n\"2977657\";\"Saint Paulet\";\"other\"\n\"2977657\";\"Saint-Paulet-des-Caissons\";\"other\"\n\"2977659\";\"Saint-Paul-en-Pareds\";\"main\"\n\"2977659\";\"La Regeneree\";\"other\"\n\"2977659\";\"La Regénérée\";\"other\"\n\"2977659\";\"Saint-Paul\";\"other\"\n\"2977660\";\"Saint-Paul-en-Jarez\";\"main\"\n\"2977660\";\"Saint-Paul\";\"other\"\n\"2977660\";\"Valdorley\";\"other\"\n\"2977662\";\"Saint-Paul-en-Forêt\";\"main\"\n\"2977662\";\"Saint-Paul-en-Foret\";\"ascii\"\n\"2977662\";\"Saint-Paul\";\"other\"\n\"2977663\";\"Saint-Paul-en-Cornillon\";\"main\"\n\"2977663\";\"Saint Paul\";\"other\"\n\"2977664\";\"Saint-Paul-en-Chablais\";\"main\"\n\"2977664\";\"Saint Paul\";\"other\"\n\"2977664\";\"Saint Paul 74500\";\"other\"\n\"2977664\";\"Saint-Paul\";\"other\"\n\"2977664\";\"Saint-Paul 74500\";\"other\"\n\"2977673\";\"Saint-Paul-de-Varces\";\"main\"\n\"2977673\";\"Ancoin\";\"other\"\n\"2977673\";\"Paul-d'Ancoin\";\"other\"\n\"2977673\";\"Saint-Paul\";\"other\"\n\"2977674\";\"Saint-Paul-de-Varax\";\"main\"\n\"2977674\";\"Saint-Paul\";\"other\"\n\"2977674\";\"Varax\";\"other\"\n\"2977677\";\"Saint-Paul-des-Landes\";\"main\"\n\"2977677\";\"Saint-Paul\";\"other\"\n\"2977681\";\"Saint-Paul-de-Jarrat\";\"main\"\n\"2977681\";\"Saint Paul\";\"other\"\n\"2977683\";\"Saint-Paul-de-Fenouillet\";\"main\"\n\"2977683\";\"Saint-Paul\";\"other\"\n\"2977686\";\"Saint-Paul-Cap-de-Joux\";\"main\"\n\"2977686\";\"Agout-Rousseau\";\"other\"\n\"2977686\";\"Saint-Paul\";\"other\"\n\"2977691\";\"Saint-Paul\";\"main\"\n\"2977696\";\"Saint-Paul\";\"main\"\n\"2977696\";\"Saint-Paul-d'Eyjeaux\";\"other\"\n\"2977701\";\"Saint-Paul\";\"main\"\n\"2977701\";\"Saint-Paul i Alpes-Maritimes\";\"other\"\n\"2977701\";\"Saint-Paul-de-Vence\";\"other\"\n\"2977701\";\"St Paul de Vence\";\"other\"\n\"2977709\";\"Saint-Pathus\";\"main\"\n\"2977710\";\"Saint-Paterne-Racan\";\"main\"\n\"2977710\";\"Les Bains\";\"other\"\n\"2977710\";\"Saint-Paterne\";\"other\"\n\"2977712\";\"Saint-Paterne\";\"main\"\n\"2977718\";\"Saint-Parres-aux-Tertres\";\"main\"\n\"2977718\";\"Saint-Parres\";\"other\"\n\"2977719\";\"Saint-Parize-le-Châtel\";\"main\"\n\"2977719\";\"Saint-Parize-le-Chatel\";\"ascii\"\n\"2977719\";\"Brennery\";\"other\"\n\"2977719\";\"Saint-Parize\";\"other\"\n\"2977721\";\"Saint-Pargoire\";\"main\"\n\"2977721\";\"Pargoire-l'Herault\";\"other\"\n\"2977721\";\"Pargoire-l'Hérault\";\"other\"\n\"2977729\";\"Saint-Pardoux-la-Rivière\";\"main\"\n\"2977729\";\"Saint-Pardoux-la-Riviere\";\"ascii\"\n\"2977729\";\"Saint-Pardoux\";\"other\"\n\"2977731\";\"Saint-Pardoux-Isaac\";\"main\"\n\"2977731\";\"Saint-Pardoux\";\"other\"\n\"2977739\";\"Saint-Pardoux\";\"main\"\n\"2977739\";\"La Viette\";\"other\"\n\"2977750\";\"Saint-Pantaléon-de-Larche\";\"main\"\n\"2977750\";\"Saint-Pantaleon-de-Larche\";\"ascii\"\n\"2977750\";\"La Fraternite\";\"other\"\n\"2977750\";\"La Fraternité\";\"other\"\n\"2977750\";\"Saint-Pantaleon\";\"other\"\n\"2977750\";\"Saint-Pantaléon\";\"other\"\n\"2977762\";\"Saint-Pal-de-Mons\";\"main\"\n\"2977762\";\"Pal-Senouire\";\"other\"\n\"2977762\";\"Pal-Sénouire\";\"other\"\n\"2977762\";\"Saint-Pal\";\"other\"\n\"2977762\";\"Saint-Pal-de-Mans\";\"other\"\n\"2977764\";\"Saint-Palais-sur-Mer\";\"main\"\n\"2977764\";\"Chaumiere-sur-Mer\";\"other\"\n\"2977764\";\"Chaumière-sur-Mer\";\"other\"\n\"2977764\";\"Saint-Palais\";\"other\"\n\"2977772\";\"Saint-Palais\";\"main\"\n\"2977772\";\"Donapaleu\";\"other\"\n\"2977772\";\"Mont-Bidouze\";\"other\"\n\"2977774\";\"Saint-Pair-sur-Mer\";\"main\"\n\"2977774\";\"Pair-Libre\";\"other\"\n\"2977774\";\"Saint-Pair\";\"other\"\n\"2977777\";\"Saint-Paër\";\"main\"\n\"2977777\";\"Saint-Paer\";\"ascii\"\n\"2977780\";\"Saint-Pabu\";\"main\"\n\"2977780\";\"Sant-Pabu\";\"other\"\n\"2977783\";\"Saint-Ours\";\"main\"\n\"2977800\";\"Saint-Ouen-l'Aumône\";\"main\"\n\"2977800\";\"Saint-Ouen-l'Aumone\";\"ascii\"\n\"2977800\";\"L'Aumone-la-Montagne\";\"other\"\n\"2977800\";\"L'Aumône-la-Montagne\";\"other\"\n\"2977800\";\"Montagne-sur-Oise\";\"other\"\n\"2977804\";\"Saint-Ouen-en-Belin\";\"main\"\n\"2977804\";\"Saint-Ouen\";\"other\"\n\"2977805\";\"Saint-Ouen-du-Tilleul\";\"main\"\n\"2977805\";\"Saint-Ouen\";\"other\"\n\"2977808\";\"Saint-Ouen-de-Thouberville\";\"main\"\n\"2977808\";\"Saint-Ouen\";\"other\"\n\"2977810\";\"Saint-Ouën-des-Toits\";\"main\"\n\"2977810\";\"Saint-Ouen-des-Toits\";\"ascii\"\n\"2977810\";\"Saint-Ouen\";\"other\"\n\"2977814\";\"Saint-Ouen-des-Alleux\";\"main\"\n\"2977814\";\"Saint-Ouen\";\"other\"\n\"2977814\";\"Sant-Owen-an-Alloz\";\"other\"\n\"2977821\";\"Saint-Ouen\";\"main\"\n\"2977821\";\"Sankt-Ouehn\";\"other\"\n\"2977821\";\"Санкт-Оуэн\";\"other\"\n\"2977824\";\"Saint-Ouen\";\"main\"\n\"2977824\";\"Bain-sur-Seine\";\"other\"\n\"2977824\";\"Saint-Ouen-sur-Seine\";\"other\"\n\"2977824\";\"Sankt-Ouehn\";\"other\"\n\"2977824\";\"Санкт-Оуэн\";\"other\"\n\"2977825\";\"Saint-Ouen\";\"main\"\n\"2977825\";\"Fondouen\";\"other\"\n\"2977825\";\"Sankt-Ouehn\";\"other\"\n\"2977825\";\"Санкт-Оуэн\";\"other\"\n\"2977832\";\"Saint-Orens-de-Gameville\";\"main\"\n\"2977832\";\"Saint-Orens\";\"other\"\n\"2977841\";\"Saint-Omer-en-Chaussée\";\"main\"\n\"2977841\";\"Saint-Omer-en-Chaussee\";\"ascii\"\n\"2977841\";\"Saint-Omer\";\"other\"\n\"2977845\";\"Saint-Omer\";\"main\"\n\"2977845\";\"Sint-Omaars\";\"other\"\n\"2977854\";\"Saint-Nom-la-Bretêche\";\"main\"\n\"2977854\";\"Saint-Nom-la-Breteche\";\"ascii\"\n\"2977854\";\"Union-la-Montagne\";\"other\"\n\"2977855\";\"Saint-Nolff\";\"main\"\n\"2977855\";\"Sant-Nolf\";\"other\"\n\"2977857\";\"Saint-Nizier-sous-Charlieu\";\"main\"\n\"2977857\";\"Saint-Nizier\";\"other\"\n\"2977869\";\"Saint-Nicolas-du-Pélem\";\"main\"\n\"2977869\";\"Saint-Nicolas-du-Pelem\";\"ascii\"\n\"2977869\";\"Saint-Nicolas\";\"other\"\n\"2977869\";\"Sant-Nikolaz-ar-Pelem\";\"other\"\n\"2977879\";\"Saint-Nicolas-de-Redon\";\"main\"\n\"2977879\";\"Saint-Nicolas\";\"other\"\n\"2977879\";\"Sant-Nikolaz-an-Hent\";\"other\"\n\"2977879\";\"Union-sur-Vilaine\";\"other\"\n\"2977880\";\"Saint-Nicolas-de-Port\";\"main\"\n\"2977880\";\"Port-sur-Meurthe\";\"other\"\n\"2977880\";\"Saint-Nicolas\";\"other\"\n\"2977880\";\"Saint-Nicolas-du-Port\";\"other\"\n\"2977883\";\"Saint-Nicolas-de-la-Taille\";\"main\"\n\"2977883\";\"Saint-Nicolas\";\"other\"\n\"2977885\";\"Saint-Nicolas-de-la-Grave\";\"main\"\n\"2977885\";\"La Grave-Bec-du-Tarn\";\"other\"\n\"2977885\";\"La Grave-du-Bec\";\"other\"\n\"2977885\";\"Saint-Nicolas\";\"other\"\n\"2977885\";\"Saint-Nicolas-la-Grave\";\"other\"\n\"2977889\";\"Saint-Nicolas-de-Bourgueil\";\"main\"\n\"2977889\";\"Saint-Nicolas\";\"other\"\n\"2977892\";\"Saint-Nicolas-d'Aliermont\";\"main\"\n\"2977892\";\"Saint-Nicolas\";\"other\"\n\"2977901\";\"Saint-Nicolas\";\"main\"\n\"2977901\";\"Saint Nicolas Les Arras\";\"other\"\n\"2977901\";\"Saint-Nicolas-lez-Arras\";\"other\"\n\"2977901\";\"Saint-Nicolas-lèz-Arras\";\"other\"\n\"2977921\";\"Saint-Nazaire\";\"main\"\n\"2977921\";\"Sant-Nazer\";\"other\"\n\"2977921\";\"Sen-Nazer\";\"other\"\n\"2977921\";\"Сен-Назер\";\"other\"\n\"2977922\";\"Saint-Nazaire-les-Eymes\";\"main\"\n\"2977922\";\"Saint-Nazaire\";\"other\"\n\"2977925\";\"Saint-Nazaire\";\"main\"\n\"2977925\";\"Sen-Nazer\";\"other\"\n\"2977925\";\"Сен-Назер\";\"other\"\n\"2977926\";\"Saint-Nazaire\";\"main\"\n\"2977926\";\"Sant Nazari\";\"other\"\n\"2977926\";\"Sen-Nazer\";\"other\"\n\"2977926\";\"Сен-Назер\";\"other\"\n\"2977927\";\"Saint-Nauphary\";\"main\"\n\"2977929\";\"Saint-Nabord\";\"main\"\n\"2977929\";\"Roche-Libre\";\"other\"\n\"2977934\";\"Saint-Morillon\";\"main\"\n\"2977943\";\"Saint-Molf\";\"main\"\n\"2977943\";\"Sant-Molf\";\"other\"\n\"2977947\";\"Saint-Mitre-les-Remparts\";\"main\"\n\"2977947\";\"Bellefont\";\"other\"\n\"2977947\";\"Saint-Mitre\";\"other\"\n\"2977948\";\"Saint-Mihiel\";\"main\"\n\"2977948\";\"Roche-sur-Meuse\";\"other\"\n\"2977952\";\"Saint-Michel-sur-Orge\";\"main\"\n\"2977952\";\"Saint-Michel\";\"other\"\n\"2977953\";\"Saint-Michel-sur-Meurthe\";\"main\"\n\"2977953\";\"Belmont\";\"other\"\n\"2977953\";\"Saint-Michel\";\"other\"\n\"2977957\";\"Saint-Michel-Mont-Mercure\";\"main\"\n\"2977957\";\"Le Mont-Mercure\";\"other\"\n\"2977957\";\"Saint-Michel\";\"other\"\n\"2977962\";\"Saint-Michel-le-Cloucq\";\"main\"\n\"2977962\";\"Saint-Michel\";\"other\"\n\"2977986\";\"Saint-Michel-de-Maurienne\";\"main\"\n\"2977986\";\"Pas-du-Roc\";\"other\"\n\"2977986\";\"Saint-Michel\";\"other\"\n\"2978004\";\"Saint-Michel-Chef-Chef\";\"main\"\n\"2978004\";\"Saint-Michel\";\"other\"\n\"2978004\";\"Sant-Mikael-Keveger\";\"other\"\n\"2978017\";\"Saint-Michel\";\"main\"\n\"2978023\";\"Saint-Michel\";\"main\"\n\"2978040\";\"Saint-Mexant\";\"main\"\n\"2978043\";\"Saint-Mesmin\";\"main\"\n\"2978043\";\"Beauvallon-sur-Sevre\";\"other\"\n\"2978043\";\"Beauvallon-sur-Sèvre\";\"other\"\n\"2978053\";\"Saint-Menges\";\"main\"\n\"2978053\";\"Union\";\"other\"\n\"2978056\";\"Saint-Memmie\";\"main\"\n\"2978056\";\"Brutus\";\"other\"\n\"2978057\";\"Saint-Même-le-Tenu\";\"main\"\n\"2978057\";\"Saint-Meme-le-Tenu\";\"ascii\"\n\"2978057\";\"Saint-Meme\";\"other\"\n\"2978057\";\"Saint-Même\";\"other\"\n\"2978057\";\"Sant-Masen-ar-Porzh\";\"other\"\n\"2978058\";\"Saint-Même-les-Carrières\";\"main\"\n\"2978058\";\"Saint-Meme-les-Carrieres\";\"ascii\"\n\"2978058\";\"Saint-Meme\";\"other\"\n\"2978058\";\"Saint-Même\";\"other\"\n\"2978062\";\"Saint-Méloir-des-Ondes\";\"main\"\n\"2978062\";\"Saint-Meloir-des-Ondes\";\"ascii\"\n\"2978062\";\"Meloir-Richeux\";\"other\"\n\"2978062\";\"Méloir-Richeux\";\"other\"\n\"2978062\";\"Saint Meloir des Ondres\";\"other\"\n\"2978062\";\"Sant-Meleg\";\"other\"\n\"2978065\";\"Saint-Melaine-sur-Aubance\";\"main\"\n\"2978065\";\"Aubance\";\"other\"\n\"2978065\";\"Saint-Melaine\";\"other\"\n\"2978065\";\"Saint-Mélaine\";\"other\"\n\"2978067\";\"Saint-Méen-le-Grand\";\"main\"\n\"2978067\";\"Saint-Meen-le-Grand\";\"ascii\"\n\"2978067\";\"Meen-Libre\";\"other\"\n\"2978067\";\"Meen-la-Foret\";\"other\"\n\"2978067\";\"Méen-Libre\";\"other\"\n\"2978067\";\"Méen-la-Forêt\";\"other\"\n\"2978067\";\"Saint-Meen\";\"other\"\n\"2978067\";\"Saint-Méen\";\"other\"\n\"2978067\";\"Sant-Meven\";\"other\"\n\"2978070\";\"Saint-Médard-sur-Ille\";\"main\"\n\"2978070\";\"Saint-Medard-sur-Ille\";\"ascii\"\n\"2978070\";\"Saint-Medard\";\"other\"\n\"2978070\";\"Saint-Médard\";\"other\"\n\"2978070\";\"Sant-Marzh-an-Il\";\"other\"\n\"2978072\";\"Saint-Médard-en-Jalles\";\"main\"\n\"2978072\";\"Saint-Medard-en-Jalles\";\"ascii\"\n\"2978072\";\"Fulminant\";\"other\"\n\"2978072\";\"Saint-Medard\";\"other\"\n\"2978072\";\"Saint-Médard\";\"other\"\n\"2978072\";\"Sankt-Medard-an-Zhall'\";\"other\"\n\"2978072\";\"Sent Medard\";\"other\"\n\"2978072\";\"Санкт-Медард-ан-Жалль\";\"other\"\n\"2978078\";\"Saint-Médard-de-Mussidan\";\"main\"\n\"2978078\";\"Saint-Medard-de-Mussidan\";\"ascii\"\n\"2978078\";\"Saint-Medard\";\"other\"\n\"2978078\";\"Saint-Médard\";\"other\"\n\"2978079\";\"Saint-Médard-de-Guizières\";\"main\"\n\"2978079\";\"Saint-Medard-de-Guizieres\";\"ascii\"\n\"2978079\";\"Saint-Medard\";\"other\"\n\"2978079\";\"Saint-Médard\";\"other\"\n\"2978099\";\"Saint-Maxire\";\"main\"\n\"2978100\";\"Saint-Maximin-la-Sainte-Baume\";\"main\"\n\"2978100\";\"Marathon\";\"other\"\n\"2978100\";\"Saint-Maximin\";\"other\"\n\"2978101\";\"Saint-Maximin\";\"main\"\n\"2978101\";\"Maximum\";\"other\"\n\"2978105\";\"Saint-Max\";\"main\"\n\"2978105\";\"Max-la-Montagne\";\"other\"\n\"2978112\";\"Saint-Maurice-sur-Moselle\";\"main\"\n\"2978112\";\"Saint-Maurice\";\"other\"\n\"2978116\";\"Saint-Maurice-sur-Fessard\";\"main\"\n\"2978116\";\"Saint-Maurice\";\"other\"\n\"2978118\";\"Saint-Maurice-sur-Dargoire\";\"main\"\n\"2978118\";\"Desille-sur-Dargoire\";\"other\"\n\"2978118\";\"Désille-sur-Dargoire\";\"other\"\n\"2978118\";\"Saint-Maurice\";\"other\"\n\"2978126\";\"Saint-Maurice-Montcouronne\";\"main\"\n\"2978126\";\"Saint-Maurice\";\"other\"\n\"2978134\";\"Saint-Maurice-la-Souterraine\";\"main\"\n\"2978134\";\"Saint-Maurice\";\"other\"\n\"2978136\";\"Saint-Maurice-la-Clouère\";\"main\"\n\"2978136\";\"Saint-Maurice-la-Clouere\";\"ascii\"\n\"2978136\";\"Saint-Maurice\";\"other\"\n\"2978142\";\"Saint-Maurice-en-Gourgois\";\"main\"\n\"2978142\";\"Saint-Maurice\";\"other\"\n\"2978158\";\"Saint-Maurice-de-Lignon\";\"main\"\n\"2978158\";\"Lignon\";\"other\"\n\"2978158\";\"Saint-Maurice\";\"other\"\n\"2978161\";\"Saint-Maurice-de-Gourdans\";\"main\"\n\"2978161\";\"Saint Maurice\";\"other\"\n\"2978161\";\"Saint-Maurice-de-Gourdan\";\"other\"\n\"2978163\";\"Saint-Maurice-de-Beynost\";\"main\"\n\"2978163\";\"La Fontaine\";\"other\"\n\"2978163\";\"Saint Maurice\";\"other\"\n\"2978170\";\"Saint-Maurice\";\"main\"\n\"2978170\";\"Charenton-Saint-Maurice\";\"other\"\n\"2978179\";\"Saint-Maur-des-Fossés\";\"main\"\n\"2978179\";\"Saint-Maur-des-Fosses\";\"ascii\"\n\"2978179\";\"Saint-Maur\";\"other\"\n\"2978179\";\"Saint-Maur-les-Fosses\";\"other\"\n\"2978179\";\"Saint-Maur-les-Fossés\";\"other\"\n\"2978179\";\"Vivant-sur-Marne\";\"other\"\n\"2978184\";\"Saint-Maur\";\"main\"\n\"2978197\";\"Saint-Mathurin-sur-Loire\";\"main\"\n\"2978197\";\"Port-de-la-Vallee\";\"other\"\n\"2978197\";\"Port-de-la-Vallée\";\"other\"\n\"2978197\";\"Saint-Mathurin\";\"other\"\n\"2978198\";\"Saint-Mathurin\";\"main\"\n\"2978199\";\"Saint-Mathieu-de-Tréviers\";\"main\"\n\"2978199\";\"Saint-Mathieu-de-Treviers\";\"ascii\"\n\"2978199\";\"Saint-Mathieu\";\"other\"\n\"2978202\";\"Saint-Mathieu\";\"main\"\n\"2978208\";\"Saint-Martin-Vésubie\";\"main\"\n\"2978208\";\"Saint-Martin-Vesubie\";\"ascii\"\n\"2978208\";\"Saint-Martin\";\"other\"\n\"2978208\";\"Saint-Martin-de-Vesubie\";\"other\"\n\"2978208\";\"Saint-Martin-de-Vésubie\";\"other\"\n\"2978211\";\"Saint-Martin-sur-Oust\";\"main\"\n\"2978211\";\"Saint-Martin\";\"other\"\n\"2978211\";\"Sant-Varzhin-an-Oud\";\"other\"\n\"2978215\";\"Saint-Martin-sur-Ocre\";\"main\"\n\"2978215\";\"Saint-Martin\";\"other\"\n\"2978225\";\"Saint-Martin-sous-Mouzeuil\";\"main\"\n\"2978225\";\"Saint-Martin\";\"other\"\n\"2978233\";\"Saint-Martin-Osmonville\";\"main\"\n\"2978233\";\"Saint-Martin-Omonville\";\"other\"\n\"2978235\";\"Saint-Martin-Longueau\";\"main\"\n\"2978238\";\"Saint-Martin-le-Vinoux\";\"main\"\n\"2978238\";\"Saint-Martin\";\"other\"\n\"2978257\";\"Saint-Martin-le-Beau\";\"main\"\n\"2978257\";\"Etableau\";\"other\"\n\"2978257\";\"Le Beau-sur-Cher\";\"other\"\n\"2978257\";\"Saint-Martin\";\"other\"\n\"2978263\";\"Saint-Martin-la-Plaine\";\"main\"\n\"2978263\";\"Saint-Martin\";\"other\"\n\"2978266\";\"Saint-Martin-Lalande\";\"main\"\n\"2978266\";\"Saint Martin\";\"other\"\n\"2978270\";\"Saint-Martin-Lacaussade\";\"main\"\n\"2978270\";\"Saint-Martin\";\"other\"\n\"2978276\";\"Saint-Martin-en-Haut\";\"main\"\n\"2978276\";\"Martin-l'Esperance\";\"other\"\n\"2978276\";\"Martin-l'Espérance\";\"other\"\n\"2978276\";\"Saint-Martin\";\"other\"\n\"2978276\";\"Saint-Martin-d'en-Haut\";\"other\"\n\"2978279\";\"Saint-Martin-en-Campagne\";\"main\"\n\"2978279\";\"Saint-Martin\";\"other\"\n\"2978280\";\"Saint-Martin-en-Bresse\";\"main\"\n\"2978280\";\"Saint-Martin\";\"other\"\n\"2978280\";\"Tell-les-Bois\";\"other\"\n\"2978282\";\"Saint-Martin-du-Vivier\";\"main\"\n\"2978282\";\"Saint-Martin\";\"other\"\n\"2978284\";\"Saint-Martin-du-Var\";\"main\"\n\"2978284\";\"Saint-Martin\";\"other\"\n\"2978287\";\"Saint-Martin-du-Tertre\";\"main\"\n\"2978287\";\"Saint-Martin\";\"other\"\n\"2978288\";\"Saint-Martin-du-Tertre\";\"main\"\n\"2978288\";\"Martin-Bel-Air\";\"other\"\n\"2978288\";\"Saint-Martin\";\"other\"\n\"2978297\";\"Saint-Martin-du-Mont\";\"main\"\n\"2978297\";\"Bellevue\";\"other\"\n\"2978297\";\"Saint-Martin\";\"other\"\n\"2978299\";\"Saint-Martin-du-Manoir\";\"main\"\n\"2978299\";\"Saint-Martin\";\"other\"\n\"2978302\";\"Saint-Martin-du-Frêne\";\"main\"\n\"2978302\";\"Saint-Martin-du-Frene\";\"ascii\"\n\"2978302\";\"Mont-de-Fresne\";\"other\"\n\"2978302\";\"Saint-Martin-du-Fresne\";\"other\"\n\"2978303\";\"Saint-Martin-du-Fouilloux\";\"main\"\n\"2978303\";\"Saint-Martin\";\"other\"\n\"2978303\";\"Unite-sur-Loire\";\"other\"\n\"2978303\";\"Unité-sur-Loire\";\"other\"\n\"2978317\";\"Saint-Martin-d'Hères\";\"main\"\n\"2978317\";\"Saint-Martin-d'Heres\";\"ascii\"\n\"2978317\";\"Heres-la-Montagne\";\"other\"\n\"2978317\";\"Hères-la-Montagne\";\"other\"\n\"2978317\";\"Saint-Martin\";\"other\"\n\"2978325\";\"Saint-Martin-de-Valgalgues\";\"main\"\n\"2978325\";\"Mont-Valgalgues\";\"other\"\n\"2978325\";\"Mont-Valgue\";\"other\"\n\"2978325\";\"Saint-Martin\";\"other\"\n\"2978326\";\"Saint-Martin-de-Valamas\";\"main\"\n\"2978326\";\"Mas-d'Erieu\";\"other\"\n\"2978326\";\"Saint-Martin\";\"other\"\n\"2978337\";\"Saint-Martin-des-Noyers\";\"main\"\n\"2978337\";\"Les Noyers\";\"other\"\n\"2978337\";\"Saint-Martin\";\"other\"\n\"2978344\";\"Saint-Martin-de-Seignanx\";\"main\"\n\"2978344\";\"Montagne-Seignaux\";\"other\"\n\"2978344\";\"Saint-Martin\";\"other\"\n\"2978344\";\"Saint-Martin-de-Seignaux\";\"other\"\n\"2978349\";\"Saint-Martin-des-Champs\";\"main\"\n\"2978349\";\"Saint-Martin\";\"other\"\n\"2978351\";\"Saint-Martin-des-Champs\";\"main\"\n\"2978351\";\"Saint-Martin\";\"other\"\n\"2978351\";\"Sant-Martin-war-ar-Maez\";\"other\"\n\"2978351\";\"Unite-des-Champs\";\"other\"\n\"2978351\";\"Unité-des-Champs\";\"other\"\n\"2978355\";\"Saint-Martin-des-Besaces\";\"main\"\n\"2978355\";\"Saint-Martin\";\"other\"\n\"2978361\";\"Saint-Martin-de-Ré\";\"main\"\n\"2978361\";\"Saint-Martin-de-Re\";\"ascii\"\n\"2978361\";\"Fort-de-la-Montagne\";\"other\"\n\"2978361\";\"Ile-de-la-Republique\";\"other\"\n\"2978361\";\"Ile-de-la-République\";\"other\"\n\"2978361\";\"Saint-Martin\";\"other\"\n\"2978362\";\"Saint-Martin-de-Queyrières\";\"main\"\n\"2978362\";\"Saint-Martin-de-Queyrieres\";\"ascii\"\n\"2978362\";\"Roche-Forte\";\"other\"\n\"2978362\";\"Saint-Martin\";\"other\"\n\"2978365\";\"Saint-Martin-de-Nigelles\";\"main\"\n\"2978365\";\"Saint-Martin\";\"other\"\n\"2978369\";\"Saint-Martin-de-Londres\";\"main\"\n\"2978369\";\"Saint-Martin\";\"other\"\n\"2978376\";\"Saint-Martin-de-la-Place\";\"main\"\n\"2978376\";\"Saint-Martin\";\"other\"\n\"2978378\";\"Saint-Martin-de-Landelles\";\"main\"\n\"2978378\";\"Saint-Martin\";\"other\"\n\"2978378\";\"Saint-Martin-Landelles\";\"other\"\n\"2978378\";\"Saint-Martin-de-Landelle\";\"other\"\n\"2978386\";\"Saint-Martin-de-Hinx\";\"main\"\n\"2978386\";\"Marat-de-Hinx\";\"other\"\n\"2978386\";\"Saint-Martin\";\"other\"\n\"2978394\";\"Saint-Martin-de-Fontenay\";\"main\"\n\"2978394\";\"Saint-Martin\";\"other\"\n\"2978396\";\"Saint-Martin-de-Crau\";\"main\"\n\"2978396\";\"Saint-Martin\";\"other\"\n\"2978412\";\"Saint-Martin-de-Boscherville\";\"main\"\n\"2978412\";\"Boscherville\";\"other\"\n\"2978412\";\"Saint-Martin\";\"other\"\n\"2978417\";\"Saint-Martin-de-Belleville\";\"main\"\n\"2978417\";\"Des-Ravins\";\"other\"\n\"2978417\";\"Montalte\";\"other\"\n\"2978417\";\"Saint-Martin\";\"other\"\n\"2978439\";\"Saint-Martin-Boulogne\";\"main\"\n\"2978439\";\"La Montagne\";\"other\"\n\"2978439\";\"Montagne-les-Boulogne\";\"other\"\n\"2978439\";\"Montagne-lès-Boulogne\";\"other\"\n\"2978439\";\"Saint-Martin\";\"other\"\n\"2978439\";\"Section de-la-Montagne\";\"other\"\n\"2978440\";\"Saint-Martin-Bellevue\";\"main\"\n\"2978440\";\"Saint Martin\";\"other\"\n\"2978441\";\"Saint-Martin-Belle-Roche\";\"main\"\n\"2978441\";\"Saint-Martin\";\"other\"\n\"2978447\";\"Saint-Martin-au-Laërt\";\"main\"\n\"2978447\";\"Saint-Martin-au-Laert\";\"ascii\"\n\"2978447\";\"Saint-Martin\";\"other\"\n\"2978520\";\"Saint-Mars-la-Jaille\";\"main\"\n\"2978520\";\"Saint-Mars\";\"other\"\n\"2978520\";\"Sant-Marzh-an-Olivenn\";\"other\"\n\"2978521\";\"Saint-Mars-la-Brière\";\"main\"\n\"2978521\";\"Saint-Mars-la-Briere\";\"ascii\"\n\"2978521\";\"Briere-de-l'Egalite\";\"other\"\n\"2978521\";\"Brière-de-l'Egalité\";\"other\"\n\"2978521\";\"Saint-Mars\";\"other\"\n\"2978524\";\"Saint-Mars-du-Désert\";\"main\"\n\"2978524\";\"Saint-Mars-du-Desert\";\"ascii\"\n\"2978524\";\"Saint-Mars\";\"other\"\n\"2978524\";\"Sant-Marzh-an-Dezerzh\";\"other\"\n\"2978529\";\"Saint-Mars-de-Coutais\";\"main\"\n\"2978529\";\"Saint-Mars\";\"other\"\n\"2978529\";\"Sant-Marzh-ar-C'hoad\";\"other\"\n\"2978535\";\"Saint-Mariens\";\"main\"\n\"2978550\";\"Saint-Mard\";\"main\"\n\"2978560\";\"Saint-Marc-le-Blanc\";\"main\"\n\"2978560\";\"Saint-Marc\";\"other\"\n\"2978560\";\"Sant-Mezar-Elvinieg\";\"other\"\n\"2978561\";\"Saint-Marc-Jaumegarde\";\"main\"\n\"2978561\";\"Saint-Marc\";\"other\"\n\"2978565\";\"Saint-Marcellin-en-Forez\";\"main\"\n\"2978565\";\"Donjon-la-Plaine\";\"other\"\n\"2978565\";\"Marcellin-la-Plaine\";\"other\"\n\"2978565\";\"Saint-Marcellin\";\"other\"\n\"2978566\";\"Saint-Marcellin\";\"main\"\n\"2978566\";\"Thermopyles\";\"other\"\n\"2978568\";\"Saint-Marcel-lès-Valence\";\"main\"\n\"2978568\";\"Saint-Marcel-les-Valence\";\"ascii\"\n\"2978568\";\"Saint-Marcel\";\"other\"\n\"2978569\";\"Saint-Marcel-lès-Sauzet\";\"main\"\n\"2978569\";\"Saint-Marcel-les-Sauzet\";\"ascii\"\n\"2978569\";\"Saint-Marcel\";\"other\"\n\"2978570\";\"Saint-Marcel-lès-Annonay\";\"main\"\n\"2978570\";\"Saint-Marcel-les-Annonay\";\"ascii\"\n\"2978570\";\"Marcel-de-Deome\";\"other\"\n\"2978570\";\"Marcel-de-Déome\";\"other\"\n\"2978570\";\"Saint Marcel\";\"other\"\n\"2978586\";\"Saint-Marcel\";\"main\"\n\"2978589\";\"Saint-Marcel\";\"main\"\n\"2978589\";\"Saint-Marcel-les Rues\";\"other\"\n\"2978590\";\"Saint-Marcel\";\"main\"\n\"2978590\";\"Cote-Franche\";\"other\"\n\"2978590\";\"Côte-Franche\";\"other\"\n\"2978596\";\"Saint-Marcel-sur-Aude\";\"main\"\n\"2978617\";\"Saint-Manvieu\";\"main\"\n\"2978618\";\"Saint-Mandrier-sur-Mer\";\"main\"\n\"2978618\";\"Saint-Mandrier\";\"other\"\n\"2978621\";\"Saint-Mandé\";\"main\"\n\"2978621\";\"Saint-Mande\";\"ascii\"\n\"2978621\";\"Sankt-Mande\";\"other\"\n\"2978621\";\"Sant Manden\";\"other\"\n\"2978621\";\"st Mande\";\"other\"\n\"2978621\";\"st Mandé\";\"other\"\n\"2978621\";\"st mande\";\"other\"\n\"2978621\";\"Санкт-Манде\";\"other\"\n\"2978622\";\"Saint-Mammès\";\"main\"\n\"2978622\";\"Saint-Mammes\";\"ascii\"\n\"2978623\";\"Saint-Mamet-la-Salvetat\";\"main\"\n\"2978623\";\"Saint-Mamet\";\"other\"\n\"2978627\";\"Saint-Mamert-du-Gard\";\"main\"\n\"2978627\";\"Mamert\";\"other\"\n\"2978627\";\"Mont-Mamert\";\"other\"\n\"2978627\";\"Saint-Mamert\";\"other\"\n\"2978632\";\"Saint-Malô-du-Bois\";\"main\"\n\"2978632\";\"Saint-Malo-du-Bois\";\"ascii\"\n\"2978632\";\"Saint-Malo\";\"other\"\n\"2978636\";\"Saint-Malo-de-Guersac\";\"main\"\n\"2978636\";\"Saint-Malo\";\"other\"\n\"2978636\";\"Sant-Malou-Gwersac'h\";\"other\"\n\"2978636\";\"Sant-Maloù-Gwersac'h\";\"other\"\n\"2978640\";\"Saint-Malo\";\"main\"\n\"2978640\";\"Commune-de-la-Victoire\";\"other\"\n\"2978640\";\"Mont-Mamet\";\"other\"\n\"2978640\";\"Port-Malo\";\"other\"\n\"2978640\";\"Saint Malo\";\"other\"\n\"2978640\";\"Saint Mâlo\";\"other\"\n\"2978640\";\"Sant-Malou\";\"other\"\n\"2978640\";\"Sant-Maloù\";\"other\"\n\"2978640\";\"Sen Malo\";\"other\"\n\"2978640\";\"Sen-Malo\";\"other\"\n\"2978640\";\"sheng ma luo\";\"other\"\n\"2978640\";\"Сен Мало\";\"other\"\n\"2978640\";\"Сен-Мало\";\"other\"\n\"2978640\";\"圣马洛\";\"other\"\n\"2978647\";\"Saint-Maixant\";\"main\"\n\"2978658\";\"Saint-Macaire-en-Mauges\";\"main\"\n\"2978658\";\"Saint-Macaire\";\"other\"\n\"2978660\";\"Saint-Macaire\";\"main\"\n\"2978661\";\"Saint-Lys\";\"main\"\n\"2978661\";\"Eaubelle\";\"other\"\n\"2978662\";\"Saint-Lyphard\";\"main\"\n\"2978662\";\"Sant-Lefer\";\"other\"\n\"2978664\";\"Saint-Lyé\";\"main\"\n\"2978664\";\"Saint-Lye\";\"ascii\"\n\"2978666\";\"Saint-Lupicin\";\"main\"\n\"2978666\";\"Lauconne\";\"other\"\n\"2978668\";\"Saint-Lunaire\";\"main\"\n\"2978668\";\"Port-Lunaire\";\"other\"\n\"2978668\";\"Sant-Luner\";\"other\"\n\"2978669\";\"Saint-Lumine-de-Coutais\";\"main\"\n\"2978669\";\"Saint-Lumine\";\"other\"\n\"2978669\";\"Sant-Leven-ar-C'hoad\";\"other\"\n\"2978670\";\"Saint-Lumine-de-Clisson\";\"main\"\n\"2978670\";\"Saint-Lumine\";\"other\"\n\"2978670\";\"Sant-Leven-Klison\";\"other\"\n\"2978678\";\"Saint-Lubin-des-Joncherets\";\"main\"\n\"2978678\";\"Saint-Lubin\";\"other\"\n\"2978688\";\"Saint-Loup-sur-Semouse\";\"main\"\n\"2978688\";\"Saint-Loup\";\"other\"\n\"2978706\";\"Saint-Loup-Cammas\";\"main\"\n\"2978706\";\"Montauloup\";\"other\"\n\"2978706\";\"Saint-Loup\";\"other\"\n\"2978706\";\"Salut\";\"other\"\n\"2978706\";\"Vertu\";\"other\"\n\"2978726\";\"Saint-Louis-de-Montferrand\";\"main\"\n\"2978726\";\"Montferrand\";\"other\"\n\"2978726\";\"Saint Louis-De Monferrand\";\"other\"\n\"2978726\";\"Saint-Louis\";\"other\"\n\"2978742\";\"Saint-Louis\";\"main\"\n\"2978742\";\"Saint-Ludwig\";\"other\"\n\"2978742\";\"Sen-Lui\";\"other\"\n\"2978742\";\"St.Ludwig\";\"other\"\n\"2978742\";\"Сен-Луи\";\"other\"\n\"2978749\";\"Saint-Loubès\";\"main\"\n\"2978749\";\"Saint-Loubes\";\"ascii\"\n\"2978758\";\"Saint-Lô\";\"main\"\n\"2978758\";\"Saint-Lo\";\"ascii\"\n\"2978758\";\"Rocher-de-la-Liberte\";\"other\"\n\"2978758\";\"Rocher-de-la-Liberté\";\"other\"\n\"2978758\";\"Sen-Lo\";\"other\"\n\"2978758\";\"san=ro\";\"other\"\n\"2978758\";\"Сен-Ло\";\"other\"\n\"2978758\";\"サン＝ロー\";\"other\"\n\"2978760\";\"Saint-Lizier\";\"main\"\n\"2978760\";\"Austrie-la-Montagne\";\"other\"\n\"2978768\";\"Saint-Leu-la-Forêt\";\"main\"\n\"2978768\";\"Saint-Leu-la-Foret\";\"ascii\"\n\"2978768\";\"Claire-Fontaine\";\"other\"\n\"2978768\";\"Saint-Leu\";\"other\"\n\"2978771\";\"Saint-Leu\";\"main\"\n\"2978782\";\"Saint-Léonard-de-Noblat\";\"main\"\n\"2978782\";\"Saint-Leonard-de-Noblat\";\"ascii\"\n\"2978782\";\"Leonard-sur-Vienne\";\"other\"\n\"2978782\";\"Léonard-sur-Vienne\";\"other\"\n\"2978782\";\"Saint-Leonard\";\"other\"\n\"2978782\";\"Saint-Léonard\";\"other\"\n\"2978782\";\"Tarn-Vienne\";\"other\"\n\"2978783\";\"Saint-Léonard\";\"main\"\n\"2978783\";\"Saint-Leonard\";\"ascii\"\n\"2978784\";\"Saint-Léonard\";\"main\"\n\"2978784\";\"Saint-Leonard\";\"ascii\"\n\"2978789\";\"Saint-Léonard\";\"main\"\n\"2978789\";\"Saint-Leonard\";\"ascii\"\n\"2978803\";\"Saint-Léger-sur-Roanne\";\"main\"\n\"2978803\";\"Saint-Leger-sur-Roanne\";\"ascii\"\n\"2978803\";\"Saint-Leger\";\"other\"\n\"2978803\";\"Saint-Léger\";\"other\"\n\"2978804\";\"Saint-Léger-sur-Dheune\";\"main\"\n\"2978804\";\"Saint-Leger-sur-Dheune\";\"ascii\"\n\"2978804\";\"Grosne\";\"other\"\n\"2978804\";\"Leger-la-Dheune\";\"other\"\n\"2978804\";\"Leger-les-Rebais\";\"other\"\n\"2978804\";\"Léger-la-Dheune\";\"other\"\n\"2978804\";\"Léger-lès-Rebais\";\"other\"\n\"2978804\";\"Rocaille\";\"other\"\n\"2978804\";\"Saint-Leger\";\"other\"\n\"2978804\";\"Saint-Léger\";\"other\"\n\"2978809\";\"Saint-Léger-sous-Cholet\";\"main\"\n\"2978809\";\"Saint-Leger-sous-Cholet\";\"ascii\"\n\"2978809\";\"Saint-Leger\";\"other\"\n\"2978809\";\"Saint-Léger\";\"other\"\n\"2978814\";\"Saint-Léger-les-Vignes\";\"main\"\n\"2978814\";\"Saint-Leger-les-Vignes\";\"ascii\"\n\"2978814\";\"Saint-Leger\";\"other\"\n\"2978814\";\"Sant-Lezer-ar-Gwiniegi\";\"other\"\n\"2978817\";\"Saint-Léger-lès-Domart\";\"main\"\n\"2978817\";\"Saint-Leger-les-Domart\";\"ascii\"\n\"2978817\";\"Saint-Leger\";\"other\"\n\"2978817\";\"Saint-Léger\";\"other\"\n\"2978822\";\"Saint-Léger-en-Yvelines\";\"main\"\n\"2978822\";\"Saint-Leger-en-Yvelines\";\"ascii\"\n\"2978822\";\"Marat-des-Bois\";\"other\"\n\"2978822\";\"Saint-Leger\";\"other\"\n\"2978822\";\"Saint-Leger-en Yveline\";\"other\"\n\"2978822\";\"Saint-Léger\";\"other\"\n\"2978822\";\"Saint-Léger-en Yveline\";\"other\"\n\"2978828\";\"Saint-Léger-du-Bourg-Denis\";\"main\"\n\"2978828\";\"Saint-Leger-du-Bourg-Denis\";\"ascii\"\n\"2978828\";\"Saint-Leger\";\"other\"\n\"2978828\";\"Saint-Léger\";\"other\"\n\"2978832\";\"Saint-Léger-des-Vignes\";\"main\"\n\"2978832\";\"Saint-Leger-des-Vignes\";\"ascii\"\n\"2978832\";\"Saint Leger\";\"other\"\n\"2978832\";\"Saint Léger\";\"other\"\n\"2978834\";\"Saint-Léger-des-Bois\";\"main\"\n\"2978834\";\"Saint-Leger-des-Bois\";\"ascii\"\n\"2978834\";\"Beauchene\";\"other\"\n\"2978834\";\"Beauchêne\";\"other\"\n\"2978834\";\"Saint-Leger\";\"other\"\n\"2978838\";\"Saint-Léger-de-Montbrun\";\"main\"\n\"2978838\";\"Saint-Leger-de-Montbrun\";\"ascii\"\n\"2978838\";\"Saint-Leger\";\"other\"\n\"2978838\";\"Saint-Léger\";\"other\"\n\"2978865\";\"Saint-Laurent-sur-Sèvre\";\"main\"\n\"2978865\";\"Saint-Laurent-sur-Sevre\";\"ascii\"\n\"2978865\";\"Saint-Laurent\";\"other\"\n\"2978866\";\"Saint-Laurent-sur-Saône\";\"main\"\n\"2978866\";\"Saint-Laurent-sur-Saone\";\"ascii\"\n\"2978866\";\"Ain-sur-Saone\";\"other\"\n\"2978866\";\"Ain-sur-Saône\";\"other\"\n\"2978866\";\"Saint-Laurent\";\"other\"\n\"2978866\";\"Saint-Laurent-de-l'Ain\";\"other\"\n\"2978866\";\"Saint-Laurent-les-Macon\";\"other\"\n\"2978866\";\"Saint-Laurent-lès-Macon\";\"other\"\n\"2978870\";\"Saint-Laurent-sur-Gorre\";\"main\"\n\"2978870\";\"Saint-Laurent\";\"other\"\n\"2978885\";\"Saint-Laurent-en-Royans\";\"main\"\n\"2978885\";\"Montagne-de-Larps\";\"other\"\n\"2978885\";\"Saint-Laurent\";\"other\"\n\"2978891\";\"Saint-Laurent-du-Var\";\"main\"\n\"2978891\";\"Saint-Laurent\";\"other\"\n\"2978891\";\"Sen-Loran-dju-Var\";\"other\"\n\"2978891\";\"Сен-Лоран-дю-Вар\";\"other\"\n\"2978893\";\"Saint-Laurent-du-Pont\";\"main\"\n\"2978893\";\"Laurent-Libre\";\"other\"\n\"2978893\";\"Pont-la-Montagne\";\"other\"\n\"2978893\";\"Saint-Laurent\";\"other\"\n\"2978895\";\"Saint-Laurent-du-Pape\";\"main\"\n\"2978895\";\"Saint-Laurent\";\"other\"\n\"2978911\";\"Saint-Laurent-Nouan\";\"main\"\n\"2978911\";\"Saint-Laurent\";\"other\"\n\"2978911\";\"Saint-Laurent-des-Eaux\";\"other\"\n\"2978917\";\"Saint-Laurent-des-Autels\";\"main\"\n\"2978917\";\"Saint-Laurent\";\"other\"\n\"2978918\";\"Saint-Laurent-des-Arbres\";\"main\"\n\"2978918\";\"Saint-Laurent\";\"other\"\n\"2978918\";\"St Laurent des Arbres\";\"other\"\n\"2978921\";\"Saint-Laurent-de-Mure\";\"main\"\n\"2978921\";\"Saint Laurent\";\"other\"\n\"2978925\";\"Saint-Laurent-de-la-Salanque\";\"main\"\n\"2978925\";\"Saint-Laurent\";\"other\"\n\"2978925\";\"Sant Llorenc de la Salanca\";\"other\"\n\"2978925\";\"Sant Llorenç de la Salanca\";\"other\"\n\"2978925\";\"Sentinelle-de-l'Agly\";\"other\"\n\"2978926\";\"Saint-Laurent-de-la-Prée\";\"main\"\n\"2978926\";\"Saint-Laurent-de-la-Pree\";\"ascii\"\n\"2978926\";\"Saint-Laurent\";\"other\"\n\"2978927\";\"Saint-Laurent-de-la-Plaine\";\"main\"\n\"2978927\";\"Saint-Laurent\";\"other\"\n\"2978936\";\"Saint-Laurent-de-Chamousset\";\"main\"\n\"2978936\";\"Chalier-la-Montagne\";\"other\"\n\"2978936\";\"Saint-Laurent\";\"other\"\n\"2978938\";\"Sant Llorenç de Cerdans\";\"main\"\n\"2978938\";\"Sant Llorenc de Cerdans\";\"ascii\"\n\"2978938\";\"Saint-Laurent-de-Cerdans\";\"other\"\n\"2978940\";\"Saint-Laurent-de-Brévedent\";\"main\"\n\"2978940\";\"Saint-Laurent-de-Brevedent\";\"ascii\"\n\"2978940\";\"Saint-Laurent\";\"other\"\n\"2978949\";\"Saint-Laurent-Blangy\";\"main\"\n\"2978949\";\"Imercourt\";\"other\"\n\"2978949\";\"Saint-Laurent\";\"other\"\n\"2978954\";\"Saint-Laurent\";\"main\"\n\"2978954\";\"Vautrincourt\";\"other\"\n\"2978974\";\"Saint-Lattier\";\"main\"\n\"2978974\";\"Lattier\";\"other\"\n\"2978975\";\"Saint-Lary-Soulan\";\"main\"\n\"2978975\";\"Saint-Lary\";\"other\"\n\"2978975\";\"Sainte-Lary-Soulan\";\"other\"\n\"2978983\";\"Saint-Lambert-la-Potherie\";\"main\"\n\"2978983\";\"Saint-Lambert\";\"other\"\n\"2978985\";\"Saint-Lambert-du-Lattay\";\"main\"\n\"2978985\";\"Saint-Lambert\";\"other\"\n\"2978985\";\"Saint-Lambert-de-Lattay\";\"other\"\n\"2978997\";\"Saint-Just-Saint-Rambert\";\"main\"\n\"2978997\";\"Saint-Just-sur-Loire\";\"other\"\n\"2978999\";\"Saint-Just-Sauvage\";\"main\"\n\"2978999\";\"Just-en-Val\";\"other\"\n\"2978999\";\"Saint-Just\";\"other\"\n\"2978999\";\"Sauvage\";\"other\"\n\"2979001\";\"Saint-Just-Malmont\";\"main\"\n\"2979001\";\"Mont-Blanc\";\"other\"\n\"2979001\";\"Saint-Just\";\"other\"\n\"2979002\";\"Saint-Just-le-Martel\";\"main\"\n\"2979002\";\"Saint-Just\";\"other\"\n\"2979003\";\"Saint-Just-la-Pendue\";\"main\"\n\"2979003\";\"Saint-Just\";\"other\"\n\"2979009\";\"Saint-Just-en-Chevalet\";\"main\"\n\"2979009\";\"Mont-Marat\";\"other\"\n\"2979009\";\"Saint-Just\";\"other\"\n\"2979010\";\"Saint-Just-en-Chaussée\";\"main\"\n\"2979010\";\"Saint-Just-en-Chaussee\";\"ascii\"\n\"2979010\";\"Saint-Just\";\"other\"\n\"2979014\";\"Saint-Just-de-Claix\";\"main\"\n\"2979014\";\"Saint-Just\";\"other\"\n\"2979017\";\"Saint-Just-Chaleyssin\";\"main\"\n\"2979020\";\"Saint-Just\";\"main\"\n\"2979021\";\"Saint-Just\";\"main\"\n\"2979021\";\"Sant-Yust\";\"other\"\n\"2979024\";\"Saint-Just-Luzac\";\"main\"\n\"2979029\";\"Saint-Just\";\"main\"\n\"2979030\";\"Saint-Just\";\"main\"\n\"2979036\";\"Saint-Junien\";\"main\"\n\"2979036\";\"Junien-la-Montagne\";\"other\"\n\"2979048\";\"Saint-Julien-Molin-Molette\";\"main\"\n\"2979048\";\"Saint-Julien\";\"other\"\n\"2979052\";\"Saint-Julien-les-Villas\";\"main\"\n\"2979052\";\"Saint-Julien\";\"other\"\n\"2979054\";\"Saint-Julien-lès-Metz\";\"main\"\n\"2979054\";\"Saint-Julien-les-Metz\";\"ascii\"\n\"2979054\";\"Saint-Julien\";\"other\"\n\"2979068\";\"Saint-Julien-en-Saint-Alban\";\"main\"\n\"2979068\";\"Saint-Julien\";\"other\"\n\"2979072\";\"Saint-Julien-en-Genevois\";\"main\"\n\"2979072\";\"Saint-Julien\";\"other\"\n\"2979074\";\"Saint-Julien-en-Born\";\"main\"\n\"2979074\";\"Saint-Julien\";\"other\"\n\"2979080\";\"Saint-Julien-du-Sault\";\"main\"\n\"2979080\";\"Saint-Julien\";\"other\"\n\"2979087\";\"Saint-Julien-les-Rosiers\";\"main\"\n\"2979087\";\"Saint-Julien\";\"other\"\n\"2979087\";\"Saint-Julien-de-Valgalgues\";\"other\"\n\"2979090\";\"Saint-Julien-des-Landes\";\"main\"\n\"2979090\";\"Landes\";\"other\"\n\"2979090\";\"Saint-Julien\";\"other\"\n\"2979095\";\"Saint-Julien-de-Peyrolas\";\"main\"\n\"2979095\";\"Peyrolas\";\"other\"\n\"2979095\";\"Saint-Julien\";\"other\"\n\"2979109\";\"Saint-Julien-de-Concelles\";\"main\"\n\"2979109\";\"Saint-Julien\";\"other\"\n\"2979109\";\"Sant-Juluan-Kankell\";\"other\"\n\"2979119\";\"Saint-Julien-Chapteuil\";\"main\"\n\"2979119\";\"Mont-Megal\";\"other\"\n\"2979119\";\"Mont-Mégal\";\"other\"\n\"2979119\";\"Saint Julien\";\"other\"\n\"2979128\";\"Saint-Julien\";\"main\"\n\"2979128\";\"Sant-Juluan-Pentevr\";\"other\"\n\"2979133\";\"Saint-Julien\";\"main\"\n\"2979133\";\"Val-Julien\";\"other\"\n\"2979141\";\"Saint-Julien\";\"main\"\n\"2979141\";\"Mont-Rocher\";\"other\"\n\"2979141\";\"Saint-Julien-le-Montagne\";\"other\"\n\"2979148\";\"Saint-Juéry\";\"main\"\n\"2979148\";\"Saint-Juery\";\"ascii\"\n\"2979148\";\"Bellevue\";\"other\"\n\"2979148\";\"Juery-les-Azalate\";\"other\"\n\"2979148\";\"Juéry-les-Azalate\";\"other\"\n\"2979148\";\"Saint-Juery-les-Azalate\";\"other\"\n\"2979148\";\"Saint-Juéry-les-Azalate\";\"other\"\n\"2979153\";\"Saint-Jouvent\";\"main\"\n\"2979158\";\"Saint-Jouin-Bruneval\";\"main\"\n\"2979158\";\"Saint-Jouin\";\"other\"\n\"2979158\";\"Saint-Jouin-sur-Mer\";\"other\"\n\"2979160\";\"Saint-Jouan-des-Guérets\";\"main\"\n\"2979160\";\"Saint-Jouan-des-Guerets\";\"ascii\"\n\"2979160\";\"Saint-Jouan\";\"other\"\n\"2979160\";\"Sant-Yowan-an-Havreg\";\"other\"\n\"2979162\";\"Saint-Josse\";\"main\"\n\"2979162\";\"Bois-Fontaine\";\"other\"\n\"2979162\";\"Fontaines-aux-Bois\";\"other\"\n\"2979164\";\"Saint-Joseph-de-Rivière\";\"main\"\n\"2979164\";\"Saint-Joseph-de-Riviere\";\"ascii\"\n\"2979164\";\"Saint-Joseph\";\"other\"\n\"2979170\";\"Saint-Joseph\";\"main\"\n\"2979174\";\"Saint-Jory\";\"main\"\n\"2979175\";\"Saint-Jorioz\";\"main\"\n\"2979175\";\"Laudon\";\"other\"\n\"2979179\";\"Saint-Joachim\";\"main\"\n\"2979179\";\"Les Iles\";\"other\"\n\"2979179\";\"Sant-Yoasin\";\"other\"\n\"2979185\";\"Saint-Jeoire\";\"main\"\n\"2979185\";\"Saint-Jeoire-Faucigny\";\"other\"\n\"2979189\";\"Saint-Jean-sur-Veyle\";\"main\"\n\"2979189\";\"Saint-Jean\";\"other\"\n\"2979193\";\"Saint-Jean-sur-Mayenne\";\"main\"\n\"2979193\";\"Boisse\";\"other\"\n\"2979193\";\"Saint-Jean\";\"other\"\n\"2979195\";\"Saint-Jean-sur-Couesnon\";\"main\"\n\"2979195\";\"Saint-Jean\";\"other\"\n\"2979195\";\"Sant-Yann-ar-C'houenon\";\"other\"\n\"2979205\";\"Sant Joan de Pladecorts\";\"main\"\n\"2979205\";\"Saint-Jean-Pla-de-Corts\";\"other\"\n\"2979205\";\"Sant Joan\";\"other\"\n\"2979205\";\"Sant Joan de Pages\";\"other\"\n\"2979205\";\"Sant Joan de Pagès\";\"other\"\n\"2979207\";\"Saint-Jean-Pied-de-Port\";\"main\"\n\"2979207\";\"Donibane-Garazi\";\"other\"\n\"2979207\";\"Nive-Franche\";\"other\"\n\"2979209\";\"Saint-Jeannet\";\"main\"\n\"2979212\";\"Saint-Jean-le-Vieux\";\"main\"\n\"2979212\";\"Saint-Jean\";\"other\"\n\"2979212\";\"Vieux-d'Oizellon\";\"other\"\n\"2979218\";\"Saint-Jean-les-Deux-Jumeaux\";\"main\"\n\"2979218\";\"Saint-Jean\";\"other\"\n\"2979226\";\"Saint-Jean-le-Blanc\";\"main\"\n\"2979230\";\"Saint-Jean-la-Poterie\";\"main\"\n\"2979230\";\"Saint-Jean\";\"other\"\n\"2979230\";\"Sant-Yann-ar-Wern\";\"other\"\n\"2979239\";\"Saint-Jean-en-Royans\";\"main\"\n\"2979239\";\"Lyonne\";\"other\"\n\"2979239\";\"Saint-Jean\";\"other\"\n\"2979244\";\"Saint-Jean-du-Gard\";\"main\"\n\"2979244\";\"Brion-du-Gard\";\"other\"\n\"2979244\";\"Saint-Jean\";\"other\"\n\"2979245\";\"Saint-Jean-du-Falga\";\"main\"\n\"2979245\";\"Saint-Jean\";\"other\"\n\"2979250\";\"Saint-Jean-du-Cardonnay\";\"main\"\n\"2979250\";\"Saint-Jean\";\"other\"\n\"2979261\";\"Saint-Jean-de-Védas\";\"main\"\n\"2979261\";\"Saint-Jean-de-Vedas\";\"ascii\"\n\"2979261\";\"Saint-Jean\";\"other\"\n\"2979272\";\"Saint-Jean-de-Thouars\";\"main\"\n\"2979272\";\"Saint-Jean\";\"other\"\n\"2979277\";\"Saint-Jean-de-Soudain\";\"main\"\n\"2979277\";\"Saint-Jean\";\"other\"\n\"2979277\";\"Saint-Jean-de-Soudin\";\"other\"\n\"2979280\";\"Saint-Jean-des-Mauvrets\";\"main\"\n\"2979280\";\"Les Mauvrets\";\"other\"\n\"2979280\";\"Saint-Jean\";\"other\"\n\"2979283\";\"Saint-Jean-de-Sixt\";\"main\"\n\"2979283\";\"Saint-Jean\";\"other\"\n\"2979287\";\"Saint-Jean-des-Champs\";\"main\"\n\"2979287\";\"Saint-Jean\";\"other\"\n\"2979289\";\"Saint-Jean-des-Baisants\";\"main\"\n\"2979291\";\"Saint-Jean-de-Sauves\";\"main\"\n\"2979291\";\"Saint-Jean\";\"other\"\n\"2979296\";\"Saint-Jean-de-Niost\";\"main\"\n\"2979296\";\"Saint-Jean\";\"other\"\n\"2979298\";\"Saint-Jean-de-Muzols\";\"main\"\n\"2979298\";\"Muzols\";\"other\"\n\"2979298\";\"Saint-Jean\";\"other\"\n\"2979299\";\"Saint-Jean-de-Monts\";\"main\"\n\"2979299\";\"Grands-Monts\";\"other\"\n\"2979299\";\"Saint-Jean\";\"other\"\n\"2979300\";\"Saint-Jean-de-Moirans\";\"main\"\n\"2979300\";\"Moiraxis\";\"other\"\n\"2979300\";\"Saint-Jean\";\"other\"\n\"2979303\";\"Saint-Jean-de-Maurienne\";\"main\"\n\"2979303\";\"Arc\";\"other\"\n\"2979303\";\"Saint-Jean\";\"other\"\n\"2979309\";\"Saint-Jean-de-Luz\";\"main\"\n\"2979309\";\"Chauvin-le-Dragon\";\"other\"\n\"2979309\";\"Donibane Lohizun\";\"other\"\n\"2979309\";\"Donibane Lohizune\";\"other\"\n\"2979309\";\"Saint-Jean\";\"other\"\n\"2979309\";\"San Juan de Luz\";\"other\"\n\"2979309\";\"San Juan de Luze\";\"other\"\n\"2979309\";\"St.-Jean-de-Luz\";\"other\"\n\"2979310\";\"Saint-Jean-de-Losne\";\"main\"\n\"2979310\";\"Belle-Defense\";\"other\"\n\"2979310\";\"Belle-Défense\";\"other\"\n\"2979310\";\"Saint-Jean\";\"other\"\n\"2979313\";\"Saint-Jean-de-Liversay\";\"main\"\n\"2979313\";\"La Gerbe\";\"other\"\n\"2979313\";\"Saint-Jean\";\"other\"\n\"2979316\";\"Saint-Jean-de-la-Ruelle\";\"main\"\n\"2979316\";\"Saint-Jean\";\"other\"\n\"2979326\";\"Saint-Jean-de-Gonville\";\"main\"\n\"2979326\";\"Saint-Jean\";\"other\"\n\"2979328\";\"Saint-Jean-de-Fos\";\"main\"\n\"2979328\";\"Fort-l'Herault\";\"other\"\n\"2979328\";\"Fort-l'Hérault\";\"other\"\n\"2979328\";\"Saint-Jean\";\"other\"\n\"2979341\";\"Saint-Jean-de-Braye\";\"main\"\n\"2979342\";\"Saint-Jean-de-Bournay\";\"main\"\n\"2979342\";\"Saint Jean\";\"other\"\n\"2979342\";\"Toile-a-Voiles\";\"other\"\n\"2979342\";\"Toile-à-Voiles\";\"other\"\n\"2979344\";\"Saint-Jean-de-Boiseau\";\"main\"\n\"2979344\";\"Saint-Jean\";\"other\"\n\"2979344\";\"Sant-Yann-ar-Granneg\";\"other\"\n\"2979363\";\"Saint-Jean-d'Angély\";\"main\"\n\"2979363\";\"Saint-Jean-d'Angely\";\"ascii\"\n\"2979369\";\"Saint-Jean-Cap-Ferrat\";\"main\"\n\"2979369\";\"Saint-Jean\";\"other\"\n\"2979369\";\"St Jean Cap Ferrat\";\"other\"\n\"2979370\";\"Saint-Jean-Brévelay\";\"main\"\n\"2979370\";\"Saint-Jean-Brevelay\";\"ascii\"\n\"2979370\";\"Saint-Jean\";\"other\"\n\"2979370\";\"Saint-Jean-Brevalay\";\"other\"\n\"2979370\";\"Saint-Jean-Brévalay\";\"other\"\n\"2979370\";\"Sant-Yann-Brevele\";\"other\"\n\"2979371\";\"Saint-Jean-Bonnefonds\";\"main\"\n\"2979389\";\"Saint-Jean\";\"main\"\n\"2979394\";\"Saint-Jean\";\"main\"\n\"2979398\";\"Saint-Jans-Cappel\";\"main\"\n\"2979401\";\"Saint-James\";\"main\"\n\"2979401\";\"Beuvron-les-Monts\";\"other\"\n\"2979405\";\"Saint-Jacut-les-Pins\";\"main\"\n\"2979405\";\"Sant-Yagu-ar-Bineg\";\"other\"\n\"2979408\";\"Saint-Jacques-sur-Darnétal\";\"main\"\n\"2979408\";\"Saint-Jacques-sur-Darnetal\";\"ascii\"\n\"2979408\";\"Saint-Jacques\";\"other\"\n\"2979415\";\"Saint-Jacques-de-la-Lande\";\"main\"\n\"2979415\";\"Saint-Jacques\";\"other\"\n\"2979415\";\"Sant-Jakez-Al-Lann\";\"other\"\n\"2979431\";\"Saint-Ismier\";\"main\"\n\"2979431\";\"Mansval\";\"other\"\n\"2979475\";\"Saint-Hippolyte-du-Fort\";\"main\"\n\"2979475\";\"Mont-Polite\";\"other\"\n\"2979475\";\"Saint-Hippolyte\";\"other\"\n\"2979478\";\"Saint-Hippolyte\";\"main\"\n\"2979479\";\"Saint-Hippolyte\";\"main\"\n\"2979479\";\"Doubs-Marat\";\"other\"\n\"2979482\";\"Saint-Hippolyte\";\"main\"\n\"2979488\";\"Saint-Hippolyte\";\"main\"\n\"2979488\";\"Sant Hipolit de la Salanca\";\"other\"\n\"2979488\";\"Sant Hipòlit de la Salanca\";\"other\"\n\"2979502\";\"Saint-Hilaire-Saint-Mesmin\";\"main\"\n\"2979502\";\"Saint-Hilaire\";\"other\"\n\"2979505\";\"Saint-Hilaire-Petitville\";\"main\"\n\"2979505\";\"Saint-Hilaire\";\"other\"\n\"2979507\";\"Saint-Hilaire-lez-Cambrai\";\"main\"\n\"2979507\";\"Bon-Air\";\"other\"\n\"2979507\";\"Saint-Hilaire\";\"other\"\n\"2979520\";\"Saint-Hilaire-la-Palud\";\"main\"\n\"2979520\";\"La Palud\";\"other\"\n\"2979520\";\"Saint-Hilaire\";\"other\"\n\"2979520\";\"Saint-Hilaire-la Pallud\";\"other\"\n\"2979529\";\"Saint-Hilaire-du-Rosier\";\"main\"\n\"2979529\";\"Saint-Hilaire\";\"other\"\n\"2979531\";\"Saint-Hilaire-du-Harcouët\";\"main\"\n\"2979531\";\"Saint-Hilaire-du-Harcouet\";\"ascii\"\n\"2979531\";\"Hilaire-Harcouet\";\"other\"\n\"2979531\";\"Hilaire-Harcouët\";\"other\"\n\"2979531\";\"Saint-Hilaire\";\"other\"\n\"2979538\";\"Saint-Hilaire-de-Villefranche\";\"main\"\n\"2979538\";\"Angely-Boutonne\";\"other\"\n\"2979538\";\"Angély-Boutonne\";\"other\"\n\"2979538\";\"Belisaire\";\"other\"\n\"2979538\";\"Bélisaire\";\"other\"\n\"2979538\";\"L'Egalite\";\"other\"\n\"2979538\";\"L'Egalité\";\"other\"\n\"2979538\";\"Saint-Hilaire\";\"other\"\n\"2979539\";\"Saint-Hilaire-de-Talmont\";\"main\"\n\"2979539\";\"Le Tanes\";\"other\"\n\"2979539\";\"Le Tanès\";\"other\"\n\"2979539\";\"Saint-Hilaire\";\"other\"\n\"2979541\";\"Saint-Hilaire-des-Loges\";\"main\"\n\"2979541\";\"Saint-Hilaire\";\"other\"\n\"2979543\";\"Saint-Hilaire-de-Riez\";\"main\"\n\"2979543\";\"La Revolution\";\"other\"\n\"2979543\";\"La Révolution\";\"other\"\n\"2979543\";\"Saint-Hilaire\";\"other\"\n\"2979545\";\"Saint-Hilaire-de-Loulay\";\"main\"\n\"2979545\";\"Saint-Hilaire\";\"other\"\n\"2979548\";\"Saint-Hilaire-de-la-Côte\";\"main\"\n\"2979548\";\"Saint-Hilaire-de-la-Cote\";\"ascii\"\n\"2979548\";\"Hilaire-la-Montagne\";\"other\"\n\"2979548\";\"Saint-Hilaire\";\"other\"\n\"2979551\";\"Saint-Hilaire-de-Clisson\";\"main\"\n\"2979551\";\"Saint-Hilaire\";\"other\"\n\"2979551\";\"Saint-Hilaire-du-Bois\";\"other\"\n\"2979551\";\"Sant-Eler-Neved\";\"other\"\n\"2979552\";\"Saint-Hilaire-de-Chaléons\";\"main\"\n\"2979552\";\"Saint-Hilaire-de-Chaleons\";\"ascii\"\n\"2979552\";\"Saint Helaire-de-Chaleons\";\"other\"\n\"2979552\";\"Saint-Hilaire\";\"other\"\n\"2979552\";\"Sant-Eler-Kaleon\";\"other\"\n\"2979554\";\"Saint-Hilaire-de-Brethmas\";\"main\"\n\"2979554\";\"Brethmas-Avesnes\";\"other\"\n\"2979554\";\"Saint-Hilaire\";\"other\"\n\"2979574\";\"Saint-Hilaire\";\"main\"\n\"2979574\";\"Saint-Hilaire-du-Touvet\";\"other\"\n\"2979577\";\"Saint-Hilaire\";\"main\"\n\"2979589\";\"Saint-Herblon\";\"main\"\n\"2979589\";\"Bellevue\";\"other\"\n\"2979589\";\"Sant-Ervlon-ar-Roz\";\"other\"\n\"2979590\";\"Saint-Herblain\";\"main\"\n\"2979590\";\"Sant-Ervlan\";\"other\"\n\"2979595\";\"Saint-Hélen\";\"main\"\n\"2979595\";\"Saint-Helen\";\"ascii\"\n\"2979595\";\"Sant-Haelen\";\"other\"\n\"2979596\";\"Saint-Héand\";\"main\"\n\"2979596\";\"Saint-Heand\";\"ascii\"\n\"2979596\";\"Mont-Pailloux\";\"other\"\n\"2979619\";\"Saint-Grégoire\";\"main\"\n\"2979619\";\"Saint-Gregoire\";\"ascii\"\n\"2979619\";\"Sant-Gregor\";\"other\"\n\"2979627\";\"Saint-Gratien\";\"main\"\n\"2979638\";\"Saint-Gonnery\";\"main\"\n\"2979638\";\"Sant-Goneri\";\"other\"\n\"2979648\";\"Saint-Gobain\";\"main\"\n\"2979648\";\"Mont-Libre\";\"other\"\n\"2979657\";\"Saint-Girons\";\"main\"\n\"2979657\";\"Lunoque\";\"other\"\n\"2979662\";\"Saint-Gilles-Croix-de-Vie\";\"main\"\n\"2979662\";\"Saint-Gilles\";\"other\"\n\"2979673\";\"Saint-Gilles\";\"main\"\n\"2979673\";\"Sant-Jili-Roazhon\";\"other\"\n\"2979679\";\"Saint-Gilles\";\"main\"\n\"2979679\";\"Heraclee\";\"other\"\n\"2979679\";\"Héraclée\";\"other\"\n\"2979679\";\"Mont-d'Abloux\";\"other\"\n\"2979679\";\"Saint-Gilles-du-Gard\";\"other\"\n\"2979680\";\"Saint-Gildas-des-Bois\";\"main\"\n\"2979680\";\"Gweltaz-Lambrizig\";\"other\"\n\"2979680\";\"Saint-Gildas\";\"other\"\n\"2979681\";\"Saint-Gildas-de-Rhuys\";\"main\"\n\"2979681\";\"Abelard\";\"other\"\n\"2979681\";\"Abélard\";\"other\"\n\"2979681\";\"Lokentaz\";\"other\"\n\"2979681\";\"Saint-Gildas\";\"other\"\n\"2979681\";\"Saint-Gildas de Ruys\";\"other\"\n\"2979681\";\"Saint-Gildas-de Ruis\";\"other\"\n\"2979692\";\"Saint-Gervasy\";\"main\"\n\"2979692\";\"Belleviste\";\"other\"\n\"2979697\";\"Saint-Gervais-les-Trois-Clochers\";\"main\"\n\"2979697\";\"Saint-Gervais\";\"other\"\n\"2979697\";\"Saint-Gervais-les 3 Clochers\";\"other\"\n\"2979698\";\"Saint-Gervais-les-Bains\";\"main\"\n\"2979698\";\"Saint-Gervais\";\"other\"\n\"2979698\";\"Verosse\";\"other\"\n\"2979698\";\"Vérosse\";\"other\"\n\"2979699\";\"Saint-Gervais-la-Forêt\";\"main\"\n\"2979699\";\"Saint-Gervais-la-Foret\";\"ascii\"\n\"2979699\";\"Bonne-Creme\";\"other\"\n\"2979699\";\"Bonne-Crème\";\"other\"\n\"2979699\";\"Gervais-sur-Cosson\";\"other\"\n\"2979699\";\"Saint-Gervais\";\"other\"\n\"2979701\";\"Saint-Gervais-en-Belin\";\"main\"\n\"2979701\";\"Saint-Gervais\";\"other\"\n\"2979705\";\"Saint-Gervais-d'Auvergne\";\"main\"\n\"2979705\";\"Saint-Gervais\";\"other\"\n\"2979707\";\"Saint-Gervais\";\"main\"\n\"2979712\";\"Saint-Gervais\";\"main\"\n\"2979722\";\"Saint-Germer-de-Fly\";\"main\"\n\"2979722\";\"Saint-Germer\";\"other\"\n\"2979724\";\"Saint-Germain-Village\";\"main\"\n\"2979724\";\"Saint-Germain\";\"other\"\n\"2979730\";\"Saint-Germain-sur-Morin\";\"main\"\n\"2979730\";\"Saint-Germain\";\"other\"\n\"2979731\";\"Saint-Germain-sur-Moine\";\"main\"\n\"2979731\";\"Saint-Germain\";\"other\"\n\"2979733\";\"Saint-Germain-sur-l'Arbresle\";\"main\"\n\"2979733\";\"Barras-sur-l'Arbresle\";\"other\"\n\"2979733\";\"Saint Germain\";\"other\"\n\"2979739\";\"Saint-Germain-sur-Avre\";\"main\"\n\"2979739\";\"Saint-Germain\";\"other\"\n\"2979750\";\"Saint-Germain-Lespinasse\";\"main\"\n\"2979750\";\"Saint-Germain\";\"other\"\n\"2979752\";\"Saint-Germain-lès-Corbeil\";\"main\"\n\"2979752\";\"Saint-Germain-les-Corbeil\";\"ascii\"\n\"2979752\";\"Saint-Germain\";\"other\"\n\"2979752\";\"Vieux-Corbeil\";\"other\"\n\"2979754\";\"Saint-Germain-les-Belles\";\"main\"\n\"2979754\";\"Mont-les-Belles\";\"other\"\n\"2979754\";\"Saint-Germain\";\"other\"\n\"2979755\";\"Saint-Germain-lès-Arpajon\";\"main\"\n\"2979755\";\"Saint-Germain-les-Arpajon\";\"ascii\"\n\"2979755\";\"Franc-Val\";\"other\"\n\"2979755\";\"Germain-les-Chatres\";\"other\"\n\"2979755\";\"Germain-lès-Châtres\";\"other\"\n\"2979755\";\"Germinal-sur-Orge\";\"other\"\n\"2979755\";\"Saint-Germain\";\"other\"\n\"2979758\";\"Saint-Germain-Lembron\";\"main\"\n\"2979758\";\"Liziniac-Lembron\";\"other\"\n\"2979758\";\"Saint-Germain\";\"other\"\n\"2979770\";\"Saint-Germain-Laval\";\"main\"\n\"2979770\";\"Gardeloup-sur-Seine\";\"other\"\n\"2979771\";\"Saint-Germain-Laval\";\"main\"\n\"2979771\";\"Chalier\";\"other\"\n\"2979771\";\"Montchalier-Laval\";\"other\"\n\"2979772\";\"Saint-Germain-Laprade\";\"main\"\n\"2979772\";\"Saint-Germain\";\"other\"\n\"2979780\";\"Saint-Germain-la-Blanche-Herbe\";\"main\"\n\"2979780\";\"Saint-Germain\";\"other\"\n\"2979783\";\"Saint-Germain-en-Laye\";\"main\"\n\"2979783\";\"Montagne-du-Bon-Air\";\"other\"\n\"2979783\";\"Saint-Germain\";\"other\"\n\"2979783\";\"Sen-Zhermen-an-Leh\";\"other\"\n\"2979783\";\"saengjeleumaeng-angle\";\"other\"\n\"2979783\";\"san=jeruman=an=re\";\"other\"\n\"2979783\";\"sheng ri er man ang lai\";\"other\"\n\"2979783\";\"Сен-Жермен-ан-Лэ\";\"other\"\n\"2979783\";\"サン＝ジェルマン＝アン＝レー\";\"other\"\n\"2979783\";\"圣日耳曼昂莱\";\"other\"\n\"2979783\";\"생제르맹앙레\";\"other\"\n\"2979784\";\"Saint-Germain-en-Coglès\";\"main\"\n\"2979784\";\"Saint-Germain-en-Cogles\";\"ascii\"\n\"2979784\";\"Saint-Germain\";\"other\"\n\"2979784\";\"Sant-Jermen-Gougleiz\";\"other\"\n\"2979790\";\"Saint-Germain-du-Puy\";\"main\"\n\"2979790\";\"La Montagne-du-Puy\";\"other\"\n\"2979790\";\"Saint Germain\";\"other\"\n\"2979791\";\"Saint-Germain-du-Puch\";\"main\"\n\"2979791\";\"Saint-Germain\";\"other\"\n\"2979792\";\"Saint-Germain-du-Plain\";\"main\"\n\"2979792\";\"Le Pelletier-du-Plain\";\"other\"\n\"2979792\";\"Saint-Germain\";\"other\"\n\"2979792\";\"Thorey-sur-Saone\";\"other\"\n\"2979792\";\"Thorey-sur-Saône\";\"other\"\n\"2979796\";\"Saint-Germain-du-Corbéis\";\"main\"\n\"2979796\";\"Saint-Germain-du-Corbeis\";\"ascii\"\n\"2979796\";\"Lisie-du-Corbeis\";\"other\"\n\"2979796\";\"Lisie-du-Corbéis\";\"other\"\n\"2979796\";\"Saint-Germain\";\"other\"\n\"2979797\";\"Saint-Germain-du-Bois\";\"main\"\n\"2979797\";\"Belle-Place\";\"other\"\n\"2979797\";\"Bellevue-des-Bois\";\"other\"\n\"2979797\";\"Grand-Bois\";\"other\"\n\"2979797\";\"Saint-Germain\";\"other\"\n\"2979807\";\"Saint-Germain-des-Prés\";\"main\"\n\"2979807\";\"Saint-Germain-des-Pres\";\"ascii\"\n\"2979807\";\"Saint-Germain\";\"other\"\n\"2979808\";\"Saint-Germain-des-Prés\";\"main\"\n\"2979808\";\"Saint-Germain-des-Pres\";\"ascii\"\n\"2979808\";\"Pres-Fleuris\";\"other\"\n\"2979808\";\"Prés-Fleuris\";\"other\"\n\"2979808\";\"Saint-Germain\";\"other\"\n\"2979812\";\"Saint-Germain-des-Fossés\";\"main\"\n\"2979812\";\"Saint-Germain-des-Fosses\";\"ascii\"\n\"2979812\";\"Puymourgon\";\"other\"\n\"2979812\";\"Saint-Germain\";\"other\"\n\"2979819\";\"Saint-Germain-de-Prinçay\";\"main\"\n\"2979819\";\"Saint-Germain-de-Princay\";\"ascii\"\n\"2979819\";\"Princay-le-Vineux\";\"other\"\n\"2979819\";\"Prinçay-le-Vineux\";\"other\"\n\"2979819\";\"Saint-Germain\";\"other\"\n\"2979819\";\"Saint-Germain-le Princay\";\"other\"\n\"2979819\";\"Saint-Germain-le Prinçay\";\"other\"\n\"2979825\";\"Saint-Germain-de-Marencennes\";\"main\"\n\"2979825\";\"Gerrnain-la-Rondee\";\"other\"\n\"2979825\";\"Gerrnain-la-Rondée\";\"other\"\n\"2979825\";\"Saint-Germain\";\"other\"\n\"2979826\";\"Saint-Germain-de-Lusignan\";\"main\"\n\"2979826\";\"Germain-Lusignan\";\"other\"\n\"2979826\";\"Saint-Germain\";\"other\"\n\"2979832\";\"Saint-Germain-de-la-Grange\";\"main\"\n\"2979832\";\"Saint-Germain\";\"other\"\n\"2979861\";\"Saint-Germain\";\"main\"\n\"2979865\";\"Saint-Germain\";\"main\"\n\"2979865\";\"Le Mont-Germain\";\"other\"\n\"2979873\";\"Saint-Géréon\";\"main\"\n\"2979873\";\"Saint-Gereon\";\"ascii\"\n\"2979873\";\"Sant-Gerent\";\"other\"\n\"2979876\";\"Saint-Gérand-le-Puy\";\"main\"\n\"2979876\";\"Saint-Gerand-le-Puy\";\"ascii\"\n\"2979876\";\"Puy-Redan\";\"other\"\n\"2979876\";\"Saint-Gerand\";\"other\"\n\"2979876\";\"Saint-Gérand\";\"other\"\n\"2979880\";\"Saint-Geours-de-Maremne\";\"main\"\n\"2979880\";\"Saint-Geours\";\"other\"\n\"2979880\";\"Saint-Geours-de Maremme\";\"other\"\n\"2979885\";\"Saint-Georges-sur-Loire\";\"main\"\n\"2979885\";\"Beau-Site\";\"other\"\n\"2979885\";\"Saint-Georges\";\"other\"\n\"2979890\";\"Saint-Georges-sur-Eure\";\"main\"\n\"2979890\";\"Saint-Georges\";\"other\"\n\"2979892\";\"Saint-Georges-sur-Cher\";\"main\"\n\"2979892\";\"Albion-sur-Cher\";\"other\"\n\"2979892\";\"Saint-Georges\";\"other\"\n\"2979893\";\"Saint-Georges-sur-Baulche\";\"main\"\n\"2979893\";\"Saint-Georges\";\"other\"\n\"2979895\";\"Saint-Georges-sur-Allier\";\"main\"\n\"2979895\";\"Saint-Georges\";\"other\"\n\"2979900\";\"Saint-Georges-les-Bains\";\"main\"\n\"2979900\";\"Saint-Georges\";\"other\"\n\"2979901\";\"Saint-Georges-lès-Baillargeaux\";\"main\"\n\"2979901\";\"Saint-Georges-les-Baillargeaux\";\"ascii\"\n\"2979901\";\"La Montagne\";\"other\"\n\"2979901\";\"Saint-Georges\";\"other\"\n\"2979905\";\"Saint-Georges-Haute-Ville\";\"main\"\n\"2979905\";\"Saint Georges\";\"other\"\n\"2979912\";\"Saint-Georges-du-Bois\";\"main\"\n\"2979912\";\"Saint-Georges\";\"other\"\n\"2979914\";\"Saint-Georges-du-Bois\";\"main\"\n\"2979914\";\"Saint-Georges\";\"other\"\n\"2979920\";\"Saint-Georges-des-Groseillers\";\"main\"\n\"2979920\";\"Saint-Georges\";\"other\"\n\"2979920\";\"Saint-Georges-des-Groseilliers\";\"other\"\n\"2979921\";\"Saint-Georges-des-Coteaux\";\"main\"\n\"2979921\";\"Les Coteaux\";\"other\"\n\"2979921\";\"Saint-Georges\";\"other\"\n\"2979925\";\"Saint-Georges-de-Reneins\";\"main\"\n\"2979925\";\"Reneins-les-Sables\";\"other\"\n\"2979925\";\"Saint-Georges\";\"other\"\n\"2979926\";\"Saint-Georges-de-Reintembault\";\"main\"\n\"2979926\";\"Saint-Georges\";\"other\"\n\"2979926\";\"Sant-Jord-Restembaod\";\"other\"\n\"2979928\";\"Saint-Georges-de-Pointindoux\";\"main\"\n\"2979928\";\"Carriere-Grison\";\"other\"\n\"2979928\";\"Carrière-Grison\";\"other\"\n\"2979928\";\"Saint-Georges\";\"other\"\n\"2979930\";\"Saint-Georges-de-Montaigu\";\"main\"\n\"2979930\";\"Saint-Georges\";\"other\"\n\"2979931\";\"Saint-Georges-de-Mons\";\"main\"\n\"2979931\";\"Mons-le-Libre\";\"other\"\n\"2979931\";\"Saint-Georges\";\"other\"\n\"2979933\";\"Saint-Georges-de-Luzençon\";\"main\"\n\"2979933\";\"Saint-Georges-de-Luzencon\";\"ascii\"\n\"2979933\";\"Fonds-Fort\";\"other\"\n\"2979933\";\"George-Camboulas\";\"other\"\n\"2979933\";\"Saint-Georges-de-Luzancon\";\"other\"\n\"2979933\";\"Saint-Georges-de-Luzançon\";\"other\"\n\"2979941\";\"Saint-Georges-de-Didonne\";\"main\"\n\"2979941\";\"Didonne\";\"other\"\n\"2979941\";\"Saint-Georges\";\"other\"\n\"2979943\";\"Saint-Georges-de-Commiers\";\"main\"\n\"2979943\";\"Saint Gorges-de Commiers\";\"other\"\n\"2979943\";\"Saint-Georges\";\"other\"\n\"2979943\";\"Saint-Georges-de-Comiers\";\"other\"\n\"2979943\";\"Saint-Georges-de-Comners\";\"other\"\n\"2979951\";\"Saint-Georges-Buttavent\";\"main\"\n\"2979951\";\"Saint-Georges\";\"other\"\n\"2979951\";\"Saint-Georges-Butavent\";\"other\"\n\"2979976\";\"Saint-Geoire-en-Valdaine\";\"main\"\n\"2979976\";\"Saint-Geoire\";\"other\"\n\"2979976\";\"Val-d'Eynan\";\"other\"\n\"2979979\";\"Saint-Genix-sur-Guiers\";\"main\"\n\"2979979\";\"Entre-Rives\";\"other\"\n\"2979979\";\"Saint-Genix\";\"other\"\n\"2979983\";\"Saint-Genis-Pouilly\";\"main\"\n\"2979983\";\"Saint-Genis\";\"other\"\n\"2979984\";\"Saint-Genis-les-Ollières\";\"main\"\n\"2979984\";\"Saint-Genis-les-Ollieres\";\"ascii\"\n\"2979984\";\"Ollieres\";\"other\"\n\"2979984\";\"Ollières\";\"other\"\n\"2979984\";\"Saint Genis\";\"other\"\n\"2979985\";\"Saint-Genis-Laval\";\"main\"\n\"2979985\";\"Genis-le-Patriote\";\"other\"\n\"2979985\";\"Saint Genis\";\"other\"\n\"2979985\";\"Sen-Zheni-Laval'\";\"other\"\n\"2979985\";\"Сен-Жени-Лаваль\";\"other\"\n\"2979989\";\"Saint-Genis-de-Saintonge\";\"main\"\n\"2979989\";\"Saint-Genis\";\"other\"\n\"2979993\";\"Sant Genís de Fontanes\";\"main\"\n\"2979993\";\"Sant Genis de Fontanes\";\"ascii\"\n\"2979993\";\"Saint-Genis-des-Fontaines\";\"other\"\n\"2979993\";\"Saint-Génis-des-Fontaines\";\"other\"\n\"2980001\";\"Saint-Geniès-des-Mourgues\";\"main\"\n\"2980001\";\"Saint-Genies-des-Mourgues\";\"ascii\"\n\"2980001\";\"Saint-Genies\";\"other\"\n\"2980001\";\"Saint-Geniès\";\"other\"\n\"2980002\";\"Saint-Geniès-de-Malgoirès\";\"main\"\n\"2980002\";\"Saint-Genies-de-Malgoires\";\"ascii\"\n\"2980002\";\"Mont-Esquielle\";\"other\"\n\"2980002\";\"Montesquielle\";\"other\"\n\"2980003\";\"Saint-Geniès-de-Comolas\";\"main\"\n\"2980003\";\"Saint-Genies-de-Comolas\";\"ascii\"\n\"2980003\";\"Mont-Comolas\";\"other\"\n\"2980003\";\"Montclos\";\"other\"\n\"2980003\";\"Saint-Genies\";\"other\"\n\"2980003\";\"Saint-Geniès\";\"other\"\n\"2980004\";\"Saint-Geniès-Bellevue\";\"main\"\n\"2980004\";\"Saint-Genies-Bellevue\";\"ascii\"\n\"2980004\";\"Saint-Genies\";\"other\"\n\"2980004\";\"Saint-Geniès\";\"other\"\n\"2980006\";\"Saint-Gengoux-le-National\";\"main\"\n\"2980006\";\"Gengoux-le-National\";\"other\"\n\"2980006\";\"Jouvence\";\"other\"\n\"2980006\";\"Saint-Gengoux\";\"other\"\n\"2980011\";\"Saint-Genest-Malifaux\";\"main\"\n\"2980011\";\"Saint-Genest\";\"other\"\n\"2980011\";\"Semeine-et-Furans\";\"other\"\n\"2980012\";\"Saint-Genest-Lerpt\";\"main\"\n\"2980012\";\"Saint-Genet-Lerpt\";\"other\"\n\"2980029\";\"Saint-Genès-Champanelle\";\"main\"\n\"2980029\";\"Saint-Genes-Champanelle\";\"ascii\"\n\"2980029\";\"Saint-Genest-de-Champanelle\";\"other\"\n\"2980031\";\"Saint-Gence\";\"main\"\n\"2980033\";\"Saint-Gély-du-Fesc\";\"main\"\n\"2980033\";\"Saint-Gely-du-Fesc\";\"ascii\"\n\"2980033\";\"Saint-Gely\";\"other\"\n\"2980033\";\"Saint-Gély\";\"other\"\n\"2980035\";\"Saint-Gelais\";\"main\"\n\"2980035\";\"Gelais-sur-Sevre\";\"other\"\n\"2980035\";\"Gelais-sur-Sèvre\";\"other\"\n\"2980040\";\"Saint-Gaultier\";\"main\"\n\"2980040\";\"Roche-Libre\";\"other\"\n\"2980045\";\"Saint-Gaudens\";\"main\"\n\"2980045\";\"Mont-d'Unite\";\"other\"\n\"2980045\";\"Mont-d'Unité\";\"other\"\n\"2980045\";\"Sent Gaudenc\";\"other\"\n\"2980045\";\"Sent Gaudenç\";\"other\"\n\"2980046\";\"Saint-Gatien-des-Bois\";\"main\"\n\"2980052\";\"Saint-Galmier\";\"main\"\n\"2980052\";\"Commune-Fond-Fort\";\"other\"\n\"2980052\";\"Ville-Fontfort\";\"other\"\n\"2980059\";\"Saint-Fulgent\";\"main\"\n\"2980059\";\"Fulgent-les-Bois\";\"other\"\n\"2980080\";\"Saint-François\";\"main\"\n\"2980080\";\"Saint-Francois\";\"ascii\"\n\"2980092\";\"Saint-Fort\";\"main\"\n\"2980094\";\"Saint-Forgeux\";\"main\"\n\"2980097\";\"Saint-Fons\";\"main\"\n\"2980098\";\"Saint-Folquin\";\"main\"\n\"2980098\";\"Le Bas-Morin\";\"other\"\n\"2980104\";\"Saint-Flour\";\"main\"\n\"2980104\";\"Fort-Cantal\";\"other\"\n\"2980104\";\"Fort-Libre\";\"other\"\n\"2980104\";\"Mont-Flour\";\"other\"\n\"2980107\";\"Saint-Florent-sur-Cher\";\"main\"\n\"2980107\";\"Saint-Florent\";\"other\"\n\"2980108\";\"Saint-Florent-sur-Auzonnet\";\"main\"\n\"2980108\";\"Mont-Mayard\";\"other\"\n\"2980108\";\"Montmajord\";\"other\"\n\"2980108\";\"Saint-Florens\";\"other\"\n\"2980108\";\"Saint-Florent\";\"other\"\n\"2980109\";\"Saint-Florent-le-Vieil\";\"main\"\n\"2980109\";\"Mont-Glone\";\"other\"\n\"2980109\";\"Saint-Florent\";\"other\"\n\"2980111\";\"Saint-Florentin\";\"main\"\n\"2980111\";\"Mont-Armance\";\"other\"\n\"2980111\";\"Pont-Civique\";\"other\"\n\"2980113\";\"Saint-Florent-des-Bois\";\"main\"\n\"2980113\";\"Bois-Milon\";\"other\"\n\"2980113\";\"Saint-Florent\";\"other\"\n\"2980115\";\"Saint-Florent\";\"main\"\n\"2980115\";\"San Fiurenzu\";\"other\"\n\"2980127\";\"Saint-Fiacre-sur-Maine\";\"main\"\n\"2980127\";\"Saint-Fiacre\";\"other\"\n\"2980127\";\"Sant-Fieg-ar-Mewan\";\"other\"\n\"2980144\";\"Saint-Félix-Lauragais\";\"main\"\n\"2980144\";\"Saint-Felix-Lauragais\";\"ascii\"\n\"2980144\";\"Saint-Felix\";\"other\"\n\"2980144\";\"Saint-Félix\";\"other\"\n\"2980160\";\"Saint-Félix\";\"main\"\n\"2980160\";\"Saint-Felix\";\"ascii\"\n\"2980165\";\"Saint-Félicien\";\"main\"\n\"2980165\";\"Saint-Felicien\";\"ascii\"\n\"2980165\";\"Felisval\";\"other\"\n\"2980169\";\"Saint-Fargeau-Ponthierry\";\"main\"\n\"2980169\";\"Saint-Fargeau-sur-Seine\";\"other\"\n\"2980170\";\"Saint-Fargeau\";\"main\"\n\"2980170\";\"Le Peletier\";\"other\"\n\"2980170\";\"Saint Fageau\";\"other\"\n\"2980182\";\"Sainte-Verge\";\"main\"\n\"2980184\";\"Saint-Évarzec\";\"main\"\n\"2980184\";\"Saint-Evarzec\";\"ascii\"\n\"2980184\";\"Sant-Evarzeg\";\"other\"\n\"2980192\";\"Saint-Eustache-la-Forêt\";\"main\"\n\"2980192\";\"Saint-Eustache-la-Foret\";\"ascii\"\n\"2980192\";\"Saint-Eustache\";\"other\"\n\"2980197\";\"Saint-Eusèbe\";\"main\"\n\"2980197\";\"Saint-Eusebe\";\"ascii\"\n\"2980197\";\"Cremont\";\"other\"\n\"2980197\";\"Montfleury\";\"other\"\n\"2980197\";\"Sparte\";\"other\"\n\"2980205\";\"Sainte-Tulle\";\"main\"\n\"2980205\";\"Tulle-les-Durance\";\"other\"\n\"2980214\";\"Saint-Étienne-sur-Chalaronne\";\"main\"\n\"2980214\";\"Saint-Etienne-sur-Chalaronne\";\"ascii\"\n\"2980214\";\"Saint-Etienne\";\"other\"\n\"2980214\";\"Saint-Étienne\";\"other\"\n\"2980219\";\"Saint-Étienne-lès-Remiremont\";\"main\"\n\"2980219\";\"Saint-Etienne-les-Remiremont\";\"ascii\"\n\"2980219\";\"Saint-Etienne\";\"other\"\n\"2980219\";\"Saint-Étienne\";\"other\"\n\"2980219\";\"Valmoselle\";\"other\"\n\"2980231\";\"Saint-Étienne-en-Coglès\";\"main\"\n\"2980231\";\"Saint-Etienne-en-Cogles\";\"ascii\"\n\"2980231\";\"Saint-Etienne\";\"other\"\n\"2980231\";\"Saint-Étienne\";\"other\"\n\"2980231\";\"Sant-Stefan-Gougleiz\";\"other\"\n\"2980236\";\"Saint-Étienne-du-Rouvray\";\"main\"\n\"2980236\";\"Saint-Etienne-du-Rouvray\";\"ascii\"\n\"2980236\";\"Saint-Etienne\";\"other\"\n\"2980236\";\"Saint-Étienne\";\"other\"\n\"2980236\";\"Sent-Eht'en-dju-Ruvreh\";\"other\"\n\"2980236\";\"Сент-Этьен-дю-Руврэ\";\"other\"\n\"2980238\";\"Saint-Étienne-du-Grès\";\"main\"\n\"2980238\";\"Saint-Etienne-du-Gres\";\"ascii\"\n\"2980238\";\"Saint-Etienne\";\"other\"\n\"2980238\";\"Saint-Étienne\";\"other\"\n\"2980239\";\"Saint-Étienne-du-Bois\";\"main\"\n\"2980239\";\"Saint-Etienne-du-Bois\";\"ascii\"\n\"2980239\";\"Saint-Etienne\";\"other\"\n\"2980239\";\"Saint-Étienne\";\"other\"\n\"2980240\";\"Saint-Étienne-du-Bois\";\"main\"\n\"2980240\";\"Saint-Etienne-du-Bois\";\"ascii\"\n\"2980240\";\"Saint-Etienne\";\"other\"\n\"2980240\";\"Sant-Stefan-ar-C'hoad\";\"other\"\n\"2980246\";\"Saint-Etienne-de-Tulmont\";\"main\"\n\"2980246\";\"Saint-Etienne\";\"other\"\n\"2980246\";\"Saint-Étienne\";\"other\"\n\"2980256\";\"Saint-Étienne-de-Saint-Geoirs\";\"main\"\n\"2980256\";\"Saint-Etienne-de-Saint-Geoirs\";\"ascii\"\n\"2980256\";\"Marathon\";\"other\"\n\"2980256\";\"Mont-Geoirs\";\"other\"\n\"2980256\";\"Saint-Etienne\";\"other\"\n\"2980256\";\"Saint-Étienne\";\"other\"\n\"2980259\";\"Saint-Étienne-de-Montluc\";\"main\"\n\"2980259\";\"Saint-Etienne-de-Montluc\";\"ascii\"\n\"2980259\";\"Messidor\";\"other\"\n\"2980259\";\"Saint-Etienne\";\"other\"\n\"2980259\";\"Saint-Étienne\";\"other\"\n\"2980259\";\"Sant-Stefan-Brengolou\";\"other\"\n\"2980259\";\"Sant-Stefan-Brengoloù\";\"other\"\n\"2980260\";\"Saint-Étienne-de-Mer-Morte\";\"main\"\n\"2980260\";\"Saint-Etienne-de-Mer-Morte\";\"ascii\"\n\"2980260\";\"Saint-Etienne\";\"other\"\n\"2980260\";\"Saint-Étienne\";\"other\"\n\"2980260\";\"Sant-Stefan-Melveuzh\";\"other\"\n\"2980268\";\"Saint-Étienne-de-Fontbellon\";\"main\"\n\"2980268\";\"Saint-Etienne-de-Fontbellon\";\"ascii\"\n\"2980268\";\"Saint-Etienne\";\"other\"\n\"2980268\";\"Saint-Étienne\";\"other\"\n\"2980269\";\"Saint-Etienne-de-Cuines\";\"main\"\n\"2980269\";\"Cuines\";\"other\"\n\"2980269\";\"Saint-Etienne\";\"other\"\n\"2980270\";\"Saint-Étienne-de-Crossey\";\"main\"\n\"2980270\";\"Saint-Etienne-de-Crossey\";\"ascii\"\n\"2980270\";\"Saint-Etienne\";\"other\"\n\"2980270\";\"Saint-Étienne\";\"other\"\n\"2980274\";\"Saint-Étienne-de-Chigny\";\"main\"\n\"2980274\";\"Saint-Etienne-de-Chigny\";\"ascii\"\n\"2980274\";\"Chigne-les-Bois\";\"other\"\n\"2980274\";\"Chigny-les-Bois\";\"other\"\n\"2980274\";\"Chigné-les-Bois\";\"other\"\n\"2980274\";\"Saint-Etienne\";\"other\"\n\"2980274\";\"Saint-Étienne\";\"other\"\n\"2980278\";\"Saint-Étienne-de-Baïgorry\";\"main\"\n\"2980278\";\"Saint-Etienne-de-Baigorry\";\"ascii\"\n\"2980278\";\"Baigorri\";\"other\"\n\"2980278\";\"Saint-Etienne\";\"other\"\n\"2980278\";\"Saint-Étienne\";\"other\"\n\"2980278\";\"Thermopile\";\"other\"\n\"2980283\";\"Saint-Étienne-au-Mont\";\"main\"\n\"2980283\";\"Saint-Etienne-au-Mont\";\"ascii\"\n\"2980283\";\"Audisque\";\"other\"\n\"2980283\";\"Saint-Etienne\";\"other\"\n\"2980283\";\"Saint-Étienne\";\"other\"\n\"2980291\";\"Saint-Étienne\";\"main\"\n\"2980291\";\"Saint-Etienne\";\"ascii\"\n\"2980291\";\"Armes-Ville\";\"other\"\n\"2980291\";\"Canton-d'Armes\";\"other\"\n\"2980291\";\"Commune-d'Armes\";\"other\"\n\"2980291\";\"Libre-Ville\";\"other\"\n\"2980291\";\"Lungsod ng Saint-Etienne\";\"other\"\n\"2980291\";\"Lungsod ng Saint-Étienne\";\"other\"\n\"2980291\";\"Sant-Etieve\";\"other\"\n\"2980291\";\"Sant-Etiève\";\"other\"\n\"2980291\";\"Sent Etien\";\"other\"\n\"2980291\";\"Sent-Eht'en\";\"other\"\n\"2980291\";\"san=techien'nu\";\"other\"\n\"2980291\";\"san=tetien'nu\";\"other\"\n\"2980291\";\"sant atyyn\";\"other\"\n\"2980291\";\"sheng ai di an\";\"other\"\n\"2980291\";\"Сент Етиен\";\"other\"\n\"2980291\";\"Сент-Этьен\";\"other\"\n\"2980291\";\"سانت إتيين\";\"other\"\n\"2980291\";\"サン＝テチエンヌ\";\"other\"\n\"2980291\";\"サン＝テティエンヌ\";\"other\"\n\"2980291\";\"圣艾蒂安\";\"other\"\n\"2980301\";\"Sainte-Terre\";\"main\"\n\"2980304\";\"Sainte-Suzanne\";\"main\"\n\"2980304\";\"Mont-d'Erve\";\"other\"\n\"2980305\";\"Sainte-Suzanne\";\"main\"\n\"2980313\";\"Saint-Estève\";\"main\"\n\"2980313\";\"Saint-Esteve\";\"ascii\"\n\"2980313\";\"Sant Esteve del Monestir\";\"other\"\n\"2980317\";\"Saint-Estèphe\";\"main\"\n\"2980317\";\"Saint-Estephe\";\"ascii\"\n\"2980320\";\"Sainte-Soulle\";\"main\"\n\"2980320\";\"Roche-Libre\";\"other\"\n\"2980320\";\"Rousseau\";\"other\"\n\"2980324\";\"Sainte-Solange\";\"main\"\n\"2980325\";\"Saintes-Maries-de-la-Mer\";\"main\"\n\"2980325\";\"Commune-de-la-Mer\";\"other\"\n\"2980325\";\"Les Saintes Maries de la Mer\";\"other\"\n\"2980325\";\"Les Saintes-Maries\";\"other\"\n\"2980325\";\"Saintes-Maries\";\"other\"\n\"2980325\";\"Sent-Mari-de-la-Mer\";\"other\"\n\"2980325\";\"Ville-de-la-Mer\";\"other\"\n\"2980325\";\"santo=mari=do=ra=meru\";\"other\"\n\"2980325\";\"Сент-Мари-де-ла-Мер\";\"other\"\n\"2980325\";\"サント＝マリー＝ド＝ラ＝メール\";\"other\"\n\"2980328\";\"Sainte-Sigolène\";\"main\"\n\"2980328\";\"Sainte-Sigolene\";\"ascii\"\n\"2980328\";\"Segolaine-les-Bois\";\"other\"\n\"2980328\";\"Sigolaine\";\"other\"\n\"2980328\";\"Sigolene\";\"other\"\n\"2980328\";\"Sigolène\";\"other\"\n\"2980335\";\"Sainte-Savine\";\"main\"\n\"2980340\";\"Saintes\";\"main\"\n\"2980340\";\"Xantes\";\"other\"\n\"2980344\";\"Saint-Erme-Outre-et-Ramecourt\";\"main\"\n\"2980344\";\"Saint-Erme\";\"other\"\n\"2980345\";\"Sainte-Reine-de-Bretagne\";\"main\"\n\"2980345\";\"Sainte-Reine\";\"other\"\n\"2980345\";\"Santez-Rouanez-Breizh\";\"other\"\n\"2980350\";\"Saint-Erblon\";\"main\"\n\"2980350\";\"Sant-Ervlon-an-Dezerzh\";\"other\"\n\"2980356\";\"Sainte-Radegonde\";\"main\"\n\"2980356\";\"Sainte-Radegonde-Vrines\";\"other\"\n\"2980364\";\"Sainte-Radegonde\";\"main\"\n\"2980364\";\"Bel-Air\";\"other\"\n\"2980364\";\"Varanzay\";\"other\"\n\"2980372\";\"Sainte-Pazanne\";\"main\"\n\"2980372\";\"Franchere\";\"other\"\n\"2980372\";\"Franchère\";\"other\"\n\"2980372\";\"Santez-Pezhenn\";\"other\"\n\"2980375\";\"Saint-Épain\";\"main\"\n\"2980375\";\"Saint-Epain\";\"ascii\"\n\"2980392\";\"Saint-Émilion\";\"main\"\n\"2980392\";\"Saint-Emilion\";\"ascii\"\n\"2980392\";\"Emilion-la-Montagne\";\"other\"\n\"2980397\";\"Sainte-Mère-Église\";\"main\"\n\"2980397\";\"Sainte-Mere-Eglise\";\"ascii\"\n\"2980397\";\"Mere-Libre\";\"other\"\n\"2980397\";\"Mère-Libre\";\"other\"\n\"2980400\";\"Sainte-Menehould\";\"main\"\n\"2980400\";\"Montagne-sur-Aisne\";\"other\"\n\"2980402\";\"Sainte-Maxime\";\"main\"\n\"2980402\";\"Cassius\";\"other\"\n\"2980402\";\"Saint-Maxime\";\"other\"\n\"2980402\";\"Saint-Maxine\";\"other\"\n\"2980402\";\"Sainte-Maxime-sur-Mer\";\"other\"\n\"2980403\";\"Sainte-Maure-de-Touraine\";\"main\"\n\"2980403\";\"Maure-Libre\";\"other\"\n\"2980403\";\"Sainte-Maure\";\"other\"\n\"2980405\";\"Sainte-Maure\";\"main\"\n\"2980405\";\"Mont-Bel-Air\";\"other\"\n\"2980411\";\"Sainte-Marie-Plage\";\"main\"\n\"2980418\";\"Sainte-Marie-Kerque\";\"main\"\n\"2980427\";\"Sainte-Marie-des-Champs\";\"main\"\n\"2980427\";\"Sainte-Marie\";\"other\"\n\"2980429\";\"Sainte-Marie-de-Ré\";\"main\"\n\"2980429\";\"Sainte-Marie-de-Re\";\"ascii\"\n\"2980429\";\"La Pointe\";\"other\"\n\"2980429\";\"Sainte-Marie\";\"other\"\n\"2980429\";\"Union\";\"other\"\n\"2980438\";\"Sainte-Marie-aux-Mines\";\"main\"\n\"2980438\";\"Markirch\";\"other\"\n\"2980438\";\"Sainte Marie aux Mains\";\"other\"\n\"2980438\";\"Val-aux-Mines\";\"other\"\n\"2980439\";\"Sainte-Marie-aux-Chênes\";\"main\"\n\"2980439\";\"Sainte-Marie-aux-Chenes\";\"ascii\"\n\"2980439\";\"Sainte-Marie\";\"other\"\n\"2980446\";\"Sainte-Marie\";\"main\"\n\"2980446\";\"Lokmaria-Redon\";\"other\"\n\"2980457\";\"Sainte-Marguerite-sur-Duclair\";\"main\"\n\"2980457\";\"Sainte-Marguerite\";\"other\"\n\"2980476\";\"Sainte-Marguerite\";\"main\"\n\"2980476\";\"Meurthe-Fave\";\"other\"\n\"2980488\";\"Sainte-Luce-sur-Loire\";\"main\"\n\"2980488\";\"Sainte-Luce\";\"other\"\n\"2980488\";\"Santez-Lusenn\";\"other\"\n\"2980492\";\"Saint-Éloy-les-Mines\";\"main\"\n\"2980492\";\"Saint-Eloy-les-Mines\";\"ascii\"\n\"2980492\";\"Saint-Eloy\";\"other\"\n\"2980492\";\"Saint-Éloy\";\"other\"\n\"2980494\";\"Saint-Éloy-de-Gy\";\"main\"\n\"2980494\";\"Saint-Eloy-de-Gy\";\"ascii\"\n\"2980494\";\"Saint-Eloy\";\"other\"\n\"2980507\";\"Saint-Éloi\";\"main\"\n\"2980507\";\"Saint-Eloi\";\"ascii\"\n\"2980507\";\"Loi\";\"other\"\n\"2980514\";\"Sainte-Lizaigne\";\"main\"\n\"2980514\";\"Vin-Bon\";\"other\"\n\"2980519\";\"Sainte-Livrade-sur-Lot\";\"main\"\n\"2980519\";\"Sainte-Livrade\";\"other\"\n\"2980532\";\"Sainte-Jamme-sur-Sarthe\";\"main\"\n\"2980532\";\"Sainte-Jamme\";\"other\"\n\"2980532\";\"Sainte-Jammes-sur-Sarthe\";\"other\"\n\"2980532\";\"Sainte-Jeanne\";\"other\"\n\"2980537\";\"Sainte-Honorine-du-Fay\";\"main\"\n\"2980537\";\"Sainte-Honorine\";\"other\"\n\"2980541\";\"Sainte-Hermine\";\"main\"\n\"2980541\";\"Hermand-le-Guerrier\";\"other\"\n\"2980541\";\"Hermine-sur-Sinagne\";\"other\"\n\"2980542\";\"Sainte-Hélène-sur-Isère\";\"main\"\n\"2980542\";\"Sainte-Helene-sur-Isere\";\"ascii\"\n\"2980542\";\"Les Forges\";\"other\"\n\"2980542\";\"Sainte-Helene\";\"other\"\n\"2980542\";\"Sainte-Hélène\";\"other\"\n\"2980547\";\"Sainte-Hélène\";\"main\"\n\"2980547\";\"Sainte-Helene\";\"ascii\"\n\"2980547\";\"Santez-Elen\";\"other\"\n\"2980550\";\"Sainte-Hélène\";\"main\"\n\"2980550\";\"Sainte-Helene\";\"ascii\"\n\"2980554\";\"Sainte-Geneviève-sur-Argence\";\"main\"\n\"2980554\";\"Sainte-Genevieve-sur-Argence\";\"ascii\"\n\"2980554\";\"Sainte-Genevieve\";\"other\"\n\"2980554\";\"Sainte-Geneviève\";\"other\"\n\"2980558\";\"Sainte-Geneviève-des-Bois\";\"main\"\n\"2980558\";\"Sainte-Genevieve-des-Bois\";\"ascii\"\n\"2980558\";\"Colbert-la-Reunion\";\"other\"\n\"2980558\";\"Colbert-la-Réunion\";\"other\"\n\"2980558\";\"Sainte-Genevieve\";\"other\"\n\"2980558\";\"Sainte-Geneviève\";\"other\"\n\"2980558\";\"Sent-Zhenev'ev-de-Bua\";\"other\"\n\"2980558\";\"Сент-Женевьев-де-Буа\";\"other\"\n\"2980559\";\"Sainte-Geneviève-des-Bois\";\"main\"\n\"2980559\";\"Sainte-Genevieve-des-Bois\";\"ascii\"\n\"2980559\";\"Sainte-Genevieve\";\"other\"\n\"2980559\";\"Sainte-Geneviève\";\"other\"\n\"2980559\";\"Sent-Zhenev'ev-de-Bua\";\"other\"\n\"2980559\";\"Сент-Женевьев-де-Буа\";\"other\"\n\"2980562\";\"Sainte-Geneviève\";\"main\"\n\"2980562\";\"Sainte-Genevieve\";\"ascii\"\n\"2980565\";\"Sainte-Gemmes-sur-Loire\";\"main\"\n\"2980565\";\"Sainte-Gemme\";\"other\"\n\"2980565\";\"Sainte-Gemmes-sur Loire\";\"other\"\n\"2980570\";\"Sainte-Gemme-la-Plaine\";\"main\"\n\"2980570\";\"Les Bruyeres\";\"other\"\n\"2980570\";\"Les Bruyères\";\"other\"\n\"2980570\";\"Sainte-Gemme\";\"other\"\n\"2980581\";\"Sainte-Gauburge-Sainte-Colombe\";\"main\"\n\"2980581\";\"Sainte-Gauburge\";\"other\"\n\"2980586\";\"Sainte-Foy-lès-Lyon\";\"main\"\n\"2980586\";\"Sainte-Foy-les-Lyon\";\"ascii\"\n\"2980586\";\"Beauvais-l'Isle-Barbe\";\"other\"\n\"2980586\";\"Bonnefey\";\"other\"\n\"2980586\";\"Canton-Chalier\";\"other\"\n\"2980586\";\"Canton-Egalite\";\"other\"\n\"2980586\";\"Canton-Egalité\";\"other\"\n\"2980586\";\"Canton-de-Marat\";\"other\"\n\"2980586\";\"Canton-de-la-Convention\";\"other\"\n\"2980586\";\"Canton-de-la-Federation\";\"other\"\n\"2980586\";\"Canton-de-la-Fédération\";\"other\"\n\"2980586\";\"Canton-de-la-Liberte\";\"other\"\n\"2980586\";\"Canton-de-la-Liberté\";\"other\"\n\"2980586\";\"Canton-de-la-Montagne\";\"other\"\n\"2980586\";\"Canton-de-la-Raison\";\"other\"\n\"2980586\";\"Canton-le-Peletier\";\"other\"\n\"2980586\";\"Canton-sans-Culotte\";\"other\"\n\"2980586\";\"Commune-Affranchie\";\"other\"\n\"2980586\";\"Commune-Chalier\";\"other\"\n\"2980586\";\"Mont-Chalier\";\"other\"\n\"2980586\";\"Quartier-de-la-Montagne\";\"other\"\n\"2980586\";\"Saint-Foy\";\"other\"\n\"2980586\";\"Sainte-Foy\";\"other\"\n\"2980586\";\"Sainte-Foy-lez-Lyon\";\"other\"\n\"2980586\";\"Sent-Fua-le-Lion\";\"other\"\n\"2980586\";\"Сент-Фуа-ле-Лион\";\"other\"\n\"2980587\";\"Sainte-Foy-l'Argentière\";\"main\"\n\"2980587\";\"Sainte-Foy-l'Argentiere\";\"ascii\"\n\"2980587\";\"Foy-sur-Brevenne\";\"other\"\n\"2980587\";\"Saint-Foy-l'Argentiere\";\"other\"\n\"2980587\";\"Saint-Foy-l'Argentière\";\"other\"\n\"2980587\";\"Sainte-Foy\";\"other\"\n\"2980590\";\"Sainte-Foy-de-Peyrolières\";\"main\"\n\"2980590\";\"Sainte-Foy-de-Peyrolieres\";\"ascii\"\n\"2980590\";\"Peyroulieres\";\"other\"\n\"2980590\";\"Peyroulières\";\"other\"\n\"2980590\";\"Sainte-Foy\";\"other\"\n\"2980590\";\"Sainte-Foy de Peyrollieres\";\"other\"\n\"2980590\";\"Sainte-Foy de Peyrollières\";\"other\"\n\"2980590\";\"Sainte-Foy-de-Peyrolleres\";\"other\"\n\"2980590\";\"Sainte-Foy-de-Peyrollères\";\"other\"\n\"2980597\";\"Sainte-Foy\";\"main\"\n\"2980597\";\"Le Desert\";\"other\"\n\"2980597\";\"Le Désert\";\"other\"\n\"2980601\";\"Sainte-Fortunade\";\"main\"\n\"2980603\";\"Sainte-Florine\";\"main\"\n\"2980603\";\"Florine-le-Charbon\";\"other\"\n\"2980606\";\"Sainte-Flaive-des-Loups\";\"main\"\n\"2980606\";\"Louvetiere\";\"other\"\n\"2980606\";\"Louvetière\";\"other\"\n\"2980606\";\"Sainte-Flaive\";\"other\"\n\"2980610\";\"Sainte-Feyre\";\"main\"\n\"2980611\";\"Sainte-Féréole\";\"main\"\n\"2980611\";\"Sainte-Fereole\";\"ascii\"\n\"2980611\";\"Montagne-Frimaire\";\"other\"\n\"2980611\";\"Montfrimaire\";\"other\"\n\"2980611\";\"Saint-Fereole\";\"other\"\n\"2980611\";\"Saint-Féréole\";\"other\"\n\"2980616\";\"Sainte-Euphémie\";\"main\"\n\"2980616\";\"Sainte-Euphemie\";\"ascii\"\n\"2980625\";\"Sainte-Eulalie\";\"main\"\n\"2980636\";\"Saint-Égrève\";\"main\"\n\"2980636\";\"Saint-Egreve\";\"ascii\"\n\"2980636\";\"Saint Egreve\";\"other\"\n\"2980636\";\"San Egreve\";\"other\"\n\"2980636\";\"Vence\";\"other\"\n\"2980648\";\"Sainte-Croix-en-Plaine\";\"main\"\n\"2980648\";\"Saint-Croix\";\"other\"\n\"2980658\";\"Sainte-Croix-aux-Mines\";\"main\"\n\"2980658\";\"Sainte-Croix\";\"other\"\n\"2980668\";\"Sainte-Consorce\";\"main\"\n\"2980668\";\"Les Marrons\";\"other\"\n\"2980676\";\"Sainte-Colombe-en-Bruilhois\";\"main\"\n\"2980676\";\"Sainte-Colombe\";\"other\"\n\"2980684\";\"Sainte-Colombe\";\"main\"\n\"2980691\";\"Sainte-Colombe\";\"main\"\n\"2980711\";\"Sainte-Cécile-les-Vignes\";\"main\"\n\"2980711\";\"Sainte-Cecile-les-Vignes\";\"ascii\"\n\"2980711\";\"Cecile-Montagnarde\";\"other\"\n\"2980711\";\"Cécile-Montagnarde\";\"other\"\n\"2980711\";\"Sainte-Cecile\";\"other\"\n\"2980711\";\"Sainte-Cécile\";\"other\"\n\"2980716\";\"Sainte-Cécile\";\"main\"\n\"2980716\";\"Sainte-Cecile\";\"ascii\"\n\"2980723\";\"Sainte-Catherine\";\"main\"\n\"2980723\";\"Sainte-Catherine-lez-Arras\";\"other\"\n\"2980723\";\"Sainte-Catherine-lèz-Arras\";\"other\"\n\"2980742\";\"Sainte-Bazeille\";\"main\"\n\"2980742\";\"Chalier\";\"other\"\n\"2980761\";\"Sainte-Anne-sur-Brivet\";\"main\"\n\"2980761\";\"Sainte-Anne\";\"other\"\n\"2980761\";\"Sainte-Anne-de-Campbon\";\"other\"\n\"2980783\";\"Sainte-Anastasie-sur-Issole\";\"main\"\n\"2980783\";\"Sainte-Anastasie\";\"other\"\n\"2980789\";\"Sainte-Agnès\";\"main\"\n\"2980789\";\"Sainte-Agnes\";\"ascii\"\n\"2980789\";\"Saint-Agnes\";\"other\"\n\"2980789\";\"Saint-Agnès\";\"other\"\n\"2980795\";\"Sainte-Adresse\";\"main\"\n\"2980795\";\"Cap-d'Antifer\";\"other\"\n\"2980795\";\"Cap-de-la-Heve\";\"other\"\n\"2980795\";\"Cap-de-la-Hève\";\"other\"\n\"2980796\";\"Saint-Dyé-sur-Loire\";\"main\"\n\"2980796\";\"Saint-Dye-sur-Loire\";\"ascii\"\n\"2980796\";\"Die\";\"other\"\n\"2980796\";\"Die-sur-Loire\";\"other\"\n\"2980796\";\"Dié\";\"other\"\n\"2980796\";\"Dié-sur-Loire\";\"other\"\n\"2980796\";\"Saint-Dye\";\"other\"\n\"2980796\";\"Saint-Dyé\";\"other\"\n\"2980799\";\"Saint-Drézéry\";\"main\"\n\"2980799\";\"Saint-Drezery\";\"ascii\"\n\"2980801\";\"Saint-Doulchard\";\"main\"\n\"2980801\";\"Unite-sur-Yevre\";\"other\"\n\"2980801\";\"Unité-sur-Yèvre\";\"other\"\n\"2980805\";\"Saint-Donan\";\"main\"\n\"2980805\";\"Sant-Donan\";\"other\"\n\"2980806\";\"Saint-Domineuc\";\"main\"\n\"2980806\";\"Landoveneg\";\"other\"\n\"2980808\";\"Saint-Dolay\";\"main\"\n\"2980808\";\"Sant-Aelwez\";\"other\"\n\"2980816\";\"Saint-Dizier\";\"main\"\n\"2980816\";\"Sankt-Diz'e\";\"other\"\n\"2980816\";\"Санкт-Дизье\";\"other\"\n\"2980827\";\"Saint-Dié-des-Vosges\";\"main\"\n\"2980827\";\"Saint-Die-des-Vosges\";\"ascii\"\n\"2980827\";\"Sen-D'e-de-Vozh\";\"other\"\n\"2980827\";\"Сен-Дье-де-Вож\";\"other\"\n\"2980830\";\"Saint-Didier-sur-Chalaronne\";\"main\"\n\"2980830\";\"Saint-Didier\";\"other\"\n\"2980830\";\"Saint-Didier-de Chalaronne\";\"other\"\n\"2980833\";\"Saint-Didier-sous-Riverie\";\"main\"\n\"2980833\";\"Basse-Montagne\";\"other\"\n\"2980833\";\"Beaurepaire\";\"other\"\n\"2980833\";\"Saint Didier\";\"other\"\n\"2980836\";\"Saint-Didier-en-Velay\";\"main\"\n\"2980836\";\"Saint-Didier\";\"other\"\n\"2980843\";\"Saint-Didier-de-la-Tour\";\"main\"\n\"2980843\";\"Saint Didier\";\"other\"\n\"2980844\";\"Saint-Didier-de-Formans\";\"main\"\n\"2980844\";\"Saint-Didier\";\"other\"\n\"2980849\";\"Saint-Didier\";\"main\"\n\"2980849\";\"Sant-Ider\";\"other\"\n\"2980856\";\"Saint-Didier\";\"main\"\n\"2980856\";\"Pierre-Blanche\";\"other\"\n\"2980856\";\"Saint Didier-les-Bois\";\"other\"\n\"2980861\";\"Saint-Désir\";\"main\"\n\"2980861\";\"Saint-Desir\";\"ascii\"\n\"2980868\";\"Saint-Denis-sur-Sarthon\";\"main\"\n\"2980868\";\"Saint-Denis\";\"other\"\n\"2980868\";\"Sarthon-sous-Chaumont\";\"other\"\n\"2980878\";\"Saint-Denis-les-Ponts\";\"main\"\n\"2980878\";\"Saint-Denis\";\"other\"\n\"2980880\";\"Saint-Denis-lès-Bourg\";\"main\"\n\"2980880\";\"Saint-Denis-les-Bourg\";\"ascii\"\n\"2980880\";\"Saint-Denis\";\"other\"\n\"2980883\";\"Saint-Denis-la-Chevasse\";\"main\"\n\"2980883\";\"Saint-Denis\";\"other\"\n\"2980885\";\"Saint-Denis-en-Val\";\"main\"\n\"2980885\";\"Saint-Denis\";\"other\"\n\"2980886\";\"Saint-Denis-en-Bugey\";\"main\"\n\"2980886\";\"Le Chosson-d'Albarine\";\"other\"\n\"2980886\";\"Saint-Denis\";\"other\"\n\"2980891\";\"Saint-Denis-d'Oléron\";\"main\"\n\"2980891\";\"Saint-Denis-d'Oleron\";\"ascii\"\n\"2980891\";\"Cite-de-la-Reunion\";\"other\"\n\"2980891\";\"Cité-de-la-Réunion\";\"other\"\n\"2980891\";\"La Reunion-sur-mer\";\"other\"\n\"2980891\";\"La Réunion-sur-mer\";\"other\"\n\"2980891\";\"Saint-Denis\";\"other\"\n\"2980891\";\"Sen-Deni-d'Oleron\";\"other\"\n\"2980891\";\"Сен-Дени-д'Олерон\";\"other\"\n\"2980898\";\"Saint-Denis-de-Pile\";\"main\"\n\"2980898\";\"Saint-Denis-de Pilles\";\"other\"\n\"2980905\";\"Saint-Denis-de-Gastines\";\"main\"\n\"2980905\";\"Saint-Denis\";\"other\"\n\"2980906\";\"Saint-Denis-de-Cabanne\";\"main\"\n\"2980906\";\"Saint-Denis\";\"other\"\n\"2980916\";\"Saint-Denis\";\"main\"\n\"2980916\";\"Sen-Deni\";\"other\"\n\"2980916\";\"Сен-Дени\";\"other\"\n\"2980932\";\"Saint-Cyr-sur-Morin\";\"main\"\n\"2980932\";\"La Fraternite\";\"other\"\n\"2980932\";\"La Fraternité\";\"other\"\n\"2980932\";\"Saint-Cyr\";\"other\"\n\"2980933\";\"Saint-Cyr-sur-Mer\";\"main\"\n\"2980933\";\"Saint-Cyr\";\"other\"\n\"2980934\";\"Saint-Cyr-sur-Menthon\";\"main\"\n\"2980934\";\"Saint-Cyr\";\"other\"\n\"2980935\";\"Saint-Cyr-sur-Loire\";\"main\"\n\"2980935\";\"Belle-Cote\";\"other\"\n\"2980935\";\"Belle-Côte\";\"other\"\n\"2980935\";\"Saint-Cyr\";\"other\"\n\"2980936\";\"Saint-Cyr-sur-le-Rhône\";\"main\"\n\"2980936\";\"Saint-Cyr-sur-le-Rhone\";\"ascii\"\n\"2980936\";\"Ovize-sur-le-Rhone\";\"other\"\n\"2980936\";\"Ovize-sur-le-Rhône\";\"other\"\n\"2980936\";\"Saint Cyr\";\"other\"\n\"2980937\";\"Saint-Cyr-sous-Dourdan\";\"main\"\n\"2980937\";\"Franc-Cyr\";\"other\"\n\"2980937\";\"Saint-Cyr\";\"other\"\n\"2980942\";\"Saint-Cyr-l'École\";\"main\"\n\"2980942\";\"Saint-Cyr-l'Ecole\";\"ascii\"\n\"2980942\";\"Libreval\";\"other\"\n\"2980942\";\"Saint-Cyr\";\"other\"\n\"2980942\";\"Val-Libre\";\"other\"\n\"2980950\";\"Saint-Cyr-en-Val\";\"main\"\n\"2980953\";\"Saint-Cyr-en-Bourg\";\"main\"\n\"2980953\";\"Saint-Cyr\";\"other\"\n\"2980974\";\"Saint-Cyr\";\"main\"\n\"2980974\";\"Ciran\";\"other\"\n\"2980976\";\"Saint-Cyprien-Plage\";\"main\"\n\"2980980\";\"Saint-Cyprien\";\"main\"\n\"2980982\";\"Saint-Cyprien\";\"main\"\n\"2980982\";\"Cyprien-sur-Dordogne\";\"other\"\n\"2980993\";\"Saint-Crespin-sur-Moine\";\"main\"\n\"2980993\";\"Saint-Crespin\";\"other\"\n\"2980996\";\"Saint-Crépin-Ibouvillers\";\"main\"\n\"2980996\";\"Saint-Crepin-Ibouvillers\";\"ascii\"\n\"2980996\";\"Saint-Crepin\";\"other\"\n\"2980996\";\"Saint-Crépin\";\"other\"\n\"2981008\";\"Saint-Coulomb\";\"main\"\n\"2981008\";\"Coulomb-Rocher\";\"other\"\n\"2981008\";\"Sant-Kouloum\";\"other\"\n\"2981013\";\"Saint-Cosme-en-Vairais\";\"main\"\n\"2981013\";\"Montrecipe\";\"other\"\n\"2981013\";\"Saint-Cosme\";\"other\"\n\"2981013\";\"Saint-Cosme-de-Vair\";\"other\"\n\"2981013\";\"Saint-Gosme-de-Vair\";\"other\"\n\"2981018\";\"Saint-Contest\";\"main\"\n\"2981041\";\"Saint-Cloud\";\"main\"\n\"2981041\";\"La Montagne-Cherie\";\"other\"\n\"2981041\";\"La Montagne-Chérie\";\"other\"\n\"2981041\";\"Pont-la-Montagne\";\"other\"\n\"2981041\";\"Sen-Klu\";\"other\"\n\"2981041\";\"Сен-Клу\";\"other\"\n\"2981051\";\"Saint-Clément-des-Levées\";\"main\"\n\"2981051\";\"Saint-Clement-des-Levees\";\"ascii\"\n\"2981051\";\"Saint-Clement\";\"other\"\n\"2981051\";\"Saint-Clément\";\"other\"\n\"2981054\";\"Saint-Clément-de-la-Place\";\"main\"\n\"2981054\";\"Saint-Clement-de-la-Place\";\"ascii\"\n\"2981054\";\"Saint-Clement\";\"other\"\n\"2981054\";\"Saint-Clément\";\"other\"\n\"2981060\";\"Saint-Clément\";\"main\"\n\"2981060\";\"Saint-Clement\";\"ascii\"\n\"2981065\";\"Saint-Clément\";\"main\"\n\"2981065\";\"Saint-Clement\";\"ascii\"\n\"2981073\";\"Saint-Clément-de-Rivière\";\"main\"\n\"2981073\";\"Saint-Clement-de-Riviere\";\"ascii\"\n\"2981074\";\"Saint-Claude-de-Diray\";\"main\"\n\"2981074\";\"Claude\";\"other\"\n\"2981074\";\"Diray-Moret\";\"other\"\n\"2981074\";\"Diray-la-Montagne\";\"other\"\n\"2981074\";\"Mont-Mentel\";\"other\"\n\"2981074\";\"Morest-la-Montagne\";\"other\"\n\"2981074\";\"Saint-Claude\";\"other\"\n\"2981077\";\"Saint-Claude\";\"main\"\n\"2981078\";\"Saint-Claud\";\"main\"\n\"2981078\";\"Claud-la-Montagne\";\"other\"\n\"2981085\";\"Saint-Clair-du-Rhône\";\"main\"\n\"2981085\";\"Saint-Clair-du-Rhone\";\"ascii\"\n\"2981085\";\"Saint-Clair\";\"other\"\n\"2981087\";\"Saint-Clair-de-la-Tour\";\"main\"\n\"2981087\";\"Mont-Clair\";\"other\"\n\"2981087\";\"Saint-Clair\";\"other\"\n\"2981117\";\"Saint-Ciers-sur-Gironde\";\"main\"\n\"2981117\";\"Saint-Ciers\";\"other\"\n\"2981121\";\"Saint-Ciers-d'Abzac\";\"main\"\n\"2981121\";\"Gar-Dor-Isle\";\"other\"\n\"2981121\";\"Saint-Ciers\";\"other\"\n\"2981127\";\"Saint-Christophe-Vallon\";\"main\"\n\"2981127\";\"Saint-Christophe\";\"other\"\n\"2981129\";\"Saint-Christophe-sur-le-Nais\";\"main\"\n\"2981129\";\"Saint-Christophe\";\"other\"\n\"2981129\";\"Val-Riam\";\"other\"\n\"2981129\";\"Val-Riant\";\"other\"\n\"2981146\";\"Saint-Christophe-du-Ligneron\";\"main\"\n\"2981146\";\"Christophe-pres-la-Boulogne\";\"other\"\n\"2981146\";\"Christophe-près-la-Boulogne\";\"other\"\n\"2981146\";\"Le Ligneron\";\"other\"\n\"2981146\";\"Saint-Christophe\";\"other\"\n\"2981149\";\"Saint-Christophe-du-Bois\";\"main\"\n\"2981149\";\"Saint-Christophe\";\"other\"\n\"2981172\";\"Saint-Christoly-de-Blaye\";\"main\"\n\"2981172\";\"Saint-Christoly\";\"other\"\n\"2981173\";\"Saint-Christol-lès-Alès\";\"main\"\n\"2981173\";\"Saint-Christol-les-Ales\";\"ascii\"\n\"2981173\";\"Auxon\";\"other\"\n\"2981173\";\"Saint-Christol\";\"other\"\n\"2981173\";\"Saint-Christol-lez-Ales\";\"other\"\n\"2981173\";\"Saint-Christol-lèz-Alès\";\"other\"\n\"2981178\";\"Saint-Christol\";\"main\"\n\"2981179\";\"Saint-Christo-en-Jarez\";\"main\"\n\"2981179\";\"Saint-Christo\";\"other\"\n\"2981183\";\"Saint-Chinian\";\"main\"\n\"2981183\";\"Vernodure\";\"other\"\n\"2981190\";\"Saint-Chéron\";\"main\"\n\"2981190\";\"Saint-Cheron\";\"ascii\"\n\"2981195\";\"Saint-Chef\";\"main\"\n\"2981195\";\"Francvallon\";\"other\"\n\"2981204\";\"Saint-Chaptes\";\"main\"\n\"2981204\";\"Beauregard\";\"other\"\n\"2981206\";\"Saint-Chamond\";\"main\"\n\"2981206\";\"Mont-Rousseau\";\"other\"\n\"2981206\";\"Val-Rousseau\";\"other\"\n\"2981206\";\"Vallee-Roussean\";\"other\"\n\"2981206\";\"Vallée-Roussean\";\"other\"\n\"2981209\";\"Saint-Chamas\";\"main\"\n\"2981209\";\"Port-Chamas\";\"other\"\n\"2981209\";\"St Chamas\";\"other\"\n\"2981214\";\"Saint-Chaffrey\";\"main\"\n\"2981214\";\"Chaffre\";\"other\"\n\"2981214\";\"Chaffré\";\"other\"\n\"2981217\";\"Saint-Cézaire-sur-Siagne\";\"main\"\n\"2981217\";\"Saint-Cezaire-sur-Siagne\";\"ascii\"\n\"2981217\";\"Saint-Cesaire-sur-Siagne\";\"other\"\n\"2981217\";\"Saint-Cezaire\";\"other\"\n\"2981217\";\"Saint-Césaire-sur-Siagne\";\"other\"\n\"2981217\";\"Saint-Cézaire\";\"other\"\n\"2981224\";\"Saint-Cernin\";\"main\"\n\"2981224\";\"Saint-Cernin-du-Cantal\";\"other\"\n\"2981227\";\"Saint-Cergues\";\"main\"\n\"2981228\";\"Saint-Céré\";\"main\"\n\"2981228\";\"Saint-Cere\";\"ascii\"\n\"2981228\";\"Franc-Cere\";\"other\"\n\"2981228\";\"Franc-Céré\";\"other\"\n\"2981228\";\"Seu-Cere\";\"other\"\n\"2981228\";\"Seu-Céré\";\"other\"\n\"2981237\";\"Saint-Cast-le-Guildo\";\"main\"\n\"2981237\";\"Havre-Cast\";\"other\"\n\"2981237\";\"Saint-Cast\";\"other\"\n\"2981237\";\"Saint-Cast Bourg\";\"other\"\n\"2981237\";\"Sant-Kast-ar-Gwildou\";\"other\"\n\"2981237\";\"Sant-Kast-ar-Gwildoù\";\"other\"\n\"2981241\";\"Saint-Cassien\";\"main\"\n\"2981241\";\"Saint Cassient\";\"other\"\n\"2981243\";\"Saint-Carreuc\";\"main\"\n\"2981243\";\"Sant-Kareg\";\"other\"\n\"2981247\";\"Saint-Caradec\";\"main\"\n\"2981247\";\"Caradec-sur-Oust\";\"other\"\n\"2981247\";\"Sant-Karadeg\";\"other\"\n\"2981251\";\"Saint-Caprais-de-Bordeaux\";\"main\"\n\"2981251\";\"Saint-Caprais\";\"other\"\n\"2981259\";\"Saint-Cannat\";\"main\"\n\"2981259\";\"Le Saizet\";\"other\"\n\"2981259\";\"Le Sauzet\";\"other\"\n\"2981263\";\"Saint-Calais\";\"main\"\n\"2981263\";\"Calais-sur-Anille\";\"other\"\n\"2981267\";\"Saint-Broladre\";\"main\"\n\"2981267\";\"Sant-Brewalaer\";\"other\"\n\"2981272\";\"Saint-Brisson-sur-Loire\";\"main\"\n\"2981272\";\"Saint-Brisson\";\"other\"\n\"2981274\";\"Saint-Bris-le-Vineux\";\"main\"\n\"2981274\";\"Bris-le-Vineux\";\"other\"\n\"2981274\";\"Saint-Bris\";\"other\"\n\"2981280\";\"Saint-Brieuc\";\"main\"\n\"2981280\";\"Port-Brieuc\";\"other\"\n\"2981280\";\"Saint-Brieu\";\"other\"\n\"2981280\";\"Sant-Brieg\";\"other\"\n\"2981280\";\"Sent-Brie\";\"other\"\n\"2981280\";\"san=buriyu\";\"other\"\n\"2981280\";\"Сент-Брие\";\"other\"\n\"2981280\";\"サン＝ブリユー\";\"other\"\n\"2981281\";\"Saint-Brice-sur-Vienne\";\"main\"\n\"2981281\";\"Saint-Brice\";\"other\"\n\"2981283\";\"Saint-Brice-sous-Forêt\";\"main\"\n\"2981283\";\"Saint-Brice-sous-Foret\";\"ascii\"\n\"2981283\";\"Saint-Brice\";\"other\"\n\"2981284\";\"Saint-Brice-Courcelles\";\"main\"\n\"2981284\";\"Liberte-sur-Vesle\";\"other\"\n\"2981284\";\"Liberté-sur-Vesle\";\"other\"\n\"2981284\";\"Montriqueux\";\"other\"\n\"2981284\";\"Saint-Brice\";\"other\"\n\"2981285\";\"Saint-Brice-en-Coglès\";\"main\"\n\"2981285\";\"Saint-Brice-en-Cogles\";\"ascii\"\n\"2981285\";\"Saint-Brice\";\"other\"\n\"2981285\";\"Sant-Brizh-Gougleiz\";\"other\"\n\"2981291\";\"Saint-Brice\";\"main\"\n\"2981294\";\"Saint-Briac-sur-Mer\";\"main\"\n\"2981294\";\"Port-Briac\";\"other\"\n\"2981294\";\"Saint-Briac\";\"other\"\n\"2981294\";\"Sant-Briag\";\"other\"\n\"2981296\";\"Saint-Brevin-les-Pins\";\"main\"\n\"2981296\";\"Saint-Brevin\";\"other\"\n\"2981296\";\"Saint-Brévin\";\"other\"\n\"2981296\";\"Sant-Brewenn\";\"other\"\n\"2981296\";\"Union\";\"other\"\n\"2981303\";\"Saint-Brès\";\"main\"\n\"2981303\";\"Saint-Bres\";\"ascii\"\n\"2981304\";\"Saint-Brandan\";\"main\"\n\"2981304\";\"Sant-Vedan\";\"other\"\n\"2981305\";\"Saint-Branchs\";\"main\"\n\"2981309\";\"Saint-Bon-Tarentaise\";\"main\"\n\"2981309\";\"Prairial\";\"other\"\n\"2981309\";\"Saint-Bon\";\"other\"\n\"2981315\";\"Saint-Bonnet-près-Riom\";\"main\"\n\"2981315\";\"Saint-Bonnet-pres-Riom\";\"ascii\"\n\"2981315\";\"Saint-Bonnet\";\"other\"\n\"2981320\";\"Saint-Bonnet-les-Oules\";\"main\"\n\"2981320\";\"Saint-Bonnet\";\"other\"\n\"2981325\";\"Saint-Bonnet-le-Château\";\"main\"\n\"2981325\";\"Saint-Bonnet-le-Chateau\";\"ascii\"\n\"2981325\";\"Bonnet-la-Montagne\";\"other\"\n\"2981325\";\"Saint Bonnet\";\"other\"\n\"2981338\";\"Saint-Bonnet-de-Mure\";\"main\"\n\"2981338\";\"Saint Bonnet\";\"other\"\n\"2981355\";\"Saint-Bonnet-en-Champsaur\";\"main\"\n\"2981355\";\"Bonnet-Libre\";\"other\"\n\"2981382\";\"Saint-Berthevin\";\"main\"\n\"2981382\";\"Saint-Berthevin-sur-Vicoin\";\"other\"\n\"2981384\";\"Saint-Béron\";\"main\"\n\"2981384\";\"Saint-Beron\";\"ascii\"\n\"2981384\";\"Gorges-de-Chailles\";\"other\"\n\"2981390\";\"Saint-Berain-sous-Sanvignes\";\"main\"\n\"2981390\";\"Saint-Berain\";\"other\"\n\"2981390\";\"Saint-Bérain\";\"other\"\n\"2981393\";\"Saint-Benoît-sur-Loire\";\"main\"\n\"2981393\";\"Saint-Benoit-sur-Loire\";\"ascii\"\n\"2981402\";\"Saint-Benoît-de-Carmaux\";\"main\"\n\"2981402\";\"Saint-Benoit-de-Carmaux\";\"ascii\"\n\"2981402\";\"La Montagne\";\"other\"\n\"2981402\";\"Saint-Benoit\";\"other\"\n\"2981408\";\"Saint-Benoît\";\"main\"\n\"2981408\";\"Saint-Benoit\";\"ascii\"\n\"2981408\";\"Quincay-les-Plaisirs\";\"other\"\n\"2981408\";\"Quinçay-les-Plaisirs\";\"other\"\n\"2981433\";\"Saint-Bauzille-de-Putois\";\"main\"\n\"2981433\";\"Bel-Herault\";\"other\"\n\"2981433\";\"Bel-Hérault\";\"other\"\n\"2981433\";\"Saint-Bauzille\";\"other\"\n\"2981444\";\"Saint-Baudelle\";\"main\"\n\"2981444\";\"Saint-Beaudelle\";\"other\"\n\"2981452\";\"Saint-Barthélemy-de-Vals\";\"main\"\n\"2981452\";\"Saint-Barthelemy-de-Vals\";\"ascii\"\n\"2981452\";\"Saint-Barthelemy\";\"other\"\n\"2981452\";\"Saint-Barthélemy\";\"other\"\n\"2981473\";\"Saint-Barnabé\";\"main\"\n\"2981473\";\"Saint-Barnabe\";\"ascii\"\n\"2981473\";\"Sant-Barnev\";\"other\"\n\"2981481\";\"Saint-Baldoph\";\"main\"\n\"2981481\";\"L'Albanne\";\"other\"\n\"2981488\";\"Saint-Ay\";\"main\"\n\"2981488\";\"Ay-sur-Loire\";\"other\"\n\"2981492\";\"Saint-Avold\";\"main\"\n\"2981492\";\"Rosselgene\";\"other\"\n\"2981492\";\"Rosselgène\";\"other\"\n\"2981492\";\"Trimonts\";\"other\"\n\"2981512\";\"Saint-Avertin\";\"main\"\n\"2981512\";\"Vancay\";\"other\"\n\"2981512\";\"Vansay\";\"other\"\n\"2981512\";\"Vançay\";\"other\"\n\"2981515\";\"Saint-Avé\";\"main\"\n\"2981515\";\"Saint-Ave\";\"ascii\"\n\"2981515\";\"Sant-Teve\";\"other\"\n\"2981519\";\"Saint-Aupre\";\"main\"\n\"2981521\";\"Saint-Aunès\";\"main\"\n\"2981521\";\"Saint-Aunes\";\"ascii\"\n\"2981522\";\"Saint-Aulaye\";\"main\"\n\"2981528\";\"Saint-Augustin\";\"main\"\n\"2981528\";\"Mont-l'Unite\";\"other\"\n\"2981528\";\"Mont-l'Unité\";\"other\"\n\"2981533\";\"Saint-Aubin-sur-Scie\";\"main\"\n\"2981533\";\"Saint Aubin\";\"other\"\n\"2981536\";\"Saint-Aubin-sur-Mer\";\"main\"\n\"2981536\";\"Saint-Aubin\";\"other\"\n\"2981538\";\"Saint-Aubin-sur-Gaillon\";\"main\"\n\"2981538\";\"La Montagne\";\"other\"\n\"2981538\";\"Montagne-sur-Gaillon\";\"other\"\n\"2981538\";\"Puits-Foret\";\"other\"\n\"2981538\";\"Puits-Forêt\";\"other\"\n\"2981538\";\"Saint-Aubin\";\"other\"\n\"2981542\";\"Saint-Aubin-Routot\";\"main\"\n\"2981547\";\"Saint-Aubin-lès-Elbeuf\";\"main\"\n\"2981547\";\"Saint-Aubin-les-Elbeuf\";\"ascii\"\n\"2981547\";\"Saint-Aubin\";\"other\"\n\"2981551\";\"Saint-Aubin-le-Cloud\";\"main\"\n\"2981551\";\"Saint-Aubin\";\"other\"\n\"2981558\";\"Saint-Aubin-en-Bray\";\"main\"\n\"2981565\";\"Saint-Aubin-du-Cormier\";\"main\"\n\"2981565\";\"Montagne-la-Foret\";\"other\"\n\"2981565\";\"Montagne-la-Forêt\";\"other\"\n\"2981565\";\"Saint-Aubin\";\"other\"\n\"2981565\";\"Sant-Albin-an-Hiliber\";\"other\"\n\"2981568\";\"Saint-Aubin-des-Ormeaux\";\"main\"\n\"2981568\";\"Aubin-la-Pierre\";\"other\"\n\"2981568\";\"Saint-Aubin\";\"other\"\n\"2981574\";\"Saint-Aubin-des-Châteaux\";\"main\"\n\"2981574\";\"Saint-Aubin-des-Chateaux\";\"ascii\"\n\"2981574\";\"Saint-Aubin\";\"other\"\n\"2981574\";\"Sant-Albin-ar-C'hestell\";\"other\"\n\"2981577\";\"Saint-Aubin-des-Bois\";\"main\"\n\"2981577\";\"Saint-Aubin\";\"other\"\n\"2981579\";\"Saint-Aubin-de-Médoc\";\"main\"\n\"2981579\";\"Saint-Aubin-de-Medoc\";\"ascii\"\n\"2981579\";\"Saint-Aubin\";\"other\"\n\"2981609\";\"Saint-Aubin\";\"main\"\n\"2981615\";\"Saint-Aubert\";\"main\"\n\"2981615\";\"Libreval\";\"other\"\n\"2981623\";\"Saint-Astier\";\"main\"\n\"2981623\";\"Astier-sur-l'Isle\";\"other\"\n\"2981629\";\"Saint-Arnoult-en-Yvelines\";\"main\"\n\"2981629\";\"La Mejeanne\";\"other\"\n\"2981629\";\"Montagne-sur-Remarde\";\"other\"\n\"2981629\";\"Saint-Arnoult\";\"other\"\n\"2981634\";\"Saint-Arnoult\";\"main\"\n\"2981639\";\"Saint-Armel\";\"main\"\n\"2981639\";\"Sant-Armael\";\"other\"\n\"2981655\";\"Saint-Apollinaire\";\"main\"\n\"2981669\";\"Saint-Antoine-du-Rocher\";\"main\"\n\"2981669\";\"Le Rocher\";\"other\"\n\"2981669\";\"Saint-Antoine\";\"other\"\n\"2981673\";\"Saint-Antoine-de-Breuilh\";\"main\"\n\"2981673\";\"Saint-Antoine\";\"other\"\n\"2981685\";\"Saint-Antoine-l'Abbaye\";\"main\"\n\"2981711\";\"Saint-André-Treize-Voies\";\"main\"\n\"2981711\";\"Saint-Andre-Treize-Voies\";\"ascii\"\n\"2981711\";\"Saint-Andre\";\"other\"\n\"2981711\";\"Saint-André\";\"other\"\n\"2981711\";\"Treize-Voies\";\"other\"\n\"2981712\";\"Saint-André-sur-Vieux-Jonc\";\"main\"\n\"2981712\";\"Saint-Andre-sur-Vieux-Jonc\";\"ascii\"\n\"2981712\";\"Saint-Andre\";\"other\"\n\"2981712\";\"Saint-André\";\"other\"\n\"2981714\";\"Saint-André-sur-Orne\";\"main\"\n\"2981714\";\"Saint-Andre-sur-Orne\";\"ascii\"\n\"2981714\";\"Saint-Andre\";\"other\"\n\"2981714\";\"Saint-André\";\"other\"\n\"2981716\";\"Saint-André-les-Vergers\";\"main\"\n\"2981716\";\"Saint-Andre-les-Vergers\";\"ascii\"\n\"2981716\";\"Saint-Andre\";\"other\"\n\"2981716\";\"Saint-André\";\"other\"\n\"2981718\";\"Saint-André-le-Puy\";\"main\"\n\"2981718\";\"Saint-Andre-le-Puy\";\"ascii\"\n\"2981719\";\"Saint-André-le-Gaz\";\"main\"\n\"2981719\";\"Saint-Andre-le-Gaz\";\"ascii\"\n\"2981719\";\"Saint-Andre\";\"other\"\n\"2981719\";\"Saint-André\";\"other\"\n\"2981743\";\"Saint-André-de-Seignanx\";\"main\"\n\"2981743\";\"Saint-Andre-de-Seignanx\";\"ascii\"\n\"2981743\";\"Saint Andre\";\"other\"\n\"2981743\";\"Saint André\";\"other\"\n\"2981745\";\"Saint-André-des-Eaux\";\"main\"\n\"2981745\";\"Saint-Andre-des-Eaux\";\"ascii\"\n\"2981745\";\"Saint-Andre\";\"other\"\n\"2981745\";\"Saint-André\";\"other\"\n\"2981745\";\"Sant-Andrev-an-Dour\";\"other\"\n\"2981746\";\"Saint-André-de-Sangonis\";\"main\"\n\"2981746\";\"Saint-Andre-de-Sangonis\";\"ascii\"\n\"2981746\";\"Beaulieu\";\"other\"\n\"2981746\";\"La Source\";\"other\"\n\"2981746\";\"Saint-Andre\";\"other\"\n\"2981746\";\"Saint-Andre-de-Sangoui\";\"other\"\n\"2981746\";\"Saint-André\";\"other\"\n\"2981746\";\"Saint-André-de-Sangoui\";\"other\"\n\"2981758\";\"Saint-André-de-la-Marche\";\"main\"\n\"2981758\";\"Saint-Andre-de-la-Marche\";\"ascii\"\n\"2981758\";\"Saint-Andre\";\"other\"\n\"2981758\";\"Saint-André\";\"other\"\n\"2981762\";\"Saint-André-de-Corcy\";\"main\"\n\"2981762\";\"Saint-Andre-de-Corcy\";\"ascii\"\n\"2981762\";\"Saint-Andre\";\"other\"\n\"2981762\";\"Saint-André\";\"other\"\n\"2981779\";\"Saint-André-lez-Lille\";\"main\"\n\"2981779\";\"Saint-Andre-lez-Lille\";\"ascii\"\n\"2981783\";\"Saint-André-de-la-Roche\";\"main\"\n\"2981783\";\"Saint-Andre-de-la-Roche\";\"ascii\"\n\"2981788\";\"Sant Andreu de Sureda\";\"main\"\n\"2981788\";\"Saint-Andre\";\"other\"\n\"2981788\";\"Saint-André\";\"other\"\n\"2981788\";\"Sant Andreu\";\"other\"\n\"2981791\";\"Saint-Andiol\";\"main\"\n\"2981793\";\"Saint-Andéol-le-Château\";\"main\"\n\"2981793\";\"Saint-Andeol-le-Chateau\";\"ascii\"\n\"2981793\";\"Andeol-Libre\";\"other\"\n\"2981793\";\"Andéol-Libre\";\"other\"\n\"2981793\";\"Saint Andeol\";\"other\"\n\"2981793\";\"Saint Andéol\";\"other\"\n\"2981805\";\"Saint-Amour\";\"main\"\n\"2981805\";\"Franc-Amour\";\"other\"\n\"2981808\";\"Saint-Amé\";\"main\"\n\"2981808\";\"Saint-Ame\";\"ascii\"\n\"2981808\";\"Nol-sur-Moselle\";\"other\"\n\"2981810\";\"Saint-Ambroix\";\"main\"\n\"2981810\";\"Pont-Ceze\";\"other\"\n\"2981810\";\"Pont-Cèze\";\"other\"\n\"2981815\";\"Saint-Amarin\";\"main\"\n\"2981816\";\"Saint-Amant-Tallende\";\"main\"\n\"2981816\";\"Saint-Amand-Tallende\";\"other\"\n\"2981816\";\"Saint-Amande-Tallende\";\"other\"\n\"2981816\";\"Saint-Amant\";\"other\"\n\"2981822\";\"Saint-Amant-de-Boixe\";\"main\"\n\"2981822\";\"Saint-Amant\";\"other\"\n\"2981824\";\"Saint-Amans-Valtoret\";\"main\"\n\"2981824\";\"Saint-Amans\";\"other\"\n\"2981825\";\"Saint-Amans-Soult\";\"main\"\n\"2981833\";\"Saint-Amand-sur-Sèvre\";\"main\"\n\"2981833\";\"Saint-Amand-sur-Sevre\";\"ascii\"\n\"2981833\";\"Saint-Amand\";\"other\"\n\"2981837\";\"Saint-Amand-Montrond\";\"main\"\n\"2981837\";\"Libreval\";\"other\"\n\"2981837\";\"Saint Amand\";\"other\"\n\"2981837\";\"Saint Amano\";\"other\"\n\"2981839\";\"Saint-Amand-les-Eaux\";\"main\"\n\"2981839\";\"Elnon-Libre\";\"other\"\n\"2981839\";\"Saint-Amand\";\"other\"\n\"2981843\";\"Saint-Amand-en-Puisaye\";\"main\"\n\"2981843\";\"Saint-Amand-en Puysaye\";\"other\"\n\"2981845\";\"Saint-Amand-Longpré\";\"main\"\n\"2981845\";\"Saint-Amand-Longpre\";\"ascii\"\n\"2981845\";\"Saint-Amand\";\"other\"\n\"2981845\";\"Saint-Amand-de-Vendome\";\"other\"\n\"2981845\";\"Saint-Amand-de-Vendôme\";\"other\"\n\"2981851\";\"Saint-Amand\";\"main\"\n\"2981863\";\"Saint-Alexandre\";\"main\"\n\"2981863\";\"Roquebrune\";\"other\"\n\"2981865\";\"Saint-Alban-sur-Limagnole\";\"main\"\n\"2981865\";\"Saint-Alban\";\"other\"\n\"2981873\";\"Saint-Alban-de-Roche\";\"main\"\n\"2981873\";\"Mont-Alban\";\"other\"\n\"2981873\";\"Saint-Alban\";\"other\"\n\"2981876\";\"Saint-Alban\";\"main\"\n\"2981876\";\"Sant-Alvan\";\"other\"\n\"2981878\";\"Saint-Alban-Leysse\";\"main\"\n\"2981879\";\"Saint-Alban\";\"main\"\n\"2981882\";\"Saint-Aigulin\";\"main\"\n\"2981882\";\"Ami-des-Lois\";\"other\"\n\"2981882\";\"Le Grand-Aigulin\";\"other\"\n\"2981882\";\"Le Petit-Aigulin\";\"other\"\n\"2981898\";\"Saint-Aignan\";\"main\"\n\"2981898\";\"Carismont\";\"other\"\n\"2981898\";\"Saint-Aignan-sur-Cher\";\"other\"\n\"2981901\";\"Saint-Agrève\";\"main\"\n\"2981901\";\"Saint-Agreve\";\"ascii\"\n\"2981901\";\"Mont-Chiniac\";\"other\"\n\"2981907\";\"Saint-Agnant-de-Versillat\";\"main\"\n\"2981907\";\"Saint-Agnant\";\"other\"\n\"2981907\";\"Versillat-le-Marat\";\"other\"\n\"2981908\";\"Saint-Agnant\";\"main\"\n\"2981908\";\"Mont-Agnan\";\"other\"\n\"2981923\";\"Saint-Agathon\";\"main\"\n\"2981923\";\"Bonvalon\";\"other\"\n\"2981923\";\"Sant-Eganton\";\"other\"\n\"2981925\";\"Saint-Affrique\";\"main\"\n\"2981925\";\"La Montagne-sur-Sorgue\";\"other\"\n\"2981941\";\"Sains-en-Gohelle\";\"main\"\n\"2981941\";\"Sains\";\"other\"\n\"2981942\";\"Sains-en-Amiénois\";\"main\"\n\"2981942\";\"Sains-en-Amienois\";\"ascii\"\n\"2981942\";\"Sains\";\"other\"\n\"2981943\";\"Sains-du-Nord\";\"main\"\n\"2981943\";\"Sains\";\"other\"\n\"2981949\";\"Sainghin-en-Weppes\";\"main\"\n\"2981949\";\"Sainghin\";\"other\"\n\"2981950\";\"Sainghin-en-Mélantois\";\"main\"\n\"2981950\";\"Sainghin-en-Melantois\";\"ascii\"\n\"2981950\";\"Sainghin\";\"other\"\n\"2981953\";\"Sain-Bel\";\"main\"\n\"2981953\";\"Bel-les-Mines\";\"other\"\n\"2981954\";\"Sail-sous-Couzan\";\"main\"\n\"2981954\";\"Sail\";\"other\"\n\"2981956\";\"Sailly-sur-la-Lys\";\"main\"\n\"2981956\";\"Sailly\";\"other\"\n\"2981959\";\"Sailly-lez-Lannoy\";\"main\"\n\"2981959\";\"Sailly\";\"other\"\n\"2981962\";\"Sailly-Labourse\";\"main\"\n\"2981962\";\"Sailly\";\"other\"\n\"2981963\";\"Sailly-Flibeaucourt\";\"main\"\n\"2981963\";\"Sailly\";\"other\"\n\"2981963\";\"Sally\";\"other\"\n\"2981990\";\"Saignon\";\"main\"\n\"2981996\";\"Sahurs\";\"main\"\n\"2982000\";\"Sagy\";\"main\"\n\"2982001\";\"Sagy\";\"main\"\n\"2982023\";\"Saffré\";\"main\"\n\"2982023\";\"Saffre\";\"ascii\"\n\"2982023\";\"Saverieg\";\"other\"\n\"2982029\";\"Sadirac\";\"main\"\n\"2982033\";\"Sacy-le-Grand\";\"main\"\n\"2982033\";\"Sacy\";\"other\"\n\"2982043\";\"Saclay\";\"main\"\n\"2982044\";\"Saclas\";\"main\"\n\"2982052\";\"Saché\";\"main\"\n\"2982052\";\"Sache\";\"ascii\"\n\"2982063\";\"Sabres\";\"main\"\n\"2982064\";\"Sabran\";\"main\"\n\"2982067\";\"Sablons\";\"main\"\n\"2982068\";\"Sablons\";\"main\"\n\"2982070\";\"Sablonceaux\";\"main\"\n\"2982075\";\"Sablet\";\"main\"\n\"2982075\";\"Sablet-pres-l'Ouveze\";\"other\"\n\"2982075\";\"Sablet-près-l'Ouvèze\";\"other\"\n\"2982076\";\"Sablé-sur-Sarthe\";\"main\"\n\"2982076\";\"Sable-sur-Sarthe\";\"ascii\"\n\"2982076\";\"Sable\";\"other\"\n\"2982076\";\"Sable sobre Sarthe\";\"other\"\n\"2982076\";\"Sablé\";\"other\"\n\"2982094\";\"Saâcy-sur-Marne\";\"main\"\n\"2982094\";\"Saacy-sur-Marne\";\"ascii\"\n\"2982094\";\"Saacy\";\"other\"\n\"2982102\";\"Ruy\";\"main\"\n\"2982119\";\"Russange\";\"main\"\n\"2982122\";\"Russ\";\"main\"\n\"2982126\";\"Rurange-lès-Thionville\";\"main\"\n\"2982126\";\"Rurange-les-Thionville\";\"ascii\"\n\"2982126\";\"Rorchingen\";\"other\"\n\"2982126\";\"Rupange-lez Thionville\";\"other\"\n\"2982126\";\"Rurange\";\"other\"\n\"2982130\";\"Rupt-sur-Moselle\";\"main\"\n\"2982130\";\"Rupt\";\"other\"\n\"2982143\";\"Ruoms\";\"main\"\n\"2982146\";\"Rungis\";\"main\"\n\"2982146\";\"Marche de Rungis\";\"other\"\n\"2982146\";\"ranjisu\";\"other\"\n\"2982146\";\"ランジス\";\"other\"\n\"2982154\";\"Ruminghem\";\"main\"\n\"2982156\";\"Rumilly-en-Cambrésis\";\"main\"\n\"2982156\";\"Rumilly-en-Cambresis\";\"ascii\"\n\"2982156\";\"Rumilly\";\"other\"\n\"2982159\";\"Rumilly\";\"main\"\n\"2982159\";\"Rumilly-Albanais\";\"other\"\n\"2982165\";\"Rumersheim-le-Haut\";\"main\"\n\"2982165\";\"Rumersheim\";\"other\"\n\"2982168\";\"Rumegies\";\"main\"\n\"2982175\";\"Rully\";\"main\"\n\"2982179\";\"Ruitz\";\"main\"\n\"2982188\";\"Ruillé-sur-Loir\";\"main\"\n\"2982188\";\"Ruille-sur-Loir\";\"ascii\"\n\"2982188\";\"Ruille\";\"other\"\n\"2982188\";\"Ruille-sur-le-Loir\";\"other\"\n\"2982188\";\"Ruillé\";\"other\"\n\"2982188\";\"Ruillé-sur-le-Loir\";\"other\"\n\"2982200\";\"Rugles\";\"main\"\n\"2982207\";\"Ruffiac\";\"main\"\n\"2982207\";\"Rufieg\";\"other\"\n\"2982210\";\"Ruffey-lès-Echirey\";\"main\"\n\"2982210\";\"Ruffey-les-Echirey\";\"ascii\"\n\"2982210\";\"Ruffey\";\"other\"\n\"2982217\";\"Ruffec\";\"main\"\n\"2982231\";\"Ruelle-sur-Touvre\";\"main\"\n\"2982231\";\"Ruelle\";\"other\"\n\"2982234\";\"Ruelisheim\";\"main\"\n\"2982235\";\"Rueil-Malmaison\";\"main\"\n\"2982235\";\"Rueil\";\"other\"\n\"2982261\";\"Rue\";\"main\"\n\"2982281\";\"Rubelles\";\"main\"\n\"2982287\";\"Ruaudin\";\"main\"\n\"2982293\";\"Roz-sur-Couesnon\";\"main\"\n\"2982293\";\"Roz\";\"other\"\n\"2982293\";\"Roz-an-Arvor\";\"other\"\n\"2982294\";\"Rozoy-sur-Serre\";\"main\"\n\"2982294\";\"Rozoy\";\"other\"\n\"2982298\";\"Roz-Landrieux\";\"main\"\n\"2982298\";\"Roz-Lanrieg\";\"other\"\n\"2982305\";\"Rozier-en-Donzy\";\"main\"\n\"2982305\";\"Rozier\";\"other\"\n\"2982313\";\"Rozérieulles\";\"main\"\n\"2982313\";\"Rozerieulles\";\"ascii\"\n\"2982317\";\"Rozay-en-Brie\";\"main\"\n\"2982317\";\"Rozoy\";\"other\"\n\"2982317\";\"Rozoy-l'Unite\";\"other\"\n\"2982317\";\"Rozoy-l'Unité\";\"other\"\n\"2982330\";\"Roye\";\"main\"\n\"2982331\";\"Roye\";\"main\"\n\"2982332\";\"Roybon\";\"main\"\n\"2982338\";\"Royat\";\"main\"\n\"2982343\";\"Royan\";\"main\"\n\"2982357\";\"Rouziers-de-Touraine\";\"main\"\n\"2982357\";\"Rouziers\";\"other\"\n\"2982369\";\"Rouxmesnil-Bouteilles\";\"main\"\n\"2982369\";\"Rouxmesnil\";\"other\"\n\"2982383\";\"Rouvroy\";\"main\"\n\"2982443\";\"Rousson\";\"main\"\n\"2982454\";\"Roussillon\";\"main\"\n\"2982456\";\"Roussillon\";\"main\"\n\"2982472\";\"Rousset\";\"main\"\n\"2982492\";\"Roussay\";\"main\"\n\"2982498\";\"Rousies\";\"main\"\n\"2982530\";\"Roumare\";\"main\"\n\"2982536\";\"Roullet-Saint-Estèphe\";\"main\"\n\"2982536\";\"Roullet-Saint-Estephe\";\"ascii\"\n\"2982541\";\"Roulans\";\"main\"\n\"2982541\";\"Roulans-le-Grand\";\"other\"\n\"2982543\";\"Roujan\";\"main\"\n\"2982556\";\"Rouillon\";\"main\"\n\"2982558\";\"Rouillé\";\"main\"\n\"2982558\";\"Rouille\";\"ascii\"\n\"2982563\";\"Rouillac\";\"main\"\n\"2982564\";\"Rouhling\";\"main\"\n\"2982564\";\"Ruhling\";\"other\"\n\"2982564\";\"rouhling\";\"other\"\n\"2982575\";\"Rougiers\";\"main\"\n\"2982587\";\"Rougemont-le-Château\";\"main\"\n\"2982587\";\"Rougemont-le-Chateau\";\"ascii\"\n\"2982587\";\"Rougemont\";\"other\"\n\"2982593\";\"Rougemont\";\"main\"\n\"2982615\";\"Rougé\";\"main\"\n\"2982615\";\"Rouge\";\"ascii\"\n\"2982615\";\"Ruzieg\";\"other\"\n\"2982625\";\"Rouffignac-Saint-Cernin-de-Reilhac\";\"main\"\n\"2982628\";\"Rouffiac-Tolosan\";\"main\"\n\"2982628\";\"Rouffiac\";\"other\"\n\"2982628\";\"Rouffire\";\"other\"\n\"2982636\";\"Rouffach\";\"main\"\n\"2982652\";\"Rouen\";\"main\"\n\"2982652\";\"Erruan\";\"other\"\n\"2982652\";\"Rothomagus\";\"other\"\n\"2982652\";\"Ruan\";\"other\"\n\"2982652\";\"Ruan - Rouen\";\"other\"\n\"2982652\";\"Ruao\";\"other\"\n\"2982652\";\"Ruduborg\";\"other\"\n\"2982652\";\"Ruán\";\"other\"\n\"2982652\";\"Ruán - Rouen\";\"other\"\n\"2982652\";\"Ruão\";\"other\"\n\"2982652\";\"Rúðuborg\";\"other\"\n\"2982652\";\"lu ang\";\"other\"\n\"2982652\";\"luang\";\"other\"\n\"2982652\";\"ru'am\";\"other\"\n\"2982652\";\"ruan\";\"other\"\n\"2982652\";\"rwan\";\"other\"\n\"2982652\";\"Руан\";\"other\"\n\"2982652\";\"روان\";\"other\"\n\"2982652\";\"रुआं\";\"other\"\n\"2982652\";\"ルーアン\";\"other\"\n\"2982652\";\"鲁昂\";\"other\"\n\"2982652\";\"루앙\";\"other\"\n\"2982681\";\"Roubaix\";\"main\"\n\"2982681\";\"Robaais\";\"other\"\n\"2982681\";\"lu bei\";\"other\"\n\"2982681\";\"鲁贝\";\"other\"\n\"2982682\";\"Rouans\";\"main\"\n\"2982682\";\"Barra-les-Marais\";\"other\"\n\"2982682\";\"Rodent\";\"other\"\n\"2982692\";\"Rots\";\"main\"\n\"2982705\";\"Rothau\";\"main\"\n\"2982709\";\"Rosult\";\"main\"\n\"2982711\";\"Rostrenen\";\"main\"\n\"2982711\";\"Rostrenenn\";\"other\"\n\"2982733\";\"Rosselange\";\"main\"\n\"2982745\";\"Rosporden\";\"main\"\n\"2982745\";\"Rasperden\";\"other\"\n\"2982747\";\"Rospez\";\"main\"\n\"2982747\";\"Rospezh\";\"other\"\n\"2982756\";\"Rosny-sur-Seine\";\"main\"\n\"2982756\";\"Rosny\";\"other\"\n\"2982757\";\"Rosny-sous-Bois\";\"main\"\n\"2982757\";\"Roni-su-Bua\";\"other\"\n\"2982757\";\"Rosny\";\"other\"\n\"2982757\";\"Рони-су-Буа\";\"other\"\n\"2982774\";\"Rosières-près-Troyes\";\"main\"\n\"2982774\";\"Rosieres-pres-Troyes\";\"ascii\"\n\"2982774\";\"Rosieres\";\"other\"\n\"2982774\";\"Rosières\";\"other\"\n\"2982775\";\"Rosières-en-Santerre\";\"main\"\n\"2982775\";\"Rosieres-en-Santerre\";\"ascii\"\n\"2982775\";\"Rosieres\";\"other\"\n\"2982775\";\"Rosières\";\"other\"\n\"2982778\";\"Rosières-aux-Salines\";\"main\"\n\"2982778\";\"Rosieres-aux-Salines\";\"ascii\"\n\"2982778\";\"Rosieres\";\"other\"\n\"2982778\";\"Rosières\";\"other\"\n\"2982781\";\"Rosières\";\"main\"\n\"2982781\";\"Rosieres\";\"ascii\"\n\"2982782\";\"Rosières\";\"main\"\n\"2982782\";\"Rosieres\";\"ascii\"\n\"2982782\";\"Baubiac\";\"other\"\n\"2982790\";\"Rosheim\";\"main\"\n\"2982798\";\"Rosenau\";\"main\"\n\"2982809\";\"Roscoff\";\"main\"\n\"2982809\";\"Rosko\";\"other\"\n\"2982811\";\"Roscanvel\";\"main\"\n\"2982811\";\"Roskanvel\";\"other\"\n\"2982811\";\"Roskañvel\";\"other\"\n\"2982835\";\"Roquevaire\";\"main\"\n\"2982836\";\"Roquettes\";\"main\"\n\"2982839\";\"Roquetoire\";\"main\"\n\"2982851\";\"Roquemaure\";\"main\"\n\"2982859\";\"Roquefort-la-Bédoule\";\"main\"\n\"2982859\";\"Roquefort-la-Bedoule\";\"ascii\"\n\"2982859\";\"Roquefort\";\"other\"\n\"2982862\";\"Roquefort\";\"main\"\n\"2982863\";\"Roquefort\";\"main\"\n\"2982873\";\"Roquecourbe\";\"main\"\n\"2982875\";\"Roquebrune-sur-Argens\";\"main\"\n\"2982875\";\"Roquebrune\";\"other\"\n\"2982876\";\"Roquebrune-Cap-Martin\";\"main\"\n\"2982876\";\"Roquebrune\";\"other\"\n\"2982881\";\"Roquebillière\";\"main\"\n\"2982881\";\"Roquebilliere\";\"ascii\"\n\"2982890\";\"Roost-Warendin\";\"main\"\n\"2982938\";\"Roncq\";\"main\"\n\"2982938\";\"Ronq\";\"other\"\n\"2982944\";\"Ronchin\";\"main\"\n\"2982946\";\"Roncherolles-sur-le-Vivier\";\"main\"\n\"2982946\";\"Roncherolles\";\"other\"\n\"2982951\";\"Ronchamp\";\"main\"\n\"2982967\";\"Romorantin-Lanthenay\";\"main\"\n\"2982967\";\"Romarantin\";\"other\"\n\"2982967\";\"Romorantin\";\"other\"\n\"2982972\";\"Romilly-sur-Seine\";\"main\"\n\"2982972\";\"Romilly\";\"other\"\n\"2982972\";\"Romilly-Voltaire\";\"other\"\n\"2982973\";\"Romilly-sur-Andelle\";\"main\"\n\"2982973\";\"Romilly\";\"other\"\n\"2982977\";\"Romillé\";\"main\"\n\"2982977\";\"Romille\";\"ascii\"\n\"2982977\";\"Rovelieg\";\"other\"\n\"2982994\";\"Romenay\";\"main\"\n\"2983005\";\"Rombas\";\"main\"\n\"2983010\";\"Romanswiller\";\"main\"\n\"2983010\";\"Romansviller\";\"other\"\n\"2983011\";\"Romans-sur-Isère\";\"main\"\n\"2983011\";\"Romans-sur-Isere\";\"ascii\"\n\"2983011\";\"Roman-sjur-Izer\";\"other\"\n\"2983011\";\"Romans\";\"other\"\n\"2983011\";\"Romas sur Isere\";\"other\"\n\"2983011\";\"Romas sur Isère\";\"other\"\n\"2983011\";\"Роман-сюр-Изер\";\"other\"\n\"2983019\";\"Romanèche-Thorins\";\"main\"\n\"2983019\";\"Romaneche-Thorins\";\"ascii\"\n\"2983026\";\"Romainville\";\"main\"\n\"2983026\";\"Romenvil'\";\"other\"\n\"2983026\";\"Роменвиль\";\"other\"\n\"2983041\";\"Romagny\";\"main\"\n\"2983043\";\"Romagnieu\";\"main\"\n\"2983046\";\"Romagné\";\"main\"\n\"2983046\";\"Romagne\";\"ascii\"\n\"2983046\";\"Rovenieg\";\"other\"\n\"2983050\";\"Romagnat\";\"main\"\n\"2983055\";\"Rolleville\";\"main\"\n\"2983067\";\"Rolampont\";\"main\"\n\"2983073\";\"Roissy-en-France\";\"main\"\n\"2983073\";\"Roissy\";\"other\"\n\"2983074\";\"Roissy-en-Brie\";\"main\"\n\"2983074\";\"Roissy\";\"other\"\n\"2983074\";\"Roissy-les-Friches\";\"other\"\n\"2983074\";\"Ruassi-an-Bri\";\"other\"\n\"2983074\";\"Руасси-ан-Бри\";\"other\"\n\"2983077\";\"Roisel\";\"main\"\n\"2983083\";\"Roiffieux\";\"main\"\n\"2983083\";\"Librefieux\";\"other\"\n\"2983095\";\"Rohrbach-lès-Bitche\";\"main\"\n\"2983095\";\"Rohrbach-les-Bitche\";\"ascii\"\n\"2983095\";\"Rohrbach\";\"other\"\n\"2983106\";\"Rohan\";\"main\"\n\"2983106\";\"Roc'han\";\"other\"\n\"2983117\";\"Rognonas\";\"main\"\n\"2983127\";\"Rognes\";\"main\"\n\"2983130\";\"Rognac\";\"main\"\n\"2983135\";\"Rogerville\";\"main\"\n\"2983141\";\"Roézé-sur-Sarthe\";\"main\"\n\"2983141\";\"Roeze-sur-Sarthe\";\"ascii\"\n\"2983141\";\"Roeze\";\"other\"\n\"2983141\";\"Roézé\";\"other\"\n\"2983143\";\"Rœux\";\"main\"\n\"2983143\";\"Roeux\";\"ascii\"\n\"2983144\";\"Rœulx\";\"main\"\n\"2983144\";\"Roeulx\";\"ascii\"\n\"2983152\";\"Rodilhan\";\"main\"\n\"2983154\";\"Rodez\";\"main\"\n\"2983154\";\"Rodes\";\"other\"\n\"2983154\";\"Rodés\";\"other\"\n\"2983154\";\"rodezu\";\"other\"\n\"2983154\";\"Родез\";\"other\"\n\"2983154\";\"ロデズ\";\"other\"\n\"2983154\";\"ロデーズ\";\"other\"\n\"2983165\";\"Rocroi\";\"main\"\n\"2983165\";\"Roc-Libre\";\"other\"\n\"2983165\";\"Rokrua\";\"other\"\n\"2983165\";\"Рокруа\";\"other\"\n\"2983174\";\"Rocquencourt\";\"main\"\n\"2983209\";\"Rochetaillée-sur-Saône\";\"main\"\n\"2983209\";\"Rochetaillee-sur-Saone\";\"ascii\"\n\"2983219\";\"Roches-Prémarie-Andillé\";\"main\"\n\"2983219\";\"Roches-Premarie-Andille\";\"ascii\"\n\"2983219\";\"Les Roches-Premarie\";\"other\"\n\"2983219\";\"Les Roches-Prémarie\";\"other\"\n\"2983219\";\"Roche-Premarie-Andille\";\"other\"\n\"2983219\";\"Roche-Prémarie-Andillé\";\"other\"\n\"2983219\";\"Roches-Premarie\";\"other\"\n\"2983219\";\"Roches-Prémarie\";\"other\"\n\"2983221\";\"Rocheservière\";\"main\"\n\"2983221\";\"Rocheserviere\";\"ascii\"\n\"2983246\";\"Rochemaure\";\"main\"\n\"2983251\";\"Roche-la-Molière\";\"main\"\n\"2983251\";\"Roche-la-Moliere\";\"ascii\"\n\"2983257\";\"Rochegude\";\"main\"\n\"2983262\";\"Rochefort-sur-Loire\";\"main\"\n\"2983262\";\"Rochefort\";\"other\"\n\"2983268\";\"Rochefort-du-Gard\";\"main\"\n\"2983268\";\"Rochefort\";\"other\"\n\"2983276\";\"Rochefort\";\"main\"\n\"2983276\";\"Rochefort-sur-Mer\";\"other\"\n\"2983276\";\"Roshfor\";\"other\"\n\"2983276\";\"Рошфор\";\"other\"\n\"2983287\";\"Rochecorbon\";\"main\"\n\"2983291\";\"Rochechouart\";\"main\"\n\"2983320\";\"Roche\";\"main\"\n\"2983332\";\"Rocbaron\";\"main\"\n\"2983338\";\"Robion\";\"main\"\n\"2983354\";\"Robecq\";\"main\"\n\"2983362\";\"Roanne\";\"main\"\n\"2983362\";\"Roann\";\"other\"\n\"2983362\";\"Rodumna\";\"other\"\n\"2983362\";\"Rouana\";\"other\"\n\"2983362\";\"Роанн\";\"other\"\n\"2983369\";\"Rixheim\";\"main\"\n\"2983381\";\"Rivière-Saas-et-Gourby\";\"main\"\n\"2983381\";\"Riviere-Saas-et-Gourby\";\"ascii\"\n\"2983381\";\"Riviere-Saas\";\"other\"\n\"2983381\";\"Rivière-Saas\";\"other\"\n\"2983382\";\"Rivières\";\"main\"\n\"2983382\";\"Rivieres\";\"ascii\"\n\"2983387\";\"Rivière\";\"main\"\n\"2983387\";\"Riviere\";\"ascii\"\n\"2983393\";\"Rivesaltes\";\"main\"\n\"2983393\";\"Ribesaltes\";\"other\"\n\"2983395\";\"Rives\";\"main\"\n\"2983395\";\"Rives-sur-Fure\";\"other\"\n\"2983397\";\"Rivery\";\"main\"\n\"2983407\";\"Rivedoux-Plage\";\"main\"\n\"2983407\";\"Rivedoux\";\"other\"\n\"2983408\";\"Rive-de-Gier\";\"main\"\n\"2983440\";\"Ris-Orangis\";\"main\"\n\"2983440\";\"Brutus\";\"other\"\n\"2983440\";\"Ris\";\"other\"\n\"2983443\";\"Riscle\";\"main\"\n\"2983451\";\"Riquewihr\";\"main\"\n\"2983456\";\"Rioz\";\"main\"\n\"2983479\";\"Riotord\";\"main\"\n\"2983482\";\"Riorges\";\"main\"\n\"2983483\";\"Rions\";\"main\"\n\"2983485\";\"Rion-des-Landes\";\"main\"\n\"2983485\";\"Rion\";\"other\"\n\"2983485\";\"Rion-les-Landes\";\"other\"\n\"2983487\";\"Riom-ès-Montagnes\";\"main\"\n\"2983487\";\"Riom-es-Montagnes\";\"ascii\"\n\"2983489\";\"Riom\";\"main\"\n\"2983489\";\"rion\";\"other\"\n\"2983489\";\"リオン\";\"other\"\n\"2983499\";\"Rinxent\";\"main\"\n\"2983514\";\"Rimogne\";\"main\"\n\"2983534\";\"Rilly-la-Montagne\";\"main\"\n\"2983534\";\"Rilly\";\"other\"\n\"2983536\";\"Rillieux-la-Pape\";\"main\"\n\"2983536\";\"Rilliehuks-la-Pap\";\"other\"\n\"2983536\";\"Риллиэукс-ла-Пап\";\"other\"\n\"2983542\";\"Rilhac-Rancon\";\"main\"\n\"2983542\";\"Rilhac\";\"other\"\n\"2983580\";\"Riez\";\"main\"\n\"2983582\";\"Rieux-Minervois\";\"main\"\n\"2983582\";\"Rieux\";\"other\"\n\"2983584\";\"Rieux-en-Cambrésis\";\"main\"\n\"2983584\";\"Rieux-en-Cambresis\";\"ascii\"\n\"2983584\";\"Rieux\";\"other\"\n\"2983588\";\"Rieux\";\"main\"\n\"2983590\";\"Rieux\";\"main\"\n\"2983590\";\"Reoz\";\"other\"\n\"2983591\";\"Rieux-Volvestre\";\"main\"\n\"2983603\";\"Rieupeyroux\";\"main\"\n\"2983606\";\"Rieumes\";\"main\"\n\"2983609\";\"Rieulay\";\"main\"\n\"2983629\";\"Riedisheim\";\"main\"\n\"2983631\";\"Riec-sur-Belon\";\"main\"\n\"2983631\";\"Riec\";\"other\"\n\"2983631\";\"Riec-sur-Bélon\";\"other\"\n\"2983631\";\"Rieg\";\"other\"\n\"2983631\";\"Rieo-sur-Belon\";\"other\"\n\"2983637\";\"Richwiller\";\"main\"\n\"2983648\";\"Richemont\";\"main\"\n\"2983648\";\"Reichersberg\";\"other\"\n\"2983652\";\"Richelieu\";\"main\"\n\"2983656\";\"Richebourg-l'Avoué\";\"main\"\n\"2983656\";\"Richebourg-l'Avoue\";\"ascii\"\n\"2983656\";\"Richebourg\";\"other\"\n\"2983667\";\"Richardménil\";\"main\"\n\"2983667\";\"Richardmenil\";\"ascii\"\n\"2983696\";\"Ribérac\";\"main\"\n\"2983696\";\"Riberac\";\"ascii\"\n\"2983699\";\"Ribemont\";\"main\"\n\"2983705\";\"Ribeauvillé\";\"main\"\n\"2983705\";\"Ribeauville\";\"ascii\"\n\"2983705\";\"Rappoltsweiler\";\"other\"\n\"2983705\";\"ribovu~ire\";\"other\"\n\"2983705\";\"リボヴィレ\";\"other\"\n\"2983712\";\"Ribaute-les-Tavernes\";\"main\"\n\"2983712\";\"Ribaute\";\"other\"\n\"2983730\";\"Riantec\";\"main\"\n\"2983730\";\"Rianteg\";\"other\"\n\"2983731\";\"Rians\";\"main\"\n\"2983732\";\"Rians\";\"main\"\n\"2983735\";\"Riaillé\";\"main\"\n\"2983735\";\"Riaille\";\"ascii\"\n\"2983735\";\"Rialeg\";\"other\"\n\"2983736\";\"Ria-Sirach\";\"main\"\n\"2983736\";\"Ria\";\"other\"\n\"2983736\";\"Rià\";\"other\"\n\"2983761\";\"Rhinau\";\"main\"\n\"2983770\";\"Rezé\";\"main\"\n\"2983770\";\"Reze\";\"ascii\"\n\"2983770\";\"Reudied\";\"other\"\n\"2983770\";\"Reza\";\"other\"\n\"2983770\";\"Реза\";\"other\"\n\"2983779\";\"Reyrieux\";\"main\"\n\"2983786\";\"Reiners\";\"main\"\n\"2983786\";\"Reynes\";\"other\"\n\"2983786\";\"Reynès\";\"other\"\n\"2983798\";\"Rexpoëde\";\"main\"\n\"2983798\";\"Rexpoede\";\"ascii\"\n\"2983806\";\"Revin\";\"main\"\n\"2983810\";\"Réville\";\"main\"\n\"2983810\";\"Reville\";\"ascii\"\n\"2983812\";\"Revigny-sur-Ornain\";\"main\"\n\"2983812\";\"Revigny\";\"other\"\n\"2983825\";\"Reventin-Vaugris\";\"main\"\n\"2983825\";\"Reventin\";\"other\"\n\"2983831\";\"Revel\";\"main\"\n\"2983833\";\"Revel\";\"main\"\n\"2983856\";\"Reuilly\";\"main\"\n\"2983861\";\"Reugny\";\"main\"\n\"2983871\";\"Rety\";\"main\"\n\"2983879\";\"Retournac\";\"main\"\n\"2983882\";\"Retonfey\";\"main\"\n\"2983885\";\"Retiers\";\"main\"\n\"2983885\";\"Rester\";\"other\"\n\"2983891\";\"Rethel\";\"main\"\n\"2983900\";\"Restinclières\";\"main\"\n\"2983900\";\"Restinclieres\";\"ascii\"\n\"2983900\";\"Restincheres\";\"other\"\n\"2983900\";\"Restinchères\";\"other\"\n\"2983902\";\"Restigné\";\"main\"\n\"2983902\";\"Restigne\";\"ascii\"\n\"2983911\";\"Ressons-sur-Matz\";\"main\"\n\"2983911\";\"Ressons\";\"other\"\n\"2983929\";\"Réquista\";\"main\"\n\"2983929\";\"Requista\";\"ascii\"\n\"2983932\";\"Requeil\";\"main\"\n\"2983942\";\"Replonges\";\"main\"\n\"2983957\";\"Renwez\";\"main\"\n\"2983990\";\"Rennes\";\"main\"\n\"2983990\";\"Ren\";\"other\"\n\"2983990\";\"Renes\";\"other\"\n\"2983990\";\"Renn\";\"other\"\n\"2983990\";\"Roazhon\";\"other\"\n\"2983990\";\"lei en\";\"other\"\n\"2983990\";\"ren'nu\";\"other\"\n\"2983990\";\"ryn\";\"other\"\n\"2983990\";\"Рен\";\"other\"\n\"2983990\";\"Ренн\";\"other\"\n\"2983990\";\"رين\";\"other\"\n\"2983990\";\"レンヌ\";\"other\"\n\"2983990\";\"雷恩\";\"other\"\n\"2984005\";\"Renescure\";\"main\"\n\"2984012\";\"Renazé\";\"main\"\n\"2984012\";\"Renaze\";\"ascii\"\n\"2984024\";\"Renaison\";\"main\"\n\"2984025\";\"Renage\";\"main\"\n\"2984031\";\"Remy\";\"main\"\n\"2984037\";\"Remoulins\";\"main\"\n\"2984038\";\"Remouillé\";\"main\"\n\"2984038\";\"Remouille\";\"ascii\"\n\"2984038\";\"Ruvelieg\";\"other\"\n\"2984050\";\"Remiremont\";\"main\"\n\"2984050\";\"Libremont\";\"other\"\n\"2984050\";\"Romarici Mons\";\"other\"\n\"2984060\";\"Rémilly\";\"main\"\n\"2984060\";\"Remilly\";\"ascii\"\n\"2984076\";\"Rémelfing\";\"main\"\n\"2984076\";\"Remelfing\";\"ascii\"\n\"2984087\";\"Rémalard\";\"main\"\n\"2984087\";\"Remalard\";\"ascii\"\n\"2984087\";\"Remal-la-Montagne\";\"other\"\n\"2984107\";\"Reiningue\";\"main\"\n\"2984114\";\"Reims\";\"main\"\n\"2984114\";\"Rejms\";\"other\"\n\"2984114\";\"Rheims\";\"other\"\n\"2984114\";\"Реймс\";\"other\"\n\"2984118\";\"Reillanne\";\"main\"\n\"2984127\";\"Reignier-Ésery\";\"main\"\n\"2984127\";\"Reignier-Esery\";\"ascii\"\n\"2984132\";\"Reignac-sur-Indre\";\"main\"\n\"2984132\";\"Reignac\";\"other\"\n\"2984132\";\"Val-Indre\";\"other\"\n\"2984134\";\"Reignac\";\"main\"\n\"2984135\";\"Reichstett\";\"main\"\n\"2984136\";\"Reichshoffen\";\"main\"\n\"2984140\";\"Réhon\";\"main\"\n\"2984140\";\"Rehon\";\"ascii\"\n\"2984145\";\"Régusse\";\"main\"\n\"2984145\";\"Regusse\";\"ascii\"\n\"2984146\";\"Réguisheim\";\"main\"\n\"2984146\";\"Reguisheim\";\"ascii\"\n\"2984147\";\"Réguiny\";\"main\"\n\"2984147\";\"Reguiny\";\"ascii\"\n\"2984147\";\"Regini\";\"other\"\n\"2984153\";\"Régny\";\"main\"\n\"2984153\";\"Regny\";\"ascii\"\n\"2984192\";\"Redon\";\"main\"\n\"2984193\";\"Réding\";\"main\"\n\"2984193\";\"Reding\";\"ascii\"\n\"2984195\";\"Redessan\";\"main\"\n\"2984198\";\"Rédené\";\"main\"\n\"2984198\";\"Redene\";\"ascii\"\n\"2984210\";\"Recquignies\";\"main\"\n\"2984266\";\"Rebréchien\";\"main\"\n\"2984266\";\"Rebrechien\";\"ascii\"\n\"2984284\";\"Rebais\";\"main\"\n\"2984297\";\"Réalville\";\"main\"\n\"2984297\";\"Realville\";\"ascii\"\n\"2984297\";\"Garde-Mont\";\"other\"\n\"2984299\";\"Réalmont\";\"main\"\n\"2984299\";\"Realmont\";\"ascii\"\n\"2984299\";\"Montdadou\";\"other\"\n\"2984314\";\"Razès\";\"main\"\n\"2984314\";\"Razes\";\"ascii\"\n\"2984339\";\"Ravières\";\"main\"\n\"2984339\";\"Ravieres\";\"ascii\"\n\"2984345\";\"Ravenel\";\"main\"\n\"2984351\";\"Rauzan\";\"main\"\n\"2984412\";\"Raon-aux-Bois\";\"main\"\n\"2984412\";\"Raon\";\"other\"\n\"2984417\";\"Ranville\";\"main\"\n\"2984420\";\"Rantigny\";\"main\"\n\"2984432\";\"Rannée\";\"main\"\n\"2984432\";\"Rannee\";\"ascii\"\n\"2984432\";\"Radenez\";\"other\"\n\"2984438\";\"Rang-du-Fliers\";\"main\"\n\"2984449\";\"Randan\";\"main\"\n\"2984468\";\"Ranchicourt\";\"main\"\n\"2984493\";\"Ramonville-Saint-Agne\";\"main\"\n\"2984493\";\"Ramonville\";\"other\"\n\"2984495\";\"Ramonchamp\";\"main\"\n\"2984513\";\"Rambouillet\";\"main\"\n\"2984513\";\"Rambouillet-forhandlingerne\";\"other\"\n\"2984513\";\"Rambuje\";\"other\"\n\"2984513\";\"ranbuie\";\"other\"\n\"2984513\";\"Рамбуйе\";\"other\"\n\"2984513\";\"ランブイエ\";\"other\"\n\"2984516\";\"Rambervillers\";\"main\"\n\"2984516\";\"Ramberti Villare\";\"other\"\n\"2984521\";\"Ramatuelle\";\"main\"\n\"2984532\";\"Rai\";\"main\"\n\"2984532\";\"Rai-sur-Rile\";\"other\"\n\"2984532\";\"Rai-sur-Rîle\";\"other\"\n\"2984537\";\"Raismes\";\"main\"\n\"2984548\";\"Raimbeaucourt\";\"main\"\n\"2984552\";\"Raillencourt-Sainte-Olle\";\"main\"\n\"2984578\";\"Raedersheim\";\"main\"\n\"2984582\";\"Radon\";\"main\"\n\"2984583\";\"Radinghem-en-Weppes\";\"main\"\n\"2984583\";\"Radinghem\";\"other\"\n\"2984594\";\"Racquinghem\";\"main\"\n\"2984600\";\"Râches\";\"main\"\n\"2984600\";\"Raches\";\"ascii\"\n\"2984626\";\"Rabastens-de-Bigorre\";\"main\"\n\"2984626\";\"Rabastens\";\"other\"\n\"2984627\";\"Rabastens\";\"main\"\n\"2984640\";\"Quistinic\";\"main\"\n\"2984640\";\"Kistinid\";\"other\"\n\"2984643\";\"Quissac\";\"main\"\n\"2984643\";\"Ouissac\";\"other\"\n\"2984649\";\"Quintin\";\"main\"\n\"2984649\";\"Kintin\";\"other\"\n\"2984653\";\"Quintenas\";\"main\"\n\"2984657\";\"Quinssaines\";\"main\"\n\"2984657\";\"Quins-Sames\";\"other\"\n\"2984657\";\"Quinssaimes\";\"other\"\n\"2984664\";\"Quinsac\";\"main\"\n\"2984675\";\"Quingey\";\"main\"\n\"2984677\";\"Quincy-Voisins\";\"main\"\n\"2984677\";\"Quincy\";\"other\"\n\"2984677\";\"Quincy-Segy\";\"other\"\n\"2984677\";\"Quincy-Ségy\";\"other\"\n\"2984678\";\"Quincy-sous-Sénart\";\"main\"\n\"2984678\";\"Quincy-sous-Senart\";\"ascii\"\n\"2984678\";\"Quincy\";\"other\"\n\"2984686\";\"Quincieux\";\"main\"\n\"2984689\";\"Quincié-en-Beaujolais\";\"main\"\n\"2984689\";\"Quincie-en-Beaujolais\";\"ascii\"\n\"2984689\";\"Quincie\";\"other\"\n\"2984689\";\"Quincié\";\"other\"\n\"2984691\";\"Quincey\";\"main\"\n\"2984697\";\"Quincampoix\";\"main\"\n\"2984699\";\"Quimperlé\";\"main\"\n\"2984699\";\"Quimperle\";\"ascii\"\n\"2984699\";\"Kemperle\";\"other\"\n\"2984701\";\"Quimper\";\"main\"\n\"2984701\";\"Kemper\";\"other\"\n\"2984701\";\"Montagne-sur-Odet\";\"other\"\n\"2984701\";\"kanperu\";\"other\"\n\"2984701\";\"Кемпер\";\"other\"\n\"2984701\";\"カンペール\";\"other\"\n\"2984708\";\"Quilly\";\"main\"\n\"2984708\";\"Killig\";\"other\"\n\"2984718\";\"Quillebeuf-sur-Seine\";\"main\"\n\"2984718\";\"Quillebeuf\";\"other\"\n\"2984719\";\"Quillan\";\"main\"\n\"2984726\";\"Quiévy\";\"main\"\n\"2984726\";\"Quievy\";\"ascii\"\n\"2984728\";\"Quiévrechain\";\"main\"\n\"2984728\";\"Quievrechain\";\"ascii\"\n\"2984733\";\"Quiers-sur-Bézonde\";\"main\"\n\"2984733\";\"Quiers-sur-Bezonde\";\"ascii\"\n\"2984733\";\"Quiers\";\"other\"\n\"2984741\";\"Quiberon\";\"main\"\n\"2984741\";\"Kiberen\";\"other\"\n\"2984759\";\"Quévert\";\"main\"\n\"2984759\";\"Quevert\";\"ascii\"\n\"2984759\";\"Kever\";\"other\"\n\"2984760\";\"Quéven\";\"main\"\n\"2984760\";\"Queven\";\"ascii\"\n\"2984760\";\"Kewenn\";\"other\"\n\"2984761\";\"Quevauvillers\";\"main\"\n\"2984771\";\"Quettreville-sur-Sienne\";\"main\"\n\"2984771\";\"Quettreville\";\"other\"\n\"2984774\";\"Quettehou\";\"main\"\n\"2984775\";\"Quetigny\";\"main\"\n\"2984781\";\"Questembert\";\"main\"\n\"2984781\";\"Kistreberzh\";\"other\"\n\"2984783\";\"Quessoy\";\"main\"\n\"2984783\";\"Kesoue\";\"other\"\n\"2984787\";\"Quesnoy-sur-Deûle\";\"main\"\n\"2984787\";\"Quesnoy-sur-Deule\";\"ascii\"\n\"2984787\";\"Le Quesnoy-sur-Deule\";\"other\"\n\"2984787\";\"Le Quesnoy-sur-Deûle\";\"other\"\n\"2984794\";\"Querrien\";\"main\"\n\"2984794\";\"Kerien\";\"other\"\n\"2984799\";\"Querqueville\";\"main\"\n\"2984828\";\"Quend\";\"main\"\n\"2984828\";\"Quend-le-Jeune\";\"other\"\n\"2984830\";\"Quemper-Guézennec\";\"main\"\n\"2984830\";\"Quemper-Guezennec\";\"ascii\"\n\"2984830\";\"Kemper-Gwezhenneg\";\"other\"\n\"2984830\";\"Quemper-Guezennac\";\"other\"\n\"2984830\";\"Quemper-Guézennac\";\"other\"\n\"2984835\";\"Quéménéven\";\"main\"\n\"2984835\";\"Quemeneven\";\"ascii\"\n\"2984835\";\"Kemeneven\";\"other\"\n\"2984846\";\"Quelaines-Saint-Gault\";\"main\"\n\"2984852\";\"Quédillac\";\"main\"\n\"2984852\";\"Quedillac\";\"ascii\"\n\"2984852\";\"Kedilieg\";\"other\"\n\"2984853\";\"Québriac\";\"main\"\n\"2984853\";\"Quebriac\";\"ascii\"\n\"2984853\";\"Kevrieg\";\"other\"\n\"2984874\";\"Quarouble\";\"main\"\n\"2984879\";\"Quarante\";\"main\"\n\"2984883\";\"Quaëdypre\";\"main\"\n\"2984883\";\"Quaedypre\";\"ascii\"\n\"2984926\";\"Puyoô\";\"main\"\n\"2984926\";\"Puyoo\";\"ascii\"\n\"2984929\";\"Puymoyen\";\"main\"\n\"2984944\";\"Puyloubier\";\"main\"\n\"2984952\";\"Puylaurens\";\"main\"\n\"2984965\";\"Puy-Guillaume\";\"main\"\n\"2984969\";\"Puygouzon\";\"main\"\n\"2984969\";\"Puygouzon-et-Montsalvy\";\"other\"\n\"2985034\";\"Puteaux\";\"main\"\n\"2985034\";\"Puteux\";\"other\"\n\"2985041\";\"Pussay\";\"main\"\n\"2985045\";\"Pusignan\";\"main\"\n\"2985046\";\"Pusey\";\"main\"\n\"2985061\";\"Pulversheim\";\"main\"\n\"2985064\";\"Pulnoy\";\"main\"\n\"2985067\";\"Pulligny\";\"main\"\n\"2985073\";\"Pujols\";\"main\"\n\"2985076\";\"Pujaut\";\"main\"\n\"2985077\";\"Pujaudran\";\"main\"\n\"2985096\";\"Puisserguier\";\"main\"\n\"2985099\";\"Puissalicon\";\"main\"\n\"2985107\";\"Puiseux-en-France\";\"main\"\n\"2985107\";\"Puiseux\";\"other\"\n\"2985107\";\"Puiseux-les-Louvres\";\"other\"\n\"2985118\";\"Puiseaux\";\"main\"\n\"2985128\";\"Puilboreau\";\"main\"\n\"2985133\";\"Puicheric\";\"main\"\n\"2985133\";\"Puicheric-d'Aude\";\"other\"\n\"2985133\";\"Puicherie-d'Aude\";\"other\"\n\"2985137\";\"Pugnac\";\"main\"\n\"2985141\";\"Puget-Ville\";\"main\"\n\"2985141\";\"Puget\";\"other\"\n\"2985142\";\"Puget-Théniers\";\"main\"\n\"2985142\";\"Puget-Theniers\";\"ascii\"\n\"2985143\";\"Puget-sur-Argens\";\"main\"\n\"2985143\";\"Le Puget\";\"other\"\n\"2985143\";\"Le Puget-sur-Argens\";\"other\"\n\"2985143\";\"Puget\";\"other\"\n\"2985163\";\"Publier\";\"main\"\n\"2985177\";\"Pruniers-en-Sologne\";\"main\"\n\"2985196\";\"Prunelli-di-Fiumorbo\";\"main\"\n\"2985196\";\"Prunelli\";\"other\"\n\"2985196\";\"Prunelli-di-Fiumerbo\";\"other\"\n\"2985213\";\"Pruillé-le-Chétif\";\"main\"\n\"2985213\";\"Pruille-le-Chetif\";\"ascii\"\n\"2985213\";\"Pruille\";\"other\"\n\"2985213\";\"Pruillé\";\"other\"\n\"2985229\";\"Provins\";\"main\"\n\"2985229\";\"purovu~an\";\"other\"\n\"2985229\";\"プロヴァン\";\"other\"\n\"2985230\";\"Provin\";\"main\"\n\"2985231\";\"Proville\";\"main\"\n\"2985251\";\"Prouvy\";\"main\"\n\"2985266\";\"Propriano\";\"main\"\n\"2985266\";\"Prupia\";\"other\"\n\"2985266\";\"Prupià\";\"other\"\n\"2985282\";\"Priziac\";\"main\"\n\"2985282\";\"Prizieg\";\"other\"\n\"2985283\";\"Prix-lès-Mézières\";\"main\"\n\"2985283\";\"Prix-les-Mezieres\";\"ascii\"\n\"2985283\";\"Prix\";\"other\"\n\"2985290\";\"Privas\";\"main\"\n\"2985290\";\"Privàs\";\"other\"\n\"2985290\";\"purivu~a\";\"other\"\n\"2985290\";\"プリヴァ\";\"other\"\n\"2985292\";\"Prissé\";\"main\"\n\"2985292\";\"Prisse\";\"ascii\"\n\"2985302\";\"Prinquiau\";\"main\"\n\"2985302\";\"Prevenkel\";\"other\"\n\"2985304\";\"Pringy\";\"main\"\n\"2985305\";\"Pringy\";\"main\"\n\"2985318\";\"Prigonrieux\";\"main\"\n\"2985330\";\"Priay\";\"main\"\n\"2985361\";\"Preuilly-sur-Claise\";\"main\"\n\"2985361\";\"Preuilly\";\"other\"\n\"2985375\";\"Précieux\";\"main\"\n\"2985375\";\"Precieux\";\"ascii\"\n\"2985402\";\"Presles-en-Brie\";\"main\"\n\"2985402\";\"Presles\";\"other\"\n\"2985416\";\"Préseau\";\"main\"\n\"2985416\";\"Preseau\";\"ascii\"\n\"2985455\";\"Prémilhat\";\"main\"\n\"2985455\";\"Premilhat\";\"ascii\"\n\"2985461\";\"Prémesques\";\"main\"\n\"2985461\";\"Premesques\";\"ascii\"\n\"2985462\";\"Prémery\";\"main\"\n\"2985462\";\"Premery\";\"ascii\"\n\"2985474\";\"Preignan\";\"main\"\n\"2985475\";\"Preignac\";\"main\"\n\"2985490\";\"Préfailles\";\"main\"\n\"2985490\";\"Prefailles\";\"ascii\"\n\"2985490\";\"Pradvael\";\"other\"\n\"2985490\";\"Prefaille\";\"other\"\n\"2985490\";\"Préfaille\";\"other\"\n\"2985491\";\"Pré-en-Pail\";\"main\"\n\"2985491\";\"Pre-en-Pail\";\"ascii\"\n\"2985498\";\"Précy-sur-Oise\";\"main\"\n\"2985498\";\"Precy-sur-Oise\";\"ascii\"\n\"2985498\";\"Precy\";\"other\"\n\"2985498\";\"Précy\";\"other\"\n\"2985512\";\"Précigné\";\"main\"\n\"2985512\";\"Precigne\";\"ascii\"\n\"2985522\";\"Préchac\";\"main\"\n\"2985522\";\"Prechac\";\"ascii\"\n\"2985533\";\"Préaux\";\"main\"\n\"2985533\";\"Preaux\";\"ascii\"\n\"2985543\";\"Praz-sur-Arly\";\"main\"\n\"2985543\";\"Praz\";\"other\"\n\"2985543\";\"le Praz\";\"other\"\n\"2985547\";\"Prayssac\";\"main\"\n\"2985564\";\"Prats de Molló\";\"main\"\n\"2985564\";\"Prats de Mollo\";\"ascii\"\n\"2985564\";\"Prats-de-Mollo\";\"other\"\n\"2985579\";\"Prat\";\"main\"\n\"2985579\";\"Prad\";\"other\"\n\"2985618\";\"Prahecq\";\"main\"\n\"2985632\";\"Pradines\";\"main\"\n\"2985641\";\"Prades-le-Lez\";\"main\"\n\"2985641\";\"Prades\";\"other\"\n\"2985653\";\"Prades\";\"main\"\n\"2985653\";\"Prada\";\"other\"\n\"2985653\";\"Prada de Conflent\";\"other\"\n\"2985708\";\"Pouzauges\";\"main\"\n\"2985708\";\"Pouzauges-la-Montagne\";\"other\"\n\"2985708\";\"Pouzauges-la-Vallee\";\"other\"\n\"2985708\";\"Pouzauges-la-Vallée\";\"other\"\n\"2985708\";\"Pouzauiges\";\"other\"\n\"2985710\";\"Pouzac\";\"main\"\n\"2985724\";\"Pouxeux\";\"main\"\n\"2985738\";\"Poussan\";\"main\"\n\"2985742\";\"Pouru-Saint-Remy\";\"main\"\n\"2985742\";\"Pouru-sur-Chiers\";\"other\"\n\"2985751\";\"Pourrières\";\"main\"\n\"2985751\";\"Pourrieres\";\"ascii\"\n\"2985754\";\"Pourrain\";\"main\"\n\"2985778\";\"Poulx\";\"main\"\n\"2985787\";\"Poullaouen\";\"main\"\n\"2985788\";\"Poullan-sur-Mer\";\"main\"\n\"2985788\";\"Poullan\";\"other\"\n\"2985788\";\"Poullann\";\"other\"\n\"2985789\";\"Pouligny-Saint-Pierre\";\"main\"\n\"2985789\";\"Pouligny\";\"other\"\n\"2985807\";\"Pouldreuzic\";\"main\"\n\"2985807\";\"Pouldreuzig\";\"other\"\n\"2985810\";\"Pouldergat\";\"main\"\n\"2985810\";\"Pouldregad\";\"other\"\n\"2985821\";\"Poulainville\";\"main\"\n\"2985832\";\"Pouilly-sur-Loire\";\"main\"\n\"2985832\";\"Pouilly\";\"other\"\n\"2985833\";\"Pouilly-sous-Charlieu\";\"main\"\n\"2985833\";\"Pouilly\";\"other\"\n\"2985834\";\"Pouilly-les-Nonains\";\"main\"\n\"2985834\";\"Pouilly\";\"other\"\n\"2985835\";\"Pouilly-lès-Feurs\";\"main\"\n\"2985835\";\"Pouilly-les-Feurs\";\"ascii\"\n\"2985835\";\"Pouilly\";\"other\"\n\"2985840\";\"Pouilly-en-Auxois\";\"main\"\n\"2985840\";\"Pouilly\";\"other\"\n\"2985849\";\"Pouillon\";\"main\"\n\"2985850\";\"Pouilley-les-Vignes\";\"main\"\n\"2985850\";\"Pouilley\";\"other\"\n\"2985865\";\"Pougues-les-Eaux\";\"main\"\n\"2985865\";\"Pougues\";\"other\"\n\"2985893\";\"Pouancé\";\"main\"\n\"2985893\";\"Pouance\";\"ascii\"\n\"2985901\";\"Potigny\";\"main\"\n\"2985916\";\"Poses\";\"main\"\n\"2985925\";\"Portvendres\";\"main\"\n\"2985925\";\"Port-Vendres\";\"other\"\n\"2985925\";\"Port-de-la-Victoire\";\"other\"\n\"2985929\";\"Port-sur-Saône\";\"main\"\n\"2985929\";\"Port-sur-Saone\";\"ascii\"\n\"2985932\";\"Port-Saint-Père\";\"main\"\n\"2985932\";\"Port-Saint-Pere\";\"ascii\"\n\"2985932\";\"Port-Boulay\";\"other\"\n\"2985932\";\"Porzh-Per\";\"other\"\n\"2985932\";\"Porzh-Pêr\";\"other\"\n\"2985934\";\"Port-Saint-Louis-du-Rhône\";\"main\"\n\"2985934\";\"Port-Saint-Louis-du-Rhone\";\"ascii\"\n\"2985934\";\"Port-Saint-Louis\";\"other\"\n\"2985934\";\"Saint Louis\";\"other\"\n\"2985934\";\"Saint-Louis-du-Rhone\";\"other\"\n\"2985934\";\"Saint-Louis-du-Rhône\";\"other\"\n\"2985936\";\"Port-Sainte-Marie\";\"main\"\n\"2985936\";\"Port-de-la-Montagne-sur-Garonne\";\"other\"\n\"2985937\";\"Port-Sainte-Foy-et-Ponchapt\";\"main\"\n\"2985937\";\"Port-Sainte Foy\";\"other\"\n\"2985947\";\"Porto-Vecchio\";\"main\"\n\"2985947\";\"Porti Vecchju\";\"other\"\n\"2985947\";\"Porto Vecchio\";\"other\"\n\"2985963\";\"Port-Louis\";\"main\"\n\"2985963\";\"Port-Liberte\";\"other\"\n\"2985963\";\"Port-Liberté\";\"other\"\n\"2985963\";\"Port-de-l'Egalite\";\"other\"\n\"2985963\";\"Port-de-l'Egalité\";\"other\"\n\"2985963\";\"Porzh-Loeiz\";\"other\"\n\"2985968\";\"Port-la-Nouvelle\";\"main\"\n\"2985968\";\"La Nouvelle\";\"other\"\n\"2985972\";\"Portiragnes\";\"main\"\n\"2985975\";\"Portieux\";\"main\"\n\"2985982\";\"Portet-sur-Garonne\";\"main\"\n\"2985982\";\"Portet\";\"other\"\n\"2985982\";\"Portet sobre Garona\";\"other\"\n\"2985983\";\"Portets\";\"main\"\n\"2985987\";\"Portes-lès-Valence\";\"main\"\n\"2985987\";\"Portes-les-Valence\";\"ascii\"\n\"2985987\";\"Portes\";\"other\"\n\"2985999\";\"Port-en-Bessin-Huppain\";\"main\"\n\"2985999\";\"Port\";\"other\"\n\"2985999\";\"Port-en-Bessin\";\"other\"\n\"2986001\";\"Portel-des-Corbières\";\"main\"\n\"2986001\";\"Portel-des-Corbieres\";\"ascii\"\n\"2986025\";\"Port-de-Bouc\";\"main\"\n\"2986025\";\"Port-de-Boue\";\"other\"\n\"2986032\";\"Port-Brillet\";\"main\"\n\"2986038\";\"Portbail\";\"main\"\n\"2986046\";\"Porspoder\";\"main\"\n\"2986059\";\"Pornichet\";\"main\"\n\"2986059\";\"Pornizhan\";\"other\"\n\"2986060\";\"Pornic\";\"main\"\n\"2986060\";\"Pornizh\";\"other\"\n\"2986060\";\"Roche-Peltier\";\"other\"\n\"2986066\";\"Pordic\";\"main\"\n\"2986066\";\"Porzhig\";\"other\"\n\"2986070\";\"Porcieu-Amblagnieu\";\"main\"\n\"2986070\";\"Amblagnieu\";\"other\"\n\"2986070\";\"Porcieux\";\"other\"\n\"2986071\";\"Porcheville\";\"main\"\n\"2986077\";\"Porcelette\";\"main\"\n\"2986087\";\"Pontvallain\";\"main\"\n\"2986092\";\"Pont-sur-Yonne\";\"main\"\n\"2986092\";\"Pont\";\"other\"\n\"2986095\";\"Pont-sur-Sambre\";\"main\"\n\"2986095\";\"Pont\";\"other\"\n\"2986102\";\"Pont-Scorff\";\"main\"\n\"2986102\";\"Pont-Skorf\";\"other\"\n\"2986103\";\"Pont-Salomon\";\"main\"\n\"2986104\";\"Pont-Saint-Vincent\";\"main\"\n\"2986104\";\"Pont-la-Montagne\";\"other\"\n\"2986105\";\"Pont-Saint-Pierre\";\"main\"\n\"2986106\";\"Pont-Saint-Martin\";\"main\"\n\"2986109\";\"Pont-Saint-Esprit\";\"main\"\n\"2986109\";\"Pont-sur-Rhone\";\"other\"\n\"2986109\";\"Pont-sur-Rhône\";\"other\"\n\"2986109\";\"pon=san=tesupuri\";\"other\"\n\"2986109\";\"ポン＝サン＝テスプリ\";\"other\"\n\"2986110\";\"Pont-Sainte-Maxence\";\"main\"\n\"2986110\";\"Pont\";\"other\"\n\"2986110\";\"Pont-la-Montagne\";\"other\"\n\"2986110\";\"Pont-sur-Oise\";\"other\"\n\"2986111\";\"Pont-Sainte-Marie\";\"main\"\n\"2986111\";\"Pont\";\"other\"\n\"2986121\";\"Pontrieux\";\"main\"\n\"2986121\";\"Pontrev\";\"other\"\n\"2986122\";\"Pont-Remy\";\"main\"\n\"2986127\";\"Pontpoint\";\"main\"\n\"2986136\";\"Pontorson\";\"main\"\n\"2986140\";\"Pontoise\";\"main\"\n\"2986140\";\"Pontisara\";\"other\"\n\"2986140\";\"pontowazu\";\"other\"\n\"2986140\";\"ポントワーズ\";\"other\"\n\"2986149\";\"Pontlevoy\";\"main\"\n\"2986160\";\"Pontivy\";\"main\"\n\"2986160\";\"Pondi\";\"other\"\n\"2986160\";\"Pondivi\";\"other\"\n\"2986178\";\"Ponthierry\";\"main\"\n\"2986181\";\"Pont-Hébert\";\"main\"\n\"2986181\";\"Pont-Hebert\";\"ascii\"\n\"2986186\";\"Pontfaverger-Moronvilliers\";\"main\"\n\"2986186\";\"Pontfaverger\";\"other\"\n\"2986191\";\"Pont-Évêque\";\"main\"\n\"2986191\";\"Pont-Eveque\";\"ascii\"\n\"2986198\";\"Pontenx-les-Forges\";\"main\"\n\"2986198\";\"Pontenx\";\"other\"\n\"2986200\";\"Pont-en-Royans\";\"main\"\n\"2986200\";\"Pont\";\"other\"\n\"2986200\";\"Pont-sur-Bourne\";\"other\"\n\"2986204\";\"Ponteilla\";\"main\"\n\"2986204\";\"Pontella\";\"other\"\n\"2986204\";\"Pontellà\";\"other\"\n\"2986205\";\"Pont-Écrepin\";\"main\"\n\"2986205\";\"Pont-Ecrepin\";\"ascii\"\n\"2986219\";\"Pont-du-Château\";\"main\"\n\"2986219\";\"Pont-du-Chateau\";\"ascii\"\n\"2986219\";\"Pont-sur-Allier\";\"other\"\n\"2986220\";\"Pont-du-Casse\";\"main\"\n\"2986225\";\"Pont-de-Veyle\";\"main\"\n\"2986225\";\"Pont\";\"other\"\n\"2986227\";\"Pont-de-Vaux\";\"main\"\n\"2986227\";\"Pont\";\"other\"\n\"2986233\";\"Pont-de-Salars\";\"main\"\n\"2986233\";\"Le Pont-de-Salars\";\"other\"\n\"2986237\";\"Pont-de-Roide\";\"main\"\n\"2986244\";\"Pont-de-Metz\";\"main\"\n\"2986248\";\"Pont-de-Larn\";\"main\"\n\"2986257\";\"Pont-de-Chéruy\";\"main\"\n\"2986257\";\"Pont-de-Cheruy\";\"ascii\"\n\"2986271\";\"Pontchâteau\";\"main\"\n\"2986271\";\"Pontchateau\";\"ascii\"\n\"2986271\";\"Pontkastell-Keren\";\"other\"\n\"2986274\";\"Pontcharra-sur-Turdine\";\"main\"\n\"2986274\";\"Pontcharra\";\"other\"\n\"2986274\";\"Pontcharra-sur Tardine\";\"other\"\n\"2986275\";\"Pontcharra\";\"main\"\n\"2986275\";\"Pontcharra-sur-Breda\";\"other\"\n\"2986275\";\"Pontcharra-sur-Bréda\";\"other\"\n\"2986279\";\"Pontcarré\";\"main\"\n\"2986279\";\"Pontcarre\";\"ascii\"\n\"2986285\";\"Pont-à-Vendin\";\"main\"\n\"2986285\";\"Pont-a-Vendin\";\"ascii\"\n\"2986286\";\"Pont-Aven\";\"main\"\n\"2986286\";\"פונט אוון\";\"other\"\n\"2986294\";\"Pont-Audemer\";\"main\"\n\"2986302\";\"Pontarlier\";\"main\"\n\"2986306\";\"Pont-à-Mousson\";\"main\"\n\"2986306\";\"Pont-a-Mousson\";\"ascii\"\n\"2986306\";\"Pont-a-Musson\";\"other\"\n\"2986306\";\"Понт-а-Муссон\";\"other\"\n\"2986307\";\"Pont-à-Marcq\";\"main\"\n\"2986307\";\"Pont-a-Marcq\";\"ascii\"\n\"2986307\";\"Pont-a-Marck\";\"other\"\n\"2986307\";\"Pont-a-Marq\";\"other\"\n\"2986307\";\"Pont-à-Marq\";\"other\"\n\"2986310\";\"Pontailler-sur-Saône\";\"main\"\n\"2986310\";\"Pontailler-sur-Saone\";\"ascii\"\n\"2986310\";\"Pontailler\";\"other\"\n\"2986313\";\"Pontacq\";\"main\"\n\"2986335\";\"Pons\";\"main\"\n\"2986354\";\"Poncin\";\"main\"\n\"2986356\";\"Ponchon\";\"main\"\n\"2986370\";\"Pomponne\";\"main\"\n\"2986375\";\"Pompignan\";\"main\"\n\"2986375\";\"Pompignan-Montagne\";\"other\"\n\"2986376\";\"Pompignac\";\"main\"\n\"2986385\";\"Pompey\";\"main\"\n\"2986386\";\"Pompertuzat\";\"main\"\n\"2986389\";\"Pompaire\";\"main\"\n\"2986395\";\"Pommiers\";\"main\"\n\"2986408\";\"Pommeuse\";\"main\"\n\"2986410\";\"Pommerit-le-Vicomte\";\"main\"\n\"2986410\";\"Panvrid-ar-Beskont\";\"other\"\n\"2986410\";\"Pañvrid-ar-Beskont\";\"other\"\n\"2986410\";\"Pommerit\";\"other\"\n\"2986410\";\"Pommerit-les-Bois\";\"other\"\n\"2986411\";\"Pommerit-Jaudy\";\"main\"\n\"2986411\";\"Peurid-ar-Roc'h\";\"other\"\n\"2986411\";\"Pommerit\";\"other\"\n\"2986418\";\"Pommeret\";\"main\"\n\"2986418\";\"Peunvrid\";\"other\"\n\"2986418\";\"Peuñvrid\";\"other\"\n\"2986434\";\"Pomérols\";\"main\"\n\"2986434\";\"Pomerols\";\"ascii\"\n\"2986444\";\"Pomarez\";\"main\"\n\"2986453\";\"Polminhac\";\"main\"\n\"2986454\";\"Pollionnay\";\"main\"\n\"2986457\";\"Polliat\";\"main\"\n\"2986460\";\"Pollestres\";\"main\"\n\"2986467\";\"Poligny\";\"main\"\n\"2986472\";\"Polignac\";\"main\"\n\"2986472\";\"Mont-Danise\";\"other\"\n\"2986472\";\"Polinhac\";\"other\"\n\"2986484\";\"Poix-du-Nord\";\"main\"\n\"2986484\";\"Poix\";\"other\"\n\"2986486\";\"Poix-de-Picardie\";\"main\"\n\"2986495\";\"Poitiers\";\"main\"\n\"2986495\";\"Peitieus\";\"other\"\n\"2986495\";\"Poatie\";\"other\"\n\"2986495\";\"Pouatie\";\"other\"\n\"2986495\";\"Pouetiers\";\"other\"\n\"2986495\";\"Pouètiérs\";\"other\"\n\"2986495\";\"Puat'e\";\"other\"\n\"2986495\";\"powachie\";\"other\"\n\"2986495\";\"pu wa jie\";\"other\"\n\"2986495\";\"Πουατιέ\";\"other\"\n\"2986495\";\"Поатие\";\"other\"\n\"2986495\";\"Пуатье\";\"other\"\n\"2986495\";\"ポワチエ\";\"other\"\n\"2986495\";\"普瓦捷\";\"other\"\n\"2986499\";\"Poisy\";\"main\"\n\"2986501\";\"Poissy\";\"main\"\n\"2986501\";\"Puassi\";\"other\"\n\"2986501\";\"Пуасси\";\"other\"\n\"2986524\";\"Poisat\";\"main\"\n\"2986546\";\"Poilly-lez-Gien\";\"main\"\n\"2986546\";\"Poilly\";\"other\"\n\"2986582\";\"Poey-de-Lescar\";\"main\"\n\"2986582\";\"Poey\";\"other\"\n\"2986585\";\"Podensac\";\"main\"\n\"2986588\";\"Pocé-sur-Cisse\";\"main\"\n\"2986588\";\"Poce-sur-Cisse\";\"ascii\"\n\"2986588\";\"Poce\";\"other\"\n\"2986588\";\"Pocé\";\"other\"\n\"2986589\";\"Pocé-les-Bois\";\"main\"\n\"2986589\";\"Poce-les-Bois\";\"ascii\"\n\"2986589\";\"Poce\";\"other\"\n\"2986589\";\"Pocé\";\"other\"\n\"2986589\";\"Pozieg\";\"other\"\n\"2986592\";\"Pluzunet\";\"main\"\n\"2986592\";\"Pluned\";\"other\"\n\"2986592\";\"Plûned\";\"other\"\n\"2986593\";\"Pluvigner\";\"main\"\n\"2986593\";\"Pleuwigner\";\"other\"\n\"2986600\";\"Plurien\";\"main\"\n\"2986601\";\"Pluneret\";\"main\"\n\"2986601\";\"Plumeret\";\"other\"\n\"2986601\";\"Plunered\";\"other\"\n\"2986605\";\"Plumieux\";\"main\"\n\"2986605\";\"Pluvaeg\";\"other\"\n\"2986608\";\"Plumergat\";\"main\"\n\"2986608\";\"Pluvergad\";\"other\"\n\"2986609\";\"Plumelin\";\"main\"\n\"2986609\";\"Pluverin\";\"other\"\n\"2986610\";\"Pluméliau\";\"main\"\n\"2986610\";\"Plumeliau\";\"ascii\"\n\"2986611\";\"Plumelec\";\"main\"\n\"2986611\";\"Pluveleg\";\"other\"\n\"2986613\";\"Plumaugat\";\"main\"\n\"2986613\";\"Pluvaelgad\";\"other\"\n\"2986615\";\"Pluherlin\";\"main\"\n\"2986615\";\"Pluhernin\";\"other\"\n\"2986616\";\"Pluguffan\";\"main\"\n\"2986616\";\"Pluguen\";\"other\"\n\"2986618\";\"Pluduno\";\"main\"\n\"2986618\";\"Pludunou\";\"other\"\n\"2986618\";\"Pludunoù\";\"other\"\n\"2986620\";\"Plozévet\";\"main\"\n\"2986620\";\"Plozevet\";\"ascii\"\n\"2986620\";\"Plodemet\";\"other\"\n\"2986620\";\"Plodémet\";\"other\"\n\"2986620\";\"Plozeved\";\"other\"\n\"2986624\";\"Plouzévédé\";\"main\"\n\"2986624\";\"Plouzevede\";\"ascii\"\n\"2986624\";\"Gwitevede\";\"other\"\n\"2986626\";\"Plouzané\";\"main\"\n\"2986626\";\"Plouzane\";\"ascii\"\n\"2986628\";\"Plouvorn\";\"main\"\n\"2986629\";\"Plouvien\";\"main\"\n\"2986632\";\"Plourivo\";\"main\"\n\"2986632\";\"Plouriviou\";\"other\"\n\"2986632\";\"Plourivioù\";\"other\"\n\"2986633\";\"Plourin-lès-Morlaix\";\"main\"\n\"2986633\";\"Plourin-les-Morlaix\";\"ascii\"\n\"2986635\";\"Plouray\";\"main\"\n\"2986635\";\"Plourae\";\"other\"\n\"2986638\";\"Plounévez-Quintin\";\"main\"\n\"2986638\";\"Plounevez-Quintin\";\"ascii\"\n\"2986638\";\"Plounevez-Kintin\";\"other\"\n\"2986639\";\"Plounévez-Moëdec\";\"main\"\n\"2986639\";\"Plounevez-Moedec\";\"ascii\"\n\"2986639\";\"Plounevez-Moedeg\";\"other\"\n\"2986640\";\"Plounévez-Lochrist\";\"main\"\n\"2986640\";\"Plounevez-Lochrist\";\"ascii\"\n\"2986640\";\"Gwinevez\";\"other\"\n\"2986640\";\"Plounevez\";\"other\"\n\"2986640\";\"Plouvenez-Lochrist\";\"other\"\n\"2986641\";\"Plounévézel\";\"main\"\n\"2986641\";\"Plounevezel\";\"ascii\"\n\"2986641\";\"Plonevell\";\"other\"\n\"2986642\";\"Plounéventer\";\"main\"\n\"2986642\";\"Plouneventer\";\"ascii\"\n\"2986642\";\"Gwineventer\";\"other\"\n\"2986644\";\"Plounéour-Trez\";\"main\"\n\"2986644\";\"Plouneour-Trez\";\"ascii\"\n\"2986644\";\"Plouneour-Traezh\";\"other\"\n\"2986645\";\"Plounéour-Ménez\";\"main\"\n\"2986645\";\"Plouneour-Menez\";\"ascii\"\n\"2986645\";\"Plouneour\";\"other\"\n\"2986645\";\"Plounéour\";\"other\"\n\"2986646\";\"Ploumoguer\";\"main\"\n\"2986646\";\"Plonger\";\"other\"\n\"2986647\";\"Ploumilliau\";\"main\"\n\"2986647\";\"Plouilio\";\"other\"\n\"2986649\";\"Ploumagoar\";\"main\"\n\"2986649\";\"Plouvagor\";\"other\"\n\"2986652\";\"Plouisy\";\"main\"\n\"2986652\";\"Plouizi\";\"other\"\n\"2986653\";\"Plouigneau\";\"main\"\n\"2986653\";\"Plouigno\";\"other\"\n\"2986654\";\"Plouider\";\"main\"\n\"2986655\";\"Plouhinec\";\"main\"\n\"2986655\";\"Ploeneg\";\"other\"\n\"2986657\";\"Plouharnel\";\"main\"\n\"2986660\";\"Plouha\";\"main\"\n\"2986661\";\"Plouguin\";\"main\"\n\"2986661\";\"Plougin\";\"other\"\n\"2986662\";\"Plouguiel\";\"main\"\n\"2986662\";\"Priel\";\"other\"\n\"2986663\";\"Plouguernével\";\"main\"\n\"2986663\";\"Plouguernevel\";\"ascii\"\n\"2986663\";\"Plougernevel\";\"other\"\n\"2986664\";\"Plouguerneau\";\"main\"\n\"2986664\";\"Plougerne\";\"other\"\n\"2986665\";\"Plouguenast\";\"main\"\n\"2986665\";\"Plougonwaz\";\"other\"\n\"2986666\";\"Plougrescant\";\"main\"\n\"2986666\";\"Plougouskant\";\"other\"\n\"2986666\";\"Plougreseant\";\"other\"\n\"2986668\";\"Plougourvest\";\"main\"\n\"2986668\";\"Gwikourvest\";\"other\"\n\"2986669\";\"Plougoumelen\";\"main\"\n\"2986669\";\"Plougouvelen\";\"other\"\n\"2986670\";\"Plougoulm\";\"main\"\n\"2986670\";\"Plougouloum\";\"other\"\n\"2986672\";\"Plougonven\";\"main\"\n\"2986673\";\"Plougonvelin\";\"main\"\n\"2986673\";\"Plougonvelen\";\"other\"\n\"2986674\";\"Plougastel-Daoulas\";\"main\"\n\"2986674\";\"Plougastel\";\"other\"\n\"2986674\";\"Plougastell-Daoulaz\";\"other\"\n\"2986676\";\"Plougasnou\";\"main\"\n\"2986676\";\"Plouganou\";\"other\"\n\"2986676\";\"Plouganoù\";\"other\"\n\"2986678\";\"Ploufragan\";\"main\"\n\"2986681\";\"Plouézec\";\"main\"\n\"2986681\";\"Plouezec\";\"ascii\"\n\"2986681\";\"Ploueg-ar-Mor\";\"other\"\n\"2986682\";\"Plouescat\";\"main\"\n\"2986682\";\"Ploueskad\";\"other\"\n\"2986683\";\"Plouër-sur-Rance\";\"main\"\n\"2986683\";\"Plouer-sur-Rance\";\"ascii\"\n\"2986683\";\"Plouer\";\"other\"\n\"2986683\";\"Plouhern\";\"other\"\n\"2986683\";\"Plouër\";\"other\"\n\"2986685\";\"Plouénan\";\"main\"\n\"2986685\";\"Plouenan\";\"ascii\"\n\"2986688\";\"Plouédern\";\"main\"\n\"2986688\";\"Plouedern\";\"ascii\"\n\"2986689\";\"Plouëc-du-Trieux\";\"main\"\n\"2986689\";\"Plouec-du-Trieux\";\"ascii\"\n\"2986689\";\"Ploeuc\";\"other\"\n\"2986691\";\"Ploudaniel\";\"main\"\n\"2986691\";\"Plouzeniel\";\"other\"\n\"2986692\";\"Ploudalmézeau\";\"main\"\n\"2986692\";\"Ploudalmezeau\";\"ascii\"\n\"2986692\";\"Gwitalmeze\";\"other\"\n\"2986692\";\"Ploudaimezau\";\"other\"\n\"2986693\";\"Ploubezre\";\"main\"\n\"2986693\";\"Plouber\";\"other\"\n\"2986693\";\"Ploubêr\";\"other\"\n\"2986694\";\"Ploubazlanec\";\"main\"\n\"2986694\";\"Plaeraneg\";\"other\"\n\"2986695\";\"Ploubalay\";\"main\"\n\"2986695\";\"Plouvalae\";\"other\"\n\"2986696\";\"Plouay\";\"main\"\n\"2986696\";\"Ploue\";\"other\"\n\"2986697\";\"Plouasne\";\"main\"\n\"2986697\";\"Plouan\";\"other\"\n\"2986698\";\"Plouarzel\";\"main\"\n\"2986698\";\"Plouarzhel\";\"other\"\n\"2986699\";\"Plouaret\";\"main\"\n\"2986699\";\"Plouared\";\"other\"\n\"2986700\";\"Plouagat\";\"main\"\n\"2986700\";\"Plagad\";\"other\"\n\"2986706\";\"Plonévez-Porzay\";\"main\"\n\"2986706\";\"Plonevez-Porzay\";\"ascii\"\n\"2986706\";\"Plonevez-Porsay\";\"other\"\n\"2986706\";\"Plonevez-Porzhe\";\"other\"\n\"2986706\";\"Plonévez-Porsay\";\"other\"\n\"2986707\";\"Plonévez-du-Faou\";\"main\"\n\"2986707\";\"Plonevez-du-Faou\";\"ascii\"\n\"2986707\";\"Plonevez\";\"other\"\n\"2986707\";\"Plonevez-ar-Faou\";\"other\"\n\"2986707\";\"Plonévez\";\"other\"\n\"2986708\";\"Plonéour-Lanvern\";\"main\"\n\"2986708\";\"Ploneour-Lanvern\";\"ascii\"\n\"2986708\";\"Ploneour\";\"other\"\n\"2986708\";\"Ploneour-Lanwern\";\"other\"\n\"2986708\";\"Plonéour\";\"other\"\n\"2986709\";\"Plonéis\";\"main\"\n\"2986709\";\"Ploneis\";\"ascii\"\n\"2986709\";\"Ploneiz\";\"other\"\n\"2986710\";\"Plomodiern\";\"main\"\n\"2986710\";\"Ploudiern\";\"other\"\n\"2986712\";\"Plomeur\";\"main\"\n\"2986712\";\"Ploveur\";\"other\"\n\"2986712\";\"Sablono:TabelKapoLauCarta\";\"other\"\n\"2986712\";\"Ŝablono:TabelKapoLaŭĈarta\";\"other\"\n\"2986713\";\"Plomelin\";\"main\"\n\"2986713\";\"Ploveilh\";\"other\"\n\"2986714\";\"Plombières-lès-Dijon\";\"main\"\n\"2986714\";\"Plombieres-les-Dijon\";\"ascii\"\n\"2986714\";\"Plombieres\";\"other\"\n\"2986714\";\"Plombières\";\"other\"\n\"2986715\";\"Plombières-les-Bains\";\"main\"\n\"2986715\";\"Plombieres-les-Bains\";\"ascii\"\n\"2986715\";\"Plombieres\";\"other\"\n\"2986715\";\"Plombières\";\"other\"\n\"2986723\";\"Plogonnec\";\"main\"\n\"2986723\";\"Plogoneg\";\"other\"\n\"2986724\";\"Plogoff\";\"main\"\n\"2986724\";\"Plougon\";\"other\"\n\"2986724\";\"Plougoñ\";\"other\"\n\"2986725\";\"Plogastel-Saint-Germain\";\"main\"\n\"2986725\";\"Plogastel\";\"other\"\n\"2986725\";\"Plogastell-Sant-Jermen\";\"other\"\n\"2986726\";\"Ploëzal\";\"main\"\n\"2986726\";\"Ploezal\";\"ascii\"\n\"2986726\";\"Pleuzal\";\"other\"\n\"2986728\";\"Plœuc-sur-Lié\";\"main\"\n\"2986728\";\"Ploeuc-sur-Lie\";\"ascii\"\n\"2986729\";\"Ploërmel\";\"main\"\n\"2986729\";\"Ploermel\";\"ascii\"\n\"2986729\";\"Ploermael\";\"other\"\n\"2986730\";\"Ploeren\";\"main\"\n\"2986730\";\"Ploveren\";\"other\"\n\"2986731\";\"Ploërdut\";\"main\"\n\"2986731\";\"Ploerdut\";\"ascii\"\n\"2986731\";\"Pleurdud\";\"other\"\n\"2986732\";\"Ploemeur\";\"main\"\n\"2986732\";\"Planvour\";\"other\"\n\"2986732\";\"Plañvour\";\"other\"\n\"2986733\";\"Ploemel\";\"main\"\n\"2986733\";\"Plenver\";\"other\"\n\"2986733\";\"Pleñver\";\"other\"\n\"2986734\";\"Plobsheim\";\"main\"\n\"2986735\";\"Plobannalec-Lesconil\";\"main\"\n\"2986746\";\"Pleyber-Christ\";\"main\"\n\"2986746\";\"Pleiber-Christ\";\"other\"\n\"2986746\";\"Pleiber-Krist\";\"other\"\n\"2986747\";\"Pleyben\";\"main\"\n\"2986747\";\"Pleiben\";\"other\"\n\"2986756\";\"Pleuven\";\"main\"\n\"2986756\";\"Pluwenn\";\"other\"\n\"2986757\";\"Pleurtuit\";\"main\"\n\"2986757\";\"Plevrestud\";\"other\"\n\"2986760\";\"Pleumeur-Gautier\";\"main\"\n\"2986760\";\"Pleumeur\";\"other\"\n\"2986760\";\"Pleuveur-Gaoter\";\"other\"\n\"2986761\";\"Pleumeur-Bodou\";\"main\"\n\"2986761\";\"Pleumeur\";\"other\"\n\"2986761\";\"Pleuveur-Bodou\";\"other\"\n\"2986761\";\"Pleuveur-Bodoù\";\"other\"\n\"2986762\";\"Pleumeleuc\";\"main\"\n\"2986762\";\"Pleveleg\";\"other\"\n\"2986765\";\"Pleumartin\";\"main\"\n\"2986766\";\"Pleugueneuc\";\"main\"\n\"2986766\";\"Plegeneg\";\"other\"\n\"2986766\";\"Plougueneuc\";\"other\"\n\"2986767\";\"Pleugriffet\";\"main\"\n\"2986767\";\"Ploueg-Grifed\";\"other\"\n\"2986768\";\"Pleudihen-sur-Rance\";\"main\"\n\"2986769\";\"Pleudaniel\";\"main\"\n\"2986769\";\"Planiel\";\"other\"\n\"2986770\";\"Pleucadeuc\";\"main\"\n\"2986770\";\"Plegadeg\";\"other\"\n\"2986771\";\"Pleubian\";\"main\"\n\"2986771\";\"Pleuvihan\";\"other\"\n\"2986772\";\"Plestin-les-Grèves\";\"main\"\n\"2986772\";\"Plestin-les-Greves\";\"ascii\"\n\"2986772\";\"Plestin\";\"other\"\n\"2986772\";\"Plistin\";\"other\"\n\"2986774\";\"Plestan\";\"main\"\n\"2986785\";\"Plessé\";\"main\"\n\"2986785\";\"Plesse\";\"ascii\"\n\"2986785\";\"Plesei\";\"other\"\n\"2986786\";\"Plessala\";\"main\"\n\"2986786\";\"Plesala\";\"other\"\n\"2986790\";\"Pleslin-Trigavou\";\"main\"\n\"2986793\";\"Plescop\";\"main\"\n\"2986793\";\"Pleskob\";\"other\"\n\"2986795\";\"Plérin\";\"main\"\n\"2986795\";\"Plerin\";\"ascii\"\n\"2986796\";\"Plerguer\";\"main\"\n\"2986796\";\"Plergar\";\"other\"\n\"2986800\";\"Pléneuf-Val-André\";\"main\"\n\"2986800\";\"Pleneuf-Val-Andre\";\"ascii\"\n\"2986800\";\"Pleneg-Nantraezh\";\"other\"\n\"2986800\";\"Pleneuf\";\"other\"\n\"2986800\";\"Pléneuf\";\"other\"\n\"2986801\";\"Plénée-Jugon\";\"main\"\n\"2986801\";\"Plenee-Jugon\";\"ascii\"\n\"2986801\";\"Plened-Yugon\";\"other\"\n\"2986802\";\"Plémy\";\"main\"\n\"2986802\";\"Plemy\";\"ascii\"\n\"2986802\";\"Plevig\";\"other\"\n\"2986803\";\"Plémet\";\"main\"\n\"2986803\";\"Plemet\";\"ascii\"\n\"2986803\";\"Plezeved\";\"other\"\n\"2986804\";\"Plélo\";\"main\"\n\"2986804\";\"Plelo\";\"ascii\"\n\"2986804\";\"Pleuloc'h\";\"other\"\n\"2986806\";\"Plélan-le-Petit\";\"main\"\n\"2986806\";\"Plelan-le-Petit\";\"ascii\"\n\"2986806\";\"Plelan\";\"other\"\n\"2986806\";\"Plelann-Vihan\";\"other\"\n\"2986806\";\"Plélan\";\"other\"\n\"2986807\";\"Plélan-le-Grand\";\"main\"\n\"2986807\";\"Plelan-le-Grand\";\"ascii\"\n\"2986807\";\"Plelann-Veur\";\"other\"\n\"2986814\";\"Pleine-Fougères\";\"main\"\n\"2986814\";\"Pleine-Fougeres\";\"ascii\"\n\"2986814\";\"Planfili\";\"other\"\n\"2986816\";\"Pléhédel\";\"main\"\n\"2986816\";\"Plehedel\";\"ascii\"\n\"2986817\";\"Pléguien\";\"main\"\n\"2986817\";\"Pleguien\";\"ascii\"\n\"2986817\";\"Plian\";\"other\"\n\"2986818\";\"Plédran\";\"main\"\n\"2986818\";\"Pledran\";\"ascii\"\n\"2986819\";\"Plédéliac\";\"main\"\n\"2986819\";\"Pledeliac\";\"ascii\"\n\"2986819\";\"Pledeliav\";\"other\"\n\"2986820\";\"Pléchâtel\";\"main\"\n\"2986820\";\"Plechatel\";\"ascii\"\n\"2986820\";\"Plegastell\";\"other\"\n\"2986822\";\"Pleaux\";\"main\"\n\"2986827\";\"Plauzat\";\"main\"\n\"2986830\";\"Plaudren\";\"main\"\n\"2986830\";\"Plaodren\";\"other\"\n\"2986855\";\"Plappeville\";\"main\"\n\"2986875\";\"Planguenoual\";\"main\"\n\"2986875\";\"Plangonwal\";\"other\"\n\"2986886\";\"Le Plan-de-la-Tour\";\"main\"\n\"2986889\";\"Plan-de-Cuques\";\"main\"\n\"2986889\";\"Cuques\";\"other\"\n\"2986891\";\"Plan-d'Aups-Sainte-Baume\";\"main\"\n\"2986894\";\"Plancoët\";\"main\"\n\"2986894\";\"Plancoet\";\"ascii\"\n\"2986894\";\"Plangoed\";\"other\"\n\"2986902\";\"Plancher-les-Mines\";\"main\"\n\"2986904\";\"Plancher-Bas\";\"main\"\n\"2986930\";\"Plaisir\";\"main\"\n\"2986933\";\"Plaisance-du-Touch\";\"main\"\n\"2986933\";\"Plaisance\";\"other\"\n\"2986938\";\"Plaisance\";\"main\"\n\"2986944\";\"Plaintel\";\"main\"\n\"2986944\";\"Pleneventer\";\"other\"\n\"2986946\";\"Plainfaing\";\"main\"\n\"2986952\";\"Plaine-Haute\";\"main\"\n\"2986952\";\"Plenaod\";\"other\"\n\"2986962\";\"Plaimpied-Givaudins\";\"main\"\n\"2986962\";\"Plaimpied\";\"other\"\n\"2986962\";\"Plainpied-Givaudins\";\"other\"\n\"2986965\";\"Plailly\";\"main\"\n\"2986991\";\"Plabennec\";\"main\"\n\"2986991\";\"Plabenneg\";\"other\"\n\"2987001\";\"Pithiviers-le-Vieil\";\"main\"\n\"2987003\";\"Pithiviers\";\"main\"\n\"2987007\";\"Pissy-Pôville\";\"main\"\n\"2987007\";\"Pissy-Poville\";\"ascii\"\n\"2987007\";\"Pissy\";\"other\"\n\"2987009\";\"Pissotte\";\"main\"\n\"2987011\";\"Pissos\";\"main\"\n\"2987037\";\"Pirou\";\"main\"\n\"2987043\";\"Piriac-sur-Mer\";\"main\"\n\"2987043\";\"Penc'herieg\";\"other\"\n\"2987043\";\"Piriac\";\"other\"\n\"2987045\";\"Pirey\";\"main\"\n\"2987046\";\"Piré-sur-Seiche\";\"main\"\n\"2987046\";\"Pire-sur-Seiche\";\"ascii\"\n\"2987046\";\"Pereg\";\"other\"\n\"2987046\";\"Pire\";\"other\"\n\"2987056\";\"Pipriac\";\"main\"\n\"2987056\";\"Presperieg\";\"other\"\n\"2987067\";\"Pionsat\";\"main\"\n\"2987071\";\"Piolenc\";\"main\"\n\"2987071\";\"Piolene\";\"other\"\n\"2987082\";\"Pinsaguel\";\"main\"\n\"2987086\";\"Pinon\";\"main\"\n\"2987094\";\"Piney\";\"main\"\n\"2987103\";\"Pinet\";\"main\"\n\"2987179\";\"Pignans\";\"main\"\n\"2987180\";\"Pignan\";\"main\"\n\"2987192\";\"Pietrosella\";\"main\"\n\"2987213\";\"Pierry\";\"main\"\n\"2987218\";\"Pierrevillers\";\"main\"\n\"2987222\";\"Pierrevert\";\"main\"\n\"2987230\";\"Pierres\";\"main\"\n\"2987237\";\"Pierrepont\";\"main\"\n\"2987256\";\"Pierrelaye\";\"main\"\n\"2987259\";\"Pierrelatte\";\"main\"\n\"2987266\";\"Pierrefort\";\"main\"\n\"2987268\";\"Pierrefontaine-les-Varans\";\"main\"\n\"2987268\";\"Pierrefontaine\";\"other\"\n\"2987270\";\"Pierrefonds\";\"main\"\n\"2987270\";\"Pierrefonds les-Bain\";\"other\"\n\"2987271\";\"Pierrefitte-sur-Seine\";\"main\"\n\"2987271\";\"Pierrefitte\";\"other\"\n\"2987275\";\"Pierrefitte-Nestalas\";\"main\"\n\"2987297\";\"Pierrefeu-du-Var\";\"main\"\n\"2987297\";\"Pierrefeu\";\"other\"\n\"2987308\";\"Pierre-Châtel\";\"main\"\n\"2987308\";\"Pierre-Chatel\";\"ascii\"\n\"2987309\";\"Pierre-Buffière\";\"main\"\n\"2987309\";\"Pierre-Buffiere\";\"ascii\"\n\"2987314\";\"Pierre-Bénite\";\"main\"\n\"2987314\";\"Pierre-Benite\";\"ascii\"\n\"2987320\";\"Pierre-de-Bresse\";\"main\"\n\"2987328\";\"Piennes\";\"main\"\n\"2987328\";\"Pienne\";\"other\"\n\"2987332\";\"Piégut-Pluviers\";\"main\"\n\"2987332\";\"Piegut-Pluviers\";\"ascii\"\n\"2987332\";\"Piegut\";\"other\"\n\"2987332\";\"Piégut\";\"other\"\n\"2987356\";\"Picquigny\";\"main\"\n\"2987370\";\"Picauville\";\"main\"\n\"2987376\";\"Pibrac\";\"main\"\n\"2987409\";\"Pia\";\"main\"\n\"2987421\";\"Phalsbourg\";\"main\"\n\"2987421\";\"Fort-Francais\";\"other\"\n\"2987421\";\"Fort-Français\";\"other\"\n\"2987421\";\"Roc-Ferme\";\"other\"\n\"2987423\";\"Phalempin\";\"main\"\n\"2987426\";\"Pfulgriesheim\";\"main\"\n\"2987428\";\"Pfetterhouse\";\"main\"\n\"2987428\";\"Pfetterhausen\";\"other\"\n\"2987429\";\"Pfastatt\";\"main\"\n\"2987431\";\"Pfaffenhoffen\";\"main\"\n\"2987431\";\"Pfaffenhofen\";\"other\"\n\"2987432\";\"Pfaffenheim\";\"main\"\n\"2987437\";\"Pézilla-la-Rivière\";\"main\"\n\"2987437\";\"Pezilla-la-Riviere\";\"ascii\"\n\"2987437\";\"Pezilla\";\"other\"\n\"2987437\";\"Pezilla-de-la-Riviere\";\"other\"\n\"2987437\";\"Pézilla\";\"other\"\n\"2987437\";\"Pézilla-de-la-Rivière\";\"other\"\n\"2987439\";\"Pezens\";\"main\"\n\"2987441\";\"Pézenas\";\"main\"\n\"2987441\";\"Pezenas\";\"ascii\"\n\"2987459\";\"Peyruis\";\"main\"\n\"2987472\";\"Peyrolles-en-Provence\";\"main\"\n\"2987472\";\"Peyrolles\";\"other\"\n\"2987484\";\"Peyrins\";\"main\"\n\"2987487\";\"Peyrilhac\";\"main\"\n\"2987495\";\"Peyriac-Minervois\";\"main\"\n\"2987495\";\"Peyriac\";\"other\"\n\"2987497\";\"Peyriac-de-Mer\";\"main\"\n\"2987497\";\"Peyriac\";\"other\"\n\"2987500\";\"Peyrestortes\";\"main\"\n\"2987513\";\"Peyrehorade\";\"main\"\n\"2987513\";\"Peirahorada\";\"other\"\n\"2987513\";\"Pevrehorade\";\"other\"\n\"2987534\";\"Peyrat-de-Bellac\";\"main\"\n\"2987534\";\"Pevrat-la-Montagne\";\"other\"\n\"2987534\";\"Peyrat\";\"other\"\n\"2987547\";\"Peypin\";\"main\"\n\"2987551\";\"Peynier\";\"main\"\n\"2987554\";\"Peymeinade\";\"main\"\n\"2987577\";\"Peujard\";\"main\"\n\"2987596\";\"Petiville\";\"main\"\n\"2987628\";\"Petit-Réderching\";\"main\"\n\"2987628\";\"Petit-Rederching\";\"ascii\"\n\"2987642\";\"Petit-Noir\";\"main\"\n\"2987658\";\"Petit-Mars\";\"main\"\n\"2987658\";\"Kervarc'h\";\"other\"\n\"2987706\";\"Petite-Rosselle\";\"main\"\n\"2987706\";\"Kleinrosseln\";\"other\"\n\"2987706\";\"Petit Rossel\";\"other\"\n\"2987706\";\"Petite-Rousselle\";\"other\"\n\"2987722\";\"Petite-Forêt\";\"main\"\n\"2987722\";\"Petite-Foret\";\"ascii\"\n\"2987805\";\"Pessac\";\"main\"\n\"2987805\";\"Pecac\";\"other\"\n\"2987805\";\"Pessake\";\"other\"\n\"2987805\";\"Peçac\";\"other\"\n\"2987805\";\"Пессаке\";\"other\"\n\"2987808\";\"Pesmes\";\"main\"\n\"2987813\";\"Peschadoires\";\"main\"\n\"2987813\";\"Peschadoire\";\"other\"\n\"2987825\";\"Pertuis\";\"main\"\n\"2987834\";\"Perthes\";\"main\"\n\"2987843\";\"Pers-Jussy\";\"main\"\n\"2987843\";\"Pers\";\"other\"\n\"2987847\";\"Persan\";\"main\"\n\"2987855\";\"Perrusson\";\"main\"\n\"2987863\";\"Perros-Guirec\";\"main\"\n\"2987863\";\"Perroz-Gireg\";\"other\"\n\"2987874\";\"Perrigny-lès-Dijon\";\"main\"\n\"2987874\";\"Perrigny-les-Dijon\";\"ascii\"\n\"2987874\";\"Perrigny\";\"other\"\n\"2987878\";\"Perrigny\";\"main\"\n\"2987879\";\"Perrignier\";\"main\"\n\"2987880\";\"Perriers-sur-Andelle\";\"main\"\n\"2987880\";\"Perriers\";\"other\"\n\"2987893\";\"Perreux\";\"main\"\n\"2987901\";\"Perrecy-les-Forges\";\"main\"\n\"2987901\";\"Cercy-la-Dheune\";\"other\"\n\"2987901\";\"Perrecey\";\"other\"\n\"2987901\";\"Perrecy\";\"other\"\n\"2987914\";\"Perpignan\";\"main\"\n\"2987914\";\"Perpignan la Catalane\";\"other\"\n\"2987914\";\"Perpignano\";\"other\"\n\"2987914\";\"Perpin'jan\";\"other\"\n\"2987914\";\"Perpinan\";\"other\"\n\"2987914\";\"Perpinha\";\"other\"\n\"2987914\";\"Perpinhan\";\"other\"\n\"2987914\";\"Perpinhã\";\"other\"\n\"2987914\";\"Perpinjan\";\"other\"\n\"2987914\";\"Perpinya\";\"other\"\n\"2987914\";\"Perpinya la Catalana\";\"other\"\n\"2987914\";\"Perpinyà\";\"other\"\n\"2987914\";\"Perpinyà la Catalana\";\"other\"\n\"2987914\";\"Perpiñán\";\"other\"\n\"2987914\";\"Villa Perpiniarum\";\"other\"\n\"2987914\";\"perupinyan\";\"other\"\n\"2987914\";\"Перпиньян\";\"other\"\n\"2987914\";\"Перпинян\";\"other\"\n\"2987914\";\"ペルピニャン\";\"other\"\n\"2987919\";\"Péroy-les-Gombries\";\"main\"\n\"2987919\";\"Peroy-les-Gombries\";\"ascii\"\n\"2987919\";\"Peroy\";\"other\"\n\"2987919\";\"Péroy\";\"other\"\n\"2987922\";\"Pérouges\";\"main\"\n\"2987922\";\"Perouges\";\"ascii\"\n\"2987928\";\"Péronne\";\"main\"\n\"2987928\";\"Peronne\";\"ascii\"\n\"2987930\";\"Péronnas\";\"main\"\n\"2987930\";\"Peronnas\";\"ascii\"\n\"2987932\";\"Péron\";\"main\"\n\"2987932\";\"Peron\";\"ascii\"\n\"2987936\";\"Pérols\";\"main\"\n\"2987936\";\"Perols\";\"ascii\"\n\"2987945\";\"Pernes-les-Fontaines\";\"main\"\n\"2987945\";\"Pernes\";\"other\"\n\"2987947\";\"Pernes\";\"main\"\n\"2987947\";\"Pernes-en-Artois\";\"other\"\n\"2987967\";\"Périgueux\";\"main\"\n\"2987967\";\"Perigueux\";\"ascii\"\n\"2987967\";\"Perige\";\"other\"\n\"2987967\";\"Perigueers\";\"other\"\n\"2987967\";\"Periguers\";\"other\"\n\"2987967\";\"Periguex\";\"other\"\n\"2987967\";\"Perigüers\";\"other\"\n\"2987967\";\"Périguex\";\"other\"\n\"2987967\";\"perigu\";\"other\"\n\"2987967\";\"Периге\";\"other\"\n\"2987967\";\"ペリグー\";\"other\"\n\"2987972\";\"Périgny\";\"main\"\n\"2987972\";\"Perigny\";\"ascii\"\n\"2987972\";\"Perigny-sur-Yerres\";\"other\"\n\"2987972\";\"Périgny-sur-Yerres\";\"other\"\n\"2987976\";\"Périgny\";\"main\"\n\"2987976\";\"Perigny\";\"ascii\"\n\"2987978\";\"Périgneux\";\"main\"\n\"2987978\";\"Perigneux\";\"ascii\"\n\"2987980\";\"Pérignat-sur-Allier\";\"main\"\n\"2987980\";\"Perignat-sur-Allier\";\"ascii\"\n\"2987980\";\"Perignat\";\"other\"\n\"2987980\";\"Perignat-es-Allier\";\"other\"\n\"2987980\";\"Perignat-les-Allier\";\"other\"\n\"2987980\";\"Pérignat\";\"other\"\n\"2987980\";\"Pérignat-es-Allier\";\"other\"\n\"2987980\";\"Pérignat-les-Allier\";\"other\"\n\"2987981\";\"Pérignat-lès-Sarliève\";\"main\"\n\"2987981\";\"Perignat-les-Sarlieve\";\"ascii\"\n\"2987981\";\"Perignat\";\"other\"\n\"2987981\";\"Pérignat\";\"other\"\n\"2987982\";\"Pérignac\";\"main\"\n\"2987982\";\"Perignac\";\"ascii\"\n\"2987986\";\"Périers\";\"main\"\n\"2987986\";\"Periers\";\"ascii\"\n\"2987989\";\"Peri\";\"main\"\n\"2988003\";\"Pérenchies\";\"main\"\n\"2988003\";\"Perenchies\";\"ascii\"\n\"2988017\";\"Percy\";\"main\"\n\"2988043\";\"Pépieux\";\"main\"\n\"2988043\";\"Pepieux\";\"ascii\"\n\"2988054\";\"Penvénan\";\"main\"\n\"2988054\";\"Penvenan\";\"ascii\"\n\"2988063\";\"Penta-di-Casinca\";\"main\"\n\"2988063\";\"Penta\";\"other\"\n\"2988082\";\"Pennautier\";\"main\"\n\"2988119\";\"Pénestin\";\"main\"\n\"2988119\";\"Penestin\";\"ascii\"\n\"2988119\";\"Pennestin\";\"other\"\n\"2988127\";\"Pendé\";\"main\"\n\"2988127\";\"Pende\";\"ascii\"\n\"2988128\";\"Pencran\";\"main\"\n\"2988128\";\"Penn-ar-C'hrann\";\"other\"\n\"2988160\";\"Pélussin\";\"main\"\n\"2988160\";\"Pelussin\";\"ascii\"\n\"2988161\";\"Peltre\";\"main\"\n\"2988163\";\"Pelousey\";\"main\"\n\"2988169\";\"Pellouailles-les-Vignes\";\"main\"\n\"2988169\";\"Pellouailles\";\"other\"\n\"2988174\";\"Pellegrue\";\"main\"\n\"2988186\";\"Pélissanne\";\"main\"\n\"2988186\";\"Pelissanne\";\"ascii\"\n\"2988208\";\"Peipin\";\"main\"\n\"2988212\";\"Peillonnex\";\"main\"\n\"2988213\";\"Peillon\";\"main\"\n\"2988214\";\"Peille\";\"main\"\n\"2988215\";\"Peillac\";\"main\"\n\"2988215\";\"Paolieg\";\"other\"\n\"2988220\";\"Pégomas\";\"main\"\n\"2988220\";\"Pegomas\";\"ascii\"\n\"2988229\";\"Pédernec\";\"main\"\n\"2988229\";\"Pedernec\";\"ascii\"\n\"2988229\";\"Pederneg\";\"other\"\n\"2988236\";\"Pecquencourt\";\"main\"\n\"2988251\";\"Pechbonnieu\";\"main\"\n\"2988251\";\"Echbonnieu\";\"other\"\n\"2988259\";\"Péchabou\";\"main\"\n\"2988259\";\"Pechabou\";\"ascii\"\n\"2988268\";\"Péaule\";\"main\"\n\"2988268\";\"Peaule\";\"ascii\"\n\"2988268\";\"Pleaol\";\"other\"\n\"2988269\";\"Peaugres\";\"main\"\n\"2988284\";\"Payzac\";\"main\"\n\"2988284\";\"Payzac-de-Lanouaille\";\"other\"\n\"2988292\";\"Payrin-Augmontel\";\"main\"\n\"2988292\";\"Payrin\";\"other\"\n\"2988301\";\"Payns\";\"main\"\n\"2988305\";\"Pavilly\";\"main\"\n\"2988309\";\"Pavie\";\"main\"\n\"2988309\";\"Padie\";\"other\"\n\"2988323\";\"Paulx\";\"main\"\n\"2988323\";\"Palud\";\"other\"\n\"2988339\";\"Paulhan\";\"main\"\n\"2988340\";\"Paulhaguet\";\"main\"\n\"2988345\";\"Paulhac\";\"main\"\n\"2988350\";\"Pauillac\";\"main\"\n\"2988350\";\"Paulhac\";\"other\"\n\"2988358\";\"Pau\";\"main\"\n\"2988358\";\"Paue\";\"other\"\n\"2988358\";\"po\";\"other\"\n\"2988358\";\"Пау\";\"other\"\n\"2988358\";\"ポー\";\"other\"\n\"2988374\";\"Patay\";\"main\"\n\"2988393\";\"Passy\";\"main\"\n\"2988421\";\"Pasly\";\"main\"\n\"2988422\";\"Paslières\";\"main\"\n\"2988422\";\"Paslieres\";\"ascii\"\n\"2988447\";\"Parthenay\";\"main\"\n\"2988475\";\"Paron\";\"main\"\n\"2988490\";\"Parmain\";\"main\"\n\"2988507\";\"Paris\";\"main\"\n\"2988507\";\"75091\";\"other\"\n\"2988507\";\"Lungsod ng Paris\";\"other\"\n\"2988507\";\"Lutece\";\"other\"\n\"2988507\";\"Lutetia Parisorum\";\"other\"\n\"2988507\";\"PAR\";\"other\"\n\"2988507\";\"Pa-ri\";\"other\"\n\"2988507\";\"Paarys\";\"other\"\n\"2988507\";\"Paname\";\"other\"\n\"2988507\";\"Pantruche\";\"other\"\n\"2988507\";\"Paraeis\";\"other\"\n\"2988507\";\"Paras\";\"other\"\n\"2988507\";\"Pari\";\"other\"\n\"2988507\";\"Paries\";\"other\"\n\"2988507\";\"Pariggi\";\"other\"\n\"2988507\";\"Parigi\";\"other\"\n\"2988507\";\"Pariis\";\"other\"\n\"2988507\";\"Pariisi\";\"other\"\n\"2988507\";\"Parijs\";\"other\"\n\"2988507\";\"Paris - Paris\";\"other\"\n\"2988507\";\"Parisi\";\"other\"\n\"2988507\";\"Pariz\";\"other\"\n\"2988507\";\"Parize\";\"other\"\n\"2988507\";\"Parizh\";\"other\"\n\"2988507\";\"Parizo\";\"other\"\n\"2988507\";\"Parizs\";\"other\"\n\"2988507\";\"Parys\";\"other\"\n\"2988507\";\"Paryz\";\"other\"\n\"2988507\";\"Paryzh\";\"other\"\n\"2988507\";\"Paryzius\";\"other\"\n\"2988507\";\"Paryż\";\"other\"\n\"2988507\";\"Paryžius\";\"other\"\n\"2988507\";\"Paräis\";\"other\"\n\"2988507\";\"París\";\"other\"\n\"2988507\";\"París - Paris\";\"other\"\n\"2988507\";\"Paríž\";\"other\"\n\"2988507\";\"Parîs\";\"other\"\n\"2988507\";\"Parīze\";\"other\"\n\"2988507\";\"Paříž\";\"other\"\n\"2988507\";\"Páras\";\"other\"\n\"2988507\";\"Párizs\";\"other\"\n\"2988507\";\"Ville-Lumiere\";\"other\"\n\"2988507\";\"Ville-Lumière\";\"other\"\n\"2988507\";\"ba li\";\"other\"\n\"2988507\";\"barys\";\"other\"\n\"2988507\";\"pali si\";\"other\"\n\"2988507\";\"pari\";\"other\"\n\"2988507\";\"paris\";\"other\"\n\"2988507\";\"parys\";\"other\"\n\"2988507\";\"paryzh\";\"other\"\n\"2988507\";\"perisa\";\"other\"\n\"2988507\";\"prys\";\"other\"\n\"2988507\";\"pryz\";\"other\"\n\"2988507\";\"pyaris\";\"other\"\n\"2988507\";\"pyrs\";\"other\"\n\"2988507\";\"Παρίσι\";\"other\"\n\"2988507\";\"Париж\";\"other\"\n\"2988507\";\"Париз\";\"other\"\n\"2988507\";\"Парыж\";\"other\"\n\"2988507\";\"Փարիզ\";\"other\"\n\"2988507\";\"פריז\";\"other\"\n\"2988507\";\"باريس\";\"other\"\n\"2988507\";\"پارىژ\";\"other\"\n\"2988507\";\"پاریس\";\"other\"\n\"2988507\";\"پیرس\";\"other\"\n\"2988507\";\"ܦܪܝܣ\";\"other\"\n\"2988507\";\"पॅरिस\";\"other\"\n\"2988507\";\"பாரிஸ்\";\"other\"\n\"2988507\";\"ಪ್ಯಾರಿಸ್\";\"other\"\n\"2988507\";\"ปารีส\";\"other\"\n\"2988507\";\"პარიზი\";\"other\"\n\"2988507\";\"ፓሪስ\";\"other\"\n\"2988507\";\"パリ\";\"other\"\n\"2988507\";\"巴黎\";\"other\"\n\"2988507\";\"파리 시\";\"other\"\n\"2988511\";\"Parigny\";\"main\"\n\"2988517\";\"Parigné-le-Pôlin\";\"main\"\n\"2988517\";\"Parigne-le-Polin\";\"ascii\"\n\"2988517\";\"Parigne\";\"other\"\n\"2988517\";\"Parigné\";\"other\"\n\"2988518\";\"Parigné\";\"main\"\n\"2988518\";\"Parigne\";\"ascii\"\n\"2988518\";\"Parinieg\";\"other\"\n\"2988523\";\"Pargny-sur-Saulx\";\"main\"\n\"2988523\";\"Pargny\";\"other\"\n\"2988542\";\"Parentis-en-Born\";\"main\"\n\"2988542\";\"Parentis\";\"other\"\n\"2988548\";\"Parempuyre\";\"main\"\n\"2988572\";\"Parcé-sur-Sarthe\";\"main\"\n\"2988572\";\"Parce-sur-Sarthe\";\"ascii\"\n\"2988572\";\"Parce\";\"other\"\n\"2988572\";\"Parcé\";\"other\"\n\"2988576\";\"Parçay-Meslay\";\"main\"\n\"2988576\";\"Parcay-Meslay\";\"ascii\"\n\"2988577\";\"Parçay-les-Pins\";\"main\"\n\"2988577\";\"Parcay-les-Pins\";\"ascii\"\n\"2988577\";\"Parcay\";\"other\"\n\"2988577\";\"Parçay\";\"other\"\n\"2988589\";\"Paray-Vieille-Poste\";\"main\"\n\"2988589\";\"Paray\";\"other\"\n\"2988589\";\"Paray-Vielly\";\"other\"\n\"2988592\";\"Paray-le-Monial\";\"main\"\n\"2988592\";\"Paray\";\"other\"\n\"2988609\";\"Paradou\";\"main\"\n\"2988609\";\"Le Paradou\";\"other\"\n\"2988621\";\"Pantin\";\"main\"\n\"2988621\";\"Пантин\";\"other\"\n\"2988632\";\"Pannes\";\"main\"\n\"2988634\";\"Pannecé\";\"main\"\n\"2988634\";\"Pannece\";\"ascii\"\n\"2988634\";\"Panezeg\";\"other\"\n\"2988637\";\"Panissières\";\"main\"\n\"2988637\";\"Panissieres\";\"ascii\"\n\"2988656\";\"Pancé\";\"main\"\n\"2988656\";\"Pance\";\"ascii\"\n\"2988656\";\"Pantieg\";\"other\"\n\"2988657\";\"Panazol\";\"main\"\n\"2988663\";\"Pamproux\";\"main\"\n\"2988670\";\"Pamiers\";\"main\"\n\"2988670\";\"Pamias\";\"other\"\n\"2988670\";\"Pamies\";\"other\"\n\"2988670\";\"Pàmias\";\"other\"\n\"2988670\";\"Pàmies\";\"other\"\n\"2988670\";\"pamie\";\"other\"\n\"2988670\";\"パミエ\";\"other\"\n\"2988722\";\"Palinges\";\"main\"\n\"2988742\";\"Palavas-les-Flots\";\"main\"\n\"2988742\";\"Palavas\";\"other\"\n\"2988743\";\"Palau-del-Vidre\";\"main\"\n\"2988743\";\"Palau\";\"other\"\n\"2988756\";\"Palaja\";\"main\"\n\"2988758\";\"Palaiseau\";\"main\"\n\"2988758\";\"Paliseau\";\"other\"\n\"2988794\";\"Paimpont\";\"main\"\n\"2988794\";\"Pempont\";\"other\"\n\"2988796\";\"Paimpol\";\"main\"\n\"2988796\";\"Pempoull\";\"other\"\n\"2988797\";\"Paimbœuf\";\"main\"\n\"2988797\";\"Paimboeuf\";\"ascii\"\n\"2988797\";\"Pembo\";\"other\"\n\"2988797\";\"Saint-Paimboeuf\";\"other\"\n\"2988806\";\"Paillet\";\"main\"\n\"2988823\";\"Pagny-sur-Moselle\";\"main\"\n\"2988823\";\"Pagny\";\"other\"\n\"2988848\";\"Pacy-sur-Eure\";\"main\"\n\"2988848\";\"Pacy\";\"other\"\n\"2988853\";\"Pacé\";\"main\"\n\"2988853\";\"Pace\";\"ascii\"\n\"2988853\";\"Pazieg\";\"other\"\n\"2988856\";\"Pabu\";\"main\"\n\"2988859\";\"Ozouer-le-Voulgis\";\"main\"\n\"2988859\";\"Ozouer\";\"other\"\n\"2988867\";\"Ozoir-la-Ferrière\";\"main\"\n\"2988867\";\"Ozoir-la-Ferriere\";\"ascii\"\n\"2988867\";\"Ozoir\";\"other\"\n\"2988867\";\"Ozoir-la-Raison\";\"other\"\n\"2988884\";\"Oytier-Saint-Oblas\";\"main\"\n\"2988884\";\"Oytier\";\"other\"\n\"2988888\";\"Oyonnax\";\"main\"\n\"2988888\";\"Oyannax\";\"other\"\n\"2988893\";\"Oye-Plage\";\"main\"\n\"2988893\";\"Oye\";\"other\"\n\"2988902\";\"Ouzouer-sur-Trézée\";\"main\"\n\"2988902\";\"Ouzouer-sur-Trezee\";\"ascii\"\n\"2988902\";\"Ouzouer\";\"other\"\n\"2988903\";\"Ouzouer-sur-Loire\";\"main\"\n\"2988905\";\"Ouzouer-le-Marché\";\"main\"\n\"2988905\";\"Ouzouer-le-Marche\";\"ascii\"\n\"2988905\";\"Ouzouer\";\"other\"\n\"2988922\";\"Ouveillan\";\"main\"\n\"2988936\";\"Outreau\";\"main\"\n\"2988942\";\"Outarville\";\"main\"\n\"2988956\";\"Ousse\";\"main\"\n\"2988958\";\"Ourville-en-Caux\";\"main\"\n\"2988958\";\"Ourville\";\"other\"\n\"2988965\";\"Oursbelille\";\"main\"\n\"2988971\";\"Ouroux-sur-Saône\";\"main\"\n\"2988971\";\"Ouroux-sur-Saone\";\"ascii\"\n\"2988971\";\"Ouroux\";\"other\"\n\"2988998\";\"Oullins\";\"main\"\n\"2989001\";\"Oulins\";\"main\"\n\"2989013\";\"Ouistreham\";\"main\"\n\"2989013\";\"Ouistrehain\";\"other\"\n\"2989036\";\"Ouges\";\"main\"\n\"2989058\";\"Oudon\";\"main\"\n\"2989065\";\"Oucques\";\"main\"\n\"2989065\";\"Oncques\";\"other\"\n\"2989068\";\"Ouches\";\"main\"\n\"2989082\";\"Ottrott\";\"main\"\n\"2989084\";\"Ottmarsheim\";\"main\"\n\"2989085\";\"Otterswiller\";\"main\"\n\"2989087\";\"Ottange\";\"main\"\n\"2989088\";\"Othis\";\"main\"\n\"2989093\";\"Ostwald\";\"main\"\n\"2989094\";\"Ostricourt\";\"main\"\n\"2989100\";\"Ostheim\";\"main\"\n\"2989108\";\"Ossun\";\"main\"\n\"2989108\";\"Beauvais-de-Preau\";\"other\"\n\"2989108\";\"Beauvais-de-Préau\";\"other\"\n\"2989108\";\"Mardin\";\"other\"\n\"2989119\";\"Osséja\";\"main\"\n\"2989119\";\"Osseja\";\"ascii\"\n\"2989119\";\"Oceja\";\"other\"\n\"2989122\";\"Ossé\";\"main\"\n\"2989122\";\"Osse\";\"ascii\"\n\"2989122\";\"Oc'heg\";\"other\"\n\"2989130\";\"Osny\";\"main\"\n\"2989170\";\"Orvault\";\"main\"\n\"2989170\";\"Orvez\";\"other\"\n\"2989170\";\"Orvo\";\"other\"\n\"2989170\";\"Орво\";\"other\"\n\"2989174\";\"Orval\";\"main\"\n\"2989187\";\"Orthez\";\"main\"\n\"2989187\";\"Orthe\";\"other\"\n\"2989193\";\"Ortaffa\";\"main\"\n\"2989193\";\"Ortafa\";\"other\"\n\"2989193\";\"Ortafà\";\"other\"\n\"2989204\";\"Orsay\";\"main\"\n\"2989208\";\"Orsan\";\"main\"\n\"2989211\";\"Orry-la-Ville\";\"main\"\n\"2989211\";\"Orry\";\"other\"\n\"2989241\";\"Ornex\";\"main\"\n\"2989252\";\"Ornans\";\"main\"\n\"2989253\";\"Ornaisons\";\"main\"\n\"2989263\";\"Ormoy\";\"main\"\n\"2989271\";\"Ormesson-sur-Marne\";\"main\"\n\"2989271\";\"Ormesson\";\"other\"\n\"2989281\";\"Ormes\";\"main\"\n\"2989297\";\"Orly\";\"main\"\n\"2989301\";\"Orliénas\";\"main\"\n\"2989301\";\"Orlienas\";\"ascii\"\n\"2989308\";\"Orleix\";\"main\"\n\"2989309\";\"Orléat\";\"main\"\n\"2989309\";\"Orleat\";\"ascii\"\n\"2989317\";\"Orléans\";\"main\"\n\"2989317\";\"Orleans\";\"ascii\"\n\"2989317\";\"Aurelia\";\"other\"\n\"2989317\";\"Orleaes\";\"other\"\n\"2989317\";\"Orlean\";\"other\"\n\"2989317\";\"Orleans La Source\";\"other\"\n\"2989317\";\"Orleáns\";\"other\"\n\"2989317\";\"Orleães\";\"other\"\n\"2989317\";\"Orlèans\";\"other\"\n\"2989317\";\"Orléans La Source\";\"other\"\n\"2989317\";\"ao er liang\";\"other\"\n\"2989317\";\"oleulleang\";\"other\"\n\"2989317\";\"orurean\";\"other\"\n\"2989317\";\"Орлеан\";\"other\"\n\"2989317\";\"אורליאן\";\"other\"\n\"2989317\";\"オルレアン\";\"other\"\n\"2989317\";\"奥尔良\";\"other\"\n\"2989317\";\"오를레앙\";\"other\"\n\"2989325\";\"Orival\";\"main\"\n\"2989340\";\"Origny-Sainte-Benoite\";\"main\"\n\"2989340\";\"Origny\";\"other\"\n\"2989340\";\"Origny-sur-Oise\";\"other\"\n\"2989344\";\"Origny-en-Thiérache\";\"main\"\n\"2989344\";\"Origny-en-Thierache\";\"ascii\"\n\"2989344\";\"Origny\";\"other\"\n\"2989344\";\"Origny-sur-le-Thon\";\"other\"\n\"2989359\";\"Orgueil\";\"main\"\n\"2989362\";\"Orgon\";\"main\"\n\"2989372\";\"Orgeval\";\"main\"\n\"2989376\";\"Orgerus\";\"main\"\n\"2989378\";\"Orgères-en-Beauce\";\"main\"\n\"2989378\";\"Orgeres-en-Beauce\";\"ascii\"\n\"2989378\";\"Orgeres\";\"other\"\n\"2989378\";\"Orgères\";\"other\"\n\"2989382\";\"Orgères\";\"main\"\n\"2989382\";\"Orgeres\";\"ascii\"\n\"2989382\";\"An Heizeg\";\"other\"\n\"2989385\";\"Orgelet\";\"main\"\n\"2989417\";\"Orcines\";\"main\"\n\"2989422\";\"Orchies\";\"main\"\n\"2989425\";\"Orchamps-Vennes\";\"main\"\n\"2989425\";\"Orchamps\";\"other\"\n\"2989426\";\"Orchamps\";\"main\"\n\"2989430\";\"Orcet\";\"main\"\n\"2989441\";\"Orbey\";\"main\"\n\"2989445\";\"Orbec\";\"main\"\n\"2989445\";\"Orbec-en-Auge\";\"other\"\n\"2989460\";\"Orange\";\"main\"\n\"2989460\";\"Arauzion\";\"other\"\n\"2989460\";\"Aurenja\";\"other\"\n\"2989460\";\"Oranzas\";\"other\"\n\"2989460\";\"Oranžas\";\"other\"\n\"2989460\";\"oranju\";\"other\"\n\"2989460\";\"Араузион\";\"other\"\n\"2989460\";\"オランジュ\";\"other\"\n\"2989461\";\"Oraison\";\"main\"\n\"2989466\";\"Oradour-sur-Vayres\";\"main\"\n\"2989466\";\"Oradour\";\"other\"\n\"2989466\";\"Oradour-sur-Vavres\";\"other\"\n\"2989466\";\"Quardor\";\"other\"\n\"2989467\";\"Oradour-sur-Glane\";\"main\"\n\"2989467\";\"Matanza de Oradour-sur-Glane\";\"other\"\n\"2989467\";\"Orador de Glana\";\"other\"\n\"2989467\";\"Oradour\";\"other\"\n\"2989467\";\"Oradur-sjur-Glan\";\"other\"\n\"2989467\";\"Roche-sur-Graine\";\"other\"\n\"2989467\";\"Орадур-сюр-Глан\";\"other\"\n\"2989467\";\"אורדור-סור-גלאן\";\"other\"\n\"2989467\";\"オラドゥール・シュル・グラヌ\";\"other\"\n\"2989484\";\"Oppède\";\"main\"\n\"2989484\";\"Oppede\";\"ascii\"\n\"2989484\";\"Oppede-les-Poulivets\";\"other\"\n\"2989484\";\"Oppède-les-Poulivets\";\"other\"\n\"2989486\";\"Opio\";\"main\"\n\"2989495\";\"Onzain\";\"main\"\n\"2989501\";\"Ons-en-Bray\";\"main\"\n\"2989501\";\"Ons\";\"other\"\n\"2989501\";\"Onsembray\";\"other\"\n\"2989506\";\"Onnaing\";\"main\"\n\"2989519\";\"Onesse-et-Laharie\";\"main\"\n\"2989519\";\"Onesse\";\"other\"\n\"2989525\";\"Ondres\";\"main\"\n\"2989526\";\"Ondes\";\"main\"\n\"2989545\";\"Omissy\";\"main\"\n\"2989569\";\"Oloron-Sainte-Marie\";\"main\"\n\"2989569\";\"Auloron\";\"other\"\n\"2989569\";\"Maratide\";\"other\"\n\"2989569\";\"Oloron\";\"other\"\n\"2989569\";\"Oloron Ste Marie\";\"other\"\n\"2989569\";\"Redoute-Maritime\";\"other\"\n\"2989569\";\"Redoute-de-l'Agly\";\"other\"\n\"2989571\";\"Olonzac\";\"main\"\n\"2989572\";\"Olonne-sur-Mer\";\"main\"\n\"2989572\";\"Olonne\";\"other\"\n\"2989579\";\"Olmeto\";\"main\"\n\"2989590\";\"Ollioules\";\"main\"\n\"2989601\";\"Ollainville\";\"main\"\n\"2989611\";\"Olivet\";\"main\"\n\"2989611\";\"Oliva\";\"other\"\n\"2989611\";\"Олива\";\"other\"\n\"2989625\";\"Oletta\";\"main\"\n\"2989629\";\"Olemps\";\"main\"\n\"2989640\";\"Oisy-le-Verger\";\"main\"\n\"2989640\";\"Oisy\";\"other\"\n\"2989645\";\"Oissery\";\"main\"\n\"2989646\";\"Oissel\";\"main\"\n\"2989646\";\"Oissel-sur-Seine\";\"other\"\n\"2989648\";\"Oisseau\";\"main\"\n\"2989652\";\"Oisemont\";\"main\"\n\"2989670\";\"Oinville-sur-Montcient\";\"main\"\n\"2989670\";\"Oinville\";\"other\"\n\"2989680\";\"Oignies\";\"main\"\n\"2989687\";\"Ohlungen\";\"main\"\n\"2989701\";\"Ognes\";\"main\"\n\"2989708\";\"Ogeu-les-Bains\";\"main\"\n\"2989708\";\"Ogeu\";\"other\"\n\"2989715\";\"Offranville\";\"main\"\n\"2989723\";\"Offenheim\";\"main\"\n\"2989725\";\"Offemont\";\"main\"\n\"2989727\";\"Oeyreluy\";\"main\"\n\"2989736\";\"Œting\";\"main\"\n\"2989736\";\"OEting\";\"ascii\"\n\"2989737\";\"Oermingen\";\"main\"\n\"2989737\";\"Ormingen\";\"other\"\n\"2989742\";\"Odos\";\"main\"\n\"2989747\";\"Oderen\";\"main\"\n\"2989753\";\"Octeville-sur-Mer\";\"main\"\n\"2989753\";\"Octeville\";\"other\"\n\"2989755\";\"Octeville\";\"main\"\n\"2989785\";\"Objat\";\"main\"\n\"2989792\";\"Oberschaeffolsheim\";\"main\"\n\"2989796\";\"Obernai\";\"main\"\n\"2989799\";\"Obermodern-Zutzendorf\";\"main\"\n\"2989802\";\"Oberhoffen-sur-Moder\";\"main\"\n\"2989802\";\"Oberhofen\";\"other\"\n\"2989802\";\"Oberhoffen\";\"other\"\n\"2989802\";\"Oberhosen\";\"other\"\n\"2989804\";\"Oberhergheim\";\"main\"\n\"2989805\";\"Oberhausbergen\";\"main\"\n\"2989806\";\"Oberhaslach\";\"main\"\n\"2989814\";\"Oberbronn\";\"main\"\n\"2989816\";\"Betschdorf\";\"main\"\n\"2989816\";\"Oberbetschdorf\";\"other\"\n\"2989817\";\"Obenheim\";\"main\"\n\"2989819\";\"Nyons\";\"main\"\n\"2989819\";\"Niom\";\"other\"\n\"2989820\";\"Nyoiseau\";\"main\"\n\"2989837\";\"Nuits-Saint-Georges\";\"main\"\n\"2989837\";\"Nuits\";\"other\"\n\"2989846\";\"Nuillé-sur-Vicoin\";\"main\"\n\"2989846\";\"Nuille-sur-Vicoin\";\"ascii\"\n\"2989846\";\"Nuille\";\"other\"\n\"2989846\";\"Nuillé\";\"other\"\n\"2989851\";\"Nueil-sur-Layon\";\"main\"\n\"2989851\";\"Nueil\";\"other\"\n\"2989852\";\"Nueil-les-Aubiers\";\"main\"\n\"2989852\";\"Nueil\";\"other\"\n\"2989860\";\"Nuaillé\";\"main\"\n\"2989860\";\"Nuaille\";\"ascii\"\n\"2989874\";\"Nozay\";\"main\"\n\"2989876\";\"Nozay\";\"main\"\n\"2989876\";\"Nozieg\";\"other\"\n\"2989877\";\"Noyon\";\"main\"\n\"2989877\";\"Nuajon\";\"other\"\n\"2989877\";\"Nyon\";\"other\"\n\"2989877\";\"Нуайон\";\"other\"\n\"2989879\";\"Noyers-sur-Cher\";\"main\"\n\"2989879\";\"Noyers\";\"other\"\n\"2989890\";\"Noyen-sur-Sarthe\";\"main\"\n\"2989890\";\"Noyen\";\"other\"\n\"2989897\";\"Noyelles-sous-Lens\";\"main\"\n\"2989897\";\"Noyelles\";\"other\"\n\"2989899\";\"Noyelles-lès-Vermelles\";\"main\"\n\"2989899\";\"Noyelles-les-Vermelles\";\"ascii\"\n\"2989899\";\"Noyelles\";\"other\"\n\"2989899\";\"Noyelles-lez Vermelles\";\"other\"\n\"2989901\";\"Noyelles-Godault\";\"main\"\n\"2989906\";\"Noyarey\";\"main\"\n\"2989909\";\"Noyant-la-Gravoyère\";\"main\"\n\"2989909\";\"Noyant-la-Gravoyere\";\"ascii\"\n\"2989909\";\"Noyant\";\"other\"\n\"2989913\";\"Noyant\";\"main\"\n\"2989913\";\"Noiant\";\"other\"\n\"2989913\";\"Noyant-sous-le-Lude\";\"other\"\n\"2989914\";\"Noyal-sur-Vilaine\";\"main\"\n\"2989914\";\"Noal-ar-Gwilen\";\"other\"\n\"2989914\";\"Noyal\";\"other\"\n\"2989918\";\"Noyal-Pontivy\";\"main\"\n\"2989918\";\"Noal-Pondivi\";\"other\"\n\"2989920\";\"Noyal-Muzillac\";\"main\"\n\"2989920\";\"Noal-Muzilheg\";\"other\"\n\"2989929\";\"Novillars\";\"main\"\n\"2989935\";\"Noves\";\"main\"\n\"2989938\";\"Novéant-sur-Moselle\";\"main\"\n\"2989938\";\"Noveant-sur-Moselle\";\"ascii\"\n\"2989938\";\"Noveant\";\"other\"\n\"2989938\";\"Novéant\";\"other\"\n\"2989941\";\"Novalaise\";\"main\"\n\"2989943\";\"Nouzonville\";\"main\"\n\"2989943\";\"Nouzon\";\"other\"\n\"2989945\";\"Nouzilly\";\"main\"\n\"2989952\";\"Nouvoitou\";\"main\"\n\"2989952\";\"Neveztell\";\"other\"\n\"2989953\";\"Nouvion-sur-Meuse\";\"main\"\n\"2989953\";\"Nouvion\";\"other\"\n\"2989957\";\"Nouvion\";\"main\"\n\"2989957\";\"Nouvion-en-Ponthieu\";\"other\"\n\"2989970\";\"Nousty\";\"main\"\n\"2990007\";\"Nouan-le-Fuzelier\";\"main\"\n\"2990007\";\"Nouan\";\"other\"\n\"2990012\";\"Nouaillé-Maupertuis\";\"main\"\n\"2990012\";\"Nouaille-Maupertuis\";\"ascii\"\n\"2990012\";\"Nouaille\";\"other\"\n\"2990012\";\"Nouaillé\";\"other\"\n\"2990039\";\"Notre-Dame-des-Landes\";\"main\"\n\"2990039\";\"Kernitron-al-Lann\";\"other\"\n\"2990039\";\"Notre-Dame\";\"other\"\n\"2990042\";\"Notre-Dame-de-Sanilhac\";\"main\"\n\"2990042\";\"Notre-Dame\";\"other\"\n\"2990043\";\"Notre-Dame-de-Riez\";\"main\"\n\"2990043\";\"Riez\";\"other\"\n\"2990045\";\"Notre-Dame-de-Monts\";\"main\"\n\"2990045\";\"Notre-Dame\";\"other\"\n\"2990047\";\"Notre-Dame-de-Mésage\";\"main\"\n\"2990047\";\"Notre-Dame-de-Mesage\";\"ascii\"\n\"2990056\";\"Notre-Dame-de-Gravenchon\";\"main\"\n\"2990064\";\"Notre-Dame-de-Bondeville\";\"main\"\n\"2990064\";\"Notre-Dame\";\"other\"\n\"2990080\";\"Nostang\";\"main\"\n\"2990080\";\"Lostenk\";\"other\"\n\"2990085\";\"Nort-sur-Erdre\";\"main\"\n\"2990085\";\"Enorzh\";\"other\"\n\"2990085\";\"Nort\";\"other\"\n\"2990087\";\"Nortkerque\";\"main\"\n\"2990090\";\"Norroy-lès-Pont-à-Mousson\";\"main\"\n\"2990090\";\"Norroy-les-Pont-a-Mousson\";\"ascii\"\n\"2990090\";\"Norroy\";\"other\"\n\"2990096\";\"Norrent-Fontes\";\"main\"\n\"2990107\";\"Normanville\";\"main\"\n\"2990120\";\"Nordhouse\";\"main\"\n\"2990120\";\"Nordhausen\";\"other\"\n\"2990140\";\"Nontron\";\"main\"\n\"2990158\";\"Nonancourt\";\"main\"\n\"2990162\";\"Nommay\";\"main\"\n\"2990163\";\"Nomexy\";\"main\"\n\"2990164\";\"Nomeny\";\"main\"\n\"2990167\";\"Nomain\";\"main\"\n\"2990177\";\"Nolay\";\"main\"\n\"2990183\";\"Noizay\";\"main\"\n\"2990185\";\"Noisy-sur-École\";\"main\"\n\"2990185\";\"Noisy-sur-Ecole\";\"ascii\"\n\"2990185\";\"Noisy\";\"other\"\n\"2990187\";\"Noisy-le-Sec\";\"main\"\n\"2990187\";\"Noisy\";\"other\"\n\"2990187\";\"Shumnaja-le-Sek\";\"other\"\n\"2990187\";\"Шумная-ле-Сек\";\"other\"\n\"2990188\";\"Noisy-le-Roi\";\"main\"\n\"2990188\";\"Noisy\";\"other\"\n\"2990189\";\"Noisy-le-Grand\";\"main\"\n\"2990189\";\"Noisy\";\"other\"\n\"2990189\";\"Shumnaja-le-Gran\";\"other\"\n\"2990189\";\"Шумная-ле-Гран\";\"other\"\n\"2990192\";\"Noisiel\";\"main\"\n\"2990195\";\"Noiseau\";\"main\"\n\"2990214\";\"Noirétable\";\"main\"\n\"2990214\";\"Noiretable\";\"ascii\"\n\"2990240\";\"Nointot\";\"main\"\n\"2990247\";\"Noidans-lès-Vesoul\";\"main\"\n\"2990247\";\"Noidans-les-Vesoul\";\"ascii\"\n\"2990247\";\"Noidans\";\"other\"\n\"2990250\";\"Nohic\";\"main\"\n\"2990257\";\"Nohanent\";\"main\"\n\"2990261\";\"Nogent-sur-Vernisson\";\"main\"\n\"2990261\";\"Nogent\";\"other\"\n\"2990263\";\"Nogent-sur-Seine\";\"main\"\n\"2990263\";\"Nogent\";\"other\"\n\"2990264\";\"Nogent-sur-Oise\";\"main\"\n\"2990264\";\"Nogent\";\"other\"\n\"2990265\";\"Nogent-sur-Marne\";\"main\"\n\"2990265\";\"Nogent\";\"other\"\n\"2990265\";\"Nozhan-sjur-Marn\";\"other\"\n\"2990265\";\"Ножан-сюр-Марн\";\"other\"\n\"2990272\";\"Nogent-le-Rotrou\";\"main\"\n\"2990272\";\"Nogent\";\"other\"\n\"2990272\";\"Nogent-le-Republicain\";\"other\"\n\"2990272\";\"Nogent-le-Républicain\";\"other\"\n\"2990273\";\"Nogent-le-Roi\";\"main\"\n\"2990273\";\"Nogent\";\"other\"\n\"2990273\";\"Nogent-Roullebois\";\"other\"\n\"2990274\";\"Nogent-le-Phaye\";\"main\"\n\"2990274\";\"Nogent\";\"other\"\n\"2990276\";\"Nogent-le-Bas\";\"main\"\n\"2990276\";\"Nogent-Haute-Marne\";\"other\"\n\"2990281\";\"Nogentel\";\"main\"\n\"2990284\";\"Nogaro\";\"main\"\n\"2990287\";\"Nœux-les-Mines\";\"main\"\n\"2990287\";\"Noeux-les-Mines\";\"ascii\"\n\"2990294\";\"Noé\";\"main\"\n\"2990294\";\"Noe\";\"ascii\"\n\"2990307\";\"Noailles\";\"main\"\n\"2990307\";\"Longvillers-Boncourt\";\"other\"\n\"2990311\";\"Noaillan\";\"main\"\n\"2990329\";\"Nivolas-Vermelle\";\"main\"\n\"2990331\";\"Nivillac\";\"main\"\n\"2990331\";\"Nivilieg\";\"other\"\n\"2990344\";\"Nissan-lez-Enserune\";\"main\"\n\"2990344\";\"Nissan\";\"other\"\n\"2990355\";\"Niort\";\"main\"\n\"2990355\";\"nioru\";\"other\"\n\"2990355\";\"ニオール\";\"other\"\n\"2990363\";\"Nîmes\";\"main\"\n\"2990363\";\"Nimes\";\"ascii\"\n\"2990363\";\"Nemausus\";\"other\"\n\"2990363\";\"Nim\";\"other\"\n\"2990363\";\"Nismes\";\"other\"\n\"2990363\";\"ni mu\";\"other\"\n\"2990363\";\"nimu\";\"other\"\n\"2990363\";\"nym\";\"other\"\n\"2990363\";\"Ним\";\"other\"\n\"2990363\";\"נים\";\"other\"\n\"2990363\";\"ニーム\";\"other\"\n\"2990363\";\"尼姆\";\"other\"\n\"2990364\";\"Nilvange\";\"main\"\n\"2990367\";\"Niherne\";\"main\"\n\"2990369\";\"Niévroz\";\"main\"\n\"2990369\";\"Nievroz\";\"ascii\"\n\"2990377\";\"Nieul-sur-Mer\";\"main\"\n\"2990377\";\"Nieul\";\"other\"\n\"2990381\";\"Nieul-lès-Saintes\";\"main\"\n\"2990381\";\"Nieul-les-Saintes\";\"ascii\"\n\"2990381\";\"Nieul\";\"other\"\n\"2990381\";\"Nieul-les-Xantes\";\"other\"\n\"2990382\";\"Nieul-le-Dolent\";\"main\"\n\"2990382\";\"Nieul\";\"other\"\n\"2990384\";\"Nieul\";\"main\"\n\"2990392\";\"Nieppe\";\"main\"\n\"2990408\";\"Niederschaeffolsheim\";\"main\"\n\"2990408\";\"Nieder Scheffelscheim\";\"other\"\n\"2990408\";\"Niederschaffolsheim\";\"other\"\n\"2990408\";\"Niederschäffolsheim\";\"other\"\n\"2990410\";\"Niedernai\";\"main\"\n\"2990416\";\"Niederhausbergen\";\"main\"\n\"2990417\";\"Niederhaslach\";\"main\"\n\"2990420\";\"Niederbronn-les-Bains\";\"main\"\n\"2990420\";\"Bad Niederbronn\";\"other\"\n\"2990420\";\"Niederbronn\";\"other\"\n\"2990425\";\"Niderviller\";\"main\"\n\"2990440\";\"Nice\";\"main\"\n\"2990440\";\"Nica\";\"other\"\n\"2990440\";\"Nicaea\";\"other\"\n\"2990440\";\"Nicca\";\"other\"\n\"2990440\";\"Nicea\";\"other\"\n\"2990440\";\"Nico\";\"other\"\n\"2990440\";\"Nisa\";\"other\"\n\"2990440\";\"Niza\";\"other\"\n\"2990440\";\"Nizza\";\"other\"\n\"2990440\";\"Niça\";\"other\"\n\"2990440\";\"ni si\";\"other\"\n\"2990440\";\"nisa\";\"other\"\n\"2990440\";\"nisu\";\"other\"\n\"2990440\";\"nitsa\";\"other\"\n\"2990440\";\"nys\";\"other\"\n\"2990440\";\"Ница\";\"other\"\n\"2990440\";\"Ницца\";\"other\"\n\"2990440\";\"ניס\";\"other\"\n\"2990440\";\"نيس\";\"other\"\n\"2990440\";\"नीस\";\"other\"\n\"2990440\";\"ნიცა\";\"other\"\n\"2990440\";\"ニース\";\"other\"\n\"2990440\";\"尼斯\";\"other\"\n\"2990460\";\"Neydens\";\"main\"\n\"2990463\";\"Nexon\";\"main\"\n\"2990466\";\"Nevoy\";\"main\"\n\"2990466\";\"Nevey\";\"other\"\n\"2990468\";\"Néville\";\"main\"\n\"2990468\";\"Neville\";\"ascii\"\n\"2990469\";\"Névian\";\"main\"\n\"2990469\";\"Nevian\";\"ascii\"\n\"2990471\";\"Névez\";\"main\"\n\"2990471\";\"Nevez\";\"ascii\"\n\"2990474\";\"Nevers\";\"main\"\n\"2990474\";\"Never\";\"other\"\n\"2990474\";\"nuvu~eru\";\"other\"\n\"2990474\";\"Невер\";\"other\"\n\"2990474\";\"ヌヴェール\";\"other\"\n\"2990477\";\"Neuwiller-lès-Saverne\";\"main\"\n\"2990477\";\"Neuwiller-les-Saverne\";\"ascii\"\n\"2990477\";\"Neuwiller\";\"other\"\n\"2990479\";\"Neuvy-sur-Loire\";\"main\"\n\"2990479\";\"Neuvy\";\"other\"\n\"2990480\";\"Neuvy-sur-Barangeon\";\"main\"\n\"2990480\";\"Neuvy\";\"other\"\n\"2990481\";\"Neuvy-Sautour\";\"main\"\n\"2990481\";\"Neuvy\";\"other\"\n\"2990482\";\"Neuvy-Saint-Sépulchre\";\"main\"\n\"2990482\";\"Neuvy-Saint-Sepulchre\";\"ascii\"\n\"2990482\";\"Neuvy\";\"other\"\n\"2990482\";\"Neuvy-Saint-Sepulcre\";\"other\"\n\"2990482\";\"Neuvy-Saint-Sépulcre\";\"other\"\n\"2990482\";\"Neuvy-sur-Bouzanne\";\"other\"\n\"2990483\";\"Neuvy-Pailloux\";\"main\"\n\"2990483\";\"Neuvy\";\"other\"\n\"2990484\";\"Neuvy-le-Roi\";\"main\"\n\"2990484\";\"Neuvy\";\"other\"\n\"2990484\";\"Neuvy-la-Loi\";\"other\"\n\"2990498\";\"Neuvy\";\"main\"\n\"2990515\";\"Neuville-sur-Sarthe\";\"main\"\n\"2990515\";\"Neuville\";\"other\"\n\"2990516\";\"Neuville-sur-Saône\";\"main\"\n\"2990516\";\"Neuville-sur-Saone\";\"ascii\"\n\"2990516\";\"Marat-sur-Saone\";\"other\"\n\"2990516\";\"Marat-sur-Saône\";\"other\"\n\"2990516\";\"Neuville\";\"other\"\n\"2990518\";\"Neuville-sur-Oise\";\"main\"\n\"2990518\";\"Neuville\";\"other\"\n\"2990520\";\"Neuville-sur-Escaut\";\"main\"\n\"2990520\";\"Neuville\";\"other\"\n\"2990520\";\"Neuville-sur-l'Escaut\";\"other\"\n\"2990522\";\"Neuville-sur-Ain\";\"main\"\n\"2990522\";\"Neuville\";\"other\"\n\"2990526\";\"Neuville-Saint-Vaast\";\"main\"\n\"2990526\";\"Neuville\";\"other\"\n\"2990526\";\"Neuville-l'Egalite\";\"other\"\n\"2990526\";\"Neuville-l'Egalité\";\"other\"\n\"2990527\";\"Neuville-Saint-Rémy\";\"main\"\n\"2990527\";\"Neuville-Saint-Remy\";\"ascii\"\n\"2990527\";\"Neuville\";\"other\"\n\"2990527\";\"Neuvilly\";\"other\"\n\"2990539\";\"Neuville-les-Dames\";\"main\"\n\"2990539\";\"Neuville\";\"other\"\n\"2990539\";\"Neuville-sur-Renon\";\"other\"\n\"2990543\";\"Neuville-en-Ferrain\";\"main\"\n\"2990543\";\"Ferrain\";\"other\"\n\"2990543\";\"Neuville\";\"other\"\n\"2990543\";\"Neuville en Farram\";\"other\"\n\"2990546\";\"Neuville-de-Poitou\";\"main\"\n\"2990546\";\"Neuville\";\"other\"\n\"2990550\";\"Neuville-aux-Bois\";\"main\"\n\"2990550\";\"Neuville\";\"other\"\n\"2990574\";\"Neuvic-Entier\";\"main\"\n\"2990574\";\"Neuvic\";\"other\"\n\"2990575\";\"Neuvic\";\"main\"\n\"2990575\";\"Neuvic d'Ussel\";\"other\"\n\"2990576\";\"Neuvic\";\"main\"\n\"2990576\";\"Neuvic-sur-l'Isle\";\"other\"\n\"2990580\";\"Neuves-Maisons\";\"main\"\n\"2990587\";\"Neuvéglise\";\"main\"\n\"2990587\";\"Neuveglise\";\"ascii\"\n\"2990590\";\"Neuvecelle\";\"main\"\n\"2990596\";\"Neussargues-Moissac\";\"main\"\n\"2990596\";\"Neussargues\";\"other\"\n\"2990603\";\"Neung-sur-Beuvron\";\"main\"\n\"2990603\";\"Neung\";\"other\"\n\"2990606\";\"Neulliac\";\"main\"\n\"2990606\";\"Neulieg\";\"other\"\n\"2990608\";\"Neulise\";\"main\"\n\"2990608\";\"Neulize\";\"other\"\n\"2990611\";\"Neuilly-sur-Seine\";\"main\"\n\"2990611\";\"N'oj sjur Sen\";\"other\"\n\"2990611\";\"Neuilly\";\"other\"\n\"2990611\";\"nyuiishurusenu\";\"other\"\n\"2990611\";\"sai na he pan na yi\";\"other\"\n\"2990611\";\"Ньой сюр Сен\";\"other\"\n\"2990611\";\"ニュイイシュールセーヌ\";\"other\"\n\"2990611\";\"塞纳河畔纳伊\";\"other\"\n\"2990612\";\"Neuilly-sur-Marne\";\"main\"\n\"2990612\";\"Neji-sjur-Marn\";\"other\"\n\"2990612\";\"Neuilly\";\"other\"\n\"2990612\";\"Нейи-сюр-Марн\";\"other\"\n\"2990614\";\"Neuilly-sous-Clermont\";\"main\"\n\"2990614\";\"Neuilly\";\"other\"\n\"2990615\";\"Neuilly-Saint-Front\";\"main\"\n\"2990615\";\"Neuilly\";\"other\"\n\"2990615\";\"Neuilly-sur-Ourcq\";\"other\"\n\"2990616\";\"Neuilly-Plaisance\";\"main\"\n\"2990620\";\"Neuilly-lès-Dijon\";\"main\"\n\"2990620\";\"Neuilly-les-Dijon\";\"ascii\"\n\"2990620\";\"Neuilly\";\"other\"\n\"2990621\";\"Neuilly-le-Réal\";\"main\"\n\"2990621\";\"Neuilly-le-Real\";\"ascii\"\n\"2990621\";\"Neuilly\";\"other\"\n\"2990621\";\"Neuilly-sur-Sanne\";\"other\"\n\"2990628\";\"Neuilly-en-Thelle\";\"main\"\n\"2990628\";\"Neuilly\";\"other\"\n\"2990637\";\"Neuillé-Pont-Pierre\";\"main\"\n\"2990637\";\"Neuille-Pont-Pierre\";\"ascii\"\n\"2990637\";\"Neuille\";\"other\"\n\"2990637\";\"Neuillé\";\"other\"\n\"2990651\";\"Neufmoutiers-en-Brie\";\"main\"\n\"2990651\";\"Neufmoutiers\";\"other\"\n\"2990662\";\"Neufmanil\";\"main\"\n\"2990667\";\"Neufgrange\";\"main\"\n\"2990676\";\"Neufchef\";\"main\"\n\"2990676\";\"Neunhauser\";\"other\"\n\"2990676\";\"Neunhaüser\";\"other\"\n\"2990678\";\"Neufchâtel-Hardelot\";\"main\"\n\"2990678\";\"Neufchatel-Hardelot\";\"ascii\"\n\"2990678\";\"Neufchatel\";\"other\"\n\"2990678\";\"Neufchâtel\";\"other\"\n\"2990680\";\"Neufchâtel-en-Bray\";\"main\"\n\"2990680\";\"Neufchatel-en-Bray\";\"ascii\"\n\"2990680\";\"Neufchatel\";\"other\"\n\"2990680\";\"Neufchâtel\";\"other\"\n\"2990682\";\"Neufchâteau\";\"main\"\n\"2990682\";\"Neufchateau\";\"ascii\"\n\"2990683\";\"Neuf-Brisach\";\"main\"\n\"2990685\";\"Neuf-Berquin\";\"main\"\n\"2990727\";\"Nesmy\";\"main\"\n\"2990729\";\"Nesles-la-Vallée\";\"main\"\n\"2990729\";\"Nesles-la-Vallee\";\"ascii\"\n\"2990729\";\"Nesles\";\"other\"\n\"2990730\";\"Nesles-la-Montagne\";\"main\"\n\"2990730\";\"Nesles\";\"other\"\n\"2990733\";\"Nesles\";\"main\"\n\"2990741\";\"Nesle\";\"main\"\n\"2990751\";\"Nersac\";\"main\"\n\"2990758\";\"Nérondes\";\"main\"\n\"2990758\";\"Nerondes\";\"ascii\"\n\"2990767\";\"Néris-les-Bains\";\"main\"\n\"2990767\";\"Neris-les-Bains\";\"ascii\"\n\"2990767\";\"Neris\";\"other\"\n\"2990767\";\"Néris\";\"other\"\n\"2990777\";\"Nercillac\";\"main\"\n\"2990780\";\"Nérac\";\"main\"\n\"2990780\";\"Nerac\";\"ascii\"\n\"2990787\";\"Néoules\";\"main\"\n\"2990787\";\"Neoules\";\"ascii\"\n\"2990793\";\"Nemours\";\"main\"\n\"2990809\";\"Nègrepelisse\";\"main\"\n\"2990809\";\"Negrepelisse\";\"ascii\"\n\"2990831\";\"Nébian\";\"main\"\n\"2990831\";\"Nebian\";\"ascii\"\n\"2990835\";\"Neauphle-le-Château\";\"main\"\n\"2990835\";\"Neauphle-le-Chateau\";\"ascii\"\n\"2990835\";\"Neauphle\";\"other\"\n\"2990835\";\"Neauphle-la-Montagne\";\"other\"\n\"2990839\";\"Neaufles-Saint-Martin\";\"main\"\n\"2990839\";\"Neaufles\";\"other\"\n\"2990848\";\"Nazelles-Négron\";\"main\"\n\"2990848\";\"Nazelles-Negron\";\"ascii\"\n\"2990852\";\"Nay\";\"main\"\n\"2990860\";\"Naves\";\"main\"\n\"2990865\";\"Navenne\";\"main\"\n\"2990866\";\"Naveil\";\"main\"\n\"2990870\";\"Navarrenx\";\"main\"\n\"2990872\";\"Navailles-Angos\";\"main\"\n\"2990872\";\"Navailles\";\"other\"\n\"2990889\";\"Naucelles\";\"main\"\n\"2990890\";\"Naucelle\";\"main\"\n\"2990902\";\"Nassandres\";\"main\"\n\"2990908\";\"Narrosse\";\"main\"\n\"2990912\";\"Nargis\";\"main\"\n\"2990919\";\"Narbonne\";\"main\"\n\"2990919\";\"Narbo\";\"other\"\n\"2990919\";\"Narbona\";\"other\"\n\"2990919\";\"Narbonna\";\"other\"\n\"2990919\";\"Нарбонна\";\"other\"\n\"2990926\";\"Naours\";\"main\"\n\"2990932\";\"Nantua\";\"main\"\n\"2990932\";\"Nantjua\";\"other\"\n\"2990932\";\"Нантюа\";\"other\"\n\"2990949\";\"Nantiat\";\"main\"\n\"2990957\";\"Nanteuil-lès-Meaux\";\"main\"\n\"2990957\";\"Nanteuil-les-Meaux\";\"ascii\"\n\"2990957\";\"Nanteuil\";\"other\"\n\"2990958\";\"Nanteuil-le-Haudouin\";\"main\"\n\"2990958\";\"Nanteuil\";\"other\"\n\"2990961\";\"Nanteuil-en-Vallée\";\"main\"\n\"2990961\";\"Nanteuil-en-Vallee\";\"ascii\"\n\"2990961\";\"Nanteuil\";\"other\"\n\"2990965\";\"Nanteuil\";\"main\"\n\"2990969\";\"Nantes\";\"main\"\n\"2990969\";\"Nant\";\"other\"\n\"2990969\";\"Nante\";\"other\"\n\"2990969\";\"Nanto\";\"other\"\n\"2990969\";\"Naoned\";\"other\"\n\"2990969\";\"Portus Namnetus\";\"other\"\n\"2990969\";\"nan te\";\"other\"\n\"2990969\";\"nant\";\"other\"\n\"2990969\";\"nanta\";\"other\"\n\"2990969\";\"nanto\";\"other\"\n\"2990969\";\"Нант\";\"other\"\n\"2990969\";\"נאנט\";\"other\"\n\"2990969\";\"نانت\";\"other\"\n\"2990969\";\"नांत\";\"other\"\n\"2990969\";\"ナント\";\"other\"\n\"2990969\";\"南特\";\"other\"\n\"2990970\";\"Nanterre\";\"main\"\n\"2990970\";\"Nanter\";\"other\"\n\"2990970\";\"nanteru\";\"other\"\n\"2990970\";\"Нантер\";\"other\"\n\"2990970\";\"ナンテール\";\"other\"\n\"2990987\";\"Nans-les-Pins\";\"main\"\n\"2990987\";\"Nans\";\"other\"\n\"2990992\";\"Nangis\";\"main\"\n\"2990995\";\"Nandy\";\"main\"\n\"2990999\";\"Nancy\";\"main\"\n\"2990999\";\"Nanceium\";\"other\"\n\"2990999\";\"Nancio\";\"other\"\n\"2990999\";\"Nansi\";\"other\"\n\"2990999\";\"Nanzeg\";\"other\"\n\"2990999\";\"nan xi\";\"other\"\n\"2990999\";\"nanshi\";\"other\"\n\"2990999\";\"nansi\";\"other\"\n\"2990999\";\"nansy\";\"other\"\n\"2990999\";\"Нанси\";\"other\"\n\"2990999\";\"נאנסי\";\"other\"\n\"2990999\";\"نانسي\";\"other\"\n\"2990999\";\"نانسی\";\"other\"\n\"2990999\";\"नांसी\";\"other\"\n\"2990999\";\"ナンシー\";\"other\"\n\"2990999\";\"南希\";\"other\"\n\"2991004\";\"Nancray\";\"main\"\n\"2991027\";\"Nalliers\";\"main\"\n\"2991030\";\"Naizin\";\"main\"\n\"2991030\";\"Neizin\";\"other\"\n\"2991036\";\"Naintré\";\"main\"\n\"2991036\";\"Naintre\";\"ascii\"\n\"2991040\";\"Nailloux\";\"main\"\n\"2991046\";\"Nages-et-Solorgues\";\"main\"\n\"2991046\";\"Nages\";\"other\"\n\"2991077\";\"Muzillac\";\"main\"\n\"2991077\";\"Muzilheg\";\"other\"\n\"2991086\";\"Mutzig\";\"main\"\n\"2991088\";\"Muttersholtz\";\"main\"\n\"2991088\";\"Mutherholz\";\"other\"\n\"2991088\";\"Muttersholz\";\"other\"\n\"2991095\";\"Mussy-sur-Seine\";\"main\"\n\"2991095\";\"Mussy\";\"other\"\n\"2991101\";\"Mussig\";\"main\"\n\"2991102\";\"Mussidan\";\"main\"\n\"2991115\";\"Mus\";\"main\"\n\"2991118\";\"Murviel-lès-Montpellier\";\"main\"\n\"2991118\";\"Murviel-les-Montpellier\";\"ascii\"\n\"2991118\";\"Murviel\";\"other\"\n\"2991128\";\"Mûrs-Erigné\";\"main\"\n\"2991128\";\"Murs-Erigne\";\"ascii\"\n\"2991128\";\"Murs\";\"other\"\n\"2991128\";\"Mûrs\";\"other\"\n\"2991134\";\"Muron\";\"main\"\n\"2991153\";\"Muret\";\"main\"\n\"2991153\";\"Mureth\";\"other\"\n\"2991153\";\"Murèth\";\"other\"\n\"2991160\";\"Mur-de-Sologne\";\"main\"\n\"2991160\";\"Mur\";\"other\"\n\"2991161\";\"Mûr-de-Bretagne\";\"main\"\n\"2991161\";\"Mur-de-Bretagne\";\"ascii\"\n\"2991161\";\"Mur\";\"other\"\n\"2991179\";\"Murat\";\"main\"\n\"2991189\";\"Munster\";\"main\"\n\"2991199\";\"Mundolsheim\";\"main\"\n\"2991201\";\"Munchhouse\";\"main\"\n\"2991201\";\"Munchhausen\";\"other\"\n\"2991201\";\"Münchhausen\";\"other\"\n\"2991207\";\"Mulsanne\";\"main\"\n\"2991214\";\"Mulhouse\";\"main\"\n\"2991214\";\"Miluza\";\"other\"\n\"2991214\";\"Mjuluz\";\"other\"\n\"2991214\";\"Muelhausen\";\"other\"\n\"2991214\";\"Mulhousen\";\"other\"\n\"2991214\";\"Mülhausen\";\"other\"\n\"2991214\";\"mi lu si\";\"other\"\n\"2991214\";\"myuruzu\";\"other\"\n\"2991214\";\"Мюлуз\";\"other\"\n\"2991214\";\"ミュルーズ\";\"other\"\n\"2991214\";\"米卢斯\";\"other\"\n\"2991220\";\"Muizon\";\"main\"\n\"2991226\";\"Muides-sur-Loire\";\"main\"\n\"2991226\";\"Muides\";\"other\"\n\"2991231\";\"Mugron\";\"main\"\n\"2991255\";\"Mozé-sur-Louet\";\"main\"\n\"2991255\";\"Moze-sur-Louet\";\"ascii\"\n\"2991255\";\"Moze\";\"other\"\n\"2991255\";\"Mozé\";\"other\"\n\"2991258\";\"Mozac\";\"main\"\n\"2991261\";\"Moyrazès\";\"main\"\n\"2991261\";\"Moyrazes\";\"ascii\"\n\"2991264\";\"Moyeuvre-Grande\";\"main\"\n\"2991264\";\"Grande Moyeuvre\";\"other\"\n\"2991264\";\"Moyeuvre\";\"other\"\n\"2991264\";\"Moyeuvre-la-Grande\";\"other\"\n\"2991271\";\"Moyenmoutier\";\"main\"\n\"2991277\";\"Moye\";\"main\"\n\"2991280\";\"Moyaux\";\"main\"\n\"2991283\";\"Mouzon\";\"main\"\n\"2991283\";\"Ville-le-Libre\";\"other\"\n\"2991283\";\"Villé-le-Libre\";\"other\"\n\"2991285\";\"Mouzillon\";\"main\"\n\"2991285\";\"Maodilon\";\"other\"\n\"2991292\";\"Mouzeil\";\"main\"\n\"2991292\";\"Mouzel\";\"other\"\n\"2991297\";\"Mouy\";\"main\"\n\"2991298\";\"Mouxy\";\"main\"\n\"2991302\";\"Mouvaux\";\"main\"\n\"2991302\";\"Mouveaux\";\"other\"\n\"2991320\";\"Moutiers\";\"main\"\n\"2991325\";\"Moûtiers\";\"main\"\n\"2991325\";\"Moutiers\";\"ascii\"\n\"2991325\";\"Mont-Salins\";\"other\"\n\"2991330\";\"Mouthiers-sur-Boëme\";\"main\"\n\"2991330\";\"Mouthiers-sur-Boeme\";\"ascii\"\n\"2991330\";\"Mouthiers\";\"other\"\n\"2991343\";\"Moustoir-Ac\";\"main\"\n\"2991343\";\"Moustoer-Logunec'h\";\"other\"\n\"2991361\";\"Moussy-le-Vieux\";\"main\"\n\"2991362\";\"Moussy-le-Neuf\";\"main\"\n\"2991386\";\"Moussan\";\"main\"\n\"2991390\";\"Moussac\";\"main\"\n\"2991396\";\"Mours-Saint-Eusèbe\";\"main\"\n\"2991396\";\"Mours-Saint-Eusebe\";\"ascii\"\n\"2991396\";\"Mours\";\"other\"\n\"2991398\";\"Mours\";\"main\"\n\"2991407\";\"Mouroux\";\"main\"\n\"2991413\";\"Mourmelon-le-Grand\";\"main\"\n\"2991413\";\"Mourmelon\";\"other\"\n\"2991421\";\"Mouriès\";\"main\"\n\"2991421\";\"Mouries\";\"ascii\"\n\"2991431\";\"Mourenx\";\"main\"\n\"2991446\";\"Moult\";\"main\"\n\"2991459\";\"Moulis-en-Médoc\";\"main\"\n\"2991459\";\"Moulis-en-Medoc\";\"ascii\"\n\"2991459\";\"Moulis\";\"other\"\n\"2991470\";\"Moulins-lès-Metz\";\"main\"\n\"2991470\";\"Moulins-les-Metz\";\"ascii\"\n\"2991470\";\"Moulins\";\"other\"\n\"2991474\";\"Moulins-Engilbert\";\"main\"\n\"2991474\";\"Moulins-la-Republique\";\"other\"\n\"2991474\";\"Moulins-la-République\";\"other\"\n\"2991481\";\"Moulins\";\"main\"\n\"2991481\";\"Molins\";\"other\"\n\"2991481\";\"Mulin\";\"other\"\n\"2991481\";\"muran\";\"other\"\n\"2991481\";\"Мулин\";\"other\"\n\"2991481\";\"ムーラン\";\"other\"\n\"2991512\";\"Mouliets-et-Villemartin\";\"main\"\n\"2991512\";\"Mouliets\";\"other\"\n\"2991518\";\"Mouleydier\";\"main\"\n\"2991518\";\"Cybard-de-Mouleydier\";\"other\"\n\"2991530\";\"Moulay\";\"main\"\n\"2991537\";\"Mouilleron-le-Captif\";\"main\"\n\"2991537\";\"Mouilleron\";\"other\"\n\"2991537\";\"Mouilleron-le-Libre\";\"other\"\n\"2991538\";\"Mouilleron-en-Pareds\";\"main\"\n\"2991538\";\"Mouilleron\";\"other\"\n\"2991546\";\"Mouguerre\";\"main\"\n\"2991546\";\"Mugerre\";\"other\"\n\"2991549\";\"Mougon\";\"main\"\n\"2991551\";\"Mougins\";\"main\"\n\"2991558\";\"Mouen\";\"main\"\n\"2991565\";\"Mouchin\";\"main\"\n\"2991573\";\"Mouchard\";\"main\"\n\"2991575\";\"Mouchamps\";\"main\"\n\"2991579\";\"Mouans-Sartoux\";\"main\"\n\"2991630\";\"Morzine\";\"main\"\n\"2991649\";\"Morvillars\";\"main\"\n\"2991649\";\"Marvillars\";\"other\"\n\"2991661\";\"Mortrée\";\"main\"\n\"2991661\";\"Mortree\";\"ascii\"\n\"2991692\";\"Morteau\";\"main\"\n\"2991695\";\"Mortcerf\";\"main\"\n\"2991699\";\"Mortain\";\"main\"\n\"2991700\";\"Mortagne-sur-Sèvre\";\"main\"\n\"2991700\";\"Mortagne-sur-Sevre\";\"ascii\"\n\"2991700\";\"Mortagne\";\"other\"\n\"2991701\";\"Mortagne-sur-Gironde\";\"main\"\n\"2991701\";\"Mortagne\";\"other\"\n\"2991702\";\"Mortagne-du-Nord\";\"main\"\n\"2991702\";\"Mortagne\";\"other\"\n\"2991704\";\"Mortagne-au-Perche\";\"main\"\n\"2991704\";\"Mortagne\";\"other\"\n\"2991713\";\"Morschwiller-le-Bas\";\"main\"\n\"2991713\";\"Morschwiller\";\"other\"\n\"2991716\";\"Morsbach\";\"main\"\n\"2991719\";\"Morsang-sur-Orge\";\"main\"\n\"2991719\";\"Morsang\";\"other\"\n\"2991725\";\"Morre\";\"main\"\n\"2991727\";\"Morosaglia\";\"main\"\n\"2991741\";\"Mornas\";\"main\"\n\"2991743\";\"Mornant\";\"main\"\n\"2991747\";\"Mornac\";\"main\"\n\"2991750\";\"Mormoiron\";\"main\"\n\"2991754\";\"Mormant\";\"main\"\n\"2991754\";\"Morinant-l'Egalite\";\"other\"\n\"2991754\";\"Morinant-l'Egalité\";\"other\"\n\"2991772\";\"Morlaix\";\"main\"\n\"2991772\";\"Montroulez\";\"other\"\n\"2991775\";\"Morlaas\";\"main\"\n\"2991792\";\"Morigny-Champigny\";\"main\"\n\"2991792\";\"Morigny\";\"other\"\n\"2991799\";\"Morières-lès-Avignon\";\"main\"\n\"2991799\";\"Morieres-les-Avignon\";\"ascii\"\n\"2991799\";\"Morieres\";\"other\"\n\"2991799\";\"Morières\";\"other\"\n\"2991802\";\"Morienval\";\"main\"\n\"2991806\";\"Morhange\";\"main\"\n\"2991832\";\"Morez\";\"main\"\n\"2991832\";\"Morez-la-Montagne\";\"other\"\n\"2991839\";\"Moreuil\";\"main\"\n\"2991842\";\"Moret-sur-Loing\";\"main\"\n\"2991842\";\"Moret\";\"other\"\n\"2991847\";\"Morestel\";\"main\"\n\"2991861\";\"Morée\";\"main\"\n\"2991861\";\"Moree\";\"ascii\"\n\"2991866\";\"Moréac\";\"main\"\n\"2991866\";\"Moreac\";\"ascii\"\n\"2991866\";\"Mourieg\";\"other\"\n\"2991868\";\"Mordelles\";\"main\"\n\"2991868\";\"Morzhell\";\"other\"\n\"2991877\";\"Morcenx\";\"main\"\n\"2991880\";\"Morbier\";\"main\"\n\"2991881\";\"Morbecque\";\"main\"\n\"2991888\";\"Morannes\";\"main\"\n\"2991891\";\"Morangis\";\"main\"\n\"2991895\";\"Morancez\";\"main\"\n\"2991896\";\"Morancé\";\"main\"\n\"2991896\";\"Morance\";\"ascii\"\n\"2991898\";\"Morainvilliers\";\"main\"\n\"2991906\";\"Moosch\";\"main\"\n\"2991935\";\"Montussan\";\"main\"\n\"2991947\";\"Montsûrs\";\"main\"\n\"2991947\";\"Montsurs\";\"ascii\"\n\"2991947\";\"Hercule-Montsurs\";\"other\"\n\"2991954\";\"Mont-sous-Vaudrey\";\"main\"\n\"2991954\";\"Mont\";\"other\"\n\"2991957\";\"Montsoult\";\"main\"\n\"2991957\";\"Monsoult\";\"other\"\n\"2991970\";\"Montségur-sur-Lauzon\";\"main\"\n\"2991970\";\"Montsegur-sur-Lauzon\";\"ascii\"\n\"2991970\";\"Montsegur\";\"other\"\n\"2991970\";\"Montségur\";\"other\"\n\"2991974\";\"Mont-Saxonnex\";\"main\"\n\"2991992\";\"Mont-Saint-Martin\";\"main\"\n\"2992001\";\"Mont-Saint-Éloi\";\"main\"\n\"2992001\";\"Mont-Saint-Eloi\";\"ascii\"\n\"2992001\";\"Mont-Saint-Eloy\";\"other\"\n\"2992001\";\"Mont-Saint-Éloy\";\"other\"\n\"2992001\";\"Mont-la-Liberte\";\"other\"\n\"2992001\";\"Mont-la-Liberté\";\"other\"\n\"2992003\";\"Mont-Saint-Aignan\";\"main\"\n\"2992003\";\"Le Mont-Libre\";\"other\"\n\"2992008\";\"Monts\";\"main\"\n\"2992009\";\"Montry\";\"main\"\n\"2992017\";\"Montrouge\";\"main\"\n\"2992017\";\"Monruzh\";\"other\"\n\"2992017\";\"Монруж\";\"other\"\n\"2992022\";\"Montrottier\";\"main\"\n\"2992022\";\"Montrotier\";\"other\"\n\"2992024\";\"Montrond-les-Bains\";\"main\"\n\"2992024\";\"Meylieu-Montrond\";\"other\"\n\"2992024\";\"Montrond\";\"other\"\n\"2992035\";\"Montrodat\";\"main\"\n\"2992044\";\"Montricoux\";\"main\"\n\"2992047\";\"Montrichard\";\"main\"\n\"2992047\";\"Montegalite\";\"other\"\n\"2992047\";\"Montégalité\";\"other\"\n\"2992050\";\"Montrevel-en-Bresse\";\"main\"\n\"2992050\";\"Montrevel\";\"other\"\n\"2992054\";\"Montrevault\";\"main\"\n\"2992057\";\"Montreux-Château\";\"main\"\n\"2992057\";\"Montreux-Chateau\";\"ascii\"\n\"2992061\";\"Montreuil\";\"main\"\n\"2992061\";\"Montrej\";\"other\"\n\"2992061\";\"Montreuil-sur-Mer\";\"other\"\n\"2992061\";\"Монтрей\";\"other\"\n\"2992065\";\"Montreuil-sur-Ille\";\"main\"\n\"2992065\";\"Montreuil\";\"other\"\n\"2992065\";\"Mousterel-an-Il\";\"other\"\n\"2992070\";\"Montreuil-sous-Pérouse\";\"main\"\n\"2992070\";\"Montreuil-sous-Perouse\";\"ascii\"\n\"2992070\";\"Montreuil\";\"other\"\n\"2992070\";\"Mousterel-ar-Veineg\";\"other\"\n\"2992074\";\"Montreuil-le-Gast\";\"main\"\n\"2992074\";\"Montreuil\";\"other\"\n\"2992074\";\"Mousterel-ar-Gwast\";\"other\"\n\"2992084\";\"Montreuil-Bellay\";\"main\"\n\"2992084\";\"Montreuil-le-Thouet\";\"other\"\n\"2992086\";\"Montreuil-aux-Lions\";\"main\"\n\"2992086\";\"Montreuil\";\"other\"\n\"2992086\";\"Montreuil-l'Union\";\"other\"\n\"2992090\";\"Montreuil\";\"main\"\n\"2992090\";\"Montrej\";\"other\"\n\"2992090\";\"Montreuil-sous-Bois\";\"other\"\n\"2992090\";\"Монтрей\";\"other\"\n\"2992098\";\"Montrem\";\"main\"\n\"2992102\";\"Montréjeau\";\"main\"\n\"2992102\";\"Montrejeau\";\"ascii\"\n\"2992104\";\"Montredon-Labessonnié\";\"main\"\n\"2992104\";\"Montredon-Labessonnie\";\"ascii\"\n\"2992104\";\"Montredon\";\"other\"\n\"2992116\";\"Montréal-la-Cluse\";\"main\"\n\"2992116\";\"Montreal-la-Cluse\";\"ascii\"\n\"2992116\";\"Delilia-de-Crose\";\"other\"\n\"2992118\";\"Montréal\";\"main\"\n\"2992118\";\"Montreal\";\"ascii\"\n\"2992118\";\"Mont-Franc\";\"other\"\n\"2992118\";\"Montreal-du-Gers\";\"other\"\n\"2992118\";\"Montréal-du-Gers\";\"other\"\n\"2992119\";\"Montréal\";\"main\"\n\"2992119\";\"Montreal\";\"ascii\"\n\"2992124\";\"Montrabé\";\"main\"\n\"2992124\";\"Montrabe\";\"ascii\"\n\"2992126\";\"Mont-près-Chambord\";\"main\"\n\"2992126\";\"Mont-pres-Chambord\";\"ascii\"\n\"2992126\";\"Mont\";\"other\"\n\"2992131\";\"Montpont-en-Bresse\";\"main\"\n\"2992131\";\"Montpont\";\"other\"\n\"2992132\";\"Montpon-Ménestérol\";\"main\"\n\"2992132\";\"Montpon-Menesterol\";\"ascii\"\n\"2992132\";\"Monpont\";\"other\"\n\"2992132\";\"Montpon\";\"other\"\n\"2992132\";\"Montpon-sur-l'Isle\";\"other\"\n\"2992153\";\"Montpeyroux\";\"main\"\n\"2992166\";\"Montpellier\";\"main\"\n\"2992166\";\"Monpel'e\";\"other\"\n\"2992166\";\"Monpele\";\"other\"\n\"2992166\";\"Monpelie\";\"other\"\n\"2992166\";\"Montpelhier\";\"other\"\n\"2992166\";\"Montpelhièr\";\"other\"\n\"2992166\";\"Montpeller\";\"other\"\n\"2992166\";\"meng bi li ai\";\"other\"\n\"2992166\";\"mongpellie\";\"other\"\n\"2992166\";\"monperie\";\"other\"\n\"2992166\";\"mwnbylyyh\";\"other\"\n\"2992166\";\"mwnplyyh\";\"other\"\n\"2992166\";\"Монпелие\";\"other\"\n\"2992166\";\"Монпелье\";\"other\"\n\"2992166\";\"Монпеље\";\"other\"\n\"2992166\";\"מונפלייה\";\"other\"\n\"2992166\";\"مونبيلييه\";\"other\"\n\"2992166\";\"モンペリエ\";\"other\"\n\"2992166\";\"蒙彼利埃\";\"other\"\n\"2992166\";\"몽펠리에\";\"other\"\n\"2992177\";\"Montournais\";\"main\"\n\"2992202\";\"Montoison\";\"main\"\n\"2992203\";\"Montois-la-Montagne\";\"main\"\n\"2992203\";\"Montois\";\"other\"\n\"2992204\";\"Montoire-sur-le-Loir\";\"main\"\n\"2992204\";\"Montoire\";\"other\"\n\"2992206\";\"Montoir-de-Bretagne\";\"main\"\n\"2992206\";\"Montoir\";\"other\"\n\"2992206\";\"Mouster-al-Loc'h\";\"other\"\n\"2992220\";\"Montmorot\";\"main\"\n\"2992225\";\"Montmorillon\";\"main\"\n\"2992229\";\"Montmorency\";\"main\"\n\"2992229\";\"Monmoransi\";\"other\"\n\"2992229\";\"Монморанси\";\"other\"\n\"2992230\";\"Montmoreau-Saint-Cybard\";\"main\"\n\"2992240\";\"Montmirail\";\"main\"\n\"2992249\";\"Montmeyran\";\"main\"\n\"2992249\";\"Montnieyran\";\"other\"\n\"2992254\";\"Montmerle-sur-Saône\";\"main\"\n\"2992254\";\"Montmerle-sur-Saone\";\"ascii\"\n\"2992255\";\"Montmélian\";\"main\"\n\"2992255\";\"Montmelian\";\"ascii\"\n\"2992260\";\"Montmédy\";\"main\"\n\"2992260\";\"Montmedy\";\"ascii\"\n\"2992266\";\"Montmartin-sur-Mer\";\"main\"\n\"2992266\";\"Montmartin\";\"other\"\n\"2992274\";\"Montmarault\";\"main\"\n\"2992282\";\"Montmain\";\"main\"\n\"2992287\";\"Montmagny\";\"main\"\n\"2992288\";\"Montmacq\";\"main\"\n\"2992290\";\"Montluel\";\"main\"\n\"2992292\";\"Montluçon\";\"main\"\n\"2992292\";\"Montlucon\";\"ascii\"\n\"2992292\";\"Monljuson\";\"other\"\n\"2992292\";\"monryuson\";\"other\"\n\"2992292\";\"Монлюсон\";\"other\"\n\"2992292\";\"モンリュソン\";\"other\"\n\"2992293\";\"Montlouis-sur-Loire\";\"main\"\n\"2992293\";\"Mont-Loire\";\"other\"\n\"2992293\";\"Montlouis\";\"other\"\n\"2992293\";\"Montoire\";\"other\"\n\"2992302\";\"Montlivault\";\"main\"\n\"2992302\";\"Montivault\";\"other\"\n\"2992304\";\"Montlignon\";\"main\"\n\"2992305\";\"Montlieu-la-Garde\";\"main\"\n\"2992309\";\"Montlhéry\";\"main\"\n\"2992309\";\"Montlhery\";\"ascii\"\n\"2992321\";\"Montlebon\";\"main\"\n\"2992327\";\"Montlaur\";\"main\"\n\"2992327\";\"Chateau de Montlaur\";\"other\"\n\"2992327\";\"Château de Montlaur\";\"other\"\n\"2992347\";\"Montjoire\";\"main\"\n\"2992350\";\"Montjoie-en-Couserans\";\"main\"\n\"2992350\";\"Montjoie\";\"other\"\n\"2992350\";\"Montjoie-en Conserans\";\"other\"\n\"2992354\";\"Montjean-sur-Loire\";\"main\"\n\"2992354\";\"Montjean\";\"other\"\n\"2992367\";\"Montivilliers\";\"main\"\n\"2992367\";\"Brutus-Villiers\";\"other\"\n\"2992387\";\"Montigny-sur-Loing\";\"main\"\n\"2992387\";\"Montigny\";\"other\"\n\"2992402\";\"Montigny-lès-Metz\";\"main\"\n\"2992402\";\"Montigny-les-Metz\";\"ascii\"\n\"2992402\";\"Metz-les-Montigny\";\"other\"\n\"2992402\";\"Metz-lès-Montigny\";\"other\"\n\"2992402\";\"Montigny\";\"other\"\n\"2992404\";\"Montigny-lès-Cormeilles\";\"main\"\n\"2992404\";\"Montigny-les-Cormeilles\";\"ascii\"\n\"2992404\";\"Montigny\";\"other\"\n\"2992410\";\"Montigny-Lencoup\";\"main\"\n\"2992415\";\"Montigny-le-Bretonneux\";\"main\"\n\"2992415\";\"Montigny\";\"other\"\n\"2992418\";\"Montigny-en-Ostrevent\";\"main\"\n\"2992418\";\"Montigny\";\"other\"\n\"2992420\";\"Montigny-en-Gohelle\";\"main\"\n\"2992420\";\"Montigny\";\"other\"\n\"2992431\";\"Montigny\";\"main\"\n\"2992443\";\"Montigné-le-Brillant\";\"main\"\n\"2992443\";\"Montigne-le-Brillant\";\"ascii\"\n\"2992443\";\"Montigne\";\"other\"\n\"2992443\";\"Montigné\";\"other\"\n\"2992453\";\"Montignac\";\"main\"\n\"2992466\";\"Montier-en-Der\";\"main\"\n\"2992467\";\"Montierchaume\";\"main\"\n\"2992470\";\"Monticello\";\"main\"\n\"2992476\";\"Monthyon\";\"main\"\n\"2992495\";\"Monthermé\";\"main\"\n\"2992495\";\"Montherme\";\"ascii\"\n\"2992506\";\"Montguyon\";\"main\"\n\"2992525\";\"Montgivray\";\"main\"\n\"2992526\";\"Montgiscard\";\"main\"\n\"2992536\";\"Montgeron\";\"main\"\n\"2992536\";\"Monzherone\";\"other\"\n\"2992536\";\"Монжероне\";\"other\"\n\"2992537\";\"Montgermont\";\"main\"\n\"2992537\";\"Menezgervant\";\"other\"\n\"2992571\";\"Montgaillard\";\"main\"\n\"2992571\";\"Montgailhard\";\"other\"\n\"2992577\";\"Montfrin\";\"main\"\n\"2992581\";\"Montfort-sur-Meu\";\"main\"\n\"2992581\";\"Monfort-sur Meu\";\"other\"\n\"2992581\";\"Monforzh\";\"other\"\n\"2992581\";\"Montfort\";\"other\"\n\"2992581\";\"Montfort-la-Montagne\";\"other\"\n\"2992581\";\"Moñforzh\";\"other\"\n\"2992584\";\"Montfort-le-Gesnois\";\"main\"\n\"2992584\";\"Montfort\";\"other\"\n\"2992584\";\"Montfort-le-Rotrou\";\"other\"\n\"2992586\";\"Montfort-en-Chalosse\";\"main\"\n\"2992586\";\"Montfort\";\"other\"\n\"2992602\";\"Montferrier-sur-Lez\";\"main\"\n\"2992602\";\"Montferrier\";\"other\"\n\"2992605\";\"Montferrat\";\"main\"\n\"2992605\";\"Montferra\";\"other\"\n\"2992606\";\"Montferrat\";\"main\"\n\"2992607\";\"Montferrand-le-Château\";\"main\"\n\"2992607\";\"Montferrand-le-Chateau\";\"ascii\"\n\"2992607\";\"Montferrand\";\"other\"\n\"2992616\";\"Montfermeil\";\"main\"\n\"2992623\";\"Montfaucon\";\"main\"\n\"2992624\";\"Montfaucon-Montigné\";\"main\"\n\"2992624\";\"Montfaucon-Montigne\";\"ascii\"\n\"2992624\";\"Montfaucon-sur-Moine\";\"other\"\n\"2992625\";\"Montfaucon-en-Velay\";\"main\"\n\"2992625\";\"Montfaucon du Velay\";\"other\"\n\"2992627\";\"Montfaucon\";\"main\"\n\"2992637\";\"Montévrain\";\"main\"\n\"2992637\";\"Montevrain\";\"ascii\"\n\"2992638\";\"Monteux\";\"main\"\n\"2992650\";\"Montesson\";\"main\"\n\"2992654\";\"Montesquieu-Volvestre\";\"main\"\n\"2992654\";\"Montesquieu\";\"other\"\n\"2992661\";\"Montesquiu d'Albera\";\"main\"\n\"2992661\";\"Montesquieu-des-Alberes\";\"other\"\n\"2992661\";\"Montesquieu-des-Albères\";\"other\"\n\"2992661\";\"Montesquiu\";\"other\"\n\"2992664\";\"Montescourt-Lizerolles\";\"main\"\n\"2992665\";\"Montescot\";\"main\"\n\"2992669\";\"Monterfil\";\"main\"\n\"2992669\";\"Mousterfil\";\"other\"\n\"2992671\";\"Montereau-Fault-Yonne\";\"main\"\n\"2992671\";\"Montereau\";\"other\"\n\"2992674\";\"Monterblanc\";\"main\"\n\"2992674\";\"Sterwenn\";\"other\"\n\"2992683\";\"Montenois\";\"main\"\n\"2992689\";\"Montendre\";\"main\"\n\"2992690\";\"Montenay\";\"main\"\n\"2992703\";\"Montélimar\";\"main\"\n\"2992703\";\"Montelimar\";\"ascii\"\n\"2992703\";\"Acumum\";\"other\"\n\"2992703\";\"Montelimare\";\"other\"\n\"2992703\";\"Монтелимаре\";\"other\"\n\"2992704\";\"Montélier\";\"main\"\n\"2992704\";\"Montelier\";\"ascii\"\n\"2992706\";\"Montéléger\";\"main\"\n\"2992706\";\"Monteleger\";\"ascii\"\n\"2992713\";\"Monteils\";\"main\"\n\"2992740\";\"Montech\";\"main\"\n\"2992744\";\"Montebourg\";\"main\"\n\"2992744\";\"Montebaurg\";\"other\"\n\"2992760\";\"Montdidier\";\"main\"\n\"2992771\";\"Mont-de-Marsan\";\"main\"\n\"2992771\";\"Mon-de-Marsan\";\"other\"\n\"2992771\";\"Mont-Marat\";\"other\"\n\"2992771\";\"Mont-de-Marat\";\"other\"\n\"2992771\";\"mon=do=marusan\";\"other\"\n\"2992771\";\"Мон-де-Марсан\";\"other\"\n\"2992771\";\"モン＝ド＝マルサン\";\"other\"\n\"2992777\";\"Mont-de-Lans\";\"main\"\n\"2992788\";\"Montcy-Notre-Dame\";\"main\"\n\"2992788\";\"Montcy\";\"other\"\n\"2992790\";\"Montcuq\";\"main\"\n\"2992793\";\"Montcresson\";\"main\"\n\"2992793\";\"Monteresson\";\"other\"\n\"2992799\";\"Montcourt-Fromonville\";\"main\"\n\"2992802\";\"Montcornet\";\"main\"\n\"2992838\";\"Montchanin\";\"main\"\n\"2992838\";\"Montchanin-les-Mines\";\"other\"\n\"2992852\";\"Montcenis\";\"main\"\n\"2992863\";\"Montceau-les-Mines\";\"main\"\n\"2992863\";\"Monke-le-Mine\";\"other\"\n\"2992863\";\"Montceau\";\"other\"\n\"2992863\";\"Монке-ле-Мине\";\"other\"\n\"2992870\";\"Montcaret\";\"main\"\n\"2992870\";\"Moncaret\";\"other\"\n\"2992885\";\"Montbronn\";\"main\"\n\"2992886\";\"Montbron\";\"main\"\n\"2992890\";\"Montbrison\";\"main\"\n\"2992890\";\"Montbrise\";\"other\"\n\"2992890\";\"Montbrisé\";\"other\"\n\"2992905\";\"Montboucher-sur-Jabron\";\"main\"\n\"2992905\";\"Montboucher\";\"other\"\n\"2992908\";\"Montbonnot-Saint-Martin\";\"main\"\n\"2992908\";\"Montbonnot\";\"other\"\n\"2992917\";\"Montblanc\";\"main\"\n\"2992919\";\"Montbizot\";\"main\"\n\"2992921\";\"Montbeton\";\"main\"\n\"2992925\";\"Montbert\";\"main\"\n\"2992925\";\"Monteverzh\";\"other\"\n\"2992926\";\"Montberon\";\"main\"\n\"2992927\";\"Mont-Bernanchon\";\"main\"\n\"2992938\";\"Montbéliard\";\"main\"\n\"2992938\";\"Montbeliard\";\"ascii\"\n\"2992938\";\"Mont-Reuni\";\"other\"\n\"2992938\";\"Mont-Réuni\";\"other\"\n\"2992938\";\"Montoeliard\";\"other\"\n\"2992938\";\"meng bei li ya er\";\"other\"\n\"2992938\";\"蒙贝利亚尔\";\"other\"\n\"2992943\";\"Montbazon\";\"main\"\n\"2992944\";\"Montbazin\";\"main\"\n\"2992945\";\"Montbazens\";\"main\"\n\"2992953\";\"Montbard\";\"main\"\n\"2992960\";\"Montayral\";\"main\"\n\"2992967\";\"Montauville\";\"main\"\n\"2992976\";\"Montaut\";\"main\"\n\"2992978\";\"Montauroux\";\"main\"\n\"2992982\";\"Montaure\";\"main\"\n\"2992998\";\"Montauban-de-Bretagne\";\"main\"\n\"2992998\";\"Menezalban\";\"other\"\n\"2992998\";\"Montauban\";\"other\"\n\"2993002\";\"Montauban\";\"main\"\n\"2993002\";\"Montalban\";\"other\"\n\"2993002\";\"Montoban\";\"other\"\n\"2993002\";\"Rive-Civique\";\"other\"\n\"2993002\";\"montoban\";\"other\"\n\"2993002\";\"Монтобан\";\"other\"\n\"2993002\";\"モントーバン\";\"other\"\n\"2993004\";\"Montataire\";\"main\"\n\"2993006\";\"Montastruc-la-Conseillère\";\"main\"\n\"2993006\";\"Montastruc-la-Conseillere\";\"ascii\"\n\"2993006\";\"Montastruc\";\"other\"\n\"2993013\";\"Montarnaud\";\"main\"\n\"2993024\";\"Montargis\";\"main\"\n\"2993024\";\"Mont-Coulounies\";\"other\"\n\"2993026\";\"Montaren-et-Saint-Médiers\";\"main\"\n\"2993026\";\"Montaren-et-Saint-Mediers\";\"ascii\"\n\"2993026\";\"Montaren\";\"other\"\n\"2993026\";\"Vivacite\";\"other\"\n\"2993026\";\"Vivacité\";\"other\"\n\"2993028\";\"Montardon\";\"main\"\n\"2993038\";\"Montans\";\"main\"\n\"2993051\";\"Montanay\";\"main\"\n\"2993053\";\"Montamisé\";\"main\"\n\"2993053\";\"Montamise\";\"ascii\"\n\"2993061\";\"Montalieu-Vercieu\";\"main\"\n\"2993061\";\"Montalieu\";\"other\"\n\"2993078\";\"Montaigut-sur-Save\";\"main\"\n\"2993078\";\"Montaigut\";\"other\"\n\"2993084\";\"Montaigut\";\"main\"\n\"2993088\";\"Montaigu-de-Quercy\";\"main\"\n\"2993088\";\"Montaigu\";\"other\"\n\"2993092\";\"Montaigu\";\"main\"\n\"2993117\";\"Montagny\";\"main\"\n\"2993146\";\"Montagne\";\"main\"\n\"2993147\";\"Montagnat\";\"main\"\n\"2993160\";\"Montagnac\";\"main\"\n\"2993166\";\"Montady\";\"main\"\n\"2993189\";\"Mont\";\"main\"\n\"2993191\";\"Monswiller\";\"main\"\n\"2993203\";\"Mons-en-Pévèle\";\"main\"\n\"2993203\";\"Mons-en-Pevele\";\"ascii\"\n\"2993203\";\"Mons\";\"other\"\n\"2993203\";\"Mons-en Peyele\";\"other\"\n\"2993203\";\"Mons-en-Puelle\";\"other\"\n\"2993203\";\"Mont-en-Pevele\";\"other\"\n\"2993203\";\"Mont-en-Pévèle\";\"other\"\n\"2993207\";\"Mons-en-Barœul\";\"main\"\n\"2993207\";\"Mons-en-Baroeul\";\"ascii\"\n\"2993207\";\"Mons\";\"other\"\n\"2993208\";\"Monsempron-Libos\";\"main\"\n\"2993208\";\"Monsempron\";\"other\"\n\"2993208\";\"Montsempron\";\"other\"\n\"2993209\";\"Monségur\";\"main\"\n\"2993209\";\"Monsegur\";\"ascii\"\n\"2993228\";\"Mons\";\"main\"\n\"2993230\";\"Mons\";\"main\"\n\"2993245\";\"Monnières\";\"main\"\n\"2993245\";\"Monnieres\";\"ascii\"\n\"2993245\";\"Meliner\";\"other\"\n\"2993250\";\"Monnetier-Mornex\";\"main\"\n\"2993250\";\"Monnetier\";\"other\"\n\"2993261\";\"Monnaie\";\"main\"\n\"2993277\";\"Monistrol-sur-Loire\";\"main\"\n\"2993277\";\"Monistrol\";\"other\"\n\"2993308\";\"Monflanquin\";\"main\"\n\"2993316\";\"Monéteau\";\"main\"\n\"2993316\";\"Moneteau\";\"ascii\"\n\"2993320\";\"Monestiés\";\"main\"\n\"2993320\";\"Monesties\";\"ascii\"\n\"2993331\";\"Monein\";\"main\"\n\"2993342\";\"Mondragon\";\"main\"\n\"2993342\";\"Montdragon\";\"other\"\n\"2993345\";\"Mondoubleau\";\"main\"\n\"2993348\";\"Mondonville\";\"main\"\n\"2993358\";\"Mondeville\";\"main\"\n\"2993367\";\"Mondelange\";\"main\"\n\"2993375\";\"Moncoutant\";\"main\"\n\"2993380\";\"Moncontour\";\"main\"\n\"2993380\";\"Moncontour-de-Poitou\";\"other\"\n\"2993380\";\"Montagne-sur-Dive\";\"other\"\n\"2993383\";\"Monclar-de-Quercy\";\"main\"\n\"2993383\";\"Monclar\";\"other\"\n\"2993390\";\"Monchy-Saint-Éloi\";\"main\"\n\"2993390\";\"Monchy-Saint-Eloi\";\"ascii\"\n\"2993390\";\"Monchy\";\"other\"\n\"2993403\";\"Monchecourt\";\"main\"\n\"2993419\";\"Moncé-en-Belin\";\"main\"\n\"2993419\";\"Monce-en-Belin\";\"ascii\"\n\"2993419\";\"Monce\";\"other\"\n\"2993419\";\"Monce-les-Le Mans\";\"other\"\n\"2993419\";\"Moncé\";\"other\"\n\"2993419\";\"Moncé-lès-Le Mans\";\"other\"\n\"2993446\";\"Monbazillac\";\"main\"\n\"2993465\";\"Mommenheim\";\"main\"\n\"2993465\";\"Mommemheim\";\"other\"\n\"2993476\";\"Molsheim\";\"main\"\n\"2993476\";\"Molskhajm\";\"other\"\n\"2993476\";\"Молсхайм\";\"other\"\n\"2993496\";\"Mollégès\";\"main\"\n\"2993496\";\"Molleges\";\"ascii\"\n\"2993512\";\"Molinet\";\"main\"\n\"2993523\";\"Molières-sur-Cèze\";\"main\"\n\"2993523\";\"Molieres-sur-Ceze\";\"ascii\"\n\"2993523\";\"Molieres\";\"other\"\n\"2993523\";\"Molières\";\"other\"\n\"2993528\";\"Molières\";\"main\"\n\"2993528\";\"Molieres\";\"ascii\"\n\"2993562\";\"Molac\";\"main\"\n\"2993562\";\"Moulleg\";\"other\"\n\"2993572\";\"Moissy-Cramayel\";\"main\"\n\"2993572\";\"Mois-la-Plaine\";\"other\"\n\"2993572\";\"Moissy\";\"other\"\n\"2993572\";\"Moissy-Gramayel\";\"other\"\n\"2993578\";\"Moisselles\";\"main\"\n\"2993586\";\"Moissac\";\"main\"\n\"2993588\";\"Moislains\";\"main\"\n\"2993589\";\"Moisenay\";\"main\"\n\"2993590\";\"Moisdon-la-Rivière\";\"main\"\n\"2993590\";\"Moisdon-la-Riviere\";\"ascii\"\n\"2993590\";\"Maezon-ar-Ster\";\"other\"\n\"2993590\";\"Maezon-ar-Stêr\";\"other\"\n\"2993590\";\"Meisdon-la-Riviere\";\"other\"\n\"2993590\";\"Meisdon-la-Rivière\";\"other\"\n\"2993590\";\"Moisdon\";\"other\"\n\"2993604\";\"Moirans-en-Montagne\";\"main\"\n\"2993604\";\"Moirans\";\"other\"\n\"2993605\";\"Moirans\";\"main\"\n\"2993622\";\"Moigny-sur-École\";\"main\"\n\"2993622\";\"Moigny-sur-Ecole\";\"ascii\"\n\"2993629\";\"Moidieu-Détourbe\";\"main\"\n\"2993629\";\"Moidieu-Detourbe\";\"ascii\"\n\"2993629\";\"Moidieu\";\"other\"\n\"2993633\";\"Mogneville\";\"main\"\n\"2993647\";\"Moëlan-sur-Mer\";\"main\"\n\"2993647\";\"Moelan-sur-Mer\";\"ascii\"\n\"2993647\";\"Moelan\";\"other\"\n\"2993647\";\"Molan\";\"other\"\n\"2993647\";\"Moëlan\";\"other\"\n\"2993654\";\"Modane\";\"main\"\n\"2993673\";\"Mittelhausbergen\";\"main\"\n\"2993673\";\"Hausbergen\";\"other\"\n\"2993679\";\"Mitry-Mory\";\"main\"\n\"2993692\";\"Missillac\";\"main\"\n\"2993692\";\"Merzhelieg\";\"other\"\n\"2993692\";\"Missilac\";\"other\"\n\"2993700\";\"Misérieux\";\"main\"\n\"2993700\";\"Miserieux\";\"ascii\"\n\"2993701\";\"Miserey-Salines\";\"main\"\n\"2993701\";\"Miserey\";\"other\"\n\"2993709\";\"Miribel-les-Échelles\";\"main\"\n\"2993709\";\"Miribel-les-Echelles\";\"ascii\"\n\"2993709\";\"Miribel\";\"other\"\n\"2993712\";\"Miribel\";\"main\"\n\"2993717\";\"Mireval\";\"main\"\n\"2993720\";\"Mirepoix\";\"main\"\n\"2993721\";\"Mirepeix\";\"main\"\n\"2993726\";\"Miremont\";\"main\"\n\"2993727\";\"Mirefleurs\";\"main\"\n\"2993728\";\"Mirecourt\";\"main\"\n\"2993730\";\"Mirebeau-sur-Bèze\";\"main\"\n\"2993730\";\"Mirebeau-sur-Beze\";\"ascii\"\n\"2993730\";\"Mirebeau\";\"other\"\n\"2993732\";\"Mirebeau\";\"main\"\n\"2993732\";\"Mirebeau-en-Poitou\";\"other\"\n\"2993734\";\"Miré\";\"main\"\n\"2993734\";\"Mire\";\"ascii\"\n\"2993746\";\"Mirandol-Bourgnounac\";\"main\"\n\"2993746\";\"Mirandol\";\"other\"\n\"2993746\";\"Mirandol-Bouroougnac\";\"other\"\n\"2993749\";\"Mirande\";\"main\"\n\"2993753\";\"Miramont-de-Guyenne\";\"main\"\n\"2993753\";\"Miramont\";\"other\"\n\"2993757\";\"Mirambeau\";\"main\"\n\"2993760\";\"Miramas\";\"main\"\n\"2993760\";\"Mirama\";\"other\"\n\"2993760\";\"Miramas Gare\";\"other\"\n\"2993760\";\"mirama\";\"other\"\n\"2993760\";\"Мирама\";\"other\"\n\"2993760\";\"ミラマ\";\"other\"\n\"2993766\";\"Mirabel-aux-Baronnies\";\"main\"\n\"2993766\";\"Mirabel\";\"other\"\n\"2993779\";\"Mios\";\"main\"\n\"2993780\";\"Mions\";\"main\"\n\"2993781\";\"Mionnay\";\"main\"\n\"2993796\";\"Minihy-Tréguier\";\"main\"\n\"2993796\";\"Minihy-Treguier\";\"ascii\"\n\"2993796\";\"Ar Vinic'hi\";\"other\"\n\"2993801\";\"Miniac-Morvan\";\"main\"\n\"2993801\";\"Miniac\";\"other\"\n\"2993801\";\"Minieg-Morvan\";\"other\"\n\"2993830\";\"Mimizan\";\"main\"\n\"2993832\";\"Mimet\";\"main\"\n\"2993834\";\"Mimbaste\";\"main\"\n\"2993839\";\"Milly-sur-Thérain\";\"main\"\n\"2993839\";\"Milly-sur-Therain\";\"ascii\"\n\"2993839\";\"Milly\";\"other\"\n\"2993843\";\"Milly-la-Forêt\";\"main\"\n\"2993843\";\"Milly-la-Foret\";\"ascii\"\n\"2993843\";\"Milly\";\"other\"\n\"2993864\";\"Millery\";\"main\"\n\"2993875\";\"Millau\";\"main\"\n\"2993875\";\"Mijo\";\"other\"\n\"2993875\";\"Millan\";\"other\"\n\"2993875\";\"Мийо\";\"other\"\n\"2993876\";\"Millas\";\"main\"\n\"2993876\";\"Millars\";\"other\"\n\"2993884\";\"Milizac\";\"main\"\n\"2993884\";\"Milizag\";\"other\"\n\"2993889\";\"Milhaud\";\"main\"\n\"2993918\";\"Migné-Auxances\";\"main\"\n\"2993918\";\"Migne-Auxances\";\"ascii\"\n\"2993918\";\"Migne\";\"other\"\n\"2993918\";\"Migné\";\"other\"\n\"2993921\";\"Mignaloux-Beauvoir\";\"main\"\n\"2993921\";\"Mignaloux\";\"other\"\n\"2993928\";\"Migennes\";\"main\"\n\"2993936\";\"Mieussy\";\"main\"\n\"2993947\";\"Miélan\";\"main\"\n\"2993947\";\"Mielan\";\"ascii\"\n\"2993999\";\"Mézy-sur-Seine\";\"main\"\n\"2993999\";\"Mezy-sur-Seine\";\"ascii\"\n\"2994002\";\"Méziré\";\"main\"\n\"2994002\";\"Mezire\";\"ascii\"\n\"2994004\";\"Mézin\";\"main\"\n\"2994004\";\"Mezin\";\"ascii\"\n\"2994008\";\"Mézières-sur-Seine\";\"main\"\n\"2994008\";\"Mezieres-sur-Seine\";\"ascii\"\n\"2994018\";\"Mézières-en-Drouais\";\"main\"\n\"2994018\";\"Mezieres-en-Drouais\";\"ascii\"\n\"2994018\";\"Mezieres\";\"other\"\n\"2994018\";\"Mézières\";\"other\"\n\"2994019\";\"Mézières-en-Brenne\";\"main\"\n\"2994019\";\"Mezieres-en-Brenne\";\"ascii\"\n\"2994019\";\"Mezieres\";\"other\"\n\"2994019\";\"Mézières\";\"other\"\n\"2994033\";\"Mézériat\";\"main\"\n\"2994033\";\"Mezeriat\";\"ascii\"\n\"2994036\";\"Mézeray\";\"main\"\n\"2994036\";\"Mezeray\";\"ascii\"\n\"2994040\";\"Mezel\";\"main\"\n\"2994043\";\"Mèze\";\"main\"\n\"2994043\";\"Meze\";\"ascii\"\n\"2994048\";\"Meyzieu\";\"main\"\n\"2994049\";\"Meythet\";\"main\"\n\"2994049\";\"Meithet\";\"other\"\n\"2994052\";\"Meysse\";\"main\"\n\"2994054\";\"Meyssac\";\"main\"\n\"2994057\";\"Meyrueis\";\"main\"\n\"2994068\";\"Meyreuil\";\"main\"\n\"2994070\";\"Meyrargues\";\"main\"\n\"2994078\";\"Meynes\";\"main\"\n\"2994085\";\"Meymac\";\"main\"\n\"2994087\";\"Meylan\";\"main\"\n\"2994091\";\"Meyenheim\";\"main\"\n\"2994093\";\"Mexy\";\"main\"\n\"2994094\";\"Meximieux\";\"main\"\n\"2994113\";\"Meursault\";\"main\"\n\"2994116\";\"Meursac\";\"main\"\n\"2994121\";\"Meurchin\";\"main\"\n\"2994126\";\"Meung-sur-Loire\";\"main\"\n\"2994126\";\"Meung\";\"other\"\n\"2994126\";\"lu wa er he pan mo en\";\"other\"\n\"2994126\";\"卢瓦尔河畔默恩\";\"other\"\n\"2994139\";\"Meulan\";\"main\"\n\"2994144\";\"Meudon\";\"main\"\n\"2994144\";\"Rabelais\";\"other\"\n\"2994146\";\"Meucon\";\"main\"\n\"2994146\";\"Meukon\";\"other\"\n\"2994150\";\"Metz-Tessy\";\"main\"\n\"2994150\";\"Metz\";\"other\"\n\"2994155\";\"Metzervisse\";\"main\"\n\"2994157\";\"Metzeral\";\"main\"\n\"2994160\";\"Metz\";\"main\"\n\"2994160\";\"Divodurum\";\"other\"\n\"2994160\";\"Mec\";\"other\"\n\"2994160\";\"Mediomatricum\";\"other\"\n\"2994160\";\"Mettis\";\"other\"\n\"2994160\";\"mei si\";\"other\"\n\"2994160\";\"mesu\";\"other\"\n\"2994160\";\"Мец\";\"other\"\n\"2994160\";\"メス\";\"other\"\n\"2994160\";\"梅斯\";\"other\"\n\"2994161\";\"Mettray\";\"main\"\n\"2994168\";\"Méteren\";\"main\"\n\"2994168\";\"Meteren\";\"ascii\"\n\"2994184\";\"Messimy\";\"main\"\n\"2994185\";\"Messigny-et-Vantoux\";\"main\"\n\"2994189\";\"Messery\";\"main\"\n\"2994193\";\"Messei\";\"main\"\n\"2994193\";\"Messei-Saint-Gervais\";\"other\"\n\"2994194\";\"Messein\";\"main\"\n\"2994201\";\"Messac\";\"main\"\n\"2994201\";\"Mezeg\";\"other\"\n\"2994201\";\"Port de Messac\";\"other\"\n\"2994203\";\"Mesquer\";\"main\"\n\"2994203\";\"Mesker\";\"other\"\n\"2994246\";\"Mesnières-en-Bray\";\"main\"\n\"2994246\";\"Mesnieres-en-Bray\";\"ascii\"\n\"2994246\";\"Mesnieres\";\"other\"\n\"2994246\";\"Mesnières\";\"other\"\n\"2994263\";\"Meslay-du-Maine\";\"main\"\n\"2994263\";\"Meslay\";\"other\"\n\"2994268\";\"Meslan\";\"main\"\n\"2994268\";\"Melann\";\"other\"\n\"2994268\";\"Mêlann\";\"other\"\n\"2994274\";\"Meschers-sur-Gironde\";\"main\"\n\"2994274\";\"Meschers\";\"other\"\n\"2994280\";\"Mésanger\";\"main\"\n\"2994280\";\"Mesanger\";\"ascii\"\n\"2994280\";\"Mezansker\";\"other\"\n\"2994282\";\"Méry-sur-Seine\";\"main\"\n\"2994282\";\"Mery-sur-Seine\";\"ascii\"\n\"2994282\";\"Mery\";\"other\"\n\"2994282\";\"Méry\";\"other\"\n\"2994283\";\"Méry-sur-Oise\";\"main\"\n\"2994283\";\"Mery-sur-Oise\";\"ascii\"\n\"2994283\";\"Mery\";\"other\"\n\"2994283\";\"Méry\";\"other\"\n\"2994290\";\"Méry\";\"main\"\n\"2994290\";\"Mery\";\"ascii\"\n\"2994291\";\"Merxheim\";\"main\"\n\"2994294\";\"Merville-Franceville-Plage\";\"main\"\n\"2994294\";\"Merville\";\"other\"\n\"2994297\";\"Merville\";\"main\"\n\"2994298\";\"Merville\";\"main\"\n\"2994301\";\"Mervent\";\"main\"\n\"2994301\";\"Mervont\";\"other\"\n\"2994303\";\"Mervans\";\"main\"\n\"2994306\";\"Méru\";\"main\"\n\"2994306\";\"Meru\";\"ascii\"\n\"2994307\";\"Mertzwiller\";\"main\"\n\"2994307\";\"Merzmuhler\";\"other\"\n\"2994310\";\"Merten\";\"main\"\n\"2994313\";\"Mers-les-Bains\";\"main\"\n\"2994313\";\"Mers\";\"other\"\n\"2994349\";\"Merlimont\";\"main\"\n\"2994351\";\"Merlevenez\";\"main\"\n\"2994351\";\"Brelevenez\";\"other\"\n\"2994379\";\"Mérindol\";\"main\"\n\"2994379\";\"Merindol\";\"ascii\"\n\"2994385\";\"Mérignies\";\"main\"\n\"2994385\";\"Merignies\";\"ascii\"\n\"2994393\";\"Mérignac\";\"main\"\n\"2994393\";\"Merignac\";\"ascii\"\n\"2994393\";\"Meirinhac\";\"other\"\n\"2994393\";\"Merignae\";\"other\"\n\"2994396\";\"Mériel\";\"main\"\n\"2994396\";\"Meriel\";\"ascii\"\n\"2994401\";\"Méricourt\";\"main\"\n\"2994401\";\"Mericourt\";\"ascii\"\n\"2994404\";\"Méribel\";\"main\"\n\"2994404\";\"Meribel\";\"ascii\"\n\"2994404\";\"Meribel'\";\"other\"\n\"2994404\";\"Мерибель\";\"other\"\n\"2994415\";\"Méréville\";\"main\"\n\"2994415\";\"Mereville\";\"ascii\"\n\"2994416\";\"Méréville\";\"main\"\n\"2994416\";\"Mereville\";\"ascii\"\n\"2994426\";\"Méreau\";\"main\"\n\"2994426\";\"Mereau\";\"ascii\"\n\"2994428\";\"Méré\";\"main\"\n\"2994428\";\"Mere\";\"ascii\"\n\"2994431\";\"Merdrignac\";\"main\"\n\"2994431\";\"Medrigneg\";\"other\"\n\"2994443\";\"Mercy-le-Bas\";\"main\"\n\"2994443\";\"Mercy\";\"other\"\n\"2994446\";\"Mercus-Garrabet\";\"main\"\n\"2994446\";\"Mercus\";\"other\"\n\"2994447\";\"Mercury\";\"main\"\n\"2994447\";\"Mercury-Gemilly\";\"other\"\n\"2994447\";\"Mercury-Gémilly\";\"other\"\n\"2994449\";\"Mercurol\";\"main\"\n\"2994481\";\"Mer\";\"main\"\n\"2994486\";\"Méounes-lès-Montrieux\";\"main\"\n\"2994486\";\"Meounes-les-Montrieux\";\"ascii\"\n\"2994486\";\"Meounes\";\"other\"\n\"2994486\";\"Méounes\";\"other\"\n\"2994494\";\"Menucourt\";\"main\"\n\"2994497\";\"Menton\";\"main\"\n\"2994497\";\"Mentona\";\"other\"\n\"2994497\";\"Mentone\";\"other\"\n\"2994497\";\"Ментона\";\"other\"\n\"2994500\";\"Menthon-Saint-Bernard\";\"main\"\n\"2994500\";\"Menthon\";\"other\"\n\"2994509\";\"Mensignac\";\"main\"\n\"2994511\";\"Mens\";\"main\"\n\"2994529\";\"Menneval\";\"main\"\n\"2994534\";\"Mennecy\";\"main\"\n\"2994542\";\"Ménilles\";\"main\"\n\"2994542\";\"Menilles\";\"ascii\"\n\"2994574\";\"Ménétrol\";\"main\"\n\"2994574\";\"Menetrol\";\"ascii\"\n\"2994585\";\"Menetou-Salon\";\"main\"\n\"2994591\";\"Ménestreau-en-Villette\";\"main\"\n\"2994591\";\"Menestreau-en-Villette\";\"ascii\"\n\"2994591\";\"Menestreau\";\"other\"\n\"2994596\";\"Ménesplet\";\"main\"\n\"2994596\";\"Menesplet\";\"ascii\"\n\"2994603\";\"Ménerbes\";\"main\"\n\"2994603\";\"Menerbes\";\"ascii\"\n\"2994608\";\"Ménéac\";\"main\"\n\"2994608\";\"Meneac\";\"ascii\"\n\"2994608\";\"Menieg\";\"other\"\n\"2994617\";\"Mende\";\"main\"\n\"2994617\";\"mando\";\"other\"\n\"2994617\";\"マンド\";\"other\"\n\"2994651\";\"Melun\";\"main\"\n\"2994651\";\"muran\";\"other\"\n\"2994651\";\"ムラン\";\"other\"\n\"2994653\";\"Melrand\";\"main\"\n\"2994653\";\"Melrant\";\"other\"\n\"2994653\";\"Mêlrant\";\"other\"\n\"2994673\";\"Mellecey\";\"main\"\n\"2994675\";\"Melle\";\"main\"\n\"2994676\";\"Mellac\";\"main\"\n\"2994676\";\"Mellag\";\"other\"\n\"2994680\";\"Mélisey\";\"main\"\n\"2994680\";\"Melisey\";\"ascii\"\n\"2994692\";\"Melgven\";\"main\"\n\"2994692\";\"Melwenn\";\"other\"\n\"2994692\";\"Mêlwenn\";\"other\"\n\"2994697\";\"Melesse\";\"main\"\n\"2994697\";\"Meled\";\"other\"\n\"2994707\";\"Melay\";\"main\"\n\"2994727\";\"Meistratzheim\";\"main\"\n\"2994733\";\"Meillonnas\";\"main\"\n\"2994743\";\"Meillac\";\"main\"\n\"2994743\";\"Melieg\";\"other\"\n\"2994746\";\"Meilhan-sur-Garonne\";\"main\"\n\"2994746\";\"Meilhan\";\"other\"\n\"2994747\";\"Meilhan\";\"main\"\n\"2994756\";\"Mehun-sur-Yèvre\";\"main\"\n\"2994756\";\"Mehun-sur-Yevre\";\"ascii\"\n\"2994756\";\"Mehun\";\"other\"\n\"2994756\";\"Mehun-sur-Yevres\";\"other\"\n\"2994756\";\"Mehun-sur-Yèvres\";\"other\"\n\"2994768\";\"Megève\";\"main\"\n\"2994768\";\"Megeve\";\"ascii\"\n\"2994768\";\"Megeva\";\"other\"\n\"2994768\";\"Megevo\";\"other\"\n\"2994768\";\"Megéva\";\"other\"\n\"2994770\";\"Mées\";\"main\"\n\"2994770\";\"Mees\";\"ascii\"\n\"2994773\";\"Médréac\";\"main\"\n\"2994773\";\"Medreac\";\"ascii\"\n\"2994773\";\"Mederieg\";\"other\"\n\"2994778\";\"Médis\";\"main\"\n\"2994778\";\"Medis\";\"ascii\"\n\"2994785\";\"Médan\";\"main\"\n\"2994785\";\"Medan\";\"ascii\"\n\"2994790\";\"Mécleuves\";\"main\"\n\"2994790\";\"Mecleuves\";\"ascii\"\n\"2994798\";\"Meaux\";\"main\"\n\"2994798\";\"Mo\";\"other\"\n\"2994798\";\"Мо\";\"other\"\n\"2994803\";\"Méaulte\";\"main\"\n\"2994803\";\"Meaulte\";\"ascii\"\n\"2994806\";\"Méaudre\";\"main\"\n\"2994806\";\"Meaudre\";\"ascii\"\n\"2994837\";\"Mazingarbe\";\"main\"\n\"2994842\";\"Mazières-en-Mauges\";\"main\"\n\"2994842\";\"Mazieres-en-Mauges\";\"ascii\"\n\"2994842\";\"Mazieres\";\"other\"\n\"2994842\";\"Mazières\";\"other\"\n\"2994844\";\"Mazières-de-Touraine\";\"main\"\n\"2994844\";\"Mazieres-de-Touraine\";\"ascii\"\n\"2994844\";\"Mazieres\";\"other\"\n\"2994844\";\"Mazières\";\"other\"\n\"2994856\";\"Mazet-Saint-Voy\";\"main\"\n\"2994856\";\"Mazet\";\"other\"\n\"2994856\";\"Mont-Lizieu\";\"other\"\n\"2994868\";\"Mazères-Lezons\";\"main\"\n\"2994868\";\"Mazeres-Lezons\";\"ascii\"\n\"2994868\";\"Mazeres\";\"other\"\n\"2994868\";\"Mazères\";\"other\"\n\"2994870\";\"Mazères\";\"main\"\n\"2994870\";\"Mazeres\";\"ascii\"\n\"2994891\";\"Mazé\";\"main\"\n\"2994891\";\"Maze\";\"ascii\"\n\"2994901\";\"Mazan\";\"main\"\n\"2994902\";\"Mazamet\";\"main\"\n\"2994906\";\"May-sur-Orne\";\"main\"\n\"2994906\";\"May\";\"other\"\n\"2994928\";\"Mayet\";\"main\"\n\"2994935\";\"Mayenne\";\"main\"\n\"2994948\";\"Maxilly-sur-Léman\";\"main\"\n\"2994948\";\"Maxilly-sur-Leman\";\"ascii\"\n\"2994948\";\"Maxilly\";\"other\"\n\"2994951\";\"Maxéville\";\"main\"\n\"2994951\";\"Maxeville\";\"ascii\"\n\"2994952\";\"Maxent\";\"main\"\n\"2994952\";\"Skiriou-Masen\";\"other\"\n\"2994952\";\"Skirioù-Masen\";\"other\"\n\"2994958\";\"Mauzé-Thouarsais\";\"main\"\n\"2994958\";\"Mauze-Thouarsais\";\"ascii\"\n\"2994959\";\"Mauzé-sur-le-Mignon\";\"main\"\n\"2994959\";\"Mauze-sur-le-Mignon\";\"ascii\"\n\"2994959\";\"Mauze\";\"other\"\n\"2994959\";\"Mauzé\";\"other\"\n\"2994981\";\"Mauves-sur-Loire\";\"main\"\n\"2994981\";\"Malvid\";\"other\"\n\"2994981\";\"Mauve-sur-Loire\";\"other\"\n\"2994981\";\"Mauves\";\"other\"\n\"2994983\";\"Mauves\";\"main\"\n\"2994992\";\"Maussane-les-Alpilles\";\"main\"\n\"2994992\";\"Maussane\";\"other\"\n\"2994992\";\"Maussanne\";\"other\"\n\"2995003\";\"Maurs\";\"main\"\n\"2995003\";\"Maurs-la-Jolie\";\"other\"\n\"2995009\";\"Mauron\";\"main\"\n\"2995009\";\"Maoron\";\"other\"\n\"2995024\";\"Mauriac\";\"main\"\n\"2995041\";\"Maurepas\";\"main\"\n\"2995054\";\"Maureillas-las-Illas\";\"main\"\n\"2995054\";\"Maureillas\";\"other\"\n\"2995054\";\"Morellas\";\"other\"\n\"2995054\";\"Morellàs\";\"other\"\n\"2995055\";\"Maureilhan\";\"main\"\n\"2995055\";\"Maureilhan-et-Ramejan\";\"other\"\n\"2995055\";\"Maureilhan-et-Raméjan\";\"other\"\n\"2995058\";\"Maure-de-Bretagne\";\"main\"\n\"2995058\";\"Anast\";\"other\"\n\"2995058\";\"Maure\";\"other\"\n\"2995059\";\"Maurecourt\";\"main\"\n\"2995104\";\"Maulévrier\";\"main\"\n\"2995104\";\"Maulevrier\";\"ascii\"\n\"2995107\";\"Mauléon-Licharre\";\"main\"\n\"2995107\";\"Mauleon-Licharre\";\"ascii\"\n\"2995107\";\"Maule-Lextarre\";\"other\"\n\"2995107\";\"Mauleon\";\"other\"\n\"2995107\";\"Mauleon-Soule\";\"other\"\n\"2995107\";\"Mauleón\";\"other\"\n\"2995107\";\"Mauléon\";\"other\"\n\"2995107\";\"Mauléon-Soule\";\"other\"\n\"2995110\";\"Maule\";\"main\"\n\"2995121\";\"Mauguio\";\"main\"\n\"2995121\";\"Condado de Melguelh\";\"other\"\n\"2995121\";\"Melguelh\";\"other\"\n\"2995121\";\"Mont-Salaison\";\"other\"\n\"2995146\";\"Maubourguet\";\"main\"\n\"2995150\";\"Maubeuge\";\"main\"\n\"2995154\";\"Maubec\";\"main\"\n\"2995155\";\"Maubec\";\"main\"\n\"2995157\";\"Matzenheim\";\"main\"\n\"2995171\";\"Matour\";\"main\"\n\"2995175\";\"Matignon\";\"main\"\n\"2995183\";\"Mathieu\";\"main\"\n\"2995189\";\"Mathay\";\"main\"\n\"2995192\";\"Matha\";\"main\"\n\"2995206\";\"Massy\";\"main\"\n\"2995206\";\"Massa\";\"other\"\n\"2995206\";\"Масса\";\"other\"\n\"2995212\";\"Massongy\";\"main\"\n\"2995226\";\"Massieux\";\"main\"\n\"2995229\";\"Massiac\";\"main\"\n\"2995230\";\"Masseube\";\"main\"\n\"2995248\";\"Massay\";\"main\"\n\"2995269\";\"Masny\";\"main\"\n\"2995270\";\"Masnières\";\"main\"\n\"2995270\";\"Masnieres\";\"ascii\"\n\"2995281\";\"Masevaux\";\"main\"\n\"2995281\";\"Massevaux\";\"other\"\n\"2995324\";\"Marzy\";\"main\"\n\"2995329\";\"Marzan\";\"main\"\n\"2995329\";\"Marzhan\";\"other\"\n\"2995330\";\"Mary-sur-Marne\";\"main\"\n\"2995339\";\"Marvejols\";\"main\"\n\"2995351\";\"Martres-Tolosane\";\"main\"\n\"2995351\";\"Martres\";\"other\"\n\"2995360\";\"Martizay\";\"main\"\n\"2995363\";\"Martinvast\";\"main\"\n\"2995371\";\"Martin-Église\";\"main\"\n\"2995371\";\"Martin-Eglise\";\"ascii\"\n\"2995371\";\"Martin\";\"other\"\n\"2995385\";\"Martillac\";\"main\"\n\"2995387\";\"Martigues\";\"main\"\n\"2995398\";\"Martigné-Ferchaud\";\"main\"\n\"2995398\";\"Martigne-Ferchaud\";\"ascii\"\n\"2995398\";\"Martigne-Forchaud\";\"other\"\n\"2995398\";\"Martigné-Forchaud\";\"other\"\n\"2995398\";\"Mazhinieg-Houarnruz\";\"other\"\n\"2995399\";\"Martigné-Briand\";\"main\"\n\"2995399\";\"Martigne-Briand\";\"ascii\"\n\"2995399\";\"Martigne\";\"other\"\n\"2995399\";\"Martigné\";\"other\"\n\"2995401\";\"Martigné-sur-Mayenne\";\"main\"\n\"2995401\";\"Martigne-sur-Mayenne\";\"ascii\"\n\"2995401\";\"Martigre\";\"other\"\n\"2995401\";\"Martigré\";\"other\"\n\"2995402\";\"Martignat\";\"main\"\n\"2995404\";\"Martignas-sur-Jalle\";\"main\"\n\"2995404\";\"Martignas\";\"other\"\n\"2995404\";\"Martignas-sur-dalle\";\"other\"\n\"2995413\";\"Marthod\";\"main\"\n\"2995438\";\"Marssac-sur-Tarn\";\"main\"\n\"2995438\";\"Marssac\";\"other\"\n\"2995454\";\"Marsilly\";\"main\"\n\"2995456\";\"Marsillargues\";\"main\"\n\"2995469\";\"Marseille\";\"main\"\n\"2995469\";\"Marseilla\";\"other\"\n\"2995469\";\"Marseilles\";\"other\"\n\"2995469\";\"Marsej\";\"other\"\n\"2995469\";\"Marsejlo\";\"other\"\n\"2995469\";\"Marsel'\";\"other\"\n\"2995469\";\"Marsela\";\"other\"\n\"2995469\";\"Marselha\";\"other\"\n\"2995469\";\"Marselis\";\"other\"\n\"2995469\";\"Marsella\";\"other\"\n\"2995469\";\"Marsella - Marseille\";\"other\"\n\"2995469\";\"Marselye\";\"other\"\n\"2995469\";\"Marseya\";\"other\"\n\"2995469\";\"Marseļa\";\"other\"\n\"2995469\";\"Marsigghia\";\"other\"\n\"2995469\";\"Marsiggia\";\"other\"\n\"2995469\";\"Marsiglia\";\"other\"\n\"2995469\";\"Marsiho\";\"other\"\n\"2995469\";\"Marsilha\";\"other\"\n\"2995469\";\"Marsilia\";\"other\"\n\"2995469\";\"Marsilija\";\"other\"\n\"2995469\";\"Marsilya\";\"other\"\n\"2995469\";\"Marsylia\";\"other\"\n\"2995469\";\"Massalia\";\"other\"\n\"2995469\";\"Massilia\";\"other\"\n\"2995469\";\"ma sai\";\"other\"\n\"2995469\";\"maleuseyu\";\"other\"\n\"2995469\";\"mar se\";\"other\"\n\"2995469\";\"mar sey\";\"other\"\n\"2995469\";\"marsaiya\";\"other\"\n\"2995469\";\"marseli\";\"other\"\n\"2995469\";\"marsy\";\"other\"\n\"2995469\";\"marsylya\";\"other\"\n\"2995469\";\"maruseiyu\";\"other\"\n\"2995469\";\"mrsyy\";\"other\"\n\"2995469\";\"Μασσαλία\";\"other\"\n\"2995469\";\"Марсель\";\"other\"\n\"2995469\";\"Марсеј\";\"other\"\n\"2995469\";\"Марсилия\";\"other\"\n\"2995469\";\"מרסיי\";\"other\"\n\"2995469\";\"مارسيليا\";\"other\"\n\"2995469\";\"مارسی\";\"other\"\n\"2995469\";\"मार्सैय\";\"other\"\n\"2995469\";\"มาร์เซ\";\"other\"\n\"2995469\";\"มาร์เซย์\";\"other\"\n\"2995469\";\"მარსელი\";\"other\"\n\"2995469\";\"マルセイユ\";\"other\"\n\"2995469\";\"马赛\";\"other\"\n\"2995469\";\"마르세유\";\"other\"\n\"2995471\";\"Marseillan\";\"main\"\n\"2995481\";\"Marsat\";\"main\"\n\"2995487\";\"Marsanne\";\"main\"\n\"2995489\";\"Marsannay-la-Côte\";\"main\"\n\"2995489\";\"Marsannay-la-Cote\";\"ascii\"\n\"2995489\";\"Marsannay\";\"other\"\n\"2995507\";\"Marsac-sur-Don\";\"main\"\n\"2995507\";\"Marsac\";\"other\"\n\"2995507\";\"Marzheg\";\"other\"\n\"2995508\";\"Marsac-en-Livradois\";\"main\"\n\"2995508\";\"Marsac\";\"other\"\n\"2995532\";\"Marquise\";\"main\"\n\"2995532\";\"Beaupre\";\"other\"\n\"2995532\";\"Beaupré\";\"other\"\n\"2995533\";\"Marquion\";\"main\"\n\"2995534\";\"Marquillies\";\"main\"\n\"2995536\";\"Marquette-lez-Lille\";\"main\"\n\"2995536\";\"Marquette\";\"other\"\n\"2995543\";\"Marquefave\";\"main\"\n\"2995550\";\"Marpent\";\"main\"\n\"2995550\";\"Marpen\";\"other\"\n\"2995563\";\"Maromme\";\"main\"\n\"2995565\";\"Marolles-sur-Seine\";\"main\"\n\"2995565\";\"Marolles\";\"other\"\n\"2995569\";\"Marolles-les-Braults\";\"main\"\n\"2995569\";\"Marolles\";\"other\"\n\"2995571\";\"Marolles-en-Hurepoix\";\"main\"\n\"2995571\";\"Marolles\";\"other\"\n\"2995585\";\"Maroilles\";\"main\"\n\"2995585\";\"Maroilles-en-Thierache\";\"other\"\n\"2995585\";\"Maroilles-en-Thiérache\";\"other\"\n\"2995586\";\"Marœuil\";\"main\"\n\"2995586\";\"Maroeuil\";\"ascii\"\n\"2995597\";\"Marnes-la-Coquette\";\"main\"\n\"2995597\";\"Marnes\";\"other\"\n\"2995606\";\"Marnaz\";\"main\"\n\"2995610\";\"Marnay\";\"main\"\n\"2995622\";\"Marmoutier\";\"main\"\n\"2995642\";\"Marmande\";\"main\"\n\"2995647\";\"Marmagne\";\"main\"\n\"2995648\";\"Marmagne\";\"main\"\n\"2995649\";\"Marly\";\"main\"\n\"2995649\";\"Marly-sur-Seille\";\"other\"\n\"2995652\";\"Marly-le-Roi\";\"main\"\n\"2995652\";\"Marly\";\"other\"\n\"2995652\";\"Marly-la-Machine\";\"other\"\n\"2995653\";\"Marly-la-Ville\";\"main\"\n\"2995653\";\"Marly\";\"other\"\n\"2995656\";\"Marly\";\"main\"\n\"2995667\";\"Marlhes\";\"main\"\n\"2995669\";\"Marles-les-Mines\";\"main\"\n\"2995669\";\"Marles\";\"other\"\n\"2995670\";\"Marles-en-Brie\";\"main\"\n\"2995670\";\"Marles\";\"other\"\n\"2995673\";\"Marlenheim\";\"main\"\n\"2995675\";\"Marle\";\"main\"\n\"2995675\";\"Marle-et-Behaine\";\"other\"\n\"2995699\";\"Maringues\";\"main\"\n\"2995702\";\"Marines\";\"main\"\n\"2995713\";\"Marin\";\"main\"\n\"2995722\";\"Marigny-les-Usages\";\"main\"\n\"2995722\";\"Marigny\";\"other\"\n\"2995726\";\"Marigny-le-Châtel\";\"main\"\n\"2995726\";\"Marigny-le-Chatel\";\"ascii\"\n\"2995726\";\"Marigny\";\"other\"\n\"2995731\";\"Marigny-Brizay\";\"main\"\n\"2995731\";\"Marigny\";\"other\"\n\"2995734\";\"Marigny\";\"main\"\n\"2995744\";\"Marignier\";\"main\"\n\"2995747\";\"Marigné-Laillé\";\"main\"\n\"2995747\";\"Marigne-Laille\";\"ascii\"\n\"2995747\";\"Marigne\";\"other\"\n\"2995747\";\"Marigné\";\"other\"\n\"2995750\";\"Marignane\";\"main\"\n\"2995750\";\"Marignanc\";\"other\"\n\"2995750\";\"marinyanu\";\"other\"\n\"2995750\";\"マリニャーヌ\";\"other\"\n\"2995782\";\"Marguerittes\";\"main\"\n\"2995787\";\"Margon\";\"main\"\n\"2995790\";\"Margny-lès-Compiègne\";\"main\"\n\"2995790\";\"Margny-les-Compiegne\";\"ascii\"\n\"2995790\";\"Margny\";\"other\"\n\"2995806\";\"Margency\";\"main\"\n\"2995807\";\"Margencel\";\"main\"\n\"2995809\";\"Margaux\";\"main\"\n\"2995822\";\"Mareuil-sur-Ourcq\";\"main\"\n\"2995822\";\"Mareuil\";\"other\"\n\"2995823\";\"Mareuil-sur-Lay-Dissais\";\"main\"\n\"2995823\";\"Mareuil\";\"other\"\n\"2995823\";\"Vigneron\";\"other\"\n\"2995824\";\"Mareuil-sur-Cher\";\"main\"\n\"2995824\";\"Mareuil\";\"other\"\n\"2995825\";\"Mareuil\";\"main\"\n\"2995825\";\"Mareuil-sur-Belle\";\"other\"\n\"2995826\";\"Mareuil-sur-Ay\";\"main\"\n\"2995826\";\"Mareuil\";\"other\"\n\"2995828\";\"Mareuil-lès-Meaux\";\"main\"\n\"2995828\";\"Mareuil-les-Meaux\";\"ascii\"\n\"2995828\";\"Mareuil\";\"other\"\n\"2995829\";\"Mareuil-le-Port\";\"main\"\n\"2995829\";\"Mareuil\";\"other\"\n\"2995840\";\"Maretz\";\"main\"\n\"2995854\";\"Marennes\";\"main\"\n\"2995855\";\"Marennes\";\"main\"\n\"2995859\";\"Mareil-sur-Mauldre\";\"main\"\n\"2995859\";\"Mareil\";\"other\"\n\"2995861\";\"Mareil-Marly\";\"main\"\n\"2995861\";\"Mareil\";\"other\"\n\"2995875\";\"Mareau-aux-Prés\";\"main\"\n\"2995875\";\"Mareau-aux-Pres\";\"ascii\"\n\"2995875\";\"Mareau\";\"other\"\n\"2995887\";\"Mardié\";\"main\"\n\"2995887\";\"Mardie\";\"ascii\"\n\"2995888\";\"Mardeuil\";\"main\"\n\"2995908\";\"Marcq-en-Barœul\";\"main\"\n\"2995908\";\"Marcq-en-Baroeul\";\"ascii\"\n\"2995908\";\"Marcq\";\"other\"\n\"2995908\";\"Marq\";\"other\"\n\"2995908\";\"Marq-en-Baroeul\";\"other\"\n\"2995908\";\"Marquette-en-Baroeul\";\"other\"\n\"2995916\";\"Marcoussis\";\"main\"\n\"2995922\";\"Marcorignan\";\"main\"\n\"2995924\";\"Marconnelle\";\"main\"\n\"2995924\";\"Marconelle\";\"other\"\n\"2995926\";\"Marconne\";\"main\"\n\"2995926\";\"Fontaine-Libre\";\"other\"\n\"2995927\";\"Marçon\";\"main\"\n\"2995927\";\"Marcon\";\"ascii\"\n\"2995933\";\"Marcoing\";\"main\"\n\"2995936\";\"Marckolsheim\";\"main\"\n\"2995938\";\"Marck\";\"main\"\n\"2995940\";\"Marcilly-sur-Tille\";\"main\"\n\"2995940\";\"Marcilly\";\"other\"\n\"2995943\";\"Marcilly-sur-Eure\";\"main\"\n\"2995943\";\"Marcilly\";\"other\"\n\"2995950\";\"Marcilly-en-Villette\";\"main\"\n\"2995971\";\"Marcillac-Vallon\";\"main\"\n\"2995971\";\"Marcillac\";\"other\"\n\"2995971\";\"Marcillac-d'Aveyron\";\"other\"\n\"2995978\";\"Marcillac\";\"main\"\n\"2995978\";\"Marcillac-de Blaye\";\"other\"\n\"2995983\";\"Marcigny\";\"main\"\n\"2995983\";\"Marcigny-sur-Loire\";\"other\"\n\"2995990\";\"Marciac\";\"main\"\n\"2995991\";\"Marchiennes\";\"main\"\n\"2995991\";\"Marchiennes-Campagne\";\"other\"\n\"2996006\";\"Marcheprime\";\"main\"\n\"2996039\";\"Marcey-les-Grèves\";\"main\"\n\"2996039\";\"Marcey-les-Greves\";\"ascii\"\n\"2996039\";\"Marcey\";\"other\"\n\"2996054\";\"Marcellaz-Albanais\";\"main\"\n\"2996054\";\"Marcellaz\";\"other\"\n\"2996067\";\"Marcamps\";\"main\"\n\"2996074\";\"Marboz\";\"main\"\n\"2996075\";\"Marboué\";\"main\"\n\"2996075\";\"Marboue\";\"ascii\"\n\"2996081\";\"Marbache\";\"main\"\n\"2996089\";\"Maraussan\";\"main\"\n\"2996103\";\"Marans\";\"main\"\n\"2996106\";\"Marange-Silvange\";\"main\"\n\"2996106\";\"Marange\";\"other\"\n\"2996126\";\"Manziat\";\"main\"\n\"2996127\";\"Manzat\";\"main\"\n\"2996141\";\"Manthelan\";\"main\"\n\"2996141\";\"Manthelon\";\"other\"\n\"2996146\";\"Mantes-la-Ville\";\"main\"\n\"2996148\";\"Mantes-la-Jolie\";\"main\"\n\"2996148\";\"Mant-lja-Zholi\";\"other\"\n\"2996148\";\"Mantes\";\"other\"\n\"2996148\";\"Mantes-Gassicourt\";\"other\"\n\"2996148\";\"Mantes-Sur-Seine\";\"other\"\n\"2996148\";\"Мант-ля-Жоли\";\"other\"\n\"2996162\";\"Mansle\";\"main\"\n\"2996163\";\"Mansigné\";\"main\"\n\"2996163\";\"Mansigne\";\"ascii\"\n\"2996173\";\"Mansac\";\"main\"\n\"2996180\";\"Manosque\";\"main\"\n\"2996180\";\"Manosca\";\"other\"\n\"2996180\";\"Manoske\";\"other\"\n\"2996180\";\"Manòsca\";\"other\"\n\"2996180\";\"Маноске\";\"other\"\n\"2996186\";\"Manom\";\"main\"\n\"2996193\";\"Manneville-sur-Risle\";\"main\"\n\"2996193\";\"Manneville\";\"other\"\n\"2996232\";\"Manéglise\";\"main\"\n\"2996232\";\"Maneglise\";\"ascii\"\n\"2996234\";\"Mane\";\"main\"\n\"2996236\";\"Manduel\";\"main\"\n\"2996241\";\"Mandres-les-Roses\";\"main\"\n\"2996241\";\"Mandres\";\"other\"\n\"2996251\";\"Mandeure\";\"main\"\n\"2996255\";\"Mandelieu-la-Napoule\";\"main\"\n\"2996264\";\"Mancieulles\";\"main\"\n\"2996286\";\"Mamirolle\";\"main\"\n\"2996288\";\"Mametz\";\"main\"\n\"2996291\";\"Mamers\";\"main\"\n\"2996298\";\"Malzéville\";\"main\"\n\"2996298\";\"Malzeville\";\"ascii\"\n\"2996306\";\"Malville\";\"main\"\n\"2996306\";\"Kerwall\";\"other\"\n\"2996397\";\"Mallemort\";\"main\"\n\"2996398\";\"Mallemoisson\";\"main\"\n\"2996408\";\"Malissard\";\"main\"\n\"2996411\";\"Malintrat\";\"main\"\n\"2996413\";\"Malijai\";\"main\"\n\"2996420\";\"Malicorne-sur-Sarthe\";\"main\"\n\"2996420\";\"Malicorne\";\"other\"\n\"2996420\";\"Malicorre\";\"other\"\n\"2996427\";\"Malguénac\";\"main\"\n\"2996427\";\"Malguenac\";\"ascii\"\n\"2996427\";\"Malgeneg\";\"other\"\n\"2996440\";\"Malestroit\";\"main\"\n\"2996440\";\"Malestred\";\"other\"\n\"2996444\";\"Malesherbes\";\"main\"\n\"2996448\";\"Malemort-sur-Corrèze\";\"main\"\n\"2996448\";\"Malemort-sur-Correze\";\"ascii\"\n\"2996448\";\"Malemort\";\"other\"\n\"2996449\";\"Malemort-du-Comtat\";\"main\"\n\"2996449\";\"Malemort\";\"other\"\n\"2996477\";\"Malay-le-Grand\";\"main\"\n\"2996477\";\"Malay\";\"other\"\n\"2996477\";\"Malay-le-Republicain\";\"other\"\n\"2996477\";\"Malay-le-Républicain\";\"other\"\n\"2996492\";\"Malaunay\";\"main\"\n\"2996495\";\"Malaucène\";\"main\"\n\"2996495\";\"Malaucene\";\"ascii\"\n\"2996498\";\"Malataverne\";\"main\"\n\"2996505\";\"Malansac\";\"main\"\n\"2996505\";\"Malanseg\";\"other\"\n\"2996505\";\"Malañseg\";\"other\"\n\"2996514\";\"Malakoff\";\"main\"\n\"2996538\";\"Maizières-lès-Metz\";\"main\"\n\"2996538\";\"Maizieres-les-Metz\";\"ascii\"\n\"2996538\";\"Maizieres\";\"other\"\n\"2996538\";\"Maizières\";\"other\"\n\"2996540\";\"Maizières-la-Grande-Paroisse\";\"main\"\n\"2996540\";\"Maizieres-la-Grande-Paroisse\";\"ascii\"\n\"2996540\";\"Maizieres\";\"other\"\n\"2996540\";\"Maizières\";\"other\"\n\"2996559\";\"Maisse\";\"main\"\n\"2996564\";\"Maisons-Laffitte\";\"main\"\n\"2996564\";\"Mezon-Lafit\";\"other\"\n\"2996564\";\"Мезон-Лафит\";\"other\"\n\"2996568\";\"Maisons-Alfort\";\"main\"\n\"2996621\";\"Maisnil-lès-Ruitz\";\"main\"\n\"2996621\";\"Maisnil-les-Ruitz\";\"ascii\"\n\"2996621\";\"Maisnil-d'Houdain\";\"other\"\n\"2996621\";\"Maisnil-les Ruitz\";\"other\"\n\"2996621\";\"Maisnil-lès Ruitz\";\"other\"\n\"2996628\";\"Maisdon-sur-Sèvre\";\"main\"\n\"2996628\";\"Maisdon-sur-Sevre\";\"ascii\"\n\"2996628\";\"Maezon-ar-Gwini\";\"other\"\n\"2996628\";\"Maisdon\";\"other\"\n\"2996645\";\"Mainvilliers\";\"main\"\n\"2996653\";\"Maintenon\";\"main\"\n\"2996660\";\"Maing\";\"main\"\n\"2996660\";\"Naing\";\"other\"\n\"2996674\";\"Maincy\";\"main\"\n\"2996687\";\"Mailly-le-Camp\";\"main\"\n\"2996687\";\"Mailly\";\"other\"\n\"2996693\";\"Maillot\";\"main\"\n\"2996696\";\"Maillezais\";\"main\"\n\"2996711\";\"Maillane\";\"main\"\n\"2996711\";\"Maillanne\";\"other\"\n\"2996711\";\"Malhana\";\"other\"\n\"2996711\";\"maiyanu\";\"other\"\n\"2996711\";\"マイヤーヌ\";\"other\"\n\"2996722\";\"Maignelay-Montigny\";\"main\"\n\"2996726\";\"Maidières\";\"main\"\n\"2996726\";\"Maidieres\";\"ascii\"\n\"2996727\";\"Maîche\";\"main\"\n\"2996727\";\"Maiche\";\"ascii\"\n\"2996746\";\"Magny-Vernois\";\"main\"\n\"2996752\";\"Magny-les-Hameaux\";\"main\"\n\"2996752\";\"Magneio\";\"other\"\n\"2996752\";\"Magny\";\"other\"\n\"2996752\";\"Magny-l'Essart\";\"other\"\n\"2996752\";\"Malliacum\";\"other\"\n\"2996752\";\"Port-de-la-Montagne\";\"other\"\n\"2996755\";\"Magny-le-Hongre\";\"main\"\n\"2996755\";\"Magny\";\"other\"\n\"2996757\";\"Magny-le-Désert\";\"main\"\n\"2996757\";\"Magny-le-Desert\";\"ascii\"\n\"2996757\";\"Magny\";\"other\"\n\"2996764\";\"Magny-en-Vexin\";\"main\"\n\"2996764\";\"Magny\";\"other\"\n\"2996766\";\"Magny-Cours\";\"main\"\n\"2996766\";\"Magny\";\"other\"\n\"2996798\";\"Magné\";\"main\"\n\"2996798\";\"Magne\";\"ascii\"\n\"2996802\";\"Magnanville\";\"main\"\n\"2996807\";\"Magnac-sur-Touvre\";\"main\"\n\"2996807\";\"Magnac\";\"other\"\n\"2996810\";\"Magnac-Laval\";\"main\"\n\"2996810\";\"Magnac-la-Montagne\";\"other\"\n\"2996814\";\"Magland\";\"main\"\n\"2996818\";\"Magescq\";\"main\"\n\"2996819\";\"Magenta\";\"main\"\n\"2996823\";\"Magalas\";\"main\"\n\"2996827\";\"Maffliers\";\"main\"\n\"2996832\";\"Maël-Carhaix\";\"main\"\n\"2996832\";\"Mael-Carhaix\";\"ascii\"\n\"2996832\";\"Mel-Karaez\";\"other\"\n\"2996832\";\"Mêl-Karaez\";\"other\"\n\"2996874\";\"Mâcot-la-Plagne\";\"main\"\n\"2996874\";\"Macot-la-Plagne\";\"ascii\"\n\"2996882\";\"Mâcon\";\"main\"\n\"2996882\";\"Macon\";\"ascii\"\n\"2996882\";\"Grosne-les-Macon\";\"other\"\n\"2996882\";\"Grosne-lès-Macon\";\"other\"\n\"2996882\";\"Makon\";\"other\"\n\"2996882\";\"Makonas\";\"other\"\n\"2996882\";\"makon\";\"other\"\n\"2996882\";\"Макон\";\"other\"\n\"2996882\";\"マコン\";\"other\"\n\"2996885\";\"Maclas\";\"main\"\n\"2996901\";\"Macheren\";\"main\"\n\"2996905\";\"Machecoul\";\"main\"\n\"2996905\";\"Machikoul\";\"other\"\n\"2996906\";\"Maché\";\"main\"\n\"2996906\";\"Mache\";\"ascii\"\n\"2996918\";\"Macau\";\"main\"\n\"2996921\";\"Mably\";\"main\"\n\"2996927\";\"Lys-lez-Lannoy\";\"main\"\n\"2996927\";\"Lannoy-du-Nord\";\"other\"\n\"2996927\";\"Lys\";\"other\"\n\"2996944\";\"Lyon\";\"main\"\n\"2996944\";\"Lio\";\"other\"\n\"2996944\";\"Lion\";\"other\"\n\"2996944\";\"Lion - Lyon\";\"other\"\n\"2996944\";\"Liona\";\"other\"\n\"2996944\";\"Lionas\";\"other\"\n\"2996944\";\"Lione\";\"other\"\n\"2996944\";\"Lioni\";\"other\"\n\"2996944\";\"Liyon\";\"other\"\n\"2996944\";\"Lió\";\"other\"\n\"2996944\";\"Lión - Lyon\";\"other\"\n\"2996944\";\"Lugdunum\";\"other\"\n\"2996944\";\"Lyons\";\"other\"\n\"2996944\";\"Lyón\";\"other\"\n\"2996944\";\"li ang\";\"other\"\n\"2996944\";\"liong\";\"other\"\n\"2996944\";\"lyom\";\"other\"\n\"2996944\";\"lywn\";\"other\"\n\"2996944\";\"riyon\";\"other\"\n\"2996944\";\"Λυών\";\"other\"\n\"2996944\";\"Лион\";\"other\"\n\"2996944\";\"ליון\";\"other\"\n\"2996944\";\"ليون\";\"other\"\n\"2996944\";\"لیون\";\"other\"\n\"2996944\";\"ल्यों\";\"other\"\n\"2996944\";\"リヨン\";\"other\"\n\"2996944\";\"里昂\";\"other\"\n\"2996944\";\"리옹\";\"other\"\n\"2996953\";\"Lyaud\";\"main\"\n\"2996953\";\"Le Lyaud\";\"other\"\n\"2996957\";\"Luzy\";\"main\"\n\"2996959\";\"Luz-Saint-Sauveur\";\"main\"\n\"2996959\";\"Luz\";\"other\"\n\"2996963\";\"Luzinay\";\"main\"\n\"2996978\";\"Luzech\";\"main\"\n\"2996982\";\"Luzarches\";\"main\"\n\"2996986\";\"Luynes\";\"main\"\n\"2996986\";\"Roche-sur-Loire\";\"other\"\n\"2996995\";\"Luxeuil-les-Bains\";\"main\"\n\"2996995\";\"Luxeuil\";\"other\"\n\"2997007\";\"Lutzelhouse\";\"main\"\n\"2997010\";\"Lutterbach\";\"main\"\n\"2997044\";\"Lussac-les-Châteaux\";\"main\"\n\"2997044\";\"Lussac-les-Chateaux\";\"ascii\"\n\"2997044\";\"Lussac\";\"other\"\n\"2997044\";\"Lussac-sur-Vienne\";\"other\"\n\"2997048\";\"Lussac\";\"main\"\n\"2997052\";\"Lusigny-sur-Barse\";\"main\"\n\"2997052\";\"Lusigny\";\"other\"\n\"2997054\";\"Lusigny\";\"main\"\n\"2997054\";\"Dorvalet\";\"other\"\n\"2997058\";\"Lusignan\";\"main\"\n\"2997064\";\"Lusanger\";\"main\"\n\"2997064\";\"Luzevieg\";\"other\"\n\"2997076\";\"Lure\";\"main\"\n\"2997079\";\"Lurcy-Lévis\";\"main\"\n\"2997079\";\"Lurcy-Levis\";\"ascii\"\n\"2997079\";\"Lurcy-Levy\";\"other\"\n\"2997079\";\"Lurcy-Lévy\";\"other\"\n\"2997079\";\"Lurey-Levy\";\"other\"\n\"2997079\";\"Lurey-Lévy\";\"other\"\n\"2997084\";\"Luray\";\"main\"\n\"2997084\";\"Le Luat-Clairet\";\"other\"\n\"2997104\";\"L'Union\";\"main\"\n\"2997110\";\"Lunéville\";\"main\"\n\"2997110\";\"Luneville\";\"ascii\"\n\"2997110\";\"Ljunevil'\";\"other\"\n\"2997110\";\"Люневиль\";\"other\"\n\"2997111\";\"Lunery\";\"main\"\n\"2997112\";\"Luneray\";\"main\"\n\"2997113\";\"Lunel-Viel\";\"main\"\n\"2997116\";\"Lunel\";\"main\"\n\"2997116\";\"Ljunel'\";\"other\"\n\"2997116\";\"Люнель\";\"other\"\n\"2997123\";\"Lunay\";\"main\"\n\"2997132\";\"Lumio\";\"main\"\n\"2997137\";\"Lumigny-Nesles-Ormeaux\";\"main\"\n\"2997139\";\"Lumes\";\"main\"\n\"2997142\";\"Lumbres\";\"main\"\n\"2997143\";\"Lumbin\";\"main\"\n\"2997146\";\"Luitré\";\"main\"\n\"2997146\";\"Luitre\";\"ascii\"\n\"2997146\";\"Loezherieg\";\"other\"\n\"2997148\";\"Luisant\";\"main\"\n\"2997158\";\"Lugrin\";\"main\"\n\"2997184\";\"Ludres\";\"main\"\n\"2997185\";\"Ludon-Médoc\";\"main\"\n\"2997185\";\"Ludon-Medoc\";\"ascii\"\n\"2997185\";\"Ludon\";\"other\"\n\"2997204\";\"Luc-sur-Mer\";\"main\"\n\"2997204\";\"Luc\";\"other\"\n\"2997207\";\"Lucq-de-Béarn\";\"main\"\n\"2997207\";\"Lucq-de-Bearn\";\"ascii\"\n\"2997207\";\"Lucq\";\"other\"\n\"2997210\";\"Luçon\";\"main\"\n\"2997210\";\"Lucon\";\"ascii\"\n\"2997214\";\"Lucinges\";\"main\"\n\"2997223\";\"Luché-Pringé\";\"main\"\n\"2997223\";\"Luche-Pringe\";\"ascii\"\n\"2997223\";\"Luche\";\"other\"\n\"2997223\";\"Luché\";\"other\"\n\"2997234\";\"Lucéram\";\"main\"\n\"2997234\";\"Luceram\";\"ascii\"\n\"2997238\";\"Lucenay-lès-Aix\";\"main\"\n\"2997238\";\"Lucenay-les-Aix\";\"ascii\"\n\"2997238\";\"Bourg-la-Reunion\";\"other\"\n\"2997238\";\"Bourg-la-Réunion\";\"other\"\n\"2997238\";\"Lucenay\";\"other\"\n\"2997241\";\"Lucenay\";\"main\"\n\"2997242\";\"Luceau\";\"main\"\n\"2997246\";\"Lucé\";\"main\"\n\"2997246\";\"Luce\";\"ascii\"\n\"2997248\";\"Lucciana\";\"main\"\n\"2997248\";\"Luciana\";\"other\"\n\"2997251\";\"Luçay-le-Mâle\";\"main\"\n\"2997251\";\"Lucay-le-Male\";\"ascii\"\n\"2997251\";\"Lucay\";\"other\"\n\"2997251\";\"Luçay\";\"other\"\n\"2997262\";\"Luc-la-Primaube\";\"main\"\n\"2997271\";\"Lubersac\";\"main\"\n\"2997279\";\"Luant\";\"main\"\n\"2997286\";\"Lozinghem\";\"main\"\n\"2997295\";\"Lozanne\";\"main\"\n\"2997295\";\"Lozane\";\"other\"\n\"2997297\";\"Loyettes\";\"main\"\n\"2997300\";\"Loyat\";\"main\"\n\"2997300\";\"Loiad\";\"other\"\n\"2997304\";\"Lovagny\";\"main\"\n\"2997305\";\"Louzy\";\"main\"\n\"2997316\";\"Louvroil\";\"main\"\n\"2997317\";\"Louvres\";\"main\"\n\"2997325\";\"Louvigny\";\"main\"\n\"2997331\";\"Louvigné-du-Désert\";\"main\"\n\"2997331\";\"Louvigne-du-Desert\";\"ascii\"\n\"2997331\";\"Louvigne\";\"other\"\n\"2997331\";\"Louvigneg-an-Dezerzh\";\"other\"\n\"2997331\";\"Louvigné\";\"other\"\n\"2997332\";\"Louvigné-de-Bais\";\"main\"\n\"2997332\";\"Louvigne-de-Bais\";\"ascii\"\n\"2997332\";\"Louvigne\";\"other\"\n\"2997332\";\"Louvigneg-Baez\";\"other\"\n\"2997332\";\"Louvigné\";\"other\"\n\"2997336\";\"Louviers\";\"main\"\n\"2997340\";\"Louvie-Juzon\";\"main\"\n\"2997340\";\"Louvie\";\"other\"\n\"2997345\";\"Louverné\";\"main\"\n\"2997345\";\"Louverne\";\"ascii\"\n\"2997351\";\"Louveciennes\";\"main\"\n\"2997371\";\"Loury\";\"main\"\n\"2997384\";\"Lourmarin\";\"main\"\n\"2997384\";\"rurumaran\";\"other\"\n\"2997384\";\"ルールマラン\";\"other\"\n\"2997395\";\"Lourdes\";\"main\"\n\"2997395\";\"La Montagne\";\"other\"\n\"2997395\";\"Lapurdum\";\"other\"\n\"2997395\";\"Lorda\";\"other\"\n\"2997395\";\"lu er de\";\"other\"\n\"2997395\";\"rurudo\";\"other\"\n\"2997395\";\"ルルド\";\"other\"\n\"2997395\";\"盧爾德\";\"other\"\n\"2997397\";\"Lourches\";\"main\"\n\"2997405\";\"Louplande\";\"main\"\n\"2997407\";\"Loupian\";\"main\"\n\"2997409\";\"Loupiac\";\"main\"\n\"2997409\";\"Loupiac-de-Cadillac\";\"other\"\n\"2997439\";\"Louhans\";\"main\"\n\"2997439\";\"Beaulieu\";\"other\"\n\"2997456\";\"Loué\";\"main\"\n\"2997456\";\"Loue\";\"ascii\"\n\"2997457\";\"Loudun\";\"main\"\n\"2997465\";\"Loudéac\";\"main\"\n\"2997465\";\"Loudeac\";\"ascii\"\n\"2997465\";\"Loudieg\";\"other\"\n\"2997493\";\"Loubert\";\"main\"\n\"2997511\";\"Louargat\";\"main\"\n\"2997511\";\"Louergad\";\"other\"\n\"2997514\";\"Louannec\";\"main\"\n\"2997514\";\"Louaneg\";\"other\"\n\"2997535\";\"Losne\";\"main\"\n\"2997547\";\"Lorris\";\"main\"\n\"2997548\";\"Lorrez-le-Bocage-Préaux\";\"main\"\n\"2997548\";\"Lorrez-le-Bocage-Preaux\";\"ascii\"\n\"2997548\";\"Lorrez\";\"other\"\n\"2997552\";\"Lorquin\";\"main\"\n\"2997556\";\"Lormont\";\"main\"\n\"2997559\";\"Lormes\";\"main\"\n\"2997566\";\"Lormaison\";\"main\"\n\"2997569\";\"Loriol-sur-Drôme\";\"main\"\n\"2997569\";\"Loriol-sur-Drome\";\"ascii\"\n\"2997569\";\"Loriol\";\"other\"\n\"2997570\";\"Loriol-du-Comtat\";\"main\"\n\"2997570\";\"Loriol\";\"other\"\n\"2997577\";\"Lorient\";\"main\"\n\"2997577\";\"An Oriant\";\"other\"\n\"2997577\";\"Lor'jan\";\"other\"\n\"2997577\";\"Лорьян\";\"other\"\n\"2997581\";\"Lorgues\";\"main\"\n\"2997583\";\"Lorgies\";\"main\"\n\"2997590\";\"Lorette\";\"main\"\n\"2997590\";\"Assailly\";\"other\"\n\"2997616\";\"Loperhet\";\"main\"\n\"2997616\";\"Loperc'hed\";\"other\"\n\"2997617\";\"Lopérec\";\"main\"\n\"2997617\";\"Loperec\";\"ascii\"\n\"2997617\";\"Lopereg\";\"other\"\n\"2997619\";\"Loos-en-Gohelle\";\"main\"\n\"2997619\";\"Loos\";\"other\"\n\"2997620\";\"Loos\";\"main\"\n\"2997621\";\"Loon-Plage\";\"main\"\n\"2997622\";\"Looberghe\";\"main\"\n\"2997626\";\"Lons-le-Saunier\";\"main\"\n\"2997626\";\"Franciade\";\"other\"\n\"2997626\";\"ron=ru=sonie\";\"other\"\n\"2997626\";\"ロン＝ル＝ソーニエ\";\"other\"\n\"2997628\";\"Lons\";\"main\"\n\"2997638\";\"Longwy\";\"main\"\n\"2997638\";\"Lonkech\";\"other\"\n\"2997644\";\"Longvic\";\"main\"\n\"2997646\";\"Longuyon\";\"main\"\n\"2997653\";\"Longueville\";\"main\"\n\"2997670\";\"Longuenesse\";\"main\"\n\"2997675\";\"Longueil-Sainte-Marie\";\"main\"\n\"2997675\";\"Longueil-la-Montagne\";\"other\"\n\"2997676\";\"Longueil-Annel\";\"main\"\n\"2997676\";\"Longueil-sur-Oise\";\"other\"\n\"2997681\";\"Longueau\";\"main\"\n\"2997694\";\"Longpré-les-Corps-Saints\";\"main\"\n\"2997694\";\"Longpre-les-Corps-Saints\";\"ascii\"\n\"2997694\";\"Longpre\";\"other\"\n\"2997694\";\"Longpré\";\"other\"\n\"2997698\";\"Longpont-sur-Orge\";\"main\"\n\"2997698\";\"Longpont\";\"other\"\n\"2997700\";\"Longperrier\";\"main\"\n\"2997704\";\"Longny-au-Perche\";\"main\"\n\"2997704\";\"Longny\";\"other\"\n\"2997704\";\"Longny-du-Perche\";\"other\"\n\"2997706\";\"Longnes\";\"main\"\n\"2997711\";\"Longlaville\";\"main\"\n\"2997712\";\"Longjumeau\";\"main\"\n\"2997712\";\"Lonzhjumo\";\"other\"\n\"2997712\";\"Лонжюмо\";\"other\"\n\"2997713\";\"Longfossé\";\"main\"\n\"2997713\";\"Longfosse\";\"ascii\"\n\"2997716\";\"Longeville-lès-Saint-Avold\";\"main\"\n\"2997716\";\"Longeville-les-Saint-Avold\";\"ascii\"\n\"2997716\";\"Longeville\";\"other\"\n\"2997717\";\"Longeville-lès-Metz\";\"main\"\n\"2997717\";\"Longeville-les-Metz\";\"ascii\"\n\"2997717\";\"Longeville\";\"other\"\n\"2997719\";\"Longeville-en-Barrois\";\"main\"\n\"2997719\";\"Longeville\";\"other\"\n\"2997722\";\"Longeville-sur-Mer\";\"main\"\n\"2997744\";\"Longecourt-en-Plaine\";\"main\"\n\"2997744\";\"Longecourt\";\"other\"\n\"2997744\";\"Longecourt-en-Maine\";\"other\"\n\"2997759\";\"Longchaumois\";\"main\"\n\"2997768\";\"Longchamp\";\"main\"\n\"2997775\";\"Longages\";\"main\"\n\"2997784\";\"Londinières\";\"main\"\n\"2997784\";\"Londinieres\";\"ascii\"\n\"2997792\";\"Lompret\";\"main\"\n\"2997803\";\"Lomme\";\"main\"\n\"2997803\";\"Lomm\";\"other\"\n\"2997803\";\"Ломм\";\"other\"\n\"2997804\";\"Lombron\";\"main\"\n\"2997812\";\"Lombez\";\"main\"\n\"2997833\";\"Loivre\";\"main\"\n\"2997841\";\"Loison-sous-Lens\";\"main\"\n\"2997841\";\"Loison\";\"other\"\n\"2997845\";\"Loisin\";\"main\"\n\"2997855\";\"Loiron\";\"main\"\n\"2997875\";\"Loire-sur-Rhône\";\"main\"\n\"2997875\";\"Loire-sur-Rhone\";\"ascii\"\n\"2997897\";\"Logonna-Daoulas\";\"main\"\n\"2997897\";\"Logonna\";\"other\"\n\"2997904\";\"Lognes\";\"main\"\n\"2997936\";\"Lodève\";\"main\"\n\"2997936\";\"Lodeve\";\"ascii\"\n\"2997936\";\"Lodeva\";\"other\"\n\"2997943\";\"Loctudy\";\"main\"\n\"2997943\";\"Loktudi\";\"other\"\n\"2997947\";\"Locquirec\";\"main\"\n\"2997947\";\"Lokireg\";\"other\"\n\"2997952\";\"Locquémeau\";\"main\"\n\"2997952\";\"Locquemeau\";\"ascii\"\n\"2997956\";\"Locon\";\"main\"\n\"2997957\";\"Locoal-Mendon\";\"main\"\n\"2997957\";\"Lokoal-Mendon\";\"other\"\n\"2997959\";\"Locmiquélic\";\"main\"\n\"2997959\";\"Locmiquelic\";\"ascii\"\n\"2997959\";\"Lokmikaelig\";\"other\"\n\"2997961\";\"Locminé\";\"main\"\n\"2997961\";\"Locmine\";\"ascii\"\n\"2997961\";\"Logunec'h\";\"other\"\n\"2997964\";\"Locmariaquer\";\"main\"\n\"2997964\";\"Lokmaria-Kaer\";\"other\"\n\"2997996\";\"Loches\";\"main\"\n\"2997996\";\"Castello di Loches\";\"other\"\n\"2997996\";\"Chateau de Loches\";\"other\"\n\"2997996\";\"Château de Loches\";\"other\"\n\"2997996\";\"Losh\";\"other\"\n\"2997996\";\"Schloss Loches\";\"other\"\n\"2997996\";\"Shato d'o Losh\";\"other\"\n\"2997996\";\"Лош\";\"other\"\n\"2997996\";\"Шато дьо Лош\";\"other\"\n\"2998018\";\"Llupia\";\"main\"\n\"2998027\";\"Lizy-sur-Ourcq\";\"main\"\n\"2998027\";\"Lizy\";\"other\"\n\"2998055\";\"Livry-sur-Seine\";\"main\"\n\"2998055\";\"Livry\";\"other\"\n\"2998056\";\"Livry-Gargan\";\"main\"\n\"2998056\";\"Livry\";\"other\"\n\"2998056\";\"Livry-en-Aulnoye\";\"other\"\n\"2998056\";\"Livry-en-Launois\";\"other\"\n\"2998059\";\"Livron-sur-Drôme\";\"main\"\n\"2998059\";\"Livron-sur-Drome\";\"ascii\"\n\"2998059\";\"Livron\";\"other\"\n\"2998061\";\"Livré-sur-Changeon\";\"main\"\n\"2998061\";\"Livre-sur-Changeon\";\"ascii\"\n\"2998061\";\"Liverieg-Kenton\";\"other\"\n\"2998061\";\"Livre\";\"other\"\n\"2998061\";\"Livre-sur-Chaugeon\";\"other\"\n\"2998061\";\"Livré\";\"other\"\n\"2998066\";\"Livinhac-le-Haut\";\"main\"\n\"2998066\";\"Livinhac\";\"other\"\n\"2998072\";\"Livet-et-Gavet\";\"main\"\n\"2998072\";\"Livet\";\"other\"\n\"2998076\";\"Liverdy-en-Brie\";\"main\"\n\"2998076\";\"Liverdy\";\"other\"\n\"2998078\";\"Liverdun\";\"main\"\n\"2998081\";\"Livarot\";\"main\"\n\"2998095\";\"Lit-et-Mixe\";\"main\"\n\"2998095\";\"Lit\";\"other\"\n\"2998097\";\"Listrac-Médoc\";\"main\"\n\"2998097\";\"Listrac-Medoc\";\"ascii\"\n\"2998097\";\"Listrac\";\"other\"\n\"2998102\";\"Lissieu\";\"main\"\n\"2998105\";\"Lisses\";\"main\"\n\"2998124\";\"Lisle-sur-Tarn\";\"main\"\n\"2998124\";\"Lisle-du-Tarn\";\"other\"\n\"2998127\";\"L'Isle-sur-la-Sorgue\";\"main\"\n\"2998127\";\"Isle sur Sorgue\";\"other\"\n\"2998127\";\"L'Isle\";\"other\"\n\"2998136\";\"L'Isle-d'Abeau\";\"main\"\n\"2998136\";\"Ile d'Abeau\";\"other\"\n\"2998136\";\"Isle-d'Abeau\";\"other\"\n\"2998140\";\"L'Isle-Adam\";\"main\"\n\"2998150\";\"Lisieux\";\"main\"\n\"2998150\";\"Lexovium\";\"other\"\n\"2998165\";\"Liré\";\"main\"\n\"2998165\";\"Lire\";\"ascii\"\n\"2998167\";\"Lipsheim\";\"main\"\n\"2998187\";\"Lion-sur-Mer\";\"main\"\n\"2998187\";\"Lion\";\"other\"\n\"2998202\";\"Linxe\";\"main\"\n\"2998209\";\"Linselles\";\"main\"\n\"2998221\";\"Linguizzetta\";\"main\"\n\"2998221\";\"Linguizetta\";\"other\"\n\"2998224\";\"Lingolsheim\";\"main\"\n\"2998224\";\"Tanneries\";\"other\"\n\"2998251\";\"Linas\";\"main\"\n\"2998252\";\"Linars\";\"main\"\n\"2998253\";\"Linards\";\"main\"\n\"2998264\";\"Limoux\";\"main\"\n\"2998264\";\"Limos\";\"other\"\n\"2998264\";\"Limós\";\"other\"\n\"2998269\";\"Limours\";\"main\"\n\"2998269\";\"Limours-en-Hurepoix\";\"other\"\n\"2998277\";\"Limonest\";\"main\"\n\"2998286\";\"Limoges\";\"main\"\n\"2998286\";\"Augustoritum\";\"other\"\n\"2998286\";\"Limages\";\"other\"\n\"2998286\";\"Limogo\";\"other\"\n\"2998286\";\"Limog·es\";\"other\"\n\"2998286\";\"Limotges\";\"other\"\n\"2998286\";\"Limoz\";\"other\"\n\"2998286\";\"Limozh\";\"other\"\n\"2998286\";\"Limoĝo\";\"other\"\n\"2998286\";\"Limòtges\";\"other\"\n\"2998286\";\"Llemotges\";\"other\"\n\"2998286\";\"li meng\";\"other\"\n\"2998286\";\"limoja\";\"other\"\n\"2998286\";\"lymwz'\";\"other\"\n\"2998286\";\"lymwzh\";\"other\"\n\"2998286\";\"rimoju\";\"other\"\n\"2998286\";\"Λιμόζ\";\"other\"\n\"2998286\";\"Лимож\";\"other\"\n\"2998286\";\"לימוז'\";\"other\"\n\"2998286\";\"لیموژ\";\"other\"\n\"2998286\";\"लिमोज\";\"other\"\n\"2998286\";\"リモージュ\";\"other\"\n\"2998286\";\"里蒙\";\"other\"\n\"2998294\";\"Limetz-Villez\";\"main\"\n\"2998296\";\"Limésy\";\"main\"\n\"2998296\";\"Limesy\";\"ascii\"\n\"2998298\";\"Limerzel\";\"main\"\n\"2998298\";\"Lizmerzher\";\"other\"\n\"2998305\";\"Limeil-Brévannes\";\"main\"\n\"2998305\";\"Limeil-Brevannes\";\"ascii\"\n\"2998305\";\"Limeil\";\"other\"\n\"2998305\";\"Limeil-Breyannes\";\"other\"\n\"2998311\";\"Limay\";\"main\"\n\"2998312\";\"Limas\";\"main\"\n\"2998320\";\"Lillers\";\"main\"\n\"2998322\";\"Lillebonne\";\"main\"\n\"2998324\";\"Lille\";\"main\"\n\"2998324\";\"Insula\";\"other\"\n\"2998324\";\"Lil\";\"other\"\n\"2998324\";\"Lila\";\"other\"\n\"2998324\";\"Lill'\";\"other\"\n\"2998324\";\"Lilla\";\"other\"\n\"2998324\";\"Riesel\";\"other\"\n\"2998324\";\"Rijsel\";\"other\"\n\"2998324\";\"li er\";\"other\"\n\"2998324\";\"lil\";\"other\"\n\"2998324\";\"lila\";\"other\"\n\"2998324\";\"lyl\";\"other\"\n\"2998324\";\"riru\";\"other\"\n\"2998324\";\"Лил\";\"other\"\n\"2998324\";\"Лилль\";\"other\"\n\"2998324\";\"ליל\";\"other\"\n\"2998324\";\"ليل\";\"other\"\n\"2998324\";\"لیل\";\"other\"\n\"2998324\";\"लिल\";\"other\"\n\"2998324\";\"リール\";\"other\"\n\"2998324\";\"里尔\";\"other\"\n\"2998324\";\"릴\";\"other\"\n\"2998330\";\"L'Île-Rousse\";\"main\"\n\"2998330\";\"L'Ile-Rousse\";\"ascii\"\n\"2998330\";\"Ile Rousse\";\"other\"\n\"2998330\";\"Isola Rossa\";\"other\"\n\"2998330\";\"L'Il'-Rus\";\"other\"\n\"2998330\";\"L'Isula Rossa\";\"other\"\n\"2998330\";\"Île Rousse\";\"other\"\n\"2998330\";\"Л'Иль-Рус\";\"other\"\n\"2998340\";\"Ligugé\";\"main\"\n\"2998340\";\"Liguge\";\"ascii\"\n\"2998343\";\"Ligueil\";\"main\"\n\"2998343\";\"Ligueuil\";\"other\"\n\"2998347\";\"Ligré\";\"main\"\n\"2998347\";\"Ligre\";\"ascii\"\n\"2998358\";\"Ligny-le-Ribault\";\"main\"\n\"2998358\";\"Ligny\";\"other\"\n\"2998359\";\"Ligny-le-Châtel\";\"main\"\n\"2998359\";\"Ligny-le-Chatel\";\"ascii\"\n\"2998359\";\"Ligny\";\"other\"\n\"2998360\";\"Ligny-en-Cambrésis\";\"main\"\n\"2998360\";\"Ligny-en-Cambresis\";\"ascii\"\n\"2998360\";\"Ligny\";\"other\"\n\"2998362\";\"Ligny-en-Barrois\";\"main\"\n\"2998362\";\"Ligny\";\"other\"\n\"2998386\";\"Lignières\";\"main\"\n\"2998386\";\"Lignieres\";\"ascii\"\n\"2998404\";\"Ligné\";\"main\"\n\"2998404\";\"Ligne\";\"ascii\"\n\"2998404\";\"Legneg\";\"other\"\n\"2998409\";\"Lignan-sur-Orb\";\"main\"\n\"2998409\";\"Lignan\";\"other\"\n\"2998423\";\"Liffré\";\"main\"\n\"2998423\";\"Liffre\";\"ascii\"\n\"2998423\";\"Liverieg\";\"other\"\n\"2998425\";\"Liffol-le-Grand\";\"main\"\n\"2998431\";\"Liévin\";\"main\"\n\"2998431\";\"Lievin\";\"ascii\"\n\"2998431\";\"Lieven\";\"other\"\n\"2998431\";\"Лиевен\";\"other\"\n\"2998437\";\"Lieu-Saint-Amand\";\"main\"\n\"2998439\";\"Lieusaint\";\"main\"\n\"2998443\";\"Lieurey\";\"main\"\n\"2998445\";\"Lieuran-lès-Béziers\";\"main\"\n\"2998445\";\"Lieuran-les-Beziers\";\"ascii\"\n\"2998445\";\"Lieuran\";\"other\"\n\"2998460\";\"Liesse-Notre-Dame\";\"main\"\n\"2998460\";\"Notre Dame de Liesse\";\"other\"\n\"2998469\";\"Liergues\";\"main\"\n\"2998474\";\"Lièpvre\";\"main\"\n\"2998474\";\"Liepvre\";\"ascii\"\n\"2998492\";\"Licques\";\"main\"\n\"2998517\";\"Libourne\";\"main\"\n\"2998517\";\"Liborna\";\"other\"\n\"2998517\";\"Liburn\";\"other\"\n\"2998517\";\"riburunu\";\"other\"\n\"2998517\";\"Либурн\";\"other\"\n\"2998517\";\"リブルヌ\";\"other\"\n\"2998520\";\"Libercourt\";\"main\"\n\"2998532\";\"Liancourt\";\"main\"\n\"2998532\";\"L'Unite-de-l'Oise\";\"other\"\n\"2998532\";\"L'Unité-de-l'Oise\";\"other\"\n\"2998532\";\"Liancourt-sous-Clermont\";\"other\"\n\"2998532\";\"Unite-sur-Oise\";\"other\"\n\"2998532\";\"Unité-sur-Oise\";\"other\"\n\"2998574\";\"Hôpital-Camfrout\";\"main\"\n\"2998574\";\"Hopital-Camfrout\";\"ascii\"\n\"2998574\";\"An Ospital\";\"other\"\n\"2998574\";\"L'Hopital\";\"other\"\n\"2998574\";\"L'Hopital-Camfrout\";\"other\"\n\"2998574\";\"L'Hôpital\";\"other\"\n\"2998574\";\"L'Hôpital-Camfrout\";\"other\"\n\"2998622\";\"Lherm\";\"main\"\n\"2998632\";\"L'Haÿ-les-Roses\";\"main\"\n\"2998632\";\"L'Hay-les-Roses\";\"ascii\"\n\"2998632\";\"L'Hay\";\"other\"\n\"2998639\";\"Lezoux\";\"main\"\n\"2998641\";\"Lézigneux\";\"main\"\n\"2998641\";\"Lezigneux\";\"ascii\"\n\"2998643\";\"Lézignan-la-Cèbe\";\"main\"\n\"2998643\";\"Lezignan-la-Cebe\";\"ascii\"\n\"2998643\";\"Lesignan la Cebe\";\"other\"\n\"2998643\";\"Lezignan\";\"other\"\n\"2998643\";\"Lésignan la Cèbe\";\"other\"\n\"2998643\";\"Lézignan\";\"other\"\n\"2998644\";\"Lézignan-Corbières\";\"main\"\n\"2998644\";\"Lezignan-Corbieres\";\"ascii\"\n\"2998644\";\"Lezicnan-Corbieres\";\"other\"\n\"2998644\";\"Lezignan\";\"other\"\n\"2998644\";\"Lézicnan-Corbieres\";\"other\"\n\"2998644\";\"Lézignan\";\"other\"\n\"2998654\";\"Lezennes\";\"main\"\n\"2998660\";\"Lezay\";\"main\"\n\"2998661\";\"Lézat-sur-Lèze\";\"main\"\n\"2998661\";\"Lezat-sur-Leze\";\"ascii\"\n\"2998661\";\"Lezat\";\"other\"\n\"2998661\";\"Lézat\";\"other\"\n\"2998663\";\"Lézardrieux\";\"main\"\n\"2998663\";\"Lezardrieux\";\"ascii\"\n\"2998663\";\"Lezardrev\";\"other\"\n\"2998666\";\"Lézan\";\"main\"\n\"2998666\";\"Lezan\";\"ascii\"\n\"2998696\";\"Leyment\";\"main\"\n\"2998697\";\"Leymen\";\"main\"\n\"2998698\";\"Leyme\";\"main\"\n\"2998709\";\"Lexy\";\"main\"\n\"2998714\";\"Lewarde\";\"main\"\n\"2998718\";\"Levroux\";\"main\"\n\"2998718\";\"La Fontaine\";\"other\"\n\"2998718\";\"Richelaine\";\"other\"\n\"2998731\";\"Le Vivier-sur-Mer\";\"main\"\n\"2998731\";\"Gwiver\";\"other\"\n\"2998731\";\"Le Vivier\";\"other\"\n\"2998732\";\"Viviers-du-Lac\";\"main\"\n\"2998738\";\"Lévis-Saint-Nom\";\"main\"\n\"2998738\";\"Levis-Saint-Nom\";\"ascii\"\n\"2998738\";\"L'Yvette\";\"other\"\n\"2998738\";\"Levis\";\"other\"\n\"2998738\";\"Lévis\";\"other\"\n\"2998803\";\"Lévignac\";\"main\"\n\"2998803\";\"Levignac\";\"ascii\"\n\"2998803\";\"Levignac-sur-Save\";\"other\"\n\"2998803\";\"Lévignac-sur-Save\";\"other\"\n\"2998807\";\"Le Vigen\";\"main\"\n\"2998810\";\"Le Vigan\";\"main\"\n\"2998811\";\"Le Vigan\";\"main\"\n\"2998811\";\"Commune-des-Monts\";\"other\"\n\"2998811\";\"Monts\";\"other\"\n\"2998811\";\"Sablono:TabelKapoLauCarta\";\"other\"\n\"2998811\";\"Ŝablono:TabelKapoLaŭĈarta\";\"other\"\n\"2998830\";\"Levier\";\"main\"\n\"2998834\";\"Le Vieil-Baugé\";\"main\"\n\"2998834\";\"Le Vieil-Bauge\";\"ascii\"\n\"2998851\";\"Levet\";\"main\"\n\"2998854\";\"Le Vésinet\";\"main\"\n\"2998854\";\"Le Vesinet\";\"ascii\"\n\"2998856\";\"Lèves\";\"main\"\n\"2998856\";\"Leves\";\"ascii\"\n\"2998862\";\"Le Versoud\";\"main\"\n\"2998879\";\"Vernet\";\"main\"\n\"2998917\";\"Levens\";\"main\"\n\"2998933\";\"Le Vaudreuil\";\"main\"\n\"2998933\";\"Vaudreuil-les-Ponts\";\"other\"\n\"2998963\";\"Le Val-Saint-Père\";\"main\"\n\"2998963\";\"Le Val-Saint-Pere\";\"ascii\"\n\"2998963\";\"Le Val-Pere\";\"other\"\n\"2998963\";\"Le Val-Père\";\"other\"\n\"2998963\";\"Val Saint Pair\";\"other\"\n\"2998965\";\"Le Val-Saint-Germain\";\"main\"\n\"2998965\";\"Val-Libre\";\"other\"\n\"2998975\";\"Levallois-Perret\";\"main\"\n\"2998975\";\"Levallois\";\"other\"\n\"2998998\";\"Valdahon\";\"main\"\n\"2999002\";\"Leval\";\"main\"\n\"2999012\";\"Le Val\";\"main\"\n\"2999020\";\"Leuville-sur-Orge\";\"main\"\n\"2999020\";\"Leuville\";\"other\"\n\"2999040\";\"Leudeville\";\"main\"\n\"2999046\";\"Leucate\";\"main\"\n\"2999089\";\"Le Trévoux\";\"main\"\n\"2999089\";\"Le Trevoux\";\"ascii\"\n\"2999089\";\"An Treou-Kernev\";\"other\"\n\"2999089\";\"An Treoù-Kernev\";\"other\"\n\"2999093\";\"Le Tréport\";\"main\"\n\"2999093\";\"Le Treport\";\"ascii\"\n\"2999126\";\"Le Trait\";\"main\"\n\"2999131\";\"Le Touvet\";\"main\"\n\"2999139\";\"Le Touquet-Paris-Plage\";\"main\"\n\"2999139\";\"Le Touquet\";\"other\"\n\"2999139\";\"Le Tourquet\";\"other\"\n\"2999139\";\"Le Tourquet-Paris-Plage\";\"other\"\n\"2999139\";\"Paris-Plage\";\"other\"\n\"2999139\";\"Tourquet\";\"other\"\n\"2999163\";\"Le Tignet\";\"main\"\n\"2999170\";\"Le Thuit-Signol\";\"main\"\n\"2999178\";\"Le Thou\";\"main\"\n\"2999179\";\"Le Thoronet\";\"main\"\n\"2999180\";\"Le Thor\";\"main\"\n\"2999181\";\"Le Tholy\";\"main\"\n\"2999182\";\"Le Tholonet\";\"main\"\n\"2999182\";\"Tholonet\";\"other\"\n\"2999185\";\"Le Thillot\";\"main\"\n\"2999186\";\"Le Thillay\";\"main\"\n\"2999203\";\"Le Theil-de-Bretagne\";\"main\"\n\"2999203\";\"An Tilh\";\"other\"\n\"2999203\";\"Le Theil\";\"other\"\n\"2999205\";\"Le Theil-Bocage\";\"main\"\n\"2999236\";\"Le Temple-de-Bretagne\";\"main\"\n\"2999236\";\"Le Temple\";\"other\"\n\"2999236\";\"Le Temple-Maupertuis\";\"other\"\n\"2999236\";\"Templ-Breizh\";\"other\"\n\"2999251\";\"Le Teilleul\";\"main\"\n\"2999259\";\"Le Teil\";\"main\"\n\"2999260\";\"Le Teich\";\"main\"\n\"2999290\";\"Le Tallud\";\"main\"\n\"2999296\";\"Le Taillan-Médoc\";\"main\"\n\"2999296\";\"Le Taillan-Medoc\";\"ascii\"\n\"2999296\";\"Le Taillan\";\"other\"\n\"2999303\";\"Le Syndicat\";\"main\"\n\"2999391\";\"Les Vans\";\"main\"\n\"2999446\";\"Lestrem\";\"main\"\n\"2999485\";\"Les Touches\";\"main\"\n\"2999485\";\"An Dosenneg\";\"other\"\n\"2999528\";\"Lestelle-Bétharram\";\"main\"\n\"2999528\";\"Lestelle-Betharram\";\"ascii\"\n\"2999528\";\"Lestelle\";\"other\"\n\"2999572\";\"Les Sorinières\";\"main\"\n\"2999572\";\"Les Sorinieres\";\"ascii\"\n\"2999572\";\"Kersoren\";\"other\"\n\"2999619\";\"Lessay\";\"main\"\n\"2999649\";\"Les Salles-du-Gardon\";\"main\"\n\"2999683\";\"Les Sables-d'Olonne\";\"main\"\n\"2999683\";\"Sables-d'Olonne\";\"other\"\n\"2999706\";\"Les Rousses\";\"main\"\n\"2999725\";\"Les Rosiers-sur-Loire\";\"main\"\n\"2999725\";\"Les Rosiers\";\"other\"\n\"2999742\";\"Les Roches-de-Condrieu\";\"main\"\n\"2999742\";\"Les Roches\";\"other\"\n\"2999787\";\"Les Riceys\";\"main\"\n\"2999838\";\"Lesquin\";\"main\"\n\"2999908\";\"Les Ponts-de-Cé\";\"main\"\n\"2999908\";\"Les Ponts-de-Ce\";\"ascii\"\n\"2999908\";\"Le Pont de Ce\";\"other\"\n\"2999908\";\"Ponts-Libres\";\"other\"\n\"2999976\";\"Lespinasse\";\"main\"\n\"2999981\";\"Lespignan\";\"main\"\n\"2999982\";\"Les Pieux\";\"main\"\n\"3000047\";\"Les Pennes-Mirabeau\";\"main\"\n\"3000047\";\"Les Pennes\";\"other\"\n\"3000052\";\"Les Peintures\";\"main\"\n\"3000060\";\"Les Pavillons-sous-Bois\";\"main\"\n\"3000060\";\"Pavillons\";\"other\"\n\"3000060\";\"Pavillons-sous-Bois\";\"other\"\n\"3000060\";\"les Pavillons\";\"other\"\n\"3000072\";\"Lesparre-Médoc\";\"main\"\n\"3000072\";\"Lesparre-Medoc\";\"ascii\"\n\"3000072\";\"L'Sparre\";\"other\"\n\"3000072\";\"Lesparre\";\"other\"\n\"3000072\";\"Lesperre\";\"other\"\n\"3000090\";\"Le Sourn\";\"main\"\n\"3000090\";\"Ar Sorn\";\"other\"\n\"3000120\";\"Les Ormes\";\"main\"\n\"3000139\";\"Le Soler\";\"main\"\n\"3000139\";\"el Soler\";\"other\"\n\"3000165\";\"Les Noës-près-Troyes\";\"main\"\n\"3000165\";\"Les Noes-pres-Troyes\";\"ascii\"\n\"3000165\";\"Les Noes\";\"other\"\n\"3000165\";\"Les Noës\";\"other\"\n\"3000174\";\"Lesneven\";\"main\"\n\"3000192\";\"Les Mureaux\";\"main\"\n\"3000201\";\"Moutiers-les-Mauxfaits\";\"main\"\n\"3000201\";\"Les Moutiers\";\"other\"\n\"3000201\";\"Les Moutiers-Fideles\";\"other\"\n\"3000201\";\"Les Moutiers-Fidèles\";\"other\"\n\"3000205\";\"Les Moutiers-en-Retz\";\"main\"\n\"3000246\";\"Les Montils\";\"main\"\n\"3000268\";\"Les Molières\";\"main\"\n\"3000268\";\"Les Molieres\";\"ascii\"\n\"3000329\";\"Les Mées\";\"main\"\n\"3000329\";\"Les Mees\";\"ascii\"\n\"3000351\";\"Les Mathes\";\"main\"\n\"3000353\";\"Les Matelles\";\"main\"\n\"3000400\";\"Les Marches\";\"main\"\n\"3000443\";\"Les Magnils-Reigniers\";\"main\"\n\"3000444\";\"Les Mages\";\"main\"\n\"3000446\";\"Les Lucs-sur-Boulogne\";\"main\"\n\"3000446\";\"Les Lucs\";\"other\"\n\"3000458\";\"Les Loges-Marchis\";\"main\"\n\"3000460\";\"Les Loges-en-Josas\";\"main\"\n\"3000460\";\"Les Loges\";\"other\"\n\"3000465\";\"Les Loges\";\"main\"\n\"3000491\";\"Les Lilas\";\"main\"\n\"3000519\";\"Les Landes-Genusson\";\"main\"\n\"3000519\";\"Les Gats\";\"other\"\n\"3000519\";\"Les Gâts\";\"other\"\n\"3000519\";\"Les Landes\";\"other\"\n\"3000519\";\"Les Landes-Cenusson\";\"other\"\n\"3000602\";\"Lésigny\";\"main\"\n\"3000602\";\"Lesigny\";\"ascii\"\n\"3000622\";\"Les Houches\";\"main\"\n\"3000622\";\"Houches\";\"other\"\n\"3000648\";\"Les Herbiers\";\"main\"\n\"3000648\";\"Les Petits-Herbiers\";\"other\"\n\"3000674\";\"Les Hautes-Rivières\";\"main\"\n\"3000674\";\"Les Hautes-Rivieres\";\"ascii\"\n\"3000674\";\"Hautes-Rivieres\";\"other\"\n\"3000674\";\"Hautes-Rivières\";\"other\"\n\"3000826\";\"Les Grandes-Ventes\";\"main\"\n\"3000826\";\"Grandes-Ventes\";\"other\"\n\"3000872\";\"Les Gonds\";\"main\"\n\"3000902\";\"Les Gets\";\"main\"\n\"3000902\";\"Gets\";\"other\"\n\"3000998\";\"Les Fourgs\";\"main\"\n\"3001020\";\"Les Forges\";\"main\"\n\"3001051\";\"Les Fins\";\"main\"\n\"3001126\";\"Les Essarts-le-Roi\";\"main\"\n\"3001126\";\"Les Essarts\";\"other\"\n\"3001126\";\"Les Essarts-la-Montagne\";\"other\"\n\"3001126\";\"Les Essarts-les-Bois\";\"other\"\n\"3001126\";\"Montagne-des-Essarts\";\"other\"\n\"3001134\";\"Les Essarts\";\"main\"\n\"3001157\";\"Les Epesses\";\"main\"\n\"3001176\";\"Les Églisottes-et-Chalaures\";\"main\"\n\"3001176\";\"Les Eglisottes-et-Chalaures\";\"ascii\"\n\"3001176\";\"Les Eglisottes\";\"other\"\n\"3001176\";\"Les Églisottes\";\"other\"\n\"3001191\";\"Les Échelles\";\"main\"\n\"3001191\";\"Les Echelles\";\"ascii\"\n\"3001336\";\"Les Contamines-Montjoie\";\"main\"\n\"3001336\";\"Contamines-Montjoie\";\"other\"\n\"3001336\";\"Les Contamines\";\"other\"\n\"3001386\";\"Les Clouzeaux\";\"main\"\n\"3001402\";\"Les Clayes-sous-Bois\";\"main\"\n\"3001402\";\"Les Clayes\";\"other\"\n\"3001457\";\"Les Chères\";\"main\"\n\"3001457\";\"Les Cheres\";\"ascii\"\n\"3001457\";\"Les Echelles\";\"other\"\n\"3001546\";\"Les Champs-Géraux\";\"main\"\n\"3001546\";\"Les Champs-Geraux\";\"ascii\"\n\"3001546\";\"Les Champs-Geraud\";\"other\"\n\"3001546\";\"Les Champs-Géraud\";\"other\"\n\"3001546\";\"Maez-Geraod\";\"other\"\n\"3001617\";\"Lescar\";\"main\"\n\"3001698\";\"Les Brouzils\";\"main\"\n\"3002057\";\"Les Avenières\";\"main\"\n\"3002057\";\"Les Avenieres\";\"ascii\"\n\"3002067\";\"Les Authieux-sur-le-Port-Saint-Ouen\";\"main\"\n\"3002067\";\"Authieux-sur-le-Port-des-Sans-Culottes\";\"other\"\n\"3002067\";\"Les Authieux\";\"other\"\n\"3002108\";\"Les Attaques\";\"main\"\n\"3002114\";\"Les Artigues-de-Lussac\";\"main\"\n\"3002114\";\"Les Artigues\";\"other\"\n\"3002114\";\"Les Artigues-la Foret\";\"other\"\n\"3002114\";\"Les Artigues-la Forêt\";\"other\"\n\"3002138\";\"Les Arcs\";\"main\"\n\"3002138\";\"Les Arc-sur-Argens\";\"other\"\n\"3002145\";\"Le Sappey-en-Chartreuse\";\"main\"\n\"3002145\";\"Le Sappey\";\"other\"\n\"3002158\";\"Les Angles\";\"main\"\n\"3002172\";\"Les Andelys\";\"main\"\n\"3002175\";\"Les Ancizes-Comps\";\"main\"\n\"3002175\";\"Ancizes-Comps\";\"other\"\n\"3002175\";\"Les Ancizes\";\"other\"\n\"3002175\";\"Onsiz-Komp\";\"other\"\n\"3002175\";\"Онсиз-Комп\";\"other\"\n\"3002184\";\"Les Alluets-le-Roi\";\"main\"\n\"3002184\";\"Alluets-la-Montagne\";\"other\"\n\"3002184\";\"Les Alluets\";\"other\"\n\"3002185\";\"Les Allues\";\"main\"\n\"3002185\";\"Valmineral\";\"other\"\n\"3002185\";\"Valminéral\";\"other\"\n\"3002221\";\"Les Ageux\";\"main\"\n\"3002237\";\"Les Abrets\";\"main\"\n\"3002247\";\"Léry\";\"main\"\n\"3002247\";\"Lery\";\"ascii\"\n\"3002256\";\"Le Russey\";\"main\"\n\"3002271\";\"Le Rove\";\"main\"\n\"3002277\";\"Lérouville\";\"main\"\n\"3002277\";\"Lerouville\";\"ascii\"\n\"3002280\";\"Le Rouret\";\"main\"\n\"3002351\";\"Le Rheu\";\"main\"\n\"3002351\";\"Reuz\";\"other\"\n\"3002357\";\"Le Revest-les-Eaux\";\"main\"\n\"3002357\";\"Le Revest\";\"other\"\n\"3002373\";\"Le Relecq-Kerhuon\";\"main\"\n\"3002373\";\"Ar Releg-Kerhuon\";\"other\"\n\"3002373\";\"Le Relecq\";\"other\"\n\"3002383\";\"Léré\";\"main\"\n\"3002383\";\"Lere\";\"ascii\"\n\"3002401\";\"Le Raincy\";\"main\"\n\"3002420\";\"Le Quesnoy\";\"main\"\n\"3002443\";\"Le Puy-Sainte-Réparade\";\"main\"\n\"3002443\";\"Le Puy-Sainte-Reparade\";\"ascii\"\n\"3002443\";\"Le Puy\";\"other\"\n\"3002446\";\"Le Puy-Notre-Dame\";\"main\"\n\"3002446\";\"Puy-la-Montagne\";\"other\"\n\"3002465\";\"Le Puy-en-Velay\";\"main\"\n\"3002465\";\"Le Puy\";\"other\"\n\"3002465\";\"Lo Puei de Velai\";\"other\"\n\"3002465\";\"Lo Puèi de Velai\";\"other\"\n\"3002465\";\"Pjui-an-Vele\";\"other\"\n\"3002465\";\"Puy-en-Velay\";\"other\"\n\"3002465\";\"Пюи-ан-Веле\";\"other\"\n\"3002465\";\"ル・ピュイ＝アン＝ヴレ\";\"other\"\n\"3002471\";\"Lepuix\";\"main\"\n\"3002471\";\"Lepuix-Gy\";\"other\"\n\"3002499\";\"Le Pré-Saint-Gervais\";\"main\"\n\"3002499\";\"Le Pre-Saint-Gervais\";\"ascii\"\n\"3002499\";\"Les Pres-le-Peletier\";\"other\"\n\"3002499\";\"Les Prés-le-Peletier\";\"other\"\n\"3002499\";\"Pre Saint Gervais\";\"other\"\n\"3002499\";\"Pré Saint Gervais\";\"other\"\n\"3002510\";\"Le Pradet\";\"main\"\n\"3002520\";\"Le Pouzin\";\"main\"\n\"3002534\";\"Le Pouliguen\";\"main\"\n\"3002534\";\"Ar Poulgwenn\";\"other\"\n\"3002537\";\"Le Poujol-sur-Orb\";\"main\"\n\"3002537\";\"Le Poujol\";\"other\"\n\"3002541\";\"Le Pouget\";\"main\"\n\"3002547\";\"Le Port-Marly\";\"main\"\n\"3002547\";\"Port-Marly\";\"other\"\n\"3002551\";\"Le Portel\";\"main\"\n\"3002552\";\"Port-des-Barques\";\"main\"\n\"3002559\";\"Le Porge\";\"main\"\n\"3002570\";\"Le Pontet\";\"main\"\n\"3002585\";\"Le Pont-de-Claix\";\"main\"\n\"3002585\";\"Pont-de-Claix\";\"other\"\n\"3002586\";\"Le Pont-de-Beauvoisin\";\"main\"\n\"3002620\";\"Le Poiré-sur-Vie\";\"main\"\n\"3002620\";\"Le Poire-sur-Vie\";\"ascii\"\n\"3002620\";\"Le Poire\";\"other\"\n\"3002620\";\"Le Poiré\";\"other\"\n\"3002626\";\"Le Poinçonnet\";\"main\"\n\"3002626\";\"Le Poinconnet\";\"ascii\"\n\"3002647\";\"Le Plessis-Trévise\";\"main\"\n\"3002647\";\"Le Plessis-Trevise\";\"ascii\"\n\"3002647\";\"Plessis-Trevise\";\"other\"\n\"3002647\";\"Plessis-Trévise\";\"other\"\n\"3002650\";\"Le Plessis-Robinson\";\"main\"\n\"3002650\";\"Plessis-Robinson\";\"other\"\n\"3002654\";\"Le Plessis-Pâté\";\"main\"\n\"3002654\";\"Le Plessis-Pate\";\"ascii\"\n\"3002654\";\"Plessis-Pate\";\"other\"\n\"3002654\";\"Plessis-Paté\";\"other\"\n\"3002658\";\"Le Plessis-Macé\";\"main\"\n\"3002658\";\"Le Plessis-Mace\";\"ascii\"\n\"3002669\";\"Le Plessis-Grammoire\";\"main\"\n\"3002669\";\"Le Plessis\";\"other\"\n\"3002677\";\"Le Plessis-Brion\";\"main\"\n\"3002679\";\"Le Plessis-Bouchard\";\"main\"\n\"3002679\";\"Plessis-Bouchard\";\"other\"\n\"3002680\";\"Le Plessis-Belleville\";\"main\"\n\"3002758\";\"Le Pizou\";\"main\"\n\"3002782\";\"Le Pin-en-Mauges\";\"main\"\n\"3002782\";\"Le Pin\";\"other\"\n\"3002808\";\"Le Pin\";\"main\"\n\"3002813\";\"Le Pin\";\"main\"\n\"3002817\";\"Le Pin\";\"main\"\n\"3002836\";\"Le Pian-Médoc\";\"main\"\n\"3002836\";\"Le Pian-Medoc\";\"ascii\"\n\"3002836\";\"Le Pian\";\"other\"\n\"3002836\";\"Le Pian-en-Medoc\";\"other\"\n\"3002836\";\"Le Pian-en-Médoc\";\"other\"\n\"3002880\";\"Le Petit-Quevilly\";\"main\"\n\"3002880\";\"Petit-Quevilly\";\"other\"\n\"3002880\";\"Quevilly le Petit\";\"other\"\n\"3002918\";\"Petit-Couronne\";\"main\"\n\"3002918\";\"La Fraternite\";\"other\"\n\"3002918\";\"La Fraternité\";\"other\"\n\"3002954\";\"Le Pertre\";\"main\"\n\"3002954\";\"Ar Perzh\";\"other\"\n\"3002961\";\"Le Perrier\";\"main\"\n\"3002965\";\"Le Perreux-sur-Marne\";\"main\"\n\"3002965\";\"Perreux-Sur-Marne\";\"other\"\n\"3002965\";\"le Perreux\";\"other\"\n\"3002966\";\"Le Perréon\";\"main\"\n\"3002966\";\"Le Perreon\";\"ascii\"\n\"3002967\";\"Le Perray-en-Yvelines\";\"main\"\n\"3002967\";\"Le Perray\";\"other\"\n\"3002981\";\"Le Pellerin\";\"main\"\n\"3002981\";\"Pentellou\";\"other\"\n\"3002981\";\"Pentelloù\";\"other\"\n\"3002981\";\"Port-Brutus\";\"other\"\n\"3002984\";\"Le Pecq\";\"main\"\n\"3002984\";\"Le Pecq-sur-Seine\";\"other\"\n\"3002984\";\"Pecq\";\"other\"\n\"3002986\";\"Le Pêchereau\";\"main\"\n\"3002986\";\"Le Pechereau\";\"ascii\"\n\"3002988\";\"Le Péage-de-Roussillon\";\"main\"\n\"3002988\";\"Le Peage-de-Roussillon\";\"ascii\"\n\"3002988\";\"Franc-Passage\";\"other\"\n\"3002988\";\"Franc-Peage\";\"other\"\n\"3002988\";\"Franc-Péage\";\"other\"\n\"3002988\";\"Le Peage\";\"other\"\n\"3002988\";\"Le Péage\";\"other\"\n\"3003017\";\"Le Passage\";\"main\"\n\"3003017\";\"Passage\";\"other\"\n\"3003017\";\"Passage d'Agen\";\"other\"\n\"3003042\";\"Le Pallet\";\"main\"\n\"3003042\";\"Ar Palez\";\"other\"\n\"3003044\";\"Le Palais-sur-Vienne\";\"main\"\n\"3003044\";\"Le Palais\";\"other\"\n\"3003045\";\"Le Palais\";\"main\"\n\"3003045\";\"Porzh-Lae\";\"other\"\n\"3003064\";\"Léon\";\"main\"\n\"3003064\";\"Leon\";\"ascii\"\n\"3003067\";\"Léognan\";\"main\"\n\"3003067\";\"Leognan\";\"ascii\"\n\"3003074\";\"Lentilly\";\"main\"\n\"3003081\";\"Lentigny\";\"main\"\n\"3003087\";\"Lent\";\"main\"\n\"3003093\";\"Lens\";\"main\"\n\"3003093\";\"lans\";\"other\"\n\"3003093\";\"ransu\";\"other\"\n\"3003093\";\"Ланс\";\"other\"\n\"3003093\";\"ランス\";\"other\"\n\"3003101\";\"Le Nouvion-en-Thiérache\";\"main\"\n\"3003101\";\"Le Nouvion-en-Thierache\";\"ascii\"\n\"3003101\";\"Le Nouvion\";\"other\"\n\"3003101\";\"Le Nouvion-le-Franc\";\"other\"\n\"3003127\";\"Le Neubourg\";\"main\"\n\"3003136\";\"Lencloître\";\"main\"\n\"3003136\";\"Lencloitre\";\"ascii\"\n\"3003148\";\"Le Muy\";\"main\"\n\"3003164\";\"Lempdes-sur-Allagnon\";\"main\"\n\"3003253\";\"Mont-Dore\";\"main\"\n\"3003253\";\"Le Mont-Dore\";\"other\"\n\"3003253\";\"Les Bains-du-Mont-Dore\";\"other\"\n\"3003253\";\"Les Bains-du-Montdor\";\"other\"\n\"3003253\";\"Mont-Dore-les-Bains\";\"other\"\n\"3003297\";\"Le Monêtier-les-Bains\";\"main\"\n\"3003297\";\"Le Monetier-les-Bains\";\"ascii\"\n\"3003297\";\"Le Monetier\";\"other\"\n\"3003297\";\"Le Monétier\";\"other\"\n\"3003297\";\"Le Monêtier\";\"other\"\n\"3003306\";\"Le Monastier-sur-Gazeille\";\"main\"\n\"3003306\";\"Monastier\";\"other\"\n\"3003306\";\"Mont-Breysse\";\"other\"\n\"3003308\";\"Le Monastère\";\"main\"\n\"3003308\";\"Le Monastere\";\"ascii\"\n\"3003308\";\"Bourg-la-Briane\";\"other\"\n\"3003316\";\"Le Molay-Littry\";\"main\"\n\"3003316\";\"La Molay\";\"other\"\n\"3003316\";\"Le Molay\";\"other\"\n\"3003316\";\"Littry\";\"other\"\n\"3003332\";\"Le Minihic-sur-Rance\";\"main\"\n\"3003332\";\"Le Minihic\";\"other\"\n\"3003332\";\"Minic'hi-Poudour\";\"other\"\n\"3003341\";\"Le Meux\";\"main\"\n\"3003351\";\"Le Mesnil-sur-Oger\";\"main\"\n\"3003351\";\"Le Mesnil\";\"other\"\n\"3003359\";\"Le Mesnil-Saint-Denis\";\"main\"\n\"3003375\";\"Le Mesnil-le-Roi\";\"main\"\n\"3003375\";\"Le Mesnil\";\"other\"\n\"3003375\";\"Mesnil-Carrieres\";\"other\"\n\"3003375\";\"Mesnil-Carrières\";\"other\"\n\"3003391\";\"Le Mesnil-Esnard\";\"main\"\n\"3003391\";\"Mesnil-Esnard\";\"other\"\n\"3003392\";\"Le Mesnil-en-Vallée\";\"main\"\n\"3003392\";\"Le Mesnil-en-Vallee\";\"ascii\"\n\"3003392\";\"Le Mesnil\";\"other\"\n\"3003393\";\"Le Mesnil-en-Thelle\";\"main\"\n\"3003393\";\"Le Mesnil\";\"other\"\n\"3003464\";\"Le Ménil\";\"main\"\n\"3003464\";\"Le Menil\";\"ascii\"\n\"3003464\";\"Menil-Thillot\";\"other\"\n\"3003464\";\"Ménil-Thillot\";\"other\"\n\"3003481\";\"Le Mée-sur-Seine\";\"main\"\n\"3003481\";\"Le Mee-sur-Seine\";\"ascii\"\n\"3003481\";\"Le Mee\";\"other\"\n\"3003481\";\"Le Mée\";\"other\"\n\"3003490\";\"Lembras\";\"main\"\n\"3003495\";\"Lemberg\";\"main\"\n\"3003496\";\"Lembach\";\"main\"\n\"3003514\";\"Le May-sur-Èvre\";\"main\"\n\"3003514\";\"Le May-sur-Evre\";\"ascii\"\n\"3003514\";\"Le May\";\"other\"\n\"3003514\";\"May-sur-Evre\";\"other\"\n\"3003514\";\"May-sur-Èvre\";\"other\"\n\"3003517\";\"Le Mayet-de-Montagne\";\"main\"\n\"3003517\";\"Mayet-de-Montagne\";\"other\"\n\"3003603\";\"Le Mans\";\"main\"\n\"3003603\";\"L'Unite-sur-Sarthe\";\"other\"\n\"3003603\";\"L'Unité-sur-Sarthe\";\"other\"\n\"3003603\";\"L'o Man\";\"other\"\n\"3003603\";\"Le-Man\";\"other\"\n\"3003603\";\"lei mang\";\"other\"\n\"3003603\";\"Ле-Ман\";\"other\"\n\"3003603\";\"Льо Ман\";\"other\"\n\"3003603\";\"ル・マン\";\"other\"\n\"3003603\";\"勒芒\";\"other\"\n\"3003604\";\"Le Manoir\";\"main\"\n\"3003610\";\"Le Malzieu-Ville\";\"main\"\n\"3003610\";\"Le Malzieu\";\"other\"\n\"3003610\";\"Malzieu\";\"other\"\n\"3003610\";\"Malzieu-Ville\";\"other\"\n\"3003647\";\"Le Lude\";\"main\"\n\"3003650\";\"Le Luc\";\"main\"\n\"3003653\";\"Le Luart\";\"main\"\n\"3003656\";\"Le Louroux-Béconnais\";\"main\"\n\"3003656\";\"Le Louroux-Beconnais\";\"ascii\"\n\"3003656\";\"Le Louroux\";\"other\"\n\"3003661\";\"Le Loroux-Bottereau\";\"main\"\n\"3003661\";\"Lavreer-Botorel\";\"other\"\n\"3003661\";\"Le Louroux-Bottereau\";\"other\"\n\"3003672\";\"Le Longeron\";\"main\"\n\"3003713\";\"Le Lavandou\";\"main\"\n\"3003726\";\"Le Langon\";\"main\"\n\"3003730\";\"Le Landreau\";\"main\"\n\"3003730\";\"Lannerell\";\"other\"\n\"3003737\";\"Le Kremlin-Bicêtre\";\"main\"\n\"3003737\";\"Le Kremlin-Bicetre\";\"ascii\"\n\"3003737\";\"Kremlin-Bicetre\";\"other\"\n\"3003737\";\"Kremlin-Bicêtre\";\"other\"\n\"3003773\";\"Le Houlme\";\"main\"\n\"3003774\";\"Le Houga\";\"main\"\n\"3003774\";\"La Moule\";\"other\"\n\"3003777\";\"Léhon\";\"main\"\n\"3003777\";\"Lehon\";\"ascii\"\n\"3003796\";\"Le Havre\";\"main\"\n\"3003796\";\"Chabre\";\"other\"\n\"3003796\";\"El Havre\";\"other\"\n\"3003796\";\"Franciscopolis\";\"other\"\n\"3003796\";\"Gavr\";\"other\"\n\"3003796\";\"Grasville-Lheure\";\"other\"\n\"3003796\";\"Havre\";\"other\"\n\"3003796\";\"Havro\";\"other\"\n\"3003796\";\"Hawr\";\"other\"\n\"3003796\";\"Khavur\";\"other\"\n\"3003796\";\"La Havro\";\"other\"\n\"3003796\";\"Saint-Jean-sur-Mer\";\"other\"\n\"3003796\";\"lei a fu er\";\"other\"\n\"3003796\";\"lw hafr\";\"other\"\n\"3003796\";\"Χάβρη\";\"other\"\n\"3003796\";\"Гавр\";\"other\"\n\"3003796\";\"Хавър\";\"other\"\n\"3003796\";\"لو هافر\";\"other\"\n\"3003796\";\"ル・アーヴル\";\"other\"\n\"3003796\";\"勒阿弗尔\";\"other\"\n\"3003859\";\"Le Haillan\";\"main\"\n\"3003874\";\"Léguevin\";\"main\"\n\"3003874\";\"Leguevin\";\"ascii\"\n\"3003893\";\"Le Gua\";\"main\"\n\"3003894\";\"Le Gua\";\"main\"\n\"3003918\";\"Le Grau-du-Roi\";\"main\"\n\"3003918\";\"Grau-le-Peletier\";\"other\"\n\"3003918\";\"La Grau du Roi\";\"other\"\n\"3003952\";\"Le Grand-Quevilly\";\"main\"\n\"3003952\";\"Gran-Kevilli\";\"other\"\n\"3003952\";\"Grand-Quevilly\";\"other\"\n\"3003952\";\"Quevilly le Grand\";\"other\"\n\"3003952\";\"Гран-Кевилли\";\"other\"\n\"3003957\";\"Le Grand-Pressigny\";\"main\"\n\"3003957\";\"Le Grand\";\"other\"\n\"3003986\";\"Le Grand-Lucé\";\"main\"\n\"3003986\";\"Le Grand-Luce\";\"ascii\"\n\"3003986\";\"Grand-Luce\";\"other\"\n\"3003991\";\"Le Grand-Lemps\";\"main\"\n\"3004039\";\"Le Grand-Bourg\";\"main\"\n\"3004039\";\"Grand Bourg\";\"other\"\n\"3004041\";\"Le Grand-Bornand\";\"main\"\n\"3004041\";\"Grand Bornand\";\"other\"\n\"3004078\";\"Gond-Pontouvre\";\"main\"\n\"3004078\";\"Le Gond\";\"other\"\n\"3004114\";\"Legé\";\"main\"\n\"3004114\";\"Lege\";\"ascii\"\n\"3004114\";\"Levieg\";\"other\"\n\"3004119\";\"Le Gâvre\";\"main\"\n\"3004119\";\"Le Gavre\";\"ascii\"\n\"3004119\";\"Gavr\";\"other\"\n\"3004130\";\"Le Garric\";\"main\"\n\"3004138\";\"Le Fuilet\";\"main\"\n\"3004138\";\"Le Fuillet\";\"other\"\n\"3004185\";\"Le Fousseret\";\"main\"\n\"3004213\";\"Leforest\";\"main\"\n\"3004222\";\"Le Folgoët\";\"main\"\n\"3004222\";\"Le Folgoet\";\"ascii\"\n\"3004222\";\"Ar Folgoad\";\"other\"\n\"3004224\";\"Le Fœil\";\"main\"\n\"3004224\";\"Le Foeil\";\"ascii\"\n\"3004224\";\"Ar Fouilh\";\"other\"\n\"3004226\";\"Le Fleix\";\"main\"\n\"3004238\";\"Le Fief-Sauvin\";\"main\"\n\"3004238\";\"Fief Sauvin\";\"other\"\n\"3004244\";\"Leffrinckoucke\";\"main\"\n\"3004244\";\"Leffrinkhoucke\";\"other\"\n\"3004258\";\"Le Fenouiller\";\"main\"\n\"3004294\";\"Le Fauga\";\"main\"\n\"3004294\";\"Fauga\";\"other\"\n\"3004294\";\"La Fauga\";\"other\"\n\"3004304\";\"Le Faouët\";\"main\"\n\"3004304\";\"Le Faouet\";\"ascii\"\n\"3004304\";\"Ar Faoued\";\"other\"\n\"3004306\";\"Le Faou\";\"main\"\n\"3004306\";\"Ar Faou\";\"other\"\n\"3004306\";\"Faou\";\"other\"\n\"3004314\";\"Leers\";\"main\"\n\"3004321\";\"Le Drennec\";\"main\"\n\"3004321\";\"An Dreneg\";\"other\"\n\"3004321\";\"Drennec\";\"other\"\n\"3004326\";\"Le Doulieu\";\"main\"\n\"3004334\";\"Le Dorat\";\"main\"\n\"3004337\";\"Le Donjon\";\"main\"\n\"3004337\";\"Val-libre\";\"other\"\n\"3004346\";\"Lédignan\";\"main\"\n\"3004346\";\"Ledignan\";\"ascii\"\n\"3004350\";\"Ledeuix\";\"main\"\n\"3004359\";\"Lédenon\";\"main\"\n\"3004359\";\"Ledenon\";\"ascii\"\n\"3004381\";\"Lectoure\";\"main\"\n\"3004398\";\"Le Crotoy\";\"main\"\n\"3004418\";\"Le Croisic\";\"main\"\n\"3004418\";\"Ar Groazig\";\"other\"\n\"3004427\";\"Le Creusot\";\"main\"\n\"3004427\";\"Creusot\";\"other\"\n\"3004433\";\"Le Crest\";\"main\"\n\"3004434\";\"Le Crès\";\"main\"\n\"3004434\";\"Le Cres\";\"ascii\"\n\"3004444\";\"Lécousse\";\"main\"\n\"3004444\";\"Lecousse\";\"ascii\"\n\"3004444\";\"Eskuz\";\"other\"\n\"3004464\";\"Le Coudray-Montceaux\";\"main\"\n\"3004464\";\"Coudray-Montceaux\";\"other\"\n\"3004471\";\"Le Coudray\";\"main\"\n\"3004492\";\"Le Coteau\";\"main\"\n\"3004513\";\"Le Conquet\";\"main\"\n\"3004513\";\"Concue\";\"other\"\n\"3004513\";\"Konk-Leon\";\"other\"\n\"3004513\";\"Le Concue\";\"other\"\n\"3004513\";\"Le Conque\";\"other\"\n\"3004545\";\"Lécluse\";\"main\"\n\"3004545\";\"Lecluse\";\"ascii\"\n\"3004608\";\"Le Cheylas\";\"main\"\n\"3004609\";\"Le Cheylard\";\"main\"\n\"3004630\";\"Le Chesnay\";\"main\"\n\"3004630\";\"Le Chesney\";\"other\"\n\"3004698\";\"Le Châtelet-en-Brie\";\"main\"\n\"3004698\";\"Le Chatelet-en-Brie\";\"ascii\"\n\"3004698\";\"Le Chatelet\";\"other\"\n\"3004698\";\"Le Châtelet\";\"other\"\n\"3004703\";\"Le Châtelet\";\"main\"\n\"3004703\";\"Le Chatelet\";\"ascii\"\n\"3004703\";\"Librefeuille\";\"other\"\n\"3004763\";\"Le Champ-Saint-Père\";\"main\"\n\"3004763\";\"Le Champ-Saint-Pere\";\"ascii\"\n\"3004763\";\"Champ-Perdu\";\"other\"\n\"3004763\";\"Le Champ\";\"other\"\n\"3004764\";\"Le Champ-près-Froges\";\"main\"\n\"3004764\";\"Le Champ-pres-Froges\";\"ascii\"\n\"3004764\";\"Le Champ\";\"other\"\n\"3004764\";\"Le Champ-Pres Forges\";\"other\"\n\"3004764\";\"Le Champ-Près Forges\";\"other\"\n\"3004774\";\"Le Chambon-sur-Lignon\";\"main\"\n\"3004774\";\"Chambon-sur Lignon\";\"other\"\n\"3004774\";\"Chambon-sur-Lignon\";\"other\"\n\"3004774\";\"Le Chambon\";\"other\"\n\"3004774\";\"lh smbwn-syr-lynywn\";\"other\"\n\"3004774\";\"לה שמבון-סיר-ליניון\";\"other\"\n\"3004775\";\"Le Chambon-Feugerolles\";\"main\"\n\"3004775\";\"Le Chambon\";\"other\"\n\"3004811\";\"Le Cendre\";\"main\"\n\"3004813\";\"Le Cellier\";\"main\"\n\"3004813\";\"Keller\";\"other\"\n\"3004814\";\"Lecelles\";\"main\"\n\"3004838\";\"Le Castellet\";\"main\"\n\"3004866\";\"Le Cap d'Agde\";\"main\"\n\"3004866\";\"Kap D Agd\";\"other\"\n\"3004866\";\"Le Cap D'Agde\";\"other\"\n\"3004866\";\"Кап Д Агд\";\"other\"\n\"3004870\";\"Le Cannet-des-Maures\";\"main\"\n\"3004870\";\"Le Cannet\";\"other\"\n\"3004871\";\"Le Cannet\";\"main\"\n\"3004871\";\"Cannet\";\"other\"\n\"3004871\";\"Lo Canet\";\"other\"\n\"3004891\";\"Le Cailar\";\"main\"\n\"3004935\";\"Le Bugue\";\"main\"\n\"3004941\";\"Le Brusquet\";\"main\"\n\"3004963\";\"Le Broc\";\"main\"\n\"3004983\";\"Le Breuil-sur-Couze\";\"main\"\n\"3004983\";\"Le Breuil\";\"other\"\n\"3005001\";\"Le Breuil\";\"main\"\n\"3005028\";\"Le Breil-sur-Mérize\";\"main\"\n\"3005028\";\"Le Breil-sur-Merize\";\"ascii\"\n\"3005028\";\"Le Breil\";\"other\"\n\"3005066\";\"Le Bouscat\";\"main\"\n\"3005066\";\"Bouscat\";\"other\"\n\"3005076\";\"Le Bourgneuf-la-Forêt\";\"main\"\n\"3005076\";\"Le Bourgneuf-la-Foret\";\"ascii\"\n\"3005076\";\"Le Bourgneuf\";\"other\"\n\"3005081\";\"Le Bourget-du-Lac\";\"main\"\n\"3005081\";\"Le Bourget\";\"other\"\n\"3005081\";\"Monterminod\";\"other\"\n\"3005082\";\"Le Bourget\";\"main\"\n\"3005082\";\"Bourget\";\"other\"\n\"3005099\";\"Le Boupère\";\"main\"\n\"3005099\";\"Le Boupere\";\"ascii\"\n\"3005102\";\"el Voló\";\"main\"\n\"3005102\";\"el Volo\";\"ascii\"\n\"3005102\";\"Le Boulou\";\"other\"\n\"3005182\";\"Le Bosc-Roger-en-Roumois\";\"main\"\n\"3005182\";\"Bosc-Roger-en-Roumois\";\"other\"\n\"3005182\";\"Boscroger\";\"other\"\n\"3005182\";\"Le Bosc-Roger\";\"other\"\n\"3005202\";\"Le Bono\";\"main\"\n\"3005202\";\"Ar Bonou\";\"other\"\n\"3005202\";\"Ar Bonoù\";\"other\"\n\"3005202\";\"Bono\";\"other\"\n\"3005218\";\"Le Bois-Plage-en-Ré\";\"main\"\n\"3005218\";\"Le Bois-Plage-en-Re\";\"ascii\"\n\"3005218\";\"La Verite\";\"other\"\n\"3005218\";\"La Vérité\";\"other\"\n\"3005218\";\"Le Bois\";\"other\"\n\"3005269\";\"Le Blanc-Mesnil\";\"main\"\n\"3005270\";\"Le Blanc\";\"main\"\n\"3005270\";\"Blanc\";\"other\"\n\"3005282\";\"Le Bignon\";\"main\"\n\"3005282\";\"Bignon\";\"other\"\n\"3005326\";\"Le Beausset\";\"main\"\n\"3005360\";\"Le Barp\";\"main\"\n\"3005364\";\"Le Barcarès\";\"main\"\n\"3005364\";\"Le Barcares\";\"ascii\"\n\"3005364\";\"Barcares-de-Saint-Laurent\";\"other\"\n\"3005364\";\"Barcarès-de-Saint-Laurent\";\"other\"\n\"3005364\";\"el Barcares\";\"other\"\n\"3005364\";\"el Barcarès\";\"other\"\n\"3005397\";\"Lay-Saint-Christophe\";\"main\"\n\"3005397\";\"Lay\";\"other\"\n\"3005401\";\"Layrac\";\"main\"\n\"3005417\";\"Laxou\";\"main\"\n\"3005422\";\"La Wantzenau\";\"main\"\n\"3005422\";\"Wantzenau\";\"other\"\n\"3005425\";\"La Vraie-Croix\";\"main\"\n\"3005425\";\"Langroez\";\"other\"\n\"3005429\";\"Lavoux\";\"main\"\n\"3005435\";\"La Voulte-sur-Rhône\";\"main\"\n\"3005435\";\"La Voulte-sur-Rhone\";\"ascii\"\n\"3005435\";\"La Voulte\";\"other\"\n\"3005450\";\"Lavit\";\"main\"\n\"3005524\";\"La Ville-du-Bois\";\"main\"\n\"3005527\";\"La Villedieu-du-Clain\";\"main\"\n\"3005527\";\"La Villedieu\";\"other\"\n\"3005534\";\"Lavilledieu\";\"main\"\n\"3005540\";\"La Ville-aux-Dames\";\"main\"\n\"3005540\";\"La Ville\";\"other\"\n\"3005540\";\"Les Sables\";\"other\"\n\"3005541\";\"La Ville-aux-Clercs\";\"main\"\n\"3005541\";\"La Ville\";\"other\"\n\"3005541\";\"La Ville-Aux-Cleres\";\"other\"\n\"3005541\";\"La Ville-Aux-Clères\";\"other\"\n\"3005541\";\"La Ville-aux-Clers\";\"other\"\n\"3005630\";\"La Vespière\";\"main\"\n\"3005630\";\"La Vespiere\";\"ascii\"\n\"3005632\";\"Lavérune\";\"main\"\n\"3005632\";\"Laverune\";\"ascii\"\n\"3005639\";\"La Verrière\";\"main\"\n\"3005639\";\"La Verriere\";\"ascii\"\n\"3005640\";\"La Verrie\";\"main\"\n\"3005651\";\"La Verpillière\";\"main\"\n\"3005651\";\"La Verpilliere\";\"ascii\"\n\"3005696\";\"Laventie\";\"main\"\n\"3005712\";\"Lavelanet\";\"main\"\n\"3005735\";\"Lavaur\";\"main\"\n\"3005736\";\"La Vaupalière\";\"main\"\n\"3005736\";\"La Vaupaliere\";\"ascii\"\n\"3005737\";\"Lavault-Sainte-Anne\";\"main\"\n\"3005737\";\"Lavault\";\"other\"\n\"3005737\";\"Le Vau-sur-Cher\";\"other\"\n\"3005763\";\"La Varenne\";\"main\"\n\"3005769\";\"Lavardac\";\"main\"\n\"3005775\";\"Lavans-lès-Saint-Claude\";\"main\"\n\"3005775\";\"Lavans-les-Saint-Claude\";\"ascii\"\n\"3005775\";\"Lavans\";\"other\"\n\"3005775\";\"Lavans-les-Louvieres\";\"other\"\n\"3005775\";\"Lavans-les-Louvières\";\"other\"\n\"3005792\";\"Laval-Pradel\";\"main\"\n\"3005792\";\"Laval\";\"other\"\n\"3005792\";\"Le Pradel\";\"other\"\n\"3005825\";\"La Valette-du-Var\";\"main\"\n\"3005825\";\"La Valette\";\"other\"\n\"3005839\";\"Lavalette\";\"main\"\n\"3005866\";\"Laval\";\"main\"\n\"3005866\";\"Laval'\";\"other\"\n\"3005866\";\"Лаваль\";\"other\"\n\"3005915\";\"Lauzerte\";\"main\"\n\"3005932\";\"Lauwin-Planque\";\"main\"\n\"3005932\";\"Lauwin\";\"other\"\n\"3005943\";\"Lautrec\";\"main\"\n\"3005949\";\"Lautenbachzell\";\"main\"\n\"3005950\";\"Lautenbach\";\"main\"\n\"3005956\";\"Laussonne\";\"main\"\n\"3005966\";\"Lauris\";\"main\"\n\"3005966\";\"Lauris-sur-Durance\";\"other\"\n\"3005979\";\"Laurens\";\"main\"\n\"3005983\";\"Laure-Minervois\";\"main\"\n\"3005983\";\"Laure\";\"other\"\n\"3006035\";\"Launaguet\";\"main\"\n\"3006036\";\"Launac\";\"main\"\n\"3006056\";\"Laudun-l'Ardoise\";\"main\"\n\"3006056\";\"Laudun\";\"other\"\n\"3006089\";\"La Turbie\";\"main\"\n\"3006090\";\"La Turballe\";\"main\"\n\"3006090\";\"An Turball\";\"other\"\n\"3006121\";\"Lattes\";\"main\"\n\"3006131\";\"La Tronche\";\"main\"\n\"3006137\";\"La Trinité-sur-Mer\";\"main\"\n\"3006137\";\"La Trinite-sur-Mer\";\"ascii\"\n\"3006137\";\"An Drinded-Karnag\";\"other\"\n\"3006137\";\"La Trinite\";\"other\"\n\"3006137\";\"La Trinité\";\"other\"\n\"3006137\";\"Trinite-sur-Mer\";\"other\"\n\"3006137\";\"Trinité-sur-Mer\";\"other\"\n\"3006152\";\"La Trinité\";\"main\"\n\"3006152\";\"La Trinite\";\"ascii\"\n\"3006152\";\"La Trinite-Victor\";\"other\"\n\"3006152\";\"La Trinité-Victor\";\"other\"\n\"3006161\";\"Latresne\";\"main\"\n\"3006170\";\"La Tremblade\";\"main\"\n\"3006170\";\"Reunion-sur-Seudre\";\"other\"\n\"3006170\";\"Réunion-sur-Seudre\";\"other\"\n\"3006183\";\"La Tranche-sur-Mer\";\"main\"\n\"3006183\";\"La Tranche\";\"other\"\n\"3006188\";\"La Tour-sur-Orb\";\"main\"\n\"3006188\";\"La Tour\";\"other\"\n\"3006196\";\"La Tourlandry\";\"main\"\n\"3006200\";\"La Tour-en-Jarez\";\"main\"\n\"3006200\";\"La Tour\";\"other\"\n\"3006202\";\"La Tour-du-Pin\";\"main\"\n\"3006202\";\"La Tour\";\"other\"\n\"3006202\";\"La Tour de Pin\";\"other\"\n\"3006202\";\"Tour-du-Pin\";\"other\"\n\"3006202\";\"Val-du-Pin\";\"other\"\n\"3006205\";\"La Tour-du-Crieu\";\"main\"\n\"3006205\";\"La Tour\";\"other\"\n\"3006207\";\"La Tour-de-Salvagny\";\"main\"\n\"3006207\";\"La Tour\";\"other\"\n\"3006207\";\"Salvagny\";\"other\"\n\"3006215\";\"Latour-Bas-Elne\";\"main\"\n\"3006215\";\"Latour\";\"other\"\n\"3006215\";\"Tour-bas-Elne\";\"other\"\n\"3006219\";\"La Tour\";\"main\"\n\"3006262\";\"Latillé\";\"main\"\n\"3006262\";\"Latille\";\"ascii\"\n\"3006265\";\"Lathus-Saint-Rémy\";\"main\"\n\"3006265\";\"Lathus-Saint-Remy\";\"ascii\"\n\"3006283\";\"La Teste-de-Buch\";\"main\"\n\"3006283\";\"La Testa\";\"other\"\n\"3006283\";\"La Teste\";\"other\"\n\"3006283\";\"La Tèsta\";\"other\"\n\"3006283\";\"La-Test-de-Bukha\";\"other\"\n\"3006283\";\"Ла-Тест-де-Буха\";\"other\"\n\"3006285\";\"La Tessoualle\";\"main\"\n\"3006293\";\"La Terrasse\";\"main\"\n\"3006313\";\"La Tardière\";\"main\"\n\"3006313\";\"La Tardiere\";\"ascii\"\n\"3006320\";\"La Talaudière\";\"main\"\n\"3006320\";\"La Talaudiere\";\"ascii\"\n\"3006330\";\"La Suze-sur-Sarthe\";\"main\"\n\"3006330\";\"La Suze\";\"other\"\n\"3006349\";\"Lassy\";\"main\"\n\"3006349\";\"Lazig\";\"other\"\n\"3006358\";\"Lassigny\";\"main\"\n\"3006363\";\"Lasseube\";\"main\"\n\"3006380\";\"Lassay-les-Châteaux\";\"main\"\n\"3006380\";\"Lassay-les-Chateaux\";\"ascii\"\n\"3006387\";\"La Souterraine\";\"main\"\n\"3006414\";\"La Seyne-sur-Mer\";\"main\"\n\"3006414\";\"La Seyne\";\"other\"\n\"3006430\";\"La Sentinelle\";\"main\"\n\"3006439\";\"La Selle-la-Forge\";\"main\"\n\"3006439\";\"La Selle\";\"other\"\n\"3006454\";\"La Séguinière\";\"main\"\n\"3006454\";\"La Seguiniere\";\"ascii\"\n\"3006458\";\"La Séauve-sur-Semène\";\"main\"\n\"3006458\";\"La Seauve-sur-Semene\";\"ascii\"\n\"3006458\";\"La Seauve\";\"other\"\n\"3006458\";\"La Séauve\";\"other\"\n\"3006458\";\"Mont-Franc\";\"other\"\n\"3006458\";\"Seauve-sur-Semene\";\"other\"\n\"3006458\";\"Séauve-sur-Semène\";\"other\"\n\"3006497\";\"La Sauve\";\"main\"\n\"3006497\";\"La Sauve-Majeure\";\"other\"\n\"3006502\";\"La Saussaye\";\"main\"\n\"3006524\";\"La Salvetat-Peyralès\";\"main\"\n\"3006524\";\"La Salvetat-Peyrales\";\"ascii\"\n\"3006524\";\"La Salvetat\";\"other\"\n\"3006524\";\"La Salvetat-Payrales\";\"other\"\n\"3006524\";\"La Salvetat-Payralès\";\"other\"\n\"3006530\";\"La Salvetat-sur-Agout\";\"main\"\n\"3006530\";\"La Salvetat\";\"other\"\n\"3006530\";\"Salvetat-sur-Agout\";\"other\"\n\"3006531\";\"La Salvetat-Saint-Gilles\";\"main\"\n\"3006531\";\"La Salvetat\";\"other\"\n\"3006534\";\"La Salle-et-Chapelle-Aubry\";\"main\"\n\"3006534\";\"La Salle\";\"other\"\n\"3006543\";\"Lasalle\";\"main\"\n\"3006570\";\"Laruscade\";\"main\"\n\"3006572\";\"Laruns\";\"main\"\n\"3006572\";\"Laruentze\";\"other\"\n\"3006572\";\"Laruntz\";\"other\"\n\"3006572\";\"Larüntze\";\"other\"\n\"3006617\";\"Larringes\";\"main\"\n\"3006627\";\"Larressore\";\"main\"\n\"3006627\";\"Larresoro\";\"other\"\n\"3006690\";\"La Roquette-sur-Siagne\";\"main\"\n\"3006690\";\"La Roquette\";\"other\"\n\"3006693\";\"Laroque-Timbaut\";\"main\"\n\"3006693\";\"Laroque\";\"other\"\n\"3006701\";\"la Roca d'Albera\";\"main\"\n\"3006701\";\"Laroque-des-Alberes\";\"other\"\n\"3006701\";\"Laroque-des-Albères\";\"other\"\n\"3006704\";\"La Roquebrussanne\";\"main\"\n\"3006704\";\"Roquebrussanne\";\"other\"\n\"3006704\";\"Roquelibre\";\"other\"\n\"3006705\";\"Laroquebrou\";\"main\"\n\"3006711\";\"Laroque\";\"main\"\n\"3006739\";\"La Romagne\";\"main\"\n\"3006751\";\"La Roche-Vineuse\";\"main\"\n\"3006751\";\"La Vineuse\";\"other\"\n\"3006751\";\"Roche-Vineuse\";\"other\"\n\"3006755\";\"La Rochette\";\"main\"\n\"3006758\";\"La Rochette\";\"main\"\n\"3006767\";\"La Roche-sur-Yon\";\"main\"\n\"3006767\";\"La-Rosh-sjur-Jon\";\"other\"\n\"3006767\";\"Les Fromages\";\"other\"\n\"3006767\";\"Les Mineraux\";\"other\"\n\"3006767\";\"Les Minéraux\";\"other\"\n\"3006767\";\"Roche-sur-Yon\";\"other\"\n\"3006767\";\"Ла-Рош-сюр-Йон\";\"other\"\n\"3006767\";\"ラ・ロッシュ＝シュル＝ヨン\";\"other\"\n\"3006770\";\"La Roche-sur-Foron\";\"main\"\n\"3006770\";\"La Roche\";\"other\"\n\"3006771\";\"Laroche-Saint-Cydroine\";\"main\"\n\"3006771\";\"La Roche-sur-Yonne\";\"other\"\n\"3006771\";\"Laroche\";\"other\"\n\"3006775\";\"La Roche-Posay\";\"main\"\n\"3006780\";\"La Roche-Maurice\";\"main\"\n\"3006780\";\"Ar Roc'h-Morvan\";\"other\"\n\"3006780\";\"La Roche\";\"other\"\n\"3006780\";\"Roche-Maurice\";\"other\"\n\"3006787\";\"La Rochelle\";\"main\"\n\"3006787\";\"Arroxela\";\"other\"\n\"3006787\";\"La Cote\";\"other\"\n\"3006787\";\"La Côte\";\"other\"\n\"3006787\";\"La Roshel\";\"other\"\n\"3006787\";\"La-Roshel'\";\"other\"\n\"3006787\";\"Proclamation\";\"other\"\n\"3006787\";\"lh rwsl\";\"other\"\n\"3006787\";\"Ла Рошел\";\"other\"\n\"3006787\";\"Ла-Рошель\";\"other\"\n\"3006787\";\"לה רושל\";\"other\"\n\"3006787\";\"ラ・ロシェル\";\"other\"\n\"3006793\";\"La Rochefoucauld\";\"main\"\n\"3006793\";\"La Roche-Tardoire\";\"other\"\n\"3006795\";\"La Roche-des-Arnauds\";\"main\"\n\"3006795\";\"La Roche\";\"other\"\n\"3006796\";\"La Roche-Derrien\";\"main\"\n\"3006796\";\"Ar Roc'h-Derrien\";\"other\"\n\"3006798\";\"La Roche-de-Glun\";\"main\"\n\"3006798\";\"La Roche\";\"other\"\n\"3006801\";\"La Roche-Chalais\";\"main\"\n\"3006801\";\"Lonchement\";\"other\"\n\"3006806\";\"La Roche-Blanche\";\"main\"\n\"3006806\";\"La Roche\";\"other\"\n\"3006876\";\"Larmor-Plage\";\"main\"\n\"3006876\";\"An Arvor\";\"other\"\n\"3006876\";\"Larmor\";\"other\"\n\"3006877\";\"Larmor-Baden\";\"main\"\n\"3006877\";\"An Arvor-Baden\";\"other\"\n\"3006877\";\"Larmor\";\"other\"\n\"3006885\";\"La Rivière-Saint-Sauveur\";\"main\"\n\"3006885\";\"La Riviere-Saint-Sauveur\";\"ascii\"\n\"3006885\";\"La Riviere\";\"other\"\n\"3006885\";\"La Rivière\";\"other\"\n\"3006889\";\"La Rivière-de-Corps\";\"main\"\n\"3006889\";\"La Riviere-de-Corps\";\"ascii\"\n\"3006889\";\"La Riviere\";\"other\"\n\"3006889\";\"La Rivière\";\"other\"\n\"3006928\";\"La Riche\";\"main\"\n\"3006928\";\"La Riche-Extra\";\"other\"\n\"3006929\";\"La Richardais\";\"main\"\n\"3006929\";\"Kerricharzh-an-Arvor\";\"other\"\n\"3006930\";\"La Ricamarie\";\"main\"\n\"3006930\";\"La Ricamene\";\"other\"\n\"3006930\";\"La Ricamerie\";\"other\"\n\"3006930\";\"Ricamarie\";\"other\"\n\"3006958\";\"Largentière\";\"main\"\n\"3006958\";\"Largentiere\";\"ascii\"\n\"3006958\";\"L'Argentiera\";\"other\"\n\"3006958\";\"L'Argentièra\";\"other\"\n\"3006979\";\"La Réole\";\"main\"\n\"3006979\";\"La Reole\";\"ascii\"\n\"3006995\";\"La Remuée\";\"main\"\n\"3006995\";\"La Remuee\";\"ascii\"\n\"3006995\";\"La Fraternite\";\"other\"\n\"3006995\";\"La Fraternité\";\"other\"\n\"3006999\";\"La Remaudière\";\"main\"\n\"3006999\";\"La Remaudiere\";\"ascii\"\n\"3006999\";\"Kerravaot\";\"other\"\n\"3007004\";\"La Regrippière\";\"main\"\n\"3007004\";\"La Regrippiere\";\"ascii\"\n\"3007004\";\"Skouvlant\";\"other\"\n\"3007017\";\"Lardy\";\"main\"\n\"3007037\";\"Larche\";\"main\"\n\"3007044\";\"Larchamp\";\"main\"\n\"3007048\";\"Larçay\";\"main\"\n\"3007048\";\"Larcay\";\"ascii\"\n\"3007064\";\"La Ravoire\";\"main\"\n\"3007076\";\"Larajasse\";\"main\"\n\"3007082\";\"Laragne-Montéglin\";\"main\"\n\"3007082\";\"Laragne-Monteglin\";\"ascii\"\n\"3007101\";\"La Queue-les-Yvelines\";\"main\"\n\"3007101\";\"La Queue\";\"other\"\n\"3007101\";\"La Queue-lez-Yvelines\";\"other\"\n\"3007102\";\"La Queue-en-Brie\";\"main\"\n\"3007102\";\"La Queue\";\"other\"\n\"3007102\";\"La Queue-le-Peletier\";\"other\"\n\"3007116\";\"Lapugnoy\";\"main\"\n\"3007118\";\"Lapte\";\"main\"\n\"3007160\";\"Lapoutroie\";\"main\"\n\"3007160\";\"La Poutroye\";\"other\"\n\"3007160\";\"Schnierlach\";\"other\"\n\"3007174\";\"La Pouëze\";\"main\"\n\"3007174\";\"La Poueze\";\"ascii\"\n\"3007195\";\"La Possonnière\";\"main\"\n\"3007195\";\"La Possonniere\";\"ascii\"\n\"3007213\";\"La Pommeraye\";\"main\"\n\"3007215\";\"La Pommeraie-sur-Sèvre\";\"main\"\n\"3007215\";\"La Pommeraie-sur-Sevre\";\"ascii\"\n\"3007215\";\"La Pommeraie\";\"other\"\n\"3007243\";\"Laplume\";\"main\"\n\"3007259\";\"La Planche\";\"main\"\n\"3007259\";\"Ar Plank\";\"other\"\n\"3007262\";\"La Plaine-sur-Mer\";\"main\"\n\"3007262\";\"La Plaine\";\"other\"\n\"3007262\";\"Plaen-Raez\";\"other\"\n\"3007327\";\"Lapeyrouse-Fossat\";\"main\"\n\"3007327\";\"Lapeyrouse\";\"other\"\n\"3007339\";\"La Peyratte\";\"main\"\n\"3007401\";\"La Penne-sur-Huveaune\";\"main\"\n\"3007401\";\"La Penne\";\"other\"\n\"3007451\";\"Lapalud\";\"main\"\n\"3007461\";\"Lapalisse\";\"main\"\n\"3007471\";\"La Pacaudière\";\"main\"\n\"3007471\";\"La Pacaudiere\";\"ascii\"\n\"3007477\";\"Laon\";\"main\"\n\"3007477\";\"Lana\";\"other\"\n\"3007477\";\"ran\";\"other\"\n\"3007477\";\"Лана\";\"other\"\n\"3007477\";\"ラン\";\"other\"\n\"3007481\";\"Lanvollon\";\"main\"\n\"3007481\";\"Lannolon\";\"other\"\n\"3007488\";\"Lanvéoc\";\"main\"\n\"3007488\";\"Lanveoc\";\"ascii\"\n\"3007488\";\"Lanveog\";\"other\"\n\"3007488\";\"Lañveog\";\"other\"\n\"3007489\";\"Lanvénégen\";\"main\"\n\"3007489\";\"Lanvenegen\";\"ascii\"\n\"3007489\";\"Lannejenn\";\"other\"\n\"3007496\";\"Lanvallay\";\"main\"\n\"3007496\";\"Lanvalae\";\"other\"\n\"3007504\";\"Lantriac\";\"main\"\n\"3007506\";\"Lantosque\";\"main\"\n\"3007508\";\"Lanton\";\"main\"\n\"3007516\";\"Lantic\";\"main\"\n\"3007516\";\"Lannidig\";\"other\"\n\"3007535\";\"Lanta\";\"main\"\n\"3007539\";\"Lans-en-Vercors\";\"main\"\n\"3007539\";\"Lans\";\"other\"\n\"3007541\";\"Lansargues\";\"main\"\n\"3007552\";\"Lanrodec\";\"main\"\n\"3007552\";\"Lanrodeg\";\"other\"\n\"3007553\";\"Lanrivoaré\";\"main\"\n\"3007553\";\"Lanrivoare\";\"ascii\"\n\"3007560\";\"Lanquetot\";\"main\"\n\"3007570\";\"Lanouée\";\"main\"\n\"3007570\";\"Lanouee\";\"ascii\"\n\"3007570\";\"Lannoez\";\"other\"\n\"3007581\";\"Lanouaille\";\"main\"\n\"3007582\";\"La Norville\";\"main\"\n\"3007592\";\"Lanobre\";\"main\"\n\"3007601\";\"Lannoy\";\"main\"\n\"3007601\";\"Lannoy-du-Nord\";\"other\"\n\"3007609\";\"Lannion\";\"main\"\n\"3007609\";\"Lannuon\";\"other\"\n\"3007609\";\"lanywn\";\"other\"\n\"3007609\";\"Ланнион\";\"other\"\n\"3007609\";\"لانيون\";\"other\"\n\"3007610\";\"Lannilis\";\"main\"\n\"3007610\";\"Lanniliz\";\"other\"\n\"3007622\";\"Lannemezan\";\"main\"\n\"3007637\";\"Lanmeur\";\"main\"\n\"3007663\";\"Languidic\";\"main\"\n\"3007663\";\"Langedig\";\"other\"\n\"3007666\";\"Langueux\";\"main\"\n\"3007666\";\"Langaeg\";\"other\"\n\"3007673\";\"Langrune-sur-Mer\";\"main\"\n\"3007673\";\"Langrune\";\"other\"\n\"3007680\";\"Langres\";\"main\"\n\"3007680\";\"לאנגר\";\"other\"\n\"3007687\";\"Langonnet\";\"main\"\n\"3007687\";\"Langoned\";\"other\"\n\"3007689\";\"Langon\";\"main\"\n\"3007689\";\"Landegon\";\"other\"\n\"3007691\";\"Langon\";\"main\"\n\"3007693\";\"Langoiran\";\"main\"\n\"3007694\";\"Langogne\";\"main\"\n\"3007696\";\"Langoat\";\"main\"\n\"3007696\";\"Langoad\";\"other\"\n\"3007715\";\"Langlade\";\"main\"\n\"3007729\";\"Langeais\";\"main\"\n\"3007730\";\"Langeac\";\"main\"\n\"3007780\";\"Laneuveville-devant-Nancy\";\"main\"\n\"3007780\";\"Laneuveville\";\"other\"\n\"3007794\";\"Lanester\";\"main\"\n\"3007794\";\"Lannarster\";\"other\"\n\"3007794\";\"Lannarstêr\";\"other\"\n\"3007803\";\"Landunvez\";\"main\"\n\"3007806\";\"Landudec\";\"main\"\n\"3007806\";\"Landudeg\";\"other\"\n\"3007808\";\"Landser\";\"main\"\n\"3007818\";\"Landrévarzec\";\"main\"\n\"3007818\";\"Landrevarzec\";\"ascii\"\n\"3007818\";\"Landrevarzeg\";\"other\"\n\"3007825\";\"Landres\";\"main\"\n\"3007830\";\"Landrecies\";\"main\"\n\"3007841\";\"Landivy\";\"main\"\n\"3007842\";\"Landivisiau\";\"main\"\n\"3007842\";\"Landivizio\";\"other\"\n\"3007845\";\"Landiras\";\"main\"\n\"3007858\";\"Landévant\";\"main\"\n\"3007858\";\"Landevant\";\"ascii\"\n\"3007873\";\"Landeronde\";\"main\"\n\"3007873\";\"Bonne-Lande\";\"other\"\n\"3007874\";\"Landerneau\";\"main\"\n\"3007874\";\"Landerne\";\"other\"\n\"3007878\";\"Landemont\";\"main\"\n\"3007882\";\"Landeleau\";\"main\"\n\"3007882\";\"Landelo\";\"other\"\n\"3007883\";\"Landéhen\";\"main\"\n\"3007883\";\"Landehen\";\"ascii\"\n\"3007885\";\"Landéda\";\"main\"\n\"3007885\";\"Landeda\";\"ascii\"\n\"3007889\";\"Landéan\";\"main\"\n\"3007889\";\"Landean\";\"ascii\"\n\"3007902\";\"Landaul\";\"main\"\n\"3007902\";\"Landaol\";\"other\"\n\"3007903\";\"Landas\";\"main\"\n\"3007909\";\"Lancrans\";\"main\"\n\"3007912\";\"Lançon-Provence\";\"main\"\n\"3007912\";\"Lancon-Provence\";\"ascii\"\n\"3007912\";\"Lancon\";\"other\"\n\"3007912\";\"Lançon\";\"other\"\n\"3007919\";\"Lancieux\";\"main\"\n\"3007919\";\"Lanseeg\";\"other\"\n\"3007950\";\"La Murette\";\"main\"\n\"3007957\";\"La Mure\";\"main\"\n\"3007957\";\"La Mjur\";\"other\"\n\"3007957\";\"La Mure-d'Isere\";\"other\"\n\"3007957\";\"La Mure-d'Isère\";\"other\"\n\"3007957\";\"Mure-la-Fontaine\";\"other\"\n\"3007957\";\"Ла Мюр\";\"other\"\n\"3007963\";\"La Mulatière\";\"main\"\n\"3007963\";\"La Mulatiere\";\"ascii\"\n\"3007970\";\"Lampertheim\";\"main\"\n\"3007972\";\"Lampaul-Plouarzel\";\"main\"\n\"3007972\";\"Lambaol-Blouarzhel\";\"other\"\n\"3007973\";\"Lampaul-Guimiliau\";\"main\"\n\"3007973\";\"Lambaol-Gwimilio\";\"other\"\n\"3007973\";\"Lampaul\";\"other\"\n\"3007998\";\"La Motte-Servolex\";\"main\"\n\"3007998\";\"La Motte\";\"other\"\n\"3007998\";\"La Motte-Servolen\";\"other\"\n\"3007999\";\"La Motte-Saint-Martin\";\"main\"\n\"3007999\";\"La Motte\";\"other\"\n\"3007999\";\"La Motte-sur-Eaux\";\"other\"\n\"3008000\";\"La Motte-Saint-Jean\";\"main\"\n\"3008000\";\"La Motte\";\"other\"\n\"3008000\";\"Montfleury\";\"other\"\n\"3008020\";\"Lamotte-Beuvron\";\"main\"\n\"3008037\";\"La Motte\";\"main\"\n\"3008040\";\"La Mothe-Saint-Héray\";\"main\"\n\"3008040\";\"La Mothe-Saint-Heray\";\"ascii\"\n\"3008040\";\"La Mothe\";\"other\"\n\"3008040\";\"La Mothe-Sainte-Heraye\";\"other\"\n\"3008040\";\"La Mothe-Sainte-Héraye\";\"other\"\n\"3008040\";\"La Mothe-sur-Sevre\";\"other\"\n\"3008040\";\"La Mothe-sur-Sèvre\";\"other\"\n\"3008041\";\"Lamothe-Montravel\";\"main\"\n\"3008041\";\"Lamothe\";\"other\"\n\"3008052\";\"La Mothe-Achard\";\"main\"\n\"3008074\";\"Lamorlaye\";\"main\"\n\"3008080\";\"Lamonzie-Saint-Martin\";\"main\"\n\"3008080\";\"Lamonzie\";\"other\"\n\"3008096\";\"La Montagne\";\"main\"\n\"3008096\";\"Ar Menez\";\"other\"\n\"3008107\";\"La Monnerie-le-Montel\";\"main\"\n\"3008133\";\"La Milesse\";\"main\"\n\"3008140\";\"La Mézière\";\"main\"\n\"3008140\";\"La Meziere\";\"ascii\"\n\"3008140\";\"Magoer\";\"other\"\n\"3008166\";\"La Ménitré\";\"main\"\n\"3008166\";\"La Menitre\";\"ascii\"\n\"3008176\";\"La Membrolle-sur-Longuenée\";\"main\"\n\"3008176\";\"La Membrolle-sur-Longuenee\";\"ascii\"\n\"3008176\";\"La Membrolle\";\"other\"\n\"3008177\";\"La Membrolle-sur-Choisille\";\"main\"\n\"3008177\";\"La Membrolle\";\"other\"\n\"3008185\";\"La Meilleraye-de-Bretagne\";\"main\"\n\"3008185\";\"La Meilleraye\";\"other\"\n\"3008185\";\"Melereg-Breizh\";\"other\"\n\"3008186\";\"La Meilleraie-Tillay\";\"main\"\n\"3008186\";\"La Meilleraie\";\"other\"\n\"3008189\";\"La Meignanne\";\"main\"\n\"3008192\";\"La Méaugon\";\"main\"\n\"3008192\";\"La Meaugon\";\"ascii\"\n\"3008192\";\"Lanvealgon\";\"other\"\n\"3008192\";\"Meaugon\";\"other\"\n\"3008193\";\"La Meauffe\";\"main\"\n\"3008198\";\"Lambres-lez-Douai\";\"main\"\n\"3008198\";\"Lambres\";\"other\"\n\"3008208\";\"Lambesc\";\"main\"\n\"3008218\";\"Lambersart\";\"main\"\n\"3008218\";\"Lambersar\";\"other\"\n\"3008218\";\"Ламберсар\";\"other\"\n\"3008225\";\"Lamballe\";\"main\"\n\"3008225\";\"Lambal\";\"other\"\n\"3008249\";\"Lamastre\";\"main\"\n\"3008274\";\"Lamarque\";\"main\"\n\"3008300\";\"Lamarche-sur-Saône\";\"main\"\n\"3008300\";\"Lamarche-sur-Saone\";\"ascii\"\n\"3008300\";\"Lamarche\";\"other\"\n\"3008303\";\"Lamarche\";\"main\"\n\"3008308\";\"Lamanon\";\"main\"\n\"3008321\";\"Lamalou-les-Bains\";\"main\"\n\"3008321\";\"Lamalou\";\"other\"\n\"3008353\";\"La Mailleraye-sur-Seine\";\"main\"\n\"3008353\";\"La Mailleraye\";\"other\"\n\"3008353\";\"Mailleraye-sur-Seine\";\"other\"\n\"3008362\";\"Lamagistère\";\"main\"\n\"3008362\";\"Lamagistere\";\"ascii\"\n\"3008377\";\"La Madeleine-de-Nonancourt\";\"main\"\n\"3008377\";\"La Madeleine\";\"other\"\n\"3008377\";\"La Madeleine-de Nonencourt\";\"other\"\n\"3008379\";\"La Madeleine\";\"main\"\n\"3008379\";\"La Madeleine-les-Lille\";\"other\"\n\"3008379\";\"Madeleine\";\"other\"\n\"3008379\";\"Madlen\";\"other\"\n\"3008379\";\"Мадлен\";\"other\"\n\"3008391\";\"La Machine\";\"main\"\n\"3008418\";\"La Loupe\";\"main\"\n\"3008421\";\"La Loubière\";\"main\"\n\"3008421\";\"La Loubiere\";\"ascii\"\n\"3008423\";\"Laloubère\";\"main\"\n\"3008423\";\"Laloubere\";\"ascii\"\n\"3008426\";\"La Longueville\";\"main\"\n\"3008432\";\"La Londe-les-Maures\";\"main\"\n\"3008432\";\"La Londe\";\"other\"\n\"3008463\";\"Lallaing\";\"main\"\n\"3008469\";\"Lalinde\";\"main\"\n\"3008470\";\"La Limouzinière\";\"main\"\n\"3008470\";\"La Limouziniere\";\"ascii\"\n\"3008470\";\"Kerlouevig\";\"other\"\n\"3008502\";\"Lalbenque\";\"main\"\n\"3008532\";\"La Lande-Patry\";\"main\"\n\"3008532\";\"La Lande\";\"other\"\n\"3008539\";\"La Lande-de-Fronsac\";\"main\"\n\"3008539\";\"La Lande\";\"other\"\n\"3008571\";\"La Jumellière\";\"main\"\n\"3008571\";\"La Jumelliere\";\"ascii\"\n\"3008571\";\"La Jumeliere\";\"other\"\n\"3008571\";\"La Jumelière\";\"other\"\n\"3008576\";\"La Jubaudière\";\"main\"\n\"3008576\";\"La Jubaudiere\";\"ascii\"\n\"3008607\";\"La Jarrie\";\"main\"\n\"3008611\";\"La Jarne\";\"main\"\n\"3008628\";\"Laiz\";\"main\"\n\"3008636\";\"Laissac\";\"main\"\n\"3008662\";\"Lailly-en-Val\";\"main\"\n\"3008662\";\"Lailly\";\"other\"\n\"3008665\";\"Laillé\";\"main\"\n\"3008665\";\"Laille\";\"ascii\"\n\"3008665\";\"Lalieg\";\"other\"\n\"3008680\";\"Laigneville\";\"main\"\n\"3008684\";\"Laigné-en-Belin\";\"main\"\n\"3008684\";\"Laigne-en-Belin\";\"ascii\"\n\"3008684\";\"Laigne\";\"other\"\n\"3008684\";\"Laigné\";\"other\"\n\"3008705\";\"La Houssaye-en-Brie\";\"main\"\n\"3008705\";\"La Houssaye\";\"other\"\n\"3008719\";\"Lahonce\";\"main\"\n\"3008719\";\"Lehuntze\";\"other\"\n\"3008753\";\"La Haye-Pesnel\";\"main\"\n\"3008753\";\"La Haye-Libre\";\"other\"\n\"3008754\";\"La Haye-Malherbe\";\"main\"\n\"3008758\";\"La Haye-du-Puits\";\"main\"\n\"3008759\";\"Descartes\";\"main\"\n\"3008759\";\"La Haye-Descartes\";\"other\"\n\"3008809\";\"La Haie-Fouassière\";\"main\"\n\"3008809\";\"La Haie-Fouassiere\";\"ascii\"\n\"3008809\";\"An Hae-Foazer\";\"other\"\n\"3008820\";\"La Guyonnière\";\"main\"\n\"3008820\";\"La Guyonniere\";\"ascii\"\n\"3008825\";\"Laguiole\";\"main\"\n\"3008854\";\"La Guérinière\";\"main\"\n\"3008854\";\"La Gueriniere\";\"ascii\"\n\"3008854\";\"La Gaudiniere\";\"other\"\n\"3008854\";\"la gueriniere\";\"other\"\n\"3008857\";\"La Guerche-de-Bretagne\";\"main\"\n\"3008857\";\"Gwerc'h-Breizh\";\"other\"\n\"3008857\";\"La Guerche\";\"other\"\n\"3008857\";\"Montagne-de-la-Guerche\";\"other\"\n\"3008861\";\"Laguenne\";\"main\"\n\"3008861\";\"Laguemie\";\"other\"\n\"3008884\";\"La Grigonnais\";\"main\"\n\"3008884\";\"Kerrigon\";\"other\"\n\"3008914\";\"Lagrave\";\"main\"\n\"3008977\";\"La Grande-Paroisse\";\"main\"\n\"3008981\";\"La Grande-Motte\";\"main\"\n\"3009015\";\"La Grand-Croix\";\"main\"\n\"3009038\";\"La Gouesnière\";\"main\"\n\"3009038\";\"La Gouesniere\";\"ascii\"\n\"3009038\";\"Gouenaer\";\"other\"\n\"3009050\";\"La Gorgue\";\"main\"\n\"3009052\";\"Lagord\";\"main\"\n\"3009054\";\"Lagorce\";\"main\"\n\"3009057\";\"Lagor\";\"main\"\n\"3009069\";\"Lagny-le-Sec\";\"main\"\n\"3009069\";\"Lagny\";\"other\"\n\"3009071\";\"Lagny-sur-Marne\";\"main\"\n\"3009073\";\"Lagnieu\";\"main\"\n\"3009073\";\"Fontaine-d'Or\";\"other\"\n\"3009078\";\"Lagnes\";\"main\"\n\"3009086\";\"La Glacerie\";\"main\"\n\"3009125\";\"La Génétouze\";\"main\"\n\"3009125\";\"La Genetouze\";\"ascii\"\n\"3009150\";\"La Gaude\";\"main\"\n\"3009153\";\"La Gaubretière\";\"main\"\n\"3009153\";\"La Gaubretiere\";\"ascii\"\n\"3009163\";\"Lagarrigue\";\"main\"\n\"3009168\";\"La Garnache\";\"main\"\n\"3009169\";\"La Garenne-Colombes\";\"main\"\n\"3009169\";\"La Garenne\";\"other\"\n\"3009188\";\"Lagardelle-sur-Lèze\";\"main\"\n\"3009188\";\"Lagardelle-sur-Leze\";\"ascii\"\n\"3009188\";\"Lagardelle\";\"other\"\n\"3009193\";\"La Garde-Freinet\";\"main\"\n\"3009193\";\"Garde-Freinet\";\"other\"\n\"3009196\";\"La Garde-Adhémar\";\"main\"\n\"3009196\";\"La Garde-Adhemar\";\"ascii\"\n\"3009223\";\"La Garde\";\"main\"\n\"3009223\";\"La Garde-pres-Toulon\";\"other\"\n\"3009223\";\"La Garde-près-Toulon\";\"other\"\n\"3009239\";\"La Gacilly\";\"main\"\n\"3009239\";\"Gazilieg\";\"other\"\n\"3009256\";\"La Frette-sur-Seine\";\"main\"\n\"3009256\";\"La Frette\";\"other\"\n\"3009266\";\"La Fresnais\";\"main\"\n\"3009266\";\"An Onneg\";\"other\"\n\"3009287\";\"La Francheville\";\"main\"\n\"3009289\";\"Lafrançaise\";\"main\"\n\"3009289\";\"Lafrancaise\";\"ascii\"\n\"3009313\";\"La Fouillouse\";\"main\"\n\"3009315\";\"La Fouillade\";\"main\"\n\"3009348\";\"La Forêt-sur-Sèvre\";\"main\"\n\"3009348\";\"La Foret-sur-Sevre\";\"ascii\"\n\"3009348\";\"La Foret\";\"other\"\n\"3009348\";\"La Forêt\";\"other\"\n\"3009352\";\"La Forêt-Fouesnant\";\"main\"\n\"3009352\";\"La Foret-Fouesnant\";\"ascii\"\n\"3009352\";\"Ar Forest-Fouenant\";\"other\"\n\"3009352\";\"La Foret\";\"other\"\n\"3009352\";\"La Forêt\";\"other\"\n\"3009390\";\"La Forest-Landerneau\";\"main\"\n\"3009390\";\"Ar Forest-Landerne\";\"other\"\n\"3009390\";\"La Forest\";\"other\"\n\"3009395\";\"La Force\";\"main\"\n\"3009436\";\"La Flotte\";\"main\"\n\"3009438\";\"La Flocellière\";\"main\"\n\"3009438\";\"La Flocelliere\";\"ascii\"\n\"3009443\";\"La Flèche\";\"main\"\n\"3009443\";\"La Fleche\";\"ascii\"\n\"3009445\";\"La Flamengrie\";\"main\"\n\"3009467\";\"La Feuillie\";\"main\"\n\"3009481\";\"La Ferté-sous-Jouarre\";\"main\"\n\"3009481\";\"La Ferte-sous-Jouarre\";\"ascii\"\n\"3009481\";\"Jouarre-la-Montagne\";\"other\"\n\"3009481\";\"La Ferte\";\"other\"\n\"3009481\";\"La Ferte-sur-Marne\";\"other\"\n\"3009481\";\"La Ferté\";\"other\"\n\"3009481\";\"La Ferté-sur-Marne\";\"other\"\n\"3009484\";\"La Ferté-Saint-Aubin\";\"main\"\n\"3009484\";\"La Ferte-Saint-Aubin\";\"ascii\"\n\"3009484\";\"La Ferte-Cosson\";\"other\"\n\"3009484\";\"La Ferté-Cosson\";\"other\"\n\"3009485\";\"La Ferté-Milon\";\"main\"\n\"3009485\";\"La Ferte-Milon\";\"ascii\"\n\"3009485\";\"La Ferte-sur-Ourcq\";\"other\"\n\"3009485\";\"La Ferté-sur-Ourcq\";\"other\"\n\"3009485\";\"la ferte Milon\";\"other\"\n\"3009485\";\"la ferté Milon\";\"other\"\n\"3009486\";\"La Ferté-Macé\";\"main\"\n\"3009486\";\"La Ferte-Mace\";\"ascii\"\n\"3009488\";\"La Ferté-Imbault\";\"main\"\n\"3009488\";\"La Ferte-Imbault\";\"ascii\"\n\"3009490\";\"La Ferté-Gaucher\";\"main\"\n\"3009490\";\"La Ferte-Gaucher\";\"ascii\"\n\"3009490\";\"La Ferte-sur-Morin\";\"other\"\n\"3009490\";\"La Ferté-sur-Morin\";\"other\"\n\"3009494\";\"La Ferté-Bernard\";\"main\"\n\"3009494\";\"La Ferte-Bernard\";\"ascii\"\n\"3009494\";\"La Ferte-les-Pres\";\"other\"\n\"3009494\";\"La Ferte-sur-Huisne\";\"other\"\n\"3009494\";\"La Ferté-les-Prés\";\"other\"\n\"3009494\";\"La Ferté-sur-Huisne\";\"other\"\n\"3009496\";\"La Ferté-Alais\";\"main\"\n\"3009496\";\"La Ferte-Alais\";\"ascii\"\n\"3009508\";\"La Ferrière-aux-Étangs\";\"main\"\n\"3009508\";\"La Ferriere-aux-Etangs\";\"ascii\"\n\"3009508\";\"La Ferriere\";\"other\"\n\"3009508\";\"La Ferrière\";\"other\"\n\"3009516\";\"La Ferrière\";\"main\"\n\"3009516\";\"La Ferriere\";\"ascii\"\n\"3009526\";\"La Fère\";\"main\"\n\"3009526\";\"La Fere\";\"ascii\"\n\"3009566\";\"La Farlède\";\"main\"\n\"3009566\";\"La Farlede\";\"ascii\"\n\"3009566\";\"La Farlade\";\"other\"\n\"3009575\";\"La Fare-les-Oliviers\";\"main\"\n\"3009575\";\"Fare-les-Oliviers\";\"other\"\n\"3009575\";\"La Fare\";\"other\"\n\"3009638\";\"Ladon\";\"main\"\n\"3009639\";\"La Dominelais\";\"main\"\n\"3009639\";\"Doveneleg\";\"other\"\n\"3009652\";\"Ladignac-le-Long\";\"main\"\n\"3009652\";\"Ladignac\";\"other\"\n\"3009663\";\"La Destrousse\";\"main\"\n\"3009670\";\"La Défense\";\"main\"\n\"3009670\";\"La Defense\";\"ascii\"\n\"3009670\";\"Lja Defans\";\"other\"\n\"3009670\";\"Paris La Defense\";\"other\"\n\"3009670\";\"Paris La defense\";\"other\"\n\"3009670\";\"Paris La défense\";\"other\"\n\"3009670\";\"Ля Дефанс\";\"other\"\n\"3009683\";\"La Daguenière\";\"main\"\n\"3009683\";\"La Dagueniere\";\"ascii\"\n\"3009699\";\"Lacrouzette\";\"main\"\n\"3009710\";\"La Croix-Valmer\";\"main\"\n\"3009710\";\"Croix-Valmer\";\"other\"\n\"3009710\";\"La Croix\";\"other\"\n\"3009716\";\"Lacroix-Saint-Ouen\";\"main\"\n\"3009731\";\"Lacroix-Falgarde\";\"main\"\n\"3009732\";\"La Croix-en-Touraine\";\"main\"\n\"3009732\";\"Croix-en-Touraine\";\"other\"\n\"3009732\";\"La Croix\";\"other\"\n\"3009791\";\"La Crau\";\"main\"\n\"3009804\";\"La Couture-Boussey\";\"main\"\n\"3009804\";\"La Couture\";\"other\"\n\"3009805\";\"La Couture\";\"main\"\n\"3009815\";\"La Courtine\";\"main\"\n\"3009822\";\"La Couronne\";\"main\"\n\"3009822\";\"La Palud\";\"other\"\n\"3009824\";\"La Courneuve\";\"main\"\n\"3009824\";\"La-Kurnev\";\"other\"\n\"3009824\";\"Ла-Курнев\";\"other\"\n\"3009873\";\"La Couarde-sur-Mer\";\"main\"\n\"3009873\";\"La Couarde\";\"other\"\n\"3009873\";\"La Fraternite\";\"other\"\n\"3009873\";\"La Fraternité\";\"other\"\n\"3009879\";\"La Côte-Saint-André\";\"main\"\n\"3009879\";\"La Cote-Saint-Andre\";\"ascii\"\n\"3009879\";\"Cote-Andre\";\"other\"\n\"3009879\";\"Cote-Bonne-Eau\";\"other\"\n\"3009879\";\"Cote-Eau-Bonne\";\"other\"\n\"3009879\";\"Cote-Saint-Andre\";\"other\"\n\"3009879\";\"Côte-André\";\"other\"\n\"3009879\";\"Côte-Bonne-Eau\";\"other\"\n\"3009879\";\"Côte-Eau-Bonne\";\"other\"\n\"3009879\";\"Côte-Saint-André\";\"other\"\n\"3009922\";\"La Coquille\";\"main\"\n\"3009978\";\"La Colle-sur-Loup\";\"main\"\n\"3009978\";\"La Colle\";\"other\"\n\"3010000\";\"La Cluse-et-Mijoux\";\"main\"\n\"3010000\";\"Cluse et Mijoux\";\"other\"\n\"3010004\";\"La Clusaz\";\"main\"\n\"3010004\";\"La Clusac\";\"other\"\n\"3010014\";\"La Clayette\";\"main\"\n\"3010025\";\"La Ciotat\";\"main\"\n\"3010025\";\"Sans-Nom\";\"other\"\n\"3010025\";\"Ville-sans-Nom\";\"other\"\n\"3010040\";\"La Chevrolière\";\"main\"\n\"3010040\";\"La Chevroliere\";\"ascii\"\n\"3010040\";\"Kerc'hevrel\";\"other\"\n\"3010092\";\"La Chaussée-Saint-Victor\";\"main\"\n\"3010092\";\"La Chaussee-Saint-Victor\";\"ascii\"\n\"3010092\";\"La Chaussee\";\"other\"\n\"3010092\";\"La Chaussée\";\"other\"\n\"3010092\";\"Victoire\";\"other\"\n\"3010092\";\"Victor\";\"other\"\n\"3010092\";\"Victor-la-Chaussee\";\"other\"\n\"3010092\";\"Victor-la-Chaussée\";\"other\"\n\"3010154\";\"La Châtre\";\"main\"\n\"3010154\";\"La Chatre\";\"ascii\"\n\"3010154\";\"Chatre\";\"other\"\n\"3010154\";\"Châtre\";\"other\"\n\"3010161\";\"La Châtaigneraie\";\"main\"\n\"3010161\";\"La Chataigneraie\";\"ascii\"\n\"3010181\";\"La Chartre-sur-le-Loir\";\"main\"\n\"3010181\";\"La Chartre\";\"other\"\n\"3010201\";\"La Charité-sur-Loire\";\"main\"\n\"3010201\";\"La Charite-sur-Loire\";\"ascii\"\n\"3010201\";\"Charite-sur-Loire\";\"other\"\n\"3010201\";\"Charité-sur-Loire\";\"other\"\n\"3010201\";\"La Charite\";\"other\"\n\"3010201\";\"La Charité\";\"other\"\n\"3010201\";\"Lja-Sharite-sjur-Luar\";\"other\"\n\"3010201\";\"Ля-Шарите-сюр-Луар\";\"other\"\n\"3010226\";\"La Chapelle-Thouarault\";\"main\"\n\"3010226\";\"Bredual\";\"other\"\n\"3010235\";\"La Chapelle-sur-Loire\";\"main\"\n\"3010235\";\"La Chapelle\";\"other\"\n\"3010235\";\"Les Trois-Volets\";\"other\"\n\"3010237\";\"La Chapelle-sur-Erdre\";\"main\"\n\"3010237\";\"Chapel-Erzh\";\"other\"\n\"3010239\";\"La Chapelle-sur-Crécy\";\"main\"\n\"3010239\";\"La Chapelle-sur-Crecy\";\"ascii\"\n\"3010239\";\"La Chapelle\";\"other\"\n\"3010252\";\"Lachapelle-sous-Aubenas\";\"main\"\n\"3010252\";\"Lachapelle\";\"other\"\n\"3010254\";\"La Chapelle-Saint-Ursin\";\"main\"\n\"3010265\";\"La Chapelle-Saint-Mesmin\";\"main\"\n\"3010265\";\"La Chapelle\";\"other\"\n\"3010271\";\"La Chapelle-Saint-Luc\";\"main\"\n\"3010271\";\"La Chapelle\";\"other\"\n\"3010273\";\"La Chapelle-Saint-Laurent\";\"main\"\n\"3010278\";\"La Chapelle-Saint-Florent\";\"main\"\n\"3010278\";\"La Chapelle\";\"other\"\n\"3010281\";\"La Chapelle-Saint-Aubin\";\"main\"\n\"3010285\";\"La Chapelle-Réanville\";\"main\"\n\"3010285\";\"La Chapelle-Reanville\";\"ascii\"\n\"3010285\";\"la Chapelle\";\"other\"\n\"3010312\";\"La Chapelle-Launay\";\"main\"\n\"3010312\";\"Chapel-ar-Wern\";\"other\"\n\"3010312\";\"La Chapelle\";\"other\"\n\"3010315\";\"La Chapelle-la-Reine\";\"main\"\n\"3010315\";\"Chapelle-la-Reine\";\"other\"\n\"3010315\";\"La Chapelle-Sainte-Genevieve\";\"other\"\n\"3010315\";\"La Chapelle-Sainte-Geneviève\";\"other\"\n\"3010315\";\"La Chapelle-l'Egalite\";\"other\"\n\"3010315\";\"La Chapelle-l'Egalité\";\"other\"\n\"3010316\";\"La Chapelle-Janson\";\"main\"\n\"3010316\";\"Chapel-Yent\";\"other\"\n\"3010321\";\"La Chapelle-Heulin\";\"main\"\n\"3010321\";\"Chapel-Huelin\";\"other\"\n\"3010332\";\"La Chapelle-Gauthier\";\"main\"\n\"3010332\";\"La Chapelle-en-Brie\";\"other\"\n\"3010344\";\"La Chapelle-en-Serval\";\"main\"\n\"3010344\";\"La Chapelle\";\"other\"\n\"3010344\";\"Pierre-la-Montagne\";\"other\"\n\"3010344\";\"Rameuse\";\"other\"\n\"3010351\";\"La Chapelle-du-Noyer\";\"main\"\n\"3010351\";\"La Chapelle\";\"other\"\n\"3010357\";\"La Chapelle-du-Genêt\";\"main\"\n\"3010357\";\"La Chapelle-du-Genet\";\"ascii\"\n\"3010357\";\"La Chapelle\";\"other\"\n\"3010368\";\"La Chapelle-des-Marais\";\"main\"\n\"3010368\";\"Chapel-ar-Geuniou\";\"other\"\n\"3010368\";\"Chapel-ar-Geunioù\";\"other\"\n\"3010368\";\"La Chapelle\";\"other\"\n\"3010368\";\"La Reunion\";\"other\"\n\"3010368\";\"La Réunion\";\"other\"\n\"3010369\";\"La Chapelle-des-Fougeretz\";\"main\"\n\"3010369\";\"Chapel-Felgeriz\";\"other\"\n\"3010369\";\"La Chapelle\";\"other\"\n\"3010371\";\"La Chapelle-de-la-Tour\";\"main\"\n\"3010371\";\"Chapelle-de-la-Tour\";\"other\"\n\"3010371\";\"Val-sur-Sonne\";\"other\"\n\"3010371\";\"la Chapelle\";\"other\"\n\"3010372\";\"La Chapelle-de-Guinchay\";\"main\"\n\"3010372\";\"La Chapelle\";\"other\"\n\"3010396\";\"La Chapelle-Basse-Mer\";\"main\"\n\"3010396\";\"Chapel-Baz-Meur\";\"other\"\n\"3010396\";\"La Chapelle\";\"other\"\n\"3010400\";\"Lachapelle-aux-Pots\";\"main\"\n\"3010400\";\"Lachapelle\";\"other\"\n\"3010414\";\"La Chapelle-Achard\";\"main\"\n\"3010414\";\"Belle-Chasse\";\"other\"\n\"3010460\";\"La Chambre\";\"main\"\n\"3010483\";\"La Chaize-le-Vicomte\";\"main\"\n\"3010483\";\"Basse-Chaize\";\"other\"\n\"3010483\";\"Haute-Chaize\";\"other\"\n\"3010483\";\"La Chaize\";\"other\"\n\"3010515\";\"La Cerlangue\";\"main\"\n\"3010523\";\"La Celle-sur-Morin\";\"main\"\n\"3010523\";\"La Celle\";\"other\"\n\"3010529\";\"La Celle-Saint-Cloud\";\"main\"\n\"3010529\";\"La Celle\";\"other\"\n\"3010529\";\"La Celle-les-Bruyeres\";\"other\"\n\"3010529\";\"La Celle-les-Bruyères\";\"other\"\n\"3010530\";\"La Celle-Saint-Avant\";\"main\"\n\"3010530\";\"La Celle\";\"other\"\n\"3010530\";\"La Selle-Avant\";\"other\"\n\"3010530\";\"Lasselle-Avant\";\"other\"\n\"3010541\";\"La Celle\";\"main\"\n\"3010558\";\"La Cavalerie\";\"main\"\n\"3010566\";\"Lacaune\";\"main\"\n\"3010580\";\"Lacasse\";\"main\"\n\"3010605\";\"Lacapelle-Marival\";\"main\"\n\"3010607\";\"La Capelle-lès-Boulogne\";\"main\"\n\"3010607\";\"La Capelle-les-Boulogne\";\"ascii\"\n\"3010607\";\"La Capelle\";\"other\"\n\"3010609\";\"La Capelle\";\"main\"\n\"3010609\";\"La Capelle-en-Thierache\";\"other\"\n\"3010609\";\"La Capelle-en-Thiérache\";\"other\"\n\"3010619\";\"La Canourgue\";\"main\"\n\"3010626\";\"Lacanau\";\"main\"\n\"3010626\";\"Lacanau-Medoc\";\"other\"\n\"3010626\";\"Lacanau-Médoc\";\"other\"\n\"3010626\";\"Lacanau-Ville\";\"other\"\n\"3010634\";\"La Calmette\";\"main\"\n\"3010685\";\"La Buisse\";\"main\"\n\"3010694\";\"Labry\";\"main\"\n\"3010720\";\"Labruguière\";\"main\"\n\"3010720\";\"Labruguiere\";\"ascii\"\n\"3010726\";\"La Bruffière\";\"main\"\n\"3010726\";\"La Bruffiere\";\"ascii\"\n\"3010726\";\"Brufer\";\"other\"\n\"3010778\";\"La Broque\";\"main\"\n\"3010791\";\"La Bridoire\";\"main\"\n\"3010815\";\"La Bresse\";\"main\"\n\"3010854\";\"La Boussac\";\"main\"\n\"3010854\";\"Labouseg\";\"other\"\n\"3010855\";\"Labourse\";\"main\"\n\"3010882\";\"La Bourboule\";\"main\"\n\"3010882\";\"Bourboule\";\"other\"\n\"3010905\";\"La Bouilladisse\";\"main\"\n\"3010908\";\"Labouheyre\";\"main\"\n\"3010911\";\"La Bouëxière\";\"main\"\n\"3010911\";\"La Bouexiere\";\"ascii\"\n\"3010911\";\"Beuzid-ar-C'hoadou\";\"other\"\n\"3010911\";\"Beuzid-ar-C'hoadoù\";\"other\"\n\"3010985\";\"Laboissière-en-Thelle\";\"main\"\n\"3010985\";\"Laboissiere-en-Thelle\";\"ascii\"\n\"3010985\";\"Laboissiere\";\"other\"\n\"3010985\";\"Laboissière\";\"other\"\n\"3010989\";\"La Boissière-des-Landes\";\"main\"\n\"3010989\";\"La Boissiere-des-Landes\";\"ascii\"\n\"3010989\";\"La Boissiere\";\"other\"\n\"3010989\";\"La Boissière\";\"other\"\n\"3010990\";\"La Boissière-de-Montaigu\";\"main\"\n\"3010990\";\"La Boissiere-de-Montaigu\";\"ascii\"\n\"3010990\";\"La Boissiere\";\"other\"\n\"3010990\";\"La Boissière\";\"other\"\n\"3011008\";\"La Boisse\";\"main\"\n\"3011010\";\"La Bohalle\";\"main\"\n\"3011021\";\"Lablachère\";\"main\"\n\"3011021\";\"Lablachere\";\"ascii\"\n\"3011031\";\"La Biolle\";\"main\"\n\"3011045\";\"Labeuvrière\";\"main\"\n\"3011045\";\"Labeuvriere\";\"ascii\"\n\"3011090\";\"La Bernerie-en-Retz\";\"main\"\n\"3011090\";\"Kerverner-Raez\";\"other\"\n\"3011090\";\"La Bernerie\";\"other\"\n\"3011093\";\"La Bernardière\";\"main\"\n\"3011093\";\"La Bernardiere\";\"ascii\"\n\"3011093\";\"Kervernarzh\";\"other\"\n\"3011123\";\"Labenne\";\"main\"\n\"3011150\";\"La Bégude-de-Mazenc\";\"main\"\n\"3011150\";\"La Begude-de-Mazenc\";\"ascii\"\n\"3011150\";\"Begude-de-Mazenc\";\"other\"\n\"3011150\";\"Bégude-de-Mazenc\";\"other\"\n\"3011150\";\"La Begude\";\"other\"\n\"3011150\";\"La Bégude\";\"other\"\n\"3011150\";\"Neuf-Mazenc\";\"other\"\n\"3011152\";\"Labégude\";\"main\"\n\"3011152\";\"Labegude\";\"ascii\"\n\"3011154\";\"Labège\";\"main\"\n\"3011154\";\"Labege\";\"ascii\"\n\"3011187\";\"La Bazoge\";\"main\"\n\"3011188\";\"La Bazoche-Gouet\";\"main\"\n\"3011188\";\"La Bazoche\";\"other\"\n\"3011209\";\"Labatut\";\"main\"\n\"3011218\";\"La Bâtie-Neuve\";\"main\"\n\"3011218\";\"La Batie-Neuve\";\"ascii\"\n\"3011220\";\"La Bâtie-Montgascon\";\"main\"\n\"3011220\";\"La Batie-Montgascon\";\"ascii\"\n\"3011220\";\"La Batie\";\"other\"\n\"3011220\";\"La Bâtie\";\"other\"\n\"3011234\";\"La Bâthie\";\"main\"\n\"3011234\";\"La Bathie\";\"ascii\"\n\"3011234\";\"Albine\";\"other\"\n\"3011245\";\"Labastidette\";\"main\"\n\"3011249\";\"Labastide-Saint-Sernin\";\"main\"\n\"3011249\";\"Labastide\";\"other\"\n\"3011250\";\"Labastide-Saint-Pierre\";\"main\"\n\"3011250\";\"Labastide\";\"other\"\n\"3011250\";\"Labastide-du-Tarn\";\"other\"\n\"3011251\";\"Labastide-Saint-Georges\";\"main\"\n\"3011251\";\"Labastide\";\"other\"\n\"3011252\";\"Labastide-Rouairoux\";\"main\"\n\"3011252\";\"Labasdite-Rouairoux\";\"other\"\n\"3011252\";\"Labastide\";\"other\"\n\"3011268\";\"La Bastide-des-Jourdans\";\"main\"\n\"3011268\";\"La Bastide\";\"other\"\n\"3011288\";\"Labastide-Beauvoir\";\"main\"\n\"3011288\";\"La Bastide-de-Beauvoir\";\"other\"\n\"3011288\";\"Labastide\";\"other\"\n\"3011307\";\"La Bassée\";\"main\"\n\"3011307\";\"La Bassee\";\"ascii\"\n\"3011312\";\"Labarthe-sur-Lèze\";\"main\"\n\"3011312\";\"Labarthe-sur-Leze\";\"ascii\"\n\"3011312\";\"Labarthe\";\"other\"\n\"3011313\";\"Labarthe-Rivière\";\"main\"\n\"3011313\";\"Labarthe-Riviere\";\"ascii\"\n\"3011313\";\"Labarthe\";\"other\"\n\"3011315\";\"La Barthe-de-Neste\";\"main\"\n\"3011315\";\"La Barthe\";\"other\"\n\"3011332\";\"La Barre-de-Monts\";\"main\"\n\"3011332\";\"La Barre\";\"other\"\n\"3011353\";\"Labaroche\";\"main\"\n\"3011353\";\"La Broche\";\"other\"\n\"3011386\";\"La Balme-de-Sillingy\";\"main\"\n\"3011386\";\"La Balme\";\"other\"\n\"3011402\";\"La Baconnière\";\"main\"\n\"3011402\";\"La Baconniere\";\"ascii\"\n\"3011402\";\"La Braconniere\";\"other\"\n\"3011402\";\"La Braconnière\";\"other\"\n\"3011418\";\"Kuntzig\";\"main\"\n\"3011419\";\"Kunheim\";\"main\"\n\"3011419\";\"Kuenheim\";\"other\"\n\"3011421\";\"Kruth\";\"main\"\n\"3011425\";\"Krautergersheim\";\"main\"\n\"3011437\";\"Kœnigsmacker\";\"main\"\n\"3011437\";\"Koenigsmacker\";\"ascii\"\n\"3011437\";\"Freimacker\";\"other\"\n\"3011437\";\"Koenigsmacher\";\"other\"\n\"3011440\";\"Knutange\";\"main\"\n\"3011455\";\"Kintzheim\";\"main\"\n\"3011456\";\"Kingersheim\";\"main\"\n\"3011458\";\"Kilstett\";\"main\"\n\"3011460\";\"Killem\";\"main\"\n\"3011467\";\"Keskastel\";\"main\"\n\"3011506\";\"Kervignac\";\"main\"\n\"3011506\";\"Kervignag\";\"other\"\n\"3011539\";\"Kertzfeld\";\"main\"\n\"3011539\";\"Kercfeld\";\"other\"\n\"3011539\";\"Керцфелд\";\"other\"\n\"3011563\";\"Kersaint-Plabennec\";\"main\"\n\"3011563\";\"Kersaint\";\"other\"\n\"3011563\";\"Kersent-Plabenneg\";\"other\"\n\"3011624\";\"Kernilis\";\"main\"\n\"3011624\";\"Kerniliz\";\"other\"\n\"3011686\";\"Kerlouan\";\"main\"\n\"3011920\";\"Kerbach\";\"main\"\n\"3011964\";\"Kembs\";\"main\"\n\"3011968\";\"Kédange-sur-Canner\";\"main\"\n\"3011968\";\"Kedange-sur-Canner\";\"ascii\"\n\"3011968\";\"Kedange\";\"other\"\n\"3011968\";\"Kedange-sur-Camer\";\"other\"\n\"3011968\";\"Kédange-sur-Camer\";\"other\"\n\"3011969\";\"Kaysersberg\";\"main\"\n\"3011969\";\"Kayserberg\";\"other\"\n\"3011969\";\"Mont-Libre\";\"other\"\n\"3011976\";\"Kaltenhouse\";\"main\"\n\"3011976\";\"Kaltenhausen\";\"other\"\n\"3011978\";\"Juziers\";\"main\"\n\"3011988\";\"Juvisy-sur-Orge\";\"main\"\n\"3011988\";\"Juvisy\";\"other\"\n\"3011996\";\"Juvigny-sous-Andaine\";\"main\"\n\"3011996\";\"Juvigny\";\"other\"\n\"3012003\";\"Juvigné\";\"main\"\n\"3012003\";\"Juvigne\";\"ascii\"\n\"3012004\";\"Juvignac\";\"main\"\n\"3012022\";\"Jussy\";\"main\"\n\"3012026\";\"Jussey\";\"main\"\n\"3012032\";\"Jussac\";\"main\"\n\"3012049\";\"Jurançon\";\"main\"\n\"3012049\";\"Jurancon\";\"ascii\"\n\"3012062\";\"Jumilhac-le-Grand\";\"main\"\n\"3012062\";\"Jumilhac\";\"other\"\n\"3012066\";\"Jumièges\";\"main\"\n\"3012066\";\"Jumieges\";\"ascii\"\n\"3012073\";\"Jumelles\";\"main\"\n\"3012085\";\"Jullouville\";\"main\"\n\"3012085\";\"Julloville\";\"other\"\n\"3012085\";\"Julouville-les-Pins\";\"other\"\n\"3012094\";\"Jujurieux\";\"main\"\n\"3012099\";\"Juilly\";\"main\"\n\"3012109\";\"Juillan\";\"main\"\n\"3012113\";\"Juillac\";\"main\"\n\"3012119\";\"Juigné-sur-Sarthe\";\"main\"\n\"3012119\";\"Juigne-sur-Sarthe\";\"ascii\"\n\"3012120\";\"Juigné-sur-Loire\";\"main\"\n\"3012120\";\"Juigne-sur-Loire\";\"ascii\"\n\"3012120\";\"Juigne\";\"other\"\n\"3012120\";\"Juigné\";\"other\"\n\"3012124\";\"Juigné\";\"main\"\n\"3012124\";\"Juigne\";\"ascii\"\n\"3012129\";\"Jugon-les-Lacs\";\"main\"\n\"3012148\";\"Joyeuse\";\"main\"\n\"3012155\";\"Jouy-sur-Morin\";\"main\"\n\"3012155\";\"Jouy\";\"other\"\n\"3012161\";\"Jouy-le-Potier\";\"main\"\n\"3012161\";\"Jouy\";\"other\"\n\"3012162\";\"Jouy-le-Moutier\";\"main\"\n\"3012162\";\"Jouy\";\"other\"\n\"3012163\";\"Jouy-le-Châtel\";\"main\"\n\"3012163\";\"Jouy-le-Chatel\";\"ascii\"\n\"3012163\";\"Jouy\";\"other\"\n\"3012165\";\"Jouy-en-Josas\";\"main\"\n\"3012165\";\"Jouy\";\"other\"\n\"3012165\";\"Jouy-le-Peuple\";\"other\"\n\"3012167\";\"Jouy-aux-Arches\";\"main\"\n\"3012167\";\"Jouy\";\"other\"\n\"3012170\";\"Jouy\";\"main\"\n\"3012174\";\"Joux-la-Ville\";\"main\"\n\"3012174\";\"Joux\";\"other\"\n\"3012200\";\"Jouques\";\"main\"\n\"3012211\";\"Jougne\";\"main\"\n\"3012216\";\"Jouet-sur-l'Aubois\";\"main\"\n\"3012216\";\"Jouet\";\"other\"\n\"3012217\";\"Joué-sur-Erdre\";\"main\"\n\"3012217\";\"Joue-sur-Erdre\";\"ascii\"\n\"3012217\";\"Joue\";\"other\"\n\"3012217\";\"Joué\";\"other\"\n\"3012217\";\"Yaoued\";\"other\"\n\"3012219\";\"Joué-lés-Tours\";\"main\"\n\"3012219\";\"Joue-les-Tours\";\"ascii\"\n\"3012219\";\"Joue\";\"other\"\n\"3012219\";\"Joué\";\"other\"\n\"3012219\";\"Joué-lès-Tours\";\"other\"\n\"3012219\";\"Zhu-le-Tur\";\"other\"\n\"3012219\";\"Жу-ле-Тур\";\"other\"\n\"3012227\";\"Joudreville\";\"main\"\n\"3012234\";\"Jouars-Pontchartrain\";\"main\"\n\"3012234\";\"Jouars\";\"other\"\n\"3012236\";\"Jouarre\";\"main\"\n\"3012248\";\"Josselin\";\"main\"\n\"3012248\";\"Josilin\";\"other\"\n\"3012262\";\"Jonzieux\";\"main\"\n\"3012266\";\"Jonzac\";\"main\"\n\"3012274\";\"Jons\";\"main\"\n\"3012275\";\"Jonquières-Saint-Vincent\";\"main\"\n\"3012275\";\"Jonquieres-Saint-Vincent\";\"ascii\"\n\"3012275\";\"Jonquieres\";\"other\"\n\"3012275\";\"Jonquières\";\"other\"\n\"3012275\";\"Vincent-du-Gard\";\"other\"\n\"3012277\";\"Jonquières\";\"main\"\n\"3012277\";\"Jonquieres\";\"ascii\"\n\"3012277\";\"Joncquieres\";\"other\"\n\"3012277\";\"Joncquières\";\"other\"\n\"3012282\";\"Jonquerettes\";\"main\"\n\"3012295\";\"Jonchery-sur-Vesle\";\"main\"\n\"3012295\";\"Jonchery\";\"other\"\n\"3012298\";\"Joncherey\";\"main\"\n\"3012303\";\"Jonage\";\"main\"\n\"3012313\";\"Joinville-le-Pont\";\"main\"\n\"3012313\";\"Joinville\";\"other\"\n\"3012313\";\"La Branche-du-Pont-de-Saint-Maur\";\"other\"\n\"3012315\";\"Joinville\";\"main\"\n\"3012315\";\"Joinville-en-Vallage\";\"other\"\n\"3012319\";\"Joigny\";\"main\"\n\"3012322\";\"Jœuf\";\"main\"\n\"3012322\";\"Joeuf\";\"ascii\"\n\"3012329\";\"Job\";\"main\"\n\"3012346\";\"Jeumont\";\"main\"\n\"3012361\";\"Jenlain\";\"main\"\n\"3012364\";\"Jegun\";\"main\"\n\"3012365\";\"Jebsheim\";\"main\"\n\"3012374\";\"Jeanménil\";\"main\"\n\"3012374\";\"Jeanmenil\";\"ascii\"\n\"3012399\";\"Javené\";\"main\"\n\"3012399\";\"Javene\";\"ascii\"\n\"3012399\";\"Yaoueneg\";\"other\"\n\"3012404\";\"Jaux\";\"main\"\n\"3012406\";\"Jausiers\";\"main\"\n\"3012417\";\"Jaunay-Clan\";\"main\"\n\"3012417\";\"Jaunay\";\"other\"\n\"3012431\";\"Jaujac\";\"main\"\n\"3012441\";\"Jasseron\";\"main\"\n\"3012444\";\"Jassans-Riottier\";\"main\"\n\"3012444\";\"Jassans\";\"other\"\n\"3012447\";\"Jarzé\";\"main\"\n\"3012447\";\"Jarze\";\"ascii\"\n\"3012447\";\"Jarze-Marat\";\"other\"\n\"3012447\";\"Jarzé-Marat\";\"other\"\n\"3012449\";\"Jarville-la-Malgrange\";\"main\"\n\"3012449\";\"Jarville\";\"other\"\n\"3012465\";\"Jarrie\";\"main\"\n\"3012467\";\"Jarny\";\"main\"\n\"3012477\";\"Jarnac\";\"main\"\n\"3012483\";\"Jargeau\";\"main\"\n\"3012483\";\"ya er ruo\";\"other\"\n\"3012483\";\"雅尔若\";\"other\"\n\"3012484\";\"Jard-sur-Mer\";\"main\"\n\"3012484\";\"Jard\";\"other\"\n\"3012484\";\"Jard-la-Montagne\";\"other\"\n\"3012487\";\"Jardin\";\"main\"\n\"3012495\";\"Janzé\";\"main\"\n\"3012495\";\"Janze\";\"ascii\"\n\"3012495\";\"Gentieg\";\"other\"\n\"3012499\";\"Janville-sur-Juine\";\"main\"\n\"3012499\";\"Janville\";\"other\"\n\"3012502\";\"Janville\";\"main\"\n\"3012506\";\"Jans\";\"main\"\n\"3012506\";\"Hentieg\";\"other\"\n\"3012508\";\"Janneyrias\";\"main\"\n\"3012549\";\"Jallais\";\"main\"\n\"3012576\";\"Jacou\";\"main\"\n\"3012577\";\"Jacob-Bellecombette\";\"main\"\n\"3012577\";\"Jacob\";\"other\"\n\"3012593\";\"Izon\";\"main\"\n\"3012604\";\"Izernore\";\"main\"\n\"3012611\";\"Izeaux\";\"main\"\n\"3012611\";\"Izeaux-aux Bois\";\"other\"\n\"3012620\";\"Iwuy\";\"main\"\n\"3012621\";\"Ivry-sur-Seine\";\"main\"\n\"3012621\";\"Ivri-sjur-Sen\";\"other\"\n\"3012621\";\"Ivry\";\"other\"\n\"3012621\";\"Ivry sobre Sena\";\"other\"\n\"3012621\";\"ivuri=shuru=senu\";\"other\"\n\"3012621\";\"Иври-сюр-Сен\";\"other\"\n\"3012621\";\"イヴリー＝シュル＝セーヌ\";\"other\"\n\"3012623\";\"Ivry-la-Bataille\";\"main\"\n\"3012623\";\"Ivry\";\"other\"\n\"3012623\";\"Ivry-la-Hauteur\";\"other\"\n\"3012623\";\"ivuri=ra=bataiyu\";\"other\"\n\"3012623\";\"イヴリー＝ラ＝バタイユ\";\"other\"\n\"3012636\";\"Itxassou\";\"main\"\n\"3012636\";\"Itsasu\";\"other\"\n\"3012636\";\"Union\";\"other\"\n\"3012638\";\"Itteville\";\"main\"\n\"3012640\";\"Ittenheim\";\"main\"\n\"3012643\";\"Iteuil\";\"main\"\n\"3012644\";\"Itancourt\";\"main\"\n\"3012647\";\"Istres\";\"main\"\n\"3012647\";\"Istra\";\"other\"\n\"3012647\";\"Istre\";\"other\"\n\"3012647\";\"isutoru\";\"other\"\n\"3012647\";\"Истра\";\"other\"\n\"3012647\";\"イストル\";\"other\"\n\"3012649\";\"Issy-les-Moulineaux\";\"main\"\n\"3012649\";\"Issi-le-Mulino\";\"other\"\n\"3012649\";\"Issy\";\"other\"\n\"3012649\";\"Issy-les-Moulineau\";\"other\"\n\"3012649\";\"L'Union\";\"other\"\n\"3012649\";\"Исси-ле-Мулино\";\"other\"\n\"3012652\";\"Is-sur-Tille\";\"main\"\n\"3012652\";\"Is\";\"other\"\n\"3012655\";\"Issoudun\";\"main\"\n\"3012655\";\"Essaudun\";\"other\"\n\"3012655\";\"Uxellodunum\";\"other\"\n\"3012656\";\"Issou\";\"main\"\n\"3012664\";\"Issoire\";\"main\"\n\"3012671\";\"Issenheim\";\"main\"\n\"3012671\";\"Isenheim\";\"other\"\n\"3012676\";\"Issé\";\"main\"\n\"3012676\";\"Isse\";\"ascii\"\n\"3012676\";\"Izeg\";\"other\"\n\"3012688\";\"Isques\";\"main\"\n\"3012698\";\"Isneauville\";\"main\"\n\"3012709\";\"Isle\";\"main\"\n\"3012712\";\"Isigny-sur-Mer\";\"main\"\n\"3012712\";\"Isigny\";\"other\"\n\"3012713\";\"Isigny-le-Buat\";\"main\"\n\"3012713\";\"Isigny\";\"other\"\n\"3012725\";\"Isbergues\";\"main\"\n\"3012732\";\"Irvillac\";\"main\"\n\"3012732\";\"Irvilhag\";\"other\"\n\"3012738\";\"Irodouër\";\"main\"\n\"3012738\";\"Irodouer\";\"ascii\"\n\"3012739\";\"Irmstett\";\"main\"\n\"3012742\";\"Irigny\";\"main\"\n\"3012742\";\"L'Union-sur-Rhone\";\"other\"\n\"3012742\";\"L'Union-sur-Rhône\";\"other\"\n\"3012773\";\"Innenheim\";\"main\"\n\"3012777\";\"Ingwiller\";\"main\"\n\"3012777\";\"Ingeweiler\";\"other\"\n\"3012777\";\"Ingweiler\";\"other\"\n\"3012778\";\"Inguiniel\";\"main\"\n\"3012778\";\"An Ignel\";\"other\"\n\"3012780\";\"Ingré\";\"main\"\n\"3012780\";\"Ingre\";\"ascii\"\n\"3012783\";\"Ingrandes\";\"main\"\n\"3012783\";\"Ingrandes-sur-Loire\";\"other\"\n\"3012790\";\"Ingersheim\";\"main\"\n\"3012814\";\"Incheville\";\"main\"\n\"3012821\";\"Imphy\";\"main\"\n\"3012829\";\"Illzach\";\"main\"\n\"3012834\";\"Illkirch-Graffenstaden\";\"main\"\n\"3012834\";\"Illkirch\";\"other\"\n\"3012837\";\"Illies\";\"main\"\n\"3012845\";\"Illfurth\";\"main\"\n\"3012848\";\"Ille-sur-Têt\";\"main\"\n\"3012848\";\"Ille-sur-Tet\";\"ascii\"\n\"3012848\";\"Illa\";\"other\"\n\"3012848\";\"Ille\";\"other\"\n\"3012848\";\"Ille-sur-la-Tet\";\"other\"\n\"3012851\";\"Illats\";\"main\"\n\"3012854\";\"Illange\";\"main\"\n\"3012885\";\"Igoville\";\"main\"\n\"3012887\";\"Igon\";\"main\"\n\"3012889\";\"Igny\";\"main\"\n\"3012894\";\"Igney\";\"main\"\n\"3012903\";\"Ifs\";\"main\"\n\"3012905\";\"Iffendic\";\"main\"\n\"3012905\";\"Ilfentig\";\"other\"\n\"3012912\";\"Idron\";\"main\"\n\"3012921\";\"Ibos\";\"main\"\n\"3012937\";\"Hyères\";\"main\"\n\"3012937\";\"Hyeres\";\"ascii\"\n\"3012937\";\"Hyerès\";\"other\"\n\"3012937\";\"Ier\";\"other\"\n\"3012937\";\"Иер\";\"other\"\n\"3012949\";\"Huttenheim\";\"main\"\n\"3012953\";\"Hussigny-Godbrange\";\"main\"\n\"3012953\";\"Hussigny\";\"other\"\n\"3012954\";\"Husseren-Wesserling\";\"main\"\n\"3012954\";\"Husseren\";\"other\"\n\"3012954\";\"Hüsseren\";\"other\"\n\"3012961\";\"Hurigny\";\"main\"\n\"3012962\";\"Huriel\";\"main\"\n\"3012979\";\"Huningue\";\"main\"\n\"3012983\";\"Hundling\";\"main\"\n\"3013001\";\"Hulluch\";\"main\"\n\"3013006\";\"Huisseau-sur-Mauves\";\"main\"\n\"3013006\";\"Huisseau-sur-Mauve\";\"other\"\n\"3013007\";\"Huisseau-sur-Cosson\";\"main\"\n\"3013007\";\"Huisseau\";\"other\"\n\"3013007\";\"Huisseaux-sur-Cosson\";\"other\"\n\"3013011\";\"Huismes\";\"main\"\n\"3013022\";\"Huez\";\"main\"\n\"3013022\";\"L'Huez\";\"other\"\n\"3013026\";\"Huelgoat\";\"main\"\n\"3013026\";\"An Uhelgoad\";\"other\"\n\"3013044\";\"Hoymille\";\"main\"\n\"3013058\";\"Houssen\";\"main\"\n\"3013069\";\"Hourtin\";\"main\"\n\"3013080\";\"Houppeville\";\"main\"\n\"3013082\";\"Houplines\";\"main\"\n\"3013083\";\"Houplin-Ancoisne\";\"main\"\n\"3013083\";\"Houplin\";\"other\"\n\"3013091\";\"Houlgate\";\"main\"\n\"3013096\";\"Houlbec-Cocherel\";\"main\"\n\"3013096\";\"Houlbec\";\"other\"\n\"3013097\";\"Houilles\";\"main\"\n\"3013115\";\"Houdemont\";\"main\"\n\"3013115\";\"Hondimont\";\"other\"\n\"3013120\";\"Houdan\";\"main\"\n\"3013122\";\"Houdain\";\"main\"\n\"3013151\";\"Hornoy-le-Bourg\";\"main\"\n\"3013152\";\"Hornaing\";\"main\"\n\"3013153\";\"Horgues\";\"main\"\n\"3013154\";\"Hordain\";\"main\"\n\"3013155\";\"Horbourg-Wihr\";\"main\"\n\"3013173\";\"Honfleur\";\"main\"\n\"3013173\";\"Onfljor\";\"other\"\n\"3013173\";\"onfururu\";\"other\"\n\"3013173\";\"Онфлёр\";\"other\"\n\"3013173\";\"オンフルール\";\"other\"\n\"3013174\";\"Hondschoote\";\"main\"\n\"3013195\";\"Homécourt\";\"main\"\n\"3013195\";\"Homecourt\";\"ascii\"\n\"3013196\";\"Hombourg-Haut\";\"main\"\n\"3013196\";\"Hombourg-l'Eveque\";\"other\"\n\"3013196\";\"Hombourg-l'Évéque\";\"other\"\n\"3013196\";\"Hombourg-le-Haut\";\"other\"\n\"3013200\";\"Homblières\";\"main\"\n\"3013200\";\"Homblieres\";\"ascii\"\n\"3013201\";\"Hombleux\";\"main\"\n\"3013204\";\"Holving\";\"main\"\n\"3013204\";\"Holvingen\";\"other\"\n\"3013205\";\"Holtzwihr\";\"main\"\n\"3013206\";\"Holtzheim\";\"main\"\n\"3013208\";\"Holnon\";\"main\"\n\"3013225\";\"Hœrdt\";\"main\"\n\"3013225\";\"Hoerdt\";\"ascii\"\n\"3013226\";\"Hœnheim\";\"main\"\n\"3013226\";\"Hoenheim\";\"ascii\"\n\"3013248\";\"Hochstatt\";\"main\"\n\"3013249\";\"Hochfelden\";\"main\"\n\"3013255\";\"Hirtzfelden\";\"main\"\n\"3013255\";\"Hirzfelden\";\"other\"\n\"3013257\";\"Hirtzbach\";\"main\"\n\"3013258\";\"Hirson\";\"main\"\n\"3013259\";\"Hirsingue\";\"main\"\n\"3013259\";\"Hirsingen\";\"other\"\n\"3013263\";\"Hirel\";\"main\"\n\"3013268\";\"Hinx\";\"main\"\n\"3013273\";\"Hinges\";\"main\"\n\"3013275\";\"Hindisheim\";\"main\"\n\"3013282\";\"Hilsenheim\";\"main\"\n\"3013283\";\"Hillion\";\"main\"\n\"3013283\";\"Hilion\";\"other\"\n\"3013294\";\"Hiersac\";\"main\"\n\"3013297\";\"Hières-sur-Amby\";\"main\"\n\"3013297\";\"Hieres-sur-Amby\";\"ascii\"\n\"3013297\";\"Hieres\";\"other\"\n\"3013297\";\"Hières\";\"other\"\n\"3013305\";\"Heyrieux\";\"main\"\n\"3013321\";\"Heuringhem\";\"main\"\n\"3013334\";\"Heugas\";\"main\"\n\"3013336\";\"Heudreville-sur-Eure\";\"main\"\n\"3013336\";\"Heudreville\";\"other\"\n\"3013350\";\"Hettange-Grande\";\"main\"\n\"3013350\";\"Hettange-la-Grande\";\"other\"\n\"3013361\";\"Hésingue\";\"main\"\n\"3013361\";\"Hesingue\";\"ascii\"\n\"3013361\";\"Hesingen\";\"other\"\n\"3013365\";\"Hesdin\";\"main\"\n\"3013370\";\"Herzeele\";\"main\"\n\"3013373\";\"Héry\";\"main\"\n\"3013373\";\"Hery\";\"ascii\"\n\"3013380\";\"Hersin-Coupigny\";\"main\"\n\"3013380\";\"Hersin\";\"other\"\n\"3013381\";\"Herserange\";\"main\"\n\"3013385\";\"Herry\";\"main\"\n\"3013386\";\"Herrlisheim-près-Colmar\";\"main\"\n\"3013386\";\"Herrlisheim-pres-Colmar\";\"ascii\"\n\"3013386\";\"Herrlisheim\";\"other\"\n\"3013387\";\"Herrlisheim\";\"main\"\n\"3013387\";\"Herrlisheim-pres-Colmar\";\"other\"\n\"3013387\";\"Herrlisheim-près-Colmar\";\"other\"\n\"3013402\";\"Hérouvillette\";\"main\"\n\"3013402\";\"Herouvillette\";\"ascii\"\n\"3013403\";\"Hérouville-Saint-Clair\";\"main\"\n\"3013403\";\"Herouville-Saint-Clair\";\"ascii\"\n\"3013403\";\"Ehruvil'-Sen-Kler\";\"other\"\n\"3013403\";\"Herouville\";\"other\"\n\"3013403\";\"Herouville Saint-Clair\";\"other\"\n\"3013403\";\"Hérouville\";\"other\"\n\"3013403\";\"Hérouville Saint-Clair\";\"other\"\n\"3013403\";\"Эрувиль-Сен-Клер\";\"other\"\n\"3013410\";\"Hermonville\";\"main\"\n\"3013416\";\"Hermies\";\"main\"\n\"3013424\";\"Hermes\";\"main\"\n\"3013433\";\"Hermanville-sur-Mer\";\"main\"\n\"3013433\";\"Hermanville\";\"other\"\n\"3013442\";\"Herlies\";\"main\"\n\"3013447\";\"Hérin\";\"main\"\n\"3013447\";\"Herin\";\"ascii\"\n\"3013448\";\"Hérimoncourt\";\"main\"\n\"3013448\";\"Herimoncourt\";\"ascii\"\n\"3013452\";\"Héricy\";\"main\"\n\"3013452\";\"Hericy\";\"ascii\"\n\"3013452\";\"Hericy-sur Seine\";\"other\"\n\"3013452\";\"Héricy-sur Seine\";\"other\"\n\"3013456\";\"Héricourt\";\"main\"\n\"3013456\";\"Hericourt\";\"ascii\"\n\"3013457\";\"Héric\";\"main\"\n\"3013457\";\"Heric\";\"ascii\"\n\"3013457\";\"Hierig\";\"other\"\n\"3013459\";\"Hergnies\";\"main\"\n\"3013459\";\"Hergines\";\"other\"\n\"3013462\";\"Hérépian\";\"main\"\n\"3013462\";\"Herepian\";\"ascii\"\n\"3013477\";\"Herblay\";\"main\"\n\"3013478\";\"Herbitzheim\";\"main\"\n\"3013484\";\"Herbignac\";\"main\"\n\"3013484\";\"Erbigneg\";\"other\"\n\"3013486\";\"Herbeys\";\"main\"\n\"3013486\";\"Herbey\";\"other\"\n\"3013496\";\"Herbault\";\"main\"\n\"3013504\";\"Henvic\";\"main\"\n\"3013504\";\"Henvig\";\"other\"\n\"3013510\";\"Henrichemont\";\"main\"\n\"3013510\";\"Henrichement\";\"other\"\n\"3013512\";\"Hénouville\";\"main\"\n\"3013512\";\"Henouville\";\"ascii\"\n\"3013514\";\"Hénon\";\"main\"\n\"3013514\";\"Henon\";\"ascii\"\n\"3013521\";\"Hennebont\";\"main\"\n\"3013521\";\"Henbont\";\"other\"\n\"3013525\";\"Hénin-Beaumont\";\"main\"\n\"3013525\";\"Henin-Beaumont\";\"ascii\"\n\"3013525\";\"Ehnen-Bomon\";\"other\"\n\"3013525\";\"Henin-Lietard\";\"other\"\n\"3013525\";\"Hénin-Liétard\";\"other\"\n\"3013525\";\"L'Humanite\";\"other\"\n\"3013525\";\"L'Humanité\";\"other\"\n\"3013525\";\"Энен-Бомон\";\"other\"\n\"3013534\";\"Hendaye\";\"main\"\n\"3013534\";\"Hendaia\";\"other\"\n\"3013534\";\"Hendaya\";\"other\"\n\"3013536\";\"Hénanbihen\";\"main\"\n\"3013536\";\"Henanbihen\";\"ascii\"\n\"3013536\";\"Henant-Bihan\";\"other\"\n\"3013549\";\"Hem\";\"main\"\n\"3013569\";\"Helfaut\";\"main\"\n\"3013569\";\"Helfaut-Bliques\";\"other\"\n\"3013571\";\"Hélesmes\";\"main\"\n\"3013571\";\"Helesmes\";\"ascii\"\n\"3013578\";\"Heimsbrunn\";\"main\"\n\"3013585\";\"Heillecourt\";\"main\"\n\"3013592\";\"Hégenheim\";\"main\"\n\"3013592\";\"Hegenheim\";\"ascii\"\n\"3013596\";\"Hédé\";\"main\"\n\"3013596\";\"Hede\";\"ascii\"\n\"3013596\";\"Hazhou\";\"other\"\n\"3013596\";\"Hazhoù\";\"other\"\n\"3013619\";\"Hazebrouck\";\"main\"\n\"3013619\";\"Azebruk\";\"other\"\n\"3013619\";\"Hazebroek\";\"other\"\n\"3013619\";\"Oazebroek\";\"other\"\n\"3013619\";\"Азебрук\";\"other\"\n\"3013626\";\"Haybes\";\"main\"\n\"3013626\";\"Haybes-sur-Meuse\";\"other\"\n\"3013627\";\"Hayange\";\"main\"\n\"3013627\";\"Hyange\";\"other\"\n\"3013635\";\"Haverskerque\";\"main\"\n\"3013637\";\"Haveluy\";\"main\"\n\"3013644\";\"Hauville\";\"main\"\n\"3013673\";\"Hautot-sur-Mer\";\"main\"\n\"3013673\";\"Hautot\";\"other\"\n\"3013681\";\"Hautmont\";\"main\"\n\"3013701\";\"Yutz\";\"main\"\n\"3013701\";\"Yutz Haute\";\"other\"\n\"3013705\";\"Hauteville-Lompnes\";\"main\"\n\"3013705\";\"Hauteville\";\"other\"\n\"3013706\";\"Hauteville-lès-Dijon\";\"main\"\n\"3013706\";\"Hauteville-les-Dijon\";\"ascii\"\n\"3013706\";\"Hauteville\";\"other\"\n\"3013741\";\"Haute-Rivoire\";\"main\"\n\"3013742\";\"Hauterives\";\"main\"\n\"3013748\";\"Hauterive\";\"main\"\n\"3013766\";\"Haute-Goulaine\";\"main\"\n\"3013766\";\"Gorre-Goulen\";\"other\"\n\"3013769\";\"Hautefort\";\"main\"\n\"3013769\";\"Aignan-Haute-Vue\";\"other\"\n\"3013830\";\"Haussy\";\"main\"\n\"3013845\";\"Haulchin\";\"main\"\n\"3013855\";\"Haucourt-Moulaine\";\"main\"\n\"3013855\";\"Haucourt\";\"other\"\n\"3013862\";\"Haubourdin\";\"main\"\n\"3013875\";\"Haspres\";\"main\"\n\"3013877\";\"Hasparren\";\"main\"\n\"3013877\";\"Hazparne\";\"other\"\n\"3013878\";\"Hasnon\";\"main\"\n\"3013908\";\"Harnes\";\"main\"\n\"3013911\";\"Harly\";\"main\"\n\"3013921\";\"Hargarten-aux-Mines\";\"main\"\n\"3013921\";\"Hargarten\";\"other\"\n\"3013922\";\"Harfleur\";\"main\"\n\"3013922\";\"Port de Harfleur\";\"other\"\n\"3013926\";\"Hardricourt\";\"main\"\n\"3013935\";\"Hardinghen\";\"main\"\n\"3013955\";\"Harbonnières\";\"main\"\n\"3013955\";\"Harbonnieres\";\"ascii\"\n\"3013971\";\"Hanvec\";\"main\"\n\"3013971\";\"Hanveg\";\"other\"\n\"3013971\";\"Hañveg\";\"other\"\n\"3013994\";\"Hangenbieten\";\"main\"\n\"3014001\";\"Hanches\";\"main\"\n\"3014006\";\"Ham-sous-Varsberg\";\"main\"\n\"3014006\";\"Ham\";\"other\"\n\"3014014\";\"Hames-Boucres\";\"main\"\n\"3014014\";\"Hames\";\"other\"\n\"3014023\";\"Hambye\";\"main\"\n\"3014026\";\"Hambach\";\"main\"\n\"3014029\";\"Ham\";\"main\"\n\"3014029\";\"Sparte\";\"other\"\n\"3014034\";\"Halluin\";\"main\"\n\"3014044\";\"Hallines\";\"main\"\n\"3014049\";\"Hallennes-lez-Haubourdin\";\"main\"\n\"3014049\";\"Hallennes\";\"other\"\n\"3014050\";\"Hallencourt\";\"main\"\n\"3014060\";\"Haisnes\";\"main\"\n\"3014060\";\"Haisnes-lez la Bassee\";\"other\"\n\"3014060\";\"Haisnes-lez la Bassée\";\"other\"\n\"3014067\";\"Haillicourt\";\"main\"\n\"3014078\";\"Haguenau\";\"main\"\n\"3014078\";\"Agenu\";\"other\"\n\"3014078\";\"Agijeno\";\"other\"\n\"3014078\";\"Hagenau\";\"other\"\n\"3014078\";\"Khaguenau\";\"other\"\n\"3014078\";\"Агену\";\"other\"\n\"3014078\";\"Агијено\";\"other\"\n\"3014078\";\"Хагуенау\";\"other\"\n\"3014080\";\"Hagondange\";\"main\"\n\"3014084\";\"Hagetmau\";\"main\"\n\"3014088\";\"Hagenthal-le-Bas\";\"main\"\n\"3014096\";\"Hadol\";\"main\"\n\"3014103\";\"Habsheim\";\"main\"\n\"3014114\";\"Habas\";\"main\"\n\"3014128\";\"Gy\";\"main\"\n\"3014143\";\"Guyancourt\";\"main\"\n\"3014155\";\"Gurgy\";\"main\"\n\"3014167\";\"Gundershoffen\";\"main\"\n\"3014173\";\"Gumbrechtshoffen\";\"main\"\n\"3014173\";\"Niederbronn\";\"other\"\n\"3014175\";\"Gujan-Mestras\";\"main\"\n\"3014175\";\"Gujan\";\"other\"\n\"3014175\";\"Gujan-et-Mestras\";\"other\"\n\"3014185\";\"Guîtres\";\"main\"\n\"3014185\";\"Guitres\";\"ascii\"\n\"3014192\";\"Guissény\";\"main\"\n\"3014192\";\"Guisseny\";\"ascii\"\n\"3014192\";\"Gwiseni\";\"other\"\n\"3014195\";\"Guise\";\"main\"\n\"3014195\";\"Beaupre\";\"other\"\n\"3014195\";\"Beaupré\";\"other\"\n\"3014195\";\"Giz\";\"other\"\n\"3014195\";\"Guisa\";\"other\"\n\"3014195\";\"Reunion-sur-Oise\";\"other\"\n\"3014195\";\"Réunion-sur-Oise\";\"other\"\n\"3014195\";\"ji si\";\"other\"\n\"3014195\";\"Гиз\";\"other\"\n\"3014195\";\"吉斯\";\"other\"\n\"3014196\";\"Guiscriff\";\"main\"\n\"3014196\";\"Guiseriff\";\"other\"\n\"3014196\";\"Gwiskri\";\"other\"\n\"3014197\";\"Guiscard\";\"main\"\n\"3014208\";\"Guipry\";\"main\"\n\"3014208\";\"Gwipri\";\"other\"\n\"3014212\";\"Guipel\";\"main\"\n\"3014212\";\"Gwipedel\";\"other\"\n\"3014213\";\"Guipavas\";\"main\"\n\"3014213\";\"Gwipavaz\";\"other\"\n\"3014221\";\"Guingamp\";\"main\"\n\"3014221\";\"Gwengamp\";\"other\"\n\"3014224\";\"Guînes\";\"main\"\n\"3014224\";\"Guines\";\"ascii\"\n\"3014224\";\"Guines-en-Calaisis\";\"other\"\n\"3014224\";\"Guînes-en-Calaisis\";\"other\"\n\"3014239\";\"Guilvinec\";\"main\"\n\"3014239\";\"Ar Gelveneg\";\"other\"\n\"3014239\";\"Le Guilvinec\";\"other\"\n\"3014255\";\"Guilliers\";\"main\"\n\"3014255\";\"Gwiler-Porc'hoed\";\"other\"\n\"3014258\";\"Guillestre\";\"main\"\n\"3014274\";\"Guillac\";\"main\"\n\"3014274\";\"Gilieg\";\"other\"\n\"3014277\";\"Guilherand-Granges\";\"main\"\n\"3014280\";\"Guilers\";\"main\"\n\"3014280\";\"Gwiler-Leon\";\"other\"\n\"3014289\";\"Guignicourt\";\"main\"\n\"3014292\";\"Guignes\";\"main\"\n\"3014292\";\"Guignes-Libre\";\"other\"\n\"3014292\";\"Guignes-Rabutin\";\"other\"\n\"3014294\";\"Guignen\";\"main\"\n\"3014294\";\"Gwinien\";\"other\"\n\"3014304\";\"Guiclan\";\"main\"\n\"3014304\";\"Gwiglann\";\"other\"\n\"3014305\";\"Guichen\";\"main\"\n\"3014305\";\"Gwizien\";\"other\"\n\"3014327\";\"Guewenheim\";\"main\"\n\"3014330\";\"Gueux\";\"main\"\n\"3014334\";\"Gueugnon\";\"main\"\n\"3014340\";\"Guéthary\";\"main\"\n\"3014340\";\"Guethary\";\"ascii\"\n\"3014340\";\"Getaria\";\"other\"\n\"3014346\";\"Guesnain\";\"main\"\n\"3014351\";\"Guerville\";\"main\"\n\"3014365\";\"Guern\";\"main\"\n\"3014365\";\"Gwern\";\"other\"\n\"3014367\";\"Guermantes\";\"main\"\n\"3014369\";\"Guerlesquin\";\"main\"\n\"3014369\";\"Gwerliskin\";\"other\"\n\"3014377\";\"Guérigny\";\"main\"\n\"3014377\";\"Guerigny\";\"ascii\"\n\"3014383\";\"Guéret\";\"main\"\n\"3014383\";\"Gueret\";\"ascii\"\n\"3014384\";\"Guéreins\";\"main\"\n\"3014384\";\"Guereins\";\"ascii\"\n\"3014391\";\"Guérard\";\"main\"\n\"3014391\";\"Guerard\";\"ascii\"\n\"3014392\";\"Guérande\";\"main\"\n\"3014392\";\"Guerande\";\"ascii\"\n\"3014392\";\"Gwenrann\";\"other\"\n\"3014393\";\"Guer\";\"main\"\n\"3014393\";\"Gwern-Porc'hoed\";\"other\"\n\"3014398\";\"Guenrouet\";\"main\"\n\"3014398\";\"Gwenred\";\"other\"\n\"3014402\";\"Guénin\";\"main\"\n\"3014402\";\"Guenin\";\"ascii\"\n\"3014402\";\"Gwennin\";\"other\"\n\"3014403\";\"Guengat\";\"main\"\n\"3014403\";\"Gwengad\";\"other\"\n\"3014407\";\"Guénange\";\"main\"\n\"3014407\";\"Guenange\";\"ascii\"\n\"3014412\";\"Guémené-sur-Scorff\";\"main\"\n\"3014412\";\"Guemene-sur-Scorff\";\"ascii\"\n\"3014412\";\"Ar Gemene\";\"other\"\n\"3014412\";\"Guemene\";\"other\"\n\"3014412\";\"Guémene\";\"other\"\n\"3014413\";\"Guémené-Penfao\";\"main\"\n\"3014413\";\"Guemene-Penfao\";\"ascii\"\n\"3014413\";\"Guemene\";\"other\"\n\"3014413\";\"Guemene-Pentao\";\"other\"\n\"3014413\";\"Guéméne\";\"other\"\n\"3014413\";\"Guéméné-Pentao\";\"other\"\n\"3014413\";\"Gwenvenez-Penfaou\";\"other\"\n\"3014415\";\"Guémar\";\"main\"\n\"3014415\";\"Guemar\";\"ascii\"\n\"3014415\";\"Guemer\";\"other\"\n\"3014421\";\"Guégon\";\"main\"\n\"3014421\";\"Guegon\";\"ascii\"\n\"3014421\";\"Gwegon\";\"other\"\n\"3014430\";\"Guécélard\";\"main\"\n\"3014430\";\"Guecelard\";\"ascii\"\n\"3014433\";\"Guebwiller\";\"main\"\n\"3014433\";\"Gebweiler\";\"other\"\n\"3014450\";\"Guarbecque\";\"main\"\n\"3014466\";\"Gruson\";\"main\"\n\"3014477\";\"Gruissan\";\"main\"\n\"3014481\";\"Gruffy\";\"main\"\n\"3014490\";\"Gruchet-le-Valasse\";\"main\"\n\"3014490\";\"Gruchet\";\"other\"\n\"3014490\";\"Gruchet-le-Valass\";\"other\"\n\"3014517\";\"Grosseto-Prugna\";\"main\"\n\"3014517\";\"Grosseto\";\"other\"\n\"3014527\";\"Gros-Réderching\";\"main\"\n\"3014527\";\"Gros-Rederching\";\"ascii\"\n\"3014527\";\"Gross Rederchingen\";\"other\"\n\"3014527\";\"Gross Réderchingen\";\"other\"\n\"3014540\";\"Groslay\";\"main\"\n\"3014549\";\"Grosbreuil\";\"main\"\n\"3014560\";\"Grosbliederstroff\";\"main\"\n\"3014560\";\"Gross-Blittersdorf\";\"other\"\n\"3014560\";\"Grossbliederstroff\";\"other\"\n\"3014574\";\"Gron\";\"main\"\n\"3014579\";\"Groix\";\"main\"\n\"3014579\";\"Enez-Groe\";\"other\"\n\"3014580\";\"Groisy\";\"main\"\n\"3014581\";\"Groissiat\";\"main\"\n\"3014587\";\"Groffliers\";\"main\"\n\"3014600\";\"Grisy-Suisnes\";\"main\"\n\"3014600\";\"Grisy\";\"other\"\n\"3014606\";\"Grisolles\";\"main\"\n\"3014634\";\"Grimaud\";\"main\"\n\"3014634\";\"Athenople\";\"other\"\n\"3014634\";\"Athènople\";\"other\"\n\"3014634\";\"Athénople\";\"other\"\n\"3014634\";\"Port Grimaud\";\"other\"\n\"3014640\";\"Grillon\";\"main\"\n\"3014646\";\"Grigny\";\"main\"\n\"3014647\";\"Grigny\";\"main\"\n\"3014655\";\"Grignon\";\"main\"\n\"3014655\";\"Brumaire\";\"other\"\n\"3014657\";\"Grignols\";\"main\"\n\"3014661\";\"Grignan\";\"main\"\n\"3014663\";\"Griesheim-près-Molsheim\";\"main\"\n\"3014663\";\"Griesheim-pres-Molsheim\";\"ascii\"\n\"3014663\";\"Griesheim\";\"other\"\n\"3014667\";\"Gries\";\"main\"\n\"3014668\";\"Grièges\";\"main\"\n\"3014668\";\"Grieges\";\"ascii\"\n\"3014671\";\"Grez-sur-Loing\";\"main\"\n\"3014671\";\"Grez\";\"other\"\n\"3014672\";\"Grez-Neuville\";\"main\"\n\"3014672\";\"Grez\";\"other\"\n\"3014676\";\"Grézieu-la-Varenne\";\"main\"\n\"3014676\";\"Grezieu-la-Varenne\";\"ascii\"\n\"3014676\";\"Grezieu\";\"other\"\n\"3014676\";\"Grezieu-et-Craponne\";\"other\"\n\"3014676\";\"Grézieu\";\"other\"\n\"3014676\";\"Grézieu-et-Craponne\";\"other\"\n\"3014697\";\"Gretz-Armainvilliers\";\"main\"\n\"3014697\";\"Gretz\";\"other\"\n\"3014698\";\"Grésy-sur-Isère\";\"main\"\n\"3014698\";\"Gresy-sur-Isere\";\"ascii\"\n\"3014698\";\"Gresy\";\"other\"\n\"3014698\";\"Grésy\";\"other\"\n\"3014699\";\"Grésy-sur-Aix\";\"main\"\n\"3014699\";\"Gresy-sur-Aix\";\"ascii\"\n\"3014699\";\"Gresy\";\"other\"\n\"3014699\";\"Grésy\";\"other\"\n\"3014701\";\"Gresswiller\";\"main\"\n\"3014717\";\"Gréoux-les-Bains\";\"main\"\n\"3014717\";\"Greoux-les-Bains\";\"ascii\"\n\"3014717\";\"Greoux\";\"other\"\n\"3014717\";\"Gréoux\";\"other\"\n\"3014728\";\"Grenoble\";\"main\"\n\"3014728\";\"Grelibre\";\"other\"\n\"3014728\";\"Grenobel\";\"other\"\n\"3014728\";\"Grenobl'\";\"other\"\n\"3014728\";\"Grenoblo\";\"other\"\n\"3014728\";\"Grenobul\";\"other\"\n\"3014728\";\"Grenòble\";\"other\"\n\"3014728\";\"ge lei nuo bu er\";\"other\"\n\"3014728\";\"ghrwnwbl\";\"other\"\n\"3014728\";\"grenobla\";\"other\"\n\"3014728\";\"grnwbl\";\"other\"\n\"3014728\";\"grwnwbl\";\"other\"\n\"3014728\";\"gurunoburu\";\"other\"\n\"3014728\";\"Грeнобль\";\"other\"\n\"3014728\";\"Гренобль\";\"other\"\n\"3014728\";\"Гренобъл\";\"other\"\n\"3014728\";\"גרנובל\";\"other\"\n\"3014728\";\"غرونوبل\";\"other\"\n\"3014728\";\"گرونوبل\";\"other\"\n\"3014728\";\"ग्रेनोब्ल\";\"other\"\n\"3014728\";\"グルノーブル\";\"other\"\n\"3014728\";\"格勒诺布尔\";\"other\"\n\"3014738\";\"Grendelbruch\";\"main\"\n\"3014739\";\"Grenay\";\"main\"\n\"3014740\";\"Grenay\";\"main\"\n\"3014745\";\"Grenade\";\"main\"\n\"3014745\";\"Grenade-sur-Garonne\";\"other\"\n\"3014767\";\"Gréasque\";\"main\"\n\"3014767\";\"Greasque\";\"ascii\"\n\"3014779\";\"Gray-la-Ville\";\"main\"\n\"3014784\";\"Gray\";\"main\"\n\"3014795\";\"Gravigny\";\"main\"\n\"3014803\";\"Graveson\";\"main\"\n\"3014816\";\"Gravelines\";\"main\"\n\"3014816\";\"Graelines\";\"other\"\n\"3014816\";\"Gravelinas\";\"other\"\n\"3014816\";\"Gravelingen\";\"other\"\n\"3014816\";\"Grevelingen\";\"other\"\n\"3014816\";\"Port-d'Aa\";\"other\"\n\"3014828\";\"Graulhet\";\"main\"\n\"3014828\";\"Graulhe\";\"other\"\n\"3014848\";\"Gratentour\";\"main\"\n\"3014848\";\"Cratentour\";\"other\"\n\"3014848\";\"Gratenteur\";\"other\"\n\"3014856\";\"Grasse\";\"main\"\n\"3014856\";\"Gras\";\"other\"\n\"3014856\";\"Grassa\";\"other\"\n\"3014856\";\"gurasu\";\"other\"\n\"3014856\";\"Грас\";\"other\"\n\"3014856\";\"グラース\";\"other\"\n\"3014867\";\"Granville\";\"main\"\n\"3014867\";\"Granville-la-Victoire\";\"other\"\n\"3014868\";\"Grans\";\"main\"\n\"3014878\";\"Granges-sur-Vologne\";\"main\"\n\"3014878\";\"Granges\";\"other\"\n\"3014915\";\"Grane\";\"main\"\n\"3014918\";\"Grandvilliers\";\"main\"\n\"3014928\";\"Grandvillars\";\"main\"\n\"3015000\";\"Grandris\";\"main\"\n\"3015119\";\"Gallargues-le-Montueux\";\"main\"\n\"3015123\";\"Grandfresnoy\";\"main\"\n\"3015125\";\"Grand-Fougeray\";\"main\"\n\"3015125\";\"Felgerieg-Veur\";\"other\"\n\"3015125\";\"Fougeray\";\"other\"\n\"3015125\";\"Le Grand-Fougeray\";\"other\"\n\"3015126\";\"Grand-Fort-Philippe\";\"main\"\n\"3015132\";\"Grandfontaine\";\"main\"\n\"3015160\";\"Grande-Synthe\";\"main\"\n\"3015267\";\"Grand-Couronne\";\"main\"\n\"3015267\";\"La Reunion\";\"other\"\n\"3015267\";\"La Réunion\";\"other\"\n\"3015292\";\"Grand-Charmont\";\"main\"\n\"3015305\";\"Grand-Champ\";\"main\"\n\"3015305\";\"Gregam\";\"other\"\n\"3015317\";\"Grandcamp-Maisy\";\"main\"\n\"3015317\";\"Grandcamp\";\"other\"\n\"3015317\";\"Grandcamp-les-Bains\";\"other\"\n\"3015384\";\"Grambois\";\"main\"\n\"3015386\";\"Gramat\";\"main\"\n\"3015397\";\"Grainville-sur-Odon\";\"main\"\n\"3015397\";\"Grainville\";\"other\"\n\"3015398\";\"Grainville-la-Teinturière\";\"main\"\n\"3015398\";\"Grainville-la-Teinturiere\";\"ascii\"\n\"3015398\";\"Grainville\";\"other\"\n\"3015412\";\"Gragnague\";\"main\"\n\"3015412\";\"Grapnague\";\"other\"\n\"3015419\";\"Gradignan\";\"main\"\n\"3015419\";\"Gradin'jan\";\"other\"\n\"3015419\";\"Градиньян\";\"other\"\n\"3015422\";\"Grâces\";\"main\"\n\"3015422\";\"Graces\";\"ascii\"\n\"3015422\";\"Gras-Gwengamp\";\"other\"\n\"3015423\";\"Graçay\";\"main\"\n\"3015423\";\"Gracay\";\"ascii\"\n\"3015423\";\"La Liberte\";\"other\"\n\"3015423\";\"La Liberté\";\"other\"\n\"3015424\";\"Grabels\";\"main\"\n\"3015434\";\"Goven\";\"main\"\n\"3015436\";\"Gouzon\";\"main\"\n\"3015438\";\"Gouzeaucourt\";\"main\"\n\"3015442\";\"Gouy-sous-Bellonne\";\"main\"\n\"3015442\";\"Gouy\";\"other\"\n\"3015458\";\"Gouville-sur-Mer\";\"main\"\n\"3015458\";\"Gouville\";\"other\"\n\"3015460\";\"Gouvieux\";\"main\"\n\"3015463\";\"Gouvernes\";\"main\"\n\"3015490\";\"Goussainville\";\"main\"\n\"3015507\";\"Gournay-sur-Marne\";\"main\"\n\"3015507\";\"Gournay\";\"other\"\n\"3015509\";\"Gournay-en-Bray\";\"main\"\n\"3015509\";\"Consolation\";\"other\"\n\"3015509\";\"Gournay\";\"other\"\n\"3015522\";\"Gourin\";\"main\"\n\"3015546\";\"Gourdon\";\"main\"\n\"3015546\";\"Courdon\";\"other\"\n\"3015546\";\"Gordon\";\"other\"\n\"3015549\";\"Gourdan-Polignan\";\"main\"\n\"3015571\";\"Goult\";\"main\"\n\"3015596\";\"Gouézec\";\"main\"\n\"3015596\";\"Gouezec\";\"ascii\"\n\"3015596\";\"Gouezeg\";\"other\"\n\"3015601\";\"Gouesnou\";\"main\"\n\"3015601\";\"Gouenou\";\"other\"\n\"3015601\";\"Gouenoù\";\"other\"\n\"3015602\";\"Gouesnach\";\"main\"\n\"3015602\";\"Gouenac'h\";\"other\"\n\"3015602\";\"Gouesnac'h\";\"other\"\n\"3015614\";\"Goudelin\";\"main\"\n\"3015618\";\"Goudargues\";\"main\"\n\"3015625\";\"Gouarec\";\"main\"\n\"3015625\";\"Gwareg\";\"other\"\n\"3015629\";\"Gouaix\";\"main\"\n\"3015635\";\"Gosné\";\"main\"\n\"3015635\";\"Gosne\";\"ascii\"\n\"3015635\";\"Cosne\";\"other\"\n\"3015635\";\"Cosné\";\"other\"\n\"3015635\";\"Goneg\";\"other\"\n\"3015636\";\"Gosnay\";\"main\"\n\"3015639\";\"Gorze\";\"main\"\n\"3015642\";\"Gorron\";\"main\"\n\"3015658\";\"Gorges\";\"main\"\n\"3015658\";\"Gored\";\"other\"\n\"3015658\";\"Gorge\";\"other\"\n\"3015661\";\"Gordes\";\"main\"\n\"3015662\";\"Gorcy\";\"main\"\n\"3015662\";\"Gorcy-Cussigny\";\"other\"\n\"3015664\";\"Gorbio\";\"main\"\n\"3015669\";\"Gontaud-de-Nogaret\";\"main\"\n\"3015677\";\"Gonneville-la-Mallet\";\"main\"\n\"3015677\";\"Gonneville\";\"other\"\n\"3015681\";\"Gonnehem\";\"main\"\n\"3015686\";\"Gonfaron\";\"main\"\n\"3015689\";\"Gonesse\";\"main\"\n\"3015689\";\"Gones\";\"other\"\n\"3015689\";\"Гонес\";\"other\"\n\"3015690\";\"Gondrin\";\"main\"\n\"3015697\";\"Gondreville\";\"main\"\n\"3015697\";\"Gondreville-sur-Moselle\";\"other\"\n\"3015701\";\"Gondrecourt-le-Château\";\"main\"\n\"3015701\";\"Gondrecourt-le-Chateau\";\"ascii\"\n\"3015701\";\"Gondrecourt\";\"other\"\n\"3015708\";\"Gondecourt\";\"main\"\n\"3015711\";\"Goncelin\";\"main\"\n\"3015723\";\"Gommegnies\";\"main\"\n\"3015727\";\"Gometz-le-Châtel\";\"main\"\n\"3015727\";\"Gometz-le-Chatel\";\"ascii\"\n\"3015727\";\"Saint-Clair\";\"other\"\n\"3015728\";\"Gometz-la-Ville\";\"main\"\n\"3015741\";\"Golbey\";\"main\"\n\"3015746\";\"Goincourt\";\"main\"\n\"3015755\";\"Gœulzin\";\"main\"\n\"3015755\";\"Goeulzin\";\"ascii\"\n\"3015756\";\"Goetzenbruck\";\"main\"\n\"3015756\";\"Gotzenbruck\";\"other\"\n\"3015756\";\"Götzenbrück\";\"other\"\n\"3015758\";\"Gœrsdorf\";\"main\"\n\"3015758\";\"Goersdorf\";\"ascii\"\n\"3015764\";\"Godewaersvelde\";\"main\"\n\"3015765\";\"Goderville\";\"main\"\n\"3015800\";\"Glomel\";\"main\"\n\"3015800\";\"Gronvel\";\"other\"\n\"3015800\";\"Groñvel\";\"other\"\n\"3015823\";\"Gleizé\";\"main\"\n\"3015823\";\"Gleize\";\"ascii\"\n\"3015894\";\"Givry\";\"main\"\n\"3015900\";\"Givrand\";\"main\"\n\"3015902\";\"Givors\";\"main\"\n\"3015904\";\"Givet\";\"main\"\n\"3015904\";\"Fort-la-Montagne\";\"other\"\n\"3015911\";\"Givenchy-en-Gohelle\";\"main\"\n\"3015911\";\"Givenchy\";\"other\"\n\"3015926\";\"Gisors\";\"main\"\n\"3015937\";\"Giroussens\";\"main\"\n\"3015952\";\"Gironde-sur-Dropt\";\"main\"\n\"3015958\";\"Giromagny\";\"main\"\n\"3015976\";\"Giraumont\";\"main\"\n\"3016009\";\"Ginestas\";\"main\"\n\"3016018\";\"Ginasservis\";\"main\"\n\"3016023\";\"Gimont\";\"main\"\n\"3016038\";\"Gilly-sur-Isère\";\"main\"\n\"3016038\";\"Gilly-sur-Isere\";\"ascii\"\n\"3016038\";\"Gilly\";\"other\"\n\"3016043\";\"Gillonnay\";\"main\"\n\"3016048\";\"Gilley\";\"main\"\n\"3016048\";\"Gilley-Gare\";\"other\"\n\"3016053\";\"Gilette\";\"main\"\n\"3016070\";\"Gignac-la-Nerthe\";\"main\"\n\"3016070\";\"Gignac\";\"other\"\n\"3016073\";\"Gignac\";\"main\"\n\"3016076\";\"Gigean\";\"main\"\n\"3016078\";\"Gif-sur-Yvette\";\"main\"\n\"3016078\";\"Gif\";\"other\"\n\"3016078\";\"Zhif sir Ivet\";\"other\"\n\"3016078\";\"Жиф сир Ивет\";\"other\"\n\"3016085\";\"Gièvres\";\"main\"\n\"3016085\";\"Gievres\";\"ascii\"\n\"3016089\";\"Gières\";\"main\"\n\"3016089\";\"Gieres\";\"ascii\"\n\"3016097\";\"Gien\";\"main\"\n\"3016101\";\"Gidy\";\"main\"\n\"3016113\";\"Giberville\";\"main\"\n\"3016130\";\"Ghyvelde\";\"main\"\n\"3016130\";\"Gijvelde\";\"other\"\n\"3016133\";\"Ghisonaccia\";\"main\"\n\"3016143\";\"Gex\";\"main\"\n\"3016147\";\"Gevrey-Chambertin\";\"main\"\n\"3016152\";\"Gévezé\";\"main\"\n\"3016152\";\"Geveze\";\"ascii\"\n\"3016152\";\"Gevrezeg\";\"other\"\n\"3016158\";\"Geudertheim\";\"main\"\n\"3016162\";\"Gétigné\";\"main\"\n\"3016162\";\"Getigne\";\"ascii\"\n\"3016162\";\"Yestinieg\";\"other\"\n\"3016166\";\"Gestel\";\"main\"\n\"3016166\";\"Yestael\";\"other\"\n\"3016167\";\"Gesté\";\"main\"\n\"3016167\";\"Geste\";\"ascii\"\n\"3016172\";\"Gespunsart\";\"main\"\n\"3016172\";\"Gesponsart\";\"other\"\n\"3016177\";\"Gerzat\";\"main\"\n\"3016192\";\"Gerstheim\";\"main\"\n\"3016247\";\"Gergy\";\"main\"\n\"3016257\";\"Gerde\";\"main\"\n\"3016264\";\"Gerbéviller\";\"main\"\n\"3016264\";\"Gerbeviller\";\"ascii\"\n\"3016274\";\"Gérardmer\";\"main\"\n\"3016274\";\"Gerardmer\";\"ascii\"\n\"3016274\";\"Ormont\";\"other\"\n\"3016282\";\"Ger\";\"main\"\n\"3016292\";\"Gentilly\";\"main\"\n\"3016297\";\"Gensac-la-Pallue\";\"main\"\n\"3016297\";\"Gensac\";\"other\"\n\"3016321\";\"Gennevilliers\";\"main\"\n\"3016321\";\"Genneville\";\"other\"\n\"3016321\";\"Gennevillers\";\"other\"\n\"3016330\";\"Gennes\";\"main\"\n\"3016332\";\"Genlis\";\"main\"\n\"3016333\";\"Génissieux\";\"main\"\n\"3016333\";\"Genissieux\";\"ascii\"\n\"3016337\";\"Génissac\";\"main\"\n\"3016337\";\"Genissac\";\"ascii\"\n\"3016340\";\"Genillé\";\"main\"\n\"3016340\";\"Genille\";\"ascii\"\n\"3016371\";\"Générac\";\"main\"\n\"3016371\";\"Generac\";\"ascii\"\n\"3016375\";\"Génelard\";\"main\"\n\"3016375\";\"Genelard\";\"ascii\"\n\"3016376\";\"Genech\";\"main\"\n\"3016385\";\"Genay\";\"main\"\n\"3016387\";\"Genas\";\"main\"\n\"3016392\";\"Gémozac\";\"main\"\n\"3016392\";\"Gemozac\";\"ascii\"\n\"3016398\";\"Gémenos\";\"main\"\n\"3016398\";\"Gemenos\";\"ascii\"\n\"3016406\";\"Gelos\";\"main\"\n\"3016409\";\"Gelles\";\"main\"\n\"3016424\";\"Geispolsheim\";\"main\"\n\"3016456\";\"Gazeran\";\"main\"\n\"3016474\";\"Gavray\";\"main\"\n\"3016496\";\"Gauriaguet\";\"main\"\n\"3016524\";\"Gauchy\";\"main\"\n\"3016534\";\"Gattières\";\"main\"\n\"3016534\";\"Gattieres\";\"ascii\"\n\"3016551\";\"Gasville-Oisème\";\"main\"\n\"3016551\";\"Gasville-Oiseme\";\"ascii\"\n\"3016561\";\"Gassin\";\"main\"\n\"3016564\";\"Gasny\";\"main\"\n\"3016595\";\"Garons\";\"main\"\n\"3016606\";\"Garnay\";\"main\"\n\"3016609\";\"Garlin\";\"main\"\n\"3016618\";\"Garidech\";\"main\"\n\"3016618\";\"Caridech\";\"other\"\n\"3016621\";\"Garges-lès-Gonesse\";\"main\"\n\"3016621\";\"Garges-les-Gonesse\";\"ascii\"\n\"3016621\";\"Garges\";\"other\"\n\"3016622\";\"Gargenville\";\"main\"\n\"3016624\";\"Gargas\";\"main\"\n\"3016635\";\"Garéoult\";\"main\"\n\"3016635\";\"Gareoult\";\"ascii\"\n\"3016637\";\"Garennes-sur-Eure\";\"main\"\n\"3016637\";\"Garennes\";\"other\"\n\"3016645\";\"Gardouch\";\"main\"\n\"3016648\";\"Gardonne\";\"main\"\n\"3016667\";\"Gardanne\";\"main\"\n\"3016674\";\"Garchizy\";\"main\"\n\"3016675\";\"Garches\";\"main\"\n\"3016686\";\"Garat\";\"main\"\n\"3016690\";\"Garancières\";\"main\"\n\"3016690\";\"Garancieres\";\"ascii\"\n\"3016702\";\"Gap\";\"main\"\n\"3016702\";\"gyappu\";\"other\"\n\"3016702\";\"Гап\";\"other\"\n\"3016702\";\"ギャップ\";\"other\"\n\"3016711\";\"Gannat\";\"main\"\n\"3016714\";\"Ganges\";\"main\"\n\"3016716\";\"Gandrange\";\"main\"\n\"3016726\";\"Gan\";\"main\"\n\"3016730\";\"Gambsheim\";\"main\"\n\"3016730\";\"Cambsheim\";\"other\"\n\"3016733\";\"Gambais\";\"main\"\n\"3016737\";\"Gamaches\";\"main\"\n\"3016745\";\"Galluis\";\"main\"\n\"3016750\";\"Gallardon\";\"main\"\n\"3016764\";\"Galgon\";\"main\"\n\"3016764\";\"Galgon-et-Queyrac\";\"other\"\n\"3016764\";\"Galgor\";\"other\"\n\"3016800\";\"Gainneville\";\"main\"\n\"3016807\";\"Gaillon\";\"main\"\n\"3016812\";\"Gaillefontaine\";\"main\"\n\"3016817\";\"Gaillard\";\"main\"\n\"3016820\";\"Gaillan-en-Médoc\";\"main\"\n\"3016820\";\"Gaillan-en-Medoc\";\"ascii\"\n\"3016820\";\"Gaillan\";\"other\"\n\"3016822\";\"Gaillac-Toulza\";\"main\"\n\"3016822\";\"Gaillac-la-Montagne\";\"other\"\n\"3016824\";\"Gaillac\";\"main\"\n\"3016830\";\"Gagny\";\"main\"\n\"3016837\";\"Gagnac-sur-Garonne\";\"main\"\n\"3016837\";\"Gagnac\";\"other\"\n\"3016847\";\"Gaël\";\"main\"\n\"3016847\";\"Gael\";\"ascii\"\n\"3016847\";\"Gwazel\";\"other\"\n\"3016853\";\"Gacé\";\"main\"\n\"3016853\";\"Gace\";\"ascii\"\n\"3016871\";\"Gabarret\";\"main\"\n\"3016878\";\"Fuveau\";\"main\"\n\"3016882\";\"Fussy\";\"main\"\n\"3016890\";\"Furiani\";\"main\"\n\"3016894\";\"Furdenheim\";\"main\"\n\"3016903\";\"Fumel\";\"main\"\n\"3016907\";\"Fumay\";\"main\"\n\"3016918\";\"Fublaines\";\"main\"\n\"3016931\";\"Fruges\";\"main\"\n\"3016940\";\"Frouzins\";\"main\"\n\"3016940\";\"Frollzins\";\"other\"\n\"3016944\";\"Frouard\";\"main\"\n\"3016945\";\"Frotey-lès-Vesoul\";\"main\"\n\"3016945\";\"Frotey-les-Vesoul\";\"ascii\"\n\"3016945\";\"Frotey\";\"other\"\n\"3016947\";\"Frossay\";\"main\"\n\"3016947\";\"Frozieg\";\"other\"\n\"3016947\";\"Mont-Vineux\";\"other\"\n\"3016951\";\"Frontonas\";\"main\"\n\"3016951\";\"Frontas\";\"other\"\n\"3016953\";\"Fronton\";\"main\"\n\"3016956\";\"Frontignan\";\"main\"\n\"3016956\";\"Frontin'jan\";\"other\"\n\"3016956\";\"Фронтиньян\";\"other\"\n\"3016957\";\"Frontenex\";\"main\"\n\"3016957\";\"Frontenex-Villard-Rosset\";\"other\"\n\"3016959\";\"Frontenay-Rohan-Rohan\";\"main\"\n\"3016959\";\"Frontenay\";\"other\"\n\"3016969\";\"Fronsac\";\"main\"\n\"3016973\";\"Froncles\";\"main\"\n\"3016992\";\"Fromelennes\";\"main\"\n\"3017003\";\"Froidfond\";\"main\"\n\"3017012\";\"Froideconche\";\"main\"\n\"3017017\";\"Froges\";\"main\"\n\"3017024\";\"Friville-Escarbotin\";\"main\"\n\"3017024\";\"Friville\";\"other\"\n\"3017034\";\"Frignicourt\";\"main\"\n\"3017059\";\"Freyming-Merlebach\";\"main\"\n\"3017080\";\"Frévent\";\"main\"\n\"3017080\";\"Frevent\";\"ascii\"\n\"3017100\";\"Fretin\";\"main\"\n\"3017104\";\"Fréthun\";\"main\"\n\"3017104\";\"Frethun\";\"ascii\"\n\"3017124\";\"Fresse-sur-Moselle\";\"main\"\n\"3017124\";\"Fresse\";\"other\"\n\"3017127\";\"Fressenneville\";\"main\"\n\"3017144\";\"Fresnoy-le-Grand\";\"main\"\n\"3017144\";\"Fresnoy\";\"other\"\n\"3017167\";\"Fresnes-sur-Escaut\";\"main\"\n\"3017167\";\"Fresnes\";\"other\"\n\"3017178\";\"Fresnes\";\"main\"\n\"3017178\";\"Fren\";\"other\"\n\"3017178\";\"Френ\";\"other\"\n\"3017189\";\"Fresnay-sur-Sarthe\";\"main\"\n\"3017189\";\"Fresnay\";\"other\"\n\"3017208\";\"Frépillon\";\"main\"\n\"3017208\";\"Frepillon\";\"ascii\"\n\"3017219\";\"Freneuse\";\"main\"\n\"3017248\";\"Frelinghien\";\"main\"\n\"3017249\";\"Fréland\";\"main\"\n\"3017249\";\"Freland\";\"ascii\"\n\"3017253\";\"Fréjus\";\"main\"\n\"3017253\";\"Frejus\";\"ascii\"\n\"3017253\";\"Forum Iulii\";\"other\"\n\"3017253\";\"Frejús\";\"other\"\n\"3017253\";\"Frezhjus\";\"other\"\n\"3017253\";\"Фрежюс\";\"other\"\n\"3017255\";\"Fréjairolles\";\"main\"\n\"3017255\";\"Frejairolles\";\"ascii\"\n\"3017259\";\"Freigné\";\"main\"\n\"3017259\";\"Freigne\";\"ascii\"\n\"3017306\";\"Frasne\";\"main\"\n\"3017320\";\"Frans\";\"main\"\n\"3017330\";\"Franois\";\"main\"\n\"3017334\";\"Frangy\";\"main\"\n\"3017341\";\"Franconville\";\"main\"\n\"3017341\";\"Franconville-la-Garenne\";\"other\"\n\"3017341\";\"Franconville-la-Libre\";\"other\"\n\"3017356\";\"Francheville\";\"main\"\n\"3017363\";\"Francheville\";\"main\"\n\"3017363\";\"Franche-Commune\";\"other\"\n\"3017369\";\"Francheleins\";\"main\"\n\"3017400\";\"Fraize\";\"main\"\n\"3017400\";\"Fraze\";\"other\"\n\"3017400\";\"Traize\";\"other\"\n\"3017410\";\"Fraisses\";\"main\"\n\"3017416\";\"Fraisans\";\"main\"\n\"3017422\";\"Frahier-et-Chatebier\";\"main\"\n\"3017456\";\"Foussais-Payré\";\"main\"\n\"3017456\";\"Foussais-Payre\";\"ascii\"\n\"3017474\";\"Fourqueux\";\"main\"\n\"3017475\";\"Fourques-sur-Garonne\";\"main\"\n\"3017475\";\"Fourques\";\"other\"\n\"3017477\";\"Fourques\";\"main\"\n\"3017491\";\"Fournes-en-Weppes\";\"main\"\n\"3017491\";\"Fournes\";\"other\"\n\"3017512\";\"Fourmies\";\"main\"\n\"3017537\";\"Fourchambault\";\"main\"\n\"3017537\";\"Fourchambau\";\"other\"\n\"3017546\";\"Fouras\";\"main\"\n\"3017556\";\"Fouquières-lès-Lens\";\"main\"\n\"3017556\";\"Fouquieres-les-Lens\";\"ascii\"\n\"3017556\";\"Fouquieres\";\"other\"\n\"3017556\";\"Fouquières\";\"other\"\n\"3017557\";\"Fouquières-lès-Béthune\";\"main\"\n\"3017557\";\"Fouquieres-les-Bethune\";\"ascii\"\n\"3017557\";\"Fouquieres\";\"other\"\n\"3017557\";\"Fouquières\";\"other\"\n\"3017562\";\"Fouquereuil\";\"main\"\n\"3017576\";\"Foulayronnes\";\"main\"\n\"3017592\";\"Fouillard\";\"main\"\n\"3017592\";\"Fouillard-Thorigne\";\"other\"\n\"3017592\";\"Fouillard-Thorigné\";\"other\"\n\"3017601\";\"Fougerolles-du-Plessis\";\"main\"\n\"3017601\";\"Fougerolles\";\"other\"\n\"3017602\";\"Fougerolles\";\"main\"\n\"3017609\";\"Fougères\";\"main\"\n\"3017609\";\"Fougeres\";\"ascii\"\n\"3017609\";\"Felger\";\"other\"\n\"3017609\";\"Fuzher\";\"other\"\n\"3017609\";\"Фужер\";\"other\"\n\"3017622\";\"Foug\";\"main\"\n\"3017624\";\"Fouesnant\";\"main\"\n\"3017624\";\"Fouen\";\"other\"\n\"3017624\";\"Fouenant\";\"other\"\n\"3017637\";\"Foucherans\";\"main\"\n\"3017647\";\"Foucarmont\";\"main\"\n\"3017651\";\"Fos-sur-Mer\";\"main\"\n\"3017651\";\"Fos\";\"other\"\n\"3017651\";\"Fòs\";\"other\"\n\"3017651\";\"fosu=shuru=meru\";\"other\"\n\"3017651\";\"フォス＝シュル＝メール\";\"other\"\n\"3017660\";\"Fosses\";\"main\"\n\"3017682\";\"Fortschwihr\";\"main\"\n\"3017686\";\"Fort-Mardyck\";\"main\"\n\"3017687\";\"Fort-Mahon-Plage\";\"main\"\n\"3017687\";\"Fort-Mahon\";\"other\"\n\"3017704\";\"Fors\";\"main\"\n\"3017717\";\"Formerie\";\"main\"\n\"3017727\";\"Forges-les-Eaux\";\"main\"\n\"3017727\";\"Forges\";\"other\"\n\"3017728\";\"Forges-les-Bains\";\"main\"\n\"3017728\";\"Forges\";\"other\"\n\"3017766\";\"Forest-sur-Marque\";\"main\"\n\"3017766\";\"Forest\";\"other\"\n\"3017798\";\"Forcalquier\";\"main\"\n\"3017798\";\"Forcauquier\";\"other\"\n\"3017799\";\"Forcalqueiret\";\"main\"\n\"3017805\";\"Forbach\";\"main\"\n\"3017805\";\"Forbakh\";\"other\"\n\"3017805\";\"Форбах\";\"other\"\n\"3017816\";\"Fontvieille\";\"main\"\n\"3017829\";\"Fontoy\";\"main\"\n\"3017829\";\"Fensch\";\"other\"\n\"3017879\";\"Fontenilles\";\"main\"\n\"3017902\";\"Fontenay-Trésigny\";\"main\"\n\"3017902\";\"Fontenay-Tresigny\";\"ascii\"\n\"3017906\";\"Fontenay-sur-Loing\";\"main\"\n\"3017906\";\"Fontenay\";\"other\"\n\"3017910\";\"Fontenay-sous-Bois\";\"main\"\n\"3017910\";\"Fontenay\";\"other\"\n\"3017910\";\"Fontne su Boa\";\"other\"\n\"3017910\";\"Фонтне су Боа\";\"other\"\n\"3017916\";\"Fontenay-lès-Briis\";\"main\"\n\"3017916\";\"Fontenay-les-Briis\";\"ascii\"\n\"3017916\";\"Fontenay\";\"other\"\n\"3017918\";\"Fontenay-le-Marmion\";\"main\"\n\"3017918\";\"Fontenay\";\"other\"\n\"3017919\";\"Fontenay-le-Fleury\";\"main\"\n\"3017919\";\"Fontenay\";\"other\"\n\"3017921\";\"Fontenay-le-Comte\";\"main\"\n\"3017921\";\"Fontenay-le-Peuple\";\"other\"\n\"3017922\";\"Fontenay-en-Parisis\";\"main\"\n\"3017922\";\"Fontenay\";\"other\"\n\"3017924\";\"Fontenay-aux-Roses\";\"main\"\n\"3017924\";\"Fontenay\";\"other\"\n\"3017924\";\"Fontne o Roz\";\"other\"\n\"3017924\";\"Фонтне о Роз\";\"other\"\n\"3017926\";\"Fontenay\";\"main\"\n\"3017945\";\"Fontcouverte\";\"main\"\n\"3017967\";\"Fontannes\";\"main\"\n\"3017967\";\"Fontanes\";\"other\"\n\"3017971\";\"Fontanil-Cornillon\";\"main\"\n\"3017971\";\"Fontanil\";\"other\"\n\"3017994\";\"Fontaines-sur-Saône\";\"main\"\n\"3017994\";\"Fontaines-sur-Saone\";\"ascii\"\n\"3017994\";\"Fontaine\";\"other\"\n\"3017994\";\"Fontaines\";\"other\"\n\"3017996\";\"Fontaines-Saint-Martin\";\"main\"\n\"3017996\";\"Brutus-la-Fontaine\";\"other\"\n\"3018011\";\"Fontaines\";\"main\"\n\"3018018\";\"Fontaine-Notre-Dame\";\"main\"\n\"3018018\";\"Cailloux-la-Montagne\";\"other\"\n\"3018018\";\"Fontaine\";\"other\"\n\"3018018\";\"Fontaine-la-Montagne\";\"other\"\n\"3018028\";\"Fontaine-lès-Luxeuil\";\"main\"\n\"3018028\";\"Fontaine-les-Luxeuil\";\"ascii\"\n\"3018028\";\"Fontaine\";\"other\"\n\"3018032\";\"Fontaine-lès-Dijon\";\"main\"\n\"3018032\";\"Fontaine-les-Dijon\";\"ascii\"\n\"3018032\";\"Fontaine\";\"other\"\n\"3018042\";\"Fontaine-le-Dun\";\"main\"\n\"3018042\";\"Fontaine\";\"other\"\n\"3018043\";\"Fontaine-le-Comte\";\"main\"\n\"3018043\";\"Fontaine\";\"other\"\n\"3018043\";\"Fontaine-l'Egalite\";\"other\"\n\"3018043\";\"Fontaine-l'Egalité\";\"other\"\n\"3018044\";\"Fontaine-le-Bourg\";\"main\"\n\"3018044\";\"Fontaine\";\"other\"\n\"3018050\";\"Fontaine-la-Mallet\";\"main\"\n\"3018050\";\"Fontaine\";\"other\"\n\"3018052\";\"Fontaine-la-Guyon\";\"main\"\n\"3018052\";\"Fontaine\";\"other\"\n\"3018062\";\"Fontaine-Étoupefour\";\"main\"\n\"3018062\";\"Fontaine-Etoupefour\";\"ascii\"\n\"3018062\";\"Fontaine\";\"other\"\n\"3018074\";\"Fontainebleau\";\"main\"\n\"3018074\";\"Fontaine-la-Montagne\";\"other\"\n\"3018074\";\"Fontaine-le-Vallon\";\"other\"\n\"3018074\";\"Fontenblo\";\"other\"\n\"3018074\";\"fontenuburo\";\"other\"\n\"3018074\";\"Фонтенбло\";\"other\"\n\"3018074\";\"フォンテヌブロー\";\"other\"\n\"3018074\";\"フォンテーヌブロー\";\"other\"\n\"3018077\";\"Fontaine-au-Pire\";\"main\"\n\"3018077\";\"Fontaine\";\"other\"\n\"3018095\";\"Fontaine\";\"main\"\n\"3018095\";\"Fontejn\";\"other\"\n\"3018095\";\"Фонтейн\";\"other\"\n\"3018103\";\"Fonsorbes\";\"main\"\n\"3018124\";\"Fondettes\";\"main\"\n\"3018142\";\"Fonbeauzard\";\"main\"\n\"3018142\";\"Fombeauzard\";\"other\"\n\"3018145\";\"Folschviller\";\"main\"\n\"3018145\";\"Folschwiller\";\"other\"\n\"3018154\";\"Follainville-Dennemont\";\"main\"\n\"3018154\";\"Follainville\";\"other\"\n\"3018155\";\"Folkling\";\"main\"\n\"3018155\";\"Folckling\";\"other\"\n\"3018166\";\"Folembray\";\"main\"\n\"3018174\";\"Foix\";\"main\"\n\"3018174\";\"Foix-sur-Ariege\";\"other\"\n\"3018174\";\"Foix-sur-Ariège\";\"other\"\n\"3018178\";\"Foissiat\";\"main\"\n\"3018189\";\"Foëcy\";\"main\"\n\"3018189\";\"Foecy\";\"ascii\"\n\"3018210\";\"Flourens\";\"main\"\n\"3018231\";\"Florensac\";\"main\"\n\"3018235\";\"Florange\";\"main\"\n\"3018238\";\"Florac\";\"main\"\n\"3018246\";\"Floirac\";\"main\"\n\"3018247\";\"Floing\";\"main\"\n\"3018248\";\"Flogny-la-Chapelle\";\"main\"\n\"3018251\";\"Flize\";\"main\"\n\"3018252\";\"Flixecourt\";\"main\"\n\"3018255\";\"Flins-sur-Seine\";\"main\"\n\"3018255\";\"Flins\";\"other\"\n\"3018257\";\"Flines-lez-Raches\";\"main\"\n\"3018257\";\"Flines\";\"other\"\n\"3018257\";\"Flines-les-Raohes\";\"other\"\n\"3018257\";\"Flines-lès-Râohes\";\"other\"\n\"3018257\";\"L'Abbaye\";\"other\"\n\"3018258\";\"Flines-lès-Mortagne\";\"main\"\n\"3018258\";\"Flines-les-Mortagne\";\"ascii\"\n\"3018258\";\"Flines\";\"other\"\n\"3018270\";\"Fléville-devant-Nancy\";\"main\"\n\"3018270\";\"Fleville-devant-Nancy\";\"ascii\"\n\"3018270\";\"Fleville\";\"other\"\n\"3018270\";\"Fléville\";\"other\"\n\"3018275\";\"Fleury-sur-Orne\";\"main\"\n\"3018275\";\"Fleury\";\"other\"\n\"3018277\";\"Fleury-sur-Andelle\";\"main\"\n\"3018277\";\"Fleury\";\"other\"\n\"3018279\";\"Fleury-Mérogis\";\"main\"\n\"3018279\";\"Fleury-Merogis\";\"ascii\"\n\"3018280\";\"Fleury-les-Aubrais\";\"main\"\n\"3018280\";\"Les Aubrais\";\"other\"\n\"3018282\";\"Fleury-la-Vallée\";\"main\"\n\"3018282\";\"Fleury-la-Vallee\";\"ascii\"\n\"3018282\";\"Fleury\";\"other\"\n\"3018282\";\"Fleury-Vallee-d'Aillant\";\"other\"\n\"3018282\";\"Fleury-Vallée-d'Aillant\";\"other\"\n\"3018292\";\"Fleury\";\"main\"\n\"3018296\";\"Fleury\";\"main\"\n\"3018296\";\"Fleury \\\"Bouches de l'Aude\";\"other\"\n\"3018296\";\"Fleury ”Bouches de l'Aude\";\"other\"\n\"3018296\";\"Fleury-d'Aude\";\"other\"\n\"3018296\";\"Perignan\";\"other\"\n\"3018296\";\"Pérignan\";\"other\"\n\"3018298\";\"Fleurines\";\"main\"\n\"3018303\";\"Fleurieu-sur-Saône\";\"main\"\n\"3018303\";\"Fleurieu-sur-Saone\";\"ascii\"\n\"3018303\";\"Fleurieu\";\"other\"\n\"3018306\";\"Fleurie\";\"main\"\n\"3018308\";\"Fleurey-sur-Ouche\";\"main\"\n\"3018308\";\"Fleurey\";\"other\"\n\"3018318\";\"Fleurbaix\";\"main\"\n\"3018323\";\"Fleurance\";\"main\"\n\"3018323\";\"Pleurance\";\"other\"\n\"3018332\";\"Flesselles\";\"main\"\n\"3018336\";\"Flers-en-Escrebieux\";\"main\"\n\"3018336\";\"Flers\";\"other\"\n\"3018336\";\"Flers-en-Escribeus\";\"other\"\n\"3018339\";\"Flers\";\"main\"\n\"3018339\";\"Flers-de-l'Orne\";\"other\"\n\"3018354\";\"Fléac\";\"main\"\n\"3018354\";\"Fleac\";\"ascii\"\n\"3018355\";\"Flayosc\";\"main\"\n\"3018358\";\"Flaxlanden\";\"main\"\n\"3018361\";\"Flavy-le-Martel\";\"main\"\n\"3018361\";\"Flavy\";\"other\"\n\"3018362\";\"Flavin\";\"main\"\n\"3018364\";\"Flavigny-sur-Moselle\";\"main\"\n\"3018364\";\"Flavigny\";\"other\"\n\"3018364\";\"La Basse Flavigny\";\"other\"\n\"3018373\";\"Flaviac\";\"main\"\n\"3018389\";\"Flassans-sur-Issole\";\"main\"\n\"3018389\";\"Flassans\";\"other\"\n\"3018409\";\"Flamanville\";\"main\"\n\"3018448\";\"Fitz-James\";\"main\"\n\"3018450\";\"Fitilieu\";\"main\"\n\"3018453\";\"Fismes\";\"main\"\n\"3018455\";\"Firminy\";\"main\"\n\"3018456\";\"Firmi\";\"main\"\n\"3018456\";\"Firmy\";\"other\"\n\"3018474\";\"Finhan\";\"main\"\n\"3018489\";\"Fillinges\";\"main\"\n\"3018492\";\"Fillé\";\"main\"\n\"3018492\";\"Fille\";\"ascii\"\n\"3018492\";\"Fille-sur-Sarthe\";\"other\"\n\"3018492\";\"Fillé-sur-Sarthe\";\"other\"\n\"3018506\";\"Figeac\";\"main\"\n\"3018506\";\"Ceint-d'Eau\";\"other\"\n\"3018513\";\"Figanières\";\"main\"\n\"3018513\";\"Figanieres\";\"ascii\"\n\"3018544\";\"Feyzin\";\"main\"\n\"3018545\";\"Feytiat\";\"main\"\n\"3018560\";\"Feurs\";\"main\"\n\"3018560\";\"Ferus\";\"other\"\n\"3018561\";\"Feuquières-en-Vimeu\";\"main\"\n\"3018561\";\"Feuquieres-en-Vimeu\";\"ascii\"\n\"3018561\";\"Feuquieres\";\"other\"\n\"3018561\";\"Feuquières\";\"other\"\n\"3018562\";\"Feuquières\";\"main\"\n\"3018562\";\"Feuquieres\";\"ascii\"\n\"3018586\";\"Feuchy\";\"main\"\n\"3018587\";\"Feucherolles\";\"main\"\n\"3018590\";\"Féternes\";\"main\"\n\"3018590\";\"Feternes\";\"ascii\"\n\"3018590\";\"Feterne\";\"other\"\n\"3018590\";\"Féterne\";\"other\"\n\"3018591\";\"Festubert\";\"main\"\n\"3018601\";\"Fessenheim\";\"main\"\n\"3018605\";\"Fesches-le-Châtel\";\"main\"\n\"3018605\";\"Fesches-le-Chatel\";\"ascii\"\n\"3018605\";\"Fesches\";\"other\"\n\"3018633\";\"Ferrières-en-Brie\";\"main\"\n\"3018633\";\"Ferrieres-en-Brie\";\"ascii\"\n\"3018633\";\"Ferrieres\";\"other\"\n\"3018633\";\"Ferrières\";\"other\"\n\"3018650\";\"Ferrière-la-Grande\";\"main\"\n\"3018650\";\"Ferriere-la-Grande\";\"ascii\"\n\"3018650\";\"Ferriere\";\"other\"\n\"3018650\";\"Ferrieres-la-Grande\";\"other\"\n\"3018650\";\"Ferrière\";\"other\"\n\"3018650\";\"Ferrières-la-Grande\";\"other\"\n\"3018659\";\"Ferrette\";\"main\"\n\"3018671\";\"Ferrals-les-Corbières\";\"main\"\n\"3018671\";\"Ferrals-les-Corbieres\";\"ascii\"\n\"3018671\";\"Ferrals\";\"other\"\n\"3018672\";\"Ferques\";\"main\"\n\"3018675\";\"Férolles-Attilly\";\"main\"\n\"3018675\";\"Ferolles-Attilly\";\"ascii\"\n\"3018676\";\"Férolles\";\"main\"\n\"3018676\";\"Ferolles\";\"ascii\"\n\"3018679\";\"Ferney-Voltaire\";\"main\"\n\"3018679\";\"Ferney\";\"other\"\n\"3018684\";\"Fermanville\";\"main\"\n\"3018688\";\"Férin\";\"main\"\n\"3018688\";\"Ferin\";\"ascii\"\n\"3018692\";\"Férel\";\"main\"\n\"3018692\";\"Ferel\";\"ascii\"\n\"3018693\";\"Fère-en-Tardenois\";\"main\"\n\"3018693\";\"Fere-en-Tardenois\";\"ascii\"\n\"3018693\";\"Fere en Tardenais\";\"other\"\n\"3018693\";\"Fere-sur-Ourcq\";\"other\"\n\"3018693\";\"Fère-sur-Ourcq\";\"other\"\n\"3018694\";\"Fère-Champenoise\";\"main\"\n\"3018694\";\"Fere-Champenoise\";\"ascii\"\n\"3018713\";\"Fenouillet\";\"main\"\n\"3018730\";\"Feneu\";\"main\"\n\"3018737\";\"Fénay\";\"main\"\n\"3018737\";\"Fenay\";\"ascii\"\n\"3018739\";\"Fenain\";\"main\"\n\"3018747\";\"Felletin\";\"main\"\n\"3018748\";\"Fellering\";\"main\"\n\"3018748\";\"Felleringen\";\"other\"\n\"3018755\";\"Félines\";\"main\"\n\"3018755\";\"Felines\";\"ascii\"\n\"3018776\";\"Feillens\";\"main\"\n\"3018778\";\"Feignies\";\"main\"\n\"3018780\";\"Feigères\";\"main\"\n\"3018780\";\"Feigeres\";\"ascii\"\n\"3018781\";\"Fégréac\";\"main\"\n\"3018781\";\"Fegreac\";\"ascii\"\n\"3018781\";\"Fegerieg\";\"other\"\n\"3018782\";\"Fegersheim\";\"main\"\n\"3018793\";\"Féchain\";\"main\"\n\"3018793\";\"Fechain\";\"ascii\"\n\"3018794\";\"Fécamp\";\"main\"\n\"3018794\";\"Fecamp\";\"ascii\"\n\"3018794\";\"Secamp\";\"other\"\n\"3018794\";\"Sècamp\";\"other\"\n\"3018824\";\"Fayl-Billot\";\"main\"\n\"3018824\";\"Fays-Billot\";\"other\"\n\"3018835\";\"Fayence\";\"main\"\n\"3018859\";\"Fay-de-Bretagne\";\"main\"\n\"3018859\";\"Faouell\";\"other\"\n\"3018859\";\"Fay\";\"other\"\n\"3018861\";\"Fay-aux-Loges\";\"main\"\n\"3018861\";\"Fay\";\"other\"\n\"3018880\";\"Favières\";\"main\"\n\"3018880\";\"Favieres\";\"ascii\"\n\"3018886\";\"Faverolles-sur-Cher\";\"main\"\n\"3018886\";\"Faverolles\";\"other\"\n\"3018900\";\"Faverney\";\"main\"\n\"3018900\";\"Puvernay\";\"other\"\n\"3018902\";\"Faverges-de-la-Tour\";\"main\"\n\"3018902\";\"Faverges\";\"other\"\n\"3018903\";\"Faverges\";\"main\"\n\"3018928\";\"Fauville-en-Caux\";\"main\"\n\"3018928\";\"Fauville\";\"other\"\n\"3018942\";\"Faumont\";\"main\"\n\"3018944\";\"Faulx\";\"main\"\n\"3018946\";\"Faulquemont\";\"main\"\n\"3019001\";\"Farschviller\";\"main\"\n\"3019001\";\"Farschwiller\";\"other\"\n\"3019008\";\"Farnay\";\"main\"\n\"3019016\";\"Fargues-Saint-Hilaire\";\"main\"\n\"3019016\";\"Fargues\";\"other\"\n\"3019040\";\"Faremoutiers\";\"main\"\n\"3019040\";\"Mont-l'Egalite\";\"other\"\n\"3019040\";\"Mont-l'Egalité\";\"other\"\n\"3019042\";\"Fareins\";\"main\"\n\"3019044\";\"Farébersviller\";\"main\"\n\"3019044\";\"Farebersviller\";\"ascii\"\n\"3019073\";\"Fampoux\";\"main\"\n\"3019077\";\"Fameck\";\"main\"\n\"3019080\";\"Famars\";\"main\"\n\"3019088\";\"Falleron\";\"main\"\n\"3019095\";\"Falicon\";\"main\"\n\"3019110\";\"Falck\";\"main\"\n\"3019113\";\"Falaise\";\"main\"\n\"3019125\";\"Fains-Véel\";\"main\"\n\"3019125\";\"Fains-Veel\";\"ascii\"\n\"3019125\";\"Fains-les-Sources\";\"other\"\n\"3019139\";\"Fagnières\";\"main\"\n\"3019139\";\"Fagnieres\";\"ascii\"\n\"3019153\";\"Faches-Thumesnil\";\"main\"\n\"3019153\";\"Faches\";\"other\"\n\"3019157\";\"Fabrezan\";\"main\"\n\"3019160\";\"Fabrègues\";\"main\"\n\"3019160\";\"Fabregues\";\"ascii\"\n\"3019170\";\"Ézy-sur-Eure\";\"main\"\n\"3019170\";\"Ezy-sur-Eure\";\"ascii\"\n\"3019170\";\"Ezy\";\"other\"\n\"3019170\";\"Ézy\";\"other\"\n\"3019174\";\"Èze\";\"main\"\n\"3019174\";\"Eze\";\"ascii\"\n\"3019174\";\"Ehz\";\"other\"\n\"3019174\";\"Eze-sur-Mer\";\"other\"\n\"3019174\";\"Mer-d'Eze\";\"other\"\n\"3019174\";\"Езе\";\"other\"\n\"3019174\";\"Эз\";\"other\"\n\"3019175\";\"Ézanville\";\"main\"\n\"3019175\";\"Ezanville\";\"ascii\"\n\"3019176\";\"Eyzin-Pinet\";\"main\"\n\"3019176\";\"Eyzin\";\"other\"\n\"3019181\";\"Eyvignes-et-Eybènes\";\"main\"\n\"3019181\";\"Eyvignes-et-Eybenes\";\"ascii\"\n\"3019181\";\"Eyvignes\";\"other\"\n\"3019193\";\"Eysines\";\"main\"\n\"3019203\";\"Eyragues\";\"main\"\n\"3019209\";\"Eymoutiers\";\"main\"\n\"3019212\";\"Eymet\";\"main\"\n\"3019219\";\"Eyguières\";\"main\"\n\"3019219\";\"Eyguieres\";\"ascii\"\n\"3019229\";\"Eygalières\";\"main\"\n\"3019229\";\"Eygalieres\";\"ascii\"\n\"3019238\";\"Eybens\";\"main\"\n\"3019247\";\"Exireuil\";\"main\"\n\"3019248\";\"Exincourt\";\"main\"\n\"3019249\";\"Exideuil\";\"main\"\n\"3019249\";\"Excideuil\";\"other\"\n\"3019253\";\"Excideuil\";\"main\"\n\"3019256\";\"Évry\";\"main\"\n\"3019256\";\"Evry\";\"ascii\"\n\"3019256\";\"Evry-Petit-Bourg\";\"other\"\n\"3019256\";\"evuri\";\"other\"\n\"3019256\";\"Évry-Petit-Bourg\";\"other\"\n\"3019256\";\"エヴリー\";\"other\"\n\"3019259\";\"Évron\";\"main\"\n\"3019259\";\"Evron\";\"ascii\"\n\"3019265\";\"Évreux\";\"main\"\n\"3019265\";\"Evreux\";\"ascii\"\n\"3019265\";\"Evre\";\"other\"\n\"3019265\";\"Evreaux\";\"other\"\n\"3019265\";\"Evreux-le-Coudray\";\"other\"\n\"3019265\";\"evuru\";\"other\"\n\"3019265\";\"Евре\";\"other\"\n\"3019265\";\"エヴルー\";\"other\"\n\"3019267\";\"Évrecy\";\"main\"\n\"3019267\";\"Evrecy\";\"ascii\"\n\"3019271\";\"Évran\";\"main\"\n\"3019271\";\"Evran\";\"ascii\"\n\"3019271\";\"Evrann\";\"other\"\n\"3019275\";\"Évires\";\"main\"\n\"3019275\";\"Evires\";\"ascii\"\n\"3019276\";\"Évin-Malmaison\";\"main\"\n\"3019276\";\"Evin-Malmaison\";\"ascii\"\n\"3019276\";\"Evin\";\"other\"\n\"3019276\";\"Évin\";\"other\"\n\"3019280\";\"Évian-les-Bains\";\"main\"\n\"3019280\";\"Evian-les-Bains\";\"ascii\"\n\"3019280\";\"Evian\";\"other\"\n\"3019280\";\"Evijan le Ben\";\"other\"\n\"3019280\";\"ai wei ang lai ban\";\"other\"\n\"3019280\";\"evu~ian=re=ban\";\"other\"\n\"3019280\";\"Évian\";\"other\"\n\"3019280\";\"Евијан ле Бен\";\"other\"\n\"3019280\";\"エヴィアン＝レ＝バン\";\"other\"\n\"3019280\";\"埃維昂萊班\";\"other\"\n\"3019293\";\"Évenos\";\"main\"\n\"3019293\";\"Evenos\";\"ascii\"\n\"3019299\";\"Évaux-les-Bains\";\"main\"\n\"3019299\";\"Evaux-les-Bains\";\"ascii\"\n\"3019299\";\"Evaux\";\"other\"\n\"3019308\";\"Euville\";\"main\"\n\"3019314\";\"Eurre\";\"main\"\n\"3019320\";\"Eulmont\";\"main\"\n\"3019329\";\"Eu\";\"main\"\n\"3019330\";\"Etzling\";\"main\"\n\"3019335\";\"Étupes\";\"main\"\n\"3019335\";\"Etupes\";\"ascii\"\n\"3019349\";\"Étriché\";\"main\"\n\"3019349\";\"Etriche\";\"ascii\"\n\"3019354\";\"Étreux\";\"main\"\n\"3019354\";\"Etreux\";\"ascii\"\n\"3019355\";\"Étretat\";\"main\"\n\"3019355\";\"Etretat\";\"ascii\"\n\"3019355\";\"Ehtreta\";\"other\"\n\"3019355\";\"Этрета\";\"other\"\n\"3019363\";\"Étrépagny\";\"main\"\n\"3019363\";\"Etrepagny\";\"ascii\"\n\"3019364\";\"Étrembières\";\"main\"\n\"3019364\";\"Etrembieres\";\"ascii\"\n\"3019367\";\"Étrelles\";\"main\"\n\"3019367\";\"Etrelles\";\"ascii\"\n\"3019367\";\"Stredell\";\"other\"\n\"3019369\";\"Étreillers\";\"main\"\n\"3019369\";\"Etreillers\";\"ascii\"\n\"3019372\";\"Étréchy\";\"main\"\n\"3019372\";\"Etrechy\";\"ascii\"\n\"3019372\";\"Etrechy-la-Montagne\";\"other\"\n\"3019372\";\"Etréchy-la-Montagne\";\"other\"\n\"3019391\";\"Étoile-sur-Rhône\";\"main\"\n\"3019391\";\"Etoile-sur-Rhone\";\"ascii\"\n\"3019391\";\"Etoile\";\"other\"\n\"3019401\";\"Étival-lès-le-Mans\";\"main\"\n\"3019401\";\"Etival-les-le-Mans\";\"ascii\"\n\"3019401\";\"Etival\";\"other\"\n\"3019401\";\"Étival\";\"other\"\n\"3019402\";\"Étival-Clairefontaine\";\"main\"\n\"3019402\";\"Etival-Clairefontaine\";\"ascii\"\n\"3019402\";\"Etival\";\"other\"\n\"3019402\";\"Étival\";\"other\"\n\"3019406\";\"Étiolles\";\"main\"\n\"3019406\";\"Etiolles\";\"ascii\"\n\"3019414\";\"Éterville\";\"main\"\n\"3019414\";\"Eterville\";\"ascii\"\n\"3019423\";\"Étel\";\"main\"\n\"3019423\";\"Etel\";\"ascii\"\n\"3019423\";\"An Intel\";\"other\"\n\"3019433\";\"Etaux\";\"main\"\n\"3019433\";\"Eteaux\";\"other\"\n\"3019434\";\"Étauliers\";\"main\"\n\"3019434\";\"Etauliers\";\"ascii\"\n\"3019436\";\"Étaules\";\"main\"\n\"3019436\";\"Etaules\";\"ascii\"\n\"3019441\";\"Étaples\";\"main\"\n\"3019441\";\"Etaples\";\"ascii\"\n\"3019441\";\"Etaples-sur-Mer\";\"other\"\n\"3019441\";\"Montagne-sur-Mer\";\"other\"\n\"3019441\";\"Étaples-sur-Mer\";\"other\"\n\"3019443\";\"Étang-sur-Arroux\";\"main\"\n\"3019443\";\"Etang-sur-Arroux\";\"ascii\"\n\"3019443\";\"Etang\";\"other\"\n\"3019443\";\"Étang\";\"other\"\n\"3019458\";\"Étampes-sur-Marne\";\"main\"\n\"3019458\";\"Etampes-sur-Marne\";\"ascii\"\n\"3019458\";\"Etampes\";\"other\"\n\"3019458\";\"Étampes\";\"other\"\n\"3019459\";\"Étampes\";\"main\"\n\"3019459\";\"Etampes\";\"ascii\"\n\"3019459\";\"Ehtamp\";\"other\"\n\"3019459\";\"Этамп\";\"other\"\n\"3019468\";\"Étalans\";\"main\"\n\"3019468\";\"Etalans\";\"ascii\"\n\"3019471\";\"Étainhus\";\"main\"\n\"3019471\";\"Etainhus\";\"ascii\"\n\"3019474\";\"Étain\";\"main\"\n\"3019474\";\"Etain\";\"ascii\"\n\"3019478\";\"Étagnac\";\"main\"\n\"3019478\";\"Etagnac\";\"ascii\"\n\"3019480\";\"Étables-sur-Mer\";\"main\"\n\"3019480\";\"Etables-sur-Mer\";\"ascii\"\n\"3019480\";\"Etables\";\"other\"\n\"3019480\";\"Staol\";\"other\"\n\"3019480\";\"Étables\";\"other\"\n\"3019485\";\"Esvres\";\"main\"\n\"3019500\";\"Estrées-Saint-Denis\";\"main\"\n\"3019500\";\"Estrees-Saint-Denis\";\"ascii\"\n\"3019500\";\"Estrees-Franciade\";\"other\"\n\"3019500\";\"Estrées-Franciade\";\"other\"\n\"3019505\";\"Estrées\";\"main\"\n\"3019505\";\"Estrees\";\"ascii\"\n\"3019515\";\"Estrablin\";\"main\"\n\"3019528\";\"Estivareilles\";\"main\"\n\"3019532\";\"Estissac\";\"main\"\n\"3019532\";\"Lyebault-sur-Vanne\";\"other\"\n\"3019532\";\"Lyébault-sur-Vanne\";\"other\"\n\"3019532\";\"Val-Libre\";\"other\"\n\"3019536\";\"Estillac\";\"main\"\n\"3019545\";\"Estevelles\";\"main\"\n\"3019549\";\"Esternay\";\"main\"\n\"3019578\";\"Estaires\";\"main\"\n\"3019584\";\"Estagel\";\"main\"\n\"3019601\";\"Essômes-sur-Marne\";\"main\"\n\"3019601\";\"Essomes-sur-Marne\";\"ascii\"\n\"3019601\";\"Essomes\";\"other\"\n\"3019601\";\"Essômes\";\"other\"\n\"3019604\";\"Essigny-le-Grand\";\"main\"\n\"3019604\";\"Essigny\";\"other\"\n\"3019607\";\"Essey-lès-Nancy\";\"main\"\n\"3019607\";\"Essey-les-Nancy\";\"ascii\"\n\"3019607\";\"Essey\";\"other\"\n\"3019621\";\"Essert\";\"main\"\n\"3019631\";\"Essars\";\"main\"\n\"3019631\";\"Essars-lez-Bethune\";\"other\"\n\"3019631\";\"Essars-lez-Béthune\";\"other\"\n\"3019638\";\"Esquibien\";\"main\"\n\"3019638\";\"An Eskevien\";\"other\"\n\"3019640\";\"Esquerdes\";\"main\"\n\"3019643\";\"Esquelbecq\";\"main\"\n\"3019644\";\"Esquéhéries\";\"main\"\n\"3019644\";\"Esqueheries\";\"ascii\"\n\"3019695\";\"Espéraza\";\"main\"\n\"3019695\";\"Esperaza\";\"ascii\"\n\"3019695\";\"Esperasan\";\"other\"\n\"3019699\";\"Espelette\";\"main\"\n\"3019699\";\"Ezpeleta\";\"other\"\n\"3019716\";\"Espaly-Saint-Marcel\";\"main\"\n\"3019716\";\"Espaly\";\"other\"\n\"3019716\";\"Espaly-et-Marcel\";\"other\"\n\"3019717\";\"Espalion\";\"main\"\n\"3019733\";\"Esnandes\";\"main\"\n\"3019740\";\"Eslettes\";\"main\"\n\"3019755\";\"Escoutoux\";\"main\"\n\"3019766\";\"La Baule-Escoublac\";\"main\"\n\"3019766\";\"Ar Baol-Skoubleg\";\"other\"\n\"3019766\";\"Baule-Escoublac\";\"other\"\n\"3019766\";\"Escoublac\";\"other\"\n\"3019766\";\"Escoublac-la-Baule\";\"other\"\n\"3019766\";\"La Baule\";\"other\"\n\"3019810\";\"Esches\";\"main\"\n\"3019812\";\"Eschentzwiller\";\"main\"\n\"3019816\";\"Eschbach\";\"main\"\n\"3019817\";\"Eschau\";\"main\"\n\"3019820\";\"Escautpont\";\"main\"\n\"3019825\";\"Escaudœuvres\";\"main\"\n\"3019825\";\"Escaudoeuvres\";\"ascii\"\n\"3019827\";\"Escaudain\";\"main\"\n\"3019843\";\"Escalquens\";\"main\"\n\"3019854\";\"Esbly\";\"main\"\n\"3019858\";\"Ervy-le-Châtel\";\"main\"\n\"3019858\";\"Ervy-le-Chatel\";\"ascii\"\n\"3019858\";\"Ervy\";\"other\"\n\"3019865\";\"Erstein\";\"main\"\n\"3019870\";\"Erre\";\"main\"\n\"3019870\";\"Erre-en-Ostrevent\";\"other\"\n\"3019875\";\"Erquy\";\"main\"\n\"3019875\";\"Erge-ar-Mor\";\"other\"\n\"3019875\";\"Erquy-Plages\";\"other\"\n\"3019877\";\"Erquinghem-Lys\";\"main\"\n\"3019888\";\"Ernolsheim-Bruche\";\"main\"\n\"3019888\";\"Ernolsheim\";\"other\"\n\"3019895\";\"Ernée\";\"main\"\n\"3019895\";\"Ernee\";\"ascii\"\n\"3019897\";\"Ermont\";\"main\"\n\"3019920\";\"Ergué-Gabéric\";\"main\"\n\"3019920\";\"Ergue-Gaberic\";\"ascii\"\n\"3019920\";\"An Erge-Vras\";\"other\"\n\"3019930\";\"Erdeven\";\"main\"\n\"3019930\";\"An Ardeven\";\"other\"\n\"3019931\";\"Ercuis\";\"main\"\n\"3019940\";\"Ercé-près-Liffré\";\"main\"\n\"3019940\";\"Erce-pres-Liffre\";\"ascii\"\n\"3019940\";\"Erce\";\"other\"\n\"3019940\";\"Ercee-pres Liffre\";\"other\"\n\"3019940\";\"Ercé\";\"other\"\n\"3019940\";\"Ercée-près Liffré\";\"other\"\n\"3019940\";\"Herzieg-Liverieg\";\"other\"\n\"3019941\";\"Ercé-en-Lamée\";\"main\"\n\"3019941\";\"Erce-en-Lamee\";\"ascii\"\n\"3019941\";\"Erce\";\"other\"\n\"3019941\";\"Ercé\";\"other\"\n\"3019941\";\"Herzieg-Mez\";\"other\"\n\"3019943\";\"Erbrée\";\"main\"\n\"3019943\";\"Erbree\";\"ascii\"\n\"3019943\";\"Ervored\";\"other\"\n\"3019944\";\"Erbray\";\"main\"\n\"3019944\";\"Ervoreg\";\"other\"\n\"3019952\";\"Éragny\";\"main\"\n\"3019952\";\"Eragny\";\"ascii\"\n\"3019957\";\"Équihen-Plage\";\"main\"\n\"3019957\";\"Equihen-Plage\";\"ascii\"\n\"3019957\";\"Equihen\";\"other\"\n\"3019960\";\"Équeurdreville-Hainneville\";\"main\"\n\"3019960\";\"Equeurdreville-Hainneville\";\"ascii\"\n\"3019960\";\"Equeurdreville\";\"other\"\n\"3019962\";\"Équemauville\";\"main\"\n\"3019962\";\"Equemauville\";\"ascii\"\n\"3019969\";\"Épron\";\"main\"\n\"3019969\";\"Epron\";\"ascii\"\n\"3019977\";\"Eppeville\";\"main\"\n\"3019981\";\"Épouville\";\"main\"\n\"3019981\";\"Epouville\";\"ascii\"\n\"3019985\";\"Épône\";\"main\"\n\"3019985\";\"Epone\";\"ascii\"\n\"3020002\";\"Épinouze\";\"main\"\n\"3020002\";\"Epinouze\";\"ascii\"\n\"3020004\";\"Epiniac\";\"main\"\n\"3020004\";\"Epinac\";\"other\"\n\"3020004\";\"Sperneg\";\"other\"\n\"3020020\";\"Épinay-sur-Seine\";\"main\"\n\"3020020\";\"Epinay-sur-Seine\";\"ascii\"\n\"3020020\";\"Epinay\";\"other\"\n\"3020020\";\"Epine sir Sen\";\"other\"\n\"3020020\";\"Епине сир Сен\";\"other\"\n\"3020021\";\"Épinay-sur-Orge\";\"main\"\n\"3020021\";\"Epinay-sur-Orge\";\"ascii\"\n\"3020021\";\"Epinay\";\"other\"\n\"3020021\";\"Spinetum\";\"other\"\n\"3020021\";\"Épinay\";\"other\"\n\"3020024\";\"Épinay-sous-Sénart\";\"main\"\n\"3020024\";\"Epinay-sous-Senart\";\"ascii\"\n\"3020024\";\"Epinay\";\"other\"\n\"3020035\";\"Épinal\";\"main\"\n\"3020035\";\"Epinal\";\"ascii\"\n\"3020035\";\"Spinalium\";\"other\"\n\"3020035\";\"Spinalo\";\"other\"\n\"3020035\";\"abynal\";\"other\"\n\"3020035\";\"epinaru\";\"other\"\n\"3020035\";\"Епинал\";\"other\"\n\"3020035\";\"إبينال\";\"other\"\n\"3020035\";\"エピナル\";\"other\"\n\"3020036\";\"Épinac\";\"main\"\n\"3020036\";\"Epinac\";\"ascii\"\n\"3020036\";\"Epinac-les-Mines\";\"other\"\n\"3020036\";\"Épinac-les-Mines\";\"other\"\n\"3020043\";\"Épieds-en-Beauce\";\"main\"\n\"3020043\";\"Epieds-en-Beauce\";\"ascii\"\n\"3020043\";\"Epieds\";\"other\"\n\"3020051\";\"Epfig\";\"main\"\n\"3020053\";\"Épervans\";\"main\"\n\"3020053\";\"Epervans\";\"ascii\"\n\"3020057\";\"Épernon\";\"main\"\n\"3020057\";\"Epernon\";\"ascii\"\n\"3020062\";\"Épernay\";\"main\"\n\"3020062\";\"Epernay\";\"ascii\"\n\"3020062\";\"Eperne\";\"other\"\n\"3020062\";\"Еперне\";\"other\"\n\"3020065\";\"Éperlecques\";\"main\"\n\"3020065\";\"Eperlecques\";\"ascii\"\n\"3020077\";\"Épehy\";\"main\"\n\"3020077\";\"Epehy\";\"ascii\"\n\"3020094\";\"Épaignes\";\"main\"\n\"3020094\";\"Epaignes\";\"ascii\"\n\"3020097\";\"Épagny\";\"main\"\n\"3020097\";\"Epagny\";\"ascii\"\n\"3020108\";\"Envermeu\";\"main\"\n\"3020113\";\"Enval\";\"main\"\n\"3020116\";\"Entzheim\";\"main\"\n\"3020131\";\"Entre-deux-Guiers\";\"main\"\n\"3020135\";\"Entraygues-sur-Truyère\";\"main\"\n\"3020135\";\"Entraygues-sur-Truyere\";\"ascii\"\n\"3020135\";\"Entraygues\";\"other\"\n\"3020138\";\"Entrange\";\"main\"\n\"3020139\";\"Entrammes\";\"main\"\n\"3020142\";\"Entraigues-sur-la-Sorgue\";\"main\"\n\"3020142\";\"Entraigues\";\"other\"\n\"3020142\";\"Entraigues-sur-Sorgues\";\"other\"\n\"3020149\";\"Ensuès-la-Redonne\";\"main\"\n\"3020149\";\"Ensues-la-Redonne\";\"ascii\"\n\"3020149\";\"Ensues\";\"other\"\n\"3020149\";\"Ensuès\";\"other\"\n\"3020152\";\"Ensisheim\";\"main\"\n\"3020164\";\"Ennezat\";\"main\"\n\"3020165\";\"Ennevelin\";\"main\"\n\"3020165\";\"Ennevelin-Ardomprez\";\"other\"\n\"3020166\";\"Ennetières-en-Weppes\";\"main\"\n\"3020166\";\"Ennetieres-en-Weppes\";\"ascii\"\n\"3020166\";\"Ennetieres\";\"other\"\n\"3020166\";\"Ennetières\";\"other\"\n\"3020168\";\"Ennery\";\"main\"\n\"3020169\";\"Ennery\";\"main\"\n\"3020184\";\"Englefontaine\";\"main\"\n\"3020188\";\"Enghien-les-Bains\";\"main\"\n\"3020188\";\"Enghien\";\"other\"\n\"3020221\";\"Enchenberg\";\"main\"\n\"3020236\";\"Emmerin\";\"main\"\n\"3020245\";\"Émerchicourt\";\"main\"\n\"3020245\";\"Emerchicourt\";\"ascii\"\n\"3020247\";\"Émerainville\";\"main\"\n\"3020247\";\"Emerainville\";\"ascii\"\n\"3020251\";\"Embrun\";\"main\"\n\"3020251\";\"Ambrun\";\"other\"\n\"3020271\";\"Elven\";\"main\"\n\"3020271\";\"An Elven\";\"other\"\n\"3020275\";\"Éloyes\";\"main\"\n\"3020275\";\"Eloyes\";\"ascii\"\n\"3020281\";\"Elne\";\"main\"\n\"3020281\";\"Elna\";\"other\"\n\"3020283\";\"Elliant\";\"main\"\n\"3020283\";\"Eliant\";\"other\"\n\"3020300\";\"Éleu-dit-Leauwette\";\"main\"\n\"3020300\";\"Eleu-dit-Leauwette\";\"ascii\"\n\"3020300\";\"Eleu\";\"other\"\n\"3020307\";\"Elbeuf\";\"main\"\n\"3020307\";\"Ehl'bef\";\"other\"\n\"3020307\";\"Эльбеф\";\"other\"\n\"3020310\";\"Élancourt\";\"main\"\n\"3020310\";\"Elancourt\";\"ascii\"\n\"3020310\";\"Elenkur\";\"other\"\n\"3020310\";\"Еленкур\";\"other\"\n\"3020314\";\"Einville-au-Jard\";\"main\"\n\"3020314\";\"Einville\";\"other\"\n\"3020324\";\"Eguisheim\";\"main\"\n\"3020330\";\"Éguilles\";\"main\"\n\"3020330\";\"Eguilles\";\"ascii\"\n\"3020334\";\"Égriselles-le-Bocage\";\"main\"\n\"3020334\";\"Egriselles-le-Bocage\";\"ascii\"\n\"3020334\";\"Egriselles\";\"other\"\n\"3020335\";\"Égreville\";\"main\"\n\"3020335\";\"Egreville\";\"ascii\"\n\"3020346\";\"Égly\";\"main\"\n\"3020346\";\"Egly\";\"ascii\"\n\"3020358\";\"Égletons\";\"main\"\n\"3020358\";\"Egletons\";\"ascii\"\n\"3020374\";\"Edern\";\"main\"\n\"3020374\";\"Édern\";\"other\"\n\"3020392\";\"Écully\";\"main\"\n\"3020392\";\"Ecully\";\"ascii\"\n\"3020396\";\"Écuisses\";\"main\"\n\"3020396\";\"Ecuisses\";\"ascii\"\n\"3020401\";\"Écuelles\";\"main\"\n\"3020401\";\"Ecuelles\";\"ascii\"\n\"3020405\";\"Écueillé\";\"main\"\n\"3020405\";\"Ecueille\";\"ascii\"\n\"3020411\";\"Écrouves\";\"main\"\n\"3020411\";\"Ecrouves\";\"ascii\"\n\"3020425\";\"Écrainville\";\"main\"\n\"3020425\";\"Ecrainville\";\"ascii\"\n\"3020426\";\"Ecquevilly\";\"main\"\n\"3020429\";\"Ecques\";\"main\"\n\"3020432\";\"Écoyeux\";\"main\"\n\"3020432\";\"Ecoyeux\";\"ascii\"\n\"3020437\";\"Écourt-Saint-Quentin\";\"main\"\n\"3020437\";\"Ecourt-Saint-Quentin\";\"ascii\"\n\"3020439\";\"Écouflant\";\"main\"\n\"3020439\";\"Ecouflant\";\"ascii\"\n\"3020440\";\"Écouen\";\"main\"\n\"3020440\";\"Ecouen\";\"ascii\"\n\"3020441\";\"Écouché\";\"main\"\n\"3020441\";\"Ecouche\";\"ascii\"\n\"3020462\";\"Écommoy\";\"main\"\n\"3020462\";\"Ecommoy\";\"ascii\"\n\"3020462\";\"Ecommay\";\"other\"\n\"3020488\";\"Eckwersheim\";\"main\"\n\"3020489\";\"Eckbolsheim\";\"main\"\n\"3020495\";\"Échirolles\";\"main\"\n\"3020495\";\"Echirolles\";\"ascii\"\n\"3020495\";\"Eshirol\";\"other\"\n\"3020495\";\"Еширол\";\"other\"\n\"3020497\";\"Échiré\";\"main\"\n\"3020497\";\"Echire\";\"ascii\"\n\"3020500\";\"Échillais\";\"main\"\n\"3020500\";\"Echillais\";\"ascii\"\n\"3020510\";\"Échenoz-la-Méline\";\"main\"\n\"3020510\";\"Echenoz-la-Meline\";\"ascii\"\n\"3020512\";\"Échenevex\";\"main\"\n\"3020512\";\"Echenevex\";\"ascii\"\n\"3020548\";\"Échalas\";\"main\"\n\"3020548\";\"Echalas\";\"ascii\"\n\"3020565\";\"Écaillon\";\"main\"\n\"3020565\";\"Ecaillon\";\"ascii\"\n\"3020569\";\"Ébreuil\";\"main\"\n\"3020569\";\"Ebreuil\";\"ascii\"\n\"3020576\";\"Ebersheim\";\"main\"\n\"3020584\";\"Eauze\";\"main\"\n\"3020593\";\"Eaunes\";\"main\"\n\"3020601\";\"Eaubonne\";\"main\"\n\"3020614\";\"Duttlenheim\";\"main\"\n\"3020620\";\"Durtol\";\"main\"\n\"3020621\";\"Durtal\";\"main\"\n\"3020624\";\"Durrenbach\";\"main\"\n\"3020648\";\"Durdat-Larequille\";\"main\"\n\"3020648\";\"Larequille\";\"other\"\n\"3020664\";\"Duras\";\"main\"\n\"3020671\";\"Duppigheim\";\"main\"\n\"3020678\";\"Dun-sur-Auron\";\"main\"\n\"3020678\";\"Dun\";\"other\"\n\"3020681\";\"Dun-le-Palestel\";\"main\"\n\"3020681\";\"Dun-le-Palleteau\";\"other\"\n\"3020681\";\"Dun-le-Pelletau\";\"other\"\n\"3020686\";\"Dunkerque\";\"main\"\n\"3020686\";\"Djunkerk\";\"other\"\n\"3020686\";\"Duenkirchen\";\"other\"\n\"3020686\";\"Duinkerke\";\"other\"\n\"3020686\";\"Dukark\";\"other\"\n\"3020686\";\"Dun-Libre\";\"other\"\n\"3020686\";\"Dune-Libre\";\"other\"\n\"3020686\";\"Dunes-Libres\";\"other\"\n\"3020686\";\"Dunkierka\";\"other\"\n\"3020686\";\"Dunkirk\";\"other\"\n\"3020686\";\"Dunquerque\";\"other\"\n\"3020686\";\"Duunkerke\";\"other\"\n\"3020686\";\"Dünkirchen\";\"other\"\n\"3020686\";\"Lungsod ng Dunkerque\";\"other\"\n\"3020686\";\"dainkarka\";\"other\"\n\"3020686\";\"dankeruku\";\"other\"\n\"3020686\";\"dun ke er ke\";\"other\"\n\"3020686\";\"Дюнкерк\";\"other\"\n\"3020686\";\"ڈنکرک\";\"other\"\n\"3020686\";\"दैंकर्क\";\"other\"\n\"3020686\";\"ダンケルク\";\"other\"\n\"3020686\";\"敦刻尔克\";\"other\"\n\"3020688\";\"Dunières\";\"main\"\n\"3020688\";\"Dunieres\";\"ascii\"\n\"3020705\";\"Duisans\";\"main\"\n\"3020710\";\"Dugny-sur-Meuse\";\"main\"\n\"3020710\";\"Dugny\";\"other\"\n\"3020712\";\"Dugny\";\"main\"\n\"3020720\";\"Duclair\";\"main\"\n\"3020722\";\"Ducey\";\"main\"\n\"3020730\";\"Dry\";\"main\"\n\"3020736\";\"Drusenheim\";\"main\"\n\"3020737\";\"Drumettaz-Clarafond\";\"main\"\n\"3020737\";\"Drumettaz\";\"other\"\n\"3020740\";\"Drulingen\";\"main\"\n\"3020747\";\"Druelle\";\"main\"\n\"3020770\";\"Droue-sur-Drouette\";\"main\"\n\"3020770\";\"Droue\";\"other\"\n\"3020770\";\"Droué\";\"other\"\n\"3020771\";\"Droué\";\"main\"\n\"3020771\";\"Droue\";\"ascii\"\n\"3020792\";\"Drocourt\";\"main\"\n\"3020810\";\"Dreux\";\"main\"\n\"3020810\";\"Dre\";\"other\"\n\"3020810\";\"Дре\";\"other\"\n\"3020813\";\"Dreuil-lès-Amiens\";\"main\"\n\"3020813\";\"Dreuil-les-Amiens\";\"ascii\"\n\"3020813\";\"Dreuil\";\"other\"\n\"3020818\";\"Dreslincourt\";\"main\"\n\"3020825\";\"Drémil-Lafage\";\"main\"\n\"3020825\";\"Dremil-Lafage\";\"ascii\"\n\"3020825\";\"Dremil\";\"other\"\n\"3020828\";\"Drefféac\";\"main\"\n\"3020828\";\"Dreffeac\";\"ascii\"\n\"3020828\";\"Devrieg\";\"other\"\n\"3020832\";\"Draveil\";\"main\"\n\"3020832\";\"Dravej\";\"other\"\n\"3020832\";\"Дравеј\";\"other\"\n\"3020834\";\"Drap\";\"main\"\n\"3020839\";\"Drancy\";\"main\"\n\"3020839\";\"Dransi\";\"other\"\n\"3020839\";\"Дранси\";\"other\"\n\"3020839\";\"דראנסי\";\"other\"\n\"3020847\";\"Drain\";\"main\"\n\"3020850\";\"Draguignan\";\"main\"\n\"3020850\";\"Draginan\";\"other\"\n\"3020850\";\"Draguinhan\";\"other\"\n\"3020850\";\"Драгињан\";\"other\"\n\"3020855\";\"Dracy-le-Fort\";\"main\"\n\"3020855\";\"Dracy\";\"other\"\n\"3020865\";\"Dozulé\";\"main\"\n\"3020865\";\"Dozule\";\"ascii\"\n\"3020867\";\"Doyet\";\"main\"\n\"3020871\";\"Douzy\";\"main\"\n\"3020886\";\"Douvrin\";\"main\"\n\"3020887\";\"Douvres-la-Délivrande\";\"main\"\n\"3020887\";\"Douvres-la-Delivrande\";\"ascii\"\n\"3020887\";\"Douvres\";\"other\"\n\"3020894\";\"Douvaine\";\"main\"\n\"3020900\";\"Doussard\";\"main\"\n\"3020916\";\"Dourgne\";\"main\"\n\"3020917\";\"Dourges\";\"main\"\n\"3020917\";\"Dourques\";\"other\"\n\"3020925\";\"Dourdan\";\"main\"\n\"3020925\";\"Durdan\";\"other\"\n\"3020925\";\"Дурдан\";\"other\"\n\"3020944\";\"Doullens\";\"main\"\n\"3020953\";\"Doulaincourt-Saucourt\";\"main\"\n\"3020964\";\"Doué-la-Fontaine\";\"main\"\n\"3020964\";\"Doue-la-Fontaine\";\"ascii\"\n\"3020964\";\"Doue\";\"other\"\n\"3020964\";\"Doué\";\"other\"\n\"3020968\";\"Doue\";\"main\"\n\"3020971\";\"Doudeville\";\"main\"\n\"3020980\";\"Douchy-les-Mines\";\"main\"\n\"3020980\";\"Douchy\";\"other\"\n\"3020983\";\"Douchy\";\"main\"\n\"3020991\";\"Doubs\";\"main\"\n\"3020996\";\"Douarnenez\";\"main\"\n\"3020996\";\"Douamenez\";\"other\"\n\"3021000\";\"Douai\";\"main\"\n\"3021000\";\"Dowaai\";\"other\"\n\"3021000\";\"Due\";\"other\"\n\"3021000\";\"dwyh\";\"other\"\n\"3021000\";\"Дуе\";\"other\"\n\"3021000\";\"دويه\";\"other\"\n\"3021004\";\"Dossenheim-sur-Zinsel\";\"main\"\n\"3021004\";\"Dossenheim\";\"other\"\n\"3021013\";\"Dortan\";\"main\"\n\"3021026\";\"Dornes\";\"main\"\n\"3021034\";\"Dormans\";\"main\"\n\"3021035\";\"Dorlisheim\";\"main\"\n\"3021035\";\"Dorliskhajm\";\"other\"\n\"3021035\";\"Дорлисхајм\";\"other\"\n\"3021045\";\"Dordives\";\"main\"\n\"3021058\";\"Donzy\";\"main\"\n\"3021061\";\"Donzère\";\"main\"\n\"3021061\";\"Donzere\";\"ascii\"\n\"3021062\";\"Donzenac\";\"main\"\n\"3021067\";\"Donville-les-Bains\";\"main\"\n\"3021067\";\"Donville\";\"other\"\n\"3021077\";\"Donnery\";\"main\"\n\"3021080\";\"Donnemarie-Dontilly\";\"main\"\n\"3021080\";\"Donnemarie\";\"other\"\n\"3021080\";\"Donnemarie-en-Montois\";\"other\"\n\"3021093\";\"Donges\";\"main\"\n\"3021093\";\"Donez\";\"other\"\n\"3021097\";\"Doncourt-lès-Conflans\";\"main\"\n\"3021097\";\"Doncourt-les-Conflans\";\"ascii\"\n\"3021097\";\"Doncourt\";\"other\"\n\"3021097\";\"Doncourt-en-Jarnisy\";\"other\"\n\"3021100\";\"Donchery\";\"main\"\n\"3021105\";\"Don\";\"main\"\n\"3021124\";\"Dompierre-sur-Yon\";\"main\"\n\"3021124\";\"Dompierre\";\"other\"\n\"3021125\";\"Dompierre-sur-Veyle\";\"main\"\n\"3021125\";\"Dompierre\";\"other\"\n\"3021128\";\"Dompierre-sur-Mer\";\"main\"\n\"3021128\";\"Dompierre\";\"other\"\n\"3021133\";\"Dompierre-sur-Besbre\";\"main\"\n\"3021133\";\"Dompierre\";\"other\"\n\"3021133\";\"Source-Libre\";\"other\"\n\"3021150\";\"Domont\";\"main\"\n\"3021156\";\"Domme\";\"main\"\n\"3021164\";\"Dommartin-lès-Toul\";\"main\"\n\"3021164\";\"Dommartin-les-Toul\";\"ascii\"\n\"3021164\";\"Dommartin\";\"other\"\n\"3021165\";\"Dommartin-lès-Remiremont\";\"main\"\n\"3021165\";\"Dommartin-les-Remiremont\";\"ascii\"\n\"3021165\";\"Dommartin\";\"other\"\n\"3021181\";\"Dom-le-Mesnil\";\"main\"\n\"3021181\";\"Dom\";\"other\"\n\"3021190\";\"Domgermain\";\"main\"\n\"3021193\";\"Domfront\";\"main\"\n\"3021204\";\"Domessin\";\"main\"\n\"3021209\";\"Domérat\";\"main\"\n\"3021209\";\"Domerat\";\"ascii\"\n\"3021210\";\"Domène\";\"main\"\n\"3021210\";\"Domene\";\"ascii\"\n\"3021221\";\"Dombasle-sur-Meurthe\";\"main\"\n\"3021221\";\"Dombasle\";\"other\"\n\"3021230\";\"Domart-en-Ponthieu\";\"main\"\n\"3021230\";\"Domart\";\"other\"\n\"3021231\";\"Domarin\";\"main\"\n\"3021233\";\"Domancy\";\"main\"\n\"3021235\";\"Domalain\";\"main\"\n\"3021235\";\"Domalan\";\"other\"\n\"3021240\";\"Domagné\";\"main\"\n\"3021240\";\"Domagne\";\"ascii\"\n\"3021240\";\"Dovanieg\";\"other\"\n\"3021244\";\"Dolus-d'Oléron\";\"main\"\n\"3021244\";\"Dolus-d'Oleron\";\"ascii\"\n\"3021244\";\"Dulus\";\"other\"\n\"3021247\";\"Dolomieu\";\"main\"\n\"3021247\";\"Dolomieux\";\"other\"\n\"3021254\";\"Dollon\";\"main\"\n\"3021263\";\"Dole\";\"main\"\n\"3021263\";\"Dolja\";\"other\"\n\"3021263\";\"Доля\";\"other\"\n\"3021264\";\"Dol-de-Bretagne\";\"main\"\n\"3021264\";\"Bro Zol\";\"other\"\n\"3021264\";\"Dol\";\"other\"\n\"3021277\";\"Doingt\";\"main\"\n\"3021283\";\"Dogneville\";\"main\"\n\"3021288\";\"Docelles\";\"main\"\n\"3021293\";\"Dizy\";\"main\"\n\"3021296\";\"Divonne-les-Bains\";\"main\"\n\"3021296\";\"Divonne\";\"other\"\n\"3021298\";\"Divion\";\"main\"\n\"3021298\";\"Divión\";\"other\"\n\"3021301\";\"Dives-sur-Mer\";\"main\"\n\"3021301\";\"Dives\";\"other\"\n\"3021314\";\"Distroff\";\"main\"\n\"3021315\";\"Distré\";\"main\"\n\"3021315\";\"Distre\";\"ascii\"\n\"3021319\";\"Dissay\";\"main\"\n\"3021319\";\"Dissais\";\"other\"\n\"3021328\";\"Dirinon\";\"main\"\n\"3021328\";\"Dirinonn\";\"other\"\n\"3021330\";\"Dirac\";\"main\"\n\"3021333\";\"Diou\";\"main\"\n\"3021342\";\"Dinsheim-sur-Bruche\";\"main\"\n\"3021345\";\"Dingy-Saint-Clair\";\"main\"\n\"3021345\";\"Dingy\";\"other\"\n\"3021345\";\"Dingy-Parmelan\";\"other\"\n\"3021347\";\"Dingsheim\";\"main\"\n\"3021347\";\"Dingskhajm\";\"other\"\n\"3021347\";\"Дингсхајм\";\"other\"\n\"3021348\";\"Dingé\";\"main\"\n\"3021348\";\"Dinge\";\"ascii\"\n\"3021348\";\"Dingad\";\"other\"\n\"3021349\";\"Dinéault\";\"main\"\n\"3021349\";\"Dineault\";\"ascii\"\n\"3021349\";\"Dineol\";\"other\"\n\"3021351\";\"Dinard\";\"main\"\n\"3021351\";\"Dinard-Saint-Enogat\";\"other\"\n\"3021351\";\"Dinarzh\";\"other\"\n\"3021356\";\"Dinan\";\"main\"\n\"3021372\";\"Dijon\";\"main\"\n\"3021372\";\"Digione\";\"other\"\n\"3021372\";\"Dij·on\";\"other\"\n\"3021372\";\"Divio\";\"other\"\n\"3021372\";\"Diviodunum\";\"other\"\n\"3021372\";\"Dizhon\";\"other\"\n\"3021372\";\"di rong\";\"other\"\n\"3021372\";\"dijom\";\"other\"\n\"3021372\";\"dijon\";\"other\"\n\"3021372\";\"dyz'wn\";\"other\"\n\"3021372\";\"Дижон\";\"other\"\n\"3021372\";\"דיז'ון\";\"other\"\n\"3021372\";\"दीजों\";\"other\"\n\"3021372\";\"ディジョン\";\"other\"\n\"3021372\";\"第戎\";\"other\"\n\"3021376\";\"Digosville\";\"main\"\n\"3021377\";\"Digoin\";\"main\"\n\"3021382\";\"Digne-les-Bains\";\"main\"\n\"3021382\";\"Digne\";\"other\"\n\"3021383\";\"Dignac\";\"main\"\n\"3021387\";\"Diges\";\"main\"\n\"3021392\";\"Dieuze\";\"main\"\n\"3021394\";\"Dieulouard\";\"main\"\n\"3021394\";\"Scarpone\";\"other\"\n\"3021397\";\"Dieulefit\";\"main\"\n\"3021397\";\"Mont-Jabron\";\"other\"\n\"3021398\";\"Dieue-sur-Meuse\";\"main\"\n\"3021398\";\"Dieue\";\"other\"\n\"3021402\";\"Dietwiller\";\"main\"\n\"3021403\";\"Diesen\";\"main\"\n\"3021411\";\"Dieppe\";\"main\"\n\"3021411\";\"D'ep\";\"other\"\n\"3021411\";\"Dijep\";\"other\"\n\"3021411\";\"Djep\";\"other\"\n\"3021411\";\"Дијеп\";\"other\"\n\"3021411\";\"Дьеп\";\"other\"\n\"3021411\";\"Дјеп\";\"other\"\n\"3021419\";\"Diémoz\";\"main\"\n\"3021419\";\"Diemoz\";\"ascii\"\n\"3021420\";\"Diemeringen\";\"main\"\n\"3021432\";\"Diebling\";\"main\"\n\"3021435\";\"Die\";\"main\"\n\"3021435\";\"Dia\";\"other\"\n\"3021435\";\"Diá\";\"other\"\n\"3021437\";\"Didenheim\";\"main\"\n\"3021458\";\"Dhuizon\";\"main\"\n\"3021458\";\"Dhuison\";\"other\"\n\"3021472\";\"Deyvillers\";\"main\"\n\"3021484\";\"Déville-lès-Rouen\";\"main\"\n\"3021484\";\"Deville-les-Rouen\";\"ascii\"\n\"3021484\";\"Deville\";\"other\"\n\"3021484\";\"Déville\";\"other\"\n\"3021486\";\"Deville\";\"main\"\n\"3021493\";\"Devecey\";\"main\"\n\"3021513\";\"Deûlemont\";\"main\"\n\"3021513\";\"Deulemont\";\"ascii\"\n\"3021516\";\"Deuil-la-Barre\";\"main\"\n\"3021516\";\"Dej la Bar\";\"other\"\n\"3021516\";\"Deuil\";\"other\"\n\"3021516\";\"Деј ла Бар\";\"other\"\n\"3021518\";\"Dettwiller\";\"main\"\n\"3021518\";\"Detviler\";\"other\"\n\"3021518\";\"Детвилер\";\"other\"\n\"3021524\";\"Desvres\";\"main\"\n\"3021532\";\"Dessenheim\";\"main\"\n\"3021543\";\"Désertines\";\"main\"\n\"3021543\";\"Desertines\";\"ascii\"\n\"3021550\";\"Désaignes\";\"main\"\n\"3021550\";\"Desaignes\";\"ascii\"\n\"3021552\";\"Derval\";\"main\"\n\"3021552\";\"Derwal\";\"other\"\n\"3021552\";\"Montagne-sur-Kurel\";\"other\"\n\"3021570\";\"Déols\";\"main\"\n\"3021570\";\"Deols\";\"ascii\"\n\"3021570\";\"Cereale\";\"other\"\n\"3021570\";\"Céréale\";\"other\"\n\"3021591\";\"Denicé\";\"main\"\n\"3021591\";\"Denice\";\"ascii\"\n\"3021592\";\"Denguin\";\"main\"\n\"3021601\";\"Denée\";\"main\"\n\"3021601\";\"Denee\";\"ascii\"\n\"3021605\";\"Denain\";\"main\"\n\"3021605\";\"Danen\";\"other\"\n\"3021605\";\"Данен\";\"other\"\n\"3021609\";\"Démouville\";\"main\"\n\"3021609\";\"Demouville\";\"ascii\"\n\"3021611\";\"Demigny\";\"main\"\n\"3021629\";\"Delle\";\"main\"\n\"3021629\";\"Dattenried\";\"other\"\n\"3021661\";\"Decize\";\"main\"\n\"3021661\";\"Decize-le-Rocher\";\"other\"\n\"3021661\";\"Rocher-la-Montagne\";\"other\"\n\"3021662\";\"Décines-Charpieu\";\"main\"\n\"3021662\";\"Decines-Charpieu\";\"ascii\"\n\"3021662\";\"Decines\";\"other\"\n\"3021662\";\"Décines\";\"other\"\n\"3021663\";\"Dechy\";\"main\"\n\"3021664\";\"Decazeville\";\"main\"\n\"3021668\";\"Deauville\";\"main\"\n\"3021668\";\"Deauville-les-Bains\";\"other\"\n\"3021668\";\"Dovil'\";\"other\"\n\"3021668\";\"Довиль\";\"other\"\n\"3021670\";\"Dax\";\"main\"\n\"3021670\";\"Akize\";\"other\"\n\"3021670\";\"Daks\";\"other\"\n\"3021670\";\"Lepelletier\";\"other\"\n\"3021670\";\"Дакс\";\"other\"\n\"3021676\";\"Davézieux\";\"main\"\n\"3021676\";\"Davezieux\";\"ascii\"\n\"3021682\";\"Daux\";\"main\"\n\"3021688\";\"Daumeray\";\"main\"\n\"3021691\";\"Dauendorf\";\"main\"\n\"3021691\";\"Дауендорф\";\"other\"\n\"3021705\";\"Dasle\";\"main\"\n\"3021706\";\"Darvoy\";\"main\"\n\"3021713\";\"Darnieulles\";\"main\"\n\"3021716\";\"Darney\";\"main\"\n\"3021717\";\"Darnétal\";\"main\"\n\"3021717\";\"Darnetal\";\"ascii\"\n\"3021725\";\"Dargnies\";\"main\"\n\"3021729\";\"Dardilly\";\"main\"\n\"3021747\";\"Daoulas\";\"main\"\n\"3021747\";\"Daoulaz\";\"other\"\n\"3021757\";\"Dannes\";\"main\"\n\"3021760\";\"Dannemarie-sur-Crête\";\"main\"\n\"3021760\";\"Dannemarie-sur-Crete\";\"ascii\"\n\"3021760\";\"Dannemarie\";\"other\"\n\"3021762\";\"Dannemarie\";\"main\"\n\"3021767\";\"Danjoutin\";\"main\"\n\"3021778\";\"Dangé-Saint-Romain\";\"main\"\n\"3021778\";\"Dange-Saint-Romain\";\"ascii\"\n\"3021795\";\"Damville\";\"main\"\n\"3021803\";\"Damprichard\";\"main\"\n\"3021806\";\"Dampmart\";\"main\"\n\"3021809\";\"Dampierre-sur-Salon\";\"main\"\n\"3021809\";\"Dampierre\";\"other\"\n\"3021822\";\"Dampierre-les-Bois\";\"main\"\n\"3021822\";\"Dampierre\";\"other\"\n\"3021829\";\"Dampierre-en-Burly\";\"main\"\n\"3021829\";\"Dampierre\";\"other\"\n\"3021835\";\"Dampierre-en-Yvelines\";\"main\"\n\"3021839\";\"Dampierre\";\"main\"\n\"3021841\";\"Damparis\";\"main\"\n\"3021848\";\"Dammartin-en-Goële\";\"main\"\n\"3021848\";\"Dammartin-en-Goele\";\"ascii\"\n\"3021848\";\"Dammartin\";\"other\"\n\"3021852\";\"Dammarie-les-Lys\";\"main\"\n\"3021852\";\"Dammarie\";\"other\"\n\"3021852\";\"Dammarie-les-Fontaines\";\"other\"\n\"3021854\";\"Dammarie\";\"main\"\n\"3021859\";\"Damigny\";\"main\"\n\"3021861\";\"Damgan\";\"main\"\n\"3021861\";\"Dagman\";\"other\"\n\"3021866\";\"Damery\";\"main\"\n\"3021872\";\"Damelevières\";\"main\"\n\"3021872\";\"Damelevieres\";\"ascii\"\n\"3021888\";\"Dambach-la-Ville\";\"main\"\n\"3021888\";\"Dambach\";\"other\"\n\"3021888\";\"Dambch\";\"other\"\n\"3021890\";\"Damazan\";\"main\"\n\"3021890\";\"Damazan-le-Republicain\";\"other\"\n\"3021890\";\"Damazan-le-Républicain\";\"other\"\n\"3021902\";\"Dallet\";\"main\"\n\"3021909\";\"Daix\";\"main\"\n\"3021911\";\"Dainville\";\"main\"\n\"3021927\";\"Dagneux\";\"main\"\n\"3021927\";\"Dagnieu\";\"other\"\n\"3021930\";\"Dadonville\";\"main\"\n\"3021931\";\"Dachstein\";\"main\"\n\"3021933\";\"Dabo\";\"main\"\n\"3021933\";\"Dagsburg\";\"other\"\n\"3021935\";\"Cysoing\";\"main\"\n\"3021945\";\"Cuzieu\";\"main\"\n\"3021954\";\"Cuxac-Cabardès\";\"main\"\n\"3021954\";\"Cuxac-Cabardes\";\"ascii\"\n\"3021954\";\"Cuxac\";\"other\"\n\"3021965\";\"Cuverville\";\"main\"\n\"3021976\";\"Cuttoli-Corticchiato\";\"main\"\n\"3021978\";\"Cusy\";\"main\"\n\"3021980\";\"Custines\";\"main\"\n\"3021980\";\"Port-sur-Moselle\";\"other\"\n\"3021993\";\"Cusset\";\"main\"\n\"3021999\";\"Cussac\";\"main\"\n\"3022002\";\"Cussac-Fort-Médoc\";\"main\"\n\"3022002\";\"Cussac-Fort-Medoc\";\"ascii\"\n\"3022003\";\"Cussac-sur-Loire\";\"main\"\n\"3022016\";\"Curtin\";\"main\"\n\"3022036\";\"Curgy\";\"main\"\n\"3022037\";\"Curgies\";\"main\"\n\"3022071\";\"Cunlhat\";\"main\"\n\"3022079\";\"Cunac\";\"main\"\n\"3022093\";\"Culoz\";\"main\"\n\"3022100\";\"Culhat\";\"main\"\n\"3022119\";\"Cuisiat\";\"main\"\n\"3022121\";\"Cuisery\";\"main\"\n\"3022123\";\"Cuise-la-Motte\";\"main\"\n\"3022123\";\"Cuise\";\"other\"\n\"3022124\";\"Cuiseaux\";\"main\"\n\"3022133\";\"Cuincy\";\"main\"\n\"3022134\";\"Cuinchy\";\"main\"\n\"3022151\";\"Cugnaux\";\"main\"\n\"3022151\";\"Cugnaux-Vingtcasses\";\"other\"\n\"3022152\";\"Cuges-les-Pins\";\"main\"\n\"3022152\";\"Cuges\";\"other\"\n\"3022153\";\"Cugand\";\"main\"\n\"3022153\";\"Kugant\";\"other\"\n\"3022154\";\"Cuffy\";\"main\"\n\"3022155\";\"Cuffies\";\"main\"\n\"3022158\";\"Cuers\";\"main\"\n\"3022164\";\"Cucuron\";\"main\"\n\"3022167\";\"Cucq\";\"main\"\n\"3022177\";\"Cubzac-les-Ponts\";\"main\"\n\"3022177\";\"Cubzac\";\"other\"\n\"3022187\";\"Cublize\";\"main\"\n\"3022192\";\"Cublac\";\"main\"\n\"3022192\";\"Cubiac\";\"other\"\n\"3022215\";\"Crusnes\";\"main\"\n\"3022217\";\"Cruseilles\";\"main\"\n\"3022229\";\"Cruet\";\"main\"\n\"3022238\";\"Cruas\";\"main\"\n\"3022242\";\"Crozon\";\"main\"\n\"3022242\";\"Kraozon\";\"other\"\n\"3022242\";\"Kroazon\";\"other\"\n\"3022267\";\"Crouy-sur-Ourcq\";\"main\"\n\"3022267\";\"Crouy\";\"other\"\n\"3022269\";\"Crouy-en-Thelle\";\"main\"\n\"3022269\";\"Crouy\";\"other\"\n\"3022271\";\"Crouy\";\"main\"\n\"3022282\";\"Crottet\";\"main\"\n\"3022285\";\"Croth\";\"main\"\n\"3022300\";\"Crossac\";\"main\"\n\"3022300\";\"Kraozieg\";\"other\"\n\"3022301\";\"Crosne\";\"main\"\n\"3022301\";\"Crosnes\";\"other\"\n\"3022331\";\"Crolles\";\"main\"\n\"3022376\";\"Croix\";\"main\"\n\"3022380\";\"Croissy-sur-Seine\";\"main\"\n\"3022380\";\"Croissy\";\"other\"\n\"3022382\";\"Croissy-Beaubourg\";\"main\"\n\"3022382\";\"Croissy-Beaucourt\";\"other\"\n\"3022386\";\"Croisilles\";\"main\"\n\"3022433\";\"Crissey\";\"main\"\n\"3022438\";\"Crisolles\";\"main\"\n\"3022447\";\"Criquebeuf-sur-Seine\";\"main\"\n\"3022447\";\"Criquebeuf\";\"other\"\n\"3022461\";\"Criel-sur-Mer\";\"main\"\n\"3022461\";\"Criel\";\"other\"\n\"3022472\";\"Crézancy\";\"main\"\n\"3022472\";\"Crezancy\";\"ascii\"\n\"3022480\";\"Creysse\";\"main\"\n\"3022482\";\"Creys-Mépieu\";\"main\"\n\"3022482\";\"Creys-Mepieu\";\"ascii\"\n\"3022482\";\"Creys\";\"other\"\n\"3022482\";\"Creys-Pusigneu\";\"other\"\n\"3022491\";\"Crevin\";\"main\"\n\"3022491\";\"Crévin\";\"other\"\n\"3022491\";\"Kreven\";\"other\"\n\"3022498\";\"Crèvecœur-le-Grand\";\"main\"\n\"3022498\";\"Crevecoeur-le-Grand\";\"ascii\"\n\"3022498\";\"Crevecoeur\";\"other\"\n\"3022498\";\"Crèvecoeur\";\"other\"\n\"3022509\";\"Creuzier-le-Vieux\";\"main\"\n\"3022513\";\"Creutzwald\";\"main\"\n\"3022513\";\"Creutzwald-la-Croix\";\"other\"\n\"3022513\";\"Kreuzwald\";\"other\"\n\"3022523\";\"Creully\";\"main\"\n\"3022530\";\"Créteil\";\"main\"\n\"3022530\";\"Creteil\";\"ascii\"\n\"3022530\";\"Kretej\";\"other\"\n\"3022530\";\"kureteiyu\";\"other\"\n\"3022530\";\"Кретей\";\"other\"\n\"3022530\";\"Кретеј\";\"other\"\n\"3022530\";\"クレテイユ\";\"other\"\n\"3022540\";\"Crest\";\"main\"\n\"3022549\";\"Cresserons\";\"main\"\n\"3022559\";\"Crespin\";\"main\"\n\"3022562\";\"Crespières\";\"main\"\n\"3022562\";\"Crespieres\";\"ascii\"\n\"3022569\";\"Crépy-en-Valois\";\"main\"\n\"3022569\";\"Crepy-en-Valois\";\"ascii\"\n\"3022569\";\"Bouillant-Germinal\";\"other\"\n\"3022569\";\"Crepy\";\"other\"\n\"3022569\";\"Crépy\";\"other\"\n\"3022570\";\"Crépy\";\"main\"\n\"3022570\";\"Crepy\";\"ascii\"\n\"3022570\";\"Crepy-en-Laonnois\";\"other\"\n\"3022570\";\"Crépy-en-Laonnois\";\"other\"\n\"3022585\";\"Créon\";\"main\"\n\"3022585\";\"Creon\";\"ascii\"\n\"3022588\";\"Creney-près-Troyes\";\"main\"\n\"3022588\";\"Creney-pres-Troyes\";\"ascii\"\n\"3022588\";\"Creney\";\"other\"\n\"3022600\";\"Crémieu\";\"main\"\n\"3022600\";\"Cremieu\";\"ascii\"\n\"3022608\";\"Creissels\";\"main\"\n\"3022609\";\"Creissan\";\"main\"\n\"3022610\";\"Creil\";\"main\"\n\"3022610\";\"Krej\";\"other\"\n\"3022610\";\"Крей\";\"other\"\n\"3022610\";\"Креј\";\"other\"\n\"3022611\";\"Créhen\";\"main\"\n\"3022611\";\"Crehen\";\"ascii\"\n\"3022611\";\"Krehen\";\"other\"\n\"3022612\";\"Créhange\";\"main\"\n\"3022612\";\"Crehange\";\"ascii\"\n\"3022612\";\"Grehange\";\"other\"\n\"3022612\";\"Gréhange\";\"other\"\n\"3022613\";\"Crégy-lès-Meaux\";\"main\"\n\"3022613\";\"Cregy-les-Meaux\";\"ascii\"\n\"3022613\";\"Cregy\";\"other\"\n\"3022613\";\"Crégy\";\"other\"\n\"3022619\";\"Crédin\";\"main\"\n\"3022619\";\"Credin\";\"ascii\"\n\"3022619\";\"Kerzhin\";\"other\"\n\"3022620\";\"Crécy-sur-Serre\";\"main\"\n\"3022620\";\"Crecy-sur-Serre\";\"ascii\"\n\"3022620\";\"Crecy\";\"other\"\n\"3022620\";\"Crécy\";\"other\"\n\"3022622\";\"Crécy-en-Ponthieu\";\"main\"\n\"3022622\";\"Crecy-en-Ponthieu\";\"ascii\"\n\"3022622\";\"Crecy\";\"other\"\n\"3022622\";\"Crecy-en-Ponthie\";\"other\"\n\"3022622\";\"Crécy\";\"other\"\n\"3022622\";\"Crécy-en-Ponthie\";\"other\"\n\"3022633\";\"Crêches-sur-Saône\";\"main\"\n\"3022633\";\"Creches-sur-Saone\";\"ascii\"\n\"3022633\";\"Creches\";\"other\"\n\"3022633\";\"Crêches\";\"other\"\n\"3022641\";\"Créances\";\"main\"\n\"3022641\";\"Creances\";\"ascii\"\n\"3022665\";\"Cravanche\";\"main\"\n\"3022679\";\"Craponne-sur-Arzon\";\"main\"\n\"3022679\";\"Craponne\";\"other\"\n\"3022683\";\"Craponne\";\"main\"\n\"3022690\";\"Craon\";\"main\"\n\"3022692\";\"Cranves-Sales\";\"main\"\n\"3022694\";\"Cransac\";\"main\"\n\"3022700\";\"Cran-Gevrier\";\"main\"\n\"3022700\";\"Gevrier\";\"other\"\n\"3022700\";\"Gévrier\";\"other\"\n\"3022726\";\"Crach\";\"main\"\n\"3022726\";\"Krac'h\";\"other\"\n\"3022733\";\"Cozes\";\"main\"\n\"3022739\";\"Coye-la-Forêt\";\"main\"\n\"3022739\";\"Coye-la-Foret\";\"ascii\"\n\"3022739\";\"Coye\";\"other\"\n\"3022751\";\"Couzeix\";\"main\"\n\"3022768\";\"Coux\";\"main\"\n\"3022770\";\"Couvron-et-Aumencourt\";\"main\"\n\"3022770\";\"Couvron\";\"other\"\n\"3022799\";\"Coutras\";\"main\"\n\"3022800\";\"Coutouvre\";\"main\"\n\"3022804\";\"Coutiches\";\"main\"\n\"3022811\";\"Couternon\";\"main\"\n\"3022812\";\"Couterne\";\"main\"\n\"3022826\";\"Coutances\";\"main\"\n\"3022846\";\"Coussac-Bonneval\";\"main\"\n\"3022846\";\"Coussac\";\"other\"\n\"3022846\";\"Coussac-sans-Culottes\";\"other\"\n\"3022856\";\"Cousance\";\"main\"\n\"3022856\";\"Cousance-du-Jura\";\"other\"\n\"3022859\";\"Courzieu\";\"main\"\n\"3022862\";\"Courville-sur-Eure\";\"main\"\n\"3022862\";\"Courville\";\"other\"\n\"3022868\";\"Courtry\";\"main\"\n\"3022882\";\"Courtisols\";\"main\"\n\"3022897\";\"Courthézon\";\"main\"\n\"3022897\";\"Courthezon\";\"ascii\"\n\"3022911\";\"Courtenay\";\"main\"\n\"3022922\";\"Courteilles\";\"main\"\n\"3022943\";\"Cours-les-Barres\";\"main\"\n\"3022943\";\"Cours\";\"other\"\n\"3022947\";\"Courseulles-sur-Mer\";\"main\"\n\"3022947\";\"Courseulles\";\"other\"\n\"3022953\";\"Cours-de-Pile\";\"main\"\n\"3022953\";\"Cours\";\"other\"\n\"3022956\";\"Coursan\";\"main\"\n\"3022959\";\"Coursac\";\"main\"\n\"3022964\";\"Cours-la-Ville\";\"main\"\n\"3022969\";\"Courrières\";\"main\"\n\"3022969\";\"Courrieres\";\"ascii\"\n\"3022969\";\"Dampierre-les-Dunes\";\"other\"\n\"3022977\";\"Courpière\";\"main\"\n\"3022977\";\"Courpiere\";\"ascii\"\n\"3022981\";\"Courpalay\";\"main\"\n\"3022986\";\"Cournonterral\";\"main\"\n\"3022987\";\"Cournonsec\";\"main\"\n\"3022988\";\"Cournon-d'Auvergne\";\"main\"\n\"3022988\";\"Cournon\";\"other\"\n\"3023007\";\"Courmelles\";\"main\"\n\"3023010\";\"Courlon-sur-Yonne\";\"main\"\n\"3023010\";\"Courlon\";\"other\"\n\"3023014\";\"Courlay\";\"main\"\n\"3023044\";\"Courdimanche\";\"main\"\n\"3023051\";\"Courcy\";\"main\"\n\"3023056\";\"Courcouronnes\";\"main\"\n\"3023058\";\"Courçon\";\"main\"\n\"3023058\";\"Courcon\";\"ascii\"\n\"3023058\";\"La Bonne-Foy\";\"other\"\n\"3023061\";\"Courcité\";\"main\"\n\"3023061\";\"Courcite\";\"ascii\"\n\"3023063\";\"Cour-Cheverny\";\"main\"\n\"3023063\";\"Cour-Chaverny\";\"other\"\n\"3023065\";\"Courchevel\";\"main\"\n\"3023065\";\"Courchevel 1850\";\"other\"\n\"3023065\";\"Kurshevel'\";\"other\"\n\"3023065\";\"Куршевель\";\"other\"\n\"3023066\";\"Courchelettes\";\"main\"\n\"3023085\";\"Courcelles-sur-Seine\";\"main\"\n\"3023085\";\"Courcelles\";\"other\"\n\"3023095\";\"Courcelles-lès-Montbéliard\";\"main\"\n\"3023095\";\"Courcelles-les-Montbeliard\";\"ascii\"\n\"3023095\";\"Courcelles\";\"other\"\n\"3023097\";\"Courcelles-lès-Lens\";\"main\"\n\"3023097\";\"Courcelles-les-Lens\";\"ascii\"\n\"3023097\";\"Courcelles\";\"other\"\n\"3023107\";\"Courcelles-Chaussy\";\"main\"\n\"3023141\";\"Courbevoie\";\"main\"\n\"3023175\";\"Coupvray\";\"main\"\n\"3023214\";\"Coulounieix-Chamiers\";\"main\"\n\"3023214\";\"Coulounieix\";\"other\"\n\"3023238\";\"Coulon\";\"main\"\n\"3023240\";\"Coulommiers\";\"main\"\n\"3023249\";\"Coulombs\";\"main\"\n\"3023252\";\"Coulombiers\";\"main\"\n\"3023254\";\"Coulogne\";\"main\"\n\"3023260\";\"Coullons\";\"main\"\n\"3023279\";\"Coulans-sur-Gée\";\"main\"\n\"3023279\";\"Coulans-sur-Gee\";\"ascii\"\n\"3023279\";\"Coulans\";\"other\"\n\"3023281\";\"Coulanges-lès-Nevers\";\"main\"\n\"3023281\";\"Coulanges-les-Nevers\";\"ascii\"\n\"3023281\";\"Coulanges\";\"other\"\n\"3023291\";\"Coulaines\";\"main\"\n\"3023294\";\"Couiza\";\"main\"\n\"3023296\";\"Couilly-Pont-aux-Dames\";\"main\"\n\"3023296\";\"Couilly\";\"other\"\n\"3023296\";\"Couilly-Pont\";\"other\"\n\"3023301\";\"Couhé\";\"main\"\n\"3023301\";\"Couhe\";\"ascii\"\n\"3023301\";\"Couche\";\"other\"\n\"3023301\";\"Couché\";\"other\"\n\"3023301\";\"Couhe-Verac\";\"other\"\n\"3023301\";\"Couhé-Verac\";\"other\"\n\"3023309\";\"Coufouleux\";\"main\"\n\"3023309\";\"Couffouleux\";\"other\"\n\"3023315\";\"Couffé\";\"main\"\n\"3023315\";\"Couffe\";\"ascii\"\n\"3023315\";\"Koufeg\";\"other\"\n\"3023324\";\"Couëron\";\"main\"\n\"3023324\";\"Coueron\";\"ascii\"\n\"3023324\";\"Koeron\";\"other\"\n\"3023328\";\"Coudun\";\"main\"\n\"3023344\";\"Coudoux\";\"main\"\n\"3023344\";\"Coudeux\";\"other\"\n\"3023356\";\"Coudekerque-Branche\";\"main\"\n\"3023356\";\"Coudekerque\";\"other\"\n\"3023356\";\"Couderkerque-Branche\";\"other\"\n\"3023357\";\"Coudekerque-Village\";\"main\"\n\"3023363\";\"Coucy-le-Château-Auffrique\";\"main\"\n\"3023363\";\"Coucy-le-Chateau-Auffrique\";\"ascii\"\n\"3023363\";\"Coucy-Auffrique\";\"other\"\n\"3023363\";\"Coucy-la-Montagne\";\"other\"\n\"3023363\";\"Coucy-le-Chateau\";\"other\"\n\"3023363\";\"Coucy-le-Château\";\"other\"\n\"3023370\";\"Couchey\";\"main\"\n\"3023371\";\"Couches\";\"main\"\n\"3023371\";\"Couches-les-Mines\";\"other\"\n\"3023375\";\"Coubron\";\"main\"\n\"3023379\";\"Coubon\";\"main\"\n\"3023381\";\"Coublevie\";\"main\"\n\"3023389\";\"Coubert\";\"main\"\n\"3023410\";\"Cotignac\";\"main\"\n\"3023466\";\"Cossé-le-Vivien\";\"main\"\n\"3023466\";\"Cosse-le-Vivien\";\"ascii\"\n\"3023476\";\"Cosne-Cours-sur-Loire\";\"main\"\n\"3023477\";\"Cosnes-et-Romain\";\"main\"\n\"3023477\";\"Cosnes\";\"other\"\n\"3023484\";\"Cosnac\";\"main\"\n\"3023492\";\"Corzé\";\"main\"\n\"3023492\";\"Corze\";\"ascii\"\n\"3023506\";\"Corte\";\"main\"\n\"3023506\";\"Corti\";\"other\"\n\"3023511\";\"Corseul\";\"main\"\n\"3023511\";\"Kersaout\";\"other\"\n\"3023512\";\"Corsept\";\"main\"\n\"3023512\";\"Korzed\";\"other\"\n\"3023534\";\"Corrèze\";\"main\"\n\"3023534\";\"Correze\";\"ascii\"\n\"3023543\";\"Corquilleroy\";\"main\"\n\"3023543\";\"Corquille-Libre\";\"other\"\n\"3023543\";\"Curquilleroy\";\"other\"\n\"3023545\";\"Corps-Nuds\";\"main\"\n\"3023545\";\"Kornuz\";\"other\"\n\"3023550\";\"Corpeau\";\"main\"\n\"3023557\";\"Coron\";\"main\"\n\"3023560\";\"Corny-sur-Moselle\";\"main\"\n\"3023560\";\"Corny\";\"other\"\n\"3023573\";\"Cornimont\";\"main\"\n\"3023576\";\"Cornillon-Confoux\";\"main\"\n\"3023576\";\"Cornillon\";\"other\"\n\"3023587\";\"Cornil\";\"main\"\n\"3023589\";\"Cornier\";\"main\"\n\"3023590\";\"Corneville-sur-Risle\";\"main\"\n\"3023590\";\"Corneville\";\"other\"\n\"3023599\";\"Corneilla-la-Rivière\";\"main\"\n\"3023599\";\"Corneilla-la-Riviere\";\"ascii\"\n\"3023599\";\"Corneilla\";\"other\"\n\"3023599\";\"Corneilla-de-la-Riviere\";\"other\"\n\"3023599\";\"Corneilla-de-la-Rivière\";\"other\"\n\"3023599\";\"Corneillà\";\"other\"\n\"3023599\";\"Cornella de la Ribera\";\"other\"\n\"3023599\";\"Cornellà de la Ribera\";\"other\"\n\"3023600\";\"Corneilla-del-Vercol\";\"main\"\n\"3023600\";\"Corneilla\";\"other\"\n\"3023600\";\"Cornella del Bercol\";\"other\"\n\"3023600\";\"Cornellà del Bèrcol\";\"other\"\n\"3023602\";\"Corneilhan\";\"main\"\n\"3023606\";\"Cornebarrieu\";\"main\"\n\"3023606\";\"Cornebarrien\";\"other\"\n\"3023611\";\"Corné\";\"main\"\n\"3023611\";\"Corne\";\"ascii\"\n\"3023617\";\"Cornas\";\"main\"\n\"3023628\";\"Cormontreuil\";\"main\"\n\"3023631\";\"Cormicy\";\"main\"\n\"3023637\";\"Cormery\";\"main\"\n\"3023638\";\"Corme-Royal\";\"main\"\n\"3023638\";\"Corme-la-Foret\";\"other\"\n\"3023638\";\"Corme-la-Forêt\";\"other\"\n\"3023641\";\"Cormeray\";\"main\"\n\"3023643\";\"Cormelles-le-Royal\";\"main\"\n\"3023643\";\"Cormelles-le-Libre\";\"other\"\n\"3023645\";\"Cormeilles-en-Parisis\";\"main\"\n\"3023645\";\"Cormeilles\";\"other\"\n\"3023647\";\"Cormeilles\";\"main\"\n\"3023661\";\"Corlay\";\"main\"\n\"3023661\";\"Korle\";\"other\"\n\"3023672\";\"Corenc\";\"main\"\n\"3023682\";\"Cordon\";\"main\"\n\"3023695\";\"Cordes-sur-Ciel\";\"main\"\n\"3023697\";\"Cordemais\";\"main\"\n\"3023697\";\"Kordevez\";\"other\"\n\"3023709\";\"Corcieux\";\"main\"\n\"3023725\";\"Corbreuse\";\"main\"\n\"3023735\";\"Corbigny\";\"main\"\n\"3023742\";\"Corbie\";\"main\"\n\"3023756\";\"Corbenay\";\"main\"\n\"3023759\";\"Corbelin\";\"main\"\n\"3023762\";\"Corbeilles\";\"main\"\n\"3023762\";\"Corbeilles-en-Gatinais\";\"other\"\n\"3023762\";\"Corbeilles-en-Gâtinais\";\"other\"\n\"3023762\";\"Corbeilles-la-Montagne\";\"other\"\n\"3023763\";\"Corbeil-Essonnes\";\"main\"\n\"3023763\";\"Corbeil\";\"other\"\n\"3023763\";\"Corbeil-la-Montagne\";\"other\"\n\"3023763\";\"Korbej Eson\";\"other\"\n\"3023763\";\"Korbej-Ehsson\";\"other\"\n\"3023763\";\"Корбей-Эссон\";\"other\"\n\"3023763\";\"Корбеј Есон\";\"other\"\n\"3023767\";\"Corbehem\";\"main\"\n\"3023771\";\"Corbas\";\"main\"\n\"3023772\";\"Corbarieu\";\"main\"\n\"3023777\";\"Coray\";\"main\"\n\"3023777\";\"Kore\";\"other\"\n\"3023787\";\"Coquelles\";\"main\"\n\"3023804\";\"Conty\";\"main\"\n\"3023808\";\"Contrexéville\";\"main\"\n\"3023808\";\"Contrexeville\";\"ascii\"\n\"3023812\";\"Contres\";\"main\"\n\"3023842\";\"Contes\";\"main\"\n\"3023850\";\"Contamine-sur-Arve\";\"main\"\n\"3023850\";\"Contamine\";\"other\"\n\"3023873\";\"Conques-sur-Orbiel\";\"main\"\n\"3023874\";\"Conquereuil\";\"main\"\n\"3023874\";\"Konkerel\";\"other\"\n\"3023880\";\"Connerré\";\"main\"\n\"3023880\";\"Connerre\";\"ascii\"\n\"3023883\";\"Connaux\";\"main\"\n\"3023884\";\"Connantre\";\"main\"\n\"3023891\";\"Conlie\";\"main\"\n\"3023907\";\"Congrier\";\"main\"\n\"3023908\";\"Congis-sur-Thérouanne\";\"main\"\n\"3023908\";\"Congis-sur-Therouanne\";\"ascii\"\n\"3023911\";\"Congénies\";\"main\"\n\"3023911\";\"Congenies\";\"ascii\"\n\"3023919\";\"Confolens\";\"main\"\n\"3023924\";\"Conflans-Sainte-Honorine\";\"main\"\n\"3023924\";\"Conflans\";\"other\"\n\"3023924\";\"Confluent-de-Seine-et-Oise\";\"other\"\n\"3023924\";\"Konflan Sent Onoren\";\"other\"\n\"3023924\";\"Конфлан Сент Онорен\";\"other\"\n\"3023925\";\"Conflans-en-Jarnisy\";\"main\"\n\"3023925\";\"Conflans\";\"other\"\n\"3023937\";\"Condrieu\";\"main\"\n\"3023943\";\"Condom\";\"main\"\n\"3023946\";\"Condette\";\"main\"\n\"3023947\";\"Condé-sur-Vire\";\"main\"\n\"3023947\";\"Conde-sur-Vire\";\"ascii\"\n\"3023947\";\"Conde\";\"other\"\n\"3023948\";\"Condé-sur-Vesgre\";\"main\"\n\"3023948\";\"Conde-sur-Vesgre\";\"ascii\"\n\"3023948\";\"Conde\";\"other\"\n\"3023951\";\"Condé-sur-Sarthe\";\"main\"\n\"3023951\";\"Conde-sur-Sarthe\";\"ascii\"\n\"3023951\";\"Conde\";\"other\"\n\"3023951\";\"Condé\";\"other\"\n\"3023953\";\"Condé-sur-Noireau\";\"main\"\n\"3023953\";\"Conde-sur-Noireau\";\"ascii\"\n\"3023953\";\"Conde\";\"other\"\n\"3023953\";\"Noireau\";\"other\"\n\"3023955\";\"Condé-sur-l'Escaut\";\"main\"\n\"3023955\";\"Conde-sur-l'Escaut\";\"ascii\"\n\"3023955\";\"Conde\";\"other\"\n\"3023955\";\"Conde-sur-Escaut\";\"other\"\n\"3023955\";\"Condé\";\"other\"\n\"3023955\";\"Condé-sur-Escaut\";\"other\"\n\"3023955\";\"Nord-Libre\";\"other\"\n\"3023958\";\"Condé-sur-Huisne\";\"main\"\n\"3023958\";\"Conde-sur-Huisne\";\"ascii\"\n\"3023958\";\"Conde\";\"other\"\n\"3023958\";\"Conde-sur-Huine\";\"other\"\n\"3023958\";\"Condé\";\"other\"\n\"3023958\";\"Condé-sur-Huine\";\"other\"\n\"3023960\";\"Condé-Sainte-Libiaire\";\"main\"\n\"3023960\";\"Conde-Sainte-Libiaire\";\"ascii\"\n\"3023960\";\"Conde\";\"other\"\n\"3023960\";\"Conde-sur-Morin\";\"other\"\n\"3023960\";\"Condé\";\"other\"\n\"3023960\";\"Condé-sur-Morin\";\"other\"\n\"3023977\";\"Condat-sur-Vienne\";\"main\"\n\"3023977\";\"Condat\";\"other\"\n\"3023984\";\"Condat\";\"main\"\n\"3023984\";\"Condat-en-Feniers\";\"other\"\n\"3023984\";\"Condat-en-Féniers\";\"other\"\n\"3024026\";\"Conches-en-Ouche\";\"main\"\n\"3024026\";\"Conches\";\"other\"\n\"3024026\";\"La Montagne-de-Conches\";\"other\"\n\"3024028\";\"Conches-sur-Gondoire\";\"main\"\n\"3024035\";\"Concarneau\";\"main\"\n\"3024035\";\"Konk-Kerne\";\"other\"\n\"3024035\";\"Konkarno\";\"other\"\n\"3024035\";\"Конкарно\";\"other\"\n\"3024057\";\"Comps\";\"main\"\n\"3024057\";\"Comps-Saint-Etienne\";\"other\"\n\"3024057\";\"Comps-Saint-Étienne\";\"other\"\n\"3024058\";\"Compreignac\";\"main\"\n\"3024066\";\"Compiègne\";\"main\"\n\"3024066\";\"Compiegne\";\"ascii\"\n\"3024066\";\"Komp'en'\";\"other\"\n\"3024066\";\"Kompjen\";\"other\"\n\"3024066\";\"Marat-sur-Oise\";\"other\"\n\"3024066\";\"gong bi nie\";\"other\"\n\"3024066\";\"Компьень\";\"other\"\n\"3024066\";\"Компјењ\";\"other\"\n\"3024066\";\"贡比涅\";\"other\"\n\"3024068\";\"Compertrix\";\"main\"\n\"3024074\";\"Communay\";\"main\"\n\"3024086\";\"Commercy\";\"main\"\n\"3024086\";\"Komersi\";\"other\"\n\"3024086\";\"Комерси\";\"other\"\n\"3024087\";\"Commer\";\"main\"\n\"3024088\";\"Commequiers\";\"main\"\n\"3024090\";\"Commentry\";\"main\"\n\"3024094\";\"Commelle-Vernay\";\"main\"\n\"3024094\";\"Commelle\";\"other\"\n\"3024102\";\"Comines\";\"main\"\n\"3024107\";\"Combs-la-Ville\";\"main\"\n\"3024107\";\"Combs\";\"other\"\n\"3024107\";\"Komb la Vil\";\"other\"\n\"3024107\";\"Комб ла Вил\";\"other\"\n\"3024111\";\"Combronde\";\"main\"\n\"3024112\";\"Combrit\";\"main\"\n\"3024112\";\"Kombrid\";\"other\"\n\"3024126\";\"Combrée\";\"main\"\n\"3024126\";\"Combree\";\"ascii\"\n\"3024131\";\"Combrand\";\"main\"\n\"3024137\";\"Combourg\";\"main\"\n\"3024137\";\"Komborn\";\"other\"\n\"3024142\";\"Combloux\";\"main\"\n\"3024195\";\"Pontault-Combault\";\"main\"\n\"3024200\";\"Combaillaux\";\"main\"\n\"3024210\";\"Colpo\";\"main\"\n\"3024210\";\"Kolpou\";\"other\"\n\"3024210\";\"Kolpoù\";\"other\"\n\"3024223\";\"Colomiers\";\"main\"\n\"3024223\";\"Kolomje\";\"other\"\n\"3024223\";\"Коломје\";\"other\"\n\"3024231\";\"Colombiès\";\"main\"\n\"3024231\";\"Colombies\";\"ascii\"\n\"3024236\";\"Colombiers\";\"main\"\n\"3024239\";\"Colombiers\";\"main\"\n\"3024243\";\"Colombier-Fontaine\";\"main\"\n\"3024264\";\"Colombey-les-Belles\";\"main\"\n\"3024264\";\"Colombey\";\"other\"\n\"3024266\";\"Colombes\";\"main\"\n\"3024266\";\"Kolomb\";\"other\"\n\"3024266\";\"Коломб\";\"other\"\n\"3024267\";\"Colombelles\";\"main\"\n\"3024273\";\"Colombe\";\"main\"\n\"3024273\";\"Colombes\";\"other\"\n\"3024276\";\"Colomars\";\"main\"\n\"3024297\";\"Colmar\";\"main\"\n\"3024297\";\"Kol'mar\";\"other\"\n\"3024297\";\"Kolmar\";\"other\"\n\"3024297\";\"korumaru\";\"other\"\n\"3024297\";\"Колмар\";\"other\"\n\"3024297\";\"Кольмар\";\"other\"\n\"3024297\";\"コルマール\";\"other\"\n\"3024302\";\"Collonges-sous-Salève\";\"main\"\n\"3024302\";\"Collonges-sous-Saleve\";\"ascii\"\n\"3024302\";\"Collonge-sous-Saleve\";\"other\"\n\"3024302\";\"Collonge-sous-Salève\";\"other\"\n\"3024302\";\"Collonges\";\"other\"\n\"3024306\";\"Collonges\";\"main\"\n\"3024313\";\"Collobrières\";\"main\"\n\"3024313\";\"Collobrieres\";\"ascii\"\n\"3024314\";\"Cotlliure\";\"main\"\n\"3024314\";\"Collioure\";\"other\"\n\"3024314\";\"Kolliur\";\"other\"\n\"3024314\";\"Коллиур\";\"other\"\n\"3024322\";\"Colleville-Montgomery\";\"main\"\n\"3024322\";\"Colleville\";\"other\"\n\"3024322\";\"Colleville-sur-Orne\";\"other\"\n\"3024322\";\"Kolevil Mongomeri\";\"other\"\n\"3024322\";\"Колевил Монгомери\";\"other\"\n\"3024328\";\"Collégien\";\"main\"\n\"3024328\";\"Collegien\";\"ascii\"\n\"3024351\";\"Coligny\";\"main\"\n\"3024351\";\"Nant-Coteau\";\"other\"\n\"3024358\";\"Colayrac-Saint-Cirq\";\"main\"\n\"3024358\";\"Colayrac\";\"other\"\n\"3024381\";\"Coise-Saint-Jean-Pied-Gauthier\";\"main\"\n\"3024381\";\"Coise\";\"other\"\n\"3024396\";\"Coincy\";\"main\"\n\"3024406\";\"Coignières\";\"main\"\n\"3024406\";\"Coignieres\";\"ascii\"\n\"3024421\";\"Cogolin\";\"main\"\n\"3024423\";\"Cogny\";\"main\"\n\"3024426\";\"Cognin\";\"main\"\n\"3024438\";\"Cognac-la-Forêt\";\"main\"\n\"3024438\";\"Cognac-la-Foret\";\"ascii\"\n\"3024438\";\"Cognac\";\"other\"\n\"3024438\";\"Cognac-le-Froid\";\"other\"\n\"3024440\";\"Cognac\";\"main\"\n\"3024440\";\"Conhac\";\"other\"\n\"3024440\";\"Kon'jak\";\"other\"\n\"3024440\";\"Konjak\";\"other\"\n\"3024440\";\"Коньяк\";\"other\"\n\"3024447\";\"Coëx\";\"main\"\n\"3024447\";\"Coex\";\"ascii\"\n\"3024456\";\"Coëtmieux\";\"main\"\n\"3024456\";\"Coetmieux\";\"ascii\"\n\"3024456\";\"Koedmaeg\";\"other\"\n\"3024459\";\"Coësmes\";\"main\"\n\"3024459\";\"Coesmes\";\"ascii\"\n\"3024459\";\"Koem\";\"other\"\n\"3024463\";\"Codognan\";\"main\"\n\"3024479\";\"Cocheren\";\"main\"\n\"3024525\";\"Coarraze\";\"main\"\n\"3024532\";\"Cluses\";\"main\"\n\"3024532\";\"Kljuz\";\"other\"\n\"3024532\";\"Клюз\";\"other\"\n\"3024534\";\"Cluny\";\"main\"\n\"3024534\";\"Chiny\";\"other\"\n\"3024534\";\"Cluniacum\";\"other\"\n\"3024534\";\"Kljuni\";\"other\"\n\"3024534\";\"klwny\";\"other\"\n\"3024534\";\"Клюни\";\"other\"\n\"3024534\";\"كلوني\";\"other\"\n\"3024538\";\"Cluis\";\"main\"\n\"3024543\";\"Cloyes-sur-le-Loir\";\"main\"\n\"3024543\";\"Cloyes\";\"other\"\n\"3024552\";\"Clouange\";\"main\"\n\"3024569\";\"Clonas-sur-Varèze\";\"main\"\n\"3024569\";\"Clonas-sur-Vareze\";\"ascii\"\n\"3024569\";\"Clonas\";\"other\"\n\"3024572\";\"Clohars-Fouesnant\";\"main\"\n\"3024572\";\"Clohars\";\"other\"\n\"3024572\";\"Kloar-Fouenant\";\"other\"\n\"3024573\";\"Clohars-Carnoët\";\"main\"\n\"3024573\";\"Clohars-Carnoet\";\"ascii\"\n\"3024573\";\"Clohars\";\"other\"\n\"3024573\";\"Kloar-Karnoed\";\"other\"\n\"3024578\";\"Clisson\";\"main\"\n\"3024578\";\"Klison\";\"other\"\n\"3024585\";\"Clion\";\"main\"\n\"3024588\";\"Clinchamps-sur-Orne\";\"main\"\n\"3024588\";\"Clinchamps\";\"other\"\n\"3024596\";\"Clichy-sous-Bois\";\"main\"\n\"3024596\";\"Clichy\";\"other\"\n\"3024596\";\"Klishi su Boa\";\"other\"\n\"3024596\";\"Клиши су Боа\";\"other\"\n\"3024597\";\"Clichy\";\"main\"\n\"3024597\";\"Clichy-sur-Seine\";\"other\"\n\"3024597\";\"Clicy\";\"other\"\n\"3024597\";\"Klishi\";\"other\"\n\"3024597\";\"Клиши\";\"other\"\n\"3024616\";\"Cléry-Saint-André\";\"main\"\n\"3024616\";\"Clery-Saint-Andre\";\"ascii\"\n\"3024616\";\"Clery\";\"other\"\n\"3024616\";\"Cléry\";\"other\"\n\"3024624\";\"Clerval\";\"main\"\n\"3024635\";\"Clermont-Ferrand\";\"main\"\n\"3024635\";\"Clarmont\";\"other\"\n\"3024635\";\"Clarmont-Ferrand\";\"other\"\n\"3024635\";\"Clermont\";\"other\"\n\"3024635\";\"Cllarmont-Ferrand\";\"other\"\n\"3024635\";\"Cllârmont-Fèrrand\";\"other\"\n\"3024635\";\"Klermon Feran\";\"other\"\n\"3024635\";\"Klermon-Ferran\";\"other\"\n\"3024635\";\"Klermona-Ferana\";\"other\"\n\"3024635\";\"Klermona-Ferāna\";\"other\"\n\"3024635\";\"kurerumon=feran\";\"other\"\n\"3024635\";\"Клермон Феран\";\"other\"\n\"3024635\";\"Клермон-Ферран\";\"other\"\n\"3024635\";\"クレルモン＝フェラン\";\"other\"\n\"3024636\";\"Clermont-en-Argonne\";\"main\"\n\"3024636\";\"Clermont\";\"other\"\n\"3024636\";\"Clermont-sur-Meuse\";\"other\"\n\"3024641\";\"Clermont-Créans\";\"main\"\n\"3024641\";\"Clermont-Creans\";\"ascii\"\n\"3024641\";\"Clermont\";\"other\"\n\"3024643\";\"Clermont\";\"main\"\n\"3024651\";\"Clérieux\";\"main\"\n\"3024651\";\"Clerieux\";\"ascii\"\n\"3024659\";\"Clères\";\"main\"\n\"3024659\";\"Cleres\";\"ascii\"\n\"3024660\";\"Cléré-les-Pins\";\"main\"\n\"3024660\";\"Clere-les-Pins\";\"ascii\"\n\"3024660\";\"Clere\";\"other\"\n\"3024660\";\"Cléré\";\"other\"\n\"3024666\";\"Clérac\";\"main\"\n\"3024666\";\"Clerac\";\"ascii\"\n\"3024669\";\"Cléon\";\"main\"\n\"3024669\";\"Cleon\";\"ascii\"\n\"3024681\";\"Cléguérec\";\"main\"\n\"3024681\";\"Cleguerec\";\"ascii\"\n\"3024681\";\"Klegereg\";\"other\"\n\"3024682\";\"Cléguer\";\"main\"\n\"3024682\";\"Cleguer\";\"ascii\"\n\"3024682\";\"Kleger\";\"other\"\n\"3024691\";\"Cléder\";\"main\"\n\"3024691\";\"Cleder\";\"ascii\"\n\"3024691\";\"Kleder\";\"other\"\n\"3024692\";\"Cléden-Poher\";\"main\"\n\"3024692\";\"Cleden-Poher\";\"ascii\"\n\"3024692\";\"Kledenn-Poc'her\";\"other\"\n\"3024692\";\"Kledenn-Poc'hêr\";\"other\"\n\"3024695\";\"Clécy\";\"main\"\n\"3024695\";\"Clecy\";\"ascii\"\n\"3024701\";\"Claye-Souilly\";\"main\"\n\"3024701\";\"Claye\";\"other\"\n\"3024705\";\"Claville\";\"main\"\n\"3024740\";\"Clary\";\"main\"\n\"3024745\";\"Claret\";\"main\"\n\"3024746\";\"Clarensac\";\"main\"\n\"3024759\";\"Clapiers\";\"main\"\n\"3024782\";\"Clamecy\";\"main\"\n\"3024783\";\"Clamart\";\"main\"\n\"3024783\";\"Klamar\";\"other\"\n\"3024783\";\"Le Vignoble\";\"other\"\n\"3024783\";\"Кламар\";\"other\"\n\"3024788\";\"Claix\";\"main\"\n\"3024796\";\"Clairvaux-les-Lacs\";\"main\"\n\"3024796\";\"Clairvaux\";\"other\"\n\"3024801\";\"Clairoix\";\"main\"\n\"3024801\";\"Clairox\";\"other\"\n\"3024816\";\"Clairac\";\"main\"\n\"3024817\";\"Claira\";\"main\"\n\"3024817\";\"Clairà\";\"other\"\n\"3024817\";\"Klera\";\"other\"\n\"3024817\";\"Клера\";\"other\"\n\"3024840\";\"Civrieux\";\"main\"\n\"3024843\";\"Civray-de-Touraine\";\"main\"\n\"3024843\";\"Civray\";\"other\"\n\"3024843\";\"Civray-sur-Cher\";\"other\"\n\"3024846\";\"Civray\";\"main\"\n\"3024854\";\"Civens\";\"main\"\n\"3024865\";\"Varennes-Vauzelles\";\"main\"\n\"3024865\";\"Vauzelles\";\"other\"\n\"3024886\";\"Cissé\";\"main\"\n\"3024886\";\"Cisse\";\"ascii\"\n\"3024891\";\"Ciry-le-Noble\";\"main\"\n\"3024891\";\"Ciry\";\"other\"\n\"3024906\";\"Cires-lès-Mello\";\"main\"\n\"3024906\";\"Cires-les-Mello\";\"ascii\"\n\"3024906\";\"Cires\";\"other\"\n\"3024926\";\"Cintré\";\"main\"\n\"3024926\";\"Cintre\";\"ascii\"\n\"3024926\";\"Kentreg\";\"other\"\n\"3024932\";\"Cintegabelle\";\"main\"\n\"3024934\";\"Cinqueux\";\"main\"\n\"3024937\";\"Cinq-Mars-la-Pile\";\"main\"\n\"3024937\";\"Cinq-Mars\";\"other\"\n\"3024979\";\"Ciboure\";\"main\"\n\"3024979\";\"Ziburu\";\"other\"\n\"3024991\";\"Chuzelles\";\"main\"\n\"3025006\";\"Chouzy-sur-Cisse\";\"main\"\n\"3025006\";\"Chouzy\";\"other\"\n\"3025007\";\"Chouzé-sur-Loire\";\"main\"\n\"3025007\";\"Chouze-sur-Loire\";\"ascii\"\n\"3025007\";\"Chouze\";\"other\"\n\"3025007\";\"Chouzé\";\"other\"\n\"3025033\";\"Chorges\";\"main\"\n\"3025033\";\"Chorces\";\"other\"\n\"3025045\";\"Chomérac\";\"main\"\n\"3025045\";\"Chomerac\";\"ascii\"\n\"3025053\";\"Cholet\";\"main\"\n\"3025053\";\"Shole\";\"other\"\n\"3025053\";\"Шоле\";\"other\"\n\"3025055\";\"Choisy-le-Roi\";\"main\"\n\"3025055\";\"Choisy\";\"other\"\n\"3025055\";\"Choisy-sur-Seine\";\"other\"\n\"3025055\";\"Shoazi le Roa\";\"other\"\n\"3025055\";\"Шоази ле Роа\";\"other\"\n\"3025057\";\"Choisy-en-Brie\";\"main\"\n\"3025057\";\"Choisy\";\"other\"\n\"3025058\";\"Choisy-au-Bac\";\"main\"\n\"3025058\";\"Choisy\";\"other\"\n\"3025059\";\"Choisy\";\"main\"\n\"3025062\";\"Choisey\";\"main\"\n\"3025071\";\"Chocques\";\"main\"\n\"3025071\";\"Choques\";\"other\"\n\"3025088\";\"Chitenay\";\"main\"\n\"3025094\";\"Chissay-en-Touraine\";\"main\"\n\"3025094\";\"Chissay\";\"other\"\n\"3025098\";\"Chiry-Ourscamp\";\"main\"\n\"3025098\";\"Chiry\";\"other\"\n\"3025108\";\"Chirens\";\"main\"\n\"3025119\";\"Chirac\";\"main\"\n\"3025132\";\"Chinon\";\"main\"\n\"3025132\";\"Chinon-sur-Vienne\";\"other\"\n\"3025132\";\"shinon cheng\";\"other\"\n\"3025132\";\"xi nong\";\"other\"\n\"3025132\";\"シノン城\";\"other\"\n\"3025132\";\"希农\";\"other\"\n\"3025136\";\"Chindrieux\";\"main\"\n\"3025141\";\"Chimilin\";\"main\"\n\"3025144\";\"Chilly-Mazarin\";\"main\"\n\"3025149\";\"Chilly\";\"main\"\n\"3025152\";\"Chilleurs-aux-Bois\";\"main\"\n\"3025152\";\"Chilleurs\";\"other\"\n\"3025177\";\"Chierry\";\"main\"\n\"3025197\";\"Chiché\";\"main\"\n\"3025197\";\"Chiche\";\"ascii\"\n\"3025204\";\"Chézy-sur-Marne\";\"main\"\n\"3025204\";\"Chezy-sur-Marne\";\"ascii\"\n\"3025204\";\"Chezy\";\"other\"\n\"3025204\";\"Chézy\";\"other\"\n\"3025270\";\"Chevry-Cossigny\";\"main\"\n\"3025270\";\"Chevry\";\"other\"\n\"3025274\";\"Chevry\";\"main\"\n\"3025284\";\"Chevrières\";\"main\"\n\"3025284\";\"Chevrieres\";\"ascii\"\n\"3025294\";\"Chevreuse\";\"main\"\n\"3025298\";\"Chèvremont\";\"main\"\n\"3025298\";\"Chevremont\";\"ascii\"\n\"3025314\";\"Chevilly-Larue\";\"main\"\n\"3025314\";\"Chevilly\";\"other\"\n\"3025315\";\"Chevilly\";\"main\"\n\"3025316\";\"Chevillon-sur-Huillard\";\"main\"\n\"3025316\";\"Chevillon\";\"other\"\n\"3025318\";\"Chevillon\";\"main\"\n\"3025324\";\"Chevigny-Saint-Sauveur\";\"main\"\n\"3025324\";\"Alpha\";\"other\"\n\"3025324\";\"Chevigny\";\"other\"\n\"3025324\";\"Chevigny-Sauveur\";\"other\"\n\"3025344\";\"Cheverny\";\"main\"\n\"3025356\";\"Chevannes\";\"main\"\n\"3025365\";\"Chevanceaux\";\"main\"\n\"3025375\";\"Cheval-Blanc\";\"main\"\n\"3025375\";\"Blanc-Montagne\";\"other\"\n\"3025379\";\"Chevaigné\";\"main\"\n\"3025379\";\"Chevaigne\";\"ascii\"\n\"3025379\";\"Kavaneg\";\"other\"\n\"3025383\";\"Cheux\";\"main\"\n\"3025397\";\"Chessy\";\"main\"\n\"3025398\";\"Chessy\";\"main\"\n\"3025418\";\"Cherveux\";\"main\"\n\"3025428\";\"Cherrueix\";\"main\"\n\"3025428\";\"Kerruer\";\"other\"\n\"3025430\";\"Cherré\";\"main\"\n\"3025430\";\"Cherre\";\"ascii\"\n\"3025432\";\"Chéroy\";\"main\"\n\"3025432\";\"Cheroy\";\"ascii\"\n\"3025439\";\"Chermignac\";\"main\"\n\"3025444\";\"Cherisy\";\"main\"\n\"3025444\";\"Cherizy\";\"other\"\n\"3025458\";\"Chéreng\";\"main\"\n\"3025458\";\"Chereng\";\"ascii\"\n\"3025466\";\"Cherbourg-Octeville\";\"main\"\n\"3025466\";\"Cherbourg\";\"other\"\n\"3025472\";\"Chéraute\";\"main\"\n\"3025472\";\"Cheraute\";\"ascii\"\n\"3025472\";\"Sohueta\";\"other\"\n\"3025472\";\"Sohüta\";\"other\"\n\"3025478\";\"Chérac\";\"main\"\n\"3025478\";\"Cherac\";\"ascii\"\n\"3025482\";\"Chépy\";\"main\"\n\"3025482\";\"Chepy\";\"ascii\"\n\"3025484\";\"Cheptainville\";\"main\"\n\"3025491\";\"Cheny\";\"main\"\n\"3025493\";\"Chens-sur-Léman\";\"main\"\n\"3025493\";\"Chens-sur-Leman\";\"ascii\"\n\"3025493\";\"Chens\";\"other\"\n\"3025496\";\"Chenôve\";\"main\"\n\"3025496\";\"Chenove\";\"ascii\"\n\"3025504\";\"Chenoise\";\"main\"\n\"3025509\";\"Chennevières-sur-Marne\";\"main\"\n\"3025509\";\"Chennevieres-sur-Marne\";\"ascii\"\n\"3025509\";\"Chennevieres\";\"other\"\n\"3025509\";\"Chennevières\";\"other\"\n\"3025519\";\"Cheniménil\";\"main\"\n\"3025519\";\"Chenimenil\";\"ascii\"\n\"3025551\";\"Chênehutte-Trèves-Cunault\";\"main\"\n\"3025551\";\"Chenehutte-Treves-Cunault\";\"ascii\"\n\"3025551\";\"Chenehutte-les-Tuffeaux\";\"other\"\n\"3025551\";\"Chênehutte-les-Tuffeaux\";\"other\"\n\"3025602\";\"Chemillé\";\"main\"\n\"3025602\";\"Chemille\";\"ascii\"\n\"3025609\";\"Chéméré\";\"main\"\n\"3025609\";\"Chemere\";\"ascii\"\n\"3025609\";\"Keverieg\";\"other\"\n\"3025612\";\"Chemazé\";\"main\"\n\"3025612\";\"Chemaze\";\"ascii\"\n\"3025614\";\"Chemaudin\";\"main\"\n\"3025622\";\"Chelles\";\"main\"\n\"3025635\";\"Cheillé\";\"main\"\n\"3025635\";\"Cheille\";\"ascii\"\n\"3025646\";\"Chef-Boutonne\";\"main\"\n\"3025650\";\"Chécy\";\"main\"\n\"3025650\";\"Checy\";\"ascii\"\n\"3025650\";\"Checy-lez-Orleans\";\"other\"\n\"3025650\";\"Chécy-lez-Orléans\";\"other\"\n\"3025657\";\"Chazey-sur-Ain\";\"main\"\n\"3025657\";\"Chazey\";\"other\"\n\"3025668\";\"Chazelles-sur-Lyon\";\"main\"\n\"3025668\";\"Chazelles\";\"other\"\n\"3025668\";\"Chazelles-la-Victoire\";\"other\"\n\"3025673\";\"Chazelles\";\"main\"\n\"3025715\";\"Chaville\";\"main\"\n\"3025719\";\"Chavigny\";\"main\"\n\"3025732\";\"Chavenay\";\"main\"\n\"3025734\";\"Chavelot\";\"main\"\n\"3025741\";\"Chavanoz\";\"main\"\n\"3025745\";\"Chavanod\";\"main\"\n\"3025760\";\"Chavanay\";\"main\"\n\"3025772\";\"Chavagnes-en-Paillers\";\"main\"\n\"3025772\";\"Chavagnes\";\"other\"\n\"3025774\";\"Chavagne\";\"main\"\n\"3025774\";\"Kavan\";\"other\"\n\"3025809\";\"Chauvigny\";\"main\"\n\"3025826\";\"Chauvé\";\"main\"\n\"3025826\";\"Chauve\";\"ascii\"\n\"3025826\";\"Haxo-les-Landes\";\"other\"\n\"3025826\";\"Kalveg\";\"other\"\n\"3025842\";\"Chaussin\";\"main\"\n\"3025853\";\"Chauriat\";\"main\"\n\"3025854\";\"Chauray\";\"main\"\n\"3025860\";\"Chauny\";\"main\"\n\"3025862\";\"Chaunay\";\"main\"\n\"3025875\";\"Chaumont-sur-Tharonne\";\"main\"\n\"3025875\";\"Chaumont\";\"other\"\n\"3025876\";\"Chaumont-sur-Loire\";\"main\"\n\"3025876\";\"Chaumont\";\"other\"\n\"3025881\";\"Chaumont-en-Vexin\";\"main\"\n\"3025881\";\"Chaumont\";\"other\"\n\"3025882\";\"Chaumontel\";\"main\"\n\"3025892\";\"Chaumont\";\"main\"\n\"3025892\";\"Chaumant\";\"other\"\n\"3025892\";\"Chaumont Enbassigby\";\"other\"\n\"3025892\";\"Chaumont-en-Bassigny\";\"other\"\n\"3025892\";\"Shomon\";\"other\"\n\"3025892\";\"shomon\";\"other\"\n\"3025892\";\"Шомон\";\"other\"\n\"3025892\";\"ショーモン\";\"other\"\n\"3025910\";\"Chaumes-en-Brie\";\"main\"\n\"3025910\";\"Chaumes\";\"other\"\n\"3025942\";\"Chaulnes\";\"main\"\n\"3025944\";\"Chaulgnes\";\"main\"\n\"3025965\";\"Chauffailles\";\"main\"\n\"3025965\";\"Shofej\";\"other\"\n\"3025965\";\"Шофеј\";\"other\"\n\"3025972\";\"Chaudron-en-Mauges\";\"main\"\n\"3025972\";\"Chaudron\";\"other\"\n\"3025976\";\"Chaudon\";\"main\"\n\"3025983\";\"Chaudes-Aigues\";\"main\"\n\"3026002\";\"Chauconin-Neufmontiers\";\"main\"\n\"3026005\";\"Chauché\";\"main\"\n\"3026005\";\"Chauche\";\"ascii\"\n\"3026008\";\"Chatuzange-le-Goubet\";\"main\"\n\"3026008\";\"Chatuzange\";\"other\"\n\"3026013\";\"Chatte\";\"main\"\n\"3026019\";\"Châtres-sur-Cher\";\"main\"\n\"3026019\";\"Chatres-sur-Cher\";\"ascii\"\n\"3026019\";\"Chatres\";\"other\"\n\"3026019\";\"Chátres\";\"other\"\n\"3026033\";\"Chatou\";\"main\"\n\"3026033\";\"Shatu\";\"other\"\n\"3026033\";\"Шату\";\"other\"\n\"3026039\";\"Châtonnay\";\"main\"\n\"3026039\";\"Chatonnay\";\"ascii\"\n\"3026044\";\"Châtillon-sur-Thouet\";\"main\"\n\"3026044\";\"Chatillon-sur-Thouet\";\"ascii\"\n\"3026044\";\"Chatillon\";\"other\"\n\"3026044\";\"Châtillon\";\"other\"\n\"3026046\";\"Châtillon-sur-Seine\";\"main\"\n\"3026046\";\"Chatillon-sur-Seine\";\"ascii\"\n\"3026046\";\"Chatillon\";\"other\"\n\"3026046\";\"Châtillon\";\"other\"\n\"3026047\";\"Châtillon-sur-Seiche\";\"main\"\n\"3026047\";\"Chatillon-sur-Seiche\";\"ascii\"\n\"3026047\";\"Chatillon\";\"other\"\n\"3026051\";\"Châtillon-sur-Marne\";\"main\"\n\"3026051\";\"Chatillon-sur-Marne\";\"ascii\"\n\"3026051\";\"Chatillon\";\"other\"\n\"3026051\";\"Châtillon\";\"other\"\n\"3026051\";\"Montagne-sur-Marne\";\"other\"\n\"3026053\";\"Châtillon-sur-Indre\";\"main\"\n\"3026053\";\"Chatillon-sur-Indre\";\"ascii\"\n\"3026053\";\"Chatillon\";\"other\"\n\"3026053\";\"Châtillon\";\"other\"\n\"3026053\";\"Indremont\";\"other\"\n\"3026055\";\"Châtillon-sur-Cluses\";\"main\"\n\"3026055\";\"Chatillon-sur-Cluses\";\"ascii\"\n\"3026055\";\"Chatillon\";\"other\"\n\"3026056\";\"Châtillon-sur-Cher\";\"main\"\n\"3026056\";\"Chatillon-sur-Cher\";\"ascii\"\n\"3026056\";\"Chatillon\";\"other\"\n\"3026056\";\"Châtillon\";\"other\"\n\"3026057\";\"Châtillon-sur-Chalaronne\";\"main\"\n\"3026057\";\"Chatillon-sur-Chalaronne\";\"ascii\"\n\"3026057\";\"Chatillon\";\"other\"\n\"3026057\";\"Châtillon\";\"other\"\n\"3026065\";\"Châtillon-le-Duc\";\"main\"\n\"3026065\";\"Chatillon-le-Duc\";\"ascii\"\n\"3026065\";\"Chatillon\";\"other\"\n\"3026065\";\"Châtillon\";\"other\"\n\"3026065\";\"Commune-du-Bellevue\";\"other\"\n\"3026067\";\"Châtillon-la-Palud\";\"main\"\n\"3026067\";\"Chatillon-la-Palud\";\"ascii\"\n\"3026067\";\"Chatillon\";\"other\"\n\"3026070\";\"Châtillon-en-Vendelais\";\"main\"\n\"3026070\";\"Chatillon-en-Vendelais\";\"ascii\"\n\"3026070\";\"Chatillon\";\"other\"\n\"3026070\";\"Châtillon\";\"other\"\n\"3026070\";\"Kastellan-Gwennel\";\"other\"\n\"3026073\";\"Châtillon-en-Bazois\";\"main\"\n\"3026073\";\"Chatillon-en-Bazois\";\"ascii\"\n\"3026073\";\"Chatillon\";\"other\"\n\"3026073\";\"Chatillon-sur-Aron\";\"other\"\n\"3026073\";\"Châtillon\";\"other\"\n\"3026073\";\"Châtillon-sur-Aron\";\"other\"\n\"3026074\";\"Châtillon-en-Michaille\";\"main\"\n\"3026074\";\"Chatillon-en-Michaille\";\"ascii\"\n\"3026074\";\"Chatillon\";\"other\"\n\"3026074\";\"Chatillon en Michaille\";\"other\"\n\"3026074\";\"Châtillon\";\"other\"\n\"3026075\";\"Châtillon\";\"main\"\n\"3026075\";\"Chatillon\";\"ascii\"\n\"3026075\";\"Chatillon-d'Azergues\";\"other\"\n\"3026075\";\"Châtillon-d'Azergues\";\"other\"\n\"3026076\";\"Châtillon-Coligny\";\"main\"\n\"3026076\";\"Chatillon-Coligny\";\"ascii\"\n\"3026083\";\"Châtillon\";\"main\"\n\"3026083\";\"Chatillon\";\"ascii\"\n\"3026083\";\"Chatillon-sous-Bagneux\";\"other\"\n\"3026083\";\"Châtillon-sous-Bagneux\";\"other\"\n\"3026083\";\"Fort Chatillon\";\"other\"\n\"3026083\";\"Fort Châtillon\";\"other\"\n\"3026083\";\"Montagne-l'Union\";\"other\"\n\"3026089\";\"Châtillon\";\"main\"\n\"3026089\";\"Chatillon\";\"ascii\"\n\"3026094\";\"Châtenoy-le-Royal\";\"main\"\n\"3026094\";\"Chatenoy-le-Royal\";\"ascii\"\n\"3026094\";\"Chatenoy\";\"other\"\n\"3026094\";\"Chatenoy-le-National\";\"other\"\n\"3026094\";\"Châtenoy\";\"other\"\n\"3026094\";\"Châtenoy-le-National\";\"other\"\n\"3026098\";\"Châtenois-les-Forges\";\"main\"\n\"3026098\";\"Chatenois-les-Forges\";\"ascii\"\n\"3026098\";\"Chatenois\";\"other\"\n\"3026098\";\"Châtenois\";\"other\"\n\"3026099\";\"Châtenois\";\"main\"\n\"3026099\";\"Chatenois\";\"ascii\"\n\"3026100\";\"Châtenois\";\"main\"\n\"3026100\";\"Chatenois\";\"ascii\"\n\"3026100\";\"Kestenholz\";\"other\"\n\"3026107\";\"Châtenay-sur-Seine\";\"main\"\n\"3026107\";\"Chatenay-sur-Seine\";\"ascii\"\n\"3026107\";\"Chatenay\";\"other\"\n\"3026108\";\"Châtenay-Malabry\";\"main\"\n\"3026108\";\"Chatenay-Malabry\";\"ascii\"\n\"3026108\";\"Chatenay\";\"other\"\n\"3026108\";\"Chatenay-la-Montagne\";\"other\"\n\"3026108\";\"Chatenay-les-Bagneux\";\"other\"\n\"3026108\";\"Châtenay\";\"other\"\n\"3026108\";\"Châtenay-la-Montagne\";\"other\"\n\"3026108\";\"Châtenay-lès-Bagneux\";\"other\"\n\"3026108\";\"Shatne Malabri\";\"other\"\n\"3026108\";\"Шатне Малабри\";\"other\"\n\"3026130\";\"Châtel-sur-Moselle\";\"main\"\n\"3026130\";\"Chatel-sur-Moselle\";\"ascii\"\n\"3026130\";\"Chatel\";\"other\"\n\"3026130\";\"Châtel\";\"other\"\n\"3026130\";\"Durbion-Moselle\";\"other\"\n\"3026131\";\"Châtel-Saint-Germain\";\"main\"\n\"3026131\";\"Chatel-Saint-Germain\";\"ascii\"\n\"3026131\";\"Chatel\";\"other\"\n\"3026131\";\"Châtel\";\"other\"\n\"3026141\";\"Châtellerault\";\"main\"\n\"3026141\";\"Chatellerault\";\"ascii\"\n\"3026141\";\"Shatlero\";\"other\"\n\"3026141\";\"Шатлеро\";\"other\"\n\"3026145\";\"Châtel-Guyon\";\"main\"\n\"3026145\";\"Chatel-Guyon\";\"ascii\"\n\"3026145\";\"Chatel Guyon\";\"other\"\n\"3026145\";\"Chatel-Guyon les Bains\";\"other\"\n\"3026145\";\"Chatelguyon\";\"other\"\n\"3026145\";\"Châtelguyon\";\"other\"\n\"3026172\";\"Châtelaillon-Plage\";\"main\"\n\"3026172\";\"Chatelaillon-Plage\";\"ascii\"\n\"3026172\";\"Chatelaillon\";\"other\"\n\"3026172\";\"Châtelaillon\";\"other\"\n\"3026172\";\"Les Sablons\";\"other\"\n\"3026177\";\"Châtel\";\"main\"\n\"3026177\";\"Chatel\";\"ascii\"\n\"3026183\";\"Châteauvillain\";\"main\"\n\"3026183\";\"Chateauvillain\";\"ascii\"\n\"3026183\";\"Commune-sur-Aujon\";\"other\"\n\"3026183\";\"Ville-sur-Aujon\";\"other\"\n\"3026194\";\"Château-Thierry\";\"main\"\n\"3026194\";\"Chateau-Thierry\";\"ascii\"\n\"3026194\";\"Chateau-Egalite\";\"other\"\n\"3026194\";\"Château-Egalité\";\"other\"\n\"3026194\";\"Egalite-sur-Marne\";\"other\"\n\"3026194\";\"Egalité-sur-Marne\";\"other\"\n\"3026194\";\"Faubourg-du-Puits-d'Amour\";\"other\"\n\"3026194\";\"Puits-d'Amour\";\"other\"\n\"3026200\";\"Château-Salins\";\"main\"\n\"3026200\";\"Chateau-Salins\";\"ascii\"\n\"3026200\";\"Saline-Libre\";\"other\"\n\"3026200\";\"Salzburgen\";\"other\"\n\"3026204\";\"Châteauroux\";\"main\"\n\"3026204\";\"Chateauroux\";\"ascii\"\n\"3026204\";\"Indrelibre\";\"other\"\n\"3026204\";\"Indreville\";\"other\"\n\"3026204\";\"shatoru\";\"other\"\n\"3026204\";\"シャトールー\";\"other\"\n\"3026208\";\"Château-Renault\";\"main\"\n\"3026208\";\"Chateau-Renault\";\"ascii\"\n\"3026208\";\"Mont-Braine\";\"other\"\n\"3026211\";\"Châteaurenard\";\"main\"\n\"3026211\";\"Chateaurenard\";\"ascii\"\n\"3026211\";\"Chateaurenard-Provence\";\"other\"\n\"3026211\";\"Châteaurenard-Provence\";\"other\"\n\"3026211\";\"Mont-Renard\";\"other\"\n\"3026216\";\"Château-Porcien\";\"main\"\n\"3026216\";\"Chateau-Porcien\";\"ascii\"\n\"3026216\";\"Marat-Fruvaine\";\"other\"\n\"3026216\";\"Marat-sur-Aisne\";\"other\"\n\"3026217\";\"Châteauponsac\";\"main\"\n\"3026217\";\"Chateauponsac\";\"ascii\"\n\"3026217\";\"Chastel\";\"other\"\n\"3026217\";\"Chastél\";\"other\"\n\"3026217\";\"Ponsac-la-Montagne\";\"other\"\n\"3026221\";\"Châteauneuf-sur-Sarthe\";\"main\"\n\"3026221\";\"Chateauneuf-sur-Sarthe\";\"ascii\"\n\"3026221\";\"Chateauneuf\";\"other\"\n\"3026221\";\"Châteauneuf\";\"other\"\n\"3026221\";\"Mont-Sarthe\";\"other\"\n\"3026222\";\"Châteauneuf-sur-Loire\";\"main\"\n\"3026222\";\"Chateauneuf-sur-Loire\";\"ascii\"\n\"3026222\";\"Chateauneuf\";\"other\"\n\"3026222\";\"Châteauneuf\";\"other\"\n\"3026223\";\"Châteauneuf-sur-Cher\";\"main\"\n\"3026223\";\"Chateauneuf-sur-Cher\";\"ascii\"\n\"3026223\";\"Chateauneuf\";\"other\"\n\"3026223\";\"Châteauneuf\";\"other\"\n\"3026223\";\"Montagne-sur-Cher\";\"other\"\n\"3026224\";\"Châteauneuf-sur-Charente\";\"main\"\n\"3026224\";\"Chateauneuf-sur-Charente\";\"ascii\"\n\"3026224\";\"Chateauneuf\";\"other\"\n\"3026224\";\"Châteauneuf\";\"other\"\n\"3026224\";\"Val-Charente\";\"other\"\n\"3026227\";\"Châteauneuf-les-Martigues\";\"main\"\n\"3026227\";\"Chateauneuf-les-Martigues\";\"ascii\"\n\"3026227\";\"Chateauneuf\";\"other\"\n\"3026227\";\"Châteauneuf\";\"other\"\n\"3026229\";\"Châteauneuf-le-Rouge\";\"main\"\n\"3026229\";\"Chateauneuf-le-Rouge\";\"ascii\"\n\"3026229\";\"Chateauneuf\";\"other\"\n\"3026229\";\"Châteauneuf\";\"other\"\n\"3026229\";\"La Galiniere-Negrel\";\"other\"\n\"3026229\";\"La Galinière-Négrel\";\"other\"\n\"3026229\";\"Negrel\";\"other\"\n\"3026230\";\"Châteauneuf-la-Forêt\";\"main\"\n\"3026230\";\"Chateauneuf-la-Foret\";\"ascii\"\n\"3026230\";\"Chateauneuf\";\"other\"\n\"3026230\";\"Châteauneuf\";\"other\"\n\"3026230\";\"Mont-Combade\";\"other\"\n\"3026231\";\"Châteauneuf-en-Thymerais\";\"main\"\n\"3026231\";\"Chateauneuf-en-Thymerais\";\"ascii\"\n\"3026231\";\"Chateauneuf\";\"other\"\n\"3026231\";\"Chateauneuf-en Thimerais\";\"other\"\n\"3026231\";\"Châteauneuf-en Thimerais\";\"other\"\n\"3026231\";\"Puits-la-Montagne\";\"other\"\n\"3026232\";\"Châteauneuf-du-Rhône\";\"main\"\n\"3026232\";\"Chateauneuf-du-Rhone\";\"ascii\"\n\"3026232\";\"Bourg-le-Rhone\";\"other\"\n\"3026232\";\"Bourg-le-Rhône\";\"other\"\n\"3026232\";\"Chateauneuf\";\"other\"\n\"3026232\";\"Châteauneuf\";\"other\"\n\"3026233\";\"Châteauneuf-du-Pape\";\"main\"\n\"3026233\";\"Chateauneuf-du-Pape\";\"ascii\"\n\"3026233\";\"Chateauneuf\";\"other\"\n\"3026233\";\"Châteauneuf\";\"other\"\n\"3026234\";\"Châteauneuf-du-Faou\";\"main\"\n\"3026234\";\"Chateauneuf-du-Faou\";\"ascii\"\n\"3026234\";\"Chateauneuf\";\"other\"\n\"3026234\";\"Châteauneuf\";\"other\"\n\"3026234\";\"Mont-sur-Aulne\";\"other\"\n\"3026236\";\"Châteauneuf-sur-Isère\";\"main\"\n\"3026236\";\"Chateauneuf-sur-Isere\";\"ascii\"\n\"3026236\";\"Chateauneuf\";\"other\"\n\"3026236\";\"Chateauneuf-de-l'Isere\";\"other\"\n\"3026236\";\"Châteauneuf\";\"other\"\n\"3026236\";\"Châteauneuf-de-l'Isère\";\"other\"\n\"3026241\";\"Châteauneuf-de-Galaure\";\"main\"\n\"3026241\";\"Chateauneuf-de-Galaure\";\"ascii\"\n\"3026241\";\"Chateauneuf\";\"other\"\n\"3026241\";\"Châteauneuf\";\"other\"\n\"3026241\";\"Mivalon-de-Galaure\";\"other\"\n\"3026242\";\"Châteauneuf-de-Gadagne\";\"main\"\n\"3026242\";\"Chateauneuf-de-Gadagne\";\"ascii\"\n\"3026242\";\"Chateauneuf\";\"other\"\n\"3026242\";\"Châteauneuf\";\"other\"\n\"3026254\";\"Châteauneuf\";\"main\"\n\"3026254\";\"Chateauneuf\";\"ascii\"\n\"3026256\";\"Châteauneuf-Grasse\";\"main\"\n\"3026256\";\"Chateauneuf-Grasse\";\"ascii\"\n\"3026256\";\"Chateauneuf de Grasse\";\"other\"\n\"3026256\";\"Chateauneuf-le-Pre-du-Lac\";\"other\"\n\"3026256\";\"Châteauneuf-le-Pre-du-Lac\";\"other\"\n\"3026258\";\"Châteaumeillant\";\"main\"\n\"3026258\";\"Chateaumeillant\";\"ascii\"\n\"3026258\";\"Tell-le-Grand\";\"other\"\n\"3026262\";\"Châteaulin\";\"main\"\n\"3026262\";\"Chateaulin\";\"ascii\"\n\"3026262\";\"Cite-sur-Aon\";\"other\"\n\"3026262\";\"Cité-sur-Aôn\";\"other\"\n\"3026262\";\"Kastellin\";\"other\"\n\"3026262\";\"Montagne-sur-Aon\";\"other\"\n\"3026262\";\"Montagne-sur-Aôn\";\"other\"\n\"3026262\";\"Ville-sur-Aone\";\"other\"\n\"3026262\";\"Ville-sur-Aône\";\"other\"\n\"3026266\";\"Château-la-Vallière\";\"main\"\n\"3026266\";\"Chateau-la-Valliere\";\"ascii\"\n\"3026266\";\"Val-Joyeux\";\"other\"\n\"3026268\";\"Château-Landon\";\"main\"\n\"3026268\";\"Chateau-Landon\";\"ascii\"\n\"3026271\";\"Château-Guibert\";\"main\"\n\"3026271\";\"Chateau-Guibert\";\"ascii\"\n\"3026271\";\"Fond-Guibert\";\"other\"\n\"3026273\";\"Château-Gontier\";\"main\"\n\"3026273\";\"Chateau-Gontier\";\"ascii\"\n\"3026273\";\"Mont-Hardi\";\"other\"\n\"3026275\";\"Châteaugiron\";\"main\"\n\"3026275\";\"Chateaugiron\";\"ascii\"\n\"3026275\";\"Kastell-Geron\";\"other\"\n\"3026275\";\"Mont-Giron\";\"other\"\n\"3026276\";\"Châteaugay\";\"main\"\n\"3026276\";\"Chateaugay\";\"ascii\"\n\"3026276\";\"Bel-Air\";\"other\"\n\"3026280\";\"Château-Gaillard\";\"main\"\n\"3026280\";\"Chateau-Gaillard\";\"ascii\"\n\"3026280\";\"Chateau\";\"other\"\n\"3026281\";\"Châteaufort\";\"main\"\n\"3026281\";\"Chateaufort\";\"ascii\"\n\"3026285\";\"Châteaudun\";\"main\"\n\"3026285\";\"Chateaudun\";\"ascii\"\n\"3026285\";\"Dun-sur-Loir\";\"other\"\n\"3026285\";\"syatodeong\";\"other\"\n\"3026285\";\"샤토덩\";\"other\"\n\"3026286\";\"Château-du-Loir\";\"main\"\n\"3026286\";\"Chateau-du-Loir\";\"ascii\"\n\"3026286\";\"Mont-du-Loir\";\"other\"\n\"3026286\";\"Mont-sur-Loir\";\"other\"\n\"3026286\";\"Vau-du-Loir\";\"other\"\n\"3026291\";\"Château-d'Olonne\";\"main\"\n\"3026291\";\"Chateau-d'Olonne\";\"ascii\"\n\"3026291\";\"Beau-Sejour\";\"other\"\n\"3026291\";\"Beau-Séjour\";\"other\"\n\"3026298\";\"Château-Chinon(Ville)\";\"main\"\n\"3026298\";\"Chateau-Chinon(Ville)\";\"ascii\"\n\"3026298\";\"Chateau-Chinon\";\"other\"\n\"3026298\";\"Chateau-Chinon-Ville\";\"other\"\n\"3026298\";\"Chinon-la-Montagne\";\"other\"\n\"3026298\";\"Château-Chinon\";\"other\"\n\"3026298\";\"Château-Chinon-Ville\";\"other\"\n\"3026303\";\"Châteaubriant\";\"main\"\n\"3026303\";\"Chateaubriant\";\"ascii\"\n\"3026303\";\"Kastell-Briant\";\"other\"\n\"3026303\";\"Montagne-sur-Chere\";\"other\"\n\"3026303\";\"Montagne-sur-Chère\";\"other\"\n\"3026306\";\"Châteaubourg\";\"main\"\n\"3026306\";\"Chateaubourg\";\"ascii\"\n\"3026306\";\"Kastell-Bourc'h\";\"other\"\n\"3026310\";\"Châteaubernard\";\"main\"\n\"3026310\";\"Chateaubernard\";\"ascii\"\n\"3026352\";\"Chassors\";\"main\"\n\"3026374\";\"Chassieu\";\"main\"\n\"3026384\";\"Chasse-sur-Rhône\";\"main\"\n\"3026384\";\"Chasse-sur-Rhone\";\"ascii\"\n\"3026384\";\"Chasse\";\"other\"\n\"3026384\";\"Chasse sobre Rodano\";\"other\"\n\"3026391\";\"Chasseneuil-du-Poitou\";\"main\"\n\"3026391\";\"Chasseneuil\";\"other\"\n\"3026394\";\"Chasseneuil-sur-Bonnieure\";\"main\"\n\"3026400\";\"Chasselay\";\"main\"\n\"3026419\";\"Chassagny\";\"main\"\n\"3026438\";\"Chasné-sur-Illet\";\"main\"\n\"3026438\";\"Chasne-sur-Illet\";\"ascii\"\n\"3026438\";\"Chasne\";\"other\"\n\"3026438\";\"Chasné\";\"other\"\n\"3026438\";\"Kadeneg\";\"other\"\n\"3026451\";\"Charvieu-Chavagneux\";\"main\"\n\"3026464\";\"Chartrettes\";\"main\"\n\"3026465\";\"Chartres-de-Bretagne\";\"main\"\n\"3026465\";\"Chartres\";\"other\"\n\"3026465\";\"Karnod\";\"other\"\n\"3026467\";\"Chartres\";\"main\"\n\"3026467\";\"Autricum\";\"other\"\n\"3026467\";\"Chartrez\";\"other\"\n\"3026467\";\"Shartr\";\"other\"\n\"3026467\";\"sha te er\";\"other\"\n\"3026467\";\"sharutoru\";\"other\"\n\"3026467\";\"Шартр\";\"other\"\n\"3026467\";\"שארטר\";\"other\"\n\"3026467\";\"シャルトル\";\"other\"\n\"3026467\";\"沙特尔\";\"other\"\n\"3026474\";\"Chars\";\"main\"\n\"3026478\";\"Charroux\";\"main\"\n\"3026480\";\"Charron\";\"main\"\n\"3026500\";\"Charquemont\";\"main\"\n\"3026508\";\"Chârost\";\"main\"\n\"3026508\";\"Charost\";\"ascii\"\n\"3026515\";\"Charolles\";\"main\"\n\"3026520\";\"Charny\";\"main\"\n\"3026521\";\"Charny\";\"main\"\n\"3026532\";\"Charnècles\";\"main\"\n\"3026532\";\"Charnecles\";\"ascii\"\n\"3026534\";\"Charnay-lès-Mâcon\";\"main\"\n\"3026534\";\"Charnay-les-Macon\";\"ascii\"\n\"3026534\";\"Charnay\";\"other\"\n\"3026538\";\"Charnay\";\"main\"\n\"3026574\";\"Charmes-sur-Rhône\";\"main\"\n\"3026574\";\"Charmes-sur-Rhone\";\"ascii\"\n\"3026574\";\"Charmes\";\"other\"\n\"3026587\";\"Charmes\";\"main\"\n\"3026588\";\"Charmes\";\"main\"\n\"3026603\";\"Charly-sur-Marne\";\"main\"\n\"3026603\";\"Charly\";\"other\"\n\"3026606\";\"Charly\";\"main\"\n\"3026610\";\"Charlieu\";\"main\"\n\"3026613\";\"Charleville-Mézières\";\"main\"\n\"3026613\";\"Charleville-Mezieres\";\"ascii\"\n\"3026613\";\"Charleville\";\"other\"\n\"3026613\";\"Libreville\";\"other\"\n\"3026613\";\"Mezieres\";\"other\"\n\"3026613\";\"Mézières\";\"other\"\n\"3026613\";\"Sharlevil'-Mez'er\";\"other\"\n\"3026613\";\"Sharlvil Mezijer\";\"other\"\n\"3026613\";\"sharuruvu~iru=mejieru\";\"other\"\n\"3026613\";\"Шарлвил Мезијер\";\"other\"\n\"3026613\";\"Шарлевиль-Мезьер\";\"other\"\n\"3026613\";\"シャルルヴィル＝メジエール\";\"other\"\n\"3026615\";\"Charleval\";\"main\"\n\"3026616\";\"Charleval\";\"main\"\n\"3026616\";\"Charleval-de Provence\";\"other\"\n\"3026630\";\"Chargé\";\"main\"\n\"3026630\";\"Charge\";\"ascii\"\n\"3026637\";\"Charenton-le-Pont\";\"main\"\n\"3026637\";\"Charenton\";\"other\"\n\"3026637\";\"Charenton-Republicain\";\"other\"\n\"3026637\";\"Charenton-Républicain\";\"other\"\n\"3026637\";\"Le Republicain\";\"other\"\n\"3026637\";\"Le Républicain\";\"other\"\n\"3026637\";\"Sharanton le Pon\";\"other\"\n\"3026637\";\"Sharonton-l-Pon\";\"other\"\n\"3026637\";\"Шарантон ле Пон\";\"other\"\n\"3026637\";\"Шаронтон-л-Пон\";\"other\"\n\"3026638\";\"Charenton-du-Cher\";\"main\"\n\"3026638\";\"Charenton\";\"other\"\n\"3026638\";\"Charenton sur Cher\";\"other\"\n\"3026641\";\"Charentilly\";\"main\"\n\"3026648\";\"Charentay\";\"main\"\n\"3026691\";\"Charbuy\";\"main\"\n\"3026698\";\"Charbonnières-les-Varennes\";\"main\"\n\"3026698\";\"Charbonnieres-les-Varennes\";\"ascii\"\n\"3026698\";\"Charbonnieres\";\"other\"\n\"3026698\";\"Charbonnières\";\"other\"\n\"3026700\";\"Charbonnières-les-Bains\";\"main\"\n\"3026700\";\"Charbonnieres-les-Bains\";\"ascii\"\n\"3026700\";\"Charbonnieres\";\"other\"\n\"3026700\";\"Charbonnières\";\"other\"\n\"3026720\";\"Charavines\";\"main\"\n\"3026720\";\"Charavines-les-Bains\";\"other\"\n\"3026728\";\"Charantonnay\";\"main\"\n\"3026728\";\"Charentonnay\";\"other\"\n\"3026741\";\"Chaptelat\";\"main\"\n\"3026748\";\"Chappes\";\"main\"\n\"3026757\";\"Chaponost\";\"main\"\n\"3026758\";\"Chaponnay\";\"main\"\n\"3026765\";\"Chapet\";\"main\"\n\"3026795\";\"Chapdes-Beaufort\";\"main\"\n\"3026795\";\"Chapdes\";\"other\"\n\"3026797\";\"Chapareillan\";\"main\"\n\"3026804\";\"Chaource\";\"main\"\n\"3026816\";\"Chanu\";\"main\"\n\"3026822\";\"Chantraine\";\"main\"\n\"3026823\";\"Chantonnay\";\"main\"\n\"3026823\";\"La Prairiale\";\"other\"\n\"3026823\";\"La Resolue\";\"other\"\n\"3026823\";\"La Résolue\";\"other\"\n\"3026824\";\"Chantôme\";\"main\"\n\"3026824\";\"Chantome\";\"ascii\"\n\"3026827\";\"Chantilly\";\"main\"\n\"3026827\";\"Champ-Libre\";\"other\"\n\"3026842\";\"Chantepie\";\"main\"\n\"3026842\";\"Kantpig\";\"other\"\n\"3026846\";\"Chantenay-Saint-Imbert\";\"main\"\n\"3026846\";\"Chantenay\";\"other\"\n\"3026862\";\"Chanteloup-les-Vignes\";\"main\"\n\"3026862\";\"Chanteloup\";\"other\"\n\"3026867\";\"Chanteloup-en-Brie\";\"main\"\n\"3026870\";\"Chanteloup\";\"main\"\n\"3026870\";\"Kantlou\";\"other\"\n\"3026887\";\"Chantelle\";\"main\"\n\"3026890\";\"Chanteheux\";\"main\"\n\"3026898\";\"Chanteau\";\"main\"\n\"3026898\";\"Shanto\";\"other\"\n\"3026898\";\"Шанто\";\"other\"\n\"3026911\";\"Chanos-Curson\";\"main\"\n\"3026912\";\"Chanonat\";\"main\"\n\"3026925\";\"Chaniers\";\"main\"\n\"3026927\";\"Changy-les-Bois\";\"main\"\n\"3026927\";\"Changy\";\"other\"\n\"3026934\";\"Changis-sur-Marne\";\"main\"\n\"3026934\";\"Changis\";\"other\"\n\"3026940\";\"Changé\";\"main\"\n\"3026940\";\"Change\";\"ascii\"\n\"3026941\";\"Changé\";\"main\"\n\"3026941\";\"Change\";\"ascii\"\n\"3026953\";\"Chandon\";\"main\"\n\"3026965\";\"Chancenay\";\"main\"\n\"3026969\";\"Chancelade\";\"main\"\n\"3026971\";\"Chanceaux-sur-Choisille\";\"main\"\n\"3026971\";\"Chanceaux\";\"other\"\n\"3026983\";\"Chanas\";\"main\"\n\"3026987\";\"Chanac\";\"main\"\n\"3026999\";\"Champvans\";\"main\"\n\"3027007\";\"Champtocé-sur-Loire\";\"main\"\n\"3027007\";\"Champtoce-sur-Loire\";\"ascii\"\n\"3027007\";\"Champtoce\";\"other\"\n\"3027007\";\"Champtocé\";\"other\"\n\"3027008\";\"Champtoceaux\";\"main\"\n\"3027011\";\"Champ-sur-Drac\";\"main\"\n\"3027011\";\"Champ\";\"other\"\n\"3027011\";\"Champ-du Drac\";\"other\"\n\"3027013\";\"Champs-sur-Tarentaine-Marchal\";\"main\"\n\"3027013\";\"Champs\";\"other\"\n\"3027014\";\"Champs-sur-Marne\";\"main\"\n\"3027014\";\"Champs\";\"other\"\n\"3027014\";\"Shan sir Marn\";\"other\"\n\"3027014\";\"Шан сир Марн\";\"other\"\n\"3027021\";\"Champsecret\";\"main\"\n\"3027030\";\"Champs-sur-Yonne\";\"main\"\n\"3027064\";\"Champniers\";\"main\"\n\"3027081\";\"Champlitte-la-Ville\";\"main\"\n\"3027098\";\"Champlan\";\"main\"\n\"3027103\";\"Champigny\";\"main\"\n\"3027103\";\"Champigny-sur-Yonne\";\"other\"\n\"3027105\";\"Champigny-sur-Marne\";\"main\"\n\"3027105\";\"Champigny\";\"other\"\n\"3027105\";\"Sampini sir Marn\";\"other\"\n\"3027105\";\"Шампињи сир Марн\";\"other\"\n\"3027126\";\"Champigneulles\";\"main\"\n\"3027129\";\"Champignelles\";\"main\"\n\"3027130\";\"Champigné\";\"main\"\n\"3027130\";\"Champigne\";\"ascii\"\n\"3027131\";\"Champier\";\"main\"\n\"3027134\";\"Champhol\";\"main\"\n\"3027147\";\"Champforgeuil\";\"main\"\n\"3027152\";\"Champfleur\";\"main\"\n\"3027162\";\"Champenoux\";\"main\"\n\"3027168\";\"Champeix\";\"main\"\n\"3027194\";\"Champdieu\";\"main\"\n\"3027197\";\"Champdeniers-Saint-Denis\";\"main\"\n\"3027200\";\"Champcueil\";\"main\"\n\"3027207\";\"Champcevinel\";\"main\"\n\"3027235\";\"Champagnole\";\"main\"\n\"3027236\";\"Champagnier\";\"main\"\n\"3027237\";\"Champagney\";\"main\"\n\"3027237\";\"Champagny\";\"other\"\n\"3027242\";\"Champagne-sur-Seine\";\"main\"\n\"3027242\";\"Champagne\";\"other\"\n\"3027243\";\"Champagne-sur-Oise\";\"main\"\n\"3027243\";\"Champagne\";\"other\"\n\"3027247\";\"Champagne-Mouton\";\"main\"\n\"3027250\";\"Champagné-les-Marais\";\"main\"\n\"3027250\";\"Champagne-les-Marais\";\"ascii\"\n\"3027250\";\"Champagne\";\"other\"\n\"3027250\";\"Champagné\";\"other\"\n\"3027260\";\"Champagné\";\"main\"\n\"3027260\";\"Champagne\";\"ascii\"\n\"3027278\";\"Champagnac\";\"main\"\n\"3027278\";\"Champagnac-les-Mines\";\"other\"\n\"3027301\";\"Chamonix-Mont-Blanc\";\"main\"\n\"3027301\";\"Chamonix\";\"other\"\n\"3027301\";\"Chamonix Mont Blanc\";\"other\"\n\"3027301\";\"Chamonix Mont-Blanc\";\"other\"\n\"3027301\";\"Chamônix\";\"other\"\n\"3027301\";\"Shamoni\";\"other\"\n\"3027301\";\"shamoni\";\"other\"\n\"3027301\";\"syamoni\";\"other\"\n\"3027301\";\"xia mu ni\";\"other\"\n\"3027301\";\"Шамони\";\"other\"\n\"3027301\";\"シャモニー\";\"other\"\n\"3027301\";\"夏慕尼\";\"other\"\n\"3027301\";\"샤모니\";\"other\"\n\"3027307\";\"Chamigny\";\"main\"\n\"3027308\";\"Chameyrat\";\"main\"\n\"3027335\";\"Chambretaud\";\"main\"\n\"3027343\";\"Chambray-lès-Tours\";\"main\"\n\"3027343\";\"Chambray-les-Tours\";\"ascii\"\n\"3027343\";\"Chambray\";\"other\"\n\"3027350\";\"Chambourg-sur-Indre\";\"main\"\n\"3027350\";\"Chambourg\";\"other\"\n\"3027351\";\"Chambourcy\";\"main\"\n\"3027353\";\"Chamboulive\";\"main\"\n\"3027367\";\"Chambon-sur-Voueize\";\"main\"\n\"3027367\";\"Chambon\";\"other\"\n\"3027396\";\"Chambœuf\";\"main\"\n\"3027396\";\"Chamboeuf\";\"ascii\"\n\"3027397\";\"Chambly\";\"main\"\n\"3027422\";\"Chambéry\";\"main\"\n\"3027422\";\"Chambery\";\"ascii\"\n\"3027422\";\"Chamberi\";\"other\"\n\"3027422\";\"Chambery-le-Vieux\";\"other\"\n\"3027422\";\"Chambèri\";\"other\"\n\"3027422\";\"Chambéry-le-Vieux\";\"other\"\n\"3027422\";\"Shamberi\";\"other\"\n\"3027422\";\"shanberi\";\"other\"\n\"3027422\";\"Шамбери\";\"other\"\n\"3027422\";\"シャンベリ\";\"other\"\n\"3027426\";\"Chamberet\";\"main\"\n\"3027445\";\"Chamarandes-Choignes\";\"main\"\n\"3027446\";\"Chamarande\";\"main\"\n\"3027446\";\"Bonne-Commune\";\"other\"\n\"3027447\";\"Chamant\";\"main\"\n\"3027453\";\"Chamalières\";\"main\"\n\"3027453\";\"Chamalieres\";\"ascii\"\n\"3027453\";\"Shamal'er\";\"other\"\n\"3027453\";\"Шамальер\";\"other\"\n\"3027456\";\"Chamagnieu\";\"main\"\n\"3027470\";\"Châlus\";\"main\"\n\"3027470\";\"Chalus\";\"ascii\"\n\"3027470\";\"Chasluc\";\"other\"\n\"3027470\";\"Chasluç\";\"other\"\n\"3027480\";\"Chalo-Saint-Mars\";\"main\"\n\"3027480\";\"Chalo-Saint-Marc\";\"other\"\n\"3027480\";\"Chalo-la-Raison\";\"other\"\n\"3027480\";\"Châlo-Saint-Marc\";\"other\"\n\"3027482\";\"Châlonvillars\";\"main\"\n\"3027482\";\"Chalonvillars\";\"ascii\"\n\"3027484\";\"Chalon-sur-Saône\";\"main\"\n\"3027484\";\"Chalon-sur-Saone\";\"ascii\"\n\"3027484\";\"Chalon\";\"other\"\n\"3027484\";\"Chalons\";\"other\"\n\"3027484\";\"Chalons sur Saone\";\"other\"\n\"3027484\";\"Chalons sur Saône\";\"other\"\n\"3027484\";\"Come-la-Montagne\";\"other\"\n\"3027484\";\"Côme-la-Montagne\";\"other\"\n\"3027484\";\"La Montagne\";\"other\"\n\"3027484\";\"Montagne-les-Chalon\";\"other\"\n\"3027484\";\"Montagne-lès-Chalon\";\"other\"\n\"3027484\";\"Port-la-Montagne\";\"other\"\n\"3027484\";\"Rochefort-des-Vignes\";\"other\"\n\"3027484\";\"Rochefort-la-Vigne\";\"other\"\n\"3027484\";\"Shalon sir Saon\";\"other\"\n\"3027484\";\"Шалон сир Саон\";\"other\"\n\"3027487\";\"Châlons-en-Champagne\";\"main\"\n\"3027487\";\"Chalons-en-Champagne\";\"ascii\"\n\"3027487\";\"Chalons\";\"other\"\n\"3027487\";\"Chalons-sur-Marne\";\"other\"\n\"3027487\";\"Châlons\";\"other\"\n\"3027487\";\"Châlons-sur-Marne\";\"other\"\n\"3027487\";\"Shalon-an-Shampan'\";\"other\"\n\"3027487\";\"Шалон-ан-Шампань\";\"other\"\n\"3027491\";\"Chalonnes-sur-Loire\";\"main\"\n\"3027491\";\"Chalonnes\";\"other\"\n\"3027501\";\"Challuy\";\"main\"\n\"3027501\";\"Chaluy\";\"other\"\n\"3027505\";\"Challex\";\"main\"\n\"3027505\";\"Challeux\";\"other\"\n\"3027505\";\"Challez\";\"other\"\n\"3027507\";\"Challes-les-Eaux\";\"main\"\n\"3027507\";\"Challes\";\"other\"\n\"3027508\";\"Challes\";\"main\"\n\"3027513\";\"Challans\";\"main\"\n\"3027519\";\"Chalindrey\";\"main\"\n\"3027521\";\"Chaligny\";\"main\"\n\"3027524\";\"Chalifert\";\"main\"\n\"3027531\";\"Châlette-sur-Loing\";\"main\"\n\"3027531\";\"Chalette-sur-Loing\";\"ascii\"\n\"3027531\";\"Chalette\";\"other\"\n\"3027531\";\"Châlette\";\"other\"\n\"3027551\";\"Chaleins\";\"main\"\n\"3027570\";\"Chalampé\";\"main\"\n\"3027570\";\"Chalampe\";\"ascii\"\n\"3027572\";\"Chalamont\";\"main\"\n\"3027576\";\"Chalais\";\"main\"\n\"3027582\";\"Chalabre\";\"main\"\n\"3027598\";\"Chaingy\";\"main\"\n\"3027608\";\"Chailly-en-Brie\";\"main\"\n\"3027608\";\"Chailly\";\"other\"\n\"3027609\";\"Chailly-en-Bière\";\"main\"\n\"3027609\";\"Chailly-en-Biere\";\"ascii\"\n\"3027609\";\"Chailly\";\"other\"\n\"3027621\";\"Chaillevette\";\"main\"\n\"3027625\";\"Chailles\";\"main\"\n\"3027627\";\"Chaillé-les-Marais\";\"main\"\n\"3027627\";\"Chaille-les-Marais\";\"ascii\"\n\"3027627\";\"Chaille\";\"other\"\n\"3027627\";\"Chaillé\";\"other\"\n\"3027629\";\"Chailland\";\"main\"\n\"3027632\";\"Chaillac\";\"main\"\n\"3027642\";\"Chagny\";\"main\"\n\"3027653\";\"Chadrac\";\"main\"\n\"3027670\";\"Chacé\";\"main\"\n\"3027670\";\"Chace\";\"ascii\"\n\"3027673\";\"Chabris\";\"main\"\n\"3027687\";\"Chabreloche\";\"main\"\n\"3027696\";\"Châbons\";\"main\"\n\"3027696\";\"Chabons\";\"ascii\"\n\"3027699\";\"Chablis\";\"main\"\n\"3027699\";\"shaburi\";\"other\"\n\"3027699\";\"シャブリ\";\"other\"\n\"3027705\";\"Chabeuil\";\"main\"\n\"3027723\";\"Chabanais\";\"main\"\n\"3027726\";\"Cézy\";\"main\"\n\"3027726\";\"Cezy\";\"ascii\"\n\"3027737\";\"Cézac\";\"main\"\n\"3027737\";\"Cezac\";\"ascii\"\n\"3027740\";\"Ceyzériat\";\"main\"\n\"3027740\";\"Ceyzeriat\";\"ascii\"\n\"3027745\";\"Ceyreste\";\"main\"\n\"3027746\";\"Ceyrat\";\"main\"\n\"3027758\";\"Ceton\";\"main\"\n\"3027763\";\"Cestas\";\"main\"\n\"3027763\";\"Sesta\";\"other\"\n\"3027763\";\"Сеста\";\"other\"\n\"3027765\";\"Cessy\";\"main\"\n\"3027767\";\"Cesson-Sévigné\";\"main\"\n\"3027767\";\"Cesson-Sevigne\";\"ascii\"\n\"3027767\";\"Saozon-Sevigneg\";\"other\"\n\"3027768\";\"Cesson\";\"main\"\n\"3027770\";\"Cessieu\";\"main\"\n\"3027783\";\"Cessenon-sur-Orb\";\"main\"\n\"3027804\";\"Cervione\";\"main\"\n\"3027804\";\"Cervioni\";\"other\"\n\"3027816\";\"Certines\";\"main\"\n\"3027824\";\"Cers\";\"main\"\n\"3027830\";\"Cérons\";\"main\"\n\"3027830\";\"Cerons\";\"ascii\"\n\"3027836\";\"Cerny\";\"main\"\n\"3027850\";\"Cernay-lès-Reims\";\"main\"\n\"3027850\";\"Cernay-les-Reims\";\"ascii\"\n\"3027850\";\"Cernay\";\"other\"\n\"3027850\";\"Cernay-lez-Reims\";\"other\"\n\"3027852\";\"Cernay-la-Ville\";\"main\"\n\"3027852\";\"Cernay\";\"other\"\n\"3027857\";\"Cernay\";\"main\"\n\"3027857\";\"Sennheim\";\"other\"\n\"3027866\";\"Cerizay\";\"main\"\n\"3027867\";\"Cerisy-la-Salle\";\"main\"\n\"3027867\";\"Cerisy\";\"other\"\n\"3027880\";\"Cérilly\";\"main\"\n\"3027880\";\"Cerilly\";\"ascii\"\n\"3027882\";\"Cergy-Pontoise\";\"main\"\n\"3027883\";\"Cergy\";\"main\"\n\"3027883\";\"Serzhi\";\"other\"\n\"3027883\";\"Сержи\";\"other\"\n\"3027888\";\"Ceret\";\"main\"\n\"3027888\";\"Céret\";\"other\"\n\"3027889\";\"Céreste\";\"main\"\n\"3027889\";\"Cereste\";\"ascii\"\n\"3027893\";\"Cerelles\";\"main\"\n\"3027898\";\"Cerdon\";\"main\"\n\"3027900\";\"Cercy-la-Tour\";\"main\"\n\"3027900\";\"Cercy\";\"other\"\n\"3027900\";\"Cercy-sur-Aron\";\"other\"\n\"3027900\";\"Cerey-la-Tour\";\"other\"\n\"3027902\";\"Cercoux\";\"main\"\n\"3027915\";\"Cervera de la Marenda\";\"main\"\n\"3027915\";\"Cerbere\";\"other\"\n\"3027915\";\"Cerbère\";\"other\"\n\"3027915\";\"Cervera\";\"other\"\n\"3027918\";\"Cérans-Foulletourte\";\"main\"\n\"3027918\";\"Cerans-Foulletourte\";\"ascii\"\n\"3027918\";\"Cerans\";\"other\"\n\"3027918\";\"Cerans-Fouilletourte\";\"other\"\n\"3027918\";\"Cérans\";\"other\"\n\"3027918\";\"Cérans-Fouilletourte\";\"other\"\n\"3027923\";\"Cepoy\";\"main\"\n\"3027927\";\"Cépet\";\"main\"\n\"3027927\";\"Cepet\";\"ascii\"\n\"3027949\";\"Cenon-sur-Vienne\";\"main\"\n\"3027949\";\"Cenon\";\"other\"\n\"3027950\";\"Cenon\";\"main\"\n\"3027950\";\"Senon\";\"other\"\n\"3027950\";\"Сенон\";\"other\"\n\"3027961\";\"Cendras\";\"main\"\n\"3027965\";\"Cénac-et-Saint-Julien\";\"main\"\n\"3027965\";\"Cenac-et-Saint-Julien\";\"ascii\"\n\"3027965\";\"Cenac\";\"other\"\n\"3027965\";\"Cénac\";\"other\"\n\"3027967\";\"Cénac\";\"main\"\n\"3027967\";\"Cenac\";\"ascii\"\n\"3027970\";\"Cély\";\"main\"\n\"3027970\";\"Cely\";\"ascii\"\n\"3027970\";\"Cely-en-Biere\";\"other\"\n\"3027970\";\"Cély-en-Bière\";\"other\"\n\"3027980\";\"Cellieu\";\"main\"\n\"3027984\";\"Cellettes\";\"main\"\n\"3027988\";\"Celles-sur-Durolle\";\"main\"\n\"3027988\";\"Celles\";\"other\"\n\"3027989\";\"Celles-sur-Belle\";\"main\"\n\"3027989\";\"Celles\";\"other\"\n\"3027999\";\"Celle-Lévescault\";\"main\"\n\"3027999\";\"Celle-Levescault\";\"ascii\"\n\"3027999\";\"Celle\";\"other\"\n\"3028028\";\"Cébazat\";\"main\"\n\"3028028\";\"Cebazat\";\"ascii\"\n\"3028037\";\"Ceaucé\";\"main\"\n\"3028037\";\"Ceauce\";\"ascii\"\n\"3028039\";\"Cazouls-lès-Béziers\";\"main\"\n\"3028039\";\"Cazouls-les-Beziers\";\"ascii\"\n\"3028039\";\"Cazouls\";\"other\"\n\"3028044\";\"Cazilhac\";\"main\"\n\"3028045\";\"Cazilhac\";\"main\"\n\"3028048\";\"Cazes-Mondenard\";\"main\"\n\"3028050\";\"Cazères\";\"main\"\n\"3028050\";\"Cazeres\";\"ascii\"\n\"3028072\";\"Cazaubon\";\"main\"\n\"3028092\";\"Caylus\";\"main\"\n\"3028095\";\"Cayeux-sur-Mer\";\"main\"\n\"3028095\";\"Cayeux\";\"other\"\n\"3028097\";\"Cayenne\";\"main\"\n\"3028107\";\"Cavignac\";\"main\"\n\"3028110\";\"Caveirac\";\"main\"\n\"3028118\";\"Cavan\";\"main\"\n\"3028118\";\"Kawan\";\"other\"\n\"3028129\";\"Cavalaire-sur-Mer\";\"main\"\n\"3028129\";\"Cavalaire\";\"other\"\n\"3028133\";\"Cavaillon\";\"main\"\n\"3028133\";\"Clavaillan\";\"other\"\n\"3028134\";\"Cavaillon\";\"main\"\n\"3028134\";\"Kavajon\";\"other\"\n\"3028134\";\"Кавајон\";\"other\"\n\"3028143\";\"Caux\";\"main\"\n\"3028144\";\"Cauville-sur-Mer\";\"main\"\n\"3028144\";\"L'Unite-Nationale\";\"other\"\n\"3028144\";\"L'Unité-Nationale\";\"other\"\n\"3028144\";\"Saint-Pierre-de-Bonsecours\";\"other\"\n\"3028146\";\"Cauvigny\";\"main\"\n\"3028152\";\"Cauterets\";\"main\"\n\"3028162\";\"Caussade\";\"main\"\n\"3028169\";\"Cauro\";\"main\"\n\"3028179\";\"Caunes-Minervois\";\"main\"\n\"3028179\";\"Caunes\";\"other\"\n\"3028185\";\"Caumont-sur-Durance\";\"main\"\n\"3028185\";\"Caumont\";\"other\"\n\"3028190\";\"Caumont\";\"main\"\n\"3028198\";\"Caulnes\";\"main\"\n\"3028198\";\"Kaon\";\"other\"\n\"3028204\";\"Cauffry\";\"main\"\n\"3028205\";\"Caudry\";\"main\"\n\"3028214\";\"Caudebec-lès-Elbeuf\";\"main\"\n\"3028214\";\"Caudebec-les-Elbeuf\";\"ascii\"\n\"3028214\";\"Caudebec\";\"other\"\n\"3028215\";\"Caudebec-en-Caux\";\"main\"\n\"3028215\";\"Caudebec\";\"other\"\n\"3028217\";\"Caudan\";\"main\"\n\"3028217\";\"Kaodan\";\"other\"\n\"3028219\";\"Cauchy-à-la-Tour\";\"main\"\n\"3028219\";\"Cauchy-a-la-Tour\";\"ascii\"\n\"3028219\";\"Cauchy\";\"other\"\n\"3028236\";\"Cattenom\";\"main\"\n\"3028253\";\"Catenoy\";\"main\"\n\"3028258\";\"Castries\";\"main\"\n\"3028259\";\"Castres-Gironde\";\"main\"\n\"3028259\";\"Castres\";\"other\"\n\"3028263\";\"Castres\";\"main\"\n\"3028263\";\"Castras\";\"other\"\n\"3028263\";\"Castres-sur-l'Agout\";\"other\"\n\"3028263\";\"Kastras\";\"other\"\n\"3028263\";\"kasutoru\";\"other\"\n\"3028263\";\"カストル\";\"other\"\n\"3028269\";\"Castillonnès\";\"main\"\n\"3028269\";\"Castillonnes\";\"ascii\"\n\"3028274\";\"Castillon-du-Gard\";\"main\"\n\"3028274\";\"Castillon\";\"other\"\n\"3028295\";\"Castets-en-Dorthe\";\"main\"\n\"3028295\";\"Castets\";\"other\"\n\"3028296\";\"Castets\";\"main\"\n\"3028296\";\"Cap-de-la-Cote-Verte\";\"other\"\n\"3028296\";\"Cap-de-la-Côte-Verte\";\"other\"\n\"3028296\";\"Castets-des-Landes\";\"other\"\n\"3028296\";\"Rameau-Vert\";\"other\"\n\"3028322\";\"Castelsarrasin\";\"main\"\n\"3028322\";\"Mont-Sarrazin\";\"other\"\n\"3028337\";\"Castelnau-le-Lez\";\"main\"\n\"3028337\";\"Castelnau\";\"other\"\n\"3028340\";\"Castelnau-d'Estrétefonds\";\"main\"\n\"3028340\";\"Castelnau-d'Estretefonds\";\"ascii\"\n\"3028340\";\"Castelnau\";\"other\"\n\"3028341\";\"Castelnau-Montratier\";\"main\"\n\"3028341\";\"Castelnau\";\"other\"\n\"3028341\";\"Castelnau-la-Montagne\";\"other\"\n\"3028341\";\"Castelnau-le-Montratier\";\"other\"\n\"3028343\";\"Castelnau-de-Médoc\";\"main\"\n\"3028343\";\"Castelnau-de-Medoc\";\"ascii\"\n\"3028343\";\"Castelnau\";\"other\"\n\"3028345\";\"Castelnau-de-Lévis\";\"main\"\n\"3028345\";\"Castelnau-de-Levis\";\"ascii\"\n\"3028345\";\"Castelnau\";\"other\"\n\"3028346\";\"Castelnau-de-Guers\";\"main\"\n\"3028346\";\"Castelnau\";\"other\"\n\"3028351\";\"Castelnaudary\";\"main\"\n\"3028351\";\"Castel Nou d'Arri\";\"other\"\n\"3028351\";\"Castell nou d'Arri\";\"other\"\n\"3028351\";\"Castelnou d'Arri\";\"other\"\n\"3028351\";\"Castèl Nòu d'Arri\";\"other\"\n\"3028351\";\"Castèlnòu d'Arri\";\"other\"\n\"3028359\";\"Castelmoron-sur-Lot\";\"main\"\n\"3028359\";\"Castelmoron\";\"other\"\n\"3028382\";\"Castellane\";\"main\"\n\"3028382\";\"Castelana\";\"other\"\n\"3028387\";\"Casteljaloux\";\"main\"\n\"3028388\";\"Castelginest\";\"main\"\n\"3028392\";\"Castelculier\";\"main\"\n\"3028409\";\"Castanet-Tolosan\";\"main\"\n\"3028409\";\"Castanet\";\"other\"\n\"3028409\";\"Castanet-Tolozan\";\"other\"\n\"3028418\";\"Castagniers\";\"main\"\n\"3028425\";\"Cast\";\"main\"\n\"3028425\";\"Kast\";\"other\"\n\"3028428\";\"Casson\";\"main\"\n\"3028428\";\"Kazon\";\"other\"\n\"3028431\";\"Cassis\";\"main\"\n\"3028437\";\"Casseneuil\";\"main\"\n\"3028440\";\"Cassel\";\"main\"\n\"3028440\";\"Kassel\";\"other\"\n\"3028448\";\"Cassagnes-Bégonhès\";\"main\"\n\"3028448\";\"Cassagnes-Begonhes\";\"ascii\"\n\"3028448\";\"Cassagnes\";\"other\"\n\"3028448\";\"Cassagnes-Begonnes\";\"other\"\n\"3028448\";\"Cassagnes-Bégonnès\";\"other\"\n\"3028486\";\"Carvin\";\"main\"\n\"3028493\";\"Cartignies\";\"main\"\n\"3028503\";\"Carspach\";\"main\"\n\"3028507\";\"Carsac-Aillac\";\"main\"\n\"3028507\";\"Carsac\";\"other\"\n\"3028507\";\"Carsac-de-Carlux\";\"other\"\n\"3028509\";\"Cars\";\"main\"\n\"3028510\";\"Carry-le-Rouet\";\"main\"\n\"3028510\";\"Carry\";\"other\"\n\"3028510\";\"קארי-לה-רואה\";\"other\"\n\"3028513\";\"Carros\";\"main\"\n\"3028520\";\"Carrières-sur-Seine\";\"main\"\n\"3028520\";\"Carrieres-sur-Seine\";\"ascii\"\n\"3028520\";\"Carrieres\";\"other\"\n\"3028520\";\"Carrières\";\"other\"\n\"3028521\";\"Carrières-sous-Poissy\";\"main\"\n\"3028521\";\"Carrieres-sous-Poissy\";\"ascii\"\n\"3028521\";\"Carrieres\";\"other\"\n\"3028521\";\"Carrieres sur Poissy\";\"other\"\n\"3028521\";\"Carrières\";\"other\"\n\"3028534\";\"Carqueiranne\";\"main\"\n\"3028534\";\"Carquieranne\";\"other\"\n\"3028535\";\"Carquefou\";\"main\"\n\"3028535\";\"Kerc'hfaou\";\"other\"\n\"3028537\";\"Carpiquet\";\"main\"\n\"3028542\";\"Carpentras\";\"main\"\n\"3028542\";\"Carpentràs\";\"other\"\n\"3028542\";\"Karpantras\";\"other\"\n\"3028542\";\"karupantora\";\"other\"\n\"3028542\";\"Карпантрас\";\"other\"\n\"3028542\";\"カルパントラ\";\"other\"\n\"3028551\";\"Caromb\";\"main\"\n\"3028554\";\"Caro\";\"main\"\n\"3028554\";\"Karozh\";\"other\"\n\"3028558\";\"Carnoules\";\"main\"\n\"3028575\";\"Carnac\";\"main\"\n\"3028575\";\"Alineamientos de Carnac\";\"other\"\n\"3028575\";\"Karnag\";\"other\"\n\"3028580\";\"Carmaux\";\"main\"\n\"3028580\";\"Karmo\";\"other\"\n\"3028580\";\"Кармо\";\"other\"\n\"3028590\";\"Carling\";\"main\"\n\"3028591\";\"Carlepont\";\"main\"\n\"3028600\";\"Carignan\";\"main\"\n\"3028600\";\"Ivoy\";\"other\"\n\"3028601\";\"Carignan-de-Bordeaux\";\"main\"\n\"3028603\";\"Carhaix-Plouguer\";\"main\"\n\"3028603\";\"Carhaix\";\"other\"\n\"3028603\";\"Karaez\";\"other\"\n\"3028603\";\"Karaez-Plouger\";\"other\"\n\"3028603\";\"Karaez-Plougêr\";\"other\"\n\"3028606\";\"Cargèse\";\"main\"\n\"3028606\";\"Cargese\";\"ascii\"\n\"3028606\";\"Carghjese\";\"other\"\n\"3028606\";\"Le Village de Cargese\";\"other\"\n\"3028606\";\"Le Village de Cargèse\";\"other\"\n\"3028608\";\"Carentoir\";\"main\"\n\"3028608\";\"Karantoer\";\"other\"\n\"3028610\";\"Carentan\";\"main\"\n\"3028610\";\"Carantan\";\"other\"\n\"3028610\";\"Carenton\";\"other\"\n\"3028637\";\"Carcès\";\"main\"\n\"3028637\";\"Carces\";\"ascii\"\n\"3028641\";\"Carcassonne\";\"main\"\n\"3028641\";\"Carcasona\";\"other\"\n\"3028641\";\"Carcasonne\";\"other\"\n\"3028641\";\"Carcassona\";\"other\"\n\"3028641\";\"Karkason\";\"other\"\n\"3028641\";\"Karkasson\";\"other\"\n\"3028641\";\"karukason'nu\";\"other\"\n\"3028641\";\"Каркасон\";\"other\"\n\"3028641\";\"Каркассон\";\"other\"\n\"3028641\";\"カルカソンヌ\";\"other\"\n\"3028647\";\"Carcans\";\"main\"\n\"3028652\";\"Carbonne\";\"main\"\n\"3028653\";\"Carbon-Blanc\";\"main\"\n\"3028667\";\"Carantec\";\"main\"\n\"3028667\";\"Karanteg\";\"other\"\n\"3028674\";\"Caraman\";\"main\"\n\"3028674\";\"Floreal\";\"other\"\n\"3028674\";\"Floréal\";\"other\"\n\"3028680\";\"Capvern\";\"main\"\n\"3028690\";\"Cappelle-la-Grande\";\"main\"\n\"3028690\";\"Cappelle\";\"other\"\n\"3028690\";\"Cappelle-la-Grand\";\"other\"\n\"3028691\";\"Cappelle-en-Pévèle\";\"main\"\n\"3028691\";\"Cappelle-en-Pevele\";\"ascii\"\n\"3028691\";\"Cappelle\";\"other\"\n\"3028709\";\"Capinghem\";\"main\"\n\"3028720\";\"Capestang\";\"main\"\n\"3028722\";\"Capendu\";\"main\"\n\"3028739\";\"Capdenac-Gare\";\"main\"\n\"3028739\";\"Capdenac\";\"other\"\n\"3028745\";\"Capbreton\";\"main\"\n\"3028745\";\"Capbrutus\";\"other\"\n\"3028754\";\"Cany-Barville\";\"main\"\n\"3028754\";\"Cany\";\"other\"\n\"3028767\";\"Cantin\";\"main\"\n\"3028773\";\"Cantenay-Épinard\";\"main\"\n\"3028773\";\"Cantenay-Epinard\";\"ascii\"\n\"3028773\";\"Cantenay\";\"other\"\n\"3028773\";\"Epinard Cantenay\";\"other\"\n\"3028774\";\"Cantenac\";\"main\"\n\"3028779\";\"Canteleu\";\"main\"\n\"3028783\";\"Cantaron\";\"main\"\n\"3028796\";\"Canon\";\"main\"\n\"3028797\";\"Canohès\";\"main\"\n\"3028797\";\"Canohes\";\"ascii\"\n\"3028797\";\"Canoes\";\"other\"\n\"3028806\";\"Cannes-Écluse\";\"main\"\n\"3028806\";\"Cannes-Ecluse\";\"ascii\"\n\"3028808\";\"Cannes\";\"main\"\n\"3028808\";\"Canas\";\"other\"\n\"3028808\";\"Canes\";\"other\"\n\"3028808\";\"Chalier\";\"other\"\n\"3028808\";\"Châlier\";\"other\"\n\"3028808\";\"Kan\";\"other\"\n\"3028808\";\"Kannes\";\"other\"\n\"3028808\";\"Kanny\";\"other\"\n\"3028808\";\"jia na\";\"other\"\n\"3028808\";\"kan\";\"other\"\n\"3028808\";\"kan'nu\";\"other\"\n\"3028808\";\"kn\";\"other\"\n\"3028808\";\"mdynt kan\";\"other\"\n\"3028808\";\"Κάννες\";\"other\"\n\"3028808\";\"Кан\";\"other\"\n\"3028808\";\"Канны\";\"other\"\n\"3028808\";\"קאן\";\"other\"\n\"3028808\";\"مدينة كان\";\"other\"\n\"3028808\";\"کان\";\"other\"\n\"3028808\";\"کن\";\"other\"\n\"3028808\";\"カンヌ\";\"other\"\n\"3028808\";\"戛纳\";\"other\"\n\"3028824\";\"Cangey\";\"main\"\n\"3028831\";\"Canet\";\"main\"\n\"3028832\";\"Canet-en-Roussillon\";\"main\"\n\"3028838\";\"Canéjan\";\"main\"\n\"3028838\";\"Canejan\";\"ascii\"\n\"3028844\";\"Candillargues\";\"main\"\n\"3028844\";\"Come-de-la-Palus\";\"other\"\n\"3028844\";\"Côme-de-la-Palus\";\"other\"\n\"3028846\";\"Candé-sur-Beuvron\";\"main\"\n\"3028846\";\"Cande-sur-Beuvron\";\"ascii\"\n\"3028846\";\"Cande\";\"other\"\n\"3028846\";\"Candé\";\"other\"\n\"3028851\";\"Candé\";\"main\"\n\"3028851\";\"Cande\";\"ascii\"\n\"3028856\";\"Cancon\";\"main\"\n\"3028868\";\"Cancale\";\"main\"\n\"3028868\";\"Kankaven\";\"other\"\n\"3028902\";\"Camps-la-Source\";\"main\"\n\"3028902\";\"Camps\";\"other\"\n\"3028902\";\"Camps les Brignols\";\"other\"\n\"3028908\";\"Campsas\";\"main\"\n\"3028946\";\"Camphin-en-Pévèle\";\"main\"\n\"3028946\";\"Camphin-en-Pevele\";\"ascii\"\n\"3028946\";\"Camphin\";\"other\"\n\"3028946\";\"Camphin-Pevele\";\"other\"\n\"3028946\";\"Camphin-Pevèle\";\"other\"\n\"3028947\";\"Camphin-en-Carembault\";\"main\"\n\"3028947\";\"Camphin\";\"other\"\n\"3028954\";\"Campénéac\";\"main\"\n\"3028954\";\"Campeneac\";\"ascii\"\n\"3028954\";\"Kempenieg\";\"other\"\n\"3028966\";\"Campbon\";\"main\"\n\"3028966\";\"Kambon\";\"other\"\n\"3028976\";\"Campan\";\"main\"\n\"3028983\";\"Campagne-lès-Hesdin\";\"main\"\n\"3028983\";\"Campagne-les-Hesdin\";\"ascii\"\n\"3028983\";\"Campagne\";\"other\"\n\"3028983\";\"Le Pelletier-sur-Canche\";\"other\"\n\"3028983\";\"Lepelletier-sur-Canche\";\"other\"\n\"3029002\";\"Camors\";\"main\"\n\"3029002\";\"Kamorzh\";\"other\"\n\"3029003\";\"Camon\";\"main\"\n\"3029012\";\"Camiers\";\"main\"\n\"3029023\";\"Cambronne-lès-Ribécourt\";\"main\"\n\"3029023\";\"Cambronne-les-Ribecourt\";\"ascii\"\n\"3029023\";\"Cambronne\";\"other\"\n\"3029024\";\"Cambronne-lès-Clermont\";\"main\"\n\"3029024\";\"Cambronne-les-Clermont\";\"ascii\"\n\"3029024\";\"Cambronne\";\"other\"\n\"3029024\";\"Cambronne-le-Mont-Brutus\";\"other\"\n\"3029027\";\"Cambremer\";\"main\"\n\"3029030\";\"Cambrai\";\"main\"\n\"3029030\";\"Cambria\";\"other\"\n\"3029030\";\"Kambre\";\"other\"\n\"3029030\";\"kanbure\";\"other\"\n\"3029030\";\"Камбре\";\"other\"\n\"3029030\";\"カンブレー\";\"other\"\n\"3029041\";\"Cambo-les-Bains\";\"main\"\n\"3029041\";\"Cambo\";\"other\"\n\"3029041\";\"Kanbo\";\"other\"\n\"3029041\";\"La Montagne\";\"other\"\n\"3029044\";\"Camblanes-et-Meynac\";\"main\"\n\"3029044\";\"Camblanes\";\"other\"\n\"3029046\";\"Camblain-Châtelain\";\"main\"\n\"3029046\";\"Camblain-Chatelain\";\"ascii\"\n\"3029051\";\"Cambes-en-Plaine\";\"main\"\n\"3029051\";\"Cambes\";\"other\"\n\"3029052\";\"Cambes\";\"main\"\n\"3029068\";\"Camaret-sur-Mer\";\"main\"\n\"3029068\";\"Camaret\";\"other\"\n\"3029068\";\"Kameled\";\"other\"\n\"3029069\";\"Camaret-sur-Aigues\";\"main\"\n\"3029069\";\"Camaret\";\"other\"\n\"3029069\";\"Camaret-sur-Eygues\";\"other\"\n\"3029071\";\"Camarès\";\"main\"\n\"3029071\";\"Camares\";\"ascii\"\n\"3029071\";\"Camares-sur-Dourdon\";\"other\"\n\"3029080\";\"Calvisson\";\"main\"\n\"3029090\";\"Calvi\";\"main\"\n\"3029090\";\"Kal'vi\";\"other\"\n\"3029090\";\"Kalvi\";\"other\"\n\"3029090\";\"ka er wei\";\"other\"\n\"3029090\";\"Калви\";\"other\"\n\"3029090\";\"Кальви\";\"other\"\n\"3029090\";\"卡尔维\";\"other\"\n\"3029096\";\"Caluire-et-Cuire\";\"main\"\n\"3029096\";\"Caluire\";\"other\"\n\"3029096\";\"Kalir e Kir\";\"other\"\n\"3029096\";\"Scevola\";\"other\"\n\"3029096\";\"Scévola\";\"other\"\n\"3029096\";\"karyuiru=e=kyuiru\";\"other\"\n\"3029096\";\"Калир е Кир\";\"other\"\n\"3029096\";\"カリュイール＝エ＝キュイール\";\"other\"\n\"3029098\";\"Calonne-sur-la-Lys\";\"main\"\n\"3029098\";\"Calonne\";\"other\"\n\"3029099\";\"Calonne-Ricouart\";\"main\"\n\"3029099\";\"Calonne\";\"other\"\n\"3029107\";\"Calmont\";\"main\"\n\"3029108\";\"Calmont\";\"main\"\n\"3029108\";\"Culmont\";\"other\"\n\"3029118\";\"Callian\";\"main\"\n\"3029125\";\"Callas\";\"main\"\n\"3029126\";\"Callac\";\"main\"\n\"3029126\";\"Kallag\";\"other\"\n\"3029140\";\"Calenzana\";\"main\"\n\"3029162\";\"Calais\";\"main\"\n\"3029162\";\"Caletum\";\"other\"\n\"3029162\";\"Kale\";\"other\"\n\"3029162\";\"Kales\";\"other\"\n\"3029162\";\"jia lai\";\"other\"\n\"3029162\";\"kare\";\"other\"\n\"3029162\";\"Кале\";\"other\"\n\"3029162\";\"קאלה\";\"other\"\n\"3029162\";\"カレー\";\"other\"\n\"3029162\";\"加来\";\"other\"\n\"3029168\";\"Cajarc\";\"main\"\n\"3029174\";\"Caissargues\";\"main\"\n\"3029178\";\"Cairon\";\"main\"\n\"3029186\";\"Cailloux-sur-Fontaines\";\"main\"\n\"3029186\";\"Cailloux\";\"other\"\n\"3029206\";\"Cahuzac-sur-Vère\";\"main\"\n\"3029206\";\"Cahuzac-sur-Vere\";\"ascii\"\n\"3029206\";\"Cahusac-sur-Vere\";\"other\"\n\"3029206\";\"Cahusac-sur-Vère\";\"other\"\n\"3029206\";\"Cahuzac\";\"other\"\n\"3029206\";\"Cuhuzac-sur-Vere\";\"other\"\n\"3029213\";\"Cahors\";\"main\"\n\"3029213\";\"Caors\";\"other\"\n\"3029213\";\"Divona Cadurcorum\";\"other\"\n\"3029213\";\"Kagor\";\"other\"\n\"3029213\";\"Kaor\";\"other\"\n\"3029213\";\"kaoru\";\"other\"\n\"3029213\";\"Кагор\";\"other\"\n\"3029213\";\"Каор\";\"other\"\n\"3029213\";\"カオール\";\"other\"\n\"3029221\";\"Cahagnes\";\"main\"\n\"3029222\";\"Cagny\";\"main\"\n\"3029223\";\"Cagny\";\"main\"\n\"3029227\";\"Cagnes-sur-Mer\";\"main\"\n\"3029227\";\"Cagnes\";\"other\"\n\"3029227\";\"Kan sir Mer\";\"other\"\n\"3029227\";\"Kan sjur Mer\";\"other\"\n\"3029227\";\"Кан сюр Мер\";\"other\"\n\"3029227\";\"Кањ сир Мер\";\"other\"\n\"3029229\";\"Cagnac-les-Mines\";\"main\"\n\"3029229\";\"Bon-Air\";\"other\"\n\"3029229\";\"Cagnac\";\"other\"\n\"3029229\";\"Roc-la-Montagne\";\"other\"\n\"3029234\";\"Caëstre\";\"main\"\n\"3029234\";\"Caestre\";\"ascii\"\n\"3029241\";\"Caen\";\"main\"\n\"3029241\";\"Kan\";\"other\"\n\"3029241\";\"ka ang\";\"other\"\n\"3029241\";\"kan\";\"other\"\n\"3029241\";\"Кан\";\"other\"\n\"3029241\";\"カーン\";\"other\"\n\"3029241\";\"卡昂\";\"other\"\n\"3029248\";\"Cadolive\";\"main\"\n\"3029253\";\"Cadillac\";\"main\"\n\"3029253\";\"Cadilhac\";\"other\"\n\"3029254\";\"Caderousse\";\"main\"\n\"3029256\";\"Cadenet\";\"main\"\n\"3029256\";\"kadone\";\"other\"\n\"3029256\";\"カドネ\";\"other\"\n\"3029257\";\"Caden\";\"main\"\n\"3029257\";\"Kaden\";\"other\"\n\"3029265\";\"Cadaujac\";\"main\"\n\"3029271\";\"Cadalen\";\"main\"\n\"3029276\";\"Cachan\";\"main\"\n\"3029276\";\"Cachon\";\"other\"\n\"3029276\";\"Kashan\";\"other\"\n\"3029276\";\"Кашан\";\"other\"\n\"3029282\";\"Cabris\";\"main\"\n\"3029283\";\"Cabriès\";\"main\"\n\"3029283\";\"Cabries\";\"ascii\"\n\"3029286\";\"Cabrières\";\"main\"\n\"3029286\";\"Cabrieres\";\"ascii\"\n\"3029297\";\"Cabourg\";\"main\"\n\"3029302\";\"Cabestany\";\"main\"\n\"3029306\";\"Cabasse\";\"main\"\n\"3029309\";\"Cabariot\";\"main\"\n\"3029309\";\"Cabarrot\";\"other\"\n\"3029312\";\"Cabannes\";\"main\"\n\"3029320\";\"Cabanac-et-Villagrains\";\"main\"\n\"3029338\";\"Buzet-sur-Tarn\";\"main\"\n\"3029338\";\"Buzet\";\"other\"\n\"3029339\";\"Buzet-sur-Baïse\";\"main\"\n\"3029339\";\"Buzet-sur-Baise\";\"ascii\"\n\"3029339\";\"Buzet\";\"other\"\n\"3029345\";\"Buzançais\";\"main\"\n\"3029345\";\"Buzancais\";\"ascii\"\n\"3029345\";\"La Fraternite-sur-Indre\";\"other\"\n\"3029345\";\"La Fraternité-sur-Indre\";\"other\"\n\"3029350\";\"Buxy\";\"main\"\n\"3029350\";\"Buxy-le-National\";\"other\"\n\"3029350\";\"Grand-Buxy\";\"other\"\n\"3029355\";\"Buxières-les-Mines\";\"main\"\n\"3029355\";\"Buxieres-les-Mines\";\"ascii\"\n\"3029355\";\"Buxieres\";\"other\"\n\"3029355\";\"Buxiéres\";\"other\"\n\"3029365\";\"Buxerolles\";\"main\"\n\"3029377\";\"Butry-sur-Oise\";\"main\"\n\"3029377\";\"Butry\";\"other\"\n\"3029392\";\"Bussy-Saint-Georges\";\"main\"\n\"3029428\";\"Bussières\";\"main\"\n\"3029428\";\"Bussieres\";\"ascii\"\n\"3029429\";\"Bussière-Poitevine\";\"main\"\n\"3029429\";\"Bussiere-Poitevine\";\"ascii\"\n\"3029429\";\"Bussiere\";\"other\"\n\"3029429\";\"Bussiere-Portevine\";\"other\"\n\"3029429\";\"Bussiere-l'Egalite\";\"other\"\n\"3029429\";\"Bussière\";\"other\"\n\"3029429\";\"Bussière-Portevine\";\"other\"\n\"3029429\";\"Bussière-l'Egalité\";\"other\"\n\"3029432\";\"Bussière-Galant\";\"main\"\n\"3029432\";\"Bussiere-Galant\";\"ascii\"\n\"3029433\";\"Bussière-Dunoise\";\"main\"\n\"3029433\";\"Bussiere-Dunoise\";\"ascii\"\n\"3029433\";\"Bussiere\";\"other\"\n\"3029433\";\"Bussière\";\"other\"\n\"3029462\";\"Bussang\";\"main\"\n\"3029465\";\"Bussac-sur-Charente\";\"main\"\n\"3029473\";\"Busnes\";\"main\"\n\"3029477\";\"Busigny\";\"main\"\n\"3029483\";\"Bury\";\"main\"\n\"3029494\";\"Buros\";\"main\"\n\"3029498\";\"Burnhaupt-le-Haut\";\"main\"\n\"3029499\";\"Burnhaupt-le-Bas\";\"main\"\n\"3029499\";\"Burnhaupt\";\"other\"\n\"3029503\";\"Burlats\";\"main\"\n\"3029505\";\"Burie\";\"main\"\n\"3029522\";\"Bures-sur-Yvette\";\"main\"\n\"3029522\";\"Bures\";\"other\"\n\"3029522\";\"Bures-Orsay\";\"other\"\n\"3029548\";\"Burbure\";\"main\"\n\"3029566\";\"Bully-les-Mines\";\"main\"\n\"3029566\";\"Bully\";\"other\"\n\"3029568\";\"Bully\";\"main\"\n\"3029570\";\"Bully\";\"main\"\n\"3029572\";\"Bullion\";\"main\"\n\"3029580\";\"Bulgnéville\";\"main\"\n\"3029580\";\"Bulgneville\";\"ascii\"\n\"3029603\";\"Buis-les-Baronnies\";\"main\"\n\"3029603\";\"Buis\";\"other\"\n\"3029603\";\"Le Buis-les-Baronnies\";\"other\"\n\"3029606\";\"Buironfosse\";\"main\"\n\"3029620\";\"Buhl\";\"main\"\n\"3029637\";\"Bugeat\";\"main\"\n\"3029654\";\"Buellas\";\"main\"\n\"3029655\";\"Bueil\";\"main\"\n\"3029670\";\"Bucy-le-Long\";\"main\"\n\"3029670\";\"Bucy\";\"other\"\n\"3029673\";\"Bucquoy\";\"main\"\n\"3029677\";\"Buchy\";\"main\"\n\"3029682\";\"Buchères\";\"main\"\n\"3029682\";\"Bucheres\";\"ascii\"\n\"3029684\";\"Buchelay\";\"main\"\n\"3029695\";\"Buc\";\"main\"\n\"3029697\";\"Bubry\";\"main\"\n\"3029697\";\"Bubri\";\"other\"\n\"3029705\";\"Bû\";\"main\"\n\"3029705\";\"Bu\";\"ascii\"\n\"3029706\";\"Bry-sur-Marne\";\"main\"\n\"3029706\";\"Bry\";\"other\"\n\"3029713\";\"Bruz\";\"main\"\n\"3029715\";\"Bruyères-sur-Oise\";\"main\"\n\"3029715\";\"Bruyeres-sur-Oise\";\"ascii\"\n\"3029715\";\"Bruyeres\";\"other\"\n\"3029715\";\"Bruyères\";\"other\"\n\"3029717\";\"Bruyères-le-Châtel\";\"main\"\n\"3029717\";\"Bruyeres-le-Chatel\";\"ascii\"\n\"3029717\";\"Bruyeres\";\"other\"\n\"3029717\";\"Bruyeres-Libre\";\"other\"\n\"3029717\";\"Bruyères\";\"other\"\n\"3029717\";\"Bruyères-Libre\";\"other\"\n\"3029718\";\"Bruyères-et-Montbérault\";\"main\"\n\"3029718\";\"Bruyeres-et-Montberault\";\"ascii\"\n\"3029718\";\"Bruyeres\";\"other\"\n\"3029718\";\"Bruyères\";\"other\"\n\"3029725\";\"Bruyères\";\"main\"\n\"3029725\";\"Bruyeres\";\"ascii\"\n\"3029725\";\"Bruerium\";\"other\"\n\"3029746\";\"Brunstatt\";\"main\"\n\"3029748\";\"Brunoy\";\"main\"\n\"3029748\";\"Brinoa\";\"other\"\n\"3029748\";\"Brinoj\";\"other\"\n\"3029748\";\"Бриноа\";\"other\"\n\"3029748\";\"Бриној\";\"other\"\n\"3029771\";\"Brumath\";\"main\"\n\"3029775\";\"Brûlon\";\"main\"\n\"3029775\";\"Brulon\";\"ascii\"\n\"3029790\";\"Bruille-Saint-Amand\";\"main\"\n\"3029790\";\"Bruille\";\"other\"\n\"3029791\";\"Bruille-lez-Marchiennes\";\"main\"\n\"3029791\";\"Bruille\";\"other\"\n\"3029791\";\"Bruille-les-Marchiennes\";\"other\"\n\"3029793\";\"Bruguières\";\"main\"\n\"3029793\";\"Bruguieres\";\"ascii\"\n\"3029797\";\"Brugheas\";\"main\"\n\"3029799\";\"Bruges\";\"main\"\n\"3029824\";\"Bruay-sur-l'Escaut\";\"main\"\n\"3029824\";\"Bruay\";\"other\"\n\"3029825\";\"Bruay-la-Buissière\";\"main\"\n\"3029825\";\"Bruay-la-Buissiere\";\"ascii\"\n\"3029825\";\"Bruay-en-Artois\";\"other\"\n\"3029852\";\"Broût-Vernet\";\"main\"\n\"3029852\";\"Brout-Vernet\";\"ascii\"\n\"3029855\";\"Brou-sur-Chantereine\";\"main\"\n\"3029855\";\"Brou\";\"other\"\n\"3029890\";\"Brouckerque\";\"main\"\n\"3029890\";\"Brouckercque\";\"other\"\n\"3029898\";\"Brou\";\"main\"\n\"3029925\";\"Broons\";\"main\"\n\"3029925\";\"Bronn\";\"other\"\n\"3029931\";\"Bron\";\"main\"\n\"3029931\";\"Брон\";\"other\"\n\"3029951\";\"Broglie\";\"main\"\n\"3029951\";\"Chambrois\";\"other\"\n\"3029967\";\"Brix\";\"main\"\n\"3029970\";\"Brives-Charensac\";\"main\"\n\"3029970\";\"Brives\";\"other\"\n\"3029974\";\"Brive-la-Gaillarde\";\"main\"\n\"3029974\";\"Briv la Gajar\";\"other\"\n\"3029974\";\"Briva\";\"other\"\n\"3029974\";\"Brive\";\"other\"\n\"3029974\";\"Брив ла Гајар\";\"other\"\n\"3029974\";\"Бриве-ла-Гаилларде\";\"other\"\n\"3029984\";\"Brissac-Quincé\";\"main\"\n\"3029984\";\"Brissac-Quince\";\"ascii\"\n\"3029986\";\"Brison-Saint-Innocent\";\"main\"\n\"3029986\";\"Brison\";\"other\"\n\"3029987\";\"Briscous\";\"main\"\n\"3029987\";\"Beskoitze\";\"other\"\n\"3029987\";\"Hiribery\";\"other\"\n\"3029991\";\"Briouze\";\"main\"\n\"3029991\";\"Briouze-Saint-Gervais\";\"other\"\n\"3029992\";\"Brioux-sur-Boutonne\";\"main\"\n\"3029992\";\"Brioux\";\"other\"\n\"3029995\";\"Brioude\";\"main\"\n\"3029995\";\"Briude\";\"other\"\n\"3030007\";\"Brionne\";\"main\"\n\"3030011\";\"Brion\";\"main\"\n\"3030020\";\"Briollay\";\"main\"\n\"3030024\";\"Brinon-sur-Sauldre\";\"main\"\n\"3030024\";\"Brinon\";\"other\"\n\"3030029\";\"Brindas\";\"main\"\n\"3030029\";\"Brindas-sur-Roches\";\"other\"\n\"3030044\";\"Briis-sous-Forges\";\"main\"\n\"3030044\";\"Briis\";\"other\"\n\"3030047\";\"Brigueuil\";\"main\"\n\"3030057\";\"Brignoles\";\"main\"\n\"3030057\";\"Brinhola\";\"other\"\n\"3030057\";\"Brinhòla\";\"other\"\n\"3030063\";\"Brignais\";\"main\"\n\"3030071\";\"Briey\";\"main\"\n\"3030090\";\"Brienon-sur-Armançon\";\"main\"\n\"3030090\";\"Brienon-sur-Armancon\";\"ascii\"\n\"3030090\";\"Brienon\";\"other\"\n\"3030091\";\"Briennon\";\"main\"\n\"3030093\";\"Brienne-le-Château\";\"main\"\n\"3030093\";\"Brienne-le-Chateau\";\"ascii\"\n\"3030093\";\"Brienne-le-Bourg\";\"other\"\n\"3030100\";\"Brié-et-Angonnes\";\"main\"\n\"3030100\";\"Brie-et-Angonnes\";\"ascii\"\n\"3030100\";\"Brie Augonnes\";\"other\"\n\"3030100\";\"Brie-et-Augonnes\";\"other\"\n\"3030100\";\"Brié Augonnes\";\"other\"\n\"3030100\";\"Brié-et-Augonnes\";\"other\"\n\"3030101\";\"Brie-Comte-Robert\";\"main\"\n\"3030101\";\"Brie-Libre\";\"other\"\n\"3030101\";\"Brie-la-Ville\";\"other\"\n\"3030101\";\"Brie-sur-Hieres\";\"other\"\n\"3030101\";\"Brie-sur-Hières\";\"other\"\n\"3030102\";\"Briec\";\"main\"\n\"3030102\";\"Briec-de-l'Odet\";\"other\"\n\"3030102\";\"Brieg\";\"other\"\n\"3030108\";\"Brie\";\"main\"\n\"3030114\";\"Bricy\";\"main\"\n\"3030120\";\"Bricquebec\";\"main\"\n\"3030127\";\"Briatexte\";\"main\"\n\"3030132\";\"Briare\";\"main\"\n\"3030142\";\"Briançon\";\"main\"\n\"3030142\";\"Briancon\";\"ascii\"\n\"3030147\";\"Brezolles\";\"main\"\n\"3030147\";\"Brezol\";\"other\"\n\"3030147\";\"Brézolles\";\"other\"\n\"3030147\";\"Брезол\";\"other\"\n\"3030148\";\"Brézins\";\"main\"\n\"3030148\";\"Brezins\";\"ascii\"\n\"3030155\";\"Brézé\";\"main\"\n\"3030155\";\"Breze\";\"ascii\"\n\"3030171\";\"Bréviandes\";\"main\"\n\"3030171\";\"Breviandes\";\"ascii\"\n\"3030171\";\"Breviande\";\"other\"\n\"3030171\";\"Bréviande\";\"other\"\n\"3030180\";\"Bréval\";\"main\"\n\"3030180\";\"Breval\";\"ascii\"\n\"3030191\";\"Breuschwickersheim\";\"main\"\n\"3030195\";\"Breuilpont\";\"main\"\n\"3030197\";\"Breuil-Magné\";\"main\"\n\"3030197\";\"Breuil-Magne\";\"ascii\"\n\"3030202\";\"Breuil-le-Vert\";\"main\"\n\"3030202\";\"Breuil\";\"other\"\n\"3030203\";\"Breuillet\";\"main\"\n\"3030204\";\"Breuillet\";\"main\"\n\"3030205\";\"Breuil-le-Sec\";\"main\"\n\"3030205\";\"Breuil\";\"other\"\n\"3030233\";\"Bretteville-sur-Odon\";\"main\"\n\"3030233\";\"Bretteville\";\"other\"\n\"3030234\";\"Bretteville-sur-Laize\";\"main\"\n\"3030234\";\"Bretteville\";\"other\"\n\"3030240\";\"Bretteville-du-Grand-Caux\";\"main\"\n\"3030240\";\"Bretteville\";\"other\"\n\"3030240\";\"La Nativite\";\"other\"\n\"3030240\";\"La Nativité\";\"other\"\n\"3030242\";\"Bretteville\";\"main\"\n\"3030245\";\"Brette-les-Pins\";\"main\"\n\"3030245\";\"Brette\";\"other\"\n\"3030254\";\"Bretoncelles\";\"main\"\n\"3030257\";\"Brétigny-sur-Orge\";\"main\"\n\"3030257\";\"Bretigny-sur-Orge\";\"ascii\"\n\"3030257\";\"Bretigny\";\"other\"\n\"3030257\";\"Bretini sir Orz\";\"other\"\n\"3030257\";\"Бретињи сир Орж\";\"other\"\n\"3030264\";\"Bretignolles-sur-Mer\";\"main\"\n\"3030264\";\"Bretignolles\";\"other\"\n\"3030275\";\"Breteuil\";\"main\"\n\"3030275\";\"Breteuil-sur-Iton\";\"other\"\n\"3030276\";\"Breteuil\";\"main\"\n\"3030276\";\"Breteuil-sur-Noye\";\"other\"\n\"3030278\";\"Bretenoux\";\"main\"\n\"3030283\";\"Breteil\";\"main\"\n\"3030283\";\"Brezhiel\";\"other\"\n\"3030300\";\"Brest\";\"main\"\n\"3030300\";\"Brestia\";\"other\"\n\"3030300\";\"braista\";\"other\"\n\"3030300\";\"bu lei si te\";\"other\"\n\"3030300\";\"buresuto\";\"other\"\n\"3030300\";\"Брест\";\"other\"\n\"3030300\";\"ब्रैस्त\";\"other\"\n\"3030300\";\"ブレスト\";\"other\"\n\"3030300\";\"布雷斯特\";\"other\"\n\"3030303\";\"Bressuire\";\"main\"\n\"3030303\";\"Bressjuir\";\"other\"\n\"3030303\";\"Givre-en-Mai\";\"other\"\n\"3030303\";\"Брессюир\";\"other\"\n\"3030308\";\"Bressols\";\"main\"\n\"3030323\";\"Bresles\";\"main\"\n\"3030338\";\"Brens\";\"main\"\n\"3030340\";\"Brenouille\";\"main\"\n\"3030374\";\"Brêmes\";\"main\"\n\"3030374\";\"Bremes\";\"ascii\"\n\"3030377\";\"La Crèche\";\"main\"\n\"3030377\";\"La Creche\";\"ascii\"\n\"3030377\";\"Breloux\";\"other\"\n\"3030387\";\"Breil-sur-Roya\";\"main\"\n\"3030387\";\"Breil\";\"other\"\n\"3030387\";\"Brej sir Roaja\";\"other\"\n\"3030387\";\"Brej sir Roja\";\"other\"\n\"3030387\";\"Бреј сир Роаја\";\"other\"\n\"3030387\";\"Бреј сир Роја\";\"other\"\n\"3030403\";\"Bréhand\";\"main\"\n\"3030403\";\"Brehand\";\"ascii\"\n\"3030403\";\"Brehant-Monkontour\";\"other\"\n\"3030405\";\"Bréhal\";\"main\"\n\"3030405\";\"Brehal\";\"ascii\"\n\"3030440\";\"Brech\";\"main\"\n\"3030440\";\"Brec'h\";\"other\"\n\"3030442\";\"Brécey\";\"main\"\n\"3030442\";\"Brecey\";\"ascii\"\n\"3030444\";\"Brécé\";\"main\"\n\"3030444\";\"Brece\";\"ascii\"\n\"3030444\";\"Brec'heg\";\"other\"\n\"3030446\";\"Brebières\";\"main\"\n\"3030446\";\"Brebieres\";\"ascii\"\n\"3030448\";\"Bréauté\";\"main\"\n\"3030448\";\"Breaute\";\"ascii\"\n\"3030448\";\"Le Bourg-Libre\";\"other\"\n\"3030456\";\"Bréal-sous-Montfort\";\"main\"\n\"3030456\";\"Breal-sous-Montfort\";\"ascii\"\n\"3030456\";\"Breal\";\"other\"\n\"3030456\";\"Breal-Monforzh\";\"other\"\n\"3030456\";\"Breal-Moñforzh\";\"other\"\n\"3030456\";\"Bréal\";\"other\"\n\"3030457\";\"Brazey-en-Plaine\";\"main\"\n\"3030457\";\"Brazey\";\"other\"\n\"3030459\";\"Bray-sur-Somme\";\"main\"\n\"3030459\";\"Bray\";\"other\"\n\"3030460\";\"Bray-sur-Seine\";\"main\"\n\"3030460\";\"Bray\";\"other\"\n\"3030468\";\"Bray-en-Val\";\"main\"\n\"3030468\";\"Bray\";\"other\"\n\"3030473\";\"Bray-Dunes\";\"main\"\n\"3030473\";\"Bray\";\"other\"\n\"3030473\";\"Brayduinen\";\"other\"\n\"3030484\";\"Brax\";\"main\"\n\"3030485\";\"Brax\";\"main\"\n\"3030503\";\"Braud-et-Saint-Louis\";\"main\"\n\"3030503\";\"Braud\";\"other\"\n\"3030517\";\"Brassac-les-Mines\";\"main\"\n\"3030517\";\"Brassac\";\"other\"\n\"3030520\";\"Brassac\";\"main\"\n\"3030522\";\"Brasparts\";\"main\"\n\"3030522\";\"Brasparzh\";\"other\"\n\"3030524\";\"Brasles\";\"main\"\n\"3030529\";\"Bras\";\"main\"\n\"3030534\";\"Brantôme\";\"main\"\n\"3030534\";\"Brantome\";\"ascii\"\n\"3030542\";\"Branoux-les-Taillades\";\"main\"\n\"3030542\";\"Branoux\";\"other\"\n\"3030546\";\"Branne\";\"main\"\n\"3030553\";\"Branges\";\"main\"\n\"3030561\";\"Brando\";\"main\"\n\"3030565\";\"Brandérion\";\"main\"\n\"3030565\";\"Branderion\";\"ascii\"\n\"3030589\";\"Bram\";\"main\"\n\"3030600\";\"Brain-sur-Allonnes\";\"main\"\n\"3030600\";\"Brain\";\"other\"\n\"3030603\";\"Brains\";\"main\"\n\"3030603\";\"Brenn\";\"other\"\n\"3030604\";\"Braine\";\"main\"\n\"3030604\";\"Braisne\";\"other\"\n\"3030628\";\"Bracieux\";\"main\"\n\"3030640\";\"Bozouls\";\"main\"\n\"3030641\";\"Bozel\";\"main\"\n\"3030641\";\"Frutitidor\";\"other\"\n\"3030645\";\"Boynes\";\"main\"\n\"3030656\";\"Boyard-Ville\";\"main\"\n\"3030656\";\"Bojardvil'\";\"other\"\n\"3030656\";\"Боярдвиль\";\"other\"\n\"3030659\";\"Boves\";\"main\"\n\"3030663\";\"Bouzy-la-Forêt\";\"main\"\n\"3030663\";\"Bouzy-la-Foret\";\"ascii\"\n\"3030663\";\"Bouzy\";\"other\"\n\"3030668\";\"Bouzonville\";\"main\"\n\"3030668\";\"Bouzanville\";\"other\"\n\"3030668\";\"Busendorf\";\"other\"\n\"3030675\";\"Bouzillé\";\"main\"\n\"3030675\";\"Bouzille\";\"ascii\"\n\"3030676\";\"Bouzigues\";\"main\"\n\"3030708\";\"Bouxwiller\";\"main\"\n\"3030708\";\"Bouksviler\";\"other\"\n\"3030708\";\"Buchsweiler\";\"other\"\n\"3030708\";\"Buksvile\";\"other\"\n\"3030708\";\"Боуксвилер\";\"other\"\n\"3030708\";\"Буксвиље\";\"other\"\n\"3030713\";\"Bouxières-aux-Dames\";\"main\"\n\"3030713\";\"Bouxieres-aux-Dames\";\"ascii\"\n\"3030713\";\"Bouxieres\";\"other\"\n\"3030713\";\"Bouxieres-sur-Mont\";\"other\"\n\"3030713\";\"Bouxières\";\"other\"\n\"3030713\";\"Bouxières-sur-Mont\";\"other\"\n\"3030714\";\"Bouxières-aux-Chênes\";\"main\"\n\"3030714\";\"Bouxieres-aux-Chenes\";\"ascii\"\n\"3030714\";\"Bouxieres\";\"other\"\n\"3030714\";\"Bouxières\";\"other\"\n\"3030718\";\"Bouvron\";\"main\"\n\"3030718\";\"Bolvronn\";\"other\"\n\"3030718\";\"Bouyron\";\"other\"\n\"3030723\";\"Bouville\";\"main\"\n\"3030727\";\"Bouvigny-Boyeffles\";\"main\"\n\"3030727\";\"Bouvigny\";\"other\"\n\"3030728\";\"Bouvignies\";\"main\"\n\"3030732\";\"Bouvesse-Quirieu\";\"main\"\n\"3030732\";\"Bouvesse\";\"other\"\n\"3030742\";\"Bouttencourt\";\"main\"\n\"3030755\";\"Boutigny-sur-Essonne\";\"main\"\n\"3030755\";\"Boutigny\";\"other\"\n\"3030757\";\"Boutiers-Saint-Trojan\";\"main\"\n\"3030757\";\"Boutiers\";\"other\"\n\"3030772\";\"Bout-du-Pont-de-Larn\";\"main\"\n\"3030787\";\"Boussy-Saint-Antoine\";\"main\"\n\"3030787\";\"Boussy-sous-Senart\";\"other\"\n\"3030787\";\"Boussy-sous-Sénart\";\"other\"\n\"3030799\";\"Boussois\";\"main\"\n\"3030803\";\"Boussières\";\"main\"\n\"3030803\";\"Boussieres\";\"ascii\"\n\"3030819\";\"Bousse\";\"main\"\n\"3030822\";\"Boussay\";\"main\"\n\"3030822\";\"Beuzid-Klison\";\"other\"\n\"3030845\";\"Bousies\";\"main\"\n\"3030847\";\"Bousbecque\";\"main\"\n\"3030847\";\"Bousbecques\";\"other\"\n\"3030857\";\"Bourth\";\"main\"\n\"3030857\";\"Burt\";\"other\"\n\"3030857\";\"Бурт\";\"other\"\n\"3030876\";\"Bourron-Marlotte\";\"main\"\n\"3030876\";\"Bourron\";\"other\"\n\"3030891\";\"Bourogne\";\"main\"\n\"3030895\";\"Bournoncle-Saint-Pierre\";\"main\"\n\"3030895\";\"Bournoncle\";\"other\"\n\"3030902\";\"Bournezeau\";\"main\"\n\"3030919\";\"Bourlon\";\"main\"\n\"3030944\";\"Bourgueil\";\"main\"\n\"3030945\";\"Bourguébus\";\"main\"\n\"3030945\";\"Bourguebus\";\"ascii\"\n\"3030946\";\"Bourgtheroulde-Infreville\";\"main\"\n\"3030947\";\"Bourg\";\"main\"\n\"3030947\";\"Bourg-sur-Gironde\";\"other\"\n\"3030949\";\"Bourg-Saint-Maurice\";\"main\"\n\"3030949\";\"Nargue-Sarde\";\"other\"\n\"3030949\";\"Pente-Rude\";\"other\"\n\"3030953\";\"Bourg-Saint-Andéol\";\"main\"\n\"3030953\";\"Bourg-Saint-Andeol\";\"ascii\"\n\"3030953\";\"Bourg-sur-Rhone\";\"other\"\n\"3030953\";\"Bourg-sur-Rhône\";\"other\"\n\"3030953\";\"Commune-Libre\";\"other\"\n\"3030960\";\"Bourgoin\";\"main\"\n\"3030965\";\"Bourgogne\";\"main\"\n\"3030965\";\"Burgundija\";\"other\"\n\"3030965\";\"Бургундия\";\"other\"\n\"3030970\";\"Bourgneuf-en-Retz\";\"main\"\n\"3030970\";\"Bourc'hnevez-Raez\";\"other\"\n\"3030970\";\"Bourgneuf\";\"other\"\n\"3030979\";\"Bourgneuf\";\"main\"\n\"3030983\";\"la Guingueta d'Ix\";\"main\"\n\"3030983\";\"Bourg-Madame\";\"other\"\n\"3030983\";\"la Guingueta\";\"other\"\n\"3030985\";\"Bourg-lès-Valence\";\"main\"\n\"3030985\";\"Bourg-les-Valence\";\"ascii\"\n\"3030985\";\"Bourg\";\"other\"\n\"3030990\";\"Bourg-la-Reine\";\"main\"\n\"3030990\";\"Bourg-Egalite\";\"other\"\n\"3030990\";\"Bourg-Egalité\";\"other\"\n\"3030990\";\"Bourge la Reine\";\"other\"\n\"3030994\";\"Bourghelles\";\"main\"\n\"3031005\";\"Bourges\";\"main\"\n\"3031005\";\"Borges\";\"other\"\n\"3031005\";\"Burzh\";\"other\"\n\"3031005\";\"bu er ri\";\"other\"\n\"3031005\";\"buruju\";\"other\"\n\"3031005\";\"Бурж\";\"other\"\n\"3031005\";\"ブールジュ\";\"other\"\n\"3031005\";\"布尔日\";\"other\"\n\"3031009\";\"Bourg-en-Bresse\";\"main\"\n\"3031009\";\"Borg\";\"other\"\n\"3031009\";\"Bourg\";\"other\"\n\"3031009\";\"Bourg-Regenere\";\"other\"\n\"3031009\";\"Bourg-Regénéré\";\"other\"\n\"3031009\";\"Burg an Bres\";\"other\"\n\"3031009\";\"Bôrg\";\"other\"\n\"3031009\";\"Epi-d'Ain\";\"other\"\n\"3031009\";\"Epi-d'Or\";\"other\"\n\"3031009\";\"buru=kan=buresu\";\"other\"\n\"3031009\";\"Бург ан Брес\";\"other\"\n\"3031009\";\"ブール＝カン＝ブレス\";\"other\"\n\"3031017\";\"Bourg-de-Thizy\";\"main\"\n\"3031017\";\"Bourg\";\"other\"\n\"3031019\";\"Bourg-des-Comptes\";\"main\"\n\"3031019\";\"Bourg-la-Montagne\";\"other\"\n\"3031019\";\"Gwikomm\";\"other\"\n\"3031020\";\"Bourg-de-Péage\";\"main\"\n\"3031020\";\"Bourg-de-Peage\";\"ascii\"\n\"3031020\";\"Le Bourg-de-Peage\";\"other\"\n\"3031020\";\"Le Bourg-du-Peage\";\"other\"\n\"3031020\";\"Le Bourg-du-Péage\";\"other\"\n\"3031020\";\"Unite-sur-Isere\";\"other\"\n\"3031020\";\"Unité-sur-Isère\";\"other\"\n\"3031027\";\"Bourg-Blanc\";\"main\"\n\"3031027\";\"Ar Vourc'h-Wenn\";\"other\"\n\"3031029\";\"Bourgbarré\";\"main\"\n\"3031029\";\"Bourgbarre\";\"ascii\"\n\"3031029\";\"Bourvarred\";\"other\"\n\"3031030\";\"Bourg-Argental\";\"main\"\n\"3031032\";\"Bourganeuf\";\"main\"\n\"3031035\";\"Bourg-Achard\";\"main\"\n\"3031080\";\"Bourcefranc-le-Chapus\";\"main\"\n\"3031081\";\"Bourbriac\";\"main\"\n\"3031081\";\"Boulvriag\";\"other\"\n\"3031085\";\"Bourbourg\";\"main\"\n\"3031086\";\"Bourbonne-les-Bains\";\"main\"\n\"3031086\";\"Bourbonne\";\"other\"\n\"3031090\";\"Bourbon-Lancy\";\"main\"\n\"3031090\";\"Bellevue-les-Bains\";\"other\"\n\"3031098\";\"Bouray-sur-Juine\";\"main\"\n\"3031098\";\"Bouray\";\"other\"\n\"3031115\";\"Boult-sur-Suippe\";\"main\"\n\"3031115\";\"Boult\";\"other\"\n\"3031129\";\"Bouloire\";\"main\"\n\"3031133\";\"Boulogne-sur-Mer\";\"main\"\n\"3031133\";\"Bolonha-sobre-o-Mar\";\"other\"\n\"3031133\";\"Bononia\";\"other\"\n\"3031133\";\"Boulogne\";\"other\"\n\"3031133\";\"Bulon sir Mer\";\"other\"\n\"3031133\";\"Bulon'\";\"other\"\n\"3031133\";\"Bulon'-sjur-Mer\";\"other\"\n\"3031133\";\"Bulonjo\";\"other\"\n\"3031133\";\"Bulonjo-ce-Maro\";\"other\"\n\"3031133\";\"Bulonjo-sur-Maro\";\"other\"\n\"3031133\";\"Bulonjo-ĉe-Maro\";\"other\"\n\"3031133\";\"Gesoriacum\";\"other\"\n\"3031133\";\"Itius Portus\";\"other\"\n\"3031133\";\"Port-de-l'Union\";\"other\"\n\"3031133\";\"Portus Itius\";\"other\"\n\"3031133\";\"buronyu=shuru=meru\";\"other\"\n\"3031133\";\"Булонь\";\"other\"\n\"3031133\";\"Булонь-сюр-Мер\";\"other\"\n\"3031133\";\"Булоњ сир Мер\";\"other\"\n\"3031133\";\"ブローニュ＝シュル＝メール\";\"other\"\n\"3031135\";\"Boulogne-sur-Gesse\";\"main\"\n\"3031135\";\"Boulogne\";\"other\"\n\"3031137\";\"Boulogne-Billancourt\";\"main\"\n\"3031137\";\"Billancourt\";\"other\"\n\"3031137\";\"Boulogne\";\"other\"\n\"3031137\";\"Boulogne-sur-Seine\";\"other\"\n\"3031137\";\"Bulon Bijankur\";\"other\"\n\"3031137\";\"buronyu=biyankuru\";\"other\"\n\"3031137\";\"Булоњ Бијанкур\";\"other\"\n\"3031137\";\"ブローニュ＝ビヤンクール\";\"other\"\n\"3031144\";\"Bouloc\";\"main\"\n\"3031146\";\"Boulleret\";\"main\"\n\"3031158\";\"Bouligny\";\"main\"\n\"3031161\";\"Boulieu-lès-Annonay\";\"main\"\n\"3031161\";\"Boulieu-les-Annonay\";\"ascii\"\n\"3031161\";\"Boulieu\";\"other\"\n\"3031164\";\"Bouliac\";\"main\"\n\"3031167\";\"Bouleurs\";\"main\"\n\"3031178\";\"Boulbon\";\"main\"\n\"3031178\";\"Boul-la-Montagne\";\"other\"\n\"3031178\";\"Bourg-Montagne\";\"other\"\n\"3031180\";\"Boulazac\";\"main\"\n\"3031182\";\"Boulay-Moselle\";\"main\"\n\"3031182\";\"Boulay\";\"other\"\n\"3031191\";\"Boulange\";\"main\"\n\"3031205\";\"Boujan-sur-Libron\";\"main\"\n\"3031205\";\"Boujan\";\"other\"\n\"3031222\";\"Bouin\";\"main\"\n\"3031222\";\"Bonn\";\"other\"\n\"3031226\";\"Bouilly\";\"main\"\n\"3031238\";\"Bouillé-Loretz\";\"main\"\n\"3031238\";\"Bouille-Loretz\";\"ascii\"\n\"3031240\";\"Bouillargues\";\"main\"\n\"3031268\";\"Bouguenais\";\"main\"\n\"3031268\";\"Bougenais\";\"other\"\n\"3031268\";\"Kervegon\";\"other\"\n\"3031277\";\"Bougival\";\"main\"\n\"3031277\";\"Bougivais\";\"other\"\n\"3031293\";\"Boufféré\";\"main\"\n\"3031293\";\"Bouffere\";\"ascii\"\n\"3031294\";\"Bouffémont\";\"main\"\n\"3031294\";\"Bouffemont\";\"ascii\"\n\"3031315\";\"Boué\";\"main\"\n\"3031315\";\"Boue\";\"ascii\"\n\"3031368\";\"Bouchemaine\";\"main\"\n\"3031380\";\"Bouchain\";\"main\"\n\"3031387\";\"Bouc-Bel-Air\";\"main\"\n\"3031387\";\"Bouc\";\"other\"\n\"3031389\";\"Boucau\";\"main\"\n\"3031389\";\"Bokale\";\"other\"\n\"3031389\";\"Le Boucau\";\"other\"\n\"3031403\";\"Bouaye\";\"main\"\n\"3031403\";\"Bouez\";\"other\"\n\"3031409\";\"Bouafle\";\"main\"\n\"3031462\";\"Bosmie-l'Aiguille\";\"main\"\n\"3031462\";\"Bosmic\";\"other\"\n\"3031469\";\"Bosdarros\";\"main\"\n\"3031479\";\"Bosc-le-Hard\";\"main\"\n\"3031479\";\"Bosc\";\"other\"\n\"3031501\";\"Bort-les-Orgues\";\"main\"\n\"3031501\";\"Bort\";\"other\"\n\"3031516\";\"Bornel\";\"main\"\n\"3031532\";\"Bormes-les-Mimosas\";\"main\"\n\"3031532\";\"Bormes\";\"other\"\n\"3031537\";\"Borgo\";\"main\"\n\"3031552\";\"Bords\";\"main\"\n\"3031567\";\"Bordes\";\"main\"\n\"3031582\";\"Bordeaux\";\"main\"\n\"3031582\";\"Bordele\";\"other\"\n\"3031582\";\"Bordeos - Bordeaux\";\"other\"\n\"3031582\";\"Bordeu\";\"other\"\n\"3031582\";\"Bordeus\";\"other\"\n\"3031582\";\"Bordo\";\"other\"\n\"3031582\";\"Bordozo\";\"other\"\n\"3031582\";\"Bordèu\";\"other\"\n\"3031582\";\"Bordéus\";\"other\"\n\"3031582\";\"Bourdel\";\"other\"\n\"3031582\";\"Burdeos\";\"other\"\n\"3031582\";\"Burdigala\";\"other\"\n\"3031582\";\"bo er duo\";\"other\"\n\"3031582\";\"borudo\";\"other\"\n\"3031582\";\"brdw\";\"other\"\n\"3031582\";\"bwrdw\";\"other\"\n\"3031582\";\"Бордо\";\"other\"\n\"3031582\";\"בורדו\";\"other\"\n\"3031582\";\"بردو\";\"other\"\n\"3031582\";\"بوردو\";\"other\"\n\"3031582\";\"ボルドー\";\"other\"\n\"3031582\";\"波尔多\";\"other\"\n\"3031605\";\"Boran-sur-Oise\";\"main\"\n\"3031605\";\"Boran\";\"other\"\n\"3031612\";\"Boos\";\"main\"\n\"3031616\";\"Boofzheim\";\"main\"\n\"3031639\";\"Bonson\";\"main\"\n\"3031644\";\"Bons-en-Chablais\";\"main\"\n\"3031656\";\"Bonny-sur-Loire\";\"main\"\n\"3031656\";\"Bonny\";\"other\"\n\"3031665\";\"Bonnieux\";\"main\"\n\"3031667\";\"Bonnières-sur-Seine\";\"main\"\n\"3031667\";\"Bonnieres-sur-Seine\";\"ascii\"\n\"3031667\";\"Bonnieres\";\"other\"\n\"3031667\";\"Bonnières\";\"other\"\n\"3031679\";\"Bonneville\";\"main\"\n\"3031679\";\"Mont-Mole\";\"other\"\n\"3031679\";\"Mont-Molez\";\"other\"\n\"3031702\";\"Bonneval\";\"main\"\n\"3031709\";\"Bonneuil-sur-Marne\";\"main\"\n\"3031709\";\"Bonneuil\";\"other\"\n\"3031710\";\"Bonneuil-Matours\";\"main\"\n\"3031710\";\"Bonneuil-Matouis\";\"other\"\n\"3031723\";\"Bonnétable\";\"main\"\n\"3031723\";\"Bonnetable\";\"ascii\"\n\"3031729\";\"Bonne-sur-Ménoge\";\"main\"\n\"3031729\";\"Bonne-sur-Menoge\";\"ascii\"\n\"3031729\";\"Bonne\";\"other\"\n\"3031732\";\"Bonnes\";\"main\"\n\"3031743\";\"Bonnemain\";\"main\"\n\"3031743\";\"Bonmaen\";\"other\"\n\"3031744\";\"Bonnelles\";\"main\"\n\"3031769\";\"Bonnefamille\";\"main\"\n\"3031783\";\"Bonnat\";\"main\"\n\"3031789\";\"Bonnac-la-Côte\";\"main\"\n\"3031789\";\"Bonnac-la-Cote\";\"ascii\"\n\"3031789\";\"Bonnac\";\"other\"\n\"3031801\";\"Bonifacio\";\"main\"\n\"3031801\";\"Bonifacho\";\"other\"\n\"3031801\";\"Bonifaziu\";\"other\"\n\"3031801\";\"Bunifaziu\";\"other\"\n\"3031801\";\"La Ville de Bonifacio\";\"other\"\n\"3031801\";\"Бонифачо\";\"other\"\n\"3031813\";\"Bon-Encontre\";\"main\"\n\"3031815\";\"Bondy\";\"main\"\n\"3031815\";\"Bondi\";\"other\"\n\"3031815\";\"Бонди\";\"other\"\n\"3031817\";\"Bondues\";\"main\"\n\"3031818\";\"Bondoufle\";\"main\"\n\"3031835\";\"Bonchamp-lès-Laval\";\"main\"\n\"3031835\";\"Bonchamp-les-Laval\";\"ascii\"\n\"3031835\";\"Bonchamp\";\"other\"\n\"3031848\";\"Bompas\";\"main\"\n\"3031848\";\"Bompàs\";\"other\"\n\"3031862\";\"Bologne\";\"main\"\n\"3031864\";\"Bollwiller\";\"main\"\n\"3031865\";\"Bollezeele\";\"main\"\n\"3031868\";\"Bollène\";\"main\"\n\"3031868\";\"Bollene\";\"ascii\"\n\"3031871\";\"Bolbec\";\"main\"\n\"3031896\";\"Boissy-sous-Saint-Yon\";\"main\"\n\"3031896\";\"Boissy\";\"other\"\n\"3031896\";\"Boissy-la-Montagne\";\"other\"\n\"3031898\";\"Boissy-Saint-Léger\";\"main\"\n\"3031898\";\"Boissy-Saint-Leger\";\"ascii\"\n\"3031898\";\"Boissy\";\"other\"\n\"3031898\";\"Boissy-la-Montagne\";\"other\"\n\"3031905\";\"Boissy-le-Cutté\";\"main\"\n\"3031905\";\"Boissy-le-Cutte\";\"ascii\"\n\"3031905\";\"Boissy\";\"other\"\n\"3031906\";\"Boissy-le-Châtel\";\"main\"\n\"3031906\";\"Boissy-le-Chatel\";\"ascii\"\n\"3031906\";\"Boissy\";\"other\"\n\"3031917\";\"Boissise-le-Roi\";\"main\"\n\"3031917\";\"Boissise-la-Nation\";\"other\"\n\"3031930\";\"Boisseuil\";\"main\"\n\"3031941\";\"Boisset-et-Gaujac\";\"main\"\n\"3031941\";\"Boisset\";\"other\"\n\"3031949\";\"Boisseron\";\"main\"\n\"3031998\";\"Boismé\";\"main\"\n\"3031998\";\"Boisme\";\"ascii\"\n\"3032008\";\"Bois-le-Roi\";\"main\"\n\"3032008\";\"Bois-la-Nation\";\"other\"\n\"3032025\";\"Bois-Guillaume\";\"main\"\n\"3032027\";\"Bois-Grenier\";\"main\"\n\"3032033\";\"Boisgervilly\";\"main\"\n\"3032033\";\"Koad-Yarnvili\";\"other\"\n\"3032062\";\"Bois-de-Cené\";\"main\"\n\"3032062\";\"Bois-de-Cene\";\"ascii\"\n\"3032062\";\"Koed-Keneg\";\"other\"\n\"3032064\";\"Bois-d'Arcy\";\"main\"\n\"3032069\";\"Boiscommun\";\"main\"\n\"3032070\";\"Bois-Colombes\";\"main\"\n\"3032070\";\"Boa Kolomb\";\"other\"\n\"3032070\";\"Boa Kolon\";\"other\"\n\"3032070\";\"Боа Коломб\";\"other\"\n\"3032070\";\"Боа Колон\";\"other\"\n\"3032118\";\"Boigny-sur-Bionne\";\"main\"\n\"3032118\";\"Boigny\";\"other\"\n\"3032125\";\"Bohars\";\"main\"\n\"3032125\";\"Boc'harzh\";\"other\"\n\"3032127\";\"Bohain-en-Vermandois\";\"main\"\n\"3032127\";\"Bohain\";\"other\"\n\"3032146\";\"Boeschepe\";\"main\"\n\"3032147\";\"Bœrsch\";\"main\"\n\"3032147\";\"Boersch\";\"ascii\"\n\"3032151\";\"Boën\";\"main\"\n\"3032151\";\"Boen\";\"ascii\"\n\"3032151\";\"Boen-sur-Lignon\";\"other\"\n\"3032151\";\"Boën-sur-Lignon\";\"other\"\n\"3032153\";\"Boeil-Bezing\";\"main\"\n\"3032153\";\"Boeil\";\"other\"\n\"3032154\";\"Boëge\";\"main\"\n\"3032154\";\"Boege\";\"ascii\"\n\"3032156\";\"Boé\";\"main\"\n\"3032156\";\"Boe\";\"ascii\"\n\"3032160\";\"Bodilis\";\"main\"\n\"3032160\";\"Bodiliz\";\"other\"\n\"3032179\";\"Bobigny\";\"main\"\n\"3032179\";\"Bobin'i\";\"other\"\n\"3032179\";\"Bobini\";\"other\"\n\"3032179\";\"bobini\";\"other\"\n\"3032179\";\"Бобиньи\";\"other\"\n\"3032179\";\"Бобињи\";\"other\"\n\"3032179\";\"ボビニー\";\"other\"\n\"3032194\";\"Blotzheim\";\"main\"\n\"3032194\";\"Blockhajm\";\"other\"\n\"3032194\";\"Блоцхајм\";\"other\"\n\"3032202\";\"Blonville-sur-Mer\";\"main\"\n\"3032202\";\"Blonville\";\"other\"\n\"3032213\";\"Blois\";\"main\"\n\"3032213\";\"Bleaz\";\"other\"\n\"3032213\";\"Bloa\";\"other\"\n\"3032213\";\"Blua\";\"other\"\n\"3032213\";\"burowa\";\"other\"\n\"3032213\";\"Блоа\";\"other\"\n\"3032213\";\"Блуа\";\"other\"\n\"3032213\";\"ブロワ\";\"other\"\n\"3032214\";\"Blodelsheim\";\"main\"\n\"3032228\";\"Bligny-lès-Beaune\";\"main\"\n\"3032228\";\"Bligny-les-Beaune\";\"ascii\"\n\"3032228\";\"Bligny\";\"other\"\n\"3032238\";\"Bliesbruck\";\"main\"\n\"3032238\";\"Bliesbauchen\";\"other\"\n\"3032238\";\"Bliesbrucken\";\"other\"\n\"3032238\";\"Bliesbrücken\";\"other\"\n\"3032251\";\"Bletterans\";\"main\"\n\"3032251\";\"Betterans\";\"other\"\n\"3032267\";\"Bléré\";\"main\"\n\"3032267\";\"Blere\";\"ascii\"\n\"3032269\";\"Blérancourt\";\"main\"\n\"3032269\";\"Blerancourt\";\"ascii\"\n\"3032269\";\"Dlerancourt\";\"other\"\n\"3032269\";\"Dlérancourt\";\"other\"\n\"3032274\";\"Blénod-lès-Toul\";\"main\"\n\"3032274\";\"Blenod-les-Toul\";\"ascii\"\n\"3032274\";\"Blenod\";\"other\"\n\"3032274\";\"Blénod\";\"other\"\n\"3032275\";\"Blénod-lès-Pont-à-Mousson\";\"main\"\n\"3032275\";\"Blenod-les-Pont-a-Mousson\";\"ascii\"\n\"3032275\";\"Blenod\";\"other\"\n\"3032275\";\"Blénod\";\"other\"\n\"3032275\";\"Les-Pont-a-Mousson\";\"other\"\n\"3032275\";\"Les-Pont-à-Mousson\";\"other\"\n\"3032278\";\"Bléneau\";\"main\"\n\"3032278\";\"Bleneau\";\"ascii\"\n\"3032279\";\"Blendecques\";\"main\"\n\"3032292\";\"Blaye-les-Mines\";\"main\"\n\"3032292\";\"Blaye\";\"other\"\n\"3032296\";\"Blavozy\";\"main\"\n\"3032306\";\"Blauzac\";\"main\"\n\"3032308\";\"Blausasc\";\"main\"\n\"3032319\";\"Blaringhem\";\"main\"\n\"3032326\";\"Blanzy\";\"main\"\n\"3032326\";\"Blanzy-sur-Bourbince\";\"other\"\n\"3032331\";\"Blanzat\";\"main\"\n\"3032340\";\"Blanquefort\";\"main\"\n\"3032349\";\"Blangy-sur-Bresle\";\"main\"\n\"3032349\";\"Blangy\";\"other\"\n\"3032403\";\"Blancafort\";\"main\"\n\"3032430\";\"Blamont\";\"main\"\n\"3032440\";\"Blaison-Gohier\";\"main\"\n\"3032452\";\"Blainville-sur-Orne\";\"main\"\n\"3032452\";\"Blainville\";\"other\"\n\"3032453\";\"Blainville-sur-Mer\";\"main\"\n\"3032453\";\"Blainville\";\"other\"\n\"3032455\";\"Blainville-Crevon\";\"main\"\n\"3032455\";\"Blainville\";\"other\"\n\"3032461\";\"Blaincourt-lès-Précy\";\"main\"\n\"3032461\";\"Blaincourt-les-Precy\";\"ascii\"\n\"3032462\";\"Blain\";\"main\"\n\"3032462\";\"Blaen\";\"other\"\n\"3032468\";\"Blagny\";\"main\"\n\"3032469\";\"Blagnac\";\"main\"\n\"3032469\";\"Blanak\";\"other\"\n\"3032469\";\"Блањак\";\"other\"\n\"3032470\";\"Blaesheim\";\"main\"\n\"3032481\";\"Blacé\";\"main\"\n\"3032481\";\"Blace\";\"ascii\"\n\"3032492\";\"Bize-Minervois\";\"main\"\n\"3032492\";\"Bize\";\"other\"\n\"3032496\";\"Bizanos\";\"main\"\n\"3032496\";\"Bizanons\";\"other\"\n\"3032497\";\"Bizanet\";\"main\"\n\"3032505\";\"Biviers\";\"main\"\n\"3032509\";\"Bitschwiller-lès-Thann\";\"main\"\n\"3032509\";\"Bitschwiller-les-Thann\";\"ascii\"\n\"3032509\";\"Bischiville\";\"other\"\n\"3032509\";\"Bitschwiller\";\"other\"\n\"3032518\";\"Bitche\";\"main\"\n\"3032518\";\"Bitsch\";\"other\"\n\"3032518\";\"Bitsche\";\"other\"\n\"3032544\";\"Bischwiller\";\"main\"\n\"3032544\";\"Bischweiler\";\"other\"\n\"3032549\";\"Bischoffsheim\";\"main\"\n\"3032549\";\"Bischofsheim\";\"other\"\n\"3032551\";\"Bischheim\";\"main\"\n\"3032556\";\"Biscarrosse\";\"main\"\n\"3032556\";\"Biscarosse\";\"other\"\n\"3032556\";\"Biscarrosse-Bourg\";\"other\"\n\"3032556\";\"Biskaros\";\"other\"\n\"3032556\";\"Бискарос\";\"other\"\n\"3032579\";\"Biot\";\"main\"\n\"3032598\";\"Bining\";\"main\"\n\"3032598\";\"Bining-les-Rohrbach\";\"other\"\n\"3032598\";\"Bining-lès-Rohrbach\";\"other\"\n\"3032600\";\"Binic\";\"main\"\n\"3032600\";\"Binig\";\"other\"\n\"3032615\";\"Billy-sur-Aisne\";\"main\"\n\"3032615\";\"Billy\";\"other\"\n\"3032618\";\"Billy-Montigny\";\"main\"\n\"3032618\";\"Billy\";\"other\"\n\"3032622\";\"Billy-Berclau\";\"main\"\n\"3032629\";\"Billom\";\"main\"\n\"3032639\";\"Billère\";\"main\"\n\"3032639\";\"Billere\";\"ascii\"\n\"3032648\";\"Bilieu\";\"main\"\n\"3032648\";\"Billieu\";\"other\"\n\"3032662\";\"Bihorel\";\"main\"\n\"3032668\";\"Biguglia\";\"main\"\n\"3032678\";\"Bignoux\";\"main\"\n\"3032685\";\"Bignan\";\"main\"\n\"3032685\";\"Begnen\";\"other\"\n\"3032688\";\"Biganos\";\"main\"\n\"3032695\";\"Bièvres\";\"main\"\n\"3032695\";\"Bievres\";\"ascii\"\n\"3032695\";\"Bievre\";\"other\"\n\"3032695\";\"Bievre-la-Montagne\";\"other\"\n\"3032695\";\"Bièvre\";\"other\"\n\"3032695\";\"Bièvre-la-Montagne\";\"other\"\n\"3032711\";\"Biesles\";\"main\"\n\"3032712\";\"Biesheim\";\"main\"\n\"3032726\";\"Bierne\";\"main\"\n\"3032737\";\"Bienville\";\"main\"\n\"3032767\";\"Bidart\";\"main\"\n\"3032767\";\"Bidarte\";\"other\"\n\"3032771\";\"Bidache\";\"main\"\n\"3032771\";\"Bidaxune\";\"other\"\n\"3032791\";\"Bias\";\"main\"\n\"3032794\";\"Biars-sur-Cère\";\"main\"\n\"3032794\";\"Biars-sur-Cere\";\"ascii\"\n\"3032794\";\"Biars\";\"other\"\n\"3032797\";\"Biarritz\";\"main\"\n\"3032797\";\"Biarric\";\"other\"\n\"3032797\";\"Biarriz\";\"other\"\n\"3032797\";\"Bijaric\";\"other\"\n\"3032797\";\"Miarritze\";\"other\"\n\"3032797\";\"bi ya li ci\";\"other\"\n\"3032797\";\"Биарриц\";\"other\"\n\"3032797\";\"Бијариц\";\"other\"\n\"3032797\";\"比亚里茨\";\"other\"\n\"3032802\";\"Biard\";\"main\"\n\"3032815\";\"Biache-Saint-Vaast\";\"main\"\n\"3032815\";\"Biache-Saint-Waast\";\"other\"\n\"3032815\";\"Biache-sous-Scarpe\";\"other\"\n\"3032818\";\"Bézu-Saint-Éloi\";\"main\"\n\"3032818\";\"Bezu-Saint-Eloi\";\"ascii\"\n\"3032818\";\"Bezu\";\"other\"\n\"3032823\";\"Bezouce\";\"main\"\n\"3032824\";\"Bezons\";\"main\"\n\"3032824\";\"Bezon\";\"other\"\n\"3032824\";\"Безон\";\"other\"\n\"3032833\";\"Béziers\";\"main\"\n\"3032833\";\"Beziers\";\"ascii\"\n\"3032833\";\"Baeterrae\";\"other\"\n\"3032833\";\"Besiers\";\"other\"\n\"3032833\";\"Besièrs\";\"other\"\n\"3032833\";\"Bez'e\";\"other\"\n\"3032833\";\"Bezije\";\"other\"\n\"3032833\";\"Bezje\";\"other\"\n\"3032833\";\"Безије\";\"other\"\n\"3032833\";\"Безье\";\"other\"\n\"3032833\";\"Безје\";\"other\"\n\"3032847\";\"Bezannes\";\"main\"\n\"3032847\";\"Bezannes-les-Reims\";\"other\"\n\"3032869\";\"Beynost\";\"main\"\n\"3032872\";\"Beynes\";\"main\"\n\"3032880\";\"Beychac-et-Caillau\";\"main\"\n\"3032880\";\"Beychac\";\"other\"\n\"3032887\";\"Béville-le-Comte\";\"main\"\n\"3032887\";\"Beville-le-Comte\";\"ascii\"\n\"3032887\";\"Beville\";\"other\"\n\"3032887\";\"Beville-la-Fontaine\";\"other\"\n\"3032887\";\"Béville\";\"other\"\n\"3032892\";\"Beuzeville-la-Grenier\";\"main\"\n\"3032892\";\"Beuzeville\";\"other\"\n\"3032892\";\"L'Ingenue\";\"other\"\n\"3032892\";\"L'Ingénue\";\"other\"\n\"3032892\";\"Saint-Martin-le-Genereux\";\"other\"\n\"3032892\";\"Saint-Martin-le-Généreux\";\"other\"\n\"3032896\";\"Beuzeville\";\"main\"\n\"3032898\";\"Beuzec-Cap-Sizun\";\"main\"\n\"3032898\";\"Beuzec\";\"other\"\n\"3032898\";\"Beuzeg-ar-C'hab\";\"other\"\n\"3032903\";\"Beuvry\";\"main\"\n\"3032915\";\"Beuvrages\";\"main\"\n\"3032917\";\"Beuvillers\";\"main\"\n\"3032919\";\"Beuville\";\"main\"\n\"3032939\";\"Beure\";\"main\"\n\"3032957\";\"Betz\";\"main\"\n\"3032965\";\"Betton\";\"main\"\n\"3032965\";\"Bezhon\";\"other\"\n\"3032981\";\"Bettancourt-la-Ferrée\";\"main\"\n\"3032981\";\"Bettancourt-la-Ferree\";\"ascii\"\n\"3032981\";\"Bettancourt\";\"other\"\n\"3033002\";\"Béthune\";\"main\"\n\"3033002\";\"Bethune\";\"ascii\"\n\"3033002\";\"Beten\";\"other\"\n\"3033002\";\"Betin\";\"other\"\n\"3033002\";\"Betjun\";\"other\"\n\"3033002\";\"Бетен\";\"other\"\n\"3033002\";\"Бетин\";\"other\"\n\"3033002\";\"Бетюн\";\"other\"\n\"3033006\";\"Bethoncourt\";\"main\"\n\"3033010\";\"Béthisy-Saint-Pierre\";\"main\"\n\"3033010\";\"Bethisy-Saint-Pierre\";\"ascii\"\n\"3033010\";\"Bethisy-la-Butte\";\"other\"\n\"3033010\";\"Béthisy-la-Butte\";\"other\"\n\"3033011\";\"Béthisy-Saint-Martin\";\"main\"\n\"3033011\";\"Bethisy-Saint-Martin\";\"ascii\"\n\"3033011\";\"Bethisy-sur-Autonne\";\"other\"\n\"3033011\";\"Béthisy-sur-Autonne\";\"other\"\n\"3033014\";\"Bétheny\";\"main\"\n\"3033014\";\"Betheny\";\"ascii\"\n\"3033018\";\"Béthencourt-sur-Mer\";\"main\"\n\"3033018\";\"Bethencourt-sur-Mer\";\"ascii\"\n\"3033018\";\"Bethencourt\";\"other\"\n\"3033018\";\"Béthencourt\";\"other\"\n\"3033052\";\"Bessines-sur-Gartempe\";\"main\"\n\"3033052\";\"Becinas\";\"other\"\n\"3033052\";\"Bessines\";\"other\"\n\"3033053\";\"Bessines\";\"main\"\n\"3033056\";\"Bessières\";\"main\"\n\"3033056\";\"Bessieres\";\"ascii\"\n\"3033065\";\"Besse-sur-Issole\";\"main\"\n\"3033065\";\"Besse\";\"other\"\n\"3033066\";\"Bessé-sur-Braye\";\"main\"\n\"3033066\";\"Besse-sur-Braye\";\"ascii\"\n\"3033066\";\"Besse\";\"other\"\n\"3033066\";\"Bessé\";\"other\"\n\"3033071\";\"Bessenay\";\"main\"\n\"3033073\";\"Bessèges\";\"main\"\n\"3033073\";\"Besseges\";\"ascii\"\n\"3033088\";\"Bessay-sur-Allier\";\"main\"\n\"3033088\";\"Bessay\";\"other\"\n\"3033098\";\"Bessancourt\";\"main\"\n\"3033099\";\"Bessan\";\"main\"\n\"3033108\";\"Besné\";\"main\"\n\"3033108\";\"Besne\";\"ascii\"\n\"3033108\";\"Gwennenid\";\"other\"\n\"3033123\";\"Besançon\";\"main\"\n\"3033123\";\"Besancon\";\"ascii\"\n\"3033123\";\"Becoinson\";\"other\"\n\"3033123\";\"Besanson\";\"other\"\n\"3033123\";\"Bezanson\";\"other\"\n\"3033123\";\"Vesuntio\";\"other\"\n\"3033123\";\"buzanson\";\"other\"\n\"3033123\";\"Безансон\";\"other\"\n\"3033123\";\"Бесансон\";\"other\"\n\"3033123\";\"ブザンソン\";\"other\"\n\"3033147\";\"Béruges\";\"main\"\n\"3033147\";\"Beruges\";\"ascii\"\n\"3033149\";\"Bertry\";\"main\"\n\"3033163\";\"Bertrange\";\"main\"\n\"3033200\";\"Berthecourt\";\"main\"\n\"3033208\";\"Berteaucourt-les-Dames\";\"main\"\n\"3033208\";\"Berteaucourt\";\"other\"\n\"3033219\";\"Berstett\";\"main\"\n\"3033220\";\"Berson\";\"main\"\n\"3033222\";\"Bersée\";\"main\"\n\"3033222\";\"Bersee\";\"ascii\"\n\"3033232\";\"Berrwiller\";\"main\"\n\"3033236\";\"Berrien\";\"main\"\n\"3033238\";\"Berric\";\"main\"\n\"3033238\";\"Berrig\";\"other\"\n\"3033241\";\"Berre-l'Étang\";\"main\"\n\"3033241\";\"Berre-l'Etang\";\"ascii\"\n\"3033241\";\"Berre\";\"other\"\n\"3033242\";\"Berre-les-Alpes\";\"main\"\n\"3033242\";\"Berre\";\"other\"\n\"3033242\";\"Berre-des Alpes\";\"other\"\n\"3033268\";\"Bernis\";\"main\"\n\"3033269\";\"Bernin\";\"main\"\n\"3033272\";\"Bernières-sur-Mer\";\"main\"\n\"3033272\";\"Bernieres-sur-Mer\";\"ascii\"\n\"3033272\";\"Bernieres\";\"other\"\n\"3033272\";\"Bernières\";\"other\"\n\"3033285\";\"Berneval-le-Grand\";\"main\"\n\"3033285\";\"Berneval\";\"other\"\n\"3033294\";\"Bernes-sur-Oise\";\"main\"\n\"3033294\";\"Bernes\";\"other\"\n\"3033303\";\"Berné\";\"main\"\n\"3033303\";\"Berne\";\"ascii\"\n\"3033308\";\"Bernay\";\"main\"\n\"3033308\";\"Bernay-de-l'Eure\";\"other\"\n\"3033312\";\"Bernaville\";\"main\"\n\"3033316\";\"Bernardswiller\";\"main\"\n\"3033355\";\"Berlaimont\";\"main\"\n\"3033363\";\"Bergues\";\"main\"\n\"3033363\";\"Bergues-sur-Colme\";\"other\"\n\"3033363\";\"Sint-Winoksbergen\";\"other\"\n\"3033380\";\"Bergholtz\";\"main\"\n\"3033382\";\"Bergheim\";\"main\"\n\"3033382\";\"Bergem\";\"other\"\n\"3033382\";\"Bergkhajm\";\"other\"\n\"3033382\";\"Бергем\";\"other\"\n\"3033382\";\"Бергхајм\";\"other\"\n\"3033391\";\"Bergerac\";\"main\"\n\"3033391\";\"Berzherak\";\"other\"\n\"3033391\";\"Brageirac\";\"other\"\n\"3033391\";\"Бержерак\";\"other\"\n\"3033415\";\"Berck\";\"main\"\n\"3033415\";\"Berck-sur-Mer\";\"other\"\n\"3033416\";\"Berck-Plage\";\"main\"\n\"3033435\";\"Bérat\";\"main\"\n\"3033435\";\"Berat\";\"ascii\"\n\"3033453\";\"Benquet\";\"main\"\n\"3033458\";\"Bénouville\";\"main\"\n\"3033458\";\"Benouville\";\"ascii\"\n\"3033458\";\"Benuvil\";\"other\"\n\"3033458\";\"Бенувил\";\"other\"\n\"3033470\";\"Bénodet\";\"main\"\n\"3033470\";\"Benodet\";\"ascii\"\n\"3033470\";\"Benode\";\"other\"\n\"3033470\";\"Benoded\";\"other\"\n\"3033470\";\"Беноде\";\"other\"\n\"3033471\";\"Bennwihr\";\"main\"\n\"3033477\";\"Bennecourt\";\"main\"\n\"3033481\";\"Béning-lès-Saint-Avold\";\"main\"\n\"3033481\";\"Bening-les-Saint-Avold\";\"ascii\"\n\"3033481\";\"Bening\";\"other\"\n\"3033488\";\"Benfeld\";\"main\"\n\"3033488\";\"Бенфелд\";\"other\"\n\"3033495\";\"Benet\";\"main\"\n\"3033500\";\"Bénesse-Maremne\";\"main\"\n\"3033500\";\"Benesse-Maremne\";\"ascii\"\n\"3033500\";\"Benesse\";\"other\"\n\"3033500\";\"Benesse-Marenne\";\"other\"\n\"3033504\";\"Bénéjacq\";\"main\"\n\"3033504\";\"Benejacq\";\"ascii\"\n\"3033534\";\"Belz\";\"main\"\n\"3033545\";\"Belvès-de-Castillon\";\"main\"\n\"3033545\";\"Belves-de-Castillon\";\"ascii\"\n\"3033545\";\"Belves\";\"other\"\n\"3033545\";\"Belvès\";\"other\"\n\"3033546\";\"Belvès\";\"main\"\n\"3033546\";\"Belves\";\"ascii\"\n\"3033565\";\"Belpech\";\"main\"\n\"3033574\";\"Belmont-sur-Rance\";\"main\"\n\"3033574\";\"Belmont\";\"other\"\n\"3033579\";\"Belmont-de-la-Loire\";\"main\"\n\"3033579\";\"Belmont\";\"other\"\n\"3033598\";\"Belloy-en-France\";\"main\"\n\"3033598\";\"Belloy\";\"other\"\n\"3033618\";\"Belligné\";\"main\"\n\"3033618\";\"Belligne\";\"ascii\"\n\"3033618\";\"Belenieg\";\"other\"\n\"3033619\";\"Bellignat\";\"main\"\n\"3033619\";\"Belignat\";\"other\"\n\"3033625\";\"Belley\";\"main\"\n\"3033635\";\"Belleville-sur-Vie\";\"main\"\n\"3033635\";\"Belleville\";\"other\"\n\"3033636\";\"Belleville\";\"main\"\n\"3033636\";\"Belleville sobre Saona\";\"other\"\n\"3033636\";\"Belleville-sur-Saone\";\"other\"\n\"3033636\";\"Belleville-sur-Saône\";\"other\"\n\"3033637\";\"Belleville-sur-Meuse\";\"main\"\n\"3033637\";\"Belleville\";\"other\"\n\"3033645\";\"Belleville\";\"main\"\n\"3033647\";\"Belleville-sur-Loire\";\"main\"\n\"3033653\";\"Bellevaux\";\"main\"\n\"3033657\";\"Belleu\";\"main\"\n\"3033666\";\"Bellerive-sur-Allier\";\"main\"\n\"3033666\";\"Bellerive\";\"other\"\n\"3033673\";\"Bellengreville\";\"main\"\n\"3033675\";\"Belleneuve\";\"main\"\n\"3033677\";\"Bellenaves\";\"main\"\n\"3033679\";\"Bellême\";\"main\"\n\"3033679\";\"Belleme\";\"ascii\"\n\"3033681\";\"Belle-Isle-en-Terre\";\"main\"\n\"3033681\";\"Belle-Isle\";\"other\"\n\"3033681\";\"Benac'h\";\"other\"\n\"3033685\";\"Bellegarde-sur-Valserine\";\"main\"\n\"3033685\";\"Bellegarde\";\"other\"\n\"3033688\";\"Bellegarde-en-Forez\";\"main\"\n\"3033688\";\"Bellegarde\";\"other\"\n\"3033691\";\"Bellegarde\";\"main\"\n\"3033691\";\"Bellegarde-du-Loiret\";\"other\"\n\"3033698\";\"Bellegarde\";\"main\"\n\"3033760\";\"Bellaing\";\"main\"\n\"3033766\";\"Bellac\";\"main\"\n\"3033766\";\"Belac\";\"other\"\n\"3033773\";\"Belin-Béliet\";\"main\"\n\"3033773\";\"Belin-Beliet\";\"ascii\"\n\"3033775\";\"Béligneux\";\"main\"\n\"3033775\";\"Beligneux\";\"ascii\"\n\"3033784\";\"Belgentier\";\"main\"\n\"3033791\";\"Belfort\";\"main\"\n\"3033791\";\"Beffert\";\"other\"\n\"3033791\";\"Bel'for\";\"other\"\n\"3033791\";\"Belfor\";\"other\"\n\"3033791\";\"beruforu\";\"other\"\n\"3033791\";\"Белфор\";\"other\"\n\"3033791\";\"Бельфор\";\"other\"\n\"3033791\";\"ベルフォール\";\"other\"\n\"3033799\";\"Bélesta\";\"main\"\n\"3033799\";\"Belesta\";\"ascii\"\n\"3033803\";\"Belcodène\";\"main\"\n\"3033803\";\"Belcodene\";\"ascii\"\n\"3033811\";\"Belbeuf\";\"main\"\n\"3033813\";\"Belberaud\";\"main\"\n\"3033839\";\"Bélâbre\";\"main\"\n\"3033839\";\"Belabre\";\"ascii\"\n\"3033851\";\"Beignon\";\"main\"\n\"3033851\";\"Benion\";\"other\"\n\"3033853\";\"Behren-lès-Forbach\";\"main\"\n\"3033853\";\"Behren-les-Forbach\";\"ascii\"\n\"3033853\";\"Behren\";\"other\"\n\"3033870\";\"Bégrolles-en-Mauges\";\"main\"\n\"3033870\";\"Begrolles-en-Mauges\";\"ascii\"\n\"3033870\";\"Begrolles\";\"other\"\n\"3033870\";\"Bégrolles\";\"other\"\n\"3033881\";\"Bègles\";\"main\"\n\"3033881\";\"Begles\";\"ascii\"\n\"3033881\";\"Beglese\";\"other\"\n\"3033881\";\"Беглесе\";\"other\"\n\"3033884\";\"Bégard\";\"main\"\n\"3033884\";\"Begard\";\"ascii\"\n\"3033884\";\"Bear\";\"other\"\n\"3033884\";\"Prajou\";\"other\"\n\"3033885\";\"Béganne\";\"main\"\n\"3033885\";\"Beganne\";\"ascii\"\n\"3033885\";\"Begaon\";\"other\"\n\"3033887\";\"Bégaar\";\"main\"\n\"3033887\";\"Begaar\";\"ascii\"\n\"3033900\";\"Bédoin\";\"main\"\n\"3033900\";\"Bedoin\";\"ascii\"\n\"3033900\";\"Bedouin-l'Aneanti\";\"other\"\n\"3033900\";\"Bédouin-l'Anéanti\";\"other\"\n\"3033908\";\"Bédée\";\"main\"\n\"3033908\";\"Bedee\";\"ascii\"\n\"3033908\";\"Bezeg\";\"other\"\n\"3033912\";\"Bédarrides\";\"main\"\n\"3033912\";\"Bedarrides\";\"ascii\"\n\"3033913\";\"Bédarieux\";\"main\"\n\"3033913\";\"Bedarieux\";\"ascii\"\n\"3033927\";\"Bécon-les-Granits\";\"main\"\n\"3033927\";\"Becon-les-Granits\";\"ascii\"\n\"3033927\";\"Becon\";\"other\"\n\"3033927\";\"Bécon\";\"other\"\n\"3033953\";\"Beauzelle\";\"main\"\n\"3033955\";\"Beauzac\";\"main\"\n\"3033955\";\"Bauzac\";\"other\"\n\"3033959\";\"Beauvoisin\";\"main\"\n\"3033962\";\"Beauvois-en-Cambrésis\";\"main\"\n\"3033962\";\"Beauvois-en-Cambresis\";\"ascii\"\n\"3033962\";\"Beauvois\";\"other\"\n\"3033967\";\"Beauvoir-sur-Niort\";\"main\"\n\"3033967\";\"Beauvoir\";\"other\"\n\"3033968\";\"Beauvoir-sur-Mer\";\"main\"\n\"3033968\";\"Beauvoir\";\"other\"\n\"3033971\";\"Beauvoir-de-Marc\";\"main\"\n\"3033971\";\"Beauvoir\";\"other\"\n\"3033999\";\"Beauvallon\";\"main\"\n\"3034001\";\"Beauval\";\"main\"\n\"3034006\";\"Beauvais\";\"main\"\n\"3034006\";\"Bove\";\"other\"\n\"3034006\";\"Bovoa\";\"other\"\n\"3034006\";\"Duthil-la-Montagne\";\"other\"\n\"3034006\";\"La Chaussee-de-la-Montagne\";\"other\"\n\"3034006\";\"La Chaussée-de-la-Montagne\";\"other\"\n\"3034006\";\"bo wei\";\"other\"\n\"3034006\";\"bovu~e\";\"other\"\n\"3034006\";\"Бове\";\"other\"\n\"3034006\";\"Бовоа\";\"other\"\n\"3034006\";\"ボーヴェ\";\"other\"\n\"3034006\";\"博韦\";\"other\"\n\"3034023\";\"Beautor\";\"main\"\n\"3034024\";\"Beautiran\";\"main\"\n\"3034024\";\"Bautiran\";\"other\"\n\"3034041\";\"Beausoleil\";\"main\"\n\"3034044\";\"Beausemblant\";\"main\"\n\"3034054\";\"Beaurevoir\";\"main\"\n\"3034062\";\"Beaurepaire\";\"main\"\n\"3034064\";\"Beaurepaire\";\"main\"\n\"3034101\";\"Beaurainville\";\"main\"\n\"3034101\";\"Beaurain-sur-Canche\";\"other\"\n\"3034103\";\"Beaurains\";\"main\"\n\"3034106\";\"Beauquesne\";\"main\"\n\"3034107\";\"Beaupuy\";\"main\"\n\"3034109\";\"Beaupuy\";\"main\"\n\"3034111\";\"Beaupréau\";\"main\"\n\"3034111\";\"Beaupreau\";\"ascii\"\n\"3034122\";\"Beaune-la-Rolande\";\"main\"\n\"3034122\";\"Beaune\";\"other\"\n\"3034126\";\"Beaune\";\"main\"\n\"3034126\";\"Bon\";\"other\"\n\"3034126\";\"bonu\";\"other\"\n\"3034126\";\"Бон\";\"other\"\n\"3034126\";\"ボーヌ\";\"other\"\n\"3034140\";\"Beaumont-sur-Sarthe\";\"main\"\n\"3034140\";\"Beaumont\";\"other\"\n\"3034140\";\"Beaumont-le-Vicomte\";\"other\"\n\"3034141\";\"Beaumont-sur-Oise\";\"main\"\n\"3034141\";\"Beaumont\";\"other\"\n\"3034142\";\"Beaumont-sur-Lèze\";\"main\"\n\"3034142\";\"Beaumont-sur-Leze\";\"ascii\"\n\"3034142\";\"Beaumont\";\"other\"\n\"3034148\";\"Beaumont-Monteux\";\"main\"\n\"3034148\";\"Beaumont\";\"other\"\n\"3034149\";\"Beaumont-lès-Valence\";\"main\"\n\"3034149\";\"Beaumont-les-Valence\";\"ascii\"\n\"3034149\";\"Beaumont\";\"other\"\n\"3034153\";\"Beaumont-le-Roger\";\"main\"\n\"3034153\";\"Beaumont\";\"other\"\n\"3034155\";\"Beaumont-la-Ronce\";\"main\"\n\"3034155\";\"Beaumont\";\"other\"\n\"3034158\";\"Beaumont-Hague\";\"main\"\n\"3034158\";\"Beaumont\";\"other\"\n\"3034159\";\"Beaumont-en-Véron\";\"main\"\n\"3034159\";\"Beaumont-en-Veron\";\"ascii\"\n\"3034159\";\"Beaumont\";\"other\"\n\"3034160\";\"Beaumont-du-Gâtinais\";\"main\"\n\"3034160\";\"Beaumont-du-Gatinais\";\"ascii\"\n\"3034160\";\"Beaumont\";\"other\"\n\"3034168\";\"Beaumont-du-Périgord\";\"main\"\n\"3034168\";\"Beaumont-du-Perigord\";\"ascii\"\n\"3034168\";\"Beaumont\";\"other\"\n\"3034169\";\"Beaumont-de-Pertuis\";\"main\"\n\"3034169\";\"Beaumont\";\"other\"\n\"3034170\";\"Beaumont-de-Lomagne\";\"main\"\n\"3034170\";\"Beaumont\";\"other\"\n\"3034192\";\"Beaumont\";\"main\"\n\"3034195\";\"Beaumont\";\"main\"\n\"3034198\";\"Beaumont\";\"main\"\n\"3034198\";\"Bourg-Montagne\";\"other\"\n\"3034210\";\"Beaumetz-lès-Loges\";\"main\"\n\"3034210\";\"Beaumetz-les-Loges\";\"ascii\"\n\"3034218\";\"Beaumes-de-Venise\";\"main\"\n\"3034218\";\"Beaumes\";\"other\"\n\"3034234\";\"Beaulon\";\"main\"\n\"3034238\";\"Beaulieu-sur-Mer\";\"main\"\n\"3034238\";\"Beaulieu\";\"other\"\n\"3034240\";\"Beaulieu-sur-Layon\";\"main\"\n\"3034240\";\"Beaulieu\";\"other\"\n\"3034241\";\"Beaulieu-sur-Dordogne\";\"main\"\n\"3034241\";\"Beaulieu\";\"other\"\n\"3034243\";\"Beaulieu-sous-la-Roche\";\"main\"\n\"3034243\";\"Beaulieu\";\"other\"\n\"3034245\";\"Beaulieu-lès-Loches\";\"main\"\n\"3034245\";\"Beaulieu-les-Loches\";\"ascii\"\n\"3034245\";\"Beaulieu\";\"other\"\n\"3034274\";\"Beaulieu\";\"main\"\n\"3034287\";\"Beaujeu\";\"main\"\n\"3034287\";\"Bojor\";\"other\"\n\"3034287\";\"Bôjor\";\"other\"\n\"3034297\";\"Beaugency\";\"main\"\n\"3034297\";\"bo rang xi\";\"other\"\n\"3034297\";\"博让西\";\"other\"\n\"3034309\";\"Beaufort-en-Vallée\";\"main\"\n\"3034309\";\"Beaufort-en-Vallee\";\"ascii\"\n\"3034309\";\"Beaufort\";\"other\"\n\"3034316\";\"Beaufort\";\"main\"\n\"3034316\";\"Beaufort-sur-Doron\";\"other\"\n\"3034316\";\"Mont-Grand\";\"other\"\n\"3034325\";\"Beaufay\";\"main\"\n\"3034338\";\"Beaucroissant\";\"main\"\n\"3034339\";\"Beaucouzé\";\"main\"\n\"3034339\";\"Beaucouze\";\"ascii\"\n\"3034343\";\"Beaucourt\";\"main\"\n\"3034363\";\"Beauchastel\";\"main\"\n\"3034366\";\"Beauchamps\";\"main\"\n\"3034369\";\"Beauchamp\";\"main\"\n\"3034374\";\"Beaucé\";\"main\"\n\"3034374\";\"Beauce\";\"ascii\"\n\"3034374\";\"Belzeg\";\"other\"\n\"3034376\";\"Beaucamps-le-Vieux\";\"main\"\n\"3034376\";\"Beaucamps-le-Vieu\";\"other\"\n\"3034382\";\"Beaucaire\";\"main\"\n\"3034382\";\"Beucaire\";\"other\"\n\"3034382\";\"Bèucaire\";\"other\"\n\"3034382\";\"Pont-National\";\"other\"\n\"3034411\";\"Bazouges-sur-le-Loir\";\"main\"\n\"3034411\";\"Bazouges\";\"other\"\n\"3034413\";\"Bazouges-la-Pérouse\";\"main\"\n\"3034413\";\"Bazouges-la-Perouse\";\"ascii\"\n\"3034413\";\"Bazeleg-ar-Veineg\";\"other\"\n\"3034413\";\"Bazouges\";\"other\"\n\"3034422\";\"Bazoges-en-Pareds\";\"main\"\n\"3034422\";\"Bazoges\";\"other\"\n\"3034422\";\"Bazoges en Pareds\";\"other\"\n\"3034429\";\"Bazoches-les-Gallerandes\";\"main\"\n\"3034429\";\"Bazoches\";\"other\"\n\"3034442\";\"Baziège\";\"main\"\n\"3034442\";\"Baziege\";\"ascii\"\n\"3034446\";\"Bazet\";\"main\"\n\"3034451\";\"Bazemont\";\"main\"\n\"3034454\";\"Bazeilles\";\"main\"\n\"3034458\";\"Bazas\";\"main\"\n\"3034461\";\"Bazancourt\";\"main\"\n\"3034463\";\"Bazainville\";\"main\"\n\"3034475\";\"Bayonne\";\"main\"\n\"3034475\";\"Baiona\";\"other\"\n\"3034475\";\"Bajon\";\"other\"\n\"3034475\";\"Bajono\";\"other\"\n\"3034475\";\"Bayona\";\"other\"\n\"3034475\";\"Байон\";\"other\"\n\"3034475\";\"Бајон\";\"other\"\n\"3034476\";\"Bayon\";\"main\"\n\"3034483\";\"Bayeux\";\"main\"\n\"3034483\";\"Baje\";\"other\"\n\"3034483\";\"Bajjo\";\"other\"\n\"3034483\";\"Bajocae\";\"other\"\n\"3034483\";\"baiyu\";\"other\"\n\"3034483\";\"Байё\";\"other\"\n\"3034483\";\"Баје\";\"other\"\n\"3034483\";\"バイユー\";\"other\"\n\"3034506\";\"Bavilliers\";\"main\"\n\"3034509\";\"Bavent\";\"main\"\n\"3034514\";\"Bavay\";\"main\"\n\"3034514\";\"Bavai\";\"other\"\n\"3034515\";\"Bavans\";\"main\"\n\"3034521\";\"Bauvin\";\"main\"\n\"3034521\";\"Beauvin\";\"other\"\n\"3034529\";\"Bauné\";\"main\"\n\"3034529\";\"Baune\";\"ascii\"\n\"3034535\";\"Baume-les-Dames\";\"main\"\n\"3034535\";\"Baume\";\"other\"\n\"3034535\";\"Baume-sur-le-Doubs\";\"other\"\n\"3034538\";\"Baulon\";\"main\"\n\"3034538\";\"Beloen\";\"other\"\n\"3034541\";\"Baulne\";\"main\"\n\"3034543\";\"Baule\";\"main\"\n\"3034548\";\"Baugy\";\"main\"\n\"3034554\";\"Baugé\";\"main\"\n\"3034554\";\"Bauge\";\"ascii\"\n\"3034582\";\"Baud\";\"main\"\n\"3034582\";\"Baod\";\"other\"\n\"3034585\";\"Batz-sur-Mer\";\"main\"\n\"3034585\";\"Batz\";\"other\"\n\"3034585\";\"Bourc'h-Baz\";\"other\"\n\"3034595\";\"Battenheim\";\"main\"\n\"3034608\";\"Batilly\";\"main\"\n\"3034640\";\"Bastia\";\"main\"\n\"3034640\";\"Bastija\";\"other\"\n\"3034640\";\"ba si di ya\";\"other\"\n\"3034640\";\"basutia\";\"other\"\n\"3034640\";\"Бастия\";\"other\"\n\"3034640\";\"バスティア\";\"other\"\n\"3034640\";\"巴斯蒂亚\";\"other\"\n\"3034649\";\"Bassussarry\";\"main\"\n\"3034649\";\"Bassussary\";\"other\"\n\"3034649\";\"Basusarri\";\"other\"\n\"3034665\";\"Bassillac\";\"main\"\n\"3034665\";\"Basilak\";\"other\"\n\"3034665\";\"Bassilac\";\"other\"\n\"3034665\";\"Басилак\";\"other\"\n\"3034690\";\"Bassens\";\"main\"\n\"3034691\";\"Bassens\";\"main\"\n\"3034697\";\"Indre\";\"main\"\n\"3034697\";\"Antr\";\"other\"\n\"3034697\";\"Basse-Indre\";\"other\"\n\"3034697\";\"Ehndr\";\"other\"\n\"3034697\";\"La Basse-Indre\";\"other\"\n\"3034697\";\"Эндр\";\"other\"\n\"3034698\";\"Basse-Ham\";\"main\"\n\"3034699\";\"Basse-Goulaine\";\"main\"\n\"3034699\";\"Goueled-Goulen\";\"other\"\n\"3034713\";\"Bassan\";\"main\"\n\"3034713\";\"Bessan\";\"other\"\n\"3034746\";\"Bas-en-Basset\";\"main\"\n\"3034746\";\"Bas\";\"other\"\n\"3034797\";\"Bartenheim\";\"main\"\n\"3034797\";\"Bartenkhajm\";\"other\"\n\"3034797\";\"Бартенхајм\";\"other\"\n\"3034798\";\"Bart\";\"main\"\n\"3034800\";\"Bar-sur-Seine\";\"main\"\n\"3034800\";\"Bar\";\"other\"\n\"3034800\";\"Bar sir Sen\";\"other\"\n\"3034800\";\"Бар сир Сен\";\"other\"\n\"3034802\";\"Bar-sur-Aube\";\"main\"\n\"3034802\";\"Bar\";\"other\"\n\"3034807\";\"Barsac\";\"main\"\n\"3034851\";\"Barraux\";\"main\"\n\"3034868\";\"Barr\";\"main\"\n\"3034887\";\"Barneville-Plage\";\"main\"\n\"3034887\";\"Plage de Barneville\";\"other\"\n\"3034903\";\"Barlin\";\"main\"\n\"3034911\";\"Bar-le-Duc\";\"main\"\n\"3034911\";\"Bar\";\"other\"\n\"3034911\";\"Bar le Dik\";\"other\"\n\"3034911\";\"Bar-sur-Meurthe\";\"other\"\n\"3034911\";\"Bar-sur-Ornain\";\"other\"\n\"3034911\";\"baru=ru=de~yukku\";\"other\"\n\"3034911\";\"Бар ле Дик\";\"other\"\n\"3034911\";\"バル＝ル＝デュック\";\"other\"\n\"3034915\";\"Barjouville\";\"main\"\n\"3034915\";\"Barzhuvij\";\"other\"\n\"3034915\";\"Barzhuvil\";\"other\"\n\"3034915\";\"Баржувил\";\"other\"\n\"3034915\";\"Баржувиј\";\"other\"\n\"3034918\";\"Barjols\";\"main\"\n\"3034921\";\"Barjac\";\"main\"\n\"3034939\";\"Bargemon\";\"main\"\n\"3034950\";\"Barenton\";\"main\"\n\"3034950\";\"Larenton\";\"other\"\n\"3034951\";\"Barentin\";\"main\"\n\"3034951\";\"Baranten\";\"other\"\n\"3034951\";\"Барантен\";\"other\"\n\"3034951\";\"Барентин\";\"other\"\n\"3034964\";\"Bardos\";\"main\"\n\"3034964\";\"Bardoze\";\"other\"\n\"3034991\";\"Barcelonnette\";\"main\"\n\"3034991\";\"Barcilona de Provenca\";\"other\"\n\"3034991\";\"Barcilona de Provença\";\"other\"\n\"3034991\";\"Barselonet\";\"other\"\n\"3034991\";\"baruseronetto\";\"other\"\n\"3034991\";\"barusuronetto\";\"other\"\n\"3034991\";\"Барселонет\";\"other\"\n\"3034991\";\"バルスロネット\";\"other\"\n\"3034991\";\"バルセロネット\";\"other\"\n\"3034992\";\"Barcelonne-du-Gers\";\"main\"\n\"3034992\";\"Barcelonne\";\"other\"\n\"3034998\";\"Barby\";\"main\"\n\"3034998\";\"Babri\";\"other\"\n\"3034998\";\"Бабри\";\"other\"\n\"3035009\";\"Barbizon\";\"main\"\n\"3035009\";\"Barbison\";\"other\"\n\"3035009\";\"barubizon\";\"other\"\n\"3035009\";\"Барбизон\";\"other\"\n\"3035009\";\"バルビゾン\";\"other\"\n\"3035016\";\"Barbezieux-Saint-Hilaire\";\"main\"\n\"3035033\";\"Barberaz\";\"main\"\n\"3035036\";\"Barbentane\";\"main\"\n\"3035036\";\"Barbantan\";\"other\"\n\"3035036\";\"Barbontan\";\"other\"\n\"3035036\";\"Барбантан\";\"other\"\n\"3035036\";\"Барбонтан\";\"other\"\n\"3035040\";\"Barbechat\";\"main\"\n\"3035040\";\"Bargazh\";\"other\"\n\"3035044\";\"Barbazan-Debat\";\"main\"\n\"3035046\";\"Barbâtre\";\"main\"\n\"3035046\";\"Barbatre\";\"ascii\"\n\"3035049\";\"Barbaste\";\"main\"\n\"3035065\";\"Baraqueville\";\"main\"\n\"3035065\";\"Baraque de Fraysse\";\"other\"\n\"3035088\";\"Bapaume\";\"main\"\n\"3035088\";\"Bapom\";\"other\"\n\"3035088\";\"Бапом\";\"other\"\n\"3035092\";\"Banyuls de la Marenda\";\"main\"\n\"3035092\";\"Banyuls\";\"other\"\n\"3035092\";\"Banyuls-sur-Mer\";\"other\"\n\"3035093\";\"Banyuls-dels-Aspres\";\"main\"\n\"3035093\";\"Banyuls\";\"other\"\n\"3035099\";\"Bantzenheim\";\"main\"\n\"3035099\";\"Bancenkhajm\";\"other\"\n\"3035099\";\"Банценхајм\";\"other\"\n\"3035139\";\"Bannalec\";\"main\"\n\"3035139\";\"Banaleg\";\"other\"\n\"3035139\";\"Banalek\";\"other\"\n\"3035139\";\"Баналек\";\"other\"\n\"3035156\";\"Bandol\";\"main\"\n\"3035156\";\"Bandol AOC\";\"other\"\n\"3035156\";\"Бандол\";\"other\"\n\"3035160\";\"Ban-de-Laveline\";\"main\"\n\"3035160\";\"Laveline\";\"other\"\n\"3035181\";\"Balzac\";\"main\"\n\"3035204\";\"Balma\";\"main\"\n\"3035206\";\"Ballots\";\"main\"\n\"3035211\";\"Ballon\";\"main\"\n\"3035226\";\"Ballan-Miré\";\"main\"\n\"3035226\";\"Ballan-Mire\";\"ascii\"\n\"3035226\";\"Ballan\";\"other\"\n\"3035228\";\"Ballancourt-sur-Essonne\";\"main\"\n\"3035229\";\"Ballaison\";\"main\"\n\"3035230\";\"Ballainvilliers\";\"main\"\n\"3035254\";\"Baldersheim\";\"main\"\n\"3035260\";\"Balbigny\";\"main\"\n\"3035263\";\"Balazé\";\"main\"\n\"3035263\";\"Balaze\";\"ascii\"\n\"3035263\";\"Belezeg\";\"other\"\n\"3035267\";\"Balaruc-le-Vieux\";\"main\"\n\"3035268\";\"Balaruc-les-Bains\";\"main\"\n\"3035278\";\"Balan\";\"main\"\n\"3035278\";\"Балан\";\"other\"\n\"3035279\";\"Balan\";\"main\"\n\"3035279\";\"Балан\";\"other\"\n\"3035286\";\"Balagny-sur-Thérain\";\"main\"\n\"3035286\";\"Balagny-sur-Therain\";\"ascii\"\n\"3035286\";\"Balagny\";\"other\"\n\"3035295\";\"Baixas\";\"main\"\n\"3035295\";\"Baixàs\";\"other\"\n\"3035295\";\"Beksa\";\"other\"\n\"3035295\";\"Бекса\";\"other\"\n\"3035304\";\"Baisieux\";\"main\"\n\"3035304\";\"Baizieux\";\"other\"\n\"3035308\";\"Bais\";\"main\"\n\"3035309\";\"Bais\";\"main\"\n\"3035309\";\"Baez\";\"other\"\n\"3035313\";\"Bainville-sur-Madon\";\"main\"\n\"3035313\";\"Bainville\";\"other\"\n\"3035316\";\"Bains-sur-Oust\";\"main\"\n\"3035316\";\"Baen-Ballon\";\"other\"\n\"3035316\";\"Bains\";\"other\"\n\"3035317\";\"Bains-les-Bains\";\"main\"\n\"3035317\";\"Bains\";\"other\"\n\"3035322\";\"Bains\";\"main\"\n\"3035324\";\"Bain-de-Bretagne\";\"main\"\n\"3035324\";\"Baen-Veur\";\"other\"\n\"3035324\";\"Bain\";\"other\"\n\"3035324\";\"Ben de Bretan\";\"other\"\n\"3035324\";\"Бен де Бретањ\";\"other\"\n\"3035325\";\"Baincthun\";\"main\"\n\"3035329\";\"Bailly-Romainvilliers\";\"main\"\n\"3035333\";\"Bailly-Carrois\";\"main\"\n\"3035340\";\"Bailly\";\"main\"\n\"3035349\";\"Bailleval\";\"main\"\n\"3035351\";\"Bailleul-sur-Thérain\";\"main\"\n\"3035351\";\"Bailleul-sur-Therain\";\"ascii\"\n\"3035351\";\"Bailleul\";\"other\"\n\"3035352\";\"Bailleul-Sir-Berthoult\";\"main\"\n\"3035352\";\"Bailleul\";\"other\"\n\"3035352\";\"Bailleul-la-Liberte\";\"other\"\n\"3035352\";\"Bailleul-la-Liberté\";\"other\"\n\"3035359\";\"Bailleul\";\"main\"\n\"3035359\";\"Bajel\";\"other\"\n\"3035359\";\"Belle\";\"other\"\n\"3035359\";\"Бајел\";\"other\"\n\"3035362\";\"Baillet-en-France\";\"main\"\n\"3035362\";\"Baillet\";\"other\"\n\"3035365\";\"Bailleau-l'Évêque\";\"main\"\n\"3035365\";\"Bailleau-l'Eveque\";\"ascii\"\n\"3035365\";\"Bailleau\";\"other\"\n\"3035365\";\"Bailleau-l'Evêque\";\"other\"\n\"3035365\";\"Bailleau-les-Bois\";\"other\"\n\"3035365\";\"Bajo l'Evek\";\"other\"\n\"3035365\";\"Бајо л'Евек\";\"other\"\n\"3035366\";\"Bailleau-le-Pin\";\"main\"\n\"3035366\";\"Bailleau\";\"other\"\n\"3035366\";\"Bajo le Pen\";\"other\"\n\"3035366\";\"Бајо ле Пен\";\"other\"\n\"3035370\";\"Baillargues\";\"main\"\n\"3035376\";\"Baignes-Sainte-Radegonde\";\"main\"\n\"3035376\";\"Baignes\";\"other\"\n\"3035388\";\"Baho\";\"main\"\n\"3035388\";\"Bao\";\"other\"\n\"3035388\";\"Baó\";\"other\"\n\"3035389\";\"Baguer-Pican\";\"main\"\n\"3035389\";\"Bagar-Bihan\";\"other\"\n\"3035390\";\"Baguer-Morvan\";\"main\"\n\"3035390\";\"Bagar-Morvan\";\"other\"\n\"3035390\";\"Baguer\";\"other\"\n\"3035396\";\"Bagnols-sur-Cèze\";\"main\"\n\"3035396\";\"Bagnols-sur-Ceze\";\"ascii\"\n\"3035396\";\"Bagnols\";\"other\"\n\"3035398\";\"Bagnols-en-Forêt\";\"main\"\n\"3035398\";\"Bagnols-en-Foret\";\"ascii\"\n\"3035398\";\"Bagnols\";\"other\"\n\"3035403\";\"Bagnolet\";\"main\"\n\"3035403\";\"Ban'ole\";\"other\"\n\"3035403\";\"Banole\";\"other\"\n\"3035403\";\"Баньоле\";\"other\"\n\"3035403\";\"Бањоле\";\"other\"\n\"3035409\";\"Bagneux\";\"main\"\n\"3035409\";\"Bano\";\"other\"\n\"3035409\";\"Бањо\";\"other\"\n\"3035416\";\"Bagnères-de-Luchon\";\"main\"\n\"3035416\";\"Bagneres-de-Luchon\";\"ascii\"\n\"3035416\";\"Bagneres de Luchon\";\"other\"\n\"3035416\";\"Bagnères de Luchon\";\"other\"\n\"3035416\";\"Baner de Lison\";\"other\"\n\"3035416\";\"Banheres de Luishon\";\"other\"\n\"3035416\";\"Banhères de Luishon\";\"other\"\n\"3035416\";\"Luchon\";\"other\"\n\"3035416\";\"Бањер де Лишон\";\"other\"\n\"3035418\";\"Bagnères-de-Bigorre\";\"main\"\n\"3035418\";\"Bagneres-de-Bigorre\";\"ascii\"\n\"3035418\";\"Bagneres\";\"other\"\n\"3035418\";\"Bagnères\";\"other\"\n\"3035418\";\"Baner de Bigor\";\"other\"\n\"3035418\";\"Banheras\";\"other\"\n\"3035418\";\"Banheras de Bigorra\";\"other\"\n\"3035418\";\"Banhèras de Bigòrra\";\"other\"\n\"3035418\";\"Бањер де Бигор\";\"other\"\n\"3035419\";\"Bagneaux-sur-Loing\";\"main\"\n\"3035419\";\"Bagneaux\";\"other\"\n\"3035432\";\"Bages\";\"main\"\n\"3035432\";\"Bages del Rossello\";\"other\"\n\"3035432\";\"Bages del Rosselló\";\"other\"\n\"3035437\";\"Bâgé-la-Ville\";\"main\"\n\"3035437\";\"Bage-la-Ville\";\"ascii\"\n\"3035441\";\"Bagard\";\"main\"\n\"3035459\";\"Baden\";\"main\"\n\"3035471\";\"Bacqueville-en-Caux\";\"main\"\n\"3035471\";\"Bacqueville\";\"other\"\n\"3035471\";\"Bakvil an Ko\";\"other\"\n\"3035471\";\"Баквил ан Ко\";\"other\"\n\"3035482\";\"Bachy\";\"main\"\n\"3035492\";\"Bachant\";\"main\"\n\"3035498\";\"Baccarat\";\"main\"\n\"3035498\";\"Bakara\";\"other\"\n\"3035498\";\"Бакара\";\"other\"\n\"3035525\";\"Azille\";\"main\"\n\"3035541\";\"Azé\";\"main\"\n\"3035541\";\"Aze\";\"ascii\"\n\"3035542\";\"Azé\";\"main\"\n\"3035542\";\"Aze\";\"ascii\"\n\"3035547\";\"Azay-sur-Cher\";\"main\"\n\"3035547\";\"Azay\";\"other\"\n\"3035547\";\"Aze sir Sher\";\"other\"\n\"3035547\";\"Азе сир Шер\";\"other\"\n\"3035548\";\"Azay-le-Rideau\";\"main\"\n\"3035548\";\"Azay\";\"other\"\n\"3035548\";\"Aze le Rido\";\"other\"\n\"3035548\";\"Azeh-ljo-Rido\";\"other\"\n\"3035548\";\"Castello di Azay-le-Rideau\";\"other\"\n\"3035548\";\"Castillo de Azay-le-Rideau\";\"other\"\n\"3035548\";\"Chateau d'Azay-le-Rideau\";\"other\"\n\"3035548\";\"Château d'Azay-le-Rideau\";\"other\"\n\"3035548\";\"Kasteel van Azay-le-Rideau\";\"other\"\n\"3035548\";\"Schloss Azay-le-Rideau\";\"other\"\n\"3035548\";\"Slottet i Azay-le-Rideau\";\"other\"\n\"3035548\";\"ajeleulido\";\"other\"\n\"3035548\";\"aze=ru=rido cheng\";\"other\"\n\"3035548\";\"Азе ле Ридо\";\"other\"\n\"3035548\";\"Азэ-лё-Ридо\";\"other\"\n\"3035548\";\"アゼ＝ル＝リドー城\";\"other\"\n\"3035548\";\"아제르리도\";\"other\"\n\"3035549\";\"Azay-le-Ferron\";\"main\"\n\"3035549\";\"Azay\";\"other\"\n\"3035549\";\"Azay-le-Feron\";\"other\"\n\"3035549\";\"Aze le Feron\";\"other\"\n\"3035549\";\"Азе ле Ферон\";\"other\"\n\"3035550\";\"Azay-le-Brûlé\";\"main\"\n\"3035550\";\"Azay-le-Brule\";\"ascii\"\n\"3035550\";\"Azay\";\"other\"\n\"3035560\";\"Aytré\";\"main\"\n\"3035560\";\"Aytre\";\"ascii\"\n\"3035561\";\"Ay-sur-Moselle\";\"main\"\n\"3035561\";\"Ay\";\"other\"\n\"3035563\";\"Ayse\";\"main\"\n\"3035563\";\"Ayze\";\"other\"\n\"3035566\";\"Ayron\";\"main\"\n\"3035576\";\"Ayguesvives\";\"main\"\n\"3035576\";\"Aiguesvives\";\"other\"\n\"3035577\";\"Ayguemorte-les-Graves\";\"main\"\n\"3035577\";\"Aiguemorte-les Graves\";\"other\"\n\"3035577\";\"Ayguemorte\";\"other\"\n\"3035585\";\"Aydoilles\";\"main\"\n\"3035589\";\"Aydat\";\"main\"\n\"3035589\";\"Ajda\";\"other\"\n\"3035589\";\"Eda\";\"other\"\n\"3035589\";\"Ајда\";\"other\"\n\"3035589\";\"Еда\";\"other\"\n\"3035594\";\"Ay\";\"main\"\n\"3035594\";\"Aÿ\";\"other\"\n\"3035594\";\"E\";\"other\"\n\"3035594\";\"Е\";\"other\"\n\"3035595\";\"Ax-les-Thermes\";\"main\"\n\"3035595\";\"Aks le Term\";\"other\"\n\"3035595\";\"Ax\";\"other\"\n\"3035595\";\"Акс ле Терм\";\"other\"\n\"3035612\";\"Avrillé\";\"main\"\n\"3035612\";\"Avrille\";\"ascii\"\n\"3035613\";\"Avrillé\";\"main\"\n\"3035613\";\"Avrille\";\"ascii\"\n\"3035634\";\"Avrechy\";\"main\"\n\"3035639\";\"Avranches\";\"main\"\n\"3035639\";\"Avransh\";\"other\"\n\"3035639\";\"Авранш\";\"other\"\n\"3035649\";\"Avord\";\"main\"\n\"3035649\";\"Avor\";\"other\"\n\"3035649\";\"Авор\";\"other\"\n\"3035654\";\"Avon\";\"main\"\n\"3035659\";\"Avoine\";\"main\"\n\"3035659\";\"Avoen\";\"other\"\n\"3035659\";\"Авоен\";\"other\"\n\"3035661\";\"Avize\";\"main\"\n\"3035663\";\"Aviron\";\"main\"\n\"3035663\";\"Авирон\";\"other\"\n\"3035667\";\"Avion\";\"main\"\n\"3035669\";\"Avilly-Saint-Léonard\";\"main\"\n\"3035669\";\"Avilly-Saint-Leonard\";\"ascii\"\n\"3035675\";\"Avignonet-Lauragais\";\"main\"\n\"3035675\";\"Avignonet\";\"other\"\n\"3035681\";\"Avignon\";\"main\"\n\"3035681\";\"Abinion\";\"other\"\n\"3035681\";\"Avenio\";\"other\"\n\"3035681\";\"Avignone\";\"other\"\n\"3035681\";\"Avin'on\";\"other\"\n\"3035681\";\"Avinhao\";\"other\"\n\"3035681\";\"Avinhon\";\"other\"\n\"3035681\";\"Avinhão\";\"other\"\n\"3035681\";\"Avinjono\";\"other\"\n\"3035681\";\"Avinon\";\"other\"\n\"3035681\";\"Avinon - Avignon\";\"other\"\n\"3035681\";\"Avinyo\";\"other\"\n\"3035681\";\"Avinyó\";\"other\"\n\"3035681\";\"Aviñón\";\"other\"\n\"3035681\";\"Aviñón - Avignon\";\"other\"\n\"3035681\";\"Awinion\";\"other\"\n\"3035681\";\"avu~inyon\";\"other\"\n\"3035681\";\"ya wei nong\";\"other\"\n\"3035681\";\"Αβινιόν\";\"other\"\n\"3035681\";\"Авиньон\";\"other\"\n\"3035681\";\"Авіньйон\";\"other\"\n\"3035681\";\"אביניון\";\"other\"\n\"3035681\";\"アヴィニョン\";\"other\"\n\"3035681\";\"亞維農\";\"other\"\n\"3035687\";\"Avèze\";\"main\"\n\"3035687\";\"Aveze\";\"ascii\"\n\"3035696\";\"Avessac\";\"main\"\n\"3035696\";\"Avezeg\";\"other\"\n\"3035698\";\"Avesnes-sur-Helpe\";\"main\"\n\"3035698\";\"Avesnes\";\"other\"\n\"3035698\";\"Avne sir Elp\";\"other\"\n\"3035698\";\"Авне сир Елп\";\"other\"\n\"3035699\";\"Avesnes-le-Sec\";\"main\"\n\"3035699\";\"Avesnes\";\"other\"\n\"3035701\";\"Avesnes-les-Aubert\";\"main\"\n\"3035701\";\"Avesnes\";\"other\"\n\"3035701\";\"Avesnes-lez-Aubert\";\"other\"\n\"3035702\";\"Avesnes-le-Comte\";\"main\"\n\"3035702\";\"Avesne-l'Egalite\";\"other\"\n\"3035702\";\"Avesne-l'Egalité\";\"other\"\n\"3035707\";\"Avesnelles\";\"main\"\n\"3035719\";\"Avermes\";\"main\"\n\"3035727\";\"Avensan\";\"main\"\n\"3035743\";\"Avelin\";\"main\"\n\"3035748\";\"Aveizieux\";\"main\"\n\"3035749\";\"Aveize\";\"main\"\n\"3035756\";\"Avanton\";\"main\"\n\"3035761\";\"Avanne-Aveney\";\"main\"\n\"3035768\";\"Avallon\";\"main\"\n\"3035768\";\"Avalon\";\"other\"\n\"3035768\";\"Avalun\";\"other\"\n\"3035768\";\"Авалон\";\"other\"\n\"3035768\";\"Авалун\";\"other\"\n\"3035776\";\"Availles-Limouzine\";\"main\"\n\"3035776\";\"Availles\";\"other\"\n\"3035776\";\"Availles-la-Montagne\";\"other\"\n\"3035786\";\"Auzouer-en-Touraine\";\"main\"\n\"3035786\";\"Auzouer\";\"other\"\n\"3035801\";\"Auzielle\";\"main\"\n\"3035802\";\"Auzeville-Tolosane\";\"main\"\n\"3035802\";\"Auzeville\";\"other\"\n\"3035808\";\"Auzebosc\";\"main\"\n\"3035812\";\"Auzat-la-Combelle\";\"main\"\n\"3035812\";\"Auzat-sur-Allier\";\"other\"\n\"3035816\";\"Auzances\";\"main\"\n\"3035824\";\"Auxy\";\"main\"\n\"3035828\";\"Auxonne\";\"main\"\n\"3035828\";\"Ukson\";\"other\"\n\"3035828\";\"Уксон\";\"other\"\n\"3035830\";\"Auxon-Dessous\";\"main\"\n\"3035830\";\"Okson Desu\";\"other\"\n\"3035830\";\"Оксон Десу\";\"other\"\n\"3035838\";\"Auxi-le-Château\";\"main\"\n\"3035838\";\"Auxi-le-Chateau\";\"ascii\"\n\"3035838\";\"Auxi\";\"other\"\n\"3035838\";\"Auxy-la-Reunion\";\"other\"\n\"3035838\";\"Auxy-la-Réunion\";\"other\"\n\"3035843\";\"Auxerre\";\"main\"\n\"3035843\";\"Okser\";\"other\"\n\"3035843\";\"Oser\";\"other\"\n\"3035843\";\"oseru\";\"other\"\n\"3035843\";\"ou sai er\";\"other\"\n\"3035843\";\"Оксер\";\"other\"\n\"3035843\";\"Осер\";\"other\"\n\"3035843\";\"オセール\";\"other\"\n\"3035843\";\"欧塞尔\";\"other\"\n\"3035859\";\"Auvillar\";\"main\"\n\"3035864\";\"Auvers-sur-Oise\";\"main\"\n\"3035864\";\"Auvers\";\"other\"\n\"3035864\";\"Over sir Oaz\";\"other\"\n\"3035864\";\"ovu~eru=shuru=owazu\";\"other\"\n\"3035864\";\"Овер сир Оаз\";\"other\"\n\"3035864\";\"オーヴェル＝シュル＝オワーズ\";\"other\"\n\"3035866\";\"Auvers-Saint-Georges\";\"main\"\n\"3035866\";\"Auvers\";\"other\"\n\"3035867\";\"Auvers-le-Hamon\";\"main\"\n\"3035867\";\"Auvers\";\"other\"\n\"3035867\";\"Auvers-l'Union\";\"other\"\n\"3035883\";\"Autun\";\"main\"\n\"3035883\";\"Bibracte\";\"other\"\n\"3035883\";\"Utan\";\"other\"\n\"3035883\";\"otan\";\"other\"\n\"3035883\";\"Утан\";\"other\"\n\"3035883\";\"オータン\";\"other\"\n\"3035886\";\"Autry-le-Châtel\";\"main\"\n\"3035886\";\"Autry-le-Chatel\";\"ascii\"\n\"3035886\";\"Autry\";\"other\"\n\"3035916\";\"Autrans\";\"main\"\n\"3035938\";\"Authon-du-Perche\";\"main\"\n\"3035938\";\"Authon\";\"other\"\n\"3035938\";\"Cinq-Fonds\";\"other\"\n\"3035951\";\"Authie\";\"main\"\n\"3035970\";\"Auterive\";\"main\"\n\"3035985\";\"Aussonne\";\"main\"\n\"3035991\";\"Aussillon\";\"main\"\n\"3036012\";\"Auriol\";\"main\"\n\"3036016\";\"Aurillac\";\"main\"\n\"3036016\";\"Orijak\";\"other\"\n\"3036016\";\"Orilak\";\"other\"\n\"3036016\";\"Orlhac\";\"other\"\n\"3036016\";\"oriyakku\";\"other\"\n\"3036016\";\"Оријак\";\"other\"\n\"3036016\";\"Ориљак\";\"other\"\n\"3036016\";\"オーリヤック\";\"other\"\n\"3036018\";\"Aurignac\";\"main\"\n\"3036022\";\"Auribeau-sur-Siagne\";\"main\"\n\"3036022\";\"Auribeau\";\"other\"\n\"3036027\";\"Auriac-sur-Vendinelle\";\"main\"\n\"3036027\";\"Auriac\";\"other\"\n\"3036048\";\"Aureille\";\"main\"\n\"3036052\";\"Aureilhan\";\"main\"\n\"3036054\";\"Aurec-sur-Loire\";\"main\"\n\"3036054\";\"Aurec\";\"other\"\n\"3036059\";\"Auray\";\"main\"\n\"3036059\";\"An Alre\";\"other\"\n\"3036059\";\"Ure\";\"other\"\n\"3036059\";\"Уре\";\"other\"\n\"3036067\";\"Aups\";\"main\"\n\"3036067\";\"Op\";\"other\"\n\"3036067\";\"Up\";\"other\"\n\"3036067\";\"Оп\";\"other\"\n\"3036067\";\"Уп\";\"other\"\n\"3036074\";\"Auneuil\";\"main\"\n\"3036079\";\"Auneau\";\"main\"\n\"3036081\";\"Aunay-sur-Odon\";\"main\"\n\"3036081\";\"Aunay\";\"other\"\n\"3036083\";\"Aunay-sous-Auneau\";\"main\"\n\"3036083\";\"Aunay\";\"other\"\n\"3036097\";\"Aumont-Aubrac\";\"main\"\n\"3036097\";\"Aumont\";\"other\"\n\"3036107\";\"Aumetz\";\"main\"\n\"3036107\";\"Omec\";\"other\"\n\"3036107\";\"Umetz\";\"other\"\n\"3036107\";\"Омец\";\"other\"\n\"3036107\";\"Уметз\";\"other\"\n\"3036117\";\"Aumale\";\"main\"\n\"3036117\";\"Omal\";\"other\"\n\"3036117\";\"Омал\";\"other\"\n\"3036122\";\"Ault\";\"main\"\n\"3036122\";\"Bourg d'Ault\";\"other\"\n\"3036132\";\"Aulnoye-Aymeries\";\"main\"\n\"3036132\";\"Aulnoye\";\"other\"\n\"3036133\";\"Aulnoy-lez-Valenciennes\";\"main\"\n\"3036137\";\"Aulnois-sous-Laon\";\"main\"\n\"3036137\";\"Aulnois\";\"other\"\n\"3036142\";\"Aulnay-sur-Mauldre\";\"main\"\n\"3036142\";\"Aulnay\";\"other\"\n\"3036145\";\"Aulnay-sous-Bois\";\"main\"\n\"3036145\";\"Aulnay\";\"other\"\n\"3036145\";\"olne su boa\";\"other\"\n\"3036145\";\"Олне су Боа\";\"other\"\n\"3036153\";\"Aulnay\";\"main\"\n\"3036153\";\"Aulnay-de-Saintonge\";\"other\"\n\"3036154\";\"Aulnat\";\"main\"\n\"3036178\";\"Augy\";\"main\"\n\"3036184\";\"Augny\";\"main\"\n\"3036215\";\"Augan\";\"main\"\n\"3036215\";\"Algam\";\"other\"\n\"3036223\";\"Auffargis\";\"main\"\n\"3036226\";\"Audun-le-Tiche\";\"main\"\n\"3036226\";\"Audun\";\"other\"\n\"3036226\";\"Daeitsch-Oth\";\"other\"\n\"3036226\";\"Däitsch-Oth\";\"other\"\n\"3036226\";\"Oden le Tish\";\"other\"\n\"3036226\";\"Оден ле Тиш\";\"other\"\n\"3036227\";\"Audun-le-Roman\";\"main\"\n\"3036227\";\"Audun\";\"other\"\n\"3036229\";\"Audruicq\";\"main\"\n\"3036240\";\"Audincourt\";\"main\"\n\"3036247\";\"Audierne\";\"main\"\n\"3036247\";\"Gwaien\";\"other\"\n\"3036247\";\"Odjerne\";\"other\"\n\"3036247\";\"Одјерне\";\"other\"\n\"3036256\";\"Audenge\";\"main\"\n\"3036270\";\"Auchy-les-Mines\";\"main\"\n\"3036270\";\"Auchy\";\"other\"\n\"3036271\";\"Auchy-lès-Hesdin\";\"main\"\n\"3036271\";\"Auchy-les-Hesdin\";\"ascii\"\n\"3036271\";\"Auchy\";\"other\"\n\"3036278\";\"Auchel\";\"main\"\n\"3036278\";\"Ushel\";\"other\"\n\"3036278\";\"Ушел\";\"other\"\n\"3036281\";\"Auch\";\"main\"\n\"3036281\";\"Aush\";\"other\"\n\"3036281\";\"Auski\";\"other\"\n\"3036281\";\"Osh\";\"other\"\n\"3036281\";\"Ush\";\"other\"\n\"3036281\";\"oshu\";\"other\"\n\"3036281\";\"Ош\";\"other\"\n\"3036281\";\"Уш\";\"other\"\n\"3036281\";\"オーシュ\";\"other\"\n\"3036287\";\"Aucamville\";\"main\"\n\"3036289\";\"Auby\";\"main\"\n\"3036289\";\"Auby-lez-Douai\";\"other\"\n\"3036295\";\"Aubusson\";\"main\"\n\"3036295\";\"Lo Bucon\";\"other\"\n\"3036295\";\"Lo Buçon\";\"other\"\n\"3036295\";\"Obison\";\"other\"\n\"3036295\";\"Обисон\";\"other\"\n\"3036300\";\"Aubry-du-Hainaut\";\"main\"\n\"3036313\";\"Auboué\";\"main\"\n\"3036313\";\"Auboue\";\"ascii\"\n\"3036314\";\"Aubord\";\"main\"\n\"3036323\";\"Aubin\";\"main\"\n\"3036326\";\"Aubigny-sur-Nère\";\"main\"\n\"3036326\";\"Aubigny-sur-Nere\";\"ascii\"\n\"3036326\";\"Aubigny\";\"other\"\n\"3036326\";\"Aubigny-Ville\";\"other\"\n\"3036326\";\"Obini sir Ner\";\"other\"\n\"3036326\";\"Обињи сир Нер\";\"other\"\n\"3036335\";\"Aubigny-au-Bac\";\"main\"\n\"3036335\";\"Aubigny\";\"other\"\n\"3036338\";\"Aubigny-en-Artois\";\"main\"\n\"3036348\";\"Aubigny\";\"main\"\n\"3036352\";\"Aubigné-Racan\";\"main\"\n\"3036352\";\"Aubigne-Racan\";\"ascii\"\n\"3036352\";\"Aubigne\";\"other\"\n\"3036352\";\"Aubigné\";\"other\"\n\"3036359\";\"Aubignan\";\"main\"\n\"3036363\";\"Aubiet\";\"main\"\n\"3036364\";\"Aubière\";\"main\"\n\"3036364\";\"Aubiere\";\"ascii\"\n\"3036365\";\"Aubie-et-Espessas\";\"main\"\n\"3036365\";\"Aubie\";\"other\"\n\"3036371\";\"Aubevoye\";\"main\"\n\"3036371\";\"Aubevoie\";\"other\"\n\"3036380\";\"Aube-sur-Rîle\";\"main\"\n\"3036380\";\"Aube-sur-Rile\";\"ascii\"\n\"3036380\";\"Aube\";\"other\"\n\"3036386\";\"Aubervilliers\";\"main\"\n\"3036386\";\"Aubervilles\";\"other\"\n\"3036394\";\"Aubers\";\"main\"\n\"3036399\";\"Auberives-sur-Varèze\";\"main\"\n\"3036399\";\"Auberives-sur-Vareze\";\"ascii\"\n\"3036399\";\"Auberives\";\"other\"\n\"3036402\";\"Aubergenville\";\"main\"\n\"3036406\";\"Auberchicourt\";\"main\"\n\"3036418\";\"Aubenas\";\"main\"\n\"3036418\";\"Ubena\";\"other\"\n\"3036418\";\"Убена\";\"other\"\n\"3036430\";\"Aubais\";\"main\"\n\"3036433\";\"Aubagne\";\"main\"\n\"3036433\";\"Aubagne en Provence\";\"other\"\n\"3036433\";\"Oban\";\"other\"\n\"3036433\";\"Oban'\";\"other\"\n\"3036433\";\"Obane\";\"other\"\n\"3036433\";\"Obanė\";\"other\"\n\"3036433\";\"Ubane\";\"other\"\n\"3036433\";\"obanyu\";\"other\"\n\"3036433\";\"Обан\";\"other\"\n\"3036433\";\"Обань\";\"other\"\n\"3036433\";\"Обањ\";\"other\"\n\"3036433\";\"Убање\";\"other\"\n\"3036433\";\"オーバーニュ\";\"other\"\n\"3036436\";\"Atur\";\"main\"\n\"3036436\";\"Atir\";\"other\"\n\"3036436\";\"Атир\";\"other\"\n\"3036444\";\"Attigny\";\"main\"\n\"3036444\";\"Atini\";\"other\"\n\"3036444\";\"Vieux-Pont\";\"other\"\n\"3036444\";\"Атињи\";\"other\"\n\"3036449\";\"Attignat\";\"main\"\n\"3036449\";\"Atina\";\"other\"\n\"3036449\";\"Атиња\";\"other\"\n\"3036450\";\"Attichy\";\"main\"\n\"3036451\";\"Attiches\";\"main\"\n\"3036456\";\"Attainville\";\"main\"\n\"3036460\";\"Athis-Mons\";\"main\"\n\"3036460\";\"Athis\";\"other\"\n\"3036460\";\"Ati Mon\";\"other\"\n\"3036460\";\"Ати Мон\";\"other\"\n\"3036464\";\"Athies-sous-Laon\";\"main\"\n\"3036464\";\"Athies\";\"other\"\n\"3036471\";\"Athée-sur-Cher\";\"main\"\n\"3036471\";\"Athee-sur-Cher\";\"ascii\"\n\"3036471\";\"Athee\";\"other\"\n\"3036471\";\"Athée\";\"other\"\n\"3036495\";\"Astaffort\";\"main\"\n\"3036502\";\"Asson\";\"main\"\n\"3036512\";\"Assérac\";\"main\"\n\"3036512\";\"Asserac\";\"ascii\"\n\"3036512\";\"Azereg\";\"other\"\n\"3036522\";\"Assat\";\"main\"\n\"3036524\";\"Assas\";\"main\"\n\"3036540\";\"Aspremont\";\"main\"\n\"3036540\";\"Aprmon\";\"other\"\n\"3036540\";\"Aspremon\";\"other\"\n\"3036540\";\"Апрмон\";\"other\"\n\"3036540\";\"Аспремон\";\"other\"\n\"3036544\";\"Aspiran\";\"main\"\n\"3036548\";\"Aspet\";\"main\"\n\"3036553\";\"Aspach-le-Haut\";\"main\"\n\"3036553\";\"Aspach\";\"other\"\n\"3036554\";\"Aspach-le-Bas\";\"main\"\n\"3036554\";\"Aspach\";\"other\"\n\"3036556\";\"Aspach\";\"main\"\n\"3036562\";\"Asnières-sur-Oise\";\"main\"\n\"3036562\";\"Asnieres-sur-Oise\";\"ascii\"\n\"3036562\";\"Asnieres\";\"other\"\n\"3036562\";\"Asnières\";\"other\"\n\"3036563\";\"Asnières-sur-Nouère\";\"main\"\n\"3036563\";\"Asnieres-sur-Nouere\";\"ascii\"\n\"3036563\";\"Asnieres\";\"other\"\n\"3036563\";\"Asnières\";\"other\"\n\"3036572\";\"Asnières-sur-Seine\";\"main\"\n\"3036572\";\"Asnieres-sur-Seine\";\"ascii\"\n\"3036572\";\"An'er-sjur-Sen\";\"other\"\n\"3036572\";\"Asnieres\";\"other\"\n\"3036572\";\"Asnières\";\"other\"\n\"3036572\";\"Аньер-сюр-Сен\";\"other\"\n\"3036590\";\"Aschères-le-Marché\";\"main\"\n\"3036590\";\"Ascheres-le-Marche\";\"ascii\"\n\"3036590\";\"Ascheres\";\"other\"\n\"3036590\";\"Aschères\";\"other\"\n\"3036596\";\"Ascain\";\"main\"\n\"3036596\";\"Azkaine\";\"other\"\n\"3036601\";\"Arzon\";\"main\"\n\"3036601\";\"Arzhon-Rewiz\";\"other\"\n\"3036604\";\"Arzens\";\"main\"\n\"3036609\";\"Arzano\";\"main\"\n\"3036609\";\"An Arzhanaou\";\"other\"\n\"3036625\";\"Arveyres\";\"main\"\n\"3036628\";\"Arvert\";\"main\"\n\"3036633\";\"Arudy\";\"main\"\n\"3036637\";\"Art-sur-Meurthe\";\"main\"\n\"3036637\";\"Art\";\"other\"\n\"3036638\";\"Artres\";\"main\"\n\"3036646\";\"Artix\";\"main\"\n\"3036655\";\"Artigues-près-Bordeaux\";\"main\"\n\"3036655\";\"Artigues-pres-Bordeaux\";\"ascii\"\n\"3036655\";\"Artigues\";\"other\"\n\"3036663\";\"Artiguelouve\";\"main\"\n\"3036679\";\"Arthon-en-Retz\";\"main\"\n\"3036679\";\"Arthon\";\"other\"\n\"3036679\";\"Arzhon-Raez\";\"other\"\n\"3036680\";\"Arthon\";\"main\"\n\"3036680\";\"Arton\";\"other\"\n\"3036680\";\"Артон\";\"other\"\n\"3036684\";\"Arthez-de-Béarn\";\"main\"\n\"3036684\";\"Arthez-de-Bearn\";\"ascii\"\n\"3036684\";\"Arthez\";\"other\"\n\"3036687\";\"Arthès\";\"main\"\n\"3036687\";\"Arthes\";\"ascii\"\n\"3036693\";\"Arthaz-Pont-Notre-Dame\";\"main\"\n\"3036693\";\"Arthaz\";\"other\"\n\"3036694\";\"Artenay\";\"main\"\n\"3036694\";\"Artene\";\"other\"\n\"3036694\";\"Artne\";\"other\"\n\"3036694\";\"Артене\";\"other\"\n\"3036694\";\"Артне\";\"other\"\n\"3036697\";\"Artemare\";\"main\"\n\"3036697\";\"Artemar\";\"other\"\n\"3036697\";\"Artmar\";\"other\"\n\"3036697\";\"Артемар\";\"other\"\n\"3036697\";\"Артмар\";\"other\"\n\"3036700\";\"Artas\";\"main\"\n\"3036702\";\"Artannes-sur-Indre\";\"main\"\n\"3036702\";\"Artannes\";\"other\"\n\"3036711\";\"Ars-sur-Moselle\";\"main\"\n\"3036711\";\"Ars\";\"other\"\n\"3036712\";\"Ars-sur-Formans\";\"main\"\n\"3036712\";\"Ars\";\"other\"\n\"3036719\";\"Ars-en-Ré\";\"main\"\n\"3036719\";\"Ars-en-Re\";\"ascii\"\n\"3036719\";\"Ars\";\"other\"\n\"3036719\";\"Il'de Re\";\"other\"\n\"3036719\";\"Ile de Re\";\"other\"\n\"3036719\";\"Ile-Republicaine\";\"other\"\n\"3036719\";\"Ile-Républicaine\";\"other\"\n\"3036719\";\"La Concorde\";\"other\"\n\"3036719\";\"Re\";\"other\"\n\"3036719\";\"Ré\";\"other\"\n\"3036719\";\"Île de Ré\";\"other\"\n\"3036719\";\"Иль де Ре\";\"other\"\n\"3036724\";\"Arsac\";\"main\"\n\"3036736\";\"Arrou\";\"main\"\n\"3036784\";\"Arras\";\"main\"\n\"3036784\";\"Aras\";\"other\"\n\"3036784\";\"Atrecht\";\"other\"\n\"3036784\";\"a la si\";\"other\"\n\"3036784\";\"arasu\";\"other\"\n\"3036784\";\"Арас\";\"other\"\n\"3036784\";\"Аррас\";\"other\"\n\"3036784\";\"アラス\";\"other\"\n\"3036784\";\"阿拉斯\";\"other\"\n\"3036791\";\"Arradon\";\"main\"\n\"3036791\";\"Aradon\";\"other\"\n\"3036797\";\"Arques-la-Bataille\";\"main\"\n\"3036797\";\"Ark la Bataj\";\"other\"\n\"3036797\";\"Arques\";\"other\"\n\"3036797\";\"Арк ла Батај\";\"other\"\n\"3036800\";\"Arques\";\"main\"\n\"3036822\";\"Arpajon-sur-Cère\";\"main\"\n\"3036822\";\"Arpajon-sur-Cere\";\"ascii\"\n\"3036822\";\"Arpajon\";\"other\"\n\"3036822\";\"Arpazhon sir Ser\";\"other\"\n\"3036822\";\"Арпажон сир Сер\";\"other\"\n\"3036823\";\"Arpajon\";\"main\"\n\"3036837\";\"Aron\";\"main\"\n\"3036843\";\"Arnouville-lès-Gonesse\";\"main\"\n\"3036843\";\"Arnouville-les-Gonesse\";\"ascii\"\n\"3036843\";\"Arnouville\";\"other\"\n\"3036850\";\"Arnières-sur-Iton\";\"main\"\n\"3036850\";\"Arnieres-sur-Iton\";\"ascii\"\n\"3036850\";\"Armeres\";\"other\"\n\"3036850\";\"Armères\";\"other\"\n\"3036850\";\"Arnieres\";\"other\"\n\"3036850\";\"Arnières\";\"other\"\n\"3036856\";\"Arnèke\";\"main\"\n\"3036856\";\"Arneke\";\"ascii\"\n\"3036862\";\"Arnay-le-Duc\";\"main\"\n\"3036862\";\"Arnay\";\"other\"\n\"3036862\";\"Arnay-sur-Arroux\";\"other\"\n\"3036862\";\"Arne le Dik\";\"other\"\n\"3036862\";\"Арне ле Дик\";\"other\"\n\"3036870\";\"Arnas\";\"main\"\n\"3036876\";\"Arnage\";\"main\"\n\"3036878\";\"Arnac-Pompadour\";\"main\"\n\"3036878\";\"Arnac\";\"other\"\n\"3036878\";\"Arnac-la-Prairie\";\"other\"\n\"3036879\";\"Arnac-la-Poste\";\"main\"\n\"3036879\";\"Arnac\";\"other\"\n\"3036881\";\"Armoy\";\"main\"\n\"3036881\";\"Armoa\";\"other\"\n\"3036881\";\"Armoj\";\"other\"\n\"3036881\";\"Армоа\";\"other\"\n\"3036881\";\"Армој\";\"other\"\n\"3036893\";\"Armissan\";\"main\"\n\"3036902\";\"Armentières-en-Brie\";\"main\"\n\"3036902\";\"Armentieres-en-Brie\";\"ascii\"\n\"3036902\";\"Armentieres\";\"other\"\n\"3036902\";\"Armentières\";\"other\"\n\"3036903\";\"Armentières\";\"main\"\n\"3036903\";\"Armentieres\";\"ascii\"\n\"3036903\";\"Armant'er\";\"other\"\n\"3036903\";\"Armantjer\";\"other\"\n\"3036903\";\"Armentiers\";\"other\"\n\"3036903\";\"Armontijer\";\"other\"\n\"3036903\";\"Армантьер\";\"other\"\n\"3036903\";\"Армантјер\";\"other\"\n\"3036903\";\"Армонтијер\";\"other\"\n\"3036905\";\"Armenonville-les-Gâtineaux\";\"main\"\n\"3036905\";\"Armenonville-les-Gatineaux\";\"ascii\"\n\"3036905\";\"Armenonville\";\"other\"\n\"3036913\";\"Armbouts-Cappel\";\"main\"\n\"3036932\";\"Arleux\";\"main\"\n\"3036932\";\"Arleux-du-Nord\";\"other\"\n\"3036935\";\"Arles\";\"main\"\n\"3036935\";\"Arl'\";\"other\"\n\"3036935\";\"Arles-sur-Tech\";\"other\"\n\"3036935\";\"Арль\";\"other\"\n\"3036938\";\"Arles\";\"main\"\n\"3036938\";\"Arelate\";\"other\"\n\"3036938\";\"Arl\";\"other\"\n\"3036938\";\"Arl'\";\"other\"\n\"3036938\";\"Arle\";\"other\"\n\"3036938\";\"Arles-Trinquetaille\";\"other\"\n\"3036938\";\"Arles-sur-Rhone\";\"other\"\n\"3036938\";\"Arles-sur-Rhône\";\"other\"\n\"3036938\";\"aruru\";\"other\"\n\"3036938\";\"Арл\";\"other\"\n\"3036938\";\"Арль\";\"other\"\n\"3036938\";\"ארל\";\"other\"\n\"3036938\";\"アルル\";\"other\"\n\"3036946\";\"Arlanc\";\"main\"\n\"3036946\";\"Arlan\";\"other\"\n\"3036946\";\"Arlon\";\"other\"\n\"3036946\";\"Арлан\";\"other\"\n\"3036946\";\"Арлон\";\"other\"\n\"3036957\";\"Arinthod\";\"main\"\n\"3037015\";\"Argent-sur-Sauldre\";\"main\"\n\"3037015\";\"Argent\";\"other\"\n\"3037016\";\"Argentré-du-Plessis\";\"main\"\n\"3037016\";\"Argentre-du-Plessis\";\"ascii\"\n\"3037016\";\"Argantred-ar-Genkiz\";\"other\"\n\"3037016\";\"Argentre\";\"other\"\n\"3037016\";\"Argentré\";\"other\"\n\"3037017\";\"Argentré\";\"main\"\n\"3037017\";\"Argentre\";\"ascii\"\n\"3037018\";\"Argenton-sur-Creuse\";\"main\"\n\"3037018\";\"Argenton\";\"other\"\n\"3037018\";\"Arzhanton sir Krez\";\"other\"\n\"3037018\";\"Аржантон сир Крез\";\"other\"\n\"3037021\";\"Argenton-les-Vallées\";\"main\"\n\"3037021\";\"Argenton-les-Vallees\";\"ascii\"\n\"3037021\";\"Argenton\";\"other\"\n\"3037021\";\"Argenton-Chateau\";\"other\"\n\"3037021\";\"Argenton-Château\";\"other\"\n\"3037021\";\"Argenton-le-Peuple\";\"other\"\n\"3037044\";\"Argenteuil\";\"main\"\n\"3037044\";\"Arzhantej\";\"other\"\n\"3037044\";\"Arzhentoj\";\"other\"\n\"3037044\";\"arujanto~uiyu\";\"other\"\n\"3037044\";\"Аржантей\";\"other\"\n\"3037044\";\"Аржантеј\";\"other\"\n\"3037044\";\"Аржентој\";\"other\"\n\"3037044\";\"アルジャントゥイユ\";\"other\"\n\"3037049\";\"Argentat\";\"main\"\n\"3037049\";\"Arzhenta\";\"other\"\n\"3037049\";\"Аржента\";\"other\"\n\"3037051\";\"Argentan\";\"main\"\n\"3037051\";\"Arzhantan\";\"other\"\n\"3037051\";\"Аржантан\";\"other\"\n\"3037059\";\"Argences\";\"main\"\n\"3037067\";\"Argeliers\";\"main\"\n\"3037068\";\"Argelers\";\"main\"\n\"3037068\";\"Argeles\";\"other\"\n\"3037068\";\"Argelès\";\"other\"\n\"3037070\";\"Argelès-Gazost\";\"main\"\n\"3037070\";\"Argeles-Gazost\";\"ascii\"\n\"3037070\";\"Argeles\";\"other\"\n\"3037070\";\"Argelès\";\"other\"\n\"3037075\";\"Argancy\";\"main\"\n\"3037089\";\"Arette\";\"main\"\n\"3037095\";\"Arès\";\"main\"\n\"3037095\";\"Ares\";\"ascii\"\n\"3037096\";\"Arenthon\";\"main\"\n\"3037113\";\"Ardres\";\"main\"\n\"3037123\";\"Ardin\";\"main\"\n\"3037133\";\"Ardentes\";\"main\"\n\"3037133\";\"Ardant\";\"other\"\n\"3037133\";\"Ardentes-les-Bois\";\"other\"\n\"3037133\";\"Ardon\";\"other\"\n\"3037133\";\"Ардант\";\"other\"\n\"3037133\";\"Ардон\";\"other\"\n\"3037157\";\"Arcueil\";\"main\"\n\"3037157\";\"Arkej\";\"other\"\n\"3037157\";\"Аркеј\";\"other\"\n\"3037158\";\"Arc-sur-Tille\";\"main\"\n\"3037158\";\"Arc\";\"other\"\n\"3037168\";\"Arçonnay\";\"main\"\n\"3037168\";\"Arconnay\";\"ascii\"\n\"3037186\";\"Arcis-sur-Aube\";\"main\"\n\"3037186\";\"Arcis\";\"other\"\n\"3037186\";\"Arsi sir Ob\";\"other\"\n\"3037186\";\"Арси сир Об\";\"other\"\n\"3037199\";\"Archigny\";\"main\"\n\"3037206\";\"Archettes\";\"main\"\n\"3037209\";\"Arches\";\"main\"\n\"3037218\";\"Archamps\";\"main\"\n\"3037221\";\"Arcey\";\"main\"\n\"3037224\";\"Arc-et-Senans\";\"main\"\n\"3037224\";\"Arc\";\"other\"\n\"3037245\";\"Arcangues\";\"main\"\n\"3037245\";\"Arrangoitze\";\"other\"\n\"3037253\";\"Arcachon\";\"main\"\n\"3037253\";\"Arcaishon\";\"other\"\n\"3037253\";\"Commune-Franklin\";\"other\"\n\"3037253\";\"arkashon\";\"other\"\n\"3037253\";\"Аркашон\";\"other\"\n\"3037263\";\"Arc-lès-Gray\";\"main\"\n\"3037263\";\"Arc-les-Gray\";\"ascii\"\n\"3037265\";\"Arbus\";\"main\"\n\"3037277\";\"Arbouans\";\"main\"\n\"3037281\";\"Arbonne-la-Forêt\";\"main\"\n\"3037281\";\"Arbonne-la-Foret\";\"ascii\"\n\"3037282\";\"Arbonne\";\"main\"\n\"3037282\";\"Constante\";\"other\"\n\"3037287\";\"Arbois\";\"main\"\n\"3037287\";\"Arboa\";\"other\"\n\"3037287\";\"Arbua\";\"other\"\n\"3037287\";\"Арбоа\";\"other\"\n\"3037287\";\"Арбуа\";\"other\"\n\"3037303\";\"Arbent\";\"main\"\n\"3037303\";\"Arb\";\"other\"\n\"3037303\";\"Arban\";\"other\"\n\"3037303\";\"Арб\";\"other\"\n\"3037303\";\"Арбан\";\"other\"\n\"3037331\";\"Aramon\";\"main\"\n\"3037345\";\"Arâches-la-Frasse\";\"main\"\n\"3037345\";\"Araches-la-Frasse\";\"ascii\"\n\"3037345\";\"Araches\";\"other\"\n\"3037345\";\"Arash\";\"other\"\n\"3037345\";\"Arâches\";\"other\"\n\"3037345\";\"Араш\";\"other\"\n\"3037352\";\"Apt\";\"main\"\n\"3037365\";\"Apremont\";\"main\"\n\"3037368\";\"Apprieu\";\"main\"\n\"3037370\";\"Appoigny\";\"main\"\n\"3037372\";\"Appietto\";\"main\"\n\"3037372\";\"Apieto\";\"other\"\n\"3037372\";\"Apjeto\";\"other\"\n\"3037372\";\"Appieto\";\"other\"\n\"3037372\";\"Appiettu\";\"other\"\n\"3037372\";\"Апието\";\"other\"\n\"3037372\";\"Апјето\";\"other\"\n\"3037390\";\"Aouste-sur-Sye\";\"main\"\n\"3037390\";\"Aouste\";\"other\"\n\"3037393\";\"Aoste\";\"main\"\n\"3037396\";\"Anzin-Saint-Aubin\";\"main\"\n\"3037396\";\"Anzin\";\"other\"\n\"3037396\";\"Aubin-la-Fontaine\";\"other\"\n\"3037396\";\"Commune-des-Freres-Unis\";\"other\"\n\"3037396\";\"Commune-des-Frères-Unis\";\"other\"\n\"3037396\";\"Mesnil-Marat\";\"other\"\n\"3037397\";\"Anzin\";\"main\"\n\"3037417\";\"Antran\";\"main\"\n\"3037418\";\"Antrain\";\"main\"\n\"3037418\";\"Antrain-sur-Couesnon\";\"other\"\n\"3037418\";\"Entraven\";\"other\"\n\"3037423\";\"Antony\";\"main\"\n\"3037423\";\"Ontoni\";\"other\"\n\"3037423\";\"Онтони\";\"other\"\n\"3037424\";\"Antonne-et-Trigonant\";\"main\"\n\"3037442\";\"Antigny\";\"main\"\n\"3037456\";\"Antibes\";\"main\"\n\"3037456\";\"Antib\";\"other\"\n\"3037456\";\"Antipolis\";\"other\"\n\"3037456\";\"Антиб\";\"other\"\n\"3037457\";\"Anthy-sur-Léman\";\"main\"\n\"3037457\";\"Anthy-sur-Leman\";\"ascii\"\n\"3037481\";\"Anstaing\";\"main\"\n\"3037482\";\"Ansouis\";\"main\"\n\"3037482\";\"Onsui\";\"other\"\n\"3037482\";\"ansuu~i\";\"other\"\n\"3037482\";\"Онсуи\";\"other\"\n\"3037482\";\"アンスウィ\";\"other\"\n\"3037489\";\"Anse\";\"main\"\n\"3037490\";\"Ansauvillers\";\"main\"\n\"3037502\";\"Anould\";\"main\"\n\"3037506\";\"Anor\";\"main\"\n\"3037506\";\"Анор\";\"other\"\n\"3037512\";\"Annot\";\"main\"\n\"3037512\";\"Ano\";\"other\"\n\"3037512\";\"Anu\";\"other\"\n\"3037512\";\"Ано\";\"other\"\n\"3037512\";\"Ану\";\"other\"\n\"3037514\";\"Annonay\";\"main\"\n\"3037514\";\"Anone\";\"other\"\n\"3037514\";\"Аноне\";\"other\"\n\"3037520\";\"Annœullin\";\"main\"\n\"3037520\";\"Annoeullin\";\"ascii\"\n\"3037521\";\"Annezin\";\"main\"\n\"3037521\";\"Annezin-les-Bethune\";\"other\"\n\"3037521\";\"Annezin-lès-Béthune\";\"other\"\n\"3037523\";\"Anneyron\";\"main\"\n\"3037531\";\"Annet-sur-Marne\";\"main\"\n\"3037531\";\"Annet\";\"other\"\n\"3037532\";\"Annesse-et-Beaulieu\";\"main\"\n\"3037532\";\"Annesse-et-Baulieu\";\"other\"\n\"3037534\";\"Annequin\";\"main\"\n\"3037538\";\"Annemasse\";\"main\"\n\"3037538\";\"anmas\";\"other\"\n\"3037538\";\"Анмас\";\"other\"\n\"3037540\";\"Annecy-le-Vieux\";\"main\"\n\"3037540\";\"Anesi le Vje\";\"other\"\n\"3037540\";\"Annesi-le-V'e\";\"other\"\n\"3037540\";\"Анеси ле Вје\";\"other\"\n\"3037540\";\"Аннеси-ле-Вье\";\"other\"\n\"3037543\";\"Annecy\";\"main\"\n\"3037543\";\"Ansi\";\"other\"\n\"3037543\";\"Eneci\";\"other\"\n\"3037543\";\"ansi\";\"other\"\n\"3037543\";\"anushi\";\"other\"\n\"3037543\";\"Èneci\";\"other\"\n\"3037543\";\"Анси\";\"other\"\n\"3037543\";\"アヌシー\";\"other\"\n\"3037543\";\"안시\";\"other\"\n\"3037548\";\"Annay\";\"main\"\n\"3037548\";\"Annay-sous-Lens\";\"other\"\n\"3037564\";\"Anizy-le-Château\";\"main\"\n\"3037564\";\"Anizy-le-Chateau\";\"ascii\"\n\"3037564\";\"Anisy-la-Riviere\";\"other\"\n\"3037564\";\"Anisy-la-Rivière\";\"other\"\n\"3037564\";\"Anizy\";\"other\"\n\"3037571\";\"Aniche\";\"main\"\n\"3037571\";\"Aniches\";\"other\"\n\"3037572\";\"Aniane\";\"main\"\n\"3037574\";\"Anhiers\";\"main\"\n\"3037576\";\"Angy\";\"main\"\n\"3037584\";\"Angresse\";\"main\"\n\"3037585\";\"Angres\";\"main\"\n\"3037596\";\"Angoulins\";\"main\"\n\"3037596\";\"Angoulins-sur-Mer\";\"other\"\n\"3037598\";\"Angoulême\";\"main\"\n\"3037598\";\"Angouleme\";\"ascii\"\n\"3037598\";\"An'nkoulem\";\"other\"\n\"3037598\";\"Angulem\";\"other\"\n\"3037598\";\"Angulema\";\"other\"\n\"3037598\";\"Angulema - Angouleme\";\"other\"\n\"3037598\";\"Angulema - Angoulême\";\"other\"\n\"3037598\";\"Angulemo\";\"other\"\n\"3037598\";\"Engoleime\";\"other\"\n\"3037598\";\"Montagne-Charente\";\"other\"\n\"3037598\";\"Ongulem\";\"other\"\n\"3037598\";\"anguremu\";\"other\"\n\"3037598\";\"Ανγκουλέμ\";\"other\"\n\"3037598\";\"Ангулем\";\"other\"\n\"3037598\";\"Онгулем\";\"other\"\n\"3037598\";\"アングレーム\";\"other\"\n\"3037612\";\"Anglet\";\"main\"\n\"3037612\";\"Angelu\";\"other\"\n\"3037612\";\"Angl\";\"other\"\n\"3037612\";\"Ongle\";\"other\"\n\"3037612\";\"Англ\";\"other\"\n\"3037612\";\"Онгле\";\"other\"\n\"3037618\";\"Angles\";\"main\"\n\"3037642\";\"Angicourt\";\"main\"\n\"3037644\";\"Angevillers\";\"main\"\n\"3037644\";\"Onzhevije\";\"other\"\n\"3037644\";\"Онжевије\";\"other\"\n\"3037648\";\"Angervilliers\";\"main\"\n\"3037654\";\"Angerville\";\"main\"\n\"3037656\";\"Angers\";\"main\"\n\"3037656\";\"Angero\";\"other\"\n\"3037656\";\"Anzhe\";\"other\"\n\"3037656\";\"Anĝero\";\"other\"\n\"3037656\";\"Bonne-Terre\";\"other\"\n\"3037656\";\"Fruits-Sucres\";\"other\"\n\"3037656\";\"Fruits-Sucrés\";\"other\"\n\"3037656\";\"anje\";\"other\"\n\"3037656\";\"Анже\";\"other\"\n\"3037656\";\"アンジェ\";\"other\"\n\"3037672\";\"Anetz\";\"main\"\n\"3037672\";\"Arned\";\"other\"\n\"3037673\";\"Anet\";\"main\"\n\"3037673\";\"Ane\";\"other\"\n\"3037673\";\"Ане\";\"other\"\n\"3037682\";\"Anduze\";\"main\"\n\"3037689\";\"Andrézieux-Bouthéon\";\"main\"\n\"3037689\";\"Andrezieux-Boutheon\";\"ascii\"\n\"3037689\";\"Andrezieux\";\"other\"\n\"3037689\";\"Andrézieux\";\"other\"\n\"3037691\";\"Andrezé\";\"main\"\n\"3037691\";\"Andreze\";\"ascii\"\n\"3037692\";\"Andrésy\";\"main\"\n\"3037692\";\"Andresy\";\"ascii\"\n\"3037693\";\"Andrest\";\"main\"\n\"3037694\";\"Andres\";\"main\"\n\"3037701\";\"Andouillé\";\"main\"\n\"3037701\";\"Andouille\";\"ascii\"\n\"3037706\";\"Andolsheim\";\"main\"\n\"3037708\";\"Andlau\";\"main\"\n\"3037708\";\"Ondlu\";\"other\"\n\"3037708\";\"Ондлу\";\"other\"\n\"3037713\";\"Andilly\";\"main\"\n\"3037715\";\"Andilly\";\"main\"\n\"3037715\";\"Andilly-les-Marais\";\"other\"\n\"3037721\";\"Andeville\";\"main\"\n\"3037726\";\"Andernos-les-Bains\";\"main\"\n\"3037726\";\"Anderno le Ben\";\"other\"\n\"3037726\";\"Andernos\";\"other\"\n\"3037726\";\"Андерно ле Бен\";\"other\"\n\"3037736\";\"Andelnans\";\"main\"\n\"3037745\";\"Andé\";\"main\"\n\"3037745\";\"Ande\";\"ascii\"\n\"3037747\";\"Andard\";\"main\"\n\"3037748\";\"Andancette\";\"main\"\n\"3037749\";\"Andance\";\"main\"\n\"3037754\";\"Ancy-sur-Moselle\";\"main\"\n\"3037754\";\"Ancy\";\"other\"\n\"3037757\";\"Ancy-le-Franc\";\"main\"\n\"3037770\";\"Ancône\";\"main\"\n\"3037770\";\"Ancone\";\"ascii\"\n\"3037794\";\"Ancerville\";\"main\"\n\"3037794\";\"Ancerville-Gue\";\"other\"\n\"3037794\";\"Ancerville-Güe\";\"other\"\n\"3037797\";\"Ancenis\";\"main\"\n\"3037797\";\"Ankiniz\";\"other\"\n\"3037813\";\"Ampuis\";\"main\"\n\"3037818\";\"Amplepuis\";\"main\"\n\"3037829\";\"Amou\";\"main\"\n\"3037838\";\"Amnéville\";\"main\"\n\"3037838\";\"Amneville\";\"ascii\"\n\"3037838\";\"Amnevij\";\"other\"\n\"3037838\";\"Amnevil\";\"other\"\n\"3037838\";\"Амневил\";\"other\"\n\"3037838\";\"Амневиј\";\"other\"\n\"3037842\";\"Ammerschwihr\";\"main\"\n\"3037842\";\"Ammerschweier\";\"other\"\n\"3037842\";\"Ammerschweir\";\"other\"\n\"3037845\";\"Amilly\";\"main\"\n\"3037846\";\"Amilly\";\"main\"\n\"3037854\";\"Amiens\";\"main\"\n\"3037854\";\"Am'en\";\"other\"\n\"3037854\";\"Amien\";\"other\"\n\"3037854\";\"Amijen\";\"other\"\n\"3037854\";\"Amjen\";\"other\"\n\"3037854\";\"Samarobriva\";\"other\"\n\"3037854\";\"amian\";\"other\"\n\"3037854\";\"ya mian\";\"other\"\n\"3037854\";\"Ам'єн\";\"other\"\n\"3037854\";\"Амиен\";\"other\"\n\"3037854\";\"Амијен\";\"other\"\n\"3037854\";\"Амьен\";\"other\"\n\"3037854\";\"Амјен\";\"other\"\n\"3037854\";\"אמיין\";\"other\"\n\"3037854\";\"アミアン\";\"other\"\n\"3037854\";\"亞眠\";\"other\"\n\"3037860\";\"Amfreville-la-Mi-Voie\";\"main\"\n\"3037860\";\"Amfreville\";\"other\"\n\"3037863\";\"Amfreville\";\"main\"\n\"3037875\";\"els Banys d'Arles\";\"main\"\n\"3037875\";\"Ameli le Ben\";\"other\"\n\"3037875\";\"Amelie-les Bains\";\"other\"\n\"3037875\";\"Amelie-les-Bains\";\"other\"\n\"3037875\";\"Amélie-les Bains\";\"other\"\n\"3037875\";\"Amélie-les-Bains\";\"other\"\n\"3037875\";\"els Banys\";\"other\"\n\"3037875\";\"Амели ле Бен\";\"other\"\n\"3037884\";\"Ambronay\";\"main\"\n\"3037886\";\"Ambrières-les-Vallées\";\"main\"\n\"3037886\";\"Ambrieres-les-Vallees\";\"ascii\"\n\"3037886\";\"Ambrieres\";\"other\"\n\"3037886\";\"Ambrieres-le-Grand\";\"other\"\n\"3037886\";\"Ambrières\";\"other\"\n\"3037886\";\"Ambrières-le-Grand\";\"other\"\n\"3037899\";\"Ambon\";\"main\"\n\"3037902\";\"Amboise\";\"main\"\n\"3037902\";\"Amboaz\";\"other\"\n\"3037902\";\"Ambuaz\";\"other\"\n\"3037902\";\"Ombroz\";\"other\"\n\"3037902\";\"Saint-Denis-Hors\";\"other\"\n\"3037902\";\"Амбоаз\";\"other\"\n\"3037902\";\"Амбуаз\";\"other\"\n\"3037902\";\"Омброз\";\"other\"\n\"3037915\";\"Ambleteuse\";\"main\"\n\"3037919\";\"Ambleny\";\"main\"\n\"3037921\";\"Amblainville\";\"main\"\n\"3037927\";\"Ambillou\";\"main\"\n\"3037929\";\"Ambierle\";\"main\"\n\"3037935\";\"Ambès\";\"main\"\n\"3037935\";\"Ambes\";\"ascii\"\n\"3037937\";\"Ambert\";\"main\"\n\"3037937\";\"Amber\";\"other\"\n\"3037937\";\"Амбер\";\"other\"\n\"3037941\";\"Ambérieux-en-Dombes\";\"main\"\n\"3037941\";\"Amberieux-en-Dombes\";\"ascii\"\n\"3037941\";\"Amberieux\";\"other\"\n\"3037941\";\"Ambérieux\";\"other\"\n\"3037943\";\"Ambérieu-en-Bugey\";\"main\"\n\"3037943\";\"Amberieu-en-Bugey\";\"ascii\"\n\"3037943\";\"Amberieu\";\"other\"\n\"3037943\";\"Ambérieu\";\"other\"\n\"3037943\";\"Omberju-on-Buzhi\";\"other\"\n\"3037943\";\"Saint-Amberieu\";\"other\"\n\"3037943\";\"Saint-Ambérieu\";\"other\"\n\"3037943\";\"Омберју-он-Бужи\";\"other\"\n\"3037954\";\"Ambazac\";\"main\"\n\"3037956\";\"Ambarès-et-Lagrave\";\"main\"\n\"3037956\";\"Ambares-et-Lagrave\";\"ascii\"\n\"3037956\";\"Amoares\";\"other\"\n\"3037956\";\"Amoarès\";\"other\"\n\"3037967\";\"Amanvillers\";\"main\"\n\"3037967\";\"Amanviller\";\"other\"\n\"3037969\";\"Amanlis\";\"main\"\n\"3037969\";\"Amanliz\";\"other\"\n\"3037971\";\"Amancy\";\"main\"\n\"3037984\";\"Alzonne\";\"main\"\n\"3038008\";\"Altorf\";\"main\"\n\"3038008\";\"Altdorf\";\"other\"\n\"3038008\";\"Алторф\";\"other\"\n\"3038012\";\"Altkirch\";\"main\"\n\"3038012\";\"Altkirkh\";\"other\"\n\"3038012\";\"Altkirsh\";\"other\"\n\"3038012\";\"Алткирх\";\"other\"\n\"3038012\";\"Алткирш\";\"other\"\n\"3038020\";\"Althen-des-Paluds\";\"main\"\n\"3038020\";\"Altan de Pali\";\"other\"\n\"3038020\";\"Althen\";\"other\"\n\"3038020\";\"Althen-les-Paluds\";\"other\"\n\"3038020\";\"Alton-des-Pali\";\"other\"\n\"3038020\";\"Алтан де Пали\";\"other\"\n\"3038020\";\"Алтон-дес-Пали\";\"other\"\n\"3038029\";\"Alsting\";\"main\"\n\"3038075\";\"Allouagne\";\"main\"\n\"3038080\";\"Allonzier-la-Caille\";\"main\"\n\"3038086\";\"Allonnes\";\"main\"\n\"3038086\";\"Allones\";\"other\"\n\"3038087\";\"Allonnes\";\"main\"\n\"3038088\";\"Allonne\";\"main\"\n\"3038099\";\"Allinges\";\"main\"\n\"3038106\";\"Allières-et-Risset\";\"main\"\n\"3038106\";\"Allieres-et-Risset\";\"ascii\"\n\"3038128\";\"Allex\";\"main\"\n\"3038132\";\"Allevard\";\"main\"\n\"3038142\";\"Allennes-les-Marais\";\"main\"\n\"3038142\";\"Allennes\";\"other\"\n\"3038156\";\"Alleins\";\"main\"\n\"3038157\";\"Allègre\";\"main\"\n\"3038157\";\"Allegre\";\"ascii\"\n\"3038159\";\"Allauch\";\"main\"\n\"3038160\";\"Allassac\";\"main\"\n\"3038169\";\"Allanche\";\"main\"\n\"3038169\";\"Alansh\";\"other\"\n\"3038169\";\"Allanches\";\"other\"\n\"3038169\";\"Alonsh\";\"other\"\n\"3038169\";\"Аланш\";\"other\"\n\"3038169\";\"Алонш\";\"other\"\n\"3038173\";\"Allan\";\"main\"\n\"3038176\";\"Allaire\";\"main\"\n\"3038176\";\"Alaer\";\"other\"\n\"3038185\";\"Alizay\";\"main\"\n\"3038186\";\"Alixan\";\"main\"\n\"3038190\";\"Alissas\";\"main\"\n\"3038197\";\"Alignan-du-Vent\";\"main\"\n\"3038197\";\"Alignan\";\"other\"\n\"3038204\";\"Algrange\";\"main\"\n\"3038205\";\"Algolsheim\";\"main\"\n\"3038205\";\"Algolshem\";\"other\"\n\"3038205\";\"Алголшем\";\"other\"\n\"3038213\";\"Alfortville\";\"main\"\n\"3038213\";\"Alfortvij\";\"other\"\n\"3038213\";\"Alforvil\";\"other\"\n\"3038213\";\"Алфорвил\";\"other\"\n\"3038213\";\"Алфортвиј\";\"other\"\n\"3038224\";\"Alès\";\"main\"\n\"3038224\";\"Ales\";\"ascii\"\n\"3038224\";\"Alais\";\"other\"\n\"3038224\";\"Ale\";\"other\"\n\"3038224\";\"Auxon\";\"other\"\n\"3038224\";\"Pont-Auzon\";\"other\"\n\"3038224\";\"Але\";\"other\"\n\"3038225\";\"Aléria\";\"main\"\n\"3038225\";\"Aleria\";\"ascii\"\n\"3038225\";\"Alerija\";\"other\"\n\"3038225\";\"Алерија\";\"other\"\n\"3038226\";\"Alénya\";\"main\"\n\"3038226\";\"Alenya\";\"ascii\"\n\"3038226\";\"Alenija\";\"other\"\n\"3038226\";\"Alenyà\";\"other\"\n\"3038226\";\"Аленија\";\"other\"\n\"3038230\";\"Alençon\";\"main\"\n\"3038230\";\"Alencon\";\"ascii\"\n\"3038230\";\"Alanson\";\"other\"\n\"3038230\";\"Alenson\";\"other\"\n\"3038230\";\"Alonson\";\"other\"\n\"3038230\";\"aranson\";\"other\"\n\"3038230\";\"Алансон\";\"other\"\n\"3038230\";\"Аленсон\";\"other\"\n\"3038230\";\"Алонсон\";\"other\"\n\"3038230\";\"アランソン\";\"other\"\n\"3038236\";\"Alby-sur-Chéran\";\"main\"\n\"3038236\";\"Alby-sur-Cheran\";\"ascii\"\n\"3038244\";\"Albitreccia\";\"main\"\n\"3038249\";\"Albigny-sur-Saône\";\"main\"\n\"3038249\";\"Albigny-sur-Saone\";\"ascii\"\n\"3038257\";\"Albias\";\"main\"\n\"3038261\";\"Albi\";\"main\"\n\"3038261\";\"Al'bi\";\"other\"\n\"3038261\";\"Albí\";\"other\"\n\"3038261\";\"arubi\";\"other\"\n\"3038261\";\"Алби\";\"other\"\n\"3038261\";\"Альби\";\"other\"\n\"3038261\";\"אלבי\";\"other\"\n\"3038261\";\"アルビ\";\"other\"\n\"3038266\";\"Albertville\";\"main\"\n\"3038266\";\"Al'bervil'\";\"other\"\n\"3038266\";\"Albervij\";\"other\"\n\"3038266\";\"Albervil\";\"other\"\n\"3038266\";\"Arbertvile\";\"other\"\n\"3038266\";\"Arbèrtvile\";\"other\"\n\"3038266\";\"Roc-Libre\";\"other\"\n\"3038266\";\"Valbeau\";\"other\"\n\"3038266\";\"aruberuvu~iru\";\"other\"\n\"3038266\";\"Албервил\";\"other\"\n\"3038266\";\"Албервиј\";\"other\"\n\"3038266\";\"Альбервиль\";\"other\"\n\"3038266\";\"Альбервіль\";\"other\"\n\"3038266\";\"アルベールヴィル\";\"other\"\n\"3038271\";\"Albert\";\"main\"\n\"3038276\";\"Albens\";\"main\"\n\"3038302\";\"Alba-la-Romaine\";\"main\"\n\"3038305\";\"Alata\";\"main\"\n\"3038305\";\"Алата\";\"other\"\n\"3038328\";\"Ajain\";\"main\"\n\"3038334\";\"Ajaccio\";\"main\"\n\"3038334\";\"Aiacciu\";\"other\"\n\"3038334\";\"Ajacciu\";\"other\"\n\"3038334\";\"Ajachcho\";\"other\"\n\"3038334\";\"Ajachio\";\"other\"\n\"3038334\";\"Azhaksio\";\"other\"\n\"3038334\";\"a ya ke xiao\";\"other\"\n\"3038334\";\"a ya ke xiu\";\"other\"\n\"3038334\";\"ajagsio\";\"other\"\n\"3038334\";\"ajakushio\";\"other\"\n\"3038334\";\"Ажаксио\";\"other\"\n\"3038334\";\"Аяччо\";\"other\"\n\"3038334\";\"Ајачио\";\"other\"\n\"3038334\";\"アジャクシオ\";\"other\"\n\"3038334\";\"阿雅克修\";\"other\"\n\"3038334\";\"阿雅克肖\";\"other\"\n\"3038334\";\"아작시오\";\"other\"\n\"3038341\";\"Aizenay\";\"main\"\n\"3038341\";\"Alzenay\";\"other\"\n\"3038349\";\"Aix-Noulette\";\"main\"\n\"3038349\";\"Aix\";\"other\"\n\"3038350\";\"Aix-les-Bains\";\"main\"\n\"3038350\";\"Eks le Ben\";\"other\"\n\"3038350\";\"Eks-les-Bjan\";\"other\"\n\"3038350\";\"ekusu=re=ban\";\"other\"\n\"3038350\";\"Екс ле Бен\";\"other\"\n\"3038350\";\"Екс-лес-Бјан\";\"other\"\n\"3038350\";\"エクス＝レ＝バン\";\"other\"\n\"3038352\";\"Aixe-sur-Vienne\";\"main\"\n\"3038352\";\"Aixe\";\"other\"\n\"3038352\";\"Aixe-sur-Vienna\";\"other\"\n\"3038354\";\"Aix-en-Provence\";\"main\"\n\"3038354\";\"Aikso Provenca\";\"other\"\n\"3038354\";\"Ais de Provenca\";\"other\"\n\"3038354\";\"Ais de Provença\";\"other\"\n\"3038354\";\"Aix\";\"other\"\n\"3038354\";\"Aquae Sextiae\";\"other\"\n\"3038354\";\"Ehks-an-Provans\";\"other\"\n\"3038354\";\"Eks an Provans\";\"other\"\n\"3038354\";\"egsangpeulobangseu\";\"other\"\n\"3038354\";\"ekusu=an=purovu~ansu\";\"other\"\n\"3038354\";\"Екс ан Прованс\";\"other\"\n\"3038354\";\"Экс-ан-Прованс\";\"other\"\n\"3038354\";\"エクス＝アン＝プロヴァンス\";\"other\"\n\"3038354\";\"엑상프로방스\";\"other\"\n\"3038355\";\"Aix-en-Othe\";\"main\"\n\"3038355\";\"Aix\";\"other\"\n\"3038368\";\"Aiton\";\"main\"\n\"3038381\";\"Aiserey\";\"main\"\n\"3038384\";\"Airvault\";\"main\"\n\"3038393\";\"Aire-sur-la-Lys\";\"main\"\n\"3038393\";\"Aire\";\"other\"\n\"3038393\";\"Arien\";\"other\"\n\"3038393\";\"Ariën\";\"other\"\n\"3038393\";\"Er-sur-l-Lis\";\"other\"\n\"3038393\";\"Morin-la-Montagne\";\"other\"\n\"3038393\";\"Ер-сур-л-Лис\";\"other\"\n\"3038400\";\"Airaines\";\"main\"\n\"3038419\";\"Ainay-le-Château\";\"main\"\n\"3038419\";\"Ainay-le-Chateau\";\"ascii\"\n\"3038419\";\"Ainay\";\"other\"\n\"3038419\";\"Ainay-sur-Sologne\";\"other\"\n\"3038426\";\"Aime\";\"main\"\n\"3038426\";\"Cime-Belle\";\"other\"\n\"3038426\";\"Les Antiquites\";\"other\"\n\"3038426\";\"Les Antiquités\";\"other\"\n\"3038427\";\"Aimargues\";\"main\"\n\"3038428\";\"Ailly-sur-Somme\";\"main\"\n\"3038428\";\"Ailly\";\"other\"\n\"3038429\";\"Ailly-sur-Noye\";\"main\"\n\"3038429\";\"Ailly\";\"other\"\n\"3038441\";\"Aillevillers-et-Lyaumont\";\"main\"\n\"3038441\";\"Aillevillers\";\"other\"\n\"3038441\";\"Ajavije-e-LJumon\";\"other\"\n\"3038441\";\"Ajvijers et Liomon\";\"other\"\n\"3038441\";\"Ајавије-е-Љумон\";\"other\"\n\"3038441\";\"Ајвијерс ет Лиомон\";\"other\"\n\"3038449\";\"Aillant-sur-Tholon\";\"main\"\n\"3038449\";\"Aillant\";\"other\"\n\"3038458\";\"Aigurande\";\"main\"\n\"3038458\";\"Agiron\";\"other\"\n\"3038458\";\"Egiran\";\"other\"\n\"3038458\";\"Агирон\";\"other\"\n\"3038458\";\"Егиран\";\"other\"\n\"3038466\";\"Aiguillon\";\"main\"\n\"3038466\";\"Agvijon\";\"other\"\n\"3038466\";\"Egijon\";\"other\"\n\"3038466\";\"Агвијон\";\"other\"\n\"3038466\";\"Егијон\";\"other\"\n\"3038488\";\"Aigues-Vives\";\"main\"\n\"3038493\";\"Aigues-Mortes\";\"main\"\n\"3038493\";\"Aiguees Mortes\";\"other\"\n\"3038493\";\"Aigües Mortes\";\"other\"\n\"3038493\";\"Egu-Mort\";\"other\"\n\"3038493\";\"Fort-Peletier\";\"other\"\n\"3038493\";\"Егу-Морт\";\"other\"\n\"3038498\";\"Aigueperse\";\"main\"\n\"3038498\";\"Egeper\";\"other\"\n\"3038498\";\"Егепер\";\"other\"\n\"3038502\";\"Aiguefonde\";\"main\"\n\"3038505\";\"Aigueblanche\";\"main\"\n\"3038505\";\"Blanches-Eaux\";\"other\"\n\"3038505\";\"Le Torrent\";\"other\"\n\"3038505\";\"Sur-Vignes\";\"other\"\n\"3038520\";\"Aigrefeuille-sur-Maine\";\"main\"\n\"3038520\";\"Aigrefeuille\";\"other\"\n\"3038520\";\"Kelenneg-ar-Mewan\";\"other\"\n\"3038524\";\"Aigre\";\"main\"\n\"3038535\";\"Aigné\";\"main\"\n\"3038535\";\"Aigne\";\"ascii\"\n\"3038546\";\"Aiglemont\";\"main\"\n\"3038546\";\"Ajglemon\";\"other\"\n\"3038546\";\"Eglmon\";\"other\"\n\"3038546\";\"Ајглемон\";\"other\"\n\"3038546\";\"Еглмон\";\"other\"\n\"3038555\";\"Aiffres\";\"main\"\n\"3038561\";\"Ahuy\";\"main\"\n\"3038562\";\"Ahun\";\"main\"\n\"3038563\";\"Ahuillé\";\"main\"\n\"3038563\";\"Ahuille\";\"ascii\"\n\"3038565\";\"Ahetze\";\"main\"\n\"3038591\";\"Agonac\";\"main\"\n\"3038591\";\"Agonak\";\"other\"\n\"3038591\";\"Агонак\";\"other\"\n\"3038592\";\"Agny\";\"main\"\n\"3038604\";\"Agnetz\";\"main\"\n\"3038611\";\"Agneaux\";\"main\"\n\"3038634\";\"Agen\";\"main\"\n\"3038634\";\"Azhan\";\"other\"\n\"3038634\";\"Azhon\";\"other\"\n\"3038634\";\"ajan\";\"other\"\n\"3038634\";\"Ажан\";\"other\"\n\"3038634\";\"Ажон\";\"other\"\n\"3038634\";\"アジャン\";\"other\"\n\"3038638\";\"Agde\";\"main\"\n\"3038638\";\"Agd\";\"other\"\n\"3038638\";\"Агд\";\"other\"\n\"3038653\";\"Afa\";\"main\"\n\"3038653\";\"Afà\";\"other\"\n\"3038653\";\"Афа\";\"other\"\n\"3038681\";\"Acquigny\";\"main\"\n\"3038681\";\"Akini\";\"other\"\n\"3038681\";\"Akuini\";\"other\"\n\"3038681\";\"Акињи\";\"other\"\n\"3038681\";\"Акуини\";\"other\"\n\"3038698\";\"Acigné\";\"main\"\n\"3038698\";\"Acigne\";\"ascii\"\n\"3038698\";\"Egineg\";\"other\"\n\"3038702\";\"Achiet-le-Grand\";\"main\"\n\"3038703\";\"Achicourt\";\"main\"\n\"3038711\";\"Achères-la-Forêt\";\"main\"\n\"3038711\";\"Acheres-la-Foret\";\"ascii\"\n\"3038711\";\"Acheres\";\"other\"\n\"3038711\";\"Achères\";\"other\"\n\"3038712\";\"Achères\";\"main\"\n\"3038712\";\"Acheres\";\"ascii\"\n\"3038715\";\"Achenheim\";\"main\"\n\"3038715\";\"Ashenkhajm\";\"other\"\n\"3038715\";\"Ashenkhem\";\"other\"\n\"3038715\";\"Ашенхајм\";\"other\"\n\"3038715\";\"Ашенхем\";\"other\"\n\"3038730\";\"Abzac\";\"main\"\n\"3038731\";\"Abscon\";\"main\"\n\"3038735\";\"Abrest\";\"main\"\n\"3038738\";\"Abreschviller\";\"main\"\n\"3038738\";\"Abreschwiller\";\"other\"\n\"3038738\";\"Abreshvije\";\"other\"\n\"3038738\";\"Абрешвије\";\"other\"\n\"3038744\";\"Abondant\";\"main\"\n\"3038745\";\"Abondance\";\"main\"\n\"3038754\";\"Ablon-sur-Seine\";\"main\"\n\"3038754\";\"Ablon\";\"other\"\n\"3038755\";\"Ablon\";\"main\"\n\"3038756\";\"Ablis\";\"main\"\n\"3038759\";\"Ableiges\";\"main\"\n\"3038763\";\"Ablain-Saint-Nazaire\";\"main\"\n\"3038763\";\"Abla-Sant-Nazer\";\"other\"\n\"3038763\";\"Ablain\";\"other\"\n\"3038763\";\"Ablain-la-Montagne\";\"other\"\n\"3038763\";\"Ablen Sen Nazer\";\"other\"\n\"3038763\";\"Абла-Сант-Назер\";\"other\"\n\"3038763\";\"Аблен Сен Назер\";\"other\"\n\"3038768\";\"Abilly\";\"main\"\n\"3038768\";\"Abiji\";\"other\"\n\"3038768\";\"Abili\";\"other\"\n\"3038768\";\"Abilly-sur-Claise\";\"other\"\n\"3038768\";\"Абили\";\"other\"\n\"3038768\";\"Абији\";\"other\"\n\"3038782\";\"Abeilhan\";\"main\"\n\"3038789\";\"Abbeville\";\"main\"\n\"3038789\";\"Abbatis villa\";\"other\"\n\"3038789\";\"Abbéville\";\"other\"\n\"3038789\";\"Abevil\";\"other\"\n\"3038789\";\"Abeville\";\"other\"\n\"3038789\";\"Abvij\";\"other\"\n\"3038789\";\"Abvil\";\"other\"\n\"3038789\";\"Abvil'\";\"other\"\n\"3038789\";\"Абвил\";\"other\"\n\"3038789\";\"Абвиль\";\"other\"\n\"3038789\";\"Абвиј\";\"other\"\n\"3038789\";\"Абевил\";\"other\"\n\"3038799\";\"Abbaretz\";\"main\"\n\"3038799\";\"Abarrez\";\"other\"\n\"3225344\";\"Lugon-et-l'Île-du-Carnay\";\"main\"\n\"3225344\";\"Lugon-et-l'Ile-du-Carnay\";\"ascii\"\n\"3232493\";\"Guidel-Plage\";\"main\"\n\"6354942\";\"Les Deux Alpes\";\"main\"\n\"6354942\";\"Le Dezal'p\";\"other\"\n\"6354942\";\"Ле Дезальп\";\"other\"\n\"6543862\";\"Villeneuve-d'Ascq\";\"main\"\n\"6544556\";\"Val Thorens\";\"main\"\n\"6544556\";\"Val'Torans\";\"other\"\n\"6544556\";\"Валь Торанс\";\"other\"\n\"6615509\";\"Castelmaurou\";\"main\"\n\"6615510\";\"Geneston\";\"main\"\n\"6615511\";\"Le Ban Saint-Martin\";\"main\"\n\"6615523\";\"Le Sequestre\";\"main\"\n\"6615536\";\"Les Ulis\";\"main\"\n\"6615537\";\"Carnoux-en-Provence\";\"main\"\n\"6615538\";\"Saint-Manvieu-Norrey\";\"main\"\n\"6615539\";\"Bourgoin-Jallieu\";\"main\"\n\"6619659\";\"Val-de-Reuil\";\"main\"\n\"6619659\";\"Le Vaudreuil-Ville Nouvelle\";\"other\"\n\"6620445\";\"Belle-Plagne\";\"main\"\n\"6620445\";\"Bel'-Plan'\";\"other\"\n\"6620445\";\"Бель-Плань\";\"other\"\n\"2396253\";\"Tchibanga\";\"main\"\n\"2396518\";\"Port-Gentil\";\"main\"\n\"2396518\";\"Port Gentil\";\"other\"\n\"2396518\";\"Port Zhantil\";\"other\"\n\"2396518\";\"Порт Жантил\";\"other\"\n\"2396646\";\"Oyem\";\"main\"\n\"2396853\";\"Omboué\";\"main\"\n\"2396853\";\"Omboue\";\"ascii\"\n\"2396853\";\"Fernan Vaz\";\"other\"\n\"2396853\";\"Fernand-Vaz\";\"other\"\n\"2396898\";\"Okondja\";\"main\"\n\"2396898\";\"Okandja\";\"other\"\n\"2396898\";\"Okondi\";\"other\"\n\"2397169\";\"Ntoum\";\"main\"\n\"2397614\";\"Ndendé\";\"main\"\n\"2397614\";\"Ndende\";\"ascii\"\n\"2397674\";\"Ndjolé\";\"main\"\n\"2397674\";\"Ndjole\";\"ascii\"\n\"2397674\";\"Njole\";\"other\"\n\"2397978\";\"Mounana\";\"main\"\n\"2398073\";\"Mouila\";\"main\"\n\"2398269\";\"Moanda\";\"main\"\n\"2398269\";\"Mouanda\";\"other\"\n\"2398269\";\"Mouenda\";\"other\"\n\"2398283\";\"Mitzic\";\"main\"\n\"2398283\";\"Midzik\";\"other\"\n\"2398283\";\"Mitsig\";\"other\"\n\"2398283\";\"Mitzick\";\"other\"\n\"2398283\";\"Mitzig\";\"other\"\n\"2398283\";\"Mitzik\";\"other\"\n\"2398430\";\"Mimongo\";\"main\"\n\"2398929\";\"Mbigou\";\"main\"\n\"2398929\";\"M'bigou\";\"other\"\n\"2398929\";\"M’bigou\";\"other\"\n\"2399001\";\"Mayumba\";\"main\"\n\"2399001\";\"Mavumba\";\"other\"\n\"2399001\";\"Mayoumba\";\"other\"\n\"2399371\";\"Makokou\";\"main\"\n\"2399371\";\"Makokou Fortifie\";\"other\"\n\"2399371\";\"Makokou Fortifié\";\"other\"\n\"2399371\";\"Makoku\";\"other\"\n\"2399371\";\"Макоку\";\"other\"\n\"2399697\";\"Libreville\";\"main\"\n\"2399697\";\"Librevil\";\"other\"\n\"2399697\";\"Librevil'\";\"other\"\n\"2399697\";\"Librevilis\";\"other\"\n\"2399697\";\"Liburvil\";\"other\"\n\"2399697\";\"Limprebil\";\"other\"\n\"2399697\";\"li bo wei er\";\"other\"\n\"2399697\";\"libeuleubil\";\"other\"\n\"2399697\";\"lybrwwyl\";\"other\"\n\"2399697\";\"lybrwyl\";\"other\"\n\"2399697\";\"Λιμπρεβίλ\";\"other\"\n\"2399697\";\"Либревиль\";\"other\"\n\"2399697\";\"Либървил\";\"other\"\n\"2399697\";\"Լիբրևիլ\";\"other\"\n\"2399697\";\"ליברוויל\";\"other\"\n\"2399697\";\"لیبرویل\";\"other\"\n\"2399697\";\"ሊብረቪል\";\"other\"\n\"2399697\";\"利伯维尔\";\"other\"\n\"2399697\";\"리브르빌\";\"other\"\n\"2399831\";\"Lékoni\";\"main\"\n\"2399831\";\"Lekoni\";\"ascii\"\n\"2399831\";\"Fortifie du Lekoni\";\"other\"\n\"2399831\";\"Fortifie du Liconi\";\"other\"\n\"2399831\";\"Fortifié du Liconi\";\"other\"\n\"2399831\";\"Fortifié du Lékoni\";\"other\"\n\"2399831\";\"Leconi\";\"other\"\n\"2399831\";\"Lecori\";\"other\"\n\"2399831\";\"Liconi\";\"other\"\n\"2399831\";\"Léconi\";\"other\"\n\"2399870\";\"Lastoursville\";\"main\"\n\"2399870\";\"Bonda\";\"other\"\n\"2399870\";\"Lastourville\";\"other\"\n\"2399888\";\"Lambaréné\";\"main\"\n\"2399888\";\"Lambarene\";\"ascii\"\n\"2399888\";\"Ламбарене\";\"other\"\n\"2399959\";\"Koulamoutou\";\"main\"\n\"2399959\";\"Koula Moubou\";\"other\"\n\"2399959\";\"Koula Mouta\";\"other\"\n\"2399959\";\"Koulamotou\";\"other\"\n\"2399959\";\"Kulamutu\";\"other\"\n\"2399959\";\"Куламуту\";\"other\"\n\"2400547\";\"Gamba\";\"main\"\n\"2400555\";\"Franceville\";\"main\"\n\"2400555\";\"Fransvil\";\"other\"\n\"2400555\";\"Франсвил\";\"other\"\n\"2400578\";\"Fougamou\";\"main\"\n\"2401357\";\"Cocobeach\";\"main\"\n\"2401357\";\"Cocoabeach\";\"other\"\n\"2401357\";\"Ukoko\";\"other\"\n\"2401495\";\"Booué\";\"main\"\n\"2401495\";\"Booue\";\"ascii\"\n\"2401495\";\"Boque\";\"other\"\n\"2401495\";\"Boue\";\"other\"\n\"2401495\";\"Boué\";\"other\"\n\"2401578\";\"Bitam\";\"main\"\n\"145971\";\"Xylotymbou\";\"main\"\n\"145971\";\"Ksilodimbo\";\"other\"\n\"145971\";\"Ksilodimbu\";\"other\"\n\"145971\";\"Ksilotimbu\";\"other\"\n\"145971\";\"Xylotymbo\";\"other\"\n\"145971\";\"Xylotymvou\";\"other\"\n\"146189\";\"Pergamos\";\"main\"\n\"146189\";\"Beyarmudu\";\"other\"\n\"146189\";\"Pergama\";\"other\"\n\"146189\";\"Пергамос\";\"other\"\n\"146451\";\"Kolossi\";\"main\"\n\"146451\";\"Burciu\";\"other\"\n\"146451\";\"Burclu\";\"other\"\n\"146451\";\"Burçiu\";\"other\"\n\"146451\";\"Burçlu\";\"other\"\n\"146451\";\"Kolos\";\"other\"\n\"146451\";\"Yunus\";\"other\"\n\"2633337\";\"Ystalyfera\";\"main\"\n\"2633337\";\"Ystalfera\";\"other\"\n\"2633352\";\"York\";\"main\"\n\"2633352\";\"Eboracum\";\"other\"\n\"2633352\";\"Efrog\";\"other\"\n\"2633352\";\"Everoui\";\"other\"\n\"2633352\";\"Jork\";\"other\"\n\"2633352\";\"Jorvik\";\"other\"\n\"2633352\";\"Jórvík\";\"other\"\n\"2633352\";\"yoku\";\"other\"\n\"2633352\";\"yue ke\";\"other\"\n\"2633352\";\"ywrq\";\"other\"\n\"2633352\";\"Évèroui\";\"other\"\n\"2633352\";\"Йорк\";\"other\"\n\"2633352\";\"יורק\";\"other\"\n\"2633352\";\"ヨーク\";\"other\"\n\"2633352\";\"約克\";\"other\"\n\"2633373\";\"Yeovil\";\"main\"\n\"2633373\";\"Jeovil'\";\"other\"\n\"2633373\";\"Йеовиль\";\"other\"\n\"2633394\";\"Yealmpton\";\"main\"\n\"2633399\";\"Yaxley\";\"main\"\n\"2633403\";\"Yatton\";\"main\"\n\"2633412\";\"Yarnton\";\"main\"\n\"2633445\";\"Wymondham\";\"main\"\n\"2633453\";\"Wylam\";\"main\"\n\"2633460\";\"Wye\";\"main\"\n\"2633474\";\"Wroxall\";\"main\"\n\"2633476\";\"Wroughton\";\"main\"\n\"2633481\";\"Writtle\";\"main\"\n\"2633482\";\"Wrington\";\"main\"\n\"2633485\";\"Wrexham\";\"main\"\n\"2633485\";\"Wrecsam\";\"other\"\n\"2633511\";\"Wotton-under-Edge\";\"main\"\n\"2633521\";\"Worthing\";\"main\"\n\"2633521\";\"washingu\";\"other\"\n\"2633521\";\"ワーシング\";\"other\"\n\"2633551\";\"Worksop\";\"main\"\n\"2633553\";\"Workington\";\"main\"\n\"2633563\";\"Worcester\";\"main\"\n\"2633563\";\"Caerwrangon\";\"other\"\n\"2633563\";\"Worcester UK\";\"other\"\n\"2633563\";\"vuster\";\"other\"\n\"2633563\";\"Вустер\";\"other\"\n\"2633571\";\"Wootton Bassett\";\"main\"\n\"2633571\";\"Wooton Bassett\";\"other\"\n\"2633575\";\"Wootton\";\"main\"\n\"2633577\";\"Wootton\";\"main\"\n\"2633577\";\"Wooton\";\"other\"\n\"2633595\";\"Woolpit\";\"main\"\n\"2633606\";\"Wooler\";\"main\"\n\"2633609\";\"Wool\";\"main\"\n\"2633618\";\"Woodstock\";\"main\"\n\"2633624\";\"Woodsetts\";\"main\"\n\"2633651\";\"Woodhall Spa\";\"main\"\n\"2633664\";\"Woodcote\";\"main\"\n\"2633671\";\"Woodbridge\";\"main\"\n\"2633681\";\"Wombwell\";\"main\"\n\"2633691\";\"Wolverhampton\";\"main\"\n\"2633691\";\"Uulvurkhjamptun\";\"other\"\n\"2633691\";\"wwlbrhmptwn\";\"other\"\n\"2633691\";\"Уулвърхямптън\";\"other\"\n\"2633691\";\"וולברהמפטון\";\"other\"\n\"2633692\";\"Wolston\";\"main\"\n\"2633694\";\"Wolsingham\";\"main\"\n\"2633707\";\"Woldingham\";\"main\"\n\"2633708\";\"Wokingham\";\"main\"\n\"2633708\";\"Uokingkhem\";\"other\"\n\"2633708\";\"Уокингхем\";\"other\"\n\"2633709\";\"Woking\";\"main\"\n\"2633709\";\"Uokinge\";\"other\"\n\"2633709\";\"Уокинге\";\"other\"\n\"2633710\";\"Woburn Sands\";\"main\"\n\"2633717\";\"Wivenhoe\";\"main\"\n\"2633717\";\"Winehoe\";\"other\"\n\"2633717\";\"Wyvenhoe\";\"other\"\n\"2633720\";\"Wiveliscombe\";\"main\"\n\"2633723\";\"Witton Gilbert\";\"main\"\n\"2633727\";\"Wittering\";\"main\"\n\"2633729\";\"Witney\";\"main\"\n\"2633729\";\"Uitni\";\"other\"\n\"2633729\";\"Уитни\";\"other\"\n\"2633744\";\"Withernsea\";\"main\"\n\"2633749\";\"Witham\";\"main\"\n\"2633751\";\"Witchford\";\"main\"\n\"2633765\";\"Wishaw\";\"main\"\n\"2633771\";\"Wisbech\";\"main\"\n\"2633771\";\"Vizbich\";\"other\"\n\"2633771\";\"Визбич\";\"other\"\n\"2633774\";\"Wirksworth\";\"main\"\n\"2633786\";\"Winterton\";\"main\"\n\"2633797\";\"Winterbourne\";\"main\"\n\"2633797\";\"Winterbourn\";\"other\"\n\"2633808\";\"Winslow\";\"main\"\n\"2633810\";\"Winsford\";\"main\"\n\"2633824\";\"Wingerworth\";\"main\"\n\"2633827\";\"Wingate\";\"main\"\n\"2633842\";\"Windsor\";\"main\"\n\"2633842\";\"New Windsor\";\"other\"\n\"2633842\";\"Vindzor\";\"other\"\n\"2633842\";\"Windlesora\";\"other\"\n\"2633842\";\"Windlesōra\";\"other\"\n\"2633842\";\"u~inza\";\"other\"\n\"2633842\";\"Виндзор\";\"other\"\n\"2633842\";\"ウィンザー\";\"other\"\n\"2633849\";\"Windlesham\";\"main\"\n\"2633851\";\"Windermere\";\"main\"\n\"2633858\";\"Winchester\";\"main\"\n\"2633858\";\"Uinchest\\\"r\";\"other\"\n\"2633858\";\"Vincester\";\"other\"\n\"2633858\";\"Vinchester\";\"other\"\n\"2633858\";\"u~inchesuta\";\"other\"\n\"2633858\";\"Винчестер\";\"other\"\n\"2633858\";\"Вінчестер\";\"other\"\n\"2633858\";\"Уинчестър\";\"other\"\n\"2633858\";\"ウィンチェスター\";\"other\"\n\"2633860\";\"Winchcomb\";\"main\"\n\"2633860\";\"Winchcombe\";\"other\"\n\"2633861\";\"Wincanton\";\"main\"\n\"2633878\";\"Wilshamstead\";\"main\"\n\"2633878\";\"Wilhamstead\";\"other\"\n\"2633878\";\"Willshamstead\";\"other\"\n\"2633878\";\"Wilstead\";\"other\"\n\"2633880\";\"Wilsden\";\"main\"\n\"2633883\";\"Wilmslow\";\"main\"\n\"2633894\";\"Williton\";\"main\"\n\"2633899\";\"Willingham\";\"main\"\n\"2633915\";\"Willaston\";\"main\"\n\"2633926\";\"Wilberfoss\";\"main\"\n\"2633933\";\"Wigton\";\"main\"\n\"2633936\";\"Wigston Magna\";\"main\"\n\"2633936\";\"Wigston\";\"other\"\n\"2633948\";\"Wigan\";\"main\"\n\"2633948\";\"Uigan\";\"other\"\n\"2633948\";\"wei gan\";\"other\"\n\"2633948\";\"Уиган\";\"other\"\n\"2633948\";\"维甘\";\"other\"\n\"2633954\";\"Widnes\";\"main\"\n\"2633966\";\"Wickwar\";\"main\"\n\"2633971\";\"Wickham Market\";\"main\"\n\"2633974\";\"Wickham\";\"main\"\n\"2633976\";\"Wickford\";\"main\"\n\"2633982\";\"Wick\";\"main\"\n\"2633997\";\"Whitworth\";\"main\"\n\"2633999\";\"Whitwell\";\"main\"\n\"2634010\";\"Whittlesey\";\"main\"\n\"2634015\";\"Whittington\";\"main\"\n\"2634021\";\"Whitstable\";\"main\"\n\"2634021\";\"Uitstabl\";\"other\"\n\"2634021\";\"Уитстабл\";\"other\"\n\"2634032\";\"Whitley Bay\";\"main\"\n\"2634032\";\"Whitley\";\"other\"\n\"2634091\";\"Whitehills\";\"main\"\n\"2634095\";\"Whitehead\";\"main\"\n\"2634096\";\"Whitehaven\";\"main\"\n\"2634103\";\"Whitefield\";\"main\"\n\"2634135\";\"Whitby\";\"main\"\n\"2634137\";\"Whitburn\";\"main\"\n\"2634138\";\"Whitburn\";\"main\"\n\"2634155\";\"Whickham\";\"main\"\n\"2634165\";\"Wheldrake\";\"main\"\n\"2634170\";\"Wheaton Aston\";\"main\"\n\"2634171\";\"Wheatley\";\"main\"\n\"2634172\";\"Wheathampstead\";\"main\"\n\"2634192\";\"Whalley\";\"main\"\n\"2634194\";\"Whaley Bridge\";\"main\"\n\"2634202\";\"Weymouth\";\"main\"\n\"2634217\";\"Wetherby\";\"main\"\n\"2634234\";\"West Wickham\";\"main\"\n\"2634234\";\"Vest-Uikkhehm\";\"other\"\n\"2634234\";\"Вест-Уикхэм\";\"other\"\n\"2634236\";\"West Wellow\";\"main\"\n\"2634288\";\"West Rainton\";\"main\"\n\"2634300\";\"Westonzoyland\";\"main\"\n\"2634307\";\"Weston Turville\";\"main\"\n\"2634308\";\"Weston-super-Mare\";\"main\"\n\"2634308\";\"Uest\\\"n sjup\\\"r Me\\\"r\";\"other\"\n\"2634308\";\"Uestun-Sjupur-Meur\";\"other\"\n\"2634308\";\"Weston super Mare\";\"other\"\n\"2634308\";\"Уестън сюпър Меър\";\"other\"\n\"2634308\";\"Уестън-Сюпър-Меър\";\"other\"\n\"2634317\";\"Westoning\";\"main\"\n\"2634345\";\"West Mersea\";\"main\"\n\"2634349\";\"West Malling\";\"main\"\n\"2634360\";\"West Linton\";\"main\"\n\"2634378\";\"West Kilbride\";\"main\"\n\"2634387\";\"Westhoughton\";\"main\"\n\"2634405\";\"West Hallam\";\"main\"\n\"2634413\";\"Westgate on Sea\";\"main\"\n\"2634413\";\"Vestgejt-on-Si\";\"other\"\n\"2634413\";\"Вестгейт-он-Си\";\"other\"\n\"2634418\";\"Westfield\";\"main\"\n\"2634434\";\"Westerham\";\"main\"\n\"2634447\";\"West End\";\"main\"\n\"2634451\";\"West Drayton\";\"main\"\n\"2634467\";\"West Cornforth\";\"main\"\n\"2634467\";\"Cornforth\";\"other\"\n\"2634477\";\"West Calder\";\"main\"\n\"2634491\";\"West Bromwich\";\"main\"\n\"2634493\";\"West Bridgford\";\"main\"\n\"2634493\";\"West Bridgeford\";\"other\"\n\"2634499\";\"West Bergholt\";\"main\"\n\"2634538\";\"Wendover\";\"main\"\n\"2634545\";\"Wemyss Bay\";\"main\"\n\"2634548\";\"Wembury\";\"main\"\n\"2634550\";\"Wem\";\"main\"\n\"2634552\";\"Welwyn Garden City\";\"main\"\n\"2634552\";\"Garden City\";\"other\"\n\"2634552\";\"Welwyn Garden\";\"other\"\n\"2634560\";\"Welshpool\";\"main\"\n\"2634560\";\"Y Trallwng\";\"other\"\n\"2634567\";\"Wells-next-the-Sea\";\"main\"\n\"2634567\";\"Wells\";\"other\"\n\"2634567\";\"Wells-on-Sea\";\"other\"\n\"2634569\";\"Wells\";\"main\"\n\"2634573\";\"Wellington\";\"main\"\n\"2634573\";\"Vellington\";\"other\"\n\"2634573\";\"Веллингтон\";\"other\"\n\"2634578\";\"Wellingborough\";\"main\"\n\"2634578\";\"Vellingboro\";\"other\"\n\"2634578\";\"Веллингборо\";\"other\"\n\"2634581\";\"Wellesbourne Mountford\";\"main\"\n\"2634603\";\"Weeting\";\"main\"\n\"2634623\";\"Weaverham\";\"main\"\n\"2634660\";\"Watton at Stone\";\"main\"\n\"2634660\";\"Watton\";\"other\"\n\"2634661\";\"Watton\";\"main\"\n\"2634663\";\"Wattisham\";\"main\"\n\"2634671\";\"Watlington\";\"main\"\n\"2634672\";\"Wath upon Dearne\";\"main\"\n\"2634672\";\"Wath\";\"other\"\n\"2634672\";\"Wath-on-Dearne\";\"other\"\n\"2634677\";\"Watford\";\"main\"\n\"2634677\";\"Uotford\";\"other\"\n\"2634677\";\"wtpwrd\";\"other\"\n\"2634677\";\"wwtpwrd\";\"other\"\n\"2634677\";\"Уотфорд\";\"other\"\n\"2634677\";\"ווטפורד\";\"other\"\n\"2634677\";\"וטפורד\";\"other\"\n\"2634682\";\"Water Orton\";\"main\"\n\"2634686\";\"Waterlooville\";\"main\"\n\"2634686\";\"Uoterluvil'\";\"other\"\n\"2634686\";\"Waterloo\";\"other\"\n\"2634686\";\"Уотерлувиль\";\"other\"\n\"2634690\";\"Wateringbury\";\"main\"\n\"2634701\";\"Waterbeach\";\"main\"\n\"2634704\";\"Watchet\";\"main\"\n\"2634715\";\"Washington\";\"main\"\n\"2634715\";\"Vashington\";\"other\"\n\"2634715\";\"Washington New Town\";\"other\"\n\"2634715\";\"Вашингтон\";\"other\"\n\"2634716\";\"Washington\";\"main\"\n\"2634725\";\"Warwick\";\"main\"\n\"2634725\";\"Uorik\";\"other\"\n\"2634725\";\"Уорик\";\"other\"\n\"2634727\";\"Warton\";\"main\"\n\"2634736\";\"Warsop\";\"main\"\n\"2634739\";\"Warrington\";\"main\"\n\"2634739\";\"Uorrington\";\"other\"\n\"2634739\";\"Уоррингтон\";\"other\"\n\"2634743\";\"Warrenpoint\";\"main\"\n\"2634755\";\"Warminster\";\"main\"\n\"2634768\";\"Waringstown\";\"main\"\n\"2634772\";\"Wargrave\";\"main\"\n\"2634772\";\"Wagrave\";\"other\"\n\"2634776\";\"Wareham\";\"main\"\n\"2634777\";\"Ware\";\"main\"\n\"2634782\";\"Wardle\";\"main\"\n\"2634796\";\"Warboys\";\"main\"\n\"2634815\";\"Wanborough\";\"main\"\n\"2634843\";\"Waltham Abbey\";\"main\"\n\"2634844\";\"Waltham\";\"main\"\n\"2634853\";\"Walsall\";\"main\"\n\"2634853\";\"Uolsol\";\"other\"\n\"2634853\";\"Wallsall\";\"other\"\n\"2634853\";\"Уолсол\";\"other\"\n\"2634864\";\"Wallsend\";\"main\"\n\"2634864\";\"Uolsend\";\"other\"\n\"2634864\";\"Wallsend-on-Tyne\";\"other\"\n\"2634864\";\"Уолсенд\";\"other\"\n\"2634869\";\"Wallingford\";\"main\"\n\"2634873\";\"Wallasey\";\"main\"\n\"2634873\";\"Uollasi\";\"other\"\n\"2634873\";\"Уолласи\";\"other\"\n\"2634879\";\"Walkington\";\"main\"\n\"2634887\";\"Walkden\";\"main\"\n\"2634894\";\"Wales\";\"main\"\n\"2634894\";\"Uehl's\";\"other\"\n\"2634894\";\"Уэльс\";\"other\"\n\"2634906\";\"Walberton\";\"main\"\n\"2634910\";\"Wakefield\";\"main\"\n\"2634914\";\"Wainfleet All Saints\";\"main\"\n\"2634914\";\"Wainfleet\";\"other\"\n\"2634918\";\"Wadhurst\";\"main\"\n\"2634920\";\"Wadebridge\";\"main\"\n\"2634923\";\"Waddington\";\"main\"\n\"2634925\";\"Waddesdon\";\"main\"\n\"2634966\";\"Victoria\";\"main\"\n\"2634975\";\"Verwood\";\"main\"\n\"2634985\";\"Ventnor\";\"main\"\n\"2634985\";\"Jentnor\";\"other\"\n\"2635022\";\"Valley\";\"main\"\n\"2635043\";\"Uttoxeter\";\"main\"\n\"2635052\";\"Usk\";\"main\"\n\"2635052\";\"Brynbuga\";\"other\"\n\"2635054\";\"Ushaw Moor\";\"main\"\n\"2635062\";\"Urmston\";\"main\"\n\"2635080\";\"Upton upon Severn\";\"main\"\n\"2635080\";\"Upton\";\"other\"\n\"2635080\";\"Upton-on-Severn\";\"other\"\n\"2635101\";\"Uppingham\";\"main\"\n\"2635183\";\"Ulverston\";\"main\"\n\"2635183\";\"Ulverstone\";\"other\"\n\"2635199\";\"Ullapool\";\"main\"\n\"2635199\";\"Allapul\";\"other\"\n\"2635199\";\"Ulapul\";\"other\"\n\"2635199\";\"Ulapulis\";\"other\"\n\"2635199\";\"Аллапул\";\"other\"\n\"2635234\";\"Uffculme\";\"main\"\n\"2635239\";\"Uddingston\";\"main\"\n\"2635243\";\"Uckfield\";\"main\"\n\"2635269\";\"Tynemouth\";\"main\"\n\"2635281\";\"Tyldesley\";\"main\"\n\"2635294\";\"Twyford\";\"main\"\n\"2635321\";\"Tuxford\";\"main\"\n\"2635329\";\"Turriff\";\"main\"\n\"2635412\";\"Truro\";\"main\"\n\"2635412\";\"Truru\";\"other\"\n\"2635412\";\"Труро\";\"other\"\n\"2635427\";\"Trowbridge\";\"main\"\n\"2635427\";\"Troubridzhe\";\"other\"\n\"2635427\";\"Троубридже\";\"other\"\n\"2635442\";\"Troon\";\"main\"\n\"2635459\";\"Tring\";\"main\"\n\"2635465\";\"Trimdon\";\"main\"\n\"2635540\";\"Treeton\";\"main\"\n\"2635547\";\"Tredegar\";\"main\"\n\"2635563\";\"Tranent\";\"main\"\n\"2635571\";\"Trafford Park\";\"main\"\n\"2635587\";\"Townhill\";\"main\"\n\"2635590\";\"Tow Law\";\"main\"\n\"2635597\";\"Towcester\";\"main\"\n\"2635603\";\"Totton\";\"main\"\n\"2635604\";\"Tottington\";\"main\"\n\"2635610\";\"Totnes\";\"main\"\n\"2635650\";\"Torquay\";\"main\"\n\"2635650\";\"Torcaium\";\"other\"\n\"2635650\";\"Torkej\";\"other\"\n\"2635650\";\"Torkvej\";\"other\"\n\"2635650\";\"toki\";\"other\"\n\"2635650\";\"Торквей\";\"other\"\n\"2635650\";\"Торкей\";\"other\"\n\"2635650\";\"トーキー\";\"other\"\n\"2635651\";\"Torpoint\";\"main\"\n\"2635652\";\"Torphins\";\"main\"\n\"2635680\";\"Topsham\";\"main\"\n\"2635689\";\"Tonyrefail\";\"main\"\n\"2635703\";\"Tonbridge\";\"main\"\n\"2635703\";\"Tonbridzh\";\"other\"\n\"2635703\";\"Тонбридж\";\"other\"\n\"2635720\";\"Tollesbury\";\"main\"\n\"2635742\";\"Todwick\";\"main\"\n\"2635744\";\"Todmorden\";\"main\"\n\"2635762\";\"Tiverton\";\"main\"\n\"2635774\";\"Tisbury\";\"main\"\n\"2635783\";\"Tiptree\";\"main\"\n\"2635829\";\"Tillicoultry\";\"main\"\n\"2635836\";\"Tilbury\";\"main\"\n\"2635836\";\"Tilbury Fort\";\"other\"\n\"2635851\";\"Tideswell\";\"main\"\n\"2635859\";\"Tickhill\";\"main\"\n\"2635864\";\"Tibshelf\";\"main\"\n\"2635877\";\"Thurston\";\"main\"\n\"2635881\";\"Thurso\";\"main\"\n\"2635927\";\"Three Legged Cross\";\"main\"\n\"2635937\";\"Thrapston\";\"main\"\n\"2635964\";\"Thornton Dale\";\"main\"\n\"2635964\";\"Thornton-le-Dale\";\"other\"\n\"2635969\";\"Thornton\";\"main\"\n\"2635978\";\"Thornley\";\"main\"\n\"2635981\";\"Thornhill\";\"main\"\n\"2635988\";\"Thorngumbald\";\"main\"\n\"2635988\";\"Thorngumbold\";\"other\"\n\"2636005\";\"Thornaby on Tees\";\"main\"\n\"2636005\";\"Thornaby\";\"other\"\n\"2636021\";\"Thirsk\";\"main\"\n\"2636031\";\"Theydon Bois\";\"main\"\n\"2636032\";\"Thetford\";\"main\"\n\"2636032\";\"Tetford\";\"other\"\n\"2636032\";\"Тетфорд\";\"other\"\n\"2636045\";\"Theale\";\"main\"\n\"2636047\";\"Thaxted\";\"main\"\n\"2636049\";\"Thatcham\";\"main\"\n\"2636066\";\"Thame\";\"main\"\n\"2636069\";\"Teynham\";\"main\"\n\"2636071\";\"Tewkesbury\";\"main\"\n\"2636080\";\"Tetney\";\"main\"\n\"2636083\";\"Tetbury\";\"main\"\n\"2636091\";\"Terrington Saint John\";\"main\"\n\"2636092\";\"Terrington Saint Clement\";\"main\"\n\"2636092\";\"Terrington\";\"other\"\n\"2636101\";\"Tenterden\";\"main\"\n\"2636104\";\"Tenby\";\"main\"\n\"2636104\";\"Dinbych-y-pysgod\";\"other\"\n\"2636104\";\"Dynbych y Pysgod\";\"other\"\n\"2636105\";\"Tenbury\";\"main\"\n\"2636105\";\"Tenbury Wells\";\"other\"\n\"2636113\";\"Templepatrick\";\"main\"\n\"2636132\";\"Teignmouth\";\"main\"\n\"2636138\";\"Teesside\";\"main\"\n\"2636138\";\"Teesside County Borough\";\"other\"\n\"2636158\";\"Tayport\";\"main\"\n\"2636158\";\"Ferry Port-on-Craig\";\"other\"\n\"2636174\";\"Tavistock\";\"main\"\n\"2636177\";\"Taunton\";\"main\"\n\"2636183\";\"Tattenhall\";\"main\"\n\"2636190\";\"Tarvin\";\"main\"\n\"2636209\";\"Tarporley\";\"main\"\n\"2636215\";\"Tarleton\";\"main\"\n\"2636231\";\"Tarbolton\";\"main\"\n\"2636241\";\"Tarbert\";\"main\"\n\"2636267\";\"Tanfield\";\"main\"\n\"2636271\";\"Tandragee\";\"main\"\n\"2636271\";\"Tanderagee\";\"other\"\n\"2636276\";\"Tamworth\";\"main\"\n\"2636315\";\"Takeley\";\"main\"\n\"2636321\";\"Tain\";\"main\"\n\"2636333\";\"Tadley\";\"main\"\n\"2636335\";\"Tadcaster\";\"main\"\n\"2636341\";\"Syston\";\"main\"\n\"2636389\";\"Swindon\";\"main\"\n\"2636389\";\"Svindon\";\"other\"\n\"2636389\";\"suu~indon\";\"other\"\n\"2636389\";\"Свиндон\";\"other\"\n\"2636389\";\"スウィンドン\";\"other\"\n\"2636394\";\"Swillington\";\"main\"\n\"2636408\";\"Sway\";\"main\"\n\"2636409\";\"Swavesey\";\"main\"\n\"2636432\";\"Swansea\";\"main\"\n\"2636432\";\"Abertawe\";\"other\"\n\"2636432\";\"Suonsi\";\"other\"\n\"2636432\";\"Suonzi\";\"other\"\n\"2636432\";\"si wang xi\";\"other\"\n\"2636432\";\"suu~onji\";\"other\"\n\"2636432\";\"Суонзи\";\"other\"\n\"2636432\";\"Суонси\";\"other\"\n\"2636432\";\"スウæォンジ\";\"other\"\n\"2636432\";\"スウォンジ\";\"other\"\n\"2636432\";\"斯旺西\";\"other\"\n\"2636433\";\"Swanscombe\";\"main\"\n\"2636438\";\"Swanmore\";\"main\"\n\"2636445\";\"Swanage\";\"main\"\n\"2636464\";\"Swaffham\";\"main\"\n\"2636465\";\"Swadlincote\";\"main\"\n\"2636484\";\"Sutton in Ashfield\";\"main\"\n\"2636485\";\"Sutton Courtenay\";\"main\"\n\"2636486\";\"Sutton Coldfield\";\"main\"\n\"2636487\";\"Sutton Bridge\";\"main\"\n\"2636488\";\"Sutton Bonington\";\"main\"\n\"2636503\";\"Sutton\";\"main\"\n\"2636503\";\"London Borough of Sutton\";\"other\"\n\"2636503\";\"Sutton keruelet\";\"other\"\n\"2636503\";\"Sutton kerület\";\"other\"\n\"2636531\";\"Sunderland\";\"main\"\n\"2636531\";\"Sanderlend\";\"other\"\n\"2636531\";\"Sanderlenda\";\"other\"\n\"2636531\";\"Сандерленд\";\"other\"\n\"2636534\";\"Sunbury\";\"main\"\n\"2636534\";\"Lower Sunbury\";\"other\"\n\"2636534\";\"Sunbury-on-Thames\";\"other\"\n\"2636566\";\"Sudbrooke\";\"main\"\n\"2636582\";\"Sturry\";\"main\"\n\"2636583\";\"Sturminster Newton\";\"main\"\n\"2636616\";\"Stroud\";\"main\"\n\"2636616\";\"Straud\";\"other\"\n\"2636616\";\"Страуд\";\"other\"\n\"2636619\";\"Strood\";\"main\"\n\"2636638\";\"Stromness\";\"main\"\n\"2636638\";\"Hamnavoe\";\"other\"\n\"2636638\";\"Straumnes\";\"other\"\n\"2636638\";\"Stromnes\";\"other\"\n\"2636638\";\"Strømnes\";\"other\"\n\"2636661\";\"Stretham\";\"main\"\n\"2636663\";\"Stretford\";\"main\"\n\"2636663\";\"Стретфорд\";\"other\"\n\"2636667\";\"Strensall\";\"main\"\n\"2636671\";\"Street\";\"main\"\n\"2636697\";\"Strathkinness\";\"main\"\n\"2636707\";\"Strathblane\";\"main\"\n\"2636710\";\"Strathaven\";\"main\"\n\"2636713\";\"Stratford-upon-Avon\";\"main\"\n\"2636713\";\"Stratford\";\"other\"\n\"2636713\";\"Stratford na Ejv\\\"n\";\"other\"\n\"2636713\";\"Stratford on Avon\";\"other\"\n\"2636713\";\"Stratford-na-Ehjvone\";\"other\"\n\"2636713\";\"Stratfordia super Avonam\";\"other\"\n\"2636713\";\"seuteulaespeodeu eopeon eibeon\";\"other\"\n\"2636713\";\"Стратфорд на Ейвън\";\"other\"\n\"2636713\";\"Стратфорд-на-Эйвоне\";\"other\"\n\"2636713\";\"ストラットフォード・アポン・エイヴォン\";\"other\"\n\"2636713\";\"스트랫퍼드 어펀 에이번\";\"other\"\n\"2636716\";\"Stratfield Mortimer\";\"main\"\n\"2636716\";\"Mortimer\";\"other\"\n\"2636719\";\"Stranraer\";\"main\"\n\"2636719\";\"Stanraer\";\"other\"\n\"2636744\";\"Strabane\";\"main\"\n\"2636748\";\"Stow on the Wold\";\"main\"\n\"2636749\";\"Stowmarket\";\"main\"\n\"2636769\";\"Stourbridge\";\"main\"\n\"2636769\";\"Stourbridzh\";\"other\"\n\"2636769\";\"Стоурбридж\";\"other\"\n\"2636782\";\"Stotfold\";\"main\"\n\"2636786\";\"Storrington\";\"main\"\n\"2636790\";\"Stornoway\";\"main\"\n\"2636790\";\"Steornabhagh\";\"other\"\n\"2636790\";\"Steòrnabhagh\";\"other\"\n\"2636790\";\"Stornovejus\";\"other\"\n\"2636790\";\"Stornovėjus\";\"other\"\n\"2636802\";\"Stoney Stanton\";\"main\"\n\"2636805\";\"Stonesfield\";\"main\"\n\"2636810\";\"Stonehouse\";\"main\"\n\"2636811\";\"Stonehouse\";\"main\"\n\"2636814\";\"Stonehaven\";\"main\"\n\"2636822\";\"Stone\";\"main\"\n\"2636824\";\"Stone\";\"main\"\n\"2636826\";\"Stone\";\"main\"\n\"2636830\";\"Stokesley\";\"main\"\n\"2636840\";\"Stoke Poges\";\"main\"\n\"2636841\";\"Stoke-on-Trent\";\"main\"\n\"2636841\";\"Stok-on-Trent\";\"other\"\n\"2636841\";\"Stoke\";\"other\"\n\"2636841\";\"Stoke-upon-Trent\";\"other\"\n\"2636841\";\"The Potteries\";\"other\"\n\"2636841\";\"Сток-он-Трент\";\"other\"\n\"2636844\";\"Stokenchurch\";\"main\"\n\"2636853\";\"Stoke Golding\";\"main\"\n\"2636854\";\"Stoke Gifford\";\"main\"\n\"2636876\";\"Stockton-on-Tees\";\"main\"\n\"2636876\";\"Stockton\";\"other\"\n\"2636876\";\"Stockton on Tees\";\"other\"\n\"2636876\";\"Stokton-on-Tis\";\"other\"\n\"2636876\";\"Стоктон-он-Тис\";\"other\"\n\"2636881\";\"Stocksbridge\";\"main\"\n\"2636882\";\"Stockport\";\"main\"\n\"2636882\";\"Stokport\";\"other\"\n\"2636882\";\"Стокпорт\";\"other\"\n\"2636896\";\"Stock\";\"main\"\n\"2636910\";\"Stirling\";\"main\"\n\"2636910\";\"Srivling\";\"other\"\n\"2636910\";\"Sruighle\";\"other\"\n\"2636910\";\"Sruighlea\";\"other\"\n\"2636910\";\"Sterling\";\"other\"\n\"2636910\";\"Stirlingum\";\"other\"\n\"2636910\";\"astyrlyng\";\"other\"\n\"2636910\";\"shi te ling\";\"other\"\n\"2636910\";\"Стерлинг\";\"other\"\n\"2636910\";\"استیرلینگ\";\"other\"\n\"2636910\";\"史特靈\";\"other\"\n\"2636914\";\"Stilton\";\"main\"\n\"2636928\";\"Steyning\";\"main\"\n\"2636930\";\"Stewkley\";\"main\"\n\"2636932\";\"Stewarton\";\"main\"\n\"2636938\";\"Stevenston\";\"main\"\n\"2636940\";\"Stevenage\";\"main\"\n\"2636940\";\"Stivenedzh\";\"other\"\n\"2636940\";\"Стивенедж\";\"other\"\n\"2636945\";\"Stepps\";\"main\"\n\"2636945\";\"Steps\";\"other\"\n\"2636963\";\"Steeton\";\"main\"\n\"2636967\";\"Steeple Claydon\";\"main\"\n\"2636967\";\"Claydon\";\"other\"\n\"2636995\";\"Staveley\";\"main\"\n\"2637008\";\"Starcross\";\"main\"\n\"2637016\";\"Staplehurst\";\"main\"\n\"2637034\";\"Stanwick\";\"main\"\n\"2637052\";\"Stansted\";\"main\"\n\"2637071\";\"Stanley\";\"main\"\n\"2637078\";\"Stanhope\";\"main\"\n\"2637088\";\"Stanford in the Vale\";\"main\"\n\"2637093\";\"Standon\";\"main\"\n\"2637104\";\"Stamford\";\"main\"\n\"2637106\";\"Stalybridge\";\"main\"\n\"2637106\";\"Stalibridzh\";\"other\"\n\"2637106\";\"Сталибридж\";\"other\"\n\"2637110\";\"Stalham\";\"main\"\n\"2637111\";\"Stalbridge\";\"main\"\n\"2637124\";\"Stainforth\";\"main\"\n\"2637126\";\"Staines\";\"main\"\n\"2637131\";\"Stainburn\";\"main\"\n\"2637142\";\"Stafford\";\"main\"\n\"2637142\";\"Staefford\";\"other\"\n\"2637142\";\"Stæfford\";\"other\"\n\"2637142\";\"Стаффорд\";\"other\"\n\"2637189\";\"Springside\";\"main\"\n\"2637214\";\"Spixworth\";\"main\"\n\"2637224\";\"Spilsby\";\"main\"\n\"2637235\";\"Spennymoor\";\"main\"\n\"2637265\";\"Spalding\";\"main\"\n\"2637277\";\"Southwold\";\"main\"\n\"2637287\";\"Southwick\";\"main\"\n\"2637296\";\"Southwell\";\"main\"\n\"2637298\";\"Southwater\";\"main\"\n\"2637310\";\"South Tidworth\";\"main\"\n\"2637329\";\"South Shields\";\"main\"\n\"2637329\";\"Shields\";\"other\"\n\"2637343\";\"Southport\";\"main\"\n\"2637347\";\"South Petherton\";\"main\"\n\"2637350\";\"Southowram\";\"main\"\n\"2637355\";\"South Ockendon\";\"main\"\n\"2637355\";\"South Ockedon\";\"other\"\n\"2637356\";\"South Nutfield\";\"main\"\n\"2637373\";\"South Molton\";\"main\"\n\"2637374\";\"Southminster\";\"main\"\n\"2637382\";\"South Littleton\";\"main\"\n\"2637382\";\"Littleton\";\"other\"\n\"2637405\";\"South Hetton\";\"main\"\n\"2637433\";\"Southend-on-Sea\";\"main\"\n\"2637433\";\"Sautend-on-Si\";\"other\"\n\"2637433\";\"Southend\";\"other\"\n\"2637433\";\"Саутенд-он-Си\";\"other\"\n\"2637435\";\"South Elmsall\";\"main\"\n\"2637450\";\"South Collingham\";\"main\"\n\"2637461\";\"South Cave\";\"main\"\n\"2637471\";\"South Brent\";\"main\"\n\"2637471\";\"Brent\";\"other\"\n\"2637476\";\"South Benfleet\";\"main\"\n\"2637476\";\"Benfleet\";\"other\"\n\"2637487\";\"Southampton\";\"main\"\n\"2637487\";\"Hantonne\";\"other\"\n\"2637487\";\"Sautgempton\";\"other\"\n\"2637487\";\"Sautkhempt\\\"n\";\"other\"\n\"2637487\";\"sausuhanputon\";\"other\"\n\"2637487\";\"Саутгемптон\";\"other\"\n\"2637487\";\"Саутхемптън\";\"other\"\n\"2637487\";\"サウスハンプトン\";\"other\"\n\"2637488\";\"Southam\";\"main\"\n\"2637526\";\"Somerton\";\"main\"\n\"2637528\";\"Somersham\";\"main\"\n\"2637546\";\"Solihull\";\"main\"\n\"2637554\";\"Soham\";\"main\"\n\"2637571\";\"Snodland\";\"main\"\n\"2637580\";\"Snettisham\";\"main\"\n\"2637599\";\"Snaith\";\"main\"\n\"2637627\";\"Slough\";\"main\"\n\"2637627\";\"Slau\";\"other\"\n\"2637627\";\"Слау\";\"other\"\n\"2637652\";\"Sleights\";\"main\"\n\"2637659\";\"Sleaford\";\"main\"\n\"2637670\";\"Slamannan\";\"main\"\n\"2637702\";\"Skipton\";\"main\"\n\"2637748\";\"Skelton\";\"main\"\n\"2637751\";\"Skelmorlie\";\"main\"\n\"2637752\";\"Skelmersdale\";\"main\"\n\"2637756\";\"Skellingthorpe\";\"main\"\n\"2637762\";\"Skegness\";\"main\"\n\"2637802\";\"Sittingbourne\";\"main\"\n\"2637809\";\"Sion Mills\";\"main\"\n\"2637809\";\"Sion Mill\";\"other\"\n\"2637827\";\"Silverstone\";\"main\"\n\"2637832\";\"Silsoe\";\"main\"\n\"2637833\";\"Silsden\";\"main\"\n\"2637836\";\"Silloth\";\"main\"\n\"2637841\";\"Silkstone\";\"main\"\n\"2637845\";\"Sileby\";\"main\"\n\"2637853\";\"Sidmouth\";\"main\"\n\"2637871\";\"Sible Hedingham\";\"main\"\n\"2637878\";\"Shurdington\";\"main\"\n\"2637889\";\"Shrivenham\";\"main\"\n\"2637890\";\"Shrewton\";\"main\"\n\"2637891\";\"Shrewsbury\";\"main\"\n\"2637891\";\"Amwythig\";\"other\"\n\"2637891\";\"Shrjusburi\";\"other\"\n\"2637891\";\"Shrusberi\";\"other\"\n\"2637891\";\"Шрусбери\";\"other\"\n\"2637891\";\"Шрюсбъри\";\"other\"\n\"2637906\";\"Shotley Gate\";\"main\"\n\"2637917\";\"Shoreham\";\"main\"\n\"2637936\";\"Shirland\";\"main\"\n\"2637941\";\"Shirebrook\";\"main\"\n\"2637948\";\"Shipton under Wychwood\";\"main\"\n\"2637948\";\"Shipton\";\"other\"\n\"2637954\";\"Shipston on Stour\";\"main\"\n\"2637958\";\"Shipley\";\"main\"\n\"2637962\";\"Shipdham\";\"main\"\n\"2637983\";\"Shildon\";\"main\"\n\"2637985\";\"Shifnal\";\"main\"\n\"2638009\";\"Shevington\";\"main\"\n\"2638019\";\"Sheringham\";\"main\"\n\"2638027\";\"Sherburn in Elmet\";\"main\"\n\"2638027\";\"Sherburn\";\"other\"\n\"2638033\";\"Sherborne\";\"main\"\n\"2638033\";\"Sherbourne\";\"other\"\n\"2638035\";\"Shepton Mallet\";\"main\"\n\"2638035\";\"Shepun\";\"other\"\n\"2638036\";\"Shepshed\";\"main\"\n\"2638036\";\"Sheepshed\";\"other\"\n\"2638039\";\"Shepperton\";\"main\"\n\"2638041\";\"Shepherdswell\";\"main\"\n\"2638041\";\"Sibertswold\";\"other\"\n\"2638047\";\"Shenstone\";\"main\"\n\"2638051\";\"Shenley AV\";\"main\"\n\"2638065\";\"Shelley\";\"main\"\n\"2638077\";\"Sheffield\";\"main\"\n\"2638077\";\"Sefilda\";\"other\"\n\"2638077\";\"Sefildas\";\"other\"\n\"2638077\";\"Sheffild\";\"other\"\n\"2638077\";\"Shefild\";\"other\"\n\"2638077\";\"she fei er de\";\"other\"\n\"2638077\";\"shefirudo\";\"other\"\n\"2638077\";\"Šefildas\";\"other\"\n\"2638077\";\"Šefīlda\";\"other\"\n\"2638077\";\"Шефилд\";\"other\"\n\"2638077\";\"Шеффилд\";\"other\"\n\"2638077\";\"シェフィールド\";\"other\"\n\"2638077\";\"设菲尔德\";\"other\"\n\"2638081\";\"Sheerness\";\"main\"\n\"2638111\";\"Shawbury\";\"main\"\n\"2638157\";\"Shaftesbury\";\"main\"\n\"2638185\";\"Seven Sisters\";\"main\"\n\"2638187\";\"Sevenoaks\";\"main\"\n\"2638192\";\"Settle\";\"main\"\n\"2638207\";\"Send\";\"main\"\n\"2638219\";\"Selsey\";\"main\"\n\"2638229\";\"Selkirk\";\"main\"\n\"2638235\";\"Selby\";\"main\"\n\"2638248\";\"Seghill\";\"main\"\n\"2638259\";\"Sedgefield\";\"main\"\n\"2638264\";\"Seaview\";\"main\"\n\"2638273\";\"Seaton Delaval\";\"main\"\n\"2638277\";\"Seaton\";\"main\"\n\"2638282\";\"Seascale\";\"main\"\n\"2638302\";\"Seaham\";\"main\"\n\"2638302\";\"Seaham Harbour\";\"other\"\n\"2638302\";\"Sikhem\";\"other\"\n\"2638302\";\"Сихем\";\"other\"\n\"2638311\";\"Seaford\";\"main\"\n\"2638312\";\"Seafield\";\"main\"\n\"2638324\";\"Scunthorpe\";\"main\"\n\"2638324\";\"Skantorpe\";\"other\"\n\"2638324\";\"si ken suo pu\";\"other\"\n\"2638324\";\"Сканторпе\";\"other\"\n\"2638324\";\"斯肯索普\";\"other\"\n\"2638348\";\"Scotter\";\"main\"\n\"2638365\";\"Scotby\";\"main\"\n\"2638386\";\"Scholes\";\"main\"\n\"2638391\";\"Scawby\";\"main\"\n\"2638419\";\"Scarborough\";\"main\"\n\"2638419\";\"Skarb\\\"ro\";\"other\"\n\"2638419\";\"Скарбъро\";\"other\"\n\"2638448\";\"Scalby\";\"main\"\n\"2638464\";\"Saxmundham\";\"main\"\n\"2638467\";\"Saxilby\";\"main\"\n\"2638473\";\"Sawtry\";\"main\"\n\"2638474\";\"Sawston\";\"main\"\n\"2638490\";\"Saundersfoot\";\"main\"\n\"2638495\";\"Saughall\";\"main\"\n\"2638495\";\"Great Saughall\";\"other\"\n\"2638515\";\"Sapcote\";\"main\"\n\"2638520\";\"Sanquhar\";\"main\"\n\"2638530\";\"Sandy\";\"main\"\n\"2638534\";\"Sandwick\";\"main\"\n\"2638542\";\"Sandwich\";\"main\"\n\"2638568\";\"Sandown\";\"main\"\n\"2638593\";\"Sandford\";\"main\"\n\"2638600\";\"Sandbach\";\"main\"\n\"2638639\";\"Saltford\";\"main\"\n\"2638648\";\"Saltcoats\";\"main\"\n\"2638650\";\"Saltburn-by-the-Sea\";\"main\"\n\"2638650\";\"Saltburn\";\"other\"\n\"2638651\";\"Saltash\";\"main\"\n\"2638664\";\"Salisbury\";\"main\"\n\"2638664\";\"New Sarum\";\"other\"\n\"2638664\";\"Solsb\\\"ri\";\"other\"\n\"2638664\";\"Solsberi\";\"other\"\n\"2638664\";\"soruzuberi\";\"other\"\n\"2638664\";\"swlsbry\";\"other\"\n\"2638664\";\"Солсбери\";\"other\"\n\"2638664\";\"Солсбъри\";\"other\"\n\"2638664\";\"סולסברי\";\"other\"\n\"2638664\";\"ソールズベリー\";\"other\"\n\"2638665\";\"Saline\";\"main\"\n\"2638669\";\"Salfords\";\"main\"\n\"2638671\";\"Salford\";\"main\"\n\"2638678\";\"Sale\";\"main\"\n\"2638682\";\"Salcombe\";\"main\"\n\"2638698\";\"Saint Stephen\";\"main\"\n\"2638708\";\"Saint Osyth\";\"main\"\n\"2638717\";\"Saint Neots\";\"main\"\n\"2638717\";\"St Neots\";\"other\"\n\"2638719\";\"Saint Monance\";\"main\"\n\"2638719\";\"Saint Monans\";\"other\"\n\"2638757\";\"Saint Leonards\";\"main\"\n\"2638767\";\"Saint Just\";\"main\"\n\"2638778\";\"St Ives\";\"main\"\n\"2638785\";\"Saint Helens\";\"main\"\n\"2638785\";\"Helens\";\"other\"\n\"2638785\";\"Sent-Khelens\";\"other\"\n\"2638785\";\"St Helens\";\"other\"\n\"2638785\";\"St. Helens\";\"other\"\n\"2638785\";\"Сент-Хеленс\";\"other\"\n\"2638800\";\"Saintfield\";\"main\"\n\"2638817\";\"Saint Dennis\";\"main\"\n\"2638817\";\"Saint Denis\";\"other\"\n\"2638822\";\"Saint David’s\";\"main\"\n\"2638822\";\"Saint David's\";\"ascii\"\n\"2638822\";\"Sent-Dehvidz\";\"other\"\n\"2638822\";\"Tyddewi\";\"other\"\n\"2638822\";\"Сент-Дэвидз\";\"other\"\n\"2638828\";\"Saint Columb Major\";\"main\"\n\"2638828\";\"Saint Columb\";\"other\"\n\"2638833\";\"Saint Clears\";\"main\"\n\"2638833\";\"Sancler\";\"other\"\n\"2638833\";\"Sanclêr\";\"other\"\n\"2638848\";\"Saint Boswells\";\"main\"\n\"2638853\";\"Saint Austell\";\"main\"\n\"2638853\";\"St Austell\";\"other\"\n\"2638855\";\"Saint Asaph\";\"main\"\n\"2638855\";\"Llanelwy\";\"other\"\n\"2638864\";\"Saint Andrews\";\"main\"\n\"2638864\";\"Sejnt Andrjus\";\"other\"\n\"2638864\";\"Sent-Ehndrjus\";\"other\"\n\"2638864\";\"St Andrews\";\"other\"\n\"2638864\";\"St. Andrews\";\"other\"\n\"2638864\";\"Сейнт Андрюс\";\"other\"\n\"2638864\";\"Сент-Эндрюс\";\"other\"\n\"2638864\";\"セント・アンドリュース\";\"other\"\n\"2638867\";\"Saint Albans\";\"main\"\n\"2638867\";\"Sent-Ehlbans\";\"other\"\n\"2638867\";\"Sent-Olbans\";\"other\"\n\"2638867\";\"St Albans\";\"other\"\n\"2638867\";\"St. Albans\";\"other\"\n\"2638867\";\"Сент-Олбанс\";\"other\"\n\"2638867\";\"Сент-Элбанс\";\"other\"\n\"2638870\";\"Saint Agnes\";\"main\"\n\"2638878\";\"Saffron Walden\";\"main\"\n\"2638888\";\"Sacriston\";\"main\"\n\"2638892\";\"Ryton on Dunsmore\";\"main\"\n\"2638894\";\"Ryton\";\"main\"\n\"2638909\";\"Rye\";\"main\"\n\"2638911\";\"Ryde\";\"main\"\n\"2638925\";\"Rhuthun\";\"main\"\n\"2638925\";\"Ruthin\";\"other\"\n\"2638938\";\"Ruskington\";\"main\"\n\"2638938\";\"Buskington\";\"other\"\n\"2638946\";\"Rushden\";\"main\"\n\"2638960\";\"Runcorn\";\"main\"\n\"2638977\";\"Rugeley\";\"main\"\n\"2638978\";\"Rugby\";\"main\"\n\"2638992\";\"Rudgwick\";\"main\"\n\"2638995\";\"Ruddington\";\"main\"\n\"2639014\";\"Ruabon\";\"main\"\n\"2639015\";\"Royton\";\"main\"\n\"2639017\";\"Royston\";\"main\"\n\"2639018\";\"Royston\";\"main\"\n\"2639020\";\"Roydon\";\"main\"\n\"2639022\";\"Royal Tunbridge Wells\";\"main\"\n\"2639022\";\"Tunbridge Wells\";\"other\"\n\"2639022\";\"Turnbridge Wells\";\"other\"\n\"2639042\";\"Rowlands Gill\";\"main\"\n\"2639045\";\"Rowhedge\";\"main\"\n\"2639069\";\"Rottingdean\";\"main\"\n\"2639074\";\"Rothwell\";\"main\"\n\"2639074\";\"Rowell\";\"other\"\n\"2639083\";\"Rothesay\";\"main\"\n\"2639083\";\"Baile Bhoid\";\"other\"\n\"2639083\";\"Baile Bhòid\";\"other\"\n\"2639083\";\"Bute\";\"other\"\n\"2639086\";\"Rothes\";\"main\"\n\"2639093\";\"Rotherham\";\"main\"\n\"2639093\";\"Roterem\";\"other\"\n\"2639093\";\"Rotherdam\";\"other\"\n\"2639093\";\"Ротерем\";\"other\"\n\"2639101\";\"Rothbury\";\"main\"\n\"2639104\";\"Rosyth\";\"main\"\n\"2639106\";\"Rostrevor\";\"main\"\n\"2639106\";\"Rosstrevor\";\"other\"\n\"2639110\";\"Ross on Wye\";\"main\"\n\"2639110\";\"Ross\";\"other\"\n\"2639123\";\"Rossett\";\"main\"\n\"2639123\";\"Rosset\";\"other\"\n\"2639144\";\"Rosehearty\";\"main\"\n\"2639189\";\"Romsey\";\"main\"\n\"2639239\";\"Rode Heath\";\"main\"\n\"2639265\";\"Rochford\";\"main\"\n\"2639268\";\"Rochester\";\"main\"\n\"2639268\";\"Rotsester\";\"other\"\n\"2639268\";\"Ρότσεστερ\";\"other\"\n\"2639268\";\"Рочестер\";\"other\"\n\"2639270\";\"Roche\";\"main\"\n\"2639272\";\"Rochdale\";\"main\"\n\"2639272\";\"Rochdejl\";\"other\"\n\"2639272\";\"Рочдейл\";\"other\"\n\"2639282\";\"Robertsbridge\";\"main\"\n\"2639296\";\"Roade\";\"main\"\n\"2639310\";\"Rishton\";\"main\"\n\"2639317\";\"Risca\";\"main\"\n\"2639320\";\"Ripponden\";\"main\"\n\"2639323\";\"Ripon\";\"main\"\n\"2639323\";\"Рипон\";\"other\"\n\"2639325\";\"Ripley\";\"main\"\n\"2639326\";\"Ripley\";\"main\"\n\"2639334\";\"Ringwood\";\"main\"\n\"2639343\";\"Ringmer\";\"main\"\n\"2639381\";\"Rickmansworth\";\"main\"\n\"2639389\";\"Richmond\";\"main\"\n\"2639393\";\"Riccall\";\"main\"\n\"2639407\";\"Rhymney\";\"main\"\n\"2639409\";\"Rhyl\";\"main\"\n\"2639409\";\"Ril\";\"other\"\n\"2639409\";\"Y Rhyl\";\"other\"\n\"2639409\";\"Рил\";\"other\"\n\"2639425\";\"Rhuddlan\";\"main\"\n\"2639425\";\"Rhyddlan\";\"other\"\n\"2639426\";\"Rhu\";\"main\"\n\"2639426\";\"Row\";\"other\"\n\"2639436\";\"Rhosllanerchrugog\";\"main\"\n\"2639436\";\"Rhos\";\"other\"\n\"2639444\";\"Rhoose\";\"main\"\n\"2639447\";\"Rhondda\";\"main\"\n\"2639447\";\"Y Rhondda\";\"other\"\n\"2639470\";\"Rhayader\";\"main\"\n\"2639482\";\"Resolven\";\"main\"\n\"2639489\";\"Repton\";\"main\"\n\"2639492\";\"Renton\";\"main\"\n\"2639495\";\"Renfrew\";\"main\"\n\"2639506\";\"Reigate\";\"main\"\n\"2639506\";\"Rajgejt\";\"other\"\n\"2639506\";\"Райгейт\";\"other\"\n\"2639511\";\"Reepham\";\"main\"\n\"2639520\";\"Reed\";\"main\"\n\"2639536\";\"Redlynch\";\"main\"\n\"2639545\";\"Redhill\";\"main\"\n\"2639557\";\"Redditch\";\"main\"\n\"2639557\";\"Radditch\";\"other\"\n\"2639557\";\"reditchi\";\"other\"\n\"2639557\";\"Реддитч\";\"other\"\n\"2639557\";\"レディッチ\";\"other\"\n\"2639563\";\"Redcar\";\"main\"\n\"2639567\";\"Redbourn\";\"main\"\n\"2639577\";\"Reading\";\"main\"\n\"2639577\";\"Reding\";\"other\"\n\"2639577\";\"Рединг\";\"other\"\n\"2639582\";\"Rayne\";\"main\"\n\"2639586\";\"Rawtenstall\";\"main\"\n\"2639588\";\"Rawmarsh\";\"main\"\n\"2639600\";\"Raunds\";\"main\"\n\"2639615\";\"Ratho\";\"main\"\n\"2639621\";\"Rathfriland\";\"main\"\n\"2639621\";\"Rathfryland\";\"other\"\n\"2639653\";\"Randalstown\";\"main\"\n\"2639660\";\"Ramsgate\";\"main\"\n\"2639660\";\"Ramsgejt\";\"other\"\n\"2639660\";\"Рамсгейт\";\"other\"\n\"2639664\";\"Ramsey\";\"main\"\n\"2639667\";\"Ramsbury\";\"main\"\n\"2639668\";\"Ramsbottom\";\"main\"\n\"2639687\";\"Rainworth\";\"main\"\n\"2639693\";\"Rainford\";\"main\"\n\"2639710\";\"Radyr\";\"main\"\n\"2639710\";\"Radir\";\"other\"\n\"2639719\";\"Radley\";\"main\"\n\"2639720\";\"Radlett\";\"main\"\n\"2639727\";\"Radcliffe on Trent\";\"main\"\n\"2639727\";\"Radcliffe\";\"other\"\n\"2639728\";\"Radcliffe\";\"main\"\n\"2639755\";\"Quorndon\";\"main\"\n\"2639779\";\"Queniborough\";\"main\"\n\"2639779\";\"Queniboro\";\"other\"\n\"2639788\";\"Queensferry\";\"main\"\n\"2639788\";\"South Queensferry\";\"other\"\n\"2639792\";\"Queensbury\";\"main\"\n\"2639796\";\"Queenborough\";\"main\"\n\"2639823\";\"Pyle\";\"main\"\n\"2639828\";\"Pwllheli\";\"main\"\n\"2639828\";\"Pwllbeli\";\"other\"\n\"2639844\";\"Puriton\";\"main\"\n\"2639864\";\"Pulborough\";\"main\"\n\"2639864\";\"Pulborough village hall\";\"other\"\n\"2639866\";\"Pudsey\";\"main\"\n\"2639874\";\"Prudhoe\";\"main\"\n\"2639880\";\"Probus\";\"main\"\n\"2639888\";\"Princes Risborough\";\"main\"\n\"2639896\";\"Prestwick\";\"main\"\n\"2639897\";\"Prestwich\";\"main\"\n\"2639902\";\"Prestonpans\";\"main\"\n\"2639912\";\"Preston\";\"main\"\n\"2639912\";\"prstwn\";\"other\"\n\"2639912\";\"pu lei si dun\";\"other\"\n\"2639912\";\"Престон\";\"other\"\n\"2639912\";\"פרסטון\";\"other\"\n\"2639912\";\"普雷斯顿\";\"other\"\n\"2639924\";\"Presteign\";\"main\"\n\"2639924\";\"Presteigh\";\"other\"\n\"2639924\";\"Presteigne\";\"other\"\n\"2639925\";\"Prestbury\";\"main\"\n\"2639925\";\"Prestburg\";\"other\"\n\"2639926\";\"Prestatyn\";\"main\"\n\"2639928\";\"Prescot\";\"main\"\n\"2639928\";\"Prescott\";\"other\"\n\"2639934\";\"Preesall\";\"main\"\n\"2639941\";\"Poynton\";\"main\"\n\"2639958\";\"Poulton le Fylde\";\"main\"\n\"2639958\";\"Poulton\";\"other\"\n\"2639964\";\"Potton\";\"main\"\n\"2639970\";\"Potters Bar\";\"main\"\n\"2639991\";\"Portstewart\";\"main\"\n\"2639992\";\"Portsoy\";\"main\"\n\"2639996\";\"Portsmouth\";\"main\"\n\"2639996\";\"Porchemue\";\"other\"\n\"2639996\";\"Porchémue\";\"other\"\n\"2639996\";\"Portsmut\";\"other\"\n\"2639996\";\"potsumasu\";\"other\"\n\"2639996\";\"pu ci mao si\";\"other\"\n\"2639996\";\"Портсмут\";\"other\"\n\"2639996\";\"ポーツマス\";\"other\"\n\"2639996\";\"朴次茅斯\";\"other\"\n\"2639998\";\"Portslade\";\"main\"\n\"2640004\";\"Portrush\";\"main\"\n\"2640006\";\"Portree\";\"main\"\n\"2640030\";\"Portlethen\";\"main\"\n\"2640035\";\"Portknockie\";\"main\"\n\"2640037\";\"Portishead\";\"main\"\n\"2640044\";\"Portscatho\";\"main\"\n\"2640045\";\"Porthmadog\";\"main\"\n\"2640045\";\"Portmadoc\";\"other\"\n\"2640046\";\"Porthleven\";\"main\"\n\"2640054\";\"Porthcawl\";\"main\"\n\"2640059\";\"Portglenone\";\"main\"\n\"2640060\";\"Port Glasgow\";\"main\"\n\"2640064\";\"Port Erroll\";\"main\"\n\"2640064\";\"Cruden Bay\";\"other\"\n\"2640064\";\"Port Errol\";\"other\"\n\"2640069\";\"Port Dinorwic\";\"main\"\n\"2640076\";\"Port Bannatyne\";\"main\"\n\"2640076\";\"Kamesburgh\";\"other\"\n\"2640078\";\"Portavogie\";\"main\"\n\"2640084\";\"Portaferry\";\"main\"\n\"2640090\";\"Poringland\";\"main\"\n\"2640101\";\"Poole\";\"main\"\n\"2640101\";\"Pul\";\"other\"\n\"2640101\";\"Пул\";\"other\"\n\"2640104\";\"Pontypridd\";\"main\"\n\"2640104\";\"Pontiprite\";\"other\"\n\"2640104\";\"Понтиприте\";\"other\"\n\"2640106\";\"Pont-y-pŵl\";\"main\"\n\"2640106\";\"Pont-y-pwl\";\"ascii\"\n\"2640106\";\"Pontypool\";\"other\"\n\"2640109\";\"Pontycymer\";\"main\"\n\"2640109\";\"Pont y Cymmer\";\"other\"\n\"2640110\";\"Pontyberem\";\"main\"\n\"2640110\";\"Pont-y-Berem\";\"other\"\n\"2640129\";\"Pontesbury\";\"main\"\n\"2640131\";\"Ponteland\";\"main\"\n\"2640132\";\"Pontefract\";\"main\"\n\"2640134\";\"Pontardulais\";\"main\"\n\"2640155\";\"Polmont\";\"main\"\n\"2640155\";\"Polmonte\";\"other\"\n\"2640155\";\"Полмонте\";\"other\"\n\"2640185\";\"Pocklington\";\"main\"\n\"2640194\";\"Plymouth\";\"main\"\n\"2640194\";\"Aberplymm\";\"other\"\n\"2640194\";\"Pliemue\";\"other\"\n\"2640194\";\"Plimut\";\"other\"\n\"2640194\";\"Pliémue\";\"other\"\n\"2640194\";\"pu li mao si\";\"other\"\n\"2640194\";\"purimasu\";\"other\"\n\"2640194\";\"Плимут\";\"other\"\n\"2640194\";\"プリマス\";\"other\"\n\"2640194\";\"普利茅斯\";\"other\"\n\"2640219\";\"Plean\";\"main\"\n\"2640242\";\"Pittenweem\";\"main\"\n\"2640253\";\"Pitmedden\";\"main\"\n\"2640255\";\"Pitlochry\";\"main\"\n\"2640273\";\"Pinxton\";\"main\"\n\"2640279\";\"Pinchbeck\";\"main\"\n\"2640285\";\"Pilsley\";\"main\"\n\"2640312\";\"Pickering\";\"main\"\n\"2640327\";\"Pewsey\";\"main\"\n\"2640332\";\"Petworth\";\"main\"\n\"2640348\";\"Petersfield\";\"main\"\n\"2640349\";\"Peterlee\";\"main\"\n\"2640349\";\"Peterli\";\"other\"\n\"2640349\";\"Петерли\";\"other\"\n\"2640351\";\"Peterhead\";\"main\"\n\"2640354\";\"Peterborough\";\"main\"\n\"2640354\";\"Peterbrough\";\"other\"\n\"2640354\";\"Petersborough\";\"other\"\n\"2640354\";\"Petroburgum\";\"other\"\n\"2640354\";\"Piterboro\";\"other\"\n\"2640354\";\"pitaboro\";\"other\"\n\"2640354\";\"Питерборо\";\"other\"\n\"2640354\";\"ピーターボロー\";\"other\"\n\"2640358\";\"Perth\";\"main\"\n\"2640358\";\"P\\\"rt\";\"other\"\n\"2640358\";\"Peairt\";\"other\"\n\"2640358\";\"Pert\";\"other\"\n\"2640358\";\"Перт\";\"other\"\n\"2640358\";\"Пърт\";\"other\"\n\"2640360\";\"Pershore\";\"main\"\n\"2640367\";\"Perranporth\";\"main\"\n\"2640377\";\"Penzance\";\"main\"\n\"2640377\";\"Pennsans\";\"other\"\n\"2640393\";\"Pentyrch\";\"main\"\n\"2640413\";\"Penryn\";\"main\"\n\"2640416\";\"Penrith\";\"main\"\n\"2640460\";\"Penkridge\";\"main\"\n\"2640463\";\"Penistone\";\"main\"\n\"2640465\";\"Penicuik\";\"main\"\n\"2640484\";\"Pencoed\";\"main\"\n\"2640490\";\"Pencaitland\";\"main\"\n\"2640496\";\"Penarth\";\"main\"\n\"2640498\";\"Pembury\";\"main\"\n\"2640502\";\"Pembroke Dock\";\"main\"\n\"2640502\";\"Doc Penfro\";\"other\"\n\"2640502\";\"Pater\";\"other\"\n\"2640502\";\"Paterchurch\";\"other\"\n\"2640503\";\"Pembroke\";\"main\"\n\"2640503\";\"Penfro\";\"other\"\n\"2640511\";\"Pelton\";\"main\"\n\"2640512\";\"Pelsall\";\"main\"\n\"2640517\";\"Pegswood\";\"main\"\n\"2640526\";\"Peebles\";\"main\"\n\"2640559\";\"Paulton\";\"main\"\n\"2640566\";\"Pattingham\";\"main\"\n\"2640574\";\"Patna\";\"main\"\n\"2640589\";\"Partridge Green\";\"main\"\n\"2640593\";\"Partington\";\"main\"\n\"2640621\";\"Parbold\";\"main\"\n\"2640623\";\"Par\";\"main\"\n\"2640624\";\"Papworth Everard\";\"main\"\n\"2640624\";\"Papworth\";\"other\"\n\"2640646\";\"Pant\";\"main\"\n\"2640651\";\"Pannal\";\"main\"\n\"2640654\";\"Pangbourne\";\"main\"\n\"2640677\";\"Paisley\";\"main\"\n\"2640677\";\"Pejsli\";\"other\"\n\"2640677\";\"Пейсли\";\"other\"\n\"2640678\";\"Painswick\";\"main\"\n\"2640681\";\"Paignton\";\"main\"\n\"2640681\";\"Pehjnton\";\"other\"\n\"2640681\";\"Пэйнтон\";\"other\"\n\"2640685\";\"Padstow\";\"main\"\n\"2640687\";\"Padiham\";\"main\"\n\"2640690\";\"Paddock Wood\";\"main\"\n\"2640717\";\"Oxted\";\"main\"\n\"2640729\";\"Oxford\";\"main\"\n\"2640729\";\"Oksford\";\"other\"\n\"2640729\";\"Oksfordas\";\"other\"\n\"2640729\";\"Oksfordo\";\"other\"\n\"2640729\";\"Oxonia\";\"other\"\n\"2640729\";\"Oxphorde\";\"other\"\n\"2640729\";\"Rhydychen\";\"other\"\n\"2640729\";\"Rysoghen\";\"other\"\n\"2640729\";\"aksfwrd\";\"other\"\n\"2640729\";\"ogseupeodeu\";\"other\"\n\"2640729\";\"okkusufodo\";\"other\"\n\"2640729\";\"Οξφόρδη\";\"other\"\n\"2640729\";\"Оксфорд\";\"other\"\n\"2640729\";\"אוקספורד\";\"other\"\n\"2640729\";\"أكسفورد\";\"other\"\n\"2640729\";\"オックスフォード\";\"other\"\n\"2640729\";\"옥스퍼드\";\"other\"\n\"2640731\";\"Oxenhope\";\"main\"\n\"2640762\";\"Overtown\";\"main\"\n\"2640765\";\"Overton\";\"main\"\n\"2640777\";\"Over\";\"main\"\n\"2640781\";\"Outwell\";\"main\"\n\"2640825\";\"Oundle\";\"main\"\n\"2640832\";\"Oughtibridge\";\"main\"\n\"2640834\";\"Ottery Saint Mary\";\"main\"\n\"2640834\";\"OTTERY ST MARY\";\"other\"\n\"2640834\";\"OTTERY ST. MARY\";\"other\"\n\"2640840\";\"Ottershaw\";\"main\"\n\"2640857\";\"Otley\";\"main\"\n\"2640861\";\"Oswestry\";\"main\"\n\"2640861\";\"Croesoswallt\";\"other\"\n\"2640869\";\"Ossett\";\"main\"\n\"2640908\";\"Ormskirk\";\"main\"\n\"2640910\";\"Ormiston\";\"main\"\n\"2640912\";\"Ormesby Saint Margaret\";\"main\"\n\"2640912\";\"Great Ormesby\";\"other\"\n\"2640967\";\"Omagh\";\"main\"\n\"2640967\";\"An Oghmagh\";\"other\"\n\"2640967\";\"An Omaigh\";\"other\"\n\"2640967\";\"An Ómaigh\";\"other\"\n\"2640967\";\"Oma\";\"other\"\n\"2640967\";\"Ома\";\"other\"\n\"2640972\";\"Olney\";\"main\"\n\"2640981\";\"Old Windsor\";\"main\"\n\"2641007\";\"Oldmeldrum\";\"main\"\n\"2641014\";\"Old Kilpatrick\";\"main\"\n\"2641014\";\"Kilpatrick\";\"other\"\n\"2641014\";\"West Kilpatrick\";\"other\"\n\"2641022\";\"Oldham\";\"main\"\n\"2641022\";\"Oldem\";\"other\"\n\"2641022\";\"Олдем\";\"other\"\n\"2641036\";\"Oldbury\";\"main\"\n\"2641049\";\"Okehampton\";\"main\"\n\"2641079\";\"Odiham\";\"main\"\n\"2641108\";\"Oban\";\"main\"\n\"2641108\";\"An t-Oban\";\"other\"\n\"2641108\";\"An t-Òban\";\"other\"\n\"2641108\";\"Oub\\\"n\";\"other\"\n\"2641108\";\"Обан\";\"other\"\n\"2641108\";\"Оубън\";\"other\"\n\"2641120\";\"Oakley\";\"main\"\n\"2641128\";\"Oakham\";\"main\"\n\"2641134\";\"Oadby\";\"main\"\n\"2641157\";\"Nuneaton\";\"main\"\n\"2641157\";\"Naniton\";\"other\"\n\"2641157\";\"Нанитон\";\"other\"\n\"2641170\";\"Nottingham\";\"main\"\n\"2641170\";\"Nottigham\";\"other\"\n\"2641170\";\"Nottingem\";\"other\"\n\"2641170\";\"nottingamu\";\"other\"\n\"2641170\";\"nuo ding han\";\"other\"\n\"2641170\";\"nuo ding xian\";\"other\"\n\"2641170\";\"nwtnghham\";\"other\"\n\"2641170\";\"Ноттингем\";\"other\"\n\"2641170\";\"Ноттингҳам\";\"other\"\n\"2641170\";\"נוטינגהאם\";\"other\"\n\"2641170\";\"نوتنغهام\";\"other\"\n\"2641170\";\"ノッティンガム\";\"other\"\n\"2641170\";\"諾定咸\";\"other\"\n\"2641170\";\"诺丁汉\";\"other\"\n\"2641181\";\"Norwich\";\"main\"\n\"2641181\";\"Noridzh\";\"other\"\n\"2641181\";\"nwrwytsh\";\"other\"\n\"2641181\";\"Норидж\";\"other\"\n\"2641181\";\"نورويتش\";\"other\"\n\"2641193\";\"Norton Canes\";\"main\"\n\"2641224\";\"Northwich\";\"main\"\n\"2641224\";\"Northwick\";\"other\"\n\"2641224\";\"Nortvich\";\"other\"\n\"2641224\";\"Нортвич\";\"other\"\n\"2641233\";\"North Walsham\";\"main\"\n\"2641253\";\"North Sunderland\";\"main\"\n\"2641267\";\"North Shields\";\"main\"\n\"2641280\";\"North Queensferry\";\"main\"\n\"2641284\";\"North Petherton\";\"main\"\n\"2641287\";\"Northorpe\";\"main\"\n\"2641315\";\"North Leigh\";\"main\"\n\"2641318\";\"Northleach\";\"main\"\n\"2641331\";\"Northiam\";\"main\"\n\"2641356\";\"North Ferriby\";\"main\"\n\"2641356\";\"Ferriby\";\"other\"\n\"2641370\";\"North Elmham\";\"main\"\n\"2641419\";\"North Berwick\";\"main\"\n\"2641430\";\"Northampton\";\"main\"\n\"2641430\";\"Nortgempton\";\"other\"\n\"2641430\";\"Nortkhempton\";\"other\"\n\"2641430\";\"Nortkhemptun\";\"other\"\n\"2641430\";\"Нортгемптон\";\"other\"\n\"2641430\";\"Нортхемптон\";\"other\"\n\"2641430\";\"Нортхемптън\";\"other\"\n\"2641434\";\"Northam\";\"main\"\n\"2641435\";\"Northallerton\";\"main\"\n\"2641447\";\"Normandy\";\"main\"\n\"2641480\";\"Niton\";\"main\"\n\"2641480\";\"Najton\";\"other\"\n\"2641480\";\"Найтон\";\"other\"\n\"2641506\";\"Neyland\";\"main\"\n\"2641506\";\"New Milford\";\"other\"\n\"2641510\";\"New Tredegar\";\"main\"\n\"2641511\";\"Newtownstewart\";\"main\"\n\"2641513\";\"Newtown Saint Boswells\";\"main\"\n\"2641519\";\"Newtownards\";\"main\"\n\"2641520\";\"Newtownabbey\";\"main\"\n\"2641520\";\"N'jutonehbbej\";\"other\"\n\"2641520\";\"Ньютонэббей\";\"other\"\n\"2641523\";\"Newtown\";\"main\"\n\"2641523\";\"Tre-Newydd\";\"other\"\n\"2641523\";\"Y Drenewydd\";\"other\"\n\"2641528\";\"Newton Stewart\";\"main\"\n\"2641536\";\"Newton Poppleford\";\"main\"\n\"2641544\";\"Newton Mearns\";\"main\"\n\"2641545\";\"Newton Longville\";\"main\"\n\"2641546\";\"Newton-le-Willows\";\"main\"\n\"2641549\";\"Newtonhill\";\"main\"\n\"2641555\";\"Newton Aycliffe\";\"main\"\n\"2641557\";\"Newton Abbot\";\"main\"\n\"2641577\";\"New Scone\";\"main\"\n\"2641581\";\"Newry\";\"main\"\n\"2641581\";\"An tiur\";\"other\"\n\"2641581\";\"An tïúr\";\"other\"\n\"2641581\";\"Iubhar Cinn Tragha\";\"other\"\n\"2641581\";\"Iubhar Cinn Trágha\";\"other\"\n\"2641581\";\"N'juri\";\"other\"\n\"2641581\";\"Ньюри\";\"other\"\n\"2641589\";\"Newquay\";\"main\"\n\"2641591\";\"Newport Pagnell\";\"main\"\n\"2641593\";\"Newport-On-Tay\";\"main\"\n\"2641593\";\"Newport\";\"other\"\n\"2641595\";\"Newport\";\"main\"\n\"2641595\";\"N'juport\";\"other\"\n\"2641595\";\"Ньюпорт\";\"other\"\n\"2641598\";\"Newport\";\"main\"\n\"2641598\";\"Casnewydd-ar-Wysg\";\"other\"\n\"2641598\";\"N'juport\";\"other\"\n\"2641598\";\"Novus Burgus\";\"other\"\n\"2641598\";\"Ньюпорт\";\"other\"\n\"2641599\";\"Newport\";\"main\"\n\"2641599\";\"N'juport\";\"other\"\n\"2641599\";\"Ньюпорт\";\"other\"\n\"2641610\";\"Newmilns\";\"main\"\n\"2641612\";\"New Mills\";\"main\"\n\"2641616\";\"Newmarket\";\"main\"\n\"2641618\";\"Newmains\";\"main\"\n\"2641629\";\"Newington\";\"main\"\n\"2641630\";\"Newick\";\"main\"\n\"2641637\";\"Newhaven\";\"main\"\n\"2641651\";\"Newent\";\"main\"\n\"2641658\";\"New Cumnock\";\"main\"\n\"2641673\";\"Newcastle upon Tyne\";\"main\"\n\"2641673\";\"N'jukasl\";\"other\"\n\"2641673\";\"Neuchate\";\"other\"\n\"2641673\";\"Neuchâté\";\"other\"\n\"2641673\";\"Newcastle\";\"other\"\n\"2641673\";\"Newcastle-on-Tyne\";\"other\"\n\"2641673\";\"Newcastle-upon-Tyne\";\"other\"\n\"2641673\";\"nywkasl\";\"other\"\n\"2641673\";\"nywkasl abwn tayn\";\"other\"\n\"2641673\";\"tai en he pan niu ka si er\";\"other\"\n\"2641673\";\"Ньюкасл\";\"other\"\n\"2641673\";\"ניוקאסל\";\"other\"\n\"2641673\";\"نيوكاسل أبون تاين\";\"other\"\n\"2641673\";\"نیوکاسل\";\"other\"\n\"2641673\";\"ニューカッスル・アポン・タイン\";\"other\"\n\"2641673\";\"泰恩河畔纽卡斯尔\";\"other\"\n\"2641674\";\"Newcastle under Lyme\";\"main\"\n\"2641674\";\"Newcastle-under-Lyme\";\"other\"\n\"2641676\";\"Newcastle Emlyn\";\"main\"\n\"2641676\";\"Castell Newydd Emlyn\";\"other\"\n\"2641689\";\"Newbury\";\"main\"\n\"2641689\";\"N'juberi\";\"other\"\n\"2641689\";\"Ньюбери\";\"other\"\n\"2641690\";\"Newburn\";\"main\"\n\"2641691\";\"Newburgh\";\"main\"\n\"2641692\";\"Newburgh\";\"main\"\n\"2641698\";\"Newbridge\";\"main\"\n\"2641710\";\"Newbold Verdon\";\"main\"\n\"2641718\";\"Newbiggin-by-the-Sea\";\"main\"\n\"2641729\";\"Newarthill\";\"main\"\n\"2641731\";\"Newark on Trent\";\"main\"\n\"2641731\";\"Newark\";\"other\"\n\"2641731\";\"Newark upon Trent\";\"other\"\n\"2641760\";\"Nettleham\";\"main\"\n\"2641765\";\"Netley\";\"main\"\n\"2641765\";\"Netley Marsh\";\"other\"\n\"2641773\";\"Netherton\";\"main\"\n\"2641776\";\"Nether Poppleton\";\"main\"\n\"2641810\";\"Nelson\";\"main\"\n\"2641811\";\"Nelson\";\"main\"\n\"2641815\";\"Neilston\";\"main\"\n\"2641827\";\"Needingworth\";\"main\"\n\"2641828\";\"Needham Market\";\"main\"\n\"2641833\";\"Necton\";\"main\"\n\"2641843\";\"Neath\";\"main\"\n\"2641843\";\"Castell Nedd\";\"other\"\n\"2641843\";\"Castell-nedd\";\"other\"\n\"2641843\";\"Nit\";\"other\"\n\"2641843\";\"Нит\";\"other\"\n\"2641861\";\"Navenby\";\"main\"\n\"2641884\";\"Narborough\";\"main\"\n\"2641885\";\"Narberth\";\"main\"\n\"2641885\";\"Arberth\";\"other\"\n\"2641892\";\"Nantwich\";\"main\"\n\"2641910\";\"Nairn\";\"main\"\n\"2641912\";\"Nailsworth\";\"main\"\n\"2641913\";\"Nailsea\";\"main\"\n\"2641915\";\"Nafferton\";\"main\"\n\"2641922\";\"Mytholmroyd\";\"main\"\n\"2641942\";\"Musselburgh\";\"main\"\n\"2641965\";\"Mundford\";\"main\"\n\"2641966\";\"Mundesley\";\"main\"\n\"2641966\";\"Mundersley\";\"other\"\n\"2641976\";\"Mullion\";\"main\"\n\"2641997\";\"Mulbarton\";\"main\"\n\"2642001\";\"Muir of Ord\";\"main\"\n\"2642005\";\"Muirkirk\";\"main\"\n\"2642006\";\"Muirhead\";\"main\"\n\"2642006\";\"Muirhead of Liff\";\"other\"\n\"2642054\";\"Much Wenlock\";\"main\"\n\"2642077\";\"Moy\";\"main\"\n\"2642096\";\"Mountsorrel\";\"main\"\n\"2642135\";\"Motherwell\";\"main\"\n\"2642135\";\"Mazervell\";\"other\"\n\"2642135\";\"Мазервелл\";\"other\"\n\"2642137\";\"Mostyn\";\"main\"\n\"2642143\";\"Mossley\";\"main\"\n\"2642182\";\"Morpeth\";\"main\"\n\"2642189\";\"Morley\";\"main\"\n\"2642200\";\"Moreton in Marsh\";\"main\"\n\"2642200\";\"Moreton in the Marsh\";\"other\"\n\"2642214\";\"Morecambe\";\"main\"\n\"2642214\";\"Morecombe\";\"other\"\n\"2642214\";\"Morkam\";\"other\"\n\"2642214\";\"Моркам\";\"other\"\n\"2642233\";\"Morden\";\"main\"\n\"2642302\";\"Montrose\";\"main\"\n\"2642313\";\"Monmouth\";\"main\"\n\"2642313\";\"Monmut\";\"other\"\n\"2642313\";\"Монмут\";\"other\"\n\"2642336\";\"Monk Fryston\";\"main\"\n\"2642349\";\"Moneymore\";\"main\"\n\"2642372\";\"Yr Wyddgrug\";\"main\"\n\"2642372\";\"Mold\";\"other\"\n\"2642376\";\"Moira\";\"main\"\n\"2642384\";\"Moffat\";\"main\"\n\"2642412\";\"Mitcheldean\";\"main\"\n\"2642412\";\"Milcheldean\";\"other\"\n\"2642416\";\"Mistley\";\"main\"\n\"2642417\";\"Misterton\";\"main\"\n\"2642423\";\"Mirfield\";\"main\"\n\"2642430\";\"Mintlaw\";\"main\"\n\"2642450\";\"Minehead\";\"main\"\n\"2642452\";\"Minchinhampton\";\"main\"\n\"2642465\";\"Milton Keynes\";\"main\"\n\"2642465\";\"MK\";\"other\"\n\"2642465\";\"Milton-Kins\";\"other\"\n\"2642465\";\"Милтон-Кинс\";\"other\"\n\"2642482\";\"Milnthorpe\";\"main\"\n\"2642483\";\"Milnrow\";\"main\"\n\"2642484\";\"Milngavie\";\"main\"\n\"2642484\";\"Milguy\";\"other\"\n\"2642486\";\"Milnathort\";\"main\"\n\"2642503\";\"Millport\";\"main\"\n\"2642505\";\"Millom\";\"main\"\n\"2642511\";\"Millisle\";\"main\"\n\"2642533\";\"Milford on Sea\";\"main\"\n\"2642533\";\"Milford\";\"other\"\n\"2642534\";\"Milford Haven\";\"main\"\n\"2642534\";\"Aberdaugleddau\";\"other\"\n\"2642534\";\"Milford\";\"other\"\n\"2642537\";\"Milford\";\"main\"\n\"2642544\";\"Mildenhall\";\"main\"\n\"2642549\";\"Milborne Port\";\"main\"\n\"2642567\";\"Midhurst\";\"main\"\n\"2642573\";\"Middlewich\";\"main\"\n\"2642573\";\"Middlewick\";\"other\"\n\"2642593\";\"Middleton\";\"main\"\n\"2642603\";\"Middlestown\";\"main\"\n\"2642603\";\"Middletown\";\"other\"\n\"2642607\";\"Middlesbrough\";\"main\"\n\"2642607\";\"Middlebrough\";\"other\"\n\"2642607\";\"Middlesborough\";\"other\"\n\"2642607\";\"Midulsbro\";\"other\"\n\"2642607\";\"mydlsbrw\";\"other\"\n\"2642607\";\"Мидълсбро\";\"other\"\n\"2642607\";\"מידלסברו\";\"other\"\n\"2642632\";\"Mid Calder\";\"main\"\n\"2642637\";\"Mickle Trafford\";\"main\"\n\"2642639\";\"Mickleton\";\"main\"\n\"2642683\";\"Mexborough\";\"main\"\n\"2642687\";\"Mevagissey\";\"main\"\n\"2642687\";\"Mevegissey\";\"other\"\n\"2642691\";\"Methven\";\"main\"\n\"2642695\";\"Metheringham\";\"main\"\n\"2642697\";\"Messingham\";\"main\"\n\"2642705\";\"Merthyr Tydfil\";\"main\"\n\"2642705\";\"M\\\"rt\\\"r Tidfil\";\"other\"\n\"2642705\";\"Merthyr Tudful\";\"other\"\n\"2642705\";\"Mertir Tidfil\";\"other\"\n\"2642705\";\"Mertir Tidvil\";\"other\"\n\"2642705\";\"Mertyr Tydfil\";\"other\"\n\"2642705\";\"Мертир Тидвил\";\"other\"\n\"2642705\";\"Мертир Тидфил\";\"other\"\n\"2642705\";\"Мъртър Тидфил\";\"other\"\n\"2642727\";\"Meriden\";\"main\"\n\"2642731\";\"Meppershall\";\"main\"\n\"2642733\";\"Meopham\";\"main\"\n\"2642743\";\"Menston\";\"main\"\n\"2642755\";\"Menai Bridge\";\"main\"\n\"2642755\";\"Menai\";\"other\"\n\"2642755\";\"Porthaethwy\";\"other\"\n\"2642763\";\"Melton Mowbray\";\"main\"\n\"2642766\";\"Meltham\";\"main\"\n\"2642769\";\"Melrose\";\"main\"\n\"2642786\";\"Melksham\";\"main\"\n\"2642792\";\"Meldreth\";\"main\"\n\"2642801\";\"Melbourne\";\"main\"\n\"2642802\";\"Melbourn\";\"main\"\n\"2642802\";\"Melborn\";\"other\"\n\"2642843\";\"Measham\";\"main\"\n\"2642876\";\"Mayfield\";\"main\"\n\"2642882\";\"Maybole\";\"main\"\n\"2642902\";\"Maulden\";\"main\"\n\"2642904\";\"Mauchline\";\"main\"\n\"2642905\";\"Mattishall\";\"main\"\n\"2642910\";\"Matlock\";\"main\"\n\"2642927\";\"Maryport\";\"main\"\n\"2642947\";\"Martock\";\"main\"\n\"2642959\";\"Martham\";\"main\"\n\"2642963\";\"Marston Moretaine\";\"main\"\n\"2642974\";\"Marske-by-the-Sea\";\"main\"\n\"2642974\";\"Marske\";\"other\"\n\"2642974\";\"Marske by the Sea\";\"other\"\n\"2642980\";\"Marshfield\";\"main\"\n\"2642980\";\"Marshfields\";\"other\"\n\"2642992\";\"Marsden\";\"main\"\n\"2642999\";\"Marple\";\"main\"\n\"2643003\";\"Marlow\";\"main\"\n\"2643003\";\"Great Marlow\";\"other\"\n\"2643009\";\"Marldon\";\"main\"\n\"2643010\";\"Marlborough\";\"main\"\n\"2643011\";\"Markyate\";\"main\"\n\"2643011\";\"Markyatestreet\";\"other\"\n\"2643012\";\"Marks Tey\";\"main\"\n\"2643016\";\"Markinch\";\"main\"\n\"2643019\";\"Markfield\";\"main\"\n\"2643021\";\"Market Weighton\";\"main\"\n\"2643023\";\"Market Rasen\";\"main\"\n\"2643025\";\"Market Lavington\";\"main\"\n\"2643025\";\"Lavington\";\"other\"\n\"2643027\";\"Market Harborough\";\"main\"\n\"2643028\";\"Market Drayton\";\"main\"\n\"2643029\";\"Market Deeping\";\"main\"\n\"2643030\";\"Market Bosworth\";\"main\"\n\"2643044\";\"Margate\";\"main\"\n\"2643060\";\"Marden\";\"main\"\n\"2643064\";\"Marchwood\";\"main\"\n\"2643070\";\"Marcham\";\"main\"\n\"2643071\";\"March\";\"main\"\n\"2643095\";\"Manston\";\"main\"\n\"2643096\";\"Mansfield Woodhouse\";\"main\"\n\"2643097\";\"Mansfield\";\"main\"\n\"2643097\";\"Mehnsfild\";\"other\"\n\"2643097\";\"Мэнсфилд\";\"other\"\n\"2643107\";\"Manningtree\";\"main\"\n\"2643116\";\"Mangotsfield\";\"main\"\n\"2643121\";\"Manea\";\"main\"\n\"2643123\";\"Manchester\";\"main\"\n\"2643123\";\"Mamucium\";\"other\"\n\"2643123\";\"Manceinion\";\"other\"\n\"2643123\";\"Mancesteris\";\"other\"\n\"2643123\";\"Manchain\";\"other\"\n\"2643123\";\"Manchestur\";\"other\"\n\"2643123\";\"Mančesteris\";\"other\"\n\"2643123\";\"man che si te\";\"other\"\n\"2643123\";\"manchesuta\";\"other\"\n\"2643123\";\"mantshstr\";\"other\"\n\"2643123\";\"mnchstr\";\"other\"\n\"2643123\";\"mnz'str\";\"other\"\n\"2643123\";\"Манчестер\";\"other\"\n\"2643123\";\"Манчестър\";\"other\"\n\"2643123\";\"מנצ'סטר\";\"other\"\n\"2643123\";\"مانتشستر\";\"other\"\n\"2643123\";\"مانچېستېر\";\"other\"\n\"2643123\";\"منچستر\";\"other\"\n\"2643123\";\"แมนเชสเตอร์\";\"other\"\n\"2643123\";\"მანჩესტერი\";\"other\"\n\"2643123\";\"マンチェスター\";\"other\"\n\"2643123\";\"曼彻斯特\";\"other\"\n\"2643142\";\"Malton\";\"main\"\n\"2643144\";\"Maltby\";\"main\"\n\"2643146\";\"Malmesbury\";\"main\"\n\"2643146\";\"Malmsbury\";\"other\"\n\"2643160\";\"Maldon\";\"main\"\n\"2643160\";\"Malden\";\"other\"\n\"2643160\";\"Meldona\";\"other\"\n\"2643160\";\"Мелдона\";\"other\"\n\"2643179\";\"Maidstone\";\"main\"\n\"2643179\";\"Mejdston\";\"other\"\n\"2643179\";\"Мейдстон\";\"other\"\n\"2643186\";\"Maidenhead\";\"main\"\n\"2643196\";\"Magor\";\"main\"\n\"2643205\";\"Magheralin\";\"main\"\n\"2643208\";\"Magherafelt\";\"main\"\n\"2643211\";\"Maghera\";\"main\"\n\"2643218\";\"Maesteg\";\"main\"\n\"2643247\";\"Macmerry\";\"main\"\n\"2643251\";\"Machynlleth\";\"main\"\n\"2643259\";\"Machen\";\"main\"\n\"2643262\";\"Macduff\";\"main\"\n\"2643266\";\"Macclesfield\";\"main\"\n\"2643276\";\"Lytchett Matravers\";\"main\"\n\"2643298\";\"Lyneham\";\"main\"\n\"2643304\";\"Lyndhurst\";\"main\"\n\"2643309\";\"Lymm\";\"main\"\n\"2643312\";\"Lymington\";\"main\"\n\"2643313\";\"Lyminge\";\"main\"\n\"2643314\";\"Lyme Regis\";\"main\"\n\"2643318\";\"Lydney\";\"main\"\n\"2643327\";\"Lydd\";\"main\"\n\"2643329\";\"Lydbrook\";\"main\"\n\"2643337\";\"Lutterworth\";\"main\"\n\"2643339\";\"Luton\";\"main\"\n\"2643339\";\"Лутон\";\"other\"\n\"2643385\";\"Lundin Links\";\"main\"\n\"2643391\";\"Luncarty\";\"main\"\n\"2643425\";\"Ludlow\";\"main\"\n\"2643425\";\"Llwydlo\";\"other\"\n\"2643437\";\"Luddenden Foot\";\"main\"\n\"2643490\";\"Lowestoft\";\"main\"\n\"2643490\";\"Loustoft\";\"other\"\n\"2643490\";\"Лоустофт\";\"other\"\n\"2643543\";\"Lowdham\";\"main\"\n\"2643548\";\"Low Ackworth\";\"main\"\n\"2643553\";\"Louth\";\"main\"\n\"2643553\";\"Laut\";\"other\"\n\"2643553\";\"Лаут\";\"other\"\n\"2643567\";\"Loughborough\";\"main\"\n\"2643583\";\"Lostwithiel\";\"main\"\n\"2643587\";\"Lossiemouth\";\"main\"\n\"2643618\";\"Longtown\";\"main\"\n\"2643620\";\"Longton\";\"main\"\n\"2643625\";\"Long Sutton\";\"main\"\n\"2643628\";\"Long Stratton\";\"main\"\n\"2643646\";\"Longridge\";\"main\"\n\"2643652\";\"Longniddry\";\"main\"\n\"2643661\";\"Long Melford\";\"main\"\n\"2643673\";\"Long Lawford\";\"main\"\n\"2643674\";\"Long Itchington\";\"main\"\n\"2643696\";\"Longfield\";\"main\"\n\"2643697\";\"Long Eaton\";\"main\"\n\"2643704\";\"Longdendale\";\"main\"\n\"2643707\";\"Long Crendon\";\"main\"\n\"2643714\";\"Long Buckby\";\"main\"\n\"2643720\";\"Long Bennington\";\"main\"\n\"2643726\";\"Long Ashton\";\"main\"\n\"2643734\";\"Londonderry County Borough\";\"main\"\n\"2643736\";\"Derry\";\"main\"\n\"2643736\";\"Derri\";\"other\"\n\"2643736\";\"Derry / Londonderry\";\"other\"\n\"2643736\";\"Derry City\";\"other\"\n\"2643736\";\"Dhoire\";\"other\"\n\"2643736\";\"Doire\";\"other\"\n\"2643736\";\"Doire Choluim Chille\";\"other\"\n\"2643736\";\"Ker Dherow\";\"other\"\n\"2643736\";\"Londonderry\";\"other\"\n\"2643736\";\"dry\";\"other\"\n\"2643736\";\"rondonderi\";\"other\"\n\"2643736\";\"Дерри\";\"other\"\n\"2643736\";\"דרי\";\"other\"\n\"2643736\";\"ロンドンデリー\";\"other\"\n\"2643741\";\"City of London\";\"main\"\n\"2643743\";\"London\";\"main\"\n\"2643743\";\"City\";\"other\"\n\"2643743\";\"City of London\";\"other\"\n\"2643743\";\"LON\";\"other\"\n\"2643743\";\"Ljondan\";\"other\"\n\"2643743\";\"Llundain\";\"other\"\n\"2643743\";\"Londain\";\"other\"\n\"2643743\";\"Londan\";\"other\"\n\"2643743\";\"Londe\";\"other\"\n\"2643743\";\"Londen\";\"other\"\n\"2643743\";\"Londinium\";\"other\"\n\"2643743\";\"Londino\";\"other\"\n\"2643743\";\"London City\";\"other\"\n\"2643743\";\"Londona\";\"other\"\n\"2643743\";\"Londonas\";\"other\"\n\"2643743\";\"Londoni\";\"other\"\n\"2643743\";\"Londono\";\"other\"\n\"2643743\";\"Londra\";\"other\"\n\"2643743\";\"Londres\";\"other\"\n\"2643743\";\"Londres - London\";\"other\"\n\"2643743\";\"Londrez\";\"other\"\n\"2643743\";\"Londyn\";\"other\"\n\"2643743\";\"Londýn\";\"other\"\n\"2643743\";\"Lontoo\";\"other\"\n\"2643743\";\"Loundres\";\"other\"\n\"2643743\";\"Luan GJon\";\"other\"\n\"2643743\";\"Lunden\";\"other\"\n\"2643743\";\"Lundunir\";\"other\"\n\"2643743\";\"Lundúnir\";\"other\"\n\"2643743\";\"Lunnainn\";\"other\"\n\"2643743\";\"Lunnon\";\"other\"\n\"2643743\";\"Luân Đôn\";\"other\"\n\"2643743\";\"The City\";\"other\"\n\"2643743\";\"ilantan\";\"other\"\n\"2643743\";\"landana\";\"other\"\n\"2643743\";\"leondeon\";\"other\"\n\"2643743\";\"lndn\";\"other\"\n\"2643743\";\"londoni\";\"other\"\n\"2643743\";\"lun dun\";\"other\"\n\"2643743\";\"lwndwn\";\"other\"\n\"2643743\";\"lxndxn\";\"other\"\n\"2643743\";\"rondon\";\"other\"\n\"2643743\";\"Λονδίνο\";\"other\"\n\"2643743\";\"Лондан\";\"other\"\n\"2643743\";\"Лондон\";\"other\"\n\"2643743\";\"Лёндан\";\"other\"\n\"2643743\";\"Լոնդոն\";\"other\"\n\"2643743\";\"לאנדאן\";\"other\"\n\"2643743\";\"לונדון\";\"other\"\n\"2643743\";\"لندن\";\"other\"\n\"2643743\";\"لوندون\";\"other\"\n\"2643743\";\"ܠܘܢܕܘܢ\";\"other\"\n\"2643743\";\"लंडन\";\"other\"\n\"2643743\";\"लंदन\";\"other\"\n\"2643743\";\"লন্ডন\";\"other\"\n\"2643743\";\"લંડન\";\"other\"\n\"2643743\";\"இலண்டன்\";\"other\"\n\"2643743\";\"ลอนดอน\";\"other\"\n\"2643743\";\"ლონდონი\";\"other\"\n\"2643743\";\"ለንደን\";\"other\"\n\"2643743\";\"ロンドン\";\"other\"\n\"2643743\";\"伦敦\";\"other\"\n\"2643743\";\"런던\";\"other\"\n\"2643773\";\"Loftus\";\"main\"\n\"2643776\";\"Lofthouse\";\"main\"\n\"2643783\";\"Loddon\";\"main\"\n\"2643791\";\"Lockerbie\";\"main\"\n\"2643791\";\"Lokerbi\";\"other\"\n\"2643791\";\"lwkrby\";\"other\"\n\"2643791\";\"lxk ke xrbi\";\"other\"\n\"2643791\";\"lxkh ke xrbi\";\"other\"\n\"2643791\";\"Локерби\";\"other\"\n\"2643791\";\"لوكربي\";\"other\"\n\"2643791\";\"ล็อกเกอร์บี\";\"other\"\n\"2643791\";\"ล็อคเกอร์บี\";\"other\"\n\"2643797\";\"Lochwinnoch\";\"main\"\n\"2643812\";\"Lochmaben\";\"main\"\n\"2643825\";\"Lochgilphead\";\"main\"\n\"2643827\";\"Lochgelly\";\"main\"\n\"2643853\";\"Locharbriggs\";\"main\"\n\"2643862\";\"Loanhead\";\"main\"\n\"2643933\";\"Llantwit Major\";\"main\"\n\"2643933\";\"Llanilltud Fawr\";\"other\"\n\"2643934\";\"Llantwit Fardre\";\"main\"\n\"2643934\";\"Llanilltud Faerdref\";\"other\"\n\"2643934\";\"Llantwitt-fardre\";\"other\"\n\"2643934\";\"Llantwitvairdre\";\"other\"\n\"2643937\";\"Llantrisant\";\"main\"\n\"2643937\";\"Llantrissant\";\"other\"\n\"2643951\";\"Llansantffraid Glan Conwy\";\"main\"\n\"2643951\";\"Llansantffraid\";\"other\"\n\"2643951\";\"Llansantffraid-Glan-Conway\";\"other\"\n\"2643957\";\"Llanrwst\";\"main\"\n\"2643957\";\"Llanwrst\";\"other\"\n\"2643958\";\"Llanrug\";\"main\"\n\"2643990\";\"Llanidloes\";\"main\"\n\"2643993\";\"Llanharry\";\"main\"\n\"2643993\";\"Llanhary\";\"other\"\n\"2643994\";\"Llanharan\";\"main\"\n\"2644021\";\"Llangollen\";\"main\"\n\"2644037\";\"Llangefni\";\"main\"\n\"2644080\";\"Llanfairpwllgwyngyll\";\"main\"\n\"2644080\";\"Lanfairpwll\";\"other\"\n\"2644080\";\"Llanfair Pwllgwyngyll\";\"other\"\n\"2644080\";\"Llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch\";\"other\"\n\"2644080\";\"Llanfairpwllgwyngyllgogerychwyrndrobwyll-llantysiliogogogoch\";\"other\"\n\"2644080\";\"Llanvajr Pullgvingill\";\"other\"\n\"2644080\";\"laenbaieopuheulgwingiheul\";\"other\"\n\"2644080\";\"lan wei er pu er gu yin ji er ge ge li hui er en de luo bu er lan di xi li ao ge ge ge he\";\"other\"\n\"2644080\";\"Лланвайр Пуллгвингилл\";\"other\"\n\"2644080\";\"ランヴァイル・プルグウィンギル・ゴゲリフウィルンドロブル・ランティシリオゴゴゴホ\";\"other\"\n\"2644080\";\"兰韦尔普尔古因吉尔戈格里惠尔恩德罗布尔兰蒂西利奥戈戈戈赫\";\"other\"\n\"2644080\";\"랜바이어푸흘귄기흘\";\"other\"\n\"2644081\";\"Llanfairfechan\";\"main\"\n\"2644100\";\"Llanelli\";\"main\"\n\"2644100\";\"Llanelly\";\"other\"\n\"2644100\";\"Лланелли\";\"other\"\n\"2644115\";\"Llandybie\";\"main\"\n\"2644115\";\"Llandebie\";\"other\"\n\"2644120\";\"Llandudno\";\"main\"\n\"2644122\";\"Llandrindod Wells\";\"main\"\n\"2644127\";\"Llandovery\";\"main\"\n\"2644127\";\"Llanymddyfri\";\"other\"\n\"2644135\";\"Llandeilo\";\"main\"\n\"2644135\";\"Llandilo\";\"other\"\n\"2644167\";\"Llanbradach\";\"main\"\n\"2644172\";\"Llanberis\";\"main\"\n\"2644204\";\"Livingston\";\"main\"\n\"2644204\";\"Ливингстон\";\"other\"\n\"2644210\";\"Liverpool\";\"main\"\n\"2644210\";\"Learpholl\";\"other\"\n\"2644210\";\"Lerpwl\";\"other\"\n\"2644210\";\"Liberpoul\";\"other\"\n\"2644210\";\"Liverpul\";\"other\"\n\"2644210\";\"Liverpul'\";\"other\"\n\"2644210\";\"Liverpule\";\"other\"\n\"2644210\";\"Liverpulis\";\"other\"\n\"2644210\";\"Liverpūle\";\"other\"\n\"2644210\";\"Livurpul\";\"other\"\n\"2644210\";\"Poll a' Ghruthain\";\"other\"\n\"2644210\";\"li wu pu\";\"other\"\n\"2644210\";\"libeopul\";\"other\"\n\"2644210\";\"liwexrphul\";\"other\"\n\"2644210\";\"lybrpwl\";\"other\"\n\"2644210\";\"lyfrbwl\";\"other\"\n\"2644210\";\"lywrpwl\";\"other\"\n\"2644210\";\"rivu~apuru\";\"other\"\n\"2644210\";\"Λίβερπουλ\";\"other\"\n\"2644210\";\"Ливерпул\";\"other\"\n\"2644210\";\"Ливерпуль\";\"other\"\n\"2644210\";\"Ливърпул\";\"other\"\n\"2644210\";\"ליברפול\";\"other\"\n\"2644210\";\"لىۋېرپۇل\";\"other\"\n\"2644210\";\"ليفربول\";\"other\"\n\"2644210\";\"لیورپول\";\"other\"\n\"2644210\";\"ܠܝܒܪܦܘܠ\";\"other\"\n\"2644210\";\"ลิเวอร์พูล\";\"other\"\n\"2644210\";\"ლივერპული\";\"other\"\n\"2644210\";\"リヴァプール\";\"other\"\n\"2644210\";\"利物浦\";\"other\"\n\"2644210\";\"리버풀\";\"other\"\n\"2644268\";\"Littleport\";\"main\"\n\"2644271\";\"Little Paxton\";\"main\"\n\"2644299\";\"Little Lever\";\"main\"\n\"2644319\";\"Littlehampton\";\"main\"\n\"2644333\";\"Little Eaton\";\"main\"\n\"2644350\";\"Little Clacton\";\"main\"\n\"2644381\";\"Little Amwell\";\"main\"\n\"2644386\";\"Litherland\";\"main\"\n\"2644398\";\"Liss\";\"main\"\n\"2644400\";\"Lisnaskea\";\"main\"\n\"2644409\";\"Liskeard\";\"main\"\n\"2644411\";\"Lisburn\";\"main\"\n\"2644411\";\"Lios na gCearrbhach\";\"other\"\n\"2644411\";\"Lisbern\";\"other\"\n\"2644411\";\"Лисберн\";\"other\"\n\"2644419\";\"Liphook\";\"main\"\n\"2644437\";\"Linthwaite\";\"main\"\n\"2644444\";\"Linlithgow\";\"main\"\n\"2644451\";\"Lingwood\";\"main\"\n\"2644455\";\"Lingfield\";\"main\"\n\"2644487\";\"Lincoln\";\"main\"\n\"2644487\";\"Linkol'n\";\"other\"\n\"2644487\";\"lingkeon\";\"other\"\n\"2644487\";\"rinkan\";\"other\"\n\"2644487\";\"Линкольн\";\"other\"\n\"2644487\";\"リンカン\";\"other\"\n\"2644487\";\"링컨\";\"other\"\n\"2644495\";\"Limekilns\";\"main\"\n\"2644501\";\"Limavady\";\"main\"\n\"2644501\";\"Newtown Limavady\";\"other\"\n\"2644531\";\"Lichfield\";\"main\"\n\"2644531\";\"Letocetum\";\"other\"\n\"2644531\";\"Lichfild\";\"other\"\n\"2644531\";\"Личфилд\";\"other\"\n\"2644540\";\"Lhanbryd\";\"main\"\n\"2644540\";\"Lhanbryde\";\"other\"\n\"2644544\";\"Leysdown-on-Sea\";\"main\"\n\"2644544\";\"Leysdown\";\"other\"\n\"2644547\";\"Leyland\";\"main\"\n\"2644548\";\"Leyburn\";\"main\"\n\"2644559\";\"Lewes\";\"main\"\n\"2644577\";\"Leven\";\"main\"\n\"2644578\";\"Leven\";\"main\"\n\"2644581\";\"Leuchars\";\"main\"\n\"2644594\";\"Letham\";\"main\"\n\"2644597\";\"Letchworth\";\"main\"\n\"2644597\";\"Lechuort\";\"other\"\n\"2644597\";\"Letchworth Garden\";\"other\"\n\"2644597\";\"Лечуорт\";\"other\"\n\"2644600\";\"Lesmahagow\";\"main\"\n\"2644605\";\"Lerwick\";\"main\"\n\"2644605\";\"Leruik\";\"other\"\n\"2644605\";\"Lervikas\";\"other\"\n\"2644605\";\"rau~ikku\";\"other\"\n\"2644605\";\"Леруик\";\"other\"\n\"2644605\";\"ラーウィック\";\"other\"\n\"2644613\";\"Leominster\";\"main\"\n\"2644622\";\"Lennoxtown\";\"main\"\n\"2644624\";\"Lenham\";\"main\"\n\"2644642\";\"Leiston\";\"main\"\n\"2644652\";\"Leighton Buzzard\";\"main\"\n\"2644660\";\"Leigh\";\"main\"\n\"2644668\";\"Leicester\";\"main\"\n\"2644668\";\"Caerlyr\";\"other\"\n\"2644668\";\"Caerlŷr\";\"other\"\n\"2644668\";\"Leiscester\";\"other\"\n\"2644668\";\"Lester\";\"other\"\n\"2644668\";\"laystr\";\"other\"\n\"2644668\";\"lstr\";\"other\"\n\"2644668\";\"lystr\";\"other\"\n\"2644668\";\"resuta\";\"other\"\n\"2644668\";\"Лестер\";\"other\"\n\"2644668\";\"לסטר\";\"other\"\n\"2644668\";\"لايستر\";\"other\"\n\"2644668\";\"ليستر\";\"other\"\n\"2644668\";\"レスター\";\"other\"\n\"2644676\";\"Leeswood\";\"main\"\n\"2644680\";\"Lee-on-the-Solent\";\"main\"\n\"2644680\";\"Lee on Solent\";\"other\"\n\"2644684\";\"Leek\";\"main\"\n\"2644688\";\"Leeds\";\"main\"\n\"2644688\";\"Lids\";\"other\"\n\"2644688\";\"Lidsa\";\"other\"\n\"2644688\";\"Lijds\";\"other\"\n\"2644688\";\"Lydsas\";\"other\"\n\"2644688\";\"Līdsa\";\"other\"\n\"2644688\";\"lyds\";\"other\"\n\"2644688\";\"lydz\";\"other\"\n\"2644688\";\"rizu\";\"other\"\n\"2644688\";\"Лидс\";\"other\"\n\"2644688\";\"Лийдс\";\"other\"\n\"2644688\";\"לידס\";\"other\"\n\"2644688\";\"ليدز\";\"other\"\n\"2644688\";\"لیدز\";\"other\"\n\"2644688\";\"リーズ\";\"other\"\n\"2644707\";\"Ledbury\";\"main\"\n\"2644710\";\"Leconfield\";\"main\"\n\"2644710\";\"Leckonfield\";\"other\"\n\"2644719\";\"Lechlade\";\"main\"\n\"2644726\";\"Leatherhead\";\"main\"\n\"2644731\";\"Leasingham\";\"main\"\n\"2644731\";\"Heasingham\";\"other\"\n\"2644737\";\"Leamington\";\"main\"\n\"2644737\";\"Leamington Spa\";\"other\"\n\"2644737\";\"Limingtone\";\"other\"\n\"2644737\";\"Royal Leamington Spa\";\"other\"\n\"2644737\";\"Лимингтоне\";\"other\"\n\"2644771\";\"Layer de la Haye\";\"main\"\n\"2644795\";\"Law\";\"main\"\n\"2644803\";\"Lavenham\";\"main\"\n\"2644809\";\"Laurencekirk\";\"main\"\n\"2644811\";\"Launceston\";\"main\"\n\"2644818\";\"Lauder\";\"main\"\n\"2644849\";\"Larne\";\"main\"\n\"2644853\";\"Larkhall\";\"main\"\n\"2644853\";\"Darkhall\";\"other\"\n\"2644860\";\"Largs\";\"main\"\n\"2644905\";\"Langtoft\";\"main\"\n\"2644905\";\"Langfoft\";\"other\"\n\"2644914\";\"Langport\";\"main\"\n\"2644917\";\"Langley Park\";\"main\"\n\"2644927\";\"Langholm\";\"main\"\n\"2644929\";\"Langho\";\"main\"\n\"2644968\";\"Lanchester\";\"main\"\n\"2644972\";\"Lancaster\";\"main\"\n\"2644972\";\"Lankaster\";\"other\"\n\"2644972\";\"Ланкастер\";\"other\"\n\"2644976\";\"Lanark\";\"main\"\n\"2644981\";\"Lampeter\";\"main\"\n\"2644981\";\"Llanbedr Pont Steffan\";\"other\"\n\"2644984\";\"Lamlash\";\"main\"\n\"2644993\";\"Lambourn\";\"main\"\n\"2645020\";\"Lakenheath\";\"main\"\n\"2645020\";\"Lake Heath\";\"other\"\n\"2645064\";\"Ladybank\";\"main\"\n\"2645080\";\"Laceby\";\"main\"\n\"2645093\";\"Knutsford\";\"main\"\n\"2645102\";\"Knottingley\";\"main\"\n\"2645102\";\"Knottingly\";\"other\"\n\"2645155\";\"Knighton\";\"main\"\n\"2645155\";\"Trefyclo\";\"other\"\n\"2645161\";\"Knebworth\";\"main\"\n\"2645163\";\"Knaresborough\";\"main\"\n\"2645163\";\"Nejrsboro\";\"other\"\n\"2645163\";\"Нейрсборо\";\"other\"\n\"2645180\";\"Kirton in Lindsey\";\"main\"\n\"2645180\";\"Kirton\";\"other\"\n\"2645181\";\"Kirton\";\"main\"\n\"2645191\";\"Kirriemuir\";\"main\"\n\"2645198\";\"Kirkwall\";\"main\"\n\"2645198\";\"Kirkvelas\";\"other\"\n\"2645232\";\"Kirk Sandall\";\"main\"\n\"2645238\";\"Kirk of Shotts\";\"main\"\n\"2645238\";\"Kirk O'Shoth\";\"other\"\n\"2645238\";\"Kirk O'Shotts\";\"other\"\n\"2645238\";\"Kirk O’Shoth\";\"other\"\n\"2645238\";\"Kirk O’Shotts\";\"other\"\n\"2645238\";\"Shotts\";\"other\"\n\"2645241\";\"Kirknewton\";\"main\"\n\"2645249\";\"Kirkliston\";\"main\"\n\"2645261\";\"Kirkintilloch\";\"main\"\n\"2645261\";\"Kirkintillock\";\"other\"\n\"2645280\";\"Kirkham\";\"main\"\n\"2645287\";\"Kirkcudbright\";\"main\"\n\"2645287\";\"Kircudbright\";\"other\"\n\"2645291\";\"Kirkconnel\";\"main\"\n\"2645298\";\"Kirkcaldy\";\"main\"\n\"2645298\";\"Kirkcaudy\";\"other\"\n\"2645301\";\"Kirkby Stephen\";\"main\"\n\"2645309\";\"Kirkby in Ashfield\";\"main\"\n\"2645309\";\"Kirkby\";\"other\"\n\"2645313\";\"Kirkby\";\"main\"\n\"2645314\";\"Kirkburton\";\"main\"\n\"2645329\";\"Kircubbin\";\"main\"\n\"2645335\";\"Kirby Muxloe\";\"main\"\n\"2645358\";\"Kintore\";\"main\"\n\"2645358\";\"Ceann-an-Tor\";\"other\"\n\"2645361\";\"Kintbury\";\"main\"\n\"2645365\";\"Kinross\";\"main\"\n\"2645388\";\"Kinloss\";\"main\"\n\"2645409\";\"Kingussie\";\"main\"\n\"2645411\";\"Kington\";\"main\"\n\"2645413\";\"Kings Worthy\";\"main\"\n\"2645418\";\"Kingswood\";\"main\"\n\"2645418\";\"Kingsvud\";\"other\"\n\"2645418\";\"Кингсвуд\";\"other\"\n\"2645425\";\"Hull\";\"main\"\n\"2645425\";\"Kingston upon Hull\";\"other\"\n\"2645425\";\"Kingston-apon-Khall\";\"other\"\n\"2645425\";\"Kingston-upon-Hull\";\"other\"\n\"2645425\";\"he er\";\"other\"\n\"2645425\";\"Кингстон-апон-Халл\";\"other\"\n\"2645425\";\"האל\";\"other\"\n\"2645425\";\"赫爾\";\"other\"\n\"2645442\";\"Kingsteignton\";\"main\"\n\"2645456\";\"King's Lynn\";\"main\"\n\"2645456\";\"Kingslinn\";\"other\"\n\"2645456\";\"Lynn\";\"other\"\n\"2645456\";\"Lynn Regis\";\"other\"\n\"2645456\";\"Кингслинн\";\"other\"\n\"2645460\";\"Kings Langley\";\"main\"\n\"2645464\";\"Kingskerswell\";\"main\"\n\"2645479\";\"Kingsclere\";\"main\"\n\"2645483\";\"Kingsbury\";\"main\"\n\"2645486\";\"Kingsbridge\";\"main\"\n\"2645494\";\"Kinglassie\";\"main\"\n\"2645500\";\"Kinghorn\";\"main\"\n\"2645525\";\"Kincardine\";\"main\"\n\"2645539\";\"Kimberley\";\"main\"\n\"2645541\";\"Kilwinning\";\"main\"\n\"2645548\";\"Kilsyth\";\"main\"\n\"2645555\";\"Kilrea\";\"main\"\n\"2645599\";\"Kilmaurs\";\"main\"\n\"2645605\";\"Kilmarnock\";\"main\"\n\"2645605\";\"Cill Mhearnag\";\"other\"\n\"2645605\";\"Cill Mheàrnag\";\"other\"\n\"2645605\";\"Kilmarnok\";\"other\"\n\"2645605\";\"Килмарнок\";\"other\"\n\"2645611\";\"Kilmacolm\";\"main\"\n\"2645613\";\"Killyleagh\";\"main\"\n\"2645645\";\"Killearn\";\"main\"\n\"2645653\";\"Killamarsh\";\"main\"\n\"2645660\";\"Kilkeel\";\"main\"\n\"2645684\";\"Kilcreggan\";\"main\"\n\"2645703\";\"Kilburn\";\"main\"\n\"2645703\";\"Kilbourn\";\"other\"\n\"2645703\";\"Kilbourne\";\"other\"\n\"2645712\";\"Kilbirnie\";\"main\"\n\"2645714\";\"Kilbarchan\";\"main\"\n\"2645720\";\"Kidwelly\";\"main\"\n\"2645720\";\"Cydweli\";\"other\"\n\"2645721\";\"Kidsgrove\";\"main\"\n\"2645722\";\"Kidlington\";\"main\"\n\"2645724\";\"Kidderminster\";\"main\"\n\"2645728\";\"Kibworth Harcourt\";\"main\"\n\"2645728\";\"Kibworth\";\"other\"\n\"2645733\";\"Keynsham\";\"main\"\n\"2645734\";\"Keyingham\";\"main\"\n\"2645741\";\"Ketton\";\"main\"\n\"2645753\";\"Kettering\";\"main\"\n\"2645753\";\"Кеттеринг\";\"other\"\n\"2645756\";\"Keswick\";\"main\"\n\"2645756\";\"Kesvik\";\"other\"\n\"2645756\";\"Koswick\";\"other\"\n\"2645756\";\"Кесвик\";\"other\"\n\"2645761\";\"Kessingland\";\"main\"\n\"2645778\";\"Keresley\";\"main\"\n\"2645800\";\"Kensworth\";\"main\"\n\"2645803\";\"Kennoway\";\"main\"\n\"2645804\";\"Kennington\";\"main\"\n\"2645822\";\"Kenilworth\";\"main\"\n\"2645826\";\"Kendal\";\"main\"\n\"2645826\";\"Kendall\";\"other\"\n\"2645826\";\"Кендал\";\"other\"\n\"2645830\";\"Kemsing\";\"main\"\n\"2645831\";\"Kempston\";\"main\"\n\"2645833\";\"Kempsey\";\"main\"\n\"2645836\";\"Kemnay\";\"main\"\n\"2645840\";\"Kelvedon Hatch\";\"main\"\n\"2645841\";\"Kelvedon\";\"main\"\n\"2645843\";\"Kelty\";\"main\"\n\"2645849\";\"Kelso\";\"main\"\n\"2645853\";\"Kelsall\";\"main\"\n\"2645880\";\"Keith\";\"main\"\n\"2645880\";\"Kieth\";\"other\"\n\"2645889\";\"Keighley\";\"main\"\n\"2645889\";\"Kejli\";\"other\"\n\"2645889\";\"Кейли\";\"other\"\n\"2645891\";\"Kegworth\";\"main\"\n\"2645898\";\"Keelby\";\"main\"\n\"2645900\";\"Kedington\";\"main\"\n\"2645911\";\"Kearsley\";\"main\"\n\"2645917\";\"Keady\";\"main\"\n\"2645951\";\"Johnstone\";\"main\"\n\"2645952\";\"Johnston\";\"main\"\n\"2645970\";\"Jedburgh\";\"main\"\n\"2645970\";\"Jedburg\";\"other\"\n\"2645972\";\"Jarrow\";\"main\"\n\"2645972\";\"Dzharrou\";\"other\"\n\"2645972\";\"Jarrow-on-Tyne\";\"other\"\n\"2645972\";\"Джарроу\";\"other\"\n\"2645983\";\"Ixworth\";\"main\"\n\"2645988\";\"Ivybridge\";\"main\"\n\"2645989\";\"Ivinghoe\";\"main\"\n\"2645990\";\"Iver\";\"main\"\n\"2646003\";\"Islington\";\"main\"\n\"2646012\";\"Isleham\";\"main\"\n\"2646029\";\"Irvinestown\";\"main\"\n\"2646029\";\"Lowtherstown\";\"other\"\n\"2646032\";\"Irvine\";\"main\"\n\"2646034\";\"Irthlingborough\";\"main\"\n\"2646039\";\"Ironbridge\";\"main\"\n\"2646042\";\"Irlam\";\"main\"\n\"2646055\";\"Irchester\";\"main\"\n\"2646057\";\"Ipswich\";\"main\"\n\"2646057\";\"Ipsuich\";\"other\"\n\"2646057\";\"abswytsh\";\"other\"\n\"2646057\";\"Ипсуич\";\"other\"\n\"2646057\";\"إبسويتش\";\"other\"\n\"2646062\";\"Ipplepen\";\"main\"\n\"2646073\";\"Inverurie\";\"main\"\n\"2646088\";\"Inverness\";\"main\"\n\"2646088\";\"Inbhir Nis\";\"other\"\n\"2646088\";\"Innerness\";\"other\"\n\"2646088\";\"Invurnes\";\"other\"\n\"2646088\";\"aynwrns\";\"other\"\n\"2646088\";\"in'vu~anesu\";\"other\"\n\"2646088\";\"yin wei nei si\";\"other\"\n\"2646088\";\"Инвернесс\";\"other\"\n\"2646088\";\"Инвърнес\";\"other\"\n\"2646088\";\"اینورنس\";\"other\"\n\"2646088\";\"インヴァネス\";\"other\"\n\"2646088\";\"印威內斯\";\"other\"\n\"2646102\";\"Inverkip\";\"main\"\n\"2646104\";\"Inverkeithing\";\"main\"\n\"2646115\";\"Invergordon\";\"main\"\n\"2646134\";\"Inverbervie\";\"main\"\n\"2646134\";\"Bervie\";\"other\"\n\"2646157\";\"Insch\";\"main\"\n\"2646172\";\"Innerleithen\";\"main\"\n\"2646187\";\"Innellan\";\"main\"\n\"2646187\";\"Inellan\";\"other\"\n\"2646190\";\"Inkberrow\";\"main\"\n\"2646202\";\"Ingoldmells\";\"main\"\n\"2646207\";\"Ingleton\";\"main\"\n\"2646208\";\"Ingleby\";\"main\"\n\"2646219\";\"Ingatestone\";\"main\"\n\"2646243\";\"Inchinnan\";\"main\"\n\"2646253\";\"Ince-in-Makerfield\";\"main\"\n\"2646253\";\"Ince\";\"other\"\n\"2646256\";\"Immingham\";\"main\"\n\"2646265\";\"Ilminster\";\"main\"\n\"2646272\";\"Ilkley\";\"main\"\n\"2646274\";\"Ilkeston\";\"main\"\n\"2646276\";\"Ilfracombe\";\"main\"\n\"2646276\";\"Iltracombe\";\"other\"\n\"2646279\";\"Ilchester\";\"main\"\n\"2646311\";\"Ibstock\";\"main\"\n\"2646316\";\"Hythe\";\"main\"\n\"2646316\";\"Khajt\";\"other\"\n\"2646316\";\"Хайт\";\"other\"\n\"2646317\";\"Hythe\";\"main\"\n\"2646327\";\"Hyde\";\"main\"\n\"2646329\";\"Huyton\";\"main\"\n\"2646329\";\"Huyton with Roby\";\"other\"\n\"2646329\";\"Khejton\";\"other\"\n\"2646329\";\"Хейтон\";\"other\"\n\"2646355\";\"Hurstpierpoint\";\"main\"\n\"2646384\";\"Huntly\";\"main\"\n\"2646393\";\"Huntingdon\";\"main\"\n\"2646403\";\"Hunstanton\";\"main\"\n\"2646406\";\"Hunmanby\";\"main\"\n\"2646411\";\"Hungerford\";\"main\"\n\"2646435\";\"Humberston\";\"main\"\n\"2646435\";\"Humberstone\";\"other\"\n\"2646458\";\"Huddersfield\";\"main\"\n\"2646458\";\"Khaddersfild\";\"other\"\n\"2646458\";\"Хаддерсфилд\";\"other\"\n\"2646460\";\"Hucknall Torkard\";\"main\"\n\"2646471\";\"Hoyland Nether\";\"main\"\n\"2646471\";\"Hoyland\";\"other\"\n\"2646480\";\"Howwood\";\"main\"\n\"2646499\";\"Howden\";\"main\"\n\"2646504\";\"Hove\";\"main\"\n\"2646504\";\"Khouv\";\"other\"\n\"2646504\";\"Хоув\";\"other\"\n\"2646507\";\"Houston\";\"main\"\n\"2646524\";\"Houghton on the Hill\";\"main\"\n\"2646524\";\"Houghton\";\"other\"\n\"2646525\";\"Houghton le Spring\";\"main\"\n\"2646542\";\"Horwich\";\"main\"\n\"2646557\";\"Horsham\";\"main\"\n\"2646557\";\"Khorshehm\";\"other\"\n\"2646557\";\"West Horsham\";\"other\"\n\"2646557\";\"Хоршэм\";\"other\"\n\"2646558\";\"Horsforth\";\"main\"\n\"2646559\";\"Horsford\";\"main\"\n\"2646578\";\"Horrabridge\";\"main\"\n\"2646583\";\"Hornsea\";\"main\"\n\"2646590\";\"Horndon on the Hill\";\"main\"\n\"2646595\";\"Horncastle\";\"main\"\n\"2646595\";\"Banovallum\";\"other\"\n\"2646613\";\"Horbury\";\"main\"\n\"2646615\";\"Horam\";\"main\"\n\"2646615\";\"Horeham\";\"other\"\n\"2646620\";\"Hopton on Sea\";\"main\"\n\"2646620\";\"Hopton\";\"other\"\n\"2646630\";\"Hopeman\";\"main\"\n\"2646648\";\"Hook Norton\";\"main\"\n\"2646654\";\"Hook\";\"main\"\n\"2646656\";\"Hoo\";\"main\"\n\"2646658\";\"Honiton\";\"main\"\n\"2646670\";\"Holywood\";\"main\"\n\"2646673\";\"Holywell\";\"main\"\n\"2646673\";\"Treffynnon\";\"other\"\n\"2646675\";\"Holytown\";\"main\"\n\"2646686\";\"Holyhead\";\"main\"\n\"2646686\";\"Caergybi\";\"other\"\n\"2646694\";\"Holton le Clay\";\"main\"\n\"2646704\";\"Holsworthy\";\"main\"\n\"2646720\";\"Holmes Chapel\";\"main\"\n\"2646787\";\"Holbeach\";\"main\"\n\"2646807\";\"Hoddesdon\";\"main\"\n\"2646807\";\"Khoddsdon\";\"other\"\n\"2646807\";\"Ходдсдон\";\"other\"\n\"2646814\";\"Hockley\";\"main\"\n\"2646826\";\"Hitchin\";\"main\"\n\"2646828\";\"Histon\";\"main\"\n\"2646850\";\"Hinton\";\"main\"\n\"2646856\";\"Hingham\";\"main\"\n\"2646862\";\"Hindley\";\"main\"\n\"2646863\";\"Hindhead\";\"main\"\n\"2646867\";\"Hinckley\";\"main\"\n\"2646867\";\"Khinkli\";\"other\"\n\"2646867\";\"Хинкли\";\"other\"\n\"2646890\";\"Hillsborough\";\"main\"\n\"2646914\";\"High Wycombe\";\"main\"\n\"2646914\";\"Chepping\";\"other\"\n\"2646914\";\"Wycombe\";\"other\"\n\"2646916\";\"Highworth\";\"main\"\n\"2646921\";\"High Valleyfield\";\"main\"\n\"2646921\";\"Valleyfield\";\"other\"\n\"2646922\";\"Hightown\";\"main\"\n\"2646941\";\"Highley\";\"main\"\n\"2646953\";\"High Halstow\";\"main\"\n\"2646963\";\"High Etherley\";\"main\"\n\"2646963\";\"Etherley\";\"other\"\n\"2646972\";\"Highclere\";\"main\"\n\"2646979\";\"High Blantyre\";\"main\"\n\"2646979\";\"Blantyre\";\"other\"\n\"2646981\";\"High Bentham\";\"main\"\n\"2646981\";\"Bentham\";\"other\"\n\"2646985\";\"Higham Ferrers\";\"main\"\n\"2646994\";\"Hibaldstow\";\"main\"\n\"2647007\";\"Hexham\";\"main\"\n\"2647021\";\"Hetton le Hole\";\"main\"\n\"2647023\";\"Hethersett\";\"main\"\n\"2647026\";\"Heswall\";\"main\"\n\"2647044\";\"Hertford\";\"main\"\n\"2647044\";\"Khertford\";\"other\"\n\"2647044\";\"Хертфорд\";\"other\"\n\"2647057\";\"Herne Bay\";\"main\"\n\"2647062\";\"Hermitage\";\"main\"\n\"2647074\";\"Hereford\";\"main\"\n\"2647074\";\"Henffordd\";\"other\"\n\"2647074\";\"Khereforde\";\"other\"\n\"2647074\";\"Херефорде\";\"other\"\n\"2647097\";\"Henlow\";\"main\"\n\"2647101\";\"Henley on Thames\";\"main\"\n\"2647102\";\"Henley in Arden\";\"main\"\n\"2647111\";\"Henfield\";\"main\"\n\"2647120\";\"Hemsworth\";\"main\"\n\"2647123\";\"Hemsby\";\"main\"\n\"2647133\";\"Hemingford Grey\";\"main\"\n\"2647133\";\"Hemingford\";\"other\"\n\"2647136\";\"Hemingbrough\";\"main\"\n\"2647138\";\"Hemel Hempstead\";\"main\"\n\"2647138\";\"Hemel\";\"other\"\n\"2647145\";\"Helsby\";\"main\"\n\"2647149\";\"Helmsley\";\"main\"\n\"2647178\";\"Helensburgh\";\"main\"\n\"2647187\";\"Heighington\";\"main\"\n\"2647191\";\"Hedon\";\"main\"\n\"2647198\";\"Heckmondwike\";\"main\"\n\"2647200\";\"Heckington\";\"main\"\n\"2647207\";\"Hebden Bridge\";\"main\"\n\"2647227\";\"Heanor\";\"main\"\n\"2647229\";\"Healing\";\"main\"\n\"2647232\";\"Heage\";\"main\"\n\"2647240\";\"Headcorn\";\"main\"\n\"2647242\";\"Heacham\";\"main\"\n\"2647248\";\"Haywards Heath\";\"main\"\n\"2647248\";\"Baywards Heath\";\"other\"\n\"2647258\";\"Hayle\";\"main\"\n\"2647258\";\"Heyl\";\"other\"\n\"2647260\";\"Hayfield\";\"main\"\n\"2647265\";\"Haydock\";\"main\"\n\"2647268\";\"Haxey\";\"main\"\n\"2647269\";\"Haxby\";\"main\"\n\"2647278\";\"Haworth\";\"main\"\n\"2647289\";\"Hawkinge\";\"main\"\n\"2647291\";\"Hawkhurst\";\"main\"\n\"2647297\";\"Hawick\";\"main\"\n\"2647303\";\"Hawarden\";\"main\"\n\"2647303\";\"Khavarden\";\"other\"\n\"2647303\";\"Penarlag\";\"other\"\n\"2647303\";\"Penarlâg\";\"other\"\n\"2647303\";\"Хаварден\";\"other\"\n\"2647310\";\"Haverhill\";\"main\"\n\"2647311\";\"Hwlffordd\";\"main\"\n\"2647311\";\"Haverfordwest\";\"other\"\n\"2647317\";\"Havant\";\"main\"\n\"2647317\";\"Khavant\";\"other\"\n\"2647317\";\"Хавант\";\"other\"\n\"2647338\";\"Hathersage\";\"main\"\n\"2647340\";\"Hathern\";\"main\"\n\"2647343\";\"Hatfield Peverel\";\"main\"\n\"2647345\";\"Hatfield Heath\";\"main\"\n\"2647349\";\"Hatfield\";\"main\"\n\"2647349\";\"Bishops Hatfield\";\"other\"\n\"2647356\";\"Hastings\";\"main\"\n\"2647356\";\"Gastings\";\"other\"\n\"2647356\";\"Khejstings\";\"other\"\n\"2647356\";\"hystnghs\";\"other\"\n\"2647356\";\"Гастингс\";\"other\"\n\"2647356\";\"Хейстингс\";\"other\"\n\"2647356\";\"هيستنغس\";\"other\"\n\"2647362\";\"Haslingfield\";\"main\"\n\"2647363\";\"Haslingden\";\"main\"\n\"2647365\";\"Haslemere\";\"main\"\n\"2647383\";\"Harwich\";\"main\"\n\"2647383\";\"Harwick\";\"other\"\n\"2647383\";\"Kharvich\";\"other\"\n\"2647383\";\"Харвич\";\"other\"\n\"2647385\";\"Harwell\";\"main\"\n\"2647385\";\"Kharvel\";\"other\"\n\"2647385\";\"Харвел\";\"other\"\n\"2647386\";\"Harvington\";\"main\"\n\"2647388\";\"Hartwell\";\"main\"\n\"2647391\";\"Hartshill\";\"main\"\n\"2647400\";\"Hartlepool\";\"main\"\n\"2647400\";\"Khartlpul\";\"other\"\n\"2647400\";\"Хартлпул\";\"other\"\n\"2647406\";\"Harthill\";\"main\"\n\"2647407\";\"Harthill\";\"main\"\n\"2647419\";\"Harston\";\"main\"\n\"2647421\";\"Harrow on the Hill\";\"main\"\n\"2647421\";\"Harrow\";\"other\"\n\"2647421\";\"Harrow keruelet\";\"other\"\n\"2647421\";\"Harrow kerület\";\"other\"\n\"2647428\";\"Harrogate\";\"main\"\n\"2647428\";\"Kharrogejt\";\"other\"\n\"2647428\";\"Харрогейт\";\"other\"\n\"2647437\";\"Harrietsham\";\"main\"\n\"2647451\";\"Harpenden\";\"main\"\n\"2647461\";\"Harlow\";\"main\"\n\"2647461\";\"Kharlou\";\"other\"\n\"2647461\";\"Харлоу\";\"other\"\n\"2647467\";\"Harleston\";\"main\"\n\"2647487\";\"Harefield\";\"main\"\n\"2647497\";\"Hardingstone\";\"main\"\n\"2647502\";\"Harbury\";\"main\"\n\"2647518\";\"Hanslope\";\"main\"\n\"2647546\";\"Hampton in Arden\";\"main\"\n\"2647570\";\"Hamilton\";\"main\"\n\"2647570\";\"Gamil'ton\";\"other\"\n\"2647570\";\"Гамильтон\";\"other\"\n\"2647580\";\"Hambleton\";\"main\"\n\"2647585\";\"Hamble\";\"main\"\n\"2647585\";\"Hample\";\"other\"\n\"2647593\";\"Haltwhistle\";\"main\"\n\"2647599\";\"Halton\";\"main\"\n\"2647605\";\"Halstead\";\"main\"\n\"2647605\";\"Fort Halstead\";\"other\"\n\"2647605\";\"Halsted\";\"other\"\n\"2647616\";\"Halling\";\"main\"\n\"2647632\";\"Halifax\";\"main\"\n\"2647632\";\"Galifaks\";\"other\"\n\"2647632\";\"Галифакс\";\"other\"\n\"2647638\";\"Halesworth\";\"main\"\n\"2647639\";\"Halesowen\";\"main\"\n\"2647639\";\"Khejlsoven\";\"other\"\n\"2647639\";\"Хейлсовен\";\"other\"\n\"2647644\";\"Hale\";\"main\"\n\"2647655\";\"Hailsham\";\"main\"\n\"2647662\";\"Hagley\";\"main\"\n\"2647675\";\"Hadlow\";\"main\"\n\"2647677\";\"Hadley\";\"main\"\n\"2647686\";\"Haddington\";\"main\"\n\"2647688\";\"Haddenham\";\"main\"\n\"2647759\";\"Gunnislake\";\"main\"\n\"2647761\";\"Gunness\";\"main\"\n\"2647761\";\"Gunhouse\";\"other\"\n\"2647778\";\"Gullane\";\"main\"\n\"2647785\";\"Guisborough\";\"main\"\n\"2647793\";\"Guildford\";\"main\"\n\"2647793\";\"Gilford\";\"other\"\n\"2647793\";\"Guilford\";\"other\"\n\"2647793\";\"jylfwrd\";\"other\"\n\"2647793\";\"Гилфорд\";\"other\"\n\"2647793\";\"جيلفورد\";\"other\"\n\"2647837\";\"Grove\";\"main\"\n\"2647854\";\"Griston\";\"main\"\n\"2647874\";\"Grimston\";\"main\"\n\"2647905\";\"Greyabbey\";\"main\"\n\"2647910\";\"Gretna\";\"main\"\n\"2647919\";\"Gresford\";\"main\"\n\"2647948\";\"Greenock\";\"main\"\n\"2647948\";\"Grijnok\";\"other\"\n\"2647948\";\"Grinok\";\"other\"\n\"2647948\";\"Грийнок\";\"other\"\n\"2647948\";\"Гринок\";\"other\"\n\"2647957\";\"Greenisland\";\"main\"\n\"2647975\";\"Greenfield\";\"main\"\n\"2647983\";\"Great Yeldham\";\"main\"\n\"2647983\";\"Yeldham\";\"other\"\n\"2647984\";\"Great Yarmouth\";\"main\"\n\"2647984\";\"Yarmouth\";\"other\"\n\"2647985\";\"Great Wyrley\";\"main\"\n\"2647985\";\"Wyrley\";\"other\"\n\"2648003\";\"Great Totham\";\"main\"\n\"2648003\";\"Totham\";\"other\"\n\"2648004\";\"Great Torrington\";\"main\"\n\"2648004\";\"Torrington\";\"other\"\n\"2648010\";\"Great Stukeley\";\"main\"\n\"2648026\";\"Great Sankey\";\"main\"\n\"2648026\";\"Sankey\";\"other\"\n\"2648057\";\"Great Missenden\";\"main\"\n\"2648063\";\"Great Malvern\";\"main\"\n\"2648063\";\"Malvern\";\"other\"\n\"2648079\";\"Great Horkesley\";\"main\"\n\"2648079\";\"Horkesley\";\"other\"\n\"2648084\";\"Great Harwood\";\"main\"\n\"2648096\";\"Great Gonerby\";\"main\"\n\"2648097\";\"Great Glen\";\"main\"\n\"2648113\";\"Great Eccleston\";\"main\"\n\"2648113\";\"Eccleston\";\"other\"\n\"2648117\";\"Great Dunmow\";\"main\"\n\"2648117\";\"Dunmow\";\"other\"\n\"2648120\";\"Driffield\";\"main\"\n\"2648162\";\"Great Bentley\";\"main\"\n\"2648164\";\"Great Barton\";\"main\"\n\"2648168\";\"Great Barford\";\"main\"\n\"2648172\";\"Great Ayton\";\"main\"\n\"2648182\";\"Grays\";\"main\"\n\"2648182\";\"Grays Thurrock\";\"other\"\n\"2648187\";\"Gravesend\";\"main\"\n\"2648205\";\"Grantown on Spey\";\"main\"\n\"2648205\";\"Grantown\";\"other\"\n\"2648208\";\"Grantham\";\"main\"\n\"2648208\";\"Granty\";\"other\"\n\"2648208\";\"Гранты\";\"other\"\n\"2648215\";\"Grangemouth\";\"main\"\n\"2648253\";\"Goxhill\";\"main\"\n\"2648259\";\"Gourock\";\"main\"\n\"2648265\";\"Gotham\";\"main\"\n\"2648272\";\"Gosport\";\"main\"\n\"2648273\";\"Gosforth\";\"main\"\n\"2648279\";\"Gosberton\";\"main\"\n\"2648290\";\"Gorseinon\";\"main\"\n\"2648301\";\"Goring\";\"main\"\n\"2648308\";\"Gorebridge\";\"main\"\n\"2648314\";\"Goostrey\";\"main\"\n\"2648315\";\"Goosnargh\";\"main\"\n\"2648319\";\"Goole\";\"main\"\n\"2648325\";\"Goodwick\";\"main\"\n\"2648325\";\"Wdig\";\"other\"\n\"2648341\";\"Golspie\";\"main\"\n\"2648356\";\"Golborne\";\"main\"\n\"2648363\";\"Godstone\";\"main\"\n\"2648370\";\"Godmanchester\";\"main\"\n\"2648370\";\"Durolipons\";\"other\"\n\"2648372\";\"Godalming\";\"main\"\n\"2648372\";\"Godalminge\";\"other\"\n\"2648372\";\"Goldaming\";\"other\"\n\"2648372\";\"Годалминге\";\"other\"\n\"2648373\";\"Gobowen\";\"main\"\n\"2648383\";\"Gnosall\";\"main\"\n\"2648383\";\"Gnossall\";\"other\"\n\"2648385\";\"Glyn-neath\";\"main\"\n\"2648385\";\"Glyn Neath\";\"other\"\n\"2648396\";\"Glusburn\";\"main\"\n\"2648404\";\"Gloucester\";\"main\"\n\"2648404\";\"Caerloyw\";\"other\"\n\"2648404\";\"Gloster\";\"other\"\n\"2648404\";\"ge luo si te\";\"other\"\n\"2648404\";\"ghlwshstr\";\"other\"\n\"2648404\";\"gurosuta\";\"other\"\n\"2648404\";\"Глостер\";\"other\"\n\"2648404\";\"غلوشستر\";\"other\"\n\"2648404\";\"グロスター\";\"other\"\n\"2648404\";\"格洛斯特\";\"other\"\n\"2648405\";\"Glossop\";\"main\"\n\"2648409\";\"Glinton\";\"main\"\n\"2648438\";\"Glenrothes\";\"main\"\n\"2648523\";\"Glenboig\";\"main\"\n\"2648529\";\"Glenavy\";\"main\"\n\"2648538\";\"Glenariff\";\"main\"\n\"2648538\";\"Glenariffe\";\"other\"\n\"2648538\";\"Warren\";\"other\"\n\"2648538\";\"Waterfoot\";\"other\"\n\"2648549\";\"Glemsford\";\"main\"\n\"2648559\";\"Glastonbury\";\"main\"\n\"2648559\";\"glstwnbwry\";\"other\"\n\"2648559\";\"גלסטונבורי\";\"other\"\n\"2648579\";\"Glasgow\";\"main\"\n\"2648579\";\"Glaschu\";\"other\"\n\"2648579\";\"Glaschú\";\"other\"\n\"2648579\";\"Glasgovia\";\"other\"\n\"2648579\";\"Glasgovo\";\"other\"\n\"2648579\";\"Glaskobe\";\"other\"\n\"2648579\";\"Glazgas\";\"other\"\n\"2648579\";\"Glazgo\";\"other\"\n\"2648579\";\"Glazgou\";\"other\"\n\"2648579\";\"Glazgov\";\"other\"\n\"2648579\";\"Glazgova\";\"other\"\n\"2648579\";\"Glesca\";\"other\"\n\"2648579\";\"Glāzgova\";\"other\"\n\"2648579\";\"ge la si ge\";\"other\"\n\"2648579\";\"geullaeseugo\";\"other\"\n\"2648579\";\"glasago\";\"other\"\n\"2648579\";\"glasgw\";\"other\"\n\"2648579\";\"glasgwv\";\"other\"\n\"2648579\";\"glazgo\";\"other\"\n\"2648579\";\"gurasugo\";\"other\"\n\"2648579\";\"klas kow\";\"other\"\n\"2648579\";\"Γλασκώβη\";\"other\"\n\"2648579\";\"Глазго\";\"other\"\n\"2648579\";\"Глазгов\";\"other\"\n\"2648579\";\"Глазгоу\";\"other\"\n\"2648579\";\"גלאזגו\";\"other\"\n\"2648579\";\"گلاسگو\";\"other\"\n\"2648579\";\"گلاسگوۋ\";\"other\"\n\"2648579\";\"ग्लासगो\";\"other\"\n\"2648579\";\"กลาสโกว์\";\"other\"\n\"2648579\";\"გლაზგო\";\"other\"\n\"2648579\";\"グラスゴー\";\"other\"\n\"2648579\";\"格拉斯哥\";\"other\"\n\"2648579\";\"글래스고\";\"other\"\n\"2648603\";\"Glanamman\";\"main\"\n\"2648626\";\"Girvan\";\"main\"\n\"2648627\";\"Girton\";\"main\"\n\"2648642\";\"Gilwern\";\"main\"\n\"2648657\";\"Gillingham\";\"main\"\n\"2648657\";\"Dzhillingem\";\"other\"\n\"2648657\";\"Джиллингем\";\"other\"\n\"2648657\";\"ג'ילינגהאם\";\"other\"\n\"2648658\";\"Gillingham\";\"main\"\n\"2648669\";\"Gilford\";\"main\"\n\"2648670\";\"Gilfach Goch\";\"main\"\n\"2648683\";\"Giffnock\";\"main\"\n\"2648683\";\"Giffneck\";\"other\"\n\"2648728\";\"Gelligaer\";\"main\"\n\"2648739\";\"Geddington\";\"main\"\n\"2648773\";\"Gateshead\";\"main\"\n\"2648773\";\"Gateshead-on-Tyne\";\"other\"\n\"2648773\";\"Gejtskhed\";\"other\"\n\"2648773\";\"gyytshd\";\"other\"\n\"2648773\";\"Гейтсхед\";\"other\"\n\"2648773\";\"גייטסהד\";\"other\"\n\"2648803\";\"Garvagh\";\"main\"\n\"2648829\";\"Garstang\";\"main\"\n\"2648873\";\"Gargrave\";\"main\"\n\"2648875\";\"Garforth\";\"main\"\n\"2648877\";\"Garelochhead\";\"main\"\n\"2648899\";\"Gamlingay\";\"main\"\n\"2648909\";\"Galston\";\"main\"\n\"2648924\";\"Galgate\";\"main\"\n\"2648928\";\"Galashiels\";\"main\"\n\"2648928\";\"Gafashiels\";\"other\"\n\"2648945\";\"Gainsborough\";\"main\"\n\"2648945\";\"Gainesborough\";\"other\"\n\"2648970\";\"Fylde\";\"main\"\n\"2648970\";\"Borough of Fylde\";\"other\"\n\"2648970\";\"Fylde Borough\";\"other\"\n\"2648970\";\"Fylde Coast\";\"other\"\n\"2649000\";\"Fulbourn\";\"main\"\n\"2649000\";\"Fulbourne\";\"other\"\n\"2649024\";\"Frome\";\"main\"\n\"2649029\";\"Frodsham\";\"main\"\n\"2649033\";\"Frizington\";\"main\"\n\"2649049\";\"Frinton-on-Sea\";\"main\"\n\"2649049\";\"Frinton\";\"other\"\n\"2649062\";\"Freuchie\";\"main\"\n\"2649069\";\"Freshwater\";\"main\"\n\"2649076\";\"Fremington\";\"main\"\n\"2649083\";\"Freckleton\";\"main\"\n\"2649089\";\"Fraserburgh\";\"main\"\n\"2649104\";\"Framlingham\";\"main\"\n\"2649126\";\"Fowey\";\"main\"\n\"2649132\";\"Four Marks\";\"main\"\n\"2649169\";\"Fort William\";\"main\"\n\"2649169\";\"An Gearasdan\";\"other\"\n\"2649169\";\"Fort Vil'jam\";\"other\"\n\"2649169\";\"Форт Вильям\";\"other\"\n\"2649169\";\"פורט ויליאם\";\"other\"\n\"2649170\";\"Fortuneswell\";\"main\"\n\"2649171\";\"Fortrose\";\"main\"\n\"2649179\";\"Forth\";\"main\"\n\"2649192\";\"Forres\";\"main\"\n\"2649198\";\"Formby\";\"main\"\n\"2649207\";\"Forfar\";\"main\"\n\"2649210\";\"Forest Row\";\"main\"\n\"2649228\";\"Fordingbridge\";\"main\"\n\"2649258\";\"Folkestone\";\"main\"\n\"2649258\";\"Folkston\";\"other\"\n\"2649258\";\"Фолкстон\";\"other\"\n\"2649269\";\"Fochabers\";\"main\"\n\"2649295\";\"Flitwick\";\"main\"\n\"2649301\";\"Flint\";\"main\"\n\"2649301\";\"Y Fflint\";\"other\"\n\"2649304\";\"Flimby\";\"main\"\n\"2649312\";\"Fleetwood\";\"main\"\n\"2649322\";\"Fleet\";\"main\"\n\"2649337\";\"Flamborough\";\"main\"\n\"2649347\";\"Fivemiletown\";\"main\"\n\"2649349\";\"Fitzwilliam\";\"main\"\n\"2649372\";\"Fishguard\";\"main\"\n\"2649372\";\"Abergwaun\";\"other\"\n\"2649376\";\"Fishburn\";\"main\"\n\"2649398\";\"Fintona\";\"main\"\n\"2649403\";\"Finningley\";\"main\"\n\"2649428\";\"Finedon\";\"main\"\n\"2649432\";\"Findon\";\"main\"\n\"2649433\";\"Findochty\";\"main\"\n\"2649438\";\"Findhorn\";\"main\"\n\"2649439\";\"Findern\";\"main\"\n\"2649463\";\"Filey\";\"main\"\n\"2649516\";\"Ferryhill\";\"main\"\n\"2649518\";\"Ferrybridge\";\"main\"\n\"2649527\";\"Fernhurst\";\"main\"\n\"2649528\";\"Fernhill Heath\";\"main\"\n\"2649531\";\"Ferndale\";\"main\"\n\"2649568\";\"Feltwell\";\"main\"\n\"2649578\";\"Felling\";\"main\"\n\"2649579\";\"Felixstowe\";\"main\"\n\"2649593\";\"Featherstone\";\"main\"\n\"2649609\";\"Fazeley\";\"main\"\n\"2649622\";\"Faversham\";\"main\"\n\"2649624\";\"Fauldhouse\";\"main\"\n\"2649650\";\"Farnworth\";\"main\"\n\"2649652\";\"Farnsfield\";\"main\"\n\"2649657\";\"Farnham Royal\";\"main\"\n\"2649660\";\"Farnham\";\"main\"\n\"2649666\";\"Farndon\";\"main\"\n\"2649672\";\"Farnborough\";\"main\"\n\"2649672\";\"Farnboro\";\"other\"\n\"2649672\";\"Фарнборо\";\"other\"\n\"2649686\";\"Faringdon\";\"main\"\n\"2649692\";\"Fareham\";\"main\"\n\"2649715\";\"Falmouth\";\"main\"\n\"2649715\";\"Aberfal\";\"other\"\n\"2649715\";\"Falmut\";\"other\"\n\"2649715\";\"Фалмут\";\"other\"\n\"2649722\";\"Falkland\";\"main\"\n\"2649723\";\"Falkirk\";\"main\"\n\"2649723\";\"Фалкирк\";\"other\"\n\"2649730\";\"Fakenham\";\"main\"\n\"2649737\";\"Fairlight\";\"main\"\n\"2649738\";\"Fairlie\";\"main\"\n\"2649741\";\"Fairford\";\"main\"\n\"2649750\";\"Failsworth\";\"main\"\n\"2649774\";\"Eynsham\";\"main\"\n\"2649774\";\"Ensham\";\"other\"\n\"2649775\";\"Eynsford\";\"main\"\n\"2649784\";\"Eyemouth\";\"main\"\n\"2649788\";\"Eye\";\"main\"\n\"2649799\";\"Exning\";\"main\"\n\"2649803\";\"Exminster\";\"main\"\n\"2649805\";\"Exhall\";\"main\"\n\"2649808\";\"Exeter\";\"main\"\n\"2649808\";\"Ehkseter\";\"other\"\n\"2649808\";\"Exonia\";\"other\"\n\"2649808\";\"Karesk\";\"other\"\n\"2649808\";\"ai xi te\";\"other\"\n\"2649808\";\"aksytr\";\"other\"\n\"2649808\";\"ekuseta\";\"other\"\n\"2649808\";\"xek se texr\";\"other\"\n\"2649808\";\"xek si texr\";\"other\"\n\"2649808\";\"Эксетер\";\"other\"\n\"2649808\";\"إكسيتر\";\"other\"\n\"2649808\";\"เอกเซเตอร์\";\"other\"\n\"2649808\";\"เอ็กซีเตอร์\";\"other\"\n\"2649808\";\"エクセター\";\"other\"\n\"2649808\";\"艾希特\";\"other\"\n\"2649833\";\"Evesham\";\"main\"\n\"2649842\";\"Evercreech\";\"main\"\n\"2649843\";\"Evenwood\";\"main\"\n\"2649851\";\"Evanton\";\"main\"\n\"2649852\";\"Euxton\";\"main\"\n\"2649863\";\"Etwall\";\"main\"\n\"2649873\";\"Eton\";\"main\"\n\"2649873\";\"Iton\";\"other\"\n\"2649873\";\"Итон\";\"other\"\n\"2649911\";\"Esher\";\"main\"\n\"2649911\";\"Ehsher\";\"other\"\n\"2649911\";\"Эшер\";\"other\"\n\"2649921\";\"Errol\";\"main\"\n\"2649955\";\"Epworth\";\"main\"\n\"2649957\";\"Epsom\";\"main\"\n\"2649957\";\"Ehpsom\";\"other\"\n\"2649957\";\"Эпсом\";\"other\"\n\"2649963\";\"Epping\";\"main\"\n\"2649984\";\"Enniskillen\";\"main\"\n\"2649984\";\"Inis Ceithlann\";\"other\"\n\"2650000\";\"Enderby\";\"main\"\n\"2650004\";\"Emsworth\";\"main\"\n\"2650007\";\"Emneth\";\"main\"\n\"2650009\";\"Embsay\";\"main\"\n\"2650023\";\"Ely\";\"main\"\n\"2650023\";\"yi li\";\"other\"\n\"2650023\";\"伊利\";\"other\"\n\"2650047\";\"Elstree\";\"main\"\n\"2650051\";\"Elstead\";\"main\"\n\"2650059\";\"Elsenham\";\"main\"\n\"2650068\";\"Elmswell\";\"main\"\n\"2650086\";\"Ellon\";\"main\"\n\"2650096\";\"Ellesmere Port\";\"main\"\n\"2650097\";\"Ellesmere\";\"main\"\n\"2650110\";\"Elland\";\"main\"\n\"2650122\";\"Elgin\";\"main\"\n\"2650122\";\"Ehlgin\";\"other\"\n\"2650122\";\"Елгин\";\"other\"\n\"2650122\";\"Элгин\";\"other\"\n\"2650128\";\"Elderslie\";\"main\"\n\"2650174\";\"Egremont\";\"main\"\n\"2650184\";\"Eglinton\";\"main\"\n\"2650188\";\"Egham\";\"main\"\n\"2650188\";\"Ehgkhem\";\"other\"\n\"2650188\";\"Эгхем\";\"other\"\n\"2650200\";\"Edwinstowe\";\"main\"\n\"2650217\";\"Edith Weston\";\"main\"\n\"2650225\";\"Edinburgh\";\"main\"\n\"2650225\";\"Caeredin\";\"other\"\n\"2650225\";\"Dinedin\";\"other\"\n\"2650225\";\"Dun Eideann\";\"other\"\n\"2650225\";\"Dùn Èideann\";\"other\"\n\"2650225\";\"Dún Éideann\";\"other\"\n\"2650225\";\"Edimborg\";\"other\"\n\"2650225\";\"Edimbourg\";\"other\"\n\"2650225\";\"Edimbourgo\";\"other\"\n\"2650225\";\"Edimburg\";\"other\"\n\"2650225\";\"Edimburgo\";\"other\"\n\"2650225\";\"Edimburgo - Dun Eideann\";\"other\"\n\"2650225\";\"Edimburgo - Dùn Èideann\";\"other\"\n\"2650225\";\"Edimburgu\";\"other\"\n\"2650225\";\"Edimburgum\";\"other\"\n\"2650225\";\"Edinborg\";\"other\"\n\"2650225\";\"Edinburg\";\"other\"\n\"2650225\";\"Edinburga\";\"other\"\n\"2650225\";\"Edinburgas\";\"other\"\n\"2650225\";\"Edinburgo\";\"other\"\n\"2650225\";\"Edinburrie\";\"other\"\n\"2650225\";\"Edynburg\";\"other\"\n\"2650225\";\"Ehdinburg\";\"other\"\n\"2650225\";\"Embra\";\"other\"\n\"2650225\";\"adynbwrg\";\"other\"\n\"2650225\";\"ai ding bao\";\"other\"\n\"2650225\";\"edeunbeoleo\";\"other\"\n\"2650225\";\"edinabara\";\"other\"\n\"2650225\";\"edinbara\";\"other\"\n\"2650225\";\"xedinbara\";\"other\"\n\"2650225\";\"Édimbourg\";\"other\"\n\"2650225\";\"Εδιμβούργο\";\"other\"\n\"2650225\";\"Единбург\";\"other\"\n\"2650225\";\"Эдинбург\";\"other\"\n\"2650225\";\"אדינבורו\";\"other\"\n\"2650225\";\"ئېدىنبۇرگ\";\"other\"\n\"2650225\";\"ادینبورگ\";\"other\"\n\"2650225\";\"एडिनबरा\";\"other\"\n\"2650225\";\"এডিনবরা\";\"other\"\n\"2650225\";\"เอดินบะระ\";\"other\"\n\"2650225\";\"エディンバラ\";\"other\"\n\"2650225\";\"爱丁堡\";\"other\"\n\"2650225\";\"에든버러\";\"other\"\n\"2650244\";\"Edenfield\";\"main\"\n\"2650246\";\"Edenbridge\";\"main\"\n\"2650274\";\"Eccleshall\";\"main\"\n\"2650278\";\"Eccles\";\"main\"\n\"2650285\";\"Ebbw Vale\";\"main\"\n\"2650293\";\"Eaton Socon\";\"main\"\n\"2650295\";\"Eaton Bray\";\"main\"\n\"2650309\";\"Eastwood\";\"main\"\n\"2650311\";\"East Wittering\";\"main\"\n\"2650314\";\"East Wemyss\";\"main\"\n\"2650341\";\"Eastry\";\"main\"\n\"2650346\";\"Retford\";\"main\"\n\"2650357\";\"East Peckham\";\"main\"\n\"2650368\";\"Easton\";\"main\"\n\"2650392\";\"East Linton\";\"main\"\n\"2650396\";\"Eastleigh\";\"main\"\n\"2650397\";\"East Leake\";\"main\"\n\"2650405\";\"East Kilbride\";\"main\"\n\"2650405\";\"East Kilbridge\";\"other\"\n\"2650411\";\"East Horsley\";\"main\"\n\"2650411\";\"Horsley\";\"other\"\n\"2650424\";\"East Harling\";\"main\"\n\"2650435\";\"East Grinstead\";\"main\"\n\"2650470\";\"East Dereham\";\"main\"\n\"2650470\";\"Dereham\";\"other\"\n\"2650471\";\"East Dean\";\"main\"\n\"2650484\";\"East Chevington\";\"main\"\n\"2650489\";\"East Calder\";\"main\"\n\"2650495\";\"East Bridgford\";\"main\"\n\"2650497\";\"Eastbourne\";\"main\"\n\"2650497\";\"Istborn\";\"other\"\n\"2650497\";\"Истборн\";\"other\"\n\"2650499\";\"East Bergholt\";\"main\"\n\"2650517\";\"Easingwold\";\"main\"\n\"2650519\";\"Easington\";\"main\"\n\"2650541\";\"Earlston\";\"main\"\n\"2650550\";\"Earls Colne\";\"main\"\n\"2650552\";\"Earls Barton\";\"main\"\n\"2650558\";\"Earith\";\"main\"\n\"2650563\";\"Earby\";\"main\"\n\"2650572\";\"Eaglesham\";\"main\"\n\"2650584\";\"Dyserth\";\"main\"\n\"2650589\";\"Dymchurch\";\"main\"\n\"2650601\";\"Dyce\";\"main\"\n\"2650605\";\"Duxford\";\"main\"\n\"2650613\";\"Dursley\";\"main\"\n\"2650628\";\"Durham\";\"main\"\n\"2650628\";\"Darem\";\"other\"\n\"2650628\";\"Dunelm\";\"other\"\n\"2650628\";\"Dunholm\";\"other\"\n\"2650628\";\"Dūnholm\";\"other\"\n\"2650628\";\"Дарем\";\"other\"\n\"2650628\";\"เดอแรม\";\"other\"\n\"2650646\";\"Duntocher\";\"main\"\n\"2650649\";\"Dunswell\";\"main\"\n\"2650657\";\"Dunstable\";\"main\"\n\"2650673\";\"Duns\";\"main\"\n\"2650681\";\"Dunoon\";\"main\"\n\"2650686\";\"Dunnington\";\"main\"\n\"2650709\";\"Dunloy\";\"main\"\n\"2650712\";\"Dunkirk\";\"main\"\n\"2650718\";\"Dunipace\";\"main\"\n\"2650721\";\"Dunholme\";\"main\"\n\"2650721\";\"Dunholm\";\"other\"\n\"2650726\";\"Dungiven\";\"main\"\n\"2650729\";\"Dungannon\";\"main\"\n\"2650732\";\"Dunfermline\";\"main\"\n\"2650732\";\"Danfermlin\";\"other\"\n\"2650732\";\"Данфермлин\";\"other\"\n\"2650739\";\"Dundrum\";\"main\"\n\"2650748\";\"Dundonald\";\"main\"\n\"2650752\";\"Dundee\";\"main\"\n\"2650752\";\"Dandi\";\"other\"\n\"2650752\";\"Dun Deagh\";\"other\"\n\"2650752\";\"Dundi\";\"other\"\n\"2650752\";\"Dùn Dèagh\";\"other\"\n\"2650752\";\"dandi\";\"other\"\n\"2650752\";\"dandy\";\"other\"\n\"2650752\";\"deng di\";\"other\"\n\"2650752\";\"Данди\";\"other\"\n\"2650752\";\"Дънди\";\"other\"\n\"2650752\";\"داندی\";\"other\"\n\"2650752\";\"ダンディー\";\"other\"\n\"2650752\";\"邓迪\";\"other\"\n\"2650761\";\"Dunchurch\";\"main\"\n\"2650769\";\"Dunblane\";\"main\"\n\"2650776\";\"Dunbar\";\"main\"\n\"2650802\";\"Dumbarton\";\"main\"\n\"2650802\";\"Dambarton\";\"other\"\n\"2650802\";\"Дамбартон\";\"other\"\n\"2650815\";\"Dukinfield\";\"main\"\n\"2650833\";\"Dufftown\";\"main\"\n\"2650836\";\"Duffield\";\"main\"\n\"2650839\";\"Dudley\";\"main\"\n\"2650839\";\"Dadli\";\"other\"\n\"2650839\";\"Дадли\";\"other\"\n\"2650848\";\"Ducklington\";\"main\"\n\"2650901\";\"Drybrook\";\"main\"\n\"2650962\";\"Droylsden\";\"main\"\n\"2650962\";\"Droylesden\";\"other\"\n\"2650967\";\"Dronfield\";\"main\"\n\"2650976\";\"Dromore\";\"main\"\n\"2650983\";\"Droitwich\";\"main\"\n\"2650996\";\"Dreghorn\";\"main\"\n\"2651013\";\"Draperstown\";\"main\"\n\"2651020\";\"Downton\";\"main\"\n\"2651023\";\"Downpatrick\";\"main\"\n\"2651030\";\"Downham Market\";\"main\"\n\"2651048\";\"Dover\";\"main\"\n\"2651048\";\"Dofere\";\"other\"\n\"2651048\";\"Douvres\";\"other\"\n\"2651048\";\"Dovero\";\"other\"\n\"2651048\";\"Dubris\";\"other\"\n\"2651048\";\"Duvr\";\"other\"\n\"2651048\";\"doba\";\"other\"\n\"2651048\";\"dobeo\";\"other\"\n\"2651048\";\"duo fu er\";\"other\"\n\"2651048\";\"dwbr\";\"other\"\n\"2651048\";\"dwfr\";\"other\"\n\"2651048\";\"Дувр\";\"other\"\n\"2651048\";\"דובר\";\"other\"\n\"2651048\";\"آبنائے ڈوور\";\"other\"\n\"2651048\";\"دوفر\";\"other\"\n\"2651048\";\"ドーバー\";\"other\"\n\"2651048\";\"多佛尔\";\"other\"\n\"2651048\";\"도버\";\"other\"\n\"2651060\";\"Doune\";\"main\"\n\"2651073\";\"Douglas\";\"main\"\n\"2651088\";\"Dornoch\";\"main\"\n\"2651095\";\"Dorking\";\"main\"\n\"2651101\";\"Dorchester\";\"main\"\n\"2651101\";\"Dornwara ceaster\";\"other\"\n\"2651117\";\"Donisthorpe\";\"main\"\n\"2651119\";\"Donington\";\"main\"\n\"2651123\";\"Doncaster\";\"main\"\n\"2651123\";\"Donkaster\";\"other\"\n\"2651123\";\"donkasuta\";\"other\"\n\"2651123\";\"dxn khas texr\";\"other\"\n\"2651123\";\"Донкастер\";\"other\"\n\"2651123\";\"ดอนคาสเตอร์\";\"other\"\n\"2651123\";\"ドンカスター\";\"other\"\n\"2651133\";\"Donaghadee\";\"main\"\n\"2651151\";\"Dollar\";\"main\"\n\"2651154\";\"Dolgellau\";\"main\"\n\"2651154\";\"Dolgelley\";\"other\"\n\"2651154\";\"Dolgelly\";\"other\"\n\"2651172\";\"Dodworth\";\"main\"\n\"2651181\";\"Doddington\";\"main\"\n\"2651198\";\"Doagh\";\"main\"\n\"2651210\";\"Ditchingham\";\"main\"\n\"2651213\";\"Distington\";\"main\"\n\"2651214\";\"Diss\";\"main\"\n\"2651215\";\"Disley\";\"main\"\n\"2651241\";\"Dinnington\";\"main\"\n\"2651245\";\"Dingwall\";\"main\"\n\"2651248\";\"Dinas Powys\";\"main\"\n\"2651248\";\"Dinas Powis\";\"other\"\n\"2651263\";\"Diggle\";\"main\"\n\"2651269\";\"Didcot\";\"main\"\n\"2651286\";\"Dewsbury\";\"main\"\n\"2651286\";\"D'jusberi\";\"other\"\n\"2651286\";\"Drewsbury\";\"other\"\n\"2651286\";\"Дьюсбери\";\"other\"\n\"2651294\";\"Devizes\";\"main\"\n\"2651309\";\"Desford\";\"main\"\n\"2651311\";\"Desborough\";\"main\"\n\"2651324\";\"Dersingham\";\"main\"\n\"2651347\";\"Derby\";\"main\"\n\"2651347\";\"Derbi\";\"other\"\n\"2651347\";\"dabi\";\"other\"\n\"2651347\";\"dyrby\";\"other\"\n\"2651347\";\"Дерби\";\"other\"\n\"2651347\";\"ديربي\";\"other\"\n\"2651347\";\"ダービー\";\"other\"\n\"2651357\";\"Denton\";\"main\"\n\"2651366\";\"Denny\";\"main\"\n\"2651374\";\"Denholme\";\"main\"\n\"2651378\";\"Denham\";\"main\"\n\"2651382\";\"Denby Dale\";\"main\"\n\"2651386\";\"Denbigh\";\"main\"\n\"2651386\";\"Dinbych\";\"other\"\n\"2651407\";\"Deganwy\";\"main\"\n\"2651435\";\"Deddington\";\"main\"\n\"2651436\";\"Debenham\";\"main\"\n\"2651446\";\"Dearham\";\"main\"\n\"2651461\";\"Deanshanger\";\"main\"\n\"2651461\";\"Denshanger\";\"other\"\n\"2651474\";\"Dawlish\";\"main\"\n\"2651485\";\"Daventry\";\"main\"\n\"2651485\";\"Daventri\";\"other\"\n\"2651485\";\"Давентри\";\"other\"\n\"2651492\";\"Datchet\";\"main\"\n\"2651495\";\"Darwen\";\"main\"\n\"2651495\";\"Darven\";\"other\"\n\"2651495\";\"Дарвен\";\"other\"\n\"2651496\";\"Darvel\";\"main\"\n\"2651497\";\"Darton\";\"main\"\n\"2651498\";\"Dartmouth\";\"main\"\n\"2651500\";\"Dartford\";\"main\"\n\"2651500\";\"Dartforde\";\"other\"\n\"2651500\";\"Дартфорде\";\"other\"\n\"2651513\";\"Darlington\";\"main\"\n\"2651513\";\"Дарлингтон\";\"other\"\n\"2651520\";\"Darfield\";\"main\"\n\"2651520\";\"Darsfield\";\"other\"\n\"2651521\";\"Daresbury\";\"main\"\n\"2651521\";\"Dehrsbjori\";\"other\"\n\"2651521\";\"Дэрсбёри\";\"other\"\n\"2651532\";\"Danbury\";\"main\"\n\"2651551\";\"Dalton in Furness\";\"main\"\n\"2651551\";\"Dalton\";\"other\"\n\"2651559\";\"Dalrymple\";\"main\"\n\"2651561\";\"Dalry\";\"main\"\n\"2651587\";\"Dalkeith\";\"main\"\n\"2651587\";\"Dalkit\";\"other\"\n\"2651587\";\"Далкит\";\"other\"\n\"2651609\";\"Dalbeattie\";\"main\"\n\"2651654\";\"Cwmbran\";\"main\"\n\"2651654\";\"Cwm-bran\";\"other\"\n\"2651654\";\"Cwm-brân\";\"other\"\n\"2651662\";\"Cuxton\";\"main\"\n\"2651676\";\"Cushendall\";\"main\"\n\"2651680\";\"Curry Rivel\";\"main\"\n\"2651685\";\"Currie\";\"main\"\n\"2651698\";\"Cupar\";\"main\"\n\"2651706\";\"Cumnock\";\"main\"\n\"2651715\";\"Cumbernauld\";\"main\"\n\"2651732\";\"Culmore\";\"main\"\n\"2651738\";\"Cullybackey\";\"main\"\n\"2651738\";\"Cullybacky\";\"other\"\n\"2651739\";\"Cullompton\";\"main\"\n\"2651748\";\"Cullingworth\";\"main\"\n\"2651753\";\"Cullen\";\"main\"\n\"2651763\";\"Culcheth\";\"main\"\n\"2651777\";\"Cuffley\";\"main\"\n\"2651778\";\"Cudworth\";\"main\"\n\"2651788\";\"Cuckfield\";\"main\"\n\"2651795\";\"Crynant\";\"main\"\n\"2651804\";\"Crumlin\";\"main\"\n\"2651831\";\"Crowthorne\";\"main\"\n\"2651843\";\"Crowland\";\"main\"\n\"2651843\";\"Croyland\";\"other\"\n\"2651852\";\"Crowborough\";\"main\"\n\"2651857\";\"Croston\";\"main\"\n\"2651864\";\"Crossmaglen\";\"main\"\n\"2651870\";\"Crosshouse\";\"main\"\n\"2651872\";\"Cross Hands\";\"main\"\n\"2651873\";\"Crossgates\";\"main\"\n\"2651876\";\"Crossgar\";\"main\"\n\"2651878\";\"Crossford\";\"main\"\n\"2651896\";\"Cropwell Bishop\";\"main\"\n\"2651927\";\"Cromford\";\"main\"\n\"2651930\";\"Cromer\";\"main\"\n\"2651948\";\"Crofton\";\"main\"\n\"2651952\";\"Croft\";\"main\"\n\"2651954\";\"Croft\";\"main\"\n\"2651971\";\"Cringleford\";\"main\"\n\"2651983\";\"Crieff\";\"main\"\n\"2651985\";\"Cricklade\";\"main\"\n\"2651994\";\"Criccieth\";\"main\"\n\"2652000\";\"Crewkerne\";\"main\"\n\"2652002\";\"Crewe\";\"main\"\n\"2652002\";\"Krju\";\"other\"\n\"2652002\";\"Крю\";\"other\"\n\"2652007\";\"Creswell\";\"main\"\n\"2652007\";\"Cresswell\";\"other\"\n\"2652030\";\"Creech Saint Michael\";\"main\"\n\"2652034\";\"Crediton\";\"main\"\n\"2652035\";\"Credenhill\";\"main\"\n\"2652053\";\"Crawley\";\"main\"\n\"2652053\";\"Krouli\";\"other\"\n\"2652053\";\"Кроули\";\"other\"\n\"2652061\";\"Craven Arms\";\"main\"\n\"2652082\";\"Cranleigh\";\"main\"\n\"2652087\";\"Cranfield\";\"main\"\n\"2652088\";\"Cranbrook\";\"main\"\n\"2652095\";\"Cramlington\";\"main\"\n\"2652095\";\"Kramlington\";\"other\"\n\"2652095\";\"Крамлингтон\";\"other\"\n\"2652176\";\"Coylton\";\"main\"\n\"2652181\";\"Coxhoe\";\"main\"\n\"2652198\";\"Cowie\";\"main\"\n\"2652204\";\"Cowes\";\"main\"\n\"2652204\";\"Kaus\";\"other\"\n\"2652204\";\"West Cowes\";\"other\"\n\"2652204\";\"Каус\";\"other\"\n\"2652207\";\"Cowdenbeath\";\"main\"\n\"2652209\";\"Cowbridge\";\"main\"\n\"2652209\";\"Pontfaen\";\"other\"\n\"2652209\";\"Y Bont-faen\";\"other\"\n\"2652221\";\"Coventry\";\"main\"\n\"2652221\";\"Koventri\";\"other\"\n\"2652221\";\"kao wen chui\";\"other\"\n\"2652221\";\"kovu~entori\";\"other\"\n\"2652221\";\"kwfntry\";\"other\"\n\"2652221\";\"qwbntry\";\"other\"\n\"2652221\";\"Ковентри\";\"other\"\n\"2652221\";\"קובנטרי\";\"other\"\n\"2652221\";\"كوفنتري\";\"other\"\n\"2652221\";\"コヴェントリー\";\"other\"\n\"2652221\";\"考文垂\";\"other\"\n\"2652236\";\"Coupar Angus\";\"main\"\n\"2652239\";\"Countesthorpe\";\"main\"\n\"2652269\";\"Cottenham\";\"main\"\n\"2652282\";\"Cotgrave\";\"main\"\n\"2652289\";\"Costessey\";\"main\"\n\"2652298\";\"Cosby\";\"main\"\n\"2652318\";\"Corsham\";\"main\"\n\"2652360\";\"Cornholme\";\"main\"\n\"2652381\";\"Corby\";\"main\"\n\"2652381\";\"Korbi\";\"other\"\n\"2652381\";\"Корби\";\"other\"\n\"2652382\";\"Corbridge\";\"main\"\n\"2652389\";\"Coppull\";\"main\"\n\"2652396\";\"Copmanthorpe\";\"main\"\n\"2652417\";\"Cookstown\";\"main\"\n\"2652422\";\"Cookley\";\"main\"\n\"2652423\";\"Cookham\";\"main\"\n\"2652426\";\"Conwy\";\"main\"\n\"2652426\";\"Aberconway\";\"other\"\n\"2652426\";\"Conway\";\"other\"\n\"2652426\";\"Konui\";\"other\"\n\"2652426\";\"Конуи\";\"other\"\n\"2652437\";\"Consett\";\"main\"\n\"2652437\";\"Consetti\";\"other\"\n\"2652437\";\"Konsett\";\"other\"\n\"2652437\";\"Консетт\";\"other\"\n\"2652439\";\"Conon Bridge\";\"main\"\n\"2652439\";\"Conan Bridge\";\"other\"\n\"2652445\";\"Connor\";\"main\"\n\"2652458\";\"Conisbrough\";\"main\"\n\"2652458\";\"Conisborough\";\"other\"\n\"2652461\";\"Coningsby\";\"main\"\n\"2652463\";\"Congresbury\";\"main\"\n\"2652464\";\"Congleton\";\"main\"\n\"2652464\";\"Konglton\";\"other\"\n\"2652464\";\"Конглтон\";\"other\"\n\"2652478\";\"Comrie\";\"main\"\n\"2652491\";\"Compton\";\"main\"\n\"2652502\";\"Comberton\";\"main\"\n\"2652505\";\"Comber\";\"main\"\n\"2652508\";\"Combe Martin\";\"main\"\n\"2652511\";\"Colyton\";\"main\"\n\"2652513\";\"Colwyn Bay\";\"main\"\n\"2652513\";\"Bae Colwyn\";\"other\"\n\"2652516\";\"Colwich\";\"main\"\n\"2652525\";\"Coltishall\";\"main\"\n\"2652546\";\"Colnbrook\";\"main\"\n\"2652558\";\"Collingham\";\"main\"\n\"2652577\";\"Colinton\";\"main\"\n\"2652585\";\"Colerne\";\"main\"\n\"2652586\";\"Coleraine\";\"main\"\n\"2652586\";\"Colepaine\";\"other\"\n\"2652586\";\"Cuil Rathain\";\"other\"\n\"2652586\";\"Cúil Rathain\";\"other\"\n\"2652586\";\"Kolrehjn\";\"other\"\n\"2652586\";\"Колрэйн\";\"other\"\n\"2652591\";\"Coleford\";\"main\"\n\"2652601\";\"Coldstream\";\"main\"\n\"2652617\";\"Cold Ash\";\"main\"\n\"2652618\";\"Colchester\";\"main\"\n\"2652618\";\"Kolchest\\\"r\";\"other\"\n\"2652618\";\"Колчестър\";\"other\"\n\"2652622\";\"Coity\";\"main\"\n\"2652622\";\"Coyty\";\"other\"\n\"2652640\";\"Coggeshall\";\"main\"\n\"2652648\";\"Coedpoeth\";\"main\"\n\"2652653\";\"Codsall\";\"main\"\n\"2652656\";\"Codicote\";\"main\"\n\"2652676\";\"Cockermouth\";\"main\"\n\"2652681\";\"Cockenzie\";\"main\"\n\"2652681\";\"Cockenzie and Port Seton\";\"other\"\n\"2652689\";\"Cobham\";\"main\"\n\"2652689\";\"Church Cobham\";\"other\"\n\"2652695\";\"Coates\";\"main\"\n\"2652698\";\"Coalville\";\"main\"\n\"2652703\";\"Coalisland\";\"main\"\n\"2652707\";\"Coalburn\";\"main\"\n\"2652730\";\"Clydebank\";\"main\"\n\"2652734\";\"Clydach\";\"main\"\n\"2652739\";\"Clutton\";\"main\"\n\"2652771\";\"Clowne\";\"main\"\n\"2652790\";\"Clophill\";\"main\"\n\"2652819\";\"Clitheroe\";\"main\"\n\"2652849\";\"Cliffe\";\"main\"\n\"2652849\";\"Cliffe-at-Hoo\";\"other\"\n\"2652861\";\"Clevedon\";\"main\"\n\"2652874\";\"Cleobury Mortimer\";\"main\"\n\"2652876\";\"Clenchwarton\";\"main\"\n\"2652877\";\"Cleland\";\"main\"\n\"2652885\";\"Cleethorpes\";\"main\"\n\"2652885\";\"Klitkhorps\";\"other\"\n\"2652885\";\"Клитхорпс\";\"other\"\n\"2652890\";\"Cleckheaton\";\"main\"\n\"2652891\";\"Cleator Moor\";\"main\"\n\"2652898\";\"Clayton West\";\"main\"\n\"2652898\";\"Clayton\";\"other\"\n\"2652899\";\"Clayton le Moors\";\"main\"\n\"2652899\";\"Clayton le Moor\";\"other\"\n\"2652908\";\"Claydon\";\"main\"\n\"2652941\";\"Clare\";\"main\"\n\"2652950\";\"Clapham\";\"main\"\n\"2652974\";\"Clacton-on-Sea\";\"main\"\n\"2652974\";\"Clacton\";\"other\"\n\"2652976\";\"Clackmannan\";\"main\"\n\"2652995\";\"Cirencester\";\"main\"\n\"2652995\";\"Cicester\";\"other\"\n\"2652997\";\"Cinderford\";\"main\"\n\"2653021\";\"Church Stretton\";\"main\"\n\"2653043\";\"Churchdown\";\"main\"\n\"2653049\";\"Church\";\"main\"\n\"2653056\";\"Chudleigh\";\"main\"\n\"2653060\";\"Chryston\";\"main\"\n\"2653075\";\"Christchurch\";\"main\"\n\"2653075\";\"Krajstcherch\";\"other\"\n\"2653075\";\"Крайстчерч\";\"other\"\n\"2653085\";\"Chorleywood\";\"main\"\n\"2653086\";\"Chorley\";\"main\"\n\"2653095\";\"Cholsey\";\"main\"\n\"2653109\";\"Chobham\";\"main\"\n\"2653128\";\"Chirnside\";\"main\"\n\"2653131\";\"Chirk\";\"main\"\n\"2653131\";\"Y Waun\";\"other\"\n\"2653137\";\"Chipping Sodbury\";\"main\"\n\"2653138\";\"Chipping Ongar\";\"main\"\n\"2653139\";\"Chipping Norton\";\"main\"\n\"2653140\";\"Chipping Campden\";\"main\"\n\"2653144\";\"Chippenham\";\"main\"\n\"2653144\";\"Chippenem\";\"other\"\n\"2653144\";\"Чиппенем\";\"other\"\n\"2653145\";\"Chinnor\";\"main\"\n\"2653147\";\"Chinley\";\"main\"\n\"2653149\";\"Chilworth\";\"main\"\n\"2653149\";\"Saint Martha\";\"other\"\n\"2653175\";\"Chilcompton\";\"main\"\n\"2653178\";\"Chigwell\";\"main\"\n\"2653183\";\"Chiddingfold\";\"main\"\n\"2653188\";\"Chickerell\";\"main\"\n\"2653188\";\"West Chickerel\";\"other\"\n\"2653192\";\"Chichester\";\"main\"\n\"2653192\";\"Чичестер\";\"other\"\n\"2653224\";\"Chester-le-Street\";\"main\"\n\"2653225\";\"Chesterfield\";\"main\"\n\"2653228\";\"Chester\";\"main\"\n\"2653228\";\"Caer\";\"other\"\n\"2653228\";\"Caerlleon\";\"other\"\n\"2653228\";\"Chestur\";\"other\"\n\"2653228\";\"Честер\";\"other\"\n\"2653228\";\"Честър\";\"other\"\n\"2653232\";\"Cheshunt\";\"main\"\n\"2653235\";\"Chesham\";\"main\"\n\"2653239\";\"Chertsey\";\"main\"\n\"2653256\";\"Chepstow\";\"main\"\n\"2653261\";\"Cheltenham\";\"main\"\n\"2653261\";\"cherutonamu\";\"other\"\n\"2653261\";\"チェルトナム\";\"other\"\n\"2653265\";\"Chelsea\";\"main\"\n\"2653266\";\"Chelmsford\";\"main\"\n\"2653266\";\"Челмсфорд\";\"other\"\n\"2653279\";\"Cheddleton\";\"main\"\n\"2653280\";\"Cheddington\";\"main\"\n\"2653281\";\"Cheddar\";\"main\"\n\"2653290\";\"Cheadle Hulme\";\"main\"\n\"2653298\";\"Chatteris\";\"main\"\n\"2653305\";\"Chatham\";\"main\"\n\"2653305\";\"Chatem\";\"other\"\n\"2653305\";\"Чатем\";\"other\"\n\"2653307\";\"Chasetown\";\"main\"\n\"2653310\";\"Chartham\";\"main\"\n\"2653324\";\"Charlton Kings\";\"main\"\n\"2653339\";\"Charlbury\";\"main\"\n\"2653343\";\"Charfield\";\"main\"\n\"2653346\";\"Chard\";\"main\"\n\"2653353\";\"Chapletown\";\"main\"\n\"2653357\";\"Chapel Saint Leonards\";\"main\"\n\"2653366\";\"Chapelhall\";\"main\"\n\"2653368\";\"Chapel en le Frith\";\"main\"\n\"2653391\";\"Chalgrove\";\"main\"\n\"2653392\";\"Chalford\";\"main\"\n\"2653393\";\"Chalfont Saint Peter\";\"main\"\n\"2653394\";\"Chalfont Saint Giles\";\"main\"\n\"2653424\";\"Ceres\";\"main\"\n\"2653463\";\"Cawthorne\";\"main\"\n\"2653499\";\"Catterick\";\"main\"\n\"2653500\";\"Catterall\";\"main\"\n\"2653504\";\"Catrine\";\"main\"\n\"2653505\";\"Caton\";\"main\"\n\"2653534\";\"Castlewellan\";\"main\"\n\"2653550\";\"Castleside\";\"main\"\n\"2653554\";\"Castlerock\";\"main\"\n\"2653558\";\"Castlereagh\";\"main\"\n\"2653584\";\"Castleford\";\"main\"\n\"2653590\";\"Castle Douglas\";\"main\"\n\"2653591\";\"Castle Donington\";\"main\"\n\"2653591\";\"Castle Donnington\";\"other\"\n\"2653594\";\"Castlederg\";\"main\"\n\"2653595\";\"Castledawson\";\"main\"\n\"2653601\";\"Castle Cary\";\"main\"\n\"2653634\";\"Carterton\";\"main\"\n\"2653656\";\"Carryduff\";\"main\"\n\"2653680\";\"Carrickfergus\";\"main\"\n\"2653701\";\"Carnwath\";\"main\"\n\"2653704\";\"Carnoustie\";\"main\"\n\"2653712\";\"Carnlough\";\"main\"\n\"2653715\";\"Carnforth\";\"main\"\n\"2653745\";\"Carmunnock\";\"main\"\n\"2653755\";\"Carmarthen\";\"main\"\n\"2653755\";\"Caerfyrddin\";\"other\"\n\"2653755\";\"Caermarthen\";\"other\"\n\"2653756\";\"Carluke\";\"main\"\n\"2653775\";\"Carlisle\";\"main\"\n\"2653775\";\"Caerliwelydd\";\"other\"\n\"2653775\";\"Cathair Luail\";\"other\"\n\"2653775\";\"Karlajl\";\"other\"\n\"2653775\";\"Карлайл\";\"other\"\n\"2653806\";\"Cardross\";\"main\"\n\"2653822\";\"Cardiff\";\"main\"\n\"2653822\";\"Caerdydd\";\"other\"\n\"2653822\";\"Kardiff\";\"other\"\n\"2653822\";\"Кардифф\";\"other\"\n\"2653824\";\"Cardenden\";\"main\"\n\"2653825\";\"Carcroft\";\"main\"\n\"2653845\";\"Capel Saint Mary\";\"main\"\n\"2653845\";\"Capel\";\"other\"\n\"2653877\";\"Canterbury\";\"main\"\n\"2653877\";\"Caergaint\";\"other\"\n\"2653877\";\"Cantorbery\";\"other\"\n\"2653877\";\"Cantorbéry\";\"other\"\n\"2653877\";\"Cantuaria\";\"other\"\n\"2653877\";\"Cantuária\";\"other\"\n\"2653877\";\"Cantwarebyrig\";\"other\"\n\"2653877\";\"Dorwitceaster\";\"other\"\n\"2653877\";\"Durovernum\";\"other\"\n\"2653877\";\"Durovernum Canticorum\";\"other\"\n\"2653877\";\"Kantaraborg\";\"other\"\n\"2653877\";\"Kenterberi\";\"other\"\n\"2653877\";\"kan te bo lei\";\"other\"\n\"2653877\";\"kantaberi\";\"other\"\n\"2653877\";\"kantrbyry\";\"other\"\n\"2653877\";\"qntrbry\";\"other\"\n\"2653877\";\"Кентербери\";\"other\"\n\"2653877\";\"קנטרברי\";\"other\"\n\"2653877\";\"كانتربيري\";\"other\"\n\"2653877\";\"カンタベリー\";\"other\"\n\"2653877\";\"堪特伯雷\";\"other\"\n\"2653883\";\"Cannock\";\"main\"\n\"2653883\";\"Kannok\";\"other\"\n\"2653883\";\"Каннок\";\"other\"\n\"2653910\";\"Campsall\";\"main\"\n\"2653915\";\"Campbeltown\";\"main\"\n\"2653927\";\"Camelford\";\"main\"\n\"2653941\";\"Cambridge\";\"main\"\n\"2653941\";\"Caergrawnt\";\"other\"\n\"2653941\";\"Cantabrigia\";\"other\"\n\"2653941\";\"Grantanbrycg\";\"other\"\n\"2653941\";\"Kejmbridzh\";\"other\"\n\"2653941\";\"Kembridz\";\"other\"\n\"2653941\";\"Kembridzas\";\"other\"\n\"2653941\";\"Kembridzh\";\"other\"\n\"2653941\";\"Kembridžas\";\"other\"\n\"2653941\";\"Kembrigo\";\"other\"\n\"2653941\";\"Kembriĝo\";\"other\"\n\"2653941\";\"jian qiao\";\"other\"\n\"2653941\";\"kambrydj\";\"other\"\n\"2653941\";\"keimbeuliji\";\"other\"\n\"2653941\";\"kenburijji\";\"other\"\n\"2653941\";\"khem bridc\";\"other\"\n\"2653941\";\"kmbryj\";\"other\"\n\"2653941\";\"qyymbrydg'\";\"other\"\n\"2653941\";\"Кеймбридж\";\"other\"\n\"2653941\";\"Кембридж\";\"other\"\n\"2653941\";\"Кембриџ\";\"other\"\n\"2653941\";\"Кембрідж\";\"other\"\n\"2653941\";\"קיימברידג'\";\"other\"\n\"2653941\";\"كامبريدج\";\"other\"\n\"2653941\";\"کمبریج\";\"other\"\n\"2653941\";\"เคมบริดจ์\";\"other\"\n\"2653941\";\"ケンブリッジ\";\"other\"\n\"2653941\";\"劍橋\";\"other\"\n\"2653941\";\"케임브리지\";\"other\"\n\"2653947\";\"Camberley\";\"main\"\n\"2653947\";\"Camberly\";\"other\"\n\"2653947\";\"Kemberli\";\"other\"\n\"2653947\";\"Кемберли\";\"other\"\n\"2653974\";\"Calne\";\"main\"\n\"2653989\";\"Callander\";\"main\"\n\"2654014\";\"Caldicot\";\"main\"\n\"2654020\";\"Caldercruix\";\"main\"\n\"2654043\";\"Caistor\";\"main\"\n\"2654044\";\"Caister-on-Sea\";\"main\"\n\"2654044\";\"Caister\";\"other\"\n\"2654044\";\"Caister next Yarmouth\";\"other\"\n\"2654054\";\"Cairnryan\";\"main\"\n\"2654066\";\"Cairneyhill\";\"main\"\n\"2654089\";\"Caerphilly\";\"main\"\n\"2654089\";\"Kerfili\";\"other\"\n\"2654089\";\"Керфили\";\"other\"\n\"2654092\";\"Caernarfon\";\"main\"\n\"2654092\";\"Carnarvon\";\"other\"\n\"2654093\";\"Caerleon\";\"main\"\n\"2654093\";\"Caerllion\";\"other\"\n\"2654095\";\"Caergwrle\";\"main\"\n\"2654107\";\"Cadnam\";\"main\"\n\"2654115\";\"Caddington\";\"main\"\n\"2654141\";\"Buxton\";\"main\"\n\"2654175\";\"Bushmills\";\"main\"\n\"2654179\";\"Bushey\";\"main\"\n\"2654184\";\"Busby\";\"main\"\n\"2654186\";\"Bury St Edmunds\";\"main\"\n\"2654186\";\"Bury Saint Edmunds\";\"other\"\n\"2654186\";\"Bury St\";\"other\"\n\"2654187\";\"Bury\";\"main\"\n\"2654194\";\"Burwell\";\"main\"\n\"2654199\";\"Burtonwood\";\"main\"\n\"2654200\";\"Burton upon Trent\";\"main\"\n\"2654200\";\"Burton-on-Trent\";\"other\"\n\"2654201\";\"Burton upon Stather\";\"main\"\n\"2654201\";\"Burton\";\"other\"\n\"2654208\";\"Burton Latimer\";\"main\"\n\"2654209\";\"Burton Joyce\";\"main\"\n\"2654216\";\"Burton\";\"main\"\n\"2654220\";\"Burstwick\";\"main\"\n\"2654226\";\"Bursledon\";\"main\"\n\"2654229\";\"Burry Port\";\"main\"\n\"2654252\";\"Burntwood\";\"main\"\n\"2654255\";\"Burntisland\";\"main\"\n\"2654260\";\"Burnopfield\";\"main\"\n\"2654264\";\"Burnley\";\"main\"\n\"2654264\";\"Bernli\";\"other\"\n\"2654264\";\"brnly\";\"other\"\n\"2654264\";\"Бернли\";\"other\"\n\"2654264\";\"ברנלי\";\"other\"\n\"2654265\";\"Burniston\";\"main\"\n\"2654270\";\"Burnham on Crouch\";\"main\"\n\"2654270\";\"Burnham\";\"other\"\n\"2654285\";\"Burley in Wharfedale\";\"main\"\n\"2654285\";\"Burley\";\"other\"\n\"2654298\";\"Burgh le Marsh\";\"main\"\n\"2654303\";\"Burghead\";\"main\"\n\"2654308\";\"Burgess Hill\";\"main\"\n\"2654308\";\"burgess hill\";\"other\"\n\"2654308\";\"west sussex\";\"other\"\n\"2654323\";\"Buntingford\";\"main\"\n\"2654327\";\"Bungay\";\"main\"\n\"2654357\";\"Bulford\";\"main\"\n\"2654359\";\"Builth Wells\";\"main\"\n\"2654359\";\"Builth\";\"other\"\n\"2654359\";\"Llanfair-ym-Muallt\";\"other\"\n\"2654371\";\"Bugle\";\"main\"\n\"2654372\";\"Bugbrooke\";\"main\"\n\"2654376\";\"Budleigh Salterton\";\"main\"\n\"2654376\";\"Budleigh\";\"other\"\n\"2654380\";\"Bude\";\"main\"\n\"2654394\";\"Buckley\";\"main\"\n\"2654410\";\"Buckingham\";\"main\"\n\"2654411\";\"Buckie\";\"main\"\n\"2654415\";\"Buckhaven\";\"main\"\n\"2654416\";\"Buckfastleigh\";\"main\"\n\"2654419\";\"Buckden\";\"main\"\n\"2654437\";\"Brynmawr\";\"main\"\n\"2654447\";\"Brynamman\";\"main\"\n\"2654450\";\"Brymbo\";\"main\"\n\"2654454\";\"Bruton\";\"main\"\n\"2654461\";\"Brundall\";\"main\"\n\"2654480\";\"Broxburn\";\"main\"\n\"2654490\";\"Brownhills\";\"main\"\n\"2654490\";\"Braunkhills\";\"other\"\n\"2654490\";\"Браунхиллс\";\"other\"\n\"2654502\";\"Broughton Astley\";\"main\"\n\"2654509\";\"Broughton\";\"main\"\n\"2654515\";\"Broughshane\";\"main\"\n\"2654532\";\"Brough\";\"main\"\n\"2654539\";\"Broseley\";\"main\"\n\"2654545\";\"Brora\";\"main\"\n\"2654578\";\"Bromyard\";\"main\"\n\"2654589\";\"Bromham\";\"main\"\n\"2654615\";\"Brockenhurst\";\"main\"\n\"2654628\";\"Broadway\";\"main\"\n\"2654635\";\"Broadstairs\";\"main\"\n\"2654657\";\"Broad Blunsdon\";\"main\"\n\"2654660\";\"Brixworth\";\"main\"\n\"2654663\";\"Brixham\";\"main\"\n\"2654668\";\"Briton Ferry\";\"main\"\n\"2654668\";\"Llansawel\";\"other\"\n\"2654673\";\"Briston\";\"main\"\n\"2654675\";\"Bristol\";\"main\"\n\"2654675\";\"Bricgstow\";\"other\"\n\"2654675\";\"Bricgstōw\";\"other\"\n\"2654675\";\"Bristo\";\"other\"\n\"2654675\";\"Bristol'\";\"other\"\n\"2654675\";\"Bryste\";\"other\"\n\"2654675\";\"brystwl\";\"other\"\n\"2654675\";\"bu li si tuo er\";\"other\"\n\"2654675\";\"burisutoru\";\"other\"\n\"2654675\";\"Бристол\";\"other\"\n\"2654675\";\"Бристоль\";\"other\"\n\"2654675\";\"بريستول\";\"other\"\n\"2654675\";\"ブリストル\";\"other\"\n\"2654675\";\"布里斯托尔\";\"other\"\n\"2654695\";\"Brimscombe\";\"main\"\n\"2654710\";\"Brighton\";\"main\"\n\"2654710\";\"Brajton\";\"other\"\n\"2654710\";\"Brajtono\";\"other\"\n\"2654710\";\"bra'itana\";\"other\"\n\"2654710\";\"braytwn\";\"other\"\n\"2654710\";\"bryytwn\";\"other\"\n\"2654710\";\"bu lai dun\";\"other\"\n\"2654710\";\"buraiton\";\"other\"\n\"2654710\";\"Брайтон\";\"other\"\n\"2654710\";\"ברייטון\";\"other\"\n\"2654710\";\"برايتون\";\"other\"\n\"2654710\";\"ব্রাইটন\";\"other\"\n\"2654710\";\"ブライトン\";\"other\"\n\"2654710\";\"布赖顿\";\"other\"\n\"2654711\";\"Brightlingsea\";\"main\"\n\"2654715\";\"Brighouse\";\"main\"\n\"2654721\";\"Brigg\";\"main\"\n\"2654725\";\"Brierfield\";\"main\"\n\"2654726\";\"Bridport\";\"main\"\n\"2654728\";\"Bridlington\";\"main\"\n\"2654730\";\"Bridgwater\";\"main\"\n\"2654730\";\"Bridgewater\";\"other\"\n\"2654730\";\"Bridzhuoter\";\"other\"\n\"2654730\";\"Бриджуотер\";\"other\"\n\"2654731\";\"Bridgnorth\";\"main\"\n\"2654736\";\"Bridge of Weir\";\"main\"\n\"2654742\";\"Bridge of Earn\";\"main\"\n\"2654747\";\"Bridge of Allan\";\"main\"\n\"2654767\";\"Brewood\";\"main\"\n\"2654782\";\"Brentwood\";\"main\"\n\"2654807\";\"Bredon\";\"main\"\n\"2654817\";\"Brecon\";\"main\"\n\"2654817\";\"Aberhonddu\";\"other\"\n\"2654817\";\"Brecknock\";\"other\"\n\"2654817\";\"Brycheiniog\";\"other\"\n\"2654824\";\"Brechin\";\"main\"\n\"2654832\";\"Bream\";\"main\"\n\"2654848\";\"Brayton\";\"main\"\n\"2654848\";\"Brajton\";\"other\"\n\"2654848\";\"Брайтон\";\"other\"\n\"2654858\";\"Braunton\";\"main\"\n\"2654883\";\"Bransgore\";\"main\"\n\"2654897\";\"Brandon\";\"main\"\n\"2654924\";\"Bramley\";\"main\"\n\"2654925\";\"Bramhope\";\"main\"\n\"2654926\";\"Bramham\";\"main\"\n\"2654928\";\"Bramford\";\"main\"\n\"2654938\";\"Braintree\";\"main\"\n\"2654979\";\"Bradninch\";\"main\"\n\"2654990\";\"Brading\";\"main\"\n\"2654991\";\"Bradford-on-Avon\";\"main\"\n\"2654993\";\"Bradford\";\"main\"\n\"2654993\";\"Brehdford\";\"other\"\n\"2654993\";\"Брэдфорд\";\"other\"\n\"2655009\";\"Bracknell\";\"main\"\n\"2655012\";\"Brackley\";\"main\"\n\"2655026\";\"Bozeat\";\"main\"\n\"2655043\";\"Boxgrove\";\"main\"\n\"2655047\";\"Bow Street\";\"main\"\n\"2655069\";\"Bowdon\";\"main\"\n\"2655078\";\"Bovington Camp\";\"main\"\n\"2655079\";\"Bovingdon\";\"main\"\n\"2655081\";\"Bovey Tracey\";\"main\"\n\"2655087\";\"Bourton on the Water\";\"main\"\n\"2655095\";\"Bournemouth\";\"main\"\n\"2655095\";\"Bornmut\";\"other\"\n\"2655095\";\"bonmasu\";\"other\"\n\"2655095\";\"Борнмут\";\"other\"\n\"2655095\";\"ボーンマス\";\"other\"\n\"2655099\";\"Bourne\";\"main\"\n\"2655099\";\"Bourn\";\"other\"\n\"2655117\";\"Boughton\";\"main\"\n\"2655123\";\"Bottisham\";\"main\"\n\"2655128\";\"Botley\";\"main\"\n\"2655130\";\"Bothwell\";\"main\"\n\"2655134\";\"Botesdale\";\"main\"\n\"2655136\";\"Boston Spa\";\"main\"\n\"2655138\";\"Boston\";\"main\"\n\"2655138\";\"Бостон\";\"other\"\n\"2655143\";\"Bosham\";\"main\"\n\"2655168\";\"Borrowash\";\"main\"\n\"2655172\";\"Borough Green\";\"main\"\n\"2655173\";\"Boroughbridge\";\"main\"\n\"2655186\";\"Borehamwood\";\"main\"\n\"2655188\";\"Boreham\";\"main\"\n\"2655198\";\"Bootle\";\"main\"\n\"2655198\";\"Butl\";\"other\"\n\"2655198\";\"Бутл\";\"other\"\n\"2655210\";\"Bonnyrigg\";\"main\"\n\"2655211\";\"Bonnybridge\";\"main\"\n\"2655214\";\"Bonhill\";\"main\"\n\"2655230\";\"Bolton upon Dearne\";\"main\"\n\"2655232\";\"Bolton le Sands\";\"main\"\n\"2655237\";\"Bolton\";\"main\"\n\"2655237\";\"Болтон\";\"other\"\n\"2655242\";\"Bolsover\";\"main\"\n\"2655245\";\"Bollington\";\"main\"\n\"2655250\";\"Boldon\";\"main\"\n\"2655262\";\"Bognor Regis\";\"main\"\n\"2655262\";\"Bognor\";\"other\"\n\"2655273\";\"Bodmin\";\"main\"\n\"2655283\";\"Bodelwyddan\";\"main\"\n\"2655288\";\"Boddam\";\"main\"\n\"2655315\";\"Blyth\";\"main\"\n\"2655315\";\"Blit\";\"other\"\n\"2655315\";\"Blythe\";\"other\"\n\"2655315\";\"Блит\";\"other\"\n\"2655331\";\"Bloxham\";\"main\"\n\"2655341\";\"Blisworth\";\"main\"\n\"2655346\";\"Blidworth\";\"main\"\n\"2655348\";\"Blewbury\";\"main\"\n\"2655351\";\"Bletchley\";\"main\"\n\"2655352\";\"Bletchingley\";\"main\"\n\"2655365\";\"Blean\";\"main\"\n\"2655369\";\"Blaydon\";\"main\"\n\"2655378\";\"Blandford Forum\";\"main\"\n\"2655378\";\"Blandford\";\"other\"\n\"2655394\";\"Blairgowrie\";\"main\"\n\"2655413\";\"Blaenavon\";\"main\"\n\"2655414\";\"Blaenau-Ffestiniog\";\"main\"\n\"2655414\";\"Blaenau Festiniog\";\"other\"\n\"2655418\";\"Blackwood\";\"main\"\n\"2655420\";\"Blackwell\";\"main\"\n\"2655454\";\"Blackrod\";\"main\"\n\"2655459\";\"Blackpool\";\"main\"\n\"2655459\";\"Blehkpul\";\"other\"\n\"2655459\";\"Blekpulis\";\"other\"\n\"2655459\";\"burakkupuru\";\"other\"\n\"2655459\";\"hei tan\";\"other\"\n\"2655459\";\"Блэкпул\";\"other\"\n\"2655459\";\"ব্ল্যাক্‌পুল\";\"other\"\n\"2655459\";\"ブラックプール\";\"other\"\n\"2655459\";\"黑潭\";\"other\"\n\"2655522\";\"Blackburn\";\"main\"\n\"2655523\";\"Blackburn\";\"main\"\n\"2655524\";\"Blackburn\";\"main\"\n\"2655524\";\"Blehkbern\";\"other\"\n\"2655524\";\"bu lai ke ben\";\"other\"\n\"2655524\";\"Блэкберн\";\"other\"\n\"2655524\";\"布莱克本\";\"other\"\n\"2655524\";\"布萊克本\";\"other\"\n\"2655532\";\"Blaby\";\"main\"\n\"2655548\";\"Bishopton\";\"main\"\n\"2655550\";\"Bishopthorpe\";\"main\"\n\"2655550\";\"Bishopthorne\";\"other\"\n\"2655551\";\"Bishops Waltham\";\"main\"\n\"2655556\";\"Bishopston\";\"main\"\n\"2655557\";\"Bishopstoke\";\"main\"\n\"2655558\";\"Bishopsteignton\";\"main\"\n\"2655562\";\"Bishops Stortford\";\"main\"\n\"2655562\";\"Bishop's Stortford\";\"other\"\n\"2655562\";\"Bishops Strotford\";\"other\"\n\"2655564\";\"Bishops Lydeard\";\"main\"\n\"2655582\";\"Bishopbriggs\";\"main\"\n\"2655583\";\"Bishop Auckland\";\"main\"\n\"2655583\";\"Bishop-Oklend\";\"other\"\n\"2655583\";\"Бишоп-Окленд\";\"other\"\n\"2655603\";\"Birmingham\";\"main\"\n\"2655603\";\"Birmingam\";\"other\"\n\"2655603\";\"Birmingem\";\"other\"\n\"2655603\";\"Birmingema\";\"other\"\n\"2655603\";\"Birmingemas\";\"other\"\n\"2655603\";\"Birminghamia\";\"other\"\n\"2655603\";\"Mpermincham\";\"other\"\n\"2655603\";\"bamingamu\";\"other\"\n\"2655603\";\"beoming-eom\";\"other\"\n\"2655603\";\"bo ming han\";\"other\"\n\"2655603\";\"bo ming han shi\";\"other\"\n\"2655603\";\"byrmyngam\";\"other\"\n\"2655603\";\"byrmynghham\";\"other\"\n\"2655603\";\"Μπέρμιγχαμ\";\"other\"\n\"2655603\";\"Бирмингам\";\"other\"\n\"2655603\";\"Бирмингем\";\"other\"\n\"2655603\";\"Бірмінгем\";\"other\"\n\"2655603\";\"ברמינגהאם\";\"other\"\n\"2655603\";\"بىرمىنگام\";\"other\"\n\"2655603\";\"بيرمينغهام\";\"other\"\n\"2655603\";\"เบอร์มิงแฮม\";\"other\"\n\"2655603\";\"バーミンガム\";\"other\"\n\"2655603\";\"伯明翰\";\"other\"\n\"2655603\";\"伯明翰市\";\"other\"\n\"2655603\";\"버밍엄\";\"other\"\n\"2655613\";\"Birkenhead\";\"main\"\n\"2655613\";\"Birkenkhed\";\"other\"\n\"2655613\";\"Penbedw\";\"other\"\n\"2655613\";\"Биркенхед\";\"other\"\n\"2655618\";\"Birdwell\";\"main\"\n\"2655622\";\"Birdham\";\"main\"\n\"2655624\";\"Bircotes\";\"main\"\n\"2655642\";\"Bingley\";\"main\"\n\"2655643\";\"Bingham\";\"main\"\n\"2655655\";\"Bilsthorpe\";\"main\"\n\"2655662\";\"Billingshurst\";\"main\"\n\"2655663\";\"Billinghay\";\"main\"\n\"2655664\";\"Billingham\";\"main\"\n\"2655664\";\"Billingem\";\"other\"\n\"2655664\";\"Billingham-on-Tees\";\"other\"\n\"2655664\";\"Биллингем\";\"other\"\n\"2655666\";\"Billinge\";\"main\"\n\"2655672\";\"Billericay\";\"main\"\n\"2655672\";\"Billerikej\";\"other\"\n\"2655672\";\"Биллерикей\";\"other\"\n\"2655689\";\"Biggleswade\";\"main\"\n\"2655690\";\"Biggin Hill\";\"main\"\n\"2655692\";\"Biggar\";\"main\"\n\"2655707\";\"Bideford\";\"main\"\n\"2655708\";\"Biddulph\";\"main\"\n\"2655718\";\"Bicknacre\";\"main\"\n\"2655718\";\"Bickacre\";\"other\"\n\"2655729\";\"Bicester\";\"main\"\n\"2655777\";\"Bexhill\";\"main\"\n\"2655777\";\"Bexhill on Sea\";\"other\"\n\"2655777\";\"Bexhill-on-Sea\";\"other\"\n\"2655781\";\"Bewdley\";\"main\"\n\"2655785\";\"Beverley\";\"main\"\n\"2655793\";\"Betws-y-coed\";\"main\"\n\"2655793\";\"Bettws-y-coed\";\"other\"\n\"2655800\";\"Betws\";\"main\"\n\"2655800\";\"Bettws\";\"other\"\n\"2655804\";\"Bethesda\";\"main\"\n\"2655819\";\"Berwick-Upon-Tweed\";\"main\"\n\"2655819\";\"Bervik-apon-Tvid\";\"other\"\n\"2655819\";\"Berwick\";\"other\"\n\"2655819\";\"Berwick on Tweed\";\"other\"\n\"2655819\";\"Berwick-upon-Tweed\";\"other\"\n\"2655819\";\"Бервик-апон-Твид\";\"other\"\n\"2655861\";\"Berkeley\";\"main\"\n\"2655864\";\"Bere Alston\";\"main\"\n\"2655882\";\"Bentley\";\"main\"\n\"2655886\";\"Benson\";\"main\"\n\"2655925\";\"Bembridge\";\"main\"\n\"2655942\";\"Belper\";\"main\"\n\"2655942\";\"Белпер\";\"other\"\n\"2655952\";\"Bellshill\";\"main\"\n\"2655974\";\"Bellaghy\";\"main\"\n\"2655984\";\"Belfast\";\"main\"\n\"2655984\";\"Beal Feirste\";\"other\"\n\"2655984\";\"Behlfast\";\"other\"\n\"2655984\";\"Belfast City\";\"other\"\n\"2655984\";\"Belfasta\";\"other\"\n\"2655984\";\"Belfasto\";\"other\"\n\"2655984\";\"Belffast\";\"other\"\n\"2655984\";\"Belfāsta\";\"other\"\n\"2655984\";\"Beul-Feirste\";\"other\"\n\"2655984\";\"Béal Feirste\";\"other\"\n\"2655984\";\"Mpelphast\";\"other\"\n\"2655984\";\"baelpaseuteu\";\"other\"\n\"2655984\";\"bei er fa si te\";\"other\"\n\"2655984\";\"belpaseuteu\";\"other\"\n\"2655984\";\"berufasuto\";\"other\"\n\"2655984\";\"blfast\";\"other\"\n\"2655984\";\"Μπέλφαστ\";\"other\"\n\"2655984\";\"Белфаст\";\"other\"\n\"2655984\";\"Бэлфаст\";\"other\"\n\"2655984\";\"בלפאסט\";\"other\"\n\"2655984\";\"بلفاست\";\"other\"\n\"2655984\";\"ベルファスト\";\"other\"\n\"2655984\";\"貝爾法斯特\";\"other\"\n\"2655984\";\"贝尔法斯特\";\"other\"\n\"2655984\";\"밸파스트\";\"other\"\n\"2655984\";\"벨파스트\";\"other\"\n\"2655994\";\"Beith\";\"main\"\n\"2656000\";\"Beighton\";\"main\"\n\"2656031\";\"Bedworth\";\"main\"\n\"2656031\";\"Bedvors\";\"other\"\n\"2656031\";\"Бедворс\";\"other\"\n\"2656033\";\"Bedwas\";\"main\"\n\"2656039\";\"Bedlington\";\"main\"\n\"2656046\";\"Bedford\";\"main\"\n\"2656046\";\"Бедфорд\";\"other\"\n\"2656051\";\"Bedale\";\"main\"\n\"2656067\";\"Beccles\";\"main\"\n\"2656070\";\"Bebington\";\"main\"\n\"2656070\";\"Bebington and Bromborough\";\"other\"\n\"2656073\";\"Beaumaris\";\"main\"\n\"2656076\";\"Beauly\";\"main\"\n\"2656086\";\"Bearsden\";\"main\"\n\"2656086\";\"New Kilpatrick\";\"other\"\n\"2656100\";\"Beaminster\";\"main\"\n\"2656120\";\"Beaconsfield\";\"main\"\n\"2656144\";\"Bawtry\";\"main\"\n\"2656161\";\"Battle\";\"main\"\n\"2656168\";\"Batley\";\"main\"\n\"2656169\";\"Bathgate\";\"main\"\n\"2656173\";\"Bath\";\"main\"\n\"2656173\";\"Aquae Sulis\";\"other\"\n\"2656173\";\"Ba\";\"other\"\n\"2656173\";\"Badanceaster\";\"other\"\n\"2656173\";\"Bat\";\"other\"\n\"2656173\";\"Baðanceaster\";\"other\"\n\"2656173\";\"Caerfaddon\";\"other\"\n\"2656173\";\"ba si\";\"other\"\n\"2656173\";\"basu\";\"other\"\n\"2656173\";\"bath\";\"other\"\n\"2656173\";\"Бат\";\"other\"\n\"2656173\";\"באת'\";\"other\"\n\"2656173\";\"باث\";\"other\"\n\"2656173\";\"バース\";\"other\"\n\"2656173\";\"巴斯\";\"other\"\n\"2656184\";\"Bassingbourn\";\"main\"\n\"2656192\";\"Basingstoke\";\"main\"\n\"2656193\";\"Basing\";\"main\"\n\"2656194\";\"Basildon\";\"main\"\n\"2656194\";\"Басилдон\";\"other\"\n\"2656206\";\"Barton upon Humber\";\"main\"\n\"2656206\";\"Barton\";\"other\"\n\"2656207\";\"Barton under Needwood\";\"main\"\n\"2656207\";\"Barton\";\"other\"\n\"2656212\";\"Barton-le-Clay\";\"main\"\n\"2656212\";\"Barton\";\"other\"\n\"2656235\";\"Barry\";\"main\"\n\"2656235\";\"Barri\";\"other\"\n\"2656235\";\"Y Barri\";\"other\"\n\"2656235\";\"Барри\";\"other\"\n\"2656239\";\"Barrow upon Soar\";\"main\"\n\"2656239\";\"Barrow\";\"other\"\n\"2656240\";\"Barrow upon Humber\";\"main\"\n\"2656240\";\"Barrow\";\"other\"\n\"2656240\";\"Barrow-on-Humber\";\"other\"\n\"2656241\";\"Barrow in Furness\";\"main\"\n\"2656241\";\"Barrow\";\"other\"\n\"2656241\";\"Barrow-in-Furness\";\"other\"\n\"2656243\";\"Barrowford\";\"main\"\n\"2656246\";\"Barrowby\";\"main\"\n\"2656258\";\"Barrhead\";\"main\"\n\"2656277\";\"Barnt Green\";\"main\"\n\"2656281\";\"Barnstaple\";\"main\"\n\"2656284\";\"Barnsley\";\"main\"\n\"2656284\";\"Barnsli\";\"other\"\n\"2656284\";\"Барнсли\";\"other\"\n\"2656287\";\"Barnoldswick\";\"main\"\n\"2656293\";\"Barnham\";\"main\"\n\"2656294\";\"Barnetby le Wold\";\"main\"\n\"2656294\";\"Barnetby\";\"other\"\n\"2656305\";\"Barnard Castle\";\"main\"\n\"2656311\";\"Barmouth\";\"main\"\n\"2656311\";\"Abermaw\";\"other\"\n\"2656311\";\"Y Bermo\";\"other\"\n\"2656322\";\"Barlestone\";\"main\"\n\"2656324\";\"Barlborough\";\"main\"\n\"2656325\";\"Barlaston\";\"main\"\n\"2656340\";\"Bargoed\";\"main\"\n\"2656354\";\"Bardsey\";\"main\"\n\"2656378\";\"Banwell\";\"main\"\n\"2656382\";\"Bannockburn\";\"main\"\n\"2656388\";\"Banks\";\"main\"\n\"2656391\";\"Bankfoot\";\"main\"\n\"2656396\";\"Bangor\";\"main\"\n\"2656396\";\"Beannchar\";\"other\"\n\"2656396\";\"Бангор\";\"other\"\n\"2656397\";\"Bangor\";\"main\"\n\"2656397\";\"Bangon\";\"other\"\n\"2656397\";\"Бангор\";\"other\"\n\"2656402\";\"Banff\";\"main\"\n\"2656405\";\"Banchory\";\"main\"\n\"2656406\";\"Banbury\";\"main\"\n\"2656406\";\"Banberi\";\"other\"\n\"2656406\";\"Банбери\";\"other\"\n\"2656407\";\"Banbridge\";\"main\"\n\"2656421\";\"Bampton\";\"main\"\n\"2656433\";\"Balsham\";\"main\"\n\"2656447\";\"Balmullo\";\"main\"\n\"2656454\";\"Balmedie\";\"main\"\n\"2656465\";\"Ballywalter\";\"main\"\n\"2656483\";\"Ballynahinch\";\"main\"\n\"2656488\";\"Ballymoney\";\"main\"\n\"2656490\";\"Ballymena\";\"main\"\n\"2656490\";\"Behllimena\";\"other\"\n\"2656490\";\"Бэллимена\";\"other\"\n\"2656500\";\"Ballykelly\";\"main\"\n\"2656509\";\"Ballygowan\";\"main\"\n\"2656528\";\"Ballyclare\";\"main\"\n\"2656531\";\"Ballycastle\";\"main\"\n\"2656531\";\"Baile an Chaistil\";\"other\"\n\"2656545\";\"Balloch\";\"main\"\n\"2656551\";\"Ballingry\";\"main\"\n\"2656557\";\"Ballinamallard\";\"main\"\n\"2656557\";\"Ballanamallard\";\"other\"\n\"2656565\";\"Ballater\";\"main\"\n\"2656575\";\"Balintore\";\"main\"\n\"2656584\";\"Balfron\";\"main\"\n\"2656586\";\"Balerno\";\"main\"\n\"2656594\";\"Baldock\";\"main\"\n\"2656615\";\"Bala\";\"main\"\n\"2656617\";\"Bakewell\";\"main\"\n\"2656627\";\"Baildon\";\"main\"\n\"2656632\";\"Bagshot\";\"main\"\n\"2656636\";\"Bagillt\";\"main\"\n\"2656636\";\"Bagilt\";\"other\"\n\"2656642\";\"Badsey\";\"main\"\n\"2656666\";\"Bacup\";\"main\"\n\"2656672\";\"Backworth\";\"main\"\n\"2656708\";\"Ayr\";\"main\"\n\"2656708\";\"Ajr\";\"other\"\n\"2656708\";\"Ayr - Inbhir Air\";\"other\"\n\"2656708\";\"Ayr - Inbhir Àir\";\"other\"\n\"2656708\";\"Ehjr\";\"other\"\n\"2656708\";\"Айр\";\"other\"\n\"2656708\";\"Эйр\";\"other\"\n\"2656713\";\"Aylsham\";\"main\"\n\"2656719\";\"Aylesbury\";\"main\"\n\"2656719\";\"AEgeles burg\";\"other\"\n\"2656719\";\"Ehjlsberi\";\"other\"\n\"2656719\";\"ai er si bo li\";\"other\"\n\"2656719\";\"Ægeles burg\";\"other\"\n\"2656719\";\"Эйлсбери\";\"other\"\n\"2656719\";\"艾爾斯伯里\";\"other\"\n\"2656725\";\"Axminster\";\"main\"\n\"2656730\";\"Axbridge\";\"main\"\n\"2656731\";\"Awsworth\";\"main\"\n\"2656752\";\"Aviemore\";\"main\"\n\"2656759\";\"Aveley\";\"main\"\n\"2656792\";\"Audley\";\"main\"\n\"2656794\";\"Auckley\";\"main\"\n\"2656799\";\"Auchtermuchty\";\"main\"\n\"2656803\";\"Auchterarder\";\"main\"\n\"2656818\";\"Auchinleck\";\"main\"\n\"2656833\";\"Atworth\";\"main\"\n\"2656837\";\"Attleborough\";\"main\"\n\"2656847\";\"Atherton\";\"main\"\n\"2656848\";\"Atherstone\";\"main\"\n\"2656855\";\"Astwood Bank\";\"main\"\n\"2656864\";\"Aston Clinton\";\"main\"\n\"2656891\";\"Aspatria\";\"main\"\n\"2656907\";\"Askern\";\"main\"\n\"2656908\";\"Askam in Furness\";\"main\"\n\"2656908\";\"Askam\";\"other\"\n\"2656914\";\"Ashurst\";\"main\"\n\"2656915\";\"Ashton-under-Lyne\";\"main\"\n\"2656915\";\"Ashton\";\"other\"\n\"2656915\";\"Ehshton-ander-Lajn\";\"other\"\n\"2656915\";\"Эштон-андер-Лайн\";\"other\"\n\"2656918\";\"Ashton in Makerfield\";\"main\"\n\"2656918\";\"Ashton\";\"other\"\n\"2656947\";\"Ashington\";\"main\"\n\"2656952\";\"Ashfordby\";\"main\"\n\"2656955\";\"Ashford\";\"main\"\n\"2656955\";\"Ehshford\";\"other\"\n\"2656955\";\"Эшфорд\";\"other\"\n\"2656970\";\"Ashby de la Zouch\";\"main\"\n\"2656977\";\"Ashburton\";\"main\"\n\"2656981\";\"Ashbourne\";\"main\"\n\"2656985\";\"Ash\";\"main\"\n\"2656992\";\"Ascot\";\"main\"\n\"2656997\";\"Arundel\";\"main\"\n\"2657029\";\"Arnside\";\"main\"\n\"2657030\";\"Arnold\";\"main\"\n\"2657030\";\"Arnol'd\";\"other\"\n\"2657030\";\"Арнольд\";\"other\"\n\"2657051\";\"Armthorpe\";\"main\"\n\"2657054\";\"Armitage\";\"main\"\n\"2657060\";\"Armagh\";\"main\"\n\"2657060\";\"Ard Mhacha\";\"other\"\n\"2657060\";\"ama\";\"other\"\n\"2657060\";\"アーマー\";\"other\"\n\"2657067\";\"Armadale\";\"main\"\n\"2657073\";\"Arlesey\";\"main\"\n\"2657073\";\"Arlesley\";\"other\"\n\"2657125\";\"Ardrossan\";\"main\"\n\"2657126\";\"Ardrishaig\";\"main\"\n\"2657182\";\"Ardglass\";\"main\"\n\"2657215\";\"Arbroath\";\"main\"\n\"2657216\";\"Arborfield\";\"main\"\n\"2657216\";\"Aberfield\";\"other\"\n\"2657224\";\"Appley Bridge\";\"main\"\n\"2657233\";\"Appledore\";\"main\"\n\"2657240\";\"Appleby\";\"main\"\n\"2657255\";\"Antrim\";\"main\"\n\"2657267\";\"Anstruther\";\"main\"\n\"2657267\";\"Anster\";\"other\"\n\"2657267\";\"West Anstruther\";\"other\"\n\"2657268\";\"Anstey\";\"main\"\n\"2657268\";\"Ansty\";\"other\"\n\"2657282\";\"Annfield Plain\";\"main\"\n\"2657293\";\"Annan\";\"main\"\n\"2657295\";\"Annalong\";\"main\"\n\"2657297\";\"Annahilt\";\"main\"\n\"2657324\";\"Andover\";\"main\"\n\"2657337\";\"Ampthill\";\"main\"\n\"2657345\";\"Ammanford\";\"main\"\n\"2657345\";\"Rhydaman\";\"other\"\n\"2657347\";\"Amlwch\";\"main\"\n\"2657355\";\"Amesbury\";\"main\"\n\"2657356\";\"Amersham\";\"main\"\n\"2657356\";\"Амершам\";\"other\"\n\"2657360\";\"Ambleside\";\"main\"\n\"2657362\";\"Amble\";\"main\"\n\"2657374\";\"Alyth\";\"main\"\n\"2657393\";\"Alveley\";\"main\"\n\"2657395\";\"Alvechurch\";\"main\"\n\"2657397\";\"Alva\";\"main\"\n\"2657402\";\"Altrincham\";\"main\"\n\"2657408\";\"Alton\";\"main\"\n\"2657430\";\"Alsager\";\"main\"\n\"2657432\";\"Alrewas\";\"main\"\n\"2657433\";\"Alresford\";\"main\"\n\"2657438\";\"Alnwick\";\"main\"\n\"2657438\";\"Almwick\";\"other\"\n\"2657445\";\"Alness\";\"main\"\n\"2657450\";\"Almondsbury\";\"main\"\n\"2657471\";\"Alloa\";\"main\"\n\"2657471\";\"Aloa\";\"other\"\n\"2657471\";\"Аллоа\";\"other\"\n\"2657471\";\"Алоа\";\"other\"\n\"2657476\";\"Allhallows\";\"main\"\n\"2657494\";\"Allanton\";\"main\"\n\"2657508\";\"Alfreton\";\"main\"\n\"2657508\";\"Алфретон\";\"other\"\n\"2657509\";\"Alford\";\"main\"\n\"2657511\";\"Alford\";\"main\"\n\"2657513\";\"Alexandria\";\"main\"\n\"2657528\";\"Aldridge\";\"main\"\n\"2657540\";\"Aldershot\";\"main\"\n\"2657548\";\"Alderholt\";\"main\"\n\"2657551\";\"Alderbury\";\"main\"\n\"2657557\";\"Aldeburgh\";\"main\"\n\"2657562\";\"Aldbourne\";\"main\"\n\"2657566\";\"Alcester\";\"main\"\n\"2657571\";\"Albrighton\";\"main\"\n\"2657592\";\"Airth\";\"main\"\n\"2657613\";\"Airdrie\";\"main\"\n\"2657634\";\"Ahoghill\";\"main\"\n\"2657668\";\"Adlington\";\"main\"\n\"2657676\";\"Addlestone\";\"main\"\n\"2657680\";\"Addingham\";\"main\"\n\"2657684\";\"Adderbury\";\"main\"\n\"2657696\";\"Acton\";\"main\"\n\"2657697\";\"Acton\";\"main\"\n\"2657704\";\"Acle\";\"main\"\n\"2657770\";\"Accrington\";\"main\"\n\"2657774\";\"Abram\";\"main\"\n\"2657775\";\"Aboyne\";\"main\"\n\"2657775\";\"Aboine\";\"other\"\n\"2657780\";\"Abingdon\";\"main\"\n\"2657780\";\"Abingdon-on-Thames\";\"other\"\n\"2657780\";\"Абингдон\";\"other\"\n\"2657782\";\"Aberystwyth\";\"main\"\n\"2657782\";\"Aberistuit\";\"other\"\n\"2657782\";\"a bo li si te wei si\";\"other\"\n\"2657782\";\"Аберистуит\";\"other\"\n\"2657782\";\"阿伯里斯特威斯\";\"other\"\n\"2657784\";\"Abertillery\";\"main\"\n\"2657789\";\"Aberporth\";\"main\"\n\"2657792\";\"Abernethy\";\"main\"\n\"2657804\";\"Aberkenfig\";\"main\"\n\"2657812\";\"Abergele\";\"main\"\n\"2657815\";\"Abergavenny\";\"main\"\n\"2657815\";\"Y Fenni\";\"other\"\n\"2657817\";\"Aberford\";\"main\"\n\"2657820\";\"Aberfeldy\";\"main\"\n\"2657829\";\"Aberdour\";\"main\"\n\"2657832\";\"Aberdeen\";\"main\"\n\"2657832\";\"Aberdin\";\"other\"\n\"2657832\";\"Aberdonia\";\"other\"\n\"2657832\";\"Aburdijn\";\"other\"\n\"2657832\";\"Aiberdeen\";\"other\"\n\"2657832\";\"Devanha\";\"other\"\n\"2657832\";\"Ehberdin\";\"other\"\n\"2657832\";\"Obar Dheathain\";\"other\"\n\"2657832\";\"a bo ding\";\"other\"\n\"2657832\";\"abadin\";\"other\"\n\"2657832\";\"abrdyn\";\"other\"\n\"2657832\";\"Абердин\";\"other\"\n\"2657832\";\"Абърдийн\";\"other\"\n\"2657832\";\"Эбердин\";\"other\"\n\"2657832\";\"ابردین\";\"other\"\n\"2657832\";\"アバディーン\";\"other\"\n\"2657832\";\"阿伯丁\";\"other\"\n\"2657835\";\"Aberdare\";\"main\"\n\"2657835\";\"Aberdar\";\"other\"\n\"2657835\";\"Aberdare - Aberdar\";\"other\"\n\"2657835\";\"Aberdare - Aberdâr\";\"other\"\n\"2657835\";\"Aberdehjr\";\"other\"\n\"2657835\";\"Aberdâr\";\"other\"\n\"2657835\";\"Абердэйр\";\"other\"\n\"2657839\";\"Aberchirder\";\"main\"\n\"2657844\";\"Abercarn\";\"main\"\n\"2657844\";\"Aberearne\";\"other\"\n\"2657845\";\"Abercanaid\";\"main\"\n\"2657850\";\"Aberaeron\";\"main\"\n\"2657850\";\"Aberayron\";\"other\"\n\"2657859\";\"Abbotts Ann\";\"main\"\n\"2657859\";\"Abbots Ann\";\"other\"\n\"3209552\";\"Benllech\";\"main\"\n\"3209584\";\"Crosby\";\"main\"\n\"3209953\";\"Overcombe\";\"main\"\n\"3210207\";\"Lynemouth\";\"main\"\n\"3236250\";\"Shiremoor\";\"main\"\n\"3345093\";\"Looe\";\"main\"\n\"3345095\";\"Pensilva\";\"main\"\n\"3345096\";\"Flexbury\";\"main\"\n\"3345150\";\"Glandwr\";\"main\"\n\"3345176\";\"Trimsaran\";\"main\"\n\"3345189\";\"Tumble\";\"main\"\n\"3345234\";\"Southgate\";\"main\"\n\"3345241\";\"Pontlliw\";\"main\"\n\"3345277\";\"Croeserw\";\"main\"\n\"3345278\";\"Pont Rhyd-y-cyff\";\"main\"\n\"3345279\";\"Price Town\";\"main\"\n\"3345280\";\"Ogmore Vale\";\"main\"\n\"3345315\";\"Abertridwr\";\"main\"\n\"3345316\";\"Beddau\";\"main\"\n\"3345317\";\"Blackwood\";\"main\"\n\"3345319\";\"Cwmbach\";\"main\"\n\"3345337\";\"Rogiet\";\"main\"\n\"3345375\";\"Woolavington\";\"main\"\n\"3345395\";\"Pucklechurch\";\"main\"\n\"3345396\";\"Peasedown Saint John\";\"main\"\n\"3345400\";\"Severn Beach\";\"main\"\n\"3345403\";\"Easton-in-Gordano\";\"main\"\n\"3345432\";\"Neston\";\"main\"\n\"3345437\";\"Camden Town\";\"main\"\n\"3345439\";\"Telford\";\"main\"\n\"3345439\";\"Телфорд\";\"other\"\n\"3345440\";\"Craigavon\";\"main\"\n\"3345440\";\"Krejgavon\";\"other\"\n\"3345440\";\"Крейгавон\";\"other\"\n\"6269323\";\"Hazlerigg\";\"main\"\n\"6269323\";\"Hazelrigg\";\"other\"\n\"6269326\";\"Lamesley\";\"main\"\n\"6269412\";\"East Keswick\";\"main\"\n\"6269591\";\"Barlby\";\"main\"\n\"6301921\";\"Kesgrave\";\"main\"\n\"6301958\";\"Blackmoorfoot\";\"main\"\n\"6301962\";\"Meltham Mills\";\"main\"\n\"6324514\";\"Polzeath\";\"main\"\n\"6324759\";\"Camblesforth\";\"main\"\n\"6453268\";\"Breighton\";\"main\"\n\"6457269\";\"Fontwell\";\"main\"\n\"6545174\";\"Kennington\";\"main\"\n\"6545175\";\"Holborn\";\"main\"\n\"6545177\";\"Camden Town\";\"main\"\n\"6545243\";\"Bayswater\";\"main\"\n\"6545250\";\"Lambeth\";\"main\"\n\"6545250\";\"Waterloo\";\"other\"\n\"6615508\";\"Tankerton\";\"main\"\n\"6615542\";\"Thorpe Hamlet\";\"main\"\n\"6615542\";\"Thorpe\";\"other\"\n\"6615590\";\"Cheadle Heath\";\"main\"\n\"6619695\";\"Cameley\";\"main\"\n\"6619766\";\"Bradley Cross\";\"main\"\n\"6619985\";\"Copthorne\";\"main\"\n\"6620306\";\"East Ayton\";\"main\"\n\"6620310\";\"Didsbury\";\"main\"\n\"6620337\";\"Hellaby\";\"main\"\n\"6620354\";\"Barham\";\"main\"\n\"6620355\";\"Bowthorpe\";\"main\"\n\"6620360\";\"Hedge End\";\"main\"\n\"6620426\";\"Churt\";\"main\"\n\"6620428\";\"Danby\";\"main\"\n\"6620444\";\"Gerrards Cross\";\"main\"\n\"6621541\";\"Maidenbower\";\"main\"\n\"6621542\";\"Furnace Green\";\"main\"\n\"6621545\";\"Broadfield\";\"main\"\n\"6621546\";\"Bewbush\";\"main\"\n\"6621547\";\"Gossops Green\";\"main\"\n\"6621548\";\"Langley Green\";\"main\"\n\"6640028\";\"Hale\";\"main\"\n\"6640065\";\"Bidford-on-avon\";\"main\"\n\"6690167\";\"Kings Hill\";\"main\"\n\"6690167\";\"Kent\";\"other\"\n\"6690171\";\"Boars Hill\";\"main\"\n\"6690565\";\"Crouch End\";\"main\"\n\"6690574\";\"Clerkenwell\";\"main\"\n\"6690581\";\"Belsize Park\";\"main\"\n\"6690590\";\"Barnsbury\";\"main\"\n\"6690591\";\"Little Chalfont\";\"main\"\n\"6690592\";\"Amersham on the Hill\";\"main\"\n\"6690593\";\"Barbican\";\"main\"\n\"6690602\";\"Battersea\";\"main\"\n\"6690801\";\"Grange Hill\";\"main\"\n\"6690802\";\"Collier Row\";\"main\"\n\"6690805\";\"Elm Park\";\"main\"\n\"6690806\";\"Cranham\";\"main\"\n\"6690808\";\"Chafford Hundred\";\"main\"\n\"6690812\";\"Chadwell St Mary\";\"main\"\n\"6690830\";\"Ditton Hill\";\"main\"\n\"6690831\";\"Hinchley Wood\";\"main\"\n\"6690863\";\"Hornchurch\";\"main\"\n\"6690865\";\"Hainault\";\"main\"\n\"6690867\";\"Ewell\";\"main\"\n\"6690868\";\"Harold Wood\";\"main\"\n\"6690869\";\"Chadwell Heath\";\"main\"\n\"6690870\";\"Becontree\";\"main\"\n\"6690871\";\"Dagenham\";\"main\"\n\"6690877\";\"Brixton\";\"main\"\n\"6690989\";\"Bethnal Green\";\"main\"\n\"6691216\";\"Cheetham Hill\";\"main\"\n\"6691219\";\"Failsworth\";\"main\"\n\"6691221\";\"Crumpsall\";\"main\"\n\"6691222\";\"Blackley\";\"main\"\n\"6691227\";\"Radcliffe\";\"main\"\n\"6691228\";\"Little Lever\";\"main\"\n\"6691235\";\"Heywood\";\"main\"\n\"6691235\";\"Monkey Town\";\"other\"\n\"6691237\";\"Hollingworth\";\"main\"\n\"6691238\";\"Littleborough\";\"main\"\n\"6691248\";\"Chorlton cum Hardy\";\"main\"\n\"6691248\";\"Chorlton\";\"other\"\n\"6691248\";\"Chorlton-cum-Hardy\";\"other\"\n\"6691251\";\"Burnage\";\"main\"\n\"6691252\";\"Fallowfield\";\"main\"\n\"6691253\";\"Heaton Chapel\";\"main\"\n\"6691255\";\"Haughton Green\";\"main\"\n\"6691257\";\"Hulme\";\"main\"\n\"6691766\";\"Longsight\";\"main\"\n\"6691884\";\"Heavitree\";\"main\"\n\"6691927\";\"Ferndown\";\"main\"\n\"6691951\";\"Clayton-le-Woods\";\"main\"\n\"6692336\";\"Billington\";\"main\"\n\"6692466\";\"Brixton Hill\";\"main\"\n\"6692918\";\"Featherstone\";\"main\"\n\"6692919\";\"Belmont\";\"main\"\n\"6692920\";\"Calcot\";\"main\"\n\"6692920\";\"Calcot Row\";\"other\"\n\"6693001\";\"Benwell\";\"main\"\n\"6693007\";\"Earl Shilton\";\"main\"\n\"6693100\";\"Bay Horse\";\"main\"\n\"6693201\";\"Adlington\";\"main\"\n\"6693203\";\"Colden Common\";\"main\"\n\"6693236\";\"Charvil\";\"main\"\n\"6693239\";\"Essington\";\"main\"\n\"6693242\";\"Bordon\";\"main\"\n\"6693245\";\"Knaphill\";\"main\"\n\"6693470\";\"Lytham St Annes\";\"main\"\n\"6693470\";\"St Annes\";\"other\"\n\"6693491\";\"Curdworth\";\"main\"\n\"6693510\";\"Little Hallingbury\";\"main\"\n\"6693608\";\"Hoole\";\"main\"\n\"6693626\";\"Eight Ash Green\";\"main\"\n\"6693668\";\"Larkfield\";\"main\"\n\"6693717\";\"Catcliffe\";\"main\"\n\"6693771\";\"Hadley Wood\";\"main\"\n\"6693776\";\"Greenhill\";\"main\"\n\"6693989\";\"Grappenhall\";\"main\"\n\"6694342\";\"Great Marton\";\"main\"\n\"6694830\";\"Eaglescliffe\";\"main\"\n\"6695204\";\"Barnwood\";\"main\"\n\"6695247\";\"Chapel Allerton\";\"main\"\n\"6695247\";\"Chapel A\";\"other\"\n\"6695249\";\"Ash\";\"main\"\n\"6695618\";\"Byram\";\"main\"\n\"6695618\";\"Byram cum Sutton\";\"other\"\n\"6696027\";\"Chiseldon\";\"main\"\n\"6696635\";\"Southchurch Village\";\"main\"\n\"6696772\";\"Darras Hall\";\"main\"\n\"6697318\";\"Bodle Street\";\"main\"\n\"6697318\";\"Bodle Street Green\";\"other\"\n\"6697375\";\"Donnington\";\"main\"\n\"6697497\";\"Babworth\";\"main\"\n\"6698329\";\"Appleton Thorn\";\"main\"\n\"6698330\";\"Guilden Sutton\";\"main\"\n\"6698331\";\"Blacon\";\"main\"\n\"6698373\";\"Chelmsley Wood\";\"main\"\n\"6930866\";\"Crawley Down\";\"main\"\n\"6931071\";\"Grange-over-Sands\";\"main\"\n\"6940294\";\"Gotherington\";\"main\"\n\"6940296\";\"Cowplain\";\"main\"\n\"6940518\";\"Canford Heath\";\"main\"\n\"6941037\";\"High Barnet\";\"main\"\n\"6941086\";\"Balsall Common\";\"main\"\n\"6941089\";\"Ingleton\";\"main\"\n\"6946746\";\"Penparcau\";\"main\"\n\"6947041\";\"Blackheath\";\"main\"\n\"6947164\";\"Stewartby\";\"main\"\n\"6947168\";\"Kempston Hardwick\";\"main\"\n\"6947729\";\"Bilsdale\";\"main\"\n\"6947746\";\"Alderney\";\"main\"\n\"6947750\";\"Hameldon Hill\";\"main\"\n\"6947756\";\"Mendip\";\"main\"\n\"6950979\";\"Eversley\";\"main\"\n\"7281592\";\"East Hampshire\";\"main\"\n\"7290015\";\"Lower Earley\";\"main\"\n\"7290614\";\"Bassetlaw District\";\"main\"\n\"7290614\";\"Bassetlaw\";\"other\"\n\"7291632\";\"Thurmaston\";\"main\"\n\"7302130\";\"Bartley Green\";\"main\"\n\"7302133\";\"Grimethorpe\";\"main\"\n\"7302135\";\"Abbey Wood\";\"main\"\n\"7303225\";\"headwood  Bolevad\";\"main\"\n\"7304130\";\"Grimbsy\";\"main\"\n\"7521859\";\"Seer Green\";\"main\"\n\"7535661\";\"London Borough of Harrow\";\"main\"\n\"7535661\";\"Harrow\";\"other\"\n\"3579833\";\"Victoria\";\"main\"\n\"3579833\";\"Grand Pauve\";\"other\"\n\"3579833\";\"Grand Pauvre\";\"other\"\n\"3579833\";\"Saint Mark\";\"other\"\n\"3579833\";\"Saint Mark Village\";\"other\"\n\"3579833\";\"Saint Marks\";\"other\"\n\"3579891\";\"Sauteurs\";\"main\"\n\"3579891\";\"Sautiers\";\"other\"\n\"3579925\";\"Saint George's\";\"main\"\n\"3579925\";\"Fort Royal\";\"other\"\n\"3579925\";\"Georgetown\";\"other\"\n\"3579925\";\"Grenada City\";\"other\"\n\"3579925\";\"Lewis\";\"other\"\n\"3579925\";\"Port Louis\";\"other\"\n\"3579925\";\"Port Royal\";\"other\"\n\"3579925\";\"Saint George\";\"other\"\n\"3579925\";\"Saint George.s\";\"other\"\n\"3579925\";\"Saint-Georges\";\"other\"\n\"3579925\";\"Sent Dzordzas\";\"other\"\n\"3579925\";\"Sent Džordžas\";\"other\"\n\"3579925\";\"Sent Tzortzes\";\"other\"\n\"3579925\";\"Sent-Dzhorzhes\";\"other\"\n\"3579925\";\"St Georges\";\"other\"\n\"3579925\";\"St. George's\";\"other\"\n\"3579925\";\"seinteujojiseu\";\"other\"\n\"3579925\";\"sentojojizu\";\"other\"\n\"3579925\";\"snt g'wrg'\";\"other\"\n\"3579925\";\"Σεντ Τζόρτζες\";\"other\"\n\"3579925\";\"Сент-Джоржес\";\"other\"\n\"3579925\";\"סנט ג'ורג'\";\"other\"\n\"3579925\";\"セントジョージズ\";\"other\"\n\"3579925\";\"세인트조지스\";\"other\"\n\"3579931\";\"Saint David’s\";\"main\"\n\"3579931\";\"Saint David's\";\"ascii\"\n\"3580236\";\"Grenville\";\"main\"\n\"3580236\";\"La Baye\";\"other\"\n\"3580279\";\"Gouyave\";\"main\"\n\"3580279\";\"Charlotte Town\";\"other\"\n\"3580279\";\"Gouave\";\"other\"\n\"3580279\";\"Goyave\";\"other\"\n\"3580279\";\"Guyave\";\"other\"\n\"584502\";\"Abastumani\";\"main\"\n\"610824\";\"Zugdidi\";\"main\"\n\"610824\";\"Sugdidi\";\"other\"\n\"610824\";\"ZUGDIDI\";\"other\"\n\"610824\";\"Zugdidis\";\"other\"\n\"610824\";\"zwgdydy\";\"other\"\n\"610824\";\"ЗУГДИДИ\";\"other\"\n\"610824\";\"Зугдиди\";\"other\"\n\"610824\";\"זוגדידי\";\"other\"\n\"610824\";\"ზუგდიდი\";\"other\"\n\"610849\";\"Zhinvali\";\"main\"\n\"610849\";\"ZHINVALI\";\"other\"\n\"610849\";\"Zhinvani\";\"other\"\n\"610849\";\"ЖИНВАЛИ\";\"other\"\n\"610864\";\"Zestap’oni\";\"main\"\n\"610864\";\"Zestap'oni\";\"ascii\"\n\"610864\";\"Dshugeli\";\"other\"\n\"610864\";\"Dzhugeli\";\"other\"\n\"610864\";\"Kvirily\";\"other\"\n\"610864\";\"Namaneva\";\"other\"\n\"610864\";\"Sestafoni\";\"other\"\n\"610864\";\"ZESTAFONI\";\"other\"\n\"610864\";\"Zestafoni\";\"other\"\n\"610864\";\"Zistafoni\";\"other\"\n\"610864\";\"ЗЕСТАФОНИ\";\"other\"\n\"611093\";\"Zahesi\";\"main\"\n\"611093\";\"Zages\";\"other\"\n\"611219\";\"Vani\";\"main\"\n\"611219\";\"Bzvani\";\"other\"\n\"611219\";\"VANI\";\"other\"\n\"611219\";\"ВАНИ\";\"other\"\n\"611230\";\"Vale\";\"main\"\n\"611230\";\"VALE\";\"other\"\n\"611230\";\"ВАЛЕ\";\"other\"\n\"611274\";\"Urek’i\";\"main\"\n\"611274\";\"Urek'i\";\"ascii\"\n\"611274\";\"UREKI\";\"other\"\n\"611274\";\"Ureki\";\"other\"\n\"611274\";\"УРЕКИ\";\"other\"\n\"611274\";\"ურეკი\";\"other\"\n\"611373\";\"Tsnori\";\"main\"\n\"611373\";\"CNORI\";\"other\"\n\"611373\";\"Sakobosubani\";\"other\"\n\"611373\";\"Tsnoristskali\";\"other\"\n\"611373\";\"ЦНОРИ\";\"other\"\n\"611398\";\"Tsqnet’i\";\"main\"\n\"611398\";\"Tsqnet'i\";\"ascii\"\n\"611398\";\"CKHNETI\";\"other\"\n\"611398\";\"Tskhneti\";\"other\"\n\"611398\";\"Tskneti\";\"other\"\n\"611398\";\"ЦХНЕТИ\";\"other\"\n\"611403\";\"Ts’khinvali\";\"main\"\n\"611403\";\"Ts'khinvali\";\"ascii\"\n\"611403\";\"Ckhinvali\";\"other\"\n\"611403\";\"Stalinir\";\"other\"\n\"611403\";\"Staliniri\";\"other\"\n\"611403\";\"Stavinir\";\"other\"\n\"611403\";\"Цхинвали\";\"other\"\n\"611492\";\"Tsinandali\";\"main\"\n\"611492\";\"Cinandali\";\"other\"\n\"611492\";\"Tsinondali\";\"other\"\n\"611492\";\"Цинандали\";\"other\"\n\"611548\";\"Tsalka\";\"main\"\n\"611548\";\"Barmaksiz\";\"other\"\n\"611548\";\"Barmaksus\";\"other\"\n\"611548\";\"Barmaksys\";\"other\"\n\"611548\";\"CALKA\";\"other\"\n\"611548\";\"Khram\";\"other\"\n\"611548\";\"ЦАЛКА\";\"other\"\n\"611551\";\"Tsalenjikha\";\"main\"\n\"611551\";\"CALENDZHIKHA\";\"other\"\n\"611551\";\"Tsalendzhikha\";\"other\"\n\"611551\";\"ЦАЛЕНДЖИХА\";\"other\"\n\"611551\";\"წალენჯიხა\";\"other\"\n\"611564\";\"Tsaghveri\";\"main\"\n\"611564\";\"CAGVERI\";\"other\"\n\"611564\";\"Kurgan Tsagveri\";\"other\"\n\"611564\";\"Tsagveri\";\"other\"\n\"611564\";\"ЦАГВЕРИ\";\"other\"\n\"611564\";\"წაღვერი\";\"other\"\n\"611583\";\"Tqvarch'eli\";\"main\"\n\"611583\";\"Tkuarchal\";\"other\"\n\"611583\";\"Tkvarcheli\";\"other\"\n\"611583\";\"Tkvarchely\";\"other\"\n\"611583\";\"Tkwartscheli\";\"other\"\n\"611583\";\"Ткуарчал\";\"other\"\n\"611584\";\"Tqibuli\";\"main\"\n\"611584\";\"TKIBULI\";\"other\"\n\"611584\";\"Tkibuli\";\"other\"\n\"611584\";\"Tkvibeli\";\"other\"\n\"611584\";\"Tkvibuli\";\"other\"\n\"611584\";\"Tkwibuli\";\"other\"\n\"611584\";\"ТКИБУЛИ\";\"other\"\n\"611674\";\"T’et’ri Tsqaro\";\"main\"\n\"611674\";\"T'et'ri Tsqaro\";\"ascii\"\n\"611674\";\"Agbulag\";\"other\"\n\"611674\";\"Agbulak\";\"other\"\n\"611674\";\"Agbulakh\";\"other\"\n\"611674\";\"Agbularh\";\"other\"\n\"611674\";\"Baly Kluch\";\"other\"\n\"611674\";\"Belyy-Klyuch\";\"other\"\n\"611674\";\"Tetri-Ckaro\";\"other\"\n\"611674\";\"Tetri-Tskaro\";\"other\"\n\"611674\";\"Тетри-Цкаро\";\"other\"\n\"611694\";\"T’elavi\";\"main\"\n\"611694\";\"T'elavi\";\"ascii\"\n\"611694\";\"TELAVI\";\"other\"\n\"611694\";\"Telav\";\"other\"\n\"611694\";\"Telavi\";\"other\"\n\"611694\";\"Telavis\";\"other\"\n\"611694\";\"Telawi\";\"other\"\n\"611694\";\"Telev\";\"other\"\n\"611694\";\"Thelavi\";\"other\"\n\"611694\";\"telavi\";\"other\"\n\"611694\";\"ТЕЛАВИ\";\"other\"\n\"611694\";\"Телави\";\"other\"\n\"611694\";\"თელავი\";\"other\"\n\"611717\";\"Tbilisi\";\"main\"\n\"611717\";\"Kalak\";\"other\"\n\"611717\";\"TBILISI\";\"other\"\n\"611717\";\"Tbilisi - tbilisi\";\"other\"\n\"611717\";\"Tbilisi - თბილისი\";\"other\"\n\"611717\";\"Tbilisis\";\"other\"\n\"611717\";\"Tbilissi\";\"other\"\n\"611717\";\"Tbilsi\";\"other\"\n\"611717\";\"Tblisi\";\"other\"\n\"611717\";\"Thbilisi\";\"other\"\n\"611717\";\"Tiblisi\";\"other\"\n\"611717\";\"Tiblîsî\";\"other\"\n\"611717\";\"Tiflis\";\"other\"\n\"611717\";\"Tiphlida\";\"other\"\n\"611717\";\"Tpilisi\";\"other\"\n\"611717\";\"Tíflis\";\"other\"\n\"611717\";\"di bi li si\";\"other\"\n\"611717\";\"tbilisi\";\"other\"\n\"611717\";\"tblysy\";\"other\"\n\"611717\";\"tbylysy\";\"other\"\n\"611717\";\"teubillisi\";\"other\"\n\"611717\";\"tflys\";\"other\"\n\"611717\";\"tobirishi\";\"other\"\n\"611717\";\"Τιφλίδα\";\"other\"\n\"611717\";\"Калак\";\"other\"\n\"611717\";\"ТБИЛИСИ\";\"other\"\n\"611717\";\"Тбилиси\";\"other\"\n\"611717\";\"Тбилисӣ\";\"other\"\n\"611717\";\"Тбілісі\";\"other\"\n\"611717\";\"טביליסי\";\"other\"\n\"611717\";\"تبليسي\";\"other\"\n\"611717\";\"تفلیس\";\"other\"\n\"611717\";\"তিবি‌লিসি\";\"other\"\n\"611717\";\"თბილისი\";\"other\"\n\"611717\";\"ትብሊሲ\";\"other\"\n\"611717\";\"トビリシ\";\"other\"\n\"611717\";\"第比利斯\";\"other\"\n\"611717\";\"트빌리시\";\"other\"\n\"611809\";\"Surami\";\"main\"\n\"611809\";\"SURAMI\";\"other\"\n\"611809\";\"Ssuromi\";\"other\"\n\"611809\";\"Suram\";\"other\"\n\"611809\";\"СУРАМИ\";\"other\"\n\"611847\";\"Sokhumi\";\"main\"\n\"611847\";\"Akva\";\"other\"\n\"611847\";\"SUKHUMI\";\"other\"\n\"611847\";\"Sochumi\";\"other\"\n\"611847\";\"Sohumi\";\"other\"\n\"611847\";\"Sohumkale\";\"other\"\n\"611847\";\"Soukhoumi\";\"other\"\n\"611847\";\"Ssuchum\";\"other\"\n\"611847\";\"Suchum\";\"other\"\n\"611847\";\"Suchumi\";\"other\"\n\"611847\";\"Suhhumi\";\"other\"\n\"611847\";\"Suhumi\";\"other\"\n\"611847\";\"Suhumo\";\"other\"\n\"611847\";\"Sujumi\";\"other\"\n\"611847\";\"Sukhum\";\"other\"\n\"611847\";\"Sukhumi\";\"other\"\n\"611847\";\"Suĥumo\";\"other\"\n\"611847\";\"su hu mi\";\"other\"\n\"611847\";\"sufumi\";\"other\"\n\"611847\";\"suhumi\";\"other\"\n\"611847\";\"swhwmy\";\"other\"\n\"611847\";\"Аҟəа\";\"other\"\n\"611847\";\"СУХУМИ\";\"other\"\n\"611847\";\"Сухум\";\"other\"\n\"611847\";\"Сухуми\";\"other\"\n\"611847\";\"סוחומי\";\"other\"\n\"611847\";\"スフミ\";\"other\"\n\"611847\";\"苏呼米\";\"other\"\n\"611847\";\"수후미\";\"other\"\n\"611902\";\"Sighnaghi\";\"main\"\n\"611902\";\"SIGNAKHI\";\"other\"\n\"611902\";\"Signagi\";\"other\"\n\"611902\";\"Signakh\";\"other\"\n\"611902\";\"Signakhi\";\"other\"\n\"611902\";\"Ssignachi\";\"other\"\n\"611902\";\"СИГНАХИ\";\"other\"\n\"611964\";\"Shorapani\";\"main\"\n\"611964\";\"Schorapani\";\"other\"\n\"611964\";\"Schorpani\";\"other\"\n\"611964\";\"Sharadan'\";\"other\"\n\"611964\";\"Sharadan’\";\"other\"\n\"611964\";\"Shorapan'\";\"other\"\n\"611964\";\"Shorapan’\";\"other\"\n\"611964\";\"Shorpani\";\"other\"\n\"612012\";\"Naghvarevi\";\"main\"\n\"612012\";\"SHAUMJANI\";\"other\"\n\"612012\";\"Saulaveri\";\"other\"\n\"612012\";\"Schaumjani\";\"other\"\n\"612012\";\"Shaumiani\";\"other\"\n\"612012\";\"Shaumyani\";\"other\"\n\"612012\";\"Shulaveri\";\"other\"\n\"612012\";\"Shulavery\";\"other\"\n\"612012\";\"ШАУМЯНИ\";\"other\"\n\"612053\";\"Senaki\";\"main\"\n\"612053\";\"Achal Senaki\";\"other\"\n\"612053\";\"Akhalsenaki\";\"other\"\n\"612053\";\"Micha-Zchakaja\";\"other\"\n\"612053\";\"Mikha Tskhakaya\";\"other\"\n\"612053\";\"Novo-Senaki\";\"other\"\n\"612053\";\"SENAKI\";\"other\"\n\"612053\";\"Tskhakaya\";\"other\"\n\"612053\";\"Tskhakuya\";\"other\"\n\"612053\";\"СЕНАКИ\";\"other\"\n\"612053\";\"სენაკი\";\"other\"\n\"612126\";\"Samtredia\";\"main\"\n\"612126\";\"SAMTREDIA\";\"other\"\n\"612126\";\"Ssamtredia\";\"other\"\n\"612126\";\"САМТРЕДИА\";\"other\"\n\"612230\";\"Sagarejo\";\"main\"\n\"612230\";\"SAGAREDZHO\";\"other\"\n\"612230\";\"Sagaredzho\";\"other\"\n\"612230\";\"САГАРЕДЖО\";\"other\"\n\"612338\";\"Qvareli\";\"main\"\n\"612338\";\"KVARELI\";\"other\"\n\"612338\";\"Kvareli\";\"other\"\n\"612338\";\"Kvarely\";\"other\"\n\"612338\";\"КВАРЕЛИ\";\"other\"\n\"612366\";\"P’ot’i\";\"main\"\n\"612366\";\"P'ot'i\";\"ascii\"\n\"612366\";\"Poti\";\"other\"\n\"612366\";\"Поти\";\"other\"\n\"612366\";\"ფოთი\";\"other\"\n\"612502\";\"P’asanauri\";\"main\"\n\"612502\";\"P'asanauri\";\"ascii\"\n\"612502\";\"Pasanaur\";\"other\"\n\"612502\";\"Passanauri\";\"other\"\n\"612592\";\"Oni\";\"main\"\n\"612592\";\"ONI\";\"other\"\n\"612592\";\"ОНИ\";\"other\"\n\"612648\";\"Och’khamuri\";\"main\"\n\"612648\";\"Och'khamuri\";\"ascii\"\n\"612648\";\"OCHKHAMURI\";\"other\"\n\"612648\";\"Ochkamuri\";\"other\"\n\"612648\";\"ОЧХАМУРИ\";\"other\"\n\"612652\";\"Och’amch’ire\";\"main\"\n\"612652\";\"Och'amch'ire\";\"ascii\"\n\"612652\";\"OCHAMCHIRA\";\"other\"\n\"612652\";\"Ochamchira\";\"other\"\n\"612652\";\"Ochemchiri\";\"other\"\n\"612652\";\"Ochemchiry\";\"other\"\n\"612652\";\"Ochemechiri\";\"other\"\n\"612652\";\"Otschemtschiri\";\"other\"\n\"612652\";\"ОЧАМЧИРА\";\"other\"\n\"612691\";\"Ninotsminda\";\"main\"\n\"612691\";\"Bogdanovka\";\"other\"\n\"612691\";\"NINOCMINDA\";\"other\"\n\"612691\";\"НИНОЦМИНДА\";\"other\"\n\"612691\";\"ეიეოწმინდა\";\"other\"\n\"612890\";\"Mts’khet’a\";\"main\"\n\"612890\";\"Mts'khet'a\";\"ascii\"\n\"612890\";\"Mckheta\";\"other\"\n\"612890\";\"Mtskhera\";\"other\"\n\"612890\";\"Mtzkhet\";\"other\"\n\"612890\";\"Mzcheta\";\"other\"\n\"612890\";\"Мцхета\";\"other\"\n\"612987\";\"Mestia\";\"main\"\n\"612987\";\"MESTIA\";\"other\"\n\"612987\";\"Mestiya\";\"other\"\n\"612987\";\"Mestno\";\"other\"\n\"612987\";\"Seti\";\"other\"\n\"612987\";\"МЕСТИА\";\"other\"\n\"612987\";\"მესტია\";\"other\"\n\"613065\";\"Martvili\";\"main\"\n\"613065\";\"Gegechkari\";\"other\"\n\"613065\";\"Gegechkori\";\"other\"\n\"613065\";\"MARTVILI\";\"other\"\n\"613065\";\"МАРТВИЛИ\";\"other\"\n\"613065\";\"მარტვილი\";\"other\"\n\"613074\";\"Marneuli\";\"main\"\n\"613074\";\"Borchalo\";\"other\"\n\"613074\";\"MARNEULI\";\"other\"\n\"613074\";\"Sarvan\";\"other\"\n\"613074\";\"Sarwan\";\"other\"\n\"613074\";\"МАРНЕУЛИ\";\"other\"\n\"613093\";\"Manglisi\";\"main\"\n\"613093\";\"MANGLISI\";\"other\"\n\"613093\";\"Manglis\";\"other\"\n\"613093\";\"МАНГЛИСИ\";\"other\"\n\"613125\";\"Makhinjauri\";\"main\"\n\"613125\";\"MAKHINDZHAURI\";\"other\"\n\"613125\";\"Makhindzhauri\";\"other\"\n\"613125\";\"МАХИНДЖАУРИ\";\"other\"\n\"613226\";\"Lentekhi\";\"main\"\n\"613226\";\"LENTEKHI\";\"other\"\n\"613226\";\"Leksura\";\"other\"\n\"613226\";\"ЛЕНТЕХИ\";\"other\"\n\"613342\";\"Lagodekhi\";\"main\"\n\"613342\";\"LAGODEKHI\";\"other\"\n\"613342\";\"Lagodechis\";\"other\"\n\"613342\";\"lagodekhi\";\"other\"\n\"613342\";\"lgwdhy\";\"other\"\n\"613342\";\"ЛАГОДЕХИ\";\"other\"\n\"613342\";\"לגודחי\";\"other\"\n\"613342\";\"ლაგოდეხი\";\"other\"\n\"613559\";\"K’veda Ch’khorotsqu\";\"main\"\n\"613559\";\"K'veda Ch'khorotsqu\";\"ascii\"\n\"613559\";\"Kveda Chkhorotsku\";\"other\"\n\"613559\";\"ქვედა ჩხოროწყუ\";\"other\"\n\"613607\";\"K'ut'aisi\";\"main\"\n\"613607\";\"KUTAISI\";\"other\"\n\"613607\";\"Khuthaisi\";\"other\"\n\"613607\";\"Kutais\";\"other\"\n\"613607\";\"Kutaisi\";\"other\"\n\"613607\";\"Kutaisk\";\"other\"\n\"613607\";\"Kutaissi\";\"other\"\n\"613607\";\"Kutayis\";\"other\"\n\"613607\";\"Kutayıs\";\"other\"\n\"613607\";\"Kutaïsi\";\"other\"\n\"613607\";\"kutaishi\";\"other\"\n\"613607\";\"kutaisi\";\"other\"\n\"613607\";\"КУТАИСИ\";\"other\"\n\"613607\";\"Кутаиси\";\"other\"\n\"613607\";\"Кутаїсі\";\"other\"\n\"613607\";\"כותאיסי\";\"other\"\n\"613607\";\"קוטאיסי\";\"other\"\n\"613607\";\"ქუთაისი\";\"other\"\n\"613607\";\"クタイシ\";\"other\"\n\"613607\";\"쿠타이시\";\"other\"\n\"613641\";\"Kulashi\";\"main\"\n\"613641\";\"KULASHI\";\"other\"\n\"613641\";\"КУЛАШИ\";\"other\"\n\"613762\";\"Kobuleti\";\"main\"\n\"613762\";\"K'obulet'i\";\"other\"\n\"613762\";\"Kobulyety\";\"other\"\n\"613762\";\"Кобулети\";\"other\"\n\"613902\";\"Khoni\";\"main\"\n\"613902\";\"Choni\";\"other\"\n\"613902\";\"KHONI\";\"other\"\n\"613902\";\"Tsulukidze\";\"other\"\n\"613902\";\"Zulukidse\";\"other\"\n\"613902\";\"ХОНИ\";\"other\"\n\"613918\";\"Khobi\";\"main\"\n\"613918\";\"KHOBI\";\"other\"\n\"613918\";\"Khopi\";\"other\"\n\"613918\";\"ХОБИ\";\"other\"\n\"613918\";\"ხობი\";\"other\"\n\"613988\";\"Khashuri\";\"main\"\n\"613988\";\"Chaschuri\";\"other\"\n\"613988\";\"KHASHURI\";\"other\"\n\"613988\";\"Khasuri\";\"other\"\n\"613988\";\"Mikhailovo\";\"other\"\n\"613988\";\"Mikhaylovo\";\"other\"\n\"613988\";\"Stalinissi\";\"other\"\n\"613988\";\"ХАШУРИ\";\"other\"\n\"613988\";\"ხაშური\";\"other\"\n\"614087\";\"Step’antsminda\";\"main\"\n\"614087\";\"Step'antsminda\";\"ascii\"\n\"614087\";\"KAZBEGI\";\"other\"\n\"614087\";\"Kasbek\";\"other\"\n\"614087\";\"Kazbeg\";\"other\"\n\"614087\";\"Kazbegi\";\"other\"\n\"614087\";\"Kazbek\";\"other\"\n\"614087\";\"Qazbegi\";\"other\"\n\"614087\";\"КАЗБЕГИ\";\"other\"\n\"614104\";\"Kaspi\";\"main\"\n\"614104\";\"KASPI\";\"other\"\n\"614104\";\"Kasni\";\"other\"\n\"614104\";\"КАСПИ\";\"other\"\n\"614131\";\"K’areli\";\"main\"\n\"614131\";\"K'areli\";\"ascii\"\n\"614131\";\"KARELI\";\"other\"\n\"614131\";\"Karell\";\"other\"\n\"614131\";\"Nareli\";\"other\"\n\"614131\";\"КАРЕЛИ\";\"other\"\n\"614217\";\"Java\";\"main\"\n\"614217\";\"Chvrivi\";\"other\"\n\"614217\";\"DZHAVA\";\"other\"\n\"614217\";\"Dzhava\";\"other\"\n\"614217\";\"ДЖАВА\";\"other\"\n\"614351\";\"Gurjaani\";\"main\"\n\"614351\";\"GURDZHAANI\";\"other\"\n\"614351\";\"Gurdjaani\";\"other\"\n\"614351\";\"Gurdzhaani\";\"other\"\n\"614351\";\"Gurdzhani\";\"other\"\n\"614351\";\"ГУРДЖААНИ\";\"other\"\n\"614409\";\"Gudaut’a\";\"main\"\n\"614409\";\"Gudaut'a\";\"ascii\"\n\"614409\";\"Gudauta\";\"other\"\n\"614409\";\"Gudauti\";\"other\"\n\"614409\";\"Gudauty\";\"other\"\n\"614409\";\"Гудаута\";\"other\"\n\"614409\";\"გუდაუთა\";\"other\"\n\"614455\";\"Gori\";\"main\"\n\"614455\";\"GORI\";\"other\"\n\"614455\";\"Goris\";\"other\"\n\"614455\";\"ge li\";\"other\"\n\"614455\";\"goli\";\"other\"\n\"614455\";\"gori\";\"other\"\n\"614455\";\"gwry\";\"other\"\n\"614455\";\"ГОРИ\";\"other\"\n\"614455\";\"Гори\";\"other\"\n\"614455\";\"גורי\";\"other\"\n\"614455\";\"گوری\";\"other\"\n\"614455\";\"გორი\";\"other\"\n\"614455\";\"ゴリ\";\"other\"\n\"614455\";\"哥里\";\"other\"\n\"614455\";\"고리\";\"other\"\n\"614575\";\"Gardabani\";\"main\"\n\"614575\";\"GARDABANI\";\"other\"\n\"614575\";\"Karaya\";\"other\"\n\"614575\";\"Karayazi\";\"other\"\n\"614575\";\"Karayazy\";\"other\"\n\"614575\";\"ГАРДАБАНИ\";\"other\"\n\"614580\";\"Gant’iadi\";\"main\"\n\"614580\";\"Gant'iadi\";\"ascii\"\n\"614580\";\"Candrypsh\";\"other\"\n\"614580\";\"Gantiandi\";\"other\"\n\"614580\";\"Pilenkova\";\"other\"\n\"614580\";\"Pilenkovo\";\"other\"\n\"614580\";\"Pilyenkovo\";\"other\"\n\"614580\";\"Seleniye Pilenkovo\";\"other\"\n\"614580\";\"Гантианди\";\"other\"\n\"614580\";\"Цандрыпш\";\"other\"\n\"614580\";\"განთიადი\";\"other\"\n\"614613\";\"Gali\";\"main\"\n\"614613\";\"GALI\";\"other\"\n\"614613\";\"ГАЛИ\";\"other\"\n\"614613\";\"გალი\";\"other\"\n\"614622\";\"Gagra\";\"main\"\n\"614622\";\"GAGRA\";\"other\"\n\"614622\";\"Gagrae\";\"other\"\n\"614622\";\"Gagri\";\"other\"\n\"614622\";\"Gagry\";\"other\"\n\"614622\";\"Nkankra\";\"other\"\n\"614622\";\"gageula\";\"other\"\n\"614622\";\"gagura\";\"other\"\n\"614622\";\"ggrh\";\"other\"\n\"614622\";\"ghaghra\";\"other\"\n\"614622\";\"jia ge la\";\"other\"\n\"614622\";\"kak ra\";\"other\"\n\"614622\";\"Γκάγκρα\";\"other\"\n\"614622\";\"ГАГРА\";\"other\"\n\"614622\";\"Гагрæ\";\"other\"\n\"614622\";\"Гагра\";\"other\"\n\"614622\";\"גגרה\";\"other\"\n\"614622\";\"غاغرا\";\"other\"\n\"614622\";\"গাগ্‌রা\";\"other\"\n\"614622\";\"กากรา\";\"other\"\n\"614622\";\"გაგრა\";\"other\"\n\"614622\";\"ガグラ\";\"other\"\n\"614622\";\"加格拉\";\"other\"\n\"614622\";\"가그라\";\"other\"\n\"614740\";\"Jvari\";\"main\"\n\"614740\";\"DZHVARI\";\"other\"\n\"614740\";\"Dzhvara\";\"other\"\n\"614740\";\"Dzhvari\";\"other\"\n\"614740\";\"Dzhvary\";\"other\"\n\"614740\";\"Dzhvarzeni\";\"other\"\n\"614740\";\"ДЖВАРИ\";\"other\"\n\"614740\";\"ჯვარი\";\"other\"\n\"614890\";\"Dmanisi\";\"main\"\n\"614890\";\"Dumanisi\";\"other\"\n\"614890\";\"Дманиси\";\"other\"\n\"614897\";\"Dioknisi\";\"main\"\n\"614934\";\"Didi Lilo\";\"main\"\n\"614934\";\"Didi-Lilo\";\"other\"\n\"614934\";\"Lilo\";\"other\"\n\"614934\";\"Диди-Лило\";\"other\"\n\"615403\";\"Borjomi\";\"main\"\n\"615403\";\"BORZHOMI\";\"other\"\n\"615403\";\"Borcomi\";\"other\"\n\"615403\";\"Bordschomi\";\"other\"\n\"615403\";\"Bordzomi\";\"other\"\n\"615403\";\"Bordžomi\";\"other\"\n\"615403\";\"Borjam\";\"other\"\n\"615403\";\"Borjomi - borjomi\";\"other\"\n\"615403\";\"Borjomi - ბორჯომი\";\"other\"\n\"615403\";\"Borshom\";\"other\"\n\"615403\";\"Borzhomi\";\"other\"\n\"615403\";\"Borzomi\";\"other\"\n\"615403\";\"Borżomi\";\"other\"\n\"615403\";\"boleujomi\";\"other\"\n\"615403\";\"borujomi\";\"other\"\n\"615403\";\"БОРЖОМИ\";\"other\"\n\"615403\";\"Боржоми\";\"other\"\n\"615403\";\"ბორჯომი\";\"other\"\n\"615403\";\"ボルジョミ\";\"other\"\n\"615403\";\"보르조미\";\"other\"\n\"615419\";\"Bolnisi\";\"main\"\n\"615419\";\"Bolnissi\";\"other\"\n\"615419\";\"Luxemburg\";\"other\"\n\"615419\";\"Luxemburgi\";\"other\"\n\"615419\";\"Lyuksemburg\";\"other\"\n\"615419\";\"Lyuksemburg-Gruzinskiy\";\"other\"\n\"615419\";\"Lyuksemburgi\";\"other\"\n\"615419\";\"Lyuksemburi\";\"other\"\n\"615419\";\"Yekaterinofel'd\";\"other\"\n\"615419\";\"Yekaterinofel’d\";\"other\"\n\"615419\";\"bolnisi\";\"other\"\n\"615419\";\"bwlnysy\";\"other\"\n\"615419\";\"Болниси\";\"other\"\n\"615419\";\"בולניסי\";\"other\"\n\"615419\";\"ბოლნისი\";\"other\"\n\"615460\";\"Bichvint’a\";\"main\"\n\"615460\";\"Bichvint'a\";\"ascii\"\n\"615460\";\"Bichvinta\";\"other\"\n\"615460\";\"Bitchvinta\";\"other\"\n\"615460\";\"PICUNDA\";\"other\"\n\"615460\";\"Picunda\";\"other\"\n\"615460\";\"Pitsoenda\";\"other\"\n\"615460\";\"Pitsunda\";\"other\"\n\"615460\";\"Pitsundo\";\"other\"\n\"615460\";\"Pitsundskiy\";\"other\"\n\"615460\";\"Pitunda\";\"other\"\n\"615460\";\"Piţunda\";\"other\"\n\"615460\";\"byz'wynth\";\"other\"\n\"615460\";\"ПИЦУНДА\";\"other\"\n\"615460\";\"Пицунда\";\"other\"\n\"615460\";\"ביצ'וינתה\";\"other\"\n\"615460\";\"ბიჭვინთა\";\"other\"\n\"615532\";\"Bat’umi\";\"main\"\n\"615532\";\"Bat'umi\";\"ascii\"\n\"615532\";\"BATUMI\";\"other\"\n\"615532\";\"Bathumi\";\"other\"\n\"615532\";\"Batoemi\";\"other\"\n\"615532\";\"Batoumi\";\"other\"\n\"615532\";\"Batum\";\"other\"\n\"615532\";\"Batumi\";\"other\"\n\"615532\";\"Batumis\";\"other\"\n\"615532\";\"Batûm\";\"other\"\n\"615532\";\"bato~umi\";\"other\"\n\"615532\";\"batumi\";\"other\"\n\"615532\";\"btwmy\";\"other\"\n\"615532\";\"БАТУМИ\";\"other\"\n\"615532\";\"Батуми\";\"other\"\n\"615532\";\"בטומי\";\"other\"\n\"615532\";\"בתומי\";\"other\"\n\"615532\";\"ბათუმი\";\"other\"\n\"615532\";\"バトゥミ\";\"other\"\n\"615532\";\"바투미\";\"other\"\n\"615583\";\"Bakuriani\";\"main\"\n\"615583\";\"BAKURIANI\";\"other\"\n\"615583\";\"Bakuiani\";\"other\"\n\"615583\";\"БАКУРИАНИ\";\"other\"\n\"615611\";\"Bagdadi\";\"main\"\n\"615660\";\"Aspindza\";\"main\"\n\"615660\";\"ASPINDZA\";\"other\"\n\"615660\";\"АСПИНДЗА\";\"other\"\n\"615660\";\"ასპინძა\";\"other\"\n\"615776\";\"Ambrolauri\";\"main\"\n\"615776\";\"AMBROLAURI\";\"other\"\n\"615776\";\"Ambralauri\";\"other\"\n\"615776\";\"АМБРОЛАУРИ\";\"other\"\n\"615844\";\"Akhmeta\";\"main\"\n\"615844\";\"AKHMETA\";\"other\"\n\"615844\";\"Akhmeti\";\"other\"\n\"615844\";\"Akhmety\";\"other\"\n\"615844\";\"АХМЕТА\";\"other\"\n\"615860\";\"Akhalts’ikhe\";\"main\"\n\"615860\";\"Akhalts'ikhe\";\"ascii\"\n\"615860\";\"AKHALCIKHE\";\"other\"\n\"615860\";\"Achalziche\";\"other\"\n\"615860\";\"Achalzych\";\"other\"\n\"615860\";\"Akhaltsikh\";\"other\"\n\"615860\";\"Akhaltsykha\";\"other\"\n\"615860\";\"Akhaltsykhe\";\"other\"\n\"615860\";\"АХАЛЦИХЕ\";\"other\"\n\"615893\";\"Akhalk’alak’i\";\"main\"\n\"615893\";\"Akhalk'alak'i\";\"ascii\"\n\"615893\";\"Achalkalaki\";\"other\"\n\"615893\";\"Akhalkalak\";\"other\"\n\"615893\";\"Akhalkalaki\";\"other\"\n\"615893\";\"Arkhalkalaki\";\"other\"\n\"615893\";\"Ахалкалаки\";\"other\"\n\"615912\";\"Stantsiya Novyy Afon\";\"main\"\n\"615912\";\"Novyj Afon\";\"other\"\n\"615912\";\"Novyy Afon\";\"other\"\n\"615912\";\"Psirtskha\";\"other\"\n\"615912\";\"Psyrtskha\";\"other\"\n\"615912\";\"Stantsiya Akhali-Afoni\";\"other\"\n\"615912\";\"Новый Афон\";\"other\"\n\"615914\";\"Akhalgori\";\"main\"\n\"615914\";\"LENINGORI\";\"other\"\n\"615914\";\"Leningori\";\"other\"\n\"615914\";\"ЛЕНИНГОРИ\";\"other\"\n\"615921\";\"Akhaldaba\";\"main\"\n\"615921\";\"Ахалдаба\";\"other\"\n\"615943\";\"Agara\";\"main\"\n\"615943\";\"AGARA\";\"other\"\n\"615943\";\"АГАРА\";\"other\"\n\"615973\";\"Adigeni\";\"main\"\n\"615973\";\"ADIGENI\";\"other\"\n\"615973\";\"АДИГЕНИ\";\"other\"\n\"616022\";\"Abasha\";\"main\"\n\"616022\";\"ABASHA\";\"other\"\n\"616022\";\"Abascha\";\"other\"\n\"616022\";\"АБАША\";\"other\"\n\"616022\";\"აბაშა\";\"other\"\n\"824288\";\"Tsqaltubo\";\"main\"\n\"824288\";\"CKHALTUBO\";\"other\"\n\"824288\";\"Tskaltubo\";\"other\"\n\"824288\";\"Tskhaltubo\";\"other\"\n\"824288\";\"ЦХАЛТУБО\";\"other\"\n\"824385\";\"Naruja\";\"main\"\n\"824385\";\"Sovkhoz Narudzhskiy\";\"other\"\n\"824385\";\"ნარუჯა\";\"other\"\n\"824613\";\"Bakurianis Andeziti\";\"main\"\n\"824613\";\"BAKURIANSKIJ ANDEZIT\";\"other\"\n\"824613\";\"БАКУРИАНСКИЙ АНДЕЗИТ\";\"other\"\n\"6324644\";\"Meria\";\"main\"\n\"6940391\";\"Tskhinvali\";\"main\"\n\"3380290\";\"Sinnamary\";\"main\"\n\"3380290\";\"Sinamary\";\"other\"\n\"3380290\";\"Sinnama\";\"other\"\n\"3380290\";\"Sinnamari\";\"other\"\n\"3380387\";\"Saint-Laurent-du-Maroni\";\"main\"\n\"3380387\";\"Laurent\";\"other\"\n\"3380387\";\"Maroni\";\"other\"\n\"3380387\";\"Saint Laurent\";\"other\"\n\"3380387\";\"Sainte Laurent\";\"other\"\n\"3380387\";\"Sen-Loran-dju-Maroni\";\"other\"\n\"3380387\";\"Сен-Лоран-дю-Марони\";\"other\"\n\"3380402\";\"Saint-Georges-de-l'Oyapock\";\"main\"\n\"3380402\";\"Oyapock\";\"other\"\n\"3380450\";\"Roura\";\"main\"\n\"3380892\";\"Rémire-Montjoly\";\"main\"\n\"3380892\";\"Remire-Montjoly\";\"ascii\"\n\"3380892\";\"Montjoli\";\"other\"\n\"3380965\";\"Matoury\";\"main\"\n\"3380965\";\"Matoary\";\"other\"\n\"3381041\";\"Mana\";\"main\"\n\"3381117\";\"Macouria\";\"main\"\n\"3381303\";\"Kourou\";\"main\"\n\"3381303\";\"Bourg de Kourou\";\"other\"\n\"3381303\";\"Kouro\";\"other\"\n\"3381303\";\"Kur\";\"other\"\n\"3381303\";\"White City\";\"other\"\n\"3381303\";\"Кур\";\"other\"\n\"3381428\";\"Iracoubo\";\"main\"\n\"3381538\";\"Grand-Santi\";\"main\"\n\"3382160\";\"Cayenne\";\"main\"\n\"3382160\";\"Caiena\";\"other\"\n\"3382160\";\"Caienna\";\"other\"\n\"3382160\";\"Cayene\";\"other\"\n\"3382160\";\"Kajenas\";\"other\"\n\"3382160\";\"Kajenna\";\"other\"\n\"3382160\";\"kaien'nu\";\"other\"\n\"3382160\";\"Кайенна\";\"other\"\n\"3382160\";\"קאיין\";\"other\"\n\"3382160\";\"カイエンヌ\";\"other\"\n\"3382226\";\"Camopi\";\"main\"\n\"3382527\";\"Apatou\";\"main\"\n\"3042287\";\"Saint Peter Port\";\"main\"\n\"3042287\";\"Saint Pierre Port\";\"other\"\n\"3042287\";\"Saint-Pierre-Port\";\"other\"\n\"3042287\";\"Sent Piter Port\";\"other\"\n\"3042287\";\"Sent-Piter-Port\";\"other\"\n\"3042287\";\"St Peter Port\";\"other\"\n\"3042287\";\"St. Peter Port\";\"other\"\n\"3042287\";\"Сент Питер Порт\";\"other\"\n\"3042287\";\"Сент-Питер-Порт\";\"other\"\n\"3042287\";\"セント・ピーター・ポート\";\"other\"\n\"2293801\";\"Yendi\";\"main\"\n\"2293801\";\"Jendi\";\"other\"\n\"2294034\";\"Winneba\";\"main\"\n\"2294034\";\"Simpa\";\"other\"\n\"2294034\";\"Vinnebe\";\"other\"\n\"2294034\";\"Winnebah\";\"other\"\n\"2294034\";\"Виннебе\";\"other\"\n\"2294086\";\"Wenchi\";\"main\"\n\"2294206\";\"Wa\";\"main\"\n\"2294206\";\"Va\";\"other\"\n\"2294206\";\"Ва\";\"other\"\n\"2294665\";\"Teshi\";\"main\"\n\"2294665\";\"Tassi\";\"other\"\n\"2294665\";\"Teshhi\";\"other\"\n\"2294665\";\"Teshie\";\"other\"\n\"2294665\";\"Тещи\";\"other\"\n\"2294700\";\"Tema\";\"main\"\n\"2294700\";\"Temma\";\"other\"\n\"2294700\";\"Toma\";\"other\"\n\"2294700\";\"Тема\";\"other\"\n\"2294727\";\"Techiman\";\"main\"\n\"2294727\";\"Takyiman\";\"other\"\n\"2294727\";\"Tekyiman\";\"other\"\n\"2294727\";\"Tekyiman-Brong\";\"other\"\n\"2294768\";\"Tarkwa\";\"main\"\n\"2294768\";\"Tarquah\";\"other\"\n\"2294877\";\"Tamale\";\"main\"\n\"2294877\";\"Тамале\";\"other\"\n\"2294915\";\"Takoradi\";\"main\"\n\"2294938\";\"Tafo\";\"main\"\n\"2294938\";\"Old Tafo\";\"other\"\n\"2294962\";\"Swedru\";\"main\"\n\"2294962\";\"Agona\";\"other\"\n\"2294962\";\"Agona Swedru\";\"other\"\n\"2294962\";\"Jwewuhu\";\"other\"\n\"2295021\";\"Sunyani\";\"main\"\n\"2295065\";\"Suhum\";\"main\"\n\"2295385\";\"Shama Junction\";\"main\"\n\"2295385\";\"Shama\";\"other\"\n\"2295458\";\"Sekondi\";\"main\"\n\"2295458\";\"Sekondi-Takoradi\";\"other\"\n\"2295458\";\"Sékondi\";\"other\"\n\"2295458\";\"Секонди\";\"other\"\n\"2295517\";\"Savelugu\";\"main\"\n\"2295517\";\"Saveluga\";\"other\"\n\"2295672\";\"Saltpond\";\"main\"\n\"2295672\";\"Achimfu\";\"other\"\n\"2295684\";\"Salaga\";\"main\"\n\"2295840\";\"Prestea\";\"main\"\n\"2295840\";\"Esamang\";\"other\"\n\"2296458\";\"Oduponkpehe\";\"main\"\n\"2296564\";\"Oda\";\"main\"\n\"2296564\";\"Akim Oda\";\"other\"\n\"2296564\";\"Insuaim\";\"other\"\n\"2296564\";\"Nsuaem\";\"other\"\n\"2296564\";\"Ода\";\"other\"\n\"2296606\";\"Obuasi\";\"main\"\n\"2296606\";\"Oboase\";\"other\"\n\"2296606\";\"Obuassi\";\"other\"\n\"2296969\";\"Nungua\";\"main\"\n\"2296969\";\"Nungoa\";\"other\"\n\"2296969\";\"Nungwa\";\"other\"\n\"2297141\";\"Nsawam\";\"main\"\n\"2297313\";\"Nkawkaw\";\"main\"\n\"2297313\";\"Nkokoo\";\"other\"\n\"2297505\";\"Navrongo\";\"main\"\n\"2297810\";\"Mumford\";\"main\"\n\"2297810\";\"Gamma\";\"other\"\n\"2297810\";\"Gammah\";\"other\"\n\"2297810\";\"Jumba\";\"other\"\n\"2297810\";\"Mumfort\";\"other\"\n\"2297834\";\"Mpraeso\";\"main\"\n\"2298264\";\"Mampong\";\"main\"\n\"2298264\";\"Mampon\";\"other\"\n\"2298264\";\"Mampon Asante\";\"other\"\n\"2298330\";\"Madina\";\"main\"\n\"2298890\";\"Kumasi\";\"main\"\n\"2298890\";\"Coomassie\";\"other\"\n\"2298890\";\"Kumase\";\"other\"\n\"2298890\";\"Kumasis\";\"other\"\n\"2298890\";\"Kumassi\";\"other\"\n\"2298890\";\"ku ma xi\";\"other\"\n\"2298890\";\"kumasi\";\"other\"\n\"2298890\";\"Кумаси\";\"other\"\n\"2298890\";\"库马西\";\"other\"\n\"2298890\";\"쿠마시\";\"other\"\n\"2299233\";\"Kpandu\";\"main\"\n\"2299233\";\"Gabi\";\"other\"\n\"2299233\";\"Kpando\";\"other\"\n\"2299233\";\"Tsakpe\";\"other\"\n\"2299236\";\"Kpandae\";\"main\"\n\"2299236\";\"Kpandai\";\"other\"\n\"2299349\";\"Konongo\";\"main\"\n\"2299522\";\"Koforidua\";\"main\"\n\"2299522\";\"Кофоридуа\";\"other\"\n\"2299625\";\"Kintampo\";\"main\"\n\"2299636\";\"Kibi\";\"main\"\n\"2299636\";\"Kibbi\";\"other\"\n\"2299636\";\"Kyebi\";\"other\"\n\"2299642\";\"Kete Krachi\";\"main\"\n\"2299642\";\"Kete Krakye\";\"other\"\n\"2299642\";\"Kete-Kratschi\";\"other\"\n\"2299642\";\"Kete-Ktachi\";\"other\"\n\"2299642\";\"Krachi\";\"other\"\n\"2299642\";\"Krete Kratschi\";\"other\"\n\"2299645\";\"Keta\";\"main\"\n\"2299645\";\"Kitta\";\"other\"\n\"2299645\";\"Kwitta\";\"other\"\n\"2299645\";\"Quittah\";\"other\"\n\"2300372\";\"Hohoe\";\"main\"\n\"2300372\";\"Chochoe\";\"other\"\n\"2300372\";\"Chokhoe\";\"other\"\n\"2300372\";\"Khokhoe\";\"other\"\n\"2300379\";\"Ho\";\"main\"\n\"2300379\";\"Hohoe\";\"other\"\n\"2300379\";\"Kho\";\"other\"\n\"2300379\";\"Хо\";\"other\"\n\"2300721\";\"Gbawe\";\"main\"\n\"2300883\";\"Foso\";\"main\"\n\"2301190\";\"Elmina\";\"main\"\n\"2301190\";\"Dena\";\"other\"\n\"2301190\";\"Edina\";\"other\"\n\"2301190\";\"Ehlmina\";\"other\"\n\"2301190\";\"Saint George Del Mina\";\"other\"\n\"2301190\";\"Sao Jorge da Mina\";\"other\"\n\"2301190\";\"São Jorge da Mina\";\"other\"\n\"2301190\";\"Элмина\";\"other\"\n\"2301217\";\"Ejura\";\"main\"\n\"2301400\";\"Dunkwa\";\"main\"\n\"2301464\";\"Duayaw Nkwanta\";\"main\"\n\"2301464\";\"Nkwanta\";\"other\"\n\"2301639\";\"Dom\";\"main\"\n\"2301639\";\"Dam\";\"other\"\n\"2301639\";\"Dome\";\"other\"\n\"2301639\";\"Дом\";\"other\"\n\"2302357\";\"Cape Coast\";\"main\"\n\"2302357\";\"Cabo Corso\";\"other\"\n\"2302357\";\"Cape Coast Castle\";\"other\"\n\"2302357\";\"Igua Ogwa\";\"other\"\n\"2302357\";\"Ogwa\";\"other\"\n\"2302821\";\"Bolgatanga\";\"main\"\n\"2302821\";\"Bolagatanga\";\"other\"\n\"2302821\";\"Bolgatange\";\"other\"\n\"2302821\";\"Болгатанге\";\"other\"\n\"2303060\";\"Bibiani\";\"main\"\n\"2303060\";\"Babianeha\";\"other\"\n\"2303060\";\"Bebiani\";\"other\"\n\"2303060\";\"Bebianiha\";\"other\"\n\"2303125\";\"Berekum\";\"main\"\n\"2303224\";\"Bekwai\";\"main\"\n\"2303224\";\"Bekawi\";\"other\"\n\"2303236\";\"Begoro\";\"main\"\n\"2303258\";\"Bechem\";\"main\"\n\"2303287\";\"Bawku\";\"main\"\n\"2303611\";\"Axim\";\"main\"\n\"2304220\";\"Asamankese\";\"main\"\n\"2304389\";\"Apam\";\"main\"\n\"2304389\";\"Appam\";\"other\"\n\"2304389\";\"Апам\";\"other\"\n\"2304548\";\"Anloga\";\"main\"\n\"2304548\";\"Awunaga\";\"other\"\n\"2304931\";\"Akwatia\";\"main\"\n\"2305027\";\"Akropong\";\"main\"\n\"2305027\";\"Akropong-Akwapim\";\"other\"\n\"2305027\";\"Akuropon\";\"other\"\n\"2305164\";\"Akim Swedru\";\"main\"\n\"2305537\";\"Agogo\";\"main\"\n\"2306079\";\"Achiaman\";\"main\"\n\"2306104\";\"Accra\";\"main\"\n\"2306104\";\"Acra\";\"other\"\n\"2306104\";\"Akkra\";\"other\"\n\"2306104\";\"Akkrae\";\"other\"\n\"2306104\";\"Akra\";\"other\"\n\"2306104\";\"Akrao\";\"other\"\n\"2306104\";\"Nkran\";\"other\"\n\"2306104\";\"a ke la\";\"other\"\n\"2306104\";\"akeula\";\"other\"\n\"2306104\";\"akra\";\"other\"\n\"2306104\";\"akura\";\"other\"\n\"2306104\";\"΄Aκκρα\";\"other\"\n\"2306104\";\"Аккрæ\";\"other\"\n\"2306104\";\"Аккра\";\"other\"\n\"2306104\";\"Акра\";\"other\"\n\"2306104\";\"אקרה\";\"other\"\n\"2306104\";\"आक्रा\";\"other\"\n\"2306104\";\"አክራ\";\"other\"\n\"2306104\";\"アクラ\";\"other\"\n\"2306104\";\"阿克拉\";\"other\"\n\"2306104\";\"아크라\";\"other\"\n\"2306119\";\"Aburi\";\"main\"\n\"2306224\";\"Aboso\";\"main\"\n\"2306224\";\"Abosso\";\"other\"\n\"2411585\";\"Gibraltar\";\"main\"\n\"2411585\";\"Calpe\";\"other\"\n\"2411585\";\"Cebelitarik\";\"other\"\n\"2411585\";\"Cebelitarık\";\"other\"\n\"2411585\";\"Djibraltar\";\"other\"\n\"2411585\";\"Gibbilterra\";\"other\"\n\"2411585\";\"Gibilterra\";\"other\"\n\"2411585\";\"Gibraltaras\";\"other\"\n\"2411585\";\"Gibraltaro\";\"other\"\n\"2411585\";\"Gibraltár\";\"other\"\n\"2411585\";\"Gíbraltar\";\"other\"\n\"2411585\";\"Kamaka\";\"other\"\n\"2411585\";\"Xibraltar\";\"other\"\n\"2411585\";\"Xibraltar - Gibraltar\";\"other\"\n\"2411585\";\"gybrltr\";\"other\"\n\"2411585\";\"jibeulolteo\";\"other\"\n\"2411585\";\"jiburarutaru\";\"other\"\n\"2411585\";\"mhmyt jbl tarq\";\"other\"\n\"2411585\";\"zhi bu luo tuo\";\"other\"\n\"2411585\";\"Ĝibraltaro\";\"other\"\n\"2411585\";\"Γιβραλτάρ\";\"other\"\n\"2411585\";\"Гибралтар\";\"other\"\n\"2411585\";\"Ґібралтар\";\"other\"\n\"2411585\";\"גיברלטר\";\"other\"\n\"2411585\";\"جبل‌الطارق\";\"other\"\n\"2411585\";\"محمية جبل طارق\";\"other\"\n\"2411585\";\"ジブラルタル\";\"other\"\n\"2411585\";\"直布罗陀\";\"other\"\n\"2411585\";\"지브롤터\";\"other\"\n\"3418910\";\"Upernavik\";\"main\"\n\"3418910\";\"Summer Place\";\"other\"\n\"3418910\";\"Upernivik\";\"other\"\n\"3419842\";\"Sisimiut\";\"main\"\n\"3419842\";\"Amerdlok\";\"other\"\n\"3419842\";\"Holsteinborg\";\"other\"\n\"3419842\";\"Holsteinsborg\";\"other\"\n\"3419842\";\"Holstenborg\";\"other\"\n\"3419842\";\"Holstensborg\";\"other\"\n\"3420768\";\"Christianshåb\";\"main\"\n\"3420768\";\"Christianshab\";\"ascii\"\n\"3420768\";\"Christianshaab\";\"other\"\n\"3420768\";\"Kasigianguit\";\"other\"\n\"3420768\";\"Qasigianguit\";\"other\"\n\"3420768\";\"Qasigiannguit\";\"other\"\n\"3420846\";\"Qaqortoq\";\"main\"\n\"3420846\";\"Julian Haab\";\"other\"\n\"3420846\";\"Julianehaab\";\"other\"\n\"3420846\";\"Julianehab\";\"other\"\n\"3420846\";\"Julianehåb\";\"other\"\n\"3420846\";\"Kakortak\";\"other\"\n\"3420846\";\"Kakortok\";\"other\"\n\"3420846\";\"kakotokku\";\"other\"\n\"3420846\";\"Какорток\";\"other\"\n\"3420846\";\"カコトック\";\"other\"\n\"3421193\";\"Frederikshåb\";\"main\"\n\"3421193\";\"Frederikshab\";\"ascii\"\n\"3421193\";\"Frederikshaab\";\"other\"\n\"3421193\";\"Paamiut\";\"other\"\n\"3421193\";\"Pamiut\";\"other\"\n\"3421319\";\"Nuuk\";\"main\"\n\"3421319\";\"Godthaab\";\"other\"\n\"3421319\";\"Godthab\";\"other\"\n\"3421319\";\"Godthåb\";\"other\"\n\"3421319\";\"Nououk\";\"other\"\n\"3421319\";\"Nuk\";\"other\"\n\"3421319\";\"Nuuk (Godthab)\";\"other\"\n\"3421319\";\"Nuuk (Godthåb)\";\"other\"\n\"3421319\";\"nu ke\";\"other\"\n\"3421319\";\"nukeu\";\"other\"\n\"3421319\";\"nuku\";\"other\"\n\"3421319\";\"Νουούκ\";\"other\"\n\"3421319\";\"Нук\";\"other\"\n\"3421319\";\"Нуук\";\"other\"\n\"3421319\";\"נאוק\";\"other\"\n\"3421319\";\"ヌーク\";\"other\"\n\"3421319\";\"努克\";\"other\"\n\"3421319\";\"누크\";\"other\"\n\"3421765\";\"Nanortalik\";\"main\"\n\"3421765\";\"Ilivileq\";\"other\"\n\"3421982\";\"Sukkertoppen\";\"main\"\n\"3421982\";\"Maitsoq\";\"other\"\n\"3421982\";\"Maniitsoq\";\"other\"\n\"3421982\";\"Manitsok\";\"other\"\n\"3421982\";\"Manitsoq\";\"other\"\n\"3423146\";\"Ilulissat\";\"main\"\n\"3423146\";\"Ilulisat\";\"other\"\n\"3423146\";\"Jakobshavn\";\"other\"\n\"3423146\";\"irurisatto\";\"other\"\n\"3423146\";\"yi lu li sa te\";\"other\"\n\"3423146\";\"イルリサット\";\"other\"\n\"3423146\";\"伊卢利萨特\";\"other\"\n\"3424607\";\"Tasiilaq\";\"main\"\n\"3424607\";\"Ammassalik\";\"other\"\n\"3424607\";\"Angmagssalik\";\"other\"\n\"3424607\";\"Angmagsslik\";\"other\"\n\"3424607\";\"Angmassalik\";\"other\"\n\"3424901\";\"Aasiaat\";\"main\"\n\"3424901\";\"Ausiait\";\"other\"\n\"3424901\";\"Egedesminde\";\"other\"\n\"3831208\";\"Qaanaaq\";\"main\"\n\"3831208\";\"Kanak\";\"other\"\n\"3831208\";\"Kanaq\";\"other\"\n\"3831208\";\"Kanâk\";\"other\"\n\"3831208\";\"Kanâq\";\"other\"\n\"3831208\";\"Karna\";\"other\"\n\"3831208\";\"Qanaq\";\"other\"\n\"3831208\";\"Qânâq\";\"other\"\n\"3831208\";\"Thule\";\"other\"\n\"3831208\";\"Tule\";\"other\"\n\"3831208\";\"kanag\";\"other\"\n\"3831208\";\"kanaku\";\"other\"\n\"3831208\";\"Туле\";\"other\"\n\"3831208\";\"カーナーク\";\"other\"\n\"3831208\";\"카낙\";\"other\"\n\"3831278\";\"Narsaq\";\"main\"\n\"3831278\";\"Kangek\";\"other\"\n\"3831278\";\"Narssak\";\"other\"\n\"3831278\";\"Narssaq\";\"other\"\n\"2411692\";\"Wellingara Ba\";\"main\"\n\"2411692\";\"Sitafuma\";\"other\"\n\"2411692\";\"Willingara\";\"other\"\n\"2411703\";\"Wassu\";\"main\"\n\"2411765\";\"Toniataba\";\"main\"\n\"2411765\";\"Tonitaba\";\"other\"\n\"2411862\";\"Sutukung\";\"main\"\n\"2411862\";\"Surukung\";\"other\"\n\"2411863\";\"Sutukoba\";\"main\"\n\"2411863\";\"Sutuko\";\"other\"\n\"2411866\";\"Sun Kunda\";\"main\"\n\"2411866\";\"Song Kunda\";\"other\"\n\"2411877\";\"Sukuta\";\"main\"\n\"2411877\";\"Sukutta\";\"other\"\n\"2411880\";\"Sukuta\";\"main\"\n\"2411880\";\"Dembadu\";\"other\"\n\"2411880\";\"Sabiji\";\"other\"\n\"2411880\";\"Sukuto\";\"other\"\n\"2411880\";\"Sukutta\";\"other\"\n\"2411885\";\"Sudowol\";\"main\"\n\"2411903\";\"Somita\";\"main\"\n\"2411905\";\"Soma\";\"main\"\n\"2411970\";\"Si Kunda\";\"main\"\n\"2411999\";\"Saruja\";\"main\"\n\"2412135\";\"Sara Kunda\";\"main\"\n\"2412135\";\"Sarra Kunda\";\"other\"\n\"2412158\";\"Sankwia\";\"main\"\n\"2412158\";\"Sankuia\";\"other\"\n\"2412199\";\"Sami\";\"main\"\n\"2412248\";\"Sabi\";\"main\"\n\"2412252\";\"Saba\";\"main\"\n\"2412272\";\"Perai\";\"main\"\n\"2412272\";\"Pirai\";\"other\"\n\"2412272\";\"Priakunda\";\"other\"\n\"2412279\";\"Pateh Sam\";\"main\"\n\"2412279\";\"Pate\";\"other\"\n\"2412344\";\"Nyamanari\";\"main\"\n\"2412355\";\"No Kunda\";\"main\"\n\"2412408\";\"Nioro\";\"main\"\n\"2412605\";\"Mansa Konko\";\"main\"\n\"2412749\";\"Lamin\";\"main\"\n\"2412775\";\"Kunting\";\"main\"\n\"2412778\";\"Kuntaur\";\"main\"\n\"2412807\";\"Kumbija\";\"main\"\n\"2412807\";\"Kumbita\";\"other\"\n\"2412868\";\"Koina\";\"main\"\n\"2412992\";\"Kerewan\";\"main\"\n\"2412992\";\"Kerevane\";\"other\"\n\"2413023\";\"Keneba\";\"main\"\n\"2413023\";\"Kenniba\";\"other\"\n\"2413041\";\"Katchang\";\"main\"\n\"2413041\";\"Kashan\";\"other\"\n\"2413052\";\"Kass Wollof\";\"main\"\n\"2413052\";\"Kass\";\"other\"\n\"2413052\";\"Samba N'Yang\";\"other\"\n\"2413052\";\"Samba N’Yang\";\"other\"\n\"2413070\";\"Karantaba\";\"main\"\n\"2413070\";\"Gunjur\";\"other\"\n\"2413073\";\"Karantaba\";\"main\"\n\"2413160\";\"Kaiaf\";\"main\"\n\"2413235\";\"Jifarong\";\"main\"\n\"2413235\";\"Jiffarong\";\"other\"\n\"2413246\";\"Jenoi\";\"main\"\n\"2413246\";\"Ginoi\";\"other\"\n\"2413265\";\"Jarreng\";\"main\"\n\"2413344\";\"Jali\";\"main\"\n\"2413365\";\"Jakhaly\";\"main\"\n\"2413417\";\"Gunjur Kuta\";\"main\"\n\"2413418\";\"Gunjur\";\"main\"\n\"2413418\";\"Kungeru\";\"other\"\n\"2413419\";\"Gunjur\";\"main\"\n\"2413437\";\"Georgetown\";\"main\"\n\"2413437\";\"Janjanbureh\";\"other\"\n\"2413437\";\"Old Fort George\";\"other\"\n\"2413456\";\"Galleh Manda\";\"main\"\n\"2413456\";\"Manda\";\"other\"\n\"2413515\";\"Farafenni\";\"main\"\n\"2413533\";\"Essau\";\"main\"\n\"2413579\";\"Diabugu Basilla\";\"main\"\n\"2413580\";\"Diabugu\";\"main\"\n\"2413580\";\"Dirboko\";\"other\"\n\"2413588\";\"Denton\";\"main\"\n\"2413588\";\"Sare Ram\";\"other\"\n\"2413598\";\"Demba Kunda\";\"main\"\n\"2413598\";\"Morbugu\";\"other\"\n\"2413623\";\"Daru Rilwan\";\"main\"\n\"2413645\";\"Dankunku\";\"main\"\n\"2413645\";\"Dankunko\";\"other\"\n\"2413653\";\"Daba Kunda\";\"main\"\n\"2413653\";\"Doba Kunda\";\"other\"\n\"2413653\";\"Dula Kunda\";\"other\"\n\"2413660\";\"Chilla\";\"main\"\n\"2413703\";\"Bureng\";\"main\"\n\"2413703\";\"Buraing\";\"other\"\n\"2413746\";\"Brikama Nding\";\"main\"\n\"2413753\";\"Brikama\";\"main\"\n\"2413753\";\"Brikame\";\"other\"\n\"2413753\";\"Брикаме\";\"other\"\n\"2413755\";\"Brifu\";\"main\"\n\"2413818\";\"Basse Santa Su\";\"main\"\n\"2413818\";\"Basse\";\"other\"\n\"2413827\";\"Barra\";\"main\"\n\"2413830\";\"Baro Kunda\";\"main\"\n\"2413830\";\"Barukunda\";\"other\"\n\"2413856\";\"Bantanto\";\"main\"\n\"2413866\";\"Bansang\";\"main\"\n\"2413866\";\"Bansang Tenda\";\"other\"\n\"2413866\";\"Barsangsang\";\"other\"\n\"2413876\";\"Banjul\";\"main\"\n\"2413876\";\"Bandzul\";\"other\"\n\"2413876\";\"Bandzulis\";\"other\"\n\"2413876\";\"Bandżul\";\"other\"\n\"2413876\";\"Bandžulis\";\"other\"\n\"2413876\";\"Banjulo\";\"other\"\n\"2413876\";\"Banzhul\";\"other\"\n\"2413876\";\"Banĵulo\";\"other\"\n\"2413876\";\"Bathurst\";\"other\"\n\"2413876\";\"Mpanzoul\";\"other\"\n\"2413876\";\"ban zhu er\";\"other\"\n\"2413876\";\"banjul\";\"other\"\n\"2413876\";\"banjuru\";\"other\"\n\"2413876\";\"banjwl\";\"other\"\n\"2413876\";\"bng'wl\";\"other\"\n\"2413876\";\"Μπανζούλ\";\"other\"\n\"2413876\";\"Банжул\";\"other\"\n\"2413876\";\"Банџул\";\"other\"\n\"2413876\";\"Բանջուլ\";\"other\"\n\"2413876\";\"בנג'ול\";\"other\"\n\"2413876\";\"بانجول\";\"other\"\n\"2413876\";\"ባንጁል\";\"other\"\n\"2413876\";\"バンジュール\";\"other\"\n\"2413876\";\"班珠尔\";\"other\"\n\"2413876\";\"班珠爾\";\"other\"\n\"2413876\";\"반줄\";\"other\"\n\"2413895\";\"Bambali\";\"main\"\n\"2413895\";\"Bambale\";\"other\"\n\"2413895\";\"Bombale\";\"other\"\n\"2413920\";\"Bakau\";\"main\"\n\"2413926\";\"Bakadagy\";\"main\"\n\"2413926\";\"Bakadaji\";\"other\"\n\"2413990\";\"Abuko\";\"main\"\n\"2414055\";\"Youkounkoun\";\"main\"\n\"2414079\";\"Yomou\";\"main\"\n\"2414545\";\"Tougué\";\"main\"\n\"2414545\";\"Tougue\";\"ascii\"\n\"2414545\";\"Tongue\";\"other\"\n\"2414616\";\"Tondon\";\"main\"\n\"2414616\";\"Tendon\";\"other\"\n\"2414659\";\"Tokonou\";\"main\"\n\"2414926\";\"Télimélé\";\"main\"\n\"2414926\";\"Telimele\";\"ascii\"\n\"2415703\";\"Siguiri\";\"main\"\n\"2415703\";\"Sigiri\";\"other\"\n\"2415703\";\"Сигири\";\"other\"\n\"2416061\";\"Sanguéya\";\"main\"\n\"2416061\";\"Sangueya\";\"ascii\"\n\"2416061\";\"Sanguea\";\"other\"\n\"2416061\";\"Sanguéa\";\"other\"\n\"2416443\";\"Pita\";\"main\"\n\"2416969\";\"Nzérékoré\";\"main\"\n\"2416969\";\"Nzerekore\";\"ascii\"\n\"2416969\";\"Нзерекоре\";\"other\"\n\"2417795\";\"Mandiana\";\"main\"\n\"2417833\";\"Mamou\";\"main\"\n\"2417886\";\"Mali\";\"main\"\n\"2417886\";\"Meli\";\"other\"\n\"2417988\";\"Macenta\";\"main\"\n\"2417988\";\"Magenta\";\"other\"\n\"2417988\";\"Masenta\";\"other\"\n\"2417988\";\"Масента\";\"other\"\n\"2418092\";\"Lola\";\"main\"\n\"2418362\";\"Labé\";\"main\"\n\"2418362\";\"Labe\";\"ascii\"\n\"2418362\";\"Laba\";\"other\"\n\"2418362\";\"Лаба\";\"other\"\n\"2418437\";\"Kouroussa\";\"main\"\n\"2418437\";\"Kurussa\";\"other\"\n\"2418596\";\"Koundara\";\"main\"\n\"2418764\";\"Koubia\";\"main\"\n\"2419472\";\"Kissidougou\";\"main\"\n\"2419472\";\"Kisidugu\";\"other\"\n\"2419472\";\"Kissidugu\";\"other\"\n\"2419472\";\"Кисидугу\";\"other\"\n\"2419533\";\"Kindia\";\"main\"\n\"2419533\";\"Kindla\";\"other\"\n\"2419533\";\"Киндиа\";\"other\"\n\"2419538\";\"Kimbo\";\"main\"\n\"2419622\";\"Kérouané\";\"main\"\n\"2419622\";\"Kerouane\";\"ascii\"\n\"2419992\";\"Kankan\";\"main\"\n\"2419992\";\"Канкан\";\"other\"\n\"2420562\";\"Guéckédou\";\"main\"\n\"2420562\";\"Gueckedou\";\"ascii\"\n\"2420562\";\"Guekedou\";\"other\"\n\"2420562\";\"Guékédou\";\"other\"\n\"2420826\";\"Gaoual\";\"main\"\n\"2420884\";\"Fria\";\"main\"\n\"2420884\";\"Firiya\";\"other\"\n\"2420884\";\"Фриа\";\"other\"\n\"2420985\";\"Forécariah\";\"main\"\n\"2420985\";\"Forecariah\";\"ascii\"\n\"2420985\";\"Forecaria\";\"other\"\n\"2420985\";\"Forikaria\";\"other\"\n\"2421273\";\"Faranah\";\"main\"\n\"2421535\";\"Dubréka\";\"main\"\n\"2421535\";\"Dubreka\";\"ascii\"\n\"2421535\";\"Debreeka\";\"other\"\n\"2421903\";\"Dinguiraye\";\"main\"\n\"2421903\";\"Dinguiray\";\"other\"\n\"2422383\";\"Dalaba\";\"main\"\n\"2422442\";\"Dabola\";\"main\"\n\"2422442\";\"Дабола\";\"other\"\n\"2422457\";\"Coyah\";\"main\"\n\"2422457\";\"Coya\";\"other\"\n\"2422457\";\"Koyah\";\"other\"\n\"2422465\";\"Conakry\";\"main\"\n\"2422465\";\"Conacri\";\"other\"\n\"2422465\";\"Konakri\";\"other\"\n\"2422465\";\"Konakrio\";\"other\"\n\"2422465\";\"Konakris\";\"other\"\n\"2422465\";\"Konakry\";\"other\"\n\"2422465\";\"ke na ke li\";\"other\"\n\"2422465\";\"konakeuli\";\"other\"\n\"2422465\";\"konakuri\";\"other\"\n\"2422465\";\"Κόνακρι\";\"other\"\n\"2422465\";\"Конакри\";\"other\"\n\"2422465\";\"קונאקרי\";\"other\"\n\"2422465\";\"コナクリ\";\"other\"\n\"2422465\";\"科納克里\";\"other\"\n\"2422465\";\"코나크리\";\"other\"\n\"2422488\";\"Camayenne\";\"main\"\n\"2422488\";\"Camayen\";\"other\"\n\"2422924\";\"Boké\";\"main\"\n\"2422924\";\"Boke\";\"ascii\"\n\"2422924\";\"Boque\";\"other\"\n\"2422924\";\"Boqué\";\"other\"\n\"2422968\";\"Boffa\";\"main\"\n\"2422968\";\"Bomma\";\"other\"\n\"2423126\";\"Beyla\";\"main\"\n\"2578880\";\"Lélouma\";\"main\"\n\"2578880\";\"Lelouma\";\"ascii\"\n\"3578278\";\"Vieux-Habitants\";\"main\"\n\"3578278\";\"Les Habitants\";\"other\"\n\"3578324\";\"Trois-Rivières\";\"main\"\n\"3578324\";\"Trois-Rivieres\";\"ascii\"\n\"3578324\";\"Les Trois Rivieres\";\"other\"\n\"3578324\";\"Les Trois Rivières\";\"other\"\n\"3578351\";\"Terre-de-Bas\";\"main\"\n\"3578351\";\"Le Bourg\";\"other\"\n\"3578441\";\"Saint-François\";\"main\"\n\"3578441\";\"Saint-Francois\";\"ascii\"\n\"3578447\";\"Sainte-Rose\";\"main\"\n\"3578447\";\"Sent-Roz\";\"other\"\n\"3578447\";\"Сент-Роз\";\"other\"\n\"3578466\";\"Sainte-Anne\";\"main\"\n\"3578467\";\"Saint-Claude\";\"main\"\n\"3578575\";\"Port-Louis\";\"main\"\n\"3578594\";\"Pointe-Noire\";\"main\"\n\"3578594\";\"La Pointe-Noire\";\"other\"\n\"3578594\";\"Point Noire\";\"other\"\n\"3578599\";\"Pointe-à-Pitre\";\"main\"\n\"3578599\";\"Pointe-a-Pitre\";\"ascii\"\n\"3578599\";\"La Pointe a Pitre\";\"other\"\n\"3578599\";\"La Pointe à Pitre\";\"other\"\n\"3578681\";\"Petit-Canal\";\"main\"\n\"3578681\";\"Petit Canat\";\"other\"\n\"3578682\";\"Petit-Bourg\";\"main\"\n\"3578682\";\"Pti-Burg\";\"other\"\n\"3578682\";\"Пти-Бург\";\"other\"\n\"3578959\";\"Les Abymes\";\"main\"\n\"3578959\";\"Abeymes\";\"other\"\n\"3578959\";\"Abymes\";\"other\"\n\"3578967\";\"Le Moule\";\"main\"\n\"3578967\";\"Moule\";\"other\"\n\"3578978\";\"Le Gosier\";\"main\"\n\"3578978\";\"Gosier\";\"other\"\n\"3578978\";\"Gozier\";\"other\"\n\"3579023\";\"Lamentin\";\"main\"\n\"3579023\";\"Le Lamentin\";\"other\"\n\"3579232\";\"Grande Anse\";\"main\"\n\"3579232\";\"La Grande Anse\";\"other\"\n\"3579250\";\"Grand-Bourg\";\"main\"\n\"3579267\";\"Gourbeyre\";\"main\"\n\"3579267\";\"Gourbevre\";\"other\"\n\"3579585\";\"Capesterre-Belle-Eau\";\"main\"\n\"3579585\";\"Capesterre\";\"other\"\n\"3579642\";\"Bouillante\";\"main\"\n\"3579732\";\"Basse-Terre\";\"main\"\n\"3579732\";\"Bas-Ter\";\"other\"\n\"3579732\";\"Basse Terre\";\"other\"\n\"3579732\";\"Бас-Тер\";\"other\"\n\"3579761\";\"Baillif\";\"main\"\n\"3579761\";\"Le Baillif\";\"other\"\n\"3579767\";\"Baie-Mahault\";\"main\"\n\"3579767\";\"La Baie Mahault\";\"other\"\n\"3579789\";\"Anse-Bertrand\";\"main\"\n\"2306722\";\"Santiago de Baney\";\"main\"\n\"2306722\";\"Baney\";\"other\"\n\"2306722\";\"Bany\";\"other\"\n\"2306722\";\"Laka-Baney\";\"other\"\n\"2306774\";\"Palé\";\"main\"\n\"2306774\";\"Pale\";\"ascii\"\n\"2306774\";\"Ambo\";\"other\"\n\"2306774\";\"Annobon\";\"other\"\n\"2306774\";\"Annobón\";\"other\"\n\"2306774\";\"Ano Bom\";\"other\"\n\"2306774\";\"Pagalu\";\"other\"\n\"2306774\";\"San Antonio\";\"other\"\n\"2306774\";\"San Antonio de Pale\";\"other\"\n\"2306774\";\"San Antonio de Palé\";\"other\"\n\"2306774\";\"an'nobon dao\";\"other\"\n\"2306774\";\"アンノボン島\";\"other\"\n\"2306819\";\"Río Campo\";\"main\"\n\"2306819\";\"Rio Campo\";\"ascii\"\n\"2306824\";\"Rebola\";\"main\"\n\"2307145\";\"Nsok\";\"main\"\n\"2307145\";\"Ensorc\";\"other\"\n\"2307145\";\"N'Zork\";\"other\"\n\"2307145\";\"Nsoc\";\"other\"\n\"2307145\";\"Nsorc\";\"other\"\n\"2307145\";\"Nsork\";\"other\"\n\"2307145\";\"N’Zork\";\"other\"\n\"2307197\";\"Nsang\";\"main\"\n\"2307197\";\"Ensang\";\"other\"\n\"2307502\";\"Ncue\";\"main\"\n\"2307502\";\"Nkue Mision\";\"other\"\n\"2307502\";\"Nkue Misión\";\"other\"\n\"2307502\";\"San Francisco Javier\";\"other\"\n\"2307795\";\"Mongomo\";\"main\"\n\"2307795\";\"Margomo\";\"other\"\n\"2307795\";\"Mongomo de Guadalupe\";\"other\"\n\"2307970\";\"Mikomeseng\";\"main\"\n\"2307970\";\"Mekomeseng\";\"other\"\n\"2307970\";\"Micomeseng\";\"other\"\n\"2307970\";\"Mikamesen\";\"other\"\n\"2307970\";\"Mikomesen\";\"other\"\n\"2308278\";\"Mbini\";\"main\"\n\"2308278\";\"Benito\";\"other\"\n\"2308278\";\"Rio Benito\";\"other\"\n\"2308278\";\"Río Benito\";\"other\"\n\"2308278\";\"San Benito\";\"other\"\n\"2308626\";\"Machinda\";\"main\"\n\"2308994\";\"Evinayong\";\"main\"\n\"2308994\";\"Ebinayon\";\"other\"\n\"2308994\";\"Ebinayong\";\"other\"\n\"2308994\";\"Ebineyon\";\"other\"\n\"2308994\";\"Ebinoyon\";\"other\"\n\"2309332\";\"Ebebiyín\";\"main\"\n\"2309332\";\"Ebebiyin\";\"ascii\"\n\"2309332\";\"Ebibeyin\";\"other\"\n\"2309332\";\"Ebibeying\";\"other\"\n\"2309332\";\"Ehbebijina\";\"other\"\n\"2309332\";\"Эбебийина\";\"other\"\n\"2309527\";\"Malabo\";\"main\"\n\"2309527\";\"Ciudad de Malabo\";\"other\"\n\"2309527\";\"Malaba\";\"other\"\n\"2309527\";\"Malabas\";\"other\"\n\"2309527\";\"Malampo\";\"other\"\n\"2309527\";\"Port Clarence\";\"other\"\n\"2309527\";\"Rev Malebo\";\"other\"\n\"2309527\";\"Santa Isabel\";\"other\"\n\"2309527\";\"ma la bo\";\"other\"\n\"2309527\";\"malabw\";\"other\"\n\"2309527\";\"mallabo\";\"other\"\n\"2309527\";\"marabo\";\"other\"\n\"2309527\";\"Μαλάμπο\";\"other\"\n\"2309527\";\"Малабо\";\"other\"\n\"2309527\";\"מלאבו\";\"other\"\n\"2309527\";\"مالابو\";\"other\"\n\"2309527\";\"ማላቦ\";\"other\"\n\"2309527\";\"マラボ\";\"other\"\n\"2309527\";\"馬拉博\";\"other\"\n\"2309527\";\"말라보\";\"other\"\n\"2309528\";\"Luba\";\"main\"\n\"2309528\";\"Ciudad de Luba\";\"other\"\n\"2309528\";\"San Carlos\";\"other\"\n\"2309744\";\"Bitica\";\"main\"\n\"2309744\";\"Bitika\";\"other\"\n\"2309890\";\"Bicurga\";\"main\"\n\"2309890\";\"Bikurga\";\"other\"\n\"2310046\";\"Bata\";\"main\"\n\"2310046\";\"Kokapipa\";\"other\"\n\"2310046\";\"ba ta\";\"other\"\n\"2310046\";\"bata\";\"other\"\n\"2310046\";\"Бата\";\"other\"\n\"2310046\";\"バタ\";\"other\"\n\"2310046\";\"巴塔\";\"other\"\n\"2310134\";\"Ayene\";\"main\"\n\"2310134\";\"Ayene-Enduguensan\";\"other\"\n\"2310309\";\"Añisoc\";\"main\"\n\"2310309\";\"Anisoc\";\"ascii\"\n\"2310309\";\"Anisok\";\"other\"\n\"2310309\";\"Añisok\";\"other\"\n\"2310533\";\"Acurenam\";\"main\"\n\"2310533\";\"Acurenan\";\"other\"\n\"2310533\";\"Acurnam\";\"other\"\n\"2310533\";\"Akourenam\";\"other\"\n\"2310533\";\"Akournam\";\"other\"\n\"2310533\";\"Akurenam\";\"other\"\n\"2310533\";\"Akurenan\";\"other\"\n\"2310533\";\"Akurnam\";\"other\"\n\"2310547\";\"Aconibe\";\"main\"\n\"2310547\";\"Akonebe\";\"other\"\n\"251187\";\"Zonianá\";\"main\"\n\"251187\";\"Zoniana\";\"ascii\"\n\"251187\";\"Ζωνιανά\";\"other\"\n\"251250\";\"Zarós\";\"main\"\n\"251250\";\"Zaros\";\"ascii\"\n\"251250\";\"Ζαρός\";\"other\"\n\"251253\";\"Zárkos\";\"main\"\n\"251253\";\"Zarkos\";\"ascii\"\n\"251253\";\"Zarko\";\"other\"\n\"251253\";\"Zarkon\";\"other\"\n\"251253\";\"Zárkon\";\"other\"\n\"251253\";\"Ζάρκος\";\"other\"\n\"251280\";\"Zákynthos\";\"main\"\n\"251280\";\"Zakynthos\";\"ascii\"\n\"251280\";\"Zakinthos\";\"other\"\n\"251280\";\"Zante\";\"other\"\n\"251280\";\"Zákinthos\";\"other\"\n\"251280\";\"Ζάκυνθος\";\"other\"\n\"251283\";\"Zakháro\";\"main\"\n\"251283\";\"Zakharo\";\"ascii\"\n\"251283\";\"Zacharo\";\"other\"\n\"251283\";\"Ζαχάρω\";\"other\"\n\"251292\";\"Zagorá\";\"main\"\n\"251292\";\"Zagora\";\"ascii\"\n\"251292\";\"Ζαγορά\";\"other\"\n\"251297\";\"Gýtheion\";\"main\"\n\"251297\";\"Gytheion\";\"ascii\"\n\"251297\";\"Githion\";\"other\"\n\"251297\";\"Gytheio\";\"other\"\n\"251297\";\"Gythelon\";\"other\"\n\"251297\";\"Gythion\";\"other\"\n\"251297\";\"Gýtheio\";\"other\"\n\"251297\";\"Gýthelon\";\"other\"\n\"251297\";\"Yithio\";\"other\"\n\"251297\";\"Yithion\";\"other\"\n\"251297\";\"Yíthio\";\"other\"\n\"251297\";\"Yíthion\";\"other\"\n\"251297\";\"Γύθειον\";\"other\"\n\"251317\";\"Yimnón\";\"main\"\n\"251317\";\"Yimnon\";\"ascii\"\n\"251317\";\"Gymnon\";\"other\"\n\"251317\";\"Γυμνόν\";\"other\"\n\"251332\";\"Yiánnouli\";\"main\"\n\"251332\";\"Yiannouli\";\"ascii\"\n\"251332\";\"Giannoule\";\"other\"\n\"251332\";\"Γιάννουλη\";\"other\"\n\"251366\";\"Yéryeri\";\"main\"\n\"251366\";\"Yeryeri\";\"ascii\"\n\"251366\";\"Gergere\";\"other\"\n\"251366\";\"Γέργερη\";\"other\"\n\"251411\";\"Yerákion\";\"main\"\n\"251411\";\"Yerakion\";\"ascii\"\n\"251411\";\"Gerakion\";\"other\"\n\"251411\";\"Ybraki\";\"other\"\n\"251411\";\"Yeraki\";\"other\"\n\"251411\";\"Yeráki\";\"other\"\n\"251411\";\"Γεράκιον\";\"other\"\n\"251465\";\"Géfyra\";\"main\"\n\"251465\";\"Gefyra\";\"ascii\"\n\"251465\";\"Yefira\";\"other\"\n\"251465\";\"Yéfira\";\"other\"\n\"251465\";\"Γέφυρα\";\"other\"\n\"251525\";\"Xylókastron\";\"main\"\n\"251525\";\"Xylokastron\";\"ascii\"\n\"251525\";\"Xilokastron\";\"other\"\n\"251525\";\"Xilókastron\";\"other\"\n\"251525\";\"Xylokastro\";\"other\"\n\"251525\";\"Xylókastro\";\"other\"\n\"251525\";\"Ξυλόκαστρον\";\"other\"\n\"251606\";\"Vrontádos\";\"main\"\n\"251606\";\"Vrontados\";\"ascii\"\n\"251606\";\"Brontados\";\"other\"\n\"251606\";\"Vrondadhes\";\"other\"\n\"251606\";\"Vrondadhos\";\"other\"\n\"251606\";\"Vrondhades\";\"other\"\n\"251606\";\"Vrondhádes\";\"other\"\n\"251606\";\"Vrondádhes\";\"other\"\n\"251606\";\"Vrondádhos\";\"other\"\n\"251606\";\"Βροντάδος\";\"other\"\n\"251681\";\"Vrakhnaíika\";\"main\"\n\"251681\";\"Vrakhnaiika\";\"ascii\"\n\"251681\";\"Ayios Vasilios\";\"other\"\n\"251681\";\"Brachnaiika\";\"other\"\n\"251681\";\"Vrakhneika\";\"other\"\n\"251681\";\"Vrakhnéïka\";\"other\"\n\"251681\";\"Áyios Vasílios\";\"other\"\n\"251681\";\"Βραχναίικα\";\"other\"\n\"251685\";\"Vrakhátion\";\"main\"\n\"251685\";\"Vrakhation\";\"ascii\"\n\"251685\";\"Brachation\";\"other\"\n\"251685\";\"Vrakhati\";\"other\"\n\"251685\";\"Vrakháti\";\"other\"\n\"251685\";\"Βραχάτιον\";\"other\"\n\"251773\";\"Vouliagméni\";\"main\"\n\"251773\";\"Vouliagmeni\";\"ascii\"\n\"251773\";\"Βουλιαγμένη\";\"other\"\n\"251780\";\"Voúla\";\"main\"\n\"251780\";\"Voula\";\"ascii\"\n\"251780\";\"Vule\";\"other\"\n\"251780\";\"Βούλα\";\"other\"\n\"251780\";\"Вуле\";\"other\"\n\"251823\";\"Vónitsa\";\"main\"\n\"251823\";\"Vonitsa\";\"ascii\"\n\"251823\";\"Bonitsa\";\"other\"\n\"251823\";\"Βόνιτσα\";\"other\"\n\"251833\";\"Vólos\";\"main\"\n\"251833\";\"Volos\";\"ascii\"\n\"251833\";\"Bolos\";\"other\"\n\"251833\";\"Iolcus\";\"other\"\n\"251833\";\"Volo\";\"other\"\n\"251833\";\"Wolos\";\"other\"\n\"251833\";\"wwlws\";\"other\"\n\"251833\";\"Βόλος\";\"other\"\n\"251833\";\"Волос\";\"other\"\n\"251833\";\"וולוס\";\"other\"\n\"251888\";\"Vlakhópoulon\";\"main\"\n\"251888\";\"Vlakhopoulon\";\"ascii\"\n\"251888\";\"Blachopoulon\";\"other\"\n\"251888\";\"Βλαχόπουλον\";\"other\"\n\"251896\";\"Vlakhiótis\";\"main\"\n\"251896\";\"Vlakhiotis\";\"ascii\"\n\"251896\";\"Blachiotes\";\"other\"\n\"251896\";\"Vlakhioti\";\"other\"\n\"251896\";\"Vlakhiotika\";\"other\"\n\"251896\";\"Vlakhióti\";\"other\"\n\"251896\";\"Vlakhiótika\";\"other\"\n\"251896\";\"Βλαχιώτης\";\"other\"\n\"251948\";\"Víron\";\"main\"\n\"251948\";\"Viron\";\"ascii\"\n\"251948\";\"Byron\";\"other\"\n\"251948\";\"Βύρων\";\"other\"\n\"251959\";\"Vília\";\"main\"\n\"251959\";\"Vilia\";\"ascii\"\n\"251959\";\"Bilia\";\"other\"\n\"251959\";\"Villia\";\"other\"\n\"251959\";\"Βίλια\";\"other\"\n\"252030\";\"Verdikoússa\";\"main\"\n\"252030\";\"Verdikoussa\";\"ascii\"\n\"252030\";\"Berdikoussa\";\"other\"\n\"252030\";\"Verdhikousa\";\"other\"\n\"252030\";\"Verdhikoussa\";\"other\"\n\"252030\";\"Verdhikoúsa\";\"other\"\n\"252030\";\"Verdhikoússa\";\"other\"\n\"252030\";\"Βερδικούσσα\";\"other\"\n\"252062\";\"Vélon\";\"main\"\n\"252062\";\"Velon\";\"ascii\"\n\"252062\";\"Belon\";\"other\"\n\"252062\";\"Vello\";\"other\"\n\"252062\";\"Vellon\";\"other\"\n\"252062\";\"Véllo\";\"other\"\n\"252062\";\"Véllon\";\"other\"\n\"252062\";\"Βέλον\";\"other\"\n\"252074\";\"Velestínon\";\"main\"\n\"252074\";\"Velestinon\";\"ascii\"\n\"252074\";\"Belestinon\";\"other\"\n\"252074\";\"Velestina\";\"other\"\n\"252074\";\"Βελεστίνον\";\"other\"\n\"252101\";\"Váyia\";\"main\"\n\"252101\";\"Vayia\";\"ascii\"\n\"252101\";\"Bagia\";\"other\"\n\"252101\";\"Vagia\";\"other\"\n\"252101\";\"Βάγια\";\"other\"\n\"252164\";\"Vathí\";\"main\"\n\"252164\";\"Vathi\";\"ascii\"\n\"252164\";\"Bathy\";\"other\"\n\"252164\";\"Vathi Avlidhos\";\"other\"\n\"252164\";\"Vathy\";\"other\"\n\"252164\";\"Vathí Avlídhos\";\"other\"\n\"252164\";\"Βαθύ\";\"other\"\n\"252165\";\"Vathí\";\"main\"\n\"252165\";\"Vathi\";\"ascii\"\n\"252165\";\"Βαθύ\";\"other\"\n\"252166\";\"Vathý\";\"main\"\n\"252166\";\"Vathy\";\"ascii\"\n\"252166\";\"Ano Vathi\";\"other\"\n\"252166\";\"Vathi\";\"other\"\n\"252166\";\"Vathí\";\"other\"\n\"252166\";\"Áno Vathí\";\"other\"\n\"252190\";\"Vasilikón\";\"main\"\n\"252190\";\"Vasilikon\";\"ascii\"\n\"252190\";\"Basilikon\";\"other\"\n\"252190\";\"Vasiliko\";\"other\"\n\"252190\";\"Βασιλικόν\";\"other\"\n\"252200\";\"Vasilikí\";\"main\"\n\"252200\";\"Vasiliki\";\"ascii\"\n\"252200\";\"Basilike\";\"other\"\n\"252200\";\"Voivoda\";\"other\"\n\"252200\";\"Voïvóda\";\"other\"\n\"252200\";\"Βασιλική\";\"other\"\n\"252232\";\"Varvásaina\";\"main\"\n\"252232\";\"Varvasaina\";\"ascii\"\n\"252232\";\"Barbasaina\";\"other\"\n\"252232\";\"Βαρβάσαινα\";\"other\"\n\"252239\";\"Vartholomión\";\"main\"\n\"252239\";\"Vartholomion\";\"ascii\"\n\"252239\";\"Bartholomio\";\"other\"\n\"252239\";\"Vartholomi\";\"other\"\n\"252239\";\"Vartholomio\";\"other\"\n\"252239\";\"Vartholomió\";\"other\"\n\"252239\";\"Βαρθολομιό\";\"other\"\n\"252244\";\"Varnávas\";\"main\"\n\"252244\";\"Varnavas\";\"ascii\"\n\"252244\";\"Barnabas\";\"other\"\n\"252244\";\"Βαρνάβας\";\"other\"\n\"252267\";\"Vareiá\";\"main\"\n\"252267\";\"Vareia\";\"ascii\"\n\"252267\";\"Bareia\";\"other\"\n\"252267\";\"Varia\";\"other\"\n\"252267\";\"Variá\";\"other\"\n\"252267\";\"Varyia\";\"other\"\n\"252267\";\"Varyiá\";\"other\"\n\"252267\";\"Βαρειά\";\"other\"\n\"252270\";\"Vári\";\"main\"\n\"252270\";\"Vari\";\"ascii\"\n\"252270\";\"Βάρη\";\"other\"\n\"252271\";\"Vári\";\"main\"\n\"252271\";\"Vari\";\"ascii\"\n\"252291\";\"Várda\";\"main\"\n\"252291\";\"Varda\";\"ascii\"\n\"252291\";\"Ano Manolas\";\"other\"\n\"252291\";\"Barda\";\"other\"\n\"252291\";\"Vardha\";\"other\"\n\"252291\";\"Várdha\";\"other\"\n\"252291\";\"Áno Manolás\";\"other\"\n\"252291\";\"Βάρδα\";\"other\"\n\"252303\";\"Vamvakoú\";\"main\"\n\"252303\";\"Vamvakou\";\"ascii\"\n\"252303\";\"Bairakli\";\"other\"\n\"252303\";\"Bambakou\";\"other\"\n\"252303\";\"Baïraklí\";\"other\"\n\"252303\";\"Βαμβακού\";\"other\"\n\"252327\";\"Valsamáta\";\"main\"\n\"252327\";\"Valsamata\";\"ascii\"\n\"252327\";\"Balsamata\";\"other\"\n\"252327\";\"Βαλσαμάτα\";\"other\"\n\"252486\";\"Tsikalariá\";\"main\"\n\"252486\";\"Tsikalaria\";\"ascii\"\n\"252486\";\"Tsikalaryia\";\"other\"\n\"252486\";\"Tsikalaryiá\";\"other\"\n\"252486\";\"Τσικαλαριά\";\"other\"\n\"252523\";\"Tsarítsani\";\"main\"\n\"252523\";\"Tsaritsani\";\"ascii\"\n\"252523\";\"Tsaritsane\";\"other\"\n\"252523\";\"Τσαρίτσανη\";\"other\"\n\"252601\";\"Trípolis\";\"main\"\n\"252601\";\"Tripolis\";\"ascii\"\n\"252601\";\"Tripole\";\"other\"\n\"252601\";\"Tripole Arkadias\";\"other\"\n\"252601\";\"Tripoli\";\"other\"\n\"252601\";\"Tripolitza\";\"other\"\n\"252601\";\"Tripolizza\";\"other\"\n\"252601\";\"Trípoli\";\"other\"\n\"252601\";\"Τρίπολη\";\"other\"\n\"252601\";\"Τρίπολη Αρκαδίας\";\"other\"\n\"252601\";\"Триполи\";\"other\"\n\"252655\";\"Tríkeri\";\"main\"\n\"252655\";\"Trikeri\";\"ascii\"\n\"252655\";\"Trikerion\";\"other\"\n\"252655\";\"Trikkeri\";\"other\"\n\"252655\";\"Tríkerion\";\"other\"\n\"252655\";\"Tríkkeri\";\"other\"\n\"252664\";\"Tríkala\";\"main\"\n\"252664\";\"Trikala\";\"ascii\"\n\"252664\";\"Nomos Trikalon\";\"other\"\n\"252664\";\"Tirhala\";\"other\"\n\"252664\";\"Trikalon\";\"other\"\n\"252664\";\"Trikkaion\";\"other\"\n\"252664\";\"Trikkala\";\"other\"\n\"252664\";\"Trikkaíon\";\"other\"\n\"252664\";\"Trikálon\";\"other\"\n\"252664\";\"Tríkkala\";\"other\"\n\"252664\";\"Tırhala\";\"other\"\n\"252664\";\"trhalh\";\"other\"\n\"252664\";\"Νομός Τρικάλων\";\"other\"\n\"252664\";\"Τρίκαλα\";\"other\"\n\"252664\";\"Трикала\";\"other\"\n\"252664\";\"ترحاله\";\"other\"\n\"252685\";\"Triánta\";\"main\"\n\"252685\";\"Trianta\";\"ascii\"\n\"252685\";\"Ialisos\";\"other\"\n\"252685\";\"Ialissos\";\"other\"\n\"252685\";\"Ialisós\";\"other\"\n\"252685\";\"Ialysos\";\"other\"\n\"252685\";\"Ialyssos\";\"other\"\n\"252685\";\"Ialyssós\";\"other\"\n\"252685\";\"Ialysós\";\"other\"\n\"252685\";\"Lalisos\";\"other\"\n\"252685\";\"Trianda\";\"other\"\n\"252685\";\"Triánda\";\"other\"\n\"252685\";\"Ιαλυσός\";\"other\"\n\"252685\";\"Лалисос\";\"other\"\n\"252685\";\"Трианта\";\"other\"\n\"252747\";\"Traganón\";\"main\"\n\"252747\";\"Traganon\";\"ascii\"\n\"252747\";\"Τραγανόν\";\"other\"\n\"252750\";\"Tragána\";\"main\"\n\"252750\";\"Tragana\";\"ascii\"\n\"252750\";\"Τραγάνα\";\"other\"\n\"252833\";\"Tolón\";\"main\"\n\"252833\";\"Tolon\";\"ascii\"\n\"252833\";\"TOLO\";\"other\"\n\"252833\";\"Tolo\";\"other\"\n\"252833\";\"Tolos\";\"other\"\n\"252833\";\"Tolós\";\"other\"\n\"252833\";\"ΤΟΛΟ\";\"other\"\n\"252833\";\"Τολόν\";\"other\"\n\"252848\";\"Týrnavos\";\"main\"\n\"252848\";\"Tyrnavos\";\"ascii\"\n\"252848\";\"Tirnavos\";\"other\"\n\"252848\";\"Tyrnabos\";\"other\"\n\"252848\";\"Tyrnavo\";\"other\"\n\"252848\";\"Tírnavos\";\"other\"\n\"252848\";\"Τύρναβος\";\"other\"\n\"252854\";\"Tínos\";\"main\"\n\"252854\";\"Tinos\";\"ascii\"\n\"252854\";\"Saint Nicholas\";\"other\"\n\"252854\";\"Tenos\";\"other\"\n\"252854\";\"Τήνος\";\"other\"\n\"252862\";\"Tympákion\";\"main\"\n\"252862\";\"Tympakion\";\"ascii\"\n\"252862\";\"Dhivaki\";\"other\"\n\"252862\";\"Dhiváki\";\"other\"\n\"252862\";\"Timbakion\";\"other\"\n\"252862\";\"Timbákion\";\"other\"\n\"252862\";\"Tybaki\";\"other\"\n\"252862\";\"Tympaki\";\"other\"\n\"252862\";\"Tympáki\";\"other\"\n\"252862\";\"Τυμπάκιον\";\"other\"\n\"252864\";\"Tílisos\";\"main\"\n\"252864\";\"Tilisos\";\"ascii\"\n\"252864\";\"Tilissos\";\"other\"\n\"252864\";\"Tylisos\";\"other\"\n\"252864\";\"Tylissos\";\"other\"\n\"252864\";\"Tílissos\";\"other\"\n\"252864\";\"Τύλισος\";\"other\"\n\"252889\";\"Thrapsanón\";\"main\"\n\"252889\";\"Thrapsanon\";\"ascii\"\n\"252889\";\"Thrapsano\";\"other\"\n\"252889\";\"Thrapsanos\";\"other\"\n\"252889\";\"Thrapsanó\";\"other\"\n\"252889\";\"Thrapsanós\";\"other\"\n\"252889\";\"Θραψανόν\";\"other\"\n\"252891\";\"Thouría\";\"main\"\n\"252891\";\"Thouria\";\"ascii\"\n\"252891\";\"Θουρία\";\"other\"\n\"252910\";\"Thívai\";\"main\"\n\"252910\";\"Thivai\";\"ascii\"\n\"252910\";\"Teba\";\"other\"\n\"252910\";\"Tebas\";\"other\"\n\"252910\";\"Tebo\";\"other\"\n\"252910\";\"Teboj\";\"other\"\n\"252910\";\"Theba\";\"other\"\n\"252910\";\"Thebae\";\"other\"\n\"252910\";\"Thebai\";\"other\"\n\"252910\";\"Theben\";\"other\"\n\"252910\";\"Thebes\";\"other\"\n\"252910\";\"Thiva\";\"other\"\n\"252910\";\"Thíva\";\"other\"\n\"252910\";\"Thēbai\";\"other\"\n\"252910\";\"Θήβα\";\"other\"\n\"252910\";\"Θήβαι\";\"other\"\n\"252910\";\"Θηβαι\";\"other\"\n\"252920\";\"Thíra\";\"main\"\n\"252920\";\"Thira\";\"ascii\"\n\"252920\";\"FIRA\";\"other\"\n\"252920\";\"Fira\";\"other\"\n\"252920\";\"Firá\";\"other\"\n\"252920\";\"Thera\";\"other\"\n\"252920\";\"Θήρα\";\"other\"\n\"252920\";\"Θηρα\";\"other\"\n\"252920\";\"ΦΗΡΑ\";\"other\"\n\"252920\";\"Φηρά\";\"other\"\n\"252920\";\"Фира\";\"other\"\n\"252927\";\"Thymianá\";\"main\"\n\"252927\";\"Thymiana\";\"ascii\"\n\"252927\";\"Chorio Thymiana\";\"other\"\n\"252927\";\"Chorió Thymianá\";\"other\"\n\"252927\";\"Effymiana\";\"other\"\n\"252927\";\"Effymianá\";\"other\"\n\"252927\";\"Evfimiana\";\"other\"\n\"252927\";\"Evfimianá\";\"other\"\n\"252927\";\"Thimiana\";\"other\"\n\"252927\";\"Thimianá\";\"other\"\n\"252927\";\"Θυμιανά\";\"other\"\n\"252939\";\"Thesprotikón\";\"main\"\n\"252939\";\"Thesprotikon\";\"ascii\"\n\"252939\";\"Dhelovon\";\"other\"\n\"252939\";\"Dhélovon\";\"other\"\n\"252939\";\"Thesprotiko\";\"other\"\n\"252939\";\"Thesprotikó\";\"other\"\n\"252939\";\"Θεσπρωτικόν\";\"other\"\n\"252942\";\"Thespiaí\";\"main\"\n\"252942\";\"Thespiai\";\"ascii\"\n\"252942\";\"Erimokastron\";\"other\"\n\"252942\";\"Erimókastron\";\"other\"\n\"252942\";\"Θεσπιαί\";\"other\"\n\"252946\";\"Thérmon\";\"main\"\n\"252946\";\"Thermon\";\"ascii\"\n\"252946\";\"Kefalovrison\";\"other\"\n\"252946\";\"Kefalóvrison\";\"other\"\n\"252946\";\"Θέρμον\";\"other\"\n\"252989\";\"Terpsithéa\";\"main\"\n\"252989\";\"Terpsithea\";\"ascii\"\n\"252989\";\"Baislar\";\"other\"\n\"252989\";\"Baïslár\";\"other\"\n\"252989\";\"Kaislar\";\"other\"\n\"252989\";\"Kaïslár\";\"other\"\n\"252989\";\"Τερψιθέα\";\"other\"\n\"253003\";\"Témeni\";\"main\"\n\"253003\";\"Temeni\";\"ascii\"\n\"253003\";\"Temene\";\"other\"\n\"253003\";\"Τέμενη\";\"other\"\n\"253130\";\"Strátos\";\"main\"\n\"253130\";\"Stratos\";\"ascii\"\n\"253130\";\"Sorovigli\";\"other\"\n\"253130\";\"Sorovígli\";\"other\"\n\"253130\";\"Στράτος\";\"other\"\n\"253158\";\"Stírion\";\"main\"\n\"253158\";\"Stirion\";\"ascii\"\n\"253158\";\"Steirion\";\"other\"\n\"253158\";\"Stiri\";\"other\"\n\"253158\";\"Stíri\";\"other\"\n\"253158\";\"Στείριον\";\"other\"\n\"253164\";\"Stýpsi\";\"main\"\n\"253164\";\"Stypsi\";\"ascii\"\n\"253164\";\"Stipsi\";\"other\"\n\"253164\";\"Stipsos\";\"other\"\n\"253164\";\"Stypse\";\"other\"\n\"253164\";\"Stípsi\";\"other\"\n\"253164\";\"Στύψη\";\"other\"\n\"253170\";\"Stilís\";\"main\"\n\"253170\";\"Stilis\";\"ascii\"\n\"253170\";\"Stylis\";\"other\"\n\"253170\";\"Στυλίς\";\"other\"\n\"253218\";\"Stefanavíkion\";\"main\"\n\"253218\";\"Stefanavikion\";\"ascii\"\n\"253218\";\"Hajimisi\";\"other\"\n\"253218\";\"Hajímisi\";\"other\"\n\"253218\";\"Stefanovikion\";\"other\"\n\"253218\";\"Stefanovíkion\";\"other\"\n\"253218\";\"Stephanobikeion\";\"other\"\n\"253218\";\"Στεφανοβίκειον\";\"other\"\n\"253286\";\"Stános\";\"main\"\n\"253286\";\"Stanos\";\"ascii\"\n\"253286\";\"Stano\";\"other\"\n\"253286\";\"Stáno\";\"other\"\n\"253286\";\"Στάνος\";\"other\"\n\"253302\";\"Stamáta\";\"main\"\n\"253302\";\"Stamata\";\"ascii\"\n\"253302\";\"Σταμάτα\";\"other\"\n\"253305\";\"Stalís\";\"main\"\n\"253305\";\"Stalis\";\"ascii\"\n\"253305\";\"Stalida\";\"other\"\n\"253305\";\"Σταλίς\";\"other\"\n\"253305\";\"Σταλιδα\";\"other\"\n\"253356\";\"Spétses\";\"main\"\n\"253356\";\"Spetses\";\"ascii\"\n\"253356\";\"Spetsai\";\"other\"\n\"253356\";\"Spezzia\";\"other\"\n\"253356\";\"Spétsai\";\"other\"\n\"253356\";\"Σπέτες\";\"other\"\n\"253356\";\"Σπέτσαι\";\"other\"\n\"253357\";\"Sperkhóyia\";\"main\"\n\"253357\";\"Sperkhoyia\";\"ascii\"\n\"253357\";\"Sperchogeia\";\"other\"\n\"253357\";\"Σπερχόγεια\";\"other\"\n\"253360\";\"Sperkhiás\";\"main\"\n\"253360\";\"Sperkhias\";\"ascii\"\n\"253360\";\"Spercheias\";\"other\"\n\"253360\";\"Σπερχειάς\";\"other\"\n\"253376\";\"Spáta\";\"main\"\n\"253376\";\"Spata\";\"ascii\"\n\"253376\";\"Σπάτα\";\"other\"\n\"253394\";\"Sparta\";\"main\"\n\"253394\";\"Esparta\";\"other\"\n\"253394\";\"Lacedaemon\";\"other\"\n\"253394\";\"Lacedemon\";\"other\"\n\"253394\";\"Lacedemonia\";\"other\"\n\"253394\";\"Lacédémon\";\"other\"\n\"253394\";\"Lakedaimon\";\"other\"\n\"253394\";\"Lakedaímon\";\"other\"\n\"253394\";\"Lakedemon\";\"other\"\n\"253394\";\"Sparte\";\"other\"\n\"253394\";\"Sparti\";\"other\"\n\"253394\";\"Sparto\";\"other\"\n\"253394\";\"Spartē\";\"other\"\n\"253394\";\"Spárti\";\"other\"\n\"253394\";\"Λακεδαιμων\";\"other\"\n\"253394\";\"Σπάρτη\";\"other\"\n\"253394\";\"Σπαρτη\";\"other\"\n\"253394\";\"Лакедемон\";\"other\"\n\"253419\";\"Soúrpi\";\"main\"\n\"253419\";\"Sourpi\";\"ascii\"\n\"253419\";\"Sourpe\";\"other\"\n\"253419\";\"Σούρπη\";\"other\"\n\"253456\";\"Soúda\";\"main\"\n\"253456\";\"Souda\";\"ascii\"\n\"253456\";\"Soudha\";\"other\"\n\"253456\";\"Soúdha\";\"other\"\n\"253456\";\"Σούδα\";\"other\"\n\"253494\";\"Sofikón\";\"main\"\n\"253494\";\"Sofikon\";\"ascii\"\n\"253494\";\"Sophiko\";\"other\"\n\"253494\";\"Sophikon\";\"other\"\n\"253494\";\"Σοφικόν\";\"other\"\n\"253581\";\"Skópelos\";\"main\"\n\"253581\";\"Skopelos\";\"ascii\"\n\"253581\";\"Σκόπελος\";\"other\"\n\"253582\";\"Skópelos\";\"main\"\n\"253582\";\"Skopelos\";\"ascii\"\n\"253614\";\"Skýros\";\"main\"\n\"253614\";\"Skyros\";\"ascii\"\n\"253614\";\"Skiros\";\"other\"\n\"253614\";\"Skíros\";\"other\"\n\"253614\";\"Σκύρος\";\"other\"\n\"253643\";\"Skíathos\";\"main\"\n\"253643\";\"Skiathos\";\"ascii\"\n\"253643\";\"Σκίαθος\";\"other\"\n\"253666\";\"Skhísma\";\"main\"\n\"253666\";\"Skhisma\";\"ascii\"\n\"253666\";\"Schisma\";\"other\"\n\"253666\";\"Σχίσμα\";\"other\"\n\"253673\";\"Skhimatárion\";\"main\"\n\"253673\";\"Skhimatarion\";\"ascii\"\n\"253673\";\"Schematarion\";\"other\"\n\"253673\";\"Skhimatari\";\"other\"\n\"253673\";\"Skhimatári\";\"other\"\n\"253673\";\"Skimatari\";\"other\"\n\"253673\";\"Σχηματάριον\";\"other\"\n\"253716\";\"Skála Oropoú\";\"main\"\n\"253716\";\"Skala Oropou\";\"ascii\"\n\"253716\";\"Scalaorapou\";\"other\"\n\"253716\";\"Σκάλα Όρωπού\";\"other\"\n\"253717\";\"Skalánion\";\"main\"\n\"253717\";\"Skalanion\";\"ascii\"\n\"253717\";\"Skalani\";\"other\"\n\"253717\";\"Skaláni\";\"other\"\n\"253717\";\"Σκαλάνιον\";\"other\"\n\"253739\";\"Skála\";\"main\"\n\"253739\";\"Skala\";\"ascii\"\n\"253739\";\"Σκάλα\";\"other\"\n\"253759\";\"Siteía\";\"main\"\n\"253759\";\"Siteia\";\"ascii\"\n\"253759\";\"Seteia\";\"other\"\n\"253759\";\"Sitia\";\"other\"\n\"253759\";\"Sitía\";\"other\"\n\"253759\";\"Σητεία\";\"other\"\n\"253817\";\"Sinoikismós Khavárion\";\"main\"\n\"253817\";\"Sinoikismos Khavarion\";\"ascii\"\n\"253817\";\"Sionoikizmos Khavari\";\"other\"\n\"253817\";\"Sionoikizmós Khávari\";\"other\"\n\"253858\";\"Sými\";\"main\"\n\"253858\";\"Symi\";\"ascii\"\n\"253858\";\"Simi\";\"other\"\n\"253858\";\"Sombeki\";\"other\"\n\"253858\";\"Sími\";\"other\"\n\"253866\";\"Siliveniótika\";\"main\"\n\"253866\";\"Siliveniotika\";\"ascii\"\n\"253866\";\"Silivaina\";\"other\"\n\"253866\";\"Silivainiotika\";\"other\"\n\"253866\";\"Silivainiótika\";\"other\"\n\"253866\";\"Silívaina\";\"other\"\n\"253866\";\"Sklivaina\";\"other\"\n\"253866\";\"Sklívaina\";\"other\"\n\"253866\";\"Sylibainiotika\";\"other\"\n\"253866\";\"Συλιβαινιώτικα\";\"other\"\n\"253871\";\"Sykoúrion\";\"main\"\n\"253871\";\"Sykourion\";\"ascii\"\n\"253871\";\"Mega Keserli\";\"other\"\n\"253871\";\"Méga Keserlí\";\"other\"\n\"253871\";\"Sikourion\";\"other\"\n\"253871\";\"Sikoúrion\";\"other\"\n\"253871\";\"Sykourio\";\"other\"\n\"253871\";\"Sykoúrio\";\"other\"\n\"253871\";\"Συκούριον\";\"other\"\n\"253878\";\"Sikión\";\"main\"\n\"253878\";\"Sikion\";\"ascii\"\n\"253878\";\"Sikyon\";\"other\"\n\"253878\";\"Vasilikon\";\"other\"\n\"253878\";\"Vasilikón\";\"other\"\n\"253878\";\"Σικυών\";\"other\"\n\"253908\";\"Sykéa\";\"main\"\n\"253908\";\"Sykea\";\"ascii\"\n\"253908\";\"Sikea\";\"other\"\n\"253908\";\"Sikéa\";\"other\"\n\"253908\";\"Συκέα\";\"other\"\n\"254030\";\"Selínia\";\"main\"\n\"254030\";\"Selinia\";\"ascii\"\n\"254030\";\"Σελήνια\";\"other\"\n\"254032\";\"Selianítika\";\"main\"\n\"254032\";\"Selianitika\";\"ascii\"\n\"254032\";\"Σελιανίτικα\";\"other\"\n\"254045\";\"Savália\";\"main\"\n\"254045\";\"Savalia\";\"ascii\"\n\"254045\";\"Sabalia\";\"other\"\n\"254045\";\"Savallia\";\"other\"\n\"254045\";\"Savvalia\";\"other\"\n\"254045\";\"Savvália\";\"other\"\n\"254045\";\"Savállia\";\"other\"\n\"254045\";\"Σαβάλια\";\"other\"\n\"254064\";\"Sardínia\";\"main\"\n\"254064\";\"Sardinia\";\"ascii\"\n\"254064\";\"Sardhinia\";\"other\"\n\"254064\";\"Sardhinina\";\"other\"\n\"254064\";\"Sardhínia\";\"other\"\n\"254064\";\"Sardhínina\";\"other\"\n\"254064\";\"Σαρδίνια\";\"other\"\n\"254115\";\"Sámos\";\"main\"\n\"254115\";\"Samos\";\"ascii\"\n\"254115\";\"Liman Vatheos\";\"other\"\n\"254115\";\"Liman Vathéos\";\"other\"\n\"254115\";\"Limen Vatheos\";\"other\"\n\"254115\";\"Limin Vatheos\";\"other\"\n\"254115\";\"Limén Vathéos\";\"other\"\n\"254115\";\"Limín Vathéos\";\"other\"\n\"254115\";\"Port Vathi\";\"other\"\n\"254115\";\"Vathy\";\"other\"\n\"254115\";\"Vathy harbor\";\"other\"\n\"254115\";\"Σάμος\";\"other\"\n\"254123\";\"Sámi\";\"main\"\n\"254123\";\"Sami\";\"ascii\"\n\"254123\";\"Aigialos\";\"other\"\n\"254123\";\"Aigialós\";\"other\"\n\"254123\";\"Aiyialos\";\"other\"\n\"254123\";\"Aiyialós\";\"other\"\n\"254123\";\"Gialos\";\"other\"\n\"254123\";\"Same\";\"other\"\n\"254123\";\"Samos\";\"other\"\n\"254123\";\"Yialos\";\"other\"\n\"254123\";\"Yialós\";\"other\"\n\"254123\";\"Γιαλός\";\"other\"\n\"254123\";\"Σάμη\";\"other\"\n\"254144\";\"Salamís\";\"main\"\n\"254144\";\"Salamis\";\"ascii\"\n\"254144\";\"Koulouri\";\"other\"\n\"254144\";\"Koúlouri\";\"other\"\n\"254144\";\"Salamina\";\"other\"\n\"254144\";\"Σαλαμίς\";\"other\"\n\"254144\";\"Саламина\";\"other\"\n\"254165\";\"Royítika\";\"main\"\n\"254165\";\"Royitika\";\"ascii\"\n\"254165\";\"Rogitika\";\"other\"\n\"254165\";\"Roitika\";\"other\"\n\"254165\";\"Roḯtika\";\"other\"\n\"254165\";\"Ρογίτικα\";\"other\"\n\"254170\";\"Roviaí\";\"main\"\n\"254170\";\"Roviai\";\"ascii\"\n\"254170\";\"Robiai\";\"other\"\n\"254170\";\"Roviais\";\"other\"\n\"254170\";\"Roviaís\";\"other\"\n\"254170\";\"Rovies\";\"other\"\n\"254170\";\"Roviés\";\"other\"\n\"254170\";\"Ροβιαί\";\"other\"\n\"254253\";\"Rodotópion\";\"main\"\n\"254253\";\"Rodotopion\";\"ascii\"\n\"254253\";\"Rodhotopi\";\"other\"\n\"254253\";\"Rodhotopion\";\"other\"\n\"254253\";\"Rodhotovi\";\"other\"\n\"254253\";\"Rodhotópi\";\"other\"\n\"254253\";\"Rodhotópion\";\"other\"\n\"254253\";\"Rodhotóvi\";\"other\"\n\"254253\";\"Rodotopi\";\"other\"\n\"254253\";\"Rodotópi\";\"other\"\n\"254253\";\"Ροδοτόπιον\";\"other\"\n\"254283\";\"Rizómilos\";\"main\"\n\"254283\";\"Rizomilos\";\"ascii\"\n\"254283\";\"Rizomylos\";\"other\"\n\"254283\";\"Ριζόμυλος\";\"other\"\n\"254286\";\"Rízoma\";\"main\"\n\"254286\";\"Rizoma\";\"ascii\"\n\"254286\";\"Sklataina\";\"other\"\n\"254286\";\"Sklátaina\";\"other\"\n\"254286\";\"Ρίζωμα\";\"other\"\n\"254315\";\"Ríon\";\"main\"\n\"254315\";\"Rion\";\"ascii\"\n\"254315\";\"Rhion\";\"other\"\n\"254315\";\"Ρίον\";\"other\"\n\"254352\";\"Réthymnon\";\"main\"\n\"254352\";\"Rethymnon\";\"ascii\"\n\"254352\";\"Nomos Rethymnes\";\"other\"\n\"254352\";\"PLATANIAS RETHYMNO\";\"other\"\n\"254352\";\"Prefectura Rethimno\";\"other\"\n\"254352\";\"Prefettura di Rethymno\";\"other\"\n\"254352\";\"Resmo\";\"other\"\n\"254352\";\"Rethimno\";\"other\"\n\"254352\";\"Rethimnon\";\"other\"\n\"254352\";\"Rethymne\";\"other\"\n\"254352\";\"Rethymno\";\"other\"\n\"254352\";\"Rethymnon prefektur\";\"other\"\n\"254352\";\"Rethýmne\";\"other\"\n\"254352\";\"Retimno\";\"other\"\n\"254352\";\"Retimo\";\"other\"\n\"254352\";\"Retino\";\"other\"\n\"254352\";\"Réthimnon\";\"other\"\n\"254352\";\"Réthymno\";\"other\"\n\"254352\";\"Rétino\";\"other\"\n\"254352\";\"Νομός Ρεθύμνης\";\"other\"\n\"254352\";\"ΠΛΑΤΑΝΙΑΣ ΡΕΘΥΜΝΟ\";\"other\"\n\"254352\";\"Ρέθυμνο\";\"other\"\n\"254352\";\"Ρέθυμνον\";\"other\"\n\"254352\";\"Ретимно\";\"other\"\n\"254425\";\"Rafína\";\"main\"\n\"254425\";\"Rafina\";\"ascii\"\n\"254425\";\"Arafin\";\"other\"\n\"254425\";\"Aráfin\";\"other\"\n\"254425\";\"Triglia\";\"other\"\n\"254425\";\"Tríglia\";\"other\"\n\"254425\";\"Αράφην\";\"other\"\n\"254425\";\"Ραφήνα\";\"other\"\n\"254442\";\"Pteleós\";\"main\"\n\"254442\";\"Pteleos\";\"ascii\"\n\"254442\";\"Ftelio\";\"other\"\n\"254442\";\"Ftelió\";\"other\"\n\"254442\";\"Pteleon\";\"other\"\n\"254442\";\"Pteleón\";\"other\"\n\"254442\";\"Πτελεός\";\"other\"\n\"254505\";\"Psikhikón\";\"main\"\n\"254505\";\"Psikhikon\";\"ascii\"\n\"254505\";\"Psichiko\";\"other\"\n\"254505\";\"Psikhiko\";\"other\"\n\"254505\";\"Psikhikó\";\"other\"\n\"254505\";\"Psychico\";\"other\"\n\"254505\";\"Psychiko\";\"other\"\n\"254505\";\"Psychikon\";\"other\"\n\"254505\";\"Psykiko\";\"other\"\n\"254505\";\"Ψυχικόν\";\"other\"\n\"254546\";\"Psakhná\";\"main\"\n\"254546\";\"Psakhna\";\"ascii\"\n\"254546\";\"Psachna\";\"other\"\n\"254546\";\"Ψαχνά\";\"other\"\n\"254584\";\"Prokópion\";\"main\"\n\"254584\";\"Prokopion\";\"ascii\"\n\"254584\";\"Προκόπιον\";\"other\"\n\"254599\";\"Profítis Ilías\";\"main\"\n\"254599\";\"Profitis Ilias\";\"ascii\"\n\"254599\";\"Kami Kasteli\";\"other\"\n\"254599\";\"Kanli Kastellion\";\"other\"\n\"254599\";\"Kanlí Kastéllion\";\"other\"\n\"254599\";\"Prophetes Elias\";\"other\"\n\"254599\";\"Προφήτης Ηλίας\";\"other\"\n\"254698\";\"Préveza\";\"main\"\n\"254698\";\"Preveza\";\"ascii\"\n\"254698\";\"Prebeza\";\"other\"\n\"254698\";\"Prevesa\";\"other\"\n\"254698\";\"Preveze\";\"other\"\n\"254698\";\"Preweza\";\"other\"\n\"254698\";\"Prévéza\";\"other\"\n\"254698\";\"prwzh\";\"other\"\n\"254698\";\"Πρέβεζα\";\"other\"\n\"254698\";\"پروزه\";\"other\"\n\"254746\";\"Prámanta\";\"main\"\n\"254746\";\"Pramanta\";\"ascii\"\n\"254746\";\"Pramanda\";\"other\"\n\"254746\";\"Prámanda\";\"other\"\n\"254746\";\"Πράμαντα\";\"other\"\n\"254842\";\"Pórto Chéli\";\"main\"\n\"254842\";\"Porto Cheli\";\"ascii\"\n\"254842\";\"Kheli\";\"other\"\n\"254842\";\"Khéli\";\"other\"\n\"254842\";\"Porto Chelion\";\"other\"\n\"254842\";\"Porto-Kheli\";\"other\"\n\"254842\";\"Portocheli\";\"other\"\n\"254842\";\"Portochelion\";\"other\"\n\"254842\";\"Portochéli\";\"other\"\n\"254842\";\"Portochélion\";\"other\"\n\"254842\";\"Portokhelion\";\"other\"\n\"254842\";\"Portokhélion\";\"other\"\n\"254842\";\"Pórto Chélion\";\"other\"\n\"254842\";\"Pórto-Khéli\";\"other\"\n\"254842\";\"Πορτοχέλιον\";\"other\"\n\"254842\";\"Πόρτο Χέλι\";\"other\"\n\"254842\";\"Πόρτο Χέλιον\";\"other\"\n\"254849\";\"Portariá\";\"main\"\n\"254849\";\"Portaria\";\"ascii\"\n\"254864\";\"Póros\";\"main\"\n\"254864\";\"Poros\";\"ascii\"\n\"254865\";\"Póros\";\"main\"\n\"254865\";\"Poros\";\"ascii\"\n\"254865\";\"Πόρος\";\"other\"\n\"254898\";\"Politiká\";\"main\"\n\"254898\";\"Politika\";\"ascii\"\n\"254898\";\"Πολιτικά\";\"other\"\n\"254917\";\"Polichnítos\";\"main\"\n\"254917\";\"Polichnitos\";\"ascii\"\n\"254917\";\"Polikhnitos\";\"other\"\n\"254917\";\"Polikhnítos\";\"other\"\n\"254917\";\"Πολιχνίτος\";\"other\"\n\"254949\";\"Plomárion\";\"main\"\n\"254949\";\"Plomarion\";\"ascii\"\n\"254949\";\"Plomari\";\"other\"\n\"254949\";\"Plomári\";\"other\"\n\"254949\";\"Ploumarion\";\"other\"\n\"254949\";\"Potamos\";\"other\"\n\"254949\";\"Potamós\";\"other\"\n\"254949\";\"Πλωμάριον\";\"other\"\n\"254990\";\"Platíkambos\";\"main\"\n\"254990\";\"Platikambos\";\"ascii\"\n\"254990\";\"Kato Platikambos\";\"other\"\n\"254990\";\"Káto Platíkambos\";\"other\"\n\"254990\";\"Platykampos\";\"other\"\n\"254990\";\"Topuslar\";\"other\"\n\"254990\";\"Topuslár\";\"other\"\n\"254990\";\"Πλατύκαμπος\";\"other\"\n\"255013\";\"Platariá\";\"main\"\n\"255013\";\"Plataria\";\"ascii\"\n\"255013\";\"Πλαταριά\";\"other\"\n\"255030\";\"Plátanos\";\"main\"\n\"255030\";\"Platanos\";\"ascii\"\n\"255030\";\"Πλάτανος\";\"other\"\n\"255036\";\"Plátanos\";\"main\"\n\"255036\";\"Platanos\";\"ascii\"\n\"255096\";\"Plános\";\"main\"\n\"255096\";\"Planos\";\"ascii\"\n\"255096\";\"Πλάνος\";\"other\"\n\"255138\";\"Pigí\";\"main\"\n\"255138\";\"Pigi\";\"ascii\"\n\"255138\";\"Megali Poliana\";\"other\"\n\"255138\";\"Megali Poliána\";\"other\"\n\"255138\";\"Megali Pouliana\";\"other\"\n\"255138\";\"Megáli Pouliána\";\"other\"\n\"255138\";\"Piyi\";\"other\"\n\"255138\";\"Piyí\";\"other\"\n\"255138\";\"Poliana Megali\";\"other\"\n\"255138\";\"Poliána Megáli\";\"other\"\n\"255161\";\"Pithárion\";\"main\"\n\"255161\";\"Pitharion\";\"ascii\"\n\"255161\";\"Pithari\";\"other\"\n\"255161\";\"Pithári\";\"other\"\n\"255161\";\"Πιθάριον\";\"other\"\n\"255163\";\"Pythagóreion\";\"main\"\n\"255163\";\"Pythagoreion\";\"ascii\"\n\"255163\";\"Pithagorion\";\"other\"\n\"255163\";\"Pithagórion\";\"other\"\n\"255163\";\"Pythagoreio\";\"other\"\n\"255163\";\"Pythagoria\";\"other\"\n\"255163\";\"Pythagorio\";\"other\"\n\"255163\";\"Pythagóreio\";\"other\"\n\"255163\";\"Teganion\";\"other\"\n\"255163\";\"Tegánion\";\"other\"\n\"255163\";\"Tiganian\";\"other\"\n\"255163\";\"Tiganion\";\"other\"\n\"255163\";\"Tigánian\";\"other\"\n\"255163\";\"Tigánion\";\"other\"\n\"255188\";\"Pyrgíon\";\"main\"\n\"255188\";\"Pyrgion\";\"ascii\"\n\"255188\";\"Piryi\";\"other\"\n\"255188\";\"Piryion\";\"other\"\n\"255188\";\"Piryí\";\"other\"\n\"255188\";\"Piryíon\";\"other\"\n\"255195\";\"Pyrgetós\";\"main\"\n\"255195\";\"Pyrgetos\";\"ascii\"\n\"255195\";\"Piryetos\";\"other\"\n\"255195\";\"Piryetós\";\"other\"\n\"255195\";\"Πυργετός\";\"other\"\n\"255196\";\"Pyrgetós\";\"main\"\n\"255196\";\"Pyrgetos\";\"ascii\"\n\"255196\";\"Piryetos\";\"other\"\n\"255196\";\"Piryetós\";\"other\"\n\"255229\";\"Pýrgos\";\"main\"\n\"255229\";\"Pyrgos\";\"ascii\"\n\"255229\";\"Pirgos\";\"other\"\n\"255229\";\"Pírgos\";\"other\"\n\"255229\";\"Пиргос\";\"other\"\n\"255242\";\"Pírgos\";\"main\"\n\"255242\";\"Pirgos\";\"ascii\"\n\"255274\";\"Piraeus\";\"main\"\n\"255274\";\"El Pireo\";\"other\"\n\"255274\";\"El Pireu\";\"other\"\n\"255274\";\"Le Piree\";\"other\"\n\"255274\";\"Le Pirée\";\"other\"\n\"255274\";\"Peiraeus\";\"other\"\n\"255274\";\"Peiraia\";\"other\"\n\"255274\";\"Peiraias\";\"other\"\n\"255274\";\"Peiraiefs\";\"other\"\n\"255274\";\"Peiraieus\";\"other\"\n\"255274\";\"Peiraievs\";\"other\"\n\"255274\";\"Peiraiá\";\"other\"\n\"255274\";\"Peiraiás\";\"other\"\n\"255274\";\"Peiraiéfs\";\"other\"\n\"255274\";\"Piraievs\";\"other\"\n\"255274\";\"Piraiévs\";\"other\"\n\"255274\";\"Piraus\";\"other\"\n\"255274\";\"Pire\";\"other\"\n\"255274\";\"Pireefs\";\"other\"\n\"255274\";\"Pirej\";\"other\"\n\"255274\";\"Pireja\";\"other\"\n\"255274\";\"Pirejas\";\"other\"\n\"255274\";\"Pireo\";\"other\"\n\"255274\";\"Pireu\";\"other\"\n\"255274\";\"Pireus\";\"other\"\n\"255274\";\"Pireusz\";\"other\"\n\"255274\";\"Piräus\";\"other\"\n\"255274\";\"Piréefs\";\"other\"\n\"255274\";\"Pirėjas\";\"other\"\n\"255274\";\"bi lei ai fu si\";\"other\"\n\"255274\";\"byrayws\";\"other\"\n\"255274\";\"pireusu\";\"other\"\n\"255274\";\"Πειραιάς\";\"other\"\n\"255274\";\"Πειραιεύς\";\"other\"\n\"255274\";\"Пирей\";\"other\"\n\"255274\";\"Пирея\";\"other\"\n\"255274\";\"Пірей\";\"other\"\n\"255274\";\"פיראוס\";\"other\"\n\"255274\";\"بيرايوس\";\"other\"\n\"255274\";\"ピレウス\";\"other\"\n\"255274\";\"比雷埃夫斯\";\"other\"\n\"255293\";\"Pýlos\";\"main\"\n\"255293\";\"Pylos\";\"ascii\"\n\"255293\";\"Navarino\";\"other\"\n\"255293\";\"Neon Kastrov\";\"other\"\n\"255293\";\"Néon Kastrov\";\"other\"\n\"255293\";\"Pilos\";\"other\"\n\"255293\";\"Pílos\";\"other\"\n\"255293\";\"Πύλος\";\"other\"\n\"255301\";\"Pylíon\";\"main\"\n\"255301\";\"Pylion\";\"ascii\"\n\"255301\";\"Pili\";\"other\"\n\"255301\";\"Pilion\";\"other\"\n\"255301\";\"Pilí\";\"other\"\n\"255301\";\"Pilíon\";\"other\"\n\"255301\";\"Pylli\";\"other\"\n\"255301\";\"Πυλίον\";\"other\"\n\"255305\";\"Pýli\";\"main\"\n\"255305\";\"Pyli\";\"ascii\"\n\"255305\";\"Pili\";\"other\"\n\"255305\";\"Porta Pazar\";\"other\"\n\"255305\";\"Porta Pazari\";\"other\"\n\"255305\";\"Píli\";\"other\"\n\"255305\";\"Pórta Pazár\";\"other\"\n\"255305\";\"Pórta Pazári\";\"other\"\n\"255319\";\"Pikérmion\";\"main\"\n\"255319\";\"Pikermion\";\"ascii\"\n\"255319\";\"Kato Pikermi\";\"other\"\n\"255319\";\"Káto Pikérmi\";\"other\"\n\"255319\";\"Passadhes\";\"other\"\n\"255319\";\"Passádhes\";\"other\"\n\"255319\";\"Pikermi\";\"other\"\n\"255319\";\"Pikérmi\";\"other\"\n\"255319\";\"Πικέρμιον\";\"other\"\n\"255377\";\"Petroúpolis\";\"main\"\n\"255377\";\"Petroupolis\";\"ascii\"\n\"255377\";\"Kipoupolis\";\"other\"\n\"255377\";\"Kipoúpolis\";\"other\"\n\"255377\";\"Петроуполис\";\"other\"\n\"255439\";\"Pétra\";\"main\"\n\"255439\";\"Petra\";\"ascii\"\n\"255439\";\"Petras\";\"other\"\n\"255439\";\"Πέτρα\";\"other\"\n\"255458\";\"Pétas\";\"main\"\n\"255458\";\"Petas\";\"ascii\"\n\"255458\";\"Peta\";\"other\"\n\"255458\";\"Péta\";\"other\"\n\"255458\";\"Πέτα\";\"other\"\n\"255495\";\"Periyiálion\";\"main\"\n\"255495\";\"Periyialion\";\"ascii\"\n\"255495\";\"Perigialion\";\"other\"\n\"255495\";\"Periyiali\";\"other\"\n\"255495\";\"Periyiáli\";\"other\"\n\"255495\";\"Περιγιάλιον\";\"other\"\n\"255498\";\"Perivólion\";\"main\"\n\"255498\";\"Perivolion\";\"ascii\"\n\"255498\";\"Peribolion\";\"other\"\n\"255498\";\"Perivoli\";\"other\"\n\"255498\";\"Perivóli\";\"other\"\n\"255498\";\"Περιβόλιον\";\"other\"\n\"255507\";\"Perivólia\";\"main\"\n\"255507\";\"Perivolia\";\"ascii\"\n\"255507\";\"Peribolia\";\"other\"\n\"255507\";\"Περιβόλια\";\"other\"\n\"255524\";\"Peristérion\";\"main\"\n\"255524\";\"Peristerion\";\"ascii\"\n\"255524\";\"Peristeri\";\"other\"\n\"255524\";\"Peristeri Attikes\";\"other\"\n\"255524\";\"Peristéri\";\"other\"\n\"255524\";\"Περιστέρι Αττικής\";\"other\"\n\"255524\";\"Περιστέριον\";\"other\"\n\"255524\";\"Перистерион\";\"other\"\n\"255562\";\"Pérdika\";\"main\"\n\"255562\";\"Perdika\";\"ascii\"\n\"255562\";\"Arpitsa\";\"other\"\n\"255562\";\"Arpítsa\";\"other\"\n\"255562\";\"Perdhika\";\"other\"\n\"255562\";\"Perdikas\";\"other\"\n\"255562\";\"Pérdhika\";\"other\"\n\"255562\";\"Pérdikas\";\"other\"\n\"255562\";\"Πέρδικα\";\"other\"\n\"255585\";\"Pérama\";\"main\"\n\"255585\";\"Perama\";\"ascii\"\n\"255588\";\"Pérama\";\"main\"\n\"255588\";\"Perama\";\"ascii\"\n\"255588\";\"Πέραμα\";\"other\"\n\"255588\";\"Перама\";\"other\"\n\"255589\";\"Pérama\";\"main\"\n\"255589\";\"Perama\";\"ascii\"\n\"255589\";\"Перама\";\"other\"\n\"255594\";\"Perakhóra\";\"main\"\n\"255594\";\"Perakhora\";\"ascii\"\n\"255594\";\"Perachora\";\"other\"\n\"255594\";\"Περαχώρα\";\"other\"\n\"255621\";\"Pelópion\";\"main\"\n\"255621\";\"Pelopion\";\"ascii\"\n\"255621\";\"Krekouki\";\"other\"\n\"255621\";\"Krekoúki\";\"other\"\n\"255621\";\"Πελόπιον\";\"other\"\n\"255638\";\"Pelasyía\";\"main\"\n\"255638\";\"Pelasyia\";\"ascii\"\n\"255638\";\"Gardhiki\";\"other\"\n\"255638\";\"Gardhíki\";\"other\"\n\"255638\";\"Pelasgia\";\"other\"\n\"255638\";\"Πελασγία\";\"other\"\n\"255646\";\"Pediní\";\"main\"\n\"255646\";\"Pedini\";\"ascii\"\n\"255646\";\"Pedhini\";\"other\"\n\"255646\";\"Pedhiní\";\"other\"\n\"255646\";\"Pedine\";\"other\"\n\"255646\";\"Πεδινή\";\"other\"\n\"255683\";\"Pátrai\";\"main\"\n\"255683\";\"Patrai\";\"ascii\"\n\"255683\";\"Patra\";\"other\"\n\"255683\";\"Patrae\";\"other\"\n\"255683\";\"Patras\";\"other\"\n\"255683\";\"Patrasse\";\"other\"\n\"255683\";\"Patrasso\";\"other\"\n\"255683\";\"Patres\";\"other\"\n\"255683\";\"Patrás\";\"other\"\n\"255683\";\"Pátra\";\"other\"\n\"255683\";\"Pátras\";\"other\"\n\"255683\";\"pa te lei\";\"other\"\n\"255683\";\"patora\";\"other\"\n\"255683\";\"ptrs\";\"other\"\n\"255683\";\"Πάτρα\";\"other\"\n\"255683\";\"Πάτραι\";\"other\"\n\"255683\";\"Πατραι\";\"other\"\n\"255683\";\"Патра\";\"other\"\n\"255683\";\"פטרס\";\"other\"\n\"255683\";\"パトラ\";\"other\"\n\"255683\";\"帕特雷\";\"other\"\n\"255689\";\"Patitírion\";\"main\"\n\"255689\";\"Patitirion\";\"ascii\"\n\"255689\";\"Pateterion\";\"other\"\n\"255689\";\"Patitiri\";\"other\"\n\"255689\";\"Patitíri\";\"other\"\n\"255689\";\"Πατητήριον\";\"other\"\n\"255709\";\"Pásion\";\"main\"\n\"255709\";\"Pasion\";\"ascii\"\n\"255709\";\"Paso\";\"other\"\n\"255709\";\"Pasó\";\"other\"\n\"255709\";\"Πάσιον\";\"other\"\n\"255721\";\"Páros\";\"main\"\n\"255721\";\"Paros\";\"ascii\"\n\"255721\";\"Paroikia\";\"other\"\n\"255721\";\"Paroikía\";\"other\"\n\"255721\";\"Πάρος\";\"other\"\n\"255736\";\"Párga\";\"main\"\n\"255736\";\"Parga\";\"ascii\"\n\"255736\";\"Barga\";\"other\"\n\"255736\";\"barghh\";\"other\"\n\"255736\";\"parghh\";\"other\"\n\"255736\";\"Πάργα\";\"other\"\n\"255736\";\"Парга\";\"other\"\n\"255736\";\"بارغه\";\"other\"\n\"255736\";\"پارغه\";\"other\"\n\"255739\";\"Paravóla\";\"main\"\n\"255739\";\"Paravola\";\"ascii\"\n\"255739\";\"Parabola\";\"other\"\n\"255739\";\"Παραβόλα\";\"other\"\n\"255750\";\"Proástion\";\"main\"\n\"255750\";\"Proastion\";\"ascii\"\n\"255750\";\"Paraprastaina\";\"other\"\n\"255750\";\"Paraprástaina\";\"other\"\n\"255750\";\"Proastio\";\"other\"\n\"255750\";\"Proástio\";\"other\"\n\"255750\";\"Προάστιον\";\"other\"\n\"255753\";\"Parapótamos\";\"main\"\n\"255753\";\"Parapotamos\";\"ascii\"\n\"255753\";\"Varfani\";\"other\"\n\"255753\";\"Várfani\";\"other\"\n\"255753\";\"Παραπόταμος\";\"other\"\n\"255760\";\"Paramythía\";\"main\"\n\"255760\";\"Paramythia\";\"ascii\"\n\"255760\";\"Paramithia\";\"other\"\n\"255760\";\"Paramithiá\";\"other\"\n\"255760\";\"Παραμυθιά\";\"other\"\n\"255777\";\"Paralía\";\"main\"\n\"255777\";\"Paralia\";\"ascii\"\n\"255777\";\"Παραλία\";\"other\"\n\"255798\";\"Pappádos\";\"main\"\n\"255798\";\"Pappados\";\"ascii\"\n\"255798\";\"Pappadhos\";\"other\"\n\"255798\";\"Pappádhos\";\"other\"\n\"255798\";\"Παππάδος\";\"other\"\n\"255807\";\"Pappadátai\";\"main\"\n\"255807\";\"Pappadatai\";\"ascii\"\n\"255807\";\"Papadatai\";\"other\"\n\"255807\";\"Papadhates\";\"other\"\n\"255807\";\"Papadhátes\";\"other\"\n\"255807\";\"Papadátai\";\"other\"\n\"255807\";\"Pappadates\";\"other\"\n\"255807\";\"Pappadhatai\";\"other\"\n\"255807\";\"Pappadhátai\";\"other\"\n\"255807\";\"Pappadátes\";\"other\"\n\"255807\";\"Παππαδάται\";\"other\"\n\"255849\";\"Pánormos\";\"main\"\n\"255849\";\"Panormos\";\"ascii\"\n\"255849\";\"Kastelli Milopotamou\";\"other\"\n\"255849\";\"Kastélli Milopotámou\";\"other\"\n\"255849\";\"Panormon\";\"other\"\n\"255849\";\"Pánormon\";\"other\"\n\"255849\";\"Πάνορμος\";\"other\"\n\"255945\";\"Panaitólion\";\"main\"\n\"255945\";\"Panaitolion\";\"ascii\"\n\"255945\";\"Moustafouli\";\"other\"\n\"255945\";\"Moustafoulion\";\"other\"\n\"255945\";\"Moustafoúli\";\"other\"\n\"255945\";\"Moustafóulion\";\"other\"\n\"255945\";\"Παναιτώλιον\";\"other\"\n\"255959\";\"Pámfylla\";\"main\"\n\"255959\";\"Pamfylla\";\"ascii\"\n\"255959\";\"Pafla\";\"other\"\n\"255959\";\"Pamfila\";\"other\"\n\"255959\";\"Pamfilla\";\"other\"\n\"255959\";\"Pamphila\";\"other\"\n\"255959\";\"Páfla\";\"other\"\n\"255959\";\"Pámfila\";\"other\"\n\"255959\";\"Pámfilla\";\"other\"\n\"255959\";\"Πάμφιλα\";\"other\"\n\"255971\";\"Pallíni\";\"main\"\n\"255971\";\"Pallini\";\"ascii\"\n\"255971\";\"Ano Kharvati\";\"other\"\n\"255971\";\"Áno Kharváti\";\"other\"\n\"255971\";\"Παλλήνη\";\"other\"\n\"256047\";\"Palamás\";\"main\"\n\"256047\";\"Palamas\";\"ascii\"\n\"256047\";\"Παλαμάς\";\"other\"\n\"256054\";\"Pálairos\";\"main\"\n\"256054\";\"Palairos\";\"ascii\"\n\"256054\";\"Zavedha\";\"other\"\n\"256054\";\"Zavédha\";\"other\"\n\"256054\";\"Πάλαιρος\";\"other\"\n\"256066\";\"Palaiópyrgos\";\"main\"\n\"256066\";\"Palaiopyrgos\";\"ascii\"\n\"256066\";\"Palaiopirgos\";\"other\"\n\"256066\";\"Palaiópirgos\";\"other\"\n\"256066\";\"Paliopirgos\";\"other\"\n\"256066\";\"Paliópirgos\";\"other\"\n\"256066\";\"Zavlania\";\"other\"\n\"256066\";\"Zavlánia\";\"other\"\n\"256075\";\"Palaió Fáliro\";\"main\"\n\"256075\";\"Palaio Faliro\";\"ascii\"\n\"256075\";\"Alt Phaleron\";\"other\"\n\"256075\";\"Old Faliron\";\"other\"\n\"256075\";\"Palaion Faliron\";\"other\"\n\"256075\";\"Palaion Phaleron\";\"other\"\n\"256075\";\"Palaión Fáliron\";\"other\"\n\"256075\";\"Παλαιό Φάληρον\";\"other\"\n\"256075\";\"Παλαιόν Φάληρον\";\"other\"\n\"256079\";\"Palaiomonástiron\";\"main\"\n\"256079\";\"Palaiomonastiron\";\"ascii\"\n\"256079\";\"Beletsi\";\"other\"\n\"256079\";\"Belétsi\";\"other\"\n\"256079\";\"Palaiomonasteron\";\"other\"\n\"256079\";\"Palaiomonastiro\";\"other\"\n\"256079\";\"Palaiomonástiro\";\"other\"\n\"256079\";\"Paliomonastiri\";\"other\"\n\"256079\";\"Paliomonastirion\";\"other\"\n\"256079\";\"Paliomonastíri\";\"other\"\n\"256079\";\"Paliomonastírion\";\"other\"\n\"256079\";\"Παλαιομονάστηρον\";\"other\"\n\"256093\";\"Palaiókipos\";\"main\"\n\"256093\";\"Palaiokipos\";\"ascii\"\n\"256093\";\"Palaiokepos\";\"other\"\n\"256093\";\"Παλαιόκηπος\";\"other\"\n\"256131\";\"Palaiochóra\";\"main\"\n\"256131\";\"Palaiochora\";\"ascii\"\n\"256131\";\"Palaiokhora\";\"other\"\n\"256131\";\"Palaiokhóra\";\"other\"\n\"256131\";\"Selino Kasteli\";\"other\"\n\"256131\";\"Selino Kastelli\";\"other\"\n\"256131\";\"Sélino Kastélli\";\"other\"\n\"256155\";\"Palaíkastron\";\"main\"\n\"256155\";\"Palaikastron\";\"ascii\"\n\"256155\";\"Palaikastro\";\"other\"\n\"256155\";\"Palaiokastro\";\"other\"\n\"256155\";\"Palaiokastron\";\"other\"\n\"256155\";\"Palaiókastro\";\"other\"\n\"256155\";\"Palaiókastron\";\"other\"\n\"256155\";\"Palaíkastro\";\"other\"\n\"256155\";\"Palekastro\";\"other\"\n\"256155\";\"Palékastro\";\"other\"\n\"256155\";\"Παλαίκαστρον\";\"other\"\n\"256173\";\"Palaiá Fókaia\";\"main\"\n\"256173\";\"Palaia Fokaia\";\"ascii\"\n\"256173\";\"Fokaia\";\"other\"\n\"256173\";\"Fókaia\";\"other\"\n\"256173\";\"Παλαιά Φώκαια\";\"other\"\n\"256197\";\"Paianía\";\"main\"\n\"256197\";\"Paiania\";\"ascii\"\n\"256197\";\"Liopesi\";\"other\"\n\"256197\";\"Liópesi\";\"other\"\n\"256197\";\"Παιανία\";\"other\"\n\"256210\";\"Oxílithos\";\"main\"\n\"256210\";\"Oxilithos\";\"ascii\"\n\"256210\";\"Oxylithos\";\"other\"\n\"256210\";\"Οξύλιθος\";\"other\"\n\"256223\";\"Ovriá\";\"main\"\n\"256223\";\"Ovria\";\"ascii\"\n\"256223\";\"Obria\";\"other\"\n\"256223\";\"Obrya\";\"other\"\n\"256223\";\"Οβριά\";\"other\"\n\"256223\";\"Οβρυά\";\"other\"\n\"256268\";\"Orchomenós\";\"main\"\n\"256268\";\"Orchomenos\";\"ascii\"\n\"256268\";\"Adamas\";\"other\"\n\"256268\";\"Adhamas\";\"other\"\n\"256268\";\"Adhámas\";\"other\"\n\"256268\";\"Adámas\";\"other\"\n\"256268\";\"Athamas\";\"other\"\n\"256268\";\"Athámas\";\"other\"\n\"256268\";\"Orchomene\";\"other\"\n\"256268\";\"Orchomenus\";\"other\"\n\"256268\";\"Orchomène\";\"other\"\n\"256268\";\"Orcomeno\";\"other\"\n\"256268\";\"Orcómeno\";\"other\"\n\"256268\";\"Orkhomen\";\"other\"\n\"256268\";\"Orkhomenos\";\"other\"\n\"256268\";\"Orkhomenós\";\"other\"\n\"256268\";\"Skripou\";\"other\"\n\"256268\";\"Skripoú\";\"other\"\n\"256268\";\"Αδάμας\";\"other\"\n\"256268\";\"Ορχομενός\";\"other\"\n\"256268\";\"Орхомен\";\"other\"\n\"256284\";\"Oreoí\";\"main\"\n\"256284\";\"Oreoi\";\"ascii\"\n\"256284\";\"Ωρεοί\";\"other\"\n\"256296\";\"Omvriakí\";\"main\"\n\"256296\";\"Omvriaki\";\"ascii\"\n\"256296\";\"Ombriake\";\"other\"\n\"256296\";\"Ομβριακή\";\"other\"\n\"256329\";\"Oinoússai\";\"main\"\n\"256329\";\"Oinoussai\";\"ascii\"\n\"256329\";\"Chorio Oinoussai\";\"other\"\n\"256329\";\"Chorió Oinoússai\";\"other\"\n\"256329\";\"Mandraki\";\"other\"\n\"256329\";\"Mandráki\";\"other\"\n\"256329\";\"Oinousa\";\"other\"\n\"256329\";\"Oinousai\";\"other\"\n\"256329\";\"Oinoúsai\";\"other\"\n\"256329\";\"Οινούσσαι\";\"other\"\n\"256339\";\"Oinófita\";\"main\"\n\"256339\";\"Oinofita\";\"ascii\"\n\"256339\";\"Oinophyta\";\"other\"\n\"256339\";\"Staniates\";\"other\"\n\"256339\";\"Staniátes\";\"other\"\n\"256339\";\"Οινόφυτα\";\"other\"\n\"256342\";\"Oikismós Papágou\";\"main\"\n\"256342\";\"Oikismos Papagou\";\"ascii\"\n\"256342\";\"Papagos\";\"other\"\n\"256342\";\"Papagou\";\"other\"\n\"256342\";\"Papágos\";\"other\"\n\"256342\";\"Papágou\";\"other\"\n\"256428\";\"Níkaia\";\"main\"\n\"256428\";\"Nikaia\";\"ascii\"\n\"256428\";\"Nebegler\";\"other\"\n\"256428\";\"Nebeglér\";\"other\"\n\"256429\";\"Níkaia\";\"main\"\n\"256429\";\"Nikaia\";\"ascii\"\n\"256429\";\"Nea Kokkinia\";\"other\"\n\"256429\";\"Neokokinis\";\"other\"\n\"256429\";\"Néa Kokkiniá\";\"other\"\n\"256429\";\"Νίκαια\";\"other\"\n\"256449\";\"Nerokoúros\";\"main\"\n\"256449\";\"Nerokouros\";\"ascii\"\n\"256449\";\"Nerokourou\";\"other\"\n\"256449\";\"Nerokoúrou\";\"other\"\n\"256449\";\"Νεροκούρος\";\"other\"\n\"256485\";\"Néon Monastírion\";\"main\"\n\"256485\";\"Neon Monastirion\";\"ascii\"\n\"256485\";\"Neon Monasterion\";\"other\"\n\"256485\";\"Tsomba\";\"other\"\n\"256485\";\"Tsómba\";\"other\"\n\"256485\";\"Νέον Μοναστήριον\";\"other\"\n\"256492\";\"Néon Karlovásion\";\"main\"\n\"256492\";\"Neon Karlovasion\";\"ascii\"\n\"256492\";\"Karlovasi\";\"other\"\n\"256492\";\"Neon Karlobasion\";\"other\"\n\"256492\";\"Neon Karlovasi\";\"other\"\n\"256492\";\"Néon Karlóvasi\";\"other\"\n\"256492\";\"Νέον Καρλοβάσιον\";\"other\"\n\"256499\";\"Neochorópoulon\";\"main\"\n\"256499\";\"Neochoropoulon\";\"ascii\"\n\"256499\";\"Neochoropoulo\";\"other\"\n\"256499\";\"Neochorópoulo\";\"other\"\n\"256499\";\"Neokhori\";\"other\"\n\"256499\";\"Neokhoropoulon\";\"other\"\n\"256499\";\"Neokhorópoulon\";\"other\"\n\"256499\";\"Neokhóri\";\"other\"\n\"256499\";\"Νεοχωρόπουλον\";\"other\"\n\"256504\";\"Oichalía\";\"main\"\n\"256504\";\"Oichalia\";\"ascii\"\n\"256504\";\"Neochori\";\"other\"\n\"256504\";\"Neochorion\";\"other\"\n\"256504\";\"Neochóri\";\"other\"\n\"256504\";\"Neochórion\";\"other\"\n\"256504\";\"Neokhori\";\"other\"\n\"256504\";\"Neokhorion\";\"other\"\n\"256504\";\"Neokhórion\";\"other\"\n\"256504\";\"Niokhori\";\"other\"\n\"256504\";\"Niokhóri\";\"other\"\n\"256508\";\"Neochórion\";\"main\"\n\"256508\";\"Neochorion\";\"ascii\"\n\"256508\";\"Neochori\";\"other\"\n\"256508\";\"Neochóri\";\"other\"\n\"256508\";\"Neokhorion\";\"other\"\n\"256508\";\"Neokhórion\";\"other\"\n\"256509\";\"Neochórion\";\"main\"\n\"256509\";\"Neochorion\";\"ascii\"\n\"256509\";\"Neochori\";\"other\"\n\"256509\";\"Neochóri\";\"other\"\n\"256509\";\"Neokhori\";\"other\"\n\"256509\";\"Neokhorion\";\"other\"\n\"256509\";\"Neokhóri\";\"other\"\n\"256509\";\"Neokhórion\";\"other\"\n\"256520\";\"Neochórion\";\"main\"\n\"256520\";\"Neochorion\";\"ascii\"\n\"256520\";\"Neochori\";\"other\"\n\"256520\";\"Neochóri\";\"other\"\n\"256520\";\"Neokhori\";\"other\"\n\"256520\";\"Neokhorion\";\"other\"\n\"256520\";\"Neokhóri\";\"other\"\n\"256520\";\"Neokhórion\";\"other\"\n\"256527\";\"Neochórion\";\"main\"\n\"256527\";\"Neochorion\";\"ascii\"\n\"256527\";\"Neochori\";\"other\"\n\"256527\";\"Neochóri\";\"other\"\n\"256527\";\"Neokhori\";\"other\"\n\"256527\";\"Neokhorion\";\"other\"\n\"256527\";\"Neokhóri\";\"other\"\n\"256527\";\"Neokhórion\";\"other\"\n\"256554\";\"Nénita\";\"main\"\n\"256554\";\"Nenita\";\"ascii\"\n\"256554\";\"Neneta\";\"other\"\n\"256554\";\"Νένητα\";\"other\"\n\"256558\";\"Neméa\";\"main\"\n\"256558\";\"Nemea\";\"ascii\"\n\"256558\";\"Ayios Yeoryios\";\"other\"\n\"256558\";\"Áyios Yeóryios\";\"other\"\n\"256558\";\"Νεμηα\";\"other\"\n\"256571\";\"Néa Tírins\";\"main\"\n\"256571\";\"Nea Tirins\";\"ascii\"\n\"256571\";\"Kofini\";\"other\"\n\"256571\";\"Kofinion\";\"other\"\n\"256571\";\"Kofíni\";\"other\"\n\"256571\";\"Kofínion\";\"other\"\n\"256571\";\"Nea Tiryns\";\"other\"\n\"256571\";\"Νέα Τίρυνς\";\"other\"\n\"256572\";\"Néa Stíra\";\"main\"\n\"256572\";\"Nea Stira\";\"ascii\"\n\"256572\";\"Nea Styra\";\"other\"\n\"256572\";\"Νέα Στύρα\";\"other\"\n\"256575\";\"Néa Smírni\";\"main\"\n\"256575\";\"Nea Smirni\";\"ascii\"\n\"256575\";\"Nea Smyrne\";\"other\"\n\"256575\";\"Νέα Σμύρνη\";\"other\"\n\"256580\";\"Néa Seléfkeia\";\"main\"\n\"256580\";\"Nea Selefkeia\";\"ascii\"\n\"256580\";\"Nea Selevkia\";\"other\"\n\"256580\";\"Néa Selévkia\";\"other\"\n\"256589\";\"Neápolis\";\"main\"\n\"256589\";\"Neapolis\";\"ascii\"\n\"256589\";\"Neapole\";\"other\"\n\"256589\";\"Neapoli\";\"other\"\n\"256589\";\"Neápoli\";\"other\"\n\"256589\";\"Νεάπολη\";\"other\"\n\"256589\";\"Νεάπολις\";\"other\"\n\"256592\";\"Néa Péramos\";\"main\"\n\"256592\";\"Nea Peramos\";\"ascii\"\n\"256592\";\"Νέα Πέραμος\";\"other\"\n\"256593\";\"Néa Palátia\";\"main\"\n\"256593\";\"Nea Palatia\";\"ascii\"\n\"256593\";\"Νέα Παλάτια\";\"other\"\n\"256596\";\"Néa Manolás\";\"main\"\n\"256596\";\"Nea Manolas\";\"ascii\"\n\"256596\";\"Νέα Μανολάς\";\"other\"\n\"256598\";\"Néa Mákri\";\"main\"\n\"256598\";\"Nea Makri\";\"ascii\"\n\"256598\";\"Ayios Konstandinos\";\"other\"\n\"256598\";\"Nea Makre\";\"other\"\n\"256598\";\"Áyios Konstandínos\";\"other\"\n\"256598\";\"Νέα Μάκρη\";\"other\"\n\"256601\";\"Néa Liósia\";\"main\"\n\"256601\";\"Nea Liosia\";\"ascii\"\n\"256601\";\"Ilion\";\"other\"\n\"256601\";\"Kato Liosia\";\"other\"\n\"256601\";\"Káto Liósia\";\"other\"\n\"256606\";\"Néa Kíos\";\"main\"\n\"256606\";\"Nea Kios\";\"ascii\"\n\"256606\";\"Νέα Κίος\";\"other\"\n\"256614\";\"Néa Ionía\";\"main\"\n\"256614\";\"Nea Ionia\";\"ascii\"\n\"256614\";\"Podharadhes\";\"other\"\n\"256614\";\"Podharádhes\";\"other\"\n\"256614\";\"Νέα Ιωνία\";\"other\"\n\"256621\";\"Néa Filadhélfia\";\"main\"\n\"256621\";\"Nea Filadhelfia\";\"ascii\"\n\"256621\";\"Filadelfia\";\"other\"\n\"256621\";\"Podhoniftis\";\"other\"\n\"256621\";\"Podhoníftis\";\"other\"\n\"256622\";\"Néa Erithraía\";\"main\"\n\"256622\";\"Nea Erithraia\";\"ascii\"\n\"256622\";\"Nea Erythraia\";\"other\"\n\"256622\";\"Νέα Ερυθραία\";\"other\"\n\"256626\";\"Néa Artáki\";\"main\"\n\"256626\";\"Nea Artaki\";\"ascii\"\n\"256626\";\"Nea Artake\";\"other\"\n\"256626\";\"Νέα Αρτάκη\";\"other\"\n\"256627\";\"Néa Ankhíalos\";\"main\"\n\"256627\";\"Nea Ankhialos\";\"ascii\"\n\"256627\";\"Nea Anchialos\";\"other\"\n\"256627\";\"Νέα Αγχίαλος\";\"other\"\n\"256632\";\"Náxos\";\"main\"\n\"256632\";\"Naxos\";\"ascii\"\n\"256632\";\"Naxia\";\"other\"\n\"256632\";\"Náxia\";\"other\"\n\"256632\";\"Νάξος\";\"other\"\n\"256637\";\"Náfplio\";\"main\"\n\"256637\";\"Nafplio\";\"ascii\"\n\"256637\";\"Anabolu\";\"other\"\n\"256637\";\"Mora Yenisehri\";\"other\"\n\"256637\";\"Mora Yenişehri\";\"other\"\n\"256637\";\"Nafplion\";\"other\"\n\"256637\";\"Napoli di Romania\";\"other\"\n\"256637\";\"Nauplia\";\"other\"\n\"256637\";\"Nauplie\";\"other\"\n\"256637\";\"Nauplio\";\"other\"\n\"256637\";\"Nauplion\";\"other\"\n\"256637\";\"Navplio\";\"other\"\n\"256637\";\"Navplion\";\"other\"\n\"256637\";\"Náfplion\";\"other\"\n\"256637\";\"Návplio\";\"other\"\n\"256637\";\"Návplion\";\"other\"\n\"256637\";\"anabwly\";\"other\"\n\"256637\";\"nafupurio\";\"other\"\n\"256637\";\"Ναύπλιο\";\"other\"\n\"256637\";\"Ναύπλιον\";\"other\"\n\"256637\";\"Нафплион\";\"other\"\n\"256637\";\"انابولی\";\"other\"\n\"256637\";\"ナフプリオ\";\"other\"\n\"256639\";\"Náfpaktos\";\"main\"\n\"256639\";\"Nafpaktos\";\"ascii\"\n\"256639\";\"Epakhtos\";\"other\"\n\"256639\";\"Inebahti\";\"other\"\n\"256639\";\"Inebahtı\";\"other\"\n\"256639\";\"Lepanto\";\"other\"\n\"256639\";\"Naupaetus\";\"other\"\n\"256639\";\"Navpaktos\";\"other\"\n\"256639\";\"Návpaktos\";\"other\"\n\"256639\";\"aynh bhty\";\"other\"\n\"256639\";\"اینه بحتی\";\"other\"\n\"256653\";\"Náousa\";\"main\"\n\"256653\";\"Naousa\";\"ascii\"\n\"256653\";\"Nausa\";\"other\"\n\"256660\";\"Mouzourás\";\"main\"\n\"256660\";\"Mouzouras\";\"ascii\"\n\"256660\";\"Muzuras\";\"other\"\n\"256660\";\"Μουζουράς\";\"other\"\n\"256662\";\"Mouzákion\";\"main\"\n\"256662\";\"Mouzakion\";\"ascii\"\n\"256662\";\"Mouzaki\";\"other\"\n\"256662\";\"Mouzáki\";\"other\"\n\"256662\";\"Μουζάκιον\";\"other\"\n\"256664\";\"Mouzaki\";\"main\"\n\"256664\";\"Mouzáki\";\"other\"\n\"256664\";\"Μουζάκι\";\"other\"\n\"256696\";\"Mourniaí\";\"main\"\n\"256696\";\"Mourniai\";\"ascii\"\n\"256696\";\"Mournies\";\"other\"\n\"256696\";\"Mournion\";\"other\"\n\"256696\";\"Mourniés\";\"other\"\n\"256696\";\"Mournión\";\"other\"\n\"256696\";\"Μουρνιές\";\"other\"\n\"256728\";\"Moúlkion\";\"main\"\n\"256728\";\"Moulkion\";\"ascii\"\n\"256728\";\"Moulki\";\"other\"\n\"256728\";\"Moúlki\";\"other\"\n\"256750\";\"Moskháton\";\"main\"\n\"256750\";\"Moskhaton\";\"ascii\"\n\"256757\";\"Mória\";\"main\"\n\"256757\";\"Moria\";\"ascii\"\n\"256757\";\"Morea\";\"other\"\n\"256757\";\"Μόρια\";\"other\"\n\"256759\";\"Morfovoúnion\";\"main\"\n\"256759\";\"Morfovounion\";\"ascii\"\n\"256759\";\"Morfovouni\";\"other\"\n\"256759\";\"Morfovoúni\";\"other\"\n\"256759\";\"Morphobounion\";\"other\"\n\"256759\";\"Vounesi\";\"other\"\n\"256759\";\"Vounési\";\"other\"\n\"256759\";\"Μορφοβούνιον\";\"other\"\n\"256808\";\"Monastirákion\";\"main\"\n\"256808\";\"Monastirakion\";\"ascii\"\n\"256808\";\"Monasterakion\";\"other\"\n\"256808\";\"Monastiraki\";\"other\"\n\"256808\";\"Monastiráki\";\"other\"\n\"256808\";\"Μοναστηράκιον\";\"other\"\n\"256824\";\"Mólos\";\"main\"\n\"256824\";\"Molos\";\"ascii\"\n\"256824\";\"Μώλος\";\"other\"\n\"256833\";\"Moláoi\";\"main\"\n\"256833\";\"Molaoi\";\"ascii\"\n\"256833\";\"Mola\";\"other\"\n\"256833\";\"Μολάοι\";\"other\"\n\"256838\";\"Mokhós\";\"main\"\n\"256838\";\"Mokhos\";\"ascii\"\n\"256838\";\"Mochos\";\"other\"\n\"256838\";\"Mokho\";\"other\"\n\"256838\";\"Μοχός\";\"other\"\n\"256842\";\"Moírai\";\"main\"\n\"256842\";\"Moirai\";\"ascii\"\n\"256842\";\"Mires\";\"other\"\n\"256842\";\"Moirais\";\"other\"\n\"256842\";\"Moires\";\"other\"\n\"256842\";\"Moírais\";\"other\"\n\"256842\";\"Moíres\";\"other\"\n\"256842\";\"Míres\";\"other\"\n\"256842\";\"Μοίραι\";\"other\"\n\"256860\";\"Mitrópolis\";\"main\"\n\"256860\";\"Mitropolis\";\"ascii\"\n\"256860\";\"Metropole\";\"other\"\n\"256860\";\"Mitropoli\";\"other\"\n\"256860\";\"Mitrópoli\";\"other\"\n\"256860\";\"Paliokastron\";\"other\"\n\"256860\";\"Paliókastron\";\"other\"\n\"256860\";\"Μητρόπολη\";\"other\"\n\"256865\";\"Mytilinioí\";\"main\"\n\"256865\";\"Mytilinioi\";\"ascii\"\n\"256865\";\"Mitilinioi\";\"other\"\n\"256865\";\"Mitilinioí\";\"other\"\n\"256865\";\"Mitilinoi\";\"other\"\n\"256865\";\"Mitilinoí\";\"other\"\n\"256865\";\"Mytilenioi\";\"other\"\n\"256865\";\"Μυτιληνιοί\";\"other\"\n\"256866\";\"Mytilíni\";\"main\"\n\"256866\";\"Mytilini\";\"ascii\"\n\"256866\";\"Kastro\";\"other\"\n\"256866\";\"Mitilini\";\"other\"\n\"256866\";\"Mitilíni\";\"other\"\n\"256866\";\"Mitylene\";\"other\"\n\"256866\";\"Mytilene\";\"other\"\n\"256866\";\"Μυτιλήνη\";\"other\"\n\"256866\";\"Митилини\";\"other\"\n\"256872\";\"Mítikas\";\"main\"\n\"256872\";\"Mitikas\";\"ascii\"\n\"256872\";\"Mytikas\";\"other\"\n\"256872\";\"Μύτικας\";\"other\"\n\"256879\";\"Míthymna\";\"main\"\n\"256879\";\"Mithymna\";\"ascii\"\n\"256879\";\"Methymna\";\"other\"\n\"256879\";\"Mithimna\";\"other\"\n\"256879\";\"Molivdhos\";\"other\"\n\"256879\";\"Molivos\";\"other\"\n\"256879\";\"Molova\";\"other\"\n\"256879\";\"Molyvos\";\"other\"\n\"256879\";\"Míthimna\";\"other\"\n\"256879\";\"Mólivdhos\";\"other\"\n\"256879\";\"Mólivos\";\"other\"\n\"256879\";\"mwlwh\";\"other\"\n\"256879\";\"Μήθυμνα\";\"other\"\n\"256879\";\"مولوه\";\"other\"\n\"256914\";\"Mirsíni\";\"main\"\n\"256914\";\"Mirsini\";\"ascii\"\n\"256914\";\"Myrsine\";\"other\"\n\"256914\";\"Souleimanaga\";\"other\"\n\"256914\";\"Souleïmánaga\";\"other\"\n\"256914\";\"Suleimanaga\";\"other\"\n\"256914\";\"Suleïmánaga\";\"other\"\n\"256914\";\"Μυρσίνη\";\"other\"\n\"256930\";\"Mýrina\";\"main\"\n\"256930\";\"Myrina\";\"ascii\"\n\"256930\";\"Kastro\";\"other\"\n\"256930\";\"Kastron\";\"other\"\n\"256930\";\"Kástron\";\"other\"\n\"256930\";\"Mirina\";\"other\"\n\"256930\";\"Mírina\";\"other\"\n\"256930\";\"Μύρινα\";\"other\"\n\"256985\";\"Milésion\";\"main\"\n\"256985\";\"Milesion\";\"ascii\"\n\"256985\";\"Milesi\";\"other\"\n\"256985\";\"Mílesi\";\"other\"\n\"256985\";\"Μιλέσιον\";\"other\"\n\"257056\";\"Mykonos\";\"main\"\n\"257056\";\"Chora\";\"other\"\n\"257056\";\"Kamenaki\";\"other\"\n\"257056\";\"Khora\";\"other\"\n\"257056\";\"Khóra\";\"other\"\n\"257056\";\"Mikonos\";\"other\"\n\"257056\";\"Mykoni\";\"other\"\n\"257056\";\"Míkonos\";\"other\"\n\"257056\";\"Μύκονος\";\"other\"\n\"257056\";\"Χωρα\";\"other\"\n\"257056\";\"Χώρα\";\"other\"\n\"257083\";\"Métsovon\";\"main\"\n\"257083\";\"Metsovon\";\"ascii\"\n\"257083\";\"Metsobon\";\"other\"\n\"257083\";\"Metsovo\";\"other\"\n\"257083\";\"Mezzovo\";\"other\"\n\"257083\";\"Métsovo\";\"other\"\n\"257083\";\"Μέτσοβον\";\"other\"\n\"257122\";\"Methóni\";\"main\"\n\"257122\";\"Methoni\";\"ascii\"\n\"257122\";\"Methone\";\"other\"\n\"257122\";\"Modo\";\"other\"\n\"257122\";\"Modó\";\"other\"\n\"257122\";\"Μεθώνη\";\"other\"\n\"257126\";\"Méthana\";\"main\"\n\"257126\";\"Methana\";\"ascii\"\n\"257126\";\"Μέθανα\";\"other\"\n\"257152\";\"Messíni\";\"main\"\n\"257152\";\"Messini\";\"ascii\"\n\"257152\";\"Messene\";\"other\"\n\"257152\";\"Messeni\";\"other\"\n\"257152\";\"Nisi\";\"other\"\n\"257152\";\"Nision\";\"other\"\n\"257152\";\"Nisíon\";\"other\"\n\"257152\";\"Μεσσήνη\";\"other\"\n\"257186\";\"Mesolóngion\";\"main\"\n\"257186\";\"Mesolongion\";\"ascii\"\n\"257186\";\"Mesolonghi\";\"other\"\n\"257186\";\"Mesolongi\";\"other\"\n\"257186\";\"Mesolónghi\";\"other\"\n\"257186\";\"Mesolóngi\";\"other\"\n\"257186\";\"Messolonghi\";\"other\"\n\"257186\";\"Messolongi\";\"other\"\n\"257186\";\"Messolóngi\";\"other\"\n\"257186\";\"Missolonghi\";\"other\"\n\"257186\";\"Μεσολόγγιον\";\"other\"\n\"257224\";\"Mesariá\";\"main\"\n\"257224\";\"Mesaria\";\"ascii\"\n\"257224\";\"Messaria\";\"other\"\n\"257224\";\"Messariá\";\"other\"\n\"257224\";\"Μεσαριά\";\"other\"\n\"257258\";\"Agía Triás\";\"main\"\n\"257258\";\"Agia Trias\";\"ascii\"\n\"257258\";\"Agia Triada\";\"other\"\n\"257258\";\"Agía Triáda\";\"other\"\n\"257258\";\"Merichovon\";\"other\"\n\"257258\";\"Merikhovon\";\"other\"\n\"257258\";\"Meríchovon\";\"other\"\n\"257258\";\"Meríkhovon\";\"other\"\n\"257258\";\"Mirikhovon\";\"other\"\n\"257258\";\"Miríkhovon\";\"other\"\n\"257268\";\"Menídion\";\"main\"\n\"257268\";\"Menidion\";\"ascii\"\n\"257268\";\"Menidhi\";\"other\"\n\"257268\";\"Menidhion\";\"other\"\n\"257268\";\"Menidi\";\"other\"\n\"257268\";\"Menídhion\";\"other\"\n\"257268\";\"Menídi\";\"other\"\n\"257268\";\"Μενίδιον\";\"other\"\n\"257282\";\"Melívoia\";\"main\"\n\"257282\";\"Melivoia\";\"ascii\"\n\"257282\";\"Athanati\";\"other\"\n\"257282\";\"Athanaton\";\"other\"\n\"257282\";\"Athánati\";\"other\"\n\"257282\";\"Athánaton\";\"other\"\n\"257282\";\"Meliboia\";\"other\"\n\"257282\";\"Μελίβοια\";\"other\"\n\"257302\";\"Melíssia\";\"main\"\n\"257302\";\"Melissia\";\"ascii\"\n\"257302\";\"Melissija\";\"other\"\n\"257302\";\"Μελίσσια\";\"other\"\n\"257302\";\"Мелиссия\";\"other\"\n\"257322\";\"Meligalás\";\"main\"\n\"257322\";\"Meligalas\";\"ascii\"\n\"257322\";\"Meligala\";\"other\"\n\"257322\";\"Meligalá\";\"other\"\n\"257322\";\"Μελιγαλάς\";\"other\"\n\"257365\";\"Mégara\";\"main\"\n\"257365\";\"Megara\";\"ascii\"\n\"257365\";\"Megare\";\"other\"\n\"257365\";\"Mégare\";\"other\"\n\"257365\";\"megala\";\"other\"\n\"257365\";\"Μέγαρα\";\"other\"\n\"257365\";\"Мегара\";\"other\"\n\"257365\";\"메가라\";\"other\"\n\"257395\";\"Megalópolis\";\"main\"\n\"257395\";\"Megalopolis\";\"ascii\"\n\"257395\";\"Megalopole\";\"other\"\n\"257395\";\"Megalopoli\";\"other\"\n\"257395\";\"Megalópoli\";\"other\"\n\"257395\";\"mglwpwlys\";\"other\"\n\"257395\";\"Μεγαλόπολη\";\"other\"\n\"257395\";\"מגלופוליס\";\"other\"\n\"257406\";\"Megalochórion\";\"main\"\n\"257406\";\"Megalochorion\";\"ascii\"\n\"257406\";\"Boukhounitsa\";\"other\"\n\"257406\";\"Boukhounítsa\";\"other\"\n\"257406\";\"Megalo Khorio\";\"other\"\n\"257406\";\"Megalochori\";\"other\"\n\"257406\";\"Megalochóri\";\"other\"\n\"257406\";\"Megalokhorion\";\"other\"\n\"257406\";\"Megalokhórion\";\"other\"\n\"257406\";\"Megálo Khorió\";\"other\"\n\"257434\";\"Megáli Khóra\";\"main\"\n\"257434\";\"Megali Khora\";\"ascii\"\n\"257434\";\"Megale Chora\";\"other\"\n\"257434\";\"Zapandi\";\"other\"\n\"257434\";\"Zapandion\";\"other\"\n\"257434\";\"Zapándi\";\"other\"\n\"257434\";\"Zapándion\";\"other\"\n\"257434\";\"Μεγάλη Χώρα\";\"other\"\n\"257448\";\"Megála Kalývia\";\"main\"\n\"257448\";\"Megala Kalyvia\";\"ascii\"\n\"257448\";\"Megala Kalivia\";\"other\"\n\"257448\";\"Megala Kalybia\";\"other\"\n\"257448\";\"Megála Kalívia\";\"other\"\n\"257448\";\"Μεγάλα Καλύβια\";\"other\"\n\"257535\";\"Mavrommátion\";\"main\"\n\"257535\";\"Mavrommation\";\"ascii\"\n\"257535\";\"Mavromati\";\"other\"\n\"257535\";\"Mavrommati\";\"other\"\n\"257535\";\"Mavrommáti\";\"other\"\n\"257535\";\"Mavromáti\";\"other\"\n\"257621\";\"Martínon\";\"main\"\n\"257621\";\"Martinon\";\"ascii\"\n\"257621\";\"Martino\";\"other\"\n\"257621\";\"Μαρτίνον\";\"other\"\n\"257643\";\"Marmárion\";\"main\"\n\"257643\";\"Marmarion\";\"ascii\"\n\"257643\";\"Marmari\";\"other\"\n\"257643\";\"Marmári\";\"other\"\n\"257643\";\"Μαρμάρι\";\"other\"\n\"257643\";\"Μαρμάριον\";\"other\"\n\"257669\";\"Markópoulon Oropoú\";\"main\"\n\"257669\";\"Markopoulon Oropou\";\"ascii\"\n\"257669\";\"Markopoulon\";\"other\"\n\"257669\";\"Markopoulon Oropion\";\"other\"\n\"257669\";\"Markópoulon\";\"other\"\n\"257669\";\"Markópoulon Óropion\";\"other\"\n\"257671\";\"Markópoulo\";\"main\"\n\"257671\";\"Markopoulo\";\"ascii\"\n\"257671\";\"Markopoulon\";\"other\"\n\"257671\";\"Markopulo\";\"other\"\n\"257671\";\"Markópoulon\";\"other\"\n\"257671\";\"Mavrovouni\";\"other\"\n\"257671\";\"Mavrovoúni\";\"other\"\n\"257671\";\"Μαρκόπουλον\";\"other\"\n\"257717\";\"Marathón\";\"main\"\n\"257717\";\"Marathon\";\"ascii\"\n\"257717\";\"Μαραθών\";\"other\"\n\"257721\";\"Marathókampos\";\"main\"\n\"257721\";\"Marathokampos\";\"ascii\"\n\"257721\";\"Marathocampos\";\"other\"\n\"257721\";\"Marathokambos\";\"other\"\n\"257721\";\"Marathokambou\";\"other\"\n\"257721\";\"Marathokámbou\";\"other\"\n\"257721\";\"Marathókambos\";\"other\"\n\"257721\";\"Μαραθόκαμπος\";\"other\"\n\"257762\";\"Manolás\";\"main\"\n\"257762\";\"Manolas\";\"ascii\"\n\"257762\";\"Manolada\";\"other\"\n\"257762\";\"Manoláda\";\"other\"\n\"257762\";\"Μανολάς\";\"other\"\n\"257811\";\"Mándra\";\"main\"\n\"257811\";\"Mandra\";\"ascii\"\n\"257811\";\"Mandhra\";\"other\"\n\"257811\";\"Mándhra\";\"other\"\n\"257811\";\"Μάνδρα\";\"other\"\n\"257814\";\"Mantoúdion\";\"main\"\n\"257814\";\"Mantoudion\";\"ascii\"\n\"257814\";\"Mandoudhion\";\"other\"\n\"257814\";\"Mandoúdhion\";\"other\"\n\"257814\";\"Mantoudi\";\"other\"\n\"257814\";\"Mantoúdi\";\"other\"\n\"257814\";\"Mantudi\";\"other\"\n\"257814\";\"Μαντούδιον\";\"other\"\n\"257827\";\"Mantamádos\";\"main\"\n\"257827\";\"Mantamados\";\"ascii\"\n\"257827\";\"Mandamadhos\";\"other\"\n\"257827\";\"Mandamado\";\"other\"\n\"257827\";\"Mandamados\";\"other\"\n\"257827\";\"Mandamádhos\";\"other\"\n\"257827\";\"Mandamádos\";\"other\"\n\"257827\";\"Mandhamadhos\";\"other\"\n\"257827\";\"Mandhamádhos\";\"other\"\n\"257827\";\"Μανταμάδος\";\"other\"\n\"257859\";\"Mália\";\"main\"\n\"257859\";\"Malia\";\"ascii\"\n\"257859\";\"Mallia\";\"other\"\n\"257859\";\"Mállia\";\"other\"\n\"257859\";\"Μάλια\";\"other\"\n\"257868\";\"Malesína\";\"main\"\n\"257868\";\"Malesina\";\"ascii\"\n\"257868\";\"Μαλεσίνα\";\"other\"\n\"257923\";\"Makrísia\";\"main\"\n\"257923\";\"Makrisia\";\"ascii\"\n\"257923\";\"Μακρίσια\";\"other\"\n\"257936\";\"Makrinítsa\";\"main\"\n\"257936\";\"Makrinitsa\";\"ascii\"\n\"257936\";\"Makrynitza\";\"other\"\n\"257936\";\"Μακρινίτσα\";\"other\"\n\"257948\";\"Makrikhórion\";\"main\"\n\"257948\";\"Makrikhorion\";\"ascii\"\n\"257948\";\"Makrikhori\";\"other\"\n\"257948\";\"Makrikhóri\";\"other\"\n\"257948\";\"Makrychorion\";\"other\"\n\"257948\";\"Μακρυχώριον\";\"other\"\n\"257949\";\"Makrychórion\";\"main\"\n\"257949\";\"Makrychorion\";\"ascii\"\n\"257949\";\"Makrikhori\";\"other\"\n\"257949\";\"Makrikhorion\";\"other\"\n\"257949\";\"Makrikhóri\";\"other\"\n\"257949\";\"Makrikhórion\";\"other\"\n\"257949\";\"Makrychori\";\"other\"\n\"257949\";\"Makrychóri\";\"other\"\n\"257975\";\"Makrakómi\";\"main\"\n\"257975\";\"Makrakomi\";\"ascii\"\n\"257975\";\"Makrakome\";\"other\"\n\"257975\";\"Varibopi\";\"other\"\n\"257975\";\"Varibópi\";\"other\"\n\"257975\";\"Μακρακώμη\";\"other\"\n\"258004\";\"Magoúla\";\"main\"\n\"258004\";\"Magoula\";\"ascii\"\n\"258007\";\"Magoúla\";\"main\"\n\"258007\";\"Magoula\";\"ascii\"\n\"258007\";\"Μαγούλα\";\"other\"\n\"258011\";\"Magoúla\";\"main\"\n\"258011\";\"Magoula\";\"ascii\"\n\"258066\";\"Loutrákion\";\"main\"\n\"258066\";\"Loutrakion\";\"ascii\"\n\"258066\";\"LOUTRAKI\";\"other\"\n\"258066\";\"Loutraki\";\"other\"\n\"258066\";\"Loutráki\";\"other\"\n\"258066\";\"Lutraki\";\"other\"\n\"258066\";\"ΛΟΥΤΡΑΚΙ\";\"other\"\n\"258066\";\"Λουτράκιον\";\"other\"\n\"258076\";\"Loutrá\";\"main\"\n\"258076\";\"Loutra\";\"ascii\"\n\"258076\";\"Λουτρά\";\"other\"\n\"258091\";\"Loúros\";\"main\"\n\"258091\";\"Louros\";\"ascii\"\n\"258091\";\"Louron\";\"other\"\n\"258091\";\"Loúron\";\"other\"\n\"258091\";\"Λούρος\";\"other\"\n\"258108\";\"Loukísia\";\"main\"\n\"258108\";\"Loukisia\";\"ascii\"\n\"258108\";\"Λουκίσια\";\"other\"\n\"258175\";\"Lixoúrion\";\"main\"\n\"258175\";\"Lixourion\";\"ascii\"\n\"258175\";\"Lexourion\";\"other\"\n\"258175\";\"Lixouri\";\"other\"\n\"258175\";\"Lixoúri\";\"other\"\n\"258175\";\"Lixuri\";\"other\"\n\"258175\";\"Ληξούριον\";\"other\"\n\"258182\";\"Livanátai\";\"main\"\n\"258182\";\"Livanatai\";\"ascii\"\n\"258182\";\"Libanatai\";\"other\"\n\"258182\";\"Livanataes\";\"other\"\n\"258182\";\"Livanatais\";\"other\"\n\"258182\";\"Livanates\";\"other\"\n\"258182\";\"Livanátais\";\"other\"\n\"258182\";\"Livanátes\";\"other\"\n\"258182\";\"Λιβανάται\";\"other\"\n\"258241\";\"Lithakiá\";\"main\"\n\"258241\";\"Lithakia\";\"ascii\"\n\"258241\";\"Λιθακιά\";\"other\"\n\"258306\";\"Límni\";\"main\"\n\"258306\";\"Limni\";\"ascii\"\n\"258306\";\"Aegae\";\"other\"\n\"258306\";\"Limne\";\"other\"\n\"258306\";\"Λίμνη\";\"other\"\n\"258315\";\"Limín Khersonísou\";\"main\"\n\"258315\";\"Limin Khersonisou\";\"ascii\"\n\"258315\";\"Limen Chersonesou\";\"other\"\n\"258315\";\"Λιμήν Χερσονήσου\";\"other\"\n\"258332\";\"Likóvrisi\";\"main\"\n\"258332\";\"Likovrisi\";\"ascii\"\n\"258332\";\"Lycovrissi\";\"other\"\n\"258332\";\"Lykobryse\";\"other\"\n\"258332\";\"Lykovrisi\";\"other\"\n\"258332\";\"Λυκόβρυση\";\"other\"\n\"258377\";\"Ligourión\";\"main\"\n\"258377\";\"Ligourion\";\"ascii\"\n\"258377\";\"Liguri\";\"other\"\n\"258427\";\"Lefkímmi\";\"main\"\n\"258427\";\"Lefkimmi\";\"ascii\"\n\"258427\";\"Agioi Theodoroi\";\"other\"\n\"258427\";\"Ayios Theodhoros\";\"other\"\n\"258427\";\"Levkimmi\";\"other\"\n\"258427\";\"Levkímmi\";\"other\"\n\"258427\";\"Ágioi Theódoroi\";\"other\"\n\"258427\";\"Áyios Theódhoros\";\"other\"\n\"258438\";\"Lefkáda\";\"main\"\n\"258438\";\"Lefkada\";\"ascii\"\n\"258438\";\"Lefkados\";\"other\"\n\"258438\";\"Lefkas\";\"other\"\n\"258438\";\"Lefkádos\";\"other\"\n\"258438\";\"Lefkás\";\"other\"\n\"258438\";\"Leukada\";\"other\"\n\"258438\";\"Leukas\";\"other\"\n\"258438\";\"Levkadha\";\"other\"\n\"258438\";\"Levkas\";\"other\"\n\"258438\";\"Levkádha\";\"other\"\n\"258438\";\"Levkás\";\"other\"\n\"258438\";\"Λευκάδα\";\"other\"\n\"258438\";\"Λευκάς\";\"other\"\n\"258463\";\"Levádeia\";\"main\"\n\"258463\";\"Levadeia\";\"ascii\"\n\"258463\";\"Levadhia\";\"other\"\n\"258463\";\"Levádhia\";\"other\"\n\"258463\";\"Livadeia\";\"other\"\n\"258463\";\"Livadeiá\";\"other\"\n\"258497\";\"Lepenoú\";\"main\"\n\"258497\";\"Lepenou\";\"ascii\"\n\"258497\";\"Λεπενού\";\"other\"\n\"258500\";\"Leonídi\";\"main\"\n\"258500\";\"Leonidi\";\"ascii\"\n\"258500\";\"Isonidhion\";\"other\"\n\"258500\";\"Isonidion\";\"other\"\n\"258500\";\"Isonídhion\";\"other\"\n\"258500\";\"Isonídion\";\"other\"\n\"258500\";\"Leonidhion\";\"other\"\n\"258500\";\"Leonidio\";\"other\"\n\"258500\";\"Leonidion\";\"other\"\n\"258500\";\"Leonídhion\";\"other\"\n\"258500\";\"Leonídio\";\"other\"\n\"258500\";\"Leonídion\";\"other\"\n\"258500\";\"Λεωνίδιον\";\"other\"\n\"258521\";\"Lékhaion\";\"main\"\n\"258521\";\"Lekhaion\";\"ascii\"\n\"258521\";\"Kolombotsi\";\"other\"\n\"258521\";\"Kolombótsi\";\"other\"\n\"258521\";\"Lechaion\";\"other\"\n\"258521\";\"Λέχαιον\";\"other\"\n\"258522\";\"Lechainá\";\"main\"\n\"258522\";\"Lechaina\";\"ascii\"\n\"258522\";\"Lekhaena\";\"other\"\n\"258522\";\"Lekhaina\";\"other\"\n\"258522\";\"Lekhainá\";\"other\"\n\"258522\";\"Λεχαινά\";\"other\"\n\"258543\";\"Lávrion\";\"main\"\n\"258543\";\"Lavrion\";\"ascii\"\n\"258543\";\"Ergasteria\";\"other\"\n\"258543\";\"Ergastiria\";\"other\"\n\"258543\";\"Ergastíria\";\"other\"\n\"258543\";\"Laurium\";\"other\"\n\"258543\";\"Lavrium\";\"other\"\n\"258543\";\"Λαύριον\";\"other\"\n\"258543\";\"Лаврион\";\"other\"\n\"258576\";\"Lárisa\";\"main\"\n\"258576\";\"Larisa\";\"ascii\"\n\"258576\";\"Larissa\";\"other\"\n\"258576\";\"Lárissa\";\"other\"\n\"258576\";\"Yenisehir\";\"other\"\n\"258576\";\"Yenişehir\";\"other\"\n\"258576\";\"Λάρισα\";\"other\"\n\"258576\";\"Лариса\";\"other\"\n\"258577\";\"Lárimna\";\"main\"\n\"258577\";\"Larimna\";\"ascii\"\n\"258577\";\"Kastri\";\"other\"\n\"258577\";\"Kastrí\";\"other\"\n\"258577\";\"Larmes\";\"other\"\n\"258577\";\"Larymna\";\"other\"\n\"258577\";\"Λάρυμνα\";\"other\"\n\"258584\";\"Lápas\";\"main\"\n\"258584\";\"Lapas\";\"ascii\"\n\"258584\";\"Lappa\";\"other\"\n\"258584\";\"Láppa\";\"other\"\n\"258584\";\"Λάπας\";\"other\"\n\"258610\";\"Lagkáda\";\"main\"\n\"258610\";\"Lagkada\";\"ascii\"\n\"258610\";\"Langadha\";\"other\"\n\"258610\";\"Langádha\";\"other\"\n\"258610\";\"Paralia Langadhas\";\"other\"\n\"258610\";\"Paralía Langádhas\";\"other\"\n\"258620\";\"Lamía\";\"main\"\n\"258620\";\"Lamia\";\"ascii\"\n\"258620\";\"Izdin\";\"other\"\n\"258620\";\"Lamija\";\"other\"\n\"258620\";\"lamya\";\"other\"\n\"258620\";\"Λαμία\";\"other\"\n\"258620\";\"Ламия\";\"other\"\n\"258620\";\"لاميَا\";\"other\"\n\"258655\";\"Lálas\";\"main\"\n\"258655\";\"Lalas\";\"ascii\"\n\"258655\";\"Lala\";\"other\"\n\"258655\";\"Lála\";\"other\"\n\"258655\";\"Λάλας\";\"other\"\n\"258672\";\"Lakkíon\";\"main\"\n\"258672\";\"Lakkion\";\"ascii\"\n\"258672\";\"Lakki\";\"other\"\n\"258672\";\"Lakkí\";\"other\"\n\"258672\";\"Port Laki\";\"other\"\n\"258672\";\"Portolago\";\"other\"\n\"258672\";\"Temania\";\"other\"\n\"258672\";\"Λακκίον\";\"other\"\n\"258744\";\"Krousón\";\"main\"\n\"258744\";\"Krouson\";\"ascii\"\n\"258744\";\"Krousonas\";\"other\"\n\"258744\";\"Krousson\";\"other\"\n\"258744\";\"Kroussón\";\"other\"\n\"258744\";\"Kroúsonas\";\"other\"\n\"258744\";\"Κρουσών\";\"other\"\n\"258754\";\"Krokeaí\";\"main\"\n\"258754\";\"Krokeai\";\"ascii\"\n\"258754\";\"Levetsova\";\"other\"\n\"258754\";\"Levétsova\";\"other\"\n\"258754\";\"Κροκεαί\";\"other\"\n\"258757\";\"Taxiárchai\";\"main\"\n\"258757\";\"Taxiarchai\";\"ascii\"\n\"258757\";\"Kritsini\";\"other\"\n\"258757\";\"Kritsinion\";\"other\"\n\"258757\";\"Kritsíni\";\"other\"\n\"258757\";\"Kritsínion\";\"other\"\n\"258757\";\"Taxiarches\";\"other\"\n\"258757\";\"Taxiárches\";\"other\"\n\"258759\";\"Kritsá\";\"main\"\n\"258759\";\"Kritsa\";\"ascii\"\n\"258759\";\"Κριτσά\";\"other\"\n\"258793\";\"Krionérion\";\"main\"\n\"258793\";\"Krionerion\";\"ascii\"\n\"258793\";\"Bafi\";\"other\"\n\"258793\";\"Báfi\";\"other\"\n\"258793\";\"Kryonerion\";\"other\"\n\"258793\";\"Κρυονέριον\";\"other\"\n\"258819\";\"Krikellos\";\"main\"\n\"258819\";\"Krikellon\";\"other\"\n\"258819\";\"Krikelo\";\"other\"\n\"258819\";\"Kríkellon\";\"other\"\n\"258819\";\"Kríkelo\";\"other\"\n\"258842\";\"Kréstena\";\"main\"\n\"258842\";\"Krestena\";\"ascii\"\n\"258842\";\"Krestaina\";\"other\"\n\"258842\";\"Kréstaina\";\"other\"\n\"258842\";\"Selinous\";\"other\"\n\"258842\";\"Selinoús\";\"other\"\n\"258842\";\"Κρέστενα\";\"other\"\n\"258873\";\"Kranídi\";\"main\"\n\"258873\";\"Kranidi\";\"ascii\"\n\"258873\";\"Kranidhion\";\"other\"\n\"258873\";\"Kranidion\";\"other\"\n\"258873\";\"Kranídhion\";\"other\"\n\"258873\";\"Kranídion\";\"other\"\n\"258873\";\"Κρανίδι\";\"other\"\n\"258873\";\"Κρανίδιον\";\"other\"\n\"258882\";\"Kranéa Elassónos\";\"main\"\n\"258882\";\"Kranea Elassonos\";\"ascii\"\n\"258882\";\"Kranea Deskatis\";\"other\"\n\"258882\";\"Kranea Dheskatis\";\"other\"\n\"258882\";\"Krania\";\"other\"\n\"258882\";\"Krania Dheskatis\";\"other\"\n\"258882\";\"Kraniá\";\"other\"\n\"258882\";\"Kraniá Dheskátis\";\"other\"\n\"258882\";\"Kranéa Deskátis\";\"other\"\n\"258882\";\"Kranéa Dheskátis\";\"other\"\n\"258882\";\"Κρανέα Ελασσόνος\";\"other\"\n\"258912\";\"Kouvarás\";\"main\"\n\"258912\";\"Kouvaras\";\"ascii\"\n\"258912\";\"Koubaras\";\"other\"\n\"258912\";\"Κουβαράς\";\"other\"\n\"258949\";\"Koutsélion\";\"main\"\n\"258949\";\"Koutselion\";\"ascii\"\n\"258949\";\"Koutselio\";\"other\"\n\"258949\";\"Koutselió\";\"other\"\n\"258949\";\"Koutsilio\";\"other\"\n\"258949\";\"Koutsilió\";\"other\"\n\"258949\";\"Koutsolio\";\"other\"\n\"258949\";\"Koutsolió\";\"other\"\n\"259229\";\"Kostakioí\";\"main\"\n\"259229\";\"Kostakioi\";\"ascii\"\n\"259229\";\"Κωστακιοί\";\"other\"\n\"259245\";\"Kos\";\"main\"\n\"259245\";\"Coo\";\"other\"\n\"259245\";\"Poli Kos\";\"other\"\n\"259245\";\"Póli Kos\";\"other\"\n\"259245\";\"Кос\";\"other\"\n\"259251\";\"Koropí\";\"main\"\n\"259251\";\"Koropi\";\"ascii\"\n\"259251\";\"Koropion\";\"other\"\n\"259251\";\"Koropíon\";\"other\"\n\"259251\";\"Κοροπίον\";\"other\"\n\"259251\";\"Κορωπίον\";\"other\"\n\"259265\";\"Koróni\";\"main\"\n\"259265\";\"Koroni\";\"ascii\"\n\"259265\";\"Korone\";\"other\"\n\"259265\";\"Κορώνη\";\"other\"\n\"259289\";\"Corinth\";\"main\"\n\"259289\";\"Corint\";\"other\"\n\"259289\";\"Corinthe\";\"other\"\n\"259289\";\"Corinthus\";\"other\"\n\"259289\";\"Corintia\";\"other\"\n\"259289\";\"Corinto\";\"other\"\n\"259289\";\"Korinf\";\"other\"\n\"259289\";\"Korint\";\"other\"\n\"259289\";\"Korinth\";\"other\"\n\"259289\";\"Korinthe\";\"other\"\n\"259289\";\"Korinthos\";\"other\"\n\"259289\";\"Korintti\";\"other\"\n\"259289\";\"Korynt\";\"other\"\n\"259289\";\"Kórinthos\";\"other\"\n\"259289\";\"ke lin si\";\"other\"\n\"259289\";\"korintosu\";\"other\"\n\"259289\";\"qwryntws\";\"other\"\n\"259289\";\"Κόρινθος\";\"other\"\n\"259289\";\"Коринф\";\"other\"\n\"259289\";\"Корінѳъ\";\"other\"\n\"259289\";\"קורינתוס\";\"other\"\n\"259289\";\"コリントス\";\"other\"\n\"259289\";\"科林斯\";\"other\"\n\"259292\";\"Koríni\";\"main\"\n\"259292\";\"Korini\";\"ascii\"\n\"259292\";\"Dhomvraina\";\"other\"\n\"259292\";\"Dhomvraína\";\"other\"\n\"259292\";\"Dhomvrena\";\"other\"\n\"259292\";\"Dhómvrena\";\"other\"\n\"259292\";\"Dombraina\";\"other\"\n\"259292\";\"Domvraina\";\"other\"\n\"259292\";\"Domvraína\";\"other\"\n\"259292\";\"Domvrena\";\"other\"\n\"259292\";\"Δομβραίνα\";\"other\"\n\"259452\";\"Kompótion\";\"main\"\n\"259452\";\"Kompotion\";\"ascii\"\n\"259452\";\"Komboti\";\"other\"\n\"259452\";\"Kombotion\";\"other\"\n\"259452\";\"Kombóti\";\"other\"\n\"259452\";\"Kombótion\";\"other\"\n\"259452\";\"Kompoti\";\"other\"\n\"259452\";\"Kompóti\";\"other\"\n\"259452\";\"Κομπότιον\";\"other\"\n\"259508\";\"Kolimvárion\";\"main\"\n\"259508\";\"Kolimvarion\";\"ascii\"\n\"259508\";\"Kolimbari\";\"other\"\n\"259508\";\"Kolimbári\";\"other\"\n\"259508\";\"Kolimvari\";\"other\"\n\"259508\";\"Kolimvári\";\"other\"\n\"259508\";\"Kolymbari\";\"other\"\n\"259508\";\"Κολυμβάρι\";\"other\"\n\"259537\";\"Kokkónion\";\"main\"\n\"259537\";\"Kokkonion\";\"ascii\"\n\"259537\";\"Kokkoni\";\"other\"\n\"259537\";\"Kokkóni\";\"other\"\n\"259537\";\"Kokoni\";\"other\"\n\"259537\";\"Kokóni\";\"other\"\n\"259537\";\"Κοκκώνιον\";\"other\"\n\"259578\";\"Kokkíni Khánion\";\"main\"\n\"259578\";\"Kokkini Khanion\";\"ascii\"\n\"259578\";\"Khanion tou Kokkini\";\"other\"\n\"259578\";\"Khánion toú Kokkíni\";\"other\"\n\"259578\";\"Metokhi Kokkini\";\"other\"\n\"259578\";\"Metókhi Kokkíni\";\"other\"\n\"259595\";\"Kokkárion\";\"main\"\n\"259595\";\"Kokkarion\";\"ascii\"\n\"259595\";\"Kokari\";\"other\"\n\"259595\";\"Kokkari\";\"other\"\n\"259595\";\"Kokkári\";\"other\"\n\"259595\";\"Κοκκάριον\";\"other\"\n\"259618\";\"Koilás\";\"main\"\n\"259618\";\"Koilas\";\"ascii\"\n\"259618\";\"Κοιλάς\";\"other\"\n\"259718\";\"Kíssamos\";\"main\"\n\"259718\";\"Kissamos\";\"ascii\"\n\"259718\";\"Kastelli\";\"other\"\n\"259718\";\"Kastellion\";\"other\"\n\"259718\";\"Kastélli\";\"other\"\n\"259718\";\"Kastéllion\";\"other\"\n\"259718\";\"Κίσσαμος\";\"other\"\n\"259720\";\"Kírra\";\"main\"\n\"259720\";\"Kirra\";\"ascii\"\n\"259720\";\"Xeropigadho\";\"other\"\n\"259720\";\"Xeropígadho\";\"other\"\n\"259720\";\"Κίρρα\";\"other\"\n\"259730\";\"Kiriákion\";\"main\"\n\"259730\";\"Kiriakion\";\"ascii\"\n\"259730\";\"Kiriaki\";\"other\"\n\"259730\";\"Kiriáki\";\"other\"\n\"259730\";\"Kyriaki\";\"other\"\n\"259730\";\"Kyriakion\";\"other\"\n\"259730\";\"Κυριάκιον\";\"other\"\n\"259734\";\"Kyrás Vrýsi\";\"main\"\n\"259734\";\"Kyras Vrysi\";\"ascii\"\n\"259734\";\"Kira Vrisi\";\"other\"\n\"259734\";\"Kiras Vrisi\";\"other\"\n\"259734\";\"Kirá Vrísi\";\"other\"\n\"259734\";\"Kirás Vrísi\";\"other\"\n\"259734\";\"Κυράς Βρύση\";\"other\"\n\"259745\";\"Kipséli\";\"main\"\n\"259745\";\"Kipseli\";\"ascii\"\n\"259782\";\"Kyparissía\";\"main\"\n\"259782\";\"Kyparissia\";\"ascii\"\n\"259782\";\"Kiparissia\";\"other\"\n\"259782\";\"Kiparissía\";\"other\"\n\"259782\";\"Κυπαρισσία\";\"other\"\n\"259796\";\"Kinéta\";\"main\"\n\"259796\";\"Kineta\";\"ascii\"\n\"259796\";\"Κινέτα\";\"other\"\n\"259806\";\"Kími\";\"main\"\n\"259806\";\"Kimi\";\"ascii\"\n\"259806\";\"Kumi\";\"other\"\n\"259806\";\"Kyme\";\"other\"\n\"259806\";\"Kymi\";\"other\"\n\"259806\";\"Κύμη\";\"other\"\n\"259813\";\"Kyllíni\";\"main\"\n\"259813\";\"Kyllini\";\"ascii\"\n\"259813\";\"Killini\";\"other\"\n\"259813\";\"Killíni\";\"other\"\n\"259813\";\"Kylini\";\"other\"\n\"259813\";\"Kyllene\";\"other\"\n\"259813\";\"Kylíni\";\"other\"\n\"259813\";\"Κυλλήνη\";\"other\"\n\"259824\";\"Kifisiá\";\"main\"\n\"259824\";\"Kifisia\";\"ascii\"\n\"259824\";\"Kefissia\";\"other\"\n\"259824\";\"Kephisia\";\"other\"\n\"259824\";\"Kifissia\";\"other\"\n\"259824\";\"Kēfissia\";\"other\"\n\"259824\";\"Κηφισιά\";\"other\"\n\"259830\";\"Kiáton\";\"main\"\n\"259830\";\"Kiaton\";\"ascii\"\n\"259830\";\"Kiato\";\"other\"\n\"259830\";\"Kiáto\";\"other\"\n\"259830\";\"Sikion\";\"other\"\n\"259830\";\"Sikionia\";\"other\"\n\"259830\";\"Sikionía\";\"other\"\n\"259830\";\"Sikonia\";\"other\"\n\"259830\";\"Κιάτο\";\"other\"\n\"259917\";\"Chóra\";\"main\"\n\"259917\";\"Chora\";\"ascii\"\n\"259917\";\"Khora\";\"other\"\n\"259917\";\"Khóra\";\"other\"\n\"259919\";\"Khóra\";\"main\"\n\"259919\";\"Khora\";\"ascii\"\n\"259919\";\"Ligoudhista\";\"other\"\n\"259919\";\"Ligoudhísta\";\"other\"\n\"259919\";\"Lygudista\";\"other\"\n\"259949\";\"Kholargós\";\"main\"\n\"259949\";\"Kholargos\";\"ascii\"\n\"259949\";\"Cholargos\";\"other\"\n\"259949\";\"Holargos\";\"other\"\n\"259949\";\"Χολαργός\";\"other\"\n\"259973\";\"Chíos\";\"main\"\n\"259973\";\"Chios\";\"ascii\"\n\"259973\";\"Castro\";\"other\"\n\"259973\";\"Chora\";\"other\"\n\"259973\";\"Chóra\";\"other\"\n\"259973\";\"Hios\";\"other\"\n\"259973\";\"Kastro\";\"other\"\n\"259973\";\"Kastron\";\"other\"\n\"259973\";\"Khios\";\"other\"\n\"259973\";\"Khora\";\"other\"\n\"259973\";\"Khíos\";\"other\"\n\"259973\";\"Khóra\";\"other\"\n\"259973\";\"Quios\";\"other\"\n\"259973\";\"Quíos\";\"other\"\n\"259973\";\"Sakiz\";\"other\"\n\"259973\";\"Sakız\";\"other\"\n\"259973\";\"Scio\";\"other\"\n\"259973\";\"Xios\";\"other\"\n\"259973\";\"Xíos\";\"other\"\n\"259973\";\"el Xiu\";\"other\"\n\"259973\";\"Κάστρο\";\"other\"\n\"259973\";\"Καστρο\";\"other\"\n\"259973\";\"Χίος\";\"other\"\n\"259973\";\"Χωρα\";\"other\"\n\"259973\";\"Χώρα\";\"other\"\n\"259973\";\"Хиос\";\"other\"\n\"259993\";\"Khiliomódhion\";\"main\"\n\"259993\";\"Khiliomodhion\";\"ascii\"\n\"259993\";\"Khiliomodion\";\"other\"\n\"260037\";\"Chavárion\";\"main\"\n\"260037\";\"Chavarion\";\"ascii\"\n\"260037\";\"Chabarion\";\"other\"\n\"260037\";\"Chavari\";\"other\"\n\"260037\";\"Chávari\";\"other\"\n\"260037\";\"Khavari\";\"other\"\n\"260037\";\"Khavarion\";\"other\"\n\"260037\";\"Khavárion\";\"other\"\n\"260037\";\"Khávari\";\"other\"\n\"260037\";\"Χαβάριον\";\"other\"\n\"260093\";\"Khaniótis\";\"main\"\n\"260093\";\"Khaniotis\";\"ascii\"\n\"260093\";\"Chaniotes\";\"other\"\n\"260093\";\"Χανιώτης\";\"other\"\n\"260114\";\"Chaniá\";\"main\"\n\"260114\";\"Chania\";\"ascii\"\n\"260114\";\"Candia\";\"other\"\n\"260114\";\"Canea\";\"other\"\n\"260114\";\"Chanion\";\"other\"\n\"260114\";\"Cydonia\";\"other\"\n\"260114\";\"Càndia\";\"other\"\n\"260114\";\"Hania\";\"other\"\n\"260114\";\"Hanià\";\"other\"\n\"260114\";\"Hanya\";\"other\"\n\"260114\";\"Khan'ja\";\"other\"\n\"260114\";\"Khania\";\"other\"\n\"260114\";\"Khaniá\";\"other\"\n\"260114\";\"Kreta\";\"other\"\n\"260114\";\"La Canea\";\"other\"\n\"260114\";\"La Canee\";\"other\"\n\"260114\";\"La Canée\";\"other\"\n\"260114\";\"Ĥania\";\"other\"\n\"260114\";\"Χανίων\";\"other\"\n\"260114\";\"Χανιά\";\"other\"\n\"260114\";\"Ханья\";\"other\"\n\"260128\";\"Khalkoútsion\";\"main\"\n\"260128\";\"Khalkoutsion\";\"ascii\"\n\"260128\";\"Chalkoutsion\";\"other\"\n\"260128\";\"Khalkoutsi\";\"other\"\n\"260128\";\"Khalkoútsi\";\"other\"\n\"260128\";\"Χαλκούτσιον\";\"other\"\n\"260133\";\"Chalkída\";\"main\"\n\"260133\";\"Chalkida\";\"ascii\"\n\"260133\";\"Calcide\";\"other\"\n\"260133\";\"Calcis\";\"other\"\n\"260133\";\"Chalcis\";\"other\"\n\"260133\";\"Chalkis\";\"other\"\n\"260133\";\"Chalkís\";\"other\"\n\"260133\";\"Euripos\";\"other\"\n\"260133\";\"Khalkida\";\"other\"\n\"260133\";\"Khalkis\";\"other\"\n\"260133\";\"Khalkís\";\"other\"\n\"260133\";\"klqys\";\"other\"\n\"260133\";\"Χαλκίδα\";\"other\"\n\"260133\";\"Χαλκίς\";\"other\"\n\"260133\";\"Халкида\";\"other\"\n\"260133\";\"כלקיס\";\"other\"\n\"260142\";\"Chalkiádes\";\"main\"\n\"260142\";\"Chalkiades\";\"ascii\"\n\"260142\";\"Khalkiadhes\";\"other\"\n\"260142\";\"Khalkiádhes\";\"other\"\n\"260142\";\"Yeorgousioi\";\"other\"\n\"260144\";\"Khálki\";\"main\"\n\"260144\";\"Khalki\";\"ascii\"\n\"260144\";\"Chalke\";\"other\"\n\"260144\";\"Maimouli\";\"other\"\n\"260144\";\"Maïmoúli\";\"other\"\n\"260144\";\"Χάλκη\";\"other\"\n\"260172\";\"Khalándrion\";\"main\"\n\"260172\";\"Khalandrion\";\"ascii\"\n\"260172\";\"Chalandrion\";\"other\"\n\"260172\";\"Khalandhrion\";\"other\"\n\"260172\";\"Khalandri\";\"other\"\n\"260172\";\"Khalándhrion\";\"other\"\n\"260172\";\"Khalándri\";\"other\"\n\"260172\";\"Χαλάνδριον\";\"other\"\n\"260204\";\"Keratsínion\";\"main\"\n\"260204\";\"Keratsinion\";\"ascii\"\n\"260204\";\"Ayios Yeoryios\";\"other\"\n\"260204\";\"Ayios Yeoryios Keratsiniou\";\"other\"\n\"260204\";\"Hagios Georgios Keratsiniou\";\"other\"\n\"260204\";\"Keratsini\";\"other\"\n\"260204\";\"Keratsiniou\";\"other\"\n\"260204\";\"Keratsiníou\";\"other\"\n\"260204\";\"Keratsíni\";\"other\"\n\"260204\";\"Áyios Yeóryios\";\"other\"\n\"260204\";\"Κερατσίνιον\";\"other\"\n\"260210\";\"Keratéa\";\"main\"\n\"260210\";\"Keratea\";\"ascii\"\n\"260210\";\"Κερατέα\";\"other\"\n\"260308\";\"Kéfalos\";\"main\"\n\"260308\";\"Kefalos\";\"ascii\"\n\"260308\";\"Cefalo\";\"other\"\n\"260308\";\"Cephalo\";\"other\"\n\"260308\";\"Kephalo\";\"other\"\n\"260308\";\"Kephalos\";\"other\"\n\"260308\";\"Képhalo\";\"other\"\n\"260308\";\"Κέφαλος\";\"other\"\n\"260379\";\"Kavásilas\";\"main\"\n\"260379\";\"Kavasilas\";\"ascii\"\n\"260379\";\"Kabasilas\";\"other\"\n\"260379\";\"Kavasila\";\"other\"\n\"260379\";\"Kavásila\";\"other\"\n\"260379\";\"Καβάσιλας\";\"other\"\n\"260420\";\"Katsikás\";\"main\"\n\"260420\";\"Katsikas\";\"ascii\"\n\"260420\";\"Katsika\";\"other\"\n\"260420\";\"Katsiká\";\"other\"\n\"260420\";\"Κατσικάς\";\"other\"\n\"260468\";\"Katoúna\";\"main\"\n\"260468\";\"Katouna\";\"ascii\"\n\"260468\";\"Κατούνα\";\"other\"\n\"260473\";\"Káto Tithoréa\";\"main\"\n\"260473\";\"Kato Tithorea\";\"ascii\"\n\"260473\";\"Kifisokhori\";\"other\"\n\"260473\";\"Kifisokhorion\";\"other\"\n\"260473\";\"Kifisokhóri\";\"other\"\n\"260473\";\"Kifisokhórion\";\"other\"\n\"260473\";\"Kifissokhori\";\"other\"\n\"260473\";\"Kifissokhóri\";\"other\"\n\"260473\";\"Κάτω Τιθορέα\";\"other\"\n\"260478\";\"Káto Soúlion\";\"main\"\n\"260478\";\"Kato Soulion\";\"ascii\"\n\"260478\";\"Kato Souli\";\"other\"\n\"260478\";\"Káto Soúli\";\"other\"\n\"260478\";\"Κάτω Σούλιον\";\"other\"\n\"260531\";\"Káto Mazarákion\";\"main\"\n\"260531\";\"Kato Mazarakion\";\"ascii\"\n\"260531\";\"Kato Mazaraki\";\"other\"\n\"260531\";\"Káto Mazaráki\";\"other\"\n\"260531\";\"Mazaraki\";\"other\"\n\"260531\";\"Mazaráki\";\"other\"\n\"260531\";\"Κάτω Μαζαράκιον\";\"other\"\n\"260542\";\"Káto Lekhónia\";\"main\"\n\"260542\";\"Kato Lekhonia\";\"ascii\"\n\"260542\";\"Kato Lechonia\";\"other\"\n\"260542\";\"Lekhonia\";\"other\"\n\"260542\";\"Lekhónia\";\"other\"\n\"260542\";\"Κάτω Λεχώνια\";\"other\"\n\"260567\";\"Káto Khoríon\";\"main\"\n\"260567\";\"Kato Khorion\";\"ascii\"\n\"260567\";\"Kato Chorion\";\"other\"\n\"260567\";\"Kato Khorio\";\"other\"\n\"260567\";\"Káto Khorió\";\"other\"\n\"260567\";\"Κάτω Χωρίον\";\"other\"\n\"260604\";\"Káto Glikóvrisi\";\"main\"\n\"260604\";\"Kato Glikovrisi\";\"ascii\"\n\"260604\";\"Kato Glykobryse\";\"other\"\n\"260604\";\"Kato Vezani\";\"other\"\n\"260604\";\"Káto Vezáni\";\"other\"\n\"260604\";\"Κάτω Γλυκόβρυση\";\"other\"\n\"260629\";\"Káto Ássos\";\"main\"\n\"260629\";\"Kato Assos\";\"ascii\"\n\"260629\";\"Azizion\";\"other\"\n\"260629\";\"Azízion\";\"other\"\n\"260629\";\"Κάτω Άσσος\";\"other\"\n\"260630\";\"Káto Asítai\";\"main\"\n\"260630\";\"Kato Asitai\";\"ascii\"\n\"260630\";\"Kato Asitais\";\"other\"\n\"260630\";\"Káto Asítais\";\"other\"\n\"260630\";\"Κάτω Ασίται\";\"other\"\n\"260644\";\"Káto Achaḯa\";\"main\"\n\"260644\";\"Kato Achaia\";\"ascii\"\n\"260644\";\"Kato Achagia\";\"other\"\n\"260644\";\"Kato Akhaia\";\"other\"\n\"260644\";\"Káto Achagiá\";\"other\"\n\"260644\";\"Káto Akhaïa\";\"other\"\n\"260674\";\"Katastárion\";\"main\"\n\"260674\";\"Katastarion\";\"ascii\"\n\"260674\";\"Katastari\";\"other\"\n\"260674\";\"Katastári\";\"other\"\n\"260674\";\"Καταστάριον\";\"other\"\n\"260780\";\"Kastrákion\";\"main\"\n\"260780\";\"Kastrakion\";\"ascii\"\n\"260780\";\"Kastraki\";\"other\"\n\"260780\";\"Kastráki\";\"other\"\n\"260780\";\"Καστράκι\";\"other\"\n\"260780\";\"Καστράκιον\";\"other\"\n\"260804\";\"Kastéllion\";\"main\"\n\"260804\";\"Kastellion\";\"ascii\"\n\"260804\";\"Kasteli\";\"other\"\n\"260804\";\"Kastelli\";\"other\"\n\"260804\";\"Kastellion Pedhiadhos\";\"other\"\n\"260804\";\"Kastellion Pediada\";\"other\"\n\"260804\";\"Kastéli\";\"other\"\n\"260804\";\"Kastélli\";\"other\"\n\"260804\";\"Kastéllion Pedhiádhos\";\"other\"\n\"260804\";\"Kastéllion Pedíada\";\"other\"\n\"260804\";\"Καστέλλιον\";\"other\"\n\"260811\";\"Kastélla\";\"main\"\n\"260811\";\"Kastella\";\"ascii\"\n\"260811\";\"Καστέλλα\";\"other\"\n\"260886\";\"Karpokhórion\";\"main\"\n\"260886\";\"Karpokhorion\";\"ascii\"\n\"260886\";\"Gerbesi\";\"other\"\n\"260886\";\"Gerbetsi\";\"other\"\n\"260886\";\"Gerbétsi\";\"other\"\n\"260886\";\"Gérbesi\";\"other\"\n\"260886\";\"Karpochorion\";\"other\"\n\"260886\";\"Karpokhori\";\"other\"\n\"260886\";\"Karpokhóri\";\"other\"\n\"260886\";\"Καρποχώριον\";\"other\"\n\"260891\";\"Karpenísion\";\"main\"\n\"260891\";\"Karpenision\";\"ascii\"\n\"260891\";\"Karpenesion\";\"other\"\n\"260891\";\"Karpenisi\";\"other\"\n\"260891\";\"Karpenísi\";\"other\"\n\"260891\";\"Καρπενήσιον\";\"other\"\n\"260895\";\"Kárpathos\";\"main\"\n\"260895\";\"Karpathos\";\"ascii\"\n\"260895\";\"Pegadia\";\"other\"\n\"260895\";\"Pigadhia\";\"other\"\n\"260895\";\"Pigadia\";\"other\"\n\"260895\";\"Pigádhia\";\"other\"\n\"260895\";\"Κάρπαθος\";\"other\"\n\"260935\";\"Kárystos\";\"main\"\n\"260935\";\"Karystos\";\"ascii\"\n\"260935\";\"Karistos\";\"other\"\n\"260935\";\"Karysto\";\"other\"\n\"260935\";\"Káristos\";\"other\"\n\"260935\";\"Κάρυστος\";\"other\"\n\"260956\";\"Kariaí\";\"main\"\n\"260956\";\"Kariai\";\"ascii\"\n\"260956\";\"Arakhova\";\"other\"\n\"260956\";\"Arákhova\";\"other\"\n\"260956\";\"Karyai\";\"other\"\n\"260956\";\"Καρυαί\";\"other\"\n\"260987\";\"Karditsomagoúla\";\"main\"\n\"260987\";\"Karditsomagoula\";\"ascii\"\n\"260987\";\"Kardhitsomagoula\";\"other\"\n\"260987\";\"Kardhitsomagoúla\";\"other\"\n\"260987\";\"Καρδιτσομαγούλα\";\"other\"\n\"260989\";\"Kardítsa\";\"main\"\n\"260989\";\"Karditsa\";\"ascii\"\n\"260989\";\"Kardhitsa\";\"other\"\n\"260989\";\"Kardhítsa\";\"other\"\n\"260989\";\"Kardica\";\"other\"\n\"260989\";\"Kardiça\";\"other\"\n\"260989\";\"ka er ji cha\";\"other\"\n\"260989\";\"Καρδίτσα\";\"other\"\n\"260989\";\"Кардица\";\"other\"\n\"260989\";\"卡尔季察\";\"other\"\n\"261002\";\"Kardamás\";\"main\"\n\"261002\";\"Kardamas\";\"ascii\"\n\"261002\";\"Kardhamas\";\"other\"\n\"261002\";\"Kardhamás\";\"other\"\n\"261002\";\"Καρδαμάς\";\"other\"\n\"261003\";\"Kardámaina\";\"main\"\n\"261003\";\"Kardamaina\";\"ascii\"\n\"261003\";\"Cardamena\";\"other\"\n\"261003\";\"Chorio Kardamaina\";\"other\"\n\"261003\";\"Chorió Kardámaina\";\"other\"\n\"261003\";\"Kardamena\";\"other\"\n\"261003\";\"Kardhamaina\";\"other\"\n\"261003\";\"Kardhámaina\";\"other\"\n\"261003\";\"Καρδάμαινα\";\"other\"\n\"261039\";\"Karátoulas\";\"main\"\n\"261039\";\"Karatoulas\";\"ascii\"\n\"261039\";\"Karatoula\";\"other\"\n\"261039\";\"Karátoula\";\"other\"\n\"261039\";\"Καράτουλας\";\"other\"\n\"261132\";\"Kaparéllion\";\"main\"\n\"261132\";\"Kaparellion\";\"ascii\"\n\"261132\";\"Kapareli\";\"other\"\n\"261132\";\"Kapareli Plataion\";\"other\"\n\"261132\";\"Kaparéli\";\"other\"\n\"261132\";\"Kaparéli Plataión\";\"other\"\n\"261132\";\"Καπαρέλλιον\";\"other\"\n\"261133\";\"Kapandrítion\";\"main\"\n\"261133\";\"Kapandrition\";\"ascii\"\n\"261133\";\"Kapandhrition\";\"other\"\n\"261133\";\"Kapandhrítion\";\"other\"\n\"261133\";\"Καπανδρίτιον\";\"other\"\n\"261150\";\"Kandíla\";\"main\"\n\"261150\";\"Kandila\";\"ascii\"\n\"261150\";\"Kandela\";\"other\"\n\"261150\";\"Kandhila\";\"other\"\n\"261150\";\"Kandhíla\";\"other\"\n\"261150\";\"Κανδήλα\";\"other\"\n\"261167\";\"Kanallákion\";\"main\"\n\"261167\";\"Kanallakion\";\"ascii\"\n\"261167\";\"Kanallaki\";\"other\"\n\"261167\";\"Kanalláki\";\"other\"\n\"261167\";\"Καναλλάκιον\";\"other\"\n\"261169\";\"Kanália\";\"main\"\n\"261169\";\"Kanalia\";\"ascii\"\n\"261169\";\"Κανάλια\";\"other\"\n\"261211\";\"Kaména Voúrla\";\"main\"\n\"261211\";\"Kamena Vourla\";\"ascii\"\n\"261211\";\"Kamena Bourla\";\"other\"\n\"261211\";\"Kammena Vourla\";\"other\"\n\"261211\";\"Kamména Voúrla\";\"other\"\n\"261211\";\"Καμένα Βούρλα\";\"other\"\n\"261242\";\"Kampí\";\"main\"\n\"261242\";\"Kampi\";\"ascii\"\n\"261242\";\"Kambi\";\"other\"\n\"261242\";\"Kambí\";\"other\"\n\"261242\";\"Kampe\";\"other\"\n\"261242\";\"Kanbi\";\"other\"\n\"261242\";\"Kanbí\";\"other\"\n\"261242\";\"Strevina\";\"other\"\n\"261242\";\"Strevinas\";\"other\"\n\"261242\";\"Strevína\";\"other\"\n\"261242\";\"Strévinas\";\"other\"\n\"261242\";\"Καμπή\";\"other\"\n\"261259\";\"Kamárion\";\"main\"\n\"261259\";\"Kamarion\";\"ascii\"\n\"261259\";\"Kamari\";\"other\"\n\"261259\";\"Kamári\";\"other\"\n\"261263\";\"Kamárion\";\"main\"\n\"261263\";\"Kamarion\";\"ascii\"\n\"261263\";\"Kamari\";\"other\"\n\"261263\";\"Kamári\";\"other\"\n\"261263\";\"Καμάριον\";\"other\"\n\"261283\";\"Kamárai\";\"main\"\n\"261283\";\"Kamarai\";\"ascii\"\n\"261283\";\"Kamarais\";\"other\"\n\"261283\";\"Kamárais\";\"other\"\n\"261283\";\"Καμάραι\";\"other\"\n\"261396\";\"Kalloní\";\"main\"\n\"261396\";\"Kalloni\";\"ascii\"\n\"261396\";\"Akhiron\";\"other\"\n\"261396\";\"Akhirón\";\"other\"\n\"261396\";\"Kallone\";\"other\"\n\"261396\";\"Καλλονή\";\"other\"\n\"261401\";\"Kallíthiron\";\"main\"\n\"261401\";\"Kallithiron\";\"ascii\"\n\"261401\";\"Kallitheron\";\"other\"\n\"261401\";\"Kallithiro\";\"other\"\n\"261401\";\"Kallíthiro\";\"other\"\n\"261401\";\"Sekliza\";\"other\"\n\"261401\";\"Sékliza\";\"other\"\n\"261401\";\"Καλλίθηρον\";\"other\"\n\"261414\";\"Kallithéa\";\"main\"\n\"261414\";\"Kallithea\";\"ascii\"\n\"261414\";\"Kallifeja\";\"other\"\n\"261414\";\"Καλλιθέα\";\"other\"\n\"261414\";\"Каллифея\";\"other\"\n\"261431\";\"Kallifónion\";\"main\"\n\"261431\";\"Kallifonion\";\"ascii\"\n\"261431\";\"Kallifoneion\";\"other\"\n\"261431\";\"Kallifoni\";\"other\"\n\"261431\";\"Kallifonio\";\"other\"\n\"261431\";\"Kallifóneion\";\"other\"\n\"261431\";\"Kallifóni\";\"other\"\n\"261431\";\"Kallifónio\";\"other\"\n\"261431\";\"Kalliphonion\";\"other\"\n\"261431\";\"Καλλιφώνιον\";\"other\"\n\"261445\";\"Kalývia Thorikoú\";\"main\"\n\"261445\";\"Kalyvia Thorikou\";\"ascii\"\n\"261445\";\"Kalivia\";\"other\"\n\"261445\";\"Kalivia Thorikou\";\"other\"\n\"261445\";\"Kalívia\";\"other\"\n\"261445\";\"Kalívia Thorikoú\";\"other\"\n\"261445\";\"Kouvara\";\"other\"\n\"261445\";\"Kouvará\";\"other\"\n\"261445\";\"Thorikou\";\"other\"\n\"261445\";\"Thorikoú\";\"other\"\n\"261445\";\"Καλύβια Θορικού\";\"other\"\n\"261497\";\"Kalívai\";\"main\"\n\"261497\";\"Kalivai\";\"ascii\"\n\"261497\";\"Kalivia\";\"other\"\n\"261497\";\"Kalivia Vamou\";\"other\"\n\"261497\";\"Kalybai\";\"other\"\n\"261497\";\"Kalívia\";\"other\"\n\"261497\";\"Kalívia Vámou\";\"other\"\n\"261497\";\"Vamou\";\"other\"\n\"261497\";\"Vámou\";\"other\"\n\"261497\";\"Καλύβαι\";\"other\"\n\"261507\";\"Kálymnos\";\"main\"\n\"261507\";\"Kalymnos\";\"ascii\"\n\"261507\";\"Calino\";\"other\"\n\"261507\";\"Kalimnos\";\"other\"\n\"261507\";\"Kálimnos\";\"other\"\n\"261507\";\"Pothaia\";\"other\"\n\"261507\";\"Pothia\";\"other\"\n\"261507\";\"Póthia\";\"other\"\n\"261507\";\"Κάλυμνος\";\"other\"\n\"261537\";\"Kalávryta\";\"main\"\n\"261537\";\"Kalavryta\";\"ascii\"\n\"261537\";\"Kalabryta\";\"other\"\n\"261537\";\"Kalavrita\";\"other\"\n\"261537\";\"Kalávrita\";\"other\"\n\"261537\";\"Καλάβρυτα\";\"other\"\n\"261571\";\"Kálamos\";\"main\"\n\"261571\";\"Kalamos\";\"ascii\"\n\"261571\";\"Κάλαμος\";\"other\"\n\"261596\";\"Kalamiá\";\"main\"\n\"261596\";\"Kalamia\";\"ascii\"\n\"261596\";\"Kalamies\";\"other\"\n\"261596\";\"Kalamiés\";\"other\"\n\"261596\";\"Konesoi\";\"other\"\n\"261596\";\"Konésoï\";\"other\"\n\"261596\";\"Καλαμιά\";\"other\"\n\"261601\";\"Kalampáka\";\"main\"\n\"261601\";\"Kalampaka\";\"ascii\"\n\"261601\";\"Kalabaka\";\"other\"\n\"261601\";\"Kalabáka\";\"other\"\n\"261601\";\"Kalambaka\";\"other\"\n\"261601\";\"Kalambáka\";\"other\"\n\"261601\";\"Καλαμπάκα\";\"other\"\n\"261604\";\"Kalamáta\";\"main\"\n\"261604\";\"Kalamata\";\"ascii\"\n\"261604\";\"Kalamae\";\"other\"\n\"261604\";\"Kalamai\";\"other\"\n\"261604\";\"Kalamatas\";\"other\"\n\"261604\";\"Kalamato\";\"other\"\n\"261604\";\"Kalmata\";\"other\"\n\"261604\";\"Kalámai\";\"other\"\n\"261604\";\"kalamata\";\"other\"\n\"261604\";\"Καλάμαι\";\"other\"\n\"261604\";\"Καλαμάτα\";\"other\"\n\"261604\";\"Каламата\";\"other\"\n\"261604\";\"كالاماتا\";\"other\"\n\"261614\";\"Kalamáki\";\"main\"\n\"261614\";\"Kalamaki\";\"ascii\"\n\"261614\";\"Kalamakion\";\"other\"\n\"261614\";\"Kalamákion\";\"other\"\n\"261614\";\"Καλαμάκιον\";\"other\"\n\"261678\";\"Kaisarianí\";\"main\"\n\"261678\";\"Kaisariani\";\"ascii\"\n\"261678\";\"Kaisariane\";\"other\"\n\"261678\";\"Kesariani\";\"other\"\n\"261678\";\"Καισαριανή\";\"other\"\n\"261678\";\"Кесариани\";\"other\"\n\"261680\";\"Kainoúryion\";\"main\"\n\"261680\";\"Kainouryion\";\"ascii\"\n\"261681\";\"Kainoúryion\";\"main\"\n\"261681\";\"Kainouryion\";\"ascii\"\n\"261681\";\"Kainourgion\";\"other\"\n\"261681\";\"Kainourion\";\"other\"\n\"261681\";\"Kainoúrion\";\"other\"\n\"261681\";\"Καινούργιον\";\"other\"\n\"261708\";\"Itháki\";\"main\"\n\"261708\";\"Ithaki\";\"ascii\"\n\"261708\";\"Ithaca\";\"other\"\n\"261708\";\"Ithake\";\"other\"\n\"261708\";\"Vathi\";\"other\"\n\"261708\";\"Vathí\";\"other\"\n\"261708\";\"Ιθάκη\";\"other\"\n\"261714\";\"Itéa\";\"main\"\n\"261714\";\"Itea\";\"ascii\"\n\"261714\";\"Katseri\";\"other\"\n\"261714\";\"Katserí\";\"other\"\n\"261714\";\"Kotseri\";\"other\"\n\"261714\";\"Kotserion\";\"other\"\n\"261714\";\"Kotserí\";\"other\"\n\"261714\";\"Kotseríon\";\"other\"\n\"261715\";\"Itéa\";\"main\"\n\"261715\";\"Itea\";\"ascii\"\n\"261715\";\"Ιτέα\";\"other\"\n\"261720\";\"Istiaía\";\"main\"\n\"261720\";\"Istiaia\";\"ascii\"\n\"261720\";\"Xirokhori\";\"other\"\n\"261720\";\"Xirokhorion\";\"other\"\n\"261720\";\"Xirokhóri\";\"other\"\n\"261720\";\"Xirokhórion\";\"other\"\n\"261720\";\"Ιστιαία\";\"other\"\n\"261721\";\"Isthmía\";\"main\"\n\"261721\";\"Isthmia\";\"ascii\"\n\"261721\";\"Isthmos\";\"other\"\n\"261721\";\"Isthmós\";\"other\"\n\"261721\";\"Ισθμία\";\"other\"\n\"261743\";\"Iráklion\";\"main\"\n\"261743\";\"Iraklion\";\"ascii\"\n\"261745\";\"Irákleion\";\"main\"\n\"261745\";\"Irakleion\";\"ascii\"\n\"261745\";\"Candia\";\"other\"\n\"261745\";\"Candie\";\"other\"\n\"261745\";\"Candía\";\"other\"\n\"261745\";\"Càndia\";\"other\"\n\"261745\";\"Erakleio\";\"other\"\n\"261745\";\"Erakleion\";\"other\"\n\"261745\";\"Heracleum\";\"other\"\n\"261745\";\"Heracliao\";\"other\"\n\"261745\";\"Heraclião\";\"other\"\n\"261745\";\"Herakleion\";\"other\"\n\"261745\";\"Heraklion\";\"other\"\n\"261745\";\"Herákleion\";\"other\"\n\"261745\";\"Héraklion\";\"other\"\n\"261745\";\"Iraclion\";\"other\"\n\"261745\";\"Irakleio\";\"other\"\n\"261745\";\"Iraklija\";\"other\"\n\"261745\";\"Iraklio\";\"other\"\n\"261745\";\"Iraklion\";\"other\"\n\"261745\";\"Irákleio\";\"other\"\n\"261745\";\"Iráklio\";\"other\"\n\"261745\";\"Iráklion\";\"other\"\n\"261745\";\"Kandiye\";\"other\"\n\"261745\";\"Khandax\";\"other\"\n\"261745\";\"Megalokastro\";\"other\"\n\"261745\";\"Megalokastron\";\"other\"\n\"261745\";\"hrqlywn\";\"other\"\n\"261745\";\"irakurion\";\"other\"\n\"261745\";\"yi la ke li weng\";\"other\"\n\"261745\";\"Ērakleion\";\"other\"\n\"261745\";\"Ηράκλειο\";\"other\"\n\"261745\";\"Ираклион\";\"other\"\n\"261745\";\"הרקליון\";\"other\"\n\"261745\";\"イラクリオン\";\"other\"\n\"261745\";\"伊拉克利翁\";\"other\"\n\"261772\";\"Íos\";\"main\"\n\"261772\";\"Ios\";\"ascii\"\n\"261772\";\"Nio\";\"other\"\n\"261779\";\"Ioánnina\";\"main\"\n\"261779\";\"Ioannina\";\"ascii\"\n\"261779\";\"Giannina\";\"other\"\n\"261779\";\"Ioaa\";\"other\"\n\"261779\";\"Ioanina\";\"other\"\n\"261779\";\"Ioäa\";\"other\"\n\"261779\";\"Janina\";\"other\"\n\"261779\";\"Yanina\";\"other\"\n\"261779\";\"Yannina\";\"other\"\n\"261779\";\"Yanya\";\"other\"\n\"261779\";\"yue a ni na\";\"other\"\n\"261779\";\"Ιωάννινα\";\"other\"\n\"261779\";\"Янина\";\"other\"\n\"261779\";\"约阿尼纳\";\"other\"\n\"261807\";\"Igoumenítsa\";\"main\"\n\"261807\";\"Igoumenitsa\";\"ascii\"\n\"261807\";\"Egoumenitsa\";\"other\"\n\"261807\";\"Igoemenitsa\";\"other\"\n\"261807\";\"Igumenica\";\"other\"\n\"261807\";\"Ηγουμενίτσα\";\"other\"\n\"261807\";\"Игуменица\";\"other\"\n\"261814\";\"Ierápetra\";\"main\"\n\"261814\";\"Ierapetra\";\"ascii\"\n\"261814\";\"Hierapetra\";\"other\"\n\"261814\";\"Ierapitna\";\"other\"\n\"261814\";\"Kasteli\";\"other\"\n\"261814\";\"Yerapetra\";\"other\"\n\"261814\";\"Yirapetra\";\"other\"\n\"261814\";\"Yirápetra\";\"other\"\n\"261814\";\"Ιεράπετρα\";\"other\"\n\"261814\";\"Иерапетра\";\"other\"\n\"261816\";\"Ydroússa\";\"main\"\n\"261816\";\"Ydroussa\";\"ascii\"\n\"261816\";\"Fournoi\";\"other\"\n\"261816\";\"Foúrnoi\";\"other\"\n\"261816\";\"Idhroussna\";\"other\"\n\"261816\";\"Idhroússna\";\"other\"\n\"261816\";\"Phurnui\";\"other\"\n\"261822\";\"Ýdra\";\"main\"\n\"261822\";\"Ydra\";\"ascii\"\n\"261822\";\"Hydra\";\"other\"\n\"261822\";\"Idhra\";\"other\"\n\"261822\";\"Ídhra\";\"other\"\n\"261822\";\"Ύδρα\";\"other\"\n\"261842\";\"Grízanon\";\"main\"\n\"261842\";\"Grizanon\";\"ascii\"\n\"261842\";\"Gritzanon\";\"other\"\n\"261842\";\"Grítzanon\";\"other\"\n\"261895\";\"Grammenítsa\";\"main\"\n\"261895\";\"Grammenitsa\";\"ascii\"\n\"261895\";\"Gramenitsa\";\"other\"\n\"261895\";\"Gramenítsa\";\"other\"\n\"261895\";\"Γραμμενίτσα\";\"other\"\n\"261900\";\"Grammatikoú\";\"main\"\n\"261900\";\"Grammatikou\";\"ascii\"\n\"261900\";\"Grammatikon\";\"other\"\n\"261900\";\"Grammatikón\";\"other\"\n\"261900\";\"Γραμματικού\";\"other\"\n\"261903\";\"Grammatikón\";\"main\"\n\"261903\";\"Grammatikon\";\"ascii\"\n\"261903\";\"Γραμματικόν\";\"other\"\n\"261910\";\"Gra Liyiá\";\"main\"\n\"261910\";\"Gra Liyia\";\"ascii\"\n\"261910\";\"Gra Lygia\";\"other\"\n\"261910\";\"Metokhi Gra Liyia\";\"other\"\n\"261910\";\"Metókhi Grá Liyiá\";\"other\"\n\"261910\";\"Γρα Λυγιά\";\"other\"\n\"261913\";\"Graikochórion\";\"main\"\n\"261913\";\"Graikochorion\";\"ascii\"\n\"261913\";\"Graikochori\";\"other\"\n\"261913\";\"Graikochóri\";\"other\"\n\"261913\";\"Graikokhorion\";\"other\"\n\"261913\";\"Graikokhórion\";\"other\"\n\"261913\";\"Grekokhori\";\"other\"\n\"261913\";\"Grekokhóri\";\"other\"\n\"261913\";\"Γραικοχώριον\";\"other\"\n\"261921\";\"Goúvai\";\"main\"\n\"261921\";\"Gouvai\";\"ascii\"\n\"261921\";\"Gouvais\";\"other\"\n\"261921\";\"Gouves\";\"other\"\n\"261921\";\"Goúvais\";\"other\"\n\"261921\";\"Goúves\";\"other\"\n\"261921\";\"Guves\";\"other\"\n\"261921\";\"Гувес\";\"other\"\n\"261935\";\"Goúrnai\";\"main\"\n\"261935\";\"Gournai\";\"ascii\"\n\"261935\";\"Gournais\";\"other\"\n\"261935\";\"Gournes\";\"other\"\n\"261935\";\"Gouvai\";\"other\"\n\"261935\";\"Gouves\";\"other\"\n\"261935\";\"Goúrnais\";\"other\"\n\"261935\";\"Goúrnes\";\"other\"\n\"261935\";\"Goúvai\";\"other\"\n\"261935\";\"Γούβες\";\"other\"\n\"261941\";\"Gouriá\";\"main\"\n\"261941\";\"Gouria\";\"ascii\"\n\"261941\";\"Gouryia\";\"other\"\n\"261941\";\"Gouryiá\";\"other\"\n\"261941\";\"Γουριά\";\"other\"\n\"261956\";\"Goúmeron\";\"main\"\n\"261956\";\"Goumeron\";\"ascii\"\n\"261956\";\"Γούμερον\";\"other\"\n\"261996\";\"Gónnoi\";\"main\"\n\"261996\";\"Gonnoi\";\"ascii\"\n\"261996\";\"Dereli\";\"other\"\n\"261996\";\"Derelí\";\"other\"\n\"261996\";\"Dhereli\";\"other\"\n\"261996\";\"Dherelí\";\"other\"\n\"261996\";\"Gonnos\";\"other\"\n\"261996\";\"Gónnos\";\"other\"\n\"261996\";\"Γόννοι\";\"other\"\n\"262007\";\"Gómfoi\";\"main\"\n\"262007\";\"Gomfoi\";\"ascii\"\n\"262007\";\"Gomphoi\";\"other\"\n\"262007\";\"Rapsista\";\"other\"\n\"262007\";\"Rápsista\";\"other\"\n\"262007\";\"Γόμφοι\";\"other\"\n\"262067\";\"Gázion\";\"main\"\n\"262067\";\"Gazion\";\"ascii\"\n\"262067\";\"Gazi\";\"other\"\n\"262067\";\"Gázi\";\"other\"\n\"262067\";\"Γάζιον\";\"other\"\n\"262091\";\"Gavaloú\";\"main\"\n\"262091\";\"Gavalou\";\"ascii\"\n\"262091\";\"Gabalou\";\"other\"\n\"262091\";\"Gavalu\";\"other\"\n\"262091\";\"Γαβαλού\";\"other\"\n\"262098\";\"Gastoúni\";\"main\"\n\"262098\";\"Gastouni\";\"ascii\"\n\"262098\";\"Gastoune\";\"other\"\n\"262098\";\"Gastuni\";\"other\"\n\"262098\";\"Γαστούνη\";\"other\"\n\"262104\";\"Gargaliánoi\";\"main\"\n\"262104\";\"Gargalianoi\";\"ascii\"\n\"262104\";\"Gargaliani\";\"other\"\n\"262104\";\"Γαργαλιάνοι\";\"other\"\n\"262135\";\"Galátsion\";\"main\"\n\"262135\";\"Galatsion\";\"ascii\"\n\"262135\";\"Galatsi\";\"other\"\n\"262135\";\"Galátsi\";\"other\"\n\"262135\";\"Γαλάτσιον\";\"other\"\n\"262140\";\"Galatás\";\"main\"\n\"262140\";\"Galatas\";\"ascii\"\n\"262143\";\"Galatás\";\"main\"\n\"262143\";\"Galatas\";\"ascii\"\n\"262143\";\"Γαλατάς\";\"other\"\n\"262144\";\"Galatás\";\"main\"\n\"262144\";\"Galatas\";\"ascii\"\n\"262159\";\"Gaïtánion\";\"main\"\n\"262159\";\"Gaitanion\";\"ascii\"\n\"262159\";\"Gaitani\";\"other\"\n\"262159\";\"Gaïtáni\";\"other\"\n\"262383\";\"Fitíai\";\"main\"\n\"262383\";\"Fitiai\";\"ascii\"\n\"262383\";\"Mahalas\";\"other\"\n\"262383\";\"Mahalás\";\"other\"\n\"262383\";\"Makhala\";\"other\"\n\"262383\";\"Makhalas\";\"other\"\n\"262383\";\"Makhalás\";\"other\"\n\"262383\";\"Phyteiai\";\"other\"\n\"262383\";\"Φυτείαι\";\"other\"\n\"262397\";\"Filótion\";\"main\"\n\"262397\";\"Filotion\";\"ascii\"\n\"262397\";\"Filoti\";\"other\"\n\"262397\";\"Filóti\";\"other\"\n\"262397\";\"Philotion\";\"other\"\n\"262397\";\"Philotium\";\"other\"\n\"262397\";\"Φιλότιον\";\"other\"\n\"262402\";\"Fílla\";\"main\"\n\"262402\";\"Filla\";\"ascii\"\n\"262402\";\"Phylla\";\"other\"\n\"262402\";\"Φύλλα\";\"other\"\n\"262411\";\"Filippiás\";\"main\"\n\"262411\";\"Filippias\";\"ascii\"\n\"262411\";\"Filippiada\";\"other\"\n\"262411\";\"Filippiáda\";\"other\"\n\"262411\";\"Nea Filippias\";\"other\"\n\"262411\";\"Néa Filippiás\";\"other\"\n\"262411\";\"Philippiada\";\"other\"\n\"262411\";\"Philippias\";\"other\"\n\"262411\";\"Philippiáda\";\"other\"\n\"262411\";\"Φιλιππιάς\";\"other\"\n\"262418\";\"Filiatrá\";\"main\"\n\"262418\";\"Filiatra\";\"ascii\"\n\"262418\";\"Philiatra\";\"other\"\n\"262418\";\"Φιλιατρά\";\"other\"\n\"262420\";\"Filiátai\";\"main\"\n\"262420\";\"Filiatai\";\"ascii\"\n\"262420\";\"Filiates\";\"other\"\n\"262420\";\"Filiátes\";\"other\"\n\"262420\";\"Philiates\";\"other\"\n\"262420\";\"Φιλιάτες\";\"other\"\n\"262426\";\"Filí\";\"main\"\n\"262426\";\"Fili\";\"ascii\"\n\"262426\";\"Khasia\";\"other\"\n\"262426\";\"Khasiá\";\"other\"\n\"262426\";\"Phyle\";\"other\"\n\"262426\";\"Φυλή\";\"other\"\n\"262433\";\"Fíki\";\"main\"\n\"262433\";\"Fiki\";\"ascii\"\n\"262433\";\"Fyki\";\"other\"\n\"262433\";\"Fýki\";\"other\"\n\"262433\";\"Pheke\";\"other\"\n\"262433\";\"Φήκη\";\"other\"\n\"262462\";\"Fársala\";\"main\"\n\"262462\";\"Farsala\";\"ascii\"\n\"262462\";\"Farsalia\";\"other\"\n\"262462\";\"Farsalos\";\"other\"\n\"262462\";\"Farsàlia\";\"other\"\n\"262462\";\"Fársalos\";\"other\"\n\"262462\";\"Pharsala\";\"other\"\n\"262462\";\"Pharsale\";\"other\"\n\"262462\";\"Pharsalus\";\"other\"\n\"262462\";\"Φάρσαλα\";\"other\"\n\"262465\";\"Fáros\";\"main\"\n\"262465\";\"Faros\";\"ascii\"\n\"262465\";\"Pharos\";\"other\"\n\"262465\";\"Yerali\";\"other\"\n\"262465\";\"Yeralion\";\"other\"\n\"262465\";\"Yeralí\";\"other\"\n\"262465\";\"Yeralíon\";\"other\"\n\"262465\";\"Φάρος\";\"other\"\n\"262503\";\"Magoúla\";\"main\"\n\"262503\";\"Magoula\";\"ascii\"\n\"262503\";\"Fanar Magoula\";\"other\"\n\"262503\";\"Fanarion\";\"other\"\n\"262503\";\"Fanarion Magoulas\";\"other\"\n\"262503\";\"Fanár Magoúla\";\"other\"\n\"262503\";\"Fanárion\";\"other\"\n\"262503\";\"Fanárion Magoúlas\";\"other\"\n\"262503\";\"Magoulas\";\"other\"\n\"262503\";\"Magoúlas\";\"other\"\n\"262525\";\"Fálanna\";\"main\"\n\"262525\";\"Falanna\";\"ascii\"\n\"262525\";\"Falaina\";\"other\"\n\"262525\";\"Fálaina\";\"other\"\n\"262525\";\"Phalanna\";\"other\"\n\"262525\";\"Tatar\";\"other\"\n\"262525\";\"Tatár\";\"other\"\n\"262525\";\"Φάλαννα\";\"other\"\n\"262558\";\"Examília\";\"main\"\n\"262558\";\"Examilia\";\"ascii\"\n\"262558\";\"Examilion\";\"other\"\n\"262558\";\"Examillia\";\"other\"\n\"262558\";\"Examílion\";\"other\"\n\"262558\";\"Examíllia\";\"other\"\n\"262558\";\"Εξαμίλια\";\"other\"\n\"262603\";\"Ermoúpolis\";\"main\"\n\"262603\";\"Ermoupolis\";\"ascii\"\n\"262603\";\"Ermoupoli\";\"other\"\n\"262603\";\"Ermoúpoli\";\"other\"\n\"262603\";\"Hermoupolis\";\"other\"\n\"262603\";\"Hermoúpolis\";\"other\"\n\"262603\";\"Hermupolis\";\"other\"\n\"262603\";\"Siros\";\"other\"\n\"262603\";\"Síros\";\"other\"\n\"262603\";\"Ερμούπολις\";\"other\"\n\"262607\";\"Ermióni\";\"main\"\n\"262607\";\"Ermioni\";\"ascii\"\n\"262607\";\"Hermioni\";\"other\"\n\"262607\";\"Kastri\";\"other\"\n\"262607\";\"Kastrí\";\"other\"\n\"262607\";\"Ερμιόνη\";\"other\"\n\"262609\";\"Erithraí\";\"main\"\n\"262609\";\"Erithrai\";\"ascii\"\n\"262609\";\"Eleutherae\";\"other\"\n\"262609\";\"Erythrai\";\"other\"\n\"262609\";\"Kriekouki\";\"other\"\n\"262609\";\"Kriekoúki\";\"other\"\n\"262609\";\"Ερυθραί\";\"other\"\n\"262628\";\"Erétria\";\"main\"\n\"262628\";\"Eretria\";\"ascii\"\n\"262628\";\"Ehretrija\";\"other\"\n\"262628\";\"Eretrie\";\"other\"\n\"262628\";\"Nea Psara\";\"other\"\n\"262628\";\"Néa Psará\";\"other\"\n\"262628\";\"Érétrie\";\"other\"\n\"262628\";\"Ερέτρια\";\"other\"\n\"262628\";\"Эретрия\";\"other\"\n\"262629\";\"Eresós\";\"main\"\n\"262629\";\"Eresos\";\"ascii\"\n\"262629\";\"Eressos\";\"other\"\n\"262629\";\"Eressós\";\"other\"\n\"262629\";\"Erissos\";\"other\"\n\"262629\";\"Ερεσός\";\"other\"\n\"262636\";\"Epitálion\";\"main\"\n\"262636\";\"Epitalion\";\"ascii\"\n\"262636\";\"Agoulinitsa\";\"other\"\n\"262636\";\"Agoulinítsa\";\"other\"\n\"262636\";\"Agulinitza\";\"other\"\n\"262636\";\"Επιτάλιον\";\"other\"\n\"262683\";\"Epáno Arkhánai\";\"main\"\n\"262683\";\"Epano Arkhanai\";\"ascii\"\n\"262683\";\"Ano Arkhanai\";\"other\"\n\"262683\";\"Ano Arkhanes\";\"other\"\n\"262683\";\"Ano Arkhánai\";\"other\"\n\"262683\";\"Epano Archanai\";\"other\"\n\"262683\";\"Áno Arkhánes\";\"other\"\n\"262683\";\"Επάνω Αρχάναι\";\"other\"\n\"262696\";\"Emporeío\";\"main\"\n\"262696\";\"Emporeio\";\"ascii\"\n\"262696\";\"Emborion\";\"other\"\n\"262696\";\"Emboríon\";\"other\"\n\"262696\";\"Emporeion\";\"other\"\n\"262696\";\"Emporeíon\";\"other\"\n\"262696\";\"Εμπορείο\";\"other\"\n\"262696\";\"Εμπορείον\";\"other\"\n\"262698\";\"Émbonas\";\"main\"\n\"262698\";\"Embonas\";\"ascii\"\n\"262698\";\"Ambonus\";\"other\"\n\"262698\";\"Embona\";\"other\"\n\"262698\";\"Emponas\";\"other\"\n\"262698\";\"Émbona\";\"other\"\n\"262698\";\"Έμπωνας\";\"other\"\n\"262719\";\"Ellinikón\";\"main\"\n\"262719\";\"Ellinikon\";\"ascii\"\n\"262719\";\"Ellenikon\";\"other\"\n\"262719\";\"Elliniko\";\"other\"\n\"262719\";\"Ellinikó\";\"other\"\n\"262719\";\"Ελληνικόν\";\"other\"\n\"262752\";\"Elefsína\";\"main\"\n\"262752\";\"Elefsina\";\"ascii\"\n\"262752\";\"Elefis\";\"other\"\n\"262752\";\"Elefsis\";\"other\"\n\"262752\";\"Elefsís\";\"other\"\n\"262752\";\"Eleusis\";\"other\"\n\"262752\";\"Elevsis\";\"other\"\n\"262752\";\"Elevsís\";\"other\"\n\"262752\";\"Lepsina\";\"other\"\n\"262752\";\"Ελευσίς\";\"other\"\n\"262757\";\"Eleoúsa\";\"main\"\n\"262757\";\"Eleousa\";\"ascii\"\n\"262757\";\"Mega Bisdhouni\";\"other\"\n\"262757\";\"Mega Bisdhounion\";\"other\"\n\"262757\";\"Mega Bisdhoúni\";\"other\"\n\"262757\";\"Mega Bisdouni\";\"other\"\n\"262757\";\"Méga Bisdhoúnion\";\"other\"\n\"262757\";\"Méga Bisdoúni\";\"other\"\n\"262757\";\"Ελεούσα\";\"other\"\n\"262776\";\"Elátia\";\"main\"\n\"262776\";\"Elatia\";\"ascii\"\n\"262776\";\"Dhrakhmani\";\"other\"\n\"262776\";\"Dhrakhmáni\";\"other\"\n\"262776\";\"Elateia\";\"other\"\n\"262776\";\"Ελάτεια\";\"other\"\n\"262784\";\"Elassón\";\"main\"\n\"262784\";\"Elasson\";\"ascii\"\n\"262784\";\"Elassona\";\"other\"\n\"262784\";\"Elassóna\";\"other\"\n\"262784\";\"Ελασσών\";\"other\"\n\"262833\";\"Ekáli\";\"main\"\n\"262833\";\"Ekali\";\"ascii\"\n\"262833\";\"Ekale\";\"other\"\n\"262833\";\"Εκάλη\";\"other\"\n\"262920\";\"Drépanon\";\"main\"\n\"262920\";\"Drepanon\";\"ascii\"\n\"262920\";\"Dhrepanon\";\"other\"\n\"262920\";\"Dhrépanon\";\"other\"\n\"262920\";\"Khaidari\";\"other\"\n\"262920\";\"Khaidharion\";\"other\"\n\"262920\";\"Khaïdhárion\";\"other\"\n\"262920\";\"Δρέπανον\";\"other\"\n\"263000\";\"Domokós\";\"main\"\n\"263000\";\"Domokos\";\"ascii\"\n\"263000\";\"Dhomokos\";\"other\"\n\"263000\";\"Dhomokós\";\"other\"\n\"263000\";\"Δομοκός\";\"other\"\n\"263166\";\"Deskáti\";\"main\"\n\"263166\";\"Deskati\";\"ascii\"\n\"263166\";\"Deskate\";\"other\"\n\"263166\";\"Dheskati\";\"other\"\n\"263166\";\"Dheskáti\";\"other\"\n\"263166\";\"Dhiskata\";\"other\"\n\"263166\";\"Dhiskáta\";\"other\"\n\"263166\";\"Diskata\";\"other\"\n\"263166\";\"Δεσκάτη\";\"other\"\n\"263178\";\"Dhervénion\";\"main\"\n\"263178\";\"Dhervenion\";\"ascii\"\n\"263178\";\"Aktaion\";\"other\"\n\"263178\";\"Aktaíon\";\"other\"\n\"263178\";\"Derbeni\";\"other\"\n\"263178\";\"Derveni\";\"other\"\n\"263178\";\"Dervéni\";\"other\"\n\"263178\";\"Δερβένι\";\"other\"\n\"263219\";\"Dhelfoí\";\"main\"\n\"263219\";\"Dhelfoi\";\"ascii\"\n\"263219\";\"Del'fi\";\"other\"\n\"263219\";\"Del'fy\";\"other\"\n\"263219\";\"Delfi\";\"other\"\n\"263219\";\"Delfoi\";\"other\"\n\"263219\";\"Delfos\";\"other\"\n\"263219\";\"Delfy\";\"other\"\n\"263219\";\"Delphes\";\"other\"\n\"263219\";\"Delphi\";\"other\"\n\"263219\";\"Delphoi\";\"other\"\n\"263219\";\"de er fei\";\"other\"\n\"263219\";\"derupoi\";\"other\"\n\"263219\";\"dlfy\";\"other\"\n\"263219\";\"dlpy\";\"other\"\n\"263219\";\"Δελφοί\";\"other\"\n\"263219\";\"Делфи\";\"other\"\n\"263219\";\"Дельфи\";\"other\"\n\"263219\";\"Дельфы\";\"other\"\n\"263219\";\"דלפי\";\"other\"\n\"263219\";\"דעלפי\";\"other\"\n\"263219\";\"دلفی\";\"other\"\n\"263219\";\"デルポイ\";\"other\"\n\"263219\";\"德尔斐\";\"other\"\n\"263219\";\"德尔菲\";\"other\"\n\"263257\";\"Dharátsos\";\"main\"\n\"263257\";\"Dharatsos\";\"ascii\"\n\"263257\";\"Daratsos\";\"other\"\n\"263257\";\"Darátsos\";\"other\"\n\"263257\";\"Karatsos\";\"other\"\n\"263257\";\"Karátsos\";\"other\"\n\"263257\";\"Δαράτσος\";\"other\"\n\"263646\";\"Áyios Yeóryios\";\"main\"\n\"263646\";\"Ayios Yeoryios\";\"ascii\"\n\"263698\";\"Áyios Vasílios\";\"main\"\n\"263698\";\"Ayios Vasilios\";\"ascii\"\n\"263714\";\"Áyios Thomás\";\"main\"\n\"263714\";\"Ayios Thomas\";\"ascii\"\n\"263714\";\"Agios Thomas\";\"other\"\n\"263714\";\"Liatani\";\"other\"\n\"263714\";\"Liátani\";\"other\"\n\"263714\";\"Άγιος Θωμάς\";\"other\"\n\"263725\";\"Áyios Stéfanos\";\"main\"\n\"263725\";\"Ayios Stefanos\";\"ascii\"\n\"263725\";\"Agios Stephanos\";\"other\"\n\"263725\";\"Άγιος Στέφανος\";\"other\"\n\"263730\";\"Ágios Spyrídon\";\"main\"\n\"263730\";\"Agios Spyridon\";\"ascii\"\n\"263730\";\"Ayios Spiridhon\";\"other\"\n\"263730\";\"Imam Chaus\";\"other\"\n\"263730\";\"Imam-Tsaous\";\"other\"\n\"263730\";\"Imám Chaüs\";\"other\"\n\"263730\";\"Imám-Tsaoús\";\"other\"\n\"263730\";\"Áyios Spirídhon\";\"other\"\n\"263751\";\"Áyios Serafím\";\"main\"\n\"263751\";\"Ayios Serafim\";\"ascii\"\n\"263751\";\"Agios Serapheim\";\"other\"\n\"263751\";\"Dervisadhes\";\"other\"\n\"263751\";\"Dervisádhes\";\"other\"\n\"263751\";\"Dhervisadhes\";\"other\"\n\"263751\";\"Dhervisádhes\";\"other\"\n\"263751\";\"Άγιος Σεραφείμ\";\"other\"\n\"263805\";\"Áyios Nikólaos\";\"main\"\n\"263805\";\"Ayios Nikolaos\";\"ascii\"\n\"263809\";\"Áyios Nikólaos\";\"main\"\n\"263809\";\"Ayios Nikolaos\";\"ascii\"\n\"263824\";\"Ágios Nikólaos\";\"main\"\n\"263824\";\"Agios Nikolaos\";\"ascii\"\n\"263824\";\"Aghios Nicolaos\";\"other\"\n\"263824\";\"Aghios Nikolaos\";\"other\"\n\"263824\";\"Agios Nikolaos Lasithiou\";\"other\"\n\"263824\";\"Agios-Nikolaos\";\"other\"\n\"263824\";\"Ayios Nikolaos\";\"other\"\n\"263824\";\"Lato-Kamara\";\"other\"\n\"263824\";\"Áyios Nikólaos\";\"other\"\n\"263824\";\"Άγιος Νικόλαος\";\"other\"\n\"263824\";\"Άγιος Νικόλαος Λασιθίου\";\"other\"\n\"263824\";\"Агиос-Николаос\";\"other\"\n\"263870\";\"Ágios Kírykos\";\"main\"\n\"263870\";\"Agios Kirykos\";\"ascii\"\n\"263870\";\"Angeriko\";\"other\"\n\"263870\";\"Ayios Kirikos\";\"other\"\n\"263870\";\"Kirikos\";\"other\"\n\"263870\";\"Kírikos\";\"other\"\n\"263870\";\"Áyios Kírikos\";\"other\"\n\"263978\";\"Ágios Dimítrios\";\"main\"\n\"263978\";\"Agios Dimitrios\";\"ascii\"\n\"263978\";\"Ayios Dhimitrios\";\"other\"\n\"263978\";\"Áyios Dhimítrios\";\"other\"\n\"264022\";\"Ágios Andréas\";\"main\"\n\"264022\";\"Agios Andreas\";\"ascii\"\n\"264022\";\"Anthini\";\"other\"\n\"264022\";\"Ayios Andhreas\";\"other\"\n\"264022\";\"Ayios Andreas\";\"other\"\n\"264022\";\"Áyios Andhréas\";\"other\"\n\"264022\";\"Áyios Andréas\";\"other\"\n\"264022\";\"Άγιος Ανδρέας\";\"other\"\n\"264022\";\"Ανθηνη\";\"other\"\n\"264111\";\"Ayía Varvára\";\"main\"\n\"264111\";\"Ayia Varvara\";\"ascii\"\n\"264111\";\"Agia Barbara\";\"other\"\n\"264111\";\"Αγία Βαρβάρα\";\"other\"\n\"264114\";\"Ayía Varvára\";\"main\"\n\"264114\";\"Ayia Varvara\";\"ascii\"\n\"264128\";\"Ayía Triás\";\"main\"\n\"264128\";\"Ayia Trias\";\"ascii\"\n\"264128\";\"Agia Trias\";\"other\"\n\"264128\";\"Ayia Stevenikon\";\"other\"\n\"264128\";\"Ayía Steveníkon\";\"other\"\n\"264128\";\"Stevenikon\";\"other\"\n\"264128\";\"Steveníkon\";\"other\"\n\"264128\";\"Αγία Τριάς\";\"other\"\n\"264146\";\"Agiásos\";\"main\"\n\"264146\";\"Agiasos\";\"ascii\"\n\"264146\";\"Ayiasissios\";\"other\"\n\"264146\";\"Ayiasos\";\"other\"\n\"264146\";\"Ayiassios\";\"other\"\n\"264146\";\"Ayiassos\";\"other\"\n\"264146\";\"Ayiásissios\";\"other\"\n\"264146\";\"Ayiásos\";\"other\"\n\"264146\";\"Ayiássios\";\"other\"\n\"264146\";\"Ayiássos\";\"other\"\n\"264146\";\"Αγιάσος\";\"other\"\n\"264181\";\"Agía Paraskeví\";\"main\"\n\"264181\";\"Agia Paraskevi\";\"ascii\"\n\"264181\";\"Ayia Paraskevi\";\"other\"\n\"264181\";\"Ayía Paraskeví\";\"other\"\n\"264194\";\"Ayía Paraskeví\";\"main\"\n\"264194\";\"Ayia Paraskevi\";\"ascii\"\n\"264194\";\"Agia Paraskeue\";\"other\"\n\"264194\";\"Αγία Παρασκευή\";\"other\"\n\"264220\";\"Ayía Marína\";\"main\"\n\"264220\";\"Ayia Marina\";\"ascii\"\n\"264221\";\"Agía Marína\";\"main\"\n\"264221\";\"Agia Marina\";\"ascii\"\n\"264221\";\"Ayia Marina\";\"other\"\n\"264221\";\"Ayía Marína\";\"other\"\n\"264221\";\"Lero\";\"other\"\n\"264223\";\"Ayía Marína\";\"main\"\n\"264223\";\"Ayia Marina\";\"ascii\"\n\"264223\";\"Agia Marina\";\"other\"\n\"264223\";\"Αγία Μαρίνα\";\"other\"\n\"264260\";\"Ayía Galíni\";\"main\"\n\"264260\";\"Ayia Galini\";\"ascii\"\n\"264260\";\"Agia Galene\";\"other\"\n\"264260\";\"Αγία Γαλήνη\";\"other\"\n\"264283\";\"Agiá\";\"main\"\n\"264283\";\"Agia\";\"ascii\"\n\"264283\";\"Agyia\";\"other\"\n\"264283\";\"Ayia\";\"other\"\n\"264283\";\"Ayiá\";\"other\"\n\"264283\";\"Αγιά\";\"other\"\n\"264359\";\"Atsipópoulon\";\"main\"\n\"264359\";\"Atsipopoulon\";\"ascii\"\n\"264359\";\"Atsotopoulon\";\"other\"\n\"264359\";\"Atsotópoulon\";\"other\"\n\"264359\";\"Ατσιπόπουλον\";\"other\"\n\"264371\";\"Athens\";\"main\"\n\"264371\";\"Afina\";\"other\"\n\"264371\";\"Afini\";\"other\"\n\"264371\";\"Afiny\";\"other\"\n\"264371\";\"An Aithin\";\"other\"\n\"264371\";\"Ateena\";\"other\"\n\"264371\";\"Atehny\";\"other\"\n\"264371\";\"Aten\";\"other\"\n\"264371\";\"Atena\";\"other\"\n\"264371\";\"Atenai\";\"other\"\n\"264371\";\"Atenas\";\"other\"\n\"264371\";\"Atenas - Athena\";\"other\"\n\"264371\";\"Atenas - Αθήνα\";\"other\"\n\"264371\";\"Atene\";\"other\"\n\"264371\";\"Atenes\";\"other\"\n\"264371\";\"Ateni\";\"other\"\n\"264371\";\"Ateno\";\"other\"\n\"264371\";\"Atenoj\";\"other\"\n\"264371\";\"Ateny\";\"other\"\n\"264371\";\"Athen\";\"other\"\n\"264371\";\"Athena\";\"other\"\n\"264371\";\"Athenae\";\"other\"\n\"264371\";\"Athenai\";\"other\"\n\"264371\";\"Athene\";\"other\"\n\"264371\";\"Athenes\";\"other\"\n\"264371\";\"Atheny\";\"other\"\n\"264371\";\"Athina\";\"other\"\n\"264371\";\"Athinai\";\"other\"\n\"264371\";\"Athinia\";\"other\"\n\"264371\";\"Athènes\";\"other\"\n\"264371\";\"Athén\";\"other\"\n\"264371\";\"Athénes\";\"other\"\n\"264371\";\"Athény\";\"other\"\n\"264371\";\"Athína\";\"other\"\n\"264371\";\"Athínai\";\"other\"\n\"264371\";\"Atina\";\"other\"\n\"264371\";\"Atény\";\"other\"\n\"264371\";\"Atēnas\";\"other\"\n\"264371\";\"Atėnai\";\"other\"\n\"264371\";\"Aþena\";\"other\"\n\"264371\";\"Kota Athena\";\"other\"\n\"264371\";\"Lungsod ng Athina\";\"other\"\n\"264371\";\"Lungsod ng Athína\";\"other\"\n\"264371\";\"atene\";\"other\"\n\"264371\";\"atene si\";\"other\"\n\"264371\";\"ateni\";\"other\"\n\"264371\";\"athensa\";\"other\"\n\"264371\";\"athyna\";\"other\"\n\"264371\";\"atn\";\"other\"\n\"264371\";\"etens\";\"other\"\n\"264371\";\"xethens\";\"other\"\n\"264371\";\"ya dian\";\"other\"\n\"264371\";\"Αθήνα\";\"other\"\n\"264371\";\"Αθήναι\";\"other\"\n\"264371\";\"Αθηνα\";\"other\"\n\"264371\";\"Αθηναι\";\"other\"\n\"264371\";\"Атина\";\"other\"\n\"264371\";\"Атэны\";\"other\"\n\"264371\";\"Афины\";\"other\"\n\"264371\";\"Афіни\";\"other\"\n\"264371\";\"Аѳины\";\"other\"\n\"264371\";\"Աթենք\";\"other\"\n\"264371\";\"אתונה\";\"other\"\n\"264371\";\"آتن\";\"other\"\n\"264371\";\"أثينا\";\"other\"\n\"264371\";\"ئافېنا\";\"other\"\n\"264371\";\"ܐܬܝܢܐ\";\"other\"\n\"264371\";\"अथेन्स\";\"other\"\n\"264371\";\"ஏதென்ஸ்\";\"other\"\n\"264371\";\"เอเธนส์\";\"other\"\n\"264371\";\"ათენი\";\"other\"\n\"264371\";\"アテネ\";\"other\"\n\"264371\";\"雅典\";\"other\"\n\"264371\";\"아테네\";\"other\"\n\"264371\";\"아테네 시\";\"other\"\n\"264374\";\"Athíkia\";\"main\"\n\"264374\";\"Athikia\";\"ascii\"\n\"264374\";\"Αθίκια\";\"other\"\n\"264390\";\"Atalánti\";\"main\"\n\"264390\";\"Atalanti\";\"ascii\"\n\"264390\";\"Atalandi\";\"other\"\n\"264390\";\"Atalante\";\"other\"\n\"264390\";\"Atalándi\";\"other\"\n\"264390\";\"Αταλάντη\";\"other\"\n\"264396\";\"Ástros\";\"main\"\n\"264396\";\"Astros\";\"ascii\"\n\"264396\";\"Άστρος\";\"other\"\n\"264408\";\"Astypálaia\";\"main\"\n\"264408\";\"Astypalaia\";\"ascii\"\n\"264408\";\"Astipalaia\";\"other\"\n\"264408\";\"Astipálaia\";\"other\"\n\"264408\";\"Astypalaea\";\"other\"\n\"264408\";\"Castello\";\"other\"\n\"264408\";\"Kastello\";\"other\"\n\"264408\";\"Kastéllo\";\"other\"\n\"264408\";\"Αστυπάλαια\";\"other\"\n\"264416\";\"Astakós\";\"main\"\n\"264416\";\"Astakos\";\"ascii\"\n\"264416\";\"Astako\";\"other\"\n\"264416\";\"Αστακός\";\"other\"\n\"264421\";\"Ássos\";\"main\"\n\"264421\";\"Assos\";\"ascii\"\n\"264421\";\"Άσσος\";\"other\"\n\"264445\";\"Asprópirgos\";\"main\"\n\"264445\";\"Aspropirgos\";\"ascii\"\n\"264445\";\"Aspropyrgos\";\"other\"\n\"264445\";\"Kalivia\";\"other\"\n\"264445\";\"Kalivia Khasias\";\"other\"\n\"264445\";\"Kalívia\";\"other\"\n\"264445\";\"Kalívia Khasiás\";\"other\"\n\"264445\";\"Ασπρόπυργος\";\"other\"\n\"264481\";\"Asopós\";\"main\"\n\"264481\";\"Asopos\";\"ascii\"\n\"264481\";\"Kondevianika\";\"other\"\n\"264481\";\"Kondeviánika\";\"other\"\n\"264481\";\"Ασωπός\";\"other\"\n\"264482\";\"Asopía\";\"main\"\n\"264482\";\"Asopia\";\"ascii\"\n\"264482\";\"Khlembotsarion\";\"other\"\n\"264482\";\"Khlembotsárion\";\"other\"\n\"264482\";\"Khlemvotzari\";\"other\"\n\"264482\";\"Ασωπία\";\"other\"\n\"264496\";\"Asíni\";\"main\"\n\"264496\";\"Asini\";\"ascii\"\n\"264496\";\"Assini\";\"other\"\n\"264496\";\"Assíni\";\"other\"\n\"264496\";\"Ασίνη\";\"other\"\n\"264501\";\"Asímion\";\"main\"\n\"264501\";\"Asimion\";\"ascii\"\n\"264501\";\"Asemion\";\"other\"\n\"264501\";\"Asimi\";\"other\"\n\"264501\";\"Asími\";\"other\"\n\"264501\";\"Ασήμιον\";\"other\"\n\"264519\";\"Aryiropoúlion\";\"main\"\n\"264519\";\"Aryiropoulion\";\"ascii\"\n\"264519\";\"Argyropouleion\";\"other\"\n\"264519\";\"Karatsoli\";\"other\"\n\"264519\";\"Karatsóli\";\"other\"\n\"264519\";\"Αργυροπούλειον\";\"other\"\n\"264547\";\"Artesianón\";\"main\"\n\"264547\";\"Artesianon\";\"ascii\"\n\"264547\";\"Artesiano\";\"other\"\n\"264547\";\"Artesianó\";\"other\"\n\"264547\";\"Pitsari\";\"other\"\n\"264547\";\"Pitsári\";\"other\"\n\"264547\";\"Αρτεσιανόν\";\"other\"\n\"264559\";\"Árta\";\"main\"\n\"264559\";\"Arta\";\"ascii\"\n\"264559\";\"arta\";\"other\"\n\"264559\";\"Άρτα\";\"other\"\n\"264559\";\"Арта\";\"other\"\n\"264559\";\"آرتا\";\"other\"\n\"264604\";\"Árma\";\"main\"\n\"264604\";\"Arma\";\"ascii\"\n\"264604\";\"Dhritsa\";\"other\"\n\"264604\";\"Dhritsia\";\"other\"\n\"264604\";\"Dhrítsa\";\"other\"\n\"264604\";\"Eleon\";\"other\"\n\"264604\";\"Eleón\";\"other\"\n\"264604\";\"Άρμα\";\"other\"\n\"264618\";\"Archontochórion\";\"main\"\n\"264618\";\"Archontochorion\";\"ascii\"\n\"264618\";\"Archontochori\";\"other\"\n\"264618\";\"Archontochóri\";\"other\"\n\"264618\";\"Arkhondokhori\";\"other\"\n\"264618\";\"Arkhondokhorion\";\"other\"\n\"264618\";\"Arkhondokhóri\";\"other\"\n\"264618\";\"Arkhondokhórion\";\"other\"\n\"264618\";\"Zavitsa\";\"other\"\n\"264618\";\"Zavítsa\";\"other\"\n\"264637\";\"Archaía Olympía\";\"main\"\n\"264637\";\"Archaia Olympia\";\"ascii\"\n\"264637\";\"Ancient Olympia\";\"other\"\n\"264637\";\"Arkhaia Olimbia\";\"other\"\n\"264637\";\"Arkhaía Olimbía\";\"other\"\n\"264637\";\"Olimbia Arkhaia\";\"other\"\n\"264637\";\"Olimbía Arkhaía\";\"other\"\n\"264637\";\"Olimpija\";\"other\"\n\"264637\";\"Olymbia\";\"other\"\n\"264637\";\"Olymbía\";\"other\"\n\"264637\";\"Olympia\";\"other\"\n\"264637\";\"Αρχαία Ολυμπία\";\"other\"\n\"264637\";\"Ολυμπια\";\"other\"\n\"264637\";\"Олимпия\";\"other\"\n\"264638\";\"Arkhaía Kórinthos\";\"main\"\n\"264638\";\"Arkhaia Korinthos\";\"ascii\"\n\"264638\";\"Archaia Korinthos\";\"other\"\n\"264638\";\"Korinthos\";\"other\"\n\"264638\";\"Kórinthos\";\"other\"\n\"264638\";\"Old Corinth\";\"other\"\n\"264638\";\"Palaia\";\"other\"\n\"264638\";\"Palaia Korinthos\";\"other\"\n\"264638\";\"Palaiá\";\"other\"\n\"264638\";\"Palaiá Kórinthos\";\"other\"\n\"264638\";\"Αρχαία Κόρινθος\";\"other\"\n\"264642\";\"Arkalochórion\";\"main\"\n\"264642\";\"Arkalochorion\";\"ascii\"\n\"264642\";\"Arkalochori\";\"other\"\n\"264642\";\"Arkalochóri\";\"other\"\n\"264642\";\"Arkalokhori\";\"other\"\n\"264642\";\"Arkalokhorion\";\"other\"\n\"264642\";\"Arkalokhóri\";\"other\"\n\"264642\";\"Arkalokhórion\";\"other\"\n\"264642\";\"Αρκαλοχώριον\";\"other\"\n\"264650\";\"Áris\";\"main\"\n\"264650\";\"Aris\";\"ascii\"\n\"264650\";\"Aslanaga\";\"other\"\n\"264650\";\"Aslánaga\";\"other\"\n\"264650\";\"Mesopotamia\";\"other\"\n\"264650\";\"Mesopotamiá\";\"other\"\n\"264650\";\"Άρις\";\"other\"\n\"264662\";\"Ária\";\"main\"\n\"264662\";\"Aria\";\"ascii\"\n\"264662\";\"Άρια\";\"other\"\n\"264668\";\"Argostólion\";\"main\"\n\"264668\";\"Argostolion\";\"ascii\"\n\"264668\";\"Argostoli\";\"other\"\n\"264668\";\"Argostóli\";\"other\"\n\"264668\";\"Αργοστόλι\";\"other\"\n\"264668\";\"Αργοστόλιον\";\"other\"\n\"264670\";\"Árgos\";\"main\"\n\"264670\";\"Argos\";\"ascii\"\n\"264670\";\"Argas\";\"other\"\n\"264670\";\"Argo\";\"other\"\n\"264670\";\"Ciutat d'Argos\";\"other\"\n\"264670\";\"a ge si\";\"other\"\n\"264670\";\"Άργος\";\"other\"\n\"264670\";\"Аргос\";\"other\"\n\"264670\";\"ארגוס\";\"other\"\n\"264670\";\"阿戈斯\";\"other\"\n\"264677\";\"Argalastí\";\"main\"\n\"264677\";\"Argalasti\";\"ascii\"\n\"264677\";\"Argalaste\";\"other\"\n\"264677\";\"Αργαλαστή\";\"other\"\n\"264679\";\"Arfará\";\"main\"\n\"264679\";\"Arfara\";\"ascii\"\n\"264679\";\"Arphara\";\"other\"\n\"264679\";\"Αρφαρά\";\"other\"\n\"264714\";\"Aráchova\";\"main\"\n\"264714\";\"Arachova\";\"ascii\"\n\"264714\";\"Arakhova\";\"other\"\n\"264714\";\"Arákhova\";\"other\"\n\"264748\";\"Apollonía\";\"main\"\n\"264748\";\"Apollonia\";\"ascii\"\n\"264748\";\"Apolonia\";\"other\"\n\"264748\";\"Sifnos\";\"other\"\n\"264748\";\"Siphnos\";\"other\"\n\"264748\";\"Sífnos\";\"other\"\n\"264748\";\"Απολλωνία\";\"other\"\n\"264748\";\"Απολωνία\";\"other\"\n\"264748\";\"Σίφνος\";\"other\"\n\"264793\";\"Anthíli\";\"main\"\n\"264793\";\"Anthili\";\"ascii\"\n\"264793\";\"Anthele\";\"other\"\n\"264793\";\"Imir-Bei\";\"other\"\n\"264793\";\"Imír-Béï\";\"other\"\n\"264793\";\"Ανθήλη\";\"other\"\n\"264806\";\"Anógeia\";\"main\"\n\"264806\";\"Anogeia\";\"ascii\"\n\"264806\";\"Anoghia\";\"other\"\n\"264806\";\"Anogia\";\"other\"\n\"264806\";\"Anoyia\";\"other\"\n\"264806\";\"Anógia\";\"other\"\n\"264806\";\"Anóyia\";\"other\"\n\"264806\";\"Ανώγεια\";\"other\"\n\"264839\";\"Áno Síros\";\"main\"\n\"264839\";\"Ano Siros\";\"ascii\"\n\"264839\";\"Ano Syra\";\"other\"\n\"264839\";\"Ano Syros\";\"other\"\n\"264839\";\"Siros\";\"other\"\n\"264839\";\"Syra\";\"other\"\n\"264839\";\"Syros\";\"other\"\n\"264839\";\"Síros\";\"other\"\n\"264839\";\"Άνω Σύρος\";\"other\"\n\"264878\";\"Áno Merá\";\"main\"\n\"264878\";\"Ano Mera\";\"ascii\"\n\"264878\";\"Άνω Μερά\";\"other\"\n\"264888\";\"Áno Liósia\";\"main\"\n\"264888\";\"Ano Liosia\";\"ascii\"\n\"264888\";\"Άνω Λιόσια\";\"other\"\n\"264890\";\"Áno Lekhónia\";\"main\"\n\"264890\";\"Ano Lekhonia\";\"ascii\"\n\"264890\";\"Ano Lechonia\";\"other\"\n\"264890\";\"Άνω Λεχώνια\";\"other\"\n\"264897\";\"Áno Kopanákion\";\"main\"\n\"264897\";\"Ano Kopanakion\";\"ascii\"\n\"264897\";\"Ano Kopanaki\";\"other\"\n\"264897\";\"Epano Kopanaki\";\"other\"\n\"264897\";\"Epáno Kopanáki\";\"other\"\n\"264897\";\"Áno Kopanáki\";\"other\"\n\"264909\";\"Áno Kastrítsion\";\"main\"\n\"264909\";\"Ano Kastritsion\";\"ascii\"\n\"264909\";\"Kastritsi\";\"other\"\n\"264909\";\"Kastrítsi\";\"other\"\n\"264909\";\"Άνω Καστρίτσιον\";\"other\"\n\"264929\";\"Ánoixis\";\"main\"\n\"264929\";\"Anoixis\";\"ascii\"\n\"264929\";\"Boyati\";\"other\"\n\"264929\";\"Boyiati\";\"other\"\n\"264929\";\"Boyiáti\";\"other\"\n\"264929\";\"Boyáti\";\"other\"\n\"264929\";\"Oion\";\"other\"\n\"264929\";\"Oíon\";\"other\"\n\"264929\";\"Palaion Boyati\";\"other\"\n\"264929\";\"Palaion Boyation\";\"other\"\n\"264929\";\"Palaión Boyáti\";\"other\"\n\"264929\";\"Palaión Boyátion\";\"other\"\n\"264929\";\"Άνοιξις\";\"other\"\n\"265013\";\"Angelókastron\";\"main\"\n\"265013\";\"Angelokastron\";\"ascii\"\n\"265013\";\"Angelokastro\";\"other\"\n\"265013\";\"Angelókastro\";\"other\"\n\"265013\";\"Αγγελόκαστρον\";\"other\"\n\"265028\";\"Anéza\";\"main\"\n\"265028\";\"Aneza\";\"ascii\"\n\"265028\";\"Ανέζα\";\"other\"\n\"265040\";\"Andros\";\"main\"\n\"265040\";\"Kastron\";\"other\"\n\"265040\";\"Kástron\";\"other\"\n\"265040\";\"Άνδρος\";\"other\"\n\"265056\";\"Andravída\";\"main\"\n\"265056\";\"Andravida\";\"ascii\"\n\"265056\";\"Andrabida\";\"other\"\n\"265056\";\"Andravidha\";\"other\"\n\"265056\";\"Andravídha\";\"other\"\n\"265056\";\"Andrvida\";\"other\"\n\"265056\";\"Ανδραβίδα\";\"other\"\n\"265078\";\"Antimácheia\";\"main\"\n\"265078\";\"Antimacheia\";\"ascii\"\n\"265078\";\"Andemaki\";\"other\"\n\"265078\";\"Andimakhia\";\"other\"\n\"265078\";\"Andimákhia\";\"other\"\n\"265078\";\"Antimachia\";\"other\"\n\"265078\";\"Antimakhia\";\"other\"\n\"265095\";\"Anávra\";\"main\"\n\"265095\";\"Anavra\";\"ascii\"\n\"265095\";\"Anabra\";\"other\"\n\"265095\";\"Chamasi\";\"other\"\n\"265095\";\"Chamási\";\"other\"\n\"265095\";\"Tsamasi\";\"other\"\n\"265095\";\"Tsamási\";\"other\"\n\"265095\";\"Ανάβρα\";\"other\"\n\"265096\";\"Anávra\";\"main\"\n\"265096\";\"Anavra\";\"ascii\"\n\"265096\";\"Goura\";\"other\"\n\"265096\";\"Goúra\";\"other\"\n\"265100\";\"Anávyssos\";\"main\"\n\"265100\";\"Anavyssos\";\"ascii\"\n\"265100\";\"Anaflystos\";\"other\"\n\"265100\";\"Anavissos\";\"other\"\n\"265100\";\"Anáflystos\";\"other\"\n\"265100\";\"Anávissos\";\"other\"\n\"265100\";\"Ανάβυσσος\";\"other\"\n\"265100\";\"Ανάφλυστος\";\"other\"\n\"265107\";\"Anatolí\";\"main\"\n\"265107\";\"Anatoli\";\"ascii\"\n\"265107\";\"Anatole\";\"other\"\n\"265107\";\"Ανατολή\";\"other\"\n\"265127\";\"Análipsis\";\"main\"\n\"265127\";\"Analipsis\";\"ascii\"\n\"265127\";\"Analepsis\";\"other\"\n\"265127\";\"Ανάληψις\";\"other\"\n\"265187\";\"Ámfissa\";\"main\"\n\"265187\";\"Amfissa\";\"ascii\"\n\"265187\";\"Amphissa\";\"other\"\n\"265187\";\"Άμφισσα\";\"other\"\n\"265189\";\"Amfilochía\";\"main\"\n\"265189\";\"Amfilochia\";\"ascii\"\n\"265189\";\"Amfilokhia\";\"other\"\n\"265189\";\"Amfilokhía\";\"other\"\n\"265189\";\"Amphilochia\";\"other\"\n\"265189\";\"Karvasaras\";\"other\"\n\"265189\";\"Karvasarás\";\"other\"\n\"265189\";\"Αμφιλοχία\";\"other\"\n\"265191\";\"Amfíklia\";\"main\"\n\"265191\";\"Amfiklia\";\"ascii\"\n\"265191\";\"Amphikleia\";\"other\"\n\"265191\";\"Dhadhion\";\"other\"\n\"265191\";\"Dhadhíon\";\"other\"\n\"265191\";\"Αμφίκλεια\";\"other\"\n\"265206\";\"Ambelón\";\"main\"\n\"265206\";\"Ambelon\";\"ascii\"\n\"265206\";\"Ampelon\";\"other\"\n\"265206\";\"Kazaklar\";\"other\"\n\"265206\";\"Kazaklár\";\"other\"\n\"265206\";\"Αμπελών\";\"other\"\n\"265210\";\"Ambelókipoi\";\"main\"\n\"265210\";\"Ambelokipoi\";\"ascii\"\n\"265210\";\"Ampelokepoi\";\"other\"\n\"265210\";\"Roidhon\";\"other\"\n\"265210\";\"Róïdhon\";\"other\"\n\"265210\";\"Αμπελόκηποι\";\"other\"\n\"265240\";\"Ampelákia\";\"main\"\n\"265240\";\"Ampelakia\";\"ascii\"\n\"265240\";\"Ambelaki\";\"other\"\n\"265240\";\"Ambelakia\";\"other\"\n\"265240\";\"Ambeláki\";\"other\"\n\"265240\";\"Ambelákia\";\"other\"\n\"265240\";\"Αμπελάκια\";\"other\"\n\"265243\";\"Amaroúsion\";\"main\"\n\"265243\";\"Amarousion\";\"ascii\"\n\"265243\";\"Αμαρούσιον\";\"other\"\n\"265245\";\"Amárinthos\";\"main\"\n\"265245\";\"Amarinthos\";\"ascii\"\n\"265245\";\"Amarynthos\";\"other\"\n\"265245\";\"Kato Vathia\";\"other\"\n\"265245\";\"Káto Váthia\";\"other\"\n\"265245\";\"Αμάρυνθος\";\"other\"\n\"265252\";\"Amaliás\";\"main\"\n\"265252\";\"Amalias\";\"ascii\"\n\"265252\";\"Amaliada\";\"other\"\n\"265252\";\"Amaliáda\";\"other\"\n\"265252\";\"Αμαλιάς\";\"other\"\n\"265292\";\"Almyrós\";\"main\"\n\"265292\";\"Almyros\";\"ascii\"\n\"265292\";\"Almiros\";\"other\"\n\"265292\";\"Almirós\";\"other\"\n\"265292\";\"Αλμυρός\";\"other\"\n\"265300\";\"Álli Meriá\";\"main\"\n\"265300\";\"Alli Meria\";\"ascii\"\n\"265300\";\"Alle Meria\";\"other\"\n\"265300\";\"Άλλη Μεριά\";\"other\"\n\"265309\";\"Alivérion\";\"main\"\n\"265309\";\"Aliverion\";\"ascii\"\n\"265309\";\"Aliberion\";\"other\"\n\"265309\";\"Αλιβέριον\";\"other\"\n\"265342\";\"Alíartos\";\"main\"\n\"265342\";\"Aliartos\";\"ascii\"\n\"265342\";\"Krimbas\";\"other\"\n\"265342\";\"Krimbás\";\"other\"\n\"265342\";\"Moulki\";\"other\"\n\"265342\";\"Moulkion\";\"other\"\n\"265342\";\"Moúlki\";\"other\"\n\"265342\";\"Moúlkion\";\"other\"\n\"265342\";\"Αλίαρτος\";\"other\"\n\"265342\";\"Μούλκιον\";\"other\"\n\"265344\";\"Alfioúsa\";\"main\"\n\"265344\";\"Alfiousa\";\"ascii\"\n\"265344\";\"Alpheiousa\";\"other\"\n\"265344\";\"Volantza\";\"other\"\n\"265344\";\"Volántza\";\"other\"\n\"265344\";\"Αλφειούσα\";\"other\"\n\"265417\";\"Akráta\";\"main\"\n\"265417\";\"Akrata\";\"ascii\"\n\"265417\";\"Ακράτα\";\"other\"\n\"265420\";\"Akraífnion\";\"main\"\n\"265420\";\"Akraifnion\";\"ascii\"\n\"265420\";\"Akraiphnion\";\"other\"\n\"265420\";\"Kardhitsa\";\"other\"\n\"265420\";\"Kardhítsa\";\"other\"\n\"265420\";\"Ακραίφνιον\";\"other\"\n\"265488\";\"Akharnaí\";\"main\"\n\"265488\";\"Akharnai\";\"ascii\"\n\"265488\";\"Acharnae\";\"other\"\n\"265488\";\"Acharnai\";\"other\"\n\"265488\";\"Acharne\";\"other\"\n\"265488\";\"Menidhi\";\"other\"\n\"265488\";\"Menidhion\";\"other\"\n\"265488\";\"Menidi\";\"other\"\n\"265488\";\"Menioi\";\"other\"\n\"265488\";\"Menídhi\";\"other\"\n\"265488\";\"Menídhion\";\"other\"\n\"265488\";\"Meníoi\";\"other\"\n\"265488\";\"Αχαρναί\";\"other\"\n\"265498\";\"Aíyira\";\"main\"\n\"265498\";\"Aiyira\";\"ascii\"\n\"265498\";\"Aivira\";\"other\"\n\"265498\";\"Aívira\";\"other\"\n\"265500\";\"Aígion\";\"main\"\n\"265500\";\"Aigion\";\"ascii\"\n\"265500\";\"Aegion\";\"other\"\n\"265500\";\"Aegium\";\"other\"\n\"265500\";\"Aighion\";\"other\"\n\"265500\";\"Aigio\";\"other\"\n\"265500\";\"Aiyion\";\"other\"\n\"265500\";\"Aígio\";\"other\"\n\"265500\";\"Aíyion\";\"other\"\n\"265500\";\"Egion\";\"other\"\n\"265500\";\"Ehjo\";\"other\"\n\"265500\";\"Vostitsa\";\"other\"\n\"265500\";\"Vostitza\";\"other\"\n\"265500\";\"Vostizza\";\"other\"\n\"265500\";\"Vostítsa\";\"other\"\n\"265500\";\"Αίγιον\";\"other\"\n\"265500\";\"Эйо\";\"other\"\n\"265502\";\"Aígina\";\"main\"\n\"265502\";\"Aigina\";\"ascii\"\n\"265502\";\"Aegina\";\"other\"\n\"265502\";\"Aiyina\";\"other\"\n\"265502\";\"Aíyina\";\"other\"\n\"265502\";\"Egina\";\"other\"\n\"265502\";\"Egine\";\"other\"\n\"265502\";\"Αίγινα\";\"other\"\n\"265507\";\"Aitolikón\";\"main\"\n\"265507\";\"Aitolikon\";\"ascii\"\n\"265507\";\"Aetoliko\";\"other\"\n\"265507\";\"Etolikon\";\"other\"\n\"265507\";\"Αιτωλικόν\";\"other\"\n\"265533\";\"Aigáleo\";\"main\"\n\"265533\";\"Aigaleo\";\"ascii\"\n\"265533\";\"Aegaleo\";\"other\"\n\"265533\";\"Αιγάλεω\";\"other\"\n\"265546\";\"Aiánteion\";\"main\"\n\"265546\";\"Aianteion\";\"ascii\"\n\"265546\";\"Aiandion\";\"other\"\n\"265546\";\"Aiantion\";\"other\"\n\"265546\";\"Aiándion\";\"other\"\n\"265546\";\"Aiántion\";\"other\"\n\"265546\";\"Moulki\";\"other\"\n\"265546\";\"Moúlki\";\"other\"\n\"265546\";\"Αιάντειον\";\"other\"\n\"265560\";\"Agrínion\";\"main\"\n\"265560\";\"Agrinion\";\"ascii\"\n\"265560\";\"Agrinio\";\"other\"\n\"265560\";\"Agrinium\";\"other\"\n\"265560\";\"Agrínio\";\"other\"\n\"265560\";\"Αγρίνιο\";\"other\"\n\"265560\";\"Αγρίνιον\";\"other\"\n\"265560\";\"Агринион\";\"other\"\n\"265601\";\"Agriá\";\"main\"\n\"265601\";\"Agria\";\"ascii\"\n\"265601\";\"Αγριά\";\"other\"\n\"265627\";\"Agnanterón\";\"main\"\n\"265627\";\"Agnanteron\";\"ascii\"\n\"265627\";\"Agnanderon\";\"other\"\n\"265627\";\"Agnanderón\";\"other\"\n\"265627\";\"Agnantero\";\"other\"\n\"265627\";\"Agnanteró\";\"other\"\n\"265627\";\"Mesdanion\";\"other\"\n\"265627\";\"Mesdhani\";\"other\"\n\"265627\";\"Mesdháni\";\"other\"\n\"265627\";\"Mesdánion\";\"other\"\n\"265627\";\"Αγναντερόν\";\"other\"\n\"265650\";\"Afrátion\";\"main\"\n\"265650\";\"Afration\";\"ascii\"\n\"265650\";\"Afrati\";\"other\"\n\"265650\";\"Afráti\";\"other\"\n\"265650\";\"Aphration\";\"other\"\n\"265650\";\"Αφράτιον\";\"other\"\n\"265711\";\"Adámas\";\"main\"\n\"265711\";\"Adamas\";\"ascii\"\n\"265711\";\"Adhamas\";\"other\"\n\"265711\";\"Adhámas\";\"other\"\n\"400666\";\"Ródos\";\"main\"\n\"400666\";\"Rodos\";\"ascii\"\n\"400666\";\"Rhodes\";\"other\"\n\"400666\";\"Rhodos\";\"other\"\n\"400666\";\"Rodas\";\"other\"\n\"400666\";\"Rodes\";\"other\"\n\"400666\";\"Rodhos\";\"other\"\n\"400666\";\"Rodi\";\"other\"\n\"400666\";\"Ródhos\";\"other\"\n\"400666\";\"Ρόδος\";\"other\"\n\"400666\";\"Родос\";\"other\"\n\"408628\";\"Néa Alikarnassós\";\"main\"\n\"408628\";\"Nea Alikarnassos\";\"ascii\"\n\"408628\";\"Alikarnassos\";\"other\"\n\"408628\";\"Alikarnassós\";\"other\"\n\"408628\";\"Νέα Αλικαρνασσός\";\"other\"\n\"408684\";\"Kremastí\";\"main\"\n\"408684\";\"Kremasti\";\"ascii\"\n\"408684\";\"Kremaste\";\"other\"\n\"408684\";\"Κρεμαστή\";\"other\"\n\"408685\";\"Afántou\";\"main\"\n\"408685\";\"Afantou\";\"ascii\"\n\"408685\";\"Afandou\";\"other\"\n\"408685\";\"Afándou\";\"other\"\n\"408685\";\"Aphantou\";\"other\"\n\"408685\";\"Αφάντου\";\"other\"\n\"408686\";\"Archángelos\";\"main\"\n\"408686\";\"Archangelos\";\"ascii\"\n\"408686\";\"ARCHANGELOS\";\"other\"\n\"408686\";\"Arkhangelos\";\"other\"\n\"408686\";\"Arkhángelos\";\"other\"\n\"408686\";\"ΑΡΧΑΓΓΕΛΟΣ\";\"other\"\n\"408689\";\"Lárdos\";\"main\"\n\"408689\";\"Lardos\";\"ascii\"\n\"408689\";\"Lardhos\";\"other\"\n\"408689\";\"Lárdhos\";\"other\"\n\"408689\";\"Λάρδος\";\"other\"\n\"444350\";\"Zipárion\";\"main\"\n\"444350\";\"Ziparion\";\"ascii\"\n\"444350\";\"Zeparion\";\"other\"\n\"444350\";\"Zipari\";\"other\"\n\"444350\";\"Zipári\";\"other\"\n\"444350\";\"Ζηπάριον\";\"other\"\n\"445298\";\"Néos Oropós\";\"main\"\n\"445298\";\"Neos Oropos\";\"ascii\"\n\"445298\";\"Νέος Όρωπός\";\"other\"\n\"733749\";\"Zigós\";\"main\"\n\"733749\";\"Zigos\";\"ascii\"\n\"733749\";\"Zygos\";\"other\"\n\"733749\";\"Ζυγός\";\"other\"\n\"733768\";\"Akrolímni\";\"main\"\n\"733768\";\"Akrolimni\";\"ascii\"\n\"733768\";\"Akrolimne\";\"other\"\n\"733768\";\"Golo-Selo\";\"other\"\n\"733768\";\"Gymna\";\"other\"\n\"733768\";\"Gymná\";\"other\"\n\"733768\";\"Gólo-Sélo\";\"other\"\n\"733768\";\"Yimna\";\"other\"\n\"733768\";\"Yimná\";\"other\"\n\"733768\";\"Ακρολίμνη\";\"other\"\n\"733776\";\"Giannitsá\";\"main\"\n\"733776\";\"Giannitsa\";\"ascii\"\n\"733776\";\"Janica\";\"other\"\n\"733776\";\"Yannitsa\";\"other\"\n\"733776\";\"Yenitsa\";\"other\"\n\"733776\";\"Yenitsá\";\"other\"\n\"733776\";\"Yiannitsa\";\"other\"\n\"733776\";\"Yiannitsá\";\"other\"\n\"733776\";\"Γιαννιτσά\";\"other\"\n\"733776\";\"Яница\";\"other\"\n\"733791\";\"Gerakaroú\";\"main\"\n\"733791\";\"Gerakarou\";\"ascii\"\n\"733791\";\"Yerakarou\";\"other\"\n\"733791\";\"Γερακαρού\";\"other\"\n\"733798\";\"Yeniséa\";\"main\"\n\"733798\";\"Yenisea\";\"ascii\"\n\"733798\";\"Genisea\";\"other\"\n\"733798\";\"Yenisaia\";\"other\"\n\"733798\";\"Yenisaía\";\"other\"\n\"733798\";\"Γενισέα\";\"other\"\n\"733802\";\"Géfyra\";\"main\"\n\"733802\";\"Gefyra\";\"ascii\"\n\"733802\";\"Topsin\";\"other\"\n\"733802\";\"Topsín\";\"other\"\n\"733802\";\"Yefira\";\"other\"\n\"733802\";\"Yéfira\";\"other\"\n\"733818\";\"Xiropótamos\";\"main\"\n\"733818\";\"Xiropotamos\";\"ascii\"\n\"733818\";\"Visotsani\";\"other\"\n\"733818\";\"Visotsáni\";\"other\"\n\"733818\";\"Xeropotamos\";\"other\"\n\"733818\";\"Ξηροπόταμος\";\"other\"\n\"733827\";\"Xinón Nerón\";\"main\"\n\"733827\";\"Xinon Neron\";\"ascii\"\n\"733827\";\"Exi Su\";\"other\"\n\"733827\";\"Exí Su\";\"other\"\n\"733827\";\"Xino Nero\";\"other\"\n\"733827\";\"Xinó Neró\";\"other\"\n\"733827\";\"Ξινόν Νερόν\";\"other\"\n\"733828\";\"Xilópolis\";\"main\"\n\"733828\";\"Xilopolis\";\"ascii\"\n\"733828\";\"Lingovani\";\"other\"\n\"733828\";\"Lingováni\";\"other\"\n\"733828\";\"Xylopolis\";\"other\"\n\"733828\";\"Ξυλόπολις\";\"other\"\n\"733831\";\"Xilaganí\";\"main\"\n\"733831\";\"Xilagani\";\"ascii\"\n\"733831\";\"Xylagane\";\"other\"\n\"733831\";\"Ξυλαγανή\";\"other\"\n\"733840\";\"Xánthi\";\"main\"\n\"733840\";\"Xanthi\";\"ascii\"\n\"733840\";\"Eskije\";\"other\"\n\"733840\";\"Ksanti\";\"other\"\n\"733840\";\"Xanthe\";\"other\"\n\"733840\";\"Xanthē\";\"other\"\n\"733840\";\"Ξάνθη\";\"other\"\n\"733840\";\"Ксанти\";\"other\"\n\"733842\";\"Vrontoú\";\"main\"\n\"733842\";\"Vrontou\";\"ascii\"\n\"733842\";\"Brontou\";\"other\"\n\"733842\";\"Kalivia Vrondous\";\"other\"\n\"733842\";\"Kalívia Vrondoús\";\"other\"\n\"733842\";\"Vrondou\";\"other\"\n\"733842\";\"Vrondoú\";\"other\"\n\"733842\";\"Vrondu\";\"other\"\n\"733842\";\"Βροντού\";\"other\"\n\"733877\";\"Vólax\";\"main\"\n\"733877\";\"Volax\";\"ascii\"\n\"733877\";\"Bolax\";\"other\"\n\"733877\";\"Βώλαξ\";\"other\"\n\"733901\";\"Vergína\";\"main\"\n\"733901\";\"Vergina\";\"ascii\"\n\"733901\";\"Aigeai\";\"other\"\n\"733901\";\"Aigéai\";\"other\"\n\"733901\";\"Bergina\";\"other\"\n\"733901\";\"Kutles\";\"other\"\n\"733901\";\"Kutlesh\";\"other\"\n\"733901\";\"Kútles\";\"other\"\n\"733901\";\"Veria\";\"other\"\n\"733901\";\"Veryina\";\"other\"\n\"733901\";\"Veryína\";\"other\"\n\"733901\";\"kutlesh\";\"other\"\n\"733901\";\"vu~erugina\";\"other\"\n\"733901\";\"Βεργίνα\";\"other\"\n\"733901\";\"Кутлеш\";\"other\"\n\"733901\";\"ヴェルギナ\";\"other\"\n\"733902\";\"Véryi\";\"main\"\n\"733902\";\"Veryi\";\"ascii\"\n\"733902\";\"Berge\";\"other\"\n\"733902\";\"Kopachi\";\"other\"\n\"733902\";\"Kopáchi\";\"other\"\n\"733902\";\"Βέργη\";\"other\"\n\"733905\";\"Véroia\";\"main\"\n\"733905\";\"Veroia\";\"ascii\"\n\"733905\";\"Beroia\";\"other\"\n\"733905\";\"Verija\";\"other\"\n\"733905\";\"Verroia\";\"other\"\n\"733905\";\"Vérroia\";\"other\"\n\"733905\";\"Βέροια\";\"other\"\n\"733905\";\"Верия\";\"other\"\n\"733911\";\"Velventós\";\"main\"\n\"733911\";\"Velventos\";\"ascii\"\n\"733911\";\"Belbentos\";\"other\"\n\"733911\";\"Velvendhos\";\"other\"\n\"733911\";\"Velvendhós\";\"other\"\n\"733911\";\"Velvendo\";\"other\"\n\"733911\";\"Velvendos\";\"other\"\n\"733911\";\"Velvendós\";\"other\"\n\"733911\";\"Βελβεντός\";\"other\"\n\"733933\";\"Vathýlakkos\";\"main\"\n\"733933\";\"Vathylakkos\";\"ascii\"\n\"733933\";\"Vathilakkon\";\"other\"\n\"733933\";\"Vathilakkos\";\"other\"\n\"733933\";\"Vathílakkon\";\"other\"\n\"733933\";\"Vathílakkos\";\"other\"\n\"733941\";\"Vasiliká\";\"main\"\n\"733941\";\"Vasilika\";\"ascii\"\n\"733941\";\"Basilika\";\"other\"\n\"733941\";\"Βασιλικά\";\"other\"\n\"733955\";\"Vamvakófiton\";\"main\"\n\"733955\";\"Vamvakofiton\";\"ascii\"\n\"733955\";\"Bambakophyton\";\"other\"\n\"733955\";\"Saviakon\";\"other\"\n\"733955\";\"Saviákon\";\"other\"\n\"733955\";\"Vainvakofiton\";\"other\"\n\"733955\";\"Vainvakófiton\";\"other\"\n\"733955\";\"Βαμβακόφυτον\";\"other\"\n\"733959\";\"Valtotópion\";\"main\"\n\"733959\";\"Valtotopion\";\"ascii\"\n\"733959\";\"Baltotopion\";\"other\"\n\"733959\";\"Beilik Mahale\";\"other\"\n\"733959\";\"Beïlík Mahalé\";\"other\"\n\"733959\";\"Valtotopi\";\"other\"\n\"733959\";\"Valtotópi\";\"other\"\n\"733959\";\"Βαλτοτόπιον\";\"other\"\n\"733965\";\"Valterón\";\"main\"\n\"733965\";\"Valteron\";\"ascii\"\n\"733965\";\"Balteron\";\"other\"\n\"733965\";\"Barakli\";\"other\"\n\"733965\";\"Baraklí\";\"other\"\n\"733965\";\"Valtero\";\"other\"\n\"733965\";\"Valteró\";\"other\"\n\"733965\";\"Βαλτερόν\";\"other\"\n\"733986\";\"Tsotílion\";\"main\"\n\"733986\";\"Tsotilion\";\"ascii\"\n\"733986\";\"Τσοτίλιον\";\"other\"\n\"734003\";\"Tsákoi\";\"main\"\n\"734003\";\"Tsakoi\";\"ascii\"\n\"734003\";\"Tsakones\";\"other\"\n\"734003\";\"Tsákones\";\"other\"\n\"734003\";\"Τσάκοι\";\"other\"\n\"734014\";\"Trílofon\";\"main\"\n\"734014\";\"Trilofon\";\"ascii\"\n\"734014\";\"Trilofo\";\"other\"\n\"734014\";\"Trilophon\";\"other\"\n\"734014\";\"Trílofo\";\"other\"\n\"734014\";\"Zoumbates\";\"other\"\n\"734014\";\"Zoumbátes\";\"other\"\n\"734014\";\"Τρίλοφον\";\"other\"\n\"734018\";\"Tríkala\";\"main\"\n\"734018\";\"Trikala\";\"ascii\"\n\"734018\";\"Trikkala\";\"other\"\n\"734018\";\"Tríkkala\";\"other\"\n\"734018\";\"Трикала\";\"other\"\n\"734061\";\"Tycherón\";\"main\"\n\"734061\";\"Tycheron\";\"ascii\"\n\"734061\";\"Tikheron\";\"other\"\n\"734061\";\"Tikherón\";\"other\"\n\"734061\";\"Tikhion\";\"other\"\n\"734061\";\"Tychero\";\"other\"\n\"734061\";\"Tycheró\";\"other\"\n\"734061\";\"Tíkhion\";\"other\"\n\"734061\";\"Τυχερόν\";\"other\"\n\"734077\";\"Thessaloníki\";\"main\"\n\"734077\";\"Thessaloniki\";\"ascii\"\n\"734077\";\"Ftohomana\";\"other\"\n\"734077\";\"Ftohomána\";\"other\"\n\"734077\";\"I Protevoussa ton Prosfigon\";\"other\"\n\"734077\";\"I Protévoussa ton Prosfígon\";\"other\"\n\"734077\";\"Lungsod ng Thessaloniki\";\"other\"\n\"734077\";\"Lungsod ng Thessaloníki\";\"other\"\n\"734077\";\"Salonic\";\"other\"\n\"734077\";\"Salonica\";\"other\"\n\"734077\";\"Salonicco\";\"other\"\n\"734077\";\"Salonik\";\"other\"\n\"734077\";\"Salonika\";\"other\"\n\"734077\";\"Salonikai\";\"other\"\n\"734077\";\"Salonike\";\"other\"\n\"734077\";\"Saloniki\";\"other\"\n\"734077\";\"Salonique\";\"other\"\n\"734077\";\"Saloníki\";\"other\"\n\"734077\";\"Saluniccu\";\"other\"\n\"734077\";\"Salónica\";\"other\"\n\"734077\";\"Saruna\";\"other\"\n\"734077\";\"Selanik\";\"other\"\n\"734077\";\"Selun'\";\"other\"\n\"734077\";\"Selânik\";\"other\"\n\"734077\";\"Solun\";\"other\"\n\"734077\";\"Soluň\";\"other\"\n\"734077\";\"Solún\";\"other\"\n\"734077\";\"Săruna\";\"other\"\n\"734077\";\"THessalonika\";\"other\"\n\"734077\";\"Tesalonica\";\"other\"\n\"734077\";\"Tesalónica\";\"other\"\n\"734077\";\"Tessalonica\";\"other\"\n\"734077\";\"Tessalònica\";\"other\"\n\"734077\";\"Thessalonica\";\"other\"\n\"734077\";\"Thessalonike\";\"other\"\n\"734077\";\"Thessalonique\";\"other\"\n\"734077\";\"Thessaloníkē\";\"other\"\n\"734077\";\"sai sa luo ni ji\";\"other\"\n\"734077\";\"salwnyk\";\"other\"\n\"734077\";\"slwnyqh\";\"other\"\n\"734077\";\"slwnyqy\";\"other\"\n\"734077\";\"tessaroniki\";\"other\"\n\"734077\";\"Þessalóníka\";\"other\"\n\"734077\";\"Θεσσαλονίκη\";\"other\"\n\"734077\";\"Σαλονίκη\";\"other\"\n\"734077\";\"Σαλονικη\";\"other\"\n\"734077\";\"Салоники\";\"other\"\n\"734077\";\"Салоніки\";\"other\"\n\"734077\";\"Селунь\";\"other\"\n\"734077\";\"Солун\";\"other\"\n\"734077\";\"סלוניקה\";\"other\"\n\"734077\";\"סלוניקי\";\"other\"\n\"734077\";\"سالونيك\";\"other\"\n\"734077\";\"テッサロニキ\";\"other\"\n\"734077\";\"塞萨洛尼基\";\"other\"\n\"734080\";\"Thérmi\";\"main\"\n\"734080\";\"Thermi\";\"ascii\"\n\"734080\";\"Sedes\";\"other\"\n\"734080\";\"Sedhes\";\"other\"\n\"734080\";\"Sédhes\";\"other\"\n\"734080\";\"Therme\";\"other\"\n\"734080\";\"Θέρμη\";\"other\"\n\"734094\";\"Thásos\";\"main\"\n\"734094\";\"Thasos\";\"ascii\"\n\"734094\";\"Limin\";\"other\"\n\"734094\";\"Limín\";\"other\"\n\"734094\";\"Thasas\";\"other\"\n\"734094\";\"Θάσος\";\"other\"\n\"734102\";\"Terpní\";\"main\"\n\"734102\";\"Terpni\";\"ascii\"\n\"734102\";\"Cherpista\";\"other\"\n\"734102\";\"Cherpísta\";\"other\"\n\"734102\";\"Terpne\";\"other\"\n\"734102\";\"Τερπνή\";\"other\"\n\"734108\";\"Taxiárkhis\";\"main\"\n\"734108\";\"Taxiarkhis\";\"ascii\"\n\"734108\";\"Likovi\";\"other\"\n\"734108\";\"Likóvi\";\"other\"\n\"734108\";\"Taxiarches\";\"other\"\n\"734108\";\"Ταξιάρχης\";\"other\"\n\"734120\";\"Svorónos\";\"main\"\n\"734120\";\"Svoronos\";\"ascii\"\n\"734120\";\"Kolokouri\";\"other\"\n\"734120\";\"Kolokourion\";\"other\"\n\"734120\";\"Kolokoúri\";\"other\"\n\"734120\";\"Kolokoúrion\";\"other\"\n\"734120\";\"Sboronos\";\"other\"\n\"734120\";\"Σβορώνος\";\"other\"\n\"734128\";\"Strimonikón\";\"main\"\n\"734128\";\"Strimonikon\";\"ascii\"\n\"734128\";\"Orliakon\";\"other\"\n\"734128\";\"Órliakon\";\"other\"\n\"734133\";\"Stratónion\";\"main\"\n\"734133\";\"Stratonion\";\"ascii\"\n\"734133\";\"Στρατώνιον\";\"other\"\n\"734155\";\"Stavrós\";\"main\"\n\"734155\";\"Stavros\";\"ascii\"\n\"734183\";\"Sourotí\";\"main\"\n\"734183\";\"Souroti\";\"ascii\"\n\"734183\";\"Sourote\";\"other\"\n\"734183\";\"Σουρωτή\";\"other\"\n\"734187\";\"Souflíon\";\"main\"\n\"734187\";\"Souflion\";\"ascii\"\n\"734187\";\"Soufli\";\"other\"\n\"734187\";\"Souflí\";\"other\"\n\"734187\";\"Souphlion\";\"other\"\n\"734187\";\"Σουφλίον\";\"other\"\n\"734195\";\"Sosándra\";\"main\"\n\"734195\";\"Sosandra\";\"ascii\"\n\"734195\";\"Prebodhista\";\"other\"\n\"734195\";\"Prebódhista\";\"other\"\n\"734195\";\"Sosandhra\";\"other\"\n\"734195\";\"Sosándhra\";\"other\"\n\"734195\";\"Σωσάνδρα\";\"other\"\n\"734198\";\"Sokhós\";\"main\"\n\"734198\";\"Sokhos\";\"ascii\"\n\"734198\";\"Sochos\";\"other\"\n\"734198\";\"Zokhos\";\"other\"\n\"734198\";\"Zokhós\";\"other\"\n\"734198\";\"Σοχός\";\"other\"\n\"734213\";\"Skoútari\";\"main\"\n\"734213\";\"Skoutari\";\"ascii\"\n\"734213\";\"Kopeki\";\"other\"\n\"734213\";\"Kopekí\";\"other\"\n\"734213\";\"Σκούταρι\";\"other\"\n\"734216\";\"Skotoússa\";\"main\"\n\"734216\";\"Skotoussa\";\"ascii\"\n\"734216\";\"Prosnik\";\"other\"\n\"734216\";\"Prósnik\";\"other\"\n\"734216\";\"Skotousa\";\"other\"\n\"734216\";\"Skotoúsa\";\"other\"\n\"734216\";\"Σκοτούσσα\";\"other\"\n\"734235\";\"Skýdra\";\"main\"\n\"734235\";\"Skydra\";\"ascii\"\n\"734235\";\"Skhidra\";\"other\"\n\"734235\";\"Skhídra\";\"other\"\n\"734235\";\"Skidhra\";\"other\"\n\"734235\";\"Skídhra\";\"other\"\n\"734235\";\"Vertekop\";\"other\"\n\"734235\";\"Vertekóp\";\"other\"\n\"734256\";\"Leptokaryá\";\"main\"\n\"734256\";\"Leptokarya\";\"ascii\"\n\"734256\";\"Leptokarja\";\"other\"\n\"734256\";\"Skala Leptokarias\";\"other\"\n\"734256\";\"Skala Leptokaryas\";\"other\"\n\"734256\";\"Skála Leptokariás\";\"other\"\n\"734256\";\"Skála Leptokaryás\";\"other\"\n\"734268\";\"Sitagroí\";\"main\"\n\"734268\";\"Sitagroi\";\"ascii\"\n\"734268\";\"Minare Chiflik\";\"other\"\n\"734268\";\"Minaré Chiflík\";\"other\"\n\"734268\";\"Σιταγροί\";\"other\"\n\"734270\";\"Sisamía\";\"main\"\n\"734270\";\"Sisamia\";\"ascii\"\n\"734270\";\"Sesamia\";\"other\"\n\"734270\";\"Σησαμία\";\"other\"\n\"734284\";\"Síndos\";\"main\"\n\"734284\";\"Sindos\";\"ascii\"\n\"734284\";\"Sindhos\";\"other\"\n\"734284\";\"Síndhos\";\"other\"\n\"734284\";\"Tekeli\";\"other\"\n\"734284\";\"Tekelí\";\"other\"\n\"734284\";\"Σίνδος\";\"other\"\n\"734299\";\"Sikiá\";\"main\"\n\"734299\";\"Sikia\";\"ascii\"\n\"734299\";\"Sikea\";\"other\"\n\"734299\";\"Sikéa\";\"other\"\n\"734299\";\"Sykia\";\"other\"\n\"734301\";\"Sykéai\";\"main\"\n\"734301\";\"Sykeai\";\"ascii\"\n\"734301\";\"Sikeai\";\"other\"\n\"734301\";\"Sikéai\";\"other\"\n\"734310\";\"Sidirókastron\";\"main\"\n\"734310\";\"Sidirokastron\";\"ascii\"\n\"734310\";\"Sideorastron\";\"other\"\n\"734310\";\"Siderokastron\";\"other\"\n\"734310\";\"Sidhirokastron\";\"other\"\n\"734310\";\"Sidhirókastron\";\"other\"\n\"734310\";\"Sidirokastro\";\"other\"\n\"734310\";\"Sidirókastro\";\"other\"\n\"734310\";\"Σιδηρόκαστρον\";\"other\"\n\"734315\";\"Siátista\";\"main\"\n\"734315\";\"Siatista\";\"ascii\"\n\"734315\";\"Khora\";\"other\"\n\"734315\";\"Khóra\";\"other\"\n\"734315\";\"Σιάτιστα\";\"other\"\n\"734320\";\"Sfendámion\";\"main\"\n\"734320\";\"Sfendamion\";\"ascii\"\n\"734320\";\"Paliani\";\"other\"\n\"734320\";\"Páliani\";\"other\"\n\"734320\";\"Sfendami\";\"other\"\n\"734320\";\"Sfendhami\";\"other\"\n\"734320\";\"Sfendhamion\";\"other\"\n\"734320\";\"Sfendhámi\";\"other\"\n\"734320\";\"Sfendhámion\";\"other\"\n\"734320\";\"Sfendámi\";\"other\"\n\"734320\";\"Stendhami\";\"other\"\n\"734320\";\"Stendhámi\";\"other\"\n\"734324\";\"Sevastianá\";\"main\"\n\"734324\";\"Sevastiana\";\"ascii\"\n\"734324\";\"Sebastiana\";\"other\"\n\"734324\";\"Σεβαστιανά\";\"other\"\n\"734328\";\"Sérvia\";\"main\"\n\"734328\";\"Servia\";\"ascii\"\n\"734328\";\"Selfije\";\"other\"\n\"734328\";\"Serbia\";\"other\"\n\"734328\";\"Σέρβια\";\"other\"\n\"734330\";\"Sérres\";\"main\"\n\"734330\";\"Serres\";\"ascii\"\n\"734330\";\"Ser\";\"other\"\n\"734330\";\"Seres\";\"other\"\n\"734330\";\"Serez\";\"other\"\n\"734330\";\"Serra\";\"other\"\n\"734330\";\"Serrae\";\"other\"\n\"734330\";\"Serrai\";\"other\"\n\"734330\";\"Serrès\";\"other\"\n\"734330\";\"Sjar\";\"other\"\n\"734330\";\"Sérrai\";\"other\"\n\"734330\";\"Σέρρα\";\"other\"\n\"734330\";\"Σέρραι\";\"other\"\n\"734330\";\"Σέρρες\";\"other\"\n\"734330\";\"Сер\";\"other\"\n\"734330\";\"Сяр\";\"other\"\n\"734336\";\"Séleron\";\"main\"\n\"734336\";\"Seleron\";\"ascii\"\n\"734336\";\"Σέλερον\";\"other\"\n\"734339\";\"Sárti\";\"main\"\n\"734339\";\"Sarti\";\"ascii\"\n\"734339\";\"Nea Afisia\";\"other\"\n\"734339\";\"Nea Afissia\";\"other\"\n\"734339\";\"Néa Afisiá\";\"other\"\n\"734339\";\"Néa Afissiá\";\"other\"\n\"734339\";\"Sarte\";\"other\"\n\"734339\";\"Σάρτη\";\"other\"\n\"734355\";\"Sápai\";\"main\"\n\"734355\";\"Sapai\";\"ascii\"\n\"734355\";\"Sapes\";\"other\"\n\"734355\";\"Sappai\";\"other\"\n\"734355\";\"Sápes\";\"other\"\n\"734355\";\"Σάπαι\";\"other\"\n\"734374\";\"Rodópolis\";\"main\"\n\"734374\";\"Rodopolis\";\"ascii\"\n\"734374\";\"Rodhopolis\";\"other\"\n\"734374\";\"Rodhópolis\";\"other\"\n\"734374\";\"Rodopoli\";\"other\"\n\"734374\";\"Rodópoli\";\"other\"\n\"734374\";\"Ροδόπολις\";\"other\"\n\"734385\";\"Rizón\";\"main\"\n\"734385\";\"Rizon\";\"ascii\"\n\"734385\";\"Rizo\";\"other\"\n\"734385\";\"Rizovon\";\"other\"\n\"734385\";\"Rizó\";\"other\"\n\"734385\";\"Rízovon\";\"other\"\n\"734385\";\"Ριζόν\";\"other\"\n\"734386\";\"Rizómata\";\"main\"\n\"734386\";\"Rizomata\";\"ascii\"\n\"734386\";\"Bostiani\";\"other\"\n\"734386\";\"Bóstiani\";\"other\"\n\"734386\";\"Ριζώματα\";\"other\"\n\"734389\";\"Rízia\";\"main\"\n\"734389\";\"Rizia\";\"ascii\"\n\"734389\";\"Ρίζια\";\"other\"\n\"734391\";\"Rizárion\";\"main\"\n\"734391\";\"Rizarion\";\"ascii\"\n\"734391\";\"Orizarion\";\"other\"\n\"734391\";\"Orizárion\";\"other\"\n\"734391\";\"Rizario\";\"other\"\n\"734391\";\"Rizário\";\"other\"\n\"734391\";\"Ριζάριον\";\"other\"\n\"734396\";\"Ritíni\";\"main\"\n\"734396\";\"Ritini\";\"ascii\"\n\"734396\";\"Rendini\";\"other\"\n\"734396\";\"Rendíni\";\"other\"\n\"734396\";\"Retine\";\"other\"\n\"734396\";\"Ρητίνη\";\"other\"\n\"734405\";\"Péfka\";\"main\"\n\"734405\";\"Pefka\";\"ascii\"\n\"734405\";\"Rendziki\";\"other\"\n\"734405\";\"Rendzíki\";\"other\"\n\"734405\";\"Rentzikion\";\"other\"\n\"734405\";\"Rentzíkion\";\"other\"\n\"734405\";\"Retziki\";\"other\"\n\"734405\";\"Retzikion\";\"other\"\n\"734405\";\"Retzíki\";\"other\"\n\"734405\";\"Retzíkion\";\"other\"\n\"734426\";\"Ptolemaḯs\";\"main\"\n\"734426\";\"Ptolemais\";\"ascii\"\n\"734426\";\"Kailar\";\"other\"\n\"734426\";\"Kailaria\";\"other\"\n\"734426\";\"Kajlar\";\"other\"\n\"734426\";\"Kajljari\";\"other\"\n\"734426\";\"Kayilar\";\"other\"\n\"734426\";\"Kayılar\";\"other\"\n\"734426\";\"Kaïlária\";\"other\"\n\"734426\";\"Ptolemaida\";\"other\"\n\"734426\";\"Ptolemaidha\";\"other\"\n\"734426\";\"Ptolemak\";\"other\"\n\"734426\";\"Ptolemaḯda\";\"other\"\n\"734426\";\"Πτολεμαΐδα\";\"other\"\n\"734426\";\"Кайляри\";\"other\"\n\"734426\";\"Кајлар\";\"other\"\n\"734426\";\"Птолемаида\";\"other\"\n\"734430\";\"Pteléa\";\"main\"\n\"734430\";\"Ptelea\";\"ascii\"\n\"734430\";\"Eftelia\";\"other\"\n\"734430\";\"Efteliá\";\"other\"\n\"734430\";\"Ftelia\";\"other\"\n\"734430\";\"Fteliá\";\"other\"\n\"734430\";\"Phtelia\";\"other\"\n\"734430\";\"Φτελιά\";\"other\"\n\"734436\";\"Psikhikón\";\"main\"\n\"734436\";\"Psikhikon\";\"ascii\"\n\"734436\";\"Ano Psikhiko\";\"other\"\n\"734436\";\"Ano Psikhikon\";\"other\"\n\"734436\";\"Ano Verziani\";\"other\"\n\"734436\";\"Psikhiko\";\"other\"\n\"734436\";\"Psikhikó\";\"other\"\n\"734436\";\"Áno Psikhikó\";\"other\"\n\"734436\";\"Áno Psikhikón\";\"other\"\n\"734436\";\"Áno Verzianí\";\"other\"\n\"734440\";\"Provatás\";\"main\"\n\"734440\";\"Provatas\";\"ascii\"\n\"734440\";\"Probatas\";\"other\"\n\"734440\";\"Yenikoi\";\"other\"\n\"734440\";\"Yeníkoï\";\"other\"\n\"734440\";\"Προβατάς\";\"other\"\n\"734443\";\"Próti\";\"main\"\n\"734443\";\"Proti\";\"ascii\"\n\"734443\";\"Kup Koi\";\"other\"\n\"734443\";\"Kup Kóï\";\"other\"\n\"734443\";\"Prote\";\"other\"\n\"734443\";\"Πρώτη\";\"other\"\n\"734447\";\"Prosotsáni\";\"main\"\n\"734447\";\"Prosotsani\";\"ascii\"\n\"734447\";\"Pirsopolis\";\"other\"\n\"734447\";\"Pirsópolis\";\"other\"\n\"734447\";\"Prosotsane\";\"other\"\n\"734447\";\"Προσοτσάνη\";\"other\"\n\"734454\";\"Prómachoi\";\"main\"\n\"734454\";\"Promachoi\";\"ascii\"\n\"734454\";\"Bakhovon\";\"other\"\n\"734454\";\"Bákhovon\";\"other\"\n\"734454\";\"Promakho\";\"other\"\n\"734454\";\"Promakhoi\";\"other\"\n\"734454\";\"Prómakho\";\"other\"\n\"734454\";\"Prómakhoi\";\"other\"\n\"734454\";\"Πρόμαχοι\";\"other\"\n\"734455\";\"Próchoma\";\"main\"\n\"734455\";\"Prochoma\";\"ascii\"\n\"734455\";\"Doganji\";\"other\"\n\"734455\";\"Doganjí\";\"other\"\n\"734455\";\"Prokhoma\";\"other\"\n\"734455\";\"Prókhoma\";\"other\"\n\"734455\";\"Πρόχωμα\";\"other\"\n\"734461\";\"Profítis Ilías\";\"main\"\n\"734461\";\"Profitis Ilias\";\"ascii\"\n\"734496\";\"Potamiá\";\"main\"\n\"734496\";\"Potamia\";\"ascii\"\n\"734496\";\"Ποταμιά\";\"other\"\n\"734499\";\"Portariá\";\"main\"\n\"734499\";\"Portaria\";\"ascii\"\n\"734499\";\"Πορταριά\";\"other\"\n\"734517\";\"Polýgyros\";\"main\"\n\"734517\";\"Polygyros\";\"ascii\"\n\"734517\";\"Derigovo\";\"other\"\n\"734517\";\"Piliyiros\";\"other\"\n\"734517\";\"Pilíyiros\";\"other\"\n\"734517\";\"Poliyiros\";\"other\"\n\"734517\";\"Políyiros\";\"other\"\n\"734517\";\"Πολύγυρος\";\"other\"\n\"734517\";\"Деригово\";\"other\"\n\"734537\";\"Políkhronon\";\"main\"\n\"734537\";\"Polikhronon\";\"ascii\"\n\"734537\";\"Metokhion Polikhronou\";\"other\"\n\"734537\";\"Metókhion Polikhrónou\";\"other\"\n\"734537\";\"Polikhronou\";\"other\"\n\"734537\";\"Polikhrónou\";\"other\"\n\"734537\";\"Polychronon\";\"other\"\n\"734537\";\"Polykhrono\";\"other\"\n\"734537\";\"Πολύχρονον\";\"other\"\n\"734538\";\"Políchni\";\"main\"\n\"734538\";\"Polichni\";\"ascii\"\n\"734538\";\"Karaisin\";\"other\"\n\"734538\";\"Karaïsín\";\"other\"\n\"734538\";\"Polikhni\";\"other\"\n\"734538\";\"Políkhni\";\"other\"\n\"734538\";\"Полихни\";\"other\"\n\"734540\";\"Polýkastron\";\"main\"\n\"734540\";\"Polykastron\";\"ascii\"\n\"734540\";\"Karasouli\";\"other\"\n\"734540\";\"Karasoúli\";\"other\"\n\"734540\";\"Mavrosouli\";\"other\"\n\"734540\";\"Mavrosoúli\";\"other\"\n\"734540\";\"Policastron\";\"other\"\n\"734540\";\"Polikastron\";\"other\"\n\"734540\";\"Polykastro\";\"other\"\n\"734540\";\"Políkastron\";\"other\"\n\"734540\";\"Polýkastro\";\"other\"\n\"734540\";\"Πολύκαστρον\";\"other\"\n\"734543\";\"Polykárpion\";\"main\"\n\"734543\";\"Polykarpion\";\"ascii\"\n\"734543\";\"Poliani\";\"other\"\n\"734543\";\"Polikarpi\";\"other\"\n\"734543\";\"Polikarpion\";\"other\"\n\"734543\";\"Polikárpi\";\"other\"\n\"734543\";\"Polikárpion\";\"other\"\n\"734543\";\"Polykarpi\";\"other\"\n\"734543\";\"Polykárpi\";\"other\"\n\"734543\";\"Póliani\";\"other\"\n\"734543\";\"Πολυκάρπιον\";\"other\"\n\"734564\";\"Plagiárion\";\"main\"\n\"734564\";\"Plagiarion\";\"ascii\"\n\"734564\";\"Plagiari\";\"other\"\n\"734564\";\"Plagiári\";\"other\"\n\"734564\";\"Playiari\";\"other\"\n\"734564\";\"Playiarion\";\"other\"\n\"734564\";\"Playiári\";\"other\"\n\"734564\";\"Playiárion\";\"other\"\n\"734564\";\"Uzun-Ali\";\"other\"\n\"734564\";\"Uzún-Alí\";\"other\"\n\"734564\";\"Πλαγιάριον\";\"other\"\n\"734575\";\"Platý\";\"main\"\n\"734575\";\"Platy\";\"ascii\"\n\"734575\";\"Plati\";\"other\"\n\"734575\";\"Platí\";\"other\"\n\"734579\";\"Platanórrevma\";\"main\"\n\"734579\";\"Platanorrevma\";\"ascii\"\n\"734579\";\"Orta-Koi\";\"other\"\n\"734579\";\"Ortá-Kóï\";\"other\"\n\"734579\";\"Platanorema\";\"other\"\n\"734579\";\"Platanorevma\";\"other\"\n\"734579\";\"Platanórema\";\"other\"\n\"734579\";\"Platanórevma\";\"other\"\n\"734602\";\"Pigaí\";\"main\"\n\"734602\";\"Pigai\";\"ascii\"\n\"734602\";\"Kutunjali\";\"other\"\n\"734602\";\"Kutunjalí\";\"other\"\n\"734602\";\"Pegai\";\"other\"\n\"734602\";\"Piyai\";\"other\"\n\"734602\";\"Piyaí\";\"other\"\n\"734602\";\"Πηγαί\";\"other\"\n\"734622\";\"Pýrgos\";\"main\"\n\"734622\";\"Pyrgos\";\"ascii\"\n\"734622\";\"Chalastra\";\"other\"\n\"734622\";\"Chalástra\";\"other\"\n\"734622\";\"Khalastra\";\"other\"\n\"734622\";\"Khalástra\";\"other\"\n\"734622\";\"Kouloukia\";\"other\"\n\"734622\";\"Kouloúkia\";\"other\"\n\"734622\";\"Pirgos\";\"other\"\n\"734622\";\"Pírgos\";\"other\"\n\"734622\";\"Χαλάστρα\";\"other\"\n\"734622\";\"Пиргос\";\"other\"\n\"734643\";\"Pylaía\";\"main\"\n\"734643\";\"Pylaia\";\"ascii\"\n\"734643\";\"Kapoutsidhes\";\"other\"\n\"734643\";\"Kapoutsídhes\";\"other\"\n\"734643\";\"Pilaia\";\"other\"\n\"734643\";\"Pilaía\";\"other\"\n\"734643\";\"Pilea\";\"other\"\n\"734643\";\"Strefa\";\"other\"\n\"734643\";\"Stréfa\";\"other\"\n\"734643\";\"Пилеа\";\"other\"\n\"734664\";\"Petroússa\";\"main\"\n\"734664\";\"Petroussa\";\"ascii\"\n\"734664\";\"Petrousa\";\"other\"\n\"734664\";\"Petroúsa\";\"other\"\n\"734664\";\"Plevna\";\"other\"\n\"734664\";\"Plévna\";\"other\"\n\"734664\";\"Πετρούσσα\";\"other\"\n\"734672\";\"Petrokhórion\";\"main\"\n\"734672\";\"Petrokhorion\";\"ascii\"\n\"734672\";\"Eriki\";\"other\"\n\"734672\";\"Eríki\";\"other\"\n\"734672\";\"Kayalar\";\"other\"\n\"734672\";\"Kayalár\";\"other\"\n\"734672\";\"Petrochorion\";\"other\"\n\"734672\";\"Petrokhori\";\"other\"\n\"734672\";\"Petrokhóri\";\"other\"\n\"734672\";\"Πετροχώριον\";\"other\"\n\"734683\";\"Petinós\";\"main\"\n\"734683\";\"Petinos\";\"ascii\"\n\"734683\";\"Peteinos\";\"other\"\n\"734683\";\"Πετεινός\";\"other\"\n\"734695\";\"Peristerá\";\"main\"\n\"734695\";\"Peristera\";\"ascii\"\n\"734695\";\"Περιστερά\";\"other\"\n\"734698\";\"Perístasis\";\"main\"\n\"734698\";\"Peristasis\";\"ascii\"\n\"734698\";\"Peristasi\";\"other\"\n\"734698\";\"Perístasi\";\"other\"\n\"734698\";\"Περίστασις\";\"other\"\n\"734712\";\"Peraía\";\"main\"\n\"734712\";\"Peraia\";\"ascii\"\n\"734712\";\"Περαία\";\"other\"\n\"734715\";\"Péplos\";\"main\"\n\"734715\";\"Peplos\";\"ascii\"\n\"734715\";\"Πέπλος\";\"other\"\n\"734719\";\"Pendápolis\";\"main\"\n\"734719\";\"Pendapolis\";\"ascii\"\n\"734719\";\"Pentapolis\";\"other\"\n\"734719\";\"Pentápolis\";\"other\"\n\"734719\";\"Sarmusakli\";\"other\"\n\"734719\";\"Sarmusaklí\";\"other\"\n\"734719\";\"Πεντάπολις\";\"other\"\n\"734720\";\"Pentaplátanon\";\"main\"\n\"734720\";\"Pentaplatanon\";\"ascii\"\n\"734720\";\"Pendaplatanon\";\"other\"\n\"734720\";\"Pendaplátanon\";\"other\"\n\"734720\";\"Pentaplatano\";\"other\"\n\"734720\";\"Pentaplátano\";\"other\"\n\"734720\";\"Pilorik\";\"other\"\n\"734720\";\"Piloriyi\";\"other\"\n\"734720\";\"Piloriyion\";\"other\"\n\"734720\";\"Pilorík\";\"other\"\n\"734720\";\"Piloríyi\";\"other\"\n\"734720\";\"Piloríyion\";\"other\"\n\"734720\";\"Πενταπλάτανον\";\"other\"\n\"734722\";\"Pentálofos\";\"main\"\n\"734722\";\"Pentalofos\";\"ascii\"\n\"734722\";\"Gradhemborion\";\"other\"\n\"734722\";\"Gradhembórion\";\"other\"\n\"734722\";\"Pendalofos\";\"other\"\n\"734722\";\"Pendálofos\";\"other\"\n\"734722\";\"Pentalophos\";\"other\"\n\"734722\";\"Πεντάλοφος\";\"other\"\n\"734726\";\"Pélla\";\"main\"\n\"734726\";\"Pella\";\"ascii\"\n\"734726\";\"Archaia Pella\";\"other\"\n\"734726\";\"Pela\";\"other\"\n\"734726\";\"Prefektura Pela\";\"other\"\n\"734726\";\"Αρχαία Πέλλα\";\"other\"\n\"734726\";\"Πέλλα\";\"other\"\n\"734726\";\"Пела\";\"other\"\n\"734726\";\"Пелла\";\"other\"\n\"734726\";\"Префектура Пела\";\"other\"\n\"734731\";\"Pedinón\";\"main\"\n\"734731\";\"Pedinon\";\"ascii\"\n\"734731\";\"Hasan Obasi\";\"other\"\n\"734731\";\"Hasán Óbasi\";\"other\"\n\"734731\";\"Pedhinon\";\"other\"\n\"734731\";\"Pedhinón\";\"other\"\n\"734731\";\"Pedino\";\"other\"\n\"734731\";\"Pedinó\";\"other\"\n\"734731\";\"Πεδινόν\";\"other\"\n\"734733\";\"Patrís\";\"main\"\n\"734733\";\"Patris\";\"ascii\"\n\"734733\";\"Patrida\";\"other\"\n\"734733\";\"Patrída\";\"other\"\n\"734733\";\"Tourkokhori\";\"other\"\n\"734733\";\"Tourkokhorion\";\"other\"\n\"734733\";\"Tourkokhóri\";\"other\"\n\"734733\";\"Tourkokhórion\";\"other\"\n\"734733\";\"Πατρίς\";\"other\"\n\"734757\";\"Paralía\";\"main\"\n\"734757\";\"Paralia\";\"ascii\"\n\"734757\";\"Paralia Katerinis\";\"other\"\n\"734757\";\"Skala Vromeris\";\"other\"\n\"734757\";\"Skála Vromerís\";\"other\"\n\"734757\";\"Vromeroskala\";\"other\"\n\"734757\";\"Vromeróskala\";\"other\"\n\"734757\";\"Vromoskala\";\"other\"\n\"734757\";\"Vromóskala\";\"other\"\n\"734757\";\"Παραλία\";\"other\"\n\"734757\";\"Παραλία Κατερίνης\";\"other\"\n\"734761\";\"Pappayiánnis\";\"main\"\n\"734761\";\"Pappayiannis\";\"ascii\"\n\"734761\";\"Papayiannis\";\"other\"\n\"734761\";\"Papayiánnis\";\"other\"\n\"734761\";\"Papazani\";\"other\"\n\"734761\";\"Pappagiannes\";\"other\"\n\"734761\";\"Papázani\";\"other\"\n\"734761\";\"Παππαγιάννης\";\"other\"\n\"734771\";\"Panórama\";\"main\"\n\"734771\";\"Panorama\";\"ascii\"\n\"734771\";\"Arsakli\";\"other\"\n\"734771\";\"Arsaklí\";\"other\"\n\"734771\";\"Πανόραμα\";\"other\"\n\"734819\";\"Axós\";\"main\"\n\"734819\";\"Axos\";\"ascii\"\n\"734819\";\"Eskije\";\"other\"\n\"734819\";\"Eskijé\";\"other\"\n\"734819\";\"Neon Palaion\";\"other\"\n\"734819\";\"Néon Palaión\";\"other\"\n\"734819\";\"Palaion\";\"other\"\n\"734819\";\"Palaión\";\"other\"\n\"734819\";\"Αξός\";\"other\"\n\"734820\";\"Palaiokómi\";\"main\"\n\"734820\";\"Palaiokomi\";\"ascii\"\n\"734820\";\"Palaikomi\";\"other\"\n\"734820\";\"Palaikómi\";\"other\"\n\"734820\";\"Palaiokome\";\"other\"\n\"734820\";\"Παλαιοκώμη\";\"other\"\n\"734821\";\"Palaiokhórion\";\"main\"\n\"734821\";\"Palaiokhorion\";\"ascii\"\n\"734821\";\"Palaiochorion\";\"other\"\n\"734821\";\"Palaiokhori\";\"other\"\n\"734821\";\"Palaiokhóri\";\"other\"\n\"734821\";\"Παλαιοχώριον\";\"other\"\n\"734832\";\"Palaífyton\";\"main\"\n\"734832\";\"Palaifyton\";\"ascii\"\n\"734832\";\"Lozanovon\";\"other\"\n\"734832\";\"Lozánovon\";\"other\"\n\"734832\";\"Palaifiton\";\"other\"\n\"734832\";\"Palaifyto\";\"other\"\n\"734832\";\"Palaiphyton\";\"other\"\n\"734832\";\"Palaífiton\";\"other\"\n\"734832\";\"Palaífyto\";\"other\"\n\"734832\";\"Παλαίφυτον\";\"other\"\n\"734843\";\"Pákhni\";\"main\"\n\"734843\";\"Pakhni\";\"ascii\"\n\"734843\";\"Pachne\";\"other\"\n\"734843\";\"Pasavik\";\"other\"\n\"734843\";\"Pasavík\";\"other\"\n\"734843\";\"Πάχνη\";\"other\"\n\"734854\";\"Ouranópolis\";\"main\"\n\"734854\";\"Ouranopolis\";\"ascii\"\n\"734854\";\"Pirgos\";\"other\"\n\"734854\";\"Prosforion\";\"other\"\n\"734854\";\"Prosforiou\";\"other\"\n\"734854\";\"Prosforíou\";\"other\"\n\"734854\";\"Prosfórion\";\"other\"\n\"734854\";\"Pírgos\";\"other\"\n\"734854\";\"Ουρανόπολις\";\"other\"\n\"734868\";\"Ormília\";\"main\"\n\"734868\";\"Ormilia\";\"ascii\"\n\"734868\";\"Ormylia\";\"other\"\n\"734868\";\"Ορμύλια\";\"other\"\n\"734880\";\"Orestiás\";\"main\"\n\"734880\";\"Orestias\";\"ascii\"\n\"734880\";\"Nea Orestias\";\"other\"\n\"734880\";\"Néa Orestiás\";\"other\"\n\"734880\";\"Orestiada\";\"other\"\n\"734880\";\"Orestiáda\";\"other\"\n\"734880\";\"Ορεστιάς\";\"other\"\n\"734883\";\"Oraiókastron\";\"main\"\n\"734883\";\"Oraiokastron\";\"ascii\"\n\"734883\";\"Dautbali\";\"other\"\n\"734883\";\"Daütbalí\";\"other\"\n\"734883\";\"Oraiokastro\";\"other\"\n\"734883\";\"Oraiókastro\";\"other\"\n\"734883\";\"Oreorastron\";\"other\"\n\"734883\";\"Ωραιόκαστρον\";\"other\"\n\"734906\";\"Nisíon\";\"main\"\n\"734906\";\"Nision\";\"ascii\"\n\"734906\";\"Nesion\";\"other\"\n\"734906\";\"Nisi\";\"other\"\n\"734906\";\"Nisí\";\"other\"\n\"734906\";\"Νησίον\";\"other\"\n\"734915\";\"Nikóklia\";\"main\"\n\"734915\";\"Nikoklia\";\"ascii\"\n\"734915\";\"Nikokleia\";\"other\"\n\"734915\";\"Nikoslavi\";\"other\"\n\"734915\";\"Nikoslávi\";\"other\"\n\"734915\";\"Νικόκλεια\";\"other\"\n\"734919\";\"Nikísiani\";\"main\"\n\"734919\";\"Nikisiani\";\"ascii\"\n\"734919\";\"Nikesiane\";\"other\"\n\"734919\";\"Νικήσιανη\";\"other\"\n\"734924\";\"Nigríta\";\"main\"\n\"734924\";\"Nigrita\";\"ascii\"\n\"734924\";\"Νιγρίτα\";\"other\"\n\"734935\";\"Néos Skopós\";\"main\"\n\"734935\";\"Neos Skopos\";\"ascii\"\n\"734935\";\"Kisiklik\";\"other\"\n\"734935\";\"Kisiklík\";\"other\"\n\"734935\";\"Toumbista\";\"other\"\n\"734935\";\"Toumbísta\";\"other\"\n\"734935\";\"Νέος Σκοπός\";\"other\"\n\"734938\";\"Néos Mylótopos\";\"main\"\n\"734938\";\"Neos Mylotopos\";\"ascii\"\n\"734938\";\"Milotopos\";\"other\"\n\"734938\";\"Milótopos\";\"other\"\n\"734938\";\"Neos Milotopos\";\"other\"\n\"734938\";\"Néos Milótopos\";\"other\"\n\"734938\";\"Voudhrista\";\"other\"\n\"734938\";\"Voúdhrista\";\"other\"\n\"734938\";\"Νέος Μυλότοπος\";\"other\"\n\"734939\";\"Néos Marmarás\";\"main\"\n\"734939\";\"Neos Marmaras\";\"ascii\"\n\"734939\";\"Marmaras\";\"other\"\n\"734939\";\"Marmarás\";\"other\"\n\"734939\";\"Νέος Μαρμαράς\";\"other\"\n\"734943\";\"Néon Soúlion\";\"main\"\n\"734943\";\"Neon Soulion\";\"ascii\"\n\"734943\";\"Neon Souli\";\"other\"\n\"734943\";\"Néon Soúli\";\"other\"\n\"734943\";\"Subashkoi\";\"other\"\n\"734943\";\"Subáshkoï\";\"other\"\n\"734943\";\"Νέον Σούλιον\";\"other\"\n\"734946\";\"Néon Rýsion\";\"main\"\n\"734946\";\"Neon Rysion\";\"ascii\"\n\"734946\";\"Neo Rysi\";\"other\"\n\"734946\";\"Neon Rision\";\"other\"\n\"734946\";\"Neon Rission\";\"other\"\n\"734946\";\"Néo Rýsi\";\"other\"\n\"734946\";\"Néon Rísion\";\"other\"\n\"734946\";\"Néon Ríssion\";\"other\"\n\"734946\";\"Purnar\";\"other\"\n\"734946\";\"Purnár\";\"other\"\n\"734946\";\"Νέον Ρύσιον\";\"other\"\n\"734947\";\"Néon Petrítsion\";\"main\"\n\"734947\";\"Neon Petritsion\";\"ascii\"\n\"734947\";\"Neon Petritsi\";\"other\"\n\"734947\";\"Néon Petrítsi\";\"other\"\n\"734947\";\"Vetren\";\"other\"\n\"734947\";\"Vetrina\";\"other\"\n\"734947\";\"Vétrina\";\"other\"\n\"734947\";\"Νέον Πετρίτσιον\";\"other\"\n\"734957\";\"Néon Agionérion\";\"main\"\n\"734957\";\"Neon Agionerion\";\"ascii\"\n\"734957\";\"Neo Agioneri\";\"other\"\n\"734957\";\"Neon Ayionerion\";\"other\"\n\"734957\";\"Néo Agionéri\";\"other\"\n\"734957\";\"Néon Ayionérion\";\"other\"\n\"734958\";\"Neochoroúda\";\"main\"\n\"734958\";\"Neochorouda\";\"ascii\"\n\"734958\";\"Neokhoroudha\";\"other\"\n\"734958\";\"Neokhoroúdha\";\"other\"\n\"734960\";\"Neokhórion\";\"main\"\n\"734960\";\"Neokhorion\";\"ascii\"\n\"734962\";\"Neokhórion\";\"main\"\n\"734962\";\"Neokhorion\";\"ascii\"\n\"734973\";\"Néoi Epivátai\";\"main\"\n\"734973\";\"Neoi Epivatai\";\"ascii\"\n\"734973\";\"Neoi Epibatai\";\"other\"\n\"734973\";\"Neoi Epibates\";\"other\"\n\"734973\";\"Neoi Epivates\";\"other\"\n\"734973\";\"Néoi Epivátes\";\"other\"\n\"734973\";\"Νέοι Επιβάται\";\"other\"\n\"734973\";\"Νέοι Επιβάτες\";\"other\"\n\"734977\";\"Néa Zíchni\";\"main\"\n\"734977\";\"Nea Zichni\";\"ascii\"\n\"734977\";\"Nea Zichne\";\"other\"\n\"734977\";\"Nea Zikhna\";\"other\"\n\"734977\";\"Nea Zikhni\";\"other\"\n\"734977\";\"Néa Zíkhna\";\"other\"\n\"734977\";\"Néa Zíkhni\";\"other\"\n\"734977\";\"Ziliahova\";\"other\"\n\"734977\";\"Ziliáhova\";\"other\"\n\"734977\";\"Νέα Ζίχνη\";\"other\"\n\"734978\";\"Néa Víssa\";\"main\"\n\"734978\";\"Nea Vissa\";\"ascii\"\n\"734978\";\"Akhirokhorion\";\"other\"\n\"734978\";\"Akhirokhórion\";\"other\"\n\"734978\";\"Nea Byssa\";\"other\"\n\"734978\";\"Nea Visa\";\"other\"\n\"734978\";\"Nea Vissi\";\"other\"\n\"734978\";\"Néa Vísa\";\"other\"\n\"734978\";\"Néa Víssi\";\"other\"\n\"734978\";\"Νέα Βύσσα\";\"other\"\n\"734979\";\"Néa Tríglia\";\"main\"\n\"734979\";\"Nea Triglia\";\"ascii\"\n\"734979\";\"Suflar\";\"other\"\n\"734979\";\"Suflár\";\"other\"\n\"734979\";\"Νέα Τρίγλια\";\"other\"\n\"734987\";\"Néa Sánta\";\"main\"\n\"734987\";\"Nea Santa\";\"ascii\"\n\"734987\";\"Nea Sanda\";\"other\"\n\"734987\";\"Néa Sánda\";\"other\"\n\"734987\";\"Volovot\";\"other\"\n\"734987\";\"Volovót\";\"other\"\n\"734987\";\"Νέα Σάντα\";\"other\"\n\"734990\";\"Néa Potídhaia\";\"main\"\n\"734990\";\"Nea Potidhaia\";\"ascii\"\n\"734990\";\"Nea-Potideja\";\"other\"\n\"734990\";\"Неа-Потидея\";\"other\"\n\"734992\";\"Néa Pláyia\";\"main\"\n\"734992\";\"Nea Playia\";\"ascii\"\n\"734992\";\"Nea Plagia\";\"other\"\n\"734992\";\"Νέα Πλάγια\";\"other\"\n\"734994\";\"Néa Péramos\";\"main\"\n\"734994\";\"Nea Peramos\";\"ascii\"\n\"734995\";\"Néa Pélla\";\"main\"\n\"734995\";\"Nea Pella\";\"ascii\"\n\"734996\";\"Néa Ólinthos\";\"main\"\n\"734996\";\"Nea Olinthos\";\"ascii\"\n\"735001\";\"Néa Michanióna\";\"main\"\n\"735001\";\"Nea Michaniona\";\"ascii\"\n\"735001\";\"Michianio\";\"other\"\n\"735001\";\"Nea Mechaniona\";\"other\"\n\"735001\";\"Nea Mikhaniona\";\"other\"\n\"735001\";\"Néa Mikhanióna\";\"other\"\n\"735001\";\"Νέα Μηχανιώνα\";\"other\"\n\"735002\";\"Néa Mesimvría\";\"main\"\n\"735002\";\"Nea Mesimvria\";\"ascii\"\n\"735002\";\"Nea Mesembria\";\"other\"\n\"735002\";\"Νέα Μεσημβρία\";\"other\"\n\"735003\";\"Néa Málgara\";\"main\"\n\"735003\";\"Nea Malgara\";\"ascii\"\n\"735003\";\"Νέα Μάλγαρα\";\"other\"\n\"735004\";\"Néa Magnisía\";\"main\"\n\"735004\";\"Nea Magnisia\";\"ascii\"\n\"735004\";\"Arapli\";\"other\"\n\"735004\";\"Araplí\";\"other\"\n\"735004\";\"Lakhanokipoi\";\"other\"\n\"735004\";\"Lakhanokipos\";\"other\"\n\"735004\";\"Lakhanókipoi\";\"other\"\n\"735004\";\"Lakhanókipos\";\"other\"\n\"735004\";\"Nea Magnesia\";\"other\"\n\"735004\";\"Νέα Μαγνησία\";\"other\"\n\"735014\";\"Néa Karváli\";\"main\"\n\"735014\";\"Nea Karvali\";\"ascii\"\n\"735014\";\"Nea Karbale\";\"other\"\n\"735014\";\"Tsabranas\";\"other\"\n\"735014\";\"Tsabranás\";\"other\"\n\"735014\";\"Νέα Καρβάλη\";\"other\"\n\"735015\";\"Néa Karyá\";\"main\"\n\"735015\";\"Nea Karya\";\"ascii\"\n\"735015\";\"Nea Karia\";\"other\"\n\"735015\";\"Nea Korna\";\"other\"\n\"735015\";\"Néa Kariá\";\"other\"\n\"735015\";\"Néa Korná\";\"other\"\n\"735015\";\"Νέα Καρυά\";\"other\"\n\"735016\";\"Néa Kallikrátia\";\"main\"\n\"735016\";\"Nea Kallikratia\";\"ascii\"\n\"735016\";\"Nea Kallikrateia\";\"other\"\n\"735016\";\"Νέα Καλλικράτεια\";\"other\"\n\"735017\";\"Néa Irakleítsa\";\"main\"\n\"735017\";\"Nea Irakleitsa\";\"ascii\"\n\"735017\";\"Nea Eraklitsa\";\"other\"\n\"735017\";\"Nea Iraklitsa\";\"other\"\n\"735017\";\"Nea Praklitsa\";\"other\"\n\"735017\";\"Néa Iraklítsa\";\"other\"\n\"735017\";\"Néa Praklitsa\";\"other\"\n\"735017\";\"Νέα Ηρακλίτσα\";\"other\"\n\"735018\";\"Néa Iráklia\";\"main\"\n\"735018\";\"Nea Iraklia\";\"ascii\"\n\"735021\";\"Néa Fókaia\";\"main\"\n\"735021\";\"Nea Fokaia\";\"ascii\"\n\"735021\";\"Ayios Pavlos\";\"other\"\n\"735021\";\"Nea Phokaia\";\"other\"\n\"735021\";\"Áyios Pávlos\";\"other\"\n\"735021\";\"Νέα Φώκαια\";\"other\"\n\"735023\";\"Néa Éfesos\";\"main\"\n\"735023\";\"Nea Efesos\";\"ascii\"\n\"735023\";\"Nea Ephesos\";\"other\"\n\"735023\";\"Spi\";\"other\"\n\"735023\";\"Stipi\";\"other\"\n\"735023\";\"Stoupi\";\"other\"\n\"735023\";\"Stoupion\";\"other\"\n\"735023\";\"Stoupí\";\"other\"\n\"735023\";\"Stoupíon\";\"other\"\n\"735023\";\"Νέα Έφεσος\";\"other\"\n\"735025\";\"Néa Apollonía\";\"main\"\n\"735025\";\"Nea Apollonia\";\"ascii\"\n\"735025\";\"Egri Bujak\";\"other\"\n\"735025\";\"Egrí Buják\";\"other\"\n\"735025\";\"Νέα Απολλωνία\";\"other\"\n\"735030\";\"Náousa\";\"main\"\n\"735030\";\"Naousa\";\"ascii\"\n\"735030\";\"Νάουσα\";\"other\"\n\"735034\";\"Mousthéni\";\"main\"\n\"735034\";\"Moustheni\";\"ascii\"\n\"735034\";\"Mousthene\";\"other\"\n\"735034\";\"Μουσθένη\";\"other\"\n\"735111\";\"Mikrópolis\";\"main\"\n\"735111\";\"Mikropolis\";\"ascii\"\n\"735111\";\"Karlikova\";\"other\"\n\"735111\";\"Karlíkova\";\"other\"\n\"735111\";\"Μικρόπολις\";\"other\"\n\"735115\";\"Mikrón Monastírion\";\"main\"\n\"735115\";\"Mikron Monastirion\";\"ascii\"\n\"735115\";\"Mikro Monastiri\";\"other\"\n\"735115\";\"Mikro Monastirion\";\"other\"\n\"735115\";\"Mikron Monasterion\";\"other\"\n\"735115\";\"Mikró Monastíri\";\"other\"\n\"735115\";\"Mikró Monastírion\";\"other\"\n\"735115\";\"Μικρόν Μοναστήριον\";\"other\"\n\"735135\";\"Mikrókampos\";\"main\"\n\"735135\";\"Mikrokampos\";\"ascii\"\n\"735135\";\"Hojalar\";\"other\"\n\"735135\";\"Hojalár\";\"other\"\n\"735135\";\"Mikrokambos\";\"other\"\n\"735135\";\"Mikrókambos\";\"other\"\n\"735146\";\"Míki\";\"main\"\n\"735146\";\"Miki\";\"ascii\"\n\"735146\";\"Myke\";\"other\"\n\"735146\";\"Μύκη\";\"other\"\n\"735178\";\"Mesopotamiá\";\"main\"\n\"735178\";\"Mesopotamia\";\"ascii\"\n\"735178\";\"Tseteraki\";\"other\"\n\"735178\";\"Tseteráki\";\"other\"\n\"735178\";\"Μεσοποταμιά\";\"other\"\n\"735196\";\"Mesimérion\";\"main\"\n\"735196\";\"Mesimerion\";\"ascii\"\n\"735196\";\"Mesemerion\";\"other\"\n\"735196\";\"Mesimeri\";\"other\"\n\"735196\";\"Mesiméri\";\"other\"\n\"735196\";\"Μεσημέριον\";\"other\"\n\"735215\";\"Meneméni\";\"main\"\n\"735215\";\"Menemeni\";\"ascii\"\n\"735215\";\"Nea Mainemeni\";\"other\"\n\"735215\";\"Nea Manemeni\";\"other\"\n\"735215\";\"Néa Maineméni\";\"other\"\n\"735220\";\"Melíti\";\"main\"\n\"735220\";\"Meliti\";\"ascii\"\n\"735220\";\"Melite\";\"other\"\n\"735220\";\"Vostarani\";\"other\"\n\"735220\";\"Vostaráni\";\"other\"\n\"735220\";\"Μελίτη\";\"other\"\n\"735231\";\"Melissochórion\";\"main\"\n\"735231\";\"Melissochorion\";\"ascii\"\n\"735231\";\"Baltza\";\"other\"\n\"735231\";\"Báltza\";\"other\"\n\"735231\";\"Melissochori\";\"other\"\n\"735231\";\"Melissochóri\";\"other\"\n\"735231\";\"Melissokhorion\";\"other\"\n\"735231\";\"Melissokhórion\";\"other\"\n\"735235\";\"Melíki\";\"main\"\n\"735235\";\"Meliki\";\"ascii\"\n\"735235\";\"Melike\";\"other\"\n\"735235\";\"Μελίκη\";\"other\"\n\"735251\";\"Megálos Prínos\";\"main\"\n\"735251\";\"Megalos Prinos\";\"ascii\"\n\"735251\";\"Mega Kazavition\";\"other\"\n\"735251\";\"Megalon Kazavition\";\"other\"\n\"735251\";\"Megálon Kazavítion\";\"other\"\n\"735251\";\"Méga Kazavítion\";\"other\"\n\"735251\";\"Prinos\";\"other\"\n\"735251\";\"Prínos\";\"other\"\n\"735264\";\"Megáli Panayía\";\"main\"\n\"735264\";\"Megali Panayia\";\"ascii\"\n\"735264\";\"Megale Panagia\";\"other\"\n\"735264\";\"Revenikia\";\"other\"\n\"735264\";\"Reveníkia\";\"other\"\n\"735264\";\"Μεγάλη Παναγία\";\"other\"\n\"735277\";\"Mavrovoúnion\";\"main\"\n\"735277\";\"Mavrovounion\";\"ascii\"\n\"735277\";\"Mavrovouni\";\"other\"\n\"735277\";\"Mavrovoúni\";\"other\"\n\"735277\";\"Trebolits\";\"other\"\n\"735277\";\"Tripolis\";\"other\"\n\"735277\";\"Trébolits\";\"other\"\n\"735277\";\"Trípolis\";\"other\"\n\"735318\";\"Marína\";\"main\"\n\"735318\";\"Marina\";\"ascii\"\n\"735318\";\"Μαρίνα\";\"other\"\n\"735327\";\"Maniákoi\";\"main\"\n\"735327\";\"Maniakoi\";\"ascii\"\n\"735327\";\"Maniaki\";\"other\"\n\"735327\";\"Maniáki\";\"other\"\n\"735327\";\"Μανιάκοι\";\"other\"\n\"735338\";\"Mándalon\";\"main\"\n\"735338\";\"Mandalon\";\"ascii\"\n\"735338\";\"Mandalo\";\"other\"\n\"735338\";\"Mandalovon\";\"other\"\n\"735338\";\"Mandhalon\";\"other\"\n\"735338\";\"Mandhalos\";\"other\"\n\"735338\";\"Mandálovon\";\"other\"\n\"735338\";\"Mándalo\";\"other\"\n\"735338\";\"Mándhalon\";\"other\"\n\"735338\";\"Mándhalos\";\"other\"\n\"735338\";\"Μάνδαλον\";\"other\"\n\"735342\";\"Díon\";\"main\"\n\"735342\";\"Dion\";\"ascii\"\n\"735342\";\"Ayios Dhimitrios\";\"other\"\n\"735342\";\"Malathria\";\"other\"\n\"735342\";\"Malathriá\";\"other\"\n\"735342\";\"Malatrja\";\"other\"\n\"735342\";\"Δίον\";\"other\"\n\"735347\";\"Makrochórion\";\"main\"\n\"735347\";\"Makrochorion\";\"ascii\"\n\"735347\";\"Makrochori\";\"other\"\n\"735347\";\"Makrochóri\";\"other\"\n\"735347\";\"Makrokhori\";\"other\"\n\"735347\";\"Makrokhorion\";\"other\"\n\"735347\";\"Makrokhóri\";\"other\"\n\"735347\";\"Makrokhórion\";\"other\"\n\"735347\";\"Mikrogouzi\";\"other\"\n\"735347\";\"Mikrogouzion\";\"other\"\n\"735347\";\"Mikrogoúzi\";\"other\"\n\"735347\";\"Mikrogoúzion\";\"other\"\n\"735348\";\"Makrýgialos\";\"main\"\n\"735348\";\"Makrygialos\";\"ascii\"\n\"735348\";\"Makriyialos\";\"other\"\n\"735348\";\"Makríyialos\";\"other\"\n\"735348\";\"Μακρύγιαλος\";\"other\"\n\"735365\";\"Loutrós\";\"main\"\n\"735365\";\"Loutros\";\"ascii\"\n\"735365\";\"Λουτρός\";\"other\"\n\"735375\";\"Lófos\";\"main\"\n\"735375\";\"Lofos\";\"ascii\"\n\"735375\";\"Lophos\";\"other\"\n\"735375\";\"Ziaziakon\";\"other\"\n\"735375\";\"Ziáziakon\";\"other\"\n\"735375\";\"Zjazjakon\";\"other\"\n\"735375\";\"Λόφος\";\"other\"\n\"735390\";\"Livádion\";\"main\"\n\"735390\";\"Livadion\";\"ascii\"\n\"735390\";\"Libadi\";\"other\"\n\"735390\";\"Livadhion\";\"other\"\n\"735390\";\"Livadi\";\"other\"\n\"735390\";\"Livádhion\";\"other\"\n\"735390\";\"Livádi\";\"other\"\n\"735390\";\"Λιβάδι\";\"other\"\n\"735393\";\"Livadherón\";\"main\"\n\"735393\";\"Livadheron\";\"ascii\"\n\"735393\";\"Libaderon\";\"other\"\n\"735393\";\"Livaderon\";\"other\"\n\"735393\";\"Livaderón\";\"other\"\n\"735393\";\"Mokron Khortolivadho\";\"other\"\n\"735393\";\"Mókron Khortolívadho\";\"other\"\n\"735393\";\"Λιβαδερόν\";\"other\"\n\"735399\";\"Litóchoron\";\"main\"\n\"735399\";\"Litochoron\";\"ascii\"\n\"735399\";\"Letokhori\";\"other\"\n\"735399\";\"Litochoro\";\"other\"\n\"735399\";\"Litohoron\";\"other\"\n\"735399\";\"Litokhoron\";\"other\"\n\"735399\";\"Litóchoro\";\"other\"\n\"735399\";\"Litókhoron\";\"other\"\n\"735399\";\"Λιτόχωρο\";\"other\"\n\"735399\";\"Λιτόχωρον\";\"other\"\n\"735400\";\"Lití\";\"main\"\n\"735400\";\"Liti\";\"ascii\"\n\"735400\";\"Aivation\";\"other\"\n\"735400\";\"Aïvátion\";\"other\"\n\"735400\";\"Lete\";\"other\"\n\"735400\";\"Λητή\";\"other\"\n\"735418\";\"Limenária\";\"main\"\n\"735418\";\"Limenaria\";\"ascii\"\n\"735418\";\"Λιμενάρια\";\"other\"\n\"735430\";\"Líkion\";\"main\"\n\"735430\";\"Likion\";\"ascii\"\n\"735430\";\"Lykeion\";\"other\"\n\"735430\";\"Λύκειον\";\"other\"\n\"735434\";\"Leianovérgion\";\"main\"\n\"735434\";\"Leianovergion\";\"ascii\"\n\"735434\";\"Leianovergi\";\"other\"\n\"735434\";\"Leianovérgi\";\"other\"\n\"735434\";\"Lianobergion\";\"other\"\n\"735434\";\"Lianoverion\";\"other\"\n\"735434\";\"Lianoveryi\";\"other\"\n\"735434\";\"Lianoveryion\";\"other\"\n\"735434\";\"Lianovérion\";\"other\"\n\"735434\";\"Lianovéryi\";\"other\"\n\"735434\";\"Lianovéryion\";\"other\"\n\"735434\";\"Λιανοβέργιον\";\"other\"\n\"735472\";\"Lagyná\";\"main\"\n\"735472\";\"Lagyna\";\"ascii\"\n\"735472\";\"Laina\";\"other\"\n\"735472\";\"Layina\";\"other\"\n\"735472\";\"Layiná\";\"other\"\n\"735472\";\"Laïná\";\"other\"\n\"735474\";\"Lávara\";\"main\"\n\"735474\";\"Lavara\";\"ascii\"\n\"735474\";\"Labara\";\"other\"\n\"735474\";\"Λάβαρα\";\"other\"\n\"735481\";\"Lagkadás\";\"main\"\n\"735481\";\"Lagkadas\";\"ascii\"\n\"735481\";\"Lankadas\";\"other\"\n\"735481\";\"Λαγκαδάς\";\"other\"\n\"735490\";\"Lákkoma\";\"main\"\n\"735490\";\"Lakkoma\";\"ascii\"\n\"735490\";\"Akmanjali\";\"other\"\n\"735490\";\"Akmanjalí\";\"other\"\n\"735490\";\"Λάκκωμα\";\"other\"\n\"735497\";\"Lagós\";\"main\"\n\"735497\";\"Lagos\";\"ascii\"\n\"735497\";\"Λαγός\";\"other\"\n\"735521\";\"Krókos\";\"main\"\n\"735521\";\"Krokos\";\"ascii\"\n\"735521\";\"Govlitsa\";\"other\"\n\"735521\";\"Govlítsa\";\"other\"\n\"735521\";\"Κρόκος\";\"other\"\n\"735523\";\"Krithiá\";\"main\"\n\"735523\";\"Krithia\";\"ascii\"\n\"735523\";\"Krithea\";\"other\"\n\"735523\";\"Krithéa\";\"other\"\n\"735523\";\"Yeni-Koi\";\"other\"\n\"735523\";\"Yení-Koḯ\";\"other\"\n\"735523\";\"Κριθιά\";\"other\"\n\"735526\";\"Kristóni\";\"main\"\n\"735526\";\"Kristoni\";\"ascii\"\n\"735526\";\"Krestone\";\"other\"\n\"735526\";\"Kriston\";\"other\"\n\"735526\";\"Kristón\";\"other\"\n\"735526\";\"Sari-Gol\";\"other\"\n\"735526\";\"Sarí-Gol\";\"other\"\n\"735526\";\"Κρηστώνη\";\"other\"\n\"735546\";\"Krýa Vrýsi\";\"main\"\n\"735546\";\"Krya Vrysi\";\"ascii\"\n\"735546\";\"Kria Vrisi\";\"other\"\n\"735546\";\"Kría Vrísi\";\"other\"\n\"735546\";\"Plasna\";\"other\"\n\"735546\";\"Plásna\";\"other\"\n\"735563\";\"Kozáni\";\"main\"\n\"735563\";\"Kozani\";\"ascii\"\n\"735563\";\"Kozane\";\"other\"\n\"735563\";\"Kozhani\";\"other\"\n\"735563\";\"Κοζάνη\";\"other\"\n\"735563\";\"Кожани\";\"other\"\n\"735563\";\"Козани\";\"other\"\n\"735581\";\"Kouloúra\";\"main\"\n\"735581\";\"Kouloura\";\"ascii\"\n\"735581\";\"Κουλούρα\";\"other\"\n\"735588\";\"Koufália\";\"main\"\n\"735588\";\"Koufalia\";\"ascii\"\n\"735588\";\"Kouphalia\";\"other\"\n\"735588\";\"Κουφάλια\";\"other\"\n\"735612\";\"Kormísta\";\"main\"\n\"735612\";\"Kormista\";\"ascii\"\n\"735612\";\"Κορμίστα\";\"other\"\n\"735613\";\"Korisós\";\"main\"\n\"735613\";\"Korisos\";\"ascii\"\n\"735613\";\"Gorentsi\";\"other\"\n\"735613\";\"Goréntsi\";\"other\"\n\"735613\";\"Konisos\";\"other\"\n\"735613\";\"Konisós\";\"other\"\n\"735613\";\"Koresos\";\"other\"\n\"735613\";\"Korissos\";\"other\"\n\"735613\";\"Korissós\";\"other\"\n\"735613\";\"Κορησός\";\"other\"\n\"735615\";\"Korinós\";\"main\"\n\"735615\";\"Korinos\";\"ascii\"\n\"735615\";\"Κορινός\";\"other\"\n\"735620\";\"Koryfí\";\"main\"\n\"735620\";\"Koryfi\";\"ascii\"\n\"735620\";\"Korifi\";\"other\"\n\"735620\";\"Korifí\";\"other\"\n\"735630\";\"Kopanós\";\"main\"\n\"735630\";\"Kopanos\";\"ascii\"\n\"735630\";\"Ano Kopanos\";\"other\"\n\"735630\";\"Áno Kopanós\";\"other\"\n\"735630\";\"Κοπανός\";\"other\"\n\"735636\";\"Kónitsa\";\"main\"\n\"735636\";\"Konitsa\";\"ascii\"\n\"735636\";\"Κόνιτσα\";\"other\"\n\"735638\";\"Kontariótissa\";\"main\"\n\"735638\";\"Kontariotissa\";\"ascii\"\n\"735638\";\"Kondariotissa\";\"other\"\n\"735638\";\"Kondariótissa\";\"other\"\n\"735638\";\"Koundouriotissa\";\"other\"\n\"735638\";\"Koundouriótissa\";\"other\"\n\"735638\";\"Κονταριώτισσα\";\"other\"\n\"735640\";\"Komotiní\";\"main\"\n\"735640\";\"Komotini\";\"ascii\"\n\"735640\";\"Gjumjurdzhina\";\"other\"\n\"735640\";\"Guemuelcine\";\"other\"\n\"735640\";\"Gumulcine\";\"other\"\n\"735640\";\"Gumuljina\";\"other\"\n\"735640\";\"Gumuljína\";\"other\"\n\"735640\";\"Gümülcine\";\"other\"\n\"735640\";\"Komotene\";\"other\"\n\"735640\";\"Komotina\";\"other\"\n\"735640\";\"Komotine\";\"other\"\n\"735640\";\"Komotinē\";\"other\"\n\"735640\";\"Komotēnē\";\"other\"\n\"735640\";\"Κομοτηνή\";\"other\"\n\"735640\";\"Гюмюрджина\";\"other\"\n\"735643\";\"Komniná\";\"main\"\n\"735643\";\"Komnina\";\"ascii\"\n\"735643\";\"Komnena\";\"other\"\n\"735643\";\"Komninon\";\"other\"\n\"735643\";\"Komninón\";\"other\"\n\"735643\";\"Uchana\";\"other\"\n\"735643\";\"Úchana\";\"other\"\n\"735643\";\"Κομνηνά\";\"other\"\n\"735651\";\"Kolkhikón\";\"main\"\n\"735651\";\"Kolkhikon\";\"ascii\"\n\"735651\";\"Balaftsa\";\"other\"\n\"735651\";\"Baláftsa\";\"other\"\n\"735651\";\"Kolchikon\";\"other\"\n\"735651\";\"Κολχικόν\";\"other\"\n\"735654\";\"Kolindrós\";\"main\"\n\"735654\";\"Kolindros\";\"ascii\"\n\"735654\";\"Kolindhro\";\"other\"\n\"735654\";\"Kolindhró\";\"other\"\n\"735654\";\"Κολινδρός\";\"other\"\n\"735661\";\"Kokkinókhoma\";\"main\"\n\"735661\";\"Kokkinokhoma\";\"ascii\"\n\"735661\";\"Kinali\";\"other\"\n\"735661\";\"Kokkinochoma\";\"other\"\n\"735661\";\"Kínali\";\"other\"\n\"735661\";\"Κοκκινόχωμα\";\"other\"\n\"735674\";\"Koímisis\";\"main\"\n\"735674\";\"Koimisis\";\"ascii\"\n\"735674\";\"Koimesis\";\"other\"\n\"735674\";\"Spatovon\";\"other\"\n\"735674\";\"Spátovon\";\"other\"\n\"735674\";\"Κοίμησις\";\"other\"\n\"735679\";\"Koíla\";\"main\"\n\"735679\";\"Koila\";\"ascii\"\n\"735679\";\"Islamli\";\"other\"\n\"735679\";\"Islamlí\";\"other\"\n\"735679\";\"Lamnidhes\";\"other\"\n\"735679\";\"Lamnídhes\";\"other\"\n\"735679\";\"Κοίλα\";\"other\"\n\"735682\";\"Klítos\";\"main\"\n\"735682\";\"Klitos\";\"ascii\"\n\"735682\";\"Haidarli\";\"other\"\n\"735682\";\"Haïdarlí\";\"other\"\n\"735682\";\"Kleitos\";\"other\"\n\"735682\";\"Κλείτος\";\"other\"\n\"735695\";\"Kleidíon\";\"main\"\n\"735695\";\"Kleidion\";\"ascii\"\n\"735695\";\"Kleidi\";\"other\"\n\"735695\";\"Kleidí\";\"other\"\n\"735695\";\"Klidhi\";\"other\"\n\"735695\";\"Klidhion\";\"other\"\n\"735695\";\"Klidhí\";\"other\"\n\"735695\";\"Klidhíon\";\"other\"\n\"735702\";\"Kítros\";\"main\"\n\"735702\";\"Kitros\";\"ascii\"\n\"735702\";\"Pidhna\";\"other\"\n\"735702\";\"Pidna\";\"other\"\n\"735702\";\"Pídhna\";\"other\"\n\"735702\";\"Κίτρος\";\"other\"\n\"735714\";\"Kíria\";\"main\"\n\"735714\";\"Kiria\";\"ascii\"\n\"735714\";\"Kyria\";\"other\"\n\"735714\";\"Organji\";\"other\"\n\"735714\";\"Organjion\";\"other\"\n\"735714\";\"Organjí\";\"other\"\n\"735714\";\"Organjíon\";\"other\"\n\"735714\";\"Organtzi\";\"other\"\n\"735714\";\"Organtzí\";\"other\"\n\"735714\";\"Κύρια\";\"other\"\n\"735720\";\"Kiprínos\";\"main\"\n\"735720\";\"Kiprinos\";\"ascii\"\n\"735720\";\"Kyprinos\";\"other\"\n\"735720\";\"Κυπρίνος\";\"other\"\n\"735731\";\"Kimméria\";\"main\"\n\"735731\";\"Kimmeria\";\"ascii\"\n\"735731\";\"Κιμμέρια\";\"other\"\n\"735732\";\"Kýmina\";\"main\"\n\"735732\";\"Kymina\";\"ascii\"\n\"735732\";\"Kimina\";\"other\"\n\"735732\";\"Kímina\";\"other\"\n\"735732\";\"Yunjidhes\";\"other\"\n\"735732\";\"Yunjídhes\";\"other\"\n\"735732\";\"Κύμινα\";\"other\"\n\"735736\";\"Kilkís\";\"main\"\n\"735736\";\"Kilkis\";\"ascii\"\n\"735736\";\"Kukush\";\"other\"\n\"735736\";\"Nomos Kilkis\";\"other\"\n\"735736\";\"Prefectura Kilkis\";\"other\"\n\"735736\";\"Prefektura Kukush\";\"other\"\n\"735736\";\"Κιλκίς\";\"other\"\n\"735736\";\"Νομός Κιλκίς\";\"other\"\n\"735736\";\"Кукуш\";\"other\"\n\"735736\";\"Префектура Кукуш\";\"other\"\n\"735747\";\"Chrysoúpolis\";\"main\"\n\"735747\";\"Chrysoupolis\";\"ascii\"\n\"735747\";\"Chrysoupoli\";\"other\"\n\"735747\";\"Chrysoúpoli\";\"other\"\n\"735747\";\"Khrisoupolis\";\"other\"\n\"735747\";\"Khrisoúpolis\";\"other\"\n\"735747\";\"Khrysoupolis\";\"other\"\n\"735747\";\"Sapaioi\";\"other\"\n\"735747\";\"Sapaíoi\";\"other\"\n\"735747\";\"Sari Saban\";\"other\"\n\"735747\";\"Sarí Sabán\";\"other\"\n\"735749\";\"Khrisón\";\"main\"\n\"735749\";\"Khrison\";\"ascii\"\n\"735749\";\"Chryson\";\"other\"\n\"735749\";\"Khriso\";\"other\"\n\"735749\";\"Khrisos\";\"other\"\n\"735749\";\"Khrisó\";\"other\"\n\"735749\";\"Khrisós\";\"other\"\n\"735749\";\"Topoliani\";\"other\"\n\"735749\";\"Topóliani\";\"other\"\n\"735749\";\"Χρυσόν\";\"other\"\n\"735750\";\"Khrisokhórion\";\"main\"\n\"735750\";\"Khrisokhorion\";\"ascii\"\n\"735750\";\"Chrysochorion\";\"other\"\n\"735750\";\"Khrisokhori\";\"other\"\n\"735750\";\"Khrisokhóri\";\"other\"\n\"735750\";\"Organjilar\";\"other\"\n\"735750\";\"Organjilár\";\"other\"\n\"735750\";\"Χρυσοχώριον\";\"other\"\n\"735751\";\"Khrisokhórafa\";\"main\"\n\"735751\";\"Khrisokhorafa\";\"ascii\"\n\"735751\";\"Chrysochorapha\";\"other\"\n\"735751\";\"Haznatar\";\"other\"\n\"735751\";\"Haznatár\";\"other\"\n\"735751\";\"Χρυσοχώραφα\";\"other\"\n\"735764\";\"Khortiátis\";\"main\"\n\"735764\";\"Khortiatis\";\"ascii\"\n\"735764\";\"Chortiates\";\"other\"\n\"735764\";\"Χορτιάτης\";\"other\"\n\"735769\";\"Khoristí\";\"main\"\n\"735769\";\"Khoristi\";\"ascii\"\n\"735769\";\"Chatalja\";\"other\"\n\"735769\";\"Chatálja\";\"other\"\n\"735769\";\"Choriste\";\"other\"\n\"735769\";\"Χωριστή\";\"other\"\n\"735794\";\"Kharopón\";\"main\"\n\"735794\";\"Kharopon\";\"ascii\"\n\"735794\";\"Charopon\";\"other\"\n\"735794\";\"Karopo\";\"other\"\n\"735794\";\"Karopó\";\"other\"\n\"735794\";\"Kharopo\";\"other\"\n\"735794\";\"Kharopó\";\"other\"\n\"735794\";\"Radovon\";\"other\"\n\"735794\";\"Rádovon\";\"other\"\n\"735794\";\"Χαροπόν\";\"other\"\n\"735803\";\"Chalkidón\";\"main\"\n\"735803\";\"Chalkidon\";\"ascii\"\n\"735803\";\"Chalkidona\";\"other\"\n\"735803\";\"Chalkidóna\";\"other\"\n\"735803\";\"Khalkidhon\";\"other\"\n\"735803\";\"Khalkidhón\";\"other\"\n\"735803\";\"Nea Khalkidhon\";\"other\"\n\"735803\";\"Néa Khalkidhón\";\"other\"\n\"735813\";\"Kerkíni\";\"main\"\n\"735813\";\"Kerkini\";\"ascii\"\n\"735813\";\"Butkovon\";\"other\"\n\"735813\";\"Bútkovon\";\"other\"\n\"735813\";\"Kerkine\";\"other\"\n\"735813\";\"Κερκίνη\";\"other\"\n\"735821\";\"Keramotí\";\"main\"\n\"735821\";\"Keramoti\";\"ascii\"\n\"735821\";\"Keramote\";\"other\"\n\"735821\";\"Κεραμοτή\";\"other\"\n\"735821\";\"Κεραμωτή\";\"other\"\n\"735839\";\"Kefalóvryson\";\"main\"\n\"735839\";\"Kefalovryson\";\"ascii\"\n\"735839\";\"Kefalovrison\";\"other\"\n\"735839\";\"Kefalovryso\";\"other\"\n\"735839\";\"Kefalóvrison\";\"other\"\n\"735839\";\"Kefalóvryso\";\"other\"\n\"735839\";\"Metzitie\";\"other\"\n\"735839\";\"Metzitié\";\"other\"\n\"735852\";\"Kavíli\";\"main\"\n\"735852\";\"Kavili\";\"ascii\"\n\"735852\";\"Kabyle\";\"other\"\n\"735852\";\"Καβύλη\";\"other\"\n\"735856\";\"Kavallárion\";\"main\"\n\"735856\";\"Kavallarion\";\"ascii\"\n\"735856\";\"Kaballarion\";\"other\"\n\"735856\";\"Kavalari\";\"other\"\n\"735856\";\"Kavalári\";\"other\"\n\"735856\";\"Καβαλλάριον\";\"other\"\n\"735861\";\"Kavála\";\"main\"\n\"735861\";\"Kavala\";\"ascii\"\n\"735861\";\"Cavala\";\"other\"\n\"735861\";\"Cavalla\";\"other\"\n\"735861\";\"Kabala\";\"other\"\n\"735861\";\"Kaballa\";\"other\"\n\"735861\";\"Kavalla\";\"other\"\n\"735861\";\"Kaválla\";\"other\"\n\"735861\";\"Kawala\";\"other\"\n\"735861\";\"Neapolis\";\"other\"\n\"735861\";\"ka wa la\";\"other\"\n\"735861\";\"qwlt\";\"other\"\n\"735861\";\"Καβάλα\";\"other\"\n\"735861\";\"Кавала\";\"other\"\n\"735861\";\"قولة\";\"other\"\n\"735861\";\"卡瓦拉\";\"other\"\n\"735872\";\"Káto Skholárion\";\"main\"\n\"735872\";\"Kato Skholarion\";\"ascii\"\n\"735872\";\"Adali\";\"other\"\n\"735872\";\"Adalí\";\"other\"\n\"735872\";\"Kato Scholarion\";\"other\"\n\"735872\";\"Κάτω Σχολάριον\";\"other\"\n\"735881\";\"Káto Miléa\";\"main\"\n\"735881\";\"Kato Milea\";\"ascii\"\n\"735881\";\"Kato Melea\";\"other\"\n\"735881\";\"Kato Milia\";\"other\"\n\"735881\";\"Káto Miliá\";\"other\"\n\"735881\";\"Κάτω Μέλεα\";\"other\"\n\"735886\";\"Káto Loutrákion\";\"main\"\n\"735886\";\"Kato Loutrakion\";\"ascii\"\n\"735886\";\"Kato Loutraki\";\"other\"\n\"735886\";\"Kato Pozar\";\"other\"\n\"735886\";\"Káto Loutráki\";\"other\"\n\"735886\";\"Káto Pózar\";\"other\"\n\"735888\";\"Lipochórion\";\"main\"\n\"735888\";\"Lipochorion\";\"ascii\"\n\"735888\";\"Kato Lipochori\";\"other\"\n\"735888\";\"Kato Lipochorion\";\"other\"\n\"735888\";\"Kato Lipokhorion\";\"other\"\n\"735888\";\"Káto Lipochóri\";\"other\"\n\"735888\";\"Káto Lipochórion\";\"other\"\n\"735888\";\"Káto Lipokhórion\";\"other\"\n\"735902\";\"Káto Kamíla\";\"main\"\n\"735902\";\"Kato Kamila\";\"ascii\"\n\"735902\";\"Kato Kamela\";\"other\"\n\"735902\";\"Κάτω Καμήλα\";\"other\"\n\"735914\";\"Kateríni\";\"main\"\n\"735914\";\"Katerini\";\"ascii\"\n\"735914\";\"Aikaterini\";\"other\"\n\"735914\";\"Aikateríni\";\"other\"\n\"735914\";\"Katerina\";\"other\"\n\"735914\";\"Katerine\";\"other\"\n\"735914\";\"Κατερίνη\";\"other\"\n\"735914\";\"Катерини\";\"other\"\n\"735927\";\"Kastoriá\";\"main\"\n\"735927\";\"Kastoria\";\"ascii\"\n\"735927\";\"Kesrie\";\"other\"\n\"735927\";\"Kesriye\";\"other\"\n\"735927\";\"Nomos Kastorias\";\"other\"\n\"735927\";\"kostur\";\"other\"\n\"735927\";\"Καστοριά\";\"other\"\n\"735927\";\"Καστορια\";\"other\"\n\"735927\";\"Νομός Καστοριάς\";\"other\"\n\"735927\";\"Костур\";\"other\"\n\"735938\";\"Kastanéai\";\"main\"\n\"735938\";\"Kastaneai\";\"ascii\"\n\"735938\";\"Καστανέαι\";\"other\"\n\"735954\";\"Karperí\";\"main\"\n\"735954\";\"Karperi\";\"ascii\"\n\"735954\";\"Elsiani\";\"other\"\n\"735954\";\"Karpere\";\"other\"\n\"735954\";\"Élsiani\";\"other\"\n\"735954\";\"Καρπερή\";\"other\"\n\"735960\";\"Karítsa\";\"main\"\n\"735960\";\"Karitsa\";\"ascii\"\n\"735960\";\"Karica\";\"other\"\n\"735960\";\"Καρίτσα\";\"other\"\n\"735961\";\"Karyótissa\";\"main\"\n\"735961\";\"Karyotissa\";\"ascii\"\n\"735961\";\"Kariotissa\";\"other\"\n\"735961\";\"Kariótissa\";\"other\"\n\"735961\";\"Καρυώτισσα\";\"other\"\n\"735972\";\"Karyes\";\"main\"\n\"735972\";\"Kariai\";\"other\"\n\"735972\";\"Kariaí\";\"other\"\n\"735972\";\"Karyaes\";\"other\"\n\"735972\";\"Καρυές\";\"other\"\n\"735975\";\"Kardiá\";\"main\"\n\"735975\";\"Kardia\";\"ascii\"\n\"735975\";\"Karajohali\";\"other\"\n\"735975\";\"Karajohalí\";\"other\"\n\"735975\";\"Kardhia\";\"other\"\n\"735975\";\"Kardhiá\";\"other\"\n\"735975\";\"Καρδιά\";\"other\"\n\"736014\";\"Kampánis\";\"main\"\n\"736014\";\"Kampanis\";\"ascii\"\n\"736014\";\"Kambanis\";\"other\"\n\"736014\";\"Kambánis\";\"other\"\n\"736014\";\"Kampanes\";\"other\"\n\"736014\";\"Karaja Kadi\";\"other\"\n\"736014\";\"Karajá Kadí\";\"other\"\n\"736014\";\"Valtoi\";\"other\"\n\"736014\";\"Váltoi\";\"other\"\n\"736014\";\"Καμπάνης\";\"other\"\n\"736017\";\"Kamariótissa\";\"main\"\n\"736017\";\"Kamariotissa\";\"ascii\"\n\"736017\";\"Καμαριώτισσα\";\"other\"\n\"736024\";\"Kalós Agrós\";\"main\"\n\"736024\";\"Kalos Agros\";\"ascii\"\n\"736024\";\"Osmanitsa\";\"other\"\n\"736024\";\"Osmanítsa\";\"other\"\n\"736024\";\"Καλός Αγρός\";\"other\"\n\"736029\";\"Kalochórion\";\"main\"\n\"736029\";\"Kalochorion\";\"ascii\"\n\"736029\";\"Kalochori\";\"other\"\n\"736029\";\"Kalochóri\";\"other\"\n\"736029\";\"Kalokhorion\";\"other\"\n\"736029\";\"Kalokhórion\";\"other\"\n\"736029\";\"Kaskarika\";\"other\"\n\"736029\";\"Kaskaríka\";\"other\"\n\"736034\";\"Kallithéa\";\"main\"\n\"736034\";\"Kallithea\";\"ascii\"\n\"736039\";\"Kallithéa\";\"main\"\n\"736039\";\"Kallithea\";\"ascii\"\n\"736039\";\"Kalitea\";\"other\"\n\"736039\";\"Kallifeja\";\"other\"\n\"736039\";\"Vromeri\";\"other\"\n\"736039\";\"Vromerí\";\"other\"\n\"736039\";\"Каллифея\";\"other\"\n\"736049\";\"Kallífitos\";\"main\"\n\"736049\";\"Kallifitos\";\"ascii\"\n\"736049\";\"Kallifiton\";\"other\"\n\"736049\";\"Kalliphytos\";\"other\"\n\"736049\";\"Kallífiton\";\"other\"\n\"736049\";\"Ravika\";\"other\"\n\"736049\";\"Ravíka\";\"other\"\n\"736049\";\"Καλλίφυτος\";\"other\"\n\"736051\";\"Kalí Vrísi\";\"main\"\n\"736051\";\"Kali Vrisi\";\"ascii\"\n\"736051\";\"Gornitsa\";\"other\"\n\"736051\";\"Górnitsa\";\"other\"\n\"736051\";\"Kale Bryse\";\"other\"\n\"736051\";\"Kali Vrisis\";\"other\"\n\"736051\";\"Kalí Vrísis\";\"other\"\n\"736051\";\"Καλή Βρύση\";\"other\"\n\"736056\";\"Kalívia Poliyírou\";\"main\"\n\"736056\";\"Kalivia Poliyirou\";\"ascii\"\n\"736056\";\"Kalivai Poliyirou\";\"other\"\n\"736056\";\"Kalybai Polygyrou\";\"other\"\n\"736056\";\"Kalívai Poliyírou\";\"other\"\n\"736056\";\"Καλύβαι Πολυγύρου\";\"other\"\n\"736058\";\"Ágios Spyrídon\";\"main\"\n\"736058\";\"Agios Spyridon\";\"ascii\"\n\"736058\";\"Kalivia Kondariotissis\";\"other\"\n\"736058\";\"Kalivia Koundouriotissas\";\"other\"\n\"736058\";\"Kalivia Koundouriotissis\";\"other\"\n\"736058\";\"Kalivija Kontariotisis\";\"other\"\n\"736058\";\"Kalyvia Kontariotissis\";\"other\"\n\"736058\";\"Kalívia Kondariotíssis\";\"other\"\n\"736058\";\"Kalívia Koundouriotíssis\";\"other\"\n\"736058\";\"Kalívia Koundouriótissas\";\"other\"\n\"736058\";\"Kalývia Kontariotíssis\";\"other\"\n\"736058\";\"Kolibi na Kontariotisa\";\"other\"\n\"736065\";\"Kalývia\";\"main\"\n\"736065\";\"Kalyvia\";\"ascii\"\n\"736065\";\"Kalivia\";\"other\"\n\"736065\";\"Kalívia\";\"other\"\n\"736071\";\"Kalí\";\"main\"\n\"736071\";\"Kali\";\"ascii\"\n\"736071\";\"Kale\";\"other\"\n\"736071\";\"Kalendra\";\"other\"\n\"736071\";\"Kaléndra\";\"other\"\n\"736071\";\"Καλή\";\"other\"\n\"736082\";\"Kalambákion\";\"main\"\n\"736082\";\"Kalambakion\";\"ascii\"\n\"736082\";\"Kalabaki\";\"other\"\n\"736082\";\"Kalabakion\";\"other\"\n\"736082\";\"Kalabáki\";\"other\"\n\"736082\";\"Kalabákion\";\"other\"\n\"736082\";\"Kalambaki\";\"other\"\n\"736082\";\"Kalambáki\";\"other\"\n\"736082\";\"Kalampakion\";\"other\"\n\"736082\";\"Καλαμπάκιον\";\"other\"\n\"736083\";\"Kalamariá\";\"main\"\n\"736083\";\"Kalamaria\";\"ascii\"\n\"736083\";\"Kalamarija\";\"other\"\n\"736083\";\"Kalamarya\";\"other\"\n\"736083\";\"Καλαμαριά\";\"other\"\n\"736083\";\"Каламария\";\"other\"\n\"736102\";\"Iroïkón\";\"main\"\n\"736102\";\"Iroikon\";\"ascii\"\n\"736102\";\"Lechobon\";\"other\"\n\"736102\";\"Lekhovon\";\"other\"\n\"736102\";\"Lékhovon\";\"other\"\n\"736102\";\"Λέχοβον\";\"other\"\n\"736130\";\"Ierissós\";\"main\"\n\"736130\";\"Ierissos\";\"ascii\"\n\"736130\";\"Hierissos\";\"other\"\n\"736130\";\"Ierisos\";\"other\"\n\"736130\";\"Ierisós\";\"other\"\n\"736130\";\"Ιερισσός\";\"other\"\n\"736137\";\"Íasmos\";\"main\"\n\"736137\";\"Iasmos\";\"ascii\"\n\"736137\";\"Ίασμος\";\"other\"\n\"736151\";\"Grevená\";\"main\"\n\"736151\";\"Grevena\";\"ascii\"\n\"736151\";\"Grebena\";\"other\"\n\"736151\";\"Γρεβενά\";\"other\"\n\"736166\";\"Gouménissa\";\"main\"\n\"736166\";\"Goumenissa\";\"ascii\"\n\"736166\";\"Goumenitsa\";\"other\"\n\"736166\";\"Gouménitsa\";\"other\"\n\"736166\";\"Γουμένισσα\";\"other\"\n\"736192\";\"Gázoros\";\"main\"\n\"736192\";\"Gazoros\";\"ascii\"\n\"736192\";\"Porna\";\"other\"\n\"736192\";\"Pórna\";\"other\"\n\"736192\";\"Γάζωρος\";\"other\"\n\"736199\";\"Gallikós\";\"main\"\n\"736199\";\"Gallikos\";\"ascii\"\n\"736199\";\"Gallikon\";\"other\"\n\"736199\";\"Gallikón\";\"other\"\n\"736199\";\"Salamanli\";\"other\"\n\"736199\";\"Salamanlí\";\"other\"\n\"736199\";\"Γαλλικός\";\"other\"\n\"736207\";\"Galátista\";\"main\"\n\"736207\";\"Galatista\";\"ascii\"\n\"736207\";\"Anthemous\";\"other\"\n\"736207\";\"Anthemoús\";\"other\"\n\"736207\";\"Γαλάτιστα\";\"other\"\n\"736208\";\"Galatiní\";\"main\"\n\"736208\";\"Galatini\";\"ascii\"\n\"736208\";\"Galatine\";\"other\"\n\"736208\";\"Kontsikon\";\"other\"\n\"736208\";\"Kontsikón\";\"other\"\n\"736208\";\"Γαλατινή\";\"other\"\n\"736210\";\"Galatádes\";\"main\"\n\"736210\";\"Galatades\";\"ascii\"\n\"736210\";\"Galatadhes\";\"other\"\n\"736210\";\"Galatádhes\";\"other\"\n\"736210\";\"Kadinovon\";\"other\"\n\"736210\";\"Kadínovon\";\"other\"\n\"736210\";\"Γαλατάδες\";\"other\"\n\"736222\";\"Fotolívos\";\"main\"\n\"736222\";\"Fotolivos\";\"ascii\"\n\"736222\";\"Fotolivi\";\"other\"\n\"736222\";\"Fotolívi\";\"other\"\n\"736222\";\"Photolibos\";\"other\"\n\"736222\";\"Φωτολίβος\";\"other\"\n\"736226\";\"Floyitá\";\"main\"\n\"736226\";\"Floyita\";\"ascii\"\n\"736226\";\"Phlogeta\";\"other\"\n\"736226\";\"Φλογητά\";\"other\"\n\"736229\";\"Flórina\";\"main\"\n\"736229\";\"Florina\";\"ascii\"\n\"736229\";\"Follorina\";\"other\"\n\"736229\";\"Lerin\";\"other\"\n\"736229\";\"Phlorina\";\"other\"\n\"736229\";\"Plorina\";\"other\"\n\"736229\";\"lerin\";\"other\"\n\"736229\";\"Φλώρινα\";\"other\"\n\"736229\";\"Лерин\";\"other\"\n\"736243\";\"Filótas\";\"main\"\n\"736243\";\"Filotas\";\"ascii\"\n\"736243\";\"Chaljilar\";\"other\"\n\"736243\";\"Chaljilár\";\"other\"\n\"736243\";\"Philotas\";\"other\"\n\"736243\";\"Φιλώτας\";\"other\"\n\"736244\";\"Fillíra\";\"main\"\n\"736244\";\"Fillira\";\"ascii\"\n\"736244\";\"Phillyra\";\"other\"\n\"736244\";\"Xidhia\";\"other\"\n\"736244\";\"Xídhia\";\"other\"\n\"736244\";\"Φιλλύρα\";\"other\"\n\"736245\";\"Fíliron\";\"main\"\n\"736245\";\"Filiron\";\"ascii\"\n\"736245\";\"Filiros\";\"other\"\n\"736245\";\"Fíliros\";\"other\"\n\"736245\";\"Philyron\";\"other\"\n\"736245\";\"Yalijik\";\"other\"\n\"736245\";\"Yalijík\";\"other\"\n\"736245\";\"Φίλυρον\";\"other\"\n\"736261\";\"Férai\";\"main\"\n\"736261\";\"Ferai\";\"ascii\"\n\"736261\";\"Feres\";\"other\"\n\"736261\";\"Ferrai\";\"other\"\n\"736261\";\"Féres\";\"other\"\n\"736261\";\"Férrai\";\"other\"\n\"736261\";\"Pherai\";\"other\"\n\"736261\";\"Pherrai\";\"other\"\n\"736261\";\"Φέραι\";\"other\"\n\"736281\";\"Exochí\";\"main\"\n\"736281\";\"Exochi\";\"ascii\"\n\"736281\";\"Exokhi\";\"other\"\n\"736281\";\"Exokhí\";\"other\"\n\"736281\";\"Zelitsa\";\"other\"\n\"736281\";\"Zélitsa\";\"other\"\n\"736283\";\"Exaplátanos\";\"main\"\n\"736283\";\"Exaplatanos\";\"ascii\"\n\"736283\";\"Exaplatanon\";\"other\"\n\"736283\";\"Exaplátanon\";\"other\"\n\"736283\";\"Kapiniani\";\"other\"\n\"736283\";\"Kapíniani\";\"other\"\n\"736283\";\"Εξαπλάτανος\";\"other\"\n\"736288\";\"Evropós\";\"main\"\n\"736288\";\"Evropos\";\"ascii\"\n\"736288\";\"Asiklar\";\"other\"\n\"736288\";\"Asiklár\";\"other\"\n\"736296\";\"Efkarpía\";\"main\"\n\"736296\";\"Efkarpia\";\"ascii\"\n\"736296\";\"Evkarpia\";\"other\"\n\"736296\";\"Evkarpía\";\"other\"\n\"736296\";\"Lembet\";\"other\"\n\"736296\";\"Lembét\";\"other\"\n\"736309\";\"Erátira\";\"main\"\n\"736309\";\"Eratira\";\"ascii\"\n\"736309\";\"Eratyra\";\"other\"\n\"736309\";\"Katokhori\";\"other\"\n\"736309\";\"Katokhóri\";\"other\"\n\"736309\";\"Selitsa\";\"other\"\n\"736309\";\"Sélitsa\";\"other\"\n\"736309\";\"Εράτυρα\";\"other\"\n\"736316\";\"Episkopí\";\"main\"\n\"736316\";\"Episkopi\";\"ascii\"\n\"736316\";\"Episkope\";\"other\"\n\"736316\";\"Επισκοπή\";\"other\"\n\"736319\";\"Epanomí\";\"main\"\n\"736319\";\"Epanomi\";\"ascii\"\n\"736319\";\"Epanome\";\"other\"\n\"736319\";\"Επανομή\";\"other\"\n\"736323\";\"Emmanouíl Pappás\";\"main\"\n\"736323\";\"Emmanouil Pappas\";\"ascii\"\n\"736323\";\"Emmanouel Pappas\";\"other\"\n\"736323\";\"Emmanuil-Pappas\";\"other\"\n\"736323\";\"Emmanuḯl-Pappás\";\"other\"\n\"736323\";\"Pappas Dhovista\";\"other\"\n\"736323\";\"Pappás Dhovísta\";\"other\"\n\"736323\";\"Εμμανουήλ Παππάς\";\"other\"\n\"736324\";\"Embórion\";\"main\"\n\"736324\";\"Emborion\";\"ascii\"\n\"736324\";\"Emboriya\";\"other\"\n\"736324\";\"Emporion\";\"other\"\n\"736324\";\"Εμπόριον\";\"other\"\n\"736330\";\"Eleftheroúpolis\";\"main\"\n\"736330\";\"Eleftheroupolis\";\"ascii\"\n\"736330\";\"Eleftheroupoli\";\"other\"\n\"736330\";\"Eleftheroúpoli\";\"other\"\n\"736330\";\"Elevtheroupolis\";\"other\"\n\"736330\";\"Elevtheroúpolis\";\"other\"\n\"736330\";\"Pravion\";\"other\"\n\"736330\";\"Právion\";\"other\"\n\"736346\";\"Elaiokhórion\";\"main\"\n\"736346\";\"Elaiokhorion\";\"ascii\"\n\"736346\";\"Elaiochori\";\"other\"\n\"736346\";\"Elaiochorion\";\"other\"\n\"736346\";\"Elaiokhori\";\"other\"\n\"736346\";\"Elaiokhóri\";\"other\"\n\"736346\";\"Kotskari\";\"other\"\n\"736346\";\"Kotskári\";\"other\"\n\"736346\";\"Ελαιοχώρι\";\"other\"\n\"736346\";\"Ελαιοχώριον\";\"other\"\n\"736354\";\"Ekhínos\";\"main\"\n\"736354\";\"Ekhinos\";\"ascii\"\n\"736354\";\"Echinos\";\"other\"\n\"736354\";\"Sahin Koeyue\";\"other\"\n\"736354\";\"Şahin Köyü\";\"other\"\n\"736354\";\"Εχίνος\";\"other\"\n\"736357\";\"Édessa\";\"main\"\n\"736357\";\"Edessa\";\"ascii\"\n\"736357\";\"Edhessa\";\"other\"\n\"736357\";\"Voden\";\"other\"\n\"736357\";\"Vodena\";\"other\"\n\"736357\";\"Vodená\";\"other\"\n\"736357\";\"Édhessa\";\"other\"\n\"736357\";\"Έδεσσα\";\"other\"\n\"736357\";\"Воден\";\"other\"\n\"736364\";\"Dráma\";\"main\"\n\"736364\";\"Drama\";\"ascii\"\n\"736364\";\"Dhrama\";\"other\"\n\"736364\";\"Dhráma\";\"other\"\n\"736364\";\"dhrama\";\"other\"\n\"736364\";\"drama\";\"other\"\n\"736364\";\"drmh\";\"other\"\n\"736364\";\"Δράμα\";\"other\"\n\"736364\";\"Драма\";\"other\"\n\"736364\";\"דרמה\";\"other\"\n\"736364\";\"ذراما\";\"other\"\n\"736381\";\"Drosáton\";\"main\"\n\"736381\";\"Drosaton\";\"ascii\"\n\"736381\";\"Dhrosaton\";\"other\"\n\"736381\";\"Dhrosáton\";\"other\"\n\"736381\";\"Drosato\";\"other\"\n\"736381\";\"Drosáto\";\"other\"\n\"736381\";\"Potaros\";\"other\"\n\"736381\";\"Potarós\";\"other\"\n\"736381\";\"Δροσάτον\";\"other\"\n\"736386\";\"Drymós\";\"main\"\n\"736386\";\"Drymos\";\"ascii\"\n\"736386\";\"Dhrimos\";\"other\"\n\"736386\";\"Dhrimós\";\"other\"\n\"736386\";\"Drimiglava\";\"other\"\n\"736386\";\"Drimíglava\";\"other\"\n\"736386\";\"Sidhirokefalon\";\"other\"\n\"736386\";\"Sidhirokéfalon\";\"other\"\n\"736447\";\"Didymóteichon\";\"main\"\n\"736447\";\"Didymoteichon\";\"ascii\"\n\"736447\";\"Dhidhimotikhon\";\"other\"\n\"736447\";\"Dhidhimótikhon\";\"other\"\n\"736447\";\"Didymoteicho\";\"other\"\n\"736447\";\"Didymoteichou\";\"other\"\n\"736447\";\"Didymoteikhon\";\"other\"\n\"736447\";\"Didymoteíchou\";\"other\"\n\"736447\";\"Didymotichon\";\"other\"\n\"736447\";\"Didymóteicho\";\"other\"\n\"736447\";\"Didymóteikhon\";\"other\"\n\"736447\";\"Dimotika\";\"other\"\n\"736449\";\"Diavatós\";\"main\"\n\"736449\";\"Diavatos\";\"ascii\"\n\"736449\";\"Dhiavatos\";\"other\"\n\"736449\";\"Dhiavatós\";\"other\"\n\"736449\";\"Diabatos\";\"other\"\n\"736449\";\"Διαβατός\";\"other\"\n\"736450\";\"Néa Ioniá\";\"main\"\n\"736450\";\"Nea Ionia\";\"ascii\"\n\"736450\";\"Dhiavata\";\"other\"\n\"736450\";\"Dhiavatá\";\"other\"\n\"736450\";\"Diabata\";\"other\"\n\"736450\";\"Diavata\";\"other\"\n\"736450\";\"Diavatá\";\"other\"\n\"736450\";\"Dudular\";\"other\"\n\"736450\";\"Dudulár\";\"other\"\n\"736450\";\"Διαβατά\";\"other\"\n\"736581\";\"Ágios Geórgios\";\"main\"\n\"736581\";\"Agios Georgios\";\"ascii\"\n\"736581\";\"Ayios Yeoryios\";\"other\"\n\"736581\";\"Yiannissa\";\"other\"\n\"736581\";\"Yiánnissa\";\"other\"\n\"736581\";\"Áyios Yeóryios\";\"other\"\n\"736586\";\"Áyios Vasílios\";\"main\"\n\"736586\";\"Ayios Vasilios\";\"ascii\"\n\"736592\";\"Ágios Pétros\";\"main\"\n\"736592\";\"Agios Petros\";\"ascii\"\n\"736592\";\"Ayios Petros\";\"other\"\n\"736592\";\"Petrovon\";\"other\"\n\"736592\";\"Pétrovon\";\"other\"\n\"736592\";\"Áyios Pétros\";\"other\"\n\"736598\";\"Áyios Nikólaos\";\"main\"\n\"736598\";\"Ayios Nikolaos\";\"ascii\"\n\"736601\";\"Áyios Mámas\";\"main\"\n\"736601\";\"Ayios Mamas\";\"ascii\"\n\"736601\";\"Agios Mamas\";\"other\"\n\"736601\";\"Ayios Mammas\";\"other\"\n\"736601\";\"Áyios Mámmas\";\"other\"\n\"736601\";\"Άγιος Μάμας\";\"other\"\n\"736602\";\"Ágios Loukás\";\"main\"\n\"736602\";\"Agios Loukas\";\"ascii\"\n\"736602\";\"Ayios Loukas\";\"other\"\n\"736602\";\"Áyios Loukás\";\"other\"\n\"736602\";\"Άγιος Λουκάς\";\"other\"\n\"736618\";\"Áyios Athanásios\";\"main\"\n\"736618\";\"Ayios Athanasios\";\"ascii\"\n\"736618\";\"Agios Athanasios\";\"other\"\n\"736618\";\"Boriani\";\"other\"\n\"736618\";\"Bóriani\";\"other\"\n\"736618\";\"Άγιος Αθανάσιος\";\"other\"\n\"736621\";\"Ágios Athanásios\";\"main\"\n\"736621\";\"Agios Athanasios\";\"ascii\"\n\"736621\";\"Ayios Athanasios\";\"other\"\n\"736621\";\"Kavakli\";\"other\"\n\"736621\";\"Kavaklí\";\"other\"\n\"736621\";\"Áyios Athanásios\";\"other\"\n\"736638\";\"Agía Triás\";\"main\"\n\"736638\";\"Agia Trias\";\"ascii\"\n\"736638\";\"Agia Triada\";\"other\"\n\"736638\";\"Agía Triáda\";\"other\"\n\"736638\";\"Ayia Trias\";\"other\"\n\"736638\";\"Ayía Triás\";\"other\"\n\"736638\";\"Skala Agias Triados\";\"other\"\n\"736638\";\"Skala Ayias Triadhos\";\"other\"\n\"736638\";\"Skála Agías Triádos\";\"other\"\n\"736638\";\"Skála Ayías Triádhos\";\"other\"\n\"736643\";\"Agíasma\";\"main\"\n\"736643\";\"Agiasma\";\"ascii\"\n\"736643\";\"Ayiasma\";\"other\"\n\"736643\";\"Ayíasma\";\"other\"\n\"736643\";\"Kuri\";\"other\"\n\"736643\";\"Kurí\";\"other\"\n\"736650\";\"Ayía Paraskeví\";\"main\"\n\"736650\";\"Ayia Paraskevi\";\"ascii\"\n\"736661\";\"Axioúpolis\";\"main\"\n\"736661\";\"Axioupolis\";\"ascii\"\n\"736661\";\"Axioupole\";\"other\"\n\"736661\";\"Axioupoli\";\"other\"\n\"736661\";\"Axioúpoli\";\"other\"\n\"736661\";\"Boemitsa\";\"other\"\n\"736661\";\"Bóëmitsa\";\"other\"\n\"736661\";\"Αξιούπολη\";\"other\"\n\"736677\";\"Ávaton\";\"main\"\n\"736677\";\"Avaton\";\"ascii\"\n\"736677\";\"Abaton\";\"other\"\n\"736677\";\"Άβατον\";\"other\"\n\"736682\";\"Áthyra\";\"main\"\n\"736682\";\"Athyra\";\"ascii\"\n\"736682\";\"Athira\";\"other\"\n\"736682\";\"Athiras\";\"other\"\n\"736682\";\"Athíras\";\"other\"\n\"736682\";\"Bozets\";\"other\"\n\"736682\";\"Bózets\";\"other\"\n\"736682\";\"Áthira\";\"other\"\n\"736682\";\"Άθυρα\";\"other\"\n\"736687\";\"Asvestokhórion\";\"main\"\n\"736687\";\"Asvestokhorion\";\"ascii\"\n\"736687\";\"Asbestochorion\";\"other\"\n\"736687\";\"Ασβεστοχώριον\";\"other\"\n\"736692\";\"Ássiros\";\"main\"\n\"736692\";\"Assiros\";\"ascii\"\n\"736692\";\"Asseros\";\"other\"\n\"736692\";\"Yuvesna\";\"other\"\n\"736692\";\"Yuvésna\";\"other\"\n\"736692\";\"Άσσηρος\";\"other\"\n\"736694\";\"Asproválta\";\"main\"\n\"736694\";\"Asprovalta\";\"ascii\"\n\"736694\";\"Asprobalta\";\"other\"\n\"736694\";\"Ασπροβάλτα\";\"other\"\n\"736716\";\"Askós\";\"main\"\n\"736716\";\"Askos\";\"ascii\"\n\"736716\";\"Yiakinia\";\"other\"\n\"736716\";\"Yiakínia\";\"other\"\n\"736716\";\"Ασκός\";\"other\"\n\"736725\";\"Arsénion\";\"main\"\n\"736725\";\"Arsenion\";\"ascii\"\n\"736725\";\"Arsenio\";\"other\"\n\"736725\";\"Arsenios\";\"other\"\n\"736725\";\"Arsénio\";\"other\"\n\"736725\";\"Arsénios\";\"other\"\n\"736725\";\"Αρσένιον\";\"other\"\n\"736727\";\"Arrianá\";\"main\"\n\"736727\";\"Arriana\";\"ascii\"\n\"736727\";\"Kuzlu Kebir\";\"other\"\n\"736727\";\"Kuzlú Kebír\";\"other\"\n\"736727\";\"Αρριανά\";\"other\"\n\"736732\";\"Árnissa\";\"main\"\n\"736732\";\"Arnissa\";\"ascii\"\n\"736732\";\"Ostrova\";\"other\"\n\"736732\";\"Ostrovo\";\"other\"\n\"736732\";\"Ostrovon\";\"other\"\n\"736732\";\"awstrwwh\";\"other\"\n\"736732\";\"Óstrovon\";\"other\"\n\"736732\";\"Άρνισσα\";\"other\"\n\"736732\";\"اوسترووه\";\"other\"\n\"736733\";\"Arnaía\";\"main\"\n\"736733\";\"Arnaia\";\"ascii\"\n\"736733\";\"Laringovi\";\"other\"\n\"736733\";\"Laringóvi\";\"other\"\n\"736733\";\"Lerigovo\";\"other\"\n\"736733\";\"Αρναία\";\"other\"\n\"736735\";\"Armenokhórion\";\"main\"\n\"736735\";\"Armenokhorion\";\"ascii\"\n\"736735\";\"Armenochorion\";\"other\"\n\"736735\";\"Αρμενοχώριον\";\"other\"\n\"736751\";\"Arísvi\";\"main\"\n\"736751\";\"Arisvi\";\"ascii\"\n\"736751\";\"Arisbe\";\"other\"\n\"736751\";\"Irjan\";\"other\"\n\"736751\";\"Irján\";\"other\"\n\"736751\";\"Αρίσβη\";\"other\"\n\"736753\";\"Aridaía\";\"main\"\n\"736753\";\"Aridaia\";\"ascii\"\n\"736753\";\"Ardhea\";\"other\"\n\"736753\";\"Ardhéa\";\"other\"\n\"736753\";\"Aridea\";\"other\"\n\"736753\";\"Aridhaia\";\"other\"\n\"736753\";\"Aridhaía\";\"other\"\n\"736753\";\"Suboskon\";\"other\"\n\"736753\";\"Súboskon\";\"other\"\n\"736753\";\"Αριδαία\";\"other\"\n\"736754\";\"Árgos Orestikón\";\"main\"\n\"736754\";\"Argos Orestikon\";\"ascii\"\n\"736754\";\"Hurpiste\";\"other\"\n\"736754\";\"Hurpişte\";\"other\"\n\"736754\";\"Khroupista\";\"other\"\n\"736754\";\"Khroúpista\";\"other\"\n\"736754\";\"Krupishta\";\"other\"\n\"736754\";\"Άργος Ορεστικόν\";\"other\"\n\"736762\";\"Aravissós\";\"main\"\n\"736762\";\"Aravissos\";\"ascii\"\n\"736762\";\"Arabessos\";\"other\"\n\"736762\";\"Obar\";\"other\"\n\"736762\";\"Ombar\";\"other\"\n\"736762\";\"Óbar\";\"other\"\n\"736762\";\"Ómbar\";\"other\"\n\"736762\";\"Αραβησσός\";\"other\"\n\"736763\";\"Áratos\";\"main\"\n\"736763\";\"Aratos\";\"ascii\"\n\"736763\";\"Karajakoi\";\"other\"\n\"736763\";\"Karajákoï\";\"other\"\n\"736763\";\"Άρατος\";\"other\"\n\"736767\";\"Ápsalos\";\"main\"\n\"736767\";\"Apsalos\";\"ascii\"\n\"736767\";\"Dragomanitsa\";\"other\"\n\"736767\";\"Dragománitsa\";\"other\"\n\"736767\";\"Άψαλος\";\"other\"\n\"736792\";\"Áno Poróïa\";\"main\"\n\"736792\";\"Ano Poroia\";\"ascii\"\n\"736792\";\"Ano Porroia\";\"other\"\n\"736792\";\"Poroi\";\"other\"\n\"736792\";\"Áno Porróïa\";\"other\"\n\"736810\";\"Áno Kómi\";\"main\"\n\"736810\";\"Ano Komi\";\"ascii\"\n\"736810\";\"Ano Kome\";\"other\"\n\"736810\";\"Ano Vanitsa\";\"other\"\n\"736810\";\"Áno Vánitsa\";\"other\"\n\"736810\";\"Άνω Κώμη\";\"other\"\n\"736840\";\"Ángistron\";\"main\"\n\"736840\";\"Angistron\";\"ascii\"\n\"736840\";\"Sengel'ovo\";\"other\"\n\"736840\";\"Tsingeli\";\"other\"\n\"736840\";\"Tsingéli\";\"other\"\n\"736840\";\"Сенгельово\";\"other\"\n\"736843\";\"Angelochórion\";\"main\"\n\"736843\";\"Angelochorion\";\"ascii\"\n\"736843\";\"Angelochori\";\"other\"\n\"736843\";\"Angelochóri\";\"other\"\n\"736843\";\"Angelokhorion\";\"other\"\n\"736843\";\"Angelokhórion\";\"other\"\n\"736843\";\"Vetista\";\"other\"\n\"736843\";\"Vetísta\";\"other\"\n\"736843\";\"Αγγελοχώριον\";\"other\"\n\"736847\";\"Agkathiá\";\"main\"\n\"736847\";\"Agkathia\";\"ascii\"\n\"736847\";\"Angathia\";\"other\"\n\"736847\";\"Angathiá\";\"other\"\n\"736847\";\"Grijali\";\"other\"\n\"736847\";\"Grijáli\";\"other\"\n\"736859\";\"Anatolikón\";\"main\"\n\"736859\";\"Anatolikon\";\"ascii\"\n\"736859\";\"Anatoliko\";\"other\"\n\"736859\";\"Anatolikó\";\"other\"\n\"736859\";\"Valmada\";\"other\"\n\"736859\";\"Valmadha\";\"other\"\n\"736859\";\"Valmáda\";\"other\"\n\"736859\";\"Valmádha\";\"other\"\n\"736859\";\"Ανατολικόν\";\"other\"\n\"736866\";\"Anarrákhi\";\"main\"\n\"736866\";\"Anarrakhi\";\"ascii\"\n\"736866\";\"Anarrache\";\"other\"\n\"736866\";\"Devri\";\"other\"\n\"736866\";\"Dévri\";\"other\"\n\"736866\";\"Αναρράχη\";\"other\"\n\"736878\";\"Ammokhórion\";\"main\"\n\"736878\";\"Ammokhorion\";\"ascii\"\n\"736878\";\"Ammochorion\";\"other\"\n\"736878\";\"Pesosnitsa\";\"other\"\n\"736878\";\"Pesósnitsa\";\"other\"\n\"736878\";\"Αμμοχώριον\";\"other\"\n\"736881\";\"Amisianá\";\"main\"\n\"736881\";\"Amisiana\";\"ascii\"\n\"736881\";\"Pretzova\";\"other\"\n\"736881\";\"Prétzova\";\"other\"\n\"736881\";\"Αμισιανά\";\"other\"\n\"736900\";\"Ámbeloi\";\"main\"\n\"736900\";\"Ambeloi\";\"ascii\"\n\"736900\";\"Ampeloi\";\"other\"\n\"736900\";\"Makiais\";\"other\"\n\"736900\";\"Makiaís\";\"other\"\n\"736900\";\"Άμπελοι\";\"other\"\n\"736902\";\"Ampeleíai\";\"main\"\n\"736902\";\"Ampeleiai\";\"ascii\"\n\"736902\";\"Ambeliai\";\"other\"\n\"736902\";\"Ambelies\";\"other\"\n\"736902\";\"Ambeliés\";\"other\"\n\"736902\";\"Ambelíai\";\"other\"\n\"736902\";\"Ampeleies\";\"other\"\n\"736902\";\"Ampeleíes\";\"other\"\n\"736902\";\"Krusari\";\"other\"\n\"736902\";\"Krusári\";\"other\"\n\"736902\";\"Αμπελείαι\";\"other\"\n\"736921\";\"Alistráti\";\"main\"\n\"736921\";\"Alistrati\";\"ascii\"\n\"736921\";\"Alistrate\";\"other\"\n\"736921\";\"Αλιστράτη\";\"other\"\n\"736928\";\"Alexandroúpolis\";\"main\"\n\"736928\";\"Alexandroupolis\";\"ascii\"\n\"736928\";\"Alejandropolis\";\"other\"\n\"736928\";\"Alejandrópolis\";\"other\"\n\"736928\";\"Aleksandrupolis\";\"other\"\n\"736928\";\"Alessandropoli\";\"other\"\n\"736928\";\"Alexandhroupolis\";\"other\"\n\"736928\";\"Alexandhroúpolis\";\"other\"\n\"736928\";\"Alexandropolis\";\"other\"\n\"736928\";\"Alexandroupole\";\"other\"\n\"736928\";\"Alexandroupoli\";\"other\"\n\"736928\";\"Alexandroúpoli\";\"other\"\n\"736928\";\"Dedeagac\";\"other\"\n\"736928\";\"Dedeagach\";\"other\"\n\"736928\";\"Dedeağaç\";\"other\"\n\"736928\";\"Dedéagach\";\"other\"\n\"736928\";\"alyksandrwbwly\";\"other\"\n\"736928\";\"Αλεξανδρούπολη\";\"other\"\n\"736928\";\"Александруполис\";\"other\"\n\"736928\";\"Дедеагач\";\"other\"\n\"736928\";\"أليكساندروبولي\";\"other\"\n\"736929\";\"Alexándreia\";\"main\"\n\"736929\";\"Alexandreia\";\"ascii\"\n\"736929\";\"Alexandria\";\"other\"\n\"736929\";\"Alexándria\";\"other\"\n\"736929\";\"Gida\";\"other\"\n\"736929\";\"Gidha\";\"other\"\n\"736929\";\"Gidhas\";\"other\"\n\"736929\";\"Gidhá\";\"other\"\n\"736929\";\"Gidhás\";\"other\"\n\"736929\";\"Yidha\";\"other\"\n\"736929\";\"Yidhas\";\"other\"\n\"736929\";\"Yidhá\";\"other\"\n\"736929\";\"Yidhás\";\"other\"\n\"736929\";\"Αλεξάνδρεια\";\"other\"\n\"736944\";\"Akriní\";\"main\"\n\"736944\";\"Akrini\";\"ascii\"\n\"736944\";\"Akrine\";\"other\"\n\"736944\";\"Ineova\";\"other\"\n\"736944\";\"Ineóva\";\"other\"\n\"736944\";\"Ακρινή\";\"other\"\n\"736964\";\"Aigínion\";\"main\"\n\"736964\";\"Aiginion\";\"ascii\"\n\"736964\";\"Aiginio\";\"other\"\n\"736964\";\"Aigínio\";\"other\"\n\"736964\";\"Aiyinion\";\"other\"\n\"736964\";\"Aiylnion\";\"other\"\n\"736964\";\"Aiyínion\";\"other\"\n\"736964\";\"Eginion\";\"other\"\n\"736964\";\"Libanovo\";\"other\"\n\"736964\";\"Libanovon\";\"other\"\n\"736964\";\"Libánovon\";\"other\"\n\"736964\";\"Αιγίνιον\";\"other\"\n\"736971\";\"Aianí\";\"main\"\n\"736971\";\"Aiani\";\"ascii\"\n\"736971\";\"Aiane\";\"other\"\n\"736971\";\"Kalliani\";\"other\"\n\"736971\";\"Kallianí\";\"other\"\n\"736971\";\"Αιανή\";\"other\"\n\"736987\";\"Áfitos\";\"main\"\n\"736987\";\"Afitos\";\"ascii\"\n\"736987\";\"Aphytos\";\"other\"\n\"736987\";\"Athitos\";\"other\"\n\"736987\";\"Áthitos\";\"other\"\n\"736987\";\"Άφυτος\";\"other\"\n\"737002\";\"Ádendron\";\"main\"\n\"737002\";\"Adendron\";\"ascii\"\n\"737002\";\"Adendro\";\"other\"\n\"737002\";\"Adhendhron\";\"other\"\n\"737002\";\"Adhendron\";\"other\"\n\"737002\";\"Kirjilar\";\"other\"\n\"737002\";\"Kirjilár\";\"other\"\n\"737002\";\"Ádendro\";\"other\"\n\"737002\";\"Ádhendhron\";\"other\"\n\"737002\";\"Ádhendron\";\"other\"\n\"737002\";\"Άδενδρον\";\"other\"\n\"865238\";\"Eirinoúpoli\";\"main\"\n\"865238\";\"Eirinoupoli\";\"ascii\"\n\"865290\";\"Ágios Pávlos\";\"main\"\n\"865290\";\"Agios Pavlos\";\"ascii\"\n\"865291\";\"Triandría\";\"main\"\n\"865291\";\"Triandria\";\"ascii\"\n\"865291\";\"Τριανδρία\";\"other\"\n\"865331\";\"Melíssion\";\"main\"\n\"865331\";\"Melission\";\"ascii\"\n\"865331\";\"Μελίσσιον\";\"other\"\n\"2463549\";\"Virós\";\"main\"\n\"2463549\";\"Viros\";\"ascii\"\n\"2463549\";\"Ano Virou\";\"other\"\n\"2463549\";\"Biros\";\"other\"\n\"2463549\";\"Áno Viroú\";\"other\"\n\"2463549\";\"Βιρός\";\"other\"\n\"2463575\";\"Sinarádes\";\"main\"\n\"2463575\";\"Sinarades\";\"ascii\"\n\"2463575\";\"Sinaradhes\";\"other\"\n\"2463575\";\"Sinarádhes\";\"other\"\n\"2463575\";\"Σιναράδες\";\"other\"\n\"2463594\";\"Potamós\";\"main\"\n\"2463594\";\"Potamos\";\"ascii\"\n\"2463662\";\"Kontokálion\";\"main\"\n\"2463662\";\"Kontokalion\";\"ascii\"\n\"2463662\";\"Kondokali\";\"other\"\n\"2463662\";\"Kondokalion\";\"other\"\n\"2463662\";\"Kondokálion\";\"other\"\n\"2463662\";\"Kondókali\";\"other\"\n\"2463662\";\"Κοντοκάλιον\";\"other\"\n\"2463670\";\"Kynopiástai\";\"main\"\n\"2463670\";\"Kynopiastai\";\"ascii\"\n\"2463670\";\"Kinopiastai\";\"other\"\n\"2463670\";\"Kinopiastais\";\"other\"\n\"2463670\";\"Kinopiástai\";\"other\"\n\"2463670\";\"Kinopiástais\";\"other\"\n\"2463670\";\"Κυνοπιάσται\";\"other\"\n\"2463679\";\"Kérkyra\";\"main\"\n\"2463679\";\"Kerkyra\";\"ascii\"\n\"2463679\";\"Corcyra\";\"other\"\n\"2463679\";\"Corfou\";\"other\"\n\"2463679\";\"Corfu\";\"other\"\n\"2463679\";\"Kerkira\";\"other\"\n\"2463679\";\"Korfu\";\"other\"\n\"2463679\";\"Krf\";\"other\"\n\"2463679\";\"Kérkira\";\"other\"\n\"2463679\";\"kerkira\";\"other\"\n\"2463679\";\"Κέρκυρα\";\"other\"\n\"2463679\";\"Корфу\";\"other\"\n\"2463679\";\"Крф\";\"other\"\n\"2463692\";\"Káto Korakiána\";\"main\"\n\"2463692\";\"Kato Korakiana\";\"ascii\"\n\"2463692\";\"Katomeri\";\"other\"\n\"2463692\";\"Katoméri\";\"other\"\n\"2463692\";\"Κάτω Κορακιάνα\";\"other\"\n\"2463701\";\"Kassiópi\";\"main\"\n\"2463701\";\"Kassiopi\";\"ascii\"\n\"2463701\";\"Kasiopi\";\"other\"\n\"2463701\";\"Kasiópi\";\"other\"\n\"2463701\";\"Kassiope\";\"other\"\n\"2463701\";\"Κασσιόπη\";\"other\"\n\"2463705\";\"Kanálion\";\"main\"\n\"2463705\";\"Kanalion\";\"ascii\"\n\"2463705\";\"Kanali Lemendion\";\"other\"\n\"2463705\";\"Kanalion Lemendion\";\"other\"\n\"2463705\";\"Kanalion Lemention\";\"other\"\n\"2463705\";\"Kanáli Lemendíon\";\"other\"\n\"2463705\";\"Kanálion Lemendíon\";\"other\"\n\"2463705\";\"Kanálion Lementíon\";\"other\"\n\"2463705\";\"Κανάλιον\";\"other\"\n\"2463721\";\"Gastoúrion\";\"main\"\n\"2463721\";\"Gastourion\";\"ascii\"\n\"2463721\";\"Gastouri\";\"other\"\n\"2463721\";\"Gasturi\";\"other\"\n\"2463721\";\"Gastóuri\";\"other\"\n\"2463750\";\"Benítsai\";\"main\"\n\"2463750\";\"Benitsai\";\"ascii\"\n\"2463750\";\"Benitsa\";\"other\"\n\"2463763\";\"Ágios Matthaíos\";\"main\"\n\"2463763\";\"Agios Matthaios\";\"ascii\"\n\"2463763\";\"Aghios Matheos\";\"other\"\n\"2463763\";\"Ayios Matthaios\";\"other\"\n\"2463763\";\"Mathaios\";\"other\"\n\"2463763\";\"Áyios Matthaíos\";\"other\"\n\"2463763\";\"Άγιος Ματθαίος\";\"other\"\n\"2463800\";\"Alepoú\";\"main\"\n\"2463800\";\"Alepou\";\"ascii\"\n\"2463800\";\"Αλεπού\";\"other\"\n\"6324534\";\"Vrilissia\";\"main\"\n\"6354951\";\"Faliraki\";\"main\"\n\"6354951\";\"Фалираки\";\"other\"\n\"6544035\";\"Young Inn\";\"main\"\n\"6639653\";\"Alimos\";\"main\"\n\"6639653\";\"Алимос\";\"other\"\n\"6692234\";\"Potos (Thassos)\";\"main\"\n\"6692234\";\"Potos\";\"other\"\n\"6692234\";\"Потос\";\"other\"\n\"6692641\";\"Agios Georgis\";\"main\"\n\"6692641\";\"Aghios Georgios\";\"other\"\n\"6692641\";\"Agios-Georgios\";\"other\"\n\"6692641\";\"Агиос-Георгиос\";\"other\"\n\"6692661\";\"Pefkochori\";\"main\"\n\"6692661\";\"Pefkokhori\";\"other\"\n\"6692661\";\"Пефкохори\";\"other\"\n\"6692709\";\"Nidri\";\"main\"\n\"6692709\";\"Нидри\";\"other\"\n\"6693122\";\"Μεσολόγγι\";\"main\"\n\"6693122\";\"Mesolongi\";\"ascii\"\n\"7522530\";\"Marousi\";\"main\"\n\"7522530\";\"Amaroussion\";\"other\"\n\"7522530\";\"amarousion\";\"other\"\n\"7522530\";\"amaroussio\";\"other\"\n\"7522530\";\"maroussi\";\"other\"\n\"3426466\";\"Grytviken\";\"main\"\n\"3426466\";\"Grjutviken\";\"other\"\n\"3426466\";\"Грютвикен\";\"other\"\n\"3587506\";\"Zunilito\";\"main\"\n\"3587510\";\"Zunil\";\"main\"\n\"3587543\";\"Zaragoza\";\"main\"\n\"3587546\";\"Zapotitlán\";\"main\"\n\"3587546\";\"Zapotitlan\";\"ascii\"\n\"3587578\";\"Zacualpa\";\"main\"\n\"3587587\";\"Zacapa\";\"main\"\n\"3587587\";\"Sakapa\";\"other\"\n\"3587587\";\"Сакапа\";\"other\"\n\"3587593\";\"Yupiltepeque\";\"main\"\n\"3587593\";\"Tupiltepeque\";\"other\"\n\"3587636\";\"Yepocapa\";\"main\"\n\"3587636\";\"San Pedro Yepocapa\";\"other\"\n\"3587902\";\"Villa Nueva\";\"main\"\n\"3587902\";\"Vil'ja-Nuehva\";\"other\"\n\"3587902\";\"Вилья-Нуэва\";\"other\"\n\"3587923\";\"Villa Canales\";\"main\"\n\"3587923\";\"Villa Anales\";\"other\"\n\"3588040\";\"Usumatlán\";\"main\"\n\"3588040\";\"Usumatlan\";\"ascii\"\n\"3588040\";\"Uzumatlan\";\"other\"\n\"3588040\";\"Uzumatlán\";\"other\"\n\"3588043\";\"Uspantán\";\"main\"\n\"3588043\";\"Uspantan\";\"ascii\"\n\"3588043\";\"San Miguel Uspantan\";\"other\"\n\"3588043\";\"San Miguel Uspantán\";\"other\"\n\"3588206\";\"Tucurú\";\"main\"\n\"3588206\";\"Tucuru\";\"ascii\"\n\"3588206\";\"San Miguel Tucuru\";\"other\"\n\"3588206\";\"San Miguel Tucurú\";\"other\"\n\"3588258\";\"Totonicapán\";\"main\"\n\"3588258\";\"Totonicapan\";\"ascii\"\n\"3588258\";\"Totonikapan\";\"other\"\n\"3588258\";\"Тотоникапан\";\"other\"\n\"3588308\";\"Todos Santos Cuchumatán\";\"main\"\n\"3588308\";\"Todos Santos Cuchumatan\";\"ascii\"\n\"3588308\";\"Cuchumatan\";\"other\"\n\"3588308\";\"Todos Santos\";\"other\"\n\"3588308\";\"Todos Santos Cuchumatanes\";\"other\"\n\"3588460\";\"Tejutla\";\"main\"\n\"3588469\";\"Teculután\";\"main\"\n\"3588469\";\"Teculutan\";\"ascii\"\n\"3588476\";\"Tecpán Guatemala\";\"main\"\n\"3588476\";\"Tecpan Guatemala\";\"ascii\"\n\"3588476\";\"Tecpam\";\"other\"\n\"3588476\";\"Tecpan\";\"other\"\n\"3588476\";\"Tecpán\";\"other\"\n\"3588491\";\"Taxisco\";\"main\"\n\"3588554\";\"Tamahú\";\"main\"\n\"3588554\";\"Tamahu\";\"ascii\"\n\"3588588\";\"Tajumulco\";\"main\"\n\"3588603\";\"Tactic\";\"main\"\n\"3588612\";\"Tacaná\";\"main\"\n\"3588612\";\"Tacana\";\"ascii\"\n\"3588653\";\"Sumpango\";\"main\"\n\"3588694\";\"Soloma\";\"main\"\n\"3588694\";\"San Pedro Soloma\";\"other\"\n\"3588698\";\"Sololá\";\"main\"\n\"3588698\";\"Solola\";\"ascii\"\n\"3588698\";\"Солола\";\"other\"\n\"3588760\";\"Sibinal\";\"main\"\n\"3588760\";\"Sabinal\";\"other\"\n\"3588760\";\"Sivinal\";\"other\"\n\"3588762\";\"Sibilia\";\"main\"\n\"3588858\";\"Senahú\";\"main\"\n\"3588858\";\"Senahu\";\"ascii\"\n\"3588984\";\"Sayaxché\";\"main\"\n\"3588984\";\"Sayaxche\";\"ascii\"\n\"3588984\";\"Sayazche\";\"other\"\n\"3588984\";\"Sayazché\";\"other\"\n\"3589036\";\"San Vicente Pacaya\";\"main\"\n\"3589036\";\"San Vicente\";\"other\"\n\"3589036\";\"San Vicente Martir\";\"other\"\n\"3589036\";\"San Vicente Mártir\";\"other\"\n\"3589062\";\"Santo Tomás La Unión\";\"main\"\n\"3589062\";\"Santo Tomas La Union\";\"ascii\"\n\"3589072\";\"Santo Domingo Xenacoj\";\"main\"\n\"3589072\";\"Santa Domingo Xenacoj\";\"other\"\n\"3589072\";\"Santo Domingo Xecanoj\";\"other\"\n\"3589072\";\"Xenacoj\";\"other\"\n\"3589072\";\"Xenaeoj\";\"other\"\n\"3589074\";\"Santo Domingo Suchitepéquez\";\"main\"\n\"3589074\";\"Santo Domingo Suchitepequez\";\"ascii\"\n\"3589074\";\"Santo Domingo\";\"other\"\n\"3589101\";\"Santiago Sacatepéquez\";\"main\"\n\"3589101\";\"Santiago Sacatepequez\";\"ascii\"\n\"3589101\";\"Santiago\";\"other\"\n\"3589103\";\"Santiago Chimaltenango\";\"main\"\n\"3589103\";\"Chimaltenango\";\"other\"\n\"3589105\";\"Santiago Atitlán\";\"main\"\n\"3589105\";\"Santiago Atitlan\";\"ascii\"\n\"3589105\";\"Atitlan\";\"other\"\n\"3589105\";\"Atitlán\";\"other\"\n\"3589105\";\"Santiago\";\"other\"\n\"3589159\";\"Santa Rosa de Lima\";\"main\"\n\"3589159\";\"Santa Rosa\";\"other\"\n\"3589159\";\"Santa Rose de Lima\";\"other\"\n\"3589247\";\"Santa María Visitación\";\"main\"\n\"3589247\";\"Santa Maria Visitacion\";\"ascii\"\n\"3589249\";\"Santa María Ixhuatán\";\"main\"\n\"3589249\";\"Santa Maria Ixhuatan\";\"ascii\"\n\"3589249\";\"Ixhuatan\";\"other\"\n\"3589249\";\"Ixhuatán\";\"other\"\n\"3589253\";\"Santa María de Jesús\";\"main\"\n\"3589253\";\"Santa Maria de Jesus\";\"ascii\"\n\"3589253\";\"Santa Maria\";\"other\"\n\"3589253\";\"Santa María\";\"other\"\n\"3589256\";\"Santa María Chiquimula\";\"main\"\n\"3589256\";\"Santa Maria Chiquimula\";\"ascii\"\n\"3589282\";\"Santa Lucía Utatlán\";\"main\"\n\"3589282\";\"Santa Lucia Utatlan\";\"ascii\"\n\"3589282\";\"Santa Lucia\";\"other\"\n\"3589282\";\"Santa Lucía\";\"other\"\n\"3589285\";\"Santa Lucía Milpas Altas\";\"main\"\n\"3589285\";\"Santa Lucia Milpas Altas\";\"ascii\"\n\"3589285\";\"Santa Lucia\";\"other\"\n\"3589285\";\"Santa Lucía\";\"other\"\n\"3589287\";\"Santa Lucía La Reforma\";\"main\"\n\"3589287\";\"Santa Lucia La Reforma\";\"ascii\"\n\"3589289\";\"Santa Lucía Cotzumalguapa\";\"main\"\n\"3589289\";\"Santa Lucia Cotzumalguapa\";\"ascii\"\n\"3589289\";\"Santa Lucia\";\"other\"\n\"3589289\";\"Santa Lucía\";\"other\"\n\"3589355\";\"Santa Eulalia\";\"main\"\n\"3589395\";\"Santa Cruz Verapaz\";\"main\"\n\"3589395\";\"Santa Cruz\";\"other\"\n\"3589398\";\"Santa Cruz Naranjo\";\"main\"\n\"3589398\";\"Santa Cruz\";\"other\"\n\"3589400\";\"Santa Cruz Muluá\";\"main\"\n\"3589400\";\"Santa Cruz Mulua\";\"ascii\"\n\"3589400\";\"Mulua\";\"other\"\n\"3589400\";\"Muluá\";\"other\"\n\"3589402\";\"Santa Cruz La Laguna\";\"main\"\n\"3589402\";\"Santa Cruz\";\"other\"\n\"3589404\";\"Santa Cruz del Quiché\";\"main\"\n\"3589404\";\"Santa Cruz del Quiche\";\"ascii\"\n\"3589404\";\"Santa-Krus-del'-Kiche\";\"other\"\n\"3589404\";\"Санта-Крус-дель-Киче\";\"other\"\n\"3589408\";\"Santa Cruz Balanyá\";\"main\"\n\"3589408\";\"Santa Cruz Balanya\";\"ascii\"\n\"3589433\";\"Santa Clara La Laguna\";\"main\"\n\"3589433\";\"Santa Clara\";\"other\"\n\"3589452\";\"Santa Catarina Pinula\";\"main\"\n\"3589454\";\"Santa Catarina Palopó\";\"main\"\n\"3589454\";\"Santa Catarina Palopo\";\"ascii\"\n\"3589454\";\"Santa Catalina\";\"other\"\n\"3589454\";\"Santa Catarina\";\"other\"\n\"3589456\";\"Santa Catarina Mita\";\"main\"\n\"3589458\";\"Santa Catarina Ixtahuacán\";\"main\"\n\"3589458\";\"Santa Catarina Ixtahuacan\";\"ascii\"\n\"3589460\";\"Santa Catarina Barahona\";\"main\"\n\"3589460\";\"Santa Catalina\";\"other\"\n\"3589460\";\"Santa Catarina\";\"other\"\n\"3589475\";\"Santa Bárbara\";\"main\"\n\"3589475\";\"Santa Barbara\";\"ascii\"\n\"3589480\";\"Santa Apolonia\";\"main\"\n\"3589498\";\"Santa Ana Huista\";\"main\"\n\"3589507\";\"Santa Ana\";\"main\"\n\"3589541\";\"San Sebastián Huehuetenango\";\"main\"\n\"3589541\";\"San Sebastian Huehuetenango\";\"ascii\"\n\"3589541\";\"San Sebastian\";\"other\"\n\"3589541\";\"San Sebastián\";\"other\"\n\"3589548\";\"San Sebastián\";\"main\"\n\"3589548\";\"San Sebastian\";\"ascii\"\n\"3589554\";\"Sansare\";\"main\"\n\"3589569\";\"San Raimundo\";\"main\"\n\"3589569\";\"San Raymundo\";\"other\"\n\"3589577\";\"San Rafael Pie de La Cuesta\";\"main\"\n\"3589577\";\"San Rafael\";\"other\"\n\"3589577\";\"San Rafael Pie Cuesta\";\"other\"\n\"3589577\";\"San Rafael Pie la Cuesta\";\"other\"\n\"3589577\";\"San Rafael Pié la Cuesta\";\"other\"\n\"3589579\";\"San Rafael Petzal\";\"main\"\n\"3589579\";\"San Rafael\";\"other\"\n\"3589592\";\"San Rafael Las Flores\";\"main\"\n\"3589592\";\"San Rafael\";\"other\"\n\"3589595\";\"San Rafael La Independencia\";\"main\"\n\"3589595\";\"San Rafael Independencia\";\"other\"\n\"3589626\";\"San Pedro Sacatepéquez\";\"main\"\n\"3589626\";\"San Pedro Sacatepequez\";\"ascii\"\n\"3589626\";\"San Pedra\";\"other\"\n\"3589626\";\"San Pedro\";\"other\"\n\"3589627\";\"San Pedro Sacatepéquez\";\"main\"\n\"3589627\";\"San Pedro Sacatepequez\";\"ascii\"\n\"3589629\";\"San Pedro Pinula\";\"main\"\n\"3589632\";\"San Pedro Necta\";\"main\"\n\"3589637\";\"San Pedro La Laguna\";\"main\"\n\"3589637\";\"San Pedro\";\"other\"\n\"3589637\";\"San Pedro La Gaguna\";\"other\"\n\"3589640\";\"San Pedro Jocopilas\";\"main\"\n\"3589643\";\"San Pedro Carchá\";\"main\"\n\"3589643\";\"San Pedro Carcha\";\"ascii\"\n\"3589643\";\"Carcha\";\"other\"\n\"3589643\";\"Carchá\";\"other\"\n\"3589646\";\"San Pedro Ayampuc\";\"main\"\n\"3589669\";\"San Pablo La Laguna\";\"main\"\n\"3589669\";\"San Pablo\";\"other\"\n\"3589669\";\"San Pablo Laguna\";\"other\"\n\"3589671\";\"San Pablo Jocopilas\";\"main\"\n\"3589671\";\"San Pablo\";\"other\"\n\"3589677\";\"San Pablo\";\"main\"\n\"3589706\";\"San Miguel Sigüilá\";\"main\"\n\"3589706\";\"San Miguel Siguila\";\"ascii\"\n\"3589706\";\"Siguila\";\"other\"\n\"3589706\";\"Sigüilá\";\"other\"\n\"3589709\";\"San Miguel Panán\";\"main\"\n\"3589709\";\"San Miguel Panan\";\"ascii\"\n\"3589709\";\"Panan\";\"other\"\n\"3589709\";\"Panán\";\"other\"\n\"3589720\";\"San Miguel Ixtahuacán\";\"main\"\n\"3589720\";\"San Miguel Ixtahuacan\";\"ascii\"\n\"3589720\";\"San Miguel\";\"other\"\n\"3589727\";\"San Miguel Dueñas\";\"main\"\n\"3589727\";\"San Miguel Duenas\";\"ascii\"\n\"3589727\";\"Duenas\";\"other\"\n\"3589727\";\"Dueñas\";\"other\"\n\"3589730\";\"San Miguel Chicaj\";\"main\"\n\"3589734\";\"San Miguel Acatán\";\"main\"\n\"3589734\";\"San Miguel Acatan\";\"ascii\"\n\"3589770\";\"San Mateo Ixtatán\";\"main\"\n\"3589770\";\"San Mateo Ixtatan\";\"ascii\"\n\"3589774\";\"San Mateo\";\"main\"\n\"3589776\";\"San Martín Zapotitlán\";\"main\"\n\"3589776\";\"San Martin Zapotitlan\";\"ascii\"\n\"3589776\";\"San Martin\";\"other\"\n\"3589776\";\"San Martín\";\"other\"\n\"3589778\";\"San Martín Sacatepéquez\";\"main\"\n\"3589778\";\"San Martin Sacatepequez\";\"ascii\"\n\"3589778\";\"San Martin\";\"other\"\n\"3589778\";\"San Martín\";\"other\"\n\"3589780\";\"San Martín Jilotepeque\";\"main\"\n\"3589780\";\"San Martin Jilotepeque\";\"ascii\"\n\"3589795\";\"San Marcos La Laguna\";\"main\"\n\"3589795\";\"San Marcos\";\"other\"\n\"3589805\";\"San Marcos\";\"main\"\n\"3589805\";\"La Union\";\"other\"\n\"3589805\";\"San Marcos La Union\";\"other\"\n\"3589812\";\"San Manuel Chaparrón\";\"main\"\n\"3589812\";\"San Manuel Chaparron\";\"ascii\"\n\"3589812\";\"Chaparron\";\"other\"\n\"3589812\";\"Chaparrón\";\"other\"\n\"3589822\";\"San Luis Jilotepeque\";\"main\"\n\"3589822\";\"Jilotepeque\";\"other\"\n\"3589822\";\"San Luis\";\"other\"\n\"3589824\";\"San Luis Ixcán\";\"main\"\n\"3589824\";\"San Luis Ixcan\";\"ascii\"\n\"3589841\";\"San Luis\";\"main\"\n\"3589850\";\"San Lucas Tolimán\";\"main\"\n\"3589850\";\"San Lucas Toliman\";\"ascii\"\n\"3589850\";\"San Lucas\";\"other\"\n\"3589852\";\"San Lucas Sacatepéquez\";\"main\"\n\"3589852\";\"San Lucas Sacatepequez\";\"ascii\"\n\"3589852\";\"San Lucas\";\"other\"\n\"3589869\";\"San Lorenzo\";\"main\"\n\"3589880\";\"San Juan Tecuaco\";\"main\"\n\"3589880\";\"Tecuaco\";\"other\"\n\"3589885\";\"San Juan Sacatepéquez\";\"main\"\n\"3589885\";\"San Juan Sacatepequez\";\"ascii\"\n\"3589896\";\"San Juan La Laguna\";\"main\"\n\"3589896\";\"San Juan\";\"other\"\n\"3589900\";\"San Juan Ixcoy\";\"main\"\n\"3589903\";\"San Juan Ermita\";\"main\"\n\"3589903\";\"San Juan de la Ermita\";\"other\"\n\"3589913\";\"San Juan Cotzal\";\"main\"\n\"3589917\";\"San Juan Chamelco\";\"main\"\n\"3589917\";\"Chamelco\";\"other\"\n\"3589923\";\"San Juan Bautista\";\"main\"\n\"3589923\";\"San Juan\";\"other\"\n\"3589925\";\"San Juan Atitán\";\"main\"\n\"3589925\";\"San Juan Atitan\";\"ascii\"\n\"3589925\";\"San Juan Atitlan\";\"other\"\n\"3589925\";\"San Juan Atitlán\";\"other\"\n\"3589975\";\"San José Poaquil\";\"main\"\n\"3589975\";\"San Jose Poaquil\";\"ascii\"\n\"3589977\";\"San José Pinula\";\"main\"\n\"3589977\";\"San Jose Pinula\";\"ascii\"\n\"3589983\";\"San José Ojetenán\";\"main\"\n\"3589983\";\"San Jose Ojetenan\";\"ascii\"\n\"3590017\";\"San José La Arada\";\"main\"\n\"3590017\";\"San Jose La Arada\";\"ascii\"\n\"3590017\";\"San Jose Arada\";\"other\"\n\"3590017\";\"San José Arada\";\"other\"\n\"3590029\";\"San José El Ídolo\";\"main\"\n\"3590029\";\"San Jose El Idolo\";\"ascii\"\n\"3590030\";\"San José del Golfo\";\"main\"\n\"3590030\";\"San Jose del Golfo\";\"ascii\"\n\"3590030\";\"San Jose El Golfo\";\"other\"\n\"3590030\";\"San José El Golfo\";\"other\"\n\"3590053\";\"San José Acatempa\";\"main\"\n\"3590053\";\"San Jose Acatempa\";\"ascii\"\n\"3590053\";\"Acatempa\";\"other\"\n\"3590069\";\"San José\";\"main\"\n\"3590069\";\"San Jose\";\"ascii\"\n\"3590114\";\"San Jerónimo\";\"main\"\n\"3590114\";\"San Jeronimo\";\"ascii\"\n\"3590127\";\"San Jacinto\";\"main\"\n\"3590195\";\"San Gabriel\";\"main\"\n\"3590197\";\"San Francisco Zapotitlán\";\"main\"\n\"3590197\";\"San Francisco Zapotitlan\";\"ascii\"\n\"3590213\";\"San Francisco La Unión\";\"main\"\n\"3590213\";\"San Francisco La Union\";\"ascii\"\n\"3590219\";\"San Francisco El Alto\";\"main\"\n\"3590219\";\"San Francisco\";\"other\"\n\"3590249\";\"San Francisco\";\"main\"\n\"3590288\";\"San Felipe\";\"main\"\n\"3590316\";\"San Cristóbal Verapaz\";\"main\"\n\"3590316\";\"San Cristobal Verapaz\";\"ascii\"\n\"3590316\";\"San Cristobal\";\"other\"\n\"3590316\";\"San Cristóbal\";\"other\"\n\"3590318\";\"San Cristóbal Totonicapán\";\"main\"\n\"3590318\";\"San Cristobal Totonicapan\";\"ascii\"\n\"3590318\";\"San Cristobal\";\"other\"\n\"3590318\";\"San Cristóbal\";\"other\"\n\"3590323\";\"San Cristóbal Cucho\";\"main\"\n\"3590323\";\"San Cristobal Cucho\";\"ascii\"\n\"3590323\";\"San Cristobal\";\"other\"\n\"3590323\";\"San Cristóbal\";\"other\"\n\"3590325\";\"San Cristóbal Acasaguastlán\";\"main\"\n\"3590325\";\"San Cristobal Acasaguastlan\";\"ascii\"\n\"3590325\";\"Acasaguastlan\";\"other\"\n\"3590325\";\"Acasaguastlán\";\"other\"\n\"3590325\";\"San Cristobal\";\"other\"\n\"3590325\";\"San Cristóbal\";\"other\"\n\"3590347\";\"San Carlos Sija\";\"main\"\n\"3590347\";\"San Carlos\";\"other\"\n\"3590347\";\"Sija\";\"other\"\n\"3590384\";\"San Bernardino\";\"main\"\n\"3590389\";\"San Benito\";\"main\"\n\"3590393\";\"San Bartolomé Milpas Altas\";\"main\"\n\"3590393\";\"San Bartolome Milpas Altas\";\"ascii\"\n\"3590393\";\"San Barlotome Milpas Altas\";\"other\"\n\"3590393\";\"San Barlotomé Milpas Altas\";\"other\"\n\"3590393\";\"San Bartolome\";\"other\"\n\"3590393\";\"San Bartolomé\";\"other\"\n\"3590395\";\"San Bartolomé Jocotenango\";\"main\"\n\"3590395\";\"San Bartolome Jocotenango\";\"ascii\"\n\"3590399\";\"San Bartolo\";\"main\"\n\"3590406\";\"Sanarate\";\"main\"\n\"3590412\";\"San Antonio Suchitepéquez\";\"main\"\n\"3590412\";\"San Antonio Suchitepequez\";\"ascii\"\n\"3590412\";\"San Antonio\";\"other\"\n\"3590419\";\"San Antonio Sacatepéquez\";\"main\"\n\"3590419\";\"San Antonio Sacatepequez\";\"ascii\"\n\"3590419\";\"San Antonio\";\"other\"\n\"3590424\";\"San Antonio Palopó\";\"main\"\n\"3590424\";\"San Antonio Palopo\";\"ascii\"\n\"3590424\";\"San Antonio\";\"other\"\n\"3590449\";\"San Antonio La Paz\";\"main\"\n\"3590456\";\"San Antonio Ilotenango\";\"main\"\n\"3590458\";\"San Antonio Huista\";\"main\"\n\"3590475\";\"San Antonio Aguas Calientes\";\"main\"\n\"3590475\";\"San Antonio\";\"other\"\n\"3590520\";\"San Andrés Xecul\";\"main\"\n\"3590520\";\"San Andres Xecul\";\"ascii\"\n\"3590520\";\"San Andres\";\"other\"\n\"3590520\";\"San Andrés\";\"other\"\n\"3590522\";\"San Andrés Villa Seca\";\"main\"\n\"3590522\";\"San Andres Villa Seca\";\"ascii\"\n\"3590522\";\"San Andres\";\"other\"\n\"3590522\";\"San Andrés\";\"other\"\n\"3590524\";\"San Andrés Semetabaj\";\"main\"\n\"3590524\";\"San Andres Semetabaj\";\"ascii\"\n\"3590524\";\"San Andres\";\"other\"\n\"3590524\";\"San Andrés\";\"other\"\n\"3590526\";\"San Andrés Sajcabajá\";\"main\"\n\"3590526\";\"San Andres Sajcabaja\";\"ascii\"\n\"3590529\";\"San Andrés Itzapa\";\"main\"\n\"3590529\";\"San Andres Itzapa\";\"ascii\"\n\"3590529\";\"Itzapa\";\"other\"\n\"3590537\";\"San Andrés\";\"main\"\n\"3590537\";\"San Andres\";\"ascii\"\n\"3590547\";\"San Agustín Acasaguastlán\";\"main\"\n\"3590547\";\"San Agustin Acasaguastlan\";\"ascii\"\n\"3590547\";\"San Agustin\";\"other\"\n\"3590547\";\"San Agustín\";\"other\"\n\"3590567\";\"Samayac\";\"main\"\n\"3590605\";\"Salcajá\";\"main\"\n\"3590605\";\"Salcaja\";\"ascii\"\n\"3590690\";\"Sacapulas\";\"main\"\n\"3590788\";\"Río Hondo\";\"main\"\n\"3590788\";\"Rio Hondo\";\"ascii\"\n\"3590804\";\"Río Bravo\";\"main\"\n\"3590804\";\"Rio Bravo\";\"ascii\"\n\"3590858\";\"Retalhuleu\";\"main\"\n\"3590858\";\"Retalhuleo\";\"other\"\n\"3590858\";\"Retalhuley\";\"other\"\n\"3590858\";\"Retaluleu\";\"other\"\n\"3590858\";\"Реталулеу\";\"other\"\n\"3590924\";\"Rabinal\";\"main\"\n\"3590973\";\"Quezaltepeque\";\"main\"\n\"3590973\";\"Quetzaltepeque\";\"other\"\n\"3590979\";\"Quetzaltenango\";\"main\"\n\"3590979\";\"Kecaltenangas\";\"other\"\n\"3590979\";\"Kesal'tenango\";\"other\"\n\"3590979\";\"Quexaltenango\";\"other\"\n\"3590979\";\"Quezaltenango\";\"other\"\n\"3590979\";\"ketsu~arutenango\";\"other\"\n\"3590979\";\"Кесальтенанго\";\"other\"\n\"3590979\";\"ケツァルテナンゴ\";\"other\"\n\"3590987\";\"Quesada\";\"main\"\n\"3590987\";\"Quezada\";\"other\"\n\"3591028\";\"Purulhá\";\"main\"\n\"3591028\";\"Purulha\";\"ascii\"\n\"3591060\";\"Puerto San José\";\"main\"\n\"3591060\";\"Puerto San Jose\";\"ascii\"\n\"3591060\";\"Puerto de San Jose\";\"other\"\n\"3591060\";\"Puerto de San José\";\"other\"\n\"3591060\";\"San Jose\";\"other\"\n\"3591060\";\"San Jose de Guatemala\";\"other\"\n\"3591060\";\"San José\";\"other\"\n\"3591060\";\"San José de Guatemala\";\"other\"\n\"3591062\";\"Puerto Barrios\";\"main\"\n\"3591062\";\"Puehrto-Barrios\";\"other\"\n\"3591062\";\"Пуэрто-Барриос\";\"other\"\n\"3591092\";\"Pueblo Nuevo Viñas\";\"main\"\n\"3591092\";\"Pueblo Nuevo Vinas\";\"ascii\"\n\"3591092\";\"Pueblo Nuevo\";\"other\"\n\"3591093\";\"Pueblo Nuevo Tiquisate\";\"main\"\n\"3591093\";\"Pueblo Nuevo\";\"other\"\n\"3591093\";\"Tequisate\";\"other\"\n\"3591093\";\"Tiquisate\";\"other\"\n\"3591093\";\"Tiquizate\";\"other\"\n\"3591106\";\"Pueblo Nuevo\";\"main\"\n\"3591181\";\"Poptún\";\"main\"\n\"3591181\";\"Poptun\";\"ascii\"\n\"3591181\";\"Poctum\";\"other\"\n\"3591181\";\"Poctun\";\"other\"\n\"3591181\";\"Poctún\";\"other\"\n\"3591181\";\"Santa Barbara\";\"other\"\n\"3591181\";\"Santa Bárbara\";\"other\"\n\"3591210\";\"Pochuta\";\"main\"\n\"3591415\";\"Petapa\";\"main\"\n\"3591415\";\"San Miguel Petapa\";\"other\"\n\"3591512\";\"Patzún\";\"main\"\n\"3591512\";\"Patzun\";\"ascii\"\n\"3591517\";\"Patzité\";\"main\"\n\"3591517\";\"Patzite\";\"ascii\"\n\"3591523\";\"Patzicía\";\"main\"\n\"3591523\";\"Patzicia\";\"ascii\"\n\"3591541\";\"Patulul\";\"main\"\n\"3591574\";\"Pastores\";\"main\"\n\"3591618\";\"Pasaco\";\"main\"\n\"3591629\";\"Parramos\";\"main\"\n\"3591676\";\"Panzós\";\"main\"\n\"3591676\";\"Panzos\";\"ascii\"\n\"3591750\";\"Panajachel\";\"main\"\n\"3591833\";\"Palín\";\"main\"\n\"3591833\";\"Palin\";\"ascii\"\n\"3591841\";\"Palestina de los Altos\";\"main\"\n\"3591841\";\"Palestina\";\"other\"\n\"3591851\";\"Palencia\";\"main\"\n\"3591885\";\"Pajapita\";\"main\"\n\"3591955\";\"Pachalum\";\"main\"\n\"3591997\";\"Ostuncalco\";\"main\"\n\"3591997\";\"San Juan Ostuncalco\";\"other\"\n\"3592019\";\"Oratorio\";\"main\"\n\"3592019\";\"El Oratorio\";\"other\"\n\"3592035\";\"Olopa\";\"main\"\n\"3592086\";\"Ocós\";\"main\"\n\"3592086\";\"Ocos\";\"ascii\"\n\"3592086\";\"Puerto De Ocos\";\"other\"\n\"3592105\";\"Nuevo San Carlos\";\"main\"\n\"3592108\";\"Nuevo Progreso\";\"main\"\n\"3592108\";\"Nuevo Progresso\";\"other\"\n\"3592126\";\"Nueva Santa Rosa\";\"main\"\n\"3592145\";\"Nueva Concepción\";\"main\"\n\"3592145\";\"Nueva Concepcion\";\"ascii\"\n\"3592145\";\"Concepcion\";\"other\"\n\"3592145\";\"Concepcion La Grande\";\"other\"\n\"3592145\";\"Concepción\";\"other\"\n\"3592145\";\"Concepción La Grande\";\"other\"\n\"3592217\";\"Nentón\";\"main\"\n\"3592217\";\"Nenton\";\"ascii\"\n\"3592237\";\"Nebaj\";\"main\"\n\"3592286\";\"Nahualá\";\"main\"\n\"3592286\";\"Nahuala\";\"ascii\"\n\"3592322\";\"Moyuta\";\"main\"\n\"3592322\";\"Moyutla\";\"other\"\n\"3592322\";\"Pueblo Moyuta\";\"other\"\n\"3592349\";\"Morazán\";\"main\"\n\"3592349\";\"Morazan\";\"ascii\"\n\"3592362\";\"Morales\";\"main\"\n\"3592477\";\"Monjas\";\"main\"\n\"3592483\";\"Momostenango\";\"main\"\n\"3592519\";\"Mixco\";\"main\"\n\"3592519\";\"Mishko\";\"other\"\n\"3592519\";\"Мишко\";\"other\"\n\"3592609\";\"Mazatenango\";\"main\"\n\"3592609\";\"Masatenango\";\"other\"\n\"3592609\";\"Масатенанго\";\"other\"\n\"3592635\";\"Mataquescuintla\";\"main\"\n\"3592635\";\"Mataquesquintla\";\"other\"\n\"3592642\";\"Masagua\";\"main\"\n\"3592751\";\"Malacatancito\";\"main\"\n\"3592751\";\"Santa AnaMalacatan\";\"other\"\n\"3592751\";\"Santa AnaMalacatán\";\"other\"\n\"3592753\";\"Malacatán\";\"main\"\n\"3592753\";\"Malacatan\";\"ascii\"\n\"3592770\";\"Magdalena Milpas Altas\";\"main\"\n\"3592770\";\"Magdalena\";\"other\"\n\"3593235\";\"Los Amates\";\"main\"\n\"3593376\";\"Lívingston\";\"main\"\n\"3593376\";\"Livingston\";\"ascii\"\n\"3593500\";\"La Unión\";\"main\"\n\"3593500\";\"La Union\";\"ascii\"\n\"3594143\";\"La Reforma\";\"main\"\n\"3594143\";\"Reforma\";\"other\"\n\"3594315\";\"Lanquín\";\"main\"\n\"3594315\";\"Lanquin\";\"ascii\"\n\"3594422\";\"La Libertad\";\"main\"\n\"3594423\";\"La Libertad\";\"main\"\n\"3594423\";\"La Florida\";\"other\"\n\"3594575\";\"La Gomera\";\"main\"\n\"3594703\";\"La Esperanza\";\"main\"\n\"3594703\";\"Esperanza\";\"other\"\n\"3594753\";\"La Democracia\";\"main\"\n\"3594753\";\"Democracia\";\"other\"\n\"3595069\";\"Jutiapa\";\"main\"\n\"3595069\";\"Juliapa\";\"other\"\n\"3595069\";\"Khutiapa\";\"other\"\n\"3595069\";\"Хутиапа\";\"other\"\n\"3595148\";\"Joyabaj\";\"main\"\n\"3595171\";\"Jocotenango\";\"main\"\n\"3595181\";\"Jocotán\";\"main\"\n\"3595181\";\"Jocotan\";\"ascii\"\n\"3595224\";\"Jerez\";\"main\"\n\"3595232\";\"Jalpatagua\";\"main\"\n\"3595237\";\"Jalapa\";\"main\"\n\"3595237\";\"Khalapa\";\"other\"\n\"3595237\";\"Халапа\";\"other\"\n\"3595248\";\"Jacaltenango\";\"main\"\n\"3595248\";\"Khakal'tenango\";\"other\"\n\"3595248\";\"Хакальтенанго\";\"other\"\n\"3595255\";\"Iztapa\";\"main\"\n\"3595255\";\"Istapa\";\"other\"\n\"3595255\";\"Iztapa Puerto\";\"other\"\n\"3595255\";\"Puerto Iztapa\";\"other\"\n\"3595255\";\"Puerto de Iztapa\";\"other\"\n\"3595282\";\"Ixtahuacán\";\"main\"\n\"3595282\";\"Ixtahuacan\";\"ascii\"\n\"3595282\";\"Istaguacan\";\"other\"\n\"3595282\";\"Istaguacán\";\"other\"\n\"3595282\";\"Itzal\";\"other\"\n\"3595282\";\"San Ildefonso\";\"other\"\n\"3595282\";\"San Ildefonso Ixtahuacan\";\"other\"\n\"3595282\";\"San Ildefonso Ixtahuacán\";\"other\"\n\"3595329\";\"Ixchiguán\";\"main\"\n\"3595329\";\"Ixchiguan\";\"ascii\"\n\"3595366\";\"Ipala\";\"main\"\n\"3595366\";\"Jilotepeque\";\"other\"\n\"3595403\";\"Huité\";\"main\"\n\"3595403\";\"Huite\";\"ascii\"\n\"3595406\";\"Huitán\";\"main\"\n\"3595406\";\"Huitan\";\"ascii\"\n\"3595416\";\"Huehuetenango\";\"main\"\n\"3595503\";\"Guazacapán\";\"main\"\n\"3595503\";\"Guazacapan\";\"ascii\"\n\"3595554\";\"Guanagazapa\";\"main\"\n\"3595560\";\"Gualán\";\"main\"\n\"3595560\";\"Gualan\";\"ascii\"\n\"3595560\";\"Guala\";\"other\"\n\"3595674\";\"Génova\";\"main\"\n\"3595674\";\"Genova\";\"ascii\"\n\"3595714\";\"Fraijanes\";\"main\"\n\"3595721\";\"Flores Costa Cuca\";\"main\"\n\"3595721\";\"Flores\";\"other\"\n\"3595725\";\"Flores\";\"main\"\n\"3595725\";\"Flores Peten\";\"other\"\n\"3595725\";\"Flores Petén\";\"other\"\n\"3595725\";\"Флорес\";\"other\"\n\"3595757\";\"Estanzuela\";\"main\"\n\"3595778\";\"Esquipulas Palo Gordo\";\"main\"\n\"3595778\";\"Palo Gorde\";\"other\"\n\"3595778\";\"Palo Gordo\";\"other\"\n\"3595783\";\"Esquipulas\";\"main\"\n\"3595803\";\"Escuintla\";\"main\"\n\"3595803\";\"Ehskuintla\";\"other\"\n\"3595803\";\"Esquintla\";\"other\"\n\"3595803\";\"esuku~intora\";\"other\"\n\"3595803\";\"Эскуинтла\";\"other\"\n\"3595803\";\"エスクィントラ\";\"other\"\n\"3595929\";\"El Tumbador\";\"main\"\n\"3595929\";\"El Trumbador\";\"other\"\n\"3595929\";\"Tumbador\";\"other\"\n\"3596041\";\"El Tejar\";\"main\"\n\"3596041\";\"Tejar\";\"other\"\n\"3596249\";\"El Rodeo\";\"main\"\n\"3596249\";\"Rodeo\";\"other\"\n\"3596389\";\"El Quetzal\";\"main\"\n\"3596389\";\"Quetzal\";\"other\"\n\"3596421\";\"Guastatoya\";\"main\"\n\"3596421\";\"El Progreso\";\"other\"\n\"3596421\";\"Gusfatoya\";\"other\"\n\"3596421\";\"Progreso\";\"other\"\n\"3596423\";\"El Progreso\";\"main\"\n\"3596423\";\"Progreso\";\"other\"\n\"3596644\";\"El Palmar\";\"main\"\n\"3596644\";\"Palmar\";\"other\"\n\"3596940\";\"El Jícaro\";\"main\"\n\"3596940\";\"El Jicaro\";\"ascii\"\n\"3596940\";\"Jicaro\";\"other\"\n\"3597078\";\"El Estor\";\"main\"\n\"3597301\";\"El Chol\";\"main\"\n\"3597301\";\"Santa Cruz El Chol\";\"other\"\n\"3597587\";\"El Asintal\";\"main\"\n\"3597587\";\"Acintal\";\"other\"\n\"3597587\";\"Asintal\";\"other\"\n\"3597587\";\"El Acintal\";\"other\"\n\"3597676\";\"El Adelanto\";\"main\"\n\"3597676\";\"Adelanto\";\"other\"\n\"3597722\";\"Dolores\";\"main\"\n\"3597750\";\"Cuyotenango\";\"main\"\n\"3597772\";\"Cunén\";\"main\"\n\"3597772\";\"Cunen\";\"ascii\"\n\"3597802\";\"Cuilco\";\"main\"\n\"3597804\";\"Cuilapa\";\"main\"\n\"3597804\";\"Cuajiniquilapa\";\"other\"\n\"3597837\";\"Cubulco\";\"main\"\n\"3597966\";\"Conguaco\";\"main\"\n\"3597976\";\"Concepción Tutuapa\";\"main\"\n\"3597976\";\"Concepcion Tutuapa\";\"ascii\"\n\"3597976\";\"Concepcion\";\"other\"\n\"3597976\";\"Concepción\";\"other\"\n\"3597976\";\"Conception\";\"other\"\n\"3597976\";\"Conception Tutuapa\";\"other\"\n\"3597985\";\"Concepción Las Minas\";\"main\"\n\"3597985\";\"Concepcion Las Minas\";\"ascii\"\n\"3597985\";\"Concepcion\";\"other\"\n\"3597985\";\"Concepción\";\"other\"\n\"3597993\";\"Concepción Chiquirichapa\";\"main\"\n\"3597993\";\"Concepcion Chiquirichapa\";\"ascii\"\n\"3597993\";\"Concepcion\";\"other\"\n\"3597993\";\"Concepción\";\"other\"\n\"3598005\";\"Concepción\";\"main\"\n\"3598005\";\"Concepcion\";\"ascii\"\n\"3598006\";\"Concepción\";\"main\"\n\"3598006\";\"Concepcion\";\"ascii\"\n\"3598025\";\"Comitancillo\";\"main\"\n\"3598025\";\"Comitacillo\";\"other\"\n\"3598031\";\"Comapa\";\"main\"\n\"3598034\";\"Comalapa\";\"main\"\n\"3598041\";\"Colotenango\";\"main\"\n\"3598073\";\"Colomba\";\"main\"\n\"3598119\";\"Cobán\";\"main\"\n\"3598119\";\"Coban\";\"ascii\"\n\"3598122\";\"Coatepeque\";\"main\"\n\"3598128\";\"Ciudad Vieja\";\"main\"\n\"3598129\";\"Ciudad Tecún Umán\";\"main\"\n\"3598129\";\"Ciudad Tecun Uman\";\"ascii\"\n\"3598129\";\"Ayutla\";\"other\"\n\"3598131\";\"Ciudad Melchor de Mencos\";\"main\"\n\"3598131\";\"Allahan\";\"other\"\n\"3598131\";\"Fallabon\";\"other\"\n\"3598131\";\"Fallabón\";\"other\"\n\"3598131\";\"Melchor Mencos\";\"other\"\n\"3598131\";\"Melchor de Mencos\";\"other\"\n\"3598132\";\"Guatemala City\";\"main\"\n\"3598132\";\"Cidade da Guatemala\";\"other\"\n\"3598132\";\"Citta del Guatemala\";\"other\"\n\"3598132\";\"Città del Guatemala\";\"other\"\n\"3598132\";\"Ciudad Guatemala\";\"other\"\n\"3598132\";\"Ciudad de Guatemala\";\"other\"\n\"3598132\";\"Ciutat de Guatemala\";\"other\"\n\"3598132\";\"Guate\";\"other\"\n\"3598132\";\"Guatemala\";\"other\"\n\"3598132\";\"Guatemala Hiria\";\"other\"\n\"3598132\";\"Guatemala by\";\"other\"\n\"3598132\";\"Guatemala la Nueva\";\"other\"\n\"3598132\";\"Guatemala-Stadt\";\"other\"\n\"3598132\";\"Guatemala-Urbo\";\"other\"\n\"3598132\";\"Guatemala-stad\";\"other\"\n\"3598132\";\"Gvatemala\";\"other\"\n\"3598132\";\"Gvatemalurbo\";\"other\"\n\"3598132\";\"Gwatemala\";\"other\"\n\"3598132\";\"New Guatemala\";\"other\"\n\"3598132\";\"Nueva Guatemala\";\"other\"\n\"3598132\";\"Nueva Guatemala de la Asuncion\";\"other\"\n\"3598132\";\"Nueva Guatemala de la Asunción\";\"other\"\n\"3598132\";\"Pole tes Gouatemalas\";\"other\"\n\"3598132\";\"Santiago de Guatimala\";\"other\"\n\"3598132\";\"Santiago de los Caballeros de Guatemala la Nueva\";\"other\"\n\"3598132\";\"gua de ma la shi\";\"other\"\n\"3598132\";\"guatemarashiti\";\"other\"\n\"3598132\";\"gwatemalla si\";\"other\"\n\"3598132\";\"kawtemalasiti\";\"other\"\n\"3598132\";\"mdynt ghwatymala\";\"other\"\n\"3598132\";\"shhr gwatmala\";\"other\"\n\"3598132\";\"Πόλη της Γουατεμάλας\";\"other\"\n\"3598132\";\"Гватемала\";\"other\"\n\"3598132\";\"גואטמלה סיטי\";\"other\"\n\"3598132\";\"גוואטמלה סיטי\";\"other\"\n\"3598132\";\"شهر گواتمالا\";\"other\"\n\"3598132\";\"مدينة غواتيمالا\";\"other\"\n\"3598132\";\"กัวเตมาลาซิตี\";\"other\"\n\"3598132\";\"グアテマラシティ\";\"other\"\n\"3598132\";\"瓜地馬拉市\";\"other\"\n\"3598132\";\"과테말라 시\";\"other\"\n\"3598277\";\"Chuarrancho\";\"main\"\n\"3598277\";\"Chibatutuy\";\"other\"\n\"3598415\";\"Chisec\";\"main\"\n\"3598462\";\"Chiquimulilla\";\"main\"\n\"3598465\";\"Chiquimula\";\"main\"\n\"3598465\";\"Chikimula\";\"other\"\n\"3598465\";\"Ciudad Procer\";\"other\"\n\"3598465\";\"Ciudad Prócer\";\"other\"\n\"3598465\";\"La Perla de Oriente\";\"other\"\n\"3598465\";\"Чикимула\";\"other\"\n\"3598513\";\"Chinique\";\"main\"\n\"3598529\";\"Chinautla\";\"main\"\n\"3598529\";\"Chignautla\";\"other\"\n\"3598529\";\"Santa Cruz de Chinautla\";\"other\"\n\"3598572\";\"Chimaltenango\";\"main\"\n\"3598572\";\"Chimal'tenango\";\"other\"\n\"3598572\";\"Santa Ana Chimaltenango\";\"other\"\n\"3598572\";\"Чимальтенанго\";\"other\"\n\"3598655\";\"Chichicastenango\";\"main\"\n\"3598655\";\"Chichikastenango\";\"other\"\n\"3598655\";\"Santo Tomas Chichicastenango\";\"other\"\n\"3598655\";\"Santo Tomás Chichicastenango\";\"other\"\n\"3598655\";\"Чичикастенанго\";\"other\"\n\"3598659\";\"Chiché\";\"main\"\n\"3598659\";\"Chiche\";\"ascii\"\n\"3598670\";\"Chicamán\";\"main\"\n\"3598670\";\"Chicaman\";\"ascii\"\n\"3598678\";\"Chicacao\";\"main\"\n\"3598692\";\"Chiantla\";\"main\"\n\"3598787\";\"Champerico\";\"main\"\n\"3598787\";\"Puerto Champerico\";\"other\"\n\"3598787\";\"Puerto de Champerico\";\"other\"\n\"3598804\";\"Chajul\";\"main\"\n\"3598825\";\"Chahal\";\"main\"\n\"3598958\";\"Catarina\";\"main\"\n\"3598968\";\"Casillas\";\"main\"\n\"3599069\";\"Cantel\";\"main\"\n\"3599094\";\"Canillá\";\"main\"\n\"3599094\";\"Canilla\";\"ascii\"\n\"3599094\";\"Caniya\";\"other\"\n\"3599094\";\"Caniyá\";\"other\"\n\"3599181\";\"Camotán\";\"main\"\n\"3599181\";\"Camotan\";\"ascii\"\n\"3599253\";\"Cajolá\";\"main\"\n\"3599253\";\"Cajola\";\"ascii\"\n\"3599265\";\"Cahabón\";\"main\"\n\"3599265\";\"Cahabon\";\"ascii\"\n\"3599287\";\"Cabricán\";\"main\"\n\"3599287\";\"Cabrican\";\"ascii\"\n\"3599298\";\"Cabañas\";\"main\"\n\"3599298\";\"Cabanas\";\"ascii\"\n\"3599575\";\"Barillas\";\"main\"\n\"3599582\";\"Barberena\";\"main\"\n\"3599582\";\"Barbarena\";\"other\"\n\"3599633\";\"Atescatempa\";\"main\"\n\"3599639\";\"Asunción Mita\";\"main\"\n\"3599639\";\"Asuncion Mita\";\"ascii\"\n\"3599639\";\"Asuncion\";\"other\"\n\"3599639\";\"Mita\";\"other\"\n\"3599699\";\"Antigua Guatemala\";\"main\"\n\"3599699\";\"Antigua\";\"other\"\n\"3599699\";\"Antigua-Gvatemala\";\"other\"\n\"3599699\";\"Muy Noble y Muy Leal Ciudad de Santiago de los Caballeros\";\"other\"\n\"3599699\";\"Santiago de los Caballeros de Guatemala\";\"other\"\n\"3599699\";\"The Most Noble and Most Loyal City of Santiago of the Knights of Goathemala\";\"other\"\n\"3599699\";\"an de gua\";\"other\"\n\"3599699\";\"Антигуа-Гватемала\";\"other\"\n\"3599699\";\"אנטיגואה גואטמלה\";\"other\"\n\"3599699\";\"安地瓜\";\"other\"\n\"3599735\";\"Amatitlán\";\"main\"\n\"3599735\";\"Amatitlan\";\"ascii\"\n\"3599735\";\"San Juan Amatitlan\";\"other\"\n\"3599735\";\"San Juan Amatitlán\";\"other\"\n\"3599788\";\"Alotenango\";\"main\"\n\"3599788\";\"San Juan Alotenango\";\"other\"\n\"3599793\";\"Almolonga\";\"main\"\n\"3599912\";\"Aguacatán\";\"main\"\n\"3599912\";\"Aguacatan\";\"ascii\"\n\"3599972\";\"Agua Blanca\";\"main\"\n\"3600008\";\"Acatenango\";\"main\"\n\"4038554\";\"Santa Rita\";\"main\"\n\"4038588\";\"Sinajana\";\"main\"\n\"4038647\";\"Talofofo\";\"main\"\n\"4038659\";\"Tamuning\";\"main\"\n\"4038710\";\"Toto\";\"main\"\n\"4038794\";\"Yigo\";\"main\"\n\"4038809\";\"Yona\";\"main\"\n\"4042606\";\"Ordot\";\"main\"\n\"4043390\";\"Mongmong\";\"main\"\n\"4043399\";\"Merizo\";\"main\"\n\"4043615\";\"Chalan Pago\";\"main\"\n\"4043655\";\"Barrigada Heights\";\"main\"\n\"4043656\";\"Barrigada\";\"main\"\n\"4043804\";\"Agat\";\"main\"\n\"4043909\";\"Dededo\";\"main\"\n\"4044012\";\"Hagåtña\";\"main\"\n\"4044012\";\"Hagatna\";\"ascii\"\n\"4044012\";\"Agan'ja\";\"other\"\n\"4044012\";\"Agana\";\"other\"\n\"4044012\";\"Agana - Hagatna\";\"other\"\n\"4044012\";\"Agaña\";\"other\"\n\"4044012\";\"Agaña - Hagatña\";\"other\"\n\"4044012\";\"a jia ni ya\";\"other\"\n\"4044012\";\"hagania\";\"other\"\n\"4044012\";\"hagasnya\";\"other\"\n\"4044012\";\"Аганья\";\"other\"\n\"4044012\";\"ハガニア\";\"other\"\n\"4044012\";\"阿加尼亚\";\"other\"\n\"4044012\";\"하갓냐\";\"other\"\n\"4044079\";\"Latte Heights Estates\";\"main\"\n\"2370358\";\"Quinhámel\";\"main\"\n\"2370358\";\"Quinhamel\";\"ascii\"\n\"2370358\";\"Quinhameli\";\"other\"\n\"2370473\";\"Quebo\";\"main\"\n\"2371467\";\"Mansôa\";\"main\"\n\"2371467\";\"Mansoa\";\"ascii\"\n\"2371467\";\"Porto Mansoa\";\"other\"\n\"2372532\";\"Gabú\";\"main\"\n\"2372532\";\"Gabu\";\"ascii\"\n\"2372532\";\"Gaba\";\"other\"\n\"2372532\";\"Gabu-Sara\";\"other\"\n\"2372532\";\"Gabú-Sara\";\"other\"\n\"2372532\";\"Nova Lamego\";\"other\"\n\"2372532\";\"Villa Gabu Sara\";\"other\"\n\"2372647\";\"Farim\";\"main\"\n\"2373526\";\"Catió\";\"main\"\n\"2373526\";\"Catio\";\"ascii\"\n\"2373951\";\"Canchungo\";\"main\"\n\"2373951\";\"Pinto\";\"other\"\n\"2373951\";\"Teixeira Pinto\";\"other\"\n\"2374311\";\"Cacheu\";\"main\"\n\"2374583\";\"Bubaque\";\"main\"\n\"2374583\";\"Bubaquer\";\"other\"\n\"2374588\";\"Buba\";\"main\"\n\"2374688\";\"Bolama\";\"main\"\n\"2374688\";\"Bulama\";\"other\"\n\"2374688\";\"Port Beaver\";\"other\"\n\"2374759\";\"Bissorã\";\"main\"\n\"2374759\";\"Bissora\";\"ascii\"\n\"2374759\";\"Bissoram\";\"other\"\n\"2374775\";\"Bissau\";\"main\"\n\"2374775\";\"Bisao\";\"other\"\n\"2374775\";\"Bisau\";\"other\"\n\"2374775\";\"Bisau - Bissau\";\"other\"\n\"2374775\";\"Bisauo\";\"other\"\n\"2374775\";\"Bisaŭo\";\"other\"\n\"2374775\";\"Bissao\";\"other\"\n\"2374775\";\"Bissáu\";\"other\"\n\"2374775\";\"Mpissaou\";\"other\"\n\"2374775\";\"Sao Jose de Bissau\";\"other\"\n\"2374775\";\"São José de Bissáu\";\"other\"\n\"2374775\";\"bi shao\";\"other\"\n\"2374775\";\"bis'sa'u\";\"other\"\n\"2374775\";\"bisau\";\"other\"\n\"2374775\";\"bsaw\";\"other\"\n\"2374775\";\"bysayw\";\"other\"\n\"2374775\";\"Μπισσάου\";\"other\"\n\"2374775\";\"Бисао\";\"other\"\n\"2374775\";\"Бисау\";\"other\"\n\"2374775\";\"ביסאו\";\"other\"\n\"2374775\";\"بساؤ\";\"other\"\n\"2374775\";\"بیسائو\";\"other\"\n\"2374775\";\"বিস্সাউ\";\"other\"\n\"2374775\";\"ቢሳው\";\"other\"\n\"2374775\";\"ビサウ\";\"other\"\n\"2374775\";\"比绍\";\"other\"\n\"2374775\";\"비사우\";\"other\"\n\"2375254\";\"Bafatá\";\"main\"\n\"2375254\";\"Bafata\";\"ascii\"\n\"3375409\";\"Vreed en Hoop\";\"main\"\n\"3375941\";\"Skeldon\";\"main\"\n\"3375941\";\"Number 80\";\"other\"\n\"3375941\";\"Skeldon Place\";\"other\"\n\"3376223\";\"Rosignol\";\"main\"\n\"3376223\";\"Rosignal\";\"other\"\n\"3376520\";\"Parika\";\"main\"\n\"3376762\";\"New Amsterdam\";\"main\"\n\"3377265\";\"Mahaicony Village\";\"main\"\n\"3377265\";\"Mahaicony\";\"other\"\n\"3377267\";\"Mahaica Village\";\"main\"\n\"3377408\";\"Linden\";\"main\"\n\"3377408\";\"Линден\";\"other\"\n\"3377722\";\"Kumaka\";\"main\"\n\"3378644\";\"Georgetown\";\"main\"\n\"3378644\";\"Demerara\";\"other\"\n\"3378644\";\"Dzhordzhtaun\";\"other\"\n\"3378644\";\"Dzordztaunas\";\"other\"\n\"3378644\";\"Džordžtaunas\";\"other\"\n\"3378644\";\"Georgtauno\";\"other\"\n\"3378644\";\"Georgtaŭno\";\"other\"\n\"3378644\";\"Tzortztaoun\";\"other\"\n\"3378644\";\"jojitaun\";\"other\"\n\"3378644\";\"jwrj tawn\";\"other\"\n\"3378644\";\"jwrj twghn\";\"other\"\n\"3378644\";\"qiao zhi dun\";\"other\"\n\"3378644\";\"Τζορτζτάουν\";\"other\"\n\"3378644\";\"Джорджтаун\";\"other\"\n\"3378644\";\"ג'ורג'טאון\";\"other\"\n\"3378644\";\"جورج تاون\";\"other\"\n\"3378644\";\"جورج توغن\";\"other\"\n\"3378644\";\"جورج‌تاو\";\"other\"\n\"3378644\";\"جورج‌تاون\";\"other\"\n\"3378644\";\"ጆርጅታውን\";\"other\"\n\"3378644\";\"ジョージタウン\";\"other\"\n\"3378644\";\"乔治敦\";\"other\"\n\"3378644\";\"조지타운\";\"other\"\n\"3378690\";\"Fort Wellington\";\"main\"\n\"3379507\";\"Bartica\";\"main\"\n\"3379507\";\"Barteke\";\"other\"\n\"3379777\";\"Apoteri\";\"main\"\n\"7303406\";\"Anna Regina\";\"main\"\n\"1818211\";\"Yung Shue Wan\";\"main\"\n\"1818211\";\"Yung Shu Wan\";\"other\"\n\"1818775\";\"Sok Kwu Wan\";\"main\"\n\"1818775\";\"Sok-Kvu-Van\";\"other\"\n\"1818775\";\"Сок-Кву-Ван\";\"other\"\n\"1819609\";\"Kowloon\";\"main\"\n\"1819609\";\"Chiu-lung\";\"other\"\n\"1819609\";\"Czjulun\";\"other\"\n\"1819609\";\"Kaulunas\";\"other\"\n\"1819609\";\"Koulun\";\"other\"\n\"1819609\";\"jiu long\";\"other\"\n\"1819609\";\"julung\";\"other\"\n\"1819609\";\"Цзюлун\";\"other\"\n\"1819609\";\"九龍\";\"other\"\n\"1819609\";\"주룽\";\"other\"\n\"1819729\";\"Hong Kong\";\"main\"\n\"1819729\";\"Gonkong\";\"other\"\n\"1819729\";\"Victoria\";\"other\"\n\"1819729\";\"Гонконг\";\"other\"\n\"3600026\";\"Puerto Cortez\";\"main\"\n\"3600026\";\"Port Cortez\";\"other\"\n\"3600026\";\"Puehrto-Kortes\";\"other\"\n\"3600026\";\"Puerto Caballo\";\"other\"\n\"3600026\";\"Пуэрто-Кортес\";\"other\"\n\"3600057\";\"Zopilotepe\";\"main\"\n\"3600134\";\"Zamora\";\"main\"\n\"3600139\";\"Zambrano\";\"main\"\n\"3600165\";\"Yuscarán\";\"main\"\n\"3600165\";\"Yuscaran\";\"ascii\"\n\"3600195\";\"Yoro\";\"main\"\n\"3600199\";\"Yorito\";\"main\"\n\"3600232\";\"Yarumela\";\"main\"\n\"3600236\";\"Yaruchel\";\"main\"\n\"3600254\";\"Yamaranguila\";\"main\"\n\"3600271\";\"Yaguacire\";\"main\"\n\"3600280\";\"Wawina\";\"main\"\n\"3600280\";\"Guaguina\";\"other\"\n\"3600280\";\"Guawina\";\"other\"\n\"3600295\";\"Wampusirpi\";\"main\"\n\"3600327\";\"Villanueva\";\"main\"\n\"3600328\";\"Villa Nueva\";\"main\"\n\"3600328\";\"Villanueva Viejo\";\"other\"\n\"3600338\";\"Villa de San Francisco\";\"main\"\n\"3600338\";\"Villa San Francisco\";\"other\"\n\"3600340\";\"Villa de San Antonio\";\"main\"\n\"3600340\";\"La Villa de San Antonio\";\"other\"\n\"3600340\";\"San Antonio\";\"other\"\n\"3600340\";\"Villa San Antonio\";\"other\"\n\"3600357\";\"Victoria\";\"main\"\n\"3600382\";\"Veracruz\";\"main\"\n\"3600421\";\"Valle de Ángeles\";\"main\"\n\"3600421\";\"Valle de Angeles\";\"ascii\"\n\"3600422\";\"Valle de Ángeles\";\"main\"\n\"3600422\";\"Valle de Angeles\";\"ascii\"\n\"3600450\";\"Vallecillo\";\"main\"\n\"3600591\";\"Trujillo\";\"main\"\n\"3600598\";\"Trojas\";\"main\"\n\"3600598\";\"Trojas Campo\";\"other\"\n\"3600605\";\"Trinidad de Copán\";\"main\"\n\"3600605\";\"Trinidad de Copan\";\"ascii\"\n\"3600605\";\"La Trinidad\";\"other\"\n\"3600605\";\"Trinidad\";\"other\"\n\"3600608\";\"Trinidad\";\"main\"\n\"3600626\";\"Travesía\";\"main\"\n\"3600626\";\"Travesia\";\"ascii\"\n\"3600629\";\"Tras Cerros\";\"main\"\n\"3600642\";\"Toyós\";\"main\"\n\"3600642\";\"Toyos\";\"ascii\"\n\"3600662\";\"Tornabé\";\"main\"\n\"3600662\";\"Tornabe\";\"ascii\"\n\"3600704\";\"Tocoa\";\"main\"\n\"3600704\";\"Tokoa\";\"other\"\n\"3600704\";\"Токоа\";\"other\"\n\"3600841\";\"Teupasenti\";\"main\"\n\"3600895\";\"Tepusteca\";\"main\"\n\"3600906\";\"Tepanguare\";\"main\"\n\"3600906\";\"Tepanguara\";\"other\"\n\"3600931\";\"Tela\";\"main\"\n\"3600949\";\"Tegucigalpa\";\"main\"\n\"3600949\";\"Tegucigalpo\";\"other\"\n\"3600949\";\"Tegucigucigalpa\";\"other\"\n\"3600949\";\"Tegusigal'pa\";\"other\"\n\"3600949\";\"Tegusigalpa\";\"other\"\n\"3600949\";\"Teguzigalpa\";\"other\"\n\"3600949\";\"Tenkousinkalpa\";\"other\"\n\"3600949\";\"de gu si jia ba\";\"other\"\n\"3600949\";\"tegushigarupa\";\"other\"\n\"3600949\";\"tegusigalpa\";\"other\"\n\"3600949\";\"tekusikalpa\";\"other\"\n\"3600949\";\"tgwsygalpa\";\"other\"\n\"3600949\";\"tgwsyglph\";\"other\"\n\"3600949\";\"Τεγκουσιγκάλπα\";\"other\"\n\"3600949\";\"Тегусигалпа\";\"other\"\n\"3600949\";\"Тегусигальпа\";\"other\"\n\"3600949\";\"Тегусігальпа\";\"other\"\n\"3600949\";\"טגוסיגלפה\";\"other\"\n\"3600949\";\"تگوسیگالپا\";\"other\"\n\"3600949\";\"เตกูซิกัลปา\";\"other\"\n\"3600949\";\"ቴጉሲጋልፓ\";\"other\"\n\"3600949\";\"テグシガルパ\";\"other\"\n\"3600949\";\"德古斯加巴\";\"other\"\n\"3600949\";\"테구시갈파\";\"other\"\n\"3600951\";\"Teguajinal\";\"main\"\n\"3600966\";\"Taulabé\";\"main\"\n\"3600966\";\"Taulabe\";\"ascii\"\n\"3600969\";\"Taujica\";\"main\"\n\"3600997\";\"Taragual\";\"main\"\n\"3601039\";\"Támara\";\"main\"\n\"3601039\";\"Tamara\";\"ascii\"\n\"3601072\";\"Talanga\";\"main\"\n\"3601159\";\"Sulaco\";\"main\"\n\"3601162\";\"Sula\";\"main\"\n\"3601179\";\"Subirana\";\"main\"\n\"3601282\";\"Sinuapa\";\"main\"\n\"3601302\";\"Silca\";\"main\"\n\"3601311\";\"Siguatepeque\";\"main\"\n\"3601367\";\"Sensenti\";\"main\"\n\"3601402\";\"Savannah Bight\";\"main\"\n\"3601402\";\"Sabana Bight\";\"other\"\n\"3601402\";\"Sabana Bigt\";\"other\"\n\"3601403\";\"Sabá\";\"main\"\n\"3601403\";\"Saba\";\"ascii\"\n\"3601403\";\"Sava\";\"other\"\n\"3601403\";\"Savá\";\"other\"\n\"3601436\";\"San Vicente Centenario\";\"main\"\n\"3601436\";\"San Vicente\";\"other\"\n\"3601436\";\"San Vicente del Centenario\";\"other\"\n\"3601462\";\"Santiago Puringla\";\"main\"\n\"3601462\";\"Santiago de Puringla\";\"other\"\n\"3601494\";\"Santa Rosa de Copán\";\"main\"\n\"3601494\";\"Santa Rosa de Copan\";\"ascii\"\n\"3601494\";\"Santa Rosa\";\"other\"\n\"3601494\";\"Santa Rosa Copan\";\"other\"\n\"3601494\";\"Santa Rosa Copán\";\"other\"\n\"3601494\";\"Santa-Rosa-de-Kopan\";\"other\"\n\"3601494\";\"Санта-Роса-де-Копан\";\"other\"\n\"3601496\";\"Santa Rosa de Aguán\";\"main\"\n\"3601496\";\"Santa Rosa de Aguan\";\"ascii\"\n\"3601496\";\"Santa Rosa Aguan\";\"other\"\n\"3601496\";\"Santa Rosa Aguán\";\"other\"\n\"3601517\";\"Santa Rita\";\"main\"\n\"3601518\";\"Santa Rita\";\"main\"\n\"3601519\";\"Santa Rita\";\"main\"\n\"3601519\";\"Santa Rita de Copan\";\"other\"\n\"3601519\";\"Santa Rita de Copán\";\"other\"\n\"3601543\";\"Santa María del Real\";\"main\"\n\"3601543\";\"Santa Maria del Real\";\"ascii\"\n\"3601543\";\"El Real\";\"other\"\n\"3601543\";\"Santa Maria de El Real\";\"other\"\n\"3601543\";\"Santa María de El Real\";\"other\"\n\"3601563\";\"Santa Lucía\";\"main\"\n\"3601563\";\"Santa Lucia\";\"ascii\"\n\"3601563\";\"Los Estanquillos\";\"other\"\n\"3601566\";\"Santa Lucía\";\"main\"\n\"3601566\";\"Santa Lucia\";\"ascii\"\n\"3601608\";\"Santa Elena\";\"main\"\n\"3601627\";\"Santa Cruz de Yojoa\";\"main\"\n\"3601664\";\"Santa Cruz\";\"main\"\n\"3601672\";\"Santa Cruz\";\"main\"\n\"3601691\";\"Santa Bárbara\";\"main\"\n\"3601691\";\"Santa Barbara\";\"ascii\"\n\"3601702\";\"Santa Ana de Yusguare\";\"main\"\n\"3601702\";\"Yusguare\";\"other\"\n\"3601707\";\"Santa Ana\";\"main\"\n\"3601719\";\"Santa Ana\";\"main\"\n\"3601733\";\"San Sebastián\";\"main\"\n\"3601733\";\"San Sebastian\";\"ascii\"\n\"3601780\";\"San Pedro Zacapa\";\"main\"\n\"3601780\";\"Zacapa\";\"other\"\n\"3601782\";\"San Pedro Sula\";\"main\"\n\"3601782\";\"San Pedro\";\"other\"\n\"3601784\";\"San Pedro de Tutule\";\"main\"\n\"3601784\";\"San Pedro Tutule\";\"other\"\n\"3601784\";\"Tutule\";\"other\"\n\"3601833\";\"San Nicolás\";\"main\"\n\"3601833\";\"San Nicolas\";\"ascii\"\n\"3601834\";\"San Nicolás\";\"main\"\n\"3601834\";\"San Nicolas\";\"ascii\"\n\"3601836\";\"San Nicolás\";\"main\"\n\"3601836\";\"San Nicolas\";\"ascii\"\n\"3601874\";\"San Matías\";\"main\"\n\"3601874\";\"San Matias\";\"ascii\"\n\"3601888\";\"San Marcos de Colón\";\"main\"\n\"3601888\";\"San Marcos de Colon\";\"ascii\"\n\"3601888\";\"San Marco de Colon\";\"other\"\n\"3601888\";\"San Marcos\";\"other\"\n\"3601899\";\"San Marcos\";\"main\"\n\"3601903\";\"San Marcos\";\"main\"\n\"3601903\";\"San Marcos de Ocotepeque\";\"other\"\n\"3601921\";\"San Manuel\";\"main\"\n\"3601921\";\"San Manuel Tehuma\";\"other\"\n\"3601925\";\"San Luis de Planes\";\"main\"\n\"3601925\";\"San Luis Planes\";\"other\"\n\"3601932\";\"San Luis\";\"main\"\n\"3601932\";\"San Luis Pajon\";\"other\"\n\"3601932\";\"San Luis Pajón\";\"other\"\n\"3601936\";\"San Luis\";\"main\"\n\"3601951\";\"San Lucas\";\"main\"\n\"3601977\";\"San Lorenzo\";\"main\"\n\"3601984\";\"San Juan Pueblo\";\"main\"\n\"3601984\";\"San Juan\";\"other\"\n\"3601992\";\"San Juan de Planes\";\"main\"\n\"3601992\";\"Planes\";\"other\"\n\"3601992\";\"Planes de San Juan\";\"other\"\n\"3601992\";\"San Juan Planes\";\"other\"\n\"3601993\";\"San Juan de Opoa\";\"main\"\n\"3601993\";\"San Juan Opoa\";\"other\"\n\"3601999\";\"San Juan de Flores\";\"main\"\n\"3601999\";\"Cantaranas\";\"other\"\n\"3601999\";\"Cantarranas\";\"other\"\n\"3601999\";\"San Juan Flores\";\"other\"\n\"3602065\";\"San José de Tarros\";\"main\"\n\"3602065\";\"San Jose de Tarros\";\"ascii\"\n\"3602066\";\"San José de Río Tinto\";\"main\"\n\"3602066\";\"San Jose de Rio Tinto\";\"ascii\"\n\"3602066\";\"Rio Tinto\";\"other\"\n\"3602066\";\"Río Tinto\";\"other\"\n\"3602066\";\"San Jose\";\"other\"\n\"3602066\";\"San Jose del Rio Tinto\";\"other\"\n\"3602066\";\"San José\";\"other\"\n\"3602066\";\"San José del Río Tinto\";\"other\"\n\"3602070\";\"San José del Potrero\";\"main\"\n\"3602070\";\"San Jose del Potrero\";\"ascii\"\n\"3602070\";\"San Jose Potrero\";\"other\"\n\"3602070\";\"San José Potrero\";\"other\"\n\"3602077\";\"San José del Boquerón\";\"main\"\n\"3602077\";\"San Jose del Boqueron\";\"ascii\"\n\"3602077\";\"Boqueron\";\"other\"\n\"3602077\";\"Boquerón\";\"other\"\n\"3602092\";\"San José de Copán\";\"main\"\n\"3602092\";\"San Jose de Copan\";\"ascii\"\n\"3602092\";\"San Jose\";\"other\"\n\"3602092\";\"San José\";\"other\"\n\"3602094\";\"San José de Comayagua\";\"main\"\n\"3602094\";\"San Jose de Comayagua\";\"ascii\"\n\"3602094\";\"San Jose Comayagua\";\"other\"\n\"3602094\";\"San José Comayagua\";\"other\"\n\"3602097\";\"San José de Colinas\";\"main\"\n\"3602097\";\"San Jose de Colinas\";\"ascii\"\n\"3602097\";\"San Jose Colinas\";\"other\"\n\"3602097\";\"San José Colinas\";\"other\"\n\"3602118\";\"San José\";\"main\"\n\"3602118\";\"San Jose\";\"ascii\"\n\"3602137\";\"San José\";\"main\"\n\"3602137\";\"San Jose\";\"ascii\"\n\"3602169\";\"San Joaquín\";\"main\"\n\"3602169\";\"San Joaquin\";\"ascii\"\n\"3602184\";\"San Jerónimo\";\"main\"\n\"3602184\";\"San Jeronimo\";\"ascii\"\n\"3602184\";\"Jeronimo\";\"other\"\n\"3602190\";\"San Jerónimo\";\"main\"\n\"3602190\";\"San Jeronimo\";\"ascii\"\n\"3602190\";\"El Espino\";\"other\"\n\"3602190\";\"San Geronimo\";\"other\"\n\"3602190\";\"San Jeronimo el Espino\";\"other\"\n\"3602190\";\"San Jerónimo el Espino\";\"other\"\n\"3602205\";\"San Jerónimo\";\"main\"\n\"3602205\";\"San Jeronimo\";\"ascii\"\n\"3602257\";\"San Ignacio\";\"main\"\n\"3602257\";\"San Ignasio\";\"other\"\n\"3602272\";\"San Francisco de Yojoa\";\"main\"\n\"3602272\";\"San Francisco Yojoa\";\"other\"\n\"3602277\";\"San Francisco del Valle\";\"main\"\n\"3602277\";\"San Francisco\";\"other\"\n\"3602281\";\"San Francisco de la Paz\";\"main\"\n\"3602281\";\"San Francisco la Paz\";\"other\"\n\"3602284\";\"San Francisco de Coray\";\"main\"\n\"3602284\";\"Coray\";\"other\"\n\"3602284\";\"San Francisco Coray\";\"other\"\n\"3602286\";\"San Francisco de Cones\";\"main\"\n\"3602287\";\"San Francisco de Becerra\";\"main\"\n\"3602287\";\"San Francisco Becerra\";\"other\"\n\"3602301\";\"San Francisco\";\"main\"\n\"3602337\";\"San Fernando\";\"main\"\n\"3602355\";\"San Esteban\";\"main\"\n\"3602359\";\"Sandy Bay\";\"main\"\n\"3602359\";\"Sand Bay\";\"other\"\n\"3602368\";\"San Diego\";\"main\"\n\"3602396\";\"San Buenaventura\";\"main\"\n\"3602428\";\"San Antonio del Norte\";\"main\"\n\"3602428\";\"San Antonio Norte\";\"other\"\n\"3602436\";\"San Antonio de la Cuesta\";\"main\"\n\"3602436\";\"San Antonio\";\"other\"\n\"3602444\";\"San Antonio de Cortés\";\"main\"\n\"3602444\";\"San Antonio de Cortes\";\"ascii\"\n\"3602473\";\"San Antonio\";\"main\"\n\"3602474\";\"San Antonio\";\"main\"\n\"3602474\";\"San Antonio de Jimia\";\"other\"\n\"3602546\";\"San Agustín\";\"main\"\n\"3602546\";\"San Agustin\";\"ascii\"\n\"3602561\";\"Sambo Creek\";\"main\"\n\"3602561\";\"Crique\";\"other\"\n\"3602561\";\"Sambo\";\"other\"\n\"3602561\";\"Sambo Creeck\";\"other\"\n\"3602561\";\"Zambo\";\"other\"\n\"3602561\";\"Zambo Crique\";\"other\"\n\"3602602\";\"Salamá\";\"main\"\n\"3602602\";\"Salama\";\"ascii\"\n\"3602603\";\"Salamá\";\"main\"\n\"3602603\";\"Salama\";\"ascii\"\n\"3602680\";\"Sabanagrande\";\"main\"\n\"3602680\";\"Sabanu Grande\";\"other\"\n\"3602736\";\"Roatán\";\"main\"\n\"3602736\";\"Roatan\";\"ascii\"\n\"3602736\";\"Coxen Hole\";\"other\"\n\"3602736\";\"Coxin Hole\";\"other\"\n\"3602758\";\"Río Lindo\";\"main\"\n\"3602758\";\"Rio Lindo\";\"ascii\"\n\"3602769\";\"Río Esteban\";\"main\"\n\"3602769\";\"Rio Esteban\";\"ascii\"\n\"3602769\";\"San Esteban\";\"other\"\n\"3602777\";\"Río Chiquito\";\"main\"\n\"3602777\";\"Rio Chiquito\";\"ascii\"\n\"3602785\";\"Río Bonito\";\"main\"\n\"3602785\";\"Rio Bonito\";\"ascii\"\n\"3602786\";\"Río Blanquito\";\"main\"\n\"3602786\";\"Rio Blanquito\";\"ascii\"\n\"3602823\";\"Río Abajo\";\"main\"\n\"3602823\";\"Rio Abajo\";\"ascii\"\n\"3602852\";\"Reitoca\";\"main\"\n\"3602852\";\"Reitoco\";\"other\"\n\"3602952\";\"Quimistán\";\"main\"\n\"3602952\";\"Quimistan\";\"ascii\"\n\"3602952\";\"Ouimistan\";\"other\"\n\"3602984\";\"Quezailica\";\"main\"\n\"3602984\";\"Quesailica\";\"other\"\n\"3602984\";\"Quezailaca\";\"other\"\n\"3603028\";\"Quebrada Seca\";\"main\"\n\"3603035\";\"Quebradas\";\"main\"\n\"3603035\";\"Las Quebradas\";\"other\"\n\"3603035\";\"Trinidad de Quebradas\";\"other\"\n\"3603041\";\"Quebrada Larga\";\"main\"\n\"3603097\";\"Quebrada de Arena\";\"main\"\n\"3603097\";\"Quebrada Arena\";\"other\"\n\"3603130\";\"Punuare\";\"main\"\n\"3603136\";\"Punta Piedra\";\"main\"\n\"3603136\";\"Punta Piedras\";\"other\"\n\"3603136\";\"Punta de Piedra\";\"other\"\n\"3603137\";\"Punta Ocote\";\"main\"\n\"3603137\";\"Punta de Ocote\";\"other\"\n\"3603157\";\"Puerto Lempira\";\"main\"\n\"3603167\";\"Puerto Castilla\";\"main\"\n\"3603167\";\"Puerto Castillo\";\"other\"\n\"3603169\";\"Puerto Alto\";\"main\"\n\"3603169\";\"Puente Alto\";\"other\"\n\"3603221\";\"Pueblo Nuevo\";\"main\"\n\"3603224\";\"Pueblo Nuevo\";\"main\"\n\"3603256\";\"Protección\";\"main\"\n\"3603256\";\"Proteccion\";\"ascii\"\n\"3603267\";\"Prieta\";\"main\"\n\"3603326\";\"Potrerillos\";\"main\"\n\"3603330\";\"Potrerillos\";\"main\"\n\"3603330\";\"Porterillas\";\"other\"\n\"3603343\";\"Potrerillos\";\"main\"\n\"3603627\";\"Pinalejo\";\"main\"\n\"3603649\";\"Pimienta Vieja\";\"main\"\n\"3603799\";\"Petoa\";\"main\"\n\"3603805\";\"Pespire\";\"main\"\n\"3603856\";\"Peña Blanca\";\"main\"\n\"3603856\";\"Pena Blanca\";\"ascii\"\n\"3603920\";\"Paujiles\";\"main\"\n\"3603998\";\"Paptalaya\";\"main\"\n\"3603998\";\"Papalaya\";\"other\"\n\"3604181\";\"Oropolí\";\"main\"\n\"3604181\";\"Oropoli\";\"ascii\"\n\"3604184\";\"Oropéndolas\";\"main\"\n\"3604184\";\"Oropendolas\";\"ascii\"\n\"3604184\";\"Las Urupas\";\"other\"\n\"3604184\";\"Oropendolo\";\"other\"\n\"3604189\";\"Orocuina\";\"main\"\n\"3604203\";\"Orica\";\"main\"\n\"3604229\";\"Omoa\";\"main\"\n\"3604251\";\"Olanchito\";\"main\"\n\"3604251\";\"Olanchita\";\"other\"\n\"3604251\";\"Оланчито\";\"other\"\n\"3604263\";\"Ojos de Agua\";\"main\"\n\"3604263\";\"Ojo de Agua\";\"other\"\n\"3604265\";\"Ojos de Agua\";\"main\"\n\"3604270\";\"Ojojona\";\"main\"\n\"3604292\";\"Ojo de Agua\";\"main\"\n\"3604320\";\"Ocote Paulino\";\"main\"\n\"3604320\";\"Ocote Pavlino\";\"other\"\n\"3604375\";\"Nuevo Chamelecón\";\"main\"\n\"3604375\";\"Nuevo Chamelecon\";\"ascii\"\n\"3604375\";\"Nuvo Chameleco\";\"other\"\n\"3604384\";\"Nueva Ocotepeque\";\"main\"\n\"3604384\";\"Ocotepeque\";\"other\"\n\"3604386\";\"Nueva Jalapa\";\"main\"\n\"3604386\";\"Nuevo Jalapa\";\"other\"\n\"3604389\";\"Nueva Esperanza\";\"main\"\n\"3604395\";\"Nueva Armenia\";\"main\"\n\"3604414\";\"Nombre de Jesús\";\"main\"\n\"3604414\";\"Nombre de Jesus\";\"ascii\"\n\"3604414\";\"Nombre Jesus\";\"other\"\n\"3604414\";\"Nombre Jesús\";\"other\"\n\"3604478\";\"Naranjito\";\"main\"\n\"3604478\";\"El Naranjito\";\"other\"\n\"3604503\";\"Namasigüe\";\"main\"\n\"3604503\";\"Namasigue\";\"ascii\"\n\"3604503\";\"Namasique\";\"other\"\n\"3604518\";\"Naco\";\"main\"\n\"3604518\";\"Las Flores de Naco\";\"other\"\n\"3604522\";\"Nacaome\";\"main\"\n\"3604579\";\"Morocelí\";\"main\"\n\"3604579\";\"Moroceli\";\"ascii\"\n\"3604579\";\"Moroceh\";\"other\"\n\"3604584\";\"Morazán\";\"main\"\n\"3604584\";\"Morazan\";\"ascii\"\n\"3604584\";\"Fransisko Morasan\";\"other\"\n\"3604584\";\"Morazon\";\"other\"\n\"3604584\";\"Morazón\";\"other\"\n\"3604584\";\"Франсиско Морасан\";\"other\"\n\"3604614\";\"Monterrey\";\"main\"\n\"3604614\";\"Monte-Rey\";\"other\"\n\"3604614\";\"Monterey del Norte\";\"other\"\n\"3604614\";\"Monterrey Sur\";\"other\"\n\"3604686\";\"Monjarás\";\"main\"\n\"3604686\";\"Monjaras\";\"ascii\"\n\"3604712\";\"Mojimán\";\"main\"\n\"3604712\";\"Mojiman\";\"ascii\"\n\"3604712\";\"Moiiman\";\"other\"\n\"3604795\";\"Minas de Oro\";\"main\"\n\"3604835\";\"Mezapa\";\"main\"\n\"3604835\";\"Mezapa Boqueron\";\"other\"\n\"3604835\";\"Mezapa Boquerón\";\"other\"\n\"3604911\";\"Mateo\";\"main\"\n\"3604949\";\"Mata de Plátano\";\"main\"\n\"3604949\";\"Mata de Platano\";\"ascii\"\n\"3605000\";\"Marcovia\";\"main\"\n\"3605005\";\"Marcala\";\"main\"\n\"3605018\";\"Marale\";\"main\"\n\"3605042\";\"Manto\";\"main\"\n\"3605053\";\"Mangulile\";\"main\"\n\"3605222\";\"Lucerna\";\"main\"\n\"3605258\";\"Los Tangos\";\"main\"\n\"3605382\";\"Los Planes\";\"main\"\n\"3605382\";\"Planes\";\"other\"\n\"3605436\";\"Los Naranjos\";\"main\"\n\"3605491\";\"Los Llanitos\";\"main\"\n\"3605491\";\"Los Llanos\";\"other\"\n\"3605729\";\"Los Caminos\";\"main\"\n\"3605729\";\"Los Cominos\";\"other\"\n\"3605837\";\"Lomitas\";\"main\"\n\"3605873\";\"Loma Alta\";\"main\"\n\"3605950\";\"Liure\";\"main\"\n\"3606035\";\"Lepaterique\";\"main\"\n\"3606035\";\"Lapaterique\";\"other\"\n\"3606048\";\"Lepaera\";\"main\"\n\"3606069\";\"Lejamaní\";\"main\"\n\"3606069\";\"Lejamani\";\"ascii\"\n\"3606075\";\"La Zumbadora\";\"main\"\n\"3606075\";\"Sumbadora\";\"other\"\n\"3606075\";\"Zumbadora\";\"other\"\n\"3606097\";\"La Virtud\";\"main\"\n\"3606097\";\"Virtud\";\"other\"\n\"3606159\";\"La Unión\";\"main\"\n\"3606159\";\"La Union\";\"ascii\"\n\"3606159\";\"Union\";\"other\"\n\"3606159\";\"Unión\";\"other\"\n\"3606171\";\"La Unión\";\"main\"\n\"3606171\";\"La Union\";\"ascii\"\n\"3606185\";\"La Trinidad\";\"main\"\n\"3606185\";\"Trinidad\";\"other\"\n\"3606250\";\"Las Vegas\";\"main\"\n\"3606251\";\"Las Vegas\";\"main\"\n\"3606292\";\"Las Trojes\";\"main\"\n\"3606292\";\"Trojes\";\"other\"\n\"3606319\";\"Las Tejeras\";\"main\"\n\"3606319\";\"Tejeras\";\"other\"\n\"3606669\";\"Las Lajas\";\"main\"\n\"3606901\";\"San José de Las Conchas\";\"main\"\n\"3606901\";\"San Jose de Las Conchas\";\"ascii\"\n\"3606901\";\"Las Conchas\";\"other\"\n\"3606901\";\"Puerto Las Conchas\";\"other\"\n\"3607003\";\"La Sarrosa\";\"main\"\n\"3607003\";\"La Zarrosa\";\"other\"\n\"3607003\";\"Sarrosa\";\"other\"\n\"3607030\";\"Las Ánimas\";\"main\"\n\"3607030\";\"Las Animas\";\"ascii\"\n\"3607042\";\"La Sabana\";\"main\"\n\"3607053\";\"La Rosa\";\"main\"\n\"3607146\";\"La Playona\";\"main\"\n\"3607254\";\"La Paz\";\"main\"\n\"3607294\";\"Langue\";\"main\"\n\"3607381\";\"La Mina\";\"main\"\n\"3607419\";\"La Masica\";\"main\"\n\"3607419\";\"Masica\";\"other\"\n\"3607436\";\"Lamaní\";\"main\"\n\"3607436\";\"Lamani\";\"ascii\"\n\"3607511\";\"La Lima\";\"main\"\n\"3607511\";\"La-Lima\";\"other\"\n\"3607511\";\"Lima Vieja\";\"other\"\n\"3607511\";\"Ла-Лима\";\"other\"\n\"3607538\";\"La Libertad\";\"main\"\n\"3607538\";\"La Liberdad\";\"other\"\n\"3607540\";\"La Libertad\";\"main\"\n\"3607644\";\"La Labor\";\"main\"\n\"3607647\";\"La Jutosa\";\"main\"\n\"3607647\";\"Jutosa\";\"other\"\n\"3607731\";\"La Huesa\";\"main\"\n\"3607731\";\"La Bueso\";\"other\"\n\"3607797\";\"Laguna Verde\";\"main\"\n\"3607802\";\"Laguna Seca\";\"main\"\n\"3607830\";\"La Guata\";\"main\"\n\"3607830\";\"Guata\";\"other\"\n\"3607838\";\"La Guama\";\"main\"\n\"3607847\";\"La Guacamaya\";\"main\"\n\"3607919\";\"La Flecha\";\"main\"\n\"3607930\";\"La Estancia\";\"main\"\n\"3607931\";\"La Estancia\";\"main\"\n\"3607931\";\"Estancia\";\"other\"\n\"3607948\";\"La Esperanza\";\"main\"\n\"3607948\";\"La Esperanz\";\"other\"\n\"3607966\";\"La Esperanza\";\"main\"\n\"3607966\";\"Nueva Esperanza\";\"other\"\n\"3607983\";\"La Ermita\";\"main\"\n\"3607983\";\"Ermita\";\"other\"\n\"3607983\";\"Hermita\";\"other\"\n\"3607986\";\"La Entrada\";\"main\"\n\"3607992\";\"La Encarnación\";\"main\"\n\"3607992\";\"La Encarnacion\";\"ascii\"\n\"3607992\";\"La Ercarnacion\";\"other\"\n\"3607992\";\"La Ercarnación\";\"other\"\n\"3608112\";\"La Criba\";\"main\"\n\"3608142\";\"La Concepción\";\"main\"\n\"3608142\";\"La Concepcion\";\"ascii\"\n\"3608248\";\"La Ceiba\";\"main\"\n\"3608248\";\"Ceiba\";\"other\"\n\"3608248\";\"La-Sejba\";\"other\"\n\"3608248\";\"Ла-Сейба\";\"other\"\n\"3608377\";\"La Brea\";\"main\"\n\"3608500\";\"Jutiquile\";\"main\"\n\"3608503\";\"Juticalpa\";\"main\"\n\"3608514\";\"Jutiapa\";\"main\"\n\"3608522\";\"Jutiapa\";\"main\"\n\"3608631\";\"Joconal\";\"main\"\n\"3608631\";\"Goconal\";\"other\"\n\"3608631\";\"Jaconal\";\"other\"\n\"3608631\";\"Joconales\";\"other\"\n\"3608635\";\"Jocón\";\"main\"\n\"3608635\";\"Jocon\";\"ascii\"\n\"3608635\";\"El Jocon\";\"other\"\n\"3608656\";\"Jiquinlaca\";\"main\"\n\"3608656\";\"Jiquinlace\";\"other\"\n\"3608692\";\"Jícaro Galán\";\"main\"\n\"3608692\";\"Jicaro Galan\";\"ascii\"\n\"3608715\";\"Jesús de Otoro\";\"main\"\n\"3608715\";\"Jesus de Otoro\";\"ascii\"\n\"3608718\";\"Jericó\";\"main\"\n\"3608718\";\"Jerico\";\"ascii\"\n\"3608743\";\"Jamalteca\";\"main\"\n\"3608798\";\"Jacaleapa\";\"main\"\n\"3608828\";\"Iralaya\";\"main\"\n\"3608828\";\"Ilaya\";\"other\"\n\"3608828\";\"Irlaya\";\"other\"\n\"3608834\";\"Intibucá\";\"main\"\n\"3608834\";\"Intibuca\";\"ascii\"\n\"3608860\";\"Ilama\";\"main\"\n\"3609112\";\"Güinope\";\"main\"\n\"3609112\";\"Guinope\";\"ascii\"\n\"3609152\";\"Guayape\";\"main\"\n\"3609152\";\"El Guayabo\";\"other\"\n\"3609231\";\"Guarizama\";\"main\"\n\"3609293\";\"Guanaja\";\"main\"\n\"3609342\";\"Gualjoco\";\"main\"\n\"3609342\";\"Gualjaco\";\"other\"\n\"3609389\";\"Gualaco\";\"main\"\n\"3609415\";\"Guaimitas\";\"main\"\n\"3609415\";\"Guaymitas\";\"other\"\n\"3609418\";\"Guaimaca\";\"main\"\n\"3609453\";\"Guacamaya\";\"main\"\n\"3609453\";\"Guacamayas\";\"other\"\n\"3609586\";\"Gracias\";\"main\"\n\"3609608\";\"Goascorán\";\"main\"\n\"3609608\";\"Goascoran\";\"ascii\"\n\"3609608\";\"Guas-Coran\";\"other\"\n\"3609667\";\"French Harbor\";\"main\"\n\"3609667\";\"French Harbour\";\"other\"\n\"3609673\";\"Francia\";\"main\"\n\"3609681\";\"Florida\";\"main\"\n\"3609690\";\"Flores\";\"main\"\n\"3609742\";\"Esquías\";\"main\"\n\"3609742\";\"Esquias\";\"ascii\"\n\"3609775\";\"Erandique\";\"main\"\n\"3609928\";\"El Zapotal del Norte\";\"main\"\n\"3609928\";\"El Zapotal\";\"other\"\n\"3609928\";\"Zapotal del Norte\";\"other\"\n\"3610046\";\"El Tular\";\"main\"\n\"3610051\";\"El Triunfo de la Cruz\";\"main\"\n\"3610051\";\"El Triunfo\";\"other\"\n\"3610051\";\"Triunfo\";\"other\"\n\"3610051\";\"Triunfo de la Cruz\";\"other\"\n\"3610060\";\"El Triunfo\";\"main\"\n\"3610060\";\"Triunfo\";\"other\"\n\"3610082\";\"El Tránsito\";\"main\"\n\"3610082\";\"El Transito\";\"ascii\"\n\"3610118\";\"El Tigre\";\"main\"\n\"3610118\";\"Tigre\";\"other\"\n\"3610139\";\"El Terrero\";\"main\"\n\"3610232\";\"El Tablón\";\"main\"\n\"3610232\";\"El Tablon\";\"ascii\"\n\"3610232\";\"Tablon\";\"other\"\n\"3610251\";\"El Suyatal\";\"main\"\n\"3610251\";\"Suyatal\";\"other\"\n\"3610251\";\"Zuyatal\";\"other\"\n\"3610278\";\"El Socorro\";\"main\"\n\"3610278\";\"Socorro\";\"other\"\n\"3610318\";\"El Sauce\";\"main\"\n\"3610318\";\"Sauce\";\"other\"\n\"3610365\";\"El Rusio\";\"main\"\n\"3610377\";\"El Rosario\";\"main\"\n\"3610487\";\"El Rincón\";\"main\"\n\"3610487\";\"El Rincon\";\"ascii\"\n\"3610555\";\"El Rancho\";\"main\"\n\"3610558\";\"El Rancho\";\"main\"\n\"3610558\";\"Rancho Grande\";\"other\"\n\"3610610\";\"El Puente\";\"main\"\n\"3610613\";\"El Progreso\";\"main\"\n\"3610613\";\"Ehl'-Progreso\";\"other\"\n\"3610613\";\"El Progress\";\"other\"\n\"3610613\";\"Progreso\";\"other\"\n\"3610613\";\"Эль-Прогресо\";\"other\"\n\"3610675\";\"El Porvenir\";\"main\"\n\"3610676\";\"El Porvenir\";\"main\"\n\"3610676\";\"Porvenir\";\"other\"\n\"3610687\";\"El Porvenir\";\"main\"\n\"3610693\";\"El Porvenir\";\"main\"\n\"3610789\";\"El Plan\";\"main\"\n\"3610813\";\"El Pino\";\"main\"\n\"3610866\";\"El Perico\";\"main\"\n\"3610912\";\"El Pedernal\";\"main\"\n\"3610965\";\"El Paraíso\";\"main\"\n\"3610965\";\"El Paraiso\";\"ascii\"\n\"3611040\";\"El Olivar\";\"main\"\n\"3611069\";\"El Ocotón\";\"main\"\n\"3611069\";\"El Ocoton\";\"ascii\"\n\"3611069\";\"Ocoton\";\"other\"\n\"3611069\";\"Ocotona\";\"other\"\n\"3611069\";\"Ocotón\";\"other\"\n\"3611088\";\"El Ocote\";\"main\"\n\"3611128\";\"El Obraje\";\"main\"\n\"3611128\";\"Obraje\";\"other\"\n\"3611133\";\"El Obraje\";\"main\"\n\"3611144\";\"El Níspero\";\"main\"\n\"3611144\";\"El Nispero\";\"ascii\"\n\"3611144\";\"Nispero\";\"other\"\n\"3611150\";\"El Negrito\";\"main\"\n\"3611150\";\"Negrito\";\"other\"\n\"3611267\";\"El Mochito\";\"main\"\n\"3611267\";\"El Nochito\";\"other\"\n\"3611267\";\"Mochito\";\"other\"\n\"3611270\";\"El Milagro\";\"main\"\n\"3611319\";\"El Marañón\";\"main\"\n\"3611319\";\"El Maranon\";\"ascii\"\n\"3611319\";\"Maranon\";\"other\"\n\"3611319\";\"Marañón\";\"other\"\n\"3611352\";\"El Lolo\";\"main\"\n\"3611356\";\"El Llano\";\"main\"\n\"3611481\";\"El Juncal\";\"main\"\n\"3611481\";\"Juncal\";\"other\"\n\"3611572\";\"Elíxir\";\"main\"\n\"3611572\";\"Elixir\";\"ascii\"\n\"3611699\";\"El Guayabito\";\"main\"\n\"3611718\";\"El Guapinol\";\"main\"\n\"3611719\";\"El Guantillo\";\"main\"\n\"3611719\";\"Guantillo\";\"other\"\n\"3611720\";\"El Guante\";\"main\"\n\"3611720\";\"Guante\";\"other\"\n\"3611842\";\"El Escaño de Tepale\";\"main\"\n\"3611842\";\"El Escano de Tepale\";\"ascii\"\n\"3611842\";\"El Escano\";\"other\"\n\"3611842\";\"Escano de Tepale\";\"other\"\n\"3611842\";\"Escano de Tepales\";\"other\"\n\"3611844\";\"El Escanito\";\"main\"\n\"3611844\";\"Escanito\";\"other\"\n\"3611933\";\"El Cubolero\";\"main\"\n\"3611933\";\"El Cubulero\";\"other\"\n\"3611986\";\"El Corpus\";\"main\"\n\"3611987\";\"Corpus\";\"main\"\n\"3611987\";\"El Corpus\";\"other\"\n\"3611995\";\"El Corozal\";\"main\"\n\"3612064\";\"El Ciruelo\";\"main\"\n\"3612064\";\"Ciruelo\";\"other\"\n\"3612138\";\"El Chimbo\";\"main\"\n\"3612138\";\"Chimbo\";\"other\"\n\"3612160\";\"El Chichicaste\";\"main\"\n\"3612160\";\"Chichicaste\";\"other\"\n\"3612160\";\"El Chichiquiste\";\"other\"\n\"3612581\";\"El Benque\";\"main\"\n\"3612640\";\"El Bálsamo\";\"main\"\n\"3612640\";\"El Balsamo\";\"ascii\"\n\"3612640\";\"Balsamo\";\"other\"\n\"3612640\";\"Bálsamo\";\"other\"\n\"3612734\";\"El Agua Dulcita\";\"main\"\n\"3612734\";\"Agua Dulcita\";\"other\"\n\"3612784\";\"El Achiotal\";\"main\"\n\"3612784\";\"Achiotal\";\"other\"\n\"3612784\";\"El Achotal\";\"other\"\n\"3612801\";\"Duyure\";\"main\"\n\"3612810\";\"Dulce Nombre de Culmí\";\"main\"\n\"3612810\";\"Dulce Nombre de Culmi\";\"ascii\"\n\"3612810\";\"Culmi\";\"other\"\n\"3612810\";\"Culmí\";\"other\"\n\"3612810\";\"Ducle Nombre\";\"other\"\n\"3612810\";\"Dulce Nombre\";\"other\"\n\"3612810\";\"Dulce Nombre Culmi\";\"other\"\n\"3612810\";\"Dulce Nombre Culmí\";\"other\"\n\"3612810\";\"El Dulce Nombre\";\"other\"\n\"3612813\";\"Dulce Nombre\";\"main\"\n\"3612838\";\"Dolores\";\"main\"\n\"3612907\";\"Danlí\";\"main\"\n\"3612907\";\"Danli\";\"ascii\"\n\"3612929\";\"Cuyamel\";\"main\"\n\"3612929\";\"Cuaymel\";\"other\"\n\"3612937\";\"Cuyalí\";\"main\"\n\"3612937\";\"Cuyali\";\"ascii\"\n\"3612949\";\"Cusuna\";\"main\"\n\"3612949\";\"Casuna\";\"other\"\n\"3612949\";\"Cusuma\";\"other\"\n\"3613015\";\"Cucuyagua\";\"main\"\n\"3613105\";\"Coyoles Central\";\"main\"\n\"3613145\";\"Correderos\";\"main\"\n\"3613145\";\"Corredero\";\"other\"\n\"3613145\";\"San Miguel Correderos\";\"other\"\n\"3613171\";\"Corquín\";\"main\"\n\"3613171\";\"Corquin\";\"ascii\"\n\"3613171\";\"Corguin\";\"other\"\n\"3613175\";\"Corozal\";\"main\"\n\"3613189\";\"Corocito\";\"main\"\n\"3613189\";\"Corocilo\";\"other\"\n\"3613230\";\"Copán\";\"main\"\n\"3613230\";\"Copan\";\"ascii\"\n\"3613230\";\"Kopan\";\"other\"\n\"3613230\";\"Копан\";\"other\"\n\"3613263\";\"Concordia\";\"main\"\n\"3613281\";\"Concepción del Sur\";\"main\"\n\"3613281\";\"Concepcion del Sur\";\"ascii\"\n\"3613281\";\"Concepcion\";\"other\"\n\"3613281\";\"Concepcion Sur\";\"other\"\n\"3613281\";\"Concepción Sur\";\"other\"\n\"3613285\";\"Concepción de la Barranca\";\"main\"\n\"3613285\";\"Concepcion de la Barranca\";\"ascii\"\n\"3613285\";\"Concepcion Barrancas\";\"other\"\n\"3613285\";\"Concepción Barrancas\";\"other\"\n\"3613286\";\"Concepción de Guasistagua\";\"main\"\n\"3613286\";\"Concepcion de Guasistagua\";\"ascii\"\n\"3613286\";\"Guasistagua\";\"other\"\n\"3613286\";\"Guyasistagua\";\"other\"\n\"3613321\";\"Comayagua\";\"main\"\n\"3613371\";\"Cololaca\";\"main\"\n\"3613394\";\"Cofradía\";\"main\"\n\"3613394\";\"Cofradia\";\"ascii\"\n\"3613402\";\"Cofradía\";\"main\"\n\"3613402\";\"Cofradia\";\"ascii\"\n\"3613509\";\"Chotepe\";\"main\"\n\"3613528\";\"Ciudad Choluteca\";\"main\"\n\"3613528\";\"Chollolteca\";\"other\"\n\"3613528\";\"Choluteca\";\"other\"\n\"3613533\";\"Choloma\";\"main\"\n\"3613547\";\"Chivana\";\"main\"\n\"3613708\";\"Chalmeca\";\"main\"\n\"3613805\";\"Cerro Grande\";\"main\"\n\"3613847\";\"Cerro Blanco\";\"main\"\n\"3613900\";\"Ceguaca\";\"main\"\n\"3613906\";\"Cedros\";\"main\"\n\"3613906\";\"Cerros\";\"other\"\n\"3614011\";\"Casa Quemada\";\"main\"\n\"3614012\";\"Casa Quemada\";\"main\"\n\"3614113\";\"Carbajales\";\"main\"\n\"3614218\";\"Cane\";\"main\"\n\"3614249\";\"Cañaveral\";\"main\"\n\"3614249\";\"Canaveral\";\"ascii\"\n\"3614249\";\"Canaverales\";\"other\"\n\"3614249\";\"Cañaverales\";\"other\"\n\"3614319\";\"Campamento\";\"main\"\n\"3614328\";\"Camasca\";\"main\"\n\"3614328\";\"Villa de Camasca\";\"other\"\n\"3614343\";\"Camalote\";\"main\"\n\"3614381\";\"Callejones\";\"main\"\n\"3614381\";\"Collejones\";\"other\"\n\"3614583\";\"Buenos Aires\";\"main\"\n\"3614663\";\"Brus Laguna\";\"main\"\n\"3614663\";\"Brewers\";\"other\"\n\"3614663\";\"Brewers Lagoon\";\"other\"\n\"3614705\";\"Bonito Oriental\";\"main\"\n\"3614789\";\"Berlín\";\"main\"\n\"3614789\";\"Berlin\";\"ascii\"\n\"3614797\";\"Belén Gualcho\";\"main\"\n\"3614797\";\"Belen Gualcho\";\"ascii\"\n\"3614797\";\"Belen\";\"other\"\n\"3614797\";\"Gualcho\";\"other\"\n\"3614805\";\"Bejuco\";\"main\"\n\"3614835\";\"Barra Patuca\";\"main\"\n\"3614835\";\"Barra del Patuca\";\"other\"\n\"3614835\";\"Butucamaya\";\"other\"\n\"3614835\";\"Butukamaya\";\"other\"\n\"3614835\";\"Patuca\";\"other\"\n\"3614872\";\"Baracoa\";\"main\"\n\"3614893\";\"Bálsamo Oriental\";\"main\"\n\"3614893\";\"Balsamo Oriental\";\"ascii\"\n\"3614893\";\"Balsamo\";\"other\"\n\"3614914\";\"Baja Mar\";\"main\"\n\"3614970\";\"Azacualpa\";\"main\"\n\"3614975\";\"Azacualpa\";\"main\"\n\"3614997\";\"Ayapa\";\"main\"\n\"3615011\";\"Auka\";\"main\"\n\"3615011\";\"Auca\";\"other\"\n\"3615022\";\"Auas\";\"main\"\n\"3615022\";\"Ahuas\";\"other\"\n\"3615022\";\"Ahuás\";\"other\"\n\"3615022\";\"Awas\";\"other\"\n\"3615022\";\"Butukawas\";\"other\"\n\"3615028\";\"Atima\";\"main\"\n\"3615030\";\"Atenas de San Cristóbal\";\"main\"\n\"3615030\";\"Atenas de San Cristobal\";\"ascii\"\n\"3615030\";\"Kilometro 17\";\"other\"\n\"3615030\";\"Kilómetro 17\";\"other\"\n\"3615065\";\"Armenta\";\"main\"\n\"3615067\";\"Armenia\";\"main\"\n\"3615069\";\"Arizona\";\"main\"\n\"3615070\";\"Arimís\";\"main\"\n\"3615070\";\"Arimis\";\"ascii\"\n\"3615090\";\"Arenal\";\"main\"\n\"3615090\";\"El Arenal\";\"other\"\n\"3615108\";\"Araulí\";\"main\"\n\"3615108\";\"Arauli\";\"ascii\"\n\"3615108\";\"Aurali\";\"other\"\n\"3615115\";\"Aramecina\";\"main\"\n\"3615125\";\"Arada\";\"main\"\n\"3615125\";\"La Arada\";\"other\"\n\"3615169\";\"Antigua Ocotepeque\";\"main\"\n\"3615169\";\"Vieja Ocotepeque\";\"other\"\n\"3615213\";\"Amapala\";\"main\"\n\"3615279\";\"Ajuterique\";\"main\"\n\"3615332\";\"Aguas del Padre\";\"main\"\n\"3615358\";\"Agualote\";\"main\"\n\"3615391\";\"Agua Fría\";\"main\"\n\"3615391\";\"Agua Fria\";\"ascii\"\n\"3615473\";\"Agua Caliente\";\"main\"\n\"3615509\";\"Agua Blanca Sur\";\"main\"\n\"3615509\";\"Agua Blanca\";\"other\"\n\"3615509\";\"Agua Blanca del Sur\";\"other\"\n\"3615556\";\"Agua Azul Rancho\";\"main\"\n\"3615556\";\"Agua Azul\";\"other\"\n\"3615556\";\"Granja\";\"other\"\n\"3615557\";\"Agua Azul\";\"main\"\n\"3615557\";\"Agua Azul Sierra\";\"other\"\n\"3615557\";\"Aserradero\";\"other\"\n\"3615582\";\"Agalteca\";\"main\"\n\"3615582\";\"Ingenio Agalteca\";\"other\"\n\"3812188\";\"Texíguat\";\"main\"\n\"3812188\";\"Texiguat\";\"ascii\"\n\"3186233\";\"Vranjic\";\"main\"\n\"3186233\";\"Selo Vranjic\";\"other\"\n\"3186233\";\"Vranjica\";\"other\"\n\"3186294\";\"Županja\";\"main\"\n\"3186294\";\"Zupanja\";\"ascii\"\n\"3186294\";\"Zhupanja\";\"other\"\n\"3186294\";\"Zsupanja\";\"other\"\n\"3186294\";\"Zsupanya\";\"other\"\n\"3186294\";\"Zupana\";\"other\"\n\"3186294\";\"jupanya\";\"other\"\n\"3186294\";\"Жупаня\";\"other\"\n\"3186294\";\"Жупања\";\"other\"\n\"3186294\";\"ジュパニャ\";\"other\"\n\"3186331\";\"Žrnovo\";\"main\"\n\"3186331\";\"Zrnovo\";\"ascii\"\n\"3186334\";\"Žrnovnica\";\"main\"\n\"3186334\";\"Zrnovnica\";\"ascii\"\n\"3186406\";\"Zlatar\";\"main\"\n\"3186662\";\"Ždralovi\";\"main\"\n\"3186662\";\"Zdralovi\";\"ascii\"\n\"3186671\";\"Zdenci\";\"main\"\n\"3186671\";\"Zdencze\";\"other\"\n\"3186737\";\"Zaton\";\"main\"\n\"3186737\";\"Zatton\";\"other\"\n\"3186781\";\"Zaprešić\";\"main\"\n\"3186781\";\"Zapresic\";\"ascii\"\n\"3186884\";\"Dubrava\";\"main\"\n\"3186884\";\"Zagrebacka Dubrava\";\"other\"\n\"3186884\";\"Zagrebačka Dubrava\";\"other\"\n\"3186886\";\"Zagreb\";\"main\"\n\"3186886\";\"Agram\";\"other\"\n\"3186886\";\"Andautonia\";\"other\"\n\"3186886\";\"Zabrag\";\"other\"\n\"3186886\";\"Zabreg\";\"other\"\n\"3186886\";\"Zagabria\";\"other\"\n\"3186886\";\"Zagrab\";\"other\"\n\"3186886\";\"Zagrabia\";\"other\"\n\"3186886\";\"Zagreba\";\"other\"\n\"3186886\";\"Zagrebas\";\"other\"\n\"3186886\";\"Zagrebi\";\"other\"\n\"3186886\";\"Zagrebo\";\"other\"\n\"3186886\";\"Zagrehb\";\"other\"\n\"3186886\";\"Zagrep\";\"other\"\n\"3186886\";\"Zagrzeb\";\"other\"\n\"3186886\";\"Zahreb\";\"other\"\n\"3186886\";\"Zankremp\";\"other\"\n\"3186886\";\"Zágráb\";\"other\"\n\"3186886\";\"Záhreb\";\"other\"\n\"3186886\";\"Záhřeb\";\"other\"\n\"3186886\";\"jagareba\";\"other\"\n\"3186886\";\"jageulebeu\";\"other\"\n\"3186886\";\"sa ge lei bu\";\"other\"\n\"3186886\";\"sa kerb\";\"other\"\n\"3186886\";\"zagrebi\";\"other\"\n\"3186886\";\"zagurebu\";\"other\"\n\"3186886\";\"zghrb\";\"other\"\n\"3186886\";\"Ζάγκρεμπ\";\"other\"\n\"3186886\";\"Загреб\";\"other\"\n\"3186886\";\"Загрэб\";\"other\"\n\"3186886\";\"זאגרב\";\"other\"\n\"3186886\";\"زغرب\";\"other\"\n\"3186886\";\"জাগরেব\";\"other\"\n\"3186886\";\"ซาเกร็บ\";\"other\"\n\"3186886\";\"ზაგრები\";\"other\"\n\"3186886\";\"ዛግሬብ\";\"other\"\n\"3186886\";\"ザグレブ\";\"other\"\n\"3186886\";\"萨格勒布\";\"other\"\n\"3186886\";\"자그레브\";\"other\"\n\"3186941\";\"Zadvorsko\";\"main\"\n\"3186952\";\"Zadar\";\"main\"\n\"3186952\";\"Zadara\";\"other\"\n\"3186952\";\"Zadaras\";\"other\"\n\"3186952\";\"Zantar\";\"other\"\n\"3186952\";\"Zara\";\"other\"\n\"3186952\";\"Zára\";\"other\"\n\"3186952\";\"jadaleu\";\"other\"\n\"3186952\";\"zadaru\";\"other\"\n\"3186952\";\"Ζαντάρ\";\"other\"\n\"3186952\";\"Задар\";\"other\"\n\"3186952\";\"ザダル\";\"other\"\n\"3186952\";\"자다르\";\"other\"\n\"3186984\";\"Zabok\";\"main\"\n\"3186984\";\"Забок\";\"other\"\n\"3187047\";\"Vukovar\";\"main\"\n\"3187047\";\"Neo-Vukovar\";\"other\"\n\"3187047\";\"Novi Vukovar\";\"other\"\n\"3187047\";\"Ovukovar\";\"other\"\n\"3187047\";\"Stari Vukovar\";\"other\"\n\"3187047\";\"Ujvukovar\";\"other\"\n\"3187047\";\"Valko\";\"other\"\n\"3187047\";\"Valkovar\";\"other\"\n\"3187047\";\"Valkó\";\"other\"\n\"3187047\";\"Valkóvár\";\"other\"\n\"3187047\";\"Vetus-Vukovar\";\"other\"\n\"3187047\";\"Vukovaras\";\"other\"\n\"3187047\";\"Vukovár\";\"other\"\n\"3187047\";\"Wukowar\";\"other\"\n\"3187047\";\"vukovu~aru\";\"other\"\n\"3187047\";\"Óvukovár\";\"other\"\n\"3187047\";\"Újvukovár\";\"other\"\n\"3187047\";\"Вуковар\";\"other\"\n\"3187047\";\"ヴコヴァル\";\"other\"\n\"3187070\";\"Vuka\";\"main\"\n\"3187142\";\"Vrsi\";\"main\"\n\"3187142\";\"Verche\";\"other\"\n\"3187142\";\"Verché\";\"other\"\n\"3187145\";\"Vrsar\";\"main\"\n\"3187145\";\"Orsera\";\"other\"\n\"3187145\";\"Врсар\";\"other\"\n\"3187153\";\"Vrpolje\";\"main\"\n\"3187230\";\"Vrgorac\";\"main\"\n\"3187230\";\"Vergoraz\";\"other\"\n\"3187232\";\"Gvozd\";\"main\"\n\"3187232\";\"Vrginmost\";\"other\"\n\"3187257\";\"Vrbovsko\";\"main\"\n\"3187257\";\"Врбовско\";\"other\"\n\"3187265\";\"Vrbovec\";\"main\"\n\"3187271\";\"Vrbova\";\"main\"\n\"3187271\";\"Orbova\";\"other\"\n\"3187301\";\"Vrbanja\";\"main\"\n\"3187301\";\"Verbanya\";\"other\"\n\"3187301\";\"Vrbanje\";\"other\"\n\"3187320\";\"Vratišinec\";\"main\"\n\"3187320\";\"Vratisinec\";\"ascii\"\n\"3187415\";\"Voloder\";\"main\"\n\"3187451\";\"Vojnić\";\"main\"\n\"3187451\";\"Vojnic\";\"ascii\"\n\"3187451\";\"Vojnich\";\"other\"\n\"3187477\";\"Vodnjan\";\"main\"\n\"3187477\";\"Dignano\";\"other\"\n\"3187477\";\"Dignano d'Istria\";\"other\"\n\"3187477\";\"Dignano d’Istria\";\"other\"\n\"3187482\";\"Vođinci\";\"main\"\n\"3187482\";\"Vodinci\";\"ascii\"\n\"3187482\";\"Vodjinci\";\"other\"\n\"3187489\";\"Vodice\";\"main\"\n\"3187489\";\"Vodizze\";\"other\"\n\"3187503\";\"Voćin\";\"main\"\n\"3187503\";\"Vocin\";\"ascii\"\n\"3187503\";\"Vuchin\";\"other\"\n\"3187503\";\"Vucsin\";\"other\"\n\"3187547\";\"Vladislavci\";\"main\"\n\"3187657\";\"Višnjevac\";\"main\"\n\"3187657\";\"Visnjevac\";\"ascii\"\n\"3187657\";\"Adolfovac\";\"other\"\n\"3187657\";\"Adolfovac Pusta\";\"other\"\n\"3187666\";\"Viškovci\";\"main\"\n\"3187666\";\"Viskovci\";\"ascii\"\n\"3187685\";\"Vis\";\"main\"\n\"3187685\";\"Lissa\";\"other\"\n\"3187694\";\"Virovitica\";\"main\"\n\"3187694\";\"Sesta\";\"other\"\n\"3187694\";\"Veroce\";\"other\"\n\"3187694\";\"Verocze\";\"other\"\n\"3187694\";\"Veröcze\";\"other\"\n\"3187694\";\"Verőce\";\"other\"\n\"3187694\";\"Virovitisa\";\"other\"\n\"3187694\";\"Weretz\";\"other\"\n\"3187694\";\"Werowititz\";\"other\"\n\"3187694\";\"Вировитица\";\"other\"\n\"3187699\";\"Virje\";\"main\"\n\"3187699\";\"Prodaviz\";\"other\"\n\"3187699\";\"Prodavíz\";\"other\"\n\"3187702\";\"Vir\";\"main\"\n\"3187702\";\"Puntadura\";\"other\"\n\"3187719\";\"Vinkovci\";\"main\"\n\"3187719\";\"Cibalae\";\"other\"\n\"3187719\";\"Vinkovce\";\"other\"\n\"3187719\";\"Vinkovcze\";\"other\"\n\"3187719\";\"Winkowitz\";\"other\"\n\"3187719\";\"Winkowzi\";\"other\"\n\"3187719\";\"Винковци\";\"other\"\n\"3187735\";\"Vinica\";\"main\"\n\"3187740\";\"Vinež\";\"main\"\n\"3187740\";\"Vinez\";\"ascii\"\n\"3187750\";\"Viljevo\";\"main\"\n\"3187750\";\"Villyo\";\"other\"\n\"3187750\";\"Villyó\";\"other\"\n\"3187750\";\"Vilyevo\";\"other\"\n\"3187826\";\"Vetovo\";\"main\"\n\"3187826\";\"Vetevo\";\"other\"\n\"3187912\";\"Velimirovac\";\"main\"\n\"3188089\";\"Veliki Drvenik\";\"main\"\n\"3188089\";\"Drivenik\";\"other\"\n\"3188089\";\"Drvenik\";\"other\"\n\"3188089\";\"Drvenik Veliki\";\"other\"\n\"3188089\";\"Veli Drvenik\";\"other\"\n\"3188089\";\"Zirona\";\"other\"\n\"3188089\";\"Вели Дрвеник\";\"other\"\n\"3188244\";\"Velika Gorica\";\"main\"\n\"3188244\";\"Nagygorica\";\"other\"\n\"3188244\";\"Nagygoricza\";\"other\"\n\"3188244\";\"Велика Горица\";\"other\"\n\"3188279\";\"Velika\";\"main\"\n\"3188326\";\"Vela Luka\";\"main\"\n\"3188326\";\"Bela Luka\";\"other\"\n\"3188326\";\"Vallegrande\";\"other\"\n\"3188326\";\"Vela-Luka\";\"other\"\n\"3188326\";\"Velika Luka\";\"other\"\n\"3188326\";\"Velja Luka\";\"other\"\n\"3188326\";\"Вела-Лука\";\"other\"\n\"3188383\";\"Varaždin\";\"main\"\n\"3188383\";\"Varazdin\";\"ascii\"\n\"3188383\";\"Aqua Viva\";\"other\"\n\"3188383\";\"Varasd\";\"other\"\n\"3188383\";\"Varasdino\";\"other\"\n\"3188383\";\"Varasdinum\";\"other\"\n\"3188383\";\"Varazhdin\";\"other\"\n\"3188383\";\"Waraschdin\";\"other\"\n\"3188383\";\"Warasdin\";\"other\"\n\"3188383\";\"Вараждин\";\"other\"\n\"3188395\";\"Valpovo\";\"main\"\n\"3188395\";\"Jovalium\";\"other\"\n\"3188395\";\"Valpach\";\"other\"\n\"3188395\";\"Valpo\";\"other\"\n\"3188395\";\"Valpó\";\"other\"\n\"3188395\";\"Walpowo\";\"other\"\n\"3188395\";\"Валпово\";\"other\"\n\"3188498\";\"Umag\";\"main\"\n\"3188498\";\"Oumank\";\"other\"\n\"3188498\";\"Umag Komunela\";\"other\"\n\"3188498\";\"Umago\";\"other\"\n\"3188498\";\"umag\";\"other\"\n\"3188498\";\"Ούμαγκ\";\"other\"\n\"3188498\";\"Умаг\";\"other\"\n\"3188538\";\"Ugljan\";\"main\"\n\"3188538\";\"Ugliano\";\"other\"\n\"3188538\";\"Uljan\";\"other\"\n\"3188581\";\"Tužno\";\"main\"\n\"3188581\";\"Tuzno\";\"ascii\"\n\"3188581\";\"Cerje Tuzno\";\"other\"\n\"3188581\";\"Cerje Tužno\";\"other\"\n\"3188604\";\"Turopolje\";\"main\"\n\"3188620\";\"Turjaci\";\"main\"\n\"3188620\";\"Turjake\";\"other\"\n\"3188635\";\"Turanj\";\"main\"\n\"3188635\";\"Torrette\";\"other\"\n\"3188675\";\"Tučepi\";\"main\"\n\"3188675\";\"Tucepi\";\"ascii\"\n\"3188675\";\"Tucepa\";\"other\"\n\"3188730\";\"Trpinja\";\"main\"\n\"3188730\";\"Terpinja\";\"other\"\n\"3188730\";\"Terpinya\";\"other\"\n\"3188763\";\"Trogir\";\"main\"\n\"3188763\";\"Trau\";\"other\"\n\"3188763\";\"Traù\";\"other\"\n\"3188763\";\"Трогир\";\"other\"\n\"3188786\";\"Trnovec\";\"main\"\n\"3188830\";\"Trilj\";\"main\"\n\"3188837\";\"Tribunj\";\"main\"\n\"3188946\";\"Tovarnik\";\"main\"\n\"3189120\";\"Tijesno\";\"main\"\n\"3189120\";\"Stretto\";\"other\"\n\"3189120\";\"Tisno\";\"other\"\n\"3189161\";\"Tenja\";\"main\"\n\"3189161\";\"Sveta Ana\";\"other\"\n\"3189161\";\"Tenje\";\"other\"\n\"3189161\";\"Tenye\";\"other\"\n\"3189489\";\"Supetarska Draga\";\"main\"\n\"3189489\";\"Supetar\";\"other\"\n\"3189489\";\"Valle San Pietro\";\"other\"\n\"3189492\";\"Supetar\";\"main\"\n\"3189492\";\"San Pietro della Brazza\";\"other\"\n\"3189492\";\"San Pietro di Brazza\";\"other\"\n\"3189492\";\"Супетар\";\"other\"\n\"3189498\";\"Sunja\";\"main\"\n\"3189543\";\"Suhopolje\";\"main\"\n\"3189543\";\"Suhoplje\";\"other\"\n\"3189543\";\"Theresowatz\";\"other\"\n\"3189713\";\"Strmec\";\"main\"\n\"3189713\";\"Odranski Strmec\";\"other\"\n\"3189718\";\"Strizivojna\";\"main\"\n\"3189782\";\"Strahoninec\";\"main\"\n\"3189810\";\"Ston\";\"main\"\n\"3189810\";\"Stagno\";\"other\"\n\"3189810\";\"Стон\";\"other\"\n\"3189844\";\"Stobreč\";\"main\"\n\"3189844\";\"Stobrec\";\"ascii\"\n\"3189858\";\"Štitar\";\"main\"\n\"3189858\";\"Stitar\";\"ascii\"\n\"3189964\";\"Starigrad\";\"main\"\n\"3189964\";\"Stari Grad\";\"other\"\n\"3189964\";\"Starigrad-Paklenica\";\"other\"\n\"3189964\";\"Velika Paklenica\";\"other\"\n\"3189964\";\"Стари Град\";\"other\"\n\"3189965\";\"Starigrad\";\"main\"\n\"3189965\";\"Cittavecchia\";\"other\"\n\"3189965\";\"Stari Grad\";\"other\"\n\"3189965\";\"Стари Град\";\"other\"\n\"3190088\";\"Srinjine\";\"main\"\n\"3190176\";\"Sračinec\";\"main\"\n\"3190176\";\"Sracinec\";\"ascii\"\n\"3190261\";\"Split\";\"main\"\n\"3190261\";\"Spalato\";\"other\"\n\"3190261\";\"Spalatum\";\"other\"\n\"3190261\";\"Splita\";\"other\"\n\"3190261\";\"Splitas\";\"other\"\n\"3190261\";\"si pu li te\";\"other\"\n\"3190261\";\"splyt\";\"other\"\n\"3190261\";\"supurito\";\"other\"\n\"3190261\";\"Σπλιτ\";\"other\"\n\"3190261\";\"Сплит\";\"other\"\n\"3190261\";\"ספליט\";\"other\"\n\"3190261\";\"スプリト\";\"other\"\n\"3190261\";\"斯普利特\";\"other\"\n\"3190347\";\"Soljani\";\"main\"\n\"3190359\";\"Solin\";\"main\"\n\"3190359\";\"Salona\";\"other\"\n\"3190359\";\"Солин\";\"other\"\n\"3190465\";\"Smokvica\";\"main\"\n\"3190465\";\"Smoquizza\";\"other\"\n\"3190523\";\"Slunj\";\"main\"\n\"3190523\";\"Slun\";\"other\"\n\"3190523\";\"Szluin\";\"other\"\n\"3190523\";\"Слуњ\";\"other\"\n\"3190544\";\"Slobodnica\";\"main\"\n\"3190586\";\"Slavonski Brod\";\"main\"\n\"3190586\";\"Brod\";\"other\"\n\"3190586\";\"Bród\";\"other\"\n\"3190586\";\"Marsonia\";\"other\"\n\"3190586\";\"Slavonski brod\";\"other\"\n\"3190586\";\"Slawonisch Brod\";\"other\"\n\"3190586\";\"Славонски Брод\";\"other\"\n\"3190586\";\"Славонски брод\";\"other\"\n\"3190589\";\"Požega\";\"main\"\n\"3190589\";\"Pozega\";\"ascii\"\n\"3190589\";\"Poschega\";\"other\"\n\"3190589\";\"Poschegg\";\"other\"\n\"3190589\";\"Posega\";\"other\"\n\"3190589\";\"Pozhega\";\"other\"\n\"3190589\";\"Pozsega\";\"other\"\n\"3190589\";\"Pozsegavar\";\"other\"\n\"3190589\";\"Pozsegavár\";\"other\"\n\"3190589\";\"Slavonska Pozega\";\"other\"\n\"3190589\";\"Slavonska Požega\";\"other\"\n\"3190589\";\"pwzhhghh\";\"other\"\n\"3190589\";\"Пожега\";\"other\"\n\"3190589\";\"پوژهغه\";\"other\"\n\"3190650\";\"Slakovci\";\"main\"\n\"3190672\";\"Škrljevo\";\"main\"\n\"3190672\";\"Skrljevo\";\"ascii\"\n\"3190813\";\"Sisak\";\"main\"\n\"3190813\";\"Segesta\";\"other\"\n\"3190813\";\"Siscia\";\"other\"\n\"3190813\";\"Sisseg\";\"other\"\n\"3190813\";\"Sissek\";\"other\"\n\"3190813\";\"Sziszek\";\"other\"\n\"3190813\";\"Сисак\";\"other\"\n\"3190835\";\"Sirač\";\"main\"\n\"3190835\";\"Sirac\";\"ascii\"\n\"3190865\";\"Sinj\";\"main\"\n\"3190865\";\"Signo\";\"other\"\n\"3190865\";\"seni\";\"other\"\n\"3190865\";\"セーニ\";\"other\"\n\"3190906\";\"Sikirevci\";\"main\"\n\"3190918\";\"Sigetec\";\"main\"\n\"3190934\";\"Sibinj\";\"main\"\n\"3190941\";\"Šibenik\";\"main\"\n\"3190941\";\"Sibenik\";\"ascii\"\n\"3190941\";\"Sebenico\";\"other\"\n\"3190941\";\"Shibenik\";\"other\"\n\"3190941\";\"shibeniku\";\"other\"\n\"3190941\";\"Шибеник\";\"other\"\n\"3190941\";\"シベニク\";\"other\"\n\"3190966\";\"Sesvete\";\"main\"\n\"3190966\";\"Сесвете\";\"other\"\n\"3191048\";\"Šenkovec\";\"main\"\n\"3191048\";\"Senkovec\";\"ascii\"\n\"3191055\";\"Senj\";\"main\"\n\"3191055\";\"Segna\";\"other\"\n\"3191055\";\"Segno\";\"other\"\n\"3191055\";\"Sen\";\"other\"\n\"3191055\";\"Sen'\";\"other\"\n\"3191055\";\"Senis\";\"other\"\n\"3191055\";\"Senya\";\"other\"\n\"3191055\";\"Zengg\";\"other\"\n\"3191055\";\"seni\";\"other\"\n\"3191055\";\"Сень\";\"other\"\n\"3191055\";\"Сењ\";\"other\"\n\"3191055\";\"セーニ\";\"other\"\n\"3191075\";\"Semeljci\";\"main\"\n\"3191097\";\"Selnica\";\"main\"\n\"3191130\";\"Selce\";\"main\"\n\"3191130\";\"Selze\";\"other\"\n\"3191265\";\"Sarvaš\";\"main\"\n\"3191265\";\"Sarvas\";\"ascii\"\n\"3191265\";\"Hirschfeld\";\"other\"\n\"3191265\";\"Sarvash\";\"other\"\n\"3191265\";\"Sarwasch\";\"other\"\n\"3191265\";\"Szarvas\";\"other\"\n\"3191316\";\"Samobor\";\"main\"\n\"3191316\";\"Szamobor\";\"other\"\n\"3191316\";\"Самобор\";\"other\"\n\"3191335\";\"Sali\";\"main\"\n\"3191335\";\"Sale\";\"other\"\n\"3191335\";\"Сали\";\"other\"\n\"3191411\";\"Runović\";\"main\"\n\"3191411\";\"Runovic\";\"ascii\"\n\"3191470\";\"Rude\";\"main\"\n\"3191490\";\"Rubeši\";\"main\"\n\"3191490\";\"Rubesi\";\"ascii\"\n\"3191514\";\"Rovišće\";\"main\"\n\"3191514\";\"Rovisce\";\"ascii\"\n\"3191518\";\"Rovinj\";\"main\"\n\"3191518\";\"Rovigno\";\"other\"\n\"3191518\";\"Rovigno d'Istria\";\"other\"\n\"3191518\";\"Rovigno d’Istria\";\"other\"\n\"3191518\";\"Rovin\";\"other\"\n\"3191518\";\"Rovin'\";\"other\"\n\"3191518\";\"Ровинь\";\"other\"\n\"3191518\";\"Ровињ\";\"other\"\n\"3191553\";\"Rokovci\";\"main\"\n\"3191561\";\"Rogoznica\";\"main\"\n\"3191561\";\"Rogosnizza\";\"other\"\n\"3191648\";\"Rijeka\";\"main\"\n\"3191648\";\"Estado libre de Fiume\";\"other\"\n\"3191648\";\"Fiume\";\"other\"\n\"3191648\";\"Fkumen\";\"other\"\n\"3191648\";\"Flumen Sancti Viti\";\"other\"\n\"3191648\";\"Reka\";\"other\"\n\"3191648\";\"Rieka\";\"other\"\n\"3191648\";\"Rijeko\";\"other\"\n\"3191648\";\"Rěka\";\"other\"\n\"3191648\";\"Sankt Veit am Flaum\";\"other\"\n\"3191648\";\"Sankt Veit am Pflaum\";\"other\"\n\"3191648\";\"Slobodna Drzava Rijeka\";\"other\"\n\"3191648\";\"Slobodna Drzhava Rijeka\";\"other\"\n\"3191648\";\"Slobodna Država Rijeka\";\"other\"\n\"3191648\";\"Stato libero di Fiume\";\"other\"\n\"3191648\";\"Vitipolis\";\"other\"\n\"3191648\";\"rieka\";\"other\"\n\"3191648\";\"Риека\";\"other\"\n\"3191648\";\"Ријека\";\"other\"\n\"3191648\";\"Слободна Држава Ријека\";\"other\"\n\"3191648\";\"リエカ\";\"other\"\n\"3191701\";\"Rezovac\";\"main\"\n\"3191701\";\"Rezovac-Krcevina\";\"other\"\n\"3191701\";\"Rezovac-Krčevina\";\"other\"\n\"3191701\";\"Rezovacke Krcevine\";\"other\"\n\"3191701\";\"Rezovačke Krčevine\";\"other\"\n\"3191704\";\"Retkovci\";\"main\"\n\"3191720\";\"Rešetari\";\"main\"\n\"3191720\";\"Resetari\";\"ascii\"\n\"3191723\";\"Repušnica\";\"main\"\n\"3191723\";\"Repusnica\";\"ascii\"\n\"3191742\";\"Remetinec\";\"main\"\n\"3191749\";\"Reka\";\"main\"\n\"3191749\";\"Rijeka\";\"other\"\n\"3191800\";\"Ražanac\";\"main\"\n\"3191800\";\"Razanac\";\"ascii\"\n\"3191963\";\"Raša\";\"main\"\n\"3191963\";\"Rasa\";\"ascii\"\n\"3191963\";\"Arsia\";\"other\"\n\"3192016\";\"Rakitje\";\"main\"\n\"3192111\";\"Radoboj\";\"main\"\n\"3192111\";\"Radobolj\";\"other\"\n\"3192174\";\"Rabac\";\"main\"\n\"3192174\";\"Rabac Luka\";\"other\"\n\"3192174\";\"Rabaz\";\"other\"\n\"3192219\";\"Punat\";\"main\"\n\"3192219\";\"Aleksandrovo\";\"other\"\n\"3192219\";\"Ponte\";\"other\"\n\"3192219\";\"Punca\";\"other\"\n\"3192224\";\"Pula\";\"main\"\n\"3192224\";\"Pluj\";\"other\"\n\"3192224\";\"Pola\";\"other\"\n\"3192224\";\"Poła\";\"other\"\n\"3192224\";\"Pulj\";\"other\"\n\"3192224\";\"pu la\";\"other\"\n\"3192224\";\"pura\";\"other\"\n\"3192224\";\"Пула\";\"other\"\n\"3192224\";\"プーラ\";\"other\"\n\"3192224\";\"普拉\";\"other\"\n\"3192345\";\"Privlaka\";\"main\"\n\"3192383\";\"Primošten\";\"main\"\n\"3192383\";\"Primosten\";\"ascii\"\n\"3192383\";\"Capocesto\";\"other\"\n\"3192383\";\"Primoscen\";\"other\"\n\"3192383\";\"Primoshten\";\"other\"\n\"3192383\";\"Primošćen\";\"other\"\n\"3192383\";\"Примоштен\";\"other\"\n\"3192438\";\"Pridraga\";\"main\"\n\"3192452\";\"Pribislavec\";\"main\"\n\"3192532\";\"Prelog\";\"main\"\n\"3192532\";\"Perlak\";\"other\"\n\"3192532\";\"Прелог\";\"other\"\n\"3192541\";\"Preko\";\"main\"\n\"3192541\";\"Oltre\";\"other\"\n\"3192545\";\"Pregrada\";\"main\"\n\"3192545\";\"Преграда\";\"other\"\n\"3192563\";\"Predavac\";\"main\"\n\"3192563\";\"Predavec\";\"other\"\n\"3192674\";\"Postire\";\"main\"\n\"3192674\";\"Postira\";\"other\"\n\"3192674\";\"Selo Postire\";\"other\"\n\"3192679\";\"Posedarje\";\"main\"\n\"3192679\";\"Posedarija\";\"other\"\n\"3192679\";\"Possedaria\";\"other\"\n\"3192699\";\"Poreč\";\"main\"\n\"3192699\";\"Porec\";\"ascii\"\n\"3192699\";\"Parenzo\";\"other\"\n\"3192699\";\"porech\";\"other\"\n\"3192699\";\"Пореч\";\"other\"\n\"3192830\";\"Poličnik\";\"main\"\n\"3192830\";\"Policnik\";\"ascii\"\n\"3192830\";\"Polesnik\";\"other\"\n\"3192830\";\"Polešnik\";\"other\"\n\"3192830\";\"Polisseno\";\"other\"\n\"3192848\";\"Polača\";\"main\"\n\"3192848\";\"Polaca\";\"ascii\"\n\"3192865\";\"Pojatno\";\"main\"\n\"3192892\";\"Podvinje\";\"main\"\n\"3192892\";\"Podvinj\";\"other\"\n\"3192904\";\"Podturen\";\"main\"\n\"3192910\";\"Podstrana\";\"main\"\n\"3192910\";\"Postrana\";\"other\"\n\"3192932\";\"Slatina\";\"main\"\n\"3192932\";\"Podravska Slatina\";\"other\"\n\"3192932\";\"Szalatnok\";\"other\"\n\"3192932\";\"Szlatina\";\"other\"\n\"3193006\";\"Podhum\";\"main\"\n\"3193006\";\"Pothum\";\"other\"\n\"3193171\";\"Jezerce\";\"main\"\n\"3193171\";\"Plitvice Seen\";\"other\"\n\"3193171\";\"Plitvicka Jezera\";\"other\"\n\"3193171\";\"Plitvickie Ozera\";\"other\"\n\"3193171\";\"Plitvička Jezera\";\"other\"\n\"3193171\";\"Плитвицкие Озера\";\"other\"\n\"3193187\";\"Pleternica\";\"main\"\n\"3193187\";\"Peternica\";\"other\"\n\"3193237\";\"Plaški\";\"main\"\n\"3193237\";\"Plaski\";\"ascii\"\n\"3193305\";\"Pitomača\";\"main\"\n\"3193305\";\"Pitomaca\";\"ascii\"\n\"3193305\";\"Pittomacha\";\"other\"\n\"3193314\";\"Piškorevci\";\"main\"\n\"3193314\";\"Piskorevci\";\"ascii\"\n\"3193331\";\"Pirovac\";\"main\"\n\"3193331\";\"Piravac\";\"other\"\n\"3193420\";\"Petrinja\";\"main\"\n\"3193420\";\"Petrinia\";\"other\"\n\"3193420\";\"Petrinya\";\"other\"\n\"3193424\";\"Petrijevci\";\"main\"\n\"3193424\";\"Petrievcze\";\"other\"\n\"3193424\";\"Petrowitz\";\"other\"\n\"3193425\";\"Petrijanec\";\"main\"\n\"3193425\";\"Petriyanets\";\"other\"\n\"3193447\";\"Peteranec\";\"main\"\n\"3193447\";\"Peteranac\";\"other\"\n\"3193522\";\"Peklenica\";\"main\"\n\"3193522\";\"Peklenicza\";\"other\"\n\"3193561\";\"Pazin\";\"main\"\n\"3193561\";\"Pisino\";\"other\"\n\"3193561\";\"Пазин\";\"other\"\n\"3193662\";\"Palovec\";\"main\"\n\"3193706\";\"Pakrac\";\"main\"\n\"3193706\";\"Pakracz\";\"other\"\n\"3193706\";\"Pakratz\";\"other\"\n\"3193706\";\"Pakrác\";\"other\"\n\"3193706\";\"Pakrácz\";\"other\"\n\"3193706\";\"Pekercz\";\"other\"\n\"3193706\";\"Pekrecz\";\"other\"\n\"3193706\";\"Пакрац\";\"other\"\n\"3193710\";\"Pakoštane\";\"main\"\n\"3193710\";\"Pakostane\";\"ascii\"\n\"3193710\";\"Pacostane\";\"other\"\n\"3193726\";\"Pag\";\"main\"\n\"3193726\";\"Isola di Pago\";\"other\"\n\"3193726\";\"Pagas\";\"other\"\n\"3193726\";\"Pago\";\"other\"\n\"3193726\";\"Paj\";\"other\"\n\"3193726\";\"Паг\";\"other\"\n\"3193754\";\"Ozalj\";\"main\"\n\"3193762\";\"Ovčara\";\"main\"\n\"3193762\";\"Ovcara\";\"ascii\"\n\"3193762\";\"Cepinska Ovcara\";\"other\"\n\"3193762\";\"Ovcara Cepinska\";\"other\"\n\"3193762\";\"Ovčara Čepinska\";\"other\"\n\"3193762\";\"Čepinska Ovčara\";\"other\"\n\"3193781\";\"Otok\";\"main\"\n\"3193781\";\"Atak\";\"other\"\n\"3193781\";\"Ottock\";\"other\"\n\"3193781\";\"Оток\";\"other\"\n\"3193782\";\"Otok\";\"main\"\n\"3193782\";\"Isola\";\"other\"\n\"3193782\";\"Оток\";\"other\"\n\"3193788\";\"Otočac\";\"main\"\n\"3193788\";\"Otocac\";\"ascii\"\n\"3193871\";\"Oštarije\";\"main\"\n\"3193871\";\"Ostarije\";\"ascii\"\n\"3193935\";\"Osijek\";\"main\"\n\"3193935\";\"Colonia Aelia Mursa\";\"other\"\n\"3193935\";\"Esseg\";\"other\"\n\"3193935\";\"Essegg\";\"other\"\n\"3193935\";\"Essek\";\"other\"\n\"3193935\";\"Eszek\";\"other\"\n\"3193935\";\"Eszék\";\"other\"\n\"3193935\";\"Mursa\";\"other\"\n\"3193935\";\"Mursia\";\"other\"\n\"3193935\";\"Osek\";\"other\"\n\"3193935\";\"Osiek\";\"other\"\n\"3193935\";\"Osigiek\";\"other\"\n\"3193935\";\"Osijeka\";\"other\"\n\"3193935\";\"Osijekas\";\"other\"\n\"3193935\";\"Osik\";\"other\"\n\"3193935\";\"oshieku\";\"other\"\n\"3193935\";\"xo siyekh\";\"other\"\n\"3193935\";\"Οσιγιέκ\";\"other\"\n\"3193935\";\"Осиек\";\"other\"\n\"3193935\";\"Осијек\";\"other\"\n\"3193935\";\"โอซีเยค\";\"other\"\n\"3193935\";\"オシエク\";\"other\"\n\"3193941\";\"Osekovo\";\"main\"\n\"3193941\";\"Oszekovo\";\"other\"\n\"3193962\";\"Oroslavje\";\"main\"\n\"3194010\";\"Oriovac\";\"main\"\n\"3194010\";\"Oriovaci\";\"other\"\n\"3194020\";\"Orehovica\";\"main\"\n\"3194029\";\"Orebić\";\"main\"\n\"3194029\";\"Orebic\";\"ascii\"\n\"3194029\";\"Sabbioncello\";\"other\"\n\"3194029\";\"Sabioncelo\";\"other\"\n\"3194029\";\"Sabiončelo\";\"other\"\n\"3194064\";\"Orahovica\";\"main\"\n\"3194064\";\"Orowitz\";\"other\"\n\"3194064\";\"Rahoca\";\"other\"\n\"3194064\";\"Raholca\";\"other\"\n\"3194064\";\"Rahóca\";\"other\"\n\"3194064\";\"Slavonska Orahovica\";\"other\"\n\"3194075\";\"Opuzen\";\"main\"\n\"3194075\";\"Fort Opus\";\"other\"\n\"3194075\";\"Opus\";\"other\"\n\"3194075\";\"Опузен\";\"other\"\n\"3194099\";\"Opatija\";\"main\"\n\"3194099\";\"Abacija\";\"other\"\n\"3194099\";\"Abbazia\";\"other\"\n\"3194099\";\"Abbázia\";\"other\"\n\"3194099\";\"Opatijo\";\"other\"\n\"3194099\";\"opatiya\";\"other\"\n\"3194099\";\"Опатия\";\"other\"\n\"3194099\";\"オパティヤ\";\"other\"\n\"3194112\";\"Omišalj\";\"main\"\n\"3194112\";\"Omisalj\";\"ascii\"\n\"3194112\";\"Castelmuschio\";\"other\"\n\"3194114\";\"Omiš\";\"main\"\n\"3194114\";\"Omis\";\"ascii\"\n\"3194114\";\"Almissa\";\"other\"\n\"3194114\";\"omish\";\"other\"\n\"3194114\";\"Омиш\";\"other\"\n\"3194145\";\"Okučani\";\"main\"\n\"3194145\";\"Okucani\";\"ascii\"\n\"3194183\";\"Ogulin\";\"main\"\n\"3194183\";\"Огулин\";\"other\"\n\"3194216\";\"Odra\";\"main\"\n\"3194245\";\"Obrovac\";\"main\"\n\"3194245\";\"Obbrovazzo\";\"other\"\n\"3194310\";\"Nuštar\";\"main\"\n\"3194310\";\"Nustar\";\"ascii\"\n\"3194310\";\"Berzete-Monostor\";\"other\"\n\"3194310\";\"Berzete-Monostora\";\"other\"\n\"3194310\";\"Berzéte-Monostor\";\"other\"\n\"3194310\";\"Berzéte-Monostora\";\"other\"\n\"3194310\";\"Monostor\";\"other\"\n\"3194319\";\"Novska\";\"main\"\n\"3194319\";\"Novszka\";\"other\"\n\"3194319\";\"Novzka\";\"other\"\n\"3194319\";\"Новска\";\"other\"\n\"3194344\";\"Novoselec\";\"main\"\n\"3194355\";\"Novi Vinodolski\";\"main\"\n\"3194355\";\"Novi\";\"other\"\n\"3194355\";\"Novi Vinodol\";\"other\"\n\"3194355\";\"Novi Vinodol'ski\";\"other\"\n\"3194355\";\"Нови Винодолски\";\"other\"\n\"3194355\";\"Нови Винодольски\";\"other\"\n\"3194379\";\"Novigrad\";\"main\"\n\"3194379\";\"Cittanova\";\"other\"\n\"3194379\";\"Cittanova d'Istria\";\"other\"\n\"3194379\";\"Новиград\";\"other\"\n\"3194422\";\"Novalja\";\"main\"\n\"3194422\";\"Novaglia\";\"other\"\n\"3194449\";\"Nova Gradiška\";\"main\"\n\"3194449\";\"Nova Gradiska\";\"ascii\"\n\"3194449\";\"Neu-Gradischka\";\"other\"\n\"3194449\";\"Neu-Gradiska\";\"other\"\n\"3194449\";\"Nova Gradisska\";\"other\"\n\"3194449\";\"Nova Ujgradiska\";\"other\"\n\"3194449\";\"Nova Újgradiska\";\"other\"\n\"3194449\";\"Ujgradiska\";\"other\"\n\"3194449\";\"Újgradiska\";\"other\"\n\"3194475\";\"Njivice\";\"main\"\n\"3194475\";\"Gnivizze\";\"other\"\n\"3194492\";\"Nin\";\"main\"\n\"3194492\";\"Nona\";\"other\"\n\"3194492\";\"Нин\";\"other\"\n\"3194499\";\"Nijemci\";\"main\"\n\"3194499\";\"Deutschdorf\";\"other\"\n\"3194499\";\"Nemci\";\"other\"\n\"3194499\";\"Nemeti\";\"other\"\n\"3194499\";\"Nempti\";\"other\"\n\"3194499\";\"Németi\";\"other\"\n\"3194552\";\"Negoslavci\";\"main\"\n\"3194558\";\"Nedeljanec\";\"main\"\n\"3194559\";\"Nedelišće\";\"main\"\n\"3194559\";\"Nedelisce\";\"ascii\"\n\"3194581\";\"Našice\";\"main\"\n\"3194581\";\"Nasice\";\"ascii\"\n\"3194581\";\"Naschitz\";\"other\"\n\"3194581\";\"Nashice\";\"other\"\n\"3194581\";\"Nasic\";\"other\"\n\"3194581\";\"Nasicz\";\"other\"\n\"3194581\";\"Nassicze\";\"other\"\n\"3194581\";\"Nekcsa\";\"other\"\n\"3194581\";\"Nekcse\";\"other\"\n\"3194581\";\"Нашице\";\"other\"\n\"3194643\";\"Murter\";\"main\"\n\"3194643\";\"Morter\";\"other\"\n\"3194762\";\"Mravince\";\"main\"\n\"3194779\";\"Mraclin\";\"main\"\n\"3194889\";\"Molve\";\"main\"\n\"3194919\";\"Mokošica\";\"main\"\n\"3194919\";\"Mokosica\";\"ascii\"\n\"3194919\";\"Moccosizza\";\"other\"\n\"3195046\";\"Mirkovci\";\"main\"\n\"3195175\";\"Mihovljan\";\"main\"\n\"3195176\";\"Mihovljan\";\"main\"\n\"3195176\";\"Mihovlan\";\"other\"\n\"3195199\";\"Mičevec\";\"main\"\n\"3195199\";\"Micevec\";\"ascii\"\n\"3195222\";\"Metković\";\"main\"\n\"3195222\";\"Metkovic\";\"ascii\"\n\"3195222\";\"Метковић\";\"other\"\n\"3195307\";\"Medulin\";\"main\"\n\"3195307\";\"Medolino\";\"other\"\n\"3195362\";\"Matulji\";\"main\"\n\"3195362\";\"Malulji\";\"other\"\n\"3195362\";\"Mattuglie\";\"other\"\n\"3195362\";\"Matulge\";\"other\"\n\"3195362\";\"Matulgi\";\"other\"\n\"3195362\";\"Matulje\";\"other\"\n\"3195440\";\"Martin\";\"main\"\n\"3195447\";\"Markušica\";\"main\"\n\"3195447\";\"Markusica\";\"ascii\"\n\"3195482\";\"Marinići\";\"main\"\n\"3195482\";\"Marinici\";\"ascii\"\n\"3195492\";\"Marina\";\"main\"\n\"3195499\";\"Marija Bistrica\";\"main\"\n\"3195499\";\"Marija-Bistrica\";\"other\"\n\"3195499\";\"Мария-Бистрица\";\"other\"\n\"3195513\";\"Marčelji\";\"main\"\n\"3195513\";\"Marcelji\";\"ascii\"\n\"3195515\";\"Marčana\";\"main\"\n\"3195515\";\"Marcana\";\"ascii\"\n\"3195515\";\"Marzana\";\"other\"\n\"3195515\";\"Marzana d'Istria\";\"other\"\n\"3195515\";\"Marzana d’Istria\";\"other\"\n\"3195674\";\"Mali Lošinj\";\"main\"\n\"3195674\";\"Mali Losinj\";\"ascii\"\n\"3195674\";\"Lusinpikolo\";\"other\"\n\"3195674\";\"Lussinpiccolo\";\"other\"\n\"3195674\";\"Lussinpíccolo\";\"other\"\n\"3195674\";\"Mali Loshin'\";\"other\"\n\"3195674\";\"Mali Losin\";\"other\"\n\"3195674\";\"Мали Лошинь\";\"other\"\n\"3195674\";\"Мали Лошињ\";\"other\"\n\"3195890\";\"Makarska\";\"main\"\n\"3195890\";\"Macarsca\";\"other\"\n\"3195890\";\"Макарска\";\"other\"\n\"3195971\";\"Mačkovec\";\"main\"\n\"3195971\";\"Mackovec\";\"ascii\"\n\"3196000\";\"Lužani\";\"main\"\n\"3196000\";\"Luzani\";\"ascii\"\n\"3196019\";\"Lupoglav\";\"main\"\n\"3196019\";\"Lupoblav\";\"other\"\n\"3196019\";\"Лупоглав\";\"other\"\n\"3196039\";\"Lumbarda\";\"main\"\n\"3196072\";\"Lukavec\";\"main\"\n\"3196072\";\"Gornji Lukavec\";\"other\"\n\"3196072\";\"Lukanec\";\"other\"\n\"3196120\";\"Ludbreg\";\"main\"\n\"3196120\";\"Лудбрег\";\"other\"\n\"3196123\";\"Lučko\";\"main\"\n\"3196123\";\"Lucko\";\"ascii\"\n\"3196175\";\"Lovran\";\"main\"\n\"3196175\";\"Laurana\";\"other\"\n\"3196189\";\"Lovas\";\"main\"\n\"3196189\";\"Lovasz\";\"other\"\n\"3196189\";\"Lovász\";\"other\"\n\"3196212\";\"Lopar\";\"main\"\n\"3196212\";\"Loparo\";\"other\"\n\"3196321\";\"Ljupina\";\"main\"\n\"3196375\";\"Ljubešćica\";\"main\"\n\"3196375\";\"Ljubescica\";\"ascii\"\n\"3196534\";\"Lipik\";\"main\"\n\"3196534\";\"Lippik\";\"other\"\n\"3196534\";\"Липик\";\"other\"\n\"3196657\";\"Lepoglava\";\"main\"\n\"3196657\";\"Lepoglav\";\"other\"\n\"3196657\";\"Lepoglov\";\"other\"\n\"3196657\";\"Лепоглава\";\"other\"\n\"3196697\";\"Lekenik\";\"main\"\n\"3196697\";\"Erdetski Lekenik\";\"other\"\n\"3196697\";\"Turopoljski Lekenik\";\"other\"\n\"3196699\";\"Legrad\";\"main\"\n\"3196758\";\"Laslovo\";\"main\"\n\"3196758\";\"Laszlofalva\";\"other\"\n\"3196758\";\"Lászlófalva\";\"other\"\n\"3196758\";\"Sveti-Ladislav\";\"other\"\n\"3196758\";\"Szentlaszlo\";\"other\"\n\"3196758\";\"Szentlászló\";\"other\"\n\"3196758\";\"Szveti-Ladiszlav\";\"other\"\n\"3196816\";\"Ladimirevci\";\"main\"\n\"3196834\";\"Labin\";\"main\"\n\"3196834\";\"Albona\";\"other\"\n\"3196834\";\"Albona d'Istria\";\"other\"\n\"3196834\";\"Albona d’Istria\";\"other\"\n\"3196834\";\"Лабин\";\"other\"\n\"3196855\";\"Kutjevo\";\"main\"\n\"3196855\";\"Goto\";\"other\"\n\"3196855\";\"Gotó\";\"other\"\n\"3196855\";\"Kutjeva\";\"other\"\n\"3196855\";\"Kuttyevo\";\"other\"\n\"3196864\";\"Kutina\";\"main\"\n\"3196864\";\"Kutenya\";\"other\"\n\"3196864\";\"Kuttina\";\"other\"\n\"3196864\";\"Кутина\";\"other\"\n\"3196893\";\"Kuršanec\";\"main\"\n\"3196893\";\"Kursanec\";\"ascii\"\n\"3197071\";\"Kruševo\";\"main\"\n\"3197071\";\"Krusevo\";\"ascii\"\n\"3197086\";\"Kruševica\";\"main\"\n\"3197086\";\"Krusevica\";\"ascii\"\n\"3197208\";\"Krk\";\"main\"\n\"3197208\";\"Veglia\";\"other\"\n\"3197230\";\"Križevci\";\"main\"\n\"3197230\";\"Krizevci\";\"ascii\"\n\"3197230\";\"Crisium\";\"other\"\n\"3197230\";\"Koros\";\"other\"\n\"3197230\";\"Kreutz\";\"other\"\n\"3197230\";\"Kreuz\";\"other\"\n\"3197230\";\"Krisevczi\";\"other\"\n\"3197230\";\"Krizeva\";\"other\"\n\"3197230\";\"Križeva\";\"other\"\n\"3197230\";\"Körös\";\"other\"\n\"3197242\";\"Križ\";\"main\"\n\"3197242\";\"Kriz\";\"ascii\"\n\"3197242\";\"Gornji Kriz\";\"other\"\n\"3197242\";\"Gornji Križ\";\"other\"\n\"3197353\";\"Krasica\";\"main\"\n\"3197369\";\"Krapina\";\"main\"\n\"3197369\";\"kurapina\";\"other\"\n\"3197369\";\"Крапина\";\"other\"\n\"3197369\";\"クラピナ\";\"other\"\n\"3197390\";\"Kraljevica\";\"main\"\n\"3197390\";\"Kralevica\";\"other\"\n\"3197390\";\"Kraljevjca\";\"other\"\n\"3197390\";\"Porto Re\";\"other\"\n\"3197390\";\"Краљевица\";\"other\"\n\"3197536\";\"Kotoriba\";\"main\"\n\"3197536\";\"Kotor\";\"other\"\n\"3197556\";\"Košute\";\"main\"\n\"3197556\";\"Kosute\";\"ascii\"\n\"3197594\";\"Hrvatska Kostajnica\";\"main\"\n\"3197594\";\"Khrvatska Kostajnica\";\"other\"\n\"3197594\";\"Kostajnica\";\"other\"\n\"3197594\";\"Kosztainicza\";\"other\"\n\"3197594\";\"Kosztajnica\";\"other\"\n\"3197594\";\"Хрватска Костайница\";\"other\"\n\"3197621\";\"Koška\";\"main\"\n\"3197621\";\"Koska\";\"ascii\"\n\"3197621\";\"Koszka\";\"other\"\n\"3197710\";\"Korčula\";\"main\"\n\"3197710\";\"Korcula\";\"ascii\"\n\"3197710\";\"Curzola\";\"other\"\n\"3197710\";\"Isola di Curzola\";\"other\"\n\"3197710\";\"Korchula\";\"other\"\n\"3197710\";\"Корчула\";\"other\"\n\"3197728\";\"Koprivnica\";\"main\"\n\"3197728\";\"Caprontza\";\"other\"\n\"3197728\";\"Kapronca\";\"other\"\n\"3197728\";\"Kaproncza\";\"other\"\n\"3197728\";\"Kopreinitz\";\"other\"\n\"3197728\";\"Koprivnicza\";\"other\"\n\"3197728\";\"Kopriwnitza\";\"other\"\n\"3197728\";\"Копривница\";\"other\"\n\"3197831\";\"Komletinci\";\"main\"\n\"3197834\";\"Komiža\";\"main\"\n\"3197834\";\"Komiza\";\"ascii\"\n\"3197834\";\"Comisa\";\"other\"\n\"3197834\";\"Komizha\";\"other\"\n\"3197834\";\"Комижа\";\"other\"\n\"3197837\";\"Komin\";\"main\"\n\"3197986\";\"Knin\";\"main\"\n\"3197986\";\"Tenin\";\"other\"\n\"3197986\";\"Книн\";\"other\"\n\"3198062\";\"Klis\";\"main\"\n\"3198062\";\"Clissa\";\"other\"\n\"3198078\";\"Klenovnik\";\"main\"\n\"3198111\";\"Klana\";\"main\"\n\"3198111\";\"Clana\";\"other\"\n\"3198135\";\"Kistanje\";\"main\"\n\"3198135\";\"Chistagne\";\"other\"\n\"3198172\";\"Kerestinec\";\"main\"\n\"3198227\";\"Kastav\";\"main\"\n\"3198227\";\"Castua\";\"other\"\n\"3198227\";\"Кастав\";\"other\"\n\"3198236\";\"Kašina\";\"main\"\n\"3198236\";\"Kasina\";\"ascii\"\n\"3198236\";\"Gornja Kasina\";\"other\"\n\"3198236\";\"Gornja Kašina\";\"other\"\n\"3198253\";\"Karojba\";\"main\"\n\"3198253\";\"Caroiba\";\"other\"\n\"3198253\";\"Caroiba Subiente\";\"other\"\n\"3198253\";\"Caroibo\";\"other\"\n\"3198259\";\"Karlovac\";\"main\"\n\"3198259\";\"Karlstadt\";\"other\"\n\"3198259\";\"Karolyvaros\";\"other\"\n\"3198259\";\"Karolyváros\";\"other\"\n\"3198259\";\"Károlyváros\";\"other\"\n\"3198259\";\"Карловац\";\"other\"\n\"3198261\";\"Karlobag\";\"main\"\n\"3198261\";\"Bag\";\"other\"\n\"3198261\";\"Carlopago\";\"other\"\n\"3198261\";\"Karlopago\";\"other\"\n\"3198261\";\"Карлобаг\";\"other\"\n\"3198286\";\"Karanac\";\"main\"\n\"3198298\";\"Kaptol\";\"main\"\n\"3198298\";\"Pozsega-Szentpeter\";\"other\"\n\"3198298\";\"Pozsega-Szentpéter\";\"other\"\n\"3198450\";\"Kalinovac\";\"main\"\n\"3198457\";\"Kali\";\"main\"\n\"3198576\";\"Josipovac\";\"main\"\n\"3198635\";\"Ježdovec\";\"main\"\n\"3198635\";\"Jezdovec\";\"ascii\"\n\"3198650\";\"Jesenice\";\"main\"\n\"3198673\";\"Jelsa\";\"main\"\n\"3198695\";\"Jelisavac\";\"main\"\n\"3198799\";\"Jastrebarsko\";\"main\"\n\"3198799\";\"Jaska\";\"other\"\n\"3198799\";\"Jastrebarcko\";\"other\"\n\"3198799\";\"Jasztrebarszka\";\"other\"\n\"3198799\";\"Jazka\";\"other\"\n\"3198799\";\"Jazterbarzka\";\"other\"\n\"3198799\";\"Jaztravicz\";\"other\"\n\"3198799\";\"Јастребарско\";\"other\"\n\"3198826\";\"Jasenice\";\"main\"\n\"3198826\";\"Jasenica\";\"other\"\n\"3198852\";\"Jarmina\";\"main\"\n\"3198913\";\"Jalžabet\";\"main\"\n\"3198913\";\"Jalzabet\";\"ascii\"\n\"3198918\";\"Jalkovec\";\"main\"\n\"3198922\";\"Jakšić\";\"main\"\n\"3198922\";\"Jaksic\";\"ascii\"\n\"3198924\";\"Jakovlje\";\"main\"\n\"3198924\";\"Jakovje\";\"other\"\n\"3198943\";\"Jagodnjak\";\"main\"\n\"3198943\";\"Jagodnja\";\"other\"\n\"3198964\";\"Jadranovo\";\"main\"\n\"3198964\";\"Diminici\";\"other\"\n\"3198964\";\"Diminići\";\"other\"\n\"3198964\";\"Klostar Siljevicki\";\"other\"\n\"3198964\";\"Kloštar Šiljevički\";\"other\"\n\"3198964\";\"Percin\";\"other\"\n\"3198964\";\"Perčin\";\"other\"\n\"3198964\";\"Sveti Jakob\";\"other\"\n\"3198964\";\"Sveti Jakov\";\"other\"\n\"3198964\";\"Sveti Jakov Siljevica\";\"other\"\n\"3198964\";\"Sveti Jakov Šiljevica\";\"other\"\n\"3198994\";\"Jablanovec\";\"main\"\n\"3199044\";\"Ivanovec\";\"main\"\n\"3199051\";\"Ivankovo\";\"main\"\n\"3199051\";\"Ivanka\";\"other\"\n\"3199051\";\"Ivanka-Szent-Gyorgy\";\"other\"\n\"3199051\";\"Ivankova\";\"other\"\n\"3199051\";\"Ivánka\";\"other\"\n\"3199051\";\"Ivánka-Szent-György\";\"other\"\n\"3199051\";\"Iwankowo\";\"other\"\n\"3199076\";\"Ivanec\";\"main\"\n\"3199076\";\"Ivanci\";\"other\"\n\"3199076\";\"Ivanecz\";\"other\"\n\"3199111\";\"Imotski\";\"main\"\n\"3199111\";\"Imoschi\";\"other\"\n\"3199111\";\"Имотски\";\"other\"\n\"3199128\";\"Ilok\";\"main\"\n\"3199128\";\"Ujlak\";\"other\"\n\"3199128\";\"Újlak\";\"other\"\n\"3199128\";\"Илок\";\"other\"\n\"3199147\";\"Ilača\";\"main\"\n\"3199147\";\"Ilaca\";\"ascii\"\n\"3199180\";\"Hvar\";\"main\"\n\"3199180\";\"Lesina\";\"other\"\n\"3199184\";\"Husain\";\"main\"\n\"3199184\";\"Husajin\";\"other\"\n\"3199184\";\"Husajn\";\"other\"\n\"3199235\";\"Hrvace\";\"main\"\n\"3199235\";\"Hrvatce\";\"other\"\n\"3199235\";\"Hrvatice\";\"other\"\n\"3199279\";\"Hreljin\";\"main\"\n\"3199346\";\"Horvati\";\"main\"\n\"3199360\";\"Hodošan\";\"main\"\n\"3199360\";\"Hodosan\";\"ascii\"\n\"3199376\";\"Hlebine\";\"main\"\n\"3199391\";\"Hercegovac\";\"main\"\n\"3199473\";\"Gunja\";\"main\"\n\"3199474\";\"Gundinci\";\"main\"\n\"3199480\";\"Gudovac\";\"main\"\n\"3199680\";\"Gradište\";\"main\"\n\"3199680\";\"Gradiste\";\"ascii\"\n\"3199732\";\"Gradići\";\"main\"\n\"3199732\";\"Gradici\";\"ascii\"\n\"3199742\";\"Gradac\";\"main\"\n\"3199742\";\"Gradac Pozeski\";\"other\"\n\"3199742\";\"Gradac Požeški\";\"other\"\n\"3199773\";\"Gračec\";\"main\"\n\"3199773\";\"Gracec\";\"ascii\"\n\"3199790\";\"Gračac\";\"main\"\n\"3199790\";\"Gracac\";\"ascii\"\n\"3199873\";\"Gospić\";\"main\"\n\"3199873\";\"Gospic\";\"ascii\"\n\"3199873\";\"Gosnidj\";\"other\"\n\"3199873\";\"Gospich\";\"other\"\n\"3199873\";\"Госпич\";\"other\"\n\"3199873\";\"Госпић\";\"other\"\n\"3200304\";\"Gorjani\";\"main\"\n\"3200304\";\"Gara\";\"other\"\n\"3200304\";\"Gorjan\";\"other\"\n\"3200328\";\"Goričan\";\"main\"\n\"3200328\";\"Gorican\";\"ascii\"\n\"3200328\";\"Muracsany\";\"other\"\n\"3200328\";\"Muracsány\";\"other\"\n\"3200600\";\"Glina\";\"main\"\n\"3200600\";\"Banijska Palanka\";\"other\"\n\"3200711\";\"Garešnica\";\"main\"\n\"3200711\";\"Garesnica\";\"ascii\"\n\"3200711\";\"Gareshnitsa\";\"other\"\n\"3200711\";\"Garesnicza\";\"other\"\n\"3200713\";\"Gardinovec\";\"main\"\n\"3200714\";\"Garčin\";\"main\"\n\"3200714\";\"Garcin\";\"ascii\"\n\"3200731\";\"Galovac\";\"main\"\n\"3200734\";\"Galižana\";\"main\"\n\"3200734\";\"Galizana\";\"ascii\"\n\"3200734\";\"Galezan\";\"other\"\n\"3200734\";\"Galežan\";\"other\"\n\"3200734\";\"Gallesano\";\"other\"\n\"3200745\";\"Gala\";\"main\"\n\"3200855\";\"Feričanci\";\"main\"\n\"3200855\";\"Fericanci\";\"ascii\"\n\"3200855\";\"Ferichancze\";\"other\"\n\"3200856\";\"Ferdinandovac\";\"main\"\n\"3200856\";\"Ferdinandorf\";\"other\"\n\"3200862\";\"Fažana\";\"main\"\n\"3200862\";\"Fazana\";\"ascii\"\n\"3200862\";\"Fasana\";\"other\"\n\"3200862\";\"Fasana d'Istria\";\"other\"\n\"3200862\";\"Fasana d’Istria\";\"other\"\n\"3200881\";\"Ernestinovo\";\"main\"\n\"3200917\";\"Dvor\";\"main\"\n\"3200917\";\"Dvor na Uni\";\"other\"\n\"3200917\";\"Stepinac Grad\";\"other\"\n\"3201011\";\"Dugopolje\";\"main\"\n\"3201045\";\"Duće\";\"main\"\n\"3201045\";\"Duce\";\"ascii\"\n\"3201047\";\"Dubrovnik\";\"main\"\n\"3201047\";\"Communitas Ragusina\";\"other\"\n\"3201047\";\"Dubrava\";\"other\"\n\"3201047\";\"Dubrounik\";\"other\"\n\"3201047\";\"Dubrovacka Republika\";\"other\"\n\"3201047\";\"Dubrovačka Republika\";\"other\"\n\"3201047\";\"Dubrovnikas\";\"other\"\n\"3201047\";\"Dubrovník\";\"other\"\n\"3201047\";\"Dubrownik\";\"other\"\n\"3201047\";\"Dùbrōvnik\";\"other\"\n\"3201047\";\"Laus\";\"other\"\n\"3201047\";\"Pearl of the Adriatic\";\"other\"\n\"3201047\";\"Ragusa\";\"other\"\n\"3201047\";\"Repubblica di Ragusa\";\"other\"\n\"3201047\";\"Republic of Ragusa\";\"other\"\n\"3201047\";\"Respublica Ragusina\";\"other\"\n\"3201047\";\"do~uburovuniku\";\"other\"\n\"3201047\";\"du bu luo fu ni ke\";\"other\"\n\"3201047\";\"dwbrwbnyq\";\"other\"\n\"3201047\";\"la perla del Adriatico\";\"other\"\n\"3201047\";\"la perla del Adriático\";\"other\"\n\"3201047\";\"Дубровник\";\"other\"\n\"3201047\";\"Дуброўнік\";\"other\"\n\"3201047\";\"דוברובניק\";\"other\"\n\"3201047\";\"ドゥブロヴニク\";\"other\"\n\"3201047\";\"杜布羅夫尼克\";\"other\"\n\"3201160\";\"Drnje\";\"main\"\n\"3201162\";\"Drniš\";\"main\"\n\"3201162\";\"Drnis\";\"ascii\"\n\"3201162\";\"Dernis\";\"other\"\n\"3201162\";\"Drnish\";\"other\"\n\"3201162\";\"Дрниш\";\"other\"\n\"3201233\";\"Dražice\";\"main\"\n\"3201233\";\"Drazice\";\"ascii\"\n\"3201712\";\"Donja Brela\";\"main\"\n\"3201712\";\"Brela\";\"other\"\n\"3201712\";\"Brela Donja\";\"other\"\n\"3201734\";\"Domašinec\";\"main\"\n\"3201734\";\"Domasinec\";\"ascii\"\n\"3202046\";\"Dežanovac\";\"main\"\n\"3202046\";\"Dezanovac\";\"ascii\"\n\"3202046\";\"Desanovacz\";\"other\"\n\"3202046\";\"Donji Dezanovac\";\"other\"\n\"3202046\";\"Donji Dežanovac\";\"other\"\n\"3202046\";\"Donji Drezanovac\";\"other\"\n\"3202046\";\"Donji Drežanovac\";\"other\"\n\"3202104\";\"Delnice\";\"main\"\n\"3202104\";\"Delnicza\";\"other\"\n\"3202172\";\"Davor\";\"main\"\n\"3202184\";\"Daruvar\";\"main\"\n\"3202184\";\"Aquae Balisae\";\"other\"\n\"3202184\";\"Daruvár\";\"other\"\n\"3202184\";\"Дарувар\";\"other\"\n\"3202186\";\"Darda\";\"main\"\n\"3202186\";\"dardh\";\"other\"\n\"3202186\";\"دارده\";\"other\"\n\"3202215\";\"Dalj\";\"main\"\n\"3202215\";\"Dalja\";\"other\"\n\"3202215\";\"Dallia\";\"other\"\n\"3202215\";\"Dallya\";\"other\"\n\"3202215\";\"Dalya\";\"other\"\n\"3202215\";\"Dállya\";\"other\"\n\"3202215\";\"Dálya\";\"other\"\n\"3202215\";\"Teutoburgium\";\"other\"\n\"3202507\";\"Crikvenica\";\"main\"\n\"3202507\";\"Cirkvenica\";\"other\"\n\"3202507\";\"Cirquenizza\";\"other\"\n\"3202507\";\"Crkvenica\";\"other\"\n\"3202507\";\"Czirkvenicza\";\"other\"\n\"3202507\";\"Цриквеница\";\"other\"\n\"3202523\";\"Cres\";\"main\"\n\"3202523\";\"Cerzo\";\"other\"\n\"3202523\";\"Cherso\";\"other\"\n\"3202523\";\"Čerzo\";\"other\"\n\"3202523\";\"Црес\";\"other\"\n\"3202630\";\"Čibača\";\"main\"\n\"3202630\";\"Cibaca\";\"ascii\"\n\"3202697\";\"Cernik\";\"main\"\n\"3202697\";\"Cernigo\";\"other\"\n\"3202697\";\"Cernik Primorski\";\"other\"\n\"3202698\";\"Cernik\";\"main\"\n\"3202702\";\"Cerna\";\"main\"\n\"3202702\";\"Czerna\";\"other\"\n\"3202726\";\"Cerić\";\"main\"\n\"3202726\";\"Ceric\";\"ascii\"\n\"3202743\";\"Čepin\";\"main\"\n\"3202743\";\"Cepin\";\"ascii\"\n\"3202743\";\"Csapa\";\"other\"\n\"3202743\";\"Csepen\";\"other\"\n\"3202743\";\"Csepin\";\"other\"\n\"3202743\";\"Csepén\";\"other\"\n\"3202743\";\"Tschepin\";\"other\"\n\"3202763\";\"Čeminac\";\"main\"\n\"3202763\";\"Ceminac\";\"ascii\"\n\"3202820\";\"Čazma\";\"main\"\n\"3202820\";\"Cazma\";\"ascii\"\n\"3202820\";\"Chasma\";\"other\"\n\"3202820\";\"Chazma\";\"other\"\n\"3202820\";\"Csazma\";\"other\"\n\"3202820\";\"Csázma\";\"other\"\n\"3202820\";\"Чазма\";\"other\"\n\"3202825\";\"Cavtat\";\"main\"\n\"3202825\";\"Epidaurus\";\"other\"\n\"3202825\";\"Ragusa Vecchia\";\"other\"\n\"3202825\";\"Ragusavecchia\";\"other\"\n\"3202825\";\"Цавтат\";\"other\"\n\"3202831\";\"Čavle\";\"main\"\n\"3202831\";\"Cavle\";\"ascii\"\n\"3202888\";\"Čakovec\";\"main\"\n\"3202888\";\"Cakovec\";\"ascii\"\n\"3202888\";\"Chakovec\";\"other\"\n\"3202888\";\"Csakathurn\";\"other\"\n\"3202888\";\"Csaktornya\";\"other\"\n\"3202888\";\"Csáktornya\";\"other\"\n\"3202888\";\"Чаковец\";\"other\"\n\"3202922\";\"Čačinci\";\"main\"\n\"3202922\";\"Cacinci\";\"ascii\"\n\"3202922\";\"Chachincze\";\"other\"\n\"3202922\";\"Csacsince\";\"other\"\n\"3202942\";\"Buzet\";\"main\"\n\"3202942\";\"Pinguente\";\"other\"\n\"3202942\";\"Бузет\";\"other\"\n\"3203026\";\"Bukovlje\";\"main\"\n\"3203026\";\"Bukovlje Podvinjsko\";\"other\"\n\"3203026\";\"Podvinjsko Bukovlje\";\"other\"\n\"3203090\";\"Buje\";\"main\"\n\"3203090\";\"Buie\";\"other\"\n\"3203090\";\"Buie d'Istria\";\"other\"\n\"3203090\";\"Бује\";\"other\"\n\"3203138\";\"Budaševo\";\"main\"\n\"3203138\";\"Budasevo\";\"ascii\"\n\"3203138\";\"Veliko Budasevo\";\"other\"\n\"3203138\";\"Veliko Budaševo\";\"other\"\n\"3203221\";\"Bršadin\";\"main\"\n\"3203221\";\"Brsadin\";\"ascii\"\n\"3203262\";\"Brnaze\";\"main\"\n\"3203298\";\"Brinje\";\"main\"\n\"3203315\";\"Bribir\";\"main\"\n\"3203360\";\"Brezovac\";\"main\"\n\"3203394\";\"Brezje\";\"main\"\n\"3203478\";\"Bregana\";\"main\"\n\"3203487\";\"Brdovec\";\"main\"\n\"3203520\";\"Brckovljani\";\"main\"\n\"3203631\";\"Bošnjaci\";\"main\"\n\"3203631\";\"Bosnjaci\";\"ascii\"\n\"3203670\";\"Borovo\";\"main\"\n\"3203670\";\"Boro\";\"other\"\n\"3203670\";\"Boró\";\"other\"\n\"3203765\";\"Bol\";\"main\"\n\"3203880\";\"Bobota\";\"main\"\n\"3203961\";\"Blato\";\"main\"\n\"3203961\";\"Blata\";\"other\"\n\"3203961\";\"Blatina\";\"other\"\n\"3203982\";\"Bjelovar\";\"main\"\n\"3203982\";\"Belavar\";\"other\"\n\"3203982\";\"Bellovar\";\"other\"\n\"3203982\";\"Belovar\";\"other\"\n\"3203982\";\"Belovár\";\"other\"\n\"3203982\";\"Belowar\";\"other\"\n\"3203982\";\"Bélavár\";\"other\"\n\"3203982\";\"Беловар\";\"other\"\n\"3204022\";\"Bizovac\";\"main\"\n\"3204035\";\"Bistrinci\";\"main\"\n\"3204035\";\"Bistrince\";\"other\"\n\"3204035\";\"Bisztrincze\";\"other\"\n\"3204121\";\"Biograd na Moru\";\"main\"\n\"3204121\";\"Biograd\";\"other\"\n\"3204121\";\"Zaravecchia\";\"other\"\n\"3204121\";\"Биоград\";\"other\"\n\"3204121\";\"Биоград на Мору\";\"other\"\n\"3204145\";\"Bilje\";\"main\"\n\"3204145\";\"Belje\";\"other\"\n\"3204156\";\"Bilice\";\"main\"\n\"3204156\";\"Belice\";\"other\"\n\"3204237\";\"Bibinje\";\"main\"\n\"3204237\";\"Bibigne\";\"other\"\n\"3204277\";\"Beretinec\";\"main\"\n\"3204277\";\"Bertinec\";\"other\"\n\"3204293\";\"Benkovac\";\"main\"\n\"3204293\";\"Bencovazzo\";\"other\"\n\"3204317\";\"Belišće\";\"main\"\n\"3204317\";\"Belisce\";\"ascii\"\n\"3204317\";\"Belishche\";\"other\"\n\"3204317\";\"Белишче\";\"other\"\n\"3204317\";\"Белишће\";\"other\"\n\"3204320\";\"Beli Manastir\";\"main\"\n\"3204320\";\"Monostor\";\"other\"\n\"3204320\";\"Pel-Monostor\";\"other\"\n\"3204320\";\"Pelmonostor\";\"other\"\n\"3204320\";\"Pélmonostor\";\"other\"\n\"3204320\";\"Бели Манастир\";\"other\"\n\"3204322\";\"Belica\";\"main\"\n\"3204331\";\"Beletinec\";\"main\"\n\"3204387\";\"Bedekovčina\";\"main\"\n\"3204387\";\"Bedekovcina\";\"ascii\"\n\"3204387\";\"Donja Bedekovcina\";\"other\"\n\"3204387\";\"Donja Bedekovčina\";\"other\"\n\"3204398\";\"Batrina\";\"main\"\n\"3204413\";\"Batina\";\"main\"\n\"3204413\";\"Kiskoszeg\";\"other\"\n\"3204413\";\"Kisköszeg\";\"other\"\n\"3204439\";\"Baška Voda\";\"main\"\n\"3204439\";\"Baska Voda\";\"ascii\"\n\"3204439\";\"Bashka-Voda\";\"other\"\n\"3204439\";\"Bestonio\";\"other\"\n\"3204439\";\"Башка-Вода\";\"other\"\n\"3204510\";\"Bapska\";\"main\"\n\"3204530\";\"Banjol\";\"main\"\n\"3204612\";\"Bakar\";\"main\"\n\"3204612\";\"Bakovac\";\"other\"\n\"3204612\";\"Buccari\";\"other\"\n\"3204612\";\"Бакар\";\"other\"\n\"3204799\";\"Antunovac\";\"main\"\n\"3204799\";\"Antunovac Tenjski\";\"other\"\n\"3204799\";\"Antunowatz\";\"other\"\n\"3204799\";\"Tenjski Antunovac\";\"other\"\n\"3204817\";\"Andrijaševci\";\"main\"\n\"3204817\";\"Andrijasevci\";\"ascii\"\n\"3204817\";\"Andriaschevce\";\"other\"\n\"3204817\";\"Andriassewcze\";\"other\"\n\"3209381\";\"Bestovje\";\"main\"\n\"3213267\";\"Brodarica\";\"main\"\n\"3213267\";\"Lusa\";\"other\"\n\"3214685\";\"Vukojevci\";\"main\"\n\"3215502\";\"Lipovljani\";\"main\"\n\"3215502\";\"Lipovljane\";\"other\"\n\"3215610\";\"Sukošan\";\"main\"\n\"3215610\";\"Sukosan\";\"ascii\"\n\"3215759\";\"Preko\";\"main\"\n\"3215759\";\"Oltre\";\"other\"\n\"3216549\";\"Privlaka\";\"main\"\n\"3216885\";\"Stari Grad\";\"main\"\n\"3216885\";\"Стари Град\";\"other\"\n\"3217624\";\"Popovača\";\"main\"\n\"3217624\";\"Popovaca\";\"ascii\"\n\"3217900\";\"Kampor\";\"main\"\n\"3238625\";\"Vidovci\";\"main\"\n\"3254862\";\"Drenovci\";\"main\"\n\"3263332\";\"Podgora\";\"main\"\n\"3281054\";\"Kamen\";\"main\"\n\"3281556\";\"Zmijavci\";\"main\"\n\"3282009\";\"Greda\";\"main\"\n\"3284794\";\"Grubine\";\"main\"\n\"3296403\";\"Korenica\";\"main\"\n\"3315388\";\"Brijest\";\"main\"\n\"6618983\";\"Zagreb - Centar\";\"main\"\n\"6695952\";\"Malarm\";\"main\"\n\"3716044\";\"Verrettes\";\"main\"\n\"3716044\";\"Les Verettes\";\"other\"\n\"3716044\";\"Les Verrettes\";\"other\"\n\"3716224\";\"Trou du Nord\";\"main\"\n\"3716224\";\"Le Trou\";\"other\"\n\"3716224\";\"Trou\";\"other\"\n\"3716403\";\"Torbeck\";\"main\"\n\"3716619\";\"Tiburon\";\"main\"\n\"3716663\";\"Thomonde\";\"main\"\n\"3716667\";\"Thomazeau\";\"main\"\n\"3716669\";\"Thomassique\";\"main\"\n\"3716679\";\"Thiote\";\"main\"\n\"3716679\";\"Cai-Tiot\";\"other\"\n\"3716679\";\"Caï-Tiot\";\"other\"\n\"3716679\";\"Thiotte\";\"other\"\n\"3716679\";\"Tiote\";\"other\"\n\"3717546\";\"Saint-Raphaël\";\"main\"\n\"3717546\";\"Saint-Raphael\";\"ascii\"\n\"3717588\";\"Saint-Marc\";\"main\"\n\"3717588\";\"Sen-Mark\";\"other\"\n\"3717588\";\"Сен-Марк\";\"other\"\n\"3717596\";\"Saint-Louis du Sud\";\"main\"\n\"3717596\";\"Saint Louis\";\"other\"\n\"3717600\";\"Saint-Louis du Nord\";\"main\"\n\"3717600\";\"Saint Louis\";\"other\"\n\"3717916\";\"Roche-à-Bateau\";\"main\"\n\"3717916\";\"Roche-a-Bateau\";\"ascii\"\n\"3717916\";\"Roche a Bateaux\";\"other\"\n\"3718199\";\"Ranquitte\";\"main\"\n\"3718199\";\"Ranquite\";\"other\"\n\"3718278\";\"Quartier Morin\";\"main\"\n\"3718278\";\"Qartier-Morin\";\"other\"\n\"3718278\";\"Ville de Quartier Morin\";\"other\"\n\"3718411\";\"Port Margot\";\"main\"\n\"3718426\";\"Port-au-Prince\";\"main\"\n\"3718426\";\"Port o Prens\";\"other\"\n\"3718426\";\"Port o Prensas\";\"other\"\n\"3718426\";\"Port-o-Prens\";\"other\"\n\"3718426\";\"Porto Prens\";\"other\"\n\"3718426\";\"Portofprensa\";\"other\"\n\"3718426\";\"Potoprens\";\"other\"\n\"3718426\";\"Puerto Principe\";\"other\"\n\"3718426\";\"Puerto Príncipe\";\"other\"\n\"3718426\";\"Pòtoprens\";\"other\"\n\"3718426\";\"Ville de Port-au-Prince\";\"other\"\n\"3718426\";\"poleutopeulaengseu\";\"other\"\n\"3718426\";\"porutopuransu\";\"other\"\n\"3718426\";\"pwrt aw prns\";\"other\"\n\"3718426\";\"tai zi gang\";\"other\"\n\"3718426\";\"Πορτ-ο-Πρενς\";\"other\"\n\"3718426\";\"Порт о Пренс\";\"other\"\n\"3718426\";\"Порт-о-Пренс\";\"other\"\n\"3718426\";\"Порто Пренс\";\"other\"\n\"3718426\";\"פורט או פרינס\";\"other\"\n\"3718426\";\"פורט-או-פרנס\";\"other\"\n\"3718426\";\"پورت او پرنس\";\"other\"\n\"3718426\";\"პორტ-ო-პრენსი\";\"other\"\n\"3718426\";\"ፖርቶፕሪንስ\";\"other\"\n\"3718426\";\"ポルトープランス\";\"other\"\n\"3718426\";\"太子港\";\"other\"\n\"3718426\";\"포르토프랭스\";\"other\"\n\"3718431\";\"Port-à-Piment\";\"main\"\n\"3718431\";\"Port-a-Piment\";\"ascii\"\n\"3718431\";\"Port Piment\";\"other\"\n\"3718666\";\"Plaisance\";\"main\"\n\"3718707\";\"Plaine du Nord\";\"main\"\n\"3718826\";\"Pilate\";\"main\"\n\"3718834\";\"Pignon\";\"main\"\n\"3718834\";\"Dignon\";\"other\"\n\"3718924\";\"Phaéton\";\"main\"\n\"3718924\";\"Phaeton\";\"ascii\"\n\"3718938\";\"Petit Trou de Nippes\";\"main\"\n\"3718938\";\"Petit Trou\";\"other\"\n\"3718962\";\"Petit Goâve\";\"main\"\n\"3718962\";\"Petit Goave\";\"ascii\"\n\"3718962\";\"Ville de Petit Goave\";\"other\"\n\"3718962\";\"Ville de Petit Goâve\";\"other\"\n\"3718975\";\"Petite Rivière de Nippes\";\"main\"\n\"3718975\";\"Petite Riviere de Nippes\";\"ascii\"\n\"3718975\";\"Ville de Petite Riviere\";\"other\"\n\"3718975\";\"Ville de Petite Rivière\";\"other\"\n\"3719008\";\"Petite Anse\";\"main\"\n\"3719028\";\"Pétionville\";\"main\"\n\"3719028\";\"Petionville\";\"ascii\"\n\"3719028\";\"Ville de Petion-Ville\";\"other\"\n\"3719028\";\"Ville de Pétion-Ville\";\"other\"\n\"3719099\";\"Perches\";\"main\"\n\"3719436\";\"Ouanaminthe\";\"main\"\n\"3719436\";\"Juana Mendez\";\"other\"\n\"3719436\";\"Quanamenthe\";\"other\"\n\"3720455\";\"Moron\";\"main\"\n\"3720455\";\"Bourg de Moron\";\"other\"\n\"3720455\";\"Ville de Moron\";\"other\"\n\"3720667\";\"Mont Organisé\";\"main\"\n\"3720667\";\"Mont Organise\";\"ascii\"\n\"3720667\";\"Lassalle\";\"other\"\n\"3720765\";\"Môle Saint-Nicolas\";\"main\"\n\"3720765\";\"Mole Saint-Nicolas\";\"ascii\"\n\"3720765\";\"Le Mole\";\"other\"\n\"3720765\";\"Le Mole Saint Nicolas\";\"other\"\n\"3720765\";\"Le Môle\";\"other\"\n\"3720765\";\"Le Môle Saint Nicolas\";\"other\"\n\"3720765\";\"Mole Taint-Nicolas\";\"other\"\n\"3720811\";\"Mirebalais\";\"main\"\n\"3720811\";\"Bourg Saint Louis\";\"other\"\n\"3720824\";\"Miragoâne\";\"main\"\n\"3720824\";\"Miragoane\";\"ascii\"\n\"3720854\";\"Milot\";\"main\"\n\"3721280\";\"Marmelade\";\"main\"\n\"3721280\";\"Marmeiade\";\"other\"\n\"3721313\";\"Marigot\";\"main\"\n\"3721711\";\"Maïssade\";\"main\"\n\"3721711\";\"Maissade\";\"ascii\"\n\"3722110\";\"Limonade\";\"main\"\n\"3722124\";\"Limbé\";\"main\"\n\"3722124\";\"Limbe\";\"ascii\"\n\"3722124\";\"Le Limbe\";\"other\"\n\"3722124\";\"Ville de Limbe\";\"other\"\n\"3722124\";\"Ville de Limbé\";\"other\"\n\"3722124\";\"Лимбе\";\"other\"\n\"3722239\";\"Les Irois\";\"main\"\n\"3722239\";\"Irois\";\"other\"\n\"3722253\";\"Les Anglais\";\"main\"\n\"3722253\";\"Anglais\";\"other\"\n\"3722253\";\"Ville des Anglais\";\"other\"\n\"3722286\";\"Léogâne\";\"main\"\n\"3722286\";\"Leogane\";\"ascii\"\n\"3722286\";\"Ville de Leogane\";\"other\"\n\"3722286\";\"Ville de Léogane\";\"other\"\n\"3722286\";\"Yaguana\";\"other\"\n\"3722339\";\"Le Borgne\";\"main\"\n\"3722339\";\"Borgne\";\"other\"\n\"3722339\";\"La Borgne\";\"other\"\n\"3722339\";\"Le Rorgne\";\"other\"\n\"3722339\";\"Ville du Borgne\";\"other\"\n\"3722579\";\"Lascahobas\";\"main\"\n\"3722579\";\"Las Cahobes\";\"other\"\n\"3722579\";\"Las Caobas\";\"other\"\n\"3722579\";\"Ville de Lascahobas\";\"other\"\n\"3723440\";\"Kenscoff\";\"main\"\n\"3723440\";\"Kenskoff\";\"other\"\n\"3723593\";\"Jérémie\";\"main\"\n\"3723593\";\"Jeremie\";\"ascii\"\n\"3723593\";\"Zheremi\";\"other\"\n\"3723593\";\"Жереми\";\"other\"\n\"3723618\";\"Jean-Rabel\";\"main\"\n\"3723618\";\"Ville de Jean Rabel\";\"other\"\n\"3723779\";\"Jacmel\";\"main\"\n\"3723779\";\"Jakmel\";\"other\"\n\"3723779\";\"Jakmèl\";\"other\"\n\"3723779\";\"Zhakmele\";\"other\"\n\"3723779\";\"Жакмеле\";\"other\"\n\"3723779\";\"ג'אקמל\";\"other\"\n\"3723841\";\"Hinche\";\"main\"\n\"3724145\";\"Gros Morne\";\"main\"\n\"3724233\";\"Gressier\";\"main\"\n\"3724337\";\"Grand Goâve\";\"main\"\n\"3724337\";\"Grand Goave\";\"ascii\"\n\"3724337\";\"Grande Goave\";\"other\"\n\"3724432\";\"Grande Saline\";\"main\"\n\"3724432\";\"Grand Saline\";\"other\"\n\"3724432\";\"Ville de Grande Saline\";\"other\"\n\"3724439\";\"Grande Rivière du Nord\";\"main\"\n\"3724439\";\"Grande Riviere du Nord\";\"ascii\"\n\"3724439\";\"Grand Riviere\";\"other\"\n\"3724439\";\"Grande Riviere\";\"other\"\n\"3724439\";\"Sainte Rose\";\"other\"\n\"3724439\";\"Ville de Grande Riviere du Nord\";\"other\"\n\"3724439\";\"Ville de Grande Rivière du Nord\";\"other\"\n\"3724696\";\"Gonaïves\";\"main\"\n\"3724696\";\"Gonaives\";\"ascii\"\n\"3724696\";\"Gonaiv\";\"other\"\n\"3724696\";\"Les Gonaives\";\"other\"\n\"3724696\";\"Les Gonaïves\";\"other\"\n\"3724696\";\"Ville des Gonaives\";\"other\"\n\"3724696\";\"Гонаив\";\"other\"\n\"3725170\";\"Fort Liberté\";\"main\"\n\"3725170\";\"Fort Liberte\";\"ascii\"\n\"3725170\";\"Fort-Dauphin\";\"other\"\n\"3725170\";\"Ville de Fort-Liberte\";\"other\"\n\"3725170\";\"Ville de Fort-Liberté\";\"other\"\n\"3725222\";\"Fond Verrettes\";\"main\"\n\"3725222\";\"Fonds Verettes\";\"other\"\n\"3725222\";\"La Mission\";\"other\"\n\"3725276\";\"Fond Parisien\";\"main\"\n\"3725364\";\"Fond des Blancs\";\"main\"\n\"3725416\";\"Fond Bassin Bleu\";\"main\"\n\"3725519\";\"Ferrier\";\"main\"\n\"3725519\";\"Ferie\";\"other\"\n\"3725519\";\"Ferié\";\"other\"\n\"3725663\";\"Ennery\";\"main\"\n\"3726263\";\"Dondon\";\"main\"\n\"3726540\";\"Dessalines\";\"main\"\n\"3726540\";\"Marchand\";\"other\"\n\"3726674\";\"Désarmes\";\"main\"\n\"3726674\";\"Desarmes\";\"ascii\"\n\"3726728\";\"Dérac\";\"main\"\n\"3726728\";\"Derac\";\"ascii\"\n\"3726728\";\"Lagnon\";\"other\"\n\"3726786\";\"Delmas 73\";\"main\"\n\"3727055\";\"Dame-Marie\";\"main\"\n\"3727055\";\"Ville de Dame Marie\";\"other\"\n\"3727135\";\"Croix des Bouquets\";\"main\"\n\"3727287\";\"Côtes-de-Fer\";\"main\"\n\"3727287\";\"Cotes-de-Fer\";\"ascii\"\n\"3727287\";\"Cote de Fer\";\"other\"\n\"3727297\";\"Coteaux\";\"main\"\n\"3727297\";\"Coteau\";\"other\"\n\"3727297\";\"Les Coteaux\";\"other\"\n\"3727327\";\"Cornillon\";\"main\"\n\"3727327\";\"Grands Bois\";\"other\"\n\"3727398\";\"Corail\";\"main\"\n\"3727902\";\"Chardonnière\";\"main\"\n\"3727902\";\"Chardonniere\";\"ascii\"\n\"3727902\";\"Chardonnieres\";\"other\"\n\"3727902\";\"Chardonnières\";\"other\"\n\"3727902\";\"Ville de Chardonniere\";\"other\"\n\"3727902\";\"Ville de Chardonnière\";\"other\"\n\"3727944\";\"Chantal\";\"main\"\n\"3727984\";\"Chambellan\";\"main\"\n\"3728054\";\"Cerca la Source\";\"main\"\n\"3728054\";\"La Source\";\"other\"\n\"3728054\";\"Ville de Cerca la Source\";\"other\"\n\"3728093\";\"Cayes Jacmel\";\"main\"\n\"3728093\";\"Cayes de Jacmel\";\"other\"\n\"3728097\";\"Les Cayes\";\"main\"\n\"3728097\";\"Aux Cayes\";\"other\"\n\"3728097\";\"Cayes\";\"other\"\n\"3728097\";\"Ville des Cayes\";\"other\"\n\"3728122\";\"Cavaillon\";\"main\"\n\"3728122\";\"Cauaillon\";\"other\"\n\"3728122\";\"Cavailon\";\"other\"\n\"3728338\";\"Carrefour\";\"main\"\n\"3728386\";\"Carice\";\"main\"\n\"3728428\";\"Caracol\";\"main\"\n\"3728474\";\"Cap-Haïtien\";\"main\"\n\"3728474\";\"Cap-Haitien\";\"ascii\"\n\"3728474\";\"Cap Haitien\";\"other\"\n\"3728474\";\"Cap-Francais\";\"other\"\n\"3728474\";\"Cap-Français\";\"other\"\n\"3728474\";\"Cape Haitien\";\"other\"\n\"3728474\";\"Cape Haytien\";\"other\"\n\"3728474\";\"Guarico\";\"other\"\n\"3728474\";\"Guárico\";\"other\"\n\"3728474\";\"Kap Ayisyen\";\"other\"\n\"3728474\";\"Kap-Ait'ene\";\"other\"\n\"3728474\";\"Le Cap\";\"other\"\n\"3728474\";\"Ville du Cap-Haitien\";\"other\"\n\"3728474\";\"Кап-Аитьене\";\"other\"\n\"3728964\";\"Cabaret\";\"main\"\n\"3728964\";\"Duvalierville\";\"other\"\n\"3728964\";\"Prince\";\"other\"\n\"3729548\";\"Bombardopolis\";\"main\"\n\"3729548\";\"Ville de Bombardopolis\";\"other\"\n\"3730363\";\"Belle-Anse\";\"main\"\n\"3730363\";\"Saltrou\";\"other\"\n\"3730800\";\"Baradères\";\"main\"\n\"3730800\";\"Baraderes\";\"ascii\"\n\"3730800\";\"Baradaires\";\"other\"\n\"3730932\";\"Baie de Henne\";\"main\"\n\"3730932\";\"Baie de Haine\";\"other\"\n\"3730932\";\"Henne\";\"other\"\n\"3730932\";\"Henne Bay\";\"other\"\n\"3730937\";\"Bahon\";\"main\"\n\"3730937\";\"Bohon\";\"other\"\n\"3731087\";\"Arcahaie\";\"main\"\n\"3731095\";\"Aquin\";\"main\"\n\"3731105\";\"Anse Rouge\";\"main\"\n\"3731105\";\"Ville de l'Anse Rouge\";\"other\"\n\"3731105\";\"Ville de l’Anse Rouge\";\"other\"\n\"3731123\";\"Anse-à-Veau\";\"main\"\n\"3731123\";\"Anse-a-Veau\";\"ascii\"\n\"3731123\";\"Ville de Anse a Veau\";\"other\"\n\"3731123\";\"Ville de Anse à Veau\";\"other\"\n\"3731126\";\"Anse-à-Pitres\";\"main\"\n\"3731126\";\"Anse-a-Pitres\";\"ascii\"\n\"3731126\";\"Anse Pitres\";\"other\"\n\"3731126\";\"Anse-a-Pitre\";\"other\"\n\"3731126\";\"Anse-à-Pitre\";\"other\"\n\"3731126\";\"Anses a Pitre\";\"other\"\n\"3731126\";\"Anses à Pitre\";\"other\"\n\"3731126\";\"Anses-a-Pitres\";\"other\"\n\"3731126\";\"Anses-a-Pîtres\";\"other\"\n\"3731132\";\"Anse à Galets\";\"main\"\n\"3731132\";\"Anse a Galets\";\"ascii\"\n\"3731132\";\"Anse Galets\";\"other\"\n\"3731132\";\"Anse a Galet\";\"other\"\n\"3731132\";\"Anse à Galet\";\"other\"\n\"3731233\";\"Acul du Nord\";\"main\"\n\"3731257\";\"Abricots\";\"main\"\n\"3731257\";\"Abricot\";\"other\"\n\"3731257\";\"Les Abricots\";\"other\"\n\"3731257\";\"Ville de Apricots\";\"other\"\n\"3740016\";\"Ti Port-de-Paix\";\"main\"\n\"713929\";\"Záhony\";\"main\"\n\"713929\";\"Zahony\";\"ascii\"\n\"713932\";\"Zagyvarékas\";\"main\"\n\"713932\";\"Zagyvarekas\";\"ascii\"\n\"714073\";\"Vésztő\";\"main\"\n\"714073\";\"Veszto\";\"ascii\"\n\"714081\";\"Verpelét\";\"main\"\n\"714081\";\"Verpelet\";\"ascii\"\n\"714188\";\"Vásárosnamény\";\"main\"\n\"714188\";\"Vasarosnameny\";\"ascii\"\n\"714265\";\"Vámospércs\";\"main\"\n\"714265\";\"Vamospercs\";\"ascii\"\n\"714296\";\"Vaja\";\"main\"\n\"714421\";\"Újszász\";\"main\"\n\"714421\";\"Ujszasz\";\"ascii\"\n\"714449\";\"Újkígyós\";\"main\"\n\"714449\";\"Ujkigyos\";\"ascii\"\n\"714464\";\"Újfehértó\";\"main\"\n\"714464\";\"Ujfeherto\";\"ascii\"\n\"714464\";\"Uj Fejerto\";\"other\"\n\"714464\";\"Új Fejertó\";\"other\"\n\"714488\";\"Tyukod\";\"main\"\n\"714490\";\"Tuzsér\";\"main\"\n\"714490\";\"Tuzser\";\"ascii\"\n\"714504\";\"Túrkeve\";\"main\"\n\"714504\";\"Turkeve\";\"ascii\"\n\"714518\";\"Tunyogmatolcs\";\"main\"\n\"714518\";\"Matolcs\";\"other\"\n\"714518\";\"Tunyog\";\"other\"\n\"714548\";\"Tótkomlós\";\"main\"\n\"714548\";\"Totkomlos\";\"ascii\"\n\"714548\";\"Kistanyadulo\";\"other\"\n\"714548\";\"Kistanyadůlő\";\"other\"\n\"714548\";\"Nagykopancs\";\"other\"\n\"714548\";\"Nagykopáncs\";\"other\"\n\"714548\";\"Totkmolos\";\"other\"\n\"714548\";\"Tótkmolós\";\"other\"\n\"714570\";\"Tószeg\";\"main\"\n\"714570\";\"Toszeg\";\"ascii\"\n\"714581\";\"Törökszentmiklós\";\"main\"\n\"714581\";\"Torokszentmiklos\";\"ascii\"\n\"714581\";\"Toroksentmiklosh\";\"other\"\n\"714581\";\"Torokszenimiklos\";\"other\"\n\"714581\";\"Törökszenimiklós\";\"other\"\n\"714581\";\"Тороксентмиклош\";\"other\"\n\"714593\";\"Tornyospálca\";\"main\"\n\"714593\";\"Tornyospalca\";\"ascii\"\n\"714623\";\"Tömörkény\";\"main\"\n\"714623\";\"Tomorkeny\";\"ascii\"\n\"714642\";\"Tolcsva\";\"main\"\n\"714659\";\"Tokaj\";\"main\"\n\"714659\";\"Токай\";\"other\"\n\"714692\";\"Tiszavasvári\";\"main\"\n\"714692\";\"Tiszavasvari\";\"ascii\"\n\"714697\";\"Tiszaújváros\";\"main\"\n\"714697\";\"Tiszaujvaros\";\"ascii\"\n\"714697\";\"Leninvaros\";\"other\"\n\"714697\";\"Leninváros\";\"other\"\n\"714697\";\"Tiszaszederken\";\"other\"\n\"714697\";\"Tiszaszederkeny\";\"other\"\n\"714697\";\"Tiszaszederkény\";\"other\"\n\"714714\";\"Tiszaszentimre\";\"main\"\n\"714718\";\"Tiszasüly\";\"main\"\n\"714718\";\"Tiszasuly\";\"ascii\"\n\"714721\";\"Tiszaroff\";\"main\"\n\"714724\";\"Tiszapüspöki\";\"main\"\n\"714724\";\"Tiszapuspoki\";\"ascii\"\n\"714734\";\"Tiszanána\";\"main\"\n\"714734\";\"Tiszanana\";\"ascii\"\n\"714736\";\"Tiszanagyfalu\";\"main\"\n\"714739\";\"Tiszalúc\";\"main\"\n\"714739\";\"Tiszaluc\";\"ascii\"\n\"714739\";\"Tiszalucz\";\"other\"\n\"714742\";\"Tiszalök\";\"main\"\n\"714742\";\"Tiszalok\";\"ascii\"\n\"714751\";\"Tiszakeszi\";\"main\"\n\"714754\";\"Tiszakécske\";\"main\"\n\"714754\";\"Tiszakecske\";\"ascii\"\n\"714754\";\"O-hecske\";\"other\"\n\"714754\";\"Okecie\";\"other\"\n\"714754\";\"Okecske\";\"other\"\n\"714754\";\"Okeske\";\"other\"\n\"714754\";\"Ujkecske\";\"other\"\n\"714754\";\"Ó-hecske\";\"other\"\n\"714754\";\"Ókeske\";\"other\"\n\"714754\";\"Ókécske\";\"other\"\n\"714754\";\"Újkécske\";\"other\"\n\"714756\";\"Tiszakarád\";\"main\"\n\"714756\";\"Tiszakarad\";\"ascii\"\n\"714772\";\"Tiszafüred\";\"main\"\n\"714772\";\"Tiszafured\";\"ascii\"\n\"714772\";\"Tiszafiired\";\"other\"\n\"714772\";\"Tiszaszollos\";\"other\"\n\"714772\";\"Tiszaszolos\";\"other\"\n\"714772\";\"Tiszaszőllős\";\"other\"\n\"714772\";\"Tiszaszőlős\";\"other\"\n\"714774\";\"Tiszaföldvár\";\"main\"\n\"714774\";\"Tiszafoldvar\";\"ascii\"\n\"714776\";\"Tiszaeszlár\";\"main\"\n\"714776\";\"Tiszaeszlar\";\"ascii\"\n\"714779\";\"Tiszadob\";\"main\"\n\"714782\";\"Tiszadada\";\"main\"\n\"714785\";\"Tiszacsege\";\"main\"\n\"714787\";\"Tiszabura\";\"main\"\n\"714789\";\"Tiszabő\";\"main\"\n\"714789\";\"Tiszabo\";\"ascii\"\n\"714791\";\"Tiszabezdéd\";\"main\"\n\"714791\";\"Tiszabezded\";\"ascii\"\n\"714793\";\"Tiszabercel\";\"main\"\n\"714914\";\"Téglás\";\"main\"\n\"714914\";\"Teglas\";\"ascii\"\n\"714938\";\"Tarpa\";\"main\"\n\"714948\";\"Tarnaörs\";\"main\"\n\"714948\";\"Tarnaoers\";\"ascii\"\n\"714951\";\"Tarnalelesz\";\"main\"\n\"714973\";\"Tarcal\";\"main\"\n\"715001\";\"Tállya\";\"main\"\n\"715001\";\"Tallya\";\"ascii\"\n\"715005\";\"Taktaszada\";\"main\"\n\"715009\";\"Taktaharkány\";\"main\"\n\"715009\";\"Taktaharkany\";\"ascii\"\n\"715126\";\"Szolnok\";\"main\"\n\"715126\";\"Sol'nok\";\"other\"\n\"715126\";\"Сольнок\";\"other\"\n\"715199\";\"Szirmabesenyő\";\"main\"\n\"715199\";\"Szirmabesenyo\";\"ascii\"\n\"715217\";\"Szilvásvárad\";\"main\"\n\"715217\";\"Szilvasvarad\";\"ascii\"\n\"715259\";\"Szikszó\";\"main\"\n\"715259\";\"Szikszo\";\"ascii\"\n\"715272\";\"Szihalom\";\"main\"\n\"715302\";\"Szerencs\";\"main\"\n\"715302\";\"Ond\";\"other\"\n\"715332\";\"Szentistván\";\"main\"\n\"715332\";\"Szentistvan\";\"ascii\"\n\"715338\";\"Szentes\";\"main\"\n\"715355\";\"Szendrő\";\"main\"\n\"715355\";\"Szendro\";\"ascii\"\n\"715393\";\"Székkutas\";\"main\"\n\"715393\";\"Szekkutas\";\"ascii\"\n\"715393\";\"Vasarhelykutas\";\"other\"\n\"715393\";\"Vásárhelykutas\";\"other\"\n\"715415\";\"Szegvár\";\"main\"\n\"715415\";\"Szegvar\";\"ascii\"\n\"715422\";\"Szeghalom\";\"main\"\n\"715429\";\"Szeged\";\"main\"\n\"715429\";\"Algyo\";\"other\"\n\"715429\";\"Algyő\";\"other\"\n\"715429\";\"Gyala\";\"other\"\n\"715429\";\"Gyalaret\";\"other\"\n\"715429\";\"Gyála\";\"other\"\n\"715429\";\"Gyálarét\";\"other\"\n\"715429\";\"Kiskundorozsma\";\"other\"\n\"715429\";\"Seged\";\"other\"\n\"715429\";\"Segedin\";\"other\"\n\"715429\";\"Seghedin\";\"other\"\n\"715429\";\"Szegedin\";\"other\"\n\"715429\";\"Szeghed\";\"other\"\n\"715429\";\"Szoreg\";\"other\"\n\"715429\";\"Szőreg\";\"other\"\n\"715429\";\"Tape\";\"other\"\n\"715429\";\"Tápé\";\"other\"\n\"715429\";\"skdyn\";\"other\"\n\"715429\";\"Сегед\";\"other\"\n\"715429\";\"سکدین\";\"other\"\n\"715449\";\"Szatymaz\";\"main\"\n\"715466\";\"Szarvas\";\"main\"\n\"715466\";\"Sarvas\";\"other\"\n\"715466\";\"Sarvash\";\"other\"\n\"715466\";\"Sarvaš\";\"other\"\n\"715466\";\"sarwash\";\"other\"\n\"715466\";\"Сарваш\";\"other\"\n\"715466\";\"صارواش\";\"other\"\n\"715518\";\"Szamosszeg\";\"main\"\n\"715558\";\"Szakoly\";\"main\"\n\"715570\";\"Szajol\";\"main\"\n\"715614\";\"Szabadkígyós\";\"main\"\n\"715614\";\"Szabadkigyos\";\"ascii\"\n\"715614\";\"Okigyos\";\"other\"\n\"715614\";\"Ókigyós\";\"other\"\n\"715763\";\"Sirok\";\"main\"\n\"715839\";\"Sátoraljaújhely\";\"main\"\n\"715839\";\"Satoraljaujhely\";\"ascii\"\n\"715839\";\"Karolyfalva\";\"other\"\n\"715839\";\"Károlyfalva\";\"other\"\n\"715839\";\"Nove Mesto Pod Siatrom\";\"other\"\n\"715839\";\"Nové Mesto Pod Šiatrom\";\"other\"\n\"715839\";\"Rudabanyacska\";\"other\"\n\"715839\";\"Rudabányácska\";\"other\"\n\"715839\";\"Satoraijaujhely\";\"other\"\n\"715839\";\"Szephalom\";\"other\"\n\"715839\";\"Széphalom\";\"other\"\n\"715839\";\"Ujhely\";\"other\"\n\"715839\";\"Újhely\";\"other\"\n\"715862\";\"Sárrétudvari\";\"main\"\n\"715862\";\"Sarretudvari\";\"ascii\"\n\"715867\";\"Sárospatak\";\"main\"\n\"715867\";\"Sarospatak\";\"ascii\"\n\"715867\";\"Brodroghalasz\";\"other\"\n\"715867\";\"Brodroghalász\";\"other\"\n\"715867\";\"Vegardo\";\"other\"\n\"715867\";\"Végardó\";\"other\"\n\"715888\";\"Sarkad\";\"main\"\n\"715904\";\"Sáránd\";\"main\"\n\"715904\";\"Sarand\";\"ascii\"\n\"715924\";\"Sándorfalva\";\"main\"\n\"715924\";\"Sandorfalva\";\"ascii\"\n\"715930\";\"Sály\";\"main\"\n\"715930\";\"Saly\";\"ascii\"\n\"715939\";\"Sajóvámos\";\"main\"\n\"715939\";\"Sajovamos\";\"ascii\"\n\"715941\";\"Sajószöged\";\"main\"\n\"715941\";\"Sajoszoged\";\"ascii\"\n\"715945\";\"Sajószentpéter\";\"main\"\n\"715945\";\"Sajoszentpeter\";\"ascii\"\n\"715951\";\"Sajóörös\";\"main\"\n\"715951\";\"Sajooeroes\";\"ascii\"\n\"715951\";\"S.oeroes\";\"other\"\n\"715951\";\"S.örös\";\"other\"\n\"715958\";\"Sajólád\";\"main\"\n\"715958\";\"Sajolad\";\"ascii\"\n\"715962\";\"Sajókaza\";\"main\"\n\"715962\";\"Sajokaza\";\"ascii\"\n\"715970\";\"Sajóbábony\";\"main\"\n\"715970\";\"Sajobabony\";\"ascii\"\n\"715989\";\"Rudabánya\";\"main\"\n\"715989\";\"Rudabanya\";\"ascii\"\n\"716028\";\"Röszke\";\"main\"\n\"716028\";\"Roszke\";\"ascii\"\n\"716028\";\"Roske\";\"other\"\n\"716028\";\"Röske\";\"other\"\n\"716081\";\"Ricse\";\"main\"\n\"716151\";\"Recsk\";\"main\"\n\"716186\";\"Rákócziújfalu\";\"main\"\n\"716186\";\"Rakocziujfalu\";\"ascii\"\n\"716197\";\"Rákóczifalva\";\"main\"\n\"716197\";\"Rakoczifalva\";\"ascii\"\n\"716204\";\"Rakamaz\";\"main\"\n\"716247\";\"Putnok\";\"main\"\n\"716282\";\"Pusztaföldvár\";\"main\"\n\"716282\";\"Pusztafoldvar\";\"ascii\"\n\"716301\";\"Püspökladány\";\"main\"\n\"716301\";\"Puspokladany\";\"ascii\"\n\"716317\";\"Prügy\";\"main\"\n\"716317\";\"Prugy\";\"ascii\"\n\"716339\";\"Poroszló\";\"main\"\n\"716339\";\"Poroszlo\";\"ascii\"\n\"716343\";\"Porcsalma\";\"main\"\n\"716356\";\"Polgár\";\"main\"\n\"716356\";\"Polgar\";\"ascii\"\n\"716372\";\"Pocsaj\";\"main\"\n\"716437\";\"Petneháza\";\"main\"\n\"716437\";\"Petnehaza\";\"ascii\"\n\"716439\";\"Pétervására\";\"main\"\n\"716439\";\"Petervasara\";\"ascii\"\n\"716526\";\"Pátroha\";\"main\"\n\"716526\";\"Patroha\";\"ascii\"\n\"716559\";\"Parád\";\"main\"\n\"716559\";\"Parad\";\"ascii\"\n\"716559\";\"Paradohuta\";\"other\"\n\"716559\";\"Parádóhuta\";\"other\"\n\"716671\";\"Ózd\";\"main\"\n\"716671\";\"Ozd\";\"ascii\"\n\"716671\";\"Bolyok\";\"other\"\n\"716671\";\"Center\";\"other\"\n\"716671\";\"Hodoscsepany\";\"other\"\n\"716671\";\"Hodoscsépány\";\"other\"\n\"716671\";\"Sajovarkony\";\"other\"\n\"716671\";\"Sajóvárkony\";\"other\"\n\"716671\";\"Susa\";\"other\"\n\"716671\";\"Szentsimon\";\"other\"\n\"716671\";\"Uraj\";\"other\"\n\"716671\";\"Озд\";\"other\"\n\"716706\";\"Ostoros\";\"main\"\n\"716736\";\"Orosháza\";\"main\"\n\"716736\";\"Oroshaza\";\"ascii\"\n\"716736\";\"Oroshazi\";\"other\"\n\"716736\";\"Oroshkhaza\";\"other\"\n\"716736\";\"Orosházi\";\"other\"\n\"716736\";\"Орошхаза\";\"other\"\n\"716791\";\"Ópusztaszer\";\"main\"\n\"716791\";\"Opusztaszer\";\"ascii\"\n\"716791\";\"Sovenyhaza\";\"other\"\n\"716791\";\"Sövényháza\";\"other\"\n\"716793\";\"Ópályi\";\"main\"\n\"716793\";\"Opalyi\";\"ascii\"\n\"716796\";\"Ónod\";\"main\"\n\"716796\";\"Onod\";\"ascii\"\n\"716799\";\"Onga\";\"main\"\n\"716828\";\"Olaszliszka\";\"main\"\n\"716844\";\"Ököritófülpös\";\"main\"\n\"716844\";\"Okoritofulpos\";\"ascii\"\n\"716844\";\"Fulpos\";\"other\"\n\"716844\";\"Fülpös\";\"other\"\n\"716844\";\"Szatmarokorito\";\"other\"\n\"716844\";\"Szatmárököritó\";\"other\"\n\"716853\";\"Okány\";\"main\"\n\"716853\";\"Okany\";\"ascii\"\n\"716860\";\"Ófehértó\";\"main\"\n\"716860\";\"Ofeherto\";\"ascii\"\n\"716864\";\"Öcsöd\";\"main\"\n\"716864\";\"Ocsod\";\"ascii\"\n\"716889\";\"Nyírvasvári\";\"main\"\n\"716889\";\"Nyirvasvari\";\"ascii\"\n\"716893\";\"Nyírtelek\";\"main\"\n\"716893\";\"Nyirtelek\";\"ascii\"\n\"716893\";\"Kiralytelekpuszta\";\"other\"\n\"716893\";\"Királytelekpuszta\";\"other\"\n\"716894\";\"Nyírtass\";\"main\"\n\"716894\";\"Nyirtass\";\"ascii\"\n\"716899\";\"Nyírpazony\";\"main\"\n\"716899\";\"Nyirpazony\";\"ascii\"\n\"716903\";\"Nyírmihálydi\";\"main\"\n\"716903\";\"Nyirmihalydi\";\"ascii\"\n\"716905\";\"Nyírmeggyes\";\"main\"\n\"716905\";\"Nyirmeggyes\";\"ascii\"\n\"716906\";\"Nyírmártonfalva\";\"main\"\n\"716906\";\"Nyirmartonfalva\";\"ascii\"\n\"716908\";\"Nyírmada\";\"main\"\n\"716908\";\"Nyirmada\";\"ascii\"\n\"716909\";\"Nyírlugos\";\"main\"\n\"716909\";\"Nyirlugos\";\"ascii\"\n\"716909\";\"Nairlugos\";\"other\"\n\"716913\";\"Nyírkarász\";\"main\"\n\"716913\";\"Nyirkarasz\";\"ascii\"\n\"716924\";\"Nyírgyulaj\";\"main\"\n\"716924\";\"Nyirgyulaj\";\"ascii\"\n\"716935\";\"Nyíregyháza\";\"main\"\n\"716935\";\"Nyiregyhaza\";\"ascii\"\n\"716935\";\"N'ired'khaza\";\"other\"\n\"716935\";\"Nyirszollos\";\"other\"\n\"716935\";\"Nyirszolos\";\"other\"\n\"716935\";\"Nyírszőllős\";\"other\"\n\"716935\";\"Nyírszőlős\";\"other\"\n\"716935\";\"Oros\";\"other\"\n\"716935\";\"Ньиредьхаза\";\"other\"\n\"716941\";\"Nyírcsaholy\";\"main\"\n\"716941\";\"Nyircsaholy\";\"ascii\"\n\"716943\";\"Nyírbogdány\";\"main\"\n\"716943\";\"Nyirbogdany\";\"ascii\"\n\"716945\";\"Nyírbogát\";\"main\"\n\"716945\";\"Nyirbogat\";\"ascii\"\n\"716945\";\"Nyirbognt\";\"other\"\n\"716946\";\"Nyírbéltek\";\"main\"\n\"716946\";\"Nyirbeltek\";\"ascii\"\n\"716946\";\"Nyirbetek\";\"other\"\n\"716946\";\"Nyírbetek\";\"other\"\n\"716948\";\"Nyírbátor\";\"main\"\n\"716948\";\"Nyirbator\";\"ascii\"\n\"716951\";\"Nyíradony\";\"main\"\n\"716951\";\"Nyiradony\";\"ascii\"\n\"716952\";\"Nyíracsád\";\"main\"\n\"716952\";\"Nyiracsad\";\"ascii\"\n\"716954\";\"Nyírábrány\";\"main\"\n\"716954\";\"Nyirabrany\";\"ascii\"\n\"716968\";\"Nyékládháza\";\"main\"\n\"716968\";\"Nyekladhaza\";\"ascii\"\n\"716968\";\"Ladhaza\";\"other\"\n\"716968\";\"Ládháza\";\"other\"\n\"716968\";\"Malom\";\"other\"\n\"716968\";\"Mezonyek\";\"other\"\n\"716968\";\"Mezőnyék\";\"other\"\n\"717042\";\"Napkor\";\"main\"\n\"717130\";\"Nagyszénás\";\"main\"\n\"717130\";\"Nagyszenas\";\"ascii\"\n\"717172\";\"Nagyrábé\";\"main\"\n\"717172\";\"Nagyrabe\";\"ascii\"\n\"717281\";\"Nagykálló\";\"main\"\n\"717281\";\"Nagykallo\";\"ascii\"\n\"717281\";\"Kiskallo\";\"other\"\n\"717281\";\"Kiskálló\";\"other\"\n\"717345\";\"Nagyhalász\";\"main\"\n\"717345\";\"Nagyhalasz\";\"ascii\"\n\"717397\";\"Nagyecsed\";\"main\"\n\"717400\";\"Nagydobos\";\"main\"\n\"717406\";\"Nagycserkesz\";\"main\"\n\"717449\";\"Nádudvar\";\"main\"\n\"717449\";\"Nadudvar\";\"ascii\"\n\"717497\";\"Múcsony\";\"main\"\n\"717497\";\"Mucsony\";\"ascii\"\n\"717521\";\"Monostorpályi\";\"main\"\n\"717521\";\"Monostorpalyi\";\"ascii\"\n\"717530\";\"Monok\";\"main\"\n\"717530\";\"Morok\";\"other\"\n\"717582\";\"Miskolc\";\"main\"\n\"717582\";\"Bukkszentlaszlo\";\"other\"\n\"717582\";\"Bükkszentlászló\";\"other\"\n\"717582\";\"Mishkol'c\";\"other\"\n\"717582\";\"Mishkolc\";\"other\"\n\"717582\";\"Miskolca\";\"other\"\n\"717582\";\"Miskolcz\";\"other\"\n\"717582\";\"Miskole\";\"other\"\n\"717582\";\"Miszkolc\";\"other\"\n\"717582\";\"Miškolca\";\"other\"\n\"717582\";\"mi shen ke er ci\";\"other\"\n\"717582\";\"mishukorutsu\";\"other\"\n\"717582\";\"Мишколц\";\"other\"\n\"717582\";\"Мишкольц\";\"other\"\n\"717582\";\"ミシュコルツ\";\"other\"\n\"717582\";\"米什科尔茨\";\"other\"\n\"717591\";\"Mindszent\";\"main\"\n\"717616\";\"Mikepércs\";\"main\"\n\"717616\";\"Mikepercs\";\"ascii\"\n\"717632\";\"Mezőzombor\";\"main\"\n\"717632\";\"Mezozombor\";\"ascii\"\n\"717635\";\"Mezőtúr\";\"main\"\n\"717635\";\"Mezotur\";\"ascii\"\n\"717635\";\"Mezoetur\";\"other\"\n\"717635\";\"Mezötúr\";\"other\"\n\"717652\";\"Mezőkövesd\";\"main\"\n\"717652\";\"Mezokovesd\";\"ascii\"\n\"717656\";\"Mezőkovácsháza\";\"main\"\n\"717656\";\"Mezokovacshaza\";\"ascii\"\n\"717656\";\"Reformatuskovacshaza\";\"other\"\n\"717656\";\"Reformatustovacshaza\";\"other\"\n\"717656\";\"Reformátuskovácsháza\";\"other\"\n\"717656\";\"Reformátustovácsháza\";\"other\"\n\"717658\";\"Mezőkeresztes\";\"main\"\n\"717658\";\"Mezokeresztes\";\"ascii\"\n\"717658\";\"Keresztespuspoki\";\"other\"\n\"717658\";\"Keresztespüspöki\";\"other\"\n\"717662\";\"Mezőhegyes\";\"main\"\n\"717662\";\"Mezohegyes\";\"ascii\"\n\"717667\";\"Mezőcsát\";\"main\"\n\"717667\";\"Mezocsat\";\"ascii\"\n\"717669\";\"Mezőberény\";\"main\"\n\"717669\";\"Mezobereny\";\"ascii\"\n\"717693\";\"Mérk\";\"main\"\n\"717693\";\"Merk\";\"ascii\"\n\"717721\";\"Méhkerék\";\"main\"\n\"717721\";\"Mehkerek\";\"ascii\"\n\"717726\";\"Megyaszó\";\"main\"\n\"717726\";\"Megyaszo\";\"ascii\"\n\"717741\";\"Medgyesegyháza\";\"main\"\n\"717741\";\"Medgyesegyhaza\";\"ascii\"\n\"717758\";\"Mátraderecske\";\"main\"\n\"717758\";\"Matraderecske\";\"ascii\"\n\"717771\";\"Mátészalka\";\"main\"\n\"717771\";\"Mateszalka\";\"ascii\"\n\"717805\";\"Maroslele\";\"main\"\n\"717805\";\"Maroslelle\";\"other\"\n\"717805\";\"Puspoklele\";\"other\"\n\"717805\";\"Püspöklele\";\"other\"\n\"717825\";\"Máriapócs\";\"main\"\n\"717825\";\"Mariapocs\";\"ascii\"\n\"717853\";\"Mándok\";\"main\"\n\"717853\";\"Mandok\";\"ascii\"\n\"717861\";\"Mályi\";\"main\"\n\"717861\";\"Malyi\";\"ascii\"\n\"717902\";\"Makó\";\"main\"\n\"717902\";\"Mako\";\"ascii\"\n\"717904\";\"Maklár\";\"main\"\n\"717904\";\"Maklar\";\"ascii\"\n\"717904\";\"Maklartalya\";\"other\"\n\"717904\";\"Maklártálya\";\"other\"\n\"717943\";\"Magyarbánhegyes\";\"main\"\n\"717943\";\"Magyarbanhegyes\";\"ascii\"\n\"717980\";\"Mád\";\"main\"\n\"717980\";\"Mad\";\"ascii\"\n\"718060\";\"Lőkösháza\";\"main\"\n\"718060\";\"Lokoshaza\";\"ascii\"\n\"718108\";\"Levelek\";\"main\"\n\"718113\";\"Létavértes\";\"main\"\n\"718113\";\"Letavertes\";\"ascii\"\n\"718113\";\"Nagyleta\";\"other\"\n\"718113\";\"Nagyléta\";\"other\"\n\"718113\";\"Vertes\";\"other\"\n\"718113\";\"Vértes\";\"other\"\n\"718312\";\"Kunszentmárton\";\"main\"\n\"718312\";\"Kunszentmarton\";\"ascii\"\n\"718312\";\"Szeleveny\";\"other\"\n\"718312\";\"Szelevény\";\"other\"\n\"718315\";\"Kunmadaras\";\"main\"\n\"718321\";\"Kunhegyes\";\"main\"\n\"718334\";\"Kunágota\";\"main\"\n\"718334\";\"Kunagota\";\"ascii\"\n\"718480\";\"Kótaj\";\"main\"\n\"718480\";\"Kotaj\";\"ascii\"\n\"718480\";\"Keresztut\";\"other\"\n\"718480\";\"Keresztút\";\"other\"\n\"718516\";\"Köröstarcsa\";\"main\"\n\"718516\";\"Korostarcsa\";\"ascii\"\n\"718528\";\"Körösladány\";\"main\"\n\"718528\";\"Korosladany\";\"ascii\"\n\"718602\";\"Konyár\";\"main\"\n\"718602\";\"Konyar\";\"ascii\"\n\"718615\";\"Kondoros\";\"main\"\n\"718618\";\"Kompolt\";\"main\"\n\"718618\";\"Komoplt\";\"other\"\n\"718637\";\"Komádi\";\"main\"\n\"718637\";\"Komadi\";\"ascii\"\n\"718637\";\"Komaiti\";\"other\"\n\"718637\";\"Komāiti\";\"other\"\n\"718699\";\"Kocsord\";\"main\"\n\"718723\";\"Kiszombor\";\"main\"\n\"718723\";\"Zombor\";\"other\"\n\"718739\";\"Kisvárda\";\"main\"\n\"718739\";\"Kisvarda\";\"ascii\"\n\"718744\";\"Kisújszállás\";\"main\"\n\"718744\";\"Kisujszallas\";\"ascii\"\n\"718897\";\"Kisléta\";\"main\"\n\"718897\";\"Kisleta\";\"ascii\"\n\"718911\";\"Kisköre\";\"main\"\n\"718911\";\"Kiskore\";\"ascii\"\n\"719093\";\"Kevermes\";\"main\"\n\"719126\";\"Kétegyháza\";\"main\"\n\"719126\";\"Ketegyhaza\";\"ascii\"\n\"719211\";\"Kerecsend\";\"main\"\n\"719232\";\"Kengyel\";\"main\"\n\"719232\";\"Pusztakengyel\";\"other\"\n\"719252\";\"Kenderes\";\"main\"\n\"719260\";\"Kemecse\";\"main\"\n\"719280\";\"Kék\";\"main\"\n\"719280\";\"Kek\";\"ascii\"\n\"719311\";\"Kazincbarcika\";\"main\"\n\"719311\";\"Sajokazinc\";\"other\"\n\"719311\";\"Sajókazinc\";\"other\"\n\"719311\";\"Казинцбарцика\";\"other\"\n\"719346\";\"Kaszaper\";\"main\"\n\"719396\";\"Karcsa\";\"main\"\n\"719404\";\"Karcag\";\"main\"\n\"719404\";\"Karcage\";\"other\"\n\"719404\";\"Карцаге\";\"other\"\n\"719419\";\"Karácsond\";\"main\"\n\"719419\";\"Karacsond\";\"ascii\"\n\"719466\";\"Kántorjánosi\";\"main\"\n\"719466\";\"Kantorjanosi\";\"ascii\"\n\"719489\";\"Kálmánháza\";\"main\"\n\"719489\";\"Kalmanhaza\";\"ascii\"\n\"719493\";\"Kállósemjén\";\"main\"\n\"719493\";\"Kallosemjen\";\"ascii\"\n\"719511\";\"Kál\";\"main\"\n\"719511\";\"Kal\";\"ascii\"\n\"719555\";\"Kaba\";\"main\"\n\"719635\";\"Jászszentandrás\";\"main\"\n\"719635\";\"Jaszszentandras\";\"ascii\"\n\"719640\";\"Jászladány\";\"main\"\n\"719640\";\"Jaszladany\";\"ascii\"\n\"719643\";\"Jászkisér\";\"main\"\n\"719643\";\"Jaszkiser\";\"ascii\"\n\"719644\";\"Jászkarajenő\";\"main\"\n\"719644\";\"Jaszkarajeno\";\"ascii\"\n\"719645\";\"Jászjákóhalma\";\"main\"\n\"719645\";\"Jaszjakohalma\";\"ascii\"\n\"719649\";\"Jászdózsa\";\"main\"\n\"719649\";\"Jaszdozsa\";\"ascii\"\n\"719655\";\"Jászapáti\";\"main\"\n\"719655\";\"Jaszapati\";\"ascii\"\n\"719656\";\"Jászalsószentgyörgy\";\"main\"\n\"719656\";\"Jaszalsoszentgyorgy\";\"ascii\"\n\"719668\";\"Járdánháza\";\"main\"\n\"719668\";\"Jardanhaza\";\"ascii\"\n\"719678\";\"Jánoshida\";\"main\"\n\"719678\";\"Janoshida\";\"ascii\"\n\"719710\";\"Izsófalva\";\"main\"\n\"719710\";\"Izsofalva\";\"ascii\"\n\"719710\";\"Disznoshorvat\";\"other\"\n\"719710\";\"Disznóshorvát\";\"other\"\n\"719806\";\"Ibrány\";\"main\"\n\"719806\";\"Ibrany\";\"ascii\"\n\"719843\";\"Hosszúpályi\";\"main\"\n\"719843\";\"Hosszupalyi\";\"ascii\"\n\"719843\";\"Hosszupaly\";\"other\"\n\"719843\";\"Hosszúpály\";\"other\"\n\"719895\";\"Hortobágy\";\"main\"\n\"719895\";\"Hortobagy\";\"ascii\"\n\"719965\";\"Hódmezővásárhely\";\"main\"\n\"719965\";\"Hodmezovasarhely\";\"ascii\"\n\"719965\";\"Khodmezevasharkhej\";\"other\"\n\"719965\";\"Ходмезевашархей\";\"other\"\n\"719967\";\"Hodász\";\"main\"\n\"719967\";\"Hodasz\";\"ascii\"\n\"720006\";\"Heves\";\"main\"\n\"720026\";\"Hernádnémeti\";\"main\"\n\"720026\";\"Hernadnemeti\";\"ascii\"\n\"720061\";\"Hejőbába\";\"main\"\n\"720061\";\"Hejobaba\";\"ascii\"\n\"720080\";\"Hegyeshalom\";\"main\"\n\"720149\";\"Harsány\";\"main\"\n\"720149\";\"Harsany\";\"ascii\"\n\"720228\";\"Halmaj\";\"main\"\n\"720274\";\"Hajdúszovát\";\"main\"\n\"720274\";\"Hajduszovat\";\"ascii\"\n\"720276\";\"Hajdúszoboszló\";\"main\"\n\"720276\";\"Hajduszoboszlo\";\"ascii\"\n\"720276\";\"Khajdusoboslo\";\"other\"\n\"720276\";\"Хайдусобосло\";\"other\"\n\"720280\";\"Hajdúsámson\";\"main\"\n\"720280\";\"Hajdusamson\";\"ascii\"\n\"720284\";\"Hajdúnánás\";\"main\"\n\"720284\";\"Hajdunanas\";\"ascii\"\n\"720287\";\"Hajdúhadház\";\"main\"\n\"720287\";\"Hajduhadhaz\";\"ascii\"\n\"720290\";\"Hajdúdorog\";\"main\"\n\"720290\";\"Hajdudorog\";\"ascii\"\n\"720292\";\"Hajdúböszörmény\";\"main\"\n\"720292\";\"Hajduboszormeny\";\"ascii\"\n\"720295\";\"Hajdúbagos\";\"main\"\n\"720295\";\"Hajdubagos\";\"ascii\"\n\"720330\";\"Gyulaháza\";\"main\"\n\"720330\";\"Gyulahaza\";\"ascii\"\n\"720334\";\"Gyula\";\"main\"\n\"720334\";\"D'jula\";\"other\"\n\"720334\";\"Giula\";\"other\"\n\"720334\";\"Gyulavari\";\"other\"\n\"720334\";\"Gyulavári\";\"other\"\n\"720334\";\"Дьюла\";\"other\"\n\"720364\";\"Gyomaendrőd\";\"main\"\n\"720364\";\"Gyomaendrod\";\"ascii\"\n\"720364\";\"Endrod\";\"other\"\n\"720364\";\"Endrőd\";\"other\"\n\"720364\";\"Gyoma\";\"other\"\n\"720480\";\"Görbeháza\";\"main\"\n\"720480\";\"Gorbehaza\";\"ascii\"\n\"720480\";\"Gorbehazapuszta\";\"other\"\n\"720480\";\"Görbeházapuszta\";\"other\"\n\"720494\";\"Gönc\";\"main\"\n\"720494\";\"Gonc\";\"ascii\"\n\"720533\";\"Gesztely\";\"main\"\n\"720574\";\"Gégény\";\"main\"\n\"720574\";\"Gegeny\";\"ascii\"\n\"720643\";\"Gádoros\";\"main\"\n\"720643\";\"Gadoros\";\"ascii\"\n\"720679\";\"Füzesgyarmat\";\"main\"\n\"720679\";\"Fuzesgyarmat\";\"ascii\"\n\"720687\";\"Füzesabony\";\"main\"\n\"720687\";\"Fuzesabony\";\"ascii\"\n\"720776\";\"Földes\";\"main\"\n\"720776\";\"Foldes\";\"ascii\"\n\"720780\";\"Földeák\";\"main\"\n\"720780\";\"Foldeak\";\"ascii\"\n\"720846\";\"Fényeslitke\";\"main\"\n\"720846\";\"Fenyeslitke\";\"ascii\"\n\"720857\";\"Felsőzsolca\";\"main\"\n\"720857\";\"Felsozsolca\";\"ascii\"\n\"720862\";\"Felsőtárkány\";\"main\"\n\"720862\";\"Felsotarkany\";\"ascii\"\n\"720988\";\"Fehérgyarmat\";\"main\"\n\"720988\";\"Fehergyarmat\";\"ascii\"\n\"720992\";\"Fegyvernek\";\"main\"\n\"721022\";\"Farkaslyuk\";\"main\"\n\"721022\";\"Farkaslyuk Banyatelep\";\"other\"\n\"721022\";\"Farkaslyuk Bányatelep\";\"other\"\n\"721022\";\"Farkaslyuki Banyatelep\";\"other\"\n\"721022\";\"Farkaslyuki Bányatelep\";\"other\"\n\"721068\";\"Fábiánsebestyén\";\"main\"\n\"721068\";\"Fabiansebestyen\";\"ascii\"\n\"721119\";\"Erdőtelek\";\"main\"\n\"721119\";\"Erdotelek\";\"ascii\"\n\"721158\";\"Encsencs\";\"main\"\n\"721159\";\"Encs\";\"main\"\n\"721159\";\"Abaujdevecser\";\"other\"\n\"721159\";\"Abaújdevecser\";\"other\"\n\"721159\";\"Fugod\";\"other\"\n\"721159\";\"Fügöd\";\"other\"\n\"721159\";\"Gibart\";\"other\"\n\"721159\";\"Gibárt\";\"other\"\n\"721161\";\"Emőd\";\"main\"\n\"721161\";\"Emod\";\"ascii\"\n\"721189\";\"Elek\";\"main\"\n\"721208\";\"Egyek\";\"main\"\n\"721225\";\"Egerszalók\";\"main\"\n\"721225\";\"Egerszalok\";\"ascii\"\n\"721239\";\"Eger\";\"main\"\n\"721239\";\"Egera\";\"other\"\n\"721239\";\"Ehger\";\"other\"\n\"721239\";\"Erlau\";\"other\"\n\"721239\";\"Jager\";\"other\"\n\"721239\";\"Szarvasko\";\"other\"\n\"721239\";\"Szarvaskő\";\"other\"\n\"721239\";\"agr\";\"other\"\n\"721239\";\"egeru\";\"other\"\n\"721239\";\"Эгер\";\"other\"\n\"721239\";\"اگر\";\"other\"\n\"721239\";\"エゲル\";\"other\"\n\"721246\";\"Edelény\";\"main\"\n\"721246\";\"Edeleny\";\"ascii\"\n\"721246\";\"Balajt\";\"other\"\n\"721246\";\"Ladbesenyo\";\"other\"\n\"721246\";\"Ládbesenyő\";\"other\"\n\"721257\";\"Ebes\";\"main\"\n\"721304\";\"Domoszló\";\"main\"\n\"721304\";\"Domoszlo\";\"ascii\"\n\"721309\";\"Dombrád\";\"main\"\n\"721309\";\"Dombrad\";\"ascii\"\n\"721314\";\"Dombegyház\";\"main\"\n\"721314\";\"Dombegyhaz\";\"ascii\"\n\"721316\";\"Domaszék\";\"main\"\n\"721316\";\"Domaszek\";\"ascii\"\n\"721338\";\"Döge\";\"main\"\n\"721338\";\"Doge\";\"ascii\"\n\"721349\";\"Doboz\";\"main\"\n\"721404\";\"Dévaványa\";\"main\"\n\"721404\";\"Devavanya\";\"ascii\"\n\"721411\";\"Deszk\";\"main\"\n\"721411\";\"Deska\";\"other\"\n\"721411\";\"Deszka\";\"other\"\n\"721428\";\"Derecske\";\"main\"\n\"721444\";\"Demecser\";\"main\"\n\"721472\";\"Debrecen\";\"main\"\n\"721472\";\"Debrecena\";\"other\"\n\"721472\";\"Debreczyn\";\"other\"\n\"721472\";\"Debretin\";\"other\"\n\"721472\";\"Debreţin\";\"other\"\n\"721472\";\"Ntempretsen\";\"other\"\n\"721472\";\"dbrzn\";\"other\"\n\"721472\";\"debeulechen\";\"other\"\n\"721472\";\"deburetsu~en\";\"other\"\n\"721472\";\"Ντέμπρετσεν\";\"other\"\n\"721472\";\"Дебрецен\";\"other\"\n\"721472\";\"דברצן\";\"other\"\n\"721472\";\"デブレツェン\";\"other\"\n\"721472\";\"데브레첸\";\"other\"\n\"721559\";\"Csorvás\";\"main\"\n\"721559\";\"Csorvas\";\"ascii\"\n\"721592\";\"Csongrád\";\"main\"\n\"721592\";\"Csongrad\";\"ascii\"\n\"721611\";\"Csökmő\";\"main\"\n\"721611\";\"Csokmo\";\"ascii\"\n\"721712\";\"Cserkeszőlő\";\"main\"\n\"721712\";\"Cserkeszolo\";\"ascii\"\n\"721712\";\"Cserkeszollo\";\"other\"\n\"721712\";\"Cserkeszőllő\";\"other\"\n\"721789\";\"Csenger\";\"main\"\n\"721856\";\"Csanytelek\";\"main\"\n\"721861\";\"Csanádpalota\";\"main\"\n\"721861\";\"Csanadpalota\";\"ascii\"\n\"721864\";\"Csanádapáca\";\"main\"\n\"721864\";\"Csanadapaca\";\"ascii\"\n\"721913\";\"Cigánd\";\"main\"\n\"721913\";\"Cigand\";\"ascii\"\n\"721923\";\"Cibakháza\";\"main\"\n\"721923\";\"Cibakhaza\";\"ascii\"\n\"721986\";\"Buj\";\"main\"\n\"722011\";\"Bucsa\";\"main\"\n\"722057\";\"Borsodnádasd\";\"main\"\n\"722057\";\"Borsodnadasd\";\"ascii\"\n\"722118\";\"Boldva\";\"main\"\n\"722133\";\"Bököny\";\"main\"\n\"722133\";\"Bokony\";\"ascii\"\n\"722171\";\"Bogács\";\"main\"\n\"722171\";\"Bogacs\";\"ascii\"\n\"722223\";\"Bőcs\";\"main\"\n\"722223\";\"Bocs\";\"ascii\"\n\"722278\";\"Biharnagybajom\";\"main\"\n\"722281\";\"Biharkeresztes\";\"main\"\n\"722300\";\"Besenyszög\";\"main\"\n\"722300\";\"Besenyszog\";\"ascii\"\n\"722301\";\"Besenyőtelek\";\"main\"\n\"722301\";\"Besenyotelek\";\"ascii\"\n\"722324\";\"Berettyóújfalu\";\"main\"\n\"722324\";\"Berettyoujfalu\";\"ascii\"\n\"722424\";\"Bélapátfalva\";\"main\"\n\"722424\";\"Belapatfalva\";\"ascii\"\n\"722431\";\"Békésszentandrás\";\"main\"\n\"722431\";\"Bekesszentandras\";\"ascii\"\n\"722431\";\"Bekesszentadras\";\"other\"\n\"722431\";\"Békésszentadrás\";\"other\"\n\"722432\";\"Békéssámson\";\"main\"\n\"722432\";\"Bekessamson\";\"ascii\"\n\"722437\";\"Békéscsaba\";\"main\"\n\"722437\";\"Bekescsaba\";\"ascii\"\n\"722437\";\"Bekeshchaba\";\"other\"\n\"722437\";\"Bekesska Caba\";\"other\"\n\"722437\";\"Békešská Čaba\";\"other\"\n\"722437\";\"Gerla\";\"other\"\n\"722437\";\"Mezomegyer\";\"other\"\n\"722437\";\"Mezőmegyer\";\"other\"\n\"722437\";\"Nagymajor\";\"other\"\n\"722437\";\"Бекешчаба\";\"other\"\n\"722439\";\"Békés\";\"main\"\n\"722439\";\"Bekes\";\"ascii\"\n\"722439\";\"Bekes megye\";\"other\"\n\"722439\";\"Bekesh\";\"other\"\n\"722439\";\"Békés megye\";\"other\"\n\"722439\";\"Comitatul Bekes\";\"other\"\n\"722439\";\"Comitatul Békés\";\"other\"\n\"722439\";\"Бекеш\";\"other\"\n\"722448\";\"Bekecs\";\"main\"\n\"722477\";\"Battonya\";\"main\"\n\"722555\";\"Báránd\";\"main\"\n\"722555\";\"Barand\";\"ascii\"\n\"722636\";\"Balmazújváros\";\"main\"\n\"722636\";\"Balmazujvaros\";\"ascii\"\n\"722650\";\"Balkány\";\"main\"\n\"722650\";\"Balkany\";\"ascii\"\n\"722676\";\"Balástya\";\"main\"\n\"722676\";\"Balastya\";\"ascii\"\n\"722676\";\"Felsokozpont\";\"other\"\n\"722676\";\"Felsőközpont\";\"other\"\n\"722682\";\"Baktalórántháza\";\"main\"\n\"722682\";\"Baktaloranthaza\";\"ascii\"\n\"722691\";\"Baks\";\"main\"\n\"722691\";\"Baksi-major\";\"other\"\n\"722738\";\"Bagamér\";\"main\"\n\"722738\";\"Bagamer\";\"ascii\"\n\"722775\";\"Aszaló\";\"main\"\n\"722775\";\"Aszalo\";\"ascii\"\n\"722802\";\"Arnót\";\"main\"\n\"722802\";\"Arnot\";\"ascii\"\n\"722803\";\"Arló\";\"main\"\n\"722803\";\"Arlo\";\"ascii\"\n\"722823\";\"Aranyosapáti\";\"main\"\n\"722823\";\"Aranyosapati\";\"ascii\"\n\"722823\";\"Kopocsapati\";\"other\"\n\"722823\";\"Kopócsapáti\";\"other\"\n\"722823\";\"Revaranyos\";\"other\"\n\"722823\";\"Révaranyos\";\"other\"\n\"722849\";\"Apátfalva\";\"main\"\n\"722849\";\"Apatfalva\";\"ascii\"\n\"722852\";\"Apagy\";\"main\"\n\"722872\";\"Andornaktálya\";\"main\"\n\"722872\";\"Andornaktalya\";\"ascii\"\n\"722876\";\"Anarcs\";\"main\"\n\"722882\";\"Alsózsolca\";\"main\"\n\"722882\";\"Alsozsolca\";\"ascii\"\n\"722973\";\"Alattyán\";\"main\"\n\"722973\";\"Alattyan\";\"ascii\"\n\"722998\";\"Ajak\";\"main\"\n\"723030\";\"Abony\";\"main\"\n\"723036\";\"Abaújszántó\";\"main\"\n\"723036\";\"Abaujszanto\";\"ascii\"\n\"723041\";\"Abasár\";\"main\"\n\"723041\";\"Abasar\";\"ascii\"\n\"723041\";\"Palosvorosmart\";\"other\"\n\"723041\";\"Pálosvörösmart\";\"other\"\n\"723044\";\"Abádszalók\";\"main\"\n\"723044\";\"Abadszalok\";\"ascii\"\n\"3042441\";\"Zsombó\";\"main\"\n\"3042441\";\"Zsombo\";\"ascii\"\n\"3042504\";\"Zsámbok\";\"main\"\n\"3042504\";\"Zsambok\";\"ascii\"\n\"3042507\";\"Zsámbék\";\"main\"\n\"3042507\";\"Zsambek\";\"ascii\"\n\"3042516\";\"Zomba\";\"main\"\n\"3042536\";\"Zirc\";\"main\"\n\"3042569\";\"Zánka\";\"main\"\n\"3042569\";\"Zanka\";\"ascii\"\n\"3042575\";\"Zámoly\";\"main\"\n\"3042575\";\"Zamoly\";\"ascii\"\n\"3042580\";\"Zamárdi\";\"main\"\n\"3042580\";\"Zamardi\";\"ascii\"\n\"3042580\";\"Balatonzamardi\";\"other\"\n\"3042580\";\"Balatonzamárdi\";\"other\"\n\"3042603\";\"Zalaszentgrót\";\"main\"\n\"3042603\";\"Zalaszentgrot\";\"ascii\"\n\"3042603\";\"Csaford\";\"other\"\n\"3042603\";\"Csáford\";\"other\"\n\"3042603\";\"Tekenye\";\"other\"\n\"3042603\";\"Zalakoppany\";\"other\"\n\"3042603\";\"Zalakoppány\";\"other\"\n\"3042603\";\"Zalaudvarnok\";\"other\"\n\"3042617\";\"Zalalövő\";\"main\"\n\"3042617\";\"Zalalovo\";\"ascii\"\n\"3042621\";\"Zalakomár\";\"main\"\n\"3042621\";\"Zalakomar\";\"ascii\"\n\"3042638\";\"Zalaegerszeg\";\"main\"\n\"3042638\";\"Zalaehgerseg\";\"other\"\n\"3042638\";\"Залаэгерсег\";\"other\"\n\"3042652\";\"Zákányszék\";\"main\"\n\"3042652\";\"Zakanyszek\";\"ascii\"\n\"3042652\";\"Szegi Tanya\";\"other\"\n\"3042661\";\"Zagyvaszántó\";\"main\"\n\"3042661\";\"Zagyvaszanto\";\"ascii\"\n\"3042746\";\"Vonyarcvashegy\";\"main\"\n\"3042824\";\"Visegrád\";\"main\"\n\"3042824\";\"Visegrad\";\"ascii\"\n\"3042824\";\"Wyszehrad\";\"other\"\n\"3042871\";\"Villány\";\"main\"\n\"3042871\";\"Villany\";\"ascii\"\n\"3042929\";\"Veszprém\";\"main\"\n\"3042929\";\"Veszprem\";\"ascii\"\n\"3042929\";\"Comitatul Veszprem\";\"other\"\n\"3042929\";\"Comitatul Veszprém\";\"other\"\n\"3042929\";\"Gyulafiratot\";\"other\"\n\"3042929\";\"Gyulafirátót\";\"other\"\n\"3042929\";\"Kadarta\";\"other\"\n\"3042929\";\"Kádárta\";\"other\"\n\"3042929\";\"Vesprem\";\"other\"\n\"3042929\";\"Vesprém\";\"other\"\n\"3042929\";\"Vessprem\";\"other\"\n\"3042929\";\"Vessprém\";\"other\"\n\"3042929\";\"Veszprem megye\";\"other\"\n\"3042929\";\"Veszprim\";\"other\"\n\"3042929\";\"Veszprém megye\";\"other\"\n\"3042929\";\"wei si pu lei mu zhou\";\"other\"\n\"3042929\";\"Веспрем\";\"other\"\n\"3042929\";\"維斯普雷姆州\";\"other\"\n\"3042941\";\"Vértesszőlős\";\"main\"\n\"3042941\";\"Vertesszolos\";\"ascii\"\n\"3042941\";\"Vertesszollos\";\"other\"\n\"3042941\";\"Vértesszőllős\";\"other\"\n\"3042956\";\"Verőce\";\"main\"\n\"3042956\";\"Veroce\";\"ascii\"\n\"3042956\";\"Nogradveroce\";\"other\"\n\"3042956\";\"Nógrádverőce\";\"other\"\n\"3042968\";\"Veresegyház\";\"main\"\n\"3042968\";\"Veresegyhaz\";\"ascii\"\n\"3042977\";\"Vép\";\"main\"\n\"3042977\";\"Vep\";\"ascii\"\n\"3042977\";\"Weltendorf\";\"other\"\n\"3042977\";\"Wettendorf\";\"other\"\n\"3042998\";\"Velence\";\"main\"\n\"3043019\";\"Vecsés\";\"main\"\n\"3043019\";\"Vecses\";\"ascii\"\n\"3043033\";\"Vasvár\";\"main\"\n\"3043033\";\"Vasvar\";\"ascii\"\n\"3043033\";\"Eisenburg\";\"other\"\n\"3043033\";\"Kismakfa\";\"other\"\n\"3043033\";\"Kismákfa\";\"other\"\n\"3043033\";\"Nagymakfa\";\"other\"\n\"3043033\";\"Nagymákfa\";\"other\"\n\"3043048\";\"Vaskút\";\"main\"\n\"3043048\";\"Vaskut\";\"ascii\"\n\"3043095\";\"Várpalota\";\"main\"\n\"3043095\";\"Varpalota\";\"ascii\"\n\"3043111\";\"Városföld\";\"main\"\n\"3043111\";\"Varosfoeld\";\"ascii\"\n\"3043210\";\"Vámosgyörk\";\"main\"\n\"3043210\";\"Vamosgyork\";\"ascii\"\n\"3043217\";\"Valkó\";\"main\"\n\"3043217\";\"Valko\";\"ascii\"\n\"3043224\";\"Vál\";\"main\"\n\"3043224\";\"Val\";\"ascii\"\n\"3043233\";\"Vajszló\";\"main\"\n\"3043233\";\"Vajszlo\";\"ascii\"\n\"3043278\";\"Vácszentlászló\";\"main\"\n\"3043278\";\"Vacszentlaszlo\";\"ascii\"\n\"3043293\";\"Vác\";\"main\"\n\"3043293\";\"Vac\";\"ascii\"\n\"3043293\";\"Vacz\";\"other\"\n\"3043293\";\"Vácz\";\"other\"\n\"3043293\";\"Waitzen\";\"other\"\n\"3043317\";\"Üröm\";\"main\"\n\"3043317\";\"Urom\";\"ascii\"\n\"3043318\";\"Úrkút\";\"main\"\n\"3043318\";\"Urkut\";\"ascii\"\n\"3043321\";\"Úri\";\"main\"\n\"3043321\";\"Uri\";\"ascii\"\n\"3043356\";\"Üllő\";\"main\"\n\"3043356\";\"Ullo\";\"ascii\"\n\"3043358\";\"Üllés\";\"main\"\n\"3043358\";\"Ulles\";\"ascii\"\n\"3043358\";\"Arpad\";\"other\"\n\"3043358\";\"Árpád\";\"other\"\n\"3043448\";\"Újszilvás\";\"main\"\n\"3043448\";\"Ujszilvas\";\"ascii\"\n\"3043448\";\"Uj-major\";\"other\"\n\"3043448\";\"Új-major\";\"other\"\n\"3043581\";\"Újhartyán\";\"main\"\n\"3043581\";\"Ujhartyan\";\"ascii\"\n\"3043671\";\"Türje\";\"main\"\n\"3043671\";\"Turje\";\"ascii\"\n\"3043678\";\"Tura\";\"main\"\n\"3043758\";\"Törtel\";\"main\"\n\"3043758\";\"Tortel\";\"ascii\"\n\"3043778\";\"Törökbálint\";\"main\"\n\"3043778\";\"Toeroekbalint\";\"ascii\"\n\"3043778\";\"Grossturwall\";\"other\"\n\"3043778\";\"Großturwall\";\"other\"\n\"3043778\";\"Toeroek-balint\";\"other\"\n\"3043778\";\"Török-bálint\";\"other\"\n\"3043820\";\"Tompa\";\"main\"\n\"3043832\";\"Töltéstava\";\"main\"\n\"3043832\";\"Toltestava\";\"ascii\"\n\"3043849\";\"Tolna\";\"main\"\n\"3043849\";\"Tolma\";\"other\"\n\"3043860\";\"Tököl\";\"main\"\n\"3043860\";\"Toekoel\";\"ascii\"\n\"3043865\";\"Tokod\";\"main\"\n\"3043887\";\"Tóalmás\";\"main\"\n\"3043887\";\"Toalmas\";\"ascii\"\n\"3043927\";\"Tihany\";\"main\"\n\"3043946\";\"Tét\";\"main\"\n\"3043946\";\"Tet\";\"ascii\"\n\"3043984\";\"Tengelic\";\"main\"\n\"3044004\";\"Telki\";\"main\"\n\"3044062\";\"Tázlár\";\"main\"\n\"3044062\";\"Tazlar\";\"ascii\"\n\"3044062\";\"Pronayfalva\";\"other\"\n\"3044062\";\"Prónayfalva\";\"other\"\n\"3044082\";\"Tatabánya\";\"main\"\n\"3044082\";\"Tatabanya\";\"ascii\"\n\"3044082\";\"Tataban'ja\";\"other\"\n\"3044082\";\"Татабанья\";\"other\"\n\"3044083\";\"Tata\";\"main\"\n\"3044083\";\"Agostyan\";\"other\"\n\"3044083\";\"Tatatovaros\";\"other\"\n\"3044083\";\"Tatatóváros\";\"other\"\n\"3044083\";\"Ágostyán\";\"other\"\n\"3044084\";\"Tát\";\"main\"\n\"3044084\";\"Tat\";\"ascii\"\n\"3044088\";\"Taszár\";\"main\"\n\"3044088\";\"Taszar\";\"ascii\"\n\"3044088\";\"Tazar\";\"other\"\n\"3044093\";\"Tass\";\"main\"\n\"3044103\";\"Tárnok\";\"main\"\n\"3044103\";\"Tarnok\";\"ascii\"\n\"3044119\";\"Tarján\";\"main\"\n\"3044119\";\"Tarjan\";\"ascii\"\n\"3044122\";\"Tardos\";\"main\"\n\"3044122\";\"Tardosbanya\";\"other\"\n\"3044122\";\"Tardosbánya\";\"other\"\n\"3044131\";\"Tar\";\"main\"\n\"3044141\";\"Tapolca\";\"main\"\n\"3044141\";\"Tapolcza\";\"other\"\n\"3044141\";\"Tapolezai\";\"other\"\n\"3044144\";\"Táplánszentkereszt\";\"main\"\n\"3044144\";\"Taplanszentkereszt\";\"ascii\"\n\"3044147\";\"Tápiószőlős\";\"main\"\n\"3044147\";\"Tapioszolos\";\"ascii\"\n\"3044147\";\"Halesz\";\"other\"\n\"3044147\";\"Tapiohalesz\";\"other\"\n\"3044147\";\"Tapioszollos\";\"other\"\n\"3044147\";\"Tápióhalesz\";\"other\"\n\"3044147\";\"Tápiószőllős\";\"other\"\n\"3044149\";\"Tápiószentmárton\";\"main\"\n\"3044149\";\"Tapioszentmarton\";\"ascii\"\n\"3044151\";\"Tápiószele\";\"main\"\n\"3044151\";\"Tapioszele\";\"ascii\"\n\"3044153\";\"Tápiószecső\";\"main\"\n\"3044153\";\"Tapioszecso\";\"ascii\"\n\"3044154\";\"Sülysáp\";\"main\"\n\"3044154\";\"Suelysap\";\"ascii\"\n\"3044154\";\"Tapiosap\";\"other\"\n\"3044154\";\"Tapiosuely\";\"other\"\n\"3044154\";\"Tápiósáp\";\"other\"\n\"3044154\";\"Tápiósüly\";\"other\"\n\"3044156\";\"Tápióság\";\"main\"\n\"3044156\";\"Tapiosag\";\"ascii\"\n\"3044160\";\"Tápiógyörgye\";\"main\"\n\"3044160\";\"Tapiogyorgye\";\"ascii\"\n\"3044161\";\"Tápióbicske\";\"main\"\n\"3044161\";\"Tapiobicske\";\"ascii\"\n\"3044171\";\"Tamási\";\"main\"\n\"3044171\";\"Tamasi\";\"ascii\"\n\"3044171\";\"Pari\";\"other\"\n\"3044171\";\"Pári\";\"other\"\n\"3044181\";\"Taksony\";\"main\"\n\"3044191\";\"Tahitótfalu\";\"main\"\n\"3044191\";\"Tahitotfalu\";\"ascii\"\n\"3044211\";\"Táborfalva\";\"main\"\n\"3044211\";\"Taborfalva\";\"ascii\"\n\"3044211\";\"Lotertabor\";\"other\"\n\"3044211\";\"Lőtértábor\";\"other\"\n\"3044221\";\"Tab\";\"main\"\n\"3044227\";\"Szurdokpüspöki\";\"main\"\n\"3044227\";\"Szurdokpuspoki\";\"ascii\"\n\"3044305\";\"Szomód\";\"main\"\n\"3044305\";\"Szomod\";\"ascii\"\n\"3044310\";\"Szombathely\";\"main\"\n\"3044310\";\"Gyongyosherman\";\"other\"\n\"3044310\";\"Gyöngyöshermán\";\"other\"\n\"3044310\";\"Hereny\";\"other\"\n\"3044310\";\"Herény\";\"other\"\n\"3044310\";\"Kamon\";\"other\"\n\"3044310\";\"Kámon\";\"other\"\n\"3044310\";\"Olad\";\"other\"\n\"3044310\";\"Perint\";\"other\"\n\"3044310\";\"Sabaria\";\"other\"\n\"3044310\";\"Savaria\";\"other\"\n\"3044310\";\"Sombatkhej\";\"other\"\n\"3044310\";\"Steinamanger\";\"other\"\n\"3044310\";\"Szentkiraly\";\"other\"\n\"3044310\";\"Szentkirály\";\"other\"\n\"3044310\";\"Szombatehly\";\"other\"\n\"3044310\";\"Szombatnely\";\"other\"\n\"3044310\";\"Zanat\";\"other\"\n\"3044310\";\"sonbatohei\";\"other\"\n\"3044310\";\"Сомбатхей\";\"other\"\n\"3044310\";\"ソンバトヘイ\";\"other\"\n\"3044370\";\"Sződliget\";\"main\"\n\"3044370\";\"Szodliget\";\"ascii\"\n\"3044371\";\"Sződ\";\"main\"\n\"3044371\";\"Szod\";\"ascii\"\n\"3044380\";\"Szob\";\"main\"\n\"3044469\";\"Szigetvár\";\"main\"\n\"3044469\";\"Szigetvar\";\"ascii\"\n\"3044470\";\"Szigetújfalu\";\"main\"\n\"3044470\";\"Szigetujfalu\";\"ascii\"\n\"3044475\";\"Szigetszentmiklós\";\"main\"\n\"3044475\";\"Szigetszentmiklos\";\"ascii\"\n\"3044475\";\"Sigetsentmiklosh\";\"other\"\n\"3044475\";\"Szigentmiklos\";\"other\"\n\"3044475\";\"Szigetsentmiklos\";\"other\"\n\"3044475\";\"Сигетсентмиклош\";\"other\"\n\"3044487\";\"Szigethalom\";\"main\"\n\"3044487\";\"Horthyliget\";\"other\"\n\"3044487\";\"Szilagyitelep\";\"other\"\n\"3044487\";\"Szilágyitelep\";\"other\"\n\"3044492\";\"Szigetcsép\";\"main\"\n\"3044492\";\"Szigetcsep\";\"ascii\"\n\"3044567\";\"Szentmártonkáta\";\"main\"\n\"3044567\";\"Szentmartonkata\";\"ascii\"\n\"3044574\";\"Szentlőrinckáta\";\"main\"\n\"3044574\";\"Szentlorinckata\";\"ascii\"\n\"3044575\";\"Szentlőrinc\";\"main\"\n\"3044575\";\"Szentlorinc\";\"ascii\"\n\"3044600\";\"Szentkirályszabadja\";\"main\"\n\"3044600\";\"Szentkiralyszabadja\";\"ascii\"\n\"3044607\";\"Szentkirály\";\"main\"\n\"3044607\";\"Szentkiraly\";\"ascii\"\n\"3044607\";\"Laszlofalva\";\"other\"\n\"3044607\";\"Lászlófalva\";\"other\"\n\"3044607\";\"Nep Iskola\";\"other\"\n\"3044607\";\"Nép Iskola\";\"other\"\n\"3044669\";\"Szentgotthárd\";\"main\"\n\"3044669\";\"Szentgotthard\";\"ascii\"\n\"3044669\";\"Farkasfa\";\"other\"\n\"3044669\";\"Jakabhaza\";\"other\"\n\"3044669\";\"Jakabháza\";\"other\"\n\"3044669\";\"Mariaujfalu\";\"other\"\n\"3044669\";\"Máriaújfalu\";\"other\"\n\"3044669\";\"Rabafuzes\";\"other\"\n\"3044669\";\"Rabakethely\";\"other\"\n\"3044669\";\"Rabakisfalud\";\"other\"\n\"3044669\";\"Rabatotfalu\";\"other\"\n\"3044669\";\"Rábafüzes\";\"other\"\n\"3044669\";\"Rábakethely\";\"other\"\n\"3044669\";\"Rábakisfalud\";\"other\"\n\"3044669\";\"Rábatótfalu\";\"other\"\n\"3044669\";\"Sankt Gotthard\";\"other\"\n\"3044669\";\"Talapatka\";\"other\"\n\"3044669\";\"Zsida\";\"other\"\n\"3044671\";\"Szentgálpuszta\";\"main\"\n\"3044671\";\"Szentgalpuszta\";\"ascii\"\n\"3044671\";\"Szentgal\";\"other\"\n\"3044671\";\"Szentgál\";\"other\"\n\"3044681\";\"Szentendre\";\"main\"\n\"3044681\";\"Sankt Andrae\";\"other\"\n\"3044681\";\"Sankt Andrä\";\"other\"\n\"3044681\";\"Sentendre\";\"other\"\n\"3044681\";\"Сентендре\";\"other\"\n\"3044760\";\"Szekszárd\";\"main\"\n\"3044760\";\"Szekszard\";\"ascii\"\n\"3044760\";\"Seksar\";\"other\"\n\"3044760\";\"Seksard\";\"other\"\n\"3044760\";\"Сексард\";\"other\"\n\"3044774\";\"Székesfehérvár\";\"main\"\n\"3044774\";\"Szekesfehervar\";\"ascii\"\n\"3044774\";\"Alba Regia\";\"other\"\n\"3044774\";\"Albareale\";\"other\"\n\"3044774\";\"Sekeshfekhervar\";\"other\"\n\"3044774\";\"Stuhlweissenburg\";\"other\"\n\"3044774\";\"Stuhlweißenburg\";\"other\"\n\"3044774\";\"sai ke shen bai bao\";\"other\"\n\"3044774\";\"sekeshufeheruvu~aru\";\"other\"\n\"3044774\";\"Секешфехервар\";\"other\"\n\"3044774\";\"セーケシュフェヘールヴァール\";\"other\"\n\"3044774\";\"塞克什白堡\";\"other\"\n\"3044800\";\"Szedres\";\"main\"\n\"3044809\";\"Szécsény\";\"main\"\n\"3044809\";\"Szecseny\";\"ascii\"\n\"3044809\";\"Szecheny\";\"other\"\n\"3044809\";\"Széchény\";\"other\"\n\"3044809\";\"schan\";\"other\"\n\"3044809\";\"سچان\";\"other\"\n\"3044821\";\"Százhalombatta\";\"main\"\n\"3044821\";\"Szazhalombatta\";\"ascii\"\n\"3044835\";\"Szászvár\";\"main\"\n\"3044835\";\"Szaszvar\";\"ascii\"\n\"3044835\";\"Mazaszaszvar\";\"other\"\n\"3044835\";\"Mázaszászvár\";\"other\"\n\"3044861\";\"Szárliget\";\"main\"\n\"3044861\";\"Szarliget\";\"ascii\"\n\"3044861\";\"Ujszar\";\"other\"\n\"3044861\";\"Újszár\";\"other\"\n\"3044909\";\"Szany\";\"main\"\n\"3044916\";\"Szank\";\"main\"\n\"3044941\";\"Szalkszentmárton\";\"main\"\n\"3044941\";\"Szalkszentmarton\";\"ascii\"\n\"3044990\";\"Szada\";\"main\"\n\"3045017\";\"Szabadszállás\";\"main\"\n\"3045017\";\"Szabadszallas\";\"ascii\"\n\"3045039\";\"Szabadbattyán\";\"main\"\n\"3045039\";\"Szabadbattyan\";\"ascii\"\n\"3045045\";\"Süttő\";\"main\"\n\"3045045\";\"Sutto\";\"ascii\"\n\"3045070\";\"Sümeg\";\"main\"\n\"3045070\";\"Sumeg\";\"ascii\"\n\"3045070\";\"Shjumeg\";\"other\"\n\"3045070\";\"Шюмег\";\"other\"\n\"3045076\";\"Sükösd\";\"main\"\n\"3045076\";\"Sukosd\";\"ascii\"\n\"3045144\";\"Sóskút\";\"main\"\n\"3045144\";\"Soskut\";\"ascii\"\n\"3045190\";\"Sopron\";\"main\"\n\"3045190\";\"OEdenburg\";\"other\"\n\"3045190\";\"Scarabantia\";\"other\"\n\"3045190\";\"Scarbantia\";\"other\"\n\"3045190\";\"Shopron\";\"other\"\n\"3045190\";\"Szorpron\";\"other\"\n\"3045190\";\"shopuron\";\"other\"\n\"3045190\";\"swprwn\";\"other\"\n\"3045190\";\"syopeulon\";\"other\"\n\"3045190\";\"Ödenburg\";\"other\"\n\"3045190\";\"Шопрон\";\"other\"\n\"3045190\";\"שופרון\";\"other\"\n\"3045190\";\"ショプロン\";\"other\"\n\"3045190\";\"쇼프론\";\"other\"\n\"3045192\";\"Soponya\";\"main\"\n\"3045192\";\"Nagylang\";\"other\"\n\"3045192\";\"Nagyláng\";\"other\"\n\"3045201\";\"Somoskőújfalu\";\"main\"\n\"3045201\";\"Somoskoujfalu\";\"ascii\"\n\"3045212\";\"Somogyvár\";\"main\"\n\"3045212\";\"Somogyvar\";\"ascii\"\n\"3045294\";\"Solymár\";\"main\"\n\"3045294\";\"Solymar\";\"ascii\"\n\"3045298\";\"Soltvadkert\";\"main\"\n\"3045303\";\"Solt\";\"main\"\n\"3045332\";\"Siófok\";\"main\"\n\"3045332\";\"Siofok\";\"ascii\"\n\"3045332\";\"Balatonkiliti\";\"other\"\n\"3045332\";\"Balatonujhely\";\"other\"\n\"3045332\";\"Balatonújhely\";\"other\"\n\"3045332\";\"Shiofok\";\"other\"\n\"3045332\";\"shiofoku\";\"other\"\n\"3045332\";\"Шиофок\";\"other\"\n\"3045332\";\"シオーフォク\";\"other\"\n\"3045341\";\"Simontornya\";\"main\"\n\"3045364\";\"Siklós\";\"main\"\n\"3045364\";\"Siklos\";\"ascii\"\n\"3045364\";\"Mariagyud\";\"other\"\n\"3045364\";\"Máriagyůd\";\"other\"\n\"3045364\";\"Shiklosh\";\"other\"\n\"3045364\";\"sqlws\";\"other\"\n\"3045364\";\"Шиклош\";\"other\"\n\"3045364\";\"سقلوس\";\"other\"\n\"3045386\";\"Seregélyes\";\"main\"\n\"3045386\";\"Seregelyes\";\"ascii\"\n\"3045406\";\"Sellye\";\"main\"\n\"3045411\";\"Segesd\";\"main\"\n\"3045411\";\"Alsosegesd\";\"other\"\n\"3045411\";\"Alsósegesd\";\"other\"\n\"3045411\";\"Felsosegesd\";\"other\"\n\"3045411\";\"Felsősegesd\";\"other\"\n\"3045479\";\"Sásd\";\"main\"\n\"3045479\";\"Sasd\";\"ascii\"\n\"3045487\";\"Sárvár\";\"main\"\n\"3045487\";\"Sarvar\";\"ascii\"\n\"3045487\";\"Savar\";\"other\"\n\"3045493\";\"Sárszentmihály\";\"main\"\n\"3045493\";\"Sarszentmihaly\";\"ascii\"\n\"3045512\";\"Sárosd\";\"main\"\n\"3045512\";\"Sarosd\";\"ascii\"\n\"3045520\";\"Sármellék\";\"main\"\n\"3045520\";\"Sarmellek\";\"ascii\"\n\"3045520\";\"Egenfold\";\"other\"\n\"3045520\";\"Égenföld\";\"other\"\n\"3045530\";\"Sárkeresztúr\";\"main\"\n\"3045530\";\"Sarkeresztur\";\"ascii\"\n\"3045542\";\"Sárisáp\";\"main\"\n\"3045542\";\"Sarisap\";\"ascii\"\n\"3045564\";\"Sárbogárd\";\"main\"\n\"3045564\";\"Sarbogard\";\"ascii\"\n\"3045564\";\"Pusztaegres\";\"other\"\n\"3045564\";\"Sarszentmiklos\";\"other\"\n\"3045564\";\"Sárszentmiklós\";\"other\"\n\"3045643\";\"Salgótarján\";\"main\"\n\"3045643\";\"Salgotarjan\";\"ascii\"\n\"3045643\";\"Baglyasalja\";\"other\"\n\"3045643\";\"Shal'gotar'jan\";\"other\"\n\"3045643\";\"Shalgo Tar'yan\";\"other\"\n\"3045643\";\"Zagyvapalfalva\";\"other\"\n\"3045643\";\"Zagyvapálfalva\";\"other\"\n\"3045643\";\"Шальготарьян\";\"other\"\n\"3045688\";\"Ruzsa\";\"main\"\n\"3045704\";\"Rózsaszentmárton\";\"main\"\n\"3045704\";\"Rozsaszentmarton\";\"ascii\"\n\"3045758\";\"Romhány\";\"main\"\n\"3045758\";\"Romhany\";\"ascii\"\n\"3045804\";\"Rimóc\";\"main\"\n\"3045804\";\"Rimoc\";\"ascii\"\n\"3045836\";\"Révfülöp\";\"main\"\n\"3045836\";\"Revfueloep\";\"ascii\"\n\"3045836\";\"Revfjulep\";\"other\"\n\"3045836\";\"Ревфюлеп\";\"other\"\n\"3045846\";\"Rétság\";\"main\"\n\"3045846\";\"Retsag\";\"ascii\"\n\"3045884\";\"Répcelak\";\"main\"\n\"3045884\";\"Repcelak\";\"ascii\"\n\"3045991\";\"Rajka\";\"main\"\n\"3046026\";\"Ráckeve\";\"main\"\n\"3046026\";\"Rackeve\";\"ascii\"\n\"3046027\";\"Ráckeresztúr\";\"main\"\n\"3046027\";\"Rackeresztur\";\"ascii\"\n\"3046036\";\"Rácalmás\";\"main\"\n\"3046036\";\"Racalmas\";\"ascii\"\n\"3046036\";\"Raczalmas\";\"other\"\n\"3046036\";\"Ráczalmas\";\"other\"\n\"3046056\";\"Rábapatona\";\"main\"\n\"3046056\";\"Rabapatona\";\"ascii\"\n\"3046073\";\"Pusztavám\";\"main\"\n\"3046073\";\"Pusztavam\";\"ascii\"\n\"3046076\";\"Pusztaszer\";\"main\"\n\"3046087\";\"Pusztaszabolcs\";\"main\"\n\"3046230\";\"Pomáz\";\"main\"\n\"3046230\";\"Pomaz\";\"ascii\"\n\"3046249\";\"Polgárdi\";\"main\"\n\"3046249\";\"Polgardi\";\"ascii\"\n\"3046336\";\"Pincehely\";\"main\"\n\"3046340\";\"Pilisvörösvár\";\"main\"\n\"3046340\";\"Pilisvorosvar\";\"ascii\"\n\"3046343\";\"Pilisszentkereszt\";\"main\"\n\"3046343\";\"Pilisszenkereszt\";\"other\"\n\"3046344\";\"Pilisszentiván\";\"main\"\n\"3046344\";\"Pilisszentivan\";\"ascii\"\n\"3046345\";\"Pilisszántó\";\"main\"\n\"3046345\";\"Pilisszanto\";\"ascii\"\n\"3046346\";\"Pilismarót\";\"main\"\n\"3046346\";\"Pilismarot\";\"ascii\"\n\"3046349\";\"Piliscsév\";\"main\"\n\"3046349\";\"Piliscsev\";\"ascii\"\n\"3046349\";\"Csev\";\"other\"\n\"3046349\";\"Csév\";\"other\"\n\"3046353\";\"Piliscsaba\";\"main\"\n\"3046353\";\"Klotildliget\";\"other\"\n\"3046353\";\"Klotildtelep\";\"other\"\n\"3046353\";\"Pilisliget\";\"other\"\n\"3046354\";\"Pilisborosjenő\";\"main\"\n\"3046354\";\"Pilisborosjeno\";\"ascii\"\n\"3046355\";\"Pilis\";\"main\"\n\"3046387\";\"Petőfibánya\";\"main\"\n\"3046387\";\"Petofibanya\";\"ascii\"\n\"3046387\";\"Petofi Banyatelep\";\"other\"\n\"3046387\";\"Petőfi Bányatelep\";\"other\"\n\"3046396\";\"Pétfürdő\";\"main\"\n\"3046396\";\"Petfuerdo\";\"ascii\"\n\"3046409\";\"Péteri\";\"main\"\n\"3046409\";\"Peteri\";\"ascii\"\n\"3046456\";\"Perkáta\";\"main\"\n\"3046456\";\"Perkata\";\"ascii\"\n\"3046456\";\"Nagy-Perkata\";\"other\"\n\"3046456\";\"Nagy-Perkáta\";\"other\"\n\"3046487\";\"Perbál\";\"main\"\n\"3046487\";\"Perbal\";\"ascii\"\n\"3046488\";\"Pér\";\"main\"\n\"3046488\";\"Per\";\"ascii\"\n\"3046499\";\"Pellérd\";\"main\"\n\"3046499\";\"Pellerd\";\"ascii\"\n\"3046505\";\"Pécsvárad\";\"main\"\n\"3046505\";\"Pecsvarad\";\"ascii\"\n\"3046526\";\"Pécs\";\"main\"\n\"3046526\";\"Pecs\";\"ascii\"\n\"3046526\";\"Cinquechiese\";\"other\"\n\"3046526\";\"Fuenfkirchen\";\"other\"\n\"3046526\";\"Funfkirchen\";\"other\"\n\"3046526\";\"Fünfkirchen\";\"other\"\n\"3046526\";\"Hird\";\"other\"\n\"3046526\";\"Magyarurugy\";\"other\"\n\"3046526\";\"Magyarürügy\";\"other\"\n\"3046526\";\"Malom\";\"other\"\n\"3046526\";\"Meced Sabolc\";\"other\"\n\"3046526\";\"Mecek Sabolc\";\"other\"\n\"3046526\";\"Mecsekalja\";\"other\"\n\"3046526\";\"Mecsekszabolcs\";\"other\"\n\"3046526\";\"Málom\";\"other\"\n\"3046526\";\"Nadapipad\";\"other\"\n\"3046526\";\"Nadarpad\";\"other\"\n\"3046526\";\"Nagyarpad\";\"other\"\n\"3046526\";\"Nagyárpád\";\"other\"\n\"3046526\";\"Paetkostolie\";\"other\"\n\"3046526\";\"Patacs\";\"other\"\n\"3046526\";\"Peca\";\"other\"\n\"3046526\";\"Pech\";\"other\"\n\"3046526\";\"Pecuh\";\"other\"\n\"3046526\";\"Pecuy-\";\"other\"\n\"3046526\";\"Pecz\";\"other\"\n\"3046526\";\"Peçuy-\";\"other\"\n\"3046526\";\"Pečuh\";\"other\"\n\"3046526\";\"Päťkostolie\";\"other\"\n\"3046526\";\"Pēča\";\"other\"\n\"3046526\";\"Quinque Ecclesiae\";\"other\"\n\"3046526\";\"Racvaros\";\"other\"\n\"3046526\";\"Rácváros\";\"other\"\n\"3046526\";\"Somogy\";\"other\"\n\"3046526\";\"Vasas\";\"other\"\n\"3046526\";\"pechi\";\"other\"\n\"3046526\";\"Печ\";\"other\"\n\"3046526\";\"ペーチ\";\"other\"\n\"3046531\";\"Pécel\";\"main\"\n\"3046531\";\"Pecel\";\"ascii\"\n\"3046537\";\"Pázmánd\";\"main\"\n\"3046537\";\"Pazmand\";\"ascii\"\n\"3046546\";\"Páty\";\"main\"\n\"3046546\";\"Paty\";\"ascii\"\n\"3046580\";\"Pásztó\";\"main\"\n\"3046580\";\"Paszto\";\"ascii\"\n\"3046580\";\"Hasznos\";\"other\"\n\"3046619\";\"Parádsasvár\";\"main\"\n\"3046619\";\"Paradsasvar\";\"ascii\"\n\"3046619\";\"Paradshashvar\";\"other\"\n\"3046619\";\"Ureghuta\";\"other\"\n\"3046619\";\"Uveghuta\";\"other\"\n\"3046619\";\"Üreghuta\";\"other\"\n\"3046619\";\"Üveghuta\";\"other\"\n\"3046619\";\"Парадшашвар\";\"other\"\n\"3046686\";\"Pápa\";\"main\"\n\"3046686\";\"Papa\";\"ascii\"\n\"3046686\";\"Borsosgyor\";\"other\"\n\"3046686\";\"Borsosgyőr\";\"other\"\n\"3046686\";\"Kettornyulak\";\"other\"\n\"3046686\";\"Kéttornyúlak\";\"other\"\n\"3046686\";\"Papy\";\"other\"\n\"3046686\";\"Tapolcafo\";\"other\"\n\"3046686\";\"Tapolcafő\";\"other\"\n\"3046686\";\"Папы\";\"other\"\n\"3046693\";\"Pannonhalma\";\"main\"\n\"3046693\";\"Gyorszentmarton\";\"other\"\n\"3046693\";\"Győrszentmárton\";\"other\"\n\"3046693\";\"Martinsberg\";\"other\"\n\"3046693\";\"Panonsky vrch\";\"other\"\n\"3046693\";\"Panónsky vrch\";\"other\"\n\"3046693\";\"Rabsky Svaety Martin\";\"other\"\n\"3046693\";\"Rábsky Svätý Martin\";\"other\"\n\"3046693\";\"Sankt Martinsberg\";\"other\"\n\"3046700\";\"Pánd\";\"main\"\n\"3046700\";\"Pand\";\"ascii\"\n\"3046711\";\"Palotás\";\"main\"\n\"3046711\";\"Palotas\";\"ascii\"\n\"3046719\";\"Pálmonostora\";\"main\"\n\"3046719\";\"Palmonostora\";\"ascii\"\n\"3046768\";\"Paks\";\"main\"\n\"3046768\";\"Dunakomlod\";\"other\"\n\"3046768\";\"Dunakömlőd\";\"other\"\n\"3046769\";\"Pákozd\";\"main\"\n\"3046769\";\"Pakozd\";\"ascii\"\n\"3046800\";\"Pacsa\";\"main\"\n\"3046800\";\"Pacsatuttos\";\"other\"\n\"3046800\";\"Pacsatüttös\";\"other\"\n\"3046806\";\"Ozora\";\"main\"\n\"3046806\";\"Ozors\";\"other\"\n\"3046825\";\"Öttevény\";\"main\"\n\"3046825\";\"Otteveny\";\"ascii\"\n\"3046856\";\"Ősi\";\"main\"\n\"3046856\";\"Osi\";\"ascii\"\n\"3046888\";\"Oroszlány\";\"main\"\n\"3046888\";\"Oroszlany\";\"ascii\"\n\"3046888\";\"Oroslane\";\"other\"\n\"3046888\";\"Орослане\";\"other\"\n\"3046916\";\"Örkény\";\"main\"\n\"3046916\";\"Orkeny\";\"ascii\"\n\"3046940\";\"Orgovány\";\"main\"\n\"3046940\";\"Orgovany\";\"ascii\"\n\"3047127\";\"Őrbottyán\";\"main\"\n\"3047127\";\"Orbottyan\";\"ascii\"\n\"3047127\";\"Orszentmiklos\";\"other\"\n\"3047127\";\"Vacbottyan\";\"other\"\n\"3047127\";\"Vácbottyán\";\"other\"\n\"3047127\";\"Őrszentmiklós\";\"other\"\n\"3047201\";\"Őcsény\";\"main\"\n\"3047201\";\"Ocseny\";\"ascii\"\n\"3047206\";\"Ócsa\";\"main\"\n\"3047206\";\"Ocsa\";\"ascii\"\n\"3047206\";\"Osca\";\"other\"\n\"3047229\";\"Nyúl\";\"main\"\n\"3047229\";\"Nyul\";\"ascii\"\n\"3047282\";\"Nyergesújfalu\";\"main\"\n\"3047282\";\"Nyergesujfalu\";\"ascii\"\n\"3047282\";\"Sattelneudorf\";\"other\"\n\"3047309\";\"Nyárlőrinc\";\"main\"\n\"3047309\";\"Nyarlorinc\";\"ascii\"\n\"3047316\";\"Nyáregyháza\";\"main\"\n\"3047316\";\"Nyaregyhaza\";\"ascii\"\n\"3047364\";\"Neszmély\";\"main\"\n\"3047364\";\"Neszmely\";\"ascii\"\n\"3047364\";\"Almasneszmely\";\"other\"\n\"3047364\";\"Almásneszmély\";\"other\"\n\"3047373\";\"Németkér\";\"main\"\n\"3047373\";\"Nemetker\";\"ascii\"\n\"3047386\";\"Nemesvámos\";\"main\"\n\"3047386\";\"Nemesvamos\";\"ascii\"\n\"3047399\";\"Nemesnádudvar\";\"main\"\n\"3047399\";\"Nemesnadudvar\";\"ascii\"\n\"3047443\";\"Naszály\";\"main\"\n\"3047443\";\"Naszaly\";\"ascii\"\n\"3047474\";\"dunaújváros\";\"main\"\n\"3047474\";\"dunaujvaros\";\"ascii\"\n\"3047509\";\"Nagytarcsa\";\"main\"\n\"3047574\";\"Nagyréde\";\"main\"\n\"3047574\";\"Nagyrede\";\"ascii\"\n\"3047606\";\"Nagyoroszi\";\"main\"\n\"3047619\";\"Nagymaros\";\"main\"\n\"3047622\";\"Nagymányok\";\"main\"\n\"3047622\";\"Nagymanyok\";\"ascii\"\n\"3047646\";\"Nagykovácsi\";\"main\"\n\"3047646\";\"Nagykovacsi\";\"ascii\"\n\"3047646\";\"Nagykovacsi Part\";\"other\"\n\"3047646\";\"Nagykovácsi Part\";\"other\"\n\"3047651\";\"Nagykőrös\";\"main\"\n\"3047651\";\"Nagykoros\";\"ascii\"\n\"3047669\";\"Nagykáta\";\"main\"\n\"3047669\";\"Nagykata\";\"ascii\"\n\"3047679\";\"Nagykanizsa\";\"main\"\n\"3047679\";\"Bagola\";\"other\"\n\"3047679\";\"Bagolasanc\";\"other\"\n\"3047679\";\"Bagolasánc\";\"other\"\n\"3047679\";\"Bajcsa\";\"other\"\n\"3047679\";\"Gross Kanischa\";\"other\"\n\"3047679\";\"Grosz Kanischa\";\"other\"\n\"3047679\";\"Kanije\";\"other\"\n\"3047679\";\"Korpavar\";\"other\"\n\"3047679\";\"Korpavár\";\"other\"\n\"3047679\";\"Miklosfa\";\"other\"\n\"3047679\";\"Miklósfa\";\"other\"\n\"3047679\";\"Nadkanizha\";\"other\"\n\"3047679\";\"Somogyszentmiklos\";\"other\"\n\"3047679\";\"Somogyszentmiklós\";\"other\"\n\"3047679\";\"qnyzhh\";\"other\"\n\"3047679\";\"Надканижа\";\"other\"\n\"3047679\";\"قنیژه\";\"other\"\n\"3047689\";\"Nagyigmánd\";\"main\"\n\"3047689\";\"Nagyigmand\";\"ascii\"\n\"3047765\";\"Nagydorog\";\"main\"\n\"3047781\";\"Nagycenk\";\"main\"\n\"3047781\";\"Gross-Zinkendorf\";\"other\"\n\"3047781\";\"Groß-Zinkendorf\";\"other\"\n\"3047781\";\"Nad'cenk\";\"other\"\n\"3047781\";\"Надьценк\";\"other\"\n\"3047804\";\"Nagybaracska\";\"main\"\n\"3047811\";\"Nagybajom\";\"main\"\n\"3047819\";\"Nagyatád\";\"main\"\n\"3047819\";\"Nagyatad\";\"ascii\"\n\"3047819\";\"Bodvica\";\"other\"\n\"3047819\";\"Henesz\";\"other\"\n\"3047819\";\"Henész\";\"other\"\n\"3047819\";\"Kivadar\";\"other\"\n\"3047819\";\"Kivadár\";\"other\"\n\"3047871\";\"Murakeresztúr\";\"main\"\n\"3047871\";\"Murakeresztur\";\"ascii\"\n\"3047896\";\"Mosonmagyaróvár\";\"main\"\n\"3047896\";\"Mosonmagyarovar\";\"ascii\"\n\"3047896\";\"Altenburg\";\"other\"\n\"3047896\";\"Magyarovar\";\"other\"\n\"3047896\";\"Magyaróvár\";\"other\"\n\"3047896\";\"Moshonmad'jarovar\";\"other\"\n\"3047896\";\"Moson\";\"other\"\n\"3047896\";\"Ungarisch Altenburg\";\"other\"\n\"3047896\";\"Wieselburg\";\"other\"\n\"3047896\";\"moshonmajaruovu~aru\";\"other\"\n\"3047896\";\"Мошонмадьяровар\";\"other\"\n\"3047896\";\"モションマジャルオーヴァール\";\"other\"\n\"3047922\";\"Mórahalom\";\"main\"\n\"3047922\";\"Morahalom\";\"ascii\"\n\"3047922\";\"Alsokozpont\";\"other\"\n\"3047922\";\"Alsóközpont\";\"other\"\n\"3047927\";\"Mór\";\"main\"\n\"3047927\";\"Mor\";\"ascii\"\n\"3047942\";\"Monor\";\"main\"\n\"3047967\";\"Mohács\";\"main\"\n\"3047967\";\"Mohacs\";\"ascii\"\n\"3047967\";\"Mohac\";\"other\"\n\"3047967\";\"Mohacz\";\"other\"\n\"3047967\";\"Mohač\";\"other\"\n\"3047967\";\"Mokhach\";\"other\"\n\"3047967\";\"Мохач\";\"other\"\n\"3047986\";\"Mogyoród\";\"main\"\n\"3047986\";\"Mogyorod\";\"ascii\"\n\"3048005\";\"Mocsa\";\"main\"\n\"3048080\";\"Mihályi\";\"main\"\n\"3048080\";\"Mihalyi\";\"ascii\"\n\"3048080\";\"Kisfalud\";\"other\"\n\"3048094\";\"Mezőszilas\";\"main\"\n\"3048094\";\"Mezoszilas\";\"ascii\"\n\"3048094\";\"Szilas-Balhas\";\"other\"\n\"3048094\";\"Szilas-Balhás\";\"other\"\n\"3048107\";\"Mezőfalva\";\"main\"\n\"3048107\";\"Mezofalva\";\"ascii\"\n\"3048107\";\"Hercegfalva\";\"other\"\n\"3048186\";\"Mende\";\"main\"\n\"3048194\";\"Mélykút\";\"main\"\n\"3048194\";\"Melykut\";\"ascii\"\n\"3048250\";\"Mecseknádasd\";\"main\"\n\"3048250\";\"Mecseknadasd\";\"ascii\"\n\"3048250\";\"Puspoknadasd\";\"other\"\n\"3048250\";\"Püspöknádasd\";\"other\"\n\"3048281\";\"Mátraverebély\";\"main\"\n\"3048281\";\"Matraverebely\";\"ascii\"\n\"3048282\";\"Mátraterenye\";\"main\"\n\"3048282\";\"Matraterenye\";\"ascii\"\n\"3048282\";\"Homokterenye\";\"other\"\n\"3048282\";\"Nadujfalu\";\"other\"\n\"3048282\";\"Nádújfalu\";\"other\"\n\"3048291\";\"Mátranovák\";\"main\"\n\"3048291\";\"Matranovak\";\"ascii\"\n\"3048291\";\"Matraterenye\";\"other\"\n\"3048291\";\"Mátraterenye\";\"other\"\n\"3048326\";\"Martonvásár\";\"main\"\n\"3048326\";\"Martonvasar\";\"ascii\"\n\"3048456\";\"Marcali\";\"main\"\n\"3048464\";\"Mány\";\"main\"\n\"3048464\";\"Many\";\"ascii\"\n\"3048627\";\"Mágocs\";\"main\"\n\"3048627\";\"Magocs\";\"ascii\"\n\"3048630\";\"Maglód\";\"main\"\n\"3048630\";\"Maglod\";\"ascii\"\n\"3048647\";\"Madocsa\";\"main\"\n\"3048657\";\"Madaras\";\"main\"\n\"3048713\";\"Lovasberény\";\"main\"\n\"3048713\";\"Lovasbereny\";\"ascii\"\n\"3048725\";\"Lőrinci\";\"main\"\n\"3048725\";\"Lorinci\";\"ascii\"\n\"3048762\";\"Litér\";\"main\"\n\"3048762\";\"Liter\";\"ascii\"\n\"3048820\";\"Letenye\";\"main\"\n\"3048835\";\"Lepsény\";\"main\"\n\"3048835\";\"Lepseny\";\"ascii\"\n\"3048835\";\"Lapseny\";\"other\"\n\"3048847\";\"Lenti\";\"main\"\n\"3048847\";\"Barhely\";\"other\"\n\"3048847\";\"Barszentmihalyfa\";\"other\"\n\"3048847\";\"Bárhely\";\"other\"\n\"3048847\";\"Bárszentmihályfa\";\"other\"\n\"3048847\";\"Kerkaszentmihaly\";\"other\"\n\"3048847\";\"Kerkaszentmihály\";\"other\"\n\"3048847\";\"Lentikapolna\";\"other\"\n\"3048847\";\"Lentikápolna\";\"other\"\n\"3048847\";\"Lentiszombathely\";\"other\"\n\"3048847\";\"Mahomfa\";\"other\"\n\"3048847\";\"Mumor\";\"other\"\n\"3048847\";\"Máhomfa\";\"other\"\n\"3048852\";\"Lengyeltóti\";\"main\"\n\"3048852\";\"Lengyeltoti\";\"ascii\"\n\"3048888\";\"Lébény\";\"main\"\n\"3048888\";\"Lebeny\";\"ascii\"\n\"3048895\";\"Leányfalu\";\"main\"\n\"3048895\";\"Leanyfalu\";\"ascii\"\n\"3048963\";\"Lánycsók\";\"main\"\n\"3048963\";\"Lanycsok\";\"ascii\"\n\"3048984\";\"Lakitelek\";\"main\"\n\"3049002\";\"Lajosmizse\";\"main\"\n\"3049013\";\"Lajoskomárom\";\"main\"\n\"3049013\";\"Lajoskomarom\";\"ascii\"\n\"3049033\";\"Lábod\";\"main\"\n\"3049033\";\"Labod\";\"ascii\"\n\"3049033\";\"Rinyahosszufalu\";\"other\"\n\"3049033\";\"Rinyahosszúfalu\";\"other\"\n\"3049036\";\"Lábatlan\";\"main\"\n\"3049036\";\"Labatlan\";\"ascii\"\n\"3049036\";\"Piszke\";\"other\"\n\"3049100\";\"Kunszentmiklós\";\"main\"\n\"3049100\";\"Kunszentmiklos\";\"ascii\"\n\"3049111\";\"Kunfehértó\";\"main\"\n\"3049111\";\"Kunfeherto\";\"ascii\"\n\"3049277\";\"Kozármisleny\";\"main\"\n\"3049277\";\"Kozarmisleny\";\"ascii\"\n\"3049366\";\"Kőszeg\";\"main\"\n\"3049366\";\"Koszeg\";\"ascii\"\n\"3049366\";\"Guns\";\"other\"\n\"3049366\";\"Güns\";\"other\"\n\"3049377\";\"Kosd\";\"main\"\n\"3049421\";\"Környe\";\"main\"\n\"3049421\";\"Kornye\";\"ascii\"\n\"3049430\";\"Körmend\";\"main\"\n\"3049430\";\"Kormend\";\"ascii\"\n\"3049491\";\"Kóny\";\"main\"\n\"3049491\";\"Kony\";\"ascii\"\n\"3049512\";\"Komló\";\"main\"\n\"3049512\";\"Komlo\";\"ascii\"\n\"3049519\";\"Komárom\";\"main\"\n\"3049519\";\"Komarom\";\"ascii\"\n\"3049519\";\"Komaromujvaros\";\"other\"\n\"3049519\";\"Komorn\";\"other\"\n\"3049519\";\"Komáromújváros\";\"other\"\n\"3049519\";\"Szony\";\"other\"\n\"3049519\";\"Szőny\";\"other\"\n\"3049519\";\"Ujszony\";\"other\"\n\"3049519\";\"Ujvaros\";\"other\"\n\"3049519\";\"komaromu\";\"other\"\n\"3049519\";\"Újváros\";\"other\"\n\"3049519\";\"コマーロム\";\"other\"\n\"3049574\";\"Kóka\";\"main\"\n\"3049574\";\"Koka\";\"ascii\"\n\"3049630\";\"Kocsér\";\"main\"\n\"3049630\";\"Kocser\";\"ascii\"\n\"3049631\";\"Kocs\";\"main\"\n\"3049719\";\"Kistelek\";\"main\"\n\"3049751\";\"Kisszállás\";\"main\"\n\"3049751\";\"Kisszallas\";\"ascii\"\n\"3049751\";\"Kisszalla\";\"other\"\n\"3049751\";\"Kisszállá\";\"other\"\n\"3049860\";\"Kisláng\";\"main\"\n\"3049860\";\"Kislang\";\"ascii\"\n\"3049875\";\"Kiskunmajsa\";\"main\"\n\"3049878\";\"Kiskunlacháza\";\"main\"\n\"3049878\";\"Kiskunlachaza\";\"ascii\"\n\"3049880\";\"Kiskunhalas\";\"main\"\n\"3049880\";\"Kishkunkhalash\";\"other\"\n\"3049880\";\"Kiskunhalos\";\"other\"\n\"3049880\";\"Кишкунхалаш\";\"other\"\n\"3049885\";\"Kiskunfélegyháza\";\"main\"\n\"3049885\";\"Kiskunfelegyhaza\";\"ascii\"\n\"3049896\";\"Kiskőrös\";\"main\"\n\"3049896\";\"Kiskoros\";\"ascii\"\n\"3050088\";\"Kisbér\";\"main\"\n\"3050088\";\"Kisber\";\"ascii\"\n\"3050088\";\"Aszar\";\"other\"\n\"3050088\";\"Ete\";\"other\"\n\"3050088\";\"Hanta\";\"other\"\n\"3050088\";\"Hánta\";\"other\"\n\"3050088\";\"Ászár\";\"other\"\n\"3050160\";\"Kincsesbánya\";\"main\"\n\"3050160\";\"Kincsesbanya\";\"ascii\"\n\"3050160\";\"Kincses\";\"other\"\n\"3050165\";\"Kimle\";\"main\"\n\"3050165\";\"Horvatkimle\";\"other\"\n\"3050165\";\"Horvátkimle\";\"other\"\n\"3050165\";\"Hrvatska Kemlja\";\"other\"\n\"3050165\";\"Magyarkimle\";\"other\"\n\"3050204\";\"Kéthely\";\"main\"\n\"3050204\";\"Kethely\";\"ascii\"\n\"3050208\";\"Kesztölc\";\"main\"\n\"3050208\";\"Kesztolc\";\"ascii\"\n\"3050212\";\"Keszthely\";\"main\"\n\"3050212\";\"Kestkhej\";\"other\"\n\"3050212\";\"Keszthelyi\";\"other\"\n\"3050212\";\"Кестхей\";\"other\"\n\"3050290\";\"Kistarcsa\";\"main\"\n\"3050290\";\"Kerepestarcsa\";\"other\"\n\"3050311\";\"Kerekegyháza\";\"main\"\n\"3050311\";\"Kerekegyhaza\";\"ascii\"\n\"3050406\";\"Kelebia\";\"main\"\n\"3050434\";\"Kecskemét\";\"main\"\n\"3050434\";\"Kecskemet\";\"ascii\"\n\"3050434\";\"Heteny\";\"other\"\n\"3050434\";\"Hetenyegyhaza\";\"other\"\n\"3050434\";\"Hetény\";\"other\"\n\"3050434\";\"Hetényegyháza\";\"other\"\n\"3050434\";\"Kechkemet\";\"other\"\n\"3050434\";\"kai qi kai mei te\";\"other\"\n\"3050434\";\"Кечкемет\";\"other\"\n\"3050434\";\"凯奇凯梅特\";\"other\"\n\"3050447\";\"Kecskéd\";\"main\"\n\"3050447\";\"Kecsked\";\"ascii\"\n\"3050454\";\"Kecel\";\"main\"\n\"3050459\";\"Kazár\";\"main\"\n\"3050459\";\"Kazar\";\"ascii\"\n\"3050475\";\"Katymár\";\"main\"\n\"3050475\";\"Katymar\";\"ascii\"\n\"3050526\";\"Kartal\";\"main\"\n\"3050572\";\"Karancslapujtő\";\"main\"\n\"3050572\";\"Karancslapujto\";\"ascii\"\n\"3050572\";\"Bocsarlapujto\";\"other\"\n\"3050572\";\"Bocsárlapujtő\";\"other\"\n\"3050573\";\"Karancskeszi\";\"main\"\n\"3050588\";\"Karád\";\"main\"\n\"3050588\";\"Karad\";\"ascii\"\n\"3050594\";\"Kapuvár\";\"main\"\n\"3050594\";\"Kapuvar\";\"ascii\"\n\"3050594\";\"Capuvar\";\"other\"\n\"3050616\";\"Kaposvár\";\"main\"\n\"3050616\";\"Kaposvar\";\"ascii\"\n\"3050616\";\"Kaposfured\";\"other\"\n\"3050616\";\"Kaposfüred\";\"other\"\n\"3050616\";\"Kaposhvar\";\"other\"\n\"3050616\";\"Kaposszentjakab\";\"other\"\n\"3050616\";\"Toponar\";\"other\"\n\"3050616\";\"Toponár\";\"other\"\n\"3050616\";\"Torocske\";\"other\"\n\"3050616\";\"Töröcske\";\"other\"\n\"3050616\";\"kaposhuvu~aru\";\"other\"\n\"3050616\";\"Капошвар\";\"other\"\n\"3050616\";\"カポシュヴァール\";\"other\"\n\"3050627\";\"Kaposmérő\";\"main\"\n\"3050627\";\"Kaposmero\";\"ascii\"\n\"3050647\";\"Kápolnásnyék\";\"main\"\n\"3050647\";\"Kapolnasnyek\";\"ascii\"\n\"3050714\";\"Káloz\";\"main\"\n\"3050714\";\"Kaloz\";\"ascii\"\n\"3050719\";\"Kalocsa\";\"main\"\n\"3050750\";\"Kakucs\";\"main\"\n\"3050785\";\"Kadarkút\";\"main\"\n\"3050785\";\"Kadarkut\";\"ascii\"\n\"3050872\";\"Jobbágyi\";\"main\"\n\"3050872\";\"Jobbagyi\";\"ascii\"\n\"3050901\";\"Jászszentlászló\";\"main\"\n\"3050901\";\"Jaszszentlaszlo\";\"ascii\"\n\"3050901\";\"Jaszszentlazlo\";\"other\"\n\"3050901\";\"Jászszentlázló\";\"other\"\n\"3050907\";\"Jászberény\";\"main\"\n\"3050907\";\"Jaszbereny\";\"ascii\"\n\"3050909\";\"Jászárokszállás\";\"main\"\n\"3050909\";\"Jaszarokszallas\";\"ascii\"\n\"3050927\";\"Jánossomorja\";\"main\"\n\"3050927\";\"Janossomorja\";\"ascii\"\n\"3050927\";\"Mosonszentjanos\";\"other\"\n\"3050927\";\"Mosonszentjános\";\"other\"\n\"3050927\";\"Mosonszentpeter\";\"other\"\n\"3050927\";\"Mosonszentpéter\";\"other\"\n\"3050927\";\"Pusztasomorja\";\"other\"\n\"3050927\";\"Sankt-Johann\";\"other\"\n\"3050927\";\"Szent-Janos\";\"other\"\n\"3050927\";\"Szent-János\";\"other\"\n\"3050964\";\"Jánosháza\";\"main\"\n\"3050964\";\"Janoshaza\";\"ascii\"\n\"3050967\";\"Jánoshalma\";\"main\"\n\"3050967\";\"Janoshalma\";\"ascii\"\n\"3050997\";\"Fülöpjakab\";\"main\"\n\"3050997\";\"Fueloepjakab\";\"ascii\"\n\"3050997\";\"Fulopjakabszallas\";\"other\"\n\"3050997\";\"Fülopjakabszállás\";\"other\"\n\"3051001\";\"Ják\";\"main\"\n\"3051001\";\"Jak\";\"ascii\"\n\"3051001\";\"Sankt Georgen\";\"other\"\n\"3051016\";\"Izsák\";\"main\"\n\"3051016\";\"Izsak\";\"ascii\"\n\"3051035\";\"Iváncsa\";\"main\"\n\"3051035\";\"Ivancsa\";\"ascii\"\n\"3051077\";\"Isaszeg\";\"main\"\n\"3051100\";\"Iregszemcse\";\"main\"\n\"3051133\";\"Inárcs\";\"main\"\n\"3051133\";\"Inarcs\";\"ascii\"\n\"3051187\";\"Iklad\";\"main\"\n\"3051280\";\"Hosszúhetény\";\"main\"\n\"3051280\";\"Hosszuheteny\";\"ascii\"\n\"3051280\";\"Kisujbanya\";\"other\"\n\"3051280\";\"Kisújbánya\";\"other\"\n\"3051324\";\"Hort\";\"main\"\n\"3051415\";\"Hőgyész\";\"main\"\n\"3051415\";\"Hogyesz\";\"ascii\"\n\"3051473\";\"Hidas\";\"main\"\n\"3051476\";\"Hévízgyörk\";\"main\"\n\"3051476\";\"Hevizgyoerk\";\"ascii\"\n\"3051477\";\"Heviz\";\"main\"\n\"3051477\";\"Heviz Szent Andras\";\"other\"\n\"3051477\";\"Héviz Szent András\";\"other\"\n\"3051477\";\"Kheviz\";\"other\"\n\"3051477\";\"Хевиз\";\"other\"\n\"3051499\";\"Hernád\";\"main\"\n\"3051499\";\"Hernad\";\"ascii\"\n\"3051499\";\"Alsohernad\";\"other\"\n\"3051499\";\"Alsóhernád\";\"other\"\n\"3051512\";\"Herend\";\"main\"\n\"3051516\";\"Heréd\";\"main\"\n\"3051516\";\"Hered\";\"ascii\"\n\"3051520\";\"Hercegszántó\";\"main\"\n\"3051520\";\"Hercegszanto\";\"ascii\"\n\"3051535\";\"Helvécia\";\"main\"\n\"3051535\";\"Helvecia\";\"ascii\"\n\"3051621\";\"Hatvan\";\"main\"\n\"3051621\";\"Khatvan\";\"other\"\n\"3051621\";\"htwn\";\"other\"\n\"3051621\";\"Хатван\";\"other\"\n\"3051621\";\"حطون\";\"other\"\n\"3051657\";\"Harta\";\"main\"\n\"3051718\";\"Harkány\";\"main\"\n\"3051718\";\"Harkany\";\"ascii\"\n\"3051822\";\"Halásztelek\";\"main\"\n\"3051822\";\"Halasztelek\";\"ascii\"\n\"3051822\";\"Hermina-major\";\"other\"\n\"3051829\";\"Halászi\";\"main\"\n\"3051829\";\"Halaszi\";\"ascii\"\n\"3051873\";\"Hajós\";\"main\"\n\"3051873\";\"Hajos\";\"ascii\"\n\"3051881\";\"Hajmáskér\";\"main\"\n\"3051881\";\"Hajmasker\";\"ascii\"\n\"3051965\";\"Győrújbarát\";\"main\"\n\"3051965\";\"Gyorujbarat\";\"ascii\"\n\"3051965\";\"Kisbarat\";\"other\"\n\"3051965\";\"Kisbarát\";\"other\"\n\"3051965\";\"Nagybarat\";\"other\"\n\"3051965\";\"Nagybarát\";\"other\"\n\"3051969\";\"Győrszemere\";\"main\"\n\"3051969\";\"Gyorszemere\";\"ascii\"\n\"3052009\";\"Győr\";\"main\"\n\"3052009\";\"Gyor\";\"ascii\"\n\"3052009\";\"D'or\";\"other\"\n\"3052009\";\"Gyirmot\";\"other\"\n\"3052009\";\"Gyirmót\";\"other\"\n\"3052009\";\"Gyorszentivan\";\"other\"\n\"3052009\";\"Győrszentiván\";\"other\"\n\"3052009\";\"Menfocsanak\";\"other\"\n\"3052009\";\"Ménfőcsanak\";\"other\"\n\"3052009\";\"Pinnyed\";\"other\"\n\"3052009\";\"Pinnyéd\";\"other\"\n\"3052009\";\"Raab\";\"other\"\n\"3052009\";\"jeru\";\"other\"\n\"3052009\";\"Дьор\";\"other\"\n\"3052009\";\"ジェール\";\"other\"\n\"3052013\";\"Gyönk\";\"main\"\n\"3052013\";\"Gyonk\";\"ascii\"\n\"3052021\";\"Gyöngyöstarján\";\"main\"\n\"3052021\";\"Gyongyostarjan\";\"ascii\"\n\"3052023\";\"Gyöngyössolymos\";\"main\"\n\"3052023\";\"Gyongyossolymos\";\"ascii\"\n\"3052026\";\"Gyöngyöspata\";\"main\"\n\"3052026\";\"Gyongyospata\";\"ascii\"\n\"3052035\";\"Gyöngyöshalász\";\"main\"\n\"3052035\";\"Gyongyoshalasz\";\"ascii\"\n\"3052040\";\"Gyöngyös\";\"main\"\n\"3052040\";\"Gyongyos\";\"ascii\"\n\"3052045\";\"Gyömrő\";\"main\"\n\"3052045\";\"Gyomro\";\"ascii\"\n\"3052069\";\"Gyenesdiás\";\"main\"\n\"3052069\";\"Gyenesdias\";\"ascii\"\n\"3052101\";\"Gyál\";\"main\"\n\"3052101\";\"Gyal\";\"ascii\"\n\"3052208\";\"Gomba\";\"main\"\n\"3052236\";\"Gödöllő\";\"main\"\n\"3052236\";\"Godollo\";\"ascii\"\n\"3052236\";\"Godolo\";\"other\"\n\"3052236\";\"Goedoello\";\"other\"\n\"3052236\";\"Gödölö\";\"other\"\n\"3052241\";\"Göd\";\"main\"\n\"3052241\";\"God\";\"ascii\"\n\"3052241\";\"Alsogod\";\"other\"\n\"3052241\";\"Alsógöd\";\"other\"\n\"3052241\";\"Felsogod\";\"other\"\n\"3052241\";\"Felsőgöd\";\"other\"\n\"3052330\";\"Gencsapáti\";\"main\"\n\"3052330\";\"Gencsapati\";\"ascii\"\n\"3052381\";\"Gárdony\";\"main\"\n\"3052381\";\"Gardony\";\"ascii\"\n\"3052381\";\"Agard\";\"other\"\n\"3052381\";\"Agárd\";\"other\"\n\"3052391\";\"Gara\";\"main\"\n\"3052391\";\"Gora\";\"other\"\n\"3052417\";\"Galgamácsa\";\"main\"\n\"3052417\";\"Galgamacsa\";\"ascii\"\n\"3052419\";\"Galgahévíz\";\"main\"\n\"3052419\";\"Galgaheviz\";\"ascii\"\n\"3052500\";\"Fülöpszállás\";\"main\"\n\"3052500\";\"Fulopszallas\";\"ascii\"\n\"3052542\";\"Fót\";\"main\"\n\"3052542\";\"Fot\";\"ascii\"\n\"3052545\";\"Forrópuszta\";\"main\"\n\"3052545\";\"Forropuszta\";\"ascii\"\n\"3052545\";\"Forro\";\"other\"\n\"3052545\";\"Forró\";\"other\"\n\"3052553\";\"Forráskút\";\"main\"\n\"3052553\";\"Forraskut\";\"ascii\"\n\"3052574\";\"Fonyód\";\"main\"\n\"3052574\";\"Fonyod\";\"ascii\"\n\"3052639\";\"Fertőszentmiklós\";\"main\"\n\"3052639\";\"Fertoszentmiklos\";\"ascii\"\n\"3052640\";\"Fertőrákos\";\"main\"\n\"3052640\";\"Fertorakos\";\"ascii\"\n\"3052640\";\"Kroisbach\";\"other\"\n\"3052645\";\"Fertőd\";\"main\"\n\"3052645\";\"Fertod\";\"ascii\"\n\"3052645\";\"Eszterhaza\";\"other\"\n\"3052645\";\"Eszterháza\";\"other\"\n\"3052645\";\"Suttor\";\"other\"\n\"3052645\";\"Süttör\";\"other\"\n\"3052749\";\"Felsőszentiván\";\"main\"\n\"3052749\";\"Felsoszentivan\";\"ascii\"\n\"3052786\";\"Felsőpakony\";\"main\"\n\"3052786\";\"Felsopakony\";\"ascii\"\n\"3053033\";\"Fehérvárcsurgó\";\"main\"\n\"3053033\";\"Fehervarcsurgo\";\"ascii\"\n\"3053033\";\"Fehervarcscurgo\";\"other\"\n\"3053033\";\"Fehervarscsurgo\";\"other\"\n\"3053033\";\"Fehérvárcscurgó\";\"other\"\n\"3053033\";\"Fehérvárscsurgó\";\"other\"\n\"3053073\";\"Farmos\";\"main\"\n\"3053109\";\"Farád\";\"main\"\n\"3053109\";\"Farad\";\"ascii\"\n\"3053132\";\"Fadd\";\"main\"\n\"3053147\";\"Etyek\";\"main\"\n\"3053163\";\"Esztergom\";\"main\"\n\"3053163\";\"Ehstergom\";\"other\"\n\"3053163\";\"Gran\";\"other\"\n\"3053163\";\"Ostrihom\";\"other\"\n\"3053163\";\"Ostrzyhom\";\"other\"\n\"3053163\";\"Ostřihom\";\"other\"\n\"3053163\";\"Pilisszentlelek\";\"other\"\n\"3053163\";\"Pilisszentlélek\";\"other\"\n\"3053163\";\"Strigonio\";\"other\"\n\"3053163\";\"Strigoniu\";\"other\"\n\"3053163\";\"Strigonium\";\"other\"\n\"3053163\";\"ai si te gen\";\"other\"\n\"3053163\";\"eseuteleugom\";\"other\"\n\"3053163\";\"esuterugomu\";\"other\"\n\"3053163\";\"Эстергом\";\"other\"\n\"3053163\";\"エステルゴム\";\"other\"\n\"3053163\";\"艾斯特根\";\"other\"\n\"3053163\";\"에스테르곰\";\"other\"\n\"3053199\";\"Érsekvadkert\";\"main\"\n\"3053199\";\"Ersekvadkert\";\"ascii\"\n\"3053203\";\"Érsekcsanád\";\"main\"\n\"3053203\";\"Ersekcsanad\";\"ascii\"\n\"3053253\";\"Erdőkertes\";\"main\"\n\"3053253\";\"Erdokertes\";\"ascii\"\n\"3053253\";\"Erdovaros\";\"other\"\n\"3053253\";\"Erdőváros\";\"other\"\n\"3053281\";\"Érd\";\"main\"\n\"3053281\";\"Erd\";\"ascii\"\n\"3053281\";\"Ehrd\";\"other\"\n\"3053281\";\"Hamzsabeg\";\"other\"\n\"3053281\";\"Hamzsabég\";\"other\"\n\"3053281\";\"Эрд\";\"other\"\n\"3053283\";\"Ercsi\";\"main\"\n\"3053283\";\"Ercs\";\"other\"\n\"3053297\";\"Enying\";\"main\"\n\"3053321\";\"Előszállás\";\"main\"\n\"3053321\";\"Eloszallas\";\"ascii\"\n\"3053402\";\"Ecser\";\"main\"\n\"3053406\";\"Ecséd\";\"main\"\n\"3053406\";\"Ecsed\";\"ascii\"\n\"3053423\";\"Dusnok\";\"main\"\n\"3053432\";\"Dunavecse\";\"main\"\n\"3053434\";\"Dunavarsány\";\"main\"\n\"3053434\";\"Dunavarsany\";\"ascii\"\n\"3053434\";\"Dunakisvarsany\";\"other\"\n\"3053434\";\"Dunakisvarsány\";\"other\"\n\"3053438\";\"Dunaújváros\";\"main\"\n\"3053438\";\"Dunaujvaros\";\"ascii\"\n\"3053438\";\"Dunapentele\";\"other\"\n\"3053438\";\"Dunaujvarosh\";\"other\"\n\"3053438\";\"Stalinvaros\";\"other\"\n\"3053438\";\"Sztalinvaros\";\"other\"\n\"3053438\";\"Sztálinváros\";\"other\"\n\"3053438\";\"duo nao xin cheng\";\"other\"\n\"3053438\";\"Дунауйварош\";\"other\"\n\"3053438\";\"多瑙新城\";\"other\"\n\"3053450\";\"Dunaszentgyörgy\";\"main\"\n\"3053450\";\"Dunaszentgyorgy\";\"ascii\"\n\"3053454\";\"Dunaszekcső\";\"main\"\n\"3053454\";\"Dunaszekcso\";\"ascii\"\n\"3053454\";\"Dunaszeksco\";\"other\"\n\"3053454\";\"Dunaszekscö\";\"other\"\n\"3053454\";\"Sekcoey\";\"other\"\n\"3053454\";\"Sekçöy\";\"other\"\n\"3053454\";\"skchwy\";\"other\"\n\"3053454\";\"سکچوی\";\"other\"\n\"3053459\";\"Dunapataj\";\"main\"\n\"3053476\";\"Dunakeszi\";\"main\"\n\"3053485\";\"Dunaharaszti\";\"main\"\n\"3053489\";\"Dunaföldvár\";\"main\"\n\"3053489\";\"Dunafoldvar\";\"ascii\"\n\"3053495\";\"Dunabogdány\";\"main\"\n\"3053495\";\"Dunabogdany\";\"ascii\"\n\"3053497\";\"Dunaalmás\";\"main\"\n\"3053497\";\"Dunaalmas\";\"ascii\"\n\"3053562\";\"Dorog\";\"main\"\n\"3053577\";\"Dömsöd\";\"main\"\n\"3053577\";\"Domsod\";\"ascii\"\n\"3053583\";\"Domony\";\"main\"\n\"3053590\";\"Dombóvár\";\"main\"\n\"3053590\";\"Dombovar\";\"ascii\"\n\"3053623\";\"Döbrököz\";\"main\"\n\"3053623\";\"Dobrokoz\";\"ascii\"\n\"3053682\";\"Diósjenő\";\"main\"\n\"3053682\";\"Diosjeno\";\"ascii\"\n\"3053684\";\"Diósd\";\"main\"\n\"3053684\";\"Diosd\";\"ascii\"\n\"3053712\";\"Devecser\";\"main\"\n\"3053760\";\"Délegyháza\";\"main\"\n\"3053760\";\"Delegyhaza\";\"ascii\"\n\"3053764\";\"Dég\";\"main\"\n\"3053764\";\"Deg\";\"ascii\"\n\"3053768\";\"Decs\";\"main\"\n\"3053779\";\"Dávod\";\"main\"\n\"3053779\";\"Davod\";\"ascii\"\n\"3053809\";\"Dány\";\"main\"\n\"3053809\";\"Dany\";\"ascii\"\n\"3053810\";\"Dánszentmiklós\";\"main\"\n\"3053810\";\"Danszentmiklos\";\"ascii\"\n\"3053836\";\"Dabas\";\"main\"\n\"3053836\";\"Gyon\";\"other\"\n\"3053836\";\"Gyón\";\"other\"\n\"3053836\";\"Sari\";\"other\"\n\"3053836\";\"Sári\";\"other\"\n\"3053863\";\"Csurgó\";\"main\"\n\"3053863\";\"Csurgo\";\"ascii\"\n\"3053918\";\"Csorna\";\"main\"\n\"3053938\";\"Csopak\";\"main\"\n\"3053938\";\"Chopak\";\"other\"\n\"3053938\";\"Чопак\";\"other\"\n\"3053971\";\"Csömör\";\"main\"\n\"3053971\";\"Csomor\";\"ascii\"\n\"3053986\";\"Csolnok\";\"main\"\n\"3054027\";\"Csobánka\";\"main\"\n\"3054027\";\"Csobanka\";\"ascii\"\n\"3054144\";\"Csetény\";\"main\"\n\"3054144\";\"Cseteny\";\"ascii\"\n\"3054164\";\"Cserszegtomaj\";\"main\"\n\"3054260\";\"Csepreg\";\"main\"\n\"3054280\";\"Csengőd\";\"main\"\n\"3054280\";\"Csengod\";\"ascii\"\n\"3054287\";\"Csengele\";\"main\"\n\"3054296\";\"Csemő\";\"main\"\n\"3054296\";\"Csemo\";\"ascii\"\n\"3054328\";\"Csávoly\";\"main\"\n\"3054328\";\"Csavoly\";\"ascii\"\n\"3054328\";\"Kiscsavoly Baja\";\"other\"\n\"3054352\";\"Császártöltés\";\"main\"\n\"3054352\";\"Csaszartoltes\";\"ascii\"\n\"3054359\";\"Császár\";\"main\"\n\"3054359\";\"Csaszar\";\"ascii\"\n\"3054400\";\"Csány\";\"main\"\n\"3054400\";\"Csany\";\"ascii\"\n\"3054434\";\"Csákvár\";\"main\"\n\"3054434\";\"Csakvar\";\"ascii\"\n\"3054434\";\"Csakyar\";\"other\"\n\"3054434\";\"Csákyár\";\"other\"\n\"3054456\";\"Csabrendek\";\"main\"\n\"3054533\";\"Celldömölk\";\"main\"\n\"3054533\";\"Celldomolk\";\"ascii\"\n\"3054533\";\"Celldoemoelk\";\"other\"\n\"3054533\";\"Czelldomolk\";\"other\"\n\"3054533\";\"Czelldömölk\";\"other\"\n\"3054533\";\"Izsakfa\";\"other\"\n\"3054533\";\"Izsákfa\";\"other\"\n\"3054533\";\"Kiscell\";\"other\"\n\"3054533\";\"Klein Zell\";\"other\"\n\"3054533\";\"Klein-Zell\";\"other\"\n\"3054533\";\"Kleinzell\";\"other\"\n\"3054542\";\"Ceglédbercel\";\"main\"\n\"3054542\";\"Cegledbercel\";\"ascii\"\n\"3054543\";\"Cegléd\";\"main\"\n\"3054543\";\"Cegled\";\"ascii\"\n\"3054543\";\"Czegled\";\"other\"\n\"3054543\";\"Цеглед\";\"other\"\n\"3054547\";\"Cece\";\"main\"\n\"3054597\";\"Bük\";\"main\"\n\"3054597\";\"Buk\";\"ascii\"\n\"3054600\";\"Buják\";\"main\"\n\"3054600\";\"Bujak\";\"ascii\"\n\"3054606\";\"Bugyi\";\"main\"\n\"3054612\";\"Bugac\";\"main\"\n\"3054612\";\"Bugacmonostor\";\"other\"\n\"3054643\";\"Budapest\";\"main\"\n\"3054643\";\"Boedapest\";\"other\"\n\"3054643\";\"Boudapeste\";\"other\"\n\"3054643\";\"Budaipeist\";\"other\"\n\"3054643\";\"Budapehsht\";\"other\"\n\"3054643\";\"Budapescht\";\"other\"\n\"3054643\";\"Budapeshha\";\"other\"\n\"3054643\";\"Budapesht\";\"other\"\n\"3054643\";\"Budapesta\";\"other\"\n\"3054643\";\"Budapestas\";\"other\"\n\"3054643\";\"Budapeste\";\"other\"\n\"3054643\";\"Budapesti\";\"other\"\n\"3054643\";\"Budapesto\";\"other\"\n\"3054643\";\"Budapeszt\";\"other\"\n\"3054643\";\"Budapeŝto\";\"other\"\n\"3054643\";\"Budapeşte\";\"other\"\n\"3054643\";\"Budapešta\";\"other\"\n\"3054643\";\"Budapeštas\";\"other\"\n\"3054643\";\"Budapešť\";\"other\"\n\"3054643\";\"Budapèst\";\"other\"\n\"3054643\";\"Budimpeshta\";\"other\"\n\"3054643\";\"Budimpesta\";\"other\"\n\"3054643\";\"Budimpešta\";\"other\"\n\"3054643\";\"Búdaipeist\";\"other\"\n\"3054643\";\"Búdapest\";\"other\"\n\"3054643\";\"bu da pei si\";\"other\"\n\"3054643\";\"budapeseuteu\";\"other\"\n\"3054643\";\"budapest\";\"other\"\n\"3054643\";\"budapesta\";\"other\"\n\"3054643\";\"budapesuto\";\"other\"\n\"3054643\";\"bwdabst\";\"other\"\n\"3054643\";\"bwdapst\";\"other\"\n\"3054643\";\"bwdpst\";\"other\"\n\"3054643\";\"Βουδαπέστη\";\"other\"\n\"3054643\";\"Будапешт\";\"other\"\n\"3054643\";\"Будапеща\";\"other\"\n\"3054643\";\"Будапэшт\";\"other\"\n\"3054643\";\"Будимпешта\";\"other\"\n\"3054643\";\"Բուդապեշտ\";\"other\"\n\"3054643\";\"בודפשט\";\"other\"\n\"3054643\";\"بودابست\";\"other\"\n\"3054643\";\"بوداپست\";\"other\"\n\"3054643\";\"بۇداپېشت\";\"other\"\n\"3054643\";\"बुडापेस्ट\";\"other\"\n\"3054643\";\"บูดาเปสต์\";\"other\"\n\"3054643\";\"ბუდაპეშტი\";\"other\"\n\"3054643\";\"ブダペスト\";\"other\"\n\"3054643\";\"布达佩斯\";\"other\"\n\"3054643\";\"부다페스트\";\"other\"\n\"3054646\";\"Budaörs\";\"main\"\n\"3054646\";\"Budaors\";\"ascii\"\n\"3054648\";\"Budakeszi\";\"main\"\n\"3054651\";\"Budakalász\";\"main\"\n\"3054651\";\"Budakalasz\";\"ascii\"\n\"3054693\";\"Aszód\";\"main\"\n\"3054693\";\"Aszod\";\"ascii\"\n\"3054726\";\"Bősárkány\";\"main\"\n\"3054726\";\"Bosarkany\";\"ascii\"\n\"3054795\";\"Bordány\";\"main\"\n\"3054795\";\"Bordany\";\"ascii\"\n\"3054795\";\"Kistemplomtanya\";\"other\"\n\"3054809\";\"Bonyhád\";\"main\"\n\"3054809\";\"Bonyhad\";\"ascii\"\n\"3054811\";\"Bőny\";\"main\"\n\"3054811\";\"Bony\";\"ascii\"\n\"3054811\";\"Bonyretalap\";\"other\"\n\"3054811\";\"Bőnyrétalap\";\"other\"\n\"3054828\";\"Bóly\";\"main\"\n\"3054828\";\"Boly\";\"ascii\"\n\"3054828\";\"Nemetboly\";\"other\"\n\"3054828\";\"Németbóly\";\"other\"\n\"3054850\";\"Boldog\";\"main\"\n\"3054853\";\"Bölcske\";\"main\"\n\"3054853\";\"Bolcske\";\"ascii\"\n\"3054863\";\"Bokod\";\"main\"\n\"3054874\";\"Böhönye\";\"main\"\n\"3054874\";\"Bohonye\";\"ascii\"\n\"3054878\";\"Bogyiszló\";\"main\"\n\"3054878\";\"Bogyiszlo\";\"ascii\"\n\"3054945\";\"Bodajk\";\"main\"\n\"3055030\";\"Bicske\";\"main\"\n\"3055038\";\"Biatorbágy\";\"main\"\n\"3055038\";\"Biatorbagy\";\"ascii\"\n\"3055069\";\"Berzence\";\"main\"\n\"3055069\";\"بره‌زنچه\";\"other\"\n\"3055091\";\"Berhida\";\"main\"\n\"3055091\";\"Peremarton\";\"other\"\n\"3055108\";\"Beremend\";\"main\"\n\"3055130\";\"Bercel\";\"main\"\n\"3055196\";\"Beled\";\"main\"\n\"3055196\";\"Vica\";\"other\"\n\"3055255\";\"Becsehely\";\"main\"\n\"3055255\";\"Bekcsenypolya\";\"other\"\n\"3055255\";\"Bekcsénypolya\";\"other\"\n\"3055255\";\"Pola\";\"other\"\n\"3055281\";\"Bátya\";\"main\"\n\"3055281\";\"Batya\";\"ascii\"\n\"3055287\";\"Bátonyterenye\";\"main\"\n\"3055287\";\"Batonyterenye\";\"ascii\"\n\"3055287\";\"Kisterenye\";\"other\"\n\"3055287\";\"Nagybatony\";\"other\"\n\"3055287\";\"Nagybátony\";\"other\"\n\"3055287\";\"Szupatak\";\"other\"\n\"3055287\";\"Szúpatak\";\"other\"\n\"3055298\";\"Bátaszék\";\"main\"\n\"3055298\";\"Bataszek\";\"ascii\"\n\"3055302\";\"Báta\";\"main\"\n\"3055302\";\"Bata\";\"ascii\"\n\"3055368\";\"Barcs\";\"main\"\n\"3055368\";\"Dravaszentes\";\"other\"\n\"3055368\";\"Drávaszentes\";\"other\"\n\"3055368\";\"Somogy Tarnocza\";\"other\"\n\"3055368\";\"Somogytarnoca\";\"other\"\n\"3055368\";\"Somogytarnóca\";\"other\"\n\"3055368\";\"barchh\";\"other\"\n\"3055368\";\"بارچه\";\"other\"\n\"3055410\";\"Baracska\";\"main\"\n\"3055414\";\"Baracs\";\"main\"\n\"3055497\";\"Ballószög\";\"main\"\n\"3055497\";\"Balloszog\";\"ascii\"\n\"3055535\";\"Balatonszárszó\";\"main\"\n\"3055535\";\"Balatonszarszo\";\"ascii\"\n\"3055539\";\"Balatonszabadi\";\"main\"\n\"3055539\";\"Siomaros\";\"other\"\n\"3055539\";\"Siómaros\";\"other\"\n\"3055551\";\"Balatonlelle\";\"main\"\n\"3055551\";\"Boglarlelle\";\"other\"\n\"3055551\";\"Boglárlelle\";\"other\"\n\"3055556\";\"Balatonkenese\";\"main\"\n\"3055566\";\"Balatonfüred\";\"main\"\n\"3055566\";\"Balatonfured\";\"ascii\"\n\"3055568\";\"Balatonföldvár\";\"main\"\n\"3055568\";\"Balatonfoldvar\";\"ascii\"\n\"3055568\";\"Balaton Foldvar Furdotelep\";\"other\"\n\"3055568\";\"Balaton Földvár Fürdőtelep\";\"other\"\n\"3055575\";\"Balatonfenyves\";\"main\"\n\"3055584\";\"Balatonboglár\";\"main\"\n\"3055584\";\"Balatonboglar\";\"ascii\"\n\"3055584\";\"Szolloskislak\";\"other\"\n\"3055584\";\"Szoloskislak\";\"other\"\n\"3055584\";\"Szőllőskislak\";\"other\"\n\"3055584\";\"Szőlőskislak\";\"other\"\n\"3055586\";\"Balatonberény\";\"main\"\n\"3055586\";\"Balatonbereny\";\"ascii\"\n\"3055586\";\"Balatonbereni\";\"other\"\n\"3055586\";\"Балатонберени\";\"other\"\n\"3055590\";\"Balatonalmádi\";\"main\"\n\"3055590\";\"Balatonalmadi\";\"ascii\"\n\"3055590\";\"Vorosbereny\";\"other\"\n\"3055590\";\"Vörösberény\";\"other\"\n\"3055601\";\"Balassagyarmat\";\"main\"\n\"3055601\";\"Ipolyszog\";\"other\"\n\"3055601\";\"Ipolyszög\";\"other\"\n\"3055623\";\"Bakonyszentlászló\";\"main\"\n\"3055623\";\"Bakonyszentlaszlo\";\"ascii\"\n\"3055644\";\"Bakonycsernye\";\"main\"\n\"3055674\";\"Bajna\";\"main\"\n\"3055685\";\"Baja\";\"main\"\n\"3055685\";\"Bajja\";\"other\"\n\"3055685\";\"Baya\";\"other\"\n\"3055685\";\"bayh\";\"other\"\n\"3055685\";\"Байя\";\"other\"\n\"3055685\";\"بایه\";\"other\"\n\"3055686\";\"Baj\";\"main\"\n\"3055721\";\"Bag\";\"main\"\n\"3055730\";\"Badacsonytomaj\";\"main\"\n\"3055757\";\"Bácsbokod\";\"main\"\n\"3055757\";\"Bacsbokod\";\"ascii\"\n\"3055760\";\"Bácsalmás\";\"main\"\n\"3055760\";\"Bacsalmas\";\"ascii\"\n\"3055760\";\"Bacsahna\";\"other\"\n\"3055760\";\"Bácsahná\";\"other\"\n\"3055772\";\"Bábolna\";\"main\"\n\"3055772\";\"Babolna\";\"ascii\"\n\"3055772\";\"Babolnapuszta\";\"other\"\n\"3055772\";\"Bábolnapuszta\";\"other\"\n\"3055776\";\"Babócsa\";\"main\"\n\"3055776\";\"Babocsa\";\"ascii\"\n\"3055776\";\"bwbwfchh\";\"other\"\n\"3055776\";\"بوبوفچه\";\"other\"\n\"3055827\";\"Ásványráró\";\"main\"\n\"3055827\";\"Asvanyraro\";\"ascii\"\n\"3055835\";\"Ásotthalom\";\"main\"\n\"3055835\";\"Asotthalom\";\"ascii\"\n\"3055896\";\"Apostag\";\"main\"\n\"3055901\";\"Apc\";\"main\"\n\"3056108\";\"Alsónémedi\";\"main\"\n\"3056108\";\"Alsonemedi\";\"ascii\"\n\"3056290\";\"Almásfüzitő\";\"main\"\n\"3056290\";\"Almasfuzito\";\"ascii\"\n\"3056326\";\"Albertirsa\";\"main\"\n\"3056326\";\"Alberti\";\"other\"\n\"3056326\";\"Irsa\";\"other\"\n\"3056331\";\"Alap\";\"main\"\n\"3056347\";\"Akasztó\";\"main\"\n\"3056347\";\"Akaszto\";\"ascii\"\n\"3056357\";\"Ajka\";\"main\"\n\"3056357\";\"Ajkarendek\";\"other\"\n\"3056357\";\"Bakonygyepes\";\"other\"\n\"3056357\";\"Csekut\";\"other\"\n\"3056357\";\"Csékút\";\"other\"\n\"3056357\";\"Padrag\";\"other\"\n\"3056357\";\"Padragkut\";\"other\"\n\"3056357\";\"Padragkút\";\"other\"\n\"3056357\";\"Tosok\";\"other\"\n\"3056357\";\"Tosokberend\";\"other\"\n\"3056357\";\"Tósok\";\"other\"\n\"3056357\";\"Tósokberénd\";\"other\"\n\"3056357\";\"Айка\";\"other\"\n\"3056380\";\"Ágfalva\";\"main\"\n\"3056380\";\"Agfalva\";\"ascii\"\n\"3056391\";\"Ágasegyháza\";\"main\"\n\"3056391\";\"Agasegyhaza\";\"ascii\"\n\"3056414\";\"Adony\";\"main\"\n\"3056418\";\"Ádánd\";\"main\"\n\"3056418\";\"Adand\";\"ascii\"\n\"3056424\";\"Adács\";\"main\"\n\"3056424\";\"Adacs\";\"ascii\"\n\"3056436\";\"Acsa\";\"main\"\n\"3056437\";\"Ács\";\"main\"\n\"3056437\";\"Acs\";\"ascii\"\n\"3056437\";\"Ecs\";\"other\"\n\"3056445\";\"Abda\";\"main\"\n\"3056450\";\"Aba\";\"main\"\n\"3338787\";\"Tiszaalpár\";\"main\"\n\"3338787\";\"Tiszaalpar\";\"ascii\"\n\"6942354\";\"Nagyvárad\";\"main\"\n\"6942354\";\"Nagyvarad\";\"ascii\"\n\"7284823\";\"Budapest XII. kerület\";\"main\"\n\"7284823\";\"Budapest XII. keruelet\";\"ascii\"\n\"7284824\";\"Budapest XI. kerület\";\"main\"\n\"7284824\";\"Budapest XI. keruelet\";\"ascii\"\n\"7284825\";\"Budapest IX. kerület\";\"main\"\n\"7284825\";\"Budapest IX. keruelet\";\"ascii\"\n\"7284826\";\"Budapest VIII. kerület\";\"main\"\n\"7284826\";\"Budapest VIII. keruelet\";\"ascii\"\n\"7284827\";\"Budapest VII. kerület\";\"main\"\n\"7284827\";\"Budapest VII. keruelet\";\"ascii\"\n\"7284828\";\"Budapest VI. kerület\";\"main\"\n\"7284828\";\"Budapest VI. keruelet\";\"ascii\"\n\"7284829\";\"Budapest XIV. kerület\";\"main\"\n\"7284829\";\"Budapest XIV. keruelet\";\"ascii\"\n\"7284830\";\"Budapest XIII. kerület\";\"main\"\n\"7284830\";\"Budapest XIII. keruelet\";\"ascii\"\n\"7284831\";\"Budapest IV. kerület\";\"main\"\n\"7284831\";\"Budapest IV. keruelet\";\"ascii\"\n\"7284832\";\"Budapest XV. kerület\";\"main\"\n\"7284832\";\"Budapest XV. keruelet\";\"ascii\"\n\"7284833\";\"Budapest XVI. kerület\";\"main\"\n\"7284833\";\"Budapest XVI. keruelet\";\"ascii\"\n\"7284834\";\"Budapest X. kerület\";\"main\"\n\"7284834\";\"Budapest X. keruelet\";\"ascii\"\n\"7284835\";\"Budapest XIX. kerület\";\"main\"\n\"7284835\";\"Budapest XIX. keruelet\";\"ascii\"\n\"7284836\";\"Budapest XVIII. kerület\";\"main\"\n\"7284836\";\"Budapest XVIII. keruelet\";\"ascii\"\n\"7284837\";\"Budapest XXIII. kerület\";\"main\"\n\"7284837\";\"Budapest XXIII. keruelet\";\"ascii\"\n\"7284838\";\"Budapest XXII. kerület\";\"main\"\n\"7284838\";\"Budapest XXII. keruelet\";\"ascii\"\n\"7284839\";\"Budapest XXI. kerület\";\"main\"\n\"7284839\";\"Budapest XXI. keruelet\";\"ascii\"\n\"7284840\";\"Budapest XX. kerület\";\"main\"\n\"7284840\";\"Budapest XX. keruelet\";\"ascii\"\n\"7284841\";\"Budapest XVII. kerület\";\"main\"\n\"7284841\";\"Budapest XVII. keruelet\";\"ascii\"\n\"7284842\";\"Budapest III. kerület\";\"main\"\n\"7284842\";\"Budapest III. keruelet\";\"ascii\"\n\"7284843\";\"Budapest II. kerület\";\"main\"\n\"7284843\";\"Budapest II. keruelet\";\"ascii\"\n\"7284844\";\"Budapest I. kerület\";\"main\"\n\"7284844\";\"Budapest I. keruelet\";\"ascii\"\n\"7284899\";\"Algyő\";\"main\"\n\"7284899\";\"Algyo\";\"ascii\"\n\"7284900\";\"Szelevény\";\"main\"\n\"7284900\";\"Szeleveny\";\"ascii\"\n\"7284903\";\"Kismaros\";\"main\"\n\"7284908\";\"Héhalom\";\"main\"\n\"7284908\";\"Hehalom\";\"ascii\"\n\"7284910\";\"Mosonszentmiklós\";\"main\"\n\"7284910\";\"Mosonszentmiklos\";\"ascii\"\n\"7284912\";\"Kerepes\";\"main\"\n\"7284912\";\"Kerepestarcsa\";\"other\"\n\"1213459\";\"Tiku\";\"main\"\n\"1213459\";\"Tikoe\";\"other\"\n\"1213493\";\"Teluk Nibung\";\"main\"\n\"1213493\";\"Teloekniboeng\";\"other\"\n\"1213500\";\"Tebingtinggi\";\"main\"\n\"1213530\";\"Tanjungtiram\";\"main\"\n\"1213530\";\"Tandjoengtiram\";\"other\"\n\"1213530\";\"Tandjungtiram\";\"other\"\n\"1213547\";\"Tanjungbalai\";\"main\"\n\"1213547\";\"Tandjoengbalai\";\"other\"\n\"1213547\";\"Tandjungbalai\";\"other\"\n\"1213614\";\"Sunggal\";\"main\"\n\"1213614\";\"Sungal\";\"other\"\n\"1213655\";\"Stabat\";\"main\"\n\"1213655\";\"Stabatbaru\";\"other\"\n\"1213721\";\"Sinabang\";\"main\"\n\"1213821\";\"Sigli\";\"main\"\n\"1213855\";\"Sibolga\";\"main\"\n\"1213855\";\"Kota Sibolga\";\"other\"\n\"1213855\";\"Сиболга\";\"other\"\n\"1214026\";\"Sabang\";\"main\"\n\"1214026\";\"Sabong\";\"other\"\n\"1214055\";\"Reuleuet\";\"main\"\n\"1214073\";\"Rantauprapat\";\"main\"\n\"1214189\";\"Percut\";\"main\"\n\"1214189\";\"Pertjoet\";\"other\"\n\"1214189\";\"Pertjut\";\"other\"\n\"1214191\";\"Perbaungan\";\"main\"\n\"1214191\";\"Baoengan\";\"other\"\n\"1214191\";\"Baoengar\";\"other\"\n\"1214191\";\"Baungan\";\"other\"\n\"1214204\";\"Pematangsiantar\";\"main\"\n\"1214204\";\"Pematangsieantar\";\"other\"\n\"1214302\";\"Pangkalan Brandan\";\"main\"\n\"1214302\";\"Pangkalanberandan\";\"other\"\n\"1214369\";\"Padangsidempuan\";\"main\"\n\"1214369\";\"Padangsidimpoean\";\"other\"\n\"1214369\";\"Padangsidimpuan\";\"other\"\n\"1214449\";\"Sikabaluan\";\"main\"\n\"1214449\";\"Moearasikabaloean\";\"other\"\n\"1214449\";\"Muarasikabaluan\";\"other\"\n\"1214451\";\"Muara Siberut\";\"main\"\n\"1214451\";\"Moearasiberoet\";\"other\"\n\"1214451\";\"Moearasioetort\";\"other\"\n\"1214451\";\"Muarasiberut\";\"other\"\n\"1214451\";\"Siberut\";\"other\"\n\"1214488\";\"Meulaboh\";\"main\"\n\"1214488\";\"Melabokha\";\"other\"\n\"1214488\";\"Molabo\";\"other\"\n\"1214488\";\"Mölabo \";\"other\"\n\"1214488\";\"Мелабоха\";\"other\"\n\"1214520\";\"Medan\";\"main\"\n\"1214520\";\"Kota Medan\";\"other\"\n\"1214520\";\"Medana\";\"other\"\n\"1214520\";\"Medanas\";\"other\"\n\"1214520\";\"medan\";\"other\"\n\"1214520\";\"mian lan\";\"other\"\n\"1214520\";\"Медан\";\"other\"\n\"1214520\";\"メダン\";\"other\"\n\"1214520\";\"棉蘭\";\"other\"\n\"1214658\";\"Lhokseumawe\";\"main\"\n\"1214658\";\"Kota Lhokseumawe\";\"other\"\n\"1214658\";\"Lho'seumawe\";\"other\"\n\"1214658\";\"Lhoksumawe\";\"other\"\n\"1214658\";\"Lho’seumawe\";\"other\"\n\"1214658\";\"Lokseumave\";\"other\"\n\"1214658\";\"Локсеумаве\";\"other\"\n\"1214724\";\"Langsa\";\"main\"\n\"1214724\";\"Langsar\";\"other\"\n\"1214800\";\"Labuhan Deli\";\"main\"\n\"1214800\";\"Deli\";\"other\"\n\"1214800\";\"Laboean Deli\";\"other\"\n\"1214800\";\"Laboehan\";\"other\"\n\"1214800\";\"Laboehandeli\";\"other\"\n\"1214800\";\"Labuan Deli\";\"other\"\n\"1214800\";\"Labuhan\";\"other\"\n\"1214800\";\"Laukaban\";\"other\"\n\"1214882\";\"Kisaran\";\"main\"\n\"1214882\";\"Kisaran Baru\";\"other\"\n\"1214965\";\"Kabanjahe\";\"main\"\n\"1214965\";\"Kabandjahe\";\"other\"\n\"1215199\";\"Deli Tua\";\"main\"\n\"1215199\";\"Delitoea\";\"other\"\n\"1215350\";\"Bireun\";\"main\"\n\"1215350\";\"Bireuen\";\"other\"\n\"1215350\";\"Biroen\";\"other\"\n\"1215350\";\"Biröen \";\"other\"\n\"1215355\";\"Binjai\";\"main\"\n\"1215355\";\"Bindjai\";\"other\"\n\"1215355\";\"Bindjei\";\"other\"\n\"1215355\";\"Kota Binjai\";\"other\"\n\"1215355\";\"min li\";\"other\"\n\"1215355\";\"民禮\";\"other\"\n\"1215412\";\"Belawan\";\"main\"\n\"1215498\";\"Bandar\";\"main\"\n\"1215502\";\"Banda Aceh\";\"main\"\n\"1215502\";\"Baiturahman\";\"other\"\n\"1215502\";\"Banda Acehas\";\"other\"\n\"1215502\";\"Banda Atjeh\";\"other\"\n\"1215502\";\"Banda Ačehas\";\"other\"\n\"1215502\";\"Banda-Achekh\";\"other\"\n\"1215502\";\"Koetaradja\";\"other\"\n\"1215502\";\"Kota Banda Aceh\";\"other\"\n\"1215502\";\"Kuta Raja\";\"other\"\n\"1215502\";\"Kutaradja\";\"other\"\n\"1215502\";\"ban da ya qi\";\"other\"\n\"1215502\";\"banda atshyh\";\"other\"\n\"1215502\";\"Банда-Ачех\";\"other\"\n\"1215502\";\"باندا آتشيه\";\"other\"\n\"1215502\";\"バンダ・アチェ\";\"other\"\n\"1215502\";\"班達亞齊\";\"other\"\n\"1621160\";\"Yosowilangun\";\"main\"\n\"1621160\";\"Jasawilangoen\";\"other\"\n\"1621160\";\"Josowilangoen\";\"other\"\n\"1621160\";\"Josowilangun\";\"other\"\n\"1621177\";\"Yogyakarta\";\"main\"\n\"1621177\";\"Daerah Istimewa Yogyakarta\";\"other\"\n\"1621177\";\"Djogjakarta\";\"other\"\n\"1621177\";\"Djokja\";\"other\"\n\"1621177\";\"Djokjakarta\";\"other\"\n\"1621177\";\"Dzhok'jakarta\";\"other\"\n\"1621177\";\"Jogjakarta\";\"other\"\n\"1621177\";\"Jogyakarta\";\"other\"\n\"1621177\";\"Jokjakarta\";\"other\"\n\"1621177\";\"Jokyakarta\";\"other\"\n\"1621177\";\"Kota Yogyakarta\";\"other\"\n\"1621177\";\"jogujakaruta\";\"other\"\n\"1621177\";\"ywjyakrta\";\"other\"\n\"1621177\";\"Джокьякарта\";\"other\"\n\"1621177\";\"يوجياكرتا\";\"other\"\n\"1621177\";\"ジョグジャカルタ\";\"other\"\n\"1621311\";\"Wulung\";\"main\"\n\"1621337\";\"Wotu\";\"main\"\n\"1621337\";\"Wotoe\";\"other\"\n\"1621395\";\"Wonosobo\";\"main\"\n\"1621395\";\"Wanasaba\";\"other\"\n\"1621395\";\"Wonosabo\";\"other\"\n\"1621415\";\"Wonorejo\";\"main\"\n\"1621415\";\"Wonoredjo\";\"other\"\n\"1621416\";\"Wonopringgo\";\"main\"\n\"1621416\";\"Wanapringga\";\"other\"\n\"1621439\";\"Wongsorejo\";\"main\"\n\"1621439\";\"Wangsaredja\";\"other\"\n\"1621439\";\"Wangsoredjo\";\"other\"\n\"1621439\";\"Wongsoredjo\";\"other\"\n\"1621456\";\"Wolowaru\";\"main\"\n\"1621456\";\"Wolowaroe\";\"other\"\n\"1621459\";\"Wolosoko\";\"main\"\n\"1621459\";\"Wolotopo\";\"other\"\n\"1621500\";\"Wlingi\";\"main\"\n\"1621500\";\"Wilingi\";\"other\"\n\"1621520\";\"Wiradesa\";\"main\"\n\"1621520\";\"Wirodeso\";\"other\"\n\"1621613\";\"Weru\";\"main\"\n\"1621637\";\"Wera\";\"main\"\n\"1621655\";\"Weleri\";\"main\"\n\"1621659\";\"Welahan\";\"main\"\n\"1621678\";\"Wedi\";\"main\"\n\"1621678\";\"Wed\";\"other\"\n\"1621745\";\"Waworada\";\"main\"\n\"1621745\";\"Waworadax\";\"other\"\n\"1621842\";\"Watuapi\";\"main\"\n\"1621842\";\"Watoeapi\";\"other\"\n\"1621884\";\"Watampone\";\"main\"\n\"1621884\";\"Bone\";\"other\"\n\"1621884\";\"Boni\";\"other\"\n\"1622090\";\"Wangon\";\"main\"\n\"1622138\";\"Wanaraja\";\"main\"\n\"1622138\";\"Wanaradja\";\"other\"\n\"1622272\";\"Wajak\";\"main\"\n\"1622272\";\"Wadjak\";\"other\"\n\"1622272\";\"Wadjok\";\"other\"\n\"1622284\";\"Weetobula\";\"main\"\n\"1622284\";\"Waitaboela\";\"other\"\n\"1622284\";\"Waitaboela 1\";\"other\"\n\"1622284\";\"Waitabula\";\"other\"\n\"1622284\";\"Waitjaboelo\";\"other\"\n\"1622284\";\"Weeteboela\";\"other\"\n\"1622284\";\"Weetebula\";\"other\"\n\"1622284\";\"Weëteboela\";\"other\"\n\"1622310\";\"Waioti\";\"main\"\n\"1622310\";\"Waioteng\";\"other\"\n\"1622310\";\"Wairotang\";\"other\"\n\"1622318\";\"Waingapu\";\"main\"\n\"1622318\";\"Waingapoe\";\"other\"\n\"1622333\";\"Waimangura\";\"main\"\n\"1622333\";\"Waimangoear\";\"other\"\n\"1622333\";\"Waimangoera\";\"other\"\n\"1622351\";\"Waikabubak\";\"main\"\n\"1622351\";\"Waikaboebak\";\"other\"\n\"1622351\";\"Waikatoebak\";\"other\"\n\"1622372\";\"Waibakul\";\"main\"\n\"1622372\";\"Waibakoel\";\"other\"\n\"1622392\";\"Wagir\";\"main\"\n\"1622551\";\"Utan\";\"main\"\n\"1622551\";\"Oetan\";\"other\"\n\"1622636\";\"Ungaran\";\"main\"\n\"1622636\";\"Oengaran\";\"other\"\n\"1622636\";\"Unggaran\";\"other\"\n\"1622786\";\"Makassar\";\"main\"\n\"1622786\";\"Djumpandang\";\"other\"\n\"1622786\";\"Kota Makassar\";\"other\"\n\"1622786\";\"Macassar\";\"other\"\n\"1622786\";\"Makasar\";\"other\"\n\"1622786\";\"Makasaras\";\"other\"\n\"1622786\";\"Makasser\";\"other\"\n\"1622786\";\"Udjung Pandang\";\"other\"\n\"1622786\";\"Ujungpandang\";\"other\"\n\"1622786\";\"makasar\";\"other\"\n\"1622786\";\"makassaru\";\"other\"\n\"1622786\";\"Макассар\";\"other\"\n\"1622786\";\"ماکاسار\";\"other\"\n\"1622786\";\"マカッサル\";\"other\"\n\"1622846\";\"Ubud\";\"main\"\n\"1622846\";\"Oeboed\";\"other\"\n\"1622846\";\"Убуд\";\"other\"\n\"1622953\";\"Turen\";\"main\"\n\"1622953\";\"Toeren\";\"other\"\n\"1623011\";\"Tumpang\";\"main\"\n\"1623011\";\"Toempang\";\"other\"\n\"1623080\";\"Tulungagung\";\"main\"\n\"1623080\";\"Toeloengagoeng\";\"other\"\n\"1623080\";\"Toeloengoeng\";\"other\"\n\"1623096\";\"Tulangan Utara\";\"main\"\n\"1623096\";\"Toelangan\";\"other\"\n\"1623096\";\"Tulangan\";\"other\"\n\"1623180\";\"Tuban\";\"main\"\n\"1623180\";\"Toeban\";\"other\"\n\"1623180\";\"Тубан\";\"other\"\n\"1623197\";\"Tual\";\"main\"\n\"1623197\";\"Toeal\";\"other\"\n\"1623223\";\"Trucuk\";\"main\"\n\"1623223\";\"Trutjuk\";\"other\"\n\"1623251\";\"Trenggalek\";\"main\"\n\"1623251\";\"Trengalek\";\"other\"\n\"1623252\";\"Trembulrejo\";\"main\"\n\"1623252\";\"Tremboelredja\";\"other\"\n\"1623252\";\"Tremboelredjo\";\"other\"\n\"1623252\";\"Trembul\";\"other\"\n\"1623252\";\"Trembulredjo\";\"other\"\n\"1623411\";\"Tangga\";\"main\"\n\"1623411\";\"Tongga\";\"other\"\n\"1623424\";\"Tondano\";\"main\"\n\"1623446\";\"Tomohon\";\"main\"\n\"1623502\";\"Tolitoli\";\"main\"\n\"1623502\";\"Baru\";\"other\"\n\"1623502\";\"Kampoengbaroe\";\"other\"\n\"1623502\";\"Kampungbaru\";\"other\"\n\"1623651\";\"Tobelo\";\"main\"\n\"1623822\";\"Tinabogan\";\"main\"\n\"1623822\";\"Tinabogang\";\"other\"\n\"1623890\";\"Tilamuta\";\"main\"\n\"1623890\";\"Boalemo\";\"other\"\n\"1623890\";\"Tilamoeta\";\"other\"\n\"1624008\";\"Teta Satu\";\"main\"\n\"1624008\";\"Teta\";\"other\"\n\"1624008\";\"Teta 1\";\"other\"\n\"1624041\";\"Ternate\";\"main\"\n\"1624041\";\"Kota Ternate\";\"other\"\n\"1624041\";\"teleunate seom\";\"other\"\n\"1624041\";\"terunate dao\";\"other\"\n\"1624041\";\"Тернате\";\"other\"\n\"1624041\";\"テルナテ島\";\"other\"\n\"1624041\";\"테르나테 섬\";\"other\"\n\"1624058\";\"Terbanggi-besar\";\"main\"\n\"1624182\";\"Tempeh Tengah\";\"main\"\n\"1624182\";\"Tempeh-tengah\";\"other\"\n\"1624415\";\"Tekung\";\"main\"\n\"1624415\";\"Tekong\";\"other\"\n\"1624490\";\"Tegalalang\";\"main\"\n\"1624490\";\"Banjar Tegallalang\";\"other\"\n\"1624490\";\"Tegallalang\";\"other\"\n\"1624494\";\"Tegal\";\"main\"\n\"1624494\";\"Kota Tegal\";\"other\"\n\"1624545\";\"Tayu\";\"main\"\n\"1624545\";\"Tajoe\";\"other\"\n\"1624545\";\"Tajoe-wetan\";\"other\"\n\"1624545\";\"Taju\";\"other\"\n\"1624647\";\"Tasikmalaya\";\"main\"\n\"1624647\";\"Kota Tasikmalaya\";\"other\"\n\"1624647\";\"Tasikmalaja\";\"other\"\n\"1624647\";\"Tasikmalaya kutha\";\"other\"\n\"1624668\";\"Tarub\";\"main\"\n\"1624725\";\"Tarakan\";\"main\"\n\"1624725\";\"Таракан\";\"other\"\n\"1624785\";\"Tapalang\";\"main\"\n\"1624785\";\"Taparang\";\"other\"\n\"1624785\";\"Tappalang\";\"other\"\n\"1624863\";\"Tanjungpinang\";\"main\"\n\"1624863\";\"Tandjoengpinang\";\"other\"\n\"1624863\";\"Tandjungpinang\";\"other\"\n\"1624873\";\"Tanjungpati\";\"main\"\n\"1624873\";\"Tandjungpati\";\"other\"\n\"1624877\";\"Tanjungpandan\";\"main\"\n\"1624877\";\"Pandan\";\"other\"\n\"1624877\";\"Tandjoengpandan\";\"other\"\n\"1624877\";\"Tandjong-pandan\";\"other\"\n\"1624877\";\"Tandjungpandan\";\"other\"\n\"1624877\";\"Tanjong Pandan\";\"other\"\n\"1624894\";\"Tanjungluar\";\"main\"\n\"1624894\";\"Tandjoengloear\";\"other\"\n\"1624894\";\"Tandjungluar\";\"other\"\n\"1624917\";\"Tanjungkarang-Telukbetung\";\"main\"\n\"1624917\";\"Bandar Lampung\";\"other\"\n\"1624917\";\"Kota Bandar Lampung\";\"other\"\n\"1624917\";\"Tanjungkarang\";\"other\"\n\"1624917\";\"Telukbetung\";\"other\"\n\"1624930\";\"Tanjunggadang\";\"main\"\n\"1624930\";\"Tandjunggadang\";\"other\"\n\"1624987\";\"Tanjungagung\";\"main\"\n\"1624987\";\"Tandjoengagoeag\";\"other\"\n\"1624987\";\"Tandjoengagoeng\";\"other\"\n\"1624987\";\"Tandjungagung\";\"other\"\n\"1624997\";\"Tanjung\";\"main\"\n\"1624997\";\"Tandjoeng\";\"other\"\n\"1624997\";\"Tandjung\";\"other\"\n\"1625067\";\"Tanggulangin\";\"main\"\n\"1625067\";\"Tanggoelangin\";\"other\"\n\"1625067\";\"Tangoelangin\";\"other\"\n\"1625070\";\"Tanggul\";\"main\"\n\"1625070\";\"Tanggoel\";\"other\"\n\"1625084\";\"Tangerang\";\"main\"\n\"1625084\";\"Kota Tangerang\";\"other\"\n\"1625084\";\"Tangarang\";\"other\"\n\"1625084\";\"Тангеранг\";\"other\"\n\"1625386\";\"Talun\";\"main\"\n\"1625386\";\"Taloen\";\"other\"\n\"1625411\";\"Talok\";\"main\"\n\"1625411\";\"Metaraman 2\";\"other\"\n\"1625411\";\"Metaraman Dua\";\"other\"\n\"1625420\";\"Taliwang\";\"main\"\n\"1625420\";\"Talavang\";\"other\"\n\"1625439\";\"Talawi\";\"main\"\n\"1625559\";\"Tajinan\";\"main\"\n\"1625559\";\"Tadjinan\";\"other\"\n\"1625609\";\"Tagolu\";\"main\"\n\"1625609\";\"Tagoloe\";\"other\"\n\"1625609\";\"Togoloe\";\"other\"\n\"1625609\";\"Togolu\";\"other\"\n\"1625659\";\"Taccipi\";\"main\"\n\"1625659\";\"Tacipi\";\"other\"\n\"1625659\";\"Taljipi\";\"other\"\n\"1625659\";\"Tatjip\";\"other\"\n\"1625659\";\"Tatjipi\";\"other\"\n\"1625693\";\"Tabing\";\"main\"\n\"1625708\";\"Tabanan\";\"main\"\n\"1625749\";\"Suwaru\";\"main\"\n\"1625762\";\"Banjar Susut Kaja\";\"main\"\n\"1625762\";\"Susut\";\"other\"\n\"1625776\";\"Lasusua\";\"main\"\n\"1625776\";\"Lasoeasoea\";\"other\"\n\"1625776\";\"Soesoea\";\"other\"\n\"1625776\";\"Susua\";\"other\"\n\"1625784\";\"Suruhwadang\";\"main\"\n\"1625784\";\"Soeroehwadang\";\"other\"\n\"1625797\";\"Surian\";\"main\"\n\"1625797\";\"Soerian\";\"other\"\n\"1625812\";\"Surakarta\";\"main\"\n\"1625812\";\"Kota Surakarta\";\"other\"\n\"1625812\";\"Soerakarta\";\"other\"\n\"1625812\";\"Solo\";\"other\"\n\"1625812\";\"Surakarte\";\"other\"\n\"1625812\";\"suo luo\";\"other\"\n\"1625812\";\"surakaruta\";\"other\"\n\"1625812\";\"Суракарте\";\"other\"\n\"1625812\";\"スラカルタ\";\"other\"\n\"1625812\";\"索罗\";\"other\"\n\"1625822\";\"Surabaya\";\"main\"\n\"1625822\";\"Kota Surabaya\";\"other\"\n\"1625822\";\"Soerabaja\";\"other\"\n\"1625822\";\"Soerabaya\";\"other\"\n\"1625822\";\"Sourabaya\";\"other\"\n\"1625822\";\"Surabaia\";\"other\"\n\"1625822\";\"Surabaja\";\"other\"\n\"1625822\";\"si shui\";\"other\"\n\"1625822\";\"sulabaya\";\"other\"\n\"1625822\";\"surabaya\";\"other\"\n\"1625822\";\"swrabaya\";\"other\"\n\"1625822\";\"Сурабая\";\"other\"\n\"1625822\";\"سورابایا\";\"other\"\n\"1625822\";\"スラバヤ\";\"other\"\n\"1625822\";\"泗水\";\"other\"\n\"1625822\";\"수라바야\";\"other\"\n\"1625908\";\"Sungairaya\";\"main\"\n\"1625908\";\"Soengai Raya\";\"other\"\n\"1625908\";\"Soengairaja\";\"other\"\n\"1625908\";\"Sungairaja\";\"other\"\n\"1625929\";\"Sungaipenuh\";\"main\"\n\"1625929\";\"Soengaipenoeh\";\"other\"\n\"1625929\";\"Sungeipenu\";\"other\"\n\"1625956\";\"Sungailimau\";\"main\"\n\"1625956\";\"Soengailimau\";\"other\"\n\"1625956\";\"Soengeilimau\";\"other\"\n\"1625958\";\"Sungailiat\";\"main\"\n\"1625958\";\"Soengailiat\";\"other\"\n\"1625958\";\"Soengei Liat\";\"other\"\n\"1626099\";\"Sumenep\";\"main\"\n\"1626099\";\"Soemanep\";\"other\"\n\"1626099\";\"Soemenap\";\"other\"\n\"1626099\";\"Soemenep\";\"other\"\n\"1626100\";\"Sumedang Utara\";\"main\"\n\"1626134\";\"Sumberpucung\";\"main\"\n\"1626134\";\"Soemberpoetjoeng\";\"other\"\n\"1626134\";\"Sumberputjung\";\"other\"\n\"1626140\";\"Krajansumbermujur\";\"main\"\n\"1626140\";\"Sumbermudjur\";\"other\"\n\"1626140\";\"Sumbermujur\";\"other\"\n\"1626153\";\"Sumberkalong\";\"main\"\n\"1626154\";\"Sumberjati\";\"main\"\n\"1626154\";\"Soemberdjati\";\"other\"\n\"1626154\";\"Sumberdjati\";\"other\"\n\"1626155\";\"Sumberjambe\";\"main\"\n\"1626155\";\"Soemberdjambe\";\"other\"\n\"1626155\";\"Sumberdjambe\";\"other\"\n\"1626173\";\"Sumberbaru\";\"main\"\n\"1626173\";\"Soemberbaroe\";\"other\"\n\"1626175\";\"Sumberanyar\";\"main\"\n\"1626175\";\"Soemberanjar\";\"other\"\n\"1626175\";\"Sumberanjar\";\"other\"\n\"1626183\";\"Sumber\";\"main\"\n\"1626183\";\"Soember\";\"other\"\n\"1626185\";\"Sumbawa Besar\";\"main\"\n\"1626185\";\"Soembawa\";\"other\"\n\"1626185\";\"Soembawa-besar\";\"other\"\n\"1626185\";\"Sumbawa\";\"other\"\n\"1626219\";\"Sulitair\";\"main\"\n\"1626219\";\"Soelitair\";\"other\"\n\"1626248\";\"Sukowono\";\"main\"\n\"1626248\";\"Soekawana\";\"other\"\n\"1626248\";\"Soekowono\";\"other\"\n\"1626273\";\"Sukodono\";\"main\"\n\"1626294\";\"Sukasada\";\"main\"\n\"1626294\";\"Soekasade\";\"other\"\n\"1626294\";\"Sukasade\";\"other\"\n\"1626294\";\"Sukasadel\";\"other\"\n\"1626312\";\"Sokaraja\";\"main\"\n\"1626312\";\"Soekaradja\";\"other\"\n\"1626312\";\"Sukaradja\";\"other\"\n\"1626312\";\"Sukaraja\";\"other\"\n\"1626381\";\"Sukabumi\";\"main\"\n\"1626381\";\"Kota Sukabumi\";\"other\"\n\"1626381\";\"Soekaboemi\";\"other\"\n\"1626381\";\"Sukabumi kutha\";\"other\"\n\"1626486\";\"Srono\";\"main\"\n\"1626493\";\"Srandakan\";\"main\"\n\"1626498\";\"Sragen\";\"main\"\n\"1626498\";\"Spagen\";\"other\"\n\"1626498\";\"Sregen\";\"other\"\n\"1626542\";\"Sorong\";\"main\"\n\"1626542\";\"Kota Sorong\";\"other\"\n\"1626542\";\"Соронг\";\"other\"\n\"1626560\";\"Soreang\";\"main\"\n\"1626560\";\"Sereang\";\"other\"\n\"1626611\";\"Sondo\";\"main\"\n\"1626631\";\"Somba\";\"main\"\n\"1626649\";\"Solok\";\"main\"\n\"1626673\";\"Soko\";\"main\"\n\"1626703\";\"Soe\";\"main\"\n\"1626703\";\"Su\";\"other\"\n\"1626703\";\"Сое\";\"other\"\n\"1626748\";\"Selorok\";\"main\"\n\"1626748\";\"Slorok\";\"other\"\n\"1626754\";\"Sleman\";\"main\"\n\"1626754\";\"Suleman\";\"other\"\n\"1626758\";\"Slawi\";\"main\"\n\"1626758\";\"Selawi\";\"other\"\n\"1626758\";\"Slawj\";\"other\"\n\"1626782\";\"Siwa\";\"main\"\n\"1626801\";\"Situbondo\";\"main\"\n\"1626801\";\"Sitoebanda\";\"other\"\n\"1626801\";\"Sitoebondo\";\"other\"\n\"1626801\";\"Situbando\";\"other\"\n\"1626895\";\"Sinjai\";\"main\"\n\"1626895\";\"Sindjai\";\"other\"\n\"1626895\";\"Sinjay\";\"other\"\n\"1626899\";\"Singosari\";\"main\"\n\"1626899\";\"Singasari\";\"other\"\n\"1626899\";\"Сингосари\";\"other\"\n\"1626903\";\"Singojuruh\";\"main\"\n\"1626903\";\"Singodjoeroeh\";\"other\"\n\"1626903\";\"Singodjuruh\";\"other\"\n\"1626903\";\"Soekasari\";\"other\"\n\"1626916\";\"Singkawang\";\"main\"\n\"1626916\";\"Sekawang\";\"other\"\n\"1626920\";\"Singkarak\";\"main\"\n\"1626920\";\"Singkarah\";\"other\"\n\"1626921\";\"Sengkang\";\"main\"\n\"1626921\";\"Singkang\";\"other\"\n\"1626932\";\"Singaraja\";\"main\"\n\"1626932\";\"Boeleleng\";\"other\"\n\"1626932\";\"Boelèlèng\";\"other\"\n\"1626932\";\"Singaradja\";\"other\"\n\"1626932\";\"Singaradzha\";\"other\"\n\"1626932\";\"shigaraja\";\"other\"\n\"1626932\";\"Сингараджа\";\"other\"\n\"1626932\";\"シガラジャ\";\"other\"\n\"1626936\";\"Singaparna\";\"main\"\n\"1626995\";\"Simu\";\"main\"\n\"1626995\";\"Simoe\";\"other\"\n\"1627035\";\"Simpang\";\"main\"\n\"1627107\";\"Silo\";\"main\"\n\"1627107\";\"Sempolan\";\"other\"\n\"1627107\";\"Sila\";\"other\"\n\"1627184\";\"Sikka\";\"main\"\n\"1627184\";\"Sika\";\"other\"\n\"1627184\";\"Sika Besar\";\"other\"\n\"1627185\";\"Sijunjung\";\"main\"\n\"1627185\";\"Sidjoendioeng\";\"other\"\n\"1627185\";\"Sidjoendjoeng\";\"other\"\n\"1627185\";\"Sidjoengdjoeng\";\"other\"\n\"1627185\";\"Sidjundjung\";\"other\"\n\"1627253\";\"Sidoarjo\";\"main\"\n\"1627253\";\"Sidaardja\";\"other\"\n\"1627253\";\"Sidoardio\";\"other\"\n\"1627253\";\"Sidoardja\";\"other\"\n\"1627253\";\"Sidoardjo\";\"other\"\n\"1627253\";\"Sidohardjo\";\"other\"\n\"1627267\";\"Sidareja\";\"main\"\n\"1627267\";\"Sidaredja\";\"other\"\n\"1627357\";\"Sewon\";\"main\"\n\"1627401\";\"Seteluk\";\"main\"\n\"1627401\";\"Setelai\";\"other\"\n\"1627401\";\"Seteloek\";\"other\"\n\"1627401\";\"Setelok\";\"other\"\n\"1627459\";\"Serpong\";\"main\"\n\"1627549\";\"Serang\";\"main\"\n\"1627549\";\"Kabupaten Serang\";\"other\"\n\"1627587\";\"Sepit\";\"main\"\n\"1627610\";\"Sepatan\";\"main\"\n\"1627610\";\"Sepaitan\";\"other\"\n\"1627622\";\"Sepanjang\";\"main\"\n\"1627622\";\"Sepandjang\";\"other\"\n\"1627622\";\"Sepanjang Kidul\";\"other\"\n\"1627625\";\"Sepang\";\"main\"\n\"1627672\";\"Senori\";\"main\"\n\"1627672\";\"Djatisari\";\"other\"\n\"1627732\";\"Senduro\";\"main\"\n\"1627732\";\"Sendoera\";\"other\"\n\"1627732\";\"Sendoero\";\"other\"\n\"1627787\";\"Sempu\";\"main\"\n\"1627794\";\"Sempol\";\"main\"\n\"1627794\";\"Sempo\";\"other\"\n\"1627816\";\"Semongkat\";\"main\"\n\"1627826\";\"Semiring\";\"main\"\n\"1627826\";\"Semering\";\"other\"\n\"1627858\";\"Semboro Lor\";\"main\"\n\"1627858\";\"Semboro\";\"other\"\n\"1627874\";\"Sembalunbumbung\";\"main\"\n\"1627874\";\"Sembaloenboemboeng\";\"other\"\n\"1627877\";\"Sembakung\";\"main\"\n\"1627877\";\"Sembakoeng\";\"other\"\n\"1627877\";\"Sembaroen\";\"other\"\n\"1627896\";\"Semarang\";\"main\"\n\"1627896\";\"Kota Semarang\";\"other\"\n\"1627896\";\"Kutha Semarang\";\"other\"\n\"1627896\";\"Samarang\";\"other\"\n\"1627896\";\"Semarangas\";\"other\"\n\"1627896\";\"san bao long\";\"other\"\n\"1627896\";\"sumaran\";\"other\"\n\"1627896\";\"Семаранг\";\"other\"\n\"1627896\";\"スマラン\";\"other\"\n\"1627896\";\"三寶瓏\";\"other\"\n\"1627908\";\"Semanggi\";\"main\"\n\"1627908\";\"Samanggi\";\"other\"\n\"1627915\";\"Semamung\";\"main\"\n\"1627915\";\"Semamaeng\";\"other\"\n\"1627953\";\"Selorejo\";\"main\"\n\"1627953\";\"Seloredjo\";\"other\"\n\"1627956\";\"Selopuro\";\"main\"\n\"1627957\";\"Selong\";\"main\"\n\"1627957\";\"Balli\";\"other\"\n\"1627965\";\"Selokambang\";\"main\"\n\"1627969\";\"Selogiri\";\"main\"\n\"1628004\";\"Selebung\";\"main\"\n\"1628004\";\"Seleboeng\";\"other\"\n\"1628269\";\"Sedati\";\"main\"\n\"1628453\";\"Sawangan\";\"main\"\n\"1628472\";\"Sawahlunto\";\"main\"\n\"1628472\";\"Sawahloento\";\"other\"\n\"1628568\";\"Saruaso\";\"main\"\n\"1628884\";\"Sampit\";\"main\"\n\"1628884\";\"Tanah Hevea\";\"other\"\n\"1628897\";\"Sampang\";\"main\"\n\"1628899\";\"Sampang\";\"main\"\n\"1628899\";\"Sampand\";\"other\"\n\"1629001\";\"Samarinda\";\"main\"\n\"1629001\";\"Batoeng Panggol\";\"other\"\n\"1629001\";\"Kota Samarinda\";\"other\"\n\"1629001\";\"camarinta\";\"other\"\n\"1629001\";\"Самаринда\";\"other\"\n\"1629001\";\"சமாரிண்டா\";\"other\"\n\"1629131\";\"Salatiga\";\"main\"\n\"1629176\";\"Sakra\";\"main\"\n\"1629380\";\"Ruteng\";\"main\"\n\"1629380\";\"Roeteng\";\"other\"\n\"1629380\";\"Roeting\";\"other\"\n\"1629390\";\"Ruser\";\"main\"\n\"1629390\";\"Puser\";\"other\"\n\"1629710\";\"Rengasdengklok\";\"main\"\n\"1629749\";\"Rembang\";\"main\"\n\"1629772\";\"Rego\";\"main\"\n\"1629846\";\"Rawalo\";\"main\"\n\"1629957\";\"Rarang Selatan\";\"main\"\n\"1629957\";\"Rarang\";\"other\"\n\"1629965\";\"Rappang\";\"main\"\n\"1629965\";\"Rapang\";\"other\"\n\"1629974\";\"Rantepao\";\"main\"\n\"1630058\";\"Rangkasbitung\";\"main\"\n\"1630058\";\"Rangkas Betung\";\"other\"\n\"1630058\";\"Rangkasbitoeng\";\"other\"\n\"1630058\";\"Rangkasibitoeng\";\"other\"\n\"1630088\";\"Randudongkal\";\"main\"\n\"1630088\";\"Randoedonggal\";\"other\"\n\"1630088\";\"Randoedongkal\";\"other\"\n\"1630088\";\"Randudongkol\";\"other\"\n\"1630090\";\"Randuagung\";\"main\"\n\"1630090\";\"Randoeagoeng\";\"other\"\n\"1630200\";\"Rajapolah\";\"main\"\n\"1630200\";\"Radjapolah\";\"other\"\n\"1630200\";\"Radjapoloh\";\"other\"\n\"1630328\";\"Purwokerto\";\"main\"\n\"1630328\";\"Kota Purwokerto\";\"other\"\n\"1630328\";\"Poerwakerta\";\"other\"\n\"1630328\";\"Poerwokerto\";\"other\"\n\"1630328\";\"Purwakerta\";\"other\"\n\"1630329\";\"Purwoharjo\";\"main\"\n\"1630329\";\"Purwohardjo\";\"other\"\n\"1630333\";\"Purwodadi\";\"main\"\n\"1630333\";\"Poerwadadi\";\"other\"\n\"1630333\";\"Poerwodadi\";\"other\"\n\"1630333\";\"Purwadadi\";\"other\"\n\"1630333\";\"Purwodadi Grobogan\";\"other\"\n\"1630341\";\"Purwakarta\";\"main\"\n\"1630341\";\"Kota Purwakarta\";\"other\"\n\"1630341\";\"Poerwakarta\";\"other\"\n\"1630366\";\"Purbalingga\";\"main\"\n\"1630366\";\"Poerbalingga\";\"other\"\n\"1630366\";\"Poerbolinggo\";\"other\"\n\"1630366\";\"Purbolinggo\";\"other\"\n\"1630366\";\"Purbolingo\";\"other\"\n\"1630416\";\"Pundong\";\"main\"\n\"1630416\";\"Poendoeng\";\"other\"\n\"1630416\";\"Poendong\";\"other\"\n\"1630416\";\"Pundung\";\"other\"\n\"1630634\";\"Probolinggo\";\"main\"\n\"1630634\";\"Kota Probolinggo\";\"other\"\n\"1630634\";\"Prabalingga\";\"other\"\n\"1630634\";\"Probalingga\";\"other\"\n\"1630634\";\"Probalinggo\";\"other\"\n\"1630649\";\"Prigen\";\"main\"\n\"1630651\";\"Pretana\";\"main\"\n\"1630651\";\"Parewatana\";\"other\"\n\"1630662\";\"Praya\";\"main\"\n\"1630662\";\"Praja\";\"other\"\n\"1630662\";\"Прая\";\"other\"\n\"1630681\";\"Candi Prambanan\";\"main\"\n\"1630681\";\"Prambanan\";\"other\"\n\"1630723\";\"Poso\";\"main\"\n\"1630723\";\"Posso\";\"other\"\n\"1630723\";\"Посо\";\"other\"\n\"1630766\";\"Popnam\";\"main\"\n\"1630766\";\"Pobnam\";\"other\"\n\"1630789\";\"Pontianak\";\"main\"\n\"1630789\";\"Kota Pontianak\";\"other\"\n\"1630789\";\"Pontijanak\";\"other\"\n\"1630789\";\"kun dian\";\"other\"\n\"1630789\";\"Понтианак\";\"other\"\n\"1630789\";\"坤甸\";\"other\"\n\"1630798\";\"Ponorogo\";\"main\"\n\"1630798\";\"Panaraga\";\"other\"\n\"1630798\";\"Ponogoro\";\"other\"\n\"1630861\";\"Pondokdalem\";\"main\"\n\"1630896\";\"Poncokusumo\";\"main\"\n\"1630896\";\"Pontjokesoemo\";\"other\"\n\"1630896\";\"Pontjokoesoemo\";\"other\"\n\"1630896\";\"Pontjokusumo\";\"other\"\n\"1630935\";\"Polewali\";\"main\"\n\"1630959\";\"Pohgajih\";\"main\"\n\"1630959\";\"Pohgadjih\";\"other\"\n\"1630997\";\"Plumbon\";\"main\"\n\"1630997\";\"Pelumbon\";\"other\"\n\"1630997\";\"Ploembon\";\"other\"\n\"1631030\";\"Plampang\";\"main\"\n\"1631030\";\"Palampang\";\"other\"\n\"1631152\";\"Pimpi\";\"main\"\n\"1631271\";\"Petarukan\";\"main\"\n\"1631271\";\"Petaroekan\";\"other\"\n\"1631277\";\"Petang\";\"main\"\n\"1631393\";\"Perabumulih\";\"main\"\n\"1631393\";\"Peraboemoelih\";\"other\"\n\"1631393\";\"Praboemoelih\";\"other\"\n\"1631393\";\"Prabumuli\";\"other\"\n\"1631393\";\"Prabumulih\";\"other\"\n\"1631545\";\"Penebel\";\"main\"\n\"1631545\";\"Panebel\";\"other\"\n\"1631545\";\"Penebel Kaja\";\"other\"\n\"1631552\";\"Pendolo\";\"main\"\n\"1631552\";\"Pindblo\";\"other\"\n\"1631552\";\"Pindolo\";\"other\"\n\"1631586\";\"Penanggal\";\"main\"\n\"1631637\";\"Pemangkat\";\"main\"\n\"1631637\";\"Pamangka\";\"other\"\n\"1631637\";\"Pamangkat\";\"other\"\n\"1631648\";\"Pemalang\";\"main\"\n\"1631733\";\"Pelabuhanratu\";\"main\"\n\"1631733\";\"Palaboehan\";\"other\"\n\"1631733\";\"Palaboehanratoe\";\"other\"\n\"1631733\";\"Palabuanratu\";\"other\"\n\"1631733\";\"Palabuhan\";\"other\"\n\"1631733\";\"Palabuhanratu\";\"other\"\n\"1631733\";\"Palakoehanratoe\";\"other\"\n\"1631733\";\"Pelabuanratu\";\"other\"\n\"1631733\";\"Plabuhanratu\";\"other\"\n\"1631761\";\"Pekanbaru\";\"main\"\n\"1631761\";\"Kota Pekanbaru\";\"other\"\n\"1631761\";\"Pakanbahru\";\"other\"\n\"1631761\";\"Pakanbaroe\";\"other\"\n\"1631761\";\"Pakanbaru\";\"other\"\n\"1631766\";\"Pekalongan\";\"main\"\n\"1631766\";\"Kota Pekalongan\";\"other\"\n\"1631851\";\"Pecangaan\";\"main\"\n\"1631851\";\"Pecangakan\";\"other\"\n\"1631851\";\"Petjangaan\";\"other\"\n\"1631851\";\"Petjangakan\";\"other\"\n\"1631851\";\"Petjangkan\";\"other\"\n\"1631875\";\"Payunga\";\"main\"\n\"1631875\";\"Pajoenga\";\"other\"\n\"1631875\";\"Pajunga\";\"other\"\n\"1631905\";\"Payakumbuh\";\"main\"\n\"1631905\";\"Kota Payakumbuh\";\"other\"\n\"1631905\";\"Paja Kombo\";\"other\"\n\"1631905\";\"PajaKumbuh\";\"other\"\n\"1631905\";\"Pajakoemboeh\";\"other\"\n\"1631905\";\"Rayakumbuh\";\"other\"\n\"1631921\";\"Pemenang\";\"main\"\n\"1631921\";\"Pawenang\";\"other\"\n\"1631992\";\"Pati\";\"main\"\n\"1631992\";\"Пати\";\"other\"\n\"1631998\";\"Patemon\";\"main\"\n\"1632007\";\"Petaunan\";\"main\"\n\"1632007\";\"Pataunan\";\"other\"\n\"1632033\";\"Pasuruan\";\"main\"\n\"1632033\";\"Kota Pasuruan\";\"other\"\n\"1632033\";\"Pasoeroean\";\"other\"\n\"1632128\";\"Pasirian\";\"main\"\n\"1632189\";\"Passi\";\"main\"\n\"1632189\";\"Pasi\";\"other\"\n\"1632197\";\"Paseh\";\"main\"\n\"1632228\";\"Pasarkemis\";\"main\"\n\"1632237\";\"Pasarbaru\";\"main\"\n\"1632237\";\"Pasar Baharoe\";\"other\"\n\"1632237\";\"Pasarbaroe\";\"other\"\n\"1632276\";\"Parung\";\"main\"\n\"1632276\";\"Paroeng\";\"other\"\n\"1632334\";\"Pariaman\";\"main\"\n\"1632334\";\"Kota Pariaman\";\"other\"\n\"1632358\";\"Pare\";\"main\"\n\"1632531\";\"Panti\";\"main\"\n\"1632558\";\"Panolan\";\"main\"\n\"1632566\";\"Panji\";\"main\"\n\"1632566\";\"Pandji\";\"other\"\n\"1632566\";\"Pandji-lor\";\"other\"\n\"1632566\";\"Panji-lor\";\"other\"\n\"1632568\";\"Panjerrejo\";\"main\"\n\"1632568\";\"Pandjerredjo\";\"other\"\n\"1632568\";\"Panjerejo\";\"other\"\n\"1632654\";\"Pangkalpinang\";\"main\"\n\"1632654\";\"Merawang\";\"other\"\n\"1632654\";\"Pankal Pinang\";\"other\"\n\"1632694\";\"Pangkalanbuun\";\"main\"\n\"1632694\";\"Pangkalanboeoen\";\"other\"\n\"1632694\";\"Pangkalanbun\";\"other\"\n\"1632694\";\"Soekaboemi\";\"other\"\n\"1632694\";\"Sukabumi\";\"other\"\n\"1632724\";\"Pangkajene\";\"main\"\n\"1632724\";\"Pangkadjene\";\"other\"\n\"1632740\";\"Panggungrejo\";\"main\"\n\"1632740\";\"Panggoengredjo\";\"other\"\n\"1632740\";\"Panggungredjo\";\"other\"\n\"1632823\";\"Pandegelang\";\"main\"\n\"1632823\";\"Pandeglang\";\"other\"\n\"1632859\";\"Pandakan\";\"main\"\n\"1632859\";\"Pandaan\";\"other\"\n\"1632859\";\"Pandakara\";\"other\"\n\"1632859\";\"Pandaän\";\"other\"\n\"1632859\";\"Paodakan\";\"other\"\n\"1632861\";\"Pandak\";\"main\"\n\"1632903\";\"Panarukan\";\"main\"\n\"1632903\";\"Panaroekan\";\"other\"\n\"1632937\";\"Pamulang\";\"main\"\n\"1632948\";\"Pompanua\";\"main\"\n\"1632948\";\"Pampamua\";\"other\"\n\"1632948\";\"Pampanoea\";\"other\"\n\"1632948\";\"Pampanua\";\"other\"\n\"1632948\";\"Pompanoea\";\"other\"\n\"1632974\";\"Pameungpeuk\";\"main\"\n\"1632978\";\"Pamekasan\";\"main\"\n\"1632978\";\"Ramekasan\";\"other\"\n\"1632998\";\"Pamanukan\";\"main\"\n\"1632998\";\"Pamanoekan\";\"other\"\n\"1633034\";\"Palu\";\"main\"\n\"1633034\";\"Kabupaten Poso\";\"other\"\n\"1633034\";\"Kota Palu\";\"other\"\n\"1633034\";\"Pal\";\"other\"\n\"1633034\";\"Paloe\";\"other\"\n\"1633034\";\"Пал\";\"other\"\n\"1633050\";\"Palla\";\"main\"\n\"1633056\";\"Palimanan\";\"main\"\n\"1633068\";\"Palembaian\";\"main\"\n\"1633068\";\"Palembajan\";\"other\"\n\"1633068\";\"Palembayan\";\"other\"\n\"1633070\";\"Palembang\";\"main\"\n\"1633070\";\"Kota Palembang\";\"other\"\n\"1633070\";\"Palembangas\";\"other\"\n\"1633070\";\"balymbanj\";\"other\"\n\"1633070\";\"ju gang\";\"other\"\n\"1633070\";\"parenban\";\"other\"\n\"1633070\";\"Палембанг\";\"other\"\n\"1633070\";\"باليمبانج\";\"other\"\n\"1633070\";\"パレンバン\";\"other\"\n\"1633070\";\"巨港\";\"other\"\n\"1633094\";\"Palattae\";\"main\"\n\"1633094\";\"Palatae\";\"other\"\n\"1633118\";\"Palangkaraya\";\"main\"\n\"1633118\";\"Kota Palangka Raya\";\"other\"\n\"1633118\";\"Pahandoet\";\"other\"\n\"1633118\";\"Pahandut\";\"other\"\n\"1633118\";\"Palangka Raya\";\"other\"\n\"1633118\";\"Palangkaraja\";\"other\"\n\"1633118\";\"Plangkaraja\";\"other\"\n\"1633118\";\"pa lang ka la ya\";\"other\"\n\"1633118\";\"帕朗卡拉亚\";\"other\"\n\"1633133\";\"Palakka\";\"main\"\n\"1633133\";\"Palaka\";\"other\"\n\"1633182\";\"Pakisaji\";\"main\"\n\"1633182\";\"Pakisadji\";\"other\"\n\"1633182\";\"Pakisadji l\";\"other\"\n\"1633293\";\"Pagelaran\";\"main\"\n\"1633293\";\"Pagelran\";\"other\"\n\"1633308\";\"Pagaralam\";\"main\"\n\"1633308\";\"Pageralam\";\"other\"\n\"1633317\";\"Pagak\";\"main\"\n\"1633375\";\"Padangpanjang\";\"main\"\n\"1633375\";\"Padangpandjang\";\"other\"\n\"1633375\";\"Pandangrandjang\";\"other\"\n\"1633399\";\"Padangan\";\"main\"\n\"1633419\";\"Padang\";\"main\"\n\"1633419\";\"Kota Padang\";\"other\"\n\"1633419\";\"Паданг\";\"other\"\n\"1633442\";\"Paciran\";\"main\"\n\"1633442\";\"Pachiran\";\"other\"\n\"1633442\";\"Patjiran\";\"other\"\n\"1633462\";\"Pacar\";\"main\"\n\"1633462\";\"Paca\";\"other\"\n\"1633462\";\"Patja\";\"other\"\n\"1633828\";\"Numba\";\"main\"\n\"1633828\";\"Noemba\";\"other\"\n\"1633857\";\"Ntonggu\";\"main\"\n\"1633857\";\"Ntonggoe\";\"other\"\n\"1633859\";\"Ntoke\";\"main\"\n\"1633900\";\"Nogosari\";\"main\"\n\"1633922\";\"Nita\";\"main\"\n\"1633986\";\"Ngunut\";\"main\"\n\"1633986\";\"Ngoenoet\";\"other\"\n\"1634000\";\"Ngrejo\";\"main\"\n\"1634000\";\"Ngredjo\";\"other\"\n\"1634010\";\"Ngoro\";\"main\"\n\"1634010\";\"Ngara\";\"other\"\n\"1634039\";\"Ngliron\";\"main\"\n\"1634069\";\"Nggalak\";\"main\"\n\"1634092\";\"Ngebruk\";\"main\"\n\"1634092\";\"Ngebroek\";\"other\"\n\"1634098\";\"Ngawi\";\"main\"\n\"1634100\";\"Ngawen\";\"main\"\n\"1634131\";\"Nganjuk\";\"main\"\n\"1634131\";\"Ngandjoek\";\"other\"\n\"1634131\";\"Ngandjuk\";\"other\"\n\"1634235\";\"Nele\";\"main\"\n\"1634235\";\"Nela\";\"other\"\n\"1634266\";\"Negara\";\"main\"\n\"1634273\";\"Nebe\";\"main\"\n\"1634282\";\"Ndano\";\"main\"\n\"1634336\";\"Narmada\";\"main\"\n\"1634352\";\"Napu\";\"main\"\n\"1634352\";\"Napoe\";\"other\"\n\"1634432\";\"Nangaroro\";\"main\"\n\"1634458\";\"Nangalimang\";\"main\"\n\"1634458\";\"Nangalima\";\"other\"\n\"1634460\";\"Nangalili\";\"main\"\n\"1634460\";\"Nangalele\";\"other\"\n\"1634484\";\"Nangahale\";\"main\"\n\"1634614\";\"Nabire\";\"main\"\n\"1634614\";\"Nabarie\";\"other\"\n\"1634668\";\"Muer\";\"main\"\n\"1634668\";\"Moer\";\"other\"\n\"1634668\";\"Mur\";\"other\"\n\"1634678\";\"Muntok\";\"main\"\n\"1634678\";\"Mentok\";\"other\"\n\"1634680\";\"Muntilan\";\"main\"\n\"1634680\";\"Moentilan\";\"other\"\n\"1634710\";\"Munduk\";\"main\"\n\"1634710\";\"Moendoek\";\"other\"\n\"1634710\";\"Мундук\";\"other\"\n\"1634718\";\"Muncar\";\"main\"\n\"1634718\";\"Moentjar\";\"other\"\n\"1634718\";\"Muntjar\";\"other\"\n\"1634749\";\"Mukusaki\";\"main\"\n\"1634749\";\"Moekoe Saki\";\"other\"\n\"1634754\";\"Mujur\";\"main\"\n\"1634754\";\"Moedjoer\";\"other\"\n\"1634754\";\"Mudjur\";\"other\"\n\"1634954\";\"Mranggen\";\"main\"\n\"1635076\";\"Molobulahe\";\"main\"\n\"1635076\";\"Moelomboelahe\";\"other\"\n\"1635076\";\"Molomboelahe\";\"other\"\n\"1635076\";\"Molombulahe\";\"other\"\n\"1635087\";\"Molibagu\";\"main\"\n\"1635087\";\"Malibagu\";\"other\"\n\"1635087\";\"Molibagoe\";\"other\"\n\"1635087\";\"Molobagoe\";\"other\"\n\"1635111\";\"Mojokerto\";\"main\"\n\"1635111\";\"Kota Mojokerto\";\"other\"\n\"1635111\";\"Madjakerta\";\"other\"\n\"1635111\";\"Modjokerto\";\"other\"\n\"1635116\";\"Mojoagung\";\"main\"\n\"1635116\";\"Madja agoeng\";\"other\"\n\"1635116\";\"Madjaagung\";\"other\"\n\"1635116\";\"Modjoagoeng\";\"other\"\n\"1635116\";\"Modjoagung\";\"other\"\n\"1635116\";\"Mojoangung\";\"other\"\n\"1635164\";\"Mlonggo\";\"main\"\n\"1635283\";\"Metro\";\"main\"\n\"1635283\";\"Kota Metro\";\"other\"\n\"1635283\";\"Metra\";\"other\"\n\"1635283\";\"Метро\";\"other\"\n\"1635342\";\"Mertoyudan\";\"main\"\n\"1635342\";\"Mertajoedan\";\"other\"\n\"1635342\";\"Mertojoedan\";\"other\"\n\"1635342\";\"Mertojudan\";\"other\"\n\"1635548\";\"Menganti\";\"main\"\n\"1635548\";\"Meganti\";\"other\"\n\"1635569\";\"Mendenrejo\";\"main\"\n\"1635569\";\"Mendenredjo\";\"other\"\n\"1635660\";\"Melati\";\"main\"\n\"1635660\";\"Mlati\";\"other\"\n\"1635767\";\"Mayong\";\"main\"\n\"1635767\";\"Majong\";\"other\"\n\"1635777\";\"Mayang\";\"main\"\n\"1635777\";\"Majang\";\"other\"\n\"1635810\";\"Mauponggo\";\"main\"\n\"1635810\";\"Maoeponggo\";\"other\"\n\"1635811\";\"Maunura\";\"main\"\n\"1635811\";\"Manoeran\";\"other\"\n\"1635811\";\"Maoenoera\";\"other\"\n\"1635813\";\"Maundai\";\"main\"\n\"1635813\";\"Maoe Ndai\";\"other\"\n\"1635815\";\"Maumere\";\"main\"\n\"1635815\";\"Maoemere\";\"other\"\n\"1635815\";\"Maomere\";\"other\"\n\"1635815\";\"Mauniere\";\"other\"\n\"1635830\";\"Matur\";\"main\"\n\"1635830\";\"Matoer\";\"other\"\n\"1635882\";\"Mataram\";\"main\"\n\"1635882\";\"Kota Mataram\";\"other\"\n\"1635882\";\"Mataram-Lombok\";\"other\"\n\"1635882\";\"Матарам\";\"other\"\n\"1635968\";\"Masbagik\";\"main\"\n\"1635984\";\"Masamba\";\"main\"\n\"1635984\";\"Masambe\";\"other\"\n\"1636007\";\"Maronge\";\"main\"\n\"1636007\";\"Maroenge\";\"other\"\n\"1636007\";\"Maroengi\";\"other\"\n\"1636007\";\"Marunge\";\"other\"\n\"1636022\";\"Martapura\";\"main\"\n\"1636022\";\"Martapoera\";\"other\"\n\"1636045\";\"Buakayu\";\"main\"\n\"1636045\";\"Boeakajoe\";\"other\"\n\"1636045\";\"Maroang\";\"other\"\n\"1636045\";\"Maroangin\";\"other\"\n\"1636045\";\"Maroanging\";\"other\"\n\"1636104\";\"Maria\";\"main\"\n\"1636104\";\"Maria 3\";\"other\"\n\"1636106\";\"Maria\";\"main\"\n\"1636106\";\"Maria 1\";\"other\"\n\"1636121\";\"Margasari\";\"main\"\n\"1636121\";\"Margosari\";\"other\"\n\"1636125\";\"Margahayukencana\";\"main\"\n\"1636125\";\"Margahajoe\";\"other\"\n\"1636125\";\"Margahaju\";\"other\"\n\"1636125\";\"Margahayu\";\"other\"\n\"1636308\";\"Manokwari\";\"main\"\n\"1636308\";\"Manokvari\";\"other\"\n\"1636308\";\"Menoekwari\";\"other\"\n\"1636308\";\"manokuwari\";\"other\"\n\"1636308\";\"Маноквари\";\"other\"\n\"1636308\";\"マノクワリ\";\"other\"\n\"1636322\";\"Manismata\";\"main\"\n\"1636333\";\"Maninjau\";\"main\"\n\"1636333\";\"Manindjau\";\"other\"\n\"1636333\";\"Maninyau\";\"other\"\n\"1636364\";\"Mangli\";\"main\"\n\"1636367\";\"Mangkutana\";\"main\"\n\"1636367\";\"Mangkoetana\";\"other\"\n\"1636367\";\"Moengkotna\";\"other\"\n\"1636426\";\"Manggar\";\"main\"\n\"1636439\";\"Mangaran\";\"main\"\n\"1636507\";\"Mandahara\";\"main\"\n\"1636507\";\"Mendahara\";\"other\"\n\"1636544\";\"Manado\";\"main\"\n\"1636544\";\"Kota Manado\";\"other\"\n\"1636544\";\"Menado\";\"other\"\n\"1636544\";\"meunado\";\"other\"\n\"1636544\";\"Манадо\";\"other\"\n\"1636544\";\"므나도\";\"other\"\n\"1636556\";\"Mamuju\";\"main\"\n\"1636556\";\"Mamoedjoe\";\"other\"\n\"1636556\";\"Mamudju\";\"other\"\n\"1636601\";\"Banjar Mambalkajanan\";\"main\"\n\"1636601\";\"Mambal\";\"other\"\n\"1636601\";\"Mambat\";\"other\"\n\"1636607\";\"Mamasa\";\"main\"\n\"1636663\";\"Malili\";\"main\"\n\"1636722\";\"Malang\";\"main\"\n\"1636722\";\"Kabupaten Malang\";\"other\"\n\"1636722\";\"Kota Malang\";\"other\"\n\"1636722\";\"Maland\";\"other\"\n\"1636722\";\"Маланг\";\"other\"\n\"1636798\";\"Makale\";\"main\"\n\"1636798\";\"Makaie\";\"other\"\n\"1636806\";\"Majene\";\"main\"\n\"1636806\";\"Madjene\";\"other\"\n\"1636808\";\"Majenang\";\"main\"\n\"1636808\";\"Madjenang\";\"other\"\n\"1636816\";\"Majalengka\";\"main\"\n\"1636816\";\"Madjalengka\";\"other\"\n\"1636873\";\"Maguan\";\"main\"\n\"1636873\";\"Magoean\";\"other\"\n\"1636879\";\"Magepanda\";\"main\"\n\"1636879\";\"Mag+z Pandan\";\"other\"\n\"1636879\";\"Mag+¼ Pandan\";\"other\"\n\"1636884\";\"Magelang\";\"main\"\n\"1636884\";\"Kota Magelang\";\"other\"\n\"1636884\";\"Магеланг\";\"other\"\n\"1636906\";\"Maesan\";\"main\"\n\"1636930\";\"Madiun\";\"main\"\n\"1636930\";\"Kota Madiun\";\"other\"\n\"1636930\";\"Madioen\";\"other\"\n\"1637001\";\"Luwuk\";\"main\"\n\"1637001\";\"Loewoek\";\"other\"\n\"1637090\";\"Lumajang\";\"main\"\n\"1637090\";\"Kabupaten Lumajang\";\"other\"\n\"1637090\";\"Loemadjang\";\"other\"\n\"1637090\";\"Lumadjang\";\"other\"\n\"1637158\";\"Lubuklinggau\";\"main\"\n\"1637158\";\"Kota Lubuklinggau\";\"other\"\n\"1637158\";\"Loeboeklinggau\";\"other\"\n\"1637158\";\"Lubuklinggao\";\"other\"\n\"1637193\";\"Lubukbergalung\";\"main\"\n\"1637193\";\"Lubukbargalung\";\"other\"\n\"1637197\";\"Lubukalung\";\"main\"\n\"1637197\";\"Loeboekaloeng\";\"other\"\n\"1637255\";\"Lopokloka\";\"main\"\n\"1637255\";\"Lopok\";\"other\"\n\"1637426\";\"Lolak\";\"main\"\n\"1637479\";\"Lodoyo\";\"main\"\n\"1637479\";\"Lodojo\";\"other\"\n\"1637510\";\"Loa Janan\";\"main\"\n\"1637510\";\"Loa Djanan\";\"other\"\n\"1637651\";\"Limboto\";\"main\"\n\"1637651\";\"Limbotto\";\"other\"\n\"1638030\";\"Lemito\";\"main\"\n\"1638030\";\"Leinito\";\"other\"\n\"1638063\";\"Lembang\";\"main\"\n\"1638063\";\"Lembang 1\";\"other\"\n\"1638063\";\"Lembange\";\"other\"\n\"1638063\";\"Лембанге\";\"other\"\n\"1638131\";\"Lela\";\"main\"\n\"1638138\";\"Lekong\";\"main\"\n\"1638138\";\"Mapin Lekong\";\"other\"\n\"1638142\";\"Lekebai\";\"main\"\n\"1638182\";\"Ledokombo\";\"main\"\n\"1638182\";\"Ledokamba 1\";\"other\"\n\"1638217\";\"Lebaksiu\";\"main\"\n\"1638217\";\"Lebaksioe\";\"other\"\n\"1638265\";\"Lawonda\";\"main\"\n\"1638284\";\"Lawang\";\"main\"\n\"1638352\";\"Lasem\";\"main\"\n\"1638352\";\"Binangun\";\"other\"\n\"1638368\";\"Larompong\";\"main\"\n\"1638562\";\"Lamongan\";\"main\"\n\"1638754\";\"Laikit, Laikit II (Dimembe)\";\"main\"\n\"1638754\";\"Deikit\";\"other\"\n\"1638754\";\"Laikit 1\";\"other\"\n\"1638754\";\"Laikit Dimembe\";\"other\"\n\"1638754\";\"Laikit Matungkas\";\"other\"\n\"1638775\";\"Lahat\";\"main\"\n\"1638847\";\"Labuhanmapin\";\"main\"\n\"1638847\";\"Laboe Mapin\";\"other\"\n\"1638847\";\"Laboean Mapin\";\"other\"\n\"1638847\";\"Laboehan Mapin\";\"other\"\n\"1638847\";\"Labu Mapin\";\"other\"\n\"1638847\";\"Mapin\";\"other\"\n\"1638850\";\"Labuhankananga\";\"main\"\n\"1638850\";\"Kananga\";\"other\"\n\"1638850\";\"Lab Kananga\";\"other\"\n\"1638850\";\"Laboe Kananga\";\"other\"\n\"1638850\";\"Laboehan Kananga\";\"other\"\n\"1638850\";\"Labu Kananga\";\"other\"\n\"1638868\";\"Labuhanbajo\";\"main\"\n\"1638868\";\"Badjo\";\"other\"\n\"1638868\";\"Laboean Bajo\";\"other\"\n\"1638868\";\"Laboehanbadjo\";\"other\"\n\"1638868\";\"Labuanbadzho\";\"other\"\n\"1638868\";\"Labuanbajo\";\"other\"\n\"1638868\";\"Labuhanbadjo\";\"other\"\n\"1638868\";\"Лабуанбаджо\";\"other\"\n\"1638870\";\"Labuhan\";\"main\"\n\"1638870\";\"Laboean\";\"other\"\n\"1638870\";\"Laboehan\";\"other\"\n\"1638870\";\"Labuan\";\"other\"\n\"1638939\";\"Komi\";\"main\"\n\"1638939\";\"Kjomi\";\"other\"\n\"1638939\";\"Kyomi\";\"other\"\n\"1638981\";\"Kutoarjo\";\"main\"\n\"1638981\";\"Koeta'ardja\";\"other\"\n\"1638981\";\"Koeta’ardja\";\"other\"\n\"1638981\";\"Koetoardjo\";\"other\"\n\"1638981\";\"Kutoardjo\";\"other\"\n\"1639000\";\"Kute\";\"main\"\n\"1639000\";\"Koeta\";\"other\"\n\"1639000\";\"Kuta\";\"other\"\n\"1639002\";\"Kuta\";\"main\"\n\"1639002\";\"Koeta\";\"other\"\n\"1639002\";\"Кута\";\"other\"\n\"1639094\";\"Kuningan\";\"main\"\n\"1639094\";\"Koeningan\";\"other\"\n\"1639215\";\"Kudus\";\"main\"\n\"1639215\";\"Koedoes\";\"other\"\n\"1639246\";\"Kubu\";\"main\"\n\"1639246\";\"Koeboe\";\"other\"\n\"1639286\";\"Kualatungkal\";\"main\"\n\"1639286\";\"Koealatoengkal\";\"other\"\n\"1639304\";\"Kualakapuas\";\"main\"\n\"1639304\";\"Koealakapoeas\";\"other\"\n\"1639337\";\"Kroya\";\"main\"\n\"1639337\";\"Kroja\";\"other\"\n\"1639356\";\"Krian\";\"main\"\n\"1639356\";\"Kerian\";\"other\"\n\"1639356\";\"Krijan\";\"other\"\n\"1639362\";\"Kresek\";\"main\"\n\"1639362\";\"Keresek\";\"other\"\n\"1639431\";\"Kraksaan\";\"main\"\n\"1639431\";\"Kraksahan\";\"other\"\n\"1639431\";\"Kraksan\";\"other\"\n\"1639500\";\"Kotamobagu\";\"main\"\n\"1639500\";\"Kotamobago\";\"other\"\n\"1639500\";\"Kotamobagoe\";\"other\"\n\"1639500\";\"Kotamobogoe\";\"other\"\n\"1639524\";\"Kotabumi\";\"main\"\n\"1639524\";\"Kotaboemi\";\"other\"\n\"1639624\";\"Kopang Satu\";\"main\"\n\"1639624\";\"Kopang\";\"other\"\n\"1639693\";\"Komodo\";\"main\"\n\"1639693\";\"Komodo sala\";\"other\"\n\"1639693\";\"Pulau Komodo\";\"other\"\n\"1639693\";\"ke mo duo dao\";\"other\"\n\"1639693\";\"Комодо\";\"other\"\n\"1639693\";\"科莫多島\";\"other\"\n\"1639850\";\"Klungkung\";\"main\"\n\"1639850\";\"Kloengkoeng\";\"other\"\n\"1639900\";\"Klaten\";\"main\"\n\"1639900\";\"Kabupaten Klaten\";\"other\"\n\"1639900\";\"Klathen\";\"other\"\n\"1639925\";\"Klangenan\";\"main\"\n\"1640044\";\"Kijang\";\"main\"\n\"1640044\";\"Goenoengkidjang\";\"other\"\n\"1640044\";\"Gunungkidjang\";\"other\"\n\"1640044\";\"Gunungkijang\";\"other\"\n\"1640057\";\"Kidal\";\"main\"\n\"1640101\";\"Ketowan\";\"main\"\n\"1640101\";\"Ketoan\";\"other\"\n\"1640138\";\"Ketanggungan\";\"main\"\n\"1640138\";\"Ketanggoengan\";\"other\"\n\"1640154\";\"Kesugihan\";\"main\"\n\"1640154\";\"Kasugihan\";\"other\"\n\"1640154\";\"Kesoegian\";\"other\"\n\"1640154\";\"Kesoegihan\";\"other\"\n\"1640169\";\"Kesamben\";\"main\"\n\"1640185\";\"Kertosono\";\"main\"\n\"1640185\";\"Pelem\";\"other\"\n\"1640185\";\"Pĕlĕm\";\"other\"\n\"1640187\";\"Kertosari\";\"main\"\n\"1640296\";\"Kepanjen\";\"main\"\n\"1640296\";\"Kepandjen\";\"other\"\n\"1640344\";\"Kendari\";\"main\"\n\"1640344\";\"Kabupaten Konawe\";\"other\"\n\"1640354\";\"Kencong\";\"main\"\n\"1640354\";\"Kentjong\";\"other\"\n\"1640354\";\"Ketjong\";\"other\"\n\"1640392\";\"Kemiri\";\"main\"\n\"1640435\";\"Kembang\";\"main\"\n\"1640576\";\"Kefamenanu\";\"main\"\n\"1640576\";\"Kefannanoe\";\"other\"\n\"1640576\";\"Kefannanu\";\"other\"\n\"1640576\";\"Kefannau\";\"other\"\n\"1640581\";\"Kedungwuni\";\"main\"\n\"1640581\";\"Kedoengwoeni\";\"other\"\n\"1640585\";\"Kedungwaru\";\"main\"\n\"1640587\";\"Kedungtuban\";\"main\"\n\"1640587\";\"Kedoengtoeban\";\"other\"\n\"1640587\";\"Kedoengtóeban\";\"other\"\n\"1640600\";\"Kedungpeluk\";\"main\"\n\"1640603\";\"Kedunglo\";\"main\"\n\"1640658\";\"Kediri\";\"main\"\n\"1640660\";\"Kediri\";\"main\"\n\"1640660\";\"Kota Kediri\";\"other\"\n\"1640668\";\"Kedewan\";\"main\"\n\"1640668\";\"Kadewan\";\"other\"\n\"1640755\";\"Kebonarun\";\"main\"\n\"1640755\";\"Kebonarum\";\"other\"\n\"1640765\";\"Kebomas\";\"main\"\n\"1640778\";\"Kebasen\";\"main\"\n\"1640778\";\"Kabasen\";\"other\"\n\"1640902\";\"Kawalu\";\"main\"\n\"1640902\";\"Kawaloe\";\"other\"\n\"1640972\";\"Katabu\";\"main\"\n\"1640972\";\"Kahoboe\";\"other\"\n\"1640972\";\"Kataboe\";\"other\"\n\"1641017\";\"Kasiguncu\";\"main\"\n\"1641017\";\"Kasigoentjoe\";\"other\"\n\"1641017\";\"Kasiguntju\";\"other\"\n\"1641047\";\"Karumbu\";\"main\"\n\"1641047\";\"Karoemboe\";\"other\"\n\"1641184\";\"Karangsembung\";\"main\"\n\"1641184\";\"Karangsemboeng\";\"other\"\n\"1641301\";\"Karangasem\";\"main\"\n\"1641301\";\"Amlapura\";\"other\"\n\"1641301\";\"Denpasar\";\"other\"\n\"1641301\";\"Karangasem Amlapura\";\"other\"\n\"1641301\";\"Денпасар\";\"other\"\n\"1641306\";\"Karangarjo\";\"main\"\n\"1641306\";\"Karangardjo\";\"other\"\n\"1641306\";\"Karangharjo Kidul\";\"other\"\n\"1641333\";\"Karanganom\";\"main\"\n\"1641342\";\"Karangampel\";\"main\"\n\"1641399\";\"Kapuan\";\"main\"\n\"1641399\";\"Kapoean\";\"other\"\n\"1641407\";\"Kapongan\";\"main\"\n\"1641497\";\"Kanigoro\";\"main\"\n\"1641747\";\"Kambu\";\"main\"\n\"1641747\";\"Kamboe\";\"other\"\n\"1641792\";\"Kamal\";\"main\"\n\"1641792\";\"Kama\";\"other\"\n\"1641792\";\"Kamal'\";\"other\"\n\"1641792\";\"Камаль\";\"other\"\n\"1641877\";\"Kalipuro\";\"main\"\n\"1641881\";\"Kalipare\";\"main\"\n\"1641917\";\"Kalijeruk\";\"main\"\n\"1641917\";\"Kalidjeruk\";\"other\"\n\"1641939\";\"Kalidawir\";\"main\"\n\"1641977\";\"Kalianget\";\"main\"\n\"1642168\";\"Kahale\";\"main\"\n\"1642224\";\"Kademangan\";\"main\"\n\"1642317\";\"Juwana\";\"main\"\n\"1642317\";\"Djoeana\";\"other\"\n\"1642317\";\"Djoewana\";\"other\"\n\"1642317\";\"Djoewono\";\"other\"\n\"1642317\";\"Djuana\";\"other\"\n\"1642317\";\"Djuwana\";\"other\"\n\"1642317\";\"Djuwono\";\"other\"\n\"1642317\";\"Joana\";\"other\"\n\"1642317\";\"Juana\";\"other\"\n\"1642414\";\"Jombang\";\"main\"\n\"1642414\";\"Djombang\";\"other\"\n\"1642414\";\"Kabupaten Jombang\";\"other\"\n\"1642437\";\"Jogonalan\";\"main\"\n\"1642437\";\"Djogonalan\";\"other\"\n\"1642467\";\"Jimbaran\";\"main\"\n\"1642467\";\"Djimbaran\";\"other\"\n\"1642467\";\"Dzhimbaran\";\"other\"\n\"1642467\";\"Джимбаран\";\"other\"\n\"1642514\";\"Jeruklegi\";\"main\"\n\"1642514\";\"Djeroeklegi\";\"other\"\n\"1642514\";\"Djeruklegi\";\"other\"\n\"1642514\";\"Djeruklegi-wetan\";\"other\"\n\"1642566\";\"Jenggawah\";\"main\"\n\"1642566\";\"Djanggawah\";\"other\"\n\"1642566\";\"Djenggawah\";\"other\"\n\"1642566\";\"Djenggawak\";\"other\"\n\"1642588\";\"Jember\";\"main\"\n\"1642588\";\"Djember\";\"other\"\n\"1642617\";\"Jelbuk\";\"main\"\n\"1642617\";\"Djelboek\";\"other\"\n\"1642617\";\"Djelbuk\";\"other\"\n\"1642617\";\"Djelebuk\";\"other\"\n\"1642628\";\"Jekulo\";\"main\"\n\"1642628\";\"Djekoela\";\"other\"\n\"1642628\";\"Djekoelo\";\"other\"\n\"1642628\";\"Djekolo\";\"other\"\n\"1642628\";\"Djekulo\";\"other\"\n\"1642628\";\"Tenggeles\";\"other\"\n\"1642684\";\"Jatiwangi\";\"main\"\n\"1642684\";\"Djatiwangi\";\"other\"\n\"1642691\";\"Jatiroto\";\"main\"\n\"1642691\";\"Djatirata\";\"other\"\n\"1642691\";\"Djatiroto\";\"other\"\n\"1642692\";\"Jatiroto\";\"main\"\n\"1642692\";\"Djatiroto\";\"other\"\n\"1642717\";\"Jatilawang\";\"main\"\n\"1642717\";\"Djatilawang\";\"other\"\n\"1642717\";\"Djatitawang\";\"other\"\n\"1642726\";\"Jatibarang\";\"main\"\n\"1642726\";\"Djatibarang\";\"other\"\n\"1642754\";\"Jaten\";\"main\"\n\"1642754\";\"Djaten\";\"other\"\n\"1642765\";\"Jarangan\";\"main\"\n\"1642765\";\"Djarangan\";\"other\"\n\"1642858\";\"Jambi\";\"main\"\n\"1642858\";\"Djambi\";\"other\"\n\"1642858\";\"Dzhambi\";\"other\"\n\"1642858\";\"Sriindrapura\";\"other\"\n\"1642858\";\"Telanaipura\";\"other\"\n\"1642858\";\"jamby\";\"other\"\n\"1642858\";\"Джамби\";\"other\"\n\"1642858\";\"جامبي\";\"other\"\n\"1642892\";\"Jalang\";\"main\"\n\"1642892\";\"Djalang\";\"other\"\n\"1642892\";\"Djaling\";\"other\"\n\"1642892\";\"Jaling\";\"other\"\n\"1642911\";\"Jakarta\";\"main\"\n\"1642911\";\"Batavia\";\"other\"\n\"1642911\";\"Cakarta\";\"other\"\n\"1642911\";\"Djakarta\";\"other\"\n\"1642911\";\"Djogkarta\";\"other\"\n\"1642911\";\"Dki Jakarta\";\"other\"\n\"1642911\";\"Dzakarta\";\"other\"\n\"1642911\";\"Dzhakarta\";\"other\"\n\"1642911\";\"Dżakarta\";\"other\"\n\"1642911\";\"Džakarta\";\"other\"\n\"1642911\";\"Gakarto\";\"other\"\n\"1642911\";\"Giakarta\";\"other\"\n\"1642911\";\"Iacarta - Jakarta\";\"other\"\n\"1642911\";\"JKT\";\"other\"\n\"1642911\";\"Jacarta\";\"other\"\n\"1642911\";\"Jogkarta\";\"other\"\n\"1642911\";\"Tzakarta\";\"other\"\n\"1642911\";\"Yakarta\";\"other\"\n\"1642911\";\"cakarta\";\"other\"\n\"1642911\";\"g'qrth\";\"other\"\n\"1642911\";\"jakaleuta\";\"other\"\n\"1642911\";\"jakarta\";\"other\"\n\"1642911\";\"jakaruta\";\"other\"\n\"1642911\";\"jakrta\";\"other\"\n\"1642911\";\"ya jia da\";\"other\"\n\"1642911\";\"Ĝakarto\";\"other\"\n\"1642911\";\"Τζακάρτα\";\"other\"\n\"1642911\";\"Џакарта\";\"other\"\n\"1642911\";\"Джакарта\";\"other\"\n\"1642911\";\"ג'קרטה\";\"other\"\n\"1642911\";\"جاكارتا\";\"other\"\n\"1642911\";\"جاكرتا\";\"other\"\n\"1642911\";\"جاکارتا\";\"other\"\n\"1642911\";\"जकार्ता\";\"other\"\n\"1642911\";\"জাকার্তা\";\"other\"\n\"1642911\";\"จาการ์ตา\";\"other\"\n\"1642911\";\"ཊ་ཁར་ཏ\";\"other\"\n\"1642911\";\"ጃካርታ\";\"other\"\n\"1642911\";\"ジャカルタ\";\"other\"\n\"1642911\";\"雅加达\";\"other\"\n\"1642911\";\"자카르타\";\"other\"\n\"1642996\";\"Isimu\";\"main\"\n\"1642996\";\"Isimoe\";\"other\"\n\"1643078\";\"Indramayu\";\"main\"\n\"1643078\";\"Indramajoe\";\"other\"\n\"1643078\";\"Indramaju\";\"other\"\n\"1643160\";\"Ili\";\"main\"\n\"1643684\";\"Gumuk Tengah\";\"main\"\n\"1643684\";\"Goemoek\";\"other\"\n\"1643684\";\"Gumuk\";\"other\"\n\"1643730\";\"Gubugklakah Barat\";\"main\"\n\"1643730\";\"Gubukklakah\";\"other\"\n\"1643761\";\"Grogol\";\"main\"\n\"1643776\";\"Gresik\";\"main\"\n\"1643776\";\"Geresik\";\"other\"\n\"1643776\";\"Gersik\";\"other\"\n\"1643776\";\"Grise\";\"other\"\n\"1643776\";\"Grisee\";\"other\"\n\"1643776\";\"Grissee\";\"other\"\n\"1643837\";\"Gorontalo\";\"main\"\n\"1643837\";\"Горонтало\";\"other\"\n\"1643896\";\"Gondanglegi Wetan\";\"main\"\n\"1643896\";\"Gondanglegi-wetan\";\"other\"\n\"1643898\";\"Gongdanglegi Kulon\";\"main\"\n\"1643898\";\"Gondanglegi\";\"other\"\n\"1643898\";\"Gondangtegi\";\"other\"\n\"1643920\";\"Gombong\";\"main\"\n\"1643981\";\"Godean\";\"main\"\n\"1643981\";\"Godejan\";\"other\"\n\"1644030\";\"Gisiliba\";\"main\"\n\"1644030\";\"Gisi\";\"other\"\n\"1644079\";\"Gilimanuk\";\"main\"\n\"1644079\";\"Gilimanoek\";\"other\"\n\"1644178\";\"Genteng\";\"main\"\n\"1644178\";\"Genteng-kulon\";\"other\"\n\"1644321\";\"Gedog Wetan\";\"main\"\n\"1644321\";\"Gedokwetan\";\"other\"\n\"1644349\";\"Gedangan\";\"main\"\n\"1644360\";\"Gebog\";\"main\"\n\"1644451\";\"Garahan\";\"main\"\n\"1644451\";\"Garaan\";\"other\"\n\"1644451\";\"Garaän\";\"other\"\n\"1644488\";\"Gandusari\";\"main\"\n\"1644488\";\"Gandoesari\";\"other\"\n\"1644522\";\"Gampengrejo\";\"main\"\n\"1644522\";\"Gampeng\";\"other\"\n\"1644522\";\"Gampengredja\";\"other\"\n\"1644522\";\"Gampengredjo\";\"other\"\n\"1644557\";\"Gambiran Satu\";\"main\"\n\"1644557\";\"Gambiran\";\"other\"\n\"1644579\";\"Galunggalung\";\"main\"\n\"1644579\";\"Pambauang\";\"other\"\n\"1644583\";\"Kalumpang\";\"main\"\n\"1644583\";\"Galoempang\";\"other\"\n\"1644583\";\"Galumpang\";\"other\"\n\"1644583\";\"Goloempang\";\"other\"\n\"1644605\";\"Galesong\";\"main\"\n\"1644689\";\"Gadang\";\"main\"\n\"1644932\";\"Ende\";\"main\"\n\"1644932\";\"Endeh\";\"other\"\n\"1644932\";\"Kota Ende\";\"other\"\n\"1644979\";\"Elopada\";\"main\"\n\"1644979\";\"Ellopada\";\"other\"\n\"1645124\";\"Dumoga\";\"main\"\n\"1645124\";\"Doemoega-besar\";\"other\"\n\"1645124\";\"Doemoga\";\"other\"\n\"1645124\";\"Dumoga Besar\";\"other\"\n\"1645133\";\"Dumai\";\"main\"\n\"1645133\";\"Doemai\";\"other\"\n\"1645133\";\"Dumaj\";\"other\"\n\"1645133\";\"Kota Dumai\";\"other\"\n\"1645133\";\"Думай\";\"other\"\n\"1645154\";\"Dukuhturi\";\"main\"\n\"1645220\";\"Driyorejo\";\"main\"\n\"1645220\";\"Driaredja\";\"other\"\n\"1645220\";\"Drijoredjo\";\"other\"\n\"1645220\";\"Drioredja\";\"other\"\n\"1645220\";\"Drioredjo\";\"other\"\n\"1645220\";\"Driorejo\";\"other\"\n\"1645275\";\"Taloko\";\"main\"\n\"1645275\";\"Doro Taloko\";\"other\"\n\"1645275\";\"Dorokaloko\";\"other\"\n\"1645352\";\"Domasan\";\"main\"\n\"1645376\";\"Doko\";\"main\"\n\"1645428\";\"Diwek\";\"main\"\n\"1645518\";\"Depok\";\"main\"\n\"1645524\";\"Depok\";\"main\"\n\"1645524\";\"Depok kutha\";\"other\"\n\"1645524\";\"Depokas\";\"other\"\n\"1645524\";\"Kota Depok\";\"other\"\n\"1645524\";\"Kota Dépok\";\"other\"\n\"1645528\";\"Denpasar\";\"main\"\n\"1645528\";\"Dempasar\";\"other\"\n\"1645528\";\"Dempassar\";\"other\"\n\"1645528\";\"Denpasar Bali\";\"other\"\n\"1645528\";\"Kota Denpasar\";\"other\"\n\"1645528\";\"denpasa\";\"other\"\n\"1645528\";\"denpasaru\";\"other\"\n\"1645528\";\"Денпасар\";\"other\"\n\"1645528\";\"デンパサール\";\"other\"\n\"1645528\";\"덴파사\";\"other\"\n\"1645559\";\"Demak\";\"main\"\n\"1645559\";\"Demark\";\"other\"\n\"1645559\";\"Демак\";\"other\"\n\"1645565\";\"Delanggu\";\"main\"\n\"1645565\";\"Delanggoe\";\"other\"\n\"1645565\";\"Delangu\";\"other\"\n\"1645571\";\"Deket Wetan\";\"main\"\n\"1645707\";\"Danurejo\";\"main\"\n\"1645707\";\"Danuredjo\";\"other\"\n\"1645749\";\"Dampit\";\"main\"\n\"1645847\";\"Dadapan\";\"main\"\n\"1645875\";\"Curup\";\"main\"\n\"1645875\";\"Churup\";\"other\"\n\"1645875\";\"Tjoeroep\";\"other\"\n\"1645875\";\"Tjurup\";\"other\"\n\"1645895\";\"Curug\";\"main\"\n\"1645895\";\"Tjoeroeg\";\"other\"\n\"1645895\";\"Tjurug\";\"other\"\n\"1645901\";\"Curahtakir\";\"main\"\n\"1645901\";\"Tjurahtakir\";\"other\"\n\"1645915\";\"Cungkal\";\"main\"\n\"1645915\";\"Tjoengkal\";\"other\"\n\"1645915\";\"Tjungkal\";\"other\"\n\"1645917\";\"Cumedak\";\"main\"\n\"1645917\";\"Cumedak Satu\";\"other\"\n\"1645917\";\"Tjumedak\";\"other\"\n\"1645976\";\"Comal\";\"main\"\n\"1645976\";\"Chiomal\";\"other\"\n\"1645976\";\"Chomal\";\"other\"\n\"1645976\";\"Tjomal\";\"other\"\n\"1645978\";\"Colomadu\";\"main\"\n\"1645978\";\"Tjolomadu\";\"other\"\n\"1646034\";\"Citeureup\";\"main\"\n\"1646034\";\"Citeurep\";\"other\"\n\"1646034\";\"Tjiteureup\";\"other\"\n\"1646170\";\"Cirebon\";\"main\"\n\"1646170\";\"Cheribon\";\"other\"\n\"1646170\";\"Cirebon kutha\";\"other\"\n\"1646170\";\"Kota Cirebon\";\"other\"\n\"1646170\";\"Kutha Cirebon\";\"other\"\n\"1646170\";\"Tjerebon\";\"other\"\n\"1646170\";\"Tjeribon\";\"other\"\n\"1646170\";\"Tjirebon\";\"other\"\n\"1646194\";\"Ciputat\";\"main\"\n\"1646194\";\"Tjipoetat\";\"other\"\n\"1646194\";\"Tjipoetat 2\";\"other\"\n\"1646194\";\"Tjiputat\";\"other\"\n\"1646194\";\"Tjiputat 2\";\"other\"\n\"1646448\";\"Cimahi\";\"main\"\n\"1646448\";\"Chimahi\";\"other\"\n\"1646448\";\"Cimahi kutha\";\"other\"\n\"1646448\";\"Kota Cimahi\";\"other\"\n\"1646448\";\"Tjimahi\";\"other\"\n\"1646448\";\"Tjimaki\";\"other\"\n\"1646492\";\"Cileunyi\";\"main\"\n\"1646492\";\"Tjileunji\";\"other\"\n\"1646492\";\"Tjileunji 2\";\"other\"\n\"1646494\";\"Cileungsi\";\"main\"\n\"1646494\";\"Cileungsir\";\"other\"\n\"1646494\";\"Tjileungsir\";\"other\"\n\"1646678\";\"Cikarang\";\"main\"\n\"1646678\";\"Chikarang\";\"other\"\n\"1646678\";\"Tjikarang\";\"other\"\n\"1646698\";\"Cikampek\";\"main\"\n\"1646698\";\"Chikampek\";\"other\"\n\"1646698\";\"Tjikampek\";\"other\"\n\"1646893\";\"Cicurug\";\"main\"\n\"1646893\";\"Tjitjoeroeg\";\"other\"\n\"1646893\";\"Tjitjurug\";\"other\"\n\"1647003\";\"Cibinong\";\"main\"\n\"1647003\";\"Chibinong\";\"other\"\n\"1647003\";\"Chibinung\";\"other\"\n\"1647003\";\"Sibinonge\";\"other\"\n\"1647003\";\"Tjibinong\";\"other\"\n\"1647003\";\"Сибинонге\";\"other\"\n\"1647149\";\"Ciamis\";\"main\"\n\"1647149\";\"Chiamis\";\"other\"\n\"1647149\";\"Tjiamis\";\"other\"\n\"1647179\";\"Cepu\";\"main\"\n\"1647179\";\"Chepu\";\"other\"\n\"1647179\";\"Panolan\";\"other\"\n\"1647179\";\"Tjepoe\";\"other\"\n\"1647179\";\"Tjepu\";\"other\"\n\"1647187\";\"Ceper\";\"main\"\n\"1647187\";\"Tjeper\";\"other\"\n\"1647187\";\"Tjepper\";\"other\"\n\"1647298\";\"Caringin\";\"main\"\n\"1647298\";\"Caringin 2\";\"other\"\n\"1647298\";\"Tjaringin\";\"other\"\n\"1647370\";\"Candipuro\";\"main\"\n\"1647370\";\"Tjandipuro\";\"other\"\n\"1647383\";\"Ciampea\";\"main\"\n\"1647383\";\"Campea\";\"other\"\n\"1647383\";\"Tjampea\";\"other\"\n\"1647383\";\"Tjampea 1\";\"other\"\n\"1647394\";\"Camming\";\"main\"\n\"1647394\";\"Caming\";\"other\"\n\"1647394\";\"Tjaming\";\"other\"\n\"1647834\";\"Bulakamba\";\"main\"\n\"1647834\";\"Boelakamba\";\"other\"\n\"1647866\";\"Bukittinggi\";\"main\"\n\"1647866\";\"Fort de Kock\";\"other\"\n\"1647866\";\"Fort de Rock\";\"other\"\n\"1647866\";\"Kota Bukittinggi\";\"other\"\n\"1647866\";\"bukitingi\";\"other\"\n\"1647866\";\"ブキティンギ\";\"other\"\n\"1647930\";\"Banjar Bugbug\";\"main\"\n\"1647930\";\"Boegboeg\";\"other\"\n\"1647930\";\"Bugbug\";\"other\"\n\"1647936\";\"Buduran\";\"main\"\n\"1647991\";\"Buaran\";\"main\"\n\"1647991\";\"Boearan\";\"other\"\n\"1647991\";\"Boearan 1\";\"other\"\n\"1648011\";\"Bualu\";\"main\"\n\"1648011\";\"Boealoe\";\"other\"\n\"1648066\";\"Berbek\";\"main\"\n\"1648066\";\"Brebek\";\"other\"\n\"1648082\";\"Boyolangu\";\"main\"\n\"1648082\";\"Bojolangoe\";\"other\"\n\"1648082\";\"Bojolangu\";\"other\"\n\"1648084\";\"Boyolali\";\"main\"\n\"1648084\";\"Bajalali\";\"other\"\n\"1648084\";\"Bajalili\";\"other\"\n\"1648084\";\"Bojolali\";\"other\"\n\"1648186\";\"Bontang\";\"main\"\n\"1648186\";\"Kota Bontang\";\"other\"\n\"1648194\";\"Bunobogu\";\"main\"\n\"1648194\";\"Bonobogoe\";\"other\"\n\"1648194\";\"Bonobogu\";\"other\"\n\"1648197\";\"Bonjol\";\"main\"\n\"1648197\";\"Bondjol\";\"other\"\n\"1648266\";\"Bondowoso\";\"main\"\n\"1648266\";\"Bandawasa\";\"other\"\n\"1648266\";\"Bandowoso\";\"other\"\n\"1648266\";\"Bondawasa\";\"other\"\n\"1648340\";\"Bolaang\";\"main\"\n\"1648340\";\"Bolaang Mongondow\";\"other\"\n\"1648340\";\"Bolaangmongondou\";\"other\"\n\"1648340\";\"Bolang\";\"other\"\n\"1648340\";\"Botaang\";\"other\"\n\"1648345\";\"Bola\";\"main\"\n\"1648362\";\"Bokat\";\"main\"\n\"1648451\";\"Bojonegoro\";\"main\"\n\"1648451\";\"Bodjanegara\";\"other\"\n\"1648451\";\"Bodjonegoro\";\"other\"\n\"1648473\";\"Bogor\";\"main\"\n\"1648473\";\"Bogor kutha\";\"other\"\n\"1648473\";\"Buitenzorg\";\"other\"\n\"1648473\";\"Kota Bogor\";\"other\"\n\"1648473\";\"bwgwr\";\"other\"\n\"1648473\";\"mao wu\";\"other\"\n\"1648473\";\"Богор\";\"other\"\n\"1648473\";\"بوگور\";\"other\"\n\"1648473\";\"茂物\";\"other\"\n\"1648549\";\"Boawae\";\"main\"\n\"1648549\";\"Boawai\";\"other\"\n\"1648557\";\"Boafeo\";\"main\"\n\"1648568\";\"Blora\";\"main\"\n\"1648580\";\"Blitar\";\"main\"\n\"1648580\";\"Belitar\";\"other\"\n\"1648580\";\"Kota Blitar\";\"other\"\n\"1648636\";\"Bitung\";\"main\"\n\"1648636\";\"Bitoeng\";\"other\"\n\"1648636\";\"Kota Bitung\";\"other\"\n\"1648744\";\"Binangun\";\"main\"\n\"1648744\";\"Binangoen\";\"other\"\n\"1648759\";\"Bima\";\"main\"\n\"1648759\";\"Bim\";\"other\"\n\"1648759\";\"Бим\";\"other\"\n\"1648761\";\"Bilungala\";\"main\"\n\"1648761\";\"Biloengala\";\"other\"\n\"1648761\";\"Biloengala-timoer\";\"other\"\n\"1648761\";\"Bilongola\";\"other\"\n\"1648918\";\"Besuki\";\"main\"\n\"1648918\";\"Besoeki\";\"other\"\n\"1649150\";\"Bengkulu\";\"main\"\n\"1649150\";\"Bangkahulu\";\"other\"\n\"1649150\";\"Bengkoeloe\";\"other\"\n\"1649150\";\"Benkoelen\";\"other\"\n\"1649150\";\"Benkulen\";\"other\"\n\"1649150\";\"bnjkwlw\";\"other\"\n\"1649150\";\"ming gu lu sheng\";\"other\"\n\"1649150\";\"Бенгкулу\";\"other\"\n\"1649150\";\"بنجكولو\";\"other\"\n\"1649150\";\"明古魯省\";\"other\"\n\"1649267\";\"Belopa\";\"main\"\n\"1649378\";\"Bekasi\";\"main\"\n\"1649378\";\"Bekasi kutha\";\"other\"\n\"1649378\";\"Bekasis\";\"other\"\n\"1649378\";\"Kota Bekasi\";\"other\"\n\"1649378\";\"Бекаси\";\"other\"\n\"1649458\";\"Bebandem\";\"main\"\n\"1649493\";\"Bayan\";\"main\"\n\"1649493\";\"Bajan\";\"other\"\n\"1649575\";\"Batusangkar\";\"main\"\n\"1649575\";\"Fort Van Der Capellen\";\"other\"\n\"1649593\";\"Baturaja\";\"main\"\n\"1649593\";\"Batoeradja\";\"other\"\n\"1649593\";\"Batoerradja\";\"other\"\n\"1649593\";\"Batu Radia\";\"other\"\n\"1649593\";\"Baturadja\";\"other\"\n\"1649595\";\"Baturaden\";\"main\"\n\"1649740\";\"Batudulang\";\"main\"\n\"1649740\";\"Batoedoelang\";\"other\"\n\"1649824\";\"Batu\";\"main\"\n\"1649824\";\"Batoe\";\"other\"\n\"1649824\";\"Batyj\";\"other\"\n\"1649824\";\"Kota Batu\";\"other\"\n\"1649824\";\"Sisir\";\"other\"\n\"1649824\";\"Батый\";\"other\"\n\"1649881\";\"Batang\";\"main\"\n\"1649904\";\"Baso\";\"main\"\n\"1650005\";\"Bari\";\"main\"\n\"1650005\";\"Berit\";\"other\"\n\"1650028\";\"Baratan\";\"main\"\n\"1650064\";\"Barabai\";\"main\"\n\"1650077\";\"Banyuwangi\";\"main\"\n\"1650077\";\"Banjoewangi\";\"other\"\n\"1650077\";\"Banjuwangi\";\"other\"\n\"1650095\";\"Banyumas\";\"main\"\n\"1650095\";\"Banjoemas\";\"other\"\n\"1650095\";\"Banjumas\";\"other\"\n\"1650119\";\"Bantul\";\"main\"\n\"1650119\";\"Bantoel\";\"other\"\n\"1650187\";\"Bantal\";\"main\"\n\"1650187\";\"Banta\";\"other\"\n\"1650205\";\"Banjarejo\";\"main\"\n\"1650205\";\"Bandjarredja\";\"other\"\n\"1650205\";\"Bandjarredjo\";\"other\"\n\"1650205\";\"Banjarrejo\";\"other\"\n\"1650213\";\"Banjarmasin\";\"main\"\n\"1650213\";\"Bandgermasin\";\"other\"\n\"1650213\";\"Bandjarmasin\";\"other\"\n\"1650213\";\"Bandjermasin\";\"other\"\n\"1650213\";\"Bandjermassin\";\"other\"\n\"1650213\";\"Banjermasin\";\"other\"\n\"1650213\";\"Banyermasin\";\"other\"\n\"1650227\";\"Banjaran\";\"main\"\n\"1650227\";\"Bandjaran\";\"other\"\n\"1650232\";\"Banjar\";\"main\"\n\"1650232\";\"Bandjar\";\"other\"\n\"1650234\";\"Banjar\";\"main\"\n\"1650234\";\"Bandjar\";\"other\"\n\"1650264\";\"Bangli\";\"main\"\n\"1650298\";\"Bangkalan\";\"main\"\n\"1650298\";\"Pangkalan\";\"other\"\n\"1650319\";\"Bangil\";\"main\"\n\"1650332\";\"Bangelan\";\"main\"\n\"1650357\";\"Bandung\";\"main\"\n\"1650357\";\"Bandoeng\";\"other\"\n\"1650357\";\"Bandung kutha\";\"other\"\n\"1650357\";\"Bandungas\";\"other\"\n\"1650357\";\"Kota Bandung\";\"other\"\n\"1650357\";\"bandon\";\"other\"\n\"1650357\";\"wan long\";\"other\"\n\"1650357\";\"Бандунг\";\"other\"\n\"1650357\";\"バンドン\";\"other\"\n\"1650357\";\"万隆\";\"other\"\n\"1650357\";\"萬隆\";\"other\"\n\"1650434\";\"Bambanglipuro\";\"main\"\n\"1650460\";\"Balung\";\"main\"\n\"1650460\";\"Baloeng\";\"other\"\n\"1650465\";\"Baluk\";\"main\"\n\"1650465\";\"Baloek\";\"other\"\n\"1650527\";\"Balikpapan\";\"main\"\n\"1650527\";\"Kota Balikpapan\";\"other\"\n\"1650527\";\"balyk papan\";\"other\"\n\"1650527\";\"Баликпапан\";\"other\"\n\"1650527\";\"بالیک پاپان\";\"other\"\n\"1650554\";\"Balearjo\";\"main\"\n\"1650554\";\"Baleardjo\";\"other\"\n\"1650572\";\"Balapulang\";\"main\"\n\"1650572\";\"Balapoelang\";\"other\"\n\"1650600\";\"Balaipungut\";\"main\"\n\"1650600\";\"Balaipoengoet\";\"other\"\n\"1650627\";\"Bagorejo\";\"main\"\n\"1650627\";\"Bakuredjo\";\"other\"\n\"1650627\";\"Bakurejo\";\"other\"\n\"1650670\";\"Baki\";\"main\"\n\"1650693\";\"Bakalan\";\"main\"\n\"1650693\";\"Bakalan Satu\";\"other\"\n\"1650693\";\"Bangelan\";\"other\"\n\"1650716\";\"Bajo\";\"main\"\n\"1650716\";\"Badjo\";\"other\"\n\"1650720\";\"Bajawa\";\"main\"\n\"1650720\";\"Badjava\";\"other\"\n\"1650720\";\"Badjawa\";\"other\"\n\"1650815\";\"Baekrajan\";\"main\"\n\"1650815\";\"Bae\";\"other\"\n\"1650815\";\"Beh\";\"other\"\n\"1650815\";\"Tjendono\";\"other\"\n\"1650815\";\"Бэ\";\"other\"\n\"1650888\";\"Babat\";\"main\"\n\"1650888\";\"Babad\";\"other\"\n\"1650888\";\"Бабат\";\"other\"\n\"1650903\";\"Babana\";\"main\"\n\"1651103\";\"Atambua\";\"main\"\n\"1651103\";\"Atamboea\";\"other\"\n\"1651103\";\"Atamboewa\";\"other\"\n\"1651103\";\"Атамбуа\";\"other\"\n\"1651112\";\"Astanajapura\";\"main\"\n\"1651112\";\"Astanadjapura\";\"other\"\n\"1651133\";\"Asembagus\";\"main\"\n\"1651133\";\"Asembagoes\";\"other\"\n\"1651226\";\"Arjawinangun\";\"main\"\n\"1651226\";\"Ardjawinangoen\";\"other\"\n\"1651226\";\"Ardjawinangoen-Koelan\";\"other\"\n\"1651226\";\"Ardjawinangun\";\"other\"\n\"1651461\";\"Amuntai\";\"main\"\n\"1651461\";\"Amoentai\";\"other\"\n\"1651531\";\"Ambon\";\"main\"\n\"1651531\";\"Amboina\";\"other\"\n\"1651531\";\"Ambon City\";\"other\"\n\"1651531\";\"Amboyna\";\"other\"\n\"1651531\";\"Ambun\";\"other\"\n\"1651531\";\"Kota Ambon\";\"other\"\n\"1651531\";\"anbon\";\"other\"\n\"1651531\";\"Амбон\";\"other\"\n\"1651531\";\"アンボン\";\"other\"\n\"1651540\";\"Banjar Ambengan\";\"main\"\n\"1651540\";\"Ambengan\";\"other\"\n\"1651555\";\"Ambarawa\";\"main\"\n\"1651555\";\"Ambarava\";\"other\"\n\"1651591\";\"Amahai\";\"main\"\n\"1651591\";\"Amahei\";\"other\"\n\"1651591\";\"Masohi\";\"other\"\n\"1651645\";\"Alasbuluh\";\"main\"\n\"1651645\";\"Alasboeloeh\";\"other\"\n\"1651678\";\"Alahanpanjang\";\"main\"\n\"1651678\";\"Alahanpandgan\";\"other\"\n\"1651678\";\"Alahanpandjang\";\"other\"\n\"1651741\";\"Banjar Yehsatang\";\"main\"\n\"1651741\";\"Airsatang\";\"other\"\n\"1651813\";\"Aimere\";\"main\"\n\"1651813\";\"Aemere\";\"other\"\n\"1651813\";\"Wai Sai\";\"other\"\n\"1651887\";\"Adiwerna\";\"main\"\n\"1651887\";\"Adiwerno\";\"other\"\n\"1651888\";\"Adipala\";\"main\"\n\"1651888\";\"Adipolo\";\"other\"\n\"1900608\";\"Totok\";\"main\"\n\"1900608\";\"Totoka\";\"other\"\n\"1903204\";\"Segorotambak\";\"main\"\n\"1903205\";\"Tambakoso\";\"main\"\n\"1903206\";\"Medokanayu\";\"main\"\n\"1903206\";\"Medokanaju\";\"other\"\n\"1903208\";\"Wonorejo\";\"main\"\n\"1903208\";\"Wonoredjo\";\"other\"\n\"1906305\";\"Ploso\";\"main\"\n\"1906305\";\"Plosobegem\";\"other\"\n\"1906549\";\"Gununganyar\";\"main\"\n\"1906549\";\"Gununganjar\";\"other\"\n\"1906551\";\"Panjangjiwo\";\"main\"\n\"1906551\";\"Pandjangdjiwo\";\"other\"\n\"1906553\";\"Semampir\";\"main\"\n\"1906553\";\"Medokansemampir\";\"other\"\n\"1906561\";\"Rungkut\";\"main\"\n\"1906562\";\"Wadungasri\";\"main\"\n\"1906562\";\"Wadungsari\";\"other\"\n\"1906564\";\"Wedoro\";\"main\"\n\"1906569\";\"Dares\";\"main\"\n\"1906570\";\"Semampirbarat\";\"main\"\n\"1906570\";\"Semampir\";\"other\"\n\"1906572\";\"Tambaksawah\";\"main\"\n\"1906573\";\"Banjarkemuning\";\"main\"\n\"1906573\";\"Bandjarkemuningtambak\";\"other\"\n\"1906578\";\"Tambaksumur\";\"main\"\n\"1906583\";\"Buncitan\";\"main\"\n\"1906583\";\"Buntjitan\";\"other\"\n\"1906589\";\"Dukuhgisikcemandi\";\"main\"\n\"1906589\";\"Gisiktjemandi\";\"other\"\n\"1947261\";\"Naisano Dua\";\"main\"\n\"1947261\";\"Naisano 2\";\"other\"\n\"1947261\";\"Nusa Dua\";\"other\"\n\"1947261\";\"Нуса Дуа\";\"other\"\n\"1958025\";\"Glugur Krajan\";\"main\"\n\"1958025\";\"Tandjunglugur\";\"other\"\n\"1958029\";\"Krajan Gebangan\";\"main\"\n\"1958029\";\"Gebangan-wetan\";\"other\"\n\"1958029\";\"Krajan\";\"other\"\n\"1958030\";\"Krajan Panji Kidul\";\"main\"\n\"1958030\";\"Krajan\";\"other\"\n\"1958030\";\"Pandji-kidul\";\"other\"\n\"1958037\";\"Kedungdowo\";\"main\"\n\"1958040\";\"Selasaan\";\"main\"\n\"1958040\";\"Sletreng\";\"other\"\n\"1958051\";\"Pariyaan\";\"main\"\n\"1958051\";\"Parejaan\";\"other\"\n\"1958052\";\"Mojosari\";\"main\"\n\"1958052\";\"Modjosari\";\"other\"\n\"1958055\";\"Awar-awar\";\"main\"\n\"1958055\";\"Awararawar\";\"other\"\n\"1963770\";\"Padalarang\";\"main\"\n\"1964032\";\"Ciranjang-hilir\";\"main\"\n\"1964032\";\"Tjirandjang-hilir\";\"other\"\n\"1965178\";\"Gunung Kendil\";\"main\"\n\"1965178\";\"Gunung Kendit\";\"other\"\n\"1965193\";\"Pepe\";\"main\"\n\"1965198\";\"Sawohan\";\"main\"\n\"1965198\";\"Sawahan\";\"other\"\n\"1965199\";\"Damarsi\";\"main\"\n\"1965202\";\"Dukuh Tengah\";\"main\"\n\"1965316\";\"Pandansari\";\"main\"\n\"1965330\";\"Bateisari\";\"main\"\n\"1965330\";\"Balesari\";\"other\"\n\"1965337\";\"Wadung\";\"main\"\n\"1965338\";\"Tambaksari Tiga\";\"main\"\n\"1965338\";\"Tambaksari\";\"other\"\n\"1965338\";\"Tambaksari 3\";\"other\"\n\"1965349\";\"Gading\";\"main\"\n\"1965350\";\"Glanggang\";\"main\"\n\"1965351\";\"Wonokenso\";\"main\"\n\"1965351\";\"Wonokerso\";\"other\"\n\"1965354\";\"Golek\";\"main\"\n\"1965366\";\"Kebonsari\";\"main\"\n\"1965387\";\"Gendowangi\";\"main\"\n\"1965387\";\"Gedangan\";\"other\"\n\"1965398\";\"Permanu\";\"main\"\n\"1965400\";\"Kranggan\";\"main\"\n\"1965403\";\"Dawuhan\";\"main\"\n\"1965405\";\"Boto\";\"main\"\n\"1965405\";\"Mboto\";\"other\"\n\"1965408\";\"Ngasem\";\"main\"\n\"1965409\";\"Kasembon\";\"main\"\n\"1965409\";\"Kesamben\";\"other\"\n\"1965418\";\"Tumpangrejo\";\"main\"\n\"1965418\";\"Tumpangredjo\";\"other\"\n\"1965433\";\"Kasembon\";\"main\"\n\"1965437\";\"Krebet\";\"main\"\n\"1965443\";\"Tangkilsari Satu\";\"main\"\n\"1965443\";\"Tangkilsari\";\"other\"\n\"1965443\";\"Tangkilsari 1\";\"other\"\n\"1965445\";\"Totut\";\"main\"\n\"1965445\";\"Tutut\";\"other\"\n\"1965450\";\"Kalisari\";\"main\"\n\"1965454\";\"Sumbersuko Dua\";\"main\"\n\"1965454\";\"Sumbersuko\";\"other\"\n\"1965454\";\"Sumbersuko 2\";\"other\"\n\"1965462\";\"Plaosan\";\"main\"\n\"1965471\";\"Palahan\";\"main\"\n\"1965471\";\"Palaan\";\"other\"\n\"1965482\";\"Blobo\";\"main\"\n\"1965483\";\"Sukarabarjo\";\"main\"\n\"1965483\";\"Boro Utara\";\"other\"\n\"1965483\";\"Sukarabardjo\";\"other\"\n\"1965490\";\"Plandi\";\"main\"\n\"1965533\";\"Pandanajung\";\"main\"\n\"1965533\";\"Pandanadjung\";\"other\"\n\"1965533\";\"Tamiajeng\";\"other\"\n\"1965534\";\"Kambingan Satu\";\"main\"\n\"1965534\";\"Kambingan\";\"other\"\n\"1965534\";\"Kambingan 1\";\"other\"\n\"1965536\";\"Bokor\";\"main\"\n\"1965540\";\"Pulungdowo\";\"main\"\n\"1965540\";\"Glagahdowo\";\"other\"\n\"1965547\";\"Ngringit\";\"main\"\n\"1965547\";\"Ngingit\";\"other\"\n\"1965557\";\"Kapugeran\";\"main\"\n\"1965557\";\"Keden\";\"other\"\n\"1965558\";\"Pajaran\";\"main\"\n\"1965558\";\"Padjaran\";\"other\"\n\"1965560\";\"Rambaan\";\"main\"\n\"1965560\";\"Rambakan\";\"other\"\n\"1965566\";\"Ngebruk\";\"main\"\n\"1965567\";\"Gunungronggo\";\"main\"\n\"1965567\";\"Argomulyo\";\"other\"\n\"1965588\";\"Kasri\";\"main\"\n\"1965592\";\"Pringo\";\"main\"\n\"1965592\";\"Pringu\";\"other\"\n\"1965594\";\"Kioangbang\";\"main\"\n\"1965594\";\"Kidangbang\";\"other\"\n\"1965596\";\"Sukoanyar\";\"main\"\n\"1965596\";\"Sukoanjar\";\"other\"\n\"1965604\";\"Bureng\";\"main\"\n\"1965608\";\"Ngodilangkung\";\"main\"\n\"1965608\";\"Ngadilangkung\";\"other\"\n\"1965609\";\"Ngantru\";\"main\"\n\"1965620\";\"Putukrejo\";\"main\"\n\"1965620\";\"Putukredjo\";\"other\"\n\"1965623\";\"Talangagung\";\"main\"\n\"1965628\";\"Jatikerto\";\"main\"\n\"1965628\";\"Djatikerto\";\"other\"\n\"1965631\";\"Penarukan\";\"main\"\n\"1965634\";\"Ketawang\";\"main\"\n\"1965635\";\"Urek-urek\";\"main\"\n\"1965637\";\"Ganjaran\";\"main\"\n\"1965637\";\"Gandjaran\";\"other\"\n\"1965642\";\"Senggreng\";\"main\"\n\"1965648\";\"Panggungrejo\";\"main\"\n\"1965648\";\"Panggungredjo\";\"other\"\n\"1965651\";\"Mangunrejo\";\"main\"\n\"1965651\";\"Mangunredjo\";\"other\"\n\"1965653\";\"Tegalsari\";\"main\"\n\"1965657\";\"Panggungrejo\";\"main\"\n\"1965657\";\"Panggungredjo\";\"other\"\n\"1965659\";\"Karangsuko\";\"main\"\n\"1965670\";\"Pagedangan\";\"main\"\n\"1965670\";\"Pagedangan 1\";\"other\"\n\"1965670\";\"Pagedangan Satu\";\"other\"\n\"1965671\";\"Jambangan\";\"main\"\n\"1965671\";\"Djambangah\";\"other\"\n\"1965671\";\"Jambangah\";\"other\"\n\"1965673\";\"Jeru\";\"main\"\n\"1965673\";\"Djeru\";\"other\"\n\"1965677\";\"Sanankerto\";\"main\"\n\"1965678\";\"Sananrejo\";\"main\"\n\"1965678\";\"Sanatedjo\";\"other\"\n\"1965678\";\"Sanatejo\";\"other\"\n\"1965679\";\"Tumpukrenteng\";\"main\"\n\"1965680\";\"Sudimoro Satu\";\"main\"\n\"1965680\";\"Sudimoro\";\"other\"\n\"1965680\";\"Sudimoro 1\";\"other\"\n\"1965685\";\"Kedok\";\"main\"\n\"1965687\";\"Talang Suko\";\"main\"\n\"1965697\";\"Codo\";\"main\"\n\"1965697\";\"Tjodo\";\"other\"\n\"1965699\";\"Blayu Satu\";\"main\"\n\"1965699\";\"Blaju 1\";\"other\"\n\"1965699\";\"Blayu\";\"other\"\n\"1965742\";\"Tanggung\";\"main\"\n\"1965744\";\"Putat Kidul\";\"main\"\n\"1965823\";\"Sawahan\";\"main\"\n\"1965826\";\"Kemulan\";\"main\"\n\"1965826\";\"Kemutan 1\";\"other\"\n\"1965826\";\"Kemutan Satu\";\"other\"\n\"1965829\";\"Sepanjang\";\"main\"\n\"1965829\";\"Sepandjang\";\"other\"\n\"1965844\";\"Kademangan\";\"main\"\n\"1965847\";\"Rejoyoso\";\"main\"\n\"1965847\";\"Redjojoso\";\"other\"\n\"1965852\";\"Brongkal\";\"main\"\n\"1965857\";\"Kanigorokrajan\";\"main\"\n\"1965857\";\"Kanigoro\";\"other\"\n\"1965918\";\"Sedayu\";\"main\"\n\"1965918\";\"Sedaju\";\"other\"\n\"1965919\";\"Pojok\";\"main\"\n\"1965919\";\"Podjok 1\";\"other\"\n\"1965919\";\"Pojok Satu\";\"other\"\n\"1965924\";\"Undaan\";\"main\"\n\"1965924\";\"Undaan 1\";\"other\"\n\"1965924\";\"Undaan Satu\";\"other\"\n\"1965928\";\"Rembun\";\"main\"\n\"1965928\";\"Rembun 1\";\"other\"\n\"1965928\";\"Rembun Satu\";\"other\"\n\"1965930\";\"Pamotan\";\"main\"\n\"1965931\";\"Majang Tengah\";\"main\"\n\"1965931\";\"Madjangtengah 1\";\"other\"\n\"1965931\";\"Majangtengah Satu\";\"other\"\n\"1965943\";\"Tawangrejeni\";\"main\"\n\"1965943\";\"Tawangredjeni 1\";\"other\"\n\"1965943\";\"Tawangrejeni Satu\";\"other\"\n\"1966827\";\"Kali\";\"main\"\n\"1966830\";\"Lamadong\";\"main\"\n\"1967607\";\"Ogotua\";\"main\"\n\"1967767\";\"Sidomulyo\";\"main\"\n\"1967939\";\"Tompasobaru\";\"main\"\n\"1967939\";\"Topmposo\";\"other\"\n\"1969268\";\"Sukamaju\";\"main\"\n\"1969335\";\"Lamasi\";\"main\"\n\"1969339\";\"Walenrang\";\"main\"\n\"1969497\";\"Malunda\";\"main\"\n\"1969637\";\"Lampa\";\"main\"\n\"1969684\";\"Amparita\";\"main\"\n\"1969686\";\"Sidenreng\";\"main\"\n\"1969717\";\"Baranti\";\"main\"\n\"1969733\";\"Teppo\";\"main\"\n\"1969826\";\"Getengan\";\"main\"\n\"1969935\";\"Kalimat\";\"main\"\n\"1969935\";\"Kalimati\";\"other\"\n\"1973733\";\"Padangsappa\";\"main\"\n\"1973780\";\"Lempokasi\";\"main\"\n\"1974329\";\"Unaaha\";\"main\"\n\"1975225\";\"Tancung\";\"main\"\n\"1975323\";\"Maroanging\";\"main\"\n\"1975344\";\"Kotabaru\";\"main\"\n\"1975600\";\"Matango\";\"main\"\n\"1975643\";\"Apala\";\"main\"\n\"1975740\";\"Kadai\";\"main\"\n\"1975859\";\"Bulubulu\";\"main\"\n\"1980981\";\"Modayag\";\"main\"\n\"1980981\";\"Modajag\";\"other\"\n\"1982200\";\"Batuputih\";\"main\"\n\"1985348\";\"Kalanganyartambak\";\"main\"\n\"1985350\";\"Candisari\";\"main\"\n\"1985355\";\"Sedatigede\";\"main\"\n\"1985359\";\"Sedatiagung\";\"main\"\n\"1985526\";\"Pacarkeling\";\"main\"\n\"1985527\";\"Mulyorejo\";\"main\"\n\"1985528\";\"Gubengairlangga\";\"main\"\n\"1985530\";\"Prapen\";\"main\"\n\"1985532\";\"Gununganyartambak Tengah\";\"main\"\n\"1985535\";\"Kedungasem\";\"main\"\n\"1985537\";\"Jagirsidosermo\";\"main\"\n\"1985545\";\"Gubengkertajaya\";\"main\"\n\"1985547\";\"Labansari\";\"main\"\n\"1985548\";\"Brongkalan\";\"main\"\n\"1985562\";\"Mojo\";\"main\"\n\"1985663\";\"Cikupa\";\"main\"\n\"1985980\";\"Tenggilis Lama\";\"main\"\n\"1990589\";\"Teluknaga\";\"main\"\n\"2002872\";\"Wonosari\";\"main\"\n\"2005057\";\"Gamping Lor\";\"main\"\n\"2005237\";\"Kasihan\";\"main\"\n\"2010971\";\"Ngemplak\";\"main\"\n\"2010985\";\"Kartasura\";\"main\"\n\"2011457\";\"Gatak\";\"main\"\n\"2056910\";\"Wahang Dua\";\"main\"\n\"2056910\";\"Wahang\";\"other\"\n\"2056910\";\"Wahang 2\";\"other\"\n\"2056982\";\"Praingkareha\";\"main\"\n\"2056982\";\"Paraingkareha\";\"other\"\n\"2057078\";\"Lailunggi\";\"main\"\n\"2057078\";\"Lailoenggi\";\"other\"\n\"2057087\";\"Kupang\";\"main\"\n\"2057087\";\"Koepang\";\"other\"\n\"2057087\";\"Kota Kupang\";\"other\"\n\"2057087\";\"Kupange\";\"other\"\n\"2057087\";\"Купанге\";\"other\"\n\"2082600\";\"Jayapura\";\"main\"\n\"2082600\";\"Djajapura\";\"other\"\n\"2082600\";\"Dzhajapura\";\"other\"\n\"2082600\";\"Hollandia\";\"other\"\n\"2082600\";\"Kota Jayapura\";\"other\"\n\"2082600\";\"Kotabaru\";\"other\"\n\"2082600\";\"Port Numbay\";\"other\"\n\"2082600\";\"Sukarnapura\";\"other\"\n\"2082600\";\"Sukarnopura\";\"other\"\n\"2082600\";\"jayapura\";\"other\"\n\"2082600\";\"Джаяпура\";\"other\"\n\"2082600\";\"ジャヤプラ\";\"other\"\n\"2082727\";\"Abepura\";\"main\"\n\"6373749\";\"Tipar\";\"main\"\n\"6373760\";\"Garbi\";\"main\"\n\"6373768\";\"Papringan\";\"main\"\n\"6373785\";\"Tugu\";\"main\"\n\"6373792\";\"Pesawahan\";\"main\"\n\"6373816\";\"Gambarsari\";\"main\"\n\"6373831\";\"Gambarjati\";\"main\"\n\"6373836\";\"Margasana\";\"main\"\n\"6373859\";\"Binangun\";\"main\"\n\"6373886\";\"Karanglewas\";\"main\"\n\"6373888\";\"Losari\";\"main\"\n\"6373914\";\"Brak\";\"main\"\n\"6373925\";\"Karangtengah\";\"main\"\n\"6373926\";\"Brani\";\"main\"\n\"6373948\";\"Sampang Selatan\";\"main\"\n\"6373958\";\"Gambolempuk\";\"main\"\n\"6373969\";\"Karangjati\";\"main\"\n\"6373974\";\"Sidasari\";\"main\"\n\"6373981\";\"Glempang Tengah\";\"main\"\n\"6373993\";\"Lancar\";\"main\"\n\"6373994\";\"Penisihan\";\"main\"\n\"6374005\";\"Gununglaban\";\"main\"\n\"6374012\";\"Rawaseser\";\"main\"\n\"6374022\";\"Tinggarmalang\";\"main\"\n\"6374032\";\"Bulupayung\";\"main\"\n\"6374038\";\"Karangrena\";\"main\"\n\"6374049\";\"Ketanggung\";\"main\"\n\"6374052\";\"Bayeman\";\"main\"\n\"6374070\";\"Mernek\";\"main\"\n\"6374080\";\"Krikil\";\"main\"\n\"6374082\";\"Klapagada\";\"main\"\n\"6374092\";\"Kaliterus\";\"main\"\n\"6378662\";\"Rejanegara\";\"main\"\n\"6378687\";\"Karangbadar Kidul\";\"main\"\n\"6385637\";\"Sangkalputung\";\"main\"\n\"6385651\";\"Gerduren\";\"main\"\n\"6385665\";\"Sudikampir\";\"main\"\n\"6385680\";\"Klapagading\";\"main\"\n\"6385689\";\"Tinggarwangi\";\"main\"\n\"6385712\";\"Rawaheng\";\"main\"\n\"6385728\";\"Bantar Tengah\";\"main\"\n\"6385755\";\"Tengah\";\"main\"\n\"6385759\";\"Pekuncen\";\"main\"\n\"6385763\";\"Kaliduren\";\"main\"\n\"6385775\";\"Prapagan\";\"main\"\n\"6385783\";\"Jambuandap\";\"main\"\n\"6385811\";\"Keleng\";\"main\"\n\"6385813\";\"Watuagung\";\"main\"\n\"6385822\";\"Mandala\";\"main\"\n\"6385838\";\"Dawuhan\";\"main\"\n\"6385839\";\"Bantarsari Kulon\";\"main\"\n\"6385869\";\"Sawoan\";\"main\"\n\"6385873\";\"Madusari\";\"main\"\n\"6829676\";\"Tlogosari\";\"main\"\n\"6866208\";\"Talok\";\"main\"\n\"7030632\";\"Lolayan\";\"main\"\n\"7031025\";\"Poigar\";\"main\"\n\"7034496\";\"Tanggung\";\"main\"\n\"7034500\";\"Glodokan\";\"main\"\n\"7034504\";\"Wates\";\"main\"\n\"7034509\";\"Pandansari\";\"main\"\n\"7034510\";\"Sumberingin Kulon\";\"main\"\n\"7034513\";\"Selorejo\";\"main\"\n\"7034516\";\"Balesono\";\"main\"\n\"7034517\";\"Mirigambar\";\"main\"\n\"7034519\";\"Sambidoplang\";\"main\"\n\"7034531\";\"Pojok\";\"main\"\n\"7034542\";\"Sambirejo\";\"main\"\n\"7034543\";\"Brandil\";\"main\"\n\"7034545\";\"Tunggangri\";\"main\"\n\"7034551\";\"Salakan Lor\";\"main\"\n\"7034563\";\"Pelem\";\"main\"\n\"7034567\";\"Pagersari\";\"main\"\n\"7034573\";\"Jabon\";\"main\"\n\"7034587\";\"Ngejring\";\"main\"\n\"7034588\";\"Karangsonojabon\";\"main\"\n\"7034598\";\"Jatirejo\";\"main\"\n\"7034605\";\"Ngrejo\";\"main\"\n\"7034608\";\"Karangtalun Lor\";\"main\"\n\"7034610\";\"Nganggrek\";\"main\"\n\"7034621\";\"Tumpakjoho\";\"main\"\n\"7034642\";\"Kedungdowo\";\"main\"\n\"7034669\";\"Manding\";\"main\"\n\"7034673\";\"Tekik Wetan\";\"main\"\n\"7034674\";\"Tekikbanyuurip\";\"main\"\n\"7034675\";\"Darungan\";\"main\"\n\"7034680\";\"Tanggunggunung\";\"main\"\n\"7034682\";\"Krajan\";\"main\"\n\"7034696\";\"Kaligentong\";\"main\"\n\"7034711\";\"Jengglungharjo\";\"main\"\n\"7034770\";\"Padangan\";\"main\"\n\"7034774\";\"Tenggur\";\"main\"\n\"7034776\";\"Banjarsari Kidul\";\"main\"\n\"7034777\";\"Tegalrejo\";\"main\"\n\"7034780\";\"Pakisrejo\";\"main\"\n\"7034781\";\"Blimbing\";\"main\"\n\"7034796\";\"Tugu\";\"main\"\n\"7034799\";\"Bendorubuh\";\"main\"\n\"7034800\";\"Samir\";\"main\"\n\"7034805\";\"Jatidowo\";\"main\"\n\"7034810\";\"Sumberagung\";\"main\"\n\"7034818\";\"Purwodadi\";\"main\"\n\"7034823\";\"Sukorejo\";\"main\"\n\"7034827\";\"Tenggong\";\"main\"\n\"7034828\";\"Karangsono\";\"main\"\n\"7034830\";\"Ngluweng Dua\";\"main\"\n\"7034848\";\"Sumberjo\";\"main\"\n\"7034860\";\"Demuk\";\"main\"\n\"7034867\";\"Maron\";\"main\"\n\"7034868\";\"Kebonsari\";\"main\"\n\"7034879\";\"Panggungduwet\";\"main\"\n\"7034881\";\"Panggunguni\";\"main\"\n\"7034885\";\"Pakisaji\";\"main\"\n\"7034888\";\"Bendosari\";\"main\"\n\"7034908\";\"Sumberbendo\";\"main\"\n\"7034912\";\"Lorejo\";\"main\"\n\"7034914\";\"Kedungbanteng\";\"main\"\n\"7034917\";\"Ngrejo\";\"main\"\n\"7034923\";\"Miribanteng\";\"main\"\n\"7034983\";\"Kromengan\";\"main\"\n\"7034990\";\"Jatirejo\";\"main\"\n\"7034997\";\"Ngreco\";\"main\"\n\"7034999\";\"Sumberejo\";\"main\"\n\"7035002\";\"Sukoanyar\";\"main\"\n\"7035003\";\"Sembung\";\"main\"\n\"7035006\";\"Krajan\";\"main\"\n\"7035016\";\"Krajan\";\"main\"\n\"7035024\";\"Bandung\";\"main\"\n\"7035042\";\"Barisan\";\"main\"\n\"7035048\";\"Kopral\";\"main\"\n\"7035060\";\"Dadapan\";\"main\"\n\"7035066\";\"Krajan\";\"main\"\n\"7035074\";\"Sumbertimo\";\"main\"\n\"7035092\";\"Sukomulyo\";\"main\"\n\"7035104\";\"Krajan Dua\";\"main\"\n\"7035107\";\"Krajan Satu\";\"main\"\n\"7035119\";\"Selorejo\";\"main\"\n\"7035120\";\"Kalipare\";\"main\"\n\"7035192\";\"Wonosari\";\"main\"\n\"7035203\";\"Ringinrejo\";\"main\"\n\"7035210\";\"Slumbung\";\"main\"\n\"7035242\";\"Purwosari\";\"main\"\n\"7035256\";\"Baos\";\"main\"\n\"7035258\";\"Sukosewu Satu\";\"main\"\n\"7035261\";\"Sumberagung Satu\";\"main\"\n\"7035265\";\"Tambakan\";\"main\"\n\"7035270\";\"Sendung\";\"main\"\n\"7035286\";\"Kotes\";\"main\"\n\"7035289\";\"Sanan\";\"main\"\n\"7035291\";\"Jajar\";\"main\"\n\"7035295\";\"Tembalang\";\"main\"\n\"7035306\";\"Plumbangan\";\"main\"\n\"7035312\";\"Gogolatar\";\"main\"\n\"7035314\";\"Kamulan\";\"main\"\n\"7035319\";\"Sonogunting\";\"main\"\n\"7035323\";\"Gogosuket\";\"main\"\n\"7035326\";\"Beru\";\"main\"\n\"7035328\";\"Pandean\";\"main\"\n\"7035333\";\"Suru\";\"main\"\n\"7035361\";\"Klemunan\";\"main\"\n\"7035368\";\"Tulungrejo\";\"main\"\n\"7035370\";\"Tegalrejo\";\"main\"\n\"7035372\";\"Sragi\";\"main\"\n\"7035373\";\"Wonorejo Dua\";\"main\"\n\"7035377\";\"Tumpang\";\"main\"\n\"7035378\";\"Jeblog Satu\";\"main\"\n\"7035379\";\"Bendosewu\";\"main\"\n\"7035381\";\"Duren\";\"main\"\n\"7035384\";\"Bukur\";\"main\"\n\"7035389\";\"Talun\";\"main\"\n\"7035390\";\"Gandusari\";\"main\"\n\"7035391\";\"Doko\";\"main\"\n\"7035392\";\"Beru\";\"main\"\n\"7035479\";\"Balerejo\";\"main\"\n\"7035499\";\"Sumberingin\";\"main\"\n\"7035504\";\"Ampelgading\";\"main\"\n\"7035506\";\"Kalimanis\";\"main\"\n\"7035508\";\"Resapombo\";\"main\"\n\"7035524\";\"Tempursari Wetan\";\"main\"\n\"7035532\";\"Bumirejo\";\"main\"\n\"7035536\";\"Sidorejo\";\"main\"\n\"7035554\";\"Kemiri Gede\";\"main\"\n\"7035558\";\"Ringinrejo\";\"main\"\n\"7035576\";\"Jambuwerkrajan\";\"main\"\n\"7035578\";\"Sidomulyo\";\"main\"\n\"7035582\";\"Cungkup\";\"main\"\n\"7035587\";\"Tepas\";\"main\"\n\"7035596\";\"Tapakrejo\";\"main\"\n\"7035611\";\"Krandil\";\"main\"\n\"7035613\";\"Kertorejo\";\"main\"\n\"7035618\";\"Kepel\";\"main\"\n\"7035619\";\"Pakel\";\"main\"\n\"7035636\";\"Wonosari\";\"main\"\n\"7035665\";\"Ngraho\";\"main\"\n\"7035669\";\"Tanjung Timur\";\"main\"\n\"7035670\";\"Pulo\";\"main\"\n\"7035672\";\"Peting\";\"main\"\n\"7035700\";\"Gayam\";\"main\"\n\"7035705\";\"Mojorembun\";\"main\"\n\"7035710\";\"Gondel\";\"main\"\n\"7035718\";\"Menden\";\"main\"\n\"7035727\";\"Temulus\";\"main\"\n\"7035736\";\"Sumberrejo\";\"main\"\n\"7035743\";\"Pilang\";\"main\"\n\"7035760\";\"Kadengan\";\"main\"\n\"7035769\";\"Ploso Wetan\";\"main\"\n\"7035786\";\"Randublatung\";\"main\"\n\"7035787\";\"Ngraho\";\"main\"\n\"7035852\";\"Karangboyo\";\"main\"\n\"7035853\";\"Ngroto\";\"main\"\n\"7035858\";\"Caper\";\"main\"\n\"7035860\";\"Ngelo\";\"main\"\n\"7035874\";\"Demakan\";\"main\"\n\"7035880\";\"Kuncen\";\"main\"\n\"7035887\";\"Tambakkromo\";\"main\"\n\"7035888\";\"Mulyorejo\";\"main\"\n\"7035890\";\"Mernung\";\"main\"\n\"7035891\";\"Seren\";\"main\"\n\"7035899\";\"Kentongan\";\"main\"\n\"7035903\";\"Nguken\";\"main\"\n\"7035906\";\"Pengkok\";\"main\"\n\"7035911\";\"Mersodo\";\"main\"\n\"7035914\";\"Nglanjuk\";\"main\"\n\"7035917\";\"Balangpule\";\"main\"\n\"7035923\";\"Blimbing\";\"main\"\n\"7035925\";\"Gempol\";\"main\"\n\"7035928\";\"Sonorejo\";\"main\"\n\"7035932\";\"Ngeper\";\"main\"\n\"7035935\";\"Prangi\";\"main\"\n\"7035936\";\"Sumberpitu\";\"main\"\n\"7035938\";\"Tebon\";\"main\"\n\"7035942\";\"Sugihwaras\";\"main\"\n\"7035964\";\"Kemantren\";\"main\"\n\"7035967\";\"Jetis\";\"main\"\n\"7035968\";\"Klagen\";\"main\"\n\"7035971\";\"Ketawang\";\"main\"\n\"7035980\";\"Purwa\";\"main\"\n\"7035985\";\"Ketuwan\";\"main\"\n\"7035989\";\"Tapelan\";\"main\"\n\"7035993\";\"Klempun\";\"main\"\n\"7035995\";\"Pengkol\";\"main\"\n\"7036000\";\"Pandan\";\"main\"\n\"7036006\";\"Ngori\";\"main\"\n\"7036008\";\"Mojorejo\";\"main\"\n\"7036027\";\"Cepu\";\"main\"\n\"7036028\";\"Batokan\";\"main\"\n\"7036070\";\"Sekaran\";\"main\"\n\"7036071\";\"Suroh\";\"main\"\n\"7036074\";\"Kliteh\";\"main\"\n\"7036079\";\"Celangap\";\"main\"\n\"7036081\";\"Cengungklung\";\"main\"\n\"7036082\";\"Telumbung\";\"main\"\n\"7036087\";\"Semanding\";\"main\"\n\"7036091\";\"Besah\";\"main\"\n\"7036100\";\"Kacangan Lor\";\"main\"\n\"7036103\";\"Kembangan\";\"main\"\n\"7036113\";\"Katur\";\"main\"\n\"7036124\";\"Banjarjo\";\"main\"\n\"7036126\";\"Ketawang\";\"main\"\n\"7036130\";\"Tembeling\";\"main\"\n\"7036131\";\"Dukuh Lor\";\"main\"\n\"7036134\";\"Bulu\";\"main\"\n\"7036142\";\"Ringintunggal\";\"main\"\n\"7036143\";\"Gayam\";\"main\"\n\"7036149\";\"Beged\";\"main\"\n\"7036162\";\"Bonorejo\";\"main\"\n\"7036182\";\"Dawung\";\"main\"\n\"7036195\";\"Gapluk\";\"main\"\n\"7036199\";\"Donan\";\"main\"\n\"7036202\";\"Tinumpuk\";\"main\"\n\"7036205\";\"Tlatah\";\"main\"\n\"7036206\";\"Ngrejeng\";\"main\"\n\"7036225\";\"Pelem\";\"main\"\n\"7036231\";\"Mojosawit\";\"main\"\n\"7036234\";\"Purwosari\";\"main\"\n\"7036267\";\"Wonocolo\";\"main\"\n\"7036278\";\"Ngrowo\";\"main\"\n\"7036284\";\"Tambakmerak\";\"main\"\n\"7036285\";\"Sendang\";\"main\"\n\"7036290\";\"Wanglu Kulon\";\"main\"\n\"7036292\";\"Wanglu Wetan\";\"main\"\n\"7036295\";\"Leran\";\"main\"\n\"7036297\";\"Medalem\";\"main\"\n\"7036301\";\"Sarang\";\"main\"\n\"7036308\";\"Banaran\";\"main\"\n\"7036311\";\"Wonosari\";\"main\"\n\"7036314\";\"Banyuurip\";\"main\"\n\"7036316\";\"Kawengan\";\"main\"\n\"7036326\";\"Ledok\";\"main\"\n\"7036331\";\"Gotak\";\"main\"\n\"7036336\";\"Sudah\";\"main\"\n\"7036340\";\"Ngujung\";\"main\"\n\"7036356\";\"Karuk\";\"main\"\n\"7036367\";\"Malo\";\"main\"\n\"7036481\";\"Blajo\";\"main\"\n\"7036485\";\"Kemendung\";\"main\"\n\"7036487\";\"Kemlagigede\";\"main\"\n\"7036490\";\"Bambang\";\"main\"\n\"7036493\";\"Baru\";\"main\"\n\"7036495\";\"Gowa\";\"main\"\n\"7036497\";\"Waru\";\"main\"\n\"7036499\";\"Gambuhan Kidul\";\"main\"\n\"7036503\";\"Canditunggal\";\"main\"\n\"7036505\";\"Depek\";\"main\"\n\"7036513\";\"Lembung Lor\";\"main\"\n\"7036516\";\"Mayong Tengah\";\"main\"\n\"7036526\";\"Wedeng\";\"main\"\n\"7036533\";\"Mlawe\";\"main\"\n\"7036534\";\"Karang Kulon\";\"main\"\n\"7036537\";\"Luntas\";\"main\"\n\"7036550\";\"Blawi\";\"main\"\n\"7036556\";\"Ladan\";\"main\"\n\"7036561\";\"Ngujung\";\"main\"\n\"7036579\";\"Jrebeng\";\"main\"\n\"7036581\";\"Baron\";\"main\"\n\"7036582\";\"Banjaranyar\";\"main\"\n\"7036585\";\"Watangan\";\"main\"\n\"7036586\";\"Sambopinggir\";\"main\"\n\"7036588\";\"Windu\";\"main\"\n\"7036590\";\"Magok\";\"main\"\n\"7036600\";\"Prioso Barat\";\"main\"\n\"7036608\";\"Kebon\";\"main\"\n\"7036613\";\"Calan\";\"main\"\n\"7036616\";\"Baturono\";\"main\"\n\"7036628\";\"Pompongan\";\"main\"\n\"7036640\";\"Duni\";\"main\"\n\"7036644\";\"Turi\";\"main\"\n\"7036645\";\"Getung\";\"main\"\n\"7036663\";\"Pagerwojo\";\"main\"\n\"7036665\";\"Made\";\"main\"\n\"7036666\";\"Tanjung\";\"main\"\n\"7036669\";\"Bilo\";\"main\"\n\"7036672\";\"Ngaglik Timur\";\"main\"\n\"7036673\";\"Tumenggungan\";\"main\"\n\"7036676\";\"Krian\";\"main\"\n\"7036677\";\"Kendaruan\";\"main\"\n\"7036678\";\"Jetis\";\"main\"\n\"7036682\";\"Deket Kulon\";\"main\"\n\"7036687\";\"Keset\";\"main\"\n\"7036692\";\"Glugu\";\"main\"\n\"7036693\";\"Balun\";\"main\"\n\"7036695\";\"Mlanggeng\";\"main\"\n\"7036697\";\"Rawaglagah\";\"main\"\n\"7036699\";\"Keputran\";\"main\"\n\"7036702\";\"Sugihwaras\";\"main\"\n\"7036705\";\"Gajah\";\"main\"\n\"7036707\";\"Bendungan\";\"main\"\n\"7036711\";\"Nginjen\";\"main\"\n\"7036716\";\"Semambung\";\"main\"\n\"7036717\";\"Kebon Tengah\";\"main\"\n\"7036720\";\"Dagangan\";\"main\"\n\"7036726\";\"Sampangan\";\"main\"\n\"7036728\";\"Bucu Lor\";\"main\"\n\"7036729\";\"Bucu Kidul\";\"main\"\n\"7036734\";\"Sudangan\";\"main\"\n\"7036737\";\"Mendogo Lor\";\"main\"\n\"7036742\";\"Plosobuden\";\"main\"\n\"7036747\";\"Began\";\"main\"\n\"7036755\";\"Mungli\";\"main\"\n\"7036757\";\"Lukrejo\";\"main\"\n\"7036763\";\"Deket Wetan\";\"main\"\n\"7036823\";\"Niwen\";\"main\"\n\"7036830\";\"Kepuh\";\"main\"\n\"7036837\";\"Kenongo\";\"main\"\n\"7036883\";\"Ardirejo\";\"main\"\n\"7036886\";\"Bendo\";\"main\"\n\"7036914\";\"Sukonolo Krajan\";\"main\"\n\"7036926\";\"Wagir\";\"main\"\n\"7036927\";\"Kepuh\";\"main\"\n\"7036928\";\"Pakisaji\";\"main\"\n\"7036929\";\"Ngajum\";\"main\"\n\"7036993\";\"Bumiayu\";\"main\"\n\"7037005\";\"Sekarsari\";\"main\"\n\"7037012\";\"Gunungsari\";\"main\"\n\"7037016\";\"Watudakon\";\"main\"\n\"7037028\";\"Sidomulyo\";\"main\"\n\"7037045\";\"Sidoaji\";\"main\"\n\"7037061\";\"Krapyak Kidul\";\"main\"\n\"7037068\";\"Napel\";\"main\"\n\"7037081\";\"Tajinan\";\"main\"\n\"7037082\";\"Wajak\";\"main\"\n\"7037147\";\"Jambekumbu\";\"main\"\n\"7037151\";\"Pasrukrajan Satu\";\"main\"\n\"7037155\";\"Wonorejo\";\"main\"\n\"7037156\";\"Burno\";\"main\"\n\"7037164\";\"Krajanjambearum\";\"main\"\n\"7037170\";\"Kandangan\";\"main\"\n\"7037192\";\"Bedayutalang\";\"main\"\n\"7037193\";\"Bedayu\";\"main\"\n\"7037199\";\"Gasri\";\"main\"\n\"7037205\";\"Senduro\";\"main\"\n\"7037280\";\"Wringinsari\";\"main\"\n\"7037288\";\"Pakel\";\"main\"\n\"7037290\";\"Wonoayu\";\"main\"\n\"7037299\";\"Krajan\";\"main\"\n\"7037311\";\"Pule\";\"main\"\n\"7037312\";\"Sidomakmur\";\"main\"\n\"7037323\";\"Tanjung\";\"main\"\n\"7037335\";\"Sidomulyo\";\"main\"\n\"7037346\";\"Krajan\";\"main\"\n\"7037353\";\"Krajan\";\"main\"\n\"7037355\";\"Sidorejo\";\"main\"\n\"7037361\";\"Sekartanjung\";\"main\"\n\"7037366\";\"Karangrejo\";\"main\"\n\"7037376\";\"Kajaran\";\"main\"\n\"7037382\";\"Krajan Satu\";\"main\"\n\"7037393\";\"Antrukan\";\"main\"\n\"7037401\";\"Darungan\";\"main\"\n\"7037412\";\"Krajan\";\"main\"\n\"7037415\";\"Krajan\";\"main\"\n\"7037427\";\"Krajan\";\"main\"\n\"7037430\";\"Makam\";\"main\"\n\"7037437\";\"Taman\";\"main\"\n\"7037439\";\"Krajan\";\"main\"\n\"7037451\";\"Umpak\";\"main\"\n\"7037458\";\"Krajan\";\"main\"\n\"7037459\";\"Sidodadi\";\"main\"\n\"7037460\";\"Krajan Satu\";\"main\"\n\"7037469\";\"Darungan Lor\";\"main\"\n\"7037471\";\"Srunikrajan\";\"main\"\n\"7037481\";\"Krajan\";\"main\"\n\"7037487\";\"Krajan\";\"main\"\n\"7037495\";\"Krajan\";\"main\"\n\"7037500\";\"Krajan Wetan\";\"main\"\n\"7037509\";\"Rogotrunan\";\"main\"\n\"7037511\";\"Sekarputih\";\"main\"\n\"7037521\";\"Krajan Baru\";\"main\"\n\"7037526\";\"Kajaran\";\"main\"\n\"7037527\";\"Sukodono\";\"main\"\n\"7037528\";\"Rogotrunan\";\"main\"\n\"7037542\";\"Jalinan\";\"main\"\n\"7037544\";\"Karangharjo\";\"main\"\n\"7037548\";\"Sukmoilang\";\"main\"\n\"7037577\";\"Baban Tengah\";\"main\"\n\"7037619\";\"Sedati\";\"main\"\n\"7037636\";\"Pasembon\";\"main\"\n\"7037642\";\"Selorejo\";\"main\"\n\"7037644\";\"Kedungrejo\";\"main\"\n\"7037649\";\"Krajan\";\"main\"\n\"7037658\";\"Curahjati\";\"main\"\n\"7037702\";\"Sumberkepoh\";\"main\"\n\"7037704\";\"Sumberluhur\";\"main\"\n\"7037707\";\"Jatimulyo\";\"main\"\n\"7037713\";\"Persen\";\"main\"\n\"7037724\";\"Kendalrejo\";\"main\"\n\"7037726\";\"Tegalsari\";\"main\"\n\"7037727\";\"Sumberasri\";\"main\"\n\"7037841\";\"Krajan Tengah\";\"main\"\n\"7037872\";\"Purwojoyo\";\"main\"\n\"7037909\";\"Karangharjo Kidul\";\"main\"\n\"7037944\";\"Krajan\";\"main\"\n\"7037952\";\"Tambakbayan\";\"main\"\n\"7038003\";\"Wiyayu Barat\";\"main\"\n\"7038009\";\"Krajan\";\"main\"\n\"7038017\";\"Cantuk Kidul\";\"main\"\n\"7038019\";\"Rukem\";\"main\"\n\"7038042\";\"Kopen\";\"main\"\n\"7038049\";\"Krajan\";\"main\"\n\"7038057\";\"Pasinan Barat\";\"main\"\n\"7038059\";\"Krajan\";\"main\"\n\"7038066\";\"Krajan\";\"main\"\n\"7038116\";\"Krajan\";\"main\"\n\"7038120\";\"Melikkrajan\";\"main\"\n\"7038152\";\"Payaman\";\"main\"\n\"7038157\";\"Semalang\";\"main\"\n\"7038163\";\"Krajan\";\"main\"\n\"7038166\";\"Kopen\";\"main\"\n\"7038168\";\"Krajan\";\"main\"\n\"7038177\";\"Sempu\";\"main\"\n\"7038190\";\"Plalangan\";\"main\"\n\"7038840\";\"Peneng\";\"main\"\n\"7038846\";\"Tua\";\"main\"\n\"7038871\";\"Empalan\";\"main\"\n\"7038876\";\"Luwus\";\"main\"\n\"7038878\";\"Buahan\";\"main\"\n\"7038902\";\"Badung\";\"main\"\n\"7038914\";\"Pergan\";\"main\"\n\"7038923\";\"Pohgending Kangin\";\"main\"\n\"7038931\";\"Pohgending Kawan\";\"main\"\n\"7038938\";\"Payangan Tengah\";\"main\"\n\"7038939\";\"Petiga\";\"main\"\n\"7038950\";\"Penatahan Kaja\";\"main\"\n\"7038954\";\"Bayad\";\"main\"\n\"7038962\";\"Pemijian\";\"main\"\n\"7038999\";\"Bunutan\";\"main\"\n\"7039034\";\"Tembau\";\"main\"\n\"7039058\";\"Wanasari Baleran\";\"main\"\n\"7039066\";\"Kuwumkumambal\";\"main\"\n\"7039068\";\"Kekeran\";\"main\"\n\"7039072\";\"Brahmana\";\"main\"\n\"7039078\";\"Pegongan\";\"main\"\n\"7039086\";\"Basa\";\"main\"\n\"7039088\";\"Tunjuk Selatan\";\"main\"\n\"7039104\";\"Banjar Tengah\";\"main\"\n\"7039104\";\"Tengah\";\"other\"\n\"7039113\";\"Pengembunan\";\"main\"\n\"7039116\";\"Buahan Tengah\";\"main\"\n\"7039144\";\"Beaung Tengah\";\"main\"\n\"7039153\";\"Petang\";\"main\"\n\"7039213\";\"Sukorejo\";\"main\"\n\"7039234\";\"Tangkup\";\"main\"\n\"7039283\";\"Keli\";\"main\"\n\"7039297\";\"Lela\";\"main\"\n\"7039304\";\"Penaraga\";\"main\"\n\"7039306\";\"Pisang\";\"main\"\n\"7039318\";\"Rontu\";\"main\"\n\"7039322\";\"Kumbe\";\"main\"\n\"7039329\";\"Kendo Satu\";\"main\"\n\"7039332\";\"Penanae\";\"main\"\n\"7039356\";\"Dodu Dua\";\"main\"\n\"7039357\";\"Nungga\";\"main\"\n\"7039366\";\"Ntobo\";\"main\"\n\"7039394\";\"Rato\";\"main\"\n\"7081603\";\"Tuliskriyo\";\"main\"\n\"7081604\";\"Klampok\";\"main\"\n\"7081611\";\"Minggirsari Dua\";\"main\"\n\"7081621\";\"Karangsono\";\"main\"\n\"7081633\";\"Jegu\";\"main\"\n\"7081636\";\"Satrejan\";\"main\"\n\"7081642\";\"Serut\";\"main\"\n\"7081648\";\"Plosorejo\";\"main\"\n\"7081654\";\"Tenggong\";\"main\"\n\"7081656\";\"Dawuhan\";\"main\"\n\"7081661\";\"Sumberjati\";\"main\"\n\"7081664\";\"Darungan Satu\";\"main\"\n\"7081671\";\"Kembangarum\";\"main\"\n\"7081674\";\"Wonorejo\";\"main\"\n\"7081675\";\"Sukorejo\";\"main\"\n\"7081676\";\"Jinglong\";\"main\"\n\"7081683\";\"Bacem\";\"main\"\n\"7081692\";\"Klampok\";\"main\"\n\"7081694\";\"Kedungbunder\";\"main\"\n\"7081695\";\"Sutojayan\";\"main\"\n\"7081696\";\"Sumberrejo\";\"main\"\n\"7081711\";\"Wonotirto\";\"main\"\n\"7081715\";\"Pasiraman\";\"main\"\n\"7081717\";\"Sumberboto Satu\";\"main\"\n\"7081733\";\"Becirto\";\"main\"\n\"7081735\";\"Kanigoro\";\"main\"\n\"7081757\";\"Tumpang Satu\";\"main\"\n\"7081775\";\"Pandansari\";\"main\"\n\"7081778\";\"Karanganyar\";\"main\"\n\"7081818\";\"Nongkosewu\";\"main\"\n\"7081819\";\"Wates\";\"main\"\n\"7081824\";\"Krajan\";\"main\"\n\"7081826\";\"Belung Satu\";\"main\"\n\"7081829\";\"Wonorejo\";\"main\"\n\"7081834\";\"Simpanganduwet\";\"main\"\n\"7081842\";\"Kedampul\";\"main\"\n\"7081844\";\"Krajan\";\"main\"\n\"7082996\";\"Gaplek\";\"main\"\n\"7083057\";\"Krajan\";\"main\"\n\"7083064\";\"Plalangan\";\"main\"\n\"7083070\";\"Jumerto\";\"main\"\n\"7083083\";\"Serut\";\"main\"\n\"7083090\";\"Sukorambi\";\"main\"\n\"7083091\";\"Krajan\";\"main\"\n\"7083099\";\"Kebonwaru Satu\";\"main\"\n\"7083103\";\"Puring Kulon\";\"main\"\n\"7083110\";\"Patrang\";\"main\"\n\"7083111\";\"Tegalgede Kulon\";\"main\"\n\"7083127\";\"Krajan\";\"main\"\n\"7083142\";\"Dukuhmencek Lor\";\"main\"\n\"7083151\";\"Kaliwates\";\"main\"\n\"7083154\";\"Kepatihan\";\"main\"\n\"7083160\";\"Sumberketangi\";\"main\"\n\"7083162\";\"Kloncing\";\"main\"\n\"7083175\";\"Telengsari\";\"main\"\n\"7083178\";\"Sumberdangdang\";\"main\"\n\"7083181\";\"Sumbersari Wetan\";\"main\"\n\"7083193\";\"Krajan\";\"main\"\n\"7083205\";\"Jubung\";\"main\"\n\"7083207\";\"Mangli\";\"main\"\n\"7083225\";\"Langsepan\";\"main\"\n\"7083227\";\"Muktisari\";\"main\"\n\"7083232\";\"Ajung\";\"main\"\n\"7083259\";\"Krasak\";\"main\"\n\"7083266\";\"Klompangan\";\"main\"\n\"7083271\";\"Renes\";\"main\"\n\"7083287\";\"Durenan\";\"main\"\n\"7083362\";\"Bedadung\";\"main\"\n\"7083373\";\"Ajung\";\"main\"\n\"7083386\";\"Krajan Satu\";\"main\"\n\"7083398\";\"Tlogowetan\";\"main\"\n\"7083401\";\"Karangsadang\";\"main\"\n\"7083421\";\"Gambiran Wetan\";\"main\"\n\"7083438\";\"Suren\";\"main\"\n\"7083448\";\"Sumberpinang Satu\";\"main\"\n\"7083460\";\"Pakusari\";\"main\"\n\"7083470\";\"Sumberkejayan\";\"main\"\n\"7083481\";\"Klayu Wetan\";\"main\"\n\"7083484\";\"Kertosari\";\"main\"\n\"7083497\";\"Sidomukti\";\"main\"\n\"7083500\";\"Seputih\";\"main\"\n\"7083505\";\"Karangkedawung\";\"main\"\n\"7083523\";\"Sumberagung\";\"main\"\n\"7083566\";\"Mayang\";\"main\"\n\"7083567\";\"Sumberpinang\";\"main\"\n\"7083633\";\"Mulyorejo\";\"main\"\n\"7083634\";\"Pacarkeling\";\"main\"\n\"7083635\";\"Gununganyar\";\"main\"\n\"7083636\";\"Prapen\";\"main\"\n\"7083717\";\"Semarapura\";\"main\"\n\"7083822\";\"Dawan\";\"main\"\n\"7083874\";\"Dawan\";\"main\"\n\"7083875\";\"Semarapura\";\"main\"\n\"7083896\";\"Krajan\";\"main\"\n\"7083898\";\"Balokan\";\"main\"\n\"7083907\";\"Blokagung\";\"main\"\n\"7083918\";\"Barurejo\";\"main\"\n\"7083968\";\"Kluncing\";\"main\"\n\"7083969\";\"Krajan\";\"main\"\n\"7083982\";\"Plataran\";\"main\"\n\"7084003\";\"Songgon\";\"main\"\n\"7084005\";\"Songgon Krajan\";\"main\"\n\"7084009\";\"Sragikrajan\";\"main\"\n\"7084014\";\"Sumberagung\";\"main\"\n\"7084015\";\"Sumberarumkrajan\";\"main\"\n\"7084161\";\"Tirtopuro\";\"main\"\n\"7084167\";\"Krajanputuk\";\"main\"\n\"7084183\";\"Krajan\";\"main\"\n\"7084201\";\"Detik Satu\";\"main\"\n\"7084208\";\"Krajan\";\"main\"\n\"7084214\";\"Krajan\";\"main\"\n\"7084223\";\"Krajan\";\"main\"\n\"7084239\";\"Krajan\";\"main\"\n\"7084242\";\"Krajan\";\"main\"\n\"7084247\";\"Krajan\";\"main\"\n\"7084249\";\"Krajan\";\"main\"\n\"7084273\";\"Krajan\";\"main\"\n\"7084276\";\"Krajan\";\"main\"\n\"7084278\";\"Olehsari\";\"main\"\n\"7084279\";\"Krajan\";\"main\"\n\"7084286\";\"Krajan\";\"main\"\n\"7084289\";\"Krajan\";\"main\"\n\"7084302\";\"Krajan\";\"main\"\n\"7084315\";\"Gaplak\";\"main\"\n\"7084318\";\"Krajan\";\"main\"\n\"7084323\";\"Krajan Satu\";\"main\"\n\"7084325\";\"Krajan\";\"main\"\n\"7084333\";\"Wirodayan\";\"main\"\n\"7084340\";\"Krajan\";\"main\"\n\"7084341\";\"Krajan Selatan\";\"main\"\n\"7084343\";\"Krajan\";\"main\"\n\"7084348\";\"Cungking\";\"main\"\n\"7084350\";\"Krajan\";\"main\"\n\"7084351\";\"Krajan Satu\";\"main\"\n\"7084361\";\"Krajan\";\"main\"\n\"7084364\";\"Kepuh Wetan\";\"main\"\n\"7084389\";\"Kertosari\";\"main\"\n\"7084404\";\"Krajan\";\"main\"\n\"7084409\";\"Banyuwangi\";\"main\"\n\"7084521\";\"Seririt\";\"main\"\n\"7084521\";\"Серирит\";\"other\"\n\"7084524\";\"Dajanrurung\";\"main\"\n\"7084531\";\"Umbanyar\";\"main\"\n\"7084533\";\"Purwa\";\"main\"\n\"7084546\";\"Tamansari\";\"main\"\n\"7084547\";\"Tangguwisia\";\"main\"\n\"7084549\";\"Kelodan\";\"main\"\n\"7084550\";\"Banjar Dawan\";\"main\"\n\"7084552\";\"Ambian\";\"main\"\n\"7084557\";\"Tampekan\";\"main\"\n\"7084573\";\"Pegayaman\";\"main\"\n\"7084582\";\"Pangkungparuk\";\"main\"\n\"7084591\";\"Yatnyaketi\";\"main\"\n\"7084611\";\"Kajanan\";\"main\"\n\"7084618\";\"Lebahseri\";\"main\"\n\"7084619\";\"Baleagung\";\"main\"\n\"7084621\";\"Kertanadi\";\"main\"\n\"7084629\";\"Bestala\";\"main\"\n\"7084631\";\"Banjarsari\";\"main\"\n\"7084634\";\"Dajanpura\";\"main\"\n\"7084666\";\"Seririt\";\"main\"\n\"7084673\";\"Banjar Trunyan\";\"main\"\n\"7084696\";\"Banjar Kedisan\";\"main\"\n\"7084699\";\"Banjar Buahan\";\"main\"\n\"7084713\";\"Banjar Suter\";\"main\"\n\"7084718\";\"Banjar Bias\";\"main\"\n\"7084859\";\"Sengkerang Tiga\";\"main\"\n\"7084890\";\"Rangah\";\"main\"\n\"7085015\";\"Tamanbumigora\";\"main\"\n\"7085036\";\"Ketara\";\"main\"\n\"7085070\";\"Pengembur Dua\";\"main\"\n\"7085075\";\"Tanakawu Dua\";\"main\"\n\"7085141\";\"Teruwai\";\"main\"\n\"7085362\";\"Pagutan\";\"main\"\n\"7085370\";\"Barabali\";\"main\"\n\"7085420\";\"Bodak\";\"main\"\n\"7085464\";\"Montongbelok\";\"main\"\n\"7085488\";\"Montonggamang\";\"main\"\n\"7085640\";\"Darmaji\";\"main\"\n\"7085818\";\"Barejulat\";\"main\"\n\"7085886\";\"Semayan\";\"main\"\n\"7085926\";\"Bagiktinggang\";\"main\"\n\"7085937\";\"Majan\";\"main\"\n\"7085969\";\"Beraim\";\"main\"\n\"7086079\";\"Praya\";\"main\"\n\"7086080\";\"Praya\";\"main\"\n\"7086081\";\"Kopang Satu\";\"main\"\n\"7086150\";\"Meringkik\";\"main\"\n\"7086215\";\"Sukamulia\";\"main\"\n\"7086220\";\"Gubuk Timuk\";\"main\"\n\"7086224\";\"Bongkemalik\";\"main\"\n\"7086264\";\"Muhajirin\";\"main\"\n\"7086284\";\"Peresak Barat\";\"main\"\n\"7086299\";\"Denggen Daya\";\"main\"\n\"7086310\";\"Timba Timuk\";\"main\"\n\"7086365\";\"Bebae\";\"main\"\n\"7086384\";\"Gereneng\";\"main\"\n\"7086414\";\"Paoqpampang\";\"main\"\n\"7086438\";\"Lepak\";\"main\"\n\"7086467\";\"Timukpeken\";\"main\"\n\"7086478\";\"Mandikbatu\";\"main\"\n\"7086615\";\"Gubuk Daya\";\"main\"\n\"7086629\";\"Batubasong Lauk\";\"main\"\n\"7086662\";\"Montonggedeng\";\"main\"\n\"7086670\";\"Selaparang Timur\";\"main\"\n\"7086691\";\"Dasanlian Lauk\";\"main\"\n\"7086698\";\"Kembangkerang Lauk Timur\";\"main\"\n\"7086717\";\"Jorong Lauk\";\"main\"\n\"7086735\";\"Aikmel\";\"main\"\n\"7086778\";\"Bagikkedok Lauk\";\"main\"\n\"7086787\";\"Gubuk Daya\";\"main\"\n\"7086823\";\"Karangranjong\";\"main\"\n\"7086868\";\"Gelumpang\";\"main\"\n\"7086880\";\"Anjani Barat\";\"main\"\n\"7086950\";\"Gubuk Leuk\";\"main\"\n\"7086986\";\"Tumbukebon\";\"main\"\n\"7086994\";\"Banjar Geriana Kangin\";\"main\"\n\"7087015\";\"Banjar Wates Tengah\";\"main\"\n\"7087054\";\"Banjar Jungutan\";\"main\"\n\"7087061\";\"Banjar Tengah\";\"main\"\n\"7087072\";\"Banjar Tengah\";\"main\"\n\"7087079\";\"Banjar Kawan\";\"main\"\n\"7087114\";\"Banjar Kelodan\";\"main\"\n\"7087132\";\"Banjar Bau Kawan\";\"main\"\n\"7087143\";\"Banjar Ababi\";\"main\"\n\"7087156\";\"Banjar Budakeling\";\"main\"\n\"7087178\";\"Banjar Beji\";\"main\"\n\"7087190\";\"Banjar Pegeringsingan\";\"main\"\n\"7087203\";\"Tistagede\";\"main\"\n\"7087209\";\"Abang\";\"main\"\n\"7087224\";\"Tiyingtali Kelod\";\"main\"\n\"7087266\";\"Banjar Danginsema\";\"main\"\n\"7087267\";\"Subagan\";\"main\"\n\"7087279\";\"Banjar Timbrah\";\"main\"\n\"7087314\";\"Alanga\";\"main\"\n\"7087338\";\"Lokuuy\";\"main\"\n\"7087342\";\"Pahomba\";\"main\"\n\"7089015\";\"Lengkoajang\";\"main\"\n\"7089019\";\"Buti\";\"main\"\n\"7089048\";\"Ntaram\";\"main\"\n\"7089056\";\"Mombok\";\"main\"\n\"7089071\";\"Watunggong\";\"main\"\n\"7089083\";\"Rantang\";\"main\"\n\"7089087\";\"Ngkolong\";\"main\"\n\"7089109\";\"Ngkodal\";\"main\"\n\"7089115\";\"Ngkiong\";\"main\"\n\"7089118\";\"Jawa\";\"main\"\n\"7089140\";\"Biting\";\"main\"\n\"7089168\";\"Pamakoe\";\"main\"\n\"7089168\";\"Pomakoe\";\"other\"\n\"7089185\";\"Lena\";\"main\"\n\"7089224\";\"Bhokadoke\";\"main\"\n\"7089248\";\"Lokatadho\";\"main\"\n\"7089328\";\"Wolowada\";\"main\"\n\"7089337\";\"Pau\";\"main\"\n\"7089361\";\"Mbeku\";\"main\"\n\"7089375\";\"Boanio\";\"main\"\n\"7089390\";\"Doma\";\"main\"\n\"7089402\";\"Jawatiwa\";\"main\"\n\"7089411\";\"Aegela\";\"main\"\n\"7089416\";\"Tibakisa\";\"main\"\n\"7102417\";\"Pauhambar\";\"main\"\n\"7102427\";\"Lubukalung\";\"main\"\n\"7102451\";\"Sungaisarik\";\"main\"\n\"7102453\";\"Kampungladang\";\"main\"\n\"7102625\";\"Kotatua\";\"main\"\n\"7103970\";\"Guguk\";\"main\"\n\"7104034\";\"Salimpaung\";\"main\"\n\"7104044\";\"Sungayang\";\"main\"\n\"7104050\";\"Simabur\";\"main\"\n\"7104055\";\"Rambatan\";\"main\"\n\"7104136\";\"Gunung Talang\";\"main\"\n\"7104187\";\"Kumanis\";\"main\"\n\"7104203\";\"Tanjungampalu\";\"main\"\n\"7104206\";\"Kototujuh\";\"main\"\n\"7104261\";\"Sirukam\";\"main\"\n\"7104275\";\"Painan\";\"main\"\n\"7104357\";\"Tanjung Mas\";\"main\"\n\"7331713\";\"Boto\";\"main\"\n\"7331718\";\"Badong\";\"main\"\n\"7333189\";\"Nlorong\";\"main\"\n\"7333191\";\"Palon\";\"main\"\n\"7333199\";\"Ngampon\";\"main\"\n\"7333200\";\"Jepang Satu\";\"main\"\n\"7333208\";\"Ngablak\";\"main\"\n\"7333215\";\"Jomblang\";\"main\"\n\"7333222\";\"Klopoduwur\";\"main\"\n\"7333225\";\"Gumiring\";\"main\"\n\"7333254\";\"Jatiklampok\";\"main\"\n\"7333261\";\"Botoh\";\"main\"\n\"7333265\";\"Temanjang\";\"main\"\n\"7333269\";\"Galuk\";\"main\"\n\"7333286\";\"Banjar Meliling Kawan\";\"main\"\n\"7333390\";\"Kromot\";\"main\"\n\"7333409\";\"Sumbergebang\";\"main\"\n\"7333420\";\"Krajan\";\"main\"\n\"7333422\";\"Krajan Satu\";\"main\"\n\"7333424\";\"Krajan\";\"main\"\n\"7333445\";\"Curahklapa\";\"main\"\n\"7333451\";\"Pondoktelo\";\"main\"\n\"7333525\";\"Banjar Delodrurung\";\"main\"\n\"7333525\";\"Delodrurung\";\"other\"\n\"7333529\";\"Bajera\";\"main\"\n\"7333536\";\"Banjar Baleagung\";\"main\"\n\"7333542\";\"Banjar Bantasbaleagung\";\"main\"\n\"7333557\";\"Banjar Batuaji Kaja\";\"main\"\n\"7333559\";\"Banjar Sembunggede\";\"main\"\n\"7333576\";\"Banjar Gablogan\";\"main\"\n\"7333592\";\"Banjar Mambanggede\";\"main\"\n\"7333595\";\"Banjar Mandung\";\"main\"\n\"7333603\";\"Banjar Jambe Baleran\";\"main\"\n\"7333617\";\"Banjar Tegalmengkeb Kaja\";\"main\"\n\"7333626\";\"Banjar Kebon\";\"main\"\n\"7333631\";\"Banjar Baturiti Kaja\";\"main\"\n\"7333639\";\"Banjar Penyalin\";\"main\"\n\"7333648\";\"Banjar Tegal Belodan\";\"main\"\n\"7333651\";\"Banjar Pangkungkarung Kangin\";\"main\"\n\"7333655\";\"Banjar Pekandelan\";\"main\"\n\"7333662\";\"Banjar Dauhpangkung\";\"main\"\n\"7333664\";\"Banjar Belumbang Tengah\";\"main\"\n\"7333675\";\"Banjar Beraban Kangin\";\"main\"\n\"7333693\";\"Banjar Tonja\";\"main\"\n\"7333700\";\"Banjar Bongangede\";\"main\"\n\"7333719\";\"Banjar Tibubiyu Kaja\";\"main\"\n\"7333742\";\"Banjar Dukuh\";\"main\"\n\"7333762\";\"Banjar Pejaten\";\"main\"\n\"7333764\";\"Banjar Sengguan\";\"main\"\n\"7333774\";\"Banjar Bengkelgede\";\"main\"\n\"7333788\";\"Banjar Pangkungtibah Selatan\";\"main\"\n\"7333790\";\"Banjar Dauhrurung\";\"main\"\n\"7333797\";\"Banjar Delodsema\";\"main\"\n\"7333797\";\"Delodsema\";\"other\"\n\"7333806\";\"Banjar Batanbuah\";\"main\"\n\"7334096\";\"Banjar Batanyuh Kaja\";\"main\"\n\"7334098\";\"Banjar Sayanbaleran\";\"main\"\n\"7334104\";\"Banjar Badung Tengah\";\"main\"\n\"7334105\";\"Banjar Kembangsari\";\"main\"\n\"7334114\";\"Banjar Teguan\";\"main\"\n\"7334130\";\"Banjar Tengahbelayu\";\"main\"\n\"7334140\";\"Banjar Subamiabaleagung\";\"main\"\n\"7334167\";\"Banjar Kertasari\";\"main\"\n\"7334167\";\"Kerthasari\";\"other\"\n\"7334176\";\"Banjar Keraman\";\"main\"\n\"7334221\";\"Banjar Cemenggon\";\"main\"\n\"7334251\";\"Banjar Serangan\";\"main\"\n\"7334260\";\"Banjar Paangkelod\";\"main\"\n\"7334268\";\"Banjar Abiantuwung\";\"main\"\n\"7334302\";\"Banjar Jumbayah\";\"main\"\n\"7334308\";\"Banjar Jagasatru\";\"main\"\n\"7334342\";\"Banjar Sedang\";\"main\"\n\"7334344\";\"Banjar Desa\";\"main\"\n\"7334349\";\"Banjar Parekan\";\"main\"\n\"7334355\";\"Banjar Pekenjelodan\";\"main\"\n\"7334360\";\"Banjar Danginpangkung\";\"main\"\n\"7334365\";\"Banjar Mundeh\";\"main\"\n\"7334366\";\"Banjar Laing\";\"main\"\n\"7334373\";\"Banjar Dauh Peken\";\"main\"\n\"7334392\";\"Banjar Bucu\";\"main\"\n\"7334406\";\"Banjar Jabejero\";\"main\"\n\"7334424\";\"Banjar Lalangpasek\";\"main\"\n\"7334448\";\"Banjar Karangsuling\";\"main\"\n\"7334462\";\"Banjar Kayangan\";\"main\"\n\"7334462\";\"Kayangan\";\"other\"\n\"7334500\";\"Banjar Gunungpande\";\"main\"\n\"7334510\";\"Banjar Kerobokan\";\"main\"\n\"7334529\";\"Banjar Kembangsari\";\"main\"\n\"7334530\";\"Banjar Tebongkang\";\"main\"\n\"7334531\";\"Banjar Serangan\";\"main\"\n\"7334532\";\"Banjar Jagasatru\";\"main\"\n\"7334542\";\"Karanglo\";\"main\"\n\"7334568\";\"Kedungrejo\";\"main\"\n\"7334573\";\"Sumbersewu\";\"main\"\n\"7334584\";\"Kumendung Satu\";\"main\"\n\"7334586\";\"Rejoagung Satu\";\"main\"\n\"7334592\";\"Curahpacul Satu\";\"main\"\n\"7334595\";\"Kedungwringin Satu\";\"main\"\n\"7334602\";\"Wringinputih\";\"main\"\n\"7334603\";\"Sumberberas\";\"main\"\n\"7334612\";\"Kedungsumur\";\"main\"\n\"7334615\";\"Wringinanom Satu\";\"main\"\n\"7334618\";\"Siderejo\";\"main\"\n\"7334627\";\"Rumping\";\"main\"\n\"7334656\";\"Kedungrejo\";\"main\"\n\"7334840\";\"Denuma\";\"main\"\n\"7334853\";\"Riang Tengah\";\"main\"\n\"7334857\";\"Megati Kelod\";\"main\"\n\"7334882\";\"Angkahgede\";\"main\"\n\"7334929\";\"Laleng\";\"main\"\n\"7334952\";\"Wanagiri\";\"main\"\n\"7334983\";\"Dalangdesa\";\"main\"\n\"7334985\";\"Apityeh\";\"main\"\n\"7334991\";\"Carik\";\"main\"\n\"7335031\";\"Delodpeken\";\"main\"\n\"7335034\";\"Wongaya Kaja\";\"main\"\n\"7335063\";\"Rejasa Kaja\";\"main\"\n\"7335070\";\"Kesiutkawan Kaja\";\"main\"\n\"7335152\";\"Selemadeg Kelod\";\"main\"\n\"7335181\";\"Cungapmimbo\";\"main\"\n\"7335362\";\"Jorowaru Daya\";\"main\"\n\"7335443\";\"Pemongkong\";\"main\"\n\"7335564\";\"Ganti Dua\";\"main\"\n\"7335585\";\"Batugulung\";\"main\"\n\"7335632\";\"Sagikmateng\";\"main\"\n\"7335745\";\"Penimbung Barat\";\"main\"\n\"7335747\";\"Mambalan\";\"main\"\n\"7335750\";\"Dasangeria Selatan\";\"main\"\n\"7335764\";\"Dumandesa\";\"main\"\n\"7335766\";\"Kekeri\";\"main\"\n\"7335774\";\"Sayang Lauq\";\"main\"\n\"7335813\";\"Selagalas\";\"main\"\n\"7335819\";\"Sindu\";\"main\"\n\"7335852\";\"Karangkecicang\";\"main\"\n\"7335864\";\"Karangparwa\";\"main\"\n\"7335875\";\"Babakan Barat\";\"main\"\n\"7335893\";\"Jejelok\";\"main\"\n\"7335932\";\"Tanaktepong\";\"main\"\n\"7335936\";\"Batukuta\";\"main\"\n\"7335964\";\"Selat\";\"main\"\n\"7335974\";\"Lingsar\";\"main\"\n\"7335977\";\"Tanakbeak Daye\";\"main\"\n\"7335979\";\"Sintung Timur\";\"main\"\n\"7336022\";\"Sesaot Lauq\";\"main\"\n\"7336033\";\"Bengkel Utara\";\"main\"\n\"7336254\";\"Karangsubagan\";\"main\"\n\"7336492\";\"Redakodi\";\"main\"\n\"7336533\";\"Maredakamau\";\"main\"\n\"7336551\";\"Radamata\";\"main\"\n\"7336843\";\"Nangapanda\";\"main\"\n\"7336858\";\"Nangapanda\";\"main\"\n\"7336876\";\"Wakaseko\";\"main\"\n\"7336892\";\"Kamubheka\";\"main\"\n\"7336911\";\"Oja\";\"main\"\n\"7336944\";\"Puukau\";\"main\"\n\"7336948\";\"Kuekobo\";\"main\"\n\"7336962\";\"Arwea\";\"main\"\n\"7337079\";\"Lando\";\"main\"\n\"7337172\";\"Pau\";\"main\"\n\"7337173\";\"Sasa\";\"main\"\n\"7337281\";\"Kembo\";\"main\"\n\"7337287\";\"Mbarungkeli\";\"main\"\n\"7337319\";\"Wate\";\"main\"\n\"7337729\";\"Kombandaru\";\"main\"\n\"7337732\";\"Puubheto\";\"main\"\n\"7337745\";\"Maunggora\";\"main\"\n\"7337763\";\"Baraiwena\";\"main\"\n\"7337769\";\"Mbomba\";\"main\"\n\"7337780\";\"Puutura\";\"main\"\n\"7337833\";\"Roa\";\"main\"\n\"7337846\";\"Kengga\";\"main\"\n\"7337858\";\"Aefeo\";\"main\"\n\"7337882\";\"Saga\";\"main\"\n\"7337908\";\"Detumbawa\";\"main\"\n\"7337939\";\"Puuperi\";\"main\"\n\"7337942\";\"Nuasepu\";\"main\"\n\"7337955\";\"Puutuga\";\"main\"\n\"7337968\";\"Aemura\";\"main\"\n\"7337986\";\"Lokoboko\";\"main\"\n\"7337996\";\"Nuakota\";\"main\"\n\"7337999\";\"Ndona\";\"main\"\n\"7338003\";\"Wolowona\";\"main\"\n\"7338010\";\"Wolonio\";\"main\"\n\"7338035\";\"Onewitu\";\"main\"\n\"7338037\";\"Onekore\";\"main\"\n\"7338055\";\"Mautapaga Bawah\";\"main\"\n\"7338061\";\"Potulando\";\"main\"\n\"7338063\";\"Mbongawani\";\"main\"\n\"7338070\";\"Rukunlima Bawah\";\"main\"\n\"7338073\";\"Paupanda Bawah\";\"main\"\n\"7338078\";\"Tetandara\";\"main\"\n\"7338089\";\"Ngalupolo\";\"main\"\n\"7338310\";\"Detuwane\";\"main\"\n\"7338330\";\"Jalasenga\";\"main\"\n\"7338335\";\"Maurole\";\"main\"\n\"7338349\";\"Nggesa\";\"main\"\n\"7338357\";\"Kanganara\";\"main\"\n\"7338373\";\"Nuamuri\";\"main\"\n\"7339616\";\"Lendangtampel Daya\";\"main\"\n\"7339653\";\"Kembangkerang Satu\";\"main\"\n\"7339694\";\"Mantang\";\"main\"\n\"7339720\";\"Selebung Satu\";\"main\"\n\"7339725\";\"Pediti\";\"main\"\n\"7339728\";\"Lilin Satu\";\"main\"\n\"7339733\";\"Lendangara Satu\";\"main\"\n\"7339768\";\"Peseng\";\"main\"\n\"7347294\";\"Purut\";\"main\"\n\"7347303\";\"Krajanpagowan\";\"main\"\n\"7347312\";\"Krajankertosari\";\"main\"\n\"7347317\";\"Tambahrejo Krajan\";\"main\"\n\"7347323\";\"Kloposawit Krajan\";\"main\"\n\"7347327\";\"Besuk Selatan\";\"main\"\n\"7347342\";\"Sumberrejo\";\"main\"\n\"7347371\";\"Krajanjugosari\";\"main\"\n\"7347381\";\"Sumberkardi\";\"main\"\n\"7350321\";\"Jambesari\";\"main\"\n\"7350353\";\"Gelang\";\"main\"\n\"7350366\";\"Karangbayat\";\"main\"\n\"7350378\";\"Pringgowirawan\";\"main\"\n\"7350446\";\"Boreng\";\"main\"\n\"7350451\";\"Blukon\";\"main\"\n\"7350454\";\"Sukosari\";\"main\"\n\"7350456\";\"Krajan Kidul Rojopolo\";\"main\"\n\"7350456\";\"Krajan Kidul\";\"other\"\n\"7350474\";\"Krajan Dua Dawuan Wetan\";\"main\"\n\"7350474\";\"Krajan Dua\";\"other\"\n\"7350478\";\"Denok\";\"main\"\n\"7350482\";\"Pandansari\";\"main\"\n\"7350485\";\"Krajan Wonokerto\";\"main\"\n\"7350485\";\"Krajan\";\"other\"\n\"7350502\";\"Krajan Tekung\";\"main\"\n\"7350502\";\"Krajan\";\"other\"\n\"7350503\";\"Tegalsari\";\"main\"\n\"7350511\";\"Darunban\";\"main\"\n\"7350521\";\"Pondokrejo\";\"main\"\n\"7350522\";\"Rowokangkung\";\"main\"\n\"7350524\";\"Krajan Rowokangkung\";\"main\"\n\"7350524\";\"Krajan\";\"other\"\n\"7350546\";\"Tulusmulyo\";\"main\"\n\"7350549\";\"Gogosan\";\"main\"\n\"7350551\";\"Karangsari\";\"main\"\n\"7350554\";\"Darungan\";\"main\"\n\"7350558\";\"Krajan Krai\";\"main\"\n\"7350558\";\"Krajan\";\"other\"\n\"7350563\";\"Jombang\";\"main\"\n\"7350565\";\"Kebonsari\";\"main\"\n\"7350566\";\"Krajan Dua Padomasan\";\"main\"\n\"7350566\";\"Krajan Dua\";\"other\"\n\"7350569\";\"Sebaren\";\"main\"\n\"7350779\";\"Slateng Dua\";\"main\"\n\"7350788\";\"Sumberkenanga\";\"main\"\n\"7350796\";\"Sukowono\";\"main\"\n\"7350812\";\"Pringgodani\";\"main\"\n\"7350818\";\"Jambearum\";\"main\"\n\"7350829\";\"Rowosari\";\"main\"\n\"7350835\";\"Karangsumber\";\"main\"\n\"7350841\";\"Gunungmalang Satu\";\"main\"\n\"7350943\";\"Banjar Pasekan\";\"main\"\n\"7350950\";\"Banjar Kertajiwa\";\"main\"\n\"7350972\";\"Banjar Batanpoh\";\"main\"\n\"7350978\";\"Banjar Taman\";\"main\"\n\"7350985\";\"Banjar Medura\";\"main\"\n\"7351040\";\"Banjar Cempaga\";\"main\"\n\"7351043\";\"Banjar Tamansari\";\"main\"\n\"7351048\";\"Banjar Bunutpanggang\";\"main\"\n\"7351057\";\"Banjar Dauhpura\";\"main\"\n\"7351064\";\"Banjar Pedawa\";\"main\"\n\"7351071\";\"Banjar Banyualit\";\"main\"\n\"7351074\";\"Banjar Kayuputih\";\"main\"\n\"7351086\";\"Banjar Dauhmargi\";\"main\"\n\"7351091\";\"Banjar Dharmasemedi\";\"main\"\n\"7351093\";\"Banjar Anyar\";\"main\"\n\"7351095\";\"Banjar Tegallinggah\";\"main\"\n\"7351118\";\"Banjar Galiran\";\"main\"\n\"7351129\";\"Banjar Selat\";\"main\"\n\"7351139\";\"Banjar Tegalsari\";\"main\"\n\"7351140\";\"Banjar Liligundi\";\"main\"\n\"7351142\";\"Banjar Sambangan\";\"main\"\n\"7351143\";\"Banjar Dauhpura\";\"main\"\n\"7351152\";\"Banjar Beratan\";\"main\"\n\"7351164\";\"Banjar Pondok\";\"main\"\n\"7351166\";\"Banjar Padangbulia\";\"main\"\n\"7351759\";\"Meraran\";\"main\"\n\"7351762\";\"Seteluk Tengah\";\"main\"\n\"7351764\";\"Seteluk Atas\";\"main\"\n\"7351770\";\"Rempe\";\"main\"\n\"7351773\";\"Airsuning\";\"main\"\n\"7351808\";\"Bugis\";\"main\"\n\"7351811\";\"Motong\";\"main\"\n\"7351812\";\"Dalam\";\"main\"\n\"7351815\";\"Sampir\";\"main\"\n\"7351922\";\"Juranalas\";\"main\"\n\"7351939\";\"Mapinkebak\";\"main\"\n\"7351944\";\"Mapinrea\";\"main\"\n\"7351964\";\"Luar\";\"main\"\n\"7351967\";\"Dalam\";\"main\"\n\"7351978\";\"Baru\";\"main\"\n\"7351981\";\"Kalimango\";\"main\"\n\"7352046\";\"Batutering\";\"main\"\n\"7352055\";\"Sebasang\";\"main\"\n\"7375165\";\"Mronjo\";\"main\"\n\"7375180\";\"Siraman\";\"main\"\n\"7375185\";\"Jabung\";\"main\"\n\"7375190\";\"Mandesan\";\"main\"\n\"7375205\";\"Kaulon\";\"main\"\n\"7375223\";\"Ngembul\";\"main\"\n\"7375226\";\"Umbuldamar\";\"main\"\n\"7375227\";\"Ngadri\";\"main\"\n\"7375243\";\"Rampalombo\";\"main\"\n\"7375248\";\"Rejoso\";\"main\"\n\"7375252\";\"Sambigede\";\"main\"\n\"7375255\";\"Panggungasri\";\"main\"\n\"7375263\";\"Birowo\";\"main\"\n\"7375268\";\"Salamrejo\";\"main\"\n\"7375287\";\"Panggungwinong\";\"main\"\n\"7375298\";\"Sumberarum\";\"main\"\n\"7375331\";\"Pecaren\";\"main\"\n\"7375343\";\"Pruntusan\";\"main\"\n\"7375349\";\"Sembungin\";\"main\"\n\"7375349\";\"Sembongin\";\"other\"\n\"7375350\";\"Balongrejo\";\"main\"\n\"7375356\";\"Gondang\";\"main\"\n\"7375359\";\"Punggursugih\";\"main\"\n\"7375369\";\"Ketanggi\";\"main\"\n\"7375374\";\"Karangtalun\";\"main\"\n\"7375383\";\"Mojo Wetan\";\"main\"\n\"7375390\";\"Talok\";\"main\"\n\"7375398\";\"Jetak\";\"main\"\n\"7375399\";\"Jepang\";\"main\"\n\"7375409\";\"Karangtengah\";\"main\"\n\"7375411\";\"Gapuk\";\"main\"\n\"7375413\";\"Sendanggayam\";\"main\"\n\"7375419\";\"Bacem\";\"main\"\n\"7375424\";\"Sambirejo\";\"main\"\n\"7375425\";\"Gesik\";\"main\"\n\"7375439\";\"Muraharjo\";\"main\"\n\"7375440\";\"Jagong\";\"main\"\n\"7375449\";\"Plumbon\";\"main\"\n\"7375451\";\"Kendayakan\";\"main\"\n\"7375474\";\"Pipes\";\"main\"\n\"7375634\";\"Jatiarum\";\"main\"\n\"7375638\";\"Purwosari\";\"main\"\n\"7375661\";\"Perjuangan\";\"main\"\n\"7375664\";\"Laban\";\"main\"\n\"7375666\";\"Kadipaten\";\"main\"\n\"7375675\";\"Gedongsari\";\"main\"\n\"7375680\";\"Pandanwangi\";\"main\"\n\"7375687\";\"Sarirejo Satu\";\"main\"\n\"7375689\";\"Grati Satu\";\"main\"\n\"7375697\";\"Suko Dua\";\"main\"\n\"7375707\";\"Besukan\";\"main\"\n\"7375711\";\"Krajan Satu\";\"main\"\n\"7375723\";\"Bedok Dua\";\"main\"\n\"7375724\";\"Sumberbendo\";\"main\"\n\"7375727\";\"Besukrejo\";\"main\"\n\"7375741\";\"Recobanteng\";\"main\"\n\"7375763\";\"Dompyong\";\"main\"\n\"7375769\";\"Kebonsari\";\"main\"\n\"7375772\";\"Krajan Tengah\";\"main\"\n\"7375776\";\"Kebonan\";\"main\"\n\"7375782\";\"Mujur Satu\";\"main\"\n\"7375791\";\"Mentosari\";\"main\"\n\"7375795\";\"Ketangi\";\"main\"\n\"7375797\";\"Sukolilo\";\"main\"\n\"7375801\";\"Kebonan\";\"main\"\n\"7375809\";\"Pandean\";\"main\"\n\"7375817\";\"Cengkok\";\"main\"\n\"7375824\";\"Krajan Dua\";\"main\"\n\"7375827\";\"Karangtengah\";\"main\"\n\"7375890\";\"Kramat\";\"main\"\n\"7375902\";\"Rowotengah\";\"main\"\n\"7375907\";\"Klatakan\";\"main\"\n\"7375910\";\"Tanggul Wetan\";\"main\"\n\"7375916\";\"Darungan\";\"main\"\n\"7375920\";\"Tanggul Kulon\";\"main\"\n\"7375923\";\"Rowotengu\";\"main\"\n\"7375944\";\"Sukoreno\";\"main\"\n\"7375952\";\"Ngampelrejo\";\"main\"\n\"7375953\";\"Wringinagung\";\"main\"\n\"7375954\";\"Rejoagung\";\"main\"\n\"7375959\";\"Semboropasar\";\"main\"\n\"7375966\";\"Gadingrejo\";\"main\"\n\"7375980\";\"Paleran\";\"main\"\n\"7375983\";\"Sidomekar\";\"main\"\n\"7376087\";\"Banjar Ponggang\";\"main\"\n\"7376090\";\"Banjar Taro Kelod\";\"main\"\n\"7376100\";\"Banjar Tiga\";\"main\"\n\"7376130\";\"Banjar Dujung Kaja\";\"main\"\n\"7376134\";\"Banjar Bukian\";\"main\"\n\"7376142\";\"Banjar Manukayaanyar\";\"main\"\n\"7376148\";\"Sulahan\";\"main\"\n\"7376182\";\"Banjar Kubu\";\"main\"\n\"7376188\";\"Banjar Brahmanabukit\";\"main\"\n\"7376200\";\"Banjar Triwangsakelusa\";\"main\"\n\"7376210\";\"Banjar Petak\";\"main\"\n\"7376236\";\"Banjar Triwangsakeliki\";\"main\"\n\"7376245\";\"Banjar Sandinggianyar\";\"main\"\n\"7376260\";\"Banjar Mulung\";\"main\"\n\"7376294\";\"Banjar Pesalakan\";\"main\"\n\"7376305\";\"Banjar Abuan\";\"main\"\n\"7376310\";\"Banjar Bebalang\";\"main\"\n\"7376314\";\"Banjar Apuan Kaja\";\"main\"\n\"7376315\";\"Banjar Madangan Kaja\";\"main\"\n\"7376338\";\"Sulahan\";\"main\"\n\"7376376\";\"Jeding\";\"main\"\n\"7376533\";\"Karangkebon Timur\";\"main\"\n\"7376585\";\"Karang Kuripan\";\"main\"\n\"7376775\";\"Pendaleman\";\"main\"\n\"7376782\";\"Batutulis\";\"main\"\n\"7376824\";\"Blong Daye\";\"main\"\n\"7376896\";\"Ampanlolat\";\"main\"\n\"7376911\";\"Ranggagata\";\"main\"\n\"7376944\";\"Karangdalam\";\"main\"\n\"7376985\";\"Bangekdewa\";\"main\"\n\"7376992\";\"Karang Daye\";\"main\"\n\"7377008\";\"Permas\";\"main\"\n\"7377082\";\"Tetebatu\";\"main\"\n\"7377107\";\"Perian Selatan\";\"main\"\n\"7377150\";\"Gubukjero Timuk\";\"main\"\n\"7377168\";\"Keroak\";\"main\"\n\"7377195\";\"Sepolong Timur\";\"main\"\n\"7377206\";\"Kampungmasjid\";\"main\"\n\"7377235\";\"Rempungtimur Utara\";\"main\"\n\"7377246\";\"Danger Utara\";\"main\"\n\"7377267\";\"Timba Lauk\";\"main\"\n\"7377293\";\"Dayanpeken\";\"main\"\n\"7377298\";\"Dalamdesa Selatan\";\"main\"\n\"7377350\";\"Mujur\";\"main\"\n\"7377429\";\"Kelungkung\";\"main\"\n\"7377604\";\"Ngeru\";\"main\"\n\"7377900\";\"Jorok Dalam\";\"main\"\n\"7377902\";\"Orong\";\"main\"\n\"7377903\";\"Satowebrang\";\"main\"\n\"7377904\";\"Motong Barat\";\"main\"\n\"7377907\";\"Tengah Satu\";\"main\"\n\"7377919\";\"Rhee Beru\";\"main\"\n\"7377925\";\"Sebedo\";\"main\"\n\"7377953\";\"Seseng\";\"main\"\n\"7377967\";\"Tolotangga\";\"main\"\n\"7378049\";\"Lantebaru\";\"main\"\n\"7378084\";\"Doro Oo\";\"main\"\n\"7378109\";\"Rupe\";\"main\"\n\"7378119\";\"Kalodu\";\"main\"\n\"7378274\";\"Lampe Satu\";\"main\"\n\"7378284\";\"Ta’a\";\"main\"\n\"7378284\";\"Ta'a\";\"ascii\"\n\"7378306\";\"Sigih\";\"main\"\n\"7378320\";\"Raba\";\"main\"\n\"7378335\";\"Oinao\";\"main\"\n\"7378343\";\"Kuta\";\"main\"\n\"7378350\";\"Lambitu\";\"main\"\n\"7378418\";\"Kenari\";\"main\"\n\"7378562\";\"Dalong\";\"main\"\n\"7378585\";\"Merombok\";\"main\"\n\"7378620\";\"Melo\";\"main\"\n\"7379049\";\"Ngarangiakambera\";\"main\"\n\"7379065\";\"Karipidita\";\"main\"\n\"7379235\";\"Borik\";\"main\"\n\"7379258\";\"Waepau\";\"main\"\n\"7379293\";\"Kaca\";\"main\"\n\"7379568\";\"Tungguwaneng\";\"main\"\n\"7379583\";\"Nanganumba\";\"main\"\n\"7380071\";\"Wololele A\";\"main\"\n\"7380094\";\"Aemalu\";\"main\"\n\"7380101\";\"Wololele B\";\"main\"\n\"7380122\";\"Jitapanda\";\"main\"\n\"7380130\";\"Liabeke\";\"main\"\n\"7380133\";\"Baolokan\";\"main\"\n\"7380150\";\"Wonda\";\"main\"\n\"7380160\";\"Aipetu\";\"main\"\n\"7380188\";\"Aeteke\";\"main\"\n\"7380222\";\"Maubasa\";\"main\"\n\"7380233\";\"Aipetu\";\"main\"\n\"7380379\";\"Boujawa\";\"main\"\n\"7380385\";\"Mbani\";\"main\"\n\"7380402\";\"Wolofeo\";\"main\"\n\"7380413\";\"Tendaleo\";\"main\"\n\"7380436\";\"Wolomage\";\"main\"\n\"7380440\";\"Nuajena\";\"main\"\n\"7380444\";\"Wolomoni\";\"main\"\n\"7380564\";\"Rerawere\";\"main\"\n\"7380595\";\"Maukaro\";\"main\"\n\"7380619\";\"Niopanda\";\"main\"\n\"7380637\";\"Loboniki\";\"main\"\n\"7380644\";\"Sokonaja\";\"main\"\n\"7380655\";\"Lokolande\";\"main\"\n\"7380656\";\"Kotabaru\";\"main\"\n\"7381967\";\"Melati\";\"main\"\n\"7381977\";\"Sangia\";\"main\"\n\"7381978\";\"Nae\";\"main\"\n\"7381980\";\"Raioi\";\"main\"\n\"7381983\";\"Bau\";\"main\"\n\"7381985\";\"Rasabau\";\"main\"\n\"7381989\";\"Kalede\";\"main\"\n\"7381990\";\"Naru\";\"main\"\n\"7381996\";\"Sukamaju\";\"main\"\n\"7382002\";\"Wadusari\";\"main\"\n\"7382007\";\"Lanta Timur\";\"main\"\n\"7382010\";\"Balai\";\"main\"\n\"7383821\";\"Manggekompo\";\"main\"\n\"7383823\";\"Oo\";\"main\"\n\"7383830\";\"Donggo\";\"main\"\n\"7383832\";\"Manggenae\";\"main\"\n\"7383835\";\"Sangari\";\"main\"\n\"7383868\";\"Palama\";\"main\"\n\"7384380\";\"Sangiang\";\"main\"\n\"7384407\";\"Hidirasa\";\"main\"\n\"7384412\";\"Oitui\";\"main\"\n\"7384417\";\"Bantawora\";\"main\"\n\"7384423\";\"Tawali\";\"main\"\n\"7384424\";\"Kara\";\"main\"\n\"7384453\";\"Benteng\";\"main\"\n\"7385748\";\"Tangratte\";\"main\"\n\"7385892\";\"Totumbang\";\"main\"\n\"7389150\";\"Tawui\";\"main\"\n\"7389226\";\"Nggongi\";\"main\"\n\"7389227\";\"Nggongi Satu\";\"main\"\n\"7389227\";\"Nggongi 1\";\"other\"\n\"7389385\";\"Mburukullu\";\"main\"\n\"7389418\";\"Palamadu\";\"main\"\n\"7389509\";\"Billa\";\"main\"\n\"7389510\";\"Malahar\";\"main\"\n\"7389521\";\"Karita\";\"main\"\n\"7389685\";\"Laetako\";\"main\"\n\"7389704\";\"Laau\";\"main\"\n\"7389765\";\"Malabhaga\";\"main\"\n\"7389780\";\"Dona\";\"main\"\n\"7389785\";\"Rutojawa\";\"main\"\n\"7389832\";\"Ngedhubasa\";\"main\"\n\"7389837\";\"Ngedhusuba\";\"main\"\n\"7389891\";\"Heret\";\"main\"\n\"7389915\";\"Waenenda\";\"main\"\n\"7389924\";\"Rado\";\"main\"\n\"7389939\";\"Reweng\";\"main\"\n\"7390236\";\"Nangahurebukitpermai\";\"main\"\n\"7390240\";\"Nangahure\";\"main\"\n\"7390254\";\"Urungpigang\";\"main\"\n\"7390260\";\"Wolomarang\";\"main\"\n\"7390270\";\"Kotauneng\";\"main\"\n\"7390272\";\"Kabor\";\"main\"\n\"7405983\";\"Jenggolo Barat\";\"main\"\n\"7405984\";\"Sengguruhkrajan\";\"main\"\n\"7406010\";\"Sumuran\";\"main\"\n\"7406035\";\"Banjarejokrajan\";\"main\"\n\"7406041\";\"Bulupitukrajan\";\"main\"\n\"7406047\";\"Kedungkrajan\";\"main\"\n\"7406052\";\"Sukosarikrajan\";\"main\"\n\"7406150\";\"Sidodadi\";\"main\"\n\"7406164\";\"Krajan Suco\";\"main\"\n\"7406165\";\"Sumber Tengah\";\"main\"\n\"7406167\";\"Peji Satu\";\"main\"\n\"7406171\";\"Gayasan Kulon\";\"main\"\n\"7406190\";\"Tamansari\";\"main\"\n\"7406213\";\"Tempurejo\";\"main\"\n\"7406216\";\"Sruni\";\"main\"\n\"7406217\";\"Andongsari\";\"main\"\n\"7406224\";\"Jatisari\";\"main\"\n\"7406238\";\"Sumberejo\";\"main\"\n\"7406240\";\"Pontang Tengah\";\"main\"\n\"7406343\";\"Sumbersalak\";\"main\"\n\"7406364\";\"Sumberbulus Dua\";\"main\"\n\"7406388\";\"Sidomulyo\";\"main\"\n\"7406442\";\"Pengotaan\";\"main\"\n\"7406452\";\"Krajan Satu Pekauman\";\"main\"\n\"7406452\";\"Krajan Satu\";\"other\"\n\"7406453\";\"Sumberkemuning\";\"main\"\n\"7406459\";\"Sumberjeruk\";\"main\"\n\"7406470\";\"Kalianyar Selatan\";\"main\"\n\"7406473\";\"Kembangpasar\";\"main\"\n\"7406481\";\"Kemirian\";\"main\"\n\"7406483\";\"Kidulsawah\";\"main\"\n\"7406491\";\"Tanahwulan\";\"main\"\n\"7406492\";\"Pujerbaru\";\"main\"\n\"7406493\";\"Gambangan\";\"main\"\n\"7406499\";\"Sumur\";\"main\"\n\"7406502\";\"Krajan Pocangan\";\"main\"\n\"7406502\";\"Krajan\";\"other\"\n\"7406506\";\"Mengenkrajan\";\"main\"\n\"7406511\";\"Karangmelok\";\"main\"\n\"7406519\";\"Krajan Dua Sumbersari\";\"main\"\n\"7406519\";\"Krajan Dua\";\"other\"\n\"7406520\";\"Krajan Atas Suger Lor\";\"main\"\n\"7406520\";\"Krajan Atas\";\"other\"\n\"7406529\";\"Sumberpakem\";\"main\"\n\"7406534\";\"Dawuhanmangli\";\"main\"\n\"7406540\";\"Plereyan\";\"main\"\n\"7406542\";\"Sumberpakem\";\"main\"\n\"7406543\";\"Krajan Sumberdanti\";\"main\"\n\"7406543\";\"Krajan\";\"other\"\n\"7406551\";\"Ragang\";\"main\"\n\"7406552\";\"Sukokerto\";\"main\"\n\"7406557\";\"Mojogemi\";\"main\"\n\"7406560\";\"Krajan Timur Suger Kidul\";\"main\"\n\"7406560\";\"Krajan Timur\";\"other\"\n\"7406563\";\"Sukojember\";\"main\"\n\"7406584\";\"Biting\";\"main\"\n\"7406586\";\"Sumbergayam\";\"main\"\n\"7406593\";\"Duklengkong\";\"main\"\n\"7406600\";\"Sukowiryo\";\"main\"\n\"7406606\";\"Sumberwaru\";\"main\"\n\"7406612\";\"Sukosari\";\"main\"\n\"7406624\";\"Sukorejo\";\"main\"\n\"7406626\";\"Klole\";\"main\"\n\"7406635\";\"Krajan Barat Jelbuk\";\"main\"\n\"7406635\";\"Krajan Barat\";\"other\"\n\"7406637\";\"Krajan Barat Candijati\";\"main\"\n\"7406637\";\"Krajan Barat\";\"other\"\n\"7406640\";\"Grugul\";\"main\"\n\"7406657\";\"Sebanen\";\"main\"\n\"7406667\";\"Klanceng\";\"main\"\n\"7406674\";\"Krajan Dua Patempuran\";\"main\"\n\"7406674\";\"Krajan Dua\";\"other\"\n\"7406679\";\"Krajan Sumberanget\";\"main\"\n\"7406679\";\"Krajan\";\"other\"\n\"7406680\";\"Krajan Ledokombo\";\"main\"\n\"7406680\";\"Krajan\";\"other\"\n\"7406682\";\"Sumberketempah\";\"main\"\n\"7406687\";\"Karangpeton\";\"main\"\n\"7406691\";\"Biting\";\"main\"\n\"7406748\";\"Tista\";\"main\"\n\"7406753\";\"Asahbadung\";\"main\"\n\"7406769\";\"Telaga\";\"main\"\n\"7406779\";\"Bongancina Kaja\";\"main\"\n\"7406786\";\"Puspajati\";\"main\"\n\"7406787\";\"Pelapuan\";\"main\"\n\"7406792\";\"Kanginan\";\"main\"\n\"7406796\";\"Bantiran\";\"main\"\n\"7406800\";\"Klau\";\"main\"\n\"7406808\";\"Munduktemu Kelod\";\"main\"\n\"7406811\";\"Subuk\";\"main\"\n\"7406814\";\"Titab\";\"main\"\n\"7406815\";\"Busungbiu\";\"main\"\n\"7406835\";\"Kauhan\";\"main\"\n\"7406838\";\"Tegalasih\";\"main\"\n\"7406880\";\"Banjar Kampungbugis\";\"main\"\n\"7406881\";\"Banjar Kampungkajanan\";\"main\"\n\"7406882\";\"Banjar Kaliuntu Satu\";\"main\"\n\"7406884\";\"Banjar Kampunganyar\";\"main\"\n\"7406894\";\"Banjar Tambaksari\";\"main\"\n\"7406895\";\"Banjar Barunasari\";\"main\"\n\"7406901\";\"Banjar Bali\";\"main\"\n\"7406903\";\"Banjar Banyuning Barat\";\"main\"\n\"7406906\";\"Banjar Peguyangan\";\"main\"\n\"7406907\";\"Banjar Delodpeken\";\"main\"\n\"7406915\";\"Banjar Sidayu\";\"main\"\n\"7407488\";\"Curahkalak Tengah\";\"main\"\n\"7407497\";\"Trigonco Tengah\";\"main\"\n\"7407498\";\"Perante Utara\";\"main\"\n\"7407499\";\"Perante Tengah\";\"main\"\n\"7407507\";\"Randuagung\";\"main\"\n\"7407531\";\"Bayeman\";\"main\"\n\"7409502\";\"Tanjungpecinan Utara\";\"main\"\n\"7409509\";\"Glugur Tengah\";\"main\"\n\"7409521\";\"Tanjungsari Barat\";\"main\"\n\"7409532\";\"Cempaka\";\"main\"\n\"7409551\";\"Tokelan Utara\";\"main\"\n\"7409555\";\"Krajan Satu Panji Lor\";\"main\"\n\"7409555\";\"Krajan Satu\";\"other\"\n\"7409601\";\"Aengceleng\";\"main\"\n\"7409616\";\"Mimbaan Timur\";\"main\"\n\"7409633\";\"Kotakan Selatan\";\"main\"\n\"7409635\";\"Sliwungkrajan\";\"main\"\n\"7409792\";\"Sukadana Selatan\";\"main\"\n\"7409810\";\"Sikur\";\"main\"\n\"7409812\";\"Paokmotong Utara\";\"main\"\n\"7409843\";\"Mejelo Timur\";\"main\"\n\"7409854\";\"Terara Utara\";\"main\"\n\"7409858\";\"Montongbaan\";\"main\"\n\"7409879\";\"Nyiurtebel\";\"main\"\n\"7409887\";\"Laukrurung\";\"main\"\n\"7409911\";\"Terara\";\"main\"\n\"7409942\";\"Suradi Selatan\";\"main\"\n\"7409970\";\"Setanggor\";\"main\"\n\"7409978\";\"Pancoran\";\"main\"\n\"7409984\";\"Kabar Utara\";\"main\"\n\"7409994\";\"Lintek\";\"main\"\n\"7410050\";\"Beson\";\"main\"\n\"7410109\";\"Dalam Daya\";\"main\"\n\"7410189\";\"Suwangi Utara\";\"main\"\n\"7410212\";\"Montongtangi Timuk\";\"main\"\n\"7410248\";\"Janapria\";\"main\"\n\"7410289\";\"Gunungrajak\";\"main\"\n\"7410332\";\"Sukarara Utara\";\"main\"\n\"7410342\";\"Jembe Timur\";\"main\"\n\"7410347\";\"Loangmaka\";\"main\"\n\"7410398\";\"Bungtiang Barat\";\"main\"\n\"7410409\";\"Montongtebolak\";\"main\"\n\"7410421\";\"Lekor Barat\";\"main\"\n\"7410441\";\"Beleka Satu\";\"main\"\n\"7410822\";\"Tibulakasasak\";\"main\"\n\"7410831\";\"Bungkulan\";\"main\"\n\"7410878\";\"Akarakar\";\"main\"\n\"7411163\";\"Pisangkemeng\";\"main\"\n\"7411268\";\"Boal Atas\";\"main\"\n\"7411423\";\"Kawangohari\";\"main\"\n\"7411459\";\"Maliiha\";\"main\"\n\"7411491\";\"Dinjo\";\"main\"\n\"7411500\";\"Leteloko\";\"main\"\n\"7411507\";\"Kori\";\"main\"\n\"7411516\";\"Hombakaripit\";\"main\"\n\"7411524\";\"Hohawungo\";\"main\"\n\"7411610\";\"Lokorota\";\"main\"\n\"7411632\";\"Waiholo\";\"main\"\n\"7411677\";\"Malulla\";\"main\"\n\"7411696\";\"Ngaduloda\";\"main\"\n\"7411706\";\"Bogorawatu\";\"main\"\n\"7411716\";\"Hodi\";\"main\"\n\"7411770\";\"Kapakabisa\";\"main\"\n\"7411806\";\"Welibo\";\"main\"\n\"7411842\";\"Wengaingo\";\"main\"\n\"7411863\";\"Barakabita\";\"main\"\n\"7411864\";\"Kabukarudi\";\"main\"\n\"7411932\";\"Matumadua\";\"main\"\n\"7412015\";\"Kambatatamakawu\";\"main\"\n\"7412369\";\"Allu\";\"main\"\n\"7412370\";\"Petoosang\";\"main\"\n\"7414222\";\"Narang\";\"main\"\n\"7414243\";\"Benteng\";\"main\"\n\"7414249\";\"Keka\";\"main\"\n\"7414252\";\"Wongka\";\"main\"\n\"7414357\";\"Paka\";\"main\"\n\"7414370\";\"Watuweri\";\"main\"\n\"7414374\";\"Woa\";\"main\"\n\"7414387\";\"Lamba\";\"main\"\n\"7414399\";\"Iteng\";\"main\"\n\"7414450\";\"Wunat\";\"main\"\n\"7414453\";\"Noa\";\"main\"\n\"7414465\";\"Handeng\";\"main\"\n\"7414475\";\"Waepitak\";\"main\"\n\"7414495\";\"Semang\";\"main\"\n\"7414497\";\"Jeong\";\"main\"\n\"7414774\";\"Wasogolo\";\"main\"\n\"7414846\";\"Pora\";\"main\"\n\"7414847\";\"Pongkor\";\"main\"\n\"7414875\";\"Ponggeok\";\"main\"\n\"7414947\";\"Teber\";\"main\"\n\"7414961\";\"Bombu\";\"main\"\n\"7414967\";\"Ntaur Satu\";\"main\"\n\"7414979\";\"Rentung\";\"main\"\n\"7414991\";\"Tado\";\"main\"\n\"7415014\";\"Kawit\";\"main\"\n\"7415026\";\"Kaca\";\"main\"\n\"7415043\";\"Pesek\";\"main\"\n\"7415125\";\"Jawakisa\";\"main\"\n\"7415138\";\"Gero\";\"main\"\n\"7415159\";\"Watugase\";\"main\"\n\"7426525\";\"Funga\";\"main\"\n\"7426550\";\"Ratenggoji\";\"main\"\n\"7426585\";\"Wolofeo\";\"main\"\n\"7426618\";\"Wolobela\";\"main\"\n\"7426632\";\"Woloara\";\"main\"\n\"7426714\";\"Woloau\";\"main\"\n\"7426738\";\"Detuleda\";\"main\"\n\"7426744\";\"Nirangkliung\";\"main\"\n\"7426761\";\"Retenggoma\";\"main\"\n\"7426773\";\"Feondari\";\"main\"\n\"7426809\";\"Tilang\";\"main\"\n\"7426831\";\"Riipua\";\"main\"\n\"7426847\";\"Detupia\";\"main\"\n\"7426848\";\"Masebewa\";\"main\"\n\"7429752\";\"Riit\";\"main\"\n\"7429756\";\"Madawat\";\"main\"\n\"7429758\";\"Beru\";\"main\"\n\"7429775\";\"Habiwetak\";\"main\"\n\"7429781\";\"Brai\";\"main\"\n\"7429783\";\"Nitakloang\";\"main\"\n\"7429789\";\"Tebuk\";\"main\"\n\"7429796\";\"Bloro\";\"main\"\n\"7429799\";\"Kotingnatagete\";\"main\"\n\"7429801\";\"Kojagete\";\"main\"\n\"7429802\";\"Diller\";\"main\"\n\"7429805\";\"Gehaklau\";\"main\"\n\"7429819\";\"Detung\";\"main\"\n\"7429821\";\"Tadabliro\";\"main\"\n\"7429827\";\"Habingkloang\";\"main\"\n\"7429834\";\"Hokor\";\"main\"\n\"7429841\";\"Puho\";\"main\"\n\"7429847\";\"Onget\";\"main\"\n\"7429870\";\"Watubura\";\"main\"\n\"7429873\";\"Hepang\";\"main\"\n\"7439595\";\"Fatualam\";\"main\"\n\"7439603\";\"Leof\";\"main\"\n\"7439608\";\"Oenak\";\"main\"\n\"7439611\";\"Naiola\";\"main\"\n\"7439627\";\"Nibaaf\";\"main\"\n\"7439665\";\"Baanfaun\";\"main\"\n\"7439676\";\"Neob\";\"main\"\n\"7439770\";\"Onan Ganjang\";\"main\"\n\"7455120\";\"Banjar Dukuh\";\"main\"\n\"7455127\";\"Banjar Kangkaang\";\"main\"\n\"7455129\";\"Banjar Buayang\";\"main\"\n\"7455132\";\"Banjar Kelodan\";\"main\"\n\"7455144\";\"Penggakrajeng\";\"main\"\n\"7455249\";\"Biaslantang Kaler\";\"main\"\n\"7455433\";\"Loloan\";\"main\"\n\"7455505\";\"Lelongken\";\"main\"\n\"7455548\";\"Karanggedang\";\"main\"\n\"7455558\";\"Anyar\";\"main\"\n\"7455927\";\"Pali\";\"main\"\n\"7455970\";\"Nusajaya\";\"main\"\n\"7455976\";\"Lanci Satu\";\"main\"\n\"7455977\";\"Sumur Lima\";\"main\"\n\"7455978\";\"Samangawah\";\"main\"\n\"7456016\";\"Komerda\";\"main\"\n\"7456052\";\"Kalimbukuni\";\"main\"\n\"7456056\";\"Tibutana\";\"main\"\n\"7456058\";\"Tebara\";\"main\"\n\"7456076\";\"Wailiang\";\"main\"\n\"7456087\";\"Kotawaikabubak\";\"main\"\n\"7456120\";\"Puukadelu\";\"main\"\n\"7456186\";\"Litibakul\";\"main\"\n\"7456191\";\"Barabedang\";\"main\"\n\"7456203\";\"Toupopu\";\"main\"\n\"7456223\";\"Waimadaka\";\"main\"\n\"7456236\";\"Praimutung\";\"main\"\n\"7456239\";\"Lahihagalang\";\"main\"\n\"7456254\";\"Maledona\";\"main\"\n\"7456298\";\"Padedewatu\";\"main\"\n\"7456409\";\"Tarimbang\";\"main\"\n\"7456472\";\"Laiponda\";\"main\"\n\"7456514\";\"Tanarara\";\"main\"\n\"7456525\";\"Tamanaimahu\";\"main\"\n\"7456618\";\"Prailangina\";\"main\"\n\"7456685\";\"Ncera\";\"main\"\n\"7456688\";\"Lido\";\"main\"\n\"7456691\";\"Ompuboi\";\"main\"\n\"7456712\";\"Simpasai\";\"main\"\n\"7456720\";\"Waworada\";\"main\"\n\"7456731\";\"Karano\";\"main\"\n\"7458779\";\"Watuka\";\"main\"\n\"7458786\";\"Waekolong\";\"main\"\n\"7458804\";\"Gurung\";\"main\"\n\"7458820\";\"Waerana\";\"main\"\n\"7458827\";\"Kipo\";\"main\"\n\"7458850\";\"Munde\";\"main\"\n\"7458878\";\"Sere\";\"main\"\n\"7458895\";\"Muting\";\"main\"\n\"7461917\";\"Boganatar\";\"main\"\n\"7461922\";\"Sukutukang\";\"main\"\n\"7462530\";\"Welamosa\";\"main\"\n\"7462533\";\"Aelande\";\"main\"\n\"7462614\";\"Wolomuku\";\"main\"\n\"7462615\";\"Londe\";\"main\"\n\"7463778\";\"Ritapiret\";\"main\"\n\"7463779\";\"Halat\";\"main\"\n\"7463788\";\"Natarleba\";\"main\"\n\"7463809\";\"Talibura\";\"main\"\n\"7463834\";\"Hila\";\"main\"\n\"7463867\";\"Wolometang\";\"main\"\n\"7463872\";\"Natarmage\";\"main\"\n\"7463885\";\"Ewa\";\"main\"\n\"7463907\";\"Boru\";\"main\"\n\"7463931\";\"Duang\";\"main\"\n\"7463945\";\"Hewa\";\"main\"\n\"7463951\";\"Watubuku\";\"main\"\n\"7463958\";\"Kokang\";\"main\"\n\"7473831\";\"Palue\";\"main\"\n\"7526714\";\"Adirejo\";\"main\"\n\"7526790\";\"Putat Lor\";\"main\"\n\"7526802\";\"Segaran\";\"main\"\n\"7528985\";\"Dajan Tangluk\";\"main\"\n\"7529246\";\"Karyadharma\";\"main\"\n\"7529289\";\"Jabajero\";\"main\"\n\"7530293\";\"Cempa Pasar\";\"main\"\n\"7541337\";\"Kelanabian\";\"main\"\n\"7541513\";\"Kangin\";\"main\"\n\"7545182\";\"Klatakan\";\"main\"\n\"7545189\";\"Kebunjeruk\";\"main\"\n\"7545190\";\"Grobokan\";\"main\"\n\"7545192\";\"Sritanjung\";\"main\"\n\"7545196\";\"Ujung\";\"main\"\n\"7545199\";\"Kaliasin\";\"main\"\n\"7545260\";\"Possumur\";\"main\"\n\"7545790\";\"Kampungbaru\";\"main\"\n\"7545820\";\"Pringgabaya\";\"main\"\n\"7547253\";\"Delod Pangkung\";\"main\"\n\"7547260\";\"Banjar Dauhmarga\";\"main\"\n\"7553270\";\"Banjar Tegakgede\";\"main\"\n\"7553294\";\"Banjar Delodsetra\";\"main\"\n\"7553299\";\"Pekutatan\";\"main\"\n\"7553307\";\"Banjar Dangin Pangkung\";\"main\"\n\"7553315\";\"Banjar Asahduren\";\"main\"\n\"7553317\";\"Banjar Swastika\";\"main\"\n\"7554372\";\"Lokokrangan\";\"main\"\n\"7554575\";\"Tanahsong Daya\";\"main\"\n\"7554590\";\"Prawira\";\"main\"\n\"7554615\";\"Todo\";\"main\"\n\"7554761\";\"Santong\";\"main\"\n\"7555291\";\"Labuhankuris\";\"main\"\n\"7555989\";\"Lukkarya\";\"main\"\n\"7556085\";\"Waiha\";\"main\"\n\"7556130\";\"Ngondokandawu\";\"main\"\n\"7556146\";\"Panenggoede\";\"main\"\n\"7556335\";\"Kalembutillu\";\"main\"\n\"7556351\";\"Weetombo\";\"main\"\n\"7556365\";\"Weekombaka\";\"main\"\n\"7556462\";\"Radamata\";\"main\"\n\"7556501\";\"Pasonobenu\";\"main\"\n\"7556524\";\"Manola\";\"main\"\n\"7556531\";\"Weekaka\";\"main\"\n\"7556572\";\"Delo\";\"main\"\n\"7557026\";\"Ombakamia\";\"main\"\n\"7557041\";\"Weegaingo\";\"main\"\n\"7557066\";\"Watulabara\";\"main\"\n\"7557083\";\"Weerame\";\"main\"\n\"7557120\";\"Andelara\";\"main\"\n\"7557179\";\"Weelimbu\";\"main\"\n\"7557192\";\"Ombarade\";\"main\"\n\"7557248\";\"Andekantor\";\"main\"\n\"7559741\";\"Weepanapi\";\"main\"\n\"7561373\";\"Bondoboghila\";\"main\"\n\"7561416\";\"Weepangali\";\"main\"\n\"7563698\";\"Tanatoku\";\"main\"\n\"7563722\";\"Tamaau\";\"main\"\n\"7563745\";\"Katikuloko\";\"main\"\n\"7563835\";\"Wailolung\";\"main\"\n\"7563856\";\"Waihibar\";\"main\"\n\"7563868\";\"Manukaka\";\"main\"\n\"7563870\";\"Kabondok\";\"main\"\n\"7563892\";\"Galubakul\";\"main\"\n\"7564226\";\"Teongtoda\";\"main\"\n\"7564230\";\"Werang\";\"main\"\n\"7564244\";\"Rambang\";\"main\"\n\"7564277\";\"Nunang\";\"main\"\n\"7564299\";\"Dahot\";\"main\"\n\"7564315\";\"Laci\";\"main\"\n\"7564519\";\"Montongkemong\";\"main\"\n\"7564547\";\"Rasabou\";\"main\"\n\"7564566\";\"Npongge\";\"main\"\n\"7565022\";\"Waikambila\";\"main\"\n\"7565098\";\"Bolubewa\";\"main\"\n\"7566984\";\"Paukate\";\"main\"\n\"7566994\";\"Waelengga\";\"main\"\n\"7567562\";\"Lurut\";\"main\"\n\"7567577\";\"Waling\";\"main\"\n\"7567601\";\"Ngusu\";\"main\"\n\"7567657\";\"Lewe\";\"main\"\n\"7567664\";\"Pejek\";\"main\"\n\"7567666\";\"Ranambeling\";\"main\"\n\"7567671\";\"Mukun\";\"main\"\n\"7567672\";\"Dalo\";\"main\"\n\"7567694\";\"Pedak\";\"main\"\n\"7567796\";\"Sawirara\";\"main\"\n\"7567813\";\"Lokori\";\"main\"\n\"7567833\";\"Malata\";\"main\"\n\"7567942\";\"Bolengpulau\";\"main\"\n\"7567971\";\"Rungkam\";\"main\"\n\"7567989\";\"Waewaso\";\"main\"\n\"7568002\";\"Cempa\";\"main\"\n\"7568153\";\"Puunage\";\"main\"\n\"7568175\";\"Maukeli\";\"main\"\n\"7568182\";\"Batawa\";\"main\"\n\"7568192\";\"Maumbawa\";\"main\"\n\"7568340\";\"Maumaru\";\"main\"\n\"7568369\";\"Panjir\";\"main\"\n\"7568407\";\"Umanggudang\";\"main\"\n\"7568456\";\"Latang\";\"main\"\n\"7568598\";\"Landa\";\"main\"\n\"7568606\";\"Tambulatana\";\"main\"\n\"7569197\";\"Praimarada\";\"main\"\n\"7569325\";\"Nasawewe\";\"main\"\n\"7569348\";\"Bongewu\";\"main\"\n\"7569351\";\"Bogenga\";\"main\"\n\"7569358\";\"Trikora\";\"main\"\n\"7569359\";\"Ngedukelu\";\"main\"\n\"7569360\";\"Kisanata\";\"main\"\n\"7569362\";\"Tanalodu\";\"main\"\n\"7569388\";\"Mari\";\"main\"\n\"7569395\";\"Bojawa\";\"main\"\n\"7569428\";\"Maunuri\";\"main\"\n\"7569438\";\"Romba\";\"main\"\n\"7569439\";\"Bengga\";\"main\"\n\"7569753\";\"Wangkung\";\"main\"\n\"7569755\";\"Betong\";\"main\"\n\"7569776\";\"Kondas\";\"main\"\n\"7569781\";\"Ndewel\";\"main\"\n\"7569783\";\"Tondongraja\";\"main\"\n\"7569792\";\"Golondalas\";\"main\"\n\"7569799\";\"Ranggawatu\";\"main\"\n\"7569802\";\"Bambor\";\"main\"\n\"7569869\";\"Zepe\";\"main\"\n\"7569889\";\"Pogo\";\"main\"\n\"7569909\";\"Mangulewa\";\"main\"\n\"7569912\";\"Ranisoba\";\"main\"\n\"7569918\";\"Dorupare\";\"main\"\n\"7569919\";\"Mataloko\";\"main\"\n\"7569925\";\"Sobo\";\"main\"\n\"7569949\";\"Taka\";\"main\"\n\"7569953\";\"Warekeo\";\"main\"\n\"7569959\";\"Jadho\";\"main\"\n\"7569963\";\"Nuamuzi\";\"main\"\n\"7569990\";\"Waturoka\";\"main\"\n\"7570002\";\"Kampungbajo\";\"main\"\n\"7570008\";\"Genang\";\"main\"\n\"7570014\";\"Toroloji\";\"main\"\n\"7570034\";\"Tibakisa\";\"main\"\n\"7570038\";\"Wologama\";\"main\"\n\"7570046\";\"Jawagae\";\"main\"\n\"7570051\";\"Mulakoli\";\"main\"\n\"7570054\";\"Wolonio\";\"main\"\n\"7570055\";\"Rega\";\"main\"\n\"7570061\";\"Wudu\";\"main\"\n\"7570081\";\"Nunukae\";\"main\"\n\"7570100\";\"Padhahegha\";\"main\"\n\"7570104\";\"Hobonio\";\"main\"\n\"7570121\";\"Wagha\";\"main\"\n\"7570125\";\"Doya\";\"main\"\n\"7570139\";\"Sukamaju\";\"main\"\n\"7570140\";\"Pajoreja\";\"main\"\n\"7570142\";\"Dawe\";\"main\"\n\"7570153\";\"Lokawolo\";\"main\"\n\"7570159\";\"Gelu\";\"main\"\n\"7570175\";\"Pusu\";\"main\"\n\"7570299\";\"Nggilat\";\"main\"\n\"7570338\";\"Sambelia\";\"main\"\n\"7570445\";\"Waetuwa\";\"main\"\n\"7570468\";\"Golopau\";\"main\"\n\"7570487\";\"Waso\";\"main\"\n\"7570519\";\"Bentengjawa\";\"main\"\n\"7570522\";\"Rentung\";\"main\"\n\"7570528\";\"Golomunta\";\"main\"\n\"7570546\";\"Kenca\";\"main\"\n\"7570551\";\"Moso\";\"main\"\n\"7570560\";\"Necak\";\"main\"\n\"7570762\";\"Naru\";\"main\"\n\"7570771\";\"Lekosoro\";\"main\"\n\"7570784\";\"Bosiko\";\"main\"\n\"7570835\";\"Pasolapida\";\"main\"\n\"7571945\";\"Dampek\";\"main\"\n\"7571955\";\"Satarteu\";\"main\"\n\"7571981\";\"Weleng\";\"main\"\n\"7574258\";\"Nangahaledoi\";\"main\"\n\"7574263\";\"Waipare\";\"main\"\n\"7574268\";\"Higetegera\";\"main\"\n\"7574271\";\"Kawapante\";\"main\"\n\"7574291\";\"Nitakloang\";\"main\"\n\"7574297\";\"Watuliwung\";\"main\"\n\"7574306\";\"Potet\";\"main\"\n\"7574313\";\"Kloangrotat\";\"main\"\n\"7574321\";\"Aibura\";\"main\"\n\"7574332\";\"Baobatun\";\"main\"\n\"7574347\";\"Magetlegar\";\"main\"\n\"7574367\";\"Ojan\";\"main\"\n\"7574369\";\"Bei\";\"main\"\n\"7574375\";\"Watublapi\";\"main\"\n\"7574385\";\"Kloangpopot\";\"main\"\n\"7574409\";\"Habibola\";\"main\"\n\"7574423\";\"Wolokoli\";\"main\"\n\"7574431\";\"Taranggatar\";\"main\"\n\"2654332\";\"Bun Cranncha\";\"main\"\n\"2654332\";\"Buncrana\";\"other\"\n\"2960869\";\"Eochaill\";\"main\"\n\"2960869\";\"Youghal\";\"other\"\n\"2960936\";\"Cill Mhantáin\";\"main\"\n\"2960936\";\"Cill Mhantain\";\"ascii\"\n\"2960936\";\"Cill Maintain\";\"other\"\n\"2960936\";\"Cill Maintainn\";\"other\"\n\"2960936\";\"Cill Maintáinn\";\"other\"\n\"2960936\";\"Cill Manntein\";\"other\"\n\"2960936\";\"Cill Manntéin\";\"other\"\n\"2960936\";\"Cill Mantan\";\"other\"\n\"2960936\";\"Cill Mhanntain\";\"other\"\n\"2960936\";\"Wicklow\";\"other\"\n\"2960964\";\"Loch Garman\";\"main\"\n\"2960964\";\"Wexford\";\"other\"\n\"2960970\";\"Cathair na Mart\";\"main\"\n\"2960970\";\"Westport\";\"other\"\n\"2960992\";\"Port Láirge\";\"main\"\n\"2960992\";\"Port Lairge\";\"ascii\"\n\"2960992\";\"Uoterford\";\"other\"\n\"2960992\";\"Waterford\";\"other\"\n\"2960992\";\"Waterford city\";\"other\"\n\"2960992\";\"u~otafodo\";\"other\"\n\"2960992\";\"Уотерфорд\";\"other\"\n\"2960992\";\"ウォーターフォード\";\"other\"\n\"2961079\";\"Tullow\";\"main\"\n\"2961079\";\"An Tulach\";\"other\"\n\"2961086\";\"Tullamore\";\"main\"\n\"2961086\";\"Tulach Mhor\";\"other\"\n\"2961086\";\"Tulach Mhór\";\"other\"\n\"2961099\";\"Tuam\";\"main\"\n\"2961099\";\"Tuaim\";\"other\"\n\"2961107\";\"Baile Átha Troim\";\"main\"\n\"2961107\";\"Baile Atha Troim\";\"ascii\"\n\"2961107\";\"Trim\";\"other\"\n\"2961120\";\"Trá Mhór\";\"main\"\n\"2961120\";\"Tra Mhor\";\"ascii\"\n\"2961120\";\"Tramore\";\"other\"\n\"2961123\";\"Trá Lí\";\"main\"\n\"2961123\";\"Tra Li\";\"ascii\"\n\"2961123\";\"Tralee\";\"other\"\n\"2961129\";\"Tower\";\"main\"\n\"2961129\";\"Tower Village\";\"other\"\n\"2961192\";\"Tiobraid Árann\";\"main\"\n\"2961192\";\"Tiobraid Arann\";\"ascii\"\n\"2961192\";\"Tipperary\";\"other\"\n\"2961214\";\"Durlas\";\"main\"\n\"2961214\";\"Thurles\";\"other\"\n\"2961224\";\"Thomastown\";\"main\"\n\"2961224\";\"Baile Mhic Andain\";\"other\"\n\"2961224\";\"Baile Mhic Andáin\";\"other\"\n\"2961237\";\"An Teampall Mór\";\"main\"\n\"2961237\";\"An Teampall Mor\";\"ascii\"\n\"2961237\";\"Templemore\";\"other\"\n\"2961284\";\"Tallaght\";\"main\"\n\"2961297\";\"Sord\";\"main\"\n\"2961297\";\"Swords\";\"other\"\n\"2961299\";\"Swinford\";\"main\"\n\"2961299\";\"Beal Atha na Muice\";\"other\"\n\"2961299\";\"Béal Átha na Muice\";\"other\"\n\"2961299\";\"Swineford\";\"other\"\n\"2961423\";\"Sligeach\";\"main\"\n\"2961423\";\"Slajgou\";\"other\"\n\"2961423\";\"Sligo\";\"other\"\n\"2961423\";\"suraigo\";\"other\"\n\"2961423\";\"Слайгоу\";\"other\"\n\"2961423\";\"スライゴ\";\"other\"\n\"2961459\";\"An Sciobairin\";\"main\"\n\"2961459\";\"Skibbereen\";\"other\"\n\"2961461\";\"Na Sceirí\";\"main\"\n\"2961461\";\"Na Sceiri\";\"ascii\"\n\"2961461\";\"Skerries\";\"other\"\n\"2961607\";\"Sallins\";\"main\"\n\"2961607\";\"Na Sollain\";\"other\"\n\"2961607\";\"Na Solláin\";\"other\"\n\"2961651\";\"An Ros\";\"main\"\n\"2961651\";\"Rush\";\"other\"\n\"2961690\";\"Rosslare\";\"main\"\n\"2961690\";\"Ros Lair\";\"other\"\n\"2961690\";\"Ros Láir\";\"other\"\n\"2961730\";\"Roscrea\";\"main\"\n\"2961730\";\"Ros Cre\";\"other\"\n\"2961730\";\"Ros Cré\";\"other\"\n\"2961732\";\"Ros Comáin\";\"main\"\n\"2961732\";\"Ros Comain\";\"ascii\"\n\"2961732\";\"Roscommon\";\"other\"\n\"2961732\";\"Rosecommon\";\"other\"\n\"2961872\";\"Ratoath\";\"main\"\n\"2961872\";\"Rath To\";\"other\"\n\"2961872\";\"Ráth Tó\";\"other\"\n\"2961905\";\"Rathkeale\";\"main\"\n\"2961905\";\"Rath Caola\";\"other\"\n\"2961905\";\"Ráth Caola\";\"other\"\n\"2961918\";\"Rathdrum\";\"main\"\n\"2961918\";\"Rath Droma\";\"other\"\n\"2961918\";\"Ráth Droma\";\"other\"\n\"2961929\";\"Ráth Cúil\";\"main\"\n\"2961929\";\"Rath Cuil\";\"ascii\"\n\"2961929\";\"Rathcoole\";\"other\"\n\"2961938\";\"Rathangan\";\"main\"\n\"2961938\";\"Rath Iomghain\";\"other\"\n\"2961938\";\"Ráth Iomgháin\";\"other\"\n\"2961994\";\"Prosperous\";\"main\"\n\"2961994\";\"An Chorrchoill\";\"other\"\n\"2962019\";\"Portmarnock\";\"main\"\n\"2962019\";\"Port Mearnog\";\"other\"\n\"2962019\";\"Port Mearnóg\";\"other\"\n\"2962026\";\"Port Laoise\";\"main\"\n\"2962026\";\"Maryboro'\";\"other\"\n\"2962026\";\"Maryborough\";\"other\"\n\"2962026\";\"Port Laoighise\";\"other\"\n\"2962026\";\"Port Leix\";\"other\"\n\"2962026\";\"Portlaoise\";\"other\"\n\"2962029\";\"Portarlington\";\"main\"\n\"2962029\";\"Cuil an tSudaire\";\"other\"\n\"2962029\";\"Cúil an tSúdaire\";\"other\"\n\"2962066\";\"Passage West\";\"main\"\n\"2962066\";\"An Pasaiste\";\"other\"\n\"2962066\";\"An Pasáiste\";\"other\"\n\"2962066\";\"Passage\";\"other\"\n\"2962153\";\"Oranmore\";\"main\"\n\"2962153\";\"Oran Mor\";\"other\"\n\"2962153\";\"Órán Mór\";\"other\"\n\"2962170\";\"Old Kilcullen\";\"main\"\n\"2962222\";\"Newtown Trim\";\"main\"\n\"2962252\";\"Ros Mhic Thriúin\";\"main\"\n\"2962252\";\"Ros Mhic Thriuin\";\"ascii\"\n\"2962252\";\"New Ross\";\"other\"\n\"2962252\";\"Ross\";\"other\"\n\"2962262\";\"Newmarket on Fergus\";\"main\"\n\"2962262\";\"Cora Chaitlin\";\"other\"\n\"2962262\";\"Cora Chaitlín\";\"other\"\n\"2962283\";\"Newcastle West\";\"main\"\n\"2962283\";\"An Caislean Nua\";\"other\"\n\"2962283\";\"An Caisleán Nua\";\"other\"\n\"2962283\";\"Newcastle\";\"other\"\n\"2962290\";\"Droichead Nua\";\"main\"\n\"2962290\";\"Droichead Nuadh\";\"other\"\n\"2962290\";\"Newbridge\";\"other\"\n\"2962304\";\"An tAonach\";\"main\"\n\"2962304\";\"Nenagh\";\"other\"\n\"2962304\";\"The Meeting\";\"other\"\n\"2962308\";\"An Uaimh\";\"main\"\n\"2962308\";\"Navan\";\"other\"\n\"2962334\";\"An Nás\";\"main\"\n\"2962334\";\"An Nas\";\"ascii\"\n\"2962334\";\"Naas\";\"other\"\n\"2962361\";\"An Muileann gCearr\";\"main\"\n\"2962361\";\"Mullingar\";\"other\"\n\"2962440\";\"Moycullen\";\"main\"\n\"2962440\";\"Maigh Cuilinn\";\"other\"\n\"2962450\";\"Moville\";\"main\"\n\"2962450\";\"Bun an Phobail\";\"other\"\n\"2962465\";\"Mountrath\";\"main\"\n\"2962465\";\"Maighean Ratha\";\"other\"\n\"2962465\";\"Maighean Rátha\";\"other\"\n\"2962476\";\"Mountmellick\";\"main\"\n\"2962476\";\"Mointeach Milic\";\"other\"\n\"2962476\";\"Móinteach Mílic\";\"other\"\n\"2962556\";\"Monasterevin\";\"main\"\n\"2962556\";\"Mainistir Eimhin\";\"other\"\n\"2962556\";\"Mainistir Eimhín\";\"other\"\n\"2962556\";\"Monasterevan\";\"other\"\n\"2962568\";\"Muineachán\";\"main\"\n\"2962568\";\"Muineachan\";\"ascii\"\n\"2962568\";\"Monaghan\";\"other\"\n\"2962580\";\"Moate\";\"main\"\n\"2962587\";\"Mitchelstown\";\"main\"\n\"2962587\";\"Baile Mhisteala\";\"other\"\n\"2962587\";\"Baile Mhistéala\";\"other\"\n\"2962630\";\"Mainister na Corann\";\"main\"\n\"2962630\";\"Middleton\";\"other\"\n\"2962630\";\"Midleton\";\"other\"\n\"2962668\";\"Maynooth\";\"main\"\n\"2962668\";\"Maigh Nuad\";\"other\"\n\"2962714\";\"Mallow\";\"main\"\n\"2962714\";\"Mala\";\"other\"\n\"2962725\";\"Malahide\";\"main\"\n\"2962725\";\"Mullach Ide\";\"other\"\n\"2962725\";\"Mullach Íde\";\"other\"\n\"2962745\";\"Macroom\";\"main\"\n\"2962745\";\"Maigh Chromtha\";\"other\"\n\"2962769\";\"Lusca\";\"main\"\n\"2962769\";\"Lusk\";\"other\"\n\"2962800\";\"Loughrea\";\"main\"\n\"2962800\";\"Baile Locha Riach\";\"other\"\n\"2962840\";\"An Longfort\";\"main\"\n\"2962840\";\"Longford\";\"other\"\n\"2962864\";\"Lios Tuathail\";\"main\"\n\"2962864\";\"Listowel\";\"other\"\n\"2962943\";\"Limerick\";\"main\"\n\"2962943\";\"Limereick\";\"other\"\n\"2962943\";\"Limerick - Luimneach\";\"other\"\n\"2962943\";\"Limerick city\";\"other\"\n\"2962943\";\"Limerik\";\"other\"\n\"2962943\";\"Limerika\";\"other\"\n\"2962943\";\"Limerikas\";\"other\"\n\"2962943\";\"Luimneach\";\"other\"\n\"2962943\";\"lymryq\";\"other\"\n\"2962943\";\"rimurikku\";\"other\"\n\"2962943\";\"Лимерик\";\"other\"\n\"2962943\";\"לימריק\";\"other\"\n\"2962943\";\"リムリック\";\"other\"\n\"2962945\";\"Leifear\";\"main\"\n\"2962945\";\"Lifford\";\"other\"\n\"2962961\";\"Letterkenny\";\"main\"\n\"2962961\";\"Leitir Ceanainn\";\"other\"\n\"2962974\";\"Leixlip\";\"main\"\n\"2962974\";\"Leim an Bhradain\";\"other\"\n\"2962974\";\"Léim an Bhradáin\";\"other\"\n\"2963007\";\"Laytown\";\"main\"\n\"2963007\";\"An Inse\";\"other\"\n\"2963105\";\"Knockbridge\";\"main\"\n\"2963105\";\"Nok Bride\";\"other\"\n\"2963105\";\"Нок Бриде\";\"other\"\n\"2963155\";\"Cionn tSáile\";\"main\"\n\"2963155\";\"Cionn tSaile\";\"ascii\"\n\"2963155\";\"Kinsale\";\"other\"\n\"2963218\";\"Cill Rois\";\"main\"\n\"2963218\";\"Kilrush\";\"other\"\n\"2963275\";\"Kilmallock\";\"main\"\n\"2963275\";\"Cill Mocheallog\";\"other\"\n\"2963275\";\"Cill Mocheallóg\";\"other\"\n\"2963275\";\"Kilmailock\";\"other\"\n\"2963295\";\"Killybegs\";\"main\"\n\"2963295\";\"Na Ceala Beaga\";\"other\"\n\"2963295\";\"Na Cealla Beaga\";\"other\"\n\"2963311\";\"Killorglin\";\"main\"\n\"2963311\";\"Cill Orglan\";\"other\"\n\"2963370\";\"Cill Airne\";\"main\"\n\"2963370\";\"Killarney\";\"other\"\n\"2963388\";\"Kill\";\"main\"\n\"2963398\";\"Cill Chainnigh\";\"main\"\n\"2963398\";\"Kilkenni\";\"other\"\n\"2963398\";\"Kilkenny\";\"other\"\n\"2963398\";\"Kilkenny city\";\"other\"\n\"2963398\";\"kirukeni\";\"other\"\n\"2963398\";\"Килкенни\";\"other\"\n\"2963398\";\"キルケニー\";\"other\"\n\"2963460\";\"Kilcoole\";\"main\"\n\"2963460\";\"Cill Chomhghaill\";\"other\"\n\"2963472\";\"Kilcock\";\"main\"\n\"2963472\";\"Cill Choca\";\"other\"\n\"2963522\";\"Kenmare\";\"main\"\n\"2963522\";\"Kevmare\";\"other\"\n\"2963522\";\"Neidin\";\"other\"\n\"2963528\";\"Ceanannas\";\"main\"\n\"2963528\";\"Ceanannus Mor\";\"other\"\n\"2963528\";\"Ceanannus Mór\";\"other\"\n\"2963528\";\"Kells\";\"other\"\n\"2963555\";\"Kanturk\";\"main\"\n\"2963555\";\"Ceann Toirc\";\"other\"\n\"2963827\";\"Gweedore\";\"main\"\n\"2963827\";\"Gaoth Dobhair\";\"other\"\n\"2963827\";\"Krokh'li\";\"other\"\n\"2963827\";\"Крохьли\";\"other\"\n\"2963848\";\"Greystones\";\"main\"\n\"2963848\";\"Na Clocha Liatha\";\"other\"\n\"2963902\";\"Granard\";\"main\"\n\"2963902\";\"Gránard\";\"other\"\n\"2963902\";\"Гранард\";\"other\"\n\"2963958\";\"Gort\";\"main\"\n\"2963958\";\"An Gort\";\"other\"\n\"2963962\";\"Gorey\";\"main\"\n\"2963962\";\"Guaire\";\"other\"\n\"2964006\";\"Glenties\";\"main\"\n\"2964006\";\"Na Gleannta\";\"other\"\n\"2964180\";\"Galway\";\"main\"\n\"2964180\";\"Gaillimh\";\"other\"\n\"2964180\";\"Galway - Gaillimh\";\"other\"\n\"2964180\";\"Galway city\";\"other\"\n\"2964180\";\"Goluehj\";\"other\"\n\"2964180\";\"Goluej\";\"other\"\n\"2964180\";\"Golveja\";\"other\"\n\"2964180\";\"ge er wei\";\"other\"\n\"2964180\";\"goruu~ei\";\"other\"\n\"2964180\";\"Голуей\";\"other\"\n\"2964180\";\"Голуэй\";\"other\"\n\"2964180\";\"ゴールウェイ\";\"other\"\n\"2964180\";\"戈尔韦\";\"other\"\n\"2964320\";\"Mainistir Fhear Maí\";\"main\"\n\"2964320\";\"Mainistir Fhear Mai\";\"ascii\"\n\"2964320\";\"Fermoy\";\"other\"\n\"2964401\";\"Enniskerry\";\"main\"\n\"2964401\";\"Ath na Sceire\";\"other\"\n\"2964401\";\"Áth na Sceire\";\"other\"\n\"2964403\";\"Inis Córthaidh\";\"main\"\n\"2964403\";\"Inis Corthaidh\";\"ascii\"\n\"2964403\";\"Enniscorthy\";\"other\"\n\"2964405\";\"Inis\";\"main\"\n\"2964405\";\"Enis\";\"other\"\n\"2964405\";\"Ennis\";\"other\"\n\"2964405\";\"Енис\";\"other\"\n\"2964436\";\"Edenderry\";\"main\"\n\"2964436\";\"Eaden Doire\";\"other\"\n\"2964436\";\"Éaden Doire\";\"other\"\n\"2964472\";\"Dunshaughlin\";\"main\"\n\"2964472\";\"Dun Seachlainn\";\"other\"\n\"2964472\";\"Dún Seachlainn\";\"other\"\n\"2964492\";\"Dunmore East\";\"main\"\n\"2964492\";\"Dun Mor\";\"other\"\n\"2964492\";\"Dunmore\";\"other\"\n\"2964492\";\"Dún Mór\";\"other\"\n\"2964496\";\"Dunmanway\";\"main\"\n\"2964496\";\"Dun Manmhai\";\"other\"\n\"2964496\";\"Dún Mánmhaí\";\"other\"\n\"2964503\";\"Dunlewy\";\"main\"\n\"2964503\";\"Dun Luiche\";\"other\"\n\"2964503\";\"Dun Lukhe\";\"other\"\n\"2964503\";\"Dún Lúiche\";\"other\"\n\"2964503\";\"Дун Лухе\";\"other\"\n\"2964506\";\"Dún Laoghaire\";\"main\"\n\"2964506\";\"Dun Laoghaire\";\"ascii\"\n\"2964506\";\"Dan Liri\";\"other\"\n\"2964506\";\"Dunleary\";\"other\"\n\"2964506\";\"Kingstown\";\"other\"\n\"2964506\";\"Дан Лири\";\"other\"\n\"2964528\";\"Dungarvan\";\"main\"\n\"2964528\";\"Dun Garbhan\";\"other\"\n\"2964528\";\"Dún Garbhán\";\"other\"\n\"2964540\";\"Dún Dealgan\";\"main\"\n\"2964540\";\"Dun Dealgan\";\"ascii\"\n\"2964540\";\"D\\\"ndok\";\"other\"\n\"2964540\";\"Dundalk\";\"other\"\n\"2964540\";\"Дъндок\";\"other\"\n\"2964547\";\"Dunboyne\";\"main\"\n\"2964558\";\"Duleek\";\"main\"\n\"2964558\";\"Damhliag\";\"other\"\n\"2964574\";\"Dublin\";\"main\"\n\"2964574\";\"Baile Atha Cliath\";\"other\"\n\"2964574\";\"Baile Átha Cliath\";\"other\"\n\"2964574\";\"Ciuda de Dublin\";\"other\"\n\"2964574\";\"Ciudá de Dublín\";\"other\"\n\"2964574\";\"Dablin\";\"other\"\n\"2964574\";\"Doublino\";\"other\"\n\"2964574\";\"Dublin - Baile Atha Cliath\";\"other\"\n\"2964574\";\"Dublin city\";\"other\"\n\"2964574\";\"Dublina\";\"other\"\n\"2964574\";\"Dublinas\";\"other\"\n\"2964574\";\"Dublini\";\"other\"\n\"2964574\";\"Dublino\";\"other\"\n\"2964574\";\"Dublinu\";\"other\"\n\"2964574\";\"Dublín\";\"other\"\n\"2964574\";\"Dublín - Baile Átha Cliath\";\"other\"\n\"2964574\";\"Dublîn\";\"other\"\n\"2964574\";\"Dulenn\";\"other\"\n\"2964574\";\"Dulyn\";\"other\"\n\"2964574\";\"Dulynn\";\"other\"\n\"2964574\";\"Dyflinn\";\"other\"\n\"2964574\";\"Eblana\";\"other\"\n\"2964574\";\"dablin\";\"other\"\n\"2964574\";\"dablina\";\"other\"\n\"2964574\";\"daburin\";\"other\"\n\"2964574\";\"dbln\";\"other\"\n\"2964574\";\"dblyn\";\"other\"\n\"2964574\";\"deobeullin\";\"other\"\n\"2964574\";\"dou bai lin\";\"other\"\n\"2964574\";\"dublini\";\"other\"\n\"2964574\";\"dwblyn\";\"other\"\n\"2964574\";\"taplin\";\"other\"\n\"2964574\";\"Δουβλίνο\";\"other\"\n\"2964574\";\"Даблин\";\"other\"\n\"2964574\";\"Дублин\";\"other\"\n\"2964574\";\"Дублін\";\"other\"\n\"2964574\";\"Дъблин\";\"other\"\n\"2964574\";\"דבלין\";\"other\"\n\"2964574\";\"دبلن\";\"other\"\n\"2964574\";\"دوبلین\";\"other\"\n\"2964574\";\"دۇبلىن\";\"other\"\n\"2964574\";\"ڈبلن\";\"other\"\n\"2964574\";\"ܕܒܠܢ\";\"other\"\n\"2964574\";\"डब्लिन\";\"other\"\n\"2964574\";\"டப்லின்\";\"other\"\n\"2964574\";\"ดับลิน\";\"other\"\n\"2964574\";\"დუბლინი\";\"other\"\n\"2964574\";\"ደብሊን\";\"other\"\n\"2964574\";\"ダブリン\";\"other\"\n\"2964574\";\"都柏林\";\"other\"\n\"2964574\";\"더블린\";\"other\"\n\"2964661\";\"Drogheda\";\"main\"\n\"2964661\";\"Drogheda - Droichead Atha\";\"other\"\n\"2964661\";\"Drogheda - Droichead Átha\";\"other\"\n\"2964661\";\"Droichead Atha\";\"other\"\n\"2964661\";\"Droichead Átha\";\"other\"\n\"2964661\";\"Droida\";\"other\"\n\"2964661\";\"Дроида\";\"other\"\n\"2964745\";\"Donnybrook\";\"main\"\n\"2964752\";\"Donegal\";\"main\"\n\"2964752\";\"Dun na nGall\";\"other\"\n\"2964752\";\"Dún na nGall\";\"other\"\n\"2964765\";\"Donabate\";\"main\"\n\"2964765\";\"Domhnach Bat\";\"other\"\n\"2964782\";\"Dingle\";\"main\"\n\"2964782\";\"An Daingean\";\"other\"\n\"2964820\";\"Derry\";\"main\"\n\"2965140\";\"Cork\";\"main\"\n\"2965140\";\"Corcaigh\";\"other\"\n\"2965140\";\"Cork - Corcaigh\";\"other\"\n\"2965140\";\"Cork city\";\"other\"\n\"2965140\";\"Kork\";\"other\"\n\"2965140\";\"Korka\";\"other\"\n\"2965140\";\"Korkas\";\"other\"\n\"2965140\";\"Korkig\";\"other\"\n\"2965140\";\"ke ke\";\"other\"\n\"2965140\";\"koku\";\"other\"\n\"2965140\";\"kwrk\";\"other\"\n\"2965140\";\"qwrq\";\"other\"\n\"2965140\";\"Корк\";\"other\"\n\"2965140\";\"קורק\";\"other\"\n\"2965140\";\"كورك\";\"other\"\n\"2965140\";\"コーク\";\"other\"\n\"2965140\";\"科克\";\"other\"\n\"2965158\";\"Cootehill\";\"main\"\n\"2965158\";\"Muinchille\";\"other\"\n\"2965260\";\"Cobh\";\"main\"\n\"2965260\";\"An Cobh\";\"other\"\n\"2965260\";\"An Cóbh\";\"other\"\n\"2965260\";\"Queenstown\";\"other\"\n\"2965353\";\"Clonmel\";\"main\"\n\"2965353\";\"Cluain Meala\";\"other\"\n\"2965367\";\"Cluain Eois\";\"main\"\n\"2965367\";\"Clones\";\"other\"\n\"2965402\";\"Clonakilty\";\"main\"\n\"2965402\";\"Cloich na Coillte\";\"other\"\n\"2965449\";\"An Clochán\";\"main\"\n\"2965449\";\"An Clochan\";\"ascii\"\n\"2965449\";\"Clifden\";\"other\"\n\"2965449\";\"Klifden\";\"other\"\n\"2965449\";\"Клифден\";\"other\"\n\"2965471\";\"Claremorris\";\"main\"\n\"2965471\";\"Clar Chlainne Mhuiris\";\"other\"\n\"2965471\";\"Clár Chlainne Mhuiris\";\"other\"\n\"2965482\";\"Clara\";\"main\"\n\"2965482\";\"Cloirtheach\";\"other\"\n\"2965482\";\"Clóirtheach\";\"other\"\n\"2965484\";\"Clane\";\"main\"\n\"2965484\";\"Claonadh\";\"other\"\n\"2965509\";\"Cherryville\";\"main\"\n\"2965516\";\"Ráth Luirc\";\"main\"\n\"2965516\";\"Rath Luirc\";\"ascii\"\n\"2965516\";\"Charleville\";\"other\"\n\"2965529\";\"Celbridge\";\"main\"\n\"2965529\";\"Cill Droichid\";\"other\"\n\"2965535\";\"An Cabhán\";\"main\"\n\"2965535\";\"An Cabhan\";\"ascii\"\n\"2965535\";\"Cavan\";\"other\"\n\"2965570\";\"Castlerea\";\"main\"\n\"2965570\";\"An Caislean Riabhach\";\"other\"\n\"2965570\";\"An Caisleán Riabhach\";\"other\"\n\"2965570\";\"Castlereagh\";\"other\"\n\"2965604\";\"Castleisland\";\"main\"\n\"2965604\";\"Oilean Ciarrai\";\"other\"\n\"2965604\";\"Oileán Ciarraí\";\"other\"\n\"2965643\";\"Castlecomer\";\"main\"\n\"2965643\";\"Caislean an Chomair\";\"other\"\n\"2965643\";\"Caisleán an Chomair\";\"other\"\n\"2965649\";\"Baile na Lorgan\";\"main\"\n\"2965649\";\"Castleblayney\";\"other\"\n\"2965654\";\"Castlebar\";\"main\"\n\"2965654\";\"Caislean an Bharraigh\";\"other\"\n\"2965654\";\"Caisleán an Bharraigh\";\"other\"\n\"2965664\";\"Cashel\";\"main\"\n\"2965664\";\"Caiseal\";\"other\"\n\"2965715\";\"Carrigaline\";\"main\"\n\"2965715\";\"Carraig Ui Leighin\";\"other\"\n\"2965715\";\"Carraig Uí Leighin\";\"other\"\n\"2965726\";\"Carrick-on-Suir\";\"main\"\n\"2965726\";\"Carraig na Siuire\";\"other\"\n\"2965726\";\"Carraig na Siúire\";\"other\"\n\"2965727\";\"Cora Droma Rúisc\";\"main\"\n\"2965727\";\"Cora Droma Ruisc\";\"ascii\"\n\"2965727\";\"Carrick on Shannon\";\"other\"\n\"2965733\";\"Carraig Mhachaire Rois\";\"main\"\n\"2965733\";\"Carrickmacross\";\"other\"\n\"2965733\";\"Magheross\";\"other\"\n\"2965761\";\"Carndonagh\";\"main\"\n\"2965761\";\"Cardonagh\";\"other\"\n\"2965761\";\"Carn Domhnach\";\"other\"\n\"2965768\";\"Ceatharlach\";\"main\"\n\"2965768\";\"Carlow\";\"other\"\n\"2965852\";\"Cahersiveen\";\"main\"\n\"2965852\";\"Cahersween\";\"other\"\n\"2965852\";\"Cathair Saidhbhin\";\"other\"\n\"2965852\";\"Cathair Saidhbhín\";\"other\"\n\"2965873\";\"Caher\";\"main\"\n\"2965873\";\"An Chathair\";\"other\"\n\"2965873\";\"Cahir\";\"other\"\n\"2965873\";\"Án Chathair\";\"other\"\n\"2965929\";\"Bun Dobhráin\";\"main\"\n\"2965929\";\"Bun Dobhrain\";\"ascii\"\n\"2965929\";\"Bundoran\";\"other\"\n\"2966022\";\"Bray\";\"main\"\n\"2966022\";\"Bre\";\"other\"\n\"2966022\";\"Brej\";\"other\"\n\"2966022\";\"Bri Chualann\";\"other\"\n\"2966022\";\"Bré\";\"other\"\n\"2966022\";\"Брей\";\"other\"\n\"2966044\";\"Boyle\";\"main\"\n\"2966044\";\"Mainistir na Buille\";\"other\"\n\"2966044\";\"Mainistir na Búille\";\"other\"\n\"2966101\";\"Blessington\";\"main\"\n\"2966101\";\"Baile Coimin\";\"other\"\n\"2966101\";\"Baile Coimín\";\"other\"\n\"2966107\";\"Blarney\";\"main\"\n\"2966107\";\"An Bhlarna\";\"other\"\n\"2966130\";\"Blackrock\";\"main\"\n\"2966131\";\"Blackrock\";\"main\"\n\"2966131\";\"Carraig Dubh\";\"other\"\n\"2966154\";\"Birr\";\"main\"\n\"2966154\";\"Biorra\";\"other\"\n\"2966154\";\"Parsonstown\";\"other\"\n\"2966154\";\"Бирр\";\"other\"\n\"2966201\";\"Belturbet\";\"main\"\n\"2966201\";\"Beal Tairbirt\";\"other\"\n\"2966201\";\"Béal Tairbirt\";\"other\"\n\"2966201\";\"Белтурбет\";\"other\"\n\"2966356\";\"Bantry\";\"main\"\n\"2966356\";\"Beanntrai\";\"other\"\n\"2966356\";\"Beanntraí\";\"other\"\n\"2966370\";\"Bandon\";\"main\"\n\"2966370\";\"Droichead na Bandon\";\"other\"\n\"2966371\";\"Banagher\";\"main\"\n\"2966371\";\"Beannchar\";\"other\"\n\"2966406\";\"Ballyshannon\";\"main\"\n\"2966406\";\"Beal Atha Seanaidh\";\"other\"\n\"2966406\";\"Béal Átha Seanaidh\";\"other\"\n\"2966566\";\"Ballyhaunis\";\"main\"\n\"2966566\";\"Beal Atha hAmhnais\";\"other\"\n\"2966566\";\"Béal Átha hAmhnais\";\"other\"\n\"2966658\";\"Ballybunnion\";\"main\"\n\"2966658\";\"Baile an Bhuinneanaigh\";\"other\"\n\"2966658\";\"Baile an Bhuinneánaigh\";\"other\"\n\"2966668\";\"Ballybofey\";\"main\"\n\"2966668\";\"Bealach Feich\";\"other\"\n\"2966668\";\"Bealach Féich\";\"other\"\n\"2966715\";\"Ballinrobe\";\"main\"\n\"2966715\";\"Baile an Roba\";\"other\"\n\"2966715\";\"Baile an Róba\";\"other\"\n\"2966753\";\"Béal Átha na Sluaighe\";\"main\"\n\"2966753\";\"Beal Atha na Sluaighe\";\"ascii\"\n\"2966753\";\"Ballinasloe\";\"other\"\n\"2966778\";\"Béal An Átha\";\"main\"\n\"2966778\";\"Beal An Atha\";\"ascii\"\n\"2966778\";\"Ballina\";\"other\"\n\"2966784\";\"Ballaghaderreen\";\"main\"\n\"2966784\";\"Bealach an Doirin\";\"other\"\n\"2966784\";\"Bealach an Doirín\";\"other\"\n\"2966794\";\"Balbriggan\";\"main\"\n\"2966794\";\"Baile Brigin\";\"other\"\n\"2966794\";\"Baile Brigín\";\"other\"\n\"2966796\";\"Bailieborough\";\"main\"\n\"2966796\";\"Baileborough\";\"other\"\n\"2966796\";\"Coill an Chollaigh\";\"other\"\n\"2966800\";\"Muine Bheag\";\"main\"\n\"2966800\";\"Bagenalstown\";\"other\"\n\"2966837\";\"Baile Átha Í\";\"main\"\n\"2966837\";\"Baile Atha I\";\"ascii\"\n\"2966837\";\"Athy\";\"other\"\n\"2966839\";\"Baile Átha Luain\";\"main\"\n\"2966839\";\"Baile Atha Luain\";\"ascii\"\n\"2966839\";\"Athlone\";\"other\"\n\"2966843\";\"Athenry\";\"main\"\n\"2966843\";\"Baile Atha an Ri\";\"other\"\n\"2966843\";\"Baile Átha an Rí\";\"other\"\n\"2966848\";\"Athboy\";\"main\"\n\"2966848\";\"Baile Atha Bui\";\"other\"\n\"2966848\";\"Baile Átha Buí\";\"other\"\n\"2966870\";\"Ashbourne\";\"main\"\n\"2966870\";\"Cill Dheaglain\";\"other\"\n\"2966870\";\"Cill Dhéagláin\";\"other\"\n\"2966883\";\"Arklow\";\"main\"\n\"2966883\";\"An tInbhear Mor\";\"other\"\n\"2966883\";\"An tInbhear Mór\";\"other\"\n\"2966925\";\"Ardee\";\"main\"\n\"2966925\";\"Baile Atha Fhirdhia\";\"other\"\n\"2966925\";\"Baile Átha Fhirdhia\";\"other\"\n\"2966935\";\"Ardara\";\"main\"\n\"2966935\";\"Ard an Ratha\";\"other\"\n\"2966935\";\"Ard an Rátha\";\"other\"\n\"2966935\";\"Ardarn\";\"other\"\n\"2967092\";\"Abbeyleix\";\"main\"\n\"2967092\";\"Mainistir Laoise\";\"other\"\n\"2967095\";\"Abbeyfeale\";\"main\"\n\"2967095\";\"Mainistir na Feile\";\"other\"\n\"2967095\";\"Mainistir na Féile\";\"other\"\n\"3230840\";\"Portraine\";\"main\"\n\"3306439\";\"Nenagh Bridge\";\"main\"\n\"3310247\";\"Shannon\";\"main\"\n\"3310247\";\"An tSionna\";\"other\"\n\"3310247\";\"Shannon Town\";\"other\"\n\"3310247\";\"Shennon\";\"other\"\n\"3310247\";\"Sionainn\";\"other\"\n\"3310247\";\"Шеннон\";\"other\"\n\"3313832\";\"Kilcormac\";\"main\"\n\"3313832\";\"Cill Chormaic\";\"other\"\n\"3315278\";\"Sandyford\";\"main\"\n\"6857857\";\"Charlesland\";\"main\"\n\"281184\";\"Jerusalem\";\"main\"\n\"281184\";\"Adonai-jireh\";\"other\"\n\"281184\";\"Aelia Capitolina\";\"other\"\n\"281184\";\"Al Quds\";\"other\"\n\"281184\";\"Al-Kuds\";\"other\"\n\"281184\";\"Ariel\";\"other\"\n\"281184\";\"Baitulmuqaddis\";\"other\"\n\"281184\";\"Bayt al-Maqdis\";\"other\"\n\"281184\";\"Bayt al-Muqaddas\";\"other\"\n\"281184\";\"Cherusalen\";\"other\"\n\"281184\";\"Cherusalén\";\"other\"\n\"281184\";\"Colonia Aelia Capitolina\";\"other\"\n\"281184\";\"Djeruzalem\";\"other\"\n\"281184\";\"El Kuds\";\"other\"\n\"281184\";\"El Quds esh Sherif\";\"other\"\n\"281184\";\"Erusagem\";\"other\"\n\"281184\";\"Erusalim\";\"other\"\n\"281184\";\"Gerusalemme\";\"other\"\n\"281184\";\"Girusalemmi\";\"other\"\n\"281184\";\"Hierosolyma\";\"other\"\n\"281184\";\"Hierousalem\";\"other\"\n\"281184\";\"Hierousalēm\";\"other\"\n\"281184\";\"Hierusalem\";\"other\"\n\"281184\";\"Iarusaileim\";\"other\"\n\"281184\";\"Iarúsailéim\";\"other\"\n\"281184\";\"Iebous\";\"other\"\n\"281184\";\"Iebus\";\"other\"\n\"281184\";\"Ierosolyma\";\"other\"\n\"281184\";\"Ierousalem\";\"other\"\n\"281184\";\"Ierusalem\";\"other\"\n\"281184\";\"Ierusalema\";\"other\"\n\"281184\";\"Ierusalim\";\"other\"\n\"281184\";\"Ir David\";\"other\"\n\"281184\";\"Ir Ha-Qdoosha\";\"other\"\n\"281184\";\"Ir Ha-Qodesh\";\"other\"\n\"281184\";\"Jeriwsalem\";\"other\"\n\"281184\";\"Jerozolima\";\"other\"\n\"281184\";\"Jerusalemi\";\"other\"\n\"281184\";\"Jerusalemo\";\"other\"\n\"281184\";\"Jerusalemu\";\"other\"\n\"281184\";\"Jerusalen\";\"other\"\n\"281184\";\"Jerusalim\";\"other\"\n\"281184\";\"Jerusalém\";\"other\"\n\"281184\";\"Jerusalén\";\"other\"\n\"281184\";\"Jeruusalemm\";\"other\"\n\"281184\";\"Jeruzale\";\"other\"\n\"281184\";\"Jeruzalem\";\"other\"\n\"281184\";\"Jeruzaleme\";\"other\"\n\"281184\";\"Jeruzalemi\";\"other\"\n\"281184\";\"Jeruzalém\";\"other\"\n\"281184\";\"Jeruzalė\";\"other\"\n\"281184\";\"Jeruzsalem\";\"other\"\n\"281184\";\"Jeruzsálem\";\"other\"\n\"281184\";\"Jeruzāleme\";\"other\"\n\"281184\";\"Jerúsalem\";\"other\"\n\"281184\";\"Jerúsálẹ́mù\";\"other\"\n\"281184\";\"Jorsala\";\"other\"\n\"281184\";\"Jorsalaborg\";\"other\"\n\"281184\";\"Jorsalir\";\"other\"\n\"281184\";\"Jérusalem\";\"other\"\n\"281184\";\"Jórsalaborg\";\"other\"\n\"281184\";\"Jórsalir\";\"other\"\n\"281184\";\"Kouds\";\"other\"\n\"281184\";\"Kudues\";\"other\"\n\"281184\";\"Kudüs\";\"other\"\n\"281184\";\"Lungsod ng Jerusalem\";\"other\"\n\"281184\";\"Moria\";\"other\"\n\"281184\";\"Morias\";\"other\"\n\"281184\";\"Salem\";\"other\"\n\"281184\";\"Shalem\";\"other\"\n\"281184\";\"Sion\";\"other\"\n\"281184\";\"Solyma\";\"other\"\n\"281184\";\"Ursalimmu\";\"other\"\n\"281184\";\"Urusalim\";\"other\"\n\"281184\";\"Urušalim\";\"other\"\n\"281184\";\"Uršalimmu\";\"other\"\n\"281184\";\"Xerusalen\";\"other\"\n\"281184\";\"Xerusalén\";\"other\"\n\"281184\";\"Yerusalem\";\"other\"\n\"281184\";\"Yerushalayim\";\"other\"\n\"281184\";\"Yirushalayim\";\"other\"\n\"281184\";\"Yirushalāyim\";\"other\"\n\"281184\";\"Zion\";\"other\"\n\"281184\";\"al-Balat\";\"other\"\n\"281184\";\"al-Quds as-Sarif\";\"other\"\n\"281184\";\"al-Quds aš-Šarīf\";\"other\"\n\"281184\";\"albla\";\"other\"\n\"281184\";\"alqds\";\"other\"\n\"281184\";\"alqds alshryf\";\"other\"\n\"281184\";\"aryyyl\";\"other\"\n\"281184\";\"awrshlym\";\"other\"\n\"281184\";\"byt almqds\";\"other\"\n\"281184\";\"erusaremu\";\"other\"\n\"281184\";\"haqodes\";\"other\"\n\"281184\";\"ierusalimi\";\"other\"\n\"281184\";\"jerusalema\";\"other\"\n\"281184\";\"lqds\";\"other\"\n\"281184\";\"mrya\";\"other\"\n\"281184\";\"mworiyah\";\"other\"\n\"281184\";\"mwryh\";\"other\"\n\"281184\";\"salem\";\"other\"\n\"281184\";\"salym\";\"other\"\n\"281184\";\"shywn\";\"other\"\n\"281184\";\"slm\";\"other\"\n\"281184\";\"wrshlm\";\"other\"\n\"281184\";\"wrshlym\";\"other\"\n\"281184\";\"ybws\";\"other\"\n\"281184\";\"ye lu sa leng\";\"other\"\n\"281184\";\"ye ru sa lem\";\"other\"\n\"281184\";\"yebws\";\"other\"\n\"281184\";\"yelusallem\";\"other\"\n\"281184\";\"yerusalama\";\"other\"\n\"281184\";\"yerwsalami\";\"other\"\n\"281184\";\"yerwsalayim\";\"other\"\n\"281184\";\"yerwselem\";\"other\"\n\"281184\";\"yrwslm\";\"other\"\n\"281184\";\"yrwslym\";\"other\"\n\"281184\";\"ziywon\";\"other\"\n\"281184\";\"zywn\";\"other\"\n\"281184\";\"Αριηλ\";\"other\"\n\"281184\";\"Ιεβους\";\"other\"\n\"281184\";\"Ιεροσολυμα\";\"other\"\n\"281184\";\"Ιεροσόλυμα\";\"other\"\n\"281184\";\"Ιερουσαλήμ\";\"other\"\n\"281184\";\"Ιερουσαλημ\";\"other\"\n\"281184\";\"Μωριας\";\"other\"\n\"281184\";\"Σαλημ\";\"other\"\n\"281184\";\"Σιων\";\"other\"\n\"281184\";\"Σολυμα\";\"other\"\n\"281184\";\"Єрусалим\";\"other\"\n\"281184\";\"Їерѹсалимъ\";\"other\"\n\"281184\";\"Јерусалим\";\"other\"\n\"281184\";\"Ерусалім\";\"other\"\n\"281184\";\"Иерусалим\";\"other\"\n\"281184\";\"Йерусалим\";\"other\"\n\"281184\";\"Երուսաղեմ\";\"other\"\n\"281184\";\"אֲרִיאֵל\";\"other\"\n\"281184\";\"אֵילִיָּה קַפִּיטוֹלִינָה\";\"other\"\n\"281184\";\"אריאל\";\"other\"\n\"281184\";\"הַקֹּדֶשׁ\";\"other\"\n\"281184\";\"יְבוּס\";\"other\"\n\"281184\";\"יְרוּשְׁלֶם\";\"other\"\n\"281184\";\"יְרוּשָׁלַיִם\";\"other\"\n\"281184\";\"יְרוּשָׁלַםִ\";\"other\"\n\"281184\";\"יְרוּשָׁלָםִ\";\"other\"\n\"281184\";\"יבוס\";\"other\"\n\"281184\";\"ירושלים\";\"other\"\n\"281184\";\"ירושלם\";\"other\"\n\"281184\";\"מוֹרִיָּה\";\"other\"\n\"281184\";\"מוריה\";\"other\"\n\"281184\";\"צִיּוֹן\";\"other\"\n\"281184\";\"ציון\";\"other\"\n\"281184\";\"שָׁלֵם\";\"other\"\n\"281184\";\"שלם\";\"other\"\n\"281184\";\"إيلياء\";\"other\"\n\"281184\";\"اريئيل\";\"other\"\n\"281184\";\"البلا\";\"other\"\n\"281184\";\"القدس\";\"other\"\n\"281184\";\"القدس الشريف\";\"other\"\n\"281184\";\"اورشلیم\";\"other\"\n\"281184\";\"بيت المقدس\";\"other\"\n\"281184\";\"بیت المقدس\";\"other\"\n\"281184\";\"ساليم\";\"other\"\n\"281184\";\"صهيون\";\"other\"\n\"281184\";\"لقدس\";\"other\"\n\"281184\";\"مريّا\";\"other\"\n\"281184\";\"ورشليم\";\"other\"\n\"281184\";\"يبوس\";\"other\"\n\"281184\";\"يېرۇسالېم\";\"other\"\n\"281184\";\"ܐܘܪܫܠܡ\";\"other\"\n\"281184\";\"ܘܪܫܠܡ\";\"other\"\n\"281184\";\"ܨܗܝܘܢ\";\"other\"\n\"281184\";\"येरुशलम\";\"other\"\n\"281184\";\"জেরুসালেম\";\"other\"\n\"281184\";\"เยรูซาเลม\";\"other\"\n\"281184\";\"იერუსალიმი\";\"other\"\n\"281184\";\"እየሩሳሌም\";\"other\"\n\"281184\";\"エルサレム\";\"other\"\n\"281184\";\"耶路撒冷\";\"other\"\n\"281184\";\"예루살렘\";\"other\"\n\"293014\";\"Ẕur Moshe\";\"main\"\n\"293014\";\"Zur Moshe\";\"ascii\"\n\"293014\";\"Tsur Moshe\";\"other\"\n\"293014\";\"Tsur Mosheh\";\"other\"\n\"293020\";\"Ẕur Hadassa\";\"main\"\n\"293020\";\"Zur Hadassa\";\"ascii\"\n\"293100\";\"Ẕefat\";\"main\"\n\"293100\";\"Zefat\";\"ascii\"\n\"293100\";\"Cfat\";\"other\"\n\"293100\";\"Safad\";\"other\"\n\"293100\";\"Safed\";\"other\"\n\"293100\";\"Sfat\";\"other\"\n\"293100\";\"Tsefat\";\"other\"\n\"293100\";\"Цфат\";\"other\"\n\"293203\";\"Yeroẖam\";\"main\"\n\"293203\";\"Yeroham\";\"ascii\"\n\"293203\";\"Kefar Yeroham\";\"other\"\n\"293203\";\"Kfar Yeroham\";\"other\"\n\"293203\";\"Yeruham\";\"other\"\n\"293220\";\"Yavne’el\";\"main\"\n\"293220\";\"Yavne'el\";\"ascii\"\n\"293220\";\"Kefar Yamma\";\"other\"\n\"293220\";\"Yabneel\";\"other\"\n\"293220\";\"Yabniel\";\"other\"\n\"293220\";\"Yamah\";\"other\"\n\"293220\";\"Yamma\";\"other\"\n\"293220\";\"Yavniel\";\"other\"\n\"293222\";\"Yavne\";\"main\"\n\"293222\";\"Javne\";\"other\"\n\"293222\";\"Kefar Yavne\";\"other\"\n\"293222\";\"Kfar Yavne\";\"other\"\n\"293222\";\"Kfar Yavneh\";\"other\"\n\"293222\";\"New Yavne\";\"other\"\n\"293222\";\"Явне\";\"other\"\n\"293253\";\"Yafo\";\"main\"\n\"293253\";\"Giaffa\";\"other\"\n\"293253\";\"Iope\";\"other\"\n\"293253\";\"Iopē\";\"other\"\n\"293253\";\"Jaffa\";\"other\"\n\"293253\";\"Jafo\";\"other\"\n\"293253\";\"Joppa\";\"other\"\n\"293253\";\"Joppe\";\"other\"\n\"293253\";\"Yafa\";\"other\"\n\"293253\";\"Yafah\";\"other\"\n\"293253\";\"Yaffa\";\"other\"\n\"293253\";\"Yāfa\";\"other\"\n\"293253\";\"yafa\";\"other\"\n\"293253\";\"ypw\";\"other\"\n\"293253\";\"Яфо\";\"other\"\n\"293253\";\"Яффа\";\"other\"\n\"293253\";\"יפו\";\"other\"\n\"293253\";\"يافا\";\"other\"\n\"293253\";\"یافا\";\"other\"\n\"293273\";\"‘Uzeir\";\"main\"\n\"293273\";\"`Uzeir\";\"ascii\"\n\"293273\";\"`Azir\";\"other\"\n\"293273\";\"`Uzayr\";\"other\"\n\"293273\";\"‘Azir\";\"other\"\n\"293273\";\"‘Uzayr\";\"other\"\n\"293286\";\"Umm el Faḥm\";\"main\"\n\"293286\";\"Umm el Fahm\";\"ascii\"\n\"293286\";\"El Fahm\";\"other\"\n\"293286\";\"Umm al Fahm\";\"other\"\n\"293286\";\"Umm el Faham\";\"other\"\n\"293308\";\"Tirat Karmel\";\"main\"\n\"293308\";\"At Tira\";\"other\"\n\"293308\";\"Tira\";\"other\"\n\"293308\";\"Tirah\";\"other\"\n\"293308\";\"Tirat Carmel\";\"other\"\n\"293308\";\"Tirat Hakarmel\";\"other\"\n\"293308\";\"Tire\";\"other\"\n\"293310\";\"Timrat\";\"main\"\n\"293322\";\"Tiberias\";\"main\"\n\"293322\";\"Tabariya\";\"other\"\n\"293322\";\"Tabariyeh\";\"other\"\n\"293322\";\"Tabariyyah\";\"other\"\n\"293322\";\"Tabarīya\";\"other\"\n\"293322\";\"Tevarya\";\"other\"\n\"293322\";\"Tevaryā\";\"other\"\n\"293322\";\"Teverya\";\"other\"\n\"293322\";\"Tiberiada\";\"other\"\n\"293322\";\"Tiberiade\";\"other\"\n\"293322\";\"Tiberiades\";\"other\"\n\"293322\";\"Tiberiado\";\"other\"\n\"293322\";\"Tiberijada\";\"other\"\n\"293322\";\"Tiberiás\";\"other\"\n\"293322\";\"Tiberíades\";\"other\"\n\"293322\";\"Tibériade\";\"other\"\n\"293322\";\"Tiveriada\";\"other\"\n\"293322\";\"Tiveriáda\";\"other\"\n\"293322\";\"Tubaria\";\"other\"\n\"293322\";\"Tverija\";\"other\"\n\"293322\";\"Tverya\";\"other\"\n\"293322\";\"Tyberiada\";\"other\"\n\"293322\";\"Təverya\";\"other\"\n\"293322\";\"tbrya\";\"other\"\n\"293322\";\"tbryh\";\"other\"\n\"293322\";\"tbryt\";\"other\"\n\"293322\";\"Τιβεριάδα\";\"other\"\n\"293322\";\"Τιβεριάς\";\"other\"\n\"293322\";\"Тверия\";\"other\"\n\"293322\";\"טבריה\";\"other\"\n\"293322\";\"طبريا\";\"other\"\n\"293322\";\"طبرية\";\"other\"\n\"293322\";\"Ṭabariyyah\";\"other\"\n\"293322\";\"Ṭəḇeryāh\";\"other\"\n\"293354\";\"Tel Mond\";\"main\"\n\"293397\";\"Tel Aviv\";\"main\"\n\"293397\";\"Lungsod ng Tel Aviv-Yafo\";\"other\"\n\"293397\";\"Tel Avivas\";\"other\"\n\"293397\";\"Tel Awiw\";\"other\"\n\"293397\";\"Tel'-Aviv\";\"other\"\n\"293397\";\"Tel-Aviv\";\"other\"\n\"293397\";\"Tel-Avivo\";\"other\"\n\"293397\";\"Tell Abib\";\"other\"\n\"293397\";\"Tell Abīb\";\"other\"\n\"293397\";\"Tell Afif\";\"other\"\n\"293397\";\"te la wei fu\";\"other\"\n\"293397\";\"tel-avivi\";\"other\"\n\"293397\";\"teruabibu\";\"other\"\n\"293397\";\"tl abyb\";\"other\"\n\"293397\";\"Тел Авив\";\"other\"\n\"293397\";\"Тель-Авив\";\"other\"\n\"293397\";\"תל אביב\";\"other\"\n\"293397\";\"תל אביב-יפו\";\"other\"\n\"293397\";\"تل أبيب\";\"other\"\n\"293397\";\"تل‌آویو\";\"other\"\n\"293397\";\"تېل ئاۋىۋ\";\"other\"\n\"293397\";\"ܬܠ ܐܒܝܒ\";\"other\"\n\"293397\";\"თელ-ავივი\";\"other\"\n\"293397\";\"テルアビブ\";\"other\"\n\"293397\";\"特拉维夫\";\"other\"\n\"293420\";\"maalot Tarshīhā\";\"main\"\n\"293420\";\"maalot Tarshiha\";\"ascii\"\n\"293420\";\"Maalot-Tarshikha\";\"other\"\n\"293420\";\"Me`ona `Ironit\";\"other\"\n\"293420\";\"Tarchiha\";\"other\"\n\"293420\";\"Tarshihah\";\"other\"\n\"293420\";\"Teir Shiha\";\"other\"\n\"293420\";\"Маалот-Таршиха\";\"other\"\n\"293426\";\"Tamra\";\"main\"\n\"293426\";\"Tamrah\";\"other\"\n\"293426\";\"Temarah\";\"other\"\n\"293426\";\"Тамра\";\"other\"\n\"293449\";\"Sūlam\";\"main\"\n\"293449\";\"Sulam\";\"ascii\"\n\"293449\";\"Shunem\";\"other\"\n\"293522\";\"Shelomi\";\"main\"\n\"293522\";\"Chelomi\";\"other\"\n\"293522\";\"Shlomi\";\"other\"\n\"293619\";\"Sederot\";\"main\"\n\"293619\";\"Sderot\";\"other\"\n\"293619\";\"Sdérot\";\"other\"\n\"293619\";\"Shederot\";\"other\"\n\"293619\";\"sdrwt\";\"other\"\n\"293619\";\"Şderot\";\"other\"\n\"293619\";\"Сдерот\";\"other\"\n\"293619\";\"שדרות\";\"other\"\n\"293633\";\"Savyon\";\"main\"\n\"293633\";\"Saviyon\";\"other\"\n\"293633\";\"sbywn\";\"other\"\n\"293633\";\"סביון\";\"other\"\n\"293655\";\"Sakhnīn\";\"main\"\n\"293655\";\"Sakhnin\";\"ascii\"\n\"293655\";\"Sahrin\";\"other\"\n\"293655\";\"Saknin\";\"other\"\n\"293655\";\"Saknīn\";\"other\"\n\"293655\";\"Sikhnin\";\"other\"\n\"293655\";\"Сахнин\";\"other\"\n\"293657\";\"Sājūr\";\"main\"\n\"293657\";\"Sajur\";\"ascii\"\n\"293657\";\"Shezor\";\"other\"\n\"293688\";\"Rosh Pinna\";\"main\"\n\"293688\";\"El Ja`une\";\"other\"\n\"293688\";\"El Jā‘ūne\";\"other\"\n\"293688\";\"Ja`una\";\"other\"\n\"293688\";\"Ja`unah\";\"other\"\n\"293688\";\"Ja‘unah\";\"other\"\n\"293688\";\"Jā‘ūna\";\"other\"\n\"293688\";\"Rosh Pinah\";\"other\"\n\"293688\";\"Rosh Pinnah\";\"other\"\n\"293703\";\"Rishon LeẔiyyon\";\"main\"\n\"293703\";\"Rishon LeZiyyon\";\"ascii\"\n\"293703\";\"Ayun Kara\";\"other\"\n\"293703\";\"Le Tsiyon\";\"other\"\n\"293703\";\"Le Tsīyōn\";\"other\"\n\"293703\";\"Richon le Sion\";\"other\"\n\"293703\";\"Rischon leTzion\";\"other\"\n\"293703\";\"Rishon Le Zion\";\"other\"\n\"293703\";\"Rishon LeZion\";\"other\"\n\"293703\";\"Rishon Letsiyon\";\"other\"\n\"293703\";\"Rishon Lezion\";\"other\"\n\"293703\";\"Rishon Lsiyon\";\"other\"\n\"293703\";\"Rishon le Siyon\";\"other\"\n\"293703\";\"Rishon le Ziyon\";\"other\"\n\"293703\";\"Rishon-le-Cion\";\"other\"\n\"293703\";\"Rison-Le-Ciono\";\"other\"\n\"293703\";\"Riŝon-Le-Ciono\";\"other\"\n\"293703\";\"`Uyun Qara\";\"other\"\n\"293703\";\"Ришон-ле-Цион\";\"other\"\n\"293703\";\"ראשון לציון\";\"other\"\n\"293703\";\"‘Uyūn Qāra\";\"other\"\n\"293721\";\"Rekhasim\";\"main\"\n\"293768\";\"Ramla\";\"main\"\n\"293768\";\"Er Ramle\";\"other\"\n\"293768\";\"Ramle\";\"other\"\n\"293768\";\"ramla\";\"other\"\n\"293768\";\"rmlh\";\"other\"\n\"293768\";\"Рамла\";\"other\"\n\"293768\";\"רמלה\";\"other\"\n\"293773\";\"Ramat Yishay\";\"main\"\n\"293773\";\"Jadah\";\"other\"\n\"293773\";\"Jeida\";\"other\"\n\"293773\";\"Ramat Yishai\";\"other\"\n\"293783\";\"Ramat HaSharon\";\"main\"\n\"293783\";\"Ramat Hash Sharon\";\"other\"\n\"293783\";\"`Ir Shalom\";\"other\"\n\"293783\";\"‘Ir Shalom\";\"other\"\n\"293788\";\"Ramat Gan\";\"main\"\n\"293788\";\"Gan\";\"other\"\n\"293788\";\"Ramat-Gan\";\"other\"\n\"293788\";\"rmt gn\";\"other\"\n\"293788\";\"Рамат-Ган\";\"other\"\n\"293788\";\"רמת גן\";\"other\"\n\"293822\";\"Qiryat Yam\";\"main\"\n\"293822\";\"Kir'jat-Jam\";\"other\"\n\"293822\";\"Kirjat Jam\";\"other\"\n\"293822\";\"Kiryat-Yam\";\"other\"\n\"293822\";\"qryyt ym\";\"other\"\n\"293822\";\"Кирьят-Ям\";\"other\"\n\"293822\";\"קריית ים\";\"other\"\n\"293825\";\"Qiryat Shemona\";\"main\"\n\"293825\";\"Al Khalisa\";\"other\"\n\"293825\";\"El Khalisa\";\"other\"\n\"293825\";\"Halasa\";\"other\"\n\"293825\";\"Halsa\";\"other\"\n\"293825\";\"Khalasah\";\"other\"\n\"293825\";\"Kir'jat-Shmona\";\"other\"\n\"293825\";\"Kiryat Shemoneh\";\"other\"\n\"293825\";\"Qiryat Shemonah\";\"other\"\n\"293825\";\"Qiryat Shmona\";\"other\"\n\"293825\";\"Кирьят-Шмона\";\"other\"\n\"293831\";\"Qiryat Motzkin\";\"main\"\n\"293831\";\"Kir'jat-Mockin\";\"other\"\n\"293831\";\"Qiryat Motskin\";\"other\"\n\"293831\";\"Qiryat Motsqin\";\"other\"\n\"293831\";\"Qiryat Mozqin\";\"other\"\n\"293831\";\"Qiryat Moẕqin\";\"other\"\n\"293831\";\"Кирьят-Моцкин\";\"other\"\n\"293842\";\"Qiryat Gat\";\"main\"\n\"293842\";\"Gat\";\"other\"\n\"293842\";\"Kir'jat-Gat\";\"other\"\n\"293842\";\"Kirjat Gat\";\"other\"\n\"293842\";\"Kiryat Gat\";\"other\"\n\"293842\";\"Qastina Alef\";\"other\"\n\"293842\";\"qryyt gt\";\"other\"\n\"293842\";\"Кирьят-Гат\";\"other\"\n\"293842\";\"קריית גת\";\"other\"\n\"293844\";\"Qiryat Bialik\";\"main\"\n\"293844\";\"Kir'jat-Bjalik\";\"other\"\n\"293844\";\"Qiryat Bialiq\";\"other\"\n\"293844\";\"Qiryat-Beyaliq\";\"other\"\n\"293844\";\"Кирьят-Бялик\";\"other\"\n\"293845\";\"Qiryat Ata\";\"main\"\n\"293845\";\"Kefar `Atah\";\"other\"\n\"293845\";\"Kefar `Atta\";\"other\"\n\"293845\";\"Kefar ‘Atah\";\"other\"\n\"293845\";\"Kefar ‘Aṭṭa\";\"other\"\n\"293845\";\"Kefr Ata\";\"other\"\n\"293845\";\"Kir'jat-Ata\";\"other\"\n\"293845\";\"Kiryat-Ata\";\"other\"\n\"293845\";\"Kufritta\";\"other\"\n\"293845\";\"Qiryat Atta\";\"other\"\n\"293845\";\"Кирьят-Ата\";\"other\"\n\"293896\";\"Qalansuwa\";\"main\"\n\"293896\";\"Qalansuwah\";\"other\"\n\"293896\";\"Qallansawah\";\"other\"\n\"293942\";\"Pardesiyya\";\"main\"\n\"293942\";\"Pardesiya\";\"other\"\n\"293942\";\"Pardesiyah\";\"other\"\n\"293962\";\"Or Yehuda\";\"main\"\n\"293962\";\"Or Yehudah\";\"other\"\n\"293962\";\"Saqiya\";\"other\"\n\"293962\";\"Saqiyyah\";\"other\"\n\"293962\";\"Sāqiya\";\"other\"\n\"293992\";\"Ofaqim\";\"main\"\n\"293992\";\"Ofakim\";\"other\"\n\"293992\";\"Ofiqim\";\"other\"\n\"294003\";\"Nordiyya\";\"main\"\n\"294003\";\"Nordiya\";\"other\"\n\"294003\";\"Nordiyah\";\"other\"\n\"294068\";\"Netivot\";\"main\"\n\"294068\";\"Azata\";\"other\"\n\"294068\";\"Azzata\";\"other\"\n\"294068\";\"Нетивот\";\"other\"\n\"294071\";\"Netanya\";\"main\"\n\"294071\";\"Lungsod ng Ntanya\";\"other\"\n\"294071\";\"Natania\";\"other\"\n\"294071\";\"Natanja\";\"other\"\n\"294071\";\"Natanya\";\"other\"\n\"294071\";\"Nathanya\";\"other\"\n\"294071\";\"Netan'ja\";\"other\"\n\"294071\";\"Netania\";\"other\"\n\"294071\";\"Netanja\";\"other\"\n\"294071\";\"Ntanya\";\"other\"\n\"294071\";\"ntnyh\";\"other\"\n\"294071\";\"Нетанья\";\"other\"\n\"294071\";\"נתניה\";\"other\"\n\"294078\";\"Nesher\";\"main\"\n\"294078\";\"Neixer\";\"other\"\n\"294078\";\"Nescher\";\"other\"\n\"294078\";\"nsr\";\"other\"\n\"294078\";\"Нешер\";\"other\"\n\"294078\";\"נשר\";\"other\"\n\"294089\";\"Nein\";\"main\"\n\"294089\";\"Na`im\";\"other\"\n\"294089\";\"Nayn\";\"other\"\n\"294089\";\"Na‘im\";\"other\"\n\"294089\";\"Neim\";\"other\"\n\"294093\";\"Neẖalim\";\"main\"\n\"294093\";\"Nehalim\";\"ascii\"\n\"294098\";\"Nazareth\";\"main\"\n\"294098\";\"En Nasira\";\"other\"\n\"294098\";\"En Nāsira\";\"other\"\n\"294098\";\"Lungsod ng Nazaret\";\"other\"\n\"294098\";\"Naatsaret\";\"other\"\n\"294098\";\"Nasaret\";\"other\"\n\"294098\";\"Nasira\";\"other\"\n\"294098\";\"Nasıra\";\"other\"\n\"294098\";\"Natseret\";\"other\"\n\"294098\";\"Natsrat\";\"other\"\n\"294098\";\"Natséret\";\"other\"\n\"294098\";\"Natzaret\";\"other\"\n\"294098\";\"Nazara\";\"other\"\n\"294098\";\"Nazare\";\"other\"\n\"294098\";\"Nazaret\";\"other\"\n\"294098\";\"Nazaretas\";\"other\"\n\"294098\";\"Nazareto\";\"other\"\n\"294098\";\"Nazaré\";\"other\"\n\"294098\";\"Nazerat\";\"other\"\n\"294098\";\"Nazzerat\";\"other\"\n\"294098\";\"Naẕerat\";\"other\"\n\"294098\";\"Naẕẕerat\";\"other\"\n\"294098\";\"Nātsrat\";\"other\"\n\"294098\";\"alnasrt\";\"other\"\n\"294098\";\"na sa lei\";\"other\"\n\"294098\";\"nacarettu\";\"other\"\n\"294098\";\"nasales\";\"other\"\n\"294098\";\"nasrt\";\"other\"\n\"294098\";\"nazare\";\"other\"\n\"294098\";\"nsrt\";\"other\"\n\"294098\";\"nzrt\";\"other\"\n\"294098\";\"Ναζαρέτ\";\"other\"\n\"294098\";\"Назарет\";\"other\"\n\"294098\";\"נצרת\";\"other\"\n\"294098\";\"الناصرة\";\"other\"\n\"294098\";\"ناصرة\";\"other\"\n\"294098\";\"ܢܨܪܬ\";\"other\"\n\"294098\";\"நாசரேத்து\";\"other\"\n\"294098\";\"ナザレ\";\"other\"\n\"294098\";\"拿撒勒\";\"other\"\n\"294098\";\"나사렛\";\"other\"\n\"294114\";\"Naḥf\";\"main\"\n\"294114\";\"Nahf\";\"ascii\"\n\"294114\";\"Nahaf\";\"other\"\n\"294114\";\"Nahef\";\"other\"\n\"294117\";\"Nahariyya\";\"main\"\n\"294117\";\"Nagarija\";\"other\"\n\"294117\";\"Nahariya\";\"other\"\n\"294117\";\"Nahariyah\";\"other\"\n\"294117\";\"Нагария\";\"other\"\n\"294166\";\"Miẕpe Ramon\";\"main\"\n\"294166\";\"Mizpe Ramon\";\"ascii\"\n\"294166\";\"Mahane Ramon\";\"other\"\n\"294166\";\"Maḥane Ramon\";\"other\"\n\"294166\";\"Mitspe Ramon\";\"other\"\n\"294166\";\"Mitze Ramon\";\"other\"\n\"294205\";\"Mi‘ilyā\";\"main\"\n\"294205\";\"Mi`ilya\";\"ascii\"\n\"294205\";\"Maaliya\";\"other\"\n\"294205\";\"Me`elya\";\"other\"\n\"294205\";\"Me‘elyā\";\"other\"\n\"294205\";\"Mi'elya\";\"other\"\n\"294205\";\"Mi’elya\";\"other\"\n\"294210\";\"Migdal Ha‘Emeq\";\"main\"\n\"294210\";\"Migdal Ha`Emeq\";\"ascii\"\n\"294210\";\"Magidal\";\"other\"\n\"294210\";\"Migdal Haemeqck\";\"other\"\n\"294210\";\"Migdal Hameq\";\"other\"\n\"294210\";\"Migdal' KhaEhmek\";\"other\"\n\"294210\";\"Мигдаль ХаЭмек\";\"other\"\n\"294244\";\"Mevo Betar\";\"main\"\n\"294244\";\"Mevo Beitar\";\"other\"\n\"294244\";\"Mevo Beiter\";\"other\"\n\"294244\";\"Mevo Beter\";\"other\"\n\"294244\";\"Mevoot Beitar\";\"other\"\n\"294244\";\"Mevoot Beiter\";\"other\"\n\"294244\";\"Mevoot Betar\";\"other\"\n\"294247\";\"Metulla\";\"main\"\n\"294247\";\"El Mutille\";\"other\"\n\"294247\";\"Metula\";\"other\"\n\"294247\";\"Metulah\";\"other\"\n\"294247\";\"Metullah\";\"other\"\n\"294247\";\"Mitulla\";\"other\"\n\"294247\";\"Метула\";\"other\"\n\"294303\";\"Mazkeret Batya\";\"main\"\n\"294303\";\"Ekron\";\"other\"\n\"294303\";\"Mazkeret Batyah\";\"other\"\n\"294303\";\"`Eqron\";\"other\"\n\"294303\";\"‘Eqrōn\";\"other\"\n\"294387\";\"Maghār\";\"main\"\n\"294387\";\"Maghar\";\"ascii\"\n\"294387\";\"El Mansura\";\"other\"\n\"294387\";\"Ma`ariyah\";\"other\"\n\"294387\";\"Ma‘ariyah\";\"other\"\n\"294387\";\"Mughar\";\"other\"\n\"294421\";\"Lod\";\"main\"\n\"294421\";\"Lida\";\"other\"\n\"294421\";\"Lidd\";\"other\"\n\"294421\";\"Lud\";\"other\"\n\"294421\";\"Ludd\";\"other\"\n\"294421\";\"Lydda\";\"other\"\n\"294421\";\"Lūd\";\"other\"\n\"294421\";\"alld\";\"other\"\n\"294421\";\"lwd\";\"other\"\n\"294421\";\"Лод\";\"other\"\n\"294421\";\"לוד\";\"other\"\n\"294421\";\"اللد\";\"other\"\n\"294492\";\"Kefar Yona\";\"main\"\n\"294492\";\"Kefar Yonah\";\"other\"\n\"294492\";\"Kfar Yona\";\"other\"\n\"294502\";\"Kefar Tavor\";\"main\"\n\"294502\";\"Kefar Tabor\";\"other\"\n\"294502\";\"Kfar Tavor\";\"other\"\n\"294502\";\"Mas-ha\";\"other\"\n\"294502\";\"Mashah\";\"other\"\n\"294508\";\"Kefar Shemaryahu\";\"main\"\n\"294508\";\"Kefar Shmaryahu\";\"other\"\n\"294508\";\"Kesar Shenaryahu\";\"other\"\n\"294514\";\"Kefar Sava\";\"main\"\n\"294514\";\"Kafr Saba\";\"other\"\n\"294514\";\"Kefar Saba\";\"other\"\n\"294514\";\"Kefar-Sava\";\"other\"\n\"294514\";\"Kefár Saba\";\"other\"\n\"294514\";\"Кефар-Сава\";\"other\"\n\"294514\";\"כבר סבא\";\"other\"\n\"294545\";\"Kefar H̱abad\";\"main\"\n\"294545\";\"Kefar Habad\";\"ascii\"\n\"294545\";\"Kefar Habbad\";\"other\"\n\"294545\";\"Kefar H̱abbad\";\"other\"\n\"294545\";\"Kfar Habad\";\"other\"\n\"294571\";\"Kaukab Abū el Hīja\";\"main\"\n\"294571\";\"Kaukab Abu el Hija\";\"ascii\"\n\"294571\";\"Kaukab\";\"other\"\n\"294571\";\"Kawkab\";\"other\"\n\"294571\";\"Kawkab Abu-al-Hij\";\"other\"\n\"294571\";\"Kokhva\";\"other\"\n\"294577\";\"Karmi’el\";\"main\"\n\"294577\";\"Karmi'el\";\"ascii\"\n\"294577\";\"Carmiel\";\"other\"\n\"294577\";\"Karmiehl'\";\"other\"\n\"294577\";\"Qiryat Karmiel\";\"other\"\n\"294577\";\"Кармиэль\";\"other\"\n\"294600\";\"Kafr Yāsīf\";\"main\"\n\"294600\";\"Kafr Yasif\";\"ascii\"\n\"294600\";\"Kefar-Yasif\";\"other\"\n\"294600\";\"Kfar Yasif\";\"other\"\n\"294604\";\"Kafr Qāsim\";\"main\"\n\"294604\";\"Kafr Qasim\";\"ascii\"\n\"294604\";\"Kafar Qasem\";\"other\"\n\"294604\";\"Kafar Qāsem\";\"other\"\n\"294604\";\"Kafer-Kassim\";\"other\"\n\"294604\";\"Kasim\";\"other\"\n\"294604\";\"Kefar Qesem\";\"other\"\n\"294604\";\"Kufr Qasim\";\"other\"\n\"294604\";\"Kufr Qāsim\";\"other\"\n\"294607\";\"Kafr Miṣr\";\"main\"\n\"294607\";\"Kafr Misr\";\"ascii\"\n\"294607\";\"Kafr Masr\";\"other\"\n\"294608\";\"Kafr Mandā\";\"main\"\n\"294608\";\"Kafr Manda\";\"ascii\"\n\"294608\";\"Kafar Manda\";\"other\"\n\"294608\";\"Kafer-Manda\";\"other\"\n\"294608\";\"Kefar Mandi\";\"other\"\n\"294610\";\"Kafr Kannā\";\"main\"\n\"294610\";\"Kafr Kanna\";\"ascii\"\n\"294610\";\"Kafr Qanah\";\"other\"\n\"294611\";\"Kafr Kamā\";\"main\"\n\"294611\";\"Kafr Kama\";\"ascii\"\n\"294611\";\"Kafar Kama\";\"other\"\n\"294611\";\"Kafer-Kama\";\"other\"\n\"294611\";\"Kafr Kamma\";\"other\"\n\"294611\";\"Kafr Kammā\";\"other\"\n\"294611\";\"Kafr Qamah\";\"other\"\n\"294615\";\"Kābūl\";\"main\"\n\"294615\";\"Kabul\";\"ascii\"\n\"294615\";\"Kavul\";\"other\"\n\"294622\";\"Judeida\";\"main\"\n\"294622\";\"Al Judeida\";\"other\"\n\"294622\";\"Judaydah\";\"other\"\n\"294627\";\"Jīsh\";\"main\"\n\"294627\";\"Jish\";\"ascii\"\n\"294627\";\"Giscala\";\"other\"\n\"294627\";\"Gishala\";\"other\"\n\"294627\";\"Gush Halab\";\"other\"\n\"294627\";\"Gush Halav\";\"other\"\n\"294627\";\"Gush Ḥalav\";\"other\"\n\"294627\";\"Gush-Halaw\";\"other\"\n\"294627\";\"Habth\";\"other\"\n\"294634\";\"Jaljūlya\";\"main\"\n\"294634\";\"Jaljulya\";\"ascii\"\n\"294634\";\"Gilgal\";\"other\"\n\"294634\";\"Gilgāl\";\"other\"\n\"294634\";\"Jaljuliya\";\"other\"\n\"294634\";\"Jaljulyah\";\"other\"\n\"294634\";\"Jaljulye\";\"other\"\n\"294634\";\"Jaljūliya\";\"other\"\n\"294634\";\"Jaljūlye\";\"other\"\n\"294634\";\"Jiljulieh\";\"other\"\n\"294658\";\"Iksāl\";\"main\"\n\"294658\";\"Iksal\";\"ascii\"\n\"294658\";\"Kessulot\";\"other\"\n\"294658\";\"Kesulot\";\"other\"\n\"294658\";\"Kislot Tavor\";\"other\"\n\"294661\";\"Ibṭin\";\"main\"\n\"294661\";\"Ibtin\";\"ascii\"\n\"294661\";\"Beten\";\"other\"\n\"294666\";\"Ḥurfeish\";\"main\"\n\"294666\";\"Hurfeish\";\"ascii\"\n\"294666\";\"Hourfeich\";\"other\"\n\"294666\";\"Hurfaysh\";\"other\"\n\"294751\";\"H̱olon\";\"main\"\n\"294751\";\"Holon\";\"ascii\"\n\"294751\";\"Cholon\";\"other\"\n\"294751\";\"Jolon\";\"other\"\n\"294751\";\"Jolón\";\"other\"\n\"294751\";\"Kholon\";\"other\"\n\"294751\";\"hwlwn\";\"other\"\n\"294751\";\"Холон\";\"other\"\n\"294751\";\"חולון\";\"other\"\n\"294751\";\"حولون\";\"other\"\n\"294760\";\"Hod HaSharon\";\"main\"\n\"294760\";\"Hada Ramatayim\";\"other\"\n\"294760\";\"Hadar Ramataim\";\"other\"\n\"294760\";\"Hadar Ramatayim\";\"other\"\n\"294760\";\"Ramatayim\";\"other\"\n\"294760\";\"hwd hsrwn\";\"other\"\n\"294760\";\"הוד השרון\";\"other\"\n\"294778\";\"Herzliyya\";\"main\"\n\"294778\";\"Gerclija\";\"other\"\n\"294778\";\"Herseliya\";\"other\"\n\"294778\";\"Hertseliyya\";\"other\"\n\"294778\";\"Hertsliyah\";\"other\"\n\"294778\";\"Hertzlija\";\"other\"\n\"294778\";\"Hervlia\";\"other\"\n\"294778\";\"Hervlia B\";\"other\"\n\"294778\";\"Herzlia B\";\"other\"\n\"294778\";\"Herzlija\";\"other\"\n\"294778\";\"Herzliya\";\"other\"\n\"294778\";\"Herzliyah\";\"other\"\n\"294778\";\"Herẕliyya\";\"other\"\n\"294778\";\"Lungsod ng Herzliyya\";\"other\"\n\"294778\";\"Lungsod ng Herẕliyya\";\"other\"\n\"294778\";\"hrzlyh\";\"other\"\n\"294778\";\"Герцлия\";\"other\"\n\"294778\";\"הרצליה\";\"other\"\n\"294801\";\"Haifa\";\"main\"\n\"294801\";\"Caiffa\";\"other\"\n\"294801\";\"Hajfa\";\"other\"\n\"294801\";\"Hajfo\";\"other\"\n\"294801\";\"Hayfa\";\"other\"\n\"294801\";\"Haïfa\";\"other\"\n\"294801\";\"Hefa\";\"other\"\n\"294801\";\"Heifa\";\"other\"\n\"294801\";\"Heifā\";\"other\"\n\"294801\";\"Heyfa\";\"other\"\n\"294801\";\"H̱efa\";\"other\"\n\"294801\";\"Khajfa\";\"other\"\n\"294801\";\"Lungsod ng Hefa\";\"other\"\n\"294801\";\"Lungsod ng Ḥefa\";\"other\"\n\"294801\";\"hai fa\";\"other\"\n\"294801\";\"haifa\";\"other\"\n\"294801\";\"hyfa\";\"other\"\n\"294801\";\"hyph\";\"other\"\n\"294801\";\"ypw\";\"other\"\n\"294801\";\"Ĥajfo\";\"other\"\n\"294801\";\"Хайфа\";\"other\"\n\"294801\";\"חיפה\";\"other\"\n\"294801\";\"יפֿו\";\"other\"\n\"294801\";\"حيفا\";\"other\"\n\"294801\";\"حیفا\";\"other\"\n\"294801\";\"Ḥeyfa\";\"other\"\n\"294801\";\"ハイファ\";\"other\"\n\"294801\";\"海法\";\"other\"\n\"294946\";\"H̱adera\";\"main\"\n\"294946\";\"Hadera\";\"ascii\"\n\"294946\";\"Chadera\";\"other\"\n\"294946\";\"El Khudeira\";\"other\"\n\"294946\";\"Haderah\";\"other\"\n\"294946\";\"Hadeyra\";\"other\"\n\"294946\";\"Hedera\";\"other\"\n\"294946\";\"Hedora\";\"other\"\n\"294946\";\"Hudeira\";\"other\"\n\"294946\";\"Hědērā\";\"other\"\n\"294946\";\"Khadera\";\"other\"\n\"294946\";\"Khederah\";\"other\"\n\"294946\";\"hdrh\";\"other\"\n\"294946\";\"Хадера\";\"other\"\n\"294946\";\"חדרה\";\"other\"\n\"294981\";\"Giv‘at Shemu’el\";\"main\"\n\"294981\";\"Giv`at Shemu'el\";\"ascii\"\n\"294981\";\"Giv`at Shmuel\";\"other\"\n\"294981\";\"Giv‘at Shmuel\";\"other\"\n\"294999\";\"Giv‘atayim\";\"main\"\n\"294999\";\"Giv`atayim\";\"ascii\"\n\"294999\";\"Gevataym\";\"other\"\n\"294999\";\"Givataim\";\"other\"\n\"294999\";\"Гиватаим\";\"other\"\n\"295064\";\"Gedera\";\"main\"\n\"295064\";\"Gederah\";\"other\"\n\"295080\";\"Gan Yavne\";\"main\"\n\"295080\";\"Gan Yavneh\";\"other\"\n\"295089\";\"Ganne Tiqwa\";\"main\"\n\"295104\";\"Fassūṭā\";\"main\"\n\"295104\";\"Fassuta\";\"ascii\"\n\"295104\";\"Fassutah\";\"other\"\n\"295104\";\"Mafshatah\";\"other\"\n\"295122\";\"Even Yehuda\";\"main\"\n\"295122\";\"Even Yahuda\";\"other\"\n\"295122\";\"Even Yehudah\";\"other\"\n\"295127\";\"Eṭ Ṭīra\";\"main\"\n\"295127\";\"Et Tira\";\"ascii\"\n\"295127\";\"At Tira\";\"other\"\n\"295127\";\"Et Tire\";\"other\"\n\"295127\";\"Tira\";\"other\"\n\"295127\";\"Tirah\";\"other\"\n\"295127\";\"Tīra\";\"other\"\n\"295130\";\"Eṭ Ṭaiyiba\";\"main\"\n\"295130\";\"Et Taiyiba\";\"ascii\"\n\"295130\";\"At Taiyiba\";\"other\"\n\"295130\";\"E-Tayibe\";\"other\"\n\"295130\";\"El Taiyiba\";\"other\"\n\"295130\";\"Et Taiyibe\";\"other\"\n\"295130\";\"Et Tayyibeh\";\"other\"\n\"295130\";\"Taibe\";\"other\"\n\"295130\";\"Taiyba\";\"other\"\n\"295130\";\"Taiyiba\";\"other\"\n\"295130\";\"Taiyibah\";\"other\"\n\"295130\";\"Taiyibe\";\"other\"\n\"295130\";\"Taiyibi\";\"other\"\n\"295130\";\"Taybah\";\"other\"\n\"295130\";\"Tayibe\";\"other\"\n\"295130\";\"Tayibeh\";\"other\"\n\"295130\";\"Tiva\";\"other\"\n\"295130\";\"Tīvā\";\"other\"\n\"295130\";\"Ṭaiyibe\";\"other\"\n\"295130\";\"Ṭayibe\";\"other\"\n\"295157\";\"Esh Sheikh Dannūn\";\"main\"\n\"295157\";\"Esh Sheikh Dannun\";\"ascii\"\n\"295157\";\"Dannun\";\"other\"\n\"295157\";\"Danun\";\"other\"\n\"295157\";\"Sheikh Danmov\";\"other\"\n\"295157\";\"Sheikh Dannun\";\"other\"\n\"295157\";\"Sheikh Dannūn\";\"other\"\n\"295174\";\"Er Reina\";\"main\"\n\"295174\";\"Ar Reina\";\"other\"\n\"295174\";\"Raynah\";\"other\"\n\"295174\";\"Reina\";\"other\"\n\"295174\";\"Reine\";\"other\"\n\"295224\";\"‘En Boqeq\";\"main\"\n\"295224\";\"`En Boqeq\";\"ascii\"\n\"295224\";\"Ehjn-Bokek\";\"other\"\n\"295224\";\"EnBokeko\";\"other\"\n\"295224\";\"Эйн-Бокек\";\"other\"\n\"295232\";\"Elyakhin\";\"main\"\n\"295232\";\"Khirbat Zalafa\";\"other\"\n\"295232\";\"Ma'abara Merkazit Emeq Hefer\";\"other\"\n\"295232\";\"Ma’abara Merkazit Emeq H̱efer\";\"other\"\n\"295249\";\"El Mazra‘a\";\"main\"\n\"295249\";\"El Mazra`a\";\"ascii\"\n\"295249\";\"Al Mazra`a\";\"other\"\n\"295249\";\"Al Mazra‘a\";\"other\"\n\"295249\";\"El Mezra\";\"other\"\n\"295249\";\"Mazra`a\";\"other\"\n\"295249\";\"Mazra`ah\";\"other\"\n\"295249\";\"Mazra‘a\";\"other\"\n\"295249\";\"Mazra‘ah\";\"other\"\n\"295269\";\"El Fureidīs\";\"main\"\n\"295269\";\"El Fureidis\";\"ascii\"\n\"295269\";\"Al Fureidis\";\"other\"\n\"295269\";\"Freidis\";\"other\"\n\"295269\";\"Furaydis\";\"other\"\n\"295269\";\"Fureidis\";\"other\"\n\"295269\";\"Fureidīs\";\"other\"\n\"295277\";\"Elat\";\"main\"\n\"295277\";\"Ehjlat\";\"other\"\n\"295277\";\"Eilat\";\"other\"\n\"295277\";\"Ejlat\";\"other\"\n\"295277\";\"Ejlato\";\"other\"\n\"295277\";\"Elath\";\"other\"\n\"295277\";\"Etzion Geber\";\"other\"\n\"295277\";\"Lungsod ng Elat\";\"other\"\n\"295277\";\"Umm Rashrash\";\"other\"\n\"295277\";\"Umm Rashrāsh\";\"other\"\n\"295277\";\"Umrashash\";\"other\"\n\"295277\";\"ai la te\";\"other\"\n\"295277\";\"aylat\";\"other\"\n\"295277\";\"eirato\";\"other\"\n\"295277\";\"Éilat\";\"other\"\n\"295277\";\"Еилат\";\"other\"\n\"295277\";\"Ейлат\";\"other\"\n\"295277\";\"Эйлат\";\"other\"\n\"295277\";\"אילת\";\"other\"\n\"295277\";\"إيلات\";\"other\"\n\"295277\";\"ایلات\";\"other\"\n\"295277\";\"エイラート\";\"other\"\n\"295277\";\"埃拉特\";\"other\"\n\"295291\";\"‘Eilabūn\";\"main\"\n\"295291\";\"`Eilabun\";\"ascii\"\n\"295291\";\"`Ailabun\";\"other\"\n\"295291\";\"`Aylabun\";\"other\"\n\"295291\";\"‘Ailabun\";\"other\"\n\"295291\";\"‘Aylabun\";\"other\"\n\"295328\";\"Dimona\";\"main\"\n\"295328\";\"Domona\";\"other\"\n\"295328\";\"dymwnh\";\"other\"\n\"295328\";\"Димона\";\"other\"\n\"295328\";\"דימונה\";\"other\"\n\"295339\";\"Deir Ḥannā\";\"main\"\n\"295339\";\"Deir Hanna\";\"ascii\"\n\"295339\";\"Dayr Hannah\";\"other\"\n\"295339\";\"Kefar Yohanah\";\"other\"\n\"295365\";\"Dāliyat el Karmil\";\"main\"\n\"295365\";\"Daliyat el Karmil\";\"ascii\"\n\"295365\";\"Carmel City\";\"other\"\n\"295365\";\"Daliyah\";\"other\"\n\"295365\";\"Daliyat ad-Druz\";\"other\"\n\"295365\";\"Daliyat al-Karmil\";\"other\"\n\"295365\";\"Daliyat at Karmil\";\"other\"\n\"295365\";\"Karmel'\";\"other\"\n\"295365\";\"Кармель\";\"other\"\n\"295370\";\"Dabbūrīya\";\"main\"\n\"295370\";\"Dabburiya\";\"ascii\"\n\"295370\";\"Dabburiyah\";\"other\"\n\"295370\";\"Dabburye\";\"other\"\n\"295370\";\"Daburiyah\";\"other\"\n\"295379\";\"Buqei‘a\";\"main\"\n\"295379\";\"Buqei`a\";\"ascii\"\n\"295379\";\"Al Buqei`a\";\"other\"\n\"295379\";\"Al Buqei‘a\";\"other\"\n\"295379\";\"Beqe`ah\";\"other\"\n\"295379\";\"Beqe‘ah\";\"other\"\n\"295379\";\"Buqay`ah\";\"other\"\n\"295379\";\"Buqay‘ah\";\"other\"\n\"295379\";\"El Bukeiah\";\"other\"\n\"295379\";\"El Buqei`a\";\"other\"\n\"295379\";\"El Buqei‘a\";\"other\"\n\"295379\";\"Peqi`in\";\"other\"\n\"295379\";\"Peqi‘in\";\"other\"\n\"295380\";\"Bu‘eina\";\"main\"\n\"295380\";\"Bu`eina\";\"ascii\"\n\"295380\";\"Bu`aynah\";\"other\"\n\"295380\";\"Bu`eine\";\"other\"\n\"295380\";\"Bu‘aynah\";\"other\"\n\"295380\";\"Bu‘eine\";\"other\"\n\"295404\";\"Bīr el Maksūr\";\"main\"\n\"295404\";\"Bir el Maksur\";\"ascii\"\n\"295424\";\"Bet Yiẕẖaq\";\"main\"\n\"295424\";\"Bet Yizhaq\";\"ascii\"\n\"295424\";\"Beit Yits-haq\";\"other\"\n\"295424\";\"Beit Yits-ḥaq\";\"other\"\n\"295424\";\"Beit Yitzak\";\"other\"\n\"295424\";\"Bet Yitshak\";\"other\"\n\"295432\";\"Bet Shemesh\";\"main\"\n\"295432\";\"Beit Semes\";\"other\"\n\"295432\";\"Beit Şemeş\";\"other\"\n\"295432\";\"Beit-Shemesh\";\"other\"\n\"295432\";\"Bejt-Shemesh\";\"other\"\n\"295432\";\"Bet Schemesch\";\"other\"\n\"295432\";\"Betxemeix\";\"other\"\n\"295432\";\"Betxèmeix\";\"other\"\n\"295432\";\"Maabarat Hartuv\";\"other\"\n\"295432\";\"byt sms\";\"other\"\n\"295432\";\"Бейт-Шемеш\";\"other\"\n\"295432\";\"בית שמש\";\"other\"\n\"295435\";\"Bet She’an\";\"main\"\n\"295435\";\"Bet She'an\";\"ascii\"\n\"295435\";\"Beisan\";\"other\"\n\"295435\";\"Beisān\";\"other\"\n\"295435\";\"Beit Shean\";\"other\"\n\"295435\";\"Beit-Shean\";\"other\"\n\"295435\";\"Beith Shean\";\"other\"\n\"295435\";\"Beith Sheān\";\"other\"\n\"295435\";\"Bejt-Shean\";\"other\"\n\"295435\";\"Besan\";\"other\"\n\"295435\";\"Bet Sche'an\";\"other\"\n\"295435\";\"Bet Shean\";\"other\"\n\"295435\";\"Bet Szean\";\"other\"\n\"295435\";\"Beth Shan\";\"other\"\n\"295435\";\"Beït Shéan\";\"other\"\n\"295435\";\"Beït-Shéan\";\"other\"\n\"295435\";\"Scythopolis\";\"other\"\n\"295435\";\"Skythopolis\";\"other\"\n\"295435\";\"bysan\";\"other\"\n\"295435\";\"Бейт-Шеан\";\"other\"\n\"295435\";\"בית שאן\";\"other\"\n\"295435\";\"بيسان\";\"other\"\n\"295475\";\"Bet Dagan\";\"main\"\n\"295475\";\"Bayt Dajan\";\"other\"\n\"295475\";\"Beit Dagon\";\"other\"\n\"295475\";\"Beit Dajan\";\"other\"\n\"295514\";\"Bene Beraq\";\"main\"\n\"295514\";\"Benai Beraq\";\"other\"\n\"295514\";\"Benei Beraq\";\"other\"\n\"295514\";\"Beney Beraq\";\"other\"\n\"295515\";\"Bene 'Ayish\";\"main\"\n\"295515\";\"Nahal Soreq\";\"other\"\n\"295515\";\"Naẖal Soreq\";\"other\"\n\"295523\";\"Beit Jann\";\"main\"\n\"295523\";\"Bayt Jann\";\"other\"\n\"295523\";\"Bet Dagan\";\"other\"\n\"295530\";\"Beersheba\";\"main\"\n\"295530\";\"B'er Sheva'\";\"other\"\n\"295530\";\"B'eyr-Sheva'\";\"other\"\n\"295530\";\"Be'er Seva\";\"other\"\n\"295530\";\"Be'er Sheva\";\"other\"\n\"295530\";\"Be'er Sheva`\";\"other\"\n\"295530\";\"Be'er Ševa\";\"other\"\n\"295530\";\"Be'er-Sheva'\";\"other\"\n\"295530\";\"Be'ér-Sheva‘\";\"other\"\n\"295530\";\"Beehr-Sheva\";\"other\"\n\"295530\";\"Beer Seva\";\"other\"\n\"295530\";\"Beer Sheba\";\"other\"\n\"295530\";\"Beer Sheva\";\"other\"\n\"295530\";\"Beer Sjeva\";\"other\"\n\"295530\";\"Beer Szewa\";\"other\"\n\"295530\";\"Beer Şeva\";\"other\"\n\"295530\";\"Beer Ševa\";\"other\"\n\"295530\";\"Beer-Sheva\";\"other\"\n\"295530\";\"Beerscheba\";\"other\"\n\"295530\";\"Beerxeba\";\"other\"\n\"295530\";\"Ber Seva\";\"other\"\n\"295530\";\"Ber Ševa\";\"other\"\n\"295530\";\"Bersabee\";\"other\"\n\"295530\";\"Bersabée\";\"other\"\n\"295530\";\"Berseba\";\"other\"\n\"295530\";\"Berséba\";\"other\"\n\"295530\";\"Beër Sjeva\";\"other\"\n\"295530\";\"Bir el Saba\";\"other\"\n\"295530\";\"Bir es Sab`\";\"other\"\n\"295530\";\"Bir es Sabe\";\"other\"\n\"295530\";\"B’er Sheva‘\";\"other\"\n\"295530\";\"Lungsod ng B'er Sheva'\";\"other\"\n\"295530\";\"Lungsod ng B’er Sheva‘\";\"other\"\n\"295530\";\"beeleusyeba\";\"other\"\n\"295530\";\"Беер Шева\";\"other\"\n\"295530\";\"Беэр-Шева\";\"other\"\n\"295530\";\"באר שבע\";\"other\"\n\"295530\";\"بئر السبع\";\"other\"\n\"295530\";\"베에르셰바\";\"other\"\n\"295548\";\"Bat Yam\";\"main\"\n\"295548\";\"Bat Jam\";\"other\"\n\"295548\";\"Bat-Jam\";\"other\"\n\"295548\";\"bt ym\";\"other\"\n\"295548\";\"Бат-Ям\";\"other\"\n\"295548\";\"בת ים\";\"other\"\n\"295553\";\"Basmat Ṭab‘ūn\";\"main\"\n\"295553\";\"Basmat Tab`un\";\"ascii\"\n\"295553\";\"Basmat Tab'un\";\"other\"\n\"295553\";\"Bismat Taba'un\";\"other\"\n\"295553\";\"Bismat Taba’un\";\"other\"\n\"295553\";\"Bosmat Tivon\";\"other\"\n\"295584\";\"Azor\";\"main\"\n\"295584\";\"Azur\";\"other\"\n\"295584\";\"Yazir\";\"other\"\n\"295584\";\"Yazor\";\"other\"\n\"295584\";\"Yazur\";\"other\"\n\"295584\";\"Yāzūr\";\"other\"\n\"295613\";\"‘Atlit\";\"main\"\n\"295613\";\"`Atlit\";\"ascii\"\n\"295613\";\"`Athlit\";\"other\"\n\"295613\";\"`Athlith\";\"other\"\n\"295613\";\"‘Athlīt\";\"other\"\n\"295613\";\"‘Athlīth\";\"other\"\n\"295620\";\"Ashqelon\";\"main\"\n\"295620\";\"Al Majdal\";\"other\"\n\"295620\";\"Ashkelon\";\"other\"\n\"295620\";\"Ashquelon\";\"other\"\n\"295620\";\"El Majdal\";\"other\"\n\"295620\";\"El Medjdel\";\"other\"\n\"295620\";\"Majdal\";\"other\"\n\"295620\";\"Majdal `Asqalan\";\"other\"\n\"295620\";\"Majdal ‘Asqalān\";\"other\"\n\"295620\";\"Migdal Ascalon\";\"other\"\n\"295620\";\"Migdal Ashqelon\";\"other\"\n\"295620\";\"Migdal Gad\";\"other\"\n\"295620\";\"ʼaseqelwon\";\"other\"\n\"295620\";\"Ашкелон\";\"other\"\n\"295620\";\"אַשְׁקְלוֹן\";\"other\"\n\"295629\";\"Ashdod\";\"main\"\n\"295629\";\"Aschdod\";\"other\"\n\"295629\";\"Asdod\";\"other\"\n\"295629\";\"Ashdod Yam\";\"other\"\n\"295629\";\"Ashdod on the Sea\";\"other\"\n\"295629\";\"Aszdod\";\"other\"\n\"295629\";\"Aşdod\";\"other\"\n\"295629\";\"Ukreir\";\"other\"\n\"295629\";\"Ашдод\";\"other\"\n\"295629\";\"אשדוד\";\"other\"\n\"295721\";\"‘Akko\";\"main\"\n\"295721\";\"`Akko\";\"ascii\"\n\"295721\";\"Accho\";\"other\"\n\"295721\";\"Acre\";\"other\"\n\"295721\";\"Acre - עכו\";\"other\"\n\"295721\";\"Acri\";\"other\"\n\"295721\";\"Akka\";\"other\"\n\"295721\";\"Akkia\";\"other\"\n\"295721\";\"Akko\";\"other\"\n\"295721\";\"Akre\";\"other\"\n\"295721\";\"Antiocheia\";\"other\"\n\"295721\";\"Ptolemais\";\"other\"\n\"295721\";\"Saint Jean d'Acre\";\"other\"\n\"295721\";\"Saint Jean d’Acre\";\"other\"\n\"295721\";\"San Giovanni d'Acri\";\"other\"\n\"295721\";\"`Akka\";\"other\"\n\"295721\";\"a ka\";\"other\"\n\"295721\";\"akko\";\"other\"\n\"295721\";\"Αντιόχεια\";\"other\"\n\"295721\";\"Акко\";\"other\"\n\"295721\";\"עכו\";\"other\"\n\"295721\";\"عكا\";\"other\"\n\"295721\";\"‘Akka\";\"other\"\n\"295721\";\"アッコ\";\"other\"\n\"295721\";\"阿卡\";\"other\"\n\"295739\";\"‘Afula ‘Illit\";\"main\"\n\"295739\";\"`Afula `Illit\";\"ascii\"\n\"295739\";\"Upper Afula\";\"other\"\n\"295739\";\"`Afula `Elit\";\"other\"\n\"295739\";\"`Afulah `Ilith\";\"other\"\n\"295739\";\"`Afulla `Illit\";\"other\"\n\"295739\";\"‘Afula ‘Elit\";\"other\"\n\"295739\";\"‘Afulla ‘Illit\";\"other\"\n\"295739\";\"‘Afūlāh ‘Ilīth\";\"other\"\n\"295772\";\"Abū Ghaush\";\"main\"\n\"295772\";\"Abu Ghaush\";\"ascii\"\n\"295772\";\"Abu Ghosh\";\"other\"\n\"295772\";\"Abu-Ghawsh\";\"other\"\n\"295772\";\"Abū Ghōsh\";\"other\"\n\"295772\";\"Kuryet el Enab\";\"other\"\n\"295772\";\"Qaryat al `Inab\";\"other\"\n\"295772\";\"Qaryat al ‘Inab\";\"other\"\n\"295772\";\"Qaryat el `Inab\";\"other\"\n\"295772\";\"Qaryat el ‘Inab\";\"other\"\n\"295772\";\"Qaryet el `Inab\";\"other\"\n\"295772\";\"Qaryet el ‘Inab\";\"other\"\n\"295772\";\"`Inab\";\"other\"\n\"295772\";\"‘Inab\";\"other\"\n\"386042\";\"Shibli\";\"main\"\n\"386194\";\"Rūmat Heib\";\"main\"\n\"386194\";\"Rumat Heib\";\"ascii\"\n\"386253\";\"Sallama\";\"main\"\n\"386445\";\"Kefar Weradim\";\"main\"\n\"6693244\";\"Lehavim\";\"main\"\n\"6693244\";\"lhbym\";\"other\"\n\"6693244\";\"להבים\";\"other\"\n\"6693674\";\"Petah Tikva\";\"main\"\n\"6693674\";\"Petakh-Tikva\";\"other\"\n\"6693674\";\"Петах-Тиква\";\"other\"\n\"6929924\";\"Midreshet Ben-Gurion\";\"main\"\n\"6945291\";\"Old City\";\"main\"\n\"7117228\";\"Qesarya\";\"main\"\n\"7117228\";\"Caesarea\";\"other\"\n\"7117228\";\"Kaysaria\";\"other\"\n\"7117228\";\"Keisarya\";\"other\"\n\"7117228\";\"Kesarija\";\"other\"\n\"7117228\";\"Кесария\";\"other\"\n\"7498240\";\"West Jerusalem\";\"main\"\n\"7498240\";\"Jerusalem West\";\"other\"\n\"7498240\";\"Vaestra Jerusalem\";\"other\"\n\"7498240\";\"Vest-Jerusalem\";\"other\"\n\"7498240\";\"Vestjerusalem\";\"other\"\n\"7498240\";\"Västra Jerusalem\";\"other\"\n\"7498240\";\"Westjerusalem\";\"other\"\n\"3042196\";\"Port Erin\";\"main\"\n\"3042196\";\"Port-Ehrin\";\"other\"\n\"3042196\";\"Порт-Эрин\";\"other\"\n\"3042237\";\"Douglas\";\"main\"\n\"3042237\";\"Daglas\";\"other\"\n\"3042237\";\"Daglasas\";\"other\"\n\"3042237\";\"Doolish\";\"other\"\n\"3042237\";\"Isle of Man\";\"other\"\n\"3042237\";\"Dubh Lios\";\"other\"\n\"3042237\";\"Duglas\";\"other\"\n\"3042237\";\"Port Douglas\";\"other\"\n\"3042237\";\"dagurasu shi\";\"other\"\n\"3042237\";\"Даглас\";\"other\"\n\"3042237\";\"Дуглас\";\"other\"\n\"3042237\";\"ダグラス市\";\"other\"\n\"1163626\";\"Thang\";\"main\"\n\"1167718\";\"Pūnch\";\"main\"\n\"1167718\";\"Punch\";\"ascii\"\n\"1167718\";\"Poonch\";\"other\"\n\"1252646\";\"Kīlakarai\";\"main\"\n\"1252646\";\"Kilakarai\";\"ascii\"\n\"1252646\";\"Kilakari\";\"other\"\n\"1252653\";\"Zunheboto\";\"main\"\n\"1252668\";\"Ziro\";\"main\"\n\"1252668\";\"Zero\";\"other\"\n\"1252692\";\"Zamānia\";\"main\"\n\"1252692\";\"Zamania\";\"ascii\"\n\"1252692\";\"Zaminia\";\"other\"\n\"1252698\";\"Zaidpur\";\"main\"\n\"1252699\";\"Zahirābād\";\"main\"\n\"1252699\";\"Zahirabad\";\"ascii\"\n\"1252702\";\"Zafarābād\";\"main\"\n\"1252702\";\"Zafarabad\";\"ascii\"\n\"1252714\";\"Yol\";\"main\"\n\"1252738\";\"Yeola\";\"main\"\n\"1252738\";\"Yevale\";\"other\"\n\"1252738\";\"Yewle\";\"other\"\n\"1252744\";\"Yellāpur\";\"main\"\n\"1252744\";\"Yellapur\";\"ascii\"\n\"1252745\";\"Yellandu\";\"main\"\n\"1252745\";\"Yellandlapad\";\"other\"\n\"1252745\";\"Yellandlapād\";\"other\"\n\"1252745\";\"Yellandrapad\";\"other\"\n\"1252753\";\"Yelbarga\";\"main\"\n\"1252756\";\"Yelandūr\";\"main\"\n\"1252756\";\"Yelandur\";\"ascii\"\n\"1252758\";\"Yelahanka\";\"main\"\n\"1252770\";\"Yavatmāl\";\"main\"\n\"1252770\";\"Yavatmal\";\"ascii\"\n\"1252770\";\"Yeotmal\";\"other\"\n\"1252770\";\"Yeotmāl\";\"other\"\n\"1252773\";\"Yāval\";\"main\"\n\"1252773\";\"Yaval\";\"ascii\"\n\"1252783\";\"Yārāda\";\"main\"\n\"1252783\";\"Yarada\";\"ascii\"\n\"1252795\";\"Yanam\";\"main\"\n\"1252795\";\"Janam\";\"other\"\n\"1252795\";\"Yanaon\";\"other\"\n\"1252795\";\"Янам\";\"other\"\n\"1252797\";\"Yamunānagar\";\"main\"\n\"1252797\";\"Yamunanagar\";\"ascii\"\n\"1252797\";\"Abdullahpur\";\"other\"\n\"1252797\";\"Abdullapur\";\"other\"\n\"1252797\";\"Abdullāhpur\";\"other\"\n\"1252797\";\"Jamna Nagar\";\"other\"\n\"1252810\";\"Yairipok\";\"main\"\n\"1252822\";\"Yādgīr\";\"main\"\n\"1252822\";\"Yadgir\";\"ascii\"\n\"1252840\";\"Wokha\";\"main\"\n\"1252885\";\"Wer\";\"main\"\n\"1252887\";\"Wellington\";\"main\"\n\"1252887\";\"Vellington\";\"other\"\n\"1252887\";\"Wellington Town\";\"other\"\n\"1252887\";\"Веллингтон\";\"other\"\n\"1252892\";\"Wazīrganj\";\"main\"\n\"1252892\";\"Wazirganj\";\"ascii\"\n\"1252908\";\"Wāshīm\";\"main\"\n\"1252908\";\"Washim\";\"ascii\"\n\"1252908\";\"Basim\";\"other\"\n\"1252908\";\"Băsim\";\"other\"\n\"1252919\";\"Warud\";\"main\"\n\"1252925\";\"Warora\";\"main\"\n\"1252930\";\"Wāris Alīganj\";\"main\"\n\"1252930\";\"Waris Aliganj\";\"ascii\"\n\"1252930\";\"Waris Ariganj\";\"other\"\n\"1252930\";\"Wāris Arīganj\";\"other\"\n\"1252942\";\"Wardha\";\"main\"\n\"1252942\";\"Vardkha\";\"other\"\n\"1252942\";\"Вардха\";\"other\"\n\"1252946\";\"Wārāseoni\";\"main\"\n\"1252946\";\"Waraseoni\";\"ascii\"\n\"1252948\";\"Warangal\";\"main\"\n\"1252948\";\"Varangal\";\"other\"\n\"1252948\";\"varangal\";\"other\"\n\"1252948\";\"varankal\";\"other\"\n\"1252948\";\"warangaru\";\"other\"\n\"1252948\";\"Варангал\";\"other\"\n\"1252948\";\"வாரங்கல்\";\"other\"\n\"1252948\";\"వరంగల్\";\"other\"\n\"1252948\";\"ワランガル\";\"other\"\n\"1252956\";\"Wanparti\";\"main\"\n\"1252956\";\"Wanaparthy\";\"other\"\n\"1252958\";\"Wānkāner\";\"main\"\n\"1252958\";\"Wankaner\";\"ascii\"\n\"1252958\";\"Vankaner Kathiawar\";\"other\"\n\"1252960\";\"Wani\";\"main\"\n\"1252960\";\"Vanja\";\"other\"\n\"1252960\";\"Wun\";\"other\"\n\"1252960\";\"Wūn\";\"other\"\n\"1252960\";\"Ваня\";\"other\"\n\"1252964\";\"Wāngjing\";\"main\"\n\"1252964\";\"Wangjing\";\"ascii\"\n\"1252997\";\"Wālājāpet\";\"main\"\n\"1252997\";\"Walajapet\";\"ascii\"\n\"1252997\";\"Walaja\";\"other\"\n\"1252998\";\"Wālājābād\";\"main\"\n\"1252998\";\"Walajabad\";\"ascii\"\n\"1252998\";\"Dandei Sivaram\";\"other\"\n\"1252998\";\"Dandei Sīvaram\";\"other\"\n\"1252998\";\"Wallajahbad\";\"other\"\n\"1253013\";\"Wai\";\"main\"\n\"1253013\";\"Vaj\";\"other\"\n\"1253013\";\"Вай\";\"other\"\n\"1253024\";\"Waghāi\";\"main\"\n\"1253024\";\"Waghai\";\"ascii\"\n\"1253041\";\"Wādi\";\"main\"\n\"1253041\";\"Wadi\";\"ascii\"\n\"1253041\";\"Vadi\";\"other\"\n\"1253041\";\"Вади\";\"other\"\n\"1253052\";\"Wadgaon\";\"main\"\n\"1253052\";\"Vadgaon\";\"other\"\n\"1253074\";\"Vyāra\";\"main\"\n\"1253074\";\"Vyara\";\"ascii\"\n\"1253074\";\"Vvara\";\"other\"\n\"1253077\";\"Vuyyūru\";\"main\"\n\"1253077\";\"Vuyyuru\";\"ascii\"\n\"1253079\";\"Vrindāvan\";\"main\"\n\"1253079\";\"Vrindavan\";\"ascii\"\n\"1253079\";\"Brindaban\";\"other\"\n\"1253079\";\"Brindāban\";\"other\"\n\"1253079\";\"Vrindaban\";\"other\"\n\"1253079\";\"Vrindāban\";\"other\"\n\"1253079\";\"Вриндаван\";\"other\"\n\"1253080\";\"Vriddhāchalam\";\"main\"\n\"1253080\";\"Vriddhachalam\";\"ascii\"\n\"1253084\";\"Vizianagaram\";\"main\"\n\"1253084\";\"Viguyanagram\";\"other\"\n\"1253084\";\"Vizianagram\";\"other\"\n\"1253084\";\"Vizianagram City\";\"other\"\n\"1253084\";\"vijayanakaram\";\"other\"\n\"1253084\";\"விஜயநகரம்\";\"other\"\n\"1253091\";\"Vite\";\"main\"\n\"1253091\";\"Vita\";\"other\"\n\"1253091\";\"Вита\";\"other\"\n\"1253095\";\"Visnagar\";\"main\"\n\"1253102\";\"Vishākhapatnam\";\"main\"\n\"1253102\";\"Vishakhapatnam\";\"ascii\"\n\"1253102\";\"Vaisakhapattanam\";\"other\"\n\"1253102\";\"Vaisākhapattanam\";\"other\"\n\"1253102\";\"Visak\";\"other\"\n\"1253102\";\"Visakha\";\"other\"\n\"1253102\";\"Visakhapatnam\";\"other\"\n\"1253102\";\"Visakhapatnamas\";\"other\"\n\"1253102\";\"Vishakkhapatnam\";\"other\"\n\"1253102\";\"Vizag\";\"other\"\n\"1253102\";\"Vizag City\";\"other\"\n\"1253102\";\"Vizagapatam\";\"other\"\n\"1253102\";\"bisakhapattama\";\"other\"\n\"1253102\";\"vicakappattinam\";\"other\"\n\"1253102\";\"visakhapatnam\";\"other\"\n\"1253102\";\"vu~ishakapatonamu\";\"other\"\n\"1253102\";\"Вишакхапатнам\";\"other\"\n\"1253102\";\"বিশাখাপত্তম\";\"other\"\n\"1253102\";\"விசாகப்பட்டிணம்\";\"other\"\n\"1253102\";\"విశాఖపట్నం\";\"other\"\n\"1253102\";\"ヴィシャーカパトナム\";\"other\"\n\"1253105\";\"Vīsāvadar\";\"main\"\n\"1253105\";\"Visavadar\";\"ascii\"\n\"1253105\";\"Visavedar\";\"other\"\n\"1253113\";\"Virudunagar\";\"main\"\n\"1253113\";\"Virudupatti\";\"other\"\n\"1253115\";\"Virpur\";\"main\"\n\"1253127\";\"Viravanallūr\";\"main\"\n\"1253127\";\"Viravanallur\";\"ascii\"\n\"1253127\";\"Vadakku Viravanallur\";\"other\"\n\"1253127\";\"Vadakku Viravanallūr\";\"other\"\n\"1253132\";\"Vīrarājendrapet\";\"main\"\n\"1253132\";\"Virarajendrapet\";\"ascii\"\n\"1253133\";\"Virār\";\"main\"\n\"1253133\";\"Virar\";\"ascii\"\n\"1253147\";\"Vīraganūr\";\"main\"\n\"1253147\";\"Viraganur\";\"ascii\"\n\"1253150\";\"Vinukonda\";\"main\"\n\"1253162\";\"Vinchia\";\"main\"\n\"1253162\";\"Vichhia\";\"other\"\n\"1253166\";\"Villupuram\";\"main\"\n\"1253166\";\"Villapurum\";\"other\"\n\"1253175\";\"Vilāttikulam\";\"main\"\n\"1253175\";\"Vilattikulam\";\"ascii\"\n\"1253175\";\"Vilatikulam\";\"other\"\n\"1253177\";\"Vikravāndi\";\"main\"\n\"1253177\";\"Vikravandi\";\"ascii\"\n\"1253182\";\"Vikārābād\";\"main\"\n\"1253182\";\"Vikarabad\";\"ascii\"\n\"1253182\";\"Vicarabad\";\"other\"\n\"1253184\";\"Vijayawāda\";\"main\"\n\"1253184\";\"Vijayawada\";\"ascii\"\n\"1253184\";\"Bezawada\";\"other\"\n\"1253184\";\"Bezwada\";\"other\"\n\"1253184\";\"Bezwāda\";\"other\"\n\"1253184\";\"Vidzhajavada\";\"other\"\n\"1253184\";\"Vijayavada\";\"other\"\n\"1253184\";\"Vijayavādā\";\"other\"\n\"1253184\";\"Widzajawada\";\"other\"\n\"1253184\";\"Widźajawada\";\"other\"\n\"1253184\";\"vijayavada\";\"other\"\n\"1253184\";\"vijayavata\";\"other\"\n\"1253184\";\"vu~ijayawada\";\"other\"\n\"1253184\";\"Виджаявада\";\"other\"\n\"1253184\";\"விஜயவாடா\";\"other\"\n\"1253184\";\"విజయవాడ\";\"other\"\n\"1253184\";\"ヴィジャヤワーダ\";\"other\"\n\"1253186\";\"Vijayapuri\";\"main\"\n\"1253193\";\"Vijāpur\";\"main\"\n\"1253193\";\"Vijapur\";\"ascii\"\n\"1253200\";\"Vidisha\";\"main\"\n\"1253200\";\"Bhilsa\";\"other\"\n\"1253200\";\"Bhīlsa\";\"other\"\n\"1253217\";\"Vettavalam\";\"main\"\n\"1253219\";\"Vettaikkāranpudūr\";\"main\"\n\"1253219\";\"Vettaikkaranpudur\";\"ascii\"\n\"1253219\";\"Vettagaranpudur\";\"other\"\n\"1253219\";\"Vettakkaranpudur\";\"other\"\n\"1253219\";\"Vettakkāranpudūr\";\"other\"\n\"1253220\";\"Vetāpālem\";\"main\"\n\"1253220\";\"Vetapalem\";\"ascii\"\n\"1253237\";\"Verāval\";\"main\"\n\"1253237\";\"Veraval\";\"ascii\"\n\"1253242\";\"Vepagunta\";\"main\"\n\"1253251\";\"Venkatagiri\";\"main\"\n\"1253251\";\"Venkatagiri Town\";\"other\"\n\"1253257\";\"Vengurla\";\"main\"\n\"1253275\";\"Vemalwāda\";\"main\"\n\"1253275\";\"Vemalwada\";\"ascii\"\n\"1253275\";\"Lembulavataka\";\"other\"\n\"1253275\";\"Lemulavada\";\"other\"\n\"1253275\";\"Vemulavada\";\"other\"\n\"1253278\";\"Velūr\";\"main\"\n\"1253278\";\"Velur\";\"ascii\"\n\"1253286\";\"Vellore\";\"main\"\n\"1253286\";\"Vellor\";\"other\"\n\"1253286\";\"Velluru\";\"other\"\n\"1253286\";\"Velur\";\"other\"\n\"1253286\";\"velur\";\"other\"\n\"1253286\";\"vu~eruru\";\"other\"\n\"1253286\";\"Веллор\";\"other\"\n\"1253286\";\"வேலூர்\";\"other\"\n\"1253286\";\"ヴェールール\";\"other\"\n\"1253315\";\"Vejalpur\";\"main\"\n\"1253328\";\"Vedasandūr\";\"main\"\n\"1253328\";\"Vedasandur\";\"ascii\"\n\"1253330\";\"Vedāranniyam\";\"main\"\n\"1253330\";\"Vedaranniyam\";\"ascii\"\n\"1253330\";\"Vedaranayam\";\"other\"\n\"1253330\";\"Vedaraniam\";\"other\"\n\"1253340\";\"Vayalār\";\"main\"\n\"1253340\";\"Vayalar\";\"ascii\"\n\"1253352\";\"Vattalkundu\";\"main\"\n\"1253357\";\"Vāsudevanallūr\";\"main\"\n\"1253357\";\"Vasudevanallur\";\"ascii\"\n\"1253363\";\"Vasind\";\"main\"\n\"1253367\";\"Vāsco Da Gāma\";\"main\"\n\"1253367\";\"Vasco Da Gama\";\"ascii\"\n\"1253367\";\"Vasco\";\"other\"\n\"1253367\";\"Vasco da Gama\";\"other\"\n\"1253367\";\"Vasko-da-Gama\";\"other\"\n\"1253367\";\"Васко-да-Гама\";\"other\"\n\"1253374\";\"Vasa\";\"main\"\n\"1253381\";\"Vartej\";\"main\"\n\"1253392\";\"Varkkallai\";\"main\"\n\"1253392\";\"Varkala\";\"other\"\n\"1253392\";\"Варкала\";\"other\"\n\"1253401\";\"Varca\";\"main\"\n\"1253403\";\"Varangaon\";\"main\"\n\"1253405\";\"Benares\";\"main\"\n\"1253405\";\"Banaras\";\"other\"\n\"1253405\";\"Banares\";\"other\"\n\"1253405\";\"Banāras\";\"other\"\n\"1253405\";\"Benarés\";\"other\"\n\"1253405\";\"Kasi\";\"other\"\n\"1253405\";\"Kāsi\";\"other\"\n\"1253405\";\"Varanasi\";\"other\"\n\"1253405\";\"Varanasio\";\"other\"\n\"1253405\";\"Varanasis\";\"other\"\n\"1253405\";\"Varanassi\";\"other\"\n\"1253405\";\"Vârânasî\";\"other\"\n\"1253405\";\"Vārānasi\";\"other\"\n\"1253405\";\"Waranasi\";\"other\"\n\"1253405\";\"balanasi\";\"other\"\n\"1253405\";\"baranasi\";\"other\"\n\"1253405\";\"pha ran si\";\"other\"\n\"1253405\";\"varanaci\";\"other\"\n\"1253405\";\"varanasi\";\"other\"\n\"1253405\";\"wa la na xi\";\"other\"\n\"1253405\";\"waranashi\";\"other\"\n\"1253405\";\"Варанаси\";\"other\"\n\"1253405\";\"वाराणसी\";\"other\"\n\"1253405\";\"বারানসি\";\"other\"\n\"1253405\";\"வாரணாசி\";\"other\"\n\"1253405\";\"พาราณสี\";\"other\"\n\"1253405\";\"ワーラーナシー\";\"other\"\n\"1253405\";\"瓦臘納西\";\"other\"\n\"1253405\";\"바라나시\";\"other\"\n\"1253425\";\"Vānsada\";\"main\"\n\"1253425\";\"Vansada\";\"ascii\"\n\"1253425\";\"Bansda\";\"other\"\n\"1253425\";\"Bānsda\";\"other\"\n\"1253425\";\"Wansda\";\"other\"\n\"1253425\";\"Wānsda\";\"other\"\n\"1253437\";\"Vāniyambādi\";\"main\"\n\"1253437\";\"Vaniyambadi\";\"ascii\"\n\"1253437\";\"Vanivambadi\";\"other\"\n\"1253437\";\"Vānivambādi\";\"other\"\n\"1253452\";\"Vandavāsi\";\"main\"\n\"1253452\";\"Vandavasi\";\"ascii\"\n\"1253452\";\"Wandiwash\";\"other\"\n\"1253452\";\"Wandiwāsh\";\"other\"\n\"1253454\";\"Vandalūr\";\"main\"\n\"1253454\";\"Vandalur\";\"ascii\"\n\"1253468\";\"Valsād\";\"main\"\n\"1253468\";\"Valsad\";\"ascii\"\n\"1253468\";\"Bulsar\";\"other\"\n\"1253468\";\"Bulsār\";\"other\"\n\"1253468\";\"Walsad\";\"other\"\n\"1253468\";\"Walsād\";\"other\"\n\"1253471\";\"Valpoy\";\"main\"\n\"1253471\";\"Valpoi\";\"other\"\n\"1253471\";\"Valpoi Town\";\"other\"\n\"1253472\";\"Vālpārai\";\"main\"\n\"1253472\";\"Valparai\";\"ascii\"\n\"1253481\";\"Vallam\";\"main\"\n\"1253482\";\"Vallabh Vidyanagar\";\"main\"\n\"1253482\";\"Vallabh\";\"other\"\n\"1253482\";\"Vallabh Vidhyanagar\";\"other\"\n\"1253490\";\"Valavanūr\";\"main\"\n\"1253490\";\"Valavanur\";\"ascii\"\n\"1253500\";\"Valapattanam\";\"main\"\n\"1253500\";\"Azhikal\";\"other\"\n\"1253500\";\"Azhikkal\";\"other\"\n\"1253500\";\"Baliapatam\";\"other\"\n\"1253500\";\"Beliapatanam\";\"other\"\n\"1253500\";\"Valarpattanam\";\"other\"\n\"1253504\";\"Valangimān\";\"main\"\n\"1253504\";\"Valangiman\";\"ascii\"\n\"1253512\";\"Valabhīpur\";\"main\"\n\"1253512\";\"Valabhipur\";\"ascii\"\n\"1253512\";\"Vala\";\"other\"\n\"1253512\";\"Vallabhipur\";\"other\"\n\"1253544\";\"Vaikam\";\"main\"\n\"1253544\";\"Vaikom\";\"other\"\n\"1253545\";\"Vaijāpur\";\"main\"\n\"1253545\";\"Vaijapur\";\"ascii\"\n\"1253559\";\"Vāghodia\";\"main\"\n\"1253559\";\"Vaghodia\";\"ascii\"\n\"1253559\";\"Waghoria\";\"other\"\n\"1253573\";\"Vadodara\";\"main\"\n\"1253573\";\"Baroda\";\"other\"\n\"1253573\";\"Vapadedara\";\"other\"\n\"1253573\";\"vadodara\";\"other\"\n\"1253573\";\"vadodara sahara\";\"other\"\n\"1253573\";\"vu~adodara\";\"other\"\n\"1253573\";\"Вадодара\";\"other\"\n\"1253573\";\"वडोदरा शहर\";\"other\"\n\"1253573\";\"વડોદરા\";\"other\"\n\"1253573\";\"ヴァドダラ\";\"other\"\n\"1253573\";\"ヴァドーダラー\";\"other\"\n\"1253577\";\"Vadnagar\";\"main\"\n\"1253578\";\"Vadlapūdi\";\"main\"\n\"1253578\";\"Vadlapudi\";\"ascii\"\n\"1253579\";\"Vādippatti\";\"main\"\n\"1253579\";\"Vadippatti\";\"ascii\"\n\"1253595\";\"Vadamadurai\";\"main\"\n\"1253595\";\"Vada-Madura\";\"other\"\n\"1253605\";\"Vadakku Valliyūr\";\"main\"\n\"1253605\";\"Vadakku Valliyur\";\"ascii\"\n\"1253610\";\"Vāda\";\"main\"\n\"1253610\";\"Vada\";\"ascii\"\n\"1253621\";\"Ūttukkuli\";\"main\"\n\"1253621\";\"Uttukkuli\";\"ascii\"\n\"1253621\";\"Uttukuli\";\"other\"\n\"1253623\";\"Uttiramerūr\";\"main\"\n\"1253623\";\"Uttiramerur\";\"ascii\"\n\"1253623\";\"Uttaramerur\";\"other\"\n\"1253623\";\"Uttaramerūr\";\"other\"\n\"1253628\";\"Uttarkāshi\";\"main\"\n\"1253628\";\"Uttarkashi\";\"ascii\"\n\"1253628\";\"Barahat\";\"other\"\n\"1253628\";\"Bārāhāt\";\"other\"\n\"1253635\";\"Uttamapālaiyam\";\"main\"\n\"1253635\";\"Uttamapalaiyam\";\"ascii\"\n\"1253638\";\"Utraulā\";\"main\"\n\"1253638\";\"Utraula\";\"ascii\"\n\"1253640\";\"Utrān\";\"main\"\n\"1253640\";\"Utran\";\"ascii\"\n\"1253671\";\"Usilampatti\";\"main\"\n\"1253673\";\"Usehat\";\"main\"\n\"1253694\";\"Uri\";\"main\"\n\"1253698\";\"Uravakonda\";\"main\"\n\"1253702\";\"Uran\";\"main\"\n\"1253702\";\"Уран\";\"other\"\n\"1253719\";\"Uppiliyapuram\";\"main\"\n\"1253719\";\"Uppiliapuram\";\"other\"\n\"1253736\";\"Upleta\";\"main\"\n\"1253744\";\"Uppal Kalan\";\"main\"\n\"1253744\";\"Oopal\";\"other\"\n\"1253744\";\"Pedda Uppal\";\"other\"\n\"1253744\";\"Upal\";\"other\"\n\"1253744\";\"Uppal\";\"other\"\n\"1253747\";\"Unnāo\";\"main\"\n\"1253747\";\"Unnao\";\"ascii\"\n\"1253747\";\"Unao\";\"other\"\n\"1253750\";\"Unjha\";\"main\"\n\"1253751\";\"Uniāra\";\"main\"\n\"1253751\";\"Uniara\";\"ascii\"\n\"1253754\";\"Unhel\";\"main\"\n\"1253782\";\"Una\";\"main\"\n\"1253783\";\"Una\";\"main\"\n\"1253785\";\"Ūn\";\"main\"\n\"1253785\";\"Un\";\"ascii\"\n\"1253786\";\"Un\";\"main\"\n\"1253796\";\"Umri\";\"main\"\n\"1253805\";\"Umreth\";\"main\"\n\"1253807\";\"Umred\";\"main\"\n\"1253807\";\"Umrer\";\"other\"\n\"1253815\";\"Umrāla\";\"main\"\n\"1253815\";\"Umrala\";\"ascii\"\n\"1253860\";\"Umarkot\";\"main\"\n\"1253861\";\"Umarkhed\";\"main\"\n\"1253863\";\"Umariā\";\"main\"\n\"1253863\";\"Umaria\";\"ascii\"\n\"1253870\";\"Umarga\";\"main\"\n\"1253888\";\"Ullāl\";\"main\"\n\"1253888\";\"Ullal\";\"ascii\"\n\"1253888\";\"Ulaul\";\"other\"\n\"1253888\";\"Ullai\";\"other\"\n\"1253894\";\"Ulhāsnagar\";\"main\"\n\"1253894\";\"Ulhasnagar\";\"ascii\"\n\"1253898\";\"Ukwa\";\"main\"\n\"1253901\";\"Uklāna\";\"main\"\n\"1253901\";\"Uklana\";\"ascii\"\n\"1253901\";\"Uklana Mandi\";\"other\"\n\"1253914\";\"Ujjain\";\"main\"\n\"1253914\";\"Uddzhajn\";\"other\"\n\"1253914\";\"ujjaina\";\"other\"\n\"1253914\";\"Удджайн\";\"other\"\n\"1253914\";\"उज्जैन\";\"other\"\n\"1253914\";\"উজ্জৈন\";\"other\"\n\"1253918\";\"Ujhāni\";\"main\"\n\"1253918\";\"Ujhani\";\"ascii\"\n\"1253930\";\"Ugu\";\"main\"\n\"1253944\";\"Udumalaippettai\";\"main\"\n\"1253944\";\"Udamalpet\";\"other\"\n\"1253947\";\"Udpura\";\"main\"\n\"1253952\";\"Udipi\";\"main\"\n\"1253952\";\"Udupi\";\"other\"\n\"1253952\";\"udupi\";\"other\"\n\"1253952\";\"wu du pi\";\"other\"\n\"1253952\";\"ಉಡುಪಿ\";\"other\"\n\"1253952\";\"乌杜皮\";\"other\"\n\"1253956\";\"Udhampur\";\"main\"\n\"1253958\";\"Udgīr\";\"main\"\n\"1253958\";\"Udgir\";\"ascii\"\n\"1253972\";\"Udankudi\";\"main\"\n\"1253977\";\"Udalguri\";\"main\"\n\"1253984\";\"Udaipura\";\"main\"\n\"1253985\";\"Udaipur\";\"main\"\n\"1253986\";\"Udaipur\";\"main\"\n\"1253986\";\"Oodeypore\";\"other\"\n\"1253986\";\"Udaipur City\";\"other\"\n\"1253986\";\"Udajpur\";\"other\"\n\"1253986\";\"Удайпур\";\"other\"\n\"1253987\";\"Udaipur\";\"main\"\n\"1253987\";\"Udajpur\";\"other\"\n\"1253987\";\"Удайпур\";\"other\"\n\"1253992\";\"Udaigiri\";\"main\"\n\"1253992\";\"Ghumusar Udayagiri\";\"other\"\n\"1253992\";\"Udayagiri\";\"other\"\n\"1253993\";\"Udagamandalām\";\"main\"\n\"1253993\";\"Udagamandalam\";\"ascii\"\n\"1253993\";\"Ootacamund\";\"other\"\n\"1253993\";\"Ooty\";\"other\"\n\"1253993\";\"Otacamund\";\"other\"\n\"1253993\";\"Udakamandalam\";\"other\"\n\"1253993\";\"Udhagamandalam\";\"other\"\n\"1253993\";\"Utakamand\";\"other\"\n\"1253993\";\"udakamandaramu\";\"other\"\n\"1253993\";\"udhagamandalama\";\"other\"\n\"1253993\";\"utakamantalam\";\"other\"\n\"1253993\";\"uti\";\"other\"\n\"1253993\";\"ऊटी\";\"other\"\n\"1253993\";\"উধগমন্ডলম\";\"other\"\n\"1253993\";\"உதகமண்டலம்\";\"other\"\n\"1253993\";\"ウダカマンダラム\";\"other\"\n\"1254000\";\"Uchāna\";\"main\"\n\"1254000\";\"Uchana\";\"ascii\"\n\"1254000\";\"Bara Uchana\";\"other\"\n\"1254000\";\"Bara Uchāna\";\"other\"\n\"1254022\";\"Tuticorin\";\"main\"\n\"1254022\";\"Thoothukudi\";\"other\"\n\"1254022\";\"Thoothukudi District\";\"other\"\n\"1254022\";\"Tuticorin District\";\"other\"\n\"1254022\";\"Tutikorin\";\"other\"\n\"1254022\";\"Tutikorín\";\"other\"\n\"1254022\";\"Tuttukkudi\";\"other\"\n\"1254022\";\"Tūttukkudi\";\"other\"\n\"1254022\";\"tuttukkuti\";\"other\"\n\"1254022\";\"தூத்துக்குடி\";\"other\"\n\"1254025\";\"Turuvekere\";\"main\"\n\"1254043\";\"Turaiyūr\";\"main\"\n\"1254043\";\"Turaiyur\";\"ascii\"\n\"1254043\";\"Turalyur\";\"other\"\n\"1254046\";\"Tura\";\"main\"\n\"1254054\";\"Tuni\";\"main\"\n\"1254069\";\"Tūndla\";\"main\"\n\"1254069\";\"Tundla\";\"ascii\"\n\"1254080\";\"Tumsar\";\"main\"\n\"1254089\";\"Tumkūr\";\"main\"\n\"1254089\";\"Tumkur\";\"ascii\"\n\"1254102\";\"Tulsīpur\";\"main\"\n\"1254102\";\"Tulsipur\";\"ascii\"\n\"1254111\";\"Tuljāpur\";\"main\"\n\"1254111\";\"Tuljapur\";\"ascii\"\n\"1254131\";\"Tufānganj\";\"main\"\n\"1254131\";\"Tufanganj\";\"ascii\"\n\"1254133\";\"Tuensang\";\"main\"\n\"1254133\";\"Mozungjami\";\"other\"\n\"1254133\";\"Mozūngjāmi\";\"other\"\n\"1254142\";\"Tsrār Sharīf\";\"main\"\n\"1254142\";\"Tsrar Sharif\";\"ascii\"\n\"1254142\";\"Charar Sharif\";\"other\"\n\"1254142\";\"Charar-i-Sharif\";\"other\"\n\"1254142\";\"Cherar-i-Sharif\";\"other\"\n\"1254142\";\"Tasrar Sharif\";\"other\"\n\"1254142\";\"Tasrār Sharīf\";\"other\"\n\"1254163\";\"Thiruvananthapuram\";\"main\"\n\"1254163\";\"Tiruvananantapuram\";\"other\"\n\"1254163\";\"Tiruvanantapuram\";\"other\"\n\"1254163\";\"Trivandrum\";\"other\"\n\"1254163\";\"te li fan de lang\";\"other\"\n\"1254163\";\"tiru'anantapuram\";\"other\"\n\"1254163\";\"tirubanantapurama\";\"other\"\n\"1254163\";\"tiruvanantapuram\";\"other\"\n\"1254163\";\"tiruvanantapurama\";\"other\"\n\"1254163\";\"tiruvu~anantapuramu\";\"other\"\n\"1254163\";\"tribanadrama\";\"other\"\n\"1254163\";\"trivendrama\";\"other\"\n\"1254163\";\"Тируванантапурам\";\"other\"\n\"1254163\";\"तिरुअनन्तपुरम्\";\"other\"\n\"1254163\";\"तिरुवनंतपुरम\";\"other\"\n\"1254163\";\"त्रिवेन्द्रम\";\"other\"\n\"1254163\";\"তিরুবনন্তপুরম\";\"other\"\n\"1254163\";\"ত্রিবানদ্রাম\";\"other\"\n\"1254163\";\"திருவனந்தபுரம்\";\"other\"\n\"1254163\";\"തിരുവനന്തപുരം\";\"other\"\n\"1254163\";\"ティルヴァナンタプラム\";\"other\"\n\"1254163\";\"特里凡得琅\";\"other\"\n\"1254177\";\"Trimbak\";\"main\"\n\"1254187\";\"Trichūr\";\"main\"\n\"1254187\";\"Trichur\";\"ascii\"\n\"1254187\";\"Thrissur\";\"other\"\n\"1254187\";\"Trichura\";\"other\"\n\"1254187\";\"tiruccur\";\"other\"\n\"1254187\";\"Тричура\";\"other\"\n\"1254187\";\"திருச்சூர்\";\"other\"\n\"1254187\";\"തൃശ്ശൂര്‍\";\"other\"\n\"1254198\";\"Trāl\";\"main\"\n\"1254198\";\"Tral\";\"ascii\"\n\"1254214\";\"Toshām\";\"main\"\n\"1254214\";\"Tosham\";\"ascii\"\n\"1254214\";\"Tosbam\";\"other\"\n\"1254214\";\"Tosbām\";\"other\"\n\"1254222\";\"Tori Fatehpur\";\"main\"\n\"1254231\";\"Topchānchi\";\"main\"\n\"1254231\";\"Topchanchi\";\"ascii\"\n\"1254241\";\"Tonk\";\"main\"\n\"1254241\";\"Tonk City\";\"other\"\n\"1254249\";\"Tondi\";\"main\"\n\"1254274\";\"Tohāna\";\"main\"\n\"1254274\";\"Tohana\";\"ascii\"\n\"1254282\";\"Toda Rāisingh\";\"main\"\n\"1254282\";\"Toda Raisingh\";\"ascii\"\n\"1254282\";\"Todarasingh\";\"other\"\n\"1254283\";\"Toda Bhīm\";\"main\"\n\"1254283\";\"Toda Bhim\";\"ascii\"\n\"1254302\";\"Titron\";\"main\"\n\"1254304\";\"Titlāgarh\";\"main\"\n\"1254304\";\"Titlagarh\";\"ascii\"\n\"1254304\";\"Titilagarh\";\"other\"\n\"1254304\";\"Titlagar\";\"other\"\n\"1254309\";\"Titāgarh\";\"main\"\n\"1254309\";\"Titagarh\";\"ascii\"\n\"1254310\";\"Titābar\";\"main\"\n\"1254310\";\"Titabar\";\"ascii\"\n\"1254317\";\"Tisaiyanvilai\";\"main\"\n\"1254321\";\"Tiruvidaimarudūr\";\"main\"\n\"1254321\";\"Tiruvidaimarudur\";\"ascii\"\n\"1254321\";\"Tiruvadaimarudur\";\"other\"\n\"1254321\";\"Tiruvadamarudur\";\"other\"\n\"1254321\";\"Tiruvadamarudūr\";\"other\"\n\"1254321\";\"Tiruvidaimardur\";\"other\"\n\"1254322\";\"Tiruvettipuram\";\"main\"\n\"1254322\";\"Cheyyar\";\"other\"\n\"1254322\";\"Tiruvattiyur\";\"other\"\n\"1254322\";\"Tiruvattiyūr\";\"other\"\n\"1254322\";\"Tiruvetipuram\";\"other\"\n\"1254327\";\"Tiruvannāmalai\";\"main\"\n\"1254327\";\"Tiruvannamalai\";\"ascii\"\n\"1254327\";\"Tirruvannamalai\";\"other\"\n\"1254327\";\"Tiruvannamalaj\";\"other\"\n\"1254327\";\"tiruvannamalai\";\"other\"\n\"1254327\";\"tiruvu~an'namarai\";\"other\"\n\"1254327\";\"Тируваннамалай\";\"other\"\n\"1254327\";\"திருவண்ணாமலை\";\"other\"\n\"1254327\";\"ティルヴァンナーマライ\";\"other\"\n\"1254331\";\"Tiruvallūr\";\"main\"\n\"1254331\";\"Tiruvallur\";\"ascii\"\n\"1254331\";\"Tiruvellore\";\"other\"\n\"1254335\";\"Tiruvalla\";\"main\"\n\"1254335\";\"Thiruvalla\";\"other\"\n\"1254342\";\"Tiruttani\";\"main\"\n\"1254342\";\"Tirutani\";\"other\"\n\"1254343\";\"Tiruttangal\";\"main\"\n\"1254346\";\"Tirūr\";\"main\"\n\"1254346\";\"Tirur\";\"ascii\"\n\"1254346\";\"Tirur Station\";\"other\"\n\"1254347\";\"Tiruppuvanam\";\"main\"\n\"1254348\";\"Tiruppūr\";\"main\"\n\"1254348\";\"Tiruppur\";\"ascii\"\n\"1254348\";\"Tirupur\";\"other\"\n\"1254356\";\"Tirupparangunram\";\"main\"\n\"1254356\";\"Thiruparangundram\";\"other\"\n\"1254356\";\"Thirupparankundram\";\"other\"\n\"1254356\";\"Tiruparankundram\";\"other\"\n\"1254356\";\"Tirupparankunram\";\"other\"\n\"1254360\";\"Tirupati\";\"main\"\n\"1254360\";\"Tirumalai\";\"other\"\n\"1254360\";\"Тирупати\";\"other\"\n\"1254361\";\"Tirunelveli\";\"main\"\n\"1254361\";\"Tinnevelli\";\"other\"\n\"1254361\";\"Tinnevelly\";\"other\"\n\"1254361\";\"Tinnevelly Junction\";\"other\"\n\"1254361\";\"Tirunelweli\";\"other\"\n\"1254361\";\"tirunelveli\";\"other\"\n\"1254361\";\"tiruneruvu~eri\";\"other\"\n\"1254361\";\"திருநெல்வேலி\";\"other\"\n\"1254361\";\"ティルネルヴェーリ\";\"other\"\n\"1254367\";\"Tirumullaivāsal\";\"main\"\n\"1254367\";\"Tirumullaivasal\";\"ascii\"\n\"1254367\";\"Thirumalavasal\";\"other\"\n\"1254373\";\"Tirumala\";\"main\"\n\"1254373\";\"Upper Tirupati\";\"other\"\n\"1254374\";\"Tirumakūdal Narsipur\";\"main\"\n\"1254374\";\"Tirumakudal Narsipur\";\"ascii\"\n\"1254377\";\"Tirukkoyilūr\";\"main\"\n\"1254377\";\"Tirukkoyilur\";\"ascii\"\n\"1254377\";\"Tirukkovilur\";\"other\"\n\"1254378\";\"Tirukkāttuppalli\";\"main\"\n\"1254378\";\"Tirukkattuppalli\";\"ascii\"\n\"1254378\";\"Tirukattupalli\";\"other\"\n\"1254385\";\"Tiruchengodu\";\"main\"\n\"1254388\";\"Tiruchchirāppalli\";\"main\"\n\"1254388\";\"Tiruchchirappalli\";\"ascii\"\n\"1254388\";\"Tiruchchinappalli\";\"other\"\n\"1254388\";\"Tiruchchināppalli\";\"other\"\n\"1254388\";\"Tiruchirappalli\";\"other\"\n\"1254388\";\"Trichinapalli\";\"other\"\n\"1254388\";\"Trichinopoli\";\"other\"\n\"1254388\";\"Trichinopoly\";\"other\"\n\"1254388\";\"Trinchinopoly\";\"other\"\n\"1254390\";\"Tiruchchendūr\";\"main\"\n\"1254390\";\"Tiruchchendur\";\"ascii\"\n\"1254390\";\"Tiruchendur\";\"other\"\n\"1254390\";\"Tiruchendūr\";\"other\"\n\"1254396\";\"Tīrthahalli\";\"main\"\n\"1254396\";\"Tirthahalli\";\"ascii\"\n\"1254400\";\"Tirodi\";\"main\"\n\"1254415\";\"Tīra Sujānpur\";\"main\"\n\"1254415\";\"Tira Sujanpur\";\"ascii\"\n\"1254415\";\"Sujanpur\";\"other\"\n\"1254415\";\"Sujanpur Tira\";\"other\"\n\"1254415\";\"Sujānpur\";\"other\"\n\"1254420\";\"Tiptūr\";\"main\"\n\"1254420\";\"Tiptur\";\"ascii\"\n\"1254432\";\"Tinsukia\";\"main\"\n\"1254436\";\"Tinnanūr\";\"main\"\n\"1254436\";\"Tinnanur\";\"ascii\"\n\"1254436\";\"Thiruninravur\";\"other\"\n\"1254442\";\"Tindwāri\";\"main\"\n\"1254442\";\"Tindwari\";\"ascii\"\n\"1254444\";\"Tindivanam\";\"main\"\n\"1254444\";\"Tindivangam\";\"other\"\n\"1254481\";\"Tilhar\";\"main\"\n\"1254513\";\"Tikri\";\"main\"\n\"1254534\";\"Tīkamgarh\";\"main\"\n\"1254534\";\"Tikamgarh\";\"ascii\"\n\"1254536\";\"Tikaitnagar\";\"main\"\n\"1254538\";\"Tijāra\";\"main\"\n\"1254538\";\"Tijara\";\"ascii\"\n\"1254570\";\"Thoubāl\";\"main\"\n\"1254570\";\"Thoubal\";\"ascii\"\n\"1254589\";\"Thiruvārūr\";\"main\"\n\"1254589\";\"Thiruvarur\";\"ascii\"\n\"1254589\";\"Tirnvalur\";\"other\"\n\"1254589\";\"Tiruvalur\";\"other\"\n\"1254589\";\"Tiruvarur\";\"other\"\n\"1254589\";\"Tiruvālūr\";\"other\"\n\"1254590\";\"Thiruvaiyāru\";\"main\"\n\"1254590\";\"Thiruvaiyaru\";\"ascii\"\n\"1254590\";\"Tiruvadi\";\"other\"\n\"1254590\";\"Tiruvādi\";\"other\"\n\"1254608\";\"Theog\";\"main\"\n\"1254609\";\"Thenzawl\";\"main\"\n\"1254624\";\"Thāsra\";\"main\"\n\"1254624\";\"Thasra\";\"ascii\"\n\"1254638\";\"Tharād\";\"main\"\n\"1254638\";\"Tharad\";\"ascii\"\n\"1254647\";\"Thanna Mandi\";\"main\"\n\"1254649\";\"Thanjāvūr\";\"main\"\n\"1254649\";\"Thanjavur\";\"ascii\"\n\"1254649\";\"Tanjavur\";\"other\"\n\"1254649\";\"Tanjavûr\";\"other\"\n\"1254649\";\"Tanjor\";\"other\"\n\"1254649\";\"Tanjore\";\"other\"\n\"1254649\";\"Tanjāvūr\";\"other\"\n\"1254649\";\"Tkhandzhavur\";\"other\"\n\"1254649\";\"tanjaura\";\"other\"\n\"1254649\";\"tanjavuru\";\"other\"\n\"1254649\";\"Тханджавур\";\"other\"\n\"1254649\";\"तंजौर\";\"other\"\n\"1254649\";\"தஞ்சாவூர்\";\"other\"\n\"1254649\";\"തഞ്ചാവൂര്‍\";\"other\"\n\"1254649\";\"タンジャーヴール\";\"other\"\n\"1254657\";\"Thānesar\";\"main\"\n\"1254657\";\"Thanesar\";\"ascii\"\n\"1254661\";\"Thāne\";\"main\"\n\"1254661\";\"Thane\";\"ascii\"\n\"1254661\";\"Tanja\";\"other\"\n\"1254661\";\"Tanna\";\"other\"\n\"1254661\";\"Thana\";\"other\"\n\"1254661\";\"Thāna\";\"other\"\n\"1254661\";\"Таня\";\"other\"\n\"1254663\";\"Thāndla\";\"main\"\n\"1254663\";\"Thandla\";\"ascii\"\n\"1254673\";\"Thāna Bhawan\";\"main\"\n\"1254673\";\"Thana Bhawan\";\"ascii\"\n\"1254675\";\"Thān\";\"main\"\n\"1254675\";\"Than\";\"ascii\"\n\"1254675\";\"Thangadh\";\"other\"\n\"1254694\";\"Thākurganj\";\"main\"\n\"1254694\";\"Thakurganj\";\"ascii\"\n\"1254695\";\"Thākurdwāra\";\"main\"\n\"1254695\";\"Thakurdwara\";\"ascii\"\n\"1254709\";\"Tezu\";\"main\"\n\"1254709\";\"Teju\";\"other\"\n\"1254709\";\"Teju Basha\";\"other\"\n\"1254709\";\"Teju Bāsha\";\"other\"\n\"1254710\";\"Tezpur\";\"main\"\n\"1254710\";\"Darrang\";\"other\"\n\"1254727\";\"Terdāl\";\"main\"\n\"1254727\";\"Terdal\";\"ascii\"\n\"1254732\";\"Teonthar\";\"main\"\n\"1254744\";\"Tenkāsi\";\"main\"\n\"1254744\";\"Tenkasi\";\"ascii\"\n\"1254745\";\"Teni\";\"main\"\n\"1254745\";\"Theni\";\"other\"\n\"1254745\";\"Tkheni\";\"other\"\n\"1254745\";\"Тхени\";\"other\"\n\"1254751\";\"Tendūkheda\";\"main\"\n\"1254751\";\"Tendukheda\";\"ascii\"\n\"1254751\";\"Tendukhera\";\"other\"\n\"1254751\";\"Tendukhera Sailwara\";\"other\"\n\"1254780\";\"Tellicherry\";\"main\"\n\"1254780\";\"Talasseri\";\"other\"\n\"1254780\";\"Tellicherri\";\"other\"\n\"1254780\";\"Tellichery\";\"other\"\n\"1254787\";\"Telhāra\";\"main\"\n\"1254787\";\"Telhara\";\"ascii\"\n\"1254794\";\"Tekkali\";\"main\"\n\"1254795\";\"Tekkalakote\";\"main\"\n\"1254795\";\"Takkalakote\";\"other\"\n\"1254795\";\"Tekkalakota\";\"other\"\n\"1254797\";\"Tekāri\";\"main\"\n\"1254797\";\"Tekari\";\"ascii\"\n\"1254798\";\"Tekanpur\";\"main\"\n\"1254798\";\"Takenpur\";\"other\"\n\"1254808\";\"Tehri\";\"main\"\n\"1254808\";\"Tehri-Garhwal\";\"other\"\n\"1254808\";\"Tehri-Garhwāl\";\"other\"\n\"1254808\";\"Tekhri\";\"other\"\n\"1254808\";\"Техри\";\"other\"\n\"1254813\";\"Teghra\";\"main\"\n\"1254832\";\"Tawang\";\"main\"\n\"1254832\";\"Mon Tawang\";\"other\"\n\"1254832\";\"Mön Tawang\";\"other\"\n\"1254832\";\"T'a-wan\";\"other\"\n\"1254832\";\"Tang Shyo\";\"other\"\n\"1254832\";\"Tawang Shyo\";\"other\"\n\"1254832\";\"Towang\";\"other\"\n\"1254832\";\"T’a-wan\";\"other\"\n\"1254842\";\"Tāttayyangārpettai\";\"main\"\n\"1254842\";\"Tattayyangarpettai\";\"ascii\"\n\"1254858\";\"Tāsgaon\";\"main\"\n\"1254858\";\"Tasgaon\";\"ascii\"\n\"1254868\";\"Tarn Tāran\";\"main\"\n\"1254868\";\"Tarn Taran\";\"ascii\"\n\"1254880\";\"Tarikere\";\"main\"\n\"1254900\";\"Tārāpur\";\"main\"\n\"1254900\";\"Tarapur\";\"ascii\"\n\"1254900\";\"Tarapore\";\"other\"\n\"1254900\";\"Tarapur town\";\"other\"\n\"1254900\";\"Tārāpur town\";\"other\"\n\"1254904\";\"Tarangambādi\";\"main\"\n\"1254904\";\"Tarangambadi\";\"ascii\"\n\"1254904\";\"Fort Dansborg\";\"other\"\n\"1254904\";\"Trankebar\";\"other\"\n\"1254904\";\"Tranquebar\";\"other\"\n\"1254908\";\"Tārānagar\";\"main\"\n\"1254908\";\"Taranagar\";\"ascii\"\n\"1254908\";\"Reni\";\"other\"\n\"1254909\";\"Tarāna\";\"main\"\n\"1254909\";\"Tarana\";\"ascii\"\n\"1254909\";\"Тарана\";\"other\"\n\"1254910\";\"Tāramangalam\";\"main\"\n\"1254910\";\"Taramangalam\";\"ascii\"\n\"1254912\";\"Tarakeswar\";\"main\"\n\"1254925\";\"Tarabha\";\"main\"\n\"1254925\";\"Tarbha\";\"other\"\n\"1254925\";\"Torba\";\"other\"\n\"1254948\";\"Tāoru\";\"main\"\n\"1254948\";\"Taoru\";\"ascii\"\n\"1254953\";\"Tanuku\";\"main\"\n\"1254972\";\"Tankāra\";\"main\"\n\"1254972\";\"Tankara\";\"ascii\"\n\"1255004\";\"Tāndūr\";\"main\"\n\"1255004\";\"Tandur\";\"ascii\"\n\"1255023\";\"Tānda\";\"main\"\n\"1255023\";\"Tanda\";\"ascii\"\n\"1255024\";\"Tāndā\";\"main\"\n\"1255024\";\"Tanda\";\"ascii\"\n\"1255027\";\"Tanakpur\";\"main\"\n\"1255046\";\"Tamlūk\";\"main\"\n\"1255046\";\"Tamluk\";\"ascii\"\n\"1255076\";\"Talwāra\";\"main\"\n\"1255076\";\"Talwara\";\"ascii\"\n\"1255082\";\"Talwandi Bhāi\";\"main\"\n\"1255082\";\"Talwandi Bhai\";\"ascii\"\n\"1255104\";\"Taloda\";\"main\"\n\"1255121\";\"Taliparamba\";\"main\"\n\"1255121\";\"Talipparamba\";\"other\"\n\"1255121\";\"Tullipurmbu\";\"other\"\n\"1255122\";\"Tālīkota\";\"main\"\n\"1255122\";\"Talikota\";\"ascii\"\n\"1255122\";\"Talikoti\";\"other\"\n\"1255127\";\"Tālgrām\";\"main\"\n\"1255127\";\"Talgram\";\"ascii\"\n\"1255130\";\"Talen\";\"main\"\n\"1255131\";\"Taleigao\";\"main\"\n\"1255134\";\"Talegaon Dābhāde\";\"main\"\n\"1255134\";\"Talegaon Dabhade\";\"ascii\"\n\"1255134\";\"Dabhade\";\"other\"\n\"1255134\";\"Talegaon-Dabhada\";\"other\"\n\"1255143\";\"Tālcher\";\"main\"\n\"1255143\";\"Talcher\";\"ascii\"\n\"1255143\";\"Talchar\";\"other\"\n\"1255146\";\"Tālbahat\";\"main\"\n\"1255146\";\"Talbahat\";\"ascii\"\n\"1255175\";\"Talāja\";\"main\"\n\"1255175\";\"Talaja\";\"ascii\"\n\"1255187\";\"Tāl\";\"main\"\n\"1255187\";\"Tal\";\"ascii\"\n\"1255211\";\"Tāki\";\"main\"\n\"1255211\";\"Taki\";\"ascii\"\n\"1255211\";\"Takoj\";\"other\"\n\"1255211\";\"Такой\";\"other\"\n\"1255212\";\"Takhatpur\";\"main\"\n\"1255213\";\"Takhatgarh\";\"main\"\n\"1255224\";\"Tājpur\";\"main\"\n\"1255224\";\"Tajpur\";\"ascii\"\n\"1255254\";\"Tādpatri\";\"main\"\n\"1255254\";\"Tadpatri\";\"ascii\"\n\"1255264\";\"Tādepallegūdem\";\"main\"\n\"1255264\";\"Tadepallegudem\";\"ascii\"\n\"1255264\";\"Tadepalligudem\";\"other\"\n\"1255264\";\"Tādepalligūdem\";\"other\"\n\"1255265\";\"Tādepalle\";\"main\"\n\"1255265\";\"Tadepalle\";\"ascii\"\n\"1255283\";\"Swamimalai\";\"main\"\n\"1255283\";\"Cuvaimalai\";\"other\"\n\"1255301\";\"Susner\";\"main\"\n\"1255344\";\"Suriāpet\";\"main\"\n\"1255344\";\"Suriapet\";\"ascii\"\n\"1255344\";\"Suryapet\";\"other\"\n\"1255346\";\"Suriānwān\";\"main\"\n\"1255346\";\"Surianwan\";\"ascii\"\n\"1255348\";\"Surgāna\";\"main\"\n\"1255348\";\"Surgana\";\"ascii\"\n\"1255349\";\"Surendranagar\";\"main\"\n\"1255349\";\"Civil Station\";\"other\"\n\"1255349\";\"Wadhwan\";\"other\"\n\"1255349\";\"Wadhwan Camp\";\"other\"\n\"1255349\";\"Wadhwan City\";\"other\"\n\"1255349\";\"Wadhwan Civil Station\";\"other\"\n\"1255349\";\"Wadhwān\";\"other\"\n\"1255349\";\"Wadhwān Civil Station\";\"other\"\n\"1255361\";\"Sūratgarh\";\"main\"\n\"1255361\";\"Suratgarh\";\"ascii\"\n\"1255361\";\"Suratgarkh\";\"other\"\n\"1255361\";\"Суратгарх\";\"other\"\n\"1255364\";\"Sūrat\";\"main\"\n\"1255364\";\"Surat\";\"ascii\"\n\"1255364\";\"Suratas\";\"other\"\n\"1255364\";\"Surate\";\"other\"\n\"1255364\";\"su la te\";\"other\"\n\"1255364\";\"surata\";\"other\"\n\"1255364\";\"surato\";\"other\"\n\"1255364\";\"Сурат\";\"other\"\n\"1255364\";\"सुरत\";\"other\"\n\"1255364\";\"সুরাত\";\"other\"\n\"1255364\";\"સુરત\";\"other\"\n\"1255364\";\"スーラト\";\"other\"\n\"1255364\";\"苏拉特\";\"other\"\n\"1255372\";\"Sūrandai\";\"main\"\n\"1255372\";\"Surandai\";\"ascii\"\n\"1255383\";\"Sūrajgarh\";\"main\"\n\"1255383\";\"Surajgarh\";\"ascii\"\n\"1255396\";\"Supaul\";\"main\"\n\"1255405\";\"Suntikoppa\";\"main\"\n\"1255425\";\"Sunel\";\"main\"\n\"1255434\";\"Sundarnagar\";\"main\"\n\"1255437\";\"Sundargarh\";\"main\"\n\"1255437\";\"Sundergarh\";\"other\"\n\"1255449\";\"Sunām\";\"main\"\n\"1255449\";\"Sunam\";\"ascii\"\n\"1255478\";\"Sumbal\";\"main\"\n\"1255482\";\"Sulya\";\"main\"\n\"1255483\";\"Sūlūru\";\"main\"\n\"1255483\";\"Suluru\";\"ascii\"\n\"1255483\";\"Sulurpet\";\"other\"\n\"1255483\";\"Sulurpeta\";\"other\"\n\"1255483\";\"Sūlūrpet\";\"other\"\n\"1255484\";\"Sūlūr\";\"main\"\n\"1255484\";\"Sulur\";\"ascii\"\n\"1255488\";\"Sultānpur\";\"main\"\n\"1255488\";\"Sultanpur\";\"ascii\"\n\"1255489\";\"Sultānpur\";\"main\"\n\"1255489\";\"Sultanpur\";\"ascii\"\n\"1255489\";\"Adampur\";\"other\"\n\"1255491\";\"Sultānpur\";\"main\"\n\"1255491\";\"Sultanpur\";\"ascii\"\n\"1255493\";\"Sultānpur\";\"main\"\n\"1255493\";\"Sultanpur\";\"ascii\"\n\"1255551\";\"Suket\";\"main\"\n\"1255551\";\"Suke\";\"other\"\n\"1255551\";\"Suket-Kotah\";\"other\"\n\"1255584\";\"Suchindram\";\"main\"\n\"1255597\";\"Suār\";\"main\"\n\"1255597\";\"Suar\";\"ascii\"\n\"1255597\";\"Суар\";\"other\"\n\"1255616\";\"Srīvilliputtūr\";\"main\"\n\"1255616\";\"Srivilliputtur\";\"ascii\"\n\"1255619\";\"Srīvardhan\";\"main\"\n\"1255619\";\"Srivardhan\";\"ascii\"\n\"1255619\";\"Shriwardham\";\"other\"\n\"1255620\";\"Srīvaikuntam\";\"main\"\n\"1255620\";\"Srivaikuntam\";\"ascii\"\n\"1255621\";\"Srīsailam\";\"main\"\n\"1255621\";\"Srisailam\";\"ascii\"\n\"1255625\";\"Srīrāmnagar\";\"main\"\n\"1255625\";\"Sriramnagar\";\"ascii\"\n\"1255625\";\"Sri Rama Nagar\";\"other\"\n\"1255630\";\"Srīperumbūdūr\";\"main\"\n\"1255630\";\"Sriperumbudur\";\"ascii\"\n\"1255630\";\"Sriperumbubur\";\"other\"\n\"1255631\";\"Srīnivāspur\";\"main\"\n\"1255631\";\"Srinivaspur\";\"ascii\"\n\"1255633\";\"Sringeri\";\"main\"\n\"1255634\";\"Srīnagar\";\"main\"\n\"1255634\";\"Srinagar\";\"ascii\"\n\"1255634\";\"Shrinagar\";\"other\"\n\"1255634\";\"Srinigar\";\"other\"\n\"1255634\";\"Suryanagar\";\"other\"\n\"1255634\";\"si li na jia\";\"other\"\n\"1255634\";\"srinagara\";\"other\"\n\"1255634\";\"sryngar\";\"other\"\n\"1255634\";\"surinagaru\";\"other\"\n\"1255634\";\"Шринагар\";\"other\"\n\"1255634\";\"סרינגאר\";\"other\"\n\"1255634\";\"سرینگار\";\"other\"\n\"1255634\";\"श्रीनगर\";\"other\"\n\"1255634\";\"শ্রীনগর\";\"other\"\n\"1255634\";\"スリナガル\";\"other\"\n\"1255634\";\"斯利那加\";\"other\"\n\"1255635\";\"Srīnagar\";\"main\"\n\"1255635\";\"Srinagar\";\"ascii\"\n\"1255635\";\"Shrinagar\";\"other\"\n\"1255635\";\"Srinagar Garhwal\";\"other\"\n\"1255635\";\"Шринагар\";\"other\"\n\"1255640\";\"Srīmushnam\";\"main\"\n\"1255640\";\"Srimushnam\";\"ascii\"\n\"1255640\";\"Srimushnum\";\"other\"\n\"1255643\";\"Sri Mādhopur\";\"main\"\n\"1255643\";\"Sri Madhopur\";\"ascii\"\n\"1255646\";\"Sri Karanpur\";\"main\"\n\"1255646\";\"Karanpur\";\"other\"\n\"1255646\";\"Karanpura\";\"other\"\n\"1255647\";\"Srīkākulam\";\"main\"\n\"1255647\";\"Srikakulam\";\"ascii\"\n\"1255647\";\"Chicacole\";\"other\"\n\"1255654\";\"Sri Dungargarh\";\"main\"\n\"1255654\";\"Shri Dungargarh\";\"other\"\n\"1255667\";\"Soygaon\";\"main\"\n\"1255704\";\"Soron\";\"main\"\n\"1255704\";\"Сорон\";\"other\"\n\"1255705\";\"Soro\";\"main\"\n\"1255708\";\"Sorbhog\";\"main\"\n\"1255712\";\"Sorada\";\"main\"\n\"1255712\";\"Surada\";\"other\"\n\"1255713\";\"Sorab\";\"main\"\n\"1255714\";\"Sopur\";\"main\"\n\"1255714\";\"Sopor\";\"other\"\n\"1255714\";\"Sopore\";\"other\"\n\"1255744\";\"Sonīpat\";\"main\"\n\"1255744\";\"Sonipat\";\"ascii\"\n\"1255744\";\"Sonepat\";\"other\"\n\"1255744\";\"Sonepat Punjab\";\"other\"\n\"1255762\";\"Songadh\";\"main\"\n\"1255762\";\"Songarh\";\"other\"\n\"1255763\";\"Sonepur\";\"main\"\n\"1255763\";\"Sonapur\";\"other\"\n\"1255763\";\"Sonpur\";\"other\"\n\"1255766\";\"Sonegaon\";\"main\"\n\"1255788\";\"Sonāri\";\"main\"\n\"1255788\";\"Sonari\";\"ascii\"\n\"1255791\";\"Sonāmura\";\"main\"\n\"1255791\";\"Sonamura\";\"ascii\"\n\"1255792\";\"Sonāmukhi\";\"main\"\n\"1255792\";\"Sonamukhi\";\"ascii\"\n\"1255811\";\"Somvārpet\";\"main\"\n\"1255811\";\"Somvarpet\";\"ascii\"\n\"1255811\";\"Somwarpett\";\"other\"\n\"1255816\";\"Sompeta\";\"main\"\n\"1255823\";\"Someshwar\";\"main\"\n\"1255823\";\"Somaishwar\";\"other\"\n\"1255844\";\"Solim\";\"main\"\n\"1255844\";\"Siolim\";\"other\"\n\"1255850\";\"Solan\";\"main\"\n\"1255850\";\"Solana\";\"other\"\n\"1255850\";\"Solon\";\"other\"\n\"1255850\";\"Солана\";\"other\"\n\"1255858\";\"Sojītra\";\"main\"\n\"1255858\";\"Sojitra\";\"ascii\"\n\"1255860\";\"Sojat\";\"main\"\n\"1255870\";\"Sohna\";\"main\"\n\"1255884\";\"Sohāgpur\";\"main\"\n\"1255884\";\"Sohagpur\";\"ascii\"\n\"1255887\";\"Sohāgī\";\"main\"\n\"1255887\";\"Sohagi\";\"ascii\"\n\"1255893\";\"Sodpur\";\"main\"\n\"1255893\";\"Sudpur\";\"other\"\n\"1255910\";\"Soalkuchi\";\"main\"\n\"1255910\";\"Sualkuchi\";\"other\"\n\"1255910\";\"Suwalakuchi\";\"other\"\n\"1255910\";\"Suwālakuchi\";\"other\"\n\"1255925\";\"Siwāna\";\"main\"\n\"1255925\";\"Siwana\";\"ascii\"\n\"1255927\";\"Siwān\";\"main\"\n\"1255927\";\"Siwan\";\"ascii\"\n\"1255927\";\"Savan\";\"other\"\n\"1255927\";\"Sivan\";\"other\"\n\"1255927\";\"Сиван\";\"other\"\n\"1255947\";\"Sivakāsi\";\"main\"\n\"1255947\";\"Sivakasi\";\"ascii\"\n\"1255950\";\"Sivagiri\";\"main\"\n\"1255951\";\"Sivagiri\";\"main\"\n\"1255953\";\"Sivaganga\";\"main\"\n\"1255955\";\"Siuri\";\"main\"\n\"1255955\";\"Suri\";\"other\"\n\"1255955\";\"Sūri\";\"other\"\n\"1255963\";\"Sitārganj\";\"main\"\n\"1255963\";\"Sitarganj\";\"ascii\"\n\"1255969\";\"Sītāpur\";\"main\"\n\"1255969\";\"Sitapur\";\"ascii\"\n\"1255981\";\"Sītāmau\";\"main\"\n\"1255981\";\"Sitamau\";\"ascii\"\n\"1255983\";\"Sītāmarhi\";\"main\"\n\"1255983\";\"Sitamarhi\";\"ascii\"\n\"1255995\";\"Siswā Bāzār\";\"main\"\n\"1255995\";\"Siswa Bazar\";\"ascii\"\n\"1256003\";\"Sisauli\";\"main\"\n\"1256025\";\"Sirūr\";\"main\"\n\"1256025\";\"Sirur\";\"ascii\"\n\"1256025\";\"Ghodnadi\";\"other\"\n\"1256027\";\"Sirumugai\";\"main\"\n\"1256027\";\"Sirumugal\";\"other\"\n\"1256029\";\"Siruguppa\";\"main\"\n\"1256039\";\"Sirsilla\";\"main\"\n\"1256040\";\"Sirsi\";\"main\"\n\"1256047\";\"Sirsi\";\"main\"\n\"1256050\";\"Sirsāganj\";\"main\"\n\"1256050\";\"Sirsaganj\";\"ascii\"\n\"1256052\";\"Sirsa\";\"main\"\n\"1256053\";\"Sirsa\";\"main\"\n\"1256063\";\"Sirpur\";\"main\"\n\"1256063\";\"Sirpur-Tandura\";\"other\"\n\"1256064\";\"Sironj\";\"main\"\n\"1256067\";\"Sirohi\";\"main\"\n\"1256072\";\"Sirmaur\";\"main\"\n\"1256075\";\"Sīrkāzhi\";\"main\"\n\"1256075\";\"Sirkazhi\";\"ascii\"\n\"1256075\";\"Cikal\";\"other\"\n\"1256075\";\"Cīkāl\";\"other\"\n\"1256075\";\"Shiyali\";\"other\"\n\"1256075\";\"Shīyali\";\"other\"\n\"1256075\";\"Sirkali\";\"other\"\n\"1256087\";\"Sirhind\";\"main\"\n\"1256096\";\"Sirāthū\";\"main\"\n\"1256096\";\"Sirathu\";\"ascii\"\n\"1256104\";\"Sīra\";\"main\"\n\"1256104\";\"Sira\";\"ascii\"\n\"1256117\";\"Sinor\";\"main\"\n\"1256119\";\"Sinnar\";\"main\"\n\"1256119\";\"Синнар\";\"other\"\n\"1256122\";\"Sini\";\"main\"\n\"1256124\";\"Singur\";\"main\"\n\"1256126\";\"Singtām\";\"main\"\n\"1256126\";\"Singtam\";\"ascii\"\n\"1256126\";\"Singtam Bazar\";\"other\"\n\"1256126\";\"Singtom\";\"other\"\n\"1256146\";\"Singoli\";\"main\"\n\"1256176\";\"Singarāyakonda\";\"main\"\n\"1256176\";\"Singarayakonda\";\"ascii\"\n\"1256176\";\"Singaraya Konda Pagoda\";\"other\"\n\"1256181\";\"Singapperumālkovil\";\"main\"\n\"1256181\";\"Singapperumalkovil\";\"ascii\"\n\"1256181\";\"Singaperumalkoil\";\"other\"\n\"1256181\";\"Singaperumalkovil\";\"other\"\n\"1256181\";\"Singaperumālkovil\";\"other\"\n\"1256184\";\"Singānallūr\";\"main\"\n\"1256184\";\"Singanallur\";\"ascii\"\n\"1256206\";\"Sindi\";\"main\"\n\"1256207\";\"Sindhnūr\";\"main\"\n\"1256207\";\"Sindhnur\";\"ascii\"\n\"1256214\";\"Sindgi\";\"main\"\n\"1256237\";\"Shimla\";\"main\"\n\"1256237\";\"Simla\";\"other\"\n\"1256237\";\"cimla\";\"other\"\n\"1256237\";\"shimura\";\"other\"\n\"1256237\";\"simala\";\"other\"\n\"1256237\";\"symlh\";\"other\"\n\"1256237\";\"xi mu la\";\"other\"\n\"1256237\";\"Шимла\";\"other\"\n\"1256237\";\"שימלה\";\"other\"\n\"1256237\";\"शिमला\";\"other\"\n\"1256237\";\"সিমলা\";\"other\"\n\"1256237\";\"சிம்லா\";\"other\"\n\"1256237\";\"シムラ\";\"other\"\n\"1256237\";\"シムラー\";\"other\"\n\"1256237\";\"西姆拉\";\"other\"\n\"1256245\";\"Simga\";\"main\"\n\"1256246\";\"Simdega\";\"main\"\n\"1256251\";\"Simaria\";\"main\"\n\"1256251\";\"Semaria\";\"other\"\n\"1256259\";\"Silvassa\";\"main\"\n\"1256259\";\"Selvasa\";\"other\"\n\"1256259\";\"Selvāsa\";\"other\"\n\"1256269\";\"Sillod\";\"main\"\n\"1256287\";\"Silchar\";\"main\"\n\"1256287\";\"Силчар\";\"other\"\n\"1256295\";\"Silao\";\"main\"\n\"1256295\";\"Силао\";\"other\"\n\"1256320\";\"Sīkar\";\"main\"\n\"1256320\";\"Sikar\";\"ascii\"\n\"1256322\";\"Sikandra Rao\";\"main\"\n\"1256324\";\"Sikandra\";\"main\"\n\"1256328\";\"Sikandarpur\";\"main\"\n\"1256329\";\"Sikandarābād\";\"main\"\n\"1256329\";\"Sikandarabad\";\"ascii\"\n\"1256329\";\"Sikandrabad\";\"other\"\n\"1256333\";\"Sikka\";\"main\"\n\"1256333\";\"Sika\";\"other\"\n\"1256333\";\"Siki\";\"other\"\n\"1256335\";\"Sijua\";\"main\"\n\"1256340\";\"Sihorā\";\"main\"\n\"1256340\";\"Sihora\";\"ascii\"\n\"1256343\";\"Sihor\";\"main\"\n\"1256343\";\"Shihor\";\"other\"\n\"1256343\";\"Sihara\";\"other\"\n\"1256363\";\"Sidlaghatta\";\"main\"\n\"1256367\";\"Sidhpura\";\"main\"\n\"1256369\";\"Sidhi\";\"main\"\n\"1256369\";\"Sidi\";\"other\"\n\"1256369\";\"Sidkhi\";\"other\"\n\"1256369\";\"Сидхи\";\"other\"\n\"1256372\";\"Sidhaulī\";\"main\"\n\"1256372\";\"Sidhauli\";\"ascii\"\n\"1256377\";\"Siddipet\";\"main\"\n\"1256382\";\"Siddhapur\";\"main\"\n\"1256382\";\"Sidhpur\";\"other\"\n\"1256385\";\"Siddāpur\";\"main\"\n\"1256385\";\"Siddapur\";\"ascii\"\n\"1256388\";\"Sibsāgar\";\"main\"\n\"1256388\";\"Sibsagar\";\"ascii\"\n\"1256388\";\"Sibsagor Naga Bhumi\";\"other\"\n\"1256388\";\"Сибсагар\";\"other\"\n\"1256414\";\"Shupīyan\";\"main\"\n\"1256414\";\"Shupiyan\";\"ascii\"\n\"1256414\";\"Shupiyon\";\"other\"\n\"1256418\";\"Shujālpur\";\"main\"\n\"1256418\";\"Shujalpur\";\"ascii\"\n\"1256421\";\"Shrīrangapattana\";\"main\"\n\"1256421\";\"Shrirangapattana\";\"ascii\"\n\"1256422\";\"Shrīrāmpur\";\"main\"\n\"1256422\";\"Shrirampur\";\"ascii\"\n\"1256422\";\"Serampore\";\"other\"\n\"1256422\";\"Serampur\";\"other\"\n\"1256426\";\"Shrīgonda\";\"main\"\n\"1256426\";\"Shrigonda\";\"ascii\"\n\"1256428\";\"Shravanabelagola\";\"main\"\n\"1256428\";\"Shravan Belgola\";\"other\"\n\"1256428\";\"Sravana Belgola\";\"other\"\n\"1256428\";\"Srāvana Belgola\";\"other\"\n\"1256431\";\"Shorāpur\";\"main\"\n\"1256431\";\"Shorapur\";\"ascii\"\n\"1256431\";\"Shoratur\";\"other\"\n\"1256431\";\"Surapur\";\"other\"\n\"1256431\";\"Suratur\";\"other\"\n\"1256431\";\"Sūrāpur\";\"other\"\n\"1256432\";\"Shoranūr\";\"main\"\n\"1256432\";\"Shoranur\";\"ascii\"\n\"1256435\";\"Sholinghur\";\"main\"\n\"1256436\";\"Solāpur\";\"main\"\n\"1256436\";\"Solapur\";\"ascii\"\n\"1256436\";\"Sholapur\";\"other\"\n\"1256436\";\"Sholāpur\";\"other\"\n\"1256436\";\"shorapuru\";\"other\"\n\"1256436\";\"solapura\";\"other\"\n\"1256436\";\"sollapura\";\"other\"\n\"1256436\";\"Солапур\";\"other\"\n\"1256436\";\"सोलापूर\";\"other\"\n\"1256436\";\"ಸೊಲ್ಲಾಪುರ\";\"other\"\n\"1256436\";\"ショラープル\";\"other\"\n\"1256450\";\"Shivrājpur\";\"main\"\n\"1256450\";\"Shivrajpur\";\"ascii\"\n\"1256451\";\"Shivpurī\";\"main\"\n\"1256451\";\"Shivpuri\";\"ascii\"\n\"1256468\";\"Shīshgarh\";\"main\"\n\"1256468\";\"Shishgarh\";\"ascii\"\n\"1256469\";\"Shirwal\";\"main\"\n\"1256469\";\"Shirval\";\"other\"\n\"1256475\";\"Shirpur\";\"main\"\n\"1256475\";\"Shirpure\";\"other\"\n\"1256475\";\"Ширпуре\";\"other\"\n\"1256483\";\"Shirhatti\";\"main\"\n\"1256486\";\"Shirgaon\";\"main\"\n\"1256486\";\"Siri\";\"other\"\n\"1256489\";\"Shirdi\";\"main\"\n\"1256489\";\"Ширди\";\"other\"\n\"1256515\";\"Shimoga\";\"main\"\n\"1256515\";\"Shimogga\";\"other\"\n\"1256523\";\"Shillong\";\"main\"\n\"1256523\";\"shiron\";\"other\"\n\"1256523\";\"shylang\";\"other\"\n\"1256523\";\"silam\";\"other\"\n\"1256523\";\"silanga\";\"other\"\n\"1256523\";\"sillan\";\"other\"\n\"1256523\";\"Шиллонг\";\"other\"\n\"1256523\";\"شیلانگ\";\"other\"\n\"1256523\";\"शिलांग\";\"other\"\n\"1256523\";\"শিলং\";\"other\"\n\"1256523\";\"ஷில்லாங்\";\"other\"\n\"1256523\";\"シロン\";\"other\"\n\"1256525\";\"Shiliguri\";\"main\"\n\"1256525\";\"Silguri\";\"other\"\n\"1256525\";\"Siligun\";\"other\"\n\"1256525\";\"Siliguri\";\"other\"\n\"1256525\";\"Silīgurí\";\"other\"\n\"1256525\";\"siliguri\";\"other\"\n\"1256525\";\"xi li gu li\";\"other\"\n\"1256525\";\"Силигури\";\"other\"\n\"1256525\";\"सिलीगुड़ी\";\"other\"\n\"1256525\";\"西里古里\";\"other\"\n\"1256529\";\"Shikohābād\";\"main\"\n\"1256529\";\"Shikohabad\";\"ascii\"\n\"1256532\";\"Shikārpur\";\"main\"\n\"1256532\";\"Shikarpur\";\"ascii\"\n\"1256537\";\"Shikārpur\";\"main\"\n\"1256537\";\"Shikarpur\";\"ascii\"\n\"1256539\";\"Shiggaon\";\"main\"\n\"1256539\";\"Shigaon\";\"other\"\n\"1256558\";\"Shertallai\";\"main\"\n\"1256558\";\"Shertalla\";\"other\"\n\"1256558\";\"Shertally\";\"other\"\n\"1256569\";\"Sherkot\";\"main\"\n\"1256569\";\"Bijnor\";\"other\"\n\"1256572\";\"Sherghāti\";\"main\"\n\"1256572\";\"Sherghati\";\"ascii\"\n\"1256574\";\"Shergarh\";\"main\"\n\"1256593\";\"Sheopur\";\"main\"\n\"1256593\";\"Sheopur Kalan\";\"other\"\n\"1256597\";\"Sheohar\";\"main\"\n\"1256598\";\"Sheoganj\";\"main\"\n\"1256620\";\"Shegaon\";\"main\"\n\"1256639\";\"Shāntipur\";\"main\"\n\"1256639\";\"Shantipur\";\"ascii\"\n\"1256639\";\"Santipur\";\"other\"\n\"1256639\";\"Sāntipur\";\"other\"\n\"1256650\";\"Shankargarh\";\"main\"\n\"1256659\";\"Shamsābād\";\"main\"\n\"1256659\";\"Shamsabad\";\"ascii\"\n\"1256660\";\"Shamsābād\";\"main\"\n\"1256660\";\"Shamsabad\";\"ascii\"\n\"1256671\";\"Shāmli\";\"main\"\n\"1256671\";\"Shamli\";\"ascii\"\n\"1256673\";\"Shāmgarh\";\"main\"\n\"1256673\";\"Shamgarh\";\"ascii\"\n\"1256676\";\"Shām Churāsi\";\"main\"\n\"1256676\";\"Sham Churasi\";\"ascii\"\n\"1256693\";\"Shājāpur\";\"main\"\n\"1256693\";\"Shajapur\";\"ascii\"\n\"1256698\";\"Shaikhpura\";\"main\"\n\"1256705\";\"Shāhpura\";\"main\"\n\"1256705\";\"Shahpura\";\"ascii\"\n\"1256706\";\"Shāhpura\";\"main\"\n\"1256706\";\"Shahpura\";\"ascii\"\n\"1256708\";\"Shāhpura\";\"main\"\n\"1256708\";\"Shahpura\";\"ascii\"\n\"1256713\";\"Shāhpur\";\"main\"\n\"1256713\";\"Shahpur\";\"ascii\"\n\"1256713\";\"Shakhpura\";\"other\"\n\"1256713\";\"Шахпура\";\"other\"\n\"1256715\";\"Shāhpur\";\"main\"\n\"1256715\";\"Shahpur\";\"ascii\"\n\"1256716\";\"Shāhpur\";\"main\"\n\"1256716\";\"Shahpur\";\"ascii\"\n\"1256717\";\"Shāhpur\";\"main\"\n\"1256717\";\"Shahpur\";\"ascii\"\n\"1256718\";\"Shāhpur\";\"main\"\n\"1256718\";\"Shahpur\";\"ascii\"\n\"1256719\";\"Shāhpur\";\"main\"\n\"1256719\";\"Shahpur\";\"ascii\"\n\"1256720\";\"Shāhpur\";\"main\"\n\"1256720\";\"Shahpur\";\"ascii\"\n\"1256722\";\"Shāhpur\";\"main\"\n\"1256722\";\"Shahpur\";\"ascii\"\n\"1256722\";\"Shakhpura\";\"other\"\n\"1256722\";\"Шахпура\";\"other\"\n\"1256725\";\"Shāhkot\";\"main\"\n\"1256725\";\"Shahkot\";\"ascii\"\n\"1256725\";\"Jullundur\";\"other\"\n\"1256728\";\"Shāhjahānpur\";\"main\"\n\"1256728\";\"Shahjahanpur\";\"ascii\"\n\"1256731\";\"Shāhi\";\"main\"\n\"1256731\";\"Shahi\";\"ascii\"\n\"1256734\";\"Shāhgarh\";\"main\"\n\"1256734\";\"Shahgarh\";\"ascii\"\n\"1256735\";\"Shāhganj\";\"main\"\n\"1256735\";\"Shahganj\";\"ascii\"\n\"1256735\";\"Jaunpur\";\"other\"\n\"1256739\";\"Shahdol\";\"main\"\n\"1256739\";\"Sahdol\";\"other\"\n\"1256747\";\"Shāhāpur\";\"main\"\n\"1256747\";\"Shahapur\";\"ascii\"\n\"1256750\";\"Shāhāda\";\"main\"\n\"1256750\";\"Shahada\";\"ascii\"\n\"1256752\";\"Shāhābād\";\"main\"\n\"1256752\";\"Shahabad\";\"ascii\"\n\"1256753\";\"Shāhābād\";\"main\"\n\"1256753\";\"Shahabad\";\"ascii\"\n\"1256753\";\"Sahabad\";\"other\"\n\"1256753\";\"Sāhābād\";\"other\"\n\"1256755\";\"Shāhābād\";\"main\"\n\"1256755\";\"Shahabad\";\"ascii\"\n\"1256755\";\"Hardoi\";\"other\"\n\"1256759\";\"Shāhābād\";\"main\"\n\"1256759\";\"Shahabad\";\"ascii\"\n\"1256759\";\"Shahabad Deccan\";\"other\"\n\"1256796\";\"Serula\";\"main\"\n\"1256812\";\"Serchhīp\";\"main\"\n\"1256812\";\"Serchhip\";\"ascii\"\n\"1256814\";\"Seram\";\"main\"\n\"1256814\";\"Sedam\";\"other\"\n\"1256814\";\"Серам\";\"other\"\n\"1256820\";\"Seorīnārāyan\";\"main\"\n\"1256820\";\"Seorinarayan\";\"ascii\"\n\"1256820\";\"Seorinaryan\";\"other\"\n\"1256823\";\"Seonī Mālwā\";\"main\"\n\"1256823\";\"Seoni Malwa\";\"ascii\"\n\"1256823\";\"Seoni Marwa\";\"other\"\n\"1256825\";\"Seoni\";\"main\"\n\"1256826\";\"Seonī\";\"main\"\n\"1256826\";\"Seoni\";\"ascii\"\n\"1256828\";\"Seondha\";\"main\"\n\"1256828\";\"Seora\";\"other\"\n\"1256832\";\"Seohārā\";\"main\"\n\"1256832\";\"Seohara\";\"ascii\"\n\"1256854\";\"Sendhwa\";\"main\"\n\"1256854\";\"Sendhawa\";\"other\"\n\"1256913\";\"Sehore\";\"main\"\n\"1256929\";\"Sāyla\";\"main\"\n\"1256929\";\"Sayla\";\"ascii\"\n\"1256934\";\"Sāyalkudi\";\"main\"\n\"1256934\";\"Sayalkudi\";\"ascii\"\n\"1256934\";\"Sayalgudi\";\"other\"\n\"1256949\";\"Sawāi Mādhopur\";\"main\"\n\"1256949\";\"Sawai Madhopur\";\"ascii\"\n\"1256959\";\"Sāvda\";\"main\"\n\"1256959\";\"Savda\";\"ascii\"\n\"1256967\";\"Savanūr\";\"main\"\n\"1256967\";\"Savanur\";\"ascii\"\n\"1256968\";\"Sāvantvādi\";\"main\"\n\"1256968\";\"Savantvadi\";\"ascii\"\n\"1256974\";\"Sausar\";\"main\"\n\"1256976\";\"Saurikh\";\"main\"\n\"1256976\";\"Saurnikh\";\"other\"\n\"1256983\";\"Saundatti\";\"main\"\n\"1256983\";\"Saundatti Yellamma\";\"other\"\n\"1256989\";\"Satyamangalam\";\"main\"\n\"1256990\";\"Satwās\";\"main\"\n\"1256990\";\"Satwas\";\"ascii\"\n\"1256995\";\"Sāttūr\";\"main\"\n\"1256995\";\"Sattur\";\"ascii\"\n\"1257001\";\"Sattenapalle\";\"main\"\n\"1257004\";\"Sāttānkulam\";\"main\"\n\"1257004\";\"Sattankulam\";\"ascii\"\n\"1257005\";\"Satrikh\";\"main\"\n\"1257022\";\"Satna\";\"main\"\n\"1257055\";\"Sātāra\";\"main\"\n\"1257055\";\"Satara\";\"ascii\"\n\"1257055\";\"Сатара\";\"other\"\n\"1257060\";\"Satāna\";\"main\"\n\"1257060\";\"Satana\";\"ascii\"\n\"1257066\";\"Sāsvad\";\"main\"\n\"1257066\";\"Sasvad\";\"ascii\"\n\"1257077\";\"Sāsni\";\"main\"\n\"1257077\";\"Sasni\";\"ascii\"\n\"1257093\";\"Sarwār\";\"main\"\n\"1257093\";\"Sarwar\";\"ascii\"\n\"1257093\";\"Sarvar\";\"other\"\n\"1257093\";\"Sarvār\";\"other\"\n\"1257111\";\"Sāruberā\";\"main\"\n\"1257111\";\"Sarubera\";\"ascii\"\n\"1257149\";\"Sarkhej\";\"main\"\n\"1257156\";\"Sarka Ghāt\";\"main\"\n\"1257156\";\"Sarka Ghat\";\"ascii\"\n\"1257167\";\"Sarīla\";\"main\"\n\"1257167\";\"Sarila\";\"ascii\"\n\"1257178\";\"Sargūr\";\"main\"\n\"1257178\";\"Sargur\";\"ascii\"\n\"1257191\";\"Sardulgarh\";\"main\"\n\"1257196\";\"Sardhana\";\"main\"\n\"1257198\";\"Sardārshahr\";\"main\"\n\"1257198\";\"Sardarshahr\";\"ascii\"\n\"1257219\";\"Sarauli\";\"main\"\n\"1257219\";\"Saranli\";\"other\"\n\"1257237\";\"Sārangpur\";\"main\"\n\"1257237\";\"Sarangpur\";\"ascii\"\n\"1257242\";\"Sārangarh\";\"main\"\n\"1257242\";\"Sarangarh\";\"ascii\"\n\"1257259\";\"Saraipāli\";\"main\"\n\"1257259\";\"Saraipali\";\"ascii\"\n\"1257259\";\"Saraipaili\";\"other\"\n\"1257260\";\"Sarāi Mīr\";\"main\"\n\"1257260\";\"Sarai Mir\";\"ascii\"\n\"1257263\";\"Saraikela\";\"main\"\n\"1257263\";\"Seraikella\";\"other\"\n\"1257264\";\"Sarāi Ekdil\";\"main\"\n\"1257264\";\"Sarai Ekdil\";\"ascii\"\n\"1257268\";\"Sarāi Ākil\";\"main\"\n\"1257268\";\"Sarai Akil\";\"ascii\"\n\"1257277\";\"Sarāhan\";\"main\"\n\"1257277\";\"Sarahan\";\"ascii\"\n\"1257298\";\"Sapatgrām\";\"main\"\n\"1257298\";\"Sapatgram\";\"ascii\"\n\"1257307\";\"Saoner\";\"main\"\n\"1257313\";\"Sānwer\";\"main\"\n\"1257313\";\"Sanwer\";\"ascii\"\n\"1257316\";\"Sanvordem\";\"main\"\n\"1257325\";\"Santoshpur\";\"main\"\n\"1257325\";\"Santashpur\";\"other\"\n\"1257326\";\"Santokhgarh\";\"main\"\n\"1257326\";\"Santokgarh\";\"other\"\n\"1257347\";\"Sanquelim\";\"main\"\n\"1257354\";\"Sānkrāil\";\"main\"\n\"1257354\";\"Sankrail\";\"ascii\"\n\"1257354\";\"Shankrail\";\"other\"\n\"1257366\";\"Sankheda\";\"main\"\n\"1257369\";\"Sankeshwar\";\"main\"\n\"1257369\";\"Sankeshvar\";\"other\"\n\"1257390\";\"Sanivārsante\";\"main\"\n\"1257390\";\"Sanivarsante\";\"ascii\"\n\"1257399\";\"Sanguem\";\"main\"\n\"1257402\";\"Sangrūr\";\"main\"\n\"1257402\";\"Sangrur\";\"ascii\"\n\"1257409\";\"Sāngola\";\"main\"\n\"1257409\";\"Sangola\";\"ascii\"\n\"1257410\";\"Sangod\";\"main\"\n\"1257416\";\"Sāngli\";\"main\"\n\"1257416\";\"Sangli\";\"ascii\"\n\"1257416\";\"Sangla\";\"other\"\n\"1257416\";\"Turmeric city\";\"other\"\n\"1257429\";\"Sangaria\";\"main\"\n\"1257431\";\"Sangāreddi\";\"main\"\n\"1257431\";\"Sangareddi\";\"ascii\"\n\"1257431\";\"Sangareddipet\";\"other\"\n\"1257436\";\"Sangamner\";\"main\"\n\"1257436\";\"Sangamnor\";\"other\"\n\"1257456\";\"Sandūr\";\"main\"\n\"1257456\";\"Sandur\";\"ascii\"\n\"1257459\";\"Sandīla\";\"main\"\n\"1257459\";\"Sandila\";\"ascii\"\n\"1257461\";\"Sāndi\";\"main\"\n\"1257461\";\"Sandi\";\"ascii\"\n\"1257476\";\"Sancoale\";\"main\"\n\"1257477\";\"Sānchor\";\"main\"\n\"1257477\";\"Sanchor\";\"ascii\"\n\"1257479\";\"Sānchi\";\"main\"\n\"1257479\";\"Sanchi\";\"ascii\"\n\"1257481\";\"Sānāwad\";\"main\"\n\"1257481\";\"Sanawad\";\"ascii\"\n\"1257481\";\"Sanavad\";\"other\"\n\"1257482\";\"Sanaur\";\"main\"\n\"1257486\";\"Sānand\";\"main\"\n\"1257486\";\"Sanand\";\"ascii\"\n\"1257498\";\"Samthar\";\"main\"\n\"1257503\";\"Samrāla\";\"main\"\n\"1257503\";\"Samrala\";\"ascii\"\n\"1257528\";\"Samdari\";\"main\"\n\"1257539\";\"Sāmbhar\";\"main\"\n\"1257539\";\"Sambhar\";\"ascii\"\n\"1257539\";\"Sambhar Lake\";\"other\"\n\"1257539\";\"Sambkhara\";\"other\"\n\"1257539\";\"Самбхара\";\"other\"\n\"1257540\";\"Sambhal\";\"main\"\n\"1257542\";\"Sambalpur\";\"main\"\n\"1257542\";\"Sambalpore\";\"other\"\n\"1257545\";\"Sāmba\";\"main\"\n\"1257545\";\"Samba\";\"ascii\"\n\"1257551\";\"Samastīpur\";\"main\"\n\"1257551\";\"Samastipur\";\"ascii\"\n\"1257565\";\"Sāmalkot\";\"main\"\n\"1257565\";\"Samalkot\";\"ascii\"\n\"1257566\";\"Samālkha\";\"main\"\n\"1257566\";\"Samalkha\";\"ascii\"\n\"1257587\";\"Sālūr\";\"main\"\n\"1257587\";\"Salur\";\"ascii\"\n\"1257588\";\"Sālūmbar\";\"main\"\n\"1257588\";\"Salumbar\";\"ascii\"\n\"1257599\";\"Salon\";\"main\"\n\"1257611\";\"Saligao\";\"main\"\n\"1257629\";\"Salem\";\"main\"\n\"1257629\";\"Selam\";\"other\"\n\"1257629\";\"selam\";\"other\"\n\"1257629\";\"seramu\";\"other\"\n\"1257629\";\"Салем\";\"other\"\n\"1257629\";\"സേലം\";\"other\"\n\"1257629\";\"セーラム\";\"other\"\n\"1257638\";\"Salāya\";\"main\"\n\"1257638\";\"Salaya\";\"ascii\"\n\"1257673\";\"Sakti\";\"main\"\n\"1257673\";\"Shakti\";\"other\"\n\"1257673\";\"Шакти\";\"other\"\n\"1257698\";\"Sakleshpur\";\"main\"\n\"1257698\";\"Saklaspur\";\"other\"\n\"1257703\";\"Sakīt\";\"main\"\n\"1257703\";\"Sakit\";\"ascii\"\n\"1257737\";\"Sāitlaw\";\"main\"\n\"1257737\";\"Saitlaw\";\"ascii\"\n\"1257737\";\"Saitual\";\"other\"\n\"1257743\";\"Sairang\";\"main\"\n\"1257749\";\"Saint Thomas Mount\";\"main\"\n\"1257749\";\"Madras Saint Thomas Mount\";\"other\"\n\"1257749\";\"Parangimalai\";\"other\"\n\"1257749\";\"Paranginealai\";\"other\"\n\"1257749\";\"Saint Thomas's Mount\";\"other\"\n\"1257749\";\"Saint Thomas’s Mount\";\"other\"\n\"1257751\";\"Sainthia\";\"main\"\n\"1257762\";\"Sailu\";\"main\"\n\"1257762\";\"Selu\";\"other\"\n\"1257765\";\"Sailāna\";\"main\"\n\"1257765\";\"Sailana\";\"ascii\"\n\"1257771\";\"Saiha\";\"main\"\n\"1257775\";\"Saidpur\";\"main\"\n\"1257776\";\"Saidpur\";\"main\"\n\"1257794\";\"Sāhibganj\";\"main\"\n\"1257794\";\"Sahibganj\";\"ascii\"\n\"1257799\";\"Sahāwar\";\"main\"\n\"1257799\";\"Sahawar\";\"ascii\"\n\"1257800\";\"Sahaswān\";\"main\"\n\"1257800\";\"Sahaswan\";\"ascii\"\n\"1257802\";\"Sahaspur\";\"main\"\n\"1257804\";\"Saharsa\";\"main\"\n\"1257806\";\"Sahāranpur\";\"main\"\n\"1257806\";\"Saharanpur\";\"ascii\"\n\"1257830\";\"Sagauli\";\"main\"\n\"1257830\";\"Saganli\";\"other\"\n\"1257830\";\"Saghauli\";\"other\"\n\"1257830\";\"Sagowlee\";\"other\"\n\"1257830\";\"Segowlee\";\"other\"\n\"1257830\";\"Segowlie\";\"other\"\n\"1257830\";\"Sugauli\";\"other\"\n\"1257845\";\"Sāgar\";\"main\"\n\"1257845\";\"Sagar\";\"ascii\"\n\"1257845\";\"Saugor\";\"other\"\n\"1257845\";\"Сагар\";\"other\"\n\"1257851\";\"Sāgar\";\"main\"\n\"1257851\";\"Sagar\";\"ascii\"\n\"1257854\";\"Safīpur\";\"main\"\n\"1257854\";\"Safipur\";\"ascii\"\n\"1257855\";\"Safidon\";\"main\"\n\"1257865\";\"Sādri\";\"main\"\n\"1257865\";\"Sadri\";\"ascii\"\n\"1257887\";\"Sādāt\";\"main\"\n\"1257887\";\"Sadat\";\"ascii\"\n\"1257890\";\"Sadāseopet\";\"main\"\n\"1257890\";\"Sadaseopet\";\"ascii\"\n\"1257890\";\"Sadasivpet\";\"other\"\n\"1257895\";\"Sadalgi\";\"main\"\n\"1257895\";\"Sadalga\";\"other\"\n\"1257896\";\"Sadābād\";\"main\"\n\"1257896\";\"Sadabad\";\"ascii\"\n\"1257901\";\"Sachīn\";\"main\"\n\"1257901\";\"Sachin\";\"ascii\"\n\"1257901\";\"Sachim\";\"other\"\n\"1257901\";\"Sachir\";\"other\"\n\"1257901\";\"Sachīr\";\"other\"\n\"1257908\";\"Sabrūm\";\"main\"\n\"1257908\";\"Sabrum\";\"ascii\"\n\"1257908\";\"Sabroom\";\"other\"\n\"1257919\";\"Sabāthu\";\"main\"\n\"1257919\";\"Sabathu\";\"ascii\"\n\"1257919\";\"Subathu\";\"other\"\n\"1257928\";\"Sabalgarh\";\"main\"\n\"1257936\";\"Rusera\";\"main\"\n\"1257940\";\"Rura\";\"main\"\n\"1257951\";\"Rūpnagar\";\"main\"\n\"1257951\";\"Rupnagar\";\"ascii\"\n\"1257951\";\"Ropar\";\"other\"\n\"1257951\";\"Rupar\";\"other\"\n\"1257951\";\"Rūpar\";\"other\"\n\"1258003\";\"Rudraprayāg\";\"main\"\n\"1258003\";\"Rudraprayag\";\"ascii\"\n\"1258012\";\"Rūdarpur\";\"main\"\n\"1258012\";\"Rudarpur\";\"ascii\"\n\"1258044\";\"Roorkee\";\"main\"\n\"1258061\";\"Ron\";\"main\"\n\"1258061\";\"Rona\";\"other\"\n\"1258061\";\"Рона\";\"other\"\n\"1258076\";\"Rohtak\";\"main\"\n\"1258078\";\"Rohru\";\"main\"\n\"1258098\";\"Roha\";\"main\"\n\"1258099\";\"Roha\";\"main\"\n\"1258099\";\"Roha-Kolaba\";\"other\"\n\"1258109\";\"Robertsonpet\";\"main\"\n\"1258111\";\"Robertsganj\";\"main\"\n\"1258124\";\"Risod\";\"main\"\n\"1258126\";\"Rishra\";\"main\"\n\"1258128\";\"Rishīkesh\";\"main\"\n\"1258128\";\"Rishikesh\";\"ascii\"\n\"1258128\";\"Rikhikesh\";\"other\"\n\"1258128\";\"Ришикеш\";\"other\"\n\"1258140\";\"Rīngas\";\"main\"\n\"1258140\";\"Ringas\";\"ascii\"\n\"1258140\";\"Reengus\";\"other\"\n\"1258140\";\"Ringus\";\"other\"\n\"1258164\";\"Richha\";\"main\"\n\"1258167\";\"Riāsi\";\"main\"\n\"1258167\";\"Riasi\";\"ascii\"\n\"1258178\";\"Rewāri\";\"main\"\n\"1258178\";\"Rewari\";\"ascii\"\n\"1258182\";\"Rewa\";\"main\"\n\"1258182\";\"Reva\";\"other\"\n\"1258182\";\"Rewah\";\"other\"\n\"1258182\";\"Рева\";\"other\"\n\"1258186\";\"Revelganj\";\"main\"\n\"1258190\";\"Revadanda\";\"main\"\n\"1258190\";\"Revdanda\";\"other\"\n\"1258201\";\"Repalle\";\"main\"\n\"1258201\";\"Репалле\";\"other\"\n\"1258203\";\"Reoti\";\"main\"\n\"1258207\";\"Renukūt\";\"main\"\n\"1258207\";\"Renukut\";\"ascii\"\n\"1258207\";\"Renukoot\";\"other\"\n\"1258213\";\"Renigunta\";\"main\"\n\"1258221\";\"Rengāli\";\"main\"\n\"1258221\";\"Rengali\";\"ascii\"\n\"1258229\";\"Remuna\";\"main\"\n\"1258242\";\"Rehti\";\"main\"\n\"1258242\";\"Rheti\";\"other\"\n\"1258247\";\"Rehlī\";\"main\"\n\"1258247\";\"Rehli\";\"ascii\"\n\"1258269\";\"Rāzole\";\"main\"\n\"1258269\";\"Razole\";\"ascii\"\n\"1258270\";\"Rāzām\";\"main\"\n\"1258270\";\"Razam\";\"ascii\"\n\"1258278\";\"Rāybāg\";\"main\"\n\"1258278\";\"Raybag\";\"ascii\"\n\"1258278\";\"Raybagh\";\"other\"\n\"1258290\";\"Rāyadrug\";\"main\"\n\"1258290\";\"Rayadrug\";\"ascii\"\n\"1258291\";\"Rāyachoti\";\"main\"\n\"1258291\";\"Rayachoti\";\"ascii\"\n\"1258292\";\"Rāya\";\"main\"\n\"1258292\";\"Raya\";\"ascii\"\n\"1258292\";\"Raja\";\"other\"\n\"1258292\";\"Рая\";\"other\"\n\"1258293\";\"Rāy\";\"main\"\n\"1258293\";\"Ray\";\"ascii\"\n\"1258294\";\"Raxaul\";\"main\"\n\"1258294\";\"Raksaul\";\"other\"\n\"1258294\";\"Rasaul\";\"other\"\n\"1258294\";\"Раксаул\";\"other\"\n\"1258295\";\"Rāwatsār\";\"main\"\n\"1258295\";\"Rawatsar\";\"ascii\"\n\"1258297\";\"Rāwatbhāta\";\"main\"\n\"1258297\";\"Rawatbhata\";\"ascii\"\n\"1258297\";\"Rawat Bhatta\";\"other\"\n\"1258297\";\"Rawatbhaia\";\"other\"\n\"1258307\";\"Rāver\";\"main\"\n\"1258307\";\"Raver\";\"ascii\"\n\"1258338\";\"Ratnāgiri\";\"main\"\n\"1258338\";\"Ratnagiri\";\"ascii\"\n\"1258338\";\"Rutnagherry\";\"other\"\n\"1258338\";\"Ратнагири\";\"other\"\n\"1258342\";\"Ratlām\";\"main\"\n\"1258342\";\"Ratlam\";\"ascii\"\n\"1258342\";\"Hatlam\";\"other\"\n\"1258347\";\"Ratia\";\"main\"\n\"1258347\";\"Ратиа\";\"other\"\n\"1258352\";\"Rāth\";\"main\"\n\"1258352\";\"Rath\";\"ascii\"\n\"1258352\";\"Rata\";\"other\"\n\"1258352\";\"Рата\";\"other\"\n\"1258362\";\"Ratanpur\";\"main\"\n\"1258366\";\"Ratangarh\";\"main\"\n\"1258367\";\"Ratangarh\";\"main\"\n\"1258375\";\"Rasūlābād\";\"main\"\n\"1258375\";\"Rasulabad\";\"ascii\"\n\"1258380\";\"Rasrā\";\"main\"\n\"1258380\";\"Rasra\";\"ascii\"\n\"1258386\";\"Rāsipuram\";\"main\"\n\"1258386\";\"Rasipuram\";\"ascii\"\n\"1258386\";\"Rasipur\";\"other\"\n\"1258386\";\"Rāsīpur\";\"other\"\n\"1258406\";\"Rāpar\";\"main\"\n\"1258406\";\"Rapar\";\"ascii\"\n\"1258447\";\"Rānīr Bāzār\";\"main\"\n\"1258447\";\"Ranir Bazar\";\"ascii\"\n\"1258449\";\"Rānīpur\";\"main\"\n\"1258449\";\"Ranipur\";\"ascii\"\n\"1258455\";\"Rānīkhet\";\"main\"\n\"1258455\";\"Ranikhet\";\"ascii\"\n\"1258455\";\"Rawikhet\";\"other\"\n\"1258455\";\"Rāwikhet\";\"other\"\n\"1258470\";\"Rānīganj\";\"main\"\n\"1258470\";\"Raniganj\";\"ascii\"\n\"1258470\";\"Ranigandzhe\";\"other\"\n\"1258470\";\"Ранигандже\";\"other\"\n\"1258474\";\"Rānībennur\";\"main\"\n\"1258474\";\"Ranibennur\";\"ascii\"\n\"1258474\";\"Renibennur\";\"other\"\n\"1258477\";\"Rānia\";\"main\"\n\"1258477\";\"Rania\";\"ascii\"\n\"1258477\";\"Ranija\";\"other\"\n\"1258477\";\"Raniya\";\"other\"\n\"1258477\";\"Рания\";\"other\"\n\"1258478\";\"Rāni\";\"main\"\n\"1258478\";\"Rani\";\"ascii\"\n\"1258484\";\"Rangpo\";\"main\"\n\"1258484\";\"Rongphu\";\"other\"\n\"1258484\";\"Rungpo\";\"other\"\n\"1258492\";\"Rangia\";\"main\"\n\"1258492\";\"Ranga Nadi\";\"other\"\n\"1258492\";\"Rangiya\";\"other\"\n\"1258492\";\"Rangā Nadī\";\"other\"\n\"1258501\";\"Rangāpāra\";\"main\"\n\"1258501\";\"Rangapara\";\"ascii\"\n\"1258526\";\"Rānchī\";\"main\"\n\"1258526\";\"Ranchi\";\"ascii\"\n\"1258526\";\"ramci\";\"other\"\n\"1258526\";\"ranchi\";\"other\"\n\"1258526\";\"ranci\";\"other\"\n\"1258526\";\"Ранчи\";\"other\"\n\"1258526\";\"राँची\";\"other\"\n\"1258526\";\"রাঁচী\";\"other\"\n\"1258526\";\"ராஞ்சி\";\"other\"\n\"1258526\";\"ラーンチー\";\"other\"\n\"1258534\";\"Rānāvāv\";\"main\"\n\"1258534\";\"Ranavav\";\"ascii\"\n\"1258534\";\"Ranawao\";\"other\"\n\"1258534\";\"Rānāwāo\";\"other\"\n\"1258537\";\"Rānapur\";\"main\"\n\"1258537\";\"Ranapur\";\"ascii\"\n\"1258546\";\"Rānāghāt\";\"main\"\n\"1258546\";\"Ranaghat\";\"ascii\"\n\"1258553\";\"Rāmtek\";\"main\"\n\"1258553\";\"Ramtek\";\"ascii\"\n\"1258553\";\"Рамтек\";\"other\"\n\"1258581\";\"Rāmpur Hāt\";\"main\"\n\"1258581\";\"Rampur Hat\";\"ascii\"\n\"1258584\";\"Rāmpura\";\"main\"\n\"1258584\";\"Rampura\";\"ascii\"\n\"1258590\";\"Rāmpura\";\"main\"\n\"1258590\";\"Rampura\";\"ascii\"\n\"1258592\";\"Rāmpura\";\"main\"\n\"1258592\";\"Rampura\";\"ascii\"\n\"1258596\";\"Rāmpur\";\"main\"\n\"1258596\";\"Rampur\";\"ascii\"\n\"1258596\";\"Rampur Bushahr\";\"other\"\n\"1258596\";\"Рампур\";\"other\"\n\"1258598\";\"Rāmpur\";\"main\"\n\"1258598\";\"Rampur\";\"ascii\"\n\"1258599\";\"Rāmpur\";\"main\"\n\"1258599\";\"Rampur\";\"ascii\"\n\"1258635\";\"Rāmnagar\";\"main\"\n\"1258635\";\"Ramnagar\";\"ascii\"\n\"1258637\";\"Rāmnagar\";\"main\"\n\"1258637\";\"Ramnagar\";\"ascii\"\n\"1258639\";\"Rāmnagar\";\"main\"\n\"1258639\";\"Ramnagar\";\"ascii\"\n\"1258640\";\"Rāmnagar\";\"main\"\n\"1258640\";\"Ramnagar\";\"ascii\"\n\"1258642\";\"Rāmnagar\";\"main\"\n\"1258642\";\"Ramnagar\";\"ascii\"\n\"1258652\";\"Rāmkola\";\"main\"\n\"1258652\";\"Ramkola\";\"ascii\"\n\"1258658\";\"Rāmjībanpur\";\"main\"\n\"1258658\";\"Ramjibanpur\";\"ascii\"\n\"1258669\";\"Rāmgarh\";\"main\"\n\"1258669\";\"Ramgarh\";\"ascii\"\n\"1258677\";\"Rāmgarh\";\"main\"\n\"1258677\";\"Ramgarh\";\"ascii\"\n\"1258686\";\"Rāmgarh\";\"main\"\n\"1258686\";\"Ramgarh\";\"ascii\"\n\"1258692\";\"Rāmganj Mandi\";\"main\"\n\"1258692\";\"Ramganj Mandi\";\"ascii\"\n\"1258698\";\"Rāmeswaram\";\"main\"\n\"1258698\";\"Rameswaram\";\"ascii\"\n\"1258698\";\"Ramesvaram\";\"other\"\n\"1258708\";\"Rām Dās\";\"main\"\n\"1258708\";\"Ram Das\";\"ascii\"\n\"1258714\";\"Rambha\";\"main\"\n\"1258715\";\"Rāmban\";\"main\"\n\"1258715\";\"Ramban\";\"ascii\"\n\"1258724\";\"Ramāpuram\";\"main\"\n\"1258724\";\"Ramapuram\";\"ascii\"\n\"1258726\";\"Rāmāpuram\";\"main\"\n\"1258726\";\"Ramapuram\";\"ascii\"\n\"1258731\";\"Rāmānuj Ganj\";\"main\"\n\"1258731\";\"Ramanuj Ganj\";\"ascii\"\n\"1258740\";\"Rāmanāthapuram\";\"main\"\n\"1258740\";\"Ramanathapuram\";\"ascii\"\n\"1258740\";\"Ramanatkhapurama\";\"other\"\n\"1258740\";\"Ramanthapuram\";\"other\"\n\"1258740\";\"Ramnad\";\"other\"\n\"1258740\";\"Раманатхапурама\";\"other\"\n\"1258744\";\"Rāmanagaram\";\"main\"\n\"1258744\";\"Ramanagaram\";\"ascii\"\n\"1258744\";\"Closepet\";\"other\"\n\"1258744\";\"Раманагарам\";\"other\"\n\"1258756\";\"Rāmachandrapuram\";\"main\"\n\"1258756\";\"Ramachandrapuram\";\"ascii\"\n\"1258786\";\"Rājūra\";\"main\"\n\"1258786\";\"Rajura\";\"ascii\"\n\"1258788\";\"Rājur\";\"main\"\n\"1258788\";\"Rajur\";\"ascii\"\n\"1258795\";\"Rājula\";\"main\"\n\"1258795\";\"Rajula\";\"ascii\"\n\"1258797\";\"Rājsamand\";\"main\"\n\"1258797\";\"Rajsamand\";\"ascii\"\n\"1258803\";\"Rājpura\";\"main\"\n\"1258803\";\"Rajpura\";\"ascii\"\n\"1258803\";\"Kajpura\";\"other\"\n\"1258815\";\"Rājpur\";\"main\"\n\"1258815\";\"Rajpur\";\"ascii\"\n\"1258815\";\"Alirajpur\";\"other\"\n\"1258816\";\"Rājpur\";\"main\"\n\"1258816\";\"Rajpur\";\"ascii\"\n\"1258819\";\"Rājpīpla\";\"main\"\n\"1258819\";\"Rajpipla\";\"ascii\"\n\"1258831\";\"Rāj Nāndgaon\";\"main\"\n\"1258831\";\"Raj Nandgaon\";\"ascii\"\n\"1258831\";\"Raj Nandga\";\"other\"\n\"1258835\";\"Rājnagar\";\"main\"\n\"1258835\";\"Rajnagar\";\"ascii\"\n\"1258843\";\"Rājmahal\";\"main\"\n\"1258843\";\"Rajmahal\";\"ascii\"\n\"1258847\";\"Rājkot\";\"main\"\n\"1258847\";\"Rajkot\";\"ascii\"\n\"1258847\";\"Radzhkot\";\"other\"\n\"1258847\";\"Radzkot\";\"other\"\n\"1258847\";\"Radzkotas\";\"other\"\n\"1258847\";\"Radźkot\";\"other\"\n\"1258847\";\"Radžkotas\";\"other\"\n\"1258847\";\"rajikotto\";\"other\"\n\"1258847\";\"Раджкот\";\"other\"\n\"1258847\";\"ラージコット\";\"other\"\n\"1258859\";\"Rājgurunagar\";\"main\"\n\"1258859\";\"Rajgurunagar\";\"ascii\"\n\"1258864\";\"Rājgīr\";\"main\"\n\"1258864\";\"Rajgir\";\"ascii\"\n\"1258864\";\"Radzhgir\";\"other\"\n\"1258864\";\"Rajagriha\";\"other\"\n\"1258864\";\"Rajgriha\";\"other\"\n\"1258864\";\"Rājagriha\";\"other\"\n\"1258864\";\"Раджгир\";\"other\"\n\"1258867\";\"Rājgarh\";\"main\"\n\"1258867\";\"Rajgarh\";\"ascii\"\n\"1258868\";\"Rājgarh\";\"main\"\n\"1258868\";\"Rajgarh\";\"ascii\"\n\"1258869\";\"Rājgarh\";\"main\"\n\"1258869\";\"Rajgarh\";\"ascii\"\n\"1258875\";\"Rājgarh\";\"main\"\n\"1258875\";\"Rajgarh\";\"ascii\"\n\"1258876\";\"Rājgarh\";\"main\"\n\"1258876\";\"Rajgarh\";\"ascii\"\n\"1258891\";\"Rājauri\";\"main\"\n\"1258891\";\"Rajauri\";\"ascii\"\n\"1258891\";\"Rajaori\";\"other\"\n\"1258891\";\"Rājaori\";\"other\"\n\"1258903\";\"Rāja Sānsi\";\"main\"\n\"1258903\";\"Raja Sansi\";\"ascii\"\n\"1258911\";\"Rājāpur\";\"main\"\n\"1258911\";\"Rajapur\";\"ascii\"\n\"1258914\";\"Rājāpur\";\"main\"\n\"1258914\";\"Rajapur\";\"ascii\"\n\"1258916\";\"Rājapālaiyam\";\"main\"\n\"1258916\";\"Rajapalaiyam\";\"ascii\"\n\"1258916\";\"Rajapalayam\";\"other\"\n\"1258922\";\"Rājampet\";\"main\"\n\"1258922\";\"Rajampet\";\"ascii\"\n\"1258922\";\"Razampeta\";\"other\"\n\"1258922\";\"Rāzampeta\";\"other\"\n\"1258928\";\"Rājaldesar\";\"main\"\n\"1258928\";\"Rajaldesar\";\"ascii\"\n\"1258930\";\"Rājākhera\";\"main\"\n\"1258930\";\"Rajakhera\";\"ascii\"\n\"1258932\";\"Rājahmundry\";\"main\"\n\"1258932\";\"Rajahmundry\";\"ascii\"\n\"1258932\";\"Radzhamandri\";\"other\"\n\"1258932\";\"Rajahmondry\";\"other\"\n\"1258932\";\"Rajamahendravaram\";\"other\"\n\"1258932\";\"Rajamahendri\";\"other\"\n\"1258932\";\"Rajamandri\";\"other\"\n\"1258932\";\"Rājamahendravaram\";\"other\"\n\"1258932\";\"Раджамандри\";\"other\"\n\"1258942\";\"Rāiwāla\";\"main\"\n\"1258942\";\"Raiwala\";\"ascii\"\n\"1258942\";\"Raiwala Bara\";\"other\"\n\"1258942\";\"Rāiwāla Bara\";\"other\"\n\"1258950\";\"Rāisinghnagar\";\"main\"\n\"1258950\";\"Raisinghnagar\";\"ascii\"\n\"1258952\";\"Raisen\";\"main\"\n\"1258967\";\"Rāipur\";\"main\"\n\"1258967\";\"Raipur\";\"ascii\"\n\"1258972\";\"Raipur\";\"main\"\n\"1258980\";\"Raipur\";\"main\"\n\"1258993\";\"Rāikot\";\"main\"\n\"1258993\";\"Raikot\";\"ascii\"\n\"1259004\";\"Raigarh Fort\";\"main\"\n\"1259004\";\"Raigad\";\"other\"\n\"1259004\";\"Raigad District\";\"other\"\n\"1259004\";\"Raigad Fort\";\"other\"\n\"1259004\";\"Raigarh\";\"other\"\n\"1259004\";\"Raigarh District\";\"other\"\n\"1259005\";\"Raigarh\";\"main\"\n\"1259005\";\"Rajgarkh\";\"other\"\n\"1259005\";\"Райгарх\";\"other\"\n\"1259009\";\"Rāiganj\";\"main\"\n\"1259009\";\"Raiganj\";\"ascii\"\n\"1259009\";\"Rayganj\";\"other\"\n\"1259012\";\"Rāichūr\";\"main\"\n\"1259012\";\"Raichur\";\"ascii\"\n\"1259012\";\"Rajchur\";\"other\"\n\"1259012\";\"Райчур\";\"other\"\n\"1259017\";\"Raia\";\"main\"\n\"1259019\";\"Rāhuri\";\"main\"\n\"1259019\";\"Rahuri\";\"ascii\"\n\"1259022\";\"Rāhon\";\"main\"\n\"1259022\";\"Rahon\";\"ascii\"\n\"1259022\";\"Rabon\";\"other\"\n\"1259026\";\"Rahimatpur\";\"main\"\n\"1259026\";\"Rahunatpur\";\"other\"\n\"1259034\";\"Rāhatgarh\";\"main\"\n\"1259034\";\"Rahatgarh\";\"ascii\"\n\"1259039\";\"Rahā\";\"main\"\n\"1259039\";\"Raha\";\"ascii\"\n\"1259047\";\"Raghunāthpur\";\"main\"\n\"1259047\";\"Raghunathpur\";\"ascii\"\n\"1259049\";\"Raghunāthpur\";\"main\"\n\"1259049\";\"Raghunathpur\";\"ascii\"\n\"1259056\";\"Rāghogarh\";\"main\"\n\"1259056\";\"Raghogarh\";\"ascii\"\n\"1259056\";\"Raghugarh\";\"other\"\n\"1259056\";\"Rāghugarh\";\"other\"\n\"1259060\";\"Rafiganj\";\"main\"\n\"1259064\";\"Rāe Bareli\";\"main\"\n\"1259064\";\"Rae Bareli\";\"ascii\"\n\"1259069\";\"Rādhanpur\";\"main\"\n\"1259069\";\"Radhanpur\";\"ascii\"\n\"1259072\";\"Rādha Kund\";\"main\"\n\"1259072\";\"Radha Kund\";\"ascii\"\n\"1259075\";\"Radaur\";\"main\"\n\"1259082\";\"Rabūpura\";\"main\"\n\"1259082\";\"Rabupura\";\"ascii\"\n\"1259083\";\"Rabkavi\";\"main\"\n\"1259091\";\"Quilon\";\"main\"\n\"1259091\";\"Coulao\";\"other\"\n\"1259091\";\"Coulão\";\"other\"\n\"1259091\";\"Kollam\";\"other\"\n\"1259091\";\"Kullamalai\";\"other\"\n\"1259091\";\"Kvilon\";\"other\"\n\"1259091\";\"keallam\";\"other\"\n\"1259091\";\"kollam\";\"other\"\n\"1259091\";\"Квилон\";\"other\"\n\"1259091\";\"கொல்லம்\";\"other\"\n\"1259091\";\"കൊല്ലം\";\"other\"\n\"1259094\";\"Queula\";\"main\"\n\"1259098\";\"Quepem\";\"main\"\n\"1259098\";\"Quepem Town\";\"other\"\n\"1259102\";\"Qāzigund\";\"main\"\n\"1259102\";\"Qazigund\";\"ascii\"\n\"1259108\";\"Qasba\";\"main\"\n\"1259108\";\"Kasba\";\"other\"\n\"1259110\";\"Qādiān\";\"main\"\n\"1259110\";\"Qadian\";\"ascii\"\n\"1259110\";\"Kadian\";\"other\"\n\"1259110\";\"Kādiān\";\"other\"\n\"1259123\";\"Puttūr\";\"main\"\n\"1259123\";\"Puttur\";\"ascii\"\n\"1259124\";\"Puttūr\";\"main\"\n\"1259124\";\"Puttur\";\"ascii\"\n\"1259148\";\"Pushkar\";\"main\"\n\"1259154\";\"Pusad\";\"main\"\n\"1259157\";\"Purwa\";\"main\"\n\"1259158\";\"Purushottampur\";\"main\"\n\"1259163\";\"Puruliya\";\"main\"\n\"1259163\";\"Purulia\";\"other\"\n\"1259166\";\"Pūrnia\";\"main\"\n\"1259166\";\"Purnia\";\"ascii\"\n\"1259166\";\"Purnea\";\"other\"\n\"1259177\";\"Pūrna\";\"main\"\n\"1259177\";\"Purna\";\"ascii\"\n\"1259177\";\"Пурна\";\"other\"\n\"1259184\";\"Puri\";\"main\"\n\"1259184\";\"Jagannath\";\"other\"\n\"1259184\";\"Jagannathpur\";\"other\"\n\"1259184\";\"Jagannāth\";\"other\"\n\"1259184\";\"Puri District\";\"other\"\n\"1259184\";\"Purî\";\"other\"\n\"1259184\";\"puri\";\"other\"\n\"1259184\";\"pwry\";\"other\"\n\"1259184\";\"Пури\";\"other\"\n\"1259184\";\"פורי\";\"other\"\n\"1259184\";\"পুরি\";\"other\"\n\"1259184\";\"பூரி\";\"other\"\n\"1259184\";\"プーリ\";\"other\"\n\"1259190\";\"Pūranpur\";\"main\"\n\"1259190\";\"Puranpur\";\"ascii\"\n\"1259210\";\"Pupri\";\"main\"\n\"1259210\";\"Janakpur Road\";\"other\"\n\"1259222\";\"Punjai Puliyampatti\";\"main\"\n\"1259228\";\"Punganūru\";\"main\"\n\"1259228\";\"Punganuru\";\"ascii\"\n\"1259229\";\"Pune\";\"main\"\n\"1259229\";\"Poona\";\"other\"\n\"1259229\";\"Puna\";\"other\"\n\"1259229\";\"poona\";\"other\"\n\"1259229\";\"pu na\";\"other\"\n\"1259229\";\"pune\";\"other\"\n\"1259229\";\"pune sahara\";\"other\"\n\"1259229\";\"pwnh\";\"other\"\n\"1259229\";\"Пуна\";\"other\"\n\"1259229\";\"פונה\";\"other\"\n\"1259229\";\"पुणे\";\"other\"\n\"1259229\";\"पुणे शहर\";\"other\"\n\"1259229\";\"পুনে\";\"other\"\n\"1259229\";\"புனே\";\"other\"\n\"1259229\";\"ಪುಣೆ\";\"other\"\n\"1259229\";\"プネー\";\"other\"\n\"1259229\";\"浦那\";\"other\"\n\"1259231\";\"Pūndri\";\"main\"\n\"1259231\";\"Pundri\";\"ascii\"\n\"1259239\";\"Punāsa\";\"main\"\n\"1259239\";\"Punasa\";\"ascii\"\n\"1259243\";\"Punalūr\";\"main\"\n\"1259243\";\"Punalur\";\"ascii\"\n\"1259244\";\"Punāhāna\";\"main\"\n\"1259244\";\"Punahana\";\"ascii\"\n\"1259251\";\"Pulwama\";\"main\"\n\"1259251\";\"Pulawom\";\"other\"\n\"1259259\";\"Pullambādi\";\"main\"\n\"1259259\";\"Pullambadi\";\"ascii\"\n\"1259259\";\"Pullampadi\";\"other\"\n\"1259261\";\"Puliyūr\";\"main\"\n\"1259261\";\"Puliyur\";\"ascii\"\n\"1259263\";\"Puliyangudi\";\"main\"\n\"1259263\";\"Puliyankudi\";\"other\"\n\"1259264\";\"Pulivendla\";\"main\"\n\"1259272\";\"Pulgaon\";\"main\"\n\"1259283\";\"Pukhrāyān\";\"main\"\n\"1259283\";\"Pukhrayan\";\"ascii\"\n\"1259290\";\"Puduvāyal\";\"main\"\n\"1259290\";\"Puduvayal\";\"ascii\"\n\"1259292\";\"Pudūr\";\"main\"\n\"1259292\";\"Pudur\";\"ascii\"\n\"1259293\";\"Pudūr\";\"main\"\n\"1259293\";\"Pudur\";\"ascii\"\n\"1259294\";\"Puduppatti\";\"main\"\n\"1259297\";\"Pudukkottai\";\"main\"\n\"1259297\";\"Poodoocottah\";\"other\"\n\"1259297\";\"Pudukattai\";\"other\"\n\"1259297\";\"Pudukkottai-Trichinopoly\";\"other\"\n\"1259297\";\"Pudukotah\";\"other\"\n\"1259297\";\"pudo~ukkottai\";\"other\"\n\"1259297\";\"putukkottai\";\"other\"\n\"1259297\";\"புதுக்கோட்டை\";\"other\"\n\"1259297\";\"プドゥッコーッタイ\";\"other\"\n\"1259312\";\"Proddatūr\";\"main\"\n\"1259312\";\"Proddatur\";\"ascii\"\n\"1259337\";\"Pratāpgarh\";\"main\"\n\"1259337\";\"Pratapgarh\";\"ascii\"\n\"1259337\";\"Partabgarh City\";\"other\"\n\"1259337\";\"Partapgarh\";\"other\"\n\"1259338\";\"Pratāpgarh\";\"main\"\n\"1259338\";\"Pratapgarh\";\"ascii\"\n\"1259338\";\"Partabgarh\";\"other\"\n\"1259338\";\"Partapgarh\";\"other\"\n\"1259338\";\"Pratabgarh\";\"other\"\n\"1259338\";\"Pratābgarh\";\"other\"\n\"1259385\";\"Port Blair\";\"main\"\n\"1259385\";\"Port-Blehr\";\"other\"\n\"1259385\";\"bu lai er gang\";\"other\"\n\"1259385\";\"porta bleyara\";\"other\"\n\"1259385\";\"potoburea\";\"other\"\n\"1259385\";\"Порт-Блэр\";\"other\"\n\"1259385\";\"पोर्ट ब्लेयर\";\"other\"\n\"1259385\";\"পোর্ট ব্লেয়ার\";\"other\"\n\"1259385\";\"ポートブレア\";\"other\"\n\"1259385\";\"布萊爾港\";\"other\"\n\"1259388\";\"Porsa\";\"main\"\n\"1259388\";\"Порса\";\"other\"\n\"1259395\";\"Porbandar\";\"main\"\n\"1259395\";\"Poorbunder\";\"other\"\n\"1259395\";\"Porbandarom\";\"other\"\n\"1259395\";\"Port Porbandar\";\"other\"\n\"1259395\";\"Purbandar\";\"other\"\n\"1259395\";\"bo er ben de er\";\"other\"\n\"1259395\";\"porabandara\";\"other\"\n\"1259395\";\"Порбандаром\";\"other\"\n\"1259395\";\"पोरबन्दर\";\"other\"\n\"1259395\";\"博尔本德尔\";\"other\"\n\"1259400\";\"Poonamallee\";\"main\"\n\"1259408\";\"Ponnūru\";\"main\"\n\"1259408\";\"Ponnuru\";\"ascii\"\n\"1259409\";\"Ponneri\";\"main\"\n\"1259411\";\"Ponnāni\";\"main\"\n\"1259411\";\"Ponnani\";\"ascii\"\n\"1259411\";\"Ponani\";\"other\"\n\"1259412\";\"Ponnampet\";\"main\"\n\"1259413\";\"Ponnamarāvati\";\"main\"\n\"1259413\";\"Ponnamaravati\";\"ascii\"\n\"1259413\";\"Ponnamaravathy\";\"other\"\n\"1259425\";\"Pondicherry\";\"main\"\n\"1259425\";\"Pondicero\";\"other\"\n\"1259425\";\"Pondicheri\";\"other\"\n\"1259425\";\"Pondichery\";\"other\"\n\"1259425\";\"Pondichéri\";\"other\"\n\"1259425\";\"Pondichéry\";\"other\"\n\"1259425\";\"Pondiseri\";\"other\"\n\"1259425\";\"Pondisheri\";\"other\"\n\"1259425\";\"Pondiĉero\";\"other\"\n\"1259425\";\"Puduchcheri\";\"other\"\n\"1259425\";\"Puducherri\";\"other\"\n\"1259425\";\"Puducherry\";\"other\"\n\"1259425\";\"Puduvai\";\"other\"\n\"1259425\";\"Territoire de Pondichery\";\"other\"\n\"1259425\";\"Territoire de Pondichéry\";\"other\"\n\"1259425\";\"ben de zhi li\";\"other\"\n\"1259425\";\"ben de zhi li shi\";\"other\"\n\"1259425\";\"pandiceri\";\"other\"\n\"1259425\";\"panticceri\";\"other\"\n\"1259425\";\"pondiceri\";\"other\"\n\"1259425\";\"pondisheri\";\"other\"\n\"1259425\";\"Пондишери\";\"other\"\n\"1259425\";\"Пондішері\";\"other\"\n\"1259425\";\"पॉण्डिचेरी\";\"other\"\n\"1259425\";\"পন্ডিচেরী\";\"other\"\n\"1259425\";\"પૉંડિચેરી\";\"other\"\n\"1259425\";\"பாண்டிச்சேரி\";\"other\"\n\"1259425\";\"პონდიშერი\";\"other\"\n\"1259425\";\"ポンディシェリ\";\"other\"\n\"1259425\";\"本地治里\";\"other\"\n\"1259425\";\"本地治里市\";\"other\"\n\"1259429\";\"Ponda\";\"main\"\n\"1259429\";\"Cassabe de Ponda\";\"other\"\n\"1259429\";\"Cassabé de Pondá\";\"other\"\n\"1259434\";\"Polūr\";\"main\"\n\"1259434\";\"Polur\";\"ascii\"\n\"1259440\";\"Pollāchi\";\"main\"\n\"1259440\";\"Pollachi\";\"ascii\"\n\"1259446\";\"Polasara\";\"main\"\n\"1259460\";\"Pokaran\";\"main\"\n\"1259503\";\"Pithorāgarh\";\"main\"\n\"1259503\";\"Pithoragarh\";\"ascii\"\n\"1259503\";\"Pathorgarh\";\"other\"\n\"1259503\";\"Pithoragari\";\"other\"\n\"1259505\";\"Pithora\";\"main\"\n\"1259508\";\"Pithāpuram\";\"main\"\n\"1259508\";\"Pithapuram\";\"ascii\"\n\"1259530\";\"Piro\";\"main\"\n\"1259535\";\"Piriyāpatna\";\"main\"\n\"1259535\";\"Piriyapatna\";\"ascii\"\n\"1259540\";\"Pirāwa\";\"main\"\n\"1259540\";\"Pirawa\";\"ascii\"\n\"1259541\";\"Piravam\";\"main\"\n\"1259541\";\"Piravom\";\"other\"\n\"1259552\";\"Pīpri\";\"main\"\n\"1259552\";\"Pipri\";\"ascii\"\n\"1259552\";\"Peepri\";\"other\"\n\"1259554\";\"Pipraich\";\"main\"\n\"1259571\";\"Piploda\";\"main\"\n\"1259592\";\"Pipili\";\"main\"\n\"1259592\";\"Pipli\";\"other\"\n\"1259608\";\"Pīpār\";\"main\"\n\"1259608\";\"Pipar\";\"ascii\"\n\"1259617\";\"Pīpalkoti\";\"main\"\n\"1259617\";\"Pipalkoti\";\"ascii\"\n\"1259630\";\"Pinjaur\";\"main\"\n\"1259638\";\"Pindwāra\";\"main\"\n\"1259638\";\"Pindwara\";\"ascii\"\n\"1259647\";\"Pināhat\";\"main\"\n\"1259647\";\"Pinahat\";\"ascii\"\n\"1259652\";\"Pimpri\";\"main\"\n\"1259680\";\"Pilkhua\";\"main\"\n\"1259680\";\"Pilkhuwa\";\"other\"\n\"1259686\";\"Pīlībhīt\";\"main\"\n\"1259686\";\"Pilibhit\";\"ascii\"\n\"1259686\";\"Pilibhhit\";\"other\"\n\"1259686\";\"Pilibkhit\";\"other\"\n\"1259686\";\"Пилибхит\";\"other\"\n\"1259688\";\"Pilibangan\";\"main\"\n\"1259688\";\"Pilibanga\";\"other\"\n\"1259693\";\"Pilāni\";\"main\"\n\"1259693\";\"Pilani\";\"ascii\"\n\"1259701\";\"Pihāni\";\"main\"\n\"1259701\";\"Pihani\";\"ascii\"\n\"1259734\";\"Phūlpur\";\"main\"\n\"1259734\";\"Phulpur\";\"ascii\"\n\"1259735\";\"Phūlpur\";\"main\"\n\"1259735\";\"Phulpur\";\"ascii\"\n\"1259744\";\"Phulera\";\"main\"\n\"1259744\";\"Phalera\";\"other\"\n\"1259756\";\"Phulabāni\";\"main\"\n\"1259756\";\"Phulabani\";\"ascii\"\n\"1259756\";\"Phulbam\";\"other\"\n\"1259756\";\"Phulbani\";\"other\"\n\"1259756\";\"Phulbāni\";\"other\"\n\"1259773\";\"Phirangipuram\";\"main\"\n\"1259775\";\"Phillaur\";\"main\"\n\"1259784\";\"Phek\";\"main\"\n\"1259795\";\"Phariha\";\"main\"\n\"1259801\";\"Phaphūnd\";\"main\"\n\"1259801\";\"Phaphund\";\"ascii\"\n\"1259811\";\"Phaltan\";\"main\"\n\"1259813\";\"Phalodi\";\"main\"\n\"1259818\";\"Phalauda\";\"main\"\n\"1259827\";\"Phagwāra\";\"main\"\n\"1259827\";\"Phagwara\";\"ascii\"\n\"1259840\";\"Petlāwad\";\"main\"\n\"1259840\";\"Petlawad\";\"ascii\"\n\"1259841\";\"Petlād\";\"main\"\n\"1259841\";\"Petlad\";\"ascii\"\n\"1259853\";\"Perūr\";\"main\"\n\"1259853\";\"Perur\";\"ascii\"\n\"1259853\";\"Melai Citamparam\";\"other\"\n\"1259855\";\"Perundurai\";\"main\"\n\"1259855\";\"Perundural\";\"other\"\n\"1259857\";\"Perumpāvūr\";\"main\"\n\"1259857\";\"Perumpavur\";\"ascii\"\n\"1259869\";\"Pernem\";\"main\"\n\"1259869\";\"Cassabe-de-Pernem\";\"other\"\n\"1259869\";\"Cassabé-de-Pernem\";\"other\"\n\"1259875\";\"Periyapatti\";\"main\"\n\"1259877\";\"Periyanegamam\";\"main\"\n\"1259878\";\"Periyanāyakkanpālaiyam\";\"main\"\n\"1259878\";\"Periyanayakkanpalaiyam\";\"ascii\"\n\"1259878\";\"Periyanaikanpalayam\";\"other\"\n\"1259879\";\"Periyakulam\";\"main\"\n\"1259890\";\"Perāvūrani\";\"main\"\n\"1259890\";\"Peravurani\";\"ascii\"\n\"1259890\";\"Peravurni\";\"other\"\n\"1259892\";\"Peranāmpattu\";\"main\"\n\"1259892\";\"Peranampattu\";\"ascii\"\n\"1259892\";\"Peranambattu\";\"other\"\n\"1259892\";\"Peranāmbattu\";\"other\"\n\"1259892\";\"Pernambut\";\"other\"\n\"1259893\";\"Peranamallūr\";\"main\"\n\"1259893\";\"Peranamallur\";\"ascii\"\n\"1259896\";\"Perambalūr\";\"main\"\n\"1259896\";\"Perambalur\";\"ascii\"\n\"1259898\";\"Peraiyūr\";\"main\"\n\"1259898\";\"Peraiyur\";\"ascii\"\n\"1259898\";\"Paryur\";\"other\"\n\"1259905\";\"Penukonda\";\"main\"\n\"1259907\";\"Penugonda\";\"main\"\n\"1259914\";\"Pennāttūr\";\"main\"\n\"1259914\";\"Pennattur\";\"ascii\"\n\"1259914\";\"Pennathur\";\"other\"\n\"1259916\";\"Pennāgaram\";\"main\"\n\"1259916\";\"Pennagaram\";\"ascii\"\n\"1259917\";\"Pennādam\";\"main\"\n\"1259917\";\"Pennadam\";\"ascii\"\n\"1259924\";\"Pendra\";\"main\"\n\"1259931\";\"Pen\";\"main\"\n\"1259939\";\"Pehowa\";\"main\"\n\"1259954\";\"Peddāpuram\";\"main\"\n\"1259954\";\"Peddapuram\";\"ascii\"\n\"1259954\";\"Peddapuram Town\";\"other\"\n\"1259961\";\"Peddapalli\";\"main\"\n\"1259986\";\"Pedana\";\"main\"\n\"1259994\";\"Payyannūr\";\"main\"\n\"1259994\";\"Payyannur\";\"ascii\"\n\"1259994\";\"Payyanur\";\"other\"\n\"1260003\";\"Pawāyan\";\"main\"\n\"1260003\";\"Pawayan\";\"ascii\"\n\"1260009\";\"Pawai\";\"main\"\n\"1260014\";\"Pāvagada\";\"main\"\n\"1260014\";\"Pavagada\";\"ascii\"\n\"1260014\";\"Pavugada\";\"other\"\n\"1260014\";\"Pāvugada\";\"other\"\n\"1260016\";\"Pauri\";\"main\"\n\"1260022\";\"Pauni\";\"main\"\n\"1260035\";\"Pātūr\";\"main\"\n\"1260035\";\"Patur\";\"ascii\"\n\"1260038\";\"Pātuli\";\"main\"\n\"1260038\";\"Patuli\";\"ascii\"\n\"1260040\";\"Pattukkottai\";\"main\"\n\"1260045\";\"Patti\";\"main\"\n\"1260046\";\"Patti\";\"main\"\n\"1260046\";\"Патти\";\"other\"\n\"1260050\";\"Pattan\";\"main\"\n\"1260050\";\"Patan\";\"other\"\n\"1260064\";\"Pātrasāer\";\"main\"\n\"1260064\";\"Patrasaer\";\"ascii\"\n\"1260064\";\"Patrassyar\";\"other\"\n\"1260082\";\"Patnāgarh\";\"main\"\n\"1260082\";\"Patnagarh\";\"ascii\"\n\"1260086\";\"Patna\";\"main\"\n\"1260086\";\"New Patna\";\"other\"\n\"1260086\";\"Patna New City\";\"other\"\n\"1260086\";\"ba te na\";\"other\"\n\"1260086\";\"patana\";\"other\"\n\"1260086\";\"patna\";\"other\"\n\"1260086\";\"patona\";\"other\"\n\"1260086\";\"Патна\";\"other\"\n\"1260086\";\"पटना\";\"other\"\n\"1260086\";\"পাটনা\";\"other\"\n\"1260086\";\"பட்னா\";\"other\"\n\"1260086\";\"பாட்னா\";\"other\"\n\"1260086\";\"パトナ\";\"other\"\n\"1260086\";\"パトナー\";\"other\"\n\"1260086\";\"巴特那\";\"other\"\n\"1260104\";\"Patiāli\";\"main\"\n\"1260104\";\"Patiali\";\"ascii\"\n\"1260107\";\"Patiāla\";\"main\"\n\"1260107\";\"Patiala\";\"ascii\"\n\"1260107\";\"Pat'jala\";\"other\"\n\"1260107\";\"Патьяла\";\"other\"\n\"1260120\";\"Pāthri\";\"main\"\n\"1260120\";\"Pathri\";\"ascii\"\n\"1260120\";\"Patri\";\"other\"\n\"1260120\";\"Патри\";\"other\"\n\"1260129\";\"Patharia\";\"main\"\n\"1260134\";\"Pāthardih\";\"main\"\n\"1260134\";\"Pathardih\";\"ascii\"\n\"1260134\";\"Pathardihi\";\"other\"\n\"1260135\";\"Pāthardi\";\"main\"\n\"1260135\";\"Pathardi\";\"ascii\"\n\"1260137\";\"Pathānkot\";\"main\"\n\"1260137\";\"Pathankot\";\"ascii\"\n\"1260137\";\"Rathankot\";\"other\"\n\"1260138\";\"Pathanāmthitta\";\"main\"\n\"1260138\";\"Pathanamthitta\";\"ascii\"\n\"1260138\";\"Pattanamtitta\";\"other\"\n\"1260141\";\"Pathalgaon\";\"main\"\n\"1260141\";\"Pathargaon\";\"other\"\n\"1260156\";\"Pataudi\";\"main\"\n\"1260168\";\"Patancheru\";\"main\"\n\"1260168\";\"Patancheroo\";\"other\"\n\"1260173\";\"Pātan\";\"main\"\n\"1260173\";\"Patan\";\"ascii\"\n\"1260173\";\"Патан\";\"other\"\n\"1260174\";\"Pātan\";\"main\"\n\"1260174\";\"Patan\";\"ascii\"\n\"1260176\";\"Pātan\";\"main\"\n\"1260176\";\"Patan\";\"ascii\"\n\"1260176\";\"Патан\";\"other\"\n\"1260177\";\"Pātan\";\"main\"\n\"1260177\";\"Patan\";\"ascii\"\n\"1260178\";\"Patāmundai\";\"main\"\n\"1260178\";\"Patamundai\";\"ascii\"\n\"1260178\";\"Patamudai\";\"other\"\n\"1260206\";\"Pāsighāt\";\"main\"\n\"1260206\";\"Pasighat\";\"ascii\"\n\"1260210\";\"Pasān\";\"main\"\n\"1260210\";\"Pasan\";\"ascii\"\n\"1260221\";\"Parvatsar\";\"main\"\n\"1260221\";\"Parbatsar\";\"other\"\n\"1260222\";\"Pārvatīpuram\";\"main\"\n\"1260222\";\"Parvatipuram\";\"ascii\"\n\"1260228\";\"Partūr\";\"main\"\n\"1260228\";\"Partur\";\"ascii\"\n\"1260232\";\"Partāpur\";\"main\"\n\"1260232\";\"Partapur\";\"ascii\"\n\"1260232\";\"Partapor\";\"other\"\n\"1260249\";\"Parshādepur\";\"main\"\n\"1260249\";\"Parshadepur\";\"ascii\"\n\"1260274\";\"Pārola\";\"main\"\n\"1260274\";\"Parola\";\"ascii\"\n\"1260275\";\"Parol\";\"main\"\n\"1260275\";\"Parole\";\"other\"\n\"1260281\";\"Parnera\";\"main\"\n\"1260290\";\"Parli Vaijnāth\";\"main\"\n\"1260290\";\"Parli Vaijnath\";\"ascii\"\n\"1260290\";\"Parli\";\"other\"\n\"1260290\";\"Purli\";\"other\"\n\"1260290\";\"Purli Vaijnath\";\"other\"\n\"1260296\";\"Parlākimidi\";\"main\"\n\"1260296\";\"Parlakimidi\";\"ascii\"\n\"1260296\";\"Paria Kimedi\";\"other\"\n\"1260296\";\"PurlaKimedy\";\"other\"\n\"1260313\";\"Parīchhatgarh\";\"main\"\n\"1260313\";\"Parichhatgarh\";\"ascii\"\n\"1260314\";\"Parīchhā\";\"main\"\n\"1260314\";\"Parichha\";\"ascii\"\n\"1260335\";\"Pārdi\";\"main\"\n\"1260335\";\"Pardi\";\"ascii\"\n\"1260341\";\"Parbhani\";\"main\"\n\"1260341\";\"Parbaini\";\"other\"\n\"1260354\";\"Paravūr\";\"main\"\n\"1260354\";\"Paravur\";\"ascii\"\n\"1260354\";\"Paravar\";\"other\"\n\"1260354\";\"Paravoor\";\"other\"\n\"1260368\";\"Parāsia\";\"main\"\n\"1260368\";\"Parasia\";\"ascii\"\n\"1260368\";\"Dongar Parasia\";\"other\"\n\"1260368\";\"Dongar Parāsia\";\"other\"\n\"1260387\";\"Paramagudi\";\"main\"\n\"1260393\";\"Parādīp Garh\";\"main\"\n\"1260393\";\"Paradip Garh\";\"ascii\"\n\"1260393\";\"Paradeep\";\"other\"\n\"1260393\";\"Paradip\";\"other\"\n\"1260393\";\"Paradipur\";\"other\"\n\"1260393\";\"Paradwip\";\"other\"\n\"1260393\";\"Pārādwīp\";\"other\"\n\"1260406\";\"Pāppinisseri\";\"main\"\n\"1260406\";\"Pappinisseri\";\"ascii\"\n\"1260406\";\"Pappinissheri\";\"other\"\n\"1260406\";\"Pāppinissheri\";\"other\"\n\"1260407\";\"Pāppārappatti\";\"main\"\n\"1260407\";\"Papparappatti\";\"ascii\"\n\"1260407\";\"Papparapatti\";\"other\"\n\"1260410\";\"Pāpireddippatti\";\"main\"\n\"1260410\";\"Papireddippatti\";\"ascii\"\n\"1260410\";\"Papireddipatti\";\"other\"\n\"1260417\";\"Papanāsam\";\"main\"\n\"1260417\";\"Papanasam\";\"ascii\"\n\"1260417\";\"Pavanasi\";\"other\"\n\"1260421\";\"Pāonta Sāhib\";\"main\"\n\"1260421\";\"Paonta Sahib\";\"ascii\"\n\"1260421\";\"Paonta\";\"other\"\n\"1260434\";\"Panvel\";\"main\"\n\"1260434\";\"Panwel\";\"other\"\n\"1260447\";\"Pānsemal\";\"main\"\n\"1260447\";\"Pansemal\";\"ascii\"\n\"1260448\";\"Panruti\";\"main\"\n\"1260454\";\"Panna\";\"main\"\n\"1260476\";\"Pānīpat\";\"main\"\n\"1260476\";\"Panipat\";\"ascii\"\n\"1260476\";\"Panipata\";\"other\"\n\"1260476\";\"Панипата\";\"other\"\n\"1260482\";\"Pānihāti\";\"main\"\n\"1260482\";\"Panihati\";\"ascii\"\n\"1260488\";\"Panhāla\";\"main\"\n\"1260488\";\"Panhala\";\"ascii\"\n\"1260527\";\"Pandua\";\"main\"\n\"1260537\";\"Pāndoh\";\"main\"\n\"1260537\";\"Pandoh\";\"ascii\"\n\"1260543\";\"Pāndhurna\";\"main\"\n\"1260543\";\"Pandhurna\";\"ascii\"\n\"1260546\";\"Pandharpur\";\"main\"\n\"1260548\";\"Pandhāna\";\"main\"\n\"1260548\";\"Pandhana\";\"ascii\"\n\"1260553\";\"Pāndavapura\";\"main\"\n\"1260553\";\"Pandavapura\";\"ascii\"\n\"1260553\";\"French Rocks\";\"other\"\n\"1260553\";\"Hirod\";\"other\"\n\"1260556\";\"Pandaria\";\"main\"\n\"1260577\";\"Pānchgani\";\"main\"\n\"1260577\";\"Panchgani\";\"ascii\"\n\"1260577\";\"Panchagani\";\"other\"\n\"1260600\";\"Panāra\";\"main\"\n\"1260600\";\"Panara\";\"ascii\"\n\"1260607\";\"Panaji\";\"main\"\n\"1260607\";\"Nova Goa\";\"other\"\n\"1260607\";\"Panadzhi\";\"other\"\n\"1260607\";\"Pangim\";\"other\"\n\"1260607\";\"Panjim\";\"other\"\n\"1260607\";\"panaji\";\"other\"\n\"1260607\";\"Панаджи\";\"other\"\n\"1260607\";\"पणजी\";\"other\"\n\"1260607\";\"পানাজি\";\"other\"\n\"1260607\";\"பணஜி\";\"other\"\n\"1260607\";\"பனாஜி\";\"other\"\n\"1260607\";\"パナジ\";\"other\"\n\"1260612\";\"Pānāgar\";\"main\"\n\"1260612\";\"Panagar\";\"ascii\"\n\"1260612\";\"Panagar Bazar\";\"other\"\n\"1260612\";\"Panagara\";\"other\"\n\"1260637\";\"Palwal\";\"main\"\n\"1260667\";\"Pāloncha\";\"main\"\n\"1260667\";\"Paloncha\";\"ascii\"\n\"1260671\";\"Palni\";\"main\"\n\"1260671\";\"Palani\";\"other\"\n\"1260671\";\"Палани\";\"other\"\n\"1260674\";\"Palmaner\";\"main\"\n\"1260681\";\"Pallippatti\";\"main\"\n\"1260683\";\"Pallipattu\";\"main\"\n\"1260683\";\"Pallipat\";\"other\"\n\"1260685\";\"Pallikondai\";\"main\"\n\"1260685\";\"Pallikonda\";\"other\"\n\"1260691\";\"Palle\";\"main\"\n\"1260691\";\"Pale\";\"other\"\n\"1260692\";\"Pallāvaram\";\"main\"\n\"1260692\";\"Pallavaram\";\"ascii\"\n\"1260693\";\"Pallattūr\";\"main\"\n\"1260693\";\"Pallattur\";\"ascii\"\n\"1260693\";\"Pallatur\";\"other\"\n\"1260694\";\"Pallappatti\";\"main\"\n\"1260694\";\"Pallapatti\";\"other\"\n\"1260697\";\"Palladam\";\"main\"\n\"1260702\";\"Pālkonda\";\"main\"\n\"1260702\";\"Palkonda\";\"ascii\"\n\"1260702\";\"Palakonda\";\"other\"\n\"1260706\";\"Pāliyād\";\"main\"\n\"1260706\";\"Paliyad\";\"ascii\"\n\"1260706\";\"Paliad\";\"other\"\n\"1260707\";\"Pālitāna\";\"main\"\n\"1260707\";\"Palitana\";\"ascii\"\n\"1260707\";\"Палитана\";\"other\"\n\"1260713\";\"Paliā Kalān\";\"main\"\n\"1260713\";\"Palia Kalan\";\"ascii\"\n\"1260713\";\"Palia\";\"other\"\n\"1260716\";\"Pāli\";\"main\"\n\"1260716\";\"Pali\";\"ascii\"\n\"1260716\";\"Pali-Marwar\";\"other\"\n\"1260716\";\"Пали\";\"other\"\n\"1260717\";\"Pāli\";\"main\"\n\"1260717\";\"Pali\";\"ascii\"\n\"1260718\";\"Pāli\";\"main\"\n\"1260718\";\"Pali\";\"ascii\"\n\"1260718\";\"Birsinghapur\";\"other\"\n\"1260718\";\"Пали\";\"other\"\n\"1260728\";\"Pālghāt\";\"main\"\n\"1260728\";\"Palghat\";\"ascii\"\n\"1260728\";\"Palakkad\";\"other\"\n\"1260730\";\"Pālghar\";\"main\"\n\"1260730\";\"Palghar\";\"ascii\"\n\"1260734\";\"Palera\";\"main\"\n\"1260769\";\"Palāsbāri\";\"main\"\n\"1260769\";\"Palasbari\";\"ascii\"\n\"1260769\";\"Mirza Pahar\";\"other\"\n\"1260771\";\"Palāsa\";\"main\"\n\"1260771\";\"Palasa\";\"ascii\"\n\"1260777\";\"Pālanpur\";\"main\"\n\"1260777\";\"Palanpur\";\"ascii\"\n\"1260784\";\"Pālampur\";\"main\"\n\"1260784\";\"Palampur\";\"ascii\"\n\"1260784\";\"Patampar\";\"other\"\n\"1260786\";\"Pālamedu\";\"main\"\n\"1260786\";\"Palamedu\";\"ascii\"\n\"1260792\";\"Pālakollu\";\"main\"\n\"1260792\";\"Palakollu\";\"ascii\"\n\"1260792\";\"Palacole\";\"other\"\n\"1260793\";\"Pālakkodu\";\"main\"\n\"1260793\";\"Palakkodu\";\"ascii\"\n\"1260793\";\"Palakod\";\"other\"\n\"1260824\";\"Pākaur\";\"main\"\n\"1260824\";\"Pakaur\";\"ascii\"\n\"1260830\";\"Pākāla\";\"main\"\n\"1260830\";\"Pakala\";\"ascii\"\n\"1260830\";\"Pakal\";\"other\"\n\"1260833\";\"Paithan\";\"main\"\n\"1260868\";\"Pahāsu\";\"main\"\n\"1260868\";\"Pahasu\";\"ascii\"\n\"1260880\";\"Pahalgām\";\"main\"\n\"1260880\";\"Pahalgam\";\"ascii\"\n\"1260880\";\"Pahlgam\";\"other\"\n\"1260880\";\"Pahlgām\";\"other\"\n\"1260909\";\"Padrauna\";\"main\"\n\"1260911\";\"Padra\";\"main\"\n\"1260918\";\"Padmanābhapuram\";\"main\"\n\"1260918\";\"Padmanabhapuram\";\"ascii\"\n\"1260933\";\"Paddhari\";\"main\"\n\"1260938\";\"Padampur\";\"main\"\n\"1260940\";\"Padampur\";\"main\"\n\"1260940\";\"Podampur\";\"other\"\n\"1260954\";\"Pachperwa\";\"main\"\n\"1260959\";\"Pāchora\";\"main\"\n\"1260959\";\"Pachora\";\"ascii\"\n\"1260962\";\"Pachmarhī\";\"main\"\n\"1260962\";\"Pachmarhi\";\"ascii\"\n\"1261008\";\"Ottappālam\";\"main\"\n\"1261008\";\"Ottappalam\";\"ascii\"\n\"1261008\";\"Ottapalam\";\"other\"\n\"1261012\";\"Osmānābād\";\"main\"\n\"1261012\";\"Osmanabad\";\"ascii\"\n\"1261012\";\"Usmanabad\";\"other\"\n\"1261012\";\"Османабад\";\"other\"\n\"1261033\";\"Orchha\";\"main\"\n\"1261033\";\"Orchkha\";\"other\"\n\"1261033\";\"Орчха\";\"other\"\n\"1261037\";\"Oran\";\"main\"\n\"1261039\";\"Orai\";\"main\"\n\"1261045\";\"Ongole\";\"main\"\n\"1261045\";\"onkol\";\"other\"\n\"1261045\";\"ஒங்கோல்\";\"other\"\n\"1261049\";\"Omalūr\";\"main\"\n\"1261049\";\"Omalur\";\"ascii\"\n\"1261050\";\"Olpād\";\"main\"\n\"1261050\";\"Olpad\";\"ascii\"\n\"1261066\";\"Okha\";\"main\"\n\"1261066\";\"Okha Port\";\"other\"\n\"1261066\";\"Port Okha\";\"other\"\n\"1261066\";\"Оха\";\"other\"\n\"1261068\";\"Ojhar\";\"main\"\n\"1261068\";\"Ojhai\";\"other\"\n\"1261076\";\"Odugattūr\";\"main\"\n\"1261076\";\"Odugattur\";\"ascii\"\n\"1261076\";\"Odugathur\";\"other\"\n\"1261077\";\"Odlābāri\";\"main\"\n\"1261077\";\"Odlabari\";\"ascii\"\n\"1261077\";\"Oldabari\";\"other\"\n\"1261077\";\"Oldābāri\";\"other\"\n\"1261086\";\"Obra\";\"main\"\n\"1261107\";\"Nyāmati\";\"main\"\n\"1261107\";\"Nyamati\";\"ascii\"\n\"1261107\";\"Nyamti\";\"other\"\n\"1261107\";\"Nyāmti\";\"other\"\n\"1261110\";\"Nūzvīd\";\"main\"\n\"1261110\";\"Nuzvid\";\"ascii\"\n\"1261120\";\"Nūrpur Kalān\";\"main\"\n\"1261120\";\"Nurpur Kalan\";\"ascii\"\n\"1261120\";\"Nurpur\";\"other\"\n\"1261120\";\"Nūrpur\";\"other\"\n\"1261122\";\"Nūrpur\";\"main\"\n\"1261122\";\"Nurpur\";\"ascii\"\n\"1261124\";\"Nūrmahal\";\"main\"\n\"1261124\";\"Nurmahal\";\"ascii\"\n\"1261142\";\"Numāligarh\";\"main\"\n\"1261142\";\"Numaligarh\";\"ascii\"\n\"1261145\";\"Nūh\";\"main\"\n\"1261145\";\"Nuh\";\"ascii\"\n\"1261173\";\"North Vanlaiphai\";\"main\"\n\"1261173\";\"Vanlaiphai\";\"other\"\n\"1261181\";\"North Lakhimpur\";\"main\"\n\"1261181\";\"Lakhimpur\";\"other\"\n\"1261186\";\"North Guwāhāti\";\"main\"\n\"1261186\";\"North Guwahati\";\"ascii\"\n\"1261186\";\"North Gauhati\";\"other\"\n\"1261186\";\"North Gauhāti\";\"other\"\n\"1261205\";\"Nongstoin\";\"main\"\n\"1261208\";\"Nongpoh\";\"main\"\n\"1261227\";\"Nokha\";\"main\"\n\"1261227\";\"Noka\";\"other\"\n\"1261227\";\"Nokha mani\";\"other\"\n\"1261227\";\"Nokhamandi\";\"other\"\n\"1261234\";\"Nohar\";\"main\"\n\"1261234\";\"Nohor Tehsils\";\"other\"\n\"1261242\";\"Noāmundi\";\"main\"\n\"1261242\";\"Noamundi\";\"ascii\"\n\"1261257\";\"Nizāmābād\";\"main\"\n\"1261257\";\"Nizamabad\";\"ascii\"\n\"1261258\";\"Nizāmābād\";\"main\"\n\"1261258\";\"Nizamabad\";\"ascii\"\n\"1261262\";\"Niwāri\";\"main\"\n\"1261262\";\"Niwari\";\"ascii\"\n\"1261283\";\"Nirsā\";\"main\"\n\"1261283\";\"Nirsa\";\"ascii\"\n\"1261285\";\"Nirmāli\";\"main\"\n\"1261285\";\"Nirmali\";\"ascii\"\n\"1261288\";\"Nirmal\";\"main\"\n\"1261288\";\"Nirmala\";\"other\"\n\"1261288\";\"Нирмала\";\"other\"\n\"1261309\";\"Nipāni\";\"main\"\n\"1261309\";\"Nipani\";\"ascii\"\n\"1261309\";\"Nimpani\";\"other\"\n\"1261342\";\"Nīm ka Thāna\";\"main\"\n\"1261342\";\"Nim ka Thana\";\"ascii\"\n\"1261369\";\"Nīmbāhera\";\"main\"\n\"1261369\";\"Nimbahera\";\"ascii\"\n\"1261375\";\"Nimāparha\";\"main\"\n\"1261375\";\"Nimaparha\";\"ascii\"\n\"1261375\";\"Nimapara\";\"other\"\n\"1261375\";\"Nimapāra\";\"other\"\n\"1261378\";\"Nīmāj\";\"main\"\n\"1261378\";\"Nimaj\";\"ascii\"\n\"1261382\";\"Nilokheri\";\"main\"\n\"1261382\";\"Nilokeri\";\"other\"\n\"1261382\";\"Nilokhera\";\"other\"\n\"1261382\";\"Nilu Kheri\";\"other\"\n\"1261382\";\"Nīlū Kheri\";\"other\"\n\"1261394\";\"Nīleshwar\";\"main\"\n\"1261394\";\"Nileshwar\";\"ascii\"\n\"1261396\";\"Nilanga\";\"main\"\n\"1261401\";\"Nilakkottai\";\"main\"\n\"1261401\";\"Nilakkottai-Madura\";\"other\"\n\"1261402\";\"Nīlgiri\";\"main\"\n\"1261402\";\"Nilgiri\";\"ascii\"\n\"1261402\";\"Nilagiri\";\"other\"\n\"1261402\";\"Raj Nilgiri\";\"other\"\n\"1261415\";\"Nihtaur\";\"main\"\n\"1261444\";\"Nīdāmāngalam\";\"main\"\n\"1261444\";\"Nidamangalam\";\"ascii\"\n\"1261446\";\"Nidadavole\";\"main\"\n\"1261446\";\"Nidadavol\";\"other\"\n\"1261451\";\"Nichlaul\";\"main\"\n\"1261470\";\"Neyyāttinkara\";\"main\"\n\"1261470\";\"Neyyattinkara\";\"ascii\"\n\"1261470\";\"Neyattinkara\";\"other\"\n\"1261481\";\"New Delhi\";\"main\"\n\"1261481\";\"Dellium Novum\";\"other\"\n\"1261481\";\"Dilli\";\"other\"\n\"1261481\";\"Dillí\";\"other\"\n\"1261481\";\"N'ju-Deli\";\"other\"\n\"1261481\";\"Neo Delchi\";\"other\"\n\"1261481\";\"Neu-Delhi\";\"other\"\n\"1261481\";\"Nev Deli\";\"other\"\n\"1261481\";\"New Dilli\";\"other\"\n\"1261481\";\"Nju Delkhi\";\"other\"\n\"1261481\";\"Nov-Delhio\";\"other\"\n\"1261481\";\"Nova Delhi\";\"other\"\n\"1261481\";\"Nova Deli\";\"other\"\n\"1261481\";\"Nova Deli - na'i dilli\";\"other\"\n\"1261481\";\"Nova Deli - नई दिल्ली\";\"other\"\n\"1261481\";\"Nova-Delhi\";\"other\"\n\"1261481\";\"Nove Dilli\";\"other\"\n\"1261481\";\"Nové Dillí\";\"other\"\n\"1261481\";\"Nueba Deli\";\"other\"\n\"1261481\";\"Nueva Delhi\";\"other\"\n\"1261481\";\"Nuova Delhi\";\"other\"\n\"1261481\";\"Nyja Deli\";\"other\"\n\"1261481\";\"Nyu Deli\";\"other\"\n\"1261481\";\"Nòva Delhi\";\"other\"\n\"1261481\";\"Nýja Delí\";\"other\"\n\"1261481\";\"Yeni Delhi\";\"other\"\n\"1261481\";\"na'i dilli\";\"other\"\n\"1261481\";\"naya dilli\";\"other\"\n\"1261481\";\"niu-deli\";\"other\"\n\"1261481\";\"niwde li\";\"other\"\n\"1261481\";\"nyudelli\";\"other\"\n\"1261481\";\"nyuderi\";\"other\"\n\"1261481\";\"nyw dlhy\";\"other\"\n\"1261481\";\"nywdlhy\";\"other\"\n\"1261481\";\"putu tilli\";\"other\"\n\"1261481\";\"xin de li\";\"other\"\n\"1261481\";\"Νέο Δελχί\";\"other\"\n\"1261481\";\"Њу Делхи\";\"other\"\n\"1261481\";\"Нев Дели\";\"other\"\n\"1261481\";\"Нью-Дели\";\"other\"\n\"1261481\";\"Նյու Դելի\";\"other\"\n\"1261481\";\"ניו דלהי\";\"other\"\n\"1261481\";\"نيودلهي\";\"other\"\n\"1261481\";\"नई दिल्ली\";\"other\"\n\"1261481\";\"নয়া দিল্লী\";\"other\"\n\"1261481\";\"புது தில்லி\";\"other\"\n\"1261481\";\"นิวเดลี\";\"other\"\n\"1261481\";\"ནེའུ་དིལ་ལིའི\";\"other\"\n\"1261481\";\"ნიუ-დელი\";\"other\"\n\"1261481\";\"ኒው ዴሊ\";\"other\"\n\"1261481\";\"ニューデリー\";\"other\"\n\"1261481\";\"新德里\";\"other\"\n\"1261481\";\"뉴델리\";\"other\"\n\"1261497\";\"Netarhāt\";\"main\"\n\"1261497\";\"Netarhat\";\"ascii\"\n\"1261497\";\"Neturhat\";\"other\"\n\"1261497\";\"Neturhāt\";\"other\"\n\"1261512\";\"Neral\";\"main\"\n\"1261517\";\"Nepa Nagar\";\"main\"\n\"1261529\";\"Nellore\";\"main\"\n\"1261532\";\"Nellikkuppam\";\"main\"\n\"1261532\";\"Nellikuppami\";\"other\"\n\"1261539\";\"Nelamangala\";\"main\"\n\"1261553\";\"Nedumangād\";\"main\"\n\"1261553\";\"Nedumangad\";\"ascii\"\n\"1261563\";\"Nāzirā\";\"main\"\n\"1261563\";\"Nazira\";\"ascii\"\n\"1261567\";\"Nāyudupeta\";\"main\"\n\"1261567\";\"Nayudupeta\";\"ascii\"\n\"1261567\";\"Nayudupet\";\"other\"\n\"1261580\";\"Nayāgarh\";\"main\"\n\"1261580\";\"Nayagarh\";\"ascii\"\n\"1261588\";\"Naya Bāzār\";\"main\"\n\"1261588\";\"Naya Bazar\";\"ascii\"\n\"1261598\";\"Nawāshahr\";\"main\"\n\"1261598\";\"Nawashahr\";\"ascii\"\n\"1261607\";\"Nawānshahr\";\"main\"\n\"1261607\";\"Nawanshahr\";\"ascii\"\n\"1261613\";\"Nawalgarh\";\"main\"\n\"1261614\";\"Nawai\";\"main\"\n\"1261631\";\"Nawāda\";\"main\"\n\"1261631\";\"Nawada\";\"ascii\"\n\"1261638\";\"Nawābganj\";\"main\"\n\"1261638\";\"Nawabganj\";\"ascii\"\n\"1261638\";\"Kanpur Nawabganj\";\"other\"\n\"1261639\";\"Nawābganj\";\"main\"\n\"1261639\";\"Nawabganj\";\"ascii\"\n\"1261641\";\"Nawābganj\";\"main\"\n\"1261641\";\"Nawabganj\";\"ascii\"\n\"1261641\";\"Nawabgang\";\"other\"\n\"1261642\";\"Nawābganj\";\"main\"\n\"1261642\";\"Nawabganj\";\"ascii\"\n\"1261647\";\"Nāwa\";\"main\"\n\"1261647\";\"Nawa\";\"ascii\"\n\"1261660\";\"Navelim\";\"main\"\n\"1261667\";\"Navalgund\";\"main\"\n\"1261669\";\"Navadwīp\";\"main\"\n\"1261669\";\"Navadwip\";\"ascii\"\n\"1261669\";\"Nabadurip\";\"other\"\n\"1261669\";\"Nabadwip\";\"other\"\n\"1261669\";\"Nadia\";\"other\"\n\"1261669\";\"Navadvip\";\"other\"\n\"1261669\";\"Навадвип\";\"other\"\n\"1261672\";\"Nautanwa\";\"main\"\n\"1261672\";\"Nautanwa Bazar\";\"other\"\n\"1261696\";\"Naugachhia\";\"main\"\n\"1261696\";\"Naugachia\";\"other\"\n\"1261704\";\"Nāttarasankottai\";\"main\"\n\"1261704\";\"Nattarasankottai\";\"ascii\"\n\"1261704\";\"Nattarasankotal\";\"other\"\n\"1261705\";\"Nattam\";\"main\"\n\"1261705\";\"Nuttam\";\"other\"\n\"1261711\";\"Nāthdwāra\";\"main\"\n\"1261711\";\"Nathdwara\";\"ascii\"\n\"1261711\";\"Nathwara\";\"other\"\n\"1261721\";\"Nasrullahganj\";\"main\"\n\"1261721\";\"Nasrullaganj\";\"other\"\n\"1261722\";\"Nāsriganj\";\"main\"\n\"1261722\";\"Nasriganj\";\"ascii\"\n\"1261722\";\"Nasriganji\";\"other\"\n\"1261726\";\"Nāspur\";\"main\"\n\"1261726\";\"Naspur\";\"ascii\"\n\"1261727\";\"Nasīrābād\";\"main\"\n\"1261727\";\"Nasirabad\";\"ascii\"\n\"1261731\";\"Nāsik\";\"main\"\n\"1261731\";\"Nasik\";\"ascii\"\n\"1261736\";\"Narwar\";\"main\"\n\"1261739\";\"Narwāna\";\"main\"\n\"1261739\";\"Narwana\";\"ascii\"\n\"1261739\";\"Narwanal\";\"other\"\n\"1261748\";\"Narsīpatnam\";\"main\"\n\"1261748\";\"Narsipatnam\";\"ascii\"\n\"1261750\";\"Nārsingi\";\"main\"\n\"1261750\";\"Narsingi\";\"ascii\"\n\"1261752\";\"Narsinghgarh\";\"main\"\n\"1261754\";\"Narsimhapur\";\"main\"\n\"1261754\";\"Narsimahpur\";\"other\"\n\"1261754\";\"Narsinghpur\";\"other\"\n\"1261768\";\"Naroda\";\"main\"\n\"1261768\";\"Narora\";\"other\"\n\"1261771\";\"Nārnaund\";\"main\"\n\"1261771\";\"Narnaund\";\"ascii\"\n\"1261772\";\"Nārnaul\";\"main\"\n\"1261772\";\"Narnaul\";\"ascii\"\n\"1261800\";\"Nargund\";\"main\"\n\"1261806\";\"Narendranagar\";\"main\"\n\"1261810\";\"Naregal\";\"main\"\n\"1261823\";\"Nārāyanpet\";\"main\"\n\"1261823\";\"Narayanpet\";\"ascii\"\n\"1261828\";\"Nārāyangarh\";\"main\"\n\"1261828\";\"Narayangarh\";\"ascii\"\n\"1261828\";\"Naraingarh\";\"other\"\n\"1261829\";\"Nārāyangarh\";\"main\"\n\"1261829\";\"Narayangarh\";\"ascii\"\n\"1261832\";\"Nārāyanavanam\";\"main\"\n\"1261832\";\"Narayanavanam\";\"ascii\"\n\"1261835\";\"Nāravārikuppam\";\"main\"\n\"1261835\";\"Naravarikuppam\";\"ascii\"\n\"1261835\";\"Naravanikuppam\";\"other\"\n\"1261835\";\"Naravānikuppam\";\"other\"\n\"1261837\";\"Naraura\";\"main\"\n\"1261839\";\"Narauli\";\"main\"\n\"1261844\";\"Narasingāpuram\";\"main\"\n\"1261844\";\"Narasingapuram\";\"ascii\"\n\"1261847\";\"Narasimharājapura\";\"main\"\n\"1261847\";\"Narasimharajapura\";\"ascii\"\n\"1261848\";\"Narasaraopet\";\"main\"\n\"1261852\";\"Narasapur\";\"main\"\n\"1261853\";\"Narasannapeta\";\"main\"\n\"1261853\";\"Narsannapet\";\"other\"\n\"1261871\";\"Naraini\";\"main\"\n\"1261872\";\"Naraina\";\"main\"\n\"1261882\";\"Napāsar\";\"main\"\n\"1261882\";\"Napasar\";\"ascii\"\n\"1261901\";\"Nānpāra\";\"main\"\n\"1261901\";\"Nanpara\";\"ascii\"\n\"1261906\";\"Nannilam\";\"main\"\n\"1261910\";\"Nanjangūd\";\"main\"\n\"1261910\";\"Nanjangud\";\"ascii\"\n\"1261910\";\"Nanjangud Town\";\"other\"\n\"1261911\";\"Nānguneri\";\"main\"\n\"1261911\";\"Nanguneri\";\"ascii\"\n\"1261913\";\"Nāngloi Jāt\";\"main\"\n\"1261913\";\"Nangloi Jat\";\"ascii\"\n\"1261913\";\"Nangloi\";\"other\"\n\"1261915\";\"Nangavalli\";\"main\"\n\"1261915\";\"Nangavelli\";\"other\"\n\"1261922\";\"Nāngal\";\"main\"\n\"1261922\";\"Nangal\";\"ascii\"\n\"1261922\";\"Нангал\";\"other\"\n\"1261927\";\"Nandyāl\";\"main\"\n\"1261927\";\"Nandyal\";\"ascii\"\n\"1261927\";\"Nandial\";\"other\"\n\"1261927\";\"Nandyala\";\"other\"\n\"1261927\";\"Nandyāla\";\"other\"\n\"1261931\";\"Nandurbār\";\"main\"\n\"1261931\";\"Nandurbar\";\"ascii\"\n\"1261932\";\"Nāndūra\";\"main\"\n\"1261932\";\"Nandura\";\"ascii\"\n\"1261932\";\"Nandur Buzruk\";\"other\"\n\"1261932\";\"Nandura Buzruk\";\"other\"\n\"1261932\";\"Nāndūr Buzruk\";\"other\"\n\"1261932\";\"Nāndūra Buzruk\";\"other\"\n\"1261957\";\"Nandikotkūr\";\"main\"\n\"1261957\";\"Nandikotkur\";\"ascii\"\n\"1261960\";\"Nandigāma\";\"main\"\n\"1261960\";\"Nandigama\";\"ascii\"\n\"1261968\";\"Nandgaon\";\"main\"\n\"1261971\";\"Nāndgaon\";\"main\"\n\"1261971\";\"Nandgaon\";\"ascii\"\n\"1261998\";\"Nanauta\";\"main\"\n\"1261998\";\"Phuta Shahr\";\"other\"\n\"1262013\";\"Nāmrup\";\"main\"\n\"1262013\";\"Namrup\";\"ascii\"\n\"1262020\";\"Namli\";\"main\"\n\"1262029\";\"Namchi\";\"main\"\n\"1262032\";\"Nambutalai\";\"main\"\n\"1262034\";\"Nambiyūr\";\"main\"\n\"1262034\";\"Nambiyur\";\"ascii\"\n\"1262039\";\"Nāmakkal\";\"main\"\n\"1262039\";\"Namakkal\";\"ascii\"\n\"1262040\";\"Nāmagiripettai\";\"main\"\n\"1262040\";\"Namagiripettai\";\"ascii\"\n\"1262040\";\"Namagiripetai\";\"other\"\n\"1262062\";\"Naliya\";\"main\"\n\"1262065\";\"Nalhāti\";\"main\"\n\"1262065\";\"Nalhati\";\"ascii\"\n\"1262067\";\"Nalgonda\";\"main\"\n\"1262067\";\"nalagonda jila\";\"other\"\n\"1262067\";\"nalgonda\";\"other\"\n\"1262067\";\"nalkonta\";\"other\"\n\"1262067\";\"Налгонда\";\"other\"\n\"1262067\";\"नालगोंडा जिला\";\"other\"\n\"1262067\";\"நல்கொண்டா\";\"other\"\n\"1262067\";\"నల్గొండ\";\"other\"\n\"1262073\";\"Naldurg\";\"main\"\n\"1262073\";\"Naldrug\";\"other\"\n\"1262083\";\"Nālāgarh\";\"main\"\n\"1262083\";\"Nalagarh\";\"ascii\"\n\"1262089\";\"Nakūr\";\"main\"\n\"1262089\";\"Nakur\";\"ascii\"\n\"1262097\";\"Nakodar\";\"main\"\n\"1262109\";\"Najībābād\";\"main\"\n\"1262109\";\"Najibabad\";\"ascii\"\n\"1262109\";\"Najibabab\";\"other\"\n\"1262109\";\"Najībābāb\";\"other\"\n\"1262115\";\"Nainwa\";\"main\"\n\"1262115\";\"Naenwa\";\"other\"\n\"1262116\";\"Nainpur\";\"main\"\n\"1262117\";\"Naini Tāl\";\"main\"\n\"1262117\";\"Naini Tal\";\"ascii\"\n\"1262117\";\"Nainital\";\"other\"\n\"1262131\";\"Naihāti\";\"main\"\n\"1262131\";\"Naihati\";\"ascii\"\n\"1262134\";\"Naigarhī\";\"main\"\n\"1262134\";\"Naigarhi\";\"ascii\"\n\"1262134\";\"Niagurhi\";\"other\"\n\"1262140\";\"Nahorkatiya\";\"main\"\n\"1262140\";\"Naharkativa\";\"other\"\n\"1262140\";\"Naharkatiya\";\"other\"\n\"1262151\";\"Nāhan\";\"main\"\n\"1262151\";\"Nahan\";\"ascii\"\n\"1262162\";\"Nagrota\";\"main\"\n\"1262168\";\"Nagrām\";\"main\"\n\"1262168\";\"Nagram\";\"ascii\"\n\"1262180\";\"Nāgpur\";\"main\"\n\"1262180\";\"Nagpur\";\"ascii\"\n\"1262180\";\"Ajni\";\"other\"\n\"1262180\";\"Nagpore\";\"other\"\n\"1262180\";\"Nagpuras\";\"other\"\n\"1262180\";\"nagapura\";\"other\"\n\"1262180\";\"nagupuru\";\"other\"\n\"1262180\";\"nakpur\";\"other\"\n\"1262180\";\"Нагпур\";\"other\"\n\"1262180\";\"नागपुर\";\"other\"\n\"1262180\";\"নাগপুর\";\"other\"\n\"1262180\";\"நாக்பூர்\";\"other\"\n\"1262180\";\"ナーグプル\";\"other\"\n\"1262183\";\"Nāgothana\";\"main\"\n\"1262183\";\"Nagothana\";\"ascii\"\n\"1262183\";\"Nagothna\";\"other\"\n\"1262187\";\"Nāgod\";\"main\"\n\"1262187\";\"Nagod\";\"ascii\"\n\"1262196\";\"Nāgireddipalli\";\"main\"\n\"1262196\";\"Nagireddipalli\";\"ascii\"\n\"1262196\";\"Nagireddipalle\";\"other\"\n\"1262200\";\"Nagīna\";\"main\"\n\"1262200\";\"Nagina\";\"ascii\"\n\"1262204\";\"Nāgercoil\";\"main\"\n\"1262204\";\"Nagercoil\";\"ascii\"\n\"1262204\";\"Nagarkoil\";\"other\"\n\"1262204\";\"Nagarkovil\";\"other\"\n\"1262209\";\"Nagda\";\"main\"\n\"1262209\";\"Nagda-Dhar\";\"other\"\n\"1262216\";\"Nāgaur\";\"main\"\n\"1262216\";\"Nagaur\";\"ascii\"\n\"1262216\";\"Nagaur Marwar\";\"other\"\n\"1262230\";\"Nāgar Karnūl\";\"main\"\n\"1262230\";\"Nagar Karnul\";\"ascii\"\n\"1262230\";\"Karnul\";\"other\"\n\"1262230\";\"Karnūl\";\"other\"\n\"1262240\";\"Nagari\";\"main\"\n\"1262252\";\"Nagar\";\"main\"\n\"1262252\";\"Magar\";\"other\"\n\"1262252\";\"Naggar\";\"other\"\n\"1262252\";\"Наггар\";\"other\"\n\"1262253\";\"Nagar\";\"main\"\n\"1262260\";\"Nāgappattinam\";\"main\"\n\"1262260\";\"Nagappattinam\";\"ascii\"\n\"1262260\";\"Nagapatinam\";\"other\"\n\"1262260\";\"Nagapattinam\";\"other\"\n\"1262260\";\"Negapainttam City\";\"other\"\n\"1262260\";\"Negapatam\";\"other\"\n\"1262260\";\"Negapattinam\";\"other\"\n\"1262260\";\"nagappattinamu\";\"other\"\n\"1262260\";\"nagappattinamu xian\";\"other\"\n\"1262260\";\"nakappattinam\";\"other\"\n\"1262260\";\"நாகப்பட்டினம்\";\"other\"\n\"1262260\";\"ナーガッパッティナム\";\"other\"\n\"1262260\";\"ナーガッパッティナム県\";\"other\"\n\"1262266\";\"Nāgamangala\";\"main\"\n\"1262266\";\"Nagamangala\";\"ascii\"\n\"1262284\";\"Naduvattam\";\"main\"\n\"1262291\";\"Nadīgaon\";\"main\"\n\"1262291\";\"Nadigaon\";\"ascii\"\n\"1262292\";\"Nadiād\";\"main\"\n\"1262292\";\"Nadiad\";\"ascii\"\n\"1262292\";\"Hadiad\";\"other\"\n\"1262292\";\"Naidad\";\"other\"\n\"1262296\";\"Nādbai\";\"main\"\n\"1262296\";\"Nadbai\";\"ascii\"\n\"1262300\";\"Nādaun\";\"main\"\n\"1262300\";\"Nadaun\";\"ascii\"\n\"1262302\";\"Nādāpuram\";\"main\"\n\"1262302\";\"Nadapuram\";\"ascii\"\n\"1262302\";\"Kummankod\";\"other\"\n\"1262318\";\"Nabīnagar\";\"main\"\n\"1262318\";\"Nabinagar\";\"ascii\"\n\"1262319\";\"Nābha\";\"main\"\n\"1262319\";\"Nabha\";\"ascii\"\n\"1262321\";\"Mysore\";\"main\"\n\"1262321\";\"Kongedommet Mysore\";\"other\"\n\"1262321\";\"Kongedømmet Mysore\";\"other\"\n\"1262321\";\"Mahisur\";\"other\"\n\"1262321\";\"Mahisūr\";\"other\"\n\"1262321\";\"Maisur\";\"other\"\n\"1262321\";\"Maisūr\";\"other\"\n\"1262321\";\"Majsur\";\"other\"\n\"1262321\";\"Mysore Kiralysag\";\"other\"\n\"1262321\";\"Mysore Királyság\";\"other\"\n\"1262321\";\"Mysuru\";\"other\"\n\"1262321\";\"mai suo er\";\"other\"\n\"1262321\";\"maisura\";\"other\"\n\"1262321\";\"maisuru\";\"other\"\n\"1262321\";\"mhaisura\";\"other\"\n\"1262321\";\"Майсур\";\"other\"\n\"1262321\";\"मैसूर\";\"other\"\n\"1262321\";\"म्हैसूर\";\"other\"\n\"1262321\";\"ಮೈಸೂರು\";\"other\"\n\"1262321\";\"迈索尔\";\"other\"\n\"1262330\";\"Muzaffarpur\";\"main\"\n\"1262330\";\"Tirhoot\";\"other\"\n\"1262332\";\"Muzaffarnagar\";\"main\"\n\"1262338\";\"Mūvattupula\";\"main\"\n\"1262338\";\"Muvattupula\";\"ascii\"\n\"1262338\";\"Muvatupusha\";\"other\"\n\"1262338\";\"Muvatupuzha\";\"other\"\n\"1262346\";\"Muttupet\";\"main\"\n\"1262346\";\"Muttapet\";\"other\"\n\"1262346\";\"Mutupet\";\"other\"\n\"1262369\";\"Mustafābād\";\"main\"\n\"1262369\";\"Mustafabad\";\"ascii\"\n\"1262374\";\"Mussoorie\";\"main\"\n\"1262374\";\"Masuri\";\"other\"\n\"1262374\";\"Musoori\";\"other\"\n\"1262374\";\"Mussooree\";\"other\"\n\"1262374\";\"Mussuri\";\"other\"\n\"1262374\";\"Муссури\";\"other\"\n\"1262380\";\"Musiri\";\"main\"\n\"1262382\";\"Mushābani\";\"main\"\n\"1262382\";\"Mushabani\";\"ascii\"\n\"1262382\";\"Mosaboni\";\"other\"\n\"1262382\";\"Mosaboni Mines\";\"other\"\n\"1262382\";\"Musabani\";\"other\"\n\"1262392\";\"Musāfirkhāna\";\"main\"\n\"1262392\";\"Musafirkhana\";\"ascii\"\n\"1262395\";\"Murwāra\";\"main\"\n\"1262395\";\"Murwara\";\"ascii\"\n\"1262395\";\"Katni\";\"other\"\n\"1262403\";\"Murud\";\"main\"\n\"1262403\";\"Janjira\";\"other\"\n\"1262403\";\"Marad\";\"other\"\n\"1262403\";\"Murad\";\"other\"\n\"1262410\";\"Murtajāpur\";\"main\"\n\"1262410\";\"Murtajapur\";\"ascii\"\n\"1262410\";\"Murtazapur\";\"other\"\n\"1262410\";\"Murtazāpur\";\"other\"\n\"1262412\";\"Murshidābād\";\"main\"\n\"1262412\";\"Murshidabad\";\"ascii\"\n\"1262412\";\"Муршидабад\";\"other\"\n\"1262414\";\"Mursān\";\"main\"\n\"1262414\";\"Mursan\";\"ascii\"\n\"1262419\";\"Murlīganj\";\"main\"\n\"1262419\";\"Murliganj\";\"ascii\"\n\"1262426\";\"Morinda\";\"main\"\n\"1262426\";\"Murinda\";\"other\"\n\"1262426\";\"Mūrinda\";\"other\"\n\"1262426\";\"Моринда\";\"other\"\n\"1262429\";\"Muri\";\"main\"\n\"1262435\";\"Murgūd\";\"main\"\n\"1262435\";\"Murgud\";\"ascii\"\n\"1262444\";\"Murbād\";\"main\"\n\"1262444\";\"Murbad\";\"ascii\"\n\"1262452\";\"Muragācha\";\"main\"\n\"1262452\";\"Muragacha\";\"ascii\"\n\"1262452\";\"Muragachha\";\"other\"\n\"1262453\";\"Murādnagar\";\"main\"\n\"1262453\";\"Muradnagar\";\"ascii\"\n\"1262453\";\"Muravnagar\";\"other\"\n\"1262463\";\"Munnar\";\"main\"\n\"1262463\";\"Муннар\";\"other\"\n\"1262469\";\"Munirābād\";\"main\"\n\"1262469\";\"Munirabad\";\"ascii\"\n\"1262482\";\"Munger\";\"main\"\n\"1262482\";\"Manger\";\"other\"\n\"1262482\";\"Monghyr\";\"other\"\n\"1262482\";\"Мангер\";\"other\"\n\"1262484\";\"Mungeli\";\"main\"\n\"1262485\";\"Mungaolī\";\"main\"\n\"1262485\";\"Mungaoli\";\"ascii\"\n\"1262491\";\"Mūndwa\";\"main\"\n\"1262491\";\"Mundwa\";\"ascii\"\n\"1262497\";\"Mundra\";\"main\"\n\"1262504\";\"Mundi\";\"main\"\n\"1262510\";\"Mundgod\";\"main\"\n\"1262516\";\"Mundargi\";\"main\"\n\"1262534\";\"Multai\";\"main\"\n\"1262546\";\"Mūlki\";\"main\"\n\"1262546\";\"Mulki\";\"ascii\"\n\"1262553\";\"Mulgund\";\"main\"\n\"1262562\";\"Mulbāgal\";\"main\"\n\"1262562\";\"Mulbagal\";\"ascii\"\n\"1262566\";\"Mulappilangād\";\"main\"\n\"1262566\";\"Mulappilangad\";\"ascii\"\n\"1262566\";\"Mulappilangal\";\"other\"\n\"1262566\";\"Muzhappilangad\";\"other\"\n\"1262567\";\"Mūlanūr\";\"main\"\n\"1262567\";\"Mulanur\";\"ascii\"\n\"1262574\";\"Mūl\";\"main\"\n\"1262574\";\"Mul\";\"ascii\"\n\"1262578\";\"Muktsar\";\"main\"\n\"1262591\";\"Mukher\";\"main\"\n\"1262596\";\"Mukeriān\";\"main\"\n\"1262596\";\"Mukerian\";\"ascii\"\n\"1262624\";\"Muhammadābād\";\"main\"\n\"1262624\";\"Muhammadabad\";\"ascii\"\n\"1262625\";\"Muhammadābād\";\"main\"\n\"1262625\";\"Muhammadabad\";\"ascii\"\n\"1262626\";\"Muhammadābād\";\"main\"\n\"1262626\";\"Muhammadabad\";\"ascii\"\n\"1262632\";\"Mugma\";\"main\"\n\"1262634\";\"Mughal Sarāi\";\"main\"\n\"1262634\";\"Mughal Sarai\";\"ascii\"\n\"1262634\";\"Moghal Sarai\";\"other\"\n\"1262634\";\"Moghulserdai\";\"other\"\n\"1262648\";\"Mudukulattūr\";\"main\"\n\"1262648\";\"Mudukulattur\";\"ascii\"\n\"1262651\";\"Mudkhed\";\"main\"\n\"1262658\";\"Mudigere\";\"main\"\n\"1262658\";\"Mudgere\";\"other\"\n\"1262663\";\"Mudhol\";\"main\"\n\"1262664\";\"Mudgal\";\"main\"\n\"1262669\";\"Muddebihāl\";\"main\"\n\"1262669\";\"Muddebihal\";\"ascii\"\n\"1262672\";\"Mūdbidri\";\"main\"\n\"1262672\";\"Mudbidri\";\"ascii\"\n\"1262672\";\"Mudabidri\";\"other\"\n\"1262678\";\"Mubārakpur\";\"main\"\n\"1262678\";\"Mubarakpur\";\"ascii\"\n\"1262678\";\"Azamgarh\";\"other\"\n\"1262689\";\"Mowār\";\"main\"\n\"1262689\";\"Mowar\";\"ascii\"\n\"1262710\";\"Motīhāri\";\"main\"\n\"1262710\";\"Motihari\";\"ascii\"\n\"1262710\";\"Motihan\";\"other\"\n\"1262715\";\"Moth\";\"main\"\n\"1262734\";\"Morwa\";\"main\"\n\"1262734\";\"Morva\";\"other\"\n\"1262740\";\"Morsi\";\"main\"\n\"1262768\";\"Morjim\";\"main\"\n\"1262768\";\"Mordzhim\";\"other\"\n\"1262768\";\"Морджим\";\"other\"\n\"1262771\";\"Morena\";\"main\"\n\"1262771\";\"Pech Morena\";\"other\"\n\"1262771\";\"Морена\";\"other\"\n\"1262775\";\"Morbi\";\"main\"\n\"1262775\";\"Morvi\";\"other\"\n\"1262783\";\"Morār\";\"main\"\n\"1262783\";\"Morar\";\"ascii\"\n\"1262787\";\"Morānha\";\"main\"\n\"1262787\";\"Moranha\";\"ascii\"\n\"1262787\";\"Moran\";\"other\"\n\"1262787\";\"Morān\";\"other\"\n\"1262794\";\"Moram\";\"main\"\n\"1262801\";\"Morādābād\";\"main\"\n\"1262801\";\"Moradabad\";\"ascii\"\n\"1262801\";\"Muradabad\";\"other\"\n\"1262801\";\"Murādābād\";\"other\"\n\"1262801\";\"Морадабад\";\"other\"\n\"1262824\";\"Mon\";\"main\"\n\"1262843\";\"Mokokchūng\";\"main\"\n\"1262843\";\"Mokokchung\";\"ascii\"\n\"1262843\";\"Mkokchung\";\"other\"\n\"1262843\";\"Mokokshung\";\"other\"\n\"1262852\";\"Mokāma\";\"main\"\n\"1262852\";\"Mokama\";\"ascii\"\n\"1262852\";\"Mokamah\";\"other\"\n\"1262852\";\"Mokameh\";\"other\"\n\"1262863\";\"Moirāng\";\"main\"\n\"1262863\";\"Moirang\";\"ascii\"\n\"1262873\";\"Mohpa\";\"main\"\n\"1262884\";\"Mohiuddinnagar\";\"main\"\n\"1262884\";\"Mohiuddinagar\";\"other\"\n\"1262891\";\"Mohgaon\";\"main\"\n\"1262905\";\"Mohanūr\";\"main\"\n\"1262905\";\"Mohanur\";\"ascii\"\n\"1262909\";\"Mohanpur\";\"main\"\n\"1262928\";\"Mohān\";\"main\"\n\"1262928\";\"Mohan\";\"ascii\"\n\"1262951\";\"Moga\";\"main\"\n\"1262951\";\"Mogu\";\"other\"\n\"1262951\";\"Могу\";\"other\"\n\"1262958\";\"Modāsa\";\"main\"\n\"1262958\";\"Modasa\";\"ascii\"\n\"1262958\";\"Modassa\";\"other\"\n\"1262988\";\"Misrikh\";\"main\"\n\"1262995\";\"Mirzāpur\";\"main\"\n\"1262995\";\"Mirzapur\";\"ascii\"\n\"1262995\";\"Mirzapur-cum-Vindhyachal\";\"other\"\n\"1262995\";\"Mirzarpur\";\"other\"\n\"1262995\";\"Мирзапур\";\"other\"\n\"1263010\";\"Mirik\";\"main\"\n\"1263012\";\"Miriālgūda\";\"main\"\n\"1263012\";\"Mirialguda\";\"ascii\"\n\"1263012\";\"Miriyalguda\";\"other\"\n\"1263012\";\"Miryalguda\";\"other\"\n\"1263015\";\"Mīrganj\";\"main\"\n\"1263015\";\"Mirganj\";\"ascii\"\n\"1263021\";\"Mīrānpur Katra\";\"main\"\n\"1263021\";\"Miranpur Katra\";\"ascii\"\n\"1263022\";\"Mīrānpur\";\"main\"\n\"1263022\";\"Miranpur\";\"ascii\"\n\"1263034\";\"Mīnjūr\";\"main\"\n\"1263034\";\"Minjur\";\"ascii\"\n\"1263051\";\"Milak\";\"main\"\n\"1263051\";\"Милак\";\"other\"\n\"1263057\";\"Mihona\";\"main\"\n\"1263057\";\"Mehona\";\"other\"\n\"1263083\";\"Mhāsvād\";\"main\"\n\"1263083\";\"Mhasvad\";\"ascii\"\n\"1263087\";\"Mhasla\";\"main\"\n\"1263087\";\"Mhusla\";\"other\"\n\"1263101\";\"Mettūr\";\"main\"\n\"1263101\";\"Mettur\";\"ascii\"\n\"1263103\";\"Mettuppālaiyam\";\"main\"\n\"1263103\";\"Mettuppalaiyam\";\"ascii\"\n\"1263103\";\"Mettupalaiyam\";\"other\"\n\"1263103\";\"Mettupalayam-Coimbatore\";\"other\"\n\"1263103\";\"Mettupālaiyam\";\"other\"\n\"1263104\";\"Mettuppālaiyam\";\"main\"\n\"1263104\";\"Mettuppalaiyam\";\"ascii\"\n\"1263104\";\"Mettupalayam\";\"other\"\n\"1263120\";\"Merta\";\"main\"\n\"1263142\";\"Mendarda\";\"main\"\n\"1263148\";\"Memāri\";\"main\"\n\"1263148\";\"Memari\";\"ascii\"\n\"1263151\";\"Melūr\";\"main\"\n\"1263151\";\"Melur\";\"ascii\"\n\"1263151\";\"Mailore\";\"other\"\n\"1263152\";\"Melukote\";\"main\"\n\"1263152\";\"Melkote\";\"other\"\n\"1263185\";\"Mehndāwal\";\"main\"\n\"1263185\";\"Mehndawal\";\"ascii\"\n\"1263185\";\"Mahdawal\";\"other\"\n\"1263185\";\"Mehdawal\";\"other\"\n\"1263189\";\"Mehnagar\";\"main\"\n\"1263195\";\"Mehekar\";\"main\"\n\"1263195\";\"Mehkar\";\"other\"\n\"1263201\";\"Meghrāj\";\"main\"\n\"1263201\";\"Meghraj\";\"ascii\"\n\"1263214\";\"Meerut\";\"main\"\n\"1263214\";\"Meerut City\";\"other\"\n\"1263214\";\"Merath\";\"other\"\n\"1263214\";\"Miratas\";\"other\"\n\"1263214\";\"meratha\";\"other\"\n\"1263214\";\"merato\";\"other\"\n\"1263214\";\"mirat\";\"other\"\n\"1263214\";\"Меерут\";\"other\"\n\"1263214\";\"मेरठ\";\"other\"\n\"1263214\";\"மீரட்\";\"other\"\n\"1263214\";\"メーラト\";\"other\"\n\"1263220\";\"Medinīpur\";\"main\"\n\"1263220\";\"Medinipur\";\"ascii\"\n\"1263220\";\"Midnapor\";\"other\"\n\"1263220\";\"Midnapore\";\"other\"\n\"1263220\";\"Midnapur\";\"other\"\n\"1263220\";\"Миднапор\";\"other\"\n\"1263230\";\"Medak\";\"main\"\n\"1263230\";\"Медак\";\"other\"\n\"1263247\";\"Māyūram\";\"main\"\n\"1263247\";\"Mayuram\";\"ascii\"\n\"1263247\";\"Mayavaram\";\"other\"\n\"1263247\";\"Mayaveram\";\"other\"\n\"1263247\";\"Māyavaram\";\"other\"\n\"1263247\";\"Māyuram\";\"other\"\n\"1263247\";\"mayilatuturai\";\"other\"\n\"1263247\";\"மயிலாடுதுறை\";\"other\"\n\"1263255\";\"Mayāng Imphāl\";\"main\"\n\"1263255\";\"Mayang Imphal\";\"ascii\"\n\"1263257\";\"Māyakonda\";\"main\"\n\"1263257\";\"Mayakonda\";\"ascii\"\n\"1263275\";\"Mawāna\";\"main\"\n\"1263275\";\"Mawana\";\"ascii\"\n\"1263280\";\"Māvūr\";\"main\"\n\"1263280\";\"Mavur\";\"ascii\"\n\"1263285\";\"Māvelikara\";\"main\"\n\"1263285\";\"Mavelikara\";\"ascii\"\n\"1263285\";\"Mavalikara\";\"other\"\n\"1263291\";\"Maurāwān\";\"main\"\n\"1263291\";\"Maurawan\";\"ascii\"\n\"1263293\";\"Maur\";\"main\"\n\"1263300\";\"Mauganj\";\"main\"\n\"1263303\";\"Maudaha\";\"main\"\n\"1263306\";\"Mau Aimma\";\"main\"\n\"1263306\";\"Mau Aima\";\"other\"\n\"1263309\";\"Mau\";\"main\"\n\"1263311\";\"Mau\";\"main\"\n\"1263324\";\"Māttūr\";\"main\"\n\"1263324\";\"Mattur\";\"ascii\"\n\"1263331\";\"Mattanūr\";\"main\"\n\"1263331\";\"Mattanur\";\"ascii\"\n\"1263364\";\"Mathura\";\"main\"\n\"1263364\";\"Matkhura\";\"other\"\n\"1263364\";\"Muttra\";\"other\"\n\"1263364\";\"Матхура\";\"other\"\n\"1263370\";\"Mātherān\";\"main\"\n\"1263370\";\"Matheran\";\"ascii\"\n\"1263384\";\"Mataundh\";\"main\"\n\"1263395\";\"Mātābhānga\";\"main\"\n\"1263395\";\"Matabhanga\";\"ascii\"\n\"1263418\";\"Masinigudi\";\"main\"\n\"1263418\";\"Masnigudi\";\"other\"\n\"1263427\";\"Masaurhi Buzurg\";\"main\"\n\"1263427\";\"Masaurhi\";\"other\"\n\"1263427\";\"Masaurki\";\"other\"\n\"1263494\";\"Marmagao\";\"main\"\n\"1263494\";\"Goa\";\"other\"\n\"1263494\";\"Marmagoa\";\"other\"\n\"1263494\";\"Marmugao\";\"other\"\n\"1263494\";\"Mermugao\";\"other\"\n\"1263494\";\"Mormugao\";\"other\"\n\"1263494\";\"Porio\";\"other\"\n\"1263494\";\"Мармагао\";\"other\"\n\"1263504\";\"Mārkāpur\";\"main\"\n\"1263504\";\"Markapur\";\"ascii\"\n\"1263522\";\"Mariāni\";\"main\"\n\"1263522\";\"Mariani\";\"ascii\"\n\"1263522\";\"Мариани\";\"other\"\n\"1263523\";\"Mariāhū\";\"main\"\n\"1263523\";\"Mariahu\";\"ascii\"\n\"1263528\";\"Marhaura\";\"main\"\n\"1263532\";\"Margherita\";\"main\"\n\"1263557\";\"Mārāndahalli\";\"main\"\n\"1263557\";\"Marandahalli\";\"ascii\"\n\"1263557\";\"Marandahally\";\"other\"\n\"1263564\";\"Marakkānam\";\"main\"\n\"1263564\";\"Marakkanam\";\"ascii\"\n\"1263564\";\"Markanum\";\"other\"\n\"1263564\";\"Merkanam\";\"other\"\n\"1263564\";\"Merkānam\";\"other\"\n\"1263567\";\"Mārahra\";\"main\"\n\"1263567\";\"Marahra\";\"ascii\"\n\"1263580\";\"Māpuca\";\"main\"\n\"1263580\";\"Mapuca\";\"ascii\"\n\"1263580\";\"Mapusa\";\"other\"\n\"1263580\";\"Мапуса\";\"other\"\n\"1263591\";\"Mānwat\";\"main\"\n\"1263591\";\"Manwat\";\"ascii\"\n\"1263591\";\"Manwath\";\"other\"\n\"1263594\";\"Mānvi\";\"main\"\n\"1263594\";\"Manvi\";\"ascii\"\n\"1263610\";\"Manthani\";\"main\"\n\"1263621\";\"Mansar\";\"main\"\n\"1263622\";\"Mānsa\";\"main\"\n\"1263622\";\"Mansa\";\"ascii\"\n\"1263623\";\"Mānsa\";\"main\"\n\"1263623\";\"Mansa\";\"ascii\"\n\"1263636\";\"Mānpur\";\"main\"\n\"1263636\";\"Manpur\";\"ascii\"\n\"1263646\";\"Manor\";\"main\"\n\"1263646\";\"Manori\";\"other\"\n\"1263646\";\"Munnar\";\"other\"\n\"1263648\";\"Manohar Thāna\";\"main\"\n\"1263648\";\"Manohar Thana\";\"ascii\"\n\"1263649\";\"Manoharpur\";\"main\"\n\"1263651\";\"Manoharpur\";\"main\"\n\"1263659\";\"Mannārgudi\";\"main\"\n\"1263659\";\"Mannargudi\";\"ascii\"\n\"1263661\";\"Mannārakkāt\";\"main\"\n\"1263661\";\"Mannarakkat\";\"ascii\"\n\"1263664\";\"Manmād\";\"main\"\n\"1263664\";\"Manmad\";\"ascii\"\n\"1263677\";\"Mankāpur\";\"main\"\n\"1263677\";\"Mankapur\";\"ascii\"\n\"1263678\";\"Mankāchar\";\"main\"\n\"1263678\";\"Mankachar\";\"ascii\"\n\"1263678\";\"Manikarchar\";\"other\"\n\"1263684\";\"Manjlegaon\";\"main\"\n\"1263684\";\"Majalgaon\";\"other\"\n\"1263684\";\"Mājalgaon\";\"other\"\n\"1263691\";\"Manjhanpur\";\"main\"\n\"1263692\";\"Manjeshwara\";\"main\"\n\"1263692\";\"Bungar Munjeshwar\";\"other\"\n\"1263692\";\"Manjeshwar\";\"other\"\n\"1263694\";\"Manjeri\";\"main\"\n\"1263715\";\"Mānikpur\";\"main\"\n\"1263715\";\"Manikpur\";\"ascii\"\n\"1263723\";\"Manihāri\";\"main\"\n\"1263723\";\"Manihari\";\"ascii\"\n\"1263730\";\"Maniar\";\"main\"\n\"1263744\";\"Mangrūl Pīr\";\"main\"\n\"1263744\";\"Mangrul Pir\";\"ascii\"\n\"1263751\";\"Māngrol\";\"main\"\n\"1263751\";\"Mangrol\";\"ascii\"\n\"1263751\";\"Kaiztori\";\"other\"\n\"1263751\";\"Kazitori\";\"other\"\n\"1263751\";\"Kāiztori\";\"other\"\n\"1263751\";\"Kāzitori\";\"other\"\n\"1263752\";\"Māngrol\";\"main\"\n\"1263752\";\"Mangrol\";\"ascii\"\n\"1263752\";\"Mungrol\";\"other\"\n\"1263752\";\"Mūngrol\";\"other\"\n\"1263761\";\"Manglaur\";\"main\"\n\"1263761\";\"Manglaur Town\";\"other\"\n\"1263764\";\"Mangawān\";\"main\"\n\"1263764\";\"Mangawan\";\"ascii\"\n\"1263776\";\"Mangan\";\"main\"\n\"1263776\";\"Mangan Bazar\";\"other\"\n\"1263776\";\"Mangang\";\"other\"\n\"1263776\";\"Mangen\";\"other\"\n\"1263776\";\"Mongon\";\"other\"\n\"1263780\";\"Mangalore\";\"main\"\n\"1263780\";\"Mangalur\";\"other\"\n\"1263780\";\"Mangaluru\";\"other\"\n\"1263780\";\"mangalora\";\"other\"\n\"1263780\";\"mangaluru\";\"other\"\n\"1263780\";\"mankalur\";\"other\"\n\"1263780\";\"Мангалуру\";\"other\"\n\"1263780\";\"মাঙ্গালোর\";\"other\"\n\"1263780\";\"மங்களூர்\";\"other\"\n\"1263780\";\"ಮಂಗಳೂರು\";\"other\"\n\"1263787\";\"Mangaldai\";\"main\"\n\"1263795\";\"Mangalam\";\"main\"\n\"1263795\";\"Mungalum\";\"other\"\n\"1263797\";\"Mangalagiri\";\"main\"\n\"1263807\";\"Maner\";\"main\"\n\"1263807\";\"Maner Sharif\";\"other\"\n\"1263807\";\"Manera\";\"other\"\n\"1263807\";\"Манера\";\"other\"\n\"1263814\";\"Mandya\";\"main\"\n\"1263814\";\"man di ya\";\"other\"\n\"1263814\";\"mandya\";\"other\"\n\"1263814\";\"ಮಂಡ್ಯ\";\"other\"\n\"1263814\";\"曼迪亚\";\"other\"\n\"1263824\";\"Māndvi\";\"main\"\n\"1263824\";\"Mandvi\";\"ascii\"\n\"1263824\";\"Cutch Mandi\";\"other\"\n\"1263824\";\"Cutch-Mandvi\";\"other\"\n\"1263824\";\"Мандви\";\"other\"\n\"1263826\";\"Māndvi\";\"main\"\n\"1263826\";\"Mandvi\";\"ascii\"\n\"1263834\";\"Mandsaur\";\"main\"\n\"1263834\";\"Mandasor\";\"other\"\n\"1263850\";\"Māndleshwar\";\"main\"\n\"1263850\";\"Mandleshwar\";\"ascii\"\n\"1263852\";\"Mandlā\";\"main\"\n\"1263852\";\"Mandla\";\"ascii\"\n\"1263852\";\"Мандла\";\"other\"\n\"1263862\";\"Mandi\";\"main\"\n\"1263879\";\"Mandāwar\";\"main\"\n\"1263879\";\"Mandawar\";\"ascii\"\n\"1263880\";\"Mandāwar\";\"main\"\n\"1263880\";\"Mandawar\";\"ascii\"\n\"1263888\";\"Mandasa\";\"main\"\n\"1263898\";\"Mandapeta\";\"main\"\n\"1263900\";\"Mandapam\";\"main\"\n\"1263911\";\"Māndalgarh\";\"main\"\n\"1263911\";\"Mandalgarh\";\"ascii\"\n\"1263917\";\"Māndal\";\"main\"\n\"1263917\";\"Mandal\";\"ascii\"\n\"1263918\";\"Māndal\";\"main\"\n\"1263918\";\"Mandal\";\"ascii\"\n\"1263936\";\"Mancherāl\";\"main\"\n\"1263936\";\"Mancheral\";\"ascii\"\n\"1263936\";\"Mancherial\";\"other\"\n\"1263937\";\"Manchar\";\"main\"\n\"1263940\";\"Manāwar\";\"main\"\n\"1263940\";\"Manawar\";\"ascii\"\n\"1263942\";\"Manavalakurichi\";\"main\"\n\"1263943\";\"Mānāvadar\";\"main\"\n\"1263943\";\"Manavadar\";\"ascii\"\n\"1263943\";\"Manawadar\";\"other\"\n\"1263949\";\"Manāsa\";\"main\"\n\"1263949\";\"Manasa\";\"ascii\"\n\"1263952\";\"Manappārai\";\"main\"\n\"1263952\";\"Manapparai\";\"ascii\"\n\"1263952\";\"Manaparai\";\"other\"\n\"1263965\";\"Mānāmadurai\";\"main\"\n\"1263965\";\"Manamadurai\";\"ascii\"\n\"1263965\";\"Manamadura\";\"other\"\n\"1263966\";\"Manalūrpettai\";\"main\"\n\"1263966\";\"Manalurpettai\";\"ascii\"\n\"1263966\";\"Manalurpet\";\"other\"\n\"1263967\";\"Manāli\";\"main\"\n\"1263967\";\"Manali\";\"ascii\"\n\"1263968\";\"Manali\";\"main\"\n\"1263983\";\"Mamit\";\"main\"\n\"1263997\";\"Māmallapuram\";\"main\"\n\"1263997\";\"Mamallapuram\";\"ascii\"\n\"1263997\";\"Mahabalipur\";\"other\"\n\"1263997\";\"Mahabalipuram\";\"other\"\n\"1263997\";\"Mahaballipuram\";\"other\"\n\"1263997\";\"Mahapalipuram\";\"other\"\n\"1263997\";\"Mahâballipuram\";\"other\"\n\"1263997\";\"Mahābalipūr\";\"other\"\n\"1263997\";\"Makhabalipuram\";\"other\"\n\"1263997\";\"Seven Pagodas\";\"other\"\n\"1263997\";\"mamallapuram\";\"other\"\n\"1263997\";\"Махабалипурам\";\"other\"\n\"1263997\";\"மாமல்லபுரம்\";\"other\"\n\"1264007\";\"Mālvan\";\"main\"\n\"1264007\";\"Malvan\";\"ascii\"\n\"1264007\";\"Malwan\";\"other\"\n\"1264010\";\"Mālūr\";\"main\"\n\"1264010\";\"Malur\";\"ascii\"\n\"1264032\";\"Mālpura\";\"main\"\n\"1264032\";\"Malpura\";\"ascii\"\n\"1264033\";\"Mālpur\";\"main\"\n\"1264033\";\"Malpur\";\"ascii\"\n\"1264037\";\"Malpe\";\"main\"\n\"1264041\";\"Māllur\";\"main\"\n\"1264041\";\"Mallur\";\"ascii\"\n\"1264047\";\"Mallasamudram\";\"main\"\n\"1264050\";\"Mallāpuram\";\"main\"\n\"1264050\";\"Mallapuram\";\"ascii\"\n\"1264050\";\"Manapuram\";\"other\"\n\"1264070\";\"Malkera\";\"main\"\n\"1264071\";\"Malkāpur\";\"main\"\n\"1264071\";\"Malkapur\";\"ascii\"\n\"1264074\";\"Malkāpur\";\"main\"\n\"1264074\";\"Malkapur\";\"ascii\"\n\"1264075\";\"Mālkāngiri\";\"main\"\n\"1264075\";\"Malkangiri\";\"ascii\"\n\"1264075\";\"Malakanagiri\";\"other\"\n\"1264075\";\"Malakangairi\";\"other\"\n\"1264075\";\"Malkanagiri\";\"other\"\n\"1264085\";\"Malīhābād\";\"main\"\n\"1264085\";\"Malihabad\";\"ascii\"\n\"1264099\";\"Malhārgarh\";\"main\"\n\"1264099\";\"Malhargarh\";\"ascii\"\n\"1264111\";\"Māler Kotla\";\"main\"\n\"1264111\";\"Maler Kotla\";\"ascii\"\n\"1264115\";\"Mālegaon\";\"main\"\n\"1264115\";\"Malegaon\";\"ascii\"\n\"1264115\";\"Малегаон\";\"other\"\n\"1264136\";\"Malavalli\";\"main\"\n\"1264138\";\"Malaut\";\"main\"\n\"1264154\";\"Malappuram\";\"main\"\n\"1264196\";\"Mākum\";\"main\"\n\"1264196\";\"Makum\";\"ascii\"\n\"1264196\";\"Makum-Junction\";\"other\"\n\"1264198\";\"Maksi\";\"main\"\n\"1264198\";\"Макси\";\"other\"\n\"1264206\";\"Makrāna\";\"main\"\n\"1264206\";\"Makrana\";\"ascii\"\n\"1264215\";\"Makhu\";\"main\"\n\"1264241\";\"Majītha\";\"main\"\n\"1264241\";\"Majitha\";\"ascii\"\n\"1264244\";\"Majholī\";\"main\"\n\"1264244\";\"Majholi\";\"ascii\"\n\"1264282\";\"Mairwa\";\"main\"\n\"1264285\";\"Mairang\";\"main\"\n\"1264292\";\"Mainpuri\";\"main\"\n\"1264297\";\"Maindargi\";\"main\"\n\"1264301\";\"Maināguri\";\"main\"\n\"1264301\";\"Mainaguri\";\"ascii\"\n\"1264310\";\"Mailāni\";\"main\"\n\"1264310\";\"Mailani\";\"ascii\"\n\"1264310\";\"Mailani Junction\";\"other\"\n\"1264310\";\"Mailāni Junction\";\"other\"\n\"1264317\";\"Maihar\";\"main\"\n\"1264322\";\"Maibong\";\"main\"\n\"1264322\";\"Maibang\";\"other\"\n\"1264323\";\"Mahwah\";\"main\"\n\"1264323\";\"Mahwa\";\"other\"\n\"1264331\";\"Mahur\";\"main\"\n\"1264344\";\"Mahudha\";\"main\"\n\"1264351\";\"Mahroni\";\"main\"\n\"1264351\";\"Mahrauni\";\"other\"\n\"1264356\";\"Maholi\";\"main\"\n\"1264359\";\"Mahoba\";\"main\"\n\"1264363\";\"Mahmūdābād\";\"main\"\n\"1264363\";\"Mahmudabad\";\"ascii\"\n\"1264368\";\"Mahīshādal\";\"main\"\n\"1264368\";\"Mahishadal\";\"ascii\"\n\"1264383\";\"Mahgawān\";\"main\"\n\"1264383\";\"Mahgawan\";\"ascii\"\n\"1264385\";\"Maheshwar\";\"main\"\n\"1264385\";\"Makheshvar\";\"other\"\n\"1264385\";\"Махешвар\";\"other\"\n\"1264395\";\"Mahendragarh\";\"main\"\n\"1264395\";\"Kanaud\";\"other\"\n\"1264395\";\"Kānaud\";\"other\"\n\"1264395\";\"Mohindargarh\";\"other\"\n\"1264398\";\"Mahemdāvād\";\"main\"\n\"1264398\";\"Mahemdavad\";\"ascii\"\n\"1264398\";\"Mehmadabad\";\"other\"\n\"1264398\";\"Mehmadābād\";\"other\"\n\"1264403\";\"Mahe\";\"main\"\n\"1264403\";\"Makh\";\"other\"\n\"1264403\";\"Mayyazhi\";\"other\"\n\"1264403\";\"Мах\";\"other\"\n\"1264407\";\"Mahbūbnagar\";\"main\"\n\"1264407\";\"Mahbubnagar\";\"ascii\"\n\"1264407\";\"Mahboobnagar\";\"other\"\n\"1264409\";\"Mahbūbābād\";\"main\"\n\"1264409\";\"Mahbubabad\";\"ascii\"\n\"1264409\";\"Mahboobabad\";\"other\"\n\"1264414\";\"Mahāsamund\";\"main\"\n\"1264414\";\"Mahasamund\";\"ascii\"\n\"1264433\";\"Mahārājganj\";\"main\"\n\"1264433\";\"Maharajganj\";\"ascii\"\n\"1264434\";\"Mahārājganj\";\"main\"\n\"1264434\";\"Maharajganj\";\"ascii\"\n\"1264435\";\"Mahārājganj\";\"main\"\n\"1264435\";\"Maharajganj\";\"ascii\"\n\"1264436\";\"Mahārājganj\";\"main\"\n\"1264436\";\"Maharajganj\";\"ascii\"\n\"1264455\";\"Maham\";\"main\"\n\"1264457\";\"Mahālingpur\";\"main\"\n\"1264457\";\"Mahalingpur\";\"ascii\"\n\"1264489\";\"Mahād\";\"main\"\n\"1264489\";\"Mahad\";\"ascii\"\n\"1264489\";\"Makhad\";\"other\"\n\"1264489\";\"Махад\";\"other\"\n\"1264490\";\"Mahāban\";\"main\"\n\"1264490\";\"Mahaban\";\"ascii\"\n\"1264491\";\"Mahābaleshwar\";\"main\"\n\"1264491\";\"Mahabaleshwar\";\"ascii\"\n\"1264491\";\"Mahabaleshvar\";\"other\"\n\"1264491\";\"Malcolm Peth\";\"other\"\n\"1264504\";\"Maghar\";\"main\"\n\"1264513\";\"Māgām\";\"main\"\n\"1264513\";\"Magam\";\"ascii\"\n\"1264514\";\"Māgadi\";\"main\"\n\"1264514\";\"Magadi\";\"ascii\"\n\"1264514\";\"Магади\";\"other\"\n\"1264520\";\"Madurāntakam\";\"main\"\n\"1264520\";\"Madurantakam\";\"ascii\"\n\"1264521\";\"Madurai\";\"main\"\n\"1264521\";\"Madura\";\"other\"\n\"1264521\";\"Maduraj\";\"other\"\n\"1264521\";\"Mathurai\";\"other\"\n\"1264521\";\"ma du lai\";\"other\"\n\"1264521\";\"mado~urai\";\"other\"\n\"1264521\";\"madura'i\";\"other\"\n\"1264521\";\"maturai\";\"other\"\n\"1264521\";\"Мадура\";\"other\"\n\"1264521\";\"মদুরাই\";\"other\"\n\"1264521\";\"மதுரை\";\"other\"\n\"1264521\";\"マドゥライ\";\"other\"\n\"1264521\";\"马杜赖\";\"other\"\n\"1264523\";\"Madukkūr\";\"main\"\n\"1264523\";\"Madukkur\";\"ascii\"\n\"1264524\";\"Madukkarai\";\"main\"\n\"1264524\";\"Madukarai\";\"other\"\n\"1264524\";\"Mudukarai\";\"other\"\n\"1264525\";\"Mādugula\";\"main\"\n\"1264525\";\"Madugula\";\"ascii\"\n\"1264527\";\"Chennai\";\"main\"\n\"1264527\";\"Cenaja\";\"other\"\n\"1264527\";\"Cenajo\";\"other\"\n\"1264527\";\"Chennai - cennai\";\"other\"\n\"1264527\";\"Chennai - சென்னை\";\"other\"\n\"1264527\";\"Madras\";\"other\"\n\"1264527\";\"Madrás\";\"other\"\n\"1264527\";\"Tamizhagam\";\"other\"\n\"1264527\";\"Tamulinadu\";\"other\"\n\"1264527\";\"cenna'i\";\"other\"\n\"1264527\";\"cennai\";\"other\"\n\"1264527\";\"chen'nai\";\"other\"\n\"1264527\";\"jin nai\";\"other\"\n\"1264527\";\"Ĉenajo\";\"other\"\n\"1264527\";\"Čenaja\";\"other\"\n\"1264527\";\"Мадрас\";\"other\"\n\"1264527\";\"Ченнаи\";\"other\"\n\"1264527\";\"चेन्नई\";\"other\"\n\"1264527\";\"চেন্নাই\";\"other\"\n\"1264527\";\"ચેન્નઈ\";\"other\"\n\"1264527\";\"சென்னை\";\"other\"\n\"1264527\";\"ಚೆನ್ನೈ\";\"other\"\n\"1264527\";\"チェンナイ\";\"other\"\n\"1264527\";\"金奈\";\"other\"\n\"1264540\";\"Madikeri\";\"main\"\n\"1264540\";\"Mercara\";\"other\"\n\"1264540\";\"Mercāra\";\"other\"\n\"1264540\";\"Merkara\";\"other\"\n\"1264543\";\"Madhyamgram\";\"main\"\n\"1264543\";\"Maddham Gram\";\"other\"\n\"1264551\";\"Madhupur\";\"main\"\n\"1264553\";\"Madhugiri\";\"main\"\n\"1264553\";\"Maddagiri\";\"other\"\n\"1264555\";\"Madhubani\";\"main\"\n\"1264555\";\"Madkhubani\";\"other\"\n\"1264555\";\"Мадхубани\";\"other\"\n\"1264567\";\"Mādhogarh\";\"main\"\n\"1264567\";\"Madhogarh\";\"ascii\"\n\"1264568\";\"Mādhogarh\";\"main\"\n\"1264568\";\"Madhogarh\";\"ascii\"\n\"1264568\";\"Madhagarh\";\"other\"\n\"1264569\";\"Mādhoganj\";\"main\"\n\"1264569\";\"Madhoganj\";\"ascii\"\n\"1264569\";\"Hardoi\";\"other\"\n\"1264570\";\"Madhipura\";\"main\"\n\"1264570\";\"Madhupura\";\"other\"\n\"1264588\";\"Madgaon\";\"main\"\n\"1264588\";\"Margao\";\"other\"\n\"1264588\";\"Margão\";\"other\"\n\"1264588\";\"Маргао\";\"other\"\n\"1264592\";\"Maddūr\";\"main\"\n\"1264592\";\"Maddur\";\"ascii\"\n\"1264614\";\"Madanpur\";\"main\"\n\"1264621\";\"Madanapalle\";\"main\"\n\"1264637\";\"Machilīpatnam\";\"main\"\n\"1264637\";\"Machilipatnam\";\"ascii\"\n\"1264637\";\"Bandar\";\"other\"\n\"1264637\";\"Kistna\";\"other\"\n\"1264637\";\"Krishna\";\"other\"\n\"1264637\";\"Masulipatam\";\"other\"\n\"1264637\";\"Masulipatnam\";\"other\"\n\"1264643\";\"Machhlīshahr\";\"main\"\n\"1264643\";\"Machhlishahr\";\"ascii\"\n\"1264644\";\"Māchhīwāra\";\"main\"\n\"1264644\";\"Machhiwara\";\"ascii\"\n\"1264647\";\"Mācherla\";\"main\"\n\"1264647\";\"Macherla\";\"ascii\"\n\"1264653\";\"Māchalpur\";\"main\"\n\"1264653\";\"Machalpur\";\"ascii\"\n\"1264653\";\"Maohalpur\";\"other\"\n\"1264653\";\"Māohalpur\";\"other\"\n\"1264688\";\"Lunglei\";\"main\"\n\"1264688\";\"Lungleh\";\"other\"\n\"1264688\";\"Lungliah\";\"other\"\n\"1264688\";\"Лунглеи\";\"other\"\n\"1264700\";\"Lūnāvāda\";\"main\"\n\"1264700\";\"Lunavada\";\"ascii\"\n\"1264728\";\"Ludhiāna\";\"main\"\n\"1264728\";\"Ludhiana\";\"ascii\"\n\"1264728\";\"Ludhijana\";\"other\"\n\"1264728\";\"Ludkhijana\";\"other\"\n\"1264728\";\"ludhi'ana\";\"other\"\n\"1264728\";\"ludhiyana\";\"other\"\n\"1264728\";\"lutiyana\";\"other\"\n\"1264728\";\"rudiana\";\"other\"\n\"1264728\";\"rudiyana\";\"other\"\n\"1264728\";\"Лудхияна\";\"other\"\n\"1264728\";\"लुधियाना\";\"other\"\n\"1264728\";\"ਲੁਧਿਆਣਾ\";\"other\"\n\"1264728\";\"லூதியானா\";\"other\"\n\"1264728\";\"ルディアーナ\";\"other\"\n\"1264728\";\"ルディヤーナー\";\"other\"\n\"1264733\";\"Lucknow\";\"main\"\n\"1264733\";\"Lakhnau\";\"other\"\n\"1264733\";\"Lakkhnau\";\"other\"\n\"1264733\";\"Laknau\";\"other\"\n\"1264733\";\"Lakno\";\"other\"\n\"1264733\";\"Lucknow City\";\"other\"\n\"1264733\";\"lakhanau\";\"other\"\n\"1264733\";\"laknau\";\"other\"\n\"1264733\";\"lei ke nao\";\"other\"\n\"1264733\";\"rakunau\";\"other\"\n\"1264733\";\"Лакхнау\";\"other\"\n\"1264733\";\"لكهنو\";\"other\"\n\"1264733\";\"لکھنؤ\";\"other\"\n\"1264733\";\"लखनऊ\";\"other\"\n\"1264733\";\"লখনৌ\";\"other\"\n\"1264733\";\"லக்னௌ\";\"other\"\n\"1264733\";\"ラクナウ\";\"other\"\n\"1264733\";\"ラクナウー\";\"other\"\n\"1264733\";\"勒克瑙\";\"other\"\n\"1264735\";\"Luckeesarai\";\"main\"\n\"1264735\";\"Lakhisarai\";\"other\"\n\"1264735\";\"Luckesserai\";\"other\"\n\"1264756\";\"Losal\";\"main\"\n\"1264757\";\"Lormi\";\"main\"\n\"1264773\";\"Loni\";\"main\"\n\"1264773\";\"Lone\";\"other\"\n\"1264773\";\"Лоне\";\"other\"\n\"1264792\";\"Londa\";\"main\"\n\"1264792\";\"Landa\";\"other\"\n\"1264793\";\"Lonāvale\";\"main\"\n\"1264793\";\"Lonavale\";\"ascii\"\n\"1264793\";\"Lonauli\";\"other\"\n\"1264793\";\"Lonavala\";\"other\"\n\"1264793\";\"Lonavla\";\"other\"\n\"1264793\";\"Lonsvala\";\"other\"\n\"1264793\";\"Lonāvla\";\"other\"\n\"1264794\";\"Lonār\";\"main\"\n\"1264794\";\"Lonar\";\"ascii\"\n\"1264816\";\"Lohogaon\";\"main\"\n\"1264829\";\"Lohāru\";\"main\"\n\"1264829\";\"Loharu\";\"ascii\"\n\"1264839\";\"Lohārdaga\";\"main\"\n\"1264839\";\"Lohardaga\";\"ascii\"\n\"1264850\";\"Lohaghāt\";\"main\"\n\"1264850\";\"Lohaghat\";\"ascii\"\n\"1264860\";\"Lodhīkhedā\";\"main\"\n\"1264860\";\"Lodhikheda\";\"ascii\"\n\"1264860\";\"Lodhikhera\";\"other\"\n\"1264860\";\"Lodhīkhera\";\"other\"\n\"1264890\";\"Lingsugūr\";\"main\"\n\"1264890\";\"Lingsugur\";\"ascii\"\n\"1264912\";\"Limbdi\";\"main\"\n\"1264912\";\"Limri\";\"other\"\n\"1264949\";\"Leteri\";\"main\"\n\"1264976\";\"Leh\";\"main\"\n\"1264976\";\"Lekh\";\"other\"\n\"1264976\";\"Len\";\"other\"\n\"1264976\";\"leha\";\"other\"\n\"1264976\";\"re\";\"other\"\n\"1264976\";\"Лех\";\"other\"\n\"1264976\";\"लेह\";\"other\"\n\"1264976\";\"レー\";\"other\"\n\"1264989\";\"Lāwar Khās\";\"main\"\n\"1264989\";\"Lawar Khas\";\"ascii\"\n\"1264989\";\"Lawar\";\"other\"\n\"1264989\";\"Lāwar\";\"other\"\n\"1265007\";\"Laungowāl\";\"main\"\n\"1265007\";\"Laungowal\";\"ascii\"\n\"1265014\";\"Lātūr\";\"main\"\n\"1265014\";\"Latur\";\"ascii\"\n\"1265014\";\"Латур\";\"other\"\n\"1265022\";\"Lāthi\";\"main\"\n\"1265022\";\"Lathi\";\"ascii\"\n\"1265022\";\"Lati\";\"other\"\n\"1265025\";\"Lātehār\";\"main\"\n\"1265025\";\"Latehar\";\"ascii\"\n\"1265041\";\"Lāsalgaon\";\"main\"\n\"1265041\";\"Lasalgaon\";\"ascii\"\n\"1265053\";\"Lār\";\"main\"\n\"1265053\";\"Lar\";\"ascii\"\n\"1265074\";\"Lansdowne\";\"main\"\n\"1265085\";\"Lānja\";\"main\"\n\"1265085\";\"Lanja\";\"ascii\"\n\"1265143\";\"Lālsot\";\"main\"\n\"1265143\";\"Lalsot\";\"ascii\"\n\"1265150\";\"Lālpur\";\"main\"\n\"1265150\";\"Lalpur\";\"ascii\"\n\"1265157\";\"Lalitpur\";\"main\"\n\"1265157\";\"Лалитпур\";\"other\"\n\"1265163\";\"Lālgudi\";\"main\"\n\"1265163\";\"Lalgudi\";\"ascii\"\n\"1265166\";\"Lālgola\";\"main\"\n\"1265166\";\"Lalgola\";\"ascii\"\n\"1265166\";\"Lalgola Ghat\";\"other\"\n\"1265169\";\"Lālganj\";\"main\"\n\"1265169\";\"Lalganj\";\"ascii\"\n\"1265170\";\"Lālganj\";\"main\"\n\"1265170\";\"Lalganj\";\"ascii\"\n\"1265190\";\"Lāla\";\"main\"\n\"1265190\";\"Lala\";\"ascii\"\n\"1265201\";\"Lakshmeshwar\";\"main\"\n\"1265201\";\"Lakshmeshvar\";\"other\"\n\"1265205\";\"Lakshettipet\";\"main\"\n\"1265205\";\"Lakhsetipet\";\"other\"\n\"1265208\";\"Laksar\";\"main\"\n\"1265220\";\"Lakhyābād\";\"main\"\n\"1265220\";\"Lakhyabad\";\"ascii\"\n\"1265220\";\"Layabad\";\"other\"\n\"1265220\";\"Loyabad\";\"other\"\n\"1265225\";\"Lakhtar\";\"main\"\n\"1265225\";\"Luctor\";\"other\"\n\"1265233\";\"Lakhnādon\";\"main\"\n\"1265233\";\"Lakhnadon\";\"ascii\"\n\"1265234\";\"Lakhnā\";\"main\"\n\"1265234\";\"Lakhna\";\"ascii\"\n\"1265239\";\"Lakhipur\";\"main\"\n\"1265240\";\"Lakhipur\";\"main\"\n\"1265242\";\"Lakhīmpur\";\"main\"\n\"1265242\";\"Lakhimpur\";\"ascii\"\n\"1265246\";\"Lākheri\";\"main\"\n\"1265246\";\"Lakheri\";\"ascii\"\n\"1265310\";\"Lāharpur\";\"main\"\n\"1265310\";\"Laharpur\";\"ascii\"\n\"1265311\";\"Lahār\";\"main\"\n\"1265311\";\"Lahar\";\"ascii\"\n\"1265323\";\"Lādwa\";\"main\"\n\"1265323\";\"Ladwa\";\"ascii\"\n\"1265331\";\"Lādnūn\";\"main\"\n\"1265331\";\"Ladnun\";\"ascii\"\n\"1265354\";\"Lachhmangarh Sīkar\";\"main\"\n\"1265354\";\"Lachhmangarh Sikar\";\"ascii\"\n\"1265354\";\"Lachhmangarh\";\"other\"\n\"1265354\";\"Lachmangarh\";\"other\"\n\"1265376\";\"Kyelang\";\"main\"\n\"1265376\";\"Kejlong\";\"other\"\n\"1265376\";\"Kyeang\";\"other\"\n\"1265376\";\"Kyelong\";\"other\"\n\"1265376\";\"Кейлонг\";\"other\"\n\"1265387\";\"Kuzhittura\";\"main\"\n\"1265387\";\"Kuzhithurai\";\"other\"\n\"1265400\";\"Kūttānallūr\";\"main\"\n\"1265400\";\"Kuttanallur\";\"ascii\"\n\"1265400\";\"Koothanallur\";\"other\"\n\"1265403\";\"Kuttālam\";\"main\"\n\"1265403\";\"Kuttalam\";\"ascii\"\n\"1265403\";\"Courtalam\";\"other\"\n\"1265403\";\"Courtallam\";\"other\"\n\"1265403\";\"Kurralam\";\"other\"\n\"1265415\";\"Kutiyāna\";\"main\"\n\"1265415\";\"Kutiyana\";\"ascii\"\n\"1265415\";\"Kuntiyana\";\"other\"\n\"1265415\";\"Kuntiyāna\";\"other\"\n\"1265415\";\"Kurtiyana\";\"other\"\n\"1265446\";\"Kushtagi\";\"main\"\n\"1265451\";\"Kushālnagar\";\"main\"\n\"1265451\";\"Kushalnagar\";\"ascii\"\n\"1265451\";\"Fraserpet\";\"other\"\n\"1265452\";\"Kushālgarh\";\"main\"\n\"1265452\";\"Kushalgarh\";\"ascii\"\n\"1265472\";\"Kurud\";\"main\"\n\"1265504\";\"Kurinjippādi\";\"main\"\n\"1265504\";\"Kurinjippadi\";\"ascii\"\n\"1265504\";\"Kurinjipadi\";\"other\"\n\"1265515\";\"Kurgunta\";\"main\"\n\"1265521\";\"Kurduvādi\";\"main\"\n\"1265521\";\"Kurduvadi\";\"ascii\"\n\"1265534\";\"Kurāra\";\"main\"\n\"1265534\";\"Kurara\";\"ascii\"\n\"1265539\";\"Kurandvād\";\"main\"\n\"1265539\";\"Kurandvad\";\"ascii\"\n\"1265555\";\"Kuppam\";\"main\"\n\"1265577\";\"Kunnattūr\";\"main\"\n\"1265577\";\"Kunnattur\";\"ascii\"\n\"1265577\";\"Kunnatur\";\"other\"\n\"1265579\";\"Kunnamkulam\";\"main\"\n\"1265579\";\"Kunamkulam\";\"other\"\n\"1265580\";\"Kunnamangalam\";\"main\"\n\"1265591\";\"Kunigal\";\"main\"\n\"1265605\";\"Kundla\";\"main\"\n\"1265607\";\"Kundgol\";\"main\"\n\"1265613\";\"Kundarkhi\";\"main\"\n\"1265613\";\"Kundarki\";\"other\"\n\"1265632\";\"Kunda\";\"main\"\n\"1265645\";\"Kumta\";\"main\"\n\"1265645\";\"Coompta\";\"other\"\n\"1265645\";\"Kumpta\";\"other\"\n\"1265646\";\"Kumsi\";\"main\"\n\"1265655\";\"Kūmher\";\"main\"\n\"1265655\";\"Kumher\";\"ascii\"\n\"1265660\";\"Kumhāri\";\"main\"\n\"1265660\";\"Kumhari\";\"ascii\"\n\"1265670\";\"Kumbhrāj\";\"main\"\n\"1265670\";\"Kumbhraj\";\"ascii\"\n\"1265683\";\"Kumbakonam\";\"main\"\n\"1265683\";\"kumpakonam\";\"other\"\n\"1265683\";\"கும்பகோணம்\";\"other\"\n\"1265697\";\"Kumaralingam\";\"main\"\n\"1265709\";\"Kulu\";\"main\"\n\"1265709\";\"Sultanpur\";\"other\"\n\"1265709\";\"Sultānpur\";\"other\"\n\"1265711\";\"Kulti\";\"main\"\n\"1265711\";\"Култи\";\"other\"\n\"1265716\";\"Kulpahār\";\"main\"\n\"1265716\";\"Kulpahar\";\"ascii\"\n\"1265723\";\"Kulittalai\";\"main\"\n\"1265734\";\"Kulgām\";\"main\"\n\"1265734\";\"Kulgam\";\"ascii\"\n\"1265740\";\"Kulattūr\";\"main\"\n\"1265740\";\"Kulattur\";\"ascii\"\n\"1265740\";\"Kulathur\";\"other\"\n\"1265752\";\"Kukshi\";\"main\"\n\"1265767\";\"Kūkatpalli\";\"main\"\n\"1265767\";\"Kukatpalli\";\"ascii\"\n\"1265767\";\"Kukatpally\";\"other\"\n\"1265773\";\"Kuju\";\"main\"\n\"1265795\";\"Kūdligi\";\"main\"\n\"1265795\";\"Kudligi\";\"ascii\"\n\"1265809\";\"Kudāl\";\"main\"\n\"1265809\";\"Kudal\";\"ascii\"\n\"1265811\";\"Kudachi\";\"main\"\n\"1265811\";\"Kudchi\";\"other\"\n\"1265815\";\"Kūd\";\"main\"\n\"1265815\";\"Kud\";\"ascii\"\n\"1265821\";\"Kuchera\";\"main\"\n\"1265821\";\"Kucher\";\"other\"\n\"1265821\";\"Кучер\";\"other\"\n\"1265828\";\"Kuchāman\";\"main\"\n\"1265828\";\"Kuchaman\";\"ascii\"\n\"1265828\";\"Kuchawan\";\"other\"\n\"1265828\";\"Kuchāwan\";\"other\"\n\"1265830\";\"Kuchaiburi\";\"main\"\n\"1265830\";\"Rairangpur\";\"other\"\n\"1265852\";\"Krishnarājpet\";\"main\"\n\"1265852\";\"Krishnarajpet\";\"ascii\"\n\"1265859\";\"Krishnanagar\";\"main\"\n\"1265859\";\"Krishnagar\";\"other\"\n\"1265859\";\"Krishnagar City\";\"other\"\n\"1265859\";\"Krishnigar\";\"other\"\n\"1265863\";\"Krishnagiri\";\"main\"\n\"1265873\";\"Calicut\";\"main\"\n\"1265873\";\"Calecute\";\"other\"\n\"1265873\";\"Kal'kutta\";\"other\"\n\"1265873\";\"Kolikod\";\"other\"\n\"1265873\";\"Kozhikkot\";\"other\"\n\"1265873\";\"Kozhikode\";\"other\"\n\"1265873\";\"karikatto\";\"other\"\n\"1265873\";\"ke ze ke de\";\"other\"\n\"1265873\";\"kealikkeat jilla\";\"other\"\n\"1265873\";\"kolikkotu\";\"other\"\n\"1265873\";\"Калькутта\";\"other\"\n\"1265873\";\"கோழிக்கோடு\";\"other\"\n\"1265873\";\"കോഴിക്കോട് ജില്ല\";\"other\"\n\"1265873\";\"കോഴിക്കോട്‌\";\"other\"\n\"1265873\";\"カリカット\";\"other\"\n\"1265873\";\"科泽科德\";\"other\"\n\"1265886\";\"Kovvūr\";\"main\"\n\"1265886\";\"Kovvur\";\"ascii\"\n\"1265886\";\"Kovur\";\"other\"\n\"1265888\";\"Kovūr\";\"main\"\n\"1265888\";\"Kovur\";\"ascii\"\n\"1265891\";\"Kovilpatti\";\"main\"\n\"1265891\";\"Koilpatti\";\"other\"\n\"1265896\";\"Kovalam\";\"main\"\n\"1265896\";\"Kovilam\";\"other\"\n\"1265896\";\"Ковалам\";\"other\"\n\"1265901\";\"Kotwa\";\"main\"\n\"1265905\";\"Kottūru\";\"main\"\n\"1265905\";\"Kotturu\";\"ascii\"\n\"1265905\";\"Kothur\";\"other\"\n\"1265905\";\"Kottur\";\"other\"\n\"1265911\";\"Kottayam\";\"main\"\n\"1265911\";\"Kotayam\";\"other\"\n\"1265923\";\"Kottapalli\";\"main\"\n\"1265933\";\"Kottaiyūr\";\"main\"\n\"1265933\";\"Kottaiyur\";\"ascii\"\n\"1265938\";\"Kottagūdem\";\"main\"\n\"1265938\";\"Kottagudem\";\"ascii\"\n\"1265938\";\"Kothagudem\";\"other\"\n\"1265954\";\"Kotra\";\"main\"\n\"1265961\";\"Kot Pūtli\";\"main\"\n\"1265961\";\"Kot Putli\";\"ascii\"\n\"1265964\";\"Kotma\";\"main\"\n\"1265972\";\"Kot Khāi\";\"main\"\n\"1265972\";\"Kot Khai\";\"ascii\"\n\"1265974\";\"Kot Ïsa Khān\";\"main\"\n\"1265974\";\"Kot Isa Khan\";\"ascii\"\n\"1265974\";\"Kot-Ise-Khan\";\"other\"\n\"1265983\";\"Kothi\";\"main\"\n\"1265996\";\"Kothāpet\";\"main\"\n\"1265996\";\"Kothapet\";\"ascii\"\n\"1265996\";\"Kagaznagar\";\"other\"\n\"1266014\";\"Kotdwāra\";\"main\"\n\"1266014\";\"Kotdwara\";\"ascii\"\n\"1266028\";\"Kotār\";\"main\"\n\"1266028\";\"Kotar\";\"ascii\"\n\"1266029\";\"Kotapārh\";\"main\"\n\"1266029\";\"Kotaparh\";\"ascii\"\n\"1266029\";\"Kotapad\";\"other\"\n\"1266029\";\"Kotapād\";\"other\"\n\"1266031\";\"Kotamangalam\";\"main\"\n\"1266038\";\"Kotagiri\";\"main\"\n\"1266049\";\"Kota\";\"main\"\n\"1266049\";\"Kotah\";\"other\"\n\"1266049\";\"Kotah City\";\"other\"\n\"1266049\";\"Кота\";\"other\"\n\"1266050\";\"Kota\";\"main\"\n\"1266050\";\"Кота\";\"other\"\n\"1266051\";\"Kota\";\"main\"\n\"1266070\";\"Kosigi\";\"main\"\n\"1266070\";\"Kesigi\";\"other\"\n\"1266070\";\"Kosgi\";\"other\"\n\"1266073\";\"Kosi\";\"main\"\n\"1266087\";\"Kosamba\";\"main\"\n\"1266092\";\"Korwai\";\"main\"\n\"1266116\";\"Koregaon\";\"main\"\n\"1266116\";\"Koregaon-Bhima\";\"other\"\n\"1266122\";\"Korba\";\"main\"\n\"1266122\";\"koraba jila\";\"other\"\n\"1266122\";\"Корба\";\"other\"\n\"1266122\";\"कोरबा जिला\";\"other\"\n\"1266124\";\"Koratla\";\"main\"\n\"1266126\";\"Koratagere\";\"main\"\n\"1266128\";\"Koraput\";\"main\"\n\"1266128\";\"Корапут\";\"other\"\n\"1266135\";\"Korampallam\";\"main\"\n\"1266141\";\"Korādih\";\"main\"\n\"1266141\";\"Koradih\";\"ascii\"\n\"1266141\";\"Koradi\";\"other\"\n\"1266144\";\"Koradāchcheri\";\"main\"\n\"1266144\";\"Koradachcheri\";\"ascii\"\n\"1266144\";\"Koradacheri\";\"other\"\n\"1266154\";\"Koppal\";\"main\"\n\"1266154\";\"Kappal\";\"other\"\n\"1266154\";\"Kopbal\";\"other\"\n\"1266155\";\"Koppa\";\"main\"\n\"1266162\";\"Kopargaon\";\"main\"\n\"1266164\";\"Kopāganj\";\"main\"\n\"1266164\";\"Kopaganj\";\"ascii\"\n\"1266178\";\"Konnūr\";\"main\"\n\"1266178\";\"Konnur\";\"ascii\"\n\"1266179\";\"Konnagar\";\"main\"\n\"1266189\";\"Konganāpuram\";\"main\"\n\"1266189\";\"Konganapuram\";\"ascii\"\n\"1266209\";\"Kondapalle\";\"main\"\n\"1266209\";\"Kondapalli\";\"other\"\n\"1266210\";\"Kondalwādi\";\"main\"\n\"1266210\";\"Kondalwadi\";\"ascii\"\n\"1266216\";\"Kondagaon\";\"main\"\n\"1266216\";\"Kondegaon\";\"other\"\n\"1266217\";\"Konch\";\"main\"\n\"1266217\";\"Kunch\";\"other\"\n\"1266217\";\"Kūnch\";\"other\"\n\"1266220\";\"Konārka\";\"main\"\n\"1266220\";\"Konarka\";\"ascii\"\n\"1266220\";\"Kanarak\";\"other\"\n\"1266220\";\"Konarak\";\"other\"\n\"1266220\";\"Konark\";\"other\"\n\"1266220\";\"Konârak\";\"other\"\n\"1266220\";\"Konārak\";\"other\"\n\"1266220\";\"ke na ke tai yang shen miao\";\"other\"\n\"1266220\";\"konarak\";\"other\"\n\"1266220\";\"ಕೊನಾರಕ್\";\"other\"\n\"1266220\";\"科纳克太阳神庙\";\"other\"\n\"1266222\";\"Konanūr\";\"main\"\n\"1266222\";\"Konanur\";\"ascii\"\n\"1266240\";\"Kombai\";\"main\"\n\"1266240\";\"Komebai\";\"other\"\n\"1266258\";\"Kolosib\";\"main\"\n\"1266267\";\"Kollegāl\";\"main\"\n\"1266267\";\"Kollegal\";\"ascii\"\n\"1266267\";\"Collegal\";\"other\"\n\"1266267\";\"Kollegalam\";\"other\"\n\"1266267\";\"Kollegālam\";\"other\"\n\"1266285\";\"Kolhāpur\";\"main\"\n\"1266285\";\"Kolhapur\";\"ascii\"\n\"1266302\";\"Kolāras\";\"main\"\n\"1266302\";\"Kolaras\";\"ascii\"\n\"1266305\";\"Kolār\";\"main\"\n\"1266305\";\"Kolar\";\"ascii\"\n\"1266305\";\"Колар\";\"other\"\n\"1266322\";\"Kolachel\";\"main\"\n\"1266330\";\"Kokrajhar\";\"main\"\n\"1266330\";\"Kokradzhar\";\"other\"\n\"1266330\";\"Кокраджар\";\"other\"\n\"1266366\";\"Kohīma\";\"main\"\n\"1266366\";\"Kohima\";\"ascii\"\n\"1266366\";\"Kokhima\";\"other\"\n\"1266366\";\"kohima\";\"other\"\n\"1266366\";\"kokima\";\"other\"\n\"1266366\";\"Кохима\";\"other\"\n\"1266366\";\"कोहिमा\";\"other\"\n\"1266366\";\"কোহিমা\";\"other\"\n\"1266366\";\"கோகிமா\";\"other\"\n\"1266366\";\"コヒマ\";\"other\"\n\"1266372\";\"Koelwār\";\"main\"\n\"1266372\";\"Koelwar\";\"ascii\"\n\"1266385\";\"Kodungallūr\";\"main\"\n\"1266385\";\"Kodungallur\";\"ascii\"\n\"1266385\";\"Cranganore\";\"other\"\n\"1266385\";\"Cranganur\";\"other\"\n\"1266385\";\"Crānganūr\";\"other\"\n\"1266385\";\"Methala\";\"other\"\n\"1266387\";\"Kodumudi\";\"main\"\n\"1266390\";\"Kodoli\";\"main\"\n\"1266392\";\"Kodlipet\";\"main\"\n\"1266397\";\"Kodīnar\";\"main\"\n\"1266397\";\"Kodinar\";\"ascii\"\n\"1266397\";\"Kodina\";\"other\"\n\"1266397\";\"Korinar\";\"other\"\n\"1266402\";\"Kodigenahalli\";\"main\"\n\"1266402\";\"Kodiganballi\";\"other\"\n\"1266414\";\"Kodarma\";\"main\"\n\"1266416\";\"Kodār\";\"main\"\n\"1266416\";\"Kodar\";\"ascii\"\n\"1266422\";\"Kodala\";\"main\"\n\"1266425\";\"Kodaikānāl\";\"main\"\n\"1266425\";\"Kodaikanal\";\"ascii\"\n\"1266425\";\"Kodaikan\";\"other\"\n\"1266425\";\"Kodaikān\";\"other\"\n\"1266425\";\"Kodajkanal\";\"other\"\n\"1266425\";\"Кодайканал\";\"other\"\n\"1266433\";\"Kochinda\";\"main\"\n\"1266433\";\"Kuchinda\";\"other\"\n\"1266436\";\"Koch Bihār\";\"main\"\n\"1266436\";\"Koch Bihar\";\"ascii\"\n\"1266436\";\"Cooch Behar\";\"other\"\n\"1266436\";\"Kuch Bihar\";\"other\"\n\"1266436\";\"Kuch Bihār\";\"other\"\n\"1266448\";\"Koāth\";\"main\"\n\"1266448\";\"Koath\";\"ascii\"\n\"1266452\";\"Kizhake Chālakudi\";\"main\"\n\"1266452\";\"Kizhake Chalakudi\";\"ascii\"\n\"1266452\";\"Chalakudi\";\"other\"\n\"1266452\";\"Chālakudi\";\"other\"\n\"1266461\";\"Kithor\";\"main\"\n\"1266475\";\"Kishtwār\";\"main\"\n\"1266475\";\"Kishtwar\";\"ascii\"\n\"1266475\";\"Kishtvare\";\"other\"\n\"1266475\";\"Kishtwer\";\"other\"\n\"1266475\";\"Киштваре\";\"other\"\n\"1266477\";\"Kishni\";\"main\"\n\"1266481\";\"Kishanpur\";\"main\"\n\"1266484\";\"Kishangarh\";\"main\"\n\"1266486\";\"Kishangarh\";\"main\"\n\"1266486\";\"Kishangarkh\";\"other\"\n\"1266486\";\"Кишангарх\";\"other\"\n\"1266489\";\"Kishanganj\";\"main\"\n\"1266489\";\"Kishanganj Bazar\";\"other\"\n\"1266503\";\"Kiri Buru\";\"main\"\n\"1266509\";\"Kīratpur\";\"main\"\n\"1266509\";\"Kiratpur\";\"ascii\"\n\"1266510\";\"Kiraoli\";\"main\"\n\"1266512\";\"Kīranūr\";\"main\"\n\"1266512\";\"Kiranur\";\"ascii\"\n\"1266513\";\"Kīranūr\";\"main\"\n\"1266513\";\"Kiranur\";\"ascii\"\n\"1266516\";\"Kirākat\";\"main\"\n\"1266516\";\"Kirakat\";\"ascii\"\n\"1266518\";\"Kinwat\";\"main\"\n\"1266518\";\"Kinvat\";\"other\"\n\"1266540\";\"Kīl Vālur\";\"main\"\n\"1266540\";\"Kil Valur\";\"ascii\"\n\"1266540\";\"Kilvelur\";\"other\"\n\"1266540\";\"Kilvelure\";\"other\"\n\"1266575\";\"Kichha\";\"main\"\n\"1266596\";\"Khūtār\";\"main\"\n\"1266596\";\"Khutar\";\"ascii\"\n\"1266598\";\"Khusropur\";\"main\"\n\"1266607\";\"Khurja\";\"main\"\n\"1266616\";\"Khurda\";\"main\"\n\"1266616\";\"Khordha\";\"other\"\n\"1266620\";\"Khurai\";\"main\"\n\"1266622\";\"Khunti\";\"main\"\n\"1266631\";\"Khuldābād\";\"main\"\n\"1266631\";\"Khuldabad\";\"ascii\"\n\"1266632\";\"Khujner\";\"main\"\n\"1266640\";\"Khudāganj\";\"main\"\n\"1266640\";\"Khudaganj\";\"ascii\"\n\"1266649\";\"Khowai\";\"main\"\n\"1266666\";\"Khopoli\";\"main\"\n\"1266668\";\"Khonsa\";\"main\"\n\"1266668\";\"Horu Khunma\";\"other\"\n\"1266668\";\"Khela\";\"other\"\n\"1266710\";\"Khirkiān\";\"main\"\n\"1266710\";\"Khirkian\";\"ascii\"\n\"1266710\";\"Khirkiya\";\"other\"\n\"1266731\";\"Khilchipur\";\"main\"\n\"1266744\";\"Khetri\";\"main\"\n\"1266746\";\"Khetia\";\"main\"\n\"1266762\";\"Kheri\";\"main\"\n\"1266774\";\"Kherālu\";\"main\"\n\"1266774\";\"Kheralu\";\"ascii\"\n\"1266787\";\"Khem Karan\";\"main\"\n\"1266794\";\"Khekra\";\"main\"\n\"1266806\";\"Khed Brahma\";\"main\"\n\"1266809\";\"Kheda\";\"main\"\n\"1266809\";\"Kaira\";\"other\"\n\"1266809\";\"Хеда\";\"other\"\n\"1266813\";\"Khed\";\"main\"\n\"1266814\";\"Khed\";\"main\"\n\"1266821\";\"Khawhai\";\"main\"\n\"1266829\";\"Khaur\";\"main\"\n\"1266829\";\"Khour\";\"other\"\n\"1266838\";\"Khātra\";\"main\"\n\"1266838\";\"Khatra\";\"ascii\"\n\"1266843\";\"Khatīma\";\"main\"\n\"1266843\";\"Khatima\";\"ascii\"\n\"1266847\";\"Khātegaon\";\"main\"\n\"1266847\";\"Khategaon\";\"ascii\"\n\"1266849\";\"Khatauli\";\"main\"\n\"1266862\";\"Khārupatia\";\"main\"\n\"1266862\";\"Kharupatia\";\"ascii\"\n\"1266862\";\"Kharupatia Ghat\";\"other\"\n\"1266872\";\"Kharsia\";\"main\"\n\"1266873\";\"Kharsāwān\";\"main\"\n\"1266873\";\"Kharsawan\";\"ascii\"\n\"1266873\";\"Kharsawangarh\";\"other\"\n\"1266882\";\"Kharod\";\"main\"\n\"1266891\";\"Kharkhauda\";\"main\"\n\"1266892\";\"Kharkhauda\";\"main\"\n\"1266924\";\"Kharhiāl\";\"main\"\n\"1266924\";\"Kharhial\";\"ascii\"\n\"1266924\";\"Khariar\";\"other\"\n\"1266924\";\"Khariār\";\"other\"\n\"1266926\";\"Khargupur\";\"main\"\n\"1266928\";\"Khargon\";\"main\"\n\"1266928\";\"Khargone\";\"other\"\n\"1266931\";\"Khargāpur\";\"main\"\n\"1266931\";\"Khargapur\";\"ascii\"\n\"1266937\";\"Kharelā\";\"main\"\n\"1266937\";\"Kharela\";\"ascii\"\n\"1266945\";\"Khardah\";\"main\"\n\"1266945\";\"Khardaha\";\"other\"\n\"1266960\";\"Kharar\";\"main\"\n\"1266962\";\"Kharar\";\"main\"\n\"1266966\";\"Kharakvasla\";\"main\"\n\"1266966\";\"Khadakvaslal\";\"other\"\n\"1266966\";\"Khadakwasla\";\"other\"\n\"1266966\";\"Khandakwalsa\";\"other\"\n\"1266975\";\"Kharagpur\";\"main\"\n\"1266975\";\"Харагпур\";\"other\"\n\"1266976\";\"Kharagpur\";\"main\"\n\"1266976\";\"Khargpur\";\"other\"\n\"1266976\";\"Харагпур\";\"other\"\n\"1267006\";\"Khāpa\";\"main\"\n\"1267006\";\"Khapa\";\"ascii\"\n\"1267014\";\"Khānpur\";\"main\"\n\"1267014\";\"Khanpur\";\"ascii\"\n\"1267015\";\"Khānpur\";\"main\"\n\"1267015\";\"Khanpur\";\"ascii\"\n\"1267016\";\"Khanna\";\"main\"\n\"1267016\";\"Ханна\";\"other\"\n\"1267031\";\"Khandwa\";\"main\"\n\"1267044\";\"Khandela\";\"main\"\n\"1267065\";\"Khānāpur\";\"main\"\n\"1267065\";\"Khanapur\";\"ascii\"\n\"1267076\";\"Khammam\";\"main\"\n\"1267076\";\"Khammamett\";\"other\"\n\"1267076\";\"Khammamette\";\"other\"\n\"1267076\";\"kam'mam\";\"other\"\n\"1267076\";\"கம்மம்\";\"other\"\n\"1267083\";\"Khamharia\";\"main\"\n\"1267084\";\"Khāmgaon\";\"main\"\n\"1267084\";\"Khamgaon\";\"ascii\"\n\"1267090\";\"Khambhāt\";\"main\"\n\"1267090\";\"Khambhat\";\"ascii\"\n\"1267090\";\"Cambay\";\"other\"\n\"1267090\";\"Kambay\";\"other\"\n\"1267090\";\"Khambayat\";\"other\"\n\"1267090\";\"Khambāyat\";\"other\"\n\"1267091\";\"Khambhāliya\";\"main\"\n\"1267091\";\"Khambhaliya\";\"ascii\"\n\"1267091\";\"Khambhalia\";\"other\"\n\"1267091\";\"Khambhaliva\";\"other\"\n\"1267097\";\"Khamaria\";\"main\"\n\"1267105\";\"Khamānon\";\"main\"\n\"1267105\";\"Khamanon\";\"ascii\"\n\"1267105\";\"Khamanon Kalan\";\"other\"\n\"1267105\";\"Khamānon Kalān\";\"other\"\n\"1267112\";\"Khallikot\";\"main\"\n\"1267112\";\"Kallikota\";\"other\"\n\"1267112\";\"Kullikota\";\"other\"\n\"1267115\";\"Khalīlābād\";\"main\"\n\"1267115\";\"Khalilabad\";\"ascii\"\n\"1267154\";\"Khajurāho\";\"main\"\n\"1267154\";\"Khajuraho\";\"ascii\"\n\"1267154\";\"Khadzhurakho\";\"other\"\n\"1267154\";\"Khadzuraho\";\"other\"\n\"1267154\";\"Khadżuraho\";\"other\"\n\"1267154\";\"Khajraho\";\"other\"\n\"1267154\";\"Khajrāho\";\"other\"\n\"1267154\";\"Khajurâho\";\"other\"\n\"1267154\";\"kajuraho\";\"other\"\n\"1267154\";\"khajuraha\";\"other\"\n\"1267154\";\"khajuraho\";\"other\"\n\"1267154\";\"Хаджурахо\";\"other\"\n\"1267154\";\"खजुराहो\";\"other\"\n\"1267154\";\"খাজুরাহ\";\"other\"\n\"1267154\";\"ಖಜುರಾಹೊ\";\"other\"\n\"1267154\";\"カジュラーホー\";\"other\"\n\"1267173\";\"Khairāgarh\";\"main\"\n\"1267173\";\"Khairagarh\";\"ascii\"\n\"1267174\";\"Khairāgarh\";\"main\"\n\"1267174\";\"Khairagarh\";\"ascii\"\n\"1267174\";\"Khairagarh Raj\";\"other\"\n\"1267175\";\"Khairābād\";\"main\"\n\"1267175\";\"Khairabad\";\"ascii\"\n\"1267182\";\"Khair\";\"main\"\n\"1267185\";\"Khailār\";\"main\"\n\"1267185\";\"Khailar\";\"ascii\"\n\"1267185\";\"Khailor\";\"other\"\n\"1267187\";\"Khagaul\";\"main\"\n\"1267189\";\"Khagaria\";\"main\"\n\"1267190\";\"Khāga\";\"main\"\n\"1267190\";\"Khaga\";\"ascii\"\n\"1267195\";\"Khadki\";\"main\"\n\"1267195\";\"Kirkee\";\"other\"\n\"1267202\";\"Khada\";\"main\"\n\"1267203\";\"Khāchrod\";\"main\"\n\"1267203\";\"Khachrod\";\"ascii\"\n\"1267222\";\"Kesinga\";\"main\"\n\"1267226\";\"Keshorai Pātan\";\"main\"\n\"1267226\";\"Keshorai Patan\";\"ascii\"\n\"1267227\";\"Keshod\";\"main\"\n\"1267227\";\"Kesod\";\"other\"\n\"1267239\";\"Kerūr\";\"main\"\n\"1267239\";\"Kerur\";\"ascii\"\n\"1267280\";\"Kenduadīh\";\"main\"\n\"1267280\";\"Kenduadih\";\"ascii\"\n\"1267283\";\"Kendrāparha\";\"main\"\n\"1267283\";\"Kendraparha\";\"ascii\"\n\"1267283\";\"Kendrapara\";\"other\"\n\"1267283\";\"Kendrāpāra\";\"other\"\n\"1267290\";\"Kenda\";\"main\"\n\"1267297\";\"Kemri\";\"main\"\n\"1267331\";\"Kelamangalam\";\"main\"\n\"1267331\";\"Kelamnagalam\";\"other\"\n\"1267336\";\"Kekri\";\"main\"\n\"1267357\";\"Kayattār\";\"main\"\n\"1267357\";\"Kayattar\";\"ascii\"\n\"1267357\";\"Kayatar\";\"other\"\n\"1267360\";\"Kāyankulam\";\"main\"\n\"1267360\";\"Kayankulam\";\"ascii\"\n\"1267360\";\"Kayamkulam\";\"other\"\n\"1267360\";\"Kayangulam\";\"other\"\n\"1267361\";\"Kāyalpattinam\";\"main\"\n\"1267361\";\"Kayalpattinam\";\"ascii\"\n\"1267361\";\"Aramaganori\";\"other\"\n\"1267361\";\"Coilnapatam\";\"other\"\n\"1267361\";\"Kayalpatnam\";\"other\"\n\"1267361\";\"Kayalpatuam\";\"other\"\n\"1267361\";\"Kāyalpatnam\";\"other\"\n\"1267369\";\"Kawardha\";\"main\"\n\"1267370\";\"Kawant\";\"main\"\n\"1267370\";\"Kavant\";\"other\"\n\"1267385\";\"Kāverippattanam\";\"main\"\n\"1267385\";\"Kaverippattanam\";\"ascii\"\n\"1267385\";\"Kaveripatnam\";\"other\"\n\"1267385\";\"Kaveripattinam\";\"other\"\n\"1267385\";\"Kāveripatnam\";\"other\"\n\"1267390\";\"Kavaratti\";\"main\"\n\"1267394\";\"Kāvali\";\"main\"\n\"1267394\";\"Kavali\";\"ascii\"\n\"1267428\";\"Kāttuputtūr\";\"main\"\n\"1267428\";\"Kattuputtur\";\"ascii\"\n\"1267428\";\"Kattupputtur\";\"other\"\n\"1267428\";\"Katuputur\";\"other\"\n\"1267428\";\"Kāttupputtūr\";\"other\"\n\"1267433\";\"Kattivākkam\";\"main\"\n\"1267433\";\"Kattivakkam\";\"ascii\"\n\"1267439\";\"Kātrās\";\"main\"\n\"1267439\";\"Katras\";\"ascii\"\n\"1267448\";\"Katra\";\"main\"\n\"1267449\";\"Katra\";\"main\"\n\"1267454\";\"Katpur\";\"main\"\n\"1267454\";\"Jegri\";\"other\"\n\"1267454\";\"Kadpur\";\"other\"\n\"1267454\";\"Kutpur\";\"other\"\n\"1267456\";\"Kātpādi\";\"main\"\n\"1267456\";\"Katpadi\";\"ascii\"\n\"1267457\";\"Kātoya\";\"main\"\n\"1267457\";\"Katoya\";\"ascii\"\n\"1267457\";\"Katwa\";\"other\"\n\"1267461\";\"Kātol\";\"main\"\n\"1267461\";\"Katol\";\"ascii\"\n\"1267480\";\"Katihār\";\"main\"\n\"1267480\";\"Katihar\";\"ascii\"\n\"1267480\";\"Hafiz Saifganj\";\"other\"\n\"1267481\";\"Kāti\";\"main\"\n\"1267481\";\"Kati\";\"ascii\"\n\"1267486\";\"Kathua\";\"main\"\n\"1267492\";\"Kāthor\";\"main\"\n\"1267492\";\"Kathor\";\"ascii\"\n\"1267517\";\"Katghora\";\"main\"\n\"1267537\";\"Katangi\";\"main\"\n\"1267537\";\"Nagra Katangi\";\"other\"\n\"1267538\";\"Katāngi\";\"main\"\n\"1267538\";\"Katangi\";\"ascii\"\n\"1267558\";\"Kasrāwad\";\"main\"\n\"1267558\";\"Kasrawad\";\"ascii\"\n\"1267579\";\"Kāshīpur\";\"main\"\n\"1267579\";\"Kashipur\";\"ascii\"\n\"1267588\";\"Kāsganj\";\"main\"\n\"1267588\";\"Kasganj\";\"ascii\"\n\"1267605\";\"Kasauli\";\"main\"\n\"1267605\";\"Ambala\";\"other\"\n\"1267605\";\"Ambāla\";\"other\"\n\"1267605\";\"Kosauli\";\"other\"\n\"1267616\";\"Kāsaragod\";\"main\"\n\"1267616\";\"Kasaragod\";\"ascii\"\n\"1267616\";\"Kasaragod Fort\";\"other\"\n\"1267635\";\"Kārwār\";\"main\"\n\"1267635\";\"Karwar\";\"ascii\"\n\"1267635\";\"Kawar\";\"other\"\n\"1267648\";\"Karūr\";\"main\"\n\"1267648\";\"Karur\";\"ascii\"\n\"1267660\";\"Karumbākkam\";\"main\"\n\"1267660\";\"Karumbakkam\";\"ascii\"\n\"1267660\";\"Karumbakham\";\"other\"\n\"1267669\";\"Kartārpur\";\"main\"\n\"1267669\";\"Kartarpur\";\"ascii\"\n\"1267675\";\"Kārsiyāng\";\"main\"\n\"1267675\";\"Karsiyang\";\"ascii\"\n\"1267675\";\"Kharasana\";\"other\"\n\"1267675\";\"Kurseong\";\"other\"\n\"1267680\";\"Karrāpur\";\"main\"\n\"1267680\";\"Karrapur\";\"ascii\"\n\"1267708\";\"Karnāl\";\"main\"\n\"1267708\";\"Karnal\";\"ascii\"\n\"1267708\";\"Карнал\";\"other\"\n\"1267716\";\"Karmāla\";\"main\"\n\"1267716\";\"Karmala\";\"ascii\"\n\"1267739\";\"Kārkāl\";\"main\"\n\"1267739\";\"Karkal\";\"ascii\"\n\"1267739\";\"Karaka\";\"other\"\n\"1267739\";\"Karkala\";\"other\"\n\"1267742\";\"Karjat\";\"main\"\n\"1267745\";\"Kāriyāpatti\";\"main\"\n\"1267745\";\"Kariyapatti\";\"ascii\"\n\"1267745\";\"Kariapatti\";\"other\"\n\"1267745\";\"Kariyapattinam\";\"other\"\n\"1267754\";\"Karīmpur\";\"main\"\n\"1267754\";\"Karimpur\";\"ascii\"\n\"1267755\";\"Karīmnagar\";\"main\"\n\"1267755\";\"Karimnagar\";\"ascii\"\n\"1267758\";\"Karīmganj\";\"main\"\n\"1267758\";\"Karimganj\";\"ascii\"\n\"1267772\";\"Karhal\";\"main\"\n\"1267776\";\"Kargil\";\"main\"\n\"1267786\";\"Karera\";\"main\"\n\"1267786\";\"Karery\";\"other\"\n\"1267786\";\"Кареры\";\"other\"\n\"1267794\";\"Karelī\";\"main\"\n\"1267794\";\"Kareli\";\"ascii\"\n\"1267794\";\"Карели\";\"other\"\n\"1267819\";\"Karauli\";\"main\"\n\"1267827\";\"Karārī\";\"main\"\n\"1267827\";\"Karari\";\"ascii\"\n\"1267853\";\"Kāranja\";\"main\"\n\"1267853\";\"Karanja\";\"ascii\"\n\"1267853\";\"Karandzha\";\"other\"\n\"1267853\";\"Karanja Bibi\";\"other\"\n\"1267853\";\"Kāranja Bibi\";\"other\"\n\"1267853\";\"Каранджа\";\"other\"\n\"1267862\";\"Karamsad\";\"main\"\n\"1267867\";\"Karambakkudi\";\"main\"\n\"1267867\";\"Karambakuduy\";\"other\"\n\"1267869\";\"Kāramadai\";\"main\"\n\"1267869\";\"Karamadai\";\"ascii\"\n\"1267885\";\"Kāraikkudi\";\"main\"\n\"1267885\";\"Karaikkudi\";\"ascii\"\n\"1267885\";\"Karaikudi\";\"other\"\n\"1267887\";\"kāraikāl\";\"main\"\n\"1267887\";\"karaikal\";\"ascii\"\n\"1267887\";\"Karikal\";\"other\"\n\"1267887\";\"Kārikāl\";\"other\"\n\"1267904\";\"Karād\";\"main\"\n\"1267904\";\"Karad\";\"ascii\"\n\"1267911\";\"Kapūrthala\";\"main\"\n\"1267911\";\"Kapurthala\";\"ascii\"\n\"1267911\";\"Kapurtala\";\"other\"\n\"1267911\";\"Kapurthala Town\";\"other\"\n\"1267919\";\"Kaptānganj\";\"main\"\n\"1267919\";\"Kaptanganj\";\"ascii\"\n\"1267919\";\"Captainganj\";\"other\"\n\"1267923\";\"Kāpren\";\"main\"\n\"1267923\";\"Kapren\";\"ascii\"\n\"1267939\";\"Kapadvanj\";\"main\"\n\"1267939\";\"Kapadranj\";\"other\"\n\"1267964\";\"Kantilo\";\"main\"\n\"1267972\";\"Kānth\";\"main\"\n\"1267972\";\"Kanth\";\"ascii\"\n\"1267978\";\"Kantābānji\";\"main\"\n\"1267978\";\"Kantabanji\";\"ascii\"\n\"1267979\";\"Kānt\";\"main\"\n\"1267979\";\"Kant\";\"ascii\"\n\"1267995\";\"Kānpur\";\"main\"\n\"1267995\";\"Kanpur\";\"ascii\"\n\"1267995\";\"Cawnpore\";\"other\"\n\"1267995\";\"Kanpuras\";\"other\"\n\"1267995\";\"Kanpwr\";\"other\"\n\"1267995\";\"Kānpwr\";\"other\"\n\"1267995\";\"kanapura\";\"other\"\n\"1267995\";\"kanpur\";\"other\"\n\"1267995\";\"kanpuru\";\"other\"\n\"1267995\";\"Канпур\";\"other\"\n\"1267995\";\"קאנפור\";\"other\"\n\"1267995\";\"कानपुर\";\"other\"\n\"1267995\";\"কানপুর\";\"other\"\n\"1267995\";\"கான்பூர்\";\"other\"\n\"1267995\";\"カーンプル\";\"other\"\n\"1268001\";\"Kānor\";\"main\"\n\"1268001\";\"Kanor\";\"ascii\"\n\"1268004\";\"Kanodar\";\"main\"\n\"1268007\";\"Kannod\";\"main\"\n\"1268008\";\"Kanniyākumāri\";\"main\"\n\"1268008\";\"Kanniyakumari\";\"ascii\"\n\"1268008\";\"Cap Comorin\";\"other\"\n\"1268008\";\"Cape Comorin\";\"other\"\n\"1268008\";\"Comorin\";\"other\"\n\"1268008\";\"Kan'jakumari\";\"other\"\n\"1268008\";\"Kanniakumari\";\"other\"\n\"1268008\";\"Kanniyakumar\";\"other\"\n\"1268008\";\"Kanniyākumar\";\"other\"\n\"1268008\";\"Kanyakumari\";\"other\"\n\"1268008\";\"Каньякумари\";\"other\"\n\"1268011\";\"Kannauj\";\"main\"\n\"1268011\";\"Kanauj\";\"other\"\n\"1268015\";\"Kānnangād\";\"main\"\n\"1268015\";\"Kannangad\";\"ascii\"\n\"1268015\";\"Kanhangad\";\"other\"\n\"1268020\";\"Kannad\";\"main\"\n\"1268022\";\"Kānkon\";\"main\"\n\"1268022\";\"Kankon\";\"ascii\"\n\"1268022\";\"Advota\";\"other\"\n\"1268022\";\"Canacona\";\"other\"\n\"1268022\";\"Chauri\";\"other\"\n\"1268022\";\"Chauri Town\";\"other\"\n\"1268024\";\"Kankipādu\";\"main\"\n\"1268024\";\"Kankipadu\";\"ascii\"\n\"1268024\";\"Kankipad\";\"other\"\n\"1268031\";\"Kānker\";\"main\"\n\"1268031\";\"Kanker\";\"ascii\"\n\"1268032\";\"Kānke\";\"main\"\n\"1268032\";\"Kanke\";\"ascii\"\n\"1268035\";\"Kankauli\";\"main\"\n\"1268035\";\"Kankavli\";\"other\"\n\"1268059\";\"Kanigiri\";\"main\"\n\"1268084\";\"Kāngra\";\"main\"\n\"1268084\";\"Kangra\";\"ascii\"\n\"1268095\";\"Kāngayam\";\"main\"\n\"1268095\";\"Kangayam\";\"ascii\"\n\"1268111\";\"Kandukūr\";\"main\"\n\"1268111\";\"Kandukur\";\"ascii\"\n\"1268114\";\"Kandri\";\"main\"\n\"1268116\";\"Kāndra\";\"main\"\n\"1268116\";\"Kandra\";\"ascii\"\n\"1268124\";\"Kāndla\";\"main\"\n\"1268124\";\"Kandla\";\"ascii\"\n\"1268124\";\"Kundla\";\"other\"\n\"1268124\";\"Кандла\";\"other\"\n\"1268135\";\"Kāndi\";\"main\"\n\"1268135\";\"Kandi\";\"ascii\"\n\"1268138\";\"Kāndhla\";\"main\"\n\"1268138\";\"Kandhla\";\"ascii\"\n\"1268159\";\"Kānchipuram\";\"main\"\n\"1268159\";\"Kanchipuram\";\"ascii\"\n\"1268159\";\"Conjeeveram\";\"other\"\n\"1268159\";\"Conjevaram\";\"other\"\n\"1268159\";\"Conjeveram\";\"other\"\n\"1268159\";\"Kancheepuram\";\"other\"\n\"1268159\";\"Kancipuram\";\"other\"\n\"1268159\";\"Kanjippuram\";\"other\"\n\"1268159\";\"Kańćipuram\";\"other\"\n\"1268159\";\"gan ji bu lei mu\";\"other\"\n\"1268159\";\"kanchipuramu\";\"other\"\n\"1268159\";\"kancipuram\";\"other\"\n\"1268159\";\"kancipurama\";\"other\"\n\"1268159\";\"Канчипурам\";\"other\"\n\"1268159\";\"কাঞ্চিপুরম\";\"other\"\n\"1268159\";\"காஞ்சிபுரம்\";\"other\"\n\"1268159\";\"カーンチプラム\";\"other\"\n\"1268159\";\"甘吉布勒姆\";\"other\"\n\"1268189\";\"Kanakapura\";\"main\"\n\"1268189\";\"Kanakpura\";\"other\"\n\"1268189\";\"Kankanhalli\";\"other\"\n\"1268189\";\"Kānkānhalli\";\"other\"\n\"1268197\";\"Kānādukāttān\";\"main\"\n\"1268197\";\"Kanadukattan\";\"ascii\"\n\"1268197\";\"Kanadukathan\";\"other\"\n\"1268197\";\"Kanatu\";\"other\"\n\"1268197\";\"Kanatukattan\";\"other\"\n\"1268197\";\"Kānātu\";\"other\"\n\"1268197\";\"Kānātukāttān\";\"other\"\n\"1268202\";\"Kamudi\";\"main\"\n\"1268202\";\"Kamuti\";\"other\"\n\"1268202\";\"Kaumuri\";\"other\"\n\"1268205\";\"Kāmthi\";\"main\"\n\"1268205\";\"Kamthi\";\"ascii\"\n\"1268205\";\"Kamptee\";\"other\"\n\"1268205\";\"Kamtha\";\"other\"\n\"1268205\";\"Kāmtha\";\"other\"\n\"1268205\";\"kampti\";\"other\"\n\"1268214\";\"Kampli\";\"main\"\n\"1268215\";\"Kampil\";\"main\"\n\"1268246\";\"Kambam\";\"main\"\n\"1268257\";\"Kāmārhāti\";\"main\"\n\"1268257\";\"Kamarhati\";\"ascii\"\n\"1268257\";\"Kamarhatty\";\"other\"\n\"1268259\";\"Kāmāreddi\";\"main\"\n\"1268259\";\"Kamareddi\";\"ascii\"\n\"1268259\";\"Kamareddipet\";\"other\"\n\"1268259\";\"Kamaredi\";\"other\"\n\"1268266\";\"Kāman\";\"main\"\n\"1268266\";\"Kaman\";\"ascii\"\n\"1268266\";\"Каман\";\"other\"\n\"1268271\";\"Kamalpur\";\"main\"\n\"1268276\";\"Kamalganj\";\"main\"\n\"1268277\";\"Kāmalāpuram\";\"main\"\n\"1268277\";\"Kamalapuram\";\"ascii\"\n\"1268279\";\"Kāmākhyānagar\";\"main\"\n\"1268279\";\"Kamakhyanagar\";\"ascii\"\n\"1268279\";\"Murhi\";\"other\"\n\"1268293\";\"Kalyani\";\"main\"\n\"1268295\";\"Kalyān\";\"main\"\n\"1268295\";\"Kalyan\";\"ascii\"\n\"1268295\";\"Kal'jan\";\"other\"\n\"1268295\";\"Кальян\";\"other\"\n\"1268308\";\"Kālundri\";\"main\"\n\"1268308\";\"Kalundri\";\"ascii\"\n\"1268310\";\"Kalugumalai\";\"main\"\n\"1268310\";\"Kalugumali\";\"other\"\n\"1268325\";\"Kālpi\";\"main\"\n\"1268325\";\"Kalpi\";\"ascii\"\n\"1268325\";\"Калпи\";\"other\"\n\"1268327\";\"Kalpetta\";\"main\"\n\"1268327\";\"Kalpatta\";\"other\"\n\"1268339\";\"Kālol\";\"main\"\n\"1268339\";\"Kalol\";\"ascii\"\n\"1268341\";\"Kālna\";\"main\"\n\"1268341\";\"Kalna\";\"ascii\"\n\"1268341\";\"Кална\";\"other\"\n\"1268344\";\"Kalmeshwar\";\"main\"\n\"1268355\";\"Kallupatti\";\"main\"\n\"1268360\";\"Kallidaikurichchi\";\"main\"\n\"1268360\";\"Kailidaikorichchi\";\"other\"\n\"1268376\";\"Kallakkurichchi\";\"main\"\n\"1268381\";\"Kālka\";\"main\"\n\"1268381\";\"Kalka\";\"ascii\"\n\"1268381\";\"Kalki\";\"other\"\n\"1268381\";\"Калки\";\"other\"\n\"1268383\";\"Kāliyāganj\";\"main\"\n\"1268383\";\"Kaliyaganj\";\"ascii\"\n\"1268383\";\"Kaliaganj\";\"other\"\n\"1268383\";\"Kaliyagan\";\"other\"\n\"1268383\";\"Kāliyāgan\";\"other\"\n\"1268398\";\"Kalīna Khās\";\"main\"\n\"1268398\";\"Kalina Khas\";\"ascii\"\n\"1268398\";\"Kanina\";\"other\"\n\"1268398\";\"Kanina Khas\";\"other\"\n\"1268398\";\"Kanīna Khās\";\"other\"\n\"1268399\";\"Kālīnagar\";\"main\"\n\"1268399\";\"Kalinagar\";\"ascii\"\n\"1268403\";\"Kālimpang\";\"main\"\n\"1268403\";\"Kalimpang\";\"ascii\"\n\"1268403\";\"Kalimpong\";\"other\"\n\"1268403\";\"Калимпонг\";\"other\"\n\"1268408\";\"Kālikāpur\";\"main\"\n\"1268408\";\"Kalikapur\";\"ascii\"\n\"1268434\";\"Kalghatgi\";\"main\"\n\"1268449\";\"Kalavai\";\"main\"\n\"1268449\";\"Kalaval\";\"other\"\n\"1268450\";\"Kālāvad\";\"main\"\n\"1268450\";\"Kalavad\";\"ascii\"\n\"1268460\";\"Kalas\";\"main\"\n\"1268469\";\"Kālānwāli\";\"main\"\n\"1268469\";\"Kalanwali\";\"ascii\"\n\"1268475\";\"Kalānaur\";\"main\"\n\"1268475\";\"Kalanaur\";\"ascii\"\n\"1268476\";\"Kalānaur\";\"main\"\n\"1268476\";\"Kalanaur\";\"ascii\"\n\"1268480\";\"Kalamnūri\";\"main\"\n\"1268480\";\"Kalamnuri\";\"ascii\"\n\"1268484\";\"Kalamb\";\"main\"\n\"1268495\";\"Kalakkādu\";\"main\"\n\"1268495\";\"Kalakkadu\";\"ascii\"\n\"1268495\";\"Kalakad\";\"other\"\n\"1268504\";\"Kalaīkunda\";\"main\"\n\"1268504\";\"Kalaikunda\";\"ascii\"\n\"1268510\";\"Kālāgarh\";\"main\"\n\"1268510\";\"Kalagarh\";\"ascii\"\n\"1268513\";\"Kālādhūngi\";\"main\"\n\"1268513\";\"Kaladhungi\";\"ascii\"\n\"1268540\";\"Kakrāla\";\"main\"\n\"1268540\";\"Kakrala\";\"ascii\"\n\"1268545\";\"Kākori\";\"main\"\n\"1268545\";\"Kakori\";\"ascii\"\n\"1268561\";\"Kākināda\";\"main\"\n\"1268561\";\"Kakinada\";\"ascii\"\n\"1268561\";\"Cocanada\";\"other\"\n\"1268561\";\"Coconada\";\"other\"\n\"1268561\";\"East Godavari\";\"other\"\n\"1268561\";\"Godavari\";\"other\"\n\"1268561\";\"Какинада\";\"other\"\n\"1268567\";\"Kakching\";\"main\"\n\"1268593\";\"Kaithal\";\"main\"\n\"1268601\";\"Kairāna\";\"main\"\n\"1268601\";\"Kairana\";\"ascii\"\n\"1268610\";\"Kaintarāgarh\";\"main\"\n\"1268610\";\"Kaintaragarh\";\"ascii\"\n\"1268610\";\"Athmalik\";\"other\"\n\"1268610\";\"Athmallik\";\"other\"\n\"1268615\";\"Kaimori\";\"main\"\n\"1268615\";\"Kaimur\";\"other\"\n\"1268615\";\"Kymore\";\"other\"\n\"1268616\";\"Kaimganj\";\"main\"\n\"1268622\";\"Kailāshahar\";\"main\"\n\"1268622\";\"Kailashahar\";\"ascii\"\n\"1268622\";\"Kailasahar\";\"other\"\n\"1268624\";\"Kailāras\";\"main\"\n\"1268624\";\"Kailaras\";\"ascii\"\n\"1268627\";\"Kaikalūr\";\"main\"\n\"1268627\";\"Kaikalur\";\"ascii\"\n\"1268651\";\"Kāgal\";\"main\"\n\"1268651\";\"Kagal\";\"ascii\"\n\"1268662\";\"Kadūr\";\"main\"\n\"1268662\";\"Kadur\";\"ascii\"\n\"1268667\";\"Kadod\";\"main\"\n\"1268673\";\"Kadiri\";\"main\"\n\"1268673\";\"Кадири\";\"other\"\n\"1268677\";\"Kādīpur\";\"main\"\n\"1268677\";\"Kadipur\";\"ascii\"\n\"1268680\";\"Kadi\";\"main\"\n\"1268686\";\"Kadaura\";\"main\"\n\"1268686\";\"Baoni Kadawa\";\"other\"\n\"1268693\";\"Kadambūr\";\"main\"\n\"1268693\";\"Kadambur\";\"ascii\"\n\"1268707\";\"Kadaiyanallūr\";\"main\"\n\"1268707\";\"Kadaiyanallur\";\"ascii\"\n\"1268707\";\"Kadayanallur\";\"other\"\n\"1268715\";\"Kānchrāpāra\";\"main\"\n\"1268715\";\"Kanchrapara\";\"ascii\"\n\"1268715\";\"Kachrapara\";\"other\"\n\"1268715\";\"Kancharapara\";\"other\"\n\"1268715\";\"Kāchrāpāra\";\"other\"\n\"1268722\";\"Kachhwā\";\"main\"\n\"1268722\";\"Kachhwa\";\"ascii\"\n\"1268739\";\"Kabrai\";\"main\"\n\"1268739\";\"Kabral\";\"other\"\n\"1268754\";\"Jutogh\";\"main\"\n\"1268754\";\"Simla\";\"other\"\n\"1268761\";\"Junnar\";\"main\"\n\"1268761\";\"Shivner\";\"other\"\n\"1268772\";\"Jūnāgarh\";\"main\"\n\"1268772\";\"Junagarh\";\"ascii\"\n\"1268773\";\"Jūnāgadh\";\"main\"\n\"1268773\";\"Junagadh\";\"ascii\"\n\"1268773\";\"Junagad\";\"other\"\n\"1268773\";\"Junagarh\";\"other\"\n\"1268773\";\"Junaghur\";\"other\"\n\"1268775\";\"Jumri Tilaiyā\";\"main\"\n\"1268775\";\"Jumri Tilaiya\";\"ascii\"\n\"1268775\";\"Jhumri Telaiya\";\"other\"\n\"1268775\";\"Jhumri Tellaya\";\"other\"\n\"1268775\";\"Kodarma\";\"other\"\n\"1268782\";\"Jalandhar\";\"main\"\n\"1268782\";\"Jullundur\";\"other\"\n\"1268782\";\"Jullundur City\";\"other\"\n\"1268785\";\"Julāna Shādipur\";\"main\"\n\"1268785\";\"Julana Shadipur\";\"ascii\"\n\"1268785\";\"Julana\";\"other\"\n\"1268785\";\"Julāna\";\"other\"\n\"1268785\";\"Shadipur Julana\";\"other\"\n\"1268785\";\"Shādīpur Julāna\";\"other\"\n\"1268799\";\"Jugsālai\";\"main\"\n\"1268799\";\"Jugsalai\";\"ascii\"\n\"1268799\";\"Tatanagar\";\"other\"\n\"1268802\";\"Jubbal\";\"main\"\n\"1268802\";\"Deorha\";\"other\"\n\"1268802\";\"Jubbl\";\"other\"\n\"1268806\";\"Jua\";\"main\"\n\"1268814\";\"Joshīmath\";\"main\"\n\"1268814\";\"Joshimath\";\"ascii\"\n\"1268814\";\"Joshinath\";\"other\"\n\"1268820\";\"Jorhāt\";\"main\"\n\"1268820\";\"Jorhat\";\"ascii\"\n\"1268820\";\"Dzhorkhat\";\"other\"\n\"1268820\";\"Sibsagar\";\"other\"\n\"1268820\";\"Sibságar\";\"other\"\n\"1268820\";\"Джорхат\";\"other\"\n\"1268823\";\"Jora\";\"main\"\n\"1268823\";\"Joura\";\"other\"\n\"1268823\";\"Zhora\";\"other\"\n\"1268823\";\"Жора\";\"other\"\n\"1268834\";\"Jolārpettai\";\"main\"\n\"1268834\";\"Jolarpettai\";\"ascii\"\n\"1268834\";\"Jalarpet\";\"other\"\n\"1268834\";\"Jalārpet\";\"other\"\n\"1268849\";\"Jogindarnagar\";\"main\"\n\"1268849\";\"Joginder Nagar\";\"other\"\n\"1268851\";\"Jogīghopa\";\"main\"\n\"1268851\";\"Jogighopa\";\"ascii\"\n\"1268855\";\"Jogbani\";\"main\"\n\"1268863\";\"Jodiya Bandar\";\"main\"\n\"1268863\";\"Jodiya\";\"other\"\n\"1268865\";\"Jodhpur\";\"main\"\n\"1268865\";\"Dzhodkhpur\";\"other\"\n\"1268865\";\"Dzodhpur\";\"other\"\n\"1268865\";\"Dżodhpur\";\"other\"\n\"1268865\";\"Jodhpur City\";\"other\"\n\"1268865\";\"jodhapura\";\"other\"\n\"1268865\";\"jodopuru\";\"other\"\n\"1268865\";\"Джодхпур\";\"other\"\n\"1268865\";\"जोधपुर\";\"other\"\n\"1268865\";\"ჯოდპური\";\"other\"\n\"1268865\";\"ジョドプル\";\"other\"\n\"1268865\";\"ジョードプル\";\"other\"\n\"1268866\";\"Jodhpur\";\"main\"\n\"1268874\";\"Jobner\";\"main\"\n\"1268875\";\"Jobat\";\"main\"\n\"1268893\";\"Jīran\";\"main\"\n\"1268893\";\"Jiran\";\"ascii\"\n\"1268896\";\"Jintūr\";\"main\"\n\"1268896\";\"Jintur\";\"ascii\"\n\"1268907\";\"Jīnd\";\"main\"\n\"1268907\";\"Jind\";\"ascii\"\n\"1268929\";\"Jhūsi\";\"main\"\n\"1268929\";\"Jhusi\";\"ascii\"\n\"1268929\";\"Pratishthanpur\";\"other\"\n\"1268936\";\"Jhunjhunūn\";\"main\"\n\"1268936\";\"Jhunjhunun\";\"ascii\"\n\"1268936\";\"Jhunjhunu\";\"other\"\n\"1268936\";\"Jhūnjhunu\";\"other\"\n\"1268961\";\"Jhinjhāna\";\"main\"\n\"1268961\";\"Jhinjhana\";\"ascii\"\n\"1268962\";\"Jhinjhak\";\"main\"\n\"1268977\";\"Jhārsuguda\";\"main\"\n\"1268977\";\"Jharsuguda\";\"ascii\"\n\"1268977\";\"Jharsaguda\";\"other\"\n\"1268977\";\"Jharsguda\";\"other\"\n\"1268977\";\"Jharsogra\";\"other\"\n\"1268977\";\"Jharsugra\";\"other\"\n\"1268977\";\"Jharsugude\";\"other\"\n\"1268977\";\"Jhārsugra\";\"other\"\n\"1268988\";\"Jharia\";\"main\"\n\"1268990\";\"Jhārgrām\";\"main\"\n\"1268990\";\"Jhargram\";\"ascii\"\n\"1268990\";\"Jharagram\";\"other\"\n\"1268990\";\"Jhāragrām\";\"other\"\n\"1269006\";\"Jhānsi\";\"main\"\n\"1269006\";\"Jhansi\";\"ascii\"\n\"1269012\";\"Jhanjhārpur\";\"main\"\n\"1269012\";\"Jhanjharpur\";\"ascii\"\n\"1269019\";\"Jhālū\";\"main\"\n\"1269019\";\"Jhalu\";\"ascii\"\n\"1269020\";\"Jhālrapātan\";\"main\"\n\"1269020\";\"Jhalrapatan\";\"ascii\"\n\"1269020\";\"Jhalrapatan Chhroni\";\"other\"\n\"1269020\";\"Jhalrapatan City\";\"other\"\n\"1269020\";\"Jhalrapatna City\";\"other\"\n\"1269020\";\"Jhālrapātan Chhroni\";\"other\"\n\"1269020\";\"Patan\";\"other\"\n\"1269020\";\"Pātan\";\"other\"\n\"1269026\";\"Jhalida\";\"main\"\n\"1269027\";\"Jhālāwār\";\"main\"\n\"1269027\";\"Jhalawar\";\"ascii\"\n\"1269027\";\"Brijnagar\";\"other\"\n\"1269042\";\"Jhajjar\";\"main\"\n\"1269046\";\"Jhā Jhā\";\"main\"\n\"1269046\";\"Jha Jha\";\"ascii\"\n\"1269053\";\"Jhābua\";\"main\"\n\"1269053\";\"Jhabua\";\"ascii\"\n\"1269053\";\"Dkhabua\";\"other\"\n\"1269053\";\"Дхабуа\";\"other\"\n\"1269056\";\"Jewar\";\"main\"\n\"1269057\";\"Jevargi\";\"main\"\n\"1269057\";\"Jalvergi\";\"other\"\n\"1269064\";\"Jetpur\";\"main\"\n\"1269065\";\"Jetpur\";\"main\"\n\"1269070\";\"Jetalsar\";\"main\"\n\"1269087\";\"Jejūri\";\"main\"\n\"1269087\";\"Jejuri\";\"ascii\"\n\"1269092\";\"Jaypur\";\"main\"\n\"1269092\";\"Jeyepore\";\"other\"\n\"1269092\";\"Jeypore\";\"other\"\n\"1269093\";\"Jaynagar\";\"main\"\n\"1269093\";\"Jayanagar\";\"other\"\n\"1269094\";\"Jaynagar-Majilpur\";\"main\"\n\"1269094\";\"Jaynagar\";\"other\"\n\"1269102\";\"Jayamkondacholapuram\";\"main\"\n\"1269102\";\"Jayankondacholpuram\";\"other\"\n\"1269106\";\"Jawhār\";\"main\"\n\"1269106\";\"Jawhar\";\"ascii\"\n\"1269110\";\"Jāwar\";\"main\"\n\"1269110\";\"Jawar\";\"ascii\"\n\"1269119\";\"Jawāla Mukhi\";\"main\"\n\"1269119\";\"Jawala Mukhi\";\"ascii\"\n\"1269119\";\"Jawalanukhi\";\"other\"\n\"1269119\";\"Jwalamukhi\";\"other\"\n\"1269126\";\"Jāwad\";\"main\"\n\"1269126\";\"Jawad\";\"ascii\"\n\"1269135\";\"Jaunpur\";\"main\"\n\"1269153\";\"Jatāra\";\"main\"\n\"1269153\";\"Jatara\";\"ascii\"\n\"1269154\";\"Jatani\";\"main\"\n\"1269154\";\"Jatni\";\"other\"\n\"1269154\";\"Jātni\";\"other\"\n\"1269158\";\"Jaswantnagar\";\"main\"\n\"1269165\";\"Jasrāna\";\"main\"\n\"1269165\";\"Jasrana\";\"ascii\"\n\"1269168\";\"Jaspur\";\"main\"\n\"1269175\";\"Jasidih\";\"main\"\n\"1269177\";\"Jashpurnagar\";\"main\"\n\"1269177\";\"Jashpur\";\"other\"\n\"1269179\";\"Jasdan\";\"main\"\n\"1269183\";\"Jarwal\";\"main\"\n\"1269217\";\"Jaorā\";\"main\"\n\"1269217\";\"Jaora\";\"ascii\"\n\"1269227\";\"Jānsath\";\"main\"\n\"1269227\";\"Jansath\";\"ascii\"\n\"1269247\";\"Jangipur\";\"main\"\n\"1269256\";\"Jangaon\";\"main\"\n\"1269256\";\"Jangoon\";\"other\"\n\"1269267\";\"Jandiāla Guru\";\"main\"\n\"1269267\";\"Jandiala Guru\";\"ascii\"\n\"1269269\";\"Jandiāla\";\"main\"\n\"1269269\";\"Jandiala\";\"ascii\"\n\"1269269\";\"Jandiali\";\"other\"\n\"1269280\";\"Jāmuria\";\"main\"\n\"1269280\";\"Jamuria\";\"ascii\"\n\"1269280\";\"Jaykayanagar\";\"other\"\n\"1269280\";\"Jaykaynagar\";\"other\"\n\"1269291\";\"Jamūi\";\"main\"\n\"1269291\";\"Jamui\";\"ascii\"\n\"1269298\";\"Jāmtāra\";\"main\"\n\"1269298\";\"Jamtara\";\"ascii\"\n\"1269300\";\"Jamshedpur\";\"main\"\n\"1269300\";\"Dzhamshedpur\";\"other\"\n\"1269300\";\"Jarnshedpur\";\"other\"\n\"1269300\";\"Tatanagar\";\"other\"\n\"1269300\";\"jamasedapura\";\"other\"\n\"1269300\";\"jamsetpur\";\"other\"\n\"1269300\";\"jamushedopuru\";\"other\"\n\"1269300\";\"jia mu xie de bu er\";\"other\"\n\"1269300\";\"Джамшедпур\";\"other\"\n\"1269300\";\"जमशेदपुर\";\"other\"\n\"1269300\";\"জমশেদপুর\";\"other\"\n\"1269300\";\"ஜாம்ஷெட்பூர்\";\"other\"\n\"1269300\";\"ジャムシェドプル\";\"other\"\n\"1269300\";\"ジャムシェードプル\";\"other\"\n\"1269300\";\"贾姆谢德布尔\";\"other\"\n\"1269317\";\"Jāmnagar\";\"main\"\n\"1269317\";\"Jamnagar\";\"ascii\"\n\"1269317\";\"Dzhamnagarom\";\"other\"\n\"1269317\";\"Jamnogar\";\"other\"\n\"1269317\";\"Navanagar\";\"other\"\n\"1269317\";\"Navangar\";\"other\"\n\"1269317\";\"Nawanagar\";\"other\"\n\"1269317\";\"Nowanagar\";\"other\"\n\"1269317\";\"Nowanuggur\";\"other\"\n\"1269317\";\"Джамнагаром\";\"other\"\n\"1269321\";\"Jammu\";\"main\"\n\"1269321\";\"Dzammu\";\"other\"\n\"1269321\";\"Dzhammu\";\"other\"\n\"1269321\";\"Džammú\";\"other\"\n\"1269321\";\"Jammu City\";\"other\"\n\"1269321\";\"jam'mu\";\"other\"\n\"1269321\";\"janmu\";\"other\"\n\"1269321\";\"Джамму\";\"other\"\n\"1269321\";\"جموں\";\"other\"\n\"1269321\";\"जम्मू\";\"other\"\n\"1269321\";\"জম্মু\";\"other\"\n\"1269321\";\"ジャンムー\";\"other\"\n\"1269323\";\"Jammalamadugu\";\"main\"\n\"1269328\";\"Jamkhandi\";\"main\"\n\"1269350\";\"Jambusar\";\"main\"\n\"1269374\";\"Jamālpur\";\"main\"\n\"1269374\";\"Jamalpur\";\"ascii\"\n\"1269377\";\"Jāmai\";\"main\"\n\"1269377\";\"Jamai\";\"ascii\"\n\"1269379\";\"Jāmadoba\";\"main\"\n\"1269379\";\"Jamadoba\";\"ascii\"\n\"1269388\";\"Jalpāiguri\";\"main\"\n\"1269388\";\"Jalpaiguri\";\"ascii\"\n\"1269388\";\"Paiguri\";\"other\"\n\"1269392\";\"Jalor\";\"main\"\n\"1269395\";\"Jālna\";\"main\"\n\"1269395\";\"Jalna\";\"ascii\"\n\"1269406\";\"Jālgaon\";\"main\"\n\"1269406\";\"Jalgaon\";\"ascii\"\n\"1269406\";\"Dzhalgaone\";\"other\"\n\"1269406\";\"Jaigaon\";\"other\"\n\"1269406\";\"Jāigaon\";\"other\"\n\"1269406\";\"Джалгаоне\";\"other\"\n\"1269407\";\"Jālgaon\";\"main\"\n\"1269407\";\"Jalgaon\";\"ascii\"\n\"1269407\";\"Dzhalgaone\";\"other\"\n\"1269407\";\"Джалгаоне\";\"other\"\n\"1269410\";\"Jalgaon\";\"main\"\n\"1269413\";\"Jaleshwar\";\"main\"\n\"1269413\";\"Jaleswar\";\"other\"\n\"1269415\";\"Jalesar\";\"main\"\n\"1269415\";\"Jalesar Town\";\"other\"\n\"1269422\";\"Jālaun\";\"main\"\n\"1269422\";\"Jalaun\";\"ascii\"\n\"1269435\";\"Jalālpur\";\"main\"\n\"1269435\";\"Jalalpur\";\"ascii\"\n\"1269439\";\"Jalālpur\";\"main\"\n\"1269439\";\"Jalalpur\";\"ascii\"\n\"1269439\";\"Jalalpore\";\"other\"\n\"1269439\";\"Surat\";\"other\"\n\"1269441\";\"Jalāli\";\"main\"\n\"1269441\";\"Jalali\";\"ascii\"\n\"1269445\";\"Jalālābād\";\"main\"\n\"1269445\";\"Jalalabad\";\"ascii\"\n\"1269446\";\"Jalālābād\";\"main\"\n\"1269446\";\"Jalalabad\";\"ascii\"\n\"1269447\";\"Jalālābād\";\"main\"\n\"1269447\";\"Jalalabad\";\"ascii\"\n\"1269449\";\"Jalakandāpuram\";\"main\"\n\"1269449\";\"Jalakandapuram\";\"ascii\"\n\"1269449\";\"Jalakantapuram\";\"other\"\n\"1269470\";\"Jākhal\";\"main\"\n\"1269470\";\"Jakhal\";\"ascii\"\n\"1269470\";\"Jakhal Mandi\";\"other\"\n\"1269477\";\"Jājpur\";\"main\"\n\"1269477\";\"Jajpur\";\"ascii\"\n\"1269477\";\"Gaypur\";\"other\"\n\"1269488\";\"Jaito\";\"main\"\n\"1269495\";\"Jaithāri\";\"main\"\n\"1269495\";\"Jaithari\";\"ascii\"\n\"1269498\";\"Jaitāran\";\"main\"\n\"1269498\";\"Jaitaran\";\"ascii\"\n\"1269502\";\"Jaisingpur\";\"main\"\n\"1269502\";\"Jayasingpar\";\"other\"\n\"1269502\";\"Jaysingpur\";\"other\"\n\"1269503\";\"Jaisinghnagar\";\"main\"\n\"1269507\";\"Jaisalmer\";\"main\"\n\"1269507\";\"Dzhajsalmer\";\"other\"\n\"1269507\";\"Джайсалмер\";\"other\"\n\"1269509\";\"Jāis\";\"main\"\n\"1269509\";\"Jais\";\"ascii\"\n\"1269515\";\"Jaipur\";\"main\"\n\"1269515\";\"Dzaipur\";\"other\"\n\"1269515\";\"Dzaipuras\";\"other\"\n\"1269515\";\"Dzajpur\";\"other\"\n\"1269515\";\"Dzhajpur\";\"other\"\n\"1269515\";\"Dźajpur\";\"other\"\n\"1269515\";\"Džaipur\";\"other\"\n\"1269515\";\"Džaipuras\";\"other\"\n\"1269515\";\"Jainagar\";\"other\"\n\"1269515\";\"Jaipur City\";\"other\"\n\"1269515\";\"Jayapur\";\"other\"\n\"1269515\";\"Jeypore\";\"other\"\n\"1269515\";\"jaipuleu\";\"other\"\n\"1269515\";\"jaipuru\";\"other\"\n\"1269515\";\"jayapura\";\"other\"\n\"1269515\";\"jeyppur\";\"other\"\n\"1269515\";\"Џајпур\";\"other\"\n\"1269515\";\"Джайпур\";\"other\"\n\"1269515\";\"جے پور\";\"other\"\n\"1269515\";\"जयपुर\";\"other\"\n\"1269515\";\"जयपूर\";\"other\"\n\"1269515\";\"জয়পুর\";\"other\"\n\"1269515\";\"ஜெய்ப்பூர்\";\"other\"\n\"1269515\";\"ジャイプル\";\"other\"\n\"1269515\";\"자이푸르\";\"other\"\n\"1269525\";\"Jainpur\";\"main\"\n\"1269525\";\"Jianpur\";\"other\"\n\"1269525\";\"Jiyanpur\";\"other\"\n\"1269525\";\"Jīanpur\";\"other\"\n\"1269545\";\"Jahāzpur\";\"main\"\n\"1269545\";\"Jahazpur\";\"ascii\"\n\"1269548\";\"Jahāngīrpur\";\"main\"\n\"1269548\";\"Jahangirpur\";\"ascii\"\n\"1269551\";\"Jahāngīrābād\";\"main\"\n\"1269551\";\"Jahangirabad\";\"ascii\"\n\"1269555\";\"Jahānābād\";\"main\"\n\"1269555\";\"Jahanabad\";\"ascii\"\n\"1269557\";\"Jahānābād\";\"main\"\n\"1269557\";\"Jahanabad\";\"ascii\"\n\"1269562\";\"Jagtiāl\";\"main\"\n\"1269562\";\"Jagtial\";\"ascii\"\n\"1269564\";\"Jagraon\";\"main\"\n\"1269567\";\"Jagnair\";\"main\"\n\"1269570\";\"Jaggayyapeta\";\"main\"\n\"1269573\";\"Jagdīspur\";\"main\"\n\"1269573\";\"Jagdispur\";\"ascii\"\n\"1269578\";\"Jagdalpur\";\"main\"\n\"1269581\";\"Jagatsinghapur\";\"main\"\n\"1269581\";\"Jagatsinghpur\";\"other\"\n\"1269581\";\"Jagatsingpur\";\"other\"\n\"1269592\";\"Jagannāthpur\";\"main\"\n\"1269592\";\"Jagannathpur\";\"ascii\"\n\"1269602\";\"Jagalūr\";\"main\"\n\"1269602\";\"Jagalur\";\"ascii\"\n\"1269605\";\"Jagādhri\";\"main\"\n\"1269605\";\"Jagadhri\";\"ascii\"\n\"1269633\";\"Jabalpur\";\"main\"\n\"1269633\";\"Dzabalpur\";\"other\"\n\"1269633\";\"Dzabalpuras\";\"other\"\n\"1269633\";\"Dzhabalpur\";\"other\"\n\"1269633\";\"Dźabalpur\";\"other\"\n\"1269633\";\"Džabalpuras\";\"other\"\n\"1269633\";\"Jubbulpore\";\"other\"\n\"1269633\";\"jabalapura\";\"other\"\n\"1269633\";\"jabarupuru\";\"other\"\n\"1269633\";\"jblpur\";\"other\"\n\"1269633\";\"Джабалпур\";\"other\"\n\"1269633\";\"جبلپُر\";\"other\"\n\"1269633\";\"जबलपुर\";\"other\"\n\"1269633\";\"ジャバルプル\";\"other\"\n\"1269646\";\"Itimādpur\";\"main\"\n\"1269646\";\"Itimadpur\";\"ascii\"\n\"1269652\";\"Itaunja\";\"main\"\n\"1269653\";\"Itārsi\";\"main\"\n\"1269653\";\"Itarsi\";\"ascii\"\n\"1269655\";\"Itānagar\";\"main\"\n\"1269655\";\"Itanagar\";\"ascii\"\n\"1269655\";\"Kalyanpur\";\"other\"\n\"1269655\";\"itanagara\";\"other\"\n\"1269655\";\"itanagaru\";\"other\"\n\"1269655\";\"ittanakar\";\"other\"\n\"1269655\";\"Итанагар\";\"other\"\n\"1269655\";\"इटानगर\";\"other\"\n\"1269655\";\"ईटानगर\";\"other\"\n\"1269655\";\"ইটানগর\";\"other\"\n\"1269655\";\"இட்டாநகர்\";\"other\"\n\"1269655\";\"イタナガル\";\"other\"\n\"1269655\";\"イーターナガル\";\"other\"\n\"1269665\";\"Islāmpur\";\"main\"\n\"1269665\";\"Islampur\";\"ascii\"\n\"1269666\";\"Islāmpur\";\"main\"\n\"1269666\";\"Islampur\";\"ascii\"\n\"1269670\";\"Islāmnagar\";\"main\"\n\"1269670\";\"Islamnagar\";\"ascii\"\n\"1269685\";\"Isāgarh\";\"main\"\n\"1269685\";\"Isagarh\";\"ascii\"\n\"1269690\";\"Irugūr\";\"main\"\n\"1269690\";\"Irugur\";\"ascii\"\n\"1269693\";\"Irinjālakuda\";\"main\"\n\"1269693\";\"Irinjalakuda\";\"ascii\"\n\"1269723\";\"Ingrāj Bāzār\";\"main\"\n\"1269723\";\"Ingraj Bazar\";\"ascii\"\n\"1269723\";\"English Bazar\";\"other\"\n\"1269723\";\"English Bāzār\";\"other\"\n\"1269731\";\"Indri\";\"main\"\n\"1269731\";\"Ramgarh\";\"other\"\n\"1269731\";\"Rāmgarh\";\"other\"\n\"1269743\";\"Indore\";\"main\"\n\"1269743\";\"Indaur\";\"other\"\n\"1269743\";\"Indor\";\"other\"\n\"1269743\";\"Induras\";\"other\"\n\"1269743\";\"indaura\";\"other\"\n\"1269743\";\"indora\";\"other\"\n\"1269743\";\"indoru\";\"other\"\n\"1269743\";\"indura\";\"other\"\n\"1269743\";\"Индор\";\"other\"\n\"1269743\";\"इंदूर\";\"other\"\n\"1269743\";\"इंदौर\";\"other\"\n\"1269743\";\"ইন্দোর\";\"other\"\n\"1269743\";\"インドール\";\"other\"\n\"1269751\";\"Indi\";\"main\"\n\"1269752\";\"Indergarh\";\"main\"\n\"1269761\";\"Indāpur\";\"main\"\n\"1269761\";\"Indapur\";\"ascii\"\n\"1269761\";\"Indapuri\";\"other\"\n\"1269771\";\"Imphāl\";\"main\"\n\"1269771\";\"Imphal\";\"ascii\"\n\"1269771\";\"Impkhal\";\"other\"\n\"1269771\";\"impal\";\"other\"\n\"1269771\";\"imphala\";\"other\"\n\"1269771\";\"inparu\";\"other\"\n\"1269771\";\"Импхал\";\"other\"\n\"1269771\";\"इंफाल\";\"other\"\n\"1269771\";\"इम्फाल\";\"other\"\n\"1269771\";\"ইম্ফল\";\"other\"\n\"1269771\";\"இம்பால்\";\"other\"\n\"1269771\";\"インパール\";\"other\"\n\"1269782\";\"Iluppūr\";\"main\"\n\"1269782\";\"Iluppur\";\"ascii\"\n\"1269782\";\"Illuppur\";\"other\"\n\"1269784\";\"Ilkal\";\"main\"\n\"1269792\";\"Ilampillai\";\"main\"\n\"1269801\";\"Iklehra\";\"main\"\n\"1269805\";\"Ikauna\";\"main\"\n\"1269809\";\"Iglās\";\"main\"\n\"1269809\";\"Iglas\";\"ascii\"\n\"1269810\";\"Igatpuri\";\"main\"\n\"1269810\";\"Vigatpuri\";\"other\"\n\"1269810\";\"Wigatpura\";\"other\"\n\"1269811\";\"Idukki\";\"main\"\n\"1269811\";\"Idiaki\";\"other\"\n\"1269811\";\"Idikki\";\"other\"\n\"1269819\";\"Idāppādi\";\"main\"\n\"1269819\";\"Idappadi\";\"ascii\"\n\"1269824\";\"Ichhāwar\";\"main\"\n\"1269824\";\"Ichhawar\";\"ascii\"\n\"1269827\";\"Ichchāpuram\";\"main\"\n\"1269827\";\"Ichchapuram\";\"ascii\"\n\"1269827\";\"Ichapuram\";\"other\"\n\"1269827\";\"Ichchapur\";\"other\"\n\"1269827\";\"Ichekapuram\";\"other\"\n\"1269834\";\"Ichalkaranji\";\"main\"\n\"1269843\";\"Hyderābād\";\"main\"\n\"1269843\";\"Hyderabad\";\"ascii\"\n\"1269843\";\"Bhaganagar\";\"other\"\n\"1269843\";\"Haidarabadas\";\"other\"\n\"1269843\";\"Haiderabad\";\"other\"\n\"1269843\";\"Hajdarabad\";\"other\"\n\"1269843\";\"Hajdarábád\";\"other\"\n\"1269843\";\"Hyderabad-Deccan\";\"other\"\n\"1269843\";\"Khajdarabad\";\"other\"\n\"1269843\";\"Khajderabad\";\"other\"\n\"1269843\";\"hai de la ba\";\"other\"\n\"1269843\";\"haidarabada\";\"other\"\n\"1269843\";\"haidarabadu\";\"other\"\n\"1269843\";\"haiderabado\";\"other\"\n\"1269843\";\"haitarapat\";\"other\"\n\"1269843\";\"hayadarabada ema. karporesana\";\"other\"\n\"1269843\";\"hayadrabada\";\"other\"\n\"1269843\";\"hydr abad\";\"other\"\n\"1269843\";\"hydr abad dkn\";\"other\"\n\"1269843\";\"hydrabad\";\"other\"\n\"1269843\";\"Хайдарабад\";\"other\"\n\"1269843\";\"Хајдерабад\";\"other\"\n\"1269843\";\"حیدر آباد\";\"other\"\n\"1269843\";\"حیدر آباد دکن\";\"other\"\n\"1269843\";\"حیدرآباد\";\"other\"\n\"1269843\";\"हैदराबाद\";\"other\"\n\"1269843\";\"হায়দরাবাদ এম. কর্পোরেশন\";\"other\"\n\"1269843\";\"হায়দ্রাবাদ\";\"other\"\n\"1269843\";\"ஹைதராபாத்\";\"other\"\n\"1269843\";\"హైదరాబాదు\";\"other\"\n\"1269843\";\"ハイデラバード\";\"other\"\n\"1269843\";\"海得拉巴\";\"other\"\n\"1269849\";\"Huvinabadgalli\";\"main\"\n\"1269849\";\"Hadagalli\";\"other\"\n\"1269849\";\"Huvvmahadagalli\";\"other\"\n\"1269862\";\"Husainābād\";\"main\"\n\"1269862\";\"Husainabad\";\"ascii\"\n\"1269862\";\"Jopla\";\"other\"\n\"1269873\";\"Hunsūr\";\"main\"\n\"1269873\";\"Hunsur\";\"ascii\"\n\"1269873\";\"Khunsur\";\"other\"\n\"1269873\";\"Хунсур\";\"other\"\n\"1269876\";\"Hungund\";\"main\"\n\"1269908\";\"Hukeri\";\"main\"\n\"1269910\";\"Hugli\";\"main\"\n\"1269910\";\"Hooghly\";\"other\"\n\"1269910\";\"Hooghly-Chinsura\";\"other\"\n\"1269910\";\"Hooghly-Chinsurah\";\"other\"\n\"1269910\";\"Khugli\";\"other\"\n\"1269910\";\"Хугли\";\"other\"\n\"1269920\";\"Hubli\";\"main\"\n\"1269920\";\"Hubballi\";\"other\"\n\"1269920\";\"Hubli City\";\"other\"\n\"1269920\";\"ಹುಬ್ಬಳ್ಳಿ\";\"other\"\n\"1269927\";\"Howli\";\"main\"\n\"1269934\";\"Hosūr\";\"main\"\n\"1269934\";\"Hosur\";\"ascii\"\n\"1269934\";\"Oossoor\";\"other\"\n\"1269935\";\"Hospet\";\"main\"\n\"1269935\";\"Hosapete\";\"other\"\n\"1269935\";\"Khospet\";\"other\"\n\"1269935\";\"Хоспет\";\"other\"\n\"1269935\";\"ಹೊಸ್ಪೇಟೆ\";\"other\"\n\"1269936\";\"Hoskote\";\"main\"\n\"1269937\";\"Hoshiārpur\";\"main\"\n\"1269937\";\"Hoshiarpur\";\"ascii\"\n\"1269937\";\"Hushiarpur\";\"other\"\n\"1269939\";\"Hoshangābād\";\"main\"\n\"1269939\";\"Hoshangabad\";\"ascii\"\n\"1269943\";\"Hosdurga\";\"main\"\n\"1269943\";\"Hosadurga\";\"other\"\n\"1269945\";\"Hosangadi\";\"main\"\n\"1269946\";\"Hosanagara\";\"main\"\n\"1269947\";\"Hosakote\";\"main\"\n\"1269970\";\"Honnāli\";\"main\"\n\"1269970\";\"Honnali\";\"ascii\"\n\"1269976\";\"Honāvar\";\"main\"\n\"1269976\";\"Honavar\";\"ascii\"\n\"1269976\";\"Honawar\";\"other\"\n\"1269976\";\"Honore\";\"other\"\n\"1269976\";\"Onore\";\"other\"\n\"1269979\";\"Homnābād\";\"main\"\n\"1269979\";\"Homnabad\";\"ascii\"\n\"1269979\";\"Hominabad\";\"other\"\n\"1269985\";\"Hole Narsipur\";\"main\"\n\"1269990\";\"Holalkere\";\"main\"\n\"1269993\";\"Hojāi\";\"main\"\n\"1269993\";\"Hojai\";\"ascii\"\n\"1270000\";\"Hodal\";\"main\"\n\"1270021\";\"Hisua\";\"main\"\n\"1270022\";\"Hisār\";\"main\"\n\"1270022\";\"Hisar\";\"ascii\"\n\"1270022\";\"Hissar\";\"other\"\n\"1270022\";\"Hissār\";\"other\"\n\"1270022\";\"Khisar\";\"other\"\n\"1270022\";\"Хисар\";\"other\"\n\"1270032\";\"Hiriyūr\";\"main\"\n\"1270032\";\"Hiriyur\";\"ascii\"\n\"1270036\";\"Hirekerūr\";\"main\"\n\"1270036\";\"Hirekerur\";\"ascii\"\n\"1270048\";\"Hīrāpur\";\"main\"\n\"1270048\";\"Hirapur\";\"ascii\"\n\"1270056\";\"Hīrānagar\";\"main\"\n\"1270056\";\"Hiranagar\";\"ascii\"\n\"1270059\";\"Hīrākūd\";\"main\"\n\"1270059\";\"Hirakud\";\"ascii\"\n\"1270066\";\"Hinjilikatu\";\"main\"\n\"1270066\";\"Hinjili\";\"other\"\n\"1270066\";\"Hinjilicut\";\"other\"\n\"1270072\";\"Hingoli\";\"main\"\n\"1270077\";\"Hinganghāt\";\"main\"\n\"1270077\";\"Hinganghat\";\"ascii\"\n\"1270079\";\"Hindupur\";\"main\"\n\"1270082\";\"Hindoriā\";\"main\"\n\"1270082\";\"Hindoria\";\"ascii\"\n\"1270090\";\"Hindaun\";\"main\"\n\"1270099\";\"Himatnagar\";\"main\"\n\"1270099\";\"Ahmadnagar\";\"other\"\n\"1270099\";\"Ahmednagar\";\"other\"\n\"1270102\";\"Hilsa\";\"main\"\n\"1270118\";\"Hesla\";\"main\"\n\"1270127\";\"Herbertpur\";\"main\"\n\"1270151\";\"Heggadadevankote\";\"main\"\n\"1270151\";\"Heggaddevankote\";\"other\"\n\"1270164\";\"Hazārībāg\";\"main\"\n\"1270164\";\"Hazaribag\";\"ascii\"\n\"1270164\";\"Hazaribagh\";\"other\"\n\"1270164\";\"Hazarybaugh\";\"other\"\n\"1270164\";\"Hazāribāgh\";\"other\"\n\"1270164\";\"Khazaribag\";\"other\"\n\"1270164\";\"hajaribaga\";\"other\"\n\"1270164\";\"Хазарибаг\";\"other\"\n\"1270164\";\"हजारीबाग\";\"other\"\n\"1270171\";\"Hāveri\";\"main\"\n\"1270171\";\"Haveri\";\"ascii\"\n\"1270185\";\"Hatta\";\"main\"\n\"1270185\";\"Hatla\";\"other\"\n\"1270185\";\"Khatta\";\"other\"\n\"1270185\";\"Хатта\";\"other\"\n\"1270192\";\"Hātod\";\"main\"\n\"1270192\";\"Hatod\";\"ascii\"\n\"1270216\";\"Hāthras\";\"main\"\n\"1270216\";\"Hathras\";\"ascii\"\n\"1270232\";\"Hāta\";\"main\"\n\"1270232\";\"Hata\";\"ascii\"\n\"1270237\";\"Hastināpur\";\"main\"\n\"1270237\";\"Hastinapur\";\"ascii\"\n\"1270239\";\"Hassan\";\"main\"\n\"1270239\";\"Khasan\";\"other\"\n\"1270239\";\"ha sang\";\"other\"\n\"1270239\";\"hasana\";\"other\"\n\"1270239\";\"Хасан\";\"other\"\n\"1270239\";\"ಹಾಸನ\";\"other\"\n\"1270239\";\"哈桑\";\"other\"\n\"1270245\";\"Hāsimāra\";\"main\"\n\"1270245\";\"Hasimara\";\"ascii\"\n\"1270245\";\"Hashimara\";\"other\"\n\"1270251\";\"Hasanpur\";\"main\"\n\"1270252\";\"Hasanpur\";\"main\"\n\"1270265\";\"Harūr\";\"main\"\n\"1270265\";\"Harur\";\"ascii\"\n\"1270271\";\"Harsūd\";\"main\"\n\"1270271\";\"Harsud\";\"ascii\"\n\"1270286\";\"Harrai\";\"main\"\n\"1270287\";\"Harpanahalli\";\"main\"\n\"1270291\";\"Harpālpur\";\"main\"\n\"1270291\";\"Harpalpur\";\"ascii\"\n\"1270304\";\"Harnai\";\"main\"\n\"1270304\";\"Herni\";\"other\"\n\"1270336\";\"Haringhāta\";\"main\"\n\"1270336\";\"Haringhata\";\"ascii\"\n\"1270336\";\"Harringhatta\";\"other\"\n\"1270343\";\"Hārij\";\"main\"\n\"1270343\";\"Harij\";\"ascii\"\n\"1270349\";\"Harihar\";\"main\"\n\"1270351\";\"Haridwār\";\"main\"\n\"1270351\";\"Haridwar\";\"ascii\"\n\"1270351\";\"Hardwar\";\"other\"\n\"1270351\";\"Hardwār\";\"other\"\n\"1270351\";\"Kharidvar\";\"other\"\n\"1270351\";\"haridvara\";\"other\"\n\"1270351\";\"Харидвар\";\"other\"\n\"1270351\";\"हरिद्वार\";\"other\"\n\"1270357\";\"Hariāna\";\"main\"\n\"1270357\";\"Hariana\";\"ascii\"\n\"1270364\";\"Harduāganj\";\"main\"\n\"1270364\";\"Harduaganj\";\"ascii\"\n\"1270364\";\"Harduganj\";\"other\"\n\"1270370\";\"Hardoī\";\"main\"\n\"1270370\";\"Hardoi\";\"ascii\"\n\"1270375\";\"Harda\";\"main\"\n\"1270391\";\"Haraiya\";\"main\"\n\"1270393\";\"Hāpur\";\"main\"\n\"1270393\";\"Hapur\";\"ascii\"\n\"1270396\";\"Hāora\";\"main\"\n\"1270396\";\"Haora\";\"ascii\"\n\"1270396\";\"Haura\";\"other\"\n\"1270396\";\"Hawrah\";\"other\"\n\"1270396\";\"Howrah\";\"other\"\n\"1270396\";\"ha'ora\";\"other\"\n\"1270396\";\"haura\";\"other\"\n\"1270396\";\"হাওড়া\";\"other\"\n\"1270396\";\"ハウラー\";\"other\"\n\"1270396\";\"ハーウラー\";\"other\"\n\"1270407\";\"Hanumāngarh\";\"main\"\n\"1270407\";\"Hanumangarh\";\"ascii\"\n\"1270407\";\"Sadulgarh\";\"other\"\n\"1270413\";\"Hansot\";\"main\"\n\"1270413\";\"Hansut\";\"other\"\n\"1270417\";\"Hānsi\";\"main\"\n\"1270417\";\"Hansi\";\"ascii\"\n\"1270417\";\"Khansi\";\"other\"\n\"1270417\";\"Ханси\";\"other\"\n\"1270435\";\"Hāngal\";\"main\"\n\"1270435\";\"Hangal\";\"ascii\"\n\"1270437\";\"Handiā\";\"main\"\n\"1270437\";\"Handia\";\"ascii\"\n\"1270448\";\"Hampi\";\"main\"\n\"1270448\";\"Khampi\";\"other\"\n\"1270448\";\"hampi\";\"other\"\n\"1270448\";\"Хампи\";\"other\"\n\"1270454\";\"Hamīrpur\";\"main\"\n\"1270454\";\"Hamirpur\";\"ascii\"\n\"1270455\";\"Hamīrpur\";\"main\"\n\"1270455\";\"Hamirpur\";\"ascii\"\n\"1270466\";\"Halvad\";\"main\"\n\"1270466\";\"Halwad\";\"other\"\n\"1270474\";\"Hālol\";\"main\"\n\"1270474\";\"Halol\";\"ascii\"\n\"1270482\";\"Haliyāl\";\"main\"\n\"1270482\";\"Haliyal\";\"ascii\"\n\"1270484\";\"Hālīsahar\";\"main\"\n\"1270484\";\"Halisahar\";\"ascii\"\n\"1270484\";\"Halishahar\";\"other\"\n\"1270498\";\"Haldwāni\";\"main\"\n\"1270498\";\"Haldwani\";\"ascii\"\n\"1270504\";\"Haldībāri\";\"main\"\n\"1270504\";\"Haldibari\";\"ascii\"\n\"1270504\";\"Haldibabi\";\"other\"\n\"1270509\";\"Haldaur\";\"main\"\n\"1270522\";\"Hājo\";\"main\"\n\"1270522\";\"Hajo\";\"ascii\"\n\"1270522\";\"Nij Hajo\";\"other\"\n\"1270522\";\"Nij Hājo\";\"other\"\n\"1270523\";\"Hājīpur\";\"main\"\n\"1270523\";\"Hajipur\";\"ascii\"\n\"1270523\";\"Hajjipur\";\"other\"\n\"1270523\";\"Hājjīpur\";\"other\"\n\"1270523\";\"Khadzhipur\";\"other\"\n\"1270523\";\"Хаджипур\";\"other\"\n\"1270525\";\"Hājīpur\";\"main\"\n\"1270525\";\"Hajipur\";\"ascii\"\n\"1270525\";\"Khadzhipur\";\"other\"\n\"1270525\";\"Хаджипур\";\"other\"\n\"1270529\";\"Hājan\";\"main\"\n\"1270529\";\"Hajan\";\"ascii\"\n\"1270530\";\"Hailākāndi\";\"main\"\n\"1270530\";\"Hailakandi\";\"ascii\"\n\"1270530\";\"Hailikandi\";\"other\"\n\"1270530\";\"Hylakandi\";\"other\"\n\"1270543\";\"Hāflong\";\"main\"\n\"1270543\";\"Haflong\";\"ascii\"\n\"1270543\";\"Haflang\";\"other\"\n\"1270554\";\"Hadgaon\";\"main\"\n\"1270568\";\"Hābra\";\"main\"\n\"1270568\";\"Habra\";\"ascii\"\n\"1270576\";\"Gyānpur\";\"main\"\n\"1270576\";\"Gyanpur\";\"ascii\"\n\"1270583\";\"Gwalior\";\"main\"\n\"1270583\";\"Gvalior\";\"other\"\n\"1270583\";\"Гвалиор\";\"other\"\n\"1270598\";\"Guskhara\";\"main\"\n\"1270598\";\"Gushkara\";\"other\"\n\"1270603\";\"Guruvāyūr\";\"main\"\n\"1270603\";\"Guruvayur\";\"ascii\"\n\"1270612\";\"Guru Har Sahāi\";\"main\"\n\"1270612\";\"Guru Har Sahai\";\"ascii\"\n\"1270618\";\"Gursarāi\";\"main\"\n\"1270618\";\"Gursarai\";\"ascii\"\n\"1270619\";\"Gursahāiganj\";\"main\"\n\"1270619\";\"Gursahaiganj\";\"ascii\"\n\"1270627\";\"Gurmatkal\";\"main\"\n\"1270627\";\"Gurmatkol\";\"other\"\n\"1270640\";\"Gurh\";\"main\"\n\"1270640\";\"Goorha\";\"other\"\n\"1270642\";\"Gurgaon\";\"main\"\n\"1270642\";\"Гургаон\";\"other\"\n\"1270667\";\"Gunupur\";\"main\"\n\"1270668\";\"Guntūr\";\"main\"\n\"1270668\";\"Guntur\";\"ascii\"\n\"1270668\";\"Guntura\";\"other\"\n\"1270668\";\"Гунтура\";\"other\"\n\"1270670\";\"Guntakal\";\"main\"\n\"1270670\";\"Guntakai\";\"other\"\n\"1270674\";\"Gunnaur\";\"main\"\n\"1270686\";\"Gundlupet\";\"main\"\n\"1270686\";\"Gundalpet\";\"other\"\n\"1270711\";\"Guna\";\"main\"\n\"1270718\";\"Gummidipūndi\";\"main\"\n\"1270718\";\"Gummidipundi\";\"ascii\"\n\"1270718\";\"Gummudipundi\";\"other\"\n\"1270718\";\"Gummudipūndi\";\"other\"\n\"1270722\";\"Gumla\";\"main\"\n\"1270723\";\"Gumia\";\"main\"\n\"1270750\";\"Guledagudda\";\"main\"\n\"1270750\";\"Guledgarh\";\"other\"\n\"1270750\";\"Guledgud\";\"other\"\n\"1270750\";\"Guledgudd\";\"other\"\n\"1270752\";\"Gulbarga\";\"main\"\n\"1270752\";\"Gul'barga\";\"other\"\n\"1270752\";\"Gulburga\";\"other\"\n\"1270752\";\"Kalburgi\";\"other\"\n\"1270752\";\"Kulbarga\";\"other\"\n\"1270752\";\"gu er bo jia\";\"other\"\n\"1270752\";\"gulbarga\";\"other\"\n\"1270752\";\"gurubaruga\";\"other\"\n\"1270752\";\"Гульбарга\";\"other\"\n\"1270752\";\"ಕಾಲಬೂರ್ಗಿ\";\"other\"\n\"1270752\";\"ಗುಲ್ಬರ್ಗ\";\"other\"\n\"1270752\";\"グルバルガ\";\"other\"\n\"1270752\";\"古尔伯加\";\"other\"\n\"1270759\";\"Gulaothi\";\"main\"\n\"1270763\";\"Gulābpura\";\"main\"\n\"1270763\";\"Gulabpura\";\"ascii\"\n\"1270774\";\"Guirim\";\"main\"\n\"1270779\";\"Guhāgar\";\"main\"\n\"1270779\";\"Guhagar\";\"ascii\"\n\"1270787\";\"Gūduvāncheri\";\"main\"\n\"1270787\";\"Guduvancheri\";\"ascii\"\n\"1270789\";\"Gūdūr\";\"main\"\n\"1270789\";\"Gudur\";\"ascii\"\n\"1270791\";\"Gūdūr\";\"main\"\n\"1270791\";\"Gudur\";\"ascii\"\n\"1270800\";\"Gudiyāttam\";\"main\"\n\"1270800\";\"Gudiyattam\";\"ascii\"\n\"1270801\";\"Gudivāda\";\"main\"\n\"1270801\";\"Gudivada\";\"ascii\"\n\"1270806\";\"Gudibanda\";\"main\"\n\"1270818\";\"Gudāri\";\"main\"\n\"1270818\";\"Gudari\";\"ascii\"\n\"1270820\";\"Gūdalūr\";\"main\"\n\"1270820\";\"Gudalur\";\"ascii\"\n\"1270824\";\"Gubbi\";\"main\"\n\"1270827\";\"Gua\";\"main\"\n\"1270845\";\"Goyerkāta\";\"main\"\n\"1270845\";\"Goyerkata\";\"ascii\"\n\"1270854\";\"Govindgarh\";\"main\"\n\"1270856\";\"Govindgarh\";\"main\"\n\"1270863\";\"Govardhan\";\"main\"\n\"1270863\";\"Gobardhan\";\"other\"\n\"1270863\";\"Govardkhan\";\"other\"\n\"1270863\";\"Говардхан\";\"other\"\n\"1270888\";\"Gossaigaon\";\"main\"\n\"1270890\";\"Goshainganj\";\"main\"\n\"1270890\";\"Gosainganj\";\"other\"\n\"1270895\";\"Gosainganj\";\"main\"\n\"1270895\";\"Goshainganj\";\"other\"\n\"1270895\";\"Goshāinganj\";\"other\"\n\"1270898\";\"Gorūr\";\"main\"\n\"1270898\";\"Gorur\";\"ascii\"\n\"1270914\";\"Goregaon\";\"main\"\n\"1270926\";\"Gorakhpur\";\"main\"\n\"1270926\";\"Gorakpura\";\"other\"\n\"1270926\";\"Горакпура\";\"other\"\n\"1270927\";\"Gorakhpur\";\"main\"\n\"1270927\";\"Gorakpura\";\"other\"\n\"1270927\";\"Goruckpur\";\"other\"\n\"1270927\";\"Korakhpur\";\"other\"\n\"1270927\";\"Горакпура\";\"other\"\n\"1270944\";\"Gopināthpur\";\"main\"\n\"1270944\";\"Gopinathpur\";\"ascii\"\n\"1270947\";\"Gopichettipālaiyam\";\"main\"\n\"1270947\";\"Gopichettipalaiyam\";\"ascii\"\n\"1270947\";\"Gobichettipalaiyam\";\"other\"\n\"1270947\";\"Gobichettipalayam\";\"other\"\n\"1270947\";\"Gobichettipalyam\";\"other\"\n\"1270951\";\"Gopāmau\";\"main\"\n\"1270951\";\"Gopamau\";\"ascii\"\n\"1270952\";\"Gopālur\";\"main\"\n\"1270952\";\"Gopalur\";\"ascii\"\n\"1270952\";\"Gopalour\";\"other\"\n\"1270961\";\"Gopālpur\";\"main\"\n\"1270961\";\"Gopalpur\";\"ascii\"\n\"1270961\";\"Gopalpur-on-Sea\";\"other\"\n\"1270961\";\"Gopālpur-on-Sea\";\"other\"\n\"1270965\";\"Gopālganj\";\"main\"\n\"1270965\";\"Gopalganj\";\"ascii\"\n\"1270990\";\"Gondia\";\"main\"\n\"1270994\";\"Gondal\";\"main\"\n\"1270996\";\"Gonda\";\"main\"\n\"1270996\";\"Gonda Oudh\";\"other\"\n\"1270996\";\"Гонда\";\"other\"\n\"1271005\";\"Gomoh\";\"main\"\n\"1271047\";\"Golakganj\";\"main\"\n\"1271047\";\"Golakgans\";\"other\"\n\"1271049\";\"Gola Gokarannāth\";\"main\"\n\"1271049\";\"Gola Gokarannath\";\"ascii\"\n\"1271049\";\"Gola\";\"other\"\n\"1271050\";\"Golāghāt\";\"main\"\n\"1271050\";\"Golaghat\";\"ascii\"\n\"1271052\";\"Gola Bāzār\";\"main\"\n\"1271052\";\"Gola Bazar\";\"ascii\"\n\"1271059\";\"Gokul\";\"main\"\n\"1271064\";\"Gokarna\";\"main\"\n\"1271064\";\"Gokarn\";\"other\"\n\"1271064\";\"Гокарн\";\"other\"\n\"1271067\";\"Gokāk\";\"main\"\n\"1271067\";\"Gokak\";\"ascii\"\n\"1271067\";\"Гокак\";\"other\"\n\"1271074\";\"Gohpur\";\"main\"\n\"1271078\";\"Gohānd\";\"main\"\n\"1271078\";\"Gohand\";\"ascii\"\n\"1271079\";\"Gohāna\";\"main\"\n\"1271079\";\"Gohana\";\"ascii\"\n\"1271083\";\"Gohad\";\"main\"\n\"1271093\";\"Gogāpur\";\"main\"\n\"1271093\";\"Gogapur\";\"ascii\"\n\"1271107\";\"Godhra\";\"main\"\n\"1271107\";\"Godhr\";\"other\"\n\"1271107\";\"Godkhre\";\"other\"\n\"1271107\";\"Годхре\";\"other\"\n\"1271113\";\"Goddā\";\"main\"\n\"1271113\";\"Godda\";\"ascii\"\n\"1271130\";\"Gobindpur\";\"main\"\n\"1271131\";\"Gobindpur\";\"main\"\n\"1271142\";\"Gobārdānga\";\"main\"\n\"1271142\";\"Gobardanga\";\"ascii\"\n\"1271146\";\"Goa Velha\";\"main\"\n\"1271151\";\"Goālpāra\";\"main\"\n\"1271151\";\"Goalpara\";\"ascii\"\n\"1271175\";\"Girīdīh\";\"main\"\n\"1271175\";\"Giridih\";\"ascii\"\n\"1271175\";\"girid'iha\";\"other\"\n\"1271175\";\"girid'iha jila\";\"other\"\n\"1271175\";\"giridi\";\"other\"\n\"1271175\";\"گریڈیہہ\";\"other\"\n\"1271175\";\"गिरीडीह\";\"other\"\n\"1271175\";\"गिरीडीह जिला\";\"other\"\n\"1271175\";\"গিরিডি\";\"other\"\n\"1271199\";\"Gingee\";\"main\"\n\"1271212\";\"Giddarbāha\";\"main\"\n\"1271212\";\"Giddarbaha\";\"ascii\"\n\"1271213\";\"Giddalūr\";\"main\"\n\"1271213\";\"Giddalur\";\"ascii\"\n\"1271215\";\"Gīdam\";\"main\"\n\"1271215\";\"Gidam\";\"ascii\"\n\"1271215\";\"Gidum\";\"other\"\n\"1271244\";\"Ghūgus\";\"main\"\n\"1271244\";\"Ghugus\";\"ascii\"\n\"1271250\";\"Ghoti Budrukh\";\"main\"\n\"1271250\";\"Ghoti\";\"other\"\n\"1271259\";\"Ghosi\";\"main\"\n\"1271264\";\"Ghorawal\";\"main\"\n\"1271264\";\"Ghorawul\";\"other\"\n\"1271264\";\"Ghorwal\";\"other\"\n\"1271285\";\"Ghogha\";\"main\"\n\"1271285\";\"Cogna\";\"other\"\n\"1271285\";\"Gogha\";\"other\"\n\"1271295\";\"Ghiror\";\"main\"\n\"1271306\";\"Ghāzīpur\";\"main\"\n\"1271306\";\"Ghazipur\";\"ascii\"\n\"1271308\";\"Ghāziābād\";\"main\"\n\"1271308\";\"Ghaziabad\";\"ascii\"\n\"1271308\";\"Gaziabad\";\"other\"\n\"1271308\";\"Ghazibad\";\"other\"\n\"1271308\";\"Газиабад\";\"other\"\n\"1271319\";\"Ghātsīla\";\"main\"\n\"1271319\";\"Ghatsila\";\"ascii\"\n\"1271319\";\"Ghatshila\";\"other\"\n\"1271343\";\"Ghātanji\";\"main\"\n\"1271343\";\"Ghatanji\";\"ascii\"\n\"1271345\";\"Ghātampur\";\"main\"\n\"1271345\";\"Ghatampur\";\"ascii\"\n\"1271346\";\"Ghātāl\";\"main\"\n\"1271346\";\"Ghatal\";\"ascii\"\n\"1271361\";\"Gharghoda\";\"main\"\n\"1271363\";\"Gharaunda\";\"main\"\n\"1271374\";\"Ghansor\";\"main\"\n\"1271386\";\"Ghanaur\";\"main\"\n\"1271393\";\"Ghamārwin\";\"main\"\n\"1271393\";\"Ghamarwin\";\"ascii\"\n\"1271413\";\"Gevrai\";\"main\"\n\"1271439\";\"Gaya\";\"main\"\n\"1271444\";\"Gawān\";\"main\"\n\"1271444\";\"Gawan\";\"ascii\"\n\"1271449\";\"Gautampura\";\"main\"\n\"1271453\";\"Gauripur\";\"main\"\n\"1271459\";\"Gauribidanūr\";\"main\"\n\"1271459\";\"Gauribidanur\";\"ascii\"\n\"1271459\";\"Gauibidanur\";\"other\"\n\"1271459\";\"Goribidnur\";\"other\"\n\"1271459\";\"Goribidnūr\";\"other\"\n\"1271464\";\"Gaurela\";\"main\"\n\"1271476\";\"Guwāhāti\";\"main\"\n\"1271476\";\"Guwahati\";\"ascii\"\n\"1271476\";\"Gauhati\";\"other\"\n\"1271476\";\"Gauhāti\";\"other\"\n\"1271476\";\"Guvakhati\";\"other\"\n\"1271476\";\"guraahati\";\"other\"\n\"1271476\";\"guvahati\";\"other\"\n\"1271476\";\"guwahati\";\"other\"\n\"1271476\";\"Гувахати\";\"other\"\n\"1271476\";\"गुवाहाटी\";\"other\"\n\"1271476\";\"গুৱাহাটি\";\"other\"\n\"1271476\";\"グワハティ\";\"other\"\n\"1271476\";\"グワーハーティー\";\"other\"\n\"1271493\";\"Garwa\";\"main\"\n\"1271495\";\"Garui\";\"main\"\n\"1271533\";\"Gariadhar\";\"main\"\n\"1271533\";\"Gariyadhar\";\"other\"\n\"1271534\";\"Gariāband\";\"main\"\n\"1271534\";\"Gariaband\";\"ascii\"\n\"1271538\";\"Garhshankar\";\"main\"\n\"1271538\";\"Garshankar\";\"other\"\n\"1271543\";\"Garhmuktesar\";\"main\"\n\"1271551\";\"Garhī Pūkhta\";\"main\"\n\"1271551\";\"Garhi Pukhta\";\"ascii\"\n\"1271551\";\"Garhi\";\"other\"\n\"1271551\";\"Garhī\";\"other\"\n\"1271563\";\"Garhākotā\";\"main\"\n\"1271563\";\"Garhakota\";\"ascii\"\n\"1271575\";\"Garhdīwāla\";\"main\"\n\"1271575\";\"Garhdiwala\";\"ascii\"\n\"1271575\";\"Gardhiwala\";\"other\"\n\"1271575\";\"Gardhīwāla\";\"other\"\n\"1271582\";\"Garautha\";\"main\"\n\"1271613\";\"Gannavaram\";\"main\"\n\"1271616\";\"Ganj Murādābād\";\"main\"\n\"1271616\";\"Ganj Muradabad\";\"ascii\"\n\"1271616\";\"Muradabad Patti\";\"other\"\n\"1271616\";\"Murādābad Patti\";\"other\"\n\"1271621\";\"Ganjām\";\"main\"\n\"1271621\";\"Ganjam\";\"ascii\"\n\"1271621\";\"Canjam\";\"other\"\n\"1271631\";\"Gangtok\";\"main\"\n\"1271642\";\"Gangolli\";\"main\"\n\"1271642\";\"Ganguli\";\"other\"\n\"1271644\";\"Gangoh\";\"main\"\n\"1271662\";\"Gangāwati\";\"main\"\n\"1271662\";\"Gangawati\";\"ascii\"\n\"1271662\";\"Gangavati\";\"other\"\n\"1271663\";\"Gangavalli\";\"main\"\n\"1271670\";\"Gangārāmpur\";\"main\"\n\"1271670\";\"Gangarampur\";\"ascii\"\n\"1271675\";\"Gangāpur\";\"main\"\n\"1271675\";\"Gangapur\";\"ascii\"\n\"1271676\";\"Gangāpur\";\"main\"\n\"1271676\";\"Gangapur\";\"ascii\"\n\"1271680\";\"Gangāpur\";\"main\"\n\"1271680\";\"Gangapur\";\"ascii\"\n\"1271685\";\"Gangānagar\";\"main\"\n\"1271685\";\"Ganganagar\";\"ascii\"\n\"1271685\";\"Sri Ganganagar\";\"other\"\n\"1271685\";\"Sri Gangānagar\";\"other\"\n\"1271685\";\"Sriganga Najar\";\"other\"\n\"1271688\";\"Gangākher\";\"main\"\n\"1271688\";\"Gangakher\";\"ascii\"\n\"1271692\";\"Gangaikondān\";\"main\"\n\"1271692\";\"Gangaikondan\";\"ascii\"\n\"1271692\";\"Gaingundaun\";\"other\"\n\"1271692\";\"Gangalkondan\";\"other\"\n\"1271714\";\"Gāndhī Nagar\";\"main\"\n\"1271714\";\"Gandhi Nagar\";\"ascii\"\n\"1271714\";\"Gandhinagao\";\"other\"\n\"1271715\";\"Gāndhīnagar\";\"main\"\n\"1271715\";\"Gandhinagar\";\"ascii\"\n\"1271715\";\"Gandinagar\";\"other\"\n\"1271715\";\"Ghandinagar\";\"other\"\n\"1271715\";\"gamdhinagara\";\"other\"\n\"1271715\";\"gandhinagara\";\"other\"\n\"1271715\";\"gandinagaru\";\"other\"\n\"1271715\";\"ganjinagaru\";\"other\"\n\"1271715\";\"kanti nakar\";\"other\"\n\"1271715\";\"Гандинагар\";\"other\"\n\"1271715\";\"गाँधीनगर\";\"other\"\n\"1271715\";\"গান্ধিনগর\";\"other\"\n\"1271715\";\"গান্ধীনগর\";\"other\"\n\"1271715\";\"ગાંધીનગર\";\"other\"\n\"1271715\";\"காந்தி நகர்\";\"other\"\n\"1271715\";\"ガンジナガル\";\"other\"\n\"1271715\";\"ガーンディーナガル\";\"other\"\n\"1271722\";\"Gandevi\";\"main\"\n\"1271722\";\"Ganadevi\";\"other\"\n\"1271729\";\"Gāndarbal\";\"main\"\n\"1271729\";\"Gandarbal\";\"ascii\"\n\"1271729\";\"Ganderbal\";\"other\"\n\"1271734\";\"Gandai\";\"main\"\n\"1271734\";\"Gandai-Pandaria\";\"other\"\n\"1271771\";\"Galiākot\";\"main\"\n\"1271771\";\"Galiakot\";\"ascii\"\n\"1271780\";\"Gajraula\";\"main\"\n\"1271789\";\"Gajendragarh\";\"main\"\n\"1271789\";\"Gajendragad\";\"other\"\n\"1271813\";\"Gagret\";\"main\"\n\"1271819\";\"Gadwāl\";\"main\"\n\"1271819\";\"Gadwal\";\"ascii\"\n\"1271834\";\"Gadhinglaj\";\"main\"\n\"1271839\";\"Gadhada\";\"main\"\n\"1271847\";\"Gādarwāra\";\"main\"\n\"1271847\";\"Gadarwara\";\"ascii\"\n\"1271850\";\"Gadag\";\"main\"\n\"1271871\";\"Fort Gloster\";\"main\"\n\"1271874\";\"Forbesganj\";\"main\"\n\"1271881\";\"Fīrozpur Jhirka\";\"main\"\n\"1271881\";\"Firozpur Jhirka\";\"ascii\"\n\"1271881\";\"Ferozepur\";\"other\"\n\"1271881\";\"Ferozepur-Jhirka\";\"other\"\n\"1271881\";\"Ferozpur Jhirka\";\"other\"\n\"1271881\";\"Fērozpur Jhirka\";\"other\"\n\"1271883\";\"Fīrozpur\";\"main\"\n\"1271883\";\"Firozpur\";\"ascii\"\n\"1271883\";\"Ferozepore\";\"other\"\n\"1271883\";\"Ferozepur\";\"other\"\n\"1271883\";\"Feruzpur\";\"other\"\n\"1271883\";\"Fērūzpur\";\"other\"\n\"1271885\";\"Fīrozābād\";\"main\"\n\"1271885\";\"Firozabad\";\"ascii\"\n\"1271888\";\"Ferokh\";\"main\"\n\"1271888\";\"Ferok\";\"other\"\n\"1271888\";\"Feroke\";\"other\"\n\"1271891\";\"Fāzilka\";\"main\"\n\"1271891\";\"Fazilka\";\"ascii\"\n\"1271891\";\"Fazika\";\"other\"\n\"1271892\";\"Fatwa\";\"main\"\n\"1271900\";\"Fatehpur Sīkri\";\"main\"\n\"1271900\";\"Fatehpur Sikri\";\"ascii\"\n\"1271900\";\"Fatehpur-Sikri\";\"other\"\n\"1271900\";\"Fatehpur-Sikrî\";\"other\"\n\"1271900\";\"Fatekhpur Sikri\";\"other\"\n\"1271900\";\"phatehapura sikari\";\"other\"\n\"1271900\";\"phatepur sikri\";\"other\"\n\"1271900\";\"Фатехпур Сикри\";\"other\"\n\"1271900\";\"پھتیہپُور سِکری\";\"other\"\n\"1271900\";\"फतेहपूर सिकरी\";\"other\"\n\"1271900\";\"ಫತೇಪುರ್ ಸಿಕ್ರಿ\";\"other\"\n\"1271902\";\"Fatehpur Chaurāsi\";\"main\"\n\"1271902\";\"Fatehpur Chaurasi\";\"ascii\"\n\"1271902\";\"Fatehpur\";\"other\"\n\"1271910\";\"Fatehpur\";\"main\"\n\"1271911\";\"Fatehpur\";\"main\"\n\"1271912\";\"Fatehpur\";\"main\"\n\"1271912\";\"Fatehpur City\";\"other\"\n\"1271912\";\"Fatekhpur\";\"other\"\n\"1271912\";\"Фатехпур\";\"other\"\n\"1271923\";\"Fatehgarh Chūriān\";\"main\"\n\"1271923\";\"Fatehgarh Churian\";\"ascii\"\n\"1271923\";\"Chaurian Fatehgarh\";\"other\"\n\"1271925\";\"Fatehgarh\";\"main\"\n\"1271929\";\"Fatehganj West\";\"main\"\n\"1271934\";\"Fatehābād\";\"main\"\n\"1271934\";\"Fatehabad\";\"ascii\"\n\"1271934\";\"Fatahabad\";\"other\"\n\"1271936\";\"Fatehābād\";\"main\"\n\"1271936\";\"Fatehabad\";\"ascii\"\n\"1271939\";\"Farrukhnagar\";\"main\"\n\"1271940\";\"Farrukhnagar\";\"main\"\n\"1271942\";\"Farrukhābād\";\"main\"\n\"1271942\";\"Farrukhabad\";\"ascii\"\n\"1271947\";\"Farīdpur\";\"main\"\n\"1271947\";\"Faridpur\";\"ascii\"\n\"1271948\";\"Farīdnagar\";\"main\"\n\"1271948\";\"Faridnagar\";\"ascii\"\n\"1271949\";\"Farīdkot\";\"main\"\n\"1271949\";\"Faridkot\";\"ascii\"\n\"1271951\";\"Farīdābād\";\"main\"\n\"1271951\";\"Faridabad\";\"ascii\"\n\"1271951\";\"Faridabadas\";\"other\"\n\"1271951\";\"faridabado\";\"other\"\n\"1271951\";\"pharidabada\";\"other\"\n\"1271951\";\"Фаридабад\";\"other\"\n\"1271951\";\"फरीदाबाद\";\"other\"\n\"1271951\";\"ファリダバード\";\"other\"\n\"1271951\";\"ファリーダーバード\";\"other\"\n\"1271954\";\"Farakka\";\"main\"\n\"1271956\";\"Farah\";\"main\"\n\"1271965\";\"Fālākāta\";\"main\"\n\"1271965\";\"Falakata\";\"ascii\"\n\"1271975\";\"Faizpur\";\"main\"\n\"1271976\";\"Faizābād\";\"main\"\n\"1271976\";\"Faizabad\";\"ascii\"\n\"1271976\";\"Fajzabad\";\"other\"\n\"1271976\";\"Fyzabad\";\"other\"\n\"1271976\";\"Файзабад\";\"other\"\n\"1271984\";\"Ettaiyāpuram\";\"main\"\n\"1271984\";\"Ettaiyapuram\";\"ascii\"\n\"1271987\";\"Etāwah\";\"main\"\n\"1271987\";\"Etawah\";\"ascii\"\n\"1272001\";\"Erumaippatti\";\"main\"\n\"1272008\";\"Erraguntla\";\"main\"\n\"1272008\";\"Yerraguntla\";\"other\"\n\"1272013\";\"Erode\";\"main\"\n\"1272013\";\"Brod\";\"other\"\n\"1272013\";\"Irodu\";\"other\"\n\"1272013\";\"Periyar\";\"other\"\n\"1272013\";\"Periyār\";\"other\"\n\"1272013\";\"erode\";\"other\"\n\"1272013\";\"irodo~u\";\"other\"\n\"1272013\";\"irotu\";\"other\"\n\"1272013\";\"Брод\";\"other\"\n\"1272013\";\"এরোডে\";\"other\"\n\"1272013\";\"ஈரோடு\";\"other\"\n\"1272013\";\"イーロードゥ\";\"other\"\n\"1272022\";\"Erāttupetta\";\"main\"\n\"1272022\";\"Erattupetta\";\"ascii\"\n\"1272022\";\"Eratupeta\";\"other\"\n\"1272023\";\"Eraniel\";\"main\"\n\"1272025\";\"Erandol\";\"main\"\n\"1272027\";\"Eral\";\"main\"\n\"1272045\";\"Emmiganūru\";\"main\"\n\"1272045\";\"Emmiganuru\";\"ascii\"\n\"1272045\";\"Emmiganur\";\"other\"\n\"1272045\";\"Emmiganūr\";\"other\"\n\"1272045\";\"Yemmiganur\";\"other\"\n\"1272051\";\"Elūru\";\"main\"\n\"1272051\";\"Eluru\";\"ascii\"\n\"1272051\";\"Ellore\";\"other\"\n\"1272051\";\"West Godavari\";\"other\"\n\"1272051\";\"West Godāvari\";\"other\"\n\"1272052\";\"Elūr\";\"main\"\n\"1272052\";\"Elur\";\"ascii\"\n\"1272053\";\"Elumalai\";\"main\"\n\"1272061\";\"Ellenābād\";\"main\"\n\"1272061\";\"Ellenabad\";\"ascii\"\n\"1272061\";\"Kharyal\";\"other\"\n\"1272074\";\"Elāyirampannai\";\"main\"\n\"1272074\";\"Elayirampannai\";\"ascii\"\n\"1272084\";\"Elamanchili\";\"main\"\n\"1272084\";\"Yellamanchili\";\"other\"\n\"1272084\";\"Yellamanchilli\";\"other\"\n\"1272101\";\"Egra\";\"main\"\n\"1272140\";\"Dwārka\";\"main\"\n\"1272140\";\"Dwarka\";\"ascii\"\n\"1272140\";\"Dvarka\";\"other\"\n\"1272140\";\"Дварка\";\"other\"\n\"1272145\";\"Dwārāhāt\";\"main\"\n\"1272145\";\"Dwarahat\";\"ascii\"\n\"1272156\";\"Dūsi\";\"main\"\n\"1272156\";\"Dusi\";\"ascii\"\n\"1272175\";\"Durgāpur\";\"main\"\n\"1272175\";\"Durgapur\";\"ascii\"\n\"1272175\";\"Дургапур\";\"other\"\n\"1272177\";\"Durgāpur\";\"main\"\n\"1272177\";\"Durgapur\";\"ascii\"\n\"1272181\";\"Durg\";\"main\"\n\"1272181\";\"Drug\";\"other\"\n\"1272201\";\"Dūngarpur\";\"main\"\n\"1272201\";\"Dungarpur\";\"ascii\"\n\"1272202\";\"Dungarpur\";\"main\"\n\"1272207\";\"Dundwārāganj\";\"main\"\n\"1272207\";\"Dundwaraganj\";\"ascii\"\n\"1272225\";\"Dumraon\";\"main\"\n\"1272229\";\"Dumra\";\"main\"\n\"1272237\";\"Dumka\";\"main\"\n\"1272237\";\"Думка\";\"other\"\n\"1272242\";\"Dum Duma\";\"main\"\n\"1272242\";\"Doom-Dooma\";\"other\"\n\"1272242\";\"Sookerating\";\"other\"\n\"1272243\";\"Dam Dam\";\"main\"\n\"1272243\";\"Dum Dum\";\"other\"\n\"1272259\";\"Duliāgaon\";\"main\"\n\"1272259\";\"Duliagaon\";\"ascii\"\n\"1272277\";\"Dugda\";\"main\"\n\"1272302\";\"Dūdhi\";\"main\"\n\"1272302\";\"Dudhi\";\"ascii\"\n\"1272307\";\"Dudhani\";\"main\"\n\"1272307\";\"Dudhni\";\"other\"\n\"1272320\";\"Dubrājpur\";\"main\"\n\"1272320\";\"Dubrajpur\";\"ascii\"\n\"1272358\";\"Dostpur\";\"main\"\n\"1272367\";\"Dornakal\";\"main\"\n\"1272375\";\"Dorāha\";\"main\"\n\"1272375\";\"Doraha\";\"ascii\"\n\"1272396\";\"Dongargarh\";\"main\"\n\"1272400\";\"Dongargaon\";\"main\"\n\"1272411\";\"Dondaicha\";\"main\"\n\"1272423\";\"Dombivli\";\"main\"\n\"1272423\";\"Dombivali\";\"other\"\n\"1272444\";\"Doiwāla\";\"main\"\n\"1272444\";\"Doiwala\";\"ascii\"\n\"1272446\";\"Dohrīghāt\";\"main\"\n\"1272446\";\"Dohrighat\";\"ascii\"\n\"1272453\";\"Dogadda\";\"main\"\n\"1272453\";\"Dugadda\";\"other\"\n\"1272453\";\"Garhwal\";\"other\"\n\"1272473\";\"Dod Ballāpur\";\"main\"\n\"1272473\";\"Dod Ballapur\";\"ascii\"\n\"1272476\";\"Doda\";\"main\"\n\"1272502\";\"Diu\";\"main\"\n\"1272502\";\"Div\";\"other\"\n\"1272502\";\"Диу\";\"other\"\n\"1272508\";\"Dispur\";\"main\"\n\"1272508\";\"Dishpur\";\"other\"\n\"1272508\";\"disapura\";\"other\"\n\"1272508\";\"दिसपुर\";\"other\"\n\"1272513\";\"Dīsa\";\"main\"\n\"1272513\";\"Disa\";\"ascii\"\n\"1272513\";\"Deesa\";\"other\"\n\"1272513\";\"Dis\";\"other\"\n\"1272513\";\"Дис\";\"other\"\n\"1272517\";\"Dirba\";\"main\"\n\"1272525\";\"Diphu\";\"main\"\n\"1272525\";\"Diphn\";\"other\"\n\"1272532\";\"Dīnhāta\";\"main\"\n\"1272532\";\"Dinhata\";\"ascii\"\n\"1272540\";\"Dindori\";\"main\"\n\"1272543\";\"Dindigul\";\"main\"\n\"1272543\";\"Dhundgal\";\"other\"\n\"1272543\";\"Dindukkal\";\"other\"\n\"1272543\";\"Dundigal\";\"other\"\n\"1272543\";\"tindo~ukkaru\";\"other\"\n\"1272543\";\"tindo~ukkaru xian\";\"other\"\n\"1272543\";\"tintukkal\";\"other\"\n\"1272543\";\"திண்டுக்கல்\";\"other\"\n\"1272543\";\"ティンドゥッカル\";\"other\"\n\"1272543\";\"ティンドゥッカル県\";\"other\"\n\"1272546\";\"Dīnānagar\";\"main\"\n\"1272546\";\"Dinanagar\";\"ascii\"\n\"1272552\";\"Dimāpur\";\"main\"\n\"1272552\";\"Dimapur\";\"ascii\"\n\"1272552\";\"Димапур\";\"other\"\n\"1272596\";\"Digras\";\"main\"\n\"1272606\";\"Dīglūr\";\"main\"\n\"1272606\";\"Diglur\";\"ascii\"\n\"1272606\";\"Deglur\";\"other\"\n\"1272610\";\"Dighwāra\";\"main\"\n\"1272610\";\"Dighwara\";\"ascii\"\n\"1272610\";\"Digha\";\"other\"\n\"1272625\";\"Digha\";\"main\"\n\"1272629\";\"Digboi\";\"main\"\n\"1272629\";\"Digbol\";\"other\"\n\"1272629\";\"Digbor\";\"other\"\n\"1272634\";\"Digapahandi\";\"main\"\n\"1272634\";\"Digapanahdi\";\"other\"\n\"1272639\";\"Dīg\";\"main\"\n\"1272639\";\"Dig\";\"ascii\"\n\"1272639\";\"Deeg\";\"other\"\n\"1272640\";\"Dīdwāna\";\"main\"\n\"1272640\";\"Didwana\";\"ascii\"\n\"1272646\";\"Dicholi\";\"main\"\n\"1272646\";\"Bicholim\";\"other\"\n\"1272646\";\"Bicholim Town\";\"other\"\n\"1272646\";\"Cassabe de Bicholim\";\"other\"\n\"1272646\";\"Cassabé de Bicholim\";\"other\"\n\"1272648\";\"Dibrugarh\";\"main\"\n\"1272648\";\"Lakhinpur\";\"other\"\n\"1272648\";\"dibrugadha jila\";\"other\"\n\"1272648\";\"डिब्रूगढ जिला\";\"other\"\n\"1272653\";\"Dibai\";\"main\"\n\"1272657\";\"Diamond Harbour\";\"main\"\n\"1272657\";\"Diamond Harbor\";\"other\"\n\"1272660\";\"Dhuwaran\";\"main\"\n\"1272660\";\"Dhuvaran\";\"other\"\n\"1272670\";\"Dhūri\";\"main\"\n\"1272670\";\"Dhuri\";\"ascii\"\n\"1272674\";\"Dhupgāri\";\"main\"\n\"1272674\";\"Dhupgari\";\"ascii\"\n\"1272674\";\"Dhupguri\";\"other\"\n\"1272689\";\"Dhuliān\";\"main\"\n\"1272689\";\"Dhulian\";\"ascii\"\n\"1272691\";\"Dhule\";\"main\"\n\"1272691\";\"Dhulia\";\"other\"\n\"1272691\";\"Dhūlia\";\"other\"\n\"1272691\";\"Dkhule\";\"other\"\n\"1272691\";\"Дхуле\";\"other\"\n\"1272694\";\"Dhuburi\";\"main\"\n\"1272694\";\"Dhubri\";\"other\"\n\"1272694\";\"Dubri\";\"other\"\n\"1272694\";\"dhubari jila\";\"other\"\n\"1272694\";\"धुबरी जिला\";\"other\"\n\"1272699\";\"Dhrol\";\"main\"\n\"1272701\";\"Dhrāngadhra\";\"main\"\n\"1272701\";\"Dhrangadhra\";\"ascii\"\n\"1272701\";\"Dhrangadra\";\"other\"\n\"1272701\";\"Dhrāngadra\";\"other\"\n\"1272720\";\"Dhorāji\";\"main\"\n\"1272720\";\"Dhoraji\";\"ascii\"\n\"1272720\";\"Dhorail\";\"other\"\n\"1272722\";\"Dhone\";\"main\"\n\"1272733\";\"Dholka\";\"main\"\n\"1272744\";\"Dhola\";\"main\"\n\"1272768\";\"Dhing\";\"main\"\n\"1272771\";\"Dhilwān\";\"main\"\n\"1272771\";\"Dhilwan\";\"ascii\"\n\"1272780\";\"Dhenkānāl\";\"main\"\n\"1272780\";\"Dhenkanal\";\"ascii\"\n\"1272783\";\"Dhemāji\";\"main\"\n\"1272783\";\"Dhemaji\";\"ascii\"\n\"1272790\";\"Dhekiajuli\";\"main\"\n\"1272802\";\"Dhaurahra\";\"main\"\n\"1272805\";\"Dhaulpur\";\"main\"\n\"1272805\";\"Dholpur\";\"other\"\n\"1272819\";\"Dhārūr\";\"main\"\n\"1272819\";\"Dharur\";\"ascii\"\n\"1272819\";\"Fatehabad\";\"other\"\n\"1272819\";\"Fatehabād\";\"other\"\n\"1272819\";\"Fatheabad\";\"other\"\n\"1272822\";\"Dhāruhera\";\"main\"\n\"1272822\";\"Dharuhera\";\"ascii\"\n\"1272832\";\"Dharmsāla\";\"main\"\n\"1272832\";\"Dharmsala\";\"ascii\"\n\"1272832\";\"Dharamsala\";\"other\"\n\"1272832\";\"Dharmshala\";\"other\"\n\"1272832\";\"Dkharamsala\";\"other\"\n\"1272832\";\"McLeod Ganj\";\"other\"\n\"1272832\";\"da lan sa la\";\"other\"\n\"1272832\";\"dalamsalla\";\"other\"\n\"1272832\";\"daramusara\";\"other\"\n\"1272832\";\"daramushara\";\"other\"\n\"1272832\";\"dharmasala\";\"other\"\n\"1272832\";\"Дхарамсала\";\"other\"\n\"1272832\";\"धर्मशाला\";\"other\"\n\"1272832\";\"ধর্মশালা\";\"other\"\n\"1272832\";\"ダラムサラ\";\"other\"\n\"1272832\";\"ダラムシャーラー\";\"other\"\n\"1272832\";\"达兰萨拉\";\"other\"\n\"1272832\";\"다람살라\";\"other\"\n\"1272842\";\"Dharmavaram\";\"main\"\n\"1272847\";\"Dharmapuri\";\"main\"\n\"1272847\";\"darumapuri\";\"other\"\n\"1272847\";\"tarmapuri\";\"other\"\n\"1272847\";\"தர்மபுரி\";\"other\"\n\"1272847\";\"ダルマプリ\";\"other\"\n\"1272852\";\"Dharmanagar\";\"main\"\n\"1272856\";\"Dharmadam\";\"main\"\n\"1272857\";\"Dharmābād\";\"main\"\n\"1272857\";\"Dharmabad\";\"ascii\"\n\"1272860\";\"Dhāriwāl\";\"main\"\n\"1272860\";\"Dhariwal\";\"ascii\"\n\"1272861\";\"Dhāri\";\"main\"\n\"1272861\";\"Dhari\";\"ascii\"\n\"1272864\";\"Dhārchula\";\"main\"\n\"1272864\";\"Dharchula\";\"ascii\"\n\"1272873\";\"Dhārāpuram\";\"main\"\n\"1272873\";\"Dharapuram\";\"ascii\"\n\"1272874\";\"Dharangaon\";\"main\"\n\"1272874\";\"Darangaon\";\"other\"\n\"1272878\";\"Dharampuri\";\"main\"\n\"1272881\";\"Dharampur\";\"main\"\n\"1272881\";\"Dharampore\";\"other\"\n\"1272881\";\"Dhurrumpur\";\"other\"\n\"1272881\";\"Dilarampur\";\"other\"\n\"1272892\";\"Dhār\";\"main\"\n\"1272892\";\"Dhar\";\"ascii\"\n\"1272892\";\"Dkhar\";\"other\"\n\"1272892\";\"Дхар\";\"other\"\n\"1272902\";\"Dhanwār\";\"main\"\n\"1272902\";\"Dhanwar\";\"ascii\"\n\"1272962\";\"Dhanera\";\"main\"\n\"1272970\";\"Dhandhuka\";\"main\"\n\"1272979\";\"Dhanbād\";\"main\"\n\"1272979\";\"Dhanbad\";\"ascii\"\n\"1272979\";\"Dhanabad\";\"other\"\n\"1272979\";\"Dhanbaid\";\"other\"\n\"1272979\";\"Dkhanbad\";\"other\"\n\"1272979\";\"danbado\";\"other\"\n\"1272979\";\"dhanabada\";\"other\"\n\"1272979\";\"Дханбад\";\"other\"\n\"1272979\";\"धनबाद\";\"other\"\n\"1272979\";\"ধানাবাদ\";\"other\"\n\"1272979\";\"ダンバード\";\"other\"\n\"1272983\";\"Dhanaura\";\"main\"\n\"1272985\";\"Dhanaula\";\"main\"\n\"1272996\";\"Dhāna\";\"main\"\n\"1272996\";\"Dhana\";\"ascii\"\n\"1272997\";\"Dhamtari\";\"main\"\n\"1273002\";\"Dhāmpur\";\"main\"\n\"1273002\";\"Dhampur\";\"ascii\"\n\"1273006\";\"Dhāmnod\";\"main\"\n\"1273006\";\"Dhamnod\";\"ascii\"\n\"1273033\";\"Dhali\";\"main\"\n\"1273043\";\"Dhāka\";\"main\"\n\"1273043\";\"Dhaka\";\"ascii\"\n\"1273066\";\"Dewās\";\"main\"\n\"1273066\";\"Dewas\";\"ascii\"\n\"1273077\";\"Dewa\";\"main\"\n\"1273083\";\"Devli\";\"main\"\n\"1273083\";\"Deoli\";\"other\"\n\"1273083\";\"Dioli\";\"other\"\n\"1273098\";\"Devgarh\";\"main\"\n\"1273098\";\"Deogarh\";\"other\"\n\"1273104\";\"Devgadh Bāriya\";\"main\"\n\"1273104\";\"Devgadh Bariya\";\"ascii\"\n\"1273104\";\"Baria\";\"other\"\n\"1273104\";\"Bariya\";\"other\"\n\"1273104\";\"Bāria\";\"other\"\n\"1273104\";\"Devgad Baria\";\"other\"\n\"1273104\";\"Devgad Bāria\";\"other\"\n\"1273109\";\"Devarkonda\";\"main\"\n\"1273119\";\"Devaprayāg\";\"main\"\n\"1273119\";\"Devaprayag\";\"ascii\"\n\"1273123\";\"Devanhalli\";\"main\"\n\"1273128\";\"Devakottai\";\"main\"\n\"1273132\";\"Devadānappatti\";\"main\"\n\"1273132\";\"Devadanappatti\";\"ascii\"\n\"1273132\";\"Devadanapatti\";\"other\"\n\"1273136\";\"Deūlgaon Rāja\";\"main\"\n\"1273136\";\"Deulgaon Raja\";\"ascii\"\n\"1273145\";\"Desūr\";\"main\"\n\"1273145\";\"Desur\";\"ascii\"\n\"1273153\";\"Deshnoke\";\"main\"\n\"1273153\";\"Deshnok\";\"other\"\n\"1273166\";\"Dergaon\";\"main\"\n\"1273172\";\"Dera Gopipur\";\"main\"\n\"1273172\";\"Dera-Gepipur\";\"other\"\n\"1273173\";\"Derā Nānak\";\"main\"\n\"1273173\";\"Dera Nanak\";\"ascii\"\n\"1273173\";\"Dera Baba Nanak\";\"other\"\n\"1273181\";\"Depālpur\";\"main\"\n\"1273181\";\"Depalpur\";\"ascii\"\n\"1273191\";\"Deorī Khās\";\"main\"\n\"1273191\";\"Deori Khas\";\"ascii\"\n\"1273191\";\"Deore\";\"other\"\n\"1273191\";\"Deori\";\"other\"\n\"1273193\";\"Deoria\";\"main\"\n\"1273201\";\"Deori\";\"main\"\n\"1273206\";\"Deoraniān\";\"main\"\n\"1273206\";\"Deoranian\";\"ascii\"\n\"1273206\";\"Deorania\";\"other\"\n\"1273228\";\"Deoli\";\"main\"\n\"1273232\";\"Deolāli\";\"main\"\n\"1273232\";\"Deolali\";\"ascii\"\n\"1273246\";\"Deogarh\";\"main\"\n\"1273265\";\"Deoband\";\"main\"\n\"1273265\";\"Deobande\";\"other\"\n\"1273265\";\"Деобанде\";\"other\"\n\"1273272\";\"Denkanikota\";\"main\"\n\"1273287\";\"Delvāda\";\"main\"\n\"1273287\";\"Delvada\";\"ascii\"\n\"1273294\";\"Delhi\";\"main\"\n\"1273294\";\"Dehli\";\"other\"\n\"1273294\";\"Dehlī\";\"other\"\n\"1273294\";\"Delhí\";\"other\"\n\"1273294\";\"Deli\";\"other\"\n\"1273294\";\"Delis\";\"other\"\n\"1273294\";\"Delkhi\";\"other\"\n\"1273294\";\"Dilli\";\"other\"\n\"1273294\";\"Dillí\";\"other\"\n\"1273294\";\"Dillī\";\"other\"\n\"1273294\";\"Old Delhi\";\"other\"\n\"1273294\";\"de li\";\"other\"\n\"1273294\";\"deli\";\"other\"\n\"1273294\";\"delli\";\"other\"\n\"1273294\";\"deri\";\"other\"\n\"1273294\";\"dhilli\";\"other\"\n\"1273294\";\"dil'hi\";\"other\"\n\"1273294\";\"dilli\";\"other\"\n\"1273294\";\"dlhy\";\"other\"\n\"1273294\";\"dly\";\"other\"\n\"1273294\";\"tilli\";\"other\"\n\"1273294\";\"Дели\";\"other\"\n\"1273294\";\"Делхи\";\"other\"\n\"1273294\";\"דלהי\";\"other\"\n\"1273294\";\"دلی\";\"other\"\n\"1273294\";\"دہلی\";\"other\"\n\"1273294\";\"दिल्ली\";\"other\"\n\"1273294\";\"ਦਿੱਲੀ\";\"other\"\n\"1273294\";\"દિલ્હી\";\"other\"\n\"1273294\";\"தில்லி\";\"other\"\n\"1273294\";\"ఢిల్లీ\";\"other\"\n\"1273294\";\"დელი\";\"other\"\n\"1273294\";\"デリー\";\"other\"\n\"1273294\";\"德里\";\"other\"\n\"1273294\";\"델리\";\"other\"\n\"1273304\";\"Dehu\";\"main\"\n\"1273309\";\"Dehri\";\"main\"\n\"1273309\";\"Dehm\";\"other\"\n\"1273313\";\"Dehra Dūn\";\"main\"\n\"1273313\";\"Dehra Dun\";\"ascii\"\n\"1273313\";\"Dehra\";\"other\"\n\"1273313\";\"Dekhradune\";\"other\"\n\"1273313\";\"Дехрадуне\";\"other\"\n\"1273347\";\"Debīpur\";\"main\"\n\"1273347\";\"Debipur\";\"ascii\"\n\"1273358\";\"Dayāl Bāgh\";\"main\"\n\"1273358\";\"Dayal Bagh\";\"ascii\"\n\"1273367\";\"Davorlim\";\"main\"\n\"1273369\";\"Dausa\";\"main\"\n\"1273369\";\"Daosa\";\"other\"\n\"1273369\";\"Дауса\";\"other\"\n\"1273371\";\"Daurāla\";\"main\"\n\"1273371\";\"Daurala\";\"ascii\"\n\"1273374\";\"Daund\";\"main\"\n\"1273374\";\"Dhond\";\"other\"\n\"1273377\";\"Daulatpur\";\"main\"\n\"1273378\";\"Daulatpur\";\"main\"\n\"1273379\";\"Daulatpur\";\"main\"\n\"1273379\";\"Muhanundp\";\"other\"\n\"1273390\";\"Daudnagar\";\"main\"\n\"1273397\";\"Dattāpur\";\"main\"\n\"1273397\";\"Dattapur\";\"ascii\"\n\"1273403\";\"Datia\";\"main\"\n\"1273409\";\"Dātāganj\";\"main\"\n\"1273409\";\"Dataganj\";\"ascii\"\n\"1273410\";\"Dasūa\";\"main\"\n\"1273410\";\"Dasua\";\"ascii\"\n\"1273410\";\"Dasuya\";\"other\"\n\"1273410\";\"Dasūya\";\"other\"\n\"1273416\";\"Dāsna\";\"main\"\n\"1273416\";\"Dasna\";\"ascii\"\n\"1273434\";\"Daryāpur\";\"main\"\n\"1273434\";\"Daryapur\";\"ascii\"\n\"1273440\";\"Dārwhā\";\"main\"\n\"1273440\";\"Darwha\";\"ascii\"\n\"1273463\";\"Darlawn\";\"main\"\n\"1273467\";\"Dārjiling\";\"main\"\n\"1273467\";\"Darjiling\";\"ascii\"\n\"1273467\";\"Dardzhiling\";\"other\"\n\"1273467\";\"Dardzilingas\";\"other\"\n\"1273467\";\"Dardžilingas\";\"other\"\n\"1273467\";\"Dargiling\";\"other\"\n\"1273467\";\"Darjeeling\";\"other\"\n\"1273467\";\"Darĝiling\";\"other\"\n\"1273467\";\"Rdorje gling\";\"other\"\n\"1273467\";\"da ji ling\";\"other\"\n\"1273467\";\"daleujilling\";\"other\"\n\"1273467\";\"dar jylng\";\"other\"\n\"1273467\";\"darjilim\";\"other\"\n\"1273467\";\"drg'ylyng\";\"other\"\n\"1273467\";\"Дарджилинг\";\"other\"\n\"1273467\";\"דרג'ילינג\";\"other\"\n\"1273467\";\"دار جیلنگ\";\"other\"\n\"1273467\";\"দার্জিলিং\";\"other\"\n\"1273467\";\"大吉嶺\";\"other\"\n\"1273467\";\"다르질링\";\"other\"\n\"1273473\";\"Dariba\";\"main\"\n\"1273491\";\"Darbhanga\";\"main\"\n\"1273534\";\"Dankaur\";\"main\"\n\"1273574\";\"Dandeli\";\"main\"\n\"1273581\";\"Dānāpur\";\"main\"\n\"1273581\";\"Danapur\";\"ascii\"\n\"1273581\";\"Dinapore\";\"other\"\n\"1273587\";\"Damoh\";\"main\"\n\"1273593\";\"Dāmnagar\";\"main\"\n\"1273593\";\"Damnagar\";\"ascii\"\n\"1273618\";\"Damān\";\"main\"\n\"1273618\";\"Daman\";\"ascii\"\n\"1273618\";\"Damao\";\"other\"\n\"1273618\";\"Damaun\";\"other\"\n\"1273618\";\"Damão\";\"other\"\n\"1273618\";\"Даман\";\"other\"\n\"1273626\";\"Dāltenganj\";\"main\"\n\"1273626\";\"Daltenganj\";\"ascii\"\n\"1273626\";\"Daltonganj\";\"other\"\n\"1273626\";\"daltanaganja\";\"other\"\n\"1273626\";\"डाल्टनगंज\";\"other\"\n\"1273628\";\"Dalsingh Sarai\";\"main\"\n\"1273628\";\"Dalsingh-Sari\";\"other\"\n\"1273637\";\"Dalmau\";\"main\"\n\"1273642\";\"Dālkola\";\"main\"\n\"1273642\";\"Dalkola\";\"ascii\"\n\"1273648\";\"Dalhousie\";\"main\"\n\"1273665\";\"Dākor\";\"main\"\n\"1273665\";\"Dakor\";\"ascii\"\n\"1273665\";\"Дакор\";\"other\"\n\"1273673\";\"Daitari\";\"main\"\n\"1273687\";\"Dāhod\";\"main\"\n\"1273687\";\"Dahod\";\"ascii\"\n\"1273687\";\"Dohad\";\"other\"\n\"1273704\";\"Dahegām\";\"main\"\n\"1273704\";\"Dahegam\";\"ascii\"\n\"1273704\";\"Dehgam\";\"other\"\n\"1273704\";\"Dehgām\";\"other\"\n\"1273708\";\"Dāhānu\";\"main\"\n\"1273708\";\"Dahanu\";\"ascii\"\n\"1273712\";\"Dagshai\";\"main\"\n\"1273712\";\"Dagahai\";\"other\"\n\"1273712\";\"Simla\";\"other\"\n\"1273724\";\"Dādri\";\"main\"\n\"1273724\";\"Dadri\";\"ascii\"\n\"1273745\";\"Dabwāli\";\"main\"\n\"1273745\";\"Dabwali\";\"ascii\"\n\"1273751\";\"Dabra\";\"main\"\n\"1273756\";\"Daboh\";\"main\"\n\"1273765\";\"Dābhol\";\"main\"\n\"1273765\";\"Dabhol\";\"ascii\"\n\"1273766\";\"Dabhoi\";\"main\"\n\"1273780\";\"Cuttack\";\"main\"\n\"1273780\";\"Kattake\";\"other\"\n\"1273780\";\"Каттаке\";\"other\"\n\"1273784\";\"Curti\";\"main\"\n\"1273788\";\"Curchorem\";\"main\"\n\"1273788\";\"Curchurem\";\"other\"\n\"1273793\";\"Cuncolim\";\"main\"\n\"1273795\";\"Cumbum\";\"main\"\n\"1273795\";\"Kambhamu\";\"other\"\n\"1273800\";\"Cuddapah\";\"main\"\n\"1273800\";\"Kadapa\";\"other\"\n\"1273800\";\"Kurpah\";\"other\"\n\"1273800\";\"kadapa\";\"other\"\n\"1273800\";\"katappa\";\"other\"\n\"1273800\";\"கடப்பா\";\"other\"\n\"1273800\";\"కడప\";\"other\"\n\"1273802\";\"Cuddalore\";\"main\"\n\"1273802\";\"Gudalur\";\"other\"\n\"1273802\";\"Kudalur\";\"other\"\n\"1273802\";\"Kuddalore\";\"other\"\n\"1273802\";\"Kūdalūr\";\"other\"\n\"1273802\";\"Куддалоре\";\"other\"\n\"1273817\";\"Cortalim\";\"main\"\n\"1273817\";\"Cortolim\";\"other\"\n\"1273834\";\"Coondapoor\";\"main\"\n\"1273834\";\"Coondapur\";\"other\"\n\"1273834\";\"Kundapur\";\"other\"\n\"1273847\";\"Colva\";\"main\"\n\"1273847\";\"Kolva\";\"other\"\n\"1273847\";\"Колва\";\"other\"\n\"1273848\";\"Colovale\";\"main\"\n\"1273848\";\"Colvale\";\"other\"\n\"1273850\";\"Colonelganj\";\"main\"\n\"1273856\";\"Colgong\";\"main\"\n\"1273858\";\"Calangute\";\"main\"\n\"1273858\";\"Kalangut\";\"other\"\n\"1273858\";\"Калангут\";\"other\"\n\"1273865\";\"Coimbatore\";\"main\"\n\"1273865\";\"Koimbatore\";\"other\"\n\"1273865\";\"Kojamputtur\";\"other\"\n\"1273865\";\"Koyambattur\";\"other\"\n\"1273865\";\"Koyambattūr\";\"other\"\n\"1273865\";\"Koyamuttur\";\"other\"\n\"1273865\";\"Koyamuttūr\";\"other\"\n\"1273865\";\"koyambatura\";\"other\"\n\"1273865\";\"koyamputtur\";\"other\"\n\"1273865\";\"koyanbutto~uru\";\"other\"\n\"1273865\";\"Коямпуттур\";\"other\"\n\"1273865\";\"कोयंबतूर\";\"other\"\n\"1273865\";\"கோயம்புத்தூர்\";\"other\"\n\"1273865\";\"കോയമ്പത്തൂര്‍\";\"other\"\n\"1273865\";\"コーヤンブットゥール\";\"other\"\n\"1273874\";\"Cochin\";\"main\"\n\"1273874\";\"British Cochin\";\"other\"\n\"1273874\";\"Cochim\";\"other\"\n\"1273874\";\"Cochín\";\"other\"\n\"1273874\";\"Fort Cochin\";\"other\"\n\"1273874\";\"Kochi\";\"other\"\n\"1273874\";\"Kochin\";\"other\"\n\"1273874\";\"Koczin\";\"other\"\n\"1273874\";\"Kuchi Bandar\";\"other\"\n\"1273874\";\"Malabar\";\"other\"\n\"1273874\";\"ke zhi\";\"other\"\n\"1273874\";\"keacci\";\"other\"\n\"1273874\";\"kocci\";\"other\"\n\"1273874\";\"kochi\";\"other\"\n\"1273874\";\"kocina\";\"other\"\n\"1273874\";\"qwz'y\";\"other\"\n\"1273874\";\"Кочин\";\"other\"\n\"1273874\";\"קוצ'י\";\"other\"\n\"1273874\";\"कोचीन\";\"other\"\n\"1273874\";\"কোচিন\";\"other\"\n\"1273874\";\"கொச்சி\";\"other\"\n\"1273874\";\"കൊച്ചി\";\"other\"\n\"1273874\";\"コーチ\";\"other\"\n\"1273874\";\"柯枝\";\"other\"\n\"1273880\";\"Clement Town\";\"main\"\n\"1273892\";\"Chūru\";\"main\"\n\"1273892\";\"Churu\";\"ascii\"\n\"1273909\";\"Churāchāndpur\";\"main\"\n\"1273909\";\"Churachandpur\";\"ascii\"\n\"1273923\";\"Chunār\";\"main\"\n\"1273923\";\"Chunar\";\"ascii\"\n\"1273943\";\"Vikāsnagar\";\"main\"\n\"1273943\";\"Vikasnagar\";\"ascii\"\n\"1273943\";\"Chuharpur\";\"other\"\n\"1273943\";\"Chūharpur\";\"other\"\n\"1273954\";\"Chuāri Khās\";\"main\"\n\"1273954\";\"Chuari Khas\";\"ascii\"\n\"1273960\";\"Chotila\";\"main\"\n\"1273978\";\"Chorhāt\";\"main\"\n\"1273978\";\"Chorhat\";\"ascii\"\n\"1273978\";\"Churhat\";\"other\"\n\"1273992\";\"Chopda\";\"main\"\n\"1273993\";\"Chopan\";\"main\"\n\"1274006\";\"Cholapuram\";\"main\"\n\"1274020\";\"Chodavaram\";\"main\"\n\"1274021\";\"Chodavaram\";\"main\"\n\"1274032\";\"Chittūr\";\"main\"\n\"1274032\";\"Chittur\";\"ascii\"\n\"1274032\";\"Chittur-Cochin\";\"other\"\n\"1274040\";\"Chittaurgarh\";\"main\"\n\"1274040\";\"Chitor\";\"other\"\n\"1274040\";\"Chitorgarh\";\"other\"\n\"1274043\";\"Chittaranjan\";\"main\"\n\"1274043\";\"Chittarandzhan\";\"other\"\n\"1274043\";\"Mihijam\";\"other\"\n\"1274043\";\"Mihijan\";\"other\"\n\"1274043\";\"Mihijām\";\"other\"\n\"1274043\";\"Читтаранджан\";\"other\"\n\"1274055\";\"Chitrakonda\";\"main\"\n\"1274056\";\"Chitradurga\";\"main\"\n\"1274056\";\"Chitaldroog\";\"other\"\n\"1274056\";\"Chitaldrug\";\"other\"\n\"1274056\";\"Chitaldurg\";\"other\"\n\"1274056\";\"Chitradurg\";\"other\"\n\"1274056\";\"Chitrakaldurga\";\"other\"\n\"1274056\";\"Chitteldrug\";\"other\"\n\"1274077\";\"Chītāpur\";\"main\"\n\"1274077\";\"Chitapur\";\"ascii\"\n\"1274098\";\"Chiria\";\"main\"\n\"1274099\";\"Chīrgaon\";\"main\"\n\"1274099\";\"Chirgaon\";\"ascii\"\n\"1274102\";\"Chirāwa\";\"main\"\n\"1274102\";\"Chirawa\";\"ascii\"\n\"1274106\";\"Chīrāla\";\"main\"\n\"1274106\";\"Chirala\";\"ascii\"\n\"1274116\";\"Chīpurupalle\";\"main\"\n\"1274116\";\"Chipurupalle\";\"ascii\"\n\"1274119\";\"Chiplūn\";\"main\"\n\"1274119\";\"Chiplun\";\"ascii\"\n\"1274129\";\"Chintāmani\";\"main\"\n\"1274129\";\"Chintamani\";\"ascii\"\n\"1274129\";\"Чинтамани\";\"other\"\n\"1274146\";\"Chinna Salem\";\"main\"\n\"1274151\";\"Chinnamanūr\";\"main\"\n\"1274151\";\"Chinnamanur\";\"ascii\"\n\"1274151\";\"Chinnammanur\";\"other\"\n\"1274169\";\"Chincholi\";\"main\"\n\"1274172\";\"Chinchinim\";\"main\"\n\"1274175\";\"Chinchani\";\"main\"\n\"1274175\";\"Chinchni\";\"other\"\n\"1274195\";\"Chillūpār\";\"main\"\n\"1274195\";\"Chillupar\";\"ascii\"\n\"1274195\";\"Barhalganj\";\"other\"\n\"1274213\";\"Chilakalūrupet\";\"main\"\n\"1274213\";\"Chilakalurupet\";\"ascii\"\n\"1274218\";\"Chikodi\";\"main\"\n\"1274219\";\"Chiknāyakanhalli\";\"main\"\n\"1274219\";\"Chiknayakanhalli\";\"ascii\"\n\"1274220\";\"Chikmagalūr\";\"main\"\n\"1274220\";\"Chikmagalur\";\"ascii\"\n\"1274220\";\"Chickmagalur\";\"other\"\n\"1274220\";\"Chikkamagaluru\";\"other\"\n\"1274220\";\"Chikkamagalūru\";\"other\"\n\"1274220\";\"Chikmanglur\";\"other\"\n\"1274220\";\"Chikmugalur\";\"other\"\n\"1274220\";\"Chikmugalūr\";\"other\"\n\"1274220\";\"ಚಿಕ್ಕಮಗಳೂರು\";\"other\"\n\"1274229\";\"Chikitigarh\";\"main\"\n\"1274229\";\"Chikati\";\"other\"\n\"1274229\";\"Chīkati\";\"other\"\n\"1274235\";\"Chikhli\";\"main\"\n\"1274237\";\"Chikhli\";\"main\"\n\"1274243\";\"Chik Ballāpur\";\"main\"\n\"1274243\";\"Chik Ballapur\";\"ascii\"\n\"1274256\";\"Chidambaram\";\"main\"\n\"1274256\";\"Chidambajram\";\"other\"\n\"1274256\";\"Chitdambaram\";\"other\"\n\"1274256\";\"Чидамбайрам\";\"other\"\n\"1274256\";\"Чидамбарам\";\"other\"\n\"1274265\";\"Chīcholi\";\"main\"\n\"1274265\";\"Chicholi\";\"ascii\"\n\"1274267\";\"Chichli\";\"main\"\n\"1274270\";\"Chicalim\";\"main\"\n\"1274270\";\"Chiquilim\";\"other\"\n\"1274278\";\"Chhuīkhadān\";\"main\"\n\"1274278\";\"Chhuikhadan\";\"ascii\"\n\"1274284\";\"Chhoti Sādri\";\"main\"\n\"1274284\";\"Chhoti Sadri\";\"ascii\"\n\"1274285\";\"Chhota Udepur\";\"main\"\n\"1274285\";\"Chota Udaipur\";\"other\"\n\"1274304\";\"Chhindwāra\";\"main\"\n\"1274304\";\"Chhindwara\";\"ascii\"\n\"1274304\";\"Chindwara\";\"other\"\n\"1274304\";\"Sindwara\";\"other\"\n\"1274315\";\"Chhibrāmau\";\"main\"\n\"1274315\";\"Chhibramau\";\"ascii\"\n\"1274337\";\"Chhatarpur\";\"main\"\n\"1274337\";\"Chantarpur\";\"other\"\n\"1274337\";\"Chkatarpur\";\"other\"\n\"1274342\";\"Chhātāpur\";\"main\"\n\"1274342\";\"Chhatapur\";\"ascii\"\n\"1274343\";\"Chhāta\";\"main\"\n\"1274343\";\"Chhata\";\"ascii\"\n\"1274346\";\"Chharra\";\"main\"\n\"1274351\";\"Chhaprauli\";\"main\"\n\"1274359\";\"Chhāpar\";\"main\"\n\"1274359\";\"Chhapar\";\"ascii\"\n\"1274369\";\"Chhala\";\"main\"\n\"1274380\";\"Chhachhrauli\";\"main\"\n\"1274381\";\"Chhabra\";\"main\"\n\"1274383\";\"Cheyūr\";\"main\"\n\"1274383\";\"Cheyur\";\"ascii\"\n\"1274383\";\"Chaeur\";\"other\"\n\"1274383\";\"Cheyyur\";\"other\"\n\"1274383\";\"Cheyyūr\";\"other\"\n\"1274389\";\"Chettipālaiyam\";\"main\"\n\"1274389\";\"Chettipalaiyam\";\"ascii\"\n\"1274389\";\"Chettipalayam\";\"other\"\n\"1274394\";\"Chetput\";\"main\"\n\"1274394\";\"Chetpat\";\"other\"\n\"1274394\";\"Chetpet\";\"other\"\n\"1274394\";\"Madras Chetput\";\"other\"\n\"1274406\";\"Cherrapunji\";\"main\"\n\"1274406\";\"Cherapunji\";\"other\"\n\"1274406\";\"Cherrapunjee\";\"other\"\n\"1274406\";\"Cherripunji\";\"other\"\n\"1274422\";\"Chennimalai\";\"main\"\n\"1274428\";\"Chengannūr\";\"main\"\n\"1274428\";\"Chengannur\";\"ascii\"\n\"1274429\";\"Chengam\";\"main\"\n\"1274430\";\"Chengalpattu\";\"main\"\n\"1274430\";\"Chengalpat\";\"other\"\n\"1274430\";\"Chingleput\";\"other\"\n\"1274450\";\"Chelakara\";\"main\"\n\"1274457\";\"Chechat\";\"main\"\n\"1274468\";\"Chāvakkād\";\"main\"\n\"1274468\";\"Chavakkad\";\"ascii\"\n\"1274468\";\"Chaughat\";\"other\"\n\"1274468\";\"Chetwagi\";\"other\"\n\"1274468\";\"Chetwayi\";\"other\"\n\"1274468\";\"Chitwye\";\"other\"\n\"1274468\";\"Chowghat\";\"other\"\n\"1274491\";\"Chaupāl\";\"main\"\n\"1274491\";\"Chaupal\";\"ascii\"\n\"1274532\";\"Chātsu\";\"main\"\n\"1274532\";\"Chatsu\";\"ascii\"\n\"1274532\";\"Chaksu\";\"other\"\n\"1274532\";\"Chāksu\";\"other\"\n\"1274533\";\"Chatrapur\";\"main\"\n\"1274533\";\"Chhatrapur\";\"other\"\n\"1274536\";\"Chatra\";\"main\"\n\"1274547\";\"Chātakonda\";\"main\"\n\"1274547\";\"Chatakonda\";\"ascii\"\n\"1274553\";\"Chās\";\"main\"\n\"1274553\";\"Chas\";\"ascii\"\n\"1274553\";\"Час\";\"other\"\n\"1274560\";\"Charthāwāl\";\"main\"\n\"1274560\";\"Charthawal\";\"ascii\"\n\"1274571\";\"Charkhi Dādri\";\"main\"\n\"1274571\";\"Charkhi Dadri\";\"ascii\"\n\"1274571\";\"Charki Dadrai\";\"other\"\n\"1274571\";\"Charki Dadri\";\"other\"\n\"1274571\";\"Dadri\";\"other\"\n\"1274571\";\"Dādri\";\"other\"\n\"1274574\";\"Charkhāri\";\"main\"\n\"1274574\";\"Charkhari\";\"ascii\"\n\"1274574\";\"Maharajnagar\";\"other\"\n\"1274574\";\"Māhārājnagar\";\"other\"\n\"1274618\";\"Chāpar\";\"main\"\n\"1274618\";\"Chapar\";\"ascii\"\n\"1274640\";\"Channarāyapatna\";\"main\"\n\"1274640\";\"Channarayapatna\";\"ascii\"\n\"1274640\";\"Chanzarayapatna\";\"other\"\n\"1274641\";\"Channapatna\";\"main\"\n\"1274641\";\"Channapatan\";\"other\"\n\"1274642\";\"Channagiri\";\"main\"\n\"1274664\";\"Changanācheri\";\"main\"\n\"1274664\";\"Changanacheri\";\"ascii\"\n\"1274664\";\"Changanacherry\";\"other\"\n\"1274673\";\"Chāndvad\";\"main\"\n\"1274673\";\"Chandvad\";\"ascii\"\n\"1274673\";\"Chandor\";\"other\"\n\"1274673\";\"Chandwar\";\"other\"\n\"1274673\";\"Chāndor\";\"other\"\n\"1274673\";\"Chāndwar\";\"other\"\n\"1274674\";\"Chāndūr Bāzār\";\"main\"\n\"1274674\";\"Chandur Bazar\";\"ascii\"\n\"1274675\";\"Chāndur\";\"main\"\n\"1274675\";\"Chandur\";\"ascii\"\n\"1274676\";\"Chāndur\";\"main\"\n\"1274676\";\"Chandur\";\"ascii\"\n\"1274693\";\"Chandrapur\";\"main\"\n\"1274693\";\"Chanda\";\"other\"\n\"1274693\";\"Chānda\";\"other\"\n\"1274699\";\"Chandrakona\";\"main\"\n\"1274699\";\"Chandshona\";\"other\"\n\"1274714\";\"Chāndpur\";\"main\"\n\"1274714\";\"Chandpur\";\"ascii\"\n\"1274714\";\"Bijnor\";\"other\"\n\"1274735\";\"Chandla\";\"main\"\n\"1274743\";\"Chāndil\";\"main\"\n\"1274743\";\"Chandil\";\"ascii\"\n\"1274746\";\"Chandīgarh\";\"main\"\n\"1274746\";\"Chandigarh\";\"ascii\"\n\"1274746\";\"Candigarchas\";\"other\"\n\"1274746\";\"Candigarh\";\"other\"\n\"1274746\";\"Chandigar\";\"other\"\n\"1274746\";\"Chandigarkh\";\"other\"\n\"1274746\";\"Czandigarh\";\"other\"\n\"1274746\";\"cadigarha\";\"other\"\n\"1274746\";\"candhigad\";\"other\"\n\"1274746\";\"candigadh\";\"other\"\n\"1274746\";\"candigadha\";\"other\"\n\"1274746\";\"candigara\";\"other\"\n\"1274746\";\"candigarha\";\"other\"\n\"1274746\";\"cantikar\";\"other\"\n\"1274746\";\"chandigadh\";\"other\"\n\"1274746\";\"chandigarhi\";\"other\"\n\"1274746\";\"chandigaru\";\"other\"\n\"1274746\";\"chang di jia er\";\"other\"\n\"1274746\";\"Čandigarchas\";\"other\"\n\"1274746\";\"Čandígarh\";\"other\"\n\"1274746\";\"Чандигар\";\"other\"\n\"1274746\";\"Чандигарх\";\"other\"\n\"1274746\";\"צ'אנדיגאר\";\"other\"\n\"1274746\";\"चंडीगढ़\";\"other\"\n\"1274746\";\"চন্ডিগড়\";\"other\"\n\"1274746\";\"চন্ডীগড়\";\"other\"\n\"1274746\";\"ਚੰਡੀਗੜ੍ਹ\";\"other\"\n\"1274746\";\"ચંડીગઢ\";\"other\"\n\"1274746\";\"சண்டிகர்\";\"other\"\n\"1274746\";\"చండీగఢ్\";\"other\"\n\"1274746\";\"ఛండీగఢ్\";\"other\"\n\"1274746\";\"ചണ്ഢീഗഡ്\";\"other\"\n\"1274746\";\"ჩანდიგარჰი\";\"other\"\n\"1274746\";\"チャンディーガル\";\"other\"\n\"1274746\";\"昌迪加尔\";\"other\"\n\"1274747\";\"Chandia\";\"main\"\n\"1274755\";\"Chanderi\";\"main\"\n\"1274755\";\"Чандери\";\"other\"\n\"1274761\";\"Chāndbāli\";\"main\"\n\"1274761\";\"Chandbali\";\"ascii\"\n\"1274767\";\"Chandausi\";\"main\"\n\"1274770\";\"Chandauli\";\"main\"\n\"1274784\";\"Chandannagar\";\"main\"\n\"1274784\";\"Chandernagor\";\"other\"\n\"1274784\";\"Chandernagore\";\"other\"\n\"1274807\";\"Chānasma\";\"main\"\n\"1274807\";\"Chanasma\";\"ascii\"\n\"1274821\";\"Chāmrājnagar\";\"main\"\n\"1274821\";\"Chamrajnagar\";\"ascii\"\n\"1274822\";\"Chāmpua\";\"main\"\n\"1274822\";\"Champua\";\"ascii\"\n\"1274824\";\"Champawat\";\"main\"\n\"1274834\";\"Chāmpāhāti\";\"main\"\n\"1274834\";\"Champahati\";\"ascii\"\n\"1274837\";\"Chāmpa\";\"main\"\n\"1274837\";\"Champa\";\"ascii\"\n\"1274848\";\"Chamba\";\"main\"\n\"1274861\";\"Challapalle\";\"main\"\n\"1274862\";\"Challakere\";\"main\"\n\"1274868\";\"Chālisgaon\";\"main\"\n\"1274868\";\"Chalisgaon\";\"ascii\"\n\"1274874\";\"Chalāla\";\"main\"\n\"1274874\";\"Chalala\";\"ascii\"\n\"1274881\";\"Chākuliā\";\"main\"\n\"1274881\";\"Chakulia\";\"ascii\"\n\"1274881\";\"Chakuha\";\"other\"\n\"1274881\";\"Chākuha\";\"other\"\n\"1274886\";\"Chakrāta\";\"main\"\n\"1274886\";\"Chakrata\";\"ascii\"\n\"1274890\";\"Chakradharpur\";\"main\"\n\"1274890\";\"Chakardharpore\";\"other\"\n\"1274896\";\"Chaklāsi\";\"main\"\n\"1274896\";\"Chaklasi\";\"ascii\"\n\"1274899\";\"Chākia\";\"main\"\n\"1274899\";\"Chakia\";\"ascii\"\n\"1274900\";\"Chakia\";\"main\"\n\"1274914\";\"Chākan\";\"main\"\n\"1274914\";\"Chakan\";\"ascii\"\n\"1274927\";\"Chail\";\"main\"\n\"1274928\";\"Chāībāsa\";\"main\"\n\"1274928\";\"Chaibasa\";\"ascii\"\n\"1274954\";\"Chābua\";\"main\"\n\"1274954\";\"Chabua\";\"ascii\"\n\"1274961\";\"Cavelossim\";\"main\"\n\"1274961\";\"Caveloesim\";\"other\"\n\"1274961\";\"Kavelossim\";\"other\"\n\"1274961\";\"Кавелоссим\";\"other\"\n\"1274974\";\"Carapur\";\"main\"\n\"1274984\";\"Canning\";\"main\"\n\"1274984\";\"Canning Town\";\"other\"\n\"1274984\";\"Port Canning\";\"other\"\n\"1274987\";\"Cannanore\";\"main\"\n\"1274987\";\"Cananor\";\"other\"\n\"1274987\";\"Kananorskom\";\"other\"\n\"1274987\";\"Kannanur\";\"other\"\n\"1274987\";\"Kannur\";\"other\"\n\"1274987\";\"Kanoor\";\"other\"\n\"1274987\";\"Кананорском\";\"other\"\n\"1274989\";\"Candolim\";\"main\"\n\"1275004\";\"Calcutta\";\"main\"\n\"1275004\";\"Calcuta\";\"other\"\n\"1275004\";\"Calcuta - kalakata\";\"other\"\n\"1275004\";\"Calcuta - কলকাতা\";\"other\"\n\"1275004\";\"Calcutá\";\"other\"\n\"1275004\";\"Caliquit\";\"other\"\n\"1275004\";\"Kal'kutta\";\"other\"\n\"1275004\";\"Kalikata\";\"other\"\n\"1275004\";\"Kalikātā\";\"other\"\n\"1275004\";\"Kalkata\";\"other\"\n\"1275004\";\"Kalkato\";\"other\"\n\"1275004\";\"Kalkuta\";\"other\"\n\"1275004\";\"Kalkutta\";\"other\"\n\"1275004\";\"Kalkútta\";\"other\"\n\"1275004\";\"Kolkata\";\"other\"\n\"1275004\";\"Sealdah\";\"other\"\n\"1275004\";\"jia er ge da\";\"other\"\n\"1275004\";\"kalakata\";\"other\"\n\"1275004\";\"klkwth\";\"other\"\n\"1275004\";\"kolakata\";\"other\"\n\"1275004\";\"kolkata\";\"other\"\n\"1275004\";\"kolkatta\";\"other\"\n\"1275004\";\"korukata\";\"other\"\n\"1275004\";\"qwlqth\";\"other\"\n\"1275004\";\"Калкута\";\"other\"\n\"1275004\";\"Калькутта\";\"other\"\n\"1275004\";\"Колката\";\"other\"\n\"1275004\";\"כלכותה\";\"other\"\n\"1275004\";\"קולקטה\";\"other\"\n\"1275004\";\"कलकाता\";\"other\"\n\"1275004\";\"कोलकाता\";\"other\"\n\"1275004\";\"কলকাতা\";\"other\"\n\"1275004\";\"கொல்கத்தா\";\"other\"\n\"1275004\";\"കൊല്‍ക്കത്ത\";\"other\"\n\"1275004\";\"ཀ་ལི་ཀུ་ཏ\";\"other\"\n\"1275004\";\"კალკუტა\";\"other\"\n\"1275004\";\"コルカタ\";\"other\"\n\"1275004\";\"加尔各答\";\"other\"\n\"1275004\";\"콜카타\";\"other\"\n\"1275016\";\"Byādgi\";\"main\"\n\"1275016\";\"Byadgi\";\"ascii\"\n\"1275019\";\"Buxar\";\"main\"\n\"1275050\";\"Burla\";\"main\"\n\"1275053\";\"Būriya\";\"main\"\n\"1275053\";\"Buriya\";\"ascii\"\n\"1275066\";\"Burhar\";\"main\"\n\"1275068\";\"Burhānpur\";\"main\"\n\"1275068\";\"Burhanpur\";\"ascii\"\n\"1275097\";\"Būndu\";\"main\"\n\"1275097\";\"Bundu\";\"ascii\"\n\"1275103\";\"Būndi\";\"main\"\n\"1275103\";\"Bundi\";\"ascii\"\n\"1275103\";\"Bundi City\";\"other\"\n\"1275103\";\"Бунди\";\"other\"\n\"1275117\";\"Buldāna\";\"main\"\n\"1275117\";\"Buldana\";\"ascii\"\n\"1275120\";\"Bulandshahr\";\"main\"\n\"1275120\";\"Bulandshakhre\";\"other\"\n\"1275120\";\"Буландшахре\";\"other\"\n\"1275132\";\"Buguda\";\"main\"\n\"1275147\";\"Budhlāda\";\"main\"\n\"1275147\";\"Budhlada\";\"ascii\"\n\"1275152\";\"Budhāna\";\"main\"\n\"1275152\";\"Budhana\";\"ascii\"\n\"1275163\";\"Budaun\";\"main\"\n\"1275194\";\"Brājarājnagar\";\"main\"\n\"1275194\";\"Brajarajnagar\";\"ascii\"\n\"1275194\";\"Brajrajnagar\";\"other\"\n\"1275198\";\"Brahmapur\";\"main\"\n\"1275198\";\"Berhampore\";\"other\"\n\"1275198\";\"Berhampur\";\"other\"\n\"1275198\";\"Brahmapuramu\";\"other\"\n\"1275198\";\"Ganjam\";\"other\"\n\"1275218\";\"Botād\";\"main\"\n\"1275218\";\"Botad\";\"ascii\"\n\"1275230\";\"Borsad\";\"main\"\n\"1275248\";\"Borivli\";\"main\"\n\"1275248\";\"Borivali\";\"other\"\n\"1275321\";\"Bongaigaon\";\"main\"\n\"1275334\";\"Bomdila\";\"main\"\n\"1275334\";\"Bomdilla\";\"other\"\n\"1275339\";\"Mumbai\";\"main\"\n\"1275339\";\"Asumumbay\";\"other\"\n\"1275339\";\"Bombai\";\"other\"\n\"1275339\";\"Bombaim\";\"other\"\n\"1275339\";\"Bombaj\";\"other\"\n\"1275339\";\"Bombay\";\"other\"\n\"1275339\";\"Bombejus\";\"other\"\n\"1275339\";\"Bombėjus\";\"other\"\n\"1275339\";\"Lungsod ng Mumbai\";\"other\"\n\"1275339\";\"Moembaai\";\"other\"\n\"1275339\";\"Mumbai - मुम़बई\";\"other\"\n\"1275339\";\"Mumbaj\";\"other\"\n\"1275339\";\"Mumbaja\";\"other\"\n\"1275339\";\"Mumbajo\";\"other\"\n\"1275339\";\"Mumbajus\";\"other\"\n\"1275339\";\"Numbai\";\"other\"\n\"1275339\";\"bamba'i\";\"other\"\n\"1275339\";\"bmbyy\";\"other\"\n\"1275339\";\"meng mai\";\"other\"\n\"1275339\";\"mmbay\";\"other\"\n\"1275339\";\"mmby\";\"other\"\n\"1275339\";\"mu0bai\";\"other\"\n\"1275339\";\"mumaba'e\";\"other\"\n\"1275339\";\"mumba'i\";\"other\"\n\"1275339\";\"mumbai\";\"other\"\n\"1275339\";\"mumpai\";\"other\"\n\"1275339\";\"munbai\";\"other\"\n\"1275339\";\"mwmbay\";\"other\"\n\"1275339\";\"Бомбай\";\"other\"\n\"1275339\";\"Мумбаи\";\"other\"\n\"1275339\";\"Мумбай\";\"other\"\n\"1275339\";\"Мумбаї\";\"other\"\n\"1275339\";\"מומבאי\";\"other\"\n\"1275339\";\"بمبئی\";\"other\"\n\"1275339\";\"ممبئ\";\"other\"\n\"1275339\";\"ممباي\";\"other\"\n\"1275339\";\"مومبای\";\"other\"\n\"1275339\";\"बम्बई\";\"other\"\n\"1275339\";\"मुंबई\";\"other\"\n\"1275339\";\"मुम्बई\";\"other\"\n\"1275339\";\"মুম্বাই\";\"other\"\n\"1275339\";\"ਮੁਮਬਏ\";\"other\"\n\"1275339\";\"મુંબઈ\";\"other\"\n\"1275339\";\"மும்பை\";\"other\"\n\"1275339\";\"ಮುಂಬೈ\";\"other\"\n\"1275339\";\"ಮು೦ಬೈ\";\"other\"\n\"1275339\";\"འབོམ་སྦེ\";\"other\"\n\"1275339\";\"ムンバイ\";\"other\"\n\"1275339\";\"孟买\";\"other\"\n\"1275339\";\"뭄바이\";\"other\"\n\"1275346\";\"Bolpur\";\"main\"\n\"1275354\";\"Bolānīkhodān\";\"main\"\n\"1275354\";\"Bolanikhodan\";\"ascii\"\n\"1275354\";\"Bolani\";\"other\"\n\"1275354\";\"Bolāni\";\"other\"\n\"1275362\";\"Bokāro\";\"main\"\n\"1275362\";\"Bokaro\";\"ascii\"\n\"1275362\";\"Бокаро\";\"other\"\n\"1275363\";\"Bokākhāt\";\"main\"\n\"1275363\";\"Bokakhat\";\"ascii\"\n\"1275364\";\"Bokajān\";\"main\"\n\"1275364\";\"Bokajan\";\"ascii\"\n\"1275364\";\"Bokajan O. Noajan\";\"other\"\n\"1275368\";\"Boisar\";\"main\"\n\"1275384\";\"Bodri\";\"main\"\n\"1275388\";\"Bodināyakkanūr\";\"main\"\n\"1275388\";\"Bodinayakkanur\";\"ascii\"\n\"1275388\";\"Bodinayakanur\";\"other\"\n\"1275389\";\"Bodh Gaya\";\"main\"\n\"1275389\";\"Bodh Gaja\";\"other\"\n\"1275389\";\"Bodh-Gaya\";\"other\"\n\"1275389\";\"Bodhgaja\";\"other\"\n\"1275389\";\"Bodhgaya\";\"other\"\n\"1275389\";\"Buddh Gaya\";\"other\"\n\"1275389\";\"Buddha Gaya\";\"other\"\n\"1275389\";\"Bódhgaja\";\"other\"\n\"1275389\";\"bodha gaya\";\"other\"\n\"1275389\";\"bodhagaya\";\"other\"\n\"1275389\";\"bodkh-gaja\";\"other\"\n\"1275389\";\"buddagaya\";\"other\"\n\"1275389\";\"phuthth kh ya\";\"other\"\n\"1275389\";\"pu ti jia ye\";\"other\"\n\"1275389\";\"Бодх-Гая\";\"other\"\n\"1275389\";\"बोधगया\";\"other\"\n\"1275389\";\"বোধ গয়া\";\"other\"\n\"1275389\";\"พุทธคยา\";\"other\"\n\"1275389\";\"ブッダガヤ\";\"other\"\n\"1275389\";\"菩提伽耶\";\"other\"\n\"1275391\";\"Bodhan\";\"main\"\n\"1275406\";\"Bobbili\";\"main\"\n\"1275426\";\"Bithūr\";\"main\"\n\"1275426\";\"Bithur\";\"ascii\"\n\"1275435\";\"Biswān\";\"main\"\n\"1275435\";\"Biswan\";\"ascii\"\n\"1275441\";\"Bissau\";\"main\"\n\"1275441\";\"Bisau\";\"other\"\n\"1275441\";\"Бисау\";\"other\"\n\"1275462\";\"Bishnupur\";\"main\"\n\"1275462\";\"Vishnupur\";\"other\"\n\"1275462\";\"Бишнупур\";\"other\"\n\"1275463\";\"Bishnupur\";\"main\"\n\"1275463\";\"Бишнупур\";\"other\"\n\"1275466\";\"Bishnāh\";\"main\"\n\"1275466\";\"Bishnah\";\"ascii\"\n\"1275466\";\"Bishna\";\"other\"\n\"1275474\";\"Bisenda Buzurg\";\"main\"\n\"1275474\";\"Bisanda\";\"other\"\n\"1275474\";\"Bisenda\";\"other\"\n\"1275476\";\"Bisauli\";\"main\"\n\"1275481\";\"Bīsalpur\";\"main\"\n\"1275481\";\"Bisalpur\";\"ascii\"\n\"1275488\";\"Birūr\";\"main\"\n\"1275488\";\"Birur\";\"ascii\"\n\"1275499\";\"Bīrpur\";\"main\"\n\"1275499\";\"Birpur\";\"ascii\"\n\"1275506\";\"Birmitrapur\";\"main\"\n\"1275526\";\"Birbhaddar\";\"main\"\n\"1275526\";\"Virbhadra\";\"other\"\n\"1275558\";\"Binika\";\"main\"\n\"1275558\";\"Binka\";\"other\"\n\"1275572\";\"Bindki\";\"main\"\n\"1275582\";\"Etāwa\";\"main\"\n\"1275582\";\"Etawa\";\"ascii\"\n\"1275582\";\"Bina-Etawa\";\"other\"\n\"1275582\";\"Bīna-Etāwa\";\"other\"\n\"1275582\";\"Etawah\";\"other\"\n\"1275589\";\"Belthara\";\"main\"\n\"1275589\";\"Bilthar\";\"other\"\n\"1275589\";\"Bilthra\";\"other\"\n\"1275590\";\"Bilsi\";\"main\"\n\"1275593\";\"Bilsanda\";\"main\"\n\"1275601\";\"Biloli\";\"main\"\n\"1275609\";\"Bilkha\";\"main\"\n\"1275609\";\"Bhilka\";\"other\"\n\"1275614\";\"Bilhaur\";\"main\"\n\"1275618\";\"Bilgrām\";\"main\"\n\"1275618\";\"Bilgram\";\"ascii\"\n\"1275619\";\"Bilgi\";\"main\"\n\"1275619\";\"Bilg\";\"other\"\n\"1275631\";\"Bilāspur\";\"main\"\n\"1275631\";\"Bilaspur\";\"ascii\"\n\"1275633\";\"Bilāspur\";\"main\"\n\"1275633\";\"Bilaspur\";\"ascii\"\n\"1275634\";\"Bilāspur\";\"main\"\n\"1275634\";\"Bilaspur\";\"ascii\"\n\"1275635\";\"Bilāspur\";\"main\"\n\"1275635\";\"Bilaspur\";\"ascii\"\n\"1275637\";\"Bilāspur\";\"main\"\n\"1275637\";\"Bilaspur\";\"ascii\"\n\"1275637\";\"Bilaspura\";\"other\"\n\"1275637\";\"Биласпура\";\"other\"\n\"1275641\";\"Bilāsipāra\";\"main\"\n\"1275641\";\"Bilasipara\";\"ascii\"\n\"1275645\";\"Bilariāganj\";\"main\"\n\"1275645\";\"Bilariaganj\";\"ascii\"\n\"1275645\";\"Bilrayaganj\";\"other\"\n\"1275645\";\"Bilrayāganj\";\"other\"\n\"1275646\";\"Bilāri\";\"main\"\n\"1275646\";\"Bilari\";\"ascii\"\n\"1275647\";\"Bilāra\";\"main\"\n\"1275647\";\"Bilara\";\"ascii\"\n\"1275655\";\"Bikramganj\";\"main\"\n\"1275661\";\"Bīkāpur\";\"main\"\n\"1275661\";\"Bikapur\";\"ascii\"\n\"1275665\";\"Bīkāner\";\"main\"\n\"1275665\";\"Bikaner\";\"ascii\"\n\"1275665\";\"Bîkâner\";\"other\"\n\"1275665\";\"bikanera\";\"other\"\n\"1275665\";\"Биканер\";\"other\"\n\"1275665\";\"बीकानेर\";\"other\"\n\"1275674\";\"Bijroni\";\"main\"\n\"1275679\";\"Bijnor\";\"main\"\n\"1275682\";\"Bijni\";\"main\"\n\"1275692\";\"Bijbiāra\";\"main\"\n\"1275692\";\"Bijbiara\";\"ascii\"\n\"1275692\";\"Vejibyor\";\"other\"\n\"1275692\";\"Vejibyōr\";\"other\"\n\"1275694\";\"Bijāwar\";\"main\"\n\"1275694\";\"Bijawar\";\"ascii\"\n\"1275701\";\"Bijāpur\";\"main\"\n\"1275701\";\"Bijapur\";\"ascii\"\n\"1275701\";\"Bidzapur\";\"other\"\n\"1275701\";\"Bidzhapur\";\"other\"\n\"1275701\";\"Bidźapur\";\"other\"\n\"1275701\";\"Bîjâpur\";\"other\"\n\"1275701\";\"Vijayapur\";\"other\"\n\"1275701\";\"Visiapur\";\"other\"\n\"1275701\";\"bi jia bu er\";\"other\"\n\"1275701\";\"bijapura\";\"other\"\n\"1275701\";\"Биджапур\";\"other\"\n\"1275701\";\"ಬಿಜಾಪುರ\";\"other\"\n\"1275701\";\"比贾布尔\";\"other\"\n\"1275713\";\"Bihpuriāgaon\";\"main\"\n\"1275713\";\"Bihpuriagaon\";\"ascii\"\n\"1275716\";\"Bihār Sharīf\";\"main\"\n\"1275716\";\"Bihar Sharif\";\"ascii\"\n\"1275716\";\"Behar\";\"other\"\n\"1275716\";\"Bihar\";\"other\"\n\"1275716\";\"Bihār\";\"other\"\n\"1275719\";\"Bihārīganj\";\"main\"\n\"1275719\";\"Bihariganj\";\"ascii\"\n\"1275722\";\"Bighāpur\";\"main\"\n\"1275722\";\"Bighapur\";\"ascii\"\n\"1275732\";\"Bidhūna\";\"main\"\n\"1275732\";\"Bidhuna\";\"ascii\"\n\"1275738\";\"Bīdar\";\"main\"\n\"1275738\";\"Bidar\";\"ascii\"\n\"1275738\";\"Бидар\";\"other\"\n\"1275762\";\"Biaora\";\"main\"\n\"1275768\";\"Bhuvanagiri\";\"main\"\n\"1275768\";\"Bhavanagiri\";\"other\"\n\"1275768\";\"Bliuvanagiri\";\"other\"\n\"1275778\";\"Bhusāwal\";\"main\"\n\"1275778\";\"Bhusawal\";\"ascii\"\n\"1275778\";\"Bhusaval\";\"other\"\n\"1275778\";\"Bhusāval\";\"other\"\n\"1275804\";\"Bhūm\";\"main\"\n\"1275804\";\"Bhum\";\"ascii\"\n\"1275804\";\"Bhoom\";\"other\"\n\"1275812\";\"Bhuj\";\"main\"\n\"1275812\";\"Bhooj\";\"other\"\n\"1275812\";\"bhuja\";\"other\"\n\"1275812\";\"ભુજ\";\"other\"\n\"1275814\";\"Bhudgaon\";\"main\"\n\"1275814\";\"Budhgaon\";\"other\"\n\"1275817\";\"Bhubaneshwar\";\"main\"\n\"1275817\";\"BBSR\";\"other\"\n\"1275817\";\"Bhubaneswar\";\"other\"\n\"1275817\";\"Bhubaneśwar\";\"other\"\n\"1275817\";\"Bkhubaneshvar\";\"other\"\n\"1275817\";\"Temple City of India\";\"other\"\n\"1275817\";\"bhubanesbara\";\"other\"\n\"1275817\";\"bhuvanesvara\";\"other\"\n\"1275817\";\"buvu~aneshuvu~aru\";\"other\"\n\"1275817\";\"puvanesvar\";\"other\"\n\"1275817\";\"Бхубанешвар\";\"other\"\n\"1275817\";\"בובנשוואר\";\"other\"\n\"1275817\";\"भुवनेश्वर\";\"other\"\n\"1275817\";\"ভুবনেশ্বর\";\"other\"\n\"1275817\";\"புவனேஸ்வர்\";\"other\"\n\"1275817\";\"ブヴァネーシュヴァル\";\"other\"\n\"1275818\";\"Bhuban\";\"main\"\n\"1275826\";\"Bhowāli\";\"main\"\n\"1275826\";\"Bhowali\";\"ascii\"\n\"1275836\";\"Bhor\";\"main\"\n\"1275841\";\"Bhopāl\";\"main\"\n\"1275841\";\"Bhopal\";\"ascii\"\n\"1275841\";\"Bhopalas\";\"other\"\n\"1275841\";\"Bkhopal\";\"other\"\n\"1275841\";\"bhopala\";\"other\"\n\"1275841\";\"bo pa er\";\"other\"\n\"1275841\";\"boparu\";\"other\"\n\"1275841\";\"popal\";\"other\"\n\"1275841\";\"Бхопал\";\"other\"\n\"1275841\";\"भोपाल\";\"other\"\n\"1275841\";\"भोपाळ\";\"other\"\n\"1275841\";\"ভোপাল\";\"other\"\n\"1275841\";\"போபால்\";\"other\"\n\"1275841\";\"ボパール\";\"other\"\n\"1275841\";\"ボーパール\";\"other\"\n\"1275841\";\"博帕尔\";\"other\"\n\"1275848\";\"Bhongīr\";\"main\"\n\"1275848\";\"Bhongir\";\"ascii\"\n\"1275849\";\"Bhongaon\";\"main\"\n\"1275859\";\"Bholath\";\"main\"\n\"1275866\";\"Bhojudih\";\"main\"\n\"1275882\";\"Bhogpur\";\"main\"\n\"1275882\";\"Bhogpur Sirwal\";\"other\"\n\"1275899\";\"Bhiwāni\";\"main\"\n\"1275899\";\"Bhiwani\";\"ascii\"\n\"1275901\";\"Bhiwandi\";\"main\"\n\"1275901\";\"Bhiwndi\";\"other\"\n\"1275905\";\"Bhitarwār\";\"main\"\n\"1275905\";\"Bhitarwar\";\"ascii\"\n\"1275920\";\"Bhīnmāl\";\"main\"\n\"1275920\";\"Bhinmal\";\"ascii\"\n\"1275921\";\"Bhinga\";\"main\"\n\"1275925\";\"Bhīndar\";\"main\"\n\"1275925\";\"Bhindar\";\"ascii\"\n\"1275926\";\"Bhind\";\"main\"\n\"1275930\";\"Bhīmunipatnam\";\"main\"\n\"1275930\";\"Bhimunipatnam\";\"ascii\"\n\"1275930\";\"Bheemunipatnam\";\"other\"\n\"1275930\";\"Bimlipatam\";\"other\"\n\"1275931\";\"Bhīm Tāl\";\"main\"\n\"1275931\";\"Bhim Tal\";\"ascii\"\n\"1275947\";\"Bhīmavaram\";\"main\"\n\"1275947\";\"Bhimavaram\";\"ascii\"\n\"1275960\";\"Bhīlwāra\";\"main\"\n\"1275960\";\"Bhilwara\";\"ascii\"\n\"1275971\";\"Bhilai\";\"main\"\n\"1275971\";\"Bkhilai\";\"other\"\n\"1275971\";\"birai\";\"other\"\n\"1275971\";\"Бхилаи\";\"other\"\n\"1275971\";\"ビライ\";\"other\"\n\"1275977\";\"Bhīkhi\";\"main\"\n\"1275977\";\"Bhikhi\";\"ascii\"\n\"1275978\";\"Bhikangaon\";\"main\"\n\"1275980\";\"Bhigvan\";\"main\"\n\"1276013\";\"Bhāyāvadar\";\"main\"\n\"1276013\";\"Bhayavadar\";\"ascii\"\n\"1276013\";\"Bhaya nadar\";\"other\"\n\"1276013\";\"Bhayaradar\";\"other\"\n\"1276013\";\"Bhayawadar\";\"other\"\n\"1276013\";\"Bhāyāradar\";\"other\"\n\"1276023\";\"Bhawānipatna\";\"main\"\n\"1276023\";\"Bhawanipatna\";\"ascii\"\n\"1276026\";\"Bhawānīgarh\";\"main\"\n\"1276026\";\"Bhawanigarh\";\"ascii\"\n\"1276027\";\"Bhawāniganj\";\"main\"\n\"1276027\";\"Bhawaniganj\";\"ascii\"\n\"1276032\";\"Bhāvnagar\";\"main\"\n\"1276032\";\"Bhavnagar\";\"ascii\"\n\"1276032\";\"Baunagar\";\"other\"\n\"1276032\";\"Bharnagar\";\"other\"\n\"1276032\";\"Bhaunagar\";\"other\"\n\"1276032\";\"Bhunagar\";\"other\"\n\"1276032\";\"Bkhavnagarom\";\"other\"\n\"1276032\";\"bhavanagara\";\"other\"\n\"1276032\";\"Бхавнагаром\";\"other\"\n\"1276032\";\"ભાવનગર\";\"other\"\n\"1276037\";\"Bhavāni\";\"main\"\n\"1276037\";\"Bhavani\";\"ascii\"\n\"1276054\";\"Bhattiprolu\";\"main\"\n\"1276058\";\"Bhātpāra\";\"main\"\n\"1276058\";\"Bhatpara\";\"ascii\"\n\"1276067\";\"Bhatkal\";\"main\"\n\"1276070\";\"Bhatinda\";\"main\"\n\"1276079\";\"Bhatgaon\";\"main\"\n\"1276084\";\"Bhātāpāra\";\"main\"\n\"1276084\";\"Bhatapara\";\"ascii\"\n\"1276092\";\"Bhasāwar\";\"main\"\n\"1276092\";\"Bhasawar\";\"ascii\"\n\"1276095\";\"Bharwāri\";\"main\"\n\"1276095\";\"Bharwari\";\"ascii\"\n\"1276100\";\"Bharūch\";\"main\"\n\"1276100\";\"Bharuch\";\"ascii\"\n\"1276100\";\"Baroach\";\"other\"\n\"1276100\";\"Bharoch\";\"other\"\n\"1276100\";\"Broach\";\"other\"\n\"1276103\";\"Bharthana\";\"main\"\n\"1276128\";\"Bharatpur\";\"main\"\n\"1276147\";\"Bhānvad\";\"main\"\n\"1276147\";\"Bhanvad\";\"ascii\"\n\"1276147\";\"Bhanwar\";\"other\"\n\"1276147\";\"Bhauwar\";\"other\"\n\"1276151\";\"Bhānpuri\";\"main\"\n\"1276151\";\"Bhanpuri\";\"ascii\"\n\"1276152\";\"Bhānpura\";\"main\"\n\"1276152\";\"Bhanpura\";\"ascii\"\n\"1276159\";\"Bhanjanagar\";\"main\"\n\"1276159\";\"Russelkonda\";\"other\"\n\"1276159\";\"Russellkonda\";\"other\"\n\"1276178\";\"Bhānder\";\"main\"\n\"1276178\";\"Bhander\";\"ascii\"\n\"1276191\";\"Bhandāra\";\"main\"\n\"1276191\";\"Bhandara\";\"ascii\"\n\"1276191\";\"Bkhandara\";\"other\"\n\"1276191\";\"Бхандара\";\"other\"\n\"1276219\";\"Bhālki\";\"main\"\n\"1276219\";\"Bhalki\";\"ascii\"\n\"1276249\";\"Bhaisa\";\"main\"\n\"1276249\";\"Bhainsa\";\"other\"\n\"1276265\";\"Bhainsdehi\";\"main\"\n\"1276275\";\"Bhagwantnagar\";\"main\"\n\"1276300\";\"Bhāgalpur\";\"main\"\n\"1276300\";\"Bhagalpur\";\"ascii\"\n\"1276320\";\"Bhadreswar\";\"main\"\n\"1276321\";\"Bhadrāvati\";\"main\"\n\"1276321\";\"Bhadravati\";\"ascii\"\n\"1276325\";\"Bhadrakh\";\"main\"\n\"1276325\";\"Bhadrak\";\"other\"\n\"1276328\";\"Bhadrāchalam\";\"main\"\n\"1276328\";\"Bhadrachalam\";\"ascii\"\n\"1276328\";\"Bhadrachellam Road\";\"other\"\n\"1276330\";\"Bhādra\";\"main\"\n\"1276330\";\"Bhadra\";\"ascii\"\n\"1276330\";\"Bkhadra\";\"other\"\n\"1276330\";\"Бхадра\";\"other\"\n\"1276335\";\"Bhadohī\";\"main\"\n\"1276335\";\"Bhadohi\";\"ascii\"\n\"1276353\";\"Bhadaur\";\"main\"\n\"1276355\";\"Bhādāsar\";\"main\"\n\"1276355\";\"Bhadasar\";\"ascii\"\n\"1276358\";\"Bhadarwāh\";\"main\"\n\"1276358\";\"Bhadarwah\";\"ascii\"\n\"1276358\";\"Bhadarwab\";\"other\"\n\"1276358\";\"Bhaderwah\";\"other\"\n\"1276358\";\"Bhadrawah\";\"other\"\n\"1276370\";\"Bhachāu\";\"main\"\n\"1276370\";\"Bhachau\";\"ascii\"\n\"1276370\";\"Bachau\";\"other\"\n\"1276370\";\"Buchow\";\"other\"\n\"1276371\";\"Bhabua\";\"main\"\n\"1276374\";\"Bhābhra\";\"main\"\n\"1276374\";\"Bhabhra\";\"ascii\"\n\"1276374\";\"Bhabra\";\"other\"\n\"1276374\";\"Bhābra\";\"other\"\n\"1276378\";\"Beypore\";\"main\"\n\"1276378\";\"Beipur\";\"other\"\n\"1276378\";\"Beppur\";\"other\"\n\"1276378\";\"Beypur\";\"other\"\n\"1276381\";\"Bewar\";\"main\"\n\"1276388\";\"Betūl Bāzār\";\"main\"\n\"1276388\";\"Betul Bazar\";\"ascii\"\n\"1276388\";\"Betul\";\"other\"\n\"1276389\";\"Betūl\";\"main\"\n\"1276389\";\"Betul\";\"ascii\"\n\"1276389\";\"Badnur\";\"other\"\n\"1276389\";\"Badnúr\";\"other\"\n\"1276393\";\"Bettiah\";\"main\"\n\"1276400\";\"Betma\";\"main\"\n\"1276416\";\"Betamcherla\";\"main\"\n\"1276419\";\"Beswān\";\"main\"\n\"1276419\";\"Beswan\";\"ascii\"\n\"1276437\";\"Beri Khās\";\"main\"\n\"1276437\";\"Beri Khas\";\"ascii\"\n\"1276437\";\"Beri\";\"other\"\n\"1276449\";\"Berasia\";\"main\"\n\"1276455\";\"Beohāri\";\"main\"\n\"1276455\";\"Beohari\";\"ascii\"\n\"1276463\";\"Benīganj\";\"main\"\n\"1276463\";\"Beniganj\";\"ascii\"\n\"1276472\";\"Benaulim\";\"main\"\n\"1276478\";\"Bemetāra\";\"main\"\n\"1276478\";\"Bemetara\";\"ascii\"\n\"1276486\";\"Belūr\";\"main\"\n\"1276486\";\"Belur\";\"ascii\"\n\"1276486\";\"Белур\";\"other\"\n\"1276487\";\"Belūr\";\"main\"\n\"1276487\";\"Belur\";\"ascii\"\n\"1276491\";\"Beltangadi\";\"main\"\n\"1276491\";\"Beltangady\";\"other\"\n\"1276495\";\"Belsand\";\"main\"\n\"1276502\";\"Belonia\";\"main\"\n\"1276502\";\"Beloniya\";\"other\"\n\"1276506\";\"Bellūru\";\"main\"\n\"1276506\";\"Belluru\";\"ascii\"\n\"1276506\";\"Bellur\";\"other\"\n\"1276509\";\"Bellary\";\"main\"\n\"1276509\";\"Ballari\";\"other\"\n\"1276509\";\"Ballāri\";\"other\"\n\"1276509\";\"Bellari\";\"other\"\n\"1276509\";\"Bellāri\";\"other\"\n\"1276509\";\"Беллари\";\"other\"\n\"1276520\";\"Beliātor\";\"main\"\n\"1276520\";\"Beliator\";\"ascii\"\n\"1276520\";\"Beliatore\";\"other\"\n\"1276533\";\"Belgaum\";\"main\"\n\"1276533\";\"bei er gao mu\";\"other\"\n\"1276533\";\"belaganva\";\"other\"\n\"1276533\";\"belagavi\";\"other\"\n\"1276533\";\"belgam\";\"other\"\n\"1276533\";\"बेळगांव\";\"other\"\n\"1276533\";\"బెల్గాం\";\"other\"\n\"1276533\";\"ಬೆಳಗಾವಿ\";\"other\"\n\"1276533\";\"贝尔高姆\";\"other\"\n\"1276548\";\"Beldānga\";\"main\"\n\"1276548\";\"Beldanga\";\"ascii\"\n\"1276568\";\"Belaguntha\";\"main\"\n\"1276574\";\"Bela\";\"main\"\n\"1276574\";\"Bela Partabgarh\";\"other\"\n\"1276574\";\"Partapgarh\";\"other\"\n\"1276574\";\"Pratapgarh\";\"other\"\n\"1276574\";\"Бела\";\"other\"\n\"1276589\";\"Behror\";\"main\"\n\"1276600\";\"Behat\";\"main\"\n\"1276609\";\"Begusarai\";\"main\"\n\"1276615\";\"Begūn\";\"main\"\n\"1276615\";\"Begun\";\"ascii\"\n\"1276615\";\"Бегун\";\"other\"\n\"1276616\";\"Begowāl\";\"main\"\n\"1276616\";\"Begowal\";\"ascii\"\n\"1276616\";\"Begowala\";\"other\"\n\"1276621\";\"Begamganj\";\"main\"\n\"1276627\";\"Bedi\";\"main\"\n\"1276627\";\"Beda\";\"other\"\n\"1276627\";\"Bedi Bandar\";\"other\"\n\"1276627\";\"Беда\";\"other\"\n\"1276634\";\"Beāwar\";\"main\"\n\"1276634\";\"Beawar\";\"ascii\"\n\"1276642\";\"Bāzpur\";\"main\"\n\"1276642\";\"Bazpur\";\"ascii\"\n\"1276652\";\"Bayāna\";\"main\"\n\"1276652\";\"Bayana\";\"ascii\"\n\"1276652\";\"Bajan\";\"other\"\n\"1276652\";\"Bayaha\";\"other\"\n\"1276652\";\"Баян\";\"other\"\n\"1276663\";\"Bawāna\";\"main\"\n\"1276663\";\"Bawana\";\"ascii\"\n\"1276663\";\"Bawana Delhi\";\"other\"\n\"1276666\";\"Bāwal\";\"main\"\n\"1276666\";\"Bawal\";\"ascii\"\n\"1276686\";\"Bauda\";\"main\"\n\"1276686\";\"Baudh\";\"other\"\n\"1276686\";\"Baudh Raj\";\"other\"\n\"1276686\";\"Baudh Rāj\";\"other\"\n\"1276686\";\"Baudh-Ral\";\"other\"\n\"1276697\";\"Batoti\";\"main\"\n\"1276697\";\"Batote\";\"other\"\n\"1276720\";\"Batāla\";\"main\"\n\"1276720\";\"Batala\";\"ascii\"\n\"1276720\";\"Butala\";\"other\"\n\"1276724\";\"Baswa\";\"main\"\n\"1276728\";\"Bāsugaon\";\"main\"\n\"1276728\";\"Basugaon\";\"ascii\"\n\"1276731\";\"Bāsudebpur\";\"main\"\n\"1276731\";\"Basudebpur\";\"ascii\"\n\"1276736\";\"Basti\";\"main\"\n\"1276736\";\"Басти\";\"other\"\n\"1276752\";\"Bāsoda\";\"main\"\n\"1276752\";\"Basoda\";\"ascii\"\n\"1276754\";\"Basni\";\"main\"\n\"1276754\";\"Basni Bailima\";\"other\"\n\"1276754\";\"Басни\";\"other\"\n\"1276756\";\"Basna\";\"main\"\n\"1276757\";\"Basmat\";\"main\"\n\"1276757\";\"Basmath\";\"other\"\n\"1276764\";\"Basi\";\"main\"\n\"1276765\";\"Basi\";\"main\"\n\"1276765\";\"Dera Basi\";\"other\"\n\"1276765\";\"Dera Bassi\";\"other\"\n\"1276767\";\"Basi\";\"main\"\n\"1276782\";\"Basavana Bāgevādi\";\"main\"\n\"1276782\";\"Basavana Bagevadi\";\"ascii\"\n\"1276782\";\"Bagevadi\";\"other\"\n\"1276782\";\"Bāgevādi\";\"other\"\n\"1276783\";\"Basavakalyān\";\"main\"\n\"1276783\";\"Basavakalyan\";\"ascii\"\n\"1276783\";\"Kalyani\";\"other\"\n\"1276783\";\"Kalyāni\";\"other\"\n\"1276788\";\"Bāsār\";\"main\"\n\"1276788\";\"Basar\";\"ascii\"\n\"1276810\";\"Barwāni\";\"main\"\n\"1276810\";\"Barwani\";\"ascii\"\n\"1276815\";\"Barwāla\";\"main\"\n\"1276815\";\"Barwala\";\"ascii\"\n\"1276819\";\"Barwādih\";\"main\"\n\"1276819\";\"Barwadih\";\"ascii\"\n\"1276829\";\"Bāruni\";\"main\"\n\"1276829\";\"Baruni\";\"ascii\"\n\"1276829\";\"Barani\";\"other\"\n\"1276829\";\"Баруни\";\"other\"\n\"1276832\";\"Bāruipur\";\"main\"\n\"1276832\";\"Baruipur\";\"ascii\"\n\"1276856\";\"Bārsi\";\"main\"\n\"1276856\";\"Barsi\";\"ascii\"\n\"1276857\";\"Barsāna\";\"main\"\n\"1276857\";\"Barsana\";\"ascii\"\n\"1276867\";\"Barpeta\";\"main\"\n\"1276869\";\"Barpathār\";\"main\"\n\"1276869\";\"Barpathar\";\"ascii\"\n\"1276870\";\"Barpāli\";\"main\"\n\"1276870\";\"Barpali\";\"ascii\"\n\"1276895\";\"Barnāla\";\"main\"\n\"1276895\";\"Barnala\";\"ascii\"\n\"1276895\";\"Барнала\";\"other\"\n\"1276901\";\"Bārmer\";\"main\"\n\"1276901\";\"Barmer\";\"ascii\"\n\"1276917\";\"Barkot\";\"main\"\n\"1276919\";\"Barki Saria\";\"main\"\n\"1276922\";\"Barkhera\";\"main\"\n\"1276922\";\"Barkhera Kala\";\"other\"\n\"1276922\";\"Barkhera Kalan\";\"other\"\n\"1276922\";\"Barkhera Kalān\";\"other\"\n\"1276927\";\"Barka Kāna\";\"main\"\n\"1276927\";\"Barka Kana\";\"ascii\"\n\"1276932\";\"Barjora\";\"main\"\n\"1276938\";\"Barjala\";\"main\"\n\"1276939\";\"Bari Sādri\";\"main\"\n\"1276939\";\"Bari Sadri\";\"ascii\"\n\"1276945\";\"Bariārpur\";\"main\"\n\"1276945\";\"Bariarpur\";\"ascii\"\n\"1276948\";\"Bāri\";\"main\"\n\"1276948\";\"Bari\";\"ascii\"\n\"1276954\";\"Barhiya\";\"main\"\n\"1276955\";\"patamda\";\"main\"\n\"1276956\";\"Barhi\";\"main\"\n\"1276977\";\"Bārh\";\"main\"\n\"1276977\";\"Barh\";\"ascii\"\n\"1276977\";\"Barkh\";\"other\"\n\"1276977\";\"Барх\";\"other\"\n\"1276982\";\"Bargi\";\"main\"\n\"1276983\";\"Barghāt\";\"main\"\n\"1276983\";\"Barghat\";\"ascii\"\n\"1276988\";\"Bargarh\";\"main\"\n\"1276988\";\"Baragarh\";\"other\"\n\"1277008\";\"Barelā\";\"main\"\n\"1277008\";\"Barela\";\"ascii\"\n\"1277013\";\"Bareilly\";\"main\"\n\"1277013\";\"Barejli\";\"other\"\n\"1277013\";\"Bareli\";\"other\"\n\"1277013\";\"Barelī\";\"other\"\n\"1277013\";\"Барейли\";\"other\"\n\"1277022\";\"Bārdoli\";\"main\"\n\"1277022\";\"Bardoli\";\"ascii\"\n\"1277022\";\"Bardoti\";\"other\"\n\"1277022\";\"Бардоли\";\"other\"\n\"1277029\";\"Barddhamān\";\"main\"\n\"1277029\";\"Barddhaman\";\"ascii\"\n\"1277029\";\"Bardhaman\";\"other\"\n\"1277029\";\"Bardhamān\";\"other\"\n\"1277029\";\"Burdwan\";\"other\"\n\"1277029\";\"Burdwān\";\"other\"\n\"1277038\";\"Bar Bigha\";\"main\"\n\"1277044\";\"Baraut\";\"main\"\n\"1277053\";\"Barauli\";\"main\"\n\"1277065\";\"Bārāsat\";\"main\"\n\"1277065\";\"Barasat\";\"ascii\"\n\"1277082\";\"Baranagar\";\"main\"\n\"1277082\";\"Baranagore\";\"other\"\n\"1277084\";\"Bārān\";\"main\"\n\"1277084\";\"Baran\";\"ascii\"\n\"1277084\";\"Баран\";\"other\"\n\"1277085\";\"Bāramūla\";\"main\"\n\"1277085\";\"Baramula\";\"ascii\"\n\"1277091\";\"Bārāmati\";\"main\"\n\"1277091\";\"Baramati\";\"ascii\"\n\"1277091\";\"Барамати\";\"other\"\n\"1277100\";\"Bārākpur\";\"main\"\n\"1277100\";\"Barakpur\";\"ascii\"\n\"1277100\";\"Barrackpore\";\"other\"\n\"1277100\";\"Chanak\";\"other\"\n\"1277134\";\"Barāgaon\";\"main\"\n\"1277134\";\"Baragaon\";\"ascii\"\n\"1277135\";\"Barāgaon\";\"main\"\n\"1277135\";\"Baragaon\";\"ascii\"\n\"1277155\";\"Bara Bazar\";\"main\"\n\"1277155\";\"Barabazar\";\"other\"\n\"1277155\";\"Calcutta Bara Bazar\";\"other\"\n\"1277183\";\"Bāpatla\";\"main\"\n\"1277183\";\"Bapatla\";\"ascii\"\n\"1277200\";\"Banūr\";\"main\"\n\"1277200\";\"Banur\";\"ascii\"\n\"1277201\";\"Bantvāl\";\"main\"\n\"1277201\";\"Bantval\";\"ascii\"\n\"1277201\";\"Bantwall\";\"other\"\n\"1277201\";\"Bantyal\";\"other\"\n\"1277201\";\"Bartval\";\"other\"\n\"1277202\";\"Bāntva\";\"main\"\n\"1277202\";\"Bantva\";\"ascii\"\n\"1277202\";\"Bantwa\";\"other\"\n\"1277214\";\"Bānswāra\";\"main\"\n\"1277214\";\"Banswara\";\"ascii\"\n\"1277216\";\"Bānswāda\";\"main\"\n\"1277216\";\"Banswada\";\"ascii\"\n\"1277232\";\"Bānsi\";\"main\"\n\"1277232\";\"Bansi\";\"ascii\"\n\"1277235\";\"Bānsgaon\";\"main\"\n\"1277235\";\"Bansgaon\";\"ascii\"\n\"1277238\";\"Bānsdīh\";\"main\"\n\"1277238\";\"Bansdih\";\"ascii\"\n\"1277240\";\"Bānsbāria\";\"main\"\n\"1277240\";\"Bansbaria\";\"ascii\"\n\"1277240\";\"Bansberia\";\"other\"\n\"1277247\";\"Bānposh\";\"main\"\n\"1277247\";\"Banposh\";\"ascii\"\n\"1277247\";\"Banposi\";\"other\"\n\"1277247\";\"Bānposi\";\"other\"\n\"1277247\";\"Panposh\";\"other\"\n\"1277255\";\"Bannūr\";\"main\"\n\"1277255\";\"Bannur\";\"ascii\"\n\"1277263\";\"Banmankhi\";\"main\"\n\"1277263\";\"Banmanki\";\"other\"\n\"1277264\";\"Bānkura\";\"main\"\n\"1277264\";\"Bankura\";\"ascii\"\n\"1277264\";\"Банкура\";\"other\"\n\"1277273\";\"Bānki\";\"main\"\n\"1277273\";\"Banki\";\"ascii\"\n\"1277273\";\"Bankigarh\";\"other\"\n\"1277273\";\"Bānkīgarh\";\"other\"\n\"1277289\";\"Bānka\";\"main\"\n\"1277289\";\"Banka\";\"ascii\"\n\"1277289\";\"Bhagalpur\";\"other\"\n\"1277294\";\"Banjār\";\"main\"\n\"1277294\";\"Banjar\";\"ascii\"\n\"1277297\";\"Banihāl\";\"main\"\n\"1277297\";\"Banihal\";\"ascii\"\n\"1277318\";\"Bāngarmau\";\"main\"\n\"1277318\";\"Bangarmau\";\"ascii\"\n\"1277320\";\"Bangārapet\";\"main\"\n\"1277320\";\"Bangarapet\";\"ascii\"\n\"1277320\";\"Bowringpet\";\"other\"\n\"1277324\";\"Bangaon\";\"main\"\n\"1277324\";\"Bongaon\";\"other\"\n\"1277324\";\"Бангаон\";\"other\"\n\"1277330\";\"Banganapalle\";\"main\"\n\"1277330\";\"Banaganapalli\";\"other\"\n\"1277330\";\"Banganapilly\";\"other\"\n\"1277333\";\"Bengaluru\";\"main\"\n\"1277333\";\"Bangalor\";\"other\"\n\"1277333\";\"Bangalora\";\"other\"\n\"1277333\";\"Bangalore\";\"other\"\n\"1277333\";\"Bangalore - bengaluru\";\"other\"\n\"1277333\";\"Bangalore - ಬೆಂಗಳೂರು\";\"other\"\n\"1277333\";\"Bangalore City\";\"other\"\n\"1277333\";\"Bangaloro\";\"other\"\n\"1277333\";\"Bangalur\";\"other\"\n\"1277333\";\"Bangaluri\";\"other\"\n\"1277333\";\"Bengalour\";\"other\"\n\"1277333\";\"Bengaluras\";\"other\"\n\"1277333\";\"Bengalūras\";\"other\"\n\"1277333\";\"Bengalūru\";\"other\"\n\"1277333\";\"ban jia luo er\";\"other\"\n\"1277333\";\"bangalora\";\"other\"\n\"1277333\";\"bangalura\";\"other\"\n\"1277333\";\"bangaroru\";\"other\"\n\"1277333\";\"bengalora\";\"other\"\n\"1277333\";\"bengaluru\";\"other\"\n\"1277333\";\"bnglwr\";\"other\"\n\"1277333\";\"penkalur\";\"other\"\n\"1277333\";\"Бангалор\";\"other\"\n\"1277333\";\"بنگلور\";\"other\"\n\"1277333\";\"बंगलोर\";\"other\"\n\"1277333\";\"बंगळूर\";\"other\"\n\"1277333\";\"বাঙ্গালোর\";\"other\"\n\"1277333\";\"বেঙ্গালুরু\";\"other\"\n\"1277333\";\"બેંગલોર\";\"other\"\n\"1277333\";\"பெங்களூர்\";\"other\"\n\"1277333\";\"బెంగళూరు\";\"other\"\n\"1277333\";\"ಬೆಂಗಳೂರು\";\"other\"\n\"1277333\";\"ബാംഗ്ലൂര്‍\";\"other\"\n\"1277333\";\"バンガロール\";\"other\"\n\"1277333\";\"班加羅爾\";\"other\"\n\"1277338\";\"Banga\";\"main\"\n\"1277353\";\"Bandora\";\"main\"\n\"1277358\";\"Bandipura\";\"main\"\n\"1277358\";\"Bandapur\";\"other\"\n\"1277358\";\"Bandipur\";\"other\"\n\"1277362\";\"Bāndīkūi\";\"main\"\n\"1277362\";\"Bandikui\";\"ascii\"\n\"1277397\";\"Bānda\";\"main\"\n\"1277397\";\"Banda\";\"ascii\"\n\"1277398\";\"Banda\";\"main\"\n\"1277408\";\"Bānāvar\";\"main\"\n\"1277408\";\"Banavar\";\"ascii\"\n\"1277408\";\"Banavara\";\"other\"\n\"1277409\";\"Banat\";\"main\"\n\"1277409\";\"Банат\";\"other\"\n\"1277426\";\"Bānapur\";\"main\"\n\"1277426\";\"Banapur\";\"ascii\"\n\"1277426\";\"Banpur\";\"other\"\n\"1277426\";\"Bānpur\";\"other\"\n\"1277442\";\"Bāmor Kalān\";\"main\"\n\"1277442\";\"Bamor Kalan\";\"ascii\"\n\"1277442\";\"Bamor\";\"other\"\n\"1277442\";\"Bāmor\";\"other\"\n\"1277450\";\"Bamora\";\"main\"\n\"1277455\";\"Bāmnia\";\"main\"\n\"1277455\";\"Bamnia\";\"ascii\"\n\"1277476\";\"Bamboo Flat\";\"main\"\n\"1277477\";\"Bambolim\";\"main\"\n\"1277508\";\"Bālurghāt\";\"main\"\n\"1277508\";\"Balurghat\";\"ascii\"\n\"1277514\";\"Bālugaon\";\"main\"\n\"1277514\";\"Balugaon\";\"ascii\"\n\"1277525\";\"Balrāmpur\";\"main\"\n\"1277525\";\"Balrampur\";\"ascii\"\n\"1277527\";\"Bālotra\";\"main\"\n\"1277527\";\"Balotra\";\"ascii\"\n\"1277530\";\"Baloda Bāzār\";\"main\"\n\"1277530\";\"Baloda Bazar\";\"ascii\"\n\"1277533\";\"Baloda\";\"main\"\n\"1277535\";\"Balod\";\"main\"\n\"1277539\";\"Bāli\";\"main\"\n\"1277539\";\"Bali\";\"ascii\"\n\"1277539\";\"Bally\";\"other\"\n\"1277539\";\"Бали\";\"other\"\n\"1277557\";\"Ballālpur\";\"main\"\n\"1277557\";\"Ballalpur\";\"ascii\"\n\"1277557\";\"Ballarpur\";\"other\"\n\"1277570\";\"Bālimela\";\"main\"\n\"1277570\";\"Balimela\";\"ascii\"\n\"1277570\";\"Balimila\";\"other\"\n\"1277581\";\"Bāli Chak\";\"main\"\n\"1277581\";\"Bali Chak\";\"ascii\"\n\"1277590\";\"Bāli\";\"main\"\n\"1277590\";\"Bali\";\"ascii\"\n\"1277599\";\"Balasore\";\"main\"\n\"1277599\";\"Balasor\";\"other\"\n\"1277599\";\"Baleshwar\";\"other\"\n\"1277599\";\"Bāleshwar\";\"other\"\n\"1277599\";\"Баласор\";\"other\"\n\"1277613\";\"Baldeogarh\";\"main\"\n\"1277614\";\"Baldeo\";\"main\"\n\"1277634\";\"Balarāmpur\";\"main\"\n\"1277634\";\"Balarampur\";\"ascii\"\n\"1277636\";\"Bālāpur\";\"main\"\n\"1277636\";\"Balapur\";\"ascii\"\n\"1277643\";\"Balāngīr\";\"main\"\n\"1277643\";\"Balangir\";\"ascii\"\n\"1277643\";\"Bolangir\";\"other\"\n\"1277643\";\"Bolāngir\";\"other\"\n\"1277661\";\"Bālāghāt\";\"main\"\n\"1277661\";\"Balaghat\";\"ascii\"\n\"1277661\";\"Burha\";\"other\"\n\"1277666\";\"Bālāchor\";\"main\"\n\"1277666\";\"Balachor\";\"ascii\"\n\"1277671\";\"Bakswāho\";\"main\"\n\"1277671\";\"Bakswaho\";\"ascii\"\n\"1277675\";\"Bakreswar\";\"main\"\n\"1277675\";\"Bakresvare\";\"other\"\n\"1277681\";\"Bakloh\";\"main\"\n\"1277681\";\"Bukloh\";\"other\"\n\"1277684\";\"Bakhtiyārpur\";\"main\"\n\"1277684\";\"Bakhtiyarpur\";\"ascii\"\n\"1277695\";\"Bakewar\";\"main\"\n\"1277699\";\"Bakāni\";\"main\"\n\"1277699\";\"Bakani\";\"ascii\"\n\"1277716\";\"Bājna\";\"main\"\n\"1277716\";\"Bajna\";\"ascii\"\n\"1277723\";\"Baj Baj\";\"main\"\n\"1277723\";\"Budge Budge\";\"other\"\n\"1277748\";\"Bairāgnia\";\"main\"\n\"1277748\";\"Bairagnia\";\"ascii\"\n\"1277759\";\"Baindur\";\"main\"\n\"1277759\";\"Bainduri\";\"other\"\n\"1277759\";\"Baindūr\";\"other\"\n\"1277759\";\"Baindūri\";\"other\"\n\"1277759\";\"Byndoor\";\"other\"\n\"1277765\";\"Bail Hongal\";\"main\"\n\"1277769\";\"Baikunthpur\";\"main\"\n\"1277769\";\"Baikunthapur\";\"other\"\n\"1277770\";\"Baikanthpur\";\"main\"\n\"1277770\";\"Baikunthpur\";\"other\"\n\"1277776\";\"Baihar\";\"main\"\n\"1277780\";\"Baidyabāti\";\"main\"\n\"1277780\";\"Baidyabati\";\"ascii\"\n\"1277793\";\"Bahua\";\"main\"\n\"1277795\";\"Bahsūma\";\"main\"\n\"1277795\";\"Bahsuma\";\"ascii\"\n\"1277799\";\"Bahraich\";\"main\"\n\"1277808\";\"Bahjoi\";\"main\"\n\"1277808\";\"Bhajoi\";\"other\"\n\"1277814\";\"Baheri\";\"main\"\n\"1277820\";\"Baharampur\";\"main\"\n\"1277820\";\"Bahrampur\";\"other\"\n\"1277820\";\"Bahrāmpur\";\"other\"\n\"1277820\";\"Berhampore\";\"other\"\n\"1277835\";\"Bahādurgarh\";\"main\"\n\"1277835\";\"Bahadurgarh\";\"ascii\"\n\"1277836\";\"Bahādurganj\";\"main\"\n\"1277836\";\"Bahadurganj\";\"ascii\"\n\"1277841\";\"Bāh\";\"main\"\n\"1277841\";\"Bah\";\"ascii\"\n\"1277844\";\"Bagulā\";\"main\"\n\"1277844\";\"Bagula\";\"ascii\"\n\"1277863\";\"Bagra\";\"main\"\n\"1277874\";\"Bāgli\";\"main\"\n\"1277874\";\"Bagli\";\"ascii\"\n\"1277882\";\"Bāghpat\";\"main\"\n\"1277882\";\"Baghpat\";\"ascii\"\n\"1277882\";\"Bagpat\";\"other\"\n\"1277897\";\"Bāghdogra\";\"main\"\n\"1277897\";\"Baghdogra\";\"ascii\"\n\"1277897\";\"Bagdogra\";\"other\"\n\"1277902\";\"Bāgha Purāna\";\"main\"\n\"1277902\";\"Bagha Purana\";\"ascii\"\n\"1277902\";\"Baghaparana\";\"other\"\n\"1277905\";\"Bāgh\";\"main\"\n\"1277905\";\"Bagh\";\"ascii\"\n\"1277907\";\"Bāgeshwar\";\"main\"\n\"1277907\";\"Bageshwar\";\"ascii\"\n\"1277909\";\"Bāgepalli\";\"main\"\n\"1277909\";\"Bagepalli\";\"ascii\"\n\"1277924\";\"Bagasra\";\"main\"\n\"1277924\";\"Bagasara\";\"other\"\n\"1277930\";\"Bagar\";\"main\"\n\"1277936\";\"Bāgalkot\";\"main\"\n\"1277936\";\"Bagalkot\";\"ascii\"\n\"1277939\";\"Bagaha\";\"main\"\n\"1277949\";\"Badvel\";\"main\"\n\"1277950\";\"Badūria\";\"main\"\n\"1277950\";\"Baduria\";\"ascii\"\n\"1277950\";\"Badurii\";\"other\"\n\"1277950\";\"Бадурии\";\"other\"\n\"1277970\";\"Badnāwar\";\"main\"\n\"1277970\";\"Badnawar\";\"ascii\"\n\"1277976\";\"Badlapur\";\"main\"\n\"1277992\";\"Badhni Kalān\";\"main\"\n\"1277992\";\"Badhni Kalan\";\"ascii\"\n\"1278006\";\"Badarwās\";\"main\"\n\"1278006\";\"Badarwas\";\"ascii\"\n\"1278008\";\"Badarpur\";\"main\"\n\"1278017\";\"Bādāmi\";\"main\"\n\"1278017\";\"Badami\";\"ascii\"\n\"1278017\";\"Бадами\";\"other\"\n\"1278023\";\"Badagara\";\"main\"\n\"1278026\";\"Bada Barabīl\";\"main\"\n\"1278026\";\"Bada Barabil\";\"ascii\"\n\"1278026\";\"Barabil\";\"other\"\n\"1278035\";\"Bachhrāwān\";\"main\"\n\"1278035\";\"Bachhrawan\";\"ascii\"\n\"1278036\";\"Bachhraon\";\"main\"\n\"1278051\";\"Bābūgarh\";\"main\"\n\"1278051\";\"Babugarh\";\"ascii\"\n\"1278052\";\"Babrāla\";\"main\"\n\"1278052\";\"Babrala\";\"ascii\"\n\"1278054\";\"Bābra\";\"main\"\n\"1278054\";\"Babra\";\"ascii\"\n\"1278058\";\"Babīna\";\"main\"\n\"1278058\";\"Babina\";\"ascii\"\n\"1278058\";\"Бабина\";\"other\"\n\"1278064\";\"Baberu\";\"main\"\n\"1278073\";\"Bābai\";\"main\"\n\"1278073\";\"Babai\";\"ascii\"\n\"1278083\";\"Āzamgarh\";\"main\"\n\"1278083\";\"Azamgarh\";\"ascii\"\n\"1278090\";\"Ayyampettāi\";\"main\"\n\"1278090\";\"Ayyampettai\";\"ascii\"\n\"1278094\";\"Ayodhya\";\"main\"\n\"1278094\";\"Ajodhya\";\"other\"\n\"1278094\";\"Ajodkh'e\";\"other\"\n\"1278094\";\"Oudh\";\"other\"\n\"1278094\";\"a yue ti ya\";\"other\"\n\"1278094\";\"ayodhya\";\"other\"\n\"1278094\";\"ayodhye\";\"other\"\n\"1278094\";\"ayotti\";\"other\"\n\"1278094\";\"Айодхье\";\"other\"\n\"1278094\";\"अयोध्या\";\"other\"\n\"1278094\";\"অযোধ্যা\";\"other\"\n\"1278094\";\"அயோத்தி\";\"other\"\n\"1278094\";\"ಅಯೋಧ್ಯೆ\";\"other\"\n\"1278094\";\"阿约提亚\";\"other\"\n\"1278100\";\"Ayakkudi\";\"main\"\n\"1278100\";\"Ayakudi\";\"other\"\n\"1278100\";\"Palaiya Ayakkudi\";\"other\"\n\"1278103\";\"Awantīpur\";\"main\"\n\"1278103\";\"Awantipur\";\"ascii\"\n\"1278103\";\"Awantipura\";\"other\"\n\"1278103\";\"Awantīpura\";\"other\"\n\"1278103\";\"Wantipur\";\"other\"\n\"1278122\";\"Avanigadda\";\"main\"\n\"1278124\";\"Avanāshi\";\"main\"\n\"1278124\";\"Avanashi\";\"ascii\"\n\"1278130\";\"Āvadi\";\"main\"\n\"1278130\";\"Avadi\";\"ascii\"\n\"1278130\";\"Авади\";\"other\"\n\"1278139\";\"Ausa\";\"main\"\n\"1278142\";\"Aurās\";\"main\"\n\"1278142\";\"Auras\";\"ascii\"\n\"1278148\";\"Aurangābād\";\"main\"\n\"1278148\";\"Aurangabad\";\"ascii\"\n\"1278149\";\"Aurangābād\";\"main\"\n\"1278149\";\"Aurangabad\";\"ascii\"\n\"1278149\";\"Aurangabad - aurangabada\";\"other\"\n\"1278149\";\"Aurangabad - औरंगाबाद\";\"other\"\n\"1278149\";\"Aurangabadas\";\"other\"\n\"1278149\";\"Aurangâbâd\";\"other\"\n\"1278149\";\"a'orangabada\";\"other\"\n\"1278149\";\"a'urangabada\";\"other\"\n\"1278149\";\"aurangabada\";\"other\"\n\"1278149\";\"aurangabada sahara\";\"other\"\n\"1278149\";\"aurangabado\";\"other\"\n\"1278149\";\"Аурангабад\";\"other\"\n\"1278149\";\"औरंगाबाद\";\"other\"\n\"1278149\";\"औरंगाबाद शहर\";\"other\"\n\"1278149\";\"আউরঙ্গাবাদ\";\"other\"\n\"1278149\";\"আওরঙ্গাবাদ\";\"other\"\n\"1278149\";\"アウランガーバード\";\"other\"\n\"1278152\";\"Auraiya\";\"main\"\n\"1278152\";\"Etawah\";\"other\"\n\"1278156\";\"Aurād\";\"main\"\n\"1278156\";\"Aurad\";\"ascii\"\n\"1278173\";\"Āttūr\";\"main\"\n\"1278173\";\"Attur\";\"ascii\"\n\"1278173\";\"Atur-Salem\";\"other\"\n\"1278176\";\"Attingal\";\"main\"\n\"1278176\";\"Attungal\";\"other\"\n\"1278182\";\"Āttayyāmpatti\";\"main\"\n\"1278182\";\"Attayyampatti\";\"ascii\"\n\"1278182\";\"Attayampatti\";\"other\"\n\"1278189\";\"Atrauliā\";\"main\"\n\"1278189\";\"Atraulia\";\"ascii\"\n\"1278189\";\"Atrauliya\";\"other\"\n\"1278190\";\"Atrauli\";\"main\"\n\"1278190\";\"Aligarh\";\"other\"\n\"1278201\";\"Atmakūr\";\"main\"\n\"1278201\";\"Atmakur\";\"ascii\"\n\"1278204\";\"Atirāmpattinam\";\"main\"\n\"1278204\";\"Atirampattinam\";\"ascii\"\n\"1278204\";\"Adirampatnam\";\"other\"\n\"1278204\";\"Adirampattinam\";\"other\"\n\"1278204\";\"Adirāmpatnam\";\"other\"\n\"1278204\";\"Attirampattinam\";\"other\"\n\"1278208\";\"Athni\";\"main\"\n\"1278216\";\"Āthagarh\";\"main\"\n\"1278216\";\"Athagarh\";\"ascii\"\n\"1278216\";\"Athgarh\";\"other\"\n\"1278223\";\"Ateli\";\"main\"\n\"1278228\";\"Atarra\";\"main\"\n\"1278228\";\"Atarra Buzurg\";\"other\"\n\"1278278\";\"Āsind\";\"main\"\n\"1278278\";\"Asind\";\"ascii\"\n\"1278279\";\"Āsika\";\"main\"\n\"1278279\";\"Asika\";\"ascii\"\n\"1278279\";\"Aska\";\"other\"\n\"1278282\";\"Asifābād\";\"main\"\n\"1278282\";\"Asifabad\";\"ascii\"\n\"1278282\";\"Asafabad\";\"other\"\n\"1278282\";\"Jangaon\";\"other\"\n\"1278290\";\"Āshti\";\"main\"\n\"1278290\";\"Ashti\";\"ascii\"\n\"1278294\";\"Ashta\";\"main\"\n\"1278294\";\"Ашта\";\"other\"\n\"1278296\";\"Ashta\";\"main\"\n\"1278296\";\"Satara\";\"other\"\n\"1278296\";\"Ашта\";\"other\"\n\"1278297\";\"Ashoknagar\";\"main\"\n\"1278297\";\"Pachhar\";\"other\"\n\"1278308\";\"Asarganj\";\"main\"\n\"1278314\";\"Āsansol\";\"main\"\n\"1278314\";\"Asansol\";\"ascii\"\n\"1278314\";\"Asanol\";\"other\"\n\"1278314\";\"asanasola\";\"other\"\n\"1278314\";\"asansoru\";\"other\"\n\"1278314\";\"Асансол\";\"other\"\n\"1278314\";\"आसनसोल\";\"other\"\n\"1278314\";\"আসানসোল\";\"other\"\n\"1278314\";\"アサンソル\";\"other\"\n\"1278320\";\"Asandh\";\"main\"\n\"1278335\";\"Arvi\";\"main\"\n\"1278340\";\"Aruppukkottai\";\"main\"\n\"1278343\";\"Arumuganeri\";\"main\"\n\"1278344\";\"Arumbāvūr\";\"main\"\n\"1278344\";\"Arumbavur\";\"ascii\"\n\"1278344\";\"Arumbvur\";\"other\"\n\"1278345\";\"Arukutti\";\"main\"\n\"1278354\";\"Arsikere\";\"main\"\n\"1278365\";\"Āron\";\"main\"\n\"1278365\";\"Aron\";\"ascii\"\n\"1278373\";\"Arnīa\";\"main\"\n\"1278373\";\"Arnia\";\"ascii\"\n\"1278373\";\"Noria\";\"other\"\n\"1278389\";\"Arki\";\"main\"\n\"1278393\";\"Arkalgūd\";\"main\"\n\"1278393\";\"Arkalgud\";\"ascii\"\n\"1278405\";\"Ariyalūr\";\"main\"\n\"1278405\";\"Ariyalur\";\"ascii\"\n\"1278409\";\"Arimalam\";\"main\"\n\"1278432\";\"Arcot\";\"main\"\n\"1278432\";\"Arkota\";\"other\"\n\"1278432\";\"Аркота\";\"other\"\n\"1278433\";\"Aravankādu\";\"main\"\n\"1278433\";\"Aravankadu\";\"ascii\"\n\"1278433\";\"Aravandadu\";\"other\"\n\"1278433\";\"Aravanghat\";\"other\"\n\"1278433\";\"Aruvankadu\";\"other\"\n\"1278446\";\"Arāria\";\"main\"\n\"1278446\";\"Araria\";\"ascii\"\n\"1278446\";\"Ararija\";\"other\"\n\"1278446\";\"Арария\";\"other\"\n\"1278448\";\"Arantāngi\";\"main\"\n\"1278448\";\"Arantangi\";\"ascii\"\n\"1278448\";\"Arrantangy\";\"other\"\n\"1278454\";\"Ārani\";\"main\"\n\"1278454\";\"Arani\";\"ascii\"\n\"1278454\";\"Arni\";\"other\"\n\"1278455\";\"Ārangaon\";\"main\"\n\"1278455\";\"Arangaon\";\"ascii\"\n\"1278455\";\"Jamkhed\";\"other\"\n\"1278458\";\"Arang\";\"main\"\n\"1278464\";\"Arambol\";\"main\"\n\"1278464\";\"Arambol'\";\"other\"\n\"1278464\";\"Арамболь\";\"other\"\n\"1278466\";\"Arāmbāgh\";\"main\"\n\"1278466\";\"Arambagh\";\"ascii\"\n\"1278471\";\"Arakkonam\";\"main\"\n\"1278471\";\"Arkonam\";\"other\"\n\"1278483\";\"Ara\";\"main\"\n\"1278483\";\"Arrah\";\"other\"\n\"1278483\";\"Shahabad\";\"other\"\n\"1278483\";\"Ара\";\"other\"\n\"1278498\";\"Aonla\";\"main\"\n\"1278498\";\"Aonla Kila\";\"other\"\n\"1278507\";\"Anūpshahr\";\"main\"\n\"1278507\";\"Anupshahr\";\"ascii\"\n\"1278508\";\"Anūppur\";\"main\"\n\"1278508\";\"Anuppur\";\"ascii\"\n\"1278510\";\"Anūpgarh\";\"main\"\n\"1278510\";\"Anupgarh\";\"ascii\"\n\"1278515\";\"Antu\";\"main\"\n\"1278516\";\"Antri\";\"main\"\n\"1278532\";\"Anta\";\"main\"\n\"1278534\";\"Anshing\";\"main\"\n\"1278534\";\"Ansing\";\"other\"\n\"1278534\";\"Ansing (Shrungarushi Maharaj)\";\"other\"\n\"1278539\";\"Annūr\";\"main\"\n\"1278539\";\"Annur\";\"ascii\"\n\"1278540\";\"Annigeri\";\"main\"\n\"1278541\";\"Annavāsal\";\"main\"\n\"1278541\";\"Annavasal\";\"ascii\"\n\"1278546\";\"Annāmalainagar\";\"main\"\n\"1278546\";\"Annamalainagar\";\"ascii\"\n\"1278546\";\"Anamalainagar\";\"other\"\n\"1278546\";\"Annamalai\";\"other\"\n\"1278551\";\"Ankola\";\"main\"\n\"1278553\";\"Ankleshwar\";\"main\"\n\"1278553\";\"Anklesvar\";\"other\"\n\"1278573\";\"Anjār\";\"main\"\n\"1278573\";\"Anjar\";\"ascii\"\n\"1278573\";\"Andzharom\";\"other\"\n\"1278573\";\"Анджаром\";\"other\"\n\"1278580\";\"Anjangaon\";\"main\"\n\"1278588\";\"Anjad\";\"main\"\n\"1278593\";\"Angul\";\"main\"\n\"1278593\";\"Anugul\";\"other\"\n\"1278593\";\"Ungul\";\"other\"\n\"1278602\";\"Angamāli\";\"main\"\n\"1278602\";\"Angamali\";\"ascii\"\n\"1278602\";\"Angamally\";\"other\"\n\"1278609\";\"Anekal\";\"main\"\n\"1278621\";\"Andol\";\"main\"\n\"1278622\";\"Andiyūr\";\"main\"\n\"1278622\";\"Andiyur\";\"ascii\"\n\"1278625\";\"Āndippatti\";\"main\"\n\"1278625\";\"Andippatti\";\"ascii\"\n\"1278667\";\"Anantnāg\";\"main\"\n\"1278667\";\"Anantnag\";\"ascii\"\n\"1278667\";\"Islamabad\";\"other\"\n\"1278672\";\"Anantapur\";\"main\"\n\"1278672\";\"Anantapuramu\";\"other\"\n\"1278672\";\"Anantapure\";\"other\"\n\"1278672\";\"Анантапуре\";\"other\"\n\"1278676\";\"Anandpur Sāhib\";\"main\"\n\"1278676\";\"Anandpur Sahib\";\"ascii\"\n\"1278676\";\"Anandpur\";\"other\"\n\"1278682\";\"Anandnagar\";\"main\"\n\"1278682\";\"Pharenda\";\"other\"\n\"1278685\";\"Ānand\";\"main\"\n\"1278685\";\"Anand\";\"ascii\"\n\"1278685\";\"Aimand\";\"other\"\n\"1278685\";\"Anaud\";\"other\"\n\"1278685\";\"Ананд\";\"other\"\n\"1278688\";\"Anakāpalle\";\"main\"\n\"1278688\";\"Anakapalle\";\"ascii\"\n\"1278692\";\"Anaimalai\";\"main\"\n\"1278692\";\"Anaimalais\";\"other\"\n\"1278692\";\"Anamalai\";\"other\"\n\"1278698\";\"Amudālavalasa\";\"main\"\n\"1278698\";\"Amudalavalasa\";\"ascii\"\n\"1278703\";\"Āmta\";\"main\"\n\"1278703\";\"Amta\";\"ascii\"\n\"1278707\";\"Amroli\";\"main\"\n\"1278708\";\"Amroha\";\"main\"\n\"1278710\";\"Amritsar\";\"main\"\n\"1278710\";\"Amritsar - amritasara\";\"other\"\n\"1278710\";\"Amritsar - ਅੰਮ੍ਰਿਤਸਰ\";\"other\"\n\"1278710\";\"Amritsaras\";\"other\"\n\"1278710\";\"amritasara\";\"other\"\n\"1278710\";\"amritcar\";\"other\"\n\"1278710\";\"amrtasara\";\"other\"\n\"1278710\";\"amuritosaru\";\"other\"\n\"1278710\";\"Амритсар\";\"other\"\n\"1278710\";\"Амрітсар\";\"other\"\n\"1278710\";\"אמריצר\";\"other\"\n\"1278710\";\"अमृतसर\";\"other\"\n\"1278710\";\"অমৃতসর\";\"other\"\n\"1278710\";\"ਅੰਮ੍ਰਿਤਸਰ\";\"other\"\n\"1278710\";\"அம்ரித்சர்\";\"other\"\n\"1278710\";\"アムリトサル\";\"other\"\n\"1278715\";\"Amreli\";\"main\"\n\"1278718\";\"Amrāvati\";\"main\"\n\"1278718\";\"Amravati\";\"ascii\"\n\"1278718\";\"Amaravati\";\"other\"\n\"1278718\";\"Amraoti\";\"other\"\n\"1278718\";\"Amraotī\";\"other\"\n\"1278742\";\"Amod\";\"main\"\n\"1278742\";\"Broach\";\"other\"\n\"1278751\";\"Ammāpettai\";\"main\"\n\"1278751\";\"Ammapettai\";\"ascii\"\n\"1278752\";\"Ammāpettai\";\"main\"\n\"1278752\";\"Ammapettai\";\"ascii\"\n\"1278752\";\"Ammapet\";\"other\"\n\"1278758\";\"Amloh\";\"main\"\n\"1278768\";\"Āmli\";\"main\"\n\"1278768\";\"Amli\";\"ascii\"\n\"1278774\";\"Āmlāgora\";\"main\"\n\"1278774\";\"Amlagora\";\"ascii\"\n\"1278775\";\"Amla\";\"main\"\n\"1278796\";\"Amguri\";\"main\"\n\"1278805\";\"Amethi\";\"main\"\n\"1278806\";\"Amethi\";\"main\"\n\"1278808\";\"Amet\";\"main\"\n\"1278815\";\"Āmbūr\";\"main\"\n\"1278815\";\"Ambur\";\"ascii\"\n\"1278827\";\"Ambikāpur\";\"main\"\n\"1278827\";\"Ambikapur\";\"ascii\"\n\"1278827\";\"Surguja\";\"other\"\n\"1278827\";\"Surquja\";\"other\"\n\"1278840\";\"Ambattūr\";\"main\"\n\"1278840\";\"Ambattur\";\"ascii\"\n\"1278841\";\"Ambāsamudram\";\"main\"\n\"1278841\";\"Ambasamudram\";\"ascii\"\n\"1278841\";\"Ambassamudram\";\"other\"\n\"1278842\";\"Āmbāsa\";\"main\"\n\"1278842\";\"Ambasa\";\"ascii\"\n\"1278860\";\"Ambāla\";\"main\"\n\"1278860\";\"Ambala\";\"ascii\"\n\"1278860\";\"Ambata\";\"other\"\n\"1278862\";\"Ambājogāi\";\"main\"\n\"1278862\";\"Ambajogai\";\"ascii\"\n\"1278862\";\"Ambe\";\"other\"\n\"1278862\";\"Ambejogai\";\"other\"\n\"1278862\";\"Mominabad\";\"other\"\n\"1278862\";\"Mominābād\";\"other\"\n\"1278867\";\"Ambahta\";\"main\"\n\"1278868\";\"Ambāh\";\"main\"\n\"1278868\";\"Ambah\";\"ascii\"\n\"1278869\";\"Ambāgarh Chauki\";\"main\"\n\"1278869\";\"Ambagarh Chauki\";\"ascii\"\n\"1278869\";\"Ambagarh-Chowki\";\"other\"\n\"1278871\";\"Ambad\";\"main\"\n\"1278889\";\"Amarwāra\";\"main\"\n\"1278889\";\"Amarwara\";\"ascii\"\n\"1278895\";\"Amarpur\";\"main\"\n\"1278897\";\"Amarpur\";\"main\"\n\"1278899\";\"Amarpātan\";\"main\"\n\"1278899\";\"Amarpatan\";\"ascii\"\n\"1278903\";\"Amarnāth\";\"main\"\n\"1278903\";\"Amarnath\";\"ascii\"\n\"1278903\";\"Amarnatkh\";\"other\"\n\"1278903\";\"Ambarnath\";\"other\"\n\"1278903\";\"Амарнатх\";\"other\"\n\"1278905\";\"Amarkantak\";\"main\"\n\"1278921\";\"Amānpur\";\"main\"\n\"1278921\";\"Amanpur\";\"ascii\"\n\"1278923\";\"Amānganj\";\"main\"\n\"1278923\";\"Amanganj\";\"ascii\"\n\"1278931\";\"Amalner\";\"main\"\n\"1278935\";\"Amalāpuram\";\"main\"\n\"1278935\";\"Amalapuram\";\"ascii\"\n\"1278941\";\"Alwaye\";\"main\"\n\"1278943\";\"Ālwār Tirunagari\";\"main\"\n\"1278943\";\"Alwar Tirunagari\";\"ascii\"\n\"1278943\";\"Alvar Tirunagari\";\"other\"\n\"1278946\";\"Alwar\";\"main\"\n\"1278946\";\"Alvar\";\"other\"\n\"1278946\";\"Alvaro\";\"other\"\n\"1278946\";\"Alwar City\";\"other\"\n\"1278946\";\"alaraara\";\"other\"\n\"1278946\";\"Álvaro\";\"other\"\n\"1278946\";\"Âlwâr\";\"other\"\n\"1278946\";\"Алвар\";\"other\"\n\"1278946\";\"আলৱার\";\"other\"\n\"1278953\";\"Alūr\";\"main\"\n\"1278953\";\"Alur\";\"ascii\"\n\"1278964\";\"Alot\";\"main\"\n\"1278969\";\"Along\";\"main\"\n\"1278973\";\"Alnāvar\";\"main\"\n\"1278973\";\"Alnavar\";\"ascii\"\n\"1278974\";\"Almora\";\"main\"\n\"1278974\";\"Al'mora\";\"other\"\n\"1278974\";\"Альмора\";\"other\"\n\"1278985\";\"Alleppey\";\"main\"\n\"1278985\";\"Alapalli\";\"other\"\n\"1278985\";\"Alapolai\";\"other\"\n\"1278985\";\"Alappula\";\"other\"\n\"1278985\";\"Alappuzha\";\"other\"\n\"1278985\";\"Alapulai\";\"other\"\n\"1278985\";\"Aleppi\";\"other\"\n\"1278985\";\"Allapuza\";\"other\"\n\"1278985\";\"Alleppi\";\"other\"\n\"1278985\";\"Aulapolai\";\"other\"\n\"1278985\";\"alappula\";\"other\"\n\"1278985\";\"Алаппужа\";\"other\"\n\"1278985\";\"ആലപ്പുഴ\";\"other\"\n\"1278987\";\"Allāpalli\";\"main\"\n\"1278987\";\"Allapalli\";\"ascii\"\n\"1278987\";\"Alapillai\";\"other\"\n\"1278987\";\"Alāpillai\";\"other\"\n\"1278990\";\"Allāhganj\";\"main\"\n\"1278990\";\"Allahganj\";\"ascii\"\n\"1278994\";\"Allahābād\";\"main\"\n\"1278994\";\"Allahabad\";\"ascii\"\n\"1278994\";\"Alahabadas\";\"other\"\n\"1278994\";\"Alla Abba Habab\";\"other\"\n\"1278994\";\"Allahabad - ilahabada\";\"other\"\n\"1278994\";\"Allahabad - इलाहाबाद\";\"other\"\n\"1278994\";\"Allakhabad\";\"other\"\n\"1278994\";\"Allâhâbâd\";\"other\"\n\"1278994\";\"Prayag\";\"other\"\n\"1278994\";\"Prayāg\";\"other\"\n\"1278994\";\"alakapat\";\"other\"\n\"1278994\";\"an la a ba de\";\"other\"\n\"1278994\";\"arahabado\";\"other\"\n\"1278994\";\"elahabada\";\"other\"\n\"1278994\";\"ilahabada\";\"other\"\n\"1278994\";\"irahabado\";\"other\"\n\"1278994\";\"Аллахабад\";\"other\"\n\"1278994\";\"الہ آباد\";\"other\"\n\"1278994\";\"इलाहाबाद\";\"other\"\n\"1278994\";\"এলাহাবাদ\";\"other\"\n\"1278994\";\"அலகாபாத்\";\"other\"\n\"1278994\";\"アラハバード\";\"other\"\n\"1278994\";\"イラーハーバード\";\"other\"\n\"1278994\";\"安拉阿巴德\";\"other\"\n\"1279005\";\"Alīpur\";\"main\"\n\"1279005\";\"Alipur\";\"ascii\"\n\"1279017\";\"Alīgarh\";\"main\"\n\"1279017\";\"Aligarh\";\"ascii\"\n\"1279017\";\"Aligarkh\";\"other\"\n\"1279017\";\"Koil\";\"other\"\n\"1279017\";\"aligadha\";\"other\"\n\"1279017\";\"aligara\";\"other\"\n\"1279017\";\"Алигарх\";\"other\"\n\"1279017\";\"علی گڑھ\";\"other\"\n\"1279017\";\"अलीगढ\";\"other\"\n\"1279017\";\"আলিগড়\";\"other\"\n\"1279023\";\"Alīganj\";\"main\"\n\"1279023\";\"Aliganj\";\"ascii\"\n\"1279027\";\"Alībāg\";\"main\"\n\"1279027\";\"Alibag\";\"ascii\"\n\"1279027\";\"Alibagh\";\"other\"\n\"1279027\";\"Alibágh\";\"other\"\n\"1279045\";\"Aldona\";\"main\"\n\"1279050\";\"Alāwalpur\";\"main\"\n\"1279050\";\"Alawalpur\";\"ascii\"\n\"1279056\";\"Ālappākkam\";\"main\"\n\"1279056\";\"Alappakkam\";\"ascii\"\n\"1279056\";\"Alapakam\";\"other\"\n\"1279058\";\"Ālangulam\";\"main\"\n\"1279058\";\"Alangulam\";\"ascii\"\n\"1279058\";\"Atangulam\";\"other\"\n\"1279058\";\"Ātangulam\";\"other\"\n\"1279059\";\"Ālangudi\";\"main\"\n\"1279059\";\"Alangudi\";\"ascii\"\n\"1279061\";\"Ālangāyam\";\"main\"\n\"1279061\";\"Alangayam\";\"ascii\"\n\"1279062\";\"Alangānallūr\";\"main\"\n\"1279062\";\"Alanganallur\";\"ascii\"\n\"1279064\";\"Alandur\";\"main\"\n\"1279064\";\"Alandoor\";\"other\"\n\"1279066\";\"Alandi\";\"main\"\n\"1279066\";\"Alandi-Devachi\";\"other\"\n\"1279068\";\"Aland\";\"main\"\n\"1279068\";\"Alland\";\"other\"\n\"1279072\";\"Alampur\";\"main\"\n\"1279074\";\"Ālampur\";\"main\"\n\"1279074\";\"Alampur\";\"ascii\"\n\"1279084\";\"Alagāpuram\";\"main\"\n\"1279084\";\"Alagapuram\";\"ascii\"\n\"1279094\";\"Akot\";\"main\"\n\"1279105\";\"Akola\";\"main\"\n\"1279110\";\"Akodia\";\"main\"\n\"1279115\";\"Aklera\";\"main\"\n\"1279115\";\"Akera\";\"other\"\n\"1279123\";\"Ākivīdu\";\"main\"\n\"1279123\";\"Akividu\";\"ascii\"\n\"1279126\";\"Akhnūr\";\"main\"\n\"1279126\";\"Akhnur\";\"ascii\"\n\"1279134\";\"Akbarpur\";\"main\"\n\"1279135\";\"Akbarpur\";\"main\"\n\"1279144\";\"Akaltara\";\"main\"\n\"1279147\";\"Akalkot\";\"main\"\n\"1279148\";\"Akālgarh\";\"main\"\n\"1279148\";\"Akalgarh\";\"ascii\"\n\"1279154\";\"Ajra\";\"main\"\n\"1279158\";\"Ajnāla\";\"main\"\n\"1279158\";\"Ajnala\";\"ascii\"\n\"1279159\";\"Ajmer\";\"main\"\n\"1279159\";\"Adzhmer\";\"other\"\n\"1279159\";\"Adzmer\";\"other\"\n\"1279159\";\"Adźmer\";\"other\"\n\"1279159\";\"Ajmer City\";\"other\"\n\"1279159\";\"ajamera\";\"other\"\n\"1279159\";\"ajamira\";\"other\"\n\"1279159\";\"ajmir\";\"other\"\n\"1279159\";\"ajmyr\";\"other\"\n\"1279159\";\"Аджмер\";\"other\"\n\"1279159\";\"اجمیر\";\"other\"\n\"1279159\";\"अजमेर\";\"other\"\n\"1279159\";\"আজমির\";\"other\"\n\"1279159\";\"அஜ்மீர்\";\"other\"\n\"1279161\";\"Ajjampur\";\"main\"\n\"1279181\";\"Ajaigarh\";\"main\"\n\"1279186\";\"Āīzawl\";\"main\"\n\"1279186\";\"Aizawl\";\"ascii\"\n\"1279186\";\"Aidzhal\";\"other\"\n\"1279186\";\"Aijal\";\"other\"\n\"1279186\";\"Aizal\";\"other\"\n\"1279186\";\"Aizol\";\"other\"\n\"1279186\";\"Aizwal\";\"other\"\n\"1279186\";\"a'ijala\";\"other\"\n\"1279186\";\"a'ijola\";\"other\"\n\"1279186\";\"aizaula\";\"other\"\n\"1279186\";\"aizauru\";\"other\"\n\"1279186\";\"Аиджал\";\"other\"\n\"1279186\";\"आइजोल\";\"other\"\n\"1279186\";\"ऐज़ौल\";\"other\"\n\"1279186\";\"আইজল\";\"other\"\n\"1279186\";\"アイザウル\";\"other\"\n\"1279213\";\"Ahwa\";\"main\"\n\"1279219\";\"Ahraurā\";\"main\"\n\"1279219\";\"Ahraura\";\"ascii\"\n\"1279225\";\"Ahmadpur\";\"main\"\n\"1279227\";\"Ahmadpur\";\"main\"\n\"1279227\";\"Ahmedpur\";\"other\"\n\"1279227\";\"Rajura\";\"other\"\n\"1279227\";\"Rājūra\";\"other\"\n\"1279228\";\"Ahmadnagar\";\"main\"\n\"1279228\";\"Ahmadnâgar\";\"other\"\n\"1279228\";\"Ahmednagar\";\"other\"\n\"1279228\";\"ahamadanagara\";\"other\"\n\"1279228\";\"ahamedanagara\";\"other\"\n\"1279228\";\"ahmatnakar\";\"other\"\n\"1279228\";\"ahmd ngr\";\"other\"\n\"1279228\";\"احمد نگر\";\"other\"\n\"1279228\";\"अहमदनगर\";\"other\"\n\"1279228\";\"আহমেদনগর\";\"other\"\n\"1279228\";\"அஹ்மத்நகர்\";\"other\"\n\"1279233\";\"Ahmadābād\";\"main\"\n\"1279233\";\"Ahmadabad\";\"ascii\"\n\"1279233\";\"Ahmadabado\";\"other\"\n\"1279233\";\"Ahmedabad\";\"other\"\n\"1279233\";\"Ahmedabad - amadavada\";\"other\"\n\"1279233\";\"Ahmedabad - અમદાવાદ\";\"other\"\n\"1279233\";\"Akhmadabad\";\"other\"\n\"1279233\";\"Akhmedabad\";\"other\"\n\"1279233\";\"Amadavad\";\"other\"\n\"1279233\";\"afumadabado\";\"other\"\n\"1279233\";\"ahamadabada\";\"other\"\n\"1279233\";\"ai ha mai da ba de\";\"other\"\n\"1279233\";\"akamatapat\";\"other\"\n\"1279233\";\"amadavada\";\"other\"\n\"1279233\";\"Ахмадабад\";\"other\"\n\"1279233\";\"Ахмедабад\";\"other\"\n\"1279233\";\"अहमदाबाद\";\"other\"\n\"1279233\";\"અમદાવાદ\";\"other\"\n\"1279233\";\"அகமதாபாத்\";\"other\"\n\"1279233\";\"アフマダーバード\";\"other\"\n\"1279233\";\"艾哈迈达巴德\";\"other\"\n\"1279237\";\"Ahiri\";\"main\"\n\"1279259\";\"Āgra\";\"main\"\n\"1279259\";\"Agra\";\"ascii\"\n\"1279259\";\"Agra - agara\";\"other\"\n\"1279259\";\"Agra - आगरा\";\"other\"\n\"1279259\";\"Lungsod ng Agra\";\"other\"\n\"1279259\";\"a ge la\";\"other\"\n\"1279259\";\"agara\";\"other\"\n\"1279259\";\"ageula\";\"other\"\n\"1279259\";\"agra\";\"other\"\n\"1279259\";\"agura\";\"other\"\n\"1279259\";\"akra\";\"other\"\n\"1279259\";\"Âgrâ\";\"other\"\n\"1279259\";\"Агра\";\"other\"\n\"1279259\";\"אגרה\";\"other\"\n\"1279259\";\"آگرہ\";\"other\"\n\"1279259\";\"आगरा\";\"other\"\n\"1279259\";\"আগ্রা\";\"other\"\n\"1279259\";\"ஆக்ரா\";\"other\"\n\"1279259\";\"ಆಗ್ರಾ\";\"other\"\n\"1279259\";\"アーグラ\";\"other\"\n\"1279259\";\"アーグラー\";\"other\"\n\"1279259\";\"阿格拉\";\"other\"\n\"1279259\";\"아그라\";\"other\"\n\"1279290\";\"Agartala\";\"main\"\n\"1279290\";\"Ajarthala\";\"other\"\n\"1279290\";\"a jia er ta la\";\"other\"\n\"1279290\";\"agaratala\";\"other\"\n\"1279290\";\"agarutara\";\"other\"\n\"1279290\";\"akartala\";\"other\"\n\"1279290\";\"Агартала\";\"other\"\n\"1279290\";\"अगरतला\";\"other\"\n\"1279290\";\"আগরতলা\";\"other\"\n\"1279290\";\"அகர்தலா\";\"other\"\n\"1279290\";\"アガルタラ\";\"other\"\n\"1279290\";\"阿加尔塔拉\";\"other\"\n\"1279299\";\"Agar\";\"main\"\n\"1279299\";\"Agar-agar\";\"other\"\n\"1279299\";\"Агар-агар\";\"other\"\n\"1279306\";\"Afzalpur\";\"main\"\n\"1279307\";\"Afzalgarh\";\"main\"\n\"1279318\";\"Aduturai\";\"main\"\n\"1279323\";\"Adūr\";\"main\"\n\"1279323\";\"Adur\";\"ascii\"\n\"1279334\";\"Ādra\";\"main\"\n\"1279334\";\"Adra\";\"ascii\"\n\"1279334\";\"Адра\";\"other\"\n\"1279335\";\"Ādoni\";\"main\"\n\"1279335\";\"Adoni\";\"ascii\"\n\"1279335\";\"Адони\";\"other\"\n\"1279344\";\"Ādilābād\";\"main\"\n\"1279344\";\"Adilabad\";\"ascii\"\n\"1279344\";\"Edlabad\";\"other\"\n\"1279344\";\"Edlābād\";\"other\"\n\"1279344\";\"atilapat\";\"other\"\n\"1279344\";\"அதிலாபாத்\";\"other\"\n\"1279356\";\"Addanki\";\"main\"\n\"1279373\";\"Adalaj\";\"main\"\n\"1279382\";\"Achhnera\";\"main\"\n\"1279382\";\"Achnera\";\"other\"\n\"1279390\";\"Achalpur\";\"main\"\n\"1279390\";\"Ellichpur\";\"other\"\n\"1279394\";\"Ābu Road\";\"main\"\n\"1279394\";\"Abu Road\";\"ascii\"\n\"1279396\";\"Ābu\";\"main\"\n\"1279396\";\"Abu\";\"ascii\"\n\"1279396\";\"Mount Abu\";\"other\"\n\"1279396\";\"Абу\";\"other\"\n\"1279403\";\"Abohar\";\"main\"\n\"1279403\";\"abohara\";\"other\"\n\"1279403\";\"अबोहर\";\"other\"\n\"1279405\";\"Abirāmam\";\"main\"\n\"1279405\";\"Abiramam\";\"ascii\"\n\"1279407\";\"Abhayāpuri\";\"main\"\n\"1279407\";\"Abhayapuri\";\"ascii\"\n\"1344069\";\"Contai\";\"main\"\n\"1344377\";\"Haldia\";\"main\"\n\"1348562\";\"Srirāmpur\";\"main\"\n\"1348562\";\"Srirampur\";\"ascii\"\n\"1348581\";\"Haripur\";\"main\"\n\"1348583\";\"Kesabpur\";\"main\"\n\"1348600\";\"Rāmchandrapur\";\"main\"\n\"1348600\";\"Ramchandrapur\";\"ascii\"\n\"1348615\";\"Bāgnān\";\"main\"\n\"1348615\";\"Bagnan\";\"ascii\"\n\"1348671\";\"Rāmnagar\";\"main\"\n\"1348671\";\"Ramnagar\";\"ascii\"\n\"1348676\";\"Sankarpur\";\"main\"\n\"1348694\";\"Begampur\";\"main\"\n\"1348734\";\"Parbatipur\";\"main\"\n\"1348737\";\"Bhandārdaha\";\"main\"\n\"1348737\";\"Bhandardaha\";\"ascii\"\n\"1348739\";\"Dumjor\";\"main\"\n\"1348739\";\"Domjur\";\"other\"\n\"1348742\";\"Krishnapur\";\"main\"\n\"1348747\";\"Bankra\";\"main\"\n\"1348753\";\"Chakapara\";\"main\"\n\"1348775\";\"Mahiari\";\"main\"\n\"1348776\";\"Masila\";\"main\"\n\"1348780\";\"Dhulagari\";\"main\"\n\"1348785\";\"Pānchla\";\"main\"\n\"1348785\";\"Panchla\";\"ascii\"\n\"1348788\";\"Sāhāpur\";\"main\"\n\"1348788\";\"Sahapur\";\"ascii\"\n\"1348789\";\"Raghudebbati\";\"main\"\n\"1348791\";\"Gobindapur\";\"main\"\n\"1348818\";\"Nangi\";\"main\"\n\"1348820\";\"Pujali\";\"main\"\n\"1348870\";\"Amtala\";\"main\"\n\"1348872\";\"Bāwāli\";\"main\"\n\"1348872\";\"Bawali\";\"ascii\"\n\"1348942\";\"Balarāmpur\";\"main\"\n\"1348942\";\"Balarampur\";\"ascii\"\n\"1348944\";\"Jāfarpur\";\"main\"\n\"1348944\";\"Jafarpur\";\"ascii\"\n\"1348947\";\"Serpur\";\"main\"\n\"1349041\";\"Monoharpur\";\"main\"\n\"1349047\";\"Solap\";\"main\"\n\"1349090\";\"Harindānga\";\"main\"\n\"1349090\";\"Harindanga\";\"ascii\"\n\"1349229\";\"Gurdaha\";\"main\"\n\"1349247\";\"Ula\";\"main\"\n\"1349263\";\"Gopālpur\";\"main\"\n\"1349263\";\"Gopalpur\";\"ascii\"\n\"1349355\";\"Raypur\";\"main\"\n\"1349357\";\"Nabagrām\";\"main\"\n\"1349357\";\"Nabagram\";\"ascii\"\n\"1430991\";\"Soyībug\";\"main\"\n\"1430991\";\"Soyibug\";\"ascii\"\n\"1431732\";\"Jauriān\";\"main\"\n\"1431732\";\"Jaurian\";\"ascii\"\n\"1436610\";\"Chīma\";\"main\"\n\"1436610\";\"Chima\";\"ascii\"\n\"1436767\";\"Kheri Sāmpla\";\"main\"\n\"1436767\";\"Kheri Sampla\";\"ascii\"\n\"1439622\";\"Gho Manhāsān\";\"main\"\n\"1439622\";\"Gho Manhasan\";\"ascii\"\n\"1441210\";\"Chhutmalpur\";\"main\"\n\"1442037\";\"Borkhera\";\"main\"\n\"1445156\";\"Singāpur\";\"main\"\n\"1445156\";\"Singapur\";\"ascii\"\n\"1445310\";\"Bālāpur\";\"main\"\n\"1445310\";\"Balapur\";\"ascii\"\n\"1445378\";\"Ghatkesar\";\"main\"\n\"1445624\";\"Chandūr\";\"main\"\n\"1445624\";\"Chandur\";\"ascii\"\n\"1462711\";\"Vijayapura\";\"main\"\n\"1462733\";\"Ādampur\";\"main\"\n\"1462733\";\"Adampur\";\"ascii\"\n\"1465595\";\"Chinnasekkadu\";\"main\"\n\"1465622\";\"Porur\";\"main\"\n\"1465624\";\"Manappakkam\";\"main\"\n\"1465825\";\"Madipakkam\";\"main\"\n\"1465828\";\"Perungudi\";\"main\"\n\"1465868\";\"Vengavasal\";\"main\"\n\"1465879\";\"Nandambakkam\";\"main\"\n\"1465910\";\"Madambakkam\";\"main\"\n\"1466027\";\"Vellānūr\";\"main\"\n\"1466027\";\"Vellanur\";\"ascii\"\n\"6268046\";\"Kupwāra\";\"main\"\n\"6268046\";\"Kupwara\";\"ascii\"\n\"6268046\";\"Kopawor\";\"other\"\n\"6269526\";\"Technopark\";\"main\"\n\"6324621\";\"Powai\";\"main\"\n\"6620455\";\"Auroville\";\"main\"\n\"6620455\";\"Aurovil'\";\"other\"\n\"6620455\";\"Ауровиль\";\"other\"\n\"6621344\";\"Puttaparthi\";\"main\"\n\"6621344\";\"Puttaparti\";\"other\"\n\"6621344\";\"Путтапарти\";\"other\"\n\"6697165\";\"Canacona\";\"main\"\n\"6697165\";\"Kanakona\";\"other\"\n\"6697165\";\"Канакона\";\"other\"\n\"6698412\";\"Abhaneri\";\"main\"\n\"6941535\";\"Chowari\";\"main\"\n\"6941937\";\"Murudeshwara\";\"main\"\n\"6941937\";\"Murudeshvara\";\"other\"\n\"6941937\";\"Мурудешвара\";\"other\"\n\"6943660\";\"Shivaji Nagar\";\"main\"\n\"6992326\";\"Mohali\";\"main\"\n\"7117985\";\"Banbasa\";\"main\"\n\"7117985\";\"Банбаса\";\"other\"\n\"7180617\";\"vadlamuru\";\"main\"\n\"7279595\";\"Pithampur\";\"main\"\n\"7279597\";\"Barbil\";\"main\"\n\"7279599\";\"Airoli\";\"main\"\n\"7279600\";\"Aluva\";\"main\"\n\"7279601\";\"Kotputli\";\"main\"\n\"7279734\";\"Kotkapura\";\"main\"\n\"7279735\";\"Muvattupuzha\";\"main\"\n\"7279739\";\"Perumbavoor\";\"main\"\n\"7279740\";\"Gummidipoondi\";\"main\"\n\"7279741\";\"Vapi\";\"main\"\n\"7279741\";\"Wapi\";\"other\"\n\"7279741\";\"Wāpi\";\"other\"\n\"7279742\";\"Baddi\";\"main\"\n\"7279746\";\"Noida\";\"main\"\n\"7279746\";\"Naveen\";\"other\"\n\"7279746\";\"New Okhla Industrial Development Authority\";\"other\"\n\"7279747\";\"Bhiwadi\";\"main\"\n\"7279750\";\"Parwanoo\";\"main\"\n\"7279751\";\"Jorethang\";\"main\"\n\"7279752\";\"Mandideep\";\"main\"\n\"7279752\";\"Manideep\";\"other\"\n\"7279754\";\"Singrauli\";\"main\"\n\"7283585\";\"Edakkulam\";\"main\"\n\"7283585\";\"etakkulam\";\"other\"\n\"7283585\";\"എടക്കുളം\";\"other\"\n\"7283587\";\"Avanoor\";\"main\"\n\"7284803\";\"Birpara\";\"main\"\n\"7284820\";\"Jaigaon\";\"main\"\n\"7287889\";\"Palackattumala\";\"main\"\n\"7290413\";\"Pitampura\";\"main\"\n\"7290413\";\"Pitam Pura\";\"other\"\n\"7290413\";\"Pītāmpura\";\"other\"\n\"7302453\";\"Vagator\";\"main\"\n\"7302453\";\"Вагатор\";\"other\"\n\"7302805\";\"Akkarampalle\";\"main\"\n\"7302806\";\"Bellampalli\";\"main\"\n\"7302808\";\"Chemmumiahpet\";\"main\"\n\"7302810\";\"Gaddi Annaram\";\"main\"\n\"7302810\";\"Gaddiannaram\";\"other\"\n\"7302812\";\"Dasnapur\";\"main\"\n\"7302825\";\"Kanuru\";\"main\"\n\"7302826\";\"Lal Bahadur Nagar\";\"main\"\n\"7302826\";\"L.B.Nagar\";\"other\"\n\"7302826\";\"Lalbahadur Nagar\";\"other\"\n\"7302828\";\"Malkajgiri\";\"main\"\n\"7302829\";\"Mandamarri\";\"main\"\n\"7302830\";\"Chinnachowk\";\"main\"\n\"7302830\";\"Chinna Chowk\";\"other\"\n\"7302832\";\"Kyathampalle\";\"main\"\n\"7302833\";\"Gajuwaka\";\"main\"\n\"7302836\";\"Manuguru\";\"main\"\n\"7302836\";\"Manugur\";\"other\"\n\"7302838\";\"Kalyandurg\";\"main\"\n\"7302838\";\"Kalyandrug\";\"other\"\n\"7302838\";\"Kalyāndrug\";\"other\"\n\"7302838\";\"kalyandurg\";\"other\"\n\"7302838\";\"kalyāndurg\";\"other\"\n\"7302844\";\"Ponnur\";\"main\"\n\"7302845\";\"Quthbullapur\";\"main\"\n\"7302845\";\"Qutubullapur\";\"other\"\n\"7302846\";\"Ramanayyapeta\";\"main\"\n\"7302847\";\"Palwancha\";\"main\"\n\"7302847\";\"Paloncha\";\"other\"\n\"7302849\";\"Barpeta Road\";\"main\"\n\"7302851\";\"Sathupalli\";\"main\"\n\"7302853\";\"Yanamalakuduru\";\"main\"\n\"7302853\";\"Yenamalakuduru\";\"other\"\n\"7302854\";\"Marigaon\";\"main\"\n\"7302855\";\"Naharlagun\";\"main\"\n\"7302856\";\"Serilingampalle\";\"main\"\n\"7302856\";\"Serilingampally\";\"other\"\n\"7302857\";\"Silapathar\";\"main\"\n\"7302858\";\"Sarupathar\";\"main\"\n\"7302859\";\"Lumding Railway Colony\";\"main\"\n\"7302859\";\"Kumding\";\"other\"\n\"7302859\";\"Lumding\";\"other\"\n\"7302860\";\"Aistala\";\"main\"\n\"7302861\";\"Ashoknagar Kalyangarh\";\"main\"\n\"7302862\";\"Bahula\";\"main\"\n\"7303913\";\"Pavuluru\";\"main\"\n\"7303915\";\"pedda nakkalapalem\";\"main\"\n\"7303983\";\"Jhulasan\";\"main\"\n\"89570\";\"Zākhū\";\"main\"\n\"89570\";\"Zakhu\";\"ascii\"\n\"89570\";\"Zakho\";\"other\"\n\"89570\";\"Zaxo\";\"other\"\n\"89570\";\"zakhw\";\"other\"\n\"89570\";\"Заху\";\"other\"\n\"89570\";\"زاخو\";\"other\"\n\"89570\";\"زاخۆ\";\"other\"\n\"90026\";\"Ţūzkhūrmātū\";\"main\"\n\"90026\";\"Tuzkhurmatu\";\"ascii\"\n\"90026\";\"Khurmati\";\"other\"\n\"90026\";\"Touz Hourmato\";\"other\"\n\"90026\";\"Tozkhurmato\";\"other\"\n\"90026\";\"Tozkhurmatu\";\"other\"\n\"90026\";\"Tuz\";\"other\"\n\"90026\";\"Tuz Kermatli\";\"other\"\n\"90026\";\"Tuz Khurmatli\";\"other\"\n\"90026\";\"طوزخورماتو\";\"other\"\n\"90150\";\"Tikrīt\";\"main\"\n\"90150\";\"Tikrit\";\"ascii\"\n\"90150\";\"Tekrit\";\"other\"\n\"90150\";\"Tikret\";\"other\"\n\"90150\";\"Tikritas\";\"other\"\n\"90150\";\"ti ke li te\";\"other\"\n\"90150\";\"tikurito\";\"other\"\n\"90150\";\"tkryt\";\"other\"\n\"90150\";\"tykryt\";\"other\"\n\"90150\";\"Тикрит\";\"other\"\n\"90150\";\"תיכרית\";\"other\"\n\"90150\";\"تكريت\";\"other\"\n\"90150\";\"تکریت\";\"other\"\n\"90150\";\"ティクリート\";\"other\"\n\"90150\";\"提克里特\";\"other\"\n\"90353\";\"Qaḑā’ Talkīf\";\"main\"\n\"90353\";\"Qada' Talkif\";\"ascii\"\n\"90353\";\"Tall Kaif\";\"other\"\n\"90353\";\"Tall Kayf\";\"other\"\n\"90353\";\"Tall'-Kajf\";\"other\"\n\"90353\";\"Tel Kaif\";\"other\"\n\"90353\";\"Талль-Кайф\";\"other\"\n\"90353\";\"قضاء تلكيف\";\"other\"\n\"90708\";\"Sīnah\";\"main\"\n\"90708\";\"Sinah\";\"ascii\"\n\"90708\";\"Sina\";\"other\"\n\"90708\";\"Sine\";\"other\"\n\"90708\";\"Sîne\";\"other\"\n\"90708\";\"Sīnā\";\"other\"\n\"90708\";\"سينة\";\"other\"\n\"90708\";\"سينه\";\"other\"\n\"91597\";\"Sāmarrā’\";\"main\"\n\"91597\";\"Samarra'\";\"ascii\"\n\"91597\";\"Saimarreh\";\"other\"\n\"91597\";\"Samarra\";\"other\"\n\"91597\";\"Samarrah\";\"other\"\n\"91597\";\"Sāmarrah\";\"other\"\n\"91597\";\"سامراء\";\"other\"\n\"91812\";\"Saddat al Hindīyah\";\"main\"\n\"91812\";\"Saddat al Hindiyah\";\"ascii\"\n\"91812\";\"Al Hindiyah\";\"other\"\n\"91812\";\"Al Hindīyah\";\"other\"\n\"91812\";\"Hindiya\";\"other\"\n\"91812\";\"Hindīya\";\"other\"\n\"91812\";\"Nahiyat Saddat al Hindiyah\";\"other\"\n\"91812\";\"Nāḩīyat Saddat al Hindīyah\";\"other\"\n\"91812\";\"Qaryat Saddat al Hindiyah\";\"other\"\n\"91812\";\"Qaryat Saddat al Hindīyah\";\"other\"\n\"92002\";\"Rāwandūz\";\"main\"\n\"92002\";\"Rawanduz\";\"ascii\"\n\"92002\";\"Ravanduz\";\"other\"\n\"92002\";\"Rawandiz\";\"other\"\n\"92002\";\"Rawandoz\";\"other\"\n\"92002\";\"Rawndoz\";\"other\"\n\"92002\";\"Rawāndiz\";\"other\"\n\"92002\";\"Revandis\";\"other\"\n\"92002\";\"Rewandus\";\"other\"\n\"92002\";\"Roandiz\";\"other\"\n\"92002\";\"Roanduz\";\"other\"\n\"92002\";\"Rowanduz\";\"other\"\n\"92002\";\"Rowandūz\";\"other\"\n\"92002\";\"Ruwan Duz\";\"other\"\n\"92002\";\"Ruwandiz\";\"other\"\n\"92002\";\"Ruwanduz\";\"other\"\n\"92002\";\"Ruwāndiz\";\"other\"\n\"92002\";\"Ruwāndūz\";\"other\"\n\"92002\";\"Равандуз\";\"other\"\n\"92002\";\"راوندوز\";\"other\"\n\"92004\";\"Rāwah\";\"main\"\n\"92004\";\"Rawah\";\"ascii\"\n\"92004\";\"Rawa\";\"other\"\n\"92004\";\"راوة\";\"other\"\n\"92430\";\"Qaḑā’ al Ḩamdānīyah\";\"main\"\n\"92430\";\"Qada' al Hamdaniyah\";\"ascii\"\n\"92430\";\"Al Hamdaniya\";\"other\"\n\"92430\";\"Al Hamdaniyah\";\"other\"\n\"92430\";\"Qarah Qosh\";\"other\"\n\"92430\";\"Qarah Qush\";\"other\"\n\"92430\";\"Qarah Qōsh\";\"other\"\n\"92430\";\"Qarah Qūsh\";\"other\"\n\"92430\";\"Qaraqosh\";\"other\"\n\"92430\";\"Qaraqush\";\"other\"\n\"92430\";\"قضاء الحمدانية\";\"other\"\n\"93709\";\"Mandalī\";\"main\"\n\"93709\";\"Mandali\";\"ascii\"\n\"93709\";\"Mendali\";\"other\"\n\"93709\";\"Mendeli\";\"other\"\n\"93709\";\"Mendéli\";\"other\"\n\"93709\";\"Мандали\";\"other\"\n\"93709\";\"مندلي\";\"other\"\n\"94220\";\"Kūysanjaq\";\"main\"\n\"94220\";\"Kuysanjaq\";\"ascii\"\n\"94220\";\"Koi Sanjaq\";\"other\"\n\"94220\";\"Kosinie\";\"other\"\n\"94220\";\"Kosinîe\";\"other\"\n\"94220\";\"Kou Senaq\";\"other\"\n\"94220\";\"Kou Senjaq\";\"other\"\n\"94220\";\"Koy Senjaq\";\"other\"\n\"94220\";\"Koysinjaq\";\"other\"\n\"94220\";\"كويسنجق\";\"other\"\n\"94220\";\"كۆسنيه\";\"other\"\n\"94298\";\"Kifrī\";\"main\"\n\"94298\";\"Kifri\";\"ascii\"\n\"94298\";\"Kiffri\";\"other\"\n\"94298\";\"Kiffrī\";\"other\"\n\"94298\";\"Kufri\";\"other\"\n\"94298\";\"Kufrī\";\"other\"\n\"94298\";\"Salahie\";\"other\"\n\"94298\";\"Salahiya\";\"other\"\n\"94298\";\"Salahiyeh\";\"other\"\n\"94298\";\"Sallahiya\";\"other\"\n\"94298\";\"Sallahiyah\";\"other\"\n\"94298\";\"Salāhīya\";\"other\"\n\"94298\";\"Zeng Abad\";\"other\"\n\"94298\";\"Zeng Ābād\";\"other\"\n\"94298\";\"Кифри\";\"other\"\n\"94298\";\"كفري\";\"other\"\n\"94787\";\"Kirkuk\";\"main\"\n\"94787\";\"Karkh Slukh\";\"other\"\n\"94787\";\"Karkuk\";\"other\"\n\"94787\";\"Karkūk\";\"other\"\n\"94787\";\"Kerkouk\";\"other\"\n\"94787\";\"Kerkuek\";\"other\"\n\"94787\";\"Kerkuk\";\"other\"\n\"94787\";\"Kerkûk\";\"other\"\n\"94787\";\"Kerkük\";\"other\"\n\"94787\";\"Kirkoek\";\"other\"\n\"94787\";\"Kirkouk\";\"other\"\n\"94787\";\"Kirkūk\";\"other\"\n\"94787\";\"kileukukeu\";\"other\"\n\"94787\";\"kirukuku\";\"other\"\n\"94787\";\"krkwk\";\"other\"\n\"94787\";\"Киркук\";\"other\"\n\"94787\";\"كركوك\";\"other\"\n\"94787\";\"كه ركوك\";\"other\"\n\"94787\";\"كه‌ركووك\";\"other\"\n\"94787\";\"کرکوک\";\"other\"\n\"94787\";\"キルクーク\";\"other\"\n\"94787\";\"키르쿠크\";\"other\"\n\"94824\";\"Karbalā’\";\"main\"\n\"94824\";\"Karbala'\";\"ascii\"\n\"94824\";\"Karbala\";\"other\"\n\"94824\";\"Karbalaa\";\"other\"\n\"94824\";\"Karbila\";\"other\"\n\"94824\";\"Kerbala\";\"other\"\n\"94824\";\"Kerbela\";\"other\"\n\"94824\";\"Meshed Hussain\";\"other\"\n\"94824\";\"Meshed Hussein\";\"other\"\n\"94824\";\"Nainawa\";\"other\"\n\"94824\";\"Shathi'ul-Furat\";\"other\"\n\"94824\";\"Vilojati Karbalo\";\"other\"\n\"94824\";\"al-Ghadiriya\";\"other\"\n\"94824\";\"karubara\";\"other\"\n\"94824\";\"karubara xian\";\"other\"\n\"94824\";\"krbla\";\"other\"\n\"94824\";\"ktrbala\";\"other\"\n\"94824\";\"Вилояти Карбало\";\"other\"\n\"94824\";\"Карбала\";\"other\"\n\"94824\";\"Кербала\";\"other\"\n\"94824\";\"Кербела\";\"other\"\n\"94824\";\"כרבלא\";\"other\"\n\"94824\";\"מחוז כרבלא\";\"other\"\n\"94824\";\"كةربالا\";\"other\"\n\"94824\";\"كربلاء\";\"other\"\n\"94824\";\"محافظة كربلاء\";\"other\"\n\"94824\";\"کربلا\";\"other\"\n\"94824\";\"カルバラー\";\"other\"\n\"94824\";\"カルバラー県\";\"other\"\n\"95446\";\"Arbīl\";\"main\"\n\"95446\";\"Arbil\";\"ascii\"\n\"95446\";\"(Erbil)\";\"other\"\n\"95446\";\"Arba`ilu\";\"other\"\n\"95446\";\"Arba‘ilu\";\"other\"\n\"95446\";\"Arbeel\";\"other\"\n\"95446\";\"Arbela\";\"other\"\n\"95446\";\"Arbil Governorate\";\"other\"\n\"95446\";\"Arbēla\";\"other\"\n\"95446\";\"Erbil\";\"other\"\n\"95446\";\"Hawler\";\"other\"\n\"95446\";\"Hawlēr\";\"other\"\n\"95446\";\"Hewler\";\"other\"\n\"95446\";\"Hewlêr\";\"other\"\n\"95446\";\"Irbil\";\"other\"\n\"95446\";\"Irbīl\";\"other\"\n\"95446\";\"Viloati Arbil\";\"other\"\n\"95446\";\"ai er bi lei sheng\";\"other\"\n\"95446\";\"arbyl\";\"other\"\n\"95446\";\"arubiru xian\";\"other\"\n\"95446\";\"mhafzt arbyl\";\"other\"\n\"95446\";\"Арбил\";\"other\"\n\"95446\";\"Вилояти Арбӣл\";\"other\"\n\"95446\";\"מחוז ארביל\";\"other\"\n\"95446\";\"أربيل\";\"other\"\n\"95446\";\"إربيل\";\"other\"\n\"95446\";\"اربیل\";\"other\"\n\"95446\";\"محافظة أربيل\";\"other\"\n\"95446\";\"هەولێر\";\"other\"\n\"95446\";\"アルビール県\";\"other\"\n\"95446\";\"埃爾比勒省\";\"other\"\n\"95788\";\"Hīt\";\"main\"\n\"95788\";\"Hit\";\"ascii\"\n\"95788\";\"هيت\";\"other\"\n\"96205\";\"Ḩalabjah\";\"main\"\n\"96205\";\"Halabjah\";\"ascii\"\n\"96205\";\"Alabja\";\"other\"\n\"96205\";\"Halabdscha\";\"other\"\n\"96205\";\"Halabia\";\"other\"\n\"96205\";\"Halabja\";\"other\"\n\"96205\";\"Halebdja\";\"other\"\n\"96205\";\"Halebja\";\"other\"\n\"96205\";\"Halebjeh\";\"other\"\n\"96205\";\"Halepce\";\"other\"\n\"96205\";\"Halepçe\";\"other\"\n\"96205\";\"Helepce\";\"other\"\n\"96205\";\"Helepçe\";\"other\"\n\"96205\";\"Khalabdzha\";\"other\"\n\"96205\";\"hlbchh\";\"other\"\n\"96205\";\"hlbjt\";\"other\"\n\"96205\";\"Халабджа\";\"other\"\n\"96205\";\"حلبجة\";\"other\"\n\"96205\";\"حلبچه\";\"other\"\n\"96309\";\"Ḩadīthah\";\"main\"\n\"96309\";\"Hadithah\";\"ascii\"\n\"96309\";\"Al Hadithah\";\"other\"\n\"96309\";\"Al Ḩadīthah\";\"other\"\n\"96309\";\"Haditha\";\"other\"\n\"96309\";\"Khadita\";\"other\"\n\"96309\";\"Хадита\";\"other\"\n\"97417\";\"Chamchamāl\";\"main\"\n\"97417\";\"Chamchamal\";\"ascii\"\n\"97417\";\"Chemchemal\";\"other\"\n\"97417\";\"Chemchemāl\";\"other\"\n\"97417\";\"Shamshamal\";\"other\"\n\"97417\";\"Shamshamāl\";\"other\"\n\"97417\";\"چمچمال\";\"other\"\n\"97783\";\"Bayjī\";\"main\"\n\"97783\";\"Bayji\";\"ascii\"\n\"97783\";\"Baiji\";\"other\"\n\"97783\";\"Bajdzhi\";\"other\"\n\"97783\";\"Байджи\";\"other\"\n\"97783\";\"بيجي\";\"other\"\n\"97990\";\"Ba‘qūbah\";\"main\"\n\"97990\";\"Ba`qubah\";\"ascii\"\n\"97990\";\"Ba'quba\";\"other\"\n\"97990\";\"Bakouba\";\"other\"\n\"97990\";\"Bakuba\";\"other\"\n\"97990\";\"Baquba\";\"other\"\n\"97990\";\"Baqubah\";\"other\"\n\"97990\";\"Baqubeh\";\"other\"\n\"97990\";\"Ba’qūba\";\"other\"\n\"97990\";\"ba gu bai\";\"other\"\n\"97990\";\"Бакуба\";\"other\"\n\"97990\";\"بعقوبة\";\"other\"\n\"97990\";\"巴古拜\";\"other\"\n\"98012\";\"Paynjuwayn\";\"main\"\n\"98012\";\"Banjuwayn\";\"other\"\n\"98012\";\"Banjwin\";\"other\"\n\"98012\";\"Banjwīn\";\"other\"\n\"98012\";\"Pandjvin\";\"other\"\n\"98012\";\"Panjvin\";\"other\"\n\"98012\";\"Panjwin\";\"other\"\n\"98012\";\"Panjwīn\";\"other\"\n\"98012\";\"Pencwen\";\"other\"\n\"98012\";\"Pendjevin\";\"other\"\n\"98012\";\"Pendjevine\";\"other\"\n\"98012\";\"Pendsevine\";\"other\"\n\"98012\";\"Penjevin\";\"other\"\n\"98012\";\"Penjvin\";\"other\"\n\"98012\";\"Penjvīn\";\"other\"\n\"98012\";\"Penjwen\";\"other\"\n\"98012\";\"Penjwin\";\"other\"\n\"98012\";\"Pêncwên\";\"other\"\n\"98012\";\"بنجوين\";\"other\"\n\"98012\";\"پنجوین\";\"other\"\n\"98012\";\"پينجوین\";\"other\"\n\"98012\";\"پێنجوێن\";\"other\"\n\"98112\";\"Balad\";\"main\"\n\"98112\";\"Balada\";\"other\"\n\"98112\";\"Belad\";\"other\"\n\"98112\";\"Beled\";\"other\"\n\"98112\";\"Балада\";\"other\"\n\"98112\";\"بلد\";\"other\"\n\"98182\";\"Baghdad\";\"main\"\n\"98182\";\"BGW\";\"other\"\n\"98182\";\"Bagda\";\"other\"\n\"98182\";\"Bagdad\";\"other\"\n\"98182\";\"Bagdadas\";\"other\"\n\"98182\";\"Bagdado\";\"other\"\n\"98182\";\"Bagdat\";\"other\"\n\"98182\";\"Bagdate\";\"other\"\n\"98182\";\"Bagdatum\";\"other\"\n\"98182\";\"Bagdod\";\"other\"\n\"98182\";\"Bagdá\";\"other\"\n\"98182\";\"Bagdád\";\"other\"\n\"98182\";\"Baghdād\";\"other\"\n\"98182\";\"Bağdad\";\"other\"\n\"98182\";\"Bağdat\";\"other\"\n\"98182\";\"Bexda\";\"other\"\n\"98182\";\"Lungsod ng Baghdad\";\"other\"\n\"98182\";\"ba ge da\";\"other\"\n\"98182\";\"bagadada\";\"other\"\n\"98182\";\"bageudadeu\";\"other\"\n\"98182\";\"bagudado\";\"other\"\n\"98182\";\"bgdd\";\"other\"\n\"98182\";\"bghdad\";\"other\"\n\"98182\";\"paktat\";\"other\"\n\"98182\";\"Βαγδάτη\";\"other\"\n\"98182\";\"Багдад\";\"other\"\n\"98182\";\"Бағдод\";\"other\"\n\"98182\";\"Բաղդադ\";\"other\"\n\"98182\";\"בגדאד\";\"other\"\n\"98182\";\"بغداد\";\"other\"\n\"98182\";\"ܒܓܕܕ\";\"other\"\n\"98182\";\"बगदाद\";\"other\"\n\"98182\";\"பாக்தாத்\";\"other\"\n\"98182\";\"པ་ག་ཏ\";\"other\"\n\"98182\";\"ባግዳድ\";\"other\"\n\"98182\";\"バグダード\";\"other\"\n\"98182\";\"巴格达\";\"other\"\n\"98182\";\"바그다드\";\"other\"\n\"98245\";\"Az Zubayr\";\"main\"\n\"98245\";\"Az Zubair\";\"other\"\n\"98245\";\"Az Zuhair\";\"other\"\n\"98245\";\"El Zubair\";\"other\"\n\"98245\";\"Zobier\";\"other\"\n\"98245\";\"Zubair\";\"other\"\n\"98245\";\"الزبير\";\"other\"\n\"98459\";\"Aş Şuwayrah\";\"main\"\n\"98459\";\"As Suwayrah\";\"ascii\"\n\"98459\";\"Jazira\";\"other\"\n\"98459\";\"Jazīra\";\"other\"\n\"98459\";\"Jumeiseh\";\"other\"\n\"98459\";\"Juweimiseh\";\"other\"\n\"98459\";\"Sewairah\";\"other\"\n\"98459\";\"Suvajra\";\"other\"\n\"98459\";\"Suwaira\";\"other\"\n\"98459\";\"Suweireh\";\"other\"\n\"98459\";\"Suweiri\";\"other\"\n\"98459\";\"Сувайра\";\"other\"\n\"98463\";\"As Sulaymānīyah\";\"main\"\n\"98463\";\"As Sulaymaniyah\";\"ascii\"\n\"98463\";\"Al-Sulaimaniya\";\"other\"\n\"98463\";\"As-Sulaymaniyah\";\"other\"\n\"98463\";\"Silemani\";\"other\"\n\"98463\";\"Silêmanî\";\"other\"\n\"98463\";\"Sleimani\";\"other\"\n\"98463\";\"Sleimāni\";\"other\"\n\"98463\";\"Slemani\";\"other\"\n\"98463\";\"Slēmānī\";\"other\"\n\"98463\";\"Souleymaniah\";\"other\"\n\"98463\";\"Sueleymaniye\";\"other\"\n\"98463\";\"Sulaimania\";\"other\"\n\"98463\";\"Sulaimanieh\";\"other\"\n\"98463\";\"Sulaimaniya\";\"other\"\n\"98463\";\"Sulajmanijja\";\"other\"\n\"98463\";\"Sulaymaniyah\";\"other\"\n\"98463\";\"Sulaymānīyah\";\"other\"\n\"98463\";\"Suleimania\";\"other\"\n\"98463\";\"Suleimaniya\";\"other\"\n\"98463\";\"Sulejmanija\";\"other\"\n\"98463\";\"Süleymaniye\";\"other\"\n\"98463\";\"shhr slymanyh\";\"other\"\n\"98463\";\"slymanyh\";\"other\"\n\"98463\";\"Сулеймания\";\"other\"\n\"98463\";\"السليمانية\";\"other\"\n\"98463\";\"سلیمانیه\";\"other\"\n\"98463\";\"سلێمانی\";\"other\"\n\"98463\";\"شهر سلیمانیه\";\"other\"\n\"98530\";\"As Samāwah\";\"main\"\n\"98530\";\"As Samawah\";\"ascii\"\n\"98530\";\"SAMAWA\";\"other\"\n\"98530\";\"Samava\";\"other\"\n\"98530\";\"Samawa\";\"other\"\n\"98530\";\"Samawah\";\"other\"\n\"98530\";\"Samāwah\";\"other\"\n\"98530\";\"Самава\";\"other\"\n\"98530\";\"السماوه\";\"other\"\n\"98589\";\"Nāḩiyat ash Shināfīyah\";\"main\"\n\"98589\";\"Nahiyat ash Shinafiyah\";\"ascii\"\n\"98589\";\"Ash Shinafiyah\";\"other\"\n\"98589\";\"Ash Shināfīyah\";\"other\"\n\"98589\";\"Chinafiyah\";\"other\"\n\"98589\";\"Shannafiuah\";\"other\"\n\"98589\";\"Shenafiya\";\"other\"\n\"98589\";\"Shenāfiya\";\"other\"\n\"98589\";\"Shinafie\";\"other\"\n\"98589\";\"Shinafiya\";\"other\"\n\"98589\";\"Shinafiyeh\";\"other\"\n\"98589\";\"Shināfiya\";\"other\"\n\"98589\";\"الشنافية\";\"other\"\n\"98589\";\"ناحية الشنافية\";\"other\"\n\"98622\";\"Ash Shaţrah\";\"main\"\n\"98622\";\"Ash Shatrah\";\"ascii\"\n\"98622\";\"Shatra\";\"other\"\n\"98622\";\"Shatrat al Muntafiq\";\"other\"\n\"98622\";\"Shatreh\";\"other\"\n\"98622\";\"Shatret el Muntefiq\";\"other\"\n\"98622\";\"Shattra\";\"other\"\n\"98622\";\"Shattrah el Muntifik\";\"other\"\n\"98622\";\"الشطرة\";\"other\"\n\"98629\";\"Ash Shāmīyah\";\"main\"\n\"98629\";\"Ash Shamiyah\";\"ascii\"\n\"98629\";\"Ash Shamiya\";\"other\"\n\"98629\";\"Ash Shāmīya\";\"other\"\n\"98629\";\"Shamiya\";\"other\"\n\"98629\";\"Ummal Barur\";\"other\"\n\"98629\";\"الشامية\";\"other\"\n\"98677\";\"Ar Ruţbah\";\"main\"\n\"98677\";\"Ar Rutbah\";\"ascii\"\n\"98677\";\"Al Rutbah\";\"other\"\n\"98677\";\"Rutba\";\"other\"\n\"98677\";\"Rutbah\";\"other\"\n\"98677\";\"الرطبة\";\"other\"\n\"98685\";\"Ar Rumaythah\";\"main\"\n\"98685\";\"Al-Rumitha\";\"other\"\n\"98685\";\"Rumaith\";\"other\"\n\"98685\";\"Rumaitha\";\"other\"\n\"98685\";\"Rumaithah\";\"other\"\n\"98685\";\"Rumeitheh\";\"other\"\n\"98685\";\"Rumetha\";\"other\"\n\"98685\";\"Ubaiyidh\";\"other\"\n\"98685\";\"الرميثة\";\"other\"\n\"98717\";\"Ar Ramādī\";\"main\"\n\"98717\";\"Ar Ramadi\";\"ascii\"\n\"98717\";\"Al-Rumadi\";\"other\"\n\"98717\";\"Ramadi\";\"other\"\n\"98717\";\"Ramadie\";\"other\"\n\"98717\";\"Ramadieh\";\"other\"\n\"98717\";\"Ramadiyah\";\"other\"\n\"98717\";\"Rumadiya\";\"other\"\n\"98717\";\"Rumadiyeh\";\"other\"\n\"98717\";\"Rumādīya\";\"other\"\n\"98717\";\"Rumādīyeh\";\"other\"\n\"98717\";\"alrmady\";\"other\"\n\"98717\";\"rmady\";\"other\"\n\"98717\";\"Рамади\";\"other\"\n\"98717\";\"الرمادي\";\"other\"\n\"98717\";\"رمادی\";\"other\"\n\"98854\";\"An Nāşirīyah\";\"main\"\n\"98854\";\"An Nasiriyah\";\"ascii\"\n\"98854\";\"Al-Nasiriya\";\"other\"\n\"98854\";\"An Nasiriya\";\"other\"\n\"98854\";\"An Nāsirīya\";\"other\"\n\"98854\";\"An-Nasiriya\";\"other\"\n\"98854\";\"Muntafik\";\"other\"\n\"98854\";\"Muntifik\";\"other\"\n\"98854\";\"Nasirija\";\"other\"\n\"98854\";\"Nasirijja\";\"other\"\n\"98854\";\"Nasiriya\";\"other\"\n\"98854\";\"Nasiriyah\";\"other\"\n\"98854\";\"Nasiriyeh\";\"other\"\n\"98854\";\"Nasiriyya\";\"other\"\n\"98854\";\"Nasrie\";\"other\"\n\"98854\";\"Nasriye\";\"other\"\n\"98854\";\"Nāsirīyah\";\"other\"\n\"98854\";\"alnasryt\";\"other\"\n\"98854\";\"nashiriya\";\"other\"\n\"98854\";\"Насирия\";\"other\"\n\"98854\";\"الناصرية\";\"other\"\n\"98854\";\"الناصريه\";\"other\"\n\"98854\";\"ナーシリーヤ\";\"other\"\n\"98860\";\"An Najaf al Ashraf\";\"main\"\n\"98860\";\"Al Najaf al Ashraf\";\"other\"\n\"98860\";\"An Najaf\";\"other\"\n\"98860\";\"An-Najaf\";\"other\"\n\"98860\";\"Ehn-Nadzhaf\";\"other\"\n\"98860\";\"Meshed 'Ali\";\"other\"\n\"98860\";\"Meshed ’Ali\";\"other\"\n\"98860\";\"Nadjaf\";\"other\"\n\"98860\";\"Nadschaf\";\"other\"\n\"98860\";\"Nadzaf\";\"other\"\n\"98860\";\"Nadzhaf\";\"other\"\n\"98860\";\"Nadżaf\";\"other\"\n\"98860\";\"Nagaf\";\"other\"\n\"98860\";\"Najaf\";\"other\"\n\"98860\";\"Najaf - njf\";\"other\"\n\"98860\";\"Najaf - نجف\";\"other\"\n\"98860\";\"Nayaf\";\"other\"\n\"98860\";\"Naĝaf\";\"other\"\n\"98860\";\"Nedjef\";\"other\"\n\"98860\";\"Neshed Ali\";\"other\"\n\"98860\";\"alnjf\";\"other\"\n\"98860\";\"na jie fu\";\"other\"\n\"98860\";\"najafu\";\"other\"\n\"98860\";\"ng'p\";\"other\"\n\"98860\";\"njf\";\"other\"\n\"98860\";\"Наджаф\";\"other\"\n\"98860\";\"Наџаф\";\"other\"\n\"98860\";\"Эн-Наджаф\";\"other\"\n\"98860\";\"נג'ף\";\"other\"\n\"98860\";\"النجف\";\"other\"\n\"98860\";\"النجف الاشرف\";\"other\"\n\"98860\";\"نجف\";\"other\"\n\"98860\";\"ナジャフ\";\"other\"\n\"98860\";\"納杰夫\";\"other\"\n\"98885\";\"‘Anat al Qadīmah\";\"main\"\n\"98885\";\"`Anat al Qadimah\";\"ascii\"\n\"98885\";\"Ana\";\"other\"\n\"98885\";\"Anah\";\"other\"\n\"98885\";\"`Anah\";\"other\"\n\"98885\";\"عنة القديمة\";\"other\"\n\"98885\";\"‘Ānah\";\"other\"\n\"99010\";\"Al Qāsim\";\"main\"\n\"99010\";\"Al Qasim\";\"ascii\"\n\"99010\";\"Al'-Kasim\";\"other\"\n\"99010\";\"Imam Qasim\";\"other\"\n\"99010\";\"Qasim\";\"other\"\n\"99010\";\"Qāsim\";\"other\"\n\"99010\";\"Аль-Касим\";\"other\"\n\"99010\";\"القاسم\";\"other\"\n\"99039\";\"Al Musayyib\";\"main\"\n\"99039\";\"Al Musaiyib\";\"other\"\n\"99039\";\"Al'-Ehl'-Musajibe\";\"other\"\n\"99039\";\"Mosayab\";\"other\"\n\"99039\";\"Musaiyib\";\"other\"\n\"99039\";\"Musayyib\";\"other\"\n\"99039\";\"Musaīyib\";\"other\"\n\"99039\";\"Museyib\";\"other\"\n\"99039\";\"Аль-Эль-Мусайибе\";\"other\"\n\"99039\";\"المسيب\";\"other\"\n\"99060\";\"Al Mishkhāb\";\"main\"\n\"99060\";\"Al Mishkhab\";\"ascii\"\n\"99060\";\"Al Faysaliyah\";\"other\"\n\"99060\";\"Al Fayşalīyah\";\"other\"\n\"99060\";\"Faisailiya\";\"other\"\n\"99060\";\"المشخاب\";\"other\"\n\"99062\";\"Al Miqdādīyah\";\"main\"\n\"99062\";\"Al Miqdadiyah\";\"ascii\"\n\"99062\";\"Muqdadiyah\";\"other\"\n\"99062\";\"Shahraban\";\"other\"\n\"99062\";\"Shahroban\";\"other\"\n\"99062\";\"Shahrābān\";\"other\"\n\"99071\";\"Al Mawşil al Jadīdah\";\"main\"\n\"99071\";\"Al Mawsil al Jadidah\";\"ascii\"\n\"99071\";\"الموصل الجديدة\";\"other\"\n\"99072\";\"Mosul\";\"main\"\n\"99072\";\"Al Mawsil\";\"other\"\n\"99072\";\"Al Mawşil\";\"other\"\n\"99072\";\"Al Musil\";\"other\"\n\"99072\";\"Al Mūşil\";\"other\"\n\"99072\";\"Mosoel\";\"other\"\n\"99072\";\"Mossoul\";\"other\"\n\"99072\";\"Mossul\";\"other\"\n\"99072\";\"Mosula\";\"other\"\n\"99072\";\"Moussoul\";\"other\"\n\"99072\";\"Musil\";\"other\"\n\"99072\";\"Musul\";\"other\"\n\"99072\";\"Mûsil\";\"other\"\n\"99072\";\"mosul\";\"other\"\n\"99072\";\"mosuru\";\"other\"\n\"99072\";\"mwsl\";\"other\"\n\"99072\";\"mwswl\";\"other\"\n\"99072\";\"Мосул\";\"other\"\n\"99072\";\"מוסול\";\"other\"\n\"99072\";\"موصل\";\"other\"\n\"99072\";\"モースル\";\"other\"\n\"99072\";\"모술\";\"other\"\n\"99097\";\"Al Majar al Kabīr\";\"main\"\n\"99097\";\"Al Majar al Kabir\";\"ascii\"\n\"99097\";\"Al Majarr al Kabir\";\"other\"\n\"99097\";\"Al Majarr al Kabīr\";\"other\"\n\"99097\";\"Al Mijar al Kabir\";\"other\"\n\"99097\";\"Al Mijar al Kabīr\";\"other\"\n\"99097\";\"Majar al Kabir\";\"other\"\n\"99097\";\"Majar al Kabīr\";\"other\"\n\"99097\";\"المجر الكبير\";\"other\"\n\"99131\";\"Al Kūt\";\"main\"\n\"99131\";\"Al Kut\";\"ascii\"\n\"99131\";\"Al Koet\";\"other\"\n\"99131\";\"Kut\";\"other\"\n\"99131\";\"Kut al Imara\";\"other\"\n\"99131\";\"Kut al Imāra\";\"other\"\n\"99131\";\"Kut al `Amarah\";\"other\"\n\"99131\";\"Kut-al-Almarah\";\"other\"\n\"99131\";\"Kut-al-Almārah\";\"other\"\n\"99131\";\"Kut-al-Imarah\";\"other\"\n\"99131\";\"Kūt\";\"other\"\n\"99131\";\"Kūt al ‘Amārah\";\"other\"\n\"99131\";\"Kūt-al-Imārah\";\"other\"\n\"99131\";\"kwt\";\"other\"\n\"99131\";\"Кут\";\"other\"\n\"99131\";\"الكوت\";\"other\"\n\"99131\";\"كوت\";\"other\"\n\"99169\";\"Khāliş\";\"main\"\n\"99169\";\"Khalis\";\"ascii\"\n\"99169\";\"Al Khalis\";\"other\"\n\"99169\";\"Al Khāliş\";\"other\"\n\"99169\";\"Al'-Khalisa\";\"other\"\n\"99169\";\"Diltawah\";\"other\"\n\"99169\";\"Diltāwah\";\"other\"\n\"99169\";\"Аль-Халиса\";\"other\"\n\"99169\";\"خالص\";\"other\"\n\"99306\";\"‘Alī al Gharbī\";\"main\"\n\"99306\";\"`Ali al Gharbi\";\"ascii\"\n\"99306\";\"Ali Gharbi\";\"other\"\n\"99306\";\"Ali el Gharbi\";\"other\"\n\"99306\";\"Imam Ali Gherbi\";\"other\"\n\"99306\";\"Imām Ali Gherbi\";\"other\"\n\"99306\";\"علي الغربي\";\"other\"\n\"99344\";\"Al Hindīyah\";\"main\"\n\"99344\";\"Al Hindiyah\";\"ascii\"\n\"99344\";\"Hindiya\";\"other\"\n\"99344\";\"Hindīya\";\"other\"\n\"99344\";\"Qada' al Hindiyah\";\"other\"\n\"99344\";\"Qaḑā’ al Hindīyah\";\"other\"\n\"99344\";\"Tuwairij\";\"other\"\n\"99344\";\"Tuwairji\";\"other\"\n\"99344\";\"Tuwairīj\";\"other\"\n\"99344\";\"Tuwayrij\";\"other\"\n\"99344\";\"Ţuwayrīj\";\"other\"\n\"99347\";\"Al Ḩillah\";\"main\"\n\"99347\";\"Al Hillah\";\"ascii\"\n\"99347\";\"Al Hilla\";\"other\"\n\"99347\";\"Al'-Khilla\";\"other\"\n\"99347\";\"Al-Hella\";\"other\"\n\"99347\";\"Hilah\";\"other\"\n\"99347\";\"Hilla\";\"other\"\n\"99347\";\"Hille\";\"other\"\n\"99347\";\"Hillé\";\"other\"\n\"99347\";\"Аль-Хилла\";\"other\"\n\"99347\";\"الحلة\";\"other\"\n\"99350\";\"Al Ḩayy\";\"main\"\n\"99350\";\"Al Hayy\";\"ascii\"\n\"99350\";\"Al Hai\";\"other\"\n\"99350\";\"Al Hay\";\"other\"\n\"99350\";\"Al'-Khaja\";\"other\"\n\"99350\";\"Kut al Hai\";\"other\"\n\"99350\";\"Аль-Хая\";\"other\"\n\"99350\";\"الحي\";\"other\"\n\"99369\";\"Al Hārithah\";\"main\"\n\"99369\";\"Al Harithah\";\"ascii\"\n\"99369\";\"Al'-Kharrisa\";\"other\"\n\"99369\";\"Hartha\";\"other\"\n\"99369\";\"Harthah\";\"other\"\n\"99369\";\"Аль-Харриса\";\"other\"\n\"99434\";\"Nāḩiyat Ghammās\";\"main\"\n\"99434\";\"Nahiyat Ghammas\";\"ascii\"\n\"99434\";\"Al Ghammas\";\"other\"\n\"99434\";\"Al Ghammās\";\"other\"\n\"99434\";\"Ghammas\";\"other\"\n\"99434\";\"Ghammās\";\"other\"\n\"99434\";\"غماس\";\"other\"\n\"99434\";\"ناحية غماس\";\"other\"\n\"99439\";\"Nāḩiyat al Fuhūd\";\"main\"\n\"99439\";\"Nahiyat al Fuhud\";\"ascii\"\n\"99439\";\"Al Fuhud\";\"other\"\n\"99439\";\"Al Fuhūd\";\"other\"\n\"99439\";\"Fuhud\";\"other\"\n\"99439\";\"Fuhūd\";\"other\"\n\"99446\";\"Al Fāw\";\"main\"\n\"99446\";\"Al Faw\";\"ascii\"\n\"99446\";\"Al'-Fau\";\"other\"\n\"99446\";\"Fao\";\"other\"\n\"99446\";\"Fao Terminal\";\"other\"\n\"99446\";\"Fava\";\"other\"\n\"99446\";\"Аль-Фау\";\"other\"\n\"99446\";\"الفاو\";\"other\"\n\"99454\";\"Al Fallūjah\";\"main\"\n\"99454\";\"Al Fallujah\";\"ascii\"\n\"99454\";\"Al Falludza\";\"other\"\n\"99454\";\"Al Falludża\";\"other\"\n\"99454\";\"Al Falluja\";\"other\"\n\"99454\";\"Al Fallūja\";\"other\"\n\"99454\";\"Al Falooja\";\"other\"\n\"99454\";\"Falloujah\";\"other\"\n\"99454\";\"Falludscha\";\"other\"\n\"99454\";\"Falluja\";\"other\"\n\"99454\";\"Fallujah\";\"other\"\n\"99454\";\"Fallūjah\";\"other\"\n\"99454\";\"Faludza\";\"other\"\n\"99454\";\"Faludzha\";\"other\"\n\"99454\";\"Faluga\";\"other\"\n\"99454\";\"Faluya\";\"other\"\n\"99454\";\"Faluĝa\";\"other\"\n\"99454\";\"Feludja\";\"other\"\n\"99454\";\"Feluja\";\"other\"\n\"99454\";\"faruja\";\"other\"\n\"99454\";\"fei lu jie\";\"other\"\n\"99454\";\"Фалуджа\";\"other\"\n\"99454\";\"Фалуџа\";\"other\"\n\"99454\";\"الفلوجة\";\"other\"\n\"99454\";\"ファルージャ\";\"other\"\n\"99454\";\"费卢杰\";\"other\"\n\"99532\";\"Al Başrah\";\"main\"\n\"99532\";\"Al Basrah\";\"ascii\"\n\"99532\";\"Al-Basra\";\"other\"\n\"99532\";\"Bacora\";\"other\"\n\"99532\";\"Basora\";\"other\"\n\"99532\";\"Basra\";\"other\"\n\"99532\";\"Basrah\";\"other\"\n\"99532\";\"Bassora\";\"other\"\n\"99532\";\"Bassorah\";\"other\"\n\"99532\";\"Bassra\";\"other\"\n\"99532\";\"Baçorá\";\"other\"\n\"99532\";\"Busra\";\"other\"\n\"99532\";\"Busrah\";\"other\"\n\"99532\";\"Bussora\";\"other\"\n\"99532\";\"Bàssora\";\"other\"\n\"99532\";\"ba shi la\";\"other\"\n\"99532\";\"ba si la\";\"other\"\n\"99532\";\"basura\";\"other\"\n\"99532\";\"bsrh\";\"other\"\n\"99532\";\"bsrt\";\"other\"\n\"99532\";\"bzrh\";\"other\"\n\"99532\";\"Басра\";\"other\"\n\"99532\";\"בצרה\";\"other\"\n\"99532\";\"البصرة\";\"other\"\n\"99532\";\"بصرة\";\"other\"\n\"99532\";\"بصره\";\"other\"\n\"99532\";\"ܒܨܪܐ\";\"other\"\n\"99532\";\"バスラ\";\"other\"\n\"99532\";\"巴士拉\";\"other\"\n\"99532\";\"巴斯拉\";\"other\"\n\"99548\";\"Al ‘Azīzīyah\";\"main\"\n\"99548\";\"Al `Aziziyah\";\"ascii\"\n\"99548\";\"Al `Aziziya\";\"other\"\n\"99548\";\"Al ‘Aziziya\";\"other\"\n\"99548\";\"Al-Azizya\";\"other\"\n\"99548\";\"Al-Azīzya\";\"other\"\n\"99548\";\"Azizie\";\"other\"\n\"99548\";\"Aziziya\";\"other\"\n\"99548\";\"Aziziyah\";\"other\"\n\"99548\";\"Azizīya\";\"other\"\n\"99548\";\"Azīzīyah\";\"other\"\n\"99548\";\"`Aziziyeh\";\"other\"\n\"99548\";\"العزيزية\";\"other\"\n\"99548\";\"‘Aziziyeh\";\"other\"\n\"99608\";\"Al ‘Amārah\";\"main\"\n\"99608\";\"Al `Amarah\";\"ascii\"\n\"99608\";\"Amara\";\"other\"\n\"99608\";\"Amarah\";\"other\"\n\"99608\";\"Amare\";\"other\"\n\"99608\";\"Amaré\";\"other\"\n\"99608\";\"العماره\";\"other\"\n\"99738\";\"‘Afak\";\"main\"\n\"99738\";\"`Afak\";\"ascii\"\n\"99738\";\"Afag\";\"other\"\n\"99738\";\"Afak\";\"other\"\n\"99738\";\"Afaq\";\"other\"\n\"99738\";\"Sok el Afej\";\"other\"\n\"99738\";\"Афак\";\"other\"\n\"99738\";\"عفك\";\"other\"\n\"99759\";\"Ad Dujayl\";\"main\"\n\"99759\";\"Al Ibrahimiyah\";\"other\"\n\"99759\";\"Al Ibrāhīmīyah\";\"other\"\n\"99759\";\"Doujail\";\"other\"\n\"99759\";\"Doujaïl\";\"other\"\n\"99759\";\"Dudschail\";\"other\"\n\"99759\";\"Dudzail\";\"other\"\n\"99759\";\"Dudžail\";\"other\"\n\"99759\";\"Dujail\";\"other\"\n\"99759\";\"Dujayl\";\"other\"\n\"99759\";\"Nahiya Sumaika\";\"other\"\n\"99759\";\"Nahiya Sumaīka\";\"other\"\n\"99759\";\"Nahiyat ad Dujayl\";\"other\"\n\"99759\";\"Nāḩiyat ad Dujayl\";\"other\"\n\"99759\";\"Sumaicha\";\"other\"\n\"99759\";\"Sumaichah\";\"other\"\n\"99759\";\"Sumaika\";\"other\"\n\"99759\";\"Sumaikcheh\";\"other\"\n\"99759\";\"Sumaykah\";\"other\"\n\"99759\";\"Sumaīka\";\"other\"\n\"99759\";\"Sumeicha\";\"other\"\n\"99759\";\"Sumeikeh\";\"other\"\n\"99759\";\"Sumekche\";\"other\"\n\"99759\";\"Summeicha\";\"other\"\n\"99759\";\"Suneiki\";\"other\"\n\"99759\";\"do~ujairu\";\"other\"\n\"99759\";\"ドゥジャイル\";\"other\"\n\"99762\";\"Ad Dīwānīyah\";\"main\"\n\"99762\";\"Ad Diwaniyah\";\"ascii\"\n\"99762\";\"Ad Diwania\";\"other\"\n\"99762\";\"Ad Diwaniya\";\"other\"\n\"99762\";\"Ad Dīwānīya\";\"other\"\n\"99762\";\"Al-Diwaniya\";\"other\"\n\"99762\";\"Divanija\";\"other\"\n\"99762\";\"Diwanie\";\"other\"\n\"99762\";\"Diwaniya\";\"other\"\n\"99762\";\"Diwaniyan\";\"other\"\n\"99762\";\"Diwaniyeh\";\"other\"\n\"99762\";\"Dīwanīya\";\"other\"\n\"99762\";\"Hiska\";\"other\"\n\"99762\";\"Дивания\";\"other\"\n\"99762\";\"الديوانية\";\"other\"\n\"100077\";\"Abū Ghurayb\";\"main\"\n\"100077\";\"Abu Ghurayb\";\"ascii\"\n\"100077\";\"Abou Ghraib\";\"other\"\n\"100077\";\"Abu Ghraib\";\"other\"\n\"100077\";\"Abu Ghraib - abw ghryb\";\"other\"\n\"100077\";\"Abu Ghraib - أبو غريب\";\"other\"\n\"100077\";\"Abu Ghraib Farms\";\"other\"\n\"100077\";\"Abu Ghuraib\";\"other\"\n\"100077\";\"Abu-Grejb\";\"other\"\n\"100077\";\"Abū Ghraib Farms\";\"other\"\n\"100077\";\"Mazari` Abi Gharib\";\"other\"\n\"100077\";\"Mazari` Abi Ghurayb\";\"other\"\n\"100077\";\"Mazāri‘ Abī Ghurayb\";\"other\"\n\"100077\";\"Mazārı‘ Abī Gharīb\";\"other\"\n\"100077\";\"abw ghryb\";\"other\"\n\"100077\";\"Абу-Грейб\";\"other\"\n\"100077\";\"אבו גרייב\";\"other\"\n\"100077\";\"ابو غریب\";\"other\"\n\"388349\";\"Al Başrat al Qadīmah\";\"main\"\n\"388349\";\"Al Basrat al Qadimah\";\"ascii\"\n\"388349\";\"Al Basrah al Qadimah\";\"other\"\n\"388349\";\"Al Başrah al Qadīmah\";\"other\"\n\"388349\";\"البصرة القديمة\";\"other\"\n\"448149\";\"Sinjār\";\"main\"\n\"448149\";\"Sinjar\";\"ascii\"\n\"448149\";\"سنجار\";\"other\"\n\"7097617\";\"Nāḩiyat Hīrān\";\"main\"\n\"7097617\";\"Nahiyat Hiran\";\"ascii\"\n\"7097617\";\"nahyt hyran\";\"other\"\n\"7097617\";\"ناحية هيران\";\"other\"\n\"7097618\";\"Markaz Nāḩiyat Khūshān\";\"main\"\n\"7097618\";\"Markaz Nahiyat Khushan\";\"ascii\"\n\"7097618\";\"Khoshnaw\";\"other\"\n\"7097618\";\"Xoshnaw\";\"other\"\n\"7097618\";\"mrkz nahyt khwshan\";\"other\"\n\"7097618\";\"خۆشناو\";\"other\"\n\"7097618\";\"مركز ناحية خوشان\";\"other\"\n\"7326104\";\"Nāḩiyat Baḩār\";\"main\"\n\"7326104\";\"Nahiyat Bahar\";\"ascii\"\n\"7326104\";\"ناحية بحار\";\"other\"\n\"7326105\";\"Nāḩiyat ‘Atbah\";\"main\"\n\"7326105\";\"Nahiyat `Atbah\";\"ascii\"\n\"7326105\";\"ناحية عتبة\";\"other\"\n\"7374646\";\"Nāḩiyat Alī ash Sharqī\";\"main\"\n\"7374646\";\"Nahiyat Ali ash Sharqi\";\"ascii\"\n\"7374646\";\"Ali ash Sharqi\";\"other\"\n\"7374646\";\"Alī ash Sharqī\";\"other\"\n\"7374646\";\"علي الشرقي\";\"other\"\n\"7374646\";\"ناحية علي الشرقي\";\"other\"\n\"14256\";\"Āzādshahr\";\"main\"\n\"14256\";\"Azadshahr\";\"ascii\"\n\"14256\";\"Azad Shahr\";\"other\"\n\"14256\";\"آزادشهر\";\"other\"\n\"23814\";\"Kahrīz\";\"main\"\n\"23814\";\"Kahriz\";\"ascii\"\n\"23814\";\"کهریز\";\"other\"\n\"24851\";\"Nūrābād\";\"main\"\n\"24851\";\"Nurabad\";\"ascii\"\n\"24851\";\"nwr abad\";\"other\"\n\"24851\";\"Нурабад\";\"other\"\n\"24851\";\"نور آباد\";\"other\"\n\"32723\";\"Īstgāh-e Rāh Āhan-e Garmsār\";\"main\"\n\"32723\";\"Istgah-e Rah Ahan-e Garmsar\";\"ascii\"\n\"32723\";\"Istgah-e Garmsar\";\"other\"\n\"32723\";\"Istgah-e Rah Ahan Garmsar\";\"other\"\n\"32723\";\"ystgahi garmsar\";\"other\"\n\"32723\";\"ystgahi rah ahan garmsar\";\"other\"\n\"32723\";\"ystgahi rahahani garmsar\";\"other\"\n\"32723\";\"Īstgāh-e Garmsār\";\"other\"\n\"32723\";\"Īstgāh-e Rāh Āhan Garmsār\";\"other\"\n\"32723\";\"يستگاهِ راه آهَن گَرمسار\";\"other\"\n\"32723\";\"يستگاهِ راهاهَنِ گَرمسار\";\"other\"\n\"32723\";\"يستگاهِ گَرمسار\";\"other\"\n\"32767\";\"Qarchak\";\"main\"\n\"32767\";\"Qareh Chak\";\"other\"\n\"32767\";\"qarih chak\";\"other\"\n\"32767\";\"قرچك\";\"other\"\n\"32767\";\"قَرِه چَك\";\"other\"\n\"41210\";\"Khorram Darreh\";\"main\"\n\"41210\";\"khrm drh\";\"other\"\n\"41210\";\"خرم درّه\";\"other\"\n\"110831\";\"Shāh Pasand\";\"main\"\n\"110831\";\"Shah Pasand\";\"ascii\"\n\"110831\";\"Azad Shahr\";\"other\"\n\"110831\";\"Āzād Shahr\";\"other\"\n\"110831\";\"آزاد شهر\";\"other\"\n\"110831\";\"شاه پسند\";\"other\"\n\"111421\";\"Zarand\";\"main\"\n\"111453\";\"Zanjān\";\"main\"\n\"111453\";\"Zanjan\";\"ascii\"\n\"111453\";\"Zendzhan\";\"other\"\n\"111453\";\"Zenjan\";\"other\"\n\"111453\";\"Zenjān\";\"other\"\n\"111453\";\"znjan\";\"other\"\n\"111453\";\"Зенджан\";\"other\"\n\"111453\";\"زنجان\";\"other\"\n\"111822\";\"Yazd\";\"main\"\n\"111822\";\"Jazd\";\"other\"\n\"111822\";\"Jazdo\";\"other\"\n\"111822\";\"Jezd\";\"other\"\n\"111822\";\"Yezd\";\"other\"\n\"111822\";\"iazdi\";\"other\"\n\"111822\";\"yazd\";\"other\"\n\"111822\";\"yizd\";\"other\"\n\"111822\";\"yzd\";\"other\"\n\"111822\";\"Йезд\";\"other\"\n\"111822\";\"Язд\";\"other\"\n\"111822\";\"יזד\";\"other\"\n\"111822\";\"يَزد\";\"other\"\n\"111822\";\"يِزد\";\"other\"\n\"111822\";\"یزد\";\"other\"\n\"111822\";\"იაზდი\";\"other\"\n\"112214\";\"Varāmīn\";\"main\"\n\"112214\";\"Varamin\";\"ascii\"\n\"112214\";\"Veramin\";\"other\"\n\"112214\";\"Verāmin\";\"other\"\n\"112214\";\"varamin\";\"other\"\n\"112214\";\"Варамин\";\"other\"\n\"112214\";\"ورامين\";\"other\"\n\"112646\";\"Torbat-e Ḩeydarīyeh\";\"main\"\n\"112646\";\"Torbat-e Heydariyeh\";\"ascii\"\n\"112646\";\"Torbat-e-Heydari\";\"other\"\n\"112646\";\"Turbat-i-Haidari\";\"other\"\n\"112646\";\"Turbet-i-Haidari\";\"other\"\n\"112646\";\"تربت حیدریه\";\"other\"\n\"112656\";\"Tonekābon\";\"main\"\n\"112656\";\"Tonekabon\";\"ascii\"\n\"112656\";\"Shahsavar\";\"other\"\n\"112656\";\"Shahsavār\";\"other\"\n\"112656\";\"Shahsawar\";\"other\"\n\"112656\";\"Shahsawār\";\"other\"\n\"112656\";\"shahsawar\";\"other\"\n\"112656\";\"tunikabun\";\"other\"\n\"112656\";\"Тонекабон\";\"other\"\n\"112656\";\"تُنِكابُن\";\"other\"\n\"112656\";\"شَهسَوار\";\"other\"\n\"112931\";\"Tehrān\";\"main\"\n\"112931\";\"Tehran\";\"ascii\"\n\"112931\";\"Taekhran\";\"other\"\n\"112931\";\"Tahran\";\"other\"\n\"112931\";\"Techerane\";\"other\"\n\"112931\";\"Teera\";\"other\"\n\"112931\";\"Teerao\";\"other\"\n\"112931\";\"Teerã\";\"other\"\n\"112931\";\"Teerão\";\"other\"\n\"112931\";\"Tegeran\";\"other\"\n\"112931\";\"Teheran\";\"other\"\n\"112931\";\"Teheran - thran\";\"other\"\n\"112931\";\"Teherana\";\"other\"\n\"112931\";\"Teheranas\";\"other\"\n\"112931\";\"Teherano\";\"other\"\n\"112931\";\"Teherán\";\"other\"\n\"112931\";\"Teherán - تهران\";\"other\"\n\"112931\";\"Teherāna\";\"other\"\n\"112931\";\"Tehrano\";\"other\"\n\"112931\";\"Tekheran\";\"other\"\n\"112931\";\"Téhéran\";\"other\"\n\"112931\";\"de hei lan\";\"other\"\n\"112931\";\"teharan\";\"other\"\n\"112931\";\"teharana\";\"other\"\n\"112931\";\"tehelan\";\"other\"\n\"112931\";\"teheran\";\"other\"\n\"112931\";\"tehran\";\"other\"\n\"112931\";\"teirani\";\"other\"\n\"112931\";\"thran\";\"other\"\n\"112931\";\"thrn\";\"other\"\n\"112931\";\"thrwn\";\"other\"\n\"112931\";\"tihiran\";\"other\"\n\"112931\";\"tihran\";\"other\"\n\"112931\";\"Τεχεράνη\";\"other\"\n\"112931\";\"Тæхран\";\"other\"\n\"112931\";\"Тегеран\";\"other\"\n\"112931\";\"Техеран\";\"other\"\n\"112931\";\"Теҳрон\";\"other\"\n\"112931\";\"Թեհրան\";\"other\"\n\"112931\";\"טהראן\";\"other\"\n\"112931\";\"טהרן\";\"other\"\n\"112931\";\"تهران\";\"other\"\n\"112931\";\"تهرون\";\"other\"\n\"112931\";\"تِهران\";\"other\"\n\"112931\";\"تِهِرَن\";\"other\"\n\"112931\";\"تہران\";\"other\"\n\"112931\";\"طهران\";\"other\"\n\"112931\";\"ܜܗܪܢ\";\"other\"\n\"112931\";\"तेहरान\";\"other\"\n\"112931\";\"তেহরান\";\"other\"\n\"112931\";\"டெஹ்ரான்\";\"other\"\n\"112931\";\"เตหะราน\";\"other\"\n\"112931\";\"ཐེ་ཧེ་རན\";\"other\"\n\"112931\";\"თეირანი\";\"other\"\n\"112931\";\"ቴህራን\";\"other\"\n\"112931\";\"テヘラン\";\"other\"\n\"112931\";\"德黑兰\";\"other\"\n\"112931\";\"테헤란\";\"other\"\n\"113343\";\"Hashtpar\";\"main\"\n\"113343\";\"Gashpar\";\"other\"\n\"113343\";\"Hashtpar-e Tavalesh\";\"other\"\n\"113343\";\"Otak Saray\";\"other\"\n\"113343\";\"Otaq Sarai\";\"other\"\n\"113343\";\"Otaq Saray\";\"other\"\n\"113343\";\"Otāq Sarai\";\"other\"\n\"113343\";\"Oţāq Sarāy\";\"other\"\n\"113343\";\"Talesh\";\"other\"\n\"113343\";\"Tālesh\";\"other\"\n\"113343\";\"هشتپر\";\"other\"\n\"113491\";\"Tākestān\";\"main\"\n\"113491\";\"Takestan\";\"ascii\"\n\"113491\";\"Seyadahan\";\"other\"\n\"113491\";\"Seyādahan\";\"other\"\n\"113491\";\"Siadehan\";\"other\"\n\"113491\";\"Siahdehan\";\"other\"\n\"113491\";\"Siakh-Degen\";\"other\"\n\"113491\";\"Siakhdekhan\";\"other\"\n\"113491\";\"Sīahdehān\";\"other\"\n\"113491\";\"Sīādehan\";\"other\"\n\"113491\";\"Takistan\";\"other\"\n\"113491\";\"Tākistān\";\"other\"\n\"113491\";\"siadahan\";\"other\"\n\"113491\";\"syadihan\";\"other\"\n\"113491\";\"syahdihan\";\"other\"\n\"113491\";\"takstan\";\"other\"\n\"113491\";\"تاكستان\";\"other\"\n\"113491\";\"سيادِهَن\";\"other\"\n\"113491\";\"سيَهدِهان\";\"other\"\n\"113491\";\"سِيادَهَن\";\"other\"\n\"113508\";\"Takāb\";\"main\"\n\"113508\";\"Takab\";\"ascii\"\n\"113508\";\"Takan Tepe\";\"other\"\n\"113508\";\"تکاب\";\"other\"\n\"113632\";\"Taft\";\"main\"\n\"113632\";\"taft\";\"other\"\n\"113632\";\"Тафт\";\"other\"\n\"113632\";\"تَفت\";\"other\"\n\"113636\";\"Tafresh\";\"main\"\n\"113636\";\"Тафреш\";\"other\"\n\"113636\";\"تفرش\";\"other\"\n\"113646\";\"Tabrīz\";\"main\"\n\"113646\";\"Tabriz\";\"ascii\"\n\"113646\";\"Tabríz\";\"other\"\n\"113646\";\"Taebris\";\"other\"\n\"113646\";\"Tauris\";\"other\"\n\"113646\";\"Tebriz\";\"other\"\n\"113646\";\"Täbris\";\"other\"\n\"113646\";\"Təbriz\";\"other\"\n\"113646\";\"da bu li shi\";\"other\"\n\"113646\";\"tabryz\";\"other\"\n\"113646\";\"taburizu\";\"other\"\n\"113646\";\"tbryz\";\"other\"\n\"113646\";\"Тебриз\";\"other\"\n\"113646\";\"تبريز\";\"other\"\n\"113646\";\"تبریز\";\"other\"\n\"113646\";\"تَبريز\";\"other\"\n\"113646\";\"タブリーズ\";\"other\"\n\"113646\";\"大不里士\";\"other\"\n\"113659\";\"Ţabas\";\"main\"\n\"113659\";\"Tabas\";\"ascii\"\n\"113659\";\"Golshan\";\"other\"\n\"113659\";\"Gulshan\";\"other\"\n\"113659\";\"Табас\";\"other\"\n\"114049\";\"Sonqor\";\"main\"\n\"114049\";\"Sanghur\";\"other\"\n\"114049\";\"Sanghūr\";\"other\"\n\"114049\";\"Sunqur\";\"other\"\n\"114049\";\"Sūnqūr\";\"other\"\n\"114049\";\"سنقر\";\"other\"\n\"114259\";\"Sīrjān\";\"main\"\n\"114259\";\"Sirjan\";\"ascii\"\n\"114259\";\"Sa`idabad\";\"other\"\n\"114259\";\"Sa‘īdābād\";\"other\"\n\"114259\";\"Sirdschan\";\"other\"\n\"114259\";\"سیرجان\";\"other\"\n\"114584\";\"Shūshtar\";\"main\"\n\"114584\";\"Shushtar\";\"ascii\"\n\"114584\";\"Shooshtar\";\"other\"\n\"114584\";\"Shushtehr\";\"other\"\n\"114584\";\"Shustar\";\"other\"\n\"114584\";\"Shūstar\";\"other\"\n\"114584\";\"Шуштэр\";\"other\"\n\"114584\";\"شوشتر\";\"other\"\n\"114593\";\"Shūsh\";\"main\"\n\"114593\";\"Shush\";\"ascii\"\n\"114593\";\"Shoosh\";\"other\"\n\"114593\";\"Susa\";\"other\"\n\"114593\";\"Suse\";\"other\"\n\"114593\";\"Susy\";\"other\"\n\"114593\";\"Suza\";\"other\"\n\"114593\";\"Suzo\";\"other\"\n\"114593\";\"Suzy\";\"other\"\n\"114593\";\"Súsy\";\"other\"\n\"114593\";\"Sūsa\";\"other\"\n\"114593\";\"susa\";\"other\"\n\"114593\";\"Сузы\";\"other\"\n\"114593\";\"شوش\";\"other\"\n\"114593\";\"スーサ\";\"other\"\n\"115019\";\"Shīrāz\";\"main\"\n\"115019\";\"Shiraz\";\"ascii\"\n\"115019\";\"Chimaz\";\"other\"\n\"115019\";\"Chiraz\";\"other\"\n\"115019\";\"Schiras\";\"other\"\n\"115019\";\"Siraz\";\"other\"\n\"115019\";\"Sirâz\";\"other\"\n\"115019\";\"Шираз\";\"other\"\n\"115019\";\"شیراز\";\"other\"\n\"115770\";\"Shahr-e Kord\";\"main\"\n\"115770\";\"Sahr-e Kord\";\"other\"\n\"115770\";\"Shahr Kord\";\"other\"\n\"115770\";\"Shahr Kurd\";\"other\"\n\"115770\";\"Shakhre-Kord\";\"other\"\n\"115770\";\"sahri kurd\";\"other\"\n\"115770\";\"Шахре-Корд\";\"other\"\n\"115770\";\"سَهرِ كُرد\";\"other\"\n\"115770\";\"شهر كرد\";\"other\"\n\"115770\";\"شَهرِ كُرد\";\"other\"\n\"115781\";\"Shahr-e Bābak\";\"main\"\n\"115781\";\"Shahr-e Babak\";\"ascii\"\n\"115781\";\"Shahr Babak\";\"other\"\n\"115781\";\"Shahr Bābak\";\"other\"\n\"115781\";\"Shahr-i-Babak\";\"other\"\n\"115781\";\"Shahr-i-Bābak\";\"other\"\n\"115781\";\"شهر بابک\";\"other\"\n\"116102\";\"Shādegān\";\"main\"\n\"116102\";\"Shadegan\";\"ascii\"\n\"116102\";\"Fallabiyeh\";\"other\"\n\"116102\";\"Fallahiyeh\";\"other\"\n\"116102\";\"Fallehiyeh\";\"other\"\n\"116102\";\"Fallābīyeh\";\"other\"\n\"116102\";\"Fallāḩīyeh\";\"other\"\n\"116102\";\"Shadeganskie\";\"other\"\n\"116102\";\"Shadgan\";\"other\"\n\"116102\";\"Shādgān\";\"other\"\n\"116102\";\"Шадеганские\";\"other\"\n\"116102\";\"شادگان\";\"other\"\n\"116402\";\"Semnān\";\"main\"\n\"116402\";\"Semnan\";\"ascii\"\n\"116402\";\"Samnan\";\"other\"\n\"116402\";\"Samnān\";\"other\"\n\"116402\";\"samnan\";\"other\"\n\"116402\";\"smnan\";\"other\"\n\"116402\";\"Семнан\";\"other\"\n\"116402\";\"سمنان\";\"other\"\n\"116402\";\"سَمنان\";\"other\"\n\"116406\";\"Semīrom\";\"main\"\n\"116406\";\"Semirom\";\"ascii\"\n\"116667\";\"Sāveh\";\"main\"\n\"116667\";\"Saveh\";\"ascii\"\n\"116667\";\"Sava\";\"other\"\n\"116667\";\"sawih\";\"other\"\n\"116667\";\"Сава\";\"other\"\n\"116667\";\"ساوِه\";\"other\"\n\"116996\";\"Sārī\";\"main\"\n\"116996\";\"Sari\";\"ascii\"\n\"116996\";\"Sari i Iran\";\"other\"\n\"116996\";\"Sariyo\";\"other\"\n\"116996\";\"Shahr-i-Tajan\";\"other\"\n\"116996\";\"Shari-i-Tajan\";\"other\"\n\"116996\";\"Sári\";\"other\"\n\"116996\";\"sa li shi\";\"other\"\n\"116996\";\"sari\";\"other\"\n\"116996\";\"iran\";\"other\"\n\"116996\";\"sary\";\"other\"\n\"116996\";\"Σάρι\";\"other\"\n\"116996\";\"Сари\";\"other\"\n\"116996\";\"ساري\";\"other\"\n\"116996\";\"ساری\";\"other\"\n\"116996\";\"サリー、イラン\";\"other\"\n\"116996\";\"薩里市\";\"other\"\n\"117392\";\"Saqqez\";\"main\"\n\"117392\";\"Saghez\";\"other\"\n\"117392\";\"Sakezo\";\"other\"\n\"117392\";\"Sakiz\";\"other\"\n\"117392\";\"Sakīz\";\"other\"\n\"117392\";\"Saqqez (2)\";\"other\"\n\"117392\";\"Saqqiz\";\"other\"\n\"117392\";\"Seqiz\";\"other\"\n\"117392\";\"saghiz\";\"other\"\n\"117392\";\"sakyz\";\"other\"\n\"117392\";\"saqiz\";\"other\"\n\"117392\";\"sqz\";\"other\"\n\"117392\";\"sqz (1)\";\"other\"\n\"117392\";\"sqz (2)\";\"other\"\n\"117392\";\"سقز\";\"other\"\n\"117392\";\"سقّز (1)\";\"other\"\n\"117392\";\"سقّز (٢)\";\"other\"\n\"117392\";\"سَغِز\";\"other\"\n\"117392\";\"سَقِّز\";\"other\"\n\"117392\";\"سَكيز\";\"other\"\n\"117574\";\"Sanandaj\";\"main\"\n\"117574\";\"Sanandadsch\";\"other\"\n\"117574\";\"Sanandadz\";\"other\"\n\"117574\";\"Sanandadż\";\"other\"\n\"117574\";\"Senendedzh\";\"other\"\n\"117574\";\"Senna\";\"other\"\n\"117574\";\"Senneh\";\"other\"\n\"117574\";\"Sinandij\";\"other\"\n\"117574\";\"Sine\";\"other\"\n\"117574\";\"Sinneh\";\"other\"\n\"117574\";\"sanandaj\";\"other\"\n\"117574\";\"sina\";\"other\"\n\"117574\";\"sinih\";\"other\"\n\"117574\";\"Санандаҷ\";\"other\"\n\"117574\";\"Сенендедж\";\"other\"\n\"117574\";\"سنندج\";\"other\"\n\"117574\";\"سَنَندَج\";\"other\"\n\"117574\";\"سِنَّ\";\"other\"\n\"117574\";\"سِنِّه\";\"other\"\n\"117656\";\"Salmās\";\"main\"\n\"117656\";\"Salmas\";\"ascii\"\n\"117656\";\"Dilmagan\";\"other\"\n\"117656\";\"Dilman\";\"other\"\n\"117656\";\"Dīlmagān\";\"other\"\n\"117656\";\"Dīlman\";\"other\"\n\"117656\";\"Shahpoor\";\"other\"\n\"117656\";\"Shahpur\";\"other\"\n\"117656\";\"Shapur\";\"other\"\n\"117656\";\"Shāhpūr\";\"other\"\n\"117656\";\"Салмас\";\"other\"\n\"117656\";\"سلماس\";\"other\"\n\"117793\";\"Shāhīn Dezh\";\"main\"\n\"117793\";\"Shahin Dezh\";\"ascii\"\n\"117793\";\"Sa'in Dezh\";\"other\"\n\"117793\";\"Sa'in Qal`eh\";\"other\"\n\"117793\";\"Sahin Dazh\";\"other\"\n\"117793\";\"Sain Kaleh\";\"other\"\n\"117793\";\"Sāīn Kaleh\";\"other\"\n\"117793\";\"Şā'īn Dezh\";\"other\"\n\"117793\";\"Şā'īn Qal`eh\";\"other\"\n\"118063\";\"Sabzevār\";\"main\"\n\"118063\";\"Sabzevar\";\"ascii\"\n\"118063\";\"Sabzawar\";\"other\"\n\"118063\";\"Sabzawār\";\"other\"\n\"118063\";\"Sebzevar\";\"other\"\n\"118063\";\"Себзевар\";\"other\"\n\"118063\";\"سبزوار\";\"other\"\n\"118191\";\"Rūdsar\";\"main\"\n\"118191\";\"Rudsar\";\"ascii\"\n\"118191\";\"Rud-i-Sar\";\"other\"\n\"118191\";\"Rūd-i-Sar\";\"other\"\n\"118367\";\"Robāţ Karīm\";\"main\"\n\"118367\";\"Robat Karim\";\"ascii\"\n\"118367\";\"Shahriar\";\"other\"\n\"118367\";\"Shahryar\";\"other\"\n\"118367\";\"Shahryār\";\"other\"\n\"118367\";\"rbat krym\";\"other\"\n\"118367\";\"shahryar\";\"other\"\n\"118367\";\"رباط كريم\";\"other\"\n\"118367\";\"شَهريار\";\"other\"\n\"118704\";\"Rāvar\";\"main\"\n\"118704\";\"Ravar\";\"ascii\"\n\"118743\";\"Rasht\";\"main\"\n\"118743\";\"Rashjt\";\"other\"\n\"118743\";\"Rast\";\"other\"\n\"118743\";\"Rašt\";\"other\"\n\"118743\";\"Resht\";\"other\"\n\"118743\";\"Reszt\";\"other\"\n\"118743\";\"la shen te\";\"other\"\n\"118743\";\"Решт\";\"other\"\n\"118743\";\"رشت\";\"other\"\n\"118743\";\"拉什特\";\"other\"\n\"118805\";\"Rāmshīr\";\"main\"\n\"118805\";\"Ramshir\";\"ascii\"\n\"118805\";\"Khalafabad\";\"other\"\n\"118805\";\"Khalafābād\";\"other\"\n\"118805\";\"Khalas Abad\";\"other\"\n\"118805\";\"Ram Shahr\";\"other\"\n\"118805\";\"رامشیر\";\"other\"\n\"118826\";\"Rāmhormoz\";\"main\"\n\"118826\";\"Ramhormoz\";\"ascii\"\n\"118826\";\"Ram Hormuz\";\"other\"\n\"118826\";\"Ramuz\";\"other\"\n\"118826\";\"Rām Hormuz\";\"other\"\n\"118826\";\"Rāmuz\";\"other\"\n\"118826\";\"رامهرمز\";\"other\"\n\"118994\";\"Rafsanjān\";\"main\"\n\"118994\";\"Rafsanjan\";\"ascii\"\n\"118994\";\"Bahramabad\";\"other\"\n\"118994\";\"Bahrāmābād\";\"other\"\n\"118994\";\"Rafsandzhane\";\"other\"\n\"118994\";\"Rafsinjan\";\"other\"\n\"118994\";\"Rafsinjān\";\"other\"\n\"118994\";\"Рафсанджане\";\"other\"\n\"118994\";\"رفسنجان\";\"other\"\n\"119115\";\"Qūchān\";\"main\"\n\"119115\";\"Quchan\";\"ascii\"\n\"119115\";\"Gochan\";\"other\"\n\"119115\";\"قوچان\";\"other\"\n\"119161\";\"Qorveh\";\"main\"\n\"119161\";\"Qurve\";\"other\"\n\"119161\";\"Qurveh\";\"other\"\n\"119161\";\"qrwh\";\"other\"\n\"119161\";\"قروه\";\"other\"\n\"119208\";\"Qom\";\"main\"\n\"119208\";\"Ghom\";\"other\"\n\"119208\";\"Kum\";\"other\"\n\"119208\";\"Qum\";\"other\"\n\"119208\";\"ghum\";\"other\"\n\"119208\";\"komu\";\"other\"\n\"119208\";\"qm\";\"other\"\n\"119208\";\"Кум\";\"other\"\n\"119208\";\"Қум\";\"other\"\n\"119208\";\"غُم\";\"other\"\n\"119208\";\"قم\";\"other\"\n\"119208\";\"コム\";\"other\"\n\"119374\";\"Qeshm\";\"main\"\n\"119374\";\"Bandar-e Qeshm\";\"other\"\n\"119374\";\"Keshm\";\"other\"\n\"119374\";\"Qishm\";\"other\"\n\"119374\";\"bandari qishm\";\"other\"\n\"119374\";\"qshm\";\"other\"\n\"119374\";\"Кешм\";\"other\"\n\"119374\";\"بَندَرِ قِشم\";\"other\"\n\"119374\";\"قشم\";\"other\"\n\"119505\";\"Qazvīn\";\"main\"\n\"119505\";\"Qazvin\";\"ascii\"\n\"119505\";\"Kazvin\";\"other\"\n\"119505\";\"Kazwin\";\"other\"\n\"119505\";\"kaza~tsuvu~in\";\"other\"\n\"119505\";\"qzwyn\";\"other\"\n\"119505\";\"Казвин\";\"other\"\n\"119505\";\"قزوين\";\"other\"\n\"119505\";\"قزوین\";\"other\"\n\"119505\";\"カザッヴィーン\";\"other\"\n\"119730\";\"Qarah Ẕīā' od Dīn\";\"main\"\n\"119730\";\"Qarah Zia' od Din\";\"ascii\"\n\"119730\";\"Ghareh Ziya' Oddin\";\"other\"\n\"119730\";\"Ghareh Ziya’ Oddin\";\"other\"\n\"119730\";\"Qara Zia ud Din\";\"other\"\n\"119730\";\"Qara Zīa ud Dīn\";\"other\"\n\"119730\";\"Qaraziadin\";\"other\"\n\"119730\";\"Qareh Zeya ed Din\";\"other\"\n\"119730\";\"Qareh Zeyā ed Dīn\";\"other\"\n\"119730\";\"Qareh Zia' od Din\";\"other\"\n\"119730\";\"Qareh Ziya 'Eddin\";\"other\"\n\"119730\";\"Qareh Zīyā ’Eddīn\";\"other\"\n\"119730\";\"Qareh Ẕīā' od Dīn\";\"other\"\n\"119730\";\"قره ضیاء الدین\";\"other\"\n\"120678\";\"Farrokh Shahr\";\"main\"\n\"120678\";\"Qahferokh\";\"other\"\n\"120678\";\"Qahofrokh\";\"other\"\n\"120678\";\"Qatarokh\";\"other\"\n\"120678\";\"Qehfarukh\";\"other\"\n\"120678\";\"qatarukh\";\"other\"\n\"120678\";\"فرخ شهر\";\"other\"\n\"120678\";\"فرّخ شهر\";\"other\"\n\"120678\";\"قهفرخ\";\"other\"\n\"120678\";\"قَتَرُخ\";\"other\"\n\"120678\";\"قَهفِرُخ\";\"other\"\n\"120678\";\"قَهُفرُخ\";\"other\"\n\"120694\";\"Qāyen\";\"main\"\n\"120694\";\"Qayen\";\"ascii\"\n\"120694\";\"Qa'en\";\"other\"\n\"120694\";\"Qain\";\"other\"\n\"120694\";\"Qaīn\";\"other\"\n\"120694\";\"Qā’en\";\"other\"\n\"120694\";\"Shahr-e Qayen\";\"other\"\n\"120694\";\"Shahr-e Qāyen\";\"other\"\n\"120694\";\"قاین\";\"other\"\n\"120931\";\"Sarpol-e Z̄ahāb\";\"main\"\n\"120931\";\"Sarpol-e Zahab\";\"ascii\"\n\"120931\";\"Pol-e Zahab\";\"other\"\n\"120931\";\"Pol-e Zohab\";\"other\"\n\"120931\";\"Pol-e Z̄ahāb\";\"other\"\n\"120931\";\"Pol-e Z̄ohāb\";\"other\"\n\"120931\";\"Sar-e Pol-e Zahab\";\"other\"\n\"120931\";\"Sar-e Pol-e Z̄ahāb\";\"other\"\n\"120931\";\"Sar-i-Pul Zuhab\";\"other\"\n\"120931\";\"Sar-ī-Pūl Zūhāb\";\"other\"\n\"120931\";\"Sari-Pul\";\"other\"\n\"120931\";\"Sarpol\";\"other\"\n\"120931\";\"Sarī-Pūl\";\"other\"\n\"120931\";\"سر پل ذهاب\";\"other\"\n\"120972\";\"Pīshvā\";\"main\"\n\"120972\";\"Pishva\";\"ascii\"\n\"120972\";\"Emamzadeh Ja`far\";\"other\"\n\"120972\";\"Emāmzādeh Ja‘far\";\"other\"\n\"120972\";\"Pichva\";\"other\"\n\"120972\";\"Pishvah\";\"other\"\n\"120972\";\"Pishyan\";\"other\"\n\"120972\";\"Pīchvā\";\"other\"\n\"120972\";\"Pīshvah\";\"other\"\n\"120972\";\"Pīshyān\";\"other\"\n\"120972\";\"pychwa\";\"other\"\n\"120972\";\"pyshwa\";\"other\"\n\"120972\";\"pyshwah\";\"other\"\n\"120972\";\"pyshyan\";\"other\"\n\"120972\";\"اِمامزادِه جَعفَر\";\"other\"\n\"120972\";\"پيشوا\";\"other\"\n\"120972\";\"پيشوَه\";\"other\"\n\"120972\";\"پيشيان\";\"other\"\n\"120972\";\"پيچوا\";\"other\"\n\"121110\";\"Pīrānshahr\";\"main\"\n\"121110\";\"Piranshahr\";\"ascii\"\n\"121110\";\"Khaneh\";\"other\"\n\"121110\";\"Khāneh\";\"other\"\n\"121110\";\"Piran Shahr\";\"other\"\n\"121110\";\"Pīrān Shahr\";\"other\"\n\"121110\";\"pyranshhr\";\"other\"\n\"121110\";\"پیرانشهر\";\"other\"\n\"121240\";\"Pāveh\";\"main\"\n\"121240\";\"Paveh\";\"ascii\"\n\"121240\";\"Pawah\";\"other\"\n\"121240\";\"Paweh\";\"other\"\n\"121240\";\"Pāweh\";\"other\"\n\"121240\";\"پاوه\";\"other\"\n\"121380\";\"Pārsābād\";\"main\"\n\"121380\";\"Parsabad\";\"ascii\"\n\"121380\";\"Farsabad\";\"other\"\n\"121380\";\"Fārsābād\";\"other\"\n\"121380\";\"fars abad\";\"other\"\n\"121380\";\"pars abad\";\"other\"\n\"121380\";\"Парсабад\";\"other\"\n\"121380\";\"فارس آباد\";\"other\"\n\"121380\";\"پارس آباد\";\"other\"\n\"121795\";\"Oshnavīyeh\";\"main\"\n\"121795\";\"Oshnaviyeh\";\"ascii\"\n\"121795\";\"Ashnooyeh\";\"other\"\n\"121795\";\"Oshnovieh\";\"other\"\n\"121795\";\"Oshnoviyeh\";\"other\"\n\"121795\";\"Oshnovīeh\";\"other\"\n\"121795\";\"Oshnovīyeh\";\"other\"\n\"121795\";\"Oshnuje\";\"other\"\n\"121795\";\"Ushnu\";\"other\"\n\"121795\";\"Ushnuiyeh\";\"other\"\n\"121795\";\"Ushnū\";\"other\"\n\"121795\";\"Ushnūīyeh\";\"other\"\n\"121795\";\"Ошнуйе\";\"other\"\n\"121795\";\"اشنویه\";\"other\"\n\"121795\";\"اشنویّه\";\"other\"\n\"121801\";\"Orūmīyeh\";\"main\"\n\"121801\";\"Orumiyeh\";\"ascii\"\n\"121801\";\"Orumieh\";\"other\"\n\"121801\";\"Reza'iyeh\";\"other\"\n\"121801\";\"Rezaeyeh\";\"other\"\n\"121801\";\"Rezaiyye\";\"other\"\n\"121801\";\"Rezâiyye\";\"other\"\n\"121801\";\"Rezā’īyeh\";\"other\"\n\"121801\";\"Rizaiyeh\";\"other\"\n\"121801\";\"Rizāiyeh\";\"other\"\n\"121801\";\"Urmia\";\"other\"\n\"121801\";\"Urmija\";\"other\"\n\"121801\";\"Urmiye\";\"other\"\n\"121801\";\"Urmiyə\";\"other\"\n\"121801\";\"Urmía\";\"other\"\n\"121801\";\"Urumija\";\"other\"\n\"121801\";\"Urumiyeh\";\"other\"\n\"121801\";\"Urūmiyeh\";\"other\"\n\"121801\";\"arwmyh\";\"other\"\n\"121801\";\"arwmyt\";\"other\"\n\"121801\";\"shhrstan arwmyh\";\"other\"\n\"121801\";\"Урмия\";\"other\"\n\"121801\";\"Урумия\";\"other\"\n\"121801\";\"אורמיה\";\"other\"\n\"121801\";\"أرومية\";\"other\"\n\"121801\";\"ارومیه\";\"other\"\n\"121801\";\"ارومیّه\";\"other\"\n\"121801\";\"شهرستان ارومیه\";\"other\"\n\"121801\";\"ܐܘܪܡܝܐ\";\"other\"\n\"121861\";\"Omīdīyeh\";\"main\"\n\"121861\";\"Omidiyeh\";\"ascii\"\n\"121861\";\"Omidiyeh Sherkat-e Naft\";\"other\"\n\"121861\";\"Omīdīyeh Sherkat-e Naft\";\"other\"\n\"121861\";\"Sherkat-e Naft\";\"other\"\n\"121925\";\"Nūrābād\";\"main\"\n\"121925\";\"Nurabad\";\"ascii\"\n\"121925\";\"نور آباد\";\"other\"\n\"122285\";\"Neyshābūr\";\"main\"\n\"122285\";\"Neyshabur\";\"ascii\"\n\"122285\";\"Nejsaburo\";\"other\"\n\"122285\";\"Nejŝaburo\";\"other\"\n\"122285\";\"Nichapur\";\"other\"\n\"122285\";\"Nisabur\";\"other\"\n\"122285\";\"Nischapur\";\"other\"\n\"122285\";\"Nishabur\";\"other\"\n\"122285\";\"Nishapur\";\"other\"\n\"122285\";\"Nishopur\";\"other\"\n\"122285\";\"Nişabur\";\"other\"\n\"122285\";\"Nīshābūr\";\"other\"\n\"122285\";\"Nīshāpūr\";\"other\"\n\"122285\";\"nishapu\";\"other\"\n\"122285\";\"nysabwr\";\"other\"\n\"122285\";\"nyshapwr\";\"other\"\n\"122285\";\"Нишапур\";\"other\"\n\"122285\";\"Нишопур\";\"other\"\n\"122285\";\"نيسابور\";\"other\"\n\"122285\";\"نیشابور\";\"other\"\n\"122285\";\"نیشاپور\";\"other\"\n\"122285\";\"ニシャプー\";\"other\"\n\"122289\";\"Neyrīz\";\"main\"\n\"122289\";\"Neyriz\";\"ascii\"\n\"122289\";\"Niriz\";\"other\"\n\"122289\";\"Nīrīz\";\"other\"\n\"122289\";\"نیریز\";\"other\"\n\"122397\";\"Nekā’\";\"main\"\n\"122397\";\"Neka'\";\"ascii\"\n\"122397\";\"Naranj Bagh\";\"other\"\n\"122397\";\"Neka\";\"other\"\n\"122397\";\"Nekā\";\"other\"\n\"122397\";\"Nika\";\"other\"\n\"122397\";\"Nāranj Bāgh\";\"other\"\n\"122397\";\"Nīkā\";\"other\"\n\"122397\";\"naranj bagh\";\"other\"\n\"122397\";\"nika\";\"other\"\n\"122397\";\"nyka\";\"other\"\n\"122397\";\"Нека\";\"other\"\n\"122397\";\"نارَنج باغ\";\"other\"\n\"122397\";\"نكاء\";\"other\"\n\"122397\";\"نيكا\";\"other\"\n\"122397\";\"نِكا\";\"other\"\n\"122438\";\"Naz̧arābād\";\"main\"\n\"122438\";\"Nazarabad\";\"ascii\"\n\"122438\";\"Nazarabad-e Bozorg\";\"other\"\n\"122438\";\"Naz̧arābād-e Bozorg\";\"other\"\n\"122438\";\"nazarabadi buzurg\";\"other\"\n\"122438\";\"نظر آباد\";\"other\"\n\"122438\";\"نَظَرابادِ بُزُرگ\";\"other\"\n\"122698\";\"Naqadeh\";\"main\"\n\"122698\";\"Nagadeh\";\"other\"\n\"122698\";\"Naghadeh\";\"other\"\n\"122698\";\"Naghdeh\";\"other\"\n\"122698\";\"Nakhuda\";\"other\"\n\"122698\";\"Nākhuda\";\"other\"\n\"122698\";\"نقده\";\"other\"\n\"122915\";\"Nahāvand\";\"main\"\n\"122915\";\"Nahavand\";\"ascii\"\n\"122915\";\"Antiocheia\";\"other\"\n\"122915\";\"Nagavande\";\"other\"\n\"122915\";\"Nehavend\";\"other\"\n\"122915\";\"Nehāvend\";\"other\"\n\"122915\";\"Nihavand\";\"other\"\n\"122915\";\"Nīhāvand\";\"other\"\n\"122915\";\"nahawand\";\"other\"\n\"122915\";\"nihavu~ando\";\"other\"\n\"122915\";\"nihawind\";\"other\"\n\"122915\";\"nyhawand\";\"other\"\n\"122915\";\"Αντιόχεια\";\"other\"\n\"122915\";\"Нагаванде\";\"other\"\n\"122915\";\"نهاوند\";\"other\"\n\"122915\";\"نيهاوَند\";\"other\"\n\"122915\";\"نَهاوَند\";\"other\"\n\"122915\";\"نِهاوِند\";\"other\"\n\"122915\";\"ニハーヴァンド\";\"other\"\n\"123941\";\"Mīnāb\";\"main\"\n\"123941\";\"Minab\";\"ascii\"\n\"123941\";\"mynab\";\"other\"\n\"123941\";\"Минаб\";\"other\"\n\"123941\";\"ميناب\";\"other\"\n\"124085\";\"Mīāndowāb\";\"main\"\n\"124085\";\"Miandowab\";\"ascii\"\n\"124085\";\"Meyandoab\";\"other\"\n\"124085\";\"Meyāndoāb\";\"other\"\n\"124085\";\"Miandoab\";\"other\"\n\"124085\";\"Miandow Ab\";\"other\"\n\"124085\";\"Mianduab\";\"other\"\n\"124085\";\"Miyandoab\";\"other\"\n\"124085\";\"Miyanduab\";\"other\"\n\"124085\";\"Miyāndūāb\";\"other\"\n\"124085\";\"Mīyāndoāb\";\"other\"\n\"124085\";\"Mīāndow Āb\";\"other\"\n\"124085\";\"Mīāndoāb\";\"other\"\n\"124085\";\"Mīāndūāb\";\"other\"\n\"124085\";\"Миандоаб\";\"other\"\n\"124085\";\"میاندوآب\";\"other\"\n\"124193\";\"Meybod\";\"main\"\n\"124193\";\"Maibud\";\"other\"\n\"124193\";\"mibud\";\"other\"\n\"124193\";\"ميبد\";\"other\"\n\"124193\";\"مِيبُد\";\"other\"\n\"124274\";\"Mehrīz\";\"main\"\n\"124274\";\"Mehriz\";\"ascii\"\n\"124274\";\"mihryz\";\"other\"\n\"124274\";\"مِهريز\";\"other\"\n\"124291\";\"Mehrān\";\"main\"\n\"124291\";\"Mehran\";\"ascii\"\n\"124291\";\"Mansurabad\";\"other\"\n\"124291\";\"Mansūrābād\";\"other\"\n\"124291\";\"manswr abad\";\"other\"\n\"124291\";\"mhran\";\"other\"\n\"124291\";\"mihran\";\"other\"\n\"124291\";\"مهران\";\"other\"\n\"124291\";\"مَنسور آباد\";\"other\"\n\"124291\";\"مِهران\";\"other\"\n\"124620\";\"Masjed Soleymān\";\"main\"\n\"124620\";\"Masjed Soleyman\";\"ascii\"\n\"124620\";\"Masjed Soleiman\";\"other\"\n\"124620\";\"Masjed-e Soleyman\";\"other\"\n\"124620\";\"Masjed-e Soleymān\";\"other\"\n\"124620\";\"Masjid-i-Sulaiman\";\"other\"\n\"124620\";\"مسجد سلیمان\";\"other\"\n\"124647\";\"Bardsīr\";\"main\"\n\"124647\";\"Bardsir\";\"ascii\"\n\"124647\";\"Bardesir\";\"other\"\n\"124647\";\"Bardesīr\";\"other\"\n\"124647\";\"Deh-e Now-e Mashiz\";\"other\"\n\"124647\";\"Deh-e Now-e Mashīz\";\"other\"\n\"124647\";\"Mashiz\";\"other\"\n\"124647\";\"Mashīz\";\"other\"\n\"124647\";\"Mshiz\";\"other\"\n\"124647\";\"Qal`eh-ye Mashiz\";\"other\"\n\"124647\";\"Qal‘eh-ye Mashīz\";\"other\"\n\"124647\";\"بردسیر\";\"other\"\n\"124665\";\"Mashhad\";\"main\"\n\"124665\";\"Maschhad\";\"other\"\n\"124665\";\"Mashad\";\"other\"\n\"124665\";\"Mashado\";\"other\"\n\"124665\";\"Maŝhado\";\"other\"\n\"124665\";\"Mašhad\";\"other\"\n\"124665\";\"Meshed\";\"other\"\n\"124665\";\"Mesheda\";\"other\"\n\"124665\";\"Meshkhed\";\"other\"\n\"124665\";\"Meszhed\";\"other\"\n\"124665\";\"Meşhed\";\"other\"\n\"124665\";\"Mešheda\";\"other\"\n\"124665\";\"ma shen ha de\";\"other\"\n\"124665\";\"mashuhado\";\"other\"\n\"124665\";\"mshd\";\"other\"\n\"124665\";\"mshhd\";\"other\"\n\"124665\";\"Машҳад\";\"other\"\n\"124665\";\"Мешхед\";\"other\"\n\"124665\";\"משהד\";\"other\"\n\"124665\";\"مشهد\";\"other\"\n\"124665\";\"マシュハド\";\"other\"\n\"124665\";\"馬什哈德\";\"other\"\n\"124862\";\"Marand\";\"main\"\n\"124862\";\"Morand\";\"other\"\n\"124862\";\"mrnd\";\"other\"\n\"124862\";\"murand\";\"other\"\n\"124862\";\"Маранд\";\"other\"\n\"124862\";\"مرند\";\"other\"\n\"124862\";\"مَرَند\";\"other\"\n\"124862\";\"مُرَند\";\"other\"\n\"125185\";\"Malāyer\";\"main\"\n\"125185\";\"Malayer\";\"ascii\"\n\"125185\";\"Daulatabad\";\"other\"\n\"125185\";\"Daūlatābād\";\"other\"\n\"125185\";\"Dowlatabad\";\"other\"\n\"125185\";\"Dowlatābād\";\"other\"\n\"125185\";\"dawlat abad\";\"other\"\n\"125185\";\"dulat abad\";\"other\"\n\"125185\";\"malayir\";\"other\"\n\"125185\";\"دَولَت آباد\";\"other\"\n\"125185\";\"دُولَت آباد\";\"other\"\n\"125185\";\"ملایر\";\"other\"\n\"125185\";\"مَلايِر\";\"other\"\n\"125188\";\"Malārd\";\"main\"\n\"125188\";\"Malard\";\"ascii\"\n\"125188\";\"Malar\";\"other\"\n\"125188\";\"Malār\";\"other\"\n\"125188\";\"Melard\";\"other\"\n\"125188\";\"Melārd\";\"other\"\n\"125188\";\"malar\";\"other\"\n\"125188\";\"milard\";\"other\"\n\"125188\";\"mlard\";\"other\"\n\"125188\";\"ملارد\";\"other\"\n\"125188\";\"مَلار\";\"other\"\n\"125188\";\"مِلارد\";\"other\"\n\"125446\";\"Mahābād\";\"main\"\n\"125446\";\"Mahabad\";\"ascii\"\n\"125446\";\"Makhabad\";\"other\"\n\"125446\";\"Mehabad\";\"other\"\n\"125446\";\"Mehābād\";\"other\"\n\"125446\";\"Saujbulagh\";\"other\"\n\"125446\";\"Sāūjbulāgh\";\"other\"\n\"125446\";\"mah abad\";\"other\"\n\"125446\";\"mhabad\";\"other\"\n\"125446\";\"mih abad\";\"other\"\n\"125446\";\"Махабад\";\"other\"\n\"125446\";\"مهاباد\";\"other\"\n\"125446\";\"مَه آباد\";\"other\"\n\"125446\";\"مِه آباد\";\"other\"\n\"125897\";\"Langerūd\";\"main\"\n\"125897\";\"Langerud\";\"ascii\"\n\"125897\";\"Langarood\";\"other\"\n\"125897\";\"Langarud\";\"other\"\n\"125897\";\"Langarūd\";\"other\"\n\"125897\";\"Shahr-e Langarud\";\"other\"\n\"125897\";\"Shahr-e Langarūd\";\"other\"\n\"126409\";\"Kūhdasht\";\"main\"\n\"126409\";\"Kuhdasht\";\"ascii\"\n\"126409\";\"Kuh-i-Dasht\";\"other\"\n\"126409\";\"Kūh-ī-Dasht\";\"other\"\n\"126409\";\"kwhdasht\";\"other\"\n\"126409\";\"kwhdsht\";\"other\"\n\"126409\";\"كوهدَشت\";\"other\"\n\"126409\";\"کوهدشت\";\"other\"\n\"126914\";\"Kīsh\";\"main\"\n\"126914\";\"Kish\";\"ascii\"\n\"126914\";\"kysh\";\"other\"\n\"126914\";\"Киш\";\"other\"\n\"126914\";\"كيش\";\"other\"\n\"126972\";\"Khvoy\";\"main\"\n\"126972\";\"Khoi\";\"other\"\n\"126972\";\"Khowy\";\"other\"\n\"126972\";\"Khoy\";\"other\"\n\"126972\";\"خوی\";\"other\"\n\"127033\";\"Khvānsār\";\"main\"\n\"127033\";\"Khvansar\";\"ascii\"\n\"127033\";\"Khansar\";\"other\"\n\"127033\";\"Khavansar\";\"other\"\n\"127033\";\"Khonsar\";\"other\"\n\"127033\";\"Khunsar\";\"other\"\n\"127033\";\"Khvonsar\";\"other\"\n\"127033\";\"Khvonsār\";\"other\"\n\"127033\";\"Khūnsār\";\"other\"\n\"127033\";\"Shahr-e Khvonsar\";\"other\"\n\"127033\";\"Shahr-e Khvonsār\";\"other\"\n\"127033\";\"خوانسار\";\"other\"\n\"127319\";\"Khorramshahr\";\"main\"\n\"127319\";\"Al-Muhammarah\";\"other\"\n\"127319\";\"Chorramschahr\";\"other\"\n\"127319\";\"Khorram Shahr Abadan\";\"other\"\n\"127319\";\"Khorram Shahr Ābādān\";\"other\"\n\"127319\";\"Khorramchahre\";\"other\"\n\"127319\";\"Khorremshekhr\";\"other\"\n\"127319\";\"Khunin Shahr\";\"other\"\n\"127319\";\"Khurramshahr\";\"other\"\n\"127319\";\"Khūnīn Shahr\";\"other\"\n\"127319\";\"Mohammerah\";\"other\"\n\"127319\";\"Muhammerah\";\"other\"\n\"127319\";\"khrmshhr\";\"other\"\n\"127319\";\"Хорремшехр\";\"other\"\n\"127319\";\"خرمشهر\";\"other\"\n\"127319\";\"خرّمشهر\";\"other\"\n\"127349\";\"Khorramābād\";\"main\"\n\"127349\";\"Khorramabad\";\"ascii\"\n\"127349\";\"Khur Ramabad\";\"other\"\n\"127349\";\"Khur Ramābād\";\"other\"\n\"127349\";\"Khurramobod\";\"other\"\n\"127349\";\"khuram abad\";\"other\"\n\"127349\";\"Хуррамобод\";\"other\"\n\"127349\";\"خرم آباد\";\"other\"\n\"127349\";\"خرّم آباد\";\"other\"\n\"127349\";\"خُرَّم آباد\";\"other\"\n\"127403\";\"Khomeyn\";\"main\"\n\"127403\";\"Khomein\";\"other\"\n\"127403\";\"Khomeīn\";\"other\"\n\"127403\";\"Khowmeyn\";\"other\"\n\"127403\";\"Khumain\";\"other\"\n\"127403\";\"Khūmaīn\";\"other\"\n\"127403\";\"khumin\";\"other\"\n\"127403\";\"khwmayn\";\"other\"\n\"127403\";\"خمين\";\"other\"\n\"127403\";\"خومَين\";\"other\"\n\"127403\";\"خُمِين\";\"other\"\n\"127403\";\"خُومِين\";\"other\"\n\"127878\";\"Khānī Yek\";\"main\"\n\"127878\";\"Khani Yek\";\"ascii\"\n\"128008\";\"Herowābād\";\"main\"\n\"128008\";\"Herowabad\";\"ascii\"\n\"128008\";\"Harau\";\"other\"\n\"128008\";\"Harowabad\";\"other\"\n\"128008\";\"Herau\";\"other\"\n\"128008\";\"Herauabad\";\"other\"\n\"128008\";\"Heroabad\";\"other\"\n\"128008\";\"Herow\";\"other\"\n\"128008\";\"Heroābād\";\"other\"\n\"128008\";\"Hirabad\";\"other\"\n\"128008\";\"Hirābād\";\"other\"\n\"128008\";\"Khalkhal\";\"other\"\n\"128008\";\"Khalkhāl\";\"other\"\n\"128008\";\"haruabad\";\"other\"\n\"128008\";\"hiru\";\"other\"\n\"128008\";\"hiru abad\";\"other\"\n\"128008\";\"hrw abad\";\"other\"\n\"128008\";\"khalkhal\";\"other\"\n\"128008\";\"خَلخال\";\"other\"\n\"128008\";\"هرو آباد\";\"other\"\n\"128008\";\"هَرُوَبَد\";\"other\"\n\"128008\";\"هِرُ آباد\";\"other\"\n\"128008\";\"هِرُو\";\"other\"\n\"128226\";\"Kermānshāh\";\"main\"\n\"128226\";\"Kermanshah\";\"ascii\"\n\"128226\";\"Bahtaran\";\"other\"\n\"128226\";\"Bakhtaran\";\"other\"\n\"128226\";\"Bākhtarān\";\"other\"\n\"128226\";\"Kermansah\";\"other\"\n\"128226\";\"Kermansaho\";\"other\"\n\"128226\";\"Kermanschah\";\"other\"\n\"128226\";\"Kermanshahan\";\"other\"\n\"128226\";\"Kermanshakh\";\"other\"\n\"128226\";\"Kermanŝaho\";\"other\"\n\"128226\";\"Kermanşah\";\"other\"\n\"128226\";\"Kermânsâh\";\"other\"\n\"128226\";\"Kermānschāh\";\"other\"\n\"128226\";\"Kermānshāhān\";\"other\"\n\"128226\";\"Kirmansan\";\"other\"\n\"128226\";\"Kirmanşan\";\"other\"\n\"128226\";\"Province de Kermanshah\";\"other\"\n\"128226\";\"Provincia de Kermanshah\";\"other\"\n\"128226\";\"Provinco Kermansah\";\"other\"\n\"128226\";\"Provinco Kermanŝah\";\"other\"\n\"128226\";\"Província de Kermanshah\";\"other\"\n\"128226\";\"Qahremanshahr\";\"other\"\n\"128226\";\"Qahremānshahr\";\"other\"\n\"128226\";\"astan krmanshah\";\"other\"\n\"128226\";\"ke er man sha han sheng\";\"other\"\n\"128226\";\"kerumansha zhou\";\"other\"\n\"128226\";\"krmanshah\";\"other\"\n\"128226\";\"mhafzt krmanshah\";\"other\"\n\"128226\";\"Керманшах\";\"other\"\n\"128226\";\"Кирмоншоҳ\";\"other\"\n\"128226\";\"Устони Кирмоншоҳ\";\"other\"\n\"128226\";\"استان کرمانشاه\";\"other\"\n\"128226\";\"محافظة کرمانشاه\";\"other\"\n\"128226\";\"کرمانشاه\";\"other\"\n\"128226\";\"ケルマーンシャー州\";\"other\"\n\"128226\";\"克爾曼沙汗省\";\"other\"\n\"128234\";\"Kermān\";\"main\"\n\"128234\";\"Kerman\";\"ascii\"\n\"128234\";\"Carmana\";\"other\"\n\"128234\";\"Kermán\";\"other\"\n\"128234\";\"Kirman\";\"other\"\n\"128234\";\"Kirmon\";\"other\"\n\"128234\";\"keruman\";\"other\"\n\"128234\";\"Керман\";\"other\"\n\"128234\";\"Кирмон\";\"other\"\n\"128234\";\"کرمان\";\"other\"\n\"128234\";\"ケルマーン\";\"other\"\n\"128321\";\"Kāzerūn\";\"main\"\n\"128321\";\"Kazerun\";\"ascii\"\n\"128321\";\"Kasrun\";\"other\"\n\"128321\";\"Kazarun\";\"other\"\n\"128321\";\"Kazeroun\";\"other\"\n\"128321\";\"Kazeruna\";\"other\"\n\"128321\";\"Kāzarūn\";\"other\"\n\"128321\";\"Казеруна\";\"other\"\n\"128321\";\"كازرون\";\"other\"\n\"128447\";\"Kāshmar\";\"main\"\n\"128447\";\"Kashmar\";\"ascii\"\n\"128447\";\"Khashmar\";\"other\"\n\"128447\";\"Soultanabad\";\"other\"\n\"128447\";\"Torshiz\";\"other\"\n\"128447\";\"Torshīz\";\"other\"\n\"128447\";\"Turshiz\";\"other\"\n\"128447\";\"Turshīz\";\"other\"\n\"128447\";\"کاشمر\";\"other\"\n\"128477\";\"Kāshān\";\"main\"\n\"128477\";\"Kashan\";\"ascii\"\n\"128477\";\"Kachan\";\"other\"\n\"128477\";\"kashan\";\"other\"\n\"128477\";\"Кашан\";\"other\"\n\"128477\";\"کاشان\";\"other\"\n\"128477\";\"カーシャーン\";\"other\"\n\"128747\";\"Karaj\";\"main\"\n\"128747\";\"Heredi\";\"other\"\n\"128747\";\"Karadj\";\"other\"\n\"128747\";\"Karadje\";\"other\"\n\"128747\";\"Karadsch\";\"other\"\n\"128747\";\"Karej\";\"other\"\n\"128747\";\"Keredi\";\"other\"\n\"128747\";\"Leredi\";\"other\"\n\"128747\";\"Qasabeh-e Karaj\";\"other\"\n\"128747\";\"Qaşabeh-e Karaj\";\"other\"\n\"128747\";\"karadj\";\"other\"\n\"128747\";\"karadji\";\"other\"\n\"128747\";\"karij\";\"other\"\n\"128747\";\"krj\";\"other\"\n\"128747\";\"qasabihi karaj\";\"other\"\n\"128747\";\"Карай\";\"other\"\n\"128747\";\"قَصَبِهِ كَرَج\";\"other\"\n\"128747\";\"كرج\";\"other\"\n\"128747\";\"كَرَدج\";\"other\"\n\"128747\";\"كَرَدجِ\";\"other\"\n\"128747\";\"كَرِج\";\"other\"\n\"128747\";\"کرج\";\"other\"\n\"128831\";\"Kangāvar\";\"main\"\n\"128831\";\"Kangavar\";\"ascii\"\n\"128831\";\"کنگاور\";\"other\"\n\"128905\";\"Kāmyārān\";\"main\"\n\"128905\";\"Kamyaran\";\"ascii\"\n\"128905\";\"کامیاران\";\"other\"\n\"129512\";\"Kalāleh\";\"main\"\n\"129512\";\"Kalaleh\";\"ascii\"\n\"129512\";\"Kalalah\";\"other\"\n\"129512\";\"Kalālah\";\"other\"\n\"129512\";\"kalalah\";\"other\"\n\"129512\";\"كلاله\";\"other\"\n\"129512\";\"كَلالَه\";\"other\"\n\"129933\";\"Jūybār\";\"main\"\n\"129933\";\"Juybar\";\"ascii\"\n\"129933\";\"Baghlu\";\"other\"\n\"129933\";\"Bāghlū\";\"other\"\n\"129933\";\"baghlw\";\"other\"\n\"129933\";\"jwybar\";\"other\"\n\"129933\";\"باغلو\";\"other\"\n\"129933\";\"جويبار\";\"other\"\n\"130245\";\"Javānrūd\";\"main\"\n\"130245\";\"Javanrud\";\"ascii\"\n\"130245\";\"Juanru\";\"other\"\n\"130245\";\"Jūānrū\";\"other\"\n\"130245\";\"Qal`a Juanrud\";\"other\"\n\"130245\";\"Qal`a Jūanrūd\";\"other\"\n\"130245\";\"Qal`eh Juanrud\";\"other\"\n\"130245\";\"Qal`eh Jūānrūd\";\"other\"\n\"130245\";\"Qal`eh-ye Javanrud\";\"other\"\n\"130245\";\"Qal`eh-ye Javānrūd\";\"other\"\n\"130802\";\"Īlām\";\"main\"\n\"130802\";\"Ilam\";\"ascii\"\n\"130802\";\"Elam\";\"other\"\n\"130802\";\"Elām\";\"other\"\n\"130802\";\"aylam\";\"other\"\n\"130802\";\"ylam\";\"other\"\n\"130802\";\"Илам\";\"other\"\n\"130802\";\"الام\";\"other\"\n\"130802\";\"اِلام\";\"other\"\n\"130802\";\"ایلام\";\"other\"\n\"130802\";\"يلام\";\"other\"\n\"131962\";\"Harsīn\";\"main\"\n\"131962\";\"Harsin\";\"ascii\"\n\"131962\";\"هرسین\";\"other\"\n\"132144\";\"Hamedān\";\"main\"\n\"132144\";\"Hamedan\";\"ascii\"\n\"132144\";\"Ecbatana\";\"other\"\n\"132144\";\"Hamadan\";\"other\"\n\"132144\";\"Hamadān\";\"other\"\n\"132144\";\"Khamadan\";\"other\"\n\"132144\";\"hamadan\";\"other\"\n\"132144\";\"hamidan\";\"other\"\n\"132144\";\"Хамадан\";\"other\"\n\"132144\";\"همدان\";\"other\"\n\"132144\";\"هَمَدان\";\"other\"\n\"132144\";\"هَمِدان\";\"other\"\n\"132892\";\"Gorgān\";\"main\"\n\"132892\";\"Gorgan\";\"ascii\"\n\"132892\";\"Asterabad\";\"other\"\n\"132892\";\"Asterābād\";\"other\"\n\"132892\";\"Girkanija\";\"other\"\n\"132892\";\"Gurgan\";\"other\"\n\"132892\";\"Gurgon\";\"other\"\n\"132892\";\"Gūrgān\";\"other\"\n\"132892\";\"Hirkanio\";\"other\"\n\"132892\";\"aastir abad\";\"other\"\n\"132892\";\"gwrgan\";\"other\"\n\"132892\";\"Гиркания\";\"other\"\n\"132892\";\"Гургон\";\"other\"\n\"132892\";\"اَستِر آباد\";\"other\"\n\"132892\";\"گرگان\";\"other\"\n\"132892\";\"گورگان\";\"other\"\n\"132938\";\"Gonbad-e Qābūs\";\"main\"\n\"132938\";\"Gonbad-e Qabus\";\"ascii\"\n\"132938\";\"Dashte Gorgan\";\"other\"\n\"132938\";\"Gonbad Qabus\";\"other\"\n\"132938\";\"Gonbad Qavoos\";\"other\"\n\"132938\";\"Gonbad Qābūs\";\"other\"\n\"132938\";\"Gonbad-e Kavus\";\"other\"\n\"132938\";\"Gonbad-e Kāvūs\";\"other\"\n\"132938\";\"Gunbad-i-Kawas\";\"other\"\n\"132938\";\"Gunbad-i-Kawus\";\"other\"\n\"132938\";\"Gunbad-i-Kāwās\";\"other\"\n\"132938\";\"Gunbad-i-Kāwūs\";\"other\"\n\"132938\";\"Gunbad-i-Qabus\";\"other\"\n\"132938\";\"Gunbad-i-Qābūs\";\"other\"\n\"132938\";\"dashti gurgan\";\"other\"\n\"132938\";\"gunbad qabws\";\"other\"\n\"132938\";\"gunbad qawus\";\"other\"\n\"132938\";\"gunbadi kawws\";\"other\"\n\"132938\";\"دَشتِ گُرگَن\";\"other\"\n\"132938\";\"گنبد قابوس\";\"other\"\n\"132938\";\"گُنبَد قابوس\";\"other\"\n\"132938\";\"گُنبَد قَوُّس\";\"other\"\n\"132938\";\"گُنبَدِ كاووس\";\"other\"\n\"132961\";\"Gonābād\";\"main\"\n\"132961\";\"Gonabad\";\"ascii\"\n\"132961\";\"Gunabad\";\"other\"\n\"132961\";\"Gūnābād\";\"other\"\n\"132961\";\"Juymand\";\"other\"\n\"132961\";\"Jūymand\";\"other\"\n\"132961\";\"گناباد\";\"other\"\n\"133037\";\"Golpāyegān\";\"main\"\n\"133037\";\"Golpayegan\";\"ascii\"\n\"133037\";\"Golpayagan\";\"other\"\n\"133037\";\"Golpāyagān\";\"other\"\n\"133037\";\"Gulpaigan\";\"other\"\n\"133037\";\"Gulpāīgān\";\"other\"\n\"133037\";\"Shahr-e Golpayegan\";\"other\"\n\"133037\";\"Shahr-e Golpāyegān\";\"other\"\n\"133037\";\"گلپایگان\";\"other\"\n\"133595\";\"Gerāsh\";\"main\"\n\"133595\";\"Gerash\";\"ascii\"\n\"133595\";\"Girash\";\"other\"\n\"133595\";\"Girāsh\";\"other\"\n\"133595\";\"گراش\";\"other\"\n\"134217\";\"Bandar-e Ganāveh\";\"main\"\n\"134217\";\"Bandar-e Ganaveh\";\"ascii\"\n\"134217\";\"Bandar-e Genaveh\";\"other\"\n\"134217\";\"Bandar-e Genāveh\";\"other\"\n\"134217\";\"Bandar-e-Gonaveh\";\"other\"\n\"134217\";\"Bandar-e-Gonāveh\";\"other\"\n\"134217\";\"Ganaveh\";\"other\"\n\"134217\";\"Ganāveh\";\"other\"\n\"134217\";\"Genaveh\";\"other\"\n\"134217\";\"Genāveh\";\"other\"\n\"134217\";\"Gonaveh\";\"other\"\n\"134217\";\"Gonāveh\";\"other\"\n\"134217\";\"Kenareh\";\"other\"\n\"134217\";\"Kenâreh\";\"other\"\n\"134217\";\"bandari ginawih\";\"other\"\n\"134217\";\"bndri gnawh\";\"other\"\n\"134217\";\"ganawih\";\"other\"\n\"134217\";\"ginawih\";\"other\"\n\"134217\";\"gunawih\";\"other\"\n\"134217\";\"بندرِ گناوه\";\"other\"\n\"134217\";\"بَندَرِ گِناوِه\";\"other\"\n\"134217\";\"گَناوِه\";\"other\"\n\"134217\";\"گُناوِه\";\"other\"\n\"134217\";\"گِناوِه\";\"other\"\n\"134518\";\"Fīrūzābād\";\"main\"\n\"134518\";\"Firuzabad\";\"ascii\"\n\"134518\";\"فیروز آباد\";\"other\"\n\"134601\";\"Fereydūnshahr\";\"main\"\n\"134601\";\"Fereydunshahr\";\"ascii\"\n\"134601\";\"فریدونشهر\";\"other\"\n\"134602\";\"Fereydūn Kenār\";\"main\"\n\"134602\";\"Fereydun Kenar\";\"ascii\"\n\"134602\";\"Faridun Kinar\";\"other\"\n\"134602\";\"Fereidun Kenar\";\"other\"\n\"134602\";\"Fāridūn Kinār\";\"other\"\n\"134602\";\"Qasabeh\";\"other\"\n\"134602\";\"Qaşabeh\";\"other\"\n\"134602\";\"firidwn kinar\";\"other\"\n\"134602\";\"qasabih\";\"other\"\n\"134602\";\"فِرِيدون كِنار\";\"other\"\n\"134602\";\"قَصَبِه\";\"other\"\n\"134721\";\"Fasā\";\"main\"\n\"134721\";\"Fasa\";\"ascii\"\n\"134721\";\"Fassa\";\"other\"\n\"134721\";\"فسا\";\"other\"\n\"134762\";\"Fārsān\";\"main\"\n\"134762\";\"Farsan\";\"ascii\"\n\"134762\";\"Farsa\";\"other\"\n\"134762\";\"Farsian\";\"other\"\n\"134762\";\"Farsun\";\"other\"\n\"134762\";\"Farsūn\";\"other\"\n\"134762\";\"Fārsā\";\"other\"\n\"134762\";\"Fārsīān\";\"other\"\n\"134762\";\"farsan\";\"other\"\n\"134762\";\"farswn\";\"other\"\n\"134762\";\"فارسا\";\"other\"\n\"134762\";\"فارسان\";\"other\"\n\"134762\";\"فارسيان\";\"other\"\n\"134762\";\"فَرسون\";\"other\"\n\"134905\";\"pamas\";\"main\"\n\"134905\";\"Famast\";\"other\"\n\"134905\";\"Fāmāst\";\"other\"\n\"134905\";\"Gamasb\";\"other\"\n\"134905\";\"Gamasp\";\"other\"\n\"134905\";\"Gāmāsb\";\"other\"\n\"134905\";\"Gāmāsp\";\"other\"\n\"134905\";\"Pamas\";\"other\"\n\"134905\";\"famast\";\"other\"\n\"134905\";\"gamasp\";\"other\"\n\"134905\";\"فاماست\";\"other\"\n\"134905\";\"پمس\";\"other\"\n\"134905\";\"پَمَس\";\"other\"\n\"134905\";\"گاماسب\";\"other\"\n\"134905\";\"گاماسپ\";\"other\"\n\"135298\";\"Esfarāyen\";\"main\"\n\"135298\";\"Esfarayen\";\"ascii\"\n\"135298\";\"Meyanabad\";\"other\"\n\"135298\";\"Meyanābād\";\"other\"\n\"135298\";\"Mianabad\";\"other\"\n\"135298\";\"Miyanabad\";\"other\"\n\"135298\";\"Mīyānābād\";\"other\"\n\"135298\";\"Mīānābād\";\"other\"\n\"135298\";\"اسفراین\";\"other\"\n\"135423\";\"Shāhrūd\";\"main\"\n\"135423\";\"Shahrud\";\"ascii\"\n\"135423\";\"Emamshahr\";\"other\"\n\"135423\";\"Emāmshahr\";\"other\"\n\"135423\";\"Sharud\";\"other\"\n\"135423\";\"Shārūd\";\"other\"\n\"135423\";\"aimamshahr\";\"other\"\n\"135423\";\"shahrwd\";\"other\"\n\"135423\";\"sharwd\";\"other\"\n\"135423\";\"اِمامشَهر\";\"other\"\n\"135423\";\"شارود\";\"other\"\n\"135423\";\"شاهرود\";\"other\"\n\"136014\";\"Do Gonbadān\";\"main\"\n\"136014\";\"Do Gonbadan\";\"ascii\"\n\"136014\";\"Dow Gonbadan\";\"other\"\n\"136014\";\"Dow Gonbadān\";\"other\"\n\"136014\";\"Du Gunbadan\";\"other\"\n\"136014\";\"Du Gunbadān\";\"other\"\n\"136014\";\"Gachsaran\";\"other\"\n\"136014\";\"Gachsārān\";\"other\"\n\"136014\";\"du gunbadan\";\"other\"\n\"136014\";\"gchsaran\";\"other\"\n\"136014\";\"دُو گُنبَدان\";\"other\"\n\"136014\";\"گچساران\";\"other\"\n\"136399\";\"Delījān\";\"main\"\n\"136399\";\"Delijan\";\"ascii\"\n\"136399\";\"Dalijan\";\"other\"\n\"136399\";\"Dalijān\";\"other\"\n\"136399\";\"Dilijan\";\"other\"\n\"136399\";\"Dilījān\";\"other\"\n\"136399\";\"dlyjan\";\"other\"\n\"136399\";\"دليجان\";\"other\"\n\"136702\";\"Dehlorān\";\"main\"\n\"136702\";\"Dehloran\";\"ascii\"\n\"136702\";\"Deh Lovan\";\"other\"\n\"136702\";\"Deh Lovān\";\"other\"\n\"136702\";\"Deh Luran\";\"other\"\n\"136702\";\"Deh Lūrān\";\"other\"\n\"136702\";\"Dekhlorana\";\"other\"\n\"136702\";\"dhlran\";\"other\"\n\"136702\";\"dih lwran\";\"other\"\n\"136702\";\"dihluran\";\"other\"\n\"136702\";\"Дехлорана\";\"other\"\n\"136702\";\"ده لوان\";\"other\"\n\"136702\";\"دهلران\";\"other\"\n\"136702\";\"دِه لوران\";\"other\"\n\"136702\";\"دِه لُوان\";\"other\"\n\"136702\";\"دِهلُران\";\"other\"\n\"136987\";\"Dehdasht\";\"main\"\n\"136987\";\"Dehdast\";\"other\"\n\"136987\";\"Kuhgiluyeh\";\"other\"\n\"136987\";\"dihdast\";\"other\"\n\"136987\";\"دهدشت\";\"other\"\n\"136987\";\"دِهدَست\";\"other\"\n\"137268\";\"Sūsangerd\";\"main\"\n\"137268\";\"Susangerd\";\"ascii\"\n\"137268\";\"Dasht-e Azadegan\";\"other\"\n\"137268\";\"Dasht-e Āzādegān\";\"other\"\n\"137268\";\"Dasht-i-Mishan\";\"other\"\n\"137268\";\"Dasht-i-Mishān\";\"other\"\n\"137268\";\"Dashte' Mishan\";\"other\"\n\"137268\";\"Dashte’ Mishan\";\"other\"\n\"137268\";\"Khafajiyah\";\"other\"\n\"137268\";\"Khafajiyaz\";\"other\"\n\"137268\";\"Khafajiyeh\";\"other\"\n\"137268\";\"Susangird\";\"other\"\n\"137268\";\"Susangurd\";\"other\"\n\"137268\";\"Sūsangird\";\"other\"\n\"137268\";\"Sūsangurd\";\"other\"\n\"137268\";\"سوسنگرد\";\"other\"\n\"137956\";\"Dārāb\";\"main\"\n\"137956\";\"Darab\";\"ascii\"\n\"138025\";\"Dāmghān\";\"main\"\n\"138025\";\"Damghan\";\"ascii\"\n\"138025\";\"damghan\";\"other\"\n\"138025\";\"دامغان\";\"other\"\n\"138042\";\"Damāvand\";\"main\"\n\"138042\";\"Damavand\";\"ascii\"\n\"138042\";\"Demavend\";\"other\"\n\"138042\";\"Demāvend\";\"other\"\n\"138042\";\"Qasabeh-e Damavand\";\"other\"\n\"138042\";\"Qaşabeh-e Damāvand\";\"other\"\n\"138042\";\"damawand\";\"other\"\n\"138042\";\"dimawind\";\"other\"\n\"138042\";\"qasabihi damawand\";\"other\"\n\"138042\";\"Дамаванд\";\"other\"\n\"138042\";\"دَماوَند\";\"other\"\n\"138042\";\"دِماوِند\";\"other\"\n\"138042\";\"قَصَبِهِ دَماوَند\";\"other\"\n\"138742\";\"Chenārān\";\"main\"\n\"138742\";\"Chenaran\";\"ascii\"\n\"138742\";\"Chanaran\";\"other\"\n\"138742\";\"Chanārān\";\"other\"\n\"138742\";\"Chinaran\";\"other\"\n\"138742\";\"Chinārān\";\"other\"\n\"138742\";\"چناران\";\"other\"\n\"139223\";\"Chālūs\";\"main\"\n\"139223\";\"Chalus\";\"ascii\"\n\"139223\";\"chalws\";\"other\"\n\"139223\";\"Чалус\";\"other\"\n\"139223\";\"چالوس\";\"other\"\n\"139817\";\"Bandar Būshehr\";\"main\"\n\"139817\";\"Bandar Bushehr\";\"ascii\"\n\"139817\";\"Abu Shehr\";\"other\"\n\"139817\";\"Abuschehr\";\"other\"\n\"139817\";\"Bandar Abu Shehr\";\"other\"\n\"139817\";\"Bandar-e Bushehr\";\"other\"\n\"139817\";\"Bandar-e Būshehr\";\"other\"\n\"139817\";\"Bouchehr\";\"other\"\n\"139817\";\"Buschehr\";\"other\"\n\"139817\";\"Buschir\";\"other\"\n\"139817\";\"Busehr\";\"other\"\n\"139817\";\"Bushehr\";\"other\"\n\"139817\";\"Busher\";\"other\"\n\"139817\";\"Bushir\";\"other\"\n\"139817\";\"Bushire\";\"other\"\n\"139817\";\"Būshehr\";\"other\"\n\"139817\";\"bndr bwshhr\";\"other\"\n\"139817\";\"bwshhr\";\"other\"\n\"139817\";\"bwshihr\";\"other\"\n\"139817\";\"Бушер\";\"other\"\n\"139817\";\"Бушир\";\"other\"\n\"139817\";\"Бӯшеҳр\";\"other\"\n\"139817\";\"Бӯшиҳр\";\"other\"\n\"139817\";\"بندر بوشهر\";\"other\"\n\"139817\";\"بوشهر\";\"other\"\n\"139817\";\"بوشِهر\";\"other\"\n\"139889\";\"Būkān\";\"main\"\n\"139889\";\"Bukan\";\"ascii\"\n\"139889\";\"Bokan\";\"other\"\n\"139889\";\"Bowkan\";\"other\"\n\"139889\";\"Bowkān\";\"other\"\n\"139889\";\"Букан\";\"other\"\n\"139889\";\"بوکان\";\"other\"\n\"140044\";\"Borūjerd\";\"main\"\n\"140044\";\"Borujerd\";\"ascii\"\n\"140044\";\"Borudzherd\";\"other\"\n\"140044\";\"Burujird\";\"other\"\n\"140044\";\"Būrūjīrd\";\"other\"\n\"140044\";\"brwjrd\";\"other\"\n\"140044\";\"bwrwjyrd\";\"other\"\n\"140044\";\"Боруджерд\";\"other\"\n\"140044\";\"بروجرد\";\"other\"\n\"140044\";\"بوروجيرد\";\"other\"\n\"140046\";\"Borūjen\";\"main\"\n\"140046\";\"Borujen\";\"ascii\"\n\"140046\";\"Amrujan\";\"other\"\n\"140046\";\"Amrūjān\";\"other\"\n\"140046\";\"Beroojen\";\"other\"\n\"140046\";\"Borujan\";\"other\"\n\"140046\";\"Borūjān\";\"other\"\n\"140046\";\"Burujan\";\"other\"\n\"140046\";\"Burūjān\";\"other\"\n\"140046\";\"Urujan\";\"other\"\n\"140046\";\"Urūjān\";\"other\"\n\"140046\";\"aamrwjan\";\"other\"\n\"140046\";\"birujin\";\"other\"\n\"140046\";\"burwjan\";\"other\"\n\"140046\";\"اَمروجان\";\"other\"\n\"140046\";\"بروجن\";\"other\"\n\"140046\";\"بُروجان\";\"other\"\n\"140046\";\"بِرُّجِن\";\"other\"\n\"140097\";\"Borāzjān\";\"main\"\n\"140097\";\"Borazjan\";\"ascii\"\n\"140097\";\"Borazdjan\";\"other\"\n\"140097\";\"Borazjun\";\"other\"\n\"140097\";\"Borāzjūn\";\"other\"\n\"140097\";\"burazdjan\";\"other\"\n\"140097\";\"burazjwn\";\"other\"\n\"140097\";\"برازجان\";\"other\"\n\"140097\";\"بُرازجون\";\"other\"\n\"140097\";\"بُرَزدجَن\";\"other\"\n\"140380\";\"Bojnūrd\";\"main\"\n\"140380\";\"Bojnurd\";\"ascii\"\n\"140380\";\"Bodzhnurd\";\"other\"\n\"140380\";\"Bojnourd\";\"other\"\n\"140380\";\"Bujnurd\";\"other\"\n\"140380\";\"Bujnūrd\";\"other\"\n\"140380\";\"Боджнурд\";\"other\"\n\"140380\";\"بجنورد\";\"other\"\n\"140463\";\"Bīrjand\";\"main\"\n\"140463\";\"Birjand\";\"ascii\"\n\"140463\";\"Birdjand\";\"other\"\n\"140463\";\"Birdzhend\";\"other\"\n\"140463\";\"shhrstan byrjnd\";\"other\"\n\"140463\";\"Бирдженд\";\"other\"\n\"140463\";\"Бӣрҷанд\";\"other\"\n\"140463\";\"بيرجند\";\"other\"\n\"140463\";\"شهرستان بیرجند\";\"other\"\n\"140521\";\"Bījār\";\"main\"\n\"140521\";\"Bijar\";\"ascii\"\n\"140521\";\"Bidzhar\";\"other\"\n\"140521\";\"byjar\";\"other\"\n\"140521\";\"Биджар\";\"other\"\n\"140521\";\"بيجار\";\"other\"\n\"140889\";\"Bonāb\";\"main\"\n\"140889\";\"Bonab\";\"ascii\"\n\"140889\";\"Benab\";\"other\"\n\"140889\";\"Benāb\";\"other\"\n\"140889\";\"Binab\";\"other\"\n\"140889\";\"Bināb\";\"other\"\n\"140889\";\"Bunab\";\"other\"\n\"140889\";\"bnab\";\"other\"\n\"140889\";\"bunab\";\"other\"\n\"140889\";\"Бонаб\";\"other\"\n\"140889\";\"بناب\";\"other\"\n\"140889\";\"بُناب\";\"other\"\n\"140889\";\"بِناب\";\"other\"\n\"140918\";\"Behshahr\";\"main\"\n\"140918\";\"Ashraf\";\"other\"\n\"140918\";\"Bekhshekhr\";\"other\"\n\"140918\";\"aashraf\";\"other\"\n\"140918\";\"Бехшехр\";\"other\"\n\"140918\";\"اَشرَف\";\"other\"\n\"140918\";\"بهشهر\";\"other\"\n\"140951\";\"Behbahān\";\"main\"\n\"140951\";\"Behbahan\";\"ascii\"\n\"140951\";\"Behbehan\";\"other\"\n\"140951\";\"Behbehān\";\"other\"\n\"140951\";\"بهبهان\";\"other\"\n\"141584\";\"Bāneh\";\"main\"\n\"141584\";\"Baneh\";\"ascii\"\n\"141584\";\"Bane\";\"other\"\n\"141584\";\"Bani\";\"other\"\n\"141584\";\"banh\";\"other\"\n\"141584\";\"bani\";\"other\"\n\"141584\";\"banih\";\"other\"\n\"141584\";\"Бани\";\"other\"\n\"141584\";\"بانه\";\"other\"\n\"141584\";\"بانِه\";\"other\"\n\"141584\";\"بَنِ\";\"other\"\n\"141665\";\"Bandar-e Lengeh\";\"main\"\n\"141665\";\"Bandar Langeh\";\"other\"\n\"141665\";\"Bandar-e-Langeh\";\"other\"\n\"141665\";\"Lengeh\";\"other\"\n\"141665\";\"Linja\";\"other\"\n\"141665\";\"Linjah\";\"other\"\n\"141665\";\"bandar langih\";\"other\"\n\"141665\";\"bandari lingih\";\"other\"\n\"141665\";\"lingih\";\"other\"\n\"141665\";\"بَندَر لَنگِه\";\"other\"\n\"141665\";\"بَندَرِ لِنگِه\";\"other\"\n\"141665\";\"لِنگِه\";\"other\"\n\"141668\";\"Bandar-e-Emām Khomeynī\";\"main\"\n\"141668\";\"Bandar-e-Emam Khomeyni\";\"ascii\"\n\"141668\";\"Bandar Chahpour\";\"other\"\n\"141668\";\"Bandar Khomani\";\"other\"\n\"141668\";\"Bandar Khomeini\";\"other\"\n\"141668\";\"Bandar Khoumeini\";\"other\"\n\"141668\";\"Bandar Shahpoor\";\"other\"\n\"141668\";\"Bandar Shahpur\";\"other\"\n\"141668\";\"Bandar Shāhpūr\";\"other\"\n\"141668\";\"Bandar-e Khomeyni\";\"other\"\n\"141668\";\"Bandar-e Khomeynī\";\"other\"\n\"141668\";\"Bandar-e Shahpur\";\"other\"\n\"141668\";\"Bandar-e Shāhpūr\";\"other\"\n\"141668\";\"Bandar-e-Shahpour\";\"other\"\n\"141668\";\"Imam Khomeyni\";\"other\"\n\"141679\";\"Bandar-e Anzalī\";\"main\"\n\"141679\";\"Bandar-e Anzali\";\"ascii\"\n\"141679\";\"Bandar Anzali\";\"other\"\n\"141679\";\"Bandar Pahlavi\";\"other\"\n\"141679\";\"Bandar Pahlevi\";\"other\"\n\"141679\";\"Bandar-e Pahlavi\";\"other\"\n\"141679\";\"Bandar-e Pahlavī\";\"other\"\n\"141679\";\"Enceli\";\"other\"\n\"141679\";\"Enzeli\";\"other\"\n\"141679\";\"Pahlavi\";\"other\"\n\"141679\";\"Pahlavī\";\"other\"\n\"141679\";\"Pahlevi\";\"other\"\n\"141679\";\"Pahlevī\";\"other\"\n\"141679\";\"Pehlevi\";\"other\"\n\"141679\";\"بندر انزلی\";\"other\"\n\"141681\";\"Bandar ‘Abbās\";\"main\"\n\"141681\";\"Bandar 'Abbas\";\"ascii\"\n\"141681\";\"Bandar Abbas\";\"other\"\n\"141681\";\"Bandar Abbas - بندر عباس\";\"other\"\n\"141681\";\"Bandar `Abbas\";\"other\"\n\"141681\";\"Bandar `Abbasi\";\"other\"\n\"141681\";\"Bandar ‘Abbāsī\";\"other\"\n\"141681\";\"Bandar-Abbos\";\"other\"\n\"141681\";\"Bandar-e `Abbas\";\"other\"\n\"141681\";\"Bandar-e ‘Abbās\";\"other\"\n\"141681\";\"Bender-Abbas\";\"other\"\n\"141681\";\"Cambarao\";\"other\"\n\"141681\";\"Cambarão\";\"other\"\n\"141681\";\"Gombroon\";\"other\"\n\"141681\";\"Gumrun\";\"other\"\n\"141681\";\"Port Comorao\";\"other\"\n\"141681\";\"Port Comorão\";\"other\"\n\"141681\";\"a ba si gang\";\"other\"\n\"141681\";\"gumbrun\";\"other\"\n\"141681\";\"Бандар-Аббос\";\"other\"\n\"141681\";\"Бендер-Аббас\";\"other\"\n\"141681\";\"بندر عباس\";\"other\"\n\"141681\";\"بَندَر عَبّاسی\";\"other\"\n\"141681\";\"بَندَرِ عَبّاس\";\"other\"\n\"141681\";\"گُمبرُّن\";\"other\"\n\"141681\";\"バンダレ・アッバース\";\"other\"\n\"141681\";\"阿巴斯港\";\"other\"\n\"141736\";\"Bam\";\"main\"\n\"141736\";\"bamu\";\"other\"\n\"141736\";\"bm\";\"other\"\n\"141736\";\"Бам\";\"other\"\n\"141736\";\"بم\";\"other\"\n\"141736\";\"バム\";\"other\"\n\"142000\";\"Bahār\";\"main\"\n\"142000\";\"Bahar\";\"ascii\"\n\"142000\";\"Bakhar\";\"other\"\n\"142000\";\"bahar\";\"other\"\n\"142000\";\"Бахар\";\"other\"\n\"142000\";\"بهار\";\"other\"\n\"142000\";\"بَهار\";\"other\"\n\"142255\";\"Bāfq\";\"main\"\n\"142255\";\"Bafq\";\"ascii\"\n\"142255\";\"Bafk\";\"other\"\n\"142255\";\"bafq\";\"other\"\n\"142255\";\"Бафк\";\"other\"\n\"142255\";\"بافق\";\"other\"\n\"142358\";\"Bābol Sar\";\"main\"\n\"142358\";\"Babol Sar\";\"ascii\"\n\"142358\";\"Babul Sar\";\"other\"\n\"142358\";\"Bābul Sar\";\"other\"\n\"142358\";\"Mashhad-i-Sar\";\"other\"\n\"142358\";\"Mashhadsar\";\"other\"\n\"142358\";\"Meshed-i-Sar\";\"other\"\n\"142358\";\"babul sar\";\"other\"\n\"142358\";\"mashhadsar\";\"other\"\n\"142358\";\"بابُل سَر\";\"other\"\n\"142358\";\"مَشهَدسَر\";\"other\"\n\"142363\";\"Bābol\";\"main\"\n\"142363\";\"Babol\";\"ascii\"\n\"142363\";\"Babol'\";\"other\"\n\"142363\";\"Babul\";\"other\"\n\"142363\";\"Balfrush\";\"other\"\n\"142363\";\"Barfarush\";\"other\"\n\"142363\";\"Barfrush\";\"other\"\n\"142363\";\"Barfurush\";\"other\"\n\"142363\";\"Bābul\";\"other\"\n\"142363\";\"Bārfurush\";\"other\"\n\"142363\";\"babl\";\"other\"\n\"142363\";\"babul\";\"other\"\n\"142363\";\"Баболь\";\"other\"\n\"142363\";\"بابل\";\"other\"\n\"142363\";\"بابُل\";\"other\"\n\"142496\";\"Aznā\";\"main\"\n\"142496\";\"Azna\";\"ascii\"\n\"142496\";\"azna\";\"other\"\n\"142496\";\"ازنا\";\"other\"\n\"142554\";\"Hashtrūd\";\"main\"\n\"142554\";\"Hashtrud\";\"ascii\"\n\"142554\";\"Azaran\";\"other\"\n\"142554\";\"Sar Eskand\";\"other\"\n\"142554\";\"Sar Eskand Khan\";\"other\"\n\"142554\";\"Sar Eskand Khān\";\"other\"\n\"142554\";\"Sar Eskandar\";\"other\"\n\"142554\";\"Saraskand\";\"other\"\n\"142554\";\"Sarāskand\";\"other\"\n\"142554\";\"Āz̄arān\";\"other\"\n\"142554\";\"هشترود\";\"other\"\n\"142676\";\"Āstārā\";\"main\"\n\"142676\";\"Astara\";\"ascii\"\n\"142676\";\"Астара\";\"other\"\n\"142676\";\"آستارا\";\"other\"\n\"142679\";\"Āstāneh-ye Ashrafīyeh\";\"main\"\n\"142679\";\"Astaneh-ye Ashrafiyeh\";\"ascii\"\n\"142679\";\"Astane\";\"other\"\n\"142679\";\"Astaneh\";\"other\"\n\"142679\";\"Āstāneh\";\"other\"\n\"142679\";\"آستانه اشرفیه\";\"other\"\n\"142872\";\"Asadābād\";\"main\"\n\"142872\";\"Asadabad\";\"ascii\"\n\"142872\";\"Asadabada\";\"other\"\n\"142872\";\"aasad abad\";\"other\"\n\"142872\";\"Асадабада\";\"other\"\n\"142872\";\"اسد آباد\";\"other\"\n\"142872\";\"اَسَد آباد\";\"other\"\n\"143052\";\"Ardestān\";\"main\"\n\"143052\";\"Ardestan\";\"ascii\"\n\"143052\";\"Ardistan\";\"other\"\n\"143052\";\"Ardistān\";\"other\"\n\"143052\";\"اردستان\";\"other\"\n\"143073\";\"Ardakān\";\"main\"\n\"143073\";\"Ardakan\";\"ascii\"\n\"143073\";\"Ardekan\";\"other\"\n\"143073\";\"aardakan\";\"other\"\n\"143073\";\"aardikan\";\"other\"\n\"143073\";\"اردکان\";\"other\"\n\"143073\";\"اَردَكان\";\"other\"\n\"143073\";\"اَردِكَن\";\"other\"\n\"143083\";\"Ardabīl\";\"main\"\n\"143083\";\"Ardabil\";\"ascii\"\n\"143083\";\"Ardebil\";\"other\"\n\"143083\";\"Ardebil - ardbyl\";\"other\"\n\"143083\";\"Ardebil - اردبیل\";\"other\"\n\"143083\";\"Ardebīl\";\"other\"\n\"143083\";\"aardibyl\";\"other\"\n\"143083\";\"ardbyl\";\"other\"\n\"143083\";\"erdebil\";\"other\"\n\"143083\";\"Ərdəbil\";\"other\"\n\"143083\";\"Ардабил\";\"other\"\n\"143083\";\"اردبيل\";\"other\"\n\"143083\";\"اردبیل\";\"other\"\n\"143083\";\"اَردِبيل\";\"other\"\n\"143127\";\"Arāk\";\"main\"\n\"143127\";\"Arak\";\"ascii\"\n\"143127\";\"Arak - sawh\";\"other\"\n\"143127\";\"Arak - ساوه\";\"other\"\n\"143127\";\"Arok\";\"other\"\n\"143127\";\"Ehrak\";\"other\"\n\"143127\";\"Soltanabad\";\"other\"\n\"143127\";\"Solţānābād\";\"other\"\n\"143127\";\"Sultanabad\";\"other\"\n\"143127\";\"Sultānābād\";\"other\"\n\"143127\";\"`Iraq\";\"other\"\n\"143127\";\"arak\";\"other\"\n\"143127\";\"sawh\";\"other\"\n\"143127\";\"sultan abad\";\"other\"\n\"143127\";\"Арoк\";\"other\"\n\"143127\";\"Арак\";\"other\"\n\"143127\";\"Эрак\";\"other\"\n\"143127\";\"اراك\";\"other\"\n\"143127\";\"اراک\";\"other\"\n\"143127\";\"ساوه\";\"other\"\n\"143127\";\"سُلطان آباد\";\"other\"\n\"143127\";\"‘Irāq\";\"other\"\n\"143534\";\"Āmol\";\"main\"\n\"143534\";\"Amol\";\"ascii\"\n\"143534\";\"Amol'\";\"other\"\n\"143534\";\"Amul\";\"other\"\n\"143534\";\"amul\";\"other\"\n\"143534\";\"Амоль\";\"other\"\n\"143534\";\"آمُل\";\"other\"\n\"143748\";\"Alvand\";\"main\"\n\"143748\";\"Alband\";\"other\"\n\"143748\";\"Alwand\";\"other\"\n\"143748\";\"El'vend\";\"other\"\n\"143748\";\"El’vend\";\"other\"\n\"143748\";\"aalband\";\"other\"\n\"143748\";\"alwnd\";\"other\"\n\"143748\";\"Алванд\";\"other\"\n\"143748\";\"الوند\";\"other\"\n\"143748\";\"اَلبَند\";\"other\"\n\"143748\";\"اِلءوِند\";\"other\"\n\"143860\";\"Shahrīār\";\"main\"\n\"143860\";\"Shahriar\";\"ascii\"\n\"143860\";\"Ali Shah `Iwaz\";\"other\"\n\"143860\";\"Ali Shāh ‘Iwaz\";\"other\"\n\"143860\";\"Shahreyar\";\"other\"\n\"143860\";\"Shahreyār\";\"other\"\n\"143860\";\"Shahriyar\";\"other\"\n\"143860\";\"Shahriyār\";\"other\"\n\"143860\";\"Shakhrijar\";\"other\"\n\"143860\";\"`Ali Shah `Avaz\";\"other\"\n\"143860\";\"shhryar\";\"other\"\n\"143860\";\"Шахрияр\";\"other\"\n\"143860\";\"شهريار\";\"other\"\n\"143860\";\"عَلی شاه عَوَض\";\"other\"\n\"143860\";\"‘Alī Shāh ‘Avaẕ\";\"other\"\n\"143921\";\"Alīgūdarz\";\"main\"\n\"143921\";\"Aligudarz\";\"ascii\"\n\"143921\";\"Aligoodarz\";\"other\"\n\"143921\";\"`Ali Gudar\";\"other\"\n\"143921\";\"Алигударз\";\"other\"\n\"143921\";\"اليگودرز\";\"other\"\n\"143921\";\"‘Ali Gudār\";\"other\"\n\"144269\";\"Aleshtar\";\"main\"\n\"144269\";\"Alashtar\";\"other\"\n\"144269\";\"Alishtar\";\"other\"\n\"144269\";\"Alishtār\";\"other\"\n\"144269\";\"Qal`eh Mozaffari\";\"other\"\n\"144269\";\"Qal`eh `Alishtar\";\"other\"\n\"144269\";\"Qal‘eh Moz̧affari\";\"other\"\n\"144269\";\"Qal‘eh ‘Alishtār\";\"other\"\n\"144269\";\"aalashtar\";\"other\"\n\"144269\";\"aalishtar\";\"other\"\n\"144269\";\"alshtr\";\"other\"\n\"144269\";\"الشتر\";\"other\"\n\"144269\";\"اَلَشتَر\";\"other\"\n\"144269\";\"اَلِشتَر\";\"other\"\n\"144410\";\"Akbarābād\";\"main\"\n\"144410\";\"Akbarabad\";\"ascii\"\n\"144410\";\"Akbar Abad Kawar\";\"other\"\n\"144410\";\"Akbarabad-e Kavar\";\"other\"\n\"144410\";\"Akbarābād-e Kavār\";\"other\"\n\"144410\";\"Акбарабад\";\"other\"\n\"144410\";\"اکبر آباد\";\"other\"\n\"144443\";\"‘Ajab Shīr\";\"main\"\n\"144443\";\"`Ajab Shir\";\"ascii\"\n\"144443\";\"Ajabshahr\";\"other\"\n\"144443\";\"aajabshahr\";\"other\"\n\"144443\";\"اَجَبشَهر\";\"other\"\n\"144443\";\"عجب شیر\";\"other\"\n\"144443\";\"عَجَب شير\";\"other\"\n\"144448\";\"Ahvāz\";\"main\"\n\"144448\";\"Ahvaz\";\"ascii\"\n\"144448\";\"Ahvaz - ahwaz\";\"other\"\n\"144448\";\"Ahvaz - اهواز\";\"other\"\n\"144448\";\"Ahwaz\";\"other\"\n\"144448\";\"Ahwāz\";\"other\"\n\"144448\";\"Akhvaz\";\"other\"\n\"144448\";\"Bandar Nasiri\";\"other\"\n\"144448\";\"Bandar Nāsirī\";\"other\"\n\"144448\";\"Bandar-e Naser\";\"other\"\n\"144448\";\"Bandar-e Nāşer\";\"other\"\n\"144448\";\"Naseri\";\"other\"\n\"144448\";\"Nasiri\";\"other\"\n\"144448\";\"Nāsiri\";\"other\"\n\"144448\";\"Nāşerī\";\"other\"\n\"144448\";\"a wa shi\";\"other\"\n\"144448\";\"afuvu~azu\";\"other\"\n\"144448\";\"alahwaz\";\"other\"\n\"144448\";\"Ахваз\";\"other\"\n\"144448\";\"Аҳвоз\";\"other\"\n\"144448\";\"الأحواز\";\"other\"\n\"144448\";\"اهواز\";\"other\"\n\"144448\";\"アフヴァーズ\";\"other\"\n\"144448\";\"阿瓦士\";\"other\"\n\"144616\";\"Ahar\";\"main\"\n\"144616\";\"Akhar\";\"other\"\n\"144616\";\"ahr\";\"other\"\n\"144616\";\"Ахар\";\"other\"\n\"144616\";\"اهر\";\"other\"\n\"144696\";\"Āghājārī\";\"main\"\n\"144696\";\"Aghajari\";\"ascii\"\n\"144696\";\"Agha Jari\";\"other\"\n\"144696\";\"Aqa Jari\";\"other\"\n\"144696\";\"Āghā Jārī\";\"other\"\n\"144696\";\"Āqā Jarī\";\"other\"\n\"144696\";\"آغاجاری\";\"other\"\n\"144794\";\"Ābyek\";\"main\"\n\"144794\";\"Abyek\";\"ascii\"\n\"144794\";\"Abiak\";\"other\"\n\"144794\";\"abyik\";\"other\"\n\"144794\";\"آبيِك\";\"other\"\n\"145034\";\"Abhar\";\"main\"\n\"145034\";\"Abkhar\";\"other\"\n\"145034\";\"aabkhar\";\"other\"\n\"145034\";\"abr\";\"other\"\n\"145034\";\"Абхар\";\"other\"\n\"145034\";\"ابر\";\"other\"\n\"145034\";\"اَبخَر\";\"other\"\n\"145233\";\"Ābdānān\";\"main\"\n\"145233\";\"Abdanan\";\"ascii\"\n\"145233\";\"Qal`a Ab-i-Danan\";\"other\"\n\"145233\";\"Qal`eh Ab-i-Danan\";\"other\"\n\"145233\";\"Qal`eh-ye Ab Danan\";\"other\"\n\"145233\";\"Qal‘a Ab-ī-Danan\";\"other\"\n\"145233\";\"Qal‘eh Āb-ī-Dānān\";\"other\"\n\"145233\";\"Qal‘eh-ye Āb Dānān\";\"other\"\n\"145233\";\"آبدانان\";\"other\"\n\"145233\";\"قَلعِۀ آب دانان\";\"other\"\n\"145449\";\"Ābādeh\";\"main\"\n\"145449\";\"Abadeh\";\"ascii\"\n\"145449\";\"آباده\";\"other\"\n\"145459\";\"Ābādān\";\"main\"\n\"145459\";\"Abadan\";\"ascii\"\n\"145459\";\"Abadan - abadan\";\"other\"\n\"145459\";\"Abadano\";\"other\"\n\"145459\";\"Abadán\";\"other\"\n\"145459\";\"Abadán - آبادان\";\"other\"\n\"145459\";\"a ba dan\";\"other\"\n\"145459\";\"abadan\";\"other\"\n\"145459\";\"Ábádán\";\"other\"\n\"145459\";\"Абадан\";\"other\"\n\"145459\";\"آبادان\";\"other\"\n\"145459\";\"عبدان\";\"other\"\n\"145459\";\"アバダーン\";\"other\"\n\"145459\";\"アーバーダーン\";\"other\"\n\"145459\";\"阿巴丹\";\"other\"\n\"390054\";\"Kūh Sefīd\";\"main\"\n\"390054\";\"Kuh Sefid\";\"ascii\"\n\"390054\";\"Kuh-e Sefid\";\"other\"\n\"390054\";\"Kūh-e Sefīd\";\"other\"\n\"390054\";\"kwh sfyd\";\"other\"\n\"390054\";\"کوه سفید\";\"other\"\n\"403220\";\"Khavāş Kūh\";\"main\"\n\"403220\";\"Khavas Kuh\";\"ascii\"\n\"403220\";\"Khas Kuh\";\"other\"\n\"403220\";\"Khas Kuhi\";\"other\"\n\"403220\";\"Khas Kūhī\";\"other\"\n\"403220\";\"Khāş Kūh\";\"other\"\n\"403220\";\"khas kwh\";\"other\"\n\"403220\";\"khas kwhy\";\"other\"\n\"403220\";\"khawas kwh\";\"other\"\n\"403220\";\"خاص كوه\";\"other\"\n\"403220\";\"خَس كوهی\";\"other\"\n\"403220\";\"خَواص كوه\";\"other\"\n\"406993\";\"Eqbālīyeh\";\"main\"\n\"406993\";\"Eqbaliyeh\";\"ascii\"\n\"406993\";\"Eqbalieh\";\"other\"\n\"406993\";\"Eqbālīeh\";\"other\"\n\"406993\";\"aiqbalyih\";\"other\"\n\"406993\";\"اقباليه\";\"other\"\n\"406993\";\"اقباليّه\";\"other\"\n\"406993\";\"اِقباليِه\";\"other\"\n\"417594\";\"Shāhreẕā\";\"main\"\n\"417594\";\"Shahreza\";\"ascii\"\n\"418521\";\"Rehnān\";\"main\"\n\"418521\";\"Rehnan\";\"ascii\"\n\"418521\";\"Rahnan\";\"other\"\n\"418521\";\"Renan\";\"other\"\n\"418521\";\"Renān\";\"other\"\n\"418521\";\"Rohanan\";\"other\"\n\"418521\";\"Rohnan\";\"other\"\n\"418521\";\"رهنان\";\"other\"\n\"418571\";\"Qahderījān\";\"main\"\n\"418571\";\"Qahderijan\";\"ascii\"\n\"418571\";\"Kedargun\";\"other\"\n\"418571\";\"Kedargūn\";\"other\"\n\"418571\";\"Qadrijan\";\"other\"\n\"418571\";\"Qadrijān\";\"other\"\n\"418571\";\"Qadrja\";\"other\"\n\"418571\";\"Qadrjā\";\"other\"\n\"418571\";\"قهدریجان\";\"other\"\n\"418606\";\"Najafābād\";\"main\"\n\"418606\";\"Najafabad\";\"ascii\"\n\"418606\";\"Nadzhafabad\";\"other\"\n\"418606\";\"Nejafabad\";\"other\"\n\"418606\";\"Nejafābād\";\"other\"\n\"418606\";\"Наджафабад\";\"other\"\n\"418606\";\"نجف آباد\";\"other\"\n\"418710\";\"Khomeynī Shahr\";\"main\"\n\"418710\";\"Khomeyni Shahr\";\"ascii\"\n\"418710\";\"Homayoon Shahr\";\"other\"\n\"418710\";\"Homayunshahr\";\"other\"\n\"418710\";\"Homāyūnshahr\";\"other\"\n\"418710\";\"Khomeynishahr\";\"other\"\n\"418710\";\"Khomeynīshahr\";\"other\"\n\"418710\";\"Sedeh\";\"other\"\n\"418710\";\"خمینی شهر\";\"other\"\n\"418723\";\"Kelīshād\";\"main\"\n\"418723\";\"Kelishad\";\"ascii\"\n\"418723\";\"Gulshad\";\"other\"\n\"418723\";\"Gulshād\";\"other\"\n\"418723\";\"Kalushad\";\"other\"\n\"418723\";\"Kalūshād\";\"other\"\n\"418723\";\"Kelishad-e Sofla\";\"other\"\n\"418723\";\"Kelishad-e Vasuderjan\";\"other\"\n\"418723\";\"Kelīshād-e Soflá\";\"other\"\n\"418723\";\"Kelīshād-e Vasūderjān\";\"other\"\n\"418723\";\"کلیشاد\";\"other\"\n\"418851\";\"Mollāvarjān\";\"main\"\n\"418851\";\"Mollavarjan\";\"ascii\"\n\"418851\";\"Falavarjan\";\"other\"\n\"418851\";\"Falāvarjān\";\"other\"\n\"418851\";\"Felavarjan\";\"other\"\n\"418851\";\"Felāvarjān\";\"other\"\n\"418851\";\"Pol-e Vargan\";\"other\"\n\"418851\";\"Pol-e Vargān\";\"other\"\n\"418851\";\"Pol-e Varqan\";\"other\"\n\"418851\";\"Pol-e Varqān\";\"other\"\n\"418851\";\"Pul-i-Vargan\";\"other\"\n\"418851\";\"Pul-i-Vargān\";\"other\"\n\"418851\";\"ملاورجان\";\"other\"\n\"418851\";\"ملّاورجان\";\"other\"\n\"418863\";\"Eşfehān\";\"main\"\n\"418863\";\"Esfehan\";\"ascii\"\n\"418863\";\"Aspadana\";\"other\"\n\"418863\";\"Esfahan\";\"other\"\n\"418863\";\"Eşfahān\";\"other\"\n\"418863\";\"Isfahan\";\"other\"\n\"418863\";\"Isfakhan\";\"other\"\n\"418863\";\"Исфахан\";\"other\"\n\"418863\";\"اصفهان\";\"other\"\n\"418868\";\"Dowlatābād\";\"main\"\n\"418868\";\"Dowlatabad\";\"ascii\"\n\"418868\";\"Daulatabad\";\"other\"\n\"418868\";\"Daulatābād\";\"other\"\n\"418868\";\"دولت آباد\";\"other\"\n\"418896\";\"Dorcheh Pīāz\";\"main\"\n\"418896\";\"Dorcheh Piaz\";\"ascii\"\n\"418896\";\"Darcheh Piaz\";\"other\"\n\"418896\";\"Darcheh Pīāz\";\"other\"\n\"418896\";\"Dorcheh Peyaz\";\"other\"\n\"418896\";\"Dorcheh Peyāz\";\"other\"\n\"1113217\";\"Zābol\";\"main\"\n\"1113217\";\"Zabol\";\"ascii\"\n\"1113217\";\"Zabol'\";\"other\"\n\"1113217\";\"Заболь\";\"other\"\n\"1113217\";\"زابل\";\"other\"\n\"1159301\";\"Zāhedān\";\"main\"\n\"1159301\";\"Zahedan\";\"ascii\"\n\"1159301\";\"Dowzdab\";\"other\"\n\"1159301\";\"Dowzdāb\";\"other\"\n\"1159301\";\"Duzdab\";\"other\"\n\"1159301\";\"Duzdap\";\"other\"\n\"1159301\";\"Duzdāb\";\"other\"\n\"1159301\";\"Duzdāp\";\"other\"\n\"1159301\";\"Zahedan-e (Yek)\";\"other\"\n\"1159301\";\"Zahidan\";\"other\"\n\"1159301\";\"Zaidan\";\"other\"\n\"1159301\";\"Zaidān\";\"other\"\n\"1159301\";\"Zakhedan\";\"other\"\n\"1159301\";\"Zāhedān-e (Yek)\";\"other\"\n\"1159301\";\"Захедан\";\"other\"\n\"1159301\";\"زاهدان\";\"other\"\n\"1159362\";\"Torbat-e Jām\";\"main\"\n\"1159362\";\"Torbat-e Jam\";\"ascii\"\n\"1159362\";\"Torbat-e Sheykh Jam\";\"other\"\n\"1159362\";\"Torbat-e Sheykh Jām\";\"other\"\n\"1159362\";\"Turbat-i-Shaikh Jam\";\"other\"\n\"1159362\";\"تربت جام\";\"other\"\n\"1159384\";\"Tāybād\";\"main\"\n\"1159384\";\"Taybad\";\"ascii\"\n\"1159384\";\"Taiabad\";\"other\"\n\"1159384\";\"Tayebad\";\"other\"\n\"1159384\";\"Tayebat\";\"other\"\n\"1159384\";\"Tayyebat\";\"other\"\n\"1159384\";\"Taīabad\";\"other\"\n\"1159384\";\"Tāyebāt\";\"other\"\n\"1159384\";\"Ţayyebāt\";\"other\"\n\"1159384\";\"تايباد\";\"other\"\n\"1159716\";\"Sarakhs\";\"main\"\n\"1159716\";\"Serakhs\";\"other\"\n\"1159716\";\"Сарахс\";\"other\"\n\"1159716\";\"سرخس\";\"other\"\n\"1160571\";\"Khāsh\";\"main\"\n\"1160571\";\"Khash\";\"ascii\"\n\"1160571\";\"Kavash\";\"other\"\n\"1160571\";\"Kwash\";\"other\"\n\"1160571\";\"Kwāsh\";\"other\"\n\"1160571\";\"Vasht\";\"other\"\n\"1160571\";\"Vāsht\";\"other\"\n\"1160571\";\"Хаш\";\"other\"\n\"1160571\";\"خاش\";\"other\"\n\"1160939\";\"Īrānshahr\";\"main\"\n\"1160939\";\"Iranshahr\";\"ascii\"\n\"1160939\";\"Fahrej\";\"other\"\n\"1160939\";\"Fehruj\";\"other\"\n\"1160939\";\"Qal`eh-ye Naseri\";\"other\"\n\"1160939\";\"Qal‘eh-ye Nāşerī\";\"other\"\n\"1160939\";\"ايرانشهر\";\"other\"\n\"1161724\";\"Chāh Bahār\";\"main\"\n\"1161724\";\"Chah Bahar\";\"ascii\"\n\"1161724\";\"Bandar Beheshti\";\"other\"\n\"1161724\";\"Bandar Beheshtī\";\"other\"\n\"1161724\";\"Chabahar\";\"other\"\n\"1161724\";\"Chabakhar\";\"other\"\n\"1161724\";\"Chah-e-Bahar\";\"other\"\n\"1161724\";\"Chahbar\";\"other\"\n\"1161724\";\"Chābahār\";\"other\"\n\"1161724\";\"Chāh-e-Bahār\";\"other\"\n\"1161724\";\"Chāhbār\";\"other\"\n\"1161724\";\"Чабахар\";\"other\"\n\"1161724\";\"چاه بهار\";\"other\"\n\"6949363\";\"Famast\";\"main\"\n\"2627130\";\"Siglufjörður\";\"main\"\n\"2627130\";\"Siglufjordur\";\"ascii\"\n\"2627130\";\"Hvanneyri\";\"other\"\n\"2627309\";\"Sauðárkrókur\";\"main\"\n\"2627309\";\"Saudarkrokur\";\"ascii\"\n\"2627309\";\"Saudarkrokr\";\"other\"\n\"2627309\";\"Saudharkrokur\";\"other\"\n\"2627309\";\"soizaurukuroukuru\";\"other\"\n\"2627309\";\"ソイザウルクロウクル\";\"other\"\n\"2628020\";\"Neskaupstaður\";\"main\"\n\"2628020\";\"Neskaupstadur\";\"ascii\"\n\"2628020\";\"Nes\";\"other\"\n\"2628020\";\"Neskaupstadhur\";\"other\"\n\"2629833\";\"Húsavík\";\"main\"\n\"2629833\";\"Husavik\";\"ascii\"\n\"2629833\";\"Husayik\";\"other\"\n\"2629833\";\"Nordurthing\";\"other\"\n\"2629833\";\"Norðurþing\";\"other\"\n\"2630299\";\"Höfn\";\"main\"\n\"2630299\";\"Hofn\";\"ascii\"\n\"2632287\";\"Dalvík\";\"main\"\n\"2632287\";\"Dalvik\";\"ascii\"\n\"2632287\";\"Dalvikurbyggd\";\"other\"\n\"2632287\";\"Dalvíkurbyggð\";\"other\"\n\"2633274\";\"Akureyri\";\"main\"\n\"2633274\";\"Akjurejri\";\"other\"\n\"2633274\";\"Akoureuri\";\"other\"\n\"2633274\";\"akureiri\";\"other\"\n\"2633274\";\"Ακουρεΰρι\";\"other\"\n\"2633274\";\"Акюрейри\";\"other\"\n\"2633274\";\"אקוריירי\";\"other\"\n\"2633274\";\"アークレイリ\";\"other\"\n\"3412093\";\"Vestmannaeyjar\";\"main\"\n\"3412093\";\"Kaupstadur\";\"other\"\n\"3412093\";\"Kaupstaður\";\"other\"\n\"3412093\";\"Vestmannaehjjar\";\"other\"\n\"3412093\";\"Вестманнаэйяр\";\"other\"\n\"3412589\";\"Þorlákshöfn\";\"main\"\n\"3412589\";\"Torlakshofn\";\"ascii\"\n\"3412888\";\"Stykkishólmur\";\"main\"\n\"3412888\";\"Stykkisholmur\";\"ascii\"\n\"3413604\";\"Selfoss\";\"main\"\n\"3413727\";\"Sandgerði\";\"main\"\n\"3413727\";\"Sandgerdi\";\"ascii\"\n\"3413727\";\"Sangerdhi\";\"other\"\n\"3413829\";\"Reykjavík\";\"main\"\n\"3413829\";\"Reykjavik\";\"ascii\"\n\"3413829\";\"Refkiavik\";\"other\"\n\"3413829\";\"Reiciavicia\";\"other\"\n\"3413829\";\"Reicivic\";\"other\"\n\"3413829\";\"Reikiavik\";\"other\"\n\"3413829\";\"Reikjavika\";\"other\"\n\"3413829\";\"Reikjavikas\";\"other\"\n\"3413829\";\"Reikjavīka\";\"other\"\n\"3413829\";\"Reiquiavik - Reykjavik\";\"other\"\n\"3413829\";\"Reiquiavik - Reykjavík\";\"other\"\n\"3413829\";\"Rejk'avik\";\"other\"\n\"3413829\";\"Rejk'javik\";\"other\"\n\"3413829\";\"Rejkjavik\";\"other\"\n\"3413829\";\"Rejkjaviko\";\"other\"\n\"3413829\";\"Reykiabik\";\"other\"\n\"3413829\";\"Reykjavìk\";\"other\"\n\"3413829\";\"Reykranes\";\"other\"\n\"3413829\";\"Reykyavik\";\"other\"\n\"3413829\";\"Réicivíc\";\"other\"\n\"3413829\";\"kartuli\";\"other\"\n\"3413829\";\"lei ke ya wei ke\";\"other\"\n\"3413829\";\"leikyabikeu\";\"other\"\n\"3413829\";\"reikyavu~iku\";\"other\"\n\"3413829\";\"rekh ya wik\";\"other\"\n\"3413829\";\"rykyafyk\";\"other\"\n\"3413829\";\"rykyawyk\";\"other\"\n\"3413829\";\"Ρέυκιαβικ\";\"other\"\n\"3413829\";\"Ρευκιαβικ\";\"other\"\n\"3413829\";\"Рейк'явік\";\"other\"\n\"3413829\";\"Рейкьявик\";\"other\"\n\"3413829\";\"Рейкявик\";\"other\"\n\"3413829\";\"Рејкјавик\";\"other\"\n\"3413829\";\"Рэйк'явік\";\"other\"\n\"3413829\";\"Ռեյկյավիկ\";\"other\"\n\"3413829\";\"רייקיאוויק\";\"other\"\n\"3413829\";\"ريكيافيك\";\"other\"\n\"3413829\";\"ریکیاویک\";\"other\"\n\"3413829\";\"เรคยาวิก\";\"other\"\n\"3413829\";\"ქართული\";\"other\"\n\"3413829\";\"ሬይኪያቪክ\";\"other\"\n\"3413829\";\"レイキャヴィーク\";\"other\"\n\"3413829\";\"雷克亞維克\";\"other\"\n\"3413829\";\"雷克雅未克\";\"other\"\n\"3413829\";\"레이캬비크\";\"other\"\n\"3414222\";\"Njarðvík\";\"main\"\n\"3414222\";\"Njardvik\";\"ascii\"\n\"3414222\";\"Innri Njardvik\";\"other\"\n\"3414222\";\"Innri Njarðvík\";\"other\"\n\"3414222\";\"Njardvikur\";\"other\"\n\"3414222\";\"Njarðvíkur\";\"other\"\n\"3414979\";\"Seltjarnarnes\";\"main\"\n\"3415021\";\"Mosfellsbær\";\"main\"\n\"3415021\";\"Mosfellsbaer\";\"ascii\"\n\"3415212\";\"Kópavogur\";\"main\"\n\"3415212\";\"Kopavogur\";\"ascii\"\n\"3415212\";\"Kopavogskaupstadur\";\"other\"\n\"3415212\";\"Koupavogjur\";\"other\"\n\"3415212\";\"Kópavogskaupstaður\";\"other\"\n\"3415212\";\"Коупавогюр\";\"other\"\n\"3415496\";\"Keflavík\";\"main\"\n\"3415496\";\"Keflavik\";\"ascii\"\n\"3415496\";\"Kephlabik\";\"other\"\n\"3415496\";\"kefuravu~iku\";\"other\"\n\"3415496\";\"Κεφλαβίκ\";\"other\"\n\"3415496\";\"ケフラヴィーク\";\"other\"\n\"3415667\";\"Ísafjörður\";\"main\"\n\"3415667\";\"Isafjoerdur\";\"ascii\"\n\"3415667\";\"Isafiordr\";\"other\"\n\"3415667\";\"Isafjardardjup\";\"other\"\n\"3415667\";\"Isafjordur\";\"other\"\n\"3415667\";\"Issafjordur\";\"other\"\n\"3415667\";\"Issafjörður\";\"other\"\n\"3415667\";\"Ísafjardardjup\";\"other\"\n\"3415761\";\"Hveragerði\";\"main\"\n\"3415761\";\"Hveragerdi\";\"ascii\"\n\"3415761\";\"Hveragerdisbaer\";\"other\"\n\"3415761\";\"Hveragerðisbær\";\"other\"\n\"3415761\";\"kuberageruji\";\"other\"\n\"3415761\";\"kuvu~erageruji\";\"other\"\n\"3415761\";\"クベラゲルジ\";\"other\"\n\"3415761\";\"クヴェラゲルジ\";\"other\"\n\"3416706\";\"Hafnarfjörður\";\"main\"\n\"3416706\";\"Hafnarfjordur\";\"ascii\"\n\"3416706\";\"Hafnarfjoerdur\";\"other\"\n\"3416706\";\"Halfnarfjordur\";\"other\"\n\"3416706\";\"Halfnarfjorður\";\"other\"\n\"3416706\";\"Khapnarf'ordjur\";\"other\"\n\"3416706\";\"Хапнарфьордюр\";\"other\"\n\"3416888\";\"Grindavík\";\"main\"\n\"3416888\";\"Grindavik\";\"ascii\"\n\"3417195\";\"Garðabær\";\"main\"\n\"3417195\";\"Gardabar\";\"ascii\"\n\"3417195\";\"Gardabaer\";\"other\"\n\"3417195\";\"gardhabayr\";\"other\"\n\"3417195\";\"گارذابایر\";\"other\"\n\"3417972\";\"Álftanes\";\"main\"\n\"3417972\";\"Alftanes\";\"ascii\"\n\"3418076\";\"Borgarnes\";\"main\"\n\"3418653\";\"Akranes\";\"main\"\n\"3418653\";\"Akranesas\";\"other\"\n\"3418653\";\"Skipaskagi\";\"other\"\n\"3418653\";\"a ke la nei si\";\"other\"\n\"3418653\";\"akuranesu\";\"other\"\n\"3418653\";\"Акранес\";\"other\"\n\"3418653\";\"アクラネース\";\"other\"\n\"3418653\";\"阿克拉内斯\";\"other\"\n\"6354943\";\"Egilsstaðir\";\"main\"\n\"6354943\";\"Egilsstadir\";\"ascii\"\n\"2522677\";\"Zumpano\";\"main\"\n\"2522683\";\"Zerfaliu\";\"main\"\n\"2522685\";\"Zeddiani\";\"main\"\n\"2522691\";\"Zambrone\";\"main\"\n\"2522692\";\"Zagarise\";\"main\"\n\"2522696\";\"Zafferana Etnea\";\"main\"\n\"2522696\";\"Zafarana Etnea\";\"other\"\n\"2522696\";\"Zaffarana Etnea\";\"other\"\n\"2522696\";\"Zafferana\";\"other\"\n\"2522709\";\"Vizzini\";\"main\"\n\"2522713\";\"Vittoria\";\"main\"\n\"2522713\";\"Vittoira\";\"other\"\n\"2522713\";\"vu~ittoria\";\"other\"\n\"2522713\";\"ヴィットーリア\";\"other\"\n\"2522718\";\"Vita\";\"main\"\n\"2522718\";\"vu~ita\";\"other\"\n\"2522718\";\"ヴィータ\";\"other\"\n\"2522720\";\"Villaurbana\";\"main\"\n\"2522724\";\"Villaspeciosa\";\"main\"\n\"2522725\";\"Villasor\";\"main\"\n\"2522727\";\"Villasimius\";\"main\"\n\"2522730\";\"Villa San Giovanni\";\"main\"\n\"2522730\";\"Villa San Giuvanni\";\"other\"\n\"2522731\";\"Villasalto\";\"main\"\n\"2522732\";\"Villarosa\";\"main\"\n\"2522732\";\"Villarosa Sicilia\";\"other\"\n\"2522734\";\"Villaputzu\";\"main\"\n\"2522736\";\"Villapiana\";\"main\"\n\"2522742\";\"Villanovafranca\";\"main\"\n\"2522748\";\"Villamassargia\";\"main\"\n\"2522749\";\"Villamar\";\"main\"\n\"2522750\";\"Villalba\";\"main\"\n\"2522750\";\"Vilalba\";\"other\"\n\"2522750\";\"Villarba\";\"other\"\n\"2522757\";\"Villagrande Strisaili\";\"main\"\n\"2522757\";\"Villagrande\";\"other\"\n\"2522757\";\"Villagrande Strisaile\";\"other\"\n\"2522760\";\"Villafrati\";\"main\"\n\"2522761\";\"Villafranca Tirrena\";\"main\"\n\"2522762\";\"Villafranca Sicula\";\"main\"\n\"2522762\";\"Villafranca\";\"other\"\n\"2522766\";\"Villacidro\";\"main\"\n\"2522766\";\"vu~irrachidoro\";\"other\"\n\"2522766\";\"ヴィッラチードロ\";\"other\"\n\"2522767\";\"Villabate\";\"main\"\n\"2522767\";\"Villabbati\";\"other\"\n\"2522772\";\"Viggianello\";\"main\"\n\"2522774\";\"Vicari\";\"main\"\n\"2522776\";\"Vibo Valentia\";\"main\"\n\"2522776\";\"Monteleone di Calabria\";\"other\"\n\"2522776\";\"Vibbu Valenzia\";\"other\"\n\"2522776\";\"Vibo-Valentija\";\"other\"\n\"2522776\";\"Вибо-Валентия\";\"other\"\n\"2522776\";\"ヴィボ・ヴァレンツィア\";\"other\"\n\"2522777\";\"Viagrande\";\"main\"\n\"2522777\";\"Viagranni\";\"other\"\n\"2522779\";\"Verzino\";\"main\"\n\"2522785\";\"Verbicaro\";\"main\"\n\"2522787\";\"Ventimiglia di Sicilia\";\"main\"\n\"2522787\";\"Calamigna\";\"other\"\n\"2522788\";\"Venetico\";\"main\"\n\"2522792\";\"Vazzano\";\"main\"\n\"2522795\";\"Varapodio\";\"main\"\n\"2522798\";\"Vallermosa\";\"main\"\n\"2522801\";\"Vallelunga Pratameno\";\"main\"\n\"2522801\";\"Vaddilonga\";\"other\"\n\"2522803\";\"Vallefiorita\";\"main\"\n\"2522804\";\"Valledolmo\";\"main\"\n\"2522804\";\"Vaddilurmu\";\"other\"\n\"2522805\";\"Valguarnera Caropepe\";\"main\"\n\"2522805\";\"Carrapipi\";\"other\"\n\"2522805\";\"Valguarnera\";\"other\"\n\"2522807\";\"Valdina\";\"main\"\n\"2522812\";\"Vaccarizzo Albanese\";\"main\"\n\"2522812\";\"Vakarici\";\"other\"\n\"2522816\";\"Uta\";\"main\"\n\"2522818\";\"Ustica\";\"main\"\n\"2522818\";\"usutika dao\";\"other\"\n\"2522818\";\"ウスティカ島\";\"other\"\n\"2522821\";\"Ussana\";\"main\"\n\"2522826\";\"Uras\";\"main\"\n\"2522832\";\"Ulassai\";\"main\"\n\"2522833\";\"Ugento\";\"main\"\n\"2522835\";\"Ucria\";\"main\"\n\"2522839\";\"Tusa\";\"main\"\n\"2522845\";\"Tuili\";\"main\"\n\"2522847\";\"Tropea\";\"main\"\n\"2522847\";\"toropea\";\"other\"\n\"2522847\";\"トロペーア\";\"other\"\n\"2522849\";\"Troina\";\"main\"\n\"2522849\";\"Truina\";\"other\"\n\"2522853\";\"Tripi\";\"main\"\n\"2522857\";\"Tricase\";\"main\"\n\"2522862\";\"Trenta\";\"main\"\n\"2522862\";\"torenta\";\"other\"\n\"2522862\";\"トレンタ\";\"other\"\n\"2522865\";\"Trecastagni\";\"main\"\n\"2522865\";\"Tricastagni\";\"other\"\n\"2522867\";\"Trebisacce\";\"main\"\n\"2522870\";\"Tratalias\";\"main\"\n\"2522876\";\"Trapani\";\"main\"\n\"2522876\";\"Drepanum\";\"other\"\n\"2522876\";\"Trapena\";\"other\"\n\"2522876\";\"Tràpani\";\"other\"\n\"2522876\";\"Tràpena\";\"other\"\n\"2522876\";\"Trápani\";\"other\"\n\"2522876\";\"torapani\";\"other\"\n\"2522876\";\"Трапани\";\"other\"\n\"2522876\";\"טרפאני\";\"other\"\n\"2522876\";\"トラーパニ\";\"other\"\n\"2522883\";\"Trabia\";\"main\"\n\"2522883\";\"Trabbia\";\"other\"\n\"2522883\";\"Trabbìa\";\"other\"\n\"2522885\";\"Tortorici\";\"main\"\n\"2522885\";\"Turturici\";\"other\"\n\"2522886\";\"Tortora\";\"main\"\n\"2522890\";\"Tortolì\";\"main\"\n\"2522890\";\"Tortoli\";\"ascii\"\n\"2522890\";\"torutori\";\"other\"\n\"2522890\";\"Тортоли\";\"other\"\n\"2522890\";\"トルトリ\";\"other\"\n\"2522893\";\"Torretta\";\"main\"\n\"2522900\";\"Torrenova\";\"main\"\n\"2522908\";\"Torregrotta\";\"main\"\n\"2522911\";\"Torre di Ruggiero\";\"main\"\n\"2522911\";\"Torre\";\"other\"\n\"2522911\";\"Torre di Ruggero\";\"other\"\n\"2522924\";\"Torano Castello\";\"main\"\n\"2522930\";\"Tiriolo\";\"main\"\n\"2522934\";\"Tiggiano\";\"main\"\n\"2522941\";\"Teulada\";\"main\"\n\"2522944\";\"Tertenia\";\"main\"\n\"2522950\";\"Terravecchia\";\"main\"\n\"2522952\";\"Terrasini\";\"main\"\n\"2522952\";\"Terrasini Favarotta\";\"ascii\"\n\"2522956\";\"Terranova da Sibari\";\"main\"\n\"2522956\";\"Terranova di Sibari\";\"ascii\"\n\"2522956\";\"Terranova da Síbari\";\"other\"\n\"2522957\";\"Terranova di Pollino\";\"main\"\n\"2522958\";\"Terralba\";\"main\"\n\"2522958\";\"Tarraba\";\"other\"\n\"2522960\";\"Termini Imerese\";\"main\"\n\"2522960\";\"Termini\";\"other\"\n\"2522960\";\"Thermae Himerarae\";\"other\"\n\"2522960\";\"Tèrmini\";\"other\"\n\"2522968\";\"Taviano\";\"main\"\n\"2522969\";\"Taverna\";\"main\"\n\"2522970\";\"Taurisano\";\"main\"\n\"2522970\";\"Tanrisano\";\"other\"\n\"2522971\";\"Taurianova\";\"main\"\n\"2522971\";\"Iatrinoli\";\"other\"\n\"2522973\";\"Tarsia\";\"main\"\n\"2522975\";\"Taormina\";\"main\"\n\"2522975\";\"Taorima\";\"other\"\n\"2522975\";\"Tauromenium\";\"other\"\n\"2522975\";\"ta ao min na\";\"other\"\n\"2522975\";\"taorumina\";\"other\"\n\"2522975\";\"Таормина\";\"other\"\n\"2522975\";\"טאורמינה\";\"other\"\n\"2522975\";\"タオルミーナ\";\"other\"\n\"2522975\";\"塔奥敏纳\";\"other\"\n\"2522980\";\"Sutera\";\"main\"\n\"2522985\";\"Suelli\";\"main\"\n\"2522990\";\"Strongoli\";\"main\"\n\"2522997\";\"Stilo\";\"main\"\n\"2522999\";\"Stignano\";\"main\"\n\"2523004\";\"Stalettì\";\"main\"\n\"2523004\";\"Staletti\";\"ascii\"\n\"2523010\";\"Squillace\";\"main\"\n\"2523020\";\"Spilinga\";\"main\"\n\"2523022\";\"Spezzano Piccolo\";\"main\"\n\"2523023\";\"Spezzano della Sila\";\"main\"\n\"2523023\";\"Spezzano Grande\";\"ascii\"\n\"2523025\";\"Spezzano Albanese\";\"main\"\n\"2523025\";\"Spixana\";\"other\"\n\"2523030\";\"Specchia\";\"main\"\n\"2523041\";\"Spadafora\";\"main\"\n\"2523042\";\"Soveria Simeri\";\"main\"\n\"2523042\";\"Soveria\";\"other\"\n\"2523043\";\"Soveria Mannelli\";\"main\"\n\"2523044\";\"Soverato Superiore\";\"main\"\n\"2523045\";\"Soverato\";\"main\"\n\"2523045\";\"Soverato Marina\";\"ascii\"\n\"2523045\";\"Marina di Soverato\";\"other\"\n\"2523049\";\"Sortino\";\"main\"\n\"2523049\";\"Sciurtinu\";\"other\"\n\"2523052\";\"Soriano Calabro\";\"main\"\n\"2523053\";\"Sorianello\";\"main\"\n\"2523056\";\"Sommatino\";\"main\"\n\"2523056\";\"Summatinu\";\"other\"\n\"2523062\";\"Soleminis\";\"main\"\n\"2523064\";\"Solarussa\";\"main\"\n\"2523066\";\"Solarino\";\"main\"\n\"2523066\";\"San Paulu\";\"other\"\n\"2523083\";\"Siracusa\";\"main\"\n\"2523083\";\"Sarausa\";\"other\"\n\"2523083\";\"Sirakuza\";\"other\"\n\"2523083\";\"Sirakuze\";\"other\"\n\"2523083\";\"Syracusae\";\"other\"\n\"2523083\";\"Syracuse\";\"other\"\n\"2523083\";\"Syrakus\";\"other\"\n\"2523083\";\"Syrakusa\";\"other\"\n\"2523083\";\"Syrakuzy\";\"other\"\n\"2523083\";\"shirakusa\";\"other\"\n\"2523083\";\"silakusa\";\"other\"\n\"2523083\";\"syraqwst\";\"other\"\n\"2523083\";\"syrqwzh\";\"other\"\n\"2523083\";\"xi la ku sa\";\"other\"\n\"2523083\";\"Сиракуза\";\"other\"\n\"2523083\";\"סירקוזה\";\"other\"\n\"2523083\";\"سيراقوسة\";\"other\"\n\"2523083\";\"シラクサ\";\"other\"\n\"2523083\";\"锡拉库萨\";\"other\"\n\"2523083\";\"시라쿠사\";\"other\"\n\"2523086\";\"Sinopoli\";\"main\"\n\"2523086\";\"shinopori\";\"other\"\n\"2523086\";\"シノーポリ\";\"other\"\n\"2523087\";\"Sinnai\";\"main\"\n\"2523090\";\"Sinagra\";\"main\"\n\"2523098\";\"Simbario\";\"main\"\n\"2523099\";\"Simaxis\";\"main\"\n\"2523103\";\"Silius\";\"main\"\n\"2523104\";\"Siliqua\";\"main\"\n\"2523112\";\"Siderno Superiore\";\"main\"\n\"2523113\";\"Siderno\";\"main\"\n\"2523113\";\"Siderno Marina\";\"ascii\"\n\"2523113\";\"Siderno Marino\";\"other\"\n\"2523113\";\"shideruno\";\"other\"\n\"2523113\";\"シデルノ\";\"other\"\n\"2523116\";\"Siculiana\";\"main\"\n\"2523132\";\"Seulo\";\"main\"\n\"2523133\";\"Seui\";\"main\"\n\"2523135\";\"Settimo San Pietro\";\"main\"\n\"2523135\";\"Seltimo San Pietro\";\"other\"\n\"2523136\";\"Sestu\";\"main\"\n\"2523137\";\"Sersale\";\"main\"\n\"2523142\";\"Serrenti\";\"main\"\n\"2523145\";\"Serrastretta\";\"main\"\n\"2523146\";\"Serra San Bruno\";\"main\"\n\"2523147\";\"Serra Pedace\";\"main\"\n\"2523147\";\"Serra\";\"other\"\n\"2523148\";\"Serramanna\";\"main\"\n\"2523151\";\"Serradifalco\";\"main\"\n\"2523151\";\"Serradifarcu\";\"other\"\n\"2523156\";\"Serdiana\";\"main\"\n\"2523159\";\"Senorbì\";\"main\"\n\"2523159\";\"Senorbi\";\"ascii\"\n\"2523162\";\"Seminara\";\"main\"\n\"2523165\";\"Selegas\";\"main\"\n\"2523166\";\"Selargius\";\"main\"\n\"2523172\";\"Segariu\";\"main\"\n\"2523180\";\"Scordia\";\"main\"\n\"2523180\";\"Scurdia\";\"other\"\n\"2523187\";\"Scilla\";\"main\"\n\"2523190\";\"Scido\";\"main\"\n\"2523190\";\"shido\";\"other\"\n\"2523190\";\"シード\";\"other\"\n\"2523192\";\"Scicli\";\"main\"\n\"2523192\";\"Shikli\";\"other\"\n\"2523192\";\"shikuri\";\"other\"\n\"2523192\";\"Шикли\";\"other\"\n\"2523192\";\"シクリ\";\"other\"\n\"2523193\";\"Sciara\";\"main\"\n\"2523194\";\"Sciacca\";\"main\"\n\"2523194\";\"Sciacea\";\"other\"\n\"2523194\";\"Shaka\";\"other\"\n\"2523194\";\"Xaca\";\"other\"\n\"2523194\";\"Шака\";\"other\"\n\"2523202\";\"Scandale\";\"main\"\n\"2523204\";\"Scaletta Zanclea\";\"main\"\n\"2523204\";\"Scaletta\";\"other\"\n\"2523207\";\"Scalea\";\"main\"\n\"2523209\";\"Scala Coeli\";\"main\"\n\"2523215\";\"Savelli\";\"main\"\n\"2523217\";\"Satriano\";\"main\"\n\"2523222\";\"Sarroch\";\"main\"\n\"2523229\";\"Sardara\";\"main\"\n\"2523233\";\"Saracena\";\"main\"\n\"2523234\";\"Saponara\";\"main\"\n\"2523234\";\"Saponara Villafranca\";\"ascii\"\n\"2523234\";\"Sapunara\";\"other\"\n\"2523237\";\"San Vito sullo Ionio\";\"main\"\n\"2523237\";\"San Vito sull'Ionio\";\"ascii\"\n\"2523237\";\"San Vito\";\"other\"\n\"2523237\";\"San Vito sul Ionio\";\"other\"\n\"2523237\";\"San Vito sull'Jonio\";\"other\"\n\"2523237\";\"San Vito sullo Iónio\";\"other\"\n\"2523238\";\"San Vito Lo Capo\";\"main\"\n\"2523238\";\"San Vito lo Capo\";\"ascii\"\n\"2523238\";\"San Vito\";\"other\"\n\"2523238\";\"San Vito lo Cape\";\"other\"\n\"2523241\";\"San Vito\";\"main\"\n\"2523242\";\"San Vincenzo la Costa\";\"main\"\n\"2523242\";\"San Vincenzo\";\"other\"\n\"2523242\";\"San Vincenzo La Costa\";\"other\"\n\"2523247\";\"Santo Stefano Quisquina\";\"main\"\n\"2523247\";\"Santu Stefanu Quisquina\";\"other\"\n\"2523247\";\"Santu Stèfanu Quisquina\";\"other\"\n\"2523248\";\"Santo Stefano in Aspromonte\";\"main\"\n\"2523248\";\"San Stefano\";\"other\"\n\"2523248\";\"Santo Stefano\";\"other\"\n\"2523248\";\"Santo Stefano d'Aspromonte\";\"other\"\n\"2523249\";\"Santo Stefano di Rogliano\";\"main\"\n\"2523249\";\"サント・ステーファノ・ディ・ロリアーノ\";\"other\"\n\"2523250\";\"Santo Stefano di Camastra\";\"main\"\n\"2523255\";\"San Sperate\";\"main\"\n\"2523255\";\"Santi Sperate\";\"other\"\n\"2523255\";\"Santo Sperale\";\"other\"\n\"2523255\";\"Santo Sperate\";\"other\"\n\"2523258\";\"Sant'Onofrio\";\"main\"\n\"2523262\";\"Sant'Ilario dello Ionio\";\"main\"\n\"2523262\";\"Sant'Ilario del Ionio\";\"ascii\"\n\"2523262\";\"Sant'Ilario\";\"other\"\n\"2523262\";\"Sant'Ilario Jonio\";\"other\"\n\"2523262\";\"Sant'Ilario dell Ionio\";\"other\"\n\"2523262\";\"Sant'Ilário\";\"other\"\n\"2523262\";\"Sant'Ilário dell Ionio\";\"other\"\n\"2523266\";\"Sant'Eufemia d'Aspromonte\";\"main\"\n\"2523266\";\"Sant'Eufemia di Aspromonte\";\"other\"\n\"2523271\";\"San Teodoro\";\"main\"\n\"2523280\";\"Santa Venerina\";\"main\"\n\"2523280\";\"Santa Vinirina\";\"other\"\n\"2523282\";\"Santa Teresa di Riva\";\"main\"\n\"2523285\";\"Santa Sofia d'Epiro\";\"main\"\n\"2523285\";\"Santa Sofia d'Epvo\";\"other\"\n\"2523285\";\"Shen Sofia\";\"other\"\n\"2523286\";\"Santa Severina\";\"main\"\n\"2523297\";\"Sant'Antioco\";\"main\"\n\"2523298\";\"Sant’Anna Arresi\";\"main\"\n\"2523298\";\"Sant'Anna Arresi\";\"ascii\"\n\"2523298\";\"Arresi\";\"other\"\n\"2523304\";\"Santa Ninfa\";\"main\"\n\"2523306\";\"Sant'Angelo Muxaro\";\"main\"\n\"2523306\";\"Sant'Angilu Muxaru\";\"other\"\n\"2523306\";\"Sant'Àngilu Muxaru\";\"other\"\n\"2523307\";\"Sant'Angelo di Brolo\";\"main\"\n\"2523307\";\"Sant'Angelo\";\"other\"\n\"2523311\";\"Gerocarne\";\"main\"\n\"2523311\";\"Sant'Angelo\";\"ascii\"\n\"2523312\";\"Sant’Andrea Frius\";\"main\"\n\"2523312\";\"Sant'Andrea Frius\";\"ascii\"\n\"2523313\";\"Sant'Andrea Apostolo dello Ionio\";\"main\"\n\"2523313\";\"Sant'Andrea\";\"other\"\n\"2523313\";\"Sant'Andrea Aposlolo dello Ionio\";\"other\"\n\"2523313\";\"Sant'Andrea Apostolo\";\"other\"\n\"2523320\";\"Santa Maria di Licodia\";\"main\"\n\"2523320\";\"Santa Maria di Licuddia\";\"other\"\n\"2523330\";\"Santa Margherita di Belice\";\"main\"\n\"2523330\";\"San Margherita\";\"other\"\n\"2523330\";\"Santa Margarita\";\"other\"\n\"2523330\";\"Santa Margherita Belice\";\"other\"\n\"2523333\";\"Santa Lucia del Mela\";\"main\"\n\"2523338\";\"Sant'Alfio\";\"main\"\n\"2523338\";\"Sant'Arfiu\";\"other\"\n\"2523340\";\"Sant'Alessio Siculo\";\"main\"\n\"2523340\";\"Sant'Alessiu Siculu\";\"other\"\n\"2523340\";\"Sant'Alessiu Sìculu\";\"other\"\n\"2523344\";\"Santa Giusta\";\"main\"\n\"2523347\";\"Sant'Agata di Militello\";\"main\"\n\"2523347\";\"San Agata\";\"other\"\n\"2523347\";\"Sant'Agata\";\"other\"\n\"2523347\";\"Sant'Agata Militello\";\"other\"\n\"2523347\";\"Sant'Ágata\";\"other\"\n\"2523348\";\"Sant'Agata di Esaro\";\"main\"\n\"2523348\";\"Sant'Agata\";\"other\"\n\"2523348\";\"Sant'Agata d'Esaro\";\"other\"\n\"2523352\";\"Santa Flavia\";\"main\"\n\"2523353\";\"Santa Elisabetta\";\"main\"\n\"2523353\";\"Santa Elisabbetta\";\"other\"\n\"2523353\";\"Santa Elizabetta\";\"other\"\n\"2523354\";\"Santa Domenica Vittoria\";\"main\"\n\"2523354\";\"Santa Domenica\";\"other\"\n\"2523355\";\"Santa Domenica Talao\";\"main\"\n\"2523361\";\"Santadi\";\"main\"\n\"2523362\";\"Santa Croce Camerina\";\"main\"\n\"2523362\";\"Santa Cruci Camarina\";\"other\"\n\"2523362\";\"サンタ・クローチェ・カメリーナ\";\"other\"\n\"2523365\";\"Santa Cristina d'Aspromonte\";\"main\"\n\"2523365\";\"Santa Cristina\";\"other\"\n\"2523366\";\"Santa Caterina Villarmosa\";\"main\"\n\"2523366\";\"Santa Catarina\";\"other\"\n\"2523367\";\"Santa Caterina dello Ionio\";\"main\"\n\"2523367\";\"Santa Caterina\";\"other\"\n\"2523367\";\"Santa Caterina del Jonio\";\"other\"\n\"2523367\";\"Santa Caterina dell Ionio\";\"other\"\n\"2523367\";\"Santa Caterina dell Iónio\";\"other\"\n\"2523367\";\"Santa Caterina dell'Jonio\";\"other\"\n\"2523368\";\"Santa Caterina Albanese\";\"main\"\n\"2523368\";\"Picilia\";\"other\"\n\"2523368\";\"Santa Caterina\";\"other\"\n\"2523371\";\"San Sosti\";\"main\"\n\"2523373\";\"San Sostene\";\"main\"\n\"2523375\";\"San Salvatore di Fitalia\";\"main\"\n\"2523375\";\"San Salvatore\";\"other\"\n\"2523382\";\"San Roberto\";\"main\"\n\"2523385\";\"Villa San Pietro\";\"main\"\n\"2523385\";\"San Pietro Pula\";\"other\"\n\"2523386\";\"San Pietro in Guarano\";\"main\"\n\"2523388\";\"San Pietro Apostolo\";\"main\"\n\"2523389\";\"San Pietro a Maida\";\"main\"\n\"2523389\";\"San Pietro\";\"other\"\n\"2523396\";\"San Pietro\";\"main\"\n\"2523396\";\"Clarenza di San Pietro\";\"other\"\n\"2523396\";\"San Pietro Clarenza\";\"other\"\n\"2523396\";\"Santo Pietro\";\"other\"\n\"2523397\";\"San Piero Patti\";\"main\"\n\"2523397\";\"San Pietro Patti\";\"other\"\n\"2523398\";\"San Pier Niceto\";\"main\"\n\"2523406\";\"San Nicolò d’Arcidano\";\"main\"\n\"2523406\";\"San Nicolo d'Arcidano\";\"ascii\"\n\"2523406\";\"San Nicolò d'Arcidano\";\"other\"\n\"2523408\";\"San Nicola dell'Alto\";\"main\"\n\"2523408\";\"Shen Kolli\";\"other\"\n\"2523409\";\"San Nicola da Crissa\";\"main\"\n\"2523409\";\"San Nicola di Crissa\";\"other\"\n\"2523410\";\"San Nicola Arcella\";\"main\"\n\"2523416\";\"San Michele di Ganzaria\";\"main\"\n\"2523416\";\"San Michele\";\"other\"\n\"2523416\";\"San Micheli di Ganzaria\";\"other\"\n\"2523418\";\"San Mauro Marchesato\";\"main\"\n\"2523419\";\"San Mauro Castelverde\";\"main\"\n\"2523419\";\"San Mauro\";\"other\"\n\"2523419\";\"Santu Mauru\";\"other\"\n\"2523420\";\"San Martino di Finita\";\"main\"\n\"2523420\";\"San Martino\";\"other\"\n\"2523420\";\"Shen Murtiri\";\"other\"\n\"2523425\";\"San Marco d'Alunzio\";\"main\"\n\"2523426\";\"San Marco Argentano\";\"main\"\n\"2523432\";\"San Mango d'Aquino\";\"main\"\n\"2523432\";\"San Mango\";\"other\"\n\"2523434\";\"Sanluri\";\"main\"\n\"2523434\";\"Sullurium\";\"other\"\n\"2523434\";\"sanruri\";\"other\"\n\"2523434\";\"Санлури\";\"other\"\n\"2523434\";\"サンルーリ\";\"other\"\n\"2523435\";\"San Lucido\";\"main\"\n\"2523436\";\"San Luca\";\"main\"\n\"2523438\";\"San Lorenzo del Vallo\";\"main\"\n\"2523438\";\"San Lorenzo de Vallo\";\"other\"\n\"2523440\";\"San Lorenzo\";\"main\"\n\"2523440\";\"San Lorenzo di Reggio Calabria\";\"other\"\n\"2523447\";\"San Gregorio d'Ippona\";\"main\"\n\"2523447\";\"San Gregorio\";\"other\"\n\"2523448\";\"San Gregorio di Catania\";\"main\"\n\"2523448\";\"San Gregorio\";\"other\"\n\"2523448\";\"San Grigoriu\";\"other\"\n\"2523451\";\"San Giuseppe Jato\";\"main\"\n\"2523451\";\"San Giuseppe Iato\";\"ascii\"\n\"2523456\";\"San Giovanni Suergiu\";\"main\"\n\"2523456\";\"San Giovanni\";\"other\"\n\"2523459\";\"Samo\";\"main\"\n\"2523459\";\"San Giovanni Samio\";\"ascii\"\n\"2523459\";\"San Giovanni\";\"other\"\n\"2523459\";\"San Giovanni Samo\";\"other\"\n\"2523459\";\"samo\";\"other\"\n\"2523459\";\"サーモ\";\"other\"\n\"2523460\";\"San Giovanni la Punta\";\"main\"\n\"2523460\";\"San Giovanni\";\"other\"\n\"2523460\";\"San Giuvanni la Punta\";\"other\"\n\"2523461\";\"San Giovanni in Fiore\";\"main\"\n\"2523462\";\"San Giovanni Gemini\";\"main\"\n\"2523462\";\"San Giuvanni\";\"other\"\n\"2523472\";\"San Giorgio Morgeto\";\"main\"\n\"2523472\";\"San Giorgio\";\"other\"\n\"2523472\";\"San Giórgio\";\"other\"\n\"2523473\";\"San Giorgio Albanese\";\"main\"\n\"2523473\";\"Mbuzati\";\"other\"\n\"2523473\";\"San Giorgio\";\"other\"\n\"2523478\";\"Sangineto\";\"main\"\n\"2523482\";\"San Gavino Monreale\";\"main\"\n\"2523487\";\"San Fratello\";\"main\"\n\"2523487\";\"Fratello\";\"other\"\n\"2523494\";\"San Filippo del Mela\";\"main\"\n\"2523494\";\"San Filippo della Mela\";\"ascii\"\n\"2523497\";\"San Fili\";\"main\"\n\"2523498\";\"San Ferdinando\";\"main\"\n\"2523499\";\"San Donato di Ninea\";\"main\"\n\"2523499\";\"San Donato\";\"other\"\n\"2523500\";\"San Demetrio Corone\";\"main\"\n\"2523500\";\"Shen Mitri\";\"other\"\n\"2523504\";\"San Costantino Calabro\";\"main\"\n\"2523504\";\"San Costantino\";\"other\"\n\"2523509\";\"San Cono\";\"main\"\n\"2523509\";\"Santu Conu\";\"other\"\n\"2523511\";\"San Cipirello\";\"main\"\n\"2523511\";\"San Ciupirreddu\";\"other\"\n\"2523513\";\"San Cataldo\";\"main\"\n\"2523513\";\"San Cataldu\";\"other\"\n\"2523516\";\"San Calogero\";\"main\"\n\"2523519\";\"San Biagio Platani\";\"main\"\n\"2523519\";\"San Biaggio\";\"other\"\n\"2523519\";\"San Biaggiu Platini\";\"other\"\n\"2523519\";\"San Biaggiu Plàtini\";\"other\"\n\"2523519\";\"San Biagio\";\"other\"\n\"2523519\";\"San Biággio\";\"other\"\n\"2523523\";\"San Benedetto Ullano\";\"main\"\n\"2523525\";\"San Basilio\";\"main\"\n\"2523528\";\"San Basile\";\"main\"\n\"2523530\";\"Samugheo\";\"main\"\n\"2523530\";\"Samugheu\";\"other\"\n\"2523533\";\"Sambuca di Sicilia\";\"main\"\n\"2523533\";\"Sambuca\";\"other\"\n\"2523533\";\"Sambuca Sicilia\";\"other\"\n\"2523533\";\"Sammuca\";\"other\"\n\"2523536\";\"Samatzai\";\"main\"\n\"2523537\";\"Samassi\";\"main\"\n\"2523539\";\"Salve\";\"main\"\n\"2523557\";\"Salemi\";\"main\"\n\"2523558\";\"Salaparuta\";\"main\"\n\"2523562\";\"Sadali\";\"main\"\n\"2523569\";\"Ruffano\";\"main\"\n\"2523571\";\"Rovito\";\"main\"\n\"2523574\";\"Rotonda\";\"main\"\n\"2523575\";\"Rota Greca\";\"main\"\n\"2523578\";\"Rossano\";\"main\"\n\"2523578\";\"Roscianum\";\"other\"\n\"2523578\";\"rossano\";\"other\"\n\"2523578\";\"Россано\";\"other\"\n\"2523578\";\"ロッサーノ\";\"other\"\n\"2523581\";\"Rosolini\";\"main\"\n\"2523581\";\"Rusalini\";\"other\"\n\"2523583\";\"Roseto Capo Spulico\";\"main\"\n\"2523583\";\"Roseto\";\"other\"\n\"2523583\";\"Rosito\";\"other\"\n\"2523583\";\"Rosito Capo Spulico\";\"other\"\n\"2523583\";\"Rosito Capo Spúlico\";\"other\"\n\"2523584\";\"Rose\";\"main\"\n\"2523584\";\"roze\";\"other\"\n\"2523584\";\"ローゼ\";\"other\"\n\"2523585\";\"Rosarno\";\"main\"\n\"2523588\";\"Rombiolo\";\"main\"\n\"2523589\";\"Rogliano\";\"main\"\n\"2523589\";\"roriano\";\"other\"\n\"2523589\";\"ロリアーノ\";\"other\"\n\"2523590\";\"Roghudi\";\"main\"\n\"2523590\";\"Roghudi Vecchio\";\"other\"\n\"2523590\";\"Vuni\";\"other\"\n\"2523591\";\"Roggiano Gravina\";\"main\"\n\"2523591\";\"Rogiano Gravina\";\"other\"\n\"2523592\";\"Rodì Milici\";\"main\"\n\"2523592\";\"Rodi\";\"ascii\"\n\"2523595\";\"Roccella Ionica\";\"main\"\n\"2523595\";\"Roccella Jonica\";\"other\"\n\"2523597\";\"Roccavaldina\";\"main\"\n\"2523599\";\"Roccapalumba\";\"main\"\n\"2523600\";\"Roccamena\";\"main\"\n\"2523601\";\"Roccalumera\";\"main\"\n\"2523603\";\"Rocca di Neto\";\"main\"\n\"2523604\";\"Roccabernarda\";\"main\"\n\"2523608\";\"Rizziconi\";\"main\"\n\"2523608\";\"Rizztconi\";\"other\"\n\"2523612\";\"Riposto\";\"main\"\n\"2523612\";\"Ripostu\";\"other\"\n\"2523613\";\"Riola Sardo\";\"main\"\n\"2523613\";\"Riola\";\"other\"\n\"2523616\";\"Riesi\";\"main\"\n\"2523618\";\"Ricadi\";\"main\"\n\"2523619\";\"Ribera\";\"main\"\n\"2523619\";\"Рибера\";\"other\"\n\"2523622\";\"Resuttano\";\"main\"\n\"2523622\";\"Resuttana\";\"other\"\n\"2523623\";\"Rende\";\"main\"\n\"2523623\";\"Ренде\";\"other\"\n\"2523630\";\"Reggio di Calabria\";\"main\"\n\"2523630\";\"Redzho-Kalabrija\";\"other\"\n\"2523630\";\"Reggio Calabria\";\"other\"\n\"2523630\";\"Reggio de Calabre\";\"other\"\n\"2523630\";\"Reggio de Calabria\";\"other\"\n\"2523630\";\"Reggio de Calàbria\";\"other\"\n\"2523630\";\"Regio\";\"other\"\n\"2523630\";\"Rhegium\";\"other\"\n\"2523630\";\"Riggiu Calabbria\";\"other\"\n\"2523630\";\"lei jiao ka la bu li ya\";\"other\"\n\"2523630\";\"rg'w dy qlbryh\";\"other\"\n\"2523630\";\"rydjw kalabrya\";\"other\"\n\"2523630\";\"Реджо-Калабрия\";\"other\"\n\"2523630\";\"רג'ו די קלבריה\";\"other\"\n\"2523630\";\"ريدجو كالابريا\";\"other\"\n\"2523630\";\"レッジョ・ディ・カラブリア\";\"other\"\n\"2523630\";\"雷焦卡拉布里亚\";\"other\"\n\"2523632\";\"Regalbuto\";\"main\"\n\"2523632\";\"Recalbutu\";\"other\"\n\"2523632\";\"Regalbulo\";\"other\"\n\"2523636\";\"Realmonte\";\"main\"\n\"2523636\";\"Rialmunti\";\"other\"\n\"2523638\";\"Ravanusa\";\"main\"\n\"2523638\";\"Rivinusa\";\"other\"\n\"2523641\";\"Randazzo\";\"main\"\n\"2523641\";\"Rannazzu\";\"other\"\n\"2523644\";\"Ramacca\";\"main\"\n\"2523644\";\"Rammacca\";\"other\"\n\"2523650\";\"Ragusa\";\"main\"\n\"2523650\";\"Raguse\";\"other\"\n\"2523650\";\"Raguza\";\"other\"\n\"2523650\";\"Rausa\";\"other\"\n\"2523650\";\"raguza\";\"other\"\n\"2523650\";\"rgwzh\";\"other\"\n\"2523650\";\"Рагуза\";\"other\"\n\"2523650\";\"רגוזה\";\"other\"\n\"2523650\";\"ラグーザ\";\"other\"\n\"2523654\";\"Raffadali\";\"main\"\n\"2523654\";\"Rafadali\";\"other\"\n\"2523656\";\"Raddusa\";\"main\"\n\"2523656\";\"Buddusa\";\"other\"\n\"2523658\";\"Raccuja\";\"main\"\n\"2523658\";\"Raccuia\";\"ascii\"\n\"2523659\";\"Racalmuto\";\"main\"\n\"2523659\";\"Ragalmutu\";\"other\"\n\"2523659\";\"Recalmutu\";\"other\"\n\"2523660\";\"Racale\";\"main\"\n\"2523665\";\"Quartu Sant’Elena\";\"main\"\n\"2523665\";\"Quartu Sant'Elena\";\"ascii\"\n\"2523665\";\"Cuartu Santa Aleni\";\"other\"\n\"2523665\";\"Cuartu Santa Alèni\";\"other\"\n\"2523665\";\"Quarto Sant'Elena\";\"other\"\n\"2523665\";\"Quarto Sant’Elena\";\"other\"\n\"2523666\";\"Quartucciu\";\"main\"\n\"2523666\";\"Quartuccio\";\"other\"\n\"2523675\";\"Pula\";\"main\"\n\"2523675\";\"pura\";\"other\"\n\"2523675\";\"プーラ\";\"other\"\n\"2523678\";\"Prizzi\";\"main\"\n\"2523679\";\"Priolo Gargallo\";\"main\"\n\"2523679\";\"Priolo\";\"other\"\n\"2523679\";\"Priolu\";\"other\"\n\"2523681\";\"Presicce\";\"main\"\n\"2523687\";\"Praia a Mare\";\"main\"\n\"2523687\";\"Praia d'Aieta\";\"other\"\n\"2523687\";\"Praja-a-Mare\";\"other\"\n\"2523687\";\"Прая-а-Маре\";\"other\"\n\"2523693\";\"Pozzallo\";\"main\"\n\"2523693\";\"Puzzaddu\";\"other\"\n\"2523693\";\"pottsu~arro\";\"other\"\n\"2523693\";\"ポッツァッロ\";\"other\"\n\"2523699\";\"Portoscuso\";\"main\"\n\"2523703\";\"Portopalo di Capo Passero\";\"main\"\n\"2523703\";\"Portopalo\";\"ascii\"\n\"2523703\";\"Terra Nobile\";\"other\"\n\"2523705\";\"Porto Empedocle\";\"main\"\n\"2523705\";\"Portu Empedocli\";\"other\"\n\"2523711\";\"Portigliola\";\"main\"\n\"2523711\";\"Pertigliola\";\"other\"\n\"2523734\";\"Pollina\";\"main\"\n\"2523734\";\"Poilina\";\"other\"\n\"2523734\";\"Puoddina\";\"other\"\n\"2523734\";\"Puòddina\";\"other\"\n\"2523736\";\"Polizzi Generosa\";\"main\"\n\"2523738\";\"Polistena\";\"main\"\n\"2523742\";\"Polia\";\"main\"\n\"2523747\";\"Poggioreale\";\"main\"\n\"2523749\";\"Platì\";\"main\"\n\"2523749\";\"Plati\";\"ascii\"\n\"2523750\";\"Platania\";\"main\"\n\"2523757\";\"Placanica\";\"main\"\n\"2523758\";\"Pizzoni\";\"main\"\n\"2523762\";\"Pizzo\";\"main\"\n\"2523773\";\"Piraino\";\"main\"\n\"2523773\";\"Pirainu\";\"other\"\n\"2523778\";\"Pimentel\";\"main\"\n\"2523784\";\"Pietraperzia\";\"main\"\n\"2523784\";\"Petrapirzia\";\"other\"\n\"2523786\";\"Pietrapaola\";\"main\"\n\"2523790\";\"Pietrafitta\";\"main\"\n\"2523793\";\"Piedimonte Etneo\";\"main\"\n\"2523793\";\"Piedimonte\";\"other\"\n\"2523793\";\"Piedimonte Etnea\";\"other\"\n\"2523793\";\"Piemunti\";\"other\"\n\"2523796\";\"Piazza Armerina\";\"main\"\n\"2523796\";\"Ciazza\";\"other\"\n\"2523796\";\"Cjassa\";\"other\"\n\"2523799\";\"Pianopoli\";\"main\"\n\"2523806\";\"Piane Crati\";\"main\"\n\"2523806\";\"Piane\";\"other\"\n\"2523808\";\"Piana degli Albanesi\";\"main\"\n\"2523808\";\"Chiana\";\"other\"\n\"2523808\";\"Hora e Arbereshevet\";\"other\"\n\"2523808\";\"Piana de' Greci\";\"other\"\n\"2523808\";\"Piana dei Greci\";\"other\"\n\"2523808\";\"Piana di Greci\";\"other\"\n\"2523813\";\"Pettineo\";\"main\"\n\"2523816\";\"Petrosino\";\"main\"\n\"2523816\";\"Pitrusinu\";\"other\"\n\"2523817\";\"Petronà\";\"main\"\n\"2523817\";\"Petrona\";\"ascii\"\n\"2523818\";\"Petrizzi\";\"main\"\n\"2523821\";\"Petralia Sottana\";\"main\"\n\"2523821\";\"Pitralia Suttana\";\"other\"\n\"2523821\";\"Pitralìa Suttana\";\"other\"\n\"2523821\";\"Sottana Petralia\";\"other\"\n\"2523822\";\"Petralia Soprana\";\"main\"\n\"2523822\";\"Pitralia Suprana\";\"other\"\n\"2523822\";\"Pitralìa Suprana\";\"other\"\n\"2523825\";\"Petilia Policastro\";\"main\"\n\"2523832\";\"Perdaxius\";\"main\"\n\"2523833\";\"Perdasdefogu\";\"main\"\n\"2523838\";\"Pentone\";\"main\"\n\"2523850\";\"Pedara\";\"main\"\n\"2523850\";\"Pidara\";\"other\"\n\"2523853\";\"Pedace\";\"main\"\n\"2523862\";\"Patù\";\"main\"\n\"2523862\";\"Patu\";\"ascii\"\n\"2523864\";\"Patti\";\"main\"\n\"2523865\";\"Paterno Calabro\";\"main\"\n\"2523865\";\"Paterno\";\"other\"\n\"2523866\";\"Paternò\";\"main\"\n\"2523866\";\"Paterno\";\"ascii\"\n\"2523866\";\"Patirno\";\"other\"\n\"2523866\";\"Patirnò\";\"other\"\n\"2523866\";\"pateruno\";\"other\"\n\"2523866\";\"Патерно\";\"other\"\n\"2523866\";\"パテルノー\";\"other\"\n\"2523871\";\"Partinico\";\"main\"\n\"2523872\";\"Partanna\";\"main\"\n\"2523876\";\"Parghelia\";\"main\"\n\"2523877\";\"Parenti\";\"main\"\n\"2523877\";\"parenti\";\"other\"\n\"2523877\";\"パレンティ\";\"other\"\n\"2523883\";\"Papasidero\";\"main\"\n\"2523888\";\"Paola\";\"main\"\n\"2523888\";\"paora\";\"other\"\n\"2523888\";\"パオラ\";\"other\"\n\"2523890\";\"Pantelleria\";\"main\"\n\"2523890\";\"Pantelaria\";\"other\"\n\"2523890\";\"Pantel·leria\";\"other\"\n\"2523890\";\"Pantelária\";\"other\"\n\"2523890\";\"Pantilliria\";\"other\"\n\"2523890\";\"Pantillirìa\";\"other\"\n\"2523890\";\"panterreria\";\"other\"\n\"2523890\";\"pntlryh\";\"other\"\n\"2523890\";\"פנטלריה\";\"other\"\n\"2523890\";\"パンテッレリーア\";\"other\"\n\"2523900\";\"Paludi\";\"main\"\n\"2523902\";\"Palmi\";\"main\"\n\"2523902\";\"parumi\";\"other\"\n\"2523902\";\"パルミ\";\"other\"\n\"2523904\";\"Palmas Arborea\";\"main\"\n\"2523908\";\"Palma di Montechiaro\";\"main\"\n\"2523908\";\"Parma di Muntichiaru\";\"other\"\n\"2523910\";\"Pallagorio\";\"main\"\n\"2523910\";\"Puheriu\";\"other\"\n\"2523912\";\"Palizzi\";\"main\"\n\"2523912\";\"Palizzi Superiore\";\"other\"\n\"2523920\";\"Palermo\";\"main\"\n\"2523920\";\"Palerm\";\"other\"\n\"2523920\";\"Palerma\";\"other\"\n\"2523920\";\"Palermas\";\"other\"\n\"2523920\";\"Palerme\";\"other\"\n\"2523920\";\"Palermu\";\"other\"\n\"2523920\";\"Panormus\";\"other\"\n\"2523920\";\"Pałermo\";\"other\"\n\"2523920\";\"ba lei mo shi\";\"other\"\n\"2523920\";\"balyrmw\";\"other\"\n\"2523920\";\"palermo\";\"other\"\n\"2523920\";\"palrmw\";\"other\"\n\"2523920\";\"parerumo\";\"other\"\n\"2523920\";\"plrmw\";\"other\"\n\"2523920\";\"Палерма\";\"other\"\n\"2523920\";\"Палермо\";\"other\"\n\"2523920\";\"פלרמו\";\"other\"\n\"2523920\";\"باليرمو\";\"other\"\n\"2523920\";\"پالرمو\";\"other\"\n\"2523920\";\"पलेर्मो\";\"other\"\n\"2523920\";\"パレルモ\";\"other\"\n\"2523920\";\"巴勒莫市\";\"other\"\n\"2523921\";\"Palermiti\";\"main\"\n\"2523922\";\"Palazzolo Acreide\";\"main\"\n\"2523922\";\"Palazzolo Acréide\";\"other\"\n\"2523922\";\"Palazzolu Acreidi\";\"other\"\n\"2523922\";\"パラッツォーロ・アクレイデ\";\"other\"\n\"2523925\";\"Palazzo Adriano\";\"main\"\n\"2523925\";\"Chiusa Palazzo\";\"other\"\n\"2523925\";\"Palazzu Adrianu\";\"other\"\n\"2523925\";\"Pallaci\";\"other\"\n\"2523925\";\"パラッツォ・アドリアーノ\";\"other\"\n\"2523927\";\"Palagonia\";\"main\"\n\"2523927\";\"Palagunia\";\"other\"\n\"2523932\";\"Pagliara\";\"main\"\n\"2523938\";\"Pachino\";\"main\"\n\"2523938\";\"Pachinu\";\"other\"\n\"2523938\";\"Pakino\";\"other\"\n\"2523938\";\"Пакино\";\"other\"\n\"2523942\";\"Paceco\";\"main\"\n\"2523943\";\"Pabillonis\";\"main\"\n\"2523954\";\"Ortacesus\";\"main\"\n\"2523955\";\"Orsomarso\";\"main\"\n\"2523958\";\"Orroli\";\"main\"\n\"2523964\";\"Oristano\";\"main\"\n\"2523964\";\"Aristanis\";\"other\"\n\"2523964\";\"Oristanum\";\"other\"\n\"2523964\";\"Oristany\";\"other\"\n\"2523964\";\"orisutano\";\"other\"\n\"2523964\";\"Ористано\";\"other\"\n\"2523964\";\"オリスターノ\";\"other\"\n\"2523972\";\"Oliveri\";\"main\"\n\"2523983\";\"Nuxis\";\"main\"\n\"2523984\";\"Nurri\";\"main\"\n\"2523987\";\"Nuraminis\";\"main\"\n\"2523988\";\"Nurallao\";\"main\"\n\"2523989\";\"Nuragus\";\"main\"\n\"2523990\";\"Nurachi\";\"main\"\n\"2523994\";\"Novara di Sicilia\";\"main\"\n\"2523994\";\"Novara Sicilia\";\"other\"\n\"2523994\";\"Nuvara\";\"other\"\n\"2523998\";\"Noto\";\"main\"\n\"2523998\";\"Netum\";\"other\"\n\"2523998\";\"Nuotu\";\"other\"\n\"2523998\";\"noto\";\"other\"\n\"2523998\";\"Ното\";\"other\"\n\"2523998\";\"ノート\";\"other\"\n\"2524000\";\"Nocera Terinese\";\"main\"\n\"2524000\";\"Nocera Tirinese\";\"other\"\n\"2524003\";\"Nizza di Sicilia\";\"main\"\n\"2524004\";\"Nissoria\";\"main\"\n\"2524004\";\"Nissoria Sicilia\";\"other\"\n\"2524004\";\"Nissuria\";\"other\"\n\"2524006\";\"Niscemi\";\"main\"\n\"2524006\";\"Nishemi\";\"other\"\n\"2524006\";\"Нишеми\";\"other\"\n\"2524008\";\"Nicotera\";\"main\"\n\"2524008\";\"Marina di Nicotera\";\"other\"\n\"2524009\";\"Nicosia\";\"main\"\n\"2524009\";\"Nicosia Sicilia\";\"other\"\n\"2524009\";\"Nicusia\";\"other\"\n\"2524010\";\"Nicolosi\";\"main\"\n\"2524010\";\"Niculosi\";\"other\"\n\"2524013\";\"Nicastro\";\"main\"\n\"2524013\";\"Nikastro\";\"other\"\n\"2524013\";\"Никастро\";\"other\"\n\"2524020\";\"Naso\";\"main\"\n\"2524022\";\"Naro\";\"main\"\n\"2524022\";\"Naru\";\"other\"\n\"2524023\";\"Nardodipace\";\"main\"\n\"2524023\";\"Nardo\";\"other\"\n\"2524024\";\"Narcao\";\"main\"\n\"2524028\";\"Mussomeli\";\"main\"\n\"2524028\";\"Mussumeli\";\"other\"\n\"2524029\";\"Musei\";\"main\"\n\"2524033\";\"Muravera\";\"main\"\n\"2524041\";\"Motta Sant'Anastasia\";\"main\"\n\"2524043\";\"Motta San Giovanni\";\"main\"\n\"2524043\";\"Motta\";\"other\"\n\"2524044\";\"Mottafollone\";\"main\"\n\"2524049\";\"Mormanno\";\"main\"\n\"2524055\";\"Morciano di Leuca\";\"main\"\n\"2524055\";\"Morciano\";\"other\"\n\"2524056\";\"Morano Calabro\";\"main\"\n\"2524061\";\"Montevago\";\"main\"\n\"2524061\";\"Muntivagu\";\"other\"\n\"2524063\";\"Montesano Salentino\";\"main\"\n\"2524063\";\"Montesano\";\"other\"\n\"2524064\";\"Monterosso Almo\";\"main\"\n\"2524064\";\"Muntirrussu\";\"other\"\n\"2524064\";\"Muntirussu\";\"other\"\n\"2524064\";\"モンテロッソ・アルモ\";\"other\"\n\"2524065\";\"Monterosso Calabro\";\"main\"\n\"2524065\";\"Monterosso\";\"ascii\"\n\"2524067\";\"Montepaone\";\"main\"\n\"2524069\";\"Montemaggiore Belsito\";\"main\"\n\"2524070\";\"Montelepre\";\"main\"\n\"2524070\";\"Muncilebbri\";\"other\"\n\"2524070\";\"Muntilepri\";\"other\"\n\"2524071\";\"Montedoro\";\"main\"\n\"2524071\";\"Muntidoru\";\"other\"\n\"2524072\";\"Montebello Ionico\";\"main\"\n\"2524072\";\"Montebello\";\"other\"\n\"2524072\";\"Montebello Jonico\";\"other\"\n\"2524072\";\"モンテベッロ・イオーニコ\";\"other\"\n\"2524074\";\"Montauro\";\"main\"\n\"2524076\";\"Montalto Uffugo\";\"main\"\n\"2524078\";\"Montallegro\";\"main\"\n\"2524078\";\"Muntallegru\";\"other\"\n\"2524079\";\"Montalbano Elicona\";\"main\"\n\"2524079\";\"Montalbano di Elicona\";\"ascii\"\n\"2524079\";\"Montalbano d'Elicona\";\"other\"\n\"2524079\";\"Muntarbanu\";\"other\"\n\"2524080\";\"Montagnareale\";\"main\"\n\"2524080\";\"Muntagnariali\";\"other\"\n\"2524084\";\"Monserrato\";\"main\"\n\"2524084\";\"Monserratu\";\"other\"\n\"2524085\";\"Monreale\";\"main\"\n\"2524085\";\"Monreal'\";\"other\"\n\"2524085\";\"Murriali\";\"other\"\n\"2524085\";\"monreare\";\"other\"\n\"2524085\";\"Монреаль\";\"other\"\n\"2524085\";\"モンレアーレ\";\"other\"\n\"2524086\";\"Mongrassano\";\"main\"\n\"2524086\";\"Mungrasana\";\"other\"\n\"2524093\";\"Monforte San Giorgio\";\"main\"\n\"2524093\";\"Monforte\";\"other\"\n\"2524096\";\"Monastir\";\"main\"\n\"2524096\";\"Monasteri Sardenias\";\"other\"\n\"2524096\";\"Μοναστήρι Σαρδηνίας\";\"other\"\n\"2524097\";\"Monasterace\";\"main\"\n\"2524100\";\"Molochio\";\"main\"\n\"2524116\";\"Mogoro\";\"main\"\n\"2524119\";\"Modica\";\"main\"\n\"2524119\";\"Modika\";\"other\"\n\"2524119\";\"Muorica\";\"other\"\n\"2524119\";\"Muòrica\";\"other\"\n\"2524119\";\"Módica\";\"other\"\n\"2524119\";\"modika\";\"other\"\n\"2524119\";\"Модика\";\"other\"\n\"2524119\";\"モーディカ\";\"other\"\n\"2524122\";\"Mistretta\";\"main\"\n\"2524122\";\"Mistritta\";\"other\"\n\"2524123\";\"Misterbianco\";\"main\"\n\"2524123\";\"Mistirjancu\";\"other\"\n\"2524126\";\"Misilmeri\";\"main\"\n\"2524131\";\"Mirto\";\"main\"\n\"2524131\";\"Mirtu\";\"other\"\n\"2524135\";\"Mirabella Imbaccari\";\"main\"\n\"2524135\";\"Mirabedda Mbaccari\";\"other\"\n\"2524142\";\"Mineo\";\"main\"\n\"2524142\";\"Miniu\";\"other\"\n\"2524143\";\"Milo\";\"main\"\n\"2524143\";\"Milu\";\"other\"\n\"2524144\";\"Militello Rosmarino\";\"main\"\n\"2524144\";\"Militello Rosmatino\";\"ascii\"\n\"2524144\";\"Militello\";\"other\"\n\"2524144\";\"Militello di Rosmarino\";\"other\"\n\"2524144\";\"Militieddu\";\"other\"\n\"2524145\";\"Militello in Val di Catania\";\"main\"\n\"2524145\";\"Militeddu in Val di Catania\";\"other\"\n\"2524145\";\"ミリテッロ・イン・ヴァル・ディ・カターニア\";\"other\"\n\"2524151\";\"Mileto\";\"main\"\n\"2524152\";\"Milena\";\"main\"\n\"2524152\";\"Milocca\";\"other\"\n\"2524155\";\"Milazzo\";\"main\"\n\"2524155\";\"Milacco\";\"other\"\n\"2524155\";\"Milazzu\";\"other\"\n\"2524155\";\"Mylae\";\"other\"\n\"2524155\";\"mirattsu~o\";\"other\"\n\"2524155\";\"Милаццо\";\"other\"\n\"2524155\";\"מילאי\";\"other\"\n\"2524155\";\"ミラッツォ\";\"other\"\n\"2524160\";\"Miggiano\";\"main\"\n\"2524163\";\"Mezzojuso\";\"main\"\n\"2524163\";\"Mezzoiuso\";\"other\"\n\"2524163\";\"Munxifsi\";\"other\"\n\"2524170\";\"Messina\";\"main\"\n\"2524170\";\"Mesina\";\"other\"\n\"2524170\";\"Messana\";\"other\"\n\"2524170\";\"Messine\";\"other\"\n\"2524170\";\"Mesyna\";\"other\"\n\"2524170\";\"Missina\";\"other\"\n\"2524170\";\"messhina\";\"other\"\n\"2524170\";\"mo xi na\";\"other\"\n\"2524170\";\"msynh\";\"other\"\n\"2524170\";\"mysyna\";\"other\"\n\"2524170\";\"Месина\";\"other\"\n\"2524170\";\"Мессина\";\"other\"\n\"2524170\";\"מסינה\";\"other\"\n\"2524170\";\"ميسينا\";\"other\"\n\"2524170\";\"メッシーナ\";\"other\"\n\"2524170\";\"墨西拿\";\"other\"\n\"2524172\";\"Mesoraca\";\"main\"\n\"2524172\";\"Mesuraca\";\"other\"\n\"2524175\";\"Merì\";\"main\"\n\"2524175\";\"Meri\";\"ascii\"\n\"2524179\";\"Menfi\";\"main\"\n\"2524179\";\"Менфи\";\"other\"\n\"2524180\";\"Mendicino\";\"main\"\n\"2524181\";\"Melito di Porto Salvo\";\"main\"\n\"2524181\";\"Melito\";\"other\"\n\"2524181\";\"Melito Porto Salvo\";\"other\"\n\"2524181\";\"Mélito\";\"other\"\n\"2524181\";\"メーリト・ディ・ポルト・サルヴォ\";\"other\"\n\"2524184\";\"Melissano\";\"main\"\n\"2524185\";\"Melissa\";\"main\"\n\"2524185\";\"merissa\";\"other\"\n\"2524185\";\"メリッサ\";\"other\"\n\"2524186\";\"Melilli\";\"main\"\n\"2524186\";\"Mellili\";\"other\"\n\"2524186\";\"Miliddi\";\"other\"\n\"2524188\";\"Melicucco\";\"main\"\n\"2524189\";\"Melicuccà\";\"main\"\n\"2524189\";\"Melicucca\";\"ascii\"\n\"2524189\";\"Melicocca\";\"other\"\n\"2524189\";\"Melicoccà\";\"other\"\n\"2524190\";\"Melicuccà\";\"main\"\n\"2524190\";\"Melicucca\";\"ascii\"\n\"2524197\";\"Meana Sardo\";\"main\"\n\"2524199\";\"Mazzarrà Sant'Andrea\";\"main\"\n\"2524199\";\"Mazzarra Sant'Andrea\";\"ascii\"\n\"2524199\";\"Mazzarra\";\"other\"\n\"2524199\";\"Mazzarrà\";\"other\"\n\"2524200\";\"Mazzarino\";\"main\"\n\"2524200\";\"Mazzarinu\";\"other\"\n\"2524205\";\"Mazara del Vallo\";\"main\"\n\"2524205\";\"Mazzara\";\"other\"\n\"2524208\";\"Maracalagonis\";\"main\"\n\"2524208\";\"Matacalagonis\";\"other\"\n\"2524209\";\"Masullas\";\"main\"\n\"2524236\";\"Mascalucia\";\"main\"\n\"2524236\";\"Maskalucha\";\"other\"\n\"2524236\";\"Маскалуча\";\"other\"\n\"2524237\";\"Mascali\";\"main\"\n\"2524237\";\"Màscali\";\"other\"\n\"2524238\";\"Masainas\";\"main\"\n\"2524239\";\"Marzi\";\"main\"\n\"2524242\";\"Martirano Lombardo\";\"main\"\n\"2524243\";\"Martirano\";\"main\"\n\"2524245\";\"Marsala\";\"main\"\n\"2524245\";\"marusara\";\"other\"\n\"2524245\";\"Марсала\";\"other\"\n\"2524245\";\"マルサーラ\";\"other\"\n\"2524246\";\"Marrubiu\";\"main\"\n\"2524255\";\"Marineo\";\"main\"\n\"2524263\";\"Marina di Ragusa\";\"main\"\n\"2524263\";\"Marina-di-Raguza\";\"other\"\n\"2524263\";\"Марина-ди-Рагуза\";\"other\"\n\"2524266\";\"Marina di Gioiosa Ionica\";\"main\"\n\"2524266\";\"Gioiosa Marina\";\"other\"\n\"2524266\";\"Marina di Gioiosa\";\"other\"\n\"2524266\";\"Marina di Gioiosa Jonica\";\"other\"\n\"2524275\";\"Marianopoli\";\"main\"\n\"2524275\";\"Paisi di li Manchi\";\"other\"\n\"2524282\";\"Marcellinara\";\"main\"\n\"2524287\";\"Maratea\";\"main\"\n\"2524289\";\"Marano Principato\";\"main\"\n\"2524290\";\"Marano Marchesato\";\"main\"\n\"2524290\";\"Marano\";\"other\"\n\"2524300\";\"Mangone\";\"main\"\n\"2524305\";\"Mandatoriccio\";\"main\"\n\"2524306\";\"Mandas\";\"main\"\n\"2524311\";\"Mammola\";\"main\"\n\"2524312\";\"Malvito\";\"main\"\n\"2524322\";\"Maletto\";\"main\"\n\"2524322\";\"Malettu\";\"other\"\n\"2524328\";\"Maierato\";\"main\"\n\"2524329\";\"Maierà\";\"main\"\n\"2524329\";\"Maiera\";\"ascii\"\n\"2524331\";\"Maida\";\"main\"\n\"2524335\";\"Magisano\";\"main\"\n\"2524352\";\"Luzzi\";\"main\"\n\"2524356\";\"Lungro\";\"main\"\n\"2524356\";\"Ungra\";\"other\"\n\"2524357\";\"Lunamatrona\";\"main\"\n\"2524361\";\"Lucca Sicula\";\"main\"\n\"2524361\";\"Lucca Sìcula\";\"other\"\n\"2524363\";\"Lotzorai\";\"main\"\n\"2524367\";\"Longobucco\";\"main\"\n\"2524368\";\"Longobardi\";\"main\"\n\"2524369\";\"Longi\";\"main\"\n\"2524369\";\"Lonci\";\"other\"\n\"2524371\";\"Locri\";\"main\"\n\"2524371\";\"Gerace Marina\";\"other\"\n\"2524371\";\"Locres Epizefiris\";\"other\"\n\"2524371\";\"Locros\";\"other\"\n\"2524372\";\"Loceri\";\"main\"\n\"2524379\";\"Lipari\";\"main\"\n\"2524382\";\"Linguaglossa\";\"main\"\n\"2524382\";\"Linguarossa\";\"other\"\n\"2524388\";\"Limbadi\";\"main\"\n\"2524392\";\"Licodia Eubea\";\"main\"\n\"2524392\";\"Licuddia\";\"other\"\n\"2524393\";\"Licata\";\"main\"\n\"2524394\";\"Librizzi\";\"main\"\n\"2524400\";\"Letojanni\";\"main\"\n\"2524400\";\"Letoianni\";\"ascii\"\n\"2524400\";\"Letoianni Gallodori\";\"other\"\n\"2524400\";\"Letojanni Gallodoro\";\"other\"\n\"2524402\";\"Lercara Friddi\";\"main\"\n\"2524402\";\"Lercara\";\"other\"\n\"2524404\";\"Leonforte\";\"main\"\n\"2524404\";\"Liunforti\";\"other\"\n\"2524410\";\"Lentini\";\"main\"\n\"2524410\";\"Leontini\";\"other\"\n\"2524410\";\"Lintini\";\"other\"\n\"2524410\";\"lntyny\";\"other\"\n\"2524410\";\"rentini\";\"other\"\n\"2524410\";\"Лентини\";\"other\"\n\"2524410\";\"לנטיני\";\"other\"\n\"2524410\";\"レンティーニ\";\"other\"\n\"2524430\";\"Laureana di Borrello\";\"main\"\n\"2524430\";\"Laureana di Borello\";\"other\"\n\"2524431\";\"Lattarico\";\"main\"\n\"2524438\";\"Lascari\";\"main\"\n\"2524454\";\"Lanusei\";\"main\"\n\"2524454\";\"ranuzei\";\"other\"\n\"2524454\";\"Ланусеи\";\"other\"\n\"2524454\";\"ラヌゼイ\";\"other\"\n\"2524459\";\"Lampedusa\";\"main\"\n\"2524466\";\"Laino Borgo\";\"main\"\n\"2524468\";\"Lago\";\"main\"\n\"2524468\";\"rago\";\"other\"\n\"2524468\";\"ラーゴ\";\"other\"\n\"2524479\";\"Laconi\";\"main\"\n\"2524479\";\"rakoni\";\"other\"\n\"2524479\";\"ラーコニ\";\"other\"\n\"2524492\";\"Itala\";\"main\"\n\"2524493\";\"Ispica\";\"main\"\n\"2524493\";\"Spaccaforno\";\"other\"\n\"2524494\";\"Isola delle Femmine\";\"main\"\n\"2524494\";\"Isula\";\"other\"\n\"2524495\";\"Isola di Capo Rizzuto\";\"main\"\n\"2524495\";\"Isola Capo Rizzuto\";\"ascii\"\n\"2524495\";\"Isola\";\"other\"\n\"2524496\";\"Isnello\";\"main\"\n\"2524496\";\"Isneddu\";\"other\"\n\"2524498\";\"Isili\";\"main\"\n\"2524501\";\"Isca sullo Ionio\";\"main\"\n\"2524501\";\"Isca\";\"other\"\n\"2524501\";\"Isca dell'Ionio\";\"other\"\n\"2524501\";\"Isca dello Ionio\";\"other\"\n\"2524501\";\"Isca dello Iónio\";\"other\"\n\"2524501\";\"Isca sull'Ionio\";\"other\"\n\"2524506\";\"Joppolo Giancaxio\";\"main\"\n\"2524506\";\"Ioppolo Giancaxio\";\"ascii\"\n\"2524506\";\"Ioppolo\";\"other\"\n\"2524506\";\"Joppolo\";\"other\"\n\"2524506\";\"Joppulu Giancaxiu\";\"other\"\n\"2524530\";\"Ilbono\";\"main\"\n\"2524533\";\"Iglesias\";\"main\"\n\"2524533\";\"Ecclesia\";\"other\"\n\"2524533\";\"Esglesies\";\"other\"\n\"2524533\";\"Esglèsies\";\"other\"\n\"2524533\";\"Esglésies\";\"other\"\n\"2524533\";\"Iglezias\";\"other\"\n\"2524533\";\"igurejiasu\";\"other\"\n\"2524533\";\"Иглезиас\";\"other\"\n\"2524533\";\"イグレージアス\";\"other\"\n\"2524534\";\"Jerzu\";\"main\"\n\"2524534\";\"Ierzu\";\"other\"\n\"2524546\";\"Guspini\";\"main\"\n\"2524551\";\"Guasila\";\"main\"\n\"2524553\";\"Aprigliano\";\"main\"\n\"2524553\";\"Guarno\";\"ascii\"\n\"2524553\";\"apuririano\";\"other\"\n\"2524553\";\"アプリリアーノ\";\"other\"\n\"2524554\";\"Guardia Piemontese\";\"main\"\n\"2524554\";\"Guardia Piemontese Terme\";\"ascii\"\n\"2524554\";\"Guardia\";\"other\"\n\"2524554\";\"Guardia Piemontesa\";\"other\"\n\"2524554\";\"Guárdia\";\"other\"\n\"2524554\";\"Guárdia Piemontese\";\"other\"\n\"2524554\";\"La Gardia\";\"other\"\n\"2524554\";\"La Gouardia\";\"other\"\n\"2524554\";\"La Gàrdia\";\"other\"\n\"2524557\";\"Guardavalle\";\"main\"\n\"2524558\";\"Guamaggiore\";\"main\"\n\"2524560\";\"Grotteria\";\"main\"\n\"2524561\";\"Grotte\";\"main\"\n\"2524561\";\"Grutti\";\"other\"\n\"2524564\";\"Grisolia\";\"main\"\n\"2524564\";\"Grisolia Cipollina\";\"other\"\n\"2524566\";\"Grimaldi\";\"main\"\n\"2524566\";\"gurimarudi\";\"other\"\n\"2524566\";\"グリマルディ\";\"other\"\n\"2524572\";\"Gratteri\";\"main\"\n\"2524572\";\"Ratteri\";\"other\"\n\"2524583\";\"Grammichele\";\"main\"\n\"2524583\";\"Grammicheli\";\"other\"\n\"2524587\";\"Gonnosfanadiga\";\"main\"\n\"2524589\";\"Gonnesa\";\"main\"\n\"2524592\";\"Godrano\";\"main\"\n\"2524592\";\"Godramo\";\"other\"\n\"2524592\";\"Gudranu\";\"other\"\n\"2524593\";\"Gizzeria\";\"main\"\n\"2524598\";\"Giuliana\";\"main\"\n\"2524598\";\"juriana\";\"other\"\n\"2524598\";\"ジュリアーナ\";\"other\"\n\"2524600\";\"Girifalco\";\"main\"\n\"2524604\";\"Gioiosa Marea\";\"main\"\n\"2524604\";\"Giojosa Marea\";\"other\"\n\"2524604\";\"Giujusa\";\"other\"\n\"2524605\";\"Gioiosa Ionica\";\"main\"\n\"2524605\";\"Gioiosa Jonica\";\"other\"\n\"2524606\";\"Gioia Tauro\";\"main\"\n\"2524610\";\"Gimigliano\";\"main\"\n\"2524613\";\"Giffone\";\"main\"\n\"2524614\";\"Gibellina\";\"main\"\n\"2524614\";\"Gibbellina\";\"other\"\n\"2524617\";\"Giba\";\"main\"\n\"2524618\";\"Giarre\";\"main\"\n\"2524618\";\"Dzharre\";\"other\"\n\"2524618\";\"Giarre Riposto\";\"other\"\n\"2524618\";\"Giarri\";\"other\"\n\"2524618\";\"Girarre\";\"other\"\n\"2524618\";\"Джарре\";\"other\"\n\"2524619\";\"Giarratana\";\"main\"\n\"2524619\";\"jarratana\";\"other\"\n\"2524619\";\"ジャッラターナ\";\"other\"\n\"2524622\";\"Giardini Naxos\";\"main\"\n\"2524622\";\"Giardini\";\"other\"\n\"2524624\";\"Giardinello\";\"main\"\n\"2524624\";\"Giardineddu\";\"other\"\n\"2524633\";\"Gesturi\";\"main\"\n\"2524636\";\"Gergei\";\"main\"\n\"2524641\";\"Geraci Siculo\";\"main\"\n\"2524641\";\"Geraci\";\"other\"\n\"2524641\";\"Jiraci\";\"other\"\n\"2524643\";\"Gerace\";\"main\"\n\"2524643\";\"Gerace Superiore\";\"other\"\n\"2524646\";\"Genoni\";\"main\"\n\"2524653\";\"Gela\";\"main\"\n\"2524653\";\"Dzhela\";\"other\"\n\"2524653\";\"ge la\";\"other\"\n\"2524653\";\"jera\";\"other\"\n\"2524653\";\"jie la\";\"other\"\n\"2524653\";\"Джела\";\"other\"\n\"2524653\";\"ジェーラ\";\"other\"\n\"2524653\";\"杰拉\";\"other\"\n\"2524653\";\"格拉\";\"other\"\n\"2524656\";\"Gasperina\";\"main\"\n\"2524661\";\"Gangi\";\"main\"\n\"2524661\";\"ganji\";\"other\"\n\"2524661\";\"ガンジ\";\"other\"\n\"2524677\";\"Galatro\";\"main\"\n\"2524679\";\"Galati Mamertino\";\"main\"\n\"2524679\";\"Galati\";\"other\"\n\"2524683\";\"Gairo\";\"main\"\n\"2524683\";\"Gairo Sant'Elena\";\"ascii\"\n\"2524683\";\"Gairo Nuoro\";\"other\"\n\"2524685\";\"Gagliano del Capo\";\"main\"\n\"2524686\";\"Gagliano Castelferrato\";\"main\"\n\"2524686\";\"Gagghianu\";\"other\"\n\"2524688\";\"Gaggi\";\"main\"\n\"2524688\";\"Caggi\";\"other\"\n\"2524688\";\"Kaggi\";\"other\"\n\"2524691\";\"Fuscaldo\";\"main\"\n\"2524692\";\"Furtei\";\"main\"\n\"2524694\";\"Furci Siculo\";\"main\"\n\"2524694\";\"Fulci\";\"other\"\n\"2524694\";\"Furci Siculu\";\"other\"\n\"2524702\";\"Frascineto\";\"main\"\n\"2524702\";\"Frasnita\";\"other\"\n\"2524704\";\"Francofonte\";\"main\"\n\"2524704\";\"Carlintini\";\"other\"\n\"2524704\";\"Francufonti\";\"other\"\n\"2524704\";\"furankofonte\";\"other\"\n\"2524704\";\"フランコフォンテ\";\"other\"\n\"2524705\";\"Francica\";\"main\"\n\"2524706\";\"Francavilla Marittima\";\"main\"\n\"2524706\";\"Francavilla\";\"other\"\n\"2524707\";\"Francavilla di Sicilia\";\"main\"\n\"2524707\";\"Francavigghia di Sicilia\";\"other\"\n\"2524708\";\"Francavilla Angitola\";\"main\"\n\"2524708\";\"Francavilla\";\"other\"\n\"2524720\";\"Fordongianus\";\"main\"\n\"2524731\";\"Fluminimaggiore\";\"main\"\n\"2524734\";\"Floridia\";\"main\"\n\"2524734\";\"Ciuriddia\";\"other\"\n\"2524734\";\"Floridii\";\"other\"\n\"2524734\";\"furoridia\";\"other\"\n\"2524734\";\"Флоридии\";\"other\"\n\"2524734\";\"フロリーディア\";\"other\"\n\"2524742\";\"Fiumefreddo di Sicilia\";\"main\"\n\"2524742\";\"Ciumifriddu\";\"other\"\n\"2524742\";\"Sciummefriddo\";\"other\"\n\"2524743\";\"Fiumefreddo Bruzio\";\"main\"\n\"2524745\";\"Fiumedinisi\";\"main\"\n\"2524745\";\"Ciumidinisi\";\"other\"\n\"2524749\";\"Firmo\";\"main\"\n\"2524749\";\"Ferma\";\"other\"\n\"2524751\";\"Filogaso\";\"main\"\n\"2524758\";\"Filadelfia\";\"main\"\n\"2524758\";\"firaderufia\";\"other\"\n\"2524758\";\"フィラデルフィア\";\"other\"\n\"2524764\";\"Ficarra\";\"main\"\n\"2524765\";\"Ficarazzi\";\"main\"\n\"2524774\";\"Feroleto della Chiesa\";\"main\"\n\"2524774\";\"Feroleto\";\"other\"\n\"2524775\";\"Ferla\";\"main\"\n\"2524775\";\"ferura\";\"other\"\n\"2524775\";\"フェルラ\";\"other\"\n\"2524780\";\"Favignana\";\"main\"\n\"2524780\";\"Isla Favignana\";\"other\"\n\"2524780\";\"Porto de Favignana\";\"other\"\n\"2524780\";\"favu~inyana\";\"other\"\n\"2524780\";\"ファヴィニャーナ\";\"other\"\n\"2524786\";\"Favara\";\"main\"\n\"2524800\";\"Falerna\";\"main\"\n\"2524801\";\"Falcone\";\"main\"\n\"2524801\";\"Falcuni\";\"other\"\n\"2524802\";\"Falconara Albanese\";\"main\"\n\"2524802\";\"Falconara\";\"other\"\n\"2524802\";\"Fallkunara\";\"other\"\n\"2524805\";\"Fagnano Castello\";\"main\"\n\"2524808\";\"Fabrizia\";\"main\"\n\"2524814\";\"Escalaplano\";\"main\"\n\"2524815\";\"Erice\";\"main\"\n\"2524815\";\"Ehriche\";\"other\"\n\"2524815\";\"Erici\";\"other\"\n\"2524815\";\"Mont Eryx\";\"other\"\n\"2524815\";\"Mont Éryx\";\"other\"\n\"2524815\";\"Monte San Giuliano\";\"other\"\n\"2524815\";\"Èrici\";\"other\"\n\"2524815\";\"Эриче\";\"other\"\n\"2524819\";\"Enna\";\"main\"\n\"2524819\";\"Castrugiuvanni\";\"other\"\n\"2524819\";\"Ehnna\";\"other\"\n\"2524819\";\"Ena\";\"other\"\n\"2524819\";\"Haenna\";\"other\"\n\"2524819\";\"en'na\";\"other\"\n\"2524819\";\"Ена\";\"other\"\n\"2524819\";\"Энна\";\"other\"\n\"2524819\";\"אנה\";\"other\"\n\"2524819\";\"エンナ\";\"other\"\n\"2524820\";\"Elmas\";\"main\"\n\"2524829\";\"Drapia\";\"main\"\n\"2524831\";\"Donorì\";\"main\"\n\"2524831\";\"Donori\";\"ascii\"\n\"2524831\";\"Donoti\";\"other\"\n\"2524841\";\"Domusnovas\";\"main\"\n\"2524842\";\"Domus de Maria\";\"main\"\n\"2524844\";\"Dolianova\";\"main\"\n\"2524849\";\"Diso\";\"main\"\n\"2524852\";\"Dinami\";\"main\"\n\"2524856\";\"Diamante\";\"main\"\n\"2524861\";\"Delianuova\";\"main\"\n\"2524861\";\"Delianova\";\"other\"\n\"2524862\";\"Delia\";\"main\"\n\"2524863\";\"Decollatura\";\"main\"\n\"2524864\";\"Decimoputzu\";\"main\"\n\"2524865\";\"Decimomannu\";\"main\"\n\"2524865\";\"Decimontanne\";\"other\"\n\"2524865\";\"Decimontanno\";\"other\"\n\"2524866\";\"Davoli\";\"main\"\n\"2524868\";\"Dasà\";\"main\"\n\"2524868\";\"Dasa\";\"ascii\"\n\"2524869\";\"Cutro\";\"main\"\n\"2524870\";\"Custonaci\";\"main\"\n\"2524870\";\"Castonaci\";\"other\"\n\"2524870\";\"Custunaci\";\"other\"\n\"2524872\";\"Curinga\";\"main\"\n\"2524872\";\"Curinga a Maida\";\"other\"\n\"2524872\";\"Curinga a Máida\";\"other\"\n\"2524880\";\"Crucoli\";\"main\"\n\"2524881\";\"Crotone\";\"main\"\n\"2524881\";\"Cotrone\";\"other\"\n\"2524881\";\"Krotone\";\"other\"\n\"2524881\";\"Кротоне\";\"other\"\n\"2524882\";\"Crosia\";\"main\"\n\"2524882\";\"Crosta\";\"other\"\n\"2524883\";\"Cropani\";\"main\"\n\"2524884\";\"Cropalati\";\"main\"\n\"2524894\";\"Simeri Crichi\";\"main\"\n\"2524894\";\"Crichi\";\"ascii\"\n\"2524901\";\"Cotronei\";\"main\"\n\"2524907\";\"Cosenza\";\"main\"\n\"2524907\";\"Cusenza\";\"other\"\n\"2524907\";\"Kozenca\";\"other\"\n\"2524907\";\"kozentsu~a\";\"other\"\n\"2524907\";\"Козенца\";\"other\"\n\"2524907\";\"コゼンツァ\";\"other\"\n\"2524915\";\"Cortale\";\"main\"\n\"2524918\";\"Corsano\";\"main\"\n\"2524928\";\"Corleone\";\"main\"\n\"2524928\";\"Curliuni\";\"other\"\n\"2524928\";\"Korleone\";\"other\"\n\"2524928\";\"Korleonė\";\"other\"\n\"2524928\";\"korureone\";\"other\"\n\"2524928\";\"Κορλεόνε\";\"other\"\n\"2524928\";\"Корлеоне\";\"other\"\n\"2524928\";\"קורלאונה\";\"other\"\n\"2524928\";\"コルレオーネ\";\"other\"\n\"2524929\";\"Corigliano Calabro\";\"main\"\n\"2524929\";\"コリリアーノ・カーラブロ\";\"other\"\n\"2524940\";\"Contessa Entellina\";\"main\"\n\"2524940\";\"Cuntissa\";\"other\"\n\"2524949\";\"Condofuri\";\"main\"\n\"2524949\";\"Kontocori\";\"other\"\n\"2524955\";\"Comiso\";\"main\"\n\"2524955\";\"Comisu\";\"other\"\n\"2524955\";\"Commisu\";\"other\"\n\"2524955\";\"Còmisu\";\"other\"\n\"2524955\";\"Còmmisu\";\"other\"\n\"2524955\";\"Komizo\";\"other\"\n\"2524955\";\"komizo\";\"other\"\n\"2524955\";\"Комизо\";\"other\"\n\"2524955\";\"コーミゾ\";\"other\"\n\"2524957\";\"Colosimi\";\"main\"\n\"2524963\";\"Collinas\";\"main\"\n\"2524964\";\"Collesano\";\"main\"\n\"2524964\";\"Gulisanu\";\"other\"\n\"2524973\";\"Cleto\";\"main\"\n\"2524975\";\"Civita\";\"main\"\n\"2524975\";\"Cifti\";\"other\"\n\"2524976\";\"Cittanova\";\"main\"\n\"2524979\";\"Cirò Marina\";\"main\"\n\"2524979\";\"Ciro Marina\";\"ascii\"\n\"2524979\";\"Marina di Ciro\";\"other\"\n\"2524980\";\"Cirò\";\"main\"\n\"2524980\";\"Ciro\";\"ascii\"\n\"2524985\";\"Cinquefrondi\";\"main\"\n\"2524987\";\"Cinisi\";\"main\"\n\"2524989\";\"Ciminna\";\"main\"\n\"2524992\";\"Cicala\";\"main\"\n\"2524999\";\"Cianciana\";\"main\"\n\"2525003\";\"Chiusa Sclafani\";\"main\"\n\"2525003\";\"Chiusa\";\"other\"\n\"2525003\";\"Sclafani\";\"other\"\n\"2525009\";\"Chiaravalle Centrale\";\"main\"\n\"2525010\";\"Chiaramonte Gulfi\";\"main\"\n\"2525010\";\"Ciaramunti\";\"other\"\n\"2525010\";\"キアラモンテ・グルフィ\";\"other\"\n\"2525012\";\"Cetraro\";\"main\"\n\"2525014\";\"Cessaniti\";\"main\"\n\"2525014\";\"Cessanti\";\"other\"\n\"2525015\";\"Cesarò\";\"main\"\n\"2525015\";\"Cesaro\";\"ascii\"\n\"2525015\";\"Chezaro\";\"other\"\n\"2525015\";\"Чезаро\";\"other\"\n\"2525016\";\"Cerzeto\";\"main\"\n\"2525016\";\"Qana\";\"other\"\n\"2525017\";\"Cervicati\";\"main\"\n\"2525017\";\"Cervikati\";\"other\"\n\"2525019\";\"Cerva\";\"main\"\n\"2525023\";\"Cerisano\";\"main\"\n\"2525025\";\"Cerenzia\";\"main\"\n\"2525026\";\"Cerda\";\"main\"\n\"2525027\";\"Cerchiara di Calabria\";\"main\"\n\"2525031\";\"Cerami\";\"main\"\n\"2525031\";\"Cirami\";\"other\"\n\"2525032\";\"Centuripe\";\"main\"\n\"2525032\";\"Centorvu\";\"other\"\n\"2525038\";\"Celico\";\"main\"\n\"2525041\";\"Cefalù\";\"main\"\n\"2525041\";\"Cefalu\";\"ascii\"\n\"2525041\";\"Cefalas\";\"other\"\n\"2525041\";\"Cefalú\";\"other\"\n\"2525041\";\"Cifalu\";\"other\"\n\"2525041\";\"Cifalù\";\"other\"\n\"2525041\";\"z'plw\";\"other\"\n\"2525041\";\"צ'פלו\";\"other\"\n\"2525053\";\"Caulonia\";\"main\"\n\"2525054\";\"Cattolica Eraclea\";\"main\"\n\"2525054\";\"Catolica Eraclia\";\"other\"\n\"2525054\";\"Cattolica\";\"other\"\n\"2525054\";\"Cattolica Eraclia\";\"other\"\n\"2525054\";\"Catòlica Eraclìa\";\"other\"\n\"2525057\";\"Catenanuova\";\"main\"\n\"2525057\";\"Cantagnenuova\";\"other\"\n\"2525059\";\"Catanzaro\";\"main\"\n\"2525059\";\"Catanzara\";\"other\"\n\"2525059\";\"Catanzaru\";\"other\"\n\"2525059\";\"Katandzaro\";\"other\"\n\"2525059\";\"katantsu~aro\";\"other\"\n\"2525059\";\"Катандзаро\";\"other\"\n\"2525059\";\"カタンツァーロ\";\"other\"\n\"2525068\";\"Catania\";\"main\"\n\"2525068\";\"Catane\";\"other\"\n\"2525068\";\"Catina\";\"other\"\n\"2525068\";\"Catània\";\"other\"\n\"2525068\";\"Catânia\";\"other\"\n\"2525068\";\"Katane\";\"other\"\n\"2525068\";\"Katania\";\"other\"\n\"2525068\";\"Katanija\";\"other\"\n\"2525068\";\"Katānija\";\"other\"\n\"2525068\";\"katania\";\"other\"\n\"2525068\";\"katanya\";\"other\"\n\"2525068\";\"qtnyh\";\"other\"\n\"2525068\";\"Κατάνη\";\"other\"\n\"2525068\";\"Катания\";\"other\"\n\"2525068\";\"Катанија\";\"other\"\n\"2525068\";\"קטניה\";\"other\"\n\"2525068\";\"كاتانيا\";\"other\"\n\"2525068\";\"კატანია\";\"other\"\n\"2525068\";\"カターニア\";\"other\"\n\"2525070\";\"Castrovillari\";\"main\"\n\"2525070\";\"Kastrovillari\";\"other\"\n\"2525070\";\"Кастровиллари\";\"other\"\n\"2525073\";\"Castroreale\";\"main\"\n\"2525073\";\"Castruriali\";\"other\"\n\"2525074\";\"Castronovo di Sicilia\";\"main\"\n\"2525074\";\"Castronuovo di Sicilia\";\"ascii\"\n\"2525074\";\"Castronuovo\";\"other\"\n\"2525074\";\"Castrunovu\";\"other\"\n\"2525075\";\"Castrolibero\";\"main\"\n\"2525076\";\"Castrofilippo\";\"main\"\n\"2525076\";\"Castrufilippu\";\"other\"\n\"2525077\";\"Castrignano del Capo\";\"main\"\n\"2525077\";\"Castignano del Capo\";\"other\"\n\"2525079\";\"Castiglione di Sicilia\";\"main\"\n\"2525079\";\"Castigghiuni di Sicilia\";\"other\"\n\"2525080\";\"Castiglione Cosentino\";\"main\"\n\"2525080\";\"Castiglione\";\"other\"\n\"2525082\";\"Castiadas\";\"main\"\n\"2525082\";\"Casa di Pena\";\"other\"\n\"2525083\";\"Castelvetrano\";\"main\"\n\"2525083\";\"Castedduvitranu\";\"other\"\n\"2525083\";\"Castelvetranu\";\"other\"\n\"2525083\";\"Kastel'vetrano\";\"other\"\n\"2525083\";\"kasuteruvu~etorano\";\"other\"\n\"2525083\";\"Кастельветрано\";\"other\"\n\"2525083\";\"カステルヴェトラーノ\";\"other\"\n\"2525084\";\"Casteltermini\";\"main\"\n\"2525088\";\"Castell'Umberto\";\"main\"\n\"2525088\";\"Castania\";\"other\"\n\"2525088\";\"Castello Umberto\";\"other\"\n\"2525089\";\"Castelluccio Inferiore\";\"main\"\n\"2525089\";\"Castelluccio\";\"other\"\n\"2525093\";\"Castellana Sicula\";\"main\"\n\"2525093\";\"Castellana\";\"other\"\n\"2525093\";\"Castiddana\";\"other\"\n\"2525095\";\"Castellammare del Golfo\";\"main\"\n\"2525095\";\"Casteddammari\";\"other\"\n\"2525100\";\"Castel di Lucio\";\"main\"\n\"2525100\";\"Castel di Luciu\";\"other\"\n\"2525101\";\"Castel di Iudica\";\"main\"\n\"2525101\";\"Carrulo\";\"other\"\n\"2525101\";\"Castel di Judica\";\"other\"\n\"2525101\";\"Giardinelli\";\"other\"\n\"2525101\";\"Giumarra\";\"other\"\n\"2525102\";\"Casteldaccia\";\"main\"\n\"2525102\";\"Castiddazzu\";\"other\"\n\"2525103\";\"Castelbuono\";\"main\"\n\"2525103\";\"Castiddubbuonu\";\"other\"\n\"2525110\";\"Cassano allo Ionio\";\"main\"\n\"2525110\";\"Cassano al Ionio\";\"ascii\"\n\"2525110\";\"Cassano Jonio\";\"other\"\n\"2525110\";\"Cassano al Jonio\";\"other\"\n\"2525110\";\"Cassano all'Ionio\";\"other\"\n\"2525110\";\"Cassano all'Iónio\";\"other\"\n\"2525113\";\"Casole Bruzio\";\"main\"\n\"2525207\";\"Casarano\";\"main\"\n\"2525207\";\"Casaranu\";\"other\"\n\"2525251\";\"Casalvecchio Siculo\";\"main\"\n\"2525251\";\"Casalvecchio\";\"other\"\n\"2525251\";\"Casalvecchiu Siculu\";\"other\"\n\"2525328\";\"Casabona\";\"main\"\n\"2525344\";\"Caronia\";\"main\"\n\"2525344\";\"Carunia\";\"other\"\n\"2525344\";\"Carunìa\";\"other\"\n\"2525346\";\"Carolei\";\"main\"\n\"2525347\";\"Carlopoli\";\"main\"\n\"2525348\";\"Carloforte\";\"main\"\n\"2525349\";\"Carlentini\";\"main\"\n\"2525349\";\"Carlintini\";\"other\"\n\"2525349\";\"Carruntini\";\"other\"\n\"2525349\";\"karurentini\";\"other\"\n\"2525349\";\"カルレンティーニ\";\"other\"\n\"2525350\";\"Carini\";\"main\"\n\"2525350\";\"Karina\";\"other\"\n\"2525350\";\"Карина\";\"other\"\n\"2525352\";\"Cariati\";\"main\"\n\"2525357\";\"Careri\";\"main\"\n\"2525358\";\"Cardinale\";\"main\"\n\"2525360\";\"Cardeto\";\"main\"\n\"2525362\";\"Carbonia\";\"main\"\n\"2525362\";\"Karbonija\";\"other\"\n\"2525362\";\"karubonia\";\"other\"\n\"2525362\";\"Карбония\";\"other\"\n\"2525362\";\"カルボーニア\";\"other\"\n\"2525369\";\"Caraffa di Catanzaro\";\"main\"\n\"2525369\";\"Caraffa\";\"other\"\n\"2525373\";\"Capri Leone\";\"main\"\n\"2525373\";\"Capri Liuni\";\"other\"\n\"2525379\";\"Capoterra\";\"main\"\n\"2525379\";\"Cabuderra\";\"other\"\n\"2525379\";\"Kapoterra\";\"other\"\n\"2525379\";\"Капотерра\";\"other\"\n\"2525384\";\"Capo d'Orlando\";\"main\"\n\"2525384\";\"Capu d'Orlannu\";\"other\"\n\"2525385\";\"Dipignano\";\"main\"\n\"2525385\";\"Capocasale\";\"ascii\"\n\"2525387\";\"Capizzi\";\"main\"\n\"2525388\";\"Capistrano\";\"main\"\n\"2525392\";\"Capaci\";\"main\"\n\"2525404\";\"Canicattini Bagni\";\"main\"\n\"2525404\";\"Canicattini\";\"other\"\n\"2525404\";\"カニカッティーニ・バーニ\";\"other\"\n\"2525405\";\"Canicattì\";\"main\"\n\"2525405\";\"Canicatti\";\"ascii\"\n\"2525415\";\"Camporeale\";\"main\"\n\"2525415\";\"Campuriali\";\"other\"\n\"2525421\";\"Campofranco\";\"main\"\n\"2525421\";\"Campufrancu\";\"other\"\n\"2525422\";\"Campofiorito\";\"main\"\n\"2525422\";\"Campuciurutu\";\"other\"\n\"2525423\";\"Campofelice di Roccella\";\"main\"\n\"2525423\";\"Campofelice\";\"other\"\n\"2525423\";\"Campofelice Roccella\";\"other\"\n\"2525423\";\"La Ruccedda\";\"other\"\n\"2525425\";\"Campobello di Mazara\";\"main\"\n\"2525425\";\"Campobello di Mazzara\";\"other\"\n\"2525425\";\"Campubbeddu\";\"other\"\n\"2525426\";\"Campobello di Licata\";\"main\"\n\"2525426\";\"Campubbeddu\";\"other\"\n\"2525426\";\"Campubeddu\";\"other\"\n\"2525430\";\"Campana\";\"main\"\n\"2525433\";\"Cammarata\";\"main\"\n\"2525441\";\"Camastra\";\"main\"\n\"2525441\";\"Camastra ex Solfara\";\"other\"\n\"2525445\";\"Caltavuturo\";\"main\"\n\"2525445\";\"Caltavuturu\";\"other\"\n\"2525448\";\"Caltanissetta\";\"main\"\n\"2525448\";\"Caltanisetta\";\"other\"\n\"2525448\";\"Kal'tanissetta\";\"other\"\n\"2525448\";\"Nissa\";\"other\"\n\"2525448\";\"karutanissetta\";\"other\"\n\"2525448\";\"qltnysth\";\"other\"\n\"2525448\";\"Кальтаниссетта\";\"other\"\n\"2525448\";\"קלטניסטה\";\"other\"\n\"2525448\";\"カルタニッセッタ\";\"other\"\n\"2525450\";\"Caltagirone\";\"main\"\n\"2525450\";\"Caltaggiruni\";\"other\"\n\"2525450\";\"Kal'tadzhirone\";\"other\"\n\"2525450\";\"karutajirone\";\"other\"\n\"2525450\";\"Кальтаджироне\";\"other\"\n\"2525450\";\"カルタジローネ\";\"other\"\n\"2525451\";\"Caltabellotta\";\"main\"\n\"2525451\";\"Cataviddotta\";\"other\"\n\"2525452\";\"Caloveto\";\"main\"\n\"2525453\";\"Calopezzati\";\"main\"\n\"2525458\";\"Calatafimi-Segesta\";\"main\"\n\"2525458\";\"Calatafimi\";\"ascii\"\n\"2525459\";\"Calatabiano\";\"main\"\n\"2525459\";\"Calatabianu\";\"other\"\n\"2525460\";\"Calasetta\";\"main\"\n\"2525461\";\"Calascibetta\";\"main\"\n\"2525461\";\"karashibetta\";\"other\"\n\"2525461\";\"カラシベッタ\";\"other\"\n\"2525464\";\"Calanna\";\"main\"\n\"2525465\";\"Calamonaci\";\"main\"\n\"2525473\";\"Cagliari\";\"main\"\n\"2525473\";\"Caller\";\"other\"\n\"2525473\";\"Caralis\";\"other\"\n\"2525473\";\"Casteddu\";\"other\"\n\"2525473\";\"Castel\";\"other\"\n\"2525473\";\"Castèl\";\"other\"\n\"2525473\";\"Càgliari\";\"other\"\n\"2525473\";\"Càller\";\"other\"\n\"2525473\";\"Cáller\";\"other\"\n\"2525473\";\"Kal'jari\";\"other\"\n\"2525473\";\"Kalari\";\"other\"\n\"2525473\";\"ka li ya li\";\"other\"\n\"2525473\";\"kalyary\";\"other\"\n\"2525473\";\"karyari\";\"other\"\n\"2525473\";\"Кальяри\";\"other\"\n\"2525473\";\"Каљари\";\"other\"\n\"2525473\";\"קליארי\";\"other\"\n\"2525473\";\"كالياري\";\"other\"\n\"2525473\";\"カリャリ\";\"other\"\n\"2525473\";\"卡利亚里\";\"other\"\n\"2525475\";\"Caccuri\";\"main\"\n\"2525476\";\"Caccamo\";\"main\"\n\"2525478\";\"Cabras\";\"main\"\n\"2525480\";\"Butera\";\"main\"\n\"2525480\";\"Vutera\";\"other\"\n\"2525483\";\"Buscemi\";\"main\"\n\"2525483\";\"Bascemi\";\"other\"\n\"2525483\";\"bushemi\";\"other\"\n\"2525483\";\"ブシェーミ\";\"other\"\n\"2525485\";\"Burgio\";\"main\"\n\"2525485\";\"Burgiu\";\"other\"\n\"2525487\";\"Burcei\";\"main\"\n\"2525488\";\"Buonvicino\";\"main\"\n\"2525491\";\"Buggerru\";\"main\"\n\"2525492\";\"Buccheri\";\"main\"\n\"2525492\";\"bukkeri\";\"other\"\n\"2525492\";\"ブッケリ\";\"other\"\n\"2525493\";\"Bruzzano Zeffirio\";\"main\"\n\"2525498\";\"Bronte\";\"main\"\n\"2525498\";\"Bronti\";\"other\"\n\"2525499\";\"Brolo\";\"main\"\n\"2525499\";\"Brolu\";\"other\"\n\"2525499\";\"buroro\";\"other\"\n\"2525499\";\"ブローロ\";\"other\"\n\"2525501\";\"Briatico\";\"main\"\n\"2525505\";\"Brancaleone\";\"main\"\n\"2525505\";\"Brancaleone Superiore\";\"ascii\"\n\"2525511\";\"Bova Marina\";\"main\"\n\"2525512\";\"Bovalino Superiore\";\"main\"\n\"2525513\";\"Bovalino\";\"main\"\n\"2525513\";\"Bovalino Marina\";\"ascii\"\n\"2525513\";\"Marina di Bovalino\";\"other\"\n\"2525517\";\"Botricello\";\"main\"\n\"2525517\";\"Bottricello\";\"other\"\n\"2525525\";\"Borgia\";\"main\"\n\"2525526\";\"Borgetto\";\"main\"\n\"2525526\";\"Lu Burgettu\";\"other\"\n\"2525532\";\"Bonifati\";\"main\"\n\"2525534\";\"Bompietro\";\"main\"\n\"2525534\";\"Bompietru\";\"other\"\n\"2525534\";\"Buompietro\";\"other\"\n\"2525537\";\"Bolognetta\";\"main\"\n\"2525537\";\"Bulugnetta\";\"other\"\n\"2525540\";\"Bocchigliero\";\"main\"\n\"2525540\";\"Bocchiglicro\";\"other\"\n\"2525543\";\"Bivongi\";\"main\"\n\"2525545\";\"Bivona\";\"main\"\n\"2525550\";\"Bisignano\";\"main\"\n\"2525552\";\"Bisacquino\";\"main\"\n\"2525552\";\"Busacchinu\";\"other\"\n\"2525558\";\"Bianco\";\"main\"\n\"2525559\";\"Bianchi\";\"main\"\n\"2525559\";\"bianki\";\"other\"\n\"2525559\";\"ビアンキ\";\"other\"\n\"2525560\";\"Biancavilla\";\"main\"\n\"2525564\";\"Benestare\";\"main\"\n\"2525567\";\"Belvedere Marittimo\";\"main\"\n\"2525567\";\"Belevedere\";\"other\"\n\"2525567\";\"Belvedere\";\"other\"\n\"2525567\";\"Marina di Belvedere\";\"other\"\n\"2525567\";\"ベルヴェデーレ・マリッティモ\";\"other\"\n\"2525568\";\"Belvedere di Spinello\";\"main\"\n\"2525568\";\"Belvedere\";\"other\"\n\"2525568\";\"Belvedere Spinello\";\"other\"\n\"2525571\";\"Belpasso\";\"main\"\n\"2525571\";\"Belpassu\";\"other\"\n\"2525573\";\"Belmonte Mezzagno\";\"main\"\n\"2525573\";\"Belmunti Minzagnu\";\"other\"\n\"2525574\";\"Belmonte Calabro\";\"main\"\n\"2525574\";\"Belmonte\";\"other\"\n\"2525574\";\"ベルモンテ・カーラブロ\";\"other\"\n\"2525583\";\"Baucina\";\"main\"\n\"2525589\";\"Barumini\";\"main\"\n\"2525589\";\"barumini\";\"other\"\n\"2525589\";\"バルーミニ\";\"other\"\n\"2525592\";\"Barrali\";\"main\"\n\"2525593\";\"Barrafranca\";\"main\"\n\"2525595\";\"Bari Sardo\";\"main\"\n\"2525597\";\"Barcellona Pozzo di Gotto\";\"main\"\n\"2525597\";\"Barcellona-Pozzo di Gotto\";\"ascii\"\n\"2525597\";\"Barcellona\";\"other\"\n\"2525597\";\"Barcillona siciliana\";\"other\"\n\"2525601\";\"Baratili San Pietro\";\"main\"\n\"2525609\";\"Balestrate\";\"main\"\n\"2525609\";\"Sicciara\";\"other\"\n\"2525616\";\"Bagnara Calabra\";\"main\"\n\"2525616\";\"ba na la\";\"other\"\n\"2525616\";\"巴納拉\";\"other\"\n\"2525628\";\"Bagheria\";\"main\"\n\"2525628\";\"Bagerija\";\"other\"\n\"2525628\";\"Багерия\";\"other\"\n\"2525629\";\"Bagaladi\";\"main\"\n\"2525634\";\"Badolato\";\"main\"\n\"2525643\";\"Avola\";\"main\"\n\"2525643\";\"Avula\";\"other\"\n\"2525643\";\"avu~ora\";\"other\"\n\"2525643\";\"Àvula\";\"other\"\n\"2525643\";\"アーヴォラ\";\"other\"\n\"2525646\";\"Augusta\";\"main\"\n\"2525646\";\"Austa\";\"other\"\n\"2525646\";\"augusuta\";\"other\"\n\"2525646\";\"アウグスタ\";\"other\"\n\"2525647\";\"Atzara\";\"main\"\n\"2525651\";\"Assoro\";\"main\"\n\"2525651\";\"Asaru\";\"other\"\n\"2525651\";\"Assero\";\"other\"\n\"2525655\";\"Assemini\";\"main\"\n\"2525655\";\"Assèmini\";\"other\"\n\"2525655\";\"Ассемини\";\"other\"\n\"2525664\";\"Arzana\";\"main\"\n\"2525673\";\"Aritzo\";\"main\"\n\"2525683\";\"Arena\";\"main\"\n\"2525685\";\"Ardore\";\"main\"\n\"2525685\";\"Ardore Superiore\";\"other\"\n\"2525688\";\"Arbus\";\"main\"\n\"2525689\";\"Arborea\";\"main\"\n\"2525689\";\"Arboree\";\"other\"\n\"2525689\";\"Mussolinia\";\"other\"\n\"2525689\";\"Mussolinia di Sardegna\";\"other\"\n\"2525689\";\"Villaggio Mussolini\";\"other\"\n\"2525693\";\"Aragona\";\"main\"\n\"2525693\";\"Araguna\";\"other\"\n\"2525700\";\"Antonimina\";\"main\"\n\"2525701\";\"Antillo\";\"main\"\n\"2525701\";\"Antillu\";\"other\"\n\"2525706\";\"Anoia\";\"main\"\n\"2525714\";\"Andrano\";\"main\"\n\"2525723\";\"Amendolara\";\"main\"\n\"2525723\";\"amendorara\";\"other\"\n\"2525723\";\"アメンドラーラ\";\"other\"\n\"2525725\";\"Amato\";\"main\"\n\"2525726\";\"Amaroni\";\"main\"\n\"2525727\";\"Amantea\";\"main\"\n\"2525727\";\"amantea\";\"other\"\n\"2525727\";\"アマンテーア\";\"other\"\n\"2525728\";\"Altomonte\";\"main\"\n\"2525728\";\"arutomonte\";\"other\"\n\"2525728\";\"アルトモンテ\";\"other\"\n\"2525729\";\"Altofonte\";\"main\"\n\"2525729\";\"Parco\";\"other\"\n\"2525729\";\"Parcu\";\"other\"\n\"2525734\";\"Altavilla Milicia\";\"main\"\n\"2525736\";\"Alliste\";\"main\"\n\"2525740\";\"Aliminusa\";\"main\"\n\"2525740\";\"Montemaggiore\";\"other\"\n\"2525741\";\"Alimena\";\"main\"\n\"2525746\";\"Alia\";\"main\"\n\"2525748\";\"Alessano\";\"main\"\n\"2525749\";\"Alessandria della Rocca\";\"main\"\n\"2525749\";\"Lisciannira di la Rocca\";\"other\"\n\"2525749\";\"Lisciànnira di la Rocca\";\"other\"\n\"2525751\";\"Ales\";\"main\"\n\"2525751\";\"aresu\";\"other\"\n\"2525751\";\"アーレス\";\"other\"\n\"2525752\";\"Alcara li Fusi\";\"main\"\n\"2525752\";\"Alcara\";\"other\"\n\"2525752\";\"Alcara Li Fusi\";\"other\"\n\"2525755\";\"Alcamo\";\"main\"\n\"2525755\";\"Al'kamo\";\"other\"\n\"2525755\";\"Arcamu\";\"other\"\n\"2525755\";\"Àrcamu\";\"other\"\n\"2525755\";\"Алькамо\";\"other\"\n\"2525756\";\"Albidona\";\"main\"\n\"2525756\";\"arubidona\";\"other\"\n\"2525756\";\"アルビドーナ\";\"other\"\n\"2525757\";\"Albi\";\"main\"\n\"2525760\";\"Aiello Calabro\";\"main\"\n\"2525760\";\"Aiello\";\"other\"\n\"2525760\";\"アイエッロ・カーラブロ\";\"other\"\n\"2525761\";\"Aidone\";\"main\"\n\"2525761\";\"Aidoni\";\"other\"\n\"2525764\";\"Agrigento\";\"main\"\n\"2525764\";\"Agridzentas\";\"other\"\n\"2525764\";\"Agridzhento\";\"other\"\n\"2525764\";\"Agridžentas\";\"other\"\n\"2525764\";\"Agrigent\";\"other\"\n\"2525764\";\"Agrigente\";\"other\"\n\"2525764\";\"Agrigentum\";\"other\"\n\"2525764\";\"Agrixento - Agrigento\";\"other\"\n\"2525764\";\"Girgenti\";\"other\"\n\"2525764\";\"agurijento\";\"other\"\n\"2525764\";\"Агридженто\";\"other\"\n\"2525764\";\"אגריג'נטו\";\"other\"\n\"2525764\";\"アグリジェント\";\"other\"\n\"2525767\";\"Agira\";\"main\"\n\"2525767\";\"Agurion\";\"other\"\n\"2525768\";\"Africo Vecchio\";\"main\"\n\"2525769\";\"Adrano\";\"main\"\n\"2525769\";\"Aderno\";\"other\"\n\"2525769\";\"Adernó\";\"other\"\n\"2525769\";\"Адрано\";\"other\"\n\"2525772\";\"Acri\";\"main\"\n\"2525772\";\"Akri\";\"other\"\n\"2525772\";\"akuri\";\"other\"\n\"2525772\";\"Акри\";\"other\"\n\"2525772\";\"アクリ\";\"other\"\n\"2525773\";\"Acquedolci\";\"main\"\n\"2525773\";\"Acque Dolci\";\"ascii\"\n\"2525774\";\"Acquaviva Platani\";\"main\"\n\"2525774\";\"Acquaviva Plàtani\";\"other\"\n\"2525776\";\"Acquaro\";\"main\"\n\"2525778\";\"Acquarica del Capo\";\"main\"\n\"2525778\";\"Acquarica\";\"other\"\n\"2525779\";\"Acquappesa\";\"main\"\n\"2525779\";\"Acquappessa\";\"other\"\n\"2525779\";\"akkuappeza\";\"other\"\n\"2525779\";\"アックアッペーザ\";\"other\"\n\"2525782\";\"Acquaformosa\";\"main\"\n\"2525782\";\"Firmoza\";\"other\"\n\"2525782\";\"akkuaforumoza\";\"other\"\n\"2525782\";\"アックアフォルモーザ\";\"other\"\n\"2525789\";\"Aci Sant'Antonio\";\"main\"\n\"2525789\";\"Jaci Sant'Antoniu\";\"other\"\n\"2525790\";\"Acireale\";\"main\"\n\"2525791\";\"Aci Catena\";\"main\"\n\"2525791\";\"Jaci Catena\";\"other\"\n\"2525792\";\"Aci Castello\";\"main\"\n\"2525792\";\"Jaci Casteddu\";\"other\"\n\"2525793\";\"Aci Bonaccorsi\";\"main\"\n\"2525793\";\"Aci Buonaccorsi\";\"other\"\n\"2525793\";\"Jaci Bonaccossi\";\"other\"\n\"2525796\";\"Acate\";\"main\"\n\"2525796\";\"Biscari\";\"other\"\n\"2592655\";\"Cardedu\";\"main\"\n\"2592658\";\"Siurgus Donigala\";\"main\"\n\"3163827\";\"Volpago del Montello\";\"main\"\n\"3163827\";\"Volpago\";\"other\"\n\"3163830\";\"Granarolo dell'Emilia\";\"main\"\n\"3163830\";\"Granarolo del l'Emilia\";\"ascii\"\n\"3163830\";\"Granarolo\";\"other\"\n\"3163834\";\"Zungoli\";\"main\"\n\"3163846\";\"Zoppola\";\"main\"\n\"3163846\";\"Copule\";\"other\"\n\"3163849\";\"Zollino\";\"main\"\n\"3163849\";\"Tzuddhino\";\"other\"\n\"3163852\";\"Zoldo Alto\";\"main\"\n\"3163853\";\"Zola Predosa\";\"main\"\n\"3163854\";\"Zogno\";\"main\"\n\"3163858\";\"Zocca\";\"main\"\n\"3163859\";\"Zoagli\";\"main\"\n\"3163859\";\"Zoaggi\";\"other\"\n\"3163867\";\"Zinasco\";\"main\"\n\"3163870\";\"Zimella\";\"main\"\n\"3163872\";\"Zibido San Giacomo\";\"main\"\n\"3163872\";\"ジービド・サン・ジャコモ\";\"other\"\n\"3163874\";\"Zibello\";\"main\"\n\"3163874\";\"jiberro\";\"other\"\n\"3163874\";\"ジベッロ\";\"other\"\n\"3163875\";\"Ziano Piacentino\";\"main\"\n\"3163875\";\"Ziano\";\"other\"\n\"3163876\";\"Ziano di Fiemme\";\"main\"\n\"3163876\";\"ジアーノ・ディ・フィエンメ\";\"other\"\n\"3163878\";\"Zevio\";\"main\"\n\"3163879\";\"Zero Branco\";\"main\"\n\"3163881\";\"Zermeghedo\";\"main\"\n\"3163885\";\"Zerbolò\";\"main\"\n\"3163885\";\"Zerbolo\";\"ascii\"\n\"3163888\";\"Zenson di Piave\";\"main\"\n\"3163888\";\"Zenson\";\"other\"\n\"3163888\";\"Zenzon di Piave\";\"other\"\n\"3163893\";\"Zeme\";\"main\"\n\"3163894\";\"Zelo Buon Persico\";\"main\"\n\"3163894\";\"ゼーロ・ブオン・ペルシコ\";\"other\"\n\"3163902\";\"Zavattarello\";\"main\"\n\"3163902\";\"Zavattarello-Valverde\";\"other\"\n\"3163904\";\"Zapponeta\";\"main\"\n\"3163911\";\"Zanica\";\"main\"\n\"3163916\";\"Zanè\";\"main\"\n\"3163916\";\"Zane\";\"ascii\"\n\"3163917\";\"Zandobbio\";\"main\"\n\"3163930\";\"Zambana\";\"main\"\n\"3163930\";\"zanbana\";\"other\"\n\"3163930\";\"ザンバーナ\";\"other\"\n\"3163932\";\"Zagarolo\";\"main\"\n\"3163932\";\"zagarolo\";\"other\"\n\"3163932\";\"zagaroro\";\"other\"\n\"3163932\";\"ザガローロ\";\"other\"\n\"3163950\";\"Volvera\";\"main\"\n\"3163950\";\"vu~oruvu~era\";\"other\"\n\"3163950\";\"ヴォルヴェーラ\";\"other\"\n\"3163954\";\"Volturino\";\"main\"\n\"3163955\";\"Volturara Irpina\";\"main\"\n\"3163962\";\"Volterra\";\"main\"\n\"3163965\";\"Volta Mantovana\";\"main\"\n\"3163965\";\"ヴォルタ・マントヴァーナ\";\"other\"\n\"3163974\";\"Volpiano\";\"main\"\n\"3163974\";\"Volpian\";\"other\"\n\"3163974\";\"vu~orupyano\";\"other\"\n\"3163974\";\"ヴォルピャーノ\";\"other\"\n\"3163977\";\"Volpedo\";\"main\"\n\"3163989\";\"Volano\";\"main\"\n\"3163989\";\"vu~orano\";\"other\"\n\"3163989\";\"ヴォラーノ\";\"other\"\n\"3163992\";\"Vogogna\";\"main\"\n\"3163995\";\"Voghera\";\"main\"\n\"3163995\";\"Iria\";\"other\"\n\"3163995\";\"Vogera\";\"other\"\n\"3163995\";\"vu~ogera\";\"other\"\n\"3163995\";\"Вогера\";\"other\"\n\"3163995\";\"ヴォゲーラ\";\"other\"\n\"3164002\";\"Vobarno\";\"main\"\n\"3164002\";\"vu~obaruno\";\"other\"\n\"3164002\";\"ヴォバルノ\";\"other\"\n\"3164003\";\"Vo\";\"main\"\n\"3164018\";\"Vivaro\";\"main\"\n\"3164018\";\"Vivar\";\"other\"\n\"3164023\";\"Viù\";\"main\"\n\"3164023\";\"Viu\";\"ascii\"\n\"3164023\";\"vu~iu\";\"other\"\n\"3164023\";\"ヴィウ\";\"other\"\n\"3164024\";\"Vitulazio\";\"main\"\n\"3164025\";\"Vitulano\";\"main\"\n\"3164026\";\"Vittuone\";\"main\"\n\"3164026\";\"vu~itto~uone\";\"other\"\n\"3164026\";\"ヴィットゥオーネ\";\"other\"\n\"3164027\";\"Vittorito\";\"main\"\n\"3164028\";\"Vittorio Veneto\";\"main\"\n\"3164028\";\"Vitorio\";\"other\"\n\"3164028\";\"Vittorio\";\"other\"\n\"3164028\";\"Vittorio-Veneto\";\"other\"\n\"3164028\";\"Vitòrio\";\"other\"\n\"3164028\";\"Витторио-Венето\";\"other\"\n\"3164028\";\"ヴィットリオ・ヴェネト\";\"other\"\n\"3164029\";\"Vitorchiano\";\"main\"\n\"3164039\";\"Viterbo\";\"main\"\n\"3164039\";\"Viterbe\";\"other\"\n\"3164039\";\"Viterbium\";\"other\"\n\"3164039\";\"vu~iterubo\";\"other\"\n\"3164039\";\"Витербо\";\"other\"\n\"3164039\";\"ヴィテルボ\";\"other\"\n\"3164045\";\"Visso\";\"main\"\n\"3164057\";\"Visciano\";\"main\"\n\"3164057\";\"vu~ishano\";\"other\"\n\"3164057\";\"ヴィシャーノ\";\"other\"\n\"3164061\";\"Visano\";\"main\"\n\"3164061\";\"vu~izano\";\"other\"\n\"3164061\";\"ヴィザーノ\";\"other\"\n\"3164062\";\"Virle Piemonte\";\"main\"\n\"3164062\";\"ヴィルレ・ピエモンテ\";\"other\"\n\"3164065\";\"Vipiteno - Sterzing\";\"main\"\n\"3164065\";\"Vipiteno\";\"ascii\"\n\"3164065\";\"Sterzing\";\"other\"\n\"3164065\";\"Sterzing-Vipiteno\";\"other\"\n\"3164065\";\"Vipitenum\";\"other\"\n\"3164065\";\"vu~ipiteno\";\"other\"\n\"3164065\";\"ヴィピテーノ\";\"other\"\n\"3164074\";\"Vinci\";\"main\"\n\"3164074\";\"Vinchi\";\"other\"\n\"3164074\";\"vu~inchi\";\"other\"\n\"3164074\";\"Винчи\";\"other\"\n\"3164074\";\"ヴィンチ\";\"other\"\n\"3164075\";\"Vinchiaturo\";\"main\"\n\"3164080\";\"Vimodrone\";\"main\"\n\"3164080\";\"vu~imodorone\";\"other\"\n\"3164080\";\"ヴィモドローネ\";\"other\"\n\"3164083\";\"Vimercate\";\"main\"\n\"3164083\";\"Vicus Mercati\";\"other\"\n\"3164083\";\"vu~imerukate\";\"other\"\n\"3164083\";\"ヴィメルカーテ\";\"other\"\n\"3164090\";\"Villorba\";\"main\"\n\"3164092\";\"Villongo\";\"main\"\n\"3164092\";\"Villongo Sant'Alessandro\";\"ascii\"\n\"3164094\";\"Villimpenta\";\"main\"\n\"3164101\";\"Villesse\";\"main\"\n\"3164101\";\"Viles\";\"other\"\n\"3164111\";\"Villa Vicentina\";\"main\"\n\"3164111\";\"Vile Visintine\";\"other\"\n\"3164114\";\"Tavazzano con Villavesco\";\"main\"\n\"3164114\";\"Villavesco\";\"ascii\"\n\"3164115\";\"Villa Verucchio\";\"main\"\n\"3164115\";\"La Villa\";\"other\"\n\"3164116\";\"Villaverla\";\"main\"\n\"3164120\";\"Villavallelonga\";\"main\"\n\"3164125\";\"Villata\";\"main\"\n\"3164125\";\"La Vilata\";\"other\"\n\"3164128\";\"Villastellone\";\"main\"\n\"3164128\";\"vu~irrasuterrone\";\"other\"\n\"3164128\";\"ヴィッラステッローネ\";\"other\"\n\"3164130\";\"Villa Santo Stefano\";\"main\"\n\"3164131\";\"Villa Santina\";\"main\"\n\"3164131\";\"Vile Santine\";\"other\"\n\"3164134\";\"Villa Santa Maria\";\"main\"\n\"3164136\";\"Villa Santa Lucia\";\"main\"\n\"3164138\";\"Villasanta\";\"main\"\n\"3164138\";\"Santa\";\"other\"\n\"3164138\";\"vu~irrasanta\";\"other\"\n\"3164138\";\"ヴィッラサンタ\";\"other\"\n\"3164145\";\"Villar Perosa\";\"main\"\n\"3164145\";\"Villa Perosa\";\"other\"\n\"3164145\";\"ヴィッラール・ペローザ\";\"other\"\n\"3164146\";\"Villar Pellice\";\"main\"\n\"3164146\";\"ヴィッラール・ペッリチェ\";\"other\"\n\"3164153\";\"Villaricca\";\"main\"\n\"3164153\";\"Villarikka\";\"other\"\n\"3164153\";\"vu~irrarikka\";\"other\"\n\"3164153\";\"Вилларикка\";\"other\"\n\"3164153\";\"ヴィッラリッカ\";\"other\"\n\"3164154\";\"Villar Focchiardo\";\"main\"\n\"3164154\";\"ヴィッラール・フォッキアルド\";\"other\"\n\"3164172\";\"Villanuova sul Clisi\";\"main\"\n\"3164172\";\"Villanuova sul clisi\";\"ascii\"\n\"3164172\";\"ヴィッラヌオーヴァ・スル・クリージ\";\"other\"\n\"3164174\";\"Villanterio\";\"main\"\n\"3164175\";\"Villanova sull'Arda\";\"main\"\n\"3164175\";\"Villanova\";\"other\"\n\"3164177\";\"Villanova Monteleone\";\"main\"\n\"3164178\";\"Villanova Monferrato\";\"main\"\n\"3164178\";\"Vilaneuva Monfra\";\"other\"\n\"3164178\";\"Vilaneuva Monfrà\";\"other\"\n\"3164178\";\"Villanova\";\"other\"\n\"3164179\";\"Villanova Mondovì\";\"main\"\n\"3164179\";\"Villanova Mondovi\";\"ascii\"\n\"3164179\";\"Villanova\";\"other\"\n\"3164180\";\"Villanova Marchesana\";\"main\"\n\"3164180\";\"Villanova\";\"other\"\n\"3164181\";\"Villanova del Ghebbo\";\"main\"\n\"3164182\";\"Villanova del Battista\";\"main\"\n\"3164183\";\"Villanova d'Asti\";\"main\"\n\"3164183\";\"Vilaneuva d'Ast\";\"other\"\n\"3164183\";\"Villanuova d'Asti\";\"other\"\n\"3164185\";\"Villanova d'Albenga\";\"main\"\n\"3164185\";\"Villanova\";\"other\"\n\"3164203\";\"Villa Minozzo\";\"main\"\n\"3164204\";\"Villamarzana\";\"main\"\n\"3164209\";\"Villamaina\";\"main\"\n\"3164213\";\"Villamagna\";\"main\"\n\"3164219\";\"Villa Literno\";\"main\"\n\"3164220\";\"Villalfonsina\";\"main\"\n\"3164221\";\"Villa Latina\";\"main\"\n\"3164223\";\"Villa Lagarina\";\"main\"\n\"3164223\";\"ヴィッラ・ラガリーナ\";\"other\"\n\"3164227\";\"Villa Guardia\";\"main\"\n\"3164238\";\"Villaga\";\"main\"\n\"3164239\";\"Villafranca Piemonte\";\"main\"\n\"3164239\";\"Villafranca\";\"other\"\n\"3164239\";\"Villafranca Sabauda\";\"other\"\n\"3164239\";\"ヴィッラフランカ・ピエモンテ\";\"other\"\n\"3164240\";\"Villafranca in Lunigiana\";\"main\"\n\"3164240\";\"Villafranca\";\"other\"\n\"3164240\";\"Villafranca Lunigiana\";\"other\"\n\"3164240\";\"ヴィッラフランカ・イン・ルニジャーナ\";\"other\"\n\"3164241\";\"Villafranca di Verona\";\"main\"\n\"3164241\";\"ヴィッラフランカ・ディ・ヴェローナ\";\"other\"\n\"3164243\";\"Villafranca d'Asti\";\"main\"\n\"3164243\";\"Vilafranca d'Ast\";\"other\"\n\"3164243\";\"Villafranca\";\"other\"\n\"3164250\";\"Villafalletto\";\"main\"\n\"3164252\";\"Villa Estense\";\"main\"\n\"3164253\";\"Villadossola\";\"main\"\n\"3164253\";\"Villa\";\"other\"\n\"3164254\";\"Villadose\";\"main\"\n\"3164254\";\"Viladose\";\"other\"\n\"3164254\";\"Viładose\";\"other\"\n\"3164256\";\"Villa di Tirano\";\"main\"\n\"3164258\";\"Villa di Serio\";\"main\"\n\"3164258\";\"Serio\";\"other\"\n\"3164260\";\"Villa di Chiavenna\";\"main\"\n\"3164260\";\"Villa Chiavenna\";\"other\"\n\"3164266\";\"Villa del Conte\";\"main\"\n\"3164270\";\"Villa d'Almè\";\"main\"\n\"3164270\";\"Villa d'Alme\";\"ascii\"\n\"3164270\";\"Ela\";\"other\"\n\"3164270\";\"Éla\";\"other\"\n\"3164274\";\"Villa Cortese\";\"main\"\n\"3164274\";\"ヴィッラ・コルテーゼ\";\"other\"\n\"3164279\";\"Villachiara\";\"main\"\n\"3164279\";\"vu~irrakiara\";\"other\"\n\"3164279\";\"ヴィッラキアーラ\";\"other\"\n\"3164282\";\"Villa Castelli\";\"main\"\n\"3164301\";\"Villabassa - Niederdorf\";\"main\"\n\"3164301\";\"Villabassa\";\"ascii\"\n\"3164301\";\"Niederdorf\";\"other\"\n\"3164301\";\"vu~irrabassa\";\"other\"\n\"3164301\";\"ヴィッラバッサ\";\"other\"\n\"3164302\";\"Villa Basilica\";\"main\"\n\"3164303\";\"Villa Bartolomea\";\"main\"\n\"3164308\";\"Villa Carcina\";\"main\"\n\"3164308\";\"Villa\";\"ascii\"\n\"3164314\";\"Viguzzolo\";\"main\"\n\"3164318\";\"Vigonza\";\"main\"\n\"3164320\";\"Vigonovo\";\"main\"\n\"3164321\";\"Vigone\";\"main\"\n\"3164321\";\"Vigon\";\"other\"\n\"3164321\";\"vu~igone\";\"other\"\n\"3164321\";\"ヴィゴーネ\";\"other\"\n\"3164322\";\"Vigolzone\";\"main\"\n\"3164323\";\"Vigolo Vattaro\";\"main\"\n\"3164323\";\"ヴィゴーロ・ヴァッターロ\";\"other\"\n\"3164324\";\"Vigo Lomaso\";\"main\"\n\"3164330\";\"Vigo di Fassa\";\"main\"\n\"3164330\";\"ヴィーゴ・ディ・ファッサ\";\"other\"\n\"3164331\";\"Vigo di Cadore\";\"main\"\n\"3164332\";\"Vigodarzere\";\"main\"\n\"3164334\";\"Vignolo\";\"main\"\n\"3164342\";\"Vignola\";\"main\"\n\"3164342\";\"Viynola\";\"other\"\n\"3164352\";\"Vignate\";\"main\"\n\"3164352\";\"vu~inyate\";\"other\"\n\"3164352\";\"ヴィニャーテ\";\"other\"\n\"3164354\";\"Vignanello\";\"main\"\n\"3164356\";\"Vignale Monferrato\";\"main\"\n\"3164356\";\"Vignale\";\"ascii\"\n\"3164368\";\"Vigliano Biellese\";\"main\"\n\"3164373\";\"Viggiù\";\"main\"\n\"3164373\";\"Viggiu\";\"ascii\"\n\"3164374\";\"Viggiano\";\"main\"\n\"3164376\";\"Vigevano\";\"main\"\n\"3164376\";\"Vidzhevano\";\"other\"\n\"3164376\";\"Vigebanum\";\"other\"\n\"3164376\";\"vu~ijevu~ano\";\"other\"\n\"3164376\";\"Виджевано\";\"other\"\n\"3164376\";\"ヴィジェーヴァノ\";\"other\"\n\"3164381\";\"Vigasio\";\"main\"\n\"3164383\";\"Vigarano Mainarda\";\"main\"\n\"3164383\";\"Vigarano\";\"other\"\n\"3164383\";\"ヴィガラーノ・マイナルダ\";\"other\"\n\"3164385\";\"Vietri sul Mare\";\"main\"\n\"3164385\";\"Виетри сул Маре\";\"other\"\n\"3164386\";\"Vietri di Potenza\";\"main\"\n\"3164387\";\"Vieste\";\"main\"\n\"3164388\";\"Vidor\";\"main\"\n\"3164388\";\"vu~idoru\";\"other\"\n\"3164388\";\"ヴィドール\";\"other\"\n\"3164391\";\"Vidigulfo\";\"main\"\n\"3164394\";\"Vicovaro\";\"main\"\n\"3164394\";\"vu~ikovu~aro\";\"other\"\n\"3164394\";\"ヴィコヴァーロ\";\"other\"\n\"3164396\";\"Vicopisano\";\"main\"\n\"3164396\";\"Vicopis\";\"other\"\n\"3164397\";\"Vico nel Lazio\";\"main\"\n\"3164407\";\"Vico Equense\";\"main\"\n\"3164407\";\"ヴィーコ・エクエンセ\";\"other\"\n\"3164409\";\"Vico del Gargano\";\"main\"\n\"3164409\";\"Vico Garganico\";\"other\"\n\"3164419\";\"Vicenza\";\"main\"\n\"3164419\";\"Vicence\";\"other\"\n\"3164419\";\"Vicenzsa\";\"other\"\n\"3164419\";\"Vicetia\";\"other\"\n\"3164419\";\"Vichenca\";\"other\"\n\"3164419\";\"vu~ichentsu~a\";\"other\"\n\"3164419\";\"Виченца\";\"other\"\n\"3164419\";\"ヴィチェンツァ\";\"other\"\n\"3164422\";\"Vicchio\";\"main\"\n\"3164429\";\"Vibonati\";\"main\"\n\"3164433\";\"Viareggio\";\"main\"\n\"3164433\";\"Viaredzhio\";\"other\"\n\"3164433\";\"Viareggiu\";\"other\"\n\"3164433\";\"vu~iarejjo\";\"other\"\n\"3164433\";\"Виареджио\";\"other\"\n\"3164433\";\"ヴィアレッジョ\";\"other\"\n\"3164434\";\"Viano\";\"main\"\n\"3164440\";\"Viadana\";\"main\"\n\"3164440\";\"Viadena\";\"other\"\n\"3164450\";\"Vezzano sul Crostolo\";\"main\"\n\"3164450\";\"Vezzano\";\"other\"\n\"3164451\";\"Vezzano Ligure\";\"main\"\n\"3164451\";\"Vessan Ligure\";\"other\"\n\"3164451\";\"Vezzano\";\"other\"\n\"3164453\";\"Vezzano\";\"main\"\n\"3164453\";\"Vezzano di Trento\";\"other\"\n\"3164453\";\"vu~ettsu~ano\";\"other\"\n\"3164453\";\"ヴェッツァーノ\";\"other\"\n\"3164457\";\"Vezza d'Oglio\";\"main\"\n\"3164457\";\"Vezza\";\"other\"\n\"3164457\";\"veca d'ol'o\";\"other\"\n\"3164457\";\"Веца д'Ольо\";\"other\"\n\"3164462\";\"Vetto\";\"main\"\n\"3164472\";\"Vetralla\";\"main\"\n\"3164472\";\"vu~etorarra\";\"other\"\n\"3164472\";\"ヴェトラッラ\";\"other\"\n\"3164482\";\"Vestone\";\"main\"\n\"3164485\";\"Vestenanova\";\"main\"\n\"3164485\";\"Vestenanuova\";\"ascii\"\n\"3164488\";\"Vespolate\";\"main\"\n\"3164492\";\"Vescovato\";\"main\"\n\"3164493\";\"Vescovana\";\"main\"\n\"3164499\";\"Verzuolo\";\"main\"\n\"3164502\";\"Verucchio\";\"main\"\n\"3164504\";\"Vertova\";\"main\"\n\"3164506\";\"Vertemate con Minoprio\";\"main\"\n\"3164506\";\"Vertemate\";\"ascii\"\n\"3164506\";\"Vertemate Minoprio\";\"other\"\n\"3164515\";\"Verrone\";\"main\"\n\"3164519\";\"Verrès\";\"main\"\n\"3164519\";\"Verres\";\"ascii\"\n\"3164519\";\"Castel Verres\";\"other\"\n\"3164519\";\"Castel Verrès\";\"other\"\n\"3164523\";\"Veronella\";\"main\"\n\"3164527\";\"Verona\";\"main\"\n\"3164527\";\"Verone\";\"other\"\n\"3164527\";\"Vérone\";\"other\"\n\"3164527\";\"Werona\";\"other\"\n\"3164527\";\"fyrwna\";\"other\"\n\"3164527\";\"verona\";\"other\"\n\"3164527\";\"vu~erona\";\"other\"\n\"3164527\";\"wei luo na\";\"other\"\n\"3164527\";\"wrwna\";\"other\"\n\"3164527\";\"wrwnh\";\"other\"\n\"3164527\";\"Верона\";\"other\"\n\"3164527\";\"ורונה\";\"other\"\n\"3164527\";\"فيرونا\";\"other\"\n\"3164527\";\"ورونا\";\"other\"\n\"3164527\";\"वेरोना\";\"other\"\n\"3164527\";\"ヴェローナ\";\"other\"\n\"3164527\";\"维罗纳\";\"other\"\n\"3164528\";\"Veroli\";\"main\"\n\"3164529\";\"Verolengo\";\"main\"\n\"3164529\";\"vu~erorengo\";\"other\"\n\"3164529\";\"ヴェロレンゴ\";\"other\"\n\"3164530\";\"Verolavecchia\";\"main\"\n\"3164531\";\"Verolanuova\";\"main\"\n\"3164531\";\"Veralanuova\";\"other\"\n\"3164532\";\"Vernole\";\"main\"\n\"3164533\";\"Vernio\";\"main\"\n\"3164533\";\"vu~erunio\";\"other\"\n\"3164533\";\"ヴェルニオ\";\"other\"\n\"3164535\";\"Vernazza\";\"main\"\n\"3164535\";\"Vernassa\";\"other\"\n\"3164535\";\"vu~erunattsu~a\";\"other\"\n\"3164535\";\"ヴェルナッツァ\";\"other\"\n\"3164536\";\"Vernate\";\"main\"\n\"3164536\";\"vu~erunate\";\"other\"\n\"3164536\";\"ヴェルナーテ\";\"other\"\n\"3164537\";\"Vernasca\";\"main\"\n\"3164538\";\"Vernante\";\"main\"\n\"3164538\";\"Vernant\";\"other\"\n\"3164540\";\"Vermiglio\";\"main\"\n\"3164540\";\"vu~erumirio\";\"other\"\n\"3164540\";\"ヴェルミーリオ\";\"other\"\n\"3164541\";\"Vermezzo\";\"main\"\n\"3164541\";\"vu~erumettsu~o\";\"other\"\n\"3164541\";\"ヴェルメッツォ\";\"other\"\n\"3164548\";\"Vergiate\";\"main\"\n\"3164548\";\"Verigate\";\"other\"\n\"3164550\";\"Verghereto\";\"main\"\n\"3164552\";\"Vergato\";\"main\"\n\"3164557\";\"Verdello\";\"main\"\n\"3164562\";\"Vercurago\";\"main\"\n\"3164565\";\"Vercelli\";\"main\"\n\"3164565\";\"Verceil\";\"other\"\n\"3164565\";\"Vercellae\";\"other\"\n\"3164565\";\"Verchelli\";\"other\"\n\"3164565\";\"Vercèlli\";\"other\"\n\"3164565\";\"vu~erucherri\";\"other\"\n\"3164565\";\"Верчелли\";\"other\"\n\"3164565\";\"ヴェルチェッリ\";\"other\"\n\"3164566\";\"Verceia\";\"main\"\n\"3164570\";\"Venzone\";\"main\"\n\"3164570\";\"Vencon\";\"other\"\n\"3164570\";\"Vençon\";\"other\"\n\"3164582\";\"Ventimiglia\";\"main\"\n\"3164582\";\"Ventimil'ja\";\"other\"\n\"3164582\";\"Vintimille\";\"other\"\n\"3164582\";\"vu~entimiria\";\"other\"\n\"3164582\";\"Вентимилья\";\"other\"\n\"3164582\";\"ヴェンティミリア\";\"other\"\n\"3164592\";\"Venosa\";\"main\"\n\"3164592\";\"vu~enoza\";\"other\"\n\"3164592\";\"ヴェノーザ\";\"other\"\n\"3164603\";\"Venice\";\"main\"\n\"3164603\";\"Benatky\";\"other\"\n\"3164603\";\"Benetia\";\"other\"\n\"3164603\";\"Benetke\";\"other\"\n\"3164603\";\"Benezia\";\"other\"\n\"3164603\";\"Benátky\";\"other\"\n\"3164603\";\"Feneyjar\";\"other\"\n\"3164603\";\"V'nise\";\"other\"\n\"3164603\";\"Velence\";\"other\"\n\"3164603\";\"Venecia\";\"other\"\n\"3164603\";\"Venecia - Venezia\";\"other\"\n\"3164603\";\"Venecija\";\"other\"\n\"3164603\";\"Venecio\";\"other\"\n\"3164603\";\"Venedeg\";\"other\"\n\"3164603\";\"Venedig\";\"other\"\n\"3164603\";\"Venedik\";\"other\"\n\"3164603\";\"Venediku\";\"other\"\n\"3164603\";\"Venesia\";\"other\"\n\"3164603\";\"Venetia\";\"other\"\n\"3164603\";\"Venetie\";\"other\"\n\"3164603\";\"Venetik\";\"other\"\n\"3164603\";\"Venetië\";\"other\"\n\"3164603\";\"Venetsia\";\"other\"\n\"3164603\";\"Veneza\";\"other\"\n\"3164603\";\"Venezia\";\"other\"\n\"3164603\";\"Venezsia\";\"other\"\n\"3164603\";\"Veneţia\";\"other\"\n\"3164603\";\"Venies\";\"other\"\n\"3164603\";\"Venise\";\"other\"\n\"3164603\";\"Venizia\";\"other\"\n\"3164603\";\"Venècia\";\"other\"\n\"3164603\";\"Venèsia\";\"other\"\n\"3164603\";\"Vignesie\";\"other\"\n\"3164603\";\"Vinezzia\";\"other\"\n\"3164603\";\"Wenecja\";\"other\"\n\"3164603\";\"albndqyt\";\"other\"\n\"3164603\";\"benechia\";\"other\"\n\"3164603\";\"benisu\";\"other\"\n\"3164603\";\"venetsia\";\"other\"\n\"3164603\";\"vu~enetsu~ia\";\"other\"\n\"3164603\";\"vu~enisu\";\"other\"\n\"3164603\";\"wei ni si\";\"other\"\n\"3164603\";\"wnyz\";\"other\"\n\"3164603\";\"wnzyh\";\"other\"\n\"3164603\";\"Βενετία\";\"other\"\n\"3164603\";\"Венеция\";\"other\"\n\"3164603\";\"Венеција\";\"other\"\n\"3164603\";\"Венеція\";\"other\"\n\"3164603\";\"Վենետիկ\";\"other\"\n\"3164603\";\"ונציה\";\"other\"\n\"3164603\";\"البندقية\";\"other\"\n\"3164603\";\"ونیز\";\"other\"\n\"3164603\";\"ۋېنىتسىيە\";\"other\"\n\"3164603\";\"ვენეცია\";\"other\"\n\"3164603\";\"ベニス\";\"other\"\n\"3164603\";\"ヴェニス\";\"other\"\n\"3164603\";\"ヴェネツィア\";\"other\"\n\"3164603\";\"威尼斯\";\"other\"\n\"3164603\";\"베네치아\";\"other\"\n\"3164608\";\"Venegono Superiore\";\"main\"\n\"3164608\";\"Venegono\";\"other\"\n\"3164609\";\"Venegono Inferiore\";\"main\"\n\"3164614\";\"Venasca\";\"main\"\n\"3164616\";\"Venarotta\";\"main\"\n\"3164616\";\"vu~enarotta\";\"other\"\n\"3164616\";\"ヴェナロッタ\";\"other\"\n\"3164617\";\"Venaria Reale\";\"main\"\n\"3164617\";\"Venaria\";\"other\"\n\"3164617\";\"ヴェナリーア・レアーレ\";\"other\"\n\"3164621\";\"Venafro\";\"main\"\n\"3164627\";\"Velturno - Feldthurns\";\"main\"\n\"3164627\";\"Velturno\";\"ascii\"\n\"3164627\";\"Feldthurns\";\"other\"\n\"3164627\";\"vu~eruto~uruno\";\"other\"\n\"3164627\";\"ヴェルトゥルノ\";\"other\"\n\"3164629\";\"Vellezzo Bellini\";\"main\"\n\"3164630\";\"Velletri\";\"main\"\n\"3164630\";\"Velitrae\";\"other\"\n\"3164630\";\"vu~erretori\";\"other\"\n\"3164630\";\"ヴェッレトリ\";\"other\"\n\"3164645\";\"Vejano\";\"main\"\n\"3164645\";\"Veiano\";\"ascii\"\n\"3164646\";\"Veglie\";\"main\"\n\"3164647\";\"Veggiano\";\"main\"\n\"3164656\";\"Vedelago\";\"main\"\n\"3164657\";\"Vedano Olona\";\"main\"\n\"3164663\";\"Vecchiano\";\"main\"\n\"3164665\";\"Vazzola\";\"main\"\n\"3164668\";\"Vattaro\";\"main\"\n\"3164668\";\"vu~attaro\";\"other\"\n\"3164668\";\"ヴァッターロ\";\"other\"\n\"3164672\";\"Vasto\";\"main\"\n\"3164672\";\"Istonio\";\"other\"\n\"3164672\";\"Васто\";\"other\"\n\"3164682\";\"Vasanello\";\"main\"\n\"3164682\";\"Bassanello\";\"other\"\n\"3164684\";\"Varzo\";\"main\"\n\"3164685\";\"Varzi\";\"main\"\n\"3164686\";\"Varsi\";\"main\"\n\"3164691\";\"Varna - Vahrn\";\"main\"\n\"3164691\";\"Varna\";\"ascii\"\n\"3164691\";\"Vahrn\";\"other\"\n\"3164691\";\"vu~aruna\";\"other\"\n\"3164691\";\"ヴァルナ\";\"other\"\n\"3164692\";\"Varmo\";\"main\"\n\"3164692\";\"Vil di Var\";\"other\"\n\"3164696\";\"Varese Ligure\";\"main\"\n\"3164696\";\"Vaise Ligure\";\"other\"\n\"3164699\";\"Varese\";\"main\"\n\"3164699\";\"Baretium\";\"other\"\n\"3164699\";\"Vareis\";\"other\"\n\"3164699\";\"Vareze\";\"other\"\n\"3164699\";\"Varèis\";\"other\"\n\"3164699\";\"Varèse\";\"other\"\n\"3164699\";\"vu~areze\";\"other\"\n\"3164699\";\"wa lei ze\";\"other\"\n\"3164699\";\"Варезе\";\"other\"\n\"3164699\";\"ヴァレーゼ\";\"other\"\n\"3164699\";\"瓦雷澤\";\"other\"\n\"3164702\";\"Varedo\";\"main\"\n\"3164702\";\"vu~aredo\";\"other\"\n\"3164702\";\"ヴァレード\";\"other\"\n\"3164709\";\"Varazze\";\"main\"\n\"3164709\";\"Vaeze\";\"other\"\n\"3164709\";\"Väze\";\"other\"\n\"3164709\";\"vu~arattsu~e\";\"other\"\n\"3164709\";\"ヴァラッツェ\";\"other\"\n\"3164712\";\"Varano de' Melegari\";\"main\"\n\"3164712\";\"Varano de'Melegari\";\"other\"\n\"3164717\";\"Varallo Pombia\";\"main\"\n\"3164718\";\"Varallo\";\"main\"\n\"3164718\";\"Varallo Sesia\";\"other\"\n\"3164718\";\"Varallo Sésia\";\"other\"\n\"3164718\";\"ヴァラッロ・セージア\";\"other\"\n\"3164723\";\"Vaprio d'Adda\";\"main\"\n\"3164723\";\"Vaprio\";\"other\"\n\"3164723\";\"Vaprio d'Ada\";\"other\"\n\"3164723\";\"Ваприо д'Ада\";\"other\"\n\"3164723\";\"ヴァプリオ・ダッダ\";\"other\"\n\"3164727\";\"Vanzago\";\"main\"\n\"3164727\";\"vu~anzago\";\"other\"\n\"3164727\";\"ヴァンザーゴ\";\"other\"\n\"3164728\";\"Vanzaghello\";\"main\"\n\"3164728\";\"vu~anzagerro\";\"other\"\n\"3164728\";\"ヴァンザゲッロ\";\"other\"\n\"3164736\";\"Vandoies di Sotto\";\"main\"\n\"3164736\";\"Niedervintl\";\"other\"\n\"3164745\";\"Valvasone\";\"main\"\n\"3164745\";\"Voleson\";\"other\"\n\"3164746\";\"Valva\";\"main\"\n\"3164754\";\"Valstagna\";\"main\"\n\"3164756\";\"Valsinni\";\"main\"\n\"3164768\";\"Valperga\";\"main\"\n\"3164768\";\"vu~aruperuga\";\"other\"\n\"3164768\";\"ヴァルペルガ\";\"other\"\n\"3164778\";\"Valmontone\";\"main\"\n\"3164778\";\"vu~arumontone\";\"other\"\n\"3164778\";\"ヴァルモントーネ\";\"other\"\n\"3164782\";\"Valmadrera\";\"main\"\n\"3164784\";\"Valmacca\";\"main\"\n\"3164794\";\"Vallo della Lucania\";\"main\"\n\"3164794\";\"Vallo di Lucania\";\"other\"\n\"3164804\";\"Valli del Pasubio\";\"main\"\n\"3164804\";\"Valli d'Pasubio\";\"other\"\n\"3164804\";\"Valli dei Signori\";\"other\"\n\"3164804\";\"Valli di Pasubio\";\"other\"\n\"3164821\";\"Valle San Nicolao\";\"main\"\n\"3164828\";\"Vallerotonda\";\"main\"\n\"3164833\";\"Vallerano\";\"main\"\n\"3164842\";\"Valle Mosso\";\"main\"\n\"3164845\";\"Vallemaio\";\"main\"\n\"3164845\";\"Vallefredda\";\"other\"\n\"3164850\";\"Valle Lomellina\";\"main\"\n\"3164853\";\"Valle di Maddaloni\";\"main\"\n\"3164862\";\"Vallecrosia\";\"main\"\n\"3164862\";\"Valecreusa\";\"other\"\n\"3164863\";\"Vallecorsa\";\"main\"\n\"3164868\";\"Valle Castellana\";\"main\"\n\"3164872\";\"Vallebona\";\"main\"\n\"3164872\";\"Valebona\";\"other\"\n\"3164872\";\"Valebòna\";\"other\"\n\"3164876\";\"Valle Agricola\";\"main\"\n\"3164895\";\"Vallata\";\"main\"\n\"3164911\";\"Valganna\";\"main\"\n\"3164912\";\"Valfurva\";\"main\"\n\"3164914\";\"Valfenera\";\"main\"\n\"3164915\";\"Valfabbrica\";\"main\"\n\"3164919\";\"Valenzano\";\"main\"\n\"3164920\";\"Valenza\";\"main\"\n\"3164920\";\"Valensa\";\"other\"\n\"3164920\";\"Валенса\";\"other\"\n\"3164923\";\"Valentano\";\"main\"\n\"3164923\";\"vu~arentano\";\"other\"\n\"3164923\";\"ヴァレンターノ\";\"other\"\n\"3164924\";\"Valeggio sul Mincio\";\"main\"\n\"3164924\";\"Valeggio\";\"other\"\n\"3164924\";\"ヴァレッジョ・スル・ミンチョ\";\"other\"\n\"3164927\";\"Valduggia\";\"main\"\n\"3164931\";\"Valdobbiadene\";\"main\"\n\"3164949\";\"Valdaora - Olang\";\"main\"\n\"3164949\";\"Valdaora di Sotto\";\"ascii\"\n\"3164949\";\"Aulacum\";\"other\"\n\"3164949\";\"Olang\";\"other\"\n\"3164949\";\"Valdaora\";\"other\"\n\"3164949\";\"Valdapra\";\"other\"\n\"3164949\";\"vu~arudaora\";\"other\"\n\"3164949\";\"ヴァルダーオラ\";\"other\"\n\"3164954\";\"Valdagno\";\"main\"\n\"3164960\";\"Valbondione\";\"main\"\n\"3164960\";\"Bondione\";\"other\"\n\"3164965\";\"Vairano Patenora\";\"main\"\n\"3164969\";\"Vajont\";\"main\"\n\"3164969\";\"Vaiont\";\"ascii\"\n\"3164970\";\"Vailate\";\"main\"\n\"3164971\";\"Vaiano Cremasco\";\"main\"\n\"3164973\";\"Vaiano\";\"main\"\n\"3164978\";\"Vaglio Basilicata\";\"main\"\n\"3164978\";\"Vaglio di Basilicata\";\"ascii\"\n\"3164978\";\"Vaglio Lucano\";\"other\"\n\"3164979\";\"Vagli Sotto\";\"main\"\n\"3164979\";\"Vagli di Sotto\";\"ascii\"\n\"3164982\";\"Vaglia\";\"main\"\n\"3164988\";\"Vado Ligure\";\"main\"\n\"3164988\";\"Vooe\";\"other\"\n\"3164988\";\"Voœ\";\"other\"\n\"3164988\";\"ヴァード・リーグレ\";\"other\"\n\"3164995\";\"Vacri\";\"main\"\n\"3165012\";\"Uzzano\";\"main\"\n\"3165018\";\"Usmate Velate\";\"main\"\n\"3165018\";\"Usmate\";\"other\"\n\"3165018\";\"ウズマーテ・ヴェラーテ\";\"other\"\n\"3165019\";\"Usini\";\"main\"\n\"3165024\";\"Uscio\";\"main\"\n\"3165024\";\"Aosci\";\"other\"\n\"3165024\";\"Usho\";\"other\"\n\"3165024\";\"Ушо\";\"other\"\n\"3165025\";\"Urzulei\";\"main\"\n\"3165025\";\"Ursulei\";\"other\"\n\"3165025\";\"Ursulèi\";\"other\"\n\"3165026\";\"Ururi\";\"main\"\n\"3165026\";\"Ruri\";\"other\"\n\"3165030\";\"Uri\";\"main\"\n\"3165031\";\"Urgnano\";\"main\"\n\"3165033\";\"Urbisaglia\";\"main\"\n\"3165033\";\"Urbisaglia Bonservizi\";\"other\"\n\"3165035\";\"Urbino\";\"main\"\n\"3165035\";\"Urbin\";\"other\"\n\"3165035\";\"Urbinu\";\"other\"\n\"3165035\";\"Urvinum Mataurense\";\"other\"\n\"3165035\";\"urubino\";\"other\"\n\"3165035\";\"Урбино\";\"other\"\n\"3165035\";\"אורבינו\";\"other\"\n\"3165035\";\"ウルビーノ\";\"other\"\n\"3165038\";\"Urbania\";\"main\"\n\"3165052\";\"Umbertide\";\"main\"\n\"3165063\";\"Uggiate-Trevano\";\"main\"\n\"3165063\";\"Uggiate\";\"ascii\"\n\"3165065\";\"Uggiano la Chiesa\";\"main\"\n\"3165065\";\"Uggiano\";\"other\"\n\"3165072\";\"Udine\";\"main\"\n\"3165072\";\"Udin\";\"other\"\n\"3165072\";\"Удине\";\"other\"\n\"3165083\";\"Tuscania\";\"main\"\n\"3165083\";\"to~usukania\";\"other\"\n\"3165083\";\"トゥスカーニア\";\"other\"\n\"3165084\";\"Tursi\";\"main\"\n\"3165090\";\"Turriaco\";\"main\"\n\"3165090\";\"Turiac\";\"other\"\n\"3165090\";\"Turiàc\";\"other\"\n\"3165094\";\"Turi\";\"main\"\n\"3165100\";\"Turbigo\";\"main\"\n\"3165100\";\"to~urubigo\";\"other\"\n\"3165100\";\"トゥルビーゴ\";\"other\"\n\"3165102\";\"Turano Lodigiano\";\"main\"\n\"3165102\";\"トゥラーノ・ロディジャーノ\";\"other\"\n\"3165106\";\"Tuoro sul Trasimeno\";\"main\"\n\"3165106\";\"Tuoro\";\"other\"\n\"3165115\";\"Tula\";\"main\"\n\"3165115\";\"to~ura\";\"other\"\n\"3165115\";\"トゥーラ\";\"other\"\n\"3165116\";\"Tuglie\";\"main\"\n\"3165120\";\"Tufino\";\"main\"\n\"3165120\";\"to~ufino\";\"other\"\n\"3165120\";\"トゥフィーノ\";\"other\"\n\"3165122\";\"Tuenno\";\"main\"\n\"3165122\";\"to~uen'no\";\"other\"\n\"3165122\";\"トゥエンノ\";\"other\"\n\"3165128\";\"Truccazzano\";\"main\"\n\"3165128\";\"Trucazzano\";\"other\"\n\"3165133\";\"Tronzano Vercellese\";\"main\"\n\"3165133\";\"Tronsan\";\"other\"\n\"3165133\";\"Tronzano\";\"other\"\n\"3165140\";\"Tromello\";\"main\"\n\"3165141\";\"Troia\";\"main\"\n\"3165141\";\"toroia\";\"other\"\n\"3165141\";\"トローイア\";\"other\"\n\"3165142\";\"Trofarello\";\"main\"\n\"3165142\";\"torofarerro\";\"other\"\n\"3165142\";\"トロファレッロ\";\"other\"\n\"3165151\";\"Trivignano Udinese\";\"main\"\n\"3165151\";\"Trivignan\";\"other\"\n\"3165151\";\"Trivignano\";\"other\"\n\"3165152\";\"Trivero\";\"main\"\n\"3165153\";\"Trivento\";\"main\"\n\"3165155\";\"Triuggio\";\"main\"\n\"3165155\";\"Triuecc\";\"other\"\n\"3165155\";\"Triücc\";\"other\"\n\"3165155\";\"toriujjo\";\"other\"\n\"3165155\";\"トリウッジョ\";\"other\"\n\"3165157\";\"Trissino\";\"main\"\n\"3165165\";\"Trino\";\"main\"\n\"3165165\";\"Trin\";\"other\"\n\"3165165\";\"torino\";\"other\"\n\"3165165\";\"トリノ\";\"other\"\n\"3165166\";\"Trinitapoli\";\"main\"\n\"3165167\";\"Trinità d'Agultu e Vignola\";\"main\"\n\"3165167\";\"Trinita d'Agultu\";\"ascii\"\n\"3165168\";\"Trinità\";\"main\"\n\"3165168\";\"Trinita\";\"ascii\"\n\"3165174\";\"Trigolo\";\"main\"\n\"3165178\";\"Triggiano\";\"main\"\n\"3165185\";\"Trieste\";\"main\"\n\"3165185\";\"Tergeste\";\"other\"\n\"3165185\";\"Terst\";\"other\"\n\"3165185\";\"Triest\";\"other\"\n\"3165185\";\"Triestas\";\"other\"\n\"3165185\";\"Triesti\";\"other\"\n\"3165185\";\"Triesto\";\"other\"\n\"3165185\";\"Trieszt\";\"other\"\n\"3165185\";\"Triëst\";\"other\"\n\"3165185\";\"Trst\";\"other\"\n\"3165185\";\"de li ya si te\";\"other\"\n\"3165185\";\"teulieseute\";\"other\"\n\"3165185\";\"toriesute\";\"other\"\n\"3165185\";\"tri'esta\";\"other\"\n\"3165185\";\"tryysty\";\"other\"\n\"3165185\";\"Триест\";\"other\"\n\"3165185\";\"Трст\";\"other\"\n\"3165185\";\"טריאסטה\";\"other\"\n\"3165185\";\"ترييستي\";\"other\"\n\"3165185\";\"ट्रिएस्ट\";\"other\"\n\"3165185\";\"トリエステ\";\"other\"\n\"3165185\";\"的里雅斯特\";\"other\"\n\"3165185\";\"트리에스테\";\"other\"\n\"3165188\";\"Triei\";\"main\"\n\"3165189\";\"Tricesimo\";\"main\"\n\"3165189\";\"Tresesin\";\"other\"\n\"3165191\";\"Tricarico\";\"main\"\n\"3165194\";\"Tribiano\";\"main\"\n\"3165194\";\"toribiano\";\"other\"\n\"3165194\";\"トリビアーノ\";\"other\"\n\"3165195\";\"Tribano\";\"main\"\n\"3165197\";\"Trezzo sull'Adda\";\"main\"\n\"3165197\";\"Treco sul'Ada\";\"other\"\n\"3165197\";\"Trezzo\";\"other\"\n\"3165197\";\"Tritium super Adduam\";\"other\"\n\"3165197\";\"Трецо сул'Ада\";\"other\"\n\"3165197\";\"トレッツォ・スッラッダ\";\"other\"\n\"3165198\";\"Trezzano sul Naviglio\";\"main\"\n\"3165198\";\"トレッツァーノ・スル・ナヴィーリオ\";\"other\"\n\"3165199\";\"Trezzano Rosa\";\"main\"\n\"3165199\";\"トレッツァーノ・ローザ\";\"other\"\n\"3165201\";\"Treviso\";\"main\"\n\"3165201\";\"Tarvisium\";\"other\"\n\"3165201\";\"Trevise\";\"other\"\n\"3165201\";\"Trevixo\";\"other\"\n\"3165201\";\"Trevizo\";\"other\"\n\"3165201\";\"Trévise\";\"other\"\n\"3165201\";\"torevu~izo\";\"other\"\n\"3165201\";\"trwwyzw\";\"other\"\n\"3165201\";\"Тревизо\";\"other\"\n\"3165201\";\"טרוויזו\";\"other\"\n\"3165201\";\"トレヴィーゾ\";\"other\"\n\"3165202\";\"Trevi nel Lazio\";\"main\"\n\"3165205\";\"Trevignano Romano\";\"main\"\n\"3165205\";\"Trevignano\";\"other\"\n\"3165206\";\"Trevignano\";\"main\"\n\"3165206\";\"Trevignano Veneto\";\"other\"\n\"3165207\";\"Treviglio\";\"main\"\n\"3165207\";\"Trevil'o\";\"other\"\n\"3165207\";\"Trevilio\";\"other\"\n\"3165207\";\"torevu~irio\";\"other\"\n\"3165207\";\"Тревильо\";\"other\"\n\"3165207\";\"トレヴィーリオ\";\"other\"\n\"3165208\";\"Trevico\";\"main\"\n\"3165209\";\"Trevi\";\"main\"\n\"3165210\";\"Trevenzuolo\";\"main\"\n\"3165217\";\"Tresnuraghes\";\"main\"\n\"3165217\";\"Tresnuraghea\";\"ascii\"\n\"3165222\";\"Tresigallo\";\"main\"\n\"3165225\";\"Trescore Cremasco\";\"main\"\n\"3165225\";\"Trescorre Cremasco\";\"other\"\n\"3165226\";\"Trescore Balneario\";\"main\"\n\"3165226\";\"Trescore\";\"other\"\n\"3165232\";\"Trequanda\";\"main\"\n\"3165232\";\"torekuanda\";\"other\"\n\"3165232\";\"トレクアンダ\";\"other\"\n\"3165233\";\"Trepuzzi\";\"main\"\n\"3165234\";\"Treppo Grande\";\"main\"\n\"3165234\";\"Trep Grant\";\"other\"\n\"3165240\";\"Trentola-Ducenta\";\"main\"\n\"3165240\";\"Trentola\";\"ascii\"\n\"3165240\";\"Tréntola-Ducenta\";\"other\"\n\"3165243\";\"Trento\";\"main\"\n\"3165243\";\"Trehnta\";\"other\"\n\"3165243\";\"Trent\";\"other\"\n\"3165243\";\"Trent/o\";\"other\"\n\"3165243\";\"Trente\";\"other\"\n\"3165243\";\"Trident\";\"other\"\n\"3165243\";\"Tridentum\";\"other\"\n\"3165243\";\"Trient\";\"other\"\n\"3165243\";\"Trydent\";\"other\"\n\"3165243\";\"Trénto\";\"other\"\n\"3165243\";\"torento\";\"other\"\n\"3165243\";\"Тренто\";\"other\"\n\"3165243\";\"Трэнта\";\"other\"\n\"3165243\";\"トレント\";\"other\"\n\"3165245\";\"Trentinara\";\"main\"\n\"3165252\";\"Tremezzo\";\"main\"\n\"3165252\";\"Tremezzina\";\"other\"\n\"3165261\";\"Treia\";\"main\"\n\"3165261\";\"Treja\";\"other\"\n\"3165262\";\"Tregnago\";\"main\"\n\"3165263\";\"Treglio\";\"main\"\n\"3165268\";\"Tredozio\";\"main\"\n\"3165273\";\"Trecenta\";\"main\"\n\"3165274\";\"Trecchina\";\"main\"\n\"3165275\";\"Trecate\";\"main\"\n\"3165276\";\"Trecasali\";\"main\"\n\"3165286\";\"Trebaseleghe\";\"main\"\n\"3165288\";\"Travo\";\"main\"\n\"3165290\";\"Travesio\";\"main\"\n\"3165290\";\"Traves\";\"other\"\n\"3165291\";\"Traversetolo\";\"main\"\n\"3165296\";\"Travedona-Monate\";\"main\"\n\"3165296\";\"Travedona\";\"ascii\"\n\"3165301\";\"Travagliato\";\"main\"\n\"3165313\";\"Trasaghis\";\"main\"\n\"3165314\";\"Trasacco\";\"main\"\n\"3165319\";\"Traona\";\"main\"\n\"3165321\";\"Transacqua\";\"main\"\n\"3165321\";\"toransakkua\";\"other\"\n\"3165321\";\"トランサックア\";\"other\"\n\"3165322\";\"Trani\";\"main\"\n\"3165322\";\"Turenum\";\"other\"\n\"3165322\";\"torani\";\"other\"\n\"3165322\";\"Трани\";\"other\"\n\"3165322\";\"トラーニ\";\"other\"\n\"3165323\";\"Trana\";\"main\"\n\"3165323\";\"Tran-a\";\"other\"\n\"3165323\";\"torana\";\"other\"\n\"3165323\";\"トラーナ\";\"other\"\n\"3165324\";\"Tramutola\";\"main\"\n\"3165327\";\"Tramonti\";\"main\"\n\"3165327\";\"Tramonte\";\"other\"\n\"3165327\";\"Трамонти\";\"other\"\n\"3165340\";\"Tradate\";\"main\"\n\"3165355\";\"Tossicia\";\"main\"\n\"3165356\";\"Toscolano-Maderno\";\"main\"\n\"3165356\";\"Toscolano\";\"ascii\"\n\"3165356\";\"Toscolano Maderno\";\"other\"\n\"3165363\";\"Torviscosa\";\"main\"\n\"3165363\";\"Tor di Zuin\";\"other\"\n\"3165365\";\"Tortoreto\";\"main\"\n\"3165370\";\"Tortona\";\"main\"\n\"3165370\";\"Тортона\";\"other\"\n\"3165381\";\"Torrita di Siena\";\"main\"\n\"3165381\";\"Torrita\";\"other\"\n\"3165381\";\"トッリータ・ディ・シエーナ\";\"other\"\n\"3165390\";\"Torrile\";\"main\"\n\"3165391\";\"Torri in Sabina\";\"main\"\n\"3165392\";\"Torriglia\";\"main\"\n\"3165392\";\"Torriggia\";\"other\"\n\"3165394\";\"Torri di Quartesolo\";\"main\"\n\"3165394\";\"Torri\";\"other\"\n\"3165395\";\"Torri del Benaco\";\"main\"\n\"3165395\";\"Torri\";\"other\"\n\"3165396\";\"Torricella Sicura\";\"main\"\n\"3165397\";\"Torricella Peligna\";\"main\"\n\"3165398\";\"Torricella in Sabina\";\"main\"\n\"3165398\";\"Torricella\";\"other\"\n\"3165398\";\"Torricella Sabina\";\"other\"\n\"3165403\";\"Torricella\";\"main\"\n\"3165404\";\"Torrice\";\"main\"\n\"3165406\";\"Torriana\";\"main\"\n\"3165412\";\"Torrevecchia Teatina\";\"main\"\n\"3165420\";\"Torre Santa Susanna\";\"main\"\n\"3165423\";\"Torre San Patrizio\";\"main\"\n\"3165427\";\"Torre Pellice\";\"main\"\n\"3165427\";\"トッレ・ペッリチェ\";\"other\"\n\"3165430\";\"Torre Orsaia\";\"main\"\n\"3165435\";\"Torremaggiore\";\"main\"\n\"3165435\";\"Torre Maggiore\";\"ascii\"\n\"3165436\";\"Torre Le Nocelle\";\"main\"\n\"3165436\";\"Torre le Nocelle\";\"ascii\"\n\"3165438\";\"Torreglia\";\"main\"\n\"3165446\";\"Torre d'Isola\";\"main\"\n\"3165448\";\"Torre di Mosto\";\"main\"\n\"3165448\";\"トッレ・ディ・モスト\";\"other\"\n\"3165452\";\"Torre de' Picenardi\";\"main\"\n\"3165453\";\"Torre de' Passeri\";\"main\"\n\"3165453\";\"Torre dei Passeri\";\"other\"\n\"3165456\";\"Torre del Greco\";\"main\"\n\"3165456\";\"Torre d''o Grieco\";\"other\"\n\"3165456\";\"Torre-del'-Greko\";\"other\"\n\"3165456\";\"Торре-дель-Греко\";\"other\"\n\"3165456\";\"トッレ・デル・グレーコ\";\"other\"\n\"3165461\";\"Torre de' Busi\";\"main\"\n\"3165461\";\"Torre de'Busi\";\"other\"\n\"3165462\";\"Torrecuso\";\"main\"\n\"3165470\";\"Torrebruna\";\"main\"\n\"3165471\";\"Torre Boldone\";\"main\"\n\"3165473\";\"Torrebelvicino\";\"main\"\n\"3165474\";\"Torreano\";\"main\"\n\"3165474\";\"Torean\";\"other\"\n\"3165475\";\"Torre Annunziata\";\"main\"\n\"3165475\";\"Torre Nunziata\";\"other\"\n\"3165475\";\"Torre-Annunciata\";\"other\"\n\"3165475\";\"Торре-Аннунциата\";\"other\"\n\"3165475\";\"トッレ・アンヌンツィアータ\";\"other\"\n\"3165485\";\"Torrazza Coste\";\"main\"\n\"3165488\";\"Torralba\";\"main\"\n\"3165490\";\"Torraca\";\"main\"\n\"3165492\";\"Torpè\";\"main\"\n\"3165492\";\"Torpe\";\"ascii\"\n\"3165495\";\"Toro\";\"main\"\n\"3165496\";\"Tornolo\";\"main\"\n\"3165498\";\"Torno\";\"main\"\n\"3165504\";\"Tornareccio\";\"main\"\n\"3165513\";\"Toritto\";\"main\"\n\"3165513\";\"toritto\";\"other\"\n\"3165513\";\"トリット\";\"other\"\n\"3165522\";\"Torino di Sangro\";\"main\"\n\"3165524\";\"Torino\";\"main\"\n\"3165524\";\"Julia Augusta Taurinorum\";\"other\"\n\"3165524\";\"Taurasia\";\"other\"\n\"3165524\";\"Taurinum\";\"other\"\n\"3165524\";\"Tori\";\"other\"\n\"3165524\";\"Torin\";\"other\"\n\"3165524\";\"Torinu\";\"other\"\n\"3165524\";\"Torí\";\"other\"\n\"3165524\";\"Turen\";\"other\"\n\"3165524\";\"Turijn\";\"other\"\n\"3165524\";\"Turim\";\"other\"\n\"3165524\";\"Turin\";\"other\"\n\"3165524\";\"Turin - Torino\";\"other\"\n\"3165524\";\"Turina\";\"other\"\n\"3165524\";\"Turinas\";\"other\"\n\"3165524\";\"Turino\";\"other\"\n\"3165524\";\"Turyn\";\"other\"\n\"3165524\";\"Turén\";\"other\"\n\"3165524\";\"Turín\";\"other\"\n\"3165524\";\"Turín - Torino\";\"other\"\n\"3165524\";\"Turīna\";\"other\"\n\"3165524\";\"Tórínó\";\"other\"\n\"3165524\";\"dou ling\";\"other\"\n\"3165524\";\"tolino\";\"other\"\n\"3165524\";\"torino\";\"other\"\n\"3165524\";\"twryn\";\"other\"\n\"3165524\";\"twrynw\";\"other\"\n\"3165524\";\"Торино\";\"other\"\n\"3165524\";\"Турин\";\"other\"\n\"3165524\";\"Турын\";\"other\"\n\"3165524\";\"Турін\";\"other\"\n\"3165524\";\"Թուրին\";\"other\"\n\"3165524\";\"טורינו\";\"other\"\n\"3165524\";\"تورينو\";\"other\"\n\"3165524\";\"تورین\";\"other\"\n\"3165524\";\"टोरीनो\";\"other\"\n\"3165524\";\"तोरिनो\";\"other\"\n\"3165524\";\"ტურინი\";\"other\"\n\"3165524\";\"トリノ\";\"other\"\n\"3165524\";\"都靈\";\"other\"\n\"3165524\";\"토리노\";\"other\"\n\"3165527\";\"Torgiano\";\"main\"\n\"3165530\";\"Torella dei Lombardi\";\"main\"\n\"3165530\";\"Torella de' Lombardi\";\"ascii\"\n\"3165535\";\"Torchiarolo\";\"main\"\n\"3165536\";\"Torchiara\";\"main\"\n\"3165542\";\"Torbole Casaglia\";\"main\"\n\"3165542\";\"Torbole\";\"ascii\"\n\"3165542\";\"Torborle\";\"other\"\n\"3165549\";\"Torano Nuovo\";\"main\"\n\"3165553\";\"Tora e Piccilli\";\"main\"\n\"3165553\";\"Tora\";\"ascii\"\n\"3165565\";\"Tonara\";\"main\"\n\"3165571\";\"Tonadico\";\"main\"\n\"3165571\";\"tonadiko\";\"other\"\n\"3165571\";\"トナディーコ\";\"other\"\n\"3165576\";\"Tombolo\";\"main\"\n\"3165576\";\"tonboro\";\"other\"\n\"3165576\";\"トンボロ\";\"other\"\n\"3165582\";\"Tolve\";\"main\"\n\"3165584\";\"Tolmezzo\";\"main\"\n\"3165584\";\"Tumiec\";\"other\"\n\"3165584\";\"Tumieç\";\"other\"\n\"3165585\";\"Tollo\";\"main\"\n\"3165587\";\"Tollegno\";\"main\"\n\"3165593\";\"Tolfa\";\"main\"\n\"3165593\";\"torufa\";\"other\"\n\"3165593\";\"トルファ\";\"other\"\n\"3165595\";\"Tolentino\";\"main\"\n\"3165601\";\"Toirano\";\"main\"\n\"3165601\";\"Toian\";\"other\"\n\"3165601\";\"Toiàn\";\"other\"\n\"3165612\";\"Todi\";\"main\"\n\"3165615\";\"Tocco da Casauria\";\"main\"\n\"3165615\";\"Tocco\";\"other\"\n\"3165615\";\"Tocco Casauria\";\"other\"\n\"3165616\";\"Tocco Caudio\";\"main\"\n\"3165621\";\"Toano\";\"main\"\n\"3165621\";\"Italia Toano\";\"other\"\n\"3165621\";\"Тоано\";\"other\"\n\"3165622\";\"Tizzano Val Parma\";\"main\"\n\"3165624\";\"Tivoli\";\"main\"\n\"3165624\";\"Tibur\";\"other\"\n\"3165624\";\"tivu~ori\";\"other\"\n\"3165624\";\"tybwly\";\"other\"\n\"3165624\";\"Тиволи\";\"other\"\n\"3165624\";\"טיבולי\";\"other\"\n\"3165624\";\"ティヴォリ\";\"other\"\n\"3165627\";\"Tito\";\"main\"\n\"3165633\";\"Tissi\";\"main\"\n\"3165639\";\"Tirrenia\";\"main\"\n\"3165639\";\"Tirren'ja\";\"other\"\n\"3165639\";\"Тирренья\";\"other\"\n\"3165647\";\"Tirano\";\"main\"\n\"3165647\";\"Tiranum\";\"other\"\n\"3165647\";\"tirano\";\"other\"\n\"3165647\";\"Тирано\";\"other\"\n\"3165649\";\"Tione di Trento\";\"main\"\n\"3165649\";\"Tione\";\"other\"\n\"3165649\";\"Tione in Giudicarie\";\"other\"\n\"3165649\";\"ティオーネ・ディ・トレント\";\"other\"\n\"3165683\";\"Ticineto\";\"main\"\n\"3165683\";\"Tisneis\";\"other\"\n\"3165683\";\"Tisnèis\";\"other\"\n\"3165697\";\"Thiesi\";\"main\"\n\"3165697\";\"Tiesi\";\"other\"\n\"3165698\";\"Thiene\";\"main\"\n\"3165698\";\"T'ene\";\"other\"\n\"3165698\";\"Тьене\";\"other\"\n\"3165699\";\"Tezze sul Brenta\";\"main\"\n\"3165699\";\"Tezze\";\"other\"\n\"3165728\";\"Tesimo - Tisens\";\"main\"\n\"3165728\";\"Tesimo\";\"ascii\"\n\"3165728\";\"Tisens\";\"other\"\n\"3165728\";\"tejimo\";\"other\"\n\"3165728\";\"テージモ\";\"other\"\n\"3165730\";\"Tesero\";\"main\"\n\"3165730\";\"tezero\";\"other\"\n\"3165730\";\"テーゼロ\";\"other\"\n\"3165737\";\"Terzigno\";\"main\"\n\"3165737\";\"terutsu~inyo\";\"other\"\n\"3165737\";\"テルツィーニョ\";\"other\"\n\"3165742\";\"Terricciola\";\"main\"\n\"3165747\";\"Terrazzo\";\"main\"\n\"3165751\";\"Terranuova Bracciolini\";\"main\"\n\"3165758\";\"Castrocaro Terme e Terra del Sole\";\"main\"\n\"3165758\";\"Terra del Sole\";\"ascii\"\n\"3165762\";\"Terracina\";\"main\"\n\"3165762\";\"Terrachina\";\"other\"\n\"3165762\";\"terrachina\";\"other\"\n\"3165762\";\"Террачина\";\"other\"\n\"3165762\";\"テッラチーナ\";\"other\"\n\"3165771\";\"Terni\";\"main\"\n\"3165771\";\"Interamna\";\"other\"\n\"3165771\";\"teruni\";\"other\"\n\"3165771\";\"Терни\";\"other\"\n\"3165771\";\"テルニ\";\"other\"\n\"3165772\";\"Ternate\";\"main\"\n\"3165773\";\"Termoli\";\"main\"\n\"3165773\";\"Термоли\";\"other\"\n\"3165783\";\"Termeno sulla strada del vino - Tramin an der Weinstrasse\";\"main\"\n\"3165783\";\"Termeno\";\"ascii\"\n\"3165783\";\"Tarmeno\";\"other\"\n\"3165783\";\"Tarmèno\";\"other\"\n\"3165783\";\"Tramin\";\"other\"\n\"3165783\";\"Tramín\";\"other\"\n\"3165788\";\"Terlizzi\";\"main\"\n\"3165788\";\"Terlicci\";\"other\"\n\"3165788\";\"Терлицци\";\"other\"\n\"3165789\";\"Terlano - Terlan\";\"main\"\n\"3165789\";\"Terlano\";\"ascii\"\n\"3165789\";\"Terlan\";\"other\"\n\"3165789\";\"terurano\";\"other\"\n\"3165789\";\"テルラーノ\";\"other\"\n\"3165790\";\"Terlago\";\"main\"\n\"3165790\";\"terurago\";\"other\"\n\"3165790\";\"テルラーゴ\";\"other\"\n\"3165793\";\"Terenzo\";\"main\"\n\"3165796\";\"Terento - Terenten\";\"main\"\n\"3165796\";\"Terento\";\"ascii\"\n\"3165796\";\"Terenten\";\"other\"\n\"3165796\";\"terento\";\"other\"\n\"3165796\";\"テレント\";\"other\"\n\"3165803\";\"Teramo\";\"main\"\n\"3165803\";\"Interamnium\";\"other\"\n\"3165803\";\"Téramo\";\"other\"\n\"3165803\";\"teramo\";\"other\"\n\"3165803\";\"Терамо\";\"other\"\n\"3165803\";\"テーラモ\";\"other\"\n\"3165807\";\"Teora\";\"main\"\n\"3165808\";\"Teor\";\"main\"\n\"3165808\";\"Teov\";\"other\"\n\"3165810\";\"Teolo\";\"main\"\n\"3165817\";\"Tenno\";\"main\"\n\"3165817\";\"ten'no\";\"other\"\n\"3165817\";\"テンノ\";\"other\"\n\"3165826\";\"Temù\";\"main\"\n\"3165826\";\"Temu\";\"ascii\"\n\"3165828\";\"Tempio Pausania\";\"main\"\n\"3165828\";\"Tempio Pausanija\";\"other\"\n\"3165828\";\"Tempiu\";\"other\"\n\"3165828\";\"Templum\";\"other\"\n\"3165828\";\"Tèmpiu\";\"other\"\n\"3165828\";\"Темпио Паусания\";\"other\"\n\"3165828\";\"テンピオ・パウザーニア\";\"other\"\n\"3165834\";\"Telve\";\"main\"\n\"3165834\";\"Telve Valsugana\";\"other\"\n\"3165834\";\"teruvu~e\";\"other\"\n\"3165834\";\"テルヴェ\";\"other\"\n\"3165835\";\"Telti\";\"main\"\n\"3165840\";\"Telgate\";\"main\"\n\"3165842\";\"Telese Terme\";\"main\"\n\"3165842\";\"Telese\";\"ascii\"\n\"3165847\";\"Teglio Veneto\";\"main\"\n\"3165847\";\"Tei\";\"other\"\n\"3165848\";\"Teglio\";\"main\"\n\"3165848\";\"Tel'o\";\"other\"\n\"3165848\";\"Тельо\";\"other\"\n\"3165851\";\"Teggiano\";\"main\"\n\"3165851\";\"Tegiano\";\"other\"\n\"3165856\";\"Teano\";\"main\"\n\"3165856\";\"teano\";\"other\"\n\"3165856\";\"Теано\";\"other\"\n\"3165862\";\"Tavullia\";\"main\"\n\"3165862\";\"Tomba di Pesaro\";\"other\"\n\"3165871\";\"Taviano\";\"main\"\n\"3165871\";\"Sambuca Pistoiese\";\"other\"\n\"3165873\";\"Tavernole sul Mella\";\"main\"\n\"3165873\";\"Tavernole\";\"other\"\n\"3165874\";\"Tavernola Bergamasca\";\"main\"\n\"3165874\";\"Tavernola\";\"other\"\n\"3165896\";\"Tavagnacco\";\"main\"\n\"3165896\";\"Tavagna\";\"other\"\n\"3165900\";\"Taurasi\";\"main\"\n\"3165901\";\"Taurano\";\"main\"\n\"3165904\";\"Tassullo\";\"main\"\n\"3165904\";\"tassurro\";\"other\"\n\"3165904\";\"タッスッロ\";\"other\"\n\"3165910\";\"Tarzo\";\"main\"\n\"3165910\";\"Larzo\";\"other\"\n\"3165912\";\"Tarvisio\";\"main\"\n\"3165912\";\"Tarvis\";\"other\"\n\"3165912\";\"trwwyzyw\";\"other\"\n\"3165912\";\"טרוויזיו\";\"other\"\n\"3165919\";\"Tarquinia\";\"main\"\n\"3165919\";\"Tarkvinii\";\"other\"\n\"3165919\";\"Tarquínia\";\"other\"\n\"3165919\";\"tarukuinia\";\"other\"\n\"3165919\";\"Тарквинии\";\"other\"\n\"3165919\";\"タルクイーニア\";\"other\"\n\"3165923\";\"Tarcento\";\"main\"\n\"3165923\";\"Tarcint\";\"other\"\n\"3165926\";\"Taranto\";\"main\"\n\"3165926\";\"Tarde\";\"other\"\n\"3165926\";\"Tarent\";\"other\"\n\"3165926\";\"Tarente\";\"other\"\n\"3165926\";\"Tarento\";\"other\"\n\"3165926\";\"Tarento - Taranto\";\"other\"\n\"3165926\";\"Tarentum\";\"other\"\n\"3165926\";\"Tàrent\";\"other\"\n\"3165926\";\"taranto\";\"other\"\n\"3165926\";\"tarantw\";\"other\"\n\"3165926\";\"Таранто\";\"other\"\n\"3165926\";\"تارانتو\";\"other\"\n\"3165926\";\"ტარანტო\";\"other\"\n\"3165926\";\"ターラント\";\"other\"\n\"3165928\";\"Tarantasca\";\"main\"\n\"3165930\";\"Tarano\";\"main\"\n\"3165959\";\"Talmassons\";\"main\"\n\"3165963\";\"Talla\";\"main\"\n\"3165969\";\"Talana\";\"main\"\n\"3165972\";\"Talamello\";\"main\"\n\"3165975\";\"Taino\";\"main\"\n\"3165978\";\"Taibon Agordino\";\"main\"\n\"3165978\";\"Taibon\";\"ascii\"\n\"3165981\";\"Taglio di Po\";\"main\"\n\"3165986\";\"Taglio\";\"main\"\n\"3165986\";\"Contarina-Taglio\";\"other\"\n\"3165986\";\"Contarina-Tàglio\";\"other\"\n\"3165986\";\"Porto Viro\";\"other\"\n\"3165986\";\"Taglio di Porto Viro\";\"other\"\n\"3165986\";\"Taglio-Contarina\";\"other\"\n\"3165991\";\"Tagliacozzo\";\"main\"\n\"3165993\";\"Taggia\";\"main\"\n\"3166006\";\"Suzzara\";\"main\"\n\"3166009\";\"Suvereto\";\"main\"\n\"3166009\";\"suvu~ereto\";\"other\"\n\"3166009\";\"スヴェレート\";\"other\"\n\"3166010\";\"Sutri\";\"main\"\n\"3166011\";\"Sustinente\";\"main\"\n\"3166013\";\"Susegana\";\"main\"\n\"3166018\";\"Susa\";\"main\"\n\"3166018\";\"Suse\";\"other\"\n\"3166018\";\"suza\";\"other\"\n\"3166018\";\"スーザ\";\"other\"\n\"3166021\";\"Surbo\";\"main\"\n\"3166022\";\"Surano\";\"main\"\n\"3166023\";\"Supino\";\"main\"\n\"3166024\";\"Supersano\";\"main\"\n\"3166029\";\"Suno\";\"main\"\n\"3166030\";\"Suni\";\"main\"\n\"3166031\";\"Summonte\";\"main\"\n\"3166032\";\"Sumirago\";\"main\"\n\"3166033\";\"Sulzano\";\"main\"\n\"3166034\";\"Sulmona\";\"main\"\n\"3166034\";\"Salmona\";\"other\"\n\"3166034\";\"Sulmo\";\"other\"\n\"3166034\";\"Сулмона\";\"other\"\n\"3166052\";\"Subiaco\";\"main\"\n\"3166052\";\"subiako\";\"other\"\n\"3166052\";\"スビアーコ\";\"other\"\n\"3166053\";\"Subbiano\";\"main\"\n\"3166056\";\"Sturno\";\"main\"\n\"3166079\";\"Stroppiana\";\"main\"\n\"3166083\";\"Stroncone\";\"main\"\n\"3166088\";\"Strona\";\"main\"\n\"3166091\";\"Strigno\";\"main\"\n\"3166091\";\"sutorinyo\";\"other\"\n\"3166091\";\"ストリーニョ\";\"other\"\n\"3166096\";\"Striano\";\"main\"\n\"3166096\";\"sutoriano\";\"other\"\n\"3166096\";\"ストリアーノ\";\"other\"\n\"3166097\";\"Strevi\";\"main\"\n\"3166101\";\"Stresa\";\"main\"\n\"3166101\";\"Stresa Borromeo\";\"other\"\n\"3166108\";\"Strangolagalli\";\"main\"\n\"3166110\";\"Strambino\";\"main\"\n\"3166110\";\"Strambin\";\"other\"\n\"3166110\";\"Strambino Romano\";\"other\"\n\"3166110\";\"sutoranbino\";\"other\"\n\"3166110\";\"ストランビーノ\";\"other\"\n\"3166114\";\"Stradella\";\"main\"\n\"3166114\";\"sutoraderra\";\"other\"\n\"3166114\";\"ストラデッラ\";\"other\"\n\"3166122\";\"Stra\";\"main\"\n\"3166123\";\"Storo\";\"main\"\n\"3166123\";\"sutoro\";\"other\"\n\"3166123\";\"ストーロ\";\"other\"\n\"3166124\";\"Stornarella\";\"main\"\n\"3166125\";\"Stornara\";\"main\"\n\"3166133\";\"Stio\";\"main\"\n\"3166134\";\"Stintino\";\"main\"\n\"3166134\";\"Istintino\";\"other\"\n\"3166135\";\"Stimigliano\";\"main\"\n\"3166135\";\"Stinugliano\";\"other\"\n\"3166141\";\"Stigliano\";\"main\"\n\"3166144\";\"Stienta\";\"main\"\n\"3166150\";\"Stia\";\"main\"\n\"3166151\";\"Stezzano\";\"main\"\n\"3166161\";\"Sternatia\";\"main\"\n\"3166161\";\"Starnaitta\";\"other\"\n\"3166161\";\"Starnaìtta\";\"other\"\n\"3166161\";\"Sternatìa\";\"other\"\n\"3166163\";\"Stenico\";\"main\"\n\"3166163\";\"suteniko\";\"other\"\n\"3166163\";\"ステーニコ\";\"other\"\n\"3166166\";\"Stelvio - Stilfs\";\"main\"\n\"3166166\";\"Stelvio\";\"ascii\"\n\"3166166\";\"Stilfs\";\"other\"\n\"3166166\";\"suteruvu~io\";\"other\"\n\"3166166\";\"ステルヴィオ\";\"other\"\n\"3166180\";\"Stazzema\";\"main\"\n\"3166182\";\"Stazzano\";\"main\"\n\"3166189\";\"Statte\";\"main\"\n\"3166193\";\"Staranzano\";\"main\"\n\"3166193\";\"Staranzan\";\"other\"\n\"3166194\";\"Stanghella\";\"main\"\n\"3166194\";\"Stranghella\";\"other\"\n\"3166205\";\"Stagno Lombardo\";\"main\"\n\"3166216\";\"Staffolo\";\"main\"\n\"3166216\";\"sutafforo\";\"other\"\n\"3166216\";\"スタッフォロ\";\"other\"\n\"3166224\";\"Squinzano\";\"main\"\n\"3166227\";\"Spresiano\";\"main\"\n\"3166228\";\"Spotorno\";\"main\"\n\"3166230\";\"Spormaggiore\";\"main\"\n\"3166230\";\"Spor\";\"other\"\n\"3166230\";\"suporumajjore\";\"other\"\n\"3166230\";\"スポルマッジョーレ\";\"other\"\n\"3166232\";\"Spongano\";\"main\"\n\"3166235\";\"Spoltore\";\"main\"\n\"3166236\";\"Spoleto\";\"main\"\n\"3166236\";\"Spolete\";\"other\"\n\"3166236\";\"Spoletium\";\"other\"\n\"3166236\";\"Spolète\";\"other\"\n\"3166236\";\"suporeto\";\"other\"\n\"3166236\";\"Сполето\";\"other\"\n\"3166236\";\"スポレート\";\"other\"\n\"3166238\";\"Spirano\";\"main\"\n\"3166240\";\"Spinoso\";\"main\"\n\"3166241\";\"Spino d'Adda\";\"main\"\n\"3166241\";\"Spino d'Ada\";\"other\"\n\"3166241\";\"Спино д'Ада\";\"other\"\n\"3166244\";\"Spinetoli\";\"main\"\n\"3166245\";\"Spinete\";\"main\"\n\"3166253\";\"Spinazzola\";\"main\"\n\"3166262\";\"Spilimbergo\";\"main\"\n\"3166262\";\"Spilimberc\";\"other\"\n\"3166263\";\"Spilamberto\";\"main\"\n\"3166264\";\"Spigno Saturnia\";\"main\"\n\"3166264\";\"Spigno\";\"other\"\n\"3166264\";\"スピーニョ・サトゥルニア\";\"other\"\n\"3166265\";\"Spigno Monferrato\";\"main\"\n\"3166265\";\"Spign\";\"other\"\n\"3166265\";\"Spigno\";\"other\"\n\"3166283\";\"Sperlonga\";\"main\"\n\"3166283\";\"superuronga\";\"other\"\n\"3166283\";\"スペルロンガ\";\"other\"\n\"3166287\";\"Spello\";\"main\"\n\"3166297\";\"Sparone\";\"main\"\n\"3166297\";\"Sparon\";\"other\"\n\"3166297\";\"suparone\";\"other\"\n\"3166297\";\"スパローネ\";\"other\"\n\"3166301\";\"Sparanise\";\"main\"\n\"3166318\";\"Sovicille\";\"main\"\n\"3166318\";\"sovu~ichirre\";\"other\"\n\"3166318\";\"ソヴィチッレ\";\"other\"\n\"3166321\";\"Sovere\";\"main\"\n\"3166330\";\"Sotto il Monte Giovanni XXIII\";\"main\"\n\"3166330\";\"Sotto il Monte\";\"ascii\"\n\"3166330\";\"Sotto il Monte Gioganni XX111\";\"other\"\n\"3166341\";\"Sossano\";\"main\"\n\"3166342\";\"Sospirolo\";\"main\"\n\"3166342\";\"Sospirold\";\"other\"\n\"3166343\";\"Sospiro\";\"main\"\n\"3166346\";\"Sorso\";\"main\"\n\"3166350\";\"Sorrento\";\"main\"\n\"3166350\";\"Sorrent\";\"other\"\n\"3166350\";\"Sorrente\";\"other\"\n\"3166350\";\"Surriento\";\"other\"\n\"3166350\";\"sorento\";\"other\"\n\"3166350\";\"swrntw\";\"other\"\n\"3166350\";\"Сорренто\";\"other\"\n\"3166350\";\"סורנטו\";\"other\"\n\"3166350\";\"सोरेन्टो\";\"other\"\n\"3166350\";\"ソレント\";\"other\"\n\"3166356\";\"Sorisole\";\"main\"\n\"3166357\";\"Soriano nel Cimino\";\"main\"\n\"3166359\";\"Sori\";\"main\"\n\"3166359\";\"Soei\";\"other\"\n\"3166359\";\"Söi\";\"other\"\n\"3166359\";\"sori\";\"other\"\n\"3166359\";\"Сори\";\"other\"\n\"3166359\";\"ソーリ\";\"other\"\n\"3166360\";\"Sorgono\";\"main\"\n\"3166365\";\"Soresina\";\"main\"\n\"3166368\";\"Sordevolo\";\"main\"\n\"3166374\";\"Sorbolo\";\"main\"\n\"3166385\";\"Sorano\";\"main\"\n\"3166386\";\"Soragna\";\"main\"\n\"3166387\";\"Sora\";\"main\"\n\"3166387\";\"sora\";\"other\"\n\"3166387\";\"Сора\";\"other\"\n\"3166387\";\"სორა\";\"other\"\n\"3166394\";\"Sonnino\";\"main\"\n\"3166394\";\"son'nino\";\"other\"\n\"3166394\";\"ソンニーノ\";\"other\"\n\"3166395\";\"Sonico\";\"main\"\n\"3166397\";\"Sondrio\";\"main\"\n\"3166397\";\"Sondri\";\"other\"\n\"3166397\";\"Sundrium\";\"other\"\n\"3166397\";\"sang zhi ao\";\"other\"\n\"3166397\";\"sondorio\";\"other\"\n\"3166397\";\"sundrium\";\"other\"\n\"3166397\";\"Сондрио\";\"other\"\n\"3166397\";\"ソンドリオ\";\"other\"\n\"3166397\";\"桑治奧\";\"other\"\n\"3166398\";\"Sondalo\";\"main\"\n\"3166398\";\"Сондало\";\"other\"\n\"3166399\";\"Soncino\";\"main\"\n\"3166399\";\"Sonchino\";\"other\"\n\"3166399\";\"Сончино\";\"other\"\n\"3166400\";\"Sona\";\"main\"\n\"3166400\";\"sona\";\"other\"\n\"3166400\";\"ソーナ\";\"other\"\n\"3166404\";\"Somma Vesuviana\";\"main\"\n\"3166404\";\"Somma\";\"other\"\n\"3166404\";\"ソンマ・ヴェズヴィアーナ\";\"other\"\n\"3166406\";\"Sommariva Perno\";\"main\"\n\"3166406\";\"Summariva Perno\";\"other\"\n\"3166407\";\"Sommariva del Bosco\";\"main\"\n\"3166407\";\"Somariva Bosch\";\"other\"\n\"3166407\";\"Somariva Bòsch\";\"other\"\n\"3166407\";\"Sommariva Bosco\";\"other\"\n\"3166409\";\"Somma Lombardo\";\"main\"\n\"3166409\";\"Somma\";\"other\"\n\"3166409\";\"ソンマ・ロンバルド\";\"other\"\n\"3166410\";\"Sommacampagna\";\"main\"\n\"3166410\";\"Sommacamagna\";\"other\"\n\"3166410\";\"sonmakanpanya\";\"other\"\n\"3166410\";\"ソンマカンパーニャ\";\"other\"\n\"3166413\";\"Solto Collina\";\"main\"\n\"3166413\";\"Solto\";\"ascii\"\n\"3166414\";\"Solopaca\";\"main\"\n\"3166420\";\"Solofra\";\"main\"\n\"3166424\";\"Solignano Nuovo\";\"main\"\n\"3166424\";\"Solignano\";\"other\"\n\"3166426\";\"Soliera\";\"main\"\n\"3166426\";\"soriera\";\"other\"\n\"3166426\";\"ソリエーラ\";\"other\"\n\"3166427\";\"Solferino\";\"main\"\n\"3166427\";\"Solférino\";\"other\"\n\"3166427\";\"Sulphurinum\";\"other\"\n\"3166427\";\"soruferino\";\"other\"\n\"3166427\";\"su fa li nuo\";\"other\"\n\"3166427\";\"ソルフェリーノ\";\"other\"\n\"3166427\";\"蘇法利諾\";\"other\"\n\"3166428\";\"Soleto\";\"main\"\n\"3166428\";\"Sulitu\";\"other\"\n\"3166429\";\"Solesino\";\"main\"\n\"3166430\";\"Solero\";\"main\"\n\"3166439\";\"Solbiate Olona\";\"main\"\n\"3166440\";\"Solbiate Arno\";\"main\"\n\"3166446\";\"Solarolo\";\"main\"\n\"3166446\";\"soraroro\";\"other\"\n\"3166446\";\"ソラローロ\";\"other\"\n\"3166448\";\"Solaro\";\"main\"\n\"3166448\";\"soraro\";\"other\"\n\"3166448\";\"ソラーロ\";\"other\"\n\"3166449\";\"Solaro\";\"main\"\n\"3166453\";\"Solagna\";\"main\"\n\"3166457\";\"Sogliano Cavour\";\"main\"\n\"3166458\";\"Sogliano al Rubicone\";\"main\"\n\"3166458\";\"Sogliano\";\"other\"\n\"3166468\";\"Soave\";\"main\"\n\"3166468\";\"soavu~e\";\"other\"\n\"3166468\";\"ソアーヴェ\";\"other\"\n\"3166474\";\"Sluderno - Schluderns\";\"main\"\n\"3166474\";\"Sluderno\";\"ascii\"\n\"3166474\";\"Schledurus\";\"other\"\n\"3166474\";\"Schluderns\";\"other\"\n\"3166474\";\"zuruderuno\";\"other\"\n\"3166474\";\"ズルデルノ\";\"other\"\n\"3166478\";\"Sizzano\";\"main\"\n\"3166479\";\"Siziano\";\"main\"\n\"3166490\";\"Sissa\";\"main\"\n\"3166497\";\"Siror\";\"main\"\n\"3166497\";\"shiroru\";\"other\"\n\"3166497\";\"シロール\";\"other\"\n\"3166498\";\"Sirolo\";\"main\"\n\"3166498\";\"shiroro\";\"other\"\n\"3166498\";\"シローロ\";\"other\"\n\"3166499\";\"Sirmione\";\"main\"\n\"3166499\";\"Sermione\";\"other\"\n\"3166499\";\"Сирмионе\";\"other\"\n\"3166501\";\"Sirignano\";\"main\"\n\"3166509\";\"Siniscola\";\"main\"\n\"3166513\";\"Sindia\";\"main\"\n\"3166516\";\"Sinalunga\";\"main\"\n\"3166520\";\"Silvi\";\"main\"\n\"3166520\";\"Silvi Paese\";\"ascii\"\n\"3166522\";\"Silvano d'Orba\";\"main\"\n\"3166522\";\"Silvano\";\"other\"\n\"3166531\";\"Siligo\";\"main\"\n\"3166532\";\"Silea\";\"main\"\n\"3166535\";\"Silanus\";\"main\"\n\"3166537\";\"Silandro - Schlanders\";\"main\"\n\"3166537\";\"Silandro\";\"ascii\"\n\"3166537\";\"Schlanders\";\"other\"\n\"3166537\";\"Schlånders\";\"other\"\n\"3166537\";\"shirandoro\";\"other\"\n\"3166537\";\"シランドロ\";\"other\"\n\"3166540\";\"Signa\";\"main\"\n\"3166541\";\"Sigillo\";\"main\"\n\"3166548\";\"Siena\";\"main\"\n\"3166548\";\"Saena Iulia\";\"other\"\n\"3166548\";\"Saena Julia\";\"other\"\n\"3166548\";\"Sena\";\"other\"\n\"3166548\";\"Sien-a\";\"other\"\n\"3166548\";\"Sienne\";\"other\"\n\"3166548\";\"Sieno\";\"other\"\n\"3166548\";\"Séna\";\"other\"\n\"3166548\";\"shiena\";\"other\"\n\"3166548\";\"siyena\";\"other\"\n\"3166548\";\"syynh\";\"other\"\n\"3166548\";\"Σιένα\";\"other\"\n\"3166548\";\"Сиена\";\"other\"\n\"3166548\";\"Сіена\";\"other\"\n\"3166548\";\"סיינה\";\"other\"\n\"3166548\";\"सियेना\";\"other\"\n\"3166548\";\"シエーナ\";\"other\"\n\"3166556\";\"Sicignano degli Alburni\";\"main\"\n\"3166561\";\"Siano\";\"main\"\n\"3166562\";\"Sgurgola\";\"main\"\n\"3166564\";\"Sgonico\";\"main\"\n\"3166564\";\"Zgonik\";\"other\"\n\"3166564\";\"zugoniko\";\"other\"\n\"3166564\";\"ズゴニーコ\";\"other\"\n\"3166571\";\"Sezze\";\"main\"\n\"3166571\";\"settsu~e\";\"other\"\n\"3166571\";\"セッツェ\";\"other\"\n\"3166574\";\"Seveso\";\"main\"\n\"3166574\";\"sevu~ezo\";\"other\"\n\"3166574\";\"セーヴェゾ\";\"other\"\n\"3166575\";\"Settimo Vittone\";\"main\"\n\"3166575\";\"Settimo Tavagnasco\";\"other\"\n\"3166575\";\"セッティモ・ヴィットーネ\";\"other\"\n\"3166576\";\"Settimo Torinese\";\"main\"\n\"3166576\";\"Seto\";\"other\"\n\"3166576\";\"Settimo\";\"other\"\n\"3166576\";\"セッティモ・トリネーゼ\";\"other\"\n\"3166595\";\"Sestri Levante\";\"main\"\n\"3166598\";\"Sesto San Giovanni\";\"main\"\n\"3166598\";\"Sesto\";\"other\"\n\"3166598\";\"セスト・サン・ジョヴァンニ\";\"other\"\n\"3166599\";\"Sestola\";\"main\"\n\"3166601\";\"Sesto Fiorentino\";\"main\"\n\"3166601\";\"Sesto\";\"other\"\n\"3166602\";\"Sesto ed Uniti\";\"main\"\n\"3166603\";\"Sesto Campano\";\"main\"\n\"3166604\";\"Sesto Calende\";\"main\"\n\"3166605\";\"Sesto al Reghena\";\"main\"\n\"3166605\";\"Sest\";\"other\"\n\"3166606\";\"Sesto - Sexten\";\"main\"\n\"3166606\";\"Sesto\";\"ascii\"\n\"3166606\";\"Sankt Veit\";\"other\"\n\"3166606\";\"Sexten\";\"other\"\n\"3166606\";\"sesuto\";\"other\"\n\"3166606\";\"セスト\";\"other\"\n\"3166607\";\"Sestino\";\"main\"\n\"3166608\";\"Sesta Godano\";\"main\"\n\"3166608\";\"A Sesta\";\"other\"\n\"3166613\";\"Sessa Cilento\";\"main\"\n\"3166614\";\"Sessa Aurunca\";\"main\"\n\"3166614\";\"Suessa\";\"other\"\n\"3166619\";\"Servigliano\";\"main\"\n\"3166623\";\"Serrone\";\"main\"\n\"3166633\";\"Serre\";\"main\"\n\"3166636\";\"Serravalle Sesia\";\"main\"\n\"3166637\";\"Serravalle Scrivia\";\"main\"\n\"3166637\";\"Serravalle Libarna\";\"other\"\n\"3166638\";\"Serravalle Pistoiese\";\"main\"\n\"3166639\";\"Serravalle di Chienti\";\"main\"\n\"3166653\";\"Serra Sant'Abbondio\";\"main\"\n\"3166655\";\"Serra San Quirico\";\"main\"\n\"3166655\";\"セッラ・サン・クイーリコ\";\"other\"\n\"3166656\";\"Serra Riccò\";\"main\"\n\"3166656\";\"Serra Ricco\";\"ascii\"\n\"3166656\";\"A Sǽra\";\"other\"\n\"3166656\";\"Serra Rocco\";\"other\"\n\"3166657\";\"Serrara Fontana\";\"main\"\n\"3166657\";\"セッラーラ・フォンターナ\";\"other\"\n\"3166665\";\"Serramazzoni\";\"main\"\n\"3166665\";\"Monfestino\";\"other\"\n\"3166665\";\"Monfestino in Serra Mazzoni\";\"other\"\n\"3166678\";\"Serra de' Conti\";\"main\"\n\"3166678\";\"Serra de'Conti\";\"other\"\n\"3166678\";\"セッラ・デ・コンティ\";\"other\"\n\"3166680\";\"Serracapriola\";\"main\"\n\"3166693\";\"Sernaglia della Battaglia\";\"main\"\n\"3166695\";\"Sermoneta\";\"main\"\n\"3166695\";\"serumoneta\";\"other\"\n\"3166695\";\"セルモネータ\";\"other\"\n\"3166697\";\"Sermide\";\"main\"\n\"3166697\";\"Сермиде\";\"other\"\n\"3166699\";\"Serle\";\"main\"\n\"3166699\";\"serure\";\"other\"\n\"3166699\";\"セルレ\";\"other\"\n\"3166702\";\"Serino\";\"main\"\n\"3166704\";\"Serina\";\"main\"\n\"3166706\";\"Seriate\";\"main\"\n\"3166706\";\"Сериате\";\"other\"\n\"3166708\";\"Sergnano\";\"main\"\n\"3166710\";\"Seren del Grappa\";\"main\"\n\"3166711\";\"Seregno\";\"main\"\n\"3166711\";\"Seregn\";\"other\"\n\"3166711\";\"Serègn\";\"other\"\n\"3166711\";\"serenyo\";\"other\"\n\"3166711\";\"セレーニョ\";\"other\"\n\"3166714\";\"Seravezza\";\"main\"\n\"3166718\";\"Sequals\";\"main\"\n\"3166718\";\"Secual\";\"other\"\n\"3166720\";\"Sepino\";\"main\"\n\"3166729\";\"Sennori\";\"main\"\n\"3166733\";\"Senna Lodigiana\";\"main\"\n\"3166733\";\"センナ・ロディジャーナ\";\"other\"\n\"3166737\";\"Senise\";\"main\"\n\"3166740\";\"Senigallia\";\"main\"\n\"3166740\";\"Senigallija\";\"other\"\n\"3166740\";\"senigarria\";\"other\"\n\"3166740\";\"Сенигаллия\";\"other\"\n\"3166740\";\"セニガッリア\";\"other\"\n\"3166741\";\"Seniga\";\"main\"\n\"3166741\";\"seniga\";\"other\"\n\"3166741\";\"セニーガ\";\"other\"\n\"3166746\";\"Seneghe\";\"main\"\n\"3166753\";\"Senago\";\"main\"\n\"3166763\";\"Selvino\";\"main\"\n\"3166766\";\"Selvazzano Dentro\";\"main\"\n\"3166777\";\"Selva dei Molini - Muehlwald\";\"main\"\n\"3166777\";\"Selva dei Molini\";\"ascii\"\n\"3166777\";\"Muehlwald\";\"other\"\n\"3166777\";\"Muhlwald\";\"other\"\n\"3166777\";\"Mühlwald\";\"other\"\n\"3166777\";\"セルヴァ・デイ・モリーニ\";\"other\"\n\"3166784\";\"Selva di Val Gardena - Wolkenstein in Groeden\";\"main\"\n\"3166784\";\"Selva\";\"ascii\"\n\"3166784\";\"Selva di Val Gardena\";\"other\"\n\"3166784\";\"Sëlva\";\"other\"\n\"3166784\";\"Wolkenstein\";\"other\"\n\"3166784\";\"Wolkenstein in Groeden\";\"other\"\n\"3166784\";\"Wolkenstein in Gröden\";\"other\"\n\"3166784\";\"セルヴァ・ディ・ヴァル・ガルデーナ\";\"other\"\n\"3166791\";\"Sellero\";\"main\"\n\"3166791\";\"Seilero\";\"other\"\n\"3166791\";\"serrero\";\"other\"\n\"3166791\";\"セッレロ\";\"other\"\n\"3166793\";\"Sellano\";\"main\"\n\"3166808\";\"Segrate\";\"main\"\n\"3166808\";\"segurate\";\"other\"\n\"3166808\";\"セグラーテ\";\"other\"\n\"3166813\";\"Segni\";\"main\"\n\"3166813\";\"Signia\";\"other\"\n\"3166813\";\"seni\";\"other\"\n\"3166813\";\"セーニ\";\"other\"\n\"3166821\";\"Sedrina\";\"main\"\n\"3166822\";\"Sedriano\";\"main\"\n\"3166822\";\"sedoriano\";\"other\"\n\"3166822\";\"セドリアーノ\";\"other\"\n\"3166824\";\"Sedini\";\"main\"\n\"3166825\";\"Sedilo\";\"main\"\n\"3166826\";\"Sedico\";\"main\"\n\"3166827\";\"Sedegliano\";\"main\"\n\"3166827\";\"Sedean\";\"other\"\n\"3166827\";\"Sedigliano\";\"other\"\n\"3166829\";\"Secugnago\";\"main\"\n\"3166829\";\"sekunyago\";\"other\"\n\"3166829\";\"セクニャーゴ\";\"other\"\n\"3166831\";\"Seclì\";\"main\"\n\"3166831\";\"Secli\";\"ascii\"\n\"3166856\";\"Scurcola Marsicana\";\"main\"\n\"3166866\";\"Scorzè\";\"main\"\n\"3166866\";\"Scorze\";\"ascii\"\n\"3166866\";\"sukorutsu~e\";\"other\"\n\"3166866\";\"スコルツェ\";\"other\"\n\"3166872\";\"Scorrano\";\"main\"\n\"3166878\";\"Scoppito\";\"main\"\n\"3166903\";\"Sciolze\";\"main\"\n\"3166903\";\"Siosse\";\"other\"\n\"3166903\";\"shorutsu~e\";\"other\"\n\"3166903\";\"ショルツェ\";\"other\"\n\"3166910\";\"Naz-Sciaves - Natz-Schabs\";\"main\"\n\"3166910\";\"Sciaves\";\"ascii\"\n\"3166910\";\"Natz-Schabs\";\"other\"\n\"3166910\";\"Naz-Sciaves\";\"other\"\n\"3166910\";\"Schabs\";\"other\"\n\"3166910\";\"natsu=shavu~esu\";\"other\"\n\"3166910\";\"ナツ＝シャーヴェス\";\"other\"\n\"3166917\";\"Schio\";\"main\"\n\"3166917\";\"Skio\";\"other\"\n\"3166917\";\"Скио\";\"other\"\n\"3166919\";\"Schilpario\";\"main\"\n\"3166929\";\"Schiavon\";\"main\"\n\"3166930\";\"Schiavi di Abruzzo\";\"main\"\n\"3166937\";\"Gazzada Schianno\";\"main\"\n\"3166937\";\"Schianno\";\"ascii\"\n\"3166942\";\"Scheggia e Pascelupo\";\"main\"\n\"3166942\";\"Scheggia\";\"ascii\"\n\"3166943\";\"Scerni\";\"main\"\n\"3166955\";\"Scarperia\";\"main\"\n\"3166958\";\"Scarnafigi\";\"main\"\n\"3166958\";\"Scarnafis\";\"other\"\n\"3166958\";\"Soarnafigi\";\"other\"\n\"3166962\";\"Scarlino\";\"main\"\n\"3166974\";\"Scanzano Jonico\";\"main\"\n\"3166974\";\"Scanzano\";\"ascii\"\n\"3166975\";\"Scansano\";\"main\"\n\"3166976\";\"Scano di Montiferro\";\"main\"\n\"3166976\";\"Scano Montiferro\";\"ascii\"\n\"3166979\";\"Scanno\";\"main\"\n\"3166983\";\"Scandriglia\";\"main\"\n\"3166986\";\"Scandolara Ravara\";\"main\"\n\"3166988\";\"Scandicci\";\"main\"\n\"3166988\";\"Scadicci\";\"other\"\n\"3166988\";\"Skandichchi\";\"other\"\n\"3166988\";\"Скандиччи\";\"other\"\n\"3166989\";\"Scandiano\";\"main\"\n\"3166993\";\"Scampitella\";\"main\"\n\"3166993\";\"Scampitelli\";\"other\"\n\"3166993\";\"Scampitello\";\"other\"\n\"3167000\";\"Scalenghe\";\"main\"\n\"3167000\";\"sukarenge\";\"other\"\n\"3167000\";\"スカレンゲ\";\"other\"\n\"3167009\";\"Scala\";\"main\"\n\"3167009\";\"Skala\";\"other\"\n\"3167009\";\"Скала\";\"other\"\n\"3167010\";\"Scafati\";\"main\"\n\"3167012\";\"Scafa\";\"main\"\n\"3167022\";\"Savona\";\"main\"\n\"3167022\";\"Sann-a\";\"other\"\n\"3167022\";\"Saona\";\"other\"\n\"3167022\";\"Savo\";\"other\"\n\"3167022\";\"Savo Oppidum Alpinum\";\"other\"\n\"3167022\";\"Savon-a\";\"other\"\n\"3167022\";\"Savone\";\"other\"\n\"3167022\";\"savu~ona\";\"other\"\n\"3167022\";\"Савона\";\"other\"\n\"3167022\";\"サヴォーナ\";\"other\"\n\"3167023\";\"Savoia di Lucania\";\"main\"\n\"3167024\";\"Savogna d’Isonzo\";\"main\"\n\"3167024\";\"Savogna d'Isonzo\";\"ascii\"\n\"3167024\";\"Savogne di Gurice\";\"other\"\n\"3167024\";\"Savogne di Gurize\";\"other\"\n\"3167025\";\"Saviore dell'Adamello\";\"main\"\n\"3167025\";\"Saviore\";\"other\"\n\"3167029\";\"Savigno\";\"main\"\n\"3167030\";\"Savignano sul Rubicone\";\"main\"\n\"3167030\";\"Savignano\";\"other\"\n\"3167030\";\"Savignano al Rubicone\";\"other\"\n\"3167030\";\"Savignano di Romagna\";\"other\"\n\"3167031\";\"Savignano sul Panaro\";\"main\"\n\"3167032\";\"Savignano Irpino\";\"main\"\n\"3167032\";\"Savignano di Puglia\";\"other\"\n\"3167034\";\"Savigliano\";\"main\"\n\"3167034\";\"Savian\";\"other\"\n\"3167035\";\"Saviano\";\"main\"\n\"3167035\";\"savu~iano\";\"other\"\n\"3167035\";\"サヴィアーノ\";\"other\"\n\"3167044\";\"Sava\";\"main\"\n\"3167052\";\"Satriano di Lucania\";\"main\"\n\"3167053\";\"Sassuolo\";\"main\"\n\"3167053\";\"Сассуоло\";\"other\"\n\"3167062\";\"Sasso Marconi\";\"main\"\n\"3167062\";\"Al Sas\";\"other\"\n\"3167062\";\"Al Sâs\";\"other\"\n\"3167062\";\"Praduro e Sasso\";\"other\"\n\"3167062\";\"Sasso\";\"other\"\n\"3167062\";\"Sasso Bolognese\";\"other\"\n\"3167068\";\"Sassoferrato\";\"main\"\n\"3167068\";\"sassoferrato\";\"other\"\n\"3167068\";\"サッソフェッラート\";\"other\"\n\"3167069\";\"Sassofeltrio\";\"main\"\n\"3167069\";\"Sasso Feltrio\";\"ascii\"\n\"3167073\";\"Sasso di Bordighera\";\"main\"\n\"3167074\";\"Sassocorvaro\";\"main\"\n\"3167092\";\"Sassello\";\"main\"\n\"3167092\";\"Sasce\";\"other\"\n\"3167092\";\"Sascê\";\"other\"\n\"3167096\";\"Sassari\";\"main\"\n\"3167096\";\"Sasser\";\"other\"\n\"3167096\";\"Sàsser\";\"other\"\n\"3167096\";\"Tatari\";\"other\"\n\"3167096\";\"Tathari\";\"other\"\n\"3167096\";\"Tattari\";\"other\"\n\"3167096\";\"Tàthari\";\"other\"\n\"3167096\";\"sasary\";\"other\"\n\"3167096\";\"sassari\";\"other\"\n\"3167096\";\"Сассари\";\"other\"\n\"3167096\";\"ساساري\";\"other\"\n\"3167096\";\"サッサリ\";\"other\"\n\"3167097\";\"Sassano\";\"main\"\n\"3167104\";\"Sarzana\";\"main\"\n\"3167105\";\"Sarule\";\"main\"\n\"3167108\";\"Sartirana Lomellina\";\"main\"\n\"3167108\";\"Sartirana\";\"other\"\n\"3167109\";\"Sarteano\";\"main\"\n\"3167109\";\"saruteano\";\"other\"\n\"3167109\";\"サルテアーノ\";\"other\"\n\"3167110\";\"Sarsina\";\"main\"\n\"3167110\";\"sarushina\";\"other\"\n\"3167110\";\"サルシナ\";\"other\"\n\"3167113\";\"Saronno\";\"main\"\n\"3167116\";\"Sarno\";\"main\"\n\"3167116\";\"Сарно\";\"other\"\n\"3167117\";\"Sarnico\";\"main\"\n\"3167119\";\"Sarnano\";\"main\"\n\"3167122\";\"Sarmede\";\"main\"\n\"3167124\";\"Sarmato\";\"main\"\n\"3167128\";\"Sarezzo\";\"main\"\n\"3167129\";\"Sarezzano\";\"main\"\n\"3167131\";\"Sarentino - Sarntal\";\"main\"\n\"3167131\";\"Sarentino\";\"ascii\"\n\"3167131\";\"Sarntal\";\"other\"\n\"3167131\";\"Sarnthein\";\"other\"\n\"3167131\";\"sarentino\";\"other\"\n\"3167131\";\"サレンティーノ\";\"other\"\n\"3167134\";\"Sardagna\";\"main\"\n\"3167135\";\"Sarconi\";\"main\"\n\"3167138\";\"Sarcedo\";\"main\"\n\"3167152\";\"Sapri\";\"main\"\n\"3167152\";\"Satri\";\"other\"\n\"3167152\";\"sapuri\";\"other\"\n\"3167152\";\"サプリ\";\"other\"\n\"3167153\";\"Sappada\";\"main\"\n\"3167153\";\"Sapade\";\"other\"\n\"3167160\";\"San Zenone al Lambro\";\"main\"\n\"3167160\";\"サン・ゼノーネ・アル・ランブロ\";\"other\"\n\"3167161\";\"San Zenone degli Ezzelini\";\"main\"\n\"3167161\";\"San Zenone\";\"ascii\"\n\"3167162\";\"San Zeno di Montagna\";\"main\"\n\"3167169\";\"Sanza\";\"main\"\n\"3167174\";\"San Vittore del Lazio\";\"main\"\n\"3167179\";\"San Vito Romano\";\"main\"\n\"3167179\";\"San Vito\";\"other\"\n\"3167179\";\"サン・ヴィート・ロマーノ\";\"other\"\n\"3167180\";\"San Vito di Leguzzano\";\"main\"\n\"3167181\";\"San Vito di Fagagna\";\"main\"\n\"3167181\";\"San Vit di Feagne\";\"other\"\n\"3167181\";\"Sant Vit di Feagne\";\"other\"\n\"3167181\";\"Sant Vît di Feagne\";\"other\"\n\"3167182\";\"San Vito di Cadore\";\"main\"\n\"3167182\";\"San Vito\";\"other\"\n\"3167182\";\"San Vito del Cadore\";\"other\"\n\"3167184\";\"San Vito dei Normanni\";\"main\"\n\"3167184\";\"San Vito de' Normanni\";\"other\"\n\"3167185\";\"San Vito Chietino\";\"main\"\n\"3167186\";\"San Vito al Tagliamento\";\"main\"\n\"3167186\";\"San Vit dal Tiliment\";\"other\"\n\"3167206\";\"San Vincenzo Valle Roveto\";\"main\"\n\"3167206\";\"San Vincenzo Nuovo\";\"ascii\"\n\"3167207\";\"San Vincenzo\";\"main\"\n\"3167207\";\"サン・ヴィンチェンツォ\";\"other\"\n\"3167212\";\"San Vero Milis\";\"main\"\n\"3167213\";\"San Vendemiano\";\"main\"\n\"3167215\";\"San Venanzo\";\"main\"\n\"3167219\";\"San Valentino Torio\";\"main\"\n\"3167220\";\"San Valentino in Abruzzo Citeriore\";\"main\"\n\"3167220\";\"San Valentino\";\"other\"\n\"3167220\";\"San Valentino d'Abruzzo\";\"other\"\n\"3167231\";\"Sant'Urbano\";\"main\"\n\"3167233\";\"Santu Lussurgiu\";\"main\"\n\"3167239\";\"Santo Stino di Livenza\";\"main\"\n\"3167239\";\"San Stin\";\"other\"\n\"3167239\";\"San Stino di Livenza\";\"other\"\n\"3167239\";\"Santo Stimo di Livenza\";\"other\"\n\"3167239\";\"Santo Stino\";\"other\"\n\"3167240\";\"Santo Stefano Ticino\";\"main\"\n\"3167240\";\"サント・ステーファノ・ティチーノ\";\"other\"\n\"3167243\";\"Santo Stefano di Magra\";\"main\"\n\"3167243\";\"Santo Stefano Magra\";\"other\"\n\"3167244\";\"Santo Stefano di Cadore\";\"main\"\n\"3167244\";\"San Stefano\";\"other\"\n\"3167244\";\"Santo Stephano di Cadore\";\"other\"\n\"3167244\";\"Santo Stéphano di Cadore\";\"other\"\n\"3167245\";\"Santo Stefano del Sole\";\"main\"\n\"3167248\";\"Santo Stefano d'Aveto\";\"main\"\n\"3167248\";\"San Steva d'Aveto\";\"other\"\n\"3167248\";\"San Steva d’Aveto\";\"other\"\n\"3167249\";\"Santo Stefano Belbo\";\"main\"\n\"3167249\";\"Santo Stefano\";\"other\"\n\"3167251\";\"Santo Stefano al Mare\";\"main\"\n\"3167251\";\"Riva Santo Stefano\";\"other\"\n\"3167251\";\"San Stefano al Mare\";\"other\"\n\"3167268\";\"Santorso\";\"main\"\n\"3167269\";\"Sant'Oreste\";\"main\"\n\"3167269\";\"Capena\";\"other\"\n\"3167269\";\"santoresute\";\"other\"\n\"3167269\";\"サントレステ\";\"other\"\n\"3167270\";\"Santopadre\";\"main\"\n\"3167270\";\"Santo Padre\";\"ascii\"\n\"3167281\";\"Sant'Omero\";\"main\"\n\"3167296\";\"Sant'Ippolito\";\"main\"\n\"3167304\";\"Sant'Ilario d'Enza\";\"main\"\n\"3167304\";\"Sant'Ilario\";\"other\"\n\"3167308\";\"Santi Cosma e Damiano\";\"main\"\n\"3167308\";\"Basilica dei Santi Cosma e Damiano\";\"other\"\n\"3167308\";\"Khram na Romul\";\"other\"\n\"3167308\";\"Kosmas- og Damiankirken\";\"other\"\n\"3167308\";\"Tempel van Romulus\";\"other\"\n\"3167308\";\"Храм на Ромул\";\"other\"\n\"3167314\";\"Santhià\";\"main\"\n\"3167314\";\"Santhia\";\"ascii\"\n\"3167318\";\"Sant'Eusanio del Sangro\";\"main\"\n\"3167327\";\"Santeramo in Colle\";\"main\"\n\"3167329\";\"San Teodoro\";\"main\"\n\"3167329\";\"San Teodoro d'Ovidde\";\"ascii\"\n\"3167329\";\"サン・テオドーロ\";\"other\"\n\"3167331\";\"Sante Marie\";\"main\"\n\"3167333\";\"Sant'Elpidio a Mare\";\"main\"\n\"3167333\";\"San Elpido a Mare\";\"other\"\n\"3167337\";\"Sant'Elia Fiumerapido\";\"main\"\n\"3167337\";\"San Elia Fiumerapido\";\"other\"\n\"3167337\";\"Sant'Elia\";\"other\"\n\"3167338\";\"Sant'Elia a Pianisi\";\"main\"\n\"3167345\";\"Sant'Elena\";\"main\"\n\"3167347\";\"Sant'Egidio alla Vibrata\";\"main\"\n\"3167350\";\"Santa Vittoria in Matenano\";\"main\"\n\"3167350\";\"San Vittoria\";\"other\"\n\"3167352\";\"Santa Vittoria d'Alba\";\"main\"\n\"3167357\";\"Santa Valpurga\";\"main\"\n\"3167357\";\"Sankt Walburg\";\"other\"\n\"3167357\";\"Santa Valburga in Ultimo\";\"other\"\n\"3167357\";\"Santa Valpurga d'Ultimo\";\"other\"\n\"3167357\";\"Santa Valpurga d’Ultimo\";\"other\"\n\"3167359\";\"Santa Teresa Gallura\";\"main\"\n\"3167359\";\"Santa Teresa\";\"other\"\n\"3167359\";\"サンタ・テレーザ・ガッルーラ\";\"other\"\n\"3167363\";\"Santa Sofia\";\"main\"\n\"3167367\";\"Sant'Arsenio\";\"main\"\n\"3167368\";\"Sant'Arpino\";\"main\"\n\"3167368\";\"S. Arpino\";\"other\"\n\"3167373\";\"Santarcangelo di Romagna\";\"main\"\n\"3167373\";\"Sant'Arcangelo di Romagna\";\"ascii\"\n\"3167373\";\"Santarcangelo\";\"other\"\n\"3167374\";\"Sant'Arcangelo\";\"main\"\n\"3167381\";\"Sant'Apollinare\";\"main\"\n\"3167383\";\"Santa Paolina\";\"main\"\n\"3167390\";\"Sant'Antonino di Susa\";\"main\"\n\"3167390\";\"Sant'Antonio di Susa\";\"ascii\"\n\"3167390\";\"Sant'Antonino\";\"other\"\n\"3167390\";\"サンタントニーノ・ディ・スーザ\";\"other\"\n\"3167393\";\"Sant'Antonio Abate\";\"main\"\n\"3167393\";\"サンタントーニオ・アバーテ\";\"other\"\n\"3167416\";\"Sant'Antonio di Gallura\";\"main\"\n\"3167416\";\"Sant'Antonio\";\"ascii\"\n\"3167416\";\"San Antonio\";\"other\"\n\"3167419\";\"Sant'Antimo\";\"main\"\n\"3167419\";\"santantimo\";\"other\"\n\"3167419\";\"サンタンティモ\";\"other\"\n\"3167424\";\"Sant'Anna d'Alfaedo\";\"main\"\n\"3167436\";\"Sant'Angelo Romano\";\"main\"\n\"3167436\";\"サンタンジェロ・ロマーノ\";\"other\"\n\"3167439\";\"Sant'Angelo Lodigiano\";\"main\"\n\"3167439\";\"サンタンジェロ・ロディジャーノ\";\"other\"\n\"3167441\";\"Sant'Angelo Le Fratte\";\"main\"\n\"3167441\";\"Sant'Angelo le Fratte\";\"ascii\"\n\"3167442\";\"Sant'Angelo in Vado\";\"main\"\n\"3167442\";\"San Angelo in Vado\";\"other\"\n\"3167444\";\"Sant'Angelo in Pontano\";\"main\"\n\"3167445\";\"Sant'Angelo in Lizzola\";\"main\"\n\"3167445\";\"San Angelo\";\"other\"\n\"3167448\";\"Sant’Angelo di Piove di Sacco\";\"main\"\n\"3167448\";\"Sant'Angelo di Piove di Sacco\";\"ascii\"\n\"3167450\";\"Sant'Angelo dei Lombardi\";\"main\"\n\"3167450\";\"Sant'Angelo de' Lombardi\";\"ascii\"\n\"3167451\";\"Sant'Angelo d'Alife\";\"main\"\n\"3167482\";\"Sant'Andrea di Conza\";\"main\"\n\"3167484\";\"Sant'Andrea del Garigliano\";\"main\"\n\"3167484\";\"Sant'Andrea\";\"other\"\n\"3167509\";\"Sant'Anastasia\";\"main\"\n\"3167509\";\"santanasutajia\";\"other\"\n\"3167509\";\"サンタナスタジーア\";\"other\"\n\"3167510\";\"San Tammaro\";\"main\"\n\"3167513\";\"Sant'Ambrogio di Valpolicella\";\"main\"\n\"3167513\";\"San Ambrogio di Valpolicella\";\"other\"\n\"3167513\";\"Sant'Ambrogio\";\"other\"\n\"3167514\";\"Sant'Ambrogio di Torino\";\"main\"\n\"3167514\";\"San Ambrogio di Torino\";\"other\"\n\"3167514\";\"Sant'Ambreus ed Turin\";\"other\"\n\"3167514\";\"Sant'Ambreus ëd Turin\";\"other\"\n\"3167514\";\"Sant'Ambrogio\";\"other\"\n\"3167514\";\"Sant’Ambreus ëd Turin\";\"other\"\n\"3167520\";\"Santa Marinella\";\"main\"\n\"3167520\";\"サンタ・マリネッラ\";\"other\"\n\"3167522\";\"Santa Marina\";\"main\"\n\"3167526\";\"Santa Maria Nuova\";\"main\"\n\"3167526\";\"サンタ・マリーア・ヌオーヴァ\";\"other\"\n\"3167528\";\"Santa Maria Maggiore\";\"main\"\n\"3167528\";\"サンタ・マリーア・マッジョーレ\";\"other\"\n\"3167530\";\"Santa Maria la Longa\";\"main\"\n\"3167530\";\"Sante Marie la Lungje\";\"other\"\n\"3167531\";\"Santa Maria la Fossa\";\"main\"\n\"3167531\";\"Santa Maria\";\"other\"\n\"3167539\";\"Santa Maria Imbaro\";\"main\"\n\"3167543\";\"Santa Maria di Sala\";\"main\"\n\"3167543\";\"サンタ・マリーア・ディ・サーラ\";\"other\"\n\"3167561\";\"Santa Maria Capua Vetere\";\"main\"\n\"3167562\";\"Santa Maria a Vico\";\"main\"\n\"3167567\";\"Santa Maria a Monte\";\"main\"\n\"3167591\";\"Santa Maria Coghinas\";\"main\"\n\"3167591\";\"Santa Maria\";\"ascii\"\n\"3167591\";\"Santa Maria Coghínas\";\"other\"\n\"3167595\";\"Santa Margherita Ligure\";\"main\"\n\"3167595\";\"Santa Margaita\";\"other\"\n\"3167595\";\"Santa Margherita\";\"other\"\n\"3167596\";\"Santa Margherita d'Adige\";\"main\"\n\"3167604\";\"Santa Lucia di Serino\";\"main\"\n\"3167604\";\"San Lucia\";\"other\"\n\"3167604\";\"San Lucia di Serino\";\"other\"\n\"3167619\";\"Santa Luce\";\"main\"\n\"3167619\";\"Santa Luce Orciano\";\"other\"\n\"3167625\";\"Sant'Albano Stura\";\"main\"\n\"3167629\";\"Sant'Agostino\";\"main\"\n\"3167629\";\"Sant' Agostino\";\"other\"\n\"3167629\";\"santagosutino\";\"other\"\n\"3167629\";\"サンタゴスティーノ\";\"other\"\n\"3167632\";\"Sant'Agnello\";\"main\"\n\"3167632\";\"Sant Agnello\";\"other\"\n\"3167632\";\"santanyerro\";\"other\"\n\"3167632\";\"サンタニェッロ\";\"other\"\n\"3167633\";\"Santa Giustina in Colle\";\"main\"\n\"3167634\";\"Santa Giustina\";\"main\"\n\"3167634\";\"Santa Giustina Bellunese\";\"other\"\n\"3167642\";\"Santa Giuletta\";\"main\"\n\"3167643\";\"Sant'Agata sul Santerno\";\"main\"\n\"3167643\";\"Sant'Agata\";\"other\"\n\"3167643\";\"サンタガータ・スル・サンテルノ\";\"other\"\n\"3167645\";\"Sant'Agata Feltria\";\"main\"\n\"3167646\";\"Sant'Agata di Puglia\";\"main\"\n\"3167646\";\"Sant'Agata\";\"other\"\n\"3167647\";\"Sant'Agata de' Goti\";\"main\"\n\"3167647\";\"Sant'Agata de'Goti\";\"other\"\n\"3167647\";\"Sant'Agata dei Goti\";\"other\"\n\"3167648\";\"Sant'Agata Bolognese\";\"main\"\n\"3167648\";\"Sant'Agata-Bolognese\";\"other\"\n\"3167648\";\"Sant'Egata\";\"other\"\n\"3167648\";\"Sant’Ègata\";\"other\"\n\"3167648\";\"サンターガタ・ボロニェーゼ\";\"other\"\n\"3167653\";\"Sant'Agapito\";\"main\"\n\"3167655\";\"Santa Fiora\";\"main\"\n\"3167658\";\"Santa Croce sull'Arno\";\"main\"\n\"3167658\";\"Santa Croce sull' Arno\";\"ascii\"\n\"3167660\";\"Santa Croce di Magliano\";\"main\"\n\"3167678\";\"Santa Cristina e Bissone\";\"main\"\n\"3167678\";\"San Cristina e Bissone\";\"other\"\n\"3167680\";\"Santa Cristina Valgardena - St. Christina in Groeden\";\"main\"\n\"3167680\";\"Santa Cristina\";\"ascii\"\n\"3167680\";\"Santa Cristina in Val Gardena\";\"other\"\n\"3167688\";\"Santa Cesarea Terme\";\"main\"\n\"3167688\";\"Santa Cesarea\";\"other\"\n\"3167688\";\"Terme di Santa Cesarea\";\"other\"\n\"3167708\";\"San Sossio Baronia\";\"main\"\n\"3167731\";\"San Severo\";\"main\"\n\"3167731\";\"サン・セヴェーロ\";\"other\"\n\"3167732\";\"San Severino Marche\";\"main\"\n\"3167733\";\"San Severino Lucano\";\"main\"\n\"3167733\";\"San Severino\";\"other\"\n\"3167736\";\"Sansepolcro\";\"main\"\n\"3167737\";\"San Secondo Parmense\";\"main\"\n\"3167742\";\"San Sebastiano al Vesuvio\";\"main\"\n\"3167751\";\"San Salvo\";\"main\"\n\"3167752\";\"San Salvatore Telesino\";\"main\"\n\"3167753\";\"San Salvatore Monferrato\";\"main\"\n\"3167759\";\"San Rufo\";\"main\"\n\"3167777\";\"San Remo\";\"main\"\n\"3167777\";\"San-Remo\";\"other\"\n\"3167777\";\"Sanremo\";\"other\"\n\"3167777\";\"Sanremu\";\"other\"\n\"3167777\";\"Villa Matutiae\";\"other\"\n\"3167777\";\"sanremo\";\"other\"\n\"3167777\";\"sn rmw\";\"other\"\n\"3167777\";\"Сан Ремо\";\"other\"\n\"3167777\";\"Сан-Ремо\";\"other\"\n\"3167777\";\"Санремо\";\"other\"\n\"3167777\";\"סן רמו\";\"other\"\n\"3167777\";\"サンレーモ\";\"other\"\n\"3167780\";\"San Quirino\";\"main\"\n\"3167780\";\"San Cuarin\";\"other\"\n\"3167783\";\"San Quirico d'Orcia\";\"main\"\n\"3167783\";\"サン・クイリーコ・ドルチャ\";\"other\"\n\"3167792\";\"San Prospero\";\"main\"\n\"3167793\";\"San Prisco\";\"main\"\n\"3167795\";\"San Potito Ultra\";\"main\"\n\"3167796\";\"San Potito Sannitico\";\"main\"\n\"3167800\";\"San Polo d'Enza\";\"main\"\n\"3167800\";\"San Polo d'Enza in Caviano\";\"ascii\"\n\"3167801\";\"San Polo dei Cavalieri\";\"main\"\n\"3167801\";\"San Polo de Cavalieri\";\"other\"\n\"3167801\";\"サン・ポーロ・ディ・カヴァリエーリ\";\"other\"\n\"3167810\";\"San Pietro Viminario\";\"main\"\n\"3167811\";\"San Pietro Vernotico\";\"main\"\n\"3167813\";\"San Pietro Mosezzo\";\"main\"\n\"3167818\";\"San Pietro in Lama\";\"main\"\n\"3167821\";\"San Pietro in Gu\";\"main\"\n\"3167823\";\"San Pietro Infine\";\"main\"\n\"3167823\";\"San Pietro\";\"other\"\n\"3167824\";\"San Pietro in Casale\";\"main\"\n\"3167830\";\"San Pietro di Feletto\";\"main\"\n\"3167833\";\"San Pietro di Cadore\";\"main\"\n\"3167833\";\"San Pietro\";\"other\"\n\"3167833\";\"San Pietro Cadore\";\"other\"\n\"3167836\";\"San Pietro al Tanagro\";\"main\"\n\"3167836\";\"San Pietro\";\"other\"\n\"3167837\";\"San Pietro al Natisone\";\"main\"\n\"3167837\";\"San Pieri dai Sclavons\";\"other\"\n\"3167837\";\"San Pietro\";\"other\"\n\"3167869\";\"San Piero a Sieve\";\"main\"\n\"3167871\";\"San Pier d'Isonzo\";\"main\"\n\"3167871\";\"San Pieri dai Sclas\";\"other\"\n\"3167871\";\"San Pieri dal Lusinc\";\"other\"\n\"3167871\";\"San Pieri dal Lusinç\";\"other\"\n\"3167875\";\"San Pellegrino Terme\";\"main\"\n\"3167875\";\"San Pellegrino\";\"other\"\n\"3167888\";\"San Paolo di Civitate\";\"main\"\n\"3167888\";\"San Paolo Civitate\";\"other\"\n\"3167889\";\"San Paolo Bel Sito\";\"main\"\n\"3167889\";\"サン・パオロ・ベル・シート\";\"other\"\n\"3167896\";\"San Paolo\";\"main\"\n\"3167896\";\"Pedergnaga Oriana\";\"other\"\n\"3167903\";\"San Pancrazio Salentino\";\"main\"\n\"3167903\";\"San Pancrazio\";\"other\"\n\"3167905\";\"San Pancrazio - St. Pankraz\";\"main\"\n\"3167905\";\"San Pancrazio d'Ultimo\";\"ascii\"\n\"3167905\";\"San Pancrazio\";\"other\"\n\"3167905\";\"Sankt Pankraz\";\"other\"\n\"3167905\";\"St. Pankraz\";\"other\"\n\"3167905\";\"サン・パンクラーツィオ\";\"other\"\n\"3167938\";\"Sannicola\";\"main\"\n\"3167938\";\"San Nicola di Gallipoli\";\"other\"\n\"3167940\";\"San Nicandro Garganico\";\"main\"\n\"3167940\";\"Sannicandro Garganico\";\"ascii\"\n\"3167941\";\"Sannicandro di Bari\";\"main\"\n\"3167941\";\"San Nicandro\";\"other\"\n\"3167945\";\"Sannazzaro de' Burgondi\";\"main\"\n\"3167945\";\"Sannazzara de' Burgondi\";\"other\"\n\"3167949\";\"San Nazario\";\"main\"\n\"3167954\";\"San Miniato\";\"main\"\n\"3167954\";\"San Miniato Basso\";\"other\"\n\"3167954\";\"San Miniatu\";\"other\"\n\"3167954\";\"サン・ミニアート\";\"other\"\n\"3167955\";\"San Michele Salentino\";\"main\"\n\"3167957\";\"San Michele Mondovì\";\"main\"\n\"3167957\";\"San Michele Mondovi\";\"ascii\"\n\"3167957\";\"San Michele\";\"other\"\n\"3167960\";\"San Michele di Serino\";\"main\"\n\"3167962\";\"San Michele al Tagliamento\";\"main\"\n\"3167962\";\"Saint Michael\";\"other\"\n\"3167962\";\"San Micele al Tagliamento\";\"other\"\n\"3167962\";\"San Michel dal Tiliment\";\"other\"\n\"3167962\";\"San Michele\";\"other\"\n\"3167963\";\"San Michele all'Adige\";\"main\"\n\"3167963\";\"San Michele\";\"other\"\n\"3167963\";\"サン・ミケーレ・アッラーディジェ\";\"other\"\n\"3167978\";\"San Mauro Torinese\";\"main\"\n\"3167978\";\"San Mo\";\"other\"\n\"3167978\";\"San Mò\";\"other\"\n\"3167978\";\"サン・マウロ・トリネーゼ\";\"other\"\n\"3167979\";\"San Mauro Pascoli\";\"main\"\n\"3167979\";\"San Mauro\";\"other\"\n\"3167979\";\"San Mauro di Romagna\";\"other\"\n\"3167981\";\"San Mauro Forte\";\"main\"\n\"3167983\";\"San Mauro Cilento\";\"main\"\n\"3167989\";\"San Maurizio d'Opaglio\";\"main\"\n\"3167990\";\"San Maurizio Canavese\";\"main\"\n\"3167990\";\"San Morizio Canavese\";\"other\"\n\"3167990\";\"サン・マウリーツィオ・カナヴェーゼ\";\"other\"\n\"3167996\";\"San Marzano sul Sarno\";\"main\"\n\"3167997\";\"San Marzano di San Giuseppe\";\"main\"\n\"3167997\";\"Shen Marcani\";\"other\"\n\"3167998\";\"San Martino Valle Caudina\";\"main\"\n\"3167998\";\"San Martino\";\"other\"\n\"3168000\";\"San Martino Siccomario\";\"main\"\n\"3168001\";\"San Martino Sannita\";\"main\"\n\"3168007\";\"San Martino in Rio\";\"main\"\n\"3168008\";\"San Martino in Pensilis\";\"main\"\n\"3168017\";\"San Martino di Venezze\";\"main\"\n\"3168017\";\"San Martino\";\"other\"\n\"3168018\";\"San Martino di Lupari\";\"main\"\n\"3168027\";\"San Martino dall'Argine\";\"main\"\n\"3168027\";\"San Martino dall' Argine\";\"ascii\"\n\"3168027\";\"San Martino\";\"other\"\n\"3168027\";\"San Martino dell'Argine\";\"other\"\n\"3168030\";\"San Martino Buon Albergo\";\"main\"\n\"3168043\";\"San Martino in Passiria - St. Martin in Passeier\";\"main\"\n\"3168043\";\"San Martino\";\"ascii\"\n\"3168073\";\"San Marco la Catola\";\"main\"\n\"3168075\";\"San Marco in Lamis\";\"main\"\n\"3168076\";\"San Marco Evangelista\";\"main\"\n\"3168077\";\"San Marco dei Cavoti\";\"main\"\n\"3168077\";\"San Marco de' Cavoti\";\"other\"\n\"3168093\";\"San Marcello Pistoiese\";\"main\"\n\"3168093\";\"San Marcello\";\"other\"\n\"3168094\";\"San Marcello\";\"main\"\n\"3168094\";\"サン・マルチェッロ\";\"other\"\n\"3168096\";\"San Mango sul Calore\";\"main\"\n\"3168097\";\"San Mango Piemonte\";\"main\"\n\"3168109\";\"San Lorenzo Nuovo\";\"main\"\n\"3168110\";\"San Lorenzo Maggiore\";\"main\"\n\"3168113\";\"San Lorenzo in Campo\";\"main\"\n\"3168114\";\"San Lorenzo di Sebato - St. Lorenzen\";\"main\"\n\"3168114\";\"San Lorenzo di Sebato\";\"ascii\"\n\"3168114\";\"Sankt Lorenzen\";\"other\"\n\"3168114\";\"Sebatum\";\"other\"\n\"3168114\";\"St. Lorenzen\";\"other\"\n\"3168114\";\"サン・ロレンツォ・ディ・セバート\";\"other\"\n\"3168117\";\"San Lorenzo al Mare\";\"main\"\n\"3168152\";\"San Lorenzello\";\"main\"\n\"3168157\";\"San Leucio del Sannio\";\"main\"\n\"3168160\";\"San Leonardo in Passiria - St. Leonhard in Passeier\";\"main\"\n\"3168160\";\"San Leonardo in Passiria\";\"ascii\"\n\"3168160\";\"Sankt Leonhard\";\"other\"\n\"3168160\";\"Sankt Leonhard in Passeier\";\"other\"\n\"3168160\";\"St. Leonhard in Passeier\";\"other\"\n\"3168160\";\"サン・レオナルド・イン・パッシーリア\";\"other\"\n\"3168166\";\"San Leonardo\";\"main\"\n\"3168166\";\"Sant Lenart\";\"other\"\n\"3168173\";\"San Leo\";\"main\"\n\"3168175\";\"San Lazzaro di Savena\";\"main\"\n\"3168182\";\"Sanguinetto\";\"main\"\n\"3168189\";\"San Gregorio Magno\";\"main\"\n\"3168190\";\"San Gregorio da Sassola\";\"main\"\n\"3168190\";\"San Gregorio\";\"other\"\n\"3168190\";\"サン・グレゴーリオ・ダ・サッソラ\";\"other\"\n\"3168196\";\"San Gregorio Matese\";\"main\"\n\"3168196\";\"San Gregorio\";\"ascii\"\n\"3168200\";\"San Godenzo\";\"main\"\n\"3168201\";\"San Giusto Canavese\";\"main\"\n\"3168201\";\"San Giusto\";\"other\"\n\"3168201\";\"サン・ジュスト・カナヴェーゼ\";\"other\"\n\"3168207\";\"San Giustino\";\"main\"\n\"3168207\";\"San Giustino Umbro\";\"other\"\n\"3168209\";\"San Giuseppe Vesuviano\";\"main\"\n\"3168209\";\"San Giuseppe\";\"other\"\n\"3168209\";\"サン・ジュゼッペ・ヴェズヴィアーノ\";\"other\"\n\"3168221\";\"San Giuliano Terme\";\"main\"\n\"3168221\";\"Bagni San Giuliano\";\"other\"\n\"3168221\";\"Bagni di Pisa\";\"other\"\n\"3168221\";\"Bagni di San Giuliano\";\"other\"\n\"3168222\";\"San Giuliano Milanese\";\"main\"\n\"3168222\";\"San Giuliano\";\"other\"\n\"3168222\";\"サン・ジュリアーノ・ミラネーゼ\";\"other\"\n\"3168223\";\"San Giuliano di Puglia\";\"main\"\n\"3168224\";\"San Giuliano del Sannio\";\"main\"\n\"3168231\";\"San Giovanni Valdarno\";\"main\"\n\"3168231\";\"S. Giovanni Valdarno\";\"other\"\n\"3168231\";\"サン・ジョヴァンニ・ヴァルダルノ\";\"other\"\n\"3168234\";\"San Giovanni Rotondo\";\"main\"\n\"3168234\";\"Giovanni Rotondo\";\"other\"\n\"3168236\";\"San Giovanni Lupatoto\";\"main\"\n\"3168236\";\"Lupatoto\";\"other\"\n\"3168239\";\"San Giovanni in Persiceto\";\"main\"\n\"3168239\";\"Persiceto\";\"other\"\n\"3168240\";\"San Giovanni in Marignano\";\"main\"\n\"3168240\";\"San Giovanni\";\"other\"\n\"3168240\";\"San Giovanni in Marianano\";\"other\"\n\"3168242\";\"San Giovanni in Croce\";\"main\"\n\"3168243\";\"San Giovanni Incarico\";\"main\"\n\"3168245\";\"San Giovanni Ilarione\";\"main\"\n\"3168253\";\"San Giovanni del Dosso\";\"main\"\n\"3168253\";\"San Giovanni\";\"other\"\n\"3168255\";\"San Giovanni Bianco\";\"main\"\n\"3168258\";\"San Giovanni a Piro\";\"main\"\n\"3168259\";\"San Giovanni al Natisone\";\"main\"\n\"3168259\";\"San Giovanni di Manzano\";\"other\"\n\"3168259\";\"San Giovanni di Mauzano\";\"other\"\n\"3168259\";\"San Zuan dal Nadison\";\"other\"\n\"3168259\";\"Sant Zuan dal Nadison\";\"other\"\n\"3168259\";\"サン・ジョヴァンニ・アル・ナティゾーネ\";\"other\"\n\"3168289\";\"San Giorgio Piacentino\";\"main\"\n\"3168289\";\"San Giorgio\";\"other\"\n\"3168293\";\"San Giorgio Lucano\";\"main\"\n\"3168294\";\"San Giorgio la Molara\";\"main\"\n\"3168295\";\"San Giorgio Ionico\";\"main\"\n\"3168295\";\"San Giorgio Jonico\";\"other\"\n\"3168295\";\"San Giorgio sotto Taranto\";\"other\"\n\"3168298\";\"San Giorgio in Bosco\";\"main\"\n\"3168298\";\"San Giorgio\";\"other\"\n\"3168300\";\"San Giorgio di Piano\";\"main\"\n\"3168301\";\"San Giorgio di Pesaro\";\"main\"\n\"3168302\";\"San Giorgio di Nogaro\";\"main\"\n\"3168302\";\"San Zorc di Nuiar\";\"other\"\n\"3168302\";\"Sant Zorc di Noiar\";\"other\"\n\"3168302\";\"Sant Zorç di Noiâr\";\"other\"\n\"3168303\";\"San Giorgio di Lomellina\";\"main\"\n\"3168303\";\"San Giorgio\";\"other\"\n\"3168303\";\"San Giorgio Lomellina\";\"other\"\n\"3168305\";\"San Giorgio del Sannio\";\"main\"\n\"3168305\";\"San Giorgio Montagna\";\"other\"\n\"3168306\";\"San Giorgio della Richinvelda\";\"main\"\n\"3168306\";\"San Zorc de Richinvelde\";\"other\"\n\"3168307\";\"San Giorgio Canavese\";\"main\"\n\"3168307\";\"San Giorgio\";\"other\"\n\"3168307\";\"San Giors Canaveis\";\"other\"\n\"3168307\";\"San Giòrs Canavèis\";\"other\"\n\"3168307\";\"サン・ジョルジョ・カナヴェーゼ\";\"other\"\n\"3168308\";\"San Giorgio a Liri\";\"main\"\n\"3168308\";\"San Giorgio\";\"other\"\n\"3168309\";\"San Giorgio a Cremano\";\"main\"\n\"3168309\";\"サン・ジョルジョ・ア・クレマーノ\";\"other\"\n\"3168318\";\"San Ginesio\";\"main\"\n\"3168320\";\"San Gimignano\";\"main\"\n\"3168320\";\"סן ג'ימיניאנו\";\"other\"\n\"3168320\";\"サン・ジミニャーノ\";\"other\"\n\"3168321\";\"San Gillio\";\"main\"\n\"3168321\";\"サン・ジッリオ\";\"other\"\n\"3168322\";\"San Giacomo Val di Vizze\";\"main\"\n\"3168322\";\"San Giacomo\";\"other\"\n\"3168322\";\"San Giácomo\";\"other\"\n\"3168322\";\"Sankt Jakob\";\"other\"\n\"3168326\";\"San Giacomo delle Segnate\";\"main\"\n\"3168328\";\"San Giacomo degli Schiavoni\";\"main\"\n\"3168338\";\"San Gervasio Bresciano\";\"main\"\n\"3168339\";\"San Germano Vercellese\";\"main\"\n\"3168339\";\"San Germano\";\"other\"\n\"3168341\";\"San Gennaro Vesuviano\";\"main\"\n\"3168341\";\"サン・ジェンナーロ・ヴェズヴィアーノ\";\"other\"\n\"3168344\";\"San Genesio ed Uniti\";\"main\"\n\"3168345\";\"San Genesio Atesino - Jenesien\";\"main\"\n\"3168345\";\"San Genesio Atesino\";\"ascii\"\n\"3168345\";\"Jenesien\";\"other\"\n\"3168345\";\"San Genesio\";\"other\"\n\"3168345\";\"サン・ジェネージオ・アテジーノ\";\"other\"\n\"3168348\";\"San Gemini\";\"main\"\n\"3168350\";\"Sangano\";\"main\"\n\"3168350\";\"Sangan\";\"other\"\n\"3168357\";\"Sanfront\";\"main\"\n\"3168358\";\"Sanfrè\";\"main\"\n\"3168358\";\"Sanfre\";\"ascii\"\n\"3168361\";\"Aglientu\";\"main\"\n\"3168361\";\"San Franciscu d'Aglientu\";\"ascii\"\n\"3168361\";\"Santo Franciscu di l'Aglientu\";\"other\"\n\"3168362\";\"San Francesco al Campo\";\"main\"\n\"3168362\";\"San Fransesch\";\"other\"\n\"3168362\";\"サン・フランチェスコ・アル・カンポ\";\"other\"\n\"3168381\";\"San Fior\";\"main\"\n\"3168381\";\"San Fior di Sopra\";\"ascii\"\n\"3168382\";\"San Fiorano\";\"main\"\n\"3168382\";\"サン・フィオラーノ\";\"other\"\n\"3168388\";\"San Ferdinando di Puglia\";\"main\"\n\"3168389\";\"San Felice sul Panaro\";\"main\"\n\"3168389\";\"San Felice\";\"other\"\n\"3168392\";\"San Felice del Benaco\";\"main\"\n\"3168392\";\"San Felice\";\"other\"\n\"3168392\";\"San Felice di Scovolo\";\"other\"\n\"3168393\";\"San Felice Circeo\";\"main\"\n\"3168393\";\"サン・フェリーチェ・チルチェーオ\";\"other\"\n\"3168399\";\"San Fele\";\"main\"\n\"3168400\";\"San Fedele Superiore\";\"main\"\n\"3168400\";\"San Fedele Intelvi di sopra\";\"other\"\n\"3168407\";\"Sandrigo\";\"main\"\n\"3168408\";\"San Dorligo della Valle\";\"main\"\n\"3168408\";\"Dol-Ottelza\";\"other\"\n\"3168408\";\"Dolina\";\"other\"\n\"3168408\";\"サン・ドルリーゴ・デッラ・ヴァッレ\";\"other\"\n\"3168413\";\"San Donato Val di Comino\";\"main\"\n\"3168414\";\"San Donato Milanese\";\"main\"\n\"3168414\";\"サン・ドナート・ミラネーゼ\";\"other\"\n\"3168418\";\"San Donato di Lecce\";\"main\"\n\"3168429\";\"San Donà di Piave\";\"main\"\n\"3168429\";\"San Dona di Piave\";\"ascii\"\n\"3168429\";\"サン・ドナ・ディ・ピアーヴェ\";\"other\"\n\"3168430\";\"San Donaci\";\"main\"\n\"3168435\";\"Sandigliano\";\"main\"\n\"3168435\";\"Sandighano\";\"other\"\n\"3168437\";\"San Demetrio ne' Vestini\";\"main\"\n\"3168437\";\"San Demetrio nei Vestini\";\"other\"\n\"3168438\";\"San Daniele del Friuli\";\"main\"\n\"3168438\";\"San Daniele\";\"other\"\n\"3168438\";\"San Denel\";\"other\"\n\"3168438\";\"Sant Denel\";\"other\"\n\"3168438\";\"Sant Denêl\";\"other\"\n\"3168440\";\"San Damiano d'Asti\";\"main\"\n\"3168440\";\"San Damian\";\"other\"\n\"3168440\";\"San Damiano\";\"other\"\n\"3168446\";\"Santa Croce del Sannio\";\"main\"\n\"3168446\";\"San Croce del Sannio\";\"ascii\"\n\"3168458\";\"San Costanzo\";\"main\"\n\"3168462\";\"San Colombano Certenoli\";\"main\"\n\"3168462\";\"San Colombano\";\"other\"\n\"3168462\";\"San Colombano Certénoli\";\"other\"\n\"3168462\";\"San Comban\";\"other\"\n\"3168463\";\"San Colombano al Lambro\";\"main\"\n\"3168463\";\"San Colombano\";\"other\"\n\"3168463\";\"サン・コロンバーノ・アル・ランブロ\";\"other\"\n\"3168471\";\"San Clemente\";\"main\"\n\"3168475\";\"San Cipriano Picentino\";\"main\"\n\"3168479\";\"San Chirico Raparo\";\"main\"\n\"3168480\";\"San Chirico Nuovo\";\"main\"\n\"3168480\";\"Chirico\";\"other\"\n\"3168483\";\"San Cesario sul Panaro\";\"main\"\n\"3168483\";\"サン・チェザーリオ・スル・パーナロ\";\"other\"\n\"3168484\";\"San Cesario di Lecce\";\"main\"\n\"3168484\";\"San Cesario\";\"other\"\n\"3168485\";\"San Cesareo\";\"main\"\n\"3168485\";\"サン・チェザーレオ\";\"other\"\n\"3168497\";\"San Cassiano\";\"main\"\n\"3168498\";\"San Casciano in Val di Pesa\";\"main\"\n\"3168498\";\"San Casciano Val di Pesa\";\"other\"\n\"3168499\";\"San Casciano dei Bagni\";\"main\"\n\"3168499\";\"San Casciano de'Bagni\";\"other\"\n\"3168499\";\"サン・カシャーノ・デイ・バーニ\";\"other\"\n\"3168508\";\"San Candido - Innichen\";\"main\"\n\"3168508\";\"San Candido\";\"ascii\"\n\"3168508\";\"Innichen\";\"other\"\n\"3168508\";\"サン・カンディド\";\"other\"\n\"3168509\";\"San Buono\";\"main\"\n\"3168514\";\"San Bonifacio\";\"main\"\n\"3168514\";\"Sambonifacio\";\"other\"\n\"3168521\";\"San Biagio di Callalta\";\"main\"\n\"3168522\";\"San Biagio della Cima\";\"main\"\n\"3168544\";\"San Benigno Canavese\";\"main\"\n\"3168544\";\"サン・ベニーニョ・カナヴェーゼ\";\"other\"\n\"3168545\";\"San Benedetto Val di Sambro\";\"main\"\n\"3168545\";\"San Benedetto\";\"other\"\n\"3168546\";\"San Benedetto Po\";\"main\"\n\"3168546\";\"San Benedetto\";\"other\"\n\"3168549\";\"San Benedetto dei Marsi\";\"main\"\n\"3168549\";\"San Benedetto de' Marsi\";\"ascii\"\n\"3168549\";\"San Benedetto\";\"other\"\n\"3168550\";\"San Benedetto del Tronto\";\"main\"\n\"3168557\";\"San Bellino\";\"main\"\n\"3168558\";\"San Bassano\";\"main\"\n\"3168560\";\"San Bartolomeo in Galdo\";\"main\"\n\"3168560\";\"San Bartolommeo in Galdo\";\"other\"\n\"3168574\";\"Sanarica\";\"main\"\n\"3168579\";\"Sampeyre\";\"main\"\n\"3168579\";\"Sampeire\";\"ascii\"\n\"3168579\";\"Sampéyre\";\"other\"\n\"3168580\";\"Samone\";\"main\"\n\"3168580\";\"samone\";\"other\"\n\"3168580\";\"サモーネ\";\"other\"\n\"3168583\";\"Sammichele di Bari\";\"main\"\n\"3168583\";\"San Michele di Bari\";\"other\"\n\"3168599\";\"Samarate\";\"main\"\n\"3168601\";\"Salzano\";\"main\"\n\"3168601\";\"sarutsu~ano\";\"other\"\n\"3168601\";\"サルツァーノ\";\"other\"\n\"3168609\";\"Saluzzo\";\"main\"\n\"3168614\";\"Salussola\";\"main\"\n\"3168615\";\"Saluggia\";\"main\"\n\"3168616\";\"Saludecio\";\"main\"\n\"3168625\";\"Saltara\";\"main\"\n\"3168627\";\"Salsomaggiore Terme\";\"main\"\n\"3168627\";\"Salsomaggiore\";\"other\"\n\"3168632\";\"Salorno - Salurn\";\"main\"\n\"3168632\";\"Salorno\";\"ascii\"\n\"3168632\";\"Salurn\";\"other\"\n\"3168632\";\"saroruno\";\"other\"\n\"3168632\";\"サロルノ\";\"other\"\n\"3168633\";\"Salò\";\"main\"\n\"3168633\";\"Salo\";\"ascii\"\n\"3168633\";\"Pagus Salodium\";\"other\"\n\"3168633\";\"saro\";\"other\"\n\"3168633\";\"Сало\";\"other\"\n\"3168633\";\"サロ\";\"other\"\n\"3168637\";\"Salizzole\";\"main\"\n\"3168655\";\"Saliceto\";\"main\"\n\"3168655\";\"Salicetto\";\"ascii\"\n\"3168655\";\"saricheto\";\"other\"\n\"3168655\";\"サリチェート\";\"other\"\n\"3168658\";\"Salice Salentino\";\"main\"\n\"3168660\";\"Salgareda\";\"main\"\n\"3168660\";\"Salgareda Vecchia\";\"other\"\n\"3168665\";\"Saletto\";\"main\"\n\"3168673\";\"Salerno\";\"main\"\n\"3168673\";\"Salernas\";\"other\"\n\"3168673\";\"Salerne\";\"other\"\n\"3168673\";\"Salernu\";\"other\"\n\"3168673\";\"Salernum\";\"other\"\n\"3168673\";\"Salierno\";\"other\"\n\"3168673\";\"salyrnw\";\"other\"\n\"3168673\";\"sareruno\";\"other\"\n\"3168673\";\"Салерно\";\"other\"\n\"3168673\";\"ساليرنو\";\"other\"\n\"3168673\";\"サレルノ\";\"other\"\n\"3168676\";\"Salento\";\"main\"\n\"3168678\";\"Sale Marasino\";\"main\"\n\"3168682\";\"Sale\";\"main\"\n\"3168687\";\"Salcedo\";\"main\"\n\"3168689\";\"Salassa\";\"main\"\n\"3168689\";\"sarassa\";\"other\"\n\"3168689\";\"サラッサ\";\"other\"\n\"3168692\";\"Salara\";\"main\"\n\"3168695\";\"Salandra\";\"main\"\n\"3168699\";\"Sala Consilina\";\"main\"\n\"3168699\";\"Sala Cosilina\";\"other\"\n\"3168700\";\"Sala Bolognese\";\"main\"\n\"3168703\";\"Sala Baganza\";\"main\"\n\"3168712\";\"Saint-Vincent\";\"main\"\n\"3168712\";\"San Vincenzo della Fonte\";\"other\"\n\"3168712\";\"Sen-Vensan\";\"other\"\n\"3168712\";\"Сен-Венсан\";\"other\"\n\"3168714\";\"Saint-Pierre\";\"main\"\n\"3168721\";\"Sagrado\";\"main\"\n\"3168721\";\"Sagrado d'Isonzo\";\"other\"\n\"3168721\";\"Sagrado d’Isonzo\";\"other\"\n\"3168721\";\"Sagrat\";\"other\"\n\"3168725\";\"Sacrofano\";\"main\"\n\"3168725\";\"sakurofano\";\"other\"\n\"3168725\";\"サクロファーノ\";\"other\"\n\"3168730\";\"Sacile\";\"main\"\n\"3168730\";\"Sacil\";\"other\"\n\"3168730\";\"Sacîl\";\"other\"\n\"3168732\";\"Saccolongo\";\"main\"\n\"3168752\";\"Sabbioneta\";\"main\"\n\"3168759\";\"Sabbio Chiese\";\"main\"\n\"3168764\";\"Sabaudia\";\"main\"\n\"3168764\";\"sabaudia\";\"other\"\n\"3168764\";\"サバウディア\";\"other\"\n\"3168770\";\"Ruvo di Puglia\";\"main\"\n\"3168771\";\"Ruvo del Monte\";\"main\"\n\"3168772\";\"Ruviano\";\"main\"\n\"3168775\";\"Rutigliano\";\"main\"\n\"3168784\";\"Russi\";\"main\"\n\"3168784\";\"russhi\";\"other\"\n\"3168784\";\"ルッシ\";\"other\"\n\"3168791\";\"Ruoti\";\"main\"\n\"3168813\";\"Rufina\";\"main\"\n\"3168816\";\"Rudiano\";\"main\"\n\"3168816\";\"rudiano\";\"other\"\n\"3168816\";\"ルディアーノ\";\"other\"\n\"3168820\";\"Rubiera\";\"main\"\n\"3168823\";\"Rubiana\";\"main\"\n\"3168823\";\"Rubian-a\";\"other\"\n\"3168823\";\"rubiana\";\"other\"\n\"3168823\";\"ルビアーナ\";\"other\"\n\"3168827\";\"Rubano\";\"main\"\n\"3168837\";\"Rozzano\";\"main\"\n\"3168837\";\"rottsu~ano\";\"other\"\n\"3168837\";\"ロッツァーノ\";\"other\"\n\"3168839\";\"Rovolon\";\"main\"\n\"3168843\";\"Rovigo\";\"main\"\n\"3168843\";\"Rodigium\";\"other\"\n\"3168843\";\"rovu~igo\";\"other\"\n\"3168843\";\"Ровиго\";\"other\"\n\"3168843\";\"ロヴィーゴ\";\"other\"\n\"3168847\";\"Roviano\";\"main\"\n\"3168847\";\"rovu~iano\";\"other\"\n\"3168847\";\"ロヴィアーノ\";\"other\"\n\"3168848\";\"Rovetta\";\"main\"\n\"3168854\";\"Rovereto\";\"main\"\n\"3168854\";\"rovu~ereto\";\"other\"\n\"3168854\";\"Роверето\";\"other\"\n\"3168854\";\"ロヴェレート\";\"other\"\n\"3168858\";\"Roveredo in Piano\";\"main\"\n\"3168858\";\"Lavoreit\";\"other\"\n\"3168858\";\"Roveredo\";\"other\"\n\"3168860\";\"Roverè della Luna\";\"main\"\n\"3168860\";\"Rovere della Luna\";\"ascii\"\n\"3168860\";\"ロヴェレー・デッラ・ルーナ\";\"other\"\n\"3168865\";\"Roverbella\";\"main\"\n\"3168865\";\"Santa Lucia di Roverbella\";\"other\"\n\"3168868\";\"Rovello Porro\";\"main\"\n\"3168870\";\"Rovellasca\";\"main\"\n\"3168870\";\"Rovi Porro\";\"other\"\n\"3168874\";\"Rovato\";\"main\"\n\"3168875\";\"Rovasenda\";\"main\"\n\"3168875\";\"Bovasenda\";\"other\"\n\"3168875\";\"Roasenda\";\"other\"\n\"3168876\";\"Rovagnate\";\"main\"\n\"3168879\";\"Rottofreno\";\"main\"\n\"3168894\";\"Rotondi\";\"main\"\n\"3168895\";\"Rotondella\";\"main\"\n\"3168897\";\"Rotello\";\"main\"\n\"3168908\";\"Rossiglione\";\"main\"\n\"3168908\";\"Roscigion\";\"other\"\n\"3168913\";\"Rossano Veneto\";\"main\"\n\"3168926\";\"Rosora\";\"main\"\n\"3168926\";\"rozora\";\"other\"\n\"3168926\";\"ロゾーラ\";\"other\"\n\"3168927\";\"Rosolina\";\"main\"\n\"3168931\";\"Rosignano Marittimo\";\"main\"\n\"3168931\";\"ロジニャーノ・マリッティモ\";\"other\"\n\"3168935\";\"Roseto Valfortore\";\"main\"\n\"3168935\";\"Roseto\";\"other\"\n\"3168936\";\"Roseto degli Abruzzi\";\"main\"\n\"3168936\";\"Rosburgo\";\"other\"\n\"3168950\";\"Rosciano\";\"main\"\n\"3168954\";\"Rosate\";\"main\"\n\"3168954\";\"rozate\";\"other\"\n\"3168954\";\"ロザーテ\";\"other\"\n\"3168969\";\"Rosa\";\"main\"\n\"3168970\";\"Rosà\";\"main\"\n\"3168970\";\"Rosa\";\"ascii\"\n\"3168983\";\"Rondissone\";\"main\"\n\"3168983\";\"Rondisson\";\"other\"\n\"3168983\";\"rondissone\";\"other\"\n\"3168983\";\"ロンディッソーネ\";\"other\"\n\"3168990\";\"Ronco Scrivia\";\"main\"\n\"3168990\";\"Ronco\";\"other\"\n\"3168993\";\"Roncone\";\"main\"\n\"3168993\";\"ronkone\";\"other\"\n\"3168993\";\"ロンコーネ\";\"other\"\n\"3168998\";\"Roncofreddo\";\"main\"\n\"3168999\";\"Roncoferraro\";\"main\"\n\"3169004\";\"Ronco all'Adige\";\"main\"\n\"3169012\";\"Ronciglione\";\"main\"\n\"3169014\";\"Ronchis\";\"main\"\n\"3169014\";\"Roncjis di Tisane\";\"other\"\n\"3169015\";\"Ronchi dei Legionari\";\"main\"\n\"3169015\";\"Ronchi\";\"other\"\n\"3169015\";\"Roncji\";\"other\"\n\"3169015\";\"Roncjis\";\"other\"\n\"3169022\";\"Roncegno Terme\";\"main\"\n\"3169022\";\"Roncegno\";\"ascii\"\n\"3169022\";\"ronchenyo\";\"other\"\n\"3169022\";\"ロンチェーニョ\";\"other\"\n\"3169029\";\"Roncade\";\"main\"\n\"3169030\";\"Roncà\";\"main\"\n\"3169030\";\"Ronca\";\"ascii\"\n\"3169035\";\"Romentino\";\"main\"\n\"3169036\";\"Romeno\";\"main\"\n\"3169036\";\"romeno\";\"other\"\n\"3169036\";\"ロメーノ\";\"other\"\n\"3169053\";\"Romans d'Isonzo\";\"main\"\n\"3169053\";\"Romans\";\"other\"\n\"3169053\";\"Romans dal Lusinc\";\"other\"\n\"3169056\";\"Romano di Lombardia\";\"main\"\n\"3169057\";\"Romano Canavese\";\"main\"\n\"3169057\";\"Romano\";\"other\"\n\"3169057\";\"ロマーノ・カナヴェーゼ\";\"other\"\n\"3169059\";\"Romanengo\";\"main\"\n\"3169064\";\"Romagnano Sesia\";\"main\"\n\"3169064\";\"Romagnano\";\"other\"\n\"3169064\";\"ロマニャーノ・セージア\";\"other\"\n\"3169070\";\"Roma\";\"main\"\n\"3169070\";\"An Roimh\";\"other\"\n\"3169070\";\"An Ròimh\";\"other\"\n\"3169070\";\"An Róimh\";\"other\"\n\"3169070\";\"Erroma\";\"other\"\n\"3169070\";\"Hrom\";\"other\"\n\"3169070\";\"Lungsod ng Roma\";\"other\"\n\"3169070\";\"Mji wa Roma\";\"other\"\n\"3169070\";\"ROM\";\"other\"\n\"3169070\";\"Ramma\";\"other\"\n\"3169070\";\"Rhufain\";\"other\"\n\"3169070\";\"Rim\";\"other\"\n\"3169070\";\"Rim\\\"\";\"other\"\n\"3169070\";\"Roeme\";\"other\"\n\"3169070\";\"Rom\";\"other\"\n\"3169070\";\"Rome\";\"other\"\n\"3169070\";\"Romma\";\"other\"\n\"3169070\";\"Romo\";\"other\"\n\"3169070\";\"Rooma\";\"other\"\n\"3169070\";\"Roum\";\"other\"\n\"3169070\";\"Rym\";\"other\"\n\"3169070\";\"Rzym\";\"other\"\n\"3169070\";\"Råmma\";\"other\"\n\"3169070\";\"Rím\";\"other\"\n\"3169070\";\"Róm\";\"other\"\n\"3169070\";\"Róma\";\"other\"\n\"3169070\";\"Urbs\";\"other\"\n\"3169070\";\"loma\";\"other\"\n\"3169070\";\"luo ma shi\";\"other\"\n\"3169070\";\"rm\";\"other\"\n\"3169070\";\"rom\";\"other\"\n\"3169070\";\"roma\";\"other\"\n\"3169070\";\"romi\";\"other\"\n\"3169070\";\"rwm\";\"other\"\n\"3169070\";\"rwma\";\"other\"\n\"3169070\";\"rym\";\"other\"\n\"3169070\";\"Řím\";\"other\"\n\"3169070\";\"Ρώμη\";\"other\"\n\"3169070\";\"Рим\";\"other\"\n\"3169070\";\"Римъ\";\"other\"\n\"3169070\";\"Рым\";\"other\"\n\"3169070\";\"Հռոմ\";\"other\"\n\"3169070\";\"רומא\";\"other\"\n\"3169070\";\"رم\";\"other\"\n\"3169070\";\"روم\";\"other\"\n\"3169070\";\"روما\";\"other\"\n\"3169070\";\"رىم\";\"other\"\n\"3169070\";\"ܪܘܡܐ\";\"other\"\n\"3169070\";\"रोम\";\"other\"\n\"3169070\";\"रोमा\";\"other\"\n\"3169070\";\"โรม\";\"other\"\n\"3169070\";\"რომი\";\"other\"\n\"3169070\";\"ሮማ\";\"other\"\n\"3169070\";\"ローマ\";\"other\"\n\"3169070\";\"罗马市\";\"other\"\n\"3169070\";\"로마\";\"other\"\n\"3169072\";\"Rolo\";\"main\"\n\"3169089\";\"Rofrano\";\"main\"\n\"3169093\";\"Rodigo\";\"main\"\n\"3169093\";\"Rodigo2\";\"ascii\"\n\"3169093\";\"rodigo\";\"other\"\n\"3169093\";\"ローディゴ\";\"other\"\n\"3169094\";\"Rodi Garganico\";\"main\"\n\"3169096\";\"Rodengo\";\"main\"\n\"3169096\";\"Rodeneck\";\"other\"\n\"3169096\";\"Rodeneck-Rodengo\";\"other\"\n\"3169096\";\"rodengo\";\"other\"\n\"3169096\";\"ロデンゴ\";\"other\"\n\"3169098\";\"Rodano\";\"main\"\n\"3169098\";\"rodano\";\"other\"\n\"3169098\";\"ローダノ\";\"other\"\n\"3169109\";\"Rocchetta Sant'Antonio\";\"main\"\n\"3169109\";\"Rocchetta San Antonio\";\"other\"\n\"3169109\";\"Rochetta Sant'Antonio\";\"other\"\n\"3169113\";\"Rocchetta a Volturno\";\"main\"\n\"3169113\";\"Rocchetta\";\"other\"\n\"3169113\";\"Rocchetta al Volturno\";\"other\"\n\"3169122\";\"Roccavione\";\"main\"\n\"3169128\";\"Roccastrada\";\"main\"\n\"3169130\";\"Roccaspinalveti\";\"main\"\n\"3169133\";\"Roccasecca dei Volsci\";\"main\"\n\"3169133\";\"ロッカセッカ・デイ・ヴォルシ\";\"other\"\n\"3169135\";\"Roccasecca\";\"main\"\n\"3169135\";\"rokkasekka\";\"other\"\n\"3169135\";\"ロッカセッカ\";\"other\"\n\"3169136\";\"Roccascalegna\";\"main\"\n\"3169140\";\"Rocca San Casciano\";\"main\"\n\"3169143\";\"Roccaromana\";\"main\"\n\"3169145\";\"Roccaraso\";\"main\"\n\"3169145\";\"Roccarasa\";\"other\"\n\"3169147\";\"Roccarainola\";\"main\"\n\"3169147\";\"rokkarainora\";\"other\"\n\"3169147\";\"ロッカライーノラ\";\"other\"\n\"3169149\";\"Rocca Priora\";\"main\"\n\"3169149\";\"ロッカ・プリオーラ\";\"other\"\n\"3169156\";\"Roccapiemonte\";\"main\"\n\"3169161\";\"Roccanova\";\"main\"\n\"3169163\";\"Roccamontepiano\";\"main\"\n\"3169165\";\"Roccamonfina\";\"main\"\n\"3169166\";\"Rocca Massima\";\"main\"\n\"3169166\";\"ロッカ・マッシマ\";\"other\"\n\"3169167\";\"Roccamandolfi\";\"main\"\n\"3169170\";\"Roccalbegna\";\"main\"\n\"3169172\";\"Rocca Imperiale\";\"main\"\n\"3169173\";\"Roccagloriosa\";\"main\"\n\"3169175\";\"Roccafranca\";\"main\"\n\"3169176\";\"Roccaforzata\";\"main\"\n\"3169177\";\"Roccaforte Mondovì\";\"main\"\n\"3169177\";\"Roccaforte Mondovi\";\"ascii\"\n\"3169177\";\"Roccaforte\";\"other\"\n\"3169181\";\"Rocca di Papa\";\"main\"\n\"3169181\";\"ロッカ・ディ・パーパ\";\"other\"\n\"3169182\";\"Rocca di Mezzo\";\"main\"\n\"3169188\";\"Rocca d'Evandro\";\"main\"\n\"3169191\";\"Roccadaspide\";\"main\"\n\"3169192\";\"Rocca d'Arce\";\"main\"\n\"3169198\";\"Rocca Canavese\";\"main\"\n\"3169198\";\"ロッカ・カナヴェーゼ\";\"other\"\n\"3169199\";\"Roccabianca\";\"main\"\n\"3169206\";\"Robilante\";\"main\"\n\"3169209\";\"Robecco sul Naviglio\";\"main\"\n\"3169209\";\"Robecco\";\"other\"\n\"3169209\";\"ロベッコ・スル・ナヴィーリオ\";\"other\"\n\"3169210\";\"Robecco d'Oglio\";\"main\"\n\"3169210\";\"Robecco\";\"other\"\n\"3169211\";\"Robecchetto con Induno\";\"main\"\n\"3169211\";\"ロベッケット・コン・インドゥーノ\";\"other\"\n\"3169212\";\"Robbio\";\"main\"\n\"3169213\";\"Robbiate\";\"main\"\n\"3169215\";\"Robassomero\";\"main\"\n\"3169215\";\"Robassome\";\"other\"\n\"3169215\";\"Robassomé\";\"other\"\n\"3169215\";\"robassomero\";\"other\"\n\"3169215\";\"ロバッソメーロ\";\"other\"\n\"3169216\";\"Roasio\";\"main\"\n\"3169218\";\"Roana\";\"main\"\n\"3169220\";\"Ro\";\"main\"\n\"3169220\";\"Ro Ferrara\";\"other\"\n\"3169220\";\"ro\";\"other\"\n\"3169220\";\"ロ\";\"other\"\n\"3169228\";\"Rivolta d'Adda\";\"main\"\n\"3169228\";\"Rivolta\";\"other\"\n\"3169228\";\"Rivolta d'Ada\";\"other\"\n\"3169228\";\"Риволта д'Ада\";\"other\"\n\"3169231\";\"Rivoli\";\"main\"\n\"3169231\";\"Rivoli Torinese\";\"other\"\n\"3169231\";\"rivu~ori\";\"other\"\n\"3169231\";\"Риволи\";\"other\"\n\"3169231\";\"リーヴォリ\";\"other\"\n\"3169235\";\"Rivodutri\";\"main\"\n\"3169238\";\"Rivignano\";\"main\"\n\"3169238\";\"Rivignan\";\"other\"\n\"3169243\";\"Rivergaro\";\"main\"\n\"3169245\";\"Rivello\";\"main\"\n\"3169246\";\"Rive d’Arcano\";\"main\"\n\"3169246\";\"Rive d'Arcano\";\"ascii\"\n\"3169246\";\"Rivis d'Arcjan\";\"other\"\n\"3169250\";\"Rivarolo Mantovano\";\"main\"\n\"3169252\";\"Rivarolo del Re ed Uniti\";\"main\"\n\"3169252\";\"Rivarolo del Re\";\"other\"\n\"3169253\";\"Rivarolo Canavese\";\"main\"\n\"3169253\";\"Rivareul\";\"other\"\n\"3169253\";\"リヴァローロ・カナヴェーゼ\";\"other\"\n\"3169255\";\"Rivara\";\"main\"\n\"3169255\";\"rivu~ara\";\"other\"\n\"3169255\";\"リヴァーラ\";\"other\"\n\"3169256\";\"Riva presso Chieri\";\"main\"\n\"3169256\";\"Riva\";\"other\"\n\"3169256\";\"Riva di Chieri\";\"other\"\n\"3169256\";\"リーヴァ・プレッソ・キエーリ\";\"other\"\n\"3169258\";\"Rivanazzano\";\"main\"\n\"3169262\";\"Rivalta di Torino\";\"main\"\n\"3169262\";\"Arvauta\";\"other\"\n\"3169262\";\"Arvàuta\";\"other\"\n\"3169262\";\"リヴァルタ・ディ・トリーノ\";\"other\"\n\"3169267\";\"Riva Ligure\";\"main\"\n\"3169272\";\"Riva del Garda\";\"main\"\n\"3169272\";\"Riva\";\"other\"\n\"3169272\";\"Riva sul Garda\";\"other\"\n\"3169272\";\"リーヴァ・デル・ガルダ\";\"other\"\n\"3169295\";\"Ripi\";\"main\"\n\"3169297\";\"Ripe\";\"main\"\n\"3169297\";\"ripe\";\"other\"\n\"3169297\";\"リーペ\";\"other\"\n\"3169299\";\"Ripatransone\";\"main\"\n\"3169300\";\"Ripa Teatina\";\"main\"\n\"3169302\";\"Riparbella\";\"main\"\n\"3169306\";\"Ripalta Cremasca\";\"main\"\n\"3169306\";\"Ripalta\";\"other\"\n\"3169308\";\"Ripalimosani\";\"main\"\n\"3169308\";\"Ripalimosano\";\"other\"\n\"3169314\";\"Ripacandida\";\"main\"\n\"3169324\";\"Rio Saliceto\";\"main\"\n\"3169325\";\"Rionero Sannitico\";\"main\"\n\"3169325\";\"Rionero\";\"other\"\n\"3169326\";\"Rionero in Vulture\";\"main\"\n\"3169326\";\"Arniuro in Vulture\";\"other\"\n\"3169330\";\"Rio Marina\";\"main\"\n\"3169330\";\"リオ・マリーナ\";\"other\"\n\"3169333\";\"Riomaggiore\";\"main\"\n\"3169333\";\"Rimazo\";\"other\"\n\"3169333\";\"Rimazò\";\"other\"\n\"3169333\";\"riomajjore\";\"other\"\n\"3169333\";\"リオマッジョーレ\";\"other\"\n\"3169336\";\"Riolo Terme\";\"main\"\n\"3169336\";\"Riolo dei Bagni\";\"other\"\n\"3169336\";\"リオーロ・テルメ\";\"other\"\n\"3169345\";\"Rio di Pusteria - Muehlbach\";\"main\"\n\"3169345\";\"Rio di Pusteria\";\"ascii\"\n\"3169345\";\"Muehlbach\";\"other\"\n\"3169345\";\"Muhlbach\";\"other\"\n\"3169345\";\"Mühlbach\";\"other\"\n\"3169345\";\"リオ・ディ・プステリーア\";\"other\"\n\"3169361\";\"Rimini\";\"main\"\n\"3169361\";\"Ariminum\";\"other\"\n\"3169361\";\"Remin\";\"other\"\n\"3169361\";\"Rèmin\";\"other\"\n\"3169361\";\"Rímini\";\"other\"\n\"3169361\";\"rimini\";\"other\"\n\"3169361\";\"rymyny\";\"other\"\n\"3169361\";\"Римини\";\"other\"\n\"3169361\";\"Ріміні\";\"other\"\n\"3169361\";\"ريميني\";\"other\"\n\"3169361\";\"リミニ\";\"other\"\n\"3169392\";\"Rignano sull'Arno\";\"main\"\n\"3169392\";\"Rignano\";\"other\"\n\"3169394\";\"Rignano Garganico\";\"main\"\n\"3169395\";\"Rignano Flaminio\";\"main\"\n\"3169395\";\"リニャーノ・フラミーニオ\";\"other\"\n\"3169409\";\"Rifiano - Riffian\";\"main\"\n\"3169409\";\"Rifiano\";\"ascii\"\n\"3169409\";\"Scena\";\"other\"\n\"3169409\";\"Schenna\";\"other\"\n\"3169409\";\"Schoenna\";\"other\"\n\"3169409\";\"Schönna\";\"other\"\n\"3169409\";\"shena\";\"other\"\n\"3169409\";\"シェーナ\";\"other\"\n\"3169412\";\"Rieti\";\"main\"\n\"3169412\";\"rieti\";\"other\"\n\"3169412\";\"Риети\";\"other\"\n\"3169412\";\"リエーティ\";\"other\"\n\"3169414\";\"Riese Pio X\";\"main\"\n\"3169414\";\"Riese\";\"ascii\"\n\"3169419\";\"Ricigliano\";\"main\"\n\"3169423\";\"Riccò del Golfo di Spezia\";\"main\"\n\"3169423\";\"Ricco del Golfo di Spezia\";\"ascii\"\n\"3169423\";\"Ricco del Golfo\";\"other\"\n\"3169423\";\"Riccò del Golfo\";\"other\"\n\"3169423\";\"Rico\";\"other\"\n\"3169423\";\"Ricò\";\"other\"\n\"3169424\";\"Riccione\";\"main\"\n\"3169424\";\"Riccione Marina\";\"ascii\"\n\"3169430\";\"Riccia\";\"main\"\n\"3169440\";\"Riardo\";\"main\"\n\"3169443\";\"Riano\";\"main\"\n\"3169443\";\"riano\";\"other\"\n\"3169443\";\"リアーノ\";\"other\"\n\"3169447\";\"Rho\";\"main\"\n\"3169447\";\"Ro\";\"other\"\n\"3169447\";\"ro\";\"other\"\n\"3169447\";\"Ро\";\"other\"\n\"3169447\";\"ロー\";\"other\"\n\"3169450\";\"Rezzoaglio\";\"main\"\n\"3169450\";\"Rezoaggi\";\"other\"\n\"3169452\";\"Rezzato\";\"main\"\n\"3169458\";\"Revò\";\"main\"\n\"3169458\";\"Revo\";\"ascii\"\n\"3169458\";\"revu~o\";\"other\"\n\"3169458\";\"レヴォ\";\"other\"\n\"3169459\";\"Revine Lago\";\"main\"\n\"3169459\";\"Revine\";\"other\"\n\"3169459\";\"Rèvine\";\"other\"\n\"3169462\";\"Revere\";\"main\"\n\"3169465\";\"Revello\";\"main\"\n\"3169465\";\"Revel\";\"other\"\n\"3169468\";\"Retorbido\";\"main\"\n\"3169481\";\"Rescaldina\";\"main\"\n\"3169481\";\"resukarudina\";\"other\"\n\"3169481\";\"レスカルディーナ\";\"other\"\n\"3169482\";\"Resana\";\"main\"\n\"3169502\";\"Remanzacco\";\"main\"\n\"3169502\";\"Ramanzas\";\"other\"\n\"3169505\";\"Reino\";\"main\"\n\"3169522\";\"Reggio nell'Emilia\";\"main\"\n\"3169522\";\"Redzho-Ehmilija\";\"other\"\n\"3169522\";\"Reggio Emilia\";\"other\"\n\"3169522\";\"Реджо-Эмилия\";\"other\"\n\"3169523\";\"Reggiolo\";\"main\"\n\"3169526\";\"Reggello\";\"main\"\n\"3169527\";\"Refrontolo\";\"main\"\n\"3169536\";\"Recoaro Terme\";\"main\"\n\"3169536\";\"Recoaro\";\"other\"\n\"3169539\";\"Recco\";\"main\"\n\"3169539\";\"Reko\";\"other\"\n\"3169539\";\"Реко\";\"other\"\n\"3169540\";\"Recanati\";\"main\"\n\"3169540\";\"Rekanati\";\"other\"\n\"3169540\";\"Реканати\";\"other\"\n\"3169541\";\"Recale\";\"main\"\n\"3169543\";\"Reano\";\"main\"\n\"3169543\";\"Rean\";\"other\"\n\"3169543\";\"reano\";\"other\"\n\"3169543\";\"レアーノ\";\"other\"\n\"3169554\";\"Raviscanina\";\"main\"\n\"3169561\";\"Ravenna\";\"main\"\n\"3169561\";\"Ravena\";\"other\"\n\"3169561\";\"Ravenne\";\"other\"\n\"3169561\";\"Rawenna\";\"other\"\n\"3169561\";\"Rávena\";\"other\"\n\"3169561\";\"la wen na\";\"other\"\n\"3169561\";\"ravenna\";\"other\"\n\"3169561\";\"ravu~en'na\";\"other\"\n\"3169561\";\"rwwnh\";\"other\"\n\"3169561\";\"Равена\";\"other\"\n\"3169561\";\"Равенна\";\"other\"\n\"3169561\";\"רוונה\";\"other\"\n\"3169561\";\"रवेन्ना\";\"other\"\n\"3169561\";\"ラヴェンナ\";\"other\"\n\"3169561\";\"拉文納\";\"other\"\n\"3169562\";\"Ravello\";\"main\"\n\"3169562\";\"Ravielle\";\"other\"\n\"3169562\";\"ravelo\";\"other\"\n\"3169562\";\"Равело\";\"other\"\n\"3169565\";\"Ravarino\";\"main\"\n\"3169590\";\"Rapone\";\"main\"\n\"3169591\";\"Rapolla\";\"main\"\n\"3169592\";\"Rapolano Terme\";\"main\"\n\"3169592\";\"Rapolano\";\"other\"\n\"3169592\";\"ラポラーノ・テルメ\";\"other\"\n\"3169594\";\"Rapino\";\"main\"\n\"3169602\";\"Rapallo\";\"main\"\n\"3169602\";\"raparro\";\"other\"\n\"3169602\";\"Рапалло\";\"other\"\n\"3169602\";\"ラパッロ\";\"other\"\n\"3169604\";\"Rapagnano\";\"main\"\n\"3169605\";\"Raossi\";\"main\"\n\"3169605\";\"Raossi di Vallarsa\";\"other\"\n\"3169605\";\"Vallarsa\";\"other\"\n\"3169612\";\"Ranco\";\"main\"\n\"3169621\";\"Ramiseto\";\"main\"\n\"3169626\";\"Raiano\";\"main\"\n\"3169626\";\"Rarano\";\"other\"\n\"3169640\";\"Radicofani\";\"main\"\n\"3169644\";\"Radda in Chianti\";\"main\"\n\"3169644\";\"Radda\";\"other\"\n\"3169644\";\"ラッダ・イン・キアンティ\";\"other\"\n\"3169646\";\"Racines\";\"main\"\n\"3169646\";\"Ratschings\";\"other\"\n\"3169646\";\"rachinesu\";\"other\"\n\"3169646\";\"ラチーネス\";\"other\"\n\"3169647\";\"Racconigi\";\"main\"\n\"3169647\";\"Racunis\";\"other\"\n\"3169647\";\"rakkoniji\";\"other\"\n\"3169647\";\"ラッコニージ\";\"other\"\n\"3169656\";\"Quistello\";\"main\"\n\"3169660\";\"Quinzano d'Oglio\";\"main\"\n\"3169660\";\"Quizano\";\"other\"\n\"3169661\";\"Quinto Vicentino\";\"main\"\n\"3169663\";\"Quinto di Treviso\";\"main\"\n\"3169663\";\"Quinto\";\"other\"\n\"3169663\";\"Quinto di Trevisio\";\"other\"\n\"3169666\";\"Quingentole\";\"main\"\n\"3169667\";\"Quindici\";\"main\"\n\"3169668\";\"Quincinetto\";\"main\"\n\"3169668\";\"Quinsne\";\"other\"\n\"3169668\";\"Quinsné\";\"other\"\n\"3169668\";\"kuinchinetto\";\"other\"\n\"3169668\";\"クインチネット\";\"other\"\n\"3169670\";\"Quiliano\";\"main\"\n\"3169670\";\"Cuggioen\";\"other\"\n\"3169670\";\"Cuggiœn\";\"other\"\n\"3169670\";\"kuiriano\";\"other\"\n\"3169670\";\"クイリアーノ\";\"other\"\n\"3169673\";\"Quero\";\"main\"\n\"3169687\";\"Quattro Castella\";\"main\"\n\"3169688\";\"Quattordio\";\"main\"\n\"3169688\";\"Quatordi\";\"other\"\n\"3169688\";\"Quatòrdi\";\"other\"\n\"3169700\";\"Quarto d’Altino\";\"main\"\n\"3169700\";\"Quarto d'Altino\";\"ascii\"\n\"3169700\";\"クアルト・ダルティーノ\";\"other\"\n\"3169712\";\"Quart\";\"main\"\n\"3169712\";\"Chateau de Quart\";\"other\"\n\"3169713\";\"Quarrata\";\"main\"\n\"3169714\";\"Quarona\";\"main\"\n\"3169716\";\"Quargnento\";\"main\"\n\"3169716\";\"Quargnent\";\"other\"\n\"3169724\";\"Qualiano\";\"main\"\n\"3169724\";\"kuariano\";\"other\"\n\"3169724\";\"クアリアーノ\";\"other\"\n\"3169734\";\"Quadrelle\";\"main\"\n\"3169742\";\"Putignano\";\"main\"\n\"3169742\";\"Putin'jano\";\"other\"\n\"3169742\";\"Путиньяно\";\"other\"\n\"3169746\";\"Pusiano\";\"main\"\n\"3169746\";\"Pasiano\";\"other\"\n\"3169750\";\"Puos d’Alpago\";\"main\"\n\"3169750\";\"Puos d'Alpago\";\"ascii\"\n\"3169750\";\"Puos\";\"other\"\n\"3169759\";\"Pumenengo\";\"main\"\n\"3169760\";\"Pulsano\";\"main\"\n\"3169765\";\"Pulfero\";\"main\"\n\"3169765\";\"Pulfar\";\"other\"\n\"3169776\";\"Puglianello\";\"main\"\n\"3169793\";\"Prossedi\";\"main\"\n\"3169793\";\"purossedi\";\"other\"\n\"3169793\";\"プロッセーディ\";\"other\"\n\"3169807\";\"Procida\";\"main\"\n\"3169807\";\"Proceta\";\"other\"\n\"3169807\";\"purochida\";\"other\"\n\"3169807\";\"プローチダ\";\"other\"\n\"3169811\";\"Priverno\";\"main\"\n\"3169811\";\"Piperno\";\"other\"\n\"3169811\";\"purivu~eruno\";\"other\"\n\"3169811\";\"プリヴェルノ\";\"other\"\n\"3169823\";\"Prignano sulla Secchia\";\"main\"\n\"3169826\";\"Prezza\";\"main\"\n\"3169830\";\"Pretoro\";\"main\"\n\"3169841\";\"Pressana\";\"main\"\n\"3169846\";\"Presenzano\";\"main\"\n\"3169859\";\"Premosello-Chiovenda\";\"main\"\n\"3169859\";\"Premosello Chiovenda\";\"ascii\"\n\"3169859\";\"Premosello\";\"other\"\n\"3169862\";\"Premariacco\";\"main\"\n\"3169862\";\"Premaria\";\"other\"\n\"3169863\";\"Premana\";\"main\"\n\"3169869\";\"Preganziol\";\"main\"\n\"3169871\";\"Predosa\";\"main\"\n\"3169872\";\"Predore\";\"main\"\n\"3169877\";\"Predazzo\";\"main\"\n\"3169877\";\"puredattsu~o\";\"other\"\n\"3169877\";\"プレダッツォ\";\"other\"\n\"3169878\";\"Predappio Alta\";\"main\"\n\"3169883\";\"Precenicco\";\"main\"\n\"3169883\";\"Precenins\";\"other\"\n\"3169892\";\"Pray\";\"main\"\n\"3169892\";\"purai\";\"other\"\n\"3169892\";\"プライ\";\"other\"\n\"3169893\";\"Pravisdomini\";\"main\"\n\"3169895\";\"Pratovecchio\";\"main\"\n\"3169897\";\"Prato Sesia\";\"main\"\n\"3169907\";\"Pratola Serra\";\"main\"\n\"3169907\";\"Pratola\";\"other\"\n\"3169908\";\"Pratola Peligna\";\"main\"\n\"3169908\";\"Paatola Peligna\";\"other\"\n\"3169908\";\"Paàtola Peligna\";\"other\"\n\"3169908\";\"Pratola\";\"other\"\n\"3169911\";\"Prato di Resia\";\"main\"\n\"3169911\";\"Prato\";\"other\"\n\"3169911\";\"Resia\";\"other\"\n\"3169911\";\"Resie\";\"other\"\n\"3169911\";\"Résia\";\"other\"\n\"3169913\";\"Prato Carnico\";\"main\"\n\"3169913\";\"Prat\";\"other\"\n\"3169913\";\"Prato\";\"other\"\n\"3169914\";\"Prato allo Stelvio - Prad am Stilfser Joch\";\"main\"\n\"3169914\";\"Prato allo Stelvio\";\"ascii\"\n\"3169914\";\"Prad am Stilfser Joch\";\"other\"\n\"3169914\";\"Prad am Stilfserjoch\";\"other\"\n\"3169914\";\"Prato\";\"other\"\n\"3169914\";\"プラート・アッロ・ステルヴィオ\";\"other\"\n\"3169921\";\"Prato\";\"main\"\n\"3169921\";\"Pratu\";\"other\"\n\"3169921\";\"Pre\";\"other\"\n\"3169921\";\"Prè\";\"other\"\n\"3169921\";\"bratw\";\"other\"\n\"3169921\";\"pu la tuo\";\"other\"\n\"3169921\";\"purato\";\"other\"\n\"3169921\";\"Прато\";\"other\"\n\"3169921\";\"براتو\";\"other\"\n\"3169921\";\"プラート\";\"other\"\n\"3169921\";\"普拉托\";\"other\"\n\"3169929\";\"Pratella\";\"main\"\n\"3169930\";\"Prata Sannita\";\"main\"\n\"3169934\";\"Prata di Principato Ultra\";\"main\"\n\"3169935\";\"Prata di Pordenone\";\"main\"\n\"3169935\";\"Prata\";\"other\"\n\"3169935\";\"Prate\";\"other\"\n\"3169939\";\"Prata Camportaccio\";\"main\"\n\"3169939\";\"Prata\";\"other\"\n\"3169950\";\"Pralungo\";\"main\"\n\"3169951\";\"Pralormo\";\"main\"\n\"3169954\";\"Pralboino\";\"main\"\n\"3169956\";\"Praiano\";\"main\"\n\"3169956\";\"Prajano\";\"other\"\n\"3169956\";\"Праяно\";\"other\"\n\"3169981\";\"Pozzuolo del Friuli\";\"main\"\n\"3169981\";\"Pocui\";\"other\"\n\"3169981\";\"Pozzuolo\";\"other\"\n\"3169981\";\"Pucui\";\"other\"\n\"3169981\";\"Puçui\";\"other\"\n\"3169984\";\"Pozzuoli\";\"main\"\n\"3169984\";\"Pocuoli\";\"other\"\n\"3169984\";\"Pouzzoles\";\"other\"\n\"3169984\";\"Puteoli\";\"other\"\n\"3169984\";\"Puzzuolo\";\"other\"\n\"3169984\";\"pottsuori\";\"other\"\n\"3169984\";\"Поцуоли\";\"other\"\n\"3169984\";\"ポッツオリ\";\"other\"\n\"3169984\";\"ポッツオーリ\";\"other\"\n\"3169988\";\"Pozzonovo\";\"main\"\n\"3169988\";\"Pozzonuovo\";\"other\"\n\"3169990\";\"Pozzomaggiore\";\"main\"\n\"3169991\";\"Pozzolo Formigaro\";\"main\"\n\"3169993\";\"Pozzoleone\";\"main\"\n\"3169994\";\"Pozzolengo\";\"main\"\n\"3170006\";\"Pozzilli\";\"main\"\n\"3170006\";\"Poczilli\";\"other\"\n\"3170010\";\"Pozzaglio ed Uniti\";\"main\"\n\"3170013\";\"Pozza di Fassa\";\"main\"\n\"3170013\";\"Pozza\";\"ascii\"\n\"3170016\";\"Povoletto\";\"main\"\n\"3170016\";\"Paulet\";\"other\"\n\"3170017\";\"Poviglio\";\"main\"\n\"3170019\";\"Povegliano Veronese\";\"main\"\n\"3170023\";\"Potenza Picena\";\"main\"\n\"3170027\";\"Potenza\";\"main\"\n\"3170027\";\"Oppido Lucano\";\"other\"\n\"3170027\";\"Potentia\";\"other\"\n\"3170027\";\"Putenza\";\"other\"\n\"3170027\";\"potentsu~a\";\"other\"\n\"3170027\";\"ポテンツァ\";\"other\"\n\"3170035\";\"Postiglione\";\"main\"\n\"3170040\";\"Postal - Burgstall\";\"main\"\n\"3170040\";\"Postal\";\"ascii\"\n\"3170040\";\"Burgstall\";\"other\"\n\"3170040\";\"posutaru\";\"other\"\n\"3170040\";\"ポスタル\";\"other\"\n\"3170043\";\"Posta Fibreno\";\"main\"\n\"3170043\";\"Posta\";\"ascii\"\n\"3170050\";\"Possagno\";\"main\"\n\"3170050\";\"Posan'o\";\"other\"\n\"3170050\";\"Посаньо\";\"other\"\n\"3170051\";\"Positano\";\"main\"\n\"3170051\";\"Pozitano\";\"other\"\n\"3170051\";\"pojitano\";\"other\"\n\"3170051\";\"Позитано\";\"other\"\n\"3170051\";\"ポジターノ\";\"other\"\n\"3170060\";\"Posada\";\"main\"\n\"3170062\";\"Portula\";\"main\"\n\"3170065\";\"Portovenere\";\"main\"\n\"3170065\";\"Portivene\";\"other\"\n\"3170065\";\"Pòrtivene\";\"other\"\n\"3170065\";\"porutovu~enere\";\"other\"\n\"3170065\";\"Портовенере\";\"other\"\n\"3170065\";\"ポルトヴェーネレ\";\"other\"\n\"3170068\";\"Porto Valtravaglia\";\"main\"\n\"3170069\";\"Porto Torres\";\"main\"\n\"3170069\";\"Porto-Torres\";\"other\"\n\"3170069\";\"Порто-Торрес\";\"other\"\n\"3170070\";\"Porto Tolle\";\"main\"\n\"3170072\";\"Porto Sant'Elpidio\";\"main\"\n\"3170072\";\"Porto Sant'Elpidio a Mare\";\"other\"\n\"3170073\";\"Porto San Giorgio\";\"main\"\n\"3170075\";\"Porto Recanati\";\"main\"\n\"3170082\";\"Portomaggiore\";\"main\"\n\"3170082\";\"porutomajjore\";\"other\"\n\"3170082\";\"ポルトマッジョーレ\";\"other\"\n\"3170086\";\"Portogruaro\";\"main\"\n\"3170086\";\"Puart\";\"other\"\n\"3170086\";\"porutoguruaro\";\"other\"\n\"3170086\";\"ポルトグルアーロ\";\"other\"\n\"3170094\";\"Portoferraio\";\"main\"\n\"3170094\";\"Ferrajo\";\"other\"\n\"3170094\";\"porutoferraio\";\"other\"\n\"3170094\";\"ポルトフェッラーイオ\";\"other\"\n\"3170102\";\"Civitanova Marche\";\"main\"\n\"3170102\";\"Porto Civitanova\";\"other\"\n\"3170103\";\"Porto Ceresio\";\"main\"\n\"3170104\";\"Portocannone\";\"main\"\n\"3170104\";\"Portkanuni\";\"other\"\n\"3170107\";\"Porto Azzurro\";\"main\"\n\"3170107\";\"Porto Azzuro\";\"other\"\n\"3170107\";\"Porto Longone\";\"other\"\n\"3170107\";\"ポルト・アッズッロ\";\"other\"\n\"3170115\";\"Portico di Caserta\";\"main\"\n\"3170116\";\"Portici\";\"main\"\n\"3170116\";\"Portichi\";\"other\"\n\"3170116\";\"Puortece\";\"other\"\n\"3170116\";\"bwrtysh\";\"other\"\n\"3170116\";\"porutichi\";\"other\"\n\"3170116\";\"Портичи\";\"other\"\n\"3170116\";\"بورتيش\";\"other\"\n\"3170116\";\"ポルティチ\";\"other\"\n\"3170127\";\"Portalbera\";\"main\"\n\"3170131\";\"Porretta Terme\";\"main\"\n\"3170131\";\"Bagni della Porretta\";\"other\"\n\"3170131\";\"Puratta\";\"other\"\n\"3170136\";\"Porpetto\";\"main\"\n\"3170136\";\"Porpet\";\"other\"\n\"3170141\";\"Porlezza\";\"main\"\n\"3170141\";\"Portus Laetitiae\";\"other\"\n\"3170147\";\"Pordenone\";\"main\"\n\"3170147\";\"Pordenon\";\"other\"\n\"3170147\";\"Portus Naonis\";\"other\"\n\"3170147\";\"porudenone\";\"other\"\n\"3170147\";\"Порденоне\";\"other\"\n\"3170147\";\"ポルデノーネ\";\"other\"\n\"3170154\";\"Porcia\";\"main\"\n\"3170154\";\"Purcie\";\"other\"\n\"3170163\";\"Porcari\";\"main\"\n\"3170166\";\"Porano\";\"main\"\n\"3170172\";\"Poppi\";\"main\"\n\"3170175\";\"Popoli\";\"main\"\n\"3170178\";\"Ponzone\";\"main\"\n\"3170183\";\"Ponzano di Fermo\";\"main\"\n\"3170189\";\"Ponza\";\"main\"\n\"3170189\";\"pontsu~a\";\"other\"\n\"3170189\";\"pontsu~a dao\";\"other\"\n\"3170189\";\"ポンツァ\";\"other\"\n\"3170189\";\"ポンツァ島\";\"other\"\n\"3170190\";\"Pont-Saint-Martin\";\"main\"\n\"3170190\";\"Ponte San Martino\";\"other\"\n\"3170191\";\"Pontremoli\";\"main\"\n\"3170191\";\"pontoremori\";\"other\"\n\"3170191\";\"ポントレーモリ\";\"other\"\n\"3170196\";\"Pontinia\";\"main\"\n\"3170196\";\"Borgo Pasubio\";\"other\"\n\"3170196\";\"pontinia\";\"other\"\n\"3170196\";\"ポンティーニア\";\"other\"\n\"3170198\";\"Pontida\";\"main\"\n\"3170208\";\"Pontevico\";\"main\"\n\"3170213\";\"Lavena Ponte Tresa\";\"main\"\n\"3170213\";\"Ponte Tresa\";\"ascii\"\n\"3170215\";\"Pontestura\";\"main\"\n\"3170215\";\"Pont da Stura\";\"other\"\n\"3170218\";\"Ponte San Pietro\";\"main\"\n\"3170220\";\"Ponte San Nicolò\";\"main\"\n\"3170220\";\"Ponte San Nicolo\";\"ascii\"\n\"3170220\";\"Ponto San Nicolo\";\"other\"\n\"3170232\";\"Pontenure\";\"main\"\n\"3170237\";\"Ponte Nossa\";\"main\"\n\"3170237\";\"Nossa\";\"other\"\n\"3170237\";\"Ponte di Nossa\";\"other\"\n\"3170239\";\"Ponte nelle Alpi\";\"main\"\n\"3170239\";\"Ponte nell'Alpi\";\"ascii\"\n\"3170250\";\"Pontelongo\";\"main\"\n\"3170251\";\"Pontelatone\";\"main\"\n\"3170252\";\"Pontelandolfo\";\"main\"\n\"3170252\";\"Pontelandol'fo\";\"other\"\n\"3170252\";\"Понтеландольфо\";\"other\"\n\"3170253\";\"Ponte Lambro\";\"main\"\n\"3170266\";\"Ponte di Piave\";\"main\"\n\"3170269\";\"Ponte di Legno\";\"main\"\n\"3170269\";\"ponte di len'o\";\"other\"\n\"3170269\";\"Понте ди Леньо\";\"other\"\n\"3170269\";\"ポンテ・ディ・レーニョ\";\"other\"\n\"3170272\";\"Pontedera\";\"main\"\n\"3170274\";\"Ponte dell'Olio\";\"main\"\n\"3170274\";\"Ponte d'Olio\";\"other\"\n\"3170274\";\"Ponte d'Ólio\";\"other\"\n\"3170282\";\"Pontedassio\";\"main\"\n\"3170282\";\"O Pontedasce\";\"other\"\n\"3170285\";\"Pontecurone\";\"main\"\n\"3170286\";\"Pontecorvo\";\"main\"\n\"3170286\";\"Ponte Corvo\";\"other\"\n\"3170289\";\"Pontecchio Polesine\";\"main\"\n\"3170293\";\"Pontecagnano Faiano\";\"main\"\n\"3170293\";\"Pontecagnano\";\"ascii\"\n\"3170293\";\"Pontekan'jano\";\"other\"\n\"3170293\";\"Понтеканьяно\";\"other\"\n\"3170295\";\"Ponte Buggianese\";\"main\"\n\"3170297\";\"Pontebba\";\"main\"\n\"3170297\";\"Pontebe\";\"other\"\n\"3170315\";\"Ponte\";\"main\"\n\"3170316\";\"Pont-Canavese\";\"main\"\n\"3170316\";\"Pont Canavese\";\"ascii\"\n\"3170316\";\"ponto=kanavu~eze\";\"other\"\n\"3170316\";\"ポント＝カナヴェーゼ\";\"other\"\n\"3170317\";\"Pontassieve\";\"main\"\n\"3170317\";\"Pontass\";\"other\"\n\"3170320\";\"Ponso\";\"main\"\n\"3170321\";\"Ponsacco\";\"main\"\n\"3170328\";\"Poncarale\";\"main\"\n\"3170331\";\"Pomponesco\";\"main\"\n\"3170332\";\"Pompiano\";\"main\"\n\"3170335\";\"Pompei\";\"main\"\n\"3170335\";\"Pompeya\";\"other\"\n\"3170335\";\"Valle di Pompei\";\"other\"\n\"3170335\";\"Помпеи\";\"other\"\n\"3170341\";\"Pomigliano d'Arco\";\"main\"\n\"3170341\";\"Pomigliano\";\"other\"\n\"3170341\";\"ポミリアーノ・ダルコ\";\"other\"\n\"3170342\";\"Pomezia\";\"main\"\n\"3170342\";\"pometsu~ia\";\"other\"\n\"3170342\";\"ポメーツィア\";\"other\"\n\"3170346\";\"Pombia\";\"main\"\n\"3170350\";\"Pomarico\";\"main\"\n\"3170351\";\"Pomaretto\";\"main\"\n\"3170351\";\"Pomaret\";\"other\"\n\"3170352\";\"Pomarance\";\"main\"\n\"3170357\";\"Polverigi\";\"main\"\n\"3170357\";\"poruvu~eriji\";\"other\"\n\"3170357\";\"ポルヴェリージ\";\"other\"\n\"3170359\";\"Polverara\";\"main\"\n\"3170369\";\"Pollutri\";\"main\"\n\"3170370\";\"Pollone\";\"main\"\n\"3170371\";\"Pollica\";\"main\"\n\"3170372\";\"Pollenza\";\"main\"\n\"3170374\";\"Pollein\";\"main\"\n\"3170376\";\"Polla\";\"main\"\n\"3170380\";\"Polinago\";\"main\"\n\"3170382\";\"Polignano a Mare\";\"main\"\n\"3170382\";\"Polignano\";\"other\"\n\"3170384\";\"Policoro\";\"main\"\n\"3170387\";\"Poli\";\"main\"\n\"3170389\";\"Polesine Parmense\";\"main\"\n\"3170397\";\"Polesella\";\"main\"\n\"3170404\";\"Polcenigo\";\"main\"\n\"3170404\";\"Pulcini\";\"other\"\n\"3170408\";\"Poirino\";\"main\"\n\"3170408\";\"Poirin\";\"other\"\n\"3170408\";\"poirino\";\"other\"\n\"3170408\";\"ポイリーノ\";\"other\"\n\"3170414\";\"Poiana Maggiore\";\"main\"\n\"3170414\";\"Poiana\";\"other\"\n\"3170417\";\"Pogno\";\"main\"\n\"3170422\";\"Pogliano Milanese\";\"main\"\n\"3170422\";\"ポリアーノ・ミラネーゼ\";\"other\"\n\"3170425\";\"Poggiridenti\";\"main\"\n\"3170441\";\"Poggio Rusco\";\"main\"\n\"3170442\";\"Poggio Renatico\";\"main\"\n\"3170442\";\"Poggio Reratico\";\"other\"\n\"3170442\";\"Póggio Rerático\";\"other\"\n\"3170442\";\"ポッジョ・レナーティコ\";\"other\"\n\"3170450\";\"Poggio Picenze\";\"main\"\n\"3170453\";\"Poggio Nativo\";\"main\"\n\"3170455\";\"Poggio Moiano\";\"main\"\n\"3170456\";\"Poggio Mirteto\";\"main\"\n\"3170457\";\"Poggiomarino\";\"main\"\n\"3170457\";\"pojjomarino\";\"other\"\n\"3170457\";\"ポッジョマリーノ\";\"other\"\n\"3170463\";\"Poggio Imperiale\";\"main\"\n\"3170479\";\"Poggio Catino\";\"main\"\n\"3170482\";\"Poggio Bustone\";\"main\"\n\"3170483\";\"Poggio Berni\";\"main\"\n\"3170483\";\"Casa Paverani\";\"other\"\n\"3170487\";\"Poggio a Caiano\";\"main\"\n\"3170487\";\"ポッジョ・ア・カイアーノ\";\"other\"\n\"3170504\";\"Poggibonsi\";\"main\"\n\"3170504\";\"Podzhibonsi\";\"other\"\n\"3170504\";\"pojjibonshi\";\"other\"\n\"3170504\";\"Поджибонси\";\"other\"\n\"3170504\";\"ポッジボンシ\";\"other\"\n\"3170505\";\"Poggiardo\";\"main\"\n\"3170511\";\"Pofi\";\"main\"\n\"3170537\";\"Podenzano\";\"main\"\n\"3170538\";\"Podenzana\";\"main\"\n\"3170538\";\"podentsu~ana\";\"other\"\n\"3170538\";\"ポデンツァーナ\";\"other\"\n\"3170546\";\"Pocenia\";\"main\"\n\"3170546\";\"Pucinie\";\"other\"\n\"3170554\";\"Ploaghe\";\"main\"\n\"3170590\";\"Pizzoli\";\"main\"\n\"3170591\";\"Pizzoferrato\";\"main\"\n\"3170597\";\"Pizzighettone\";\"main\"\n\"3170597\";\"Picigetone\";\"other\"\n\"3170597\";\"Пицигетоне\";\"other\"\n\"3170603\";\"Piuro\";\"main\"\n\"3170603\";\"Plurs\";\"other\"\n\"3170606\";\"Piubega\";\"main\"\n\"3170614\";\"Pitigliano\";\"main\"\n\"3170615\";\"Pitigliano\";\"main\"\n\"3170617\";\"Piteglio\";\"main\"\n\"3170621\";\"Pistoia\";\"main\"\n\"3170621\";\"Pistoja\";\"other\"\n\"3170621\";\"Pistojja\";\"other\"\n\"3170621\";\"Pistola\";\"other\"\n\"3170621\";\"Pistoria\";\"other\"\n\"3170621\";\"Pistòja\";\"other\"\n\"3170621\";\"pisutoia\";\"other\"\n\"3170621\";\"Пистойя\";\"other\"\n\"3170621\";\"ピストイア\";\"other\"\n\"3170622\";\"Pisticci\";\"main\"\n\"3170622\";\"Pesticium\";\"other\"\n\"3170627\";\"Pisogne\";\"main\"\n\"3170627\";\"Piscogne\";\"other\"\n\"3170627\";\"pizonye\";\"other\"\n\"3170627\";\"ピゾーニェ\";\"other\"\n\"3170630\";\"Pisciotta\";\"main\"\n\"3170647\";\"Pisa\";\"main\"\n\"3170647\";\"Pisae\";\"other\"\n\"3170647\";\"Pise\";\"other\"\n\"3170647\";\"Piza\";\"other\"\n\"3170647\";\"Pizo\";\"other\"\n\"3170647\";\"Písa\";\"other\"\n\"3170647\";\"bi sa\";\"other\"\n\"3170647\";\"byza\";\"other\"\n\"3170647\";\"pisa\";\"other\"\n\"3170647\";\"pyzh\";\"other\"\n\"3170647\";\"Пиза\";\"other\"\n\"3170647\";\"פיזה\";\"other\"\n\"3170647\";\"بيزا\";\"other\"\n\"3170647\";\"पीसा\";\"other\"\n\"3170647\";\"ピサ\";\"other\"\n\"3170647\";\"比萨\";\"other\"\n\"3170655\";\"Piovene Rocchette\";\"main\"\n\"3170655\";\"Piovene-Rocchette\";\"other\"\n\"3170657\";\"Piove di Sacco\";\"main\"\n\"3170659\";\"Piossasco\";\"main\"\n\"3170659\";\"Piossasch\";\"other\"\n\"3170660\";\"Pioraco\";\"main\"\n\"3170670\";\"Piombino Dese\";\"main\"\n\"3170670\";\"Piombino\";\"other\"\n\"3170674\";\"Piombino\";\"main\"\n\"3170674\";\"P'ombino\";\"other\"\n\"3170674\";\"pionbino\";\"other\"\n\"3170674\";\"Пьомбино\";\"other\"\n\"3170674\";\"ピオンビーノ\";\"other\"\n\"3170676\";\"Pioltello\";\"main\"\n\"3170676\";\"pioruterro\";\"other\"\n\"3170676\";\"ピオルテッロ\";\"other\"\n\"3170678\";\"Piobesi Torinese\";\"main\"\n\"3170679\";\"Piobesi d'Alba\";\"main\"\n\"3170680\";\"Piobbico\";\"main\"\n\"3170682\";\"Pinzolo\";\"main\"\n\"3170682\";\"pintsu~oro\";\"other\"\n\"3170682\";\"ピンツォーロ\";\"other\"\n\"3170684\";\"Pinzano al Tagliamento\";\"main\"\n\"3170684\";\"Pincan\";\"other\"\n\"3170684\";\"Pinzano\";\"other\"\n\"3170688\";\"Pinocchio di Ancona\";\"main\"\n\"3170688\";\"Pinocchio\";\"other\"\n\"3170688\";\"Pinokkio-di-Ankona\";\"other\"\n\"3170688\";\"Пиноккио-ди-Анкона\";\"other\"\n\"3170692\";\"Pineto\";\"main\"\n\"3170694\";\"Pinerolo\";\"main\"\n\"3170694\";\"Penarol\";\"other\"\n\"3170694\";\"Peñarol\";\"other\"\n\"3170694\";\"Pignerol\";\"other\"\n\"3170694\";\"Pinareul\";\"other\"\n\"3170694\";\"pineroro\";\"other\"\n\"3170694\";\"Пинероло\";\"other\"\n\"3170694\";\"ピネローロ\";\"other\"\n\"3170696\";\"Pincara\";\"main\"\n\"3170699\";\"Pimonte\";\"main\"\n\"3170699\";\"pimonte\";\"other\"\n\"3170699\";\"ピモンテ\";\"other\"\n\"3170717\";\"Pignola\";\"main\"\n\"3170717\";\"Pignola di Basilicata\";\"other\"\n\"3170717\";\"Pignola di Lucania\";\"other\"\n\"3170718\";\"Pignataro Maggiore\";\"main\"\n\"3170719\";\"Pignataro Interamna\";\"main\"\n\"3170723\";\"Piglio\";\"main\"\n\"3170726\";\"Pieve Vergonte\";\"main\"\n\"3170730\";\"Pieve Torina\";\"main\"\n\"3170733\";\"Pieve Santo Stefano\";\"main\"\n\"3170734\";\"Pieve San Giacomo\";\"main\"\n\"3170736\";\"Pieve Porto Morone\";\"main\"\n\"3170737\";\"Pievepelago\";\"main\"\n\"3170739\";\"Pieve Ligure\";\"main\"\n\"3170739\";\"A Ceive de Soei\";\"other\"\n\"3170739\";\"A Ceive de Söi\";\"other\"\n\"3170740\";\"Pieve Fosciana\";\"main\"\n\"3170742\";\"Pieve d'Olmi\";\"main\"\n\"3170743\";\"Pieve di Teco\";\"main\"\n\"3170744\";\"Pieve di Soligo\";\"main\"\n\"3170752\";\"Pieve di Cento\";\"main\"\n\"3170754\";\"Pieve di Cadore\";\"main\"\n\"3170754\";\"Piava di Cadore\";\"other\"\n\"3170754\";\"Piave di Cadore\";\"other\"\n\"3170757\";\"Pieve del Cairo\";\"main\"\n\"3170758\";\"Pieve d’Alpago\";\"main\"\n\"3170758\";\"Pieve d'Alpago\";\"ascii\"\n\"3170771\";\"Pietrelcina\";\"main\"\n\"3170774\";\"Pietravairano\";\"main\"\n\"3170776\";\"Pietrastornina\";\"main\"\n\"3170778\";\"Pietrasanta\";\"main\"\n\"3170778\";\"pietorasanta\";\"other\"\n\"3170778\";\"Пиетрасанта\";\"other\"\n\"3170778\";\"ピエトラサンタ\";\"other\"\n\"3170783\";\"Pietrapertosa\";\"main\"\n\"3170789\";\"Pietramontecorvino\";\"main\"\n\"3170789\";\"Pietra Montecorvino\";\"ascii\"\n\"3170792\";\"Pietramelara\";\"main\"\n\"3170795\";\"Pietralunga\";\"main\"\n\"3170797\";\"Pietra Ligure\";\"main\"\n\"3170797\";\"A Pria\";\"other\"\n\"3170797\";\"A Prïa\";\"other\"\n\"3170801\";\"Pietragalla\";\"main\"\n\"3170811\";\"Pietradefusi\";\"main\"\n\"3170816\";\"Pietracatella\";\"main\"\n\"3170829\";\"Pienza\";\"main\"\n\"3170829\";\"Pientia\";\"other\"\n\"3170829\";\"pientsu~a\";\"other\"\n\"3170829\";\"ピエンツァ\";\"other\"\n\"3170837\";\"Piegaro\";\"main\"\n\"3170840\";\"Piedimulera\";\"main\"\n\"3170842\";\"Piedimonte San Germano\";\"main\"\n\"3170863\";\"Pico\";\"main\"\n\"3170863\";\"piko\";\"other\"\n\"3170863\";\"ピーコ\";\"other\"\n\"3170864\";\"Picinisco\";\"main\"\n\"3170866\";\"Picerno\";\"main\"\n\"3170881\";\"Picciano\";\"main\"\n\"3170886\";\"Piazzola sul Brenta\";\"main\"\n\"3170886\";\"Piazzola\";\"other\"\n\"3170895\";\"Piazza Brembana\";\"main\"\n\"3170896\";\"Piazza al Serchio\";\"main\"\n\"3170896\";\"Piassa al Serchio\";\"other\"\n\"3170916\";\"Piateda\";\"main\"\n\"3170918\";\"Piasco\";\"main\"\n\"3170925\";\"Piantedo\";\"main\"\n\"3170931\";\"Piansano\";\"main\"\n\"3170937\";\"Pianoro\";\"main\"\n\"3170943\";\"Piano di Sorrento\";\"main\"\n\"3170943\";\"Piano 'e Surriento\";\"other\"\n\"3170943\";\"ピャーノ・ディ・ソッレント\";\"other\"\n\"3170946\";\"Follo\";\"main\"\n\"3170946\";\"Piano di Follo\";\"ascii\"\n\"3170946\";\"Folo\";\"other\"\n\"3170946\";\"San Martino Durasoa\";\"other\"\n\"3170963\";\"Pianiga\";\"main\"\n\"3170963\";\"pyaniga\";\"other\"\n\"3170963\";\"ピャニーガ\";\"other\"\n\"3170977\";\"Pianezze\";\"main\"\n\"3170978\";\"Pianezza\";\"main\"\n\"3170978\";\"Pianessa\";\"other\"\n\"3170978\";\"Pianëssa\";\"other\"\n\"3170978\";\"pianettsu~a\";\"other\"\n\"3170978\";\"ピアネッツァ\";\"other\"\n\"3170981\";\"Pianello Val Tidone\";\"main\"\n\"3170988\";\"Pianella\";\"main\"\n\"3170997\";\"Pian di Scò\";\"main\"\n\"3170997\";\"Pian di Sco\";\"ascii\"\n\"3171001\";\"Piandimeleto\";\"main\"\n\"3171012\";\"Piancogno\";\"main\"\n\"3171016\";\"Piancastagnaio\";\"main\"\n\"3171016\";\"Pian Castagnajo\";\"other\"\n\"3171016\";\"piankasutanyaio\";\"other\"\n\"3171016\";\"ピアンカスタニャーイオ\";\"other\"\n\"3171017\";\"Pian Camuno\";\"main\"\n\"3171017\";\"Pian d'Artogne\";\"other\"\n\"3171046\";\"Piaggine\";\"main\"\n\"3171055\";\"Piadena\";\"main\"\n\"3171056\";\"Piacenza d'Adige\";\"main\"\n\"3171058\";\"Piacenza\";\"main\"\n\"3171058\";\"P'jachehnca\";\"other\"\n\"3171058\";\"P'jachenca\";\"other\"\n\"3171058\";\"Piaseinsa\";\"other\"\n\"3171058\";\"Piasensa\";\"other\"\n\"3171058\";\"Piasëinsa\";\"other\"\n\"3171058\";\"Placencia\";\"other\"\n\"3171058\";\"Placentia\";\"other\"\n\"3171058\";\"Placência\";\"other\"\n\"3171058\";\"Plaisance\";\"other\"\n\"3171058\";\"Plasencia\";\"other\"\n\"3171058\";\"pi ya qin cha\";\"other\"\n\"3171058\";\"piachentsu~a\";\"other\"\n\"3171058\";\"pyachnza\";\"other\"\n\"3171058\";\"П'ячэнца\";\"other\"\n\"3171058\";\"Пьяченца\";\"other\"\n\"3171058\";\"پیاچنزا\";\"other\"\n\"3171058\";\"ピアチェンツァ\";\"other\"\n\"3171058\";\"皮亚琴察\";\"other\"\n\"3171071\";\"Pezzana\";\"main\"\n\"3171074\";\"Peveragno\";\"main\"\n\"3171076\";\"Pettorazza Grimani\";\"main\"\n\"3171076\";\"Pettorazza\";\"other\"\n\"3171077\";\"Pettorano sul Gizio\";\"main\"\n\"3171081\";\"Pettinengo\";\"main\"\n\"3171094\";\"Petritoli\";\"main\"\n\"3171095\";\"Petriolo\";\"main\"\n\"3171099\";\"Petriano\";\"main\"\n\"3171100\";\"Petrella Tifernina\";\"main\"\n\"3171101\";\"Petrella Salto\";\"main\"\n\"3171112\";\"Petina\";\"main\"\n\"3171114\";\"Petacciato\";\"main\"\n\"3171117\";\"Pessione\";\"main\"\n\"3171117\";\"Пессионе\";\"other\"\n\"3171122\";\"Pescosolido\";\"main\"\n\"3171124\";\"Pesco Sannita\";\"main\"\n\"3171124\";\"Pescolamazza\";\"other\"\n\"3171125\";\"Pescorocchiano\";\"main\"\n\"3171127\";\"Pescopagano\";\"main\"\n\"3171131\";\"Pescolanciano\";\"main\"\n\"3171136\";\"Pescocostanzo\";\"main\"\n\"3171141\";\"Pescina\";\"main\"\n\"3171148\";\"Pescia\";\"main\"\n\"3171148\";\"Pesha\";\"other\"\n\"3171148\";\"Pesia\";\"other\"\n\"3171148\";\"pesha\";\"other\"\n\"3171148\";\"Πέσια\";\"other\"\n\"3171148\";\"Пеша\";\"other\"\n\"3171148\";\"ペーシャ\";\"other\"\n\"3171152\";\"Peschiera del Garda\";\"main\"\n\"3171152\";\"Peschiera\";\"other\"\n\"3171152\";\"Peschiera sul Lago di Garda\";\"other\"\n\"3171152\";\"Pesciera\";\"other\"\n\"3171152\";\"ペスキエーラ・デル・ガルダ\";\"other\"\n\"3171155\";\"Peschiera Borromeo\";\"main\"\n\"3171155\";\"Peschiera\";\"ascii\"\n\"3171157\";\"Peschici\";\"main\"\n\"3171158\";\"Pesche\";\"main\"\n\"3171159\";\"Pescasseroli\";\"main\"\n\"3171160\";\"Pescarolo ed Uniti\";\"main\"\n\"3171168\";\"Pescara\";\"main\"\n\"3171168\";\"Peskara\";\"other\"\n\"3171168\";\"byskara\";\"other\"\n\"3171168\";\"pesukara\";\"other\"\n\"3171168\";\"Пескара\";\"other\"\n\"3171168\";\"بيسكارا\";\"other\"\n\"3171168\";\"ペスカーラ\";\"other\"\n\"3171169\";\"Pescantina\";\"main\"\n\"3171171\";\"Pescaglia\";\"main\"\n\"3171173\";\"Pesaro\";\"main\"\n\"3171173\";\"Pesaru\";\"other\"\n\"3171173\";\"Pezaro\";\"other\"\n\"3171173\";\"Pisaurum\";\"other\"\n\"3171173\";\"Pèsaru\";\"other\"\n\"3171173\";\"pezaro\";\"other\"\n\"3171173\";\"Пезаро\";\"other\"\n\"3171173\";\"ペーザロ\";\"other\"\n\"3171180\";\"Perugia\";\"main\"\n\"3171180\";\"Perosa\";\"other\"\n\"3171180\";\"Perouse\";\"other\"\n\"3171180\";\"Perudzha\";\"other\"\n\"3171180\";\"Perusa\";\"other\"\n\"3171180\";\"Perusia\";\"other\"\n\"3171180\";\"Pérouse\";\"other\"\n\"3171180\";\"byrwdja\";\"other\"\n\"3171180\";\"pei lu jia\";\"other\"\n\"3171180\";\"peruja\";\"other\"\n\"3171180\";\"prwg'h\";\"other\"\n\"3171180\";\"Перуджа\";\"other\"\n\"3171180\";\"Перуђа\";\"other\"\n\"3171180\";\"פרוג'ה\";\"other\"\n\"3171180\";\"بيرودجا\";\"other\"\n\"3171180\";\"ペルージャ\";\"other\"\n\"3171180\";\"佩鲁贾\";\"other\"\n\"3171193\";\"Perosa Argentina\";\"main\"\n\"3171193\";\"Peirosa\";\"other\"\n\"3171193\";\"ペローザ・アルジェンティーナ\";\"other\"\n\"3171199\";\"Pernumia\";\"main\"\n\"3171205\";\"Perito\";\"main\"\n\"3171212\";\"Pergola\";\"main\"\n\"3171214\";\"Pergine Valsugana\";\"main\"\n\"3171214\";\"Pergine\";\"other\"\n\"3171214\";\"Perigine Valsugana\";\"other\"\n\"3171214\";\"ペルジーネ・ヴァルスガーナ\";\"other\"\n\"3171215\";\"Pergine Valdarno\";\"main\"\n\"3171215\";\"Pergine\";\"other\"\n\"3171216\";\"Perfugas\";\"main\"\n\"3171222\";\"Perdifumo\";\"main\"\n\"3171225\";\"Perca - Percha\";\"main\"\n\"3171225\";\"Perca\";\"ascii\"\n\"3171225\";\"Percha\";\"other\"\n\"3171225\";\"peruka\";\"other\"\n\"3171225\";\"ペルカ\";\"other\"\n\"3171230\";\"Perano\";\"main\"\n\"3171247\";\"Penne\";\"main\"\n\"3171247\";\"pen'ne\";\"other\"\n\"3171247\";\"ペンネ\";\"other\"\n\"3171248\";\"Penna Sant'Andrea\";\"main\"\n\"3171249\";\"Penna San Giovanni\";\"main\"\n\"3171251\";\"Penna in Teverina\";\"main\"\n\"3171254\";\"Pennabilli\";\"main\"\n\"3171254\";\"Pennabili\";\"other\"\n\"3171254\";\"Pennábili\";\"other\"\n\"3171283\";\"Pellezzano\";\"main\"\n\"3171289\";\"Pellegrino Parmense\";\"main\"\n\"3171295\";\"Pella\";\"main\"\n\"3171297\";\"Pelago\";\"main\"\n\"3171300\";\"Peio\";\"main\"\n\"3171300\";\"peio\";\"other\"\n\"3171300\";\"ペーイオ\";\"other\"\n\"3171305\";\"Pegognaga\";\"main\"\n\"3171336\";\"Pederobba\";\"main\"\n\"3171338\";\"Pedavena\";\"main\"\n\"3171339\";\"Pedaso\";\"main\"\n\"3171350\";\"Pecetto di Valenza\";\"main\"\n\"3171351\";\"Pecetto Torinese\";\"main\"\n\"3171351\";\"Pecetto\";\"ascii\"\n\"3171352\";\"Peccioli\";\"main\"\n\"3171355\";\"Pavullo nel Frignano\";\"main\"\n\"3171355\";\"Paullo nel Frignano\";\"other\"\n\"3171355\";\"Pavullo\";\"other\"\n\"3171355\";\"pavulo nel frinjano\";\"other\"\n\"3171355\";\"Павуло нел Фриняно\";\"other\"\n\"3171355\";\"パヴッロ・ネル・フリニャーノ\";\"other\"\n\"3171356\";\"Pavone del Mella\";\"main\"\n\"3171356\";\"Pavone\";\"other\"\n\"3171358\";\"Pavone Canavese\";\"main\"\n\"3171358\";\"Pavon\";\"other\"\n\"3171358\";\"パヴォーネ・カナヴェーゼ\";\"other\"\n\"3171366\";\"Pavia\";\"main\"\n\"3171366\";\"Papia\";\"other\"\n\"3171366\";\"Pavie\";\"other\"\n\"3171366\";\"Pavija\";\"other\"\n\"3171366\";\"Pavio\";\"other\"\n\"3171366\";\"Pavìa\";\"other\"\n\"3171366\";\"Pavía\";\"other\"\n\"3171366\";\"Pawia\";\"other\"\n\"3171366\";\"Ticinum\";\"other\"\n\"3171366\";\"pa wei ya\";\"other\"\n\"3171366\";\"pavu~ia\";\"other\"\n\"3171366\";\"Павия\";\"other\"\n\"3171366\";\"パヴィア\";\"other\"\n\"3171366\";\"帕維亞\";\"other\"\n\"3171369\";\"Paupisi\";\"main\"\n\"3171369\";\"Popisi\";\"other\"\n\"3171370\";\"Paullo\";\"main\"\n\"3171370\";\"paurro\";\"other\"\n\"3171370\";\"パウッロ\";\"other\"\n\"3171371\";\"Paulilatino\";\"main\"\n\"3171372\";\"Paularo\";\"main\"\n\"3171372\";\"Paular\";\"other\"\n\"3171376\";\"Pattada\";\"main\"\n\"3171378\";\"Patrica\";\"main\"\n\"3171382\";\"Paternopoli\";\"main\"\n\"3171392\";\"Paterno\";\"main\"\n\"3171392\";\"pateruno\";\"other\"\n\"3171392\";\"パテルノ\";\"other\"\n\"3171399\";\"Pastrengo\";\"main\"\n\"3171406\";\"Pastena\";\"main\"\n\"3171416\";\"Passirano\";\"main\"\n\"3171418\";\"Passignano sul Trasimeno\";\"main\"\n\"3171418\";\"Passignano\";\"other\"\n\"3171431\";\"Pasiano di Pordenone\";\"main\"\n\"3171431\";\"Pasiano\";\"ascii\"\n\"3171431\";\"Pasiano di Pordenon\";\"other\"\n\"3171432\";\"Pasian di Prato\";\"main\"\n\"3171432\";\"Pasian di Prat\";\"other\"\n\"3171439\";\"Paruzzaro\";\"main\"\n\"3171445\";\"Parre\";\"main\"\n\"3171450\";\"Parona\";\"main\"\n\"3171457\";\"Parma\";\"main\"\n\"3171457\";\"Parme\";\"other\"\n\"3171457\";\"Perma\";\"other\"\n\"3171457\";\"Pèrma\";\"other\"\n\"3171457\";\"barma\";\"other\"\n\"3171457\";\"parma\";\"other\"\n\"3171457\";\"paruma\";\"other\"\n\"3171457\";\"Парма\";\"other\"\n\"3171457\";\"פארמה\";\"other\"\n\"3171457\";\"بارما\";\"other\"\n\"3171457\";\"پارما\";\"other\"\n\"3171457\";\"パルマ\";\"other\"\n\"3171468\";\"Parcines - Partschins\";\"main\"\n\"3171468\";\"Parcines\";\"ascii\"\n\"3171468\";\"Partschins\";\"other\"\n\"3171468\";\"paruchinesu\";\"other\"\n\"3171468\";\"パルチーネス\";\"other\"\n\"3171471\";\"Paratico\";\"main\"\n\"3171483\";\"Parabita\";\"main\"\n\"3171484\";\"Parabiago\";\"main\"\n\"3171484\";\"parabiago\";\"other\"\n\"3171484\";\"パラビアーゴ\";\"other\"\n\"3171486\";\"Papozze\";\"main\"\n\"3171495\";\"Paolisi\";\"main\"\n\"3171502\";\"Pantigliate\";\"main\"\n\"3171502\";\"pantiriate\";\"other\"\n\"3171502\";\"パンティリアーテ\";\"other\"\n\"3171519\";\"Pannarano\";\"main\"\n\"3171523\";\"Panicale\";\"main\"\n\"3171529\";\"Pandino\";\"main\"\n\"3171533\";\"Pancalieri\";\"main\"\n\"3171533\";\"Pancale\";\"other\"\n\"3171533\";\"Pancalé\";\"other\"\n\"3171533\";\"pankarieri\";\"other\"\n\"3171533\";\"パンカリエーリ\";\"other\"\n\"3171541\";\"Paluzza\";\"main\"\n\"3171541\";\"Paluce\";\"other\"\n\"3171547\";\"Palù\";\"main\"\n\"3171547\";\"Palu\";\"ascii\"\n\"3171550\";\"Palosco\";\"main\"\n\"3171551\";\"Palomonte\";\"main\"\n\"3171557\";\"Palombaro\";\"main\"\n\"3171558\";\"Palombara Sabina\";\"main\"\n\"3171558\";\"パロンバーラ・サビーナ\";\"other\"\n\"3171562\";\"Palo del Colle\";\"main\"\n\"3171562\";\"Palo-del'-Kolle\";\"other\"\n\"3171562\";\"Пало-дель-Колле\";\"other\"\n\"3171570\";\"Palmariggi\";\"main\"\n\"3171573\";\"Palmanova\";\"main\"\n\"3171573\";\"Palmanov\";\"other\"\n\"3171573\";\"Palme\";\"other\"\n\"3171576\";\"Palma Campania\";\"main\"\n\"3171576\";\"パルマ・カンパーニア\";\"other\"\n\"3171586\";\"Palazzolo sull'Oglio\";\"main\"\n\"3171586\";\"Pallazzolo sull'Oglio\";\"ascii\"\n\"3171586\";\"Palazzolo\";\"other\"\n\"3171590\";\"Pallanzeno\";\"main\"\n\"3171603\";\"Paliano\";\"main\"\n\"3171605\";\"Palestro\";\"main\"\n\"3171606\";\"Palestrina\";\"main\"\n\"3171606\";\"Praeneste\";\"other\"\n\"3171606\";\"paresutorina\";\"other\"\n\"3171606\";\"Палестрина\";\"other\"\n\"3171606\";\"パレストリーナ\";\"other\"\n\"3171611\";\"Palena\";\"main\"\n\"3171611\";\"Polena\";\"other\"\n\"3171615\";\"Palazzuolo sul Senio\";\"main\"\n\"3171615\";\"Palazzuolo\";\"other\"\n\"3171615\";\"Palazzuolo di Romagna\";\"other\"\n\"3171619\";\"Palazzo San Gervasio\";\"main\"\n\"3171624\";\"Palazzolo Vercellese\";\"main\"\n\"3171624\";\"Palazzolo\";\"other\"\n\"3171625\";\"Palazzolo dello Stella\";\"main\"\n\"3171625\";\"Palacul\";\"other\"\n\"3171625\";\"Palazzolo\";\"other\"\n\"3171654\";\"Palau\";\"main\"\n\"3171654\";\"parau\";\"other\"\n\"3171654\";\"パラウ\";\"other\"\n\"3171657\";\"Palata\";\"main\"\n\"3171658\";\"Palanzano\";\"main\"\n\"3171660\";\"Palaia\";\"main\"\n\"3171664\";\"Palagiano\";\"main\"\n\"3171665\";\"Palagianello\";\"main\"\n\"3171666\";\"Palagano\";\"main\"\n\"3171673\";\"Pago Veiano\";\"main\"\n\"3171678\";\"Paglieta\";\"main\"\n\"3171703\";\"Pagani\";\"main\"\n\"3171703\";\"pagani\";\"other\"\n\"3171703\";\"パガーニ\";\"other\"\n\"3171710\";\"Paese\";\"main\"\n\"3171711\";\"Paesana\";\"main\"\n\"3171715\";\"Paduli\";\"main\"\n\"3171718\";\"Padula\";\"main\"\n\"3171721\";\"Padru\";\"main\"\n\"3171721\";\"Padra\";\"other\"\n\"3171728\";\"Padova\";\"main\"\n\"3171728\";\"Padoa\";\"other\"\n\"3171728\";\"Padoue\";\"other\"\n\"3171728\";\"Padovo\";\"other\"\n\"3171728\";\"Padua\";\"other\"\n\"3171728\";\"Paduja\";\"other\"\n\"3171728\";\"Padwa\";\"other\"\n\"3171728\";\"Patavium\";\"other\"\n\"3171728\";\"Pàdua\";\"other\"\n\"3171728\";\"Pádua\";\"other\"\n\"3171728\";\"badwfa\";\"other\"\n\"3171728\";\"pa duo wa\";\"other\"\n\"3171728\";\"padoba\";\"other\"\n\"3171728\";\"padovu~a\";\"other\"\n\"3171728\";\"Падова\";\"other\"\n\"3171728\";\"Падуа\";\"other\"\n\"3171728\";\"Падуя\";\"other\"\n\"3171728\";\"פאדובה\";\"other\"\n\"3171728\";\"بادوفا\";\"other\"\n\"3171728\";\"პადუა\";\"other\"\n\"3171728\";\"パドヴァ\";\"other\"\n\"3171728\";\"帕多瓦\";\"other\"\n\"3171728\";\"파도바\";\"other\"\n\"3171736\";\"Paderno Franciacorta\";\"main\"\n\"3171736\";\"パデルノ・フランチャコルタ\";\"other\"\n\"3171737\";\"Paderno Dugnano\";\"main\"\n\"3171737\";\"パデルノ・ドゥニャーノ\";\"other\"\n\"3171738\";\"Paderno d'Adda\";\"main\"\n\"3171742\";\"Paderno Ponchielli\";\"main\"\n\"3171742\";\"Paderno\";\"ascii\"\n\"3171748\";\"Padenghe sul Garda\";\"main\"\n\"3171748\";\"Padenghe\";\"other\"\n\"3171753\";\"Pacentro\";\"main\"\n\"3171757\";\"Ozzero\";\"main\"\n\"3171757\";\"ottsu~ero\";\"other\"\n\"3171757\";\"オッツェロ\";\"other\"\n\"3171758\";\"Ozzano Monferrato\";\"main\"\n\"3171758\";\"Ozzano\";\"other\"\n\"3171760\";\"Ozieri\";\"main\"\n\"3171762\";\"Ozegna\";\"main\"\n\"3171762\";\"ozenya\";\"other\"\n\"3171762\";\"オゼーニャ\";\"other\"\n\"3171765\";\"Ovodda\";\"main\"\n\"3171768\";\"Ovindoli\";\"main\"\n\"3171770\";\"Ovaro\";\"main\"\n\"3171770\";\"Davar\";\"other\"\n\"3171771\";\"Ovada\";\"main\"\n\"3171772\";\"Oulx\";\"main\"\n\"3171772\";\"Ols\";\"other\"\n\"3171772\";\"Ors\";\"other\"\n\"3171772\";\"Ulzia\";\"other\"\n\"3171772\";\"Ulzio\";\"other\"\n\"3171772\";\"urukusu\";\"other\"\n\"3171772\";\"ウルクス\";\"other\"\n\"3171774\";\"Ottobiano\";\"main\"\n\"3171778\";\"Ottaviano\";\"main\"\n\"3171782\";\"Ottana\";\"main\"\n\"3171783\";\"Otricoli\";\"main\"\n\"3171785\";\"Otranto\";\"main\"\n\"3171785\";\"Derento\";\"other\"\n\"3171785\";\"Derentò\";\"other\"\n\"3171785\";\"Òtranto\";\"other\"\n\"3171786\";\"Ostuni\";\"main\"\n\"3171786\";\"Остуни\";\"other\"\n\"3171787\";\"Ostra Vetere\";\"main\"\n\"3171787\";\"Ostra\";\"other\"\n\"3171787\";\"オストラ・ヴェーテレ\";\"other\"\n\"3171788\";\"Ostra\";\"main\"\n\"3171788\";\"osutora\";\"other\"\n\"3171788\";\"オストラ\";\"other\"\n\"3171792\";\"Ostiglia\";\"main\"\n\"3171794\";\"Ostiano\";\"main\"\n\"3171808\";\"Ostellato\";\"main\"\n\"3171811\";\"Ossona\";\"main\"\n\"3171811\";\"ossona\";\"other\"\n\"3171811\";\"オッソーナ\";\"other\"\n\"3171814\";\"Ossi\";\"main\"\n\"3171817\";\"Ossago Lodigiano\";\"main\"\n\"3171817\";\"Ossago\";\"ascii\"\n\"3171819\";\"Ospitaletto\";\"main\"\n\"3171821\";\"Ospitaletto\";\"main\"\n\"3171829\";\"Ospedaletto Euganeo\";\"main\"\n\"3171830\";\"Ospedaletto d'Alpinolo\";\"main\"\n\"3171839\";\"Ospedaletti\";\"main\"\n\"3171839\";\"Spiareti\";\"other\"\n\"3171842\";\"Osoppo\";\"main\"\n\"3171842\";\"Osof\";\"other\"\n\"3171844\";\"Osnago\";\"main\"\n\"3171848\";\"Osimo\";\"main\"\n\"3171848\";\"ojimo\";\"other\"\n\"3171848\";\"Осимо\";\"other\"\n\"3171848\";\"オージモ\";\"other\"\n\"3171849\";\"Osilo\";\"main\"\n\"3171861\";\"Oschiri\";\"main\"\n\"3171868\";\"Orzivecchi\";\"main\"\n\"3171869\";\"Orzinuovi\";\"main\"\n\"3171869\";\"Castrum Urceorum Novorum\";\"other\"\n\"3171869\";\"orutsu~inuovu~i\";\"other\"\n\"3171869\";\"オルツィヌオーヴィ\";\"other\"\n\"3171874\";\"Orvieto\";\"main\"\n\"3171874\";\"oruvu~ieto\";\"other\"\n\"3171874\";\"Орвието\";\"other\"\n\"3171874\";\"オルヴィエート\";\"other\"\n\"3171878\";\"Orune\";\"main\"\n\"3171881\";\"Ortueri\";\"main\"\n\"3171882\";\"Ortucchio\";\"main\"\n\"3171883\";\"Ortovero\";\"main\"\n\"3171883\";\"Ortoe\";\"other\"\n\"3171883\";\"Ortoê\";\"other\"\n\"3171884\";\"Ortonovo\";\"main\"\n\"3171884\";\"Orteneuo\";\"other\"\n\"3171884\";\"Ortëneuo\";\"other\"\n\"3171886\";\"Ortona\";\"main\"\n\"3171886\";\"Ortona a Mare\";\"other\"\n\"3171886\";\"Ортона\";\"other\"\n\"3171891\";\"Ortisei - St. Ulrich\";\"main\"\n\"3171891\";\"Ortisei\";\"ascii\"\n\"3171891\";\"St. Ulrich in Groeden\";\"other\"\n\"3171891\";\"St. Ulrich in Gröden\";\"other\"\n\"3171891\";\"Urtijei\";\"other\"\n\"3171891\";\"Urtijëi\";\"other\"\n\"3171891\";\"orutizei\";\"other\"\n\"3171891\";\"オルティゼーイ\";\"other\"\n\"3171896\";\"Ortelle\";\"main\"\n\"3171898\";\"Orte\";\"main\"\n\"3171898\";\"orute\";\"other\"\n\"3171898\";\"オルテ\";\"other\"\n\"3171899\";\"Orta San Giulio\";\"main\"\n\"3171899\";\"Orta\";\"other\"\n\"3171899\";\"オルタ・サン・ジューリオ\";\"other\"\n\"3171900\";\"Orta Nova\";\"main\"\n\"3171905\";\"Orsogna\";\"main\"\n\"3171912\";\"Orsenigo\";\"main\"\n\"3171914\";\"Orsara di Puglia\";\"main\"\n\"3171914\";\"Orsara Danno Irpina\";\"other\"\n\"3171917\";\"Orria\";\"main\"\n\"3171919\";\"Orotelli\";\"main\"\n\"3171921\";\"Orosei\";\"main\"\n\"3171935\";\"Ornavasso\";\"main\"\n\"3171939\";\"Ornago\";\"main\"\n\"3171939\";\"orunago\";\"other\"\n\"3171939\";\"オルナーゴ\";\"other\"\n\"3171942\";\"Ormea\";\"main\"\n\"3171947\";\"Oriolo Romano\";\"main\"\n\"3171947\";\"Oriolo\";\"other\"\n\"3171950\";\"Oriolo\";\"main\"\n\"3171951\";\"Orio Litta\";\"main\"\n\"3171951\";\"オーリオ・リッタ\";\"other\"\n\"3171953\";\"Orio al Serio\";\"main\"\n\"3171955\";\"Origgio\";\"main\"\n\"3171961\";\"Oria\";\"main\"\n\"3171962\";\"Orgosolo\";\"main\"\n\"3171962\";\"Orgòsolo\";\"other\"\n\"3171965\";\"Orgiano\";\"main\"\n\"3171973\";\"Ordona\";\"main\"\n\"3171977\";\"Orciano di Pesaro\";\"main\"\n\"3171985\";\"Orbetello\";\"main\"\n\"3171985\";\"Orbetellu\";\"other\"\n\"3171985\";\"Орбетелло\";\"other\"\n\"3171986\";\"Orbassano\";\"main\"\n\"3171986\";\"Orbassan\";\"other\"\n\"3171986\";\"orubassano\";\"other\"\n\"3171986\";\"Орбассано\";\"other\"\n\"3171986\";\"オルバッサーノ\";\"other\"\n\"3171990\";\"Oratino\";\"main\"\n\"3171992\";\"Orani\";\"main\"\n\"3171993\";\"Ora - Auer\";\"main\"\n\"3171993\";\"Ora\";\"ascii\"\n\"3171993\";\"Auer\";\"other\"\n\"3171993\";\"ora\";\"other\"\n\"3171993\";\"オーラ\";\"other\"\n\"3171994\";\"Oppido Lucano\";\"main\"\n\"3171994\";\"Palinira\";\"other\"\n\"3171994\";\"Palmira\";\"other\"\n\"3171995\";\"Oppeano\";\"main\"\n\"3172000\";\"Opera\";\"main\"\n\"3172000\";\"opera\";\"other\"\n\"3172000\";\"オーペラ\";\"other\"\n\"3172016\";\"Onano\";\"main\"\n\"3172016\";\"onano\";\"other\"\n\"3172016\";\"オナーノ\";\"other\"\n\"3172020\";\"Omignano\";\"main\"\n\"3172023\";\"Omegna\";\"main\"\n\"3172023\";\"omenja\";\"other\"\n\"3172023\";\"omenya\";\"other\"\n\"3172023\";\"Оменя\";\"other\"\n\"3172023\";\"オメーニャ\";\"other\"\n\"3172031\";\"Olzai\";\"main\"\n\"3172032\";\"Oltrona di San Mamette\";\"main\"\n\"3172033\";\"Oltre il Colle\";\"main\"\n\"3172042\";\"Olmedo\";\"main\"\n\"3172043\";\"Ollolai\";\"main\"\n\"3172050\";\"Oliveto Lario\";\"main\"\n\"3172050\";\"Vassena\";\"other\"\n\"3172051\";\"Oliveto Citra\";\"main\"\n\"3172059\";\"Oliena\";\"main\"\n\"3172059\";\"Uliana\";\"other\"\n\"3172059\";\"Ulìana\";\"other\"\n\"3172059\";\"Олиена\";\"other\"\n\"3172064\";\"Olginate\";\"main\"\n\"3172065\";\"Olgiate Olona\";\"main\"\n\"3172067\";\"Olgiate Comasco\";\"main\"\n\"3172067\";\"Olgiate\";\"other\"\n\"3172067\";\"Olgiate Novocomense\";\"other\"\n\"3172073\";\"Olevano sul Tusciano\";\"main\"\n\"3172074\";\"Olevano Romano\";\"main\"\n\"3172074\";\"Olevano\";\"other\"\n\"3172074\";\"オレーヴァノ・ロマーノ\";\"other\"\n\"3172079\";\"Oleggio\";\"main\"\n\"3172087\";\"Olbia\";\"main\"\n\"3172087\";\"Ol'bija\";\"other\"\n\"3172087\";\"Tarranoa\";\"other\"\n\"3172087\";\"Tarranóa\";\"other\"\n\"3172087\";\"Terranoa\";\"other\"\n\"3172087\";\"Terranòa\";\"other\"\n\"3172087\";\"Ольбия\";\"other\"\n\"3172098\";\"Ogliastro Cilento\";\"main\"\n\"3172098\";\"Ogliastro\";\"other\"\n\"3172099\";\"Oglianico\";\"main\"\n\"3172099\";\"orianiko\";\"other\"\n\"3172099\";\"オリアーニコ\";\"other\"\n\"3172101\";\"Oggiono\";\"main\"\n\"3172101\";\"Odzhono\";\"other\"\n\"3172101\";\"Оджоно\";\"other\"\n\"3172103\";\"Offlaga\";\"main\"\n\"3172104\";\"Offida\";\"main\"\n\"3172107\";\"Offanengo\";\"main\"\n\"3172109\";\"Offagna\";\"main\"\n\"3172109\";\"offanya\";\"other\"\n\"3172109\";\"オッファーニャ\";\"other\"\n\"3172115\";\"Odolo\";\"main\"\n\"3172115\";\"odoro\";\"other\"\n\"3172115\";\"オードロ\";\"other\"\n\"3172116\";\"Oderzo\";\"main\"\n\"3172127\";\"Occimiano\";\"main\"\n\"3172128\";\"Occhiobello\";\"main\"\n\"3172130\";\"Occhieppo Superiore\";\"main\"\n\"3172131\";\"Occhieppo Inferiore\";\"main\"\n\"3172133\";\"Nuvolento\";\"main\"\n\"3172134\";\"Nusco\";\"main\"\n\"3172154\";\"Nuoro\";\"main\"\n\"3172154\";\"Nugoro\";\"other\"\n\"3172154\";\"Nùgoro\";\"other\"\n\"3172154\";\"nuoro\";\"other\"\n\"3172154\";\"Нуоро\";\"other\"\n\"3172154\";\"ヌオロ\";\"other\"\n\"3172157\";\"Numana\";\"main\"\n\"3172157\";\"numana\";\"other\"\n\"3172157\";\"ヌマーナ\";\"other\"\n\"3172158\";\"Nulvi\";\"main\"\n\"3172159\";\"Nule\";\"main\"\n\"3172162\";\"Nughedu San Nicolò\";\"main\"\n\"3172162\";\"Nughedu di San Nicolo\";\"ascii\"\n\"3172162\";\"Nughedu San Nicolo\";\"other\"\n\"3172168\";\"Novoli\";\"main\"\n\"3172169\";\"Novi Velia\";\"main\"\n\"3172170\";\"Novi Ligure\";\"main\"\n\"3172170\";\"Novi-Ligure\";\"other\"\n\"3172170\";\"Нови-Лигуре\";\"other\"\n\"3172170\";\"ノーヴィ・リーグレ\";\"other\"\n\"3172172\";\"Novi di Modena\";\"main\"\n\"3172173\";\"Noventa Vicentina\";\"main\"\n\"3172173\";\"Noventa\";\"other\"\n\"3172175\";\"Noventa di Piave\";\"main\"\n\"3172175\";\"ノヴェンタ・ディ・ピアーヴェ\";\"other\"\n\"3172177\";\"Novellara\";\"main\"\n\"3172183\";\"Nove\";\"main\"\n\"3172183\";\"novu~e\";\"other\"\n\"3172183\";\"ノーヴェ\";\"other\"\n\"3172184\";\"Novate Milanese\";\"main\"\n\"3172184\";\"ノヴァーテ・ミラネーゼ\";\"other\"\n\"3172185\";\"Novate Mezzola\";\"main\"\n\"3172185\";\"Novate\";\"other\"\n\"3172187\";\"Nova Siri\";\"main\"\n\"3172189\";\"Novara\";\"main\"\n\"3172189\";\"Novare\";\"other\"\n\"3172189\";\"Novaria\";\"other\"\n\"3172189\";\"Nuara\";\"other\"\n\"3172189\";\"Nuvara\";\"other\"\n\"3172189\";\"novu~ara\";\"other\"\n\"3172189\";\"Новара\";\"other\"\n\"3172189\";\"ノヴァーラ\";\"other\"\n\"3172190\";\"Nova Ponente - Deutschnofen\";\"main\"\n\"3172190\";\"Deutschnofen\";\"other\"\n\"3172190\";\"Nova Ponente\";\"other\"\n\"3172190\";\"ノーヴァ・ポネンテ\";\"other\"\n\"3172191\";\"Nova Milanese\";\"main\"\n\"3172191\";\"ノーヴァ・ミラネーゼ\";\"other\"\n\"3172192\";\"Nova Levante - Welschnofen\";\"main\"\n\"3172192\";\"Nova Levante\";\"ascii\"\n\"3172192\";\"Welschnofen\";\"other\"\n\"3172192\";\"ノーヴァ・レヴァンテ\";\"other\"\n\"3172195\";\"Novafeltria\";\"main\"\n\"3172195\";\"Mercatino\";\"other\"\n\"3172195\";\"Mercatino Marecchia\";\"other\"\n\"3172199\";\"Notaresco\";\"main\"\n\"3172204\";\"Norma\";\"main\"\n\"3172208\";\"Norcia\";\"main\"\n\"3172208\";\"Nursja\";\"other\"\n\"3172208\";\"norucha\";\"other\"\n\"3172208\";\"ノルチャ\";\"other\"\n\"3172211\";\"Norbello\";\"main\"\n\"3172215\";\"None\";\"main\"\n\"3172215\";\"none\";\"other\"\n\"3172215\";\"ノーネ\";\"other\"\n\"3172217\";\"Nonantola\";\"main\"\n\"3172217\";\"nonantora\";\"other\"\n\"3172217\";\"ノナントラ\";\"other\"\n\"3172220\";\"Nomi\";\"main\"\n\"3172220\";\"nomi\";\"other\"\n\"3172220\";\"ノーミ\";\"other\"\n\"3172225\";\"Noli\";\"main\"\n\"3172226\";\"Nole\";\"main\"\n\"3172226\";\"Nole Canavese\";\"other\"\n\"3172226\";\"nore\";\"other\"\n\"3172226\";\"ノーレ\";\"other\"\n\"3172227\";\"Nola\";\"main\"\n\"3172227\";\"nora\";\"other\"\n\"3172227\";\"ノーラ\";\"other\"\n\"3172228\";\"Noicattaro\";\"main\"\n\"3172232\";\"Nogarole Rocca\";\"main\"\n\"3172232\";\"Nogarole di Rocca\";\"other\"\n\"3172235\";\"Nogara\";\"main\"\n\"3172236\";\"Noepoli\";\"main\"\n\"3172239\";\"Nociglia\";\"main\"\n\"3172239\";\"Nocilia\";\"other\"\n\"3172240\";\"Noci\";\"main\"\n\"3172240\";\"nochi\";\"other\"\n\"3172240\";\"ノーチ\";\"other\"\n\"3172241\";\"Noceto\";\"main\"\n\"3172242\";\"Nocera Umbra\";\"main\"\n\"3172243\";\"Nocera Superiore\";\"main\"\n\"3172244\";\"Nocera Inferiore\";\"main\"\n\"3172244\";\"Nocera\";\"other\"\n\"3172244\";\"ノチェーラ・インフェリオーレ\";\"other\"\n\"3172249\";\"Nocciano\";\"main\"\n\"3172252\";\"Noale\";\"main\"\n\"3172252\";\"noare\";\"other\"\n\"3172252\";\"ノアーレ\";\"other\"\n\"3172253\";\"Nizza Monferrato\";\"main\"\n\"3172253\";\"Monferrato\";\"other\"\n\"3172253\";\"Nissa\";\"other\"\n\"3172259\";\"Nimis\";\"main\"\n\"3172259\";\"Valle Nimis\";\"other\"\n\"3172269\";\"Nichelino\";\"main\"\n\"3172269\";\"El Niclin\";\"other\"\n\"3172269\";\"Nikelino\";\"other\"\n\"3172269\";\"nikerino\";\"other\"\n\"3172269\";\"Ël Niclin\";\"other\"\n\"3172269\";\"Никелино\";\"other\"\n\"3172269\";\"ニケリーノ\";\"other\"\n\"3172275\";\"Nibbiano\";\"main\"\n\"3172282\";\"Neviano degli Arduini\";\"main\"\n\"3172283\";\"Neviano\";\"main\"\n\"3172287\";\"Nettuno\";\"main\"\n\"3172287\";\"netto~uno\";\"other\"\n\"3172287\";\"ネットゥーノ\";\"other\"\n\"3172288\";\"Netro\";\"main\"\n\"3172288\";\"netoro\";\"other\"\n\"3172288\";\"ネトロ\";\"other\"\n\"3172297\";\"Nerviano\";\"main\"\n\"3172297\";\"neruvu~iano\";\"other\"\n\"3172297\";\"ネルヴィアーノ\";\"other\"\n\"3172301\";\"Nervesa della Battaglia\";\"main\"\n\"3172301\";\"Nervesa\";\"other\"\n\"3172303\";\"Nerola\";\"main\"\n\"3172303\";\"nerora\";\"other\"\n\"3172303\";\"ネーロラ\";\"other\"\n\"3172311\";\"Nereto\";\"main\"\n\"3172322\";\"Nepi\";\"main\"\n\"3172322\";\"nepi\";\"other\"\n\"3172322\";\"ネーピ\";\"other\"\n\"3172326\";\"Nemoli\";\"main\"\n\"3172328\";\"Nemi\";\"main\"\n\"3172328\";\"nemi\";\"other\"\n\"3172328\";\"ネーミ\";\"other\"\n\"3172330\";\"Nembro\";\"main\"\n\"3172332\";\"Neive\";\"main\"\n\"3172338\";\"Negrar\";\"main\"\n\"3172338\";\"Negar\";\"other\"\n\"3172350\";\"Ne\";\"main\"\n\"3172350\";\"Né\";\"other\"\n\"3172352\";\"Nazzano\";\"main\"\n\"3172352\";\"nattsu~ano\";\"other\"\n\"3172352\";\"ナッツァーノ\";\"other\"\n\"3172363\";\"Nave\";\"main\"\n\"3172367\";\"Naturno - Naturns\";\"main\"\n\"3172367\";\"Naturno\";\"ascii\"\n\"3172367\";\"Naturns\";\"other\"\n\"3172367\";\"nato~uruno\";\"other\"\n\"3172367\";\"ナトゥルノ\";\"other\"\n\"3172375\";\"Narzole\";\"main\"\n\"3172377\";\"Narni\";\"main\"\n\"3172377\";\"naruni\";\"other\"\n\"3172377\";\"ナルニ\";\"other\"\n\"3172379\";\"Nardò\";\"main\"\n\"3172379\";\"Nardo\";\"ascii\"\n\"3172379\";\"narudo\";\"other\"\n\"3172379\";\"ナルド\";\"other\"\n\"3172380\";\"Narbolia\";\"main\"\n\"3172394\";\"Napoli\";\"main\"\n\"3172394\";\"Napapopolopi\";\"other\"\n\"3172394\";\"Napels\";\"other\"\n\"3172394\";\"Naples\";\"other\"\n\"3172394\";\"Napoles\";\"other\"\n\"3172394\";\"Napoles - Napoli\";\"other\"\n\"3172394\";\"Napolo\";\"other\"\n\"3172394\";\"Napols\";\"other\"\n\"3172394\";\"Napoly\";\"other\"\n\"3172394\";\"Napul\";\"other\"\n\"3172394\";\"Napule\";\"other\"\n\"3172394\";\"Napuli\";\"other\"\n\"3172394\";\"Napulj\";\"other\"\n\"3172394\";\"Napólí\";\"other\"\n\"3172394\";\"Neapel\";\"other\"\n\"3172394\";\"Neapelj\";\"other\"\n\"3172394\";\"Neapol\";\"other\"\n\"3172394\";\"Neapol'\";\"other\"\n\"3172394\";\"Neapole\";\"other\"\n\"3172394\";\"Neapolis\";\"other\"\n\"3172394\";\"Noapels\";\"other\"\n\"3172394\";\"Nàpols\";\"other\"\n\"3172394\";\"Nàpuli\";\"other\"\n\"3172394\";\"Nápoles\";\"other\"\n\"3172394\";\"Nápoles - Napoli\";\"other\"\n\"3172394\";\"Nápols\";\"other\"\n\"3172394\";\"Nápoly\";\"other\"\n\"3172394\";\"na bu lei si\";\"other\"\n\"3172394\";\"nabwly\";\"other\"\n\"3172394\";\"napl\";\"other\"\n\"3172394\";\"napoli\";\"other\"\n\"3172394\";\"napolli\";\"other\"\n\"3172394\";\"napori\";\"other\"\n\"3172394\";\"Напуљ\";\"other\"\n\"3172394\";\"Неапол\";\"other\"\n\"3172394\";\"Неаполь\";\"other\"\n\"3172394\";\"Նեապոլ\";\"other\"\n\"3172394\";\"נאפולי\";\"other\"\n\"3172394\";\"نابولي\";\"other\"\n\"3172394\";\"ناپل\";\"other\"\n\"3172394\";\"नापोलि\";\"other\"\n\"3172394\";\"ნეაპოლი\";\"other\"\n\"3172394\";\"ナポリ\";\"other\"\n\"3172394\";\"那不勒斯\";\"other\"\n\"3172394\";\"나폴리\";\"other\"\n\"3172398\";\"Nanto\";\"main\"\n\"3172398\";\"nanto\";\"other\"\n\"3172398\";\"ナント\";\"other\"\n\"3172400\";\"Nalles - Nals\";\"main\"\n\"3172400\";\"Nalles\";\"ascii\"\n\"3172400\";\"Nals\";\"other\"\n\"3172400\";\"narresu\";\"other\"\n\"3172400\";\"ナッレス\";\"other\"\n\"3172402\";\"Nago-Torbole\";\"main\"\n\"3172402\";\"Nago\";\"ascii\"\n\"3172402\";\"Nago Torbole\";\"other\"\n\"3172402\";\"nago=torubore\";\"other\"\n\"3172402\";\"ナーゴ＝トルボレ\";\"other\"\n\"3172406\";\"Muzzana del Turgnano\";\"main\"\n\"3172406\";\"Mucane\";\"other\"\n\"3172406\";\"Muzzana\";\"other\"\n\"3172413\";\"San Pietro Mussolino\";\"main\"\n\"3172413\";\"Mussolino\";\"ascii\"\n\"3172414\";\"Musso\";\"main\"\n\"3172422\";\"Musile di Piave\";\"main\"\n\"3172422\";\"Musile\";\"other\"\n\"3172422\";\"ムジーレ・ディ・ピアーヴェ\";\"other\"\n\"3172436\";\"Muro Lucano\";\"main\"\n\"3172437\";\"Muro Leccese\";\"main\"\n\"3172442\";\"Murlo\";\"main\"\n\"3172442\";\"mururo\";\"other\"\n\"3172442\";\"ムルロ\";\"other\"\n\"3172443\";\"Murisengo\";\"main\"\n\"3172443\";\"Ambrusengh\";\"other\"\n\"3172456\";\"Murano\";\"main\"\n\"3172456\";\"Ile de Murano\";\"other\"\n\"3172456\";\"mu la nuo dao\";\"other\"\n\"3172456\";\"murano\";\"other\"\n\"3172456\";\"Île de Murano\";\"other\"\n\"3172456\";\"מוראנו\";\"other\"\n\"3172456\";\"ムラーノ\";\"other\"\n\"3172456\";\"穆拉诺岛\";\"other\"\n\"3172468\";\"Mulazzo\";\"main\"\n\"3172468\";\"Mulazzo Lunigania\";\"other\"\n\"3172468\";\"murattsu~o\";\"other\"\n\"3172468\";\"ムラッツォ\";\"other\"\n\"3172472\";\"Mugnano di Napoli\";\"main\"\n\"3172472\";\"Mugnano 'e Napule\";\"other\"\n\"3172472\";\"ムニャーノ・ディ・ナーポリ\";\"other\"\n\"3172473\";\"Mugnano del Cardinale\";\"main\"\n\"3172479\";\"Muggiò\";\"main\"\n\"3172479\";\"Muggio\";\"ascii\"\n\"3172479\";\"mujjo\";\"other\"\n\"3172479\";\"ムッジョ\";\"other\"\n\"3172483\";\"Muggia\";\"main\"\n\"3172483\";\"Milje\";\"other\"\n\"3172483\";\"Mudha\";\"other\"\n\"3172483\";\"Muggio\";\"other\"\n\"3172483\";\"Muđa\";\"other\"\n\"3172483\";\"mujja\";\"other\"\n\"3172483\";\"ムッジャ\";\"other\"\n\"3172494\";\"Mozzecane\";\"main\"\n\"3172495\";\"Mozzate\";\"main\"\n\"3172496\";\"Mozzanica\";\"main\"\n\"3172497\";\"Mozzagrogna\";\"main\"\n\"3172499\";\"Mottola\";\"main\"\n\"3172502\";\"Motta Visconti\";\"main\"\n\"3172502\";\"モッタ・ヴィスコンティ\";\"other\"\n\"3172507\";\"Mottalciata\";\"main\"\n\"3172508\";\"Motta di Livenza\";\"main\"\n\"3172525\";\"Mossa\";\"main\"\n\"3172525\";\"Massa\";\"other\"\n\"3172525\";\"Mosse\";\"other\"\n\"3172526\";\"Moso in Passiria - Moos in Passeier\";\"main\"\n\"3172526\";\"Moso\";\"ascii\"\n\"3172526\";\"Moos\";\"other\"\n\"3172526\";\"Moos in Passeier\";\"other\"\n\"3172526\";\"Moso in Passiria\";\"other\"\n\"3172526\";\"モーゾ・イン・パッシーリア\";\"other\"\n\"3172530\";\"Moscufo\";\"main\"\n\"3172535\";\"Mosciano Sant'Angelo\";\"main\"\n\"3172542\";\"Moruzzo\";\"main\"\n\"3172542\";\"Moruc\";\"other\"\n\"3172555\";\"Mortegliano\";\"main\"\n\"3172555\";\"Mortean\";\"other\"\n\"3172557\";\"Mortara\";\"main\"\n\"3172557\";\"morutara\";\"other\"\n\"3172557\";\"モルターラ\";\"other\"\n\"3172561\";\"Morsano al Tagliamento\";\"main\"\n\"3172561\";\"Morsan dal Tiliment\";\"other\"\n\"3172561\";\"Morsano\";\"other\"\n\"3172561\";\"Morsano al Tagliano\";\"other\"\n\"3172564\";\"Morrovalle\";\"main\"\n\"3172569\";\"Morro d'Oro\";\"main\"\n\"3172570\";\"Morro d'Alba\";\"main\"\n\"3172570\";\"モッロ・ダルバ\";\"other\"\n\"3172577\";\"Morra De Sanctis\";\"main\"\n\"3172579\";\"Morozzo\";\"main\"\n\"3172581\";\"Morolo\";\"main\"\n\"3172585\";\"Mornago\";\"main\"\n\"3172586\";\"Morlupo\";\"main\"\n\"3172586\";\"morurupo\";\"other\"\n\"3172586\";\"モルルーポ\";\"other\"\n\"3172589\";\"Morimondo\";\"main\"\n\"3172589\";\"morimondo\";\"other\"\n\"3172589\";\"モリモンド\";\"other\"\n\"3172593\";\"Moricone\";\"main\"\n\"3172593\";\"morikone\";\"other\"\n\"3172593\";\"モリコーネ\";\"other\"\n\"3172597\";\"Moriago della Battaglia\";\"main\"\n\"3172597\";\"Moriago\";\"other\"\n\"3172598\";\"Mori\";\"main\"\n\"3172598\";\"mori\";\"other\"\n\"3172598\";\"モーリ\";\"other\"\n\"3172600\";\"Morgex\";\"main\"\n\"3172600\";\"Valdigna\";\"other\"\n\"3172600\";\"Valdigna d'Aosta\";\"other\"\n\"3172602\";\"Morfasso\";\"main\"\n\"3172604\";\"Moretta\";\"main\"\n\"3172604\";\"Morëtta\";\"other\"\n\"3172607\";\"Mores\";\"main\"\n\"3172610\";\"Mordano\";\"main\"\n\"3172612\";\"Morcone\";\"main\"\n\"3172612\";\"Marcone\";\"other\"\n\"3172614\";\"Morciano di Romagna\";\"main\"\n\"3172617\";\"Morbegno\";\"main\"\n\"3172617\";\"Morben'o\";\"other\"\n\"3172617\";\"Морбеньо\";\"other\"\n\"3172621\";\"Morano sul Po\";\"main\"\n\"3172621\";\"Morano\";\"other\"\n\"3172621\";\"Morano Po\";\"other\"\n\"3172626\";\"Monzuno\";\"main\"\n\"3172628\";\"Monzambano\";\"main\"\n\"3172628\";\"montsu~anbano\";\"other\"\n\"3172628\";\"モンツァンバーノ\";\"other\"\n\"3172629\";\"Monza\";\"main\"\n\"3172629\";\"Modicia\";\"other\"\n\"3172629\";\"Monca\";\"other\"\n\"3172629\";\"Monsa\";\"other\"\n\"3172629\";\"Munscia\";\"other\"\n\"3172629\";\"meng zha\";\"other\"\n\"3172629\";\"mnza\";\"other\"\n\"3172629\";\"montsu~a\";\"other\"\n\"3172629\";\"mwnzh\";\"other\"\n\"3172629\";\"Монца\";\"other\"\n\"3172629\";\"מונצה\";\"other\"\n\"3172629\";\"منزا\";\"other\"\n\"3172629\";\"モンツァ\";\"other\"\n\"3172629\";\"蒙扎\";\"other\"\n\"3172632\";\"Montù Beccaria\";\"main\"\n\"3172632\";\"Montu Beccaria\";\"ascii\"\n\"3172637\";\"Montottone\";\"main\"\n\"3172638\";\"Montorso Vicentino\";\"main\"\n\"3172638\";\"Montorso\";\"other\"\n\"3172643\";\"Montorio Romano\";\"main\"\n\"3172643\";\"モントーリオ・ロマーノ\";\"other\"\n\"3172646\";\"Montorio al Vomano\";\"main\"\n\"3172646\";\"Montorio Vomano\";\"other\"\n\"3172650\";\"Montopoli in Val d'Arno\";\"main\"\n\"3172651\";\"Montopoli di Sabina\";\"main\"\n\"3172651\";\"Montopoli in Sabina\";\"ascii\"\n\"3172653\";\"Montone\";\"main\"\n\"3172656\";\"Montoggio\";\"main\"\n\"3172656\";\"Monteuggio\";\"other\"\n\"3172657\";\"Montodine\";\"main\"\n\"3172658\";\"Montjovet\";\"main\"\n\"3172658\";\"Mongiove\";\"other\"\n\"3172669\";\"Montignoso\";\"main\"\n\"3172669\";\"montinyozo\";\"other\"\n\"3172669\";\"モンティニョーゾ\";\"other\"\n\"3172671\";\"Montiglio Monferrato\";\"main\"\n\"3172671\";\"Montiglio\";\"ascii\"\n\"3172674\";\"Montieri\";\"main\"\n\"3172674\";\"Montreri\";\"other\"\n\"3172680\";\"Monticiano\";\"main\"\n\"3172680\";\"montichano\";\"other\"\n\"3172680\";\"モンティチャーノ\";\"other\"\n\"3172681\";\"Montichiari\";\"main\"\n\"3172681\";\"montikiari\";\"other\"\n\"3172681\";\"モンティキアーリ\";\"other\"\n\"3172682\";\"Monticello Conte Otto\";\"main\"\n\"3172689\";\"Monticelli d'Ongina\";\"main\"\n\"3172689\";\"Monticelli\";\"other\"\n\"3172700\";\"Montiano\";\"main\"\n\"3172700\";\"Monfiano\";\"other\"\n\"3172703\";\"Monti\";\"main\"\n\"3172712\";\"Monteviale\";\"main\"\n\"3172717\";\"Monteveglio\";\"main\"\n\"3172718\";\"Montevarchi\";\"main\"\n\"3172718\";\"Montevarki\";\"other\"\n\"3172718\";\"Монтеварки\";\"other\"\n\"3172719\";\"Monteu Roero\";\"main\"\n\"3172719\";\"Monteu\";\"other\"\n\"3172720\";\"Monte Urano\";\"main\"\n\"3172728\";\"Montespertoli\";\"main\"\n\"3172730\";\"Montesilvano\";\"main\"\n\"3172730\";\"Montezil'vano\";\"other\"\n\"3172730\";\"Монтезильвано\";\"other\"\n\"3172735\";\"Montese\";\"main\"\n\"3172737\";\"Montescudo\";\"main\"\n\"3172739\";\"Montescaglioso\";\"main\"\n\"3172740\";\"Montesarchio\";\"main\"\n\"3172740\";\"Caudium\";\"other\"\n\"3172741\";\"Monte San Vito\";\"main\"\n\"3172741\";\"モンテ・サン・ヴィート\";\"other\"\n\"3172747\";\"Monte Sant'Angelo\";\"main\"\n\"3172747\";\"モンテ・サンタンジェロ\";\"other\"\n\"3172748\";\"Monte Santa Maria Tiberina\";\"main\"\n\"3172748\";\"Monte Santa Maria\";\"other\"\n\"3172750\";\"Monte San Savino\";\"main\"\n\"3172751\";\"Monte San Pietro\";\"main\"\n\"3172752\";\"Monte San Pietrangeli\";\"main\"\n\"3172752\";\"Monsampietrangeli\";\"other\"\n\"3172752\";\"Monsampietrángeli\";\"other\"\n\"3172753\";\"Montesano sulla Marcellana\";\"main\"\n\"3172756\";\"Monte San Giusto\";\"main\"\n\"3172756\";\"Monte San Giustano\";\"other\"\n\"3172758\";\"Monte San Giovanni Campano\";\"main\"\n\"3172759\";\"Monte San Giacomo\";\"main\"\n\"3172760\";\"Monte San Biagio\";\"main\"\n\"3172760\";\"モンテ・サン・ビアージョ\";\"other\"\n\"3172765\";\"Monterubbiano\";\"main\"\n\"3172767\";\"Monterotondo Marittimo\";\"main\"\n\"3172767\";\"Monterotondo\";\"ascii\"\n\"3172768\";\"Monterotondo\";\"main\"\n\"3172768\";\"Crustumerium\";\"other\"\n\"3172768\";\"monterotondo\";\"other\"\n\"3172768\";\"Монтеротондо\";\"other\"\n\"3172768\";\"モンテロトンド\";\"other\"\n\"3172769\";\"Monterosso al Mare\";\"main\"\n\"3172769\";\"Monterosso\";\"other\"\n\"3172769\";\"モンテロッソ・アル・マーレ\";\"other\"\n\"3172772\";\"Monterosi\";\"main\"\n\"3172774\";\"Monteroni di Lecce\";\"main\"\n\"3172775\";\"Monteroni d'Arbia\";\"main\"\n\"3172775\";\"Monteroni\";\"other\"\n\"3172775\";\"モンテローニ・ダルビア\";\"other\"\n\"3172778\";\"Monte Romano\";\"main\"\n\"3172779\";\"Monteroduni\";\"main\"\n\"3172780\";\"Monte Roberto\";\"main\"\n\"3172780\";\"モンテ・ロベルト\";\"other\"\n\"3172783\";\"Monteriggioni\";\"main\"\n\"3172783\";\"monterijjoni\";\"other\"\n\"3172783\";\"モンテリッジョーニ\";\"other\"\n\"3172784\";\"Monterenzio\";\"main\"\n\"3172787\";\"Montereale Valcellina\";\"main\"\n\"3172787\";\"Montereale\";\"other\"\n\"3172787\";\"Montereale Cellina\";\"other\"\n\"3172787\";\"Montreal\";\"other\"\n\"3172787\";\"Montreâl\";\"other\"\n\"3172788\";\"Montereale\";\"main\"\n\"3172789\";\"Monterchi\";\"main\"\n\"3172791\";\"Monterado\";\"main\"\n\"3172791\";\"monterado\";\"other\"\n\"3172791\";\"モンテラード\";\"other\"\n\"3172794\";\"Montepulciano\";\"main\"\n\"3172794\";\"Mons Politianus\";\"other\"\n\"3172794\";\"montepuruchano\";\"other\"\n\"3172794\";\"モンテプルチャーノ\";\"other\"\n\"3172796\";\"Monteprandone\";\"main\"\n\"3172797\";\"Monte Porzio Catone\";\"main\"\n\"3172797\";\"Monte Porzio\";\"other\"\n\"3172797\";\"モンテ・ポルツィオ・カトーネ\";\"other\"\n\"3172808\";\"Monteparano\";\"main\"\n\"3172814\";\"Monteodorisio\";\"main\"\n\"3172821\";\"Montenero di Bisaccia\";\"main\"\n\"3172821\";\"Montenero Di Bisaccia\";\"other\"\n\"3172827\";\"Montemurro\";\"main\"\n\"3172828\";\"Montemurlo\";\"main\"\n\"3172828\";\"montemururo\";\"other\"\n\"3172828\";\"モンテムルロ\";\"other\"\n\"3172833\";\"Montemilone\";\"main\"\n\"3172834\";\"Montemiletto\";\"main\"\n\"3172838\";\"Montemesola\";\"main\"\n\"3172844\";\"Monte Marenzo\";\"main\"\n\"3172845\";\"Montemarciano\";\"main\"\n\"3172845\";\"montemaruchano\";\"other\"\n\"3172845\";\"モンテマルチャーノ\";\"other\"\n\"3172847\";\"Montemarano\";\"main\"\n\"3172850\";\"Montemagno\";\"main\"\n\"3172854\";\"Montemaggiore al Metauro\";\"main\"\n\"3172860\";\"Montelupone\";\"main\"\n\"3172861\";\"Montelupo Fiorentino\";\"main\"\n\"3172861\";\"Montelupo\";\"other\"\n\"3172871\";\"Monteleone Sabino\";\"main\"\n\"3172873\";\"Monteleone d'Orvieto\";\"main\"\n\"3172873\";\"Monteleone di Orrieto\";\"other\"\n\"3172875\";\"Monteleone di Puglia\";\"main\"\n\"3172880\";\"Montelanico\";\"main\"\n\"3172880\";\"monteraniko\";\"other\"\n\"3172880\";\"モンテラーニコ\";\"other\"\n\"3172883\";\"Montelabbate\";\"main\"\n\"3172883\";\"Montelabate\";\"other\"\n\"3172886\";\"Monteiasi\";\"main\"\n\"3172886\";\"Montejasi\";\"other\"\n\"3172890\";\"Montegrotto Terme\";\"main\"\n\"3172892\";\"Montegrosso d'Asti\";\"main\"\n\"3172893\";\"Monte Grimano\";\"main\"\n\"3172896\";\"Montegranaro\";\"main\"\n\"3172901\";\"Montegiorgio\";\"main\"\n\"3172903\";\"Montegiordano\";\"main\"\n\"3172910\";\"Montegaldella\";\"main\"\n\"3172912\";\"Montegabbione\";\"main\"\n\"3172913\";\"Montefusco\";\"main\"\n\"3172915\";\"Montefredane\";\"main\"\n\"3172916\";\"Montefranco\";\"main\"\n\"3172920\";\"Montefortino\";\"main\"\n\"3172920\";\"Монтефортино\";\"other\"\n\"3172921\";\"Monteforte Irpino\";\"main\"\n\"3172922\";\"Monteforte d'Alpone\";\"main\"\n\"3172922\";\"Monteforte\";\"other\"\n\"3172925\";\"Monteflavio\";\"main\"\n\"3172925\";\"Monte Flavio\";\"ascii\"\n\"3172926\";\"Montefiorino\";\"main\"\n\"3172928\";\"Montefiore dell'Aso\";\"main\"\n\"3172929\";\"Montefiore Conca\";\"main\"\n\"3172930\";\"Montefino\";\"main\"\n\"3172931\";\"Montefiascone\";\"main\"\n\"3172931\";\"montefiasukone\";\"other\"\n\"3172931\";\"モンテフィアスコーネ\";\"other\"\n\"3172935\";\"Montefano\";\"main\"\n\"3172936\";\"Montefalcone di Val Fortore\";\"main\"\n\"3172937\";\"Montefalcone nel Sannio\";\"main\"\n\"3172937\";\"Montefalcone del Sannio\";\"ascii\"\n\"3172941\";\"Montefalco\";\"main\"\n\"3172942\";\"Montefalcione\";\"main\"\n\"3172946\";\"Monte di Procida\";\"main\"\n\"3172946\";\"Monte 'e Proceta\";\"other\"\n\"3172946\";\"モンテ・ディ・プローチダ\";\"other\"\n\"3172948\";\"Monte di Malo\";\"main\"\n\"3172961\";\"Montecosaro\";\"main\"\n\"3172963\";\"Montecorvino Rovella\";\"main\"\n\"3172967\";\"Montecorice\";\"main\"\n\"3172969\";\"Monte Compatri\";\"main\"\n\"3172969\";\"モンテ・コンパトリ\";\"other\"\n\"3172970\";\"Montecilfone\";\"main\"\n\"3172970\";\"Munxhfuni\";\"other\"\n\"3172971\";\"Monteciccardo\";\"main\"\n\"3172973\";\"Montechiarugolo\";\"main\"\n\"3172974\";\"Montechiaro d'Asti\";\"main\"\n\"3172979\";\"Montecchio Maggiore\";\"main\"\n\"3172980\";\"Montecchio Emilia\";\"main\"\n\"3172980\";\"Montecchio\";\"other\"\n\"3172989\";\"Montecchio\";\"main\"\n\"3172990\";\"Montecchia di Crosara\";\"main\"\n\"3172990\";\"Montecchia\";\"other\"\n\"3172996\";\"Montecatini-Terme\";\"main\"\n\"3172996\";\"Montecatini Terme\";\"ascii\"\n\"3172996\";\"モンテカティーニ・テルメ\";\"other\"\n\"3172997\";\"Montecatini Val di Cecina\";\"main\"\n\"3172997\";\"Montecatini\";\"ascii\"\n\"3172997\";\"Montecatini Terme\";\"other\"\n\"3172997\";\"Montecatini di Val di Cecina\";\"other\"\n\"3172997\";\"モンテカティーニ・テルメ\";\"other\"\n\"3172998\";\"Montecastrilli\";\"main\"\n\"3172999\";\"Monte Castello di Vibio\";\"main\"\n\"3173006\";\"Montecassiano\";\"main\"\n\"3173007\";\"Montecarotto\";\"main\"\n\"3173007\";\"montekarotto\";\"other\"\n\"3173007\";\"モンテカロット\";\"other\"\n\"3173008\";\"Montecarlo\";\"main\"\n\"3173014\";\"Montecalvo Irpino\";\"main\"\n\"3173015\";\"Montecalvo in Foglia\";\"main\"\n\"3173029\";\"Montebelluna\";\"main\"\n\"3173029\";\"Монтебеллуна\";\"other\"\n\"3173030\";\"Montebello Vicentino\";\"main\"\n\"3173030\";\"Montebello\";\"other\"\n\"3173032\";\"Montebello di Bertona\";\"main\"\n\"3173033\";\"Montebello della Battaglia\";\"main\"\n\"3173033\";\"Montebello\";\"other\"\n\"3173057\";\"Montazzoli\";\"main\"\n\"3173065\";\"Montaquila\";\"main\"\n\"3173066\";\"Montappone\";\"main\"\n\"3173068\";\"Montano Antilia\";\"main\"\n\"3173073\";\"Montanaso Lombardo\";\"main\"\n\"3173074\";\"Montanaro\";\"main\"\n\"3173074\";\"montanaro\";\"other\"\n\"3173074\";\"モンタナーロ\";\"other\"\n\"3173081\";\"Montalto Dora\";\"main\"\n\"3173081\";\"モンタルト・ドーラ\";\"other\"\n\"3173082\";\"Montalto di Castro\";\"main\"\n\"3173083\";\"Montalto delle Marche\";\"main\"\n\"3173093\";\"Montale\";\"main\"\n\"3173093\";\"montare\";\"other\"\n\"3173093\";\"モンターレ\";\"other\"\n\"3173096\";\"Montalcino\";\"main\"\n\"3173096\";\"montaruchino\";\"other\"\n\"3173096\";\"モンタルチーノ\";\"other\"\n\"3173098\";\"Montalbano Jonico\";\"main\"\n\"3173098\";\"Montalbano Ionico\";\"ascii\"\n\"3173103\";\"Montaione\";\"main\"\n\"3173110\";\"Montagnana\";\"main\"\n\"3173113\";\"Montagna - Montan\";\"main\"\n\"3173113\";\"Montagna\";\"ascii\"\n\"3173113\";\"Montan\";\"other\"\n\"3173113\";\"montanya\";\"other\"\n\"3173113\";\"モンターニャ\";\"other\"\n\"3173116\";\"Montagano\";\"main\"\n\"3173120\";\"Montà\";\"main\"\n\"3173120\";\"Monta\";\"ascii\"\n\"3173122\";\"Monsummano Terme\";\"main\"\n\"3173122\";\"Monsummano\";\"ascii\"\n\"3173122\";\"Monsumanno\";\"other\"\n\"3173122\";\"Monsumanno Terme\";\"other\"\n\"3173124\";\"Monselice\";\"main\"\n\"3173125\";\"Monsano\";\"main\"\n\"3173125\";\"monsano\";\"other\"\n\"3173125\";\"モンサーノ\";\"other\"\n\"3173126\";\"Monsampolo del Tronto\";\"main\"\n\"3173131\";\"Monopoli\";\"main\"\n\"3173131\";\"monopori\";\"other\"\n\"3173131\";\"Монополи\";\"other\"\n\"3173131\";\"モノーポリ\";\"other\"\n\"3173139\";\"Moniga del Garda\";\"main\"\n\"3173139\";\"Moniga\";\"ascii\"\n\"3173140\";\"Monguelfo-Tesido - Welsberg-Taisten\";\"main\"\n\"3173140\";\"Monguelfo\";\"ascii\"\n\"3173140\";\"Monguelfo-Tesido\";\"other\"\n\"3173140\";\"Welsberg\";\"other\"\n\"3173140\";\"Welsberg-Taisten\";\"other\"\n\"3173140\";\"monguerufo=teshido\";\"other\"\n\"3173140\";\"モングエルフォ＝テシド\";\"other\"\n\"3173141\";\"Mongrando\";\"main\"\n\"3173145\";\"Monghidoro\";\"main\"\n\"3173149\";\"Monforte d'Alba\";\"main\"\n\"3173149\";\"Monforte\";\"other\"\n\"3173153\";\"Monfalcone\";\"main\"\n\"3173153\";\"Monfal'kone\";\"other\"\n\"3173153\";\"Monfalcon\";\"other\"\n\"3173153\";\"monfarukone\";\"other\"\n\"3173153\";\"Монфальконе\";\"other\"\n\"3173153\";\"モンファルコーネ\";\"other\"\n\"3173159\";\"Moneglia\";\"main\"\n\"3173159\";\"Monegia\";\"other\"\n\"3173160\";\"Mondragone\";\"main\"\n\"3173160\";\"Mundragone\";\"other\"\n\"3173162\";\"Mondovì\";\"main\"\n\"3173162\";\"Mondovi\";\"ascii\"\n\"3173162\";\"El Mondvi\";\"other\"\n\"3173162\";\"mondovu~i\";\"other\"\n\"3173162\";\"Ël Mondvì\";\"other\"\n\"3173162\";\"Мондови\";\"other\"\n\"3173162\";\"モンドヴィ\";\"other\"\n\"3173164\";\"Mondolfo\";\"main\"\n\"3173169\";\"Mondavio\";\"main\"\n\"3173174\";\"Monchio delle Corti\";\"main\"\n\"3173179\";\"Moncalvo\";\"main\"\n\"3173179\";\"Moncalv\";\"other\"\n\"3173180\";\"Moncalieri\";\"main\"\n\"3173180\";\"Moncale\";\"other\"\n\"3173180\";\"Moncalé\";\"other\"\n\"3173180\";\"monkarieri\";\"other\"\n\"3173180\";\"モンカリエーリ\";\"other\"\n\"3173182\";\"Monastier di Treviso\";\"main\"\n\"3173196\";\"Momo\";\"main\"\n\"3173196\";\"momo\";\"other\"\n\"3173196\";\"モーモ\";\"other\"\n\"3173199\";\"Mombaroccio\";\"main\"\n\"3173203\";\"Molveno\";\"main\"\n\"3173203\";\"moruvu~eno\";\"other\"\n\"3173203\";\"モルヴェーノ\";\"other\"\n\"3173205\";\"Molteno\";\"main\"\n\"3173220\";\"Moliterno\";\"main\"\n\"3173276\";\"Molinella\";\"main\"\n\"3173279\";\"Molinara\";\"main\"\n\"3173280\";\"Molina di Ledro\";\"main\"\n\"3173280\";\"Molina\";\"other\"\n\"3173280\";\"モリーナ・ディ・レードロ\";\"other\"\n\"3173287\";\"Molfetta\";\"main\"\n\"3173287\";\"Mol'fetta\";\"other\"\n\"3173287\";\"Мольфетта\";\"other\"\n\"3173295\";\"Molazzana\";\"main\"\n\"3173298\";\"Molare\";\"main\"\n\"3173302\";\"Mola di Bari\";\"main\"\n\"3173306\";\"Moio della Civitella\";\"main\"\n\"3173307\";\"Moimacco\";\"main\"\n\"3173307\";\"Monnacco\";\"other\"\n\"3173307\";\"Muimans\";\"other\"\n\"3173311\";\"Moiano\";\"main\"\n\"3173314\";\"Mogliano Veneto\";\"main\"\n\"3173314\";\"Mogliano\";\"other\"\n\"3173314\";\"モリアーノ・ヴェーネト\";\"other\"\n\"3173315\";\"Mogliano\";\"main\"\n\"3173317\";\"Moglia\";\"main\"\n\"3173318\";\"Moggio Udinese\";\"main\"\n\"3173318\";\"Muec\";\"other\"\n\"3173325\";\"Moena\";\"main\"\n\"3173325\";\"moena\";\"other\"\n\"3173325\";\"Моена\";\"other\"\n\"3173325\";\"モエーナ\";\"other\"\n\"3173326\";\"Modugno\";\"main\"\n\"3173326\";\"Modun'o\";\"other\"\n\"3173326\";\"Модуньо\";\"other\"\n\"3173329\";\"Modigliana\";\"main\"\n\"3173331\";\"Modena\";\"main\"\n\"3173331\";\"Modene\";\"other\"\n\"3173331\";\"Modna\";\"other\"\n\"3173331\";\"Modène\";\"other\"\n\"3173331\";\"Mutina\";\"other\"\n\"3173331\";\"Mòdena\";\"other\"\n\"3173331\";\"Mòdna\";\"other\"\n\"3173331\";\"Módena\";\"other\"\n\"3173331\";\"modena\";\"other\"\n\"3173331\";\"mwdyna\";\"other\"\n\"3173331\";\"Модена\";\"other\"\n\"3173331\";\"مودينا\";\"other\"\n\"3173331\";\"モデナ\";\"other\"\n\"3173350\";\"Missaglia\";\"main\"\n\"3173351\";\"Misinto\";\"main\"\n\"3173351\";\"mijinto\";\"other\"\n\"3173351\";\"ミジント\";\"other\"\n\"3173362\";\"Misano di Gera d'Adda\";\"main\"\n\"3173363\";\"Misano Adriatico\";\"main\"\n\"3173363\";\"Misano\";\"other\"\n\"3173363\";\"Misano in Villa Vittoria\";\"other\"\n\"3173369\";\"Mirano\";\"main\"\n\"3173369\";\"mirano\";\"other\"\n\"3173369\";\"Мирано\";\"other\"\n\"3173369\";\"ミラーノ\";\"other\"\n\"3173370\";\"Mirandola\";\"main\"\n\"3173370\";\"Мирандола\";\"other\"\n\"3173372\";\"Miranda\";\"main\"\n\"3173377\";\"Miradolo Terme\";\"main\"\n\"3173377\";\"Miradolo\";\"other\"\n\"3173377\";\"Terme di Miradolo\";\"other\"\n\"3173379\";\"Mirabello Sannitico\";\"main\"\n\"3173379\";\"Mirabello Sannitice\";\"other\"\n\"3173380\";\"Mirabello Monferrato\";\"main\"\n\"3173380\";\"Mirabel\";\"other\"\n\"3173380\";\"Mirabello\";\"other\"\n\"3173380\";\"Mirabèl\";\"other\"\n\"3173382\";\"Mirabello\";\"main\"\n\"3173383\";\"Mirabella Eclano\";\"main\"\n\"3173385\";\"Mira\";\"main\"\n\"3173385\";\"mira\";\"other\"\n\"3173385\";\"Мира\";\"other\"\n\"3173385\";\"ミーラ\";\"other\"\n\"3173390\";\"Minucciano\";\"main\"\n\"3173391\";\"Minturno\";\"main\"\n\"3173391\";\"minto~uruno\";\"other\"\n\"3173391\";\"ミントゥルノ\";\"other\"\n\"3173392\";\"Minori\";\"main\"\n\"3173392\";\"Minure\";\"other\"\n\"3173392\";\"Минори\";\"other\"\n\"3173404\";\"Minervino Murge\";\"main\"\n\"3173405\";\"Minervino di Lecce\";\"main\"\n\"3173407\";\"Minerbio\";\"main\"\n\"3173408\";\"Minerbe\";\"main\"\n\"3173410\";\"Millesimo\";\"main\"\n\"3173410\";\"Merexo\";\"other\"\n\"3173410\";\"mirrejimo\";\"other\"\n\"3173410\";\"ミッレージモ\";\"other\"\n\"3173413\";\"Milis\";\"main\"\n\"3173435\";\"Milano\";\"main\"\n\"3173435\";\"Lungsod ng Milano\";\"other\"\n\"3173435\";\"MIL\";\"other\"\n\"3173435\";\"Mailand\";\"other\"\n\"3173435\";\"Mediolan\";\"other\"\n\"3173435\";\"Mediolanum\";\"other\"\n\"3173435\";\"Mila\";\"other\"\n\"3173435\";\"Milaan\";\"other\"\n\"3173435\";\"Milan\";\"other\"\n\"3173435\";\"Milana\";\"other\"\n\"3173435\";\"Milanas\";\"other\"\n\"3173435\";\"Milanu\";\"other\"\n\"3173435\";\"Milao\";\"other\"\n\"3173435\";\"Milà\";\"other\"\n\"3173435\";\"Milán\";\"other\"\n\"3173435\";\"Miláno\";\"other\"\n\"3173435\";\"Milánó\";\"other\"\n\"3173435\";\"Milão\";\"other\"\n\"3173435\";\"Milāna\";\"other\"\n\"3173435\";\"Mílanó\";\"other\"\n\"3173435\";\"mi lan\";\"other\"\n\"3173435\";\"milan\";\"other\"\n\"3173435\";\"milani\";\"other\"\n\"3173435\";\"millano\";\"other\"\n\"3173435\";\"mirano\";\"other\"\n\"3173435\";\"mylan\";\"other\"\n\"3173435\";\"mylanw\";\"other\"\n\"3173435\";\"Милан\";\"other\"\n\"3173435\";\"Милано\";\"other\"\n\"3173435\";\"Мілан\";\"other\"\n\"3173435\";\"מילאנו\";\"other\"\n\"3173435\";\"مىلان\";\"other\"\n\"3173435\";\"ميلانو\";\"other\"\n\"3173435\";\"மிலன்\";\"other\"\n\"3173435\";\"มิลาน\";\"other\"\n\"3173435\";\"მილანი\";\"other\"\n\"3173435\";\"ミラノ\";\"other\"\n\"3173435\";\"米蘭\";\"other\"\n\"3173435\";\"밀라노\";\"other\"\n\"3173439\";\"Mignano Monte Lungo\";\"main\"\n\"3173439\";\"Mignano\";\"other\"\n\"3173441\";\"Mignanego\";\"main\"\n\"3173444\";\"Miglionico\";\"main\"\n\"3173446\";\"Migliaro\";\"main\"\n\"3173447\";\"Migliarino\";\"main\"\n\"3173454\";\"Miglianico\";\"main\"\n\"3173474\";\"Miane\";\"main\"\n\"3173480\";\"Mezzolombardo\";\"main\"\n\"3173480\";\"mettsu~oronbarudo\";\"other\"\n\"3173480\";\"メッツォロンバルド\";\"other\"\n\"3173485\";\"Mezzocorona\";\"main\"\n\"3173485\";\"mettsu~okorona\";\"other\"\n\"3173485\";\"メッツォコローナ\";\"other\"\n\"3173500\";\"Mezzano\";\"main\"\n\"3173500\";\"mettsu~ano\";\"other\"\n\"3173500\";\"メッツァーノ\";\"other\"\n\"3173502\";\"Mezzanino\";\"main\"\n\"3173503\";\"Mezzani\";\"main\"\n\"3173504\";\"Mezzanego\";\"main\"\n\"3173504\";\"Mezanego\";\"other\"\n\"3173504\";\"Mezànego\";\"other\"\n\"3173507\";\"Mezzana Bigli\";\"main\"\n\"3173519\";\"Metaponto\";\"main\"\n\"3173519\";\"Метапонто\";\"other\"\n\"3173524\";\"Meta\";\"main\"\n\"3173528\";\"Mestrino\";\"main\"\n\"3173529\";\"Mestre\";\"main\"\n\"3173529\";\"Местре\";\"other\"\n\"3173533\";\"Mesola\";\"main\"\n\"3173534\";\"Mese\";\"main\"\n\"3173537\";\"Mesagne\";\"main\"\n\"3173544\";\"Merlara\";\"main\"\n\"3173548\";\"Mergozzo\";\"main\"\n\"3173552\";\"Mereto di Tomba\";\"main\"\n\"3173552\";\"Meret di Tombe\";\"other\"\n\"3173552\";\"Mereto\";\"other\"\n\"3173552\";\"Meretto\";\"other\"\n\"3173552\";\"Meretto di Tomba\";\"other\"\n\"3173555\";\"Mercogliano\";\"main\"\n\"3173557\";\"Mercenasco\";\"main\"\n\"3173557\";\"Mersnasch\";\"other\"\n\"3173557\";\"meruchenasuko\";\"other\"\n\"3173557\";\"メルチェナスコ\";\"other\"\n\"3173559\";\"Mercato Saraceno\";\"main\"\n\"3173559\";\"Mercato Sarareno\";\"other\"\n\"3173560\";\"Mercato San Severino\";\"main\"\n\"3173560\";\"San Severino Rota\";\"other\"\n\"3173562\";\"Mercatello sul Metauro\";\"main\"\n\"3173562\";\"Mercatello\";\"other\"\n\"3173573\";\"Mercallo\";\"main\"\n\"3173573\";\"Mercallo di Sassi\";\"other\"\n\"3173576\";\"Merate\";\"main\"\n\"3173576\";\"merate\";\"other\"\n\"3173576\";\"メラーテ\";\"other\"\n\"3173577\";\"Merano\";\"main\"\n\"3173577\";\"Meran\";\"other\"\n\"3173577\";\"Merona\";\"other\"\n\"3173577\";\"merano\";\"other\"\n\"3173577\";\"Мерано\";\"other\"\n\"3173577\";\"メラーノ\";\"other\"\n\"3173580\";\"Meolo\";\"main\"\n\"3173580\";\"meoro\";\"other\"\n\"3173580\";\"メーオロ\";\"other\"\n\"3173582\";\"Mentana\";\"main\"\n\"3173582\";\"mentana\";\"other\"\n\"3173582\";\"メンターナ\";\"other\"\n\"3173598\";\"Menaggio\";\"main\"\n\"3173599\";\"Melzo\";\"main\"\n\"3173599\";\"merutsu~o\";\"other\"\n\"3173599\";\"メルツォ\";\"other\"\n\"3173600\";\"Meltina - Moelten\";\"main\"\n\"3173600\";\"Meltina\";\"ascii\"\n\"3173600\";\"Moelten\";\"other\"\n\"3173600\";\"Mölten\";\"other\"\n\"3173600\";\"merutina\";\"other\"\n\"3173600\";\"メルティナ\";\"other\"\n\"3173602\";\"Melpignano\";\"main\"\n\"3173612\";\"Melizzano\";\"main\"\n\"3173613\";\"Melito Irpino\";\"main\"\n\"3173614\";\"Melito di Napoli\";\"main\"\n\"3173614\";\"Melito 'e Napule\";\"other\"\n\"3173614\";\"メリート・ディ・ナーポリ\";\"other\"\n\"3173615\";\"Melfi\";\"main\"\n\"3173615\";\"Melphi\";\"other\"\n\"3173615\";\"Μέλφι\";\"other\"\n\"3173630\";\"Melendugno\";\"main\"\n\"3173631\";\"Melegnano\";\"main\"\n\"3173631\";\"Marignano\";\"other\"\n\"3173631\";\"merenyano\";\"other\"\n\"3173631\";\"メレニャーノ\";\"other\"\n\"3173635\";\"Meldola\";\"main\"\n\"3173635\";\"merudora\";\"other\"\n\"3173635\";\"メルドラ\";\"other\"\n\"3173636\";\"Melara\";\"main\"\n\"3173644\";\"Mel\";\"main\"\n\"3173646\";\"Meina\";\"main\"\n\"3173646\";\"meina\";\"other\"\n\"3173646\";\"メイナ\";\"other\"\n\"3173650\";\"Megliadino San Vitale\";\"main\"\n\"3173650\";\"San Vitale\";\"other\"\n\"3173653\";\"Meduno\";\"main\"\n\"3173653\";\"Midun\";\"other\"\n\"3173656\";\"Medolla\";\"main\"\n\"3173657\";\"Medole\";\"main\"\n\"3173658\";\"Medolago\";\"main\"\n\"3173660\";\"Medicina\";\"main\"\n\"3173664\";\"Medesano\";\"main\"\n\"3173667\";\"Mede\";\"main\"\n\"3173667\";\"mede\";\"other\"\n\"3173667\";\"メーデ\";\"other\"\n\"3173671\";\"Meda\";\"main\"\n\"3173671\";\"Med\";\"other\"\n\"3173671\";\"meda\";\"other\"\n\"3173671\";\"Мед\";\"other\"\n\"3173671\";\"メーダ\";\"other\"\n\"3173678\";\"Mazzo di Valtellina\";\"main\"\n\"3173678\";\"Mazzo\";\"other\"\n\"3173682\";\"Mazzè\";\"main\"\n\"3173682\";\"Mazze\";\"ascii\"\n\"3173682\";\"Masse\";\"other\"\n\"3173682\";\"Massè\";\"other\"\n\"3173682\";\"mattsu~e\";\"other\"\n\"3173682\";\"マッツェ\";\"other\"\n\"3173684\";\"Mazzano Romano\";\"main\"\n\"3173684\";\"マッツァーノ・ロマーノ\";\"other\"\n\"3173699\";\"Mattinata\";\"main\"\n\"3173709\";\"Matrice\";\"main\"\n\"3173711\";\"Matino\";\"main\"\n\"3173714\";\"Mathi\";\"main\"\n\"3173714\";\"Mati\";\"other\"\n\"3173714\";\"mati\";\"other\"\n\"3173714\";\"マーティ\";\"other\"\n\"3173721\";\"Matera\";\"main\"\n\"3173721\";\"Materia\";\"other\"\n\"3173721\";\"matera\";\"other\"\n\"3173721\";\"Матера\";\"other\"\n\"3173721\";\"マテーラ\";\"other\"\n\"3173722\";\"Matelica\";\"main\"\n\"3173736\";\"Massignano\";\"main\"\n\"3173746\";\"Masserano\";\"main\"\n\"3173754\";\"Massarosa\";\"main\"\n\"3173754\";\"Massarose\";\"other\"\n\"3173754\";\"Массаросе\";\"other\"\n\"3173757\";\"Massa Martana\";\"main\"\n\"3173758\";\"Massa Marittima\";\"main\"\n\"3173760\";\"Massa Lubrense\";\"main\"\n\"3173760\";\"Massalubrense\";\"ascii\"\n\"3173761\";\"Massa Lombarda\";\"main\"\n\"3173761\";\"マッサ・ロンバルダ\";\"other\"\n\"3173762\";\"Massafra\";\"main\"\n\"3173763\";\"Massa Fiscaglia\";\"main\"\n\"3173765\";\"Massa d'Albe\";\"main\"\n\"3173775\";\"Massa\";\"main\"\n\"3173775\";\"massa\";\"other\"\n\"3173775\";\"Масса\";\"other\"\n\"3173775\";\"マッサ\";\"other\"\n\"3173776\";\"Massa e Cozzile\";\"main\"\n\"3173780\";\"Masone\";\"main\"\n\"3173780\";\"Mason\";\"other\"\n\"3173787\";\"Maslianico\";\"main\"\n\"3173789\";\"Masi Torello\";\"main\"\n\"3173800\";\"Maserà di Padova\";\"main\"\n\"3173800\";\"Masera di Padova\";\"ascii\"\n\"3173800\";\"Masera\";\"other\"\n\"3173800\";\"Maserà\";\"other\"\n\"3173801\";\"Masera\";\"main\"\n\"3173802\";\"Maser\";\"main\"\n\"3173805\";\"Maschito\";\"main\"\n\"3173805\";\"Mashqiti\";\"other\"\n\"3173824\";\"Marzano di Nola\";\"main\"\n\"3173827\";\"Marzano Appio\";\"main\"\n\"3173827\";\"Marzano\";\"ascii\"\n\"3173829\";\"Marzabotto\";\"main\"\n\"3173829\";\"Marzabot\";\"other\"\n\"3173829\";\"Marzabòt\";\"other\"\n\"3173830\";\"Maruggio\";\"main\"\n\"3173833\";\"Martinsicuro\";\"main\"\n\"3173839\";\"Martinengo\";\"main\"\n\"3173841\";\"Martina Franca\";\"main\"\n\"3173844\";\"Martignano\";\"main\"\n\"3173844\";\"Martignana\";\"other\"\n\"3173845\";\"Martignacco\";\"main\"\n\"3173845\";\"Martigna\";\"other\"\n\"3173852\";\"Martellago\";\"main\"\n\"3173852\";\"maruterrago\";\"other\"\n\"3173852\";\"マルテッラーゴ\";\"other\"\n\"3173857\";\"Martano\";\"main\"\n\"3173857\";\"Martana\";\"other\"\n\"3173861\";\"Marta\";\"main\"\n\"3173861\";\"maruta\";\"other\"\n\"3173861\";\"マルタ\";\"other\"\n\"3173863\";\"Marsicovetere\";\"main\"\n\"3173863\";\"Marsico Vetere\";\"ascii\"\n\"3173864\";\"Marsico Nuovo\";\"main\"\n\"3173870\";\"Marsciano\";\"main\"\n\"3173875\";\"Marradi\";\"main\"\n\"3173878\";\"Marostica\";\"main\"\n\"3173878\";\"marosutika\";\"other\"\n\"3173878\";\"マロースティカ\";\"other\"\n\"3173880\";\"Marone\";\"main\"\n\"3173880\";\"marone\";\"other\"\n\"3173880\";\"マローネ\";\"other\"\n\"3173888\";\"Marnate\";\"main\"\n\"3173888\";\"marunate\";\"other\"\n\"3173888\";\"マルナーテ\";\"other\"\n\"3173895\";\"Marmirolo\";\"main\"\n\"3173895\";\"marumiroro\";\"other\"\n\"3173895\";\"マルミローロ\";\"other\"\n\"3173901\";\"Marliana\";\"main\"\n\"3173903\";\"Marlengo\";\"main\"\n\"3173903\";\"Marling\";\"other\"\n\"3173903\";\"marurengo\";\"other\"\n\"3173903\";\"マルレンゴ\";\"other\"\n\"3173914\";\"Marino\";\"main\"\n\"3173914\";\"Castromenio\";\"other\"\n\"3173914\";\"marino\";\"other\"\n\"3173914\";\"Марино\";\"other\"\n\"3173914\";\"マリーノ\";\"other\"\n\"3173935\";\"Marina di Carrara\";\"main\"\n\"3173945\";\"Marigliano\";\"main\"\n\"3173945\";\"Maril'jano\";\"other\"\n\"3173945\";\"maririano\";\"other\"\n\"3173945\";\"Марильяно\";\"other\"\n\"3173945\";\"マリリアーノ\";\"other\"\n\"3173946\";\"Mariglianella\";\"main\"\n\"3173946\";\"maririanerra\";\"other\"\n\"3173946\";\"マリリアネッラ\";\"other\"\n\"3173948\";\"Mariano del Friuli\";\"main\"\n\"3173948\";\"Marian\";\"other\"\n\"3173948\";\"Mariano\";\"other\"\n\"3173948\";\"Мариано дел Фриули\";\"other\"\n\"3173949\";\"Mariano Comense\";\"main\"\n\"3173949\";\"Marian\";\"other\"\n\"3173949\";\"Mariano\";\"other\"\n\"3173949\";\"Mariàn\";\"other\"\n\"3173958\";\"Margherita di Savoia\";\"main\"\n\"3173963\";\"Margarita\";\"main\"\n\"3173963\";\"marugarita\";\"other\"\n\"3173963\";\"マルガリータ\";\"other\"\n\"3173971\";\"Marene\";\"main\"\n\"3173985\";\"Marcon\";\"main\"\n\"3173985\";\"marukon\";\"other\"\n\"3173985\";\"マルコーン\";\"other\"\n\"3173993\";\"Marciano della Chiana\";\"main\"\n\"3173993\";\"Marciano\";\"ascii\"\n\"3173995\";\"Marcianise\";\"main\"\n\"3173995\";\"Marchanize\";\"other\"\n\"3173995\";\"Марчанизе\";\"other\"\n\"3173996\";\"Marciana Marina\";\"main\"\n\"3173996\";\"マルチャーナ・マリーナ\";\"other\"\n\"3173997\";\"Marciana\";\"main\"\n\"3173997\";\"maruchana\";\"other\"\n\"3173997\";\"マルチャーナ\";\"other\"\n\"3174002\";\"Marcheno\";\"main\"\n\"3174002\";\"marukeno\";\"other\"\n\"3174002\";\"マルケーノ\";\"other\"\n\"3174006\";\"Marcellina\";\"main\"\n\"3174006\";\"marucherrina\";\"other\"\n\"3174006\";\"マルチェッリーナ\";\"other\"\n\"3174008\";\"Marcaria\";\"main\"\n\"3174009\";\"Marcallo con Casone\";\"main\"\n\"3174009\";\"マルカッロ・コン・カゾーネ\";\"other\"\n\"3174014\";\"Marano Vicentino\";\"main\"\n\"3174014\";\"Marano\";\"other\"\n\"3174015\";\"Marano Ticino\";\"main\"\n\"3174016\";\"Marano sul Panaro\";\"main\"\n\"3174016\";\"Marano\";\"other\"\n\"3174017\";\"Marano Lagunare\";\"main\"\n\"3174017\";\"Maran\";\"other\"\n\"3174020\";\"Marano di Valpolicella\";\"main\"\n\"3174021\";\"Marano di Napoli\";\"main\"\n\"3174021\";\"Marano\";\"other\"\n\"3174021\";\"Marano 'e Napule\";\"other\"\n\"3174021\";\"マラーノ・ディ・ナーポリ\";\"other\"\n\"3174032\";\"Maranello\";\"main\"\n\"3174032\";\"Maranelo\";\"other\"\n\"3174032\";\"maranerro\";\"other\"\n\"3174032\";\"Маранелло\";\"other\"\n\"3174032\";\"Маранело\";\"other\"\n\"3174032\";\"マラネッロ\";\"other\"\n\"3174038\";\"Mapello\";\"main\"\n\"3174043\";\"Manziana\";\"main\"\n\"3174043\";\"mantsu~iana\";\"other\"\n\"3174043\";\"マンツィアーナ\";\"other\"\n\"3174045\";\"Manzano\";\"main\"\n\"3174045\";\"Manzan\";\"other\"\n\"3174051\";\"Mantova\";\"main\"\n\"3174051\";\"Mantoue\";\"other\"\n\"3174051\";\"Mantua\";\"other\"\n\"3174051\";\"Mantuja\";\"other\"\n\"3174051\";\"Мантуя\";\"other\"\n\"3174054\";\"Manta\";\"main\"\n\"3174054\";\"manta\";\"other\"\n\"3174054\";\"マンタ\";\"other\"\n\"3174055\";\"Mansuè\";\"main\"\n\"3174055\";\"Mansue\";\"ascii\"\n\"3174056\";\"Manoppello\";\"main\"\n\"3174057\";\"Manocalzati\";\"main\"\n\"3174084\";\"Maniago\";\"main\"\n\"3174084\";\"Mania\";\"other\"\n\"3174086\";\"Mango\";\"main\"\n\"3174086\";\"mango\";\"other\"\n\"3174086\";\"マンゴ\";\"other\"\n\"3174092\";\"Manfredonia\";\"main\"\n\"3174092\";\"Manfredonija\";\"other\"\n\"3174092\";\"Manfredònia\";\"other\"\n\"3174092\";\"manfuredonia\";\"other\"\n\"3174092\";\"Манфредония\";\"other\"\n\"3174092\";\"マンフレドーニア\";\"other\"\n\"3174093\";\"Manerbio\";\"main\"\n\"3174093\";\"manerbio\";\"other\"\n\"3174093\";\"manerubio\";\"other\"\n\"3174093\";\"Манербио\";\"other\"\n\"3174093\";\"マネルビオ\";\"other\"\n\"3174096\";\"Manduria\";\"main\"\n\"3174096\";\"Mandurija\";\"other\"\n\"3174096\";\"Мандурия\";\"other\"\n\"3174107\";\"Mandello del Lario\";\"main\"\n\"3174107\";\"Mandello\";\"other\"\n\"3174112\";\"Manciano\";\"main\"\n\"3174120\";\"Mamoiada\";\"main\"\n\"3174120\";\"Mamojada\";\"other\"\n\"3174130\";\"Maltignano\";\"main\"\n\"3174137\";\"Malonno\";\"main\"\n\"3174137\";\"maron'no\";\"other\"\n\"3174137\";\"マロンノ\";\"other\"\n\"3174139\";\"Malo\";\"main\"\n\"3174141\";\"Malnate\";\"main\"\n\"3174141\";\"marunate\";\"other\"\n\"3174141\";\"マルナーテ\";\"other\"\n\"3174144\";\"Malles Venosta - Mals\";\"main\"\n\"3174144\";\"Malles Venosta\";\"ascii\"\n\"3174144\";\"Malles\";\"other\"\n\"3174144\";\"Mals\";\"other\"\n\"3174144\";\"Málles\";\"other\"\n\"3174144\";\"マッレス・ヴェノスタ\";\"other\"\n\"3174154\";\"Malgrate\";\"main\"\n\"3174182\";\"Malesco\";\"main\"\n\"3174183\";\"Maleo\";\"main\"\n\"3174183\";\"mareo\";\"other\"\n\"3174183\";\"マレーオ\";\"other\"\n\"3174186\";\"Malè\";\"main\"\n\"3174186\";\"Male\";\"ascii\"\n\"3174186\";\"mare\";\"other\"\n\"3174186\";\"マレ\";\"other\"\n\"3174188\";\"Malcesine\";\"main\"\n\"3174190\";\"Malborghetto Valbruna\";\"main\"\n\"3174190\";\"Malborghet\";\"other\"\n\"3174190\";\"Malborghetto\";\"other\"\n\"3174190\";\"Malborghèt\";\"other\"\n\"3174198\";\"Malalbergo\";\"main\"\n\"3174209\";\"Mairano\";\"main\"\n\"3174209\";\"mairano\";\"other\"\n\"3174209\";\"マイラーノ\";\"other\"\n\"3174214\";\"Maiori\";\"main\"\n\"3174214\";\"Majori\";\"other\"\n\"3174214\";\"Majure\";\"other\"\n\"3174214\";\"Майори\";\"other\"\n\"3174220\";\"Maiolati Spontini\";\"main\"\n\"3174220\";\"Maiolati\";\"other\"\n\"3174220\";\"マイオラーティ・スポンティーニ\";\"other\"\n\"3174245\";\"Magnano in Riviera\";\"main\"\n\"3174245\";\"Magnan\";\"other\"\n\"3174245\";\"Magnano\";\"other\"\n\"3174250\";\"Magnago\";\"main\"\n\"3174250\";\"manyago\";\"other\"\n\"3174250\";\"マニャーゴ\";\"other\"\n\"3174253\";\"Magnacavallo\";\"main\"\n\"3174254\";\"Maglie\";\"main\"\n\"3174254\";\"Maddhie\";\"other\"\n\"3174254\";\"marie\";\"other\"\n\"3174254\";\"マリエ\";\"other\"\n\"3174256\";\"Magliano Sabina\";\"main\"\n\"3174256\";\"Magliano Sabino\";\"other\"\n\"3174257\";\"Magliano Romano\";\"main\"\n\"3174257\";\"マリアーノ・ロマーノ\";\"other\"\n\"3174259\";\"Magliano in Toscana\";\"main\"\n\"3174259\";\"Magliano Toscana\";\"other\"\n\"3174260\";\"Magliano di Tenna\";\"main\"\n\"3174261\";\"Magliano de' Marsi\";\"main\"\n\"3174261\";\"Magliano de'Marsi\";\"other\"\n\"3174262\";\"Magliano Alpi\";\"main\"\n\"3174262\";\"Magliano\";\"other\"\n\"3174273\";\"Magione\";\"main\"\n\"3174295\";\"Magenta\";\"main\"\n\"3174295\";\"Castra Maxentia\";\"other\"\n\"3174295\";\"ma zhen ta\";\"other\"\n\"3174295\";\"majenta\";\"other\"\n\"3174295\";\"マジェンタ\";\"other\"\n\"3174295\";\"马真塔\";\"other\"\n\"3174298\";\"Mafalda\";\"main\"\n\"3174298\";\"Ripalta sul Trigno\";\"other\"\n\"3174309\";\"Maenza\";\"main\"\n\"3174309\";\"maentsu~a\";\"other\"\n\"3174309\";\"マエンツァ\";\"other\"\n\"3174354\";\"Madignano\";\"main\"\n\"3174354\";\"Madigna\";\"other\"\n\"3174354\";\"Madignà\";\"other\"\n\"3174358\";\"Maddaloni\";\"main\"\n\"3174358\";\"Маддалони\";\"other\"\n\"3174367\";\"Macomer\";\"main\"\n\"3174377\";\"Macerata Feltria\";\"main\"\n\"3174378\";\"Macerata Campania\";\"main\"\n\"3174380\";\"Macerata\";\"main\"\n\"3174380\";\"Macherata\";\"other\"\n\"3174380\";\"macherata\";\"other\"\n\"3174380\";\"mz'rth\";\"other\"\n\"3174380\";\"Мачерата\";\"other\"\n\"3174380\";\"מצ'רטה\";\"other\"\n\"3174380\";\"マチェラータ\";\"other\"\n\"3174404\";\"Macchiagodena\";\"main\"\n\"3174411\";\"Maccagno\";\"main\"\n\"3174411\";\"Maccagno Superiore\";\"ascii\"\n\"3174416\";\"Luzzara\";\"main\"\n\"3174423\";\"Lustra\";\"main\"\n\"3174425\";\"Luson - Luesen\";\"main\"\n\"3174425\";\"Luson\";\"ascii\"\n\"3174425\";\"Luesen\";\"other\"\n\"3174425\";\"Lusen\";\"other\"\n\"3174425\";\"Lüsen\";\"other\"\n\"3174425\";\"ruzon\";\"other\"\n\"3174425\";\"ルゾーン\";\"other\"\n\"3174426\";\"Lusiana\";\"main\"\n\"3174427\";\"Lusia\";\"main\"\n\"3174429\";\"Luserna San Giovanni\";\"main\"\n\"3174429\";\"Luserna\";\"other\"\n\"3174429\";\"Luserna Sant Jan\";\"other\"\n\"3174429\";\"Luserna Sant Joan\";\"other\"\n\"3174429\";\"Lusèrna\";\"other\"\n\"3174429\";\"Lusèrna Sant Jan\";\"other\"\n\"3174429\";\"Lusèrna Sant Joan\";\"other\"\n\"3174429\";\"ルゼルナ・サン・ジョヴァンニ\";\"other\"\n\"3174435\";\"Lurate Caccivio\";\"main\"\n\"3174435\";\"Caccivio\";\"other\"\n\"3174435\";\"Lurate\";\"other\"\n\"3174437\";\"Luras\";\"main\"\n\"3174437\";\"Lurisi\";\"other\"\n\"3174438\";\"Lurago Marinone\";\"main\"\n\"3174439\";\"Lurago d'Erba\";\"main\"\n\"3174451\";\"Luogosanto\";\"main\"\n\"3174451\";\"Luogo Santo\";\"ascii\"\n\"3174452\";\"Luogosano\";\"main\"\n\"3174463\";\"Lungavilla\";\"main\"\n\"3174472\";\"Lunano\";\"main\"\n\"3174482\";\"Lula\";\"main\"\n\"3174483\";\"Luino\";\"main\"\n\"3174494\";\"Lugo\";\"main\"\n\"3174494\";\"rugo\";\"other\"\n\"3174494\";\"Луго\";\"other\"\n\"3174494\";\"ルーゴ\";\"other\"\n\"3174496\";\"Lugnano in Teverina\";\"main\"\n\"3174503\";\"Lugagnano Val d'Arda\";\"main\"\n\"3174503\";\"Lugagnana Val d'Arda\";\"other\"\n\"3174510\";\"Luco dei Marsi\";\"main\"\n\"3174510\";\"Luco de Marsi\";\"other\"\n\"3174510\";\"Luco ne' Marsi\";\"other\"\n\"3174515\";\"Montano Lucino\";\"main\"\n\"3174515\";\"Lucino\";\"ascii\"\n\"3174520\";\"Lucignano\";\"main\"\n\"3174526\";\"Lucera\";\"main\"\n\"3174526\";\"Luchera\";\"other\"\n\"3174526\";\"lutseriumi\";\"other\"\n\"3174526\";\"Лучера\";\"other\"\n\"3174526\";\"ლუცერიუმი\";\"other\"\n\"3174530\";\"Lucca\";\"main\"\n\"3174530\";\"Locca\";\"other\"\n\"3174530\";\"Luca\";\"other\"\n\"3174530\";\"Lucques\";\"other\"\n\"3174530\";\"Luka\";\"other\"\n\"3174530\";\"Lukka\";\"other\"\n\"3174530\";\"lu ka\";\"other\"\n\"3174530\";\"rukka\";\"other\"\n\"3174530\";\"Лука\";\"other\"\n\"3174530\";\"Лукка\";\"other\"\n\"3174530\";\"ルッカ\";\"other\"\n\"3174530\";\"卢卡\";\"other\"\n\"3174535\";\"Lu\";\"main\"\n\"3174538\";\"Lozzo di Cadore\";\"main\"\n\"3174538\";\"Lozzo Cadore\";\"ascii\"\n\"3174538\";\"Lozzo\";\"other\"\n\"3174539\";\"Lozzo Atestino\";\"main\"\n\"3174543\";\"Lovere\";\"main\"\n\"3174543\";\"rovu~ere\";\"other\"\n\"3174543\";\"ローヴェレ\";\"other\"\n\"3174557\";\"Loro Piceno\";\"main\"\n\"3174557\";\"Loro\";\"other\"\n\"3174558\";\"Loro Ciuffenna\";\"main\"\n\"3174563\";\"Loria\";\"main\"\n\"3174565\";\"Loreto Aprutino\";\"main\"\n\"3174567\";\"Loreto\";\"main\"\n\"3174567\";\"Lauretum\";\"other\"\n\"3174567\";\"roreto\";\"other\"\n\"3174567\";\"ロレート\";\"other\"\n\"3174570\";\"Loreo\";\"main\"\n\"3174573\";\"Lorenzana\";\"main\"\n\"3174577\";\"Loreggia\";\"main\"\n\"3174580\";\"Loranzè\";\"main\"\n\"3174580\";\"Loranze\";\"ascii\"\n\"3174580\";\"Loranse\";\"other\"\n\"3174580\";\"Loransé\";\"other\"\n\"3174580\";\"rorantsu~e\";\"other\"\n\"3174580\";\"ロランツェ\";\"other\"\n\"3174587\";\"Lonigo\";\"main\"\n\"3174593\";\"Longiano\";\"main\"\n\"3174598\";\"Longarone\";\"main\"\n\"3174599\";\"Longare\";\"main\"\n\"3174605\";\"Londa\";\"main\"\n\"3174607\";\"Lonato\";\"main\"\n\"3174607\";\"ronato\";\"other\"\n\"3174607\";\"ロナート\";\"other\"\n\"3174608\";\"Lonate Pozzolo\";\"main\"\n\"3174609\";\"Lonate Ceppino\";\"main\"\n\"3174611\";\"Lomello\";\"main\"\n\"3174615\";\"Lombardore\";\"main\"\n\"3174615\";\"Lombardor\";\"other\"\n\"3174615\";\"ronbarudore\";\"other\"\n\"3174615\";\"ロンバルドーレ\";\"other\"\n\"3174621\";\"Lomazzo\";\"main\"\n\"3174623\";\"Lomagna\";\"main\"\n\"3174628\";\"Loiri Porto San Paolo\";\"main\"\n\"3174628\";\"Loiri\";\"ascii\"\n\"3174629\";\"Loiano\";\"main\"\n\"3174632\";\"Lograto\";\"main\"\n\"3174632\";\"rogurato\";\"other\"\n\"3174632\";\"ログラート\";\"other\"\n\"3174636\";\"Lodi Vecchio\";\"main\"\n\"3174636\";\"ローディ・ヴェッキオ\";\"other\"\n\"3174638\";\"Lodi\";\"main\"\n\"3174638\";\"Laus Pompeia\";\"other\"\n\"3174638\";\"Lod\";\"other\"\n\"3174638\";\"Lòd\";\"other\"\n\"3174638\";\"rodi\";\"other\"\n\"3174638\";\"Лоди\";\"other\"\n\"3174638\";\"ローディ\";\"other\"\n\"3174639\";\"Lodè\";\"main\"\n\"3174639\";\"Lode\";\"ascii\"\n\"3174641\";\"Locorotondo\";\"main\"\n\"3174641\";\"rokorotondo\";\"other\"\n\"3174641\";\"ロコロトンド\";\"other\"\n\"3174644\";\"Locate Varesino\";\"main\"\n\"3174645\";\"Locate di Triulzi\";\"main\"\n\"3174645\";\"Locate Triulzi\";\"other\"\n\"3174645\";\"ロカーテ・ディ・トリウルツィ\";\"other\"\n\"3174647\";\"Locana\";\"main\"\n\"3174647\";\"Locan-a\";\"other\"\n\"3174647\";\"rokana\";\"other\"\n\"3174647\";\"ロカーナ\";\"other\"\n\"3174649\";\"Loano\";\"main\"\n\"3174649\";\"Leua\";\"other\"\n\"3174652\";\"Lizzano in Belvedere\";\"main\"\n\"3174652\";\"Lizan\";\"other\"\n\"3174652\";\"Lizzano Belvedere\";\"other\"\n\"3174652\";\"Lizàn\";\"other\"\n\"3174653\";\"Lizzano\";\"main\"\n\"3174654\";\"Lizzanello\";\"main\"\n\"3174655\";\"Livorno Ferraris\";\"main\"\n\"3174659\";\"Livorno\";\"main\"\n\"3174659\";\"Labro\";\"other\"\n\"3174659\";\"Leghorn\";\"other\"\n\"3174659\";\"Levuorno\";\"other\"\n\"3174659\";\"Liborno\";\"other\"\n\"3174659\";\"Liorna\";\"other\"\n\"3174659\";\"Livorn\";\"other\"\n\"3174659\";\"Livornas\";\"other\"\n\"3174659\";\"Livornu\";\"other\"\n\"3174659\";\"Livourne\";\"other\"\n\"3174659\";\"lybwrnw\";\"other\"\n\"3174659\";\"lyfwrnw\";\"other\"\n\"3174659\";\"rivu~oruno\";\"other\"\n\"3174659\";\"Λιβόρνο\";\"other\"\n\"3174659\";\"Ливорно\";\"other\"\n\"3174659\";\"ליבורנו\";\"other\"\n\"3174659\";\"ليفورنو\";\"other\"\n\"3174659\";\"リヴォルノ\";\"other\"\n\"3174663\";\"Livinallongo del Col di Lana\";\"main\"\n\"3174664\";\"Livigno\";\"main\"\n\"3174666\";\"Liveri\";\"main\"\n\"3174666\";\"rivu~eri\";\"other\"\n\"3174666\";\"リーヴェリ\";\"other\"\n\"3174679\";\"Lissone\";\"main\"\n\"3174679\";\"Lissun\";\"other\"\n\"3174679\";\"Lissún\";\"other\"\n\"3174679\";\"rissone\";\"other\"\n\"3174679\";\"Лиссоне\";\"other\"\n\"3174679\";\"リッソーネ\";\"other\"\n\"3174692\";\"Liscate\";\"main\"\n\"3174692\";\"risukate\";\"other\"\n\"3174692\";\"リスカーテ\";\"other\"\n\"3174697\";\"Lioni\";\"main\"\n\"3174710\";\"Limone sul Garda\";\"main\"\n\"3174710\";\"Limone\";\"other\"\n\"3174710\";\"jia da\";\"other\"\n\"3174710\";\"リモーネ・スル・ガルダ\";\"other\"\n\"3174710\";\"加达\";\"other\"\n\"3174711\";\"Limone Piemonte\";\"main\"\n\"3174711\";\"Limon\";\"other\"\n\"3174718\";\"Limena\";\"main\"\n\"3174719\";\"Limbiate\";\"main\"\n\"3174719\";\"Limb'jate\";\"other\"\n\"3174719\";\"rinbiate\";\"other\"\n\"3174719\";\"Лимбьяте\";\"other\"\n\"3174719\";\"リンビアーテ\";\"other\"\n\"3174721\";\"Limatola\";\"main\"\n\"3174728\";\"Ligonchio\";\"main\"\n\"3174729\";\"Lignano Sabbiadoro\";\"main\"\n\"3174729\";\"Lignan\";\"other\"\n\"3174729\";\"Lignano\";\"other\"\n\"3174737\";\"Lierna\";\"main\"\n\"3174741\";\"Lido di Roma\";\"main\"\n\"3174741\";\"Lido di Ostia\";\"other\"\n\"3174741\";\"Lido-di-Ostija\";\"other\"\n\"3174741\";\"Lido-di-Roma\";\"other\"\n\"3174741\";\"Ostia Lido\";\"other\"\n\"3174741\";\"Лидо-ди-Остия\";\"other\"\n\"3174741\";\"Лидо-ди-Рома\";\"other\"\n\"3174760\";\"Licciana Nardi\";\"main\"\n\"3174760\";\"Licciana\";\"other\"\n\"3174760\";\"リッチャーナ・ナルディ\";\"other\"\n\"3174767\";\"Liberi\";\"main\"\n\"3174776\";\"Lezzeno\";\"main\"\n\"3174784\";\"Levico Terme\";\"main\"\n\"3174784\";\"Levico\";\"other\"\n\"3174784\";\"レーヴィコ・テルメ\";\"other\"\n\"3174789\";\"Leverano\";\"main\"\n\"3174793\";\"Levanto\";\"main\"\n\"3174812\";\"Lettomanoppello\";\"main\"\n\"3174824\";\"Lestizza\";\"main\"\n\"3174824\";\"Lestice\";\"other\"\n\"3174824\";\"Listize\";\"other\"\n\"3174826\";\"Lessona\";\"main\"\n\"3174827\";\"Lessolo\";\"main\"\n\"3174827\";\"Lesseul\";\"other\"\n\"3174827\";\"ressoro\";\"other\"\n\"3174827\";\"レッソロ\";\"other\"\n\"3174833\";\"Lesina\";\"main\"\n\"3174836\";\"Lesignano de' Bagni\";\"main\"\n\"3174836\";\"Lesignano de'Bagni\";\"other\"\n\"3174847\";\"Lesa\";\"main\"\n\"3174847\";\"reza\";\"other\"\n\"3174847\";\"レーザ\";\"other\"\n\"3174856\";\"Lerici\";\"main\"\n\"3174856\";\"Lerze\";\"other\"\n\"3174859\";\"Lequile\";\"main\"\n\"3174859\";\"Lequille\";\"other\"\n\"3174865\";\"Leporano\";\"main\"\n\"3174875\";\"Leonessa\";\"main\"\n\"3174885\";\"Lentiai\";\"main\"\n\"3174888\";\"Lentate sul Seveso\";\"main\"\n\"3174888\";\"Lentate\";\"other\"\n\"3174888\";\"レンターテ・スル・セーヴェゾ\";\"other\"\n\"3174891\";\"Lenola\";\"main\"\n\"3174891\";\"renora\";\"other\"\n\"3174891\";\"レーノラ\";\"other\"\n\"3174892\";\"Leno\";\"main\"\n\"3174892\";\"reno\";\"other\"\n\"3174892\";\"レーノ\";\"other\"\n\"3174893\";\"Lenno\";\"main\"\n\"3174896\";\"Lendinara\";\"main\"\n\"3174911\";\"Leinì\";\"main\"\n\"3174911\";\"Leini\";\"ascii\"\n\"3174911\";\"Leyni\";\"other\"\n\"3174911\";\"Leynj\";\"other\"\n\"3174911\";\"reini\";\"other\"\n\"3174911\";\"レイニ\";\"other\"\n\"3174920\";\"Legnaro\";\"main\"\n\"3174921\";\"Legnano\";\"main\"\n\"3174921\";\"Len'jano\";\"other\"\n\"3174921\";\"renyano\";\"other\"\n\"3174921\";\"Леньяно\";\"other\"\n\"3174921\";\"レニャーノ\";\"other\"\n\"3174922\";\"Legnago\";\"main\"\n\"3174922\";\"Len'jago\";\"other\"\n\"3174922\";\"Леньяго\";\"other\"\n\"3174928\";\"Leffe\";\"main\"\n\"3174945\";\"Lecco\";\"main\"\n\"3174945\";\"Lech\";\"other\"\n\"3174945\";\"Lekko\";\"other\"\n\"3174945\";\"Leucum\";\"other\"\n\"3174945\";\"rekko\";\"other\"\n\"3174945\";\"Лекко\";\"other\"\n\"3174945\";\"レッコ\";\"other\"\n\"3174950\";\"Lecce nei Marsi\";\"main\"\n\"3174950\";\"Lecce ne' Marsi\";\"ascii\"\n\"3174950\";\"Lecce dei Marse\";\"other\"\n\"3174953\";\"Lecce\";\"main\"\n\"3174953\";\"Lecci\";\"other\"\n\"3174953\";\"Lece\";\"other\"\n\"3174953\";\"Lechche\";\"other\"\n\"3174953\";\"Leche\";\"other\"\n\"3174953\";\"Luppiu\";\"other\"\n\"3174953\";\"Rudiae\";\"other\"\n\"3174953\";\"lai qie\";\"other\"\n\"3174953\";\"retche\";\"other\"\n\"3174953\";\"Лече\";\"other\"\n\"3174953\";\"Лечче\";\"other\"\n\"3174953\";\"Леће\";\"other\"\n\"3174953\";\"レッチェ\";\"other\"\n\"3174953\";\"萊切\";\"other\"\n\"3174975\";\"Lazise\";\"main\"\n\"3174984\";\"Lavis\";\"main\"\n\"3174984\";\"ravu~isu\";\"other\"\n\"3174984\";\"ラヴィース\";\"other\"\n\"3174994\";\"Laviano\";\"main\"\n\"3175003\";\"Laveno-Mombello\";\"main\"\n\"3175004\";\"Laveno\";\"main\"\n\"3175004\";\"Laveno Mombello\";\"other\"\n\"3175009\";\"Lavello\";\"main\"\n\"3175017\";\"La Valle Agordina\";\"main\"\n\"3175017\";\"La Valle\";\"ascii\"\n\"3175024\";\"Lavagna\";\"main\"\n\"3175030\";\"Lauro\";\"main\"\n\"3175032\";\"Laurino\";\"main\"\n\"3175033\";\"Lauriano\";\"main\"\n\"3175033\";\"Laurian\";\"other\"\n\"3175033\";\"rauriano\";\"other\"\n\"3175033\";\"ラウリアーノ\";\"other\"\n\"3175034\";\"Lauria\";\"main\"\n\"3175034\";\"Lauria Inferiore\";\"ascii\"\n\"3175037\";\"Laurenzana\";\"main\"\n\"3175039\";\"Laureana Cilento\";\"main\"\n\"3175045\";\"Latronico\";\"main\"\n\"3175055\";\"Latisana\";\"main\"\n\"3175055\";\"Latisane\";\"other\"\n\"3175055\";\"Tisane\";\"other\"\n\"3175058\";\"Latina\";\"main\"\n\"3175058\";\"Littoria\";\"other\"\n\"3175058\";\"ratina\";\"other\"\n\"3175058\";\"Латина\";\"other\"\n\"3175058\";\"ラティーナ\";\"other\"\n\"3175061\";\"Latiano\";\"main\"\n\"3175064\";\"Laterza\";\"main\"\n\"3175067\";\"Laterina\";\"main\"\n\"3175068\";\"Latera\";\"main\"\n\"3175074\";\"Lastra a Signa\";\"main\"\n\"3175081\";\"La Spezia\";\"main\"\n\"3175081\";\"La Specija\";\"other\"\n\"3175081\";\"Specija\";\"other\"\n\"3175081\";\"Spedia\";\"other\"\n\"3175081\";\"Speza\";\"other\"\n\"3175081\";\"Spezia\";\"other\"\n\"3175081\";\"Ла Специја\";\"other\"\n\"3175081\";\"Специя\";\"other\"\n\"3175081\";\"ラ・スペツィア\";\"other\"\n\"3175084\";\"Lasino\";\"main\"\n\"3175084\";\"rajino\";\"other\"\n\"3175084\";\"ラジーノ\";\"other\"\n\"3175093\";\"La Salle\";\"main\"\n\"3175093\";\"Sala Dora\";\"other\"\n\"3175096\";\"Lasa - Laas\";\"main\"\n\"3175096\";\"Lasa\";\"ascii\"\n\"3175096\";\"Laas\";\"other\"\n\"3175096\";\"raza\";\"other\"\n\"3175096\";\"ラーザ\";\"other\"\n\"3175105\";\"Larino\";\"main\"\n\"3175106\";\"Lariano\";\"main\"\n\"3175106\";\"rariano\";\"other\"\n\"3175106\";\"ラリアーノ\";\"other\"\n\"3175108\";\"Lari\";\"main\"\n\"3175108\";\"rari\";\"other\"\n\"3175108\";\"ラーリ\";\"other\"\n\"3175113\";\"Lardirago\";\"main\"\n\"3175121\";\"L’Aquila\";\"main\"\n\"3175121\";\"L'Aquila\";\"ascii\"\n\"3175121\";\"Aquila\";\"other\"\n\"3175121\";\"Aquila degli Abruzzi\";\"other\"\n\"3175121\";\"L'Akvila\";\"other\"\n\"3175121\";\"rakuira\";\"other\"\n\"3175121\";\"Áquila\";\"other\"\n\"3175121\";\"Л’Аквила\";\"other\"\n\"3175121\";\"ラクイラ\";\"other\"\n\"3175128\";\"Lapio\";\"main\"\n\"3175138\";\"Lapedona\";\"main\"\n\"3175150\";\"Lanzo Torinese\";\"main\"\n\"3175150\";\"Lans\";\"other\"\n\"3175150\";\"ランツォ・トリネーゼ\";\"other\"\n\"3175152\";\"Lanzo d'Intelvi\";\"main\"\n\"3175152\";\"Lanzo\";\"other\"\n\"3175156\";\"Lanuvio\";\"main\"\n\"3175156\";\"ranuvu~io\";\"other\"\n\"3175156\";\"ラヌーヴィオ\";\"other\"\n\"3175163\";\"Langhirano\";\"main\"\n\"3175168\";\"Landriano\";\"main\"\n\"3175173\";\"Lanciano\";\"main\"\n\"3175173\";\"Lanchano\";\"other\"\n\"3175173\";\"Ланчано\";\"other\"\n\"3175177\";\"Lana - Lana\";\"main\"\n\"3175177\";\"Lana\";\"ascii\"\n\"3175177\";\"Lana d'Adige\";\"other\"\n\"3175177\";\"rana\";\"other\"\n\"3175177\";\"ラーナ\";\"other\"\n\"3175182\";\"Lamporecchio\";\"main\"\n\"3175184\";\"La Morra\";\"main\"\n\"3175189\";\"Lamon\";\"main\"\n\"3175208\";\"Lama Mocogno\";\"main\"\n\"3175208\";\"Lama\";\"other\"\n\"3175216\";\"Lama dei Peligni\";\"main\"\n\"3175216\";\"Lama Di Peligni\";\"other\"\n\"3175217\";\"La Maddalena\";\"main\"\n\"3175217\";\"ラ・マッダレーナ\";\"other\"\n\"3175228\";\"La Loggia\";\"main\"\n\"3175228\";\"La Logia\";\"other\"\n\"3175228\";\"La Lògia\";\"other\"\n\"3175228\";\"ラ・ロッジャ\";\"other\"\n\"3175230\";\"Lallio\";\"main\"\n\"3175235\";\"Laives - Leifers\";\"main\"\n\"3175235\";\"Laives\";\"other\"\n\"3175235\";\"Leifers\";\"other\"\n\"3175235\";\"raivu~esu\";\"other\"\n\"3175235\";\"ライヴェス\";\"other\"\n\"3175236\";\"Laion - Lajen\";\"main\"\n\"3175236\";\"Laion\";\"ascii\"\n\"3175236\";\"Lajen\";\"other\"\n\"3175236\";\"Lajon\";\"other\"\n\"3175236\";\"Loyen\";\"other\"\n\"3175236\";\"raion\";\"other\"\n\"3175236\";\"ライオーン\";\"other\"\n\"3175238\";\"Lainate\";\"main\"\n\"3175238\";\"rainate\";\"other\"\n\"3175238\";\"ライナーテ\";\"other\"\n\"3175239\";\"Laigueglia\";\"main\"\n\"3175239\";\"L'Aigheuja\";\"other\"\n\"3175239\";\"L’Aigheuja\";\"other\"\n\"3175240\";\"Lajatico\";\"main\"\n\"3175240\";\"Laiatico\";\"ascii\"\n\"3175240\";\"Lajàtico\";\"other\"\n\"3175243\";\"Lagundo\";\"main\"\n\"3175243\";\"Algund\";\"other\"\n\"3175243\";\"ragundo\";\"other\"\n\"3175243\";\"ラグンド\";\"other\"\n\"3175248\";\"Lagosanto\";\"main\"\n\"3175253\";\"Lagonegro\";\"main\"\n\"3175293\";\"Laerru\";\"main\"\n\"3175298\";\"Ladispoli\";\"main\"\n\"3175298\";\"radisupori\";\"other\"\n\"3175298\";\"Ладисполи\";\"other\"\n\"3175298\";\"ラディスポリ\";\"other\"\n\"3175328\";\"Laces - Latsch\";\"main\"\n\"3175328\";\"Laces\";\"ascii\"\n\"3175328\";\"Latsch\";\"other\"\n\"3175328\";\"rachesu\";\"other\"\n\"3175328\";\"ラーチェス\";\"other\"\n\"3175334\";\"Lacedonia\";\"main\"\n\"3175335\";\"Lacco Ameno\";\"main\"\n\"3175335\";\"ラッコ・アメーノ\";\"other\"\n\"3175337\";\"Lacchiarella\";\"main\"\n\"3175367\";\"Labico\";\"main\"\n\"3175367\";\"rabiko\";\"other\"\n\"3175367\";\"ラビーコ\";\"other\"\n\"3175382\";\"Izano\";\"main\"\n\"3175384\";\"Ivrea\";\"main\"\n\"3175384\";\"Eporedia\";\"other\"\n\"3175384\";\"Ivree\";\"other\"\n\"3175384\";\"Ivreja\";\"other\"\n\"3175384\";\"Ivrèja\";\"other\"\n\"3175384\";\"Ivrée\";\"other\"\n\"3175384\";\"ivurea\";\"other\"\n\"3175384\";\"Ивреа\";\"other\"\n\"3175384\";\"イヴレーア\";\"other\"\n\"3175388\";\"Ittiri\";\"main\"\n\"3175392\";\"Itri\";\"main\"\n\"3175392\";\"itori\";\"other\"\n\"3175392\";\"イトリ\";\"other\"\n\"3175398\";\"Istrana\";\"main\"\n\"3175403\";\"Issogne\";\"main\"\n\"3175406\";\"Ispra\";\"main\"\n\"3175408\";\"Isorella\";\"main\"\n\"3175408\";\"izorerra\";\"other\"\n\"3175408\";\"イゾレッラ\";\"other\"\n\"3175414\";\"Isola Vicentina\";\"main\"\n\"3175424\";\"Isola Dovarese\";\"main\"\n\"3175427\";\"Isola del Liri\";\"main\"\n\"3175427\";\"Isola di Liri\";\"other\"\n\"3175428\";\"Isola della Scala\";\"main\"\n\"3175429\";\"Isola del Gran Sasso d'Italia\";\"main\"\n\"3175429\";\"Isola\";\"other\"\n\"3175429\";\"Isola del Gran Sasso\";\"other\"\n\"3175430\";\"Isola del Cantone\";\"main\"\n\"3175430\";\"L'Isoea do Canton\";\"other\"\n\"3175430\";\"L’Isöa do Canton\";\"other\"\n\"3175445\";\"Isernia\";\"main\"\n\"3175445\";\"Isérnia\";\"other\"\n\"3175445\";\"Izernija\";\"other\"\n\"3175445\";\"izerunia\";\"other\"\n\"3175445\";\"Изерния\";\"other\"\n\"3175445\";\"イゼルニア\";\"other\"\n\"3175447\";\"Iseo\";\"main\"\n\"3175447\";\"izeo\";\"other\"\n\"3175447\";\"イゼーオ\";\"other\"\n\"3175452\";\"Ischitella\";\"main\"\n\"3175453\";\"Ischia Porto\";\"main\"\n\"3175454\";\"Ischia di Castro\";\"main\"\n\"3175458\";\"Ischia\";\"main\"\n\"3175458\";\"Bagni\";\"other\"\n\"3175458\";\"Bagno\";\"other\"\n\"3175458\";\"Bagno d'Ischia\";\"other\"\n\"3175458\";\"Iscla\";\"other\"\n\"3175458\";\"Isk'ja\";\"other\"\n\"3175458\";\"Porto d'Ischia\";\"other\"\n\"3175458\";\"Villa Bagni\";\"other\"\n\"3175458\";\"Искья\";\"other\"\n\"3175466\";\"Irsina\";\"main\"\n\"3175474\";\"Irgoli\";\"main\"\n\"3175474\";\"Irgoli di Galtelli\";\"other\"\n\"3175488\";\"Jolanda di Savoia\";\"main\"\n\"3175488\";\"Iolanda di Savoia\";\"ascii\"\n\"3175491\";\"Inzago\";\"main\"\n\"3175491\";\"Andiciacum\";\"other\"\n\"3175491\";\"inzago\";\"other\"\n\"3175491\";\"インザーゴ\";\"other\"\n\"3175492\";\"Invorio\";\"main\"\n\"3175492\";\"Invorio Inferiore\";\"ascii\"\n\"3175494\";\"Inveruno\";\"main\"\n\"3175494\";\"in'vu~eruno\";\"other\"\n\"3175494\";\"インヴェルーノ\";\"other\"\n\"3175497\";\"Inverigo\";\"main\"\n\"3175498\";\"Introdacqua\";\"main\"\n\"3175499\";\"Introbio\";\"main\"\n\"3175521\";\"Induno Olona\";\"main\"\n\"3175525\";\"Incisa in Val d'Arno\";\"main\"\n\"3175525\";\"Incisa in Valdarno\";\"ascii\"\n\"3175525\";\"Incisa\";\"other\"\n\"3175525\";\"Incisa Val d'Arno\";\"other\"\n\"3175528\";\"Impruneta\";\"main\"\n\"3175532\";\"Imperia\";\"main\"\n\"3175532\";\"Imperija\";\"other\"\n\"3175532\";\"Impéria\";\"other\"\n\"3175532\";\"inperia\";\"other\"\n\"3175532\";\"Империя\";\"other\"\n\"3175532\";\"インペリア\";\"other\"\n\"3175537\";\"Imola\";\"main\"\n\"3175537\";\"Forum Cornelii\";\"other\"\n\"3175537\";\"Iommla\";\"other\"\n\"3175537\";\"imora\";\"other\"\n\"3175537\";\"Ímola\";\"other\"\n\"3175537\";\"Имола\";\"other\"\n\"3175537\";\"イーモラ\";\"other\"\n\"3175575\";\"Illorai\";\"main\"\n\"3175584\";\"Illasi\";\"main\"\n\"3175627\";\"Iesolo\";\"main\"\n\"3175627\";\"Capazuccherina\";\"other\"\n\"3175627\";\"Cavazuccherina\";\"other\"\n\"3175627\";\"Jesolo\";\"other\"\n\"3175627\";\"Jezolo\";\"other\"\n\"3175627\";\"Lido di Ezolo\";\"other\"\n\"3175627\";\"Lido di Jesolo\";\"other\"\n\"3175627\";\"i~ezoro\";\"other\"\n\"3175627\";\"Йезоло\";\"other\"\n\"3175627\";\"Лидо ди Езоло\";\"other\"\n\"3175627\";\"イェーゾロ\";\"other\"\n\"3175628\";\"Jesi\";\"main\"\n\"3175628\";\"Aesis\";\"other\"\n\"3175628\";\"Dzhezi\";\"other\"\n\"3175628\";\"Jezi\";\"other\"\n\"3175628\";\"i~eji\";\"other\"\n\"3175628\";\"Джези\";\"other\"\n\"3175628\";\"Йези\";\"other\"\n\"3175628\";\"イェージ\";\"other\"\n\"3175636\";\"Jelsi\";\"main\"\n\"3175636\";\"Ielsi\";\"ascii\"\n\"3175669\";\"Gussola\";\"main\"\n\"3175670\";\"Gussago\";\"main\"\n\"3175676\";\"Guiglia\";\"main\"\n\"3175678\";\"Guidonia\";\"main\"\n\"3175679\";\"Guidizzolo\";\"main\"\n\"3175680\";\"Guglionesi\";\"main\"\n\"3175687\";\"Gubbio\";\"main\"\n\"3175687\";\"gubbio\";\"other\"\n\"3175687\";\"gwbyw\";\"other\"\n\"3175687\";\"Губбио\";\"other\"\n\"3175687\";\"גוביו\";\"other\"\n\"3175687\";\"グッビオ\";\"other\"\n\"3175693\";\"Guastalla\";\"main\"\n\"3175697\";\"Guardistallo\";\"main\"\n\"3175703\";\"Guardia Sanframondi\";\"main\"\n\"3175707\";\"Guardia Lombardi\";\"main\"\n\"3175708\";\"Guardialfiera\";\"main\"\n\"3175709\";\"Guardiagrele\";\"main\"\n\"3175714\";\"Guardea\";\"main\"\n\"3175715\";\"Guarda Veneta\";\"main\"\n\"3175716\";\"Guardamiglio\";\"main\"\n\"3175716\";\"guarudamirio\";\"other\"\n\"3175716\";\"グアルダミーリオ\";\"other\"\n\"3175718\";\"Guarcino\";\"main\"\n\"3175720\";\"Gualtieri\";\"main\"\n\"3175722\";\"Gualdo Tadino\";\"main\"\n\"3175724\";\"Gualdo Cattaneo\";\"main\"\n\"3175735\";\"Guagnano\";\"main\"\n\"3175743\";\"Grumo Nevano\";\"main\"\n\"3175745\";\"Grumolo delle Abbadesse\";\"main\"\n\"3175745\";\"Grumolo\";\"other\"\n\"3175745\";\"Grumolo delle Badesse\";\"other\"\n\"3175745\";\"Grùmolo\";\"other\"\n\"3175746\";\"Grumo Appula\";\"main\"\n\"3175750\";\"Grumento Nova\";\"main\"\n\"3175750\";\"Saponaradi Grumento\";\"other\"\n\"3175752\";\"Grumello del Monte\";\"main\"\n\"3175753\";\"Grumello Cremonese ed Uniti\";\"main\"\n\"3175753\";\"Grumello Cremonese\";\"ascii\"\n\"3175755\";\"Grugliasco\";\"main\"\n\"3175755\";\"Grujasch\";\"other\"\n\"3175755\";\"gururiasuko\";\"other\"\n\"3175755\";\"グルリアスコ\";\"other\"\n\"3175756\";\"Gruaro\";\"main\"\n\"3175756\";\"Gruar\";\"other\"\n\"3175759\";\"Grottolella\";\"main\"\n\"3175760\";\"Grottole\";\"main\"\n\"3175765\";\"Grotte di Castro\";\"main\"\n\"3175770\";\"Grottazzolina\";\"main\"\n\"3175771\";\"Grottammare\";\"main\"\n\"3175772\";\"Grottaminarda\";\"main\"\n\"3175773\";\"Grottaglie\";\"main\"\n\"3175773\";\"Grottal'e\";\"other\"\n\"3175773\";\"Гротталье\";\"other\"\n\"3175775\";\"Grottaferrata\";\"main\"\n\"3175775\";\"Ferentino\";\"other\"\n\"3175775\";\"Ferèntino\";\"other\"\n\"3175775\";\"gurottaferrata\";\"other\"\n\"3175775\";\"グロッタフェッラータ\";\"other\"\n\"3175786\";\"Grosseto\";\"main\"\n\"3175786\";\"Гроссето\";\"other\"\n\"3175787\";\"Grosotto\";\"main\"\n\"3175787\";\"Grossotto\";\"other\"\n\"3175788\";\"Grosio\";\"main\"\n\"3175795\";\"Gropparello\";\"main\"\n\"3175798\";\"Gropello Cairoli\";\"main\"\n\"3175798\";\"Gropello\";\"other\"\n\"3175800\";\"Grontardo\";\"main\"\n\"3175803\";\"Gromo\";\"main\"\n\"3175807\";\"Grizzana Morandi\";\"main\"\n\"3175807\";\"Grizzana\";\"ascii\"\n\"3175808\";\"Grisignano di Zocco\";\"main\"\n\"3175808\";\"Grisignano\";\"other\"\n\"3175816\";\"Grigno\";\"main\"\n\"3175816\";\"gurinyo\";\"other\"\n\"3175816\";\"グリーニョ\";\"other\"\n\"3175818\";\"Grignasco\";\"main\"\n\"3175818\";\"Grignasch\";\"other\"\n\"3175825\";\"Gricignano di Aversa\";\"main\"\n\"3175825\";\"Gricignano d'Aversa\";\"ascii\"\n\"3175825\";\"Gricignano\";\"other\"\n\"3175830\";\"Grezzana\";\"main\"\n\"3175833\";\"Greve in Chianti\";\"main\"\n\"3175833\";\"Greve\";\"ascii\"\n\"3175840\";\"Gressan\";\"main\"\n\"3175840\";\"Gressen\";\"other\"\n\"3175856\";\"Grazzanise\";\"main\"\n\"3175860\";\"Gravina in Puglia\";\"main\"\n\"3175864\";\"Gravellona Toce\";\"main\"\n\"3175864\";\"Gravellona\";\"other\"\n\"3175865\";\"Gravellona Lomellina\";\"main\"\n\"3175865\";\"Gravellona\";\"ascii\"\n\"3175869\";\"Gravedona\";\"main\"\n\"3175869\";\"Gravidonia\";\"other\"\n\"3175880\";\"Grassano\";\"main\"\n\"3175884\";\"Granze\";\"main\"\n\"3175885\";\"Grantorto\";\"main\"\n\"3175885\";\"gurantoruto\";\"other\"\n\"3175885\";\"グラントルト\";\"other\"\n\"3175890\";\"Granozzo con Monticello\";\"main\"\n\"3175936\";\"Grandate\";\"main\"\n\"3175950\";\"Gragnano Trebbiense\";\"main\"\n\"3175952\";\"Gragnano\";\"main\"\n\"3175952\";\"Gran'jano\";\"other\"\n\"3175952\";\"guranyano\";\"other\"\n\"3175952\";\"Граньяно\";\"other\"\n\"3175952\";\"グラニャーノ\";\"other\"\n\"3175955\";\"Graglia\";\"main\"\n\"3175955\";\"guraria\";\"other\"\n\"3175955\";\"グラーリア\";\"other\"\n\"3175956\";\"Graffignano\";\"main\"\n\"3175956\";\"guraffinyano\";\"other\"\n\"3175956\";\"グラッフィニャーノ\";\"other\"\n\"3175957\";\"Gradoli\";\"main\"\n\"3175960\";\"Grado\";\"main\"\n\"3175960\";\"Grau\";\"other\"\n\"3175960\";\"Gravo\";\"other\"\n\"3175960\";\"gurado\";\"other\"\n\"3175960\";\"グラード\";\"other\"\n\"3175961\";\"Gradisca d’Isonzo\";\"main\"\n\"3175961\";\"Gradisca d'Isonzo\";\"ascii\"\n\"3175961\";\"Gradisca\";\"other\"\n\"3175961\";\"Gradiscje dal Lusinc\";\"other\"\n\"3175961\";\"Gradiska\";\"other\"\n\"3175965\";\"Gradara\";\"main\"\n\"3175968\";\"Gozzano\";\"main\"\n\"3175971\";\"Gottolengo\";\"main\"\n\"3175971\";\"gottorengo\";\"other\"\n\"3175971\";\"ゴットレンゴ\";\"other\"\n\"3175973\";\"Gossolengo\";\"main\"\n\"3175980\";\"Goro\";\"main\"\n\"3175981\";\"Gorno\";\"main\"\n\"3175983\";\"Gorle\";\"main\"\n\"3175984\";\"Gorla Maggiore\";\"main\"\n\"3175986\";\"Gorizia\";\"main\"\n\"3175986\";\"Goerz\";\"other\"\n\"3175986\";\"Gorica\";\"other\"\n\"3175986\";\"Goricija\";\"other\"\n\"3175986\";\"Goritz\";\"other\"\n\"3175986\";\"Gorycja\";\"other\"\n\"3175986\";\"Gurize\";\"other\"\n\"3175986\";\"Gurizze\";\"other\"\n\"3175986\";\"Göritz\";\"other\"\n\"3175986\";\"Görz\";\"other\"\n\"3175986\";\"goritsu~ia\";\"other\"\n\"3175986\";\"Гориция\";\"other\"\n\"3175986\";\"ゴリツィア\";\"other\"\n\"3175990\";\"Gorgonzola\";\"main\"\n\"3175990\";\"gorugonzora\";\"other\"\n\"3175990\";\"ゴルゴンゾーラ\";\"other\"\n\"3175994\";\"Gorgoglione\";\"main\"\n\"3176000\";\"Gordona\";\"main\"\n\"3176002\";\"Gonzaga\";\"main\"\n\"3176002\";\"gondzaga\";\"other\"\n\"3176002\";\"gonzaga\";\"other\"\n\"3176002\";\"გონძაგა\";\"other\"\n\"3176002\";\"ゴンザーガ\";\"other\"\n\"3176003\";\"Gonars\";\"main\"\n\"3176009\";\"Golfo Arnaci\";\"main\"\n\"3176009\";\"Golfo degli Aranci\";\"other\"\n\"3176012\";\"Golasecca\";\"main\"\n\"3176014\";\"Goito\";\"main\"\n\"3176014\";\"goito\";\"other\"\n\"3176014\";\"ゴーイト\";\"other\"\n\"3176019\";\"Godiasco\";\"main\"\n\"3176023\";\"Godega di Sant’Urbano\";\"main\"\n\"3176023\";\"Godega di Sant'Urbano\";\"ascii\"\n\"3176023\";\"Godega\";\"other\"\n\"3176023\";\"Godega Sant Urbano\";\"other\"\n\"3176023\";\"Godeno di Sant'Urbano\";\"other\"\n\"3176023\";\"Godeno di Sant’Urbano\";\"other\"\n\"3176041\";\"Giussano\";\"main\"\n\"3176041\";\"Giuessan\";\"other\"\n\"3176041\";\"Giüssàn\";\"other\"\n\"3176041\";\"Gluxianum\";\"other\"\n\"3176041\";\"jussano\";\"other\"\n\"3176041\";\"ジュッサーノ\";\"other\"\n\"3176043\";\"Giussago\";\"main\"\n\"3176044\";\"Giurdignano\";\"main\"\n\"3176046\";\"Giungano\";\"main\"\n\"3176053\";\"Giulianova\";\"main\"\n\"3176054\";\"Giuliano Teatino\";\"main\"\n\"3176054\";\"Giuliano Teanno\";\"other\"\n\"3176055\";\"Giuliano di Roma\";\"main\"\n\"3176059\";\"Giugliano in Campania\";\"main\"\n\"3176059\";\"Giuglian\";\"other\"\n\"3176059\";\"Giugliàn\";\"other\"\n\"3176059\";\"ジュリアーノ・イン・カンパーニア\";\"other\"\n\"3176060\";\"Giuggianello\";\"main\"\n\"3176064\";\"Gissi\";\"main\"\n\"3176072\";\"Giovinazzo\";\"main\"\n\"3176072\";\"Dzhovinacco\";\"other\"\n\"3176072\";\"Джовинаццо\";\"other\"\n\"3176082\";\"Giove\";\"main\"\n\"3176089\";\"Gioia Sannitica\";\"main\"\n\"3176090\";\"Gioia del Colle\";\"main\"\n\"3176090\";\"Dzhoja-del'-Kolle\";\"other\"\n\"3176090\";\"Gioja del Colle\";\"other\"\n\"3176090\";\"Джоя-дель-Колле\";\"other\"\n\"3176091\";\"Gioia dei Marsi\";\"main\"\n\"3176091\";\"Gioia de' Marsi\";\"other\"\n\"3176092\";\"Gioi\";\"main\"\n\"3176097\";\"Ginosa\";\"main\"\n\"3176125\";\"Giffoni Valle Piana\";\"main\"\n\"3176129\";\"Giavera del Montello\";\"main\"\n\"3176129\";\"Giavera\";\"other\"\n\"3176130\";\"Giaveno\";\"main\"\n\"3176130\";\"Giaven\";\"other\"\n\"3176130\";\"javu~eno\";\"other\"\n\"3176130\";\"ジャヴェーノ\";\"other\"\n\"3176145\";\"Giano dell'Umbria\";\"main\"\n\"3176163\";\"Ghisalba\";\"main\"\n\"3176167\";\"Ghilarza\";\"main\"\n\"3176170\";\"Ghiffa\";\"main\"\n\"3176170\";\"giffa\";\"other\"\n\"3176170\";\"ギッファ\";\"other\"\n\"3176176\";\"Ghemme\";\"main\"\n\"3176177\";\"Ghedi\";\"main\"\n\"3176177\";\"Gedi\";\"other\"\n\"3176177\";\"gedi\";\"other\"\n\"3176177\";\"Геди\";\"other\"\n\"3176177\";\"ゲーディ\";\"other\"\n\"3176178\";\"Gesualdo\";\"main\"\n\"3176178\";\"jezuarudo\";\"other\"\n\"3176178\";\"ジェズアルド\";\"other\"\n\"3176179\";\"Gessopalena\";\"main\"\n\"3176193\";\"Germagnano\";\"main\"\n\"3176193\";\"Gerinagnano\";\"other\"\n\"3176193\";\"Germagnan\";\"other\"\n\"3176193\";\"jerumanyano\";\"other\"\n\"3176193\";\"ジェルマニャーノ\";\"other\"\n\"3176198\";\"Gerano\";\"main\"\n\"3176198\";\"jerano\";\"other\"\n\"3176198\";\"ジェラーノ\";\"other\"\n\"3176203\";\"Genzano di Roma\";\"main\"\n\"3176203\";\"Dzhencano-di-Roma\";\"other\"\n\"3176203\";\"Genzano\";\"other\"\n\"3176203\";\"Дженцано-ди-Рома\";\"other\"\n\"3176203\";\"ジェンツァーノ・ディ・ローマ\";\"other\"\n\"3176204\";\"Genzano di Lucania\";\"main\"\n\"3176204\";\"Genzano\";\"other\"\n\"3176219\";\"Genova\";\"main\"\n\"3176219\";\"Cenova\";\"other\"\n\"3176219\";\"Dzenova\";\"other\"\n\"3176219\";\"Dženova\";\"other\"\n\"3176219\";\"Genes\";\"other\"\n\"3176219\";\"Genoa\";\"other\"\n\"3176219\";\"Genovo\";\"other\"\n\"3176219\";\"Genua\";\"other\"\n\"3176219\";\"Genuja\";\"other\"\n\"3176219\";\"Genès\";\"other\"\n\"3176219\";\"Genúa\";\"other\"\n\"3176219\";\"Gènova\";\"other\"\n\"3176219\";\"Génova\";\"other\"\n\"3176219\";\"Gênes\";\"other\"\n\"3176219\";\"Janov\";\"other\"\n\"3176219\";\"Xenova - Genova\";\"other\"\n\"3176219\";\"Xénova - Genova\";\"other\"\n\"3176219\";\"Zena\";\"other\"\n\"3176219\";\"genua\";\"other\"\n\"3176219\";\"jeno'a\";\"other\"\n\"3176219\";\"jenoba\";\"other\"\n\"3176219\";\"jenovu~a\";\"other\"\n\"3176219\";\"jnwa\";\"other\"\n\"3176219\";\"jnwt\";\"other\"\n\"3176219\";\"re na ya\";\"other\"\n\"3176219\";\"Ĝenovo\";\"other\"\n\"3176219\";\"Ђенова\";\"other\"\n\"3176219\";\"Генуа\";\"other\"\n\"3176219\";\"Генуя\";\"other\"\n\"3176219\";\"גנואה\";\"other\"\n\"3176219\";\"جنوا\";\"other\"\n\"3176219\";\"جنوة\";\"other\"\n\"3176219\";\"जेनोआ\";\"other\"\n\"3176219\";\"გენუა\";\"other\"\n\"3176219\";\"ジェノヴァ\";\"other\"\n\"3176219\";\"热那亚\";\"other\"\n\"3176219\";\"제노바\";\"other\"\n\"3176220\";\"Genola\";\"main\"\n\"3176226\";\"Genivolta\";\"main\"\n\"3176228\";\"Genga\";\"main\"\n\"3176228\";\"jenga\";\"other\"\n\"3176228\";\"ジェンガ\";\"other\"\n\"3176230\";\"Genazzano\";\"main\"\n\"3176230\";\"jenattsu~ano\";\"other\"\n\"3176230\";\"ジェナッツァーノ\";\"other\"\n\"3176233\";\"Gemonio\";\"main\"\n\"3176234\";\"Gemona del Friuli\";\"main\"\n\"3176234\";\"Gemona\";\"other\"\n\"3176234\";\"Glemone\";\"other\"\n\"3176236\";\"Gemmano\";\"main\"\n\"3176236\";\"Germmano\";\"other\"\n\"3176243\";\"Gazzuolo\";\"main\"\n\"3176244\";\"Gazzo Veronese\";\"main\"\n\"3176246\";\"Gazzo\";\"main\"\n\"3176254\";\"Gazzaniga\";\"main\"\n\"3176257\";\"Gazoldo degli Ippoliti\";\"main\"\n\"3176257\";\"Gazoldo\";\"other\"\n\"3176257\";\"Gazzoldo d'Ippoliti\";\"other\"\n\"3176259\";\"Gavorrano\";\"main\"\n\"3176260\";\"Gavoi\";\"main\"\n\"3176261\";\"Gavirate\";\"main\"\n\"3176266\";\"Gavignano\";\"main\"\n\"3176266\";\"gavu~inyano\";\"other\"\n\"3176266\";\"ガヴィニャーノ\";\"other\"\n\"3176269\";\"Gavi\";\"main\"\n\"3176269\";\"gavu~i\";\"other\"\n\"3176269\";\"ガーヴィ\";\"other\"\n\"3176272\";\"Gavello\";\"main\"\n\"3176277\";\"Gavardo\";\"main\"\n\"3176277\";\"gavu~arudo\";\"other\"\n\"3176277\";\"ガヴァルド\";\"other\"\n\"3176282\";\"Gattinara\";\"main\"\n\"3176282\";\"gattinara\";\"other\"\n\"3176282\";\"ガッティナーラ\";\"other\"\n\"3176283\";\"Gattatico\";\"main\"\n\"3176285\";\"Gassino Torinese\";\"main\"\n\"3176285\";\"Gassino\";\"other\"\n\"3176285\";\"Gasso\";\"other\"\n\"3176285\";\"Gássino\";\"other\"\n\"3176285\";\"ガッシーノ・トリネーゼ\";\"other\"\n\"3176287\";\"Garzeno\";\"main\"\n\"3176299\";\"Garlasco\";\"main\"\n\"3176304\";\"Gargnano\";\"main\"\n\"3176304\";\"garunyano\";\"other\"\n\"3176304\";\"ガルニャーノ\";\"other\"\n\"3176305\";\"Gargazzone - Gargazon\";\"main\"\n\"3176305\";\"Gargazzone\";\"ascii\"\n\"3176305\";\"Gargazon\";\"other\"\n\"3176305\";\"garugattsu~one\";\"other\"\n\"3176305\";\"ガルガッツォーネ\";\"other\"\n\"3176309\";\"Garessio\";\"main\"\n\"3176311\";\"Gardone Val Trompia\";\"main\"\n\"3176311\";\"ガルドーネ・ヴァル・トロンピア\";\"other\"\n\"3176312\";\"Gardone Riviera\";\"main\"\n\"3176312\";\"ガルドーネ・リヴィエーラ\";\"other\"\n\"3176320\";\"Garda\";\"main\"\n\"3176320\";\"garuda\";\"other\"\n\"3176320\";\"Гарда\";\"other\"\n\"3176320\";\"ガルダ\";\"other\"\n\"3176322\";\"Garbagnate Milanese\";\"main\"\n\"3176322\";\"ガルバニャーテ・ミラネーゼ\";\"other\"\n\"3176324\";\"Garaguso\";\"main\"\n\"3176330\";\"Gandino\";\"main\"\n\"3176333\";\"Gambolò\";\"main\"\n\"3176333\";\"Gambolo\";\"ascii\"\n\"3176334\";\"Gambettola\";\"main\"\n\"3176338\";\"Gambatesa\";\"main\"\n\"3176338\";\"Gambalesa\";\"other\"\n\"3176339\";\"Gambassi Terme\";\"main\"\n\"3176339\";\"Gambassi\";\"ascii\"\n\"3176343\";\"Gambara\";\"main\"\n\"3176343\";\"ganbara\";\"other\"\n\"3176343\";\"ガンバラ\";\"other\"\n\"3176346\";\"Galzignano Terme\";\"main\"\n\"3176346\";\"Galzignano\";\"ascii\"\n\"3176349\";\"Galtellì\";\"main\"\n\"3176349\";\"Galtelli\";\"ascii\"\n\"3176353\";\"Galluccio\";\"main\"\n\"3176366\";\"Gallipoli\";\"main\"\n\"3176366\";\"Kaddhipuli\";\"other\"\n\"3176366\";\"Галлиполи\";\"other\"\n\"3176367\";\"Gallio\";\"main\"\n\"3176369\";\"Gallinaro\";\"main\"\n\"3176373\";\"Galliera Veneta\";\"main\"\n\"3176375\";\"Galliera\";\"main\"\n\"3176376\";\"Gallicchio\";\"main\"\n\"3176377\";\"Gallicano nel Lazio\";\"main\"\n\"3176377\";\"ガッリカーノ・ネル・ラーツィオ\";\"other\"\n\"3176378\";\"Gallicano\";\"main\"\n\"3176379\";\"Galliate\";\"main\"\n\"3176384\";\"Gallese\";\"main\"\n\"3176391\";\"Gallarate\";\"main\"\n\"3176391\";\"Галларате\";\"other\"\n\"3176400\";\"Galeata\";\"main\"\n\"3176400\";\"gareata\";\"other\"\n\"3176400\";\"ガレアータ\";\"other\"\n\"3176405\";\"Galbiate\";\"main\"\n\"3176406\";\"Galatone\";\"main\"\n\"3176407\";\"Galatina\";\"main\"\n\"3176407\";\"Aspedro\";\"other\"\n\"3176410\";\"Gais - Gais\";\"main\"\n\"3176410\";\"Gais\";\"ascii\"\n\"3176410\";\"Cais\";\"other\"\n\"3176410\";\"gaisu\";\"other\"\n\"3176410\";\"ガイス\";\"other\"\n\"3176411\";\"Gaiole in Chianti\";\"main\"\n\"3176411\";\"ガイオーレ・イン・キアンティ\";\"other\"\n\"3176416\";\"Gaibanella\";\"main\"\n\"3176418\";\"Gaiba\";\"main\"\n\"3176420\";\"Gaiarine\";\"main\"\n\"3176432\";\"Gaglianico\";\"main\"\n\"3176433\";\"Gaggio Montano\";\"main\"\n\"3176436\";\"Gaggiano\";\"main\"\n\"3176436\";\"Oaggiano\";\"other\"\n\"3176436\";\"gajjano\";\"other\"\n\"3176436\";\"ガッジャーノ\";\"other\"\n\"3176438\";\"Gaeta\";\"main\"\n\"3176438\";\"Gaete\";\"other\"\n\"3176438\";\"Gaieta\";\"other\"\n\"3176438\";\"Gaète\";\"other\"\n\"3176438\";\"gaeta\";\"other\"\n\"3176438\";\"Гаета\";\"other\"\n\"3176438\";\"ガエータ\";\"other\"\n\"3176444\";\"Gabicce Mare\";\"main\"\n\"3176444\";\"Gabicce\";\"ascii\"\n\"3176445\";\"Gabiano\";\"main\"\n\"3176445\";\"Gabian\";\"other\"\n\"3176456\";\"Futani\";\"main\"\n\"3176467\";\"Fusignano\";\"main\"\n\"3176467\";\"fujinyano\";\"other\"\n\"3176467\";\"フジニャーノ\";\"other\"\n\"3176474\";\"Furci\";\"main\"\n\"3176486\";\"Fumone\";\"main\"\n\"3176489\";\"Fumane\";\"main\"\n\"3176504\";\"Fucecchio\";\"main\"\n\"3176504\";\"Fuchekkio\";\"other\"\n\"3176504\";\"Фучеккио\";\"other\"\n\"3176505\";\"Fubine\";\"main\"\n\"3176505\";\"Fubin-i\";\"other\"\n\"3176510\";\"Frugarolo\";\"main\"\n\"3176510\";\"furugaroro\";\"other\"\n\"3176510\";\"フルガローロ\";\"other\"\n\"3176512\";\"Frosolone\";\"main\"\n\"3176515\";\"Frosinone\";\"main\"\n\"3176515\";\"Fresulone\";\"other\"\n\"3176515\";\"Frozinone\";\"other\"\n\"3176515\";\"furojinone\";\"other\"\n\"3176515\";\"Фрозиноне\";\"other\"\n\"3176515\";\"フロジノーネ\";\"other\"\n\"3176516\";\"Frontone\";\"main\"\n\"3176521\";\"Front\";\"main\"\n\"3176521\";\"Fronta\";\"other\"\n\"3176521\";\"furonto\";\"other\"\n\"3176521\";\"フロント\";\"other\"\n\"3176527\";\"Frisa\";\"main\"\n\"3176533\";\"Frigento\";\"main\"\n\"3176538\";\"Fresagrandinaria\";\"main\"\n\"3176543\";\"Fregona\";\"main\"\n\"3176543\";\"Fregono\";\"other\"\n\"3176558\";\"Fratta Todina\";\"main\"\n\"3176558\";\"Fratta\";\"other\"\n\"3176559\";\"Fratta Polesine\";\"main\"\n\"3176559\";\"Fratta\";\"other\"\n\"3176560\";\"Frattaminore\";\"main\"\n\"3176560\";\"furattaminore\";\"other\"\n\"3176560\";\"フラッタミノーレ\";\"other\"\n\"3176561\";\"Frattamaggiore\";\"main\"\n\"3176561\";\"Frattamadzhore\";\"other\"\n\"3176561\";\"furattamajjore\";\"other\"\n\"3176561\";\"Фраттамаджоре\";\"other\"\n\"3176561\";\"フラッタマッジョーレ\";\"other\"\n\"3176571\";\"Frasso Telesino\";\"main\"\n\"3176573\";\"Frassinoro\";\"main\"\n\"3176578\";\"Frassineto Po\";\"main\"\n\"3176589\";\"Frascati\";\"main\"\n\"3176589\";\"furasukati\";\"other\"\n\"3176589\";\"フラスカーティ\";\"other\"\n\"3176596\";\"Francolise\";\"main\"\n\"3176602\";\"Francavilla in Sinni\";\"main\"\n\"3176602\";\"Francavilla\";\"other\"\n\"3176602\";\"Francavilla sul Sinni\";\"other\"\n\"3176603\";\"Francavilla Fontana\";\"main\"\n\"3176605\";\"Francavilla al Mare\";\"main\"\n\"3176614\";\"Fragneto Monforte\";\"main\"\n\"3176615\";\"Fragneto l'Abate\";\"main\"\n\"3176616\";\"Fragagnano\";\"main\"\n\"3176630\";\"Fossombrone\";\"main\"\n\"3176635\";\"Fossato di Vico\";\"main\"\n\"3176635\";\"Fossato\";\"other\"\n\"3176639\";\"Fossano\";\"main\"\n\"3176639\";\"Fossan\";\"other\"\n\"3176644\";\"Fossalto\";\"main\"\n\"3176645\";\"Fossalta di Portogruaro\";\"main\"\n\"3176645\";\"Fossalta\";\"other\"\n\"3176645\";\"Fossalte\";\"other\"\n\"3176646\";\"Fossalta di Piave\";\"main\"\n\"3176646\";\"Fossalta\";\"other\"\n\"3176646\";\"Fossalta Maggiore\";\"other\"\n\"3176646\";\"フォッサルタ・ディ・ピアーヴェ\";\"other\"\n\"3176652\";\"Fossacesia\";\"main\"\n\"3176661\";\"Fosdinovo\";\"main\"\n\"3176661\";\"fozudinovu~o\";\"other\"\n\"3176661\";\"フォズディノーヴォ\";\"other\"\n\"3176674\";\"Forte dei Marmi\";\"main\"\n\"3176680\";\"Fornovo San Giovanni\";\"main\"\n\"3176680\";\"Fornovo di San Giovanni\";\"other\"\n\"3176682\";\"Fornovo di Taro\";\"main\"\n\"3176682\";\"Fornoue\";\"other\"\n\"3176682\";\"Fornova Di Taro\";\"other\"\n\"3176682\";\"Fornova Tara\";\"other\"\n\"3176682\";\"Fornova de Taro\";\"other\"\n\"3176682\";\"Furnovo-Ditaro\";\"other\"\n\"3176684\";\"Forno di Zoldo\";\"main\"\n\"3176687\";\"Forno Canavese\";\"main\"\n\"3176687\";\"Forn\";\"other\"\n\"3176687\";\"フォルノ・カナヴェーゼ\";\"other\"\n\"3176697\";\"Forni di Sopra\";\"main\"\n\"3176697\";\"For Disore\";\"other\"\n\"3176697\";\"Fors Disore\";\"other\"\n\"3176707\";\"Fornelli\";\"main\"\n\"3176731\";\"Formignana\";\"main\"\n\"3176731\";\"Formignano\";\"other\"\n\"3176733\";\"Formigine\";\"main\"\n\"3176733\";\"Furmezen\";\"other\"\n\"3176733\";\"Furmèżen\";\"other\"\n\"3176733\";\"forumijine\";\"other\"\n\"3176733\";\"フォルミージネ\";\"other\"\n\"3176734\";\"Formigara\";\"main\"\n\"3176735\";\"Formicola\";\"main\"\n\"3176738\";\"Formia\";\"main\"\n\"3176738\";\"forumia\";\"other\"\n\"3176738\";\"フォルミア\";\"other\"\n\"3176739\";\"Formello\";\"main\"\n\"3176739\";\"forumerro\";\"other\"\n\"3176739\";\"フォルメッロ\";\"other\"\n\"3176743\";\"Forlimpopoli\";\"main\"\n\"3176743\";\"forurinpopori\";\"other\"\n\"3176743\";\"フォルリンポーポリ\";\"other\"\n\"3176746\";\"Forlì\";\"main\"\n\"3176746\";\"Forli\";\"ascii\"\n\"3176746\";\"Forum Livii\";\"other\"\n\"3176746\";\"foruri\";\"other\"\n\"3176746\";\"Форли\";\"other\"\n\"3176746\";\"フォルリ\";\"other\"\n\"3176748\";\"Forio\";\"main\"\n\"3176748\";\"Forio d'Ischia\";\"other\"\n\"3176748\";\"forio\";\"other\"\n\"3176748\";\"フォリーオ\";\"other\"\n\"3176749\";\"Forino\";\"main\"\n\"3176757\";\"Forenza\";\"main\"\n\"3176761\";\"Forchia\";\"main\"\n\"3176772\";\"Forano\";\"main\"\n\"3176778\";\"Fonzaso\";\"main\"\n\"3176782\";\"Fontevivo\";\"main\"\n\"3176790\";\"Fontechiari\";\"main\"\n\"3176797\";\"Fontaniva\";\"main\"\n\"3176800\";\"Fontanetto Po\";\"main\"\n\"3176800\";\"Fontanetto da Po\";\"ascii\"\n\"3176800\";\"Fontaneto\";\"other\"\n\"3176801\";\"Fontaneto d'Agogna\";\"main\"\n\"3176805\";\"Fontanelle\";\"main\"\n\"3176808\";\"Fontanellato\";\"main\"\n\"3176809\";\"Fontanella\";\"main\"\n\"3176812\";\"Fontanelice\";\"main\"\n\"3176818\";\"Fontanarosa\";\"main\"\n\"3176821\";\"Fontana Liri\";\"main\"\n\"3176822\";\"Fontanafredda\";\"main\"\n\"3176822\";\"Fontanefrede\";\"other\"\n\"3176832\";\"Fonni\";\"main\"\n\"3176836\";\"Fondo\";\"main\"\n\"3176836\";\"Fondo in Val di Non\";\"other\"\n\"3176836\";\"fondo\";\"other\"\n\"3176836\";\"フォンド\";\"other\"\n\"3176843\";\"Fondi\";\"main\"\n\"3176843\";\"Fonda\";\"other\"\n\"3176843\";\"fondi\";\"other\"\n\"3176843\";\"pwndy\";\"other\"\n\"3176843\";\"Фонда\";\"other\"\n\"3176843\";\"פונדי\";\"other\"\n\"3176843\";\"フォンディ\";\"other\"\n\"3176846\";\"Fombio\";\"main\"\n\"3176846\";\"fonbio\";\"other\"\n\"3176846\";\"フォンビオ\";\"other\"\n\"3176849\";\"Follonica\";\"main\"\n\"3176852\";\"Follina\";\"main\"\n\"3176854\";\"Foligno\";\"main\"\n\"3176854\";\"Folin'o\";\"other\"\n\"3176854\";\"forinyo\";\"other\"\n\"3176854\";\"Фолиньо\";\"other\"\n\"3176854\";\"フォリーニョ\";\"other\"\n\"3176855\";\"Folignano\";\"main\"\n\"3176857\";\"Folgaria\";\"main\"\n\"3176857\";\"forugaria\";\"other\"\n\"3176857\";\"フォルガリーア\";\"other\"\n\"3176859\";\"Foiano di Val Fortore\";\"main\"\n\"3176859\";\"Foiano\";\"other\"\n\"3176860\";\"Foiano della Chiana\";\"main\"\n\"3176860\";\"Foiana della Chiana\";\"other\"\n\"3176860\";\"Foiano\";\"other\"\n\"3176860\";\"Fojano della Chiana\";\"other\"\n\"3176869\";\"Foglizzo\";\"main\"\n\"3176869\";\"Fojiss\";\"other\"\n\"3176869\";\"forittsu~o\";\"other\"\n\"3176869\";\"フォリッツォ\";\"other\"\n\"3176871\";\"Fogliano Redipuglia\";\"main\"\n\"3176871\";\"Fogliano\";\"other\"\n\"3176871\";\"Fogliano di Monfalcone\";\"other\"\n\"3176871\";\"Fogliano di Redipuglia\";\"other\"\n\"3176871\";\"Foian\";\"other\"\n\"3176879\";\"Foglianise\";\"main\"\n\"3176879\";\"Figlianese\";\"other\"\n\"3176885\";\"Foggia\";\"main\"\n\"3176885\";\"Fodzha\";\"other\"\n\"3176885\";\"Fovea\";\"other\"\n\"3176885\";\"byrwdja\";\"other\"\n\"3176885\";\"fojja\";\"other\"\n\"3176885\";\"fwdja\";\"other\"\n\"3176885\";\"Фоджа\";\"other\"\n\"3176885\";\"بيرودجا\";\"other\"\n\"3176885\";\"فودجا\";\"other\"\n\"3176885\";\"フォッジャ\";\"other\"\n\"3176901\";\"Flumeri\";\"main\"\n\"3176903\";\"Florinas\";\"main\"\n\"3176907\";\"Flero\";\"main\"\n\"3176907\";\"Fleri\";\"other\"\n\"3176907\";\"furero\";\"other\"\n\"3176907\";\"フレーロ\";\"other\"\n\"3176917\";\"Flaibano\";\"main\"\n\"3176917\";\"Flaiban\";\"other\"\n\"3176919\";\"Fivizzano\";\"main\"\n\"3176919\";\"fivu~ittsu~ano\";\"other\"\n\"3176919\";\"フィヴィッツァーノ\";\"other\"\n\"3176923\";\"Fiumicino\";\"main\"\n\"3176923\";\"F'jumichino\";\"other\"\n\"3176923\";\"fiumichino\";\"other\"\n\"3176923\";\"Фьюмичино\";\"other\"\n\"3176923\";\"フィウミチーノ\";\"other\"\n\"3176927\";\"Fiume Veneto\";\"main\"\n\"3176927\";\"Vile di Flum\";\"other\"\n\"3176943\";\"Fiumalbo\";\"main\"\n\"3176946\";\"Fiuggi\";\"main\"\n\"3176946\";\"pywg'y\";\"other\"\n\"3176946\";\"פיוג'י\";\"other\"\n\"3176949\";\"Fisciano\";\"main\"\n\"3176952\";\"Firenzuola\";\"main\"\n\"3176959\";\"Florence\";\"main\"\n\"3176959\";\"Firence\";\"other\"\n\"3176959\";\"Firenze\";\"other\"\n\"3176959\";\"Florencia\";\"other\"\n\"3176959\";\"Florencija\";\"other\"\n\"3176959\";\"Florens\";\"other\"\n\"3176959\";\"Florentia\";\"other\"\n\"3176959\";\"Florenz\";\"other\"\n\"3176959\";\"Florència\";\"other\"\n\"3176959\";\"Flórens\";\"other\"\n\"3176959\";\"Флоренция\";\"other\"\n\"3176964\";\"Fiorenzuola d'Arda\";\"main\"\n\"3176970\";\"Fiorano Modenese\";\"main\"\n\"3176970\";\"フィオラーノ・モデネーゼ\";\"other\"\n\"3176976\";\"Fino Mornasco\";\"main\"\n\"3176976\";\"Fino\";\"other\"\n\"3176982\";\"Finale Ligure\";\"main\"\n\"3176982\";\"Final-marina\";\"other\"\n\"3176982\";\"O Fina\";\"other\"\n\"3176982\";\"O Finâ\";\"other\"\n\"3176983\";\"Finale Emilia\";\"main\"\n\"3176983\";\"Finale nell'Emilia\";\"other\"\n\"3176988\";\"Filottrano\";\"main\"\n\"3176988\";\"firottorano\";\"other\"\n\"3176988\";\"フィロットラーノ\";\"other\"\n\"3176996\";\"Filiano\";\"main\"\n\"3177001\";\"Filetto\";\"main\"\n\"3177001\";\"firetto\";\"other\"\n\"3177001\";\"フィレット\";\"other\"\n\"3177009\";\"Figline Valdarno\";\"main\"\n\"3177016\";\"Fiesso Umbertiano\";\"main\"\n\"3177018\";\"Fiesse\";\"main\"\n\"3177018\";\"fiesse\";\"other\"\n\"3177018\";\"フィエッセ\";\"other\"\n\"3177019\";\"Fiesole\";\"main\"\n\"3177019\";\"Faesulae\";\"other\"\n\"3177019\";\"Fiésole\";\"other\"\n\"3177019\";\"fiezore\";\"other\"\n\"3177019\";\"piesolle\";\"other\"\n\"3177019\";\"フィエーゾレ\";\"other\"\n\"3177019\";\"피에솔레\";\"other\"\n\"3177028\";\"Fiè allo Sciliar - Voels am Schlern\";\"main\"\n\"3177028\";\"Fie\";\"ascii\"\n\"3177028\";\"Vols\";\"other\"\n\"3177029\";\"Fidenza\";\"main\"\n\"3177029\";\"Fidency\";\"other\"\n\"3177029\";\"San Donnino\";\"other\"\n\"3177029\";\"Фиденцы\";\"other\"\n\"3177030\";\"Ficulle\";\"main\"\n\"3177032\";\"Ficarolo\";\"main\"\n\"3177036\";\"Fiavè\";\"main\"\n\"3177036\";\"Fiave\";\"ascii\"\n\"3177036\";\"fiavu~e\";\"other\"\n\"3177036\";\"フィアヴェ\";\"other\"\n\"3177046\";\"Fiano Romano\";\"main\"\n\"3177046\";\"フィアーノ・ロマーノ\";\"other\"\n\"3177047\";\"Fiano\";\"main\"\n\"3177047\";\"Fian\";\"other\"\n\"3177047\";\"fiano\";\"other\"\n\"3177047\";\"フィアーノ\";\"other\"\n\"3177052\";\"Fiamignano\";\"main\"\n\"3177075\";\"Ferriere\";\"main\"\n\"3177079\";\"Ferrera Erbognone\";\"main\"\n\"3177083\";\"Ferrazzano\";\"main\"\n\"3177090\";\"Ferrara\";\"main\"\n\"3177090\";\"Ferrare\";\"other\"\n\"3177090\";\"Феррара\";\"other\"\n\"3177094\";\"Ferrandina\";\"main\"\n\"3177098\";\"Ferno\";\"main\"\n\"3177099\";\"Fermo\";\"main\"\n\"3177099\";\"Firmum Picenum\";\"other\"\n\"3177099\";\"ferumo\";\"other\"\n\"3177099\";\"Фермо\";\"other\"\n\"3177099\";\"フェルモ\";\"other\"\n\"3177100\";\"Fermignano\";\"main\"\n\"3177100\";\"feruminyano\";\"other\"\n\"3177100\";\"フェルミニャーノ\";\"other\"\n\"3177102\";\"Ferentino\";\"main\"\n\"3177102\";\"Ферентино\";\"other\"\n\"3177103\";\"Ferentillo\";\"main\"\n\"3177120\";\"Feltre\";\"main\"\n\"3177123\";\"Felizzano\";\"main\"\n\"3177123\";\"Flissan\";\"other\"\n\"3177125\";\"Felino\";\"main\"\n\"3177127\";\"Feletto\";\"main\"\n\"3177127\";\"Flet\";\"other\"\n\"3177127\";\"Flèt\";\"other\"\n\"3177127\";\"feretto\";\"other\"\n\"3177127\";\"フェレット\";\"other\"\n\"3177140\";\"Favria\";\"main\"\n\"3177140\";\"favuria\";\"other\"\n\"3177140\";\"ファヴリア\";\"other\"\n\"3177150\";\"Fauglia\";\"main\"\n\"3177171\";\"Fasano\";\"main\"\n\"3177171\";\"Fazano\";\"other\"\n\"3177171\";\"Фазано\";\"other\"\n\"3177177\";\"Farra di Soligo\";\"main\"\n\"3177177\";\"Farra\";\"other\"\n\"3177178\";\"Farra d’Alpago\";\"main\"\n\"3177178\";\"Farra d'Alpago\";\"ascii\"\n\"3177178\";\"Farra\";\"other\"\n\"3177190\";\"Farnese\";\"main\"\n\"3177190\";\"faruneze\";\"other\"\n\"3177190\";\"ファルネーゼ\";\"other\"\n\"3177194\";\"Farini\";\"main\"\n\"3177194\";\"Farini d'Olmo\";\"ascii\"\n\"3177195\";\"Farindola\";\"main\"\n\"3177201\";\"Fara Vicentino\";\"main\"\n\"3177202\";\"Fara San Martino\";\"main\"\n\"3177204\";\"Fara Novarese\";\"main\"\n\"3177204\";\"Fara\";\"other\"\n\"3177207\";\"Fara in Sabina\";\"main\"\n\"3177209\";\"Fara Gera d'Adda\";\"main\"\n\"3177210\";\"Fara Filiorum Petri\";\"main\"\n\"3177219\";\"Fano\";\"main\"\n\"3177219\";\"Fanu\";\"other\"\n\"3177219\";\"Fanum Fortunae\";\"other\"\n\"3177219\";\"Фано\";\"other\"\n\"3177221\";\"Fanna\";\"main\"\n\"3177221\";\"Fane\";\"other\"\n\"3177225\";\"Fanano\";\"main\"\n\"3177231\";\"Falzes - Pfalzen\";\"main\"\n\"3177231\";\"Falzes\";\"ascii\"\n\"3177231\";\"Pfalzen\";\"other\"\n\"3177231\";\"farutsu~esu\";\"other\"\n\"3177231\";\"ファルツェス\";\"other\"\n\"3177244\";\"Falerone\";\"main\"\n\"3177245\";\"Faleria\";\"main\"\n\"3177250\";\"Falconara Marittima\";\"main\"\n\"3177250\";\"Falconara Alta\";\"other\"\n\"3177250\";\"ファルコナーラ・マリッティマ\";\"other\"\n\"3177263\";\"Falcade\";\"main\"\n\"3177276\";\"Faicchio\";\"main\"\n\"3177279\";\"Fagnano Olona\";\"main\"\n\"3177279\";\"Fagnano\";\"other\"\n\"3177286\";\"Faggiano\";\"main\"\n\"3177292\";\"Fagagna\";\"main\"\n\"3177292\";\"Feagne\";\"other\"\n\"3177300\";\"Faenza\";\"main\"\n\"3177300\";\"Faenca\";\"other\"\n\"3177300\";\"faentsu~a\";\"other\"\n\"3177300\";\"ファエンツァ\";\"other\"\n\"3177305\";\"Faedis\";\"main\"\n\"3177313\";\"Fabro\";\"main\"\n\"3177314\";\"Fabrica di Roma\";\"main\"\n\"3177315\";\"Fabriano\";\"main\"\n\"3177315\";\"Fabrianum\";\"other\"\n\"3177315\";\"faburiano\";\"other\"\n\"3177315\";\"Фабриано\";\"other\"\n\"3177315\";\"ファブリアーノ\";\"other\"\n\"3177317\";\"Fabbrico\";\"main\"\n\"3177337\";\"Este\";\"main\"\n\"3177337\";\"esute\";\"other\"\n\"3177337\";\"Есте\";\"other\"\n\"3177337\";\"エステ\";\"other\"\n\"3177342\";\"Esperia\";\"main\"\n\"3177346\";\"Esine\";\"main\"\n\"3177346\";\"ejine\";\"other\"\n\"3177346\";\"エージネ\";\"other\"\n\"3177349\";\"Esanatoglia\";\"main\"\n\"3177363\";\"Ercolano\";\"main\"\n\"3177363\";\"Gerkulanum\";\"other\"\n\"3177363\";\"Resina\";\"other\"\n\"3177363\";\"Геркуланум\";\"other\"\n\"3177366\";\"Erchie\";\"main\"\n\"3177370\";\"Erbè\";\"main\"\n\"3177370\";\"Erbe\";\"ascii\"\n\"3177372\";\"Erba\";\"main\"\n\"3177372\";\"Herba\";\"other\"\n\"3177372\";\"Incino\";\"other\"\n\"3177372\";\"eruba\";\"other\"\n\"3177372\";\"エルバ\";\"other\"\n\"3177373\";\"Eraclea\";\"main\"\n\"3177373\";\"Grisolera\";\"other\"\n\"3177373\";\"erakurea\";\"other\"\n\"3177373\";\"エラクレーア\";\"other\"\n\"3177377\";\"Episcopia\";\"main\"\n\"3177381\";\"Envie\";\"main\"\n\"3177392\";\"Enemonzo\";\"main\"\n\"3177392\";\"Denemonc\";\"other\"\n\"3177393\";\"Endine Gaiano\";\"main\"\n\"3177393\";\"Endine\";\"other\"\n\"3177400\";\"Empoli\";\"main\"\n\"3177400\";\"enpori\";\"other\"\n\"3177400\";\"Емполи\";\"other\"\n\"3177400\";\"エンポリ\";\"other\"\n\"3177419\";\"Elice\";\"main\"\n\"3177431\";\"Egna - Neumarkt\";\"main\"\n\"3177431\";\"Egna\";\"ascii\"\n\"3177431\";\"Neumarkt\";\"other\"\n\"3177431\";\"Villa D'Egna\";\"other\"\n\"3177431\";\"enya\";\"other\"\n\"3177431\";\"エーニャ\";\"other\"\n\"3177435\";\"Edolo\";\"main\"\n\"3177435\";\"Curtis Iduli\";\"other\"\n\"3177435\";\"edolo\";\"other\"\n\"3177435\";\"edoro\";\"other\"\n\"3177435\";\"Едоло\";\"other\"\n\"3177435\";\"エードロ\";\"other\"\n\"3177438\";\"Eboli\";\"main\"\n\"3177444\";\"Durazzano\";\"main\"\n\"3177448\";\"Dumenza\";\"main\"\n\"3177451\";\"Duino\";\"main\"\n\"3177451\";\"Devin\";\"other\"\n\"3177451\";\"Дуино\";\"other\"\n\"3177453\";\"Dugenta\";\"main\"\n\"3177456\";\"Dueville\";\"main\"\n\"3177466\";\"Dubino\";\"main\"\n\"3177471\";\"Druento\";\"main\"\n\"3177471\";\"Druent\";\"other\"\n\"3177471\";\"doruento\";\"other\"\n\"3177471\";\"ドルエント\";\"other\"\n\"3177474\";\"Dronero\";\"main\"\n\"3177474\";\"Drone\";\"other\"\n\"3177474\";\"Droné\";\"other\"\n\"3177476\";\"Dro\";\"main\"\n\"3177476\";\"doro\";\"other\"\n\"3177476\";\"Дро\";\"other\"\n\"3177476\";\"ドロ\";\"other\"\n\"3177480\";\"Dragoni\";\"main\"\n\"3177489\";\"Dozza\";\"main\"\n\"3177490\";\"Dovera\";\"main\"\n\"3177490\";\"dovu~era\";\"other\"\n\"3177490\";\"ドヴェーラ\";\"other\"\n\"3177493\";\"Dovadola\";\"main\"\n\"3177493\";\"dovu~adora\";\"other\"\n\"3177493\";\"ドヴァードラ\";\"other\"\n\"3177503\";\"Dosolo\";\"main\"\n\"3177508\";\"Dorno\";\"main\"\n\"3177513\";\"Dorgali\";\"main\"\n\"3177526\";\"Dongo\";\"main\"\n\"3177526\";\"dongo\";\"other\"\n\"3177526\";\"ドンゴ\";\"other\"\n\"3177532\";\"Domodossola\";\"main\"\n\"3177532\";\"domodossora\";\"other\"\n\"3177532\";\"ドモドッソラ\";\"other\"\n\"3177537\";\"Domicella\";\"main\"\n\"3177539\";\"Domegge di Cadore\";\"main\"\n\"3177539\";\"Domegge\";\"other\"\n\"3177540\";\"Domaso\";\"main\"\n\"3177547\";\"Dolo\";\"main\"\n\"3177547\";\"doro\";\"other\"\n\"3177547\";\"ドーロ\";\"other\"\n\"3177550\";\"Dolcedo\";\"main\"\n\"3177551\";\"Dolceacqua\";\"main\"\n\"3177552\";\"Dolcè\";\"main\"\n\"3177552\";\"Dolce\";\"ascii\"\n\"3177558\";\"Dogliani\";\"main\"\n\"3177568\";\"Doberdò del Lago\";\"main\"\n\"3177568\";\"Doberdo del Lago\";\"ascii\"\n\"3177568\";\"Dobardo\";\"other\"\n\"3177568\";\"Dobardò\";\"other\"\n\"3177568\";\"Doberdo\";\"other\"\n\"3177568\";\"ドベルド・デル・ラーゴ\";\"other\"\n\"3177571\";\"Dobbiaco - Toblach\";\"main\"\n\"3177571\";\"Dobbiaco\";\"ascii\"\n\"3177571\";\"Toblach\";\"other\"\n\"3177571\";\"dobbiako\";\"other\"\n\"3177571\";\"ドッビアーコ\";\"other\"\n\"3177573\";\"Divignano\";\"main\"\n\"3177582\";\"Dimaro\";\"main\"\n\"3177582\";\"dimaro\";\"other\"\n\"3177582\";\"ディマーロ\";\"other\"\n\"3177584\";\"Dignano\";\"main\"\n\"3177584\";\"Dignan\";\"other\"\n\"3177588\";\"Dicomano\";\"main\"\n\"3177594\";\"Diano San Pietro\";\"main\"\n\"3177595\";\"Diano Marina\";\"main\"\n\"3177596\";\"Diano d'Alba\";\"main\"\n\"3177596\";\"Diano\";\"other\"\n\"3177597\";\"Diano Castello\";\"main\"\n\"3177608\";\"Desio\";\"main\"\n\"3177608\";\"Dees\";\"other\"\n\"3177608\";\"Dezio\";\"other\"\n\"3177608\";\"dejio\";\"other\"\n\"3177608\";\"Дезио\";\"other\"\n\"3177608\";\"デージオ\";\"other\"\n\"3177610\";\"Desenzano del Garda\";\"main\"\n\"3177610\";\"Desenzano\";\"other\"\n\"3177610\";\"Desenzano sul Lago\";\"other\"\n\"3177610\";\"デゼンツァーノ・デル・ガルダ\";\"other\"\n\"3177615\";\"Desana\";\"main\"\n\"3177616\";\"Dervio\";\"main\"\n\"3177617\";\"Deruta\";\"main\"\n\"3177617\";\"deruta\";\"other\"\n\"3177617\";\"デルータ\";\"other\"\n\"3177623\";\"Denno\";\"main\"\n\"3177623\";\"den'no\";\"other\"\n\"3177623\";\"デンノ\";\"other\"\n\"3177626\";\"Demonte\";\"main\"\n\"3177628\";\"Dello\";\"main\"\n\"3177628\";\"derro\";\"other\"\n\"3177628\";\"デッロ\";\"other\"\n\"3177629\";\"Deliceto\";\"main\"\n\"3177630\";\"Delebio\";\"main\"\n\"3177631\";\"Deiva Marina\";\"main\"\n\"3177631\";\"Deiva\";\"other\"\n\"3177631\";\"Déiva\";\"other\"\n\"3177632\";\"Dego\";\"main\"\n\"3177632\";\"O De\";\"other\"\n\"3177632\";\"O Dê\";\"other\"\n\"3177646\";\"Darfo Boario Terme\";\"main\"\n\"3177646\";\"Darfo\";\"ascii\"\n\"3177650\";\"Dalmine\";\"main\"\n\"3177650\";\"Dal'mine\";\"other\"\n\"3177650\";\"Дальмине\";\"other\"\n\"3177651\";\"Dairago\";\"main\"\n\"3177651\";\"dairago\";\"other\"\n\"3177651\";\"ダイラーゴ\";\"other\"\n\"3177654\";\"Cutrofiano\";\"main\"\n\"3177654\";\"Cutrufianu\";\"other\"\n\"3177654\";\"Kutrofiana\";\"other\"\n\"3177655\";\"Cutigliano\";\"main\"\n\"3177663\";\"Cusano Mutri\";\"main\"\n\"3177663\";\"Cusano Mntri\";\"other\"\n\"3177664\";\"Cusano Milanino\";\"main\"\n\"3177664\";\"クザーノ・ミラニーノ\";\"other\"\n\"3177666\";\"Curtarolo\";\"main\"\n\"3177669\";\"Cursi\";\"main\"\n\"3177669\";\"Kurze\";\"other\"\n\"3177670\";\"Curon Venosta - Graun im Vinschgau\";\"main\"\n\"3177670\";\"Curon Venosta\";\"ascii\"\n\"3177670\";\"Curon\";\"other\"\n\"3177670\";\"Curón\";\"other\"\n\"3177670\";\"Graun\";\"other\"\n\"3177670\";\"Graun im Vinschgau\";\"other\"\n\"3177670\";\"クローン・ヴェノスタ\";\"other\"\n\"3177672\";\"Curno\";\"main\"\n\"3177672\";\"Curdomo\";\"other\"\n\"3177672\";\"kuruno\";\"other\"\n\"3177672\";\"クルノ\";\"other\"\n\"3177684\";\"Cupramontana\";\"main\"\n\"3177684\";\"kupuramontana\";\"other\"\n\"3177684\";\"クプラモンターナ\";\"other\"\n\"3177685\";\"Cupra Marittima\";\"main\"\n\"3177692\";\"Cupello\";\"main\"\n\"3177695\";\"Cuorgnè\";\"main\"\n\"3177695\";\"Cuorgne\";\"ascii\"\n\"3177695\";\"Corgne\";\"other\"\n\"3177695\";\"Corgnè\";\"other\"\n\"3177695\";\"kuorunye\";\"other\"\n\"3177695\";\"クオルニェ\";\"other\"\n\"3177700\";\"Cuneo\";\"main\"\n\"3177700\";\"Coni\";\"other\"\n\"3177700\";\"Kuneo\";\"other\"\n\"3177700\";\"Кунео\";\"other\"\n\"3177704\";\"Cumiana\";\"main\"\n\"3177704\";\"Cumian-a\";\"other\"\n\"3177704\";\"kumiana\";\"other\"\n\"3177704\";\"クミアーナ\";\"other\"\n\"3177712\";\"Cugnoli\";\"main\"\n\"3177719\";\"Cuglieri\";\"main\"\n\"3177719\";\"Cullieri\";\"other\"\n\"3177720\";\"Cuggiono\";\"main\"\n\"3177720\";\"kujjono\";\"other\"\n\"3177720\";\"クッジョーノ\";\"other\"\n\"3177757\";\"Crone\";\"main\"\n\"3177757\";\"Idro\";\"other\"\n\"3177759\";\"Crognaleto\";\"main\"\n\"3177761\";\"Crodo\";\"main\"\n\"3177773\";\"Crocetta del Montello\";\"main\"\n\"3177773\";\"Crocetta Trevigiana\";\"other\"\n\"3177773\";\"Crocetta de Montello\";\"other\"\n\"3177808\";\"Crispiano\";\"main\"\n\"3177814\";\"Crevalcore\";\"main\"\n\"3177815\";\"Crevacuore\";\"main\"\n\"3177822\";\"Cressa\";\"main\"\n\"3177824\";\"Crespino\";\"main\"\n\"3177825\";\"Crespina\";\"main\"\n\"3177826\";\"Crespiatica\";\"main\"\n\"3177826\";\"kuresupiatika\";\"other\"\n\"3177826\";\"クレスピアーティカ\";\"other\"\n\"3177827\";\"Crespellano\";\"main\"\n\"3177828\";\"Crespano del Grappa\";\"main\"\n\"3177829\";\"Crespadoro\";\"main\"\n\"3177833\";\"Crescentino\";\"main\"\n\"3177838\";\"Cremona\";\"main\"\n\"3177838\";\"Cremon-a\";\"other\"\n\"3177838\";\"Cremone\";\"other\"\n\"3177838\";\"Crémone\";\"other\"\n\"3177838\";\"Kremona\";\"other\"\n\"3177838\";\"ke lei mo na\";\"other\"\n\"3177838\";\"keulemona\";\"other\"\n\"3177838\";\"kuremona\";\"other\"\n\"3177838\";\"Кремона\";\"other\"\n\"3177838\";\"クレモナ\";\"other\"\n\"3177838\";\"克雷莫納\";\"other\"\n\"3177838\";\"크레모나\";\"other\"\n\"3177840\";\"Cremeno\";\"main\"\n\"3177841\";\"Crema\";\"main\"\n\"3177841\";\"Krema\";\"other\"\n\"3177841\";\"kurema\";\"other\"\n\"3177841\";\"Крема\";\"other\"\n\"3177841\";\"クレーマ\";\"other\"\n\"3177842\";\"Credera Rubbiano\";\"main\"\n\"3177842\";\"Credera\";\"ascii\"\n\"3177844\";\"Crecchio\";\"main\"\n\"3177845\";\"Creazzo\";\"main\"\n\"3177845\";\"Casale Creazzo\";\"other\"\n\"3177866\";\"Covo\";\"main\"\n\"3177866\";\"kovu~o\";\"other\"\n\"3177866\";\"コーヴォ\";\"other\"\n\"3177872\";\"Courmayeur\";\"main\"\n\"3177872\";\"Cormaiore\";\"other\"\n\"3177872\";\"Cormaire\";\"other\"\n\"3177872\";\"Cort-Mayor\";\"other\"\n\"3177872\";\"kurumaiyuru\";\"other\"\n\"3177872\";\"kwrmayr\";\"other\"\n\"3177872\";\"کورمائر\";\"other\"\n\"3177872\";\"クールマイユール\";\"other\"\n\"3177876\";\"Cotignola\";\"main\"\n\"3177876\";\"Cottignola\";\"other\"\n\"3177876\";\"kotinyora\";\"other\"\n\"3177876\";\"コティニョーラ\";\"other\"\n\"3177880\";\"Costigliole Saluzzo\";\"main\"\n\"3177881\";\"Costigliole d'Asti\";\"main\"\n\"3177881\";\"Costigliole\";\"other\"\n\"3177882\";\"Costermano\";\"main\"\n\"3177885\";\"Costa Volpino\";\"main\"\n\"3177905\";\"Costa di Rovigo\";\"main\"\n\"3177906\";\"Costa di Mezzate\";\"main\"\n\"3177906\";\"Costa di Monticelli\";\"other\"\n\"3177909\";\"Costacciaro\";\"main\"\n\"3177912\";\"Costabissara\";\"main\"\n\"3177922\";\"Cossignano\";\"main\"\n\"3177924\";\"Cossato\";\"main\"\n\"3177927\";\"Coseano\";\"main\"\n\"3177927\";\"Cosean\";\"other\"\n\"3177943\";\"Corvara in Badia - Corvara\";\"main\"\n\"3177943\";\"Corvara in Badia\";\"ascii\"\n\"3177943\";\"Corvara\";\"other\"\n\"3177943\";\"Corvaria\";\"other\"\n\"3177943\";\"コルヴァーラ・イン・バディーア\";\"other\"\n\"3177948\";\"Cortona\";\"main\"\n\"3177948\";\"Cortone\";\"other\"\n\"3177948\";\"Kortona\";\"other\"\n\"3177948\";\"Кортона\";\"other\"\n\"3177952\";\"Cortina d'Ampezzo\";\"main\"\n\"3177952\";\"Cortina Ampecanorum\";\"other\"\n\"3177952\";\"Cortina d’Ampezzo\";\"other\"\n\"3177952\";\"Kortina d'Ampecco\";\"other\"\n\"3177952\";\"Кортина д'Ампеццо\";\"other\"\n\"3177952\";\"コルティーナ・ダンペッツォ\";\"other\"\n\"3177972\";\"Corteolona\";\"main\"\n\"3177972\";\"Corteleona\";\"other\"\n\"3177976\";\"Cortemilia\";\"main\"\n\"3177977\";\"Cortemaggiore\";\"main\"\n\"3177983\";\"Corte Franca\";\"main\"\n\"3177983\";\"コルテ・フランカ\";\"other\"\n\"3178002\";\"Cortaccia sulla strada del vino - Kurtatsch an der Weinstrasse\";\"main\"\n\"3178002\";\"Cortaccia\";\"ascii\"\n\"3178002\";\"Kurtasch\";\"other\"\n\"3178002\";\"Kurtatsch\";\"other\"\n\"3178004\";\"Corsico\";\"main\"\n\"3178004\";\"Korsiko\";\"other\"\n\"3178004\";\"korushiko\";\"other\"\n\"3178004\";\"Корсико\";\"other\"\n\"3178004\";\"コルシコ\";\"other\"\n\"3178012\";\"Corropoli\";\"main\"\n\"3178014\";\"Corridonia\";\"main\"\n\"3178015\";\"Correzzola\";\"main\"\n\"3178019\";\"Correggio\";\"main\"\n\"3178019\";\"Coreggio\";\"other\"\n\"3178019\";\"Koredzho\";\"other\"\n\"3178019\";\"korrejjo\";\"other\"\n\"3178019\";\"Кореджо\";\"other\"\n\"3178019\";\"コッレッジョ\";\"other\"\n\"3178039\";\"Cornuda\";\"main\"\n\"3178045\";\"Corno Giovine\";\"main\"\n\"3178046\";\"Corno di Rosazzo\";\"main\"\n\"3178046\";\"Cuar di Rosacis\";\"other\"\n\"3178062\";\"Corniglio\";\"main\"\n\"3178072\";\"Cornedo Vicentino\";\"main\"\n\"3178072\";\"Cornedo\";\"other\"\n\"3178073\";\"Cornate d'Adda\";\"main\"\n\"3178073\";\"Cornate\";\"other\"\n\"3178073\";\"コルナーテ・ダッダ\";\"other\"\n\"3178074\";\"Cornaredo\";\"main\"\n\"3178074\";\"korunaredo\";\"other\"\n\"3178074\";\"コルナレード\";\"other\"\n\"3178085\";\"Cormons\";\"main\"\n\"3178085\";\"Cormòns\";\"other\"\n\"3178087\";\"Cormano\";\"main\"\n\"3178087\";\"korumano\";\"other\"\n\"3178087\";\"コルマーノ\";\"other\"\n\"3178090\";\"Corleto Perticara\";\"main\"\n\"3178093\";\"Corio\";\"main\"\n\"3178093\";\"Cheuri\";\"other\"\n\"3178093\";\"korio\";\"other\"\n\"3178093\";\"コーリオ\";\"other\"\n\"3178094\";\"Corinaldo\";\"main\"\n\"3178094\";\"korinarudo\";\"other\"\n\"3178094\";\"コリナルド\";\"other\"\n\"3178095\";\"Corigliano d'Otranto\";\"main\"\n\"3178097\";\"Coriano\";\"main\"\n\"3178097\";\"koriano\";\"other\"\n\"3178097\";\"コリアーノ\";\"other\"\n\"3178099\";\"Cori\";\"main\"\n\"3178099\";\"Kori\";\"other\"\n\"3178099\";\"kori\";\"other\"\n\"3178099\";\"Кори\";\"other\"\n\"3178099\";\"コーリ\";\"other\"\n\"3178107\";\"Coreglia Antelminelli\";\"main\"\n\"3178108\";\"Coredo\";\"main\"\n\"3178108\";\"koredo\";\"other\"\n\"3178108\";\"コーレド\";\"other\"\n\"3178109\";\"Cordovado\";\"main\"\n\"3178109\";\"Cordovat\";\"other\"\n\"3178109\";\"Cordoyado\";\"other\"\n\"3178110\";\"Cordignano\";\"main\"\n\"3178112\";\"Cordenons\";\"main\"\n\"3178112\";\"Cordenona\";\"other\"\n\"3178117\";\"Corciano\";\"main\"\n\"3178119\";\"Corchiano\";\"main\"\n\"3178121\";\"Corbola\";\"main\"\n\"3178125\";\"Corbetta\";\"main\"\n\"3178125\";\"korubetta\";\"other\"\n\"3178125\";\"コルベッタ\";\"other\"\n\"3178129\";\"Corbara\";\"main\"\n\"3178131\";\"Corato\";\"main\"\n\"3178131\";\"Korato\";\"other\"\n\"3178131\";\"Корато\";\"other\"\n\"3178137\";\"Copparo\";\"main\"\n\"3178140\";\"Copiano\";\"main\"\n\"3178141\";\"Copertino\";\"main\"\n\"3178141\";\"Cupertinu\";\"other\"\n\"3178144\";\"Conza della Campania\";\"main\"\n\"3178144\";\"Conza di Campania\";\"other\"\n\"3178147\";\"Conversano\";\"main\"\n\"3178147\";\"Konversano\";\"other\"\n\"3178147\";\"Конверсано\";\"other\"\n\"3178151\";\"Contursi Terme\";\"main\"\n\"3178151\";\"Contursi\";\"ascii\"\n\"3178153\";\"Controguerra\";\"main\"\n\"3178164\";\"Contrada\";\"main\"\n\"3178169\";\"Contigliano\";\"main\"\n\"3178180\";\"Conselve\";\"main\"\n\"3178181\";\"Conselice\";\"main\"\n\"3178193\";\"Confienza\";\"main\"\n\"3178197\";\"Conegliano\";\"main\"\n\"3178197\";\"Konel'jano\";\"other\"\n\"3178197\";\"koneriano\";\"other\"\n\"3178197\";\"Конельяно\";\"other\"\n\"3178197\";\"コネリアーノ\";\"other\"\n\"3178198\";\"Condove\";\"main\"\n\"3178198\";\"Condòve\";\"other\"\n\"3178198\";\"kondovu~e\";\"other\"\n\"3178198\";\"コンドーヴェ\";\"other\"\n\"3178199\";\"Condino\";\"main\"\n\"3178199\";\"kondino\";\"other\"\n\"3178199\";\"コンディーノ\";\"other\"\n\"3178201\";\"Concorezzo\";\"main\"\n\"3178201\";\"Concorrezzo\";\"other\"\n\"3178201\";\"Cuncuress\";\"other\"\n\"3178201\";\"Cuncurèss\";\"other\"\n\"3178201\";\"konkorettsu~o\";\"other\"\n\"3178201\";\"コンコレッツォ\";\"other\"\n\"3178202\";\"Concordia sulla Secchia\";\"main\"\n\"3178202\";\"Concordia\";\"other\"\n\"3178203\";\"Concordia Sagittaria\";\"main\"\n\"3178203\";\"Concordia\";\"other\"\n\"3178203\";\"Concuardie\";\"other\"\n\"3178203\";\"コンコルディア・サジッターリア\";\"other\"\n\"3178205\";\"Conco\";\"main\"\n\"3178205\";\"konko\";\"other\"\n\"3178205\";\"コンコ\";\"other\"\n\"3178209\";\"Conca della Campania\";\"main\"\n\"3178217\";\"Cona\";\"main\"\n\"3178217\";\"kona\";\"other\"\n\"3178217\";\"コーナ\";\"other\"\n\"3178218\";\"Comun Nuovo\";\"main\"\n\"3178221\";\"Comunanza\";\"main\"\n\"3178221\";\"Comunanza del Littorio\";\"other\"\n\"3178225\";\"Compiano\";\"main\"\n\"3178229\";\"Como\";\"main\"\n\"3178229\";\"Com\";\"other\"\n\"3178229\";\"Come\";\"other\"\n\"3178229\";\"Còm\";\"other\"\n\"3178229\";\"Côme\";\"other\"\n\"3178229\";\"Komo\";\"other\"\n\"3178229\";\"Novum Comum\";\"other\"\n\"3178229\";\"ke mo\";\"other\"\n\"3178229\";\"komo\";\"other\"\n\"3178229\";\"Комо\";\"other\"\n\"3178229\";\"コモ\";\"other\"\n\"3178229\";\"科莫\";\"other\"\n\"3178230\";\"Commessaggio\";\"main\"\n\"3178232\";\"Comiziano\";\"main\"\n\"3178232\";\"komitsu~iano\";\"other\"\n\"3178232\";\"コミツィアーノ\";\"other\"\n\"3178237\";\"Comerio\";\"main\"\n\"3178241\";\"Comazzo\";\"main\"\n\"3178241\";\"komattsu~o\";\"other\"\n\"3178241\";\"コマッツォ\";\"other\"\n\"3178245\";\"Comacchio\";\"main\"\n\"3178253\";\"Colturano\";\"main\"\n\"3178253\";\"Culturano\";\"other\"\n\"3178253\";\"koruto~urano\";\"other\"\n\"3178253\";\"コルトゥラーノ\";\"other\"\n\"3178263\";\"Colorno\";\"main\"\n\"3178266\";\"Colonnella\";\"main\"\n\"3178269\";\"Colonna\";\"main\"\n\"3178269\";\"koron'na\";\"other\"\n\"3178269\";\"コロンナ\";\"other\"\n\"3178283\";\"Cologno Monzese\";\"main\"\n\"3178283\";\"Cologno\";\"other\"\n\"3178285\";\"Cologno al Serio\";\"main\"\n\"3178285\";\"Cologno\";\"other\"\n\"3178285\";\"Cologno sul Serio\";\"other\"\n\"3178287\";\"Cologne\";\"main\"\n\"3178287\";\"koronye\";\"other\"\n\"3178287\";\"コローニェ\";\"other\"\n\"3178288\";\"Cologna Veneta\";\"main\"\n\"3178288\";\"Cologna Veronese\";\"other\"\n\"3178292\";\"Colobraro\";\"main\"\n\"3178293\";\"Colmurano\";\"main\"\n\"3178305\";\"Collio\";\"main\"\n\"3178305\";\"korrio\";\"other\"\n\"3178305\";\"コッリオ\";\"other\"\n\"3178314\";\"Colli del Tronto\";\"main\"\n\"3178320\";\"Colliano\";\"main\"\n\"3178321\";\"Colli a Volturno\";\"main\"\n\"3178321\";\"Colli al Volturno\";\"ascii\"\n\"3178329\";\"Collevecchio\";\"main\"\n\"3178335\";\"Colletorto\";\"main\"\n\"3178346\";\"Colle Sannita\";\"main\"\n\"3178349\";\"Collesalvetti\";\"main\"\n\"3178349\";\"Colle Salvetti\";\"ascii\"\n\"3178360\";\"Collepasso\";\"main\"\n\"3178360\";\"Collepassu\";\"other\"\n\"3178385\";\"Collelongo\";\"main\"\n\"3178388\";\"Collegno\";\"main\"\n\"3178388\";\"Colegn\";\"other\"\n\"3178388\";\"Kollen'o\";\"other\"\n\"3178388\";\"korrenyo\";\"other\"\n\"3178388\";\"Колленьо\";\"other\"\n\"3178388\";\"コッレーニョ\";\"other\"\n\"3178398\";\"Colleferro\";\"main\"\n\"3178398\";\"Kolleferro\";\"other\"\n\"3178398\";\"korreferro\";\"other\"\n\"3178398\";\"Коллеферро\";\"other\"\n\"3178398\";\"コッレフェッロ\";\"other\"\n\"3178402\";\"Colle di Val d'Elsa\";\"main\"\n\"3178402\";\"Colle Val d'Elsa\";\"other\"\n\"3178402\";\"コッレ・ディ・ヴァル・デルザ\";\"other\"\n\"3178412\";\"Colledara\";\"main\"\n\"3178415\";\"Collecorvino\";\"main\"\n\"3178416\";\"Collecchio\";\"main\"\n\"3178439\";\"Collazzone\";\"main\"\n\"3178441\";\"Collarmele\";\"main\"\n\"3178448\";\"Collagna\";\"main\"\n\"3178451\";\"Colico\";\"main\"\n\"3178451\";\"Koliko\";\"other\"\n\"3178451\";\"Колико\";\"other\"\n\"3178452\";\"Coli\";\"main\"\n\"3178452\";\"kori\";\"other\"\n\"3178452\";\"コーリ\";\"other\"\n\"3178455\";\"Colere\";\"main\"\n\"3178468\";\"Colbordolo\";\"main\"\n\"3178476\";\"Cogollo del Cengio\";\"main\"\n\"3178479\";\"Cogoleto\";\"main\"\n\"3178479\";\"Cogoeuo\";\"other\"\n\"3178483\";\"Cogne\";\"main\"\n\"3178489\";\"Coggiola\";\"main\"\n\"3178489\";\"Goggiola\";\"other\"\n\"3178495\";\"Codrongianos\";\"main\"\n\"3178495\";\"Codrongianus\";\"other\"\n\"3178496\";\"Codroipo\";\"main\"\n\"3178496\";\"Codroip\";\"other\"\n\"3178499\";\"Codogno\";\"main\"\n\"3178499\";\"Codonio\";\"other\"\n\"3178499\";\"kodonyo\";\"other\"\n\"3178499\";\"コドーニョ\";\"other\"\n\"3178500\";\"Codognè\";\"main\"\n\"3178500\";\"Codogne\";\"ascii\"\n\"3178505\";\"Codigoro\";\"main\"\n\"3178507\";\"Codevigo\";\"main\"\n\"3178521\";\"Cocquio-Trevisago\";\"main\"\n\"3178521\";\"Cocquio Trevisago\";\"ascii\"\n\"3178526\";\"Cocconato\";\"main\"\n\"3178534\";\"Coccaglio\";\"main\"\n\"3178534\";\"kokkario\";\"other\"\n\"3178534\";\"コッカーリオ\";\"other\"\n\"3178536\";\"Coazze\";\"main\"\n\"3178536\";\"Coasse\";\"other\"\n\"3178536\";\"koattsu~e\";\"other\"\n\"3178536\";\"コアッツェ\";\"other\"\n\"3178541\";\"Clusone\";\"main\"\n\"3178541\";\"Clauso\";\"other\"\n\"3178541\";\"kuruzone\";\"other\"\n\"3178541\";\"クルゾーネ\";\"other\"\n\"3178548\";\"Cles\";\"main\"\n\"3178548\";\"kuresu\";\"other\"\n\"3178548\";\"クレス\";\"other\"\n\"3178560\";\"Comezzano-Cizzago\";\"main\"\n\"3178560\";\"Cizzago\";\"ascii\"\n\"3178565\";\"Civitella San Paolo\";\"main\"\n\"3178565\";\"チヴィテッラ・サン・パオロ\";\"other\"\n\"3178566\";\"Civitella Roveto\";\"main\"\n\"3178569\";\"Civitella Marittima\";\"main\"\n\"3178569\";\"Civitella\";\"other\"\n\"3178569\";\"Civitella Paganico\";\"other\"\n\"3178571\";\"Civitella in Val di Chiana\";\"main\"\n\"3178571\";\"Civitella\";\"other\"\n\"3178571\";\"Civitella Val di Chiana\";\"other\"\n\"3178571\";\"Civitella della Chiana\";\"other\"\n\"3178572\";\"Civitella di Romagna\";\"main\"\n\"3178572\";\"Civitella\";\"other\"\n\"3178572\";\"チヴィテッラ・ディ・ロマーニャ\";\"other\"\n\"3178574\";\"Civitella del Tronto\";\"main\"\n\"3178576\";\"Civitella d'Agliano\";\"main\"\n\"3178576\";\"チヴィテッラ・ダリアーノ\";\"other\"\n\"3178578\";\"Civitella Casanova\";\"main\"\n\"3178587\";\"Civitavecchia\";\"main\"\n\"3178587\";\"Chivitavekk'ja\";\"other\"\n\"3178587\";\"chivu~itavu~ekkia\";\"other\"\n\"3178587\";\"Чивитавеккья\";\"other\"\n\"3178587\";\"チヴィタヴェッキア\";\"other\"\n\"3178590\";\"Civitaquana\";\"main\"\n\"3178594\";\"Civita d'Antino\";\"main\"\n\"3178595\";\"Civita Castellana\";\"main\"\n\"3178595\";\"チーヴィタ・カステッラーナ\";\"other\"\n\"3178602\";\"Cividate Camuno\";\"main\"\n\"3178602\";\"Cividate\";\"other\"\n\"3178602\";\"Civitas Camunorum\";\"other\"\n\"3178602\";\"チヴィダーテ・カムーノ\";\"other\"\n\"3178603\";\"Cividate al Piano\";\"main\"\n\"3178605\";\"Cividale del Friuli\";\"main\"\n\"3178605\";\"Cividale\";\"other\"\n\"3178605\";\"Cividale d'Friu\";\"other\"\n\"3178605\";\"Cividale d’Friu\";\"other\"\n\"3178605\";\"Cividat\";\"other\"\n\"3178605\";\"Cividât\";\"other\"\n\"3178606\";\"Civezzano\";\"main\"\n\"3178606\";\"chivu~ettsu~ano\";\"other\"\n\"3178606\";\"チヴェッツァーノ\";\"other\"\n\"3178611\";\"Cittiglio\";\"main\"\n\"3178613\";\"Città Sant'Angelo\";\"main\"\n\"3178613\";\"Citta Sant'Angelo\";\"ascii\"\n\"3178617\";\"Cittaducale\";\"main\"\n\"3178619\";\"Città di Castello\";\"main\"\n\"3178619\";\"Citta di Castello\";\"ascii\"\n\"3178619\";\"Chita di Kastelo\";\"other\"\n\"3178619\";\"Citti Di Castello\";\"other\"\n\"3178619\";\"Tifernum Tiberinum\";\"other\"\n\"3178619\";\"Чита ди Кастело\";\"other\"\n\"3178619\";\"チッタ・ディ・カステッロ\";\"other\"\n\"3178620\";\"Città della Pieve\";\"main\"\n\"3178620\";\"Citta della Pieve\";\"ascii\"\n\"3178620\";\"Chita dela Pieve\";\"other\"\n\"3178620\";\"Чита дела Пиеве\";\"other\"\n\"3178622\";\"Cittadella\";\"main\"\n\"3178629\";\"Citerna\";\"main\"\n\"3178630\";\"Cisternino\";\"main\"\n\"3178631\";\"Cisterna di Latina\";\"main\"\n\"3178631\";\"Cisterna\";\"other\"\n\"3178632\";\"Cisterna d'Asti\";\"main\"\n\"3178636\";\"Cison di Valmarino\";\"main\"\n\"3178637\";\"Cismon del Grappa\";\"main\"\n\"3178637\";\"Cismon\";\"other\"\n\"3178639\";\"Cisliano\";\"main\"\n\"3178639\";\"chizuriano\";\"other\"\n\"3178639\";\"チズリアーノ\";\"other\"\n\"3178640\";\"Cislago\";\"main\"\n\"3178642\";\"Ciserano\";\"main\"\n\"3178643\";\"Cisano sul Neva\";\"main\"\n\"3178643\";\"Cisano\";\"other\"\n\"3178644\";\"Cisano Bergamasco\";\"main\"\n\"3178644\";\"Cisano\";\"other\"\n\"3178647\";\"Cirimido\";\"main\"\n\"3178650\";\"Ciriè\";\"main\"\n\"3178650\";\"Cirie\";\"ascii\"\n\"3178650\";\"Cirié\";\"other\"\n\"3178650\";\"chirie\";\"other\"\n\"3178650\";\"cirie\";\"other\"\n\"3178650\";\"ciriè\";\"other\"\n\"3178650\";\"チリエ\";\"other\"\n\"3178656\";\"Circello\";\"main\"\n\"3178658\";\"Cipressa\";\"main\"\n\"3178658\";\"Çipressa\";\"other\"\n\"3178663\";\"Cinto Euganeo\";\"main\"\n\"3178664\";\"Cinto Caomaggiore\";\"main\"\n\"3178664\";\"Cinto\";\"other\"\n\"3178671\";\"Cinisello Balsamo\";\"main\"\n\"3178671\";\"Cinisello\";\"other\"\n\"3178671\";\"チニゼッロ・バルサモ\";\"other\"\n\"3178672\";\"Cinigiano\";\"main\"\n\"3178673\";\"Cingoli\";\"main\"\n\"3178674\";\"Cingia de' Botti\";\"main\"\n\"3178674\";\"Cingia de'Botti\";\"other\"\n\"3178683\";\"Cimitile\";\"main\"\n\"3178683\";\"chimitire\";\"other\"\n\"3178683\";\"チミティーレ\";\"other\"\n\"3178689\";\"Cima Sappada\";\"main\"\n\"3178689\";\"Sappada\";\"other\"\n\"3178693\";\"Cimadolmo\";\"main\"\n\"3178698\";\"Cilavegna\";\"main\"\n\"3178700\";\"Cigole\";\"main\"\n\"3178700\";\"chigore\";\"other\"\n\"3178700\";\"チーゴレ\";\"other\"\n\"3178709\";\"Cigliano\";\"main\"\n\"3178720\";\"Ciciliano\";\"main\"\n\"3178720\";\"chichiriano\";\"other\"\n\"3178720\";\"チチリアーノ\";\"other\"\n\"3178725\";\"Cicerale\";\"main\"\n\"3178726\";\"Cicciano\";\"main\"\n\"3178726\";\"chitchano\";\"other\"\n\"3178726\";\"チッチャーノ\";\"other\"\n\"3178727\";\"Cicagna\";\"main\"\n\"3178738\";\"Ciampino\";\"main\"\n\"3178738\";\"Champino\";\"other\"\n\"3178738\";\"chanpino\";\"other\"\n\"3178738\";\"Чампино\";\"other\"\n\"3178738\";\"チャンピーノ\";\"other\"\n\"3178745\";\"Chivasso\";\"main\"\n\"3178745\";\"Civass\";\"other\"\n\"3178745\";\"Clavassium\";\"other\"\n\"3178745\";\"Kivasso\";\"other\"\n\"3178745\";\"kivu~asso\";\"other\"\n\"3178745\";\"Кивассо\";\"other\"\n\"3178745\";\"キヴァッソ\";\"other\"\n\"3178750\";\"Chiusi della Verna\";\"main\"\n\"3178754\";\"Chiusi\";\"main\"\n\"3178754\";\"kiuji\";\"other\"\n\"3178754\";\"キウージ\";\"other\"\n\"3178756\";\"Chiusdino\";\"main\"\n\"3178756\";\"kiuzudino\";\"other\"\n\"3178756\";\"キウズディーノ\";\"other\"\n\"3178758\";\"Chiusano di San Domenico\";\"main\"\n\"3178761\";\"Chiusa di Pesio\";\"main\"\n\"3178761\";\"Chiusa Pesio\";\"other\"\n\"3178764\";\"Chiusa - Klausen\";\"main\"\n\"3178764\";\"Chiusa\";\"ascii\"\n\"3178764\";\"Klausen\";\"other\"\n\"3178764\";\"kiuza\";\"other\"\n\"3178764\";\"キウーザ\";\"other\"\n\"3178766\";\"Chiuro\";\"main\"\n\"3178767\";\"Chiuppano\";\"main\"\n\"3178780\";\"Chions\";\"main\"\n\"3178780\";\"Cjons\";\"other\"\n\"3178782\";\"Chiomonte\";\"main\"\n\"3178782\";\"Chaumont\";\"other\"\n\"3178782\";\"Cimon\";\"other\"\n\"3178782\";\"kiomonte\";\"other\"\n\"3178782\";\"キオモンテ\";\"other\"\n\"3178784\";\"Chioggia\";\"main\"\n\"3178784\";\"kiojja\";\"other\"\n\"3178784\";\"キオッジャ\";\"other\"\n\"3178794\";\"Chieuti\";\"main\"\n\"3178794\";\"Qefti\";\"other\"\n\"3178796\";\"Chieti\";\"main\"\n\"3178796\";\"Chieta\";\"other\"\n\"3178796\";\"K'eti\";\"other\"\n\"3178796\";\"Teate\";\"other\"\n\"3178796\";\"kieti\";\"other\"\n\"3178796\";\"Кьети\";\"other\"\n\"3178796\";\"キエーティ\";\"other\"\n\"3178801\";\"Chiesina Uzzanese\";\"main\"\n\"3178803\";\"Chies d’Alpago\";\"main\"\n\"3178803\";\"Chies d'Alpago\";\"ascii\"\n\"3178808\";\"Chiesa in Valmalenco\";\"main\"\n\"3178808\";\"Chiesa\";\"other\"\n\"3178808\";\"Chiesa di Valmalenco\";\"other\"\n\"3178817\";\"Lavarone\";\"main\"\n\"3178817\";\"Chiesa\";\"ascii\"\n\"3178817\";\"Chiesa di Lavarone\";\"other\"\n\"3178817\";\"ravu~arone\";\"other\"\n\"3178817\";\"ラヴァローネ\";\"other\"\n\"3178818\";\"Chieri\";\"main\"\n\"3178818\";\"Cher\";\"other\"\n\"3178818\";\"kieri\";\"other\"\n\"3178818\";\"キエーリ\";\"other\"\n\"3178820\";\"Chienes - Kiens\";\"main\"\n\"3178820\";\"Chienes\";\"ascii\"\n\"3178820\";\"Cluenes\";\"other\"\n\"3178820\";\"Kiens\";\"other\"\n\"3178820\";\"kienesu\";\"other\"\n\"3178820\";\"キエーネス\";\"other\"\n\"3178829\";\"Chiavenna\";\"main\"\n\"3178829\";\"Clavenna\";\"other\"\n\"3178832\";\"Chiavari\";\"main\"\n\"3178832\";\"Ciaevai\";\"other\"\n\"3178832\";\"Ciävai\";\"other\"\n\"3178832\";\"Kiavari\";\"other\"\n\"3178832\";\"Киавари\";\"other\"\n\"3178846\";\"Chiaromonte\";\"main\"\n\"3178846\";\"Chiaramonte\";\"other\"\n\"3178850\";\"Chiari\";\"main\"\n\"3178850\";\"Clarium\";\"other\"\n\"3178850\";\"kiari\";\"other\"\n\"3178850\";\"キアーリ\";\"other\"\n\"3178855\";\"Chiaravalle\";\"main\"\n\"3178855\";\"Chiaravalle Marche\";\"other\"\n\"3178855\";\"kiaravu~arre\";\"other\"\n\"3178855\";\"キアラヴァッレ\";\"other\"\n\"3178857\";\"Chiarano\";\"main\"\n\"3178858\";\"Chiaramonti\";\"main\"\n\"3178869\";\"Chianni\";\"main\"\n\"3178874\";\"Chianciano Terme\";\"main\"\n\"3178874\";\"Bagni di Chianciano\";\"other\"\n\"3178874\";\"Chianciano\";\"other\"\n\"3178874\";\"Chianciano Bagni\";\"other\"\n\"3178874\";\"Il Bagno\";\"other\"\n\"3178874\";\"キアンチャーノ・テルメ\";\"other\"\n\"3178884\";\"Chiampo\";\"main\"\n\"3178899\";\"Cherasco\";\"main\"\n\"3178899\";\"Cherasch\";\"other\"\n\"3178905\";\"Chatillon\";\"main\"\n\"3178905\";\"Castiglion Dora\";\"other\"\n\"3178905\";\"Chatillion\";\"other\"\n\"3178905\";\"Châtillon\";\"other\"\n\"3178908\";\"Charvensod\";\"main\"\n\"3178928\";\"Cevo\";\"main\"\n\"3178928\";\"chevu~o\";\"other\"\n\"3178928\";\"チェーヴォ\";\"other\"\n\"3178930\";\"Ceva\";\"main\"\n\"3178930\";\"Cheva\";\"other\"\n\"3178930\";\"chevu~a\";\"other\"\n\"3178930\";\"Чева\";\"other\"\n\"3178930\";\"チェーヴァ\";\"other\"\n\"3178933\";\"Cetona\";\"main\"\n\"3178933\";\"chetona\";\"other\"\n\"3178933\";\"チェトーナ\";\"other\"\n\"3178934\";\"Ceto\";\"main\"\n\"3178934\";\"cheto\";\"other\"\n\"3178934\";\"チェート\";\"other\"\n\"3178937\";\"Cetara\";\"main\"\n\"3178937\";\"Chetara\";\"other\"\n\"3178937\";\"Четара\";\"other\"\n\"3178944\";\"Cessalto\";\"main\"\n\"3178952\";\"Cesiomaggiore\";\"main\"\n\"3178956\";\"Cesenatico\";\"main\"\n\"3178956\";\"Chezenatiko\";\"other\"\n\"3178956\";\"chezenatiko\";\"other\"\n\"3178956\";\"Чезенатико\";\"other\"\n\"3178956\";\"チェゼナーティコ\";\"other\"\n\"3178957\";\"Cesena\";\"main\"\n\"3178957\";\"Caesena\";\"other\"\n\"3178957\";\"Cesene\";\"other\"\n\"3178957\";\"Chezena\";\"other\"\n\"3178957\";\"Césène\";\"other\"\n\"3178957\";\"Zisena\";\"other\"\n\"3178957\";\"Zisèna\";\"other\"\n\"3178957\";\"chezena\";\"other\"\n\"3178957\";\"Чезена\";\"other\"\n\"3178957\";\"チェゼーナ\";\"other\"\n\"3178968\";\"Porto Cesareo\";\"main\"\n\"3178968\";\"Porto Cesario\";\"other\"\n\"3178972\";\"Cesano Maderno\";\"main\"\n\"3178972\";\"Cesano\";\"other\"\n\"3178972\";\"チェザーノ・マデルノ\";\"other\"\n\"3178984\";\"Cesa\";\"main\"\n\"3178987\";\"Cervo\";\"main\"\n\"3178987\";\"O Cervo\";\"other\"\n\"3178987\";\"O Çervo\";\"other\"\n\"3178988\";\"Cervino\";\"main\"\n\"3178992\";\"Cervignano del Friuli\";\"main\"\n\"3178992\";\"Carvignan\";\"other\"\n\"3178992\";\"Cervenianum\";\"other\"\n\"3178992\";\"Cervignan Sarvignan\";\"other\"\n\"3178992\";\"Cervignano\";\"other\"\n\"3178992\";\"Çarvignan\";\"other\"\n\"3178998\";\"Cervia\";\"main\"\n\"3178998\";\"Chervia\";\"other\"\n\"3178998\";\"cheruvu~ia\";\"other\"\n\"3178998\";\"Червиа\";\"other\"\n\"3178998\";\"チェルヴィア\";\"other\"\n\"3178999\";\"Cerveteri\";\"main\"\n\"3178999\";\"Caere\";\"other\"\n\"3178999\";\"Cerveleri\";\"other\"\n\"3178999\";\"Cherveteri\";\"other\"\n\"3178999\";\"cheruvu~eteri\";\"other\"\n\"3178999\";\"Черветери\";\"other\"\n\"3178999\";\"チェルヴェーテリ\";\"other\"\n\"3179000\";\"Cervesina\";\"main\"\n\"3179001\";\"Cervere\";\"main\"\n\"3179013\";\"Cervaro\";\"main\"\n\"3179013\";\"Cervaro di Frosinone\";\"other\"\n\"3179020\";\"Certosa di Pavia\";\"main\"\n\"3179020\";\"Torre del Mangano\";\"other\"\n\"3179020\";\"チェルトーザ・ディ・パヴィーア\";\"other\"\n\"3179024\";\"Certaldo\";\"main\"\n\"3179027\";\"Cerro Maggiore\";\"main\"\n\"3179027\";\"Cerro\";\"other\"\n\"3179027\";\"チェッロ・マッジョーレ\";\"other\"\n\"3179030\";\"Cerro al Volturno\";\"main\"\n\"3179030\";\"Cerro\";\"other\"\n\"3179030\";\"Cerro a Volturno\";\"other\"\n\"3179032\";\"Cerrione\";\"main\"\n\"3179033\";\"Cerreto Sannita\";\"main\"\n\"3179034\";\"Cerreto Laziale\";\"main\"\n\"3179034\";\"チェッレート・ラツィアーレ\";\"other\"\n\"3179035\";\"Cerreto Guidi\";\"main\"\n\"3179036\";\"Cerreto di Spoleto\";\"main\"\n\"3179036\";\"Cerreto\";\"other\"\n\"3179037\";\"Cerreto d'Esi\";\"main\"\n\"3179037\";\"Cerreto\";\"other\"\n\"3179037\";\"チェッレート・デージ\";\"other\"\n\"3179066\";\"Cernusco sul Naviglio\";\"main\"\n\"3179066\";\"Cernusco\";\"other\"\n\"3179066\";\"チェルヌスコ・スル・ナヴィーリオ\";\"other\"\n\"3179067\";\"Cernobbio\";\"main\"\n\"3179068\";\"Cermignano\";\"main\"\n\"3179069\";\"Cermes - Tscherms\";\"main\"\n\"3179069\";\"Cermes\";\"ascii\"\n\"3179069\";\"Tscherms\";\"other\"\n\"3179069\";\"cherumesu\";\"other\"\n\"3179069\";\"チェルメス\";\"other\"\n\"3179070\";\"Cermenate\";\"main\"\n\"3179075\";\"Cerignola\";\"main\"\n\"3179075\";\"Corignola\";\"other\"\n\"3179076\";\"Ceriano Laghetto\";\"main\"\n\"3179076\";\"Ceriano\";\"other\"\n\"3179076\";\"チェリアーノ・ラゲット\";\"other\"\n\"3179078\";\"Ceriana\";\"main\"\n\"3179078\";\"Çeriana\";\"other\"\n\"3179079\";\"Ceriale\";\"main\"\n\"3179079\";\"O Ceja\";\"other\"\n\"3179079\";\"O Çejâ\";\"other\"\n\"3179088\";\"Cerete\";\"main\"\n\"3179097\";\"Virgilio\";\"main\"\n\"3179097\";\"Cerese\";\"ascii\"\n\"3179097\";\"Andes\";\"other\"\n\"3179097\";\"vu~irujirio\";\"other\"\n\"3179097\";\"ヴィルジーリオ\";\"other\"\n\"3179098\";\"Ceresara\";\"main\"\n\"3179099\";\"Ceres\";\"main\"\n\"3179099\";\"Cere\";\"other\"\n\"3179099\";\"cheresu\";\"other\"\n\"3179099\";\"チェーレス\";\"other\"\n\"3179102\";\"Ceregnano\";\"main\"\n\"3179106\";\"Cerea\";\"main\"\n\"3179109\";\"Cercola\";\"main\"\n\"3179109\";\"cherukora\";\"other\"\n\"3179109\";\"チェルコラ\";\"other\"\n\"3179114\";\"Cerchio\";\"main\"\n\"3179119\";\"Cercemaggiore\";\"main\"\n\"3179135\";\"Ceraso\";\"main\"\n\"3179135\";\"Cerasa\";\"other\"\n\"3179137\";\"Cerano\";\"main\"\n\"3179141\";\"Ceprano\";\"main\"\n\"3179145\";\"Ceppaloni\";\"main\"\n\"3179150\";\"Cepagatti\";\"main\"\n\"3179150\";\"Cepagalli\";\"other\"\n\"3179157\";\"Centola\";\"main\"\n\"3179162\";\"Cento\";\"main\"\n\"3179162\";\"chento\";\"other\"\n\"3179162\";\"チェント\";\"other\"\n\"3179167\";\"Centallo\";\"main\"\n\"3179167\";\"Sental\";\"other\"\n\"3179172\";\"Cengio\";\"main\"\n\"3179172\";\"Cenge\";\"other\"\n\"3179172\";\"Cengë\";\"other\"\n\"3179172\";\"chenjo\";\"other\"\n\"3179172\";\"チェンジョ\";\"other\"\n\"3179173\";\"Ceneselli\";\"main\"\n\"3179175\";\"Cene\";\"main\"\n\"3179178\";\"Cencenighe Agordino\";\"main\"\n\"3179178\";\"Cencenighe\";\"ascii\"\n\"3179184\";\"Cembra\";\"main\"\n\"3179188\";\"Cellole\";\"main\"\n\"3179190\";\"Cellino San Marco\";\"main\"\n\"3179190\";\"Cellinu Santu Marcu\";\"other\"\n\"3179190\";\"チェッリーノ・サン・マルコ\";\"other\"\n\"3179193\";\"Cellino Attanasio\";\"main\"\n\"3179193\";\"Cellino\";\"other\"\n\"3179201\";\"Cellere\";\"main\"\n\"3179202\";\"Celleno\";\"main\"\n\"3179204\";\"Celle Ligure\";\"main\"\n\"3179204\";\"チェッレ・リーグレ\";\"other\"\n\"3179206\";\"Celle di Bulgheria\";\"main\"\n\"3179206\";\"Celle\";\"other\"\n\"3179206\";\"Celle Bulgheria\";\"other\"\n\"3179208\";\"Cellamare\";\"main\"\n\"3179208\";\"Cellammare\";\"other\"\n\"3179212\";\"Celenza Valfortore\";\"main\"\n\"3179213\";\"Celenza sul Trigno\";\"main\"\n\"3179216\";\"Celano\";\"main\"\n\"3179218\";\"Ceglie Messapica\";\"main\"\n\"3179218\";\"Ceglie Messapico\";\"ascii\"\n\"3179218\";\"Céglie Messápica\";\"other\"\n\"3179218\";\"チェーリエ・メッサピーカ\";\"other\"\n\"3179220\";\"Ceggia\";\"main\"\n\"3179220\";\"chejja\";\"other\"\n\"3179220\";\"チェッジャ\";\"other\"\n\"3179227\";\"Cedegolo\";\"main\"\n\"3179227\";\"chedegoro\";\"other\"\n\"3179227\";\"チェデーゴロ\";\"other\"\n\"3179235\";\"Cecina\";\"main\"\n\"3179235\";\"Chechina\";\"other\"\n\"3179235\";\"chechina\";\"other\"\n\"3179235\";\"Чечина\";\"other\"\n\"3179235\";\"チェーチナ\";\"other\"\n\"3179243\";\"Ceccano\";\"main\"\n\"3179243\";\"Chekkano\";\"other\"\n\"3179243\";\"Чеккано\";\"other\"\n\"3179247\";\"Cazzano Sant'Andrea\";\"main\"\n\"3179249\";\"Cazzago San Martino\";\"main\"\n\"3179249\";\"カッツァーゴ・サン・マルティーノ\";\"other\"\n\"3179252\";\"Cavriglia\";\"main\"\n\"3179253\";\"Cavriana\";\"main\"\n\"3179254\";\"Cavriago\";\"main\"\n\"3179254\";\"Capriago\";\"other\"\n\"3179254\";\"Gavriago\";\"other\"\n\"3179257\";\"Cavour\";\"main\"\n\"3179257\";\"ka wu er\";\"other\"\n\"3179257\";\"kavuru\";\"other\"\n\"3179257\";\"カヴール\";\"other\"\n\"3179257\";\"卡武尔\";\"other\"\n\"3179272\";\"Cavezzo\";\"main\"\n\"3179279\";\"Cavenago di Brianza\";\"main\"\n\"3179279\";\"カヴェナーゴ・ディ・ブリアンツァ\";\"other\"\n\"3179280\";\"Cavenago d'Adda\";\"main\"\n\"3179280\";\"カヴェナーゴ・ダッダ\";\"other\"\n\"3179288\";\"Cave\";\"main\"\n\"3179288\";\"kavu~e\";\"other\"\n\"3179288\";\"カーヴェ\";\"other\"\n\"3179290\";\"Cavazzo Carnico\";\"main\"\n\"3179290\";\"Cavazzo\";\"other\"\n\"3179290\";\"Cjavac\";\"other\"\n\"3179293\";\"Cavasso Nuovo\";\"main\"\n\"3179293\";\"Cavasso\";\"other\"\n\"3179293\";\"Cjavas\";\"other\"\n\"3179294\";\"Cavarzere\";\"main\"\n\"3179294\";\"kavu~arutsu~ere\";\"other\"\n\"3179294\";\"カヴァルツェレ\";\"other\"\n\"3179297\";\"Cavaria con Premezzo\";\"main\"\n\"3179297\";\"Cavaria\";\"ascii\"\n\"3179305\";\"Cava Manara\";\"main\"\n\"3179319\";\"Cavallirio\";\"main\"\n\"3179321\";\"Cavallino-Treporti\";\"main\"\n\"3179321\";\"Cavallino\";\"ascii\"\n\"3179323\";\"Cavallino\";\"main\"\n\"3179323\";\"Cavallinu\";\"other\"\n\"3179325\";\"Cavallermaggiore\";\"main\"\n\"3179325\";\"Cavlimor\";\"other\"\n\"3179333\";\"Cavalese\";\"main\"\n\"3179333\";\"kavu~areze\";\"other\"\n\"3179333\";\"カヴァレーゼ\";\"other\"\n\"3179334\";\"Cavaion Veronese\";\"main\"\n\"3179336\";\"Cavaglià\";\"main\"\n\"3179336\";\"Cavaglia\";\"ascii\"\n\"3179336\";\"Cavaja\";\"other\"\n\"3179336\";\"Cavajà\";\"other\"\n\"3179337\";\"Cava de' Tirreni\";\"main\"\n\"3179337\";\"Cava\";\"other\"\n\"3179337\";\"Cava de'Tirreni\";\"other\"\n\"3179337\";\"Cava dei Tirreni\";\"other\"\n\"3179341\";\"Cautano\";\"main\"\n\"3179347\";\"Cattolica\";\"main\"\n\"3179347\";\"kattorika\";\"other\"\n\"3179347\";\"カットーリカ\";\"other\"\n\"3179360\";\"Catignano\";\"main\"\n\"3179372\";\"Castropignano\";\"main\"\n\"3179373\";\"Castronuovo di Sant'Andrea\";\"main\"\n\"3179374\";\"Castronno\";\"main\"\n\"3179376\";\"Castro dei Volsci\";\"main\"\n\"3179376\";\"Castro de' Volsci\";\"other\"\n\"3179377\";\"Castrocielo\";\"main\"\n\"3179380\";\"Castro\";\"main\"\n\"3179380\";\"kasutoro\";\"other\"\n\"3179380\";\"カストロ\";\"other\"\n\"3179382\";\"Castrignano de' Greci\";\"main\"\n\"3179382\";\"Castrignano de'Greci\";\"other\"\n\"3179383\";\"Castri di Lecce\";\"main\"\n\"3179383\";\"Castrì di Lecce\";\"other\"\n\"3179385\";\"Castorano\";\"main\"\n\"3179386\";\"Casto\";\"main\"\n\"3179386\";\"kasuto\";\"other\"\n\"3179386\";\"カスト\";\"other\"\n\"3179387\";\"Castions di Strada\";\"main\"\n\"3179387\";\"Cjasteons di Stradalte\";\"other\"\n\"3179390\";\"Castione della Presolana\";\"main\"\n\"3179390\";\"Castione\";\"other\"\n\"3179395\";\"Castilenti\";\"main\"\n\"3179396\";\"Castignano\";\"main\"\n\"3179405\";\"Castiglion Fiorentino\";\"main\"\n\"3179405\";\"Castiglione Fiorentino\";\"other\"\n\"3179406\";\"Castiglion Fibocchi\";\"main\"\n\"3179406\";\"Castiglione Fibocchi\";\"other\"\n\"3179407\";\"Castiglione Olona\";\"main\"\n\"3179408\";\"Castiglione Messer Raimondo\";\"main\"\n\"3179409\";\"Castiglione Messer Marino\";\"main\"\n\"3179410\";\"Castiglione in Teverina\";\"main\"\n\"3179410\";\"カスティリオーネ・イン・テヴェリーナ\";\"other\"\n\"3179411\";\"Castiglione d'Orcia\";\"main\"\n\"3179411\";\"カスティリオーネ・ドルチャ\";\"other\"\n\"3179414\";\"Castiglione di Garfagnana\";\"main\"\n\"3179415\";\"Castiglione delle Stiviere\";\"main\"\n\"3179415\";\"カスティリオーネ・デッレ・スティヴィエーレ\";\"other\"\n\"3179418\";\"Castiglione della Pescaia\";\"main\"\n\"3179419\";\"Castiglione del Lago\";\"main\"\n\"3179421\";\"Castiglione dei Pepoli\";\"main\"\n\"3179421\";\"Castiglione de 'Pepoli\";\"other\"\n\"3179421\";\"Castiglione de 'Pépoli\";\"other\"\n\"3179422\";\"Castiglione del Genovesi\";\"main\"\n\"3179422\";\"Castiglione dei Genovesi\";\"ascii\"\n\"3179423\";\"Castiglione d'Adda\";\"main\"\n\"3179423\";\"カスティリオーネ・ダッダ\";\"other\"\n\"3179424\";\"Castiglione Chiavarese\";\"main\"\n\"3179424\";\"Castiglione\";\"other\"\n\"3179424\";\"O Castiggion\";\"other\"\n\"3179440\";\"Castenedolo\";\"main\"\n\"3179440\";\"kasutenedoro\";\"other\"\n\"3179440\";\"カステネードロ\";\"other\"\n\"3179441\";\"Castenaso\";\"main\"\n\"3179443\";\"Castel Volturno\";\"main\"\n\"3179445\";\"Castel Viscardo\";\"main\"\n\"3179446\";\"Castelvetro Piacentino\";\"main\"\n\"3179447\";\"Castelvetro di Modena\";\"main\"\n\"3179447\";\"Castelvetro\";\"other\"\n\"3179448\";\"Castelvetere sul Calore\";\"main\"\n\"3179448\";\"Castelvetere di Calore\";\"other\"\n\"3179449\";\"Castelvetere in Val Fortore\";\"main\"\n\"3179452\";\"Castelverde\";\"main\"\n\"3179454\";\"Castelvenere\";\"main\"\n\"3179455\";\"Castelvecchio Subequo\";\"main\"\n\"3179455\";\"Castelvecchio in Subequo\";\"other\"\n\"3179455\";\"Castelvécchio in Subéquo\";\"other\"\n\"3179468\";\"Castelseprio\";\"main\"\n\"3179470\";\"Castelsardo\";\"main\"\n\"3179471\";\"Castelsaraceno\";\"main\"\n\"3179473\";\"Castel Sant'Elia\";\"main\"\n\"3179476\";\"Castel Sant'Angelo\";\"main\"\n\"3179476\";\"カステル・サンタンジェロ\";\"other\"\n\"3179479\";\"Castel San Pietro Terme\";\"main\"\n\"3179479\";\"Castel San Pietro dell'Emilia\";\"other\"\n\"3179483\";\"Castel San Niccolò\";\"main\"\n\"3179483\";\"Castel San Niccolo\";\"ascii\"\n\"3179484\";\"Castel San Lorenzo\";\"main\"\n\"3179485\";\"Castel San Giovanni\";\"main\"\n\"3179488\";\"Castel San Giorgio\";\"main\"\n\"3179493\";\"Castelrotto - Kastelruth\";\"main\"\n\"3179493\";\"Castelrotto\";\"ascii\"\n\"3179493\";\"Castellum Ruptum\";\"other\"\n\"3179493\";\"Kastelruth\";\"other\"\n\"3179493\";\"kasuterurotto\";\"other\"\n\"3179493\";\"カステルロット\";\"other\"\n\"3179498\";\"Castel Ritaldi\";\"main\"\n\"3179498\";\"Castel Ritaldi e San Giovanni\";\"other\"\n\"3179502\";\"Castelraimondo\";\"main\"\n\"3179504\";\"Castelpoto\";\"main\"\n\"3179508\";\"Castelplanio\";\"main\"\n\"3179508\";\"kasuterupuranio\";\"other\"\n\"3179508\";\"カステルプラーニオ\";\"other\"\n\"3179510\";\"Castelpetroso\";\"main\"\n\"3179512\";\"Castelpagano\";\"main\"\n\"3179513\";\"Castelnuovo Scrivia\";\"main\"\n\"3179514\";\"Castelnuovo Rangone\";\"main\"\n\"3179518\";\"Castelnuovo Don Bosco\";\"main\"\n\"3179518\";\"Castelneuv Don Bosch\";\"other\"\n\"3179518\";\"Castelneuv Don Bòsch\";\"other\"\n\"3179518\";\"Castelnuova\";\"other\"\n\"3179518\";\"Castelnuovo d'Asti\";\"other\"\n\"3179520\";\"Castelnuovo di Val di Cecina\";\"main\"\n\"3179520\";\"Castelnuovo Val di Cecina\";\"other\"\n\"3179521\";\"Castelnuovo di Porto\";\"main\"\n\"3179521\";\"カステルヌオーヴォ・ディ・ポルト\";\"other\"\n\"3179522\";\"Castelnuovo Magra\";\"main\"\n\"3179522\";\"Castelnuovo di Magra\";\"ascii\"\n\"3179522\";\"Castarno\";\"other\"\n\"3179522\";\"Castarnò\";\"other\"\n\"3179523\";\"Castelnuovo di Garfagnana\";\"main\"\n\"3179530\";\"Castelnuovo della Daunia\";\"main\"\n\"3179532\";\"Castelnuovo Cilento\";\"main\"\n\"3179534\";\"Castelnuovo Bocca d'Adda\";\"main\"\n\"3179534\";\"カステルヌオーヴォ・ボッカ・ダッダ\";\"other\"\n\"3179535\";\"Castelnuovo Berardenga\";\"main\"\n\"3179535\";\"カステルヌオーヴォ・ベラルデンガ\";\"other\"\n\"3179546\";\"Castelnovo ne' Monti\";\"main\"\n\"3179546\";\"Castelnovo ne Monti\";\"other\"\n\"3179546\";\"Castelnovo ne'Monti\";\"other\"\n\"3179546\";\"Castelnovo né Monti\";\"other\"\n\"3179546\";\"Castelnuovo ne' Monti\";\"other\"\n\"3179547\";\"Castelnovo di Sotto\";\"main\"\n\"3179547\";\"Castelnuovo di sotto\";\"other\"\n\"3179555\";\"Castel Mella\";\"main\"\n\"3179555\";\"カステル・メッラ\";\"other\"\n\"3179556\";\"Castelmauro\";\"main\"\n\"3179557\";\"Castelmassa\";\"main\"\n\"3179560\";\"Castel Maggiore\";\"main\"\n\"3179560\";\"Kastel Madzhore\";\"other\"\n\"3179560\";\"Кастел Маджоре\";\"other\"\n\"3179561\";\"Castel Madama\";\"main\"\n\"3179561\";\"カステル・マダーマ\";\"other\"\n\"3179563\";\"Castelluccio Valmaggiore\";\"main\"\n\"3179563\";\"Castelluccio\";\"other\"\n\"3179570\";\"Castellucchio\";\"main\"\n\"3179572\";\"Castello Tesino\";\"main\"\n\"3179572\";\"カステッロ・テジーノ\";\"other\"\n\"3179579\";\"Castellavazzo\";\"main\"\n\"3179579\";\"Castello Lavazzo\";\"ascii\"\n\"3179581\";\"Castello di Serravalle\";\"main\"\n\"3179584\";\"Castello di Godego\";\"main\"\n\"3179585\";\"Castello-Molina di Fiemme\";\"main\"\n\"3179585\";\"Castello di Fiemme\";\"ascii\"\n\"3179585\";\"Castello\";\"other\"\n\"3179585\";\"Castello di Fiemmo\";\"other\"\n\"3179591\";\"Castello di Annone\";\"main\"\n\"3179591\";\"Castel d'Anon\";\"other\"\n\"3179591\";\"Castello Annone\";\"other\"\n\"3179591\";\"Castello d'Annone\";\"other\"\n\"3179597\";\"Castello d'Argile\";\"main\"\n\"3179597\";\"Castel d'Argile\";\"other\"\n\"3179607\";\"Valsolda\";\"main\"\n\"3179607\";\"Castello\";\"ascii\"\n\"3179607\";\"Castello Valsolda\";\"other\"\n\"3179620\";\"Castelliri\";\"main\"\n\"3179622\";\"Castellina Marittima\";\"main\"\n\"3179623\";\"Castellina in Chianti\";\"main\"\n\"3179623\";\"カステッリーナ・イン・キアンティ\";\"other\"\n\"3179625\";\"Castelli Calepio\";\"main\"\n\"3179625\";\"Calepio\";\"other\"\n\"3179626\";\"Castelli\";\"main\"\n\"3179629\";\"Castelletto sopra Ticino\";\"main\"\n\"3179629\";\"Castelletto\";\"other\"\n\"3179629\";\"Castelletto Ticino\";\"other\"\n\"3179636\";\"Castelleone\";\"main\"\n\"3179640\";\"Castellazzo Bormida\";\"main\"\n\"3179640\";\"El Castlass\";\"other\"\n\"3179640\";\"Ël Castlass\";\"other\"\n\"3179641\";\"Castell'Azzara\";\"main\"\n\"3179641\";\"Castell'Azzaru\";\"other\"\n\"3179642\";\"Castell'Arquato\";\"main\"\n\"3179647\";\"Castellaro\";\"main\"\n\"3179647\";\"O Castella\";\"other\"\n\"3179647\";\"O Castellâ\";\"other\"\n\"3179649\";\"Castellarano\";\"main\"\n\"3179650\";\"Castellanza\";\"main\"\n\"3179655\";\"Castellaneta\";\"main\"\n\"3179656\";\"Castellana Grotte\";\"main\"\n\"3179656\";\"Castellana\";\"other\"\n\"3179656\";\"カステッラーナ・グロッテ\";\"other\"\n\"3179659\";\"Castellamonte\";\"main\"\n\"3179659\";\"Castlamont\";\"other\"\n\"3179659\";\"kasuterramonte\";\"other\"\n\"3179659\";\"カステッラモンテ\";\"other\"\n\"3179661\";\"Castellammare di Stabia\";\"main\"\n\"3179661\";\"Castellammare\";\"other\"\n\"3179661\";\"Estabia\";\"other\"\n\"3179661\";\"Estàbia\";\"other\"\n\"3179661\";\"Kastelamare di Stabija\";\"other\"\n\"3179661\";\"Stabia\";\"other\"\n\"3179661\";\"Stabiae\";\"other\"\n\"3179661\";\"Stabie\";\"other\"\n\"3179661\";\"Кастеламаре ди Стабија\";\"other\"\n\"3179662\";\"Castellalto\";\"main\"\n\"3179663\";\"Castell'Alfero\";\"main\"\n\"3179663\";\"Castel Alfe\";\"other\"\n\"3179663\";\"Castel Alfè\";\"other\"\n\"3179665\";\"Castellafiume\";\"main\"\n\"3179667\";\"Castellabate\";\"main\"\n\"3179667\";\"Castiellabbate\";\"other\"\n\"3179670\";\"Castelguglielmo\";\"main\"\n\"3179671\";\"Castel Guelfo di Bologna\";\"main\"\n\"3179671\";\"Castel Guelfo\";\"other\"\n\"3179673\";\"Castelgrande\";\"main\"\n\"3179674\";\"Castelgomberto\";\"main\"\n\"3179675\";\"Castel Goffredo\";\"main\"\n\"3179678\";\"Castel Giorgio\";\"main\"\n\"3179680\";\"Castel Gandolfo\";\"main\"\n\"3179683\";\"Castel Frentano\";\"main\"\n\"3179683\";\"Castelfrentano\";\"ascii\"\n\"3179684\";\"Castelfranco Veneto\";\"main\"\n\"3179685\";\"Castelfranco in Miscano\";\"main\"\n\"3179686\";\"Castelfranco Emilia\";\"main\"\n\"3179686\";\"Castelfranco d'Emilia\";\"other\"\n\"3179686\";\"Castelfranco dell'Emilia\";\"other\"\n\"3179687\";\"Castelfranco di Sotto\";\"main\"\n\"3179687\";\"Castelfranco\";\"other\"\n\"3179688\";\"Castelfranco di Sopra\";\"main\"\n\"3179688\";\"Castelfranca di Sopra\";\"other\"\n\"3179688\";\"Castelfranco\";\"other\"\n\"3179690\";\"Castelfranci\";\"main\"\n\"3179692\";\"Castelforte\";\"main\"\n\"3179692\";\"kasuteruforute\";\"other\"\n\"3179692\";\"カステルフォルテ\";\"other\"\n\"3179695\";\"Castel Focognano\";\"main\"\n\"3179696\";\"Castelfiorentino\";\"main\"\n\"3179697\";\"Castelfidardo\";\"main\"\n\"3179703\";\"Castel di Sangro\";\"main\"\n\"3179711\";\"Castel di Casio\";\"main\"\n\"3179711\";\"Castel d Chesi\";\"other\"\n\"3179711\";\"Castèl d Chèsi\";\"other\"\n\"3179713\";\"Castel del Rio\";\"main\"\n\"3179715\";\"Castel del Piano\";\"main\"\n\"3179724\";\"Castel d'Ario\";\"main\"\n\"3179725\";\"Castel d'Aiano\";\"main\"\n\"3179726\";\"Castelcucco\";\"main\"\n\"3179729\";\"Castelcivita\";\"main\"\n\"3179732\";\"Castel Campagnano\";\"main\"\n\"3179735\";\"Castel Bolognese\";\"main\"\n\"3179735\";\"カステル・ボロニェーゼ\";\"other\"\n\"3179737\";\"Castelbello-Ciardes - Kastelbell-Tschars\";\"main\"\n\"3179737\";\"Castelbello\";\"ascii\"\n\"3179738\";\"Castelbellino\";\"main\"\n\"3179738\";\"kasuteruberrino\";\"other\"\n\"3179738\";\"カステルベッリーノ\";\"other\"\n\"3179740\";\"Castel Baronia\";\"main\"\n\"3179741\";\"Castelbaldo\";\"main\"\n\"3179744\";\"Castegnato\";\"main\"\n\"3179744\";\"kasutenyato\";\"other\"\n\"3179744\";\"カステニャート\";\"other\"\n\"3179745\";\"Casteggio\";\"main\"\n\"3179749\";\"Castano Primo\";\"main\"\n\"3179749\";\"Castano\";\"other\"\n\"3179749\";\"カスターノ・プリーモ\";\"other\"\n\"3179754\";\"Castagnole Monferrato\";\"main\"\n\"3179755\";\"Castagnole delle Lanze\";\"main\"\n\"3179755\";\"Castagnole Lanze\";\"ascii\"\n\"3179755\";\"Castagnole\";\"other\"\n\"3179760\";\"Castagnito\";\"main\"\n\"3179761\";\"Castagneto Po\";\"main\"\n\"3179761\";\"Castagne\";\"other\"\n\"3179761\";\"Castagné\";\"other\"\n\"3179761\";\"カスタニェート・ポー\";\"other\"\n\"3179762\";\"Castagneto Carducci\";\"main\"\n\"3179762\";\"Castagneto\";\"other\"\n\"3179762\";\"カスタニェート・カルドゥッチ\";\"other\"\n\"3179768\";\"Castagnaro\";\"main\"\n\"3179778\";\"Cassolnovo\";\"main\"\n\"3179781\";\"Cassino\";\"main\"\n\"3179781\";\"Kassino\";\"other\"\n\"3179781\";\"kasshino\";\"other\"\n\"3179781\";\"Кассино\";\"other\"\n\"3179781\";\"カッシーノ\";\"other\"\n\"3179784\";\"Cassine\";\"main\"\n\"3179787\";\"Cassina de' Pecchi\";\"main\"\n\"3179787\";\"Cassina de'Pecchi\";\"other\"\n\"3179787\";\"カッシーナ・デ・ペッキ\";\"other\"\n\"3179793\";\"Cassano Spinola\";\"main\"\n\"3179793\";\"Cassano\";\"other\"\n\"3179794\";\"Cassano delle Murge\";\"main\"\n\"3179794\";\"Cassano\";\"other\"\n\"3179795\";\"Cassano d'Adda\";\"main\"\n\"3179795\";\"Kasano d'Ada\";\"other\"\n\"3179795\";\"Касано д'Ада\";\"other\"\n\"3179795\";\"カッサーノ・ダッダ\";\"other\"\n\"3179800\";\"Cassacco\";\"main\"\n\"3179800\";\"Cjassa\";\"other\"\n\"3179802\";\"Caspoggio\";\"main\"\n\"3179803\";\"Casperia\";\"main\"\n\"3179806\";\"Casoria\";\"main\"\n\"3179806\";\"kazoria\";\"other\"\n\"3179806\";\"カゾーリア\";\"other\"\n\"3179807\";\"Casorezzo\";\"main\"\n\"3179807\";\"kazorettsu~o\";\"other\"\n\"3179807\";\"カゾレッツォ\";\"other\"\n\"3179808\";\"Casorate Sempione\";\"main\"\n\"3179809\";\"Casorate Primo\";\"main\"\n\"3179828\";\"Casoli\";\"main\"\n\"3179829\";\"Casole d'Elsa\";\"main\"\n\"3179829\";\"カーゾレ・デルザ\";\"other\"\n\"3179830\";\"Casola Valsenio\";\"main\"\n\"3179830\";\"カゾーラ・ヴァルセーニオ\";\"other\"\n\"3179831\";\"Casola in Lunigiana\";\"main\"\n\"3179831\";\"カーゾラ・イン・ルニジャーナ\";\"other\"\n\"3179832\";\"Casola di Napoli\";\"main\"\n\"3179832\";\"Casola 'e Napule\";\"other\"\n\"3179832\";\"カーゾラ・ディ・ナーポリ\";\"other\"\n\"3179835\";\"Casnigo\";\"main\"\n\"3179836\";\"Casarile\";\"main\"\n\"3179836\";\"Casirile\";\"ascii\"\n\"3179836\";\"kazarire\";\"other\"\n\"3179836\";\"カザリーレ\";\"other\"\n\"3179837\";\"Casirate d'Adda\";\"main\"\n\"3179844\";\"Casina\";\"main\"\n\"3179844\";\"Casma\";\"other\"\n\"3179866\";\"Caserta\";\"main\"\n\"3179866\";\"Caserte\";\"other\"\n\"3179866\";\"Kazerta\";\"other\"\n\"3179866\";\"kazeruta\";\"other\"\n\"3179866\";\"Казерта\";\"other\"\n\"3179866\";\"カゼルタ\";\"other\"\n\"3179911\";\"Caselle Torinese\";\"main\"\n\"3179911\";\"Caseli\";\"other\"\n\"3179911\";\"Caselle\";\"other\"\n\"3179911\";\"カゼッレ・トリネーゼ\";\"other\"\n\"3179912\";\"Caselle Lurani\";\"main\"\n\"3179912\";\"カゼッレ・ルラーニ\";\"other\"\n\"3179913\";\"Caselle in Pittari\";\"main\"\n\"3179920\";\"Casella\";\"main\"\n\"3179922\";\"Caselette\";\"main\"\n\"3179922\";\"Casellette\";\"other\"\n\"3179922\";\"Caslette\";\"other\"\n\"3179922\";\"Caslëtte\";\"other\"\n\"3179922\";\"kazerette\";\"other\"\n\"3179922\";\"カゼレッテ\";\"other\"\n\"3179925\";\"Casei Gerola\";\"main\"\n\"3179958\";\"Cascinette d'Ivrea\";\"main\"\n\"3179958\";\"Cascinette\";\"ascii\"\n\"3179977\";\"Cascina\";\"main\"\n\"3179979\";\"Casciana Terme\";\"main\"\n\"3179979\";\"Bagni di Casciana\";\"other\"\n\"3179980\";\"Cascia\";\"main\"\n\"3179980\";\"Cassia\";\"other\"\n\"3179980\";\"Cássia\";\"other\"\n\"3179984\";\"Casazza\";\"main\"\n\"3179984\";\"Cassazza\";\"other\"\n\"3180014\";\"Casatenovo\";\"main\"\n\"3180014\";\"Casatenaovo\";\"other\"\n\"3180014\";\"Casatenuovo\";\"other\"\n\"3180045\";\"Casarsa della Delizia\";\"main\"\n\"3180045\";\"Casarsa\";\"other\"\n\"3180045\";\"Cjasarse\";\"other\"\n\"3180072\";\"Casapulla\";\"main\"\n\"3180110\";\"Casandrino\";\"main\"\n\"3180110\";\"kazandorino\";\"other\"\n\"3180110\";\"カザンドリーノ\";\"other\"\n\"3180133\";\"Casamassima\";\"main\"\n\"3180133\";\"Cassamassima\";\"other\"\n\"3180141\";\"Casamarciano\";\"main\"\n\"3180141\";\"kazamaruchano\";\"other\"\n\"3180141\";\"カザマルチャーノ\";\"other\"\n\"3180151\";\"Casalzuigno\";\"main\"\n\"3180153\";\"Casalvieri\";\"main\"\n\"3180155\";\"Casal Velino\";\"main\"\n\"3180156\";\"Casalvecchio di Puglia\";\"main\"\n\"3180161\";\"Casaluce\";\"main\"\n\"3180161\";\"Fertilia\";\"other\"\n\"3180166\";\"Casalserugo\";\"main\"\n\"3180167\";\"Casalromano\";\"main\"\n\"3180168\";\"Casalpusterlengo\";\"main\"\n\"3180168\";\"Casalis Pistorum\";\"other\"\n\"3180170\";\"Casaloldo\";\"main\"\n\"3180170\";\"Casaloldo il Palazzio\";\"other\"\n\"3180171\";\"Casalnuovo Monterotaro\";\"main\"\n\"3180172\";\"Casalnuovo di Napoli\";\"main\"\n\"3180172\";\"Casalnuovo\";\"other\"\n\"3180172\";\"カザルヌオーヴォ・ディ・ナポーリ\";\"other\"\n\"3180174\";\"Casalmoro\";\"main\"\n\"3180175\";\"Casalmorano\";\"main\"\n\"3180176\";\"Casalmaiocco\";\"main\"\n\"3180177\";\"Casalmaggiore\";\"main\"\n\"3180177\";\"Casalis Maior\";\"other\"\n\"3180177\";\"kazarumajjore\";\"other\"\n\"3180177\";\"カザルマッジョーレ\";\"other\"\n\"3180178\";\"Casalino\";\"main\"\n\"3180182\";\"Casalincontrada\";\"main\"\n\"3180190\";\"Casalgrasso\";\"main\"\n\"3180190\";\"Casalgrass\";\"other\"\n\"3180191\";\"Casalgrande\";\"main\"\n\"3180192\";\"Casalfiumanese\";\"main\"\n\"3180192\";\"Casal Fiumanese\";\"ascii\"\n\"3180192\";\"Casale Fiumanese\";\"other\"\n\"3180194\";\"Casaletto Spartano\";\"main\"\n\"3180194\";\"Casaletto\";\"other\"\n\"3180195\";\"Casaletto Ceredano\";\"main\"\n\"3180197\";\"Casale sul Sile\";\"main\"\n\"3180205\";\"Casaleone\";\"main\"\n\"3180208\";\"Casale Monferrato\";\"main\"\n\"3180208\";\"Casal\";\"other\"\n\"3180208\";\"Casale\";\"other\"\n\"3180209\";\"Casale Marittimo\";\"main\"\n\"3180215\";\"Casale di Scodosia\";\"main\"\n\"3180221\";\"Casale Corte Cerro\";\"main\"\n\"3180224\";\"Casalecchio di Reno\";\"main\"\n\"3180224\";\"Casalacc'\";\"other\"\n\"3180224\";\"Casalàcc’\";\"other\"\n\"3180239\";\"Casalduni\";\"main\"\n\"3180240\";\"Casal di Principe\";\"main\"\n\"3180242\";\"Casalbuttano ed Uniti\";\"main\"\n\"3180242\";\"Casalbuttano\";\"ascii\"\n\"3180243\";\"Casalbuono\";\"main\"\n\"3180245\";\"Casalborgone\";\"main\"\n\"3180245\";\"Casalborgon\";\"other\"\n\"3180245\";\"kazaruborugone\";\"other\"\n\"3180245\";\"カザルボルゴーネ\";\"other\"\n\"3180246\";\"Casalbore\";\"main\"\n\"3180247\";\"Casalbordino\";\"main\"\n\"3180254\";\"Casalanguida\";\"main\"\n\"3180332\";\"Casacanditella\";\"main\"\n\"3180336\";\"Casacalenda\";\"main\"\n\"3180381\";\"Carvico\";\"main\"\n\"3180389\";\"Carugate\";\"main\"\n\"3180389\";\"karugate\";\"other\"\n\"3180389\";\"カルガーテ\";\"other\"\n\"3180393\";\"Cartoceto\";\"main\"\n\"3180400\";\"Carsoli\";\"main\"\n\"3180405\";\"Carrù\";\"main\"\n\"3180405\";\"Carru\";\"ascii\"\n\"3180405\";\"Caru\";\"other\"\n\"3180405\";\"Carù\";\"other\"\n\"3180423\";\"Carrara\";\"main\"\n\"3180423\";\"Apuania\";\"other\"\n\"3180423\";\"Carara\";\"other\"\n\"3180423\";\"Carrare\";\"other\"\n\"3180423\";\"Karrara\";\"other\"\n\"3180423\";\"karrara\";\"other\"\n\"3180423\";\"Каррара\";\"other\"\n\"3180423\";\"カッラーラ\";\"other\"\n\"3180426\";\"Carpinone\";\"main\"\n\"3180428\";\"Carpino\";\"main\"\n\"3180431\";\"Carpineto Romano\";\"main\"\n\"3180431\";\"カルピネート・ロマーノ\";\"other\"\n\"3180433\";\"Carpineti\";\"main\"\n\"3180441\";\"Carpignano Sesia\";\"main\"\n\"3180441\";\"Carpignano\";\"other\"\n\"3180442\";\"Carpignano Salentino\";\"main\"\n\"3180444\";\"Carpiano\";\"main\"\n\"3180444\";\"karupiano\";\"other\"\n\"3180444\";\"カルピアーノ\";\"other\"\n\"3180445\";\"Carpi\";\"main\"\n\"3180445\";\"Cherp\";\"other\"\n\"3180445\";\"Chèrp\";\"other\"\n\"3180445\";\"Karpi\";\"other\"\n\"3180445\";\"karupi\";\"other\"\n\"3180445\";\"Карпи\";\"other\"\n\"3180445\";\"カルピ\";\"other\"\n\"3180450\";\"Carpenedolo\";\"main\"\n\"3180450\";\"karupenedoro\";\"other\"\n\"3180450\";\"カルペネードロ\";\"other\"\n\"3180455\";\"Carpegna\";\"main\"\n\"3180457\";\"Carpaneto Piacentino\";\"main\"\n\"3180457\";\"Carpaneto\";\"other\"\n\"3180461\";\"Carovilli\";\"main\"\n\"3180462\";\"Carovigno\";\"main\"\n\"3180462\";\"Carvignu\";\"other\"\n\"3180462\";\"karovu~inyo\";\"other\"\n\"3180462\";\"カロヴィーニョ\";\"other\"\n\"3180466\";\"Carosino\";\"main\"\n\"3180483\";\"Carnate\";\"main\"\n\"3180483\";\"Carnaa\";\"other\"\n\"3180483\";\"karunate\";\"other\"\n\"3180483\";\"カルナーテ\";\"other\"\n\"3180488\";\"Carnago\";\"main\"\n\"3180491\";\"Carmignano di Brenta\";\"main\"\n\"3180494\";\"Carmignano\";\"main\"\n\"3180494\";\"karuminyano\";\"other\"\n\"3180494\";\"カルミニャーノ\";\"other\"\n\"3180495\";\"Carmiano\";\"main\"\n\"3180495\";\"Carmianu\";\"other\"\n\"3180496\";\"Carmagnola\";\"main\"\n\"3180496\";\"Carmagnole\";\"other\"\n\"3180496\";\"Carmagnòla\";\"other\"\n\"3180496\";\"Karman'ola\";\"other\"\n\"3180496\";\"karumanyora\";\"other\"\n\"3180496\";\"Карманьола\";\"other\"\n\"3180496\";\"カルマニョーラ\";\"other\"\n\"3180498\";\"Carlino\";\"main\"\n\"3180498\";\"Cjarlins\";\"other\"\n\"3180500\";\"Carlazzo\";\"main\"\n\"3180501\";\"Carlantino\";\"main\"\n\"3180507\";\"Carinola\";\"main\"\n\"3180510\";\"Carimate\";\"main\"\n\"3180511\";\"Carignano\";\"main\"\n\"3180511\";\"Carignan\";\"other\"\n\"3180511\";\"karinyano\";\"other\"\n\"3180511\";\"カリニャーノ\";\"other\"\n\"3180517\";\"Carife\";\"main\"\n\"3180526\";\"Caresana\";\"main\"\n\"3180529\";\"Carenno\";\"main\"\n\"3180541\";\"Cardito\";\"main\"\n\"3180541\";\"karudito\";\"other\"\n\"3180541\";\"カルディート\";\"other\"\n\"3180554\";\"Carceri\";\"main\"\n\"3180557\";\"Carcare\";\"main\"\n\"3180557\";\"Cancre\";\"other\"\n\"3180563\";\"Carbonera\";\"main\"\n\"3180570\";\"Carbonara di Po\";\"main\"\n\"3180570\";\"Carbonara\";\"other\"\n\"3180572\";\"Carbonara al Ticino\";\"main\"\n\"3180576\";\"Carbognano\";\"main\"\n\"3180578\";\"Caravino\";\"main\"\n\"3180578\";\"Caravin\";\"other\"\n\"3180578\";\"karavu~ino\";\"other\"\n\"3180578\";\"カラヴィーノ\";\"other\"\n\"3180579\";\"Caravate\";\"main\"\n\"3180580\";\"Caravaggio\";\"main\"\n\"3180580\";\"Careas\";\"other\"\n\"3180580\";\"Careàs\";\"other\"\n\"3180580\";\"Carraca\";\"other\"\n\"3180580\";\"Karavago\";\"other\"\n\"3180580\";\"Karavaĝo\";\"other\"\n\"3180580\";\"karavu~ajjo\";\"other\"\n\"3180580\";\"カラヴァッジョ\";\"other\"\n\"3180581\";\"Carate Brianza\";\"main\"\n\"3180581\";\"Carate\";\"other\"\n\"3180581\";\"カラーテ・ブリアンツァ\";\"other\"\n\"3180582\";\"Carassai\";\"main\"\n\"3180583\";\"Carasco\";\"main\"\n\"3180588\";\"Carapelle\";\"main\"\n\"3180593\";\"Caramanico Terme\";\"main\"\n\"3180593\";\"Caramanico\";\"other\"\n\"3180597\";\"Caraglio\";\"main\"\n\"3180597\";\"Caraj\";\"other\"\n\"3180600\";\"Capurso\";\"main\"\n\"3180601\";\"Capua\";\"main\"\n\"3180601\";\"Capoue\";\"other\"\n\"3180601\";\"Càpua\";\"other\"\n\"3180601\";\"Cápua\";\"other\"\n\"3180601\";\"kapua\";\"other\"\n\"3180601\";\"קפואה\";\"other\"\n\"3180601\";\"კაპუა\";\"other\"\n\"3180601\";\"カプア\";\"other\"\n\"3180608\";\"Capriolo\";\"main\"\n\"3180608\";\"kapurioro\";\"other\"\n\"3180608\";\"カプリオーロ\";\"other\"\n\"3180611\";\"Caprino Veronese\";\"main\"\n\"3180612\";\"Caprino Bergamasco\";\"main\"\n\"3180612\";\"Caprino\";\"other\"\n\"3180620\";\"Capriglia Irpina\";\"main\"\n\"3180620\";\"Capriglia\";\"ascii\"\n\"3180621\";\"Caprie\";\"main\"\n\"3180621\";\"Chiavrie\";\"other\"\n\"3180621\";\"Ciavrie\";\"other\"\n\"3180621\";\"kapurie\";\"other\"\n\"3180621\";\"カプリエ\";\"other\"\n\"3180624\";\"Capriati a Volturno\";\"main\"\n\"3180624\";\"Capriati al Volturno\";\"ascii\"\n\"3180625\";\"Capriate San Gervasio\";\"main\"\n\"3180630\";\"Capri\";\"main\"\n\"3180630\";\"Isla de Capri\";\"other\"\n\"3180630\";\"Kapri\";\"other\"\n\"3180630\";\"ka pu li dao\";\"other\"\n\"3180630\";\"kapuri dao\";\"other\"\n\"3180630\";\"Капри\";\"other\"\n\"3180630\";\"קאפרי\";\"other\"\n\"3180630\";\"カプリ島\";\"other\"\n\"3180630\";\"卡普里岛\";\"other\"\n\"3180632\";\"Caprese Michelangelo\";\"main\"\n\"3180632\";\"Caprese\";\"other\"\n\"3180632\";\"カプレーゼ・ミケランジェロ\";\"other\"\n\"3180635\";\"Caprarola\";\"main\"\n\"3180635\";\"kapurarora\";\"other\"\n\"3180635\";\"カプラローラ\";\"other\"\n\"3180637\";\"Caprarica di Lecce\";\"main\"\n\"3180637\";\"Caprarica\";\"other\"\n\"3180637\";\"Kraparaka\";\"other\"\n\"3180644\";\"Capranica\";\"main\"\n\"3180644\";\"kapuranika\";\"other\"\n\"3180644\";\"カプラーニカ\";\"other\"\n\"3180645\";\"Capralba\";\"main\"\n\"3180652\";\"Capracotta\";\"main\"\n\"3180659\";\"Cappelle sul Tavo\";\"main\"\n\"3180662\";\"Cappella Maggiore\";\"main\"\n\"3180670\";\"Caposele\";\"main\"\n\"3180670\";\"Caposel\";\"other\"\n\"3180670\";\"Caposels\";\"other\"\n\"3180676\";\"Capoliveri\";\"main\"\n\"3180676\";\"kaporivu~eri\";\"other\"\n\"3180676\";\"カポリーヴェリ\";\"other\"\n\"3180682\";\"Capodrise\";\"main\"\n\"3180688\";\"Capo di Ponte\";\"main\"\n\"3180688\";\"カーポ・ディ・ポンテ\";\"other\"\n\"3180689\";\"Capodimonte\";\"main\"\n\"3180702\";\"Capizzone\";\"main\"\n\"3180712\";\"Capistrello\";\"main\"\n\"3180722\";\"Capergnanica\";\"main\"\n\"3180722\";\"Capergnanica di Sotto\";\"ascii\"\n\"3180722\";\"Capernanica di Sotto\";\"other\"\n\"3180725\";\"Capena\";\"main\"\n\"3180725\";\"kapena\";\"other\"\n\"3180725\";\"カペーナ\";\"other\"\n\"3180733\";\"Capannori\";\"main\"\n\"3180733\";\"Kapannori\";\"other\"\n\"3180733\";\"Капаннори\";\"other\"\n\"3180734\";\"Capannoli\";\"main\"\n\"3180734\";\"Capannoli Val d'Era\";\"other\"\n\"3180743\";\"Capalbio\";\"main\"\n\"3180746\";\"Capaccio\";\"main\"\n\"3180746\";\"Capaccio-Paestum\";\"other\"\n\"3180748\";\"Caorso\";\"main\"\n\"3180749\";\"Caorle\";\"main\"\n\"3180749\";\"Caprulae\";\"other\"\n\"3180749\";\"Cjaurlis\";\"other\"\n\"3180749\";\"kaorure\";\"other\"\n\"3180749\";\"カオルレ\";\"other\"\n\"3180754\";\"Canzo\";\"main\"\n\"3180754\";\"Cantius\";\"other\"\n\"3180754\";\"Canz\";\"other\"\n\"3180755\";\"Canzano\";\"main\"\n\"3180758\";\"Cantù\";\"main\"\n\"3180758\";\"Cantu\";\"ascii\"\n\"3180768\";\"Cantiano\";\"main\"\n\"3180775\";\"Cantalupo in Sabina\";\"main\"\n\"3180775\";\"Cantalupo\";\"other\"\n\"3180775\";\"Cantalupo Sabino\";\"other\"\n\"3180779\";\"Cantalice\";\"main\"\n\"3180781\";\"Cantagallo\";\"main\"\n\"3180781\";\"kantagarro\";\"other\"\n\"3180781\";\"カンタガッロ\";\"other\"\n\"3180789\";\"Olgiate Molgora\";\"main\"\n\"3180789\";\"Canova\";\"ascii\"\n\"3180789\";\"Olgiate Calco\";\"other\"\n\"3180790\";\"Canossa\";\"main\"\n\"3180791\";\"Canosa Sannita\";\"main\"\n\"3180792\";\"Canosa di Puglia\";\"main\"\n\"3180792\";\"Canosa de Pulla\";\"other\"\n\"3180801\";\"Cannole\";\"main\"\n\"3180801\";\"Kannula\";\"other\"\n\"3180805\";\"Canneto sull'Oglio\";\"main\"\n\"3180805\";\"Canneto\";\"other\"\n\"3180806\";\"Canneto Pavese\";\"main\"\n\"3180813\";\"Cannero Riviera\";\"main\"\n\"3180813\";\"Cannero\";\"other\"\n\"3180826\";\"Cannara\";\"main\"\n\"3180827\";\"Cannalonga\";\"main\"\n\"3180833\";\"Canistro\";\"main\"\n\"3180838\";\"Canino\";\"main\"\n\"3180844\";\"Caneva\";\"main\"\n\"3180844\";\"Caneva di Sacile\";\"other\"\n\"3180844\";\"Cjanive\";\"other\"\n\"3180849\";\"Canepina\";\"main\"\n\"3180850\";\"Canelli\";\"main\"\n\"3180850\";\"Canej\";\"other\"\n\"3180852\";\"Canegrate\";\"main\"\n\"3180852\";\"kanegurate\";\"other\"\n\"3180852\";\"カネグラーテ\";\"other\"\n\"3180861\";\"Candiolo\";\"main\"\n\"3180861\";\"Candieul\";\"other\"\n\"3180861\";\"kandioro\";\"other\"\n\"3180861\";\"カンディオーロ\";\"other\"\n\"3180864\";\"Comelico Superiore\";\"main\"\n\"3180864\";\"Candide\";\"ascii\"\n\"3180865\";\"Candida\";\"main\"\n\"3180866\";\"Candiana\";\"main\"\n\"3180867\";\"Candia Lomellina\";\"main\"\n\"3180867\";\"Candia\";\"other\"\n\"3180868\";\"Candia Canavese\";\"main\"\n\"3180868\";\"Candia\";\"other\"\n\"3180868\";\"カンディア・カナヴェーゼ\";\"other\"\n\"3180871\";\"Candelo\";\"main\"\n\"3180874\";\"Candela\";\"main\"\n\"3180874\";\"Kandela\";\"other\"\n\"3180874\";\"kan de la\";\"other\"\n\"3180874\";\"kandella\";\"other\"\n\"3180874\";\"kandera\";\"other\"\n\"3180874\";\"kandla\";\"other\"\n\"3180874\";\"qndlh\";\"other\"\n\"3180874\";\"Кандела\";\"other\"\n\"3180874\";\"קנדלה\";\"other\"\n\"3180874\";\"کاندلا\";\"other\"\n\"3180874\";\"カンデラ\";\"other\"\n\"3180874\";\"坎德拉\";\"other\"\n\"3180874\";\"칸델라\";\"other\"\n\"3180878\";\"Cancello\";\"main\"\n\"3180878\";\"Cancello e Arnone\";\"other\"\n\"3180878\";\"Cancello ed Arnone\";\"other\"\n\"3180881\";\"Cancellara\";\"main\"\n\"3180883\";\"Canazei\";\"main\"\n\"3180883\";\"Canazei di Fassa\";\"other\"\n\"3180883\";\"Cianacei\";\"other\"\n\"3180883\";\"kanatsu~ei\";\"other\"\n\"3180883\";\"カナツェーイ\";\"other\"\n\"3180886\";\"Canaro\";\"main\"\n\"3180892\";\"Canal San Bovo\";\"main\"\n\"3180894\";\"Canale Monterano\";\"main\"\n\"3180894\";\"カナーレ・モンテラーノ\";\"other\"\n\"3180895\";\"Canale d'Agordo\";\"main\"\n\"3180895\";\"Forno di Canale\";\"other\"\n\"3180898\";\"Canale\";\"main\"\n\"3180898\";\"Canal\";\"other\"\n\"3180901\";\"Camugnano\";\"main\"\n\"3180908\";\"Campo Tures - Sand in Taufers\";\"main\"\n\"3180908\";\"Campo Tures\";\"ascii\"\n\"3180908\";\"Sand in Taufers\";\"other\"\n\"3180908\";\"Taufers\";\"other\"\n\"3180908\";\"カンポ・トゥーレス\";\"other\"\n\"3180916\";\"Camposanto\";\"main\"\n\"3180918\";\"Camposano\";\"main\"\n\"3180918\";\"kanpozano\";\"other\"\n\"3180918\";\"カンポザーノ\";\"other\"\n\"3180919\";\"Campo San Martino\";\"main\"\n\"3180920\";\"Camposampiero\";\"main\"\n\"3180920\";\"Campo San Piero\";\"other\"\n\"3180927\";\"Camporosso\";\"main\"\n\"3180929\";\"Camporgiano\";\"main\"\n\"3180937\";\"Camponogara\";\"main\"\n\"3180937\";\"kanponogara\";\"other\"\n\"3180937\";\"カンポノガーラ\";\"other\"\n\"3180940\";\"Campomorone\";\"main\"\n\"3180940\";\"Campomon\";\"other\"\n\"3180945\";\"Campomarino\";\"main\"\n\"3180945\";\"Kemarini\";\"other\"\n\"3180951\";\"Campolongo Maggiore\";\"main\"\n\"3180951\";\"カンポロンゴ・マッジョーレ\";\"other\"\n\"3180957\";\"Campo Ligure\";\"main\"\n\"3180957\";\"Campo\";\"other\"\n\"3180958\";\"Campolieto\";\"main\"\n\"3180959\";\"Campoli del Monte Taburno\";\"main\"\n\"3180960\";\"Campoli Appennino\";\"main\"\n\"3180964\";\"Campolattaro\";\"main\"\n\"3180970\";\"Campogalliano\";\"main\"\n\"3180970\";\"kanpogarriano\";\"other\"\n\"3180970\";\"カンポガッリアーノ\";\"other\"\n\"3180971\";\"Campoformido\";\"main\"\n\"3180971\";\"Campoformio\";\"other\"\n\"3180971\";\"Campofórmio\";\"other\"\n\"3180971\";\"Cjampfuarmit\";\"other\"\n\"3180971\";\"kanpoforumido\";\"other\"\n\"3180971\";\"カンポフォルミド\";\"other\"\n\"3180972\";\"Campofilone\";\"main\"\n\"3180973\";\"Campodoro\";\"main\"\n\"3180975\";\"Campodolcino\";\"main\"\n\"3180976\";\"Campo di Trens - Freienfeld\";\"main\"\n\"3180976\";\"Campo di Trens\";\"ascii\"\n\"3180976\";\"Freienfeld\";\"other\"\n\"3180976\";\"カンポ・ディ・トレンス\";\"other\"\n\"3180977\";\"Campodipietra\";\"main\"\n\"3180982\";\"Campodenno\";\"main\"\n\"3180982\";\"kanpoden'no\";\"other\"\n\"3180982\";\"カンポデンノ\";\"other\"\n\"3180983\";\"Campodarsego\";\"main\"\n\"3180991\";\"Campobasso\";\"main\"\n\"3180991\";\"Campobass\";\"other\"\n\"3180991\";\"Campubbassu\";\"other\"\n\"3180991\";\"Campus Bassus\";\"other\"\n\"3180991\";\"Kampobasso\";\"other\"\n\"3180991\";\"kanpobasso\";\"other\"\n\"3180991\";\"Кампобассо\";\"other\"\n\"3180991\";\"カンポバッソ\";\"other\"\n\"3181001\";\"Campli\";\"main\"\n\"3181005\";\"Campi Salentina\";\"main\"\n\"3181006\";\"Campione d'Italia\";\"main\"\n\"3181006\";\"Campione\";\"other\"\n\"3181006\";\"Campione d’Italia\";\"other\"\n\"3181006\";\"Italiae Campilionum\";\"other\"\n\"3181006\";\"カンピョーネ・ディターリア\";\"other\"\n\"3181012\";\"Campiglia Marittima\";\"main\"\n\"3181012\";\"Campiglia\";\"other\"\n\"3181012\";\"カンピーリア・マリッティマ\";\"other\"\n\"3181014\";\"Campiglia dei Berici\";\"main\"\n\"3181018\";\"Campi Bisenzio\";\"main\"\n\"3181018\";\"Campo Bisenzio\";\"other\"\n\"3181018\";\"Campo Bisénzio\";\"other\"\n\"3181018\";\"カンピ・ビゼンツィオ\";\"other\"\n\"3181031\";\"Campello sul Clitunno\";\"main\"\n\"3181031\";\"Campello\";\"other\"\n\"3181034\";\"Campegine\";\"main\"\n\"3181040\";\"Camparada\";\"main\"\n\"3181040\";\"kanparada\";\"other\"\n\"3181040\";\"カンパラーダ\";\"other\"\n\"3181056\";\"Campagnola Emilia\";\"main\"\n\"3181060\";\"Campagnatico\";\"main\"\n\"3181060\";\"Campagnacito\";\"other\"\n\"3181061\";\"Campagnano di Roma\";\"main\"\n\"3181061\";\"カンパニャーノ・ディ・ローマ\";\"other\"\n\"3181062\";\"Campagna Lupia\";\"main\"\n\"3181062\";\"カンパーニャ・ルーピア\";\"other\"\n\"3181066\";\"Campagna\";\"main\"\n\"3181066\";\"kanpanya\";\"other\"\n\"3181066\";\"カンパーニャ\";\"other\"\n\"3181071\";\"Camogli\";\"main\"\n\"3181071\";\"Camoggi\";\"other\"\n\"3181071\";\"Kamoli\";\"other\"\n\"3181071\";\"Камоли\";\"other\"\n\"3181075\";\"Camisano Vicentino\";\"main\"\n\"3181075\";\"Camisano\";\"other\"\n\"3181076\";\"Camisano\";\"main\"\n\"3181086\";\"Camigliano\";\"main\"\n\"3181086\";\"Cammigliano\";\"other\"\n\"3181091\";\"Camerota\";\"main\"\n\"3181094\";\"Camerino\";\"main\"\n\"3181094\";\"kamerino\";\"other\"\n\"3181094\";\"カメリーノ\";\"other\"\n\"3181096\";\"Cameri\";\"main\"\n\"3181098\";\"Camerata Picena\";\"main\"\n\"3181098\";\"カメラータ・ピチェーナ\";\"other\"\n\"3181102\";\"Camerano\";\"main\"\n\"3181102\";\"kamerano\";\"other\"\n\"3181102\";\"カメラーノ\";\"other\"\n\"3181108\";\"Camburzano\";\"main\"\n\"3181111\";\"Cambiano\";\"main\"\n\"3181111\";\"Cambiagn\";\"other\"\n\"3181111\";\"kanbiano\";\"other\"\n\"3181111\";\"カンビアーノ\";\"other\"\n\"3181112\";\"Cambiago\";\"main\"\n\"3181112\";\"kanbiago\";\"other\"\n\"3181112\";\"カンビアーゴ\";\"other\"\n\"3181125\";\"Camaiore\";\"main\"\n\"3181125\";\"Kamajore\";\"other\"\n\"3181125\";\"Камайоре\";\"other\"\n\"3181140\";\"Calvizzano\";\"main\"\n\"3181140\";\"karuvu~ittsu~ano\";\"other\"\n\"3181140\";\"カルヴィッツァーノ\";\"other\"\n\"3181142\";\"Calvisano\";\"main\"\n\"3181142\";\"Calvisii Forum\";\"other\"\n\"3181142\";\"karuvu~izano\";\"other\"\n\"3181142\";\"カルヴィザーノ\";\"other\"\n\"3181146\";\"Calvi dell'Umbria\";\"main\"\n\"3181146\";\"Calvi dell' Umbria\";\"ascii\"\n\"3181150\";\"Calvenzano\";\"main\"\n\"3181151\";\"Calvene\";\"main\"\n\"3181155\";\"Calvello\";\"main\"\n\"3181156\";\"Calvatone\";\"main\"\n\"3181156\";\"Betriacum\";\"other\"\n\"3181160\";\"Calvanico\";\"main\"\n\"3181164\";\"Caluso\";\"main\"\n\"3181164\";\"karuzo\";\"other\"\n\"3181164\";\"カルーゾ\";\"other\"\n\"3181165\";\"Calusco d'Adda\";\"main\"\n\"3181165\";\"Kalusko d'Ada\";\"other\"\n\"3181165\";\"Калуско д'Ада\";\"other\"\n\"3181166\";\"Caltrano\";\"main\"\n\"3181168\";\"Caltignaga\";\"main\"\n\"3181168\";\"karutinyaga\";\"other\"\n\"3181168\";\"カルティニャーガ\";\"other\"\n\"3181176\";\"Calolziocorte\";\"main\"\n\"3181176\";\"Calolzio\";\"other\"\n\"3181176\";\"Corte\";\"other\"\n\"3181176\";\"Kalolciokorte\";\"other\"\n\"3181181\";\"Calliano\";\"main\"\n\"3181181\";\"karriano\";\"other\"\n\"3181181\";\"カッリアーノ\";\"other\"\n\"3181182\";\"Calliano\";\"main\"\n\"3181182\";\"Calian\";\"other\"\n\"3181182\";\"karriano\";\"other\"\n\"3181182\";\"カッリアーノ\";\"other\"\n\"3181186\";\"Calizzano\";\"main\"\n\"3181186\";\"Carizan\";\"other\"\n\"3181187\";\"Calitri\";\"main\"\n\"3181189\";\"Calimera\";\"main\"\n\"3181189\";\"Kalimera\";\"other\"\n\"3181193\";\"Calice al Cornoviglio\";\"main\"\n\"3181193\";\"Calice\";\"other\"\n\"3181193\";\"Calice Cornoviglio\";\"other\"\n\"3181197\";\"Calestano\";\"main\"\n\"3181199\";\"Calenzano\";\"main\"\n\"3181201\";\"Calendasco\";\"main\"\n\"3181207\";\"Caldonazzo\";\"main\"\n\"3181207\";\"karudonattsu~o\";\"other\"\n\"3181207\";\"カルドナッツォ\";\"other\"\n\"3181209\";\"Caldogno\";\"main\"\n\"3181209\";\"Kaldon'o\";\"other\"\n\"3181209\";\"karudonyo\";\"other\"\n\"3181209\";\"Калдоньо\";\"other\"\n\"3181209\";\"カルドーニョ\";\"other\"\n\"3181211\";\"Caldes\";\"main\"\n\"3181211\";\"karudesu\";\"other\"\n\"3181211\";\"カルデス\";\"other\"\n\"3181212\";\"Calderara di Reno\";\"main\"\n\"3181213\";\"Caldarola\";\"main\"\n\"3181215\";\"Caldaro sulla strada del vino - Kaltern an der Weinstrasse\";\"main\"\n\"3181215\";\"Caldaro\";\"ascii\"\n\"3181215\";\"Kaltern\";\"other\"\n\"3181220\";\"Calcio\";\"main\"\n\"3181220\";\"karucho\";\"other\"\n\"3181220\";\"カルチョ\";\"other\"\n\"3181223\";\"Calcinato\";\"main\"\n\"3181223\";\"karuchinato\";\"other\"\n\"3181223\";\"カルチナート\";\"other\"\n\"3181224\";\"Calcinate\";\"main\"\n\"3181224\";\"karuchinate\";\"other\"\n\"3181224\";\"カルチナーテ\";\"other\"\n\"3181227\";\"Calcinaia\";\"main\"\n\"3181227\";\"Calcinaja\";\"other\"\n\"3181229\";\"Calci\";\"main\"\n\"3181236\";\"Calavino\";\"main\"\n\"3181236\";\"karavu~ino\";\"other\"\n\"3181236\";\"カラヴィーノ\";\"other\"\n\"3181240\";\"Calangianus\";\"main\"\n\"3181247\";\"Calamandrana\";\"main\"\n\"3181247\";\"Calamandran-a\";\"other\"\n\"3181248\";\"Calalzo di Cadore\";\"main\"\n\"3181248\";\"Calalzo\";\"ascii\"\n\"3181255\";\"Calabritto\";\"main\"\n\"3181258\";\"Caivano\";\"main\"\n\"3181258\";\"Kajvano\";\"other\"\n\"3181258\";\"kaivu~ano\";\"other\"\n\"3181258\";\"Кайвано\";\"other\"\n\"3181258\";\"カイヴァーノ\";\"other\"\n\"3181259\";\"Cairo Montenotte\";\"main\"\n\"3181259\";\"Cairi\";\"other\"\n\"3181259\";\"カイロ・モンテノッテ\";\"other\"\n\"3181263\";\"Cairate\";\"main\"\n\"3181267\";\"Caiazzo\";\"main\"\n\"3181267\";\"Caiatia\";\"other\"\n\"3181269\";\"Caianello\";\"main\"\n\"3181274\";\"Cagnano Varano\";\"main\"\n\"3181274\";\"Gagnano Varano\";\"other\"\n\"3181277\";\"Cagli\";\"main\"\n\"3181277\";\"kari\";\"other\"\n\"3181277\";\"カーリ\";\"other\"\n\"3181278\";\"Caggiano\";\"main\"\n\"3181284\";\"Caerano di San Marco\";\"main\"\n\"3181288\";\"Cadoneghe\";\"main\"\n\"3181305\";\"Cadeo\";\"main\"\n\"3181311\";\"Cadelbosco di Sopra\";\"main\"\n\"3181311\";\"Cadelbosco\";\"other\"\n\"3181345\";\"Buttrio\";\"main\"\n\"3181345\";\"Buri\";\"other\"\n\"3181347\";\"Buttigliera Alta\";\"main\"\n\"3181347\";\"Butiera\";\"other\"\n\"3181347\";\"ブッティリエーラ・アルタ\";\"other\"\n\"3181348\";\"Buttapietra\";\"main\"\n\"3181351\";\"Buti\";\"main\"\n\"3181354\";\"Busto Garolfo\";\"main\"\n\"3181354\";\"ブスト・ガロルフォ\";\"other\"\n\"3181355\";\"Busto Arsizio\";\"main\"\n\"3181355\";\"Ansizio\";\"other\"\n\"3181355\";\"Bustum Arsitium\";\"other\"\n\"3181355\";\"bu si tuo-a xi qi ao\";\"other\"\n\"3181355\";\"布斯托-阿西齊奧\";\"other\"\n\"3181358\";\"Bussoleno\";\"main\"\n\"3181358\";\"Bussolin\";\"other\"\n\"3181358\";\"bussoreno\";\"other\"\n\"3181358\";\"ブッソレーノ\";\"other\"\n\"3181359\";\"Bussolengo\";\"main\"\n\"3181360\";\"Busso\";\"main\"\n\"3181361\";\"Bussi sul Tirino\";\"main\"\n\"3181364\";\"Busseto\";\"main\"\n\"3181364\";\"busseto\";\"other\"\n\"3181364\";\"ブッセート\";\"other\"\n\"3181379\";\"Buscate\";\"main\"\n\"3181379\";\"busukate\";\"other\"\n\"3181379\";\"ブスカーテ\";\"other\"\n\"3181380\";\"Busca\";\"main\"\n\"3181381\";\"Busano\";\"main\"\n\"3181381\";\"Busan\";\"other\"\n\"3181381\";\"buzano\";\"other\"\n\"3181381\";\"ブザーノ\";\"other\"\n\"3181382\";\"Busana\";\"main\"\n\"3181383\";\"Busalla\";\"main\"\n\"3181384\";\"Busachi\";\"main\"\n\"3181389\";\"Burolo\";\"main\"\n\"3181389\";\"Bureul\";\"other\"\n\"3181389\";\"buroro\";\"other\"\n\"3181389\";\"ブローロ\";\"other\"\n\"3181392\";\"Buriasco\";\"main\"\n\"3181392\";\"Buriasch\";\"other\"\n\"3181392\";\"buriasuko\";\"other\"\n\"3181392\";\"ブリアスコ\";\"other\"\n\"3181398\";\"Burgos\";\"main\"\n\"3181402\";\"Burano\";\"main\"\n\"3181407\";\"Buonconvento\";\"main\"\n\"3181407\";\"buonkon'vu~ento\";\"other\"\n\"3181407\";\"ブオンコンヴェント\";\"other\"\n\"3181410\";\"Buonalbergo\";\"main\"\n\"3181411\";\"Buonabitacolo\";\"main\"\n\"3181415\";\"Bultei\";\"main\"\n\"3181428\";\"Buglio in Monte\";\"main\"\n\"3181428\";\"Buglio\";\"other\"\n\"3181443\";\"Budrio\";\"main\"\n\"3181446\";\"Budoia\";\"main\"\n\"3181446\";\"Budoio\";\"other\"\n\"3181446\";\"Buduee\";\"other\"\n\"3181446\";\"Budòio\";\"other\"\n\"3181451\";\"Buddusò\";\"main\"\n\"3181451\";\"Budduso\";\"ascii\"\n\"3181456\";\"Bucine\";\"main\"\n\"3181458\";\"Buccino\";\"main\"\n\"3181460\";\"Bucciano\";\"main\"\n\"3181461\";\"Bucchianico\";\"main\"\n\"3181461\";\"Rucchianico\";\"other\"\n\"3181461\";\"Rucchiánico\";\"other\"\n\"3181468\";\"Brusnengo\";\"main\"\n\"3181471\";\"Brusciano\";\"main\"\n\"3181471\";\"burushano\";\"other\"\n\"3181471\";\"ブルシャーノ\";\"other\"\n\"3181472\";\"Brusasco\";\"main\"\n\"3181472\";\"Brusasco-Cavagnolo\";\"other\"\n\"3181472\";\"Cavagneul\";\"other\"\n\"3181472\";\"Cavagnolo\";\"other\"\n\"3181472\";\"kavu~anyoro\";\"other\"\n\"3181472\";\"カヴァニョーロ\";\"other\"\n\"3181480\";\"Brunico - Bruneck\";\"main\"\n\"3181480\";\"Brunico\";\"ascii\"\n\"3181480\";\"Brunech\";\"other\"\n\"3181480\";\"Bruneck\";\"other\"\n\"3181480\";\"Bruneck-Brunico\";\"other\"\n\"3181480\";\"Brunopolis\";\"other\"\n\"3181480\";\"buruniko\";\"other\"\n\"3181480\";\"ブルーニコ\";\"other\"\n\"3181484\";\"Brunate\";\"main\"\n\"3181484\";\"Брунате\";\"other\"\n\"3181488\";\"Bruino\";\"main\"\n\"3181488\";\"Bruin\";\"other\"\n\"3181488\";\"buruino\";\"other\"\n\"3181488\";\"ブルイーノ\";\"other\"\n\"3181492\";\"Brugnera\";\"main\"\n\"3181492\";\"Brugnere\";\"other\"\n\"3181493\";\"Brugnato\";\"main\"\n\"3181493\";\"Brigne\";\"other\"\n\"3181493\";\"Brignê\";\"other\"\n\"3181494\";\"Brugine\";\"main\"\n\"3181495\";\"Brugherio\";\"main\"\n\"3181495\";\"Brugerio\";\"other\"\n\"3181495\";\"burugerio\";\"other\"\n\"3181495\";\"Бругерио\";\"other\"\n\"3181495\";\"ブルゲーリオ\";\"other\"\n\"3181503\";\"Brossasco\";\"main\"\n\"3181504\";\"Bronzolo - Branzoll\";\"main\"\n\"3181504\";\"Bronzolo\";\"ascii\"\n\"3181504\";\"Branzoll\";\"other\"\n\"3181504\";\"burontsu~oro\";\"other\"\n\"3181504\";\"ブロンツォーロ\";\"other\"\n\"3181507\";\"Broni\";\"main\"\n\"3181507\";\"Comiliomagus\";\"other\"\n\"3181516\";\"Brivio\";\"main\"\n\"3181520\";\"Brissago-Valtravaglia\";\"main\"\n\"3181520\";\"Brissago Valtravaglia\";\"ascii\"\n\"3181521\";\"Brisighella\";\"main\"\n\"3181521\";\"bryzyglh\";\"other\"\n\"3181521\";\"burijigerra\";\"other\"\n\"3181521\";\"בריזיגלה\";\"other\"\n\"3181521\";\"ブリジゲッラ\";\"other\"\n\"3181528\";\"Brindisi\";\"main\"\n\"3181528\";\"Brindizi\";\"other\"\n\"3181528\";\"Brinnese\";\"other\"\n\"3181528\";\"Brundisium\";\"other\"\n\"3181528\";\"Brìndisi\";\"other\"\n\"3181528\";\"brindisi\";\"other\"\n\"3181528\";\"burindiji\";\"other\"\n\"3181528\";\"Бриндизи\";\"other\"\n\"3181528\";\"ब्रिंडिसि\";\"other\"\n\"3181528\";\"ブリンディジ\";\"other\"\n\"3181532\";\"Brignano Gera d'Adda\";\"main\"\n\"3181535\";\"Briga Novarese\";\"main\"\n\"3181539\";\"Bricherasio\";\"main\"\n\"3181539\";\"Bricheras\";\"other\"\n\"3181539\";\"burikerajio\";\"other\"\n\"3181539\";\"ブリケラージオ\";\"other\"\n\"3181548\";\"Bresso\";\"main\"\n\"3181548\";\"buresso\";\"other\"\n\"3181548\";\"Брессо\";\"other\"\n\"3181548\";\"ブレッソ\";\"other\"\n\"3181549\";\"Bressanvido\";\"main\"\n\"3181550\";\"Bressanone - Brixen\";\"main\"\n\"3181550\";\"Bressanone\";\"ascii\"\n\"3181550\";\"Brixen\";\"other\"\n\"3181550\";\"Brixino\";\"other\"\n\"3181550\";\"buressanone\";\"other\"\n\"3181550\";\"Брессаноне\";\"other\"\n\"3181550\";\"ブレッサノーネ\";\"other\"\n\"3181551\";\"Bressana Bottarone\";\"main\"\n\"3181551\";\"Bressana\";\"other\"\n\"3181554\";\"Brescia\";\"main\"\n\"3181554\";\"Bresha\";\"other\"\n\"3181554\";\"Breshija\";\"other\"\n\"3181554\";\"Bresia\";\"other\"\n\"3181554\";\"Bressia\";\"other\"\n\"3181554\";\"Brixia\";\"other\"\n\"3181554\";\"Bréscia\";\"other\"\n\"3181554\";\"bryshya\";\"other\"\n\"3181554\";\"bu lei xi ya\";\"other\"\n\"3181554\";\"bureshia\";\"other\"\n\"3181554\";\"Бреша\";\"other\"\n\"3181554\";\"Брешия\";\"other\"\n\"3181554\";\"بريشيا\";\"other\"\n\"3181554\";\"ブレシア\";\"other\"\n\"3181554\";\"布雷西亚\";\"other\"\n\"3181555\";\"Brescello\";\"main\"\n\"3181559\";\"Brentonico\";\"main\"\n\"3181559\";\"burentoniko\";\"other\"\n\"3181559\";\"ブレントーニコ\";\"other\"\n\"3181569\";\"Breno\";\"main\"\n\"3181569\";\"bureno\";\"other\"\n\"3181569\";\"ブレーノ\";\"other\"\n\"3181570\";\"Brennero\";\"main\"\n\"3181570\";\"Brenner\";\"other\"\n\"3181570\";\"buren'nero\";\"other\"\n\"3181570\";\"ブレンネロ\";\"other\"\n\"3181571\";\"Brenna\";\"main\"\n\"3181572\";\"Brendola\";\"main\"\n\"3181575\";\"Brembio\";\"main\"\n\"3181575\";\"burenbio\";\"other\"\n\"3181575\";\"ブレンビオ\";\"other\"\n\"3181576\";\"Brembilla\";\"main\"\n\"3181577\";\"Brembate\";\"main\"\n\"3181583\";\"Breganze\";\"main\"\n\"3181586\";\"Breda di Piave\";\"main\"\n\"3181591\";\"Brebbia\";\"main\"\n\"3181605\";\"Brandizzo\";\"main\"\n\"3181605\";\"Brandiss\";\"other\"\n\"3181605\";\"burandittsu~o\";\"other\"\n\"3181605\";\"ブランディッツォ\";\"other\"\n\"3181622\";\"Bracigliano\";\"main\"\n\"3181628\";\"Bracciano\";\"main\"\n\"3181628\";\"Brachchano\";\"other\"\n\"3181628\";\"buratchano\";\"other\"\n\"3181628\";\"Браччано\";\"other\"\n\"3181628\";\"ブラッチャーノ\";\"other\"\n\"3181631\";\"Bra\";\"main\"\n\"3181631\";\"bura\";\"other\"\n\"3181631\";\"Бра\";\"other\"\n\"3181631\";\"ブラ\";\"other\"\n\"3181633\";\"Bozzolo\";\"main\"\n\"3181637\";\"Bovolone\";\"main\"\n\"3181639\";\"Bovolenta\";\"main\"\n\"3181641\";\"Bovisio-Masciago\";\"main\"\n\"3181641\";\"Bovisio Masciago\";\"ascii\"\n\"3181641\";\"Bovisio\";\"other\"\n\"3181641\";\"Bovisio-Masciago Milanese\";\"other\"\n\"3181641\";\"Bovísio-Masciago Milanese\";\"other\"\n\"3181641\";\"bovu~ijio=mashago\";\"other\"\n\"3181641\";\"ボヴィージオ＝マシャーゴ\";\"other\"\n\"3181644\";\"Bovino\";\"main\"\n\"3181646\";\"Boville Ernica\";\"main\"\n\"3181647\";\"Bovezzo\";\"main\"\n\"3181647\";\"bovu~ettsu~o\";\"other\"\n\"3181647\";\"ボヴェッツォ\";\"other\"\n\"3181648\";\"Boves\";\"main\"\n\"3181648\";\"Bueves\";\"other\"\n\"3181648\";\"Buèves\";\"other\"\n\"3181649\";\"Bovegno\";\"main\"\n\"3181649\";\"bovu~enyo\";\"other\"\n\"3181649\";\"ボーヴェニョ\";\"other\"\n\"3181662\";\"Botticino\";\"main\"\n\"3181662\";\"Botticino Sera\";\"ascii\"\n\"3181662\";\"bottichino\";\"other\"\n\"3181662\";\"ボッティチーノ\";\"other\"\n\"3181668\";\"Bottanuco\";\"main\"\n\"3181670\";\"Botrugno\";\"main\"\n\"3181670\";\"Butrugnu\";\"other\"\n\"3181677\";\"Bosisio Parini\";\"main\"\n\"3181680\";\"Boscotrecase\";\"main\"\n\"3181680\";\"bosukotorekaze\";\"other\"\n\"3181680\";\"ボスコトレカーゼ\";\"other\"\n\"3181683\";\"Boscoreale\";\"main\"\n\"3181683\";\"Boskoreale\";\"other\"\n\"3181683\";\"bosukoreare\";\"other\"\n\"3181683\";\"Боскореале\";\"other\"\n\"3181683\";\"ボスコレアーレ\";\"other\"\n\"3181684\";\"Bosconero\";\"main\"\n\"3181684\";\"Boschneir\";\"other\"\n\"3181684\";\"Boschnèir\";\"other\"\n\"3181684\";\"bosukonero\";\"other\"\n\"3181684\";\"ボスコネーロ\";\"other\"\n\"3181685\";\"Bosco Marengo\";\"main\"\n\"3181685\";\"Bosch Marengh\";\"other\"\n\"3181685\";\"Bòsch Marengh\";\"other\"\n\"3181685\";\"ボスコ・マレンゴ\";\"other\"\n\"3181689\";\"Bosco Chiesanuova\";\"main\"\n\"3181704\";\"Bosaro\";\"main\"\n\"3181706\";\"Bosa\";\"main\"\n\"3181707\";\"Borzonasca\";\"main\"\n\"3181707\";\"Borsonasca\";\"other\"\n\"3181712\";\"Bortigali\";\"main\"\n\"3181715\";\"Borso del Grappa\";\"main\"\n\"3181715\";\"Borso\";\"other\"\n\"3181725\";\"Borore\";\"main\"\n\"3181727\";\"Borno\";\"main\"\n\"3181727\";\"boruno\";\"other\"\n\"3181727\";\"ボルノ\";\"other\"\n\"3181729\";\"Bornasco\";\"main\"\n\"3181730\";\"Bormio\";\"main\"\n\"3181730\";\"Aquae Bormiae\";\"other\"\n\"3181730\";\"Бормио\";\"other\"\n\"3181744\";\"Borgo Vercelli\";\"main\"\n\"3181746\";\"Borgo Val di Taro\";\"main\"\n\"3181746\";\"Borgotaro\";\"other\"\n\"3181747\";\"Borgo Tossignano\";\"main\"\n\"3181747\";\"Borgo di Tossignano\";\"other\"\n\"3181748\";\"Borgo Ticino\";\"main\"\n\"3181749\";\"Borgosesia\";\"main\"\n\"3181750\";\"Borgosatollo\";\"main\"\n\"3181750\";\"borugosatorro\";\"other\"\n\"3181750\";\"ボルゴサトッロ\";\"other\"\n\"3181753\";\"Borgo San Martino\";\"main\"\n\"3181754\";\"Borgo San Lorenzo\";\"main\"\n\"3181755\";\"Borgo San Giacomo\";\"main\"\n\"3181755\";\"ボルゴ・サン・ジャーコモ\";\"other\"\n\"3181757\";\"Borgo San Dalmazzo\";\"main\"\n\"3181760\";\"Borgorose\";\"main\"\n\"3181760\";\"Borgocollefegato\";\"other\"\n\"3181762\";\"Borgoricco\";\"main\"\n\"3181766\";\"Borgo Priolo\";\"main\"\n\"3181779\";\"Borgonovo Val Tidone\";\"main\"\n\"3181782\";\"Borgone Susa\";\"main\"\n\"3181782\";\"Borgon\";\"other\"\n\"3181782\";\"ボルゴーネ・スーザ\";\"other\"\n\"3181790\";\"Borgomanero\";\"main\"\n\"3181794\";\"Borgolavezzaro\";\"main\"\n\"3181794\";\"Borgo Lavezzaro\";\"ascii\"\n\"3181799\";\"Borgofranco d'Ivrea\";\"main\"\n\"3181799\";\"Borghfranch\";\"other\"\n\"3181799\";\"Borgofranco\";\"other\"\n\"3181799\";\"ボルゴフランコ・ディヴレーア\";\"other\"\n\"3181802\";\"Borgoforte\";\"main\"\n\"3181809\";\"Borgo d'Ale\";\"main\"\n\"3181815\";\"Borgo a Mozzano\";\"main\"\n\"3181819\";\"Buggiano\";\"main\"\n\"3181819\";\"Borgo a Buggiano\";\"ascii\"\n\"3181822\";\"Borgo Valsugana\";\"main\"\n\"3181822\";\"Borgo\";\"ascii\"\n\"3181822\";\"ボルゴ・ヴァルスガーナ\";\"other\"\n\"3181830\";\"Borghi\";\"main\"\n\"3181830\";\"borugi\";\"other\"\n\"3181830\";\"ボルギ\";\"other\"\n\"3181832\";\"Borghetto Santo Spirito\";\"main\"\n\"3181835\";\"Borghetto Lodigiano\";\"main\"\n\"3181835\";\"ボルゲット・ロディジャーノ\";\"other\"\n\"3181836\";\"Borghetto di Vara\";\"main\"\n\"3181850\";\"Borgaro Torinese\";\"main\"\n\"3181850\";\"Borghi\";\"other\"\n\"3181850\";\"ボルガロ・トリネーゼ\";\"other\"\n\"3181854\";\"Boretto\";\"main\"\n\"3181864\";\"Bordighera\";\"main\"\n\"3181875\";\"Bonorva\";\"main\"\n\"3181879\";\"Bono\";\"main\"\n\"3181880\";\"Bonnanaro\";\"main\"\n\"3181882\";\"Bonito\";\"main\"\n\"3181888\";\"Bonefro\";\"main\"\n\"3181889\";\"Bonea\";\"main\"\n\"3181891\";\"Bondeno\";\"main\"\n\"3181894\";\"Bonavigo\";\"main\"\n\"3181894\";\"bonavu~igo\";\"other\"\n\"3181894\";\"ボナヴィーゴ\";\"other\"\n\"3181896\";\"Bonate Sopra\";\"main\"\n\"3181896\";\"Bonate di Sopra\";\"ascii\"\n\"3181899\";\"Bonarcado\";\"main\"\n\"3181899\";\"Bonàrcado\";\"other\"\n\"3181903\";\"Bomporto\";\"main\"\n\"3181909\";\"Bomarzo\";\"main\"\n\"3181909\";\"Polymartium\";\"other\"\n\"3181910\";\"Bolzano Vicentino\";\"main\"\n\"3181911\";\"Bolzano Novarese\";\"main\"\n\"3181913\";\"Bolzano - Bozen\";\"main\"\n\"3181913\";\"Bolzano\";\"ascii\"\n\"3181913\";\"Bal'cana\";\"other\"\n\"3181913\";\"Bauzanum\";\"other\"\n\"3181913\";\"Bocen\";\"other\"\n\"3181913\";\"Bocenas\";\"other\"\n\"3181913\";\"Boceno\";\"other\"\n\"3181913\";\"Bol'cano\";\"other\"\n\"3181913\";\"Bolcano\";\"other\"\n\"3181913\";\"Bolcāno\";\"other\"\n\"3181913\";\"Bolzan\";\"other\"\n\"3181913\";\"Bolzanu\";\"other\"\n\"3181913\";\"Bolzán\";\"other\"\n\"3181913\";\"Botzen\";\"other\"\n\"3181913\";\"Bozen\";\"other\"\n\"3181913\";\"Bozen-Bolzano\";\"other\"\n\"3181913\";\"Bozn\";\"other\"\n\"3181913\";\"Bulsaun\";\"other\"\n\"3181913\";\"Buzzanu\";\"other\"\n\"3181913\";\"Mpoltzano\";\"other\"\n\"3181913\";\"bo er cha nuo\";\"other\"\n\"3181913\";\"borutsu~ano\";\"other\"\n\"3181913\";\"bwlznw\";\"other\"\n\"3181913\";\"Μπολτζάνο\";\"other\"\n\"3181913\";\"Бальцана\";\"other\"\n\"3181913\";\"Болцано\";\"other\"\n\"3181913\";\"Больцано\";\"other\"\n\"3181913\";\"Боцен\";\"other\"\n\"3181913\";\"בולצנו\";\"other\"\n\"3181913\";\"ボルツァーノ\";\"other\"\n\"3181913\";\"波尔查诺\";\"other\"\n\"3181917\";\"Bolsena\";\"main\"\n\"3181917\";\"Bolsena jaerv\";\"other\"\n\"3181917\";\"Bolsena järv\";\"other\"\n\"3181917\";\"Bolsenameer\";\"other\"\n\"3181917\";\"Bolsenas ezers\";\"other\"\n\"3181917\";\"Bolsenasjoen\";\"other\"\n\"3181917\";\"Bolsenasjön\";\"other\"\n\"3181917\";\"Bolsēnas ezers\";\"other\"\n\"3181917\";\"Lac de Bolsena\";\"other\"\n\"3181917\";\"Lacus Volsiniensis\";\"other\"\n\"3181917\";\"Lago Bolsena\";\"other\"\n\"3181917\";\"Lago de Bolsena\";\"other\"\n\"3181917\";\"Lago di Bolsena\";\"other\"\n\"3181917\";\"Lagu di Bolsena\";\"other\"\n\"3181917\";\"Lake Bolsena\";\"other\"\n\"3181917\";\"Mar fan Bolsena\";\"other\"\n\"3181917\";\"Ozero Bol'sena\";\"other\"\n\"3181917\";\"Tasik Bolsena\";\"other\"\n\"3181917\";\"bo sai na hu\";\"other\"\n\"3181917\";\"borusena hu\";\"other\"\n\"3181917\";\"Озеро Больсена\";\"other\"\n\"3181917\";\"אגם בולסנה\";\"other\"\n\"3181917\";\"ボルセーナ湖\";\"other\"\n\"3181917\";\"博赛纳湖\";\"other\"\n\"3181918\";\"Bolotana\";\"main\"\n\"3181924\";\"Bolognano\";\"main\"\n\"3181928\";\"Bologna\";\"main\"\n\"3181928\";\"Baljon'ja\";\"other\"\n\"3181928\";\"Bologne\";\"other\"\n\"3181928\";\"Bolon'ja\";\"other\"\n\"3181928\";\"Bolona\";\"other\"\n\"3181928\";\"Bolonha\";\"other\"\n\"3181928\";\"Bolonia\";\"other\"\n\"3181928\";\"Bolonija\";\"other\"\n\"3181928\";\"Bolonja\";\"other\"\n\"3181928\";\"Bolonjo\";\"other\"\n\"3181928\";\"Bolonya\";\"other\"\n\"3181928\";\"Boloņa\";\"other\"\n\"3181928\";\"Boloňa\";\"other\"\n\"3181928\";\"Bononia\";\"other\"\n\"3181928\";\"Bulaggna\";\"other\"\n\"3181928\";\"Bulogna\";\"other\"\n\"3181928\";\"Bulåggna\";\"other\"\n\"3181928\";\"bo luo ni ya\";\"other\"\n\"3181928\";\"bollonya\";\"other\"\n\"3181928\";\"boronya\";\"other\"\n\"3181928\";\"bwlwnya\";\"other\"\n\"3181928\";\"bwlwnyh\";\"other\"\n\"3181928\";\"Балёнья\";\"other\"\n\"3181928\";\"Болонья\";\"other\"\n\"3181928\";\"Болоня\";\"other\"\n\"3181928\";\"Болоња\";\"other\"\n\"3181928\";\"בולוניה\";\"other\"\n\"3181928\";\"بولونيا\";\"other\"\n\"3181928\";\"ボローニャ\";\"other\"\n\"3181928\";\"博洛尼亚\";\"other\"\n\"3181928\";\"볼로냐\";\"other\"\n\"3181930\";\"Bollengo\";\"main\"\n\"3181930\";\"Bolengh\";\"other\"\n\"3181930\";\"borrengo\";\"other\"\n\"3181930\";\"ボッレンゴ\";\"other\"\n\"3181931\";\"Bollate\";\"main\"\n\"3181931\";\"borrate\";\"other\"\n\"3181931\";\"ボッラーテ\";\"other\"\n\"3181934\";\"Bolano\";\"main\"\n\"3181934\";\"Bolan\";\"other\"\n\"3181939\";\"Bojano\";\"main\"\n\"3181939\";\"Boiano\";\"ascii\"\n\"3181939\";\"boviani\";\"other\"\n\"3181939\";\"ბოვიანი\";\"other\"\n\"3181943\";\"Bogliasco\";\"main\"\n\"3181943\";\"Boggiasco\";\"other\"\n\"3181943\";\"Bogliasco Pieve\";\"other\"\n\"3181945\";\"Boffalora sopra Ticino\";\"main\"\n\"3181945\";\"Boffalora\";\"other\"\n\"3181945\";\"Boffalora Ticino\";\"other\"\n\"3181945\";\"ボッファローラ・ソプラ・ティチーノ\";\"other\"\n\"3181946\";\"Boffalora d'Adda\";\"main\"\n\"3181946\";\"ボッファローラ・ダッダ\";\"other\"\n\"3181970\";\"Bobbio\";\"main\"\n\"3181983\";\"Blera\";\"main\"\n\"3181983\";\"Biede\";\"other\"\n\"3181983\";\"Блера\";\"other\"\n\"3181992\";\"Bitti\";\"main\"\n\"3181994\";\"Bitritto\";\"main\"\n\"3181994\";\"bitoritto\";\"other\"\n\"3181994\";\"ビトリット\";\"other\"\n\"3181995\";\"Bitonto\";\"main\"\n\"3181995\";\"bitonto\";\"other\"\n\"3181995\";\"ビトント\";\"other\"\n\"3181996\";\"Bitetto\";\"main\"\n\"3181996\";\"bitetto\";\"other\"\n\"3181996\";\"ビテット\";\"other\"\n\"3181997\";\"Bistagno\";\"main\"\n\"3181997\";\"Bistagn\";\"other\"\n\"3182003\";\"Bisenti\";\"main\"\n\"3182007\";\"Bisceglie\";\"main\"\n\"3182007\";\"Bishell'e\";\"other\"\n\"3182007\";\"bisherie\";\"other\"\n\"3182007\";\"Бишеллье\";\"other\"\n\"3182007\";\"ビシェーリエ\";\"other\"\n\"3182012\";\"Bisaccia\";\"main\"\n\"3182012\";\"Nuova Bisaccia\";\"other\"\n\"3182012\";\"Nuova Bisáccia\";\"other\"\n\"3182022\";\"Bioglio\";\"main\"\n\"3182027\";\"Binasco\";\"main\"\n\"3182027\";\"binasuko\";\"other\"\n\"3182027\";\"ビナスコ\";\"other\"\n\"3182040\";\"Bientina\";\"main\"\n\"3182041\";\"Bienno\";\"main\"\n\"3182041\";\"bien'no\";\"other\"\n\"3182041\";\"ビエンノ\";\"other\"\n\"3182043\";\"Biella\";\"main\"\n\"3182043\";\"B'ella\";\"other\"\n\"3182043\";\"Bugella\";\"other\"\n\"3182043\";\"bierra\";\"other\"\n\"3182043\";\"Бьелла\";\"other\"\n\"3182043\";\"ビエッラ\";\"other\"\n\"3182054\";\"Bicinicco\";\"main\"\n\"3182054\";\"Bicinicco di Sotto\";\"other\"\n\"3182054\";\"Bicinins\";\"other\"\n\"3182056\";\"Biccari\";\"main\"\n\"3182057\";\"Bibione\";\"main\"\n\"3182057\";\"Бибионе\";\"other\"\n\"3182058\";\"Bibbona\";\"main\"\n\"3182058\";\"bibbona\";\"other\"\n\"3182058\";\"ビッボーナ\";\"other\"\n\"3182059\";\"Bibbiena\";\"main\"\n\"3182060\";\"Bibbiano\";\"main\"\n\"3182066\";\"Biassono\";\"main\"\n\"3182066\";\"biassono\";\"other\"\n\"3182066\";\"ビアッソーノ\";\"other\"\n\"3182067\";\"Bianzone\";\"main\"\n\"3182068\";\"Bianzè\";\"main\"\n\"3182068\";\"Bianze\";\"ascii\"\n\"3182068\";\"Bianse\";\"other\"\n\"3182068\";\"Biansé\";\"other\"\n\"3182068\";\"biantsu~e\";\"other\"\n\"3182068\";\"ビアンツェ\";\"other\"\n\"3182069\";\"Biandronno\";\"main\"\n\"3182070\";\"Biandrate\";\"main\"\n\"3182087\";\"Bevilacqua\";\"main\"\n\"3182087\";\"bevu~irakkua\";\"other\"\n\"3182087\";\"ベヴィラックア\";\"other\"\n\"3182096\";\"Bevagna\";\"main\"\n\"3182098\";\"Beura-Cardezza\";\"main\"\n\"3182098\";\"Beura\";\"ascii\"\n\"3182098\";\"Beura Cardezza\";\"other\"\n\"3182098\";\"Béura Cardezza\";\"other\"\n\"3182099\";\"Bettona\";\"main\"\n\"3182104\";\"Bettola\";\"main\"\n\"3182111\";\"Besozzo\";\"main\"\n\"3182111\";\"Besozzo Inferiore\";\"other\"\n\"3182111\";\"Besozzo Superiore\";\"other\"\n\"3182112\";\"Besnate\";\"main\"\n\"3182114\";\"Besenello\";\"main\"\n\"3182114\";\"bezenerro\";\"other\"\n\"3182114\";\"ベゼネッロ\";\"other\"\n\"3182115\";\"Besate\";\"main\"\n\"3182115\";\"bezate\";\"other\"\n\"3182115\";\"ベザーテ\";\"other\"\n\"3182116\";\"Besano\";\"main\"\n\"3182116\";\"bezano\";\"other\"\n\"3182116\";\"ベザーノ\";\"other\"\n\"3182119\";\"Besana in Brianza\";\"main\"\n\"3182119\";\"Besana\";\"other\"\n\"3182119\";\"Besana Brianza\";\"other\"\n\"3182119\";\"Besàna\";\"other\"\n\"3182119\";\"ベザーナ・イン・ブリアンツァ\";\"other\"\n\"3182120\";\"Berzo Inferiore\";\"main\"\n\"3182120\";\"Bezzo Inferiore\";\"other\"\n\"3182120\";\"ベルツォ・インフェリオーレ\";\"other\"\n\"3182122\";\"Berzo Demo\";\"main\"\n\"3182122\";\"Berzo\";\"ascii\"\n\"3182122\";\"ベルツォ・デーモ\";\"other\"\n\"3182128\";\"Bertonico\";\"main\"\n\"3182128\";\"berutoniko\";\"other\"\n\"3182128\";\"ベルトーニコ\";\"other\"\n\"3182132\";\"Bertiolo\";\"main\"\n\"3182132\";\"Bertiul\";\"other\"\n\"3182133\";\"Bertinoro\";\"main\"\n\"3182133\";\"Bartnora\";\"other\"\n\"3182133\";\"Bartnòra\";\"other\"\n\"3182133\";\"berutinoro\";\"other\"\n\"3182133\";\"ベルティノーロ\";\"other\"\n\"3182146\";\"Berra\";\"main\"\n\"3182146\";\"berra\";\"other\"\n\"3182146\";\"ベッラ\";\"other\"\n\"3182149\";\"Bernate Ticino\";\"main\"\n\"3182149\";\"ベルナーテ・ティチーノ\";\"other\"\n\"3182153\";\"Bernalda\";\"main\"\n\"3182154\";\"Berlingo\";\"main\"\n\"3182154\";\"beruringo\";\"other\"\n\"3182154\";\"ベルリンゴ\";\"other\"\n\"3182161\";\"Bergeggi\";\"main\"\n\"3182162\";\"Bergantino\";\"main\"\n\"3182164\";\"Bergamo\";\"main\"\n\"3182164\";\"Bergam\";\"other\"\n\"3182164\";\"Bergame\";\"other\"\n\"3182164\";\"Berghem\";\"other\"\n\"3182164\";\"Bergomum\";\"other\"\n\"3182164\";\"Bèrgam\";\"other\"\n\"3182164\";\"Bèrghem\";\"other\"\n\"3182164\";\"Bérgamo\";\"other\"\n\"3182164\";\"Bérghem\";\"other\"\n\"3182164\";\"bei er jia mo\";\"other\"\n\"3182164\";\"bergamo\";\"other\"\n\"3182164\";\"berugamo\";\"other\"\n\"3182164\";\"byrghamw\";\"other\"\n\"3182164\";\"Бергамо\";\"other\"\n\"3182164\";\"بيرغامو\";\"other\"\n\"3182164\";\"बेर्गमो\";\"other\"\n\"3182164\";\"ベルガモ\";\"other\"\n\"3182164\";\"贝尔加莫\";\"other\"\n\"3182167\";\"Bereguardo\";\"main\"\n\"3182170\";\"Berchidda\";\"main\"\n\"3182172\";\"Berceto\";\"main\"\n\"3182173\";\"Berbenno di Valtellina\";\"main\"\n\"3182173\";\"Berbenno\";\"other\"\n\"3182173\";\"Berbenno Valtellina\";\"other\"\n\"3182176\";\"Bentivoglio\";\"main\"\n\"3182177\";\"Benna\";\"main\"\n\"3182177\";\"ben'na\";\"other\"\n\"3182177\";\"ベンナ\";\"other\"\n\"3182179\";\"Benevento\";\"main\"\n\"3182179\";\"Benevent\";\"other\"\n\"3182179\";\"Beneventum\";\"other\"\n\"3182179\";\"Beneviento\";\"other\"\n\"3182179\";\"Benewent\";\"other\"\n\"3182179\";\"Bénévent\";\"other\"\n\"3182179\";\"benevu~ento\";\"other\"\n\"3182179\";\"Беневенто\";\"other\"\n\"3182179\";\"ბენევენტო\";\"other\"\n\"3182179\";\"ベネヴェント\";\"other\"\n\"3182181\";\"Bene Vagienna\";\"main\"\n\"3182183\";\"Benetutti\";\"main\"\n\"3182186\";\"Belvedere Ostrense\";\"main\"\n\"3182186\";\"ベルヴェデーレ・オストレンセ\";\"other\"\n\"3182210\";\"Belluno\";\"main\"\n\"3182210\";\"Bellune\";\"other\"\n\"3182210\";\"Bellunum\";\"other\"\n\"3182210\";\"Belun\";\"other\"\n\"3182210\";\"berruno\";\"other\"\n\"3182210\";\"Беллуно\";\"other\"\n\"3182210\";\"ベッルーノ\";\"other\"\n\"3182212\";\"Bellosguardo\";\"main\"\n\"3182213\";\"Bellona\";\"main\"\n\"3182219\";\"Bellizzi Irpino\";\"main\"\n\"3182221\";\"Bellinzago Novarese\";\"main\"\n\"3182221\";\"Bellinzago\";\"other\"\n\"3182224\";\"Bellegra\";\"main\"\n\"3182224\";\"berregura\";\"other\"\n\"3182224\";\"ベッレグラ\";\"other\"\n\"3182226\";\"Bellante\";\"main\"\n\"3182227\";\"Bellano\";\"main\"\n\"3182230\";\"Bellagio\";\"main\"\n\"3182230\";\"Beladzho\";\"other\"\n\"3182230\";\"Bilacus\";\"other\"\n\"3182230\";\"Беладжо\";\"other\"\n\"3182232\";\"Bella\";\"main\"\n\"3182232\";\"berra\";\"other\"\n\"3182232\";\"ベッラ\";\"other\"\n\"3182237\";\"Belgioioso\";\"main\"\n\"3182238\";\"Belforte del Chienti\";\"main\"\n\"3182238\";\"Belforte\";\"other\"\n\"3182238\";\"Belforte sul Chienti\";\"other\"\n\"3182242\";\"Belfiore\";\"main\"\n\"3182242\";\"berufiore\";\"other\"\n\"3182242\";\"ベルフィオーレ\";\"other\"\n\"3182244\";\"Beinette\";\"main\"\n\"3182244\";\"beinette\";\"other\"\n\"3182244\";\"ベイネッテ\";\"other\"\n\"3182245\";\"Beinasco\";\"main\"\n\"3182245\";\"Beinasch\";\"other\"\n\"3182245\";\"beinasuko\";\"other\"\n\"3182245\";\"ベイナスコ\";\"other\"\n\"3182249\";\"Bedonia\";\"main\"\n\"3182250\";\"Bedollo\";\"main\"\n\"3182250\";\"bedorro\";\"other\"\n\"3182250\";\"ベドッロ\";\"other\"\n\"3182260\";\"Bazzano\";\"main\"\n\"3182262\";\"Baveno\";\"main\"\n\"3182265\";\"Baunei\";\"main\"\n\"3182272\";\"Battipaglia\";\"main\"\n\"3182278\";\"Battaglia Terme\";\"main\"\n\"3182278\";\"Battaglia\";\"other\"\n\"3182286\";\"Bastiglia\";\"main\"\n\"3182286\";\"basutiria\";\"other\"\n\"3182286\";\"バスティリア\";\"other\"\n\"3182289\";\"Bastia Umbra\";\"main\"\n\"3182289\";\"Bastia\";\"ascii\"\n\"3182292\";\"Bassignana\";\"main\"\n\"3182293\";\"Bassiano\";\"main\"\n\"3182293\";\"basshiano\";\"other\"\n\"3182293\";\"バッシアーノ\";\"other\"\n\"3182295\";\"Bassano Romano\";\"main\"\n\"3182295\";\"Bassano di Sutri\";\"other\"\n\"3182295\";\"バッサーノ・ロマーノ\";\"other\"\n\"3182296\";\"Bassano in Teverina\";\"main\"\n\"3182297\";\"Bassano del Grappa\";\"main\"\n\"3182297\";\"Bassano\";\"other\"\n\"3182298\";\"Bassano Bresciano\";\"main\"\n\"3182298\";\"バッサーノ・ブレシャーノ\";\"other\"\n\"3182308\";\"Basiliano\";\"main\"\n\"3182308\";\"Basilian\";\"other\"\n\"3182311\";\"Baselice\";\"main\"\n\"3182313\";\"Baselga di Pinè\";\"main\"\n\"3182313\";\"Baselga di Pine\";\"ascii\"\n\"3182313\";\"Baselga\";\"other\"\n\"3182313\";\"バゼルガ・ディ・ピネ\";\"other\"\n\"3182316\";\"Basciano\";\"main\"\n\"3182317\";\"Baschi\";\"main\"\n\"3182318\";\"Bascapè\";\"main\"\n\"3182318\";\"Bascape\";\"ascii\"\n\"3182318\";\"Baskape\";\"other\"\n\"3182318\";\"Баскапе\";\"other\"\n\"3182325\";\"Barzanò\";\"main\"\n\"3182325\";\"Barzano\";\"ascii\"\n\"3182327\";\"Barzana\";\"main\"\n\"3182328\";\"Giacciano con Baruchella\";\"main\"\n\"3182328\";\"Baruchella\";\"ascii\"\n\"3182337\";\"Baronissi\";\"main\"\n\"3182340\";\"Barletta\";\"main\"\n\"3182340\";\"baruretta\";\"other\"\n\"3182340\";\"Барлетта\";\"other\"\n\"3182340\";\"バルレッタ\";\"other\"\n\"3182341\";\"Barlassina\";\"main\"\n\"3182341\";\"barurasshina\";\"other\"\n\"3182341\";\"バルラッシーナ\";\"other\"\n\"3182342\";\"Barisciano\";\"main\"\n\"3182343\";\"Barile\";\"main\"\n\"3182343\";\"Barilli\";\"other\"\n\"3182348\";\"Baricella\";\"main\"\n\"3182351\";\"Bari\";\"main\"\n\"3182351\";\"Baris\";\"other\"\n\"3182351\";\"Barium\";\"other\"\n\"3182351\";\"Mpari\";\"other\"\n\"3182351\";\"ba li\";\"other\"\n\"3182351\";\"bari\";\"other\"\n\"3182351\";\"bary\";\"other\"\n\"3182351\";\"Μπάρι\";\"other\"\n\"3182351\";\"Μπαρι\";\"other\"\n\"3182351\";\"Бари\";\"other\"\n\"3182351\";\"בארי\";\"other\"\n\"3182351\";\"باري\";\"other\"\n\"3182351\";\"বারি\";\"other\"\n\"3182351\";\"バーリ\";\"other\"\n\"3182351\";\"巴里\";\"other\"\n\"3182355\";\"Barghe\";\"main\"\n\"3182355\";\"baruge\";\"other\"\n\"3182355\";\"バルゲ\";\"other\"\n\"3182356\";\"Barge\";\"main\"\n\"3182357\";\"Bargagli\";\"main\"\n\"3182357\";\"Bargaggi\";\"other\"\n\"3182358\";\"Barga\";\"main\"\n\"3182361\";\"Bareggio\";\"main\"\n\"3182361\";\"barejjo\";\"other\"\n\"3182361\";\"バレッジョ\";\"other\"\n\"3182362\";\"Bardonecchia\";\"main\"\n\"3182362\";\"Bardoneche\";\"other\"\n\"3182362\";\"Bardonecia\";\"other\"\n\"3182362\";\"Bardonèche\";\"other\"\n\"3182362\";\"barudonekkia\";\"other\"\n\"3182362\";\"バルドネッキア\";\"other\"\n\"3182364\";\"Bardolino\";\"main\"\n\"3182364\";\"barudorino\";\"other\"\n\"3182364\";\"バルドリーノ\";\"other\"\n\"3182366\";\"Bardi\";\"main\"\n\"3182389\";\"Barberino Val d'Elsa\";\"main\"\n\"3182389\";\"Barberino di Val d'Elsa\";\"ascii\"\n\"3182390\";\"Barberino di Mugello\";\"main\"\n\"3182390\";\"Barberino\";\"other\"\n\"3182399\";\"Barbarano Vicentino\";\"main\"\n\"3182399\";\"バルバラーノ・ヴィチェンティーノ\";\"other\"\n\"3182401\";\"Barbara\";\"main\"\n\"3182402\";\"Barbania\";\"main\"\n\"3182402\";\"Barbanià\";\"other\"\n\"3182402\";\"barubania\";\"other\"\n\"3182402\";\"バルバニーア\";\"other\"\n\"3182410\";\"Baranzate\";\"main\"\n\"3182410\";\"baranzate\";\"other\"\n\"3182410\";\"バランザーテ\";\"other\"\n\"3182411\";\"Barano d'Ischia\";\"main\"\n\"3182411\";\"Barano\";\"other\"\n\"3182411\";\"バラーノ・ディスキア\";\"other\"\n\"3182413\";\"Baranello\";\"main\"\n\"3182415\";\"Baragiano\";\"main\"\n\"3182422\";\"Baone\";\"main\"\n\"3182425\";\"Banzi\";\"main\"\n\"3182436\";\"Balzola\";\"main\"\n\"3182440\";\"Balvano\";\"main\"\n\"3182441\";\"Balsorano Vecchio\";\"main\"\n\"3182441\";\"Balsorano\";\"other\"\n\"3182455\";\"Ballabio\";\"main\"\n\"3182455\";\"Ballabio Inferiore\";\"other\"\n\"3182455\";\"Ballabio Superiore\";\"other\"\n\"3182461\";\"Baldissero Torinese\";\"main\"\n\"3182461\";\"Baudse\";\"other\"\n\"3182461\";\"Baudsé\";\"other\"\n\"3182461\";\"バルディッセーロ・トリネーゼ\";\"other\"\n\"3182462\";\"Baldichieri d'Asti\";\"main\"\n\"3182462\";\"Baldichieri\";\"ascii\"\n\"3182462\";\"Baodiche\";\"other\"\n\"3182462\";\"Baodichè\";\"other\"\n\"3182462\";\"Baodiché\";\"other\"\n\"3182466\";\"Balangero\";\"main\"\n\"3182466\";\"Balange\";\"other\"\n\"3182466\";\"Balangé\";\"other\"\n\"3182466\";\"baranjero\";\"other\"\n\"3182466\";\"バランジェーロ\";\"other\"\n\"3182477\";\"Baiso\";\"main\"\n\"3182484\";\"Baiano\";\"main\"\n\"3182487\";\"Baia e Latina\";\"main\"\n\"3182487\";\"Baia\";\"ascii\"\n\"3182490\";\"Bagolino\";\"main\"\n\"3182490\";\"bagorino\";\"other\"\n\"3182490\";\"バゴリーノ\";\"other\"\n\"3182494\";\"Bagnoregio\";\"main\"\n\"3182494\";\"Ban'oredzhio\";\"other\"\n\"3182494\";\"banyorejo\";\"other\"\n\"3182494\";\"Баньореджио\";\"other\"\n\"3182494\";\"バニョレージョ\";\"other\"\n\"3182497\";\"Bagnone\";\"main\"\n\"3182497\";\"banyone\";\"other\"\n\"3182497\";\"バニョーネ\";\"other\"\n\"3182498\";\"Bagnolo San Vito\";\"main\"\n\"3182498\";\"バニョーロ・サン・ヴィート\";\"other\"\n\"3182499\";\"Bagnolo Piemonte\";\"main\"\n\"3182499\";\"Bagnolo\";\"other\"\n\"3182500\";\"Bagnolo Mella\";\"main\"\n\"3182500\";\"バニョーロ・メッラ\";\"other\"\n\"3182501\";\"Bagnolo in Piano\";\"main\"\n\"3182501\";\"Bagnolo\";\"other\"\n\"3182502\";\"Bagnolo del Salento\";\"main\"\n\"3182502\";\"Bagnolo\";\"other\"\n\"3182502\";\"Bagnolo del Salenio\";\"other\"\n\"3182503\";\"Bagnolo Cremasco\";\"main\"\n\"3182512\";\"Bagnoli Irpino\";\"main\"\n\"3182513\";\"Bagnoli di Sopra\";\"main\"\n\"3182513\";\"Bagnoli\";\"other\"\n\"3182518\";\"Bagnoli\";\"main\"\n\"3182518\";\"Ban'oli\";\"other\"\n\"3182518\";\"Баньоли\";\"other\"\n\"3182520\";\"Bagno di Romagna\";\"main\"\n\"3182520\";\"バーニョ・ディ・ロマーニャ\";\"other\"\n\"3182522\";\"Bagno a Ripoli\";\"main\"\n\"3182522\";\"バーニョ・ア・リーポリ\";\"other\"\n\"3182535\";\"Rabbi\";\"main\"\n\"3182535\";\"Bagni di Rabbi\";\"ascii\"\n\"3182535\";\"Acque Acidule di Rabbi\";\"other\"\n\"3182535\";\"Rabbi-Bagni\";\"other\"\n\"3182535\";\"rabbi\";\"other\"\n\"3182535\";\"ラッビ\";\"other\"\n\"3182538\";\"Bagni di Lucca\";\"main\"\n\"3182538\";\"バーニ・ディ・ルッカ\";\"other\"\n\"3182546\";\"Bagnasco\";\"main\"\n\"3182548\";\"Bagnara di Romagna\";\"main\"\n\"3182548\";\"Bagnara 'e Rumagna\";\"other\"\n\"3182548\";\"バニャーラ・ディ・ロマーニャ\";\"other\"\n\"3182552\";\"Bagnacavallo\";\"main\"\n\"3182552\";\"banyakavu~arro\";\"other\"\n\"3182552\";\"バニャカヴァッロ\";\"other\"\n\"3182574\";\"Badia Tedalda\";\"main\"\n\"3182574\";\"Badia Tebalda\";\"other\"\n\"3182576\";\"Badia Polesine\";\"main\"\n\"3182581\";\"Badia Calavena\";\"main\"\n\"3182581\";\"バディーア・カラヴェーナ\";\"other\"\n\"3182585\";\"Badia - Abtei\";\"main\"\n\"3182585\";\"Badia\";\"ascii\"\n\"3182585\";\"Abbatia Ladinorum\";\"other\"\n\"3182585\";\"Abtei\";\"other\"\n\"3182585\";\"Abtei-Badia\";\"other\"\n\"3182585\";\"badia\";\"other\"\n\"3182585\";\"バディーア\";\"other\"\n\"3182589\";\"Badesi\";\"main\"\n\"3182597\";\"Badalucco\";\"main\"\n\"3182597\";\"Baeuco\";\"other\"\n\"3182597\";\"Bäuco\";\"other\"\n\"3182599\";\"Bacoli\";\"main\"\n\"3182599\";\"Bauli\";\"other\"\n\"3182599\";\"bakori\";\"other\"\n\"3182599\";\"バーコリ\";\"other\"\n\"3182607\";\"Azzate\";\"main\"\n\"3182608\";\"Azzano Decimo\";\"main\"\n\"3182608\";\"Azzan\";\"other\"\n\"3182615\";\"Azeglio\";\"main\"\n\"3182615\";\"azerrio\";\"other\"\n\"3182615\";\"アゼッリオ\";\"other\"\n\"3182616\";\"Aymavilles\";\"main\"\n\"3182616\";\"Aymaville\";\"other\"\n\"3182625\";\"Avio\";\"main\"\n\"3182625\";\"avu~io\";\"other\"\n\"3182625\";\"アーヴィオ\";\"other\"\n\"3182632\";\"Avigliano Umbro\";\"main\"\n\"3182632\";\"Avigliano\";\"ascii\"\n\"3182633\";\"Avigliano\";\"main\"\n\"3182633\";\"Avigliano Lucana\";\"other\"\n\"3182634\";\"Avigliana\";\"main\"\n\"3182634\";\"Vian-a\";\"other\"\n\"3182634\";\"avu~iriana\";\"other\"\n\"3182634\";\"アヴィリアーナ\";\"other\"\n\"3182635\";\"Aviano\";\"main\"\n\"3182636\";\"Avezzano\";\"main\"\n\"3182636\";\"Aveccano\";\"other\"\n\"3182636\";\"Авеццано\";\"other\"\n\"3182637\";\"Avetrana\";\"main\"\n\"3182640\";\"Aversa\";\"main\"\n\"3182640\";\"Averza\";\"other\"\n\"3182640\";\"avu~erusa\";\"other\"\n\"3182640\";\"Аверса\";\"other\"\n\"3182640\";\"アヴェルサ\";\"other\"\n\"3182650\";\"Avellino\";\"main\"\n\"3182650\";\"Abellinum\";\"other\"\n\"3182650\";\"avu~errino\";\"other\"\n\"3182650\";\"Авеллино\";\"other\"\n\"3182650\";\"アヴェッリーノ\";\"other\"\n\"3182651\";\"Avella\";\"main\"\n\"3182665\";\"Ausonia\";\"main\"\n\"3182671\";\"Auronzo di Cadore\";\"main\"\n\"3182671\";\"Auronzo\";\"other\"\n\"3182674\";\"Duino-Aurisina\";\"main\"\n\"3182674\";\"Aurisina\";\"ascii\"\n\"3182674\";\"Nabrazina\";\"other\"\n\"3182674\";\"Nabražina\";\"other\"\n\"3182674\";\"Nabresina\";\"other\"\n\"3182674\";\"Nabrezina\";\"other\"\n\"3182674\";\"Nabrežina\";\"other\"\n\"3182674\";\"do~uino=aurijina\";\"other\"\n\"3182674\";\"ドゥイーノ＝アウリジーナ\";\"other\"\n\"3182686\";\"Aulla\";\"main\"\n\"3182686\";\"aurra\";\"other\"\n\"3182686\";\"アウッラ\";\"other\"\n\"3182687\";\"Auletta\";\"main\"\n\"3182689\";\"Auditore\";\"main\"\n\"3182692\";\"Attimis\";\"main\"\n\"3182692\";\"Atimis\";\"other\"\n\"3182692\";\"Datimis\";\"other\"\n\"3182693\";\"Attigliano\";\"main\"\n\"3182696\";\"Atripalda\";\"main\"\n\"3182697\";\"Atri\";\"main\"\n\"3182699\";\"Atina\";\"main\"\n\"3182700\";\"Atessa\";\"main\"\n\"3182702\";\"Atena Lucana\";\"main\"\n\"3182702\";\"Atena\";\"other\"\n\"3182702\";\"Atena Lucano\";\"other\"\n\"3182704\";\"Atella\";\"main\"\n\"3182705\";\"Ateleta\";\"main\"\n\"3182714\";\"Asti\";\"main\"\n\"3182714\";\"Ast\";\"other\"\n\"3182714\";\"Hasta Pompeia\";\"other\"\n\"3182714\";\"asuti\";\"other\"\n\"3182714\";\"Асти\";\"other\"\n\"3182714\";\"アスティ\";\"other\"\n\"3182720\";\"Asso\";\"main\"\n\"3182722\";\"Assisi\";\"main\"\n\"3182722\";\"Asis\";\"other\"\n\"3182722\";\"Asis - Assisi\";\"other\"\n\"3182722\";\"Asisium\";\"other\"\n\"3182722\";\"Asizi\";\"other\"\n\"3182722\";\"Asizo\";\"other\"\n\"3182722\";\"Assis\";\"other\"\n\"3182722\";\"Assise\";\"other\"\n\"3182722\";\"Assizi\";\"other\"\n\"3182722\";\"Asyz\";\"other\"\n\"3182722\";\"Asyż\";\"other\"\n\"3182722\";\"Asís\";\"other\"\n\"3182722\";\"Asís - Assisi\";\"other\"\n\"3182722\";\"asshiji\";\"other\"\n\"3182722\";\"Асизи\";\"other\"\n\"3182722\";\"Ассизи\";\"other\"\n\"3182722\";\"אסיזי\";\"other\"\n\"3182722\";\"アッシジ\";\"other\"\n\"3182732\";\"Asolo\";\"main\"\n\"3182734\";\"Asola\";\"main\"\n\"3182734\";\"Ansula\";\"other\"\n\"3182744\";\"Asiago\";\"main\"\n\"3182744\";\"ajiago\";\"other\"\n\"3182744\";\"アジアーゴ\";\"other\"\n\"3182747\";\"Ascoli Satriano\";\"main\"\n\"3182749\";\"Ascoli Piceno\";\"main\"\n\"3182749\";\"Ascoli\";\"other\"\n\"3182749\";\"Askoli Picheno\";\"other\"\n\"3182749\";\"Askoli-Picheno\";\"other\"\n\"3182749\";\"Асколи Пичено\";\"other\"\n\"3182749\";\"Асколи-Пичено\";\"other\"\n\"3182749\";\"アスコリ・ピチェーノ\";\"other\"\n\"3182750\";\"Asciano\";\"main\"\n\"3182750\";\"ashano\";\"other\"\n\"3182750\";\"アシャーノ\";\"other\"\n\"3182754\";\"Ascea\";\"main\"\n\"3182757\";\"Arzignano\";\"main\"\n\"3182757\";\"Arcin'jano\";\"other\"\n\"3182757\";\"Арциньяно\";\"other\"\n\"3182759\";\"Arzergrande\";\"main\"\n\"3182763\";\"Arzene\";\"main\"\n\"3182763\";\"Darzin\";\"other\"\n\"3182765\";\"Arzano\";\"main\"\n\"3182765\";\"arutsu~ano\";\"other\"\n\"3182765\";\"アルツァーノ\";\"other\"\n\"3182769\";\"Arzachena\";\"main\"\n\"3182769\";\"Santa Maria d'Arsachena\";\"other\"\n\"3182773\";\"Artogne\";\"main\"\n\"3182773\";\"arutonye\";\"other\"\n\"3182773\";\"アルトーニェ\";\"other\"\n\"3182778\";\"Artena\";\"main\"\n\"3182778\";\"arutena\";\"other\"\n\"3182778\";\"アルテーナ\";\"other\"\n\"3182782\";\"Artegna\";\"main\"\n\"3182782\";\"Dartigne\";\"other\"\n\"3182783\";\"Arta Terme\";\"main\"\n\"3182783\";\"Arta\";\"other\"\n\"3182783\";\"Darte\";\"other\"\n\"3182787\";\"Arsoli\";\"main\"\n\"3182787\";\"arusori\";\"other\"\n\"3182787\";\"アルソリ\";\"other\"\n\"3182789\";\"Arsiero\";\"main\"\n\"3182791\";\"Arsiè\";\"main\"\n\"3182791\";\"Arsie\";\"ascii\"\n\"3182793\";\"Arsago Seprio\";\"main\"\n\"3182793\";\"Arsago\";\"other\"\n\"3182798\";\"Arrone\";\"main\"\n\"3182802\";\"Arre\";\"main\"\n\"3182803\";\"Arquata Scrivia\";\"main\"\n\"3182803\";\"Arquata\";\"other\"\n\"3182803\";\"Arquata Serivia\";\"other\"\n\"3182804\";\"Arquata del Tronto\";\"main\"\n\"3182804\";\"アルクアータ・デル・トロント\";\"other\"\n\"3182805\";\"Arquà Petrarca\";\"main\"\n\"3182805\";\"Arqua Petrarca\";\"ascii\"\n\"3182805\";\"Arqua\";\"other\"\n\"3182805\";\"アルクァ・ペトラルカ\";\"other\"\n\"3182807\";\"Arpino\";\"main\"\n\"3182807\";\"ארפינו\";\"other\"\n\"3182810\";\"Arpaia\";\"main\"\n\"3182811\";\"Arosio\";\"main\"\n\"3182812\";\"Arona\";\"main\"\n\"3182812\";\"Арона\";\"other\"\n\"3182817\";\"Cancello ed Arnone\";\"main\"\n\"3182817\";\"Arnone\";\"ascii\"\n\"3182822\";\"Arnesano\";\"main\"\n\"3182822\";\"Arnesanu\";\"other\"\n\"3182826\";\"Arnara\";\"main\"\n\"3182830\";\"Armeno\";\"main\"\n\"3182835\";\"Arluno\";\"main\"\n\"3182835\";\"aruruno\";\"other\"\n\"3182835\";\"アルルーノ\";\"other\"\n\"3182848\";\"Arienzo\";\"main\"\n\"3182848\";\"Arienzo San Felice\";\"other\"\n\"3182850\";\"Arielli\";\"main\"\n\"3182851\";\"Ariccia\";\"main\"\n\"3182851\";\"Aricia\";\"other\"\n\"3182851\";\"aritcha\";\"other\"\n\"3182851\";\"アリッチャ\";\"other\"\n\"3182852\";\"Ariano nel Polesine\";\"main\"\n\"3182852\";\"Ariano Polesine\";\"other\"\n\"3182852\";\"Ariano Polesino\";\"other\"\n\"3182852\";\"Ariano Polésino\";\"other\"\n\"3182854\";\"Ariano Irpino\";\"main\"\n\"3182854\";\"Ariano di Puglia\";\"other\"\n\"3182856\";\"Ari\";\"main\"\n\"3182856\";\"ari\";\"other\"\n\"3182856\";\"アーリ\";\"other\"\n\"3182878\";\"Argenta\";\"main\"\n\"3182878\";\"arujenta\";\"other\"\n\"3182878\";\"Аргента\";\"other\"\n\"3182878\";\"アルジェンタ\";\"other\"\n\"3182879\";\"Argelato\";\"main\"\n\"3182884\";\"Arezzo\";\"main\"\n\"3182884\";\"Arecco\";\"other\"\n\"3182884\";\"Ареццо\";\"other\"\n\"3182886\";\"Arese\";\"main\"\n\"3182886\";\"areze\";\"other\"\n\"3182886\";\"アレーゼ\";\"other\"\n\"3182887\";\"Arenzano\";\"main\"\n\"3182887\";\"Arensen\";\"other\"\n\"3182888\";\"Arena Po\";\"main\"\n\"3182893\";\"Ardesio\";\"main\"\n\"3182896\";\"Ardenno\";\"main\"\n\"3182897\";\"Ardea\";\"main\"\n\"3182897\";\"arudea\";\"other\"\n\"3182897\";\"アルデーア\";\"other\"\n\"3182898\";\"Ardauli\";\"main\"\n\"3182903\";\"Arcugnano\";\"main\"\n\"3182903\";\"arukunyano\";\"other\"\n\"3182903\";\"アルクニャーノ\";\"other\"\n\"3182904\";\"Arcore\";\"main\"\n\"3182904\";\"Arculi\";\"other\"\n\"3182904\";\"arukore\";\"other\"\n\"3182904\";\"アルコレ\";\"other\"\n\"3182906\";\"Arconate\";\"main\"\n\"3182906\";\"arukonate\";\"other\"\n\"3182906\";\"アルコナーテ\";\"other\"\n\"3182907\";\"Arcole\";\"main\"\n\"3182907\";\"arukore\";\"other\"\n\"3182907\";\"アルコレ\";\"other\"\n\"3182908\";\"Arcola\";\"main\"\n\"3182908\";\"Arcoa\";\"other\"\n\"3182908\";\"Arcòa\";\"other\"\n\"3182910\";\"Arco\";\"main\"\n\"3182910\";\"Arko\";\"other\"\n\"3182910\";\"aruko\";\"other\"\n\"3182910\";\"Арко\";\"other\"\n\"3182910\";\"アルコ\";\"other\"\n\"3182912\";\"Arcidosso\";\"main\"\n\"3182915\";\"Archi\";\"main\"\n\"3182916\";\"Arcevia\";\"main\"\n\"3182916\";\"aruchevu~ia\";\"other\"\n\"3182916\";\"アルチェーヴィア\";\"other\"\n\"3182919\";\"Arcene\";\"main\"\n\"3182919\";\"aruchene\";\"other\"\n\"3182919\";\"アルチェネ\";\"other\"\n\"3182921\";\"Arce\";\"main\"\n\"3182921\";\"aruche\";\"other\"\n\"3182921\";\"アルチェ\";\"other\"\n\"3182923\";\"Arcade\";\"main\"\n\"3182924\";\"Arborio\";\"main\"\n\"3182924\";\"Arboro\";\"other\"\n\"3182924\";\"aruborio\";\"other\"\n\"3182924\";\"アルボーリオ\";\"other\"\n\"3182927\";\"Arba\";\"main\"\n\"3182927\";\"Darbe\";\"other\"\n\"3182927\";\"aruba\";\"other\"\n\"3182927\";\"アルバ\";\"other\"\n\"3182935\";\"Aradeo\";\"main\"\n\"3182937\";\"Aquino\";\"main\"\n\"3182939\";\"Aquilonia\";\"main\"\n\"3182943\";\"Aquileia\";\"main\"\n\"3182943\";\"Akwileja\";\"other\"\n\"3182943\";\"Aquilee\";\"other\"\n\"3182943\";\"Aquileja\";\"other\"\n\"3182943\";\"Aquilée\";\"other\"\n\"3182943\";\"Oglej\";\"other\"\n\"3182943\";\"akuireia\";\"other\"\n\"3182943\";\"אקוויליה\";\"other\"\n\"3182943\";\"アクイレイア\";\"other\"\n\"3182951\";\"Aquara\";\"main\"\n\"3182957\";\"Aprilia\";\"main\"\n\"3182957\";\"apuriria\";\"other\"\n\"3182957\";\"アプリーリア\";\"other\"\n\"3182958\";\"Apricena\";\"main\"\n\"3182961\";\"Aprica\";\"main\"\n\"3182961\";\"aprika\";\"other\"\n\"3182961\";\"Априка\";\"other\"\n\"3182962\";\"Appignano del Tronto\";\"main\"\n\"3182962\";\"アッピニャーノ・デル・トロント\";\"other\"\n\"3182963\";\"Appignano\";\"main\"\n\"3182965\";\"Appiano Gentile\";\"main\"\n\"3182965\";\"Appiano\";\"other\"\n\"3182966\";\"Appiano sulla strada del vino - Eppan an der Weinstrasse\";\"main\"\n\"3182966\";\"Appiano\";\"ascii\"\n\"3182966\";\"Sankt Michael\";\"other\"\n\"3182985\";\"Apollosa\";\"main\"\n\"3182988\";\"Apiro\";\"main\"\n\"3182990\";\"Apice\";\"main\"\n\"3182992\";\"Apecchio\";\"main\"\n\"3182997\";\"Aosta\";\"main\"\n\"3182997\";\"Aoste\";\"other\"\n\"3182997\";\"Aouta\";\"other\"\n\"3182997\";\"Aoûta\";\"other\"\n\"3182997\";\"Augusta Praetoria\";\"other\"\n\"3182997\";\"aoseuta\";\"other\"\n\"3182997\";\"aosuta\";\"other\"\n\"3182997\";\"Аоста\";\"other\"\n\"3182997\";\"אאוסטה\";\"other\"\n\"3182997\";\"アオスタ\";\"other\"\n\"3182997\";\"아오스타\";\"other\"\n\"3183002\";\"Anzola dell'Emilia\";\"main\"\n\"3183002\";\"Anzola\";\"other\"\n\"3183002\";\"Anzola d'Emilia\";\"other\"\n\"3183005\";\"Anzio\";\"main\"\n\"3183005\";\"Ancio\";\"other\"\n\"3183005\";\"Antium\";\"other\"\n\"3183005\";\"antsu~io\";\"other\"\n\"3183005\";\"Анцио\";\"other\"\n\"3183005\";\"Анціо\";\"other\"\n\"3183005\";\"アンツィオ\";\"other\"\n\"3183008\";\"Anzi\";\"main\"\n\"3183009\";\"Anzano di Puglia\";\"main\"\n\"3183010\";\"Anzano del Parco\";\"main\"\n\"3183018\";\"Antrodoco\";\"main\"\n\"3183041\";\"Antegnate\";\"main\"\n\"3183049\";\"Annone Veneto\";\"main\"\n\"3183049\";\"Danon\";\"other\"\n\"3183050\";\"Annone di Brianza\";\"main\"\n\"3183053\";\"Annicco\";\"main\"\n\"3183060\";\"Anguillara Veneta\";\"main\"\n\"3183060\";\"Anguillara\";\"other\"\n\"3183060\";\"Capitello\";\"other\"\n\"3183061\";\"Anguillara Sabazia\";\"main\"\n\"3183061\";\"Anguillara\";\"other\"\n\"3183061\";\"Anquillara Sabazia\";\"other\"\n\"3183061\";\"アングイッラーラ・サバーツィア\";\"other\"\n\"3183063\";\"Angri\";\"main\"\n\"3183065\";\"Angolo Terme\";\"main\"\n\"3183065\";\"Angolo\";\"other\"\n\"3183065\";\"アンゴロ・テルメ\";\"other\"\n\"3183066\";\"Anghiari\";\"main\"\n\"3183067\";\"Angera\";\"main\"\n\"3183072\";\"Andria\";\"main\"\n\"3183072\";\"Andrija\";\"other\"\n\"3183072\";\"andoria\";\"other\"\n\"3183072\";\"Андрия\";\"other\"\n\"3183072\";\"アンドリア\";\"other\"\n\"3183073\";\"Andretta\";\"main\"\n\"3183078\";\"Andorno Micca\";\"main\"\n\"3183078\";\"Andorno Cacciorna\";\"other\"\n\"3183081\";\"Andezeno\";\"main\"\n\"3183081\";\"Andzen\";\"other\"\n\"3183081\";\"andezeno\";\"other\"\n\"3183081\";\"アンデゼーノ\";\"other\"\n\"3183082\";\"Andalo\";\"main\"\n\"3183082\";\"andaro\";\"other\"\n\"3183082\";\"アンダロ\";\"other\"\n\"3183089\";\"Ancona\";\"main\"\n\"3183089\";\"Ancone\";\"other\"\n\"3183089\";\"Anconn-a\";\"other\"\n\"3183089\";\"Ancône\";\"other\"\n\"3183089\";\"Ankona\";\"other\"\n\"3183089\";\"an ke na\";\"other\"\n\"3183089\";\"ankona\";\"other\"\n\"3183089\";\"Анкона\";\"other\"\n\"3183089\";\"アンコーナ\";\"other\"\n\"3183089\";\"安科纳\";\"other\"\n\"3183093\";\"Ancarano\";\"main\"\n\"3183098\";\"Anagni\";\"main\"\n\"3183098\";\"Anagnia\";\"other\"\n\"3183099\";\"Anacapri\";\"main\"\n\"3183099\";\"anakapuri\";\"other\"\n\"3183099\";\"アナカプリ\";\"other\"\n\"3183105\";\"Ampezzo\";\"main\"\n\"3183105\";\"Dimpec\";\"other\"\n\"3183105\";\"Dimpeç\";\"other\"\n\"3183106\";\"Amorosi\";\"main\"\n\"3183113\";\"Amelia\";\"main\"\n\"3183114\";\"Ameglia\";\"main\"\n\"3183114\";\"Amegia\";\"other\"\n\"3183121\";\"Amatrice\";\"main\"\n\"3183121\";\"amatoriche\";\"other\"\n\"3183121\";\"アマトリーチェ\";\"other\"\n\"3183124\";\"Amaseno\";\"main\"\n\"3183129\";\"Amandola\";\"main\"\n\"3183129\";\"amandora\";\"other\"\n\"3183129\";\"アマンドラ\";\"other\"\n\"3183130\";\"Amalfi\";\"main\"\n\"3183130\";\"Amalfis\";\"other\"\n\"3183130\";\"a ma er fei\";\"other\"\n\"3183130\";\"amarufi\";\"other\"\n\"3183130\";\"Амалфи\";\"other\"\n\"3183130\";\"אמאלפי\";\"other\"\n\"3183130\";\"アマルフィ\";\"other\"\n\"3183130\";\"阿马尔菲\";\"other\"\n\"3183135\";\"Alzano Lombardo\";\"main\"\n\"3183135\";\"Alzano\";\"other\"\n\"3183135\";\"Alzano Maggiore\";\"other\"\n\"3183135\";\"アルツァーノ・ロンバルド\";\"other\"\n\"3183139\";\"Alvito\";\"main\"\n\"3183139\";\"aruvu~ito\";\"other\"\n\"3183139\";\"アルヴィート\";\"other\"\n\"3183140\";\"Alvignano\";\"main\"\n\"3183142\";\"Alviano\";\"main\"\n\"3183147\";\"Altopascio\";\"main\"\n\"3183163\";\"Altino\";\"main\"\n\"3183163\";\"arutino\";\"other\"\n\"3183163\";\"アルティーノ\";\"other\"\n\"3183165\";\"Altidona\";\"main\"\n\"3183165\";\"arutidona\";\"other\"\n\"3183165\";\"アルティドーナ\";\"other\"\n\"3183169\";\"Altavilla Vicentina\";\"main\"\n\"3183169\";\"アルタヴィッラ・ヴィチェンティーナ\";\"other\"\n\"3183170\";\"Altavilla Silentina\";\"main\"\n\"3183170\";\"Altavilla\";\"other\"\n\"3183171\";\"Altavilla Irpina\";\"main\"\n\"3183174\";\"Altare\";\"main\"\n\"3183174\";\"arutare\";\"other\"\n\"3183174\";\"アルターレ\";\"other\"\n\"3183178\";\"Altamura\";\"main\"\n\"3183178\";\"arutamura\";\"other\"\n\"3183178\";\"Алтамура\";\"other\"\n\"3183178\";\"アルタムーラ\";\"other\"\n\"3183184\";\"Alseno\";\"main\"\n\"3183187\";\"Alpignano\";\"main\"\n\"3183187\";\"Alpignan\";\"other\"\n\"3183187\";\"arupinyano\";\"other\"\n\"3183187\";\"アルピニャーノ\";\"other\"\n\"3183257\";\"Almese\";\"main\"\n\"3183257\";\"Almeis\";\"other\"\n\"3183257\";\"Almèis\";\"other\"\n\"3183257\";\"arumeze\";\"other\"\n\"3183257\";\"アルメーゼ\";\"other\"\n\"3183258\";\"Almenno San Salvatore\";\"main\"\n\"3183258\";\"アルメンノ・サン・サルヴァトーレ\";\"other\"\n\"3183259\";\"Almenno San Bartolomeo\";\"main\"\n\"3183259\";\"アルメンノ・サン・バルトロメーオ\";\"other\"\n\"3183260\";\"Almè\";\"main\"\n\"3183260\";\"Alme\";\"ascii\"\n\"3183260\";\"Lme\";\"other\"\n\"3183260\";\"Lmé\";\"other\"\n\"3183260\";\"arume\";\"other\"\n\"3183260\";\"アルメ\";\"other\"\n\"3183265\";\"Allumiere\";\"main\"\n\"3183265\";\"arrumiere\";\"other\"\n\"3183265\";\"アッルミエーレ\";\"other\"\n\"3183267\";\"Allerona\";\"main\"\n\"3183268\";\"Alleghe\";\"main\"\n\"3183273\";\"Alife\";\"main\"\n\"3183278\";\"Alice Castello\";\"main\"\n\"3183278\";\"アーリチェ・カステッロ\";\"other\"\n\"3183280\";\"Aliano\";\"main\"\n\"3183280\";\"Allano\";\"other\"\n\"3183284\";\"Alghero\";\"main\"\n\"3183284\";\"Alguer\";\"other\"\n\"3183284\";\"Alguer - Alghero\";\"other\"\n\"3183284\";\"Alguero\";\"other\"\n\"3183284\";\"Alighera\";\"other\"\n\"3183284\";\"L'Alguer\";\"other\"\n\"3183284\";\"arugero\";\"other\"\n\"3183284\";\"l'Alguer\";\"other\"\n\"3183284\";\"アルゲーロ\";\"other\"\n\"3183287\";\"Alfonsine\";\"main\"\n\"3183287\";\"arufonshine\";\"other\"\n\"3183287\";\"アルフォンシーネ\";\"other\"\n\"3183294\";\"Alfano\";\"main\"\n\"3183294\";\"arufano\";\"other\"\n\"3183294\";\"アルファーノ\";\"other\"\n\"3183295\";\"Alezio\";\"main\"\n\"3183299\";\"Alessandria\";\"main\"\n\"3183299\";\"Alesandrija\";\"other\"\n\"3183299\";\"Alessandrija\";\"other\"\n\"3183299\";\"Alexandria\";\"other\"\n\"3183299\";\"Alexandrie\";\"other\"\n\"3183299\";\"Lissandria\";\"other\"\n\"3183299\";\"aressandoria\";\"other\"\n\"3183299\";\"aressandoria xian\";\"other\"\n\"3183299\";\"Алесандрия\";\"other\"\n\"3183299\";\"Алессандрия\";\"other\"\n\"3183299\";\"Алессандрія\";\"other\"\n\"3183299\";\"アレッサンドリア\";\"other\"\n\"3183299\";\"アレッサンドリア県\";\"other\"\n\"3183304\";\"Aldeno\";\"main\"\n\"3183304\";\"arudeno\";\"other\"\n\"3183304\";\"アルデーノ\";\"other\"\n\"3183306\";\"Albuzzano\";\"main\"\n\"3183311\";\"Albizzate\";\"main\"\n\"3183314\";\"Albissola Marina\";\"main\"\n\"3183314\";\"Albisola Marina\";\"ascii\"\n\"3183314\";\"アルビッソラ・マリーナ\";\"other\"\n\"3183316\";\"Albino\";\"main\"\n\"3183316\";\"arubino\";\"other\"\n\"3183316\";\"Албино\";\"other\"\n\"3183316\";\"アルビーノ\";\"other\"\n\"3183318\";\"Albinea\";\"main\"\n\"3183318\";\"Албинеа\";\"other\"\n\"3183319\";\"Albignasego\";\"main\"\n\"3183321\";\"Albiate\";\"main\"\n\"3183321\";\"Albiaa\";\"other\"\n\"3183321\";\"arubiate\";\"other\"\n\"3183321\";\"アルビアーテ\";\"other\"\n\"3183322\";\"Albiano d'Ivrea\";\"main\"\n\"3183322\";\"Albian\";\"other\"\n\"3183322\";\"アルビアーノ・ディヴレーア\";\"other\"\n\"3183323\";\"Albiano\";\"main\"\n\"3183323\";\"arubiano\";\"other\"\n\"3183323\";\"アルビアーノ\";\"other\"\n\"3183325\";\"Albettone\";\"main\"\n\"3183329\";\"Alberona\";\"main\"\n\"3183330\";\"Alberobello\";\"main\"\n\"3183330\";\"a er bei luo bei luo\";\"other\"\n\"3183330\";\"aruberoberro\";\"other\"\n\"3183330\";\"アルベロベッロ\";\"other\"\n\"3183330\";\"阿尔贝罗贝洛\";\"other\"\n\"3183337\";\"Albareto\";\"main\"\n\"3183337\";\"Albereto di Borgotaro\";\"ascii\"\n\"3183337\";\"Albareto di Borgo Val di Taro\";\"other\"\n\"3183337\";\"Albareto di Val di Taro\";\"other\"\n\"3183343\";\"Albenga\";\"main\"\n\"3183343\";\"Albemga\";\"other\"\n\"3183343\";\"Arbenga\";\"other\"\n\"3183350\";\"Albaredo d'Adige\";\"main\"\n\"3183350\";\"アルバレード・ダーディジェ\";\"other\"\n\"3183355\";\"Albano Sant'Alessandro\";\"main\"\n\"3183355\";\"Albano\";\"other\"\n\"3183355\";\"アルバーノ・サンタレッサンドロ\";\"other\"\n\"3183356\";\"Albano Laziale\";\"main\"\n\"3183356\";\"Albano\";\"other\"\n\"3183356\";\"アルバーノ・ラツィアーレ\";\"other\"\n\"3183357\";\"Albano di Lucania\";\"main\"\n\"3183362\";\"Albanella\";\"main\"\n\"3183364\";\"Alba\";\"main\"\n\"3183364\";\"Al'bom\";\"other\"\n\"3183364\";\"aruba\";\"other\"\n\"3183364\";\"Альбом\";\"other\"\n\"3183364\";\"アルバ\";\"other\"\n\"3183365\";\"Alatri\";\"main\"\n\"3183365\";\"Алатри\";\"other\"\n\"3183366\";\"Alassio\";\"main\"\n\"3183366\";\"Arasce\";\"other\"\n\"3183367\";\"Alanno\";\"main\"\n\"3183372\";\"Alà dei Sardi\";\"main\"\n\"3183372\";\"Ala dei Sardi\";\"ascii\"\n\"3183374\";\"Ala\";\"main\"\n\"3183374\";\"ara\";\"other\"\n\"3183374\";\"アーラ\";\"other\"\n\"3183376\";\"Airuno\";\"main\"\n\"3183378\";\"Airola\";\"main\"\n\"3183380\";\"Airasca\";\"main\"\n\"3183380\";\"airasuka\";\"other\"\n\"3183380\";\"アイラスカ\";\"other\"\n\"3183385\";\"Ailano\";\"main\"\n\"3183385\";\"Allana\";\"other\"\n\"3183388\";\"Aiello del Sabato\";\"main\"\n\"3183388\";\"Ajello d''o Sabbato\";\"other\"\n\"3183389\";\"Aiello del Friuli\";\"main\"\n\"3183389\";\"Aiello\";\"other\"\n\"3183389\";\"Dael\";\"other\"\n\"3183392\";\"Aielli\";\"main\"\n\"3183410\";\"Agugliaro\";\"main\"\n\"3183410\";\"Agguliaro\";\"other\"\n\"3183411\";\"Agugliano\";\"main\"\n\"3183411\";\"aguriano\";\"other\"\n\"3183411\";\"アグリアーノ\";\"other\"\n\"3183412\";\"Agropoli\";\"main\"\n\"3183412\";\"Agruopulo\";\"other\"\n\"3183417\";\"Agrate Brianza\";\"main\"\n\"3183417\";\"Agrate\";\"other\"\n\"3183417\";\"アグラーテ・ブリアンツァ\";\"other\"\n\"3183419\";\"Agosta\";\"main\"\n\"3183419\";\"agosuta\";\"other\"\n\"3183419\";\"アーゴスタ\";\"other\"\n\"3183420\";\"Agordo\";\"main\"\n\"3183424\";\"Agnone\";\"main\"\n\"3183431\";\"Agnadello\";\"main\"\n\"3183431\";\"Agnadel\";\"other\"\n\"3183431\";\"anyaderro\";\"other\"\n\"3183431\";\"アニャデッロ\";\"other\"\n\"3183434\";\"Agna\";\"main\"\n\"3183439\";\"Agliè\";\"main\"\n\"3183439\";\"Aglie\";\"ascii\"\n\"3183439\";\"Aje\";\"other\"\n\"3183439\";\"Ajé\";\"other\"\n\"3183439\";\"arie\";\"other\"\n\"3183439\";\"アリエ\";\"other\"\n\"3183441\";\"Agliana\";\"main\"\n\"3183441\";\"ariana\";\"other\"\n\"3183441\";\"アリアーナ\";\"other\"\n\"3183443\";\"Aggius\";\"main\"\n\"3183446\";\"Agerola\";\"main\"\n\"3183446\";\"Adzherola\";\"other\"\n\"3183446\";\"ajerora\";\"other\"\n\"3183446\";\"Аджерола\";\"other\"\n\"3183446\";\"アジェーロラ\";\"other\"\n\"3183450\";\"Agazzano\";\"main\"\n\"3183455\";\"Afragola\";\"main\"\n\"3183455\";\"Afravola\";\"other\"\n\"3183455\";\"afuragora\";\"other\"\n\"3183455\";\"Афрагола\";\"other\"\n\"3183455\";\"アフラゴーラ\";\"other\"\n\"3183457\";\"Affile\";\"main\"\n\"3183457\";\"affire\";\"other\"\n\"3183457\";\"アッフィーレ\";\"other\"\n\"3183458\";\"Affi\";\"main\"\n\"3183458\";\"Alla\";\"other\"\n\"3183458\";\"Alli\";\"other\"\n\"3183458\";\"affi\";\"other\"\n\"3183458\";\"アッフィ\";\"other\"\n\"3183461\";\"Adro\";\"main\"\n\"3183466\";\"Adria\";\"main\"\n\"3183466\";\"Adrija\";\"other\"\n\"3183466\";\"Адрия\";\"other\"\n\"3183472\";\"Adelfia\";\"main\"\n\"3183472\";\"aderufia\";\"other\"\n\"3183472\";\"アデルフィア\";\"other\"\n\"3183488\";\"Acuto\";\"main\"\n\"3183488\";\"akuto\";\"other\"\n\"3183488\";\"アクート\";\"other\"\n\"3183490\";\"Acqui Terme\";\"main\"\n\"3183490\";\"Acqui\";\"other\"\n\"3183490\";\"Acqui Citta\";\"other\"\n\"3183490\";\"Acqui Città\";\"other\"\n\"3183490\";\"Aich\";\"other\"\n\"3183490\";\"Àich\";\"other\"\n\"3183490\";\"アックイ・テルメ\";\"other\"\n\"3183492\";\"Acquaviva Picena\";\"main\"\n\"3183492\";\"アックアヴィーヴァ・ピチェーナ\";\"other\"\n\"3183494\";\"Acquaviva delle Fonti\";\"main\"\n\"3183494\";\"アックアヴィーヴァ・デッレ・フォンティ\";\"other\"\n\"3183508\";\"Acquasparta\";\"main\"\n\"3183509\";\"Acquasanta Terme\";\"main\"\n\"3183509\";\"Acquasanta\";\"other\"\n\"3183509\";\"アックアサンタ・テルメ\";\"other\"\n\"3183516\";\"Acquapendente\";\"main\"\n\"3183518\";\"Acquanegra sul Chiese\";\"main\"\n\"3183518\";\"Acquanegra\";\"other\"\n\"3183519\";\"Acquanegra Cremonese\";\"main\"\n\"3183519\";\"Acquanegra\";\"other\"\n\"3183522\";\"Acqualagna\";\"main\"\n\"3183525\";\"Acquafredda\";\"main\"\n\"3183525\";\"akkuafuredda\";\"other\"\n\"3183525\";\"アックアフレッダ\";\"other\"\n\"3183541\";\"Acerra\";\"main\"\n\"3183541\";\"Acerrae\";\"other\"\n\"3183541\";\"acherra\";\"other\"\n\"3183541\";\"アチェッラ\";\"other\"\n\"3183544\";\"Acerno - Borbone\";\"main\"\n\"3183544\";\"Acerno\";\"other\"\n\"3183546\";\"Acerenza\";\"main\"\n\"3183554\";\"Accettura\";\"main\"\n\"3183557\";\"Accadia\";\"main\"\n\"3183561\";\"Abriola\";\"main\"\n\"3183573\";\"Abbiategrasso\";\"main\"\n\"3183573\";\"Albiatum\";\"other\"\n\"3183573\";\"abbiategurasso\";\"other\"\n\"3183573\";\"Аббиатеграссо\";\"other\"\n\"3183573\";\"アッビアテグラッソ\";\"other\"\n\"3183579\";\"Abbasanta\";\"main\"\n\"3183581\";\"Abbadia San Salvatore\";\"main\"\n\"3183581\";\"Abbadia San Salvadore\";\"other\"\n\"3183581\";\"アッバディーア・サン・サルヴァトーレ\";\"other\"\n\"3183582\";\"Abbadia Lariana\";\"main\"\n\"3183587\";\"Abano Terme\";\"main\"\n\"3183587\";\"Abano\";\"other\"\n\"3183587\";\"Abano-Terme\";\"other\"\n\"3183587\";\"Абано Терме\";\"other\"\n\"3183587\";\"Абано-Терме\";\"other\"\n\"3183587\";\"アーバノ・テルメ\";\"other\"\n\"3215081\";\"Gatteo\";\"main\"\n\"3215081\";\"Gati\";\"other\"\n\"3215081\";\"Gatì\";\"other\"\n\"3217360\";\"Capriva del Friuli\";\"main\"\n\"3217360\";\"Caprive\";\"other\"\n\"3217361\";\"San Lorenzo Isontino\";\"main\"\n\"3217361\";\"San Laurinc di Mosse\";\"other\"\n\"3217361\";\"San Lorenzo di Mossa\";\"other\"\n\"3217430\";\"Ruda\";\"main\"\n\"3217430\";\"Rude\";\"other\"\n\"3217440\";\"San Vito al Torre\";\"main\"\n\"3217440\";\"San Vit de Tor\";\"other\"\n\"3217440\";\"Sant Vit de Tor\";\"other\"\n\"3217440\";\"Sant Vît de Tor\";\"other\"\n\"3217462\";\"Terzo d'Aquileia\";\"main\"\n\"3217462\";\"Terzo d' Aquileia\";\"ascii\"\n\"3217467\";\"San Canzian d'Isonzo\";\"main\"\n\"3217467\";\"San Canzian d'lsonzo\";\"ascii\"\n\"3217502\";\"Pavia di Udine\";\"main\"\n\"3217502\";\"Pavia d'Udine\";\"other\"\n\"3217502\";\"Pavia d’Udine\";\"other\"\n\"3217502\";\"Pavie\";\"other\"\n\"3217574\";\"Bagnaria Arsa\";\"main\"\n\"3217574\";\"Bagnario Arsa\";\"ascii\"\n\"3217644\";\"Camino al Tagliamento\";\"main\"\n\"3217644\";\"Cjamin dal Tiliment\";\"other\"\n\"3217939\";\"Meduna di Livenza\";\"main\"\n\"3217939\";\"Medune\";\"other\"\n\"3217941\";\"Gorgo al Monticano\";\"main\"\n\"3217965\";\"Pramaggiore\";\"main\"\n\"3217965\";\"Pramaior\";\"other\"\n\"3218409\";\"Ormelle\";\"main\"\n\"3218410\";\"San Polo di Piave\";\"main\"\n\"3218433\";\"Maserada sul Piave\";\"main\"\n\"3218532\";\"Miane Premaor\";\"main\"\n\"3218581\";\"Santa Lucia di Piave\";\"main\"\n\"3218582\";\"Mareno di Piave\";\"main\"\n\"3218633\";\"Colle Umberto\";\"main\"\n\"3218705\";\"Orsago\";\"main\"\n\"3218758\";\"Povegliano\";\"main\"\n\"3218772\";\"Ponzano Veneto\";\"main\"\n\"3218772\";\"Ponzano\";\"ascii\"\n\"3218772\";\"ポンツァーノ・ヴェーネト\";\"other\"\n\"3218939\";\"Oltreacqua\";\"main\"\n\"3218993\";\"Fossò\";\"main\"\n\"3218993\";\"Fosso\";\"ascii\"\n\"3218993\";\"fosso\";\"other\"\n\"3218993\";\"フォッソ\";\"other\"\n\"3218998\";\"Fiesso d’Artico\";\"main\"\n\"3218998\";\"Fiesso d'Artico\";\"ascii\"\n\"3218998\";\"フィエッソ・ダルティコ\";\"other\"\n\"3219045\";\"Morgano\";\"main\"\n\"3219079\";\"Casier\";\"main\"\n\"3219114\";\"Spinea\";\"main\"\n\"3219114\";\"supinea\";\"other\"\n\"3219114\";\"スピネーア\";\"other\"\n\"3219195\";\"Sutrio\";\"main\"\n\"3219195\";\"Sudri\";\"other\"\n\"3219557\";\"Trichiana\";\"main\"\n\"3219568\";\"Limana\";\"main\"\n\"3219716\";\"Valle di Cadore\";\"main\"\n\"3219973\";\"Pradamano\";\"main\"\n\"3219973\";\"Pradaman\";\"other\"\n\"3220022\";\"Pagnacco\";\"main\"\n\"3220022\";\"Pagna\";\"other\"\n\"3220030\";\"Colloredo di Monte Albano\";\"main\"\n\"3220030\";\"Collofedo di Monte Albano\";\"ascii\"\n\"3220130\";\"Socchieve\";\"main\"\n\"3220130\";\"Soclef\";\"other\"\n\"3220130\";\"Soclêf\";\"other\"\n\"3220184\";\"Forgaria nel Friuli\";\"main\"\n\"3220184\";\"Folgaria nel Friuli\";\"ascii\"\n\"3220192\";\"Ragogna\";\"main\"\n\"3220192\";\"Ruvigne\";\"other\"\n\"3220328\";\"San Martino al Tagliamento\";\"main\"\n\"3220328\";\"San Martin dal Tiliment\";\"other\"\n\"3221658\";\"Claut\";\"main\"\n\"3224664\";\"Leivi\";\"main\"\n\"3224730\";\"Cogorno\";\"main\"\n\"6301942\";\"Brusaporto\";\"main\"\n\"6324600\";\"Fratte Rosa\";\"main\"\n\"6324600\";\"Fratterosa\";\"other\"\n\"6457398\";\"Verbania\";\"main\"\n\"6534212\";\"Pieve Emanuele\";\"main\"\n\"6534213\";\"Osio Sotto\";\"main\"\n\"6534214\";\"Scanzorosciate\";\"main\"\n\"6534215\";\"Bedizzole\";\"main\"\n\"6534216\";\"Lumezzane\";\"main\"\n\"6534217\";\"Mazzano\";\"main\"\n\"6534218\";\"Porto Mantovano\";\"main\"\n\"6534219\";\"Castel d'Azzano\";\"main\"\n\"6534220\";\"Noventa Padovana\";\"main\"\n\"6534221\";\"Castelnuovo del Garda\";\"main\"\n\"6534221\";\"Castelnuovo di Garda\";\"other\"\n\"6534222\";\"Romano d'Ezzelino\";\"main\"\n\"6534223\";\"Saonara\";\"main\"\n\"6534224\";\"Mediglia\";\"main\"\n\"6534225\";\"Curtatone\";\"main\"\n\"6534226\";\"Buccinasco\";\"main\"\n\"6534227\";\"Monte Argentario\";\"main\"\n\"6534228\";\"Guidonia Montecelio\";\"main\"\n\"6534229\";\"Cervinara\";\"main\"\n\"6534230\";\"Montoro Inferiore\";\"main\"\n\"6534231\";\"Montoro Superiore\";\"main\"\n\"6534232\";\"Lamezia Terme\";\"main\"\n\"6534233\";\"Cardano al Campo\";\"main\"\n\"6534234\";\"Caronno Pertusella\";\"main\"\n\"6534235\";\"Cassano Magnago\";\"main\"\n\"6534236\";\"Gerenzano\";\"main\"\n\"6534237\";\"Uboldo\";\"main\"\n\"6534238\";\"Pero\";\"main\"\n\"6534239\";\"Pessano con Bornago\";\"main\"\n\"6534240\";\"Settimo Milanese\";\"main\"\n\"6534241\";\"Cassola\";\"main\"\n\"6534242\";\"Pieve a Nievole\";\"main\"\n\"6534243\";\"Albisola Superiore\";\"main\"\n\"6534244\";\"Arcisate\";\"main\"\n\"6534245\";\"Basiglio\";\"main\"\n\"6534246\";\"Bussero\";\"main\"\n\"6534247\";\"Verano Brianza\";\"main\"\n\"6534248\";\"Treviolo\";\"main\"\n\"6534249\";\"Concesio\";\"main\"\n\"6534250\";\"Pino Torinese\";\"main\"\n\"6534251\";\"San Cipriano d'Aversa\";\"main\"\n\"6534252\";\"San Felice a Cancello\";\"main\"\n\"6534253\";\"San Nicola la Strada\";\"main\"\n\"6534254\";\"Crispano\";\"main\"\n\"6534255\";\"Pollena Trocchia\";\"main\"\n\"6534256\";\"Quarto\";\"main\"\n\"6534256\";\"Kvarto\";\"other\"\n\"6534256\";\"Кварто\";\"other\"\n\"6534257\";\"Tremestieri Etneo\";\"main\"\n\"6534258\";\"Santena\";\"main\"\n\"6534259\";\"Vinovo\";\"main\"\n\"6534260\";\"San Pietro in Cariano\";\"main\"\n\"6534261\";\"Ozzano dell'Emilia\";\"main\"\n\"6534262\";\"Casagiove\";\"main\"\n\"6534263\";\"Frignano\";\"main\"\n\"6534264\";\"Orta di Atella\";\"main\"\n\"6534265\";\"San Marcellino\";\"main\"\n\"6534266\";\"Teverola\";\"main\"\n\"6534267\";\"Casavatore\";\"main\"\n\"6534268\";\"Volla\";\"main\"\n\"6534269\";\"Santa Maria la Carità\";\"main\"\n\"6534269\";\"Santa Maria la Carita\";\"ascii\"\n\"6534270\";\"Trecase\";\"main\"\n\"6534271\";\"Sant'Egidio del Monte Albino\";\"main\"\n\"6534272\";\"Bellizzi\";\"main\"\n\"6534273\";\"Alba Adriatica\";\"main\"\n\"6534274\";\"Valderice\";\"main\"\n\"6534275\";\"Gravina di Catania\";\"main\"\n\"6534276\";\"Sant'Agata li Battiati\";\"main\"\n\"6534277\";\"Lusciano\";\"main\"\n\"6534278\";\"Parete\";\"main\"\n\"6534279\";\"Piedimonte Matese\";\"main\"\n\"6534280\";\"Cesano Boscone\";\"main\"\n\"6534280\";\"Boscone\";\"other\"\n\"6534281\";\"Cesate\";\"main\"\n\"6534282\";\"Due Carrare\";\"main\"\n\"6534283\";\"Porto Viro\";\"main\"\n\"6534284\";\"Fonte Nuova\";\"main\"\n\"6534285\";\"San Giovanni Teatino\";\"main\"\n\"6534286\";\"Bernareggio\";\"main\"\n\"6534288\";\"Campiglione-Fenile\";\"main\"\n\"6534289\";\"Magliano Alfieri\";\"main\"\n\"6534295\";\"Rocca de' Baldi\";\"main\"\n\"6534296\";\"Coassolo Torinese\";\"main\"\n\"6534301\";\"Roddi\";\"main\"\n\"6534308\";\"Pinasca\";\"main\"\n\"6534310\";\"Prarostino\";\"main\"\n\"6534320\";\"San Raffaele Cimena\";\"main\"\n\"6534322\";\"Val della Torre\";\"main\"\n\"6534326\";\"Ferrere\";\"main\"\n\"6534329\";\"Mombaruzzo\";\"main\"\n\"6534330\";\"Mombercelli\";\"main\"\n\"6534333\";\"Alluvioni Cambiò\";\"main\"\n\"6534333\";\"Alluvioni Cambio\";\"ascii\"\n\"6534334\";\"Vauda Canavese\";\"main\"\n\"6534335\";\"Verrua Savoia\";\"main\"\n\"6534341\";\"Refrancore\";\"main\"\n\"6534345\";\"Agrate Conturbia\";\"main\"\n\"6534348\";\"Conzano\";\"main\"\n\"6534349\";\"Oviglio\";\"main\"\n\"6534357\";\"Verrayes\";\"main\"\n\"6534359\";\"Monastero di Vasco\";\"main\"\n\"6534364\";\"Monticello d'Alba\";\"main\"\n\"6534365\";\"Niella Tanaro\";\"main\"\n\"6534370\";\"Roccabruna\";\"main\"\n\"6534371\";\"Cosseria\";\"main\"\n\"6534374\";\"Mallare\";\"main\"\n\"6534378\";\"Agliano Terme\";\"main\"\n\"6534382\";\"Casarza Ligure\";\"main\"\n\"6534383\";\"Davagna\";\"main\"\n\"6534385\";\"Beverino\";\"main\"\n\"6534387\";\"Incisa Scapaccino\";\"main\"\n\"6534388\";\"Isola d'Asti\";\"main\"\n\"6534395\";\"Cerrina Monferrato\";\"main\"\n\"6534398\";\"Malgesso\";\"main\"\n\"6534400\";\"Mesenzana\";\"main\"\n\"6534401\";\"Montegrino Valtravaglia\";\"main\"\n\"6534403\";\"Saltrio\";\"main\"\n\"6534404\";\"Drezzo\";\"main\"\n\"6534408\";\"San Giorgio Monferrato\";\"main\"\n\"6534409\";\"Bizzarone\";\"main\"\n\"6534411\";\"Blevio\";\"main\"\n\"6534412\";\"Bulgarograsso\";\"main\"\n\"6534413\";\"Cadorago\";\"main\"\n\"6534414\";\"Carate Urio\";\"main\"\n\"6534415\";\"Carbonate\";\"main\"\n\"6534416\";\"Caslino d'Erba\";\"main\"\n\"6534417\";\"Casnate con Bernate\";\"main\"\n\"6534419\";\"Ayas\";\"main\"\n\"6534424\";\"Fénis\";\"main\"\n\"6534424\";\"Fenis\";\"ascii\"\n\"6534426\";\"Merone\";\"main\"\n\"6534427\";\"Moltrasio\";\"main\"\n\"6534428\";\"Montorfano\";\"main\"\n\"6534429\";\"Nesso\";\"main\"\n\"6534432\";\"Andora\";\"main\"\n\"6534434\";\"Borgio Verezzi\";\"main\"\n\"6534436\";\"San Siro\";\"main\"\n\"6534437\";\"Moconesi\";\"main\"\n\"6534439\";\"Bodio Lomnago\";\"main\"\n\"6534441\";\"Cadegliano-Viconago\";\"main\"\n\"6534442\";\"Castelveccana\";\"main\"\n\"6534443\";\"Novedrate\";\"main\"\n\"6534445\";\"Parè\";\"main\"\n\"6534445\";\"Pare\";\"ascii\"\n\"6534449\";\"San Bartolomeo Val Cavargna\";\"main\"\n\"6534450\";\"San Fermo della Battaglia\";\"main\"\n\"6534452\";\"Solbiate\";\"main\"\n\"6534454\";\"Veniano\";\"main\"\n\"6534455\";\"Gornate-Olona\";\"main\"\n\"6534456\";\"Oggiona con Santo Stefano\";\"main\"\n\"6534460\";\"Tresivio\";\"main\"\n\"6534462\";\"Albavilla\";\"main\"\n\"6534463\";\"Beregazzo con Figliaro\";\"main\"\n\"6534464\";\"Bregnano\";\"main\"\n\"6534466\";\"Assago\";\"main\"\n\"6534467\";\"Basiano\";\"main\"\n\"6534468\";\"Bellusco\";\"main\"\n\"6534469\";\"Consiglio di Rumo\";\"main\"\n\"6534471\";\"Eupilio\";\"main\"\n\"6534472\";\"Faggeto Lario\";\"main\"\n\"6534473\";\"Faloppio\";\"main\"\n\"6534474\";\"Gironico\";\"main\"\n\"6534475\";\"Grandola ed Uniti\";\"main\"\n\"6534477\";\"Monguzzo\";\"main\"\n\"6534480\";\"Pianello del Lario\";\"main\"\n\"6534484\";\"Valbrona\";\"main\"\n\"6534486\";\"Castione Andevenno\";\"main\"\n\"6534487\";\"Pozzo d'Adda\";\"main\"\n\"6534488\";\"Pozzuolo Martesana\";\"main\"\n\"6534489\";\"Renate\";\"main\"\n\"6534490\";\"Roncello\";\"main\"\n\"6534492\";\"Canonica d'Adda\";\"main\"\n\"6534493\";\"Carobbio degli Angeli\";\"main\"\n\"6534494\";\"Cenate Sopra\";\"main\"\n\"6534495\";\"Cenate Sotto\";\"main\"\n\"6534497\";\"Mozzo\";\"main\"\n\"6534498\";\"Palazzago\";\"main\"\n\"6534499\";\"Pedrengo\";\"main\"\n\"6534500\";\"Peia\";\"main\"\n\"6534501\";\"Pianico\";\"main\"\n\"6534504\";\"Pognano\";\"main\"\n\"6534505\";\"Ponteranica\";\"main\"\n\"6534506\";\"Fara Olivana con Sola\";\"main\"\n\"6534507\";\"Foresto Sparso\";\"main\"\n\"6534511\";\"San Paolo d'Argon\";\"main\"\n\"6534514\";\"Sant'Omobono Terme\";\"main\"\n\"6534516\";\"Ubiale Clanezzo\";\"main\"\n\"6534517\";\"Valbrembo\";\"main\"\n\"6534519\";\"Torre de' Roveri\";\"main\"\n\"6534521\";\"Vilminore di Scalve\";\"main\"\n\"6534522\";\"Bione\";\"main\"\n\"6534524\";\"Verdellino\";\"main\"\n\"6534525\";\"Viadanica\";\"main\"\n\"6534529\";\"Agnosine\";\"main\"\n\"6534530\";\"Alfianello\";\"main\"\n\"6534531\";\"Idro\";\"main\"\n\"6534532\";\"Lodrino\";\"main\"\n\"6534534\";\"Manerba del Garda\";\"main\"\n\"6534535\";\"Corvino San Quirico\";\"main\"\n\"6534536\";\"Inverno e Monteleone\";\"main\"\n\"6534539\";\"Collebeato\";\"main\"\n\"6534540\";\"Corteno Golgi\";\"main\"\n\"6534541\";\"Erbusco\";\"main\"\n\"6534550\";\"Malegno\";\"main\"\n\"6534551\";\"Milzano\";\"main\"\n\"6534552\";\"Ome\";\"main\"\n\"6534554\";\"Casale Cremasco-Vidolasco\";\"main\"\n\"6534556\";\"Gadesco-Pieve Delmona\";\"main\"\n\"6534557\";\"Polpenazze del Garda\";\"main\"\n\"6534559\";\"Prevalle\";\"main\"\n\"6534560\";\"Persico Dosimo\";\"main\"\n\"6534561\";\"Urago d'Oglio\";\"main\"\n\"6534565\";\"San Giorgio di Mantova\";\"main\"\n\"6534567\";\"La Valle - Wengen\";\"main\"\n\"6534568\";\"Bleggio Inferiore\";\"main\"\n\"6534569\";\"Bleggio Superiore\";\"main\"\n\"6534575\";\"Giovo\";\"main\"\n\"6534576\";\"Lomaso\";\"main\"\n\"6534579\";\"Redavalle\";\"main\"\n\"6534584\";\"Santa Maria della Versa\";\"main\"\n\"6534585\";\"Pieve di Bono\";\"main\"\n\"6534590\";\"Ton\";\"main\"\n\"6534591\";\"Trambileno\";\"main\"\n\"6534595\";\"Vallarsa\";\"main\"\n\"6534597\";\"Brentino Belluno\";\"main\"\n\"6534598\";\"Brenzone\";\"main\"\n\"6534599\";\"Concamarise\";\"main\"\n\"6534600\";\"Lavagno\";\"main\"\n\"6534601\";\"Travacò Siccomario\";\"main\"\n\"6534601\";\"Travaco Siccomario\";\"ascii\"\n\"6534604\";\"Verrua Po\";\"main\"\n\"6534606\";\"Zeccone\";\"main\"\n\"6534611\";\"San Daniele Po\";\"main\"\n\"6534612\";\"Valdastico\";\"main\"\n\"6534613\";\"Velo d'Astico\";\"main\"\n\"6534614\";\"Fonte\";\"main\"\n\"6534616\";\"Ponti sul Mincio\";\"main\"\n\"6534617\";\"Redondesco\";\"main\"\n\"6534618\";\"Serravalle a Po\";\"main\"\n\"6534622\";\"Massanzago\";\"main\"\n\"6534623\";\"Megliadino San Fidenzio\";\"main\"\n\"6534625\";\"Villanova di Camposampiero\";\"main\"\n\"6534626\";\"Vo\";\"main\"\n\"6534627\";\"Papozze\";\"main\"\n\"6534631\";\"Nogaredo\";\"main\"\n\"6534633\";\"Ronzo-Chienis\";\"main\"\n\"6534635\";\"Buja\";\"main\"\n\"6534636\";\"Fiumicello\";\"main\"\n\"6534638\";\"Segonzano\";\"main\"\n\"6534641\";\"Reana del Rojale\";\"main\"\n\"6534642\";\"Resia\";\"main\"\n\"6534652\";\"Angiari\";\"main\"\n\"6534653\";\"Boschi Sant'Anna\";\"main\"\n\"6534654\";\"Cerro Veronese\";\"main\"\n\"6534655\";\"Colognola ai Colli\";\"main\"\n\"6534656\";\"Grancona\";\"main\"\n\"6534657\";\"Roveredo di Guà\";\"main\"\n\"6534657\";\"Roveredo di Gua\";\"ascii\"\n\"6534658\";\"Roverè Veronese\";\"main\"\n\"6534658\";\"Rovere Veronese\";\"ascii\"\n\"6534659\";\"Molvena\";\"main\"\n\"6534661\";\"Lugo di Vicenza\";\"main\"\n\"6534662\";\"San Gregorio nelle Alpi\";\"main\"\n\"6534664\";\"Monfumo\";\"main\"\n\"6534666\";\"Montecopiolo\";\"main\"\n\"6534667\";\"Monte Grimano Terme\";\"main\"\n\"6534669\";\"Terrassa Padovana\";\"main\"\n\"6534672\";\"Fiuminata\";\"main\"\n\"6534675\";\"Castel di Lama\";\"main\"\n\"6534678\";\"Roccafluvione\";\"main\"\n\"6534679\";\"Zeri\";\"main\"\n\"6534680\";\"San Romano in Garfagnana\";\"main\"\n\"6534683\";\"Sambuca Pistoiese\";\"main\"\n\"6534684\";\"Capraia e Limite\";\"main\"\n\"6534685\";\"Tavarnelle Val di Pesa\";\"main\"\n\"6534686\";\"Gazzola\";\"main\"\n\"6534690\";\"Calvignasco\";\"main\"\n\"6534692\";\"Nibionno\";\"main\"\n\"6534693\";\"Lumarzo\";\"main\"\n\"6534694\";\"Cornegliano Laudense\";\"main\"\n\"6534695\";\"Castegnero\";\"main\"\n\"6534696\";\"Greccio\";\"main\"\n\"6534697\";\"Palazzo Pignano\";\"main\"\n\"6534699\";\"Capriata d'Orba\";\"main\"\n\"6534700\";\"Granaglione\";\"main\"\n\"6534701\";\"Bigarello\";\"main\"\n\"6534703\";\"Campo nell'Elba\";\"main\"\n\"6534703\";\"Marina di Campo\";\"other\"\n\"6534705\";\"Isola del Giglio\";\"main\"\n\"6534706\";\"Civitella Paganico\";\"main\"\n\"6534707\";\"Tresana\";\"main\"\n\"6534712\";\"Larciano\";\"main\"\n\"6534716\";\"Stella\";\"main\"\n\"6534717\";\"Broccostella\";\"main\"\n\"6534718\";\"Colfelice\";\"main\"\n\"6534721\";\"Avegno\";\"main\"\n\"6534722\";\"Sant'Olcese\";\"main\"\n\"6534726\";\"Cosio Valtellino\";\"main\"\n\"6534729\";\"Castel di Sasso\";\"main\"\n\"6534730\";\"Castel Morrone\";\"main\"\n\"6534731\";\"Samolaco\";\"main\"\n\"6534732\";\"Valdidentro\";\"main\"\n\"6534733\";\"Valdisotto\";\"main\"\n\"6534736\";\"Monte Isola\";\"main\"\n\"6534737\";\"Monticelli Brusati\";\"main\"\n\"6534738\";\"Muscoline\";\"main\"\n\"6534739\";\"Ossimo\";\"main\"\n\"6534743\";\"Pezzaze\";\"main\"\n\"6534744\";\"Preseglie\";\"main\"\n\"6534745\";\"Provaglio d'Iseo\";\"main\"\n\"6534747\";\"Puegnago sul Garda\";\"main\"\n\"6534748\";\"Remedello\";\"main\"\n\"6534749\";\"Rodengo-Saiano\";\"main\"\n\"6534750\";\"Tignale\";\"main\"\n\"6534751\";\"Tremosine\";\"main\"\n\"6534751\";\"Pieve di Tremosine\";\"other\"\n\"6534753\";\"Vallio Terme\";\"main\"\n\"6534756\";\"Castelletto di Branduzzo\";\"main\"\n\"6534758\";\"Lettere\";\"main\"\n\"6534759\";\"Sovramonte\";\"main\"\n\"6534760\";\"Paderno del Grappa\";\"main\"\n\"6534761\";\"Saint-Christophe\";\"main\"\n\"6534762\";\"Saint-Marcel\";\"main\"\n\"6534764\";\"Sarre\";\"main\"\n\"6534766\";\"Valtournenche\";\"main\"\n\"6534768\";\"Ceranesi\";\"main\"\n\"6534769\";\"Roè Volciano\";\"main\"\n\"6534769\";\"Roe Volciano\";\"ascii\"\n\"6534770\";\"Soiano del Lago\";\"main\"\n\"6534771\";\"Aldino - Aldein\";\"main\"\n\"6534773\";\"Venticano\";\"main\"\n\"6534774\";\"Barbiano - Barbian\";\"main\"\n\"6534776\";\"Brennero - Brenner\";\"main\"\n\"6534778\";\"Cornedo all'Isarco - Karneid\";\"main\"\n\"6534780\";\"Funes - Villnoess\";\"main\"\n\"6534781\";\"Magrè sulla strada del vino - Margreid an der Weinstrasse\";\"main\"\n\"6534781\";\"Magre sulla strada del vino - Margreid an der Weinstrasse\";\"ascii\"\n\"6534782\";\"Marebbe - Enneberg\";\"main\"\n\"6534784\";\"Racines - Ratschings\";\"main\"\n\"6534785\";\"Rasun Anterselva - Rasen-Antholz\";\"main\"\n\"6534785\";\"Rasun Anterselva\";\"other\"\n\"6534786\";\"Renon - Ritten\";\"main\"\n\"6534787\";\"Rodengo - Rodeneck\";\"main\"\n\"6534788\";\"San Martino in Badia - St. Martin in Thurn\";\"main\"\n\"6534789\";\"Senales - Schnals\";\"main\"\n\"6534790\";\"Tirolo - Tirol\";\"main\"\n\"6534791\";\"Ultimo - Ulten\";\"main\"\n\"6534792\";\"Val di Vizze - Pfitsch\";\"main\"\n\"6534793\";\"Valle Aurina - Ahrntal\";\"main\"\n\"6534794\";\"Valle di Casies - Gsies\";\"main\"\n\"6534795\";\"Vandoies - Vintl\";\"main\"\n\"6534797\";\"Villandro - Villanders\";\"main\"\n\"6534799\";\"Cavaso del Tomba\";\"main\"\n\"6534800\";\"Giffoni Sei Casali\";\"main\"\n\"6534801\";\"Montecorvino Pugliano\";\"main\"\n\"6534802\";\"Balsorano\";\"main\"\n\"6534804\";\"Ocre\";\"main\"\n\"6534805\";\"Tornimparte\";\"main\"\n\"6534808\";\"Scigliano\";\"main\"\n\"6534809\";\"Conflenti\";\"main\"\n\"6534810\";\"Africo\";\"main\"\n\"6534811\";\"Fiumara\";\"main\"\n\"6534812\";\"Roghudi\";\"main\"\n\"6534812\";\"Roghudi Nuovo\";\"other\"\n\"6534813\";\"Fondachelli-Fantina\";\"main\"\n\"6534814\";\"Terme Vigliatore\";\"main\"\n\"6534815\";\"Maniace\";\"main\"\n\"6534816\";\"Valledoria\";\"main\"\n\"6534826\";\"Castello di Brianza\";\"main\"\n\"6534827\";\"Colle Brianza\";\"main\"\n\"6534828\";\"Garbagnate Monastero\";\"main\"\n\"6534829\";\"Monticello Brianza\";\"main\"\n\"6534830\";\"Castiraga Vidardo\";\"main\"\n\"6534831\";\"Corte Palasio\";\"main\"\n\"6534832\";\"Jonadi\";\"main\"\n\"6534840\";\"San Bernardino Verbano\";\"main\"\n\"6534841\";\"Valstrona\";\"main\"\n\"6534847\";\"Pianfei\";\"main\"\n\"6534848\";\"Pocapaglia\";\"main\"\n\"6534849\";\"Polonghera\";\"main\"\n\"6534853\";\"Vezza d'Alba\";\"main\"\n\"6534854\";\"Villar San Costanzo\";\"main\"\n\"6534856\";\"Antignano\";\"main\"\n\"6534858\";\"San Paolo Solbrito\";\"main\"\n\"6534860\";\"Tigliole\";\"main\"\n\"6534862\";\"Viarigi\";\"main\"\n\"6534870\";\"Borghetto di Borbera\";\"main\"\n\"6534871\";\"Bosio\";\"main\"\n\"6534873\";\"Casal Cermelli\";\"main\"\n\"6534882\";\"Masio\";\"main\"\n\"6534884\";\"Mombello Monferrato\";\"main\"\n\"6534899\";\"Rosignano Monferrato\";\"main\"\n\"6534901\";\"Sezzadio\";\"main\"\n\"6534904\";\"Arnad\";\"main\"\n\"6534906\";\"Hone\";\"main\"\n\"6534909\";\"Barasso\";\"main\"\n\"6534911\";\"Brenta\";\"main\"\n\"6534912\";\"Brusimpiano\";\"main\"\n\"6534913\";\"Caronno Varesino\";\"main\"\n\"6534915\";\"Clivio\";\"main\"\n\"6534916\";\"Cuasso al Monte\";\"main\"\n\"6534917\";\"Cugliate-Fabiasco\";\"main\"\n\"6534918\";\"Cunardo\";\"main\"\n\"6534919\";\"Daverio\";\"main\"\n\"6534921\";\"Gorla Minore\";\"main\"\n\"6534922\";\"Jerago con Orago\";\"main\"\n\"6534923\";\"Leggiuno\";\"main\"\n\"6534924\";\"Varano Borghi\";\"main\"\n\"6534925\";\"Albese con Cassano\";\"main\"\n\"6534926\";\"Alserio\";\"main\"\n\"6534927\";\"Cavallasca\";\"main\"\n\"6534930\";\"Fenegrò\";\"main\"\n\"6534930\";\"Fenegro\";\"ascii\"\n\"6534934\";\"Albosaggia\";\"main\"\n\"6534935\";\"Briosco\";\"main\"\n\"6534936\";\"Cassinetta di Lugagnano\";\"main\"\n\"6534937\";\"Cogliate\";\"main\"\n\"6534938\";\"Correzzana\";\"main\"\n\"6534939\";\"Dresano\";\"main\"\n\"6534940\";\"Gessate\";\"main\"\n\"6534941\";\"Gudo Visconti\";\"main\"\n\"6534942\";\"Lazzate\";\"main\"\n\"6534943\";\"Lesmo\";\"main\"\n\"6534944\";\"Macherio\";\"main\"\n\"6534945\";\"Masate\";\"main\"\n\"6534946\";\"Mesero\";\"main\"\n\"6534947\";\"Mezzago\";\"main\"\n\"6534948\";\"San Vittore Olona\";\"main\"\n\"6534949\";\"Sulbiate\";\"main\"\n\"6534950\";\"Veduggio con Colzano\";\"main\"\n\"6534951\";\"Vizzolo Predabissi\";\"main\"\n\"6534953\";\"Ambivere\";\"main\"\n\"6534957\";\"Boltiere\";\"main\"\n\"6534958\";\"Bonate Sotto\";\"main\"\n\"6534960\";\"Chignolo d'Isola\";\"main\"\n\"6534961\";\"Colzate\";\"main\"\n\"6534963\";\"Entratico\";\"main\"\n\"6534964\";\"Filago\";\"main\"\n\"6534965\";\"Fiorano al Serio\";\"main\"\n\"6534968\";\"Gandellino\";\"main\"\n\"6534970\";\"Gorlago\";\"main\"\n\"6534971\";\"Madone\";\"main\"\n\"6534972\";\"Premolo\";\"main\"\n\"6534973\";\"Presezzo\";\"main\"\n\"6534975\";\"Castelcovati\";\"main\"\n\"6534976\";\"Borgo San Siro\";\"main\"\n\"6534978\";\"Chignolo Po\";\"main\"\n\"6534980\";\"Frascarolo\";\"main\"\n\"6534982\";\"Magherno\";\"main\"\n\"6534983\";\"Marcignago\";\"main\"\n\"6534984\";\"Marzano\";\"main\"\n\"6534986\";\"Casaletto Vaprio\";\"main\"\n\"6534990\";\"Malagnino\";\"main\"\n\"6534991\";\"Spinadesco\";\"main\"\n\"6534992\";\"Castelbelforte\";\"main\"\n\"6534993\";\"Motteggiana\";\"main\"\n\"6534997\";\"Isera\";\"main\"\n\"6534999\";\"Rivoli Veronese\";\"main\"\n\"6535000\";\"Selva di Progno\";\"main\"\n\"6535001\";\"Alonte\";\"main\"\n\"6535002\";\"Altissimo\";\"main\"\n\"6535004\";\"Brogliano\";\"main\"\n\"6535006\";\"Carrè\";\"main\"\n\"6535006\";\"Carre\";\"ascii\"\n\"6535007\";\"Enego\";\"main\"\n\"6535008\";\"Mason Vicentino\";\"main\"\n\"6535009\";\"Montecchio Precalcino\";\"main\"\n\"6535010\";\"Montegalda\";\"main\"\n\"6535011\";\"Mossano\";\"main\"\n\"6535012\";\"Mussolente\";\"main\"\n\"6535013\";\"Pove del Grappa\";\"main\"\n\"6535014\";\"Sarego\";\"main\"\n\"6535015\";\"Alano di Piave\";\"main\"\n\"6535016\";\"Altivole\";\"main\"\n\"6535017\";\"Segusino\";\"main\"\n\"6535018\";\"Cartura\";\"main\"\n\"6535019\";\"Urbana\";\"main\"\n\"6535021\";\"Villafranca Padovana\";\"main\"\n\"6535022\";\"Arquà Polesine\";\"main\"\n\"6535022\";\"Arqua Polesine\";\"ascii\"\n\"6535023\";\"Castelnovo Bariano\";\"main\"\n\"6535024\";\"Frassinelle Polesine\";\"main\"\n\"6535026\";\"Solignano\";\"main\"\n\"6535027\";\"Capolona\";\"main\"\n\"6535029\";\"San Prospero\";\"main\"\n\"6535030\";\"Voghiera\";\"main\"\n\"6535034\";\"Montefelcino\";\"main\"\n\"6535036\";\"Maltignano\";\"main\"\n\"6535041\";\"Montescudaio\";\"main\"\n\"6535042\";\"Valtopina\";\"main\"\n\"6535043\";\"Arcinazzo Romano\";\"main\"\n\"6535046\";\"Montelibretti\";\"main\"\n\"6535047\";\"Ponzano Romano\";\"main\"\n\"6535049\";\"Rocca Santo Stefano\";\"main\"\n\"6535050\";\"Roccagorga\";\"main\"\n\"6535051\";\"Coreno Ausonio\";\"main\"\n\"6535056\";\"Rivalta Bormida\";\"main\"\n\"6535058\";\"Rocca Grimalda\";\"main\"\n\"6535060\";\"Tagliolo Monferrato\";\"main\"\n\"6535063\";\"Vignole Borbera\";\"main\"\n\"6535067\";\"Visone\";\"main\"\n\"6535071\";\"Donnas\";\"main\"\n\"6535073\";\"Gignod\";\"main\"\n\"6535075\";\"Nus\";\"main\"\n\"6535080\";\"Villeneuve\";\"main\"\n\"6535082\";\"Boissano\";\"main\"\n\"6535083\";\"Calice Ligure\";\"main\"\n\"6535087\";\"Tovo San Giacomo\";\"main\"\n\"6535088\";\"Mele\";\"main\"\n\"6535089\";\"Savignone\";\"main\"\n\"6535090\";\"Bardello\";\"main\"\n\"6535091\";\"Bisuschio\";\"main\"\n\"6535094\";\"Buguggiate\";\"main\"\n\"6535095\";\"Cadrezzate\";\"main\"\n\"6535096\";\"Cantello\";\"main\"\n\"6535097\";\"Casale Litta\";\"main\"\n\"6535101\";\"Cuveglio\";\"main\"\n\"6535102\";\"Cuvio\";\"main\"\n\"6535105\";\"Germignaga\";\"main\"\n\"6535106\";\"Grantola\";\"main\"\n\"6535108\";\"Luvinate\";\"main\"\n\"6535109\";\"Marchirolo\";\"main\"\n\"6535110\";\"Monvalle\";\"main\"\n\"6535111\";\"Morazzone\";\"main\"\n\"6535112\";\"Sangiano\";\"main\"\n\"6535113\";\"Albiolo\";\"main\"\n\"6535114\";\"Alzate Brianza\";\"main\"\n\"6535115\";\"Capiago Intimiano\";\"main\"\n\"6535116\";\"Carugo\";\"main\"\n\"6535117\";\"Cassina Rizzardi\";\"main\"\n\"6535118\";\"Castelmarte\";\"main\"\n\"6535121\";\"Cucciago\";\"main\"\n\"6535124\";\"Figino Serenza\";\"main\"\n\"6535125\";\"Guanzate\";\"main\"\n\"6535126\";\"Lambrugo\";\"main\"\n\"6535127\";\"Limido Comasco\";\"main\"\n\"6535128\";\"Lipomo\";\"main\"\n\"6535129\";\"Longone al Segrino\";\"main\"\n\"6535130\";\"Luisago\";\"main\"\n\"6535134\";\"Montagna in Valtellina\";\"main\"\n\"6535135\";\"Ponte in Valtellina\";\"main\"\n\"6535138\";\"Talamona\";\"main\"\n\"6535142\";\"Aicurzio\";\"main\"\n\"6535143\";\"Albairate\";\"main\"\n\"6535144\";\"Bellinzago Lombardo\";\"main\"\n\"6535145\";\"Bubbiano\";\"main\"\n\"6535146\";\"Burago di Molgora\";\"main\"\n\"6535147\";\"Busnago\";\"main\"\n\"6535148\";\"Grezzago\";\"main\"\n\"6535149\";\"Ronco Briantino\";\"main\"\n\"6535150\";\"San Giorgio su Legnano\";\"main\"\n\"6535151\";\"Settala\";\"main\"\n\"6535152\";\"Sovico\";\"main\"\n\"6535153\";\"Vedano al Lambro\";\"main\"\n\"6535154\";\"Zelo Surrigone\";\"main\"\n\"6535155\";\"Adrara San Martino\";\"main\"\n\"6535156\";\"Arzago d'Adda\";\"main\"\n\"6535157\";\"Azzano San Paolo\";\"main\"\n\"6535158\";\"Bagnatica\";\"main\"\n\"6535159\";\"Bariano\";\"main\"\n\"6535160\";\"Berbenno\";\"main\"\n\"6535161\";\"Berzo San Fermo\";\"main\"\n\"6535162\";\"Bolgare\";\"main\"\n\"6535163\";\"Cavernago\";\"main\"\n\"6535164\";\"Chiuduno\";\"main\"\n\"6535165\";\"Cortenuova\";\"main\"\n\"6535166\";\"Credaro\";\"main\"\n\"6535167\";\"Dossena\";\"main\"\n\"6535168\";\"Fino del Monte\";\"main\"\n\"6535169\";\"Gandosso\";\"main\"\n\"6535170\";\"Grassobbio\";\"main\"\n\"6535173\";\"Levate\";\"main\"\n\"6535174\";\"Lurano\";\"main\"\n\"6535175\";\"Montello\";\"main\"\n\"6535176\";\"Morengo\";\"main\"\n\"6535177\";\"Mornico al Serio\";\"main\"\n\"6535178\";\"Ranzanico\";\"main\"\n\"6535179\";\"Rogno\";\"main\"\n\"6535183\";\"Suisio\";\"main\"\n\"6535184\";\"Terno d'Isola\";\"main\"\n\"6535185\";\"Villa d'Adda\";\"main\"\n\"6535186\";\"Villa d'Ogna\";\"main\"\n\"6535187\";\"Barbariga\";\"main\"\n\"6535188\";\"Brandico\";\"main\"\n\"6535189\";\"Caino\";\"main\"\n\"6535190\";\"Calvagese della Riviera\";\"main\"\n\"6535192\";\"Capriano del Colle\";\"main\"\n\"6535193\";\"Castrezzato\";\"main\"\n\"6535194\";\"Cellatica\";\"main\"\n\"6535196\";\"Gianico\";\"main\"\n\"6535197\";\"Maclodio\";\"main\"\n\"6535198\";\"Montirone\";\"main\"\n\"6535199\";\"Niardo\";\"main\"\n\"6535200\";\"Nuvolera\";\"main\"\n\"6535201\";\"Polaveno\";\"main\"\n\"6535202\";\"Pontoglio\";\"main\"\n\"6535203\";\"Roncadelle\";\"main\"\n\"6535204\";\"San Zeno Naviglio\";\"main\"\n\"6535205\";\"Trenzano\";\"main\"\n\"6535206\";\"Zone\";\"main\"\n\"6535208\";\"Borgarello\";\"main\"\n\"6535212\";\"Linarolo\";\"main\"\n\"6535217\";\"Pinarolo Po\";\"main\"\n\"6535218\";\"Sommo\";\"main\"\n\"6535221\";\"Torrevecchia Pia\";\"main\"\n\"6535222\";\"Trivolzio\";\"main\"\n\"6535223\";\"Valle Salimbene\";\"main\"\n\"6535225\";\"Vistarino\";\"main\"\n\"6535226\";\"Bonemerse\";\"main\"\n\"6535230\";\"Chieve\";\"main\"\n\"6535231\";\"Corte de' Frati\";\"main\"\n\"6535232\";\"Cremosano\";\"main\"\n\"6535235\";\"Martignana di Po\";\"main\"\n\"6535236\";\"Monte Cremasco\";\"main\"\n\"6535237\";\"Pianengo\";\"main\"\n\"6535240\";\"Ricengo\";\"main\"\n\"6535242\";\"Felonica\";\"main\"\n\"6535245\";\"Schivenoglia\";\"main\"\n\"6535246\";\"Villa Poma\";\"main\"\n\"6535252\";\"Calceranica al Lago\";\"main\"\n\"6535255\";\"Cavedine\";\"main\"\n\"6535262\";\"Fornace\";\"main\"\n\"6535265\";\"Cantalupa\";\"main\"\n\"6535266\";\"Cercenasco\";\"main\"\n\"6535268\";\"Chiusa di San Michele\";\"main\"\n\"6535274\";\"Givoletto\";\"main\"\n\"6535280\";\"San Germano Chisone\";\"main\"\n\"6535284\";\"Bogogno\";\"main\"\n\"6535285\";\"Briona\";\"main\"\n\"6535289\";\"Veruno\";\"main\"\n\"6535292\";\"Succivo\";\"main\"\n\"6535294\";\"Sant'Angelo a Cupolo\";\"main\"\n\"6535295\";\"Casamicciola Terme\";\"main\"\n\"6535296\";\"Castello di Cisterna\";\"main\"\n\"6535297\";\"San Vitaliano\";\"main\"\n\"6535298\";\"Scisciano\";\"main\"\n\"6535300\";\"Cesinali\";\"main\"\n\"6535301\";\"Moschiano\";\"main\"\n\"6535303\";\"Sperone\";\"main\"\n\"6535304\";\"Cagnano Amiterno\";\"main\"\n\"6535307\";\"Tufara\";\"main\"\n\"6535308\";\"Castelluccio dei Sauri\";\"main\"\n\"6535309\";\"Binetto\";\"main\"\n\"6535310\";\"Poggiorsini\";\"main\"\n\"6535311\";\"Brienza\";\"main\"\n\"6535312\";\"Figline Vegliaturo\";\"main\"\n\"6535313\";\"Santa Maria del Cedro\";\"main\"\n\"6535315\";\"Belcastro\";\"main\"\n\"6535316\";\"Feroleto Antico\";\"main\"\n\"6535319\";\"Sellia Marina\";\"main\"\n\"6535321\";\"Furnari\";\"main\"\n\"6535322\";\"Gualtieri Sicaminò\";\"main\"\n\"6535322\";\"Gualtieri Sicamino\";\"ascii\"\n\"6535325\";\"Savoca\";\"main\"\n\"6535326\";\"Camporotondo Etneo\";\"main\"\n\"6535327\";\"San Pietro Clarenza\";\"main\"\n\"6535328\";\"Valverde\";\"main\"\n\"6535329\";\"Mazzarrone\";\"main\"\n\"6535330\";\"Ragalna\";\"main\"\n\"6535331\";\"Desulo\";\"main\"\n\"6535332\";\"Villaperuccio\";\"main\"\n\"6535337\";\"Ronco Biellese\";\"main\"\n\"6535338\";\"Sagliano Micca\";\"main\"\n\"6535342\";\"Valdengo\";\"main\"\n\"6535344\";\"Bulciago\";\"main\"\n\"6535345\";\"Calco\";\"main\"\n\"6535346\";\"Cassago Brianza\";\"main\"\n\"6535347\";\"Civate\";\"main\"\n\"6535348\";\"Cortenova\";\"main\"\n\"6535349\";\"Costa Masnaga\";\"main\"\n\"6535351\";\"Garlate\";\"main\"\n\"6535352\";\"Imbersago\";\"main\"\n\"6535354\";\"Pasturo\";\"main\"\n\"6535355\";\"Perego\";\"main\"\n\"6535357\";\"Pescate\";\"main\"\n\"6535358\";\"Rogeno\";\"main\"\n\"6535359\";\"Santa Maria Hoè\";\"main\"\n\"6535359\";\"Santa Maria Hoe\";\"ascii\"\n\"6535360\";\"Sirtori\";\"main\"\n\"6535361\";\"Suello\";\"main\"\n\"6535362\";\"Valgreghentino\";\"main\"\n\"6535363\";\"Verderio Inferiore\";\"main\"\n\"6535364\";\"Verderio Superiore\";\"main\"\n\"6535365\";\"Casaletto Lodigiano\";\"main\"\n\"6535366\";\"Cervignano d'Adda\";\"main\"\n\"6535367\";\"Graffignana\";\"main\"\n\"6535368\";\"Mairago\";\"main\"\n\"6535369\";\"Ospedaletto Lodigiano\";\"main\"\n\"6535370\";\"Pieve Fissiraga\";\"main\"\n\"6535371\";\"San Martino in Strada\";\"main\"\n\"6535372\";\"Sordio\";\"main\"\n\"6535373\";\"Valera Fratta\";\"main\"\n\"6535374\";\"Villanova del Sillaro\";\"main\"\n\"6535376\";\"Castelsilano\";\"main\"\n\"6535377\";\"Filandari\";\"main\"\n\"6535378\";\"Stefanaconi\";\"main\"\n\"6535379\";\"Arizzano\";\"main\"\n\"6535381\";\"Cambiasca\";\"main\"\n\"6535384\";\"Vignone\";\"main\"\n\"6535386\";\"Bibiana\";\"main\"\n\"6535387\";\"Bruzolo\";\"main\"\n\"6535388\";\"Cafasse\";\"main\"\n\"6535389\";\"Castagnole Piemonte\";\"main\"\n\"6535390\";\"Castiglione Torinese\";\"main\"\n\"6535391\";\"Chianocco\";\"main\"\n\"6535392\";\"Chiaverano\";\"main\"\n\"6535393\";\"Frossasco\";\"main\"\n\"6535399\";\"La Cassa\";\"main\"\n\"6535403\";\"Macello\";\"main\"\n\"6535413\";\"Piobesi Torinese\";\"main\"\n\"6535414\";\"Piscina\";\"main\"\n\"6535415\";\"Piverone\";\"main\"\n\"6535417\";\"Rivarossa\";\"main\"\n\"6535418\";\"Roletto\";\"main\"\n\"6535420\";\"Rosta\";\"main\"\n\"6535422\";\"San Carlo Canavese\";\"main\"\n\"6535427\";\"Villanova Canavese\";\"main\"\n\"6535428\";\"Vische\";\"main\"\n\"6535429\";\"Asigliano Vercellese\";\"main\"\n\"6535438\";\"Boca\";\"main\"\n\"6535441\";\"Cavaglio d'Agogna\";\"main\"\n\"6535442\";\"Cureggio\";\"main\"\n\"6535443\";\"Dormelletto\";\"main\"\n\"6535444\";\"Gargallo\";\"main\"\n\"6535445\";\"Maggiora\";\"main\"\n\"6535451\";\"Baldissero d'Alba\";\"main\"\n\"6535455\";\"Castelletto Stura\";\"main\"\n\"6535459\";\"Cervasca\";\"main\"\n\"6535461\";\"Cossano Belbo\";\"main\"\n\"6535462\";\"Farigliano\";\"main\"\n\"6535463\";\"Frabosa Sottana\";\"main\"\n\"6535464\";\"Guarene\";\"main\"\n\"6535466\";\"Lagnasco\";\"main\"\n\"6535471\";\"Monasterolo di Savigliano\";\"main\"\n\"6535479\";\"Priocca\";\"main\"\n\"6535481\";\"Rifreddo\";\"main\"\n\"6535487\";\"Santo Stefano Roero\";\"main\"\n\"6535494\";\"Vicoforte\";\"main\"\n\"6535499\";\"Buttigliera d'Asti\";\"main\"\n\"6535500\";\"Calosso\";\"main\"\n\"6535515\";\"Portacomaro\";\"main\"\n\"6535519\";\"Rocchetta Tanaro\";\"main\"\n\"6535521\";\"San Marzano Oliveto\";\"main\"\n\"6535530\";\"Basaluzzo\";\"main\"\n\"6535538\";\"Castelletto d'Orba\";\"main\"\n\"6535539\";\"Castelletto Monferrato\";\"main\"\n\"6535547\";\"Melazzo\";\"main\"\n\"6535553\";\"Ispani\";\"main\"\n\"6535556\";\"Pasturana\";\"main\"\n\"6535558\";\"Crevoladossola\";\"main\"\n\"6535563\";\"San Lorenzo in Banale\";\"main\"\n\"6535564\";\"Scurelle\";\"main\"\n\"6535566\";\"Spiazzo\";\"main\"\n\"6535572\";\"Caldiero\";\"main\"\n\"6535573\";\"Cazzano di Tramigna\";\"main\"\n\"6535574\";\"Isola Rizza\";\"main\"\n\"6535575\";\"Mezzane di Sotto\";\"main\"\n\"6535576\";\"Roverchiara\";\"main\"\n\"6535577\";\"San Pietro di Morubio\";\"main\"\n\"6535578\";\"Sorgà\";\"main\"\n\"6535578\";\"Sorga\";\"ascii\"\n\"6535580\";\"Cartigliano\";\"main\"\n\"6535581\";\"Gambellara\";\"main\"\n\"6535586\";\"San Germano dei Berici\";\"main\"\n\"6535587\";\"Sovizzo\";\"main\"\n\"6535588\";\"Zugliano\";\"main\"\n\"6535589\";\"Rocca Pietore\";\"main\"\n\"6535590\";\"Tambre\";\"main\"\n\"6535591\";\"Boara Pisani\";\"main\"\n\"6535592\";\"Cervarese Santa Croce\";\"main\"\n\"6535593\";\"Masi\";\"main\"\n\"6535594\";\"San Giorgio delle Pertiche\";\"main\"\n\"6535595\";\"Bagnolo di Po\";\"main\"\n\"6535597\";\"Majano\";\"main\"\n\"6535599\";\"Farra d'Isonzo\";\"main\"\n\"6535602\";\"San Possidonio\";\"main\"\n\"6535603\";\"Predappio\";\"main\"\n\"6535604\";\"Cartoceto\";\"main\"\n\"6535605\";\"Mercatino Conca\";\"main\"\n\"6535606\";\"Monte Porzio\";\"main\"\n\"6535607\";\"Serrungarina\";\"main\"\n\"6535608\";\"Barbara\";\"main\"\n\"6535609\";\"Castelleone di Suasa\";\"main\"\n\"6535611\";\"Force\";\"main\"\n\"6535613\";\"Filattiera\";\"main\"\n\"6535617\";\"Villa Collemandina\";\"main\"\n\"6535619\";\"Semproniano\";\"main\"\n\"6535621\";\"Villa San Giovanni in Tuscia\";\"main\"\n\"6535624\";\"Torre Cajetani\";\"main\"\n\"6535625\";\"Trivigliano\";\"main\"\n\"6535626\";\"Carinaro\";\"main\"\n\"6535627\";\"Castello del Matese\";\"main\"\n\"6535628\";\"Curti\";\"main\"\n\"6535629\";\"Piana di Monte Verna\";\"main\"\n\"6535630\";\"Villa di Briano\";\"main\"\n\"6535631\";\"Falciano del Massico\";\"main\"\n\"6535632\";\"Casapesenna\";\"main\"\n\"6535633\";\"Calvi\";\"main\"\n\"6535635\";\"San Nicola Manfredi\";\"main\"\n\"6535636\";\"Carbonara di Nola\";\"main\"\n\"6535637\";\"Massa di Somma\";\"main\"\n\"6535638\";\"Montella\";\"main\"\n\"6535639\";\"Pago del Vallo di Lauro\";\"main\"\n\"6535640\";\"Roccabascerana\";\"main\"\n\"6535642\";\"Vallesaccarda\";\"main\"\n\"6535643\";\"Felitto\";\"main\"\n\"6535644\";\"Bugnara\";\"main\"\n\"6535645\";\"Morino\";\"main\"\n\"6535648\";\"Roccamorice\";\"main\"\n\"6535650\";\"Palmoli\";\"main\"\n\"6535651\";\"Rocca San Giovanni\";\"main\"\n\"6535652\";\"Castro\";\"main\"\n\"6535654\";\"Settingiano\";\"main\"\n\"6535655\";\"Campo Calabro\";\"main\"\n\"6535656\";\"Maropati\";\"main\"\n\"6535657\";\"Oppido Mamertina\";\"main\"\n\"6535658\";\"Riace\";\"main\"\n\"6535659\";\"San Pietro di Caridà\";\"main\"\n\"6535659\";\"San Pietro di Carida\";\"ascii\"\n\"6535661\";\"Buseto Palizzolo\";\"main\"\n\"6535662\";\"Trappeto\";\"main\"\n\"6535663\";\"Blufi\";\"main\"\n\"6535664\";\"Alì Terme\";\"main\"\n\"6535664\";\"Ali Terme\";\"ascii\"\n\"6535665\";\"Graniti\";\"main\"\n\"6535666\";\"Limina\";\"main\"\n\"6535667\";\"Pace del Mela\";\"main\"\n\"6535668\";\"Rometta\";\"main\"\n\"6535671\";\"Viddalba\";\"main\"\n\"6535672\";\"Golfo Aranci\";\"main\"\n\"6535673\";\"Budoni\";\"main\"\n\"6535674\";\"Villanova Tulo\";\"main\"\n\"6535675\";\"Ollastra\";\"main\"\n\"6535682\";\"Ponderano\";\"main\"\n\"6535683\";\"Quaregna\";\"main\"\n\"6535687\";\"Viverone\";\"main\"\n\"6535688\";\"Zubiena\";\"main\"\n\"6535689\";\"Zumaglia\";\"main\"\n\"6535690\";\"Barzago\";\"main\"\n\"6535691\";\"Barzio\";\"main\"\n\"6535693\";\"Cernusco Lombardone\";\"main\"\n\"6535694\";\"Cesana Brianza\";\"main\"\n\"6535696\";\"Cremella\";\"main\"\n\"6535697\";\"Dolzago\";\"main\"\n\"6535698\";\"Ello\";\"main\"\n\"6535701\";\"Montevecchia\";\"main\"\n\"6535702\";\"Primaluna\";\"main\"\n\"6535703\";\"Sirone\";\"main\"\n\"6535706\";\"Viganò\";\"main\"\n\"6535706\";\"Vigano\";\"ascii\"\n\"6535708\";\"Borgo San Giovanni\";\"main\"\n\"6535709\";\"Caselle Landi\";\"main\"\n\"6535712\";\"Livraga\";\"main\"\n\"6535714\";\"Marudo\";\"main\"\n\"6535715\";\"Massalengo\";\"main\"\n\"6535716\";\"Merlino\";\"main\"\n\"6535717\";\"Mulazzano\";\"main\"\n\"6535718\";\"Salerano sul Lambro\";\"main\"\n\"6535719\";\"San Rocco al Porto\";\"main\"\n\"6535720\";\"Santo Stefano Lodigiano\";\"main\"\n\"6535721\";\"Somaglia\";\"main\"\n\"6535722\";\"Mondaino\";\"main\"\n\"6535723\";\"Monte Colombo\";\"main\"\n\"6535725\";\"Joppolo\";\"main\"\n\"6535726\";\"Zungri\";\"main\"\n\"6535734\";\"Montecrestese\";\"main\"\n\"6535739\";\"Trontano\";\"main\"\n\"6535740\";\"Calvi Risorta\";\"main\"\n\"6535742\";\"Pastorano\";\"main\"\n\"6535744\";\"Casciago\";\"main\"\n\"6535747\";\"Binago\";\"main\"\n\"6535748\";\"Cabiate\";\"main\"\n\"6535749\";\"Cagno\";\"main\"\n\"6535751\";\"Rodero\";\"main\"\n\"6535752\";\"Ronago\";\"main\"\n\"6535753\";\"San Fedele Intelvi\";\"main\"\n\"6535754\";\"Senna Comasco\";\"main\"\n\"6535755\";\"Sorico\";\"main\"\n\"6535756\";\"Tavernerio\";\"main\"\n\"6535757\";\"Turate\";\"main\"\n\"6535758\";\"Valmorea\";\"main\"\n\"6535763\";\"Civo\";\"main\"\n\"6535764\";\"Colorina\";\"main\"\n\"6535765\";\"Lanzada\";\"main\"\n\"6535767\";\"Noviglio\";\"main\"\n\"6535768\";\"Caponago\";\"main\"\n\"6535769\";\"Cerro al Lambro\";\"main\"\n\"6535770\";\"Cusago\";\"main\"\n\"6535772\";\"Pregnana Milanese\";\"main\"\n\"6535775\";\"Brembate di Sopra\";\"main\"\n\"6535776\";\"Castel Rozzone\";\"main\"\n\"6535777\";\"Torre Pallavicina\";\"main\"\n\"6535779\";\"Osio Sopra\";\"main\"\n\"6535780\";\"Pagazzano\";\"main\"\n\"6535781\";\"Paladina\";\"main\"\n\"6535783\";\"Pontirolo Nuovo\";\"main\"\n\"6535784\";\"Pradalunga\";\"main\"\n\"6535785\";\"Ranica\";\"main\"\n\"6535786\";\"Solza\";\"main\"\n\"6535787\";\"Azzano Mella\";\"main\"\n\"6535789\";\"Paitone\";\"main\"\n\"6535791\";\"Ceranova\";\"main\"\n\"6535793\";\"Cigognola\";\"main\"\n\"6535794\";\"Cura Carpignano\";\"main\"\n\"6535799\";\"Imer\";\"main\"\n\"6535801\";\"Nave San Rocco\";\"main\"\n\"6535803\";\"Pomarolo\";\"main\"\n\"6535806\";\"Banchette\";\"main\"\n\"6535808\";\"Lombriasco\";\"main\"\n\"6535811\";\"Marentino\";\"main\"\n\"6535816\";\"San Pietro Val Lemina\";\"main\"\n\"6535817\";\"San Sebastiano da Po\";\"main\"\n\"6535818\";\"San Secondo di Pinerolo\";\"main\"\n\"6535819\";\"Torrazza Piemonte\";\"main\"\n\"6535822\";\"Vaie\";\"main\"\n\"6535826\";\"Villarbasse\";\"main\"\n\"6535827\";\"Villar Dora\";\"main\"\n\"6535830\";\"Moncrivello\";\"main\"\n\"6535832\";\"Gattico\";\"main\"\n\"6535833\";\"Massino Visconti\";\"main\"\n\"6535834\";\"Nebbiuno\";\"main\"\n\"6535835\";\"Oleggio Castello\";\"main\"\n\"6535836\";\"Pettenasco\";\"main\"\n\"6535841\";\"Bernezzo\";\"main\"\n\"6535846\";\"Caramagna Piemonte\";\"main\"\n\"6535847\";\"Cardè\";\"main\"\n\"6535847\";\"Carde\";\"ascii\"\n\"6535853\";\"Grinzane Cavour\";\"main\"\n\"6535854\";\"Ceresole Alba\";\"main\"\n\"6535857\";\"Corneliano d'Alba\";\"main\"\n\"6535861\";\"Govone\";\"main\"\n\"6535865\";\"Mosso\";\"main\"\n\"6535867\";\"Cavagnolo\";\"main\"\n\"6535868\";\"Scena - Schenna\";\"main\"\n\"6544029\";\"Porto Cervo\";\"main\"\n\"6544029\";\"Porto Chervo\";\"other\"\n\"6544029\";\"Порто Черво\";\"other\"\n\"6559422\";\"Aci Trezza\";\"main\"\n\"6559422\";\"Achi-Trecca\";\"other\"\n\"6559422\";\"Ачи-Трецца\";\"other\"\n\"6697218\";\"Calerno\";\"main\"\n\"6950976\";\"Acitrezza\";\"main\"\n\"7302105\";\"Lavinio\";\"main\"\n\"3042091\";\"Saint Helier\";\"main\"\n\"3042091\";\"Sent-Khel'er\";\"other\"\n\"3042091\";\"Сент-Хельер\";\"other\"\n\"3487963\";\"Yallahs\";\"main\"\n\"3487963\";\"Yallahs Bay\";\"other\"\n\"3487963\";\"Yallahs Village\";\"other\"\n\"3488020\";\"Williamsfield\";\"main\"\n\"3488133\";\"Wakefield\";\"main\"\n\"3488180\";\"Ulster Spring\";\"main\"\n\"3488217\";\"Trinity Ville\";\"main\"\n\"3488380\";\"Stony Hill\";\"main\"\n\"3488465\";\"Spanish Town\";\"main\"\n\"3488465\";\"Saint Jago de la Vega\";\"other\"\n\"3488465\";\"Spanis Taunas\";\"other\"\n\"3488465\";\"Spaniš Taunas\";\"other\"\n\"3488465\";\"sbanysh tawn\";\"other\"\n\"3488465\";\"سبانيش تاون\";\"other\"\n\"3488465\";\"スパニッシュ・タウン\";\"other\"\n\"3488479\";\"Southfield\";\"main\"\n\"3488540\";\"Siloah\";\"main\"\n\"3488540\";\"Village of Shiloah\";\"other\"\n\"3488597\";\"Seaforth\";\"main\"\n\"3488597\";\"Seaforth Village\";\"other\"\n\"3488620\";\"Santa Cruz\";\"main\"\n\"3488635\";\"Sandy Bay\";\"main\"\n\"3488635\";\"Sandy Bay Village\";\"other\"\n\"3488726\";\"Runaway Bay\";\"main\"\n\"3488726\";\"Runaway Bay Settlement\";\"other\"\n\"3488726\";\"Runaway Bay Village\";\"other\"\n\"3488726\";\"Runaway Village\";\"other\"\n\"3488726\";\"Runnaway-Bay\";\"other\"\n\"3488777\";\"Rocky Point\";\"main\"\n\"3488809\";\"Riversdale\";\"main\"\n\"3488834\";\"Richmond\";\"main\"\n\"3488834\";\"Richmond Village\";\"other\"\n\"3488914\";\"Race Course\";\"main\"\n\"3488977\";\"Porus\";\"main\"\n\"3488980\";\"Port Royal\";\"main\"\n\"3488980\";\"ポート・ロイヤル\";\"other\"\n\"3488981\";\"Portmore\";\"main\"\n\"3488985\";\"Port Maria\";\"main\"\n\"3489005\";\"Port Antonio\";\"main\"\n\"3489005\";\"Port-Antonio\";\"other\"\n\"3489005\";\"Saint Francois\";\"other\"\n\"3489005\";\"Порт-Антонио\";\"other\"\n\"3489011\";\"Point Hill\";\"main\"\n\"3489062\";\"Petersfield\";\"main\"\n\"3489225\";\"Old Harbour Bay\";\"main\"\n\"3489227\";\"Old Harbour\";\"main\"\n\"3489227\";\"Old Harbor\";\"other\"\n\"3489239\";\"Ocho Rios\";\"main\"\n\"3489239\";\"Las Chorreras\";\"other\"\n\"3489239\";\"Ocho Rios Bay\";\"other\"\n\"3489297\";\"New Kingston\";\"main\"\n\"3489331\";\"Negril\";\"main\"\n\"3489331\";\"Negril Harbour\";\"other\"\n\"3489331\";\"Негрил\";\"other\"\n\"3489344\";\"Nain\";\"main\"\n\"3489440\";\"Morant Bay\";\"main\"\n\"3489440\";\"Morant\";\"other\"\n\"3489445\";\"Moore Town\";\"main\"\n\"3489445\";\"More Town\";\"other\"\n\"3489460\";\"Montego Bay\";\"main\"\n\"3489460\";\"Mantica Bahia\";\"other\"\n\"3489460\";\"Montego\";\"other\"\n\"3489460\";\"Montego Bejus\";\"other\"\n\"3489460\";\"Montego Bėjus\";\"other\"\n\"3489460\";\"Montego-Bej\";\"other\"\n\"3489460\";\"Монтего-Бей\";\"other\"\n\"3489460\";\"モンテゴ・ベイ\";\"other\"\n\"3489464\";\"Moneague\";\"main\"\n\"3489467\";\"Mona Heights\";\"main\"\n\"3489523\";\"May Pen\";\"main\"\n\"3489531\";\"Mavis Bank\";\"main\"\n\"3489531\";\"Mari Bank\";\"other\"\n\"3489555\";\"Maroon Town\";\"main\"\n\"3489555\";\"Camperdown\";\"other\"\n\"3489577\";\"Mandeville\";\"main\"\n\"3489577\";\"Mandevil'\";\"other\"\n\"3489577\";\"Мандевиль\";\"other\"\n\"3489582\";\"Manchioneal\";\"main\"\n\"3489603\";\"Malvern\";\"main\"\n\"3489633\";\"Maggotty\";\"main\"\n\"3489657\";\"Lucea\";\"main\"\n\"3489714\";\"Lluidas Vale\";\"main\"\n\"3489714\";\"Luidas Vale\";\"other\"\n\"3489758\";\"Lionel Town\";\"main\"\n\"3489760\";\"Linstead\";\"main\"\n\"3489829\";\"Lacovia\";\"main\"\n\"3489854\";\"Kingston\";\"main\"\n\"3489854\";\"Kin'nkston\";\"other\"\n\"3489854\";\"Κίνγκστον\";\"other\"\n\"3489854\";\"Кингстон\";\"other\"\n\"3489888\";\"Kellits\";\"main\"\n\"3489888\";\"Kellets\";\"other\"\n\"3489962\";\"Islington\";\"main\"\n\"3490031\";\"Hope Bay\";\"main\"\n\"3490031\";\"Hope\";\"other\"\n\"3490106\";\"Hayes\";\"main\"\n\"3490165\";\"Half Way Tree\";\"main\"\n\"3490293\";\"Gordon Town\";\"main\"\n\"3490318\";\"Golden Grove\";\"main\"\n\"3490368\";\"Gayle\";\"main\"\n\"3490368\";\"Gayle Village\";\"other\"\n\"3490520\";\"Falmouth\";\"main\"\n\"3490539\";\"Ewarton\";\"main\"\n\"3490616\";\"Easington\";\"main\"\n\"3490633\";\"Duncans\";\"main\"\n\"3490716\";\"Discovery Bay\";\"main\"\n\"3490716\";\"Dry Harbor\";\"other\"\n\"3490716\";\"Dry Harbour\";\"other\"\n\"3490716\";\"Puerto Bueno\";\"other\"\n\"3490758\";\"Darliston\";\"main\"\n\"3490758\";\"Darlingston\";\"other\"\n\"3490768\";\"Dalvey\";\"main\"\n\"3490768\";\"Dalvy\";\"other\"\n\"3490880\";\"Constant Spring\";\"main\"\n\"3490899\";\"Coleyville\";\"main\"\n\"3491007\";\"Chapelton\";\"main\"\n\"3491055\";\"Cascade\";\"main\"\n\"3491102\";\"Cambridge\";\"main\"\n\"3491102\";\"Cambridge Station\";\"other\"\n\"3491161\";\"Bull Savanna\";\"main\"\n\"3491175\";\"Buff Bay\";\"main\"\n\"3491293\";\"Bog Walk\";\"main\"\n\"3491327\";\"Bluefields\";\"main\"\n\"3491355\";\"Black River\";\"main\"\n\"3491381\";\"Bethel Town\";\"main\"\n\"3491448\";\"Bath\";\"main\"\n\"3491448\";\"The Bath\";\"other\"\n\"3491487\";\"Bamboo\";\"main\"\n\"3491487\";\"Excellent Town\";\"other\"\n\"3491501\";\"Balaclava\";\"main\"\n\"3491570\";\"Anchovy\";\"main\"\n\"3491570\";\"Anchovy Station\";\"other\"\n\"3491586\";\"Alligator Pond\";\"main\"\n\"3491586\";\"Alligator Pond Bay\";\"other\"\n\"3491586\";\"Alligator Pond Village\";\"other\"\n\"3491593\";\"Alexandria\";\"main\"\n\"3491602\";\"Albert Town\";\"main\"\n\"245915\";\"Zaḩar\";\"main\"\n\"245915\";\"Zahar\";\"ascii\"\n\"245939\";\"Yarqā\";\"main\"\n\"245939\";\"Yarqa\";\"ascii\"\n\"245939\";\"Yerqa\";\"other\"\n\"245989\";\"Waqqāş\";\"main\"\n\"245989\";\"Waqqas\";\"ascii\"\n\"245989\";\"Wakkas\";\"other\"\n\"246008\";\"Wādī Mūsá\";\"main\"\n\"246008\";\"Wadi Musa\";\"ascii\"\n\"246008\";\"Alji\";\"other\"\n\"246008\";\"Aljī\";\"other\"\n\"246008\";\"El-Gi\";\"other\"\n\"246008\";\"Elchi\";\"other\"\n\"246008\";\"Elji\";\"other\"\n\"246008\";\"Petra\";\"other\"\n\"246008\";\"Петра\";\"other\"\n\"246008\";\"وادي موسى\";\"other\"\n\"246013\";\"Wādī as Sīr\";\"main\"\n\"246013\";\"Wadi as Sir\";\"ascii\"\n\"246013\";\"Wadi Al Seer\";\"other\"\n\"246013\";\"Wadi Sir\";\"other\"\n\"246013\";\"Wadi es Sir\";\"other\"\n\"246013\";\"Wadi es Sīr\";\"other\"\n\"246202\";\"Umm Qays\";\"main\"\n\"246202\";\"Gadara\";\"other\"\n\"246202\";\"Gader\";\"other\"\n\"246202\";\"Gādēr\";\"other\"\n\"246202\";\"Mukes\";\"other\"\n\"246202\";\"Mukus\";\"other\"\n\"246202\";\"Um Qeis\";\"other\"\n\"246202\";\"Umm Qeis\";\"other\"\n\"246314\";\"Umm as Summāq\";\"main\"\n\"246314\";\"Umm as Summaq\";\"ascii\"\n\"246314\";\"Um el Semmaq\";\"other\"\n\"246314\";\"Um es Summaq\";\"other\"\n\"246314\";\"Um es Summāq\";\"other\"\n\"246345\";\"Umm al Qiţţayn\";\"main\"\n\"246345\";\"Umm al Qittayn\";\"ascii\"\n\"246345\";\"Um el Quttein\";\"other\"\n\"246345\";\"Umm el Quttein\";\"other\"\n\"246522\";\"Tibnah\";\"main\"\n\"246522\";\"Tibna\";\"other\"\n\"246522\";\"Tibne\";\"other\"\n\"246522\";\"Tibni\";\"other\"\n\"246725\";\"Sūf\";\"main\"\n\"246725\";\"Suf\";\"ascii\"\n\"247015\";\"Şammā\";\"main\"\n\"247015\";\"Samma\";\"ascii\"\n\"247015\";\"Sammeh\";\"other\"\n\"247061\";\"Sāl\";\"main\"\n\"247061\";\"Sal\";\"ascii\"\n\"247068\";\"Sākib\";\"main\"\n\"247068\";\"Sakib\";\"ascii\"\n\"247074\";\"Şakhrah\";\"main\"\n\"247074\";\"Sakhrah\";\"ascii\"\n\"247074\";\"Sakhra\";\"other\"\n\"247103\";\"Saḩam\";\"main\"\n\"247103\";\"Saham\";\"ascii\"\n\"247105\";\"Saḩāb\";\"main\"\n\"247105\";\"Sahab\";\"ascii\"\n\"247105\";\"Sakhab\";\"other\"\n\"247105\";\"Sehab\";\"other\"\n\"247105\";\"Сахаб\";\"other\"\n\"247176\";\"Şabḩā\";\"main\"\n\"247176\";\"Sabha\";\"ascii\"\n\"247176\";\"Sabhah\";\"other\"\n\"247176\";\"Şabḩah\";\"other\"\n\"247340\";\"Raymūn\";\"main\"\n\"247340\";\"Raymun\";\"ascii\"\n\"247340\";\"Reimun\";\"other\"\n\"247340\";\"Reimūn\";\"other\"\n\"247340\";\"Rimon\";\"other\"\n\"247496\";\"Qumaym\";\"main\"\n\"247496\";\"Qumeim\";\"other\"\n\"247659\";\"Qafqafā\";\"main\"\n\"247659\";\"Qafqafa\";\"ascii\"\n\"248250\";\"Malkā\";\"main\"\n\"248250\";\"Malka\";\"ascii\"\n\"248250\";\"Malqa\";\"other\"\n\"248250\";\"Malqá\";\"other\"\n\"248250\";\"Melka\";\"other\"\n\"248370\";\"Mādabā\";\"main\"\n\"248370\";\"Madaba\";\"ascii\"\n\"248370\";\"Madeba\";\"other\"\n\"248370\";\"Medeba\";\"other\"\n\"248370\";\"Meideva\";\"other\"\n\"248370\";\"Meidevā\";\"other\"\n\"248370\";\"Mādeba\";\"other\"\n\"248370\";\"mhafzt madba\";\"other\"\n\"248370\";\"Мадаба\";\"other\"\n\"248370\";\"מפת מידבא\";\"other\"\n\"248370\";\"محافظة مادبا\";\"other\"\n\"248414\";\"Kurayyimah\";\"main\"\n\"248414\";\"Kareime\";\"other\"\n\"248414\";\"Kereime\";\"other\"\n\"248414\";\"Kuraiyima\";\"other\"\n\"248414\";\"Kuraymah\";\"other\"\n\"248414\";\"Kureima\";\"other\"\n\"248414\";\"Kureiyima\";\"other\"\n\"248414\";\"Quraymah\";\"other\"\n\"248434\";\"Kitim\";\"main\"\n\"248627\";\"Kharjā\";\"main\"\n\"248627\";\"Kharja\";\"ascii\"\n\"248627\";\"Kherja\";\"other\"\n\"248719\";\"Kafr Sawm\";\"main\"\n\"248719\";\"Kufr Saum\";\"other\"\n\"248719\";\"Kufr Som\";\"other\"\n\"248719\";\"Kufr as Sawm\";\"other\"\n\"248734\";\"Kafr Asad\";\"main\"\n\"248734\";\"Kufr Asad\";\"other\"\n\"248734\";\"Kufr Esad\";\"other\"\n\"248738\";\"Kafr Abīl\";\"main\"\n\"248738\";\"Kafr Abil\";\"ascii\"\n\"248738\";\"Kefr Abil\";\"other\"\n\"248738\";\"Kufr Abil\";\"other\"\n\"248738\";\"Kufr Abîl\";\"other\"\n\"248803\";\"Judaytā\";\"main\"\n\"248803\";\"Judayta\";\"ascii\"\n\"248803\";\"Jedeita\";\"other\"\n\"248803\";\"Judeita\";\"other\"\n\"248803\";\"Judeitta\";\"other\"\n\"248843\";\"Jāwā\";\"main\"\n\"248843\";\"Jawa\";\"ascii\"\n\"248875\";\"Jarash\";\"main\"\n\"248875\";\"Djerash\";\"other\"\n\"248875\";\"Dzherash\";\"other\"\n\"248875\";\"Gerasa\";\"other\"\n\"248875\";\"Jerasa\";\"other\"\n\"248875\";\"Jerash\";\"other\"\n\"248875\";\"g'rs\";\"other\"\n\"248875\";\"jrsh\";\"other\"\n\"248875\";\"mhafzt jrsh\";\"other\"\n\"248875\";\"Джераш\";\"other\"\n\"248875\";\"ג'רש\";\"other\"\n\"248875\";\"جرش\";\"other\"\n\"248875\";\"محافظة جرش\";\"other\"\n\"248923\";\"‘Izrā\";\"main\"\n\"248923\";\"`Izra\";\"ascii\"\n\"248923\";\"`Azra\";\"other\"\n\"248923\";\"‘Azrā\";\"other\"\n\"248946\";\"Irbid\";\"main\"\n\"248946\";\"Arbela\";\"other\"\n\"248946\";\"Arbēla\";\"other\"\n\"248946\";\"arbd\";\"other\"\n\"248946\";\"Ирбид\";\"other\"\n\"248946\";\"אירביד\";\"other\"\n\"248946\";\"إربد\";\"other\"\n\"249184\";\"Ḩātim\";\"main\"\n\"249184\";\"Hatim\";\"ascii\"\n\"249184\";\"Hatem\";\"other\"\n\"249310\";\"Ḩalāwah\";\"main\"\n\"249310\";\"Halawah\";\"ascii\"\n\"249310\";\"Halawa\";\"other\"\n\"249310\";\"Ḥalāwa\";\"other\"\n\"249318\";\"Ḩakamā\";\"main\"\n\"249318\";\"Hakama\";\"ascii\"\n\"249318\";\"Hakamah\";\"other\"\n\"249318\";\"Hakema\";\"other\"\n\"249318\";\"Ḩakamah\";\"other\"\n\"249676\";\"Dayr Yūsuf\";\"main\"\n\"249676\";\"Dayr Yusuf\";\"ascii\"\n\"249676\";\"Deir Yusuf\";\"other\"\n\"249676\";\"Deir Yūsuf\";\"other\"\n\"249842\";\"Buşayrā\";\"main\"\n\"249842\";\"Busayra\";\"ascii\"\n\"249842\";\"Al Busayrah\";\"other\"\n\"249842\";\"Al Buşayrah\";\"other\"\n\"249842\";\"Busayrah\";\"other\"\n\"249842\";\"Buseira\";\"other\"\n\"249842\";\"Buşayrah\";\"other\"\n\"249842\";\"El Buseira\";\"other\"\n\"249842\";\"El Busera\";\"other\"\n\"249842\";\"بصيرا\";\"other\"\n\"249849\";\"Burmā\";\"main\"\n\"249849\";\"Burma\";\"ascii\"\n\"249930\";\"Bayt Yāfā\";\"main\"\n\"249930\";\"Bayt Yafa\";\"ascii\"\n\"249930\";\"Beit Yafa\";\"other\"\n\"249930\";\"Beit Yāfā\";\"other\"\n\"249933\";\"Bayt Īdis\";\"main\"\n\"249933\";\"Bayt Idis\";\"ascii\"\n\"249933\";\"Beit Idis\";\"other\"\n\"249933\";\"Beit Īdis\";\"other\"\n\"250052\";\"Balīlā\";\"main\"\n\"250052\";\"Balila\";\"ascii\"\n\"250090\";\"Az Zarqā’\";\"main\"\n\"250090\";\"Az Zarqa'\";\"ascii\"\n\"250090\";\"Kalaat el Zerka\";\"other\"\n\"250090\";\"Qal`at az Zarqa'\";\"other\"\n\"250090\";\"Qal`at ez Zerqa\";\"other\"\n\"250090\";\"Qal‘at az Zarqā’\";\"other\"\n\"250090\";\"Qal‘at ez Zerqa\";\"other\"\n\"250090\";\"Zarka\";\"other\"\n\"250090\";\"Zarqa\";\"other\"\n\"250090\";\"Zarqa'\";\"other\"\n\"250090\";\"Zarqā’\";\"other\"\n\"250090\";\"Zerka\";\"other\"\n\"250090\";\"Зарка\";\"other\"\n\"250090\";\"الزرقاء\";\"other\"\n\"250090\";\"زرقاء\";\"other\"\n\"250106\";\"‘Ayy\";\"main\"\n\"250106\";\"`Ayy\";\"ascii\"\n\"250106\";\"Aiy\";\"other\"\n\"250106\";\"Khirbat `Ai\";\"other\"\n\"250106\";\"Khirbat `Aiy\";\"other\"\n\"250106\";\"Khirbat ‘Ai\";\"other\"\n\"250106\";\"Khirbat ‘Aiy\";\"other\"\n\"250106\";\"`Ai\";\"other\"\n\"250106\";\"`Aie\";\"other\"\n\"250106\";\"‘Ai\";\"other\"\n\"250106\";\"‘Aie\";\"other\"\n\"250124\";\"‘Ayn Jannā\";\"main\"\n\"250124\";\"`Ayn Janna\";\"ascii\"\n\"250124\";\"`Ain Janna\";\"other\"\n\"250124\";\"`Ain Jenne\";\"other\"\n\"250124\";\"`Ayn Jana\";\"other\"\n\"250124\";\"‘Ain Janna\";\"other\"\n\"250124\";\"‘Ain Jenne\";\"other\"\n\"250124\";\"‘Ayn Janā\";\"other\"\n\"250152\";\"Aydūn\";\"main\"\n\"250152\";\"Aydun\";\"ascii\"\n\"250152\";\"Aidun\";\"other\"\n\"250152\";\"Aidūn\";\"other\"\n\"250152\";\"Eidun\";\"other\"\n\"250152\";\"Eidūn\";\"other\"\n\"250179\";\"Aţ Ţurrah\";\"main\"\n\"250179\";\"At Turrah\";\"ascii\"\n\"250179\";\"Et Turra\";\"other\"\n\"250179\";\"Eṭ Ṭurra\";\"other\"\n\"250179\";\"Turra\";\"other\"\n\"250186\";\"Aţ Ţayyibah\";\"main\"\n\"250186\";\"At Tayyibah\";\"ascii\"\n\"250186\";\"Et Taiyiba\";\"other\"\n\"250186\";\"Et Taiyibe\";\"other\"\n\"250186\";\"Eṭ Ṭaiyiba\";\"other\"\n\"250186\";\"Taibe\";\"other\"\n\"250186\";\"Taiyiba\";\"other\"\n\"250186\";\"Tayyibah\";\"other\"\n\"250186\";\"Ţayyibah\";\"other\"\n\"250187\";\"Aţ Ţayyibah\";\"main\"\n\"250187\";\"At Tayyibah\";\"ascii\"\n\"250187\";\"Khanzira\";\"other\"\n\"250187\";\"Khanzire\";\"other\"\n\"250187\";\"Khanzîra\";\"other\"\n\"250187\";\"Khanzīre\";\"other\"\n\"250187\";\"Khinzirah\";\"other\"\n\"250187\";\"Khinzīrah\";\"other\"\n\"250188\";\"Aţ Ţayyibah\";\"main\"\n\"250188\";\"At Tayyibah\";\"ascii\"\n\"250188\";\"Et Taiyiba\";\"other\"\n\"250188\";\"Et Taiyibe\";\"other\"\n\"250188\";\"Taiyiba\";\"other\"\n\"250188\";\"الطيبة\";\"other\"\n\"250198\";\"Aţ Ţafīlah\";\"main\"\n\"250198\";\"At Tafilah\";\"ascii\"\n\"250198\";\"At Tafila\";\"other\"\n\"250198\";\"Aṭ Ṭafīla\";\"other\"\n\"250198\";\"El Tafile\";\"other\"\n\"250198\";\"Et Tafila\";\"other\"\n\"250198\";\"Et Tafīla\";\"other\"\n\"250198\";\"Tafila\";\"other\"\n\"250198\";\"Tafile\";\"other\"\n\"250198\";\"Tafileh\";\"other\"\n\"250198\";\"Tafīla\";\"other\"\n\"250198\";\"Tofel\";\"other\"\n\"250198\";\"Tophel\";\"other\"\n\"250198\";\"Tufailah\";\"other\"\n\"250198\";\"الطفيلة\";\"other\"\n\"250258\";\"As Salţ\";\"main\"\n\"250258\";\"As Salt\";\"ascii\"\n\"250258\";\"Al-Salt\";\"other\"\n\"250258\";\"Es Salt\";\"other\"\n\"250258\";\"Ramoth Gil`ad\";\"other\"\n\"250258\";\"Rāmoth Gil‘ād\";\"other\"\n\"250258\";\"Salt\";\"other\"\n\"250294\";\"Ash Shajarah\";\"main\"\n\"250294\";\"Esh Shajara\";\"other\"\n\"250294\";\"Shajara\";\"other\"\n\"250294\";\"Shajarah\";\"other\"\n\"250336\";\"Ar Ramthā\";\"main\"\n\"250336\";\"Ar Ramtha\";\"ascii\"\n\"250336\";\"El Remteh\";\"other\"\n\"250336\";\"Er Remtha\";\"other\"\n\"250336\";\"Ramtha\";\"other\"\n\"250336\";\"alrmtha\";\"other\"\n\"250336\";\"الرمثا\";\"other\"\n\"250345\";\"Ar Rabbah\";\"main\"\n\"250345\";\"El Rebbe\";\"other\"\n\"250345\";\"Er Rabba\";\"other\"\n\"250345\";\"Rabba\";\"other\"\n\"250420\";\"‘Anjarah\";\"main\"\n\"250420\";\"`Anjarah\";\"ascii\"\n\"250420\";\"`Anjara\";\"other\"\n\"250420\";\"‘Anjara\";\"other\"\n\"250441\";\"Amman\";\"main\"\n\"250441\";\"Ama\";\"other\"\n\"250441\";\"Aman\";\"other\"\n\"250441\";\"Amanas\";\"other\"\n\"250441\";\"Amano\";\"other\"\n\"250441\";\"Ammon\";\"other\"\n\"250441\";\"Ammán\";\"other\"\n\"250441\";\"Amán - عمان\";\"other\"\n\"250441\";\"Amã\";\"other\"\n\"250441\";\"Philadelphia\";\"other\"\n\"250441\";\"Rabbah\";\"other\"\n\"250441\";\"Rabbath Ammon\";\"other\"\n\"250441\";\"`Amman\";\"other\"\n\"250441\";\"`Ammān\";\"other\"\n\"250441\";\"am'mana\";\"other\"\n\"250441\";\"amman\";\"other\"\n\"250441\";\"an man\";\"other\"\n\"250441\";\"anman\";\"other\"\n\"250441\";\"Αμμάν\";\"other\"\n\"250441\";\"Аман\";\"other\"\n\"250441\";\"Амман\";\"other\"\n\"250441\";\"Аммон\";\"other\"\n\"250441\";\"Աման\";\"other\"\n\"250441\";\"רבת עמון\";\"other\"\n\"250441\";\"عمان\";\"other\"\n\"250441\";\"عَمّان\";\"other\"\n\"250441\";\"ܥܡܢ\";\"other\"\n\"250441\";\"अम्मान\";\"other\"\n\"250441\";\"আম্মান\";\"other\"\n\"250441\";\"አማን\";\"other\"\n\"250441\";\"アンマン\";\"other\"\n\"250441\";\"安曼\";\"other\"\n\"250441\";\"암만\";\"other\"\n\"250461\";\"Al Quwaysimah\";\"main\"\n\"250461\";\"El Quweisima\";\"other\"\n\"250461\";\"El Quweisme\";\"other\"\n\"250462\";\"Al Quwayrah\";\"main\"\n\"250462\";\"El Quweira\";\"other\"\n\"250487\";\"Al Qaşr\";\"main\"\n\"250487\";\"Al Qasr\";\"ascii\"\n\"250487\";\"El Qaser\";\"other\"\n\"250487\";\"El Qaşer\";\"other\"\n\"250487\";\"Qasr\";\"other\"\n\"250487\";\"Qaşr\";\"other\"\n\"250540\";\"Al Mazār\";\"main\"\n\"250540\";\"Al Mazar\";\"ascii\"\n\"250540\";\"El Mazar\";\"other\"\n\"250540\";\"El Mazār\";\"other\"\n\"250540\";\"Mazar\";\"other\"\n\"250540\";\"Mazâr\";\"other\"\n\"250582\";\"Al Mafraq\";\"main\"\n\"250582\";\"El-Fedein\";\"other\"\n\"250582\";\"Kalat el Mafrak\";\"other\"\n\"250582\";\"Mafraq\";\"other\"\n\"250582\";\"Qal`at al Mafraq\";\"other\"\n\"250582\";\"Qal`at el Mafraq\";\"other\"\n\"250582\";\"Qal‘at al Mafraq\";\"other\"\n\"250582\";\"Qal‘at el Mafraq\";\"other\"\n\"250603\";\"Al Kittah\";\"main\"\n\"250603\";\"Al Kitta\";\"other\"\n\"250603\";\"Al Kittā\";\"other\"\n\"250603\";\"El Kitta\";\"other\"\n\"250603\";\"El-Kitte\";\"other\"\n\"250603\";\"Kitta\";\"other\"\n\"250623\";\"Al Karāmah\";\"main\"\n\"250623\";\"Al Karamah\";\"ascii\"\n\"250623\";\"El Karama\";\"other\"\n\"250623\";\"El Karamah\";\"other\"\n\"250623\";\"El Karameh\";\"other\"\n\"250623\";\"El Karāma\";\"other\"\n\"250623\";\"Karama Camp\";\"other\"\n\"250623\";\"Karameh Camp\";\"other\"\n\"250623\";\"Keramah\";\"other\"\n\"250623\";\"Kersam\";\"other\"\n\"250624\";\"Qīr Moāv\";\"main\"\n\"250624\";\"Qir Moav\";\"ascii\"\n\"250624\";\"Al Karak\";\"other\"\n\"250624\";\"Ehl'-Karak\";\"other\"\n\"250624\";\"El Kerak\";\"other\"\n\"250624\";\"Karak\";\"other\"\n\"250624\";\"Kerak\";\"other\"\n\"250624\";\"Kir Moab\";\"other\"\n\"250624\";\"Эль-Карак\";\"other\"\n\"250637\";\"Al Jubayhah\";\"main\"\n\"250637\";\"El Jebeihe\";\"other\"\n\"250637\";\"El Jubeiha\";\"other\"\n\"250637\";\"Jubeiha\";\"other\"\n\"250639\";\"Al Jīzah\";\"main\"\n\"250639\";\"Al Jizah\";\"ascii\"\n\"250639\";\"Jiza\";\"other\"\n\"250639\";\"Jize\";\"other\"\n\"250639\";\"Jîza\";\"other\"\n\"250639\";\"Jīze\";\"other\"\n\"250639\";\"Ziza\";\"other\"\n\"250649\";\"Al Jafr\";\"main\"\n\"250649\";\"El Jafr\";\"other\"\n\"250697\";\"Al Ḩamrā’\";\"main\"\n\"250697\";\"Al Hamra'\";\"ascii\"\n\"250697\";\"El Hamra\";\"other\"\n\"250697\";\"El Ḥamra\";\"other\"\n\"250738\";\"Al Bunayyāt ash Shamālīyah\";\"main\"\n\"250738\";\"Al Bunayyat ash Shamaliyah\";\"ascii\"\n\"250738\";\"Al Bunayyat\";\"other\"\n\"250738\";\"Al Bunayyāt\";\"other\"\n\"250738\";\"Buneiyat\";\"other\"\n\"250738\";\"Buneiyāt\";\"other\"\n\"250738\";\"El Buneiyat North\";\"other\"\n\"250738\";\"El Buneiyat Shamaliah\";\"other\"\n\"250774\";\"Aqaba\";\"main\"\n\"250774\";\"Akaba\";\"other\"\n\"250774\";\"Akabe\";\"other\"\n\"250774\";\"Al-'Aqabah\";\"other\"\n\"250774\";\"Al-‘Aqabah\";\"other\"\n\"250774\";\"Qal`at el `Aqaba\";\"other\"\n\"250774\";\"`Aqaba\";\"other\"\n\"250774\";\"akaba\";\"other\"\n\"250774\";\"ya ke ba\";\"other\"\n\"250774\";\"Акаба\";\"other\"\n\"250774\";\"עקבה\";\"other\"\n\"250774\";\"العقبة\";\"other\"\n\"250774\";\"عقبه\";\"other\"\n\"250774\";\"アカバ\";\"other\"\n\"250774\";\"亞喀巴\";\"other\"\n\"250799\";\"‘Ajlūn\";\"main\"\n\"250799\";\"`Ajlun\";\"ascii\"\n\"250799\";\"Adjlun\";\"other\"\n\"250821\";\"Adir\";\"main\"\n\"250821\";\"Ader\";\"other\"\n\"6946409\";\"Karak City\";\"main\"\n\"6946409\";\"Al-Karak\";\"other\"\n\"6946409\";\"Karak\";\"other\"\n\"6946409\";\"Kerak\";\"other\"\n\"6946409\";\"Карак\";\"other\"\n\"1847947\";\"Shingū\";\"main\"\n\"1847947\";\"Shingu\";\"ascii\"\n\"1847947\";\"Schingu\";\"other\"\n\"1847947\";\"Shingui\";\"other\"\n\"1847947\";\"Sing\";\"other\"\n\"1847947\";\"Singu\";\"other\"\n\"1847947\";\"Singū\";\"other\"\n\"1847947\";\"Синг\";\"other\"\n\"1847963\";\"Atsugi\";\"main\"\n\"1847963\";\"Acugi\";\"other\"\n\"1847963\";\"Atsuki\";\"other\"\n\"1847963\";\"Atugi\";\"other\"\n\"1847963\";\"asseugi si\";\"other\"\n\"1847963\";\"hou mu shi\";\"other\"\n\"1847963\";\"Ацуги\";\"other\"\n\"1847963\";\"厚木市\";\"other\"\n\"1847963\";\"아쓰기 시\";\"other\"\n\"1847966\";\"Akashi\";\"main\"\n\"1847966\";\"Akasi\";\"other\"\n\"1847966\";\"Акаси\";\"other\"\n\"1847968\";\"Zushi\";\"main\"\n\"1848004\";\"Zama\";\"main\"\n\"1848004\";\"Зама\";\"other\"\n\"1848016\";\"Yuza\";\"main\"\n\"1848016\";\"Yusa\";\"other\"\n\"1848016\";\"Yusamachi\";\"other\"\n\"1848016\";\"Yuzamachi\";\"other\"\n\"1848087\";\"Yukuhashi\";\"main\"\n\"1848087\";\"Yukihashi\";\"other\"\n\"1848087\";\"xing qiao shi\";\"other\"\n\"1848087\";\"行橋市\";\"other\"\n\"1848096\";\"Yūki\";\"main\"\n\"1848096\";\"Yuki\";\"ascii\"\n\"1848096\";\"Juki\";\"other\"\n\"1848096\";\"Юки\";\"other\"\n\"1848113\";\"Yugawara\";\"main\"\n\"1848169\";\"Yoshino-chō\";\"main\"\n\"1848169\";\"Yoshino-cho\";\"ascii\"\n\"1848169\";\"ji ye ting\";\"other\"\n\"1848169\";\"吉野町\";\"other\"\n\"1848188\";\"Yoshikawa\";\"main\"\n\"1848188\";\"Esikava\";\"other\"\n\"1848188\";\"Есикава\";\"other\"\n\"1848194\";\"Yoshii\";\"main\"\n\"1848210\";\"Yoshida\";\"main\"\n\"1848243\";\"Yorii\";\"main\"\n\"1848254\";\"Yono\";\"main\"\n\"1848266\";\"Yonakuni\";\"main\"\n\"1848266\";\"Jonaguni\";\"other\"\n\"1848266\";\"Yonaguni\";\"other\"\n\"1848266\";\"Йонагуни\";\"other\"\n\"1848277\";\"Yonago\";\"main\"\n\"1848277\";\"mi zi shi\";\"other\"\n\"1848277\";\"米子市\";\"other\"\n\"1848313\";\"Yokosuka\";\"main\"\n\"1848313\";\"Jokosuka\";\"other\"\n\"1848313\";\"Йокосука\";\"other\"\n\"1848354\";\"Yokohama-shi\";\"main\"\n\"1848354\";\"Iokogama\";\"other\"\n\"1848354\";\"Jokohama\";\"other\"\n\"1848354\";\"Jokohamo\";\"other\"\n\"1848354\";\"Jokokhama\";\"other\"\n\"1848354\";\"Yokohama\";\"other\"\n\"1848354\";\"heng bin shi\";\"other\"\n\"1848354\";\"yoa koa ha ma\";\"other\"\n\"1848354\";\"yokohama si\";\"other\"\n\"1848354\";\"ywkwhama\";\"other\"\n\"1848354\";\"ywqwhmh\";\"other\"\n\"1848354\";\"Јокохама\";\"other\"\n\"1848354\";\"Иокогама\";\"other\"\n\"1848354\";\"Йокохама\";\"other\"\n\"1848354\";\"יוקוהמה\";\"other\"\n\"1848354\";\"يوكوهاما\";\"other\"\n\"1848354\";\"โยะโกะฮะมะ\";\"other\"\n\"1848354\";\"იოკოჰამა\";\"other\"\n\"1848354\";\"よこはまし\";\"other\"\n\"1848354\";\"横浜市\";\"other\"\n\"1848354\";\"横滨市\";\"other\"\n\"1848354\";\"요코하마 시\";\"other\"\n\"1848373\";\"Yokkaichi\";\"main\"\n\"1848373\";\"Jokkaichi\";\"other\"\n\"1848373\";\"Yokkaiti\";\"other\"\n\"1848373\";\"Йоккаичи\";\"other\"\n\"1848382\";\"Youkaichi\";\"main\"\n\"1848382\";\"Yokaichicho\";\"other\"\n\"1848382\";\"Yokkaichi\";\"other\"\n\"1848382\";\"Yōkaichichō\";\"other\"\n\"1848439\";\"Yawata\";\"main\"\n\"1848439\";\"Yahata\";\"other\"\n\"1848439\";\"Yahatanosho\";\"other\"\n\"1848439\";\"Yahatanoshō\";\"other\"\n\"1848439\";\"Yahatasho\";\"other\"\n\"1848439\";\"Yahatashō\";\"other\"\n\"1848445\";\"Yatsushiro\";\"main\"\n\"1848445\";\"Jacusiro\";\"other\"\n\"1848445\";\"Yatusiro\";\"other\"\n\"1848445\";\"Яцусиро\";\"other\"\n\"1848447\";\"Yatsuo\";\"main\"\n\"1848482\";\"Yasugi\";\"main\"\n\"1848489\";\"Yasu\";\"main\"\n\"1848489\";\"Jasu\";\"other\"\n\"1848489\";\"Ясу\";\"other\"\n\"1848498\";\"Yashiro\";\"main\"\n\"1848499\";\"Yashio-shi\";\"main\"\n\"1848499\";\"Yashio\";\"other\"\n\"1848499\";\"ba chao\";\"other\"\n\"1848499\";\"ba chao shi\";\"other\"\n\"1848499\";\"八潮\";\"other\"\n\"1848499\";\"八潮市\";\"other\"\n\"1848522\";\"Yao\";\"main\"\n\"1848522\";\"Jao\";\"other\"\n\"1848522\";\"Yaocho\";\"other\"\n\"1848522\";\"Yaochō\";\"other\"\n\"1848522\";\"ba wei shi\";\"other\"\n\"1848522\";\"Яо\";\"other\"\n\"1848522\";\"八尾市\";\"other\"\n\"1848550\";\"Yanai\";\"main\"\n\"1848550\";\"Janai\";\"other\"\n\"1848550\";\"Янаи\";\"other\"\n\"1848573\";\"Yanagawa\";\"main\"\n\"1848573\";\"Janagava\";\"other\"\n\"1848573\";\"Янагава\";\"other\"\n\"1848633\";\"Yamasaki\";\"main\"\n\"1848689\";\"Yamaguchi-shi\";\"main\"\n\"1848689\";\"Jamaguci\";\"other\"\n\"1848689\";\"Jamaguti\";\"other\"\n\"1848689\";\"Jamaguči\";\"other\"\n\"1848689\";\"Yamaguchi\";\"other\"\n\"1848689\";\"Yamaguti\";\"other\"\n\"1848689\";\"yamaghwtshy\";\"other\"\n\"1848689\";\"yamaguchi si\";\"other\"\n\"1848689\";\"Ямагути\";\"other\"\n\"1848689\";\"ياماغوتشي\";\"other\"\n\"1848689\";\"やまぐちし\";\"other\"\n\"1848689\";\"山口市\";\"other\"\n\"1848689\";\"야마구치 시\";\"other\"\n\"1848705\";\"Yamaga\";\"main\"\n\"1848705\";\"Jamaga\";\"other\"\n\"1848705\";\"Ямага\";\"other\"\n\"1848774\";\"Yaizu\";\"main\"\n\"1848774\";\"Jaidzu\";\"other\"\n\"1848774\";\"Yaidu\";\"other\"\n\"1848774\";\"Yaizu Mati\";\"other\"\n\"1848774\";\"shao jin shi\";\"other\"\n\"1848774\";\"Яидзу\";\"other\"\n\"1848774\";\"焼津市\";\"other\"\n\"1848776\";\"Yaita\";\"main\"\n\"1848903\";\"Warabi\";\"main\"\n\"1848903\";\"Warabimachi\";\"other\"\n\"1848933\";\"Waki\";\"main\"\n\"1848933\";\"Wakimachi\";\"other\"\n\"1849053\";\"Utsunomiya-shi\";\"main\"\n\"1849053\";\"Ucunomija\";\"other\"\n\"1849053\";\"Utsunomiya\";\"other\"\n\"1849053\";\"usseunomiya si\";\"other\"\n\"1849053\";\"Уцуномия\";\"other\"\n\"1849053\";\"うつのみやし\";\"other\"\n\"1849053\";\"宇都宮市\";\"other\"\n\"1849053\";\"우쓰노미야 시\";\"other\"\n\"1849069\";\"Uto\";\"main\"\n\"1849069\";\"Udo\";\"other\"\n\"1849094\";\"Usuki\";\"main\"\n\"1849094\";\"jiu chu shi\";\"other\"\n\"1849094\";\"臼杵市\";\"other\"\n\"1849154\";\"Ushibuka\";\"main\"\n\"1849154\";\"Usibuka\";\"other\"\n\"1849183\";\"Ureshino\";\"main\"\n\"1849186\";\"Urayasu\";\"main\"\n\"1849186\";\"Urajasu\";\"other\"\n\"1849186\";\"pu an shi\";\"other\"\n\"1849186\";\"Ураясу\";\"other\"\n\"1849186\";\"浦安市\";\"other\"\n\"1849237\";\"Uozu\";\"main\"\n\"1849237\";\"Oozu\";\"other\"\n\"1849237\";\"Owatsu\";\"other\"\n\"1849237\";\"Uozo\";\"other\"\n\"1849299\";\"Umi\";\"main\"\n\"1849367\";\"Ujiie\";\"main\"\n\"1849372\";\"Uji\";\"main\"\n\"1849372\";\"Udzi\";\"other\"\n\"1849372\";\"Uji-cho\";\"other\"\n\"1849372\";\"Uji-chō\";\"other\"\n\"1849372\";\"yu zhi shi\";\"other\"\n\"1849372\";\"Удзи\";\"other\"\n\"1849372\";\"宇治市\";\"other\"\n\"1849407\";\"Uenohara\";\"main\"\n\"1849414\";\"Ueno\";\"main\"\n\"1849424\";\"Ueki\";\"main\"\n\"1849429\";\"Ueda\";\"main\"\n\"1849429\";\"Nagano\";\"other\"\n\"1849429\";\"Uehda\";\"other\"\n\"1849429\";\"shang tian shi\";\"other\"\n\"1849429\";\"ueda si\";\"other\"\n\"1849429\";\"Уэда\";\"other\"\n\"1849429\";\"上田市\";\"other\"\n\"1849429\";\"우에다 시\";\"other\"\n\"1849498\";\"Ube\";\"main\"\n\"1849498\";\"Ubi\";\"other\"\n\"1849498\";\"Убе\";\"other\"\n\"1849519\";\"Tsuyama\";\"main\"\n\"1849519\";\"Cujama\";\"other\"\n\"1849519\";\"Tuyama\";\"other\"\n\"1849519\";\"jin shan shi\";\"other\"\n\"1849519\";\"Цуяма\";\"other\"\n\"1849519\";\"津山市\";\"other\"\n\"1849539\";\"Tsushima\";\"main\"\n\"1849539\";\"Cusima\";\"other\"\n\"1849539\";\"Tsushima cho\";\"other\"\n\"1849539\";\"Tsushima chō\";\"other\"\n\"1849539\";\"Цусима\";\"other\"\n\"1849563\";\"Tsuruoka\";\"main\"\n\"1849563\";\"Curuoka\";\"other\"\n\"1849563\";\"Turuoka\";\"other\"\n\"1849563\";\"he gang shi\";\"other\"\n\"1849563\";\"Цуруока\";\"other\"\n\"1849563\";\"鶴岡市\";\"other\"\n\"1849584\";\"Tsurugi\";\"main\"\n\"1849592\";\"Tsuruga\";\"main\"\n\"1849592\";\"Curuga\";\"other\"\n\"1849592\";\"Turuga\";\"other\"\n\"1849592\";\"dun he shi\";\"other\"\n\"1849592\";\"sseuluga si\";\"other\"\n\"1849592\";\"Цуруга\";\"other\"\n\"1849592\";\"敦賀市\";\"other\"\n\"1849592\";\"쓰루가 시\";\"other\"\n\"1849647\";\"Tsuma\";\"main\"\n\"1849647\";\"Tuma\";\"other\"\n\"1849661\";\"Tsukumi\";\"main\"\n\"1849661\";\"Tukumi\";\"other\"\n\"1849706\";\"Tsukawaki\";\"main\"\n\"1849706\";\"Kusu\";\"other\"\n\"1849782\";\"Tsubata\";\"main\"\n\"1849788\";\"Tsubame\";\"main\"\n\"1849788\";\"Cubameh\";\"other\"\n\"1849788\";\"Tsubamemachi\";\"other\"\n\"1849788\";\"Цубамэ\";\"other\"\n\"1849796\";\"Tsu-shi\";\"main\"\n\"1849796\";\"Cu\";\"other\"\n\"1849796\";\"Tsu\";\"other\"\n\"1849796\";\"Tu\";\"other\"\n\"1849796\";\"jin shi\";\"other\"\n\"1849796\";\"sseu si\";\"other\"\n\"1849796\";\"Цу\";\"other\"\n\"1849796\";\"つし\";\"other\"\n\"1849796\";\"津市\";\"other\"\n\"1849796\";\"쓰 시\";\"other\"\n\"1849814\";\"Toyota\";\"main\"\n\"1849814\";\"Koromo\";\"other\"\n\"1849814\";\"Toyoda\";\"other\"\n\"1849814\";\"豊田\";\"other\"\n\"1849817\";\"Toyoshina\";\"main\"\n\"1849831\";\"Toyooka\";\"main\"\n\"1849837\";\"Toyonaka\";\"main\"\n\"1849845\";\"Toyokawa\";\"main\"\n\"1849845\";\"li chuan shi\";\"other\"\n\"1849845\";\"豊川市\";\"other\"\n\"1849846\";\"Toyohashi\";\"main\"\n\"1849846\";\"Tojokhashi\";\"other\"\n\"1849846\";\"Toyohasi\";\"other\"\n\"1849846\";\"Тойохаши\";\"other\"\n\"1849850\";\"Toyohama\";\"main\"\n\"1849876\";\"Toyama-shi\";\"main\"\n\"1849876\";\"Tojama\";\"other\"\n\"1849876\";\"Тояма\";\"other\"\n\"1849876\";\"とやまし\";\"other\"\n\"1849876\";\"富山市\";\"other\"\n\"1849892\";\"Tottori\";\"main\"\n\"1849904\";\"Tosu\";\"main\"\n\"1849904\";\"doseu si\";\"other\"\n\"1849904\";\"niao qi shi\";\"other\"\n\"1849904\";\"鳥栖市\";\"other\"\n\"1849904\";\"도스 시\";\"other\"\n\"1850004\";\"Tonoshō\";\"main\"\n\"1850004\";\"Tonosho\";\"ascii\"\n\"1850004\";\"Tonosyo\";\"other\"\n\"1850004\";\"Tonosyō\";\"other\"\n\"1850034\";\"Tondabayashi\";\"main\"\n\"1850034\";\"fu tian lin shi\";\"other\"\n\"1850034\";\"富田林市\";\"other\"\n\"1850091\";\"Tomioka\";\"main\"\n\"1850108\";\"Tomigusuku\";\"main\"\n\"1850108\";\"Gusuku\";\"other\"\n\"1850108\";\"Temigusuku\";\"other\"\n\"1850108\";\"Timigusuku\";\"other\"\n\"1850108\";\"Tomigusuki\";\"other\"\n\"1850147\";\"Tokyo\";\"main\"\n\"1850147\";\"Edo (historical)\";\"other\"\n\"1850147\";\"TYO\";\"other\"\n\"1850147\";\"Tochiu\";\"other\"\n\"1850147\";\"Tocio\";\"other\"\n\"1850147\";\"Tokija\";\"other\"\n\"1850147\";\"Tokijas\";\"other\"\n\"1850147\";\"Tokio\";\"other\"\n\"1850147\";\"Tokió\";\"other\"\n\"1850147\";\"Tokjo\";\"other\"\n\"1850147\";\"Toquio\";\"other\"\n\"1850147\";\"Toquio - dong jing\";\"other\"\n\"1850147\";\"Toquio - 東京\";\"other\"\n\"1850147\";\"Tòquio\";\"other\"\n\"1850147\";\"Tókýó\";\"other\"\n\"1850147\";\"Tóquio\";\"other\"\n\"1850147\";\"Tōkyō\";\"other\"\n\"1850147\";\"dokyo\";\"other\"\n\"1850147\";\"dong jing\";\"other\"\n\"1850147\";\"dong jing dou\";\"other\"\n\"1850147\";\"tokeiyw\";\"other\"\n\"1850147\";\"tokkiyo\";\"other\"\n\"1850147\";\"tokyo\";\"other\"\n\"1850147\";\"twkyw\";\"other\"\n\"1850147\";\"twqyw\";\"other\"\n\"1850147\";\"Τόκιο\";\"other\"\n\"1850147\";\"Токио\";\"other\"\n\"1850147\";\"Токё\";\"other\"\n\"1850147\";\"Токіо\";\"other\"\n\"1850147\";\"Տոկիո\";\"other\"\n\"1850147\";\"טוקיו\";\"other\"\n\"1850147\";\"توكيو\";\"other\"\n\"1850147\";\"توکیو\";\"other\"\n\"1850147\";\"طوكيو\";\"other\"\n\"1850147\";\"ܛܘܟܝܘ\";\"other\"\n\"1850147\";\"ܜܘܟܝܘ\";\"other\"\n\"1850147\";\"टोक्यो\";\"other\"\n\"1850147\";\"டோக்கியோ\";\"other\"\n\"1850147\";\"โตเกียว\";\"other\"\n\"1850147\";\"ტოკიო\";\"other\"\n\"1850147\";\"东京\";\"other\"\n\"1850147\";\"東京\";\"other\"\n\"1850147\";\"東京都\";\"other\"\n\"1850147\";\"도쿄\";\"other\"\n\"1850152\";\"Tokuyama\";\"main\"\n\"1850152\";\"Kakuyama\";\"other\"\n\"1850158\";\"Tokushima-shi\";\"main\"\n\"1850158\";\"Tokushima\";\"other\"\n\"1850158\";\"Tokushima - de dao shi\";\"other\"\n\"1850158\";\"Tokushima - 徳島市\";\"other\"\n\"1850158\";\"Tokusima\";\"other\"\n\"1850158\";\"Tokušima\";\"other\"\n\"1850158\";\"dokusima si\";\"other\"\n\"1850158\";\"Токусима\";\"other\"\n\"1850158\";\"とくしまし\";\"other\"\n\"1850158\";\"徳島市\";\"other\"\n\"1850158\";\"도쿠시마 시\";\"other\"\n\"1850181\";\"Tokorozawa\";\"main\"\n\"1850181\";\"Tokorosava\";\"other\"\n\"1850181\";\"suo ze shi\";\"other\"\n\"1850181\";\"Токоросава\";\"other\"\n\"1850181\";\"所沢市\";\"other\"\n\"1850185\";\"Tokoname\";\"main\"\n\"1850185\";\"Tokoname-cho\";\"other\"\n\"1850185\";\"Tokoname-chō\";\"other\"\n\"1850185\";\"Tokonameh\";\"other\"\n\"1850185\";\"chang hua shi\";\"other\"\n\"1850185\";\"Токонамэ\";\"other\"\n\"1850185\";\"常滑市\";\"other\"\n\"1850207\";\"Toki\";\"main\"\n\"1850207\";\"Toka\";\"other\"\n\"1850207\";\"Tokitsu-cho\";\"other\"\n\"1850207\";\"Tokitsu-chō\";\"other\"\n\"1850207\";\"tu qi shi\";\"other\"\n\"1850207\";\"Тока\";\"other\"\n\"1850207\";\"土岐市\";\"other\"\n\"1850217\";\"Tōkamachi\";\"main\"\n\"1850217\";\"Tokamachi\";\"ascii\"\n\"1850217\";\"Toka\";\"other\"\n\"1850217\";\"Tokamati\";\"other\"\n\"1850217\";\"Tōka\";\"other\"\n\"1850217\";\"Токамати\";\"other\"\n\"1850269\";\"Togitsu\";\"main\"\n\"1850269\";\"Tokitsu\";\"other\"\n\"1850307\";\"Tochio\";\"main\"\n\"1850307\";\"Tochiomachi\";\"other\"\n\"1850311\";\"Tochigi\";\"main\"\n\"1850311\";\"Totigi\";\"other\"\n\"1850311\";\"Тотиги\";\"other\"\n\"1850345\";\"Toba\";\"main\"\n\"1850345\";\"Тоба\";\"other\"\n\"1850396\";\"Tenri\";\"main\"\n\"1850396\";\"Tehnri\";\"other\"\n\"1850396\";\"Тэнри\";\"other\"\n\"1850405\";\"Tennō\";\"main\"\n\"1850405\";\"Tenno\";\"ascii\"\n\"1850472\";\"Tawaramoto\";\"main\"\n\"1850472\";\"Taharamoto\";\"other\"\n\"1850498\";\"Tatsuno\";\"main\"\n\"1850499\";\"Tatsuno\";\"main\"\n\"1850523\";\"Tateyama\";\"main\"\n\"1850523\";\"Hojo\";\"other\"\n\"1850523\";\"Hōjō\";\"other\"\n\"1850523\";\"Tateyamahojo\";\"other\"\n\"1850523\";\"Tateyamahozyo\";\"other\"\n\"1850523\";\"Tateyamahōjō\";\"other\"\n\"1850523\";\"Tateyamahōzyō\";\"other\"\n\"1850523\";\"guan shan\";\"other\"\n\"1850523\";\"館山\";\"other\"\n\"1850559\";\"Tatebayashi\";\"main\"\n\"1850589\";\"Tarumizu\";\"main\"\n\"1850589\";\"Tarumi\";\"other\"\n\"1850600\";\"Tarui\";\"main\"\n\"1850600\";\"Таруи\";\"other\"\n\"1850627\";\"Tanushimaru\";\"main\"\n\"1850630\";\"Tanuma\";\"main\"\n\"1850692\";\"Nishi-Tokyo-shi\";\"main\"\n\"1850692\";\"Hoya\";\"other\"\n\"1850692\";\"Hoya-shi\";\"other\"\n\"1850692\";\"Nishitokyo-shi\";\"other\"\n\"1850692\";\"Tanashi\";\"other\"\n\"1850692\";\"Tanashi-machi\";\"other\"\n\"1850692\";\"bao gu shi\";\"other\"\n\"1850692\";\"tian wu shi\";\"other\"\n\"1850692\";\"xi dong jing shi\";\"other\"\n\"1850692\";\"保谷市\";\"other\"\n\"1850692\";\"田無市\";\"other\"\n\"1850692\";\"西東京市\";\"other\"\n\"1850693\";\"Tanashi\";\"main\"\n\"1850707\";\"Tanabe\";\"main\"\n\"1850708\";\"Tanabe\";\"main\"\n\"1850708\";\"Tanabeh\";\"other\"\n\"1850708\";\"Танабэ\";\"other\"\n\"1850742\";\"Tamano\";\"main\"\n\"1850742\";\"Тамано\";\"other\"\n\"1850745\";\"Tamana\";\"main\"\n\"1850745\";\"Tamano\";\"other\"\n\"1850745\";\"Тамана\";\"other\"\n\"1850746\";\"Tamamura\";\"main\"\n\"1850818\";\"Taketoyo\";\"main\"\n\"1850818\";\"Taketoyocho\";\"other\"\n\"1850818\";\"Taketoyochō\";\"other\"\n\"1850834\";\"Takeo\";\"main\"\n\"1850834\";\"Такео\";\"other\"\n\"1850860\";\"Takehara\";\"main\"\n\"1850860\";\"Takekara\";\"other\"\n\"1850872\";\"Takefu\";\"main\"\n\"1850872\";\"Takebo\";\"other\"\n\"1850872\";\"Takebu\";\"other\"\n\"1850872\";\"Takehu\";\"other\"\n\"1850872\";\"wu sheng shi\";\"other\"\n\"1850872\";\"武生市\";\"other\"\n\"1850878\";\"Takedamachi\";\"main\"\n\"1850878\";\"Takeda\";\"other\"\n\"1850878\";\"Taketa\";\"other\"\n\"1850878\";\"Taketa-machi\";\"other\"\n\"1850892\";\"Takayama\";\"main\"\n\"1850892\";\"Takajama\";\"other\"\n\"1850892\";\"fei tuono gao shan\";\"other\"\n\"1850892\";\"gao shan\";\"other\"\n\"1850892\";\"takayama\";\"other\"\n\"1850892\";\"Такаяма\";\"other\"\n\"1850892\";\"たかやま\";\"other\"\n\"1850892\";\"飛騨の高山\";\"other\"\n\"1850892\";\"高山\";\"other\"\n\"1850910\";\"Takatsuki\";\"main\"\n\"1850910\";\"Takacuki\";\"other\"\n\"1850910\";\"Takatuki\";\"other\"\n\"1850910\";\"gao gui shi\";\"other\"\n\"1850910\";\"高槻市\";\"other\"\n\"1851002\";\"Takasaki\";\"main\"\n\"1851002\";\"gao qi shi\";\"other\"\n\"1851002\";\"高崎市\";\"other\"\n\"1851012\";\"Takarazuka\";\"main\"\n\"1851032\";\"Takaoka\";\"main\"\n\"1851068\";\"Takanabe\";\"main\"\n\"1851068\";\"Takanabecho\";\"other\"\n\"1851068\";\"Takanabechō\";\"other\"\n\"1851100\";\"Takamatsu-shi\";\"main\"\n\"1851100\";\"Takamacu\";\"other\"\n\"1851100\";\"Takamatsu\";\"other\"\n\"1851100\";\"Takamatu\";\"other\"\n\"1851100\";\"dakamasseu si\";\"other\"\n\"1851100\";\"Такамацу\";\"other\"\n\"1851100\";\"たかまつし\";\"other\"\n\"1851100\";\"高松市\";\"other\"\n\"1851100\";\"다카마쓰 시\";\"other\"\n\"1851125\";\"Takaishi\";\"main\"\n\"1851125\";\"Takaishi-kita\";\"other\"\n\"1851125\";\"Takashi-kita\";\"other\"\n\"1851137\";\"Takahashi\";\"main\"\n\"1851137\";\"Takahasi\";\"other\"\n\"1851137\";\"Takakhasi\";\"other\"\n\"1851137\";\"Такахаси\";\"other\"\n\"1851155\";\"Takahama\";\"main\"\n\"1851155\";\"Takahama-cho\";\"other\"\n\"1851155\";\"Takahama-chō\";\"other\"\n\"1851155\";\"Takakhama\";\"other\"\n\"1851155\";\"Такахама\";\"other\"\n\"1851170\";\"Bungo-Takada-shi\";\"main\"\n\"1851170\";\"Bungo-Takada\";\"other\"\n\"1851170\";\"Bungo-Takata\";\"other\"\n\"1851170\";\"Takata\";\"other\"\n\"1851170\";\"gao tian\";\"other\"\n\"1851170\";\"li hou gao tian\";\"other\"\n\"1851170\";\"li hou gao tian shi\";\"other\"\n\"1851170\";\"豊後高田\";\"other\"\n\"1851170\";\"豊後高田市\";\"other\"\n\"1851170\";\"高田\";\"other\"\n\"1851193\";\"Tajimi\";\"main\"\n\"1851193\";\"Tadimi\";\"other\"\n\"1851193\";\"Tajima\";\"other\"\n\"1851193\";\"Tajumi\";\"other\"\n\"1851193\";\"Tazimi\";\"other\"\n\"1851259\";\"Tahara\";\"main\"\n\"1851259\";\"Tawara\";\"other\"\n\"1851273\";\"Tagawa\";\"main\"\n\"1851273\";\"Tagava\";\"other\"\n\"1851273\";\"Takawa\";\"other\"\n\"1851273\";\"Тагава\";\"other\"\n\"1851282\";\"Tadotsu\";\"main\"\n\"1851282\";\"Tadotsucho\";\"other\"\n\"1851282\";\"Tadotsuchō\";\"other\"\n\"1851307\";\"Tachikawa\";\"main\"\n\"1851307\";\"Tatikawa\";\"other\"\n\"1851348\";\"Suzuka\";\"main\"\n\"1851348\";\"Kambe\";\"other\"\n\"1851348\";\"ling lu shi\";\"other\"\n\"1851348\";\"鈴鹿市\";\"other\"\n\"1851357\";\"Suzaka\";\"main\"\n\"1851357\";\"Susaka\";\"other\"\n\"1851368\";\"Suwa\";\"main\"\n\"1851368\";\"Kamisuwa\";\"other\"\n\"1851368\";\"Suva\";\"other\"\n\"1851368\";\"Сува\";\"other\"\n\"1851390\";\"Susaki\";\"main\"\n\"1851426\";\"Sumoto\";\"main\"\n\"1851426\";\"Сумото\";\"other\"\n\"1851462\";\"Sukumo\";\"main\"\n\"1851483\";\"Suita\";\"main\"\n\"1851483\";\"Suika\";\"other\"\n\"1851483\";\"chui tian shi\";\"other\"\n\"1851483\";\"seu-ita si\";\"other\"\n\"1851483\";\"Суита\";\"other\"\n\"1851483\";\"吹田市\";\"other\"\n\"1851483\";\"스이타 시\";\"other\"\n\"1851494\";\"Suibara\";\"main\"\n\"1851504\";\"Sugito\";\"main\"\n\"1851542\";\"Sueyoshi\";\"main\"\n\"1851604\";\"Sōka\";\"main\"\n\"1851604\";\"Soka\";\"ascii\"\n\"1851604\";\"Sok\";\"other\"\n\"1851604\";\"Сок\";\"other\"\n\"1851606\";\"Sōja\";\"main\"\n\"1851606\";\"Soja\";\"ascii\"\n\"1851606\";\"Sozya\";\"other\"\n\"1851606\";\"Sōzya\";\"other\"\n\"1851622\";\"Sobue\";\"main\"\n\"1851711\";\"Shōbu\";\"main\"\n\"1851711\";\"Shobu\";\"ascii\"\n\"1851711\";\"Sebu\";\"other\"\n\"1851711\";\"Себу\";\"other\"\n\"1851713\";\"Shōbara\";\"main\"\n\"1851713\";\"Shobara\";\"ascii\"\n\"1851717\";\"Shizuoka-shi\";\"main\"\n\"1851717\";\"Shizuoka\";\"other\"\n\"1851717\";\"Siduoka\";\"other\"\n\"1851717\";\"Sidzuoka\";\"other\"\n\"1851717\";\"Sizuoka\";\"other\"\n\"1851717\";\"jing gang shi\";\"other\"\n\"1851717\";\"shyzwawka\";\"other\"\n\"1851717\";\"sijeuoka si\";\"other\"\n\"1851717\";\"Ŝizuoka\";\"other\"\n\"1851717\";\"Šizuoka\";\"other\"\n\"1851717\";\"Сидзуока\";\"other\"\n\"1851717\";\"شيزوأوكا\";\"other\"\n\"1851717\";\"しずおかし\";\"other\"\n\"1851717\";\"静岡市\";\"other\"\n\"1851717\";\"靜岡市\";\"other\"\n\"1851717\";\"시즈오카 시\";\"other\"\n\"1851813\";\"Shirone\";\"main\"\n\"1851883\";\"Shiraoka\";\"main\"\n\"1851935\";\"Shirahama\";\"main\"\n\"1851935\";\"Shirahama-ku\";\"other\"\n\"1851935\";\"Shirakhama\";\"other\"\n\"1851935\";\"Ширахама\";\"other\"\n\"1851952\";\"Shiozawa\";\"main\"\n\"1852003\";\"Shiojiri\";\"main\"\n\"1852003\";\"Sioziri\";\"other\"\n\"1852046\";\"Shinshiro\";\"main\"\n\"1852102\";\"Shinichi\";\"main\"\n\"1852109\";\"Shingū\";\"main\"\n\"1852109\";\"Shingu\";\"ascii\"\n\"1852109\";\"Sing\";\"other\"\n\"1852109\";\"Singu\";\"other\"\n\"1852109\";\"Singū\";\"other\"\n\"1852109\";\"Синг\";\"other\"\n\"1852140\";\"Shinagawa-ku\";\"main\"\n\"1852140\";\"Shinagawa\";\"other\"\n\"1852140\";\"pin chuan\";\"other\"\n\"1852140\";\"pin chuan qu\";\"other\"\n\"1852140\";\"品川\";\"other\"\n\"1852140\";\"品川区\";\"other\"\n\"1852225\";\"Shimonoseki\";\"main\"\n\"1852225\";\"Simonoseki\";\"other\"\n\"1852225\";\"Симоносеки\";\"other\"\n\"1852347\";\"Shimodate\";\"main\"\n\"1852347\";\"Simodate\";\"other\"\n\"1852357\";\"Shimoda\";\"main\"\n\"1852357\";\"Simoda\";\"other\"\n\"1852357\";\"Симода\";\"other\"\n\"1852383\";\"Shimminatochō\";\"main\"\n\"1852383\";\"Shimminatocho\";\"ascii\"\n\"1852383\";\"Shinkomachi\";\"other\"\n\"1852383\";\"Shinkōmachi\";\"other\"\n\"1852385\";\"Shimminato\";\"main\"\n\"1852385\";\"Shinminato\";\"other\"\n\"1852472\";\"Shimada\";\"main\"\n\"1852472\";\"Simada\";\"other\"\n\"1852472\";\"Симада\";\"other\"\n\"1852479\";\"Shimabara\";\"main\"\n\"1852479\";\"Simabara\";\"other\"\n\"1852502\";\"Shiki\";\"main\"\n\"1852502\";\"Siki\";\"other\"\n\"1852502\";\"zhi mu shi\";\"other\"\n\"1852502\";\"Сики\";\"other\"\n\"1852502\";\"志木市\";\"other\"\n\"1852561\";\"Shido\";\"main\"\n\"1852588\";\"Shibushi\";\"main\"\n\"1852588\";\"Sibusi\";\"other\"\n\"1852595\";\"Shibukawa\";\"main\"\n\"1852607\";\"Shibata\";\"main\"\n\"1852607\";\"sibata\";\"other\"\n\"1852607\";\"Шибата\";\"other\"\n\"1852663\";\"Seto\";\"main\"\n\"1852663\";\"Setu\";\"other\"\n\"1852663\";\"lai hu shi\";\"other\"\n\"1852663\";\"Сету\";\"other\"\n\"1852663\";\"瀬戸市\";\"other\"\n\"1852673\";\"Setaka\";\"main\"\n\"1852673\";\"Sedaka\";\"other\"\n\"1852736\";\"Sendai\";\"main\"\n\"1852736\";\"Sendaj\";\"other\"\n\"1852736\";\"Sendajus\";\"other\"\n\"1852736\";\"chuan nei\";\"other\"\n\"1852736\";\"chuan nei shi\";\"other\"\n\"1852736\";\"sendai si\";\"other\"\n\"1852736\";\"sndayy\";\"other\"\n\"1852736\";\"Сендай\";\"other\"\n\"1852736\";\"Сендај\";\"other\"\n\"1852736\";\"سندائي\";\"other\"\n\"1852736\";\"川内\";\"other\"\n\"1852736\";\"川内市\";\"other\"\n\"1852736\";\"센다이 시\";\"other\"\n\"1852849\";\"Satte\";\"main\"\n\"1852899\";\"Sasebo\";\"main\"\n\"1852899\";\"Sasebum\";\"other\"\n\"1852899\";\"Saseho\";\"other\"\n\"1852899\";\"sasebo si\";\"other\"\n\"1852899\";\"zuo shi bao shi\";\"other\"\n\"1852899\";\"Сасебо\";\"other\"\n\"1852899\";\"佐世保市\";\"other\"\n\"1852899\";\"사세보 시\";\"other\"\n\"1852901\";\"Sasayama\";\"main\"\n\"1852901\";\"Sasajama\";\"other\"\n\"1852901\";\"Сасаяма\";\"other\"\n\"1852915\";\"Sasaguri\";\"main\"\n\"1852964\";\"Sano\";\"main\"\n\"1852964\";\"Sana\";\"other\"\n\"1852964\";\"Сана\";\"other\"\n\"1852984\";\"Sanjō\";\"main\"\n\"1852984\";\"Sanjo\";\"ascii\"\n\"1852984\";\"Sandscho\";\"other\"\n\"1852984\";\"Sandyo\";\"other\"\n\"1852984\";\"Sandze\";\"other\"\n\"1852984\";\"Sanzyo\";\"other\"\n\"1852984\";\"Sanzyō\";\"other\"\n\"1852984\";\"Сандзе\";\"other\"\n\"1853008\";\"Sanda\";\"main\"\n\"1853008\";\"Санда\";\"other\"\n\"1853066\";\"Sakurai\";\"main\"\n\"1853066\";\"Sakuri\";\"other\"\n\"1853066\";\"Сакураи\";\"other\"\n\"1853081\";\"Saku\";\"main\"\n\"1853140\";\"Sakata\";\"main\"\n\"1853140\";\"Саката\";\"other\"\n\"1853174\";\"Sakaiminato\";\"main\"\n\"1853174\";\"Sakae\";\"other\"\n\"1853174\";\"Sakai\";\"other\"\n\"1853190\";\"Sakaide\";\"main\"\n\"1853190\";\"Sakaide-cho\";\"other\"\n\"1853190\";\"Sakaide-chō\";\"other\"\n\"1853190\";\"Sakaidecho\";\"other\"\n\"1853190\";\"Sakaidechō\";\"other\"\n\"1853192\";\"Sakai\";\"main\"\n\"1853193\";\"Sakai\";\"main\"\n\"1853193\";\"Сакаи\";\"other\"\n\"1853195\";\"Sakai\";\"main\"\n\"1853195\";\"Sacaia\";\"other\"\n\"1853195\";\"Sacaium\";\"other\"\n\"1853195\";\"jie shi\";\"other\"\n\"1853195\";\"sakai si\";\"other\"\n\"1853195\";\"Сакаи\";\"other\"\n\"1853195\";\"堺市\";\"other\"\n\"1853195\";\"사카이 시\";\"other\"\n\"1853209\";\"Sakado\";\"main\"\n\"1853209\";\"ban hu shi\";\"other\"\n\"1853209\";\"坂戸市\";\"other\"\n\"1853237\";\"Saiki\";\"main\"\n\"1853237\";\"Saeki\";\"other\"\n\"1853280\";\"Sagara\";\"main\"\n\"1853295\";\"Sagamihara\";\"main\"\n\"1853295\";\"Sagamikhare\";\"other\"\n\"1853295\";\"xiang mo yuan shi\";\"other\"\n\"1853295\";\"Сагамихаре\";\"other\"\n\"1853295\";\"相模原市\";\"other\"\n\"1853303\";\"Saga-shi\";\"main\"\n\"1853303\";\"Saga\";\"other\"\n\"1853303\";\"Saga Japonija\";\"other\"\n\"1853303\";\"zuo he\";\"other\"\n\"1853303\";\"Сага Япония\";\"other\"\n\"1853303\";\"さがし\";\"other\"\n\"1853303\";\"佐賀\";\"other\"\n\"1853303\";\"佐賀市\";\"other\"\n\"1853338\";\"Sabae\";\"main\"\n\"1853338\";\"qing jiang shi\";\"other\"\n\"1853338\";\"鯖江市\";\"other\"\n\"1853354\";\"Ryūō\";\"main\"\n\"1853354\";\"Ryuo\";\"ascii\"\n\"1853371\";\"Ryōtsu\";\"main\"\n\"1853371\";\"Ryotsu\";\"ascii\"\n\"1853371\";\"Ryotu\";\"other\"\n\"1853371\";\"Ryozu\";\"other\"\n\"1853371\";\"Ryōzu\";\"other\"\n\"1853433\";\"Ōzu\";\"main\"\n\"1853433\";\"Ozu\";\"ascii\"\n\"1853433\";\"Odzu\";\"other\"\n\"1853433\";\"Otsu\";\"other\"\n\"1853433\";\"Одзу\";\"other\"\n\"1853483\";\"Oyama\";\"main\"\n\"1853483\";\"Ojama\";\"other\"\n\"1853483\";\"Ояма\";\"other\"\n\"1853486\";\"Ōyama\";\"main\"\n\"1853486\";\"Oyama\";\"ascii\"\n\"1853514\";\"Owase\";\"main\"\n\"1853514\";\"Otaka\";\"other\"\n\"1853514\";\"Ovaseh\";\"other\"\n\"1853514\";\"Owashi\";\"other\"\n\"1853514\";\"Овасэ\";\"other\"\n\"1853564\";\"Ōtsuki\";\"main\"\n\"1853564\";\"Otsuki\";\"ascii\"\n\"1853564\";\"Ocuki\";\"other\"\n\"1853564\";\"Оцуки\";\"other\"\n\"1853574\";\"Ōtsu-shi\";\"main\"\n\"1853574\";\"Otsu-shi\";\"ascii\"\n\"1853574\";\"Ocu\";\"other\"\n\"1853574\";\"Otsu\";\"other\"\n\"1853574\";\"Otu\";\"other\"\n\"1853574\";\"da jin shi\";\"other\"\n\"1853574\";\"osseu si\";\"other\"\n\"1853574\";\"Ócu\";\"other\"\n\"1853574\";\"Ōtsu\";\"other\"\n\"1853574\";\"Ōtu\";\"other\"\n\"1853574\";\"Оцу\";\"other\"\n\"1853574\";\"おおつし\";\"other\"\n\"1853574\";\"大津市\";\"other\"\n\"1853574\";\"오쓰 시\";\"other\"\n\"1853662\";\"Ōtake\";\"main\"\n\"1853662\";\"Otake\";\"ascii\"\n\"1853662\";\"Otakeh\";\"other\"\n\"1853662\";\"Отакэ\";\"other\"\n\"1853677\";\"Ōta\";\"main\"\n\"1853677\";\"Ota\";\"ascii\"\n\"1853677\";\"Ота\";\"other\"\n\"1853909\";\"Ōsaka-shi\";\"main\"\n\"1853909\";\"Osaka-shi\";\"ascii\"\n\"1853909\";\"OSA\";\"other\"\n\"1853909\";\"Osaca\";\"other\"\n\"1853909\";\"Osaca - da ban shi\";\"other\"\n\"1853909\";\"Osaca - 大阪市\";\"other\"\n\"1853909\";\"Osaka\";\"other\"\n\"1853909\";\"Osako\";\"other\"\n\"1853909\";\"Oszaka\";\"other\"\n\"1853909\";\"awsaka\";\"other\"\n\"1853909\";\"awzaka\";\"other\"\n\"1853909\";\"da ban shi\";\"other\"\n\"1853909\";\"osaka\";\"other\"\n\"1853909\";\"osaka si\";\"other\"\n\"1853909\";\"xo sa ka\";\"other\"\n\"1853909\";\"ywsaka\";\"other\"\n\"1853909\";\"Ósaka\";\"other\"\n\"1853909\";\"Ószaka\";\"other\"\n\"1853909\";\"Ōsaka\";\"other\"\n\"1853909\";\"Осака\";\"other\"\n\"1853909\";\"אוסקה\";\"other\"\n\"1853909\";\"أوساكا\";\"other\"\n\"1853909\";\"ئوساكا\";\"other\"\n\"1853909\";\"اوزاکا\";\"other\"\n\"1853909\";\"ওসাকা\";\"other\"\n\"1853909\";\"โอซะกะ\";\"other\"\n\"1853909\";\"ოსაკა\";\"other\"\n\"1853909\";\"おおさかし\";\"other\"\n\"1853909\";\"大阪市\";\"other\"\n\"1853909\";\"오사카 시\";\"other\"\n\"1853992\";\"Onomichi\";\"main\"\n\"1853992\";\"Onomiti\";\"other\"\n\"1853992\";\"onomichi si\";\"other\"\n\"1853992\";\"wei dao shi\";\"other\"\n\"1853992\";\"尾道市\";\"other\"\n\"1853992\";\"오노미치 시\";\"other\"\n\"1854018\";\"Onoda\";\"main\"\n\"1854022\";\"Ono\";\"main\"\n\"1854022\";\"Оно\";\"other\"\n\"1854026\";\"Ono\";\"main\"\n\"1854026\";\"Onocho\";\"other\"\n\"1854026\";\"Onochō\";\"other\"\n\"1854026\";\"Оно\";\"other\"\n\"1854028\";\"Ōno\";\"main\"\n\"1854028\";\"Ono\";\"ascii\"\n\"1854028\";\"Hama\";\"other\"\n\"1854028\";\"Оно\";\"other\"\n\"1854083\";\"Ōmuta\";\"main\"\n\"1854083\";\"Omuta\";\"ascii\"\n\"1854083\";\"Omuda\";\"other\"\n\"1854083\";\"da mou tian shi\";\"other\"\n\"1854083\";\"Ōmuda\";\"other\"\n\"1854083\";\"Омута\";\"other\"\n\"1854083\";\"大牟田市\";\"other\"\n\"1854093\";\"Ōmura\";\"main\"\n\"1854093\";\"Omura\";\"ascii\"\n\"1854093\";\"Омура\";\"other\"\n\"1854162\";\"Ōme\";\"main\"\n\"1854162\";\"Ome\";\"ascii\"\n\"1854162\";\"Оме\";\"other\"\n\"1854177\";\"Ōmama\";\"main\"\n\"1854177\";\"Omama\";\"ascii\"\n\"1854186\";\"Ōmachi\";\"main\"\n\"1854186\";\"Omachi\";\"ascii\"\n\"1854186\";\"da ting\";\"other\"\n\"1854186\";\"大町\";\"other\"\n\"1854246\";\"Ōkuchi\";\"main\"\n\"1854246\";\"Okuchi\";\"ascii\"\n\"1854246\";\"Oguchi\";\"other\"\n\"1854246\";\"Okuti\";\"other\"\n\"1854246\";\"Ōguchi\";\"other\"\n\"1854246\";\"Ōkuti\";\"other\"\n\"1854371\";\"Okegawa\";\"main\"\n\"1854371\";\"Okugawamachi\";\"other\"\n\"1854371\";\"tong chuan shi\";\"other\"\n\"1854371\";\"桶川市\";\"other\"\n\"1854376\";\"Okazaki\";\"main\"\n\"1854376\";\"Okadzaki\";\"other\"\n\"1854376\";\"gang qi shi\";\"other\"\n\"1854376\";\"okajaki si\";\"other\"\n\"1854376\";\"Окадзаки\";\"other\"\n\"1854376\";\"岡崎市\";\"other\"\n\"1854376\";\"오카자키 시\";\"other\"\n\"1854383\";\"Okayama-shi\";\"main\"\n\"1854383\";\"Okajama\";\"other\"\n\"1854383\";\"Okayama\";\"other\"\n\"1854383\";\"okayama si\";\"other\"\n\"1854383\";\"Окаяма\";\"other\"\n\"1854383\";\"おかやまし\";\"other\"\n\"1854383\";\"岡山市\";\"other\"\n\"1854383\";\"오카야마 시\";\"other\"\n\"1854384\";\"Okaya\";\"main\"\n\"1854384\";\"Hirano\";\"other\"\n\"1854405\";\"Ōkawa\";\"main\"\n\"1854405\";\"Okawa\";\"ascii\"\n\"1854405\";\"Okava\";\"other\"\n\"1854405\";\"Окава\";\"other\"\n\"1854444\";\"Ojiya\";\"main\"\n\"1854487\";\"Ōita-shi\";\"main\"\n\"1854487\";\"Oita-shi\";\"ascii\"\n\"1854487\";\"Oita\";\"other\"\n\"1854487\";\"oita si\";\"other\"\n\"1854487\";\"Óita\";\"other\"\n\"1854487\";\"Ōita\";\"other\"\n\"1854487\";\"Оита\";\"other\"\n\"1854487\";\"おおいたし\";\"other\"\n\"1854487\";\"大分市\";\"other\"\n\"1854487\";\"오이타 시\";\"other\"\n\"1854492\";\"Ōiso\";\"main\"\n\"1854492\";\"Oiso\";\"ascii\"\n\"1854492\";\"Oiso-machi\";\"other\"\n\"1854492\";\"Ōiso-machi\";\"other\"\n\"1854530\";\"Ōi\";\"main\"\n\"1854530\";\"Oi\";\"ascii\"\n\"1854629\";\"Ogōri\";\"main\"\n\"1854629\";\"Ogori\";\"ascii\"\n\"1854665\";\"Ogawa\";\"main\"\n\"1854665\";\"Ogava\";\"other\"\n\"1854665\";\"Огава\";\"other\"\n\"1854703\";\"Ōgaki\";\"main\"\n\"1854703\";\"Ogaki\";\"ascii\"\n\"1854703\";\"Oaki\";\"other\"\n\"1854747\";\"Odawara\";\"main\"\n\"1854747\";\"Odavara\";\"other\"\n\"1854747\";\"Одавара\";\"other\"\n\"1854774\";\"Ōda\";\"main\"\n\"1854774\";\"Oda\";\"ascii\"\n\"1854774\";\"Ota\";\"other\"\n\"1854774\";\"da tian shi\";\"other\"\n\"1854774\";\"Ōta\";\"other\"\n\"1854774\";\"Ода\";\"other\"\n\"1854774\";\"大田市\";\"other\"\n\"1854803\";\"Ōbu\";\"main\"\n\"1854803\";\"Obu\";\"ascii\"\n\"1854803\";\"Ofu\";\"other\"\n\"1854803\";\"Ōfu\";\"other\"\n\"1854803\";\"Обу\";\"other\"\n\"1854807\";\"Obita\";\"main\"\n\"1854807\";\"Nagayo\";\"other\"\n\"1854849\";\"Obama\";\"main\"\n\"1854849\";\"Ohama\";\"other\"\n\"1854849\";\"Обама\";\"other\"\n\"1854868\";\"Nyūzen\";\"main\"\n\"1854868\";\"Nyuzen\";\"ascii\"\n\"1854902\";\"Numazu\";\"main\"\n\"1854902\";\"Numadu\";\"other\"\n\"1854902\";\"zhao jin shi\";\"other\"\n\"1854902\";\"沼津市\";\"other\"\n\"1854905\";\"Numata\";\"main\"\n\"1854979\";\"Nonoichi\";\"main\"\n\"1854979\";\"Ноноичи\";\"other\"\n\"1855066\";\"Nōgata\";\"main\"\n\"1855066\";\"Nogata\";\"ascii\"\n\"1855066\";\"Naogata\";\"other\"\n\"1855066\";\"Naokata\";\"other\"\n\"1855078\";\"Noda\";\"main\"\n\"1855078\";\"Нода\";\"other\"\n\"1855095\";\"Nobeoka\";\"main\"\n\"1855095\";\"yan gang shi\";\"other\"\n\"1855095\";\"Нобеока\";\"other\"\n\"1855095\";\"延岡市\";\"other\"\n\"1855134\";\"Nishiwaki\";\"main\"\n\"1855134\";\"Nishivaki\";\"other\"\n\"1855134\";\"Нишиваки\";\"other\"\n\"1855189\";\"Nishio\";\"main\"\n\"1855189\";\"Nisio\";\"other\"\n\"1855189\";\"Нисио\";\"other\"\n\"1855203\";\"Nishinoomote\";\"main\"\n\"1855203\";\"Nisinoomote\";\"other\"\n\"1855207\";\"Nishinomiya\";\"main\"\n\"1855207\";\"Nisinomija\";\"other\"\n\"1855207\";\"xi gong shi\";\"other\"\n\"1855207\";\"Нисиномия\";\"other\"\n\"1855207\";\"西宮市\";\"other\"\n\"1855363\";\"Nirasaki\";\"main\"\n\"1855363\";\"Nirasakimachi\";\"other\"\n\"1855363\";\"Nirazaki\";\"other\"\n\"1855363\";\"Nirazakimachi\";\"other\"\n\"1855380\";\"Ninomiya\";\"main\"\n\"1855380\";\"Ninomija\";\"other\"\n\"1855380\";\"Ниномия\";\"other\"\n\"1855395\";\"Nikkō\";\"main\"\n\"1855395\";\"Nikko\";\"ascii\"\n\"1855395\";\"Nikkó\";\"other\"\n\"1855395\";\"nisko si\";\"other\"\n\"1855395\";\"nykw\";\"other\"\n\"1855395\";\"ri guang shi\";\"other\"\n\"1855395\";\"نيكو\";\"other\"\n\"1855395\";\"日光市\";\"other\"\n\"1855395\";\"닛코 시\";\"other\"\n\"1855410\";\"Niitsu\";\"main\"\n\"1855410\";\"Niitu\";\"other\"\n\"1855410\";\"Niizu\";\"other\"\n\"1855410\";\"xin jin shi\";\"other\"\n\"1855410\";\"新津市\";\"other\"\n\"1855416\";\"Niimi\";\"main\"\n\"1855416\";\"Ниими\";\"other\"\n\"1855425\";\"Niihama\";\"main\"\n\"1855431\";\"Niigata-shi\";\"main\"\n\"1855431\";\"Niahi-niigata\";\"other\"\n\"1855431\";\"Niigata\";\"other\"\n\"1855431\";\"nigata si\";\"other\"\n\"1855431\";\"Ниигата\";\"other\"\n\"1855431\";\"にいがたし\";\"other\"\n\"1855431\";\"新潟市\";\"other\"\n\"1855431\";\"니가타 시\";\"other\"\n\"1855476\";\"Nichinan\";\"main\"\n\"1855476\";\"Nitinan\";\"other\"\n\"1855476\";\"Нитинан\";\"other\"\n\"1855503\";\"Nerima\";\"main\"\n\"1855503\";\"Minamimachi\";\"other\"\n\"1855503\";\"lian ma\";\"other\"\n\"1855503\";\"練馬\";\"other\"\n\"1855540\";\"Naze\";\"main\"\n\"1855540\";\"Nase\";\"other\"\n\"1855580\";\"Naruto\";\"main\"\n\"1855580\";\"Muya\";\"other\"\n\"1855612\";\"Nara-shi\";\"main\"\n\"1855612\";\"Nara\";\"other\"\n\"1855612\";\"nai liang shi\";\"other\"\n\"1855612\";\"nala si\";\"other\"\n\"1855612\";\"nara\";\"other\"\n\"1855612\";\"Нара\";\"other\"\n\"1855612\";\"نارا\";\"other\"\n\"1855612\";\"ならし\";\"other\"\n\"1855612\";\"奈良市\";\"other\"\n\"1855612\";\"나라 시\";\"other\"\n\"1855670\";\"Nanao\";\"main\"\n\"1855670\";\"Нанао\";\"other\"\n\"1855694\";\"Namerikawa\";\"main\"\n\"1855694\";\"Namehrikava\";\"other\"\n\"1855694\";\"Namerigawa\";\"other\"\n\"1855694\";\"Намэрикава\";\"other\"\n\"1855753\";\"Nakatsugawa\";\"main\"\n\"1855753\";\"Nakatsu\";\"other\"\n\"1855757\";\"Nakatsu\";\"main\"\n\"1855757\";\"Nakatu\";\"other\"\n\"1855852\";\"Nakanojō\";\"main\"\n\"1855852\";\"Nakanojo\";\"ascii\"\n\"1855863\";\"Nakano\";\"main\"\n\"1855863\";\"Накано\";\"other\"\n\"1855891\";\"Nakamura\";\"main\"\n\"1855891\";\"Nakamuramachi\";\"other\"\n\"1855891\";\"Накамура\";\"other\"\n\"1855907\";\"Nakama\";\"main\"\n\"1856035\";\"Naha-shi\";\"main\"\n\"1856035\";\"Nafa\";\"other\"\n\"1856035\";\"Naha\";\"other\"\n\"1856035\";\"Nakha\";\"other\"\n\"1856035\";\"Nawa\";\"other\"\n\"1856035\";\"na ba shi\";\"other\"\n\"1856035\";\"naha si\";\"other\"\n\"1856035\";\"nhh\";\"other\"\n\"1856035\";\"Наха\";\"other\"\n\"1856035\";\"נהה\";\"other\"\n\"1856035\";\"なはし\";\"other\"\n\"1856035\";\"那覇市\";\"other\"\n\"1856035\";\"那霸市\";\"other\"\n\"1856035\";\"나하 시\";\"other\"\n\"1856057\";\"Nagoya-shi\";\"main\"\n\"1856057\";\"Nagoia\";\"other\"\n\"1856057\";\"Nagoia - ming gu wu shi\";\"other\"\n\"1856057\";\"Nagoia - 名古屋市\";\"other\"\n\"1856057\";\"Nagoja\";\"other\"\n\"1856057\";\"Nagoja Urbo\";\"other\"\n\"1856057\";\"Nagoya\";\"other\"\n\"1856057\";\"ming gu wu shi\";\"other\"\n\"1856057\";\"na ko ya\";\"other\"\n\"1856057\";\"naghwya\";\"other\"\n\"1856057\";\"nagoya si\";\"other\"\n\"1856057\";\"nagwya\";\"other\"\n\"1856057\";\"Нагоя\";\"other\"\n\"1856057\";\"ناغويا\";\"other\"\n\"1856057\";\"ناگویا\";\"other\"\n\"1856057\";\"นาโกย่า\";\"other\"\n\"1856057\";\"なごやし\";\"other\"\n\"1856057\";\"名古屋市\";\"other\"\n\"1856057\";\"나고야 시\";\"other\"\n\"1856068\";\"Nago\";\"main\"\n\"1856068\";\"Naga\";\"other\"\n\"1856068\";\"Nagu\";\"other\"\n\"1856068\";\"Okaneku\";\"other\"\n\"1856068\";\"Ôkaneku\";\"other\"\n\"1856068\";\"Нага\";\"other\"\n\"1856177\";\"Nagasaki-shi\";\"main\"\n\"1856177\";\"Nagasacium\";\"other\"\n\"1856177\";\"Nagasaki\";\"other\"\n\"1856177\";\"Nagasakis\";\"other\"\n\"1856177\";\"Nagasako\";\"other\"\n\"1856177\";\"Nagaszaki\";\"other\"\n\"1856177\";\"nagasaki\";\"other\"\n\"1856177\";\"nagasaki si\";\"other\"\n\"1856177\";\"nagazaky\";\"other\"\n\"1856177\";\"naghasaky\";\"other\"\n\"1856177\";\"najazaky\";\"other\"\n\"1856177\";\"zhang qi shi\";\"other\"\n\"1856177\";\"Нагасаки\";\"other\"\n\"1856177\";\"נגסאקי\";\"other\"\n\"1856177\";\"ناجازاكي\";\"other\"\n\"1856177\";\"ناغاساكي\";\"other\"\n\"1856177\";\"ناگازاکی\";\"other\"\n\"1856177\";\"नागासाकी\";\"other\"\n\"1856177\";\"ნაგასაკი\";\"other\"\n\"1856177\";\"ながさきし\";\"other\"\n\"1856177\";\"長崎市\";\"other\"\n\"1856177\";\"长崎市\";\"other\"\n\"1856177\";\"나가사키 시\";\"other\"\n\"1856184\";\"Nagareyama\";\"main\"\n\"1856184\";\"liu shan\";\"other\"\n\"1856184\";\"liu shan shi\";\"other\"\n\"1856184\";\"流山\";\"other\"\n\"1856184\";\"流山市\";\"other\"\n\"1856199\";\"Nagaoka\";\"main\"\n\"1856199\";\"Нагаока\";\"other\"\n\"1856215\";\"Nagano-shi\";\"main\"\n\"1856215\";\"Nagano\";\"other\"\n\"1856215\";\"zhang ye\";\"other\"\n\"1856215\";\"Нагано\";\"other\"\n\"1856215\";\"ながのし\";\"other\"\n\"1856215\";\"長野\";\"other\"\n\"1856215\";\"長野市\";\"other\"\n\"1856243\";\"Nagahama\";\"main\"\n\"1856243\";\"Nagakhama\";\"other\"\n\"1856243\";\"Нагахама\";\"other\"\n\"1856293\";\"Nabari\";\"main\"\n\"1856293\";\"ming zhang shi\";\"other\"\n\"1856293\";\"名張市\";\"other\"\n\"1856367\";\"Musashino\";\"main\"\n\"1856367\";\"Musasino\";\"other\"\n\"1856367\";\"musasino si\";\"other\"\n\"1856367\";\"wu cang ye shi\";\"other\"\n\"1856367\";\"wu zang ye shi\";\"other\"\n\"1856367\";\"Мусасино\";\"other\"\n\"1856367\";\"武蔵野市\";\"other\"\n\"1856367\";\"武藏野市\";\"other\"\n\"1856367\";\"무사시노 시\";\"other\"\n\"1856392\";\"Muroto\";\"main\"\n\"1856426\";\"Muramatsu\";\"main\"\n\"1856434\";\"Murakami\";\"main\"\n\"1856434\";\"Murakamimachi\";\"other\"\n\"1856434\";\"Мураками\";\"other\"\n\"1856456\";\"Mukō\";\"main\"\n\"1856456\";\"Muko\";\"ascii\"\n\"1856456\";\"Muka\";\"other\"\n\"1856456\";\"Мука\";\"other\"\n\"1856476\";\"Muikamachi\";\"main\"\n\"1856476\";\"Muika\";\"other\"\n\"1856560\";\"Morohongō\";\"main\"\n\"1856560\";\"Morohongo\";\"ascii\"\n\"1856560\";\"Moroyama\";\"other\"\n\"1856569\";\"Moriyama\";\"main\"\n\"1856569\";\"Morijama\";\"other\"\n\"1856569\";\"Морияма\";\"other\"\n\"1856584\";\"Moriguchi\";\"main\"\n\"1856584\";\"shou kou shi\";\"other\"\n\"1856584\";\"守口市\";\"other\"\n\"1856586\";\"Mori\";\"main\"\n\"1856586\";\"More\";\"other\"\n\"1856586\";\"Море\";\"other\"\n\"1856667\";\"Mizunami\";\"main\"\n\"1856667\";\"Mizunami-cho\";\"other\"\n\"1856667\";\"Mizunami-chō\";\"other\"\n\"1856697\";\"Miyoshi\";\"main\"\n\"1856698\";\"Miyoshi\";\"main\"\n\"1856698\";\"Miyosi\";\"other\"\n\"1856703\";\"Miyazu\";\"main\"\n\"1856717\";\"Miyazaki-shi\";\"main\"\n\"1856717\";\"Mijadzaki\";\"other\"\n\"1856717\";\"gong qi\";\"other\"\n\"1856717\";\"Миядзаки\";\"other\"\n\"1856717\";\"みやざきし\";\"other\"\n\"1856717\";\"宮崎\";\"other\"\n\"1856717\";\"宮崎市\";\"other\"\n\"1856775\";\"Miyakonojō\";\"main\"\n\"1856775\";\"Miyakonojo\";\"ascii\"\n\"1856775\";\"Miyakonozyo\";\"other\"\n\"1856775\";\"Miyakonozyō\";\"other\"\n\"1856775\";\"dou cheng\";\"other\"\n\"1856775\";\"都城\";\"other\"\n\"1856798\";\"Miyajima\";\"main\"\n\"1856798\";\"Itsukushima\";\"other\"\n\"1856798\";\"Mijadzima\";\"other\"\n\"1856798\";\"Miyashima\";\"other\"\n\"1856798\";\"Миядзима\";\"other\"\n\"1856828\";\"Miyada\";\"main\"\n\"1856828\";\"Miyata\";\"other\"\n\"1856878\";\"Mitsuke\";\"main\"\n\"1856881\";\"Mitsukaidō\";\"main\"\n\"1856881\";\"Mitsukaido\";\"ascii\"\n\"1856881\";\"Mizukaido\";\"other\"\n\"1856881\";\"Mizukaidō\";\"other\"\n\"1856938\";\"Mitake\";\"main\"\n\"1856938\";\"Mitake-cho\";\"other\"\n\"1856938\";\"Mitake-chō\";\"other\"\n\"1856942\";\"Mitaka-shi\";\"main\"\n\"1856942\";\"Mitaka\";\"other\"\n\"1856942\";\"san ying\";\"other\"\n\"1856942\";\"san ying shi\";\"other\"\n\"1856942\";\"三鷹\";\"other\"\n\"1856942\";\"三鷹市\";\"other\"\n\"1856977\";\"Mishima\";\"main\"\n\"1856977\";\"Misima\";\"other\"\n\"1856977\";\"Мисима\";\"other\"\n\"1857046\";\"Mino\";\"main\"\n\"1857046\";\"Mino-shi\";\"other\"\n\"1857046\";\"Minoh City\";\"other\"\n\"1857046\";\"ji mian\";\"other\"\n\"1857046\";\"ji mian shi\";\"other\"\n\"1857046\";\"箕面\";\"other\"\n\"1857046\";\"箕面市\";\"other\"\n\"1857062\";\"Mino\";\"main\"\n\"1857062\";\"Mina\";\"other\"\n\"1857062\";\"Minomachi\";\"other\"\n\"1857062\";\"Мина\";\"other\"\n\"1857144\";\"Minami-rinkan\";\"main\"\n\"1857144\";\"Minami Rinkan Yamato\";\"other\"\n\"1857208\";\"Minamata\";\"main\"\n\"1857208\";\"Mizumata\";\"other\"\n\"1857208\";\"minamata si\";\"other\"\n\"1857208\";\"shui yu shi\";\"other\"\n\"1857208\";\"Минамата\";\"other\"\n\"1857208\";\"水俣市\";\"other\"\n\"1857208\";\"미나마타 시\";\"other\"\n\"1857209\";\"Minakuchi\";\"main\"\n\"1857260\";\"Mikuni\";\"main\"\n\"1857276\";\"Miki\";\"main\"\n\"1857276\";\"Мики\";\"other\"\n\"1857334\";\"Mihara\";\"main\"\n\"1857334\";\"Mihama\";\"other\"\n\"1857379\";\"Mibu\";\"main\"\n\"1857379\";\"Мибу\";\"other\"\n\"1857403\";\"Menuma\";\"main\"\n\"1857470\";\"Matsutō\";\"main\"\n\"1857470\";\"Matsuto\";\"ascii\"\n\"1857470\";\"Matto\";\"other\"\n\"1857470\";\"Mattō\";\"other\"\n\"1857496\";\"Matsuzaka\";\"main\"\n\"1857496\";\"Matsusaka\";\"other\"\n\"1857496\";\"song ban shi\";\"other\"\n\"1857496\";\"松阪市\";\"other\"\n\"1857519\";\"Matsumoto\";\"main\"\n\"1857519\";\"Fukase\";\"other\"\n\"1857519\";\"Fukashi\";\"other\"\n\"1857519\";\"Macumoto\";\"other\"\n\"1857519\";\"Matumoto\";\"other\"\n\"1857519\";\"Shonai\";\"other\"\n\"1857519\";\"song ben\";\"other\"\n\"1857519\";\"song ben shi\";\"other\"\n\"1857519\";\"Мацумото\";\"other\"\n\"1857519\";\"松本\";\"other\"\n\"1857519\";\"松本市\";\"other\"\n\"1857550\";\"Matsue-shi\";\"main\"\n\"1857550\";\"Macueh\";\"other\"\n\"1857550\";\"Matsu\";\"other\"\n\"1857550\";\"Matue\";\"other\"\n\"1857550\";\"Мацуэ\";\"other\"\n\"1857550\";\"まつえし\";\"other\"\n\"1857550\";\"松江市\";\"other\"\n\"1857553\";\"Matsudo\";\"main\"\n\"1857553\";\"Macudo\";\"other\"\n\"1857553\";\"masseudo si\";\"other\"\n\"1857553\";\"song hu shi\";\"other\"\n\"1857553\";\"Мацудо\";\"other\"\n\"1857553\";\"松戶市\";\"other\"\n\"1857553\";\"松戸市\";\"other\"\n\"1857553\";\"마쓰도 시\";\"other\"\n\"1857560\";\"Matsubase\";\"main\"\n\"1857568\";\"Matsubara\";\"main\"\n\"1857594\";\"Masuda\";\"main\"\n\"1857594\";\"Masud\";\"other\"\n\"1857594\";\"Масуд\";\"other\"\n\"1857651\";\"Maruoka\";\"main\"\n\"1857659\";\"Maruko\";\"main\"\n\"1857659\";\"Mariko\";\"other\"\n\"1857659\";\"Маруко\";\"other\"\n\"1857665\";\"Marugame\";\"main\"\n\"1857665\";\"Marukame\";\"other\"\n\"1857665\";\"wan gui shi\";\"other\"\n\"1857665\";\"丸亀市\";\"other\"\n\"1857712\";\"Makurazaki\";\"main\"\n\"1857712\";\"Makurasaki\";\"other\"\n\"1857712\";\"Mazuraki\";\"other\"\n\"1857751\";\"Maki\";\"main\"\n\"1857766\";\"Maizuru\";\"main\"\n\"1857766\";\"Maidsuru\";\"other\"\n\"1857766\";\"Maiduru\";\"other\"\n\"1857766\";\"Majdzuru\";\"other\"\n\"1857766\";\"maijeulu si\";\"other\"\n\"1857766\";\"wu he shi\";\"other\"\n\"1857766\";\"Майдзуру\";\"other\"\n\"1857766\";\"舞鶴市\";\"other\"\n\"1857766\";\"舞鹤市\";\"other\"\n\"1857766\";\"마이즈루 시\";\"other\"\n\"1857843\";\"Maebashi-shi\";\"main\"\n\"1857843\";\"Maebashi\";\"other\"\n\"1857843\";\"Maebasi\";\"other\"\n\"1857843\";\"Maebaši\";\"other\"\n\"1857843\";\"Maehbasi\";\"other\"\n\"1857843\";\"ma-ebasi si\";\"other\"\n\"1857843\";\"Маэбаси\";\"other\"\n\"1857843\";\"まえばしし\";\"other\"\n\"1857843\";\"前橋市\";\"other\"\n\"1857843\";\"마에바시 시\";\"other\"\n\"1857844\";\"Maebaru\";\"main\"\n\"1857844\";\"Maeharu\";\"other\"\n\"1857871\";\"Machida\";\"main\"\n\"1857871\";\"ting tian shi\";\"other\"\n\"1857871\";\"Мачида\";\"other\"\n\"1857871\";\"町田市\";\"other\"\n\"1857910\";\"Kyoto\";\"main\"\n\"1857910\";\"Kiotas\";\"other\"\n\"1857910\";\"Kioto\";\"other\"\n\"1857910\";\"Kjoto\";\"other\"\n\"1857910\";\"Kjóto\";\"other\"\n\"1857910\";\"Kyoto-shi\";\"other\"\n\"1857910\";\"Kyotum\";\"other\"\n\"1857910\";\"Kyōto\";\"other\"\n\"1857910\";\"Kyōto-shi\";\"other\"\n\"1857910\";\"Quioto\";\"other\"\n\"1857910\";\"Quioto - jing dou shi\";\"other\"\n\"1857910\";\"Quioto - 京都市\";\"other\"\n\"1857910\";\"gyoto si\";\"other\"\n\"1857910\";\"jing dou\";\"other\"\n\"1857910\";\"jing dou shi\";\"other\"\n\"1857910\";\"kywtw\";\"other\"\n\"1857910\";\"qywtw\";\"other\"\n\"1857910\";\"Κιότο\";\"other\"\n\"1857910\";\"Киото\";\"other\"\n\"1857910\";\"Кіото\";\"other\"\n\"1857910\";\"Кјото\";\"other\"\n\"1857910\";\"קיוטו\";\"other\"\n\"1857910\";\"كيوتو\";\"other\"\n\"1857910\";\"კიოტო\";\"other\"\n\"1857910\";\"きょうとし\";\"other\"\n\"1857910\";\"京都\";\"other\"\n\"1857910\";\"京都市\";\"other\"\n\"1857910\";\"교토 시\";\"other\"\n\"1857968\";\"Kuwana\";\"main\"\n\"1857968\";\"Kumana\";\"other\"\n\"1857968\";\"sang ming shi\";\"other\"\n\"1857968\";\"桑名市\";\"other\"\n\"1858041\";\"Kushikino\";\"main\"\n\"1858041\";\"Kushigino\";\"other\"\n\"1858041\";\"Kusiki-no\";\"other\"\n\"1858067\";\"Kusatsu\";\"main\"\n\"1858067\";\"Kusacu\";\"other\"\n\"1858067\";\"Kusatsu-cho\";\"other\"\n\"1858067\";\"Kusatsu-chō\";\"other\"\n\"1858067\";\"Kusatu\";\"other\"\n\"1858067\";\"Susatsu\";\"other\"\n\"1858067\";\"Кусацу\";\"other\"\n\"1858088\";\"Kurume\";\"main\"\n\"1858088\";\"Куруме\";\"other\"\n\"1858249\";\"Kuroda\";\"main\"\n\"1858249\";\"Kisogawa\";\"other\"\n\"1858249\";\"Курода\";\"other\"\n\"1858283\";\"Kurihashi\";\"main\"\n\"1858296\";\"Kure\";\"main\"\n\"1858296\";\"wu shi\";\"other\"\n\"1858296\";\"Куре\";\"other\"\n\"1858296\";\"呉市\";\"other\"\n\"1858301\";\"Kurayoshi\";\"main\"\n\"1858311\";\"Kurashiki\";\"main\"\n\"1858311\";\"Kurasiki\";\"other\"\n\"1858311\";\"cang fu shi\";\"other\"\n\"1858311\";\"Курашики\";\"other\"\n\"1858311\";\"倉敷市\";\"other\"\n\"1858421\";\"Kumamoto-shi\";\"main\"\n\"1858421\";\"Kumamoto\";\"other\"\n\"1858421\";\"gumamoto si\";\"other\"\n\"1858421\";\"xiong ben shi\";\"other\"\n\"1858421\";\"Кумамото\";\"other\"\n\"1858421\";\"くまもとし\";\"other\"\n\"1858421\";\"熊本市\";\"other\"\n\"1858421\";\"구마모토 시\";\"other\"\n\"1858428\";\"Kumagaya\";\"main\"\n\"1858428\";\"Kumagai\";\"other\"\n\"1858428\";\"gumagaya si\";\"other\"\n\"1858428\";\"xiong gu shi\";\"other\"\n\"1858428\";\"熊谷市\";\"other\"\n\"1858428\";\"구마가야 시\";\"other\"\n\"1858445\";\"Kuki\";\"main\"\n\"1858445\";\"Куки\";\"other\"\n\"1858498\";\"Kudamatsu\";\"main\"\n\"1858591\";\"Kozakai-chō\";\"main\"\n\"1858591\";\"Kozakai-cho\";\"ascii\"\n\"1858591\";\"Kozakai\";\"other\"\n\"1858591\";\"こざかいちょう\";\"other\"\n\"1858591\";\"小坂井町\";\"other\"\n\"1858695\";\"Kosugi\";\"main\"\n\"1858729\";\"Koshigaya\";\"main\"\n\"1858729\";\"yue gu shi\";\"other\"\n\"1858729\";\"越谷市\";\"other\"\n\"1858756\";\"Kosai-shi\";\"main\"\n\"1858756\";\"Kosai\";\"other\"\n\"1858756\";\"hu xi\";\"other\"\n\"1858756\";\"hu xi shi\";\"other\"\n\"1858756\";\"湖西\";\"other\"\n\"1858756\";\"湖西市\";\"other\"\n\"1858794\";\"Kōnosu\";\"main\"\n\"1858794\";\"Konosu\";\"ascii\"\n\"1858794\";\"hong chao\";\"other\"\n\"1858794\";\"鴻巣\";\"other\"\n\"1858836\";\"Kōnan\";\"main\"\n\"1858836\";\"Konan\";\"ascii\"\n\"1858836\";\"Конан\";\"other\"\n\"1858858\";\"Komoro\";\"main\"\n\"1858866\";\"Komono\";\"main\"\n\"1858902\";\"Komatsushima\";\"main\"\n\"1858902\";\"Komatsujima\";\"other\"\n\"1858902\";\"Komatusima\";\"other\"\n\"1858910\";\"Komatsu\";\"main\"\n\"1858926\";\"Komaki\";\"main\"\n\"1858926\";\"Комаки\";\"other\"\n\"1858964\";\"Kokubunji\";\"main\"\n\"1858964\";\"Kokubundzi\";\"other\"\n\"1858964\";\"Кокубундзи\";\"other\"\n\"1858972\";\"Kokubu\";\"main\"\n\"1858972\";\"Kokubo\";\"other\"\n\"1858972\";\"Kokubun\";\"other\"\n\"1858972\";\"guo fen\";\"other\"\n\"1858972\";\"Кокубу\";\"other\"\n\"1858972\";\"国分\";\"other\"\n\"1859088\";\"Koganei\";\"main\"\n\"1859088\";\"xiao jin jing shi\";\"other\"\n\"1859088\";\"小金井市\";\"other\"\n\"1859093\";\"Koga\";\"main\"\n\"1859093\";\"Кога\";\"other\"\n\"1859094\";\"Koga\";\"main\"\n\"1859094\";\"Кога\";\"other\"\n\"1859100\";\"Kōfu-shi\";\"main\"\n\"1859100\";\"Kofu-shi\";\"ascii\"\n\"1859100\";\"Kofe\";\"other\"\n\"1859100\";\"Kofu\";\"other\"\n\"1859100\";\"Kohu\";\"other\"\n\"1859100\";\"Kófu\";\"other\"\n\"1859100\";\"Kōfu\";\"other\"\n\"1859100\";\"Kōhu\";\"other\"\n\"1859100\";\"gohu si\";\"other\"\n\"1859100\";\"jia fu shi\";\"other\"\n\"1859100\";\"Кофе\";\"other\"\n\"1859100\";\"こうふし\";\"other\"\n\"1859100\";\"甲府市\";\"other\"\n\"1859100\";\"고후 시\";\"other\"\n\"1859113\";\"Kodama\";\"main\"\n\"1859113\";\"Кодама\";\"other\"\n\"1859116\";\"Kodaira\";\"main\"\n\"1859116\";\"Kodairy\";\"other\"\n\"1859116\";\"Кодаиры\";\"other\"\n\"1859146\";\"Kōchi-shi\";\"main\"\n\"1859146\";\"Kochi-shi\";\"ascii\"\n\"1859146\";\"Kochin\";\"other\"\n\"1859146\";\"Koti\";\"other\"\n\"1859146\";\"Kôti\";\"other\"\n\"1859146\";\"Кочин\";\"other\"\n\"1859146\";\"こうちし\";\"other\"\n\"1859146\";\"高知市\";\"other\"\n\"1859171\";\"Kōbe-shi\";\"main\"\n\"1859171\";\"Kobe-shi\";\"ascii\"\n\"1859171\";\"Kobe\";\"other\"\n\"1859171\";\"Kobeh\";\"other\"\n\"1859171\";\"Kobė\";\"other\"\n\"1859171\";\"Kóbe\";\"other\"\n\"1859171\";\"Kōbe\";\"other\"\n\"1859171\";\"gobe si\";\"other\"\n\"1859171\";\"kobe\";\"other\"\n\"1859171\";\"kwbh\";\"other\"\n\"1859171\";\"qwbh\";\"other\"\n\"1859171\";\"shen hu shi\";\"other\"\n\"1859171\";\"Кобе\";\"other\"\n\"1859171\";\"Кобэ\";\"other\"\n\"1859171\";\"קובה\";\"other\"\n\"1859171\";\"كوبه\";\"other\"\n\"1859171\";\"कोबे\";\"other\"\n\"1859171\";\"こうべし\";\"other\"\n\"1859171\";\"神户市\";\"other\"\n\"1859171\";\"神戸市\";\"other\"\n\"1859171\";\"고베 시\";\"other\"\n\"1859175\";\"Kobayashi\";\"main\"\n\"1859175\";\"Kobajasi\";\"other\"\n\"1859175\";\"Kobayashi-cho\";\"other\"\n\"1859175\";\"Kobayashi-chō\";\"other\"\n\"1859175\";\"Кобаяси\";\"other\"\n\"1859234\";\"Kitsuki\";\"main\"\n\"1859234\";\"Kicuki\";\"other\"\n\"1859234\";\"Кицуки\";\"other\"\n\"1859307\";\"Kitakyūshū\";\"main\"\n\"1859307\";\"Kitakyushu\";\"ascii\"\n\"1859307\";\"Kitakiusuo\";\"other\"\n\"1859307\";\"Kitakiuŝuo\";\"other\"\n\"1859307\";\"Kitakjushu\";\"other\"\n\"1859307\";\"Kitakjusju\";\"other\"\n\"1859307\";\"Kitakjusu\";\"other\"\n\"1859307\";\"Kitakjúsú\";\"other\"\n\"1859307\";\"Kitakjúšú\";\"other\"\n\"1859307\";\"bei jiu zhou shi\";\"other\"\n\"1859307\";\"gitakyusyu si\";\"other\"\n\"1859307\";\"Китакюсю\";\"other\"\n\"1859307\";\"Китакјушу\";\"other\"\n\"1859307\";\"北九州市\";\"other\"\n\"1859307\";\"기타큐슈 시\";\"other\"\n\"1859319\";\"Kitakata\";\"main\"\n\"1859319\";\"Kitagata\";\"other\"\n\"1859319\";\"Китаката\";\"other\"\n\"1859335\";\"Kitahama\";\"main\"\n\"1859383\";\"Kishiwada\";\"main\"\n\"1859383\";\"Kisivada\";\"other\"\n\"1859383\";\"Kisiwada\";\"other\"\n\"1859383\";\"an he tian shi\";\"other\"\n\"1859383\";\"gisiwada si\";\"other\"\n\"1859383\";\"Кисивада\";\"other\"\n\"1859383\";\"岸和田市\";\"other\"\n\"1859383\";\"기시와다 시\";\"other\"\n\"1859393\";\"Kisarazu\";\"main\"\n\"1859393\";\"Kisaradu\";\"other\"\n\"1859393\";\"Kizarazu\";\"other\"\n\"1859393\";\"gisalajeu si\";\"other\"\n\"1859393\";\"mu geng jin shi\";\"other\"\n\"1859393\";\"木更津市\";\"other\"\n\"1859393\";\"기사라즈 시\";\"other\"\n\"1859400\";\"Kisai\";\"main\"\n\"1859405\";\"Kiryū\";\"main\"\n\"1859405\";\"Kiryu\";\"ascii\"\n\"1859405\";\"Kiri\";\"other\"\n\"1859405\";\"Kiriu\";\"other\"\n\"1859405\";\"Кири\";\"other\"\n\"1859492\";\"Kikuchi\";\"main\"\n\"1859492\";\"Kikuti\";\"other\"\n\"1859492\";\"Кикути\";\"other\"\n\"1859586\";\"Kazo\";\"main\"\n\"1859586\";\"jia xu shi\";\"other\"\n\"1859586\";\"加須市\";\"other\"\n\"1859642\";\"Kawasaki\";\"main\"\n\"1859642\";\"Kauasaki\";\"other\"\n\"1859642\";\"Kavasakis\";\"other\"\n\"1859642\";\"Kawasaki Si\";\"other\"\n\"1859642\";\"Kaŭasaki\";\"other\"\n\"1859642\";\"chuan qi shi\";\"other\"\n\"1859642\";\"gawasaki si\";\"other\"\n\"1859642\";\"kawasaky\";\"other\"\n\"1859642\";\"كاواساكي\";\"other\"\n\"1859642\";\"川崎市\";\"other\"\n\"1859642\";\"가와사키 시\";\"other\"\n\"1859647\";\"Kawasaki\";\"main\"\n\"1859675\";\"Kawanishi\";\"main\"\n\"1859730\";\"Kawaguchi\";\"main\"\n\"1859730\";\"Kavaguti\";\"other\"\n\"1859730\";\"chuan kou shi\";\"other\"\n\"1859730\";\"Кавагути\";\"other\"\n\"1859730\";\"川口市\";\"other\"\n\"1859740\";\"Kawagoe\";\"main\"\n\"1859765\";\"Katsuyama\";\"main\"\n\"1859884\";\"Kasukabe\";\"main\"\n\"1859884\";\"chun ri bu shi\";\"other\"\n\"1859884\";\"gaseukabe si\";\"other\"\n\"1859884\";\"春日部市\";\"other\"\n\"1859884\";\"가스카베 시\";\"other\"\n\"1859891\";\"Kasugai\";\"main\"\n\"1859891\";\"Kasugaj\";\"other\"\n\"1859891\";\"Касугай\";\"other\"\n\"1859908\";\"Kashiwazaki\";\"main\"\n\"1859908\";\"Kasivadzaki\";\"other\"\n\"1859908\";\"Касивадзаки\";\"other\"\n\"1859924\";\"Kashiwa\";\"main\"\n\"1859924\";\"Kasiva\";\"other\"\n\"1859924\";\"bai shi\";\"other\"\n\"1859924\";\"gasiwa si\";\"other\"\n\"1859924\";\"Касива\";\"other\"\n\"1859924\";\"柏市\";\"other\"\n\"1859924\";\"가시와 시\";\"other\"\n\"1859941\";\"Kashima\";\"main\"\n\"1859941\";\"Kasima\";\"other\"\n\"1859941\";\"Касима\";\"other\"\n\"1859951\";\"Kashihara-shi\";\"main\"\n\"1859951\";\"Kashihara\";\"other\"\n\"1859951\";\"jiang yuan\";\"other\"\n\"1859951\";\"jiang yuan shi\";\"other\"\n\"1859951\";\"橿原\";\"other\"\n\"1859951\";\"橿原市\";\"other\"\n\"1859952\";\"Kashihara\";\"main\"\n\"1859952\";\"Kashiharacho\";\"other\"\n\"1859952\";\"Kashiharachō\";\"other\"\n\"1859952\";\"Kashiwabara\";\"other\"\n\"1859952\";\"Kashiwara\";\"other\"\n\"1859964\";\"Kaseda\";\"main\"\n\"1859990\";\"Kasaoka\";\"main\"\n\"1859998\";\"Kasamatsuchō\";\"main\"\n\"1859998\";\"Kasamatsucho\";\"ascii\"\n\"1859998\";\"Kasamatsu\";\"other\"\n\"1860034\";\"Kariya\";\"main\"\n\"1860034\";\"Karija\";\"other\"\n\"1860034\";\"Kariya-cho\";\"other\"\n\"1860034\";\"Kariya-chō\";\"other\"\n\"1860034\";\"Кария\";\"other\"\n\"1860063\";\"Karatsu\";\"main\"\n\"1860063\";\"Karacu\";\"other\"\n\"1860063\";\"Karatu\";\"other\"\n\"1860063\";\"Karatu Si\";\"other\"\n\"1860063\";\"tang jin shi\";\"other\"\n\"1860063\";\"Карацу\";\"other\"\n\"1860063\";\"唐津市\";\"other\"\n\"1860095\";\"Kanzaki\";\"main\"\n\"1860098\";\"Kanuma\";\"main\"\n\"1860098\";\"Kamima\";\"other\"\n\"1860098\";\"lu zhao shi\";\"other\"\n\"1860098\";\"Канума\";\"other\"\n\"1860098\";\"鹿沼市\";\"other\"\n\"1860112\";\"Kanoya\";\"main\"\n\"1860112\";\"Kanoja\";\"other\"\n\"1860112\";\"ganoya si\";\"other\"\n\"1860112\";\"lu wu shi\";\"other\"\n\"1860112\";\"Каноя\";\"other\"\n\"1860112\";\"鹿屋市\";\"other\"\n\"1860112\";\"가노야 시\";\"other\"\n\"1860122\";\"Kanonji\";\"main\"\n\"1860122\";\"Kannonji\";\"other\"\n\"1860122\";\"Kannonzi\";\"other\"\n\"1860122\";\"Kanonji-cho\";\"other\"\n\"1860122\";\"Kanonji-chō\";\"other\"\n\"1860176\";\"Kannabe\";\"main\"\n\"1860191\";\"Kanie\";\"main\"\n\"1860211\";\"Kaneko\";\"main\"\n\"1860234\";\"Kanda\";\"main\"\n\"1860234\";\"Karita\";\"other\"\n\"1860234\";\"Канда\";\"other\"\n\"1860243\";\"Kanazawa-shi\";\"main\"\n\"1860243\";\"Canasava\";\"other\"\n\"1860243\";\"Kanadzava\";\"other\"\n\"1860243\";\"Kanazaua\";\"other\"\n\"1860243\";\"Kanazawa\";\"other\"\n\"1860243\";\"Kanazawa-si\";\"other\"\n\"1860243\";\"Kanazaŭa\";\"other\"\n\"1860243\";\"ganajawa si\";\"other\"\n\"1860243\";\"jin ze shi\";\"other\"\n\"1860243\";\"Канадзава\";\"other\"\n\"1860243\";\"かなざわし\";\"other\"\n\"1860243\";\"金沢市\";\"other\"\n\"1860243\";\"金澤市\";\"other\"\n\"1860243\";\"가나자와 시\";\"other\"\n\"1860256\";\"Kanaya\";\"main\"\n\"1860321\";\"Kamojima\";\"main\"\n\"1860321\";\"Kamoshima\";\"other\"\n\"1860335\";\"Kamogata\";\"main\"\n\"1860335\";\"Kamokata\";\"other\"\n\"1860341\";\"Kamo\";\"main\"\n\"1860341\";\"Камо\";\"other\"\n\"1860437\";\"Kami-renjaku\";\"main\"\n\"1860437\";\"Mitaka\";\"other\"\n\"1860437\";\"Mitaka-machi\";\"other\"\n\"1860437\";\"Mitaka-mura\";\"other\"\n\"1860437\";\"Митака\";\"other\"\n\"1860458\";\"Kaminokawa\";\"main\"\n\"1860563\";\"Kamiichi\";\"main\"\n\"1860626\";\"Kameyama\";\"main\"\n\"1860635\";\"Kameoka\";\"main\"\n\"1860635\";\"Камеока\";\"other\"\n\"1860648\";\"Kameda\";\"main\"\n\"1860672\";\"Kamakura\";\"main\"\n\"1860672\";\"gamakula si\";\"other\"\n\"1860672\";\"kamakwra\";\"other\"\n\"1860672\";\"lian cang shi\";\"other\"\n\"1860672\";\"Камакура\";\"other\"\n\"1860672\";\"كاماكورا\";\"other\"\n\"1860672\";\"鎌倉市\";\"other\"\n\"1860672\";\"가마쿠라 시\";\"other\"\n\"1860704\";\"Kakogawa\";\"main\"\n\"1860704\";\"gakogawa si\";\"other\"\n\"1860704\";\"jia gu chuan shi\";\"other\"\n\"1860704\";\"加古川市\";\"other\"\n\"1860704\";\"가코가와 시\";\"other\"\n\"1860728\";\"Kakegawa\";\"main\"\n\"1860728\";\"Kakehgava\";\"other\"\n\"1860728\";\"gua chuan shi\";\"other\"\n\"1860728\";\"Какэгава\";\"other\"\n\"1860728\";\"掛川市\";\"other\"\n\"1860735\";\"Kakamigahara\";\"main\"\n\"1860735\";\"Kagamigahara\";\"other\"\n\"1860735\";\"Kagamihara\";\"other\"\n\"1860735\";\"gakamigahala si\";\"other\"\n\"1860735\";\"ge wu yuan shi\";\"other\"\n\"1860735\";\"各務原市\";\"other\"\n\"1860735\";\"가카미가하라 시\";\"other\"\n\"1860748\";\"Kashima-shi\";\"main\"\n\"1860748\";\"Kashima\";\"other\"\n\"1860748\";\"lu dao\";\"other\"\n\"1860748\";\"lu dao shi\";\"other\"\n\"1860748\";\"鹿島\";\"other\"\n\"1860748\";\"鹿島市\";\"other\"\n\"1860748\";\"鹿嶋\";\"other\"\n\"1860748\";\"鹿嶋市\";\"other\"\n\"1860750\";\"Kajiki\";\"main\"\n\"1860750\";\"Kajiki-cho\";\"other\"\n\"1860750\";\"Kajiki-chō\";\"other\"\n\"1860765\";\"Kaizuka\";\"main\"\n\"1860765\";\"Kaitsuka\";\"other\"\n\"1860765\";\"bei zhong shi\";\"other\"\n\"1860765\";\"貝塚市\";\"other\"\n\"1860785\";\"Kainan\";\"main\"\n\"1860827\";\"Kagoshima-shi\";\"main\"\n\"1860827\";\"Kagoshima\";\"other\"\n\"1860827\";\"Kagosima\";\"other\"\n\"1860827\";\"Kagošima\";\"other\"\n\"1860827\";\"gagosima si\";\"other\"\n\"1860827\";\"kaghwshyma\";\"other\"\n\"1860827\";\"lu r dao shi\";\"other\"\n\"1860827\";\"Кагошима\";\"other\"\n\"1860827\";\"كاغوشيما\";\"other\"\n\"1860827\";\"かごしまし\";\"other\"\n\"1860827\";\"鹿儿岛市\";\"other\"\n\"1860827\";\"鹿児島市\";\"other\"\n\"1860827\";\"가고시마 시\";\"other\"\n\"1860871\";\"Kadoma\";\"main\"\n\"1860871\";\"Kadome\";\"other\"\n\"1860871\";\"men zhen shi\";\"other\"\n\"1860871\";\"Кадоме\";\"other\"\n\"1860871\";\"門真市\";\"other\"\n\"1861084\";\"Izumo\";\"main\"\n\"1861084\";\"Idzumo\";\"other\"\n\"1861084\";\"Itsumo\";\"other\"\n\"1861084\";\"Идзумо\";\"other\"\n\"1861095\";\"Izumiōtsu\";\"main\"\n\"1861095\";\"Izumiotsu\";\"ascii\"\n\"1861095\";\"Ebisucho\";\"other\"\n\"1861095\";\"Ebisuchō\";\"other\"\n\"1861095\";\"Idzumotsu\";\"other\"\n\"1861095\";\"Otsu\";\"other\"\n\"1861095\";\"Ōtsu\";\"other\"\n\"1861095\";\"Идзумотсу\";\"other\"\n\"1861107\";\"Izumi\";\"main\"\n\"1861108\";\"Izumi\";\"main\"\n\"1861108\";\"chu shui\";\"other\"\n\"1861108\";\"Изуми\";\"other\"\n\"1861108\";\"出水\";\"other\"\n\"1861164\";\"Iwatsuki\";\"main\"\n\"1861171\";\"Iwata\";\"main\"\n\"1861171\";\"Ivata\";\"other\"\n\"1861171\";\"pan tian\";\"other\"\n\"1861171\";\"Ивата\";\"other\"\n\"1861171\";\"磐田\";\"other\"\n\"1861207\";\"Iwakura\";\"main\"\n\"1861212\";\"Iwakuni\";\"main\"\n\"1861212\";\"Ivakuni\";\"other\"\n\"1861212\";\"Ивакуни\";\"other\"\n\"1861223\";\"Iwai\";\"main\"\n\"1861244\";\"Iwade\";\"main\"\n\"1861261\";\"Itsukaichi\";\"main\"\n\"1861280\";\"Itoman\";\"main\"\n\"1861280\";\"Ichuman\";\"other\"\n\"1861280\";\"mi man\";\"other\"\n\"1861280\";\"糸満\";\"other\"\n\"1861285\";\"Itoigawa\";\"main\"\n\"1861285\";\"Itoikawa\";\"other\"\n\"1861290\";\"Itō\";\"main\"\n\"1861290\";\"Ito\";\"ascii\"\n\"1861290\";\"yi dong shi\";\"other\"\n\"1861290\";\"Ито\";\"other\"\n\"1861290\";\"伊東市\";\"other\"\n\"1861310\";\"Itami\";\"main\"\n\"1861310\";\"Itan\";\"other\"\n\"1861310\";\"itami si\";\"other\"\n\"1861310\";\"yi dan shi\";\"other\"\n\"1861310\";\"Итами\";\"other\"\n\"1861310\";\"伊丹市\";\"other\"\n\"1861310\";\"이타미 시\";\"other\"\n\"1861383\";\"Ishiki\";\"main\"\n\"1861383\";\"Isshiki\";\"other\"\n\"1861393\";\"Ishikawa\";\"main\"\n\"1861393\";\"Ishiza\";\"other\"\n\"1861393\";\"Isikava\";\"other\"\n\"1861393\";\"Исикава\";\"other\"\n\"1861400\";\"Ishii\";\"main\"\n\"1861400\";\"Isii\";\"other\"\n\"1861400\";\"Исии\";\"other\"\n\"1861406\";\"Ishige\";\"main\"\n\"1861406\";\"Moto-ishige\";\"other\"\n\"1861416\";\"Ishigaki\";\"main\"\n\"1861416\";\"Ishigachi\";\"other\"\n\"1861416\";\"Isigaki\";\"other\"\n\"1861416\";\"Shika\";\"other\"\n\"1861416\";\"shi yuan\";\"other\"\n\"1861416\";\"Ишигаки\";\"other\"\n\"1861416\";\"石垣\";\"other\"\n\"1861436\";\"Isesaki\";\"main\"\n\"1861436\";\"Isezaki\";\"other\"\n\"1861449\";\"Isehara\";\"main\"\n\"1861450\";\"Ise\";\"main\"\n\"1861450\";\"Iseh\";\"other\"\n\"1861450\";\"Udiyamada\";\"other\"\n\"1861450\";\"Uji\";\"other\"\n\"1861450\";\"Uji-Yamada\";\"other\"\n\"1861450\";\"Uziyamada\";\"other\"\n\"1861450\";\"Yamada\";\"other\"\n\"1861450\";\"Исэ\";\"other\"\n\"1861454\";\"Isawa\";\"main\"\n\"1861464\";\"Isahaya\";\"main\"\n\"1861464\";\"Isahara\";\"other\"\n\"1861464\";\"jian zao shi\";\"other\"\n\"1861464\";\"諫早市\";\"other\"\n\"1861528\";\"Inuyama\";\"main\"\n\"1861528\";\"Inujama\";\"other\"\n\"1861528\";\"Inuyama-cho\";\"other\"\n\"1861528\";\"Inuyama-chō\";\"other\"\n\"1861528\";\"quan shan shi\";\"other\"\n\"1861528\";\"Инуяма\";\"other\"\n\"1861528\";\"犬山市\";\"other\"\n\"1861584\";\"Ino\";\"main\"\n\"1861584\";\"Inocho\";\"other\"\n\"1861584\";\"Inochō\";\"other\"\n\"1861584\";\"Ино\";\"other\"\n\"1861586\";\"Innoshima\";\"main\"\n\"1861602\";\"Inazawa\";\"main\"\n\"1861602\";\"Inasawa\";\"other\"\n\"1861602\";\"Inasawacho\";\"other\"\n\"1861602\";\"Inasawachō\";\"other\"\n\"1861602\";\"Inazawacho\";\"other\"\n\"1861602\";\"Inazawachō\";\"other\"\n\"1861641\";\"Ina\";\"main\"\n\"1861641\";\"yi na shi\";\"other\"\n\"1861641\";\"Ина\";\"other\"\n\"1861641\";\"伊那市\";\"other\"\n\"1861677\";\"Imari\";\"main\"\n\"1861677\";\"Imarimachi\";\"other\"\n\"1861677\";\"Имари\";\"other\"\n\"1861699\";\"Imaichi\";\"main\"\n\"1861749\";\"Ikoma\";\"main\"\n\"1861749\";\"Ikuma\";\"other\"\n\"1861749\";\"Икома\";\"other\"\n\"1861795\";\"Ikeda\";\"main\"\n\"1861795\";\"chi tian\";\"other\"\n\"1861795\";\"chi tian shi\";\"other\"\n\"1861795\";\"Икеда\";\"other\"\n\"1861795\";\"池田\";\"other\"\n\"1861795\";\"池田市\";\"other\"\n\"1861799\";\"Ikeda\";\"main\"\n\"1861825\";\"Ijūin\";\"main\"\n\"1861825\";\"Ijuin\";\"ascii\"\n\"1861825\";\"Izyuin\";\"other\"\n\"1861825\";\"Izyūin\";\"other\"\n\"1861835\";\"Iizuka\";\"main\"\n\"1861835\";\"Iidzuka\";\"other\"\n\"1861835\";\"Иидзука\";\"other\"\n\"1861838\";\"Iiyama\";\"main\"\n\"1861838\";\"Iyama\";\"other\"\n\"1861864\";\"Iida\";\"main\"\n\"1861864\";\"Иида\";\"other\"\n\"1861901\";\"Iga\";\"main\"\n\"1861901\";\"Iga-shi\";\"other\"\n\"1861901\";\"Igano-kuni\";\"other\"\n\"1861901\";\"yi he\";\"other\"\n\"1861901\";\"yi he shi\";\"other\"\n\"1861901\";\"伊賀\";\"other\"\n\"1861901\";\"伊賀市\";\"other\"\n\"1861949\";\"Ichinomiya\";\"main\"\n\"1861949\";\"Itinomiya\";\"other\"\n\"1861949\";\"Owari-ichinomiya\";\"other\"\n\"1861949\";\"ichinomiya si\";\"other\"\n\"1861949\";\"yi gong shi\";\"other\"\n\"1861949\";\"一宮市\";\"other\"\n\"1861949\";\"이치노미야 시\";\"other\"\n\"1861968\";\"Ichikawa\";\"main\"\n\"1861968\";\"Itikava\";\"other\"\n\"1861968\";\"ichikawa si\";\"other\"\n\"1861968\";\"shi chuan shi\";\"other\"\n\"1861968\";\"Итикава\";\"other\"\n\"1861968\";\"市川市\";\"other\"\n\"1861968\";\"이치카와 시\";\"other\"\n\"1862010\";\"Ibusuki\";\"main\"\n\"1862033\";\"Ibaraki\";\"main\"\n\"1862033\";\"Ibaragi\";\"other\"\n\"1862033\";\"ci cheng shi\";\"other\"\n\"1862033\";\"ci mu\";\"other\"\n\"1862033\";\"ci mu shi\";\"other\"\n\"1862033\";\"Ибараки\";\"other\"\n\"1862033\";\"茨城市\";\"other\"\n\"1862033\";\"茨木\";\"other\"\n\"1862033\";\"茨木市\";\"other\"\n\"1862034\";\"Ibara\";\"main\"\n\"1862034\";\"Ihara\";\"other\"\n\"1862098\";\"Hotaka\";\"main\"\n\"1862198\";\"Honjō\";\"main\"\n\"1862198\";\"Honjo\";\"ascii\"\n\"1862230\";\"Hondo\";\"main\"\n\"1862230\";\"Khondo\";\"other\"\n\"1862230\";\"Хондо\";\"other\"\n\"1862302\";\"Hōfu\";\"main\"\n\"1862302\";\"Hofu\";\"ascii\"\n\"1862302\";\"Bofu\";\"other\"\n\"1862302\";\"Bohu\";\"other\"\n\"1862302\";\"Bōfu\";\"other\"\n\"1862302\";\"Bōhu\";\"other\"\n\"1862352\";\"Hitoyoshi\";\"main\"\n\"1862352\";\"Hitoyosi\";\"other\"\n\"1862373\";\"Hita\";\"main\"\n\"1862373\";\"Hida\";\"other\"\n\"1862373\";\"Khity\";\"other\"\n\"1862373\";\"Хиты\";\"other\"\n\"1862389\";\"Hisai\";\"main\"\n\"1862415\";\"Hiroshima-shi\";\"main\"\n\"1862415\";\"Chirosima\";\"other\"\n\"1862415\";\"Hiroshima\";\"other\"\n\"1862415\";\"Hirosima\";\"other\"\n\"1862415\";\"Hirosimo\";\"other\"\n\"1862415\";\"Hiroxima - guang dao shi\";\"other\"\n\"1862415\";\"Hiroxima - 広島市\";\"other\"\n\"1862415\";\"Hiroŝimo\";\"other\"\n\"1862415\";\"Hiroşima\";\"other\"\n\"1862415\";\"Hirošima\";\"other\"\n\"1862415\";\"Khiroshima\";\"other\"\n\"1862415\";\"Khirosima\";\"other\"\n\"1862415\";\"canghwad hi roa chi ma\";\"other\"\n\"1862415\";\"guang dao shi\";\"other\"\n\"1862415\";\"hi ro chi ma\";\"other\"\n\"1862415\";\"hilosima si\";\"other\"\n\"1862415\";\"hiroshima\";\"other\"\n\"1862415\";\"hirosima\";\"other\"\n\"1862415\";\"hyrwshyma\";\"other\"\n\"1862415\";\"hyrwsymh\";\"other\"\n\"1862415\";\"Χιροσίμα\";\"other\"\n\"1862415\";\"Хиросима\";\"other\"\n\"1862415\";\"Хирошима\";\"other\"\n\"1862415\";\"Хіросіма\";\"other\"\n\"1862415\";\"הירושימה\";\"other\"\n\"1862415\";\"هيروشيما\";\"other\"\n\"1862415\";\"هیروشیما\";\"other\"\n\"1862415\";\"हिरोशिमा\";\"other\"\n\"1862415\";\"จังหวัดฮิโระชิมะ\";\"other\"\n\"1862415\";\"ฮิโรชิมา\";\"other\"\n\"1862415\";\"ჰიროსიმა\";\"other\"\n\"1862415\";\"ჰიროშიმა\";\"other\"\n\"1862415\";\"ひろしまし\";\"other\"\n\"1862415\";\"広島市\";\"other\"\n\"1862415\";\"廣島市\";\"other\"\n\"1862415\";\"히로시마 시\";\"other\"\n\"1862462\";\"Hiratsuka\";\"main\"\n\"1862462\";\"Hiratuka\";\"other\"\n\"1862462\";\"Khiracuka\";\"other\"\n\"1862462\";\"ping zhong shi\";\"other\"\n\"1862462\";\"Хирацука\";\"other\"\n\"1862462\";\"平塚市\";\"other\"\n\"1862471\";\"Hirata\";\"main\"\n\"1862505\";\"Hirara\";\"main\"\n\"1862505\";\"Taira\";\"other\"\n\"1862540\";\"Hirakata\";\"main\"\n\"1862540\";\"hilakata si\";\"other\"\n\"1862540\";\"hyrakata\";\"other\"\n\"1862540\";\"awsaka\";\"other\"\n\"1862540\";\"mei fang shi\";\"other\"\n\"1862540\";\"هيراكاتا، أوساكا\";\"other\"\n\"1862540\";\"枚方市\";\"other\"\n\"1862540\";\"히라카타 시\";\"other\"\n\"1862555\";\"Hirado\";\"main\"\n\"1862555\";\"Hirato\";\"other\"\n\"1862555\";\"Khirado\";\"other\"\n\"1862555\";\"Хирадо\";\"other\"\n\"1862599\";\"Hino\";\"main\"\n\"1862601\";\"Hino\";\"main\"\n\"1862612\";\"Himi\";\"main\"\n\"1862612\";\"Khimi\";\"other\"\n\"1862612\";\"bing jian\";\"other\"\n\"1862612\";\"Хими\";\"other\"\n\"1862612\";\"氷見\";\"other\"\n\"1862627\";\"Himeji\";\"main\"\n\"1862627\";\"Hime\";\"other\"\n\"1862627\";\"Himedi\";\"other\"\n\"1862627\";\"Himezi\";\"other\"\n\"1862627\";\"Khimehdzi\";\"other\"\n\"1862627\";\"himeji si\";\"other\"\n\"1862627\";\"hymyjy\";\"other\"\n\"1862627\";\"ji lu shi\";\"other\"\n\"1862627\";\"Химэдзи\";\"other\"\n\"1862627\";\"هيميجي\";\"other\"\n\"1862627\";\"姫路市\";\"other\"\n\"1862627\";\"히메지 시\";\"other\"\n\"1862636\";\"Hikone\";\"main\"\n\"1862636\";\"Khikoneh\";\"other\"\n\"1862636\";\"yan gen shi\";\"other\"\n\"1862636\";\"Хиконэ\";\"other\"\n\"1862636\";\"彦根市\";\"other\"\n\"1862689\";\"Hiji\";\"main\"\n\"1862689\";\"Higi\";\"other\"\n\"1862689\";\"Hinode\";\"other\"\n\"1862689\";\"Hizi\";\"other\"\n\"1862912\";\"Hekinan\";\"main\"\n\"1862912\";\"bi nan shi\";\"other\"\n\"1862912\";\"碧南市\";\"other\"\n\"1862944\";\"Heda\";\"main\"\n\"1862944\";\"Khehda\";\"other\"\n\"1862944\";\"Toda\";\"other\"\n\"1862944\";\"Хэда\";\"other\"\n\"1862992\";\"Hayama\";\"main\"\n\"1862992\";\"Khajama\";\"other\"\n\"1862992\";\"Хаяма\";\"other\"\n\"1863018\";\"Hatsukaichi\";\"main\"\n\"1863018\";\"Hatukaiti\";\"other\"\n\"1863018\";\"hasseukaichi si\";\"other\"\n\"1863018\";\"nian ri shi shi\";\"other\"\n\"1863018\";\"廿日市市\";\"other\"\n\"1863018\";\"하쓰카이치 시\";\"other\"\n\"1863023\";\"Hatogaya\";\"main\"\n\"1863023\";\"Hatagayacho\";\"other\"\n\"1863023\";\"Hatagayachō\";\"other\"\n\"1863023\";\"Hatogayamachi\";\"other\"\n\"1863082\";\"Hashimoto\";\"main\"\n\"1863082\";\"Hasimoto\";\"other\"\n\"1863082\";\"Khasimoto\";\"other\"\n\"1863082\";\"Хасимото\";\"other\"\n\"1863173\";\"Hanyū\";\"main\"\n\"1863173\";\"Hanyu\";\"ascii\"\n\"1863173\";\"Khan'juj\";\"other\"\n\"1863173\";\"Ханьюй\";\"other\"\n\"1863183\";\"Hannō\";\"main\"\n\"1863183\";\"Hanno\";\"ascii\"\n\"1863183\";\"Khanno\";\"other\"\n\"1863183\";\"Ханно\";\"other\"\n\"1863209\";\"Handa\";\"main\"\n\"1863209\";\"Khanda\";\"other\"\n\"1863209\";\"Manda\";\"other\"\n\"1863209\";\"ban tian shi\";\"other\"\n\"1863209\";\"Ханда\";\"other\"\n\"1863209\";\"半田市\";\"other\"\n\"1863279\";\"Hamanoichi\";\"main\"\n\"1863279\";\"Hama-no-iti\";\"other\"\n\"1863279\";\"Hayato\";\"other\"\n\"1863289\";\"Hamamatsu\";\"main\"\n\"1863289\";\"Hamamacu\";\"other\"\n\"1863289\";\"Hamamatu\";\"other\"\n\"1863289\";\"bang song shi\";\"other\"\n\"1863289\";\"bin song shi\";\"other\"\n\"1863289\";\"hamamasseu si\";\"other\"\n\"1863289\";\"浜松市\";\"other\"\n\"1863289\";\"滨松市\";\"other\"\n\"1863289\";\"하마마쓰 시\";\"other\"\n\"1863293\";\"Hamakita\";\"main\"\n\"1863310\";\"Hamada\";\"main\"\n\"1863310\";\"Khamada\";\"other\"\n\"1863310\";\"Хамада\";\"other\"\n\"1863341\";\"Hakui\";\"main\"\n\"1863341\";\"Hagui\";\"other\"\n\"1863357\";\"Hakone\";\"main\"\n\"1863357\";\"Khakone\";\"other\"\n\"1863357\";\"Хаконе\";\"other\"\n\"1863398\";\"Haibara\";\"main\"\n\"1863398\";\"Hagihara\";\"other\"\n\"1863398\";\"Hagiwara\";\"other\"\n\"1863418\";\"Hagi\";\"main\"\n\"1863426\";\"Haebaru\";\"main\"\n\"1863426\";\"Hiebaru\";\"other\"\n\"1863431\";\"Hadano\";\"main\"\n\"1863431\";\"Hatano\";\"other\"\n\"1863431\";\"Hatano-machi\";\"other\"\n\"1863431\";\"hadano si\";\"other\"\n\"1863431\";\"qin ye shi\";\"other\"\n\"1863431\";\"秦野市\";\"other\"\n\"1863431\";\"하다노 시\";\"other\"\n\"1863440\";\"Hachiōji\";\"main\"\n\"1863440\";\"Hachioji\";\"ascii\"\n\"1863440\";\"Hatiozi\";\"other\"\n\"1863440\";\"Hatiôzi\";\"other\"\n\"1863440\";\"Khatiodzi\";\"other\"\n\"1863440\";\"ba wang zi shi\";\"other\"\n\"1863440\";\"hachioji si\";\"other\"\n\"1863440\";\"Хатиодзи\";\"other\"\n\"1863440\";\"八王子市\";\"other\"\n\"1863440\";\"하치오지 시\";\"other\"\n\"1863451\";\"Ōmihachiman\";\"main\"\n\"1863451\";\"Omihachiman\";\"ascii\"\n\"1863451\";\"Omihachiman-shi\";\"other\"\n\"1863451\";\"jin jiang ba fan\";\"other\"\n\"1863451\";\"jin jiang ba fan shi\";\"other\"\n\"1863451\";\"Ōmihachiman-shi\";\"other\"\n\"1863451\";\"近江八幡\";\"other\"\n\"1863451\";\"近江八幡市\";\"other\"\n\"1863482\";\"Gyōda\";\"main\"\n\"1863482\";\"Gyoda\";\"ascii\"\n\"1863495\";\"Gushikawa\";\"main\"\n\"1863495\";\"Geshicha\";\"other\"\n\"1863495\";\"Geshichā\";\"other\"\n\"1863495\";\"Gushichaa\";\"other\"\n\"1863495\";\"Gusikawa\";\"other\"\n\"1863521\";\"Gōtsu\";\"main\"\n\"1863521\";\"Gotsu\";\"ascii\"\n\"1863521\";\"Gatsu\";\"other\"\n\"1863521\";\"Gotu\";\"other\"\n\"1863521\";\"Gozu\";\"other\"\n\"1863521\";\"Gōtu\";\"other\"\n\"1863521\";\"Gōzu\";\"other\"\n\"1863528\";\"Gotemba\";\"main\"\n\"1863528\";\"Kyu-gotemba\";\"other\"\n\"1863528\";\"Kyū-gotemba\";\"other\"\n\"1863528\";\"Готемба\";\"other\"\n\"1863540\";\"Gosen\";\"main\"\n\"1863540\";\"Госен\";\"other\"\n\"1863541\";\"Gose\";\"main\"\n\"1863541\";\"Gosecho\";\"other\"\n\"1863541\";\"Gosho\";\"other\"\n\"1863541\";\"Goze\";\"other\"\n\"1863541\";\"Gōsechō\";\"other\"\n\"1863592\";\"Gojō\";\"main\"\n\"1863592\";\"Gojo\";\"ascii\"\n\"1863592\";\"Goio\";\"other\"\n\"1863592\";\"Goiō\";\"other\"\n\"1863611\";\"Gōdo\";\"main\"\n\"1863611\";\"Godo\";\"ascii\"\n\"1863611\";\"Goda\";\"other\"\n\"1863611\";\"Godo-cho\";\"other\"\n\"1863611\";\"Gōdō-chō\";\"other\"\n\"1863611\";\"Года\";\"other\"\n\"1863614\";\"Gobō\";\"main\"\n\"1863614\";\"Gobo\";\"ascii\"\n\"1863614\";\"Hidaka\";\"other\"\n\"1863614\";\"Гобо\";\"other\"\n\"1863627\";\"Ginowan\";\"main\"\n\"1863627\";\"Chinon\";\"other\"\n\"1863627\";\"Chinōn\";\"other\"\n\"1863627\";\"Jinon\";\"other\"\n\"1863627\";\"Jinōn\";\"other\"\n\"1863627\";\"ginowan si\";\"other\"\n\"1863627\";\"yi ye wan shi\";\"other\"\n\"1863627\";\"宜野湾市\";\"other\"\n\"1863627\";\"宜野灣市\";\"other\"\n\"1863627\";\"기노완 시\";\"other\"\n\"1863641\";\"Gifu-shi\";\"main\"\n\"1863641\";\"Gifu\";\"other\"\n\"1863641\";\"Gihu\";\"other\"\n\"1863641\";\"gihu si\";\"other\"\n\"1863641\";\"qi fu shi\";\"other\"\n\"1863641\";\"Гифу\";\"other\"\n\"1863641\";\"ぎふし\";\"other\"\n\"1863641\";\"岐阜市\";\"other\"\n\"1863641\";\"기후 시\";\"other\"\n\"1863693\";\"Gamagōri\";\"main\"\n\"1863693\";\"Gamagori\";\"ascii\"\n\"1863713\";\"Futtsu\";\"main\"\n\"1863713\";\"Futtso\";\"other\"\n\"1863905\";\"Funabashi\";\"main\"\n\"1863905\";\"Furabeshi\";\"other\"\n\"1863905\";\"Hunabasi\";\"other\"\n\"1863905\";\"chuan qiao shi\";\"other\"\n\"1863905\";\"船橋市\";\"other\"\n\"1863917\";\"Fukuyama\";\"main\"\n\"1863917\";\"Fukujama\";\"other\"\n\"1863917\";\"Hukuyama\";\"other\"\n\"1863917\";\"Фукуяма\";\"other\"\n\"1863945\";\"Fukuroi\";\"main\"\n\"1863945\";\"dai jing shi\";\"other\"\n\"1863945\";\"Фукурои\";\"other\"\n\"1863945\";\"袋井市\";\"other\"\n\"1863953\";\"Fukura\";\"main\"\n\"1863953\";\"Hukura\";\"other\"\n\"1863967\";\"Fukuoka-shi\";\"main\"\n\"1863967\";\"Fucuoca\";\"other\"\n\"1863967\";\"Fukuoka\";\"other\"\n\"1863967\";\"Hukuoka\";\"other\"\n\"1863967\";\"fu gang shi\";\"other\"\n\"1863967\";\"fwkwka\";\"other\"\n\"1863967\";\"hukuoka si\";\"other\"\n\"1863967\";\"Фукуока\";\"other\"\n\"1863967\";\"فوكوكا\";\"other\"\n\"1863967\";\"ふくおかし\";\"other\"\n\"1863967\";\"福岡市\";\"other\"\n\"1863967\";\"후쿠오카 시\";\"other\"\n\"1863973\";\"Fukumitsu\";\"main\"\n\"1863973\";\"Fukumitsumachi\";\"other\"\n\"1863978\";\"Fukuma\";\"main\"\n\"1863985\";\"Fukui-shi\";\"main\"\n\"1863985\";\"Fukuj\";\"other\"\n\"1863985\";\"Hukui\";\"other\"\n\"1863985\";\"Фукуй\";\"other\"\n\"1863985\";\"ふくいし\";\"other\"\n\"1863985\";\"福井市\";\"other\"\n\"1863997\";\"Fukue\";\"main\"\n\"1863997\";\"Fukae\";\"other\"\n\"1863997\";\"Fukaye\";\"other\"\n\"1863997\";\"Fukuego\";\"other\"\n\"1863997\";\"Hukae\";\"other\"\n\"1863997\";\"Hukue\";\"other\"\n\"1864009\";\"Fukuchiyama\";\"main\"\n\"1864009\";\"Hukutiyama\";\"other\"\n\"1864009\";\"fu zhi shan shi\";\"other\"\n\"1864009\";\"福知山市\";\"other\"\n\"1864025\";\"Fukiage\";\"main\"\n\"1864031\";\"Fukaya\";\"main\"\n\"1864092\";\"Fujisawa\";\"main\"\n\"1864098\";\"Fujioka\";\"main\"\n\"1864098\";\"Fudzioka\";\"other\"\n\"1864098\";\"Фудзиока\";\"other\"\n\"1864099\";\"Fujioka\";\"main\"\n\"1864099\";\"Fudzioka\";\"other\"\n\"1864099\";\"Фудзиока\";\"other\"\n\"1864105\";\"Fujinomiya\";\"main\"\n\"1864105\";\"Fujimiya\";\"other\"\n\"1864105\";\"Omiya\";\"other\"\n\"1864105\";\"fu shi gong shi\";\"other\"\n\"1864105\";\"Ōmiya\";\"other\"\n\"1864105\";\"富士宮市\";\"other\"\n\"1864132\";\"Fujieda\";\"main\"\n\"1864132\";\"Fudziehda\";\"other\"\n\"1864132\";\"teng zhi shi\";\"other\"\n\"1864132\";\"Фудзиэда\";\"other\"\n\"1864132\";\"藤枝市\";\"other\"\n\"1864134\";\"Fuji\";\"main\"\n\"1864154\";\"Fuchū\";\"main\"\n\"1864154\";\"Fuchu\";\"ascii\"\n\"1864154\";\"Фучу\";\"other\"\n\"1864155\";\"Fuchū\";\"main\"\n\"1864155\";\"Fuchu\";\"ascii\"\n\"1864155\";\"Фучу\";\"other\"\n\"1864180\";\"Enzan\";\"main\"\n\"1864416\";\"Daitō\";\"main\"\n\"1864416\";\"Daito\";\"ascii\"\n\"1864518\";\"Chōfu\";\"main\"\n\"1864518\";\"Chofu\";\"ascii\"\n\"1864549\";\"Chiryū\";\"main\"\n\"1864549\";\"Chiryu\";\"ascii\"\n\"1864549\";\"Chiryu-cho\";\"other\"\n\"1864549\";\"Chiryū-chō\";\"other\"\n\"1864557\";\"Chino\";\"main\"\n\"1864572\";\"Chikushino-shi\";\"main\"\n\"1864572\";\"chikushino\";\"other\"\n\"1864572\";\"zhu zi ye\";\"other\"\n\"1864572\";\"zhu zi ye shi\";\"other\"\n\"1864572\";\"筑紫野\";\"other\"\n\"1864572\";\"筑紫野市\";\"other\"\n\"1864624\";\"Chigasaki\";\"main\"\n\"1864624\";\"Chigaraki\";\"other\"\n\"1864624\";\"mao~ke qi shi\";\"other\"\n\"1864624\";\"茅ヶ崎市\";\"other\"\n\"1864637\";\"Chichibu\";\"main\"\n\"1864637\";\"Titibu\";\"other\"\n\"1864637\";\"Titubunomiya\";\"other\"\n\"1864652\";\"Chatan\";\"main\"\n\"1864652\";\"Tyatan\";\"other\"\n\"1864750\";\"Beppu\";\"main\"\n\"1864750\";\"Behppu\";\"other\"\n\"1864750\";\"Бэппу\";\"other\"\n\"1864873\";\"Ayabe\";\"main\"\n\"1864873\";\"Ajabe\";\"other\"\n\"1864873\";\"Аябе\";\"other\"\n\"1864945\";\"Atami\";\"main\"\n\"1864945\";\"Атами\";\"other\"\n\"1864985\";\"Ashiya\";\"main\"\n\"1864985\";\"lu wu shi\";\"other\"\n\"1864985\";\"芦屋市\";\"other\"\n\"1865005\";\"Ashikaga\";\"main\"\n\"1865005\";\"Ashikaga - zu li shi\";\"other\"\n\"1865005\";\"Ashikaga - 足利市\";\"other\"\n\"1865005\";\"Asikaga\";\"other\"\n\"1865005\";\"zu li shi\";\"other\"\n\"1865005\";\"Асикага\";\"other\"\n\"1865005\";\"足利市\";\"other\"\n\"1865207\";\"Arai\";\"main\"\n\"1865290\";\"Annaka\";\"main\"\n\"1865294\";\"Anjō\";\"main\"\n\"1865294\";\"Anjo\";\"ascii\"\n\"1865294\";\"Andzso\";\"other\"\n\"1865294\";\"Andzsó\";\"other\"\n\"1865294\";\"Anziyan\";\"other\"\n\"1865294\";\"an cheng\";\"other\"\n\"1865294\";\"an cheng shi\";\"other\"\n\"1865294\";\"安城\";\"other\"\n\"1865294\";\"安城市\";\"other\"\n\"1865309\";\"Anan\";\"main\"\n\"1865309\";\"Анан\";\"other\"\n\"1865375\";\"Amagi\";\"main\"\n\"1865375\";\"Amaki\";\"other\"\n\"1865387\";\"Amagasaki\";\"main\"\n\"1865387\";\"ni qi shi\";\"other\"\n\"1865387\";\"尼崎市\";\"other\"\n\"1865401\";\"Akune\";\"main\"\n\"1865401\";\"a jiu gen\";\"other\"\n\"1865401\";\"阿久根\";\"other\"\n\"1865412\";\"Akō\";\"main\"\n\"1865412\";\"Ako\";\"ascii\"\n\"1865412\";\"Akaho\";\"other\"\n\"1865412\";\"Kariya\";\"other\"\n\"1865412\";\"Ако\";\"other\"\n\"1865449\";\"Aki\";\"main\"\n\"1865449\";\"Akii\";\"other\"\n\"1865449\";\"Аки\";\"other\"\n\"1865661\";\"Aioi-shi\";\"main\"\n\"1865661\";\"Aioi\";\"other\"\n\"1865661\";\"O\";\"other\"\n\"1865661\";\"Ō\";\"other\"\n\"1865661\";\"あいおいし\";\"other\"\n\"1865661\";\"相生市\";\"other\"\n\"1865714\";\"Ageo\";\"main\"\n\"1865714\";\"Ageomura\";\"other\"\n\"1865714\";\"shang wei shi\";\"other\"\n\"1865714\";\"上尾市\";\"other\"\n\"1894616\";\"Okinawa\";\"main\"\n\"1894616\";\"Okinava\";\"other\"\n\"1894616\";\"chong sheng shi\";\"other\"\n\"1894616\";\"okinawa si\";\"other\"\n\"1894616\";\"Окинава\";\"other\"\n\"1894616\";\"沖縄市\";\"other\"\n\"1894616\";\"沖繩市\";\"other\"\n\"1894616\";\"오키나와 시\";\"other\"\n\"1895695\";\"Kushima\";\"main\"\n\"1896348\";\"Hikari\";\"main\"\n\"1896348\";\"Khikari\";\"other\"\n\"1896348\";\"Хикари\";\"other\"\n\"1897590\";\"Kaita\";\"main\"\n\"1897590\";\"Kejt\";\"other\"\n\"1897590\";\"Кейт\";\"other\"\n\"1899102\";\"Nagato\";\"main\"\n\"1899102\";\"Нагато\";\"other\"\n\"1907123\";\"Hasuda\";\"main\"\n\"1907123\";\"lian tian shi\";\"other\"\n\"1907123\";\"蓮田市\";\"other\"\n\"1907125\";\"Kamifukuoka\";\"main\"\n\"1907146\";\"Sayama\";\"main\"\n\"1907146\";\"Irumagawa\";\"other\"\n\"1907146\";\"Sajama\";\"other\"\n\"1907146\";\"sayama si\";\"other\"\n\"1907146\";\"xia shan shi\";\"other\"\n\"1907146\";\"Саяма\";\"other\"\n\"1907146\";\"狭山市\";\"other\"\n\"1907146\";\"사야마 시\";\"other\"\n\"1907148\";\"Fussa\";\"main\"\n\"1907148\";\"fu sheng shi\";\"other\"\n\"1907148\";\"福生市\";\"other\"\n\"1907165\";\"Kunitachi\";\"main\"\n\"1907165\";\"guo li shi\";\"other\"\n\"1907165\";\"国立市\";\"other\"\n\"1907299\";\"Asaka\";\"main\"\n\"1907299\";\"asaka si\";\"other\"\n\"1907299\";\"chao xia shi\";\"other\"\n\"1907299\";\"Асака\";\"other\"\n\"1907299\";\"朝霞市\";\"other\"\n\"1907299\";\"아사카 시\";\"other\"\n\"1907300\";\"Wako\";\"main\"\n\"1907300\";\"Vako\";\"other\"\n\"1907300\";\"Вако\";\"other\"\n\"1907301\";\"Toda\";\"main\"\n\"1907301\";\"hu tian shi\";\"other\"\n\"1907301\";\"Тода\";\"other\"\n\"1907301\";\"戸田市\";\"other\"\n\"1907306\";\"Komae\";\"main\"\n\"1907306\";\"po jiang shi\";\"other\"\n\"1907306\";\"狛江市\";\"other\"\n\"1907307\";\"Kimitsu\";\"main\"\n\"1907307\";\"jun jin shi\";\"other\"\n\"1907307\";\"君津市\";\"other\"\n\"1907309\";\"Miura\";\"main\"\n\"1907309\";\"san pu\";\"other\"\n\"1907309\";\"Миура\";\"other\"\n\"1907309\";\"三浦\";\"other\"\n\"1926004\";\"Wakayama-shi\";\"main\"\n\"1926004\";\"Vakajama\";\"other\"\n\"1926004\";\"Wakayama\";\"other\"\n\"1926004\";\"Вакаяма\";\"other\"\n\"1926004\";\"わかやまし\";\"other\"\n\"1926004\";\"和歌山市\";\"other\"\n\"1926006\";\"Iyo\";\"main\"\n\"1926006\";\"Ie\";\"other\"\n\"1926006\";\"Ие\";\"other\"\n\"1926020\";\"Uwajima\";\"main\"\n\"1926020\";\"Uwazima\";\"other\"\n\"1926054\";\"Saijō\";\"main\"\n\"1926054\";\"Saijo\";\"ascii\"\n\"1926054\";\"Saizyo\";\"other\"\n\"1926054\";\"Saizyô\";\"other\"\n\"1926055\";\"Ōzu\";\"main\"\n\"1926055\";\"Ozu\";\"ascii\"\n\"1926055\";\"Odzu\";\"other\"\n\"1926055\";\"Osu\";\"other\"\n\"1926055\";\"Ōsu\";\"other\"\n\"1926055\";\"Одзу\";\"other\"\n\"1926099\";\"Matsuyama-shi\";\"main\"\n\"1926099\";\"Macujama\";\"other\"\n\"1926099\";\"Matsujamo\";\"other\"\n\"1926099\";\"Matsuyama\";\"other\"\n\"1926099\";\"Matuyama\";\"other\"\n\"1926099\";\"masseuyama si\";\"other\"\n\"1926099\";\"matswyama\";\"other\"\n\"1926099\";\"song shan\";\"other\"\n\"1926099\";\"song shan shi\";\"other\"\n\"1926099\";\"ماتسوياما\";\"other\"\n\"1926099\";\"まつやまし\";\"other\"\n\"1926099\";\"松山\";\"other\"\n\"1926099\";\"松山市\";\"other\"\n\"1926099\";\"마쓰야마 시\";\"other\"\n\"1926101\";\"Masaki-chō\";\"main\"\n\"1926101\";\"Masaki-cho\";\"ascii\"\n\"1926101\";\"Masaki\";\"other\"\n\"1926101\";\"song qian ting\";\"other\"\n\"1926101\";\"松前町\";\"other\"\n\"1926116\";\"Kawanoe\";\"main\"\n\"1926142\";\"Hōjō\";\"main\"\n\"1926142\";\"Hojo\";\"ascii\"\n\"1926142\";\"Khodze\";\"other\"\n\"1926142\";\"Ходзе\";\"other\"\n\"2110460\";\"Yuzawa\";\"main\"\n\"2110460\";\"Judzava\";\"other\"\n\"2110460\";\"Юдзава\";\"other\"\n\"2110480\";\"Yotsukaidō\";\"main\"\n\"2110480\";\"Yotsukaido\";\"ascii\"\n\"2110498\";\"Yonezawa\";\"main\"\n\"2110498\";\"Jonezava\";\"other\"\n\"2110498\";\"mi ze shi\";\"other\"\n\"2110498\";\"Йонезава\";\"other\"\n\"2110498\";\"米沢市\";\"other\"\n\"2110506\";\"Yokote\";\"main\"\n\"2110506\";\"Jokote\";\"other\"\n\"2110518\";\"Yōkaichiba\";\"main\"\n\"2110518\";\"Yokaichiba\";\"ascii\"\n\"2110538\";\"Yanagawa\";\"main\"\n\"2110538\";\"Janagava\";\"other\"\n\"2110538\";\"Yanakawa\";\"other\"\n\"2110538\";\"Янагава\";\"other\"\n\"2110541\";\"Yamoto\";\"main\"\n\"2110556\";\"Yamagata-shi\";\"main\"\n\"2110556\";\"Jamagata\";\"other\"\n\"2110556\";\"shan xing\";\"other\"\n\"2110556\";\"Ямагата\";\"other\"\n\"2110556\";\"やまがたし\";\"other\"\n\"2110556\";\"山形\";\"other\"\n\"2110556\";\"山形市\";\"other\"\n\"2110560\";\"Yamada\";\"main\"\n\"2110560\";\"Jamada\";\"other\"\n\"2110560\";\"Yamatamachi\";\"other\"\n\"2110560\";\"Ямада\";\"other\"\n\"2110579\";\"Yachimata\";\"main\"\n\"2110579\";\"ba jie shi\";\"other\"\n\"2110579\";\"八街市\";\"other\"\n\"2110586\";\"Watari\";\"main\"\n\"2110586\";\"Vatari\";\"other\"\n\"2110586\";\"Ватари\";\"other\"\n\"2110596\";\"Wakuya\";\"main\"\n\"2110629\";\"Ushiku\";\"main\"\n\"2110629\";\"niu jiu\";\"other\"\n\"2110629\";\"牛久\";\"other\"\n\"2110683\";\"Tsukuba\";\"main\"\n\"2110729\";\"Toride\";\"main\"\n\"2110729\";\"Torite\";\"other\"\n\"2110729\";\"取手\";\"other\"\n\"2110735\";\"Tōno\";\"main\"\n\"2110735\";\"Tono\";\"ascii\"\n\"2110735\";\"Nambu\";\"other\"\n\"2110735\";\"Tona\";\"other\"\n\"2110735\";\"Тона\";\"other\"\n\"2110743\";\"Tomobe\";\"main\"\n\"2110744\";\"Tomiya\";\"main\"\n\"2110774\";\"Tōgane\";\"main\"\n\"2110774\";\"Togane\";\"ascii\"\n\"2110774\";\"Toganemachi\";\"other\"\n\"2110774\";\"Tōganemachi\";\"other\"\n\"2110793\";\"Tendō\";\"main\"\n\"2110793\";\"Tendo\";\"ascii\"\n\"2110793\";\"Тендо\";\"other\"\n\"2110891\";\"Takahata\";\"main\"\n\"2110891\";\"Takakhata\";\"other\"\n\"2110891\";\"Такахата\";\"other\"\n\"2110893\";\"Takahagi\";\"main\"\n\"2110959\";\"Sukagawa\";\"main\"\n\"2110959\";\"xu he chuan shi\";\"other\"\n\"2110959\";\"須賀川市\";\"other\"\n\"2110994\";\"Shizukuishi\";\"main\"\n\"2111008\";\"Shisui\";\"main\"\n\"2111008\";\"Shisuimachi\";\"other\"\n\"2111008\";\"Shusui\";\"other\"\n\"2111016\";\"Shiroishi\";\"main\"\n\"2111016\";\"Siroisi\";\"other\"\n\"2111018\";\"Shiroi\";\"main\"\n\"2111049\";\"Shiogama\";\"main\"\n\"2111049\";\"Schiogama\";\"other\"\n\"2111049\";\"Siogama\";\"other\"\n\"2111049\";\"yan zao\";\"other\"\n\"2111049\";\"Сиогама\";\"other\"\n\"2111049\";\"塩竈\";\"other\"\n\"2111065\";\"Shinjō\";\"main\"\n\"2111065\";\"Shinjo\";\"ascii\"\n\"2111065\";\"Sindscho\";\"other\"\n\"2111065\";\"Sindze\";\"other\"\n\"2111065\";\"Sinzyo\";\"other\"\n\"2111065\";\"Синдзе\";\"other\"\n\"2111149\";\"Sendai-shi\";\"main\"\n\"2111149\";\"Sendaj\";\"other\"\n\"2111149\";\"xian tai\";\"other\"\n\"2111149\";\"Сендай\";\"other\"\n\"2111149\";\"せんだいし\";\"other\"\n\"2111149\";\"仙台\";\"other\"\n\"2111149\";\"仙台市\";\"other\"\n\"2111173\";\"Sawara\";\"main\"\n\"2111220\";\"Sakura\";\"main\"\n\"2111220\";\"Сакура\";\"other\"\n\"2111248\";\"Sagae\";\"main\"\n\"2111258\";\"Ryūgasaki\";\"main\"\n\"2111258\";\"Ryugasaki\";\"ascii\"\n\"2111277\";\"Rifu\";\"main\"\n\"2111277\";\"Rifuhongo\";\"other\"\n\"2111277\";\"Rifuhongō\";\"other\"\n\"2111277\";\"Ritu\";\"other\"\n\"2111310\";\"Ōtsuchi\";\"main\"\n\"2111310\";\"Otsuchi\";\"ascii\"\n\"2111310\";\"Ozuchi\";\"other\"\n\"2111310\";\"Ozuti\";\"other\"\n\"2111325\";\"Ōtawara\";\"main\"\n\"2111325\";\"Otawara\";\"ascii\"\n\"2111325\";\"Otahara\";\"other\"\n\"2111425\";\"Ōmiya\";\"main\"\n\"2111425\";\"Omiya\";\"ascii\"\n\"2111429\";\"Omigawa\";\"main\"\n\"2111429\";\"Omikawa\";\"other\"\n\"2111435\";\"Ōmagari\";\"main\"\n\"2111435\";\"Omagari\";\"ascii\"\n\"2111441\";\"Okunoya\";\"main\"\n\"2111461\";\"Ōkawara\";\"main\"\n\"2111461\";\"Okawara\";\"ascii\"\n\"2111461\";\"Ogawara\";\"other\"\n\"2111495\";\"Ōhara\";\"main\"\n\"2111495\";\"Ohara\";\"ascii\"\n\"2111530\";\"Ōfunato\";\"main\"\n\"2111530\";\"Ofunato\";\"ascii\"\n\"2111530\";\"da chuan du\";\"other\"\n\"2111530\";\"大船渡\";\"other\"\n\"2111559\";\"Obanazawa\";\"main\"\n\"2111559\";\"Obanasawa\";\"other\"\n\"2111567\";\"Ōarai\";\"main\"\n\"2111567\";\"Oarai\";\"ascii\"\n\"2111567\";\"da xi\";\"other\"\n\"2111567\";\"大洗\";\"other\"\n\"2111568\";\"Ōami\";\"main\"\n\"2111568\";\"Oami\";\"ascii\"\n\"2111656\";\"Nihommatsu\";\"main\"\n\"2111656\";\"Nihonmatsu\";\"other\"\n\"2111677\";\"Narutō\";\"main\"\n\"2111677\";\"Naruto\";\"ascii\"\n\"2111684\";\"Narita\";\"main\"\n\"2111684\";\"cheng tian shi\";\"other\"\n\"2111684\";\"na ri ta\";\"other\"\n\"2111684\";\"nalita si\";\"other\"\n\"2111684\";\"Нарита\";\"other\"\n\"2111684\";\"นาริตะ\";\"other\"\n\"2111684\";\"成田市\";\"other\"\n\"2111684\";\"나리타 시\";\"other\"\n\"2111687\";\"Narashino\";\"main\"\n\"2111687\";\"xi zhi ye shi\";\"other\"\n\"2111687\";\"習志野市\";\"other\"\n\"2111704\";\"Namie\";\"main\"\n\"2111749\";\"Naka\";\"main\"\n\"2111749\";\"Nakamuracho\";\"other\"\n\"2111749\";\"Nakamurachō\";\"other\"\n\"2111781\";\"Nagai\";\"main\"\n\"2111781\";\"Нагаи\";\"other\"\n\"2111824\";\"Motomiya\";\"main\"\n\"2111827\";\"Motegi\";\"main\"\n\"2111831\";\"Moriya\";\"main\"\n\"2111831\";\"Morija\";\"other\"\n\"2111831\";\"Мория\";\"other\"\n\"2111834\";\"Morioka-shi\";\"main\"\n\"2111834\";\"Morioka\";\"other\"\n\"2111834\";\"molioka si\";\"other\"\n\"2111834\";\"Мориока\";\"other\"\n\"2111834\";\"もりおかし\";\"other\"\n\"2111834\";\"盛岡市\";\"other\"\n\"2111834\";\"모리오카 시\";\"other\"\n\"2111836\";\"Mooka\";\"main\"\n\"2111836\";\"Moka\";\"other\"\n\"2111836\";\"Mōka\";\"other\"\n\"2111836\";\"zhen gang shi\";\"other\"\n\"2111836\";\"真岡市\";\"other\"\n\"2111855\";\"Mobara\";\"main\"\n\"2111855\";\"Mobaramachi\";\"other\"\n\"2111855\";\"Mohara\";\"other\"\n\"2111855\";\"mao yuan shi\";\"other\"\n\"2111855\";\"茂原市\";\"other\"\n\"2111859\";\"Mizusawa\";\"main\"\n\"2111859\";\"Midzusava\";\"other\"\n\"2111859\";\"Mizuzawa\";\"other\"\n\"2111859\";\"Мидзусава\";\"other\"\n\"2111884\";\"Miyako\";\"main\"\n\"2111884\";\"Mijako\";\"other\"\n\"2111884\";\"Мияко\";\"other\"\n\"2111901\";\"Mito-shi\";\"main\"\n\"2111901\";\"みとし\";\"other\"\n\"2111901\";\"水戸市\";\"other\"\n\"2111943\";\"Miharu\";\"main\"\n\"2111964\";\"Matsushima\";\"main\"\n\"2111964\";\"Macusima\";\"other\"\n\"2111964\";\"Matsusima\";\"other\"\n\"2111964\";\"song dao\";\"other\"\n\"2111964\";\"Мацусима\";\"other\"\n\"2111964\";\"松島\";\"other\"\n\"2111999\";\"Mashiko\";\"main\"\n\"2111999\";\"yi zi\";\"other\"\n\"2111999\";\"益子\";\"other\"\n\"2112008\";\"Marumori\";\"main\"\n\"2112019\";\"Makabe\";\"main\"\n\"2112077\";\"Kuroiso\";\"main\"\n\"2112141\";\"Kōriyama\";\"main\"\n\"2112141\";\"Koriyama\";\"ascii\"\n\"2112141\";\"Korijama\";\"other\"\n\"2112141\";\"Корияма\";\"other\"\n\"2112182\";\"Kogota\";\"main\"\n\"2112227\";\"Kitakami\";\"main\"\n\"2112227\";\"bei shang shi\";\"other\"\n\"2112227\";\"Китаками\";\"other\"\n\"2112227\";\"北上市\";\"other\"\n\"2112232\";\"Kitaibaraki\";\"main\"\n\"2112232\";\"Kitaibaragi\";\"other\"\n\"2112297\";\"Kawaguchi\";\"main\"\n\"2112297\";\"Kavaguti\";\"other\"\n\"2112297\";\"ya chuan\";\"other\"\n\"2112297\";\"Кавагути\";\"other\"\n\"2112297\";\"鴨川\";\"other\"\n\"2112309\";\"Katsuura\";\"main\"\n\"2112309\";\"Kacuura\";\"other\"\n\"2112309\";\"Кацуура\";\"other\"\n\"2112312\";\"Katsuta\";\"main\"\n\"2112319\";\"Katori-shi\";\"main\"\n\"2112319\";\"Katori\";\"other\"\n\"2112319\";\"Sawara\";\"other\"\n\"2112319\";\"Sawara-shi\";\"other\"\n\"2112319\";\"xiang qu\";\"other\"\n\"2112319\";\"xiang qu shi\";\"other\"\n\"2112319\";\"zuo yuan shi\";\"other\"\n\"2112319\";\"佐原市\";\"other\"\n\"2112319\";\"香取\";\"other\"\n\"2112319\";\"香取市\";\"other\"\n\"2112343\";\"Kasama\";\"main\"\n\"2112343\";\"li jian\";\"other\"\n\"2112343\";\"Касама\";\"other\"\n\"2112343\";\"笠間\";\"other\"\n\"2112354\";\"Karasuyama\";\"main\"\n\"2112409\";\"Kaminoyama\";\"main\"\n\"2112444\";\"Kamaishi\";\"main\"\n\"2112444\";\"Kamaischi\";\"other\"\n\"2112444\";\"Kamaisi\";\"other\"\n\"2112444\";\"fu shi\";\"other\"\n\"2112444\";\"Камаиси\";\"other\"\n\"2112444\";\"釜石\";\"other\"\n\"2112454\";\"Kakudate\";\"main\"\n\"2112454\";\"Kakunodate\";\"other\"\n\"2112454\";\"Какунодате\";\"other\"\n\"2112455\";\"Kakuda\";\"main\"\n\"2112455\";\"Kakudskij\";\"other\"\n\"2112455\";\"Какудский\";\"other\"\n\"2112521\";\"Iwase\";\"main\"\n\"2112521\";\"Ivaseh\";\"other\"\n\"2112521\";\"Ивасэ\";\"other\"\n\"2112527\";\"Iwanuma\";\"main\"\n\"2112539\";\"Iwaki\";\"main\"\n\"2112539\";\"Ivaki\";\"other\"\n\"2112539\";\"Иваки\";\"other\"\n\"2112555\";\"Itako\";\"main\"\n\"2112555\";\"Idako\";\"other\"\n\"2112571\";\"Ishioka\";\"main\"\n\"2112571\";\"Isioka\";\"other\"\n\"2112571\";\"Исиока\";\"other\"\n\"2112576\";\"Ishinomaki\";\"main\"\n\"2112576\";\"Ishinomachi\";\"other\"\n\"2112576\";\"Isinomaki\";\"other\"\n\"2112576\";\"isinomaki si\";\"other\"\n\"2112576\";\"shi juan shi\";\"other\"\n\"2112576\";\"石巻市\";\"other\"\n\"2112576\";\"이시노마키 시\";\"other\"\n\"2112583\";\"Ishikawa\";\"main\"\n\"2112583\";\"Isikava\";\"other\"\n\"2112583\";\"Исикава\";\"other\"\n\"2112615\";\"Inawashiro\";\"main\"\n\"2112656\";\"Ichinoseki\";\"main\"\n\"2112656\";\"Itinoseki\";\"other\"\n\"2112656\";\"Itschinoseki\";\"other\"\n\"2112664\";\"Ichihara\";\"main\"\n\"2112664\";\"Itikhara\";\"other\"\n\"2112664\";\"shi yuan shi\";\"other\"\n\"2112664\";\"Итихара\";\"other\"\n\"2112664\";\"市原市\";\"other\"\n\"2112692\";\"Hobara\";\"main\"\n\"2112708\";\"Hitachi\";\"main\"\n\"2112708\";\"Hidachi\";\"other\"\n\"2112708\";\"ri li\";\"other\"\n\"2112708\";\"日立\";\"other\"\n\"2112758\";\"Higashine\";\"main\"\n\"2112802\";\"Hasaki\";\"main\"\n\"2112802\";\"Hazaki\";\"other\"\n\"2112802\";\"Namisaki\";\"other\"\n\"2112823\";\"Hanamaki\";\"main\"\n\"2112823\";\"hua juan shi\";\"other\"\n\"2112823\";\"花巻市\";\"other\"\n\"2112899\";\"Furukawa\";\"main\"\n\"2112899\";\"Hurukawa\";\"other\"\n\"2112903\";\"Funehiki\";\"main\"\n\"2112903\";\"Funahiki\";\"other\"\n\"2112913\";\"Funaishikawa\";\"main\"\n\"2112913\";\"Tokai-mura\";\"other\"\n\"2112913\";\"Tōkai-mura\";\"other\"\n\"2112923\";\"Fukushima-shi\";\"main\"\n\"2112923\";\"Fukusima\";\"other\"\n\"2112923\";\"Furukawa\";\"other\"\n\"2112923\";\"Hukusima\";\"other\"\n\"2112923\";\"Фукусима\";\"other\"\n\"2112923\";\"ふくしまし\";\"other\"\n\"2112923\";\"福島市\";\"other\"\n\"2112940\";\"Fujishiro\";\"main\"\n\"2112963\";\"Edosaki\";\"main\"\n\"2112989\";\"Daigo\";\"main\"\n\"2112989\";\"Даиго\";\"other\"\n\"2113015\";\"Chiba-shi\";\"main\"\n\"2113015\";\"Chiba\";\"other\"\n\"2113015\";\"Ciba\";\"other\"\n\"2113015\";\"Tiba\";\"other\"\n\"2113015\";\"jiba si\";\"other\"\n\"2113015\";\"qian ye shi\";\"other\"\n\"2113015\";\"tshyba\";\"other\"\n\"2113015\";\"Ĉiba\";\"other\"\n\"2113015\";\"Čiba\";\"other\"\n\"2113015\";\"Чиба\";\"other\"\n\"2113015\";\"تشيبا\";\"other\"\n\"2113015\";\"ちばし\";\"other\"\n\"2113015\";\"千葉市\";\"other\"\n\"2113015\";\"지바 시\";\"other\"\n\"2113077\";\"Asahi\";\"main\"\n\"2113115\";\"Ami\";\"main\"\n\"2113115\";\"Ами\";\"other\"\n\"2113126\";\"Akita\";\"main\"\n\"2113164\";\"Abiko\";\"main\"\n\"2113164\";\"wo sun zi shi\";\"other\"\n\"2113164\";\"Абико\";\"other\"\n\"2113164\";\"我孫子市\";\"other\"\n\"2113719\";\"Akita-shi\";\"main\"\n\"2113719\";\"あきたし\";\"other\"\n\"2113719\";\"秋田市\";\"other\"\n\"2127383\";\"Bihoro\";\"main\"\n\"2127383\";\"Biboro\";\"other\"\n\"2127383\";\"Biholo\";\"other\"\n\"2127383\";\"Biporo\";\"other\"\n\"2127515\";\"Wakkanai\";\"main\"\n\"2127515\";\"Inai\";\"other\"\n\"2127515\";\"VAKKANAJ\";\"other\"\n\"2127515\";\"Vakkanaj\";\"other\"\n\"2127515\";\"waskanai si\";\"other\"\n\"2127515\";\"zhi nei shi\";\"other\"\n\"2127515\";\"ВАККАНАЙ\";\"other\"\n\"2127515\";\"Вакканай\";\"other\"\n\"2127515\";\"稚内市\";\"other\"\n\"2127515\";\"왓카나이 시\";\"other\"\n\"2127545\";\"Utashinai\";\"main\"\n\"2127733\";\"Tomakomai\";\"main\"\n\"2127733\";\"Tomakomaj\";\"other\"\n\"2127733\";\"shan xiao mu\";\"other\"\n\"2127733\";\"Томакомай\";\"other\"\n\"2127733\";\"苫小牧\";\"other\"\n\"2127802\";\"Tōbetsu\";\"main\"\n\"2127802\";\"Tobetsu\";\"ascii\"\n\"2127878\";\"Mutsu\";\"main\"\n\"2127878\";\"Mucu\";\"other\"\n\"2127878\";\"Tanabe\";\"other\"\n\"2127878\";\"Tanabu\";\"other\"\n\"2127878\";\"mutsu\";\"other\"\n\"2127878\";\"Муцу\";\"other\"\n\"2127878\";\"むつ\";\"other\"\n\"2127896\";\"Takikawa\";\"main\"\n\"2127896\";\"Takigawa\";\"other\"\n\"2127910\";\"Takanosu\";\"main\"\n\"2127955\";\"Sunagawa\";\"main\"\n\"2127955\";\"Sunakawa\";\"other\"\n\"2127955\";\"Sunigawa\";\"other\"\n\"2128025\";\"Shizunai\";\"main\"\n\"2128025\";\"Shimo geho\";\"other\"\n\"2128025\";\"Shimo-kebo\";\"other\"\n\"2128025\";\"Shimo-kebō\";\"other\"\n\"2128025\";\"Shimo-keho\";\"other\"\n\"2128025\";\"Shimo-kehō\";\"other\"\n\"2128072\";\"Shiraoi\";\"main\"\n\"2128147\";\"Shimo-furano\";\"main\"\n\"2128147\";\"Shimo-furanoshigai\";\"other\"\n\"2128206\";\"Shibetsu\";\"main\"\n\"2128206\";\"Sibetsu\";\"other\"\n\"2128206\";\"Sibetu\";\"other\"\n\"2128206\";\"Sipetu\";\"other\"\n\"2128206\";\"biao jin\";\"other\"\n\"2128206\";\"標津\";\"other\"\n\"2128295\";\"Sapporo-shi\";\"main\"\n\"2128295\";\"Saporas\";\"other\"\n\"2128295\";\"Saporo\";\"other\"\n\"2128295\";\"Sapporia\";\"other\"\n\"2128295\";\"Sapporo\";\"other\"\n\"2128295\";\"capporo\";\"other\"\n\"2128295\";\"sabwrw\";\"other\"\n\"2128295\";\"sap poa roa\";\"other\"\n\"2128295\";\"saspolo si\";\"other\"\n\"2128295\";\"zha huang shi\";\"other\"\n\"2128295\";\"Сапоро\";\"other\"\n\"2128295\";\"Саппоро\";\"other\"\n\"2128295\";\"سابورو\";\"other\"\n\"2128295\";\"சப்போரோ\";\"other\"\n\"2128295\";\"ซัปโปะโระ\";\"other\"\n\"2128295\";\"საპორო\";\"other\"\n\"2128295\";\"さっぽろし\";\"other\"\n\"2128295\";\"札幌市\";\"other\"\n\"2128295\";\"삿포로 시\";\"other\"\n\"2128382\";\"Rumoi\";\"main\"\n\"2128382\";\"Rumoe\";\"other\"\n\"2128558\";\"Otofuke\";\"main\"\n\"2128558\";\"Otopuke\";\"other\"\n\"2128574\";\"Otaru\";\"main\"\n\"2128574\";\"otalu si\";\"other\"\n\"2128574\";\"xiao zun shi\";\"other\"\n\"2128574\";\"Отару\";\"other\"\n\"2128574\";\"小樽市\";\"other\"\n\"2128574\";\"오타루 시\";\"other\"\n\"2128787\";\"Ōdate\";\"main\"\n\"2128787\";\"Odate\";\"ascii\"\n\"2128787\";\"Otate\";\"other\"\n\"2128787\";\"Ōtate\";\"other\"\n\"2128815\";\"Obihiro\";\"main\"\n\"2128815\";\"Obibiro\";\"other\"\n\"2128815\";\"Obikhiro\";\"other\"\n\"2128815\";\"dai guang\";\"other\"\n\"2128815\";\"Обихиро\";\"other\"\n\"2128815\";\"帯広\";\"other\"\n\"2128867\";\"Noshiro\";\"main\"\n\"2128867\";\"Noshirominato\";\"other\"\n\"2128867\";\"Nosiro\";\"other\"\n\"2128867\";\"Nosirskij\";\"other\"\n\"2128867\";\"Носирский\";\"other\"\n\"2128975\";\"Nemuro\";\"main\"\n\"2128975\";\"Nehmuro\";\"other\"\n\"2128975\";\"gen shi shi\";\"other\"\n\"2128975\";\"nemulo si\";\"other\"\n\"2128975\";\"Нэмуро\";\"other\"\n\"2128975\";\"根室市\";\"other\"\n\"2128975\";\"네무로 시\";\"other\"\n\"2128983\";\"Nayoro\";\"main\"\n\"2128983\";\"NAERO\";\"other\"\n\"2128983\";\"Nayoru\";\"other\"\n\"2128983\";\"НАЕРО\";\"other\"\n\"2129003\";\"Nanae\";\"main\"\n\"2129005\";\"Namioka\";\"main\"\n\"2129005\";\"Намиока\";\"other\"\n\"2129101\";\"Muroran\";\"main\"\n\"2129101\";\"shi lan\";\"other\"\n\"2129101\";\"Муроран\";\"other\"\n\"2129101\";\"室蘭\";\"other\"\n\"2129163\";\"Mombetsu\";\"main\"\n\"2129163\";\"MOMBECU\";\"other\"\n\"2129163\";\"Mobetsu\";\"other\"\n\"2129163\";\"Mombecu\";\"other\"\n\"2129163\";\"Monbetsu\";\"other\"\n\"2129163\";\"Monbetu\";\"other\"\n\"2129163\";\"wen bie\";\"other\"\n\"2129163\";\"МОМБЕЦУ\";\"other\"\n\"2129163\";\"Момбецу\";\"other\"\n\"2129163\";\"紋別\";\"other\"\n\"2129211\";\"Misawa\";\"main\"\n\"2129211\";\"Misava\";\"other\"\n\"2129211\";\"Omisawa\";\"other\"\n\"2129211\";\"san ze\";\"other\"\n\"2129211\";\"Ōmisawa\";\"other\"\n\"2129211\";\"Мисава\";\"other\"\n\"2129211\";\"三沢\";\"other\"\n\"2129218\";\"Yoichi\";\"main\"\n\"2129218\";\"Minatomachi\";\"other\"\n\"2129218\";\"Yoichicho\";\"other\"\n\"2129218\";\"Yoichichō\";\"other\"\n\"2129218\";\"Yoiti\";\"other\"\n\"2129324\";\"Makubetsu\";\"main\"\n\"2129376\";\"Kushiro\";\"main\"\n\"2129376\";\"Kushira\";\"other\"\n\"2129376\";\"Kusiro\";\"other\"\n\"2129376\";\"chuan lu shi\";\"other\"\n\"2129376\";\"Куширо\";\"other\"\n\"2129376\";\"釧路市\";\"other\"\n\"2129395\";\"Kuroishi\";\"main\"\n\"2129395\";\"hei shi\";\"other\"\n\"2129395\";\"黒石\";\"other\"\n\"2129513\";\"Kizukuri\";\"main\"\n\"2129537\";\"Kitami\";\"main\"\n\"2129537\";\"Kity\";\"other\"\n\"2129537\";\"Nokkeushi\";\"other\"\n\"2129537\";\"Nokkeusi\";\"other\"\n\"2129537\";\"Notsukeushi\";\"other\"\n\"2129537\";\"Nupukeushi-mura\";\"other\"\n\"2129537\";\"Киты\";\"other\"\n\"2129761\";\"Kamikawa\";\"main\"\n\"2129766\";\"Kamiiso\";\"main\"\n\"2129868\";\"Iwanai\";\"main\"\n\"2129870\";\"Iwamizawa\";\"main\"\n\"2129870\";\"Iwamisawa\";\"other\"\n\"2129870\";\"Twamizawa\";\"other\"\n\"2129870\";\"iwamizawa\";\"other\"\n\"2129870\";\"yan jian ze\";\"other\"\n\"2129870\";\"いわみざわ\";\"other\"\n\"2129870\";\"イワミザワ\";\"other\"\n\"2129870\";\"岩見沢\";\"other\"\n\"2129870\";\"ｲﾜﾐｻﾞﾜ\";\"other\"\n\"2129909\";\"Ishikari\";\"main\"\n\"2129909\";\"Isikari\";\"other\"\n\"2129909\";\"Исикари\";\"other\"\n\"2129961\";\"Ichinohe\";\"main\"\n\"2129961\";\"Ehinohe\";\"other\"\n\"2129961\";\"Ichinobe\";\"other\"\n\"2129961\";\"Itinohe\";\"other\"\n\"2129961\";\"Itschinohe\";\"other\"\n\"2130054\";\"Kitahiroshima\";\"main\"\n\"2130054\";\"Hiroshima\";\"other\"\n\"2130054\";\"Khirosima\";\"other\"\n\"2130054\";\"Nakaosawa\";\"other\"\n\"2130054\";\"Хиросима\";\"other\"\n\"2130054\";\"北広島\";\"other\"\n\"2130057\";\"Hirosaki\";\"main\"\n\"2130057\";\"Khirosaki\";\"other\"\n\"2130057\";\"hilosaki si\";\"other\"\n\"2130057\";\"hong qian shi\";\"other\"\n\"2130057\";\"Хиросаки\";\"other\"\n\"2130057\";\"弘前市\";\"other\"\n\"2130057\";\"히로사키 시\";\"other\"\n\"2130146\";\"Kazuno\";\"main\"\n\"2130146\";\"Hanawa\";\"other\"\n\"2130188\";\"Hakodate\";\"main\"\n\"2130188\";\"Hokodate\";\"other\"\n\"2130188\";\"Khakodate\";\"other\"\n\"2130188\";\"ha ko da tea\";\"other\"\n\"2130188\";\"hakodate si\";\"other\"\n\"2130188\";\"hakwdath\";\"other\"\n\"2130188\";\"han guan shi\";\"other\"\n\"2130188\";\"Хакодате\";\"other\"\n\"2130188\";\"هاكوداته\";\"other\"\n\"2130188\";\"ฮาโกดาเตะ\";\"other\"\n\"2130188\";\"函館市\";\"other\"\n\"2130188\";\"하코다테 시\";\"other\"\n\"2130203\";\"Hachinohe\";\"main\"\n\"2130203\";\"ba hu\";\"other\"\n\"2130203\";\"八戸\";\"other\"\n\"2130332\";\"Fukagawa\";\"main\"\n\"2130332\";\"Fukagava\";\"other\"\n\"2130332\";\"Hukagawa\";\"other\"\n\"2130332\";\"Фукагава\";\"other\"\n\"2130404\";\"Ebetsu\";\"main\"\n\"2130421\";\"Date\";\"main\"\n\"2130421\";\"Nishi-mombetsu\";\"other\"\n\"2130452\";\"Chitose\";\"main\"\n\"2130534\";\"Bibai\";\"main\"\n\"2130534\";\"Numakai\";\"other\"\n\"2130612\";\"Ashibetsu\";\"main\"\n\"2130612\";\"Shimo-ashibetsu\";\"other\"\n\"2130629\";\"Asahikawa\";\"main\"\n\"2130629\";\"Asahigawa\";\"other\"\n\"2130629\";\"Asakhigava\";\"other\"\n\"2130629\";\"Asakhikava\";\"other\"\n\"2130629\";\"xu chuan\";\"other\"\n\"2130629\";\"Асахикава\";\"other\"\n\"2130629\";\"旭川\";\"other\"\n\"2130658\";\"Aomori-shi\";\"main\"\n\"2130658\";\"Aomori\";\"other\"\n\"2130658\";\"Aomori - qing sen shi\";\"other\"\n\"2130658\";\"Aomori - 青森市\";\"other\"\n\"2130658\";\"aomoli si\";\"other\"\n\"2130658\";\"awmwry\";\"other\"\n\"2130658\";\"qing sen shi\";\"other\"\n\"2130658\";\"Аомори\";\"other\"\n\"2130658\";\"آوموري\";\"other\"\n\"2130658\";\"あおもりし\";\"other\"\n\"2130658\";\"青森市\";\"other\"\n\"2130658\";\"아오모리 시\";\"other\"\n\"2130705\";\"Akabira\";\"main\"\n\"2130705\";\"Kami-akabira\";\"other\"\n\"2130741\";\"Abashiri\";\"main\"\n\"2130741\";\"ABASIRI\";\"other\"\n\"2130741\";\"Abasiri\";\"other\"\n\"2130741\";\"Aburatsu\";\"other\"\n\"2130741\";\"wang zou\";\"other\"\n\"2130741\";\"АБАСИРИ\";\"other\"\n\"2130741\";\"網走\";\"other\"\n\"2131612\";\"Goshogawara\";\"main\"\n\"6417596\";\"Kōya\";\"main\"\n\"6417596\";\"Koya\";\"ascii\"\n\"6417596\";\"Koja\";\"other\"\n\"6417596\";\"Коя\";\"other\"\n\"6691616\";\"Kihoku-chō\";\"main\"\n\"6691616\";\"Kihoku-cho\";\"ascii\"\n\"6691616\";\"Kihoku\";\"other\"\n\"6691616\";\"gui bei ting\";\"other\"\n\"6691616\";\"鬼北町\";\"other\"\n\"6694821\";\"Nanto-shi\";\"main\"\n\"6694821\";\"Nanto\";\"other\"\n\"6694821\";\"nan li shi\";\"other\"\n\"6694821\";\"南砺市\";\"other\"\n\"6696932\";\"Kawage\";\"main\"\n\"6697514\";\"Asahi\";\"main\"\n\"6697563\";\"Neyagawa\";\"main\"\n\"6697563\";\"Neyagawa-shi\";\"other\"\n\"6697563\";\"qin wu chuan\";\"other\"\n\"6697563\";\"qin wu chuan shi\";\"other\"\n\"6697563\";\"寝屋川\";\"other\"\n\"6697563\";\"寝屋川市\";\"other\"\n\"6822096\";\"Hitachi-Naka\";\"main\"\n\"6822096\";\"hitachinaka\";\"other\"\n\"6822096\";\"hitachinaka shi\";\"other\"\n\"6822096\";\"hitachinaka-shi\";\"other\"\n\"6822096\";\"ひたちなか\";\"other\"\n\"6822096\";\"ひたちなか市\";\"other\"\n\"6822108\";\"Inashiki\";\"main\"\n\"6822108\";\"dao fu\";\"other\"\n\"6822108\";\"dao fu shi\";\"other\"\n\"6822108\";\"sakuragawa\";\"other\"\n\"6822108\";\"sakuragawa-mura\";\"other\"\n\"6822108\";\"稲敷\";\"other\"\n\"6822108\";\"稲敷市\";\"other\"\n\"6822131\";\"Akiruno-shi\";\"main\"\n\"6822131\";\"akiru ye\";\"other\"\n\"6822131\";\"akiru ye shi\";\"other\"\n\"6822131\";\"akiruno\";\"other\"\n\"6822131\";\"あきる野\";\"other\"\n\"6822131\";\"あきる野市\";\"other\"\n\"6822146\";\"Ōnojō\";\"main\"\n\"6822146\";\"Onojo\";\"ascii\"\n\"6822146\";\"da ye cheng\";\"other\"\n\"6822146\";\"da ye cheng shi\";\"other\"\n\"6822146\";\"大野城\";\"other\"\n\"6822146\";\"大野城市\";\"other\"\n\"6822181\";\"Kamagaya-shi\";\"main\"\n\"6822181\";\"Kamagaya\";\"other\"\n\"6822181\";\"lian~ke gu\";\"other\"\n\"6822181\";\"lian~ke gu shi\";\"other\"\n\"6822181\";\"鎌ヶ谷\";\"other\"\n\"6822181\";\"鎌ヶ谷市\";\"other\"\n\"6822217\";\"Minokamo\";\"main\"\n\"6822217\";\"mei nong jia mao\";\"other\"\n\"6822217\";\"Минокамо\";\"other\"\n\"6822217\";\"美濃加茂\";\"other\"\n\"6822219\";\"Gujō\";\"main\"\n\"6822219\";\"Gujo\";\"ascii\"\n\"6822219\";\"Gudzjo\";\"other\"\n\"6822219\";\"jun shang\";\"other\"\n\"6822219\";\"Гудзё\";\"other\"\n\"6822219\";\"郡上\";\"other\"\n\"6825489\";\"Jōetsu\";\"main\"\n\"6825489\";\"Joetsu\";\"ascii\"\n\"6825489\";\"Joetsu-shi\";\"other\"\n\"6825489\";\"shang yue\";\"other\"\n\"6825489\";\"shang yue shi\";\"other\"\n\"6825489\";\"上越\";\"other\"\n\"6825489\";\"上越市\";\"other\"\n\"6940394\";\"Saitama\";\"main\"\n\"6940394\";\"Саитама\";\"other\"\n\"6941783\";\"Niseko Town\";\"main\"\n\"6941783\";\"Nisekoa\";\"other\"\n\"6941783\";\"Nisekoan\";\"other\"\n\"6941783\";\"Nisekoā\";\"other\"\n\"7279570\";\"Higashimurayama-shi\";\"main\"\n\"7279570\";\"Higashi-Murayama\";\"other\"\n\"7279570\";\"Higashi-Murayama-shi\";\"other\"\n\"7279570\";\"Higashimurayama\";\"other\"\n\"7279570\";\"dong cun shan\";\"other\"\n\"7279570\";\"dong cun shan shi\";\"other\"\n\"7279570\";\"東村山\";\"other\"\n\"7279570\";\"東村山市\";\"other\"\n\"7279571\";\"Kunisaki-shi\";\"main\"\n\"7279571\";\"Kunisaki\";\"other\"\n\"7279571\";\"guo dong\";\"other\"\n\"7279571\";\"guo dong shi\";\"other\"\n\"7279571\";\"国東\";\"other\"\n\"7279571\";\"国東市\";\"other\"\n\"7281819\";\"Fujikawaguchiko\";\"main\"\n\"7281819\";\"Fudzikavagutiko\";\"other\"\n\"7281819\";\"Фудзикавагутико\";\"other\"\n\"7303387\";\"Rishiri Town\";\"main\"\n\"7303387\";\"Rishiri\";\"other\"\n\"7303387\";\"Ришири\";\"other\"\n\"178040\";\"Yala\";\"main\"\n\"178040\";\"Yala Station\";\"other\"\n\"178073\";\"Wundanyi\";\"main\"\n\"178077\";\"Wote\";\"main\"\n\"178093\";\"Witu\";\"main\"\n\"178202\";\"Webuye\";\"main\"\n\"178202\";\"Broderick Falls\";\"other\"\n\"178443\";\"Wajir\";\"main\"\n\"178443\";\"El Sadi\";\"other\"\n\"178522\";\"Voi\";\"main\"\n\"179330\";\"Thika\";\"main\"\n\"179330\";\"Dhika\";\"other\"\n\"179330\";\"Tik\";\"other\"\n\"179330\";\"Тик\";\"other\"\n\"179525\";\"Taveta\";\"main\"\n\"179634\";\"Takaungu\";\"main\"\n\"179888\";\"Sotik\";\"main\"\n\"179888\";\"Chamagel\";\"other\"\n\"179888\";\"Chemagal\";\"other\"\n\"179888\";\"Chemagel\";\"other\"\n\"180389\";\"Shimoni\";\"main\"\n\"180646\";\"Sawasawa\";\"main\"\n\"180868\";\"Sagana\";\"main\"\n\"180992\";\"Rumuruti\";\"main\"\n\"181135\";\"Rongai\";\"main\"\n\"181702\";\"Oyugis\";\"main\"\n\"181735\";\"Othaya\";\"main\"\n\"182498\";\"Ogembo\";\"main\"\n\"182701\";\"Nyeri\";\"main\"\n\"182701\";\"Nyiri\";\"other\"\n\"182701\";\"nieri\";\"other\"\n\"182701\";\"ニエリ\";\"other\"\n\"183027\";\"Nyahururu\";\"main\"\n\"183027\";\"Nyahururu Falls\";\"other\"\n\"183027\";\"Thompsons Falls\";\"other\"\n\"183027\";\"Thomsons Falls\";\"other\"\n\"183027\";\"Thorason's Falls\";\"other\"\n\"183027\";\"Thorason’s Falls\";\"other\"\n\"183595\";\"Ngong\";\"main\"\n\"184367\";\"Naro Moru\";\"main\"\n\"184379\";\"Narok\";\"main\"\n\"184433\";\"Nanyuki\";\"main\"\n\"184471\";\"Nandi Hills\";\"main\"\n\"184546\";\"Nambale\";\"main\"\n\"184546\";\"Nambare\";\"other\"\n\"184570\";\"Namanga\";\"main\"\n\"184622\";\"Nakuru\";\"main\"\n\"184622\";\"Накуру\";\"other\"\n\"184707\";\"Naivasha\";\"main\"\n\"184707\";\"Najvasha\";\"other\"\n\"184707\";\"Найваша\";\"other\"\n\"184745\";\"Nairobi\";\"main\"\n\"184745\";\"Nairoba\";\"other\"\n\"184745\";\"Nairobis\";\"other\"\n\"184745\";\"Nairobo\";\"other\"\n\"184745\";\"Nairompi\";\"other\"\n\"184745\";\"Najrobi\";\"other\"\n\"184745\";\"Najrobo\";\"other\"\n\"184745\";\"Naíróbí\";\"other\"\n\"184745\";\"Naîrobî\";\"other\"\n\"184745\";\"nai luo bi\";\"other\"\n\"184745\";\"nailobi\";\"other\"\n\"184745\";\"nairobi\";\"other\"\n\"184745\";\"nayrwby\";\"other\"\n\"184745\";\"nirobi\";\"other\"\n\"184745\";\"nyrwby\";\"other\"\n\"184745\";\"nyyrwby\";\"other\"\n\"184745\";\"Ναϊρόμπι\";\"other\"\n\"184745\";\"Найроби\";\"other\"\n\"184745\";\"Најроби\";\"other\"\n\"184745\";\"ניירובי\";\"other\"\n\"184745\";\"نایروبی\";\"other\"\n\"184745\";\"نيروبي\";\"other\"\n\"184745\";\"ไนโรบี\";\"other\"\n\"184745\";\"ናይሮቢ\";\"other\"\n\"184745\";\"ナイロビ\";\"other\"\n\"184745\";\"奈洛比\";\"other\"\n\"184745\";\"나이로비\";\"other\"\n\"184921\";\"Mwingi\";\"main\"\n\"185579\";\"Murang’a\";\"main\"\n\"185579\";\"Murang'a\";\"ascii\"\n\"185579\";\"Fort Hall\";\"other\"\n\"185702\";\"Mumias\";\"main\"\n\"185939\";\"Muhoroni\";\"main\"\n\"186101\";\"Mtito Andei\";\"main\"\n\"186101\";\"Mutitu Andei\";\"other\"\n\"186180\";\"Moyale\";\"main\"\n\"186180\";\"Fort Harrington\";\"other\"\n\"186180\";\"Port Harrington\";\"other\"\n\"186301\";\"Mombasa\";\"main\"\n\"186301\";\"Mombaca\";\"other\"\n\"186301\";\"Mombassa\";\"other\"\n\"186301\";\"Mombaça\";\"other\"\n\"186301\";\"Mvita\";\"other\"\n\"186301\";\"meng ba sa\";\"other\"\n\"186301\";\"monbasa\";\"other\"\n\"186301\";\"mwmbasa\";\"other\"\n\"186301\";\"mwmbsh\";\"other\"\n\"186301\";\"Момбаса\";\"other\"\n\"186301\";\"מומבסה\";\"other\"\n\"186301\";\"مومباسا\";\"other\"\n\"186301\";\"モンバサ\";\"other\"\n\"186301\";\"蒙巴萨\";\"other\"\n\"186315\";\"Molo\";\"main\"\n\"186315\";\"Моло\";\"other\"\n\"186731\";\"Migori\";\"main\"\n\"186827\";\"Meru\";\"main\"\n\"186827\";\"Mery\";\"other\"\n\"186827\";\"Меры\";\"other\"\n\"187231\";\"Maua\";\"main\"\n\"187585\";\"Marsabit\";\"main\"\n\"187661\";\"Mariakani\";\"main\"\n\"187725\";\"Maralal\";\"main\"\n\"187733\";\"Maragua\";\"main\"\n\"187896\";\"Mandera\";\"main\"\n\"187896\";\"Madera\";\"other\"\n\"187896\";\"Mandere\";\"other\"\n\"187896\";\"Мандере\";\"other\"\n\"187968\";\"Malindi\";\"main\"\n\"187968\";\"Melinde\";\"other\"\n\"187968\";\"marindi\";\"other\"\n\"187968\";\"Малинди\";\"other\"\n\"187968\";\"マリンディ\";\"other\"\n\"187977\";\"Malikisi\";\"main\"\n\"187977\";\"Malakisi\";\"other\"\n\"188025\";\"Malaba\";\"main\"\n\"188080\";\"Makueni\";\"main\"\n\"188080\";\"Makueni Boma\";\"other\"\n\"188408\";\"Magadi\";\"main\"\n\"188492\";\"Machakos\";\"main\"\n\"188492\";\"Machakosskij\";\"other\"\n\"188492\";\"Masaku\";\"other\"\n\"188492\";\"Мачакосский\";\"other\"\n\"188617\";\"Lumbwa\";\"main\"\n\"188617\";\"Lumowa\";\"other\"\n\"188657\";\"Lugulu\";\"main\"\n\"188657\";\"Busia\";\"other\"\n\"188714\";\"Luanda\";\"main\"\n\"188714\";\"Lwanda\";\"other\"\n\"188981\";\"Londiani\";\"main\"\n\"189280\";\"Lodwar\";\"main\"\n\"189280\";\"Lodvar\";\"other\"\n\"189280\";\"Лодвар\";\"other\"\n\"189367\";\"Litein\";\"main\"\n\"189386\";\"Limuru\";\"main\"\n\"189741\";\"Lamu\";\"main\"\n\"189741\";\"Amu\";\"other\"\n\"189741\";\"Lama\";\"other\"\n\"189741\";\"Лама\";\"other\"\n\"190108\";\"Kwale\";\"main\"\n\"190544\";\"Konza\";\"main\"\n\"191038\";\"Kitui\";\"main\"\n\"191220\";\"Kitale\";\"main\"\n\"191220\";\"Китале\";\"other\"\n\"191245\";\"Kisumu\";\"main\"\n\"191245\";\"Kisumo\";\"other\"\n\"191245\";\"Lady Whitehouse\";\"other\"\n\"191245\";\"Port Florence\";\"other\"\n\"191245\";\"Winam\";\"other\"\n\"191245\";\"Кисуму\";\"other\"\n\"191299\";\"Kisii\";\"main\"\n\"191675\";\"Kipini\";\"main\"\n\"191833\";\"Kinango\";\"main\"\n\"191837\";\"Kinancha\";\"main\"\n\"191837\";\"Kihancha\";\"other\"\n\"192067\";\"Kilifi\";\"main\"\n\"192126\";\"Kikuyu\";\"main\"\n\"192126\";\"Gikuyu\";\"other\"\n\"192202\";\"Kijabe\";\"main\"\n\"192710\";\"Kiambu\";\"main\"\n\"192710\";\"Kiambuu\";\"other\"\n\"192710\";\"Киамбу\";\"other\"\n\"192859\";\"Keruguya\";\"main\"\n\"192859\";\"Kerugoya\";\"other\"\n\"192869\";\"Keroka\";\"main\"\n\"192900\";\"Kericho\";\"main\"\n\"193627\";\"Karuri\";\"main\"\n\"194038\";\"Kapsabet\";\"main\"\n\"194038\";\"Nandi\";\"other\"\n\"194406\";\"Kangundo\";\"main\"\n\"194406\";\"Kangundu\";\"other\"\n\"194451\";\"Kangema\";\"main\"\n\"195272\";\"Kakamega\";\"main\"\n\"195272\";\"Kakamege\";\"other\"\n\"195272\";\"Какамеге\";\"other\"\n\"195298\";\"Kajiado\";\"main\"\n\"195298\";\"Ol Kejuado\";\"other\"\n\"195821\";\"Kabarnet\";\"main\"\n\"196231\";\"Isiolo\";\"main\"\n\"196231\";\"Исиоло\";\"other\"\n\"196742\";\"Homa Bay\";\"main\"\n\"196742\";\"Homa\";\"other\"\n\"197514\";\"Gazi\";\"main\"\n\"197514\";\"Gasi\";\"other\"\n\"197514\";\"Gaze\";\"other\"\n\"197745\";\"Garissa\";\"main\"\n\"197745\";\"Garisa\";\"other\"\n\"197745\";\"Гариса\";\"other\"\n\"198476\";\"Embu\";\"main\"\n\"198476\";\"Ehmba\";\"other\"\n\"198476\";\"Kirimari\";\"other\"\n\"198476\";\"Эмба\";\"other\"\n\"198629\";\"Eldoret\";\"main\"\n\"198629\";\"Ehldoret\";\"other\"\n\"198629\";\"Olderet\";\"other\"\n\"198629\";\"Olteret\";\"other\"\n\"198629\";\"Элдорет\";\"other\"\n\"198636\";\"Eldama Ravine\";\"main\"\n\"198636\";\"Eldama\";\"other\"\n\"198636\";\"Shimoni\";\"other\"\n\"199284\";\"Chuka\";\"main\"\n\"199604\";\"Chepareria\";\"main\"\n\"199604\";\"Cheberia\";\"other\"\n\"199971\";\"Butere\";\"main\"\n\"200061\";\"Port Bunyala\";\"main\"\n\"200061\";\"Bunyala\";\"other\"\n\"200061\";\"Port Victoria\";\"other\"\n\"200067\";\"Bungoma\";\"main\"\n\"200067\";\"Бунгома\";\"other\"\n\"200304\";\"Bondo\";\"main\"\n\"200308\";\"Bomet\";\"main\"\n\"200308\";\"Sotik\";\"other\"\n\"200308\";\"Sotik Post\";\"other\"\n\"200575\";\"Baringo\";\"main\"\n\"200787\";\"Athi River\";\"main\"\n\"201229\";\"Ahero\";\"main\"\n\"383388\";\"Siaya\";\"main\"\n\"1222562\";\"Sulyukta\";\"main\"\n\"1222562\";\"Seluka\";\"other\"\n\"1222562\";\"Selukta\";\"other\"\n\"1222562\";\"Suluktu\";\"other\"\n\"1222562\";\"Sülüktü\";\"other\"\n\"1222635\";\"Khaydarkan\";\"main\"\n\"1222635\";\"Khaidarkan\";\"other\"\n\"1222635\";\"Khaydarken\";\"other\"\n\"1222662\";\"Isfana\";\"main\"\n\"1222662\";\"Isfina\";\"other\"\n\"1527004\";\"Balykchy\";\"main\"\n\"1527004\";\"Balykchi\";\"other\"\n\"1527004\";\"Issyk-Kul'\";\"other\"\n\"1527004\";\"Issyk-Kul’\";\"other\"\n\"1527004\";\"Rybach'e\";\"other\"\n\"1527004\";\"Rybach'ye\";\"other\"\n\"1527004\";\"Rybach’e\";\"other\"\n\"1527004\";\"Rybach’ye\";\"other\"\n\"1527004\";\"Ysyk-Kol\";\"other\"\n\"1527004\";\"Ysyk-Köl\";\"other\"\n\"1527004\";\"Балыкчи\";\"other\"\n\"1527121\";\"Tyup\";\"main\"\n\"1527121\";\"Preobrazhenskoye\";\"other\"\n\"1527121\";\"Tjup\";\"other\"\n\"1527199\";\"Tokmok\";\"main\"\n\"1527199\";\"Tokmak\";\"other\"\n\"1527199\";\"Токмок\";\"other\"\n\"1527260\";\"Tash-Kumyr\";\"main\"\n\"1527260\";\"Naryn\";\"other\"\n\"1527260\";\"Tash-Komur\";\"other\"\n\"1527260\";\"Tash-Kömür\";\"other\"\n\"1527260\";\"Tashkumor\";\"other\"\n\"1527260\";\"Tashkumör\";\"other\"\n\"1527260\";\"Таш-Кумыр\";\"other\"\n\"1527299\";\"Talas\";\"main\"\n\"1527299\";\"Dmitriyevka\";\"other\"\n\"1527299\";\"Dmitriyevskoye\";\"other\"\n\"1527299\";\"Talass\";\"other\"\n\"1527299\";\"Талас\";\"other\"\n\"1527351\";\"Sosnovka\";\"main\"\n\"1527497\";\"Pokrovka\";\"main\"\n\"1527497\";\"Kyzyl-Suu\";\"other\"\n\"1527497\";\"Leninskoye\";\"other\"\n\"1527497\";\"Nov Pokrovka\";\"other\"\n\"1527497\";\"Novo-Pokrovskoye\";\"other\"\n\"1527513\";\"Özgön\";\"main\"\n\"1527513\";\"Ozgon\";\"ascii\"\n\"1527513\";\"Uzgen\";\"other\"\n\"1527513\";\"Uzkend\";\"other\"\n\"1527513\";\"Узген\";\"other\"\n\"1527534\";\"Osh\";\"main\"\n\"1527534\";\"O'sh\";\"other\"\n\"1527534\";\"Och\";\"other\"\n\"1527534\";\"Os\";\"other\"\n\"1527534\";\"Osch\";\"other\"\n\"1527534\";\"Osj\";\"other\"\n\"1527534\";\"Osz\";\"other\"\n\"1527534\";\"Oş\";\"other\"\n\"1527534\";\"Oš\";\"other\"\n\"1527534\";\"ao shen\";\"other\"\n\"1527534\";\"oshi\";\"other\"\n\"1527534\";\"shhr awsh\";\"other\"\n\"1527534\";\"Ош\";\"other\"\n\"1527534\";\"אוש\";\"other\"\n\"1527534\";\"شهر اوش\";\"other\"\n\"1527534\";\"オシ\";\"other\"\n\"1527534\";\"奧什\";\"other\"\n\"1527592\";\"Naryn\";\"main\"\n\"1527592\";\"Naron\";\"other\"\n\"1527592\";\"Нарын\";\"other\"\n\"1527719\";\"Kyzyl-Kyya\";\"main\"\n\"1527719\";\"Kizol-Kiva\";\"other\"\n\"1527719\";\"Kizyl-Kiya\";\"other\"\n\"1527719\";\"Kizöl-Kiva\";\"other\"\n\"1527719\";\"Kyzyl-Kija\";\"other\"\n\"1527719\";\"Kyzyl-Kiya\";\"other\"\n\"1527719\";\"Kzyl-Kiya\";\"other\"\n\"1527719\";\"Кызыл-Кия\";\"other\"\n\"1528053\";\"Karavan\";\"main\"\n\"1528053\";\"Kerben\";\"other\"\n\"1528091\";\"Kara-Su\";\"main\"\n\"1528091\";\"Kara-Suu\";\"other\"\n\"1528091\";\"Кара-Суу\";\"other\"\n\"1528121\";\"Karakol\";\"main\"\n\"1528121\";\"Karakoł\";\"other\"\n\"1528121\";\"Prjeval'sk\";\"other\"\n\"1528121\";\"Prjeval’sk\";\"other\"\n\"1528121\";\"Przheval'sk\";\"other\"\n\"1528121\";\"Przheval’sk\";\"other\"\n\"1528121\";\"Каракол\";\"other\"\n\"1528182\";\"Kara-Balta\";\"main\"\n\"1528182\";\"Imeni Mikoyana\";\"other\"\n\"1528182\";\"Kara-Balty\";\"other\"\n\"1528182\";\"Karabalto\";\"other\"\n\"1528182\";\"Karabaltö\";\"other\"\n\"1528182\";\"Кара-Балта\";\"other\"\n\"1528193\";\"Kant\";\"main\"\n\"1528193\";\"Кант\";\"other\"\n\"1528234\";\"Kaindy\";\"main\"\n\"1528234\";\"Kainda\";\"other\"\n\"1528234\";\"Molotovsk\";\"other\"\n\"1528234\";\"Molotovskiy\";\"other\"\n\"1528241\";\"Kadzhi-Say\";\"main\"\n\"1528241\";\"Kadzhi-Saj\";\"other\"\n\"1528241\";\"Kaji-Say\";\"other\"\n\"1528241\";\"Каджи-Сай\";\"other\"\n\"1528249\";\"Jalal-Abad\";\"main\"\n\"1528249\";\"Dschalalabat\";\"other\"\n\"1528249\";\"Dzalal-Abad\";\"other\"\n\"1528249\";\"Dzalalabad\";\"other\"\n\"1528249\";\"Dzalalabat\";\"other\"\n\"1528249\";\"Dzhalal Abad\";\"other\"\n\"1528249\";\"Dzhalal-Abad\";\"other\"\n\"1528249\";\"Dzjalal-Abad\";\"other\"\n\"1528249\";\"Dżalalabad\";\"other\"\n\"1528249\";\"Džalal-Abad\";\"other\"\n\"1528249\";\"Džalalabat\";\"other\"\n\"1528249\";\"Джалал Абад\";\"other\"\n\"1528249\";\"Джалал-Абад\";\"other\"\n\"1528512\";\"Cholpon-Ata\";\"main\"\n\"1528512\";\"Chalpan-Ata\";\"other\"\n\"1528512\";\"Stanovishche Chalpan-Ata\";\"other\"\n\"1528512\";\"Чолпон-Ата\";\"other\"\n\"1528606\";\"Kemin\";\"main\"\n\"1528606\";\"Bostrorechenskoye\";\"other\"\n\"1528606\";\"Bystrorechenskoye\";\"other\"\n\"1528606\";\"Bystrovka\";\"other\"\n\"1528675\";\"Bishkek\";\"main\"\n\"1528675\";\"Bichkek\";\"other\"\n\"1528675\";\"Bischkek\";\"other\"\n\"1528675\";\"Bisjkek\";\"other\"\n\"1528675\";\"Biskek\";\"other\"\n\"1528675\";\"Biskekas\";\"other\"\n\"1528675\";\"Biskeko\";\"other\"\n\"1528675\";\"Biszkek\";\"other\"\n\"1528675\";\"Bixkek\";\"other\"\n\"1528675\";\"Biŝkeko\";\"other\"\n\"1528675\";\"Bişkek\";\"other\"\n\"1528675\";\"Biškek\";\"other\"\n\"1528675\";\"Biškekas\";\"other\"\n\"1528675\";\"Frunze\";\"other\"\n\"1528675\";\"Mpiskek\";\"other\"\n\"1528675\";\"Pishkek\";\"other\"\n\"1528675\";\"Pishpek\";\"other\"\n\"1528675\";\"bi shen kai ke\";\"other\"\n\"1528675\";\"bishukeku\";\"other\"\n\"1528675\";\"bisyukekeu\";\"other\"\n\"1528675\";\"bshkyk\";\"other\"\n\"1528675\";\"byshkk\";\"other\"\n\"1528675\";\"bysqq\";\"other\"\n\"1528675\";\"Μπισκέκ\";\"other\"\n\"1528675\";\"Бишкек\";\"other\"\n\"1528675\";\"Բիշկեկ\";\"other\"\n\"1528675\";\"בישקק\";\"other\"\n\"1528675\";\"بشكيك\";\"other\"\n\"1528675\";\"بیشکک\";\"other\"\n\"1528675\";\"ቢሽኬክ\";\"other\"\n\"1528675\";\"ビシュケク\";\"other\"\n\"1528675\";\"比什凯克\";\"other\"\n\"1528675\";\"비슈케크\";\"other\"\n\"1528717\";\"Bazar-Kurgan\";\"main\"\n\"1528717\";\"Bazar\";\"other\"\n\"1528717\";\"Базар-Курган\";\"other\"\n\"1528735\";\"Batken\";\"main\"\n\"1528735\";\"Баткен\";\"other\"\n\"1528796\";\"At-Bashy\";\"main\"\n\"1528796\";\"At-Bashi\";\"other\"\n\"1538648\";\"Toktogul\";\"main\"\n\"1821306\";\"Phnom Penh\";\"main\"\n\"1821306\";\"Nam Van\";\"other\"\n\"1821306\";\"Nam-Vang\";\"other\"\n\"1821306\";\"Phnom Pen\";\"other\"\n\"1821306\";\"Phnom Pénh\";\"other\"\n\"1821306\";\"Phnom-Penh\";\"other\"\n\"1821306\";\"Phnompenh\";\"other\"\n\"1821306\";\"Phnum Penh\";\"other\"\n\"1821306\";\"Phnum Pénh\";\"other\"\n\"1821306\";\"Phnôm Pênh\";\"other\"\n\"1821306\";\"Phon Phen\";\"other\"\n\"1821306\";\"Pnom Pen\";\"other\"\n\"1821306\";\"Pnom Pen'ch\";\"other\"\n\"1821306\";\"Pnom Penh\";\"other\"\n\"1821306\";\"Pnompen'\";\"other\"\n\"1821306\";\"Pnompenis\";\"other\"\n\"1821306\";\"Ville de Phnom Penh\";\"other\"\n\"1821306\";\"jin bian\";\"other\"\n\"1821306\";\"peunompen\";\"other\"\n\"1821306\";\"phnm pen\";\"other\"\n\"1821306\";\"phnmpey\";\"other\"\n\"1821306\";\"pnwm pn\";\"other\"\n\"1821306\";\"punonpen\";\"other\"\n\"1821306\";\"Πνομ Πενχ\";\"other\"\n\"1821306\";\"Пном Пен\";\"other\"\n\"1821306\";\"Пномпень\";\"other\"\n\"1821306\";\"פנום פן\";\"other\"\n\"1821306\";\"پىنوم پېن\";\"other\"\n\"1821306\";\"พนมเปญ\";\"other\"\n\"1821306\";\"พนมเปณ\";\"other\"\n\"1821306\";\"ፕኖም ፔን\";\"other\"\n\"1821306\";\"ក្រុងភ្នំពេញ\";\"other\"\n\"1821306\";\"プノンペン\";\"other\"\n\"1821306\";\"金边\";\"other\"\n\"1821306\";\"프놈펜\";\"other\"\n\"1821935\";\"Ta Khmau\";\"main\"\n\"1821935\";\"Takhman\";\"other\"\n\"1821935\";\"Takhmau\";\"other\"\n\"1821935\";\"Takkhmau\";\"other\"\n\"1821935\";\"Такхмау\";\"other\"\n\"1822029\";\"Stœ̆ng Trêng\";\"main\"\n\"1822029\";\"Stoeng Treng\";\"ascii\"\n\"1822029\";\"Stung Teeng\";\"other\"\n\"1822029\";\"Stung Treng\";\"other\"\n\"1822207\";\"Sisŏphŏn\";\"main\"\n\"1822207\";\"Sisophon\";\"ascii\"\n\"1822207\";\"Sesopone\";\"other\"\n\"1822207\";\"Sisobhon\";\"other\"\n\"1822214\";\"Siĕmréab\";\"main\"\n\"1822214\";\"Siemreab\";\"ascii\"\n\"1822214\";\"Ciudad de Siem Riep\";\"other\"\n\"1822214\";\"Khett Siem Reab\";\"other\"\n\"1822214\";\"Siem Reap\";\"other\"\n\"1822214\";\"Siem Riep\";\"other\"\n\"1822214\";\"Siem-Reap\";\"other\"\n\"1822214\";\"Siemrap\";\"other\"\n\"1822214\";\"Siemrãp\";\"other\"\n\"1822214\";\"Siêm Riệp\";\"other\"\n\"1822214\";\"seiym reiyb\";\"other\"\n\"1822214\";\"shemuriappu\";\"other\"\n\"1822214\";\"xian li sheng\";\"other\"\n\"1822214\";\"xian li shi\";\"other\"\n\"1822214\";\"Сием-Реап\";\"other\"\n\"1822214\";\"เสียมเรียบ\";\"other\"\n\"1822214\";\"シェムリアップ\";\"other\"\n\"1822214\";\"暹粒市\";\"other\"\n\"1822214\";\"暹粒省\";\"other\"\n\"1822227\";\"Sênmônoŭrôm\";\"main\"\n\"1822227\";\"Senmonourom\";\"ascii\"\n\"1822227\";\"Mondul Kiri\";\"other\"\n\"1822227\";\"Sen Monorum\";\"other\"\n\"1822227\";\"Sen Moronom\";\"other\"\n\"1822227\";\"Senmanorum\";\"other\"\n\"1822227\";\"Senmonorom\";\"other\"\n\"1822768\";\"Poŭthĭsăt\";\"main\"\n\"1822768\";\"Pouthisat\";\"ascii\"\n\"1822768\";\"Porsat\";\"other\"\n\"1822768\";\"Pousat\";\"other\"\n\"1822768\";\"Poŭsăt\";\"other\"\n\"1822768\";\"Pursat\";\"other\"\n\"1822906\";\"Phumĭ Véal Srê\";\"main\"\n\"1822906\";\"Phumi Veal Sre\";\"ascii\"\n\"1830098\";\"Phnum Tbêng Méanchey\";\"main\"\n\"1830098\";\"Phnum Tbeng Meanchey\";\"ascii\"\n\"1830098\";\"Kampong Preng\";\"other\"\n\"1830098\";\"Kimpong Pranak\";\"other\"\n\"1830098\";\"Kompong Pranak\";\"other\"\n\"1830098\";\"Kompong Prena\";\"other\"\n\"1830098\";\"Kompong Preng\";\"other\"\n\"1830098\";\"Phnom Tbeng Meanchey\";\"other\"\n\"1830098\";\"Phnom Thbeng Meanchey\";\"other\"\n\"1830098\";\"Phnom Thbeng Neanchey\";\"other\"\n\"1830098\";\"Phom Thbeng Meanchey\";\"other\"\n\"1830098\";\"Phumi Thbeng Meanchey\";\"other\"\n\"1830098\";\"Phumĭ Thbeng Meanchey\";\"other\"\n\"1830098\";\"Thbeng Meanchey\";\"other\"\n\"1830194\";\"Paôy Pêt\";\"main\"\n\"1830194\";\"Paoy Pet\";\"ascii\"\n\"1830194\";\"Phum Paoy Pet\";\"other\"\n\"1830194\";\"Phum Paôy Pêt\";\"other\"\n\"1830194\";\"Phumi Paoy Pet\";\"other\"\n\"1830194\";\"Phumĭ Paôy Pêt\";\"other\"\n\"1830194\";\"Poipet\";\"other\"\n\"1830194\";\"Pojpet\";\"other\"\n\"1830194\";\"Пойпет\";\"other\"\n\"1830205\";\"Pailĭn\";\"main\"\n\"1830205\";\"Pailin\";\"ascii\"\n\"1830205\";\"Ciudad de Pailin\";\"other\"\n\"1830205\";\"Ciudad de Pailín\";\"other\"\n\"1830205\";\"Krong Pailin\";\"other\"\n\"1830205\";\"pairin\";\"other\"\n\"1830205\";\"ក្រុងប៉ៃលិន\";\"other\"\n\"1830205\";\"パイリン\";\"other\"\n\"1830377\";\"Lumphăt\";\"main\"\n\"1830377\";\"Lumphat\";\"ascii\"\n\"1830377\";\"Lomphat\";\"other\"\n\"1830467\";\"Krŏng Kêb\";\"main\"\n\"1830467\";\"Krong Keb\";\"ascii\"\n\"1830467\";\"Kep\";\"other\"\n\"1830467\";\"Krong Kep\";\"other\"\n\"1830467\";\"Krŏng Kêp\";\"other\"\n\"1830468\";\"Krŏng Kaôh Kŏng\";\"main\"\n\"1830468\";\"Krong Kaoh Kong\";\"ascii\"\n\"1830468\";\"Khemarak Phoumin\";\"other\"\n\"1830468\";\"Khemarak Phoumin Ville\";\"other\"\n\"1830468\";\"Khemareah Phumint\";\"other\"\n\"1830468\";\"Koh Kong\";\"other\"\n\"1830468\";\"Koville\";\"other\"\n\"1830468\";\"Krong Kao Kong\";\"other\"\n\"1830468\";\"Krong Khemarak Phoumin\";\"other\"\n\"1830468\";\"Krong Khemoreah Phumint\";\"other\"\n\"1830468\";\"Krong Koh Kong\";\"other\"\n\"1830468\";\"Krŏng Khémôreăh Phumĭnt\";\"other\"\n\"1830564\";\"Krâchéh\";\"main\"\n\"1830564\";\"Kracheh\";\"ascii\"\n\"1830564\";\"Krati\";\"other\"\n\"1830564\";\"Kratie\";\"other\"\n\"1831112\";\"Kâmpôt\";\"main\"\n\"1831112\";\"Kampot\";\"ascii\"\n\"1831112\";\"Compong Bai\";\"other\"\n\"1831112\";\"Compong Baï\";\"other\"\n\"1831112\";\"Kampat\";\"other\"\n\"1831112\";\"Kamput\";\"other\"\n\"1831112\";\"Kompong Bai\";\"other\"\n\"1831112\";\"Krong Kampot\";\"other\"\n\"1831112\";\"Krŏng Kâmpôt\";\"other\"\n\"1831112\";\"Кампот\";\"other\"\n\"1831125\";\"Kâmpóng Thum\";\"main\"\n\"1831125\";\"Kampong Thum\";\"ascii\"\n\"1831125\";\"Kampong Thom\";\"other\"\n\"1831125\";\"Kampong Thun\";\"other\"\n\"1831125\";\"Kompong Thom\";\"other\"\n\"1831133\";\"Kâmpóng Spœ\";\"main\"\n\"1831133\";\"Kampong Spoe\";\"ascii\"\n\"1831133\";\"Kompon Spu\";\"other\"\n\"1831133\";\"Kompong Speu\";\"other\"\n\"1831133\";\"Kŏmpon Spu\";\"other\"\n\"1831142\";\"Kâmpóng Saôm\";\"main\"\n\"1831142\";\"Kampong Saom\";\"ascii\"\n\"1831142\";\"Ciudad de Sihanoukville\";\"other\"\n\"1831142\";\"Kampong Semville\";\"other\"\n\"1831142\";\"Kampong Somville\";\"other\"\n\"1831142\";\"Kom Pong Song\";\"other\"\n\"1831142\";\"Kompong Som\";\"other\"\n\"1831142\";\"Kompong Somville\";\"other\"\n\"1831142\";\"Krong Preah Seihanu\";\"other\"\n\"1831142\";\"Krong Preah Sihanouk\";\"other\"\n\"1831142\";\"Krŏng Preăh Seihanŭ\";\"other\"\n\"1831142\";\"Krŏng Preăh Sihanouk\";\"other\"\n\"1831142\";\"Port de Sihanoukville\";\"other\"\n\"1831142\";\"Preah Seihanouk\";\"other\"\n\"1831142\";\"Sianukvil'\";\"other\"\n\"1831142\";\"Sihanouk\";\"other\"\n\"1831142\";\"Sihanoukville\";\"other\"\n\"1831142\";\"Sikanonville\";\"other\"\n\"1831142\";\"shianukubiru\";\"other\"\n\"1831142\";\"sih nu will\";\"other\"\n\"1831142\";\"xi ha nu ke shi\";\"other\"\n\"1831142\";\"Сиануквиль\";\"other\"\n\"1831142\";\"สีหนุวิลล์\";\"other\"\n\"1831142\";\"ក្រុងព្រះសីហនុ\";\"other\"\n\"1831142\";\"シアヌークビル\";\"other\"\n\"1831142\";\"西哈努克市\";\"other\"\n\"1831167\";\"Kâmpóng Chhnăng\";\"main\"\n\"1831167\";\"Kampong Chhnang\";\"ascii\"\n\"1831167\";\"Kampong Chnang\";\"other\"\n\"1831167\";\"Kampongchnang\";\"other\"\n\"1831167\";\"Kompon Chnang\";\"other\"\n\"1831167\";\"Kompong Chhang\";\"other\"\n\"1831167\";\"Kompong Chhnang\";\"other\"\n\"1831167\";\"Phumi Kampong Chhnang\";\"other\"\n\"1831167\";\"Phumĭ Kâmpông Chhnăng\";\"other\"\n\"1831167\";\"Кампонгчнанг\";\"other\"\n\"1831173\";\"Kâmpóng Cham\";\"main\"\n\"1831173\";\"Kampong Cham\";\"ascii\"\n\"1831173\";\"Compon-lina\";\"other\"\n\"1831173\";\"Kampongtjam\";\"other\"\n\"1831173\";\"Kompon Cam\";\"other\"\n\"1831173\";\"Kompong Cham\";\"other\"\n\"1831173\";\"Кампонгтям\";\"other\"\n\"1831797\";\"Bătdâmbâng\";\"main\"\n\"1831797\";\"Batdambang\";\"ascii\"\n\"1831797\";\"Battamban\";\"other\"\n\"1831797\";\"Battambang\";\"other\"\n\"1831797\";\"Ciudad de Battambang\";\"other\"\n\"1831797\";\"Khett Batdambang\";\"other\"\n\"1831797\";\"Phratabong\";\"other\"\n\"1831797\";\"ma de wang\";\"other\"\n\"1831797\";\"បាត់ដំបង\";\"other\"\n\"1831797\";\"马德望\";\"other\"\n\"2110023\";\"Utiroa\";\"main\"\n\"2110050\";\"Temaraia\";\"main\"\n\"2110050\";\"Temaraia Matang\";\"other\"\n\"2110079\";\"Tarawa\";\"main\"\n\"2110079\";\"Bairiki\";\"other\"\n\"2110079\";\"Tabwewa\";\"other\"\n\"2110079\";\"Tapiwa\";\"other\"\n\"2110079\";\"Taraoua\";\"other\"\n\"2110079\";\"Tarava\";\"other\"\n\"2110079\";\"Ταράουα\";\"other\"\n\"2110079\";\"Тарава\";\"other\"\n\"2110093\";\"Taburao\";\"main\"\n\"2110093\";\"Tebero\";\"other\"\n\"2110095\";\"Tabukiniberu\";\"main\"\n\"2110095\";\"Tabukinberu\";\"other\"\n\"2110108\";\"Tabiauea\";\"main\"\n\"2110108\";\"King\";\"other\"\n\"2110108\";\"Tebiauea\";\"other\"\n\"2110108\";\"Tebiayea\";\"other\"\n\"2110121\";\"Rungata\";\"main\"\n\"2110121\";\"Rongata\";\"other\"\n\"2110131\";\"Rawannawi\";\"main\"\n\"2110227\";\"Butaritari\";\"main\"\n\"2110227\";\"New Butaritari\";\"other\"\n\"2110257\";\"South Tarawa\";\"main\"\n\"2110257\";\"Bajriki\";\"other\"\n\"2110257\";\"Tarawa\";\"other\"\n\"2110257\";\"Tarawa-Sud\";\"other\"\n\"2110257\";\"Tarawa-Sul\";\"other\"\n\"2110257\";\"Zuid-Tarawa\";\"other\"\n\"2110257\";\"nam talawa\";\"other\"\n\"2110257\";\"Байрики\";\"other\"\n\"2110257\";\"דרום טאראווה\";\"other\"\n\"2110257\";\"남 타라와\";\"other\"\n\"921654\";\"Ouanani\";\"main\"\n\"921654\";\"Oanani\";\"other\"\n\"921654\";\"Wanani\";\"other\"\n\"921655\";\"Vouani\";\"main\"\n\"921655\";\"Voani\";\"other\"\n\"921655\";\"Voany\";\"other\"\n\"921661\";\"Vanambouani\";\"main\"\n\"921661\";\"Vanamboini\";\"other\"\n\"921674\";\"Singani\";\"main\"\n\"921675\";\"Sima\";\"main\"\n\"921687\";\"Salimani\";\"main\"\n\"921687\";\"Selimani\";\"other\"\n\"921703\";\"Patsi\";\"main\"\n\"921703\";\"Patsy\";\"other\"\n\"921703\";\"Wilson\";\"other\"\n\"921711\";\"Ouzini\";\"main\"\n\"921711\";\"Ousini\";\"other\"\n\"921713\";\"Oussivo\";\"main\"\n\"921713\";\"Ousivo\";\"other\"\n\"921714\";\"Ourovéni\";\"main\"\n\"921714\";\"Ouroveni\";\"ascii\"\n\"921721\";\"Ouani\";\"main\"\n\"921721\";\"Oani\";\"other\"\n\"921721\";\"Ouany\";\"other\"\n\"921726\";\"Ongoni\";\"main\"\n\"921729\";\"Ntsoudjini\";\"main\"\n\"921729\";\"Mitsoudjini\";\"other\"\n\"921729\";\"Mitsudje\";\"other\"\n\"921729\";\"Mitsuje\";\"other\"\n\"921729\";\"Tsudjim\";\"other\"\n\"921729\";\"Tsudjin\";\"other\"\n\"921729\";\"Tsudjini\";\"other\"\n\"921729\";\"Tsujuni\";\"other\"\n\"921731\";\"Ntsaouéni\";\"main\"\n\"921731\";\"Ntsaoueni\";\"ascii\"\n\"921731\";\"Mitsaoueni\";\"other\"\n\"921731\";\"Mtsaoueni\";\"other\"\n\"921731\";\"Tsaueni\";\"other\"\n\"921745\";\"Nioumachoua\";\"main\"\n\"921745\";\"Niomachoi\";\"other\"\n\"921745\";\"Nioumachoi\";\"other\"\n\"921745\";\"Nioumgchoi\";\"other\"\n\"921745\";\"Numa Choa\";\"other\"\n\"921746\";\"Kyo\";\"main\"\n\"921746\";\"Niambahamoro\";\"other\"\n\"921753\";\"Moutsamoudou\";\"main\"\n\"921753\";\"Matsamudu\";\"other\"\n\"921753\";\"Mutsamudu\";\"other\"\n\"921756\";\"Mtsamdou\";\"main\"\n\"921762\";\"Mrémani\";\"main\"\n\"921762\";\"Mremani\";\"ascii\"\n\"921762\";\"Mrenani\";\"other\"\n\"921763\";\"Mramani\";\"main\"\n\"921763\";\"M'Ramoni\";\"other\"\n\"921763\";\"M'ramoni\";\"other\"\n\"921763\";\"M’Ramoni\";\"other\"\n\"921763\";\"M’ramoni\";\"other\"\n\"921764\";\"Moya\";\"main\"\n\"921772\";\"Moroni\";\"main\"\n\"921772\";\"Moronis\";\"other\"\n\"921772\";\"mo luo ni\";\"other\"\n\"921772\";\"moloni\";\"other\"\n\"921772\";\"moroni\";\"other\"\n\"921772\";\"mwrwny\";\"other\"\n\"921772\";\"Μορονί\";\"other\"\n\"921772\";\"Морони\";\"other\"\n\"921772\";\"מורוני\";\"other\"\n\"921772\";\"موروني\";\"other\"\n\"921772\";\"ሞሮኒ\";\"other\"\n\"921772\";\"モロニ\";\"other\"\n\"921772\";\"莫洛尼\";\"other\"\n\"921772\";\"모로니\";\"other\"\n\"921777\";\"Mohoro\";\"main\"\n\"921783\";\"Mjimandra\";\"main\"\n\"921783\";\"M'Jimanda\";\"other\"\n\"921783\";\"Moujimada\";\"other\"\n\"921783\";\"M’Jimanda\";\"other\"\n\"921784\";\"Mjamaoué\";\"main\"\n\"921784\";\"Mjamaoue\";\"ascii\"\n\"921784\";\"Jamaue\";\"other\"\n\"921784\";\"Jamaué\";\"other\"\n\"921786\";\"Mitsamiouli\";\"main\"\n\"921786\";\"Mitsamihouh\";\"other\"\n\"921786\";\"Mitsumiuli\";\"other\"\n\"921786\";\"Mtamuhuli\";\"other\"\n\"921806\";\"Mbéni\";\"main\"\n\"921806\";\"Mbeni\";\"ascii\"\n\"921814\";\"Maraharé\";\"main\"\n\"921814\";\"Marahare\";\"ascii\"\n\"921814\";\"Marahabe\";\"other\"\n\"921814\";\"Marahabé\";\"other\"\n\"921834\";\"Koni-Djodjo\";\"main\"\n\"921834\";\"Koni\";\"other\"\n\"921835\";\"Koni-Ngani\";\"main\"\n\"921835\";\"Kone N'Goni\";\"other\"\n\"921835\";\"Kone N’Goni\";\"other\"\n\"921838\";\"Koki\";\"main\"\n\"921847\";\"Kangani\";\"main\"\n\"921852\";\"Ivouani\";\"main\"\n\"921852\";\"Inani\";\"other\"\n\"921852\";\"Iuani\";\"other\"\n\"921852\";\"Ivoini\";\"other\"\n\"921856\";\"Itsandra\";\"main\"\n\"921856\";\"Itsandha\";\"other\"\n\"921858\";\"Héroumbili\";\"main\"\n\"921858\";\"Heroumbili\";\"ascii\"\n\"921858\";\"Iroumbili\";\"other\"\n\"921858\";\"Irumbilli\";\"other\"\n\"921870\";\"Hoani\";\"main\"\n\"921884\";\"Foumbouni\";\"main\"\n\"921884\";\"Fomboni\";\"other\"\n\"921884\";\"Mbagini\";\"other\"\n\"921884\";\"Mbajini\";\"other\"\n\"921889\";\"Fomboni\";\"main\"\n\"921889\";\"Fumboni\";\"other\"\n\"921897\";\"Dziani\";\"main\"\n\"921906\";\"Domoni\";\"main\"\n\"921906\";\"Deumoni\";\"other\"\n\"921913\";\"Djoyézi\";\"main\"\n\"921913\";\"Djoyezi\";\"ascii\"\n\"921913\";\"Djoiezi\";\"other\"\n\"921913\";\"Mudjiauesi\";\"other\"\n\"921913\";\"Mujiauesi\";\"other\"\n\"921918\";\"Dembéni\";\"main\"\n\"921918\";\"Dembeni\";\"ascii\"\n\"921918\";\"Debeni\";\"other\"\n\"921918\";\"Djembeni\";\"other\"\n\"921939\";\"Chironkamba\";\"main\"\n\"921942\";\"Chindini\";\"main\"\n\"921942\";\"Chendini\";\"other\"\n\"921942\";\"Shendini\";\"other\"\n\"921944\";\"Chezani\";\"main\"\n\"921944\";\"Cezani\";\"other\"\n\"921946\";\"Chandra\";\"main\"\n\"921946\";\"Chanda\";\"other\"\n\"921956\";\"Bouni\";\"main\"\n\"921957\";\"Boungouéni\";\"main\"\n\"921957\";\"Boungoueni\";\"ascii\"\n\"921967\";\"Bimbini\";\"main\"\n\"921996\";\"Assimpao\";\"main\"\n\"921998\";\"Antsahé\";\"main\"\n\"921998\";\"Antsahe\";\"ascii\"\n\"1090583\";\"Mtakoudja\";\"main\"\n\"1090640\";\"Ziroudani\";\"main\"\n\"1090919\";\"Kavani\";\"main\"\n\"1090930\";\"Bandajou\";\"main\"\n\"1090960\";\"Chitrouni\";\"main\"\n\"1091076\";\"Hajoho\";\"main\"\n\"1091088\";\"Barakani\";\"main\"\n\"1091102\";\"Harembo\";\"main\"\n\"1091117\";\"Mirontsi\";\"main\"\n\"1091121\";\"Pajé\";\"main\"\n\"1091121\";\"Paje\";\"ascii\"\n\"1091159\";\"Limbi\";\"main\"\n\"1091370\";\"Lingoni\";\"main\"\n\"1091390\";\"Magnassini-Nindri\";\"main\"\n\"1091436\";\"Daji\";\"main\"\n\"1091674\";\"Ouhozi\";\"main\"\n\"1091711\";\"Mandza\";\"main\"\n\"1091712\";\"Douniani\";\"main\"\n\"1091713\";\"Koua\";\"main\"\n\"1091828\";\"Hantsindzi\";\"main\"\n\"1091868\";\"Itsandzéni\";\"main\"\n\"1091868\";\"Itsandzeni\";\"ascii\"\n\"1091870\";\"Bambadjani\";\"main\"\n\"1091996\";\"Mnoungou\";\"main\"\n\"1092041\";\"Vanadjou\";\"main\"\n\"1092065\";\"Bahani\";\"main\"\n\"1092157\";\"Ouella\";\"main\"\n\"1092169\";\"Tsidjé\";\"main\"\n\"1092169\";\"Tsidje\";\"ascii\"\n\"1092341\";\"Mvouni\";\"main\"\n\"1092343\";\"Mavingouni\";\"main\"\n\"1092396\";\"Séléa\";\"main\"\n\"1092396\";\"Selea\";\"ascii\"\n\"1092516\";\"Madjeouéni\";\"main\"\n\"1092516\";\"Madjeoueni\";\"ascii\"\n\"1092529\";\"Nioumamilima\";\"main\"\n\"3575479\";\"Charlestown\";\"main\"\n\"3575551\";\"Basseterre\";\"main\"\n\"3575551\";\"Basse Terre Town\";\"other\"\n\"3575551\";\"Baster\";\"other\"\n\"3575551\";\"Basteras\";\"other\"\n\"3575551\";\"Mpaster\";\"other\"\n\"3575551\";\"baseteru\";\"other\"\n\"3575551\";\"Μπαστέρ\";\"other\"\n\"3575551\";\"Бастер\";\"other\"\n\"3575551\";\"באסטר\";\"other\"\n\"3575551\";\"باسه‌تر\";\"other\"\n\"3575551\";\"ባስቴር\";\"other\"\n\"3575551\";\"バセテール\";\"other\"\n\"1866362\";\"Yonggang-ŭp\";\"main\"\n\"1866362\";\"Yonggang-up\";\"ascii\"\n\"1866362\";\"Chinji-ri\";\"other\"\n\"1866362\";\"Shinchi-ri\";\"other\"\n\"1866362\";\"Shinchido\";\"other\"\n\"1866362\";\"Shinchidō\";\"other\"\n\"1866362\";\"Yonggang\";\"other\"\n\"1866453\";\"Yŏngbyŏn\";\"main\"\n\"1866453\";\"Yongbyon\";\"ascii\"\n\"1866453\";\"Neihen\";\"other\"\n\"1866453\";\"Nyongbyon\";\"other\"\n\"1866453\";\"Nyŏngbyŏn\";\"other\"\n\"1866453\";\"Yongbyon-up\";\"other\"\n\"1866453\";\"Yŏngbyŏn-ŭp\";\"other\"\n\"1866569\";\"Yŏnan-ŭp\";\"main\"\n\"1866569\";\"Yonan-up\";\"ascii\"\n\"1866569\";\"Enan\";\"other\"\n\"1866569\";\"Yonan\";\"other\"\n\"1866569\";\"Yŏnan\";\"other\"\n\"1866587\";\"Yŏmju-ŭp\";\"main\"\n\"1866587\";\"Yomju-up\";\"ascii\"\n\"1866587\";\"Chonggo-dong\";\"other\"\n\"1866587\";\"Chŏnggŏ-dong\";\"other\"\n\"1866587\";\"Teisha\";\"other\"\n\"1866587\";\"Teisha-do\";\"other\"\n\"1866587\";\"Teisha-dō\";\"other\"\n\"1866587\";\"Yomju\";\"other\"\n\"1866587\";\"Yŏmju\";\"other\"\n\"1866587\";\"yeomju\";\"other\"\n\"1866587\";\"염주\";\"other\"\n\"1866923\";\"Wŏnsan\";\"main\"\n\"1866923\";\"Wonsan\";\"ascii\"\n\"1866923\";\"Gensan\";\"other\"\n\"1866923\";\"Genzan\";\"other\"\n\"1866923\";\"Genzan Hu\";\"other\"\n\"1866923\";\"Onsan\";\"other\"\n\"1866923\";\"Vonsan\";\"other\"\n\"1866923\";\"Vonsanas\";\"other\"\n\"1866923\";\"Wensen\";\"other\"\n\"1866923\";\"Yuenchan\";\"other\"\n\"1866923\";\"Yuensan\";\"other\"\n\"1866923\";\"wonsansi\";\"other\"\n\"1866923\";\"yuan shan\";\"other\"\n\"1866923\";\"yuan shan shi\";\"other\"\n\"1866923\";\"Вонсан\";\"other\"\n\"1866923\";\"元山\";\"other\"\n\"1866923\";\"元山市\";\"other\"\n\"1866923\";\"원산\";\"other\"\n\"1866923\";\"원산시\";\"other\"\n\"1867927\";\"T’ongch’ŏn-ŭp\";\"main\"\n\"1867927\";\"T'ongch'on-up\";\"ascii\"\n\"1867927\";\"Kojo\";\"other\"\n\"1867927\";\"Kojŏ\";\"other\"\n\"1867927\";\"Kotei\";\"other\"\n\"1867927\";\"T'ongch'on\";\"other\"\n\"1867927\";\"T’ongch’ŏn\";\"other\"\n\"1868998\";\"Sŭngho 1-tong\";\"main\"\n\"1868998\";\"Sungho 1-tong\";\"ascii\"\n\"1868998\";\"Shoko-ri\";\"other\"\n\"1868998\";\"Shōko-ri\";\"other\"\n\"1868998\";\"Sungho\";\"other\"\n\"1868998\";\"Sungho-dong\";\"other\"\n\"1868998\";\"Sungno-ri\";\"other\"\n\"1868998\";\"Sŭngho\";\"other\"\n\"1868998\";\"Sŭngho-dong\";\"other\"\n\"1868998\";\"Sŭngno-ri\";\"other\"\n\"1868998\";\"seungho1dong\";\"other\"\n\"1868998\";\"승호1동\";\"other\"\n\"1869021\";\"Sunan\";\"main\"\n\"1869021\";\"Junan\";\"other\"\n\"1869021\";\"Sunan-dong\";\"other\"\n\"1869021\";\"Sunan-ni\";\"other\"\n\"1869021\";\"Sunan-up\";\"other\"\n\"1869021\";\"Sunan-ŭp\";\"other\"\n\"1869021\";\"Сунан\";\"other\"\n\"1869446\";\"Songnim\";\"main\"\n\"1869446\";\"Kenjiho\";\"other\"\n\"1869446\";\"Kenjiko\";\"other\"\n\"1869446\";\"Kenniho\";\"other\"\n\"1869446\";\"Kenziho\";\"other\"\n\"1869446\";\"Kyomip'o\";\"other\"\n\"1869446\";\"Kyŏmip’o\";\"other\"\n\"1869446\";\"Shorin\";\"other\"\n\"1869446\";\"Shōrin\";\"other\"\n\"1870413\";\"Sil-li\";\"main\"\n\"1870413\";\"Sin-ni\";\"other\"\n\"1870434\";\"Sinmak\";\"main\"\n\"1870434\";\"Shimbaku\";\"other\"\n\"1870434\";\"Shimmaku\";\"other\"\n\"1870434\";\"Shinbaku\";\"other\"\n\"1870742\";\"Sinanju\";\"main\"\n\"1870742\";\"Shin-anshu\";\"other\"\n\"1870742\";\"Shin-anshū\";\"other\"\n\"1870742\";\"Sin-ansyu\";\"other\"\n\"1870742\";\"Sin-ansyū\";\"other\"\n\"1870742\";\"Sinanju-nodongjagu\";\"other\"\n\"1870742\";\"Sinanju-rodongjagu\";\"other\"\n\"1870742\";\"Wonhung-ni\";\"other\"\n\"1870742\";\"Wŏnhŭng-ni\";\"other\"\n\"1870742\";\"sin-anju\";\"other\"\n\"1870742\";\"신안주\";\"other\"\n\"1870883\";\"Sariwŏn\";\"main\"\n\"1870883\";\"Sariwon\";\"ascii\"\n\"1870883\";\"Hozan\";\"other\"\n\"1870883\";\"Sa-ri-uen\";\"other\"\n\"1870883\";\"Sarivone\";\"other\"\n\"1870883\";\"Shariin\";\"other\"\n\"1870883\";\"Syariin\";\"other\"\n\"1870883\";\"Sā-ri-uen\";\"other\"\n\"1870883\";\"Саривоне\";\"other\"\n\"1871028\";\"Sangsŏng-ni\";\"main\"\n\"1871028\";\"Sangsong-ni\";\"ascii\"\n\"1871028\";\"Ku Yangdok\";\"other\"\n\"1871028\";\"Ku Yangdŏk\";\"other\"\n\"1871028\";\"Tongyang\";\"other\"\n\"1871028\";\"Tongyang-ni\";\"other\"\n\"1871028\";\"Toyo\";\"other\"\n\"1871028\";\"Tōyō\";\"other\"\n\"1871028\";\"Yangdok\";\"other\"\n\"1871028\";\"Yangdŏk\";\"other\"\n\"1871028\";\"Yotoku\";\"other\"\n\"1871028\";\"Yōtoku\";\"other\"\n\"1871484\";\"Samho-rodongjagu\";\"main\"\n\"1871484\";\"Samho\";\"other\"\n\"1871484\";\"Samho-dong\";\"other\"\n\"1871484\";\"Samho-nodongjagu\";\"other\"\n\"1871484\";\"Sanko\";\"other\"\n\"1871484\";\"samholodongjagu\";\"other\"\n\"1871484\";\"삼호로동자구\";\"other\"\n\"1871859\";\"Pyongyang\";\"main\"\n\"1871859\";\"Binh Nhuong\";\"other\"\n\"1871859\";\"Bình Nhưỡng\";\"other\"\n\"1871859\";\"Heijo\";\"other\"\n\"1871859\";\"Heijo-fu\";\"other\"\n\"1871859\";\"Heijō\";\"other\"\n\"1871859\";\"Heijō-fu\";\"other\"\n\"1871859\";\"Heizyo\";\"other\"\n\"1871859\";\"Heizyo Hu\";\"other\"\n\"1871859\";\"Heizyō\";\"other\"\n\"1871859\";\"Heizyō Hu\";\"other\"\n\"1871859\";\"Hpyeng-yang\";\"other\"\n\"1871859\";\"P'yongyang\";\"other\"\n\"1871859\";\"P'yŏngyang\";\"other\"\n\"1871859\";\"P-hjong-jang\";\"other\"\n\"1871859\";\"P-hjöng-jang\";\"other\"\n\"1871859\";\"Pchenjanas\";\"other\"\n\"1871859\";\"Pchjongjang\";\"other\"\n\"1871859\";\"Phenian\";\"other\"\n\"1871859\";\"Phenjan\";\"other\"\n\"1871859\";\"Phenjana\";\"other\"\n\"1871859\";\"Phyeng-yang\";\"other\"\n\"1871859\";\"Phyong-yang\";\"other\"\n\"1871859\";\"Pienyang\";\"other\"\n\"1871859\";\"Pingyang\";\"other\"\n\"1871859\";\"Pion'nkgian'nk\";\"other\"\n\"1871859\";\"Pjoengjang\";\"other\"\n\"1871859\";\"Pjongjang\";\"other\"\n\"1871859\";\"Pjongjango\";\"other\"\n\"1871859\";\"Pjöngjang\";\"other\"\n\"1871859\";\"Pkhen'jan\";\"other\"\n\"1871859\";\"Pkhenjan\";\"other\"\n\"1871859\";\"Pyengyang\";\"other\"\n\"1871859\";\"Pyoengyang\";\"other\"\n\"1871859\";\"Pyöngyang\";\"other\"\n\"1871859\";\"P’yŏngyang\";\"other\"\n\"1871859\";\"bywnyangh\";\"other\"\n\"1871859\";\"peiyngyang\";\"other\"\n\"1871859\";\"ping rang\";\"other\"\n\"1871859\";\"pyeong-yangjighalsi\";\"other\"\n\"1871859\";\"pyongayanga\";\"other\"\n\"1871859\";\"pywngyang\";\"other\"\n\"1871859\";\"Πιονγκγιάνγκ\";\"other\"\n\"1871859\";\"Пхеньян\";\"other\"\n\"1871859\";\"Пхенян\";\"other\"\n\"1871859\";\"Пјонгјанг\";\"other\"\n\"1871859\";\"פיונגיאנג\";\"other\"\n\"1871859\";\"بيونيانغ\";\"other\"\n\"1871859\";\"پيوڭياڭ\";\"other\"\n\"1871859\";\"प्योंगयांग\";\"other\"\n\"1871859\";\"เปียงยาง\";\"other\"\n\"1871859\";\"ፕዮግያንግ\";\"other\"\n\"1871859\";\"平壌\";\"other\"\n\"1871859\";\"平壤\";\"other\"\n\"1871859\";\"평양직할시\";\"other\"\n\"1871871\";\"P’yŏngsŏng\";\"main\"\n\"1871871\";\"P'yongsong\";\"ascii\"\n\"1871871\";\"Sain-ni\";\"other\"\n\"1871871\";\"Sainjang\";\"other\"\n\"1871871\";\"Sanchon\";\"other\"\n\"1871871\";\"Shajimjo\";\"other\"\n\"1871871\";\"Shajimjō\";\"other\"\n\"1871871\";\"Shajinjo\";\"other\"\n\"1871871\";\"Shajinjō\";\"other\"\n\"1871871\";\"Shaninjo\";\"other\"\n\"1871871\";\"Shaninjō\";\"other\"\n\"1871967\";\"Pyŏksŏng-ŭp\";\"main\"\n\"1871967\";\"Pyoksong-up\";\"ascii\"\n\"1871967\";\"Ch'wiya\";\"other\"\n\"1871967\";\"Chuya\";\"other\"\n\"1871967\";\"Ch’wiya\";\"other\"\n\"1871967\";\"Pyoksong\";\"other\"\n\"1871967\";\"Pyŏksŏng\";\"other\"\n\"1871967\";\"Suiya-ri\";\"other\"\n\"1872726\";\"Panghyŏn-dong\";\"main\"\n\"1872726\";\"Panghyon-dong\";\"ascii\"\n\"1872726\";\"Namsi\";\"other\"\n\"1872726\";\"Nanshi\";\"other\"\n\"1872726\";\"Panghyon\";\"other\"\n\"1872726\";\"Panghyon-nodongjagu\";\"other\"\n\"1872726\";\"Panghyŏn\";\"other\"\n\"1872726\";\"Panghyŏn-nodongjagu\";\"other\"\n\"1873172\";\"Ongjin\";\"main\"\n\"1873172\";\"Bazan\";\"other\"\n\"1873172\";\"Onchzhin\";\"other\"\n\"1873172\";\"Ongjin-up\";\"other\"\n\"1873172\";\"Ongjin-ŭp\";\"other\"\n\"1873172\";\"Oshin\";\"other\"\n\"1873172\";\"Osin\";\"other\"\n\"1873172\";\"Yoshin\";\"other\"\n\"1873172\";\"Yōshin\";\"other\"\n\"1873172\";\"ongjin\";\"other\"\n\"1873172\";\"Ōshin\";\"other\"\n\"1873172\";\"Ōsin\";\"other\"\n\"1873172\";\"Ончжин\";\"other\"\n\"1873172\";\"옹진\";\"other\"\n\"1873757\";\"Namp’o\";\"main\"\n\"1873757\";\"Namp'o\";\"ascii\"\n\"1873757\";\"Channampo\";\"other\"\n\"1873757\";\"Chinnamp'o\";\"other\"\n\"1873757\";\"Chinnamp’o\";\"other\"\n\"1873757\";\"Chinnanpo\";\"other\"\n\"1873757\";\"Nampkho\";\"other\"\n\"1873757\";\"Tinnanpo\";\"other\"\n\"1873757\";\"Treaty Port\";\"other\"\n\"1873757\";\"Tschin-nam-p-ho\";\"other\"\n\"1873757\";\"nampo\";\"other\"\n\"1873757\";\"Нампхо\";\"other\"\n\"1873757\";\"남포\";\"other\"\n\"1875054\";\"Kwaksan\";\"main\"\n\"1875054\";\"Kakusan\";\"other\"\n\"1875054\";\"Kakuzan\";\"other\"\n\"1875054\";\"Kwaksan-up\";\"other\"\n\"1875054\";\"Kwaksan-ŭp\";\"other\"\n\"1875054\";\"gwagsan\";\"other\"\n\"1875054\";\"곽산\";\"other\"\n\"1875107\";\"Kusŏng\";\"main\"\n\"1875107\";\"Kusong\";\"ascii\"\n\"1875107\";\"Kijo\";\"other\"\n\"1875107\";\"Kijō\";\"other\"\n\"1875107\";\"Kuisong\";\"other\"\n\"1875107\";\"Kuisŏng\";\"other\"\n\"1875107\";\"Kusong-up\";\"other\"\n\"1875107\";\"Kusŏng-ŭp\";\"other\"\n\"1875107\";\"Kwisog\";\"other\"\n\"1875107\";\"Kwisŏg\";\"other\"\n\"1875506\";\"Kujang-ŭp\";\"main\"\n\"1875506\";\"Kujang-up\";\"ascii\"\n\"1875506\";\"Kuchung\";\"other\"\n\"1875506\";\"Kujang\";\"other\"\n\"1875506\";\"Kujang-dong\";\"other\"\n\"1875506\";\"Kyujo-do\";\"other\"\n\"1875506\";\"Kyujō-dō\";\"other\"\n\"1875588\";\"Kowŏn-ŭp\";\"main\"\n\"1875588\";\"Kowon-up\";\"ascii\"\n\"1875588\";\"Kogen\";\"other\"\n\"1875588\";\"Kovon-do\";\"other\"\n\"1875588\";\"Kowon\";\"other\"\n\"1875588\";\"Kowŏn\";\"other\"\n\"1875588\";\"Kōgen\";\"other\"\n\"1875588\";\"Ковон-до\";\"other\"\n\"1875588\";\"고원\";\"other\"\n\"1875632\";\"Kosan-ŭp\";\"main\"\n\"1875632\";\"Kosan-up\";\"ascii\"\n\"1875632\";\"Kosan\";\"other\"\n\"1875632\";\"Shinko-san\";\"other\"\n\"1875632\";\"Shinkozan\";\"other\"\n\"1875632\";\"Shinkō-san\";\"other\"\n\"1875632\";\"Shinkōzan\";\"other\"\n\"1875632\";\"Sin'gosan\";\"other\"\n\"1875632\";\"Sin’gosan\";\"other\"\n\"1875632\";\"gosan\";\"other\"\n\"1875632\";\"고산\";\"other\"\n\"1875790\";\"Koksan\";\"main\"\n\"1875790\";\"Kokan\";\"other\"\n\"1875790\";\"Kokchang\";\"other\"\n\"1875790\";\"Koksan-up\";\"other\"\n\"1875790\";\"Koksan-ŭp\";\"other\"\n\"1875790\";\"Kokusan\";\"other\"\n\"1875790\";\"Kokuso\";\"other\"\n\"1875790\";\"Kokusō\";\"other\"\n\"1875790\";\"Kokuzan\";\"other\"\n\"1875790\";\"gogsan\";\"other\"\n\"1875790\";\"곡산\";\"other\"\n\"1876153\";\"Kangdong-ŭp\";\"main\"\n\"1876153\";\"Kangdong-up\";\"ascii\"\n\"1876153\";\"Kandong\";\"other\"\n\"1876153\";\"Kangdong\";\"other\"\n\"1876153\";\"Koto\";\"other\"\n\"1876153\";\"Kōtō\";\"other\"\n\"1876373\";\"Kaesŏng\";\"main\"\n\"1876373\";\"Kaesong\";\"ascii\"\n\"1876373\";\"Kai-seng\";\"other\"\n\"1876373\";\"Kaijo\";\"other\"\n\"1876373\";\"Kaijō\";\"other\"\n\"1876373\";\"Kaisong\";\"other\"\n\"1876373\";\"Kaizyo\";\"other\"\n\"1876373\";\"Kaizyō\";\"other\"\n\"1876373\";\"Kehson\";\"other\"\n\"1876373\";\"Kesonas\";\"other\"\n\"1876373\";\"Kėsonas\";\"other\"\n\"1876373\";\"Shoto\";\"other\"\n\"1876373\";\"Shōto\";\"other\"\n\"1876373\";\"Songdo\";\"other\"\n\"1876373\";\"gaeseongsi\";\"other\"\n\"1876373\";\"gaeseongteuggeubsi\";\"other\"\n\"1876373\";\"kai cheng\";\"other\"\n\"1876373\";\"Кэсон\";\"other\"\n\"1876373\";\"开城\";\"other\"\n\"1876373\";\"開城\";\"other\"\n\"1876373\";\"개성시\";\"other\"\n\"1876373\";\"개성특급시\";\"other\"\n\"1876873\";\"Hwangju-ŭp\";\"main\"\n\"1876873\";\"Hwangju-up\";\"ascii\"\n\"1876873\";\"Hwangju\";\"other\"\n\"1876873\";\"Koshu\";\"other\"\n\"1876873\";\"Koshyu\";\"other\"\n\"1876873\";\"Kosyu\";\"other\"\n\"1876873\";\"Kōshū\";\"other\"\n\"1876873\";\"Kōsyū\";\"other\"\n\"1877030\";\"Hŭngnam\";\"main\"\n\"1877030\";\"Hungnam\";\"ascii\"\n\"1877030\";\"Hungbong-ni\";\"other\"\n\"1877030\";\"Hungdogi-dong\";\"other\"\n\"1877030\";\"Hungdogil-tong\";\"other\"\n\"1877030\";\"Hungdok-2-dong\";\"other\"\n\"1877030\";\"Hungdok-tong\";\"other\"\n\"1877030\";\"Hungdoki-dong\";\"other\"\n\"1877030\";\"Hungdong-ni\";\"other\"\n\"1877030\";\"Hungnam-dong\";\"other\"\n\"1877030\";\"Hungnam-ni\";\"other\"\n\"1877030\";\"Hungyam\";\"other\"\n\"1877030\";\"Hŭngbong-ni\";\"other\"\n\"1877030\";\"Hŭngdong-ni\";\"other\"\n\"1877030\";\"Hŭngdŏgi-dong\";\"other\"\n\"1877030\";\"Hŭngdŏgil-tong\";\"other\"\n\"1877030\";\"Hŭngdŏk-2-dong\";\"other\"\n\"1877030\";\"Hŭngdŏk-tong\";\"other\"\n\"1877030\";\"Hŭngdŏki-dong\";\"other\"\n\"1877030\";\"Hŭngnam-dong\";\"other\"\n\"1877030\";\"Hŭngnam-ni\";\"other\"\n\"1877030\";\"Konan\";\"other\"\n\"1877030\";\"Kōnan\";\"other\"\n\"1877046\";\"Hŭkkyo-ri\";\"main\"\n\"1877046\";\"Hukkyo-ri\";\"ascii\"\n\"1877046\";\"Kokkyo-ri\";\"other\"\n\"1877046\";\"Kokkyō-ri\";\"other\"\n\"1877046\";\"Kokukyori\";\"other\"\n\"1877046\";\"heuggyoli\";\"other\"\n\"1877046\";\"흑교리\";\"other\"\n\"1877148\";\"Hoeyang\";\"main\"\n\"1877148\";\"Chunyang\";\"other\"\n\"1877148\";\"Hoeyang-up\";\"other\"\n\"1877148\";\"Hoeyang-ŭp\";\"other\"\n\"1877148\";\"Junyo\";\"other\"\n\"1877148\";\"Waiyd\";\"other\"\n\"1877148\";\"Waiyð\";\"other\"\n\"1877148\";\"hoeyang\";\"other\"\n\"1877148\";\"회양\";\"other\"\n\"1877449\";\"Hamhŭng\";\"main\"\n\"1877449\";\"Hamhung\";\"ascii\"\n\"1877449\";\"Hamheung\";\"other\"\n\"1877449\";\"Hamhunas\";\"other\"\n\"1877449\";\"Hamhungo\";\"other\"\n\"1877449\";\"Hienhing\";\"other\"\n\"1877449\";\"Kanko\";\"other\"\n\"1877449\";\"Kankō\";\"other\"\n\"1877449\";\"hamheung\";\"other\"\n\"1877449\";\"hamheungsi\";\"other\"\n\"1877449\";\"xian xing\";\"other\"\n\"1877449\";\"xian xing shi\";\"other\"\n\"1877449\";\"咸兴\";\"other\"\n\"1877449\";\"咸興市\";\"other\"\n\"1877449\";\"함흥\";\"other\"\n\"1877449\";\"함흥시\";\"other\"\n\"1877615\";\"Haeju\";\"main\"\n\"1877615\";\"Hai-dschu\";\"other\"\n\"1877615\";\"Hai-ju\";\"other\"\n\"1877615\";\"Hai-tjyou\";\"other\"\n\"1877615\";\"Haijuube\";\"other\"\n\"1877615\";\"Haitcheou\";\"other\"\n\"1877615\";\"Kaishu\";\"other\"\n\"1877615\";\"Kaishū\";\"other\"\n\"1877615\";\"Khehdzhu\";\"other\"\n\"1877615\";\"Хэджу\";\"other\"\n\"1877872\";\"Chunghwa-ŭp\";\"main\"\n\"1877872\";\"Chunghwa-up\";\"ascii\"\n\"1877872\";\"Chunghwa\";\"other\"\n\"1877872\";\"Chuwa\";\"other\"\n\"1877872\";\"Chūwa\";\"other\"\n\"1877872\";\"junghwa\";\"other\"\n\"1877872\";\"중화\";\"other\"\n\"1878389\";\"Chŏngju\";\"main\"\n\"1878389\";\"Chongju\";\"ascii\"\n\"1878389\";\"Chongju-up\";\"other\"\n\"1878389\";\"Chŏngju-ŭp\";\"other\"\n\"1878389\";\"Teishu\";\"other\"\n\"1878389\";\"Teishū\";\"other\"\n\"1878389\";\"Teisyu\";\"other\"\n\"1878389\";\"Teisyū\";\"other\"\n\"1878389\";\"정주\";\"other\"\n\"1879029\";\"Changyŏn\";\"main\"\n\"1879029\";\"Changyon\";\"ascii\"\n\"1879029\";\"Changyon-up\";\"other\"\n\"1879029\";\"Changyŏn-ŭp\";\"other\"\n\"1879029\";\"Choen\";\"other\"\n\"1879029\";\"Chōen\";\"other\"\n\"1879029\";\"Tschang-jon\";\"other\"\n\"1879029\";\"Tschang-jön\";\"other\"\n\"1879029\";\"장연\";\"other\"\n\"1879487\";\"Chaeryŏng-ŭp\";\"main\"\n\"1879487\";\"Chaeryong-up\";\"ascii\"\n\"1879487\";\"Chaenyong\";\"other\"\n\"1879487\";\"Chaenyŏng\";\"other\"\n\"1879487\";\"Chaeryong\";\"other\"\n\"1879487\";\"Chaeryŏng\";\"other\"\n\"1879487\";\"Cheyong\";\"other\"\n\"1879487\";\"Sainei\";\"other\"\n\"1879487\";\"Sainei-men\";\"other\"\n\"1879487\";\"Sainei-yu\";\"other\"\n\"1879487\";\"Sainei-yū\";\"other\"\n\"1879544\";\"Ayang-ni\";\"main\"\n\"1879544\";\"Gayo-ri\";\"other\"\n\"1879544\";\"Gayō-ri\";\"other\"\n\"1879613\";\"Anju\";\"main\"\n\"1879613\";\"Aanshu\";\"other\"\n\"1879613\";\"An-dschu\";\"other\"\n\"1879613\";\"Anju-up\";\"other\"\n\"1879613\";\"Anju-ŭp\";\"other\"\n\"1879613\";\"Anshu\";\"other\"\n\"1879613\";\"Anshū\";\"other\"\n\"1879613\";\"Ansyu\";\"other\"\n\"1879613\";\"Ansyu Yu\";\"other\"\n\"1879613\";\"Ansyū\";\"other\"\n\"1879613\";\"Ansyū Yū\";\"other\"\n\"1879613\";\"안주\";\"other\"\n\"1879672\";\"Anbyŏn-ŭp\";\"main\"\n\"1879672\";\"Anbyon-up\";\"ascii\"\n\"1879672\";\"Ampen\";\"other\"\n\"1879672\";\"Anbyon\";\"other\"\n\"1879672\";\"Anbyŏn\";\"other\"\n\"1879672\";\"Anhen\";\"other\"\n\"1879672\";\"Anpen\";\"other\"\n\"1879682\";\"Anak\";\"main\"\n\"1879682\";\"Aenak\";\"other\"\n\"1879682\";\"Anag-up\";\"other\"\n\"1879682\";\"Anag-ŭp\";\"other\"\n\"1879682\";\"Anak-up\";\"other\"\n\"1879682\";\"Anak-ŭp\";\"other\"\n\"1879682\";\"Angaku\";\"other\"\n\"1879682\";\"Nangaku\";\"other\"\n\"1879682\";\"an-ag\";\"other\"\n\"1879682\";\"안악\";\"other\"\n\"1932058\";\"Sinsang-ni\";\"main\"\n\"1932058\";\"신상리\";\"other\"\n\"2038854\";\"Yuktae-dong\";\"main\"\n\"2038854\";\"Rokudaito-ri\";\"other\"\n\"2038854\";\"Rokudaitō-ri\";\"other\"\n\"2038854\";\"Yuktae-nodongjagu\";\"other\"\n\"2038854\";\"Yuktaedong-ni\";\"other\"\n\"2038854\";\"Yuktaetong-ni\";\"other\"\n\"2039557\";\"Ungsang-nodongjagu\";\"main\"\n\"2039557\";\"Ungsang-dong\";\"other\"\n\"2039557\";\"Ungsang-ni\";\"other\"\n\"2039557\";\"ungsanglodongjagu\";\"other\"\n\"2039557\";\"웅상로동자구\";\"other\"\n\"2039623\";\"Ŭiju\";\"main\"\n\"2039623\";\"Uiju\";\"ascii\"\n\"2039623\";\"Eui-chu\";\"other\"\n\"2039623\";\"Gishu\";\"other\"\n\"2039623\";\"Gishū\";\"other\"\n\"2039623\";\"Gisyu\";\"other\"\n\"2039623\";\"Gisyū\";\"other\"\n\"2039623\";\"Ui-tsiu\";\"other\"\n\"2039623\";\"Uiju-up\";\"other\"\n\"2039623\";\"Wi-dschu\";\"other\"\n\"2039623\";\"Wi-ju\";\"other\"\n\"2039623\";\"uiju\";\"other\"\n\"2039623\";\"Ŭiju-ŭp\";\"other\"\n\"2039623\";\"의주\";\"other\"\n\"2040316\";\"Sŭngam-nodongjagu\";\"main\"\n\"2040316\";\"Sungam-nodongjagu\";\"ascii\"\n\"2040316\";\"Kjong-song\";\"other\"\n\"2040316\";\"Kjöng-söng\";\"other\"\n\"2040316\";\"Kyeng-seng\";\"other\"\n\"2040316\";\"Kyojo\";\"other\"\n\"2040316\";\"Kyongsong\";\"other\"\n\"2040316\";\"Kyongusogu\";\"other\"\n\"2040316\";\"Kyozyo\";\"other\"\n\"2040316\";\"Kyōjō\";\"other\"\n\"2040316\";\"Kyōzyō\";\"other\"\n\"2040316\";\"Kyŏngsŏng\";\"other\"\n\"2040316\";\"Sungam-ni\";\"other\"\n\"2040316\";\"Sŭngam-ni\";\"other\"\n\"2040316\";\"seung-amlodongjagu\";\"other\"\n\"2040316\";\"승암로동자구\";\"other\"\n\"2040674\";\"Sŏnbong\";\"main\"\n\"2040674\";\"Sonbong\";\"ascii\"\n\"2040674\";\"Ongei\";\"other\"\n\"2040674\";\"Sonbon\";\"other\"\n\"2040674\";\"Sonbong-up\";\"other\"\n\"2040674\";\"Sŏnbong-ŭp\";\"other\"\n\"2040674\";\"Unggi\";\"other\"\n\"2040674\";\"Unggi-up\";\"other\"\n\"2040674\";\"Unggi-yu\";\"other\"\n\"2040674\";\"Yuki\";\"other\"\n\"2040674\";\"Yūki\";\"other\"\n\"2040674\";\"seonbong\";\"other\"\n\"2040674\";\"Сонбон\";\"other\"\n\"2040674\";\"선봉\";\"other\"\n\"2040893\";\"Sinŭiju\";\"main\"\n\"2040893\";\"Sinuiju\";\"ascii\"\n\"2040893\";\"New Eui-chu\";\"other\"\n\"2040893\";\"Shingishu\";\"other\"\n\"2040893\";\"Shingishū\";\"other\"\n\"2040893\";\"Sin-eui-chu\";\"other\"\n\"2040893\";\"Sin-gi-shu\";\"other\"\n\"2040893\";\"Sinuidzu\";\"other\"\n\"2040893\";\"Sinuidžu\";\"other\"\n\"2040893\";\"Sinyichju\";\"other\"\n\"2040893\";\"Szinidzsu\";\"other\"\n\"2040893\";\"Wi-dschu\";\"other\"\n\"2040893\";\"Wi-ju\";\"other\"\n\"2040893\";\"sin-uiju\";\"other\"\n\"2040893\";\"sin-uijusi\";\"other\"\n\"2040893\";\"xin yi zhou\";\"other\"\n\"2040893\";\"xin yi zhou shi\";\"other\"\n\"2040893\";\"新义州\";\"other\"\n\"2040893\";\"新義州市\";\"other\"\n\"2040893\";\"신의주\";\"other\"\n\"2040893\";\"신의주시\";\"other\"\n\"2041533\";\"Sakchu-ŭp\";\"main\"\n\"2041533\";\"Sakchu-up\";\"ascii\"\n\"2041533\";\"Sakchu\";\"other\"\n\"2041533\";\"Sakushu\";\"other\"\n\"2041533\";\"Sakushū\";\"other\"\n\"2041702\";\"Puryŏng\";\"main\"\n\"2041702\";\"Puryong\";\"ascii\"\n\"2041702\";\"Funei\";\"other\"\n\"2041702\";\"Kuum-nodongjagu\";\"other\"\n\"2041702\";\"Kuup-nodongjagu\";\"other\"\n\"2041702\";\"Kuŭm-nodongjagu\";\"other\"\n\"2041702\";\"Kuŭp-nodongjagu\";\"other\"\n\"2041702\";\"Pu-rjong\";\"other\"\n\"2041702\";\"Punyong\";\"other\"\n\"2041702\";\"Punyŏng\";\"other\"\n\"2041702\";\"Purong-dong\";\"other\"\n\"2041702\";\"Puryong-ni\";\"other\"\n\"2041702\";\"Puryong-up\";\"other\"\n\"2041702\";\"Puryŏng-ŭp\";\"other\"\n\"2041702\";\"Puyong\";\"other\"\n\"2041702\";\"bulyeong\";\"other\"\n\"2041702\";\"부령\";\"other\"\n\"2041817\";\"Pukchil-lodongjagu\";\"main\"\n\"2041817\";\"Hokuchin\";\"other\"\n\"2041817\";\"Puckchin\";\"other\"\n\"2041817\";\"Pukch'ang\";\"other\"\n\"2041817\";\"Pukchin\";\"other\"\n\"2041817\";\"Pukchin-nodongjagu\";\"other\"\n\"2041817\";\"Pukch’ang\";\"other\"\n\"2041817\";\"Pukutin\";\"other\"\n\"2041817\";\"bugjinlodongjagu\";\"other\"\n\"2041817\";\"북진로동자구\";\"other\"\n\"2042249\";\"Yŏnggwang-ŭp\";\"main\"\n\"2042249\";\"Yonggwang-up\";\"ascii\"\n\"2042249\";\"Goro-ri\";\"other\"\n\"2042249\";\"Gorō-ri\";\"other\"\n\"2042249\";\"Oro\";\"other\"\n\"2042249\";\"Oro-ri\";\"other\"\n\"2042249\";\"Oro-up\";\"other\"\n\"2042249\";\"Oro-ŭp\";\"other\"\n\"2042249\";\"Yongwang\";\"other\"\n\"2042249\";\"Yŏngwang\";\"other\"\n\"2042267\";\"Onsŏng\";\"main\"\n\"2042267\";\"Onsong\";\"ascii\"\n\"2042267\";\"Kosong\";\"other\"\n\"2042267\";\"Kosong-ni\";\"other\"\n\"2042267\";\"Kosŏng\";\"other\"\n\"2042267\";\"Kosŏng-ni\";\"other\"\n\"2042267\";\"Onjo\";\"other\"\n\"2042267\";\"Onjō\";\"other\"\n\"2042267\";\"Onsong-up\";\"other\"\n\"2042267\";\"Onsŏng-ŭp\";\"other\"\n\"2042267\";\"onseong\";\"other\"\n\"2042267\";\"온성\";\"other\"\n\"2042498\";\"Nanam\";\"main\"\n\"2042498\";\"Naman\";\"other\"\n\"2042498\";\"Ranam\";\"other\"\n\"2042498\";\"lanam\";\"other\"\n\"2042498\";\"Нанам\";\"other\"\n\"2042498\";\"라남\";\"other\"\n\"2042503\";\"Namyang-dong\";\"main\"\n\"2042645\";\"Najin\";\"main\"\n\"2042645\";\"Najin-up\";\"other\"\n\"2042645\";\"Najin-ŭp\";\"other\"\n\"2042645\";\"Radzin\";\"other\"\n\"2042645\";\"Rashin\";\"other\"\n\"2042645\";\"Rasin\";\"other\"\n\"2042645\";\"lajin\";\"other\"\n\"2042645\";\"Радзин\";\"other\"\n\"2042645\";\"라진\";\"other\"\n\"2042738\";\"Musan-ŭp\";\"main\"\n\"2042738\";\"Musan-up\";\"ascii\"\n\"2042738\";\"Mosan\";\"other\"\n\"2042738\";\"Mozan\";\"other\"\n\"2042738\";\"Musan\";\"other\"\n\"2042738\";\"무산읍\";\"other\"\n\"2042985\";\"Kyŏngwŏn\";\"main\"\n\"2042985\";\"Kyongwon\";\"ascii\"\n\"2042985\";\"Keigen\";\"other\"\n\"2042985\";\"Kyungwan\";\"other\"\n\"2042985\";\"Kyungwon\";\"other\"\n\"2042985\";\"gyeong-won\";\"other\"\n\"2042985\";\"경원\";\"other\"\n\"2042987\";\"Kyŏngsŏng\";\"main\"\n\"2042987\";\"Kyongsong\";\"ascii\"\n\"2042987\";\"Churuonjan\";\"other\"\n\"2042987\";\"Chuul\";\"other\"\n\"2042987\";\"Chuuronjang\";\"other\"\n\"2042987\";\"Chuŭl\";\"other\"\n\"2042987\";\"Chuŭronjang\";\"other\"\n\"2042987\";\"Kyongsong-up\";\"other\"\n\"2042987\";\"Kyŏngsŏng-ŭp\";\"other\"\n\"2042987\";\"Shuotsu\";\"other\"\n\"2042987\";\"Shuotsuonjo\";\"other\"\n\"2042987\";\"Shuotsuonjō\";\"other\"\n\"2042987\";\"gyeongseong\";\"other\"\n\"2042987\";\"경성\";\"other\"\n\"2043484\";\"Kilju\";\"main\"\n\"2043484\";\"Kichishu\";\"other\"\n\"2043484\";\"Kichishū\";\"other\"\n\"2043484\";\"Kil'dzhu\";\"other\"\n\"2043484\";\"Kil-dschu\";\"other\"\n\"2043484\";\"Kilchu\";\"other\"\n\"2043484\";\"Kilchu-up\";\"other\"\n\"2043484\";\"Kilchu-ŭp\";\"other\"\n\"2043484\";\"Kisshu\";\"other\"\n\"2043484\";\"Kisshū\";\"other\"\n\"2043484\";\"gilju\";\"other\"\n\"2043484\";\"Кильджу\";\"other\"\n\"2043484\";\"길주\";\"other\"\n\"2043531\";\"Kapsan-ŭp\";\"main\"\n\"2043531\";\"Kapsan-up\";\"ascii\"\n\"2043531\";\"Kapsan\";\"other\"\n\"2043531\";\"Kapsane-do\";\"other\"\n\"2043531\";\"Kosan\";\"other\"\n\"2043531\";\"Kozan\";\"other\"\n\"2043531\";\"Kōsan\";\"other\"\n\"2043531\";\"Kōzan\";\"other\"\n\"2043531\";\"Капсане-до\";\"other\"\n\"2043531\";\"갑산읍\";\"other\"\n\"2043572\";\"Kanggye\";\"main\"\n\"2043572\";\"Kakai\";\"other\"\n\"2043572\";\"Kang-ge\";\"other\"\n\"2043572\";\"Kange\";\"other\"\n\"2043572\";\"Kokai\";\"other\"\n\"2043572\";\"Kōkai\";\"other\"\n\"2043572\";\"gang-gye\";\"other\"\n\"2043572\";\"gang-gyesi\";\"other\"\n\"2043572\";\"jiang jie\";\"other\"\n\"2043572\";\"jiang jie shi\";\"other\"\n\"2043572\";\"Канге\";\"other\"\n\"2043572\";\"江界\";\"other\"\n\"2043572\";\"江界市\";\"other\"\n\"2043572\";\"강계\";\"other\"\n\"2043572\";\"강계시\";\"other\"\n\"2043677\";\"Iwŏn-ŭp\";\"main\"\n\"2043677\";\"Iwon-up\";\"ascii\"\n\"2043677\";\"Gunsen\";\"other\"\n\"2043677\";\"Iwon\";\"other\"\n\"2043677\";\"Iwŏn\";\"other\"\n\"2043677\";\"Kunsen\";\"other\"\n\"2043677\";\"Kunson\";\"other\"\n\"2043677\";\"Kunsŏn\";\"other\"\n\"2043677\";\"리원\";\"other\"\n\"2043835\";\"Hyesan-dong\";\"main\"\n\"2043835\";\"혜산동\";\"other\"\n\"2043837\";\"Hyesan-si\";\"main\"\n\"2043837\";\"Hesanjin\";\"other\"\n\"2043837\";\"Hyesan\";\"other\"\n\"2043837\";\"Hyesanjin\";\"other\"\n\"2043837\";\"Keisanchin\";\"other\"\n\"2043837\";\"Keizan\";\"other\"\n\"2043837\";\"Keizanchin\";\"other\"\n\"2043837\";\"Keizantin\";\"other\"\n\"2043837\";\"hui shan shi\";\"other\"\n\"2043837\";\"恵山市\";\"other\"\n\"2043837\";\"惠山市\";\"other\"\n\"2043837\";\"혜산시\";\"other\"\n\"2044050\";\"Hongwŏn\";\"main\"\n\"2044050\";\"Hongwon\";\"ascii\"\n\"2044050\";\"Hongwon-up\";\"other\"\n\"2044050\";\"Hongwŏn-ŭp\";\"other\"\n\"2044050\";\"Kogen\";\"other\"\n\"2044050\";\"Kogon\";\"other\"\n\"2044050\";\"Kōgen\";\"other\"\n\"2044050\";\"hong-won\";\"other\"\n\"2044050\";\"홍원\";\"other\"\n\"2044091\";\"Hoeryŏng\";\"main\"\n\"2044091\";\"Hoeryong\";\"ascii\"\n\"2044091\";\"Hoenyong\";\"other\"\n\"2044091\";\"Hoenyŏng\";\"other\"\n\"2044091\";\"Hoeryong-up\";\"other\"\n\"2044091\";\"Hoeryŏng-ŭp\";\"other\"\n\"2044091\";\"Kaeryong\";\"other\"\n\"2044091\";\"Kaeryŏng\";\"other\"\n\"2044091\";\"Kainei\";\"other\"\n\"2044091\";\"Kainei-yu\";\"other\"\n\"2044091\";\"Kainei-yŭ\";\"other\"\n\"2044091\";\"Kwainei\";\"other\"\n\"2044091\";\"hoelyeong\";\"other\"\n\"2044091\";\"회령\";\"other\"\n\"2044104\";\"Hoemul-li\";\"main\"\n\"2044104\";\"Hoemun-dong\";\"other\"\n\"2044104\";\"Hoemun-ni\";\"other\"\n\"2044104\";\"Kaibon\";\"other\"\n\"2044104\";\"Kaibun-do\";\"other\"\n\"2044104\";\"Kaibun-dŏ\";\"other\"\n\"2044104\";\"hoemunli\";\"other\"\n\"2044104\";\"회문리\";\"other\"\n\"2044149\";\"Hau-ri\";\"main\"\n\"2044149\";\"Haun-ni\";\"other\"\n\"2044149\";\"Meisen\";\"other\"\n\"2044149\";\"Menchkan\";\"other\"\n\"2044149\";\"Menchkhon\";\"other\"\n\"2044149\";\"Myonchon\";\"other\"\n\"2044149\";\"Myongch'on\";\"other\"\n\"2044149\";\"Myŏngch’ŏn\";\"other\"\n\"2044149\";\"hauli\";\"other\"\n\"2044149\";\"하우리\";\"other\"\n\"2044757\";\"Ch’ŏngjin\";\"main\"\n\"2044757\";\"Ch'ongjin\";\"ascii\"\n\"2044757\";\"Ch'ŏngjin\";\"other\"\n\"2044757\";\"Chkhonchzhine\";\"other\"\n\"2044757\";\"Chongjin\";\"other\"\n\"2044757\";\"Chonjin\";\"other\"\n\"2044757\";\"Condzinas\";\"other\"\n\"2044757\";\"Cshongdzsin\";\"other\"\n\"2044757\";\"Seishin\";\"other\"\n\"2044757\";\"Seisin\";\"other\"\n\"2044757\";\"Tschiun-tschan\";\"other\"\n\"2044757\";\"Tschiün-tschan\";\"other\"\n\"2044757\";\"cheongjin\";\"other\"\n\"2044757\";\"cheongjinsi\";\"other\"\n\"2044757\";\"qing jin\";\"other\"\n\"2044757\";\"qing jin shi\";\"other\"\n\"2044757\";\"Čondžinas\";\"other\"\n\"2044757\";\"Чхончжине\";\"other\"\n\"2044757\";\"清津\";\"other\"\n\"2044757\";\"清津市\";\"other\"\n\"2044757\";\"청진\";\"other\"\n\"2044757\";\"청진시\";\"other\"\n\"2045005\";\"Chasŏng\";\"main\"\n\"2045005\";\"Chasong\";\"ascii\"\n\"2045005\";\"Chasong-up\";\"other\"\n\"2045005\";\"Chasŏng-ŭp\";\"other\"\n\"2045005\";\"Jijo\";\"other\"\n\"2045005\";\"Jijō\";\"other\"\n\"2045005\";\"Tscha-song\";\"other\"\n\"2045005\";\"Tscha-söng\";\"other\"\n\"2045005\";\"Zizyo\";\"other\"\n\"2045005\";\"Zizyō\";\"other\"\n\"2045311\";\"Aoji-ri\";\"main\"\n\"2045311\";\"Agochi\";\"other\"\n\"2045311\";\"Agochi-do\";\"other\"\n\"2045311\";\"Agochi-dŏ\";\"other\"\n\"2045311\";\"Agoji-do\";\"other\"\n\"2045311\";\"Agoji-dŏ\";\"other\"\n\"2045311\";\"Aodi-ri\";\"other\"\n\"2045311\";\"Aoji\";\"other\"\n\"2045311\";\"Aoji-dong\";\"other\"\n\"2045311\";\"aojili\";\"other\"\n\"2045311\";\"Аоди-ри\";\"other\"\n\"2045311\";\"아오지리\";\"other\"\n\"2049653\";\"Sŭngjibaegam\";\"main\"\n\"2049653\";\"Sungjibaegam\";\"ascii\"\n\"2049653\";\"Sungjipaegam\";\"other\"\n\"2050500\";\"Komusan 1-tong\";\"main\"\n\"1832015\";\"Hŭnghae\";\"main\"\n\"1832015\";\"Hunghae\";\"ascii\"\n\"1832015\";\"Funhai\";\"other\"\n\"1832015\";\"Heung-hai\";\"other\"\n\"1832015\";\"Heunghae\";\"other\"\n\"1832015\";\"Kokai\";\"other\"\n\"1832015\";\"Kōkai\";\"other\"\n\"1832015\";\"Uich'ang\";\"other\"\n\"1832015\";\"Ŭich'ang\";\"other\"\n\"1832157\";\"Yŏsu\";\"main\"\n\"1832157\";\"Yosu\";\"ascii\"\n\"1832157\";\"Josu\";\"other\"\n\"1832157\";\"Rasui\";\"other\"\n\"1832157\";\"Reisui\";\"other\"\n\"1832157\";\"Йосу\";\"other\"\n\"1832215\";\"Yŏnil\";\"main\"\n\"1832215\";\"Yonil\";\"ascii\"\n\"1832215\";\"Eijitsu\";\"other\"\n\"1832215\";\"Enjitsu\";\"other\"\n\"1832215\";\"Yeonil\";\"other\"\n\"1832257\";\"Yŏngwŏl\";\"main\"\n\"1832257\";\"Yongwol\";\"ascii\"\n\"1832257\";\"Neietsu\";\"other\"\n\"1832257\";\"영월\";\"other\"\n\"1832384\";\"Yŏngju\";\"main\"\n\"1832384\";\"Yongju\";\"ascii\"\n\"1832384\";\"Eisen\";\"other\"\n\"1832384\";\"Eishu\";\"other\"\n\"1832384\";\"Eishū\";\"other\"\n\"1832501\";\"Yŏnggwang\";\"main\"\n\"1832501\";\"Yonggwang\";\"ascii\"\n\"1832501\";\"Reiko\";\"other\"\n\"1832566\";\"Yŏng-dong\";\"main\"\n\"1832566\";\"Yong-dong\";\"ascii\"\n\"1832566\";\"Eido\";\"other\"\n\"1832566\";\"Eidō\";\"other\"\n\"1832566\";\"영동\";\"other\"\n\"1832617\";\"Yŏngch’ŏn\";\"main\"\n\"1832617\";\"Yongch'on\";\"ascii\"\n\"1832617\";\"Eisen\";\"other\"\n\"1832697\";\"연천군\";\"main\"\n\"1832697\";\"yeoncheongun\";\"ascii\"\n\"1832697\";\"Yeoncheon Gun\";\"other\"\n\"1832697\";\"Yon-ch'on-gun\";\"other\"\n\"1832697\";\"Yŏn-ch'ŏn-gun\";\"other\"\n\"1832697\";\"yeoncheon\";\"other\"\n\"1832697\";\"연천\";\"other\"\n\"1832743\";\"Yŏju\";\"main\"\n\"1832743\";\"Yoju\";\"ascii\"\n\"1832743\";\"Reishu\";\"other\"\n\"1832743\";\"Reishū\";\"other\"\n\"1832743\";\"Rishu\";\"other\"\n\"1832743\";\"Rishū\";\"other\"\n\"1832743\";\"Yeoju\";\"other\"\n\"1832743\";\"여주\";\"other\"\n\"1832771\";\"Yesan\";\"main\"\n\"1832771\";\"Esan\";\"other\"\n\"1832771\";\"Jesan\";\"other\"\n\"1832771\";\"Reisan\";\"other\"\n\"1832771\";\"Reizan\";\"other\"\n\"1832771\";\"Yosan\";\"other\"\n\"1832771\";\"Yŏsan\";\"other\"\n\"1832771\";\"Есан\";\"other\"\n\"1832771\";\"예산\";\"other\"\n\"1832828\";\"Yangsan\";\"main\"\n\"1832828\";\"Jansan\";\"other\"\n\"1832828\";\"Ryosan\";\"other\"\n\"1832828\";\"Ryozan\";\"other\"\n\"1832828\";\"Ryōsan\";\"other\"\n\"1832828\";\"Ryōzan\";\"other\"\n\"1832828\";\"Янсан\";\"other\"\n\"1832830\";\"Yangp'yŏng\";\"main\"\n\"1832830\";\"Yangp'yong\";\"ascii\"\n\"1832830\";\"Tohei\";\"other\"\n\"1832830\";\"Yangp'yongumnae\";\"other\"\n\"1832830\";\"Yangp'yŏngŭmnae\";\"other\"\n\"1832830\";\"Yangpyeong\";\"other\"\n\"1832830\";\"Yanp'yong\";\"other\"\n\"1832830\";\"Yanp'yŏng\";\"other\"\n\"1832830\";\"yangpyeong\";\"other\"\n\"1832830\";\"yangpyeong-gun\";\"other\"\n\"1832830\";\"양평\";\"other\"\n\"1832830\";\"양평군\";\"other\"\n\"1832847\";\"Yangju\";\"main\"\n\"1832847\";\"Yangju-gun\";\"other\"\n\"1832847\";\"yangju\";\"other\"\n\"1832847\";\"yangjusi\";\"other\"\n\"1832847\";\"양주\";\"other\"\n\"1832847\";\"양주시\";\"other\"\n\"1832909\";\"Yanggu\";\"main\"\n\"1832909\";\"yang-gu\";\"other\"\n\"1832909\";\"yang-gugun\";\"other\"\n\"1832909\";\"양구\";\"other\"\n\"1832909\";\"양구군\";\"other\"\n\"1833105\";\"Wŏnju\";\"main\"\n\"1833105\";\"Wonju\";\"ascii\"\n\"1833105\";\"Genshu\";\"other\"\n\"1833105\";\"Genshū\";\"other\"\n\"1833466\";\"Wanju\";\"main\"\n\"1833466\";\"wanju\";\"other\"\n\"1833466\";\"wanju-gun\";\"other\"\n\"1833466\";\"wanjugun\";\"other\"\n\"1833466\";\"완주\";\"other\"\n\"1833466\";\"완주군\";\"other\"\n\"1833514\";\"Waegwan\";\"main\"\n\"1833514\";\"Oegwan\";\"other\"\n\"1833514\";\"Waegwan-dong\";\"other\"\n\"1833514\";\"Waegwan-ni\";\"other\"\n\"1833514\";\"Waikan\";\"other\"\n\"1833514\";\"Wakan\";\"other\"\n\"1833514\";\"chungju\";\"other\"\n\"1833514\";\"왜관\";\"other\"\n\"1833747\";\"Ulsan\";\"main\"\n\"1833747\";\"Ul'san\";\"other\"\n\"1833747\";\"Urusan\";\"other\"\n\"1833747\";\"ulsangwang-yeogsi\";\"other\"\n\"1833747\";\"wei shan\";\"other\"\n\"1833747\";\"wei shan guang yu shi\";\"other\"\n\"1833747\";\"Ульсан\";\"other\"\n\"1833747\";\"蔚山\";\"other\"\n\"1833747\";\"蔚山広域市\";\"other\"\n\"1833747\";\"울산광역시\";\"other\"\n\"1833788\";\"Ŭijŏngbu\";\"main\"\n\"1833788\";\"Uijongbu\";\"ascii\"\n\"1833788\";\"Euijeongbu\";\"other\"\n\"1833788\";\"Giseifu\";\"other\"\n\"1833788\";\"Vijongbu\";\"other\"\n\"1833788\";\"의정부\";\"other\"\n\"1834885\";\"Tangjin\";\"main\"\n\"1834885\";\"Toshin\";\"other\"\n\"1834885\";\"Tosin\";\"other\"\n\"1834885\";\"Tōshin\";\"other\"\n\"1834885\";\"Tōsin\";\"other\"\n\"1834885\";\"당진\";\"other\"\n\"1835096\";\"Taesal-li\";\"main\"\n\"1835096\";\"Taesan\";\"other\"\n\"1835096\";\"Taesan-ni\";\"other\"\n\"1835096\";\"Taisan-ri\";\"other\"\n\"1835096\";\"대산리\";\"other\"\n\"1835235\";\"Taejŏn\";\"main\"\n\"1835235\";\"Taejon\";\"ascii\"\n\"1835235\";\"Daejeon\";\"other\"\n\"1835235\";\"Daejon\";\"other\"\n\"1835235\";\"Daiden\";\"other\"\n\"1835235\";\"Taiden\";\"other\"\n\"1835235\";\"Tehdzhon\";\"other\"\n\"1835235\";\"Tetyan\";\"other\"\n\"1835235\";\"Thai-tyen\";\"other\"\n\"1835235\";\"Thāi-tyen\";\"other\"\n\"1835235\";\"Tētyan\";\"other\"\n\"1835235\";\"da tian guang yu shi\";\"other\"\n\"1835235\";\"daejeongwang-yeogsi\";\"other\"\n\"1835235\";\"Тэджон\";\"other\"\n\"1835235\";\"大田广域市\";\"other\"\n\"1835235\";\"大田広域市\";\"other\"\n\"1835235\";\"대전\";\"other\"\n\"1835235\";\"대전광역시\";\"other\"\n\"1835329\";\"Taegu\";\"main\"\n\"1835329\";\"Daegu\";\"other\"\n\"1835329\";\"Daikyu\";\"other\"\n\"1835329\";\"Daikyū\";\"other\"\n\"1835329\";\"Taeguo\";\"other\"\n\"1835329\";\"Taikando\";\"other\"\n\"1835329\";\"Taikandō\";\"other\"\n\"1835329\";\"Taiku\";\"other\"\n\"1835329\";\"Taikyu\";\"other\"\n\"1835329\";\"Taikyū\";\"other\"\n\"1835329\";\"Tehgu\";\"other\"\n\"1835329\";\"da qiu\";\"other\"\n\"1835329\";\"da qiu guang yu shi\";\"other\"\n\"1835329\";\"daegugwang-yeogsi\";\"other\"\n\"1835329\";\"Đại Khâu\";\"other\"\n\"1835329\";\"Тэгу\";\"other\"\n\"1835329\";\"大邱\";\"other\"\n\"1835329\";\"大邱広域市\";\"other\"\n\"1835329\";\"대구광역시\";\"other\"\n\"1835447\";\"Poryŏng\";\"main\"\n\"1835447\";\"Poryong\";\"ascii\"\n\"1835447\";\"Daisen\";\"other\"\n\"1835447\";\"Hannae-ri\";\"other\"\n\"1835447\";\"Taech'on\";\"other\"\n\"1835447\";\"Taech'on-ni\";\"other\"\n\"1835447\";\"Taech’ŏn\";\"other\"\n\"1835447\";\"Taech’ŏn-ni\";\"other\"\n\"1835447\";\"Taisen\";\"other\"\n\"1835447\";\"Taisen-ri\";\"other\"\n\"1835447\";\"보령\";\"other\"\n\"1835515\";\"T’aebaek\";\"main\"\n\"1835515\";\"T'aebaek\";\"ascii\"\n\"1835515\";\"Tkhehbehk\";\"other\"\n\"1835515\";\"Тхэбэк\";\"other\"\n\"1835515\";\"태백\";\"other\"\n\"1835553\";\"Suwŏn\";\"main\"\n\"1835553\";\"Suwon\";\"ascii\"\n\"1835553\";\"Suigen\";\"other\"\n\"1835553\";\"Suvon\";\"other\"\n\"1835553\";\"shui yuan shi\";\"other\"\n\"1835553\";\"suwonsi\";\"other\"\n\"1835553\";\"Сувон\";\"other\"\n\"1835553\";\"水原市\";\"other\"\n\"1835553\";\"수원\";\"other\"\n\"1835553\";\"수원시\";\"other\"\n\"1835648\";\"Sunch’ŏn\";\"main\"\n\"1835648\";\"Sunch'on\";\"ascii\"\n\"1835648\";\"Junten\";\"other\"\n\"1835648\";\"Suncheon\";\"other\"\n\"1835648\";\"Sunchun\";\"other\"\n\"1835648\";\"순천\";\"other\"\n\"1835848\";\"Seoul\";\"main\"\n\"1835848\";\"Choei-yuen\";\"other\"\n\"1835848\";\"Ha-seng\";\"other\"\n\"1835848\";\"Han-yang\";\"other\"\n\"1835848\";\"Hang-yang-tcheng\";\"other\"\n\"1835848\";\"Hansong\";\"other\"\n\"1835848\";\"Hansŏng\";\"other\"\n\"1835848\";\"Hā-seng\";\"other\"\n\"1835848\";\"Hān-yang\";\"other\"\n\"1835848\";\"Kan-yo-jo\";\"other\"\n\"1835848\";\"Kan-yō-jō\";\"other\"\n\"1835848\";\"Keijo\";\"other\"\n\"1835848\";\"Keizyoe\";\"other\"\n\"1835848\";\"Keizyōe\";\"other\"\n\"1835848\";\"Kiung\";\"other\"\n\"1835848\";\"Kyongsong\";\"other\"\n\"1835848\";\"Kyŏngsŏng\";\"other\"\n\"1835848\";\"SEL\";\"other\"\n\"1835848\";\"Seoel\";\"other\"\n\"1835848\";\"Seuel\";\"other\"\n\"1835848\";\"Seul\";\"other\"\n\"1835848\";\"Seula\";\"other\"\n\"1835848\";\"Seulas\";\"other\"\n\"1835848\";\"Seulo\";\"other\"\n\"1835848\";\"Seulum\";\"other\"\n\"1835848\";\"Seúl\";\"other\"\n\"1835848\";\"Seül\";\"other\"\n\"1835848\";\"Soeul\";\"other\"\n\"1835848\";\"Soul\";\"other\"\n\"1835848\";\"Suigen\";\"other\"\n\"1835848\";\"Sye-ul\";\"other\"\n\"1835848\";\"Syou-ouen\";\"other\"\n\"1835848\";\"Szoeul\";\"other\"\n\"1835848\";\"Szöul\";\"other\"\n\"1835848\";\"Séoul\";\"other\"\n\"1835848\";\"Söul\";\"other\"\n\"1835848\";\"Sŏul\";\"other\"\n\"1835848\";\"Wang-ching\";\"other\"\n\"1835848\";\"Wo-jo\";\"other\"\n\"1835848\";\"Wō-jō\";\"other\"\n\"1835848\";\"ciyol\";\"other\"\n\"1835848\";\"seoulteugbyeolsi\";\"other\"\n\"1835848\";\"shou er\";\"other\"\n\"1835848\";\"siyola\";\"other\"\n\"1835848\";\"sol\";\"other\"\n\"1835848\";\"sola\";\"other\"\n\"1835848\";\"souru te bie shi\";\"other\"\n\"1835848\";\"sywl\";\"other\"\n\"1835848\";\"Σεούλ\";\"other\"\n\"1835848\";\"Сеул\";\"other\"\n\"1835848\";\"Սեուլ\";\"other\"\n\"1835848\";\"סאול\";\"other\"\n\"1835848\";\"סיאול\";\"other\"\n\"1835848\";\"سئول\";\"other\"\n\"1835848\";\"سېئول\";\"other\"\n\"1835848\";\"सियोल\";\"other\"\n\"1835848\";\"सोल\";\"other\"\n\"1835848\";\"சியோல்\";\"other\"\n\"1835848\";\"โซล\";\"other\"\n\"1835848\";\"ሶል\";\"other\"\n\"1835848\";\"ソウル特別市\";\"other\"\n\"1835848\";\"首爾\";\"other\"\n\"1835848\";\"서울특별시\";\"other\"\n\"1835895\";\"Sŏsan\";\"main\"\n\"1835895\";\"Sosan\";\"ascii\"\n\"1835895\";\"Seosan\";\"other\"\n\"1835895\";\"Seosan City\";\"other\"\n\"1835895\";\"Suisan\";\"other\"\n\"1835895\";\"rui shan shi\";\"other\"\n\"1835895\";\"seosansi\";\"other\"\n\"1835895\";\"Сосан\";\"other\"\n\"1835895\";\"瑞山市\";\"other\"\n\"1835895\";\"서산\";\"other\"\n\"1835895\";\"서산시\";\"other\"\n\"1835967\";\"Sŏnsan\";\"main\"\n\"1835967\";\"Sonsan\";\"ascii\"\n\"1835967\";\"Jenzan\";\"other\"\n\"1835967\";\"선산\";\"other\"\n\"1836208\";\"Sŏnghwan\";\"main\"\n\"1836208\";\"Songhwan\";\"ascii\"\n\"1836208\";\"Seikan-ri\";\"other\"\n\"1836208\";\"Seonghwan\";\"other\"\n\"1836208\";\"Songhwan-ni\";\"other\"\n\"1836208\";\"Songwon\";\"other\"\n\"1836208\";\"Sŏnghwan-ni\";\"other\"\n\"1836208\";\"성환\";\"other\"\n\"1836553\";\"Sokch’o\";\"main\"\n\"1836553\";\"Sokch'o\";\"ascii\"\n\"1836553\";\"Sogcho\";\"other\"\n\"1836553\";\"Sokch'o-ri\";\"other\"\n\"1836553\";\"Sokchkho\";\"other\"\n\"1836553\";\"Sokcho\";\"other\"\n\"1836553\";\"Sokch’o-ri\";\"other\"\n\"1836553\";\"Сокчхо\";\"other\"\n\"1837706\";\"Sangju\";\"main\"\n\"1837706\";\"Ch'angju\";\"other\"\n\"1837706\";\"Ch’angju\";\"other\"\n\"1837706\";\"Sandzhu\";\"other\"\n\"1837706\";\"Sang-dschu\";\"other\"\n\"1837706\";\"Shoshu\";\"other\"\n\"1837706\";\"Shōshū\";\"other\"\n\"1837706\";\"Syosyu\";\"other\"\n\"1837706\";\"Syōsyū\";\"other\"\n\"1837706\";\"Санджу\";\"other\"\n\"1837706\";\"상주\";\"other\"\n\"1838069\";\"Samch’ŏk\";\"main\"\n\"1838069\";\"Samch'ok\";\"ascii\"\n\"1838069\";\"Samuchoku\";\"other\"\n\"1838069\";\"Sanchoku\";\"other\"\n\"1838069\";\"Sansho\";\"other\"\n\"1838069\";\"Santyoku\";\"other\"\n\"1838069\";\"삼척\";\"other\"\n\"1838508\";\"Puyŏ\";\"main\"\n\"1838508\";\"Puyo\";\"ascii\"\n\"1838508\";\"Fuyo\";\"other\"\n\"1838508\";\"Pujo\";\"other\"\n\"1838508\";\"Пуйо\";\"other\"\n\"1838508\";\"부여\";\"other\"\n\"1838524\";\"Pusan\";\"main\"\n\"1838524\";\"Busan\";\"other\"\n\"1838524\";\"Busán\";\"other\"\n\"1838524\";\"Fousan\";\"other\"\n\"1838524\";\"Fusan\";\"other\"\n\"1838524\";\"Fuzan\";\"other\"\n\"1838524\";\"Phu San\";\"other\"\n\"1838524\";\"Phủ San\";\"other\"\n\"1838524\";\"Pusana\";\"other\"\n\"1838524\";\"Pusano\";\"other\"\n\"1838524\";\"Tsau-liang-hai\";\"other\"\n\"1838524\";\"busangwang-yeogsi\";\"other\"\n\"1838524\";\"fu shan\";\"other\"\n\"1838524\";\"fu shan guang yu shi\";\"other\"\n\"1838524\";\"pu san\";\"other\"\n\"1838524\";\"Пусан\";\"other\"\n\"1838524\";\"ปูซาน\";\"other\"\n\"1838524\";\"釜山\";\"other\"\n\"1838524\";\"釜山広域市\";\"other\"\n\"1838524\";\"부산광역시\";\"other\"\n\"1838716\";\"Puch’ŏn\";\"main\"\n\"1838716\";\"Puch'on\";\"ascii\"\n\"1838716\";\"Bucheon\";\"other\"\n\"1838716\";\"Puchkhon\";\"other\"\n\"1838716\";\"bucheonsi\";\"other\"\n\"1838716\";\"fu chuan shi\";\"other\"\n\"1838716\";\"Пучхон\";\"other\"\n\"1838716\";\"富川市\";\"other\"\n\"1838716\";\"부천시\";\"other\"\n\"1838722\";\"Puan\";\"main\"\n\"1838722\";\"Fuan\";\"other\"\n\"1839011\";\"Pŏlgyo\";\"main\"\n\"1839011\";\"Polgyo\";\"ascii\"\n\"1839011\";\"Bakkyo-ri\";\"other\"\n\"1839011\";\"Bakkyō-ri\";\"other\"\n\"1839011\";\"Beolgyo\";\"other\"\n\"1839011\";\"벌교\";\"other\"\n\"1839071\";\"P’ohang\";\"main\"\n\"1839071\";\"P'ohang\";\"ascii\"\n\"1839071\";\"Geijitsu\";\"other\"\n\"1839071\";\"Hoko\";\"other\"\n\"1839071\";\"Hoko-do\";\"other\"\n\"1839071\";\"Hokō-dō\";\"other\"\n\"1839071\";\"P'ohang-dong\";\"other\"\n\"1839071\";\"P’ohang-dong\";\"other\"\n\"1839652\";\"Osan\";\"main\"\n\"1839652\";\"Osan-ni\";\"other\"\n\"1839652\";\"Usan-ri\";\"other\"\n\"1839652\";\"오산\";\"other\"\n\"1839726\";\"Asan\";\"main\"\n\"1839726\";\"Asan-si\";\"other\"\n\"1839726\";\"Onyang\";\"other\"\n\"1839726\";\"Onyo\";\"other\"\n\"1839726\";\"Onyō\";\"other\"\n\"1839726\";\"asansi\";\"other\"\n\"1839726\";\"ya shan shi\";\"other\"\n\"1839726\";\"Асан\";\"other\"\n\"1839726\";\"Асан-си\";\"other\"\n\"1839726\";\"牙山市\";\"other\"\n\"1839726\";\"아산\";\"other\"\n\"1839726\";\"아산시\";\"other\"\n\"1839726\";\"�·\";\"other\"\n\"1839873\";\"옥천군\";\"main\"\n\"1839873\";\"ogcheongun\";\"ascii\"\n\"1839873\";\"Kumgu-ri\";\"other\"\n\"1839873\";\"ogcheon\";\"other\"\n\"1839873\";\"옥천\";\"other\"\n\"1840179\";\"Kosong\";\"main\"\n\"1840179\";\"goseong\";\"other\"\n\"1840179\";\"goseong-gun\";\"other\"\n\"1840179\";\"고성\";\"other\"\n\"1840179\";\"고성군\";\"other\"\n\"1840211\";\"Nonsan\";\"main\"\n\"1840211\";\"Ronsan\";\"other\"\n\"1840211\";\"Ronzan\";\"other\"\n\"1840211\";\"lun shan shi\";\"other\"\n\"1840211\";\"nonsansi\";\"other\"\n\"1840211\";\"Нонсан\";\"other\"\n\"1840211\";\"論山市\";\"other\"\n\"1840211\";\"논산시\";\"other\"\n\"1840379\";\"Namwŏn\";\"main\"\n\"1840379\";\"Namwon\";\"ascii\"\n\"1840379\";\"Mangen\";\"other\"\n\"1840379\";\"Namvon\";\"other\"\n\"1840379\";\"Namweon\";\"other\"\n\"1840379\";\"Namwun\";\"other\"\n\"1840379\";\"Namwŭn\";\"other\"\n\"1840379\";\"Nangen\";\"other\"\n\"1840379\";\"Намвон\";\"other\"\n\"1840536\";\"Naju\";\"main\"\n\"1840536\";\"Nadzhu\";\"other\"\n\"1840536\";\"Rashu\";\"other\"\n\"1840536\";\"Rashū\";\"other\"\n\"1840536\";\"Наджу\";\"other\"\n\"1840862\";\"Munsan\";\"main\"\n\"1840862\";\"Munsan-ni\";\"other\"\n\"1840862\";\"Мунсан\";\"other\"\n\"1840886\";\"Mungyeong\";\"main\"\n\"1840886\";\"Bunke-gun\";\"other\"\n\"1840886\";\"Bunkei-gun\";\"other\"\n\"1840886\";\"Bunkē-gun\";\"other\"\n\"1840886\";\"Mun'gyong-gun\";\"other\"\n\"1840886\";\"Mun'gyōng-gun\";\"other\"\n\"1840886\";\"Mungyeong gun\";\"other\"\n\"1840886\";\"Munkyong-Mining Region\";\"other\"\n\"1840886\";\"mungyeong\";\"other\"\n\"1840886\";\"mungyeongsi\";\"other\"\n\"1840886\";\"문경\";\"other\"\n\"1840886\";\"문경시\";\"other\"\n\"1841066\";\"Mokp’o\";\"main\"\n\"1841066\";\"Mokp'o\";\"ascii\"\n\"1841066\";\"Mogpkho\";\"other\"\n\"1841066\";\"Mogpo\";\"other\"\n\"1841066\";\"Mok-pho\";\"other\"\n\"1841066\";\"Mokuho\";\"other\"\n\"1841066\";\"Moppo\";\"other\"\n\"1841066\";\"Могпхо\";\"other\"\n\"1841149\";\"Miryang\";\"main\"\n\"1841149\";\"Milyang\";\"other\"\n\"1841149\";\"Mirjan\";\"other\"\n\"1841149\";\"Mitsuyo\";\"other\"\n\"1841149\";\"Mitsuyō\";\"other\"\n\"1841149\";\"Мирян\";\"other\"\n\"1841245\";\"Masan\";\"main\"\n\"1841245\";\"Basan\";\"other\"\n\"1841245\";\"Basen\";\"other\"\n\"1841245\";\"Bazan\";\"other\"\n\"1841245\";\"Bazanpo\";\"other\"\n\"1841245\";\"Ma-sam-pho\";\"other\"\n\"1841245\";\"Ma-san-p-ho\";\"other\"\n\"1841245\";\"Mansan\";\"other\"\n\"1841245\";\"Masampo\";\"other\"\n\"1841245\";\"Masan-si\";\"other\"\n\"1841245\";\"Masanpo\";\"other\"\n\"1841245\";\"ma shan shi\";\"other\"\n\"1841245\";\"masansi\";\"other\"\n\"1841245\";\"Масан\";\"other\"\n\"1841245\";\"Масан-си\";\"other\"\n\"1841245\";\"馬山市\";\"other\"\n\"1841245\";\"马山市\";\"other\"\n\"1841245\";\"마산시\";\"other\"\n\"1841598\";\"Kyŏngsan\";\"main\"\n\"1841598\";\"Kyongsan\";\"ascii\"\n\"1841598\";\"Gyeongsan\";\"other\"\n\"1841598\";\"Keigan\";\"other\"\n\"1841598\";\"Keisan\";\"other\"\n\"1841598\";\"Keizan\";\"other\"\n\"1841598\";\"Kjonsan\";\"other\"\n\"1841598\";\"gyeongsansi\";\"other\"\n\"1841598\";\"Кёнсан\";\"other\"\n\"1841598\";\"경산시\";\"other\"\n\"1841603\";\"Kyŏngju\";\"main\"\n\"1841603\";\"Kyongju\";\"ascii\"\n\"1841603\";\"Gyeongju\";\"other\"\n\"1841603\";\"Keishu\";\"other\"\n\"1841603\";\"Keishū\";\"other\"\n\"1841603\";\"Keisyu\";\"other\"\n\"1841603\";\"Keisyū\";\"other\"\n\"1841603\";\"Kjondzhu\";\"other\"\n\"1841603\";\"Kjong-dschu\";\"other\"\n\"1841603\";\"Kjöng-dschu\";\"other\"\n\"1841603\";\"Kyeng-chu\";\"other\"\n\"1841603\";\"Kyeng-ju\";\"other\"\n\"1841603\";\"Kyong-choo\";\"other\"\n\"1841603\";\"Kyonju\";\"other\"\n\"1841603\";\"gyeongjusi\";\"other\"\n\"1841603\";\"qing zhou\";\"other\"\n\"1841603\";\"qing zhou shi\";\"other\"\n\"1841603\";\"Кёнджу\";\"other\"\n\"1841603\";\"慶州\";\"other\"\n\"1841603\";\"慶州市\";\"other\"\n\"1841603\";\"경주시\";\"other\"\n\"1841775\";\"Kwangyang\";\"main\"\n\"1841775\";\"Gwang-yang\";\"other\"\n\"1841775\";\"Koyo\";\"other\"\n\"1841775\";\"Kuwagyan\";\"other\"\n\"1841775\";\"Kōyō\";\"other\"\n\"1841810\";\"Kwangju\";\"main\"\n\"1841810\";\"Gwangju\";\"other\"\n\"1841810\";\"광주\";\"other\"\n\"1841811\";\"Kwangju\";\"main\"\n\"1841811\";\"Gwangju\";\"other\"\n\"1841811\";\"Koshu\";\"other\"\n\"1841811\";\"Kosyu\";\"other\"\n\"1841811\";\"Kuangju\";\"other\"\n\"1841811\";\"Kvandzhu\";\"other\"\n\"1841811\";\"Kwang-choo\";\"other\"\n\"1841811\";\"Kwang-dschu\";\"other\"\n\"1841811\";\"Kōshū\";\"other\"\n\"1841811\";\"Kōsyū\";\"other\"\n\"1841811\";\"guang zhou\";\"other\"\n\"1841811\";\"guang zhou guang yu shi\";\"other\"\n\"1841811\";\"gwangjugwang-yeogsi\";\"other\"\n\"1841811\";\"Кванджу\";\"other\"\n\"1841811\";\"光州\";\"other\"\n\"1841811\";\"光州広域市\";\"other\"\n\"1841811\";\"光州廣域市\";\"other\"\n\"1841811\";\"광주광역시\";\"other\"\n\"1841976\";\"Kurye\";\"main\"\n\"1841976\";\"Kyurei\";\"other\"\n\"1841976\";\"Kyūrei\";\"other\"\n\"1841976\";\"gulye\";\"other\"\n\"1841976\";\"gulyegun\";\"other\"\n\"1841976\";\"구례\";\"other\"\n\"1841976\";\"구례군\";\"other\"\n\"1841988\";\"Kuri\";\"main\"\n\"1841988\";\"Kuri-shi\";\"other\"\n\"1841988\";\"구리\";\"other\"\n\"1842016\";\"Kunwi\";\"main\"\n\"1842016\";\"Guni\";\"other\"\n\"1842016\";\"gun-wi\";\"other\"\n\"1842016\";\"gun-wigun\";\"other\"\n\"1842016\";\"군위\";\"other\"\n\"1842016\";\"군위군\";\"other\"\n\"1842025\";\"Kunsan\";\"main\"\n\"1842025\";\"Gunsan\";\"other\"\n\"1842025\";\"Gunzan\";\"other\"\n\"1842025\";\"Kunzan\";\"other\"\n\"1842025\";\"gunsansi\";\"other\"\n\"1842025\";\"qun shan shi\";\"other\"\n\"1842025\";\"Кунсан\";\"other\"\n\"1842025\";\"群山市\";\"other\"\n\"1842025\";\"군산시\";\"other\"\n\"1842153\";\"Kŭmsan\";\"main\"\n\"1842153\";\"Kumsan\";\"ascii\"\n\"1842153\";\"Kinsan\";\"other\"\n\"1842153\";\"Kinzan\";\"other\"\n\"1842153\";\"Kumzan\";\"other\"\n\"1842153\";\"Kŭmzan\";\"other\"\n\"1842153\";\"금산\";\"other\"\n\"1842225\";\"Kumi\";\"main\"\n\"1842225\";\"Kibi\";\"other\"\n\"1842225\";\"Kwimi\";\"other\"\n\"1842225\";\"Куми\";\"other\"\n\"1842225\";\"구미\";\"other\"\n\"1842485\";\"Goyang\";\"main\"\n\"1842485\";\"Koyang\";\"other\"\n\"1842485\";\"Koyang-ni\";\"other\"\n\"1842485\";\"Koyo\";\"other\"\n\"1842485\";\"Kōyō\";\"other\"\n\"1842485\";\"goyang\";\"other\"\n\"1842485\";\"goyangsi\";\"other\"\n\"1842485\";\"고양\";\"other\"\n\"1842485\";\"고양시\";\"other\"\n\"1842518\";\"Kosŏng\";\"main\"\n\"1842518\";\"Kosong\";\"ascii\"\n\"1842518\";\"Goseong\";\"other\"\n\"1842518\";\"Kojo\";\"other\"\n\"1842518\";\"Kojō\";\"other\"\n\"1842518\";\"Koson\";\"other\"\n\"1842518\";\"Kozyo\";\"other\"\n\"1842518\";\"Kozyō\";\"other\"\n\"1842518\";\"Косон\";\"other\"\n\"1842518\";\"고성\";\"other\"\n\"1842616\";\"Kongju\";\"main\"\n\"1842616\";\"Gongju\";\"other\"\n\"1842616\";\"Kochu\";\"other\"\n\"1842616\";\"Kondzhu\";\"other\"\n\"1842616\";\"Kong Tjou\";\"other\"\n\"1842616\";\"Kong-dschu\";\"other\"\n\"1842616\";\"Koshu\";\"other\"\n\"1842616\";\"Kosyu\";\"other\"\n\"1842616\";\"Kōshū\";\"other\"\n\"1842616\";\"Kōsyū\";\"other\"\n\"1842616\";\"gong zhou\";\"other\"\n\"1842616\";\"gong zhou shi\";\"other\"\n\"1842616\";\"gongjusi\";\"other\"\n\"1842616\";\"kondzhu-si\";\"other\"\n\"1842616\";\"Конджу\";\"other\"\n\"1842616\";\"Конджу-си\";\"other\"\n\"1842616\";\"公州\";\"other\"\n\"1842616\";\"公州市\";\"other\"\n\"1842616\";\"공주\";\"other\"\n\"1842616\";\"공주시\";\"other\"\n\"1842754\";\"Kŏje\";\"main\"\n\"1842754\";\"Koje\";\"ascii\"\n\"1842754\";\"Kyosai\";\"other\"\n\"1842800\";\"Koesan\";\"main\"\n\"1842800\";\"Goesan\";\"other\"\n\"1842800\";\"Kaesong\";\"other\"\n\"1842800\";\"Kaisan\";\"other\"\n\"1842800\";\"Kaizan\";\"other\"\n\"1842800\";\"Kwaesan\";\"other\"\n\"1842800\";\"Kwaizan\";\"other\"\n\"1842800\";\"goesan\";\"other\"\n\"1842800\";\"goesangun\";\"other\"\n\"1842800\";\"괴산\";\"other\"\n\"1842800\";\"괴산군\";\"other\"\n\"1842859\";\"Koch'ang\";\"main\"\n\"1842859\";\"Kosho\";\"other\"\n\"1842859\";\"Kōshō\";\"other\"\n\"1842859\";\"gochang\";\"other\"\n\"1842859\";\"gochang-gun\";\"other\"\n\"1842859\";\"고창\";\"other\"\n\"1842859\";\"고창군\";\"other\"\n\"1842939\";\"Kimje\";\"main\"\n\"1842939\";\"Kintei\";\"other\"\n\"1842939\";\"Kum\";\"other\"\n\"1842939\";\"Kumje\";\"other\"\n\"1842939\";\"Kŭmje\";\"other\"\n\"1842943\";\"Kimhae\";\"main\"\n\"1842943\";\"Kinkai\";\"other\"\n\"1842943\";\"Kumhae\";\"other\"\n\"1842943\";\"Kŭmhae\";\"other\"\n\"1842944\";\"Gimcheon\";\"main\"\n\"1842944\";\"Kimch'on-si\";\"other\"\n\"1842944\";\"Kimch'ŏn-si\";\"other\"\n\"1842944\";\"Kumch'on-si\";\"other\"\n\"1842944\";\"Kŭmch'ŏn-si\";\"other\"\n\"1842944\";\"gim cheonsi\";\"other\"\n\"1842944\";\"gimcheon\";\"other\"\n\"1842944\";\"김 천시\";\"other\"\n\"1842944\";\"김천\";\"other\"\n\"1842966\";\"Kijang\";\"main\"\n\"1842966\";\"Kichang\";\"other\"\n\"1842966\";\"Kicho\";\"other\"\n\"1842966\";\"Kichō\";\"other\"\n\"1843082\";\"Gapyeong\";\"main\"\n\"1843082\";\"Gapyeong gun\";\"other\"\n\"1843082\";\"Kahei-gun\";\"other\"\n\"1843082\";\"Kap'yong-gun\";\"other\"\n\"1843082\";\"Kap'yŏng-gun\";\"other\"\n\"1843082\";\"gapyeong\";\"other\"\n\"1843082\";\"gapyeong-gun\";\"other\"\n\"1843082\";\"가평\";\"other\"\n\"1843082\";\"가평군\";\"other\"\n\"1843137\";\"Kangnŭng\";\"main\"\n\"1843137\";\"Kangnung\";\"ascii\"\n\"1843137\";\"Gangneung\";\"other\"\n\"1843137\";\"Gangreung\";\"other\"\n\"1843137\";\"Kaguun\";\"other\"\n\"1843137\";\"Kang-neung\";\"other\"\n\"1843137\";\"Kannyn\";\"other\"\n\"1843137\";\"Koryo\";\"other\"\n\"1843137\";\"Kōryō\";\"other\"\n\"1843137\";\"gangleungsi\";\"other\"\n\"1843137\";\"jiang ling shi\";\"other\"\n\"1843137\";\"Каннын\";\"other\"\n\"1843137\";\"江陵市\";\"other\"\n\"1843137\";\"강릉시\";\"other\"\n\"1843163\";\"Kanghwa\";\"main\"\n\"1843163\";\"Ganghwa\";\"other\"\n\"1843163\";\"Kanguhaa\";\"other\"\n\"1843163\";\"Koka\";\"other\"\n\"1843163\";\"Kokwa\";\"other\"\n\"1843163\";\"Kōka\";\"other\"\n\"1843163\";\"ganghwa\";\"other\"\n\"1843163\";\"강화\";\"other\"\n\"1843491\";\"Iksan\";\"main\"\n\"1843491\";\"Iri\";\"other\"\n\"1843491\";\"Riri\";\"other\"\n\"1843491\";\"Иксан\";\"other\"\n\"1843564\";\"Inch’ŏn\";\"main\"\n\"1843564\";\"Inch'on\";\"ascii\"\n\"1843564\";\"Chemulpho\";\"other\"\n\"1843564\";\"Chemulpo\";\"other\"\n\"1843564\";\"Choimulpo\";\"other\"\n\"1843564\";\"Inch'ŏn\";\"other\"\n\"1843564\";\"Incheon\";\"other\"\n\"1843564\";\"Inchkhon\";\"other\"\n\"1843564\";\"Inchon\";\"other\"\n\"1843564\";\"Incona\";\"other\"\n\"1843564\";\"Inčona\";\"other\"\n\"1843564\";\"Jen-tchoan\";\"other\"\n\"1843564\";\"Jinsen\";\"other\"\n\"1843564\";\"Nhan Xuyen\";\"other\"\n\"1843564\";\"Nhân Xuyên\";\"other\"\n\"1843564\";\"Tchemoulpo\";\"other\"\n\"1843564\";\"Tjyei-moul-hpo\";\"other\"\n\"1843564\";\"Tsche-mul-p-ho\";\"other\"\n\"1843564\";\"incheongwang-yeogsi\";\"other\"\n\"1843564\";\"ren chuan\";\"other\"\n\"1843564\";\"ren chuan guang yu shi\";\"other\"\n\"1843564\";\"İncheon\";\"other\"\n\"1843564\";\"Инчон\";\"other\"\n\"1843564\";\"Инчхон\";\"other\"\n\"1843564\";\"仁川\";\"other\"\n\"1843564\";\"仁川広域市\";\"other\"\n\"1843564\";\"인천광역시\";\"other\"\n\"1843585\";\"Imsil\";\"main\"\n\"1843585\";\"Ninjitsu\";\"other\"\n\"1843585\";\"imsil\";\"other\"\n\"1843585\";\"imsilgun\";\"other\"\n\"1843585\";\"임실\";\"other\"\n\"1843585\";\"임실군\";\"other\"\n\"1843702\";\"Ich'ŏn\";\"main\"\n\"1843702\";\"Ich'on\";\"ascii\"\n\"1843702\";\"Icheon\";\"other\"\n\"1843702\";\"Risen\";\"other\"\n\"1843702\";\"icheon\";\"other\"\n\"1843702\";\"이천\";\"other\"\n\"1843841\";\"Hwasun\";\"main\"\n\"1843841\";\"Hwansun\";\"other\"\n\"1843841\";\"Hwason\";\"other\"\n\"1843841\";\"Khvasun\";\"other\"\n\"1843841\";\"Wajun\";\"other\"\n\"1843841\";\"Хвасун\";\"other\"\n\"1843847\";\"Hwaseong\";\"main\"\n\"1843847\";\"Hwaseong gun\";\"other\"\n\"1843847\";\"Hwasong-gun\";\"other\"\n\"1843847\";\"Hwasŏng-gun\";\"other\"\n\"1843847\";\"Suigen\";\"other\"\n\"1843847\";\"Suwon-gun\";\"other\"\n\"1843847\";\"Suwŏn-gun\";\"other\"\n\"1843847\";\"Whasung-Gun\";\"other\"\n\"1843847\";\"hwaseong\";\"other\"\n\"1843847\";\"hwaseongsi\";\"other\"\n\"1843847\";\"화성\";\"other\"\n\"1843847\";\"화성시\";\"other\"\n\"1844045\";\"Hwacheon\";\"main\"\n\"1844045\";\"Huachon\";\"other\"\n\"1844045\";\"Hwach'on\";\"other\"\n\"1844045\";\"Hwach'ŏn\";\"other\"\n\"1844045\";\"Kasen\";\"other\"\n\"1844045\";\"hwacheon\";\"other\"\n\"1844045\";\"hwacheongun\";\"other\"\n\"1844045\";\"화천\";\"other\"\n\"1844045\";\"화천군\";\"other\"\n\"1844174\";\"Hongsŏng\";\"main\"\n\"1844174\";\"Hongsong\";\"ascii\"\n\"1844174\";\"Hongsung\";\"other\"\n\"1844174\";\"Kojo\";\"other\"\n\"1844174\";\"Kōjō\";\"other\"\n\"1844174\";\"홍성\";\"other\"\n\"1844191\";\"Hongch’ŏn\";\"main\"\n\"1844191\";\"Hongch'on\";\"ascii\"\n\"1844191\";\"Kosen\";\"other\"\n\"1844191\";\"Kōsen\";\"other\"\n\"1844191\";\"hongcheon\";\"other\"\n\"1844191\";\"hongcheongun\";\"other\"\n\"1844191\";\"홍천\";\"other\"\n\"1844191\";\"홍천군\";\"other\"\n\"1844308\";\"Hayang\";\"main\"\n\"1844308\";\"Kayo\";\"other\"\n\"1844308\";\"Kayō\";\"other\"\n\"1844751\";\"Haenam\";\"main\"\n\"1844751\";\"Kainan\";\"other\"\n\"1844751\";\"haenam\";\"other\"\n\"1844751\";\"해남\";\"other\"\n\"1845136\";\"Ch’unch’ŏn\";\"main\"\n\"1845136\";\"Ch'unch'on\";\"ascii\"\n\"1845136\";\"Chhun-chhen\";\"other\"\n\"1845136\";\"Chkhunchkhon\";\"other\"\n\"1845136\";\"Chuncheon\";\"other\"\n\"1845136\";\"Shunsen\";\"other\"\n\"1845136\";\"Shusen\";\"other\"\n\"1845136\";\"Syunsen\";\"other\"\n\"1845136\";\"Tsch-hun-tsch-hon\";\"other\"\n\"1845136\";\"Tsch-hun-tsch-hŏn\";\"other\"\n\"1845136\";\"chun chuan shi\";\"other\"\n\"1845136\";\"chuncheonsi\";\"other\"\n\"1845136\";\"Чхунчхон\";\"other\"\n\"1845136\";\"春川市\";\"other\"\n\"1845136\";\"춘천시\";\"other\"\n\"1845457\";\"Chŏnju\";\"main\"\n\"1845457\";\"Chonju\";\"ascii\"\n\"1845457\";\"Chenju\";\"other\"\n\"1845457\";\"Chondzhu\";\"other\"\n\"1845457\";\"Chongju\";\"other\"\n\"1845457\";\"Chunju\";\"other\"\n\"1845457\";\"Chŏngju\";\"other\"\n\"1845457\";\"Jenchu\";\"other\"\n\"1845457\";\"Jeonju\";\"other\"\n\"1845457\";\"Tjyen-tjyou\";\"other\"\n\"1845457\";\"Tschon-dschu\";\"other\"\n\"1845457\";\"Tschön-dschu\";\"other\"\n\"1845457\";\"Tsiuentcheou\";\"other\"\n\"1845457\";\"Tyondyu\";\"other\"\n\"1845457\";\"Tyondyū\";\"other\"\n\"1845457\";\"jeonjusi\";\"other\"\n\"1845457\";\"quan zhou\";\"other\"\n\"1845457\";\"quan zhou shi\";\"other\"\n\"1845457\";\"Чонджу\";\"other\"\n\"1845457\";\"全州\";\"other\"\n\"1845457\";\"全州市\";\"other\"\n\"1845457\";\"전주\";\"other\"\n\"1845457\";\"전주시\";\"other\"\n\"1845519\";\"Cheongsong gun\";\"main\"\n\"1845519\";\"Ch'ongsong-gun\";\"other\"\n\"1845519\";\"Ch'ŏngsong-gun\";\"other\"\n\"1845519\";\"Seisho\";\"other\"\n\"1845519\";\"Seisho-gun\";\"other\"\n\"1845519\";\"Seishō\";\"other\"\n\"1845519\";\"Seishō-gun\";\"other\"\n\"1845519\";\"cheongsong\";\"other\"\n\"1845519\";\"cheongsong-eub\";\"other\"\n\"1845519\";\"cheongsong-gun\";\"other\"\n\"1845519\";\"청송\";\"other\"\n\"1845519\";\"청송군\";\"other\"\n\"1845519\";\"청송읍\";\"other\"\n\"1845604\";\"Ch’ŏngju\";\"main\"\n\"1845604\";\"Ch'ongju\";\"ascii\"\n\"1845604\";\"Ch'ungju\";\"other\"\n\"1845604\";\"Cheng-ju\";\"other\"\n\"1845604\";\"Cheongju\";\"other\"\n\"1845604\";\"Cheonju\";\"other\"\n\"1845604\";\"Chkhundzhu\";\"other\"\n\"1845604\";\"Chungju\";\"other\"\n\"1845604\";\"Seishu\";\"other\"\n\"1845604\";\"Seishū\";\"other\"\n\"1845604\";\"Seisyu\";\"other\"\n\"1845604\";\"Seisyū\";\"other\"\n\"1845604\";\"Tschong-dschu\";\"other\"\n\"1845604\";\"Tschöng-dschu\";\"other\"\n\"1845604\";\"Tyundyu\";\"other\"\n\"1845604\";\"chungjusi\";\"other\"\n\"1845604\";\"zhong zhou shi\";\"other\"\n\"1845604\";\"Чхунджу\";\"other\"\n\"1845604\";\"忠州市\";\"other\"\n\"1845604\";\"충주시\";\"other\"\n\"1845759\";\"Ch’ŏnan\";\"main\"\n\"1845759\";\"Ch'onan\";\"ascii\"\n\"1845759\";\"Cheonan\";\"other\"\n\"1845759\";\"Chkhonan\";\"other\"\n\"1845759\";\"Chkhonan-si\";\"other\"\n\"1845759\";\"Tenan\";\"other\"\n\"1845759\";\"Thyen-an\";\"other\"\n\"1845759\";\"Thyen-ān\";\"other\"\n\"1845759\";\"cheon-ansi\";\"other\"\n\"1845759\";\"tian an shi\";\"other\"\n\"1845759\";\"Чхонан\";\"other\"\n\"1845759\";\"Чхонан-си\";\"other\"\n\"1845759\";\"天安市\";\"other\"\n\"1845759\";\"천안\";\"other\"\n\"1845759\";\"천안시\";\"other\"\n\"1846052\";\"Chinju\";\"main\"\n\"1846052\";\"Chindzhu\";\"other\"\n\"1846052\";\"Jinju\";\"other\"\n\"1846052\";\"Shinshu\";\"other\"\n\"1846052\";\"Shinshū\";\"other\"\n\"1846052\";\"Sinsyu\";\"other\"\n\"1846052\";\"Sinsyū\";\"other\"\n\"1846052\";\"Tschin-dschu\";\"other\"\n\"1846052\";\"jin zhou\";\"other\"\n\"1846052\";\"jin zhou shi\";\"other\"\n\"1846052\";\"jinjusi\";\"other\"\n\"1846052\";\"Чинджу\";\"other\"\n\"1846052\";\"晋州\";\"other\"\n\"1846052\";\"晋州市\";\"other\"\n\"1846052\";\"진주시\";\"other\"\n\"1846069\";\"Chinhae\";\"main\"\n\"1846069\";\"Chinkae\";\"other\"\n\"1846069\";\"Chinkai\";\"other\"\n\"1846069\";\"Chinkheh\";\"other\"\n\"1846069\";\"Jinhae\";\"other\"\n\"1846069\";\"Tinkai\";\"other\"\n\"1846069\";\"jinhaesi\";\"other\"\n\"1846069\";\"zhen hai shi\";\"other\"\n\"1846069\";\"Чинхэ\";\"other\"\n\"1846069\";\"鎮海市\";\"other\"\n\"1846069\";\"镇海市\";\"other\"\n\"1846069\";\"진해시\";\"other\"\n\"1846095\";\"Chinch'ŏn\";\"main\"\n\"1846095\";\"Chinch'on\";\"ascii\"\n\"1846095\";\"Chinchon\";\"other\"\n\"1846095\";\"Chinsen\";\"other\"\n\"1846095\";\"Jincheon\";\"other\"\n\"1846095\";\"jincheon\";\"other\"\n\"1846095\";\"jincheongun\";\"other\"\n\"1846095\";\"진천\";\"other\"\n\"1846095\";\"진천군\";\"other\"\n\"1846114\";\"진안군\";\"main\"\n\"1846114\";\"jin-angun\";\"ascii\"\n\"1846114\";\"jin-an\";\"other\"\n\"1846114\";\"진안\";\"other\"\n\"1846266\";\"Cheju\";\"main\"\n\"1846266\";\"Chedzhu\";\"other\"\n\"1846266\";\"Chu-sung\";\"other\"\n\"1846266\";\"Chyei Chyu\";\"other\"\n\"1846266\";\"Jeju\";\"other\"\n\"1846266\";\"Jeju City\";\"other\"\n\"1846266\";\"Jeju-si\";\"other\"\n\"1846266\";\"Kota Jeju\";\"other\"\n\"1846266\";\"Saishu\";\"other\"\n\"1846266\";\"Saishū\";\"other\"\n\"1846266\";\"Saisyu\";\"other\"\n\"1846266\";\"Saisyu Yu\";\"other\"\n\"1846266\";\"Saisyū\";\"other\"\n\"1846266\";\"Saisyū Yū\";\"other\"\n\"1846266\";\"Tsche-dschu\";\"other\"\n\"1846266\";\"Tse-tsiu\";\"other\"\n\"1846266\";\"Tsitcheou\";\"other\"\n\"1846266\";\"jejusi\";\"other\"\n\"1846266\";\"ji zhou shi\";\"other\"\n\"1846266\";\"Чеджу\";\"other\"\n\"1846266\";\"済州市\";\"other\"\n\"1846266\";\"제주시\";\"other\"\n\"1846326\";\"Ch’angwŏn\";\"main\"\n\"1846326\";\"Ch'angwon\";\"ascii\"\n\"1846326\";\"Ch'angwŏn\";\"other\"\n\"1846326\";\"Changwon\";\"other\"\n\"1846326\";\"Chkhanvon\";\"other\"\n\"1846326\";\"Sangwon\";\"other\"\n\"1846326\";\"Shogen\";\"other\"\n\"1846326\";\"Shōgen\";\"other\"\n\"1846326\";\"chang yuan\";\"other\"\n\"1846326\";\"chang yuan shi\";\"other\"\n\"1846326\";\"chang-wonsi\";\"other\"\n\"1846326\";\"Чханвон\";\"other\"\n\"1846326\";\"昌原\";\"other\"\n\"1846326\";\"昌原市\";\"other\"\n\"1846326\";\"창원시\";\"other\"\n\"1846355\";\"Changsu\";\"main\"\n\"1846355\";\"Changsu-ri\";\"other\"\n\"1846355\";\"Chosui-ri\";\"other\"\n\"1846355\";\"Chōsui-ri\";\"other\"\n\"1846355\";\"jangsu\";\"other\"\n\"1846355\";\"jangsugun\";\"other\"\n\"1846355\";\"장수\";\"other\"\n\"1846355\";\"장수군\";\"other\"\n\"1846898\";\"Anyang\";\"main\"\n\"1846898\";\"An\\\"jan\";\"other\"\n\"1846898\";\"Anyang-ni\";\"other\"\n\"1846898\";\"Anyo\";\"other\"\n\"1846898\";\"Anyo-ri\";\"other\"\n\"1846898\";\"Anyō\";\"other\"\n\"1846898\";\"Anyō-ri\";\"other\"\n\"1846898\";\"an yang shi\";\"other\"\n\"1846898\";\"an-yangsi\";\"other\"\n\"1846898\";\"Анъян\";\"other\"\n\"1846898\";\"安養市\";\"other\"\n\"1846898\";\"안양\";\"other\"\n\"1846898\";\"안양시\";\"other\"\n\"1846912\";\"Ansŏng\";\"main\"\n\"1846912\";\"Ansong\";\"ascii\"\n\"1846912\";\"Anjo\";\"other\"\n\"1846912\";\"Anjŏ\";\"other\"\n\"1846912\";\"Anseong\";\"other\"\n\"1846912\";\"Anson\";\"other\"\n\"1846912\";\"an cheng shi\";\"other\"\n\"1846912\";\"anseong\";\"other\"\n\"1846912\";\"anseongsi\";\"other\"\n\"1846912\";\"Ансон\";\"other\"\n\"1846912\";\"安城市\";\"other\"\n\"1846912\";\"안성\";\"other\"\n\"1846912\";\"안성시\";\"other\"\n\"1846918\";\"Ansan\";\"main\"\n\"1846918\";\"Ansan-si\";\"other\"\n\"1846918\";\"Anzan\";\"other\"\n\"1846918\";\"Onson\";\"other\"\n\"1846918\";\"an shan shi\";\"other\"\n\"1846918\";\"ansansi\";\"other\"\n\"1846918\";\"Ансан-си\";\"other\"\n\"1846918\";\"Онсон\";\"other\"\n\"1846918\";\"安山市\";\"other\"\n\"1846918\";\"안산시\";\"other\"\n\"1846986\";\"Andong\";\"main\"\n\"1846986\";\"Andang\";\"other\"\n\"1846986\";\"Andon\";\"other\"\n\"1846986\";\"Anto\";\"other\"\n\"1846986\";\"Antō\";\"other\"\n\"1846986\";\"Андон\";\"other\"\n\"1847050\";\"Aewŏl-li\";\"main\"\n\"1847050\";\"Aewol-li\";\"ascii\"\n\"1847050\";\"Aewol\";\"other\"\n\"1847050\";\"Aewŏl\";\"other\"\n\"1847050\";\"Gaigetsu\";\"other\"\n\"1847050\";\"Gaigetsu-ri\";\"other\"\n\"1847050\";\"Gaigeturi\";\"other\"\n\"1882056\";\"Sinhyŏn\";\"main\"\n\"1882056\";\"Sinhyon\";\"ascii\"\n\"1882056\";\"Sinhyeon\";\"other\"\n\"1886598\";\"Yŏnmu\";\"main\"\n\"1886598\";\"Yonmu\";\"ascii\"\n\"1892823\";\"Tonghae\";\"main\"\n\"1896334\";\"Sŏ-myŏn\";\"main\"\n\"1896334\";\"So-myon\";\"ascii\"\n\"1896334\";\"Seo-myeon\";\"other\"\n\"1896334\";\"seomyeon\";\"other\"\n\"1896334\";\"서면\";\"other\"\n\"1896953\";\"Pubal\";\"main\"\n\"1897000\";\"Sŏngnam\";\"main\"\n\"1897000\";\"Songnam\";\"ascii\"\n\"1897000\";\"Seongnam\";\"other\"\n\"1897000\";\"성남\";\"other\"\n\"1897007\";\"Hanam\";\"main\"\n\"1897118\";\"Hwado\";\"main\"\n\"1897122\";\"Namyangju\";\"main\"\n\"1897122\";\"Migum\";\"other\"\n\"1897122\";\"Migŭm\";\"other\"\n\"1897122\";\"Nam\\\"jandzhu\";\"other\"\n\"1897122\";\"Namjandzhu\";\"other\"\n\"1897122\";\"nam-yangjusi\";\"other\"\n\"1897122\";\"nan yang zhou shi\";\"other\"\n\"1897122\";\"Намъянджу\";\"other\"\n\"1897122\";\"Намянджу\";\"other\"\n\"1897122\";\"南楊州市\";\"other\"\n\"1897122\";\"남양주시\";\"other\"\n\"1912205\";\"Ungsang\";\"main\"\n\"1912209\";\"Wabu\";\"main\"\n\"1925936\";\"Naesŏ\";\"main\"\n\"1925936\";\"Naeso\";\"ascii\"\n\"1925943\";\"Hwawŏn\";\"main\"\n\"1925943\";\"Hwawon\";\"ascii\"\n\"1948005\";\"Kwangmyŏng\";\"main\"\n\"1948005\";\"Kwangmyong\";\"ascii\"\n\"6395804\";\"Sinan\";\"main\"\n\"6395804\";\"sin-an\";\"other\"\n\"6395804\";\"sin-angun\";\"other\"\n\"6395804\";\"신안\";\"other\"\n\"6395804\";\"신안군\";\"other\"\n\"6903078\";\"Changnyeong\";\"main\"\n\"6903078\";\"Ch'angnyong\";\"other\"\n\"6903078\";\"Ch’angnyŏng\";\"other\"\n\"6903078\";\"changnyeong\";\"other\"\n\"6903078\";\"changnyeong-eub\";\"other\"\n\"6903078\";\"changnyeong-gun\";\"other\"\n\"6903078\";\"창녕\";\"other\"\n\"6903078\";\"창녕군\";\"other\"\n\"6903078\";\"창녕읍\";\"other\"\n\"285603\";\"Janūb as Surrah\";\"main\"\n\"285603\";\"Janub as Surrah\";\"ascii\"\n\"285603\";\"South Surra\";\"other\"\n\"285603\";\"janub aalsurat\";\"other\"\n\"285603\";\"جَنُوب اَلسُّرَّة\";\"other\"\n\"285663\";\"Bayān\";\"main\"\n\"285663\";\"Bayan\";\"ascii\"\n\"285663\";\"Bajan\";\"other\"\n\"285663\";\"bayan\";\"other\"\n\"285663\";\"Баян\";\"other\"\n\"285663\";\"بيان\";\"other\"\n\"285663\";\"بَيَان\";\"other\"\n\"285673\";\"Az Zawr\";\"main\"\n\"285673\";\"Az Zaur\";\"other\"\n\"285673\";\"Az Zor\";\"other\"\n\"285673\";\"Failakka Village\";\"other\"\n\"285673\";\"Zor\";\"other\"\n\"285673\";\"aalzawr\";\"other\"\n\"285673\";\"اَلزَّوْر\";\"other\"\n\"285704\";\"As Sālimīyah\";\"main\"\n\"285704\";\"As Salimiyah\";\"ascii\"\n\"285704\";\"Ad Dumna\";\"other\"\n\"285704\";\"Ad Dumnah\";\"other\"\n\"285704\";\"As - Salimiyah\";\"other\"\n\"285704\";\"As-Salimiyah\";\"other\"\n\"285704\";\"As-Sālimiyah\";\"other\"\n\"285704\";\"As-S̅aimiyah\";\"other\"\n\"285704\";\"As-S̅āimiyah\";\"other\"\n\"285704\";\"As̄ - Sālimiyah\";\"other\"\n\"285704\";\"Dimnah\";\"other\"\n\"285704\";\"Salimiyah\";\"other\"\n\"285704\";\"Salmiya\";\"other\"\n\"285704\";\"Salmiyah\";\"other\"\n\"285704\";\"Salmiyyeh\";\"other\"\n\"285704\";\"aalsaalimiat\";\"other\"\n\"285704\";\"السالمية\";\"other\"\n\"285704\";\"اَلسَّالِمِيَّة\";\"other\"\n\"285721\";\"Ash Shāmīyah\";\"main\"\n\"285721\";\"Ash Shamiyah\";\"ascii\"\n\"285721\";\"Al Shamiya\";\"other\"\n\"285721\";\"Shamiya\";\"other\"\n\"285721\";\"Shamiyah\";\"other\"\n\"285721\";\"Shamiyeh\";\"other\"\n\"285721\";\"Shamiyyeh\";\"other\"\n\"285721\";\"Shamīyah\";\"other\"\n\"285721\";\"aalshaamiat\";\"other\"\n\"285721\";\"اَلشَّامِيَّة\";\"other\"\n\"285728\";\"Ar Riqqah\";\"main\"\n\"285728\";\"Al-Riqqah\";\"other\"\n\"285728\";\"Reqqa\";\"other\"\n\"285728\";\"aalriqat\";\"other\"\n\"285728\";\"الرقة\";\"other\"\n\"285728\";\"اَلرِّقَّة\";\"other\"\n\"285760\";\"Al Wafrah\";\"main\"\n\"285760\";\"aalwafrat\";\"other\"\n\"285760\";\"اَلْوَفْرَة\";\"other\"\n\"285778\";\"Al Manqaf\";\"main\"\n\"285778\";\"Al Manjaf\";\"other\"\n\"285778\";\"Al-Mangaf\";\"other\"\n\"285778\";\"Manqaf\";\"other\"\n\"285778\";\"aalmanqaf\";\"other\"\n\"285778\";\"المنقف\";\"other\"\n\"285778\";\"اَلْمَنْقَف\";\"other\"\n\"285782\";\"Al Mahbūlah\";\"main\"\n\"285782\";\"Al Mahbulah\";\"ascii\"\n\"285782\";\"Al-Mahabulah\";\"other\"\n\"285782\";\"Al-Mahabūlah\";\"other\"\n\"285782\";\"Mahboola\";\"other\"\n\"285782\";\"aalmahbulat\";\"other\"\n\"285782\";\"المهبولة\";\"other\"\n\"285782\";\"اَلْمَهْبُولَة\";\"other\"\n\"285787\";\"Kuwait\";\"main\"\n\"285787\";\"Al Kuwait\";\"other\"\n\"285787\";\"Al Kuwayt\";\"other\"\n\"285787\";\"Al-Kuwait\";\"other\"\n\"285787\";\"Ciudad de Kuwait\";\"other\"\n\"285787\";\"Koeweit\";\"other\"\n\"285787\";\"Kota Kuwait\";\"other\"\n\"285787\";\"Koveyit\";\"other\"\n\"285787\";\"Koweit\";\"other\"\n\"285787\";\"Koweït\";\"other\"\n\"285787\";\"Kuvaeyt\";\"other\"\n\"285787\";\"Kuvajt\";\"other\"\n\"285787\";\"Kuvajto\";\"other\"\n\"285787\";\"Kuvajturbo\";\"other\"\n\"285787\";\"Kuveitas\";\"other\"\n\"285787\";\"Kuvejt\";\"other\"\n\"285787\";\"Kuväyt\";\"other\"\n\"285787\";\"Kuwait City\";\"other\"\n\"285787\";\"Kuwait Stad\";\"other\"\n\"285787\";\"Kuwait by\";\"other\"\n\"285787\";\"Kuwait-Stadt\";\"other\"\n\"285787\";\"Kuwait-Urbo\";\"other\"\n\"285787\";\"Kuwayt\";\"other\"\n\"285787\";\"Kuweit\";\"other\"\n\"285787\";\"Kuwejt\";\"other\"\n\"285787\";\"Madinat al Kuwayt\";\"other\"\n\"285787\";\"Madinat al-Kuwait\";\"other\"\n\"285787\";\"Madīnat al Kuwayt\";\"other\"\n\"285787\";\"Pole tou Koubeit\";\"other\"\n\"285787\";\"aalkuayt\";\"other\"\n\"285787\";\"ke wei te shi\";\"other\"\n\"285787\";\"khuwet si ti\";\"other\"\n\"285787\";\"kuu~eto\";\"other\"\n\"285787\";\"kuweiteu si\";\"other\"\n\"285787\";\"kwwyt syty\";\"other\"\n\"285787\";\"mdynt alkwyt\";\"other\"\n\"285787\";\"Πόλη του Κουβέιτ\";\"other\"\n\"285787\";\"Кувейт\";\"other\"\n\"285787\";\"כווית סיטי\";\"other\"\n\"285787\";\"اَلْكُوَيْت\";\"other\"\n\"285787\";\"مدينة الكويت\";\"other\"\n\"285787\";\"คูเวตซิตี\";\"other\"\n\"285787\";\"クウェート\";\"other\"\n\"285787\";\"科威特市\";\"other\"\n\"285787\";\"쿠웨이트 시\";\"other\"\n\"285799\";\"Al Jahrā’\";\"main\"\n\"285799\";\"Al Jahra'\";\"ascii\"\n\"285799\";\"Al Jahara\";\"other\"\n\"285799\";\"Al Jahrah\";\"other\"\n\"285799\";\"Al-Jaharah\";\"other\"\n\"285799\";\"Iahara\";\"other\"\n\"285799\";\"Jahra Village\";\"other\"\n\"285799\";\"Jahrah\";\"other\"\n\"285799\";\"اَلْجَهْرَاء\";\"other\"\n\"285810\";\"Al Fnayţīs\";\"main\"\n\"285810\";\"Al Fnaytis\";\"ascii\"\n\"285810\";\"Al Fanaitis\";\"other\"\n\"285810\";\"Al Funaitis\";\"other\"\n\"285810\";\"Al Funaytis\";\"other\"\n\"285810\";\"Al Funayţīs\";\"other\"\n\"285810\";\"Al-Finaitees\";\"other\"\n\"285810\";\"Al-Funait̅is\";\"other\"\n\"285810\";\"Fanaitis\";\"other\"\n\"285810\";\"Fneitees\";\"other\"\n\"285810\";\"Fraitsass\";\"other\"\n\"285810\";\"Funaitis\";\"other\"\n\"285810\";\"Funaitís\";\"other\"\n\"285810\";\"Funaytis\";\"other\"\n\"285810\";\"Funayţīs\";\"other\"\n\"285810\";\"aalfunaytis\";\"other\"\n\"285810\";\"الفنيطيس\";\"other\"\n\"285810\";\"اَلْفُنَيْطِيس\";\"other\"\n\"285811\";\"Al Faḩāḩīl\";\"main\"\n\"285811\";\"Al Fahahil\";\"ascii\"\n\"285811\";\"Al Fuhaihil\";\"other\"\n\"285811\";\"Al Fuhayhil\";\"other\"\n\"285811\";\"Al Fuħaiħil\";\"other\"\n\"285811\";\"Al Fuḩayḩīl\";\"other\"\n\"285811\";\"Al Ifhaihil\";\"other\"\n\"285811\";\"Al-Fahaheel\";\"other\"\n\"285811\";\"Al-Fahahil\";\"other\"\n\"285811\";\"Fahaheel\";\"other\"\n\"285811\";\"Fahahil\";\"other\"\n\"285811\";\"Fahaihil\";\"other\"\n\"285811\";\"Fahaihīl\";\"other\"\n\"285811\";\"Fahayhil\";\"other\"\n\"285811\";\"Fahāhīl\";\"other\"\n\"285811\";\"Faḩayḩīl\";\"other\"\n\"285811\";\"Fuhayhil\";\"other\"\n\"285811\";\"Fuḩayḩīl\";\"other\"\n\"285811\";\"aalfuhayhil\";\"other\"\n\"285811\";\"الفحاحيل\";\"other\"\n\"285811\";\"اَلْفُحَيْحِيل\";\"other\"\n\"285812\";\"Al Finţās\";\"main\"\n\"285812\";\"Al Fintas\";\"ascii\"\n\"285812\";\"Al Fantas\";\"other\"\n\"285812\";\"Al Fintass\";\"other\"\n\"285812\";\"Al Fintās\";\"other\"\n\"285812\";\"Al-Fint̅as\";\"other\"\n\"285812\";\"Al-Fint̅ās\";\"other\"\n\"285812\";\"Fantas\";\"other\"\n\"285812\";\"Fantass\";\"other\"\n\"285812\";\"Fanţās\";\"other\"\n\"285812\";\"Finatus\";\"other\"\n\"285812\";\"Fintas\";\"other\"\n\"285812\";\"Fintass\";\"other\"\n\"285812\";\"Finţās\";\"other\"\n\"285812\";\"Funtas\";\"other\"\n\"285812\";\"Funtás\";\"other\"\n\"285812\";\"aalfintas\";\"other\"\n\"285812\";\"الفنطاس\";\"other\"\n\"285812\";\"اَلْفِنْطَاس\";\"other\"\n\"285815\";\"Al Farwānīyah\";\"main\"\n\"285815\";\"Al Farwaniyah\";\"ascii\"\n\"285815\";\"Al Farwania\";\"other\"\n\"285815\";\"Al-Farawaniyah\";\"other\"\n\"285815\";\"Al-Farwaniyyah\";\"other\"\n\"285815\";\"Farwaniah\";\"other\"\n\"285815\";\"Farwaniyyeh\";\"other\"\n\"285815\";\"aalfarwaniat\";\"other\"\n\"285815\";\"اَلْفَرْوَانِيَّة\";\"other\"\n\"285856\";\"Ad Dasmah\";\"main\"\n\"285856\";\"Ad Dasma'\";\"other\"\n\"285856\";\"Ad Dasmā’\";\"other\"\n\"285856\";\"Dasma\";\"other\"\n\"285856\";\"Dasmah\";\"other\"\n\"285856\";\"aaldasmat\";\"other\"\n\"285856\";\"اَلدَّسْمَة\";\"other\"\n\"387958\";\"Salwá\";\"main\"\n\"387958\";\"Salwa\";\"ascii\"\n\"387958\";\"Sal'va\";\"other\"\n\"387958\";\"salway\";\"other\"\n\"387958\";\"Сальва\";\"other\"\n\"387958\";\"سلوى\";\"other\"\n\"387958\";\"سَلْوَى\";\"other\"\n\"388065\";\"Ar Rābiyah\";\"main\"\n\"388065\";\"Ar Rabiyah\";\"ascii\"\n\"388065\";\"aalraabiat\";\"other\"\n\"388065\";\"اَلرَّابِيَة\";\"other\"\n\"412800\";\"Şabāḩ as Sālim\";\"main\"\n\"412800\";\"Sabah as Salim\";\"ascii\"\n\"412800\";\"Sabah as Salim as Sabbah\";\"other\"\n\"412800\";\"sabah aalsaalim\";\"other\"\n\"412800\";\"Şabāḩ as Salim aş Sabbāḩ\";\"other\"\n\"412800\";\"صَبَاح اَلسَّالِم\";\"other\"\n\"3580477\";\"West Bay\";\"main\"\n\"3580477\";\"West End\";\"other\"\n\"3580575\";\"North Side\";\"main\"\n\"3580575\";\"North Side Village\";\"other\"\n\"3580661\";\"George Town\";\"main\"\n\"3580661\";\"Georgetown\";\"other\"\n\"3580661\";\"jojitaun\";\"other\"\n\"3580661\";\"qiao zhi dun\";\"other\"\n\"3580661\";\"ג'ורג' טאון\";\"other\"\n\"3580661\";\"ジョージタウン\";\"other\"\n\"3580661\";\"喬治敦\";\"other\"\n\"3580678\";\"East End\";\"main\"\n\"3580678\";\"Old Isaacs\";\"other\"\n\"3580733\";\"Bodden Town\";\"main\"\n\"3580733\";\"Bodden\";\"other\"\n\"607510\";\"Zhumysker\";\"main\"\n\"607551\";\"Zhetibay\";\"main\"\n\"607551\";\"ZHETYBAJ\";\"other\"\n\"607551\";\"Zhetybay\";\"other\"\n\"607551\";\"ЖЕТЫБАЙ\";\"other\"\n\"608036\";\"Temir\";\"main\"\n\"608036\";\"Темир\";\"other\"\n\"608053\";\"Taūshyq\";\"main\"\n\"608053\";\"Taushyq\";\"ascii\"\n\"608053\";\"Tauchik\";\"other\"\n\"608053\";\"Taushik\";\"other\"\n\"608053\";\"Таучик\";\"other\"\n\"608270\";\"Shubarshī\";\"main\"\n\"608270\";\"Shubarshi\";\"ascii\"\n\"608270\";\"Шубарши\";\"other\"\n\"608271\";\"Shubarkuduk\";\"main\"\n\"608271\";\"Chubar Kuduk\";\"other\"\n\"608271\";\"SHUBARKUDUK\";\"other\"\n\"608271\";\"Shuba Kuduk\";\"other\"\n\"608271\";\"Shubarqudyq\";\"other\"\n\"608271\";\"ШУБАРКУДУК\";\"other\"\n\"608324\";\"Shetpe\";\"main\"\n\"608324\";\"SHETPE\";\"other\"\n\"608324\";\"ШЕТПЕ\";\"other\"\n\"608402\";\"Sayötesh\";\"main\"\n\"608402\";\"Sayotesh\";\"ascii\"\n\"608402\";\"Saj-Utes\";\"other\"\n\"608402\";\"Say-Utes\";\"other\"\n\"608402\";\"Say-Utës\";\"other\"\n\"608402\";\"Sayoetesh\";\"other\"\n\"608402\";\"Сай-Утес\";\"other\"\n\"608413\";\"Saykhin\";\"main\"\n\"608413\";\"Sajkhin\";\"other\"\n\"608413\";\"Сайхин\";\"other\"\n\"608629\";\"Peremetnoe\";\"main\"\n\"608629\";\"Peremetnaya\";\"other\"\n\"608629\";\"Peremetnoye\";\"other\"\n\"608629\";\"Peremëtnoye\";\"other\"\n\"608629\";\"Переметное\";\"other\"\n\"608668\";\"Ural’sk\";\"main\"\n\"608668\";\"Ural'sk\";\"ascii\"\n\"608668\";\"Oral\";\"other\"\n\"608668\";\"Orał\";\"other\"\n\"608668\";\"awral\";\"other\"\n\"608668\";\"jbal alawral\";\"other\"\n\"608668\";\"Орал\";\"other\"\n\"608668\";\"Уральск\";\"other\"\n\"608668\";\"أورال\";\"other\"\n\"608668\";\"جبال الأورال\";\"other\"\n\"608679\";\"Oktyabr’sk\";\"main\"\n\"608679\";\"Oktyabr'sk\";\"ascii\"\n\"608679\";\"Kandagach\";\"other\"\n\"608679\";\"Kandagash\";\"other\"\n\"608679\";\"Kandyagash\";\"other\"\n\"608679\";\"OKTJABR'SK\";\"other\"\n\"608679\";\"Oktyabr'\";\"other\"\n\"608679\";\"Oktyabr’\";\"other\"\n\"608679\";\"ОКТЯБРЬСК\";\"other\"\n\"608778\";\"Munayshy\";\"main\"\n\"608778\";\"MUNAJSHI\";\"other\"\n\"608778\";\"Munayshi\";\"other\"\n\"608778\";\"МУНАЙШИ\";\"other\"\n\"608816\";\"Mīyaly\";\"main\"\n\"608816\";\"Miyaly\";\"ascii\"\n\"608816\";\"Mijaly\";\"other\"\n\"608816\";\"Miyala\";\"other\"\n\"608816\";\"Миялы\";\"other\"\n\"608867\";\"Martuk\";\"main\"\n\"608867\";\"Martok\";\"other\"\n\"608867\";\"Martu\";\"other\"\n\"608867\";\"Martök\";\"other\"\n\"608867\";\"Mortyq\";\"other\"\n\"608867\";\"Мартук\";\"other\"\n\"608872\";\"Maqat\";\"main\"\n\"608872\";\"MAKAT\";\"other\"\n\"608872\";\"Makat\";\"other\"\n\"608872\";\"Makat Severnyy\";\"other\"\n\"608872\";\"МАКАТ\";\"other\"\n\"608901\";\"Maloye Ganyushkino\";\"main\"\n\"608915\";\"Makhambet\";\"main\"\n\"608915\";\"Yamanka\";\"other\"\n\"608915\";\"Yamankhalinka\";\"other\"\n\"608915\";\"Yamankhalinski\";\"other\"\n\"608915\";\"Yamankhalinskiy\";\"other\"\n\"608915\";\"Махамбет\";\"other\"\n\"609123\";\"Qulsary\";\"main\"\n\"609123\";\"Kol'sary\";\"other\"\n\"609123\";\"Kul'sari\";\"other\"\n\"609123\";\"Kul'sary\";\"other\"\n\"609123\";\"Кульсары\";\"other\"\n\"609167\";\"Krūgloozernoe\";\"main\"\n\"609167\";\"Krugloozernoe\";\"ascii\"\n\"609167\";\"KRUGLOOZERNOE\";\"other\"\n\"609167\";\"Krugloozerni\";\"other\"\n\"609167\";\"Krugloozernoye\";\"other\"\n\"609167\";\"Krugloozernyy\";\"other\"\n\"609167\";\"Krugloozërnyy\";\"other\"\n\"609167\";\"КРУГЛООЗЕРНОЕ\";\"other\"\n\"609404\";\"Khromtaū\";\"main\"\n\"609404\";\"Khromtau\";\"ascii\"\n\"609404\";\"KHROMTAU\";\"other\"\n\"609404\";\"Khrom-Tai\";\"other\"\n\"609404\";\"ХРОМТАУ\";\"other\"\n\"609454\";\"Kaztalovka\";\"main\"\n\"609454\";\"Talovka\";\"other\"\n\"609454\";\"Казталовка\";\"other\"\n\"609537\";\"Qaraton\";\"main\"\n\"609537\";\"KARATON\";\"other\"\n\"609537\";\"Karatan\";\"other\"\n\"609537\";\"Karaton\";\"other\"\n\"609537\";\"КАРАТОН\";\"other\"\n\"609655\";\"Karagandy\";\"main\"\n\"609655\";\"Karaganda\";\"other\"\n\"609655\";\"Karagandi\";\"other\"\n\"609655\";\"Караганды\";\"other\"\n\"609721\";\"Kamenka\";\"main\"\n\"609721\";\"Kamennyy\";\"other\"\n\"609721\";\"Каменка\";\"other\"\n\"609798\";\"Īnderbor\";\"main\"\n\"609798\";\"Inderbor\";\"ascii\"\n\"609798\";\"INDERBORSKIJ\";\"other\"\n\"609798\";\"Inder\";\"other\"\n\"609798\";\"Inderborskiy\";\"other\"\n\"609798\";\"Inderborstroy\";\"other\"\n\"609798\";\"Indero\";\"other\"\n\"609798\";\"Inderskoye\";\"other\"\n\"609798\";\"ИНДЕРБОРСКИЙ\";\"other\"\n\"609906\";\"Fort-Shevchenko\";\"main\"\n\"609906\";\"Fort Aleksandrovsk\";\"other\"\n\"609906\";\"Fort Aleksandrovskiy\";\"other\"\n\"609906\";\"Fort Uritskogo\";\"other\"\n\"609906\";\"Fort-Schewtschenko\";\"other\"\n\"609906\";\"Форт-Шевченко\";\"other\"\n\"609915\";\"Fedorovka\";\"main\"\n\"609915\";\"Федоровка\";\"other\"\n\"609919\";\"Kuryk\";\"main\"\n\"609919\";\"ERALIEV\";\"other\"\n\"609919\";\"Eraliev\";\"other\"\n\"609919\";\"Erälīev\";\"other\"\n\"609919\";\"Quryq\";\"other\"\n\"609919\";\"Yeraliyev\";\"other\"\n\"609919\";\"Yeraliyevo\";\"other\"\n\"609919\";\"Yeraly\";\"other\"\n\"609919\";\"ЕРАЛИЕВ\";\"other\"\n\"609924\";\"Embi\";\"main\"\n\"609924\";\"Amba\";\"other\"\n\"609924\";\"EHMBA\";\"other\"\n\"609924\";\"Emba\";\"other\"\n\"609924\";\"ЭМБА\";\"other\"\n\"609953\";\"Zhänibek\";\"main\"\n\"609953\";\"Zhanibek\";\"ascii\"\n\"609953\";\"DZHANYBEK\";\"other\"\n\"609953\";\"Djanibek\";\"other\"\n\"609953\";\"Djanybek\";\"other\"\n\"609953\";\"Djiembet\";\"other\"\n\"609953\";\"Dzhanibek\";\"other\"\n\"609953\";\"Dzhanybek\";\"other\"\n\"609953\";\"Janybek\";\"other\"\n\"609953\";\"Zhaenibek\";\"other\"\n\"609953\";\"ДЖАНЫБЕК\";\"other\"\n\"609965\";\"Dzhangala\";\"main\"\n\"609965\";\"Kisik-Kamishen\";\"other\"\n\"609965\";\"Kisyk-Kamysh\";\"other\"\n\"609965\";\"Kisyk-Kamyshskiy\";\"other\"\n\"609965\";\"Kisykkamys\";\"other\"\n\"609965\";\"Kysykkamys\";\"other\"\n\"609965\";\"Kyysykkamys\";\"other\"\n\"609965\";\"Джангала\";\"other\"\n\"609977\";\"Dzhambeyty\";\"main\"\n\"609977\";\"Dzhambeita\";\"other\"\n\"609977\";\"Dzhambejty\";\"other\"\n\"609977\";\"Dzhambeyta\";\"other\"\n\"609977\";\"Dzhambeytinskaya Stavka\";\"other\"\n\"609977\";\"Zhympity\";\"other\"\n\"609977\";\"Zhympīty\";\"other\"\n\"609977\";\"Джамбейты\";\"other\"\n\"610023\";\"Dossor\";\"main\"\n\"610023\";\"Bos-Sor\";\"other\"\n\"610023\";\"DOSSOR\";\"other\"\n\"610023\";\"ДОССОР\";\"other\"\n\"610091\";\"Chingirlau\";\"main\"\n\"610091\";\"CHINGIRLAU\";\"other\"\n\"610091\";\"Shyngghyrlau\";\"other\"\n\"610091\";\"Shyngghyrlaū\";\"other\"\n\"610091\";\"ЧИНГИРЛАУ\";\"other\"\n\"610132\";\"Chapaev\";\"main\"\n\"610132\";\"Chapayev\";\"other\"\n\"610132\";\"Chapayevo\";\"other\"\n\"610132\";\"Lbishchensk\";\"other\"\n\"610132\";\"Lbishchenski\";\"other\"\n\"610132\";\"Lbishchenskoye\";\"other\"\n\"610132\";\"Чапаев\";\"other\"\n\"610164\";\"Burlin\";\"main\"\n\"610164\";\"BURLIN\";\"other\"\n\"610164\";\"Boerili\";\"other\"\n\"610164\";\"Borili\";\"other\"\n\"610164\";\"Burli\";\"other\"\n\"610164\";\"Burlinskiy\";\"other\"\n\"610164\";\"Börili\";\"other\"\n\"610164\";\"БУРЛИН\";\"other\"\n\"610298\";\"Beyneū\";\"main\"\n\"610298\";\"Beyneu\";\"ascii\"\n\"610298\";\"Beyneu 1\";\"other\"\n\"610386\";\"Bayganin\";\"main\"\n\"610386\";\"Bajganin\";\"other\"\n\"610386\";\"Bayghanin\";\"other\"\n\"610386\";\"Bayghanīn\";\"other\"\n\"610386\";\"Karaulkel'dy\";\"other\"\n\"610386\";\"Karaulkel’dy\";\"other\"\n\"610386\";\"Байганин\";\"other\"\n\"610389\";\"Bayshonas\";\"main\"\n\"610389\";\"BAJCHUNAS\";\"other\"\n\"610389\";\"Baychunas\";\"other\"\n\"610389\";\"БАЙЧУНАС\";\"other\"\n\"610398\";\"Baūtīno\";\"main\"\n\"610398\";\"Bautino\";\"ascii\"\n\"610398\";\"BAUTINO\";\"other\"\n\"610398\";\"Bautino Seleniye\";\"other\"\n\"610398\";\"Nikolayevskoye\";\"other\"\n\"610398\";\"Seleniye Bautino\";\"other\"\n\"610398\";\"Staro-Nikolayevskaya\";\"other\"\n\"610398\";\"БАУТИНО\";\"other\"\n\"610416\";\"Batamshinskiy\";\"main\"\n\"610416\";\"BATAMSHINSKIJ\";\"other\"\n\"610416\";\"Badamsha\";\"other\"\n\"610416\";\"БАТАМШИНСКИЙ\";\"other\"\n\"610445\";\"Balyqshy\";\"main\"\n\"610445\";\"BALYKSHI\";\"other\"\n\"610445\";\"Balykshi\";\"other\"\n\"610445\";\"Belykshi\";\"other\"\n\"610445\";\"БАЛЫКШИ\";\"other\"\n\"610529\";\"Atyraū\";\"main\"\n\"610529\";\"Atyrau\";\"ascii\"\n\"610529\";\"Aterau\";\"other\"\n\"610529\";\"Atiraw\";\"other\"\n\"610529\";\"Atyraw\";\"other\"\n\"610529\";\"Atıraw\";\"other\"\n\"610529\";\"Chapayev\";\"other\"\n\"610529\";\"Gur'yev\";\"other\"\n\"610529\";\"Gurev\";\"other\"\n\"610529\";\"Guriev\";\"other\"\n\"610529\";\"Gur’yev\";\"other\"\n\"610529\";\"atilau\";\"other\"\n\"610529\";\"Атырау\";\"other\"\n\"610529\";\"아티라우\";\"other\"\n\"610611\";\"Aqtöbe\";\"main\"\n\"610611\";\"Aqtobe\";\"ascii\"\n\"610611\";\"AKTJUBINSK\";\"other\"\n\"610611\";\"Aktiube\";\"other\"\n\"610611\";\"Aktiubinsk\";\"other\"\n\"610611\";\"Aktobe\";\"other\"\n\"610611\";\"Aktoebe\";\"other\"\n\"610611\";\"Aktubinsk\";\"other\"\n\"610611\";\"Aktyubinsk\";\"other\"\n\"610611\";\"Aktöbe\";\"other\"\n\"610611\";\"Aqtoebe\";\"other\"\n\"610611\";\"Ukhtiubinskii\";\"other\"\n\"610611\";\"agtoebe\";\"other\"\n\"610611\";\"aktjubinsk\";\"other\"\n\"610611\";\"АКТЮБИНСК\";\"other\"\n\"610611\";\"Актюбинск\";\"other\"\n\"610611\";\"Ақтөбе\";\"other\"\n\"610611\";\"악퇴베\";\"other\"\n\"610612\";\"Aqtaū\";\"main\"\n\"610612\";\"Aqtau\";\"ascii\"\n\"610612\";\"Aktaou\";\"other\"\n\"610612\";\"Aktau\";\"other\"\n\"610612\";\"Aktauskiy\";\"other\"\n\"610612\";\"Shevchenko\";\"other\"\n\"610612\";\"Актау\";\"other\"\n\"610612\";\"Ақтау\";\"other\"\n\"610613\";\"Aqsay\";\"main\"\n\"610613\";\"AKSAJ\";\"other\"\n\"610613\";\"Aksay\";\"other\"\n\"610613\";\"Kazakhstan\";\"other\"\n\"610613\";\"АКСАЙ\";\"other\"\n\"610764\";\"Akkol’\";\"main\"\n\"610764\";\"Akkol'\";\"ascii\"\n\"610764\";\"Акколь\";\"other\"\n\"828390\";\"Ömirzaq\";\"main\"\n\"828390\";\"Omirzaq\";\"ascii\"\n\"828390\";\"OEmirzaq\";\"other\"\n\"828390\";\"UMIRZAK\";\"other\"\n\"828390\";\"Umirzak\";\"other\"\n\"828390\";\"УМИРЗАК\";\"other\"\n\"1516438\";\"Zyryanovsk\";\"main\"\n\"1516438\";\"Ziryanovsk\";\"other\"\n\"1516438\";\"Zyranovsk\";\"other\"\n\"1516438\";\"Zyranovskoye\";\"other\"\n\"1516438\";\"Zyrjanovsk\";\"other\"\n\"1516438\";\"Zyryan\";\"other\"\n\"1516438\";\"Zyryanovskoye\";\"other\"\n\"1516438\";\"Зыряновск\";\"other\"\n\"1516519\";\"Zhosaly\";\"main\"\n\"1516519\";\"Dzhusaly\";\"other\"\n\"1516519\";\"Jusaly\";\"other\"\n\"1516519\";\"Karmakchi\";\"other\"\n\"1516519\";\"Zhusaly\";\"other\"\n\"1516519\";\"Джусалы\";\"other\"\n\"1516527\";\"Zholymbet\";\"main\"\n\"1516527\";\"Dzhalambet\";\"other\"\n\"1516527\";\"Dzholonbet\";\"other\"\n\"1516527\";\"Dzhoronbet\";\"other\"\n\"1516589\";\"Zhezqazghan\";\"main\"\n\"1516589\";\"Bol'shoy Dzhezkazgan\";\"other\"\n\"1516589\";\"Bol’shoy Dzhezkazgan\";\"other\"\n\"1516589\";\"Dzhezkazgan\";\"other\"\n\"1516589\";\"Schesqasghan\";\"other\"\n\"1516589\";\"Zhezkazgan\";\"other\"\n\"1516589\";\"Джезказган\";\"other\"\n\"1516590\";\"Zhezkent\";\"main\"\n\"1516590\";\"ZHEZKENT\";\"other\"\n\"1516590\";\"ЖЕЗКЕНТ\";\"other\"\n\"1516601\";\"Zhetiqara\";\"main\"\n\"1516601\";\"DZHETYGARA\";\"other\"\n\"1516601\";\"Dzhetygara\";\"other\"\n\"1516601\";\"Dzhetygora\";\"other\"\n\"1516601\";\"Dzhetygorinskiy Sovkhoz\";\"other\"\n\"1516601\";\"Jetygara\";\"other\"\n\"1516601\";\"Zhitikara\";\"other\"\n\"1516601\";\"ДЖЕТЫГАРА\";\"other\"\n\"1516634\";\"Zhelezīnka\";\"main\"\n\"1516634\";\"Zhelezinka\";\"ascii\"\n\"1516634\";\"Zhelezinskaya\";\"other\"\n\"1516634\";\"Zheleznenka\";\"other\"\n\"1516634\";\"Железинка\";\"other\"\n\"1516678\";\"Saken Seyfullin\";\"main\"\n\"1516678\";\"Saken Seifullin\";\"other\"\n\"1516678\";\"Zharyk\";\"other\"\n\"1516678\";\"Zharyq\";\"other\"\n\"1516788\";\"Zhangatas\";\"main\"\n\"1516788\";\"Dzhanatas\";\"other\"\n\"1516788\";\"Dzhanytas\";\"other\"\n\"1516788\";\"Zhanatas\";\"other\"\n\"1516789\";\"Äyteke Bī\";\"main\"\n\"1516789\";\"Ayteke Bi\";\"ascii\"\n\"1516789\";\"Novokazalinsk\";\"other\"\n\"1516789\";\"Zhangaqazaly\";\"other\"\n\"1516905\";\"Taraz\";\"main\"\n\"1516905\";\"Auliye-Ata\";\"other\"\n\"1516905\";\"Dzhambul\";\"other\"\n\"1516905\";\"Jambul\";\"other\"\n\"1516905\";\"Talas\";\"other\"\n\"1516905\";\"Taras\";\"other\"\n\"1516905\";\"Zhambyl\";\"other\"\n\"1516905\";\"Zhambyl oblysy\";\"other\"\n\"1516905\";\"Жамбыл облысы\";\"other\"\n\"1516905\";\"Тараз\";\"other\"\n\"1516984\";\"Zhalghyztobe\";\"main\"\n\"1516984\";\"ZHANGIZTOBE\";\"other\"\n\"1516984\";\"Zhangiztobe\";\"other\"\n\"1516984\";\"Zhangyz Tyube\";\"other\"\n\"1516984\";\"ЖАНГИЗТОБЕ\";\"other\"\n\"1517020\";\"Zhaqsy\";\"main\"\n\"1517020\";\"Dzhaksy\";\"other\"\n\"1517020\";\"Zhaksy\";\"other\"\n\"1517060\";\"Zaysan\";\"main\"\n\"1517060\";\"Zaisan\";\"other\"\n\"1517136\";\"Yrghyz\";\"main\"\n\"1517136\";\"Irgiz\";\"other\"\n\"1517136\";\"Иргиз\";\"other\"\n\"1517305\";\"Yavlenka\";\"main\"\n\"1517305\";\"Javlenka\";\"other\"\n\"1517305\";\"Явленка\";\"other\"\n\"1517323\";\"Zhangaqorghan\";\"main\"\n\"1517323\";\"Yani-Kurgan\";\"other\"\n\"1517323\";\"Yany-Kurian\";\"other\"\n\"1517323\";\"Yanykurgan\";\"other\"\n\"1517323\";\"Zhanakorgan\";\"other\"\n\"1517410\";\"Saumalkol’\";\"main\"\n\"1517410\";\"Saumalkol'\";\"ascii\"\n\"1517410\";\"Volodarskiy\";\"other\"\n\"1517410\";\"Volodarskoe\";\"other\"\n\"1517410\";\"Volodarskoye\";\"other\"\n\"1517410\";\"Volodarskīy\";\"other\"\n\"1517410\";\"Володарское\";\"other\"\n\"1517474\";\"Verkhniye Kayrakty\";\"main\"\n\"1517474\";\"Kaskakashka\";\"other\"\n\"1517501\";\"Turar Ryskulov\";\"main\"\n\"1517501\";\"Vannovka\";\"other\"\n\"1517501\";\"Vannovskoye\";\"other\"\n\"1517610\";\"Ūst’-Talovka\";\"main\"\n\"1517610\";\"Ust'-Talovka\";\"ascii\"\n\"1517610\";\"Ūst'-Talovka\";\"other\"\n\"1517610\";\"Усть-Таловка\";\"other\"\n\"1517637\";\"Üshtöbe\";\"main\"\n\"1517637\";\"Ushtobe\";\"ascii\"\n\"1517637\";\"Ush-Tyube\";\"other\"\n\"1517637\";\"Уштобе\";\"other\"\n\"1517721\";\"Ürzhar\";\"main\"\n\"1517721\";\"Urzhar\";\"ascii\"\n\"1517721\";\"Urdjar\";\"other\"\n\"1517721\";\"Urdzhar\";\"other\"\n\"1517721\";\"Urdzharsk\";\"other\"\n\"1517721\";\"Urdzharskaya\";\"other\"\n\"1517721\";\"Urdzharskoye\";\"other\"\n\"1517721\";\"Urjar\";\"other\"\n\"1517945\";\"Türkistan\";\"main\"\n\"1517945\";\"Turkistan\";\"ascii\"\n\"1517945\";\"Turkestan\";\"other\"\n\"1517945\";\"Туркестан\";\"other\"\n\"1517957\";\"Turgen’\";\"main\"\n\"1517957\";\"Turgen'\";\"ascii\"\n\"1517957\";\"Turgen\";\"other\"\n\"1517957\";\"Türgen\";\"other\"\n\"1517957\";\"Турген\";\"other\"\n\"1518009\";\"Timiryazevo\";\"main\"\n\"1518009\";\"Timirjazevo\";\"other\"\n\"1518009\";\"Tselinnoy\";\"other\"\n\"1518009\";\"Tselinnyy\";\"other\"\n\"1518009\";\"Tīmīryazevo\";\"other\"\n\"1518009\";\"Тимирязево\";\"other\"\n\"1518019\";\"Troyebratskiy\";\"main\"\n\"1518019\";\"TROEBRATSKIJ\";\"other\"\n\"1518019\";\"Troebratskiy\";\"other\"\n\"1518019\";\"Troebratskīy\";\"other\"\n\"1518019\";\"Troyebratnoye\";\"other\"\n\"1518019\";\"ТРОЕБРАТСКИЙ\";\"other\"\n\"1518062\";\"Torghay\";\"main\"\n\"1518062\";\"Torgay\";\"other\"\n\"1518062\";\"Turgai\";\"other\"\n\"1518062\";\"Turgaj\";\"other\"\n\"1518062\";\"Turgay\";\"other\"\n\"1518062\";\"Тургай\";\"other\"\n\"1518112\";\"Tokarevka\";\"main\"\n\"1518112\";\"Tokaryevko\";\"other\"\n\"1518112\";\"Токаревка\";\"other\"\n\"1518139\";\"Tobol\";\"main\"\n\"1518139\";\"Tobyl\";\"other\"\n\"1518203\";\"Terenozek\";\"main\"\n\"1518203\";\"Teren'-Uzyak\";\"other\"\n\"1518203\";\"Terengozek\";\"other\"\n\"1518203\";\"Terengözek\";\"other\"\n\"1518203\";\"Terenuzek\";\"other\"\n\"1518203\";\"Teren’-Uzyak\";\"other\"\n\"1518262\";\"Temirtaū\";\"main\"\n\"1518262\";\"Temirtau\";\"ascii\"\n\"1518262\";\"Samarand\";\"other\"\n\"1518262\";\"Samarka\";\"other\"\n\"1518262\";\"Samarkand\";\"other\"\n\"1518262\";\"Samarkandskoye\";\"other\"\n\"1518262\";\"Темиртау\";\"other\"\n\"1518266\";\"Temirlanovka\";\"main\"\n\"1518266\";\"Tamerlanovka\";\"other\"\n\"1518266\";\"Temirlan\";\"other\"\n\"1518296\";\"Tekeli\";\"main\"\n\"1518296\";\"Tekely\";\"other\"\n\"1518296\";\"Текели\";\"other\"\n\"1518431\";\"Tasböget\";\"main\"\n\"1518431\";\"Tasboget\";\"ascii\"\n\"1518431\";\"Tasbuget\";\"other\"\n\"1518462\";\"Taranovskoye\";\"main\"\n\"1518462\";\"Bolchaia Viktorovka\";\"other\"\n\"1518462\";\"Bolshaya Viktorovka\";\"other\"\n\"1518462\";\"Taranovskoe\";\"other\"\n\"1518462\";\"Viktorovka\";\"other\"\n\"1518462\";\"Викторовка\";\"other\"\n\"1518511\";\"Talshyq\";\"main\"\n\"1518511\";\"TALSHIK\";\"other\"\n\"1518511\";\"Tal'chik\";\"other\"\n\"1518511\";\"Tal'shchik\";\"other\"\n\"1518511\";\"Talshik\";\"other\"\n\"1518511\";\"Tal’chik\";\"other\"\n\"1518511\";\"Tal’shchik\";\"other\"\n\"1518511\";\"ТАЛШИК\";\"other\"\n\"1518518\";\"Talghar\";\"main\"\n\"1518518\";\"Talgar\";\"other\"\n\"1518542\";\"Taldyqorghan\";\"main\"\n\"1518542\";\"Gavrilovka\";\"other\"\n\"1518542\";\"Gavrilovskoye\";\"other\"\n\"1518542\";\"Taldi Kurgan\";\"other\"\n\"1518542\";\"Taldikorgan\";\"other\"\n\"1518542\";\"Taldy Kurgan\";\"other\"\n\"1518542\";\"Taldy-Kurgan\";\"other\"\n\"1518542\";\"Taldykorgan\";\"other\"\n\"1518542\";\"Talto-Kurgan\";\"other\"\n\"1518542\";\"Taltö-Kurgan\";\"other\"\n\"1518542\";\"Tałdy Kurgan\";\"other\"\n\"1518542\";\"Талдикорган\";\"other\"\n\"1518543\";\"Taldyqorghan\";\"main\"\n\"1518543\";\"Taldy - Kurgan\";\"other\"\n\"1518543\";\"Taldy-Kurgan Stantsiya\";\"other\"\n\"1518543\";\"Taldykurgan\";\"other\"\n\"1518543\";\"Талды - Курган\";\"other\"\n\"1518687\";\"Suykbulak\";\"main\"\n\"1518687\";\"Суыкбулак\";\"other\"\n\"1518768\";\"Stepnyak\";\"main\"\n\"1518768\";\"STEPNJAK\";\"other\"\n\"1518768\";\"Stepniak\";\"other\"\n\"1518768\";\"СТЕПНЯК\";\"other\"\n\"1518936\";\"Smīrnovo\";\"main\"\n\"1518936\";\"Smirnovo\";\"ascii\"\n\"1518936\";\"SMIRNOVO\";\"other\"\n\"1518936\";\"Smiirnovo\";\"other\"\n\"1518936\";\"Smirnovskiy\";\"other\"\n\"1518936\";\"Smīirnovo\";\"other\"\n\"1518936\";\"СМИРНОВО\";\"other\"\n\"1518945\";\"Myrzakent\";\"main\"\n\"1518945\";\"Slavyanka\";\"other\"\n\"1518945\";\"Slavyanski\";\"other\"\n\"1518945\";\"Slavyanskiy\";\"other\"\n\"1518945\";\"Slavyanskoye\";\"other\"\n\"1518980\";\"Shymkent\";\"main\"\n\"1518980\";\"Chimkent\";\"other\"\n\"1518980\";\"Chymkent\";\"other\"\n\"1518980\";\"Schymkent\";\"other\"\n\"1518980\";\"Sjymkent\";\"other\"\n\"1518980\";\"Somkent\";\"other\"\n\"1518980\";\"Szymkient\";\"other\"\n\"1518980\";\"z'ymqnt\";\"other\"\n\"1518980\";\"Šõmkent\";\"other\"\n\"1518980\";\"Чимкент\";\"other\"\n\"1518980\";\"Шымкент\";\"other\"\n\"1518980\";\"צ'ימקנט\";\"other\"\n\"1519030\";\"Shū\";\"main\"\n\"1519030\";\"Shu\";\"ascii\"\n\"1519030\";\"Chu\";\"other\"\n\"1519030\";\"Шу\";\"other\"\n\"1519050\";\"Shortandy\";\"main\"\n\"1519050\";\"Shartandy\";\"other\"\n\"1519226\";\"Shemonaīkha\";\"main\"\n\"1519226\";\"Shemonaikha\";\"ascii\"\n\"1519226\";\"SHEMONAIKHA\";\"other\"\n\"1519226\";\"ШЕМОНАИХА\";\"other\"\n\"1519244\";\"Shchūchīnsk\";\"main\"\n\"1519244\";\"Shchuchinsk\";\"ascii\"\n\"1519244\";\"SHHUCHINSK\";\"other\"\n\"1519244\";\"Shchuch'ye\";\"other\"\n\"1519244\";\"Shchuch’ye\";\"other\"\n\"1519244\";\"ЩУЧИНСК\";\"other\"\n\"1519275\";\"Shar\";\"main\"\n\"1519275\";\"CHARSK\";\"other\"\n\"1519275\";\"Charsk\";\"other\"\n\"1519275\";\"Charskiy\";\"other\"\n\"1519275\";\"ЧАРСК\";\"other\"\n\"1519277\";\"Shantobe\";\"main\"\n\"1519277\";\"Shangtobe\";\"other\"\n\"1519277\";\"Shangtöbe\";\"other\"\n\"1519277\";\"Shantyube\";\"other\"\n\"1519277\";\"Шантобе\";\"other\"\n\"1519333\";\"Shakhan\";\"main\"\n\"1519333\";\"Shakan\";\"other\"\n\"1519333\";\"Shakanskiye Vyselki\";\"other\"\n\"1519385\";\"Sergeyevka\";\"main\"\n\"1519385\";\"SERGEEVKA\";\"other\"\n\"1519385\";\"Sergeevka\";\"other\"\n\"1519385\";\"СЕРГЕЕВКА\";\"other\"\n\"1519422\";\"Semey\";\"main\"\n\"1519422\";\"SEMIPALATINSK\";\"other\"\n\"1519422\";\"Semei\";\"other\"\n\"1519422\";\"Semej\";\"other\"\n\"1519422\";\"Semeï\";\"other\"\n\"1519422\";\"Semipalatins'k\";\"other\"\n\"1519422\";\"Semipalatinsk\";\"other\"\n\"1519422\";\"Semipalatynsk\";\"other\"\n\"1519422\";\"Semipałatyńsk\";\"other\"\n\"1519422\";\"СЕМИПАЛАТИНСК\";\"other\"\n\"1519422\";\"Семей\";\"other\"\n\"1519422\";\"Семипалатинск\";\"other\"\n\"1519422\";\"Семипалатинськ\";\"other\"\n\"1519463\";\"Sayaq\";\"main\"\n\"1519463\";\"Sayak\";\"other\"\n\"1519516\";\"Sastöbe\";\"main\"\n\"1519516\";\"Sastobe\";\"ascii\"\n\"1519516\";\"Sas-Tyube\";\"other\"\n\"1519516\";\"Sastyvbe\";\"other\"\n\"1519563\";\"Saryshaghan\";\"main\"\n\"1519563\";\"Saryshagan\";\"other\"\n\"1519580\";\"Saryözek\";\"main\"\n\"1519580\";\"Saryozek\";\"ascii\"\n\"1519580\";\"Saro-Ozak\";\"other\"\n\"1519580\";\"Sary-Uzek\";\"other\"\n\"1519580\";\"Sary-Uzekskiy\";\"other\"\n\"1519625\";\"Sarykamys\";\"main\"\n\"1519625\";\"Bidaik\";\"other\"\n\"1519625\";\"Sarykamysh\";\"other\"\n\"1519673\";\"Saryaghash\";\"main\"\n\"1519673\";\"Saryagach\";\"other\"\n\"1519673\";\"Saryagash\";\"other\"\n\"1519673\";\"Ssary-Agatsch\";\"other\"\n\"1519673\";\"Сарыагаш\";\"other\"\n\"1519691\";\"Sarkand\";\"main\"\n\"1519691\";\"Sarkanskaya\";\"other\"\n\"1519691\";\"Sarqan\";\"other\"\n\"1519691\";\"Sarqant\";\"other\"\n\"1519691\";\"Сарканд\";\"other\"\n\"1519725\";\"Sorang\";\"main\"\n\"1519725\";\"Saran'\";\"other\"\n\"1519725\";\"Saran’\";\"other\"\n\"1519725\";\"Сарань\";\"other\"\n\"1519843\";\"Rūdnyy\";\"main\"\n\"1519843\";\"Rudnyy\";\"ascii\"\n\"1519843\";\"Rudnyj\";\"other\"\n\"1519843\";\"Рудный\";\"other\"\n\"1519922\";\"Qyzylorda\";\"main\"\n\"1519922\";\"Ak-Mechet'\";\"other\"\n\"1519922\";\"Ak-Mechet’\";\"other\"\n\"1519922\";\"Kyzylorda\";\"other\"\n\"1519922\";\"Kzyl-Orda\";\"other\"\n\"1519922\";\"Perovsk\";\"other\"\n\"1519922\";\"Кызылорда\";\"other\"\n\"1519924\";\"Qusmuryn\";\"main\"\n\"1519924\";\"KUSHMURUN\";\"other\"\n\"1519924\";\"Kushmurun\";\"other\"\n\"1519924\";\"КУШМУРУН\";\"other\"\n\"1519924\";\"Кушмурун\";\"other\"\n\"1519928\";\"Qostanay\";\"main\"\n\"1519928\";\"Kostanaj\";\"other\"\n\"1519928\";\"Kostanay\";\"other\"\n\"1519928\";\"Kustanai\";\"other\"\n\"1519928\";\"Kustanaisk\";\"other\"\n\"1519928\";\"Kustanaj\";\"other\"\n\"1519928\";\"Kustanay\";\"other\"\n\"1519928\";\"Костанай\";\"other\"\n\"1519928\";\"Кустанай\";\"other\"\n\"1519932\";\"Kachar\";\"main\"\n\"1519932\";\"Qashar\";\"other\"\n\"1519932\";\"Качар\";\"other\"\n\"1519934\";\"Qarqaraly\";\"main\"\n\"1519934\";\"Karkaralinsk\";\"other\"\n\"1519935\";\"Qarazhal\";\"main\"\n\"1519935\";\"Kara-Dzhal\";\"other\"\n\"1519935\";\"Karazhal\";\"other\"\n\"1519936\";\"Qaraūyl\";\"main\"\n\"1519936\";\"Qarauyl\";\"ascii\"\n\"1519936\";\"Abay\";\"other\"\n\"1519936\";\"Karaaul\";\"other\"\n\"1519936\";\"Karaul\";\"other\"\n\"1519936\";\"Караул\";\"other\"\n\"1519938\";\"Qarataū\";\"main\"\n\"1519938\";\"Qaratau\";\"ascii\"\n\"1519938\";\"Chulak-Tau\";\"other\"\n\"1519938\";\"Karatau\";\"other\"\n\"1519942\";\"Qaraghandy\";\"main\"\n\"1519942\";\"Karaganda\";\"other\"\n\"1519942\";\"Karagandinskiye Kopi\";\"other\"\n\"1519942\";\"Karagando\";\"other\"\n\"1519942\";\"Karagandõ\";\"other\"\n\"1519942\";\"Qaragandi\";\"other\"\n\"1519942\";\"Qarağandı\";\"other\"\n\"1519942\";\"Караганда\";\"other\"\n\"1519942\";\"Қарағанды\";\"other\"\n\"1519948\";\"Qapshaghay\";\"main\"\n\"1519948\";\"Ili\";\"other\"\n\"1519948\";\"Iliisk\";\"other\"\n\"1519948\";\"Ilijek\";\"other\"\n\"1519948\";\"Iliysk\";\"other\"\n\"1519948\";\"Iliyskoye\";\"other\"\n\"1519948\";\"Kapchagai\";\"other\"\n\"1519948\";\"Kapchagaj\";\"other\"\n\"1519948\";\"Kapchagay\";\"other\"\n\"1519948\";\"Капчагай\";\"other\"\n\"1520025\";\"Tūghyl\";\"main\"\n\"1520025\";\"Tughyl\";\"ascii\"\n\"1520025\";\"Priozernyy\";\"other\"\n\"1520025\";\"Priozërnyy\";\"other\"\n\"1520025\";\"Tarbagatay\";\"other\"\n\"1520025\";\"Tugyl\";\"other\"\n\"1520172\";\"Petropavlovsk\";\"main\"\n\"1520172\";\"PETROPAVLOVSK\";\"other\"\n\"1520172\";\"Petropavl\";\"other\"\n\"1520172\";\"Petropawl\";\"other\"\n\"1520172\";\"Petropawlowsk\";\"other\"\n\"1520172\";\"Petropawł\";\"other\"\n\"1520172\";\"Petropawłowsk\";\"other\"\n\"1520172\";\"ПЕТРОПАВЛОВСК\";\"other\"\n\"1520172\";\"Петропавл\";\"other\"\n\"1520172\";\"Петропавловск\";\"other\"\n\"1520196\";\"Pervorosiyskiy\";\"main\"\n\"1520196\";\"Pervorossijskoe\";\"other\"\n\"1520196\";\"Pervorossiyskoye\";\"other\"\n\"1520196\";\"Zubovka\";\"other\"\n\"1520196\";\"Zubovskiy\";\"other\"\n\"1520196\";\"Первороссийское\";\"other\"\n\"1520208\";\"Pervomayskīy\";\"main\"\n\"1520208\";\"Pervomayskiy\";\"ascii\"\n\"1520208\";\"Imeni Pervaya Maya\";\"other\"\n\"1520208\";\"Kolkhoz Imeni Pervaya Maya\";\"other\"\n\"1520208\";\"Pervomajskoe\";\"other\"\n\"1520208\";\"Pervomayka\";\"other\"\n\"1520208\";\"Первомайское\";\"other\"\n\"1520240\";\"Pavlodar\";\"main\"\n\"1520240\";\"Kereku\";\"other\"\n\"1520240\";\"Kerekū\";\"other\"\n\"1520240\";\"PAVLODAR\";\"other\"\n\"1520240\";\"Pawlodar\";\"other\"\n\"1520240\";\"Pawłodar\";\"other\"\n\"1520240\";\"pabeullodaleu\";\"other\"\n\"1520240\";\"pavurodaru\";\"other\"\n\"1520240\";\"pblwdr\";\"other\"\n\"1520240\";\"ПАВЛОДАР\";\"other\"\n\"1520240\";\"Павлодар\";\"other\"\n\"1520240\";\"פבלודר\";\"other\"\n\"1520240\";\"パヴロダル\";\"other\"\n\"1520240\";\"파블로다르\";\"other\"\n\"1520253\";\"Zharkent\";\"main\"\n\"1520253\";\"Djarkent\";\"other\"\n\"1520253\";\"Dzharkent\";\"other\"\n\"1520253\";\"Jarkent\";\"other\"\n\"1520253\";\"Panfilov\";\"other\"\n\"1520253\";\"Panfīlov\";\"other\"\n\"1520253\";\"Жаркент\";\"other\"\n\"1520281\";\"Oytal\";\"main\"\n\"1520316\";\"Ust’-Kamenogorsk\";\"main\"\n\"1520316\";\"Ust'-Kamenogorsk\";\"ascii\"\n\"1520316\";\"OEskemen\";\"other\"\n\"1520316\";\"Oskemen\";\"other\"\n\"1520316\";\"UST'-KAMENOGORSK\";\"other\"\n\"1520316\";\"Ust-Kamienogorsk\";\"other\"\n\"1520316\";\"oeseukemen\";\"other\"\n\"1520316\";\"Öskemen\";\"other\"\n\"1520316\";\"УСТЬ-КАМЕНОГОРСК\";\"other\"\n\"1520316\";\"Усть-Каменогорск\";\"other\"\n\"1520316\";\"ウスチ・カメノゴルスク\";\"other\"\n\"1520316\";\"외스케멘\";\"other\"\n\"1520327\";\"Osakarovka\";\"main\"\n\"1520327\";\"Oskarovka\";\"other\"\n\"1520381\";\"Ordzhonīkīdze\";\"main\"\n\"1520381\";\"Ordzhonikidze\";\"ascii\"\n\"1520381\";\"Denisovka\";\"other\"\n\"1520381\";\"Denisovski\";\"other\"\n\"1520381\";\"Орджоникидзе\";\"other\"\n\"1520474\";\"Ognevka\";\"main\"\n\"1520474\";\"OGNEVKA\";\"other\"\n\"1520474\";\"ОГНЕВКА\";\"other\"\n\"1520627\";\"Novodolīnskīy\";\"main\"\n\"1520627\";\"Novodolinskiy\";\"ascii\"\n\"1520660\";\"Zhanga Buqtyrma\";\"main\"\n\"1520660\";\"NOVAJA BUKHTARMA\";\"other\"\n\"1520660\";\"Novaya Bukhtarma\";\"other\"\n\"1520660\";\"НОВАЯ БУХТАРМА\";\"other\"\n\"1520789\";\"Mynaral\";\"main\"\n\"1520789\";\"Mok-Aral Fishery\";\"other\"\n\"1520789\";\"Mök-Aral Fishery\";\"other\"\n\"1520789\";\"Rybalka Myk-Aral\";\"other\"\n\"1520789\";\"Rybnyy Promysel Myk-Aral\";\"other\"\n\"1520844\";\"Moyynty\";\"main\"\n\"1520844\";\"Mointy\";\"other\"\n\"1520885\";\"Kūrchatov\";\"main\"\n\"1520885\";\"Kurchatov\";\"ascii\"\n\"1520885\";\"Konechnaya\";\"other\"\n\"1520885\";\"Kurchatov-21\";\"other\"\n\"1520885\";\"Maldar\";\"other\"\n\"1520885\";\"Moldar\";\"other\"\n\"1520885\";\"Moldary\";\"other\"\n\"1520885\";\"Semipalatinsk-21\";\"other\"\n\"1520885\";\"Курчатов\";\"other\"\n\"1520947\";\"Sarykemer\";\"main\"\n\"1520947\";\"Mikhaylovka\";\"other\"\n\"1520947\";\"Sarykamar\";\"other\"\n\"1520969\";\"Merke\";\"main\"\n\"1521048\";\"Mayqayyng\";\"main\"\n\"1521048\";\"Maykain\";\"other\"\n\"1521048\";\"Maykainskiy\";\"other\"\n\"1521079\";\"Matay\";\"main\"\n\"1521079\";\"Motay\";\"other\"\n\"1521230\";\"Makīnsk\";\"main\"\n\"1521230\";\"Makinsk\";\"ascii\"\n\"1521230\";\"MAKINSK\";\"other\"\n\"1521230\";\"МАКИНСК\";\"other\"\n\"1521292\";\"Kulan\";\"main\"\n\"1521292\";\"Lugovaya\";\"other\"\n\"1521292\";\"Lugovoy\";\"other\"\n\"1521292\";\"Lugovoye\";\"other\"\n\"1521292\";\"Lūgovoy\";\"other\"\n\"1521292\";\"Qulan\";\"other\"\n\"1521293\";\"Lūgovoy\";\"main\"\n\"1521293\";\"Lugovoy\";\"ascii\"\n\"1521293\";\"Lugovka\";\"other\"\n\"1521293\";\"Lugovoe\";\"other\"\n\"1521293\";\"Lugovoye\";\"other\"\n\"1521293\";\"Lugowaja\";\"other\"\n\"1521293\";\"Lūgovoe\";\"other\"\n\"1521315\";\"Līsakovsk\";\"main\"\n\"1521315\";\"Lisakovsk\";\"ascii\"\n\"1521315\";\"Lisakovka\";\"other\"\n\"1521315\";\"Лисаковка\";\"other\"\n\"1521333\";\"Lepsy\";\"main\"\n\"1521333\";\"Lepsi\";\"other\"\n\"1521351\";\"Qazyqurt\";\"main\"\n\"1521351\";\"Kazyghurt\";\"other\"\n\"1521351\";\"Kazygurt\";\"other\"\n\"1521351\";\"Kazykurt\";\"other\"\n\"1521351\";\"Lenin\";\"other\"\n\"1521351\";\"Leninskoye\";\"other\"\n\"1521351\";\"Lenīn\";\"other\"\n\"1521365\";\"Lenīnskīy\";\"main\"\n\"1521365\";\"Leninskiy\";\"ascii\"\n\"1521365\";\"Aul Sed'moy\";\"other\"\n\"1521365\";\"Aul Sed’moy\";\"other\"\n\"1521365\";\"Bayer\";\"other\"\n\"1521365\";\"LENINSKIJ\";\"other\"\n\"1521365\";\"Sed'moy Aul\";\"other\"\n\"1521365\";\"Sed’moy Aul\";\"other\"\n\"1521365\";\"ЛЕНИНСКИЙ\";\"other\"\n\"1521368\";\"Baykonyr\";\"main\"\n\"1521368\";\"Baikonur\";\"other\"\n\"1521368\";\"Bajkonur\";\"other\"\n\"1521368\";\"Baykonur\";\"other\"\n\"1521368\";\"Bayqongyr\";\"other\"\n\"1521368\";\"Leninsk\";\"other\"\n\"1521368\";\"Leninskiy\";\"other\"\n\"1521368\";\"Tyuratam\";\"other\"\n\"1521368\";\"Zarya\";\"other\"\n\"1521368\";\"Байконур\";\"other\"\n\"1521368\";\"Ленинск\";\"other\"\n\"1521370\";\"Ridder\";\"main\"\n\"1521370\";\"LENINOGORSK\";\"other\"\n\"1521370\";\"Leninogor\";\"other\"\n\"1521370\";\"Leninogorsk\";\"other\"\n\"1521370\";\"Lenīnogor\";\"other\"\n\"1521370\";\"Lenīnogorsk\";\"other\"\n\"1521370\";\"Ridderskiy\";\"other\"\n\"1521370\";\"ЛЕНИНОГОРСК\";\"other\"\n\"1521379\";\"Lenger\";\"main\"\n\"1521379\";\"Kopi-Lenger\";\"other\"\n\"1521379\";\"Lenger-Ugol'\";\"other\"\n\"1521379\";\"Lenger-Ugol’\";\"other\"\n\"1521379\";\"Lengerskaya\";\"other\"\n\"1521379\";\"Lengerskij\";\"other\"\n\"1521379\";\"Lengerskiy\";\"other\"\n\"1521379\";\"Ленгер\";\"other\"\n\"1521401\";\"Kishkenekol’\";\"main\"\n\"1521401\";\"Kishkenekol'\";\"ascii\"\n\"1521401\";\"KZYLTU\";\"other\"\n\"1521401\";\"Kyzl Tau\";\"other\"\n\"1521401\";\"Kzyltu\";\"other\"\n\"1521401\";\"Kzyltuu\";\"other\"\n\"1521401\";\"Qyzyltu\";\"other\"\n\"1521401\";\"Qyzyltū\";\"other\"\n\"1521401\";\"КЗЫЛТУ\";\"other\"\n\"1521425\";\"Kyzylzhar\";\"main\"\n\"1521425\";\"Kyzylzhay\";\"other\"\n\"1521425\";\"Кызылжар\";\"other\"\n\"1521677\";\"Qūshoqy\";\"main\"\n\"1521677\";\"Qushoqy\";\"ascii\"\n\"1521677\";\"Kushoky\";\"other\"\n\"1521762\";\"Kurchum\";\"main\"\n\"1521762\";\"Kumashenkino\";\"other\"\n\"1521762\";\"Kumashkino\";\"other\"\n\"1521762\";\"Kurshim\";\"other\"\n\"1521762\";\"Kürshim\";\"other\"\n\"1521762\";\"Курчум\";\"other\"\n\"1521998\";\"Krasnoznamenskoe\";\"main\"\n\"1521998\";\"Krasnoznamenka\";\"other\"\n\"1521998\";\"Krasnoznamenskiy\";\"other\"\n\"1521998\";\"Krasnoznamenskoye\";\"other\"\n\"1521998\";\"Krasoznamenskoye\";\"other\"\n\"1521998\";\"Shunkyrkol'\";\"other\"\n\"1521998\";\"Shunkyrkol’\";\"other\"\n\"1522026\";\"Krasnogorskīy\";\"main\"\n\"1522026\";\"Krasnogorskiy\";\"ascii\"\n\"1522026\";\"Krasnogorskij\";\"other\"\n\"1522026\";\"Красногорский\";\"other\"\n\"1522035\";\"Taiynsha\";\"main\"\n\"1522035\";\"KRASNOARMEJSK\";\"other\"\n\"1522035\";\"Krasnoarmeysk\";\"other\"\n\"1522035\";\"Taincha\";\"other\"\n\"1522035\";\"Tayncha\";\"other\"\n\"1522035\";\"КРАСНОАРМЕЙСК\";\"other\"\n\"1522203\";\"Kökshetaū\";\"main\"\n\"1522203\";\"Kokshetau\";\"ascii\"\n\"1522203\";\"KOKCHETAV\";\"other\"\n\"1522203\";\"Kochetayev\";\"other\"\n\"1522203\";\"Koekshetau\";\"other\"\n\"1522203\";\"Kokchetar\";\"other\"\n\"1522203\";\"Kokchetau\";\"other\"\n\"1522203\";\"Kokchetav\";\"other\"\n\"1522203\";\"Koshetau\";\"other\"\n\"1522203\";\"Köshetaū\";\"other\"\n\"1522203\";\"КОКЧЕТАВ\";\"other\"\n\"1522348\";\"Komsomolets\";\"main\"\n\"1522348\";\"KOMSOMOLEC\";\"other\"\n\"1522348\";\"КОМСОМОЛЕЦ\";\"other\"\n\"1522447\";\"Kokterek\";\"main\"\n\"1522447\";\"Imeni Michurina\";\"other\"\n\"1522447\";\"Коктерек\";\"other\"\n\"1522466\";\"Koktal\";\"main\"\n\"1522503\";\"Kokpekty\";\"main\"\n\"1522605\";\"Kīevka\";\"main\"\n\"1522605\";\"Kievka\";\"ascii\"\n\"1522605\";\"Kiewskaja\";\"other\"\n\"1522605\";\"Kiyevka\";\"other\"\n\"1522605\";\"Kiyevskoye\";\"other\"\n\"1522642\";\"Balpyk Bi\";\"main\"\n\"1522642\";\"Kirovskiy\";\"other\"\n\"1522642\";\"Kīrovskīy\";\"other\"\n\"1522643\";\"Asykata\";\"main\"\n\"1522643\";\"Kirov\";\"other\"\n\"1522643\";\"Kirovskiy\";\"other\"\n\"1522643\";\"Kirovskoye\";\"other\"\n\"1522643\";\"Kīrovskīy\";\"other\"\n\"1522714\";\"Khantaū\";\"main\"\n\"1522714\";\"Khantau\";\"ascii\"\n\"1522751\";\"Kentaū\";\"main\"\n\"1522751\";\"Kentau\";\"ascii\"\n\"1522751\";\"Кентау\";\"other\"\n\"1522818\";\"Kegen\";\"main\"\n\"1522862\";\"Qazaly\";\"main\"\n\"1522862\";\"Kasalinsk\";\"other\"\n\"1522862\";\"Kazalinsk\";\"other\"\n\"1523149\";\"Karasu\";\"main\"\n\"1523149\";\"Karaman\";\"other\"\n\"1523149\";\"Karasul'\";\"other\"\n\"1523149\";\"Karasul’\";\"other\"\n\"1523149\";\"Qarasu\";\"other\"\n\"1523149\";\"Qarasū\";\"other\"\n\"1523149\";\"Караман\";\"other\"\n\"1523470\";\"Karabas\";\"main\"\n\"1523512\";\"Khantaghy\";\"main\"\n\"1523512\";\"Kantagi\";\"other\"\n\"1523512\";\"Kontagi\";\"other\"\n\"1523512\";\"Tastak\";\"other\"\n\"1523605\";\"Qalqaman\";\"main\"\n\"1523605\";\"Kalkamak\";\"other\"\n\"1523605\";\"Kalkaman\";\"other\"\n\"1523605\";\"Kol'-Koman\";\"other\"\n\"1523605\";\"Kol’-Koman\";\"other\"\n\"1523662\";\"Kachīry\";\"main\"\n\"1523662\";\"Kachiry\";\"ascii\"\n\"1523662\";\"KACHIRY\";\"other\"\n\"1523662\";\"Kachirski\";\"other\"\n\"1523662\";\"Kachirskiy\";\"other\"\n\"1523662\";\"Kashir\";\"other\"\n\"1523662\";\"КАЧИРЫ\";\"other\"\n\"1523741\";\"Esik\";\"main\"\n\"1523741\";\"Issok\";\"other\"\n\"1523741\";\"Issyk\";\"other\"\n\"1523741\";\"Issök\";\"other\"\n\"1523741\";\"Yesik\";\"other\"\n\"1523741\";\"Есик\";\"other\"\n\"1523741\";\"Иссык\";\"other\"\n\"1523768\";\"Ertis\";\"main\"\n\"1523768\";\"IRTYSHSK\";\"other\"\n\"1523768\";\"Irtysch\";\"other\"\n\"1523768\";\"Irtysh\";\"other\"\n\"1523768\";\"Irtyshsk\";\"other\"\n\"1523768\";\"Irtyshskoye\";\"other\"\n\"1523768\";\"ИРТЫШСК\";\"other\"\n\"1524138\";\"Īl’īch\";\"main\"\n\"1524138\";\"Il'ich\";\"ascii\"\n\"1524138\";\"Ilyich\";\"other\"\n\"1524138\";\"Ильич\";\"other\"\n\"1524182\";\"Granītogorsk\";\"main\"\n\"1524182\";\"Granitogorsk\";\"ascii\"\n\"1524227\";\"Glubokoye\";\"main\"\n\"1524227\";\"GLUBOKOE\";\"other\"\n\"1524227\";\"Glubokoe\";\"other\"\n\"1524227\";\"Glūbokoe\";\"other\"\n\"1524227\";\"ГЛУБОКОЕ\";\"other\"\n\"1524243\";\"Georgīevka\";\"main\"\n\"1524243\";\"Georgievka\";\"ascii\"\n\"1524243\";\"Georgiyevka\";\"other\"\n\"1524243\";\"Георгиевка\";\"other\"\n\"1524245\";\"Georgīevka\";\"main\"\n\"1524245\";\"Georgievka\";\"ascii\"\n\"1524245\";\"Georgievskaya\";\"other\"\n\"1524245\";\"Georgiyevka\";\"other\"\n\"1524245\";\"Георгиевка\";\"other\"\n\"1524265\";\"Moyynkum\";\"main\"\n\"1524265\";\"Furmanovka\";\"other\"\n\"1524265\";\"Fūrmanovka\";\"other\"\n\"1524265\";\"Moyynqum\";\"other\"\n\"1524282\";\"Fedorovka\";\"main\"\n\"1524282\";\"FEDOROVKA\";\"other\"\n\"1524282\";\"Fedorovskiy\";\"other\"\n\"1524282\";\"Fëdorovka\";\"other\"\n\"1524282\";\"ФЕДОРОВКА\";\"other\"\n\"1524296\";\"Yesil’\";\"main\"\n\"1524296\";\"Yesil'\";\"ascii\"\n\"1524296\";\"Esil\";\"other\"\n\"1524298\";\"Aqsū\";\"main\"\n\"1524298\";\"Aqsu\";\"ascii\"\n\"1524298\";\"AKSU\";\"other\"\n\"1524298\";\"Aksu\";\"other\"\n\"1524298\";\"ERMAK\";\"other\"\n\"1524298\";\"Ermak\";\"other\"\n\"1524298\";\"Yermak\";\"other\"\n\"1524298\";\"АКСУ\";\"other\"\n\"1524298\";\"ЕРМАК\";\"other\"\n\"1524302\";\"Ereymentaū\";\"main\"\n\"1524302\";\"Ereymentau\";\"ascii\"\n\"1524302\";\"Ermentau\";\"other\"\n\"1524302\";\"Ermentaū\";\"other\"\n\"1524302\";\"Yereymentau\";\"other\"\n\"1524302\";\"Yermentau\";\"other\"\n\"1524308\";\"Energetīcheskīy\";\"main\"\n\"1524308\";\"Energeticheskiy\";\"ascii\"\n\"1524308\";\"Znergeticheskiy\";\"other\"\n\"1524325\";\"Ekibastuz\";\"main\"\n\"1524325\";\"Ehkibastuz\";\"other\"\n\"1524325\";\"Ekibastuzugol'\";\"other\"\n\"1524325\";\"Ekibastuzugol’\";\"other\"\n\"1524325\";\"Energograd\";\"other\"\n\"1524325\";\"Экибастуз\";\"other\"\n\"1524451\";\"Zhambyl\";\"main\"\n\"1524451\";\"Dzhambul\";\"other\"\n\"1524451\";\"Джамбул\";\"other\"\n\"1524478\";\"Dzhalagash\";\"main\"\n\"1524478\";\"Zhalagash\";\"other\"\n\"1524478\";\"Zhalaghash\";\"other\"\n\"1524537\";\"Dostyq\";\"main\"\n\"1524537\";\"Dostyk\";\"other\"\n\"1524537\";\"Druzhba\";\"other\"\n\"1524537\";\"Дружба\";\"other\"\n\"1524571\";\"Dolīnka\";\"main\"\n\"1524571\";\"Dolinka\";\"ascii\"\n\"1524571\";\"Dolinqa\";\"other\"\n\"1524571\";\"Dolinskoye\";\"other\"\n\"1524571\";\"Dolīnqa\";\"other\"\n\"1524606\";\"Derzhavīnsk\";\"main\"\n\"1524606\";\"Derzhavinsk\";\"ascii\"\n\"1524606\";\"Derzhavinskiy\";\"other\"\n\"1524703\";\"Sholaqqkorghan\";\"main\"\n\"1524703\";\"Chalak-Kurgan\";\"other\"\n\"1524703\";\"Chulakkurgan\";\"other\"\n\"1524703\";\"Sholakkorgan\";\"other\"\n\"1524703\";\"Tschulak-Kurgan\";\"other\"\n\"1524801\";\"Shīeli\";\"main\"\n\"1524801\";\"Shieli\";\"ascii\"\n\"1524801\";\"Chiili\";\"other\"\n\"1524801\";\"Шиели\";\"other\"\n\"1524871\";\"Shayan\";\"main\"\n\"1524871\";\"Chayan\";\"other\"\n\"1524889\";\"Shardara\";\"main\"\n\"1524889\";\"Chardara\";\"other\"\n\"1524889\";\"Syrdar'inskiy\";\"other\"\n\"1524889\";\"Syrdar’inskiy\";\"other\"\n\"1524889\";\"Шардара\";\"other\"\n\"1524958\";\"Burunday\";\"main\"\n\"1524958\";\"Baranday\";\"other\"\n\"1524958\";\"Boralday\";\"other\"\n\"1524958\";\"Burundaj\";\"other\"\n\"1524958\";\"Бурундай\";\"other\"\n\"1525014\";\"Būlaevo\";\"main\"\n\"1525014\";\"Bulaevo\";\"ascii\"\n\"1525014\";\"BULAEVO\";\"other\"\n\"1525014\";\"Bulayevo\";\"other\"\n\"1525014\";\"БУЛАЕВО\";\"other\"\n\"1525121\";\"Borovskoy\";\"main\"\n\"1525121\";\"BOROVSKOJ\";\"other\"\n\"1525121\";\"Borovo\";\"other\"\n\"1525121\";\"Borovoye\";\"other\"\n\"1525121\";\"Borovskoye\";\"other\"\n\"1525121\";\"БОРОВСКОЙ\";\"other\"\n\"1525126\";\"Būrabay\";\"main\"\n\"1525126\";\"Burabay\";\"ascii\"\n\"1525126\";\"BOROVOE\";\"other\"\n\"1525126\";\"Borovoe\";\"other\"\n\"1525126\";\"Borovoye\";\"other\"\n\"1525126\";\"Burabaj\";\"other\"\n\"1525126\";\"Kurort Borovoye\";\"other\"\n\"1525126\";\"БОРОВОЕ\";\"other\"\n\"1525126\";\"Боровое\";\"other\"\n\"1525126\";\"Бурабай\";\"other\"\n\"1525134\";\"Borodūlīkha\";\"main\"\n\"1525134\";\"Borodulikha\";\"ascii\"\n\"1525134\";\"Бородулиха\";\"other\"\n\"1525223\";\"Böke\";\"main\"\n\"1525223\";\"Boke\";\"ascii\"\n\"1525223\";\"Boko\";\"other\"\n\"1525223\";\"Priisk Boko\";\"other\"\n\"1525295\";\"Bishkul’\";\"main\"\n\"1525295\";\"Bishkul'\";\"ascii\"\n\"1525295\";\"Beskol\";\"other\"\n\"1525295\";\"Besköl\";\"other\"\n\"1525295\";\"Бишкуль\";\"other\"\n\"1525376\";\"Bestöbe\";\"main\"\n\"1525376\";\"Bestobe\";\"ascii\"\n\"1525376\";\"BESTOBE\";\"other\"\n\"1525376\";\"Bestoebe\";\"other\"\n\"1525376\";\"Bestyube\";\"other\"\n\"1525376\";\"БЕСТОБЕ\";\"other\"\n\"1525462\";\"Aksu\";\"main\"\n\"1525462\";\"Belye Vody\";\"other\"\n\"1525462\";\"Belyye Vody\";\"other\"\n\"1525462\";\"Аксу\";\"other\"\n\"1525490\";\"Belūsovka\";\"main\"\n\"1525490\";\"Belusovka\";\"ascii\"\n\"1525490\";\"BELOUSOVKA\";\"other\"\n\"1525490\";\"Belousovka\";\"other\"\n\"1525490\";\"Belousovskoye\";\"other\"\n\"1525490\";\"Rud Bylousovskiy\";\"other\"\n\"1525490\";\"БЕЛОУСОВКА\";\"other\"\n\"1525504\";\"Köktöbe\";\"main\"\n\"1525504\";\"Koktobe\";\"ascii\"\n\"1525504\";\"Belogor'ye\";\"other\"\n\"1525504\";\"Belogor’ye\";\"other\"\n\"1525504\";\"Byelogor'ye\";\"other\"\n\"1525504\";\"Byelogor’ye\";\"other\"\n\"1525506\";\"Belogorskīy\";\"main\"\n\"1525506\";\"Belogorskiy\";\"ascii\"\n\"1525506\";\"BELOGORSKIJ\";\"other\"\n\"1525506\";\"Belogor\";\"other\"\n\"1525506\";\"Belogorsk\";\"other\"\n\"1525506\";\"БЕЛОГОРСКИЙ\";\"other\"\n\"1525576\";\"Bayzhansay\";\"main\"\n\"1525576\";\"Baidzhansai\";\"other\"\n\"1525576\";\"Baydzhansay\";\"other\"\n\"1525650\";\"Bayanaūyl\";\"main\"\n\"1525650\";\"Bayanauyl\";\"ascii\"\n\"1525650\";\"Bayan-Aul'skoye\";\"other\"\n\"1525650\";\"Bayan-Aulskaya\";\"other\"\n\"1525650\";\"Bayan-Aul’skoye\";\"other\"\n\"1525650\";\"Bayanaul\";\"other\"\n\"1525658\";\"Bayaldyr\";\"main\"\n\"1525658\";\"Baladyr\";\"other\"\n\"1525798\";\"Balqash\";\"main\"\n\"1525798\";\"Balkhash\";\"other\"\n\"1525798\";\"Pribalkhash\";\"other\"\n\"1525798\";\"Pribalkhashstroy\";\"other\"\n\"1525798\";\"Балхаш\";\"other\"\n\"1525809\";\"Balkashīno\";\"main\"\n\"1525809\";\"Balkashino\";\"ascii\"\n\"1525809\";\"BALKASHINO\";\"other\"\n\"1525809\";\"Balkashinskoye\";\"other\"\n\"1525809\";\"БАЛКАШИНО\";\"other\"\n\"1525850\";\"Bakanas\";\"main\"\n\"1525850\";\"Baqanas\";\"other\"\n\"1525988\";\"Ayagoz\";\"main\"\n\"1525988\";\"Ayaguz\";\"other\"\n\"1525988\";\"Ayakoz\";\"other\"\n\"1525988\";\"Ayaköz\";\"other\"\n\"1525988\";\"Sergiopol'\";\"other\"\n\"1525988\";\"Sergiopol’\";\"other\"\n\"1526021\";\"Äūezov\";\"main\"\n\"1526021\";\"Auezov\";\"ascii\"\n\"1526021\";\"AEuezov\";\"other\"\n\"1526021\";\"AUEHZOV\";\"other\"\n\"1526021\";\"Bakyrchik\";\"other\"\n\"1526021\";\"Bakyrshik\";\"other\"\n\"1526021\";\"АУЭЗОВ\";\"other\"\n\"1526038\";\"Atbasar\";\"main\"\n\"1526038\";\"Atbasa\";\"other\"\n\"1526038\";\"Атбасар\";\"other\"\n\"1526041\";\"Atasū\";\"main\"\n\"1526041\";\"Atasu\";\"ascii\"\n\"1526041\";\"Atasuskiy\";\"other\"\n\"1526055\";\"Asūbulaq\";\"main\"\n\"1526055\";\"Asubulaq\";\"ascii\"\n\"1526055\";\"ASUBULAK\";\"other\"\n\"1526055\";\"Asubulak\";\"other\"\n\"1526055\";\"АСУБУЛАК\";\"other\"\n\"1526059\";\"Astrakhan\";\"main\"\n\"1526059\";\"Astrakhanka\";\"other\"\n\"1526059\";\"Astrakhanskiy\";\"other\"\n\"1526059\";\"Astrakhanskoye\";\"other\"\n\"1526081\";\"Ashchysay\";\"main\"\n\"1526081\";\"Achi-Sai\";\"other\"\n\"1526081\";\"Achisay\";\"other\"\n\"1526081\";\"Achisayskiy\";\"other\"\n\"1526081\";\"Ashhisaj\";\"other\"\n\"1526081\";\"Atschissa\";\"other\"\n\"1526081\";\"Ащисай\";\"other\"\n\"1526168\";\"Arys\";\"main\"\n\"1526168\";\"Arys'\";\"other\"\n\"1526168\";\"Arys’\";\"other\"\n\"1526193\";\"Arkalyk\";\"main\"\n\"1526193\";\"Arqalyk\";\"other\"\n\"1526193\";\"Arqalyq\";\"other\"\n\"1526265\";\"Aral\";\"main\"\n\"1526265\";\"Aral Sea\";\"other\"\n\"1526265\";\"Aral'sk\";\"other\"\n\"1526265\";\"Aral'skoe\";\"other\"\n\"1526265\";\"Aral'skoye More\";\"other\"\n\"1526265\";\"Aral’sk\";\"other\"\n\"1526265\";\"Aral’skoye More\";\"other\"\n\"1526265\";\"Аральское\";\"other\"\n\"1526268\";\"Aqtoghay\";\"main\"\n\"1526268\";\"Aktogay\";\"other\"\n\"1526269\";\"Aqtaū\";\"main\"\n\"1526269\";\"Aqtau\";\"ascii\"\n\"1526269\";\"Aktau\";\"other\"\n\"1526269\";\"Актау\";\"other\"\n\"1526271\";\"Aqsū\";\"main\"\n\"1526271\";\"Aqsu\";\"ascii\"\n\"1526271\";\"AKSU\";\"other\"\n\"1526271\";\"Aksu\";\"other\"\n\"1526271\";\"Karasuk\";\"other\"\n\"1526271\";\"Stalinskiy\";\"other\"\n\"1526271\";\"АКСУ\";\"other\"\n\"1526272\";\"Aqshataū\";\"main\"\n\"1526272\";\"Aqshatau\";\"ascii\"\n\"1526272\";\"Akchatan\";\"other\"\n\"1526272\";\"Akchatau\";\"other\"\n\"1526272\";\"Akchataul\";\"other\"\n\"1526272\";\"Akshatau\";\"other\"\n\"1526272\";\"Акшатау\";\"other\"\n\"1526273\";\"Astana\";\"main\"\n\"1526273\";\"Akmola\";\"other\"\n\"1526273\";\"Akmolinsk\";\"other\"\n\"1526273\";\"Aqmola\";\"other\"\n\"1526273\";\"Astano\";\"other\"\n\"1526273\";\"Astanà\";\"other\"\n\"1526273\";\"Astaná\";\"other\"\n\"1526273\";\"Asztana\";\"other\"\n\"1526273\";\"Aστάνα\";\"other\"\n\"1526273\";\"Ostona\";\"other\"\n\"1526273\";\"Qaraotkel\";\"other\"\n\"1526273\";\"Qaraötkel\";\"other\"\n\"1526273\";\"Tselinograd\";\"other\"\n\"1526273\";\"a si ta na\";\"other\"\n\"1526273\";\"aseutana\";\"other\"\n\"1526273\";\"astana\";\"other\"\n\"1526273\";\"astanh\";\"other\"\n\"1526273\";\"asutana\";\"other\"\n\"1526273\";\"Астана\";\"other\"\n\"1526273\";\"Остона\";\"other\"\n\"1526273\";\"Աստանա\";\"other\"\n\"1526273\";\"אסטנה\";\"other\"\n\"1526273\";\"آستانه\";\"other\"\n\"1526273\";\"أسطانا\";\"other\"\n\"1526273\";\"আস্তানা\";\"other\"\n\"1526273\";\"ასტანა\";\"other\"\n\"1526273\";\"አስታና\";\"other\"\n\"1526273\";\"アスタナ\";\"other\"\n\"1526273\";\"阿斯塔纳\";\"other\"\n\"1526273\";\"아스타나\";\"other\"\n\"1526274\";\"Aqadyr\";\"main\"\n\"1526274\";\"Agadyr'\";\"other\"\n\"1526274\";\"Agadyr’\";\"other\"\n\"1526384\";\"Almaty\";\"main\"\n\"1526384\";\"Alma Ata\";\"other\"\n\"1526384\";\"Alma-Ata\";\"other\"\n\"1526384\";\"Almaato\";\"other\"\n\"1526384\";\"Almata\";\"other\"\n\"1526384\";\"Almati\";\"other\"\n\"1526384\";\"Almati - Almaty\";\"other\"\n\"1526384\";\"Almati - Алматы\";\"other\"\n\"1526384\";\"Almato\";\"other\"\n\"1526384\";\"Almatõ\";\"other\"\n\"1526384\";\"Almatı\";\"other\"\n\"1526384\";\"Ałma-Ata\";\"other\"\n\"1526384\";\"Vernyy\";\"other\"\n\"1526384\";\"a la mu tu\";\"other\"\n\"1526384\";\"almaaty\";\"other\"\n\"1526384\";\"almati\";\"other\"\n\"1526384\";\"arumatoi\";\"other\"\n\"1526384\";\"Алма-Ата\";\"other\"\n\"1526384\";\"Алмаато\";\"other\"\n\"1526384\";\"Алмати\";\"other\"\n\"1526384\";\"Алматы\";\"other\"\n\"1526384\";\"אלמטי\";\"other\"\n\"1526384\";\"آلماآتی\";\"other\"\n\"1526384\";\"アルマトイ\";\"other\"\n\"1526384\";\"阿拉木圖\";\"other\"\n\"1526384\";\"알마티\";\"other\"\n\"1526443\";\"Aqköl\";\"main\"\n\"1526443\";\"Aqkol\";\"ascii\"\n\"1526443\";\"ALEKSEEVKA\";\"other\"\n\"1526443\";\"Akkol'\";\"other\"\n\"1526443\";\"Akkol’\";\"other\"\n\"1526443\";\"Alekseev\";\"other\"\n\"1526443\";\"Alekseevka\";\"other\"\n\"1526443\";\"Alekseyevka\";\"other\"\n\"1526443\";\"Alekseyevskoye\";\"other\"\n\"1526443\";\"АЛЕКСЕЕВКА\";\"other\"\n\"1526522\";\"Akzhal\";\"main\"\n\"1526522\";\"Akzhol\";\"other\"\n\"1526573\";\"Aktogay\";\"main\"\n\"1526601\";\"Aktau\";\"main\"\n\"1526601\";\"Актау\";\"other\"\n\"1526619\";\"Aqtas\";\"main\"\n\"1526619\";\"Aktas\";\"other\"\n\"1526636\";\"Aqsū-Ayuly\";\"main\"\n\"1526636\";\"Aqsu-Ayuly\";\"ascii\"\n\"1526636\";\"Aksu-Ayuly\";\"other\"\n\"1526648\";\"Aksuat\";\"main\"\n\"1526797\";\"Akkol’\";\"main\"\n\"1526797\";\"Akkol'\";\"ascii\"\n\"1526797\";\"Акколь\";\"other\"\n\"1526900\";\"Aqbaqay\";\"main\"\n\"1526900\";\"Akbakay\";\"other\"\n\"1526970\";\"Abay\";\"main\"\n\"1526970\";\"Abaj\";\"other\"\n\"1526970\";\"Churbay-Nura\";\"other\"\n\"1526970\";\"Churubay-Nura\";\"other\"\n\"1526970\";\"Абай\";\"other\"\n\"1529724\";\"Shalqīya\";\"main\"\n\"1529724\";\"Shalqiya\";\"ascii\"\n\"1529724\";\"Shalkiya\";\"other\"\n\"1532249\";\"Birlestik\";\"main\"\n\"1532249\";\"Бирлестик\";\"other\"\n\"1534565\";\"Maleevsk\";\"main\"\n\"1534565\";\"Maleyevsk\";\"other\"\n\"1534565\";\"Малеевск\";\"other\"\n\"1535059\";\"Belköl\";\"main\"\n\"1535059\";\"Belkol\";\"ascii\"\n\"1535059\";\"Belkul'\";\"other\"\n\"1535059\";\"Belkul’\";\"other\"\n\"1535379\";\"Novoīshīmskīy\";\"main\"\n\"1535379\";\"Novoishimskiy\";\"ascii\"\n\"1535379\";\"NOVOISHIMSKIJ\";\"other\"\n\"1535379\";\"НОВОИШИМСКИЙ\";\"other\"\n\"1537253\";\"Shashūbay\";\"main\"\n\"1537253\";\"Shashubay\";\"ascii\"\n\"1537253\";\"Rybtrest\";\"other\"\n\"1537856\";\"Shyghanaq\";\"main\"\n\"1537856\";\"Chiganak\";\"other\"\n\"1537856\";\"Shyganak\";\"other\"\n\"1537909\";\"Shubarköl\";\"main\"\n\"1537909\";\"Shubarkol\";\"ascii\"\n\"1537939\";\"Stepnogorsk\";\"main\"\n\"1537939\";\"STEPNOGORSK\";\"other\"\n\"1537939\";\"СТЕПНОГОРСК\";\"other\"\n\"1537947\";\"Zavodskoy\";\"main\"\n\"1537947\";\"ZAVODSKOJ\";\"other\"\n\"1537947\";\"ЗАВОДСКОЙ\";\"other\"\n\"1537980\";\"Ülken\";\"main\"\n\"1537980\";\"Ulken\";\"ascii\"\n\"1538012\";\"Altay\";\"main\"\n\"1538012\";\"ALTAJSKIJ\";\"other\"\n\"1538012\";\"Altayskiy\";\"other\"\n\"1538012\";\"АЛТАЙСКИЙ\";\"other\"\n\"7536148\";\"Priozersk\";\"main\"\n\"7536148\";\"Приозерск\";\"other\"\n\"1651944\";\"Vientiane\";\"main\"\n\"1651944\";\"Bientian\";\"other\"\n\"1651944\";\"Nakhon Viangchan\";\"other\"\n\"1651944\";\"V'ent'jan\";\"other\"\n\"1651944\";\"Ventjan\";\"other\"\n\"1651944\";\"Viang chan\";\"other\"\n\"1651944\";\"Viangchan\";\"other\"\n\"1651944\";\"Vien Can\";\"other\"\n\"1651944\";\"Vien Chang\";\"other\"\n\"1651944\";\"Vieng Chan\";\"other\"\n\"1651944\";\"Vieng-Caen\";\"other\"\n\"1651944\";\"Vieng-Chan\";\"other\"\n\"1651944\";\"Vieng-Cæn\";\"other\"\n\"1651944\";\"Viengtjan\";\"other\"\n\"1651944\";\"Vientane\";\"other\"\n\"1651944\";\"Vientian\";\"other\"\n\"1651944\";\"Vientianas\";\"other\"\n\"1651944\";\"Vientián\";\"other\"\n\"1651944\";\"Viêng Chăn\";\"other\"\n\"1651944\";\"Wei-t'ien\";\"other\"\n\"1651944\";\"Wiang Chan\";\"other\"\n\"1651944\";\"Wientian\";\"other\"\n\"1651944\";\"biantian\";\"other\"\n\"1651944\";\"vu~ienchan\";\"other\"\n\"1651944\";\"vu~ienchan shi\";\"other\"\n\"1651944\";\"weiyngcanthn\";\"other\"\n\"1651944\";\"yong zhen\";\"other\"\n\"1651944\";\"Βιεντιάν\";\"other\"\n\"1651944\";\"Вентян\";\"other\"\n\"1651944\";\"Вьентьян\";\"other\"\n\"1651944\";\"ויינטיאן\";\"other\"\n\"1651944\";\"وین‌تیان\";\"other\"\n\"1651944\";\"เวียงจันทน์\";\"other\"\n\"1651944\";\"ເຂດພິເສດວຽງຈັນ\";\"other\"\n\"1651944\";\"ཝིན་ཆིའང་\";\"other\"\n\"1651944\";\"ቭየንትዬን\";\"other\"\n\"1651944\";\"ヴィエンチャン\";\"other\"\n\"1651944\";\"ヴィエンチャン市\";\"other\"\n\"1651944\";\"永珍\";\"other\"\n\"1651944\";\"비안티안\";\"other\"\n\"1652203\";\"Xam Nua\";\"main\"\n\"1652203\";\"Muang Sam\";\"other\"\n\"1652203\";\"Sammeua\";\"other\"\n\"1652203\";\"Samnua\";\"other\"\n\"1653316\";\"Savannakhét\";\"main\"\n\"1653316\";\"Savannakhet\";\"ascii\"\n\"1653316\";\"Khwaeng Savannakhet\";\"other\"\n\"1653316\";\"Khwaeng_Savannakhet\";\"other\"\n\"1653316\";\"Muang Savannaket\";\"other\"\n\"1653316\";\"Province de Savannakhet\";\"other\"\n\"1653316\";\"Savannaket\";\"other\"\n\"1653316\";\"Savannakhet Province\";\"other\"\n\"1653316\";\"Savannakkhet\";\"other\"\n\"1653316\";\"Suvannakhet\";\"other\"\n\"1653316\";\"Suwanakhet\";\"other\"\n\"1653316\";\"Svannakhet\";\"other\"\n\"1653316\";\"Svannakhét\";\"other\"\n\"1653316\";\"sawan'naketo xian\";\"other\"\n\"1653316\";\"Саваннакхет\";\"other\"\n\"1653316\";\"แขวงสะหวันนะเขต\";\"other\"\n\"1653316\";\"サワンナケート県\";\"other\"\n\"1653334\";\"Salavan\";\"main\"\n\"1653334\";\"Muang Saravane\";\"other\"\n\"1653334\";\"Saravan\";\"other\"\n\"1653334\";\"Saravane\";\"other\"\n\"1653334\";\"Sarawan\";\"other\"\n\"1653814\";\"Phou Pialông\";\"main\"\n\"1653814\";\"Phou Pialong\";\"ascii\"\n\"1653814\";\"P'ia Long\";\"other\"\n\"1653814\";\"P’ia Long\";\"other\"\n\"1653894\";\"Phôngsali\";\"main\"\n\"1653894\";\"Phongsali\";\"ascii\"\n\"1653894\";\"Fong Sali\";\"other\"\n\"1653894\";\"Muong Hou\";\"other\"\n\"1653894\";\"Phong Saly\";\"other\"\n\"1654379\";\"Pakxé\";\"main\"\n\"1654379\";\"Pakxe\";\"ascii\"\n\"1654379\";\"Pakse\";\"other\"\n\"1654379\";\"Paksé\";\"other\"\n\"1655078\";\"Muang Xai\";\"main\"\n\"1655078\";\"Mouang Sai\";\"other\"\n\"1655078\";\"Muang Xay\";\"other\"\n\"1655078\";\"Muangsaj\";\"other\"\n\"1655078\";\"Muong Sai\";\"other\"\n\"1655078\";\"Sai\";\"other\"\n\"1655078\";\"Муангсай\";\"other\"\n\"1655084\";\"Xaignabouli\";\"main\"\n\"1655084\";\"Ban Samaboury\";\"other\"\n\"1655084\";\"Khwaeng Sainyabuli\";\"other\"\n\"1655084\";\"Muang Xaignabouri\";\"other\"\n\"1655084\";\"Muong Samaboury\";\"other\"\n\"1655084\";\"Muong Sayaboury\";\"other\"\n\"1655084\";\"Saniabouri\";\"other\"\n\"1655084\";\"Sayaboury\";\"other\"\n\"1655084\";\"Xaignabouri\";\"other\"\n\"1655087\";\"Muang Vangviang\";\"main\"\n\"1655087\";\"Vang V'eng\";\"other\"\n\"1655087\";\"Vang Vieng\";\"other\"\n\"1655087\";\"Viangviang\";\"other\"\n\"1655087\";\"Ванг Вьенг\";\"other\"\n\"1655123\";\"Muang Phônsavan\";\"main\"\n\"1655123\";\"Muang Phonsavan\";\"ascii\"\n\"1655123\";\"Phone Savan\";\"other\"\n\"1655123\";\"Phong Savan\";\"other\"\n\"1655123\";\"Phonsavan\";\"other\"\n\"1655123\";\"Phônsavan\";\"other\"\n\"1655124\";\"Muang Phôn-Hông\";\"main\"\n\"1655124\";\"Muang Phon-Hong\";\"ascii\"\n\"1655124\";\"Ban Phon Hong\";\"other\"\n\"1655124\";\"Ban Phong Hong\";\"other\"\n\"1655124\";\"Muang Phone\";\"other\"\n\"1655124\";\"Muang Phone Hong\";\"other\"\n\"1655124\";\"Phone Hong\";\"other\"\n\"1655124\";\"Phong Hong\";\"other\"\n\"1655124\";\"Phonhong\";\"other\"\n\"1655140\";\"Muang Pakxan\";\"main\"\n\"1655140\";\"Paksane\";\"other\"\n\"1655140\";\"Pakxan\";\"other\"\n\"1655192\";\"Muang Không\";\"main\"\n\"1655192\";\"Muang Khong\";\"ascii\"\n\"1655192\";\"Khon\";\"other\"\n\"1655192\";\"Khong\";\"other\"\n\"1655192\";\"Muong Khong\";\"other\"\n\"1655199\";\"Thakhèk\";\"main\"\n\"1655199\";\"Thakhek\";\"ascii\"\n\"1655199\";\"Khammouane\";\"other\"\n\"1655199\";\"Muang Khammouan\";\"other\"\n\"1655199\";\"Muang Thakek\";\"other\"\n\"1655199\";\"Tha Khaek\";\"other\"\n\"1655199\";\"Thakhet\";\"other\"\n\"1655199\";\"Thakhok\";\"other\"\n\"1655559\";\"Louangphrabang\";\"main\"\n\"1655559\";\"Louang Prabang\";\"other\"\n\"1655559\";\"Louangphabang\";\"other\"\n\"1655559\";\"Luan Praban\";\"other\"\n\"1655559\";\"Luang Phrabang\";\"other\"\n\"1655559\";\"Luang Prabang\";\"other\"\n\"1655559\";\"Luang-Prabang\";\"other\"\n\"1655559\";\"lang bo la bang\";\"other\"\n\"1655559\";\"meuxng hlwng phra bang\";\"other\"\n\"1655559\";\"ruanpaban\";\"other\"\n\"1655559\";\"Луанг-Прабанг\";\"other\"\n\"1655559\";\"เมืองหลวงพระบาง\";\"other\"\n\"1655559\";\"ຫລວງພະບາງ\";\"other\"\n\"1655559\";\"ルアンパバーン\";\"other\"\n\"1655559\";\"琅勃拉邦\";\"other\"\n\"1655562\";\"Louang Namtha\";\"main\"\n\"1655562\";\"Khong Luong Nam Tha\";\"other\"\n\"1655562\";\"Loung Nam Tha\";\"other\"\n\"1655562\";\"Luong Nam Tha\";\"other\"\n\"1655562\";\"Muang Luong Nam Tha\";\"other\"\n\"1655562\";\"Muong Long Nam Tha\";\"other\"\n\"1655562\";\"Muong Luong\";\"other\"\n\"1655562\";\"Muong Luong Nam Ta\";\"other\"\n\"1655562\";\"Muong Luong Nam Tha\";\"other\"\n\"1655562\";\"Nam Tha\";\"other\"\n\"1657819\";\"Champasak\";\"main\"\n\"1657819\";\"Basak\";\"other\"\n\"1657819\";\"Bassac\";\"other\"\n\"1657819\";\"Bassak\";\"other\"\n\"1657819\";\"Champassac\";\"other\"\n\"1657819\";\"Champassak\";\"other\"\n\"1657819\";\"Чампасак\";\"other\"\n\"1659990\";\"Lamam\";\"main\"\n\"1659990\";\"Ban Phon\";\"other\"\n\"1659990\";\"Ban Phone\";\"other\"\n\"1659990\";\"Ban Phôn\";\"other\"\n\"1659990\";\"Lamarm\";\"other\"\n\"1659990\";\"Phone\";\"other\"\n\"1661950\";\"Ban Nahin\";\"main\"\n\"1661950\";\"Ban Na Inh\";\"other\"\n\"1663526\";\"Ban Houayxay\";\"main\"\n\"1663526\";\"Ban Houayxai\";\"other\"\n\"1663526\";\"Ban Houei Sai\";\"other\"\n\"1663526\";\"Ban Huei Sai\";\"other\"\n\"1663526\";\"Ban Hueu Sai\";\"other\"\n\"1663526\";\"Ban Hwei Sai\";\"other\"\n\"1663526\";\"Fort Carnot\";\"other\"\n\"1663526\";\"Houayxay\";\"other\"\n\"1663526\";\"Houei Sai\";\"other\"\n\"1663526\";\"Hovei Sai\";\"other\"\n\"1663526\";\"Huoei Sai\";\"other\"\n\"1663526\";\"Van Houei Sai\";\"other\"\n\"1665046\";\"Attapu\";\"main\"\n\"1665046\";\"Atpu\";\"other\"\n\"1665046\";\"Attapeu\";\"other\"\n\"1665046\";\"Attopeu\";\"other\"\n\"1665046\";\"Muang Mai\";\"other\"\n\"1665046\";\"Muang Samakhixai\";\"other\"\n\"1665046\";\"Muong Attopeu\";\"other\"\n\"1665046\";\"attapu xian\";\"other\"\n\"1665046\";\"アッタプー県\";\"other\"\n\"1904391\";\"Ban Houakhoua\";\"main\"\n\"1904391\";\"Ban  Khojjaksjau\";\"other\"\n\"1904391\";\"Ban Houayxay\";\"other\"\n\"1904391\";\"Бан  Хойяксяу\";\"other\"\n\"1952156\";\"Ban Phônsavan\";\"main\"\n\"1952156\";\"Ban Phonsavan\";\"ascii\"\n\"1952156\";\"Pkhonsavan\";\"other\"\n\"1952156\";\"Пхонсаван\";\"other\"\n\"266045\";\"Zahlé\";\"main\"\n\"266045\";\"Zahle\";\"ascii\"\n\"266045\";\"Zahlah\";\"other\"\n\"266045\";\"Zahleh\";\"other\"\n\"266045\";\"Zakhla\";\"other\"\n\"266045\";\"Zaḩlah\";\"other\"\n\"266045\";\"zhlh\";\"other\"\n\"266045\";\"zhlt\";\"other\"\n\"266045\";\"Захла\";\"other\"\n\"266045\";\"זחלה\";\"other\"\n\"266045\";\"زحلة\";\"other\"\n\"266826\";\"Tripoli\";\"main\"\n\"266826\";\"Tarabulus\";\"other\"\n\"266826\";\"Trablous\";\"other\"\n\"266826\";\"Tripolo\";\"other\"\n\"266826\";\"Trypolis\";\"other\"\n\"266826\";\"Trâblous\";\"other\"\n\"266826\";\"Trípoli\";\"other\"\n\"266826\";\"tarabulus\";\"other\"\n\"266826\";\"toripori\";\"other\"\n\"266826\";\"trabls\";\"other\"\n\"266826\";\"trypwly\";\"other\"\n\"266826\";\"Ţarābulus\";\"other\"\n\"266826\";\"Триполи\";\"other\"\n\"266826\";\"טריפולי\";\"other\"\n\"266826\";\"ترابلس\";\"other\"\n\"266826\";\"طرابلس\";\"other\"\n\"266826\";\"طَرَابُلُس\";\"other\"\n\"266826\";\"トリポリ\";\"other\"\n\"267008\";\"Tyre\";\"main\"\n\"267008\";\"Es Sur\";\"other\"\n\"267008\";\"Sor\";\"other\"\n\"267008\";\"Sour\";\"other\"\n\"267008\";\"Soûr\";\"other\"\n\"267008\";\"Sur\";\"other\"\n\"267008\";\"Surru\";\"other\"\n\"267008\";\"Tir\";\"other\"\n\"267008\";\"Tiro\";\"other\"\n\"267008\";\"Tyr\";\"other\"\n\"267008\";\"Tyras\";\"other\"\n\"267008\";\"Tyros\";\"other\"\n\"267008\";\"Tyrus\";\"other\"\n\"267008\";\"Týros\";\"other\"\n\"267008\";\"alswr\";\"other\"\n\"267008\";\"sur\";\"other\"\n\"267008\";\"swr\";\"other\"\n\"267008\";\"tai er\";\"other\"\n\"267008\";\"tirusu\";\"other\"\n\"267008\";\"zr\";\"other\"\n\"267008\";\"zwr\";\"other\"\n\"267008\";\"Şūr\";\"other\"\n\"267008\";\"Τύρος\";\"other\"\n\"267008\";\"Тир\";\"other\"\n\"267008\";\"Тір\";\"other\"\n\"267008\";\"Тѵръ\";\"other\"\n\"267008\";\"צור\";\"other\"\n\"267008\";\"צר\";\"other\"\n\"267008\";\"الصور\";\"other\"\n\"267008\";\"صور\";\"other\"\n\"267008\";\"صُور\";\"other\"\n\"267008\";\"Ṣur\";\"other\"\n\"267008\";\"Ṣurru\";\"other\"\n\"267008\";\"Ṣōr\";\"other\"\n\"267008\";\"ティルス\";\"other\"\n\"267008\";\"泰爾\";\"other\"\n\"268064\";\"Sidon\";\"main\"\n\"268064\";\"Saida\";\"other\"\n\"268064\";\"Sayda\";\"other\"\n\"268064\";\"Saïda\";\"other\"\n\"268064\";\"Sidon\\\"\";\"other\"\n\"268064\";\"Sidona\";\"other\"\n\"268064\";\"Sidonas\";\"other\"\n\"268064\";\"Sidone\";\"other\"\n\"268064\";\"Sidón\";\"other\"\n\"268064\";\"Sydon\";\"other\"\n\"268064\";\"Sídon\";\"other\"\n\"268064\";\"saida\";\"other\"\n\"268064\";\"sayda\";\"other\"\n\"268064\";\"syda\";\"other\"\n\"268064\";\"zydwn\";\"other\"\n\"268064\";\"Şaydā\";\"other\"\n\"268064\";\"Σιδώνα\";\"other\"\n\"268064\";\"Сидон\";\"other\"\n\"268064\";\"Сидонъ\";\"other\"\n\"268064\";\"צידון\";\"other\"\n\"268064\";\"صيدا\";\"other\"\n\"268064\";\"صَيْدَا\";\"other\"\n\"268064\";\"サイダ\";\"other\"\n\"268743\";\"Ra’s Bayrūt\";\"main\"\n\"268743\";\"Ra's Bayrut\";\"ascii\"\n\"273140\";\"Joünié\";\"main\"\n\"273140\";\"Jounie\";\"ascii\"\n\"273140\";\"Djounie\";\"other\"\n\"273140\";\"Juniyah\";\"other\"\n\"273140\";\"Jūniyah\";\"other\"\n\"273203\";\"Jbail\";\"main\"\n\"273203\";\"Bibl\";\"other\"\n\"273203\";\"Biblos\";\"other\"\n\"273203\";\"Byblos\";\"other\"\n\"273203\";\"Djebail\";\"other\"\n\"273203\";\"Djébail\";\"other\"\n\"273203\";\"Gebal\";\"other\"\n\"273203\";\"Gibelet\";\"other\"\n\"273203\";\"Giblet\";\"other\"\n\"273203\";\"Gubayl\";\"other\"\n\"273203\";\"Gubla\";\"other\"\n\"273203\";\"Jbayl\";\"other\"\n\"273203\";\"Jbaïl\";\"other\"\n\"273203\";\"Jbeil\";\"other\"\n\"273203\";\"Jebail\";\"other\"\n\"273203\";\"Jebaïl\";\"other\"\n\"273203\";\"Jubayl\";\"other\"\n\"273203\";\"Keben\";\"other\"\n\"273203\";\"Kepen\";\"other\"\n\"273203\";\"biburosu\";\"other\"\n\"273203\";\"byblos\";\"other\"\n\"273203\";\"gbl\";\"other\"\n\"273203\";\"jbyl\";\"other\"\n\"273203\";\"Ǧubayl\";\"other\"\n\"273203\";\"βύβλος\";\"other\"\n\"273203\";\"Библ\";\"other\"\n\"273203\";\"Библос\";\"other\"\n\"273203\";\"גבל\";\"other\"\n\"273203\";\"جبيل\";\"other\"\n\"273203\";\"ビブロス\";\"other\"\n\"274874\";\"Habboûch\";\"main\"\n\"274874\";\"Habbouch\";\"ascii\"\n\"274874\";\"Habboush\";\"other\"\n\"274874\";\"Habbush\";\"other\"\n\"274874\";\"Khabbushe\";\"other\"\n\"274874\";\"Хаббуше\";\"other\"\n\"274874\";\"Ḩabbūsh\";\"other\"\n\"276359\";\"Bcharré\";\"main\"\n\"276359\";\"Bcharre\";\"ascii\"\n\"276359\";\"Basharri\";\"other\"\n\"276359\";\"Basharrī\";\"other\"\n\"276359\";\"Bcharreh\";\"other\"\n\"276359\";\"Bcharri\";\"other\"\n\"276359\";\"Bcharrī\";\"other\"\n\"276359\";\"Becharri\";\"other\"\n\"276359\";\"Besherri\";\"other\"\n\"276359\";\"Bishari\";\"other\"\n\"276359\";\"Bisharri\";\"other\"\n\"276359\";\"Bsharri\";\"other\"\n\"276359\";\"Bsharrī\";\"other\"\n\"276359\";\"Bsherri\";\"other\"\n\"276359\";\"Бишари\";\"other\"\n\"276632\";\"Bhamdoûn el Mhatta\";\"main\"\n\"276632\";\"Bhamdoun el Mhatta\";\"ascii\"\n\"276632\";\"Bhamdoun\";\"other\"\n\"276632\";\"Bhamdoûn\";\"other\"\n\"276632\";\"Bhamdun al Mahattah\";\"other\"\n\"276632\";\"Bḩamdūn al Maḩaţţah\";\"other\"\n\"276633\";\"Bhamdoun\";\"main\"\n\"276633\";\"Bhamdourn\";\"other\"\n\"276633\";\"Bhamdun\";\"other\"\n\"276633\";\"Bihamdun\";\"other\"\n\"276633\";\"Biḩamdūn\";\"other\"\n\"276633\";\"Bḩamdūn\";\"other\"\n\"276781\";\"Beirut\";\"main\"\n\"276781\";\"Baeyrut\";\"other\"\n\"276781\";\"Bayrut\";\"other\"\n\"276781\";\"Bayrūt\";\"other\"\n\"276781\";\"Beiroet\";\"other\"\n\"276781\";\"Beirout\";\"other\"\n\"276781\";\"Beiroūt\";\"other\"\n\"276781\";\"Beirutas\";\"other\"\n\"276781\";\"Beirute\";\"other\"\n\"276781\";\"Beirút\";\"other\"\n\"276781\";\"Bejrut\";\"other\"\n\"276781\";\"Bejruto\";\"other\"\n\"276781\";\"Bejrút\";\"other\"\n\"276781\";\"Berytos\";\"other\"\n\"276781\";\"Berytus\";\"other\"\n\"276781\";\"Beyrouth\";\"other\"\n\"276781\";\"Beyrut\";\"other\"\n\"276781\";\"Bäyrut\";\"other\"\n\"276781\";\"bayrut\";\"other\"\n\"276781\";\"bei lu te\";\"other\"\n\"276781\";\"beiluteu\";\"other\"\n\"276781\";\"beiruto\";\"other\"\n\"276781\";\"byrwt\";\"other\"\n\"276781\";\"byyrwt\";\"other\"\n\"276781\";\"Βηρυτός\";\"other\"\n\"276781\";\"Бейрут\";\"other\"\n\"276781\";\"Бејрут\";\"other\"\n\"276781\";\"Բեյրութ\";\"other\"\n\"276781\";\"ביירות\";\"other\"\n\"276781\";\"بيروت\";\"other\"\n\"276781\";\"بَيْرُوت\";\"other\"\n\"276781\";\"بیروت\";\"other\"\n\"276781\";\"ܒܝܪܘܬ\";\"other\"\n\"276781\";\"འཔེ་ལུ་ཐ\";\"other\"\n\"276781\";\"ベイルート\";\"other\"\n\"276781\";\"贝鲁特\";\"other\"\n\"276781\";\"베이루트\";\"other\"\n\"277130\";\"Baalbek\";\"main\"\n\"277130\";\"Ba`albak\";\"other\"\n\"277130\";\"Ba`labak\";\"other\"\n\"277130\";\"Ba`labakk\";\"other\"\n\"277130\";\"Baal'bek\";\"other\"\n\"277130\";\"Baalbeck\";\"other\"\n\"277130\";\"Ba‘albak\";\"other\"\n\"277130\";\"Ba‘labak\";\"other\"\n\"277130\";\"Ba‘labakk\";\"other\"\n\"277130\";\"Heliopolis\";\"other\"\n\"277130\";\"Héliopolis\";\"other\"\n\"277130\";\"barubekku\";\"other\"\n\"277130\";\"Баалбек\";\"other\"\n\"277130\";\"Баальбек\";\"other\"\n\"277130\";\"בעלבק\";\"other\"\n\"277130\";\"بعلبك\";\"other\"\n\"277130\";\"بعلبک\";\"other\"\n\"277130\";\"バールベック\";\"other\"\n\"277226\";\"Baabda\";\"main\"\n\"277226\";\"B`abda\";\"other\"\n\"277226\";\"B`abdā\";\"other\"\n\"277467\";\"Ain Ebel\";\"main\"\n\"277467\";\"Ain Ibel\";\"other\"\n\"277467\";\"Ain Ibl\";\"other\"\n\"277467\";\"Aïn Ibel\";\"other\"\n\"277467\";\"`Ain Ibil\";\"other\"\n\"277467\";\"`Ayn Ibil\";\"other\"\n\"278913\";\"Nabatîyé et Tahta\";\"main\"\n\"278913\";\"Nabatiye et Tahta\";\"ascii\"\n\"278913\";\"An Nabatiyah at Tahta\";\"other\"\n\"278913\";\"An Nabaţīyah at Taḩtā\";\"other\"\n\"280328\";\"Batroûn\";\"main\"\n\"280328\";\"Batroun\";\"ascii\"\n\"280328\";\"Al Batrun\";\"other\"\n\"280328\";\"Al Batrūn\";\"other\"\n\"280328\";\"Batrun\";\"other\"\n\"280328\";\"Batrūn\";\"other\"\n\"280328\";\"Botrys\";\"other\"\n\"3576414\";\"Vieux Fort\";\"main\"\n\"3576442\";\"Soufrière\";\"main\"\n\"3576442\";\"Soufriere\";\"ascii\"\n\"3576569\";\"Micoud\";\"main\"\n\"3576663\";\"Laborie\";\"main\"\n\"3576686\";\"Gros Islet\";\"main\"\n\"3576686\";\"Gros Ilet\";\"other\"\n\"3576686\";\"Gros Islet Village\";\"other\"\n\"3576765\";\"Dennery\";\"main\"\n\"3576812\";\"Castries\";\"main\"\n\"3576812\";\"Kastri\";\"other\"\n\"3576812\";\"Kastris\";\"other\"\n\"3576812\";\"Port Castries\";\"other\"\n\"3576812\";\"kaeseuteuliseu\";\"other\"\n\"3576812\";\"kasutorizu\";\"other\"\n\"3576812\";\"qstrys\";\"other\"\n\"3576812\";\"Κάστρις\";\"other\"\n\"3576812\";\"Кастри\";\"other\"\n\"3576812\";\"קסטריס\";\"other\"\n\"3576812\";\"ካስትሪስ\";\"other\"\n\"3576812\";\"カストリーズ\";\"other\"\n\"3576812\";\"캐스트리스\";\"other\"\n\"3576854\";\"Bisée\";\"main\"\n\"3576854\";\"Bisee\";\"ascii\"\n\"3576894\";\"Anse La Raye\";\"main\"\n\"3576894\";\"La Raye\";\"other\"\n\"3042030\";\"Vaduz\";\"main\"\n\"3042030\";\"Bantouz\";\"other\"\n\"3042030\";\"Vaduc\";\"other\"\n\"3042030\";\"Vaducas\";\"other\"\n\"3042030\";\"Vaduzo\";\"other\"\n\"3042030\";\"fado~utsu\";\"other\"\n\"3042030\";\"paducheu\";\"other\"\n\"3042030\";\"vadutsi\";\"other\"\n\"3042030\";\"wa dou zi\";\"other\"\n\"3042030\";\"Βαντούζ\";\"other\"\n\"3042030\";\"Вадуц\";\"other\"\n\"3042030\";\"פאדוץ\";\"other\"\n\"3042030\";\"ვადუცი\";\"other\"\n\"3042030\";\"ፋዱጽ\";\"other\"\n\"3042030\";\"ファドゥーツ\";\"other\"\n\"3042030\";\"瓦都茲\";\"other\"\n\"3042030\";\"파두츠\";\"other\"\n\"3042033\";\"Triesenberg\";\"main\"\n\"3042033\";\"torizenberuku\";\"other\"\n\"3042033\";\"トリーゼンベルク\";\"other\"\n\"3042035\";\"Triesen\";\"main\"\n\"3042035\";\"torizen\";\"other\"\n\"3042035\";\"トリーゼン\";\"other\"\n\"3042037\";\"Schellenberg\";\"main\"\n\"3042037\";\"sherenberuku\";\"other\"\n\"3042037\";\"シェレンベルク\";\"other\"\n\"3042041\";\"Schaan\";\"main\"\n\"3042041\";\"Schan\";\"other\"\n\"3042041\";\"shan\";\"other\"\n\"3042041\";\"شان\";\"other\"\n\"3042041\";\"シャーン\";\"other\"\n\"3042046\";\"Ruggell\";\"main\"\n\"3042046\";\"Rugell\";\"other\"\n\"3042046\";\"Ruggell'\";\"other\"\n\"3042046\";\"ruggeru\";\"other\"\n\"3042046\";\"Руггелль\";\"other\"\n\"3042046\";\"ルッゲル\";\"other\"\n\"3042049\";\"Planken\";\"main\"\n\"3042049\";\"Blanken\";\"other\"\n\"3042049\";\"puranken\";\"other\"\n\"3042049\";\"Планкен\";\"other\"\n\"3042049\";\"プランケン\";\"other\"\n\"3042055\";\"Mauren\";\"main\"\n\"3042055\";\"Mauern\";\"other\"\n\"3042055\";\"mauren\";\"other\"\n\"3042055\";\"マウレン\";\"other\"\n\"3042062\";\"Gamprin\";\"main\"\n\"3042062\";\"Gambrin\";\"other\"\n\"3042062\";\"Gamprin-Bendern\";\"other\"\n\"3042062\";\"ganpurin\";\"other\"\n\"3042062\";\"Гамприн\";\"other\"\n\"3042062\";\"ガンプリン\";\"other\"\n\"3042068\";\"Eschen\";\"main\"\n\"3042068\";\"esshen\";\"other\"\n\"3042068\";\"エッシェン\";\"other\"\n\"3042073\";\"Balzers\";\"main\"\n\"3042073\";\"baruzasu\";\"other\"\n\"3042073\";\"バルザース\";\"other\"\n\"1223648\";\"Welisara\";\"main\"\n\"1223738\";\"Weligama\";\"main\"\n\"1224061\";\"Wattegama\";\"main\"\n\"1224085\";\"Wattala\";\"main\"\n\"1225018\";\"Vavuniya\";\"main\"\n\"1225018\";\"Vavunija\";\"other\"\n\"1225018\";\"Vavuniya Town\";\"other\"\n\"1225018\";\"Вавуния\";\"other\"\n\"1225142\";\"Valvedditturai\";\"main\"\n\"1225142\";\"Valvettithurai\";\"other\"\n\"1225142\";\"Valvettiturai\";\"other\"\n\"1226260\";\"Trincomalee\";\"main\"\n\"1226260\";\"Trikunamalaja\";\"other\"\n\"1226260\";\"Trincomali\";\"other\"\n\"1226260\";\"Trinkomali\";\"other\"\n\"1226260\";\"ting ke ma li\";\"other\"\n\"1226260\";\"tirukkonamalai\";\"other\"\n\"1226260\";\"trynkwmaly\";\"other\"\n\"1226260\";\"Тринкомали\";\"other\"\n\"1226260\";\"ترينكومالي\";\"other\"\n\"1226260\";\"திருக்கோணமலை\";\"other\"\n\"1226260\";\"亭可马里\";\"other\"\n\"1227037\";\"Tangalla\";\"main\"\n\"1227037\";\"Tangalle\";\"other\"\n\"1227300\";\"Talawakele\";\"main\"\n\"1227300\";\"Talawakele Town\";\"other\"\n\"1228051\";\"Sigiriya\";\"main\"\n\"1228730\";\"Ratnapura\";\"main\"\n\"1228730\";\"Ratnapury\";\"other\"\n\"1228730\";\"Ратнапуры\";\"other\"\n\"1229293\";\"Puttalam\";\"main\"\n\"1229901\";\"Polonnaruwa\";\"main\"\n\"1229901\";\"Polonnaruva\";\"other\"\n\"1229901\";\"Polonnâruvâ\";\"other\"\n\"1229901\";\"polannaruvai\";\"other\"\n\"1229901\";\"Полоннарува\";\"other\"\n\"1229901\";\"பொலன்னறுவை\";\"other\"\n\"1229989\";\"Point Pedro\";\"main\"\n\"1229989\";\"Pojnt-Pedro\";\"other\"\n\"1229989\";\"paruttitturai\";\"other\"\n\"1229989\";\"Пойнт-Педро\";\"other\"\n\"1229989\";\"பருத்தித்துறை\";\"other\"\n\"1230089\";\"Pita Kotte\";\"main\"\n\"1230613\";\"Peliyagoda\";\"main\"\n\"1231410\";\"Panadura\";\"main\"\n\"1231410\";\"Panadure\";\"other\"\n\"1231410\";\"Pandura\";\"other\"\n\"1232783\";\"Nuwara Eliya\";\"main\"\n\"1232783\";\"Nuwara Eliya Town\";\"other\"\n\"1232783\";\"Nuwari-Eliya\";\"other\"\n\"1233369\";\"Negombo\";\"main\"\n\"1233369\";\"Негомбо\";\"other\"\n\"1234378\";\"Mulleriyawa\";\"main\"\n\"1234633\";\"Moratuwa\";\"main\"\n\"1234808\";\"Monaragala\";\"main\"\n\"1234808\";\"Monaragalla\";\"other\"\n\"1234808\";\"Moneragala\";\"other\"\n\"1235000\";\"Minuwangoda\";\"main\"\n\"1235846\";\"Matara\";\"main\"\n\"1235846\";\"Матара\";\"other\"\n\"1236854\";\"Maharagama\";\"main\"\n\"1237980\";\"Kurunegala\";\"main\"\n\"1237980\";\"Kornegalle\";\"other\"\n\"1237980\";\"Kurunegald\";\"other\"\n\"1237980\";\"Курунегала\";\"other\"\n\"1238427\";\"Kuliyapitiya\";\"main\"\n\"1238992\";\"Sri Jayewardenepura Kotte\";\"main\"\n\"1238992\";\"Kolompo\";\"other\"\n\"1238992\";\"Kotte\";\"other\"\n\"1238992\";\"Shri-Dzhajavardenepura-Kotte\";\"other\"\n\"1238992\";\"Sri Dzajavardenepura\";\"other\"\n\"1238992\";\"Sri Jayavardhanapura\";\"other\"\n\"1238992\";\"Sri Jayawardenapura\";\"other\"\n\"1238992\";\"Sri Jayawardenepura\";\"other\"\n\"1238992\";\"Sri Jayawardenepura Kotte\";\"other\"\n\"1238992\";\"Sri Jayewardanapura Kotte\";\"other\"\n\"1238992\";\"Sri Jayewardanepura\";\"other\"\n\"1238992\";\"Sri Jayewardanepura Kotte\";\"other\"\n\"1238992\";\"kotte\";\"other\"\n\"1238992\";\"seulijayawaleudanapula\";\"other\"\n\"1238992\";\"surijayawarudanapurakotte\";\"other\"\n\"1238992\";\"Šri Džajavardenepura\";\"other\"\n\"1238992\";\"Κολόμπο\";\"other\"\n\"1238992\";\"Шри-Джаяварденепура-Котте\";\"other\"\n\"1238992\";\"கோட்டே\";\"other\"\n\"1238992\";\"スリジャヤワルダナプラコッテ\";\"other\"\n\"1238992\";\"스리자야와르다나푸라\";\"other\"\n\"1239047\";\"Kotikawatta\";\"main\"\n\"1239593\";\"Kolonnawa\";\"main\"\n\"1240372\";\"Kilinochchi\";\"main\"\n\"1240372\";\"Killinochchi\";\"other\"\n\"1240622\";\"Kelaniya\";\"main\"\n\"1240622\";\"Kelanai\";\"other\"\n\"1240935\";\"Katunayaka North\";\"main\"\n\"1240935\";\"Katunayaka\";\"other\"\n\"1240935\";\"Katunayake\";\"other\"\n\"1241622\";\"Kandy\";\"main\"\n\"1241622\";\"Kandi\";\"other\"\n\"1241622\";\"Mahanurora\";\"other\"\n\"1241622\";\"Mahanuvara\";\"other\"\n\"1241622\";\"Mahanuwara\";\"other\"\n\"1241622\";\"kandy\";\"other\"\n\"1241622\";\"kang ti\";\"other\"\n\"1241622\";\"kanti\";\"other\"\n\"1241622\";\"Канди\";\"other\"\n\"1241622\";\"كاندي\";\"other\"\n\"1241622\";\"கண்டி\";\"other\"\n\"1241622\";\"සෙංකඩගල\";\"other\"\n\"1241622\";\"康提\";\"other\"\n\"1241750\";\"Kandana\";\"main\"\n\"1241964\";\"Kalutara\";\"main\"\n\"1241964\";\"Kalutara South\";\"other\"\n\"1241964\";\"Калутара\";\"other\"\n\"1242110\";\"Kalmunai\";\"main\"\n\"1242571\";\"Kadugannawa\";\"main\"\n\"1242571\";\"Kadugawnawa\";\"other\"\n\"1242833\";\"Jaffna\";\"main\"\n\"1242833\";\"Dzhafna\";\"other\"\n\"1242833\";\"Jaffna Town\";\"other\"\n\"1242833\";\"yalppanam\";\"other\"\n\"1242833\";\"Джафна\";\"other\"\n\"1242833\";\"யாழ்ப்பாணம்\";\"other\"\n\"1242835\";\"Ja Ela\";\"main\"\n\"1243867\";\"Horana South\";\"main\"\n\"1243867\";\"Horana\";\"other\"\n\"1243936\";\"Homagama\";\"main\"\n\"1244178\";\"Hikkaduwa\";\"main\"\n\"1244178\";\"Khikkaduva\";\"other\"\n\"1244178\";\"Хиккадува\";\"other\"\n\"1244397\";\"Hendala\";\"main\"\n\"1244596\";\"Hatton\";\"main\"\n\"1244713\";\"Haputale\";\"main\"\n\"1244713\";\"Haputale Town\";\"other\"\n\"1244773\";\"Hanwella Ihala\";\"main\"\n\"1246000\";\"Gampola\";\"main\"\n\"1246000\";\"Gampola Town\";\"other\"\n\"1246007\";\"Gampaha\";\"main\"\n\"1246294\";\"Galle\";\"main\"\n\"1246294\";\"Galla\";\"other\"\n\"1246294\";\"kali\";\"other\"\n\"1246294\";\"Галле\";\"other\"\n\"1246294\";\"காலி\";\"other\"\n\"1246321\";\"Galkissa\";\"main\"\n\"1246924\";\"Eravur Town\";\"main\"\n\"1246924\";\"Ehravure\";\"other\"\n\"1246924\";\"Eraur\";\"other\"\n\"1246924\";\"Eravur\";\"other\"\n\"1246924\";\"Эравуре\";\"other\"\n\"1248749\";\"Dambulla\";\"main\"\n\"1248749\";\"Dambul\";\"other\"\n\"1248749\";\"tampullai porkovil\";\"other\"\n\"1248749\";\"Дамбулла\";\"other\"\n\"1248749\";\"தம்புள்ளை பொற்கோவில்\";\"other\"\n\"1248991\";\"Colombo\";\"main\"\n\"1248991\";\"Columbo\";\"other\"\n\"1248991\";\"Kolombas\";\"other\"\n\"1248991\";\"Kolombo\";\"other\"\n\"1248991\";\"ke lun po\";\"other\"\n\"1248991\";\"kholambo\";\"other\"\n\"1248991\";\"kolambo\";\"other\"\n\"1248991\";\"kollombo\";\"other\"\n\"1248991\";\"kolumpu\";\"other\"\n\"1248991\";\"koronbo\";\"other\"\n\"1248991\";\"kwlwmbw\";\"other\"\n\"1248991\";\"qwlwmbw\";\"other\"\n\"1248991\";\"Коломбо\";\"other\"\n\"1248991\";\"קולומבו\";\"other\"\n\"1248991\";\"كولومبو\";\"other\"\n\"1248991\";\"कोलंबो\";\"other\"\n\"1248991\";\"கொழும்பு\";\"other\"\n\"1248991\";\"කොළඹ\";\"other\"\n\"1248991\";\"ෙකාළඹ\";\"other\"\n\"1248991\";\"โคลัมโบ\";\"other\"\n\"1248991\";\"ኮሎምቦ\";\"other\"\n\"1248991\";\"コロンボ\";\"other\"\n\"1248991\";\"可倫坡\";\"other\"\n\"1248991\";\"콜롬보\";\"other\"\n\"1249145\";\"Chilaw\";\"main\"\n\"1249145\";\"Chilan\";\"other\"\n\"1249145\";\"Chilaw Town\";\"other\"\n\"1249931\";\"Beruwala\";\"main\"\n\"1249978\";\"Bentota\";\"main\"\n\"1249978\";\"Бентота\";\"other\"\n\"1250161\";\"Batticaloa\";\"main\"\n\"1250161\";\"Batticoloa\";\"other\"\n\"1250161\";\"Battikaloa\";\"other\"\n\"1250161\";\"Madakalapuva\";\"other\"\n\"1250161\";\"Madakalapuwra\";\"other\"\n\"1250161\";\"Maddakkalabbu\";\"other\"\n\"1250161\";\"batykalwa\";\"other\"\n\"1250161\";\"mattakkalappu\";\"other\"\n\"1250161\";\"Баттикалоа\";\"other\"\n\"1250161\";\"باتيكالوا\";\"other\"\n\"1250161\";\"மட்டக்களப்பு\";\"other\"\n\"1250164\";\"Battaramulla South\";\"main\"\n\"1250164\";\"Battaramulla\";\"other\"\n\"1250615\";\"Badulla\";\"main\"\n\"1250615\";\"Badully\";\"other\"\n\"1250615\";\"Бадуллы\";\"other\"\n\"1251081\";\"Anuradhapura\";\"main\"\n\"1251081\";\"Aneuradhapura\";\"other\"\n\"1251081\";\"Anuradhapur\";\"other\"\n\"1251081\";\"Anuradhapura Town\";\"other\"\n\"1251081\";\"Anurâdhapura\";\"other\"\n\"1251081\";\"a nu la de pu lei wang guo\";\"other\"\n\"1251081\";\"anuradapura\";\"other\"\n\"1251081\";\"anuradkhapura\";\"other\"\n\"1251081\";\"anuratapuram\";\"other\"\n\"1251081\";\"Анурадхапура\";\"other\"\n\"1251081\";\"அனுராதபுரம்\";\"other\"\n\"1251081\";\"アヌラダープラ\";\"other\"\n\"1251081\";\"阿努拉德普勒王國\";\"other\"\n\"1251459\";\"Ampara\";\"main\"\n\"1251459\";\"Amparai\";\"other\"\n\"1251459\";\"Ampari\";\"other\"\n\"1251574\";\"Ambalangoda\";\"main\"\n\"1251574\";\"Ambalangoddi\";\"other\"\n\"6285792\";\"Horawala Junction\";\"main\"\n\"2272491\";\"Zwedru\";\"main\"\n\"2272491\";\"Tchien\";\"other\"\n\"2272491\";\"Zvedru\";\"other\"\n\"2272491\";\"Zwadhru\";\"other\"\n\"2272491\";\"Зведру\";\"other\"\n\"2272790\";\"New Yekepa\";\"main\"\n\"2272790\";\"Lamco\";\"other\"\n\"2272790\";\"Lamco Community\";\"other\"\n\"2272790\";\"Yekepa\";\"other\"\n\"2273312\";\"Voinjama\";\"main\"\n\"2273312\";\"Voinyamai\";\"other\"\n\"2273312\";\"Vonjama\";\"other\"\n\"2273435\";\"Tubmanburg\";\"main\"\n\"2273435\";\"Bomi Hills\";\"other\"\n\"2273435\";\"Vai Tieda\";\"other\"\n\"2273435\";\"Vaitown\";\"other\"\n\"2273638\";\"Fish Town\";\"main\"\n\"2273638\";\"Datoda\";\"other\"\n\"2273638\";\"Tendekehn\";\"other\"\n\"2274129\";\"Sanniquellie\";\"main\"\n\"2274129\";\"Sanaquelli\";\"other\"\n\"2274129\";\"Sangbui\";\"other\"\n\"2274129\";\"Saniquellie\";\"other\"\n\"2274129\";\"Sanniguellie\";\"other\"\n\"2274129\";\"Sanokole\";\"other\"\n\"2274129\";\"Sanokwele\";\"other\"\n\"2274129\";\"Sanokwelle\";\"other\"\n\"2274129\";\"Sanoquelli\";\"other\"\n\"2274129\";\"Sanquilly\";\"other\"\n\"2274129\";\"Senbui\";\"other\"\n\"2274275\";\"Robertsport\";\"main\"\n\"2274275\";\"Port Robert\";\"other\"\n\"2274275\";\"Robert Port\";\"other\"\n\"2274275\";\"Robertson\";\"other\"\n\"2274275\";\"Robertstown\";\"other\"\n\"2274288\";\"River Cess\";\"main\"\n\"2274288\";\"Cesstos City\";\"other\"\n\"2274288\";\"Niboinkui\";\"other\"\n\"2274288\";\"River Cess Settlement\";\"other\"\n\"2274288\";\"Rivercess\";\"other\"\n\"2274895\";\"Monrovia\";\"main\"\n\"2274895\";\"Monrobia\";\"other\"\n\"2274895\";\"Monrovija\";\"other\"\n\"2274895\";\"Monrovio\";\"other\"\n\"2274895\";\"Monrowia\";\"other\"\n\"2274895\";\"Monróvia\";\"other\"\n\"2274895\";\"Monróvía\";\"other\"\n\"2274895\";\"manrwwya\";\"other\"\n\"2274895\";\"meng luo wei ya\";\"other\"\n\"2274895\";\"monlobia\";\"other\"\n\"2274895\";\"monrobia\";\"other\"\n\"2274895\";\"mwnrwbyh\";\"other\"\n\"2274895\";\"mwnrwfya\";\"other\"\n\"2274895\";\"Μονρόβια\";\"other\"\n\"2274895\";\"Монровия\";\"other\"\n\"2274895\";\"Монровија\";\"other\"\n\"2274895\";\"מונרוביה\";\"other\"\n\"2274895\";\"مانروویا\";\"other\"\n\"2274895\";\"مونروفيا\";\"other\"\n\"2274895\";\"ሞንሮቪያ\";\"other\"\n\"2274895\";\"モンロビア\";\"other\"\n\"2274895\";\"蒙罗维亚\";\"other\"\n\"2274895\";\"蒙羅維亞\";\"other\"\n\"2274895\";\"몬로비아\";\"other\"\n\"2276086\";\"Kakata\";\"main\"\n\"2276492\";\"Harper\";\"main\"\n\"2276492\";\"Cape Palmas\";\"other\"\n\"2276600\";\"Greenville\";\"main\"\n\"2276600\";\"Sino\";\"other\"\n\"2276600\";\"Sinoe\";\"other\"\n\"2276600\";\"Sinu\";\"other\"\n\"2276600\";\"Sinu Village\";\"other\"\n\"2277060\";\"Gbarnga\";\"main\"\n\"2277060\";\"Gbanga\";\"other\"\n\"2277060\";\"Gbanka\";\"other\"\n\"2277060\";\"Gbarnge\";\"other\"\n\"2277060\";\"Gbarnka\";\"other\"\n\"2277060\";\"Гбарнге\";\"other\"\n\"2277197\";\"Ganta\";\"main\"\n\"2278158\";\"Buchanan\";\"main\"\n\"2278158\";\"B'jukenen\";\"other\"\n\"2278158\";\"Fish Town\";\"other\"\n\"2278158\";\"Grand Bassa\";\"other\"\n\"2278158\";\"Lower Buchanan\";\"other\"\n\"2278158\";\"Бьюкенен\";\"other\"\n\"2278248\";\"Bopolu\";\"main\"\n\"2278248\";\"Bopora\";\"other\"\n\"2278248\";\"Boporo\";\"other\"\n\"2278682\";\"Bensonville\";\"main\"\n\"2278682\";\"Bentol\";\"other\"\n\"2278682\";\"Bentol City\";\"other\"\n\"2278682\";\"Бенсонвилле\";\"other\"\n\"2278889\";\"Barclayville\";\"main\"\n\"2278889\";\"Barlayville\";\"other\"\n\"932035\";\"Teyateyaneng\";\"main\"\n\"932183\";\"Quthing\";\"main\"\n\"932183\";\"Cguting\";\"other\"\n\"932183\";\"Moyeni\";\"other\"\n\"932183\";\"Цгутинг\";\"other\"\n\"932218\";\"Qacha’s Nek\";\"main\"\n\"932218\";\"Qacha's Nek\";\"ascii\"\n\"932218\";\"Qacha's Neck\";\"other\"\n\"932218\";\"Qacha's Nek Residency\";\"other\"\n\"932218\";\"Qachas Nek Camp\";\"other\"\n\"932218\";\"Qachasnek Camp\";\"other\"\n\"932218\";\"Qacha’s Neck\";\"other\"\n\"932218\";\"Qacha’s Nek Residency\";\"other\"\n\"932416\";\"Mokhotlong\";\"main\"\n\"932416\";\"Мохотлонг\";\"other\"\n\"932438\";\"Mohale’s Hoek\";\"main\"\n\"932438\";\"Mohale's Hoek\";\"ascii\"\n\"932505\";\"Maseru\";\"main\"\n\"932505\";\"Maserou\";\"other\"\n\"932505\";\"ma sai lu\";\"other\"\n\"932505\";\"ma se ru\";\"other\"\n\"932505\";\"maselu\";\"other\"\n\"932505\";\"maseru\";\"other\"\n\"932505\";\"masrw\";\"other\"\n\"932505\";\"masyrw\";\"other\"\n\"932505\";\"msrw\";\"other\"\n\"932505\";\"Μασερού\";\"other\"\n\"932505\";\"Масеру\";\"other\"\n\"932505\";\"מסרו\";\"other\"\n\"932505\";\"ماسرو\";\"other\"\n\"932505\";\"ماسيرو\";\"other\"\n\"932505\";\"มาเซรู\";\"other\"\n\"932505\";\"መሴሩ\";\"other\"\n\"932505\";\"マセル\";\"other\"\n\"932505\";\"马塞卢\";\"other\"\n\"932505\";\"마세루\";\"other\"\n\"932521\";\"Maputsoe\";\"main\"\n\"932614\";\"Mafeteng\";\"main\"\n\"932698\";\"Leribe\";\"main\"\n\"932698\";\"Hlotse\";\"other\"\n\"932698\";\"Лерибе\";\"other\"\n\"932886\";\"Butha-Buthe\";\"main\"\n\"932886\";\"Buta-Buteh\";\"other\"\n\"932886\";\"Бута-Бутэ\";\"other\"\n\"1106835\";\"Thaba-Tseka\";\"main\"\n\"1106835\";\"Taba-Ceka\";\"other\"\n\"1106835\";\"Таба-Цека\";\"other\"\n\"592778\";\"Žiežmariai\";\"main\"\n\"592778\";\"Ziezmariai\";\"ascii\"\n\"592778\";\"ZHEZHMARJAJ\";\"other\"\n\"592778\";\"Zeizmariai\";\"other\"\n\"592778\";\"Zhezhmaryay\";\"other\"\n\"592778\";\"Zhiyezhmaryai\";\"other\"\n\"592778\";\"Zhizhmory\";\"other\"\n\"592778\";\"Ziezmariu\";\"other\"\n\"592778\";\"Zizmariai\";\"other\"\n\"592778\";\"Zyzmory\";\"other\"\n\"592778\";\"Żyżmory\";\"other\"\n\"592778\";\"Žeižmariai\";\"other\"\n\"592778\";\"Žiežmarių\";\"other\"\n\"592778\";\"Žižmariai\";\"other\"\n\"592778\";\"ЖЕЖМАРЯЙ\";\"other\"\n\"592828\";\"Žemaičių Naumiestis\";\"main\"\n\"592828\";\"Zemaiciu Naumiestis\";\"ascii\"\n\"592828\";\"Naumiescio\";\"other\"\n\"592828\";\"Naumiestis Taurag\";\"other\"\n\"592828\";\"Naumiesčio\";\"other\"\n\"592828\";\"Nowe Miasto\";\"other\"\n\"592828\";\"ZHEMAJCHJU-NAUMESTIS\";\"other\"\n\"592828\";\"Zhemaychyu-Naumestis\";\"other\"\n\"592828\";\"Zhemaychyu-Naumiyestis\";\"other\"\n\"592828\";\"ЖЕМАЙЧЮ-НАУМЕСТИС\";\"other\"\n\"592891\";\"Zarasai\";\"main\"\n\"592891\";\"Ezerenai\";\"other\"\n\"592891\";\"Ežerėnai\";\"other\"\n\"592891\";\"Jeziorossy\";\"other\"\n\"592891\";\"Jeziorosy\";\"other\"\n\"592891\";\"Novo Aleksandrovsko\";\"other\"\n\"592891\";\"Novo Alexandrovsk\";\"other\"\n\"592891\";\"Novoaleksandrovsk\";\"other\"\n\"592891\";\"ZARASAJ\";\"other\"\n\"592891\";\"Zarasay\";\"other\"\n\"592891\";\"Zarasu\";\"other\"\n\"592891\";\"Zarasų\";\"other\"\n\"592891\";\"Zargrad\";\"other\"\n\"592891\";\"ЗАРАСАЙ\";\"other\"\n\"592942\";\"Žagarė\";\"main\"\n\"592942\";\"Zagare\";\"ascii\"\n\"592942\";\"Zagares\";\"other\"\n\"592942\";\"Zagory\";\"other\"\n\"592942\";\"Zhagare\";\"other\"\n\"592942\";\"Žagarės\";\"other\"\n\"593063\";\"Visaginas\";\"main\"\n\"593063\";\"Snechkus\";\"other\"\n\"593063\";\"Snieckus\";\"other\"\n\"593063\";\"Sniečkus\";\"other\"\n\"593063\";\"Visagina\";\"other\"\n\"593063\";\"Wisaginia\";\"other\"\n\"593063\";\"visaginas\";\"other\"\n\"593063\";\"Висагинас\";\"other\"\n\"593086\";\"Virbalis\";\"main\"\n\"593086\";\"VIRBALIS\";\"other\"\n\"593086\";\"Wierzbolowo\";\"other\"\n\"593086\";\"Wierzbowo\";\"other\"\n\"593086\";\"Wierzbołowo\";\"other\"\n\"593086\";\"Wirballen\";\"other\"\n\"593086\";\"ВИРБАЛИС\";\"other\"\n\"593116\";\"Vilnius\";\"main\"\n\"593116\";\"Bilna\";\"other\"\n\"593116\";\"Bilnious\";\"other\"\n\"593116\";\"VIL'NJUS\";\"other\"\n\"593116\";\"Vil'njus\";\"other\"\n\"593116\";\"Vil'no\";\"other\"\n\"593116\";\"Vil'nyus\";\"other\"\n\"593116\";\"Vilna\";\"other\"\n\"593116\";\"Vilnia\";\"other\"\n\"593116\";\"Vilnious\";\"other\"\n\"593116\";\"Vilnjus\";\"other\"\n\"593116\";\"Vilno\";\"other\"\n\"593116\";\"Vilnues\";\"other\"\n\"593116\";\"Vilnus\";\"other\"\n\"593116\";\"Vilnyus\";\"other\"\n\"593116\";\"Vilníus\";\"other\"\n\"593116\";\"Vilnüs\";\"other\"\n\"593116\";\"Viļņa\";\"other\"\n\"593116\";\"Vílnius\";\"other\"\n\"593116\";\"Wilna\";\"other\"\n\"593116\";\"Wilno\";\"other\"\n\"593116\";\"bilnyuseu\";\"other\"\n\"593116\";\"birinyusu\";\"other\"\n\"593116\";\"fylnyws\";\"other\"\n\"593116\";\"vilniusi\";\"other\"\n\"593116\";\"wei er niu si\";\"other\"\n\"593116\";\"wi lni xus\";\"other\"\n\"593116\";\"wylnh\";\"other\"\n\"593116\";\"wylnyws\";\"other\"\n\"593116\";\"Βίλνα\";\"other\"\n\"593116\";\"Βίλνιους\";\"other\"\n\"593116\";\"Βιλνιους\";\"other\"\n\"593116\";\"ВИЛЬНЮС\";\"other\"\n\"593116\";\"Вилнус\";\"other\"\n\"593116\";\"Вилнюс\";\"other\"\n\"593116\";\"Вильнюс\";\"other\"\n\"593116\";\"Виљнус\";\"other\"\n\"593116\";\"Виљњус\";\"other\"\n\"593116\";\"Вільнюс\";\"other\"\n\"593116\";\"Вільня\";\"other\"\n\"593116\";\"Վիլնյուս\";\"other\"\n\"593116\";\"וילנה\";\"other\"\n\"593116\";\"فيلنيوس\";\"other\"\n\"593116\";\"ویلنیوس\";\"other\"\n\"593116\";\"วิลนีอุส\";\"other\"\n\"593116\";\"ვილნიუსი\";\"other\"\n\"593116\";\"ቪልኒውስ\";\"other\"\n\"593116\";\"ビリニュス\";\"other\"\n\"593116\";\"维尔纽斯\";\"other\"\n\"593116\";\"빌뉴스\";\"other\"\n\"593144\";\"Vilkija\";\"main\"\n\"593144\";\"Vil'kiya\";\"other\"\n\"593144\";\"Vilki\";\"other\"\n\"593144\";\"Vilkijos\";\"other\"\n\"593144\";\"Vil’kiya\";\"other\"\n\"593144\";\"Wilki\";\"other\"\n\"593153\";\"Vilkaviškis\";\"main\"\n\"593153\";\"Vilkaviskis\";\"ascii\"\n\"593153\";\"Bilkabiskis\";\"other\"\n\"593153\";\"VIL'KAVISHKIS\";\"other\"\n\"593153\";\"Vilkavishkis\";\"other\"\n\"593153\";\"Vilkaviski\";\"other\"\n\"593153\";\"Vilkaviskio\";\"other\"\n\"593153\";\"Vilkaviškio\";\"other\"\n\"593153\";\"Vilkavišķi\";\"other\"\n\"593153\";\"Wilkowyszki\";\"other\"\n\"593153\";\"Wiłkowyszki\";\"other\"\n\"593153\";\"Wylkowyszki\";\"other\"\n\"593153\";\"Wyłkowyszki\";\"other\"\n\"593153\";\"Βιλκαβίσκις\";\"other\"\n\"593153\";\"ВИЛЬКАВИШКИС\";\"other\"\n\"593153\";\"Вилкавишкис\";\"other\"\n\"593191\";\"Vievis\";\"main\"\n\"593191\";\"Anastasevskaya\";\"other\"\n\"593191\";\"Jewie\";\"other\"\n\"593191\";\"V'yevis\";\"other\"\n\"593191\";\"VEVIS\";\"other\"\n\"593191\";\"Vevis\";\"other\"\n\"593191\";\"Vievio\";\"other\"\n\"593191\";\"Viyevis\";\"other\"\n\"593191\";\"V’yevis\";\"other\"\n\"593191\";\"Yev'ye\";\"other\"\n\"593191\";\"Yev’ye\";\"other\"\n\"593191\";\"ВЕВИС\";\"other\"\n\"593218\";\"Viekšniai\";\"main\"\n\"593218\";\"Vieksniai\";\"ascii\"\n\"593218\";\"V'yekshnyay\";\"other\"\n\"593218\";\"Vekshnya\";\"other\"\n\"593218\";\"Vekshnyay\";\"other\"\n\"593218\";\"Vieksniu\";\"other\"\n\"593218\";\"Viekšnių\";\"other\"\n\"593218\";\"Viyekshnyay\";\"other\"\n\"593218\";\"V’yekshnyay\";\"other\"\n\"593218\";\"Wieksznie\";\"other\"\n\"593303\";\"Venta\";\"main\"\n\"593338\";\"Veisiejai\";\"main\"\n\"593338\";\"VEJSEJAJ\";\"other\"\n\"593338\";\"Veisejai\";\"other\"\n\"593338\";\"Veiseju\";\"other\"\n\"593338\";\"Veisėjai\";\"other\"\n\"593338\";\"Veisėjų\";\"other\"\n\"593338\";\"Veyseyay\";\"other\"\n\"593338\";\"Veyseye\";\"other\"\n\"593338\";\"Veysyay\";\"other\"\n\"593338\";\"Viesee\";\"other\"\n\"593338\";\"Wiejsieje\";\"other\"\n\"593338\";\"ВЕЙСЕЯЙ\";\"other\"\n\"593378\";\"Varniai\";\"main\"\n\"593378\";\"Medininkai\";\"other\"\n\"593378\";\"VARNJAJ\";\"other\"\n\"593378\";\"Varniu\";\"other\"\n\"593378\";\"Varnių\";\"other\"\n\"593378\";\"Varnyay\";\"other\"\n\"593378\";\"Wornie\";\"other\"\n\"593378\";\"ВАРНЯЙ\";\"other\"\n\"593406\";\"Varėna\";\"main\"\n\"593406\";\"Varena\";\"ascii\"\n\"593406\";\"Orany\";\"other\"\n\"593561\";\"Vabalninkas\";\"main\"\n\"593561\";\"VABAL'NINKAS\";\"other\"\n\"593561\";\"Vabalninkai\";\"other\"\n\"593561\";\"Vabalninko\";\"other\"\n\"593561\";\"Vobol'niki\";\"other\"\n\"593561\";\"Vobol’niki\";\"other\"\n\"593561\";\"Wobolniki\";\"other\"\n\"593561\";\"Zabalninkas\";\"other\"\n\"593561\";\"ВАБАЛЬНИНКАС\";\"other\"\n\"593672\";\"Utena\";\"main\"\n\"593672\";\"Outena\";\"other\"\n\"593672\";\"UTENA\";\"other\"\n\"593672\";\"Uciana\";\"other\"\n\"593672\";\"Uciany\";\"other\"\n\"593672\";\"Utenos\";\"other\"\n\"593672\";\"Utyana\";\"other\"\n\"593672\";\"Uzjany\";\"other\"\n\"593672\";\"Ουτένα\";\"other\"\n\"593672\";\"УТЕНА\";\"other\"\n\"593672\";\"Утена\";\"other\"\n\"593733\";\"Ukmergė\";\"main\"\n\"593733\";\"Ukmerge\";\"ascii\"\n\"593733\";\"Oukmernke\";\"other\"\n\"593733\";\"UKMERGE\";\"other\"\n\"593733\";\"Ukmerges\";\"other\"\n\"593733\";\"Ukmergės\";\"other\"\n\"593733\";\"Ukmerģe\";\"other\"\n\"593733\";\"Ukmjarge\";\"other\"\n\"593733\";\"Vilkmerge\";\"other\"\n\"593733\";\"Vilkmergė\";\"other\"\n\"593733\";\"Vilkomir\";\"other\"\n\"593733\";\"Wilkomierz\";\"other\"\n\"593733\";\"Wilkomir\";\"other\"\n\"593733\";\"Wiłkomierz\";\"other\"\n\"593733\";\"Ουκμεργκέ\";\"other\"\n\"593733\";\"УКМЕРГЕ\";\"other\"\n\"593733\";\"Укмерге\";\"other\"\n\"593733\";\"Укмярге\";\"other\"\n\"593746\";\"Tytuvėnėliai\";\"main\"\n\"593746\";\"Tytuveneliai\";\"ascii\"\n\"593746\";\"Titavenay\";\"other\"\n\"593746\";\"Tituvenaj\";\"other\"\n\"593746\";\"Tsitovyany\";\"other\"\n\"593746\";\"Титувенай\";\"other\"\n\"593871\";\"Trakai\";\"main\"\n\"593871\";\"Novyye Troki\";\"other\"\n\"593871\";\"TRAKAJ\";\"other\"\n\"593871\";\"Trakai kommune\";\"other\"\n\"593871\";\"Trakaj\";\"other\"\n\"593871\";\"Trakay\";\"other\"\n\"593871\";\"Troki\";\"other\"\n\"593871\";\"Troki Nove\";\"other\"\n\"593871\";\"Troki Nowe\";\"other\"\n\"593871\";\"Τρακάι\";\"other\"\n\"593871\";\"ТРАКАЙ\";\"other\"\n\"593871\";\"Тракай\";\"other\"\n\"593871\";\"Трокі\";\"other\"\n\"593926\";\"Telšiai\";\"main\"\n\"593926\";\"Telsiai\";\"ascii\"\n\"593926\";\"TEL'SHJAJ\";\"other\"\n\"593926\";\"Tel'shjaj\";\"other\"\n\"593926\";\"Telsai\";\"other\"\n\"593926\";\"Telsche\";\"other\"\n\"593926\";\"Telschen\";\"other\"\n\"593926\";\"Telshay\";\"other\"\n\"593926\";\"Telshi\";\"other\"\n\"593926\";\"Telshyay\";\"other\"\n\"593926\";\"Telsi\";\"other\"\n\"593926\";\"Telsiu\";\"other\"\n\"593926\";\"Telsze\";\"other\"\n\"593926\";\"Telšai\";\"other\"\n\"593926\";\"Telši\";\"other\"\n\"593926\";\"Telšių\";\"other\"\n\"593926\";\"terishiai\";\"other\"\n\"593926\";\"Τελσιάι\";\"other\"\n\"593926\";\"ТЕЛЬШЯЙ\";\"other\"\n\"593926\";\"Тельшяй\";\"other\"\n\"593926\";\"テリシアイ\";\"other\"\n\"593959\";\"Tauragė\";\"main\"\n\"593959\";\"Taurage\";\"ascii\"\n\"593959\";\"Taouranke\";\"other\"\n\"593959\";\"Taurages\";\"other\"\n\"593959\";\"Tauragės\";\"other\"\n\"593959\";\"Tauraģe\";\"other\"\n\"593959\";\"Taurogen\";\"other\"\n\"593959\";\"Tauroggen\";\"other\"\n\"593959\";\"Taurogi\";\"other\"\n\"593959\";\"Ταουραγκέ\";\"other\"\n\"593959\";\"Таураге\";\"other\"\n\"594050\";\"Šventoji\";\"main\"\n\"594050\";\"Sventoji\";\"ascii\"\n\"594050\";\"Schibbe\";\"other\"\n\"594050\";\"Shventoji\";\"other\"\n\"594050\";\"Shventoy\";\"other\"\n\"594050\";\"Shventoyi\";\"other\"\n\"594050\";\"Svent\";\"other\"\n\"594050\";\"Sventa\";\"other\"\n\"594050\";\"Sventoje\";\"other\"\n\"594050\";\"Šventoje\";\"other\"\n\"594050\";\"Швентойи\";\"other\"\n\"594064\";\"Švenčionys\";\"main\"\n\"594064\";\"Svencionys\";\"ascii\"\n\"594064\";\"SHVENCHENIS\";\"other\"\n\"594064\";\"Shvenchenis\";\"other\"\n\"594064\";\"Shvenchionis\";\"other\"\n\"594064\";\"Shvenchënis\";\"other\"\n\"594064\";\"Sventsyany\";\"other\"\n\"594064\";\"Swieciany\";\"other\"\n\"594064\";\"Swięciany\";\"other\"\n\"594064\";\"ШВЕНЧЕНИС\";\"other\"\n\"594067\";\"Švenčionėliai\";\"main\"\n\"594067\";\"Svencioneliai\";\"ascii\"\n\"594067\";\"Nove S'ventsyany\";\"other\"\n\"594067\";\"Nove S’ventsyany\";\"other\"\n\"594067\";\"Novo-Sventsyany\";\"other\"\n\"594067\";\"Novyye S'ventsyany\";\"other\"\n\"594067\";\"Novyye Svenchany\";\"other\"\n\"594067\";\"Novyye S’ventsyany\";\"other\"\n\"594067\";\"Nowe Swieciany\";\"other\"\n\"594067\";\"Nowe Święciany\";\"other\"\n\"594067\";\"Nowo-Swieciany\";\"other\"\n\"594067\";\"Nowo-Swięciany\";\"other\"\n\"594067\";\"SHVENCHENELJAJ\";\"other\"\n\"594067\";\"Shvenchenelyay\";\"other\"\n\"594067\";\"Shvenchënelyay\";\"other\"\n\"594067\";\"ШВЕНЧЕНЕЛЯЙ\";\"other\"\n\"594488\";\"Skuodas\";\"main\"\n\"594488\";\"Schoden\";\"other\"\n\"594488\";\"Skoda\";\"other\"\n\"594488\";\"Skouontas\";\"other\"\n\"594488\";\"Skudoas\";\"other\"\n\"594488\";\"Skuodo\";\"other\"\n\"594488\";\"Szkudy\";\"other\"\n\"594488\";\"Σκουόντας\";\"other\"\n\"594488\";\"Скуодас\";\"other\"\n\"594562\";\"Skaudvilė\";\"main\"\n\"594562\";\"Skaudvile\";\"ascii\"\n\"594562\";\"Bugai\";\"other\"\n\"594562\";\"Būgai\";\"other\"\n\"594562\";\"Скаудвиле\";\"other\"\n\"594607\";\"Širvintos\";\"main\"\n\"594607\";\"Sirvintos\";\"ascii\"\n\"594607\";\"SHIRVINTOS\";\"other\"\n\"594607\";\"Shirvintay\";\"other\"\n\"594607\";\"Shirvintos\";\"other\"\n\"594607\";\"Sirvintai\";\"other\"\n\"594607\";\"Sirvintar\";\"other\"\n\"594607\";\"Sirvintu\";\"other\"\n\"594607\";\"Szyrwinty\";\"other\"\n\"594607\";\"Širvintai\";\"other\"\n\"594607\";\"Širvintar\";\"other\"\n\"594607\";\"Širvintų\";\"other\"\n\"594607\";\"ШИРВИНТОС\";\"other\"\n\"594639\";\"Simnas\";\"main\"\n\"594639\";\"Poselok Simno\";\"other\"\n\"594639\";\"Posëlok Simno\";\"other\"\n\"594639\";\"SIMNAS\";\"other\"\n\"594639\";\"Simno\";\"other\"\n\"594639\";\"СИМНАС\";\"other\"\n\"594656\";\"Šilutė\";\"main\"\n\"594656\";\"Silute\";\"ascii\"\n\"594656\";\"Heidekrug\";\"other\"\n\"594656\";\"Heydekrug\";\"other\"\n\"594656\";\"Heydekrug-Matzicken\";\"other\"\n\"594656\";\"SHILUTE\";\"other\"\n\"594656\";\"Shilute\";\"other\"\n\"594656\";\"Szylokarczma\";\"other\"\n\"594656\";\"Szyłokarczma\";\"other\"\n\"594656\";\"sillute\";\"other\"\n\"594656\";\"Šilute\";\"other\"\n\"594656\";\"ШИЛУТЕ\";\"other\"\n\"594656\";\"실루테\";\"other\"\n\"594693\";\"Šilalė\";\"main\"\n\"594693\";\"Silale\";\"ascii\"\n\"594693\";\"SHILALE\";\"other\"\n\"594693\";\"Shilale\";\"other\"\n\"594693\";\"Silales\";\"other\"\n\"594693\";\"Szyiele\";\"other\"\n\"594693\";\"Szylele\";\"other\"\n\"594693\";\"Šilalės\";\"other\"\n\"594693\";\"ШИЛАЛЕ\";\"other\"\n\"594739\";\"Šiauliai\";\"main\"\n\"594739\";\"Siauliai\";\"ascii\"\n\"594739\";\"Sauli\";\"other\"\n\"594739\";\"Schaulen\";\"other\"\n\"594739\";\"Shaulyay\";\"other\"\n\"594739\";\"Shavli\";\"other\"\n\"594739\";\"Shjauljaj\";\"other\"\n\"594739\";\"Shyaulyay\";\"other\"\n\"594739\";\"Siauliu\";\"other\"\n\"594739\";\"Sokniai\";\"other\"\n\"594739\";\"Szawle\";\"other\"\n\"594739\";\"Šauļi\";\"other\"\n\"594739\";\"Šiaulių\";\"other\"\n\"594739\";\"Шяуляй\";\"other\"\n\"594861\";\"Šeduva\";\"main\"\n\"594861\";\"Seduva\";\"ascii\"\n\"594861\";\"SHEDUVA\";\"other\"\n\"594861\";\"Schadow\";\"other\"\n\"594861\";\"Sedava\";\"other\"\n\"594861\";\"Seduvos\";\"other\"\n\"594861\";\"Sheduva\";\"other\"\n\"594861\";\"Szadow\";\"other\"\n\"594861\";\"Szadów\";\"other\"\n\"594861\";\"Šedava\";\"other\"\n\"594861\";\"Šeduvos\";\"other\"\n\"594861\";\"ШЕДУВА\";\"other\"\n\"594867\";\"Seda\";\"main\"\n\"594867\";\"Sedos\";\"other\"\n\"594867\";\"Siady\";\"other\"\n\"594867\";\"Седа\";\"other\"\n\"595016\";\"Šalčininkai\";\"main\"\n\"595016\";\"Salcininkai\";\"ascii\"\n\"595016\";\"Bol'shiye Solechniki\";\"other\"\n\"595016\";\"Bol’shiye Solechniki\";\"other\"\n\"595016\";\"SHAL'CHININKAJ\";\"other\"\n\"595016\";\"Shal'chininkay\";\"other\"\n\"595016\";\"Shal’chininkay\";\"other\"\n\"595016\";\"Soleczniki Wielkie\";\"other\"\n\"595016\";\"Vel'ke Solechniki\";\"other\"\n\"595016\";\"Velikiye Solechniki\";\"other\"\n\"595016\";\"Velke Solecniki\";\"other\"\n\"595016\";\"Velke Solečniki\";\"other\"\n\"595016\";\"Vel’ke Solechniki\";\"other\"\n\"595016\";\"ШАЛЬЧИНИНКАЙ\";\"other\"\n\"595020\";\"Salantai\";\"main\"\n\"595020\";\"Salantay\";\"other\"\n\"595020\";\"Salantu\";\"other\"\n\"595020\";\"Salanty\";\"other\"\n\"595020\";\"Salantų\";\"other\"\n\"595020\";\"Skilandziai\";\"other\"\n\"595020\";\"Skilándžiai\";\"other\"\n\"595044\";\"Šakiai\";\"main\"\n\"595044\";\"Sakiai\";\"ascii\"\n\"595044\";\"SHAKJAJ\";\"other\"\n\"595044\";\"Sakiu\";\"other\"\n\"595044\";\"Shaki\";\"other\"\n\"595044\";\"Šakių\";\"other\"\n\"595044\";\"ШАКЯЙ\";\"other\"\n\"595087\";\"Rusnė\";\"main\"\n\"595087\";\"Rusne\";\"ascii\"\n\"595087\";\"RUSNE\";\"other\"\n\"595087\";\"Rus\";\"other\"\n\"595087\";\"Russ\";\"other\"\n\"595087\";\"Ruß\";\"other\"\n\"595087\";\"РУСНЕ\";\"other\"\n\"595160\";\"Rūdiškės\";\"main\"\n\"595160\";\"Rudiskes\";\"ascii\"\n\"595160\";\"RUDISHKES\";\"other\"\n\"595160\";\"Rudishkes\";\"other\"\n\"595160\";\"Rudzishki\";\"other\"\n\"595160\";\"Rudziszki\";\"other\"\n\"595160\";\"РУДИШКЕС\";\"other\"\n\"595213\";\"Rokiškis\";\"main\"\n\"595213\";\"Rokiskis\";\"ascii\"\n\"595213\";\"Myasto Rokishkis\";\"other\"\n\"595213\";\"ROKISHKIS\";\"other\"\n\"595213\";\"Rakischki\";\"other\"\n\"595213\";\"Rakishki\";\"other\"\n\"595213\";\"Rakiskis\";\"other\"\n\"595213\";\"Rakiszki\";\"other\"\n\"595213\";\"Rakiškis\";\"other\"\n\"595213\";\"Rokishkis\";\"other\"\n\"595213\";\"Rokiski\";\"other\"\n\"595213\";\"Rokiskio\";\"other\"\n\"595213\";\"Rokiškio\";\"other\"\n\"595213\";\"Rokišķi\";\"other\"\n\"595213\";\"РОКИШКИС\";\"other\"\n\"595213\";\"Рокишкис\";\"other\"\n\"595284\";\"Rietavas\";\"main\"\n\"595284\";\"RETAVAS\";\"other\"\n\"595284\";\"Retavas\";\"other\"\n\"595284\";\"Retowo\";\"other\"\n\"595284\";\"Rietavo\";\"other\"\n\"595284\";\"РЕТАВАС\";\"other\"\n\"595378\";\"Raseiniai\";\"main\"\n\"595378\";\"Raseini\";\"other\"\n\"595378\";\"Raseiniu\";\"other\"\n\"595378\";\"Raseinių\";\"other\"\n\"595378\";\"Raseiņi\";\"other\"\n\"595378\";\"Raseynyay\";\"other\"\n\"595378\";\"Reseiniai\";\"other\"\n\"595378\";\"Rosienie\";\"other\"\n\"595378\";\"Rossienie\";\"other\"\n\"595378\";\"Rossieny\";\"other\"\n\"595378\";\"Rossingen\";\"other\"\n\"595378\";\"Rossiyeny\";\"other\"\n\"595387\";\"Ramygala\";\"main\"\n\"595387\";\"RAMIGALA\";\"other\"\n\"595387\";\"Ramigala\";\"other\"\n\"595387\";\"Ramygalos\";\"other\"\n\"595387\";\"Remigola\";\"other\"\n\"595387\";\"Remigoła\";\"other\"\n\"595387\";\"Remygala\";\"other\"\n\"595387\";\"РАМИГАЛА\";\"other\"\n\"595449\";\"Radviliškis\";\"main\"\n\"595449\";\"Radviliskis\";\"ascii\"\n\"595449\";\"RADVILISHKIS\";\"other\"\n\"595449\";\"Radvilai\";\"other\"\n\"595449\";\"Radvilishkis\";\"other\"\n\"595449\";\"Radviliski\";\"other\"\n\"595449\";\"Radviliskio\";\"other\"\n\"595449\";\"Radviliskis-Nemunelio\";\"other\"\n\"595449\";\"Radvilisks\";\"other\"\n\"595449\";\"Radviliškio\";\"other\"\n\"595449\";\"Radvilišks\";\"other\"\n\"595449\";\"Radvilišķi\";\"other\"\n\"595449\";\"Radziwiliszki\";\"other\"\n\"595449\";\"Rantbiliskis\";\"other\"\n\"595449\";\"Ραντβιλίσκις\";\"other\"\n\"595449\";\"РАДВИЛИШКИС\";\"other\"\n\"595596\";\"Prienai\";\"main\"\n\"595596\";\"PRENAJ\";\"other\"\n\"595596\";\"Prenay\";\"other\"\n\"595596\";\"Preny\";\"other\"\n\"595596\";\"Prieni\";\"other\"\n\"595596\";\"Prienu\";\"other\"\n\"595596\";\"Prienų\";\"other\"\n\"595596\";\"Priyenay\";\"other\"\n\"595596\";\"ПРЕНАЙ\";\"other\"\n\"595598\";\"Priekulė\";\"main\"\n\"595598\";\"Priekule\";\"ascii\"\n\"595598\";\"PREKULE\";\"other\"\n\"595598\";\"Prekule\";\"other\"\n\"595598\";\"Priyekule\";\"other\"\n\"595598\";\"Proekuls\";\"other\"\n\"595598\";\"Prökuls\";\"other\"\n\"595598\";\"ПРЕКУЛЕ\";\"other\"\n\"595689\";\"Plungė\";\"main\"\n\"595689\";\"Plunge\";\"ascii\"\n\"595689\";\"PLUNGE\";\"other\"\n\"595689\";\"Plunges\";\"other\"\n\"595689\";\"Plungiany\";\"other\"\n\"595689\";\"Plungės\";\"other\"\n\"595689\";\"Płungiany\";\"other\"\n\"595689\";\"ПЛУНГЕ\";\"other\"\n\"595997\";\"Pasvalys\";\"main\"\n\"595997\";\"PASVALIS\";\"other\"\n\"595997\";\"Pasvalio\";\"other\"\n\"595997\";\"Pasvalis\";\"other\"\n\"595997\";\"Posvol\";\"other\"\n\"595997\";\"Poswol\";\"other\"\n\"595997\";\"ПАСВАЛИС\";\"other\"\n\"596128\";\"Panevėžys\";\"main\"\n\"596128\";\"Panevezys\";\"ascii\"\n\"596128\";\"PANEVEZHIS\";\"other\"\n\"596128\";\"Paneveza\";\"other\"\n\"596128\";\"Panevezhi\";\"other\"\n\"596128\";\"Panevezhis\";\"other\"\n\"596128\";\"Panevezio\";\"other\"\n\"596128\";\"Panevēža\";\"other\"\n\"596128\";\"Panevėžio\";\"other\"\n\"596128\";\"Panjavezhis\";\"other\"\n\"596128\";\"Ponewesch\";\"other\"\n\"596128\";\"Poniewesch\";\"other\"\n\"596128\";\"Poniewiesh\";\"other\"\n\"596128\";\"Poniewiez\";\"other\"\n\"596128\";\"Poniewież\";\"other\"\n\"596128\";\"pnbz'ys\";\"other\"\n\"596128\";\"ПАНЕВЕЖИС\";\"other\"\n\"596128\";\"Паневежис\";\"other\"\n\"596128\";\"Панявежис\";\"other\"\n\"596128\";\"פנבז'יס\";\"other\"\n\"596238\";\"Palanga\";\"main\"\n\"596238\";\"PALANGA\";\"other\"\n\"596238\";\"Palangos\";\"other\"\n\"596238\";\"Polaga\";\"other\"\n\"596238\";\"Polanga\";\"other\"\n\"596238\";\"Polangen\";\"other\"\n\"596238\";\"Połąga\";\"other\"\n\"596238\";\"palanga\";\"other\"\n\"596238\";\"ПАЛАНГА\";\"other\"\n\"596238\";\"Паланга\";\"other\"\n\"596260\";\"Pakruojis\";\"main\"\n\"596260\";\"Pakruois\";\"other\"\n\"596260\";\"Pakruojo\";\"other\"\n\"596260\";\"Pakruojus\";\"other\"\n\"596260\";\"Pakruoyus\";\"other\"\n\"596399\";\"Pagėgiai\";\"main\"\n\"596399\";\"Pagegiai\";\"ascii\"\n\"596399\";\"PAGEGJAJ\";\"other\"\n\"596399\";\"Pagegyay\";\"other\"\n\"596399\";\"Pagojaus\";\"other\"\n\"596399\";\"Pogegen\";\"other\"\n\"596399\";\"Pojegi\";\"other\"\n\"596399\";\"ПАГЕГЯЙ\";\"other\"\n\"596473\";\"Pabradė\";\"main\"\n\"596473\";\"Pabrade\";\"ascii\"\n\"596473\";\"Maloye Podbrodze\";\"other\"\n\"596473\";\"PABRADE\";\"other\"\n\"596473\";\"ПАБРАДЕ\";\"other\"\n\"596544\";\"Obeliai\";\"main\"\n\"596544\";\"Obeliu\";\"other\"\n\"596544\";\"Obelių\";\"other\"\n\"596544\";\"Obelyay\";\"other\"\n\"596612\";\"Nida\";\"main\"\n\"596612\";\"Neringa\";\"other\"\n\"596612\";\"Nidden\";\"other\"\n\"596612\";\"Нида\";\"other\"\n\"596643\";\"Neringa\";\"main\"\n\"596643\";\"NERINGA\";\"other\"\n\"596643\";\"Preyla\";\"other\"\n\"596643\";\"НЕРИНГА\";\"other\"\n\"596664\";\"Nemenčinė\";\"main\"\n\"596664\";\"Nemencine\";\"ascii\"\n\"596664\";\"NEMENCHINE\";\"other\"\n\"596664\";\"Nemenchin\";\"other\"\n\"596664\";\"Nemenchine\";\"other\"\n\"596664\";\"Nemenchyn\";\"other\"\n\"596664\";\"Niemenczyn\";\"other\"\n\"596664\";\"НЕМЕНЧИНЕ\";\"other\"\n\"596719\";\"Naujoji Akmenė\";\"main\"\n\"596719\";\"Naujoji Akmene\";\"ascii\"\n\"596719\";\"Karpenai\";\"other\"\n\"596719\";\"Karpėnai\";\"other\"\n\"596719\";\"Naougiogi Akmene\";\"other\"\n\"596719\";\"Naujogi-Akmene\";\"other\"\n\"596719\";\"Naujogi-Akmenė\";\"other\"\n\"596719\";\"Nauyeyi-Akmyane\";\"other\"\n\"596719\";\"Nauyëyi-Akmyane\";\"other\"\n\"596719\";\"Nowe Okmiany\";\"other\"\n\"596719\";\"Ναουγιόγι Ακμενέ\";\"other\"\n\"596867\";\"Molėtai\";\"main\"\n\"596867\";\"Moletai\";\"ascii\"\n\"596867\";\"MOLETAJ\";\"other\"\n\"596867\";\"Malaty\";\"other\"\n\"596867\";\"Maletai\";\"other\"\n\"596867\";\"Maletay\";\"other\"\n\"596867\";\"Maletu\";\"other\"\n\"596867\";\"Malyaty\";\"other\"\n\"596867\";\"Malėtai\";\"other\"\n\"596867\";\"Malėtų\";\"other\"\n\"596867\";\"Moletay\";\"other\"\n\"596867\";\"МОЛЕТАЙ\";\"other\"\n\"597188\";\"Mažeikiai\";\"main\"\n\"597188\";\"Mazeikiai\";\"ascii\"\n\"597188\";\"Mazeiki\";\"other\"\n\"597188\";\"Mazeikiu\";\"other\"\n\"597188\";\"Mazhejkjaj\";\"other\"\n\"597188\";\"Mazheykyay\";\"other\"\n\"597188\";\"Mažeikių\";\"other\"\n\"597188\";\"Mažeiķi\";\"other\"\n\"597188\";\"Mozejki\";\"other\"\n\"597188\";\"Możejki\";\"other\"\n\"597188\";\"Muravjovo\";\"other\"\n\"597188\";\"Murawlewo\";\"other\"\n\"597188\";\"Μαζεϊκιάι\";\"other\"\n\"597188\";\"Мажейкяй\";\"other\"\n\"597231\";\"Marijampolė\";\"main\"\n\"597231\";\"Marijampole\";\"ascii\"\n\"597231\";\"Kapsukas\";\"other\"\n\"597231\";\"MARIJAMPOLE\";\"other\"\n\"597231\";\"Mariampol\";\"other\"\n\"597231\";\"Mariampol'\";\"other\"\n\"597231\";\"Mariampole\";\"other\"\n\"597231\";\"Mariampoles\";\"other\"\n\"597231\";\"Mariampolė\";\"other\"\n\"597231\";\"Mariampolės\";\"other\"\n\"597231\";\"Mariampol’\";\"other\"\n\"597231\";\"Marigiampole\";\"other\"\n\"597231\";\"Mariyampol'\";\"other\"\n\"597231\";\"Mariyampole\";\"other\"\n\"597231\";\"Mariyampol’\";\"other\"\n\"597231\";\"Marjampol\";\"other\"\n\"597231\";\"Pasesupiai\";\"other\"\n\"597231\";\"Pašešupiai\";\"other\"\n\"597231\";\"Starapole\";\"other\"\n\"597231\";\"Starapolė\";\"other\"\n\"597231\";\"Μαριγιαμπολέ\";\"other\"\n\"597231\";\"МАРИЯМПОЛЕ\";\"other\"\n\"597231\";\"Мариямполе\";\"other\"\n\"597440\";\"Linkuva\";\"main\"\n\"597440\";\"Linkuvos\";\"other\"\n\"597440\";\"Линкува\";\"other\"\n\"597532\";\"Lentvaris\";\"main\"\n\"597532\";\"LENTVARIS\";\"other\"\n\"597532\";\"Landvaruv\";\"other\"\n\"597532\";\"Landwarow\";\"other\"\n\"597532\";\"Landwarów\";\"other\"\n\"597532\";\"Lentvaravas\";\"other\"\n\"597532\";\"Liudvtvaras\";\"other\"\n\"597532\";\"Liutavariskes\";\"other\"\n\"597532\";\"Liutavariškės\";\"other\"\n\"597532\";\"Lyandvarovo\";\"other\"\n\"597532\";\"Lyandvaruv\";\"other\"\n\"597532\";\"ЛЕНТВАРИС\";\"other\"\n\"597596\";\"Lazdijai\";\"main\"\n\"597596\";\"LAZDIJAJ\";\"other\"\n\"597596\";\"Lazdijaj\";\"other\"\n\"597596\";\"Lazdiji\";\"other\"\n\"597596\";\"Lazdiyay\";\"other\"\n\"597596\";\"Lazdyyay\";\"other\"\n\"597596\";\"Lazntigiai\";\"other\"\n\"597596\";\"Loz'dzeye\";\"other\"\n\"597596\";\"Lozdzieje\";\"other\"\n\"597596\";\"Loz’dzeye\";\"other\"\n\"597596\";\"Lożdzieje\";\"other\"\n\"597596\";\"Łoździeje\";\"other\"\n\"597596\";\"Λαζντιγιάι\";\"other\"\n\"597596\";\"ЛАЗДИЯЙ\";\"other\"\n\"597596\";\"Лаздияй\";\"other\"\n\"597729\";\"Kybartai\";\"main\"\n\"597729\";\"KIBARTAJ\";\"other\"\n\"597729\";\"Kibartay\";\"other\"\n\"597729\";\"Kibarty\";\"other\"\n\"597729\";\"Kybartu\";\"other\"\n\"597729\";\"Kybartų\";\"other\"\n\"597729\";\"КИБАРТАЙ\";\"other\"\n\"597769\";\"Kuršėnai\";\"main\"\n\"597769\";\"Kursenai\";\"ascii\"\n\"597769\";\"KURSHENAJ\";\"other\"\n\"597769\";\"Koursenai\";\"other\"\n\"597769\";\"Kurseni\";\"other\"\n\"597769\";\"Kurshchenay\";\"other\"\n\"597769\";\"Kurshenaj\";\"other\"\n\"597769\";\"Kurshenay\";\"other\"\n\"597769\";\"Kurszany\";\"other\"\n\"597769\";\"Kurzenu\";\"other\"\n\"597769\";\"Kuršēni\";\"other\"\n\"597769\";\"Kuržėnų\";\"other\"\n\"597769\";\"Κουρσέναι\";\"other\"\n\"597769\";\"Κουρσενάι\";\"other\"\n\"597769\";\"КУРШЕНАЙ\";\"other\"\n\"597769\";\"Куршенай\";\"other\"\n\"597806\";\"Kupiškis\";\"main\"\n\"597806\";\"Kupiskis\";\"ascii\"\n\"597806\";\"KUPISHKIS\";\"other\"\n\"597806\";\"Koupiskis\";\"other\"\n\"597806\";\"Kupishki\";\"other\"\n\"597806\";\"Kupishkis\";\"other\"\n\"597806\";\"Kupiskio\";\"other\"\n\"597806\";\"Kupiszki\";\"other\"\n\"597806\";\"Kupiškio\";\"other\"\n\"597806\";\"Myasto Kupishkis\";\"other\"\n\"597806\";\"Κουπίσκις\";\"other\"\n\"597806\";\"КУПИШКИС\";\"other\"\n\"597881\";\"Kulautuva\";\"main\"\n\"597881\";\"Dachi Kolotovo\";\"other\"\n\"597881\";\"Dachios Kolotovo\";\"other\"\n\"597904\";\"Kudirkos Naumiestis\";\"main\"\n\"597904\";\"Kudirkos-Naumestis\";\"other\"\n\"597904\";\"Naum'yestis\";\"other\"\n\"597904\";\"Naumestis\";\"other\"\n\"597904\";\"Naumiescio\";\"other\"\n\"597904\";\"Naumiestis\";\"other\"\n\"597904\";\"Naumiestis Sakiu\";\"other\"\n\"597904\";\"Naumiestis Šakiu\";\"other\"\n\"597904\";\"Naumiesčio\";\"other\"\n\"597904\";\"Naumiyestis\";\"other\"\n\"597904\";\"Naum’yestis\";\"other\"\n\"597904\";\"Wladislawow\";\"other\"\n\"597904\";\"Wladyslawow\";\"other\"\n\"597904\";\"Władysławow\";\"other\"\n\"597904\";\"Кудиркос-Науместис\";\"other\"\n\"597989\";\"Kretinga\";\"main\"\n\"597989\";\"Kratinga\";\"other\"\n\"597989\";\"Kretin'nka\";\"other\"\n\"597989\";\"Kretingos\";\"other\"\n\"597989\";\"Kretynga\";\"other\"\n\"597989\";\"Krottingen\";\"other\"\n\"597989\";\"Myasto Kretinga\";\"other\"\n\"597989\";\"keuleting-ga\";\"other\"\n\"597989\";\"Κρετίνγκα\";\"other\"\n\"597989\";\"Кретинга\";\"other\"\n\"597989\";\"크레팅가\";\"other\"\n\"598098\";\"Klaipėda\";\"main\"\n\"598098\";\"Klaipeda\";\"ascii\"\n\"598098\";\"Klaipada\";\"other\"\n\"598098\";\"Klaipenta\";\"other\"\n\"598098\";\"Klaipéda\";\"other\"\n\"598098\";\"Klaipēda\";\"other\"\n\"598098\";\"Klajpeda\";\"other\"\n\"598098\";\"Klaypeda\";\"other\"\n\"598098\";\"Kłajpeda\";\"other\"\n\"598098\";\"Lungsod ng Klaipeda\";\"other\"\n\"598098\";\"Lungsod ng Klaipėda\";\"other\"\n\"598098\";\"Memel\";\"other\"\n\"598098\";\"Memela\";\"other\"\n\"598098\";\"ke lai pei da\";\"other\"\n\"598098\";\"keullaipeda\";\"other\"\n\"598098\";\"khil pheda\";\"other\"\n\"598098\";\"klaipedas\";\"other\"\n\"598098\";\"kuraipeda\";\"other\"\n\"598098\";\"qlypdh\";\"other\"\n\"598098\";\"qlyypdh\";\"other\"\n\"598098\";\"Κλαϊπέντα\";\"other\"\n\"598098\";\"Клаипеда\";\"other\"\n\"598098\";\"Клайпеда\";\"other\"\n\"598098\";\"Клајпеда\";\"other\"\n\"598098\";\"קלייפדה\";\"other\"\n\"598098\";\"קליפדה\";\"other\"\n\"598098\";\"ไคลเพดา\";\"other\"\n\"598098\";\"クライペダ\";\"other\"\n\"598098\";\"克莱佩达\";\"other\"\n\"598098\";\"클라이페다\";\"other\"\n\"598257\";\"Kelmė\";\"main\"\n\"598257\";\"Kelme\";\"ascii\"\n\"598257\";\"KEL'ME\";\"other\"\n\"598257\";\"Kel'me\";\"other\"\n\"598257\";\"Kelmes\";\"other\"\n\"598257\";\"Kelmės\";\"other\"\n\"598257\";\"Kielmy\";\"other\"\n\"598257\";\"kelme\";\"other\"\n\"598257\";\"КЕЛЬМЕ\";\"other\"\n\"598257\";\"Кельме\";\"other\"\n\"598257\";\"켈메\";\"other\"\n\"598272\";\"Kėdainiai\";\"main\"\n\"598272\";\"Kedainiai\";\"ascii\"\n\"598272\";\"KEDAJNJAJ\";\"other\"\n\"598272\";\"Kedaini\";\"other\"\n\"598272\";\"Kedainiu\";\"other\"\n\"598272\";\"Kedainių\";\"other\"\n\"598272\";\"Kedajnaj\";\"other\"\n\"598272\";\"Kedayny\";\"other\"\n\"598272\";\"Kedaynyai\";\"other\"\n\"598272\";\"Kedaynyay\";\"other\"\n\"598272\";\"Keidany\";\"other\"\n\"598272\";\"Kentainiai\";\"other\"\n\"598272\";\"Keydany\";\"other\"\n\"598272\";\"Kiejdany\";\"other\"\n\"598272\";\"Kēdaiņi\";\"other\"\n\"598272\";\"kedajnjaj\";\"other\"\n\"598272\";\"Κενταϊνιάι\";\"other\"\n\"598272\";\"КЕДАЙНЯЙ\";\"other\"\n\"598272\";\"Кедаjњај\";\"other\"\n\"598272\";\"Кедайняй\";\"other\"\n\"598286\";\"Kazlų Rūda\";\"main\"\n\"598286\";\"Kazlu Ruda\";\"ascii\"\n\"598286\";\"Kazlai\";\"other\"\n\"598286\";\"Kazlu Rudos\";\"other\"\n\"598286\";\"Kazlu-Ruda\";\"other\"\n\"598286\";\"Kazlų Rūdos\";\"other\"\n\"598286\";\"Kozlova-Ruda\";\"other\"\n\"598286\";\"Kozlowa Ruda\";\"other\"\n\"598286\";\"Kozłowa Ruda\";\"other\"\n\"598286\";\"Казлу-Руда\";\"other\"\n\"598316\";\"Kaunas\";\"main\"\n\"598316\";\"Caunas\";\"other\"\n\"598316\";\"KAUNAS\";\"other\"\n\"598316\";\"Kauen\";\"other\"\n\"598316\";\"Kauno\";\"other\"\n\"598316\";\"Kovno\";\"other\"\n\"598316\";\"Kowno\";\"other\"\n\"598316\";\"Palemonas\";\"other\"\n\"598316\";\"КАУНАС\";\"other\"\n\"598316\";\"Каунас\";\"other\"\n\"598512\";\"Kalvarija\";\"main\"\n\"598512\";\"KALVARIJA\";\"other\"\n\"598512\";\"Kalbarigia\";\"other\"\n\"598512\";\"Kalvarijos\";\"other\"\n\"598512\";\"Kalvariya\";\"other\"\n\"598512\";\"Kalwaria\";\"other\"\n\"598512\";\"Kalwarja\";\"other\"\n\"598512\";\"Καλβαρίγια\";\"other\"\n\"598512\";\"КАЛВАРИЯ\";\"other\"\n\"598512\";\"Калвария\";\"other\"\n\"598567\";\"Kaišiadorys\";\"main\"\n\"598567\";\"Kaisiadorys\";\"ascii\"\n\"598567\";\"KAJSHJADORIS\";\"other\"\n\"598567\";\"Kaisedorys\";\"other\"\n\"598567\";\"Kaisiadorio\";\"other\"\n\"598567\";\"Kaišedorys\";\"other\"\n\"598567\";\"Kaišiadorio\";\"other\"\n\"598567\";\"Kajshjadoris\";\"other\"\n\"598567\";\"Kashedary\";\"other\"\n\"598567\";\"Kasheydarys\";\"other\"\n\"598567\";\"Kayshadoris\";\"other\"\n\"598567\";\"Kayshadorys\";\"other\"\n\"598567\";\"Kayshyadoris\";\"other\"\n\"598567\";\"Koshedary\";\"other\"\n\"598567\";\"Koszedary\";\"other\"\n\"598567\";\"КАЙШЯДОРИС\";\"other\"\n\"598567\";\"Кайшядорис\";\"other\"\n\"598655\";\"Jurbarkas\";\"main\"\n\"598655\";\"Georgenburg\";\"other\"\n\"598655\";\"Jurbarka\";\"other\"\n\"598655\";\"Jurbarko\";\"other\"\n\"598655\";\"Jurbork\";\"other\"\n\"598655\";\"Yurbarkas\";\"other\"\n\"598655\";\"Yurburg\";\"other\"\n\"598655\";\"ywrbwrg\";\"other\"\n\"598655\";\"Юрбаркас\";\"other\"\n\"598655\";\"יורבורג\";\"other\"\n\"598690\";\"Juodupė\";\"main\"\n\"598690\";\"Juodupe\";\"ascii\"\n\"598690\";\"JUODUPE\";\"other\"\n\"598690\";\"Yuodupe\";\"other\"\n\"598690\";\"ЮОДУПЕ\";\"other\"\n\"598796\";\"Joniškis\";\"main\"\n\"598796\";\"Joniskis\";\"ascii\"\n\"598796\";\"Gioniskis\";\"other\"\n\"598796\";\"Ionishkis\";\"other\"\n\"598796\";\"Janiszki\";\"other\"\n\"598796\";\"Jonischki\";\"other\"\n\"598796\";\"Jonishkis\";\"other\"\n\"598796\";\"Joniski\";\"other\"\n\"598796\";\"Joniskio\";\"other\"\n\"598796\";\"Joniškio\";\"other\"\n\"598796\";\"Jonišķi\";\"other\"\n\"598796\";\"Yanishki\";\"other\"\n\"598796\";\"Yonishkis\";\"other\"\n\"598796\";\"Γιονίσκις\";\"other\"\n\"598796\";\"Йонишкис\";\"other\"\n\"598818\";\"Jonava\";\"main\"\n\"598818\";\"IONAVA\";\"other\"\n\"598818\";\"Ionava\";\"other\"\n\"598818\";\"Janow\";\"other\"\n\"598818\";\"Janów\";\"other\"\n\"598818\";\"Jonavos Miestelis\";\"other\"\n\"598818\";\"Yonava\";\"other\"\n\"598818\";\"ИОНАВА\";\"other\"\n\"598854\";\"Jieznas\";\"main\"\n\"598854\";\"EZNAS\";\"other\"\n\"598854\";\"Iyeznas\";\"other\"\n\"598854\";\"Jeznas\";\"other\"\n\"598854\";\"Jezno\";\"other\"\n\"598854\";\"Yeznas\";\"other\"\n\"598854\";\"ЕЗНАС\";\"other\"\n\"598998\";\"Ignalina\";\"main\"\n\"598998\";\"IGNALINA\";\"other\"\n\"598998\";\"Ignaline\";\"other\"\n\"598998\";\"Ignalino\";\"other\"\n\"598998\";\"Ignalinė\";\"other\"\n\"598998\";\"Inknalina\";\"other\"\n\"598998\";\"Ιγκναλίνα\";\"other\"\n\"598998\";\"ИГНАЛИНА\";\"other\"\n\"598998\";\"Игналина\";\"other\"\n\"599161\";\"Grigiškės\";\"main\"\n\"599161\";\"Grigiskes\";\"ascii\"\n\"599161\";\"GRIGISHKES\";\"other\"\n\"599161\";\"Grigor'yevo\";\"other\"\n\"599161\";\"Grigor’yevo\";\"other\"\n\"599161\";\"ГРИГИШКЕС\";\"other\"\n\"599420\";\"Gelgaudiškis\";\"main\"\n\"599420\";\"Gelgaudiskis\";\"ascii\"\n\"599420\";\"GELGAUDISHKIS\";\"other\"\n\"599420\";\"Gelgaudishkis\";\"other\"\n\"599420\";\"Gelgaudiskio\";\"other\"\n\"599420\";\"Gelgaudiškio\";\"other\"\n\"599420\";\"Gelgudyshki\";\"other\"\n\"599420\";\"Gielgudyszki\";\"other\"\n\"599420\";\"ГЕЛГАУДИШКИС\";\"other\"\n\"599504\";\"Garliava\";\"main\"\n\"599504\";\"GARLJAVA\";\"other\"\n\"599504\";\"Garliavos\";\"other\"\n\"599504\";\"Garlyava\";\"other\"\n\"599504\";\"Godlewo\";\"other\"\n\"599504\";\"Godlezo\";\"other\"\n\"599504\";\"Gorleva\";\"other\"\n\"599504\";\"ГАРЛЯВА\";\"other\"\n\"599506\";\"Gargždai\";\"main\"\n\"599506\";\"Gargzdai\";\"ascii\"\n\"599506\";\"GARGZHDAJ\";\"other\"\n\"599506\";\"Gardzdai\";\"other\"\n\"599506\";\"Gardždai\";\"other\"\n\"599506\";\"Gargzdi\";\"other\"\n\"599506\";\"Gargzdu\";\"other\"\n\"599506\";\"Gargzhdaj\";\"other\"\n\"599506\";\"Gargzhday\";\"other\"\n\"599506\";\"Gargždi\";\"other\"\n\"599506\";\"Gargždų\";\"other\"\n\"599506\";\"Garsden\";\"other\"\n\"599506\";\"Garzdai\";\"other\"\n\"599506\";\"Garždai\";\"other\"\n\"599506\";\"Gorzdy\";\"other\"\n\"599506\";\"Gorżdy\";\"other\"\n\"599506\";\"ГАРГЖДАЙ\";\"other\"\n\"599506\";\"Гаргждай\";\"other\"\n\"599579\";\"Ežerėlis\";\"main\"\n\"599579\";\"Ezerelis\";\"ascii\"\n\"599579\";\"EHZHERELIS\";\"other\"\n\"599579\";\"Ezherelis\";\"other\"\n\"599579\";\"ЭЖЕРЕЛИС\";\"other\"\n\"599602\";\"Elektrėnai\";\"main\"\n\"599602\";\"Elektrenai\";\"ascii\"\n\"599602\";\"Ehlektrenaj\";\"other\"\n\"599602\";\"Elektrenay\";\"other\"\n\"599602\";\"Elektreni\";\"other\"\n\"599602\";\"Elektreny\";\"other\"\n\"599602\";\"Elektrēni\";\"other\"\n\"599602\";\"Электренай\";\"other\"\n\"599614\";\"Eišiškės\";\"main\"\n\"599614\";\"Eisiskes\";\"ascii\"\n\"599614\";\"Aisiskes\";\"other\"\n\"599614\";\"Aišiškės\";\"other\"\n\"599614\";\"EHJSHISHKES\";\"other\"\n\"599614\";\"Eiszyski\";\"other\"\n\"599614\";\"Ejszyszki\";\"other\"\n\"599614\";\"Eyshishkes\";\"other\"\n\"599614\";\"Eyshishki\";\"other\"\n\"599614\";\"Malyy Eyshishki\";\"other\"\n\"599614\";\"Yeyshyshki\";\"other\"\n\"599614\";\"ЭЙШИШКЕС\";\"other\"\n\"599727\";\"Dūkštas\";\"main\"\n\"599727\";\"Dukstas\";\"ascii\"\n\"599727\";\"DUKSHTAS\";\"other\"\n\"599727\";\"Dukshtas\";\"other\"\n\"599727\";\"Dukshty\";\"other\"\n\"599727\";\"Dukszty\";\"other\"\n\"599727\";\"ДУКШТАС\";\"other\"\n\"599757\";\"Druskininkai\";\"main\"\n\"599757\";\"DRUSKININKAJ\";\"other\"\n\"599757\";\"Druskeniki\";\"other\"\n\"599757\";\"Druskieniki\";\"other\"\n\"599757\";\"Druskiniki\";\"other\"\n\"599757\";\"Druskininkaj\";\"other\"\n\"599757\";\"Druskininkay\";\"other\"\n\"599757\";\"Druskininki\";\"other\"\n\"599757\";\"Druśkieniki\";\"other\"\n\"599757\";\"ДРУСКИНИНКАЙ\";\"other\"\n\"599757\";\"Друскининкай\";\"other\"\n\"600040\";\"Daugai\";\"main\"\n\"600040\";\"DAUGAJ\";\"other\"\n\"600040\";\"Daugay\";\"other\"\n\"600040\";\"Dauge\";\"other\"\n\"600040\";\"Daugi\";\"other\"\n\"600040\";\"Daugu\";\"other\"\n\"600040\";\"Daugų\";\"other\"\n\"600040\";\"ДАУГАЙ\";\"other\"\n\"600438\";\"Biržai\";\"main\"\n\"600438\";\"Birzai\";\"ascii\"\n\"600438\";\"BIRZHAJ\";\"other\"\n\"600438\";\"Birsche\";\"other\"\n\"600438\";\"Birsen\";\"other\"\n\"600438\";\"Birze\";\"other\"\n\"600438\";\"Birzhaj\";\"other\"\n\"600438\";\"Birzhay\";\"other\"\n\"600438\";\"Birzhi\";\"other\"\n\"600438\";\"Birzi\";\"other\"\n\"600438\";\"Birzu\";\"other\"\n\"600438\";\"Birże\";\"other\"\n\"600438\";\"Birži\";\"other\"\n\"600438\";\"Biržų\";\"other\"\n\"600438\";\"Mpirzai\";\"other\"\n\"600438\";\"Myasto Birzhay\";\"other\"\n\"600438\";\"birujai\";\"other\"\n\"600438\";\"Μπιρζάι\";\"other\"\n\"600438\";\"БИРЖАЙ\";\"other\"\n\"600438\";\"Биржай\";\"other\"\n\"600438\";\"ビルジャイ\";\"other\"\n\"600443\";\"Birštonas\";\"main\"\n\"600443\";\"Birstonas\";\"ascii\"\n\"600443\";\"BIRSHTONAS\";\"other\"\n\"600443\";\"Birshtonas\";\"other\"\n\"600443\";\"Birstonas-Kurortas\";\"other\"\n\"600443\";\"Birstono\";\"other\"\n\"600443\";\"Birsztany\";\"other\"\n\"600443\";\"Birštonas-Kurortas\";\"other\"\n\"600443\";\"Birštono\";\"other\"\n\"600443\";\"Mpirstonas\";\"other\"\n\"600443\";\"Μπιρστόνας\";\"other\"\n\"600443\";\"БИРШТОНАС\";\"other\"\n\"600443\";\"Бирштонас\";\"other\"\n\"600688\";\"Baltoji Vokė\";\"main\"\n\"600688\";\"Baltoji Voke\";\"ascii\"\n\"600688\";\"Belaya Vaka\";\"other\"\n\"600688\";\"Waka Biala\";\"other\"\n\"600688\";\"Waka Biała\";\"other\"\n\"600688\";\"Балтойи Воке\";\"other\"\n\"600896\";\"Aukštadvaris\";\"main\"\n\"600896\";\"Aukstadvaris\";\"ascii\"\n\"600896\";\"Auksdvaris\";\"other\"\n\"600896\";\"Aukshtadvaris\";\"other\"\n\"600896\";\"Aukstadvario\";\"other\"\n\"600896\";\"Aukstdvaris\";\"other\"\n\"600896\";\"Aukstdvarys\";\"other\"\n\"600896\";\"Aukšdvaris\";\"other\"\n\"600896\";\"Aukštdvaris\";\"other\"\n\"600896\";\"Aukštdvarys\";\"other\"\n\"600896\";\"Visoki Dvor\";\"other\"\n\"600896\";\"Wysaki Dwor\";\"other\"\n\"600896\";\"Wysoki Dwor\";\"other\"\n\"600896\";\"Wysoki Dwór\";\"other\"\n\"600896\";\"Аукштадварис\";\"other\"\n\"600962\";\"Ariogala\";\"main\"\n\"600962\";\"AREGALA\";\"other\"\n\"600962\";\"Aregala\";\"other\"\n\"600962\";\"Ariogalos\";\"other\"\n\"600962\";\"Arëgala\";\"other\"\n\"600962\";\"Eiragola\";\"other\"\n\"600962\";\"Ejragola\";\"other\"\n\"600962\";\"Ejragoła\";\"other\"\n\"600962\";\"АРЕГАЛА\";\"other\"\n\"600994\";\"Anykščiai\";\"main\"\n\"600994\";\"Anyksciai\";\"ascii\"\n\"600994\";\"ANIKSHHJAJ\";\"other\"\n\"600994\";\"Aniksci\";\"other\"\n\"600994\";\"Anikshchay\";\"other\"\n\"600994\";\"Anikshchyay\";\"other\"\n\"600994\";\"Anikshhjaj\";\"other\"\n\"600994\";\"Anyksciu\";\"other\"\n\"600994\";\"Anykshchay\";\"other\"\n\"600994\";\"Anykstsiai\";\"other\"\n\"600994\";\"Anykščių\";\"other\"\n\"600994\";\"Anīkšči\";\"other\"\n\"600994\";\"Onikschty\";\"other\"\n\"600994\";\"Onikshty\";\"other\"\n\"600994\";\"Onikszty\";\"other\"\n\"600994\";\"Onukszty\";\"other\"\n\"600994\";\"Ανυκστσιάι\";\"other\"\n\"600994\";\"АНИКЩЯЙ\";\"other\"\n\"600994\";\"Аникщяй\";\"other\"\n\"601084\";\"Alytus\";\"main\"\n\"601084\";\"ALITUS\";\"other\"\n\"601084\";\"Alita\";\"other\"\n\"601084\";\"Alitus\";\"other\"\n\"601084\";\"Alytaus\";\"other\"\n\"601084\";\"Alīta\";\"other\"\n\"601084\";\"Olita\";\"other\"\n\"601084\";\"allituseu\";\"other\"\n\"601084\";\"АЛИТУС\";\"other\"\n\"601084\";\"Алитус\";\"other\"\n\"601084\";\"알리투스\";\"other\"\n\"601182\";\"Akmenė\";\"main\"\n\"601182\";\"Akmene\";\"ascii\"\n\"601182\";\"Akmenes\";\"other\"\n\"601182\";\"Akmenės\";\"other\"\n\"601182\";\"Akmyane\";\"other\"\n\"601182\";\"Okmiany\";\"other\"\n\"6618486\";\"Dainava (Kaunas)\";\"main\"\n\"2959977\";\"Wiltz\";\"main\"\n\"2959977\";\"Wilz\";\"other\"\n\"2959977\";\"Wolz\";\"other\"\n\"2959977\";\"Вільц\";\"other\"\n\"2960007\";\"Wasserbillig\";\"main\"\n\"2960008\";\"Warken\";\"main\"\n\"2960021\";\"Vianden\";\"main\"\n\"2960021\";\"Veianen\";\"other\"\n\"2960030\";\"Troisvierges\";\"main\"\n\"2960030\";\"Ulflingen\";\"other\"\n\"2960042\";\"Tétange\";\"main\"\n\"2960042\";\"Tetange\";\"ascii\"\n\"2960054\";\"Strassen\";\"main\"\n\"2960058\";\"Steinsel\";\"main\"\n\"2960061\";\"Steinfort\";\"main\"\n\"2960061\";\"Stengefort\";\"other\"\n\"2960067\";\"Soleuvre\";\"main\"\n\"2960067\";\"Zolver\";\"other\"\n\"2960067\";\"Zolwer\";\"other\"\n\"2960084\";\"Schrassig\";\"main\"\n\"2960085\";\"Schouweiler\";\"main\"\n\"2960102\";\"Schifflange\";\"main\"\n\"2960102\";\"Scheffleng\";\"other\"\n\"2960102\";\"Schëffleng\";\"other\"\n\"2960104\";\"Schieren\";\"main\"\n\"2960115\";\"Sanem\";\"main\"\n\"2960115\";\"Sassenheim\";\"other\"\n\"2960115\";\"Suessem\";\"other\"\n\"2960117\";\"Sandweiler\";\"main\"\n\"2960133\";\"Rollingen\";\"main\"\n\"2960143\";\"Rodange\";\"main\"\n\"2960154\";\"Remich\";\"main\"\n\"2960154\";\"Reimech\";\"other\"\n\"2960154\";\"Réimech\";\"other\"\n\"2960160\";\"Redange-sur-Attert\";\"main\"\n\"2960160\";\"Redange\";\"other\"\n\"2960160\";\"Redingen\";\"other\"\n\"2960160\";\"Reiden\";\"other\"\n\"2960160\";\"Réiden\";\"other\"\n\"2960174\";\"Pontpierre\";\"main\"\n\"2960174\";\"Steinbrucken\";\"other\"\n\"2960187\";\"Pétange\";\"main\"\n\"2960187\";\"Petange\";\"ascii\"\n\"2960187\";\"Peiteng\";\"other\"\n\"2960187\";\"Petingen\";\"other\"\n\"2960187\";\"Péiteng\";\"other\"\n\"2960197\";\"Olm\";\"main\"\n\"2960207\";\"Obercorn\";\"main\"\n\"2960207\";\"Oberkorn\";\"other\"\n\"2960228\";\"Niedercorn\";\"main\"\n\"2960228\";\"Niederkorn\";\"other\"\n\"2960231\";\"Niederanven\";\"main\"\n\"2960250\";\"Müllendorf\";\"main\"\n\"2960250\";\"Mullendorf\";\"ascii\"\n\"2960250\";\"Muellendorf\";\"other\"\n\"2960252\";\"Moutfort\";\"main\"\n\"2960257\";\"Mondorf-les-Bains\";\"main\"\n\"2960258\";\"Mondercange\";\"main\"\n\"2960258\";\"Monnerich\";\"other\"\n\"2960270\";\"Mertzig\";\"main\"\n\"2960270\";\"Merzig\";\"other\"\n\"2960271\";\"Mertert\";\"main\"\n\"2960276\";\"Mersch\";\"main\"\n\"2960276\";\"Morsche\";\"other\"\n\"2960299\";\"Mamer\";\"main\"\n\"2960316\";\"Luxembourg\";\"main\"\n\"2960316\";\"Ciudad de Luxemburgo\";\"other\"\n\"2960316\";\"Ciutat de Luxemburg\";\"other\"\n\"2960316\";\"Kota Luxemburg\";\"other\"\n\"2960316\";\"Letzebuerg\";\"other\"\n\"2960316\";\"Letzeburg\";\"other\"\n\"2960316\";\"Liuksemburgas\";\"other\"\n\"2960316\";\"Ljuksehmburg\";\"other\"\n\"2960316\";\"Ljuksemburg\";\"other\"\n\"2960316\";\"Lucemburk\";\"other\"\n\"2960316\";\"Lucilinburhuc\";\"other\"\n\"2960316\";\"Lucsamburg\";\"other\"\n\"2960316\";\"Luksemburg\";\"other\"\n\"2960316\";\"Luksemburga\";\"other\"\n\"2960316\";\"Luksemburgo\";\"other\"\n\"2960316\";\"Luksemburgu\";\"other\"\n\"2960316\";\"Luksembùrg\";\"other\"\n\"2960316\";\"Lussemburgo\";\"other\"\n\"2960316\";\"Lussimbork veye\";\"other\"\n\"2960316\";\"Luxemborg\";\"other\"\n\"2960316\";\"Luxemburg\";\"other\"\n\"2960316\";\"Luxemburgo\";\"other\"\n\"2960316\";\"Luxembôrg\";\"other\"\n\"2960316\";\"Luxenburgo\";\"other\"\n\"2960316\";\"Lëtzebuerg\";\"other\"\n\"2960316\";\"Lúxemborg\";\"other\"\n\"2960316\";\"lugsembuleukeu si\";\"other\"\n\"2960316\";\"luksemburgi\";\"other\"\n\"2960316\";\"lwksmbwrgh\";\"other\"\n\"2960316\";\"lwkzambwrg\";\"other\"\n\"2960316\";\"lwqsmbwrg\";\"other\"\n\"2960316\";\"rukusenburuku\";\"other\"\n\"2960316\";\"Луксембург\";\"other\"\n\"2960316\";\"Люксембург\";\"other\"\n\"2960316\";\"Люксэмбург\";\"other\"\n\"2960316\";\"לוקסמבורג\";\"other\"\n\"2960316\";\"لوكسمبورغ\";\"other\"\n\"2960316\";\"لوکزامبورگ\";\"other\"\n\"2960316\";\"ლუქსემბურგი\";\"other\"\n\"2960316\";\"ሉክሰምቡርግ\";\"other\"\n\"2960316\";\"ルクセンブルク\";\"other\"\n\"2960316\";\"룩셈부르크 시\";\"other\"\n\"2960328\";\"Lintgen\";\"main\"\n\"2960335\";\"Leudelange\";\"main\"\n\"2960350\";\"Larochette\";\"main\"\n\"2960350\";\"Fels\";\"other\"\n\"2960358\";\"Lamadelaine\";\"main\"\n\"2960358\";\"Lamadeleine\";\"other\"\n\"2960358\";\"Rollingen\";\"other\"\n\"2960367\";\"Koerich\";\"main\"\n\"2960367\";\"Korich\";\"other\"\n\"2960367\";\"Körich\";\"other\"\n\"2960389\";\"Kehlen\";\"main\"\n\"2960391\";\"Kayl\";\"main\"\n\"2960391\";\"Keel\";\"other\"\n\"2960400\";\"Junglinster\";\"main\"\n\"2960410\";\"Itzig\";\"main\"\n\"2960453\";\"Hobscheid\";\"main\"\n\"2960453\";\"Habscht\";\"other\"\n\"2960457\";\"Hesperange\";\"main\"\n\"2960468\";\"Helmsange\";\"main\"\n\"2960472\";\"Heisdorf-sur-Alzette\";\"main\"\n\"2960472\";\"Heisdorf\";\"other\"\n\"2960485\";\"Hautcharage\";\"main\"\n\"2960485\";\"Oberkerschen\";\"other\"\n\"2960515\";\"Grevenmacher\";\"main\"\n\"2960515\";\"Greiwemaacher\";\"other\"\n\"2960515\";\"Gréiwemaacher\";\"other\"\n\"2960532\";\"Gonderange\";\"main\"\n\"2960556\";\"Frisange\";\"main\"\n\"2960556\";\"Freiseng\";\"other\"\n\"2960556\";\"Fréiseng\";\"other\"\n\"2960577\";\"Niederfeulen\";\"main\"\n\"2960577\";\"Feulen\";\"other\"\n\"2960577\";\"Neiderfeulen\";\"other\"\n\"2960584\";\"Fentange\";\"main\"\n\"2960589\";\"Ettelbruck\";\"main\"\n\"2960589\";\"Ettlebruk\";\"other\"\n\"2960596\";\"Esch-sur-Alzette\";\"main\"\n\"2960596\";\"Ehsh-sjur-Alzette\";\"other\"\n\"2960596\";\"Esch\";\"other\"\n\"2960596\";\"Esch-Uelzecht\";\"other\"\n\"2960596\";\"Эш-сюр-Алзетте\";\"other\"\n\"2960618\";\"Eischen\";\"main\"\n\"2960630\";\"Echternach\";\"main\"\n\"2960630\";\"Echternak\";\"other\"\n\"2960630\";\"Iechternach\";\"other\"\n\"2960634\";\"Dudelange\";\"main\"\n\"2960634\";\"Diddeleng\";\"other\"\n\"2960634\";\"Dudelingen\";\"other\"\n\"2960651\";\"Differdange\";\"main\"\n\"2960651\";\"Deifferdeng\";\"other\"\n\"2960651\";\"Differdingen\";\"other\"\n\"2960651\";\"Déifferdeng\";\"other\"\n\"2960657\";\"Diekirch\";\"main\"\n\"2960657\";\"Dikrech\";\"other\"\n\"2960665\";\"Dalheim\";\"main\"\n\"2960672\";\"Crauthem\";\"main\"\n\"2960672\";\"Krauthem\";\"other\"\n\"2960673\";\"Contern\";\"main\"\n\"2960675\";\"Consdorf\";\"main\"\n\"2960680\";\"Colmar\";\"main\"\n\"2960684\";\"Clervaux\";\"main\"\n\"2960684\";\"Clerf\";\"other\"\n\"2960684\";\"Klerf\";\"other\"\n\"2960687\";\"Clemency\";\"main\"\n\"2960687\";\"Kuentzig\";\"other\"\n\"2960687\";\"Kuntzig\";\"other\"\n\"2960687\";\"Küntzig\";\"other\"\n\"2960697\";\"Capellen\";\"main\"\n\"2960697\";\"Kapellen\";\"other\"\n\"2960720\";\"Bridel\";\"main\"\n\"2960759\";\"Bissen\";\"main\"\n\"2960775\";\"Bettendorf\";\"main\"\n\"2960775\";\"Bettenduerf\";\"other\"\n\"2960777\";\"Bettembourg\";\"main\"\n\"2960782\";\"Bertrange\";\"main\"\n\"2960791\";\"Bergem\";\"main\"\n\"2960795\";\"Béreldange\";\"main\"\n\"2960795\";\"Bereldange\";\"ascii\"\n\"2960800\";\"Belvaux\";\"main\"\n\"2960800\";\"Beles\";\"other\"\n\"2960809\";\"Beaufort\";\"main\"\n\"2960809\";\"Beefort\";\"other\"\n\"2960809\";\"Befort\";\"other\"\n\"2960815\";\"Bascharage\";\"main\"\n\"2960815\";\"Niederkerschen\";\"other\"\n\"2960823\";\"Aspelt\";\"main\"\n\"2960832\";\"Alzingen\";\"main\"\n\"2960832\";\"Altzingen\";\"other\"\n\"453754\";\"Valmiera\";\"main\"\n\"453754\";\"Valmeena\";\"other\"\n\"453754\";\"Valmeera\";\"other\"\n\"453754\";\"Valmera\";\"other\"\n\"453754\";\"Valmieras\";\"other\"\n\"453754\";\"Vol'mar\";\"other\"\n\"453754\";\"Wolmar\";\"other\"\n\"453754\";\"Валмиера\";\"other\"\n\"453850\";\"Zilupe\";\"main\"\n\"453850\";\"ZILUPE\";\"other\"\n\"453850\";\"Zilupes\";\"other\"\n\"453850\";\"Ziluppe\";\"other\"\n\"453850\";\"ЗИЛУПЕ\";\"other\"\n\"454178\";\"Viļāni\";\"main\"\n\"454178\";\"Vilani\";\"ascii\"\n\"454178\";\"VILJANY\";\"other\"\n\"454178\";\"Veleny\";\"other\"\n\"454178\";\"Vilany\";\"other\"\n\"454178\";\"Vileni\";\"other\"\n\"454178\";\"Viljani\";\"other\"\n\"454178\";\"Vilyane\";\"other\"\n\"454178\";\"Vilyani\";\"other\"\n\"454178\";\"Vilyany\";\"other\"\n\"454178\";\"Vilēni\";\"other\"\n\"454178\";\"Weleny\";\"other\"\n\"454178\";\"ВИЛЯНЫ\";\"other\"\n\"454216\";\"Viesīte\";\"main\"\n\"454216\";\"Viesite\";\"ascii\"\n\"454216\";\"Eckengrafen\";\"other\"\n\"454216\";\"VIESITE\";\"other\"\n\"454216\";\"Vesite\";\"other\"\n\"454216\";\"Viyesite\";\"other\"\n\"454216\";\"ВИЕСИТЕ\";\"other\"\n\"454273\";\"Vecumnieki\";\"main\"\n\"454273\";\"Vecmuiza\";\"other\"\n\"454273\";\"Vecmuiža\";\"other\"\n\"454273\";\"Vetsmuizha\";\"other\"\n\"454273\";\"Vetsumneki\";\"other\"\n\"454273\";\"Vetsumniyeki\";\"other\"\n\"454273\";\"Вецумниеки\";\"other\"\n\"454310\";\"Ventspils\";\"main\"\n\"454310\";\"Vindau\";\"other\"\n\"454310\";\"Vindava\";\"other\"\n\"454310\";\"Wentspils\";\"other\"\n\"454310\";\"Windau\";\"other\"\n\"454310\";\"Вентспилс\";\"other\"\n\"454432\";\"Vec-Liepāja\";\"main\"\n\"454432\";\"Vec-Liepaja\";\"ascii\"\n\"454432\";\"Old Libau\";\"other\"\n\"454432\";\"Old Liepaja\";\"other\"\n\"454432\";\"Old Liepāja\";\"other\"\n\"454432\";\"Staraya Libava\";\"other\"\n\"454537\";\"Vangaži\";\"main\"\n\"454537\";\"Vangazi\";\"ascii\"\n\"454537\";\"VANGAZHI\";\"other\"\n\"454537\";\"Vangazhi\";\"other\"\n\"454537\";\"ВАНГАЖИ\";\"other\"\n\"454572\";\"Valka\";\"main\"\n\"454572\";\"Valga\";\"other\"\n\"454572\";\"Valk\";\"other\"\n\"454572\";\"Valkas\";\"other\"\n\"454572\";\"Walk\";\"other\"\n\"454572\";\"Валка\";\"other\"\n\"454584\";\"Valdemārpils\";\"main\"\n\"454584\";\"Valdemarpils\";\"ascii\"\n\"454714\";\"Ulbroka\";\"main\"\n\"454714\";\"Sarkanmuiza\";\"other\"\n\"454714\";\"Sarkanmuiža\";\"other\"\n\"454714\";\"Ulbroke\";\"other\"\n\"454768\";\"Tukums\";\"main\"\n\"454768\";\"Tukkum\";\"other\"\n\"454768\";\"Tukum\";\"other\"\n\"454768\";\"Tukumas\";\"other\"\n\"454768\";\"Тукумс\";\"other\"\n\"454848\";\"Tīreļi\";\"main\"\n\"454848\";\"Tireli\";\"ascii\"\n\"454848\";\"Kalnciema Muiza\";\"other\"\n\"454848\";\"Kalnciema Muiža\";\"other\"\n\"454848\";\"Kalnciems\";\"other\"\n\"454848\";\"Kalnciems Muiza\";\"other\"\n\"454848\";\"Kalnciems Muiža\";\"other\"\n\"454848\";\"Kalntsiems\";\"other\"\n\"454848\";\"Kalntsiyems\";\"other\"\n\"454848\";\"Myza Kalntsiema\";\"other\"\n\"454970\";\"Talsi\";\"main\"\n\"454970\";\"Talsai\";\"other\"\n\"454970\";\"Talsen\";\"other\"\n\"454970\";\"Talsy\";\"other\"\n\"454970\";\"Telsy\";\"other\"\n\"454970\";\"Талси\";\"other\"\n\"455166\";\"Strenči\";\"main\"\n\"455166\";\"Strenci\";\"ascii\"\n\"455166\";\"STRENCHI\";\"other\"\n\"455166\";\"Stackeln\";\"other\"\n\"455166\";\"Stakkeln\";\"other\"\n\"455166\";\"Strenchi\";\"other\"\n\"455166\";\"Strencis\";\"other\"\n\"455166\";\"СТРЕНЧИ\";\"other\"\n\"455260\";\"Stende\";\"main\"\n\"455260\";\"Stendesciems\";\"other\"\n\"455260\";\"Стенде\";\"other\"\n\"455298\";\"Staicele\";\"main\"\n\"455298\";\"STAJCELE\";\"other\"\n\"455298\";\"Staytsele\";\"other\"\n\"455298\";\"СТАЙЦЕЛЕ\";\"other\"\n\"455406\";\"Smiltene\";\"main\"\n\"455406\";\"Smilten\";\"other\"\n\"455520\";\"Skrunda\";\"main\"\n\"455718\";\"Sigulda\";\"main\"\n\"455718\";\"SIGULDA\";\"other\"\n\"455718\";\"Segewold\";\"other\"\n\"455718\";\"СИГУЛДА\";\"other\"\n\"455786\";\"Seda\";\"main\"\n\"455786\";\"SEDA\";\"other\"\n\"455786\";\"Salanietis\";\"other\"\n\"455786\";\"Salanyetys\";\"other\"\n\"455786\";\"Sedaskudra\";\"other\"\n\"455786\";\"Sedaskūdra\";\"other\"\n\"455786\";\"Tomeni\";\"other\"\n\"455786\";\"Tomēni\";\"other\"\n\"455786\";\"СЕДА\";\"other\"\n\"455812\";\"Saulkrasti\";\"main\"\n\"455812\";\"Neibade\";\"other\"\n\"455812\";\"Neybade\";\"other\"\n\"455812\";\"SAULKRASTI\";\"other\"\n\"455812\";\"Saulkraste\";\"other\"\n\"455812\";\"Saulkrasty\";\"other\"\n\"455812\";\"САУЛКРАСТИ\";\"other\"\n\"455890\";\"Saldus\";\"main\"\n\"455890\";\"Frauenburg\";\"other\"\n\"455890\";\"Салдус\";\"other\"\n\"455898\";\"Salaspils\";\"main\"\n\"455898\";\"Kirchholm\";\"other\"\n\"455898\";\"Kirkholm\";\"other\"\n\"455898\";\"Salaspilis\";\"other\"\n\"455898\";\"Саласпилс\";\"other\"\n\"455910\";\"Salacgrīva\";\"main\"\n\"455910\";\"Salacgriva\";\"ascii\"\n\"455910\";\"SALACGRIVA\";\"other\"\n\"455910\";\"Salatsgriva\";\"other\"\n\"455910\";\"Salismunde\";\"other\"\n\"455910\";\"Salismünde\";\"other\"\n\"455910\";\"САЛАЦГРИВА\";\"other\"\n\"455937\";\"Sabile\";\"main\"\n\"455937\";\"Zabeln\";\"other\"\n\"455937\";\"Сабиле\";\"other\"\n\"456008\";\"Rūjiena\";\"main\"\n\"456008\";\"Rujiena\";\"ascii\"\n\"456008\";\"Aujiena\";\"other\"\n\"456008\";\"RUIENA\";\"other\"\n\"456008\";\"Ruiyena\";\"other\"\n\"456008\";\"Rujen\";\"other\"\n\"456008\";\"Rujene\";\"other\"\n\"456008\";\"Rujienas\";\"other\"\n\"456008\";\"Rujina\";\"other\"\n\"456008\";\"Ruyen\";\"other\"\n\"456008\";\"Ruyena\";\"other\"\n\"456008\";\"Ruyyena\";\"other\"\n\"456008\";\"Rūjienas\";\"other\"\n\"456008\";\"РУИЕНА\";\"other\"\n\"456107\";\"Roja\";\"main\"\n\"456107\";\"Roya\";\"other\"\n\"456107\";\"Роя\";\"other\"\n\"456172\";\"Riga\";\"main\"\n\"456172\";\"RIGA\";\"other\"\n\"456172\";\"Rigae\";\"other\"\n\"456172\";\"Rigo\";\"other\"\n\"456172\";\"Riia\";\"other\"\n\"456172\";\"Riika\";\"other\"\n\"456172\";\"Rija\";\"other\"\n\"456172\";\"Ryga\";\"other\"\n\"456172\";\"Ríga\";\"other\"\n\"456172\";\"Rīga\";\"other\"\n\"456172\";\"li jia\";\"other\"\n\"456172\";\"liga\";\"other\"\n\"456172\";\"riga\";\"other\"\n\"456172\";\"rika\";\"other\"\n\"456172\";\"rygh\";\"other\"\n\"456172\";\"rygha\";\"other\"\n\"456172\";\"Ρίγα\";\"other\"\n\"456172\";\"РИГА\";\"other\"\n\"456172\";\"Ригæ\";\"other\"\n\"456172\";\"Рига\";\"other\"\n\"456172\";\"Рыґа\";\"other\"\n\"456172\";\"ריגה\";\"other\"\n\"456172\";\"ريغا\";\"other\"\n\"456172\";\"रिगा\";\"other\"\n\"456172\";\"ริกา\";\"other\"\n\"456172\";\"რიგა\";\"other\"\n\"456172\";\"ሪጋ\";\"other\"\n\"456172\";\"リガ\";\"other\"\n\"456172\";\"里加\";\"other\"\n\"456172\";\"리가\";\"other\"\n\"456202\";\"Rēzekne\";\"main\"\n\"456202\";\"Rezekne\";\"ascii\"\n\"456202\";\"REZEKNE\";\"other\"\n\"456202\";\"Rezeknė\";\"other\"\n\"456202\";\"Rezhitsa\";\"other\"\n\"456202\";\"Rositten\";\"other\"\n\"456202\";\"Ryezhitsa\";\"other\"\n\"456202\";\"Rzezyca\";\"other\"\n\"456202\";\"Rzeżyca\";\"other\"\n\"456202\";\"Rėzeknė\";\"other\"\n\"456202\";\"rzqnh\";\"other\"\n\"456202\";\"Ρέζεκνε\";\"other\"\n\"456202\";\"РЕЗЕКНЕ\";\"other\"\n\"456202\";\"Резекне\";\"other\"\n\"456202\";\"רזקנה\";\"other\"\n\"456506\";\"Priekule\";\"main\"\n\"456506\";\"Preekuln\";\"other\"\n\"456506\";\"Prekule\";\"other\"\n\"456506\";\"Prekuln\";\"other\"\n\"456506\";\"Priyekule\";\"other\"\n\"456506\";\"Priyekuli\";\"other\"\n\"456506\";\"Приекуле\";\"other\"\n\"456530\";\"Preiļi\";\"main\"\n\"456530\";\"Preili\";\"ascii\"\n\"456530\";\"PREJLI\";\"other\"\n\"456530\";\"Preli\";\"other\"\n\"456530\";\"Preyli\";\"other\"\n\"456530\";\"Prieli\";\"other\"\n\"456530\";\"ПРЕЙЛИ\";\"other\"\n\"456635\";\"Pļaviņas\";\"main\"\n\"456635\";\"Plavinas\";\"ascii\"\n\"456635\";\"PLJAVINJAS\";\"other\"\n\"456635\";\"Plavinyas\";\"other\"\n\"456635\";\"Plyavinas\";\"other\"\n\"456635\";\"Plyavinyas\";\"other\"\n\"456635\";\"ПЛЯВИНЯС\";\"other\"\n\"456696\";\"Piltene\";\"main\"\n\"456696\";\"Pilten\";\"other\"\n\"456696\";\"Пилтене\";\"other\"\n\"456827\";\"Pāvilosta\";\"main\"\n\"456827\";\"Pavilosta\";\"ascii\"\n\"456827\";\"Akagals\";\"other\"\n\"456827\";\"Paulshafen\";\"other\"\n\"456827\";\"Porvilostu\";\"other\"\n\"456827\";\"Ākagals\";\"other\"\n\"456954\";\"Ozolnieki\";\"main\"\n\"456954\";\"Ozolniyeki\";\"other\"\n\"457052\";\"Olaine\";\"main\"\n\"457052\";\"Olayne\";\"other\"\n\"457065\";\"Ogre\";\"main\"\n\"457065\";\"OGRE\";\"other\"\n\"457065\";\"Uogre\";\"other\"\n\"457065\";\"Uogrė\";\"other\"\n\"457065\";\"ОГРЕ\";\"other\"\n\"457408\";\"Mērsrags\";\"main\"\n\"457408\";\"Mersrags\";\"ascii\"\n\"457408\";\"Margraf\";\"other\"\n\"457408\";\"Markgrafen\";\"other\"\n\"457408\";\"Mererags\";\"other\"\n\"457408\";\"Mersrag\";\"other\"\n\"457408\";\"Mersragciems\";\"other\"\n\"457408\";\"Mersragiems\";\"other\"\n\"457408\";\"Mersya\";\"other\"\n\"457533\";\"Mazsalaca\";\"main\"\n\"457533\";\"Mazsalace\";\"other\"\n\"457533\";\"Mazsalatsa\";\"other\"\n\"457533\";\"Mazsalatse\";\"other\"\n\"457533\";\"Salisburg\";\"other\"\n\"457714\";\"Madona\";\"main\"\n\"457776\";\"Ludza\";\"main\"\n\"457776\";\"LUDZA\";\"other\"\n\"457776\";\"Ljucyn\";\"other\"\n\"457776\";\"Lountza\";\"other\"\n\"457776\";\"Lucyn\";\"other\"\n\"457776\";\"Ludsen\";\"other\"\n\"457776\";\"Ludze\";\"other\"\n\"457776\";\"Lyutsin\";\"other\"\n\"457776\";\"lwdzh\";\"other\"\n\"457776\";\"Λούντζα\";\"other\"\n\"457776\";\"ЛУДЗА\";\"other\"\n\"457776\";\"Лудза\";\"other\"\n\"457776\";\"Люцын\";\"other\"\n\"457776\";\"לודזה\";\"other\"\n\"457799\";\"Lubāna\";\"main\"\n\"457799\";\"Lubana\";\"ascii\"\n\"457799\";\"LUBANA\";\"other\"\n\"457799\";\"ЛУБАНА\";\"other\"\n\"457860\";\"Līvāni\";\"main\"\n\"457860\";\"Livani\";\"ascii\"\n\"457860\";\"LIVANY\";\"other\"\n\"457860\";\"Livany\";\"other\"\n\"457860\";\"ЛИВАНЫ\";\"other\"\n\"457890\";\"Limbaži\";\"main\"\n\"457890\";\"Limbazi\";\"ascii\"\n\"457890\";\"LIMBAZHI\";\"other\"\n\"457890\";\"Lemsal\";\"other\"\n\"457890\";\"Lemzal\";\"other\"\n\"457890\";\"Limbazhi\";\"other\"\n\"457890\";\"Limbaziai\";\"other\"\n\"457890\";\"Limbažiai\";\"other\"\n\"457890\";\"ЛИМБАЖИ\";\"other\"\n\"457890\";\"Лимбажи\";\"other\"\n\"457912\";\"Līgatne\";\"main\"\n\"457912\";\"Ligatne\";\"ascii\"\n\"457912\";\"LIGATNE\";\"other\"\n\"457912\";\"Ligat\";\"other\"\n\"457912\";\"Patmale\";\"other\"\n\"457912\";\"ЛИГАТНЕ\";\"other\"\n\"457954\";\"Liepāja\";\"main\"\n\"457954\";\"Liepaja\";\"ascii\"\n\"457954\";\"Leepaja\";\"other\"\n\"457954\";\"Lepaya\";\"other\"\n\"457954\";\"Libau\";\"other\"\n\"457954\";\"Libava\";\"other\"\n\"457954\";\"Liepaa\";\"other\"\n\"457954\";\"Liepagia\";\"other\"\n\"457954\";\"Liepaiya\";\"other\"\n\"457954\";\"Liepaya\";\"other\"\n\"457954\";\"Liepoja\";\"other\"\n\"457954\";\"Lietaja\";\"other\"\n\"457954\";\"Lietaya\";\"other\"\n\"457954\";\"Lipawa\";\"other\"\n\"457954\";\"Liyepaya\";\"other\"\n\"457954\";\"liepaya\";\"other\"\n\"457954\";\"riepaya\";\"other\"\n\"457954\";\"Λιεπάγια\";\"other\"\n\"457954\";\"Λιεπαγια\";\"other\"\n\"457954\";\"Лиепая\";\"other\"\n\"457954\";\"Ліепая\";\"other\"\n\"457954\";\"ליפאיה\";\"other\"\n\"457954\";\"リエパーヤ\";\"other\"\n\"457954\";\"리에파야\";\"other\"\n\"457965\";\"Lielvārde\";\"main\"\n\"457965\";\"Lielvarde\";\"ascii\"\n\"457965\";\"LIELVARDE\";\"other\"\n\"457965\";\"Liyelvarde\";\"other\"\n\"457965\";\"ЛИЕЛВАРДЕ\";\"other\"\n\"458460\";\"Kuldīga\";\"main\"\n\"458460\";\"Kuldiga\";\"ascii\"\n\"458460\";\"Goldingen\";\"other\"\n\"458460\";\"Kuldigas\";\"other\"\n\"458460\";\"Kuldyga\";\"other\"\n\"458460\";\"Kuldīgas\";\"other\"\n\"458460\";\"Кулдига\";\"other\"\n\"458623\";\"Krāslava\";\"main\"\n\"458623\";\"Kraslava\";\"ascii\"\n\"458623\";\"KRASLAVA\";\"other\"\n\"458623\";\"Kraaslava\";\"other\"\n\"458623\";\"Kreslavka\";\"other\"\n\"458623\";\"Kreslawka\";\"other\"\n\"458623\";\"КРАСЛАВА\";\"other\"\n\"458880\";\"Ķekava\";\"main\"\n\"458880\";\"Kekava\";\"ascii\"\n\"458880\";\"Liel Kekava\";\"other\"\n\"458880\";\"Liel Ķekava\";\"other\"\n\"458880\";\"Tekava\";\"other\"\n\"458880\";\"Кекава\";\"other\"\n\"458892\";\"Ķegums\";\"main\"\n\"458892\";\"Kegums\";\"ascii\"\n\"458892\";\"KEGUMS\";\"other\"\n\"458892\";\"Keggum\";\"other\"\n\"458892\";\"Keggums\";\"other\"\n\"458892\";\"КЕГУМС\";\"other\"\n\"458972\";\"Kārsava\";\"main\"\n\"458972\";\"Karsava\";\"ascii\"\n\"458972\";\"KARSAVA\";\"other\"\n\"458972\";\"Korsovka\";\"other\"\n\"458972\";\"Korsowka\";\"other\"\n\"458972\";\"КАРСАВА\";\"other\"\n\"459031\";\"Kandava\";\"main\"\n\"459031\";\"Kandau\";\"other\"\n\"459031\";\"Кандава\";\"other\"\n\"459201\";\"Jūrmala\";\"main\"\n\"459201\";\"Jurmala\";\"ascii\"\n\"459201\";\"Riga Beach\";\"other\"\n\"459201\";\"Riga-Strand\";\"other\"\n\"459201\";\"Rigas Iurmala\";\"other\"\n\"459201\";\"Rigas Jormalas Pilseta\";\"other\"\n\"459201\";\"Rigas Jurmala\";\"other\"\n\"459201\";\"Rigas Yurmala\";\"other\"\n\"459201\";\"Rigastrand\";\"other\"\n\"459201\";\"Rizhskoye Vzmor'ye\";\"other\"\n\"459201\";\"Rīgas Jormalas Pilsēta\";\"other\"\n\"459201\";\"Rīgas Jūrmala\";\"other\"\n\"459201\";\"Yuomala\";\"other\"\n\"459201\";\"Yurmala\";\"other\"\n\"459201\";\"Юрмала\";\"other\"\n\"459220\";\"Jumprava\";\"main\"\n\"459220\";\"Yumprava\";\"other\"\n\"459279\";\"Jelgava\";\"main\"\n\"459279\";\"Elgava\";\"other\"\n\"459279\";\"Iyelgava\";\"other\"\n\"459279\";\"Jelgawa\";\"other\"\n\"459279\";\"Mitau\";\"other\"\n\"459279\";\"Mitava\";\"other\"\n\"459279\";\"Mitawa\";\"other\"\n\"459279\";\"Yelgava\";\"other\"\n\"459279\";\"Елгава\";\"other\"\n\"459279\";\"Елґава\";\"other\"\n\"459283\";\"Jēkabpils\";\"main\"\n\"459283\";\"Jekabpils\";\"ascii\"\n\"459283\";\"EKABPILS\";\"other\"\n\"459283\";\"Jakobstadt\";\"other\"\n\"459283\";\"Jekabpilis\";\"other\"\n\"459283\";\"Kreuzburg\";\"other\"\n\"459283\";\"Krustpils\";\"other\"\n\"459283\";\"Yakabpils\";\"other\"\n\"459283\";\"Yekabpils\";\"other\"\n\"459283\";\"ЕКАБПИЛС\";\"other\"\n\"459283\";\"Йекабпилс\";\"other\"\n\"459402\";\"Jaunjelgava\";\"main\"\n\"459402\";\"Friedrichstadt\";\"other\"\n\"459402\";\"JAUNELGAVA\";\"other\"\n\"459402\";\"Yaun-Yelgava\";\"other\"\n\"459402\";\"Yaunelgava\";\"other\"\n\"459402\";\"ЯУНЕЛГАВА\";\"other\"\n\"459419\";\"Jaunciems\";\"main\"\n\"459419\";\"Yauntsiyems\";\"other\"\n\"459419\";\"Яунциемс\";\"other\"\n\"459586\";\"Ilūkste\";\"main\"\n\"459586\";\"Ilukste\";\"ascii\"\n\"459586\";\"ILUKSTE\";\"other\"\n\"459586\";\"ИЛУКСТЕ\";\"other\"\n\"459598\";\"Ikšķile\";\"main\"\n\"459598\";\"Ikskile\";\"ascii\"\n\"459598\";\"IKSHKILE\";\"other\"\n\"459598\";\"Ikshkile\";\"other\"\n\"459598\";\"Ikshtile\";\"other\"\n\"459598\";\"Ikškilė\";\"other\"\n\"459598\";\"Ykskylae\";\"other\"\n\"459598\";\"Ykskylä\";\"other\"\n\"459598\";\"ИКШКИЛЕ\";\"other\"\n\"459624\";\"Iecava\";\"main\"\n\"459624\";\"Eckau\";\"other\"\n\"459624\";\"IECAVA\";\"other\"\n\"459624\";\"Iyetsava\";\"other\"\n\"459624\";\"ИЕЦАВА\";\"other\"\n\"459668\";\"Gulbene\";\"main\"\n\"459668\";\"Alt-Schwaneburg\";\"other\"\n\"459668\";\"GULBENE\";\"other\"\n\"459668\";\"ГУЛБЕНЕ\";\"other\"\n\"459692\";\"Grobiņa\";\"main\"\n\"459692\";\"Grobina\";\"ascii\"\n\"459692\";\"Gerobin\";\"other\"\n\"459692\";\"Grobin\";\"other\"\n\"459692\";\"Grobinya\";\"other\"\n\"460019\";\"Engure\";\"main\"\n\"460019\";\"Anger\";\"other\"\n\"460019\";\"Engurciems\";\"other\"\n\"460312\";\"Dobele\";\"main\"\n\"460312\";\"Doblen\";\"other\"\n\"460312\";\"Duobele\";\"other\"\n\"460312\";\"Duobelė\";\"other\"\n\"460312\";\"Добеле\";\"other\"\n\"460413\";\"Daugavpils\";\"main\"\n\"460413\";\"DAUGAVPILS\";\"other\"\n\"460413\";\"Daugaupils\";\"other\"\n\"460413\";\"Daugawpils\";\"other\"\n\"460413\";\"Daugpilis\";\"other\"\n\"460413\";\"Duenaburg\";\"other\"\n\"460413\";\"Dvinsk\";\"other\"\n\"460413\";\"Dwinsk\";\"other\"\n\"460413\";\"Dyneburg\";\"other\"\n\"460413\";\"Dünaburg\";\"other\"\n\"460413\";\"Vaeinaenlinna\";\"other\"\n\"460413\";\"Väinänlinna\";\"other\"\n\"460413\";\"daugafupirusu\";\"other\"\n\"460413\";\"daugapeupilseu\";\"other\"\n\"460413\";\"ДАУГАВПИЛС\";\"other\"\n\"460413\";\"Даугавпилс\";\"other\"\n\"460413\";\"Даўґаўпілс\";\"other\"\n\"460413\";\"דאוגבפילס\";\"other\"\n\"460413\";\"ダウガフピルス\";\"other\"\n\"460413\";\"다우가프필스\";\"other\"\n\"460416\";\"Daugavgrīva\";\"main\"\n\"460416\";\"Daugavgriva\";\"ascii\"\n\"460416\";\"Dinamjunde\";\"other\"\n\"460416\";\"Duenamuende\";\"other\"\n\"460416\";\"Dynemunt\";\"other\"\n\"460416\";\"Dünamünde\";\"other\"\n\"460416\";\"Ust'-Dvinsk\";\"other\"\n\"460416\";\"Даугавгрива\";\"other\"\n\"460416\";\"Динамюнде\";\"other\"\n\"460416\";\"Усть-Двинск\";\"other\"\n\"460474\";\"Dagda\";\"main\"\n\"460474\";\"DAGDA\";\"other\"\n\"460474\";\"ДАГДА\";\"other\"\n\"460568\";\"Cesvaine\";\"main\"\n\"460568\";\"CESVAJNE\";\"other\"\n\"460568\";\"Cesvaines Muiza\";\"other\"\n\"460568\";\"Cesvaines Muiža\";\"other\"\n\"460568\";\"Tsesvayne\";\"other\"\n\"460568\";\"ЦЕСВАЙНЕ\";\"other\"\n\"460570\";\"Cēsis\";\"main\"\n\"460570\";\"Cesis\";\"ascii\"\n\"460570\";\"CESIS\";\"other\"\n\"460570\";\"Cesys\";\"other\"\n\"460570\";\"Cėsys\";\"other\"\n\"460570\";\"Tsesis\";\"other\"\n\"460570\";\"Venden\";\"other\"\n\"460570\";\"Wenden\";\"other\"\n\"460570\";\"tsu~eshisu\";\"other\"\n\"460570\";\"ЦЕСИС\";\"other\"\n\"460570\";\"Цесис\";\"other\"\n\"460570\";\"ツェーシス\";\"other\"\n\"460786\";\"Brocēni\";\"main\"\n\"460786\";\"Broceni\";\"ascii\"\n\"460786\";\"Brocenu Muiza\";\"other\"\n\"460786\";\"Brocēnu Muiža\";\"other\"\n\"460786\";\"Brotseny\";\"other\"\n\"460786\";\"Myza Brotseny\";\"other\"\n\"460885\";\"Bolderaja\";\"main\"\n\"460885\";\"Bol'deraa\";\"other\"\n\"460885\";\"Bolderaa\";\"other\"\n\"460885\";\"Bolderaj\";\"other\"\n\"460885\";\"Bolderāja\";\"other\"\n\"460885\";\"Болдерай\";\"other\"\n\"460885\";\"Болдерая\";\"other\"\n\"460885\";\"Больдераа\";\"other\"\n\"461114\";\"Bauska\";\"main\"\n\"461114\";\"BAUSKA\";\"other\"\n\"461114\";\"Bauske\";\"other\"\n\"461114\";\"Bauskė\";\"other\"\n\"461114\";\"Bosko\";\"other\"\n\"461114\";\"БАУСКА\";\"other\"\n\"461114\";\"Бауска\";\"other\"\n\"461163\";\"Balvi\";\"main\"\n\"461163\";\"BALVI\";\"other\"\n\"461163\";\"Balvy\";\"other\"\n\"461163\";\"Bolowsk\";\"other\"\n\"461163\";\"Bolvi\";\"other\"\n\"461163\";\"БАЛВИ\";\"other\"\n\"461224\";\"Baldone\";\"main\"\n\"461336\";\"Auce\";\"main\"\n\"461336\";\"Aucė\";\"other\"\n\"461336\";\"Autse\";\"other\"\n\"461336\";\"Autz\";\"other\"\n\"461442\";\"Ape\";\"main\"\n\"461442\";\"APE\";\"other\"\n\"461442\";\"Ope\";\"other\"\n\"461442\";\"АПЕ\";\"other\"\n\"461528\";\"Alūksne\";\"main\"\n\"461528\";\"Aluksne\";\"ascii\"\n\"461528\";\"Alksne\";\"other\"\n\"461528\";\"Alouksne\";\"other\"\n\"461528\";\"Alūksnė\";\"other\"\n\"461528\";\"Marienburg\";\"other\"\n\"461528\";\"Αλούκσνε\";\"other\"\n\"461539\";\"Aloja\";\"main\"\n\"461539\";\"ALOJA\";\"other\"\n\"461539\";\"Alojas Muiza\";\"other\"\n\"461539\";\"Alojas Muiža\";\"other\"\n\"461539\";\"Aloya\";\"other\"\n\"461539\";\"Myza Aloya\";\"other\"\n\"461539\";\"АЛОЯ\";\"other\"\n\"461566\";\"Aknīste\";\"main\"\n\"461566\";\"Akniste\";\"ascii\"\n\"461566\";\"AKNISTE\";\"other\"\n\"461566\";\"АКНИСТЕ\";\"other\"\n\"461602\";\"Aizpute\";\"main\"\n\"461602\";\"Aispute\";\"other\"\n\"461602\";\"Aizputė\";\"other\"\n\"461602\";\"Ayzpute\";\"other\"\n\"461602\";\"Gazenpot\";\"other\"\n\"461602\";\"Hazenpot\";\"other\"\n\"461615\";\"Aizkraukle\";\"main\"\n\"461615\";\"Aizkraukles Muiza\";\"other\"\n\"461615\";\"Aizkraukles Muiža\";\"other\"\n\"461615\";\"Ayzkraukle\";\"other\"\n\"461628\";\"Ainaži\";\"main\"\n\"461628\";\"Ainazi\";\"ascii\"\n\"461628\";\"AJNAZHI\";\"other\"\n\"461628\";\"Amazi\";\"other\"\n\"461628\";\"Aynazhi\";\"other\"\n\"461628\";\"Gainash\";\"other\"\n\"461628\";\"Hainasch\";\"other\"\n\"461628\";\"Heinaste\";\"other\"\n\"461628\";\"АЙНАЖИ\";\"other\"\n\"864721\";\"Baloži\";\"main\"\n\"864721\";\"Balozi\";\"ascii\"\n\"864721\";\"BALOZHI\";\"other\"\n\"864721\";\"Balozhi\";\"other\"\n\"864721\";\"БАЛОЖИ\";\"other\"\n\"80509\";\"Bardīyah\";\"main\"\n\"80509\";\"Bardiyah\";\"ascii\"\n\"80509\";\"Al Bardiyah\";\"other\"\n\"80509\";\"Al Bardīyah\";\"other\"\n\"80509\";\"Bardia\";\"other\"\n\"80509\";\"Bordi Sleman\";\"other\"\n\"80509\";\"Bórdi Slemán\";\"other\"\n\"80509\";\"Petras Maior\";\"other\"\n\"81302\";\"Tobruk\";\"main\"\n\"81302\";\"Antipyrgos\";\"other\"\n\"81302\";\"Antipyrgus\";\"other\"\n\"81302\";\"Tobroek\";\"other\"\n\"81302\";\"Tobrouk\";\"other\"\n\"81302\";\"Tobruch\";\"other\"\n\"81302\";\"Tobruck\";\"other\"\n\"81302\";\"Tubruk\";\"other\"\n\"81302\";\"Tubruq\";\"other\"\n\"81302\";\"Tóbruch\";\"other\"\n\"81302\";\"tbrq\";\"other\"\n\"81302\";\"toburuku\";\"other\"\n\"81302\";\"tu bo lu ge\";\"other\"\n\"81302\";\"tubruq\";\"other\"\n\"81302\";\"twbrwq\";\"other\"\n\"81302\";\"Ţubruq\";\"other\"\n\"81302\";\"Тобрук\";\"other\"\n\"81302\";\"טוברוק\";\"other\"\n\"81302\";\"طبرق\";\"other\"\n\"81302\";\"طُبْرُق\";\"other\"\n\"81302\";\"トブルク\";\"other\"\n\"81302\";\"图卜鲁格\";\"other\"\n\"81604\";\"Sulūq\";\"main\"\n\"81604\";\"Suluq\";\"ascii\"\n\"81604\";\"Qaryat Salug\";\"other\"\n\"81604\";\"Qaryat Saluq\";\"other\"\n\"81604\";\"Qaryat Salūg\";\"other\"\n\"81604\";\"Qaryat Salūq\";\"other\"\n\"81604\";\"Soluch\";\"other\"\n\"81604\";\"Solugh\";\"other\"\n\"81604\";\"Solùgh\";\"other\"\n\"86049\";\"Jālū\";\"main\"\n\"86049\";\"Jalu\";\"ascii\"\n\"86049\";\"Gialo\";\"other\"\n\"87205\";\"Darnah\";\"main\"\n\"87205\";\"Daernae\";\"other\"\n\"87205\";\"Darnis\";\"other\"\n\"87205\";\"Derna\";\"other\"\n\"87205\";\"Därnä\";\"other\"\n\"87205\";\"Dérna\";\"other\"\n\"87205\";\"drnh\";\"other\"\n\"87205\";\"drnt\";\"other\"\n\"87205\";\"דרנה\";\"other\"\n\"87205\";\"درنة\";\"other\"\n\"88319\";\"Banghāzī\";\"main\"\n\"88319\";\"Banghazi\";\"ascii\"\n\"88319\";\"Baengasi\";\"other\"\n\"88319\";\"Bengasi\";\"other\"\n\"88319\";\"Bengaze\";\"other\"\n\"88319\";\"Bengazi\";\"other\"\n\"88319\";\"Benghasi\";\"other\"\n\"88319\";\"Benghazi\";\"other\"\n\"88319\";\"Berenice\";\"other\"\n\"88319\";\"Bingazi\";\"other\"\n\"88319\";\"Binghazi\";\"other\"\n\"88319\";\"Binghāzī\";\"other\"\n\"88319\";\"Bängasi\";\"other\"\n\"88319\";\"Hesperides\";\"other\"\n\"88319\";\"ban jia xi\";\"other\"\n\"88319\";\"bnghazy\";\"other\"\n\"88319\";\"Βεγγάζη\";\"other\"\n\"88319\";\"Бенгази\";\"other\"\n\"88319\";\"בנגאזי\";\"other\"\n\"88319\";\"بنغازي\";\"other\"\n\"88319\";\"بنغازی\";\"other\"\n\"88319\";\"班加西\";\"other\"\n\"88380\";\"Az Zuwaytīnah\";\"main\"\n\"88380\";\"Az Zuwaytinah\";\"ascii\"\n\"88380\";\"Ez Zuetina\";\"other\"\n\"88380\";\"Ez Zuetína\";\"other\"\n\"88380\";\"Marsa Uasili\";\"other\"\n\"88380\";\"Qaryat az Zuwaytinah\";\"other\"\n\"88380\";\"Qaryat az Zuwaytīnah\";\"other\"\n\"88380\";\"Zueitina\";\"other\"\n\"88380\";\"Zuetina\";\"other\"\n\"88533\";\"Awjilah\";\"main\"\n\"88533\";\"Augila\";\"other\"\n\"88533\";\"Wajilah\";\"other\"\n\"88562\";\"At Tāj\";\"main\"\n\"88562\";\"At Taj\";\"ascii\"\n\"88562\";\"Et Tag\";\"other\"\n\"88834\";\"Al `Āqūrīyah\";\"main\"\n\"88834\";\"Al `Aquriyah\";\"ascii\"\n\"88834\";\"Taukra\";\"other\"\n\"88834\";\"Teuchira\";\"other\"\n\"88834\";\"Tocra\";\"other\"\n\"88834\";\"Tokrah\";\"other\"\n\"88834\";\"Tukrah\";\"other\"\n\"88834\";\"Tócra\";\"other\"\n\"88834\";\"Tūkrah\";\"other\"\n\"88835\";\"Al Qubbah\";\"main\"\n\"88835\";\"Al Gubbah\";\"other\"\n\"88835\";\"Berta\";\"other\"\n\"88835\";\"El-Gubba\";\"other\"\n\"88835\";\"El-Gúbba\";\"other\"\n\"88835\";\"Giovanni Berta\";\"other\"\n\"88835\";\"Gubba\";\"other\"\n\"88903\";\"Al Marj\";\"main\"\n\"88903\";\"Al'-Mardzh\";\"other\"\n\"88903\";\"El Merj\";\"other\"\n\"88903\";\"Maerciaen\";\"other\"\n\"88903\";\"Märciän\";\"other\"\n\"88903\";\"Аль-Мардж\";\"other\"\n\"88903\";\"شعبية المرج\";\"other\"\n\"89087\";\"Al Abyār\";\"main\"\n\"89087\";\"Al Abyar\";\"ascii\"\n\"89087\";\"Alabia\";\"other\"\n\"89087\";\"El Abiar\";\"other\"\n\"89087\";\"Madirat al Abyar\";\"other\"\n\"89087\";\"Madīrat al Abyār\";\"other\"\n\"89113\";\"Ajdābiyā\";\"main\"\n\"89113\";\"Ajdabiya\";\"ascii\"\n\"89113\";\"AEcdabiya\";\"other\"\n\"89113\";\"Adjadabia\";\"other\"\n\"89113\";\"Agedabia\";\"other\"\n\"89113\";\"Ajdabiyah\";\"other\"\n\"89113\";\"Ajdābiyah\";\"other\"\n\"89113\";\"Laecdabiaen\";\"other\"\n\"89113\";\"Läcdabiän\";\"other\"\n\"89113\";\"Äcdabiya\";\"other\"\n\"89113\";\"شعبية إجدابيا\";\"other\"\n\"2208425\";\"Zuwārah\";\"main\"\n\"2208425\";\"Zuwarah\";\"ascii\"\n\"2208425\";\"Zuara\";\"other\"\n\"2208425\";\"Zuava\";\"other\"\n\"2208425\";\"Zuára\";\"other\"\n\"2208425\";\"Zuáva\";\"other\"\n\"2208425\";\"Зуара\";\"other\"\n\"2208655\";\"Zalţan\";\"main\"\n\"2208655\";\"Zaltan\";\"ascii\"\n\"2208655\";\"Zelten\";\"other\"\n\"2208791\";\"Yafran\";\"main\"\n\"2208791\";\"Gasr Iefren\";\"other\"\n\"2208791\";\"Iefren\";\"other\"\n\"2208791\";\"Jafran\";\"other\"\n\"2208791\";\"Jefren\";\"other\"\n\"2208791\";\"Yaefraeniaen\";\"other\"\n\"2208791\";\"Yafrin\";\"other\"\n\"2208791\";\"Yäfräniän\";\"other\"\n\"2208791\";\"Яфран\";\"other\"\n\"2208791\";\"شعبية يفرن\";\"other\"\n\"2209055\";\"Waddān\";\"main\"\n\"2209055\";\"Waddan\";\"ascii\"\n\"2209055\";\"Uaddan\";\"other\"\n\"2210221\";\"Tarhūnah\";\"main\"\n\"2210221\";\"Tarhunah\";\"ascii\"\n\"2210221\";\"El-Buerat\";\"other\"\n\"2210221\";\"El-Buerát\";\"other\"\n\"2210221\";\"El-Ubberat\";\"other\"\n\"2210221\";\"El-Ubberát\";\"other\"\n\"2210221\";\"Gasr Tarhuna\";\"other\"\n\"2210221\";\"Qasr Tarhunah\";\"other\"\n\"2210221\";\"Qaşr Tarhūnah\";\"other\"\n\"2210221\";\"Tarhuna\";\"other\"\n\"2210221\";\"Tarkhuny\";\"other\"\n\"2210221\";\"Тархуны\";\"other\"\n\"2210247\";\"Tripoli\";\"main\"\n\"2210247\";\"Aea\";\"other\"\n\"2210247\";\"Ea\";\"other\"\n\"2210247\";\"Oea\";\"other\"\n\"2210247\";\"Tarables\";\"other\"\n\"2210247\";\"Tarabulus\";\"other\"\n\"2210247\";\"Tarabulus al Gharb\";\"other\"\n\"2210247\";\"Tarabulus el Gharb\";\"other\"\n\"2210247\";\"Taràbles\";\"other\"\n\"2210247\";\"Tripole\";\"other\"\n\"2210247\";\"Tripolis\";\"other\"\n\"2210247\";\"Trípoli\";\"other\"\n\"2210247\";\"tarabulus\";\"other\"\n\"2210247\";\"Ţarābulus\";\"other\"\n\"2210247\";\"Ţarābulus al Gharb\";\"other\"\n\"2210247\";\"Τρίπολη\";\"other\"\n\"2210247\";\"Триполи\";\"other\"\n\"2210247\";\"طَرَابُلُس\";\"other\"\n\"2210554\";\"Surt\";\"main\"\n\"2210554\";\"Gasr Zaafran\";\"other\"\n\"2210554\";\"Gasr Zaafrán\";\"other\"\n\"2210554\";\"Macomades-Euphranta\";\"other\"\n\"2210554\";\"Qasr Sirt\";\"other\"\n\"2210554\";\"Qasr Za`faran\";\"other\"\n\"2210554\";\"Qaşr Sirt\";\"other\"\n\"2210554\";\"Qaşr Za‘farān\";\"other\"\n\"2210554\";\"Sert\";\"other\"\n\"2210554\";\"Sirt\";\"other\"\n\"2210554\";\"Sirte\";\"other\"\n\"2210554\";\"Surtaen\";\"other\"\n\"2210554\";\"Surtiaen\";\"other\"\n\"2210554\";\"Surtiän\";\"other\"\n\"2210554\";\"Surtän\";\"other\"\n\"2210554\";\"Syrte\";\"other\"\n\"2210554\";\"astan srt\";\"other\"\n\"2210554\";\"su er te\";\"other\"\n\"2210554\";\"su te\";\"other\"\n\"2210554\";\"Сурт\";\"other\"\n\"2210554\";\"استان سرت\";\"other\"\n\"2210554\";\"شعبية سرت\";\"other\"\n\"2210554\";\"苏尔特\";\"other\"\n\"2210554\";\"蘇特\";\"other\"\n\"2210560\";\"Şurmān\";\"main\"\n\"2210560\";\"Surman\";\"ascii\"\n\"2210560\";\"Sorman\";\"other\"\n\"2210560\";\"Sormán\";\"other\"\n\"2212771\";\"Şabrātah\";\"main\"\n\"2212771\";\"Sabratah\";\"ascii\"\n\"2212771\";\"Madinat Sabratah\";\"other\"\n\"2212771\";\"Madīnat Şabrātah\";\"other\"\n\"2212771\";\"Sabra\";\"other\"\n\"2212771\";\"Sabrah\";\"other\"\n\"2212771\";\"Sabratha\";\"other\"\n\"2212771\";\"Sábra\";\"other\"\n\"2212771\";\"Şabrah\";\"other\"\n\"2214433\";\"Nālūt\";\"main\"\n\"2214433\";\"Nalut\";\"ascii\"\n\"2214433\";\"Lalut\";\"other\"\n\"2214433\";\"Lalút\";\"other\"\n\"2214603\";\"Murzuq\";\"main\"\n\"2214603\";\"Marzuq\";\"other\"\n\"2214603\";\"Marzūq\";\"other\"\n\"2214603\";\"Mourzouk\";\"other\"\n\"2214603\";\"Mursukiaen\";\"other\"\n\"2214603\";\"Mursukiän\";\"other\"\n\"2214603\";\"Murzuch\";\"other\"\n\"2214603\";\"شعبية مرزق\";\"other\"\n\"2214827\";\"Mizdah\";\"main\"\n\"2214827\";\"Misdah\";\"other\"\n\"2214827\";\"Mizda\";\"other\"\n\"2214846\";\"Mişrātah\";\"main\"\n\"2214846\";\"Misratah\";\"ascii\"\n\"2214846\";\"Al Misratah\";\"other\"\n\"2214846\";\"Madinat Misratah\";\"other\"\n\"2214846\";\"Madīnat Mişrātah\";\"other\"\n\"2214846\";\"Misrata\";\"other\"\n\"2214846\";\"Misurata\";\"other\"\n\"2214846\";\"msrath\";\"other\"\n\"2214846\";\"msratt\";\"other\"\n\"2214846\";\"myswrth\";\"other\"\n\"2214846\";\"Мисурата\";\"other\"\n\"2214846\";\"מיסורטה\";\"other\"\n\"2214846\";\"مصراتة\";\"other\"\n\"2214846\";\"مصراته\";\"other\"\n\"2215163\";\"Masallātah\";\"main\"\n\"2215163\";\"Masallatah\";\"ascii\"\n\"2215210\";\"Al Burayqah\";\"main\"\n\"2215210\";\"El-Brega\";\"other\"\n\"2215210\";\"Marsa Brega\";\"other\"\n\"2215210\";\"Marsa Bregha\";\"other\"\n\"2215210\";\"Marsa al Burayqah\";\"other\"\n\"2215210\";\"Marsa el Brega\";\"other\"\n\"2215210\";\"Marsá al Burayqah\";\"other\"\n\"2215210\";\"Port Brega\";\"other\"\n\"2215210\";\"Qasr al Buraygah\";\"other\"\n\"2215210\";\"Qasr al Burayqah\";\"other\"\n\"2215210\";\"Qaşr al Burayqah\";\"other\"\n\"2216432\";\"Jādū\";\"main\"\n\"2216432\";\"Jadu\";\"ascii\"\n\"2216432\";\"Giado\";\"other\"\n\"2216645\";\"Hūn\";\"main\"\n\"2216645\";\"Hun\";\"ascii\"\n\"2216645\";\"Hon\";\"other\"\n\"2216645\";\"Madinat Hun\";\"other\"\n\"2216645\";\"Madīnat Hūn\";\"other\"\n\"2216885\";\"Ḩārat az Zāwiyah\";\"main\"\n\"2216885\";\"Harat az Zawiyah\";\"ascii\"\n\"2216885\";\"Al Harah\";\"other\"\n\"2216885\";\"Al Ḩārah\";\"other\"\n\"2216885\";\"El-Hara\";\"other\"\n\"2216885\";\"El-Hára\";\"other\"\n\"2216885\";\"Haraf Az Zawiyah\";\"other\"\n\"2216885\";\"Haraf Az Zāwīyah\";\"other\"\n\"2217351\";\"Ghāt\";\"main\"\n\"2217351\";\"Ghat\";\"ascii\"\n\"2217351\";\"Gat\";\"other\"\n\"2217351\";\"Rhat\";\"other\"\n\"2217351\";\"Гат\";\"other\"\n\"2217362\";\"Gharyān\";\"main\"\n\"2217362\";\"Gharyan\";\"ascii\"\n\"2217362\";\"Garian\";\"other\"\n\"2217362\";\"Gasr Garian\";\"other\"\n\"2217362\";\"Gasr Gariàn\";\"other\"\n\"2217362\";\"ghryan\";\"other\"\n\"2217362\";\"غريان\";\"other\"\n\"2217440\";\"Ghadāmis\";\"main\"\n\"2217440\";\"Ghadamis\";\"ascii\"\n\"2217440\";\"Gadames\";\"other\"\n\"2217440\";\"Gadamis\";\"other\"\n\"2217440\";\"Gadamés\";\"other\"\n\"2217440\";\"Ghadames\";\"other\"\n\"2217440\";\"Ghudamis\";\"other\"\n\"2217440\";\"Ghudāmis\";\"other\"\n\"2217440\";\"Rhadames\";\"other\"\n\"2217440\";\"ghdams\";\"other\"\n\"2217440\";\"Гадамес\";\"other\"\n\"2217440\";\"غدامس\";\"other\"\n\"2218478\";\"Birāk\";\"main\"\n\"2218478\";\"Birak\";\"ascii\"\n\"2218478\";\"Brach\";\"other\"\n\"2218840\";\"Banī Walīd\";\"main\"\n\"2218840\";\"Bani Walid\";\"ascii\"\n\"2218840\";\"Beni Ulid\";\"other\"\n\"2218840\";\"Gasr Beni Ulid\";\"other\"\n\"2218840\";\"Gasr Béni Ulíd\";\"other\"\n\"2218840\";\"Qasr Bani Walid\";\"other\"\n\"2218840\";\"Qaşr Banī Walīd\";\"other\"\n\"2219235\";\"Awbārī\";\"main\"\n\"2219235\";\"Awbari\";\"ascii\"\n\"2219235\";\"Ubari\";\"other\"\n\"2219905\";\"Al Khums\";\"main\"\n\"2219905\";\"El Choms\";\"other\"\n\"2219905\";\"Homs\";\"other\"\n\"2219905\";\"Khoms\";\"other\"\n\"2219905\";\"Labdah\";\"other\"\n\"2219905\";\"Lebda\";\"other\"\n\"2219960\";\"Al Jadīd\";\"main\"\n\"2219960\";\"Al Jadid\";\"ascii\"\n\"2219960\";\"Al'-Dzhadid\";\"other\"\n\"2219960\";\"El-Gedid\";\"other\"\n\"2219960\";\"El-Gedíd\";\"other\"\n\"2219960\";\"Аль-Джадид\";\"other\"\n\"2526435\";\"Zaïo\";\"main\"\n\"2526435\";\"Zaio\";\"ascii\"\n\"2526435\";\"Toumiat Zaio\";\"other\"\n\"2526435\";\"Toumiat Zaïo\";\"other\"\n\"2526435\";\"Tumiat\";\"other\"\n\"2526435\";\"Tumiat Zaio\";\"other\"\n\"2526452\";\"Zagora\";\"main\"\n\"2526452\";\"Загора\";\"other\"\n\"2526488\";\"Youssoufia\";\"main\"\n\"2526488\";\"Louis Gentil\";\"other\"\n\"2527089\";\"Tiznit\";\"main\"\n\"2527089\";\"Тизнит\";\"other\"\n\"2527645\";\"Tirhanimîne\";\"main\"\n\"2527645\";\"Tirhanimine\";\"ascii\"\n\"2527915\";\"Tineghir\";\"main\"\n\"2527915\";\"Tinerhir\";\"other\"\n\"2527915\";\"Tinghir\";\"other\"\n\"2527915\";\"Tinrhir\";\"other\"\n\"2528659\";\"Tiflet\";\"main\"\n\"2528910\";\"Tétouan\";\"main\"\n\"2528910\";\"Tetouan\";\"ascii\"\n\"2528910\";\"Tetuan\";\"other\"\n\"2528910\";\"Tetuán\";\"other\"\n\"2528910\";\"ttwan\";\"other\"\n\"2528910\";\"Тетуан\";\"other\"\n\"2528910\";\"تطوان\";\"other\"\n\"2529317\";\"Taza\";\"main\"\n\"2529317\";\"tazh\";\"other\"\n\"2529317\";\"tazt\";\"other\"\n\"2529317\";\"Таза\";\"other\"\n\"2529317\";\"تازة\";\"other\"\n\"2529317\";\"تازه\";\"other\"\n\"2529649\";\"Taroudant\";\"main\"\n\"2529649\";\"Tarudant\";\"other\"\n\"2529649\";\"Тарудант\";\"other\"\n\"2530048\";\"Taourirt\";\"main\"\n\"2530155\";\"Taounate\";\"main\"\n\"2530155\";\"Taounat\";\"other\"\n\"2530155\";\"Taunat\";\"other\"\n\"2530155\";\"Tawnat\";\"other\"\n\"2530155\";\"Таунат\";\"other\"\n\"2530241\";\"Tan-Tan\";\"main\"\n\"2530241\";\"tantan\";\"other\"\n\"2530241\";\"Тан-Тан\";\"other\"\n\"2530241\";\"طانطان\";\"other\"\n\"2530335\";\"Tangier\";\"main\"\n\"2530335\";\"Tanger\";\"other\"\n\"2530335\";\"Tangeri\";\"other\"\n\"2530335\";\"Tangero\";\"other\"\n\"2530335\";\"Tanzher\";\"other\"\n\"2530335\";\"Tanĝero\";\"other\"\n\"2530335\";\"Tingis\";\"other\"\n\"2530335\";\"Tànger\";\"other\"\n\"2530335\";\"Tánger\";\"other\"\n\"2530335\";\"Tânger\";\"other\"\n\"2530335\";\"tan ji ya\";\"other\"\n\"2530335\";\"tnjt\";\"other\"\n\"2530335\";\"Тангер\";\"other\"\n\"2530335\";\"Танжер\";\"other\"\n\"2530335\";\"طنجة\";\"other\"\n\"2530335\";\"坦幾亞\";\"other\"\n\"2531480\";\"Tahala\";\"main\"\n\"2531480\";\"El Ayba Tahalla\";\"other\"\n\"2531877\";\"Tafraout\";\"main\"\n\"2531877\";\"Tafraoute\";\"other\"\n\"2531877\";\"Tafraut\";\"other\"\n\"2532394\";\"Souq Larb’a al Gharb\";\"main\"\n\"2532394\";\"Souq Larb'a al Gharb\";\"ascii\"\n\"2532394\";\"El Arba du Gharb\";\"other\"\n\"2532394\";\"El Arba du Rharb\";\"other\"\n\"2532394\";\"El Arbaa du Rharb\";\"other\"\n\"2532394\";\"El Arboa du Rharb\";\"other\"\n\"2532394\";\"Souk-el-Arba-du-Gharb\";\"other\"\n\"2532822\";\"Sidi Yahia el Gharb\";\"main\"\n\"2532822\";\"Sidi Yahia al Gharb\";\"other\"\n\"2532822\";\"Sidi Yahia del Garb\";\"other\"\n\"2532822\";\"Sidi Yahia el Rharb\";\"other\"\n\"2532822\";\"Sidi Yahya du Rharb\";\"other\"\n\"2532822\";\"Sidi Yanya du Rharb\";\"other\"\n\"2532822\";\"Sidi Yaya du Rhanb\";\"other\"\n\"2532822\";\"Sïdi Yaya du Rhanb\";\"other\"\n\"2532918\";\"Sidi Smaïl\";\"main\"\n\"2532918\";\"Sidi Smail\";\"ascii\"\n\"2532918\";\"Sidi Smaine\";\"other\"\n\"2532918\";\"Sidi Smaïne\";\"other\"\n\"2532918\";\"Sidi-Smain\";\"other\"\n\"2532918\";\"Sidi-Smaïn\";\"other\"\n\"2532918\";\"Zaouia Sidi Smain\";\"other\"\n\"2532945\";\"Sidi Slimane\";\"main\"\n\"2532945\";\"Sidi Slamain\";\"other\"\n\"2532945\";\"Sidi Sliman\";\"other\"\n\"2532945\";\"Sidi-Slimane\";\"other\"\n\"2532945\";\"Сиди-Слимане\";\"other\"\n\"2533191\";\"Sidi Qacem\";\"main\"\n\"2533191\";\"Petitjean\";\"other\"\n\"2533191\";\"Pettijean\";\"other\"\n\"2533191\";\"Sidi Kacem\";\"other\"\n\"2533191\";\"Sidi Qasim\";\"other\"\n\"2533191\";\"Sīdī Qāsim\";\"other\"\n\"2533191\";\"sdy qasm\";\"other\"\n\"2533191\";\"سدي قاسم\";\"other\"\n\"2534515\";\"Sidi Ifni\";\"main\"\n\"2534515\";\"Ifni\";\"other\"\n\"2534515\";\"Sidifni\";\"other\"\n\"2534515\";\"sydy afny\";\"other\"\n\"2534515\";\"Сиди Ифни\";\"other\"\n\"2534515\";\"سيدي إفني\";\"other\"\n\"2536074\";\"Sidi Bennour\";\"main\"\n\"2537406\";\"Settat\";\"main\"\n\"2537406\";\"stat\";\"other\"\n\"2537406\";\"Сеттат\";\"other\"\n\"2537406\";\"سطات\";\"other\"\n\"2537545\";\"Sefrou\";\"main\"\n\"2537545\";\"Sefru\";\"other\"\n\"2537545\";\"Sefrú\";\"other\"\n\"2537763\";\"Salé\";\"main\"\n\"2537763\";\"Sale\";\"ascii\"\n\"2537763\";\"Sala\";\"other\"\n\"2537763\";\"Sali\";\"other\"\n\"2537763\";\"Sallee\";\"other\"\n\"2537763\";\"Sla\";\"other\"\n\"2537763\";\"sla\";\"other\"\n\"2537763\";\"Сале\";\"other\"\n\"2537763\";\"سلا\";\"other\"\n\"2537881\";\"Safi\";\"main\"\n\"2537881\";\"Asfi\";\"other\"\n\"2537881\";\"Safim\";\"other\"\n\"2537881\";\"asfy\";\"other\"\n\"2537881\";\"Сафи\";\"other\"\n\"2537881\";\"أسفي\";\"other\"\n\"2538475\";\"Rabat\";\"main\"\n\"2538475\";\"Rabatas\";\"other\"\n\"2538475\";\"Rampat\";\"other\"\n\"2538475\";\"alrbat\";\"other\"\n\"2538475\";\"la ba te\";\"other\"\n\"2538475\";\"labateu\";\"other\"\n\"2538475\";\"rabat\";\"other\"\n\"2538475\";\"rabato\";\"other\"\n\"2538475\";\"rbat\";\"other\"\n\"2538475\";\"Ραμπάτ\";\"other\"\n\"2538475\";\"Рабат\";\"other\"\n\"2538475\";\"רבאט\";\"other\"\n\"2538475\";\"الرباط\";\"other\"\n\"2538475\";\"رباط\";\"other\"\n\"2538475\";\"ར་བ་ཐེ\";\"other\"\n\"2538475\";\"ራባት\";\"other\"\n\"2538475\";\"ラバト\";\"other\"\n\"2538475\";\"拉巴特\";\"other\"\n\"2538475\";\"라바트\";\"other\"\n\"2539134\";\"Oulad Teïma\";\"main\"\n\"2539134\";\"Oulad Teima\";\"ascii\"\n\"2539134\";\"Ouled Teima\";\"other\"\n\"2540483\";\"Oujda\";\"main\"\n\"2540483\";\"Oudja\";\"other\"\n\"2540483\";\"Oudjda\";\"other\"\n\"2540483\";\"Ouja\";\"other\"\n\"2540483\";\"Udzda\";\"other\"\n\"2540483\";\"Udzhda\";\"other\"\n\"2540483\";\"Wadzda\";\"other\"\n\"2540483\";\"Wadżda\";\"other\"\n\"2540483\";\"wjdh\";\"other\"\n\"2540483\";\"wjdt\";\"other\"\n\"2540483\";\"Уджда\";\"other\"\n\"2540483\";\"Уџда\";\"other\"\n\"2540483\";\"وجدة\";\"other\"\n\"2540483\";\"وجده\";\"other\"\n\"2540689\";\"Oued Zem\";\"main\"\n\"2540810\";\"Ouazzane\";\"main\"\n\"2540810\";\"Quazzane\";\"other\"\n\"2540810\";\"Uazan\";\"other\"\n\"2540810\";\"Uazán\";\"other\"\n\"2540810\";\"Wazzan\";\"other\"\n\"2540850\";\"Ouarzazat\";\"main\"\n\"2540850\";\"Ouarzazate\";\"other\"\n\"2540850\";\"Ouarzazte\";\"other\"\n\"2540850\";\"Ouorzazate\";\"other\"\n\"2540850\";\"Uarzazatas\";\"other\"\n\"2540850\";\"Varzazat\";\"other\"\n\"2540850\";\"Warzazat\";\"other\"\n\"2540850\";\"Warzāzāt\";\"other\"\n\"2540850\";\"wrzazat\";\"other\"\n\"2540850\";\"wrzzat\";\"other\"\n\"2540850\";\"Варзазат\";\"other\"\n\"2540850\";\"ورزازات\";\"other\"\n\"2540850\";\"ورززات\";\"other\"\n\"2541210\";\"Nouaseur\";\"main\"\n\"2541210\";\"Nouaceur\";\"other\"\n\"2541210\";\"Nwacer\";\"other\"\n\"2541210\";\"Nwaçer\";\"other\"\n\"2541479\";\"Nador\";\"main\"\n\"2541479\";\"Nadoras\";\"other\"\n\"2541479\";\"Villa Nador\";\"other\"\n\"2541479\";\"alnazwr\";\"other\"\n\"2541479\";\"nazwr\";\"other\"\n\"2541479\";\"Надор\";\"other\"\n\"2541479\";\"الناظور\";\"other\"\n\"2541479\";\"ناظور\";\"other\"\n\"2542227\";\"Midelt\";\"main\"\n\"2542715\";\"Meknès\";\"main\"\n\"2542715\";\"Meknes\";\"ascii\"\n\"2542715\";\"Mekinez\";\"other\"\n\"2542715\";\"mei ke nei si\";\"other\"\n\"2542715\";\"mekunesu\";\"other\"\n\"2542715\";\"mknas\";\"other\"\n\"2542715\";\"mqns\";\"other\"\n\"2542715\";\"Мекнес\";\"other\"\n\"2542715\";\"מקנס\";\"other\"\n\"2542715\";\"مكناس\";\"other\"\n\"2542715\";\"مکناس\";\"other\"\n\"2542715\";\"メクネス\";\"other\"\n\"2542715\";\"梅克内斯\";\"other\"\n\"2542866\";\"Mechrá Belqsiri\";\"main\"\n\"2542866\";\"Mechra Belqsiri\";\"ascii\"\n\"2542866\";\"Ksiri\";\"other\"\n\"2542866\";\"Mechra al Ksiri\";\"other\"\n\"2542866\";\"Mechra-bel-Kairi\";\"other\"\n\"2542987\";\"Martil\";\"main\"\n\"2542987\";\"Rio Martin\";\"other\"\n\"2542987\";\"Rio Martine\";\"other\"\n\"2542987\";\"Río Martín\";\"other\"\n\"2542987\";\"Wad Martin\";\"other\"\n\"2542987\";\"Wād Martīn\";\"other\"\n\"2542997\";\"Marrakech\";\"main\"\n\"2542997\";\"Marakes\";\"other\"\n\"2542997\";\"Marakesh\";\"other\"\n\"2542997\";\"Marakeso\";\"other\"\n\"2542997\";\"Marakeŝo\";\"other\"\n\"2542997\";\"Marakeš\";\"other\"\n\"2542997\";\"Maraksh\";\"other\"\n\"2542997\";\"Marrakes\";\"other\"\n\"2542997\";\"Marrakesch\";\"other\"\n\"2542997\";\"Marrakesh\";\"other\"\n\"2542997\";\"Marrakesz\";\"other\"\n\"2542997\";\"Marraqueix\";\"other\"\n\"2542997\";\"Marraquexe\";\"other\"\n\"2542997\";\"Marràqueix\";\"other\"\n\"2542997\";\"Marrákeš\";\"other\"\n\"2542997\";\"Merrakex\";\"other\"\n\"2542997\";\"Morocco City\";\"other\"\n\"2542997\";\"ma la ke shen\";\"other\"\n\"2542997\";\"marakeshu\";\"other\"\n\"2542997\";\"mraksh\";\"other\"\n\"2542997\";\"Маракеш\";\"other\"\n\"2542997\";\"Марракеш\";\"other\"\n\"2542997\";\"مراكش\";\"other\"\n\"2542997\";\"マラケシュ\";\"other\"\n\"2542997\";\"马拉喀什\";\"other\"\n\"2543394\";\"Ifrane\";\"main\"\n\"2543394\";\"Ifran\";\"other\"\n\"2543394\";\"Lfrane\";\"other\"\n\"2543394\";\"Ифран\";\"other\"\n\"2543549\";\"Larache\";\"main\"\n\"2543549\";\"Al `Ara'ish\";\"other\"\n\"2543549\";\"Al ‘Arā’īsh\";\"other\"\n\"2543549\";\"Al-Araisz\";\"other\"\n\"2543549\";\"El Aaraich\";\"other\"\n\"2543549\";\"Larasha\";\"other\"\n\"2543549\";\"Laraxe\";\"other\"\n\"2543549\";\"Lavache\";\"other\"\n\"2543549\";\"Лараша\";\"other\"\n\"2543549\";\"العرائش\";\"other\"\n\"2543549\";\"عرائش\";\"other\"\n\"2544001\";\"Ksar el Kebir\";\"main\"\n\"2544001\";\"Alcazarquebir\";\"other\"\n\"2544001\";\"Alcazarquivir\";\"other\"\n\"2544001\";\"Alcazquivir\";\"other\"\n\"2544001\";\"El Ksar El Kbir\";\"other\"\n\"2544001\";\"El Ksar El Kebir\";\"other\"\n\"2544248\";\"Khouribga\";\"main\"\n\"2544248\";\"Khouribja\";\"other\"\n\"2544248\";\"Kouriga\";\"other\"\n\"2544248\";\"Kourigha\";\"other\"\n\"2544248\";\"khrybkt\";\"other\"\n\"2544248\";\"خريبكة\";\"other\"\n\"2544333\";\"Khenifra\";\"main\"\n\"2544571\";\"Kenitra\";\"main\"\n\"2544571\";\"Al Qunaytirah\";\"other\"\n\"2544571\";\"Al Qunayţirah\";\"other\"\n\"2544571\";\"Khenifra\";\"other\"\n\"2544571\";\"Kénitra\";\"other\"\n\"2544571\";\"Lyautey\";\"other\"\n\"2544571\";\"Mina Hassan Tani\";\"other\"\n\"2544571\";\"Port Laoti\";\"other\"\n\"2544571\";\"Port-Lyautey\";\"other\"\n\"2544571\";\"Ville de Kenitra\";\"other\"\n\"2544571\";\"alqnytrt\";\"other\"\n\"2544571\";\"qnytrh\";\"other\"\n\"2544571\";\"Кенитра\";\"other\"\n\"2544571\";\"القنيطرة\";\"other\"\n\"2544571\";\"قنیطره\";\"other\"\n\"2544720\";\"Kasba Tadla\";\"main\"\n\"2544720\";\"Kasbah Tadla\";\"other\"\n\"2544720\";\"Tadla\";\"other\"\n\"2545017\";\"Jerada\";\"main\"\n\"2545017\";\"Djerada\";\"other\"\n\"2545017\";\"Dzherada\";\"other\"\n\"2545017\";\"Джерада\";\"other\"\n\"2545985\";\"Imzoûrene\";\"main\"\n\"2545985\";\"Imzourene\";\"ascii\"\n\"2545985\";\"Ain Zoren\";\"other\"\n\"2545985\";\"Aïn Zorèn\";\"other\"\n\"2545985\";\"Im Zouren\";\"other\"\n\"2548489\";\"Guercif\";\"main\"\n\"2548489\";\"Garsif\";\"other\"\n\"2548526\";\"Guelmim\";\"main\"\n\"2548526\";\"Goulimine\";\"other\"\n\"2548526\";\"klmym\";\"other\"\n\"2548526\";\"كلميم\";\"other\"\n\"2548830\";\"Fkih Ben Salah\";\"main\"\n\"2548851\";\"Figuig (Centre)\";\"main\"\n\"2548851\";\"Figuiq\";\"other\"\n\"2548885\";\"Fès\";\"main\"\n\"2548885\";\"Fes\";\"ascii\"\n\"2548885\";\"Fez\";\"other\"\n\"2548885\";\"fas\";\"other\"\n\"2548885\";\"fezu\";\"other\"\n\"2548885\";\"Фес\";\"other\"\n\"2548885\";\"فاس\";\"other\"\n\"2548885\";\"フェズ\";\"other\"\n\"2549263\";\"Essaouira\";\"main\"\n\"2549263\";\"As Suwayrah\";\"other\"\n\"2549263\";\"Aş Şuwayrah\";\"other\"\n\"2549263\";\"Ehs-Suvejra\";\"other\"\n\"2549263\";\"Ehssuehjra\";\"other\"\n\"2549263\";\"Es Suira\";\"other\"\n\"2549263\";\"Magador\";\"other\"\n\"2549263\";\"Mogadar\";\"other\"\n\"2549263\";\"Mogador\";\"other\"\n\"2549263\";\"alswyrt\";\"other\"\n\"2549263\";\"swyrh\";\"other\"\n\"2549263\";\"Эс-Сувейра\";\"other\"\n\"2549263\";\"Эссуэйра\";\"other\"\n\"2549263\";\"אסואירה\";\"other\"\n\"2549263\";\"الصويرة\";\"other\"\n\"2549263\";\"صویره\";\"other\"\n\"2550078\";\"El Jadida\";\"main\"\n\"2550078\";\"Al Jadida\";\"other\"\n\"2550078\";\"Al Yadida\";\"other\"\n\"2550078\";\"Ehl'-Dzhadida\";\"other\"\n\"2550078\";\"El-Jadida\";\"other\"\n\"2550078\";\"Mazagan\";\"other\"\n\"2550078\";\"Mazagao\";\"other\"\n\"2550078\";\"Mazagão\";\"other\"\n\"2550078\";\"aljdydh\";\"other\"\n\"2550078\";\"aljdydt\";\"other\"\n\"2550078\";\"Эль-Джадида\";\"other\"\n\"2550078\";\"الجديدة\";\"other\"\n\"2550078\";\"الجدیده\";\"other\"\n\"2550078\";\"الجدیدہ\";\"other\"\n\"2550252\";\"El Hajeb\";\"main\"\n\"2550806\";\"El Aïoun\";\"main\"\n\"2550806\";\"El Aioun\";\"ascii\"\n\"2550806\";\"Aioun Sidi Mellouk\";\"other\"\n\"2550806\";\"Al 'Youn\";\"other\"\n\"2550806\";\"Al ’Youn\";\"other\"\n\"2550806\";\"El Aioun Sidi Mellouk\";\"other\"\n\"2550806\";\"El Aïoun Sidi Mellouk\";\"other\"\n\"2553455\";\"Chefchaouene\";\"main\"\n\"2553455\";\"Chaouen\";\"other\"\n\"2553455\";\"Chaouèn\";\"other\"\n\"2553455\";\"Chauen\";\"other\"\n\"2553455\";\"Chechaouen\";\"other\"\n\"2553455\";\"Chechaouene\";\"other\"\n\"2553455\";\"Chechaouèn\";\"other\"\n\"2553455\";\"Chefchaouen\";\"other\"\n\"2553455\";\"Chichaouene\";\"other\"\n\"2553455\";\"Ech Chaouene\";\"other\"\n\"2553455\";\"Scheschauen\";\"other\"\n\"2553455\";\"Ville de Chechaouen\";\"other\"\n\"2553455\";\"Ville de Chechaouèn\";\"other\"\n\"2553455\";\"Xauen\";\"other\"\n\"2553455\";\"Xexauen\";\"other\"\n\"2553604\";\"Casablanca\";\"main\"\n\"2553604\";\"Ad Dar al Bayda'\";\"other\"\n\"2553604\";\"Ad Dār al Bayḑā'\";\"other\"\n\"2553604\";\"Anfa\";\"other\"\n\"2553604\";\"Casa Branca\";\"other\"\n\"2553604\";\"Dar-el-Beida\";\"other\"\n\"2553604\";\"Ed Dar el Baida\";\"other\"\n\"2553604\";\"Ed Dār el Baida\";\"other\"\n\"2553604\";\"Kasablanka\";\"other\"\n\"2553604\";\"Kazablanka\";\"other\"\n\"2553604\";\"Kazablanko\";\"other\"\n\"2553604\";\"ka sa bu lan ka\";\"other\"\n\"2553604\";\"ka sab langka\";\"other\"\n\"2553604\";\"kasa blanka\";\"other\"\n\"2553604\";\"kasabeullangka\";\"other\"\n\"2553604\";\"kasaburanka\";\"other\"\n\"2553604\";\"kazablanka\";\"other\"\n\"2553604\";\"qzblnqh\";\"other\"\n\"2553604\";\"Казабланка\";\"other\"\n\"2553604\";\"Касабланка\";\"other\"\n\"2553604\";\"קזבלנקה\";\"other\"\n\"2553604\";\"الدار البيضاء\";\"other\"\n\"2553604\";\"کازابلانکا\";\"other\"\n\"2553604\";\"کاسا بلانکا\";\"other\"\n\"2553604\";\"กาซาบลังกา\";\"other\"\n\"2553604\";\"カサブランカ\";\"other\"\n\"2553604\";\"卡萨布兰卡\";\"other\"\n\"2553604\";\"카사블랑카\";\"other\"\n\"2553751\";\"Bouznika\";\"main\"\n\"2553751\";\"Bouzhika\";\"other\"\n\"2553751\";\"Bouzniqa\";\"other\"\n\"2553751\";\"Buznike\";\"other\"\n\"2553751\";\"Kasba bou Znika\";\"other\"\n\"2553751\";\"Бузнике\";\"other\"\n\"2555467\";\"Berkane\";\"main\"\n\"2555467\";\"Berkan\";\"other\"\n\"2555467\";\"Berkawe\";\"other\"\n\"2555467\";\"Berkán\";\"other\"\n\"2555467\";\"brkan\";\"other\"\n\"2555467\";\"بركان\";\"other\"\n\"2555745\";\"Beni Mellal\";\"main\"\n\"2555745\";\"Beni-Mellal'\";\"other\"\n\"2555745\";\"Beni-Mellal-Centre\";\"other\"\n\"2555745\";\"bny mlal\";\"other\"\n\"2555745\";\"Бени-Меллаль\";\"other\"\n\"2555745\";\"بني ملال\";\"other\"\n\"2556272\";\"Berrechid\";\"main\"\n\"2556272\";\"Barrechid\";\"other\"\n\"2556272\";\"Bev-rechid\";\"other\"\n\"2556464\";\"Azrou\";\"main\"\n\"2556657\";\"Azemmour\";\"main\"\n\"2556657\";\"Azimur\";\"other\"\n\"2556657\";\"Azzegour\";\"other\"\n\"2557055\";\"Asilah\";\"main\"\n\"2557055\";\"Arcila\";\"other\"\n\"2557055\";\"Arcilas\";\"other\"\n\"2557055\";\"Arsila\";\"other\"\n\"2557055\";\"Arzila\";\"other\"\n\"2557055\";\"Arzilah\";\"other\"\n\"2557055\";\"Arzīlah\";\"other\"\n\"2557055\";\"Asila\";\"other\"\n\"2557055\";\"Asilakh\";\"other\"\n\"2557055\";\"Augusta Zilil\";\"other\"\n\"2557055\";\"Aṣīla\";\"other\"\n\"2557055\";\"Colonia Augusti Iulia Constantia Zilil\";\"other\"\n\"2557055\";\"Ville d'Arcila\";\"other\"\n\"2557055\";\"Ville d’Arcila\";\"other\"\n\"2557055\";\"asylt\";\"other\"\n\"2557055\";\"sylt\";\"other\"\n\"2557055\";\"Асилах\";\"other\"\n\"2557055\";\"أصيلة\";\"other\"\n\"2557055\";\"صيلة\";\"other\"\n\"2558470\";\"Khemisset\";\"main\"\n\"2558470\";\"Al Khmissat\";\"other\"\n\"2558470\";\"Kimisset\";\"other\"\n\"2561124\";\"Ahfir\";\"main\"\n\"2561124\";\"Martimprey du Kiss\";\"other\"\n\"2561668\";\"Agadir\";\"main\"\n\"2561668\";\"Agadair\";\"other\"\n\"2561668\";\"Agadir - akadyr\";\"other\"\n\"2561668\";\"Agadir - اكادير\";\"other\"\n\"2561668\";\"Agadir Ighir\";\"other\"\n\"2561668\";\"Irhir\";\"other\"\n\"2561668\";\"Santa Cruz\";\"other\"\n\"2561668\";\"a jia di er\";\"other\"\n\"2561668\";\"agadiru\";\"other\"\n\"2561668\";\"agadyr\";\"other\"\n\"2561668\";\"akadyr\";\"other\"\n\"2561668\";\"Агадир\";\"other\"\n\"2561668\";\"Агадір\";\"other\"\n\"2561668\";\"أكادير\";\"other\"\n\"2561668\";\"اگادیر\";\"other\"\n\"2561668\";\"アガディール\";\"other\"\n\"2561668\";\"阿加迪尔\";\"other\"\n\"2562055\";\"Skhirat\";\"main\"\n\"2562055\";\"Ac Ckhirat\";\"other\"\n\"2562055\";\"Aç Çkhirat\";\"other\"\n\"2562055\";\"Kasba Skira\";\"other\"\n\"2562055\";\"Minaret de Skhirat\";\"other\"\n\"2562055\";\"Skhirate\";\"other\"\n\"2565267\";\"Mhamid\";\"main\"\n\"2565267\";\"Mkhamid\";\"other\"\n\"2565267\";\"Мхамид\";\"other\"\n\"2596325\";\"Jebel Tiskaouine\";\"main\"\n\"2992741\";\"Monte-Carlo\";\"main\"\n\"2992741\";\"Monte Karlo\";\"other\"\n\"2992741\";\"Monte Karló\";\"other\"\n\"2992741\";\"Monte-Karlo\";\"other\"\n\"2992741\";\"Montecarlo\";\"other\"\n\"2992741\";\"Монте-Карло\";\"other\"\n\"2993458\";\"Monaco\";\"main\"\n\"2993458\";\"Monaco-Ville\";\"other\"\n\"2993458\";\"Monako\";\"other\"\n\"2993458\";\"Mònaco\";\"other\"\n\"2993458\";\"Mónaco\";\"other\"\n\"2993458\";\"Mónakó\";\"other\"\n\"2993458\";\"Μονακό\";\"other\"\n\"2993458\";\"Монако\";\"other\"\n\"3009937\";\"La Condamine\";\"main\"\n\"3009937\";\"Condamine\";\"other\"\n\"3009937\";\"La-Kondamin\";\"other\"\n\"3009937\";\"Ла-Кондамин\";\"other\"\n\"3017814\";\"Fontvieille\";\"main\"\n\"3017814\";\"Fonv'ej\";\"other\"\n\"3017814\";\"Фонвьей\";\"other\"\n\"3225774\";\"Saint-Roman\";\"main\"\n\"3319177\";\"Moneghetti\";\"main\"\n\"3319177\";\"Monegue\";\"other\"\n\"617053\";\"Tiraspolul Nou\";\"main\"\n\"617053\";\"Novotiraspol'skiy\";\"other\"\n\"617053\";\"Novotiraspol’skiy\";\"other\"\n\"617053\";\"Slobodka\";\"other\"\n\"617053\";\"Zakrepostnaya Slobodka\";\"other\"\n\"617076\";\"Edineţ\";\"main\"\n\"617076\";\"Edinet\";\"ascii\"\n\"617076\";\"Edincy\";\"other\"\n\"617076\";\"Edinec\";\"other\"\n\"617076\";\"Edinita\";\"other\"\n\"617076\";\"Edinita-Targ\";\"other\"\n\"617076\";\"Ediniti\";\"other\"\n\"617076\";\"Ediniţa\";\"other\"\n\"617076\";\"Ediniţa-Târg\";\"other\"\n\"617076\";\"Yedintsy\";\"other\"\n\"617076\";\"Yedintsy-Tyrg\";\"other\"\n\"617076\";\"edinecheu\";\"other\"\n\"617076\";\"Единец\";\"other\"\n\"617076\";\"Единцы\";\"other\"\n\"617076\";\"에디네츠\";\"other\"\n\"617081\";\"Iargara\";\"main\"\n\"617081\";\"Iagara\";\"other\"\n\"617081\";\"Poselok Yargora\";\"other\"\n\"617081\";\"Posëlok Yargora\";\"other\"\n\"617081\";\"Yargara\";\"other\"\n\"617081\";\"Yargora\";\"other\"\n\"617096\";\"Vulcăneşti\";\"main\"\n\"617096\";\"Vulcanesti\";\"ascii\"\n\"617096\";\"Valkaneshty\";\"other\"\n\"617096\";\"Volkaneshty\";\"other\"\n\"617096\";\"Volkenesht'\";\"other\"\n\"617096\";\"Volkenesht’\";\"other\"\n\"617096\";\"Volkoneshty\";\"other\"\n\"617096\";\"Vulkaneshty\";\"other\"\n\"617096\";\"Vulkeneshti\";\"other\"\n\"617118\";\"Vişniovca\";\"main\"\n\"617118\";\"Visniovca\";\"ascii\"\n\"617118\";\"Vishnevka\";\"other\"\n\"617118\";\"Vishnëvka\";\"other\"\n\"617118\";\"Visinesti\";\"other\"\n\"617118\";\"Vişineşti\";\"other\"\n\"617149\";\"Varniţa\";\"main\"\n\"617149\";\"Varnita\";\"ascii\"\n\"617149\";\"Varnica\";\"other\"\n\"617149\";\"Varnitsa\";\"other\"\n\"617149\";\"Варница\";\"other\"\n\"617164\";\"Vadul lui Vodă\";\"main\"\n\"617164\";\"Vadul lui Voda\";\"ascii\"\n\"617164\";\"Vadu-luy-Vode\";\"other\"\n\"617164\";\"Vadul-luy-Vode\";\"other\"\n\"617164\";\"Vaduluy-Vody\";\"other\"\n\"617164\";\"Vady-Lui Voda\";\"other\"\n\"617164\";\"Vady-Luy-Voda\";\"other\"\n\"617180\";\"Ungheni\";\"main\"\n\"617180\";\"Nyaradto\";\"other\"\n\"617180\";\"Nyárádtő\";\"other\"\n\"617180\";\"Ukgeni Tyrg\";\"other\"\n\"617180\";\"Ungen\";\"other\"\n\"617180\";\"Ungen'\";\"other\"\n\"617180\";\"Ungen' Tyrg\";\"other\"\n\"617180\";\"Ungeni\";\"other\"\n\"617180\";\"Ungeny\";\"other\"\n\"617180\";\"Ungen’ Tyrg\";\"other\"\n\"617180\";\"Ungheni Targ\";\"other\"\n\"617180\";\"Унгень\";\"other\"\n\"617239\";\"Tiraspol\";\"main\"\n\"617239\";\"Tiraspol'\";\"other\"\n\"617239\";\"Tiraspole\";\"other\"\n\"617239\";\"Tiraspoli\";\"other\"\n\"617239\";\"Tiraspolis\";\"other\"\n\"617239\";\"Tiraspolo\";\"other\"\n\"617239\";\"Tiraspol’\";\"other\"\n\"617239\";\"Tyraspal'\";\"other\"\n\"617239\";\"Tyraspol\";\"other\"\n\"617239\";\"tilaseupol\";\"other\"\n\"617239\";\"tirasupori\";\"other\"\n\"617239\";\"tyrspwl\";\"other\"\n\"617239\";\"Тираспол\";\"other\"\n\"617239\";\"Тирасполь\";\"other\"\n\"617239\";\"Тираспољ\";\"other\"\n\"617239\";\"Тыраспаль\";\"other\"\n\"617239\";\"טירספול\";\"other\"\n\"617239\";\"ティラスポリ\";\"other\"\n\"617239\";\"티라스폴\";\"other\"\n\"617254\";\"Teleneşti\";\"main\"\n\"617254\";\"Telenesti\";\"ascii\"\n\"617254\";\"Telenesht'-Tyrg\";\"other\"\n\"617254\";\"Teleneshty\";\"other\"\n\"617254\";\"Telenesti Targ\";\"other\"\n\"617254\";\"Teleneşti Târg\";\"other\"\n\"617254\";\"Tseleneshti-Tyrg\";\"other\"\n\"617254\";\"Теленешты\";\"other\"\n\"617270\";\"Taraclia\";\"main\"\n\"617270\";\"Taraklija\";\"other\"\n\"617270\";\"Tarakliya\";\"other\"\n\"617270\";\"Тараклия\";\"other\"\n\"617279\";\"Sîngera\";\"main\"\n\"617279\";\"Singera\";\"ascii\"\n\"617279\";\"Sangera\";\"other\"\n\"617279\";\"Synzhera\";\"other\"\n\"617279\";\"Sângera\";\"other\"\n\"617284\";\"Ştefan-Vodă\";\"main\"\n\"617284\";\"Stefan-Voda\";\"ascii\"\n\"617284\";\"Shtefan-Vode\";\"other\"\n\"617284\";\"Shtefan-Vodeh\";\"other\"\n\"617284\";\"Suvorovo\";\"other\"\n\"617284\";\"Штефан-Водэ\";\"other\"\n\"617302\";\"Străşeni\";\"main\"\n\"617302\";\"Straseni\";\"ascii\"\n\"617302\";\"Strashen'\";\"other\"\n\"617302\";\"Strashenskij rajon\";\"other\"\n\"617302\";\"Strasheny\";\"other\"\n\"617302\";\"Strashen’\";\"other\"\n\"617302\";\"Stresheni\";\"other\"\n\"617302\";\"Страшенский район\";\"other\"\n\"617317\";\"Stăuceni\";\"main\"\n\"617317\";\"Stauceni\";\"ascii\"\n\"617317\";\"Stavcheny\";\"other\"\n\"617345\";\"Bilicenii Vechi\";\"main\"\n\"617345\";\"Belichany\";\"other\"\n\"617345\";\"Biliceni\";\"other\"\n\"617345\";\"Bilichen'\";\"other\"\n\"617345\";\"Bilicheni\";\"other\"\n\"617345\";\"Bilichen’\";\"other\"\n\"617345\";\"Bliceni\";\"other\"\n\"617345\";\"Gilicheny\";\"other\"\n\"617345\";\"Staryye Bilicheny\";\"other\"\n\"617367\";\"Soroca\";\"main\"\n\"617367\";\"Soroka\";\"other\"\n\"617367\";\"Soroki\";\"other\"\n\"617367\";\"Сорока\";\"other\"\n\"617372\";\"Şoldăneşti\";\"main\"\n\"617372\";\"Soldanesti\";\"ascii\"\n\"617372\";\"Chernenko\";\"other\"\n\"617372\";\"Sholdanesht'\";\"other\"\n\"617372\";\"Sholdaneshti\";\"other\"\n\"617372\";\"Sholdaneshty\";\"other\"\n\"617372\";\"Sholdenesht'\";\"other\"\n\"617381\";\"Slobozia\";\"main\"\n\"617381\";\"Moldavanskaya-Slobodzaya\";\"other\"\n\"617381\";\"Slobodzeya\";\"other\"\n\"617381\";\"Slobodzeya Moldavanskaya\";\"other\"\n\"617471\";\"Saharna\";\"main\"\n\"617471\";\"Sakharna\";\"other\"\n\"617471\";\"Sukharna\";\"other\"\n\"617471\";\"Сахарна\";\"other\"\n\"617482\";\"Rîşcani\";\"main\"\n\"617482\";\"Riscani\";\"ascii\"\n\"617482\";\"Rascani\";\"other\"\n\"617482\";\"Rascani Targ\";\"other\"\n\"617482\";\"Rashkan' Tyrg\";\"other\"\n\"617482\";\"Rashkani-Tyrg\";\"other\"\n\"617482\";\"Rashkan’ Tyrg\";\"other\"\n\"617482\";\"Ryshkanovka\";\"other\"\n\"617482\";\"Ryshkany\";\"other\"\n\"617482\";\"Râşcani\";\"other\"\n\"617482\";\"Râşcani Târg\";\"other\"\n\"617482\";\"Рышканы\";\"other\"\n\"617486\";\"Rîbniţa\";\"main\"\n\"617486\";\"Ribnita\";\"ascii\"\n\"617486\";\"Rabnita\";\"other\"\n\"617486\";\"Ribnica\";\"other\"\n\"617486\";\"Ribnicja\";\"other\"\n\"617486\";\"Ribņica\";\"other\"\n\"617486\";\"Rybnica\";\"other\"\n\"617486\";\"Rybnitsa\";\"other\"\n\"617486\";\"Rybniza\";\"other\"\n\"617486\";\"Râbniţa\";\"other\"\n\"617486\";\"rybnyzh\";\"other\"\n\"617486\";\"Рибниця\";\"other\"\n\"617486\";\"Рыбница\";\"other\"\n\"617486\";\"ריבניצה\";\"other\"\n\"617502\";\"Rezina\";\"main\"\n\"617502\";\"Rezina Targ\";\"other\"\n\"617502\";\"Rezina Târg\";\"other\"\n\"617502\";\"Rezina-Tirg\";\"other\"\n\"617502\";\"Rezina-Tîrg\";\"other\"\n\"617502\";\"Резина\";\"other\"\n\"617602\";\"Pervomaisc\";\"main\"\n\"617602\";\"Pervomaysk\";\"other\"\n\"617602\";\"Pervomayskoye\";\"other\"\n\"617638\";\"Orhei\";\"main\"\n\"617638\";\"Orgeev\";\"other\"\n\"617638\";\"Orgeyev\";\"other\"\n\"617638\";\"Orheiu\";\"other\"\n\"617638\";\"Orkhej\";\"other\"\n\"617638\";\"Orkhey\";\"other\"\n\"617638\";\"Оргеев\";\"other\"\n\"617638\";\"Орхей\";\"other\"\n\"617702\";\"Anenii Noi\";\"main\"\n\"617702\";\"Aneni Nouy\";\"other\"\n\"617702\";\"Anenii Noui\";\"other\"\n\"617702\";\"Novo-Aneny\";\"other\"\n\"617702\";\"Novye Aneny\";\"other\"\n\"617702\";\"Novyye Aneny\";\"other\"\n\"617702\";\"Новые Анены\";\"other\"\n\"617753\";\"Nisporeni\";\"main\"\n\"617753\";\"Nisiporeni\";\"other\"\n\"617753\";\"Nisporeny\";\"other\"\n\"617753\";\"Nisporyany\";\"other\"\n\"617753\";\"Ниспорены\";\"other\"\n\"617778\";\"Mîndreşti\";\"main\"\n\"617778\";\"Mindresti\";\"ascii\"\n\"617778\";\"Mandresti\";\"other\"\n\"617778\";\"Myndresht'\";\"other\"\n\"617778\";\"Myndreshti\";\"other\"\n\"617778\";\"Myndreshty\";\"other\"\n\"617778\";\"Myndresht’\";\"other\"\n\"617778\";\"Mândreşti\";\"other\"\n\"617830\";\"Maiac\";\"main\"\n\"617830\";\"Mayak\";\"other\"\n\"617837\";\"Mărculeşti\";\"main\"\n\"617837\";\"Marculesti\";\"ascii\"\n\"617837\";\"Markulesht'-Kolon\";\"other\"\n\"617837\";\"Markuleshti-Kolon\";\"other\"\n\"617837\";\"Markuleshty\";\"other\"\n\"617837\";\"Markuleshty-Kolon\";\"other\"\n\"617837\";\"Markulesht’-Kolon\";\"other\"\n\"617904\";\"Leova\";\"main\"\n\"617904\";\"Leovo\";\"other\"\n\"617904\";\"Levo\";\"other\"\n\"617904\";\"Леово\";\"other\"\n\"617909\";\"Leninskiy\";\"main\"\n\"617914\";\"Sîngerei\";\"main\"\n\"617914\";\"Singerei\";\"ascii\"\n\"617914\";\"Lazovsk\";\"other\"\n\"617914\";\"Sangerei\";\"other\"\n\"617914\";\"Senzherey\";\"other\"\n\"617914\";\"Syndzherey\";\"other\"\n\"617914\";\"Synzhereja\";\"other\"\n\"617914\";\"Synzhereya\";\"other\"\n\"617914\";\"Synzheria\";\"other\"\n\"617914\";\"Sângerei\";\"other\"\n\"617914\";\"Сынжерея\";\"other\"\n\"617965\";\"Cricova\";\"main\"\n\"617965\";\"Krikova\";\"other\"\n\"617965\";\"Krikovo\";\"other\"\n\"617973\";\"Crasnoe\";\"main\"\n\"617973\";\"Crasna\";\"other\"\n\"617973\";\"Krasnoye\";\"other\"\n\"617993\";\"Hînceşti\";\"main\"\n\"617993\";\"Hincesti\";\"ascii\"\n\"617993\";\"Ganchesty\";\"other\"\n\"617993\";\"Gynchesht'\";\"other\"\n\"617993\";\"Gynchesht’\";\"other\"\n\"617993\";\"Hancesti\";\"other\"\n\"617993\";\"Hânceşti\";\"other\"\n\"617993\";\"Khencheshti\";\"other\"\n\"617993\";\"Khynchesht'\";\"other\"\n\"617993\";\"Khyncheshty\";\"other\"\n\"617993\";\"Khynchesht’\";\"other\"\n\"617993\";\"Kotovsk\";\"other\"\n\"617993\";\"Kotovskoye\";\"other\"\n\"617993\";\"Хынчешты\";\"other\"\n\"618067\";\"Chiţcani\";\"main\"\n\"618067\";\"Chitcani\";\"ascii\"\n\"618067\";\"Kickany\";\"other\"\n\"618067\";\"Kitskan'\";\"other\"\n\"618067\";\"Kitskani\";\"other\"\n\"618067\";\"Kitskany\";\"other\"\n\"618067\";\"Кицканы\";\"other\"\n\"618120\";\"Căuşeni\";\"main\"\n\"618120\";\"Causeni\";\"ascii\"\n\"618120\";\"Causani-Novi\";\"other\"\n\"618120\";\"Causanii-Noui\";\"other\"\n\"618120\";\"Căuşani-Novi\";\"other\"\n\"618120\";\"Căuşanii-Noui\";\"other\"\n\"618120\";\"Kaushani\";\"other\"\n\"618120\";\"Kaushani-Noui\";\"other\"\n\"618120\";\"Kaushany\";\"other\"\n\"618120\";\"Kehushan'\";\"other\"\n\"618120\";\"Noui Causanii\";\"other\"\n\"618120\";\"Noui Căuşanii\";\"other\"\n\"618120\";\"Novo Kaushani\";\"other\"\n\"618120\";\"Novyye Kaushany\";\"other\"\n\"618120\";\"Novyye Keushani\";\"other\"\n\"618120\";\"Каушаны\";\"other\"\n\"618120\";\"Кэушань\";\"other\"\n\"618196\";\"Ialoveni\";\"main\"\n\"618196\";\"Jaloveny\";\"other\"\n\"618196\";\"Kutuzov\";\"other\"\n\"618196\";\"Ploreny\";\"other\"\n\"618196\";\"Ploveny\";\"other\"\n\"618196\";\"Yaloven'\";\"other\"\n\"618196\";\"Yaloveny\";\"other\"\n\"618196\";\"Yaloven’\";\"other\"\n\"618196\";\"Yalovyany\";\"other\"\n\"618196\";\"Яловены\";\"other\"\n\"618234\";\"Grigoriopol\";\"main\"\n\"618234\";\"Grigoriopol'\";\"other\"\n\"618234\";\"Grigoriopol’\";\"other\"\n\"618234\";\"Григориополь\";\"other\"\n\"618261\";\"Glodeni\";\"main\"\n\"618261\";\"Gloden'\";\"other\"\n\"618261\";\"Gloden’\";\"other\"\n\"618261\";\"Glodjany\";\"other\"\n\"618261\";\"Glodyany\";\"other\"\n\"618261\";\"Malyye Glodyany\";\"other\"\n\"618261\";\"Глодяны\";\"other\"\n\"618329\";\"Floreşti\";\"main\"\n\"618329\";\"Floresti\";\"ascii\"\n\"618329\";\"Floresht'\";\"other\"\n\"618329\";\"Floreshti\";\"other\"\n\"618329\";\"Floreshty\";\"other\"\n\"618329\";\"Floresht’\";\"other\"\n\"618329\";\"Флорешты\";\"other\"\n\"618344\";\"Făleşti\";\"main\"\n\"618344\";\"Falesti\";\"ascii\"\n\"618344\";\"Falesht'\";\"other\"\n\"618344\";\"Faleshty\";\"other\"\n\"618344\";\"Falesht’\";\"other\"\n\"618344\";\"Feleshti\";\"other\"\n\"618344\";\"Фалешты\";\"other\"\n\"618349\";\"Giurgiuleşti\";\"main\"\n\"618349\";\"Giurgiulesti\";\"ascii\"\n\"618349\";\"Dzhurdzhulesht'\";\"other\"\n\"618349\";\"Dzhurdzhuleshti\";\"other\"\n\"618349\";\"Dzhurdzhuleshty\";\"other\"\n\"618349\";\"Dzhurdzhulesht’\";\"other\"\n\"618349\";\"Dzhurzhuleshty\";\"other\"\n\"618349\";\"Zhurzhuleshty\";\"other\"\n\"618349\";\"Джурджулешты\";\"other\"\n\"618365\";\"Dubăsari\";\"main\"\n\"618365\";\"Dubasari\";\"ascii\"\n\"618365\";\"Dubehsar'\";\"other\"\n\"618365\";\"Dubosari\";\"other\"\n\"618365\";\"Dubossary\";\"other\"\n\"618365\";\"dubeosali\";\"other\"\n\"618365\";\"Дубоссары\";\"other\"\n\"618365\";\"Дубэсарь\";\"other\"\n\"618365\";\"두버사리\";\"other\"\n\"618370\";\"Drochia\";\"main\"\n\"618370\";\"Drokija\";\"other\"\n\"618370\";\"Drokiya\";\"other\"\n\"618370\";\"Drokiya Sat\";\"other\"\n\"618370\";\"Дрокия\";\"other\"\n\"618382\";\"Donduşeni\";\"main\"\n\"618382\";\"Donduseni\";\"ascii\"\n\"618382\";\"Dondusani\";\"other\"\n\"618382\";\"Dondushen'\";\"other\"\n\"618382\";\"Dondushen’\";\"other\"\n\"618382\";\"Donduşăni\";\"other\"\n\"618382\";\"Dondyushany\";\"other\"\n\"618387\";\"Dnestrovsc\";\"main\"\n\"618387\";\"Dnestrovsk\";\"other\"\n\"618403\";\"Criuleni\";\"main\"\n\"618403\";\"Kriulen'\";\"other\"\n\"618403\";\"Kriuleni\";\"other\"\n\"618403\";\"Kriuljany\";\"other\"\n\"618403\";\"Kriulyany\";\"other\"\n\"618403\";\"Krivleny\";\"other\"\n\"618403\";\"Kryulyany\";\"other\"\n\"618403\";\"Криуляны\";\"other\"\n\"618405\";\"Comrat\";\"main\"\n\"618405\";\"Komrad\";\"other\"\n\"618405\";\"Komrat\";\"other\"\n\"618405\";\"komlateu\";\"other\"\n\"618405\";\"Комрат\";\"other\"\n\"618405\";\"콤라트\";\"other\"\n\"618406\";\"Cimişlia\";\"main\"\n\"618406\";\"Cimislia\";\"ascii\"\n\"618406\";\"Chimishlija\";\"other\"\n\"618406\";\"Chimishliya\";\"other\"\n\"618406\";\"Чимишлия\";\"other\"\n\"618426\";\"Chişinău\";\"main\"\n\"618426\";\"Chisinau\";\"ascii\"\n\"618426\";\"Chisinau - Chisinau\";\"other\"\n\"618426\";\"Chisinau - Chişinău\";\"other\"\n\"618426\";\"Kischinew\";\"other\"\n\"618426\";\"Kiscinev\";\"other\"\n\"618426\";\"Kishinef\";\"other\"\n\"618426\";\"Kishinehu\";\"other\"\n\"618426\";\"Kishinev\";\"other\"\n\"618426\";\"Kishiniv\";\"other\"\n\"618426\";\"Kishinjov\";\"other\"\n\"618426\";\"Kishinëv\";\"other\"\n\"618426\";\"Kisinaou\";\"other\"\n\"618426\";\"Kisinev\";\"other\"\n\"618426\";\"Kisineva\";\"other\"\n\"618426\";\"Kisinevo\";\"other\"\n\"618426\";\"Kisiniovas\";\"other\"\n\"618426\";\"Kisinjev\";\"other\"\n\"618426\";\"Kisinov\";\"other\"\n\"618426\";\"Kisinyov\";\"other\"\n\"618426\";\"Kisyneu\";\"other\"\n\"618426\";\"Kiszyniow\";\"other\"\n\"618426\";\"Kiszyniów\";\"other\"\n\"618426\";\"Kiŝinevo\";\"other\"\n\"618426\";\"Kişinev\";\"other\"\n\"618426\";\"Kišiniovas\";\"other\"\n\"618426\";\"Kišinjev\";\"other\"\n\"618426\";\"Kišiněv\";\"other\"\n\"618426\";\"Kišiņeva\";\"other\"\n\"618426\";\"Kišiňov\";\"other\"\n\"618426\";\"cisina'u\";\"other\"\n\"618426\";\"cisinau\";\"other\"\n\"618426\";\"ji xi ne wu\";\"other\"\n\"618426\";\"kishinau\";\"other\"\n\"618426\";\"kisineou\";\"other\"\n\"618426\";\"kyshynaw\";\"other\"\n\"618426\";\"Κισινάου\";\"other\"\n\"618426\";\"Κισιναου\";\"other\"\n\"618426\";\"Кишинев\";\"other\"\n\"618426\";\"Кишинэу\";\"other\"\n\"618426\";\"Кишинёв\";\"other\"\n\"618426\";\"Кишињев\";\"other\"\n\"618426\";\"Кішынёў\";\"other\"\n\"618426\";\"Կիշինյով\";\"other\"\n\"618426\";\"קישינאו\";\"other\"\n\"618426\";\"كيشيناو\";\"other\"\n\"618426\";\"चिशिनाउ\";\"other\"\n\"618426\";\"चिशिनौ\";\"other\"\n\"618426\";\"კიშინიოვი\";\"other\"\n\"618426\";\"ኪሺንው\";\"other\"\n\"618426\";\"キシナウ\";\"other\"\n\"618426\";\"基希讷乌\";\"other\"\n\"618426\";\"키시너우\";\"other\"\n\"618450\";\"Ceadîr-Lunga\";\"main\"\n\"618450\";\"Ceadir-Lunga\";\"ascii\"\n\"618450\";\"Ceadar-Lunga\";\"other\"\n\"618450\";\"Ceadâr-Lunga\";\"other\"\n\"618450\";\"Chadyr-Lunga\";\"other\"\n\"618450\";\"Чадыр-Лунга\";\"other\"\n\"618452\";\"Cantemir\";\"main\"\n\"618452\";\"Kantemir\";\"other\"\n\"618452\";\"Kantemirskij rajon\";\"other\"\n\"618452\";\"Кантемирский район\";\"other\"\n\"618453\";\"Camenca\";\"main\"\n\"618453\";\"Kamenka\";\"other\"\n\"618453\";\"Kamenka-Moldavskaya\";\"other\"\n\"618454\";\"Călăraşi\";\"main\"\n\"618454\";\"Calarasi\";\"ascii\"\n\"618454\";\"Calarasi-Targ\";\"other\"\n\"618454\";\"Călărasi-Targ\";\"other\"\n\"618454\";\"Kalarash\";\"other\"\n\"618454\";\"Kelerashi-Tyrg\";\"other\"\n\"618456\";\"Cahul\";\"main\"\n\"618456\";\"Kagul\";\"other\"\n\"618456\";\"Kakhul\";\"other\"\n\"618456\";\"Кагул\";\"other\"\n\"618456\";\"Кахул\";\"other\"\n\"618459\";\"Bucovăţ\";\"main\"\n\"618459\";\"Bucovat\";\"ascii\"\n\"618459\";\"Bykovets\";\"other\"\n\"618491\";\"Bugeac\";\"main\"\n\"618491\";\"Budzhak\";\"other\"\n\"618512\";\"Briceni\";\"main\"\n\"618512\";\"Brichany\";\"other\"\n\"618512\";\"Brichen'\";\"other\"\n\"618512\";\"Brichen’\";\"other\"\n\"618512\";\"Бричаны\";\"other\"\n\"618577\";\"Tighina\";\"main\"\n\"618577\";\"Bendary\";\"other\"\n\"618577\";\"Bender\";\"other\"\n\"618577\";\"Benderai\";\"other\"\n\"618577\";\"Benderi\";\"other\"\n\"618577\";\"Bendery\";\"other\"\n\"618577\";\"Tigina\";\"other\"\n\"618577\";\"tigina\";\"other\"\n\"618577\";\"tygynh\";\"other\"\n\"618577\";\"Бендери\";\"other\"\n\"618577\";\"Бендеры\";\"other\"\n\"618577\";\"Тигина\";\"other\"\n\"618577\";\"טיגינה\";\"other\"\n\"618577\";\"티기나\";\"other\"\n\"618594\";\"Basarabeasca\";\"main\"\n\"618594\";\"Bessarabka\";\"other\"\n\"618594\";\"Bessarabskaya\";\"other\"\n\"618594\";\"Bessarabskiy\";\"other\"\n\"618594\";\"Romaneshti\";\"other\"\n\"618594\";\"Romanesti\";\"other\"\n\"618594\";\"Romanovka\";\"other\"\n\"618594\";\"Romanovo\";\"other\"\n\"618594\";\"Romynesht'\";\"other\"\n\"618594\";\"Romynesht’\";\"other\"\n\"618594\";\"Româneşti\";\"other\"\n\"618605\";\"Bălţi\";\"main\"\n\"618605\";\"Balti\";\"ascii\"\n\"618605\";\"Baltsy\";\"other\"\n\"618605\";\"Behlc'\";\"other\"\n\"618605\";\"Bel'cy\";\"other\"\n\"618605\";\"Bel'tsy\";\"other\"\n\"618605\";\"Belcai\";\"other\"\n\"618605\";\"Belci\";\"other\"\n\"618605\";\"Beltsi\";\"other\"\n\"618605\";\"Bel’tsy\";\"other\"\n\"618605\";\"Bielce\";\"other\"\n\"618605\";\"Byelcy\";\"other\"\n\"618605\";\"Municipalite de Balti\";\"other\"\n\"618605\";\"Municipalité de Bălţi\";\"other\"\n\"618605\";\"blzy\";\"other\"\n\"618605\";\"Белци\";\"other\"\n\"618605\";\"Бельцы\";\"other\"\n\"618605\";\"Бэлць\";\"other\"\n\"618605\";\"בלצי\";\"other\"\n\"618631\";\"Otaci\";\"main\"\n\"618631\";\"Ataki\";\"other\"\n\"618631\";\"Otach-Tyrg\";\"other\"\n\"618631\";\"Атаки\";\"other\"\n\"824134\";\"Vatra\";\"main\"\n\"824134\";\"Gara Ghidighici\";\"other\"\n\"824134\";\"Gidigich\";\"other\"\n\"824134\";\"Ватра\";\"other\"\n\"830975\";\"Biruinţa\";\"main\"\n\"830975\";\"Biruinta\";\"ascii\"\n\"830975\";\"Biruintsa\";\"other\"\n\"3186999\";\"Žabljak\";\"main\"\n\"3186999\";\"Zabljak\";\"ascii\"\n\"3186999\";\"Aleksandrov Grad\";\"other\"\n\"3188516\";\"Ulcinj\";\"main\"\n\"3188516\";\"Dulcigno\";\"other\"\n\"3188516\";\"UElguen\";\"other\"\n\"3188516\";\"Ulcin\";\"other\"\n\"3188516\";\"Ulcin'\";\"other\"\n\"3188516\";\"Ulqini\";\"other\"\n\"3188516\";\"awlkwn\";\"other\"\n\"3188516\";\"Ülgün\";\"other\"\n\"3188516\";\"Улцинь\";\"other\"\n\"3188516\";\"Улцињ\";\"other\"\n\"3188516\";\"اولکون\";\"other\"\n\"3188584\";\"Tuzi\";\"main\"\n\"3189073\";\"Tivat\";\"main\"\n\"3189073\";\"Teodo\";\"other\"\n\"3189073\";\"Тиват\";\"other\"\n\"3189073\";\"Тіват\";\"other\"\n\"3189429\";\"Sutomore\";\"main\"\n\"3189429\";\"Spic\";\"other\"\n\"3189429\";\"Spič\";\"other\"\n\"3189429\";\"Sutomor\";\"other\"\n\"3189429\";\"Сутоморе\";\"other\"\n\"3189979\";\"Stari Bar\";\"main\"\n\"3190178\";\"Spuž\";\"main\"\n\"3190178\";\"Spuz\";\"ascii\"\n\"3191631\";\"Risan\";\"main\"\n\"3191631\";\"Risano\";\"other\"\n\"3191631\";\"Рисан\";\"other\"\n\"3193044\";\"Podgorica\";\"main\"\n\"3193044\";\"Padgoryca\";\"other\"\n\"3193044\";\"Podgoricja\";\"other\"\n\"3193044\";\"Podgorika\";\"other\"\n\"3193044\";\"Podgorytsa\";\"other\"\n\"3193044\";\"Podgòrica\";\"other\"\n\"3193044\";\"Pontnkoritsa\";\"other\"\n\"3193044\";\"Titograd\";\"other\"\n\"3193044\";\"bo de ge li cha\";\"other\"\n\"3193044\";\"bwdghwrytsha\";\"other\"\n\"3193044\";\"phxd ko rika\";\"other\"\n\"3193044\";\"podeugolicha\";\"other\"\n\"3193044\";\"podogoritsu~a\";\"other\"\n\"3193044\";\"pwdgwrytsa\";\"other\"\n\"3193044\";\"pwdgwryzh\";\"other\"\n\"3193044\";\"Ποντγκόριτσα\";\"other\"\n\"3193044\";\"Падгорыца\";\"other\"\n\"3193044\";\"Подгорица\";\"other\"\n\"3193044\";\"Подгориця\";\"other\"\n\"3193044\";\"פודגוריצה\";\"other\"\n\"3193044\";\"بودغوريتشا\";\"other\"\n\"3193044\";\"پودگوریتسا\";\"other\"\n\"3193044\";\"พอดโกริกา\";\"other\"\n\"3193044\";\"პოდგორიცა\";\"other\"\n\"3193044\";\"ፖድጎሪጻ\";\"other\"\n\"3193044\";\"ポドゴリツァ\";\"other\"\n\"3193044\";\"波德戈里察\";\"other\"\n\"3193044\";\"포드고리차\";\"other\"\n\"3193413\";\"Petrovac na Moru\";\"main\"\n\"3193413\";\"Petrovac\";\"other\"\n\"3193413\";\"Петровац\";\"other\"\n\"3194494\";\"Nikšić\";\"main\"\n\"3194494\";\"Niksic\";\"ascii\"\n\"3194494\";\"Nikshich\";\"other\"\n\"3194494\";\"Никшич\";\"other\"\n\"3194926\";\"Mojkovac\";\"main\"\n\"3194926\";\"Мойковац\";\"other\"\n\"3194926\";\"Мојковац\";\"other\"\n\"3194928\";\"Mojanovići\";\"main\"\n\"3194928\";\"Mojanovici\";\"ascii\"\n\"3195390\";\"Mataguži\";\"main\"\n\"3195390\";\"Mataguzi\";\"ascii\"\n\"3196540\";\"Lipci\";\"main\"\n\"3196540\";\"Липци\";\"other\"\n\"3197538\";\"Kotor\";\"main\"\n\"3197538\";\"Cattaro\";\"other\"\n\"3197538\";\"Cattoro\";\"other\"\n\"3197538\";\"kotoleu\";\"other\"\n\"3197538\";\"kotoru\";\"other\"\n\"3197538\";\"Котор\";\"other\"\n\"3197538\";\"コトル\";\"other\"\n\"3197538\";\"코토르\";\"other\"\n\"3197896\";\"Kolašin\";\"main\"\n\"3197896\";\"Kolasin\";\"ascii\"\n\"3197896\";\"Kolashin\";\"other\"\n\"3197896\";\"Kolasini vald\";\"other\"\n\"3197896\";\"Kolašini vald\";\"other\"\n\"3197896\";\"Opshtina Kolashin\";\"other\"\n\"3197896\";\"Колашин\";\"other\"\n\"3197896\";\"Општина Колашин\";\"other\"\n\"3199161\";\"Igalo\";\"main\"\n\"3199161\";\"Игало\";\"other\"\n\"3199394\";\"Herceg-Novi\";\"main\"\n\"3199394\";\"Castelnuovo\";\"other\"\n\"3199394\";\"Castelnuovo di Cattaro\";\"other\"\n\"3199394\";\"Ercegnovi\";\"other\"\n\"3199394\";\"Herceg Novi\";\"other\"\n\"3199394\";\"Kherceg-Novi\";\"other\"\n\"3199394\";\"kherceg novi\";\"other\"\n\"3199394\";\"Херцег Нови\";\"other\"\n\"3199394\";\"Херцег-Нови\";\"other\"\n\"3199394\";\"Херцег-Нові\";\"other\"\n\"3201903\";\"Dobrota\";\"main\"\n\"3201903\";\"Mesto Dobrota\";\"other\"\n\"3201903\";\"Доброта\";\"other\"\n\"3202194\";\"Danilovgrad\";\"main\"\n\"3202194\";\"Даниловград\";\"other\"\n\"3202194\";\"Даніловград\";\"other\"\n\"3202641\";\"Cetinje\";\"main\"\n\"3202641\";\"Cetin'e\";\"other\"\n\"3202641\";\"Cetine\";\"other\"\n\"3202641\";\"Cetinė\";\"other\"\n\"3202641\";\"Cettigne\";\"other\"\n\"3202641\";\"Cettinge\";\"other\"\n\"3202641\";\"Cetynia\";\"other\"\n\"3202641\";\"chetinye\";\"other\"\n\"3202641\";\"Цетине\";\"other\"\n\"3202641\";\"Цетиниѥ\";\"other\"\n\"3202641\";\"Цетинье\";\"other\"\n\"3202641\";\"Цетиње\";\"other\"\n\"3202641\";\"Цетіньє\";\"other\"\n\"3202641\";\"체티녜\";\"other\"\n\"3203106\";\"Budva\";\"main\"\n\"3203106\";\"Budua\";\"other\"\n\"3203106\";\"Butua\";\"other\"\n\"3203106\";\"budovu~a\";\"other\"\n\"3203106\";\"Будва\";\"other\"\n\"3203106\";\"ブドヴァ\";\"other\"\n\"3204214\";\"Bijela\";\"main\"\n\"3204214\";\"Bjela\";\"other\"\n\"3204509\";\"Bar\";\"main\"\n\"3204509\";\"Antivari\";\"other\"\n\"3204509\";\"Bar - Bar\";\"other\"\n\"3204509\";\"Bar - Бар\";\"other\"\n\"3204509\";\"ba er\";\"other\"\n\"3204509\";\"Бар\";\"other\"\n\"3204509\";\"巴尔\";\"other\"\n\"3318488\";\"Šušanj\";\"main\"\n\"3318488\";\"Susanj\";\"ascii\"\n\"3578851\";\"Marigot\";\"main\"\n\"3578851\";\"Marigo\";\"other\"\n\"3578851\";\"Мариго\";\"other\"\n\"1053384\";\"Toamasina\";\"main\"\n\"1053384\";\"Tamatave\";\"other\"\n\"1053384\";\"Tuamasina\";\"other\"\n\"1053384\";\"tu a ma xi na\";\"other\"\n\"1053384\";\"Туамасина\";\"other\"\n\"1053384\";\"图阿马西纳\";\"other\"\n\"1053507\";\"Vondrozo\";\"main\"\n\"1054035\";\"Vohibinany\";\"main\"\n\"1054192\";\"Vavatenina\";\"main\"\n\"1054329\";\"Vangaindrano\";\"main\"\n\"1054463\";\"Tsiroanomandidy\";\"main\"\n\"1054500\";\"Tsiombe\";\"main\"\n\"1054500\";\"Tsihombe\";\"other\"\n\"1055059\";\"Tsaratanana\";\"main\"\n\"1055429\";\"Toliara\";\"main\"\n\"1055429\";\"Toliary\";\"other\"\n\"1055429\";\"Tulear\";\"other\"\n\"1055429\";\"Tuliara\";\"other\"\n\"1055429\";\"Tullear\";\"other\"\n\"1055429\";\"Тулиара\";\"other\"\n\"1055433\";\"Fort Dauphin\";\"main\"\n\"1055433\";\"Faradofay\";\"other\"\n\"1055433\";\"Taolanaro\";\"other\"\n\"1055433\";\"Tolagnaro\";\"other\"\n\"1055433\";\"Tôlagnaro\";\"other\"\n\"1056151\";\"Soavinandriana\";\"main\"\n\"1056151\";\"Seavinandriana\";\"other\"\n\"1056386\";\"Soanierana Ivongo\";\"main\"\n\"1056386\";\"Saanierana\";\"other\"\n\"1056386\";\"Soahierana\";\"other\"\n\"1056386\";\"Soanierana\";\"other\"\n\"1056899\";\"Sambava\";\"main\"\n\"1056899\";\"Sahambava\";\"other\"\n\"1056899\";\"Sahambavany\";\"other\"\n\"1056899\";\"Sambaha\";\"other\"\n\"1056899\";\"Самбава\";\"other\"\n\"1057095\";\"Sakaraha\";\"main\"\n\"1057095\";\"Sakaray\";\"other\"\n\"1058080\";\"Nosy Varika\";\"main\"\n\"1058381\";\"Morondava\";\"main\"\n\"1058532\";\"Moramanga\";\"main\"\n\"1059051\";\"Miandrivazo\";\"main\"\n\"1059507\";\"Marovoay\";\"main\"\n\"1060007\";\"Marolambo\";\"main\"\n\"1060283\";\"Maroantsetra\";\"main\"\n\"1060283\";\"Maruancentre\";\"other\"\n\"1060283\";\"Маруанцентре\";\"other\"\n\"1060673\";\"Manjakandriana\";\"main\"\n\"1061335\";\"Mananjary\";\"main\"\n\"1061412\";\"Mananara Avaratra\";\"main\"\n\"1061412\";\"Mananara\";\"other\"\n\"1061605\";\"Manakara\";\"main\"\n\"1061605\";\"Manankara\";\"other\"\n\"1061605\";\"Манакара\";\"other\"\n\"1062146\";\"Mahavelona\";\"main\"\n\"1062146\";\"Foulpointe\";\"other\"\n\"1062146\";\"Fulpuant\";\"other\"\n\"1062146\";\"Фулпуант\";\"other\"\n\"1062553\";\"Mahanoro\";\"main\"\n\"1062663\";\"Mahajanga\";\"main\"\n\"1062663\";\"Majunga\";\"other\"\n\"1062663\";\"Makhadzanga\";\"other\"\n\"1062663\";\"mahajanga\";\"other\"\n\"1062663\";\"Махадзанга\";\"other\"\n\"1062663\";\"マハジャンガ\";\"other\"\n\"1064234\";\"Ikongo\";\"main\"\n\"1064234\";\"Fort Carhot\";\"other\"\n\"1064234\";\"Fort-Carnot\";\"other\"\n\"1064258\";\"Ikalamavony\";\"main\"\n\"1064275\";\"Ihosy\";\"main\"\n\"1064366\";\"Ifanadiana\";\"main\"\n\"1064890\";\"Fianarantsoa\";\"main\"\n\"1064890\";\"Fianarancua\";\"other\"\n\"1064890\";\"Фианаранцуа\";\"other\"\n\"1064978\";\"Fenoarivo Be\";\"main\"\n\"1064978\";\"Fenoarivo\";\"other\"\n\"1064978\";\"Fenoarivo Afovoany\";\"other\"\n\"1064980\";\"Fenoarivo Atsinanana\";\"main\"\n\"1064980\";\"Fenerive\";\"other\"\n\"1064980\";\"Fenerive-Atsinanana\";\"other\"\n\"1064980\";\"Fenerive-Est\";\"other\"\n\"1064980\";\"Fénérive-Atsinanana\";\"other\"\n\"1064980\";\"Fénérive-Est\";\"other\"\n\"1065140\";\"Faratsiho\";\"main\"\n\"1065158\";\"Farafangana\";\"main\"\n\"1065222\";\"Fandriana\";\"main\"\n\"1065222\";\"Ifandriana\";\"other\"\n\"1066310\";\"Betioky\";\"main\"\n\"1066514\";\"Betafo\";\"main\"\n\"1066831\";\"Beroroha\";\"main\"\n\"1066831\";\"Beroroho\";\"other\"\n\"1066831\";\"Beroroka\";\"other\"\n\"1067531\";\"Belo Tsiribihina\";\"main\"\n\"1067531\";\"Belo\";\"other\"\n\"1067531\";\"Belo sur Tsiribihina\";\"other\"\n\"1067565\";\"Beloha\";\"main\"\n\"1068670\";\"Bealanana\";\"main\"\n\"1068865\";\"Arivonimamo\";\"main\"\n\"1068865\";\"Arivonimamy\";\"other\"\n\"1068971\";\"Antsohihy\";\"main\"\n\"1068971\";\"Antsohihi\";\"other\"\n\"1069129\";\"Antsiran̈ana\";\"main\"\n\"1069129\";\"Antsiranana\";\"ascii\"\n\"1069129\";\"Anceranana\";\"other\"\n\"1069129\";\"Antseranana\";\"other\"\n\"1069129\";\"Antsirana\";\"other\"\n\"1069129\";\"Antsirane\";\"other\"\n\"1069129\";\"Diego Soarez\";\"other\"\n\"1069129\";\"Diego-Suarez\";\"other\"\n\"1069129\";\"Diégo-Suarez\";\"other\"\n\"1069129\";\"Анцеранана\";\"other\"\n\"1070661\";\"Antanifotsy\";\"main\"\n\"1070940\";\"Antananarivo\";\"main\"\n\"1070940\";\"Antananarivu\";\"other\"\n\"1070940\";\"Antananaryvas\";\"other\"\n\"1070940\";\"Antananarywa\";\"other\"\n\"1070940\";\"Antananarívó\";\"other\"\n\"1070940\";\"Tananaribe\";\"other\"\n\"1070940\";\"Tananarive\";\"other\"\n\"1070940\";\"antananalibo\";\"other\"\n\"1070940\";\"antananaribo\";\"other\"\n\"1070940\";\"antananaryfw\";\"other\"\n\"1070940\";\"ta na na li fu\";\"other\"\n\"1070940\";\"xan ta nana ri wo\";\"other\"\n\"1070940\";\"Ταναναρίβη\";\"other\"\n\"1070940\";\"Антананариво\";\"other\"\n\"1070940\";\"Антананариву\";\"other\"\n\"1070940\";\"Антананаріво\";\"other\"\n\"1070940\";\"Անտանանարիվո\";\"other\"\n\"1070940\";\"אנטננריבו\";\"other\"\n\"1070940\";\"أنتاناناريفو\";\"other\"\n\"1070940\";\"อันตานานาริโว\";\"other\"\n\"1070940\";\"ანტანანარივო\";\"other\"\n\"1070940\";\"አንታናናሪቮ\";\"other\"\n\"1070940\";\"アンタナナリボ\";\"other\"\n\"1070940\";\"塔那那利佛\";\"other\"\n\"1070940\";\"안타나나리보\";\"other\"\n\"1071296\";\"Antalaha\";\"main\"\n\"1071296\";\"Antalakhi\";\"other\"\n\"1071296\";\"Анталахи\";\"other\"\n\"1072849\";\"Ankazobe\";\"main\"\n\"1072879\";\"Ankazoabo\";\"main\"\n\"1072879\";\"Ankazoabe\";\"other\"\n\"1072879\";\"Ankazoabo Sud\";\"other\"\n\"1073482\";\"Anjozorobe\";\"main\"\n\"1076105\";\"Andoany\";\"main\"\n\"1076105\";\"Hell-Ville\";\"other\"\n\"1076105\";\"Helville\";\"other\"\n\"1076194\";\"Andilamena\";\"main\"\n\"1076227\";\"Andovoranto\";\"main\"\n\"1076227\";\"Andevorante\";\"other\"\n\"1076227\";\"Andevoranto\";\"other\"\n\"1076454\";\"Andapa\";\"main\"\n\"1077349\";\"Anakao\";\"main\"\n\"1078446\";\"Amparafaravola\";\"main\"\n\"1078446\";\"Amparafarovola\";\"other\"\n\"1078446\";\"Amparofaravola\";\"other\"\n\"1078553\";\"Ampanihy\";\"main\"\n\"1079048\";\"Ambovombe\";\"main\"\n\"1079088\";\"Ambositra\";\"main\"\n\"1081530\";\"Ambodifotatra\";\"main\"\n\"1081530\";\"Ambodifototra\";\"other\"\n\"1081790\";\"Amboasary\";\"main\"\n\"1081790\";\"Amboasary Sud\";\"other\"\n\"1082243\";\"Ambilobe\";\"main\"\n\"1082639\";\"Ambatondrazaka\";\"main\"\n\"1082639\";\"Ambatonoradrazaka\";\"other\"\n\"1082992\";\"Ambatolampy\";\"main\"\n\"1083239\";\"Ambatofinandrahana\";\"main\"\n\"1083257\";\"Ambato Boeny\";\"main\"\n\"1083257\";\"Ambato\";\"other\"\n\"1083257\";\"Ambato Boeni\";\"other\"\n\"1083724\";\"Ambanja\";\"main\"\n\"1083968\";\"Ambalavao\";\"main\"\n\"1083968\";\"Ambalava\";\"other\"\n\"2080115\";\"Likiep\";\"main\"\n\"2080422\";\"Jabor\";\"main\"\n\"2080422\";\"Jabooru\";\"other\"\n\"2080422\";\"Jaboru\";\"other\"\n\"2080422\";\"Jabwor\";\"other\"\n\"2080970\";\"Ailuk\";\"main\"\n\"2080970\";\"Enellik Island\";\"other\"\n\"2113779\";\"Majuro\";\"main\"\n\"2113779\";\"Madzhuro\";\"other\"\n\"2113779\";\"Majur\";\"other\"\n\"2113779\";\"Mazouro\";\"other\"\n\"2113779\";\"Μαζούρο\";\"other\"\n\"2113779\";\"Маджуро\";\"other\"\n\"4039539\";\"Taroa\";\"main\"\n\"7304328\";\"Majuro  temp LL\";\"main\"\n\"7304467\";\"Ebaye\";\"main\"\n\"7306511\";\"Enewetak\";\"main\"\n\"7306512\";\"Ebon\";\"main\"\n\"7306513\";\"Aur\";\"main\"\n\"7306514\";\"Arno\";\"main\"\n\"7306515\";\"Airuk\";\"main\"\n\"7306516\";\"Mili\";\"main\"\n\"7306517\";\"Lae\";\"main\"\n\"7306518\";\"Utrik\";\"main\"\n\"7306519\";\"Ujae\";\"main\"\n\"7306520\";\"Rongelap\";\"main\"\n\"7306521\";\"Loen\";\"main\"\n\"7306522\";\"Namdrik\";\"main\"\n\"7306523\";\"Mejit\";\"main\"\n\"7306524\";\"Lib\";\"main\"\n\"7306525\";\"Kili\";\"main\"\n\"7306526\";\"Jabat\";\"main\"\n\"7306528\";\"Wotje\";\"main\"\n\"7306529\";\"Wotho\";\"main\"\n\"783809\";\"Zrnovci\";\"main\"\n\"783809\";\"Zrnovce\";\"other\"\n\"783809\";\"Зрновци\";\"other\"\n\"783845\";\"Zletovo\";\"main\"\n\"783845\";\"Злетово\";\"other\"\n\"783877\";\"Žitoše\";\"main\"\n\"783877\";\"Zitose\";\"ascii\"\n\"783877\";\"Zhitoshe\";\"other\"\n\"783877\";\"Zitoste\";\"other\"\n\"783877\";\"Žitošte\";\"other\"\n\"783877\";\"Житоше\";\"other\"\n\"783926\";\"Желино\";\"main\"\n\"783926\";\"Zhelino\";\"ascii\"\n\"783926\";\"Zelino\";\"other\"\n\"783926\";\"Zeljino\";\"other\"\n\"783926\";\"Zheline\";\"other\"\n\"783926\";\"Zhelinë\";\"other\"\n\"783926\";\"Željino\";\"other\"\n\"783938\";\"Зелениково\";\"main\"\n\"783938\";\"Zelenikovo\";\"ascii\"\n\"783938\";\"Zelenikove\";\"other\"\n\"783938\";\"Zelenikovë\";\"other\"\n\"784027\";\"Зајас\";\"main\"\n\"784027\";\"Zajas\";\"ascii\"\n\"784027\";\"Zajac\";\"other\"\n\"784114\";\"Vrutok\";\"main\"\n\"784114\";\"Vrutog\";\"other\"\n\"784114\";\"Вруток\";\"other\"\n\"784205\";\"Вратница\";\"main\"\n\"784205\";\"Vratnica\";\"ascii\"\n\"784205\";\"Vratnice\";\"other\"\n\"784205\";\"Vratnicë\";\"other\"\n\"784212\";\"Vrapčište\";\"main\"\n\"784212\";\"Vrapciste\";\"ascii\"\n\"784212\";\"Vrapchishte\";\"other\"\n\"784212\";\"Vrapcicshte\";\"other\"\n\"784212\";\"Vrapcista\";\"other\"\n\"784212\";\"Vrapçicshtë\";\"other\"\n\"784212\";\"Vrapčišta\";\"other\"\n\"784212\";\"Врапчиште\";\"other\"\n\"784239\";\"Vraneštica\";\"main\"\n\"784239\";\"Vranestica\";\"ascii\"\n\"784239\";\"Vraneshtica\";\"other\"\n\"784239\";\"Vranesnica\";\"other\"\n\"784239\";\"Vranešnica\";\"other\"\n\"784239\";\"Вранештица\";\"other\"\n\"784351\";\"Vladimirovo\";\"main\"\n\"784424\";\"Виница\";\"main\"\n\"784424\";\"Vinica\";\"ascii\"\n\"784462\";\"Vevčani\";\"main\"\n\"784462\";\"Vevcani\";\"ascii\"\n\"784462\";\"Vehcane\";\"other\"\n\"784462\";\"Vehcani\";\"other\"\n\"784462\";\"Vehčane\";\"other\"\n\"784462\";\"Vehčani\";\"other\"\n\"784462\";\"Vevcane\";\"other\"\n\"784462\";\"Vevchani\";\"other\"\n\"784462\";\"Vevčane\";\"other\"\n\"784462\";\"Вевчани\";\"other\"\n\"784505\";\"Velusa\";\"main\"\n\"784505\";\"Veljusa\";\"other\"\n\"784679\";\"Velesta\";\"main\"\n\"784679\";\"Veleshta\";\"other\"\n\"784679\";\"Veleste\";\"other\"\n\"784679\";\"Velešte\";\"other\"\n\"784679\";\"Велешта\";\"other\"\n\"784692\";\"Vataša\";\"main\"\n\"784692\";\"Vatasa\";\"ascii\"\n\"784700\";\"Василево\";\"main\"\n\"784700\";\"Vasilevo\";\"ascii\"\n\"784700\";\"Vasiljevo\";\"other\"\n\"784711\";\"Varoš\";\"main\"\n\"784711\";\"Varos\";\"ascii\"\n\"784711\";\"Markov Grad\";\"other\"\n\"784733\";\"Valandovo\";\"main\"\n\"784733\";\"Valandova\";\"other\"\n\"784733\";\"Валандово\";\"other\"\n\"784737\";\"Ваксинце\";\"main\"\n\"784737\";\"Vaksince\";\"ascii\"\n\"784737\";\"Vaksinc\";\"other\"\n\"784747\";\"Usje\";\"main\"\n\"784747\";\"Usija\";\"other\"\n\"784747\";\"Usije\";\"other\"\n\"784854\";\"Tuin\";\"main\"\n\"784854\";\"Tujin\";\"other\"\n\"784854\";\"Tujna\";\"other\"\n\"785011\";\"Topolčani\";\"main\"\n\"785011\";\"Topolcani\";\"ascii\"\n\"785011\";\"Topolcane\";\"other\"\n\"785011\";\"Topolchani\";\"other\"\n\"785011\";\"Тополчани\";\"other\"\n\"785058\";\"Велес\";\"main\"\n\"785058\";\"Veles\";\"ascii\"\n\"785058\";\"Koprulu\";\"other\"\n\"785058\";\"Köprülü\";\"other\"\n\"785058\";\"Titov Veles\";\"other\"\n\"785058\";\"Velessa\";\"other\"\n\"785058\";\"Weles\";\"other\"\n\"785082\";\"Тетово\";\"main\"\n\"785082\";\"Tetovo\";\"ascii\"\n\"785082\";\"Kalkandelen\";\"other\"\n\"785082\";\"Qalqan Delen\";\"other\"\n\"785082\";\"Tetobo\";\"other\"\n\"785082\";\"Tetova\";\"other\"\n\"785082\";\"Tetovas\";\"other\"\n\"785082\";\"Tetove\";\"other\"\n\"785082\";\"Tetovë\";\"other\"\n\"785082\";\"Tetowo\";\"other\"\n\"785082\";\"Τέτοβο\";\"other\"\n\"785113\";\"Теарце\";\"main\"\n\"785113\";\"Tearce\";\"ascii\"\n\"785201\";\"Свети Николе\";\"main\"\n\"785201\";\"Sveti Nikole\";\"ascii\"\n\"785201\";\"Kilisseli\";\"other\"\n\"785201\";\"Sveti Nikola\";\"other\"\n\"785270\";\"Sušica\";\"main\"\n\"785270\";\"Susica\";\"ascii\"\n\"785345\";\"Студеничани\";\"main\"\n\"785345\";\"Studenichani\";\"ascii\"\n\"785345\";\"Studenicane\";\"other\"\n\"785345\";\"Studeničane\";\"other\"\n\"785380\";\"Strumica\";\"main\"\n\"785380\";\"Stromitza\";\"other\"\n\"785380\";\"Stromnitsa\";\"other\"\n\"785380\";\"Stromnitza\";\"other\"\n\"785380\";\"Stroumitsa\";\"other\"\n\"785380\";\"Strumitsa\";\"other\"\n\"785380\";\"Strumitza\";\"other\"\n\"785380\";\"Ustrumcha\";\"other\"\n\"785380\";\"Струмица\";\"other\"\n\"785387\";\"Struga\";\"main\"\n\"785387\";\"Ustrugha\";\"other\"\n\"785387\";\"astrwga\";\"other\"\n\"785387\";\"Струга\";\"other\"\n\"785387\";\"استروگا\";\"other\"\n\"785427\";\"Strelci\";\"main\"\n\"785466\";\"Stojakovo\";\"main\"\n\"785482\";\"Штип\";\"main\"\n\"785482\";\"Shtip\";\"ascii\"\n\"785482\";\"Ishtib\";\"other\"\n\"785482\";\"Istip\";\"other\"\n\"785482\";\"Shhip\";\"other\"\n\"785482\";\"Stip\";\"other\"\n\"785482\";\"Stiplia\";\"other\"\n\"785482\";\"İştip\";\"other\"\n\"785482\";\"Štip\";\"other\"\n\"785482\";\"Щип\";\"other\"\n\"785515\";\"Старо Нагоричане\";\"main\"\n\"785515\";\"Staro Nagorichane\";\"ascii\"\n\"785515\";\"Nagorican i Vjeter\";\"other\"\n\"785515\";\"Nagoriçan i Vjetër\";\"other\"\n\"785515\";\"Staro Nagoricane\";\"other\"\n\"785515\";\"Staro Nagoricino\";\"other\"\n\"785515\";\"Staro Nagoričane\";\"other\"\n\"785515\";\"Staro Nagoričino\";\"other\"\n\"785537\";\"Star Dojran\";\"main\"\n\"785537\";\"Doerane\";\"other\"\n\"785537\";\"Dojran\";\"other\"\n\"785537\";\"Doēranē\";\"other\"\n\"785537\";\"Stari Dojran\";\"other\"\n\"785537\";\"Stari Dorjan\";\"other\"\n\"785537\";\"Стар Дојран\";\"other\"\n\"785604\";\"Dolno Srpci\";\"main\"\n\"785604\";\"Srpci\";\"other\"\n\"785620\";\"Sredno Konjari\";\"main\"\n\"785620\";\"Sredno Konjare\";\"other\"\n\"785639\";\"Srbinovo\";\"main\"\n\"785639\";\"Србиново\";\"other\"\n\"785643\";\"Srbica\";\"main\"\n\"785669\";\"Sopotnica\";\"main\"\n\"785669\";\"Сопотница\";\"other\"\n\"785679\";\"Сопиште\";\"main\"\n\"785679\";\"Sopishte\";\"ascii\"\n\"785679\";\"Sopiste\";\"other\"\n\"785679\";\"Sopište\";\"other\"\n\"785759\";\"Слупчане\";\"main\"\n\"785759\";\"Slupchane\";\"ascii\"\n\"785759\";\"Sllupcanje\";\"other\"\n\"785759\";\"Sllupçanje\";\"other\"\n\"785792\";\"Slepče\";\"main\"\n\"785792\";\"Slepce\";\"ascii\"\n\"785802\";\"Slatino\";\"main\"\n\"785802\";\"Slatina\";\"other\"\n\"785802\";\"Slatine\";\"other\"\n\"785802\";\"Slatinë\";\"other\"\n\"785842\";\"Skopje\";\"main\"\n\"785842\";\"Scupi\";\"other\"\n\"785842\";\"Shkup\";\"other\"\n\"785842\";\"Shkupi\";\"other\"\n\"785842\";\"Skop'e\";\"other\"\n\"785842\";\"Skope\";\"other\"\n\"785842\";\"Skopeia\";\"other\"\n\"785842\";\"Skopia\";\"other\"\n\"785842\";\"Skopie\";\"other\"\n\"785842\";\"Skopiye\";\"other\"\n\"785842\";\"Skopjo\";\"other\"\n\"785842\";\"Skopjė\";\"other\"\n\"785842\";\"Skople\";\"other\"\n\"785842\";\"Skoplie\";\"other\"\n\"785842\";\"Skoplje\";\"other\"\n\"785842\";\"Skopye\";\"other\"\n\"785842\";\"Szkopje\";\"other\"\n\"785842\";\"UEskuep\";\"other\"\n\"785842\";\"Uskub\";\"other\"\n\"785842\";\"Usküb\";\"other\"\n\"785842\";\"askwpyh\";\"other\"\n\"785842\";\"seukope\";\"other\"\n\"785842\";\"si ke pu li\";\"other\"\n\"785842\";\"skwbyh\";\"other\"\n\"785842\";\"sqwpyh\";\"other\"\n\"785842\";\"sukopie\";\"other\"\n\"785842\";\"Üsküp\";\"other\"\n\"785842\";\"Σκόπια\";\"other\"\n\"785842\";\"Скоп'е\";\"other\"\n\"785842\";\"Скопе\";\"other\"\n\"785842\";\"Скопие\";\"other\"\n\"785842\";\"Скопье\";\"other\"\n\"785842\";\"Скопје\";\"other\"\n\"785842\";\"Скопље\";\"other\"\n\"785842\";\"Съкопиѥ\";\"other\"\n\"785842\";\"Սկոպյե\";\"other\"\n\"785842\";\"סקופיה\";\"other\"\n\"785842\";\"اسکوپیه\";\"other\"\n\"785842\";\"سكوبيه\";\"other\"\n\"785842\";\"სკოპიე\";\"other\"\n\"785842\";\"ስኮፕዬ\";\"other\"\n\"785842\";\"スコピエ\";\"other\"\n\"785842\";\"斯科普里\";\"other\"\n\"785842\";\"스코페\";\"other\"\n\"785881\";\"Šipkovica\";\"main\"\n\"785881\";\"Sipkovica\";\"ascii\"\n\"785881\";\"Mezefovica\";\"other\"\n\"785881\";\"Shipkovica\";\"other\"\n\"785881\";\"Shipkovice\";\"other\"\n\"785881\";\"Shipkovicë\";\"other\"\n\"785881\";\"Siikovica\";\"other\"\n\"785881\";\"Шипковица\";\"other\"\n\"786005\";\"Selce\";\"main\"\n\"786014\";\"Sekirnik\";\"main\"\n\"786026\";\"Sedlarevo\";\"main\"\n\"786026\";\"Salarevo\";\"other\"\n\"786093\";\"Сарај\";\"main\"\n\"786093\";\"Saraj\";\"ascii\"\n\"786093\";\"Сарай\";\"other\"\n\"786113\";\"Samokov\";\"main\"\n\"786113\";\"Samakov\";\"other\"\n\"786113\";\"Самоков\";\"other\"\n\"786171\";\"Rusinovo\";\"main\"\n\"786238\";\"Ростуша\";\"main\"\n\"786238\";\"Rostusha\";\"ascii\"\n\"786238\";\"Rostusa\";\"other\"\n\"786239\";\"Rosoman\";\"main\"\n\"786239\";\"Rasoman\";\"other\"\n\"786239\";\"Росоман\";\"other\"\n\"786251\";\"Романовце\";\"main\"\n\"786251\";\"Romanovce\";\"ascii\"\n\"786251\";\"Rahmanli\";\"other\"\n\"786251\";\"Ramanovce\";\"other\"\n\"786251\";\"Romanovac\";\"other\"\n\"786251\";\"Romanovc\";\"other\"\n\"786251\";\"Romanovci\";\"other\"\n\"786341\";\"Ресен\";\"main\"\n\"786341\";\"Resen\";\"ascii\"\n\"786341\";\"Resan\";\"other\"\n\"786341\";\"Resna\";\"other\"\n\"786477\";\"Ранковце\";\"main\"\n\"786477\";\"Rankovce\";\"ascii\"\n\"786477\";\"Rankovci\";\"other\"\n\"786477\";\"Ранковци\";\"other\"\n\"786565\";\"Радовиш\";\"main\"\n\"786565\";\"Radovish\";\"ascii\"\n\"786565\";\"Radovis\";\"other\"\n\"786565\";\"Radoviste\";\"other\"\n\"786565\";\"Radovište\";\"other\"\n\"786565\";\"Rodovis\";\"other\"\n\"786565\";\"Rodoviš\";\"other\"\n\"786582\";\"Радолишта\";\"main\"\n\"786582\";\"Radolishta\";\"ascii\"\n\"786582\";\"Radolista\";\"other\"\n\"786582\";\"Radoliste\";\"other\"\n\"786582\";\"Radolište\";\"other\"\n\"786595\";\"Радишани\";\"main\"\n\"786595\";\"Radishani\";\"ascii\"\n\"786674\";\"Pršovce\";\"main\"\n\"786674\";\"Prsovce\";\"ascii\"\n\"786674\";\"Prosovce\";\"other\"\n\"786674\";\"Prošovce\";\"other\"\n\"786674\";\"Prsevce\";\"other\"\n\"786674\";\"Prševce\";\"other\"\n\"786700\";\"Пробиштип\";\"main\"\n\"786700\";\"Probishtip\";\"ascii\"\n\"786700\";\"Probistip\";\"other\"\n\"786735\";\"Прилеп\";\"main\"\n\"786735\";\"Prilep\";\"ascii\"\n\"786735\";\"Perlepe\";\"other\"\n\"786735\";\"Perlepes\";\"other\"\n\"786735\";\"Perlepé\";\"other\"\n\"786735\";\"Pirlepe\";\"other\"\n\"786735\";\"Prilepa\";\"other\"\n\"786735\";\"Prilepas\";\"other\"\n\"786735\";\"pirlepe\";\"other\"\n\"786969\";\"Podareš\";\"main\"\n\"786969\";\"Podares\";\"ascii\"\n\"786969\";\"Podaresh\";\"other\"\n\"786969\";\"Подареш\";\"other\"\n\"787016\";\"Пласница\";\"main\"\n\"787016\";\"Plasnica\";\"ascii\"\n\"787052\";\"Pirok\";\"main\"\n\"787054\";\"Pirava\";\"main\"\n\"787072\";\"Петровец\";\"main\"\n\"787072\";\"Petrovec\";\"ascii\"\n\"787072\";\"Ibraimovo\";\"other\"\n\"787072\";\"Petrovac\";\"other\"\n\"787147\";\"Pehčevo\";\"main\"\n\"787147\";\"Pehcevo\";\"ascii\"\n\"787147\";\"Pekhchevo\";\"other\"\n\"787147\";\"Пехчево\";\"other\"\n\"787301\";\"Otlja\";\"main\"\n\"787301\";\"Ode\";\"other\"\n\"787301\";\"Odë\";\"other\"\n\"787301\";\"Otla\";\"other\"\n\"787301\";\"Отља\";\"other\"\n\"787416\";\"Orizari\";\"main\"\n\"787416\";\"Orizare\";\"other\"\n\"787416\";\"Оризари\";\"other\"\n\"787444\";\"Орашац\";\"main\"\n\"787444\";\"Orashac\";\"ascii\"\n\"787444\";\"Orasec\";\"other\"\n\"787444\";\"Orašec\";\"other\"\n\"787448\";\"Oraovica\";\"main\"\n\"787448\";\"Orahovica\";\"other\"\n\"787475\";\"Oktisi\";\"main\"\n\"787487\";\"Ohrid\";\"main\"\n\"787487\";\"Akhris\";\"other\"\n\"787487\";\"Ochrida\";\"other\"\n\"787487\";\"Ochryda\";\"other\"\n\"787487\";\"Ohri\";\"other\"\n\"787487\";\"Okhri\";\"other\"\n\"787487\";\"Okhrid\";\"other\"\n\"787487\";\"awhryd\";\"other\"\n\"787487\";\"Οχρίδα\";\"other\"\n\"787487\";\"Охрид\";\"other\"\n\"787487\";\"اوهرید\";\"other\"\n\"787495\";\"Ognjaci\";\"main\"\n\"787495\";\"Ognanci\";\"other\"\n\"787495\";\"Ognjance\";\"other\"\n\"787495\";\"Огњанци\";\"other\"\n\"787512\";\"Obršani\";\"main\"\n\"787512\";\"Obrsani\";\"ascii\"\n\"787526\";\"Облешево\";\"main\"\n\"787526\";\"Obleshevo\";\"ascii\"\n\"787526\";\"Oblesevo\";\"other\"\n\"787574\";\"Ново Село\";\"main\"\n\"787574\";\"Novo Selo\";\"ascii\"\n\"787574\";\"Jenikej\";\"other\"\n\"787574\";\"Jenikoj\";\"other\"\n\"787574\";\"Jeniköj\";\"other\"\n\"787624\";\"Novaci\";\"main\"\n\"787624\";\"Новаци\";\"other\"\n\"787692\";\"Нераште\";\"main\"\n\"787692\";\"Nerashte\";\"ascii\"\n\"787715\";\"Неготино\";\"main\"\n\"787715\";\"Negotino\";\"ascii\"\n\"787715\";\"Negotin\";\"other\"\n\"787715\";\"Negotino-Poloshko\";\"other\"\n\"787715\";\"Negotino-Polosko\";\"other\"\n\"787715\";\"Negotino-Pološko\";\"other\"\n\"787715\";\"Неготино-Полошко\";\"other\"\n\"787716\";\"Неготино\";\"main\"\n\"787716\";\"Negotino\";\"ascii\"\n\"787716\";\"Negotin\";\"other\"\n\"787716\";\"Negotin Vardarski\";\"other\"\n\"787772\";\"Murtino\";\"main\"\n\"787772\";\"Муртино\";\"other\"\n\"787778\";\"Demir Hisar\";\"main\"\n\"787778\";\"Demir Khisar\";\"other\"\n\"787778\";\"Murgasevo\";\"other\"\n\"787778\";\"Murgashevo\";\"other\"\n\"787778\";\"Murgaševo\";\"other\"\n\"787778\";\"Демир Хисар\";\"other\"\n\"787778\";\"Мургашево\";\"other\"\n\"787853\";\"Morani\";\"main\"\n\"787853\";\"Morane\";\"other\"\n\"787877\";\"Могила\";\"main\"\n\"787877\";\"Mogila\";\"ascii\"\n\"787902\";\"Мислешево\";\"main\"\n\"787902\";\"Misleshevo\";\"ascii\"\n\"787902\";\"Mislesevo\";\"other\"\n\"787928\";\"Miravci\";\"main\"\n\"787928\";\"Miravic\";\"other\"\n\"787928\";\"Mirivci\";\"other\"\n\"787928\";\"Mirovca\";\"other\"\n\"787928\";\"Mirovci\";\"other\"\n\"787928\";\"Миравци\";\"other\"\n\"787971\";\"Miletino\";\"main\"\n\"787985\";\"Миладиновци\";\"main\"\n\"787985\";\"Miladinovci\";\"ascii\"\n\"787985\";\"Adzarlar\";\"other\"\n\"787985\";\"Adžarlar\";\"other\"\n\"787985\";\"Ajalar\";\"other\"\n\"787985\";\"Aleksandrovo\";\"other\"\n\"787985\";\"Hadzarlar\";\"other\"\n\"787985\";\"Hadžarlar\";\"other\"\n\"788021\";\"Mešeišta\";\"main\"\n\"788021\";\"Meseista\";\"ascii\"\n\"788021\";\"Mescista\";\"other\"\n\"788021\";\"Meseiste\";\"other\"\n\"788021\";\"Mesevista\";\"other\"\n\"788021\";\"Meseviste\";\"other\"\n\"788021\";\"Mesheishta\";\"other\"\n\"788021\";\"Mesista\";\"other\"\n\"788021\";\"Mešeište\";\"other\"\n\"788021\";\"Meševista\";\"other\"\n\"788021\";\"Meševište\";\"other\"\n\"788021\";\"Mešista\";\"other\"\n\"788021\";\"Meščišta\";\"other\"\n\"788021\";\"Мешеишта\";\"other\"\n\"788105\";\"Матејче\";\"main\"\n\"788105\";\"Matejche\";\"ascii\"\n\"788105\";\"Matejca\";\"other\"\n\"788105\";\"Matejce\";\"other\"\n\"788105\";\"Matejča\";\"other\"\n\"788105\";\"Metecje\";\"other\"\n\"788105\";\"Meteçjë\";\"other\"\n\"788145\";\"Марино\";\"main\"\n\"788145\";\"Marino\";\"ascii\"\n\"788145\";\"Marino Selo\";\"other\"\n\"788415\";\"Lukovo\";\"main\"\n\"788415\";\"Dolno Lukovo\";\"other\"\n\"788415\";\"Gorno Lukovo\";\"other\"\n\"788415\";\"Луково\";\"other\"\n\"788516\";\"Lojane\";\"main\"\n\"788516\";\"Llojan\";\"other\"\n\"788517\";\"Logovardi\";\"main\"\n\"788517\";\"Cekrkci\";\"other\"\n\"788517\";\"Čekrkci\";\"other\"\n\"788564\";\"Ljubin\";\"main\"\n\"788564\";\"Ciflik Ljubin\";\"other\"\n\"788564\";\"Čiflik Ljubin\";\"other\"\n\"788610\";\"Lisičani\";\"main\"\n\"788610\";\"Lisicani\";\"ascii\"\n\"788654\";\"Липково\";\"main\"\n\"788654\";\"Lipkovo\";\"ascii\"\n\"788654\";\"Lipkove\";\"other\"\n\"788654\";\"Lipkovë\";\"other\"\n\"788774\";\"Lažani\";\"main\"\n\"788774\";\"Lazani\";\"ascii\"\n\"788774\";\"Lazari\";\"other\"\n\"788790\";\"Larce\";\"main\"\n\"788790\";\"Lirce\";\"other\"\n\"788819\";\"Лабуништа\";\"main\"\n\"788819\";\"Labunishta\";\"ascii\"\n\"788819\";\"Labunista\";\"other\"\n\"788819\";\"Labuniste\";\"other\"\n\"788819\";\"Labunište\";\"other\"\n\"788886\";\"Kumanovo\";\"main\"\n\"788886\";\"Kumanova\";\"other\"\n\"788886\";\"Kumanovas\";\"other\"\n\"788886\";\"Kumanove\";\"other\"\n\"788886\";\"Kumanovë\";\"other\"\n\"788886\";\"Куманово\";\"other\"\n\"788906\";\"Kukurečani\";\"main\"\n\"788906\";\"Kukurecani\";\"ascii\"\n\"788906\";\"Kukurechani\";\"other\"\n\"788906\";\"Кукуречани\";\"other\"\n\"788915\";\"Куклиш\";\"main\"\n\"788915\";\"Kuklish\";\"ascii\"\n\"788915\";\"Kuklis\";\"other\"\n\"788950\";\"Крушопек\";\"main\"\n\"788950\";\"Krushopek\";\"ascii\"\n\"788950\";\"Krusopek\";\"other\"\n\"788950\";\"Krušopek\";\"other\"\n\"788961\";\"Крушево\";\"main\"\n\"788961\";\"Krushevo\";\"ascii\"\n\"788961\";\"Krusevo\";\"other\"\n\"788961\";\"Krusovo\";\"other\"\n\"788961\";\"Krušovo\";\"other\"\n\"789028\";\"Кривогаштани\";\"main\"\n\"789028\";\"Krivogashtani\";\"ascii\"\n\"789028\";\"Krivogastane\";\"other\"\n\"789028\";\"Krivogastani\";\"other\"\n\"789028\";\"Krivogaštane\";\"other\"\n\"789045\";\"Крива Паланка\";\"main\"\n\"789045\";\"Kriva Palanka\";\"ascii\"\n\"789045\";\"Palangha\";\"other\"\n\"789091\";\"Кратово\";\"main\"\n\"789091\";\"Kratovo\";\"ascii\"\n\"789091\";\"Kratova\";\"other\"\n\"789101\";\"Krani\";\"main\"\n\"789101\";\"Hrani\";\"other\"\n\"789101\";\"Karahan\";\"other\"\n\"789247\";\"Kosel\";\"main\"\n\"789247\";\"Koselj\";\"other\"\n\"789247\";\"Косел\";\"other\"\n\"789339\";\"Кондово\";\"main\"\n\"789339\";\"Kondovo\";\"ascii\"\n\"789342\";\"Konče\";\"main\"\n\"789342\";\"Konce\";\"ascii\"\n\"789342\";\"Konca\";\"other\"\n\"789342\";\"Konche\";\"other\"\n\"789342\";\"Konča\";\"other\"\n\"789342\";\"Конче\";\"other\"\n\"789403\";\"Кочани\";\"main\"\n\"789403\";\"Kochani\";\"ascii\"\n\"789403\";\"Kocane\";\"other\"\n\"789403\";\"Kocani\";\"other\"\n\"789403\";\"Kočane\";\"other\"\n\"789403\";\"Kočani\";\"other\"\n\"789473\";\"Клечовце\";\"main\"\n\"789473\";\"Klechovce\";\"ascii\"\n\"789473\";\"Klacovce\";\"other\"\n\"789473\";\"Klačovce\";\"other\"\n\"789473\";\"Klecevc\";\"other\"\n\"789473\";\"Klecevce\";\"other\"\n\"789473\";\"Klecevci\";\"other\"\n\"789473\";\"Klechevce\";\"other\"\n\"789473\";\"Kleçevc\";\"other\"\n\"789473\";\"Klečevce\";\"other\"\n\"789473\";\"Klečevci\";\"other\"\n\"789473\";\"Клечевце\";\"other\"\n\"789527\";\"Kičevo\";\"main\"\n\"789527\";\"Kicevo\";\"ascii\"\n\"789527\";\"Kichevo\";\"other\"\n\"789527\";\"Кичево\";\"other\"\n\"789541\";\"Кавадарци\";\"main\"\n\"789541\";\"Kavadarci\";\"ascii\"\n\"789541\";\"Kavadar\";\"other\"\n\"789541\";\"Tikves\";\"other\"\n\"789541\";\"Tikvesh\";\"other\"\n\"789541\";\"Tikveš\";\"other\"\n\"789563\";\"Karbinci\";\"main\"\n\"789563\";\"Karabinci\";\"other\"\n\"789563\";\"Карбинци\";\"other\"\n\"789603\";\"Kanatlarci\";\"main\"\n\"789611\";\"Kamenjane\";\"main\"\n\"789611\";\"Kamenane\";\"other\"\n\"789611\";\"Kamenjan\";\"other\"\n\"789611\";\"Камењане\";\"other\"\n\"789629\";\"Makedonska Kamenica\";\"main\"\n\"789629\";\"Kamenica\";\"other\"\n\"789629\";\"Македонска Каменица\";\"other\"\n\"789703\";\"Кадино\";\"main\"\n\"789703\";\"Kadino\";\"ascii\"\n\"789703\";\"Kadino Selo\";\"other\"\n\"789734\";\"Јурумлери\";\"main\"\n\"789734\";\"Jurumleri\";\"ascii\"\n\"789822\";\"Јегуновце\";\"main\"\n\"789822\";\"Jegunovce\";\"ascii\"\n\"789893\";\"Jankovec\";\"main\"\n\"789893\";\"Jankoec\";\"other\"\n\"789893\";\"Jankovac\";\"other\"\n\"789962\";\"Извор\";\"main\"\n\"789962\";\"Izvor\";\"ascii\"\n\"789985\";\"Ivankovci\";\"main\"\n\"789985\";\"Ivankovac\";\"other\"\n\"789985\";\"Ivanlije\";\"other\"\n\"790018\";\"Ilovica\";\"main\"\n\"790034\";\"Идризово\";\"main\"\n\"790034\";\"Idrizovo\";\"ascii\"\n\"790084\";\"Gurgurnica\";\"main\"\n\"790084\";\"Grgurnica\";\"other\"\n\"790137\";\"Grnčari\";\"main\"\n\"790137\";\"Grncari\";\"ascii\"\n\"790137\";\"Grncare\";\"other\"\n\"790137\";\"Grnčare\";\"other\"\n\"790183\";\"Грчец\";\"main\"\n\"790183\";\"Grchec\";\"ascii\"\n\"790183\";\"Dolni Grcec\";\"other\"\n\"790183\";\"Dolni Grčec\";\"other\"\n\"790183\";\"Grcac\";\"other\"\n\"790183\";\"Grcec\";\"other\"\n\"790183\";\"Grčac\";\"other\"\n\"790183\";\"Grčec\";\"other\"\n\"790217\";\"Gradsko\";\"main\"\n\"790217\";\"Градско\";\"other\"\n\"790248\";\"Gradec\";\"main\"\n\"790249\";\"Gradec\";\"main\"\n\"790295\";\"Гостивар\";\"main\"\n\"790295\";\"Gostivar\";\"ascii\"\n\"790295\";\"Gostivari\";\"other\"\n\"790295\";\"Kostovon\";\"other\"\n\"790305\";\"Gorobinci\";\"main\"\n\"790305\";\"Gorabinc\";\"other\"\n\"790305\";\"Gorovinci\";\"other\"\n\"790319\";\"Gorno Orizari\";\"main\"\n\"790319\";\"Gornji Orizari\";\"other\"\n\"790319\";\"Gornji-Celtiki\";\"other\"\n\"790319\";\"Gornji-Čeltiki\";\"other\"\n\"790320\";\"Gorno Orizari\";\"main\"\n\"790634\";\"Golema Rečica\";\"main\"\n\"790634\";\"Golema Recica\";\"ascii\"\n\"790634\";\"Recica\";\"other\"\n\"790634\";\"Recice e Eperme\";\"other\"\n\"790634\";\"Reçicë e Epërme\";\"other\"\n\"790634\";\"Rečica\";\"other\"\n\"790634\";\"Velika Recica\";\"other\"\n\"790634\";\"Velika Rečica\";\"other\"\n\"790744\";\"Гевгелија\";\"main\"\n\"790744\";\"Gevgelija\";\"ascii\"\n\"790744\";\"Devdelijad\";\"other\"\n\"790744\";\"Gevegeli\";\"other\"\n\"790744\";\"Gevgeli\";\"other\"\n\"790744\";\"Gevgelia\";\"other\"\n\"790744\";\"Ðevđelijad\";\"other\"\n\"790744\";\"Гевгелия\";\"other\"\n\"790812\";\"Forino\";\"main\"\n\"790848\";\"Лозово\";\"main\"\n\"790848\";\"Lozovo\";\"ascii\"\n\"790848\";\"Dzumajlija\";\"other\"\n\"790848\";\"Dzumali\";\"other\"\n\"790848\";\"Džumajlija\";\"other\"\n\"790848\";\"Džumali\";\"other\"\n\"790857\";\"Džepčište\";\"main\"\n\"790857\";\"Dzepciste\";\"ascii\"\n\"790857\";\"Dzepchishte\";\"other\"\n\"790857\";\"Dzepiste\";\"other\"\n\"790857\";\"Džepište\";\"other\"\n\"790857\";\"Џепчиште\";\"other\"\n\"791009\";\"Другово\";\"main\"\n\"791009\";\"Drugovo\";\"ascii\"\n\"791332\";\"Dolno Palčište\";\"main\"\n\"791332\";\"Dolno Palciste\";\"ascii\"\n\"791332\";\"Pallcishte\";\"other\"\n\"791332\";\"Pallçishte\";\"other\"\n\"791334\";\"Dolno Orizari\";\"main\"\n\"791343\";\"Dolno Količani\";\"main\"\n\"791343\";\"Dolno Kolicani\";\"ascii\"\n\"791343\";\"Dolno Kolicane\";\"other\"\n\"791343\";\"Dolno Količane\";\"other\"\n\"791343\";\"Donje Kolicane\";\"other\"\n\"791343\";\"Donje Količane\";\"other\"\n\"791363\";\"Долнени\";\"main\"\n\"791363\";\"Dolneni\";\"ascii\"\n\"791363\";\"Dolnjane\";\"other\"\n\"791363\";\"Dolnjani\";\"other\"\n\"791371\";\"Dolna Banjica\";\"main\"\n\"791371\";\"Dolna Banica\";\"other\"\n\"791371\";\"Долна Бањица\";\"other\"\n\"791407\";\"Dobruševo\";\"main\"\n\"791407\";\"Dobrusevo\";\"ascii\"\n\"791407\";\"Dobrushevo\";\"other\"\n\"791407\";\"Добрушево\";\"other\"\n\"791419\";\"Dobrošte\";\"main\"\n\"791419\";\"Dobroste\";\"ascii\"\n\"791419\";\"Dobroshte\";\"other\"\n\"791419\";\"Dobroshtë\";\"other\"\n\"791443\";\"Dobri Dol\";\"main\"\n\"791443\";\"Doberdol\";\"other\"\n\"791443\";\"Dobri-Do\";\"other\"\n\"791443\";\"Dobërdol\";\"other\"\n\"791517\";\"Desovo\";\"main\"\n\"791542\";\"Демир Капија\";\"main\"\n\"791542\";\"Demir Kapija\";\"ascii\"\n\"791542\";\"Banja\";\"other\"\n\"791548\";\"Delogožda\";\"main\"\n\"791548\";\"Delogozda\";\"ascii\"\n\"791548\";\"Delagozde\";\"other\"\n\"791548\";\"Delagožde\";\"other\"\n\"791548\";\"Delogozdi\";\"other\"\n\"791548\";\"Delogozhdi\";\"other\"\n\"791548\";\"Delogoždi\";\"other\"\n\"791548\";\"Делогожди\";\"other\"\n\"791559\";\"Делчево\";\"main\"\n\"791559\";\"Delchevo\";\"ascii\"\n\"791559\";\"Carevo Selo\";\"other\"\n\"791559\";\"Delcevo\";\"other\"\n\"791606\";\"Дебар\";\"main\"\n\"791606\";\"Debar\";\"ascii\"\n\"791606\";\"Bebar\";\"other\"\n\"791606\";\"Debur\";\"other\"\n\"791606\";\"Dibra\";\"other\"\n\"791606\";\"Dibre-i-Bala\";\"other\"\n\"791606\";\"debre\";\"other\"\n\"791606\";\"Дебър\";\"other\"\n\"791720\";\"Чучер - Сандево\";\"main\"\n\"791720\";\"Chucher - Sandevo\";\"ascii\"\n\"791720\";\"Chucher\";\"other\"\n\"791720\";\"Cucer\";\"other\"\n\"791720\";\"Cucer-Sandevo\";\"other\"\n\"791720\";\"Čučer\";\"other\"\n\"791720\";\"Čučer-Sandevo\";\"other\"\n\"791720\";\"Чучер\";\"other\"\n\"791819\";\"Crnilište\";\"main\"\n\"791819\";\"Crniliste\";\"ascii\"\n\"791885\";\"Црешево\";\"main\"\n\"791885\";\"Creshevo\";\"ascii\"\n\"791954\";\"Češinovo\";\"main\"\n\"791954\";\"Cesinovo\";\"ascii\"\n\"791954\";\"Cesinovis\";\"other\"\n\"791954\";\"Cheshinovo\";\"other\"\n\"791954\";\"Češinovis\";\"other\"\n\"791954\";\"Чешиново\";\"other\"\n\"792007\";\"Čelopek\";\"main\"\n\"792007\";\"Celopek\";\"ascii\"\n\"792007\";\"Callapek\";\"other\"\n\"792007\";\"Çallapek\";\"other\"\n\"792019\";\"Чегране\";\"main\"\n\"792019\";\"Chegrane\";\"ascii\"\n\"792019\";\"Cegran\";\"other\"\n\"792019\";\"Cegrane\";\"other\"\n\"792019\";\"Çegran\";\"other\"\n\"792034\";\"Čaška\";\"main\"\n\"792034\";\"Caska\";\"ascii\"\n\"792034\";\"Chashka\";\"other\"\n\"792034\";\"Чашка\";\"other\"\n\"792055\";\"Capari\";\"main\"\n\"792055\";\"Цапари\";\"other\"\n\"792129\";\"Булачани\";\"main\"\n\"792129\";\"Bulachani\";\"ascii\"\n\"792129\";\"Bulacane\";\"other\"\n\"792129\";\"Bulacani\";\"other\"\n\"792129\";\"Bulačane\";\"other\"\n\"792129\";\"Bulačani\";\"other\"\n\"792150\";\"Bukovik\";\"main\"\n\"792150\";\"Буковиќ\";\"other\"\n\"792197\";\"Bučin\";\"main\"\n\"792197\";\"Bucin\";\"ascii\"\n\"792227\";\"Brvenica\";\"main\"\n\"792227\";\"Bervenice\";\"other\"\n\"792227\";\"Brvence\";\"other\"\n\"792227\";\"Bërvenicë\";\"other\"\n\"792227\";\"Брвеница\";\"other\"\n\"792257\";\"Македонски Брод\";\"main\"\n\"792257\";\"Makedonski Brod\";\"ascii\"\n\"792257\";\"Brod\";\"other\"\n\"792257\";\"Brod Makedonski\";\"other\"\n\"792257\";\"Juzni Brod\";\"other\"\n\"792257\";\"Južni Brod\";\"other\"\n\"792257\";\"Брод\";\"other\"\n\"792419\";\"Bosilovo\";\"main\"\n\"792419\";\"Bosilevo\";\"other\"\n\"792419\";\"Bosiljevo\";\"other\"\n\"792419\";\"Босилово\";\"other\"\n\"792489\";\"Bojane\";\"main\"\n\"792489\";\"Bojana\";\"other\"\n\"792501\";\"Bogovinje\";\"main\"\n\"792501\";\"Bogovina\";\"other\"\n\"792501\";\"Bogovine\";\"other\"\n\"792501\";\"Bogovino\";\"other\"\n\"792501\";\"Боговиње\";\"other\"\n\"792509\";\"Богомила\";\"main\"\n\"792509\";\"Bogomila\";\"ascii\"\n\"792509\";\"Bogumil\";\"other\"\n\"792523\";\"Богданци\";\"main\"\n\"792523\";\"Bogdanci\";\"ascii\"\n\"792553\";\"Blatec\";\"main\"\n\"792553\";\"Blaca\";\"other\"\n\"792553\";\"Blatac\";\"other\"\n\"792553\";\"Блатец\";\"other\"\n\"792578\";\"Битола\";\"main\"\n\"792578\";\"Bitola\";\"ascii\"\n\"792578\";\"Bitol\";\"other\"\n\"792578\";\"Bitolj\";\"other\"\n\"792578\";\"Bitolja\";\"other\"\n\"792578\";\"Bitolya\";\"other\"\n\"792578\";\"Manastir\";\"other\"\n\"792578\";\"Manastiri\";\"other\"\n\"792578\";\"Manastır\";\"other\"\n\"792578\";\"Monasteri\";\"other\"\n\"792578\";\"Monasterium\";\"other\"\n\"792578\";\"Monasteron\";\"other\"\n\"792578\";\"Monastir\";\"other\"\n\"792578\";\"bitora\";\"other\"\n\"792578\";\"bytwla\";\"other\"\n\"792578\";\"Μοναστήρι\";\"other\"\n\"792578\";\"Битоля\";\"other\"\n\"792578\";\"Битољ\";\"other\"\n\"792578\";\"بیتولا\";\"other\"\n\"792578\";\"ビトラ\";\"other\"\n\"792592\";\"Бистрица\";\"main\"\n\"792592\";\"Bistrica\";\"ascii\"\n\"792592\";\"Feistritz\";\"other\"\n\"792656\";\"Берово\";\"main\"\n\"792656\";\"Berovo\";\"ascii\"\n\"792676\";\"Beranci\";\"main\"\n\"792767\";\"Belčišta\";\"main\"\n\"792767\";\"Belcista\";\"ascii\"\n\"792767\";\"Belchishta\";\"other\"\n\"792767\";\"Belciste\";\"other\"\n\"792767\";\"Belčište\";\"other\"\n\"792767\";\"Белчишта\";\"other\"\n\"792809\";\"Bedinje\";\"main\"\n\"792835\";\"Батинци\";\"main\"\n\"792835\";\"Batinci\";\"ascii\"\n\"792835\";\"Batinc\";\"other\"\n\"793113\";\"Арачиново\";\"main\"\n\"793113\";\"Arachinovo\";\"ascii\"\n\"793113\";\"Aracine\";\"other\"\n\"793113\";\"Aracinovo\";\"other\"\n\"793113\";\"Araçinë\";\"other\"\n\"793113\";\"Aračinovo\";\"other\"\n\"795062\";\"Poroj\";\"main\"\n\"796037\";\"Oslomej\";\"main\"\n\"796037\";\"Осломеј\";\"other\"\n\"796095\";\"Strimnica\";\"main\"\n\"796096\";\"Dobarce\";\"main\"\n\"829616\";\"Stanica Zelenikovo\";\"main\"\n\"829616\";\"Zeleznicka Stanica Zelenikovo\";\"other\"\n\"829616\";\"Železnička Stanica Zelenikovo\";\"other\"\n\"833258\";\"Шуто Оризари\";\"main\"\n\"833258\";\"Shuto Orizari\";\"ascii\"\n\"833258\";\"Suto Orizare\";\"other\"\n\"833258\";\"Šuto Orizare\";\"other\"\n\"833357\";\"Илинден\";\"main\"\n\"833357\";\"Ilinden\";\"ascii\"\n\"833357\";\"Belimbegovo\";\"other\"\n\"833609\";\"Muleza\";\"main\"\n\"863606\";\"Vinica\";\"main\"\n\"863606\";\"Venica\";\"other\"\n\"2448442\";\"Yorosso\";\"main\"\n\"2448442\";\"Joroso\";\"other\"\n\"2448442\";\"Йоросо\";\"other\"\n\"2449067\";\"Tombouctou\";\"main\"\n\"2449067\";\"Timboctu\";\"other\"\n\"2449067\";\"Timboctú\";\"other\"\n\"2449067\";\"Timboektoe\";\"other\"\n\"2449067\";\"Timbouctou\";\"other\"\n\"2449067\";\"Timbuctoo\";\"other\"\n\"2449067\";\"Timbuctu\";\"other\"\n\"2449067\";\"Timbuctú\";\"other\"\n\"2449067\";\"Timbuktu\";\"other\"\n\"2449067\";\"Timbuktú\";\"other\"\n\"2449067\";\"Tombuctu\";\"other\"\n\"2449067\";\"Tombuctú\";\"other\"\n\"2449067\";\"Tombutu\";\"other\"\n\"2449067\";\"mdynt tmbktw\";\"other\"\n\"2449067\";\"ting ba ke tu\";\"other\"\n\"2449067\";\"tonbukuto~u\";\"other\"\n\"2449067\";\"tymbwktw\";\"other\"\n\"2449067\";\"tymbwqtw\";\"other\"\n\"2449067\";\"Тимбукту\";\"other\"\n\"2449067\";\"Тімбукту\";\"other\"\n\"2449067\";\"טימבוקטו\";\"other\"\n\"2449067\";\"تیمبوکتو\";\"other\"\n\"2449067\";\"مدينة تمبكتو\";\"other\"\n\"2449067\";\"トンブクトゥ\";\"other\"\n\"2449067\";\"廷巴克图\";\"other\"\n\"2449938\";\"Ténenkou\";\"main\"\n\"2449938\";\"Tenenkou\";\"ascii\"\n\"2450173\";\"Taoudenni\";\"main\"\n\"2450173\";\"Taodeni\";\"other\"\n\"2450173\";\"Taodéni\";\"other\"\n\"2450173\";\"Taoudeni\";\"other\"\n\"2450173\";\"Taoudéni\";\"other\"\n\"2450173\";\"Taudeni\";\"other\"\n\"2450849\";\"Sokolo\";\"main\"\n\"2450849\";\"Soala\";\"other\"\n\"2450849\";\"Swala\";\"other\"\n\"2450849\";\"Соколо\";\"other\"\n\"2451185\";\"Sikasso\";\"main\"\n\"2451185\";\"Sikaso\";\"other\"\n\"2451185\";\"Сикасо\";\"other\"\n\"2451478\";\"Ségou\";\"main\"\n\"2451478\";\"Segou\";\"ascii\"\n\"2451478\";\"Segi\";\"other\"\n\"2451478\";\"Сеги\";\"other\"\n\"2451778\";\"San\";\"main\"\n\"2452830\";\"Niafounké\";\"main\"\n\"2452830\";\"Niafounke\";\"ascii\"\n\"2452830\";\"Matounke\";\"other\"\n\"2453348\";\"Mopti\";\"main\"\n\"2453348\";\"moputi\";\"other\"\n\"2453348\";\"Мопти\";\"other\"\n\"2453348\";\"モプティ\";\"other\"\n\"2453514\";\"Ménaka\";\"main\"\n\"2453514\";\"Menaka\";\"ascii\"\n\"2453662\";\"Markala\";\"main\"\n\"2454268\";\"Koutiala\";\"main\"\n\"2454268\";\"Kutiala\";\"other\"\n\"2454268\";\"Кутиала\";\"other\"\n\"2454530\";\"Koulikoro\";\"main\"\n\"2454530\";\"Koulikoro-Liberte\";\"other\"\n\"2454530\";\"Koulikoro-Liberté\";\"other\"\n\"2454530\";\"Kulikoro\";\"other\"\n\"2454530\";\"kurikoro\";\"other\"\n\"2454530\";\"Куликоро\";\"other\"\n\"2454530\";\"クリコロ\";\"other\"\n\"2454934\";\"Kolondiéba\";\"main\"\n\"2454934\";\"Kolondieba\";\"ascii\"\n\"2454955\";\"Kolokani\";\"main\"\n\"2454955\";\"Kokolani\";\"other\"\n\"2454955\";\"Колокани\";\"other\"\n\"2455216\";\"Kita\";\"main\"\n\"2455290\";\"Kidal\";\"main\"\n\"2455290\";\"Kidal'\";\"other\"\n\"2455290\";\"Кидаль\";\"other\"\n\"2455456\";\"Kinmparana\";\"main\"\n\"2455456\";\"Kemparana\";\"other\"\n\"2455456\";\"Kimpanana\";\"other\"\n\"2455456\";\"Kimparala\";\"other\"\n\"2455456\";\"Kimparana\";\"other\"\n\"2455465\";\"Ké-Macina\";\"main\"\n\"2455465\";\"Ke-Macina\";\"ascii\"\n\"2455465\";\"Ke Machine\";\"other\"\n\"2455465\";\"Ke Massina\";\"other\"\n\"2455465\";\"Ke-Masina\";\"other\"\n\"2455465\";\"Ke-Masino\";\"other\"\n\"2455465\";\"Ké Massina\";\"other\"\n\"2455516\";\"Kayes Ndi\";\"main\"\n\"2455518\";\"Kayes\";\"main\"\n\"2455518\";\"Kajesas\";\"other\"\n\"2455558\";\"Kati\";\"main\"\n\"2455558\";\"Kati Ville\";\"other\"\n\"2455558\";\"Кати\";\"other\"\n\"2455735\";\"Kangaba\";\"main\"\n\"2455735\";\"Kaba\";\"other\"\n\"2455735\";\"Kangara\";\"other\"\n\"2455735\";\"Кангаба\";\"other\"\n\"2456917\";\"Goundam\";\"main\"\n\"2457163\";\"Gao\";\"main\"\n\"2458334\";\"Douentza\";\"main\"\n\"2458334\";\"Douenza\";\"other\"\n\"2458589\";\"Djénné\";\"main\"\n\"2458589\";\"Djenne\";\"ascii\"\n\"2458589\";\"Djenné\";\"other\"\n\"2458589\";\"dzhene\";\"other\"\n\"2458589\";\"jnh\";\"other\"\n\"2458589\";\"Джене\";\"other\"\n\"2458589\";\"جنه\";\"other\"\n\"2458624\";\"Diré\";\"main\"\n\"2458624\";\"Dire\";\"ascii\"\n\"2459775\";\"Bougouni\";\"main\"\n\"2459775\";\"Bougoum\";\"other\"\n\"2459775\";\"Buguni\";\"other\"\n\"2460489\";\"Bandiagara\";\"main\"\n\"2460546\";\"Banamba\";\"main\"\n\"2460596\";\"Bamako\";\"main\"\n\"2460596\";\"Bamaco - Bamako\";\"other\"\n\"2460596\";\"Bamakas\";\"other\"\n\"2460596\";\"Bamaku\";\"other\"\n\"2460596\";\"Bamakó\";\"other\"\n\"2460596\";\"Bamakɔ\";\"other\"\n\"2460596\";\"Bammaco\";\"other\"\n\"2460596\";\"Bammako\";\"other\"\n\"2460596\";\"Mpamako\";\"other\"\n\"2460596\";\"ba ma ke\";\"other\"\n\"2460596\";\"bamako\";\"other\"\n\"2460596\";\"bamakw\";\"other\"\n\"2460596\";\"bmqw\";\"other\"\n\"2460596\";\"Μπαμάκο\";\"other\"\n\"2460596\";\"Бамако\";\"other\"\n\"2460596\";\"Բամակո\";\"other\"\n\"2460596\";\"במקו\";\"other\"\n\"2460596\";\"باماكو\";\"other\"\n\"2460596\";\"باماکو\";\"other\"\n\"2460596\";\"ባማኮ\";\"other\"\n\"2460596\";\"バマコ\";\"other\"\n\"2460596\";\"巴馬科\";\"other\"\n\"2460596\";\"바마코\";\"other\"\n\"2460755\";\"Bafoulabé\";\"main\"\n\"2460755\";\"Bafoulabe\";\"ascii\"\n\"2460755\";\"Bafulabe\";\"other\"\n\"2460954\";\"Araouane\";\"main\"\n\"2460954\";\"Araouan\";\"other\"\n\"2460954\";\"Araoune\";\"other\"\n\"2460954\";\"Arawan\";\"other\"\n\"2461003\";\"Ansongo\";\"main\"\n\"1285173\";\"Yenangyaung\";\"main\"\n\"1285173\";\"Yaynangyoung\";\"other\"\n\"1285173\";\"Yenangyoung\";\"other\"\n\"1285871\";\"Nyaungdon\";\"main\"\n\"1285871\";\"Nyanngdon\";\"other\"\n\"1285871\";\"Nyaung-dun\";\"other\"\n\"1285871\";\"Yandoon\";\"other\"\n\"1285871\";\"Yandun\";\"other\"\n\"1285899\";\"Yamethin\";\"main\"\n\"1285899\";\"Yamethinn\";\"other\"\n\"1289828\";\"Wakema\";\"main\"\n\"1289828\";\"Wagay-ma\";\"other\"\n\"1289828\";\"Wagema\";\"other\"\n\"1289828\";\"Wagèma\";\"other\"\n\"1289828\";\"Wancuma\";\"other\"\n\"1289828\";\"Wankinna\";\"other\"\n\"1290374\";\"Twante\";\"main\"\n\"1290596\";\"Taungoo\";\"main\"\n\"1290596\";\"Taung-ngu\";\"other\"\n\"1290596\";\"Taungu\";\"other\"\n\"1290596\";\"Toungoo\";\"other\"\n\"1290596\";\"Таунгу\";\"other\"\n\"1291193\";\"Thongwa\";\"main\"\n\"1291193\";\"Thon-Khwa\";\"other\"\n\"1292037\";\"Thayetmyo\";\"main\"\n\"1292037\";\"Thayetmo\";\"other\"\n\"1292037\";\"Thyatmyo\";\"other\"\n\"1292288\";\"Thaton\";\"main\"\n\"1292288\";\"Tha-tun\";\"other\"\n\"1292288\";\"Thadon\";\"other\"\n\"1292288\";\"Thadôn\";\"other\"\n\"1292313\";\"Tharyarwady\";\"main\"\n\"1292313\";\"Tharrawaddy\";\"other\"\n\"1292313\";\"Thayawadi\";\"other\"\n\"1292579\";\"Thanatpin\";\"main\"\n\"1292580\";\"Thanatpin\";\"main\"\n\"1293625\";\"Dawei\";\"main\"\n\"1293625\";\"Tavoy\";\"other\"\n\"1293625\";\"Tawe\";\"other\"\n\"1293625\";\"Tawè\";\"other\"\n\"1293960\";\"Taunggyi\";\"main\"\n\"1293960\";\"Taunggi Mong\";\"other\"\n\"1294041\";\"Taungdwingyi\";\"main\"\n\"1295395\";\"Syriam\";\"main\"\n\"1295765\";\"Akyab\";\"main\"\n\"1295765\";\"Ak'jab\";\"other\"\n\"1295765\";\"Sittwe\";\"other\"\n\"1295765\";\"Акьяб\";\"other\"\n\"1296736\";\"Shwebo\";\"main\"\n\"1298482\";\"Sagaing\";\"main\"\n\"1298482\";\"Sagajn\";\"other\"\n\"1298482\";\"Sagang\";\"other\"\n\"1298482\";\"Sitkaing\";\"other\"\n\"1298482\";\"Сагайн\";\"other\"\n\"1298824\";\"Rangoon\";\"main\"\n\"1298824\";\"Dagon\";\"other\"\n\"1298824\";\"Gian'nkon\";\"other\"\n\"1298824\";\"Jangon\";\"other\"\n\"1298824\";\"Jangona\";\"other\"\n\"1298824\";\"Rangun\";\"other\"\n\"1298824\";\"Rangunas\";\"other\"\n\"1298824\";\"Rangún\";\"other\"\n\"1298824\";\"Rangūnas\";\"other\"\n\"1298824\";\"Yangon\";\"other\"\n\"1298824\";\"Yangôn\";\"other\"\n\"1298824\";\"iyanguna\";\"other\"\n\"1298824\";\"ranguna\";\"other\"\n\"1298824\";\"yang guang\";\"other\"\n\"1298824\";\"yang-gon\";\"other\"\n\"1298824\";\"yangkung\";\"other\"\n\"1298824\";\"yangon\";\"other\"\n\"1298824\";\"yangwn\";\"other\"\n\"1298824\";\"Γιανγκόν\";\"other\"\n\"1298824\";\"Рангун\";\"other\"\n\"1298824\";\"Янгон\";\"other\"\n\"1298824\";\"יאנגון\";\"other\"\n\"1298824\";\"یانگون\";\"other\"\n\"1298824\";\"रंगून\";\"other\"\n\"1298824\";\"ইয়াংগুন\";\"other\"\n\"1298824\";\"ย่างกุ้ง\";\"other\"\n\"1298824\";\"ヤンゴン\";\"other\"\n\"1298824\";\"仰光\";\"other\"\n\"1298824\";\"양곤\";\"other\"\n\"1298911\";\"Pyu\";\"main\"\n\"1298987\";\"Pyinmana\";\"main\"\n\"1298987\";\"P'inmana\";\"other\"\n\"1298987\";\"Pjinmana\";\"other\"\n\"1298987\";\"Pyinmank\";\"other\"\n\"1298987\";\"Rangun\";\"other\"\n\"1298987\";\"bin ma na\";\"other\"\n\"1298987\";\"nai bi duo\";\"other\"\n\"1298987\";\"pin ma na\";\"other\"\n\"1298987\";\"pinmana\";\"other\"\n\"1298987\";\"Пьинмана\";\"other\"\n\"1298987\";\"Рангун\";\"other\"\n\"1298987\";\"ปีนมานา\";\"other\"\n\"1298987\";\"ピンマナ\";\"other\"\n\"1298987\";\"奈比多\";\"other\"\n\"1298987\";\"彬馬那\";\"other\"\n\"1298987\";\"핀마나\";\"other\"\n\"1299154\";\"Prome\";\"main\"\n\"1299154\";\"Pyay\";\"other\"\n\"1299154\";\"Pye\";\"other\"\n\"1299154\";\"Pyei\";\"other\"\n\"1299154\";\"Pyit\";\"other\"\n\"1299154\";\"Проме\";\"other\"\n\"1299237\";\"Pyapon\";\"main\"\n\"1299237\";\"P'japon\";\"other\"\n\"1299237\";\"Pyabon\";\"other\"\n\"1299237\";\"Pyabôn\";\"other\"\n\"1299237\";\"Pyapun\";\"other\"\n\"1299237\";\"Пьяпон\";\"other\"\n\"1300466\";\"Bago\";\"main\"\n\"1300466\";\"Pegu\";\"other\"\n\"1300466\";\"Пегу\";\"other\"\n\"1300969\";\"Paungde\";\"main\"\n\"1300969\";\"Paung-deh\";\"other\"\n\"1302439\";\"Pakokku\";\"main\"\n\"1302439\";\"Pagukku\";\"other\"\n\"1302439\";\"Pakkoku\";\"other\"\n\"1302439\";\"Пакокку\";\"other\"\n\"1302849\";\"Hpa-an\";\"main\"\n\"1302849\";\"Pa-an\";\"other\"\n\"1302849\";\"Pan\";\"other\"\n\"1303406\";\"Nyaunglebin\";\"main\"\n\"1307741\";\"Myitkyinā\";\"main\"\n\"1307741\";\"Myitkyina\";\"ascii\"\n\"1307741\";\"M'ichina\";\"other\"\n\"1307741\";\"Myitkyin\";\"other\"\n\"1307741\";\"Мьичина\";\"other\"\n\"1307835\";\"Myingyan\";\"main\"\n\"1307835\";\"Myingan\";\"other\"\n\"1308204\";\"Myanaung\";\"main\"\n\"1308415\";\"Mudon\";\"main\"\n\"1308464\";\"Mawlamyinegyunn\";\"main\"\n\"1308464\";\"Mawlamyainggyun\";\"other\"\n\"1308464\";\"Moulmeingyu\";\"other\"\n\"1308464\";\"Moulmeingyun\";\"other\"\n\"1308465\";\"Mawlamyine\";\"main\"\n\"1308465\";\"Mawlamyaing\";\"other\"\n\"1308465\";\"Molamyaing\";\"other\"\n\"1308465\";\"Moulmein\";\"other\"\n\"1308522\";\"Monywa\";\"main\"\n\"1308937\";\"Mogok\";\"main\"\n\"1308937\";\"Magok\";\"other\"\n\"1308937\";\"Могок\";\"other\"\n\"1309289\";\"Minbu\";\"main\"\n\"1309611\";\"Myeik\";\"main\"\n\"1309611\";\"Mergui\";\"other\"\n\"1309793\";\"Meiktila\";\"main\"\n\"1309937\";\"Maymyo\";\"main\"\n\"1309937\";\"Maymo\";\"other\"\n\"1309937\";\"Meimyu\";\"other\"\n\"1309937\";\"Memyo\";\"other\"\n\"1310120\";\"Mawlaik\";\"main\"\n\"1310362\";\"Maubin\";\"main\"\n\"1310362\";\"Ma-oo-beng\";\"other\"\n\"1310362\";\"Manbin\";\"other\"\n\"1310460\";\"Martaban\";\"main\"\n\"1310460\";\"Marteban\";\"other\"\n\"1310460\";\"Moktama\";\"other\"\n\"1310460\";\"Мартабан\";\"other\"\n\"1311874\";\"Mandalay\";\"main\"\n\"1311874\";\"Mandalaj\";\"other\"\n\"1311874\";\"Mandalay piirkond\";\"other\"\n\"1311874\";\"Mandale\";\"other\"\n\"1311874\";\"man de lei\";\"other\"\n\"1311874\";\"mandare\";\"other\"\n\"1311874\";\"Мандалай\";\"other\"\n\"1311874\";\"マンダレー\";\"other\"\n\"1311874\";\"曼德勒\";\"other\"\n\"1312609\";\"Magway\";\"main\"\n\"1312609\";\"Magueh\";\"other\"\n\"1312609\";\"Magwe\";\"other\"\n\"1312609\";\"Магуэ\";\"other\"\n\"1313479\";\"Loikaw\";\"main\"\n\"1313479\";\"Lwegaw\";\"other\"\n\"1313479\";\"Lwègaw\";\"other\"\n\"1314042\";\"Letpandan\";\"main\"\n\"1314042\";\"Letpadan\";\"other\"\n\"1314042\";\"Letpatan\";\"other\"\n\"1314759\";\"Lashio\";\"main\"\n\"1314759\";\"Lasha\";\"other\"\n\"1314759\";\"Lasho\";\"other\"\n\"1314759\";\"Лаша\";\"other\"\n\"1316703\";\"Kyaukse\";\"main\"\n\"1317375\";\"Kyaikto\";\"main\"\n\"1317397\";\"Kyaiklat\";\"main\"\n\"1317397\";\"Keiklat\";\"other\"\n\"1317402\";\"Kyaikkami\";\"main\"\n\"1317402\";\"Amherst\";\"other\"\n\"1319533\";\"Kayan\";\"main\"\n\"1320944\";\"Kanbe\";\"main\"\n\"1320944\";\"Kanhe\";\"other\"\n\"1320944\";\"Канбе\";\"other\"\n\"1325211\";\"Hinthada\";\"main\"\n\"1325211\";\"Henzada\";\"other\"\n\"1325211\";\"Hintada\";\"other\"\n\"1325443\";\"Haka\";\"main\"\n\"1326105\";\"Falam\";\"main\"\n\"1326105\";\"Palan\";\"other\"\n\"1326105\";\"Фалам\";\"other\"\n\"1327659\";\"Chauk\";\"main\"\n\"1327659\";\"Chouk\";\"other\"\n\"1327659\";\"Чаук\";\"other\"\n\"1328121\";\"Bogale\";\"main\"\n\"1328218\";\"Bhamo\";\"main\"\n\"1328218\";\"Bamo\";\"other\"\n\"1328218\";\"Banmaw\";\"other\"\n\"1328218\";\"Banmo\";\"other\"\n\"1328218\";\"Hsinkai\";\"other\"\n\"1328218\";\"Бамо\";\"other\"\n\"1328421\";\"Pathein\";\"main\"\n\"1328421\";\"Bassein\";\"other\"\n\"1328421\";\"Patejn\";\"other\"\n\"1328421\";\"Puthein\";\"other\"\n\"1328421\";\"Патейн\";\"other\"\n\"1329239\";\"Myaydo\";\"main\"\n\"1329239\";\"Allanmyo\";\"other\"\n\"1329239\";\"Aunglan\";\"other\"\n\"1329239\";\"Aunglanmyo\";\"other\"\n\"6611854\";\"Nay Pyi Taw\";\"main\"\n\"6611854\";\"Naypyidaw\";\"other\"\n\"6611854\";\"Ne Pyi Daw\";\"other\"\n\"1514961\";\"Üyönch\";\"main\"\n\"1514961\";\"Uyonch\";\"ascii\"\n\"1514961\";\"Uinchi sumu\";\"other\"\n\"1514961\";\"Uyenchi\";\"other\"\n\"1514961\";\"Uyenchi Somon\";\"other\"\n\"1514961\";\"Uyenchi Suma\";\"other\"\n\"1514961\";\"Üyenchi Suma\";\"other\"\n\"1514975\";\"Uujim\";\"main\"\n\"1514975\";\"Sagsai\";\"other\"\n\"1514975\";\"Sagsaj\";\"other\"\n\"1514975\";\"Sagsay\";\"other\"\n\"1514975\";\"Sagsaï\";\"other\"\n\"1514975\";\"Сагсай\";\"other\"\n\"1514993\";\"Urdgol\";\"main\"\n\"1514993\";\"Chandman'\";\"other\"\n\"1514993\";\"Chandmani\";\"other\"\n\"1514993\";\"Chandmanĭ\";\"other\"\n\"1514993\";\"Chandman’\";\"other\"\n\"1514993\";\"Chindamani\";\"other\"\n\"1514993\";\"Chindamani Somon\";\"other\"\n\"1514993\";\"Chindamani Suma\";\"other\"\n\"1514993\";\"Chindamani sumu\";\"other\"\n\"1515007\";\"Uliastay\";\"main\"\n\"1515007\";\"Chdzibkhalantu\";\"other\"\n\"1515007\";\"Chzhibgalantu Somon\";\"other\"\n\"1515007\";\"Chzhibkhalantu\";\"other\"\n\"1515007\";\"Chzhibkholantu sumu\";\"other\"\n\"1515007\";\"Djibkhlantu\";\"other\"\n\"1515007\";\"Djibkhulantu\";\"other\"\n\"1515007\";\"Dzhibkhalantu\";\"other\"\n\"1515007\";\"Dzhibkholantu\";\"other\"\n\"1515007\";\"Dzhibkhulantu\";\"other\"\n\"1515007\";\"Javhlant\";\"other\"\n\"1515007\";\"Jawkhlant\";\"other\"\n\"1515007\";\"Jibhalanta\";\"other\"\n\"1515007\";\"Jibhalantu\";\"other\"\n\"1515007\";\"Jibholantu\";\"other\"\n\"1515007\";\"Jibhulantu\";\"other\"\n\"1515007\";\"Jibkhalantu\";\"other\"\n\"1515007\";\"Uliassutai\";\"other\"\n\"1515007\";\"Uliastaj\";\"other\"\n\"1515007\";\"Uliyassutai\";\"other\"\n\"1515007\";\"Uljassutai\";\"other\"\n\"1515007\";\"Uljasutai\";\"other\"\n\"1515007\";\"Ulyaasatay\";\"other\"\n\"1515007\";\"Ulyasutay\";\"other\"\n\"1515007\";\"Uriyasutai\";\"other\"\n\"1515007\";\"Wu-li-ya-su-t'ai\";\"other\"\n\"1515007\";\"Wu-li-ya-su-t’ai\";\"other\"\n\"1515007\";\"Wu-lu-ya-su-t'ai\";\"other\"\n\"1515007\";\"Wu-lu-ya-su-t’ai\";\"other\"\n\"1515007\";\"Улиастай\";\"other\"\n\"1515018\";\"Ulaantolgoy\";\"main\"\n\"1515018\";\"Most\";\"other\"\n\"1515018\";\"Möst\";\"other\"\n\"1515029\";\"Ulaangom\";\"main\"\n\"1515029\";\"ULANGOM\";\"other\"\n\"1515029\";\"Ulaan Goom\";\"other\"\n\"1515029\";\"Ulaanggom\";\"other\"\n\"1515029\";\"Ulaangom sumu\";\"other\"\n\"1515029\";\"Ulan Kan\";\"other\"\n\"1515029\";\"Ulangom\";\"other\"\n\"1515029\";\"Ulankom\";\"other\"\n\"1515029\";\"Wu-lan-ku-mu\";\"other\"\n\"1515029\";\"УЛАНГОМ\";\"other\"\n\"1515029\";\"Улаангом\";\"other\"\n\"1515029\";\"Улангом\";\"other\"\n\"1515092\";\"Tsetserleg\";\"main\"\n\"1515092\";\"Ondor Hangay Suma\";\"other\"\n\"1515092\";\"Ondorhangay\";\"other\"\n\"1515092\";\"Ondorkhangai\";\"other\"\n\"1515092\";\"Öndör Hangay Suma\";\"other\"\n\"1515092\";\"Öndörhangay\";\"other\"\n\"1515092\";\"Öndörkhangaï\";\"other\"\n\"1515097\";\"Tsetsegnuur\";\"main\"\n\"1515097\";\"Tsetseg\";\"other\"\n\"1515097\";\"Tsetseg Nuur\";\"other\"\n\"1515097\";\"Tsetseg Somon\";\"other\"\n\"1515097\";\"Tsetseg Suma\";\"other\"\n\"1515097\";\"Tsetseg nuur sumu\";\"other\"\n\"1515097\";\"Tsetseg-Nur\";\"other\"\n\"1515101\";\"Tsenher\";\"main\"\n\"1515101\";\"Monhhayrhan\";\"other\"\n\"1515101\";\"Monho Hayrhan Suma\";\"other\"\n\"1515101\";\"Monho hayrhan\";\"other\"\n\"1515101\";\"Monho hayrhan sumu\";\"other\"\n\"1515101\";\"Monkhkhairkhan\";\"other\"\n\"1515101\";\"Monko Khairkhan Sume\";\"other\"\n\"1515101\";\"Munhe-hairuhan\";\"other\"\n\"1515101\";\"Munkhe-Khayrkhan-Sumu\";\"other\"\n\"1515101\";\"Munkhu Khayrkhan Somon\";\"other\"\n\"1515101\";\"Munkhu-khayrkhan\";\"other\"\n\"1515101\";\"Mönhhayrhan\";\"other\"\n\"1515101\";\"Mönhö Hayrhan Suma\";\"other\"\n\"1515101\";\"Mönhö hayrhan\";\"other\"\n\"1515101\";\"Mönhö hayrhan sumu\";\"other\"\n\"1515101\";\"Mönkhkhaïrkhan\";\"other\"\n\"1515101\";\"Mönkö Khairkhan Sume\";\"other\"\n\"1515101\";\"Tsastu Ula Somon\";\"other\"\n\"1515106\";\"Tseel\";\"main\"\n\"1515106\";\"Tseel Suma\";\"other\"\n\"1515106\";\"Tseel' Somon\";\"other\"\n\"1515106\";\"Tseel' sumu\";\"other\"\n\"1515106\";\"Tseel’ Somon\";\"other\"\n\"1515106\";\"Tseel’ sumu\";\"other\"\n\"1515106\";\"Tsel\";\"other\"\n\"1515106\";\"Tsel Sume\";\"other\"\n\"1515114\";\"Tsalgar\";\"main\"\n\"1515114\";\"MALCHIN\";\"other\"\n\"1515114\";\"Malchin\";\"other\"\n\"1515114\";\"Malchin Suma\";\"other\"\n\"1515114\";\"Malchin Sume\";\"other\"\n\"1515114\";\"Malchin somon\";\"other\"\n\"1515114\";\"Malchin sumu\";\"other\"\n\"1515114\";\"МАЛЧИН\";\"other\"\n\"1515117\";\"Tsahir\";\"main\"\n\"1515117\";\"Cakhir\";\"other\"\n\"1515117\";\"Tsahir Suma\";\"other\"\n\"1515117\";\"Tsahir sumu\";\"other\"\n\"1515117\";\"Tsakhir\";\"other\"\n\"1515117\";\"Tsakhir Sume\";\"other\"\n\"1515117\";\"Tsakhir somon\";\"other\"\n\"1515117\";\"Цахир\";\"other\"\n\"1515124\";\"Tsagaantüngi\";\"main\"\n\"1515124\";\"Tsagaantungi\";\"ascii\"\n\"1515124\";\"Altantsogts\";\"other\"\n\"1515124\";\"Altantsögts\";\"other\"\n\"1515131\";\"Tsagaan-Olom\";\"main\"\n\"1515131\";\"Taishir\";\"other\"\n\"1515131\";\"Tayshir\";\"other\"\n\"1515131\";\"Taïshir\";\"other\"\n\"1515131\";\"Tsagan Olom\";\"other\"\n\"1515131\";\"Tsagan olon\";\"other\"\n\"1515157\";\"Tsagaanchuluut\";\"main\"\n\"1515167\";\"Tosontsengel\";\"main\"\n\"1515167\";\"Shumultain khure\";\"other\"\n\"1515167\";\"Shumultuin Khure\";\"other\"\n\"1515167\";\"Shumultuyn-khure\";\"other\"\n\"1515167\";\"Shumuultayn Huryee\";\"other\"\n\"1515167\";\"Shumuultayn Hüryee\";\"other\"\n\"1515167\";\"Shumuultiin Khuree\";\"other\"\n\"1515167\";\"Shumuultiin Khüree\";\"other\"\n\"1515167\";\"Shumuultuiin huriye\";\"other\"\n\"1515167\";\"Shumuultuiin hüriye\";\"other\"\n\"1515167\";\"Shumuultuin huriye\";\"other\"\n\"1515167\";\"Shumuultuïn hüriye\";\"other\"\n\"1515167\";\"Toson Tsengel Suma\";\"other\"\n\"1515167\";\"Toson tsengel sumu\";\"other\"\n\"1515167\";\"Tosyn tsengel somon\";\"other\"\n\"1515172\";\"Tooromt\";\"main\"\n\"1515172\";\"Tes\";\"other\"\n\"1515172\";\"Tesin Suma\";\"other\"\n\"1515180\";\"Tolbo\";\"main\"\n\"1515180\";\"Tolbo Nuur Hoshuun\";\"other\"\n\"1515180\";\"Tolbo Nuur Suma\";\"other\"\n\"1515180\";\"Tolbo nuur hoshu\";\"other\"\n\"1515180\";\"Tolbo-Nur\";\"other\"\n\"1515180\";\"Tolbo-Nur-Khoshu\";\"other\"\n\"1515180\";\"Tolbo-Nur-Somon\";\"other\"\n\"1515180\";\"Tolbonuur\";\"other\"\n\"1515180\";\"Толбо\";\"other\"\n\"1515186\";\"Tögrög\";\"main\"\n\"1515186\";\"Togrog\";\"ascii\"\n\"1515186\";\"Manhan\";\"other\"\n\"1515186\";\"Manhan Suma\";\"other\"\n\"1515186\";\"Manhan sumu\";\"other\"\n\"1515186\";\"Mankhan\";\"other\"\n\"1515186\";\"Mankhan Somon\";\"other\"\n\"1515186\";\"Mankhan Sume\";\"other\"\n\"1515186\";\"Mankhan-Sumu\";\"other\"\n\"1515187\";\"Tögrög\";\"main\"\n\"1515187\";\"Togrog\";\"ascii\"\n\"1515187\";\"Togorig\";\"other\"\n\"1515187\";\"Togorig Suma\";\"other\"\n\"1515187\";\"Torog\";\"other\"\n\"1515187\";\"Tugurig\";\"other\"\n\"1515187\";\"Tugurig Sume\";\"other\"\n\"1515187\";\"Tugurig somon\";\"other\"\n\"1515187\";\"Tugurig sumu\";\"other\"\n\"1515187\";\"Tugurik\";\"other\"\n\"1515187\";\"Tugurik Somon\";\"other\"\n\"1515187\";\"Tögörig\";\"other\"\n\"1515187\";\"Tögörig Suma\";\"other\"\n\"1515187\";\"Tügürig sumu\";\"other\"\n\"1515194\";\"Tögöl\";\"main\"\n\"1515194\";\"Togol\";\"ascii\"\n\"1515194\";\"Toegoel\";\"other\"\n\"1515194\";\"Ulaan Uula Suma\";\"other\"\n\"1515194\";\"Ulaan Uula sumu\";\"other\"\n\"1515194\";\"Ulaan uula\";\"other\"\n\"1515194\";\"Ulaan-Uul\";\"other\"\n\"1515194\";\"Ulan Ula Somon\";\"other\"\n\"1515194\";\"Ulan-Ula\";\"other\"\n\"1515194\";\"Vlaa Vula\";\"other\"\n\"1515194\";\"Улан-Ула\";\"other\"\n\"1515208\";\"Tegsh\";\"main\"\n\"1515208\";\"Tsetsen-Uul\";\"other\"\n\"1515213\";\"Taygan\";\"main\"\n\"1515213\";\"Del'ger sumu\";\"other\"\n\"1515213\";\"Delger\";\"other\"\n\"1515213\";\"Delger Somon\";\"other\"\n\"1515213\";\"Delger Suma\";\"other\"\n\"1515229\";\"Talshand\";\"main\"\n\"1515229\";\"Chandmani\";\"other\"\n\"1515229\";\"Chandmanĭ\";\"other\"\n\"1515229\";\"Chindamani\";\"other\"\n\"1515229\";\"Chindamani Somon\";\"other\"\n\"1515229\";\"Chindamani Suma\";\"other\"\n\"1515247\";\"Tahilt\";\"main\"\n\"1515247\";\"Tsogt\";\"other\"\n\"1515247\";\"Tsogto Suma\";\"other\"\n\"1515247\";\"Tsogtu\";\"other\"\n\"1515247\";\"Tsogtu Somon\";\"other\"\n\"1515247\";\"Tsogtu Sumu\";\"other\"\n\"1515247\";\"Tsokt somon\";\"other\"\n\"1515303\";\"Shiree\";\"main\"\n\"1515303\";\"Tsagaan Hayrhan Suma\";\"other\"\n\"1515303\";\"Tsagaan hayrhan sumu\";\"other\"\n\"1515303\";\"Tsagaanhayrhan\";\"other\"\n\"1515303\";\"Tsagaankhairkhan\";\"other\"\n\"1515303\";\"Tsagaankhaïrkhan\";\"other\"\n\"1515303\";\"Tsagan Hayrhan\";\"other\"\n\"1515303\";\"Tsagan Khayrkhan somon\";\"other\"\n\"1515303\";\"Tsagan-Khayrkhan\";\"other\"\n\"1515329\";\"Sharga\";\"main\"\n\"1515329\";\"Tsagaan Uula Suma\";\"other\"\n\"1515329\";\"Tsagaan uula\";\"other\"\n\"1515329\";\"Tsagaan uula sumu\";\"other\"\n\"1515329\";\"Tsagaan-Uul\";\"other\"\n\"1515329\";\"Tsagan Ula Sume\";\"other\"\n\"1515329\";\"Tsagan-Ula\";\"other\"\n\"1515329\";\"Tsagan-Ula somon\";\"other\"\n\"1515331\";\"Sharga\";\"main\"\n\"1515332\";\"Sharbulag\";\"main\"\n\"1515332\";\"Dsabkhan Sume\";\"other\"\n\"1515332\";\"Dzabhan Gol\";\"other\"\n\"1515332\";\"Dzabhan Suma\";\"other\"\n\"1515332\";\"Dzabhan gol sumu\";\"other\"\n\"1515332\";\"Dzabkhan\";\"other\"\n\"1515332\";\"Dzabkhan-Gol-Sumu\";\"other\"\n\"1515332\";\"Dzavhan\";\"other\"\n\"1515332\";\"Dzawkhan\";\"other\"\n\"1515332\";\"Tszabkhan somon\";\"other\"\n\"1515332\";\"Дзабхан\";\"other\"\n\"1515367\";\"Sayn-Ust\";\"main\"\n\"1515367\";\"Hohmorit\";\"other\"\n\"1515367\";\"Hohmorĭt\";\"other\"\n\"1515367\";\"Hoho Morito Suma\";\"other\"\n\"1515367\";\"Hoho moritu\";\"other\"\n\"1515367\";\"Hoho moritu sumu\";\"other\"\n\"1515367\";\"Höhö Morito Suma\";\"other\"\n\"1515367\";\"Höhö moritu sumu\";\"other\"\n\"1515367\";\"Höhö moritü\";\"other\"\n\"1515367\";\"Khokhmor't\";\"other\"\n\"1515367\";\"Khukhu-Moritu\";\"other\"\n\"1515367\";\"Khukhu-Moritu Somon\";\"other\"\n\"1515367\";\"Koko Moritu Sume\";\"other\"\n\"1515367\";\"Kökö Möritu Sume\";\"other\"\n\"1515378\";\"Sangiyn Dalay\";\"main\"\n\"1515378\";\"Erdene\";\"other\"\n\"1515378\";\"Erdeni\";\"other\"\n\"1515378\";\"Erdeni Somon\";\"other\"\n\"1515378\";\"Erdeni Suma\";\"other\"\n\"1515378\";\"Erdeni Sume\";\"other\"\n\"1515378\";\"Erdeni sumu\";\"other\"\n\"1515392\";\"Rashaant\";\"main\"\n\"1515392\";\"Deliin\";\"other\"\n\"1515392\";\"Deluun\";\"other\"\n\"1515392\";\"Delüün\";\"other\"\n\"1515392\";\"Hoshog Suma\";\"other\"\n\"1515392\";\"Khosak Suma\";\"other\"\n\"1515392\";\"Khoshak\";\"other\"\n\"1515392\";\"Khoshak Sumu\";\"other\"\n\"1515392\";\"Khoshak somon\";\"other\"\n\"1515392\";\"Koshag Suma\";\"other\"\n\"1515402\";\"Oygon\";\"main\"\n\"1515402\";\"Tudehvtehj\";\"other\"\n\"1515402\";\"Tudentei\";\"other\"\n\"1515402\";\"Tudevtey\";\"other\"\n\"1515402\";\"Tüdenteï\";\"other\"\n\"1515402\";\"Tüdevtey\";\"other\"\n\"1515402\";\"Тудэвтэй\";\"other\"\n\"1515405\";\"Övögdiy\";\"main\"\n\"1515405\";\"Ovogdiy\";\"ascii\"\n\"1515405\";\"OEvoegdiy\";\"other\"\n\"1515405\";\"Ovgodiy\";\"other\"\n\"1515405\";\"Tehlmehn\";\"other\"\n\"1515405\";\"Tel'min sumu\";\"other\"\n\"1515405\";\"Telmen\";\"other\"\n\"1515405\";\"Telmin\";\"other\"\n\"1515405\";\"Telmin Suma\";\"other\"\n\"1515405\";\"Telmin somon\";\"other\"\n\"1515405\";\"Tel’min sumu\";\"other\"\n\"1515405\";\"Övgödiy\";\"other\"\n\"1515405\";\"Тэлмэн\";\"other\"\n\"1515416\";\"Orgil\";\"main\"\n\"1515416\";\"Dzhargalant\";\"other\"\n\"1515416\";\"Ihe jirgalantu sumu\";\"other\"\n\"1515416\";\"Ikhe Djirgalantu Sume\";\"other\"\n\"1515416\";\"Ikhe Jirgalantu\";\"other\"\n\"1515416\";\"Ikhe chzhirgalatu somon\";\"other\"\n\"1515416\";\"Ikhe-chzhirgalantu somon\";\"other\"\n\"1515416\";\"Jargalant\";\"other\"\n\"1515416\";\"Yihe Jirgalanta Suma\";\"other\"\n\"1515416\";\"Джаргалант\";\"other\"\n\"1515436\";\"Ölgiy\";\"main\"\n\"1515436\";\"OElgiy\";\"ascii\"\n\"1515436\";\"Bayan-Ulegey\";\"other\"\n\"1515436\";\"Olgii\";\"other\"\n\"1515436\";\"Ologey\";\"other\"\n\"1515436\";\"Ul'gey\";\"other\"\n\"1515436\";\"Ulegei\";\"other\"\n\"1515436\";\"Ulegey\";\"other\"\n\"1515436\";\"Ulegy\";\"other\"\n\"1515436\";\"Ulgij\";\"other\"\n\"1515436\";\"Ölögey\";\"other\"\n\"1515436\";\"Улгий\";\"other\"\n\"1515436\";\"Өлгий\";\"other\"\n\"1515454\";\"Nuga\";\"main\"\n\"1515454\";\"Dzabhan Mandal Suma\";\"other\"\n\"1515454\";\"Dzabkhan-Mandal\";\"other\"\n\"1515454\";\"Dzavhanmandal\";\"other\"\n\"1515454\";\"Dzawkhanmandal\";\"other\"\n\"1515454\";\"Дзабхан-Мандал\";\"other\"\n\"1515468\";\"Nogoonnuur\";\"main\"\n\"1515468\";\"Nogon-Nur\";\"other\"\n\"1515468\";\"Notoonnuur\";\"other\"\n\"1515468\";\"Ногон-Нур\";\"other\"\n\"1515498\";\"Naranbulag\";\"main\"\n\"1515498\";\"Naran-Bulak\";\"other\"\n\"1515498\";\"Наран-Булак\";\"other\"\n\"1515506\";\"Namir\";\"main\"\n\"1515506\";\"Omnogovi\";\"other\"\n\"1515506\";\"Omnogow'\";\"other\"\n\"1515506\";\"Omono Gobi\";\"other\"\n\"1515506\";\"Omono Gobi Suma\";\"other\"\n\"1515506\";\"Omono Gobi Sume\";\"other\"\n\"1515506\";\"Omono Gobi Sumu\";\"other\"\n\"1515506\";\"Umne-Gobi\";\"other\"\n\"1515506\";\"Umneh-Gobi\";\"other\"\n\"1515506\";\"Umun Gobi\";\"other\"\n\"1515506\";\"Umun-gobi somon\";\"other\"\n\"1515506\";\"Ömnögovĭ\";\"other\"\n\"1515506\";\"Ömnögow'\";\"other\"\n\"1515506\";\"Ömönö Gobi\";\"other\"\n\"1515506\";\"Ömönö Gobi Suma\";\"other\"\n\"1515506\";\"Ömönö Gobi Sume\";\"other\"\n\"1515506\";\"Ömönö Gobi Sumu\";\"other\"\n\"1515506\";\"Умнэ-Гоби\";\"other\"\n\"1515532\";\"Möndööhöö\";\"main\"\n\"1515532\";\"Mondoohoo\";\"ascii\"\n\"1515532\";\"Tsagaanhayrhan\";\"other\"\n\"1515532\";\"Tsagaankhairkhan\";\"other\"\n\"1515532\";\"Tsagaankhaïrkhan\";\"other\"\n\"1515549\";\"Mandal\";\"main\"\n\"1515549\";\"Ar-Bulak\";\"other\"\n\"1515549\";\"Ara Bulag Suma\";\"other\"\n\"1515549\";\"Ara Buluk Sume\";\"other\"\n\"1515549\";\"Ara bulag sumu\";\"other\"\n\"1515549\";\"Ara-Bulag\";\"other\"\n\"1515549\";\"Ara-Bulak Somon\";\"other\"\n\"1515549\";\"Arbulag\";\"other\"\n\"1515549\";\"Ар-Булак\";\"other\"\n\"1515577\";\"Jargalant\";\"main\"\n\"1515577\";\"Dzun-Khangaj\";\"other\"\n\"1515577\";\"Dzuun Hangay Suma\";\"other\"\n\"1515577\";\"Dzuunhangay\";\"other\"\n\"1515577\";\"Dzuunkhangai\";\"other\"\n\"1515577\";\"Dzüün Hangay Suma\";\"other\"\n\"1515577\";\"Dzüünhangay\";\"other\"\n\"1515577\";\"Dzüünkhangaï\";\"other\"\n\"1515577\";\"Дзун-Хангай\";\"other\"\n\"1515578\";\"Jargalant\";\"main\"\n\"1515579\";\"Jargalant\";\"main\"\n\"1515579\";\"Bulagan Suma\";\"other\"\n\"1515579\";\"Bulgan\";\"other\"\n\"1515580\";\"Jargalant\";\"main\"\n\"1515580\";\"Beger\";\"other\"\n\"1515580\";\"Beger Somon\";\"other\"\n\"1515580\";\"Biger\";\"other\"\n\"1515580\";\"Biger Suma\";\"other\"\n\"1515580\";\"Bigger\";\"other\"\n\"1515580\";\"Bigger sumu\";\"other\"\n\"1515621\";\"Ider\";\"main\"\n\"1515621\";\"Galt\";\"other\"\n\"1515621\";\"Галт\";\"other\"\n\"1515659\";\"Hunt\";\"main\"\n\"1515659\";\"Hangai\";\"other\"\n\"1515659\";\"Hangay\";\"other\"\n\"1515659\";\"Hangay Suma\";\"other\"\n\"1515659\";\"Hangay sumu\";\"other\"\n\"1515659\";\"Khangai\";\"other\"\n\"1515659\";\"Khangai Sume\";\"other\"\n\"1515659\";\"Khangay\";\"other\"\n\"1515659\";\"Khangay Somon\";\"other\"\n\"1515662\";\"Hungiy\";\"main\"\n\"1515662\";\"Urgamal\";\"other\"\n\"1515662\";\"Urgamal Suma\";\"other\"\n\"1515662\";\"Urgomal\";\"other\"\n\"1515662\";\"Urgomal somon\";\"other\"\n\"1515662\";\"Urgomal sumu\";\"other\"\n\"1515662\";\"Urgumal\";\"other\"\n\"1515662\";\"Urgumal Sume\";\"other\"\n\"1515662\";\"Ürgomal sumu\";\"other\"\n\"1515662\";\"Ургамал\";\"other\"\n\"1515694\";\"Höviyn Am\";\"main\"\n\"1515694\";\"Hoeviyn Am\";\"ascii\"\n\"1515694\";\"Gurban Bulag Suma\";\"other\"\n\"1515694\";\"Gurban Bulak\";\"other\"\n\"1515694\";\"Gurban Bulak Somon\";\"other\"\n\"1515694\";\"Gurban Buluk Sume\";\"other\"\n\"1515694\";\"Gurban bulag\";\"other\"\n\"1515694\";\"Gurban bulag sumu\";\"other\"\n\"1515694\";\"Gurvan-Bulak\";\"other\"\n\"1515694\";\"Gurvanbulag\";\"other\"\n\"1515694\";\"Gurwanbulag\";\"other\"\n\"1515704\";\"Höshööt\";\"main\"\n\"1515704\";\"Hoshoot\";\"ascii\"\n\"1515704\";\"Tsengel\";\"other\"\n\"1515704\";\"Tsengel Suma\";\"other\"\n\"1515704\";\"Tsengel' somon\";\"other\"\n\"1515736\";\"Holboo\";\"main\"\n\"1515736\";\"Saidamargatsa\";\"other\"\n\"1515736\";\"Sandamargatsa\";\"other\"\n\"1515736\";\"Sandamargatsa Suma\";\"other\"\n\"1515736\";\"Sandamargatsa somon\";\"other\"\n\"1515736\";\"Sandamargatsa sumu\";\"other\"\n\"1515736\";\"Santa-margats somon\";\"other\"\n\"1515736\";\"Santmargac\";\"other\"\n\"1515736\";\"Santmargats\";\"other\"\n\"1515736\";\"Сантмаргац\";\"other\"\n\"1515741\";\"Höhtolgoy\";\"main\"\n\"1515741\";\"Hohtolgoy\";\"ascii\"\n\"1515741\";\"Hobdo Gol Suma\";\"other\"\n\"1515741\";\"Hovd\";\"other\"\n\"1515741\";\"Khowd\";\"other\"\n\"1515762\";\"Hödrögö\";\"main\"\n\"1515762\";\"Hodrogo\";\"ascii\"\n\"1515762\";\"Nomorge\";\"other\"\n\"1515762\";\"Nomorgo Suma\";\"other\"\n\"1515762\";\"Nomrog\";\"other\"\n\"1515762\";\"Numerge\";\"other\"\n\"1515762\";\"Numurge\";\"other\"\n\"1515762\";\"Numurge somon\";\"other\"\n\"1515762\";\"Numurge-sumu\";\"other\"\n\"1515762\";\"Nömrög\";\"other\"\n\"1515762\";\"Nömörge\";\"other\"\n\"1515762\";\"Nömörgö Suma\";\"other\"\n\"1515787\";\"Havtsal\";\"main\"\n\"1515787\";\"Turgehn\";\"other\"\n\"1515787\";\"Turgen\";\"other\"\n\"1515787\";\"Türgen\";\"other\"\n\"1515787\";\"Тургэн\";\"other\"\n\"1515806\";\"Har-Us\";\"main\"\n\"1515806\";\"Olgii\";\"other\"\n\"1515806\";\"Olgiy\";\"other\"\n\"1515806\";\"Ulgij\";\"other\"\n\"1515806\";\"Ölgiy\";\"other\"\n\"1515806\";\"Ölgiï\";\"other\"\n\"1515806\";\"Улгий\";\"other\"\n\"1515807\";\"Har-Us\";\"main\"\n\"1515807\";\"Erdeneburen\";\"other\"\n\"1515807\";\"Erdenebüren\";\"other\"\n\"1515807\";\"Erdeni Burin Suma\";\"other\"\n\"1515807\";\"Erdeni Bürin Suma\";\"other\"\n\"1515832\";\"Harmod\";\"main\"\n\"1515832\";\"Sagil\";\"other\"\n\"1515832\";\"Sagli\";\"other\"\n\"1515832\";\"Sagli Suma\";\"other\"\n\"1515832\";\"Sagli Sume\";\"other\"\n\"1515832\";\"Sagli sumu\";\"other\"\n\"1515832\";\"Sagliin somon\";\"other\"\n\"1515832\";\"Сагил\";\"other\"\n\"1515838\";\"Harhiraa\";\"main\"\n\"1515838\";\"Tarialan\";\"other\"\n\"1515838\";\"Tarjalan\";\"other\"\n\"1515838\";\"Taryaalang Suma\";\"other\"\n\"1515838\";\"Тарялан\";\"other\"\n\"1515878\";\"Haliun\";\"main\"\n\"1515878\";\"Halium\";\"other\"\n\"1515878\";\"Khaliun\";\"other\"\n\"1515882\";\"Halban\";\"main\"\n\"1515882\";\"Tsetserleg\";\"other\"\n\"1515882\";\"Tsetserlig\";\"other\"\n\"1515882\";\"Tsetserlig Suma\";\"other\"\n\"1515882\";\"Tsetserlig somon\";\"other\"\n\"1515882\";\"Tsetserlig sumu\";\"other\"\n\"1515882\";\"Tsetserlik Sumu\";\"other\"\n\"1515882\";\"Tsetserlik somon\";\"other\"\n\"1515957\";\"Erdenet\";\"main\"\n\"1515957\";\"Shine-Ider\";\"other\"\n\"1515957\";\"Shineh-Idehr\";\"other\"\n\"1515957\";\"Шинэ-Идэр\";\"other\"\n\"1515979\";\"Dzüyl\";\"main\"\n\"1515979\";\"Dzuyl\";\"ascii\"\n\"1515979\";\"Tonhil\";\"other\"\n\"1515979\";\"Tonhil Suma\";\"other\"\n\"1515979\";\"Tonhil Sumu\";\"other\"\n\"1515979\";\"Tonkhil\";\"other\"\n\"1515979\";\"Tonkhil Somon\";\"other\"\n\"1515986\";\"Dzuunmod\";\"main\"\n\"1515986\";\"Idehr\";\"other\"\n\"1515986\";\"Ider\";\"other\"\n\"1515986\";\"Ider tsetserlig somon\";\"other\"\n\"1515986\";\"Ider'iin sumu\";\"other\"\n\"1515986\";\"Ider-tsetserleg\";\"other\"\n\"1515986\";\"Ideriin Horshoo\";\"other\"\n\"1515986\";\"Ideriin khorsho\";\"other\"\n\"1515986\";\"Iderin Sume\";\"other\"\n\"1515986\";\"Идэр\";\"other\"\n\"1515989\";\"Dzüünhövöö\";\"main\"\n\"1515989\";\"Dzuunhovoo\";\"ascii\"\n\"1515989\";\"Dabasata Suma\";\"other\"\n\"1515989\";\"Dabustu uula sumu\";\"other\"\n\"1515989\";\"Dabusutu somon\";\"other\"\n\"1515989\";\"Dabusutu uula\";\"other\"\n\"1515989\";\"Davst\";\"other\"\n\"1515989\";\"Dawst\";\"other\"\n\"1515989\";\"Dzueuenhoevoeoe\";\"other\"\n\"1515989\";\"Давст\";\"other\"\n\"1515996\";\"Dzür\";\"main\"\n\"1515996\";\"Dzuer\";\"ascii\"\n\"1515996\";\"Tes\";\"other\"\n\"1515999\";\"Dzöölön\";\"main\"\n\"1515999\";\"Dzoolon\";\"ascii\"\n\"1515999\";\"Dzoeoeloen\";\"other\"\n\"1515999\";\"Rehnchin-Lkhumbeh\";\"other\"\n\"1515999\";\"Rinchin Lhumbu\";\"other\"\n\"1515999\";\"Rinchin Lhumbu sumu\";\"other\"\n\"1515999\";\"Rinchin Lumbe Suma\";\"other\"\n\"1515999\";\"Rinchin Lumbe Sumu\";\"other\"\n\"1515999\";\"Rinchin Lümbe Suma\";\"other\"\n\"1515999\";\"Rinchin Lümbe Sumu\";\"other\"\n\"1515999\";\"Rinchin Sume\";\"other\"\n\"1515999\";\"Rinchin-Lkhumbu\";\"other\"\n\"1515999\";\"Rinchin-Lkhumbu somon\";\"other\"\n\"1515999\";\"Rinchinlhumbe\";\"other\"\n\"1515999\";\"Rinchinlhümbe\";\"other\"\n\"1515999\";\"Rinchinlkhumbe\";\"other\"\n\"1515999\";\"Rinchinlkhümbe\";\"other\"\n\"1515999\";\"Рэнчин-Лхумбэ\";\"other\"\n\"1516004\";\"Dzel\";\"main\"\n\"1516004\";\"Dzun-Gobi\";\"other\"\n\"1516004\";\"Dzuun Gobi Suma\";\"other\"\n\"1516004\";\"Dzuungovi\";\"other\"\n\"1516004\";\"Dzuungow\";\"other\"\n\"1516004\";\"Dzüün Gobi Suma\";\"other\"\n\"1516004\";\"Dzüüngovĭ\";\"other\"\n\"1516004\";\"Dzüüngow\";\"other\"\n\"1516004\";\"Дзун-Гоби\";\"other\"\n\"1516023\";\"Dzalaa\";\"main\"\n\"1516023\";\"Shinejinst\";\"other\"\n\"1516036\";\"Dzag\";\"main\"\n\"1516036\";\"Dsag Baidarag\";\"other\"\n\"1516036\";\"Dzag Gol Suma\";\"other\"\n\"1516036\";\"Dzag Suma\";\"other\"\n\"1516036\";\"Dzag gol\";\"other\"\n\"1516036\";\"Dzag gol sumu\";\"other\"\n\"1516036\";\"Dzag-Baydarag\";\"other\"\n\"1516036\";\"Dzak\";\"other\"\n\"1516036\";\"Tszag\";\"other\"\n\"1516036\";\"Tszag Somon\";\"other\"\n\"1516036\";\"Zaku goru\";\"other\"\n\"1516037\";\"Dzadgay\";\"main\"\n\"1516037\";\"Bomboger sumu\";\"other\"\n\"1516037\";\"Bombogor\";\"other\"\n\"1516037\";\"Bombogor Suma\";\"other\"\n\"1516037\";\"Bumbeger somon\";\"other\"\n\"1516037\";\"Bumbuger\";\"other\"\n\"1516037\";\"Bumbuger Somon\";\"other\"\n\"1516037\";\"Bumbugeri\";\"other\"\n\"1516037\";\"Bömböger sumu\";\"other\"\n\"1516037\";\"Bömbögör\";\"other\"\n\"1516037\";\"Bömbögör Suma\";\"other\"\n\"1516040\";\"Duut\";\"main\"\n\"1516048\";\"Hovd\";\"main\"\n\"1516048\";\"Chirgalantu\";\"other\"\n\"1516048\";\"Chzhirgalantu\";\"other\"\n\"1516048\";\"Djirgalantu\";\"other\"\n\"1516048\";\"Dund-Us\";\"other\"\n\"1516048\";\"Dzhaghalantu\";\"other\"\n\"1516048\";\"Dzhargalantu\";\"other\"\n\"1516048\";\"Dzhirgalantu\";\"other\"\n\"1516048\";\"Hobdo\";\"other\"\n\"1516048\";\"Hobdo Gol\";\"other\"\n\"1516048\";\"Jargalant\";\"other\"\n\"1516048\";\"Jirgalanta\";\"other\"\n\"1516048\";\"Jirgalantu\";\"other\"\n\"1516048\";\"K'o-pu-to\";\"other\"\n\"1516048\";\"Khobdo\";\"other\"\n\"1516048\";\"Khovd\";\"other\"\n\"1516048\";\"Kobdo\";\"other\"\n\"1516048\";\"K’o-pu-to\";\"other\"\n\"1516048\";\"Кобдо\";\"other\"\n\"1516048\";\"Ховд\";\"other\"\n\"1516069\";\"Tsagaannuur\";\"main\"\n\"1516069\";\"Cagan-Nur\";\"other\"\n\"1516069\";\"Dood-Nuur\";\"other\"\n\"1516069\";\"Tsagan-Nur\";\"other\"\n\"1516069\";\"Цаган-Нур\";\"other\"\n\"1516082\";\"Delgermörön\";\"main\"\n\"1516082\";\"Delgermoron\";\"ascii\"\n\"1516082\";\"Hureemaral\";\"other\"\n\"1516082\";\"Khureemaral\";\"other\"\n\"1516082\";\"Khüreemaral\";\"other\"\n\"1516099\";\"Darvi\";\"main\"\n\"1516099\";\"Darbi\";\"other\"\n\"1516099\";\"Darbi Suma\";\"other\"\n\"1516099\";\"Darbi Sume\";\"other\"\n\"1516099\";\"Darbi sumu\";\"other\"\n\"1516099\";\"Daribi Somon\";\"other\"\n\"1516099\";\"Dariv\";\"other\"\n\"1516099\";\"Darwi\";\"other\"\n\"1516125\";\"Chihertey\";\"main\"\n\"1516125\";\"Altai\";\"other\"\n\"1516125\";\"Altaj\";\"other\"\n\"1516125\";\"Altay\";\"other\"\n\"1516125\";\"Altaï\";\"other\"\n\"1516125\";\"Алтай\";\"other\"\n\"1516136\";\"Chandmanĭ\";\"main\"\n\"1516136\";\"Chandmani\";\"ascii\"\n\"1516136\";\"Chandman'\";\"other\"\n\"1516136\";\"Chandman’\";\"other\"\n\"1516136\";\"Chindamani Oldzeyte Suma\";\"other\"\n\"1516136\";\"Chindamani Oldzeytu\";\"other\"\n\"1516136\";\"Chindamani Ul'dzeytu sumu\";\"other\"\n\"1516136\";\"Chindamani Ul’dzeytu sumu\";\"other\"\n\"1516136\";\"Chindamani Öldzeyte Suma\";\"other\"\n\"1516136\";\"Chindamani Öldzeytu\";\"other\"\n\"1516136\";\"Chindimani ultszeitu somon\";\"other\"\n\"1516143\";\"Buyant\";\"main\"\n\"1516143\";\"Bujant\";\"other\"\n\"1516143\";\"Буянт\";\"other\"\n\"1516144\";\"Buyant\";\"main\"\n\"1516146\";\"Buyant\";\"main\"\n\"1516146\";\"Odhan Hayrhan\";\"other\"\n\"1516146\";\"Odhon Hayrhan Suma\";\"other\"\n\"1516146\";\"Odkhan Khairkhan\";\"other\"\n\"1516146\";\"Odkhan Khayrkhan Somon\";\"other\"\n\"1516146\";\"Otgon\";\"other\"\n\"1516146\";\"Otgon-khayrkhan\";\"other\"\n\"1516146\";\"Othan\";\"other\"\n\"1516146\";\"Othan sumu\";\"other\"\n\"1516147\";\"Buyant\";\"main\"\n\"1516147\";\"Buutsagaan\";\"other\"\n\"1516147\";\"Buyanta Tsagaan Gol Suma\";\"other\"\n\"1516147\";\"Buyantu Tsagan Gol Somon\";\"other\"\n\"1516147\";\"Buyantu Tsagan gol Sumu\";\"other\"\n\"1516147\";\"Buyantu tsagaan gol\";\"other\"\n\"1516147\";\"Buyantu-Tsagan-Gol\";\"other\"\n\"1516148\";\"Buyanbat\";\"main\"\n\"1516148\";\"Chzhibgalantu Somon\";\"other\"\n\"1516148\";\"Chzhirgalantu Somon\";\"other\"\n\"1516148\";\"Dzhargalant\";\"other\"\n\"1516148\";\"Dzhirgalang\";\"other\"\n\"1516148\";\"Dzhirgalant somon\";\"other\"\n\"1516148\";\"Dzhirgalantu-Sumu\";\"other\"\n\"1516148\";\"Jargalan\";\"other\"\n\"1516148\";\"Jirgalang\";\"other\"\n\"1516148\";\"Jirgalang Suma\";\"other\"\n\"1516148\";\"Jirgalang sumu\";\"other\"\n\"1516148\";\"Jirgalanta\";\"other\"\n\"1516148\";\"Jirgalanta Suma\";\"other\"\n\"1516173\";\"Bürenhayrhan\";\"main\"\n\"1516173\";\"Burenhayrhan\";\"ascii\"\n\"1516173\";\"Buergenkhe\";\"other\"\n\"1516173\";\"Bulagan\";\"other\"\n\"1516173\";\"Bulagan Gol Suma\";\"other\"\n\"1516173\";\"Bulagan Somon\";\"other\"\n\"1516173\";\"Bulagan gol sumu\";\"other\"\n\"1516173\";\"Bulagan-gol\";\"other\"\n\"1516173\";\"Bulgan\";\"other\"\n\"1516173\";\"Bulgan-Gol\";\"other\"\n\"1516173\";\"Pu-erh-ken\";\"other\"\n\"1516173\";\"T'u-ku-te-su-mu\";\"other\"\n\"1516173\";\"Torgut Somon\";\"other\"\n\"1516173\";\"Torgutin Khure\";\"other\"\n\"1516173\";\"T’u-ku-te-su-mu\";\"other\"\n\"1516186\";\"Bulgan\";\"main\"\n\"1516186\";\"Darbi\";\"other\"\n\"1516186\";\"Darbi Somon\";\"other\"\n\"1516186\";\"Darbi Suma\";\"other\"\n\"1516186\";\"Darbi Sume\";\"other\"\n\"1516186\";\"Darbi sumu\";\"other\"\n\"1516186\";\"Darvi\";\"other\"\n\"1516186\";\"Darwi\";\"other\"\n\"1516186\";\"Derubi\";\"other\"\n\"1516187\";\"Bulgan\";\"main\"\n\"1516187\";\"Bayan Ondor Suma\";\"other\"\n\"1516187\";\"Bayan Undur Somon\";\"other\"\n\"1516187\";\"Bayan Undur Sume\";\"other\"\n\"1516187\";\"Bayan undur sumu\";\"other\"\n\"1516187\";\"Bayan Öndör Suma\";\"other\"\n\"1516187\";\"Bayan-Ondor\";\"other\"\n\"1516187\";\"Bayan-Undur\";\"other\"\n\"1516187\";\"Bayan-Öndör\";\"other\"\n\"1516196\";\"Bugat\";\"main\"\n\"1516196\";\"Hirgis\";\"other\"\n\"1516196\";\"Hirgis Suma\";\"other\"\n\"1516196\";\"Hirgis sumu\";\"other\"\n\"1516196\";\"Hyargas\";\"other\"\n\"1516196\";\"Khirgis\";\"other\"\n\"1516196\";\"Khirgis somon\";\"other\"\n\"1516196\";\"Khjargas\";\"other\"\n\"1516196\";\"Khyargas\";\"other\"\n\"1516196\";\"Kirgis Sume\";\"other\"\n\"1516196\";\"Хяргас\";\"other\"\n\"1516198\";\"Buga\";\"main\"\n\"1516198\";\"Bugat\";\"other\"\n\"1516198\";\"Бугат\";\"other\"\n\"1516199\";\"Buga\";\"main\"\n\"1516199\";\"Dorvoljin\";\"other\"\n\"1516205\";\"Bor-Üdzüür\";\"main\"\n\"1516205\";\"Bor-Udzuur\";\"ascii\"\n\"1516205\";\"Altai\";\"other\"\n\"1516205\";\"Altay\";\"other\"\n\"1516205\";\"Altay Somon\";\"other\"\n\"1516205\";\"Altay Suma\";\"other\"\n\"1516205\";\"Altay sumu\";\"other\"\n\"1516240\";\"Bilüü\";\"main\"\n\"1516240\";\"Biluu\";\"ascii\"\n\"1516240\";\"Bilueue\";\"other\"\n\"1516240\";\"Ulaan Husa\";\"other\"\n\"1516240\";\"Ulaan Husa Suma\";\"other\"\n\"1516240\";\"Ulaan husu\";\"other\"\n\"1516240\";\"Ulaan-Hushu\";\"other\"\n\"1516240\";\"Ulaanhus\";\"other\"\n\"1516240\";\"Ulaanhust\";\"other\"\n\"1516240\";\"Ulaankhus\";\"other\"\n\"1516240\";\"Ulan Khusu\";\"other\"\n\"1516240\";\"Ulan husu\";\"other\"\n\"1516240\";\"Ulan-Khus\";\"other\"\n\"1516240\";\"Ulan-Us-Khushu\";\"other\"\n\"1516240\";\"Ulan-Usu\";\"other\"\n\"1516240\";\"Ulan-khusu somon\";\"other\"\n\"1516240\";\"Wu-lan-wu-su\";\"other\"\n\"1516240\";\"Улан-Хус\";\"other\"\n\"1516257\";\"Bayshint\";\"main\"\n\"1516257\";\"Bohmoron\";\"other\"\n\"1516257\";\"Bokhmoron\";\"other\"\n\"1516257\";\"Buhey Moron Suma\";\"other\"\n\"1516257\";\"Böhmörön\";\"other\"\n\"1516257\";\"Bökhmörön\";\"other\"\n\"1516257\";\"Bühey Mörön Suma\";\"other\"\n\"1516267\";\"Bayan-Uhaa\";\"main\"\n\"1516267\";\"Ih-Uul\";\"other\"\n\"1516267\";\"Ihe ula sumu\";\"other\"\n\"1516267\";\"Ikh-Uul\";\"other\"\n\"1516267\";\"Ikhe Ula\";\"other\"\n\"1516267\";\"Ikhe Ula Sume\";\"other\"\n\"1516267\";\"Ikhe ula somon\";\"other\"\n\"1516267\";\"Yeke Uula camp\";\"other\"\n\"1516267\";\"Yihe Uula Suma\";\"other\"\n\"1516272\";\"Bayansayr\";\"main\"\n\"1516272\";\"Baatsagaan\";\"other\"\n\"1516272\";\"Tsagaan Gol Suma\";\"other\"\n\"1516272\";\"Tsagan Gol\";\"other\"\n\"1516272\";\"Tsagan gol Somon\";\"other\"\n\"1516274\";\"Bayan-Ovoo\";\"main\"\n\"1516274\";\"Altay\";\"other\"\n\"1516288\";\"Bayanhoshuu\";\"main\"\n\"1516288\";\"Bayanhushuu\";\"other\"\n\"1516288\";\"Mingat Suma\";\"other\"\n\"1516288\";\"Mjangad\";\"other\"\n\"1516288\";\"Myangad\";\"other\"\n\"1516288\";\"Мянгад\";\"other\"\n\"1516296\";\"Bayangol\";\"main\"\n\"1516296\";\"Bugat\";\"other\"\n\"1516305\";\"Bayanbulag\";\"main\"\n\"1516305\";\"Bayan Bulag Suma\";\"other\"\n\"1516305\";\"Bayan Bulak\";\"other\"\n\"1516305\";\"Bayan Bulak Somon\";\"other\"\n\"1516305\";\"Bayan bulag sumu\";\"other\"\n\"1516306\";\"Bayanbulag\";\"main\"\n\"1516306\";\"Bayan Tsagaan Suma\";\"other\"\n\"1516306\";\"Bayan Tsagan\";\"other\"\n\"1516306\";\"Bayan Tsagan Somon\";\"other\"\n\"1516306\";\"Bayantsagaan\";\"other\"\n\"1516308\";\"Bayan\";\"main\"\n\"1516308\";\"Burentogtoh\";\"other\"\n\"1516308\";\"Burentogtokh\";\"other\"\n\"1516308\";\"Burin Togtahu\";\"other\"\n\"1516308\";\"Burin Togtoho Suma\";\"other\"\n\"1516308\";\"Burin Tohtahu sumu\";\"other\"\n\"1516308\";\"Burin togtakhu somon\";\"other\"\n\"1516308\";\"Burin-Tokhtakhu\";\"other\"\n\"1516308\";\"Bürentogtoh\";\"other\"\n\"1516308\";\"Bürentogtokh\";\"other\"\n\"1516308\";\"Bürin Togtahu\";\"other\"\n\"1516308\";\"Bürin Togtoho Suma\";\"other\"\n\"1516309\";\"Bayan\";\"main\"\n\"1516309\";\"Bayan Ula Somon\";\"other\"\n\"1516309\";\"Bayan Uula Suma\";\"other\"\n\"1516309\";\"Bayan uula\";\"other\"\n\"1516309\";\"Bayan uula sumu\";\"other\"\n\"1516309\";\"Bayan-Ula\";\"other\"\n\"1516309\";\"Bayan-Uul\";\"other\"\n\"1516313\";\"Baruunturuun\";\"main\"\n\"1516313\";\"Barun-Turun\";\"other\"\n\"1516313\";\"Turin Golin Sume\";\"other\"\n\"1516313\";\"Turun\";\"other\"\n\"1516313\";\"Turun somon\";\"other\"\n\"1516313\";\"Turun-Gol\";\"other\"\n\"1516313\";\"Turun-Gol-Somon\";\"other\"\n\"1516313\";\"Turuun Suma\";\"other\"\n\"1516313\";\"Turuun gol\";\"other\"\n\"1516313\";\"Turuun gol sumu\";\"other\"\n\"1516313\";\"Türüün Suma\";\"other\"\n\"1516313\";\"Türüün gol\";\"other\"\n\"1516313\";\"Türüün gol sumu\";\"other\"\n\"1516313\";\"Барун-Турун\";\"other\"\n\"1516329\";\"Balgatay\";\"main\"\n\"1516329\";\"Shilusutu\";\"other\"\n\"1516329\";\"Shilusutu Sume\";\"other\"\n\"1516329\";\"Shiluustei\";\"other\"\n\"1516329\";\"Shiluustey\";\"other\"\n\"1516329\";\"Shiluusutu\";\"other\"\n\"1516329\";\"Shiluusutu sumu\";\"other\"\n\"1516329\";\"Shiluusütü\";\"other\"\n\"1516329\";\"Shilüüstey\";\"other\"\n\"1516329\";\"Shilüüsteï\";\"other\"\n\"1516329\";\"Shirusuto\";\"other\"\n\"1516329\";\"Shulusete\";\"other\"\n\"1516329\";\"Shulusutu-Somon\";\"other\"\n\"1516329\";\"Shuluusete Suma\";\"other\"\n\"1516329\";\"Shulyusut\";\"other\"\n\"1516329\";\"Shulyusutu Somon\";\"other\"\n\"1516329\";\"Shülüsete\";\"other\"\n\"1516329\";\"Shülüüsete Suma\";\"other\"\n\"1516389\";\"Altraga\";\"main\"\n\"1516389\";\"Bajan-Dzurkh\";\"other\"\n\"1516389\";\"Bayan Dzurihe Suma\";\"other\"\n\"1516389\";\"Bayan Dzürihe Suma\";\"other\"\n\"1516389\";\"Bayandzurh\";\"other\"\n\"1516389\";\"Bayandzurkh\";\"other\"\n\"1516389\";\"Bayandzürh\";\"other\"\n\"1516389\";\"Bayandzürkh\";\"other\"\n\"1516389\";\"Баян-Дзурх\";\"other\"\n\"1516392\";\"Altay\";\"main\"\n\"1516392\";\"Bajan-Ula\";\"other\"\n\"1516392\";\"Bayan Uula\";\"other\"\n\"1516392\";\"Bayan-Ula\";\"other\"\n\"1516392\";\"Bayan-Ula somon\";\"other\"\n\"1516392\";\"Bayan-Ula sumu\";\"other\"\n\"1516392\";\"Bayan-Uul\";\"other\"\n\"1516392\";\"Bayantes\";\"other\"\n\"1516392\";\"Баян-Ула\";\"other\"\n\"1516393\";\"Altai\";\"main\"\n\"1516393\";\"Altaj\";\"other\"\n\"1516393\";\"Altay\";\"other\"\n\"1516393\";\"Jusenbulag\";\"other\"\n\"1516393\";\"Usan Bulag\";\"other\"\n\"1516393\";\"Yosonbulag\";\"other\"\n\"1516393\";\"Yusun-bulak\";\"other\"\n\"1516393\";\"Yösönbulag\";\"other\"\n\"1516393\";\"Алтай\";\"other\"\n\"1516395\";\"Altanteel\";\"main\"\n\"1516395\";\"Altan Teeli Somon\";\"other\"\n\"1516395\";\"Altan Teeli Suma\";\"other\"\n\"1516395\";\"Altan Teeli Sumu\";\"other\"\n\"1516395\";\"Altan Teli Sume\";\"other\"\n\"1516395\";\"Altan teeli\";\"other\"\n\"1516395\";\"Altan-Tel\";\"other\"\n\"1516395\";\"Altan-Teli\";\"other\"\n\"1516395\";\"Arutan teri\";\"other\"\n\"1516395\";\"Dzereg\";\"other\"\n\"1516399\";\"Altanbulag\";\"main\"\n\"1516399\";\"Bajan-Khajrkhan\";\"other\"\n\"1516399\";\"Bayan Hayrhan Suma\";\"other\"\n\"1516399\";\"Bayan Khairkhan\";\"other\"\n\"1516399\";\"Bayan Khairkhan Sume\";\"other\"\n\"1516399\";\"Bayan hayrhan sumu\";\"other\"\n\"1516399\";\"Bayan khayran somon\";\"other\"\n\"1516399\";\"Bayan-Khayrkhan\";\"other\"\n\"1516399\";\"Bayanhayrhan\";\"other\"\n\"1516399\";\"Баян-Хайрхан\";\"other\"\n\"1516400\";\"Altan\";\"main\"\n\"1516400\";\"Erdenehayrhan\";\"other\"\n\"1516400\";\"Erdenekhairkhan\";\"other\"\n\"1516400\";\"Erdenekhaïrkhan\";\"other\"\n\"1516403\";\"Aldar\";\"main\"\n\"1516403\";\"A-lo-te-erh\";\"other\"\n\"1516403\";\"Aldar Haan Suma\";\"other\"\n\"1516403\";\"Aldar Khan Somon\";\"other\"\n\"1516403\";\"Aldar han\";\"other\"\n\"1516403\";\"Aldarhaan\";\"other\"\n\"1516403\";\"Aldarhan sumu\";\"other\"\n\"1516403\";\"Aldarkhaan\";\"other\"\n\"1516403\";\"Aldarkhan\";\"other\"\n\"1516403\";\"Aldir\";\"other\"\n\"1516403\";\"Aldyr\";\"other\"\n\"1516403\";\"Arudiru\";\"other\"\n\"1516403\";\"Arudïru\";\"other\"\n\"1538308\";\"Horgo\";\"main\"\n\"1538308\";\"Tariat\";\"other\"\n\"1538308\";\"Tarjat\";\"other\"\n\"1538308\";\"Тарят\";\"other\"\n\"2028252\";\"Üydzen\";\"main\"\n\"2028252\";\"UEydzen\";\"ascii\"\n\"2028252\";\"Manlai\";\"other\"\n\"2028252\";\"Manlai-Somon\";\"other\"\n\"2028252\";\"Manlay\";\"other\"\n\"2028252\";\"Manlay Somon\";\"other\"\n\"2028252\";\"Manlay Suma\";\"other\"\n\"2028252\";\"Manlay sumu\";\"other\"\n\"2028252\";\"Manlaï\";\"other\"\n\"2028252\";\"Manrai\";\"other\"\n\"2028252\";\"UEydzin\";\"other\"\n\"2028252\";\"Üydzin\";\"other\"\n\"2028287\";\"Uubulan\";\"main\"\n\"2028287\";\"Hayrhan\";\"other\"\n\"2028287\";\"Hayrhan Suma\";\"other\"\n\"2028287\";\"Hayrhan sumu\";\"other\"\n\"2028287\";\"Khairkhan\";\"other\"\n\"2028287\";\"Khajrkhan\";\"other\"\n\"2028287\";\"Khayrkhan\";\"other\"\n\"2028287\";\"Khayrkhan somon\";\"other\"\n\"2028287\";\"Khaïrkhan\";\"other\"\n\"2028287\";\"Хайрхан\";\"other\"\n\"2028313\";\"Urt\";\"main\"\n\"2028313\";\"Gurvantes\";\"other\"\n\"2028351\";\"Uldz\";\"main\"\n\"2028351\";\"Norbolin\";\"other\"\n\"2028351\";\"Norovlin\";\"other\"\n\"2028351\";\"Norowlin\";\"other\"\n\"2028351\";\"Norvulin\";\"other\"\n\"2028351\";\"Улдз\";\"other\"\n\"2028357\";\"Ulaan-Uul\";\"main\"\n\"2028357\";\"Barun Ul'dzeytu Sumu\";\"other\"\n\"2028357\";\"Barun Ultszeytu Somon\";\"other\"\n\"2028357\";\"Baruun Oldzeyte\";\"other\"\n\"2028357\";\"Baruun Oldzeyte Suma\";\"other\"\n\"2028357\";\"Baruun Öldzeyte\";\"other\"\n\"2028357\";\"Baruun Öldzeyte Suma\";\"other\"\n\"2028357\";\"Oldzeytu\";\"other\"\n\"2028357\";\"Oldziit\";\"other\"\n\"2028357\";\"Oldziyt\";\"other\"\n\"2028357\";\"Öldziyt\";\"other\"\n\"2028357\";\"Öldziït\";\"other\"\n\"2028359\";\"Ulaan-Uul\";\"main\"\n\"2028359\";\"Erdene\";\"other\"\n\"2028359\";\"Erdeni\";\"other\"\n\"2028359\";\"Erdeni Somon\";\"other\"\n\"2028359\";\"Erdeni Suma\";\"other\"\n\"2028359\";\"Erdeni Sume\";\"other\"\n\"2028359\";\"Erdeni sumu\";\"other\"\n\"2028411\";\"Ulaanjirem\";\"main\"\n\"2028411\";\"Holodo\";\"other\"\n\"2028411\";\"Holodo Suma\";\"other\"\n\"2028411\";\"Holot Sumu\";\"other\"\n\"2028411\";\"Horuto\";\"other\"\n\"2028411\";\"Huld\";\"other\"\n\"2028411\";\"Hulud\";\"other\"\n\"2028411\";\"Kholod\";\"other\"\n\"2028411\";\"Kholod Somon\";\"other\"\n\"2028411\";\"Kholot\";\"other\"\n\"2028411\";\"Khuld\";\"other\"\n\"2028429\";\"Ulaanhudag\";\"main\"\n\"2028429\";\"Erdenesant\";\"other\"\n\"2028429\";\"Erdeni Santa\";\"other\"\n\"2028429\";\"Erdeni Santa Suma\";\"other\"\n\"2028429\";\"Erdeni Santu Somon\";\"other\"\n\"2028429\";\"Erdeni santu sumu\";\"other\"\n\"2028429\";\"Erdeni-Santu\";\"other\"\n\"2028429\";\"Erudeni-santo\";\"other\"\n\"2028437\";\"Ulaanhad\";\"main\"\n\"2028437\";\"Bayanhangay\";\"other\"\n\"2028445\";\"Ulaan-Ereg\";\"main\"\n\"2028445\";\"Bain-munku Somon\";\"other\"\n\"2028445\";\"Bayan Monho\";\"other\"\n\"2028445\";\"Bayan Monho Suma\";\"other\"\n\"2028445\";\"Bayan Munkhu\";\"other\"\n\"2028445\";\"Bayan Munku Somon\";\"other\"\n\"2028445\";\"Bayan Mönhö\";\"other\"\n\"2028445\";\"Bayan Mönhö Suma\";\"other\"\n\"2028445\";\"Bayan monho sumu\";\"other\"\n\"2028445\";\"Bayan mönhö sumu\";\"other\"\n\"2028445\";\"Bayanmonh\";\"other\"\n\"2028445\";\"Bayanmonkh\";\"other\"\n\"2028445\";\"Bayanmönh\";\"other\"\n\"2028445\";\"Bayanmönkh\";\"other\"\n\"2028445\";\"Bayn Munkhu Somon\";\"other\"\n\"2028450\";\"Ulaandel\";\"main\"\n\"2028450\";\"Asahatay Suma\";\"other\"\n\"2028450\";\"Asgat\";\"other\"\n\"2028462\";\"Ulaanbaatar\";\"main\"\n\"2028462\";\"Da Huryee\";\"other\"\n\"2028462\";\"Da Hüryee\";\"other\"\n\"2028462\";\"Da Khure\";\"other\"\n\"2028462\";\"Da-Kure\";\"other\"\n\"2028462\";\"K'u-lun\";\"other\"\n\"2028462\";\"Orgoo\";\"other\"\n\"2028462\";\"Oulan Mpator\";\"other\"\n\"2028462\";\"Oulan-Bator\";\"other\"\n\"2028462\";\"Ourga\";\"other\"\n\"2028462\";\"Ulaan Baatar Hoto\";\"other\"\n\"2028462\";\"Ulaanbaator\";\"other\"\n\"2028462\";\"Ulaanbaator hota\";\"other\"\n\"2028462\";\"Ulaanbaatur\";\"other\"\n\"2028462\";\"Ulan Bator\";\"other\"\n\"2028462\";\"Ulan Bator - Ulaanbaatar\";\"other\"\n\"2028462\";\"Ulan Bator Hoto\";\"other\"\n\"2028462\";\"Ulan Batoras\";\"other\"\n\"2028462\";\"Ulan Batur\";\"other\"\n\"2028462\";\"Ulan-Bator\";\"other\"\n\"2028462\";\"Ulan-Bator Khoto\";\"other\"\n\"2028462\";\"Ulan-Batoro\";\"other\"\n\"2028462\";\"Ulanbatar\";\"other\"\n\"2028462\";\"Ulanbator\";\"other\"\n\"2028462\";\"Ulán Bator\";\"other\"\n\"2028462\";\"Ulán Bátor - Улаанбаатар\";\"other\"\n\"2028462\";\"Ulánbátar\";\"other\"\n\"2028462\";\"Ulánbátor\";\"other\"\n\"2028462\";\"Uranbatoru\";\"other\"\n\"2028462\";\"Urga\";\"other\"\n\"2028462\";\"Uruga\";\"other\"\n\"2028462\";\"Ułan Bator\";\"other\"\n\"2028462\";\"awlan batwr\";\"other\"\n\"2028462\";\"ulanabatara\";\"other\"\n\"2028462\";\"ullanbatoleu\";\"other\"\n\"2028462\";\"uranbatoru\";\"other\"\n\"2028462\";\"wu lan ba tuo\";\"other\"\n\"2028462\";\"xulanbatxr\";\"other\"\n\"2028462\";\"Örgöö\";\"other\"\n\"2028462\";\"Ουλάν Μπατόρ\";\"other\"\n\"2028462\";\"Улаанбаатар\";\"other\"\n\"2028462\";\"Улан Батор\";\"other\"\n\"2028462\";\"Улан-Батор\";\"other\"\n\"2028462\";\"אולן בטור\";\"other\"\n\"2028462\";\"أولان باتور\";\"other\"\n\"2028462\";\"اولان‌باتور\";\"other\"\n\"2028462\";\"उलानबातर\";\"other\"\n\"2028462\";\"อูลานบาตอร์\";\"other\"\n\"2028462\";\"ཝུ་ལན་བ་ཐུར\";\"other\"\n\"2028462\";\"ኡላዓን ባዓታር\";\"other\"\n\"2028462\";\"ウランバートル\";\"other\"\n\"2028462\";\"乌兰巴托\";\"other\"\n\"2028462\";\"울란바토르\";\"other\"\n\"2028534\";\"Turt\";\"main\"\n\"2028534\";\"Hanga\";\"other\"\n\"2028534\";\"Hanga Suma\";\"other\"\n\"2028534\";\"Hanga Sumu\";\"other\"\n\"2028534\";\"Hangin\";\"other\"\n\"2028534\";\"Hanh\";\"other\"\n\"2028534\";\"KHANKH\";\"other\"\n\"2028534\";\"Khanga\";\"other\"\n\"2028534\";\"Khanga Sume\";\"other\"\n\"2028534\";\"Khangin\";\"other\"\n\"2028534\";\"Khankh\";\"other\"\n\"2028534\";\"Khankha Somon\";\"other\"\n\"2028534\";\"T'u-erh-t'u\";\"other\"\n\"2028534\";\"Turta\";\"other\"\n\"2028534\";\"Turtu\";\"other\"\n\"2028534\";\"ХАНХ\";\"other\"\n\"2028562\";\"Tsul-Ulaan\";\"main\"\n\"2028562\";\"Bayannuur\";\"other\"\n\"2028577\";\"Tsoohor\";\"main\"\n\"2028577\";\"Hurmeiin Suma\";\"other\"\n\"2028577\";\"Hurmen\";\"other\"\n\"2028577\";\"Hurmiin Suma\";\"other\"\n\"2028577\";\"Hürmeiin Suma\";\"other\"\n\"2028577\";\"Hürmen\";\"other\"\n\"2028577\";\"Hürmiin Suma\";\"other\"\n\"2028577\";\"Khurmein Somon\";\"other\"\n\"2028577\";\"Khurmen\";\"other\"\n\"2028577\";\"Khurmeyn somon\";\"other\"\n\"2028577\";\"Khurmin-Somon\";\"other\"\n\"2028577\";\"Khürmen\";\"other\"\n\"2028577\";\"Ondor Hurme Suma\";\"other\"\n\"2028577\";\"Ondor hurme\";\"other\"\n\"2028577\";\"Undur Khurmein Sume\";\"other\"\n\"2028577\";\"Undur hurme'iin sumu\";\"other\"\n\"2028577\";\"Öndör Hürme Suma\";\"other\"\n\"2028577\";\"Öndör hürme\";\"other\"\n\"2028577\";\"Ündür hürme'iin sumu\";\"other\"\n\"2028581\";\"Tsomog\";\"main\"\n\"2028581\";\"Dalanjargalan\";\"other\"\n\"2028606\";\"Tsetserleg\";\"main\"\n\"2028606\";\"Cecerleg\";\"other\"\n\"2028606\";\"Cehcehrlehg\";\"other\"\n\"2028606\";\"Tsetserlig\";\"other\"\n\"2028606\";\"Tsetserlig-khoto\";\"other\"\n\"2028606\";\"Tsetserlik\";\"other\"\n\"2028606\";\"Tsetserurigu\";\"other\"\n\"2028606\";\"Цэцэрлэг\";\"other\"\n\"2028614\";\"Tsengel\";\"main\"\n\"2028614\";\"Toson Tsengel Suma\";\"other\"\n\"2028614\";\"Toson tsengel sumu\";\"other\"\n\"2028614\";\"Toson-Cehngehl\";\"other\"\n\"2028614\";\"Toson-tsengel somon\";\"other\"\n\"2028614\";\"Tosontsengel\";\"other\"\n\"2028614\";\"Тосон-Цэнгэл\";\"other\"\n\"2028653\";\"Tsant\";\"main\"\n\"2028653\";\"Deren\";\"other\"\n\"2028653\";\"Deren Somon\";\"other\"\n\"2028653\";\"Deren Suma\";\"other\"\n\"2028653\";\"Deren sumu\";\"other\"\n\"2028653\";\"Dereng\";\"other\"\n\"2028720\";\"Tsagaan-Ovoo\";\"main\"\n\"2028720\";\"Nariin Teeli Suma\";\"other\"\n\"2028720\";\"Nariinteel\";\"other\"\n\"2028720\";\"Narin Teli Sume\";\"other\"\n\"2028720\";\"Narin del' Somon\";\"other\"\n\"2028720\";\"Narin teeli\";\"other\"\n\"2028720\";\"Narin-Teeli-Somon\";\"other\"\n\"2028720\";\"Narin-Teli\";\"other\"\n\"2028720\";\"Nariyntee\";\"other\"\n\"2028720\";\"Nariynteel\";\"other\"\n\"2028720\";\"Nariïnteel\";\"other\"\n\"2028722\";\"Tsagaan-Ovoo\";\"main\"\n\"2028722\";\"Loosa sumu\";\"other\"\n\"2028722\";\"Los\";\"other\"\n\"2028722\";\"Lus\";\"other\"\n\"2028722\";\"Lus Somon\";\"other\"\n\"2028722\";\"Luus\";\"other\"\n\"2028722\";\"Luusa\";\"other\"\n\"2028722\";\"Luusa Suma\";\"other\"\n\"2028790\";\"Tsagaandörvölj\";\"main\"\n\"2028790\";\"Tsagaandorvolj\";\"ascii\"\n\"2028790\";\"Ayrag\";\"other\"\n\"2028792\";\"Tsagaanders\";\"main\"\n\"2028792\";\"Bain Tumen\";\"other\"\n\"2028792\";\"Bayantumen\";\"other\"\n\"2028792\";\"Bayantümen\";\"other\"\n\"2028792\";\"Cagandehrs\";\"other\"\n\"2028792\";\"Цагандэрс\";\"other\"\n\"2028905\";\"Töhöm\";\"main\"\n\"2028905\";\"Tohom\";\"ascii\"\n\"2028905\";\"Mandah\";\"other\"\n\"2028905\";\"Mandaha Suma\";\"other\"\n\"2028905\";\"Mandaho\";\"other\"\n\"2028905\";\"Mandakh\";\"other\"\n\"2028905\";\"Mandohu\";\"other\"\n\"2028905\";\"Mandohu sumu\";\"other\"\n\"2028905\";\"Naran Mandaha\";\"other\"\n\"2028905\";\"Naran Mandaha Suma\";\"other\"\n\"2028905\";\"Naran-Mandakhu-Somon\";\"other\"\n\"2028905\";\"Naran-mandokhu Somon\";\"other\"\n\"2028933\";\"Teshig\";\"main\"\n\"2028933\";\"Tehshig\";\"other\"\n\"2028933\";\"Teshig Suma\";\"other\"\n\"2028933\";\"Teshig Sume\";\"other\"\n\"2028933\";\"Teshig somon\";\"other\"\n\"2028933\";\"Teshig sumu\";\"other\"\n\"2028933\";\"Тэшиг\";\"other\"\n\"2028961\";\"Teel\";\"main\"\n\"2028961\";\"Ondon-Ulan\";\"other\"\n\"2028961\";\"Ondor Ulaan Suma\";\"other\"\n\"2028961\";\"Ondor-Ulaan\";\"other\"\n\"2028961\";\"Undehr-Ulan\";\"other\"\n\"2028961\";\"Undur ulaan sumu\";\"other\"\n\"2028961\";\"Undur-Ulan\";\"other\"\n\"2028961\";\"Undur-ulan somon\";\"other\"\n\"2028961\";\"Öndör Ulaan Suma\";\"other\"\n\"2028961\";\"Öndör-Ulaan\";\"other\"\n\"2028961\";\"Ündür ulaan sumu\";\"other\"\n\"2028961\";\"Ундэр-Улан\";\"other\"\n\"2028972\";\"Tavin\";\"main\"\n\"2028972\";\"Adaatsag\";\"other\"\n\"2028983\";\"Tavanbulag\";\"main\"\n\"2028983\";\"Todzshruuleh\";\"other\"\n\"2028983\";\"Tovshruuleh\";\"other\"\n\"2028983\";\"Towshruulekh\";\"other\"\n\"2028983\";\"Tuvshruuleh\";\"other\"\n\"2028983\";\"Tödzshrüüleh\";\"other\"\n\"2028983\";\"Tövshrüüleh\";\"other\"\n\"2028983\";\"Töwshrüülekh\";\"other\"\n\"2028983\";\"Tüvshrüüleh\";\"other\"\n\"2029117\";\"Süüj\";\"main\"\n\"2029117\";\"Suuj\";\"ascii\"\n\"2029117\";\"Dashichiling\";\"other\"\n\"2029117\";\"Dashichiling sumu\";\"other\"\n\"2029117\";\"Dashinchilen\";\"other\"\n\"2029117\";\"Dashinchilin Suma\";\"other\"\n\"2029117\";\"Dashinchiling\";\"other\"\n\"2029117\";\"Dashinchiling Somon\";\"other\"\n\"2029117\";\"Dashinchiling Suma\";\"other\"\n\"2029117\";\"Dashinchilling\";\"other\"\n\"2029118\";\"Suugaant\";\"main\"\n\"2029118\";\"Gurban Saikhan\";\"other\"\n\"2029118\";\"Gurban Sayhan\";\"other\"\n\"2029118\";\"Gurban Sayhan Suma\";\"other\"\n\"2029118\";\"Gurban Saykhan Somon\";\"other\"\n\"2029118\";\"Gurban sayhan sumu\";\"other\"\n\"2029118\";\"Gurban-Saykhan\";\"other\"\n\"2029118\";\"Gurvan-Saykhan\";\"other\"\n\"2029118\";\"Gurvansayhan\";\"other\"\n\"2029118\";\"Gurwansaikhan\";\"other\"\n\"2029118\";\"Gurwansaïkhan\";\"other\"\n\"2029118\";\"Suugant\";\"other\"\n\"2029130\";\"Sümiyn Bulag\";\"main\"\n\"2029130\";\"Sumiyn Bulag\";\"ascii\"\n\"2029130\";\"Gurban Dzagaliin Suma\";\"other\"\n\"2029130\";\"Gurban Dzakhaliin Somon\";\"other\"\n\"2029130\";\"Gurbun Dzagal\";\"other\"\n\"2029130\";\"Gurbun Dzagalyn Somon\";\"other\"\n\"2029130\";\"Gurbun-Dzagal-Sumu\";\"other\"\n\"2029130\";\"Gurubun Zagaran\";\"other\"\n\"2029130\";\"Gurvandzgal\";\"other\"\n\"2029130\";\"Gurwandzagal\";\"other\"\n\"2029130\";\"Gürwandzagal\";\"other\"\n\"2029130\";\"Suemiyn Bulag\";\"other\"\n\"2029130\";\"Sumijn-Bulak\";\"other\"\n\"2029130\";\"Сумийн-Булак\";\"other\"\n\"2029156\";\"Sühbaatar\";\"main\"\n\"2029156\";\"Suhbaatar\";\"ascii\"\n\"2029156\";\"Suehbaatar\";\"other\"\n\"2029156\";\"Suhe Baatar\";\"other\"\n\"2029156\";\"Suhe Batar\";\"other\"\n\"2029156\";\"Sukhbaatar\";\"other\"\n\"2029156\";\"Sukhe Batur\";\"other\"\n\"2029156\";\"Sukhe-Bator\";\"other\"\n\"2029156\";\"Sukheh-Bator\";\"other\"\n\"2029156\";\"Sühe Baatar\";\"other\"\n\"2029156\";\"Sühe Batar\";\"other\"\n\"2029156\";\"Sükhbaatar\";\"other\"\n\"2029156\";\"Сухэ-Батор\";\"other\"\n\"2029156\";\"Сүхбаатар\";\"other\"\n\"2029176\";\"Sört\";\"main\"\n\"2029176\";\"Sort\";\"ascii\"\n\"2029176\";\"Hangal\";\"other\"\n\"2029176\";\"Hangal Suma\";\"other\"\n\"2029176\";\"Hangal sumu\";\"other\"\n\"2029176\";\"Khangal\";\"other\"\n\"2029176\";\"Khangal Somon\";\"other\"\n\"2029176\";\"Soert\";\"other\"\n\"2029176\";\"Хангал\";\"other\"\n\"2029238\";\"Shireet\";\"main\"\n\"2029238\";\"Bain-Del'gir-Somon\";\"other\"\n\"2029238\";\"Bain-delger Somon\";\"other\"\n\"2029238\";\"Bayan Delger Suma\";\"other\"\n\"2029238\";\"Bayan delger sumu\";\"other\"\n\"2029238\";\"Bayandelger\";\"other\"\n\"2029238\";\"Bayn Del'gir Somon\";\"other\"\n\"2029238\";\"Shireton Khid\";\"other\"\n\"2029238\";\"Shiretoyn Khid\";\"other\"\n\"2029238\";\"Shiretyn-khid\";\"other\"\n\"2029238\";\"Shiretyyn khid\";\"other\"\n\"2029238\";\"Shiretön Khid\";\"other\"\n\"2029238\";\"Shiretöyn Khid\";\"other\"\n\"2029238\";\"Ulan-Nur-Somon\";\"other\"\n\"2029241\";\"Shiree\";\"main\"\n\"2029241\";\"Bayangol\";\"other\"\n\"2029315\";\"Sharïngol\";\"main\"\n\"2029315\";\"Sharingol\";\"ascii\"\n\"2029321\";\"Sharhulsan\";\"main\"\n\"2029321\";\"Mandal Obo Somon\";\"other\"\n\"2029321\";\"Mandal Oboo\";\"other\"\n\"2029321\";\"Mandal Oboo Suma\";\"other\"\n\"2029321\";\"Mandal-Obo\";\"other\"\n\"2029321\";\"Mandal-Ovoo\";\"other\"\n\"2029335\";\"Sharga\";\"main\"\n\"2029335\";\"Bajan-Agt\";\"other\"\n\"2029335\";\"Bayan Agta\";\"other\"\n\"2029335\";\"Bayan Agta Suma\";\"other\"\n\"2029335\";\"Bayan Agta Sume\";\"other\"\n\"2029335\";\"Bayan-Agt\";\"other\"\n\"2029335\";\"Bayan-agta somon\";\"other\"\n\"2029335\";\"Bayanagta sumu\";\"other\"\n\"2029335\";\"Баян-Агт\";\"other\"\n\"2029419\";\"Sergelen\";\"main\"\n\"2029420\";\"Sergelen\";\"main\"\n\"2029420\";\"Tebshin-Shire Somon\";\"other\"\n\"2029420\";\"Tubshin Shiree Suma\";\"other\"\n\"2029420\";\"Tubshin shiree\";\"other\"\n\"2029420\";\"Tubshin shiree sumu\";\"other\"\n\"2029420\";\"Tubshin-Shire\";\"other\"\n\"2029420\";\"Tuvshinshiree\";\"other\"\n\"2029420\";\"Tuwshinshiree\";\"other\"\n\"2029420\";\"Tübshin Shiree Suma\";\"other\"\n\"2029420\";\"Tübshin shiree\";\"other\"\n\"2029420\";\"Tübshin shiree sumu\";\"other\"\n\"2029420\";\"Tüvshinshiree\";\"other\"\n\"2029420\";\"Tüwshinshiree\";\"other\"\n\"2029427\";\"Senj\";\"main\"\n\"2029427\";\"Orgon\";\"other\"\n\"2029427\";\"Örgön\";\"other\"\n\"2029433\";\"Selenge\";\"main\"\n\"2029433\";\"Ih-Uul\";\"other\"\n\"2029433\";\"Ihe uula sumu\";\"other\"\n\"2029433\";\"Ikh-Ula\";\"other\"\n\"2029433\";\"Ikhe Ula Sume\";\"other\"\n\"2029433\";\"Ikhe-Ula\";\"other\"\n\"2029433\";\"Ikhe-ula Somon\";\"other\"\n\"2029433\";\"Yihe Uula Suma\";\"other\"\n\"2029433\";\"Их-Ула\";\"other\"\n\"2029463\";\"Saynshand\";\"main\"\n\"2029463\";\"Seberei\";\"other\"\n\"2029463\";\"Seberei Sume\";\"other\"\n\"2029463\";\"Seberey\";\"other\"\n\"2029463\";\"Seberey Suma\";\"other\"\n\"2029463\";\"Seberey somon\";\"other\"\n\"2029463\";\"Seberey sumu\";\"other\"\n\"2029463\";\"Sevrey\";\"other\"\n\"2029463\";\"Syowrei\";\"other\"\n\"2029463\";\"Syöwrei\";\"other\"\n\"2029494\";\"Sangiyn Dalay\";\"main\"\n\"2029494\";\"Oldzeyte\";\"other\"\n\"2029494\";\"Oldzeyte Suma\";\"other\"\n\"2029494\";\"Oldzeytu\";\"other\"\n\"2029494\";\"Oldziit\";\"other\"\n\"2029494\";\"Oldziyt\";\"other\"\n\"2029494\";\"Uldzeytu-Somon\";\"other\"\n\"2029494\";\"Uldzit\";\"other\"\n\"2029494\";\"Ultszeyto Somon\";\"other\"\n\"2029494\";\"Ultszeytu Somon\";\"other\"\n\"2029494\";\"Öldzeyte Suma\";\"other\"\n\"2029494\";\"Öldzeytü\";\"other\"\n\"2029494\";\"Öldziyt\";\"other\"\n\"2029494\";\"Öldziït\";\"other\"\n\"2029495\";\"Sangiyn Dalay\";\"main\"\n\"2029495\";\"Erdenedalay\";\"other\"\n\"2029495\";\"Erdeni Dalai\";\"other\"\n\"2029495\";\"Erdeni Dalay\";\"other\"\n\"2029495\";\"Erdeni Dalay Somon\";\"other\"\n\"2029495\";\"Erdeni Dalay Suma\";\"other\"\n\"2029499\";\"Sangiyn Dalay\";\"main\"\n\"2029499\";\"Sang'iin dalay'iin hurie\";\"other\"\n\"2029499\";\"Sang'iin dalay'iin hürie\";\"other\"\n\"2029499\";\"Sang'iin dalay'in hurie\";\"other\"\n\"2029499\";\"Sang'iin dalay'in hürie\";\"other\"\n\"2029499\";\"Sangiin Dalay Hueryee\";\"other\"\n\"2029499\";\"Sangiin Dalay Huree\";\"other\"\n\"2029499\";\"Sangiin Dalay Hüree\";\"other\"\n\"2029499\";\"Sangiin Dalay Hüryee\";\"other\"\n\"2029499\";\"Sangin Dalain Khure\";\"other\"\n\"2029499\";\"Sangin dalay khure\";\"other\"\n\"2029499\";\"Sangin-Dalayn-Khure\";\"other\"\n\"2029525\";\"Rashaant\";\"main\"\n\"2029525\";\"Arshaanta Suma\";\"other\"\n\"2029525\";\"Arshaantu\";\"other\"\n\"2029525\";\"Arshant\";\"other\"\n\"2029525\";\"Arshantu Khure\";\"other\"\n\"2029525\";\"Arshantu Somon\";\"other\"\n\"2029525\";\"Arshantu sumu\";\"other\"\n\"2029525\";\"Аршант\";\"other\"\n\"2029527\";\"Rashaant\";\"main\"\n\"2029527\";\"Oldzit\";\"other\"\n\"2029527\";\"Oldziyt\";\"other\"\n\"2029527\";\"Öldziyt\";\"other\"\n\"2029527\";\"Öldzït\";\"other\"\n\"2029542\";\"Övt\";\"main\"\n\"2029542\";\"Ovt\";\"ascii\"\n\"2029542\";\"Bat-Oldzii\";\"other\"\n\"2029542\";\"Bat-Oldziy\";\"other\"\n\"2029542\";\"Bat-Öldziy\";\"other\"\n\"2029542\";\"Bat-Öldziï\";\"other\"\n\"2029558\";\"Ovoot\";\"main\"\n\"2029558\";\"Dariganga\";\"other\"\n\"2029558\";\"Dariganga Suma\";\"other\"\n\"2029558\";\"Dariganga somon\";\"other\"\n\"2029558\";\"Dariganga sumu\";\"other\"\n\"2029558\";\"Daringanga\";\"other\"\n\"2029558\";\"Darĭganga\";\"other\"\n\"2029558\";\"Shine Dariganga\";\"other\"\n\"2029558\";\"Shine Dariganga Suma\";\"other\"\n\"2029558\";\"Shine Dariganta Somon\";\"other\"\n\"2029558\";\"Shine-dariganga Somon\";\"other\"\n\"2029588\";\"Orhontuul\";\"main\"\n\"2029588\";\"Dedu orhon sumu\";\"other\"\n\"2029588\";\"Dedu-Orkhon-Sumu\";\"other\"\n\"2029588\";\"Deede Orhon Suma\";\"other\"\n\"2029588\";\"Deedu orhon\";\"other\"\n\"2029588\";\"Orhon Tuula Suma\";\"other\"\n\"2029588\";\"Orkhon-Tola\";\"other\"\n\"2029588\";\"Orkhontola Somon\";\"other\"\n\"2029588\";\"Orkhontuul\";\"other\"\n\"2029588\";\"Орхон-Тола\";\"other\"\n\"2029596\";\"Örgön\";\"main\"\n\"2029596\";\"Orgon\";\"ascii\"\n\"2029596\";\"Bayangovi\";\"other\"\n\"2029596\";\"Bayangovĭ\";\"other\"\n\"2029596\";\"Bayangow'\";\"other\"\n\"2029597\";\"Orgil\";\"main\"\n\"2029597\";\"Tseel\";\"other\"\n\"2029610\";\"Onon\";\"main\"\n\"2029610\";\"Binder\";\"other\"\n\"2029610\";\"Bindiryaa\";\"other\"\n\"2029610\";\"Bindiryaa Suma\";\"other\"\n\"2029610\";\"Bindur somon\";\"other\"\n\"2029610\";\"Bindur'ya sumu\";\"other\"\n\"2029610\";\"Bindurya\";\"other\"\n\"2029610\";\"Bindurya-Somon\";\"other\"\n\"2029610\";\"Bindur’ya sumu\";\"other\"\n\"2029610\";\"Онон\";\"other\"\n\"2029624\";\"Ongon\";\"main\"\n\"2029624\";\"Burd\";\"other\"\n\"2029624\";\"Buride Suma\";\"other\"\n\"2029624\";\"Buridu\";\"other\"\n\"2029624\";\"Buridu Somon\";\"other\"\n\"2029624\";\"Buridu sumu\";\"other\"\n\"2029624\";\"Bürd\";\"other\"\n\"2029624\";\"Büride Suma\";\"other\"\n\"2029624\";\"Büridü\";\"other\"\n\"2029624\";\"Büridü sumu\";\"other\"\n\"2029635\";\"Ongi\";\"main\"\n\"2029635\";\"Ongi Suma\";\"other\"\n\"2029635\";\"Ongi sumu\";\"other\"\n\"2029635\";\"Ongin\";\"other\"\n\"2029635\";\"Uyanga\";\"other\"\n\"2029635\";\"Uyanga Somon\";\"other\"\n\"2029635\";\"Uyanga Suma\";\"other\"\n\"2029635\";\"Uyangh\";\"other\"\n\"2029635\";\"Weng-chin\";\"other\"\n\"2029636\";\"Ongi\";\"main\"\n\"2029636\";\"Saikhan Obo\";\"other\"\n\"2029636\";\"Saikhan Obo Somon\";\"other\"\n\"2029636\";\"Saikhan Owoo\";\"other\"\n\"2029636\";\"Sayhan Oboo\";\"other\"\n\"2029636\";\"Sayhan Oboo Suma\";\"other\"\n\"2029636\";\"Sayhan oboo sumu\";\"other\"\n\"2029636\";\"Sayhan-Ovoo\";\"other\"\n\"2029636\";\"Saykhan Obo Somon\";\"other\"\n\"2029636\";\"Saykhan-Obo\";\"other\"\n\"2029636\";\"Saïkhan Owoo\";\"other\"\n\"2029651\";\"Öndörhoshuu\";\"main\"\n\"2029651\";\"OEndoerhoshuu\";\"ascii\"\n\"2029651\";\"Bulgan\";\"other\"\n\"2029651\";\"OEndoerhushuu\";\"other\"\n\"2029651\";\"Öndörhushuu\";\"other\"\n\"2029656\";\"Öndörhaan\";\"main\"\n\"2029656\";\"Ondorhaan\";\"ascii\"\n\"2029656\";\"Cecen Han\";\"other\"\n\"2029656\";\"Ch'e-ch'en-han\";\"other\"\n\"2029656\";\"Ch’e-ch’en-han\";\"other\"\n\"2029656\";\"Ondor han\";\"other\"\n\"2029656\";\"Ondorkhaan\";\"other\"\n\"2029656\";\"Stavka Tsetsen-Hana\";\"other\"\n\"2029656\";\"Thetsen Khan\";\"other\"\n\"2029656\";\"Tsetsen Khan\";\"other\"\n\"2029656\";\"Tsetsen Khan's Palace\";\"other\"\n\"2029656\";\"Tsetsen Khan’s Palace\";\"other\"\n\"2029656\";\"Tsetsenhan\";\"other\"\n\"2029656\";\"Tsetsenkhana\";\"other\"\n\"2029656\";\"Tsetsenkian\";\"other\"\n\"2029656\";\"Tsetsonwang\";\"other\"\n\"2029656\";\"Under-Khan\";\"other\"\n\"2029656\";\"Undoru han\";\"other\"\n\"2029656\";\"Undur Khan\";\"other\"\n\"2029656\";\"Undurhan\";\"other\"\n\"2029656\";\"Zezen Khana\";\"other\"\n\"2029656\";\"Zezen-chan\";\"other\"\n\"2029656\";\"Öndör han\";\"other\"\n\"2029656\";\"Öndörkhaan\";\"other\"\n\"2029656\";\"Өндөрхаан\";\"other\"\n\"2029698\";\"Öldziyt\";\"main\"\n\"2029698\";\"Oldziyt\";\"ascii\"\n\"2029698\";\"Ehrdehneh-Mandal\";\"other\"\n\"2029698\";\"Erdenemandal\";\"other\"\n\"2029698\";\"Erdeni Mandal Suma\";\"other\"\n\"2029698\";\"Erdeni Mandal Sume\";\"other\"\n\"2029698\";\"Erdeni Mandel Sumu\";\"other\"\n\"2029698\";\"Erdeni mandal sumu\";\"other\"\n\"2029698\";\"Erdeni-Mandal\";\"other\"\n\"2029698\";\"Erdeni-mandal Somon\";\"other\"\n\"2029698\";\"OEldziyt\";\"other\"\n\"2029698\";\"Эрдэнэ-Мандал\";\"other\"\n\"2029700\";\"Öldziyt\";\"main\"\n\"2029700\";\"Oldziyt\";\"ascii\"\n\"2029700\";\"Saikhan Dulan Sume\";\"other\"\n\"2029700\";\"Saikhandulaan\";\"other\"\n\"2029700\";\"Sayhan Dulaan Suma\";\"other\"\n\"2029700\";\"Sayhan dulaan sumu\";\"other\"\n\"2029700\";\"Sayhandulaan\";\"other\"\n\"2029700\";\"Saykhan Dulan\";\"other\"\n\"2029700\";\"Saykhan-dulan Somon\";\"other\"\n\"2029700\";\"Saïkhandulaan\";\"other\"\n\"2029735\";\"Ögöömör\";\"main\"\n\"2029735\";\"Ogoomor\";\"ascii\"\n\"2029735\";\"Haan Hongor Suma\";\"other\"\n\"2029735\";\"Han hongor sumu\";\"other\"\n\"2029735\";\"Hanhongor\";\"other\"\n\"2029735\";\"Hongor Suma\";\"other\"\n\"2029735\";\"Khankhongor\";\"other\"\n\"2029735\";\"Khongor somon\";\"other\"\n\"2029784\";\"Nüden\";\"main\"\n\"2029784\";\"Nuden\";\"ascii\"\n\"2029784\";\"Ulaan Badaraha Suma\";\"other\"\n\"2029784\";\"Ulaan Badaraha Sumu\";\"other\"\n\"2029784\";\"Ulaan badarahu\";\"other\"\n\"2029784\";\"Ulaan badarahu sumu\";\"other\"\n\"2029784\";\"Ulaanbadrah\";\"other\"\n\"2029784\";\"Ulaanbadrakh\";\"other\"\n\"2029784\";\"Ulan Badarakhu\";\"other\"\n\"2029784\";\"Ulan Badarkhu Somon\";\"other\"\n\"2029784\";\"Ulan-Badrakh\";\"other\"\n\"2029784\";\"Ulan-badarakhu-Sumu\";\"other\"\n\"2029816\";\"Nomgon\";\"main\"\n\"2029816\";\"Sayhan\";\"other\"\n\"2029816\";\"Номгон\";\"other\"\n\"2029840\";\"Nart\";\"main\"\n\"2029840\";\"Orhon\";\"other\"\n\"2029840\";\"Orkhon\";\"other\"\n\"2029840\";\"Нарт\";\"other\"\n\"2029886\";\"Naranbulag\";\"main\"\n\"2029886\";\"Bayan Dun Suma\";\"other\"\n\"2029886\";\"Bayan Dung Suma\";\"other\"\n\"2029886\";\"Bayan Düng Suma\";\"other\"\n\"2029886\";\"Bayan dung sumu\";\"other\"\n\"2029886\";\"Bayan düng sumu\";\"other\"\n\"2029886\";\"Bayan-Dung-Somon\";\"other\"\n\"2029886\";\"Bayan-dung\";\"other\"\n\"2029886\";\"Bayan-düng\";\"other\"\n\"2029886\";\"Bayandun\";\"other\"\n\"2029886\";\"Naranbulak\";\"other\"\n\"2029886\";\"Наранбулак\";\"other\"\n\"2029945\";\"Mörön\";\"main\"\n\"2029945\";\"Moron\";\"ascii\"\n\"2029945\";\"MUREHN\";\"other\"\n\"2029945\";\"Moeroen\";\"other\"\n\"2029945\";\"Moron'i hurie\";\"other\"\n\"2029945\";\"Moronii Huryee\";\"other\"\n\"2029945\";\"Moronii khuree\";\"other\"\n\"2029945\";\"Moronu hurie\";\"other\"\n\"2029945\";\"Mu-lin\";\"other\"\n\"2029945\";\"Mu-lin-fu-lieh\";\"other\"\n\"2029945\";\"Murehn\";\"other\"\n\"2029945\";\"Muren\";\"other\"\n\"2029945\";\"Murenfure\";\"other\"\n\"2029945\";\"Muringoru\";\"other\"\n\"2029945\";\"Murun-kuren\";\"other\"\n\"2029945\";\"Mörönii Hüryee\";\"other\"\n\"2029945\";\"Mörönii khüree\";\"other\"\n\"2029945\";\"Mörönu hurie\";\"other\"\n\"2029945\";\"Mörön’i hürie\";\"other\"\n\"2029945\";\"МУРЭН\";\"other\"\n\"2029945\";\"Мурэн\";\"other\"\n\"2029945\";\"Мөрөн\";\"other\"\n\"2029947\";\"Mörön\";\"main\"\n\"2029947\";\"Moron\";\"ascii\"\n\"2029947\";\"Moron Suma\";\"other\"\n\"2029947\";\"Moron Sumu\";\"other\"\n\"2029947\";\"Muren-sumu\";\"other\"\n\"2029947\";\"Muron\";\"other\"\n\"2029947\";\"Muron Somon\";\"other\"\n\"2029947\";\"Mörön Suma\";\"other\"\n\"2029947\";\"Mörön Sumu\";\"other\"\n\"2029961\";\"Mönhbulag\";\"main\"\n\"2029961\";\"Monhbulag\";\"ascii\"\n\"2029961\";\"Dzuil\";\"other\"\n\"2029961\";\"Dzuyl\";\"other\"\n\"2029961\";\"Dzüyl\";\"other\"\n\"2029961\";\"Dzüïl\";\"other\"\n\"2029989\";\"Modot\";\"main\"\n\"2029989\";\"Tsenher Mandal Suma\";\"other\"\n\"2029989\";\"Tsenher mandal sumu\";\"other\"\n\"2029989\";\"Tsenhermandal\";\"other\"\n\"2029989\";\"Tsenkher Landalon Somon\";\"other\"\n\"2029989\";\"Tsenkher Mandaloyn Somon\";\"other\"\n\"2029989\";\"Tsenkher Mandalöyn Somon\";\"other\"\n\"2029989\";\"Tsenkher Mandlyin Somon\";\"other\"\n\"2029989\";\"Tsenkher-Mandal\";\"other\"\n\"2029989\";\"Tsenkher-Mandalyyn Somon\";\"other\"\n\"2030035\";\"Mayhan\";\"main\"\n\"2030035\";\"Sant\";\"other\"\n\"2030035\";\"Santa Suma\";\"other\"\n\"2030035\";\"Santo\";\"other\"\n\"2030035\";\"Santu\";\"other\"\n\"2030035\";\"Santu Somon\";\"other\"\n\"2030035\";\"Santu sumu\";\"other\"\n\"2030035\";\"Santü\";\"other\"\n\"2030040\";\"Mardzad\";\"main\"\n\"2030040\";\"Dulaan Hayrhan Suma\";\"other\"\n\"2030040\";\"Dulan Khairkhan Somon\";\"other\"\n\"2030040\";\"Dulan Khayrkhan somon\";\"other\"\n\"2030040\";\"Hairuhan-doran\";\"other\"\n\"2030040\";\"Hayrhan Dulaan Suma\";\"other\"\n\"2030040\";\"Hayrhan dulan sumu\";\"other\"\n\"2030040\";\"Hayrhandulaan\";\"other\"\n\"2030040\";\"Khairkhandulaan\";\"other\"\n\"2030040\";\"Khayrkhan-Dulan\";\"other\"\n\"2030040\";\"Khaïrkhandulaan\";\"other\"\n\"2030053\";\"Manhan\";\"main\"\n\"2030053\";\"Alag Erdeni\";\"other\"\n\"2030053\";\"Alag Erdeni Suma\";\"other\"\n\"2030053\";\"Alag Erdeni Sume\";\"other\"\n\"2030053\";\"Alag-Ehrdehneh\";\"other\"\n\"2030053\";\"Alag-Erdene\";\"other\"\n\"2030053\";\"Alag-Erdeni-Sumu\";\"other\"\n\"2030053\";\"Alag-erdeni somon\";\"other\"\n\"2030053\";\"Алаг-Эрдэнэ\";\"other\"\n\"2030065\";\"Mandalgovĭ\";\"main\"\n\"2030065\";\"Mandalgovi\";\"ascii\"\n\"2030065\";\"Dund-gobi\";\"other\"\n\"2030065\";\"Mandal Gobi\";\"other\"\n\"2030065\";\"Mandalgov'\";\"other\"\n\"2030065\";\"Mandalgow\\\"\";\"other\"\n\"2030065\";\"Mandalgow”\";\"other\"\n\"2030065\";\"Мандалговь\";\"other\"\n\"2030066\";\"Dzüünkharaa\";\"main\"\n\"2030066\";\"Dzuunkharaa\";\"ascii\"\n\"2030066\";\"Dzun-khara\";\"other\"\n\"2030066\";\"Dzuun Hara\";\"other\"\n\"2030066\";\"Dzüün Hara\";\"other\"\n\"2030066\";\"Mandal\";\"other\"\n\"2030066\";\"Mandal Suma\";\"other\"\n\"2030066\";\"Mandal somon\";\"other\"\n\"2030066\";\"Mandal sumu\";\"other\"\n\"2030066\";\"Zuunkharaa\";\"other\"\n\"2030067\";\"Mandal\";\"main\"\n\"2030067\";\"Orhon\";\"other\"\n\"2030067\";\"Orkhon\";\"other\"\n\"2030067\";\"Орхон\";\"other\"\n\"2030068\";\"Mandal\";\"main\"\n\"2030068\";\"Bata Sumber Somon\";\"other\"\n\"2030068\";\"Bata Sumber Suma\";\"other\"\n\"2030068\";\"Bata Sümber Somon\";\"other\"\n\"2030068\";\"Bata Sümber Suma\";\"other\"\n\"2030068\";\"Batsumber\";\"other\"\n\"2030068\";\"Batsümber\";\"other\"\n\"2030068\";\"Batu Sumbur Somon\";\"other\"\n\"2030068\";\"Batu sumbur sumu\";\"other\"\n\"2030068\";\"Batu sümbür sumu\";\"other\"\n\"2030068\";\"Batu-Sumbur\";\"other\"\n\"2030068\";\"Batur Sumbur Sume\";\"other\"\n\"2030078\";\"Maanĭt\";\"main\"\n\"2030078\";\"Maanit\";\"ascii\"\n\"2030078\";\"Hishig-Ondor\";\"other\"\n\"2030078\";\"Hishig-Öndör\";\"other\"\n\"2030078\";\"Khishig-Ondor\";\"other\"\n\"2030078\";\"Khishig-Öndör\";\"other\"\n\"2030078\";\"Khushig-Undehr\";\"other\"\n\"2030078\";\"Хушиг-Ундэр\";\"other\"\n\"2030079\";\"Maanĭt\";\"main\"\n\"2030079\";\"Maanit\";\"ascii\"\n\"2030079\";\"Bayan\";\"other\"\n\"2030079\";\"Bayan Somon\";\"other\"\n\"2030079\";\"Bayan Suma\";\"other\"\n\"2030079\";\"Bayan Uula Suma\";\"other\"\n\"2030079\";\"Bayan ula sumu\";\"other\"\n\"2030079\";\"Bayan uula\";\"other\"\n\"2030079\";\"Bayan-Ula\";\"other\"\n\"2030079\";\"Borchunsuma\";\"other\"\n\"2030079\";\"Manita\";\"other\"\n\"2030085\";\"Lün\";\"main\"\n\"2030085\";\"Lun\";\"ascii\"\n\"2030085\";\"Lun Suma\";\"other\"\n\"2030085\";\"Lung\";\"other\"\n\"2030085\";\"Lung Somon\";\"other\"\n\"2030085\";\"Lung Suma\";\"other\"\n\"2030085\";\"Lung Ula\";\"other\"\n\"2030085\";\"Lung sumu\";\"other\"\n\"2030085\";\"Lyun somon\";\"other\"\n\"2030085\";\"Lyung Somon\";\"other\"\n\"2030085\";\"Lün Suma\";\"other\"\n\"2030085\";\"Lüng Suma\";\"other\"\n\"2030085\";\"Lüng sumu\";\"other\"\n\"2030085\";\"Rungein-buran\";\"other\"\n\"2030085\";\"Sujji\";\"other\"\n\"2030159\";\"Javhlant\";\"main\"\n\"2030159\";\"Sumber\";\"other\"\n\"2030159\";\"Sümber\";\"other\"\n\"2030161\";\"Javarthushuu\";\"main\"\n\"2030161\";\"Bayan Ula\";\"other\"\n\"2030161\";\"Bayan Ula Sume\";\"other\"\n\"2030161\";\"Bayan Uula Somon\";\"other\"\n\"2030161\";\"Bayan Uula Suma\";\"other\"\n\"2030161\";\"Bayan ura\";\"other\"\n\"2030161\";\"Bayan uula\";\"other\"\n\"2030161\";\"Bayan uula sumu\";\"other\"\n\"2030161\";\"Bayan-Uul\";\"other\"\n\"2030161\";\"Bayan-ula-Somon\";\"other\"\n\"2030170\";\"Jargalant\";\"main\"\n\"2030170\";\"Dzhargalant\";\"other\"\n\"2030170\";\"Dzuunburen\";\"other\"\n\"2030170\";\"Dzüünbüren\";\"other\"\n\"2030170\";\"Джаргалант\";\"other\"\n\"2030171\";\"Jargalant\";\"main\"\n\"2030171\";\"Javhlant\";\"other\"\n\"2030172\";\"Jargalant\";\"main\"\n\"2030172\";\"Tomor Buluk Sume\";\"other\"\n\"2030172\";\"Tomor bulag Sumu\";\"other\"\n\"2030172\";\"Tomorbulag\";\"other\"\n\"2030172\";\"Tumur-Bulag\";\"other\"\n\"2030172\";\"Tumur-Bulak Somon\";\"other\"\n\"2030172\";\"Tömör Buluk Sume\";\"other\"\n\"2030172\";\"Tömör bulag Sumu\";\"other\"\n\"2030172\";\"Tömörbulag\";\"other\"\n\"2030173\";\"Jargalant\";\"main\"\n\"2030173\";\"Chzhirgalantuin-sang\";\"other\"\n\"2030173\";\"Dzhargalant\";\"other\"\n\"2030173\";\"Jirgalantayn Sang\";\"other\"\n\"2030173\";\"Джаргалант\";\"other\"\n\"2030175\";\"Jargalant\";\"main\"\n\"2030175\";\"Battsengel\";\"other\"\n\"2030175\";\"Tamiriin Huryee\";\"other\"\n\"2030175\";\"Tamiriin Hüryee\";\"other\"\n\"2030175\";\"Tamiriin Khure\";\"other\"\n\"2030176\";\"Jargalant\";\"main\"\n\"2030176\";\"Chulutuin khid\";\"other\"\n\"2030176\";\"Chuluut\";\"other\"\n\"2030176\";\"Chuluutayn Hiid\";\"other\"\n\"2030176\";\"Tsuretoin-fure\";\"other\"\n\"2030208\";\"Ingettolgoy\";\"main\"\n\"2030208\";\"Sehlehngeh\";\"other\"\n\"2030208\";\"Selenga-Burin\";\"other\"\n\"2030208\";\"Selenge\";\"other\"\n\"2030208\";\"Selenge Burin Suma\";\"other\"\n\"2030208\";\"Selenge Bürin Suma\";\"other\"\n\"2030208\";\"Selenge burin\";\"other\"\n\"2030208\";\"Selenge burin sumu\";\"other\"\n\"2030208\";\"Selenge bürin\";\"other\"\n\"2030208\";\"Selenge bürin sumu\";\"other\"\n\"2030208\";\"Selenge-Burin Somon\";\"other\"\n\"2030208\";\"Сэлэнгэ\";\"other\"\n\"2030218\";\"Ihsüüj\";\"main\"\n\"2030218\";\"Ihsueuej\";\"ascii\"\n\"2030218\";\"Bayanchandmani\";\"other\"\n\"2030218\";\"Bayanchandmanĭ\";\"other\"\n\"2030251\";\"Ihbulag\";\"main\"\n\"2030251\";\"Haan Bogdo Suma\";\"other\"\n\"2030251\";\"Han bogda\";\"other\"\n\"2030251\";\"Han bogda sumu\";\"other\"\n\"2030251\";\"Hanbogd\";\"other\"\n\"2030251\";\"Khan Bogda\";\"other\"\n\"2030251\";\"Khan Bogda Somon\";\"other\"\n\"2030251\";\"Khan Bogdo Sume\";\"other\"\n\"2030251\";\"Khan-Bogdo\";\"other\"\n\"2030251\";\"Khanbogd\";\"other\"\n\"2030251\";\"Tsagan Khamar\";\"other\"\n\"2030296\";\"Huurch\";\"main\"\n\"2030296\";\"Khurch\";\"other\"\n\"2030296\";\"Tsagaannuur\";\"other\"\n\"2030296\";\"Tsagan-Nur\";\"other\"\n\"2030296\";\"Хурч\";\"other\"\n\"2030316\";\"Hutag\";\"main\"\n\"2030316\";\"Hutag Ondor Suma\";\"other\"\n\"2030316\";\"Hutag Öndör Suma\";\"other\"\n\"2030316\";\"Hutag-Ondor\";\"other\"\n\"2030316\";\"Hutag-Öndör\";\"other\"\n\"2030316\";\"Hutug Ondor\";\"other\"\n\"2030316\";\"Hutug undur sumu\";\"other\"\n\"2030316\";\"Hutug Öndör\";\"other\"\n\"2030316\";\"Khitug-Under\";\"other\"\n\"2030316\";\"Khitug-Undur somon\";\"other\"\n\"2030316\";\"Khutag\";\"other\"\n\"2030316\";\"Khutug Under\";\"other\"\n\"2030316\";\"Khutug Undur Sume\";\"other\"\n\"2030316\";\"Khutug-Undur-Sumu\";\"other\"\n\"2030316\";\"Khutug-undur somon\";\"other\"\n\"2030316\";\"Хутаг\";\"other\"\n\"2030368\";\"Hüremt\";\"main\"\n\"2030368\";\"Huremt\";\"ascii\"\n\"2030368\";\"Hueremt\";\"other\"\n\"2030368\";\"Saikhan\";\"other\"\n\"2030368\";\"Sajkhan\";\"other\"\n\"2030368\";\"Sayhan\";\"other\"\n\"2030368\";\"Sayhan Suma\";\"other\"\n\"2030368\";\"Sayhan sumu\";\"other\"\n\"2030368\";\"Saykhan\";\"other\"\n\"2030368\";\"Saykhan somon\";\"other\"\n\"2030368\";\"Сайхан\";\"other\"\n\"2030369\";\"Hüremt\";\"main\"\n\"2030369\";\"Huremt\";\"ascii\"\n\"2030369\";\"Taragt\";\"other\"\n\"2030369\";\"Targat\";\"other\"\n\"2030369\";\"Targata\";\"other\"\n\"2030369\";\"Targata Suma\";\"other\"\n\"2030369\";\"Targatu\";\"other\"\n\"2030369\";\"Targatu somon\";\"other\"\n\"2030369\";\"Targatu sumu\";\"other\"\n\"2030392\";\"Hulstay\";\"main\"\n\"2030392\";\"Choibalsan\";\"other\"\n\"2030392\";\"Choybalsan\";\"other\"\n\"2030392\";\"Choïbalsan\";\"other\"\n\"2030392\";\"Khulstaj\";\"other\"\n\"2030392\";\"Хулстай\";\"other\"\n\"2030427\";\"Hujirt\";\"main\"\n\"2030427\";\"Tsetserleg\";\"other\"\n\"2030427\";\"Tsetserlig\";\"other\"\n\"2030427\";\"Tsetserlig Suma\";\"other\"\n\"2030427\";\"Tsetserlig somon\";\"other\"\n\"2030427\";\"Tsetserlig sumu\";\"other\"\n\"2030428\";\"Hujirt\";\"main\"\n\"2030428\";\"Haluun Usanii\";\"other\"\n\"2030428\";\"Haluun Usanii Suma\";\"other\"\n\"2030428\";\"Hujirtay\";\"other\"\n\"2030428\";\"Khalun Usuni Somon\";\"other\"\n\"2030428\";\"Khudzhirt\";\"other\"\n\"2030428\";\"Khudzhurt\";\"other\"\n\"2030428\";\"Khujirt\";\"other\"\n\"2030428\";\"Khuzhirt\";\"other\"\n\"2030429\";\"Hujirt\";\"main\"\n\"2030429\";\"Del'ger han sumu\";\"other\"\n\"2030429\";\"Del'ger-khan-Sumu\";\"other\"\n\"2030429\";\"Delger Haan Suma\";\"other\"\n\"2030429\";\"Delger han\";\"other\"\n\"2030429\";\"Delger somon\";\"other\"\n\"2030429\";\"Delger-khan\";\"other\"\n\"2030429\";\"Delger-khan Somon\";\"other\"\n\"2030429\";\"Delgerhaan\";\"other\"\n\"2030429\";\"Delgerkhaan\";\"other\"\n\"2030429\";\"Del’ger han sumu\";\"other\"\n\"2030429\";\"Del’ger-khan-Sumu\";\"other\"\n\"2030429\";\"Derigeri han\";\"other\"\n\"2030465\";\"Hövüün\";\"main\"\n\"2030465\";\"Hovuun\";\"ascii\"\n\"2030465\";\"Noin Somon\";\"other\"\n\"2030465\";\"Noyan\";\"other\"\n\"2030465\";\"Noyan Somon\";\"other\"\n\"2030465\";\"Noyan Sume\";\"other\"\n\"2030465\";\"Noyan sumu\";\"other\"\n\"2030465\";\"Noyen\";\"other\"\n\"2030465\";\"Noyin Somon\";\"other\"\n\"2030465\";\"Noyon\";\"other\"\n\"2030465\";\"Noyon Suma\";\"other\"\n\"2030465\";\"Noyën\";\"other\"\n\"2030470\";\"Hövsgöl\";\"main\"\n\"2030470\";\"Hovsgol\";\"ascii\"\n\"2030470\";\"Hobsogol Suma\";\"other\"\n\"2030470\";\"Hobsogol Sumu\";\"other\"\n\"2030470\";\"Hubsugul sumu\";\"other\"\n\"2030470\";\"Höbsögöl Suma\";\"other\"\n\"2030470\";\"Höbsögöl Sumu\";\"other\"\n\"2030470\";\"Khowsgol\";\"other\"\n\"2030470\";\"Khubsugul\";\"other\"\n\"2030470\";\"Khubsugul Somon\";\"other\"\n\"2030470\";\"Khubsugul Sume\";\"other\"\n\"2030470\";\"Khubsugul-Sumu\";\"other\"\n\"2030470\";\"Khuvsgel\";\"other\"\n\"2030470\";\"Khuvsget\";\"other\"\n\"2030470\";\"Khöwsgöl\";\"other\"\n\"2030473\";\"Hovd\";\"main\"\n\"2030473\";\"Hobdo\";\"other\"\n\"2030473\";\"Hobdo Suma\";\"other\"\n\"2030473\";\"Hobdo sumu\";\"other\"\n\"2030473\";\"Khobdo\";\"other\"\n\"2030473\";\"Khobdo somon\";\"other\"\n\"2030473\";\"Khordo Somon\";\"other\"\n\"2030473\";\"Khowd\";\"other\"\n\"2030473\";\"Kobdo\";\"other\"\n\"2030473\";\"Кобдо\";\"other\"\n\"2030474\";\"Hovd\";\"main\"\n\"2030474\";\"Bogd\";\"other\"\n\"2030474\";\"Khovd\";\"other\"\n\"2030474\";\"Ховд\";\"other\"\n\"2030477\";\"Hotont\";\"main\"\n\"2030477\";\"Hotantu sumu\";\"other\"\n\"2030477\";\"Hotonto\";\"other\"\n\"2030477\";\"Hotonto Suma\";\"other\"\n\"2030477\";\"Hotontu\";\"other\"\n\"2030477\";\"Khotont\";\"other\"\n\"2030477\";\"Khotontu Somon\";\"other\"\n\"2030502\";\"Höshööt\";\"main\"\n\"2030502\";\"Hoshoot\";\"ascii\"\n\"2030502\";\"Hoeshoeoet\";\"other\"\n\"2030502\";\"Oldzeyte\";\"other\"\n\"2030502\";\"Oldziit\";\"other\"\n\"2030502\";\"Oldziyt\";\"other\"\n\"2030502\";\"Uldzij\";\"other\"\n\"2030502\";\"Ultszeytu\";\"other\"\n\"2030502\";\"Öldzeyte\";\"other\"\n\"2030502\";\"Öldziyt\";\"other\"\n\"2030502\";\"Öldziït\";\"other\"\n\"2030502\";\"Улдзий\";\"other\"\n\"2030512\";\"Horiult\";\"main\"\n\"2030512\";\"Bogd\";\"other\"\n\"2030512\";\"Bogda Uula\";\"other\"\n\"2030512\";\"Bogda ula somon\";\"other\"\n\"2030512\";\"Bogda ula sumu\";\"other\"\n\"2030512\";\"Bogdo Ula Sume\";\"other\"\n\"2030512\";\"Bogdo Uula Suma\";\"other\"\n\"2030512\";\"Bogdo-Ula\";\"other\"\n\"2030512\";\"Bogudo-kara\";\"other\"\n\"2030525\";\"Höövör\";\"main\"\n\"2030525\";\"Hoovor\";\"ascii\"\n\"2030525\";\"Tsagaan-Ovoo\";\"other\"\n\"2030525\";\"Tsagaan-Owoo\";\"other\"\n\"2030526\";\"Höövör\";\"main\"\n\"2030526\";\"Hoovor\";\"ascii\"\n\"2030526\";\"Barun Bayan Ulan somon\";\"other\"\n\"2030526\";\"Baruun Bayan Uula Suma\";\"other\"\n\"2030526\";\"Baruunbayan-Ulaan\";\"other\"\n\"2030526\";\"Bayan Ula Sume\";\"other\"\n\"2030526\";\"Bayan Uula Suma\";\"other\"\n\"2030526\";\"Bayan Uula Sumu\";\"other\"\n\"2030526\";\"Bayan ula sumu\";\"other\"\n\"2030526\";\"Bayan uula\";\"other\"\n\"2030526\";\"Bayan-ura\";\"other\"\n\"2030531\";\"Hoolt\";\"main\"\n\"2030531\";\"Togorig\";\"other\"\n\"2030531\";\"Togorig Nuur Suma\";\"other\"\n\"2030531\";\"Togorig Suma\";\"other\"\n\"2030531\";\"Togorig nuur\";\"other\"\n\"2030531\";\"Togrog\";\"other\"\n\"2030531\";\"Tuguric Somon\";\"other\"\n\"2030531\";\"Tugurig Somon\";\"other\"\n\"2030531\";\"Tugurig-Nur\";\"other\"\n\"2030531\";\"Tugurig-Nur-Somon\";\"other\"\n\"2030531\";\"Tugurik\";\"other\"\n\"2030531\";\"Tugurik Somon\";\"other\"\n\"2030531\";\"Tugurik nuur sumu\";\"other\"\n\"2030531\";\"Tögrög\";\"other\"\n\"2030531\";\"Tögörig\";\"other\"\n\"2030531\";\"Tögörig Nuur Suma\";\"other\"\n\"2030531\";\"Tögörig Suma\";\"other\"\n\"2030531\";\"Tögörig nuur\";\"other\"\n\"2030531\";\"Tügürik nuur sumu\";\"other\"\n\"2030570\";\"Hongor\";\"main\"\n\"2030570\";\"Del'gerehu\";\"other\"\n\"2030570\";\"Del'gir Somon\";\"other\"\n\"2030570\";\"Delger\";\"other\"\n\"2030570\";\"Delger Somon\";\"other\"\n\"2030570\";\"Delger Suma\";\"other\"\n\"2030570\";\"Delger-khid somon\";\"other\"\n\"2030570\";\"Delgereh\";\"other\"\n\"2030570\";\"Delgerehe Suma\";\"other\"\n\"2030570\";\"Delgerehu sumu\";\"other\"\n\"2030570\";\"Delgerehü sumu\";\"other\"\n\"2030570\";\"Delgerekh\";\"other\"\n\"2030570\";\"Delgerekhu Sume\";\"other\"\n\"2030570\";\"Del’gerehu\";\"other\"\n\"2030570\";\"Del’gir Somon\";\"other\"\n\"2030572\";\"Hongor\";\"main\"\n\"2030572\";\"Naran\";\"other\"\n\"2030646\";\"Höhöö\";\"main\"\n\"2030646\";\"Hohoo\";\"ascii\"\n\"2030646\";\"Chandman Ondor\";\"other\"\n\"2030646\";\"Chandman Öndör\";\"other\"\n\"2030646\";\"Chandman'\";\"other\"\n\"2030646\";\"Chandman'-Undehr\";\"other\"\n\"2030646\";\"Chandmani-Ondor\";\"other\"\n\"2030646\";\"Chandmanĭ-Öndör\";\"other\"\n\"2030646\";\"Chandman’\";\"other\"\n\"2030646\";\"Chindamani\";\"other\"\n\"2030646\";\"Chindamani Ondor\";\"other\"\n\"2030646\";\"Chindamani Ondor Suma\";\"other\"\n\"2030646\";\"Chindamani Suma\";\"other\"\n\"2030646\";\"Chindamani somon\";\"other\"\n\"2030646\";\"Chindamani undur sumu\";\"other\"\n\"2030646\";\"Chindamani Öndör\";\"other\"\n\"2030646\";\"Chindamani Öndör Suma\";\"other\"\n\"2030646\";\"Chindamani ündür sumu\";\"other\"\n\"2030646\";\"Chindamani-Undur\";\"other\"\n\"2030646\";\"Hoehoeoe\";\"other\"\n\"2030646\";\"Undur Sume\";\"other\"\n\"2030646\";\"Чандмань-Ундэр\";\"other\"\n\"2030696\";\"Höhbürd\";\"main\"\n\"2030696\";\"Hohburd\";\"ascii\"\n\"2030696\";\"Bayan-Ovoo\";\"other\"\n\"2030696\";\"Bayan-Owoo\";\"other\"\n\"2030764\";\"Herlen\";\"main\"\n\"2030764\";\"Kherlen\";\"other\"\n\"2030813\";\"Haylaastay\";\"main\"\n\"2030813\";\"Sakhe Bataar\";\"other\"\n\"2030813\";\"Suhbaatar\";\"other\"\n\"2030813\";\"Sukhbaatar\";\"other\"\n\"2030813\";\"Sukhe Batur\";\"other\"\n\"2030813\";\"Sukhe-Bator\";\"other\"\n\"2030813\";\"Sühbaatar\";\"other\"\n\"2030813\";\"Sükhbaatar\";\"other\"\n\"2030841\";\"Havirga\";\"main\"\n\"2030841\";\"Elesete\";\"other\"\n\"2030841\";\"Eleste\";\"other\"\n\"2030841\";\"Eleste Somon\";\"other\"\n\"2030841\";\"Ongon\";\"other\"\n\"2030841\";\"Ongon Elesu\";\"other\"\n\"2030841\";\"Ongon Somon\";\"other\"\n\"2030841\";\"Ongon Suma\";\"other\"\n\"2030841\";\"Ongon Suma Elesete\";\"other\"\n\"2030841\";\"Ongon sumu\";\"other\"\n\"2030849\";\"Hatavch\";\"main\"\n\"2030849\";\"Haldzan\";\"other\"\n\"2030849\";\"Khaldzhan\";\"other\"\n\"2030851\";\"Hatansuudal\";\"main\"\n\"2030851\";\"Bayanleg\";\"other\"\n\"2030851\";\"Legiin Goliin Horshoo\";\"other\"\n\"2030851\";\"Legin golin khorsho\";\"other\"\n\"2030851\";\"Legin golin yurt\";\"other\"\n\"2030851\";\"Lieh-k\\\"o\";\"other\"\n\"2030851\";\"Lieh-k”o\";\"other\"\n\"2030890\";\"Hashaat\";\"main\"\n\"2030890\";\"Del'ger-khangay\";\"other\"\n\"2030890\";\"Deleger Khangai Somon\";\"other\"\n\"2030890\";\"Delger Hangay Suma\";\"other\"\n\"2030890\";\"Delger Khaigay Somon\";\"other\"\n\"2030890\";\"Delger Khangai\";\"other\"\n\"2030890\";\"Delger Khangay Somon\";\"other\"\n\"2030890\";\"Delger hangay sumu\";\"other\"\n\"2030890\";\"Delgerhangay\";\"other\"\n\"2030890\";\"Derigeru-hangai\";\"other\"\n\"2030915\";\"Orhon\";\"main\"\n\"2030915\";\"Harosha\";\"other\"\n\"2030915\";\"Orkhon\";\"other\"\n\"2030915\";\"Орхон\";\"other\"\n\"2030927\";\"Harhorin\";\"main\"\n\"2030927\";\"Kharkhorin\";\"other\"\n\"2030927\";\"Хархорин\";\"other\"\n\"2030996\";\"Haraat\";\"main\"\n\"2030996\";\"Tsagaan Delger Suma\";\"other\"\n\"2030996\";\"Tsagaan del'ger sumu\";\"other\"\n\"2030996\";\"Tsagaan del’ger sumu\";\"other\"\n\"2030996\";\"Tsagaandelger\";\"other\"\n\"2030996\";\"Tsagan Delger\";\"other\"\n\"2030996\";\"Tsagan Delger Somon\";\"other\"\n\"2030996\";\"Tsagan-Del'ger-Sumu\";\"other\"\n\"2030996\";\"Tsagan-Del’ger-Sumu\";\"other\"\n\"2031016\";\"Hanhöhiy\";\"main\"\n\"2031016\";\"Hanhohiy\";\"ascii\"\n\"2031016\";\"Tumentsogt\";\"other\"\n\"2031016\";\"Tümentsogt\";\"other\"\n\"2031088\";\"Hajuu-Us\";\"main\"\n\"2031088\";\"Govi-Ugtaal\";\"other\"\n\"2031088\";\"Govĭ-Ugtaal\";\"other\"\n\"2031088\";\"Gow'-Ugtaal\";\"other\"\n\"2031088\";\"Ugtaal\";\"other\"\n\"2031088\";\"Ugtaal Suma\";\"other\"\n\"2031088\";\"Ugtaal sumu\";\"other\"\n\"2031088\";\"Ukhtal\";\"other\"\n\"2031088\";\"Ukhtal Somon\";\"other\"\n\"2031357\";\"Erhet\";\"main\"\n\"2031357\";\"Mogod\";\"other\"\n\"2031357\";\"Mogod Suma\";\"other\"\n\"2031357\";\"Mogot\";\"other\"\n\"2031357\";\"Mogot somon\";\"other\"\n\"2031357\";\"Mogot sumu\";\"other\"\n\"2031357\";\"Могод\";\"other\"\n\"2031368\";\"Ergel\";\"main\"\n\"2031368\";\"Hatan Bulag Suma\";\"other\"\n\"2031368\";\"Hatanbulag\";\"other\"\n\"2031368\";\"Hatau Bulag Suma\";\"other\"\n\"2031368\";\"Haton bulag sumu\";\"other\"\n\"2031368\";\"Hatun Bulag\";\"other\"\n\"2031368\";\"Hatün Bulag\";\"other\"\n\"2031368\";\"Khatan-Bulak\";\"other\"\n\"2031368\";\"Khatanbulag\";\"other\"\n\"2031368\";\"Khaton Buluk Sume\";\"other\"\n\"2031368\";\"Khaton-Bulag-Sumu\";\"other\"\n\"2031368\";\"Khatun Bulak\";\"other\"\n\"2031368\";\"Khatun-bulak Somon\";\"other\"\n\"2031368\";\"Khatyn-bulak somon\";\"other\"\n\"2031374\";\"Ereencav\";\"main\"\n\"2031374\";\"Ereentsaw\";\"other\"\n\"2031374\";\"Ereentsay\";\"other\"\n\"2031374\";\"Eren-Tsav\";\"other\"\n\"2031374\";\"Erentsab\";\"other\"\n\"2031374\";\"Erientsab\";\"other\"\n\"2031374\";\"Eryeen Tsab\";\"other\"\n\"2031374\";\"Irintsabu Kaihyo\";\"other\"\n\"2031374\";\"Irïntsābu Kaihyō\";\"other\"\n\"2031402\";\"Erdenetsogt\";\"main\"\n\"2031402\";\"Erdeni Tsogto Suma\";\"other\"\n\"2031402\";\"Erdeni Tsogtu\";\"other\"\n\"2031402\";\"Erdeni Tsogtu Somon\";\"other\"\n\"2031402\";\"Erdeni Tsogtu Sume\";\"other\"\n\"2031402\";\"Erdeni tsogtu sumu\";\"other\"\n\"2031403\";\"Erdenetsogt\";\"main\"\n\"2031403\";\"Bayan Obo\";\"other\"\n\"2031403\";\"Bayan Oboo Suma\";\"other\"\n\"2031403\";\"Bayan obo Somon\";\"other\"\n\"2031403\";\"Bayan-Ovoo\";\"other\"\n\"2031403\";\"Bayan-Owoo\";\"other\"\n\"2031405\";\"Erdenet\";\"main\"\n\"2031405\";\"Ehrdehneht\";\"other\"\n\"2031405\";\"Ehrdehneht khot\";\"other\"\n\"2031405\";\"Ehrdenet\";\"other\"\n\"2031405\";\"e er deng te\";\"other\"\n\"2031405\";\"eleudeneteu\";\"other\"\n\"2031405\";\"Эрденет\";\"other\"\n\"2031405\";\"Эрдэнэт\";\"other\"\n\"2031405\";\"Эрдэнэт хот\";\"other\"\n\"2031405\";\"ארדנט\";\"other\"\n\"2031405\";\"额尔登特\";\"other\"\n\"2031405\";\"에르데네트\";\"other\"\n\"2031408\";\"Eg-Uur\";\"main\"\n\"2031408\";\"Ehrdehneh-Bulgan\";\"other\"\n\"2031408\";\"Erdenebulgan\";\"other\"\n\"2031408\";\"Erdeni Bulagan Suma\";\"other\"\n\"2031408\";\"Erdeni Bulagan Sume\";\"other\"\n\"2031408\";\"Erdeni bulagan sumu\";\"other\"\n\"2031408\";\"Erdeni-Bulagan\";\"other\"\n\"2031408\";\"Erdeni-Bulgan Somon\";\"other\"\n\"2031408\";\"Erdeni-bulgai somon\";\"other\"\n\"2031408\";\"Эрдэнэ-Булган\";\"other\"\n\"2031411\";\"Enhtal\";\"main\"\n\"2031411\";\"Ehnkhtal\";\"other\"\n\"2031411\";\"Sant\";\"other\"\n\"2031411\";\"Энхтал\";\"other\"\n\"2031484\";\"Eg\";\"main\"\n\"2031484\";\"Batshireet\";\"other\"\n\"2031484\";\"Batshireht\";\"other\"\n\"2031484\";\"Батширэт\";\"other\"\n\"2031517\";\"Dzuunmod\";\"main\"\n\"2031517\";\"Dzun-mod\";\"other\"\n\"2031517\";\"Dzun-modo\";\"other\"\n\"2031517\";\"Dzuun Modo\";\"other\"\n\"2031517\";\"Zun-Mod\";\"other\"\n\"2031517\";\"Zuunmod\";\"other\"\n\"2031517\";\"Зуунмод\";\"other\"\n\"2031533\";\"Dzüünharaa\";\"main\"\n\"2031533\";\"Dzuunharaa\";\"ascii\"\n\"2031533\";\"DZUNKHARA\";\"other\"\n\"2031533\";\"Dzueuenharaa\";\"other\"\n\"2031533\";\"Dzuunkharaa\";\"other\"\n\"2031533\";\"Dzüünkharaa\";\"other\"\n\"2031533\";\"ДЗУНХАРА\";\"other\"\n\"2031552\";\"Dzüünbulag\";\"main\"\n\"2031552\";\"Dzuunbulag\";\"ascii\"\n\"2031552\";\"Madat\";\"other\"\n\"2031552\";\"Madat sumu\";\"other\"\n\"2031552\";\"Mamat-Somon\";\"other\"\n\"2031552\";\"Matad\";\"other\"\n\"2031552\";\"Matad Suma\";\"other\"\n\"2031552\";\"Matad Sume\";\"other\"\n\"2031552\";\"Matad somon\";\"other\"\n\"2031552\";\"Matat\";\"other\"\n\"2031552\";\"Matat Somon\";\"other\"\n\"2031553\";\"Dzüünbulag\";\"main\"\n\"2031553\";\"Dzuunbulag\";\"ascii\"\n\"2031553\";\"Ul'-bain-munku Somon\";\"other\"\n\"2031553\";\"Ul'bayn Munku Somon\";\"other\"\n\"2031553\";\"Ula bayan monho Sumu\";\"other\"\n\"2031553\";\"Ula bayan mönhö Sumu\";\"other\"\n\"2031553\";\"Ula-Bayan-Munkhu\";\"other\"\n\"2031553\";\"Ul’-bain-munku Somon\";\"other\"\n\"2031553\";\"Ul’bayn Munku Somon\";\"other\"\n\"2031553\";\"Uula Bayan Monho Suma\";\"other\"\n\"2031553\";\"Uula Bayan Mönhö Suma\";\"other\"\n\"2031553\";\"Uula bayan monho\";\"other\"\n\"2031553\";\"Uula bayan mönhö\";\"other\"\n\"2031553\";\"Uulbayan\";\"other\"\n\"2031553\";\"Uulbayan Monh\";\"other\"\n\"2031553\";\"Uulbayan Mönh\";\"other\"\n\"2031601\";\"Dzogsool\";\"main\"\n\"2031601\";\"Bayan Tsagaan Suma\";\"other\"\n\"2031601\";\"Bayan Tsagaan Sumu\";\"other\"\n\"2031601\";\"Bayan Tsagan Somon\";\"other\"\n\"2031601\";\"Bayan-Tsagan\";\"other\"\n\"2031601\";\"Bayantsagaan\";\"other\"\n\"2031613\";\"Dzelter\";\"main\"\n\"2031613\";\"Tsagaannuur\";\"other\"\n\"2031613\";\"Tushig\";\"other\"\n\"2031613\";\"Tüshig\";\"other\"\n\"2031613\";\"Zehltehr\";\"other\"\n\"2031613\";\"Зэлтэр\";\"other\"\n\"2031615\";\"Dzegstey\";\"main\"\n\"2031615\";\"Baisakhlin\";\"other\"\n\"2031615\";\"Baissakly\";\"other\"\n\"2031615\";\"Baysakhlin\";\"other\"\n\"2031615\";\"Baysakhlyn-khure\";\"other\"\n\"2031615\";\"K'u-lieh-pai-sa-ho-lin\";\"other\"\n\"2031615\";\"Kure Baysakhlyn\";\"other\"\n\"2031615\";\"Kure Beissachlin\";\"other\"\n\"2031615\";\"Kure-baisaharin\";\"other\"\n\"2031615\";\"Kure-baisaharïn\";\"other\"\n\"2031615\";\"Ogiinuur\";\"other\"\n\"2031615\";\"Ogiynuur\";\"other\"\n\"2031615\";\"Pai-sa-ho-lin\";\"other\"\n\"2031615\";\"Paisafurin-kure\";\"other\"\n\"2031615\";\"Paisafurïn-kure\";\"other\"\n\"2031615\";\"Ugey\";\"other\"\n\"2031615\";\"Ugey Camp\";\"other\"\n\"2031615\";\"Ugey Stanok\";\"other\"\n\"2031615\";\"Ögiynuur\";\"other\"\n\"2031615\";\"Ögïïnuur\";\"other\"\n\"2031615\";\"Ügey\";\"other\"\n\"2031704\";\"Dzaanhoshuu\";\"main\"\n\"2031704\";\"Dzaanhushuu\";\"other\"\n\"2031704\";\"Ihe Tamir\";\"other\"\n\"2031704\";\"Ihtamir\";\"other\"\n\"2031704\";\"Ikh-Tamire\";\"other\"\n\"2031704\";\"Ikhe Tamir Sume\";\"other\"\n\"2031704\";\"Ikhe Tamiriin somon\";\"other\"\n\"2031704\";\"Ikhe-Tamir\";\"other\"\n\"2031704\";\"Ikhtamir\";\"other\"\n\"2031704\";\"Yekhe Tamir\";\"other\"\n\"2031704\";\"Yihe Tamiriin Suma\";\"other\"\n\"2031728\";\"Dund-Urt\";\"main\"\n\"2031728\";\"Bayan Tsogto Suma\";\"other\"\n\"2031728\";\"Bayan Tsogtu\";\"other\"\n\"2031728\";\"Bayan Tsogtu Somon\";\"other\"\n\"2031728\";\"Bayan tsogtu sumu\";\"other\"\n\"2031728\";\"Bayan-tsokuto\";\"other\"\n\"2031728\";\"Bayantsogt\";\"other\"\n\"2031741\";\"Dundbürd\";\"main\"\n\"2031741\";\"Dundburd\";\"ascii\"\n\"2031741\";\"Bata Chorboin Khid\";\"other\"\n\"2031741\";\"Bata Chorboyn Khid\";\"other\"\n\"2031741\";\"Bata Chorböyn Khid\";\"other\"\n\"2031741\";\"Bata Norboiin Hiid\";\"other\"\n\"2031741\";\"Bata Norboyn Khid\";\"other\"\n\"2031741\";\"Batnorov\";\"other\"\n\"2031741\";\"Batnorow\";\"other\"\n\"2031741\";\"Batu Norb'oin hurie\";\"other\"\n\"2031741\";\"Batu Norb'oin hürie\";\"other\"\n\"2031741\";\"Batu Norboin Khure\";\"other\"\n\"2031741\";\"Batu-Norboiin hurie\";\"other\"\n\"2031741\";\"Batu-Norboiin hürie\";\"other\"\n\"2031741\";\"Batu-Norboyn-Khure\";\"other\"\n\"2031741\";\"Batu-norubo\";\"other\"\n\"2031832\";\"Doloon\";\"main\"\n\"2031832\";\"Tsogt-Ovoo\";\"other\"\n\"2031832\";\"Tsogt-Owoo\";\"other\"\n\"2031906\";\"Delgerhaan\";\"main\"\n\"2031906\";\"Dehlgehrkhan\";\"other\"\n\"2031906\";\"Shaamar\";\"other\"\n\"2031906\";\"Shamar\";\"other\"\n\"2031906\";\"Shamor\";\"other\"\n\"2031906\";\"Дэлгэрхан\";\"other\"\n\"2031946\";\"Dashbalbar\";\"main\"\n\"2031946\";\"Dashi Balbar Suma\";\"other\"\n\"2031946\";\"Dashi Balbariin Somon\";\"other\"\n\"2031946\";\"Dashi Balbaron Somon\";\"other\"\n\"2031946\";\"Dashi balbar sumu\";\"other\"\n\"2031946\";\"Dashi-Balbaryn-Somon\";\"other\"\n\"2031946\";\"Dashibalbar\";\"other\"\n\"2031946\";\"Дашбалбар\";\"other\"\n\"2031964\";\"Darhan\";\"main\"\n\"2031964\";\"Darchan\";\"other\"\n\"2031964\";\"Darkhan\";\"other\"\n\"2031964\";\"da er han\";\"other\"\n\"2031964\";\"Дархан\";\"other\"\n\"2031964\";\"דרחאן\";\"other\"\n\"2031964\";\"达尔汗\";\"other\"\n\"2031965\";\"Darhan\";\"main\"\n\"2031965\";\"Boorgu hangay sumu\";\"other\"\n\"2031965\";\"Bureg Hangay Suma\";\"other\"\n\"2031965\";\"Bureghangay\";\"other\"\n\"2031965\";\"Buregkhangai\";\"other\"\n\"2031965\";\"Burg somon\";\"other\"\n\"2031965\";\"Burkhe-khangay\";\"other\"\n\"2031965\";\"Burug hangay\";\"other\"\n\"2031965\";\"Böörgu hangay sumu\";\"other\"\n\"2031965\";\"Büreg Hangay Suma\";\"other\"\n\"2031965\";\"Büreghangay\";\"other\"\n\"2031965\";\"Büregkhangaï\";\"other\"\n\"2031965\";\"Bürüg hangay\";\"other\"\n\"2031966\";\"Darhan\";\"main\"\n\"2031966\";\"Darhan Suma\";\"other\"\n\"2031966\";\"Darhan sumu\";\"other\"\n\"2031966\";\"Darkhan\";\"other\"\n\"2031966\";\"Darkhan Somon\";\"other\"\n\"2031966\";\"Darkhan Sume\";\"other\"\n\"2031998\";\"Dalay\";\"main\"\n\"2031998\";\"Baishinte\";\"other\"\n\"2031998\";\"Baishintu\";\"other\"\n\"2031998\";\"Bayan Dalai Baishintu Khit\";\"other\"\n\"2031998\";\"Bayandalai\";\"other\"\n\"2031998\";\"Bayandalay\";\"other\"\n\"2031998\";\"Bayandalaï\";\"other\"\n\"2031998\";\"Bayshinta\";\"other\"\n\"2031998\";\"Bayshinta Hiid\";\"other\"\n\"2031998\";\"Bayshintu\";\"other\"\n\"2031998\";\"Bayshintu hiid\";\"other\"\n\"2031998\";\"Bayshintu khid\";\"other\"\n\"2031998\";\"Bayshintuin hiid\";\"other\"\n\"2031998\";\"Kumirnya Bayshinte\";\"other\"\n\"2031998\";\"Pai-shen-t'ai Miao\";\"other\"\n\"2031998\";\"Vaishinte\";\"other\"\n\"2032007\";\"Dalandzadgad\";\"main\"\n\"2032007\";\"Dalan Dsadagad\";\"other\"\n\"2032007\";\"Dalan Dzadagad\";\"other\"\n\"2032007\";\"Dalan Tszadagad\";\"other\"\n\"2032007\";\"Dalan Tzadagad\";\"other\"\n\"2032007\";\"Dalan-Zadagad\";\"other\"\n\"2032007\";\"Dalanzadgad\";\"other\"\n\"2032007\";\"Daranzagatai\";\"other\"\n\"2032007\";\"Dzadagad\";\"other\"\n\"2032007\";\"Ta-lan-ken-kuo-lo\";\"other\"\n\"2032007\";\"Ta-leng-keng Miao\";\"other\"\n\"2032007\";\"Даланзадгад\";\"other\"\n\"2032050\";\"Choyr\";\"main\"\n\"2032050\";\"Chojr\";\"other\"\n\"2032050\";\"Sumber\";\"other\"\n\"2032050\";\"Sumber Suma\";\"other\"\n\"2032050\";\"Sumbur\";\"other\"\n\"2032050\";\"Sumbur Somon\";\"other\"\n\"2032050\";\"Sumbur Sume\";\"other\"\n\"2032050\";\"Sumbur sumu\";\"other\"\n\"2032050\";\"Sümber\";\"other\"\n\"2032050\";\"Sümber Suma\";\"other\"\n\"2032050\";\"Чойр\";\"other\"\n\"2032054\";\"Choybalsan\";\"main\"\n\"2032054\";\"Bain Tumen\";\"other\"\n\"2032054\";\"Baintomenhashu\";\"other\"\n\"2032054\";\"Baintōmenhashū\";\"other\"\n\"2032054\";\"Bayan Tumen\";\"other\"\n\"2032054\";\"Bayn-Tumen\";\"other\"\n\"2032054\";\"Brin Tumen\";\"other\"\n\"2032054\";\"Choibalsan\";\"other\"\n\"2032054\";\"Choibolsan\";\"other\"\n\"2032054\";\"Chojbalsan\";\"other\"\n\"2032054\";\"Choybolsan\";\"other\"\n\"2032054\";\"Herelen\";\"other\"\n\"2032054\";\"K'o-lu-lun\";\"other\"\n\"2032054\";\"Karulen\";\"other\"\n\"2032054\";\"Kerulen\";\"other\"\n\"2032054\";\"Kerulen Urgo\";\"other\"\n\"2032054\";\"Kerulun\";\"other\"\n\"2032054\";\"Kerulyun\";\"other\"\n\"2032054\";\"Kurulun\";\"other\"\n\"2032054\";\"Kyrylun\";\"other\"\n\"2032054\";\"K’o-lu-lun\";\"other\"\n\"2032054\";\"Pa-yin-t'u-men\";\"other\"\n\"2032054\";\"Pa-yin-t’u-men\";\"other\"\n\"2032054\";\"Sain Beise\";\"other\"\n\"2032054\";\"San Beisa-Urgo\";\"other\"\n\"2032054\";\"San Beise\";\"other\"\n\"2032054\";\"San-beyse\";\"other\"\n\"2032054\";\"Say-Beyse\";\"other\"\n\"2032054\";\"Urgo\";\"other\"\n\"2032054\";\"Чойбалсан\";\"other\"\n\"2032058\";\"Chonogol\";\"main\"\n\"2032058\";\"Chonoyn Gol\";\"other\"\n\"2032058\";\"Erdenetsagaan\";\"other\"\n\"2032058\";\"Yagutszarin-khure\";\"other\"\n\"2032058\";\"Yegudzeri'iin hurie\";\"other\"\n\"2032058\";\"Yeguudzer Hiid\";\"other\"\n\"2032058\";\"Yeguudzeriin Huryee\";\"other\"\n\"2032058\";\"Yegüdzeri’iin hürie\";\"other\"\n\"2032058\";\"Yegüüdzer Hiid\";\"other\"\n\"2032058\";\"Yegüüdzeriin Hüryee\";\"other\"\n\"2032058\";\"Yugodzir'-Khid\";\"other\"\n\"2032058\";\"Yugodzir’-Khid\";\"other\"\n\"2032058\";\"Yugodzyr\";\"other\"\n\"2032058\";\"Yugodzyr-Khid\";\"other\"\n\"2032058\";\"Yugudserin Khure\";\"other\"\n\"2032058\";\"Yugudzeri'iin hurie\";\"other\"\n\"2032058\";\"Yugudzeri'in hurie\";\"other\"\n\"2032058\";\"Yugutszeroyn Khid\";\"other\"\n\"2032058\";\"Yugutszeryn Khid\";\"other\"\n\"2032058\";\"Yugutszeryyn Khid\";\"other\"\n\"2032058\";\"Yugutszeröyn Khid\";\"other\"\n\"2032058\";\"Yugüdzeri’iin hürie\";\"other\"\n\"2032058\";\"Yugüdzeri’in hürie\";\"other\"\n\"2032070\";\"Chandmanĭ\";\"main\"\n\"2032070\";\"Chandmani\";\"ascii\"\n\"2032070\";\"Altanshiree\";\"other\"\n\"2032081\";\"Saynshand\";\"main\"\n\"2032081\";\"Buyant-Uhaa\";\"other\"\n\"2032081\";\"Dalai Sain Shanda\";\"other\"\n\"2032081\";\"Dalay Sayn Shanda\";\"other\"\n\"2032081\";\"Darai Sain Shanda\";\"other\"\n\"2032081\";\"Sain Shanda\";\"other\"\n\"2032081\";\"Sain-Shand\";\"other\"\n\"2032081\";\"Sajnshand\";\"other\"\n\"2032081\";\"Sayn Shanda\";\"other\"\n\"2032081\";\"Sayn-Shenda\";\"other\"\n\"2032081\";\"Сайншанд\";\"other\"\n\"2032085\";\"Buyant\";\"main\"\n\"2032085\";\"Boendosumu\";\"other\"\n\"2032085\";\"Buyanta Suma\";\"other\"\n\"2032085\";\"Buyanton Somon\";\"other\"\n\"2032085\";\"Buyantoyn-Somon\";\"other\"\n\"2032085\";\"Buyantu\";\"other\"\n\"2032085\";\"Buyantu Sume\";\"other\"\n\"2032085\";\"Buyantu sumu\";\"other\"\n\"2032085\";\"Buyantyin-Somon\";\"other\"\n\"2032085\";\"Buyantyn-Somon\";\"other\"\n\"2032085\";\"Buyantyyn somon\";\"other\"\n\"2032085\";\"Buyantön Somon\";\"other\"\n\"2032085\";\"Buyantöyn-Somon\";\"other\"\n\"2032157\";\"Burgaltay\";\"main\"\n\"2032157\";\"Barun-Burehn\";\"other\"\n\"2032157\";\"Barun-Burin Somon\";\"other\"\n\"2032157\";\"Baruun Buriin Suma\";\"other\"\n\"2032157\";\"Baruun Büriin Suma\";\"other\"\n\"2032157\";\"Baruunburen\";\"other\"\n\"2032157\";\"Baruunbüren\";\"other\"\n\"2032157\";\"Buren\";\"other\"\n\"2032157\";\"Burin Suma\";\"other\"\n\"2032157\";\"Burin-Sumu\";\"other\"\n\"2032157\";\"Büren\";\"other\"\n\"2032157\";\"Bürin Suma\";\"other\"\n\"2032157\";\"Барун-Бурэн\";\"other\"\n\"2032191\";\"Bumbat\";\"main\"\n\"2032191\";\"Bayan Ondor Suma\";\"other\"\n\"2032191\";\"Bayan Undur Somon\";\"other\"\n\"2032191\";\"Bayan Öndör Suma\";\"other\"\n\"2032191\";\"Bayan-Ondor\";\"other\"\n\"2032191\";\"Bayan-Undur\";\"other\"\n\"2032191\";\"Bayan-unduru\";\"other\"\n\"2032191\";\"Bayan-Öndör\";\"other\"\n\"2032200\";\"Bulgan\";\"main\"\n\"2032200\";\"Cagan-Ur\";\"other\"\n\"2032200\";\"Tsagaan Uur Suma\";\"other\"\n\"2032200\";\"Tsagaan uure sumu\";\"other\"\n\"2032200\";\"Tsagaan Üür Suma\";\"other\"\n\"2032200\";\"Tsagaan üüre sumu\";\"other\"\n\"2032200\";\"Tsagaan-Uur\";\"other\"\n\"2032200\";\"Tsagaan-Üür\";\"other\"\n\"2032200\";\"Tsagan Ure\";\"other\"\n\"2032200\";\"Tsagan Ure Sume\";\"other\"\n\"2032200\";\"Tsagan-ur somon\";\"other\"\n\"2032200\";\"Цаган-Ур\";\"other\"\n\"2032201\";\"Bulgan\";\"main\"\n\"2032201\";\"BULGAN\";\"other\"\n\"2032201\";\"Bulagan\";\"other\"\n\"2032201\";\"Bulagan Suma\";\"other\"\n\"2032201\";\"Bulagan Sumu\";\"other\"\n\"2032201\";\"Bulagan somon\";\"other\"\n\"2032201\";\"Bulagan-khan\";\"other\"\n\"2032201\";\"Bulgan Han\";\"other\"\n\"2032201\";\"БУЛГАН\";\"other\"\n\"2032201\";\"Булган\";\"other\"\n\"2032202\";\"Bulgan\";\"main\"\n\"2032202\";\"Bulagan Bulag\";\"other\"\n\"2032220\";\"Bulagtay\";\"main\"\n\"2032220\";\"Haderi\";\"other\"\n\"2032220\";\"Huder\";\"other\"\n\"2032220\";\"Hüder\";\"other\"\n\"2032220\";\"Khuderi\";\"other\"\n\"2032220\";\"Kuderi\";\"other\"\n\"2032221\";\"Bulagiyn Denj\";\"main\"\n\"2032221\";\"Bulgan\";\"other\"\n\"2032225\";\"Bulag\";\"main\"\n\"2032225\";\"Tunehl\";\"other\"\n\"2032225\";\"Tunel\";\"other\"\n\"2032225\";\"Tünel\";\"other\"\n\"2032225\";\"Тунэл\";\"other\"\n\"2032226\";\"Bulag\";\"main\"\n\"2032226\";\"Mongon Morito\";\"other\"\n\"2032226\";\"Mongon Morito Somon\";\"other\"\n\"2032226\";\"Mongon Morito Suma\";\"other\"\n\"2032226\";\"Mongon Moritu Sume\";\"other\"\n\"2032226\";\"Mongon moritu\";\"other\"\n\"2032226\";\"Mongonmarit\";\"other\"\n\"2032226\";\"Mungen-Mor't\";\"other\"\n\"2032226\";\"Mungen-Mor’t\";\"other\"\n\"2032226\";\"Mungun Moritu\";\"other\"\n\"2032226\";\"Mungun-Moritu-Somon\";\"other\"\n\"2032226\";\"Mungun-Moritu-Sumu\";\"other\"\n\"2032226\";\"Möngön Morito\";\"other\"\n\"2032226\";\"Möngön Morito Somon\";\"other\"\n\"2032226\";\"Möngön Morito Suma\";\"other\"\n\"2032226\";\"Möngön Moritu Sume\";\"other\"\n\"2032226\";\"Möngön moritu\";\"other\"\n\"2032226\";\"Möngönmarĭt\";\"other\"\n\"2032252\";\"Bugat\";\"main\"\n\"2032252\";\"Бугат\";\"other\"\n\"2032255\";\"Bugant\";\"main\"\n\"2032255\";\"Yoroo Khoroo\";\"other\"\n\"2032255\";\"Yoroohoroo\";\"other\"\n\"2032255\";\"Yöröö Khoroo\";\"other\"\n\"2032255\";\"Yörööhoroo\";\"other\"\n\"2032327\";\"Bornuur\";\"main\"\n\"2032327\";\"Bornur\";\"other\"\n\"2032327\";\"Борнур\";\"other\"\n\"2032362\";\"Böhöt\";\"main\"\n\"2032362\";\"Bohot\";\"ascii\"\n\"2032362\";\"Ondor Shili\";\"other\"\n\"2032362\";\"Ondor Shili Suma\";\"other\"\n\"2032362\";\"Ondorshil\";\"other\"\n\"2032362\";\"Under-Shil\";\"other\"\n\"2032362\";\"Undur Shile\";\"other\"\n\"2032362\";\"Undur shili sumu\";\"other\"\n\"2032362\";\"Undur-Shili\";\"other\"\n\"2032362\";\"Undur-Shili Somon\";\"other\"\n\"2032362\";\"Öndör Shili\";\"other\"\n\"2032362\";\"Öndör Shili Suma\";\"other\"\n\"2032362\";\"Öndörshil\";\"other\"\n\"2032373\";\"Bodĭ\";\"main\"\n\"2032373\";\"Bodi\";\"ascii\"\n\"2032373\";\"Chzhinsetu somon\";\"other\"\n\"2032373\";\"Djinsetu Sume\";\"other\"\n\"2032373\";\"Dzhinsetu\";\"other\"\n\"2032373\";\"Dzhinsetu somon\";\"other\"\n\"2032373\";\"Dzhinsetu-Sumu\";\"other\"\n\"2032373\";\"Jinsatu\";\"other\"\n\"2032373\";\"Jinsete\";\"other\"\n\"2032373\";\"Jinsete Suma\";\"other\"\n\"2032373\";\"Jinsetu\";\"other\"\n\"2032373\";\"Jinsetu sumu\";\"other\"\n\"2032373\";\"Jinsetü\";\"other\"\n\"2032373\";\"Jinst\";\"other\"\n\"2032432\";\"Bayshint\";\"main\"\n\"2032432\";\"Ondor Haan\";\"other\"\n\"2032432\";\"Ondor Haan Suma\";\"other\"\n\"2032432\";\"Ondorshireet\";\"other\"\n\"2032432\";\"Undur Khan Somon\";\"other\"\n\"2032432\";\"Öndör Haan\";\"other\"\n\"2032432\";\"Öndör Haan Suma\";\"other\"\n\"2032432\";\"Öndörshireet\";\"other\"\n\"2032435\";\"Bayasgalant\";\"main\"\n\"2032435\";\"Bayanjargalan\";\"other\"\n\"2032436\";\"Bayasgalant\";\"main\"\n\"2032436\";\"Monhhaan\";\"other\"\n\"2032436\";\"Monho Haan Suma\";\"other\"\n\"2032436\";\"Monho Han\";\"other\"\n\"2032436\";\"Monho Han sumu\";\"other\"\n\"2032436\";\"Monhö Han sumu\";\"other\"\n\"2032436\";\"Monkhkhaan\";\"other\"\n\"2032436\";\"Munkh-Khan\";\"other\"\n\"2032436\";\"Munkh-Khany-Somon\";\"other\"\n\"2032436\";\"Munkhu Khanoy Somon\";\"other\"\n\"2032436\";\"Munkhu Khany\";\"other\"\n\"2032436\";\"Munkhu Khanyy Somon\";\"other\"\n\"2032436\";\"Munkhu Khanöy Somon\";\"other\"\n\"2032436\";\"Munku-khan\";\"other\"\n\"2032436\";\"Munku-khan Somon\";\"other\"\n\"2032436\";\"Munku-khanoy Somon\";\"other\"\n\"2032436\";\"Munku-khanyy somon\";\"other\"\n\"2032436\";\"Mönhhaan\";\"other\"\n\"2032436\";\"Mönhö Haan Suma\";\"other\"\n\"2032436\";\"Mönhö Han\";\"other\"\n\"2032436\";\"Mönkhkhaan\";\"other\"\n\"2032457\";\"Bayan-Ulaan\";\"main\"\n\"2032457\";\"Bayan Ulaan Suma\";\"other\"\n\"2032457\";\"Bayan Ulan Somon\";\"other\"\n\"2032457\";\"Bayan ulaan sumu\";\"other\"\n\"2032457\";\"Bayan-Ulan\";\"other\"\n\"2032457\";\"Bayan-uran\";\"other\"\n\"2032457\";\"Dzun-Bayan-Ulan\";\"other\"\n\"2032457\";\"Dzuunbayan-Ulaan\";\"other\"\n\"2032457\";\"Dzüünbayan-Ulaan\";\"other\"\n\"2032473\";\"Bayantsagaan\";\"main\"\n\"2032473\";\"Chzhirgalantu somon\";\"other\"\n\"2032473\";\"Dzhargalant\";\"other\"\n\"2032473\";\"Dzhirgalantu\";\"other\"\n\"2032473\";\"Dzhirgalantu Somon\";\"other\"\n\"2032473\";\"Jargalant\";\"other\"\n\"2032473\";\"Jirgalanta Suma\";\"other\"\n\"2032473\";\"Jirgalantu\";\"other\"\n\"2032473\";\"Jirgalantu sumu\";\"other\"\n\"2032473\";\"Джаргалант\";\"other\"\n\"2032480\";\"Bayantöhöm\";\"main\"\n\"2032480\";\"Bayantohom\";\"ascii\"\n\"2032480\";\"Buren\";\"other\"\n\"2032480\";\"Büren\";\"other\"\n\"2032490\";\"Bayan-Ovoo\";\"main\"\n\"2032490\";\"Bajan-Obo\";\"other\"\n\"2032490\";\"Dadal\";\"other\"\n\"2032490\";\"Datal\";\"other\"\n\"2032490\";\"Datal Sume\";\"other\"\n\"2032490\";\"Datal sumu\";\"other\"\n\"2032490\";\"Tataal\";\"other\"\n\"2032490\";\"Tataal Suma\";\"other\"\n\"2032490\";\"Tatal\";\"other\"\n\"2032490\";\"Tatal-Somon\";\"other\"\n\"2032490\";\"Баян-Обо\";\"other\"\n\"2032491\";\"Javhlant\";\"main\"\n\"2032491\";\"Bain-obo Somon\";\"other\"\n\"2032491\";\"Bayan Obo\";\"other\"\n\"2032491\";\"Bayan Oboo\";\"other\"\n\"2032491\";\"Bayan Oboo Suma\";\"other\"\n\"2032491\";\"Bayan oboo sumu\";\"other\"\n\"2032491\";\"Bayan-Ovoo\";\"other\"\n\"2032491\";\"Bayan-obo somon\";\"other\"\n\"2032491\";\"Bayn Obo Somon\";\"other\"\n\"2032523\";\"Bayanhoshuu\";\"main\"\n\"2032523\";\"Bayanhushuu\";\"other\"\n\"2032523\";\"Galuut\";\"other\"\n\"2032532\";\"Bayanhongor\";\"main\"\n\"2032532\";\"Bajankhongor\";\"other\"\n\"2032532\";\"Bayan Hangor\";\"other\"\n\"2032532\";\"Bayan Hongor Suma\";\"other\"\n\"2032532\";\"Bayan Khongor\";\"other\"\n\"2032532\";\"Bayan Khongor Somon\";\"other\"\n\"2032532\";\"Bayan Khonkhor Sume\";\"other\"\n\"2032532\";\"Bayan honhor sumu\";\"other\"\n\"2032532\";\"Bayan-hongoru\";\"other\"\n\"2032532\";\"Баянхонгор\";\"other\"\n\"2032533\";\"Bayanhongor\";\"main\"\n\"2032533\";\"Bajankhongor\";\"other\"\n\"2032533\";\"Dzaluuchuud\";\"other\"\n\"2032533\";\"Youth City\";\"other\"\n\"2032533\";\"Баянхонгор\";\"other\"\n\"2032571\";\"Bayandelger\";\"main\"\n\"2032571\";\"Bain-delger Somon\";\"other\"\n\"2032571\";\"Bayan Delger Suma\";\"other\"\n\"2032571\";\"Bayan Delger Sume\";\"other\"\n\"2032571\";\"Bayan del'ger sumu\";\"other\"\n\"2032571\";\"Bayan-Del'ger Somon\";\"other\"\n\"2032571\";\"Bayanderigeri\";\"other\"\n\"2032586\";\"Bayanbulag\";\"main\"\n\"2032586\";\"Omnodelger\";\"other\"\n\"2032586\";\"Omono Delger\";\"other\"\n\"2032586\";\"Omono Delger Suma\";\"other\"\n\"2032586\";\"Umne-Delger\";\"other\"\n\"2032586\";\"Umun-delger somon\";\"other\"\n\"2032586\";\"Umun-telger Somon\";\"other\"\n\"2032586\";\"Ömnödelger\";\"other\"\n\"2032586\";\"Ömönö Delger\";\"other\"\n\"2032586\";\"Ömönö Delger Suma\";\"other\"\n\"2032593\";\"Bayanbaraat\";\"main\"\n\"2032593\";\"Bayan Baraata Suma\";\"other\"\n\"2032593\";\"Bayan Baraatayn\";\"other\"\n\"2032593\";\"Bayan Baraatayn Suma\";\"other\"\n\"2032593\";\"Bayan Baratuin\";\"other\"\n\"2032593\";\"Bayan Baratuin Somon\";\"other\"\n\"2032593\";\"Bayan Baratuyn Somon\";\"other\"\n\"2032593\";\"Bayan baraatu\";\"other\"\n\"2032593\";\"Bayan-Baratu\";\"other\"\n\"2032594\";\"Bayan\";\"main\"\n\"2032594\";\"Bajan\";\"other\"\n\"2032594\";\"Bayan-Adraga\";\"other\"\n\"2032594\";\"Баян\";\"other\"\n\"2032595\";\"Bayan\";\"main\"\n\"2032595\";\"Holobuyr\";\"other\"\n\"2032595\";\"Hölöbuyr\";\"other\"\n\"2032595\";\"Kholobuir\";\"other\"\n\"2032595\";\"Khölöbuïr\";\"other\"\n\"2032596\";\"Bayan\";\"main\"\n\"2032596\";\"Hashaat\";\"other\"\n\"2032596\";\"Hashaata Suma\";\"other\"\n\"2032596\";\"Hashiatu\";\"other\"\n\"2032596\";\"Hashiyantu sumu\";\"other\"\n\"2032596\";\"Khashaat\";\"other\"\n\"2032596\";\"Khashiatu Somon\";\"other\"\n\"2032596\";\"Khashiyantu\";\"other\"\n\"2032597\";\"Bayan\";\"main\"\n\"2032597\";\"Baan Khuduk\";\"other\"\n\"2032597\";\"Bayan Hudag\";\"other\"\n\"2032597\";\"Bayanhutag\";\"other\"\n\"2032597\";\"Bayankhutag\";\"other\"\n\"2032598\";\"Bayan\";\"main\"\n\"2032598\";\"Ihe hete\";\"other\"\n\"2032598\";\"Ihe hete sumu\";\"other\"\n\"2032598\";\"Ihhet\";\"other\"\n\"2032598\";\"Ikhe-Khete\";\"other\"\n\"2032598\";\"Ikhe-khid\";\"other\"\n\"2032598\";\"Ikhe-khid Somon\";\"other\"\n\"2032598\";\"Ikhkhet\";\"other\"\n\"2032598\";\"Inhet\";\"other\"\n\"2032598\";\"Yihe Hete Suma\";\"other\"\n\"2032598\";\"Yihe Hiid\";\"other\"\n\"2032598\";\"Yihe Hiid Suma\";\"other\"\n\"2032602\";\"Bat-Öldziyt\";\"main\"\n\"2032602\";\"Bat-Oldziyt\";\"ascii\"\n\"2032602\";\"Bat-OEldziyt\";\"other\"\n\"2032602\";\"Dzaamar\";\"other\"\n\"2032602\";\"Dzamar\";\"other\"\n\"2032602\";\"Дзамар\";\"other\"\n\"2032614\";\"Baruun-Urt\";\"main\"\n\"2032614\";\"Baruun Urta\";\"other\"\n\"2032614\";\"Burunurt\";\"other\"\n\"2032614\";\"Dzhapkhalanta-sharga\";\"other\"\n\"2032614\";\"Dzhibkhalantu-Sharga\";\"other\"\n\"2032614\";\"Jibhalanta Sharga Suma\";\"other\"\n\"2032614\";\"Jibholantu Sharga sumu\";\"other\"\n\"2032614\";\"Jibhulantu sharga\";\"other\"\n\"2032614\";\"Sharga Sume\";\"other\"\n\"2032614\";\"Баруун-Урт\";\"other\"\n\"2032631\";\"Baruunsuu\";\"main\"\n\"2032631\";\"Tsetsen Sume\";\"other\"\n\"2032631\";\"Tsetsey\";\"other\"\n\"2032631\";\"Tsetsey sumu\";\"other\"\n\"2032631\";\"Tsogt-Tsetsey\";\"other\"\n\"2032631\";\"Tsogto Tsetsey Suma\";\"other\"\n\"2032631\";\"Tsogttsetsii\";\"other\"\n\"2032631\";\"Tsogttsetsiy\";\"other\"\n\"2032631\";\"Tsogttsetsiï\";\"other\"\n\"2032631\";\"Tsogtu Tsetsey Somon\";\"other\"\n\"2032631\";\"Tsogtu Tsetsi\";\"other\"\n\"2032631\";\"Tsogtu-Tsetsey\";\"other\"\n\"2032663\";\"Hushaat\";\"main\"\n\"2032663\";\"Barun-Khashiatu Somon\";\"other\"\n\"2032663\";\"Baruun Hashaata Suma\";\"other\"\n\"2032663\";\"Bayan Khashiatu\";\"other\"\n\"2032663\";\"Hashaata Suma\";\"other\"\n\"2032663\";\"Hashiatu\";\"other\"\n\"2032663\";\"Hashiatu sumu\";\"other\"\n\"2032663\";\"Khashat\";\"other\"\n\"2032663\";\"Khoshat\";\"other\"\n\"2032767\";\"Badrah\";\"main\"\n\"2032767\";\"Taralang somon\";\"other\"\n\"2032767\";\"Tarialan\";\"other\"\n\"2032767\";\"Taryaalan Suma\";\"other\"\n\"2032767\";\"Taryaalang Suma\";\"other\"\n\"2032767\";\"Taryalang\";\"other\"\n\"2032767\";\"Taryalang somon\";\"other\"\n\"2032767\";\"Taryalang sumu\";\"other\"\n\"2032767\";\"Taryalyang somon\";\"other\"\n\"2032786\";\"Avraga\";\"main\"\n\"2032786\";\"Avarga\";\"other\"\n\"2032786\";\"Delger Haan Suma\";\"other\"\n\"2032786\";\"Delger Han\";\"other\"\n\"2032786\";\"Delger Han Sumu\";\"other\"\n\"2032786\";\"Delger Khan\";\"other\"\n\"2032786\";\"Delger-Khan Somon\";\"other\"\n\"2032786\";\"Delgerhaan\";\"other\"\n\"2032786\";\"Delgerkhaan\";\"other\"\n\"2032786\";\"Delgerkhan Sume\";\"other\"\n\"2032789\";\"Avdzaga\";\"main\"\n\"2032789\";\"Gurban Bulagan\";\"other\"\n\"2032789\";\"Gurban Bulagiin Somon\";\"other\"\n\"2032789\";\"Gurban Bulagiin Suma\";\"other\"\n\"2032789\";\"Gurban-Bulag\";\"other\"\n\"2032789\";\"Gurban-Bulak\";\"other\"\n\"2032789\";\"Gurvanbulag\";\"other\"\n\"2032789\";\"Gurwanbulag\";\"other\"\n\"2032814\";\"Arvayheer\";\"main\"\n\"2032814\";\"Arbai Khere\";\"other\"\n\"2032814\";\"Arbay Heere\";\"other\"\n\"2032814\";\"Arbay Khere\";\"other\"\n\"2032814\";\"Arbay hure\";\"other\"\n\"2032814\";\"Arbayin Khure\";\"other\"\n\"2032814\";\"Arbayin hure\";\"other\"\n\"2032814\";\"Arubai gere\";\"other\"\n\"2032814\";\"Arvajkhehehr\";\"other\"\n\"2032814\";\"Arwaikheer\";\"other\"\n\"2032814\";\"Arwaïkheer\";\"other\"\n\"2032814\";\"Obor Hangayin\";\"other\"\n\"2032814\";\"Obor Khangai\";\"other\"\n\"2032814\";\"Obör Hangayin\";\"other\"\n\"2032814\";\"Ts'ai-ku-na Miao\";\"other\"\n\"2032814\";\"Ts'ai-ku-na Ya-men\";\"other\"\n\"2032814\";\"Ts’ai-ku-na Miao\";\"other\"\n\"2032814\";\"Ts’ai-ku-na Ya-men\";\"other\"\n\"2032814\";\"Ubur Khangaiin\";\"other\"\n\"2032814\";\"Ubur Khangaun\";\"other\"\n\"2032814\";\"Ubur Khangayin\";\"other\"\n\"2032814\";\"Ubur Khangaün\";\"other\"\n\"2032814\";\"Ubur-hangaajin\";\"other\"\n\"2032814\";\"Ubur-hangayin\";\"other\"\n\"2032814\";\"Öbör Khangai\";\"other\"\n\"2032814\";\"Арвайхээр\";\"other\"\n\"2032850\";\"Arhust\";\"main\"\n\"2032850\";\"Erdene\";\"other\"\n\"2032850\";\"Erdeni Sumny Horshoo\";\"other\"\n\"2032857\";\"Arguut\";\"main\"\n\"2032857\";\"Guchin\";\"other\"\n\"2032857\";\"Guchin Suma\";\"other\"\n\"2032857\";\"Guchin Usa Suma\";\"other\"\n\"2032857\";\"Guchin somon\";\"other\"\n\"2032857\";\"Guchin usu sumu\";\"other\"\n\"2032857\";\"Guchin-Us\";\"other\"\n\"2032857\";\"Guchin-Usu\";\"other\"\n\"2032857\";\"Guchin-Usu-Somon\";\"other\"\n\"2032857\";\"Guchun Usu\";\"other\"\n\"2032860\";\"Argatay\";\"main\"\n\"2032860\";\"Bain-Dzhargalanta-somon\";\"other\"\n\"2032860\";\"Bain-Dzhirgalang-sumu\";\"other\"\n\"2032860\";\"Bain-chzhargalanta Somon\";\"other\"\n\"2032860\";\"Bayan Jirgalanta Suma\";\"other\"\n\"2032860\";\"Bayan-jirugaran\";\"other\"\n\"2032860\";\"Bayanjargalan\";\"other\"\n\"2032860\";\"Bayn Jargalanta Somon\";\"other\"\n\"2032871\";\"Argalant\";\"main\"\n\"2032899\";\"Ar-Asgat\";\"main\"\n\"2032899\";\"Ugtaaltsaydam\";\"other\"\n\"2032899\";\"Ugtaastsaidam\";\"other\"\n\"2032899\";\"Ugtaastsaïdam\";\"other\"\n\"2032899\";\"Uhtal tsaydam sumu\";\"other\"\n\"2032899\";\"Ukhtal-Tsaydam\";\"other\"\n\"2032899\";\"Ukhtal-Tsaydam Somon\";\"other\"\n\"2032899\";\"Ukhtal-Tsaydam-Sumu\";\"other\"\n\"2032899\";\"Ар-Асгат\";\"other\"\n\"2032937\";\"Amardalay\";\"main\"\n\"2032937\";\"Del'ger tsogtu sumu\";\"other\"\n\"2032937\";\"Delger Tsogto\";\"other\"\n\"2032937\";\"Delger Tsogto Suma\";\"other\"\n\"2032937\";\"Delger Tsogtu Somon\";\"other\"\n\"2032937\";\"Delger Tsogtuin Khure\";\"other\"\n\"2032937\";\"Delger tsogtu\";\"other\"\n\"2032937\";\"Delgertsogt\";\"other\"\n\"2032937\";\"Derigeri-tsofuta\";\"other\"\n\"2032956\";\"Altan-Ovoo\";\"main\"\n\"2032956\";\"Tsenher\";\"other\"\n\"2032956\";\"Urdtamir\";\"other\"\n\"2032960\";\"Altanbulag\";\"main\"\n\"2032960\";\"ALTAN-BULAK\";\"other\"\n\"2032960\";\"Altan Bulak\";\"other\"\n\"2032960\";\"Alton Brok\";\"other\"\n\"2032960\";\"Altyn-Bulak\";\"other\"\n\"2032960\";\"Ch'ia-k'o-t'u\";\"other\"\n\"2032960\";\"Ch’ia-k’o-t’u\";\"other\"\n\"2032960\";\"KJAKHTA\";\"other\"\n\"2032960\";\"Kiachta\";\"other\"\n\"2032960\";\"Kyakhta\";\"other\"\n\"2032960\";\"Mai-mai-ch\\\"eng\";\"other\"\n\"2032960\";\"Mai-mai-ch”eng\";\"other\"\n\"2032960\";\"Maymachen\";\"other\"\n\"2032960\";\"Maymaychen\";\"other\"\n\"2032960\";\"АЛТАН-БУЛАК\";\"other\"\n\"2032960\";\"КЯХТА\";\"other\"\n\"2032961\";\"Altanbulag\";\"main\"\n\"6988111\";\"Asgat\";\"main\"\n\"6988118\";\"Ulaanshiveet\";\"main\"\n\"6997293\";\"Sümber\";\"main\"\n\"6997293\";\"Sumber\";\"ascii\"\n\"6997301\";\"Bayantal\";\"main\"\n\"6997302\";\"Shiveegovi\";\"main\"\n\"6997320\";\"Hongor\";\"main\"\n\"6997333\";\"Jargalant\";\"main\"\n\"6997380\";\"Höshigiyn-Ar\";\"main\"\n\"6997380\";\"Hoshigiyn-Ar\";\"ascii\"\n\"1821274\";\"Macau\";\"main\"\n\"1821274\";\"Aomen\";\"other\"\n\"1821274\";\"Cidade de Macau\";\"other\"\n\"1821274\";\"Cidade do Santo Nome de Deus de Macau\";\"other\"\n\"1821274\";\"Macao\";\"other\"\n\"1821274\";\"Makao\";\"other\"\n\"1821274\";\"ao men\";\"other\"\n\"1821274\";\"Макао\";\"other\"\n\"1821274\";\"澳门\";\"other\"\n\"4041170\";\"Capital Hill\";\"main\"\n\"4041171\";\"Capitol Hill\";\"main\"\n\"4041177\";\"Chalan Kanoa\";\"main\"\n\"4041280\";\"Garapan\";\"main\"\n\"4041295\";\"Gualo Rai\";\"main\"\n\"4041347\";\"Koblerville\";\"main\"\n\"4041554\";\"San Antonio\";\"main\"\n\"4041558\";\"San Jose\";\"main\"\n\"4041560\";\"San Roque\";\"main\"\n\"4041561\";\"San Vicente\";\"main\"\n\"4041579\";\"Songsong\";\"main\"\n\"4041584\";\"Susupe\";\"main\"\n\"4041619\";\"Tanapag\";\"main\"\n\"3569907\";\"Saint-Pierre\";\"main\"\n\"3569915\";\"Saint-Joseph\";\"main\"\n\"3569926\";\"Sainte-Marie\";\"main\"\n\"3569926\";\"Sent-Mari\";\"other\"\n\"3569926\";\"Сент-Мари\";\"other\"\n\"3569928\";\"Sainte-Luce\";\"main\"\n\"3569970\";\"Rivière-Pilote\";\"main\"\n\"3569970\";\"Riviere-Pilote\";\"ascii\"\n\"3570166\";\"Petite Rivière Salée\";\"main\"\n\"3570166\";\"Petite Riviere Salee\";\"ascii\"\n\"3570166\";\"Quartier Petite Riviere Salee\";\"other\"\n\"3570166\";\"Quartier Petite Rivière Salée\";\"other\"\n\"3570392\";\"Le Vauclin\";\"main\"\n\"3570392\";\"Vauclin\";\"other\"\n\"3570396\";\"Les Trois-Îlets\";\"main\"\n\"3570396\";\"Les Trois-Ilets\";\"ascii\"\n\"3570396\";\"Trois-Ilets\";\"other\"\n\"3570396\";\"Trois-Îlets\";\"other\"\n\"3570410\";\"Saint-Esprit\";\"main\"\n\"3570410\";\"Saint Esprit\";\"other\"\n\"3570412\";\"Le Robert\";\"main\"\n\"3570412\";\"Robert\";\"other\"\n\"3570423\";\"Le Morne-Rouge\";\"main\"\n\"3570423\";\"Morne Rouge\";\"other\"\n\"3570426\";\"Le Marin\";\"main\"\n\"3570426\";\"Marin\";\"other\"\n\"3570427\";\"Le Lorrain\";\"main\"\n\"3570427\";\"Lorrain\";\"other\"\n\"3570428\";\"Le Lamentin\";\"main\"\n\"3570428\";\"Lamentin\";\"other\"\n\"3570429\";\"Le François\";\"main\"\n\"3570429\";\"Le Francois\";\"ascii\"\n\"3570429\";\"Francois\";\"other\"\n\"3570429\";\"François\";\"other\"\n\"3570446\";\"La Trinité\";\"main\"\n\"3570446\";\"La Trinite\";\"ascii\"\n\"3570446\";\"Trinite\";\"other\"\n\"3570446\";\"Trinité\";\"other\"\n\"3570584\";\"Le Gros-Morne\";\"main\"\n\"3570675\";\"Fort-de-France\";\"main\"\n\"3570675\";\"For de Fransas\";\"other\"\n\"3570675\";\"Fort Royal\";\"other\"\n\"3570675\";\"Fort-de-Frans\";\"other\"\n\"3570675\";\"Fôrt-de-France\";\"other\"\n\"3570675\";\"Le Fort-de-France\";\"other\"\n\"3570675\";\"poleudeupeulangseu\";\"other\"\n\"3570675\";\"Форт-де-Франс\";\"other\"\n\"3570675\";\"フォール・ド・フランス\";\"other\"\n\"3570675\";\"포르드프랑스\";\"other\"\n\"3570785\";\"Ducos\";\"main\"\n\"3571097\";\"Basse-Pointe\";\"main\"\n\"2376193\";\"Tidjikja\";\"main\"\n\"2376193\";\"Fort Cappolani\";\"other\"\n\"2376193\";\"Tidjikdja\";\"other\"\n\"2376193\";\"Tijikja\";\"other\"\n\"2376719\";\"Sélibabi\";\"main\"\n\"2376719\";\"Selibabi\";\"ascii\"\n\"2376719\";\"Selibaby\";\"other\"\n\"2376719\";\"Sélibaby\";\"other\"\n\"2376898\";\"Rosso\";\"main\"\n\"2376898\";\"Roco\";\"other\"\n\"2377450\";\"Nouakchott\";\"main\"\n\"2377450\";\"Naevakjut\";\"other\"\n\"2377450\";\"Nawakszut\";\"other\"\n\"2377450\";\"Nouakchat\";\"other\"\n\"2377450\";\"Nouakchot\";\"other\"\n\"2377450\";\"Nouaxot\";\"other\"\n\"2377450\";\"Nuakchott\";\"other\"\n\"2377450\";\"Nuakshot\";\"other\"\n\"2377450\";\"Nuaksjott\";\"other\"\n\"2377450\";\"Nuaksot\";\"other\"\n\"2377450\";\"Nuaksotas\";\"other\"\n\"2377450\";\"Nuakšotas\";\"other\"\n\"2377450\";\"Nävakjut\";\"other\"\n\"2377450\";\"Núaksjott\";\"other\"\n\"2377450\";\"nu wa ke xiao te\";\"other\"\n\"2377450\";\"nuagsyoteu\";\"other\"\n\"2377450\";\"nuakushotto\";\"other\"\n\"2377450\";\"nwakshwt\";\"other\"\n\"2377450\";\"Νουαξότ\";\"other\"\n\"2377450\";\"Нуакшот\";\"other\"\n\"2377450\";\"Նուակշոտ\";\"other\"\n\"2377450\";\"נואקשוט\";\"other\"\n\"2377450\";\"نوآ‌کشوت\";\"other\"\n\"2377450\";\"نواكشوط\";\"other\"\n\"2377450\";\"ኑዋክሾት\";\"other\"\n\"2377450\";\"ヌアクショット\";\"other\"\n\"2377450\";\"努瓦克肖特\";\"other\"\n\"2377450\";\"누악쇼트\";\"other\"\n\"2377457\";\"Nouâdhibou\";\"main\"\n\"2377457\";\"Nouadhibou\";\"ascii\"\n\"2377457\";\"Nawazibu\";\"other\"\n\"2377457\";\"Nuadibu\";\"other\"\n\"2377457\";\"Nuadibú\";\"other\"\n\"2377457\";\"Port Ettienne\";\"other\"\n\"2377457\";\"Port-Etienne\";\"other\"\n\"2377457\";\"Port-Étienne\";\"other\"\n\"2377457\";\"Нуадибу\";\"other\"\n\"2377457\";\"נואדיבו\";\"other\"\n\"2378538\";\"Kiffa\";\"main\"\n\"2378538\";\"Kifa\";\"other\"\n\"2378538\";\"Kîfa\";\"other\"\n\"2378538\";\"Киффа\";\"other\"\n\"2378736\";\"Kaédi\";\"main\"\n\"2378736\";\"Kaedi\";\"ascii\"\n\"2378736\";\"קאדי\";\"other\"\n\"2379615\";\"Fdérik\";\"main\"\n\"2379615\";\"Fderik\";\"ascii\"\n\"2379615\";\"F'derik\";\"other\"\n\"2379615\";\"F'dérik\";\"other\"\n\"2379615\";\"Fdajrik\";\"other\"\n\"2379615\";\"Fdeirek\";\"other\"\n\"2379615\";\"Fderick\";\"other\"\n\"2379615\";\"Fderîck\";\"other\"\n\"2379615\";\"Fdérick\";\"other\"\n\"2379615\";\"Fort Gouraud\";\"other\"\n\"2379615\";\"Fort Goureaud\";\"other\"\n\"2379615\";\"Fort Trinquet\";\"other\"\n\"2379615\";\"Idjil\";\"other\"\n\"2380519\";\"Chingueṭṭi\";\"main\"\n\"2380519\";\"Chinguetti\";\"ascii\"\n\"2380519\";\"Chingetti\";\"other\"\n\"2380519\";\"Чингетти\";\"other\"\n\"2381163\";\"Barkéwol\";\"main\"\n\"2381163\";\"Barkewol\";\"ascii\"\n\"2381163\";\"Barkeol\";\"other\"\n\"2381163\";\"Barkéol\";\"other\"\n\"2381291\";\"’Ayoûn el ’Atroûs\";\"main\"\n\"2381291\";\"'Ayoun el 'Atrous\";\"ascii\"\n\"2381291\";\"Aioun el Atrouss\";\"other\"\n\"2381291\";\"Ayoun El Atrous\";\"other\"\n\"2381291\";\"Aïoun el Atrouss\";\"other\"\n\"2381334\";\"Atar\";\"main\"\n\"2381334\";\"Atâr\";\"other\"\n\"2381659\";\"Aleg\";\"main\"\n\"2381690\";\"Akjoujt\";\"main\"\n\"2381690\";\"Akdzawadzat\";\"other\"\n\"2381690\";\"Akdżawadżat\";\"other\"\n\"2381690\";\"Akjout\";\"other\"\n\"2381690\";\"Fort Repoux\";\"other\"\n\"3578069\";\"Plymouth\";\"main\"\n\"7266440\";\"Brades\";\"main\"\n\"2562247\";\"Marsaxlokk\";\"main\"\n\"2562247\";\"M'Xloxx\";\"other\"\n\"2562247\";\"Marsa Scirocco\";\"other\"\n\"2562247\";\"Marsa Shlok\";\"other\"\n\"2562247\";\"Marsaxlok\";\"other\"\n\"2562247\";\"M’Xloxx\";\"other\"\n\"2562250\";\"Żurrieq\";\"main\"\n\"2562250\";\"Zurrieq\";\"ascii\"\n\"2562250\";\"Casal Zurrico\";\"other\"\n\"2562250\";\"Iz-Zurrieq\";\"other\"\n\"2562250\";\"Iż-Żurrieq\";\"other\"\n\"2562250\";\"Zurrico\";\"other\"\n\"2562250\";\"Zurriek\";\"other\"\n\"2562258\";\"Żejtun\";\"main\"\n\"2562258\";\"Zejtun\";\"ascii\"\n\"2562258\";\"Casal Zeitun\";\"other\"\n\"2562258\";\"Iz Zeitun\";\"other\"\n\"2562258\";\"Iz-Zejtun\";\"other\"\n\"2562258\";\"Iż-Żejtun\";\"other\"\n\"2562258\";\"Zeitun\";\"other\"\n\"2562261\";\"Żebbuġ\";\"main\"\n\"2562261\";\"Zebbug\";\"ascii\"\n\"2562261\";\"Haz-Zebbug\";\"other\"\n\"2562261\";\"Lebbug\";\"other\"\n\"2562261\";\"Zebbuj\";\"other\"\n\"2562261\";\"Ħaż-Żebbuġ\";\"other\"\n\"2562266\";\"Żabbar\";\"main\"\n\"2562266\";\"Zabbar\";\"ascii\"\n\"2562266\";\"Haz-Zabbar\";\"other\"\n\"2562266\";\"Haż-Żabbar\";\"other\"\n\"2562274\";\"Xewkija\";\"main\"\n\"2562274\";\"Ix-Xewkija\";\"other\"\n\"2562274\";\"Showkiya\";\"other\"\n\"2562274\";\"Xeuchia\";\"other\"\n\"2562280\";\"Xagħra\";\"main\"\n\"2562280\";\"Xaghra\";\"ascii\"\n\"2562280\";\"Caccia\";\"other\"\n\"2562280\";\"Ix-Xaghra\";\"other\"\n\"2562280\";\"Kacca\";\"other\"\n\"2562280\";\"Kacha\";\"other\"\n\"2562280\";\"Kaċċa\";\"other\"\n\"2562280\";\"Shaghra\";\"other\"\n\"2562305\";\"Valletta\";\"main\"\n\"2562305\";\"Baleta\";\"other\"\n\"2562305\";\"Baletta\";\"other\"\n\"2562305\";\"La Valeta\";\"other\"\n\"2562305\";\"La Valeto\";\"other\"\n\"2562305\";\"La Valetta\";\"other\"\n\"2562305\";\"La Valette\";\"other\"\n\"2562305\";\"La Valletta\";\"other\"\n\"2562305\";\"Vaileite\";\"other\"\n\"2562305\";\"Valeta\";\"other\"\n\"2562305\";\"Valetta\";\"other\"\n\"2562305\";\"Valleta\";\"other\"\n\"2562305\";\"balleta\";\"other\"\n\"2562305\";\"baretta\";\"other\"\n\"2562305\";\"falyta\";\"other\"\n\"2562305\";\"wa lai ta\";\"other\"\n\"2562305\";\"walta\";\"other\"\n\"2562305\";\"wlth\";\"other\"\n\"2562305\";\"Βαλέτα\";\"other\"\n\"2562305\";\"Βαλέττα\";\"other\"\n\"2562305\";\"Валета\";\"other\"\n\"2562305\";\"Валетта\";\"other\"\n\"2562305\";\"Валлетта\";\"other\"\n\"2562305\";\"Ла Валета\";\"other\"\n\"2562305\";\"Ла Валетта\";\"other\"\n\"2562305\";\"ולטה\";\"other\"\n\"2562305\";\"فاليتا\";\"other\"\n\"2562305\";\"والتا\";\"other\"\n\"2562305\";\"ვალეტა\";\"other\"\n\"2562305\";\"ቫሌታ\";\"other\"\n\"2562305\";\"バレッタ\";\"other\"\n\"2562305\";\"瓦莱塔\";\"other\"\n\"2562305\";\"발레타\";\"other\"\n\"2562320\";\"Ta’ Xbiex\";\"main\"\n\"2562320\";\"Ta' Xbiex\";\"ascii\"\n\"2562320\";\"Ta' Shbiesh\";\"other\"\n\"2562320\";\"Tas Biesh\";\"other\"\n\"2562320\";\"Tasbiesch\";\"other\"\n\"2562320\";\"Ta’ Shbiesh\";\"other\"\n\"2562349\";\"Tarxien\";\"main\"\n\"2562349\";\"Casal Tarxien\";\"other\"\n\"2562349\";\"Hal Tarxien\";\"other\"\n\"2562349\";\"Tarshin\";\"other\"\n\"2562349\";\"Ħal Tarxien\";\"other\"\n\"2562501\";\"Sliema\";\"main\"\n\"2562501\";\"Tas-Sliema\";\"other\"\n\"2562504\";\"Siġġiewi\";\"main\"\n\"2562504\";\"Siggiewi\";\"ascii\"\n\"2562504\";\"Is-Siggiewi\";\"other\"\n\"2562504\";\"Is-Siġġiewi\";\"other\"\n\"2562504\";\"Siggieui\";\"other\"\n\"2562504\";\"Sijuwi\";\"other\"\n\"2562518\";\"Santa Vennera\";\"main\"\n\"2562518\";\"Santa Venera\";\"other\"\n\"2562529\";\"Santa Luċija\";\"main\"\n\"2562529\";\"Santa Lucija\";\"ascii\"\n\"2562529\";\"Santa Lucia\";\"other\"\n\"2562541\";\"San Pawl il-Baħar\";\"main\"\n\"2562541\";\"San Pawl il-Bahar\";\"ascii\"\n\"2562541\";\"Baia di San Paolo\";\"other\"\n\"2562541\";\"Saint Paul's Bay\";\"other\"\n\"2562541\";\"San Paul Amere\";\"other\"\n\"2562541\";\"San Paul a Mare\";\"other\"\n\"2562541\";\"San Paul à Mare\";\"other\"\n\"2562545\";\"Sannat\";\"main\"\n\"2562545\";\"Is-Sannat\";\"other\"\n\"2562557\";\"San Ġiljan\";\"main\"\n\"2562557\";\"San Giljan\";\"ascii\"\n\"2562557\";\"Saint Julian\";\"other\"\n\"2562557\";\"Saint Julian's\";\"other\"\n\"2562557\";\"San Gilian\";\"other\"\n\"2562557\";\"San Julian\";\"other\"\n\"2562557\";\"San Julian's\";\"other\"\n\"2562557\";\"San Julián\";\"other\"\n\"2562557\";\"San Ġilian\";\"other\"\n\"2562557\";\"Sent-Dzhulians\";\"other\"\n\"2562557\";\"St. Julian's\";\"other\"\n\"2562557\";\"Сент-Джулианс\";\"other\"\n\"2562598\";\"Safi\";\"main\"\n\"2562598\";\"Casal Safi\";\"other\"\n\"2562598\";\"Hal Safi\";\"other\"\n\"2562598\";\"Ħal Safi\";\"other\"\n\"2562617\";\"Paola\";\"main\"\n\"2562617\";\"Casal Paola\";\"other\"\n\"2562617\";\"Casal Paolo\";\"other\"\n\"2562617\";\"Casal Paula\";\"other\"\n\"2562617\";\"Paula\";\"other\"\n\"2562617\";\"Pawla\";\"other\"\n\"2562617\";\"Rahal Gdid\";\"other\"\n\"2562617\";\"Rahal Jedid\";\"other\"\n\"2562617\";\"Raħal Ġdid\";\"other\"\n\"2562619\";\"Victoria\";\"main\"\n\"2562619\";\"Rabat\";\"other\"\n\"2562619\";\"Victoria Town\";\"other\"\n\"2562619\";\"Victòria\";\"other\"\n\"2562619\";\"Vittoria\";\"other\"\n\"2562619\";\"wyqtwryh\";\"other\"\n\"2562619\";\"ויקטוריה\";\"other\"\n\"2562620\";\"Rabat\";\"main\"\n\"2562620\";\"Ir-Rabt\";\"other\"\n\"2562620\";\"Rabato\";\"other\"\n\"2562622\";\"Qrendi\";\"main\"\n\"2562622\";\"Casal Krendi\";\"other\"\n\"2562622\";\"Il-Qrendi\";\"other\"\n\"2562622\";\"Krendi\";\"other\"\n\"2562629\";\"Qormi\";\"main\"\n\"2562629\";\"Curmi\";\"other\"\n\"2562629\";\"Hal Qormi\";\"other\"\n\"2562629\";\"Ħal Qormi\";\"other\"\n\"2562655\";\"Qala\";\"main\"\n\"2562655\";\"Casal Qala\";\"other\"\n\"2562655\";\"Il-Qala\";\"other\"\n\"2562655\";\"Kala\";\"other\"\n\"2562683\";\"Naxxar\";\"main\"\n\"2562683\";\"In-Naxxar\";\"other\"\n\"2562683\";\"Nasciar\";\"other\"\n\"2562683\";\"Nashar\";\"other\"\n\"2562683\";\"Naxaro\";\"other\"\n\"2562687\";\"Nadur\";\"main\"\n\"2562687\";\"In-Nadur\";\"other\"\n\"2562698\";\"Msida\";\"main\"\n\"2562698\";\"L-Imsida\";\"other\"\n\"2562698\";\"Misida\";\"other\"\n\"2562698\";\"Мсида\";\"other\"\n\"2562701\";\"Mqabba\";\"main\"\n\"2562701\";\"Casal Micabiba\";\"other\"\n\"2562701\";\"Imkabba\";\"other\"\n\"2562701\";\"L-Imqabba\";\"other\"\n\"2562701\";\"Micabba\";\"other\"\n\"2562704\";\"Mosta\";\"main\"\n\"2562704\";\"Il-Mosta\";\"other\"\n\"2562704\";\"Masta\";\"other\"\n\"2562704\";\"Musta\";\"other\"\n\"2562704\";\"Моста\";\"other\"\n\"2562734\";\"Mġarr\";\"main\"\n\"2562734\";\"Mgarr\";\"ascii\"\n\"2562734\";\"Imjar\";\"other\"\n\"2562734\";\"L-Imgarr\";\"other\"\n\"2562734\";\"L-Imġarr\";\"other\"\n\"2562735\";\"Mġarr\";\"main\"\n\"2562735\";\"Mgarr\";\"ascii\"\n\"2562735\";\"Imgiar\";\"other\"\n\"2562735\";\"Imjar\";\"other\"\n\"2562735\";\"L-Mgarr\";\"other\"\n\"2562735\";\"L-Mġarr\";\"other\"\n\"2562735\";\"Mgar\";\"other\"\n\"2562735\";\"Мгар\";\"other\"\n\"2562744\";\"Mellieħa\";\"main\"\n\"2562744\";\"Mellieha\";\"ascii\"\n\"2562744\";\"Il-Mellieha\";\"other\"\n\"2562744\";\"Il-Mellieħa\";\"other\"\n\"2562755\";\"Marsa\";\"main\"\n\"2562755\";\"Il-Marsa\";\"other\"\n\"2562788\";\"Luqa\";\"main\"\n\"2562788\";\"Casal Luca\";\"other\"\n\"2562788\";\"Hal Luqa\";\"other\"\n\"2562788\";\"Luca\";\"other\"\n\"2562788\";\"Ħal Luqa\";\"other\"\n\"2562792\";\"Senglea\";\"main\"\n\"2562792\";\"Isla\";\"other\"\n\"2562792\";\"L-Isla\";\"other\"\n\"2562800\";\"L-Iklin\";\"main\"\n\"2562800\";\"L'Inglin\";\"other\"\n\"2562800\";\"L-Iclin\";\"other\"\n\"2562801\";\"Lija\";\"main\"\n\"2562801\";\"Casal Lia\";\"other\"\n\"2562801\";\"Hal Lija\";\"other\"\n\"2562801\";\"Lia\";\"other\"\n\"2562801\";\"Ħal Lija\";\"other\"\n\"2562815\";\"Kirkop\";\"main\"\n\"2562815\";\"Casal Chircop\";\"other\"\n\"2562815\";\"Hal-Kirkop\";\"other\"\n\"2562815\";\"Ħal-Kirkop\";\"other\"\n\"2562816\";\"Kerċem\";\"main\"\n\"2562816\";\"Kercem\";\"ascii\"\n\"2562816\";\"Kerchem\";\"other\"\n\"2562830\";\"Kalkara\";\"main\"\n\"2562830\";\"Calcara\";\"other\"\n\"2562830\";\"Il-Kalkara\";\"other\"\n\"2562850\";\"Is-Swieqi\";\"main\"\n\"2562850\";\"Is Suieki\";\"other\"\n\"2562850\";\"Is-Swieki\";\"other\"\n\"2562946\";\"Il-Gżira\";\"main\"\n\"2562946\";\"Il-Gzira\";\"ascii\"\n\"2562946\";\"Gzira\";\"other\"\n\"2562946\";\"Gżira\";\"other\"\n\"2562955\";\"Il-Furjana\";\"main\"\n\"2562955\";\"Floriana\";\"other\"\n\"2562966\";\"Vittoriosa\";\"main\"\n\"2562966\";\"Birgu\";\"other\"\n\"2562966\";\"Il-Birgu\";\"other\"\n\"2562998\";\"Ħamrun\";\"main\"\n\"2562998\";\"Hamrun\";\"ascii\"\n\"2562998\";\"Ham Rum\";\"other\"\n\"2562998\";\"Il-Hamrun\";\"other\"\n\"2563020\";\"Gudja\";\"main\"\n\"2563020\";\"Gudia\";\"other\"\n\"2563020\";\"Il-Gudja\";\"other\"\n\"2563046\";\"Għaxaq\";\"main\"\n\"2563046\";\"Ghaxaq\";\"ascii\"\n\"2563046\";\"Ashiak\";\"other\"\n\"2563046\";\"Axiak\";\"other\"\n\"2563046\";\"Casal Asciak\";\"other\"\n\"2563046\";\"Ghashiak\";\"other\"\n\"2563046\";\"Hal Ghaxaq\";\"other\"\n\"2563046\";\"Hal Ghaxiak\";\"other\"\n\"2563046\";\"Ħal Għaxaq\";\"other\"\n\"2563062\";\"Għargħur\";\"main\"\n\"2563062\";\"Gharghur\";\"ascii\"\n\"2563062\";\"Gargur\";\"other\"\n\"2563115\";\"Fgura\";\"main\"\n\"2563115\";\"Il-Fgura\";\"other\"\n\"2563115\";\"Фгура\";\"other\"\n\"2563140\";\"Dingli\";\"main\"\n\"2563140\";\"Casal Dingli\";\"other\"\n\"2563140\";\"Had-Dingli\";\"other\"\n\"2563140\";\"Ħad-Dingli\";\"other\"\n\"2563181\";\"Cospicua\";\"main\"\n\"2563181\";\"Bormla\";\"other\"\n\"2563181\";\"Cospiosa\";\"other\"\n\"2563189\";\"Birżebbuġa\";\"main\"\n\"2563189\";\"Birzebbuga\";\"ascii\"\n\"2563189\";\"B'Buga\";\"other\"\n\"2563189\";\"B'Bugia\";\"other\"\n\"2563189\";\"Birzbbu\";\"other\"\n\"2563189\";\"Birzebbu\";\"other\"\n\"2563189\";\"Birzebbudzha\";\"other\"\n\"2563189\";\"Birzebbugia\";\"other\"\n\"2563189\";\"Birzebuggia\";\"other\"\n\"2563189\";\"B’Bugia\";\"other\"\n\"2563189\";\"B’Buġa\";\"other\"\n\"2563189\";\"bi er ze bu jia\";\"other\"\n\"2563189\";\"Бирзеббуджа\";\"other\"\n\"2563189\";\"比尔泽布贾\";\"other\"\n\"2563191\";\"Birkirkara\";\"main\"\n\"2563191\";\"B'Kara\";\"other\"\n\"2563191\";\"Birchircara\";\"other\"\n\"2563191\";\"B’Kara\";\"other\"\n\"2563191\";\"Casal Birchircara\";\"other\"\n\"2563191\";\"byrqyrqrh\";\"other\"\n\"2563191\";\"Биркиркара\";\"other\"\n\"2563191\";\"בירקירקרה\";\"other\"\n\"2563191\";\"ቢርኪርካራ\";\"other\"\n\"2563217\";\"Balzan\";\"main\"\n\"2563217\";\"Casal Balzan\";\"other\"\n\"2563217\";\"Hal Balzan\";\"other\"\n\"2563217\";\"Ħal Balzan\";\"other\"\n\"2563232\";\"Attard\";\"main\"\n\"2563232\";\"Casal Attard\";\"other\"\n\"2563232\";\"H'Attard\";\"other\"\n\"2563232\";\"Ħ’Attard\";\"other\"\n\"2563232\";\"Аттард\";\"other\"\n\"2567539\";\"San Ġwann\";\"main\"\n\"2567539\";\"San Gwann\";\"ascii\"\n\"933933\";\"Verdun\";\"main\"\n\"933933\";\"Verdun Station\";\"other\"\n\"933945\";\"Vacoas\";\"main\"\n\"933945\";\"Vacoa\";\"other\"\n\"933959\";\"Triolet\";\"main\"\n\"933959\";\"Триолет\";\"other\"\n\"933970\";\"The Vale\";\"main\"\n\"933974\";\"Terre Rouge\";\"main\"\n\"933982\";\"Tamarin\";\"main\"\n\"933988\";\"Surinam\";\"main\"\n\"933995\";\"Souillac\";\"main\"\n\"933995\";\"Port Souillac\";\"other\"\n\"933995\";\"Soullac\";\"other\"\n\"934013\";\"Sebastopol\";\"main\"\n\"934032\";\"Saint Pierre\";\"main\"\n\"934032\";\"Saint Pierre Village\";\"other\"\n\"934043\";\"Saint Julien\";\"main\"\n\"934043\";\"Julien\";\"other\"\n\"934043\";\"Saint Julien Village\";\"other\"\n\"934047\";\"Saint Hubert\";\"main\"\n\"934056\";\"Saint Aubin\";\"main\"\n\"934056\";\"Union Saint Aubin\";\"other\"\n\"934058\";\"Morcellemont Saint André\";\"main\"\n\"934058\";\"Morcellemont Saint Andre\";\"ascii\"\n\"934058\";\"Saint-Andre\";\"other\"\n\"934058\";\"Saint-André\";\"other\"\n\"934072\";\"Rose Belle\";\"main\"\n\"934076\";\"Roche Terre\";\"main\"\n\"934085\";\"Roches Noire\";\"main\"\n\"934085\";\"Roche Noire\";\"other\"\n\"934085\";\"Roche Noires\";\"other\"\n\"934085\";\"Roches Noires\";\"other\"\n\"934089\";\"Grande Rivière Noire\";\"main\"\n\"934089\";\"Grande Riviere Noire\";\"ascii\"\n\"934089\";\"Black River\";\"other\"\n\"934089\";\"Grand Riviere Noire\";\"other\"\n\"934089\";\"Grand Rivière Noire\";\"other\"\n\"934089\";\"Riviere Noire\";\"other\"\n\"934089\";\"Rivière Noire\";\"other\"\n\"934091\";\"Rivière du Rempart\";\"main\"\n\"934091\";\"Riviere du Rempart\";\"ascii\"\n\"934095\";\"Rivière des Anguilles\";\"main\"\n\"934095\";\"Riviere des Anguilles\";\"ascii\"\n\"934095\";\"River des Anguilles\";\"other\"\n\"934126\";\"Queen Victoria\";\"main\"\n\"934127\";\"Quatre Soeurs\";\"main\"\n\"934127\";\"La Coterie\";\"other\"\n\"934127\";\"Quatre Soeurs Br.\";\"other\"\n\"934131\";\"Quatre Bornes\";\"main\"\n\"934133\";\"Quartier Militaire\";\"main\"\n\"934138\";\"Providence\";\"main\"\n\"934149\";\"Poste de Flacq\";\"main\"\n\"934149\";\"Post of Flacq\";\"other\"\n\"934154\";\"Port Louis\";\"main\"\n\"934154\";\"Por Loui\";\"other\"\n\"934154\";\"Port Louis Town\";\"other\"\n\"934154\";\"Port Luis Mauricijus\";\"other\"\n\"934154\";\"Port Luisas\";\"other\"\n\"934154\";\"Port-Louis\";\"other\"\n\"934154\";\"Port-Lui\";\"other\"\n\"934154\";\"bwr lwys\";\"other\"\n\"934154\";\"lu yi gang\";\"other\"\n\"934154\";\"poteulu-iseu\";\"other\"\n\"934154\";\"potoruisu\";\"other\"\n\"934154\";\"Πορ Λουί\";\"other\"\n\"934154\";\"Порт Луис Маурицијус\";\"other\"\n\"934154\";\"Порт-Луи\";\"other\"\n\"934154\";\"פורט לואיס\";\"other\"\n\"934154\";\"بور لويس\";\"other\"\n\"934154\";\"پورت‌لوئیس\";\"other\"\n\"934154\";\"ፖርት ሉዊስ\";\"other\"\n\"934154\";\"ポートルイス\";\"other\"\n\"934154\";\"路易港\";\"other\"\n\"934154\";\"포트루이스\";\"other\"\n\"934169\";\"Plaine Magnien\";\"main\"\n\"934169\";\"Plaines Magnien\";\"other\"\n\"934170\";\"Plaine des Papayes\";\"main\"\n\"934170\";\"Plaines des Papayes\";\"other\"\n\"934184\";\"Petit Raffray\";\"main\"\n\"934195\";\"Petite Rivière\";\"main\"\n\"934195\";\"Petite Riviere\";\"ascii\"\n\"934198\";\"Petite Case Noyale\";\"main\"\n\"934213\";\"Pamplemousses\";\"main\"\n\"934213\";\"Pamplemousses Village\";\"other\"\n\"934219\";\"Pailles\";\"main\"\n\"934219\";\"Pailles Village\";\"other\"\n\"934219\";\"mauvilac\";\"other\"\n\"934225\";\"Olivia\";\"main\"\n\"934225\";\"Oliva\";\"other\"\n\"934229\";\"Nouvelle France\";\"main\"\n\"934232\";\"Notre Dame\";\"main\"\n\"934232\";\"Notre Dame Station\";\"other\"\n\"934240\";\"New Grove\";\"main\"\n\"934240\";\"New Grove Station\";\"other\"\n\"934255\";\"Piton\";\"main\"\n\"934255\";\"Mont Piton\";\"other\"\n\"934262\";\"Montagne Blanche\";\"main\"\n\"934262\";\"Blanche Mont\";\"other\"\n\"934262\";\"Mont Blanche\";\"other\"\n\"934277\";\"Moka\";\"main\"\n\"934277\";\"Moka Village\";\"other\"\n\"934282\";\"Midlands\";\"main\"\n\"934288\";\"Melrose\";\"main\"\n\"934322\";\"Mahébourg\";\"main\"\n\"934322\";\"Mahebourg\";\"ascii\"\n\"934333\";\"Long Mountain\";\"main\"\n\"934333\";\"Mont Longue\";\"other\"\n\"934390\";\"Lalmatie\";\"main\"\n\"934400\";\"La Dagotière\";\"main\"\n\"934400\";\"La Dagotiere\";\"ascii\"\n\"934400\";\"Dagotiere\";\"other\"\n\"934400\";\"Dagotière\";\"other\"\n\"934459\";\"Grand Sable\";\"main\"\n\"934475\";\"Grande Rivière Sud Est\";\"main\"\n\"934475\";\"Grande Riviere Sud Est\";\"ascii\"\n\"934475\";\"Grand River\";\"other\"\n\"934475\";\"Grand River South East\";\"other\"\n\"934475\";\"Grande Reviere Sud Est\";\"other\"\n\"934479\";\"Grand Gaube\";\"main\"\n\"934479\";\"Grande Gaube\";\"other\"\n\"934482\";\"Grand Baie\";\"main\"\n\"934482\";\"Grande Baie\";\"other\"\n\"934485\";\"Grand Bois\";\"main\"\n\"934488\";\"Goodlands\";\"main\"\n\"934513\";\"Fond du Sac\";\"main\"\n\"934517\";\"Flic en Flac\";\"main\"\n\"934517\";\"Flic-en-Flacq\";\"other\"\n\"934533\";\"Espérance Trébuchet\";\"main\"\n\"934533\";\"Esperance Trebuchet\";\"ascii\"\n\"934533\";\"Esperance\";\"other\"\n\"934533\";\"Espérance\";\"other\"\n\"934570\";\"Curepipe\";\"main\"\n\"934570\";\"Kurepipe\";\"other\"\n\"934570\";\"Курепипе\";\"other\"\n\"934573\";\"Crève Coeur\";\"main\"\n\"934573\";\"Creve Coeur\";\"ascii\"\n\"934599\";\"Clémencia\";\"main\"\n\"934599\";\"Clemencia\";\"ascii\"\n\"934614\";\"Chemin Grenier\";\"main\"\n\"934624\";\"Chamouny\";\"main\"\n\"934631\";\"Centre de Flacq\";\"main\"\n\"934631\";\"Centre of Flacq\";\"other\"\n\"934631\";\"Flacq\";\"other\"\n\"934644\";\"Cascavelle\";\"main\"\n\"934649\";\"Cap Malheureux\";\"main\"\n\"934656\";\"Camp Thorel\";\"main\"\n\"934656\";\"Camp Thoret\";\"other\"\n\"934660\";\"Camp Diable\";\"main\"\n\"934661\";\"Camp de Masque\";\"main\"\n\"934661\";\"Camp de Masque Station\";\"other\"\n\"934677\";\"Brisée Verdière\";\"main\"\n\"934677\";\"Brisee Verdiere\";\"ascii\"\n\"934693\";\"Bon Accueil\";\"main\"\n\"934705\";\"Bois des Amourettes\";\"main\"\n\"934750\";\"Bel Air\";\"main\"\n\"934750\";\"Riviere Seche\";\"other\"\n\"934750\";\"Rivière Sèche\";\"other\"\n\"934753\";\"Beau Vallon\";\"main\"\n\"934812\";\"Albion\";\"main\"\n\"1106584\";\"Laventure\";\"main\"\n\"1106589\";\"Cluny\";\"main\"\n\"1106596\";\"Cottage\";\"main\"\n\"1106614\";\"Grande Pointe aux Piments\";\"main\"\n\"1106621\";\"Congomah\";\"main\"\n\"1106630\";\"Amaury\";\"main\"\n\"1106631\";\"Plaines des Roches\";\"main\"\n\"1106638\";\"Mare La Chaux\";\"main\"\n\"1106643\";\"Quatre Cocos\";\"main\"\n\"1106645\";\"Camp Ithier\";\"main\"\n\"1106660\";\"Ecroignard\";\"main\"\n\"1106677\";\"Bambous Virieux\";\"main\"\n\"1106763\";\"Gros Cailloux\";\"main\"\n\"1106771\";\"Mapou\";\"main\"\n\"1106788\";\"Dubreuil\";\"main\"\n\"1106809\";\"Le Hochet\";\"main\"\n\"1106811\";\"Calebasses\";\"main\"\n\"1106813\";\"Arsenal\";\"main\"\n\"1281980\";\"Midu\";\"main\"\n\"1282027\";\"Male\";\"main\"\n\"1282027\";\"Maale\";\"other\"\n\"1282027\";\"Malé\";\"other\"\n\"1282027\";\"Malė\";\"other\"\n\"1282027\";\"ma lei\";\"other\"\n\"1282027\";\"ma lu\";\"other\"\n\"1282027\";\"male\";\"other\"\n\"1282027\";\"malle\";\"other\"\n\"1282027\";\"mare\";\"other\"\n\"1282027\";\"Μαλέ\";\"other\"\n\"1282027\";\"Мале\";\"other\"\n\"1282027\";\"מאלה\";\"other\"\n\"1282027\";\"މާލެ\";\"other\"\n\"1282027\";\"माले\";\"other\"\n\"1282027\";\"মালে\";\"other\"\n\"1282027\";\"மாலே\";\"other\"\n\"1282027\";\"มาเล\";\"other\"\n\"1282027\";\"มาเล่\";\"other\"\n\"1282027\";\"マレ\";\"other\"\n\"1282027\";\"瑪律\";\"other\"\n\"1282027\";\"馬累\";\"other\"\n\"1282027\";\"말레\";\"other\"\n\"1282256\";\"Hithadhoo\";\"main\"\n\"1282256\";\"Hitaddu\";\"other\"\n\"1337605\";\"Mahibadhoo\";\"main\"\n\"1337606\";\"Eydhafushi\";\"main\"\n\"1337607\";\"Kudahuvadhoo\";\"main\"\n\"1337610\";\"Thinadhoo\";\"main\"\n\"1337612\";\"Dhidhdhoo\";\"main\"\n\"1337613\";\"Kulhudhuffushi\";\"main\"\n\"1337616\";\"Naifaru\";\"main\"\n\"1337617\";\"Muli\";\"main\"\n\"1337618\";\"Manadhoo\";\"main\"\n\"1337619\";\"Ugoofaaru\";\"main\"\n\"1337619\";\"U'ngoofaaru\";\"other\"\n\"1337620\";\"Funadhoo\";\"main\"\n\"1337620\";\"Farukolhufunadhoo\";\"other\"\n\"235715\";\"Karonga\";\"main\"\n\"235715\";\"Каронга\";\"other\"\n\"235751\";\"Chitipa\";\"main\"\n\"235751\";\"Chipita\";\"other\"\n\"235751\";\"Fort Hill\";\"other\"\n\"923295\";\"Zomba\";\"main\"\n\"923295\";\"song ba\";\"other\"\n\"923295\";\"zonba\";\"other\"\n\"923295\";\"Зомба\";\"other\"\n\"923295\";\"ゾンバ\";\"other\"\n\"923295\";\"松巴\";\"other\"\n\"923652\";\"Thyolo\";\"main\"\n\"923652\";\"Cholo\";\"other\"\n\"924055\";\"Salima\";\"main\"\n\"924055\";\"Салима\";\"other\"\n\"924102\";\"Rumphi\";\"main\"\n\"924102\";\"Rumpi\";\"other\"\n\"924102\";\"Rumpi Boma\";\"other\"\n\"924206\";\"Phalombe\";\"main\"\n\"924206\";\"Palombe\";\"other\"\n\"924206\";\"Palombe Market\";\"other\"\n\"924491\";\"Ntchisi\";\"main\"\n\"924491\";\"Nchisi\";\"other\"\n\"924491\";\"Nchisi Boma\";\"other\"\n\"924492\";\"Ntcheu\";\"main\"\n\"924492\";\"Ncheu\";\"other\"\n\"924492\";\"Nitcheu\";\"other\"\n\"924572\";\"Nsanje\";\"main\"\n\"924572\";\"Chimombi\";\"other\"\n\"924572\";\"Port Herald\";\"other\"\n\"924705\";\"Nkhotakota\";\"main\"\n\"924705\";\"Kota Kota\";\"other\"\n\"924732\";\"Nkhata Bay\";\"main\"\n\"924732\";\"Nkata\";\"other\"\n\"924732\";\"Nkata Bay\";\"other\"\n\"925498\";\"Mzimba\";\"main\"\n\"925498\";\"Мзимба\";\"other\"\n\"925596\";\"Mwanza\";\"main\"\n\"925789\";\"Mulanje\";\"main\"\n\"925789\";\"Mlange\";\"other\"\n\"925789\";\"Mlanje\";\"other\"\n\"925789\";\"Mlanje Boma\";\"other\"\n\"926087\";\"Mponela\";\"main\"\n\"926308\";\"Monkey Bay\";\"main\"\n\"926308\";\"Lusumbwe\";\"other\"\n\"926747\";\"Mchinji\";\"main\"\n\"926747\";\"Chimji\";\"other\"\n\"926747\";\"Fort Manning\";\"other\"\n\"927246\";\"Mangochi\";\"main\"\n\"927246\";\"Fort Johnston\";\"other\"\n\"927246\";\"Mangoche\";\"other\"\n\"927246\";\"Mponda\";\"other\"\n\"927246\";\"Мангочи\";\"other\"\n\"927643\";\"Machinga\";\"main\"\n\"927792\";\"Luchenza\";\"main\"\n\"927792\";\"Luchenya\";\"other\"\n\"927792\";\"Lughenza\";\"other\"\n\"927834\";\"Liwonde\";\"main\"\n\"927834\";\"Old Liwonde Boma\";\"other\"\n\"927856\";\"Livingstonia\";\"main\"\n\"927856\";\"Kondowe\";\"other\"\n\"927856\";\"Livingstonia Mission\";\"other\"\n\"927967\";\"Lilongwe\";\"main\"\n\"927967\";\"Lilon'nkoue\";\"other\"\n\"927967\";\"Lilonguee\";\"other\"\n\"927967\";\"Lilongve\";\"other\"\n\"927967\";\"Lilongvė\";\"other\"\n\"927967\";\"Lilongüe\";\"other\"\n\"927967\";\"Lílongve\";\"other\"\n\"927967\";\"li long gui\";\"other\"\n\"927967\";\"lillong-gwe\";\"other\"\n\"927967\";\"lylwngwwh\";\"other\"\n\"927967\";\"rironguu~e\";\"other\"\n\"927967\";\"Λιλόνγκουε\";\"other\"\n\"927967\";\"Лилонгве\";\"other\"\n\"927967\";\"Լիլոնգվե\";\"other\"\n\"927967\";\"לילונגווה\";\"other\"\n\"927967\";\"ሊሎንግዌ\";\"other\"\n\"927967\";\"リロングウェ\";\"other\"\n\"927967\";\"利隆圭\";\"other\"\n\"927967\";\"릴롱궤\";\"other\"\n\"928534\";\"Kasungu\";\"main\"\n\"928534\";\"Касунгу\";\"other\"\n\"929977\";\"Dowa\";\"main\"\n\"930025\";\"Dedza\";\"main\"\n\"930580\";\"Chiradzulu\";\"main\"\n\"930580\";\"Chiradzulu Boma\";\"other\"\n\"930629\";\"Chipoka\";\"main\"\n\"931070\";\"Chikwawa\";\"main\"\n\"931755\";\"Blantyre\";\"main\"\n\"931755\";\"Blantairas\";\"other\"\n\"931755\";\"Blantajr\";\"other\"\n\"931755\";\"Kapeni\";\"other\"\n\"931755\";\"burantaiya\";\"other\"\n\"931755\";\"Блантайр\";\"other\"\n\"931755\";\"ブランタイヤ\";\"other\"\n\"931865\";\"Balaka\";\"main\"\n\"931865\";\"Balakas\";\"other\"\n\"931865\";\"Palaka\";\"other\"\n\"931865\";\"Балака\";\"other\"\n\"3482886\";\"Cuauhtémoc\";\"main\"\n\"3482886\";\"Cuauhtemoc\";\"ascii\"\n\"3483063\";\"Xicoténcatl\";\"main\"\n\"3483063\";\"Xicotencatl\";\"ascii\"\n\"3483197\";\"San Fernando\";\"main\"\n\"3483393\";\"Gustavo Díaz Ordaz\";\"main\"\n\"3483393\";\"Gustavo Diaz Ordaz\";\"ascii\"\n\"3513966\";\"Zumpango de Ocampo\";\"main\"\n\"3513966\";\"Zumpango\";\"other\"\n\"3513966\";\"Zumpango-de-Okampo\";\"other\"\n\"3513966\";\"Зумпанго-де-Окампо\";\"other\"\n\"3513967\";\"Zumpango del Río\";\"main\"\n\"3513967\";\"Zumpango del Rio\";\"ascii\"\n\"3513967\";\"Xumpango\";\"other\"\n\"3513967\";\"Zumpango\";\"other\"\n\"3513967\";\"Zumpango-del'-Rio\";\"other\"\n\"3513967\";\"Зумпанго-дель-Рио\";\"other\"\n\"3513969\";\"Zumpahuacán\";\"main\"\n\"3513969\";\"Zumpahuacan\";\"ascii\"\n\"3513976\";\"Zozocolco de Hidalgo\";\"main\"\n\"3513976\";\"Bozocalco\";\"other\"\n\"3513976\";\"Zozocolco\";\"other\"\n\"3514007\";\"Zongozotla\";\"main\"\n\"3514008\";\"Zongolica\";\"main\"\n\"3514013\";\"Zolotepec\";\"main\"\n\"3514013\";\"Santa Maria Zolotepec\";\"other\"\n\"3514013\";\"Santa María Zolotepec\";\"other\"\n\"3514021\";\"Zitlala\";\"main\"\n\"3514026\";\"Zinacantán\";\"main\"\n\"3514026\";\"Zinacantan\";\"ascii\"\n\"3514026\";\"Zinacatan\";\"other\"\n\"3514026\";\"Zinacatán\";\"other\"\n\"3514027\";\"Zimatlán de Álvarez\";\"main\"\n\"3514027\";\"Zimatlan de Alvarez\";\"ascii\"\n\"3514027\";\"Zimatlan\";\"other\"\n\"3514027\";\"Zimatlán\";\"other\"\n\"3514031\";\"Zimapán\";\"main\"\n\"3514031\";\"Zimapan\";\"ascii\"\n\"3514043\";\"Zempoala\";\"main\"\n\"3514044\";\"Zempoala\";\"main\"\n\"3514049\";\"Zaragoza\";\"main\"\n\"3514051\";\"Zaragoza\";\"main\"\n\"3514051\";\"Zaragosa\";\"other\"\n\"3514052\";\"Zaragoza de Guadalupe\";\"main\"\n\"3514052\";\"Zaragoza\";\"other\"\n\"3514060\";\"Zapotlán de Juárez\";\"main\"\n\"3514060\";\"Zapotlan de Juarez\";\"ascii\"\n\"3514060\";\"Zapotlan\";\"other\"\n\"3514060\";\"Zapotlán\";\"other\"\n\"3514134\";\"Zacualtipán\";\"main\"\n\"3514134\";\"Zacualtipan\";\"ascii\"\n\"3514138\";\"Zacualpan\";\"main\"\n\"3514138\";\"Zacoalpan\";\"other\"\n\"3514148\";\"Zacatlán\";\"main\"\n\"3514148\";\"Zacatlan\";\"ascii\"\n\"3514148\";\"Zacatlan de las Manzanas\";\"other\"\n\"3514162\";\"Zacatepec\";\"main\"\n\"3514163\";\"Zacatepec\";\"main\"\n\"3514179\";\"Zacapoaxtla\";\"main\"\n\"3514272\";\"Yehualtepec\";\"main\"\n\"3514277\";\"Yecuatla\";\"main\"\n\"3514278\";\"Yecapixtla\";\"main\"\n\"3514278\";\"Yacapitztla\";\"other\"\n\"3514278\";\"Yecapixilac\";\"other\"\n\"3514321\";\"Yautepec\";\"main\"\n\"3514326\";\"Yaonáhuac\";\"main\"\n\"3514326\";\"Yaonahuac\";\"ascii\"\n\"3514329\";\"Yanga\";\"main\"\n\"3514329\";\"San Lorenzo\";\"other\"\n\"3514329\";\"San Lorenzo Yanga\";\"other\"\n\"3514329\";\"San Lorenzo de Cerralvo\";\"other\"\n\"3514349\";\"Yajalón\";\"main\"\n\"3514349\";\"Yajalon\";\"ascii\"\n\"3514398\";\"Xoxocotla\";\"main\"\n\"3514409\";\"Xonacatlán\";\"main\"\n\"3514409\";\"Xonacatlan\";\"ascii\"\n\"3514409\";\"San Francisco\";\"other\"\n\"3514409\";\"San Francisco Xonacatlan\";\"other\"\n\"3514409\";\"San Francisco Xonacatlán\";\"other\"\n\"3514409\";\"Xonacaxtlan\";\"other\"\n\"3514409\";\"Xonacaxtlán\";\"other\"\n\"3514414\";\"Xometla\";\"main\"\n\"3514414\";\"Xametla\";\"other\"\n\"3514424\";\"Xocotla\";\"main\"\n\"3514433\";\"Xochitlán\";\"main\"\n\"3514433\";\"Xochitlan\";\"ascii\"\n\"3514437\";\"Xochitepec\";\"main\"\n\"3514437\";\"Xochiltepec\";\"other\"\n\"3514440\";\"Xochistlahuaca\";\"main\"\n\"3514450\";\"Xochimilco\";\"main\"\n\"3514454\";\"Xochihuehuetlán\";\"main\"\n\"3514454\";\"Xochihuehuetlan\";\"ascii\"\n\"3514502\";\"Xilitla\";\"main\"\n\"3514502\";\"Xililla\";\"other\"\n\"3514510\";\"Xicotepec de Juárez\";\"main\"\n\"3514510\";\"Xicotepec de Juarez\";\"ascii\"\n\"3514510\";\"Juarez Xicotepec\";\"other\"\n\"3514510\";\"Juárez Xicotepec\";\"other\"\n\"3514510\";\"Villa Juarez\";\"other\"\n\"3514510\";\"Villa Juárez\";\"other\"\n\"3514518\";\"Xico\";\"main\"\n\"3514518\";\"Jico\";\"other\"\n\"3514519\";\"Xico\";\"main\"\n\"3514583\";\"Xaltianguis\";\"main\"\n\"3514583\";\"Jaltianguis\";\"other\"\n\"3514589\";\"Xaltepec\";\"main\"\n\"3514589\";\"Xultepec\";\"other\"\n\"3514592\";\"Xalpatlahuac\";\"main\"\n\"3514597\";\"Xalmimilulco\";\"main\"\n\"3514597\";\"Xalminilulco\";\"other\"\n\"3514633\";\"Vista Hermosa\";\"main\"\n\"3514633\";\"Colonia Vista Hermosa\";\"other\"\n\"3514658\";\"Villa Victoria\";\"main\"\n\"3514663\";\"Alvaro Obregón\";\"main\"\n\"3514663\";\"Alvaro Obregon\";\"ascii\"\n\"3514663\";\"Obergen Villa\";\"other\"\n\"3514663\";\"Obrogen Villa\";\"other\"\n\"3514663\";\"San Angel\";\"other\"\n\"3514663\";\"Villa Obregon\";\"other\"\n\"3514663\";\"Villa Obregón\";\"other\"\n\"3514670\";\"Villahermosa\";\"main\"\n\"3514670\";\"Vil'jaehrmosa\";\"other\"\n\"3514670\";\"Villa Hermosa\";\"other\"\n\"3514670\";\"Вильяэрмоса\";\"other\"\n\"3514674\";\"Gustavo A. Madero\";\"main\"\n\"3514674\";\"Guadalupe\";\"other\"\n\"3514674\";\"Guadalupe Hidalgo\";\"other\"\n\"3514674\";\"Villa Gustavo A. Madero\";\"other\"\n\"3514674\";\"Villa Madero\";\"other\"\n\"3514674\";\"Villa de Guadalupe\";\"other\"\n\"3514674\";\"Villa de Guadalupe Hidalgo\";\"other\"\n\"3514675\";\"Villa Guerrero\";\"main\"\n\"3514675\";\"Tecualaya\";\"other\"\n\"3514678\";\"Villa el Triunfo\";\"main\"\n\"3514682\";\"Villa Cuauhtémoc\";\"main\"\n\"3514682\";\"Villa Cuauhtemoc\";\"ascii\"\n\"3514682\";\"Cuauhtemoc\";\"other\"\n\"3514682\";\"Cuauhtémoc\";\"other\"\n\"3514682\";\"Pueblo Viejo\";\"other\"\n\"3514683\";\"Villa Cuauhtémoc\";\"main\"\n\"3514683\";\"Villa Cuauhtemoc\";\"ascii\"\n\"3514683\";\"Cuauhtemoc\";\"other\"\n\"3514683\";\"Cuauhtémoc\";\"other\"\n\"3514683\";\"Villa Cuautemoc\";\"other\"\n\"3514684\";\"Villa Corzo\";\"main\"\n\"3514684\";\"Angel Albino Corzo\";\"other\"\n\"3514685\";\"Villa Comaltitlán\";\"main\"\n\"3514685\";\"Villa Comaltitlan\";\"ascii\"\n\"3514685\";\"Pubelo Nuevo\";\"other\"\n\"3514685\";\"Pueblo Nuevo\";\"other\"\n\"3514685\";\"Pueblo Nuevo Comaltitlan\";\"other\"\n\"3514685\";\"Pueblo Nuevo Comaltitlán\";\"other\"\n\"3514686\";\"Villa Azueta\";\"main\"\n\"3514686\";\"Tesechoacan\";\"other\"\n\"3514783\";\"Veracruz\";\"main\"\n\"3514783\";\"Heroica Veracruz\";\"other\"\n\"3514783\";\"Veracruz Llave\";\"other\"\n\"3514783\";\"Verakrus\";\"other\"\n\"3514783\";\"Веракрус\";\"other\"\n\"3514785\";\"Venustiano Carranza\";\"main\"\n\"3514785\";\"San Bartolo\";\"other\"\n\"3514785\";\"San Bartolome\";\"other\"\n\"3514785\";\"San Bartolomé\";\"other\"\n\"3514833\";\"Veinte de Noviembre\";\"main\"\n\"3514843\";\"Vega de Alatorre\";\"main\"\n\"3514868\";\"Valle Hermoso\";\"main\"\n\"3514876\";\"Valladolid\";\"main\"\n\"3514906\";\"Ursulo Galván\";\"main\"\n\"3514906\";\"Ursulo Galvan\";\"ascii\"\n\"3514906\";\"San Carlos\";\"other\"\n\"3514916\";\"Unión Hidalgo\";\"main\"\n\"3514916\";\"Union Hidalgo\";\"ascii\"\n\"3514929\";\"Umán\";\"main\"\n\"3514929\";\"Uman\";\"ascii\"\n\"3514929\";\"San Antonio Tedzidz\";\"other\"\n\"3514929\";\"Uman'\";\"other\"\n\"3514929\";\"Умань\";\"other\"\n\"3514961\";\"Tzucacab\";\"main\"\n\"3514961\";\"Tzucaceb\";\"other\"\n\"3514972\";\"Tzimol\";\"main\"\n\"3514998\";\"Tuzamapan\";\"main\"\n\"3514998\";\"Tuzanapan\";\"other\"\n\"3515001\";\"Tuxtla Gutiérrez\";\"main\"\n\"3515001\";\"Tuxtla Gutierrez\";\"ascii\"\n\"3515001\";\"Gutierrez\";\"other\"\n\"3515001\";\"Tustla-Gut'erres\";\"other\"\n\"3515001\";\"Tuxtla\";\"other\"\n\"3515001\";\"Tuxtla Gtz\";\"other\"\n\"3515001\";\"Tuxtla Gtz.\";\"other\"\n\"3515001\";\"Tuxtla Gutierres\";\"other\"\n\"3515001\";\"Тустла-Гутьеррес\";\"other\"\n\"3515002\";\"Tuxtla Chico\";\"main\"\n\"3515011\";\"Tuxpan de Rodríguez Cano\";\"main\"\n\"3515011\";\"Tuxpan de Rodriguez Cano\";\"ascii\"\n\"3515011\";\"Tuxpam\";\"other\"\n\"3515011\";\"Tuxpan\";\"other\"\n\"3515011\";\"Túxpam\";\"other\"\n\"3515026\";\"Tunkás\";\"main\"\n\"3515026\";\"Tunkas\";\"ascii\"\n\"3515040\";\"Tulum\";\"main\"\n\"3515040\";\"Tulun\";\"other\"\n\"3515040\";\"Tulún\";\"other\"\n\"3515042\";\"Tultitlán\";\"main\"\n\"3515042\";\"Tultitlan\";\"ascii\"\n\"3515042\";\"Tul'titlan\";\"other\"\n\"3515042\";\"Tultitla de Mariano Escobedo\";\"other\"\n\"3515042\";\"Tultitlá de Mariano Escobedo\";\"other\"\n\"3515042\";\"Тультитлан\";\"other\"\n\"3515044\";\"Tultepec\";\"main\"\n\"3515044\";\"San Pedro de Tultepec\";\"other\"\n\"3515056\";\"Tulcingo del Valle\";\"main\"\n\"3515056\";\"Tulcingo\";\"other\"\n\"3515056\";\"Tulcingo de Valle\";\"other\"\n\"3515062\";\"Tulancingo\";\"main\"\n\"3515062\";\"Tulancingo de Bravo\";\"other\"\n\"3515064\";\"Tula de Allende\";\"main\"\n\"3515064\";\"El Tule\";\"other\"\n\"3515064\";\"Tula\";\"other\"\n\"3515064\";\"Tula-de-Al'ende\";\"other\"\n\"3515064\";\"Тула-де-Альенде\";\"other\"\n\"3515068\";\"Tula\";\"main\"\n\"3515086\";\"Trinidad de Zaachila\";\"main\"\n\"3515086\";\"Trinidad\";\"other\"\n\"3515086\";\"Zaachila\";\"other\"\n\"3515086\";\"Zoochila\";\"other\"\n\"3515120\";\"Tres Picos\";\"main\"\n\"3515120\";\"La Tigrera\";\"other\"\n\"3515184\";\"Totutla\";\"main\"\n\"3515184\";\"Tolutla\";\"other\"\n\"3515195\";\"Totolapan\";\"main\"\n\"3515200\";\"Totolapa\";\"main\"\n\"3515200\";\"Totolapan\";\"other\"\n\"3515202\";\"Totolapa\";\"main\"\n\"3515205\";\"Totocuitlapilco\";\"main\"\n\"3515290\";\"Tomatlán\";\"main\"\n\"3515290\";\"Tomatlan\";\"ascii\"\n\"3515302\";\"Toluca\";\"main\"\n\"3515302\";\"Tollohcan\";\"other\"\n\"3515302\";\"Toluca de Lerdo\";\"other\"\n\"3515302\";\"Toluka\";\"other\"\n\"3515302\";\"Tōllohcān\";\"other\"\n\"3515302\";\"Толука\";\"other\"\n\"3515321\";\"Tolcayuca\";\"main\"\n\"3515326\";\"Tocuila\";\"main\"\n\"3515326\";\"Toquila\";\"other\"\n\"3515330\";\"Tochtepec\";\"main\"\n\"3515332\";\"Tochimilco\";\"main\"\n\"3515333\";\"Tocatlán\";\"main\"\n\"3515333\";\"Tocatlan\";\"ascii\"\n\"3515333\";\"Santa Maria Tocatlan\";\"other\"\n\"3515333\";\"Santa María Tocatlán\";\"other\"\n\"3515343\";\"Tlayacapan\";\"main\"\n\"3515349\";\"Tlaxco de Morelos\";\"main\"\n\"3515349\";\"San Agustin Tlaxco\";\"other\"\n\"3515349\";\"San Agustín Tlaxco\";\"other\"\n\"3515349\";\"Tlaxco\";\"other\"\n\"3515351\";\"Tlaxcoapan\";\"main\"\n\"3515354\";\"Tlaxco\";\"main\"\n\"3515358\";\"Tlaxcalancingo\";\"main\"\n\"3515358\";\"Tlaxcalenzingo\";\"other\"\n\"3515358\";\"Tlazcalancingo\";\"other\"\n\"3515363\";\"Tlatlauquitepec\";\"main\"\n\"3515363\";\"Tatlauquitepec\";\"other\"\n\"3515369\";\"Tlatenchi\";\"main\"\n\"3515369\";\"Tlatenchu\";\"other\"\n\"3515373\";\"Tlaquiltenango\";\"main\"\n\"3515384\";\"Tlapa de Comonfort\";\"main\"\n\"3515384\";\"Tlapa\";\"other\"\n\"3515384\";\"Tlapa-de-Komonfort\";\"other\"\n\"3515384\";\"Тлапа-де-Комонфорт\";\"other\"\n\"3515386\";\"Tlapacoyan\";\"main\"\n\"3515394\";\"Tlanepantla\";\"main\"\n\"3515397\";\"Tlanchinol\";\"main\"\n\"3515399\";\"Tlanalapan\";\"main\"\n\"3515399\";\"Tlanalapa\";\"other\"\n\"3515401\";\"Tlanalapan\";\"main\"\n\"3515401\";\"Tlanalapa\";\"other\"\n\"3515410\";\"Tlamacazapa\";\"main\"\n\"3515410\";\"San Juan Tlamacazapa\";\"other\"\n\"3515410\";\"Tlamacaxapa\";\"other\"\n\"3515410\";\"Tlamacaxpan\";\"other\"\n\"3515415\";\"Tlaltizapán\";\"main\"\n\"3515415\";\"Tlaltizapan\";\"ascii\"\n\"3515420\";\"Tlaltenango\";\"main\"\n\"3515428\";\"Tlalpan\";\"main\"\n\"3515428\";\"Tlalpam\";\"other\"\n\"3515431\";\"Tlalnepantla\";\"main\"\n\"3515431\";\"Tlalnepantla de Comonfort\";\"other\"\n\"3515431\";\"Tlalnepantla de Galeana\";\"other\"\n\"3515431\";\"Tlalnepantla de baz\";\"other\"\n\"3515431\";\"Tlanepantla de baz\";\"other\"\n\"3515431\";\"Тлалнепантла\";\"other\"\n\"3515434\";\"Tlalnepantla\";\"main\"\n\"3515434\";\"Tlanepantla\";\"other\"\n\"3515434\";\"Тлалнепантла\";\"other\"\n\"3515438\";\"Tlalmanalco de Velázquez\";\"main\"\n\"3515438\";\"Tlalmanalco de Velazquez\";\"ascii\"\n\"3515438\";\"Tlalmanalco\";\"other\"\n\"3515442\";\"Tlalixtac de Cabrera\";\"main\"\n\"3515442\";\"Tlalixtac\";\"other\"\n\"3515459\";\"Tlahuelilpan\";\"main\"\n\"3515459\";\"Tlahuelilpa\";\"other\"\n\"3515459\";\"Tlahuelilpa de Ocampo\";\"other\"\n\"3515459\";\"Tlanuclipa\";\"other\"\n\"3515463\";\"Tlahuac\";\"main\"\n\"3515473\";\"Tlacotepec\";\"main\"\n\"3515475\";\"Tlacotepec\";\"main\"\n\"3515477\";\"Tlacotepec\";\"main\"\n\"3515479\";\"Tlacotalpan\";\"main\"\n\"3515484\";\"Tlacolula de Matamoros\";\"main\"\n\"3515484\";\"Tlacolula\";\"other\"\n\"3515487\";\"Tlacojalpan\";\"main\"\n\"3515496\";\"Tlachichuca\";\"main\"\n\"3515504\";\"Tizimín\";\"main\"\n\"3515504\";\"Tizimin\";\"ascii\"\n\"3515504\";\"Titzimin\";\"other\"\n\"3515505\";\"Tizayuca\";\"main\"\n\"3515505\";\"Tizayucan\";\"other\"\n\"3515510\";\"Tixtla de Guerrero\";\"main\"\n\"3515510\";\"Tikhtla-de-Gerrero\";\"other\"\n\"3515510\";\"Tixtla\";\"other\"\n\"3515510\";\"Тихтла-де-Герреро\";\"other\"\n\"3515512\";\"Tixpehual\";\"main\"\n\"3515512\";\"Tixpeual\";\"other\"\n\"3515512\";\"Tixpheual\";\"other\"\n\"3515512\";\"Tixpéual\";\"other\"\n\"3515521\";\"Tixkokob\";\"main\"\n\"3515567\";\"Timucuy\";\"main\"\n\"3515567\";\"Timucay\";\"other\"\n\"3515567\";\"Tixmucuy\";\"other\"\n\"3515570\";\"Tilzapotla\";\"main\"\n\"3515600\";\"Tila\";\"main\"\n\"3515603\";\"Tihuatlán\";\"main\"\n\"3515603\";\"Tihuatlan\";\"ascii\"\n\"3515643\";\"Tierra Colorada\";\"main\"\n\"3515665\";\"Ticul\";\"main\"\n\"3515679\";\"Tianguistenco\";\"main\"\n\"3515679\";\"San Tianguistenco\";\"other\"\n\"3515679\";\"Santiago Tianguistenco\";\"other\"\n\"3515679\";\"Tianguistenco de Galeana\";\"other\"\n\"3515679\";\"Tianguistengo\";\"other\"\n\"3515690\";\"Tezontepec de Aldama\";\"main\"\n\"3515690\";\"Texontepec\";\"other\"\n\"3515690\";\"Tezontepec\";\"other\"\n\"3515690\";\"Tezontepec Aldama\";\"other\"\n\"3515691\";\"Tezontepec\";\"main\"\n\"3515696\";\"Teziutlán\";\"main\"\n\"3515696\";\"Teziutlan\";\"ascii\"\n\"3515710\";\"Texistepec\";\"main\"\n\"3515715\";\"Texcoco de Mora\";\"main\"\n\"3515715\";\"Texcoco\";\"other\"\n\"3515715\";\"Tezcoco\";\"other\"\n\"3515715\";\"tesukoko\";\"other\"\n\"3515715\";\"テスココ\";\"other\"\n\"3515735\";\"Tetzoyocan\";\"main\"\n\"3515735\";\"San Gabriel Tetzoyocan\";\"other\"\n\"3515744\";\"Tetiz\";\"main\"\n\"3515751\";\"Tetepango\";\"main\"\n\"3515753\";\"Tetelzingo\";\"main\"\n\"3515753\";\"Tetelcingo\";\"other\"\n\"3515757\";\"Teteles\";\"main\"\n\"3515762\";\"Tetela de Ocampo\";\"main\"\n\"3515762\";\"Tetela\";\"other\"\n\"3515762\";\"Tetetla de Ocampo\";\"other\"\n\"3515763\";\"Tetela del Volcán\";\"main\"\n\"3515763\";\"Tetela del Volcan\";\"ascii\"\n\"3515763\";\"Telela del Volcan\";\"other\"\n\"3515767\";\"Tetecala\";\"main\"\n\"3515782\";\"Terrenate\";\"main\"\n\"3515782\";\"San Nicolas\";\"other\"\n\"3515782\";\"San Nicolas Terrenate\";\"other\"\n\"3515782\";\"San Nicolás Terrenate\";\"other\"\n\"3515794\";\"Tequixquiac\";\"main\"\n\"3515794\";\"Santiago Tequixquiac\";\"other\"\n\"3515794\";\"Tequisquiac\";\"other\"\n\"3515796\";\"Tequisquiapan\";\"main\"\n\"3515796\";\"Tequisquiapam\";\"other\"\n\"3515799\";\"Tequila\";\"main\"\n\"3515799\";\"Roa Barcenas\";\"other\"\n\"3515799\";\"San Pedro\";\"other\"\n\"3515799\";\"San Pedro Tequila\";\"other\"\n\"3515799\";\"Tekila\";\"other\"\n\"3515799\";\"Текила\";\"other\"\n\"3515806\";\"Tepulco\";\"main\"\n\"3515807\";\"Cuautitlán Izcalli\";\"main\"\n\"3515807\";\"Cuautitlan Izcalli\";\"ascii\"\n\"3515807\";\"Izcalli\";\"other\"\n\"3515807\";\"San Francisco Tepoiaco\";\"other\"\n\"3515807\";\"Tepujaco\";\"other\"\n\"3515811\";\"Tepoztlán\";\"main\"\n\"3515811\";\"Tepoztlan\";\"ascii\"\n\"3515811\";\"Tepoxtlan\";\"other\"\n\"3515811\";\"Tepoxtlán\";\"other\"\n\"3515827\";\"Tepotzotlán\";\"main\"\n\"3515827\";\"Tepotzotlan\";\"ascii\"\n\"3515827\";\"Tepozotlan\";\"other\"\n\"3515848\";\"Tepexi de Rodríguez\";\"main\"\n\"3515848\";\"Tepexi de Rodriguez\";\"ascii\"\n\"3515848\";\"Tepexi\";\"other\"\n\"3515853\";\"Tepetzintla\";\"main\"\n\"3515862\";\"Tepetlaoxtoc de Hidalgo\";\"main\"\n\"3515862\";\"Tepetlaoxtoc\";\"other\"\n\"3515868\";\"Tepetitlán\";\"main\"\n\"3515868\";\"Tepetitlan\";\"ascii\"\n\"3515868\";\"Tepetitla\";\"other\"\n\"3515870\";\"Tepetitla\";\"main\"\n\"3515876\";\"Tepepa\";\"main\"\n\"3515876\";\"Tetepa\";\"other\"\n\"3515877\";\"Tepeojuma\";\"main\"\n\"3515887\";\"Tepeji de Ocampo\";\"main\"\n\"3515887\";\"Tepeji\";\"other\"\n\"3515887\";\"Tepeji del Rio\";\"other\"\n\"3515887\";\"Tepeji del Rio de Ocampo\";\"other\"\n\"3515887\";\"Tepeji del Río\";\"other\"\n\"3515887\";\"Tepeji del Río de Ocampo\";\"other\"\n\"3515887\";\"Tepexi del Rio\";\"other\"\n\"3515887\";\"Tepexi del Río\";\"other\"\n\"3515900\";\"Tepecoacuilco de Trujano\";\"main\"\n\"3515900\";\"Tepecoacuilco\";\"other\"\n\"3515900\";\"Tepecuacuilco de Trujano\";\"other\"\n\"3515902\";\"Tepeapulco\";\"main\"\n\"3515904\";\"Tepeaca\";\"main\"\n\"3515906\";\"Tepatlaxco de Hidalgo\";\"main\"\n\"3515906\";\"Tepatlaxco\";\"other\"\n\"3515906\";\"Tepetlaxco\";\"other\"\n\"3515909\";\"Tepatepec\";\"main\"\n\"3515909\";\"Tecpatepec\";\"other\"\n\"3515909\";\"Tepactepec\";\"other\"\n\"3515911\";\"Tepango de Rodríguez\";\"main\"\n\"3515911\";\"Tepango de Rodriguez\";\"ascii\"\n\"3515911\";\"Tenango\";\"other\"\n\"3515911\";\"Tepango\";\"other\"\n\"3515921\";\"Tepalcingo\";\"main\"\n\"3515921\";\"Tepaltzingo\";\"other\"\n\"3515938\";\"Teopisca\";\"main\"\n\"3515938\";\"Teopisea\";\"other\"\n\"3515939\";\"Teopantlán\";\"main\"\n\"3515939\";\"Teopantlan\";\"ascii\"\n\"3515942\";\"Teoloyucan\";\"main\"\n\"3515946\";\"Teocelo\";\"main\"\n\"3515956\";\"Tenosique de Pino Suárez\";\"main\"\n\"3515956\";\"Tenosique de Pino Suarez\";\"ascii\"\n\"3515956\";\"Tenosique\";\"other\"\n\"3515991\";\"Tenango del Aire\";\"main\"\n\"3515991\";\"Tenango\";\"other\"\n\"3515993\";\"Tenango de Arista\";\"main\"\n\"3515993\";\"Tenango\";\"other\"\n\"3515993\";\"Tenango del Valle\";\"other\"\n\"3516003\";\"Tenango\";\"main\"\n\"3516005\";\"Tenango\";\"main\"\n\"3516006\";\"Tenancingo de Degollado\";\"main\"\n\"3516006\";\"Tenancingo\";\"other\"\n\"3516017\";\"Tenabó\";\"main\"\n\"3516017\";\"Tenabo\";\"ascii\"\n\"3516019\";\"Tempoal de Sánchez\";\"main\"\n\"3516019\";\"Tempoal de Sanchez\";\"ascii\"\n\"3516019\";\"Tempoal\";\"other\"\n\"3516022\";\"Temozón\";\"main\"\n\"3516022\";\"Temozon\";\"ascii\"\n\"3516030\";\"Temoaya\";\"main\"\n\"3516030\";\"Santiago\";\"other\"\n\"3516030\";\"Santiago Temoaya\";\"other\"\n\"3516031\";\"Temoac\";\"main\"\n\"3516035\";\"Temixco\";\"main\"\n\"3516035\";\"Temisco\";\"other\"\n\"3516048\";\"Temax\";\"main\"\n\"3516049\";\"Temascalcingo\";\"main\"\n\"3516049\";\"Temascalcingo de Jose Maria Velasco\";\"other\"\n\"3516049\";\"Temascalcingo de José María Velasco\";\"other\"\n\"3516050\";\"Temascalapa\";\"main\"\n\"3516050\";\"Temaxcalapa\";\"other\"\n\"3516053\";\"Temapache\";\"main\"\n\"3516056\";\"Temamatla\";\"main\"\n\"3516060\";\"Teloloapan\";\"main\"\n\"3516063\";\"Telixtac\";\"main\"\n\"3516066\";\"Telchac\";\"main\"\n\"3516072\";\"Tekit\";\"main\"\n\"3516076\";\"Tekax de Álvaro Obregón\";\"main\"\n\"3516076\";\"Tekax de Alvaro Obregon\";\"ascii\"\n\"3516076\";\"Ciudad Obregon\";\"other\"\n\"3516076\";\"Ciudad Obregón\";\"other\"\n\"3516076\";\"Obregon\";\"other\"\n\"3516076\";\"Tekax\";\"other\"\n\"3516078\";\"Tekanto\";\"main\"\n\"3516098\";\"Tehuixtla\";\"main\"\n\"3516109\";\"Tehuacán\";\"main\"\n\"3516109\";\"Tehuacan\";\"ascii\"\n\"3516125\";\"Tecpatán\";\"main\"\n\"3516125\";\"Tecpatan\";\"ascii\"\n\"3516127\";\"Tecozautla\";\"main\"\n\"3516148\";\"Tecolutla\";\"main\"\n\"3516149\";\"Tecolutilla\";\"main\"\n\"3516168\";\"Tecoh\";\"main\"\n\"3516171\";\"Tecoanapa\";\"main\"\n\"3516171\";\"Barra Tecoana\";\"other\"\n\"3516171\";\"Barra de Tecoanapa\";\"other\"\n\"3516174\";\"San Pedro Techuchulco\";\"main\"\n\"3516174\";\"Techuchulco\";\"other\"\n\"3516174\";\"Techuchulco de Allende\";\"other\"\n\"3516188\";\"Tecamachalco\";\"main\"\n\"3516191\";\"Tecali de Herrera\";\"main\"\n\"3516191\";\"Tecali\";\"other\"\n\"3516210\";\"Teapa\";\"main\"\n\"3516212\";\"Teabo\";\"main\"\n\"3516225\";\"Taxco de Alarcón\";\"main\"\n\"3516225\";\"Taxco de Alarcon\";\"ascii\"\n\"3516225\";\"Tasco\";\"other\"\n\"3516225\";\"Tasko-de-Alarkon\";\"other\"\n\"3516225\";\"Taxco\";\"other\"\n\"3516225\";\"Таско-де-Аларкон\";\"other\"\n\"3516234\";\"Tatahuicapan\";\"main\"\n\"3516234\";\"Tetahuicapan\";\"other\"\n\"3516236\";\"Tasquillo\";\"main\"\n\"3516252\";\"Tapilula\";\"main\"\n\"3516266\";\"Tapachula\";\"main\"\n\"3516266\";\"Tapachule\";\"other\"\n\"3516266\";\"Тапачуле\";\"other\"\n\"3516271\";\"Tantoyuca\";\"main\"\n\"3516271\";\"carretera platon sanchez\";\"other\"\n\"3516281\";\"Tanquián Escobedo\";\"main\"\n\"3516281\";\"Tanquian Escobedo\";\"ascii\"\n\"3516281\";\"Tanquian\";\"other\"\n\"3516344\";\"Tamulté de las Sabanas\";\"main\"\n\"3516344\";\"Tamulte de las Sabanas\";\"ascii\"\n\"3516347\";\"Tamuín\";\"main\"\n\"3516347\";\"Tamuin\";\"ascii\"\n\"3516347\";\"Villa de Guerrero\";\"other\"\n\"3516355\";\"Tampico\";\"main\"\n\"3516355\";\"Tampiko\";\"other\"\n\"3516355\";\"tampiko\";\"other\"\n\"3516355\";\"Тампико\";\"other\"\n\"3516355\";\"탐피코\";\"other\"\n\"3516376\";\"Tamiahua\";\"main\"\n\"3516385\";\"Tamazunchale\";\"main\"\n\"3516396\";\"Tamasopo\";\"main\"\n\"3516396\";\"La Palma\";\"other\"\n\"3516396\";\"Palma\";\"other\"\n\"3516410\";\"Tamalín\";\"main\"\n\"3516410\";\"Tamalin\";\"ascii\"\n\"3516425\";\"Tahmek\";\"main\"\n\"3516425\";\"Tahmec\";\"other\"\n\"3516439\";\"Tacotalpa\";\"main\"\n\"3516480\";\"Sultepec de Pedro Ascencio de Alquisiras\";\"main\"\n\"3516480\";\"Sultepec\";\"other\"\n\"3516480\";\"Sultepec de Alquiciras\";\"other\"\n\"3516480\";\"Sultepec de Pedro\";\"other\"\n\"3516480\";\"Sultepec de Pedro Ascencio\";\"other\"\n\"3516480\";\"Sultepec de Pedro Ascencio Alquisiras\";\"other\"\n\"3516488\";\"Sucila\";\"main\"\n\"3516497\";\"Suchiate\";\"main\"\n\"3516499\";\"Suchiapa\";\"main\"\n\"3516510\";\"Soyaniquilpan\";\"main\"\n\"3516510\";\"San Francisco Soyaniquilpan\";\"other\"\n\"3516511\";\"Soyaló\";\"main\"\n\"3516511\";\"Soyalo\";\"ascii\"\n\"3516515\";\"Sotuta\";\"main\"\n\"3516522\";\"Soto la Marina\";\"main\"\n\"3516526\";\"Soteapan\";\"main\"\n\"3516526\";\"Soleapan\";\"other\"\n\"3516552\";\"Soltepec\";\"main\"\n\"3516563\";\"Soledad de Doblado\";\"main\"\n\"3516611\";\"Soconusco\";\"main\"\n\"3516611\";\"Socunusco\";\"other\"\n\"3516614\";\"Socoltenango\";\"main\"\n\"3516642\";\"Singuilucan\";\"main\"\n\"3516642\";\"Zinguilucan\";\"other\"\n\"3516651\";\"Simojovel de Allende\";\"main\"\n\"3516651\";\"Simojovel\";\"other\"\n\"3516683\";\"Seyé\";\"main\"\n\"3516683\";\"Seye\";\"ascii\"\n\"3516683\";\"Seve\";\"other\"\n\"3516685\";\"Seybaplaya\";\"main\"\n\"3516685\";\"Ceibaplaya\";\"other\"\n\"3516685\";\"Seibaplaya\";\"other\"\n\"3516723\";\"Sayula de Alemán\";\"main\"\n\"3516723\";\"Sayula de Aleman\";\"ascii\"\n\"3516723\";\"Sayula\";\"other\"\n\"3516723\";\"Villa Sayula de Aleman\";\"other\"\n\"3516763\";\"San Vicente Xiloxochitla\";\"main\"\n\"3516763\";\"Xiloxochitla\";\"other\"\n\"3516763\";\"Xiloxochtla\";\"other\"\n\"3516763\";\"Xiloxoxtla\";\"other\"\n\"3516764\";\"San Vicente Tancuayalab\";\"main\"\n\"3516764\";\"San Vicente\";\"other\"\n\"3516764\";\"Tancuayalab\";\"other\"\n\"3516764\";\"Tanguayalab\";\"other\"\n\"3516770\";\"San Vicente Coatlán\";\"main\"\n\"3516770\";\"San Vicente Coatlan\";\"ascii\"\n\"3516770\";\"Coatlan\";\"other\"\n\"3516770\";\"San Vicente\";\"other\"\n\"3516813\";\"Santo Tomás Hueyotlipan\";\"main\"\n\"3516813\";\"Santo Tomas Hueyotlipan\";\"ascii\"\n\"3516813\";\"Hueyotlipan\";\"other\"\n\"3516813\";\"Santo Tomas\";\"other\"\n\"3516818\";\"Santo Tomás Chautla\";\"main\"\n\"3516818\";\"Santo Tomas Chautla\";\"ascii\"\n\"3516818\";\"Chautla\";\"other\"\n\"3516837\";\"Santo Domingo Zanatepec\";\"main\"\n\"3516837\";\"Sonatepec\";\"other\"\n\"3516837\";\"Zanatepec\";\"other\"\n\"3516843\";\"Santo Domingo Tehuantepec\";\"main\"\n\"3516843\";\"Ciudad Santo Domingo Tehuantepec\";\"other\"\n\"3516843\";\"Santo Domingo\";\"other\"\n\"3516843\";\"Tehuantepec\";\"other\"\n\"3516881\";\"Santo Domingo de Guzmán\";\"main\"\n\"3516881\";\"Santo Domingo de Guzman\";\"ascii\"\n\"3516881\";\"Santo Domingo\";\"other\"\n\"3516909\";\"Santiago Yaitepec\";\"main\"\n\"3516909\";\"Yaitepec\";\"other\"\n\"3516909\";\"Yautepec\";\"other\"\n\"3516912\";\"Santiago Tuxtla\";\"main\"\n\"3516912\";\"Juan de la Luz Enriquez\";\"other\"\n\"3516912\";\"Juan de la Luz Enríquez\";\"other\"\n\"3516912\";\"Tuxtla\";\"other\"\n\"3516912\";\"Tuxtla Colorada\";\"other\"\n\"3516919\";\"Santiago Tetla\";\"main\"\n\"3516919\";\"Santiago\";\"other\"\n\"3516919\";\"Tetla\";\"other\"\n\"3516923\";\"Santiago Suchilquitongo\";\"main\"\n\"3516923\";\"Santiango Xuchilquitongo\";\"other\"\n\"3516923\";\"Suchilquitongo\";\"other\"\n\"3516923\";\"Suchiquiltongo\";\"other\"\n\"3516926\";\"Santiago Pinotepa Nacional\";\"main\"\n\"3516926\";\"Pinotepa Nacional\";\"other\"\n\"3516926\";\"Santiago\";\"other\"\n\"3516936\";\"Santiago Miahuatlán\";\"main\"\n\"3516936\";\"Santiago Miahuatlan\";\"ascii\"\n\"3516936\";\"Miahuatlan\";\"other\"\n\"3516936\";\"Miahuatlán\";\"other\"\n\"3516936\";\"Santiago\";\"other\"\n\"3516937\";\"Santiago Matatlán\";\"main\"\n\"3516937\";\"Santiago Matatlan\";\"ascii\"\n\"3516937\";\"Matatlan\";\"other\"\n\"3516937\";\"Matatlan Quialana\";\"other\"\n\"3516937\";\"Matatlán Quialana\";\"other\"\n\"3516937\";\"Santiago Matatatlan\";\"other\"\n\"3516937\";\"Santiago Matatatlán\";\"other\"\n\"3516945\";\"Santiago Juxtlahuaca\";\"main\"\n\"3516945\";\"Justlahuaca\";\"other\"\n\"3516945\";\"Juxtlahuaca\";\"other\"\n\"3516945\";\"Santiago\";\"other\"\n\"3516948\";\"Santiago Jamiltepec\";\"main\"\n\"3516948\";\"Jamiltepec\";\"other\"\n\"3516948\";\"Santiago\";\"other\"\n\"3516956\";\"Santiago de la Peña\";\"main\"\n\"3516956\";\"Santiago de la Pena\";\"ascii\"\n\"3516973\";\"Santiago Alseseca\";\"main\"\n\"3516973\";\"Alseseca\";\"other\"\n\"3516973\";\"Santiago\";\"other\"\n\"3516973\";\"Santiago Alsesecan\";\"other\"\n\"3516974\";\"Santiago Acutzilapan\";\"main\"\n\"3516974\";\"Acotzilapan\";\"other\"\n\"3516974\";\"Acutzilapan\";\"other\"\n\"3516975\";\"Santiago Acatlán\";\"main\"\n\"3516975\";\"Santiago Acatlan\";\"ascii\"\n\"3516975\";\"Acatlan\";\"other\"\n\"3516975\";\"Acatlán\";\"other\"\n\"3516975\";\"Santiago\";\"other\"\n\"3516982\";\"Santiago Tulantepec\";\"main\"\n\"3516982\";\"Santiago\";\"other\"\n\"3517029\";\"Santa Rosalía\";\"main\"\n\"3517029\";\"Santa Rosalia\";\"ascii\"\n\"3517095\";\"Santa Rita Tlahuapan\";\"main\"\n\"3517095\";\"Tlahuapan\";\"other\"\n\"3517151\";\"Santander Jiménez\";\"main\"\n\"3517151\";\"Santander Jimenez\";\"ascii\"\n\"3517151\";\"Jimenez\";\"other\"\n\"3517151\";\"Jiménez\";\"other\"\n\"3517151\";\"Santander\";\"other\"\n\"3517178\";\"Santa María Zacatepec\";\"main\"\n\"3517178\";\"Santa Maria Zacatepec\";\"ascii\"\n\"3517178\";\"Zacatepec\";\"other\"\n\"3517191\";\"Santa María Xadani\";\"main\"\n\"3517191\";\"Santa Maria Xadani\";\"ascii\"\n\"3517191\";\"Santa Maria\";\"other\"\n\"3517191\";\"Santa Maria Xabani\";\"other\"\n\"3517191\";\"Santa María\";\"other\"\n\"3517191\";\"Santa María Xabani\";\"other\"\n\"3517191\";\"Xadani\";\"other\"\n\"3517217\";\"Rayón\";\"main\"\n\"3517217\";\"Rayon\";\"ascii\"\n\"3517217\";\"Maria\";\"other\"\n\"3517217\";\"Santa Maria Rayon\";\"other\"\n\"3517217\";\"Santa María Rayón\";\"other\"\n\"3517220\";\"Santa María Petapa\";\"main\"\n\"3517220\";\"Santa Maria Petapa\";\"ascii\"\n\"3517220\";\"Petapa\";\"other\"\n\"3517220\";\"Santa Maria\";\"other\"\n\"3517225\";\"Santa María Nopaltepec\";\"main\"\n\"3517225\";\"Santa Maria Nopaltepec\";\"ascii\"\n\"3517225\";\"Nopaltepec\";\"other\"\n\"3517225\";\"Santa Maria\";\"other\"\n\"3517228\";\"Santa María Nativitas\";\"main\"\n\"3517228\";\"Santa Maria Nativitas\";\"ascii\"\n\"3517228\";\"Nativitas\";\"other\"\n\"3517228\";\"Natívitas\";\"other\"\n\"3517228\";\"Santa Maria\";\"other\"\n\"3517231\";\"Santa María Moyotzingo\";\"main\"\n\"3517231\";\"Santa Maria Moyotzingo\";\"ascii\"\n\"3517231\";\"Moyatzingo\";\"other\"\n\"3517231\";\"Moyotzingo\";\"other\"\n\"3517236\";\"Cahuacán\";\"main\"\n\"3517236\";\"Cahuacan\";\"ascii\"\n\"3517236\";\"Santa Maria Magdalena Cahuacan\";\"other\"\n\"3517236\";\"Santa María Magdalena Cahuacán\";\"other\"\n\"3517241\";\"Santa María la Alta\";\"main\"\n\"3517241\";\"Santa Maria la Alta\";\"ascii\"\n\"3517241\";\"Santa Maria\";\"other\"\n\"3517241\";\"Santa María\";\"other\"\n\"3517246\";\"Santa María Ixtiyucan\";\"main\"\n\"3517246\";\"Santa Maria Ixtiyucan\";\"ascii\"\n\"3517246\";\"Ixtayucan\";\"other\"\n\"3517246\";\"Ixtiyucan\";\"other\"\n\"3517250\";\"Santa María Huazolotitlan\";\"main\"\n\"3517250\";\"Santa Maria Huazolotitlan\";\"ascii\"\n\"3517250\";\"Huazolotitlan\";\"other\"\n\"3517250\";\"Santa Maria\";\"other\"\n\"3517251\";\"Huatulco\";\"main\"\n\"3517251\";\"Santa Maria\";\"other\"\n\"3517251\";\"Santa Maria Huatulco\";\"other\"\n\"3517251\";\"Santa María\";\"other\"\n\"3517251\";\"Santa María Huatulco\";\"other\"\n\"3517254\";\"Santa María del Tule\";\"main\"\n\"3517254\";\"Santa Maria del Tule\";\"ascii\"\n\"3517254\";\"Tule\";\"other\"\n\"3517256\";\"Santa María del Monte\";\"main\"\n\"3517256\";\"Santa Maria del Monte\";\"ascii\"\n\"3517256\";\"Santa Maria\";\"other\"\n\"3517265\";\"Santa María Coronanco\";\"main\"\n\"3517265\";\"Santa Maria Coronanco\";\"ascii\"\n\"3517265\";\"Coronanco\";\"other\"\n\"3517265\";\"Santa Maria\";\"other\"\n\"3517265\";\"Santa Maria Coronango\";\"other\"\n\"3517265\";\"Santa María Coronango\";\"other\"\n\"3517281\";\"Santa María Ayoquezco de Aldama\";\"main\"\n\"3517281\";\"Santa Maria Ayoquezco de Aldama\";\"ascii\"\n\"3517281\";\"Ayoquezco\";\"other\"\n\"3517281\";\"Ayoquezco de Aldama\";\"other\"\n\"3517281\";\"Santa Maria\";\"other\"\n\"3517285\";\"Santa María Asunción Tlaxiaco\";\"main\"\n\"3517285\";\"Santa Maria Asuncion Tlaxiaco\";\"ascii\"\n\"3517285\";\"Tlaxiaco\";\"other\"\n\"3517293\";\"Santa María Ajoloapan\";\"main\"\n\"3517293\";\"Santa Maria Ajoloapan\";\"ascii\"\n\"3517293\";\"Ajoloapan\";\"other\"\n\"3517293\";\"Santa Maria\";\"other\"\n\"3517294\";\"Santa María Acuexcomac\";\"main\"\n\"3517294\";\"Santa Maria Acuexcomac\";\"ascii\"\n\"3517294\";\"Acuescomac\";\"other\"\n\"3517294\";\"Acuexcomac\";\"other\"\n\"3517426\";\"Santa Inés Ahuatempan\";\"main\"\n\"3517426\";\"Santa Ines Ahuatempan\";\"ascii\"\n\"3517426\";\"Ahuatempan\";\"other\"\n\"3517426\";\"Santa Ines\";\"other\"\n\"3517426\";\"Santa Inés\";\"other\"\n\"3517449\";\"Santa Gertrudis\";\"main\"\n\"3517482\";\"Guillermo Zúñiga\";\"main\"\n\"3517482\";\"Guillermo Zuniga\";\"ascii\"\n\"3517482\";\"Santa Engracia\";\"other\"\n\"3517498\";\"Santa Elena\";\"main\"\n\"3517517\";\"Santa Cruz Xoxocotlán\";\"main\"\n\"3517517\";\"Santa Cruz Xoxocotlan\";\"ascii\"\n\"3517517\";\"Santa Cruz\";\"other\"\n\"3517517\";\"Xoxocotlan\";\"other\"\n\"3517519\";\"Santa Cruz Xitla\";\"main\"\n\"3517519\";\"Xitla\";\"other\"\n\"3517521\";\"Santa Cruz Tepexpan\";\"main\"\n\"3517521\";\"Santa Cruz\";\"other\"\n\"3517521\";\"Tepexpan\";\"other\"\n\"3517524\";\"Santa Cruz Tecamac\";\"main\"\n\"3517524\";\"Santa Cruz\";\"other\"\n\"3517524\";\"Tecama\";\"other\"\n\"3517524\";\"Tecamac\";\"other\"\n\"3517543\";\"Santa Cruz Cuauhtenco\";\"main\"\n\"3517543\";\"Cuauhtenco\";\"other\"\n\"3517543\";\"Cuautenco\";\"other\"\n\"3517543\";\"Santa Cruz\";\"other\"\n\"3517543\";\"Santa Cruz Cuauhtenca\";\"other\"\n\"3517543\";\"Santa Cruz Cuautenco\";\"other\"\n\"3517618\";\"Santa Clara Ocoyucan\";\"main\"\n\"3517618\";\"Ocoyucan\";\"other\"\n\"3517618\";\"Ocuyucan\";\"other\"\n\"3517618\";\"Santa Clara\";\"other\"\n\"3517659\";\"Santa Catarina Pantelhó\";\"main\"\n\"3517659\";\"Santa Catarina Pantelho\";\"ascii\"\n\"3517659\";\"Pantelho\";\"other\"\n\"3517659\";\"Pantelhó\";\"other\"\n\"3517659\";\"Santa Catarina\";\"other\"\n\"3517665\";\"Santa Catarina Mechoacán\";\"main\"\n\"3517665\";\"Santa Catarina Mechoacan\";\"ascii\"\n\"3517665\";\"Mechoacan\";\"other\"\n\"3517665\";\"Santa Catalina Mechoacan\";\"other\"\n\"3517665\";\"Santa Catalina Mechoacán\";\"other\"\n\"3517665\";\"Santa Catarina\";\"other\"\n\"3517669\";\"Santa Catarina Juquila\";\"main\"\n\"3517669\";\"Juquila\";\"other\"\n\"3517669\";\"Santa Catarina\";\"other\"\n\"3517673\";\"Santa Catarina Ayotzingo\";\"main\"\n\"3517673\";\"Ayotzingo\";\"other\"\n\"3517687\";\"Santa Catarina\";\"main\"\n\"3517687\";\"Santa Catarina Zacatepec\";\"other\"\n\"3517687\";\"Santa-Katarina\";\"other\"\n\"3517687\";\"Санта-Катарина\";\"other\"\n\"3517731\";\"Nextlalpan\";\"main\"\n\"3517731\";\"Santa Ana Nextlalpan\";\"other\"\n\"3517733\";\"Santa Ana Jilotzingo\";\"main\"\n\"3517733\";\"Jilotzingo\";\"other\"\n\"3517733\";\"Santa Ana\";\"other\"\n\"3517734\";\"Santa Ana Huiloac\";\"main\"\n\"3517734\";\"Huiloac\";\"other\"\n\"3517735\";\"Santa Ana Hueytlalpan\";\"main\"\n\"3517735\";\"Santa Ana\";\"other\"\n\"3517735\";\"Santa Ana Heytalpan\";\"other\"\n\"3517742\";\"Santa Ana Chiautempan\";\"main\"\n\"3517742\";\"Chiautempan\";\"other\"\n\"3517742\";\"Santa Ana\";\"other\"\n\"3517795\";\"San Sebastián Zinacatepec\";\"main\"\n\"3517795\";\"San Sebastian Zinacatepec\";\"ascii\"\n\"3517795\";\"San Sebastian\";\"other\"\n\"3517795\";\"San Sebastián\";\"other\"\n\"3517795\";\"Zinacatepec\";\"other\"\n\"3517797\";\"San Sebastián Villanueva\";\"main\"\n\"3517797\";\"San Sebastian Villanueva\";\"ascii\"\n\"3517797\";\"San Sebastian\";\"other\"\n\"3517797\";\"San Sebastián\";\"other\"\n\"3517797\";\"Villanueva\";\"other\"\n\"3517798\";\"San Sebastián Tutla\";\"main\"\n\"3517798\";\"San Sebastian Tutla\";\"ascii\"\n\"3517798\";\"San Sebastian\";\"other\"\n\"3517798\";\"Tulla\";\"other\"\n\"3517798\";\"Tutla\";\"other\"\n\"3517801\";\"Teitipac\";\"main\"\n\"3517801\";\"San Sebastian\";\"other\"\n\"3517801\";\"San Sebastian Teitipac\";\"other\"\n\"3517801\";\"San Sebastian Teitipal\";\"other\"\n\"3517801\";\"San Sebastián\";\"other\"\n\"3517801\";\"San Sebastián Teitipac\";\"other\"\n\"3517801\";\"San Sebastián Teitipal\";\"other\"\n\"3517831\";\"San Salvador el Seco\";\"main\"\n\"3517831\";\"El Seco\";\"other\"\n\"3517832\";\"San Salvador Atenco\";\"main\"\n\"3517832\";\"Atenco\";\"other\"\n\"3517915\";\"San Rafael\";\"main\"\n\"3517937\";\"San Pedro y San Pablo Etla\";\"main\"\n\"3517937\";\"Etla\";\"other\"\n\"3517937\";\"San Pedro\";\"other\"\n\"3517937\";\"Villa de Etla\";\"other\"\n\"3517954\";\"San Pedro Tlanisco\";\"main\"\n\"3517954\";\"San Pedro\";\"other\"\n\"3517954\";\"Tlanisco\";\"other\"\n\"3517954\";\"Tlanixco\";\"other\"\n\"3517962\";\"San Pedro Tapanatepec\";\"main\"\n\"3517962\";\"San Pedro\";\"other\"\n\"3517962\";\"Tapanatepec\";\"other\"\n\"3517962\";\"Tepanatepec\";\"other\"\n\"3517970\";\"San Pedro Pochutla\";\"main\"\n\"3517970\";\"Pochutla\";\"other\"\n\"3517970\";\"San Pedro\";\"other\"\n\"3517978\";\"San Pedro Mixtepec\";\"main\"\n\"3517978\";\"Mixtepec\";\"other\"\n\"3517978\";\"San Pedro\";\"other\"\n\"3517978\";\"San Pedro Mixtepec Miahuatlan\";\"other\"\n\"3517978\";\"San Pedro Mixtepec Miahuatlán\";\"other\"\n\"3517984\";\"San Pedro Los Baños\";\"main\"\n\"3517984\";\"San Pedro Los Banos\";\"ascii\"\n\"3517984\";\"Los Banos\";\"other\"\n\"3517984\";\"Los Baños\";\"other\"\n\"3517984\";\"San Pedro\";\"other\"\n\"3517988\";\"San Pedro Jicayán\";\"main\"\n\"3517988\";\"San Pedro Jicayan\";\"ascii\"\n\"3517988\";\"Jicayan\";\"other\"\n\"3517988\";\"San Pedro Jicayacan\";\"other\"\n\"3517993\";\"San Pedro Ixcatlán\";\"main\"\n\"3517993\";\"San Pedro Ixcatlan\";\"ascii\"\n\"3517993\";\"Ixcatlan\";\"other\"\n\"3517993\";\"San Pedro\";\"other\"\n\"3517993\";\"Yxcatlan\";\"other\"\n\"3517999\";\"San Pedro El Alto\";\"main\"\n\"3517999\";\"San Pedro\";\"other\"\n\"3517999\";\"San Pedro Alto\";\"other\"\n\"3518014\";\"San Pedro Buenavista\";\"main\"\n\"3518117\";\"San Pablo Villa de Mitla\";\"main\"\n\"3518117\";\"Mitla\";\"other\"\n\"3518117\";\"San Pablo\";\"other\"\n\"3518117\";\"mitora\";\"other\"\n\"3518117\";\"ミトラ\";\"other\"\n\"3518122\";\"San Pablo Tecalco\";\"main\"\n\"3518122\";\"San Pablo\";\"other\"\n\"3518122\";\"Tecalco\";\"other\"\n\"3518128\";\"San Pablo Huixtepec\";\"main\"\n\"3518128\";\"Huixtepec\";\"other\"\n\"3518128\";\"San Pablo\";\"other\"\n\"3518129\";\"San Pablo Huitzo\";\"main\"\n\"3518129\";\"Huitzo\";\"other\"\n\"3518135\";\"San Pablo de las Salinas\";\"main\"\n\"3518135\";\"Salinas\";\"other\"\n\"3518135\";\"San Pablo\";\"other\"\n\"3518135\";\"San Pablo de Salinas\";\"other\"\n\"3518138\";\"San Pablo Autopan\";\"main\"\n\"3518138\";\"Autopan\";\"other\"\n\"3518138\";\"San Pablo\";\"other\"\n\"3518139\";\"San Pablo Atlazalpan\";\"main\"\n\"3518139\";\"Atlazalpan\";\"other\"\n\"3518140\";\"San Pablo Apetatitlán\";\"main\"\n\"3518140\";\"San Pablo Apetatitlan\";\"ascii\"\n\"3518140\";\"Apetatitlan\";\"other\"\n\"3518140\";\"Apetatitlán\";\"other\"\n\"3518140\";\"Apetatlitlan\";\"other\"\n\"3518140\";\"Apetitlan\";\"other\"\n\"3518140\";\"San Pablo\";\"other\"\n\"3518181\";\"San Nicolás de los Ranchos\";\"main\"\n\"3518181\";\"San Nicolas de los Ranchos\";\"ascii\"\n\"3518181\";\"Nicolas de los Ranchos\";\"other\"\n\"3518182\";\"San Nicolás de Buenos Aires\";\"main\"\n\"3518182\";\"San Nicolas de Buenos Aires\";\"ascii\"\n\"3518182\";\"San Nicolas\";\"other\"\n\"3518182\";\"San Nicolás\";\"other\"\n\"3518183\";\"San Nicolás Coatepec\";\"main\"\n\"3518183\";\"San Nicolas Coatepec\";\"ascii\"\n\"3518183\";\"Bateas\";\"other\"\n\"3518183\";\"Coatepec\";\"other\"\n\"3518183\";\"Coatepec de las Bateas\";\"other\"\n\"3518200\";\"San Nicolás\";\"main\"\n\"3518200\";\"San Nicolas\";\"ascii\"\n\"3518220\";\"San Miguel Zozutla\";\"main\"\n\"3518220\";\"San Miguel\";\"other\"\n\"3518220\";\"Zozutla\";\"other\"\n\"3518221\";\"San Miguel Zinacantepec\";\"main\"\n\"3518221\";\"San Miguel Zicantepec\";\"other\"\n\"3518221\";\"Zinacantepec\";\"other\"\n\"3518221\";\"Zinacatepec\";\"other\"\n\"3518224\";\"San Miguel Xoxtla\";\"main\"\n\"3518224\";\"Xoxtla\";\"other\"\n\"3518235\";\"San Miguel Tenextatiloyan\";\"main\"\n\"3518235\";\"Tenextatiloyan\";\"other\"\n\"3518249\";\"San Miguel Quetzaltepec\";\"main\"\n\"3518249\";\"Quetzaltepec\";\"other\"\n\"3518249\";\"Quezaltepec\";\"other\"\n\"3518249\";\"San Miguel\";\"other\"\n\"3518253\";\"San Miguel Panixtlahuaca\";\"main\"\n\"3518253\";\"Pamixtlahuaca\";\"other\"\n\"3518253\";\"Panixtlahuaca\";\"other\"\n\"3518253\";\"San Miguel\";\"other\"\n\"3518277\";\"San Miguel Coatlinchán\";\"main\"\n\"3518277\";\"San Miguel Coatlinchan\";\"ascii\"\n\"3518277\";\"Coatlinchan\";\"other\"\n\"3518277\";\"Coatlinchán\";\"other\"\n\"3518277\";\"San Miguel\";\"other\"\n\"3518277\";\"San Miguel Coatlinchoan\";\"other\"\n\"3518280\";\"Chapultepec\";\"main\"\n\"3518280\";\"San Miguel Chapultepec\";\"other\"\n\"3518281\";\"San Miguel Canoa\";\"main\"\n\"3518281\";\"Canoa\";\"other\"\n\"3518286\";\"San Miguel Balderas\";\"main\"\n\"3518286\";\"Balderas\";\"other\"\n\"3518286\";\"San Miguel\";\"other\"\n\"3518326\";\"San Miguel Tenochtitlán\";\"main\"\n\"3518326\";\"San Miguel Tenochtitlan\";\"ascii\"\n\"3518326\";\"San Miguel\";\"other\"\n\"3518326\";\"Tenochtitlan\";\"other\"\n\"3518326\";\"Tenochtitlán\";\"other\"\n\"3518352\";\"San Matías Tlalancaleca\";\"main\"\n\"3518352\";\"San Matias Tlalancaleca\";\"ascii\"\n\"3518352\";\"San Matias\";\"other\"\n\"3518352\";\"San Matías\";\"other\"\n\"3518352\";\"Tlalancaleca\";\"other\"\n\"3518352\";\"Tlancaleca\";\"other\"\n\"3518361\";\"San Mateo Xoloc\";\"main\"\n\"3518361\";\"San Mateo\";\"other\"\n\"3518363\";\"San Mateo Tlaixpan\";\"main\"\n\"3518363\";\"Tlaixpan\";\"other\"\n\"3518363\";\"Tlalxpan\";\"other\"\n\"3518364\";\"San Mateo Texcalyacac\";\"main\"\n\"3518364\";\"Texcalyacac\";\"other\"\n\"3518377\";\"Mexicaltzingo\";\"main\"\n\"3518377\";\"Mexicalcingo\";\"other\"\n\"3518377\";\"San Mateo Mexicalcingo\";\"other\"\n\"3518379\";\"San Mateo Ixtacalco\";\"main\"\n\"3518379\";\"San Mateo\";\"other\"\n\"3518382\";\"San Mateo del Mar\";\"main\"\n\"3518387\";\"San Mateo Atenco\";\"main\"\n\"3518387\";\"Atenco\";\"other\"\n\"3518387\";\"San Mateo\";\"other\"\n\"3518403\";\"San Martín Xaltocan\";\"main\"\n\"3518403\";\"San Martin Xaltocan\";\"ascii\"\n\"3518403\";\"San Martin\";\"other\"\n\"3518403\";\"San Martín\";\"other\"\n\"3518403\";\"Xaltocan\";\"other\"\n\"3518407\";\"San Martín Texmelucan de Labastida\";\"main\"\n\"3518407\";\"San Martin Texmelucan de Labastida\";\"ascii\"\n\"3518407\";\"San Martin\";\"other\"\n\"3518407\";\"San Martin Texmelucan\";\"other\"\n\"3518407\";\"San Martín\";\"other\"\n\"3518407\";\"San Martín Texmelucan\";\"other\"\n\"3518407\";\"Texmelucan\";\"other\"\n\"3518414\";\"San Martín de las Pirámides\";\"main\"\n\"3518414\";\"San Martin de las Piramides\";\"ascii\"\n\"3518414\";\"San Martin\";\"other\"\n\"3518439\";\"San Marcos Tlacoyalco\";\"main\"\n\"3518439\";\"Tlacoyalco\";\"other\"\n\"3518451\";\"San Marcos\";\"main\"\n\"3518451\";\"Vega de San Marcos\";\"other\"\n\"3518453\";\"San Marcos\";\"main\"\n\"3518461\";\"San Marcos\";\"main\"\n\"3518475\";\"San Luis Teolocholco\";\"main\"\n\"3518475\";\"Teolochalco\";\"other\"\n\"3518475\";\"Teolocholco\";\"other\"\n\"3518518\";\"San Lucas Ojitlán\";\"main\"\n\"3518518\";\"San Lucas Ojitlan\";\"ascii\"\n\"3518518\";\"Ojitlan\";\"other\"\n\"3518518\";\"San Lucas\";\"other\"\n\"3518538\";\"San Lorenzo Oyamel\";\"main\"\n\"3518538\";\"Oyamel\";\"other\"\n\"3518538\";\"San Lorenzo\";\"other\"\n\"3518542\";\"San Lorenzo Chiautzingo\";\"main\"\n\"3518542\";\"Chiautzingo\";\"other\"\n\"3518542\";\"San Lorenzo\";\"other\"\n\"3518543\";\"San Lorenzo Almecatla\";\"main\"\n\"3518543\";\"Almacatla\";\"other\"\n\"3518543\";\"Almacatlan\";\"other\"\n\"3518543\";\"Almacatlán\";\"other\"\n\"3518543\";\"Almecatla\";\"other\"\n\"3518602\";\"San Juan Xiutetelco\";\"main\"\n\"3518602\";\"Xiutetelco\";\"other\"\n\"3518611\";\"San Juan Tianguismanalco\";\"main\"\n\"3518611\";\"Tianguismanalco\";\"other\"\n\"3518617\";\"San Juan Tepa\";\"main\"\n\"3518618\";\"San Juan Teotihuacán\";\"main\"\n\"3518618\";\"San Juan Teotihuacan\";\"ascii\"\n\"3518618\";\"San Juan\";\"other\"\n\"3518618\";\"Teotihuacan\";\"other\"\n\"3518618\";\"Teotihuacán\";\"other\"\n\"3518651\";\"San Juan Ixcaquixtla\";\"main\"\n\"3518651\";\"Ixcaqcixtla\";\"other\"\n\"3518651\";\"Ixcaquixtla\";\"other\"\n\"3518676\";\"San Juan Guichicovi\";\"main\"\n\"3518676\";\"Guichicovi\";\"other\"\n\"3518676\";\"San Juan\";\"other\"\n\"3518677\";\"San Juan Guelavía\";\"main\"\n\"3518677\";\"San Juan Guelavia\";\"ascii\"\n\"3518677\";\"Guelaria\";\"other\"\n\"3518677\";\"Guelavia\";\"other\"\n\"3518677\";\"San Juan\";\"other\"\n\"3518679\";\"San Juan Evangelista\";\"main\"\n\"3518679\";\"Santana Rodriguez\";\"other\"\n\"3518692\";\"San Juan del Río\";\"main\"\n\"3518692\";\"San Juan del Rio\";\"ascii\"\n\"3518702\";\"San Juan de las Huertas\";\"main\"\n\"3518702\";\"San Juan\";\"other\"\n\"3518702\";\"San Juan de la Huerta\";\"other\"\n\"3518720\";\"San Juan Cacahuatepec\";\"main\"\n\"3518720\";\"Cacahuatepec\";\"other\"\n\"3518722\";\"San Juan Bautista Valle Nacional\";\"main\"\n\"3518722\";\"San Juan Baustista Valle Nacional\";\"other\"\n\"3518722\";\"San Juan Bautista\";\"other\"\n\"3518722\";\"Valle Nacional\";\"other\"\n\"3518723\";\"San Juan Bautista Tuxtepec\";\"main\"\n\"3518723\";\"San Juan Bautista\";\"other\"\n\"3518723\";\"San Juan Bautista Tuxtla\";\"other\"\n\"3518723\";\"Tuxtepec\";\"other\"\n\"3518729\";\"San Juan Bautista Cuicatlán\";\"main\"\n\"3518729\";\"San Juan Bautista Cuicatlan\";\"ascii\"\n\"3518729\";\"Cuicatlan\";\"other\"\n\"3518739\";\"San Juan Amecac\";\"main\"\n\"3518739\";\"Amecac\";\"other\"\n\"3518835\";\"San José Miahuatlán\";\"main\"\n\"3518835\";\"San Jose Miahuatlan\";\"ascii\"\n\"3518835\";\"Miahuatlan\";\"other\"\n\"3518835\";\"Miahuatlán\";\"other\"\n\"3518889\";\"San José Chiltepec\";\"main\"\n\"3518889\";\"San Jose Chiltepec\";\"ascii\"\n\"3518889\";\"Chiltepec\";\"other\"\n\"3518889\";\"San Jose\";\"other\"\n\"3518892\";\"San José Chiapa\";\"main\"\n\"3518892\";\"San Jose Chiapa\";\"ascii\"\n\"3518892\";\"Chapa\";\"other\"\n\"3518892\";\"Chiapa\";\"other\"\n\"3518892\";\"San Jose\";\"other\"\n\"3518892\";\"San José\";\"other\"\n\"3518905\";\"San José Acateno\";\"main\"\n\"3518905\";\"San Jose Acateno\";\"ascii\"\n\"3518905\";\"Acateno\";\"other\"\n\"3519061\";\"San Jerónimo Ocotitlán\";\"main\"\n\"3519061\";\"San Jeronimo Ocotitlan\";\"ascii\"\n\"3519061\";\"Ocotitlan\";\"other\"\n\"3519061\";\"Ocotitlán\";\"other\"\n\"3519061\";\"San Jeronimo Ocotitla\";\"other\"\n\"3519061\";\"San Jerónimo Ocotitlá\";\"other\"\n\"3519101\";\"San Jacinto Ocotlán\";\"main\"\n\"3519101\";\"San Jacinto Ocotlan\";\"ascii\"\n\"3519101\";\"Ocotlan\";\"other\"\n\"3519207\";\"San Hipólito Xochiltenango\";\"main\"\n\"3519207\";\"San Hipolito Xochiltenango\";\"ascii\"\n\"3519207\";\"San Hipolito\";\"other\"\n\"3519207\";\"San Hipólito\";\"other\"\n\"3519207\";\"Xochiltenango\";\"other\"\n\"3519216\";\"San Gregorio Atzompa\";\"main\"\n\"3519216\";\"Atzompa\";\"other\"\n\"3519216\";\"San Juan Atzompa\";\"other\"\n\"3519227\";\"San Gaspar Tonatico\";\"main\"\n\"3519227\";\"Tonatico\";\"other\"\n\"3519228\";\"San Gabriel Mixtepec\";\"main\"\n\"3519228\";\"Mixtepec\";\"other\"\n\"3519228\";\"San Gabriel\";\"other\"\n\"3519230\";\"San Gabriel Chilac\";\"main\"\n\"3519230\";\"Chilac\";\"other\"\n\"3519231\";\"San Gabriel Casa Blanca\";\"main\"\n\"3519231\";\"Casa Blanca\";\"other\"\n\"3519243\";\"San Francisco Zacacalco\";\"main\"\n\"3519243\";\"San Francisco\";\"other\"\n\"3519243\";\"Zacacalco\";\"other\"\n\"3519249\";\"San Francisco Tlalcilalcalpan\";\"main\"\n\"3519249\";\"San Francisco Tlalcilalcalpa\";\"other\"\n\"3519249\";\"Tlalcilalcalpa\";\"other\"\n\"3519249\";\"Tlalcilalcalpan\";\"other\"\n\"3519249\";\"Tlalzilalcalpa\";\"other\"\n\"3519249\";\"Tlalzilalcalpan\";\"other\"\n\"3519255\";\"San Francisco Telixtlahuaca\";\"main\"\n\"3519255\";\"Huitzo\";\"other\"\n\"3519255\";\"San Francisco\";\"other\"\n\"3519255\";\"Telixtlahuaca\";\"other\"\n\"3519274\";\"San Francisco del Mar\";\"main\"\n\"3519289\";\"San Francisco Atezcatzinco\";\"main\"\n\"3519289\";\"Atexcalzingo\";\"other\"\n\"3519289\";\"Atexcatzingo\";\"other\"\n\"3519289\";\"Atezcatzinco\";\"other\"\n\"3519289\";\"Atezcatzingo\";\"other\"\n\"3519289\";\"San Francisco\";\"other\"\n\"3519290\";\"San Francisco Acuautla\";\"main\"\n\"3519290\";\"Acuautla\";\"other\"\n\"3519396\";\"San Fernando\";\"main\"\n\"3519396\";\"San - Fernando\";\"other\"\n\"3519396\";\"Villa Allende\";\"other\"\n\"3519396\";\"Сан - Фернандо\";\"other\"\n\"3519402\";\"San Felipe Usila\";\"main\"\n\"3519402\";\"San Felipe\";\"other\"\n\"3519402\";\"Usila\";\"other\"\n\"3519405\";\"San Felipe Teotlalcingo\";\"main\"\n\"3519405\";\"San Felipe\";\"other\"\n\"3519405\";\"San Felipe Teotlaltzingo\";\"other\"\n\"3519405\";\"Teotlalcingo\";\"other\"\n\"3519405\";\"Teotlalzingo\";\"other\"\n\"3519405\";\"Teotlancingo\";\"other\"\n\"3519409\";\"San Felipe Jalapa de Díaz\";\"main\"\n\"3519409\";\"San Felipe Jalapa de Diaz\";\"ascii\"\n\"3519409\";\"Jalapa de Diaz\";\"other\"\n\"3519409\";\"San Felipe\";\"other\"\n\"3519409\";\"San Felipe Jalpa de Diaz\";\"other\"\n\"3519410\";\"San Felipe Ixtacuixtla\";\"main\"\n\"3519410\";\"Ixtacuistla\";\"other\"\n\"3519410\";\"Ixtacuixtla\";\"other\"\n\"3519410\";\"Mariano Matamoras\";\"other\"\n\"3519410\";\"San Felipe\";\"other\"\n\"3519410\";\"Santa Justina\";\"other\"\n\"3519410\";\"Villa Mariano Matamoros\";\"other\"\n\"3519412\";\"San Felipe del Progreso\";\"main\"\n\"3519412\";\"San Felipe\";\"other\"\n\"3519480\";\"San Dionisio Ocotepec\";\"main\"\n\"3519480\";\"Ocotepec\";\"other\"\n\"3519480\";\"San Dionisio\";\"other\"\n\"3519481\";\"San Dionisio del Mar\";\"main\"\n\"3519487\";\"San Dieguito Xochimanca\";\"main\"\n\"3519487\";\"Xochimancan\";\"other\"\n\"3519530\";\"Sanctórum\";\"main\"\n\"3519530\";\"Sanctorum\";\"ascii\"\n\"3519530\";\"Sanctorium\";\"other\"\n\"3519531\";\"Sanctórum\";\"main\"\n\"3519531\";\"Sanctorum\";\"ascii\"\n\"3519531\";\"Sanctorium\";\"other\"\n\"3519537\";\"San Cristóbal de Las Casas\";\"main\"\n\"3519537\";\"San Cristobal de Las Casas\";\"ascii\"\n\"3519537\";\"Ciudad Las Casas\";\"other\"\n\"3519537\";\"Ciudad de las Casas\";\"other\"\n\"3519537\";\"San Cristobal\";\"other\"\n\"3519537\";\"San Cristobal de las Casas\";\"other\"\n\"3519537\";\"San Cristobal las Casas\";\"other\"\n\"3519537\";\"San Cristóbal de las Casas\";\"other\"\n\"3519537\";\"San Cristóbal las Casas\";\"other\"\n\"3519539\";\"San Cristóbal Amatlán\";\"main\"\n\"3519539\";\"San Cristobal Amatlan\";\"ascii\"\n\"3519539\";\"Amatlan\";\"other\"\n\"3519539\";\"San Cristobal\";\"other\"\n\"3519570\";\"San Ciro de Acosta\";\"main\"\n\"3519570\";\"Pedro Montoya\";\"other\"\n\"3519570\";\"San Ciro\";\"other\"\n\"3519588\";\"San Carlos\";\"main\"\n\"3519601\";\"San Buenaventura\";\"main\"\n\"3519622\";\"San Bernabé Amaxac de Guerrero\";\"main\"\n\"3519622\";\"San Bernabe Amaxac de Guerrero\";\"ascii\"\n\"3519622\";\"Amaxac\";\"other\"\n\"3519622\";\"Amaxac de Guerrero\";\"other\"\n\"3519632\";\"San Bartolo Teontepec\";\"main\"\n\"3519632\";\"San Bartolo\";\"other\"\n\"3519632\";\"Teontepec\";\"other\"\n\"3519640\";\"San Bartolomé Ayautla\";\"main\"\n\"3519640\";\"San Bartolome Ayautla\";\"ascii\"\n\"3519640\";\"Ayautla\";\"other\"\n\"3519640\";\"San Bartolo\";\"other\"\n\"3519642\";\"San Bartolo del Llano\";\"main\"\n\"3519642\";\"San Bartolo\";\"other\"\n\"3519644\";\"San Bartolo Cuautlalpan\";\"main\"\n\"3519644\";\"San Bartolo\";\"other\"\n\"3519644\";\"San Bartolo Cuautlapan\";\"other\"\n\"3519666\";\"San Baltazar Chichicapan\";\"main\"\n\"3519666\";\"Chichicapam\";\"other\"\n\"3519666\";\"Chichicapan\";\"other\"\n\"3519666\";\"San Baltasar Chichicapan\";\"other\"\n\"3519675\";\"San Aparicio\";\"main\"\n\"3519675\";\"San Aparico\";\"other\"\n\"3519907\";\"San Andrés Tuxtla\";\"main\"\n\"3519907\";\"San Andres Tuxtla\";\"ascii\"\n\"3519907\";\"Tuxtla\";\"other\"\n\"3519926\";\"San Andrés Huayapan\";\"main\"\n\"3519926\";\"San Andres Huayapan\";\"ascii\"\n\"3519926\";\"Huayapam\";\"other\"\n\"3519926\";\"Huayapan\";\"other\"\n\"3519926\";\"San Andres Huayapam\";\"other\"\n\"3519926\";\"San Andrés Huayapam\";\"other\"\n\"3519927\";\"San Andrés Huaxpaltepec\";\"main\"\n\"3519927\";\"San Andres Huaxpaltepec\";\"ascii\"\n\"3519927\";\"Huaxpaltepec\";\"other\"\n\"3519927\";\"San Andres\";\"other\"\n\"3519927\";\"San Andres Nuaxpaltepec\";\"other\"\n\"3519927\";\"San Andrés Nuaxpaltepec\";\"other\"\n\"3519930\";\"San Andrés Calpan\";\"main\"\n\"3519930\";\"San Andres Calpan\";\"ascii\"\n\"3519930\";\"Calpan\";\"other\"\n\"3519972\";\"San Agustín Tlaxiaca\";\"main\"\n\"3519972\";\"San Agustin Tlaxiaca\";\"ascii\"\n\"3519972\";\"Tlaxcala\";\"other\"\n\"3519972\";\"Tlaxiaca\";\"other\"\n\"3520020\";\"Salto de Agua\";\"main\"\n\"3520026\";\"Saltabarranca\";\"main\"\n\"3520038\";\"Salitrillo\";\"main\"\n\"3520064\";\"Salina Cruz\";\"main\"\n\"3520064\";\"Salina-Krus\";\"other\"\n\"3520064\";\"Салина-Крус\";\"other\"\n\"3520120\";\"Sacalum\";\"main\"\n\"3520120\";\"Sacalom\";\"other\"\n\"3520120\";\"Sakalun\";\"other\"\n\"3520161\";\"Sabancuy\";\"main\"\n\"3520235\";\"Río Verde\";\"main\"\n\"3520235\";\"Rio Verde\";\"ascii\"\n\"3520249\";\"Río Lagartos\";\"main\"\n\"3520249\";\"Rio Lagartos\";\"ascii\"\n\"3520249\";\"Rio-Lagartos\";\"other\"\n\"3520249\";\"Рио-Лагартос\";\"other\"\n\"3520260\";\"Río Frío\";\"main\"\n\"3520260\";\"Rio Frio\";\"ascii\"\n\"3520271\";\"Río Bravo\";\"main\"\n\"3520271\";\"Rio Bravo\";\"ascii\"\n\"3520271\";\"El Ebano\";\"other\"\n\"3520271\";\"Rio-Bravo\";\"other\"\n\"3520271\";\"Рио-Браво\";\"other\"\n\"3520274\";\"Río Blanco\";\"main\"\n\"3520274\";\"Rio Blanco\";\"ascii\"\n\"3520274\";\"Rio-Blanko\";\"other\"\n\"3520274\";\"Tenango de Rio Blanco\";\"other\"\n\"3520274\";\"Tenango de Río Blanco\";\"other\"\n\"3520274\";\"Рио-Бланко\";\"other\"\n\"3520281\";\"Rincón Viejo\";\"main\"\n\"3520281\";\"Rincon Viejo\";\"ascii\"\n\"3520319\";\"Rinconada\";\"main\"\n\"3520339\";\"Reynosa\";\"main\"\n\"3520339\";\"Reinosa\";\"other\"\n\"3520339\";\"Rejnosa\";\"other\"\n\"3520339\";\"Рейноса\";\"other\"\n\"3520427\";\"Rayón\";\"main\"\n\"3520427\";\"Rayon\";\"ascii\"\n\"3520428\";\"Rayón\";\"main\"\n\"3520428\";\"Rayon\";\"ascii\"\n\"3520874\";\"Rafael Lucio\";\"main\"\n\"3520875\";\"Rafael Lara Grajales\";\"main\"\n\"3520876\";\"Rafael J. García\";\"main\"\n\"3520876\";\"Rafael J. Garcia\";\"ascii\"\n\"3520876\";\"Chilchotla\";\"other\"\n\"3520876\";\"Rafael I. Garcia\";\"other\"\n\"3520877\";\"Rafael Delgado\";\"main\"\n\"3520922\";\"Quechultenango\";\"main\"\n\"3520926\";\"Quecholac\";\"main\"\n\"3520935\";\"Putla de Guerrero\";\"main\"\n\"3520935\";\"Putla\";\"other\"\n\"3520935\";\"Santa Maria\";\"other\"\n\"3520935\";\"Santa María\";\"other\"\n\"3520989\";\"Puerto Madero\";\"main\"\n\"3520989\";\"Puerto de San Benito\";\"other\"\n\"3520989\";\"San Benito\";\"other\"\n\"3520994\";\"Puerto Escondido\";\"main\"\n\"3521051\";\"Puente de Ixtla\";\"main\"\n\"3521070\";\"Pueblo Nuevo Solistahuacán\";\"main\"\n\"3521070\";\"Pueblo Nuevo Solistahuacan\";\"ascii\"\n\"3521070\";\"Pueblo Nuevo\";\"other\"\n\"3521074\";\"Pueblo Nuevo\";\"main\"\n\"3521081\";\"Puebla de Zaragoza\";\"main\"\n\"3521081\";\"Cuetlaxcoapan\";\"other\"\n\"3521081\";\"Cuetlaxcōāpan\";\"other\"\n\"3521081\";\"Heroica Puebla de Zaragoza\";\"other\"\n\"3521081\";\"Puebla\";\"other\"\n\"3521081\";\"Puebla de los Angeles\";\"other\"\n\"3521081\";\"puebura\";\"other\"\n\"3521081\";\"Пуебла\";\"other\"\n\"3521081\";\"פואבלה\";\"other\"\n\"3521081\";\"プエブラ\";\"other\"\n\"3521103\";\"Progreso de Obregón\";\"main\"\n\"3521103\";\"Progreso de Obregon\";\"ascii\"\n\"3521103\";\"Progreso\";\"other\"\n\"3521108\";\"Progreso\";\"main\"\n\"3521108\";\"Прогресо\";\"other\"\n\"3521111\";\"Progreso Industrial\";\"main\"\n\"3521111\";\"Progreso\";\"other\"\n\"3521168\";\"Poza Rica de Hidalgo\";\"main\"\n\"3521168\";\"Poza Rica\";\"other\"\n\"3521207\";\"Potrero del Llano\";\"main\"\n\"3521207\";\"Potrero\";\"other\"\n\"3521283\";\"Pomuch\";\"main\"\n\"3521283\";\"Pumuch\";\"other\"\n\"3521305\";\"Polanco\";\"main\"\n\"3521305\";\"Col Polanco\";\"other\"\n\"3521305\";\"Col. Polanco\";\"other\"\n\"3521305\";\"Colonia Polanco\";\"other\"\n\"3521334\";\"Playa Vicente\";\"main\"\n\"3521334\";\"Venustiano Carranza\";\"other\"\n\"3521342\";\"Playa del Carmen\";\"main\"\n\"3521342\";\"Plaja-del'-Karmen\";\"other\"\n\"3521342\";\"Quintana Roo\";\"other\"\n\"3521342\";\"Плая-дель-Кармен\";\"other\"\n\"3521344\";\"Platón Sánchez\";\"main\"\n\"3521344\";\"Platon Sanchez\";\"ascii\"\n\"3521344\";\"Platon Sanches\";\"other\"\n\"3521344\";\"Platón Sánches\";\"other\"\n\"3521411\";\"Pisté\";\"main\"\n\"3521411\";\"Piste\";\"ascii\"\n\"3521411\";\"Ppiste\";\"other\"\n\"3521424\";\"Pinotepa de Don Luis\";\"main\"\n\"3521424\";\"Pinotepa\";\"other\"\n\"3521476\";\"Pijijiapan\";\"main\"\n\"3521476\";\"Pijijiapam\";\"other\"\n\"3521476\";\"Pijijiápam\";\"other\"\n\"3521482\";\"Piedras Negras\";\"main\"\n\"3521482\";\"Negras Piedras\";\"other\"\n\"3521482\";\"P'edras Negras\";\"other\"\n\"3521482\";\"Пьедрас Неграс\";\"other\"\n\"3521574\";\"Pichucalco\";\"main\"\n\"3521596\";\"Peto\";\"main\"\n\"3521607\";\"Petaquillas\";\"main\"\n\"3521607\";\"Petaquilla\";\"other\"\n\"3521610\";\"Petalcingo\";\"main\"\n\"3521610\";\"Petalsingo\";\"other\"\n\"3521628\";\"Perote\";\"main\"\n\"3521825\";\"Paso de Ovejas\";\"main\"\n\"3521830\";\"Paso del Toro\";\"main\"\n\"3521833\";\"Paso del Macho\";\"main\"\n\"3521833\";\"Villa Jara\";\"other\"\n\"3521894\";\"Paredón\";\"main\"\n\"3521894\";\"Paredon\";\"ascii\"\n\"3521912\";\"Paraíso\";\"main\"\n\"3521912\";\"Paraiso\";\"ascii\"\n\"3521922\";\"Papantla de Olarte\";\"main\"\n\"3521922\";\"Papanila\";\"other\"\n\"3521922\";\"Papantla\";\"other\"\n\"3521925\";\"Papalotla\";\"main\"\n\"3521925\";\"Papalotlan\";\"other\"\n\"3521925\";\"Papalutla\";\"other\"\n\"3521941\";\"Pánuco\";\"main\"\n\"3521941\";\"Panuco\";\"ascii\"\n\"3521951\";\"Panotla\";\"main\"\n\"3521951\";\"San Nicolas Panotla\";\"other\"\n\"3521951\";\"San Nicolás Panotla\";\"other\"\n\"3521972\";\"Panaba\";\"main\"\n\"3522013\";\"Palomares\";\"main\"\n\"3522118\";\"Palmarito Tochapán\";\"main\"\n\"3522118\";\"Palmarito Tochapan\";\"ascii\"\n\"3522118\";\"Palmarito\";\"other\"\n\"3522130\";\"Palmar de Bravo\";\"main\"\n\"3522130\";\"Palmar\";\"other\"\n\"3522156\";\"Palizada\";\"main\"\n\"3522164\";\"Palenque\";\"main\"\n\"3522164\";\"Palenke\";\"other\"\n\"3522164\";\"Palenkė\";\"other\"\n\"3522164\";\"Palenque/Temp\";\"other\"\n\"3522164\";\"Palenqué\";\"other\"\n\"3522164\";\"Ruinas de Palenque\";\"other\"\n\"3522164\";\"pa lun ke\";\"other\"\n\"3522164\";\"Паленке\";\"other\"\n\"3522164\";\"帕伦克\";\"other\"\n\"3522186\";\"Pajapan\";\"main\"\n\"3522198\";\"Pahuatlán del Valle\";\"main\"\n\"3522198\";\"Pahuatlan del Valle\";\"ascii\"\n\"3522198\";\"Pahuatlan\";\"other\"\n\"3522198\";\"Pahuatlan de Valle\";\"other\"\n\"3522208\";\"Pachuquilla\";\"main\"\n\"3522210\";\"Pachuca de Soto\";\"main\"\n\"3522210\";\"Pachuca\";\"other\"\n\"3522232\";\"Ozumba de Alzate\";\"main\"\n\"3522232\";\"Ozumba\";\"other\"\n\"3522235\";\"Ozuluama\";\"main\"\n\"3522251\";\"Oxkutzcab\";\"main\"\n\"3522256\";\"Oxchuc\";\"main\"\n\"3522256\";\"Teultepec\";\"other\"\n\"3522265\";\"Otumba de Gómez Farías\";\"main\"\n\"3522265\";\"Otumba de Gomez Farias\";\"ascii\"\n\"3522265\";\"Gomez\";\"other\"\n\"3522265\";\"Gómez\";\"other\"\n\"3522265\";\"Otumba\";\"other\"\n\"3522279\";\"Oteapan\";\"main\"\n\"3522280\";\"Otatitlán\";\"main\"\n\"3522280\";\"Otatitlan\";\"ascii\"\n\"3522280\";\"Ototitlan\";\"other\"\n\"3522293\";\"Ostuacán\";\"main\"\n\"3522293\";\"Ostuacan\";\"ascii\"\n\"3522293\";\"Oxtuacan\";\"other\"\n\"3522302\";\"Orizatlán\";\"main\"\n\"3522302\";\"Orizatlan\";\"ascii\"\n\"3522307\";\"Orizaba\";\"main\"\n\"3522307\";\"Orisaba\";\"other\"\n\"3522307\";\"Орисаба\";\"other\"\n\"3522317\";\"Oriental\";\"main\"\n\"3522328\";\"Opichén\";\"main\"\n\"3522328\";\"Opichen\";\"ascii\"\n\"3522343\";\"Ometepec\";\"main\"\n\"3522347\";\"Omealca\";\"main\"\n\"3522347\";\"Omealco\";\"other\"\n\"3522350\";\"Oluta\";\"main\"\n\"3522364\";\"Olinalá\";\"main\"\n\"3522364\";\"Olinala\";\"ascii\"\n\"3522439\";\"Ocuituco\";\"main\"\n\"3522444\";\"Ocozocuautla\";\"main\"\n\"3522444\";\"Ocozocoautla\";\"other\"\n\"3522444\";\"Ocozocoautla de Espinosa\";\"other\"\n\"3522445\";\"Ocoyoacac\";\"main\"\n\"3522454\";\"Ocotlán\";\"main\"\n\"3522454\";\"Ocotlan\";\"ascii\"\n\"3522459\";\"Ocotitlán\";\"main\"\n\"3522459\";\"Ocotitlan\";\"ascii\"\n\"3522468\";\"Ocotepec\";\"main\"\n\"3522484\";\"Ocosingo\";\"main\"\n\"3522493\";\"Ocampo\";\"main\"\n\"3522505\";\"Oaxtepec\";\"main\"\n\"3522507\";\"Oaxaca de Juárez\";\"main\"\n\"3522507\";\"Oaxaca de Juarez\";\"ascii\"\n\"3522507\";\"Oakhaka de Khuares\";\"other\"\n\"3522507\";\"Oaxaca\";\"other\"\n\"3522507\";\"Oaxaca by\";\"other\"\n\"3522507\";\"Santa Maria\";\"other\"\n\"3522507\";\"Оахака де Хуарес\";\"other\"\n\"3522514\";\"Nunkiní\";\"main\"\n\"3522514\";\"Nunkini\";\"ascii\"\n\"3522526\";\"Nuevo Progreso\";\"main\"\n\"3522531\";\"Nuevo Padilla\";\"main\"\n\"3522531\";\"Nuevo Ciudad Padilla\";\"other\"\n\"3522531\";\"Padilla\";\"other\"\n\"3522551\";\"Nuevo Laredo\";\"main\"\n\"3522551\";\"Nuehvo-Laredo\";\"other\"\n\"3522551\";\"Нуэво-Ларедо\";\"other\"\n\"3522605\";\"Nueva Palestina\";\"main\"\n\"3522617\";\"Nueva Ciudad Guerrero\";\"main\"\n\"3522617\";\"Ciudad Nueva Guerrero\";\"other\"\n\"3522645\";\"Nopalucan de la Granja\";\"main\"\n\"3522645\";\"Nopalucan\";\"other\"\n\"3522696\";\"Nogales\";\"main\"\n\"3522728\";\"Niltepec\";\"main\"\n\"3522728\";\"Miltepec\";\"other\"\n\"3522731\";\"Nicolás Ruiz\";\"main\"\n\"3522731\";\"Nicolas Ruiz\";\"ascii\"\n\"3522732\";\"Nicolás Romero\";\"main\"\n\"3522732\";\"Nicolas Romero\";\"ascii\"\n\"3522732\";\"Villa Nicolas Romero\";\"other\"\n\"3522732\";\"Villa Nicolás Romero\";\"other\"\n\"3522742\";\"Nicolás Bravo\";\"main\"\n\"3522742\";\"Nicolas Bravo\";\"ascii\"\n\"3522777\";\"Necaxa\";\"main\"\n\"3522781\";\"Nealticán\";\"main\"\n\"3522781\";\"Nealtican\";\"ascii\"\n\"3522781\";\"San Buenaventura Nealtican\";\"other\"\n\"3522788\";\"Nautla\";\"main\"\n\"3522790\";\"Naucalpan de Juárez\";\"main\"\n\"3522790\";\"Naucalpan de Juarez\";\"ascii\"\n\"3522790\";\"Naucalpan\";\"other\"\n\"3522790\";\"Naukal'pan-de-Khuares\";\"other\"\n\"3522790\";\"San Bartolo Naucalpan\";\"other\"\n\"3522790\";\"Наукальпан-де-Хуарес\";\"other\"\n\"3522795\";\"Nativitas\";\"main\"\n\"3522795\";\"Santa Maria\";\"other\"\n\"3522795\";\"Santa Maria Nativitas\";\"other\"\n\"3522795\";\"Santa María Nativitas\";\"other\"\n\"3522804\";\"Naranjos\";\"main\"\n\"3522804\";\"Naranjas\";\"other\"\n\"3522836\";\"Naolinco\";\"main\"\n\"3522836\";\"Moalinco\";\"other\"\n\"3522836\";\"Naolinco de Victoria\";\"other\"\n\"3522845\";\"Nanchital\";\"main\"\n\"3522855\";\"Nanacamilpa\";\"main\"\n\"3522855\";\"San Jose\";\"other\"\n\"3522855\";\"San José\";\"other\"\n\"3522865\";\"Nacajuca\";\"main\"\n\"3522865\";\"Nacanica\";\"other\"\n\"3522880\";\"Mundo Nuevo\";\"main\"\n\"3522886\";\"Muna\";\"main\"\n\"3522923\";\"Motzorongo\";\"main\"\n\"3522924\";\"Motul de Felipe Carrillo Puerto\";\"main\"\n\"3522924\";\"Motul\";\"other\"\n\"3522924\";\"Motul de Carrillo Puerto\";\"other\"\n\"3522926\";\"Motozintla de Mendoza\";\"main\"\n\"3522926\";\"Motozintla\";\"other\"\n\"3522926\";\"San Francisco Motozintla\";\"other\"\n\"3522926\";\"Villa de Motozintla de Mendoza\";\"other\"\n\"3522959\";\"Morelos Cañada\";\"main\"\n\"3522959\";\"Morelos Canada\";\"ascii\"\n\"3522959\";\"Canada Morelos\";\"other\"\n\"3522959\";\"Cañada Morelos\";\"other\"\n\"3522959\";\"Morelos\";\"other\"\n\"3522973\";\"Moralillo\";\"main\"\n\"3523011\";\"Montemorelos\";\"main\"\n\"3523034\";\"Montecillo\";\"main\"\n\"3523040\";\"Monte Blanco\";\"main\"\n\"3523061\";\"Momoxpan\";\"main\"\n\"3523078\";\"Molango\";\"main\"\n\"3523127\";\"Mixquiahuala\";\"main\"\n\"3523141\";\"Misantla\";\"main\"\n\"3523149\";\"Miramar\";\"main\"\n\"3523180\";\"Mineral del Monte\";\"main\"\n\"3523180\";\"Mineral del Real del Monte\";\"other\"\n\"3523180\";\"Real del Monte\";\"other\"\n\"3523183\";\"Minatitlán\";\"main\"\n\"3523183\";\"Minatitlan\";\"ascii\"\n\"3523202\";\"Milpa Alta\";\"main\"\n\"3523212\";\"Miguel Hidalgo\";\"main\"\n\"3523222\";\"Mier\";\"main\"\n\"3523222\";\"Ciudad Mier\";\"other\"\n\"3523240\";\"Miahuatlán de Porfirio Díaz\";\"main\"\n\"3523240\";\"Miahuatlan de Porfirio Diaz\";\"ascii\"\n\"3523240\";\"Miahuatlan\";\"other\"\n\"3523240\";\"San Andres\";\"other\"\n\"3523240\";\"San Andres Miahuatlan\";\"other\"\n\"3523240\";\"San Andrés\";\"other\"\n\"3523240\";\"San Andrés Miahuatlán\";\"other\"\n\"3523247\";\"Miacatlán\";\"main\"\n\"3523247\";\"Miacatlan\";\"ascii\"\n\"3523296\";\"Metlaltoyuca\";\"main\"\n\"3523296\";\"Metlatoyuca\";\"other\"\n\"3523303\";\"Metepec\";\"main\"\n\"3523303\";\"Metepek\";\"other\"\n\"3523303\";\"Метепек\";\"other\"\n\"3523349\";\"Mérida\";\"main\"\n\"3523349\";\"Merida\";\"ascii\"\n\"3523349\";\"Ciudad de Merida\";\"other\"\n\"3523349\";\"Ciudad de Mérida\";\"other\"\n\"3523349\";\"mei li da\";\"other\"\n\"3523349\";\"merida\";\"other\"\n\"3523349\";\"Мерида\";\"other\"\n\"3523349\";\"メリダ\";\"other\"\n\"3523349\";\"梅里达\";\"other\"\n\"3523349\";\"梅里達\";\"other\"\n\"3523397\";\"Mecayapan\";\"main\"\n\"3523412\";\"Mazatlán\";\"main\"\n\"3523412\";\"Mazatlan\";\"ascii\"\n\"3523412\";\"Masatlan\";\"other\"\n\"3523412\";\"Mochitlan\";\"other\"\n\"3523412\";\"Mochitlán\";\"other\"\n\"3523412\";\"Масатлан\";\"other\"\n\"3523415\";\"Mazatepec\";\"main\"\n\"3523418\";\"Mazatán\";\"main\"\n\"3523418\";\"Mazatan\";\"ascii\"\n\"3523418\";\"Mazatlan\";\"other\"\n\"3523436\";\"Maxcanú\";\"main\"\n\"3523436\";\"Maxcanu\";\"ascii\"\n\"3523450\";\"Matías Romero\";\"main\"\n\"3523450\";\"Matias Romero\";\"ascii\"\n\"3523466\";\"Matamoros\";\"main\"\n\"3523466\";\"Heroica Matamoros\";\"other\"\n\"3523466\";\"Матаморос\";\"other\"\n\"3523513\";\"Martínez de La Torre\";\"main\"\n\"3523513\";\"Martinez de La Torre\";\"ascii\"\n\"3523559\";\"Mariano Escobedo\";\"main\"\n\"3523590\";\"Mapastepec\";\"main\"\n\"3523608\";\"Manuel\";\"main\"\n\"3523608\";\"Ejido Manuel\";\"other\"\n\"3523616\";\"Manlio Fabio Altamirano\";\"main\"\n\"3523616\";\"Altamirano\";\"other\"\n\"3523616\";\"Manlio Favio Altamirano\";\"other\"\n\"3523619\";\"Maní\";\"main\"\n\"3523619\";\"Mani\";\"ascii\"\n\"3523663\";\"Mamá\";\"main\"\n\"3523663\";\"Mama\";\"ascii\"\n\"3523670\";\"Maltrata\";\"main\"\n\"3523686\";\"Malinalco\";\"main\"\n\"3523697\";\"Malacatepec\";\"main\"\n\"3523745\";\"Magdalena Teitipac\";\"main\"\n\"3523745\";\"Magdalena Teitipal\";\"other\"\n\"3523745\";\"Teitipac\";\"other\"\n\"3523756\";\"Magdalena Cuayucatepec\";\"main\"\n\"3523756\";\"Cuayacatepec\";\"other\"\n\"3523756\";\"Cuayucatepec\";\"other\"\n\"3523760\";\"Magdalena Contreras\";\"main\"\n\"3523791\";\"Macuspana\";\"main\"\n\"3523794\";\"Macultepec\";\"main\"\n\"3523828\";\"Luis Gil Pérez\";\"main\"\n\"3523828\";\"Luis Gil Perez\";\"ascii\"\n\"3523900\";\"Los Reyes Acozac\";\"main\"\n\"3523900\";\"Los Reyes Xoloc\";\"other\"\n\"3523900\";\"Reyes\";\"other\"\n\"3523905\";\"Los Reyes\";\"main\"\n\"3523908\";\"Los Reyes\";\"main\"\n\"3523908\";\"Los Reyes La Paz\";\"other\"\n\"3523908\";\"Reyes\";\"other\"\n\"3523908\";\"Reyes la Paz\";\"other\"\n\"3524186\";\"Los Altos\";\"main\"\n\"3524292\";\"Llera de Canales\";\"main\"\n\"3524292\";\"Llera\";\"other\"\n\"3524348\";\"Linares\";\"main\"\n\"3524348\";\"Линарес\";\"other\"\n\"3524374\";\"Libres\";\"main\"\n\"3524374\";\"San Juan de los Llanos\";\"other\"\n\"3524389\";\"Lerma de Villada\";\"main\"\n\"3524389\";\"Lerma\";\"other\"\n\"3524389\";\"Zerma de Villada\";\"other\"\n\"3524391\";\"Lerdo de Tejada\";\"main\"\n\"3524527\";\"La Trinitaria\";\"main\"\n\"3524527\";\"Zapaluta\";\"other\"\n\"3524580\";\"Las Vigas\";\"main\"\n\"3524580\";\"Vigas\";\"other\"\n\"3524744\";\"Las Margaritas\";\"main\"\n\"3524903\";\"Las Choapas\";\"main\"\n\"3524965\";\"Las Amilpas\";\"main\"\n\"3524965\";\"Amilpas\";\"other\"\n\"3525067\";\"La Reforma\";\"main\"\n\"3525158\";\"La Poza\";\"main\"\n\"3525203\";\"La Perla\";\"main\"\n\"3525203\";\"Perla\";\"other\"\n\"3525491\";\"La Libertad\";\"main\"\n\"3525570\";\"La Joya\";\"main\"\n\"3525596\";\"La Isla\";\"main\"\n\"3525596\";\"Isla\";\"other\"\n\"3525956\";\"La Concepción\";\"main\"\n\"3525956\";\"La Concepcion\";\"ascii\"\n\"3525956\";\"Concepcion de los Banos\";\"other\"\n\"3525956\";\"Concepcion de los Baños\";\"other\"\n\"3525956\";\"La Concepcion de los Banos\";\"other\"\n\"3525956\";\"La Concepcion los Banos\";\"other\"\n\"3525956\";\"La Concepción de los Baños\";\"other\"\n\"3525956\";\"La Concepción los Baños\";\"other\"\n\"3526056\";\"La Ceiba\";\"main\"\n\"3526284\";\"Kinchil\";\"main\"\n\"3526301\";\"Kantunil\";\"main\"\n\"3526323\";\"Kanasín\";\"main\"\n\"3526323\";\"Kanasin\";\"ascii\"\n\"3526323\";\"Kanacin\";\"other\"\n\"3526323\";\"Kanacín\";\"other\"\n\"3526323\";\"Kanazin\";\"other\"\n\"3526355\";\"Juchitepec de Mariano Riva Palacio\";\"main\"\n\"3526355\";\"Juchitepec\";\"other\"\n\"3526355\";\"Xuchitepec\";\"other\"\n\"3526357\";\"Juchitán de Zaragoza\";\"main\"\n\"3526357\";\"Juchitan de Zaragoza\";\"ascii\"\n\"3526357\";\"Juchitan\";\"other\"\n\"3526357\";\"Khuchitan-de-Saragosa\";\"other\"\n\"3526357\";\"Хучитан-де-Сарагоса\";\"other\"\n\"3526450\";\"Joquicingo de León Guzmán\";\"main\"\n\"3526450\";\"Joquicingo de Leon Guzman\";\"ascii\"\n\"3526450\";\"Joquicingo\";\"other\"\n\"3526453\";\"Jonuta\";\"main\"\n\"3526458\";\"Jonacatepec\";\"main\"\n\"3526467\";\"Jojutla de Juárez\";\"main\"\n\"3526467\";\"Jojutla de Juarez\";\"ascii\"\n\"3526467\";\"Jojutla\";\"other\"\n\"3526473\";\"Jocotitlán\";\"main\"\n\"3526473\";\"Jocotitlan\";\"ascii\"\n\"3526473\";\"Xocotitlan\";\"other\"\n\"3526473\";\"Xocotitlán\";\"other\"\n\"3526485\";\"Jiutepec\";\"main\"\n\"3526485\";\"Xiutepec\";\"other\"\n\"3526486\";\"Jitotol\";\"main\"\n\"3526488\";\"Jiquipilas\";\"main\"\n\"3526488\";\"Jianipilas\";\"other\"\n\"3526488\";\"Jiquipilla\";\"other\"\n\"3526499\";\"San Marcos Jilotzingo\";\"main\"\n\"3526499\";\"Jilotaingo\";\"other\"\n\"3526499\";\"Jilotzingo\";\"other\"\n\"3526501\";\"Jilotepec de Abasolo\";\"main\"\n\"3526501\";\"Jilotepec\";\"other\"\n\"3526505\";\"Jilotepec\";\"main\"\n\"3526536\";\"Jesús del Monte\";\"main\"\n\"3526536\";\"Jesus del Monte\";\"ascii\"\n\"3526538\";\"Jesús Carranza\";\"main\"\n\"3526538\";\"Jesus Carranza\";\"ascii\"\n\"3526538\";\"Santa Lucrecia\";\"other\"\n\"3526564\";\"Jaumave\";\"main\"\n\"3526584\";\"Jantetelco\";\"main\"\n\"3526588\";\"Jamapa\";\"main\"\n\"3526591\";\"Jaltocán\";\"main\"\n\"3526591\";\"Jaltocan\";\"ascii\"\n\"3526591\";\"Xaltocan\";\"other\"\n\"3526599\";\"Jaltepec\";\"main\"\n\"3526599\";\"Xaltepec\";\"other\"\n\"3526600\";\"Jaltenco\";\"main\"\n\"3526600\";\"Jaltengo\";\"other\"\n\"3526600\";\"San Andres Jaltenco\";\"other\"\n\"3526600\";\"San Andres Jaltengo\";\"other\"\n\"3526600\";\"San Andrés Jaltenco\";\"other\"\n\"3526600\";\"San Andrés Jaltengo\";\"other\"\n\"3526600\";\"Xaltenco\";\"other\"\n\"3526601\";\"Jalpan\";\"main\"\n\"3526603\";\"Jalpa de Méndez\";\"main\"\n\"3526603\";\"Jalpa de Mendez\";\"ascii\"\n\"3526603\";\"Jalpa\";\"other\"\n\"3526611\";\"Jalatlaco\";\"main\"\n\"3526611\";\"Jalatiaco\";\"other\"\n\"3526611\";\"Xalatlaco\";\"other\"\n\"3526613\";\"Jalapilla\";\"main\"\n\"3526613\";\"Jalapillo\";\"other\"\n\"3526617\";\"Jalapa Enríquez\";\"main\"\n\"3526617\";\"Jalapa Enriquez\";\"ascii\"\n\"3526617\";\"Jalapa\";\"other\"\n\"3526617\";\"Jalapa Enriques\";\"other\"\n\"3526617\";\"Xalapa\";\"other\"\n\"3526617\";\"Xalapa de Enriquez\";\"other\"\n\"3526617\";\"Xalapa de Enríquez\";\"other\"\n\"3526621\";\"Jalapa\";\"main\"\n\"3526621\";\"Jalapa de Diaz\";\"other\"\n\"3526621\";\"Khalapa\";\"other\"\n\"3526621\";\"Халапа\";\"other\"\n\"3526625\";\"Jalacingo\";\"main\"\n\"3526646\";\"Jacala\";\"main\"\n\"3526646\";\"Jacala de Ledesma\";\"other\"\n\"3526646\";\"Xacala\";\"other\"\n\"3526657\";\"Izúcar de Matamoros\";\"main\"\n\"3526657\";\"Izucar de Matamoros\";\"ascii\"\n\"3526657\";\"Izucar\";\"other\"\n\"3526657\";\"Izúcar\";\"other\"\n\"3526657\";\"Matamoros\";\"other\"\n\"3526657\";\"Matamoros de Izucar\";\"other\"\n\"3526657\";\"Matamoros de Izúcar\";\"other\"\n\"3526662\";\"Izamal\";\"main\"\n\"3526674\";\"San Jerónimo Ixtepec\";\"main\"\n\"3526674\";\"San Jeronimo Ixtepec\";\"ascii\"\n\"3526674\";\"Ixtepec\";\"other\"\n\"3526674\";\"San Geronimo Ixtepec\";\"other\"\n\"3526681\";\"Ixtapan de la Sal\";\"main\"\n\"3526682\";\"Ixtapaluca\";\"main\"\n\"3526682\";\"Iztapaluca\";\"other\"\n\"3526683\";\"Iztapalapa\";\"main\"\n\"3526683\";\"Ixtapalapa\";\"other\"\n\"3526683\";\"Iztaoalaoa\";\"other\"\n\"3526687\";\"Ixtapa\";\"main\"\n\"3526696\";\"Ixtaczoquitlán\";\"main\"\n\"3526696\";\"Ixtaczoquitlan\";\"ascii\"\n\"3526698\";\"Ixtacomitán\";\"main\"\n\"3526698\";\"Ixtacomitan\";\"ascii\"\n\"3526700\";\"Iztacalco\";\"main\"\n\"3526700\";\"Delegacion de Ixtacalco\";\"other\"\n\"3526700\";\"Delegación de Ixtacalco\";\"other\"\n\"3526700\";\"Ixtacalco\";\"other\"\n\"3526708\";\"Ixmiquilpan\";\"main\"\n\"3526708\";\"Iximiquilpan\";\"other\"\n\"3526711\";\"Ixil\";\"main\"\n\"3526714\";\"Ixhuatlancillo\";\"main\"\n\"3526715\";\"Ixhuatán\";\"main\"\n\"3526715\";\"Ixhuatan\";\"ascii\"\n\"3526726\";\"Ixcatepec\";\"main\"\n\"3526726\";\"Ixcatepex\";\"other\"\n\"3526756\";\"Isla Mujeres\";\"main\"\n\"3526756\";\"Mujeres\";\"other\"\n\"3526766\";\"Isla de Aguada\";\"main\"\n\"3526766\";\"Aguada\";\"other\"\n\"3526766\";\"Isla Aguada\";\"other\"\n\"3526766\";\"La Aguada\";\"other\"\n\"3526769\";\"Ishuatán\";\"main\"\n\"3526769\";\"Ishuatan\";\"ascii\"\n\"3526769\";\"Ixhuatan\";\"other\"\n\"3526798\";\"Iguala de la Independencia\";\"main\"\n\"3526798\";\"Iguala\";\"other\"\n\"3526808\";\"Ignacio de la Llave\";\"main\"\n\"3526808\";\"San Cristobal Llave\";\"other\"\n\"3526808\";\"San Cristobal de la Llave\";\"other\"\n\"3526808\";\"San Cristóbal Llave\";\"other\"\n\"3526816\";\"Idzincab\";\"main\"\n\"3526816\";\"Itzincab\";\"other\"\n\"3526838\";\"Hunucmá\";\"main\"\n\"3526838\";\"Hunucma\";\"ascii\"\n\"3526855\";\"Huixtla\";\"main\"\n\"3526864\";\"Huitzuco de los Figueroa\";\"main\"\n\"3526864\";\"Huitzuco\";\"other\"\n\"3526864\";\"Huizuco\";\"other\"\n\"3526877\";\"Huitziltepec\";\"main\"\n\"3526877\";\"Huixiltepec\";\"other\"\n\"3526883\";\"Huitzilac\";\"main\"\n\"3526908\";\"Huimanguillo\";\"main\"\n\"3526916\";\"Huiloapan\";\"main\"\n\"3526923\";\"Huichapan\";\"main\"\n\"3526924\";\"Huhí\";\"main\"\n\"3526924\";\"Huhi\";\"ascii\"\n\"3526927\";\"Hueytamalco\";\"main\"\n\"3526928\";\"Hueypoxtla\";\"main\"\n\"3526929\";\"Hueyotlipan de Hidalgo\";\"main\"\n\"3526929\";\"Hueyotlipan\";\"other\"\n\"3526929\";\"San Ildefonso\";\"other\"\n\"3526929\";\"San Ildefonso Hueyotlipan\";\"other\"\n\"3526932\";\"Hueyapan de Ocampo\";\"main\"\n\"3526932\";\"Hueyapan\";\"other\"\n\"3526934\";\"Hueyapan\";\"main\"\n\"3526952\";\"Huejutla de Reyes\";\"main\"\n\"3526952\";\"Huejutla\";\"other\"\n\"3526952\";\"Uehkhutla-de-Rejes\";\"other\"\n\"3526952\";\"Уэхутла-де-Рейес\";\"other\"\n\"3526953\";\"Huejotzingo\";\"main\"\n\"3526957\";\"Huehuetoca\";\"main\"\n\"3526966\";\"Huehuetán\";\"main\"\n\"3526966\";\"Huehuetan\";\"ascii\"\n\"3526987\";\"Huautla de Jiménez\";\"main\"\n\"3526987\";\"Huautla de Jimenez\";\"ascii\"\n\"3526987\";\"Huautla\";\"other\"\n\"3526989\";\"Huautla\";\"main\"\n\"3526992\";\"Huauchinango\";\"main\"\n\"3526993\";\"Huatusco de Chicuellar\";\"main\"\n\"3526993\";\"Huatusco\";\"other\"\n\"3527006\";\"Huaquechula\";\"main\"\n\"3527017\";\"Huamuxtitlán\";\"main\"\n\"3527017\";\"Huamuxtitlan\";\"ascii\"\n\"3527017\";\"Huamuctitilan\";\"other\"\n\"3527017\";\"Huamuxtitan\";\"other\"\n\"3527021\";\"Hualahuises\";\"main\"\n\"3527023\";\"Huajuapan de León\";\"main\"\n\"3527023\";\"Huajuapan de Leon\";\"ascii\"\n\"3527023\";\"Huajuapam\";\"other\"\n\"3527023\";\"Huajuapam de Leon\";\"other\"\n\"3527023\";\"Huajuapan\";\"other\"\n\"3527023\";\"Huajuápam\";\"other\"\n\"3527023\";\"Huajuápam de León\";\"other\"\n\"3527065\";\"Hopelchén\";\"main\"\n\"3527065\";\"Hopelchen\";\"ascii\"\n\"3527080\";\"Homún\";\"main\"\n\"3527080\";\"Homun\";\"ascii\"\n\"3527092\";\"Hoctún\";\"main\"\n\"3527092\";\"Hoctun\";\"ascii\"\n\"3527094\";\"Hocabá\";\"main\"\n\"3527094\";\"Hocaba\";\"ascii\"\n\"3527113\";\"Hidalgotitlán\";\"main\"\n\"3527113\";\"Hidalgotitlan\";\"ascii\"\n\"3527117\";\"Hidalgo\";\"main\"\n\"3527121\";\"Hidalgo\";\"main\"\n\"3527149\";\"Hecelchakán\";\"main\"\n\"3527149\";\"Hecelchakan\";\"ascii\"\n\"3527149\";\"Hecelchacan\";\"other\"\n\"3527164\";\"Halachó\";\"main\"\n\"3527164\";\"Halacho\";\"ascii\"\n\"3527186\";\"Gutiérrez Zamora\";\"main\"\n\"3527186\";\"Gutierrez Zamora\";\"ascii\"\n\"3527186\";\"Guetierrez Zamora\";\"other\"\n\"3527413\";\"Graciano Sánchez\";\"main\"\n\"3527413\";\"Graciano Sanchez\";\"ascii\"\n\"3527451\";\"General Terán\";\"main\"\n\"3527451\";\"General Teran\";\"ascii\"\n\"3527454\";\"General Pedro Antonio Santos\";\"main\"\n\"3527454\";\"Ciudad Santos\";\"other\"\n\"3527454\";\"Pedro Antonio Santos\";\"other\"\n\"3527454\";\"Pedro Antonio de Santos\";\"other\"\n\"3527454\";\"Tancanhuitz\";\"other\"\n\"3527457\";\"General Bravo\";\"main\"\n\"3527541\";\"Frontera Hidalgo\";\"main\"\n\"3527543\";\"Frontera Comalapa\";\"main\"\n\"3527545\";\"Frontera\";\"main\"\n\"3527545\";\"Alvaro Obregon\";\"other\"\n\"3527545\";\"Ponta Frontera\";\"other\"\n\"3527545\";\"Puerto Alvaro Obregon\";\"other\"\n\"3527545\";\"Puerto Obregon\";\"other\"\n\"3527545\";\"Puerto Álvaro Obregon\";\"other\"\n\"3527545\";\"Álvaro Obregón\";\"other\"\n\"3527545\";\"Фронтера\";\"other\"\n\"3527596\";\"Fortín de las Flores\";\"main\"\n\"3527596\";\"Fortin de las Flores\";\"ascii\"\n\"3527596\";\"El Fortin\";\"other\"\n\"3527596\";\"El Fortín\";\"other\"\n\"3527596\";\"Fortin\";\"other\"\n\"3527596\";\"Fortín\";\"other\"\n\"3527624\";\"Filomeno Mata\";\"main\"\n\"3527624\";\"Santo Domingo\";\"other\"\n\"3527639\";\"Felipe Carrillo Puerto\";\"main\"\n\"3527639\";\"Felipe Carillo Puerto\";\"other\"\n\"3527639\";\"Santa Cruz de Bravo\";\"other\"\n\"3527656\";\"Ezequiel Montes\";\"main\"\n\"3527656\";\"Corrat Blanco\";\"other\"\n\"3527679\";\"Estero\";\"main\"\n\"3527679\";\"Puntilla Aldama\";\"other\"\n\"3527720\";\"Espita\";\"main\"\n\"3527748\";\"Esperanza\";\"main\"\n\"3527768\";\"Escuintla\";\"main\"\n\"3527795\";\"Escárcega\";\"main\"\n\"3527795\";\"Escarcega\";\"ascii\"\n\"3527795\";\"Ehskarsega\";\"other\"\n\"3527795\";\"Escarcega de Matamoros\";\"other\"\n\"3527795\";\"Francisco Escarcega\";\"other\"\n\"3527795\";\"Francisco Escárcega\";\"other\"\n\"3527795\";\"Kilometro 45\";\"other\"\n\"3527795\";\"Kilómetro 45\";\"other\"\n\"3527795\";\"Эскарсега\";\"other\"\n\"3527869\";\"Emilio Carranza\";\"main\"\n\"3527869\";\"Santa Barbara\";\"other\"\n\"3527869\";\"Santa Bárbara\";\"other\"\n\"3527869\";\"Villa Emilio Carranza\";\"other\"\n\"3527876\";\"Emiliano Zapata\";\"main\"\n\"3527879\";\"Emiliano Zapata\";\"main\"\n\"3527880\";\"Emiliano Zapata\";\"main\"\n\"3527880\";\"Ehmiliano Sapata\";\"other\"\n\"3527880\";\"Montecristo\";\"other\"\n\"3527880\";\"Montecrito\";\"other\"\n\"3527880\";\"Эмилиано Сапата\";\"other\"\n\"3527920\";\"El Zapotal\";\"main\"\n\"3527920\";\"San Lucas\";\"other\"\n\"3528046\";\"El Tejar\";\"main\"\n\"3528601\";\"El Ocotito\";\"main\"\n\"3528601\";\"Ocotito\";\"other\"\n\"3528643\";\"El Naranjo\";\"main\"\n\"3528643\";\"Naranjo\";\"other\"\n\"3528756\";\"El Mante\";\"main\"\n\"3528788\";\"El Llano\";\"main\"\n\"3528894\";\"El Higo\";\"main\"\n\"3528975\";\"El Espinal\";\"main\"\n\"3528975\";\"Espinal\";\"other\"\n\"3529243\";\"El Castillo\";\"main\"\n\"3529372\";\"El Bosque\";\"main\"\n\"3529372\";\"San Juan\";\"other\"\n\"3529437\";\"El Arenal\";\"main\"\n\"3529437\";\"Arenal\";\"other\"\n\"3529510\";\"Ejutla de Crespo\";\"main\"\n\"3529510\";\"Ejutla\";\"other\"\n\"3529609\";\"Ecatzingo de Hidalgo\";\"main\"\n\"3529609\";\"Ecatzingo\";\"other\"\n\"3529612\";\"Ecatepec\";\"main\"\n\"3529612\";\"Ecatepec Morelos\";\"other\"\n\"3529612\";\"Ecatepec de Morelos\";\"other\"\n\"3529612\";\"Morelos\";\"other\"\n\"3529612\";\"San Cristobal\";\"other\"\n\"3529612\";\"San Cristobal Ecatepec\";\"other\"\n\"3529612\";\"San Cristobal Ecatepec de Morelos\";\"other\"\n\"3529612\";\"San Cristóbal\";\"other\"\n\"3529612\";\"San Cristóbal Ecatepec\";\"other\"\n\"3529612\";\"San Cristóbal Ecatepec de Morelos\";\"other\"\n\"3529650\";\"Dzitbalché\";\"main\"\n\"3529650\";\"Dzitbalche\";\"ascii\"\n\"3529650\";\"Dzibalche\";\"other\"\n\"3529650\";\"Dzibalché\";\"other\"\n\"3529650\";\"Tzitbalche\";\"other\"\n\"3529650\";\"Tzitbalché\";\"other\"\n\"3529652\";\"Dzitás\";\"main\"\n\"3529652\";\"Dzitas\";\"ascii\"\n\"3529652\";\"Tzitas\";\"other\"\n\"3529654\";\"Dzilam González\";\"main\"\n\"3529654\";\"Dzilam Gonzalez\";\"ascii\"\n\"3529654\";\"Dzilam\";\"other\"\n\"3529654\";\"Tzilam Gonzalez\";\"other\"\n\"3529654\";\"Tzilam González\";\"other\"\n\"3529660\";\"Dzidzantún\";\"main\"\n\"3529660\";\"Dzidzantun\";\"ascii\"\n\"3529660\";\"Dzidzantum\";\"other\"\n\"3529660\";\"Tzitzantun\";\"other\"\n\"3529660\";\"Tzitzantún\";\"other\"\n\"3529669\";\"Dzemul\";\"main\"\n\"3529669\";\"Tzemul\";\"other\"\n\"3529672\";\"Dzan\";\"main\"\n\"3529689\";\"Doxey\";\"main\"\n\"3529689\";\"Doxhey\";\"other\"\n\"3529730\";\"Domingo Arenas\";\"main\"\n\"3529863\";\"Cuzamá\";\"main\"\n\"3529863\";\"Cuzama\";\"ascii\"\n\"3529863\";\"Guzama\";\"other\"\n\"3529886\";\"Cunduacán\";\"main\"\n\"3529886\";\"Cunduacan\";\"ascii\"\n\"3529886\";\"Conduacan\";\"other\"\n\"3529886\";\"Conduacán\";\"other\"\n\"3529911\";\"Cuitláhuac\";\"main\"\n\"3529911\";\"Cuitlahuac\";\"ascii\"\n\"3529911\";\"San Juan de la Punta\";\"other\"\n\"3529915\";\"Cuilapan de Guerrero\";\"main\"\n\"3529915\";\"Cuilapam\";\"other\"\n\"3529915\";\"Cuilapan\";\"other\"\n\"3529915\";\"Cuilápam\";\"other\"\n\"3529918\";\"Cuichapa\";\"main\"\n\"3529918\";\"Cinchapa\";\"other\"\n\"3529932\";\"Cuetzalán del Progreso\";\"main\"\n\"3529932\";\"Cuetzalan del Progreso\";\"ascii\"\n\"3529932\";\"Chetzalan\";\"other\"\n\"3529932\";\"Chetzalán\";\"other\"\n\"3529932\";\"Coetzalan\";\"other\"\n\"3529932\";\"Cuetzalan\";\"other\"\n\"3529932\";\"Cuetzan del Progreso\";\"other\"\n\"3529932\";\"San Francisco\";\"other\"\n\"3529947\";\"Cuernavaca\";\"main\"\n\"3529947\";\"Cuauhnahuac\";\"other\"\n\"3529947\";\"Cuauhnāhuac\";\"other\"\n\"3529947\";\"Kuehrnavaka\";\"other\"\n\"3529947\";\"Куэрнавака\";\"other\"\n\"3529980\";\"Cuautlapan\";\"main\"\n\"3529981\";\"Cuautlancingo\";\"main\"\n\"3529981\";\"San Juan Cuautlancingo\";\"other\"\n\"3529982\";\"Cuautla Morelos\";\"main\"\n\"3529982\";\"Cuautla\";\"other\"\n\"3529983\";\"Santiago Cuautlalpan\";\"main\"\n\"3529983\";\"Cuautlalpan\";\"other\"\n\"3529986\";\"Cuautitlán\";\"main\"\n\"3529986\";\"Cuautitlan\";\"ascii\"\n\"3529986\";\"Cuautitlan de Romero Rubio\";\"other\"\n\"3529986\";\"Cuautitlán de Romero Rubio\";\"other\"\n\"3529986\";\"Kuautitlan\";\"other\"\n\"3529986\";\"Куаутитлан\";\"other\"\n\"3529989\";\"Cuautepec de Hinojosa\";\"main\"\n\"3529989\";\"Cuautepec\";\"other\"\n\"3529994\";\"Cuautepec\";\"main\"\n\"3530032\";\"Cuapiaxtla de Madero\";\"main\"\n\"3530032\";\"Cuapiaxtla\";\"other\"\n\"3530033\";\"Cuapiaxtla\";\"main\"\n\"3530033\";\"Cuapixtla\";\"other\"\n\"3530033\";\"San Lorenzo Cuapiaxtla\";\"other\"\n\"3530040\";\"Cuanala\";\"main\"\n\"3530040\";\"Cuanalapa\";\"other\"\n\"3530040\";\"Cuenala\";\"other\"\n\"3530046\";\"Cuajinicuilapa\";\"main\"\n\"3530046\";\"Cuajinicualapa\";\"other\"\n\"3530046\";\"Cuajiniouilapan\";\"other\"\n\"3530049\";\"Cuajimalpa\";\"main\"\n\"3530049\";\"Cuajimalpa de Morelos\";\"other\"\n\"3530049\";\"Guajimalpa\";\"other\"\n\"3530056\";\"Cuacnopalan\";\"main\"\n\"3530056\";\"Cuagnopalan\";\"other\"\n\"3530066\";\"Cruz Grande\";\"main\"\n\"3530097\";\"Cristóbal Obregón\";\"main\"\n\"3530097\";\"Cristobal Obregon\";\"ascii\"\n\"3530103\";\"San Miguel de Cozumel\";\"main\"\n\"3530103\";\"Conzumel\";\"other\"\n\"3530103\";\"Cozumel\";\"other\"\n\"3530103\";\"San Miguel Cozumel\";\"other\"\n\"3530110\";\"Coyutla\";\"main\"\n\"3530123\";\"Coyotepec\";\"main\"\n\"3530139\";\"Coyoacán\";\"main\"\n\"3530139\";\"Coyoacan\";\"ascii\"\n\"3530139\";\"koyoakan\";\"other\"\n\"3530139\";\"コヨアカン\";\"other\"\n\"3530144\";\"Coxquihui\";\"main\"\n\"3530144\";\"Cosquihui\";\"other\"\n\"3530150\";\"Coxcatlán\";\"main\"\n\"3530150\";\"Coxcatlan\";\"ascii\"\n\"3530167\";\"Cosoleacaque\";\"main\"\n\"3530168\";\"Cosolapa\";\"main\"\n\"3530168\";\"Cozolapa\";\"other\"\n\"3530168\";\"Cusalapa\";\"other\"\n\"3530168\";\"Gusalapa\";\"other\"\n\"3530175\";\"Coscomatepec de Bravo\";\"main\"\n\"3530175\";\"Coscomatepec\";\"other\"\n\"3530175\";\"Coseo Matepec\";\"other\"\n\"3530176\";\"Cosautlán de Carbajal\";\"main\"\n\"3530176\";\"Cosautlan de Carbajal\";\"ascii\"\n\"3530176\";\"Cosautlan\";\"other\"\n\"3530176\";\"Cosautlan de Carvajal\";\"other\"\n\"3530176\";\"Cosautlán\";\"other\"\n\"3530176\";\"Cosautlán de Carvajal\";\"other\"\n\"3530177\";\"Cosamaloapan de Carpio\";\"main\"\n\"3530177\";\"Cosamaloapan\";\"other\"\n\"3530200\";\"Corral Nuevo\";\"main\"\n\"3530240\";\"Córdoba\";\"main\"\n\"3530240\";\"Cordoba\";\"ascii\"\n\"3530240\";\"Kordova\";\"other\"\n\"3530240\";\"Кордова\";\"other\"\n\"3530248\";\"Copoya\";\"main\"\n\"3530259\";\"Copalillo\";\"main\"\n\"3530264\";\"Copala\";\"main\"\n\"3530267\";\"Copainalá\";\"main\"\n\"3530267\";\"Copainala\";\"ascii\"\n\"3530276\";\"Contla\";\"main\"\n\"3530276\";\"San Bernardino\";\"other\"\n\"3530276\";\"San Bernardino Contla\";\"other\"\n\"3530295\";\"Conkal\";\"main\"\n\"3530362\";\"Comoapan\";\"main\"\n\"3530367\";\"Comitán de Domínguez\";\"main\"\n\"3530367\";\"Comitan de Dominguez\";\"ascii\"\n\"3530367\";\"Comitan\";\"other\"\n\"3530367\";\"Comitán\";\"other\"\n\"3530367\";\"Komitan-de-Dominges\";\"other\"\n\"3530367\";\"Комитан-де-Домингес\";\"other\"\n\"3530369\";\"Comitancillo\";\"main\"\n\"3530385\";\"Comalcalco\";\"main\"\n\"3530482\";\"Cocula\";\"main\"\n\"3530492\";\"Cocoyoc\";\"main\"\n\"3530494\";\"Cocotitlán\";\"main\"\n\"3530494\";\"Cocotitlan\";\"ascii\"\n\"3530506\";\"Cobá\";\"main\"\n\"3530506\";\"Coba\";\"ascii\"\n\"3530506\";\"Koba\";\"other\"\n\"3530506\";\"Коба\";\"other\"\n\"3530513\";\"Coatzintla\";\"main\"\n\"3530513\";\"Coazintla\";\"other\"\n\"3530517\";\"Coatzacoalcos\";\"main\"\n\"3530517\";\"Koacakoalkos\";\"other\"\n\"3530517\";\"Puerto Mexico\";\"other\"\n\"3530517\";\"Коацакоалкос\";\"other\"\n\"3530523\";\"Coatetelco\";\"main\"\n\"3530527\";\"Coatepec Harinas\";\"main\"\n\"3530527\";\"Coatepec\";\"other\"\n\"3530527\";\"Harinas\";\"other\"\n\"3530531\";\"Coatepec\";\"main\"\n\"3530532\";\"Coatepec\";\"main\"\n\"3530564\";\"Coacoatzintla\";\"main\"\n\"3530564\";\"Coacoazintla\";\"other\"\n\"3530569\";\"Coacalco\";\"main\"\n\"3530569\";\"Coacalco de Berriozabal\";\"other\"\n\"3530569\";\"Coacalco de Berriozaval\";\"other\"\n\"3530569\";\"Coacalco de Berriozábal\";\"other\"\n\"3530569\";\"Coacalco de Berriozával\";\"other\"\n\"3530580\";\"Ciudad Victoria\";\"main\"\n\"3530580\";\"Cd. Victoria\";\"other\"\n\"3530580\";\"S'judad-Viktorija\";\"other\"\n\"3530580\";\"Сьюдад-Виктория\";\"other\"\n\"3530582\";\"Ciudad Valles\";\"main\"\n\"3530582\";\"Cd Valles\";\"other\"\n\"3530582\";\"Cd. Valles\";\"other\"\n\"3530582\";\"Ciudad de Valles\";\"other\"\n\"3530582\";\"S'judad-Val'es\";\"other\"\n\"3530582\";\"Valles\";\"other\"\n\"3530582\";\"Сьюдад-Вальес\";\"other\"\n\"3530584\";\"Ciudad Serdán\";\"main\"\n\"3530584\";\"Ciudad Serdan\";\"ascii\"\n\"3530584\";\"Chalchicomula\";\"other\"\n\"3530587\";\"Ciudad Sahagún\";\"main\"\n\"3530587\";\"Ciudad Sahagun\";\"ascii\"\n\"3530587\";\"Bernardino de Sahagun\";\"other\"\n\"3530587\";\"Bernardino de Sahagún\";\"other\"\n\"3530587\";\"Ciudad Bernardino de Sahagun\";\"other\"\n\"3530587\";\"Ciudad Bernardino de Sahagún\";\"other\"\n\"3530587\";\"Ciudad Fray Bernardino Sahagun\";\"other\"\n\"3530587\";\"Ciudad Fray Bernardino Sahagún\";\"other\"\n\"3530587\";\"Sahagun\";\"other\"\n\"3530587\";\"Sahagún\";\"other\"\n\"3530588\";\"Ciudad Pemex\";\"main\"\n\"3530588\";\"Ciudad Penex\";\"other\"\n\"3530588\";\"Pemex\";\"other\"\n\"3530589\";\"Ciudad Nezahualcóyotl\";\"main\"\n\"3530589\";\"Ciudad Nezahualcoyotl\";\"ascii\"\n\"3530589\";\"Cd. Neza\";\"other\"\n\"3530589\";\"Cd. Nezahualcoyotl\";\"other\"\n\"3530589\";\"Cd. Nezahualcóyotl\";\"other\"\n\"3530589\";\"Ciudad Netzahualcoyotl\";\"other\"\n\"3530589\";\"Ciudad Netzahualcóyotl\";\"other\"\n\"3530589\";\"Ciudad Neza\";\"other\"\n\"3530589\";\"Nesahualkojotlis\";\"other\"\n\"3530589\";\"Netzahualcoyotl\";\"other\"\n\"3530589\";\"Netzahualcóyotl\";\"other\"\n\"3530589\";\"Neza\";\"other\"\n\"3530589\";\"Nezahualcoyotl\";\"other\"\n\"3530589\";\"Nezahualcóyotl\";\"other\"\n\"3530589\";\"Rancheria Netzahualcoyotl\";\"other\"\n\"3530589\";\"Ranchería Netzahualcóyotl\";\"other\"\n\"3530590\";\"Ciudad Miguel Alemán\";\"main\"\n\"3530590\";\"Ciudad Miguel Aleman\";\"ascii\"\n\"3530590\";\"Ciudad Aleman\";\"other\"\n\"3530590\";\"Ciudad Alemán\";\"other\"\n\"3530590\";\"Miguel Aleman\";\"other\"\n\"3530590\";\"Miguel Alemán\";\"other\"\n\"3530592\";\"Ciudad Mendoza\";\"main\"\n\"3530592\";\"Camerino Z. Mendoza\";\"other\"\n\"3530592\";\"S'judad-Mendosa\";\"other\"\n\"3530592\";\"Santa Rosa\";\"other\"\n\"3530592\";\"Сьюдад-Мендоса\";\"other\"\n\"3530594\";\"Ciudad Madero\";\"main\"\n\"3530594\";\"Cd Madero\";\"other\"\n\"3530594\";\"Cd. Madero\";\"other\"\n\"3530594\";\"S'judad-Madero\";\"other\"\n\"3530594\";\"Villa de Cecilia\";\"other\"\n\"3530594\";\"Сьюдад-Мадеро\";\"other\"\n\"3530596\";\"Ciudad Fernández\";\"main\"\n\"3530596\";\"Ciudad Fernandez\";\"ascii\"\n\"3530596\";\"Fernandez\";\"other\"\n\"3530596\";\"Fernández\";\"other\"\n\"3530596\";\"S'judad-Fernandes\";\"other\"\n\"3530596\";\"Сьюдад-Фернандес\";\"other\"\n\"3530597\";\"Mexico City\";\"main\"\n\"3530597\";\"Cidade de Mexico\";\"other\"\n\"3530597\";\"Cidade de México\";\"other\"\n\"3530597\";\"Cidade do Mexico\";\"other\"\n\"3530597\";\"Cidade do México\";\"other\"\n\"3530597\";\"Cita du Messicu\";\"other\"\n\"3530597\";\"Citta del Messico\";\"other\"\n\"3530597\";\"Città del Messico\";\"other\"\n\"3530597\";\"Cità dû Messicu\";\"other\"\n\"3530597\";\"Cità dû Mèssicu\";\"other\"\n\"3530597\";\"Ciudad Mexico\";\"other\"\n\"3530597\";\"Ciudad de Mejico\";\"other\"\n\"3530597\";\"Ciudad de Mexico\";\"other\"\n\"3530597\";\"Ciudad de Méjico\";\"other\"\n\"3530597\";\"Ciudad de México\";\"other\"\n\"3530597\";\"Ciutat de Mexic\";\"other\"\n\"3530597\";\"Ciutat de Mèxic\";\"other\"\n\"3530597\";\"Lungsod ng Mexico\";\"other\"\n\"3530597\";\"Lungsod ng México\";\"other\"\n\"3530597\";\"Mehiko\";\"other\"\n\"3530597\";\"Mekhiko\";\"other\"\n\"3530597\";\"Meksikas\";\"other\"\n\"3530597\";\"Meksiko\";\"other\"\n\"3530597\";\"Meksiko Siti\";\"other\"\n\"3530597\";\"Meksikurbo\";\"other\"\n\"3530597\";\"Meksyk\";\"other\"\n\"3530597\";\"Mexico\";\"other\"\n\"3530597\";\"Mexico D.F.\";\"other\"\n\"3530597\";\"Mexico DF\";\"other\"\n\"3530597\";\"Mexico Distrito Federal\";\"other\"\n\"3530597\";\"Mexico by\";\"other\"\n\"3530597\";\"Mexico-stad\";\"other\"\n\"3530597\";\"Mexicopolis\";\"other\"\n\"3530597\";\"Mexiko\";\"other\"\n\"3530597\";\"Mexiko Hiria\";\"other\"\n\"3530597\";\"Mexiko-Stadt\";\"other\"\n\"3530597\";\"Mexikoborg\";\"other\"\n\"3530597\";\"Mexíkóborg\";\"other\"\n\"3530597\";\"México\";\"other\"\n\"3530597\";\"México Distrito Federal\";\"other\"\n\"3530597\";\"Pole tou Mexikou\";\"other\"\n\"3530597\";\"Valle de Mexico\";\"other\"\n\"3530597\";\"Valle de México\";\"other\"\n\"3530597\";\"mdynt mksykw\";\"other\"\n\"3530597\";\"megsiko si\";\"other\"\n\"3530597\";\"mekishikoshiti\";\"other\"\n\"3530597\";\"meksiko siti\";\"other\"\n\"3530597\";\"meksikositi\";\"other\"\n\"3530597\";\"mkzykw\";\"other\"\n\"3530597\";\"mkzykwsyty\";\"other\"\n\"3530597\";\"mo xi ge cheng\";\"other\"\n\"3530597\";\"mqsyqw syty\";\"other\"\n\"3530597\";\"Πόλη του Μεξικού\";\"other\"\n\"3530597\";\"Мексико\";\"other\"\n\"3530597\";\"Мексико Сити\";\"other\"\n\"3530597\";\"Мехико\";\"other\"\n\"3530597\";\"Мехіко\";\"other\"\n\"3530597\";\"מקסיקו סיטי\";\"other\"\n\"3530597\";\"مدينة مكسيكو\";\"other\"\n\"3530597\";\"مکزیکو\";\"other\"\n\"3530597\";\"مکزیکوسیتی\";\"other\"\n\"3530597\";\"مېكسىكا شەھىرى\";\"other\"\n\"3530597\";\"मेक्सिको सिटी\";\"other\"\n\"3530597\";\"เม็กซิโกซิตี\";\"other\"\n\"3530597\";\"მეხიკო\";\"other\"\n\"3530597\";\"メキシコシティ\";\"other\"\n\"3530597\";\"墨西哥城\";\"other\"\n\"3530597\";\"멕시코 시\";\"other\"\n\"3530598\";\"Ciudad del Maíz\";\"main\"\n\"3530598\";\"Ciudad del Maiz\";\"ascii\"\n\"3530598\";\"General Magdaleno Cedillo\";\"other\"\n\"3530599\";\"Ciudad del Carmen\";\"main\"\n\"3530599\";\"Carmen\";\"other\"\n\"3530599\";\"Cd Carmen\";\"other\"\n\"3530599\";\"Cd del Carmen\";\"other\"\n\"3530599\";\"Cd. Carmen\";\"other\"\n\"3530599\";\"Cd. del Carmen\";\"other\"\n\"3530599\";\"S'judad-del'-Karmen\";\"other\"\n\"3530599\";\"Сьюдад-дель-Кармен\";\"other\"\n\"3530617\";\"Cintalapa de Figueroa\";\"main\"\n\"3530617\";\"Cintalapa\";\"other\"\n\"3530691\";\"Chunhuhub\";\"main\"\n\"3530691\";\"Chunhuhu\";\"other\"\n\"3530718\";\"Chumayel\";\"main\"\n\"3530749\";\"Chontalpa\";\"main\"\n\"3530749\";\"La Chontalpa\";\"other\"\n\"3530756\";\"Cholula\";\"main\"\n\"3530757\";\"Cholula\";\"main\"\n\"3530757\";\"Cholula de Riva dabia\";\"other\"\n\"3530757\";\"San Pedro Cholula\";\"other\"\n\"3530757\";\"Чолула\";\"other\"\n\"3530759\";\"Cholul\";\"main\"\n\"3530775\";\"Chocholá\";\"main\"\n\"3530775\";\"Chochola\";\"ascii\"\n\"3530778\";\"Chocamán\";\"main\"\n\"3530778\";\"Chocaman\";\"ascii\"\n\"3530834\";\"Chinampa de Gorostiza\";\"main\"\n\"3530834\";\"Chinampa\";\"other\"\n\"3530834\";\"Chinanpa de Gorostiza\";\"other\"\n\"3530834\";\"San Antonio\";\"other\"\n\"3530834\";\"San Antonio Chinanpa\";\"other\"\n\"3530836\";\"Chinameca\";\"main\"\n\"3530839\";\"China\";\"main\"\n\"3530840\";\"Chiná\";\"main\"\n\"3530840\";\"China\";\"ascii\"\n\"3530852\";\"Chimalpa\";\"main\"\n\"3530870\";\"Chilpancingo de los Bravos\";\"main\"\n\"3530870\";\"Chilpancingo\";\"other\"\n\"3530870\";\"Chilpancingo de los Bravo\";\"other\"\n\"3530870\";\"Ciudad Bravos\";\"other\"\n\"3530871\";\"Chilón\";\"main\"\n\"3530871\";\"Chilon\";\"ascii\"\n\"3530886\";\"Chilapa de Alvarez\";\"main\"\n\"3530886\";\"Chilapa\";\"other\"\n\"3530907\";\"Chignautla\";\"main\"\n\"3530908\";\"Chignahuapan\";\"main\"\n\"3530913\";\"Chietla\";\"main\"\n\"3530916\";\"Chicxulub\";\"main\"\n\"3530916\";\"Pueblo Chicxulub\";\"other\"\n\"3530926\";\"Chicontepec\";\"main\"\n\"3530926\";\"Chicontepec de Tejada\";\"other\"\n\"3530932\";\"Chiconcuac\";\"main\"\n\"3530932\";\"Chiconcuac de Juarez\";\"other\"\n\"3530932\";\"Chiconcuac de Juárez\";\"other\"\n\"3530932\";\"San Miguel Chiconcuac\";\"other\"\n\"3530932\";\"Suarez\";\"other\"\n\"3530932\";\"Suárez\";\"other\"\n\"3530935\";\"Chicomuselo\";\"main\"\n\"3530935\";\"Chicomucelo\";\"other\"\n\"3530937\";\"Chicoloapan de Juárez\";\"main\"\n\"3530937\";\"Chicoloapan de Juarez\";\"ascii\"\n\"3530937\";\"Chicoloapan\";\"other\"\n\"3530937\";\"San Vicente Chicoloapan\";\"other\"\n\"3530937\";\"San Vicente Chiloloapan\";\"other\"\n\"3530948\";\"Chichimilá\";\"main\"\n\"3530948\";\"Chichimila\";\"ascii\"\n\"3530955\";\"Chichihualco\";\"main\"\n\"3530978\";\"Chichén-Itzá\";\"main\"\n\"3530978\";\"Chichen-Itza\";\"ascii\"\n\"3530978\";\"Chichen Itza\";\"other\"\n\"3530978\";\"Chichen-Ica\";\"other\"\n\"3530978\";\"Чичен-Ица\";\"other\"\n\"3531006\";\"Chiautla de Tapia\";\"main\"\n\"3531006\";\"Chiautla\";\"other\"\n\"3531007\";\"Chiautla\";\"main\"\n\"3531007\";\"San Andres Chiautla\";\"other\"\n\"3531007\";\"San Andrés Chiautla\";\"other\"\n\"3531010\";\"Chiapilla\";\"main\"\n\"3531013\";\"Chiapa de Corzo\";\"main\"\n\"3531013\";\"Chiapa\";\"other\"\n\"3531013\";\"Chiapa de Corza\";\"other\"\n\"3531013\";\"Chiapas\";\"other\"\n\"3531023\";\"Chetumal\";\"main\"\n\"3531023\";\"Chetumal'\";\"other\"\n\"3531023\";\"Ciudad Chetumal\";\"other\"\n\"3531023\";\"Payo Obispo\";\"other\"\n\"3531023\";\"cheto~umaru\";\"other\"\n\"3531023\";\"Четумаль\";\"other\"\n\"3531023\";\"チェトゥマル\";\"other\"\n\"3531042\";\"Chemax\";\"main\"\n\"3531118\";\"Chapulhuacán\";\"main\"\n\"3531118\";\"Chapulhuacan\";\"ascii\"\n\"3531118\";\"Capulhuacan\";\"other\"\n\"3531168\";\"Chanal\";\"main\"\n\"3531168\";\"San Pedro Chanal\";\"other\"\n\"3531172\";\"Chamula\";\"main\"\n\"3531172\";\"Bohom\";\"other\"\n\"3531172\";\"Чамула\";\"other\"\n\"3531177\";\"Champotón\";\"main\"\n\"3531177\";\"Champoton\";\"ascii\"\n\"3531177\";\"Чампотон\";\"other\"\n\"3531200\";\"Chalco de Díaz Covarrubias\";\"main\"\n\"3531200\";\"Chalco de Diaz Covarrubias\";\"ascii\"\n\"3531200\";\"Chalco\";\"other\"\n\"3531221\";\"Chahuite\";\"main\"\n\"3531221\";\"Chahuites\";\"other\"\n\"3531258\";\"Chacaltianguis\";\"main\"\n\"3531258\";\"Tecuanapa\";\"other\"\n\"3531321\";\"Cerro Azul\";\"main\"\n\"3531362\";\"Cenotillo\";\"main\"\n\"3531368\";\"Celestún\";\"main\"\n\"3531368\";\"Celestun\";\"ascii\"\n\"3531391\";\"Cazones\";\"main\"\n\"3531391\";\"Cazones de Herrera\";\"other\"\n\"3531391\";\"Villa de Cazones\";\"other\"\n\"3531391\";\"Villa de Cazones de Herrera\";\"other\"\n\"3531398\";\"Caxhuacán\";\"main\"\n\"3531398\";\"Caxhuacan\";\"ascii\"\n\"3531406\";\"Caucel\";\"main\"\n\"3531416\";\"Catemaco\";\"main\"\n\"3531434\";\"Castillo de Teayo\";\"main\"\n\"3531556\";\"Carlos A. Carrillo\";\"main\"\n\"3531556\";\"San Cristobal\";\"other\"\n\"3531556\";\"San Cristóbal\";\"other\"\n\"3531571\";\"Cardonal\";\"main\"\n\"3531574\";\"Cárdenas\";\"main\"\n\"3531574\";\"Cardenas\";\"ascii\"\n\"3531574\";\"Kardenas\";\"other\"\n\"3531574\";\"Карденас\";\"other\"\n\"3531576\";\"Cárdenas\";\"main\"\n\"3531576\";\"Cardenas\";\"ascii\"\n\"3531576\";\"Kardenas\";\"other\"\n\"3531576\";\"Карденас\";\"other\"\n\"3531598\";\"Capulhuac\";\"main\"\n\"3531598\";\"Capulhuac de Mirafuentes\";\"other\"\n\"3531598\";\"Mirafuentes\";\"other\"\n\"3531632\";\"Cansahcab\";\"main\"\n\"3531673\";\"Cancún\";\"main\"\n\"3531673\";\"Cancun\";\"ascii\"\n\"3531673\";\"Ciudad Cancun\";\"other\"\n\"3531673\";\"Ciudad Cancún\";\"other\"\n\"3531673\";\"Kankun\";\"other\"\n\"3531673\";\"Kankunas\";\"other\"\n\"3531673\";\"kan kun\";\"other\"\n\"3531673\";\"kankun\";\"other\"\n\"3531673\";\"Канкун\";\"other\"\n\"3531673\";\"カンクン\";\"other\"\n\"3531673\";\"坎昆\";\"other\"\n\"3531674\";\"Cancuc\";\"main\"\n\"3531674\";\"Canuc\";\"other\"\n\"3531732\";\"Campeche\";\"main\"\n\"3531732\";\"Kampeche\";\"other\"\n\"3531732\";\"Кампече\";\"other\"\n\"3531764\";\"Camargo\";\"main\"\n\"3531782\";\"Caltenco\";\"main\"\n\"3531784\";\"Calpulalpan\";\"main\"\n\"3531784\";\"Calpulalpam\";\"other\"\n\"3531784\";\"Calpulapam\";\"other\"\n\"3531784\";\"Calpulápam\";\"other\"\n\"3531784\";\"Kal'pulal'pane\";\"other\"\n\"3531784\";\"San Antonio Calpulapam\";\"other\"\n\"3531784\";\"San Antonio Calpulápam\";\"other\"\n\"3531784\";\"Кальпулальпане\";\"other\"\n\"3531789\";\"Calnalí\";\"main\"\n\"3531789\";\"Calnali\";\"ascii\"\n\"3531790\";\"Calmeca\";\"main\"\n\"3531793\";\"Calkiní\";\"main\"\n\"3531793\";\"Calkini\";\"ascii\"\n\"3531793\";\"Kalkini\";\"other\"\n\"3531794\";\"Calixtlahuaca\";\"main\"\n\"3531798\";\"Calimaya de Díaz González\";\"main\"\n\"3531798\";\"Calimaya de Diaz Gonzalez\";\"ascii\"\n\"3531798\";\"Calimaya\";\"other\"\n\"3531798\";\"Calimaya Diaz Gonzalez\";\"other\"\n\"3531798\";\"Calimaya Díaz González\";\"other\"\n\"3531816\";\"Calderitas\";\"main\"\n\"3531816\";\"Calderas\";\"other\"\n\"3531863\";\"Cadereyta de Montes\";\"main\"\n\"3531863\";\"Cadereyta\";\"other\"\n\"3531865\";\"Cadereyta\";\"main\"\n\"3531875\";\"Cacaotepec\";\"main\"\n\"3531888\";\"Cacalosúchil\";\"main\"\n\"3531888\";\"Cacalosuchil\";\"ascii\"\n\"3531888\";\"Cacaloxuchil\";\"other\"\n\"3531888\";\"Cacaloxúchil\";\"other\"\n\"3531888\";\"Cacalxochitl\";\"other\"\n\"3531889\";\"Cacalomacán\";\"main\"\n\"3531889\";\"Cacalomacan\";\"ascii\"\n\"3531892\";\"Cacalchén\";\"main\"\n\"3531892\";\"Cacalchen\";\"ascii\"\n\"3531904\";\"Cacahoatán\";\"main\"\n\"3531904\";\"Cacahoatan\";\"ascii\"\n\"3531904\";\"Cacahuatan\";\"other\"\n\"3531904\";\"Cacahuatán\";\"other\"\n\"3531972\";\"Buenavista de Cuéllar\";\"main\"\n\"3531972\";\"Buenavista de Cuellar\";\"ascii\"\n\"3531972\";\"Buenavista\";\"other\"\n\"3532053\";\"Buenavista\";\"main\"\n\"3532089\";\"Buctzotz\";\"main\"\n\"3532089\";\"Buctzot\";\"other\"\n\"3532182\";\"Bochil\";\"main\"\n\"3532188\";\"Bocanegra\";\"main\"\n\"3532193\";\"Boca del Río\";\"main\"\n\"3532193\";\"Boca del Rio\";\"ascii\"\n\"3532197\";\"Boca del Monte\";\"main\"\n\"3532254\";\"Berriozábal\";\"main\"\n\"3532254\";\"Berriozabal\";\"ascii\"\n\"3532254\";\"Berriozaba\";\"other\"\n\"3532276\";\"Benito Juárez\";\"main\"\n\"3532276\";\"Benito Juarez\";\"ascii\"\n\"3532276\";\"Santa Cruz de Juarez\";\"other\"\n\"3532278\";\"Benito Juárez\";\"main\"\n\"3532278\";\"Benito Juarez\";\"ascii\"\n\"3532279\";\"Benito Juárez\";\"main\"\n\"3532279\";\"Benito Juarez\";\"ascii\"\n\"3532310\";\"Belén\";\"main\"\n\"3532310\";\"Belen\";\"ascii\"\n\"3532326\";\"Becal\";\"main\"\n\"3532414\";\"Banderilla\";\"main\"\n\"3532443\";\"Balancán de Domínguez\";\"main\"\n\"3532443\";\"Balancan de Dominguez\";\"ascii\"\n\"3532443\";\"Balancan\";\"other\"\n\"3532446\";\"Bajos del Ejido\";\"main\"\n\"3532465\";\"Bacalar\";\"main\"\n\"3532467\";\"Baca\";\"main\"\n\"3532490\";\"Azoyú\";\"main\"\n\"3532490\";\"Azoyu\";\"ascii\"\n\"3532497\";\"Azcapotzalco\";\"main\"\n\"3532497\";\"Atzapotzalco\";\"other\"\n\"3532497\";\"Atzcapotzalco\";\"other\"\n\"3532499\";\"Ayutla de los Libres\";\"main\"\n\"3532499\";\"Ayutla\";\"other\"\n\"3532506\";\"Ayutla\";\"main\"\n\"3532510\";\"Ayotzintepec\";\"main\"\n\"3532513\";\"Ayotusco\";\"main\"\n\"3532521\";\"Ayometitla\";\"main\"\n\"3532521\";\"Ayometla\";\"other\"\n\"3532526\";\"Ayapa\";\"main\"\n\"3532526\";\"Anapa\";\"other\"\n\"3532530\";\"Ayala\";\"main\"\n\"3532545\";\"Axochiapan\";\"main\"\n\"3532548\";\"Axapusco\";\"main\"\n\"3532560\";\"Atzitzintla\";\"main\"\n\"3532560\";\"Ataiziutla\";\"other\"\n\"3532560\";\"Atzintzintla\";\"other\"\n\"3532560\";\"Atzizintla\";\"other\"\n\"3532560\";\"Atziziutla\";\"other\"\n\"3532565\";\"Atzacán\";\"main\"\n\"3532565\";\"Atzacan\";\"ascii\"\n\"3532565\";\"Atacan\";\"other\"\n\"3532569\";\"Atoyatempan\";\"main\"\n\"3532569\";\"Atoyateinpan\";\"other\"\n\"3532569\";\"Atoyateipan\";\"other\"\n\"3532577\";\"Atotonilco el Grande\";\"main\"\n\"3532577\";\"Atotonilco\";\"other\"\n\"3532592\";\"Atlixco\";\"main\"\n\"3532592\";\"Atliksko\";\"other\"\n\"3532592\";\"Атликско\";\"other\"\n\"3532597\";\"Atliaca\";\"main\"\n\"3532597\";\"Atiaca\";\"other\"\n\"3532601\";\"Atlautla\";\"main\"\n\"3532601\";\"San Miguel Atlautla\";\"other\"\n\"3532602\";\"Atlatongo\";\"main\"\n\"3532603\";\"Atlatlahucan\";\"main\"\n\"3532603\";\"Atlatlahuacan\";\"other\"\n\"3532604\";\"Atlatlahuaca\";\"main\"\n\"3532604\";\"Atlatlahuca\";\"other\"\n\"3532604\";\"Atlatlauca\";\"other\"\n\"3532617\";\"Atlacomulco\";\"main\"\n\"3532617\";\"Atlacomulco de Fabela\";\"other\"\n\"3532617\";\"Atlakomul'ko\";\"other\"\n\"3532617\";\"Атлакомулько\";\"other\"\n\"3532624\";\"Ciudad López Mateos\";\"main\"\n\"3532624\";\"Ciudad Lopez Mateos\";\"ascii\"\n\"3532624\";\"Atizapan\";\"other\"\n\"3532624\";\"Atizapan de Zaragoza\";\"other\"\n\"3532624\";\"Atizapán de Zaragoza\";\"other\"\n\"3532624\";\"Lopez Mateos\";\"other\"\n\"3532624\";\"López Mateos\";\"other\"\n\"3532624\";\"S'judad-Lopes-Mateus\";\"other\"\n\"3532624\";\"Сьюдад-Лопес-Матеус\";\"other\"\n\"3532625\";\"Atizapán\";\"main\"\n\"3532625\";\"Atizapan\";\"ascii\"\n\"3532627\";\"Atitalaquia\";\"main\"\n\"3532634\";\"Atengo\";\"main\"\n\"3532636\";\"Atencingo\";\"main\"\n\"3532639\";\"Atempan\";\"main\"\n\"3532655\";\"Asunción Ocotlán\";\"main\"\n\"3532655\";\"Asuncion Ocotlan\";\"ascii\"\n\"3532655\";\"Asuncion\";\"other\"\n\"3532655\";\"La Asuncion Ocotlan\";\"other\"\n\"3532655\";\"La Asunción Ocotlán\";\"other\"\n\"3532655\";\"Ocotlan\";\"other\"\n\"3532656\";\"Asunción Nochixtlán\";\"main\"\n\"3532656\";\"Asuncion Nochixtlan\";\"ascii\"\n\"3532656\";\"Asuncion\";\"other\"\n\"3532656\";\"Asunción\";\"other\"\n\"3532656\";\"Nochistlan\";\"other\"\n\"3532656\";\"Nochixtlan\";\"other\"\n\"3532658\";\"Asunción Ixtaltepec\";\"main\"\n\"3532658\";\"Asuncion Ixtaltepec\";\"ascii\"\n\"3532658\";\"Asuncion\";\"other\"\n\"3532658\";\"Asunción\";\"other\"\n\"3532658\";\"Ixtaltepec\";\"other\"\n\"3532779\";\"Aquiles Serdán\";\"main\"\n\"3532779\";\"Aquiles Serdan\";\"ascii\"\n\"3532792\";\"Apizaco\";\"main\"\n\"3532802\";\"Apaxtla de Castrejón\";\"main\"\n\"3532802\";\"Apaxtla de Castrejon\";\"ascii\"\n\"3532802\";\"Apaxtla\";\"other\"\n\"3532803\";\"Apaxco de Ocampo\";\"main\"\n\"3532803\";\"Apaxco\";\"other\"\n\"3532808\";\"Apatlaco\";\"main\"\n\"3532813\";\"Apango\";\"main\"\n\"3532815\";\"Apan\";\"main\"\n\"3532815\";\"Apam\";\"other\"\n\"3532821\";\"Antón Lizardo\";\"main\"\n\"3532821\";\"Anton Lizardo\";\"ascii\"\n\"3532824\";\"Antiguo Morelos\";\"main\"\n\"3532852\";\"Ángel R. Cabada\";\"main\"\n\"3532852\";\"Angel R. Cabada\";\"ascii\"\n\"3532852\";\"Angel R. Cavada\";\"other\"\n\"3532852\";\"El Meson\";\"other\"\n\"3532852\";\"El Mesón\";\"other\"\n\"3532852\";\"Meson\";\"other\"\n\"3532852\";\"R. Cabada\";\"other\"\n\"3532856\";\"Ángel Albino Corzo\";\"main\"\n\"3532856\";\"Angel Albino Corzo\";\"ascii\"\n\"3532856\";\"Jaltenango\";\"other\"\n\"3532856\";\"Jaltenango de la Paz\";\"other\"\n\"3532856\";\"Santa Rosa Jaltenango\";\"other\"\n\"3532858\";\"Anenecuilco\";\"main\"\n\"3532870\";\"Anáhuac\";\"main\"\n\"3532870\";\"Anahuac\";\"ascii\"\n\"3532870\";\"El Humo\";\"other\"\n\"3532870\";\"Pueblo Viejo\";\"other\"\n\"3532878\";\"San Pedro Amuzgos\";\"main\"\n\"3532878\";\"Amusgos\";\"other\"\n\"3532881\";\"Amozoc de Mota\";\"main\"\n\"3532881\";\"Amozoc\";\"other\"\n\"3532895\";\"Ameyalco\";\"main\"\n\"3532899\";\"Amecameca de Juárez\";\"main\"\n\"3532899\";\"Amecameca de Juarez\";\"ascii\"\n\"3532899\";\"Amecameca\";\"other\"\n\"3532903\";\"Amayuca\";\"main\"\n\"3532909\";\"Amatlán de los Reyes\";\"main\"\n\"3532909\";\"Amatlan de los Reyes\";\"ascii\"\n\"3532909\";\"Amatlan\";\"other\"\n\"3532909\";\"Amatlán\";\"other\"\n\"3532925\";\"Amatenango del Valle\";\"main\"\n\"3532925\";\"Amatenango\";\"other\"\n\"3532930\";\"Amatán\";\"main\"\n\"3532930\";\"Amatan\";\"ascii\"\n\"3532951\";\"Amacuzac\";\"main\"\n\"3532958\";\"Álvaro Obregón\";\"main\"\n\"3532958\";\"Alvaro Obregon\";\"ascii\"\n\"3532958\";\"Colonia Alvaro Obregon\";\"other\"\n\"3532958\";\"Colonia Alvaro Obregón\";\"other\"\n\"3532964\";\"Alvarado\";\"main\"\n\"3532964\";\"Al'varado\";\"other\"\n\"3532964\";\"Heroica Alvarado\";\"other\"\n\"3532964\";\"Альварадо\";\"other\"\n\"3532969\";\"Altotonga\";\"main\"\n\"3532975\";\"Alto Lucero\";\"main\"\n\"3532975\";\"Alto del Lucero\";\"other\"\n\"3532989\";\"Altepexi\";\"main\"\n\"3532996\";\"Altamirano\";\"main\"\n\"3532996\";\"Enriquez\";\"other\"\n\"3532996\";\"Enríquez\";\"other\"\n\"3532996\";\"San Carlos\";\"other\"\n\"3532996\";\"Villa Enriquez\";\"other\"\n\"3532996\";\"Villa Enríquez\";\"other\"\n\"3533005\";\"Altamira\";\"main\"\n\"3533005\";\"Al'tamira\";\"other\"\n\"3533005\";\"Альтамира\";\"other\"\n\"3533020\";\"Alpuyeca\";\"main\"\n\"3533022\";\"Alpoyeca\";\"main\"\n\"3533036\";\"Almoloya\";\"main\"\n\"3533037\";\"Almoloya del Río\";\"main\"\n\"3533037\";\"Almoloya del Rio\";\"ascii\"\n\"3533037\";\"Almoloya\";\"other\"\n\"3533037\";\"Almoloyita\";\"other\"\n\"3533047\";\"Almaya\";\"main\"\n\"3533056\";\"Allende\";\"main\"\n\"3533058\";\"Aljojuca\";\"main\"\n\"3533067\";\"Alfredo M. Terrazas\";\"main\"\n\"3533067\";\"Axtla\";\"other\"\n\"3533079\";\"Aldama\";\"main\"\n\"3533107\";\"Álamo\";\"main\"\n\"3533107\";\"Alamo\";\"ascii\"\n\"3533117\";\"Akil\";\"main\"\n\"3533126\";\"Ajalpan\";\"main\"\n\"3533143\";\"Ahuehuetzingo\";\"main\"\n\"3533143\";\"Ahuehuecingo\";\"other\"\n\"3533268\";\"Agua Dulce\";\"main\"\n\"3533269\";\"Agua Dulce\";\"main\"\n\"3533376\";\"Acultzingo\";\"main\"\n\"3533389\";\"Actopan\";\"main\"\n\"3533390\";\"Actopan\";\"main\"\n\"3533390\";\"Actopam\";\"other\"\n\"3533390\";\"Actópam\";\"other\"\n\"3533393\";\"Actlzayanca de Hidalgo\";\"main\"\n\"3533393\";\"Actlzayanca\";\"other\"\n\"3533393\";\"Altzayanca\";\"other\"\n\"3533393\";\"Alzayacan\";\"other\"\n\"3533393\";\"Alzayacán\";\"other\"\n\"3533393\";\"Alzayanca\";\"other\"\n\"3533422\";\"Acazulco\";\"main\"\n\"3533426\";\"Acayucan\";\"main\"\n\"3533428\";\"Acayuca\";\"main\"\n\"3533432\";\"Acaxochitlán\";\"main\"\n\"3533432\";\"Acaxochitlan\";\"ascii\"\n\"3533433\";\"Acatzingo de Hidalgo\";\"main\"\n\"3533433\";\"Acatzingo\";\"other\"\n\"3533439\";\"Acatlán de Pérez Figueroa\";\"main\"\n\"3533439\";\"Acatlan de Perez Figueroa\";\"ascii\"\n\"3533439\";\"Acatlan\";\"other\"\n\"3533439\";\"San Pedro\";\"other\"\n\"3533440\";\"Acatlán de Osorio\";\"main\"\n\"3533440\";\"Acatlan de Osorio\";\"ascii\"\n\"3533440\";\"Acatlan\";\"other\"\n\"3533440\";\"Acatlán\";\"other\"\n\"3533462\";\"Acapulco de Juárez\";\"main\"\n\"3533462\";\"Acapulco de Juarez\";\"ascii\"\n\"3533462\";\"Acapulco\";\"other\"\n\"3533462\";\"Akapul'ko\";\"other\"\n\"3533462\";\"Akapulko\";\"other\"\n\"3533462\";\"a ka pu er ke\";\"other\"\n\"3533462\";\"akapulko\";\"other\"\n\"3533462\";\"akapuruko\";\"other\"\n\"3533462\";\"Акапулко\";\"other\"\n\"3533462\";\"Акапулько\";\"other\"\n\"3533462\";\"アカプルコ\";\"other\"\n\"3533462\";\"阿卡普尔科\";\"other\"\n\"3533462\";\"아카풀코\";\"other\"\n\"3533466\";\"Acapetagua\";\"main\"\n\"3533466\";\"Acapetahua\";\"other\"\n\"3533472\";\"Acancéh\";\"main\"\n\"3533472\";\"Acanceh\";\"ascii\"\n\"3533473\";\"Acamixtla\";\"main\"\n\"3533473\";\"Acamixtlan\";\"other\"\n\"3533475\";\"Acambay\";\"main\"\n\"3533475\";\"San Miguel\";\"other\"\n\"3533475\";\"San Miguel Acambay\";\"other\"\n\"3533483\";\"Acala\";\"main\"\n\"3533486\";\"Acajete\";\"main\"\n\"3533490\";\"San Antonio Acahualco\";\"main\"\n\"3533490\";\"Acahualco\";\"other\"\n\"3533491\";\"Acacoyagua\";\"main\"\n\"3533491\";\"Acacoyahua\";\"other\"\n\"3533505\";\"Abasolo\";\"main\"\n\"3533505\";\"Santillana\";\"other\"\n\"3533505\";\"Абасоло\";\"other\"\n\"3761012\";\"Ajacuba\";\"main\"\n\"3761194\";\"San Mateo Tezoquipan\";\"main\"\n\"3761664\";\"Higuerón\";\"main\"\n\"3761664\";\"Higueron\";\"ascii\"\n\"3762210\";\"Santiago Tlacotepec\";\"main\"\n\"3762770\";\"San Antonio de la Cal\";\"main\"\n\"3762771\";\"San Agustin de las Juntas\";\"main\"\n\"3792044\";\"Hidalgo\";\"main\"\n\"3800500\";\"Santos Reyes Nopala\";\"main\"\n\"3800500\";\"Nopala\";\"other\"\n\"3801045\";\"Tamazulapan del Progreso\";\"main\"\n\"3801045\";\"Tamasulapa\";\"other\"\n\"3801045\";\"Tamazulapam\";\"other\"\n\"3801045\";\"Tamazulapam del Progreso\";\"other\"\n\"3801045\";\"Tamazulapan\";\"other\"\n\"3801045\";\"Tamazulapán\";\"other\"\n\"3801045\";\"Tamazulápam del Progreso\";\"other\"\n\"3801045\";\"Villa de Tamazulapan\";\"other\"\n\"3801145\";\"Teotitlán de Flores Magón\";\"main\"\n\"3801145\";\"Teotitlan de Flores Magon\";\"ascii\"\n\"3801145\";\"Teotitlan\";\"other\"\n\"3801145\";\"Teotitlan del Camino\";\"other\"\n\"3801145\";\"Teotitlán del Camino\";\"other\"\n\"3801225\";\"Tezonapa\";\"main\"\n\"3801225\";\"Tetzonapa\";\"other\"\n\"3801262\";\"Isla Soyaltepec\";\"main\"\n\"3801262\";\"San Miguel\";\"other\"\n\"3801262\";\"San Miguel Soyaltepec\";\"other\"\n\"3801262\";\"Soyaltepec\";\"other\"\n\"3801596\";\"Guadalupe Etla\";\"main\"\n\"3801596\";\"Etla\";\"other\"\n\"3801596\";\"Nazareno\";\"other\"\n\"3801596\";\"Nazareno Etla\";\"other\"\n\"3801596\";\"Soledad\";\"other\"\n\"3801635\";\"Santa María Coyotepec\";\"main\"\n\"3801635\";\"Santa Maria Coyotepec\";\"ascii\"\n\"3801635\";\"Coyotepec\";\"other\"\n\"3801635\";\"San Bartolo\";\"other\"\n\"3801635\";\"San Bartolo Coyotepec\";\"other\"\n\"3802196\";\"Villa La Venta\";\"main\"\n\"3802287\";\"El Tular\";\"main\"\n\"3802710\";\"Parrilla\";\"main\"\n\"3802710\";\"Villa Parrilla\";\"other\"\n\"3802739\";\"Río de Teapa\";\"main\"\n\"3802739\";\"Rio de Teapa\";\"ascii\"\n\"3803064\";\"Jalapa\";\"main\"\n\"3803064\";\"Khalapa\";\"other\"\n\"3803064\";\"Халапа\";\"other\"\n\"3815299\";\"Tequixquitla\";\"main\"\n\"3815299\";\"El Carmen\";\"other\"\n\"3815324\";\"Huamantla\";\"main\"\n\"3815324\";\"Heroica Huamantla\";\"other\"\n\"3815324\";\"Huamantla de Juarez\";\"other\"\n\"3815324\";\"Huamantla de Juárez\";\"other\"\n\"3815324\";\"San Luis\";\"other\"\n\"3815324\";\"Uamantla\";\"other\"\n\"3815324\";\"Уамантла\";\"other\"\n\"3815326\";\"Ixtenco\";\"main\"\n\"3815329\";\"Zitlaltepec\";\"main\"\n\"3815329\";\"San Pablo\";\"other\"\n\"3815329\";\"San Pablo Zitlaltepec\";\"other\"\n\"3815329\";\"Zitlaltepetl\";\"other\"\n\"3815359\";\"Tetlanohcán\";\"main\"\n\"3815359\";\"Tetlanohcan\";\"ascii\"\n\"3815359\";\"San Francisco Tetlanohca\";\"other\"\n\"3815359\";\"Tetlanohca\";\"other\"\n\"3815359\";\"Tetlanolican\";\"other\"\n\"3815362\";\"Mazatecochco\";\"main\"\n\"3815363\";\"Xicohtzinco\";\"main\"\n\"3815363\";\"Santo Toribio Xicohtzingo\";\"other\"\n\"3815363\";\"Xicohtzingo\";\"other\"\n\"3815363\";\"Xicotzingo\";\"other\"\n\"3815375\";\"Tlaltelulco\";\"main\"\n\"3815375\";\"La Magdalena Tlaltelulco\";\"other\"\n\"3815375\";\"Magdalena Tlaltelulco\";\"other\"\n\"3815375\";\"Tlaltelolco\";\"other\"\n\"3815389\";\"Tepeyanco\";\"main\"\n\"3815389\";\"San Francisco Tepeyanco\";\"other\"\n\"3815392\";\"Zacatelco\";\"main\"\n\"3815392\";\"Santa Ines Zacatelco\";\"other\"\n\"3815392\";\"Santa Inés Zacatelco\";\"other\"\n\"3815405\";\"Teacalco\";\"main\"\n\"3815415\";\"Tlaxcala\";\"main\"\n\"3815415\";\"Tlaskala\";\"other\"\n\"3815415\";\"Tlaxcala de Xicohtencatl\";\"other\"\n\"3815415\";\"Tlaxcala de Xicohténcatl\";\"other\"\n\"3815415\";\"Tlaxcala de Xicotencatl\";\"other\"\n\"3815415\";\"Tlaxcala de Xicoténcatl\";\"other\"\n\"3815415\";\"Тласкала\";\"other\"\n\"3815419\";\"Totolac\";\"main\"\n\"3815419\";\"San Juan Totolac\";\"other\"\n\"3815447\";\"Papalotla\";\"main\"\n\"3815447\";\"San Fransico Papalotla\";\"other\"\n\"3815451\";\"Tenancingo\";\"main\"\n\"3815451\";\"San Miguel Tenancingo\";\"other\"\n\"3815453\";\"Vicente Guerrero\";\"main\"\n\"3815453\";\"San Pablo del Monte\";\"other\"\n\"3815453\";\"Villa Vicente Guerrero\";\"other\"\n\"3815459\";\"Texcalac\";\"main\"\n\"3815459\";\"Guadalupe\";\"other\"\n\"3815479\";\"Pueblo Juárez\";\"main\"\n\"3815479\";\"Pueblo Juarez\";\"ascii\"\n\"3815479\";\"Juarez\";\"other\"\n\"3815479\";\"Juárez\";\"other\"\n\"3815525\";\"Catazajá\";\"main\"\n\"3815525\";\"Catazaja\";\"ascii\"\n\"3815723\";\"Pueblo Nuevo Sitalá\";\"main\"\n\"3815723\";\"Pueblo Nuevo Sitala\";\"ascii\"\n\"3816362\";\"Benemérito de las Américas\";\"main\"\n\"3816362\";\"Benemerito de las Americas\";\"ascii\"\n\"3816721\";\"Tonalá\";\"main\"\n\"3816721\";\"Tonala\";\"ascii\"\n\"3816739\";\"Arriaga\";\"main\"\n\"3817354\";\"Pilcaya\";\"main\"\n\"3817584\";\"Cerro La Calera\";\"main\"\n\"3817731\";\"Tezoyuca\";\"main\"\n\"3817745\";\"Acolman\";\"main\"\n\"3818786\";\"Guadalupe Victoria\";\"main\"\n\"3818819\";\"Chapuco\";\"main\"\n\"3818819\";\"Chapulco\";\"other\"\n\"3818846\";\"Actipan\";\"main\"\n\"3818912\";\"Raboso\";\"main\"\n\"3818912\";\"El de Raboso\";\"other\"\n\"3818912\";\"Rabosa\";\"other\"\n\"3818912\";\"San Juan Raboso\";\"other\"\n\"3818938\";\"Huehuetlán El Chico\";\"main\"\n\"3818938\";\"Huehuetlan El Chico\";\"ascii\"\n\"3818940\";\"Tlancualpican\";\"main\"\n\"3819040\";\"Caipan\";\"main\"\n\"3819040\";\"Calipa\";\"other\"\n\"3819040\";\"Calipan\";\"other\"\n\"3819050\";\"Jolalpan\";\"main\"\n\"3822029\";\"Marquelia\";\"main\"\n\"3822167\";\"San Luis Acatlán\";\"main\"\n\"3822167\";\"San Luis Acatlan\";\"ascii\"\n\"3822702\";\"Kantunilkin\";\"main\"\n\"3822723\";\"Alfredo V. Bonfil\";\"main\"\n\"3822745\";\"Leona Vicario\";\"main\"\n\"3823818\";\"Paraje Nuevo\";\"main\"\n\"3824081\";\"Coacotla\";\"main\"\n\"3824674\";\"Mecatlán\";\"main\"\n\"3824674\";\"Mecatlan\";\"ascii\"\n\"3825174\";\"Juan Rodríguez Clara\";\"main\"\n\"3825174\";\"Juan Rodriguez Clara\";\"ascii\"\n\"3825948\";\"La Llave\";\"main\"\n\"3827000\";\"San Agustín Mextepec\";\"main\"\n\"3827000\";\"San Agustin Mextepec\";\"ascii\"\n\"3827022\";\"Santiago Citendejé\";\"main\"\n\"3827022\";\"Santiago Citendeje\";\"ascii\"\n\"3827030\";\"San Lorenzo Tlacotepec\";\"main\"\n\"3827038\";\"San Antonio Enchisi\";\"main\"\n\"3827219\";\"Enthavi\";\"main\"\n\"3827229\";\"San Pedro de Abajo\";\"main\"\n\"3827252\";\"Yachihuacaltepec\";\"main\"\n\"3827254\";\"San Mateo Otzacatipan\";\"main\"\n\"3827256\";\"San María Totoltepec\";\"main\"\n\"3827256\";\"San Maria Totoltepec\";\"ascii\"\n\"3827260\";\"San Antonio Buenavista\";\"main\"\n\"3827267\";\"San Pedro Tultepec\";\"main\"\n\"3827273\";\"San Bartolomé Tlaltelulco\";\"main\"\n\"3827273\";\"San Bartolome Tlaltelulco\";\"ascii\"\n\"3827274\";\"San Juan Tilapa\";\"main\"\n\"3827278\";\"San Pedro Tlaltizapan\";\"main\"\n\"3827283\";\"San Andrés Ocotlán\";\"main\"\n\"3827283\";\"San Andres Ocotlan\";\"ascii\"\n\"3827299\";\"San Pedro Zictepec\";\"main\"\n\"3827304\";\"Santa María Jajalpa\";\"main\"\n\"3827304\";\"Santa Maria Jajalpa\";\"ascii\"\n\"3827306\";\"San Antonio La Isla\";\"main\"\n\"3827306\";\"La Isla\";\"other\"\n\"3827335\";\"Santiago Tilapa\";\"main\"\n\"3827341\";\"Tres Marías\";\"main\"\n\"3827341\";\"Tres Marias\";\"ascii\"\n\"3827368\";\"San Mateo Atarasquillo\";\"main\"\n\"3827406\";\"Benito Juarez\";\"main\"\n\"3827407\";\"Venustiano Carranza\";\"main\"\n\"3827408\";\"Miguel Hidalgo\";\"main\"\n\"3827409\";\"Cuauhtémoc\";\"main\"\n\"3827409\";\"Cuauhtemoc\";\"ascii\"\n\"3827414\";\"Huixquilucan\";\"main\"\n\"3827416\";\"Zacamulpa\";\"main\"\n\"3827416\";\"San Jacinto\";\"other\"\n\"3827418\";\"San Bartolomé Coatepec\";\"main\"\n\"3827418\";\"San Bartolome Coatepec\";\"ascii\"\n\"3827476\";\"San José el Vidrio\";\"main\"\n\"3827476\";\"San Jose el Vidrio\";\"ascii\"\n\"3827537\";\"San Miguel Vindho\";\"main\"\n\"3827566\";\"San Pedro Xalpa\";\"main\"\n\"3827586\";\"Melchor Ocampo\";\"main\"\n\"3827588\";\"Huilango\";\"main\"\n\"3827596\";\"Santiago Teyahualco\";\"main\"\n\"3827596\";\"Santiago Atocan\";\"other\"\n\"3827597\";\"Santa María Tonatitla\";\"main\"\n\"3827597\";\"Santa Maria Tonatitla\";\"ascii\"\n\"3827597\";\"Santa Maria Tonanitla\";\"other\"\n\"3827597\";\"Santa María Tonanitla\";\"other\"\n\"3827600\";\"Santo Tomas Chiconautla\";\"main\"\n\"3970558\";\"Río Muerto\";\"main\"\n\"3970558\";\"Rio Muerto\";\"ascii\"\n\"3970634\";\"Vicam\";\"main\"\n\"3972429\";\"General Pánfilo Natera\";\"main\"\n\"3972429\";\"General Panfilo Natera\";\"ascii\"\n\"3972702\";\"General Enrique Estrada\";\"main\"\n\"3973756\";\"Villa Juarez\";\"main\"\n\"3974149\";\"Los Zacatones\";\"main\"\n\"3974329\";\"Dulce Grande\";\"main\"\n\"3974771\";\"Praxédis Guerrero\";\"main\"\n\"3974771\";\"Praxedis Guerrero\";\"ascii\"\n\"3976161\";\"Adolfo López Mateos\";\"main\"\n\"3976161\";\"Adolfo Lopez Mateos\";\"ascii\"\n\"3976232\";\"Isla del Bosque\";\"main\"\n\"3976324\";\"Concordia\";\"main\"\n\"3976775\";\"Gabriel Leyva Solano\";\"main\"\n\"3976999\";\"Cihuatlán\";\"main\"\n\"3976999\";\"Cihuatlan\";\"ascii\"\n\"3977811\";\"Minas de Barroterán\";\"main\"\n\"3977811\";\"Minas de Barroteran\";\"ascii\"\n\"3979216\";\"Camalú\";\"main\"\n\"3979216\";\"Camalu\";\"ascii\"\n\"3979430\";\"Primo Tapia\";\"main\"\n\"3979439\";\"Progreso\";\"main\"\n\"3979494\";\"Estación Coahuila\";\"main\"\n\"3979494\";\"Estacion Coahuila\";\"ascii\"\n\"3979497\";\"Alberto Oviedo Mota\";\"main\"\n\"3979497\";\"Doctor Alberto Oviedo Mota\";\"other\"\n\"3979505\";\"Guadalupe Victoria\";\"main\"\n\"3979510\";\"Delta\";\"main\"\n\"3979647\";\"Zirándaro\";\"main\"\n\"3979647\";\"Zirandaro\";\"ascii\"\n\"3979647\";\"Zirandara\";\"other\"\n\"3979665\";\"Zinapécuaro\";\"main\"\n\"3979665\";\"Zinapecuaro\";\"ascii\"\n\"3979665\";\"Zinapecuaro de Figueroa\";\"other\"\n\"3979665\";\"Zinapécuaro de Figueroa\";\"other\"\n\"3979673\";\"Zihuatanejo\";\"main\"\n\"3979673\";\"Ixtapa Zihuatanejo\";\"other\"\n\"3979706\";\"Zaragoza\";\"main\"\n\"3979714\";\"Zaragoza\";\"main\"\n\"3979717\";\"Zapotlanejo\";\"main\"\n\"3979727\";\"Zapotiltic\";\"main\"\n\"3979755\";\"Zapote\";\"main\"\n\"3979755\";\"El Zapote\";\"other\"\n\"3979770\";\"Zapopan\";\"main\"\n\"3979802\";\"Zamora de Hidalgo\";\"main\"\n\"3979802\";\"Samora-de-Idal'go\";\"other\"\n\"3979802\";\"Zamora\";\"other\"\n\"3979802\";\"Самора-де-Идальго\";\"other\"\n\"3979819\";\"Zacualpan\";\"main\"\n\"3979819\";\"Zacoalpan\";\"other\"\n\"3979819\";\"Zacoalpán\";\"other\"\n\"3979819\";\"Zacualpa\";\"other\"\n\"3979819\";\"Zacualpam\";\"other\"\n\"3979821\";\"Zacualpan\";\"main\"\n\"3979821\";\"Zacualpa\";\"other\"\n\"3979822\";\"Zacoalco de Torres\";\"main\"\n\"3979822\";\"Zacoalco\";\"other\"\n\"3979822\";\"Zacoalco de Torre\";\"other\"\n\"3979844\";\"Zacatecas\";\"main\"\n\"3979844\";\"Sakatekas\";\"other\"\n\"3979844\";\"sakatekasu\";\"other\"\n\"3979844\";\"Сакатекас\";\"other\"\n\"3979844\";\"サカテカス\";\"other\"\n\"3979846\";\"Zacapú\";\"main\"\n\"3979846\";\"Zacapu\";\"ascii\"\n\"3979846\";\"Sakapu\";\"other\"\n\"3979846\";\"Zacapu de Mier\";\"other\"\n\"3979846\";\"Zacapú de Mier\";\"other\"\n\"3979846\";\"Сакапу\";\"other\"\n\"3979855\";\"Yuriria\";\"main\"\n\"3979855\";\"Villa Yuriria\";\"other\"\n\"3979856\";\"Yurécuaro\";\"main\"\n\"3979856\";\"Yurecuaro\";\"ascii\"\n\"3979923\";\"Yerbabuena\";\"main\"\n\"3979962\";\"Yavaros\";\"main\"\n\"3979962\";\"Yabaros\";\"other\"\n\"3979982\";\"Yahualica\";\"main\"\n\"3979982\";\"Yahualica de Gonzalez Gallo\";\"other\"\n\"3979982\";\"Yahualica de González Gallo\";\"other\"\n\"3979983\";\"Yago\";\"main\"\n\"3980037\";\"Vistahermosa de Negrete\";\"main\"\n\"3980037\";\"Vista Hermosa\";\"other\"\n\"3980123\";\"Villa Union\";\"main\"\n\"3980125\";\"Villa Unión\";\"main\"\n\"3980125\";\"Villa Union\";\"ascii\"\n\"3980135\";\"Villa Ocampo\";\"main\"\n\"3980140\";\"Villanueva\";\"main\"\n\"3980149\";\"Villamar\";\"main\"\n\"3980149\";\"Guarachita\";\"other\"\n\"3980152\";\"Villa Madero\";\"main\"\n\"3980161\";\"Villa Juárez\";\"main\"\n\"3980161\";\"Villa Juarez\";\"ascii\"\n\"3980167\";\"Villa Hidalgo\";\"main\"\n\"3980167\";\"Santa Rita\";\"other\"\n\"3980168\";\"Villa Hidalgo\";\"main\"\n\"3980169\";\"Villa Hidalgo\";\"main\"\n\"3980169\";\"Paso de Sotos\";\"other\"\n\"3980169\";\"Raso de Sotos\";\"other\"\n\"3980172\";\"Villa Guerrero\";\"main\"\n\"3980174\";\"Villagrán\";\"main\"\n\"3980174\";\"Villagran\";\"ascii\"\n\"3980174\";\"El Guaje\";\"other\"\n\"3980174\";\"Vil'jagran\";\"other\"\n\"3980174\";\"Вильягран\";\"other\"\n\"3980175\";\"Villa González Ortega\";\"main\"\n\"3980175\";\"Villa Gonzalez Ortega\";\"ascii\"\n\"3980175\";\"Carro\";\"other\"\n\"3980175\";\"El Carro\";\"other\"\n\"3980177\";\"Villa García\";\"main\"\n\"3980177\";\"Villa Garcia\";\"ascii\"\n\"3980180\";\"Villa Frontera\";\"main\"\n\"3980180\";\"Frontera\";\"other\"\n\"3980180\";\"Villa-Frontera\";\"other\"\n\"3980180\";\"Вилла-Фронтера\";\"other\"\n\"3980184\";\"Villa Escalante\";\"main\"\n\"3980184\";\"Santa Clara de Portugal\";\"other\"\n\"3980186\";\"Villa de Reyes\";\"main\"\n\"3980186\";\"Reyes\";\"other\"\n\"3980186\";\"Villa Reyes\";\"other\"\n\"3980190\";\"Villa de García\";\"main\"\n\"3980190\";\"Villa de Garcia\";\"ascii\"\n\"3980190\";\"Garcia\";\"other\"\n\"3980190\";\"Vil'ja-de-Garsia\";\"other\"\n\"3980190\";\"Вилья-де-Гарсиа\";\"other\"\n\"3980192\";\"Villa de Cos\";\"main\"\n\"3980194\";\"Villa de Alvarez\";\"main\"\n\"3980194\";\"Vil'ja-de-Al'vares\";\"other\"\n\"3980194\";\"Вилья-де-Альварес\";\"other\"\n\"3980198\";\"Villa Corona\";\"main\"\n\"3980198\";\"Tizapanito\";\"other\"\n\"3980201\";\"Villachuato\";\"main\"\n\"3980207\";\"Villa Ahumada\";\"main\"\n\"3980207\";\"Ahumada\";\"other\"\n\"3980207\";\"Gonzalez\";\"other\"\n\"3980230\";\"Viesca\";\"main\"\n\"3980387\";\"Venustiano Carranza\";\"main\"\n\"3980390\";\"Venustiano Carranza\";\"main\"\n\"3980390\";\"San Pedro Caro\";\"other\"\n\"3980580\";\"Valtierrilla\";\"main\"\n\"3980580\";\"Andres Delgado\";\"other\"\n\"3980580\";\"Andrés Delgado\";\"other\"\n\"3980580\";\"Pueblo Andres Delgado\";\"other\"\n\"3980580\";\"Pueblo Andrés Delgado\";\"other\"\n\"3980586\";\"Valparaíso\";\"main\"\n\"3980586\";\"Valparaiso\";\"ascii\"\n\"3980605\";\"Valle de Santiago\";\"main\"\n\"3980605\";\"Ciudad Valle de Santiago\";\"other\"\n\"3980605\";\"Val'e-de-Sant'jago\";\"other\"\n\"3980605\";\"Валье-де-Сантьяго\";\"other\"\n\"3980614\";\"Valle de Juárez\";\"main\"\n\"3980614\";\"Valle de Juarez\";\"ascii\"\n\"3980617\";\"Valle de Guadalupe\";\"main\"\n\"3980621\";\"Valle de Bravo\";\"main\"\n\"3980621\";\"Val'e-de-Bravo\";\"other\"\n\"3980621\";\"Валье-де-Браво\";\"other\"\n\"3980622\";\"Valle de Banderas\";\"main\"\n\"3980627\";\"Valle de Allende\";\"main\"\n\"3980627\";\"Allende\";\"other\"\n\"3980627\";\"Villa de Allende\";\"other\"\n\"3980683\";\"Valentín Gómez Farías\";\"main\"\n\"3980683\";\"Valentin Gomez Farias\";\"ascii\"\n\"3980756\";\"Usmajac\";\"main\"\n\"3980760\";\"Uruapan del Progreso\";\"main\"\n\"3980760\";\"Uruapan\";\"other\"\n\"3980777\";\"Uriangato\";\"main\"\n\"3980777\";\"Puriangato\";\"other\"\n\"3980782\";\"Ures\";\"main\"\n\"3980798\";\"Unión de Tula\";\"main\"\n\"3980798\";\"Union de Tula\";\"ascii\"\n\"3980799\";\"Unión de San Antonio\";\"main\"\n\"3980799\";\"Union de San Antonio\";\"ascii\"\n\"3980828\";\"Tzintzuntzán\";\"main\"\n\"3980828\";\"Tzintzuntzan\";\"ascii\"\n\"3980843\";\"Tuxpan\";\"main\"\n\"3980844\";\"Tuxpan\";\"main\"\n\"3981069\";\"Tres Palos\";\"main\"\n\"3981145\";\"Trancoso\";\"main\"\n\"3981165\";\"Tototlán\";\"main\"\n\"3981165\";\"Tototlan\";\"ascii\"\n\"3981254\";\"Torreón\";\"main\"\n\"3981254\";\"Torreon\";\"ascii\"\n\"3981254\";\"toreon\";\"other\"\n\"3981254\";\"Торреон\";\"other\"\n\"3981254\";\"トレオン\";\"other\"\n\"3981345\";\"Topolobampo\";\"main\"\n\"3981362\";\"Tonila\";\"main\"\n\"3981365\";\"Tonaya\";\"main\"\n\"3981369\";\"Tonalá\";\"main\"\n\"3981369\";\"Tonala\";\"ascii\"\n\"3981369\";\"Тонала\";\"other\"\n\"3981391\";\"Tomatlán\";\"main\"\n\"3981391\";\"Tomatlan\";\"ascii\"\n\"3981432\";\"Todos Santos\";\"main\"\n\"3981455\";\"Tlazazalca\";\"main\"\n\"3981461\";\"Tlaquepaque\";\"main\"\n\"3981461\";\"San Pedro Tlaquepaque\";\"other\"\n\"3981462\";\"Tlapehuala\";\"main\"\n\"3981462\";\"Tlalpehuala\";\"other\"\n\"3981464\";\"Tlalpujahua de Rayón\";\"main\"\n\"3981464\";\"Tlalpujahua de Rayon\";\"ascii\"\n\"3981464\";\"Tlalpujahua\";\"other\"\n\"3981466\";\"Tlalchapa\";\"main\"\n\"3981466\";\"Talchapa\";\"other\"\n\"3981467\";\"Tlajomulco de Zúñiga\";\"main\"\n\"3981467\";\"Tlajomulco de Zuniga\";\"ascii\"\n\"3981467\";\"Tlajomulco\";\"other\"\n\"3981469\";\"Tlahualilo de Zaragoza\";\"main\"\n\"3981469\";\"Tlahualilo\";\"other\"\n\"3981469\";\"Zaragoza\";\"other\"\n\"3981483\";\"Tlacote el Bajo\";\"main\"\n\"3981483\";\"Tlacote Bajo\";\"other\"\n\"3981491\";\"Tizapán el Alto\";\"main\"\n\"3981491\";\"Tizapan el Alto\";\"ascii\"\n\"3981491\";\"Tizapan\";\"other\"\n\"3981505\";\"Tiquicheo\";\"main\"\n\"3981516\";\"Tinguindín\";\"main\"\n\"3981516\";\"Tinguindin\";\"ascii\"\n\"3981516\";\"Tinguindin de Argandar\";\"other\"\n\"3981516\";\"Tingüindín de Argándar\";\"other\"\n\"3981517\";\"Tingambato\";\"main\"\n\"3981609\";\"Tijuana\";\"main\"\n\"3981609\";\"Tia Juana\";\"other\"\n\"3981609\";\"Tihuana\";\"other\"\n\"3981609\";\"Tikhuana\";\"other\"\n\"3981609\";\"Tíjúana\";\"other\"\n\"3981609\";\"Zaragoza\";\"other\"\n\"3981609\";\"tifuana\";\"other\"\n\"3981609\";\"tihuana\";\"other\"\n\"3981609\";\"Тихуана\";\"other\"\n\"3981609\";\"Тіхуана\";\"other\"\n\"3981609\";\"ティフアナ\";\"other\"\n\"3981609\";\"티후아나\";\"other\"\n\"3981652\";\"Tierranueva\";\"main\"\n\"3981652\";\"San Juan\";\"other\"\n\"3981725\";\"Teul de González Ortega\";\"main\"\n\"3981725\";\"Teul de Gonzalez Ortega\";\"ascii\"\n\"3981725\";\"San Juan Bautista del Teul\";\"other\"\n\"3981725\";\"Teul\";\"other\"\n\"3981727\";\"Teuchitlán\";\"main\"\n\"3981727\";\"Teuchitlan\";\"ascii\"\n\"3981791\";\"Tesistán\";\"main\"\n\"3981791\";\"Tesistan\";\"ascii\"\n\"3981885\";\"Tequila\";\"main\"\n\"3981885\";\"Santiago de Tequila\";\"other\"\n\"3981885\";\"Tekila\";\"other\"\n\"3981885\";\"Текила\";\"other\"\n\"3981941\";\"Tepic\";\"main\"\n\"3981941\";\"Nayarit\";\"other\"\n\"3981941\";\"TEPEIC\";\"other\"\n\"3981941\";\"tepiku\";\"other\"\n\"3981941\";\"テピク\";\"other\"\n\"3981944\";\"Tepezalá\";\"main\"\n\"3981944\";\"Tepezala\";\"ascii\"\n\"3981981\";\"Tepechitlán\";\"main\"\n\"3981981\";\"Tepechitlan\";\"ascii\"\n\"3981984\";\"Tepatitlán de Morelos\";\"main\"\n\"3981984\";\"Tepatitlan de Morelos\";\"ascii\"\n\"3981984\";\"Tepatitlan\";\"other\"\n\"3982007\";\"Tepalcatepec\";\"main\"\n\"3982028\";\"Teocuitatlán de Corona\";\"main\"\n\"3982028\";\"Teocuitatlan de Corona\";\"ascii\"\n\"3982028\";\"Teocuitatlan\";\"other\"\n\"3982034\";\"Teocaltiche\";\"main\"\n\"3982051\";\"Tenería\";\"main\"\n\"3982051\";\"Teneria\";\"ascii\"\n\"3982065\";\"Tenamaxtlán\";\"main\"\n\"3982065\";\"Tenamaxtlan\";\"ascii\"\n\"3982121\";\"Tejupilco de Hidalgo\";\"main\"\n\"3982121\";\"Teiupilco\";\"other\"\n\"3982121\";\"Tejupilco\";\"other\"\n\"3982168\";\"Tecuala\";\"main\"\n\"3982170\";\"Tecpan de Galeana\";\"main\"\n\"3982170\";\"Tecpan\";\"other\"\n\"3982170\";\"Tecpan de Galena\";\"other\"\n\"3982213\";\"Tecomán\";\"main\"\n\"3982213\";\"Tecoman\";\"ascii\"\n\"3982213\";\"Tekomane\";\"other\"\n\"3982213\";\"Текомане\";\"other\"\n\"3982215\";\"Tecolots\";\"main\"\n\"3982217\";\"Tecolotlán\";\"main\"\n\"3982217\";\"Tecolotlan\";\"ascii\"\n\"3982217\";\"Tecolotan\";\"other\"\n\"3982266\";\"Tecate\";\"main\"\n\"3982269\";\"Tecalitlán\";\"main\"\n\"3982269\";\"Tecalitlan\";\"ascii\"\n\"3982269\";\"Tecaltitlan\";\"other\"\n\"3982269\";\"Tecaltitlán\";\"other\"\n\"3982287\";\"Teacapán\";\"main\"\n\"3982287\";\"Teacapan\";\"ascii\"\n\"3982292\";\"Tayoltita\";\"main\"\n\"3982364\";\"Tarimoro\";\"main\"\n\"3982367\";\"Tarímbaro\";\"main\"\n\"3982367\";\"Tarimbaro\";\"ascii\"\n\"3982377\";\"Taretán\";\"main\"\n\"3982377\";\"Taretan\";\"ascii\"\n\"3982401\";\"Tarandacuao\";\"main\"\n\"3982461\";\"Tapalpa\";\"main\"\n\"3982542\";\"Tanhuato de Guerrero\";\"main\"\n\"3982542\";\"Tanhuato\";\"other\"\n\"3982545\";\"Tangancícuaro de Arista\";\"main\"\n\"3982545\";\"Tangancicuaro de Arista\";\"ascii\"\n\"3982545\";\"Tangacicuaro\";\"other\"\n\"3982545\";\"Tangacícuaro\";\"other\"\n\"3982545\";\"Tangancicuaro\";\"other\"\n\"3982548\";\"Tancítaro\";\"main\"\n\"3982548\";\"Tancitaro\";\"ascii\"\n\"3982548\";\"Tancitaro de Medellin\";\"other\"\n\"3982548\";\"Tancítaro de Medellin\";\"other\"\n\"3982567\";\"Tamazula de Gordiano\";\"main\"\n\"3982589\";\"Talpa de Allende\";\"main\"\n\"3982589\";\"Talpa\";\"other\"\n\"3982616\";\"Tala\";\"main\"\n\"3982668\";\"Tacualeche\";\"main\"\n\"3982668\";\"Tacoaleche\";\"other\"\n\"3982668\";\"Tlacoaleche\";\"other\"\n\"3982693\";\"Tacámbaro de Codallos\";\"main\"\n\"3982693\";\"Tacambaro de Codallos\";\"ascii\"\n\"3982693\";\"Tacambaro\";\"other\"\n\"3982693\";\"Tacambaro de Collados\";\"other\"\n\"3982693\";\"Tacámbaro de Collados\";\"other\"\n\"3982729\";\"Tabasco\";\"main\"\n\"3982729\";\"Garcia de la Cadena\";\"other\"\n\"3982729\";\"Tabasko\";\"other\"\n\"3982729\";\"Villa Garcia de la Cadena\";\"other\"\n\"3982729\";\"Villa García de la Cadena\";\"other\"\n\"3982729\";\"Villa del Refugio\";\"other\"\n\"3982729\";\"Табаско\";\"other\"\n\"3982766\";\"Suchitlán\";\"main\"\n\"3982766\";\"Suchitlan\";\"ascii\"\n\"3982837\";\"Sonoyta\";\"main\"\n\"3982837\";\"Sonoita\";\"other\"\n\"3982887\";\"Sombrerete\";\"main\"\n\"3982912\";\"Soledad Díez Gutiérrez\";\"main\"\n\"3982912\";\"Soledad Diez Gutierrez\";\"ascii\"\n\"3982912\";\"Diaz Gutierrez\";\"other\"\n\"3982912\";\"Diez Gutierrez\";\"other\"\n\"3982912\";\"Diez Gutiérrez\";\"other\"\n\"3982912\";\"Díaz Gutiérrez\";\"other\"\n\"3982912\";\"Soledad Diaz Gutierrez\";\"other\"\n\"3982912\";\"Soledad Díaz Gutiérrez\";\"other\"\n\"3982912\";\"Soledad de Diez Gutierrez\";\"other\"\n\"3982912\";\"Soledad de Díez Gutiérrez\";\"other\"\n\"3983032\";\"Sinaloa de Leyva\";\"main\"\n\"3983032\";\"Cinaloa\";\"other\"\n\"3983032\";\"Sinaloa\";\"other\"\n\"3983032\";\"Sinaloita\";\"other\"\n\"3983058\";\"Silao\";\"main\"\n\"3983216\";\"Sayula\";\"main\"\n\"3983312\";\"Saucillo\";\"main\"\n\"3983481\";\"San Vicente\";\"main\"\n\"3983630\";\"Santiago Tangamandapio\";\"main\"\n\"3983630\";\"Tangamandapio\";\"other\"\n\"3983636\";\"Santiago Ixcuintla\";\"main\"\n\"3983636\";\"Santiago\";\"other\"\n\"3983641\";\"Santiago de Cuenda\";\"main\"\n\"3983641\";\"Santiago\";\"other\"\n\"3983641\";\"Santiago Cuenda\";\"other\"\n\"3983671\";\"Santiago\";\"main\"\n\"3983671\";\"Sant'jago\";\"other\"\n\"3983671\";\"Villa de Santiago\";\"other\"\n\"3983671\";\"Сантьяго\";\"other\"\n\"3983764\";\"Santa Teresa\";\"main\"\n\"3983805\";\"Santa Rosalía\";\"main\"\n\"3983805\";\"Santa Rosalia\";\"ascii\"\n\"3983805\";\"El Boleo\";\"other\"\n\"3983820\";\"Santa Rosa de Jáuregui\";\"main\"\n\"3983820\";\"Santa Rosa de Jauregui\";\"ascii\"\n\"3983820\";\"Santa Rosa\";\"other\"\n\"3983820\";\"Santa Rosa Jauregui\";\"other\"\n\"3983820\";\"Santa Rosa Jáuregui\";\"other\"\n\"3984074\";\"Santa María del Río\";\"main\"\n\"3984074\";\"Santa Maria del Rio\";\"ascii\"\n\"3984074\";\"Rio\";\"other\"\n\"3984078\";\"Santa María del Oro\";\"main\"\n\"3984078\";\"Santa Maria del Oro\";\"ascii\"\n\"3984078\";\"El Oro\";\"other\"\n\"3984079\";\"Santa María del Oro\";\"main\"\n\"3984079\";\"Santa Maria del Oro\";\"ascii\"\n\"3984079\";\"El Oro\";\"other\"\n\"3984079\";\"Santa Maria\";\"other\"\n\"3984237\";\"Santa Isabel\";\"main\"\n\"3984340\";\"Santa Fe de la Laguna\";\"main\"\n\"3984340\";\"Santa Fe\";\"other\"\n\"3984340\";\"Santa Fe la Laguna\";\"other\"\n\"3984437\";\"Santa Cruz del Valle\";\"main\"\n\"3984437\";\"Santa Cruz\";\"other\"\n\"3984444\";\"Santa Cruz de las Flores\";\"main\"\n\"3984444\";\"Santa Cruz\";\"other\"\n\"3984558\";\"Santa Clara\";\"main\"\n\"3984571\";\"Santa Catarina de Tepehuanes\";\"main\"\n\"3984571\";\"Tepehuanes\";\"other\"\n\"3984583\";\"Santa Catarina\";\"main\"\n\"3984629\";\"Santa Bárbara\";\"main\"\n\"3984629\";\"Santa Barbara\";\"ascii\"\n\"3984679\";\"Santa Anita\";\"main\"\n\"3984690\";\"Santa Ana Pacueco\";\"main\"\n\"3984690\";\"Santa Ana\";\"other\"\n\"3984690\";\"Santa Ana Pacheco\";\"other\"\n\"3984691\";\"Santa Ana Maya\";\"main\"\n\"3984717\";\"Santa Ana\";\"main\"\n\"3984771\";\"San Simón de la Laguna\";\"main\"\n\"3984771\";\"San Simon de la Laguna\";\"ascii\"\n\"3984771\";\"San Simon\";\"other\"\n\"3984771\";\"San Simon de Laguna\";\"other\"\n\"3984771\";\"San Simón\";\"other\"\n\"3984771\";\"San Simón de Laguna\";\"other\"\n\"3984791\";\"San Sebastián el Grande\";\"main\"\n\"3984791\";\"San Sebastian el Grande\";\"ascii\"\n\"3984832\";\"San Roque\";\"main\"\n\"3984997\";\"San Quintín\";\"main\"\n\"3984997\";\"San Quintin\";\"ascii\"\n\"3984997\";\"Saint-Quentin\";\"other\"\n\"3985008\";\"San Pedro Piedra Gorda\";\"main\"\n\"3985008\";\"Ciudad Cuauhtemoc\";\"other\"\n\"3985008\";\"Ciudad Cuauhtémoc\";\"other\"\n\"3985008\";\"Cuauhtemoc\";\"other\"\n\"3985008\";\"Cuauhtémoc\";\"other\"\n\"3985008\";\"San Pedro\";\"other\"\n\"3985019\";\"San Pedro Lagunillas\";\"main\"\n\"3985019\";\"Lagunillas\";\"other\"\n\"3985019\";\"San Pedro\";\"other\"\n\"3985019\";\"San Pedro Lagunas\";\"other\"\n\"3985024\";\"San Pedro Itzicán\";\"main\"\n\"3985024\";\"San Pedro Itzican\";\"ascii\"\n\"3985024\";\"Itzican\";\"other\"\n\"3985024\";\"San Pedro Ixcatlan\";\"other\"\n\"3985024\";\"San Pedro Ixcatlán\";\"other\"\n\"3985031\";\"San Pedro de los Naranjos\";\"main\"\n\"3985031\";\"San Pedro\";\"other\"\n\"3985129\";\"San Pedro\";\"main\"\n\"3985168\";\"San Patricio\";\"main\"\n\"3985241\";\"San Nicolás de los Garza\";\"main\"\n\"3985241\";\"San Nicolas de los Garza\";\"ascii\"\n\"3985241\";\"San Nicolas de los Garsas\";\"other\"\n\"3985241\";\"San Nicolas de los Garzas\";\"other\"\n\"3985241\";\"San Nicolás de los Garsas\";\"other\"\n\"3985241\";\"San Nicolás de los Garzas\";\"other\"\n\"3985301\";\"San Miguel Zapotitlán\";\"main\"\n\"3985301\";\"San Miguel Zapotitlan\";\"ascii\"\n\"3985301\";\"San Miguel\";\"other\"\n\"3985301\";\"Zapotitan\";\"other\"\n\"3985301\";\"Zapotitán\";\"other\"\n\"3985307\";\"San Miguel Octopan\";\"main\"\n\"3985307\";\"Octopan\";\"other\"\n\"3985307\";\"San Miguel Actopan\";\"other\"\n\"3985323\";\"San Miguel el Alto\";\"main\"\n\"3985323\";\"San Miguel\";\"other\"\n\"3985327\";\"San Miguel de Papasquiaro\";\"main\"\n\"3985327\";\"Papasquiaro\";\"other\"\n\"3985327\";\"San Miguel Papasquiaro\";\"other\"\n\"3985327\";\"Santiago Papasquiaro\";\"other\"\n\"3985344\";\"San Miguel de Allende\";\"main\"\n\"3985344\";\"San Miguel Allende\";\"other\"\n\"3985504\";\"San Martín Hidalgo\";\"main\"\n\"3985504\";\"San Martin Hidalgo\";\"ascii\"\n\"3985504\";\"San Martin de Hidalgo\";\"other\"\n\"3985504\";\"San Martín de Hidalgo\";\"other\"\n\"3985573\";\"San Marcos\";\"main\"\n\"3985604\";\"San Luis Río Colorado\";\"main\"\n\"3985604\";\"San Luis Rio Colorado\";\"ascii\"\n\"3985604\";\"San Luis\";\"other\"\n\"3985606\";\"San Luis Potosí\";\"main\"\n\"3985606\";\"San Luis Potosi\";\"ascii\"\n\"3985606\";\"San Luis\";\"other\"\n\"3985620\";\"San Luis de la Paz\";\"main\"\n\"3985621\";\"San Luis de la Paz\";\"main\"\n\"3985665\";\"San Luis\";\"main\"\n\"3985710\";\"Cabo San Lucas\";\"main\"\n\"3985710\";\"Kabo-San-Lukas\";\"other\"\n\"3985710\";\"San Lucas\";\"other\"\n\"3985710\";\"Кабо-Сан-Лукас\";\"other\"\n\"3985716\";\"San Lucas\";\"main\"\n\"3985716\";\"Kabo-San-Lukas\";\"other\"\n\"3985716\";\"Кабо-Сан-Лукас\";\"other\"\n\"3985797\";\"San Julián\";\"main\"\n\"3985797\";\"San Julian\";\"ascii\"\n\"3985865\";\"San Juan de los Lagos\";\"main\"\n\"3985878\";\"San Juan de la Vega\";\"main\"\n\"3985912\";\"San Juan de Abajo\";\"main\"\n\"3985913\";\"San Juan Cosalá\";\"main\"\n\"3985913\";\"San Juan Cosala\";\"ascii\"\n\"3985913\";\"San Juan\";\"other\"\n\"3986082\";\"San José Temascatío\";\"main\"\n\"3986082\";\"San Jose Temascatio\";\"ascii\"\n\"3986082\";\"Temascalio\";\"other\"\n\"3986082\";\"Temascatio\";\"other\"\n\"3986082\";\"Temaxcatio\";\"other\"\n\"3986088\";\"San José Iturbide\";\"main\"\n\"3986088\";\"San Jose Iturbide\";\"ascii\"\n\"3986088\";\"Alvaro Obregon\";\"other\"\n\"3986088\";\"Iturbide\";\"other\"\n\"3986088\";\"San Jose de Iturbide\";\"other\"\n\"3986090\";\"San José el Alto\";\"main\"\n\"3986090\";\"San Jose el Alto\";\"ascii\"\n\"3986165\";\"San José del Castillo\";\"main\"\n\"3986165\";\"San Jose del Castillo\";\"ascii\"\n\"3986172\";\"San José del Cabo\";\"main\"\n\"3986172\";\"San Jose del Cabo\";\"ascii\"\n\"3986172\";\"San-Khose-del'-Kabo\";\"other\"\n\"3986172\";\"Сан-Хосе-дель-Кабо\";\"other\"\n\"3986228\";\"San José de Gracia\";\"main\"\n\"3986228\";\"San Jose de Gracia\";\"ascii\"\n\"3986553\";\"San Jerónimo de Juárez\";\"main\"\n\"3986553\";\"San Jeronimo de Juarez\";\"ascii\"\n\"3986553\";\"San Jeronimo\";\"other\"\n\"3986553\";\"San Jerónimo\";\"other\"\n\"3986600\";\"San Jeronimito\";\"main\"\n\"3986600\";\"San Goronimito\";\"other\"\n\"3986600\";\"San Jeronimo\";\"other\"\n\"3986600\";\"San Jerónimo\";\"other\"\n\"3986862\";\"San Ignacio\";\"main\"\n\"3986954\";\"San Gabriel\";\"main\"\n\"3986970\";\"San Francisco Pichataro\";\"main\"\n\"3986970\";\"Pichataro\";\"other\"\n\"3986970\";\"Pichátaro\";\"other\"\n\"3986970\";\"Pinchataro\";\"other\"\n\"3986970\";\"Pinchátaro\";\"other\"\n\"3986984\";\"San Francisco del Rincón\";\"main\"\n\"3986984\";\"San Francisco del Rincon\";\"ascii\"\n\"3987224\";\"San Felipe\";\"main\"\n\"3987245\";\"San Felipe Aztatán\";\"main\"\n\"3987245\";\"San Felipe Aztatan\";\"ascii\"\n\"3987245\";\"San Felipe\";\"other\"\n\"3987246\";\"San Felipe\";\"main\"\n\"3987246\";\"Ciudad Doctor Hernandez Alvarez\";\"other\"\n\"3987246\";\"Ciudad Doctor Hernández Alvarez\";\"other\"\n\"3987246\";\"Ciudad Gonzales\";\"other\"\n\"3987246\";\"Doctor Hernandez Alvarez\";\"other\"\n\"3987246\";\"Gonzales\";\"other\"\n\"3987309\";\"San Diego de la Unión\";\"main\"\n\"3987309\";\"San Diego de la Union\";\"ascii\"\n\"3987309\";\"Diego de la Union\";\"other\"\n\"3987310\";\"San Diego de Alejandría\";\"main\"\n\"3987310\";\"San Diego de Alejandria\";\"ascii\"\n\"3987383\";\"San Cristóbal\";\"main\"\n\"3987383\";\"San Cristobal\";\"ascii\"\n\"3987402\";\"Sánchez Román\";\"main\"\n\"3987402\";\"Sanchez Roman\";\"ascii\"\n\"3987402\";\"Tlaltenango\";\"other\"\n\"3987500\";\"San Buenaventura\";\"main\"\n\"3987538\";\"San Blas\";\"main\"\n\"3987544\";\"San Blas\";\"main\"\n\"3987619\";\"San Bartolo\";\"main\"\n\"3987923\";\"San Andrés Ixtlán\";\"main\"\n\"3987923\";\"San Andres Ixtlan\";\"ascii\"\n\"3988025\";\"San Agustín\";\"main\"\n\"3988025\";\"San Agustin\";\"ascii\"\n\"3988050\";\"Salvatierra\";\"main\"\n\"3988050\";\"Ciudad Salvatierra\";\"other\"\n\"3988050\";\"Sal'vat'erra\";\"other\"\n\"3988050\";\"Salvatiera\";\"other\"\n\"3988050\";\"Сальватьерра\";\"other\"\n\"3988086\";\"Saltillo\";\"main\"\n\"3988086\";\"Салтилло\";\"other\"\n\"3988153\";\"Salitral de Carreras\";\"main\"\n\"3988153\";\"Salitral\";\"other\"\n\"3988169\";\"Salinas de Hidalgo\";\"main\"\n\"3988169\";\"Salinas\";\"other\"\n\"3988169\";\"Salinas del Penon Blanco\";\"other\"\n\"3988169\";\"Salinas del Peñón Blanco\";\"other\"\n\"3988214\";\"Salamanca\";\"main\"\n\"3988214\";\"Ciudad Salamanca\";\"other\"\n\"3988214\";\"Salamanka\";\"other\"\n\"3988214\";\"Саламанка\";\"other\"\n\"3988251\";\"Saín Alto\";\"main\"\n\"3988251\";\"Sain Alto\";\"ascii\"\n\"3988258\";\"Sahuayo de José María Morelos\";\"main\"\n\"3988258\";\"Sahuayo de Jose Maria Morelos\";\"ascii\"\n\"3988258\";\"Sahuayo\";\"other\"\n\"3988258\";\"Sahuayo de Diaz\";\"other\"\n\"3988258\";\"Sahuayo de Díaz\";\"other\"\n\"3988258\";\"Sahuayo de Morelos\";\"other\"\n\"3988258\";\"Sahuayo de Porfirio Diaz\";\"other\"\n\"3988258\";\"Sahuayo de Porfirio Díaz\";\"other\"\n\"3988265\";\"Sahuaripa\";\"main\"\n\"3988327\";\"Sabinas Hidalgo\";\"main\"\n\"3988333\";\"Sabinas\";\"main\"\n\"3988361\";\"Ruiz\";\"main\"\n\"3988361\";\"Estacion Ruiz\";\"other\"\n\"3988361\";\"Estación Ruiz\";\"other\"\n\"3988392\";\"Rosarito\";\"main\"\n\"3988392\";\"Ejido Mazatlan El Rosarito\";\"other\"\n\"3988392\";\"Rosario\";\"other\"\n\"3988392\";\"Rosarito Beach Baja\";\"other\"\n\"3988392\";\"Росарито\";\"other\"\n\"3988421\";\"Rosamorada\";\"main\"\n\"3988430\";\"Rosales\";\"main\"\n\"3988430\";\"Santa Cruz de Rosales\";\"other\"\n\"3988462\";\"Romita\";\"main\"\n\"3988515\";\"Rodeo\";\"main\"\n\"3988594\";\"Río Grande\";\"main\"\n\"3988594\";\"Rio Grande\";\"ascii\"\n\"3988648\";\"Rincón de Tamayo\";\"main\"\n\"3988648\";\"Rincon de Tamayo\";\"ascii\"\n\"3988648\";\"Pueblo Rincon de Tamayo\";\"other\"\n\"3988648\";\"Rincon\";\"other\"\n\"3988651\";\"Rincón de Romos\";\"main\"\n\"3988651\";\"Rincon de Romos\";\"ascii\"\n\"3988651\";\"Rinkon-de-Romos\";\"other\"\n\"3988651\";\"Ринкон-де-Ромос\";\"other\"\n\"3991043\";\"Ramos Arizpe\";\"main\"\n\"3991043\";\"Arizpe\";\"other\"\n\"3991043\";\"Ramos-Arispe\";\"other\"\n\"3991043\";\"Рамос-Ариспе\";\"other\"\n\"3991110\";\"Quiroga\";\"main\"\n\"3991148\";\"Quila\";\"main\"\n\"3991148\";\"Quilla\";\"other\"\n\"3991164\";\"Querétaro\";\"main\"\n\"3991164\";\"Queretaro\";\"ascii\"\n\"3991164\";\"Ciudad Queretaro\";\"other\"\n\"3991164\";\"Keretaro\";\"other\"\n\"3991164\";\"Керетаро\";\"other\"\n\"3991169\";\"Queréndaro\";\"main\"\n\"3991169\";\"Querendaro\";\"ascii\"\n\"3991218\";\"Puruarán\";\"main\"\n\"3991218\";\"Puruaran\";\"ascii\"\n\"3991219\";\"Puruándiro\";\"main\"\n\"3991219\";\"Puruandiro\";\"ascii\"\n\"3991219\";\"Ciudad Puruandiro\";\"other\"\n\"3991219\";\"Puruandiro de Calderon\";\"other\"\n\"3991219\";\"Puruándiro de Calderón\";\"other\"\n\"3991246\";\"Purificación\";\"main\"\n\"3991246\";\"Purificacion\";\"ascii\"\n\"3991253\";\"Purépero\";\"main\"\n\"3991253\";\"Purepero\";\"ascii\"\n\"3991253\";\"Pureparo de Echaiz\";\"other\"\n\"3991253\";\"Puréparo de Echaíz\";\"other\"\n\"3991323\";\"Puga\";\"main\"\n\"3991328\";\"Puerto Vallarta\";\"main\"\n\"3991328\";\"Las Penas\";\"other\"\n\"3991328\";\"Las Peñas\";\"other\"\n\"3991328\";\"Pto Vallarta\";\"other\"\n\"3991328\";\"Puehrto-Val'jarta\";\"other\"\n\"3991328\";\"Пуэрто-Вальярта\";\"other\"\n\"3991347\";\"Puerto Peñasco\";\"main\"\n\"3991347\";\"Puerto Penasco\";\"ascii\"\n\"3991347\";\"Punta Penasca\";\"other\"\n\"3991347\";\"Punta Penasco\";\"other\"\n\"3991347\";\"Punta Peñasco\";\"other\"\n\"3991350\";\"Puerto Palomas\";\"main\"\n\"3991547\";\"Pueblo Yaqui\";\"main\"\n\"3991567\";\"Pueblo Nuevo\";\"main\"\n\"3991622\";\"Providencia\";\"main\"\n\"3991930\";\"Pozo Gamboa\";\"main\"\n\"3991930\";\"Pozo de Gamboa\";\"other\"\n\"3992154\";\"Potam\";\"main\"\n\"3992212\";\"Poncitlán\";\"main\"\n\"3992212\";\"Poncitlan\";\"ascii\"\n\"3992278\";\"Poanas\";\"main\"\n\"3992327\";\"Plateros\";\"main\"\n\"3992405\";\"Pitiquito\";\"main\"\n\"3992405\";\"Pititquito\";\"other\"\n\"3992485\";\"Pinos\";\"main\"\n\"3992599\";\"Pihuamo\";\"main\"\n\"3992599\";\"Piguama\";\"other\"\n\"3992599\";\"Piguamo\";\"other\"\n\"3992619\";\"Piedras Negras\";\"main\"\n\"3992619\";\"Piedrasnegras\";\"other\"\n\"3992842\";\"Petatlán\";\"main\"\n\"3992842\";\"Petatlan\";\"ascii\"\n\"3992842\";\"Petlatlan\";\"other\"\n\"3992842\";\"Petlatlán\";\"other\"\n\"3992842\";\"Potatlan\";\"other\"\n\"3992842\";\"Петатлан\";\"other\"\n\"3992857\";\"Pesquería\";\"main\"\n\"3992857\";\"Pesqueria\";\"ascii\"\n\"3992857\";\"Pesqueria Chica\";\"other\"\n\"3992857\";\"Pesqueria Chico\";\"other\"\n\"3992857\";\"Pesquería Chica\";\"other\"\n\"3992857\";\"Pesquería Chico\";\"other\"\n\"3992919\";\"Peribán de Ramos\";\"main\"\n\"3992919\";\"Periban de Ramos\";\"ascii\"\n\"3992919\";\"Periban\";\"other\"\n\"3992967\";\"Peñón Blanco\";\"main\"\n\"3992967\";\"Penon Blanco\";\"ascii\"\n\"3992986\";\"Pénjamo\";\"main\"\n\"3992986\";\"Penjamo\";\"ascii\"\n\"3992986\";\"Panjamo\";\"other\"\n\"3992986\";\"Pánjamo\";\"other\"\n\"3992987\";\"Penjamillo de Degollado\";\"main\"\n\"3992987\";\"Penjamillo\";\"other\"\n\"3993126\";\"Pedro Escobedo\";\"main\"\n\"3993155\";\"Pedernales\";\"main\"\n\"3993179\";\"Pátzcuaro\";\"main\"\n\"3993179\";\"Patzcuaro\";\"ascii\"\n\"3993179\";\"Packuaro\";\"other\"\n\"3993179\";\"Пацкуаро\";\"other\"\n\"3993335\";\"Parras de la Fuente\";\"main\"\n\"3993335\";\"Parras\";\"other\"\n\"3993335\";\"Паррас\";\"other\"\n\"3993455\";\"Parácuaro\";\"main\"\n\"3993455\";\"Paracuaro\";\"ascii\"\n\"3993457\";\"Paracho de Verduzco\";\"main\"\n\"3993457\";\"Paracho\";\"other\"\n\"3993492\";\"Pánuco de Coronado\";\"main\"\n\"3993492\";\"Panuco de Coronado\";\"ascii\"\n\"3993492\";\"Panuco\";\"other\"\n\"3993519\";\"Panindícuaro de la Reforma\";\"main\"\n\"3993519\";\"Panindicuaro de la Reforma\";\"ascii\"\n\"3993519\";\"Panindicuaro\";\"other\"\n\"3993519\";\"Punindicuaro\";\"other\"\n\"3993519\";\"Punindícuaro\";\"other\"\n\"3993763\";\"Palo Alto\";\"main\"\n\"3993893\";\"Palau\";\"main\"\n\"3993893\";\"Palahu\";\"other\"\n\"3993893\";\"Palahú\";\"other\"\n\"3993926\";\"Pajacuarán\";\"main\"\n\"3993926\";\"Pajacuaran\";\"ascii\"\n\"3993984\";\"Pabellón de Arteaga\";\"main\"\n\"3993984\";\"Pabellon de Arteaga\";\"ascii\"\n\"3993984\";\"Pabellon\";\"other\"\n\"3993984\";\"Pabellon de Hidalgo\";\"other\"\n\"3993984\";\"Pabellón\";\"other\"\n\"3993984\";\"Pabellón de Hidalgo\";\"other\"\n\"3994164\";\"Opopeo\";\"main\"\n\"3994216\";\"Ojuelos de Jalisco\";\"main\"\n\"3994469\";\"Ojinaga\";\"main\"\n\"3994469\";\"Fuerte del Norte\";\"other\"\n\"3994469\";\"Presidio del Juntas\";\"other\"\n\"3994469\";\"Presidio del Norte\";\"other\"\n\"3994469\";\"Villa de Ojinaga\";\"other\"\n\"3994489\";\"Ocotlán\";\"main\"\n\"3994489\";\"Ocotlan\";\"ascii\"\n\"3994534\";\"Ocampo\";\"main\"\n\"3994534\";\"Villa Ocampo\";\"other\"\n\"3994535\";\"Ocampo\";\"main\"\n\"3994536\";\"Ocampo\";\"main\"\n\"3994581\";\"Numarán\";\"main\"\n\"3994581\";\"Numaran\";\"ascii\"\n\"3994581\";\"Aumaran\";\"other\"\n\"3994581\";\"Aumarán\";\"other\"\n\"3994594\";\"Nuevo San Juan Parangaricutiro\";\"main\"\n\"3994604\";\"Nuevo México\";\"main\"\n\"3994604\";\"Nuevo Mexico\";\"ascii\"\n\"3994604\";\"Nuehvo-Meksiko\";\"other\"\n\"3994604\";\"Нуэво-Мексико\";\"other\"\n\"3994607\";\"Nuevo Ideal\";\"main\"\n\"3994614\";\"Nuevo Churumuco\";\"main\"\n\"3994614\";\"Churumuco\";\"other\"\n\"3994614\";\"Churumuco de Morelos\";\"other\"\n\"3994616\";\"Nuevo Casas Grandes\";\"main\"\n\"3994616\";\"Nueva Casa Grande\";\"other\"\n\"3994616\";\"Nueva Casas Grandes\";\"other\"\n\"3994667\";\"Nueva Rosita\";\"main\"\n\"3994667\";\"Nuehva-Rosita\";\"other\"\n\"3994667\";\"Rosita\";\"other\"\n\"3994667\";\"Нуэва-Росита\";\"other\"\n\"3994674\";\"Nueva Italia de Ruiz\";\"main\"\n\"3994674\";\"Nueva Italia\";\"other\"\n\"3994674\";\"Villa de Nueva Italia de Ruiz\";\"other\"\n\"3994863\";\"Nombre de Dios\";\"main\"\n\"3994911\";\"Nocupétaro\";\"main\"\n\"3994911\";\"Nocupetaro\";\"ascii\"\n\"3994912\";\"Nochistlán\";\"main\"\n\"3994912\";\"Nochistlan\";\"ascii\"\n\"3994939\";\"Nieves\";\"main\"\n\"3995005\";\"Nazas\";\"main\"\n\"3995010\";\"Nazareno\";\"main\"\n\"3995017\";\"Navolato\";\"main\"\n\"3995050\";\"Nava\";\"main\"\n\"3995142\";\"Naica\";\"main\"\n\"3995146\";\"Nahuatzén\";\"main\"\n\"3995146\";\"Nahuatzen\";\"ascii\"\n\"3995155\";\"Nacozari Viejo\";\"main\"\n\"3995155\";\"Nacozari\";\"other\"\n\"3995155\";\"Nacozari de Garcia\";\"other\"\n\"3995155\";\"Nacozari de García\";\"other\"\n\"3995171\";\"Naco\";\"main\"\n\"3995171\";\"Maco\";\"other\"\n\"3995236\";\"Mulegé\";\"main\"\n\"3995236\";\"Mulege\";\"ascii\"\n\"3995236\";\"Muleje\";\"other\"\n\"3995236\";\"Mulejé\";\"other\"\n\"3995343\";\"Moroleón\";\"main\"\n\"3995343\";\"Moroleon\";\"ascii\"\n\"3995398\";\"Morelos\";\"main\"\n\"3995402\";\"Morelia\";\"main\"\n\"3995402\";\"Morelija\";\"other\"\n\"3995402\";\"mo lei li ya\";\"other\"\n\"3995402\";\"Морелия\";\"other\"\n\"3995402\";\"莫雷利亚\";\"other\"\n\"3995465\";\"Monterrey\";\"main\"\n\"3995465\";\"Monterejo\";\"other\"\n\"3995465\";\"Monterrei\";\"other\"\n\"3995465\";\"Monterrej\";\"other\"\n\"3995465\";\"Monterrey City\";\"other\"\n\"3995465\";\"Tlahtoantepec\";\"other\"\n\"3995465\";\"Tlahtoāntepēc\";\"other\"\n\"3995465\";\"meng te rui\";\"other\"\n\"3995465\";\"montere\";\"other\"\n\"3995465\";\"Монтеррей\";\"other\"\n\"3995465\";\"モンテレー\";\"other\"\n\"3995465\";\"蒙特瑞\";\"other\"\n\"3995490\";\"Monte Escobedo\";\"main\"\n\"3995523\";\"Monclova\";\"main\"\n\"3995647\";\"Moctezuma\";\"main\"\n\"3995652\";\"Mocorito\";\"main\"\n\"3995671\";\"Mochicahui\";\"main\"\n\"3995789\";\"Mineral de Angangueo\";\"main\"\n\"3995789\";\"Angangueo\";\"other\"\n\"3995794\";\"Minatitlán\";\"main\"\n\"3995794\";\"Minatitlan\";\"ascii\"\n\"3995794\";\"El Mamey\";\"other\"\n\"3995847\";\"Mina\";\"main\"\n\"3995943\";\"Miguel Auza\";\"main\"\n\"3995943\";\"San Miguel Mezquital\";\"other\"\n\"3995943\";\"San Miguel del Mezquital\";\"other\"\n\"3996038\";\"Mezcala\";\"main\"\n\"3996038\";\"Mexcala\";\"other\"\n\"3996047\";\"Mexticacán\";\"main\"\n\"3996047\";\"Mexticacan\";\"ascii\"\n\"3996047\";\"Mexticaoan\";\"other\"\n\"3996069\";\"Mexicali\";\"main\"\n\"3996069\";\"Mekhikali\";\"other\"\n\"3996069\";\"Мехикали\";\"other\"\n\"3996234\";\"Meoqui\";\"main\"\n\"3996271\";\"Melchor Múzquiz\";\"main\"\n\"3996271\";\"Melchor Muzquiz\";\"ascii\"\n\"3996271\";\"Mozquiz\";\"other\"\n\"3996271\";\"Muzguiz\";\"other\"\n\"3996271\";\"Muzquiz\";\"other\"\n\"3996299\";\"Medina\";\"main\"\n\"3996322\";\"Mazatlán\";\"main\"\n\"3996322\";\"Mazatlan\";\"ascii\"\n\"3996322\";\"Ciudad Mazatlan\";\"other\"\n\"3996322\";\"Ciudad Mazatlán\";\"other\"\n\"3996322\";\"Masatlan\";\"other\"\n\"3996322\";\"Sinaloa\";\"other\"\n\"3996322\";\"masatoran\";\"other\"\n\"3996322\";\"Масатлан\";\"other\"\n\"3996322\";\"マサトラン\";\"other\"\n\"3996336\";\"Mazamitla\";\"main\"\n\"3996387\";\"Matehuala\";\"main\"\n\"3996387\";\"Mateuala\";\"other\"\n\"3996387\";\"Матеуала\";\"other\"\n\"3996426\";\"Matamoros\";\"main\"\n\"3996426\";\"Matamoros de la Laguna\";\"other\"\n\"3996426\";\"Матаморос\";\"other\"\n\"3996472\";\"Mascota\";\"main\"\n\"3996548\";\"Marín\";\"main\"\n\"3996548\";\"Marin\";\"ascii\"\n\"3996585\";\"Margaritas\";\"main\"\n\"3996595\";\"Marfil\";\"main\"\n\"3996626\";\"Maravatío\";\"main\"\n\"3996626\";\"Maravatio\";\"ascii\"\n\"3996647\";\"Mapimí\";\"main\"\n\"3996647\";\"Mapimi\";\"ascii\"\n\"3996663\";\"Manzanillo\";\"main\"\n\"3996737\";\"Maneadero\";\"main\"\n\"3996893\";\"Magdalena de Kino\";\"main\"\n\"3996893\";\"Magdalena\";\"other\"\n\"3996893\";\"Magdalena-de-Kino\";\"other\"\n\"3996893\";\"Магдалена-де-Кино\";\"other\"\n\"3996933\";\"Madrid\";\"main\"\n\"3996956\";\"Madera\";\"main\"\n\"3997000\";\"Luvianos\";\"main\"\n\"3997017\";\"Luis Moya\";\"main\"\n\"3997017\";\"Adame\";\"other\"\n\"3997017\";\"San Francisco\";\"other\"\n\"3997017\";\"San Francisco de los Adame\";\"other\"\n\"3997220\";\"Los Reyes\";\"main\"\n\"3997479\";\"Los Mochis\";\"main\"\n\"3997479\";\"Mochis\";\"other\"\n\"3998214\";\"Los Algodones\";\"main\"\n\"3998287\";\"Loreto\";\"main\"\n\"3998291\";\"Loreto\";\"main\"\n\"3998318\";\"Lombardía\";\"main\"\n\"3998318\";\"Lombardia\";\"ascii\"\n\"3998473\";\"Lo Arado\";\"main\"\n\"3998655\";\"León\";\"main\"\n\"3998655\";\"Leon\";\"ascii\"\n\"3998655\";\"Ciudad de Leon\";\"other\"\n\"3998655\";\"Ciudad de León\";\"other\"\n\"3998655\";\"Leon Guanajuato\";\"other\"\n\"3998655\";\"Leon de los Aldama\";\"other\"\n\"3998655\";\"Leon de los Aldamas\";\"other\"\n\"3998655\";\"León de los Aldama\";\"other\"\n\"3998655\";\"León de los Aldamas\";\"other\"\n\"3998655\";\"reon\";\"other\"\n\"3998655\";\"レオン\";\"other\"\n\"3998858\";\"La Venta del Astillero\";\"main\"\n\"3998913\";\"La Unión\";\"main\"\n\"3998913\";\"La Union\";\"ascii\"\n\"3998919\";\"La Unión\";\"main\"\n\"3998919\";\"La Union\";\"ascii\"\n\"3998956\";\"La Trinidad\";\"main\"\n\"3999056\";\"La Tijera\";\"main\"\n\"3999162\";\"Las Varas\";\"main\"\n\"3999325\";\"Las Pintas de Arriba\";\"main\"\n\"3999741\";\"Las Juntas\";\"main\"\n\"4000490\";\"La Reforma\";\"main\"\n\"4000524\";\"La Quesería\";\"main\"\n\"4000524\";\"La Queseria\";\"ascii\"\n\"4000524\";\"Queseria\";\"other\"\n\"4000524\";\"Quesería\";\"other\"\n\"4000811\";\"La Pila\";\"main\"\n\"4000811\";\"Pila\";\"other\"\n\"4000821\";\"La Piedad Cavadas\";\"main\"\n\"4000821\";\"La Piedad\";\"other\"\n\"4000821\";\"La Piedad Cabadas\";\"other\"\n\"4000821\";\"La Piedad de Cabadas\";\"other\"\n\"4000821\";\"Municipio La Piedad\";\"other\"\n\"4000900\";\"La Paz\";\"main\"\n\"4000900\";\"La-Pas\";\"other\"\n\"4000900\";\"Ла-Пас\";\"other\"\n\"4001056\";\"La Orilla\";\"main\"\n\"4001240\";\"Lampazos de Naranjo\";\"main\"\n\"4001240\";\"Lampazos\";\"other\"\n\"4001240\";\"Lampozos de Naranjo\";\"other\"\n\"4001301\";\"La Moncada\";\"main\"\n\"4001301\";\"Moncada\";\"other\"\n\"4001325\";\"La Mira Tumbiscatio\";\"main\"\n\"4001325\";\"La Mira\";\"other\"\n\"4001597\";\"La Lira\";\"main\"\n\"4001597\";\"Lira\";\"other\"\n\"4001882\";\"La Jarretadera\";\"main\"\n\"4001947\";\"La Huerta\";\"main\"\n\"4001956\";\"La Huacana\";\"main\"\n\"4001956\";\"Huacana\";\"other\"\n\"4002224\";\"Lagos de Moreno\";\"main\"\n\"4002462\";\"La Estancia\";\"main\"\n\"4002462\";\"Estancia\";\"other\"\n\"4002745\";\"La Cruz\";\"main\"\n\"4003211\";\"La Cañada\";\"main\"\n\"4003211\";\"La Canada\";\"ascii\"\n\"4003211\";\"Canada\";\"other\"\n\"4003211\";\"Cañada\";\"other\"\n\"4003211\";\"El Marques\";\"other\"\n\"4003270\";\"La Calera\";\"main\"\n\"4003270\";\"Calera de Rivera\";\"other\"\n\"4003270\";\"Las Caleras\";\"other\"\n\"4003526\";\"La Barca\";\"main\"\n\"4003574\";\"La Aurora\";\"main\"\n\"4003574\";\"Puente Grande\";\"other\"\n\"4003618\";\"La Aldea\";\"main\"\n\"4003618\";\"Aldea\";\"other\"\n\"4003618\";\"Balmaceda\";\"other\"\n\"4003662\";\"Juventino Rosas\";\"main\"\n\"4003662\";\"Villa Santa Cruz Galeana\";\"other\"\n\"4003703\";\"Jungapeo\";\"main\"\n\"4003737\";\"Juchitlán\";\"main\"\n\"4003737\";\"Juchitlan\";\"ascii\"\n\"4003739\";\"Juchipila\";\"main\"\n\"4003757\";\"Juárez\";\"main\"\n\"4003757\";\"Juarez\";\"ascii\"\n\"4003757\";\"Villa Juarez\";\"other\"\n\"4003804\";\"Juan Aldama\";\"main\"\n\"4003804\";\"San Juan del Mezquita\";\"other\"\n\"4003804\";\"San Juan del Mezquital\";\"other\"\n\"4003810\";\"Juanacatlán\";\"main\"\n\"4003810\";\"Juanacatlan\";\"ascii\"\n\"4003908\";\"Jocotepec\";\"main\"\n\"4003923\";\"Jiquilpan de Juárez\";\"main\"\n\"4003923\";\"Jiquilpan de Juarez\";\"ascii\"\n\"4003923\";\"Jilquilpan\";\"other\"\n\"4003923\";\"Jiquilpan\";\"other\"\n\"4003938\";\"Jiménez\";\"main\"\n\"4003938\";\"Jimenez\";\"ascii\"\n\"4004024\";\"Jerez de García Salinas\";\"main\"\n\"4004024\";\"Jerez de Garcia Salinas\";\"ascii\"\n\"4004024\";\"Ciudad Garcia\";\"other\"\n\"4004024\";\"Ciudad Garcia Salinas\";\"other\"\n\"4004024\";\"Ciudad García\";\"other\"\n\"4004024\";\"Ciudad García Salinas\";\"other\"\n\"4004024\";\"Jerez\";\"other\"\n\"4004024\";\"Kheres-de-Garsija-Salinas\";\"other\"\n\"4004024\";\"Херес-де-Гарсия-Салинас\";\"other\"\n\"4004026\";\"Jerécuaro\";\"main\"\n\"4004026\";\"Jerecuaro\";\"ascii\"\n\"4004092\";\"Jaral del Progreso\";\"main\"\n\"4004092\";\"Jaral\";\"other\"\n\"4004092\";\"Pueblo Jaral del Progreso\";\"other\"\n\"4004126\";\"Jamay\";\"main\"\n\"4004148\";\"Jalpa\";\"main\"\n\"4004153\";\"Jalostotitlán\";\"main\"\n\"4004153\";\"Jalostotitlan\";\"ascii\"\n\"4004153\";\"Jalostotilan\";\"other\"\n\"4004153\";\"Khalostotitlan\";\"other\"\n\"4004153\";\"Халостотитлан\";\"other\"\n\"4004161\";\"Jalcocotán\";\"main\"\n\"4004161\";\"Jalcocotan\";\"ascii\"\n\"4004161\";\"Jalcocota\";\"other\"\n\"4004170\";\"Jala\";\"main\"\n\"4004267\";\"Ixtlán del Río\";\"main\"\n\"4004267\";\"Ixtlan del Rio\";\"ascii\"\n\"4004267\";\"Dei Rio Ixtlan\";\"other\"\n\"4004267\";\"Ixtlan\";\"other\"\n\"4004267\";\"Ixtlán\";\"other\"\n\"4004271\";\"Ixtlán\";\"main\"\n\"4004271\";\"Ixtlan\";\"ascii\"\n\"4004271\";\"Ixtlan de los Hervores\";\"other\"\n\"4004271\";\"Ixtlán de los Hervores\";\"other\"\n\"4004274\";\"Ixtlahuacán del Río\";\"main\"\n\"4004274\";\"Ixtlahuacan del Rio\";\"ascii\"\n\"4004275\";\"Ixtlahuacán de los Membrillos\";\"main\"\n\"4004275\";\"Ixtlahuacan de los Membrillos\";\"ascii\"\n\"4004275\";\"Ixtlahuacan\";\"other\"\n\"4004275\";\"Ixtlahuacan Membrillos\";\"other\"\n\"4004275\";\"Ixtlahuacán\";\"other\"\n\"4004293\";\"Ixtapa\";\"main\"\n\"4004294\";\"Ixtapa\";\"main\"\n\"4004330\";\"Irapuato\";\"main\"\n\"4004330\";\"Iraputa\";\"other\"\n\"4004330\";\"Ирапуато\";\"other\"\n\"4004331\";\"Irámuco\";\"main\"\n\"4004331\";\"Iramuco\";\"ascii\"\n\"4004394\";\"Indaparapeo\";\"main\"\n\"4004394\";\"Indiaparapeo\";\"other\"\n\"4004399\";\"Imuris\";\"main\"\n\"4004419\";\"Ignacio Zaragoza\";\"main\"\n\"4004529\";\"Huimilpan\";\"main\"\n\"4004555\";\"Huetamo de Núñez\";\"main\"\n\"4004555\";\"Huetamo de Nunez\";\"ascii\"\n\"4004555\";\"Huetamo\";\"other\"\n\"4004555\";\"Huetamo de Munez\";\"other\"\n\"4004555\";\"Huetamo de Múñez\";\"other\"\n\"4004616\";\"Huejuquilla el Alto\";\"main\"\n\"4004616\";\"Huejuquilla\";\"other\"\n\"4004618\";\"Huejúcar\";\"main\"\n\"4004618\";\"Huejucar\";\"ascii\"\n\"4004647\";\"Huatabampo\";\"main\"\n\"4004647\";\"Uatabampo\";\"other\"\n\"4004647\";\"Уатабампо\";\"other\"\n\"4004688\";\"Huanímaro\";\"main\"\n\"4004688\";\"Huanimaro\";\"ascii\"\n\"4004690\";\"Huandacareo\";\"main\"\n\"4004738\";\"Hostotipaquillo\";\"main\"\n\"4004850\";\"Higuera de Zaragoza\";\"main\"\n\"4004850\";\"Higueras de Zaragoza\";\"other\"\n\"4004867\";\"Hidalgo del Parral\";\"main\"\n\"4004867\";\"Paral\";\"other\"\n\"4004867\";\"Parral\";\"other\"\n\"4004867\";\"Парал\";\"other\"\n\"4004885\";\"Heroica Zitácuaro\";\"main\"\n\"4004885\";\"Heroica Zitacuaro\";\"ascii\"\n\"4004885\";\"Zitacuaro\";\"other\"\n\"4004885\";\"Zitácuaro\";\"other\"\n\"4004886\";\"Heroica Nogales\";\"main\"\n\"4004886\";\"Los Nogales\";\"other\"\n\"4004886\";\"Nogales\";\"other\"\n\"4004887\";\"Heroica Caborca\";\"main\"\n\"4004887\";\"Caborca\";\"other\"\n\"4004898\";\"Hermosillo\";\"main\"\n\"4004898\";\"Ehrmosil'o\";\"other\"\n\"4004898\";\"erumoshijo\";\"other\"\n\"4004898\";\"Эрмосильо\";\"other\"\n\"4004898\";\"エルモシージョ\";\"other\"\n\"4004949\";\"Hacienda Toribio\";\"main\"\n\"4005143\";\"Guaymas\";\"main\"\n\"4005143\";\"Heroica Guaymas\";\"other\"\n\"4005219\";\"Guasave\";\"main\"\n\"4005219\";\"Guasava\";\"other\"\n\"4005270\";\"Guanajuato\";\"main\"\n\"4005270\";\"Ciudad Guanajuato\";\"other\"\n\"4005270\";\"Guanakhuato\";\"other\"\n\"4005270\";\"guanafuato shi\";\"other\"\n\"4005270\";\"Гуанахуато\";\"other\"\n\"4005270\";\"グアナフアト市\";\"other\"\n\"4005297\";\"Guamúchil\";\"main\"\n\"4005297\";\"Guamuchil\";\"ascii\"\n\"4005370\";\"Guadalupe y Calvo\";\"main\"\n\"4005380\";\"Guadalupe Victoria\";\"main\"\n\"4005380\";\"Tapona\";\"other\"\n\"4005492\";\"Guadalupe\";\"main\"\n\"4005492\";\"Ciudad Guadalupe\";\"other\"\n\"4005492\";\"Gvadalupe\";\"other\"\n\"4005492\";\"Villa Guadalupe\";\"other\"\n\"4005492\";\"Villa de Guadalupe\";\"other\"\n\"4005492\";\"Гвадалупе\";\"other\"\n\"4005509\";\"Guadalupe\";\"main\"\n\"4005509\";\"Gvadalupe\";\"other\"\n\"4005509\";\"Гвадалупе\";\"other\"\n\"4005539\";\"Guadalajara\";\"main\"\n\"4005539\";\"Atemaxac\";\"other\"\n\"4005539\";\"Gvadalachara\";\"other\"\n\"4005539\";\"Gvadalaharo\";\"other\"\n\"4005539\";\"Gvadalakhara\";\"other\"\n\"4005539\";\"ghwadalakhara\";\"other\"\n\"4005539\";\"gua da la ha la\";\"other\"\n\"4005539\";\"guadarahara\";\"other\"\n\"4005539\";\"gwwdlhrh\";\"other\"\n\"4005539\";\"Ātemaxac\";\"other\"\n\"4005539\";\"Гвадалахара\";\"other\"\n\"4005539\";\"גוודלחרה\";\"other\"\n\"4005539\";\"غوادالاخارا\";\"other\"\n\"4005539\";\"グアダラハラ\";\"other\"\n\"4005539\";\"瓜达拉哈拉\";\"other\"\n\"4005775\";\"Gómez Palacio\";\"main\"\n\"4005775\";\"Gomez Palacio\";\"ascii\"\n\"4005856\";\"General Zuazua\";\"main\"\n\"4005856\";\"Zuazua\";\"other\"\n\"4005857\";\"General Vicente Guerrero\";\"main\"\n\"4005857\";\"Morelos\";\"other\"\n\"4005857\";\"Mulero\";\"other\"\n\"4005857\";\"Muleros\";\"other\"\n\"4005857\";\"Vicente Guerrero\";\"other\"\n\"4005857\";\"Villa Vicente Guerrero\";\"other\"\n\"4005864\";\"General Juan José Ríos\";\"main\"\n\"4005864\";\"General Juan Jose Rios\";\"ascii\"\n\"4005864\";\"Colonia Juan Jose Rios\";\"other\"\n\"4005864\";\"Colonia Juan José Rios\";\"other\"\n\"4005867\";\"General Escobedo\";\"main\"\n\"4005867\";\"Ciudad General Escobedo\";\"other\"\n\"4005867\";\"Gral. Escobedo\";\"other\"\n\"4005870\";\"General Cepeda\";\"main\"\n\"4005937\";\"Garza García\";\"main\"\n\"4005937\";\"Garza Garcia\";\"ascii\"\n\"4006081\";\"Galeana\";\"main\"\n\"4006163\";\"Fresnillo de González Echeverría\";\"main\"\n\"4006163\";\"Fresnillo de Gonzalez Echeverria\";\"ascii\"\n\"4006163\";\"Fresnillo\";\"other\"\n\"4006337\";\"Felipe Carrillo Puerto\";\"main\"\n\"4006380\";\"Etzatlán\";\"main\"\n\"4006380\";\"Etzatlan\";\"ascii\"\n\"4006387\";\"Etchoropo\";\"main\"\n\"4006388\";\"Etchojoa\";\"main\"\n\"4006388\";\"Elchojoa\";\"other\"\n\"4006532\";\"Esqueda\";\"main\"\n\"4006622\";\"Escuinapa de Hidalgo\";\"main\"\n\"4006622\";\"Escuinapa\";\"other\"\n\"4006677\";\"Escalerillas\";\"main\"\n\"4006677\";\"Escalerilla\";\"other\"\n\"4006702\";\"Ensenada\";\"main\"\n\"4006702\";\"Enseada\";\"other\"\n\"4006702\";\"ensenada\";\"other\"\n\"4006702\";\"エンセナーダ\";\"other\"\n\"4006783\";\"Encarnación de Díaz\";\"main\"\n\"4006783\";\"Encarnacion de Diaz\";\"ascii\"\n\"4006783\";\"Ehnkarnas'on-de-Dias\";\"other\"\n\"4006783\";\"Encarnacion\";\"other\"\n\"4006783\";\"Энкарнасьон-де-Диас\";\"other\"\n\"4006804\";\"Empalme Escobedo\";\"main\"\n\"4006804\";\"Empalme Gonzalez\";\"other\"\n\"4006804\";\"Empalme de Gonzalez\";\"other\"\n\"4006804\";\"Empalme de González\";\"other\"\n\"4006806\";\"Empalme\";\"main\"\n\"4006971\";\"El Verde\";\"main\"\n\"4007210\";\"El Tobarito\";\"main\"\n\"4007503\";\"El Sauzal\";\"main\"\n\"4007503\";\"El Sausal\";\"other\"\n\"4007503\";\"El Suazal\";\"other\"\n\"4007554\";\"El Sauz\";\"main\"\n\"4007676\";\"El Salto\";\"main\"\n\"4007676\";\"Ehl'-Sal'to\";\"other\"\n\"4007676\";\"Pueblo Nuevo\";\"other\"\n\"4007676\";\"Эль-Сальто\";\"other\"\n\"4007684\";\"El Salto\";\"main\"\n\"4007812\";\"El Rosario\";\"main\"\n\"4008080\";\"El Refugio\";\"main\"\n\"4008224\";\"El Quince\";\"main\"\n\"4008303\";\"El Pueblito\";\"main\"\n\"4008868\";\"El Oro de Hidalgo\";\"main\"\n\"4008868\";\"El Oro\";\"other\"\n\"4008868\";\"El Oro Hidalgo\";\"other\"\n\"4008868\";\"Oro de Hidalgo\";\"other\"\n\"4009465\";\"El Limón\";\"main\"\n\"4009465\";\"El Limon\";\"ascii\"\n\"4009697\";\"El Grullo\";\"main\"\n\"4009788\";\"El Fuerte\";\"main\"\n\"4009788\";\"Fuerte\";\"other\"\n\"4009984\";\"El Dorado\";\"main\"\n\"4009984\";\"Eldorado\";\"other\"\n\"4010155\";\"El Coyote\";\"main\"\n\"4010155\";\"Coyote\";\"other\"\n\"4010155\";\"El Coyte\";\"other\"\n\"4010260\";\"El Colorado\";\"main\"\n\"4010260\";\"Colorado\";\"other\"\n\"4010273\";\"El Colomo\";\"main\"\n\"4010311\";\"El Coacoyul\";\"main\"\n\"4010311\";\"Coacoyul\";\"other\"\n\"4010589\";\"El Carrizo\";\"main\"\n\"4010897\";\"El Burrión\";\"main\"\n\"4010897\";\"El Burrion\";\"ascii\"\n\"4011119\";\"El Arenal\";\"main\"\n\"4011119\";\"Arenal\";\"other\"\n\"4011469\";\"Puebla\";\"main\"\n\"4011469\";\"Ejido Puebla\";\"other\"\n\"4011469\";\"Puehbla\";\"other\"\n\"4011469\";\"Пуэбла\";\"other\"\n\"4011574\";\"Villa Insurgentes\";\"main\"\n\"4011574\";\"Ejido Insurgentes\";\"other\"\n\"4011587\";\"Hermosillo\";\"main\"\n\"4011587\";\"Ehrmosil'o\";\"other\"\n\"4011587\";\"Ejido Hermosillo\";\"other\"\n\"4011587\";\"Эрмосильо\";\"other\"\n\"4011631\";\"Ejido El Largo\";\"main\"\n\"4011703\";\"Ecuandureo\";\"main\"\n\"4011743\";\"Durango\";\"main\"\n\"4011743\";\"Ciudad de Durango\";\"other\"\n\"4011743\";\"Durango City\";\"other\"\n\"4011743\";\"Victoria de Durango\";\"other\"\n\"4011743\";\"dulang-go\";\"other\"\n\"4011743\";\"Дуранго\";\"other\"\n\"4011743\";\"두랑고\";\"other\"\n\"4011755\";\"Duarte\";\"main\"\n\"4011873\";\"Doctor Arroyo\";\"main\"\n\"4012045\";\"Degollado\";\"main\"\n\"4012080\";\"Cuyutlán\";\"main\"\n\"4012080\";\"Cuyutlan\";\"ascii\"\n\"4012080\";\"San Miguel Cuyutlan\";\"other\"\n\"4012080\";\"San Miguel Cuyutlán\";\"other\"\n\"4012085\";\"Cutzamalá de Pinzón\";\"main\"\n\"4012085\";\"Cutzamala de Pinzon\";\"ascii\"\n\"4012085\";\"Cutzamala\";\"other\"\n\"4012143\";\"Cúmpas\";\"main\"\n\"4012143\";\"Cumpas\";\"ascii\"\n\"4012173\";\"Culiacancito\";\"main\"\n\"4012176\";\"Culiacán\";\"main\"\n\"4012176\";\"Culiacan\";\"ascii\"\n\"4012176\";\"Cuilacan\";\"other\"\n\"4012176\";\"Kuliakan\";\"other\"\n\"4012176\";\"kuriakan\";\"other\"\n\"4012176\";\"Кулиакан\";\"other\"\n\"4012176\";\"クリアカン\";\"other\"\n\"4012194\";\"Cuitzeo del Porvenir\";\"main\"\n\"4012194\";\"Cuitzeo\";\"other\"\n\"4012196\";\"Cuitzeo\";\"main\"\n\"4012202\";\"Cuitareo\";\"main\"\n\"4012341\";\"Cuerámaro\";\"main\"\n\"4012341\";\"Cueramaro\";\"ascii\"\n\"4012341\";\"Gueramaro\";\"other\"\n\"4012344\";\"Cuencamé\";\"main\"\n\"4012344\";\"Cuencame\";\"ascii\"\n\"4012344\";\"Cucencame\";\"other\"\n\"4012344\";\"Cucencamé\";\"other\"\n\"4012344\";\"Cuencame de Ceniceros\";\"other\"\n\"4012344\";\"Cuencamé de Ceniceros\";\"other\"\n\"4012344\";\"Villa de Cuencame\";\"other\"\n\"4012344\";\"Villa de Cuencamé\";\"other\"\n\"4012406\";\"Cuauhtémoc\";\"main\"\n\"4012406\";\"Cuauhtemoc\";\"ascii\"\n\"4012406\";\"Ciudad Cuauhtemoc\";\"other\"\n\"4012406\";\"Ciudad Cuauhtémoc\";\"other\"\n\"4012406\";\"Cuahtemoc\";\"other\"\n\"4012406\";\"San Antonio de los Arenales\";\"other\"\n\"4012408\";\"Cuauhtémoc\";\"main\"\n\"4012408\";\"Cuauhtemoc\";\"ascii\"\n\"4012466\";\"Cuanajo\";\"main\"\n\"4012559\";\"El Crucero de Santa María\";\"main\"\n\"4012559\";\"El Crucero de Santa Maria\";\"ascii\"\n\"4012593\";\"Creel\";\"main\"\n\"4012606\";\"Coyula\";\"main\"\n\"4012607\";\"Coyuca de Catalán\";\"main\"\n\"4012607\";\"Coyuca de Catalan\";\"ascii\"\n\"4012607\";\"Coyuca\";\"other\"\n\"4012608\";\"Coyuca de Benítez\";\"main\"\n\"4012608\";\"Coyuca de Benitez\";\"ascii\"\n\"4012608\";\"Coyuca\";\"other\"\n\"4012608\";\"Tixtlacingo\";\"other\"\n\"4012685\";\"Cotija de la Paz\";\"main\"\n\"4012685\";\"Cotija\";\"other\"\n\"4012693\";\"Costa Rica\";\"main\"\n\"4012693\";\"Kosta-Rika\";\"other\"\n\"4012693\";\"Villa de Costa Rica\";\"other\"\n\"4012693\";\"Коста-Рика\";\"other\"\n\"4012699\";\"Cosío\";\"main\"\n\"4012699\";\"Cosio\";\"ascii\"\n\"4012707\";\"Cosalá\";\"main\"\n\"4012707\";\"Cosala\";\"ascii\"\n\"4012721\";\"Cortazar\";\"main\"\n\"4012721\";\"Kortasar\";\"other\"\n\"4012721\";\"Villa Cortazar\";\"other\"\n\"4012721\";\"Кортасар\";\"other\"\n\"4012842\";\"Coroneo\";\"main\"\n\"4012905\";\"Coquimatlán\";\"main\"\n\"4012905\";\"Coquimatlan\";\"ascii\"\n\"4012917\";\"Copándaro de Galeana\";\"main\"\n\"4012917\";\"Copandaro de Galeana\";\"ascii\"\n\"4012917\";\"Copandaro\";\"other\"\n\"4012917\";\"Copándaro\";\"other\"\n\"4012957\";\"Contepec\";\"main\"\n\"4012966\";\"Constancia\";\"main\"\n\"4013024\";\"Concordia\";\"main\"\n\"4013039\";\"Concepción del Oro\";\"main\"\n\"4013039\";\"Concepcion del Oro\";\"ascii\"\n\"4013045\";\"Concepción de Buenos Aires\";\"main\"\n\"4013045\";\"Concepcion de Buenos Aires\";\"ascii\"\n\"4013076\";\"Compuertas\";\"main\"\n\"4013085\";\"Compostela\";\"main\"\n\"4013094\";\"Comonfort\";\"main\"\n\"4013094\";\"Chamacuero de Comonfort\";\"other\"\n\"4013094\";\"Komonfort\";\"other\"\n\"4013094\";\"Villa Comonfort\";\"other\"\n\"4013094\";\"Комонфорт\";\"other\"\n\"4013130\";\"Comala\";\"main\"\n\"4013131\";\"Comachuén\";\"main\"\n\"4013131\";\"Comachuen\";\"ascii\"\n\"4013136\";\"Colotlán\";\"main\"\n\"4013136\";\"Colotlan\";\"ascii\"\n\"4013136\";\"Cololan\";\"other\"\n\"4013141\";\"Colorines\";\"main\"\n\"4013292\";\"Colonia Vicente Guerrero\";\"main\"\n\"4013292\";\"Vicente Guerrero\";\"other\"\n\"4013377\";\"Colonia Lazaro Cárdenas\";\"main\"\n\"4013377\";\"Colonia Lazaro Cardenas\";\"ascii\"\n\"4013487\";\"Colón\";\"main\"\n\"4013487\";\"Colon\";\"ascii\"\n\"4013516\";\"Colima\";\"main\"\n\"4013516\";\"Kolima\";\"other\"\n\"4013516\";\"Колима\";\"other\"\n\"4013522\";\"Cojumatlán de Régules\";\"main\"\n\"4013522\";\"Cojumatlan de Regules\";\"ascii\"\n\"4013522\";\"Cojumatlan\";\"other\"\n\"4013522\";\"Cojumatlán\";\"other\"\n\"4013567\";\"Cofradía\";\"main\"\n\"4013567\";\"Cofradia\";\"ascii\"\n\"4013568\";\"Coeneo\";\"main\"\n\"4013568\";\"Coeneo de la Libertad\";\"other\"\n\"4013579\";\"Cocula\";\"main\"\n\"4013593\";\"Cócorit\";\"main\"\n\"4013593\";\"Cocorit\";\"ascii\"\n\"4013669\";\"Coalcomán de Matamoros\";\"main\"\n\"4013669\";\"Coalcoman de Matamoros\";\"ascii\"\n\"4013669\";\"Coalcoman\";\"other\"\n\"4013669\";\"Coalcomán\";\"other\"\n\"4013669\";\"Matamoros\";\"other\"\n\"4013679\";\"Coahuayana\";\"main\"\n\"4013704\";\"Ciudad Obregón\";\"main\"\n\"4013704\";\"Ciudad Obregon\";\"ascii\"\n\"4013704\";\"Cajeme\";\"other\"\n\"4013704\";\"Cd Obregon\";\"other\"\n\"4013704\";\"Cd Obregón\";\"other\"\n\"4013704\";\"Cd. Obregon\";\"other\"\n\"4013704\";\"Cd. Obregón\";\"other\"\n\"4013704\";\"Obregon\";\"other\"\n\"4013704\";\"S'judad-Obregon\";\"other\"\n\"4013704\";\"Сьюдад-Обрегон\";\"other\"\n\"4013705\";\"Ciudad Manuel Doblado\";\"main\"\n\"4013705\";\"Manuel Doblado\";\"other\"\n\"4013706\";\"Ciudad Lerdo\";\"main\"\n\"4013706\";\"Lerdo\";\"other\"\n\"4013708\";\"Ciudad Juárez\";\"main\"\n\"4013708\";\"Ciudad Juarez\";\"ascii\"\n\"4013708\";\"Chuaresas\";\"other\"\n\"4013708\";\"El Paso del Norte\";\"other\"\n\"4013708\";\"Juarez\";\"other\"\n\"4013708\";\"Juárez\";\"other\"\n\"4013708\";\"Lungsod Juarez\";\"other\"\n\"4013708\";\"Lungsod Juárez\";\"other\"\n\"4013708\";\"Paso del Norte\";\"other\"\n\"4013708\";\"S'judad-Khuares\";\"other\"\n\"4013708\";\"Siudad Chuaresas\";\"other\"\n\"4013708\";\"Сьюдад-Хуарес\";\"other\"\n\"4013708\";\"シウダー・フアレス\";\"other\"\n\"4013712\";\"Ciudad Hidalgo\";\"main\"\n\"4013712\";\"Hidalgo\";\"other\"\n\"4013712\";\"S'judad-Idal'go\";\"other\"\n\"4013712\";\"Taximaroa\";\"other\"\n\"4013712\";\"Villa Hidalgo\";\"other\"\n\"4013712\";\"Сьюдад-Идальго\";\"other\"\n\"4013714\";\"Ciudad Guzmán\";\"main\"\n\"4013714\";\"Ciudad Guzman\";\"ascii\"\n\"4013714\";\"Cd Guzman\";\"other\"\n\"4013714\";\"Cd Guzmán\";\"other\"\n\"4013714\";\"Cd. Guzman\";\"other\"\n\"4013714\";\"Cd. Guzmán\";\"other\"\n\"4013714\";\"S'judad-Gusman\";\"other\"\n\"4013714\";\"Сьюдад-Гусман\";\"other\"\n\"4013720\";\"Ciudad Delicias\";\"main\"\n\"4013720\";\"Delicias\";\"other\"\n\"4013720\";\"Delis'jas\";\"other\"\n\"4013720\";\"Las Delicias\";\"other\"\n\"4013720\";\"Делисьяс\";\"other\"\n\"4013723\";\"Ciudad Constitución\";\"main\"\n\"4013723\";\"Ciudad Constitucion\";\"ascii\"\n\"4013723\";\"Constitucion\";\"other\"\n\"4013723\";\"Constitución\";\"other\"\n\"4013723\";\"Villa Constitucion\";\"other\"\n\"4013723\";\"Villa Constitución\";\"other\"\n\"4013724\";\"Ciudad Camargo\";\"main\"\n\"4013724\";\"Camargo\";\"other\"\n\"4013724\";\"Santa Rosalia\";\"other\"\n\"4013724\";\"Santa Rosalía\";\"other\"\n\"4013726\";\"Ciudad Anáhuac\";\"main\"\n\"4013726\";\"Ciudad Anahuac\";\"ascii\"\n\"4013726\";\"Anahuac\";\"other\"\n\"4013726\";\"Anáhuac\";\"other\"\n\"4013727\";\"Ciudad Altamirano\";\"main\"\n\"4013727\";\"Pungarabato\";\"other\"\n\"4013727\";\"S'judad-Al'tamirano\";\"other\"\n\"4013727\";\"Сьюдад-Альтамирано\";\"other\"\n\"4013728\";\"Ciudad Acuña\";\"main\"\n\"4013728\";\"Ciudad Acuna\";\"ascii\"\n\"4013728\";\"Acuna\";\"other\"\n\"4013728\";\"Acuña\";\"other\"\n\"4013728\";\"Las Vacas\";\"other\"\n\"4013728\";\"Villa Acuna\";\"other\"\n\"4013728\";\"Villa Acuña\";\"other\"\n\"4013892\";\"Ciénega de Flores\";\"main\"\n\"4013892\";\"Cienega de Flores\";\"ascii\"\n\"4013892\";\"Cienaga de Flores\";\"other\"\n\"4013892\";\"Ciénaga de Flores\";\"other\"\n\"4013966\";\"Churintzio\";\"main\"\n\"4014109\";\"Choix\";\"main\"\n\"4014109\";\"Villa Choix\";\"other\"\n\"4014178\";\"Chiquilistlán\";\"main\"\n\"4014178\";\"Chiquilistlan\";\"ascii\"\n\"4014296\";\"Chilchota\";\"main\"\n\"4014338\";\"Chihuahua\";\"main\"\n\"4014338\";\"Chiuaua\";\"other\"\n\"4014338\";\"Cihuahua\";\"other\"\n\"4014338\";\"Ciuaua\";\"other\"\n\"4014338\";\"chiwawa\";\"other\"\n\"4014338\";\"Čihuahua\";\"other\"\n\"4014338\";\"Čiuaua\";\"other\"\n\"4014338\";\"Чиуауа\";\"other\"\n\"4014338\";\"チワワ\";\"other\"\n\"4014409\";\"Cherán\";\"main\"\n\"4014409\";\"Cheran\";\"ascii\"\n\"4014420\";\"Chavinda\";\"main\"\n\"4014420\";\"Villa Chavinda\";\"other\"\n\"4014450\";\"Charo\";\"main\"\n\"4014450\";\"Chara\";\"other\"\n\"4014501\";\"Charcas\";\"main\"\n\"4014508\";\"Charapán\";\"main\"\n\"4014508\";\"Charapan\";\"ascii\"\n\"4014508\";\"Charapaco\";\"other\"\n\"4014553\";\"Chapala\";\"main\"\n\"4014603\";\"Chalchihuites\";\"main\"\n\"4014603\";\"Calchihuites\";\"other\"\n\"4014740\";\"Cerro Gordo\";\"main\"\n\"4014795\";\"Cerritos\";\"main\"\n\"4014842\";\"Cerano\";\"main\"\n\"4014875\";\"Celaya\";\"main\"\n\"4015022\";\"Castaños\";\"main\"\n\"4015022\";\"Castanos\";\"ascii\"\n\"4015040\";\"Casimiro Castillo\";\"main\"\n\"4015040\";\"Resolana\";\"other\"\n\"4015076\";\"Casas Grandes\";\"main\"\n\"4015471\";\"Carácuaro\";\"main\"\n\"4015471\";\"Caracuaro\";\"ascii\"\n\"4015471\";\"Caracuaro de Morelos\";\"other\"\n\"4015471\";\"Carácuaro de Morelos\";\"other\"\n\"4015520\";\"Capula\";\"main\"\n\"4015546\";\"Capilla de Guadalupe\";\"main\"\n\"4015566\";\"Capácuaro\";\"main\"\n\"4015566\";\"Capacuaro\";\"ascii\"\n\"4015633\";\"Cañitas de Felipe Pescador\";\"main\"\n\"4015633\";\"Canitas de Felipe Pescador\";\"ascii\"\n\"4015633\";\"Canitas\";\"other\"\n\"4015633\";\"Cañitas\";\"other\"\n\"4015633\";\"Felipe Pescador\";\"other\"\n\"4015683\";\"Canatlán\";\"main\"\n\"4015683\";\"Canatlan\";\"ascii\"\n\"4015700\";\"Cananea\";\"main\"\n\"4015700\";\"Kananea\";\"other\"\n\"4015700\";\"Кананеа\";\"other\"\n\"4015842\";\"Campo Sesenta\";\"main\"\n\"4015938\";\"Campo Gobierno\";\"main\"\n\"4015938\";\"Villa Juarez\";\"other\"\n\"4015938\";\"Villa Juárez\";\"other\"\n\"4016086\";\"Calvillo\";\"main\"\n\"4016132\";\"Calera Víctor Rosales\";\"main\"\n\"4016132\";\"Calera Victor Rosales\";\"ascii\"\n\"4016132\";\"Calera\";\"other\"\n\"4016132\";\"Victor Rosales\";\"other\"\n\"4016272\";\"Cajititlán\";\"main\"\n\"4016272\";\"Cajititlan\";\"ascii\"\n\"4016485\";\"Bustamante\";\"main\"\n\"4016485\";\"Bustamente\";\"other\"\n\"4016485\";\"Estacion Bustamante\";\"other\"\n\"4016485\";\"Estación Bustamante\";\"other\"\n\"4016589\";\"Buenos Aires\";\"main\"\n\"4016599\";\"Buenavista Tomatlán\";\"main\"\n\"4016599\";\"Buenavista Tomatlan\";\"ascii\"\n\"4016599\";\"Buenavista\";\"other\"\n\"4016599\";\"Tomatlan\";\"other\"\n\"4016722\";\"Buenaventura\";\"main\"\n\"4016722\";\"San Buenaventura\";\"other\"\n\"4016734\";\"Bucerías\";\"main\"\n\"4016734\";\"Bucerias\";\"ascii\"\n\"4016734\";\"Buserias\";\"other\"\n\"4016756\";\"Briseñas\";\"main\"\n\"4016756\";\"Brisenas\";\"ascii\"\n\"4016756\";\"Brisenas de Matamoros\";\"other\"\n\"4016756\";\"Briseñas de Matamoros\";\"other\"\n\"4017144\";\"Bermejillo\";\"main\"\n\"4017144\";\"Bermehillo\";\"other\"\n\"4017152\";\"Benjamín Hill\";\"main\"\n\"4017152\";\"Benjamin Hill\";\"ascii\"\n\"4017152\";\"Benjamin Hil\";\"other\"\n\"4017154\";\"Benito Juárez\";\"main\"\n\"4017154\";\"Benito Juarez\";\"ascii\"\n\"4017164\";\"Benito Juárez\";\"main\"\n\"4017164\";\"Benito Juarez\";\"ascii\"\n\"4017199\";\"Bellavista\";\"main\"\n\"4017546\";\"Bañón\";\"main\"\n\"4017546\";\"Banon\";\"ascii\"\n\"4017728\";\"Bahía Kino\";\"main\"\n\"4017728\";\"Bahia Kino\";\"ascii\"\n\"4017728\";\"Kino\";\"other\"\n\"4017739\";\"Bagojo\";\"main\"\n\"4017743\";\"Badiraguato\";\"main\"\n\"4017743\";\"Badiriguato\";\"other\"\n\"4017758\";\"Bácum\";\"main\"\n\"4017758\";\"Bacum\";\"ascii\"\n\"4017924\";\"Ayutla\";\"main\"\n\"4017957\";\"Autlán de Navarro\";\"main\"\n\"4017957\";\"Autlan de Navarro\";\"ascii\"\n\"4017957\";\"Autlan\";\"other\"\n\"4017957\";\"Autlán\";\"other\"\n\"4017984\";\"Atoyac de Alvarez\";\"main\"\n\"4017984\";\"Atojak-de-Al'vares\";\"other\"\n\"4017984\";\"Atoyac\";\"other\"\n\"4017984\";\"Атояк-де-Альварес\";\"other\"\n\"4017987\";\"Atoyac\";\"main\"\n\"4017990\";\"Atotonilquillo\";\"main\"\n\"4017992\";\"Atotonilco el Alto\";\"main\"\n\"4017992\";\"Atotonilco\";\"other\"\n\"4018027\";\"Atequiza\";\"main\"\n\"4018100\";\"Asientos\";\"main\"\n\"4018109\";\"Ascención\";\"main\"\n\"4018109\";\"Ascencion\";\"ascii\"\n\"4018127\";\"Arteaga\";\"main\"\n\"4018127\";\"Artegia\";\"other\"\n\"4018128\";\"Arteaga\";\"main\"\n\"4018227\";\"Armería\";\"main\"\n\"4018227\";\"Armeria\";\"ascii\"\n\"4018254\";\"Ario de Rosales\";\"main\"\n\"4018254\";\"Ario\";\"other\"\n\"4018255\";\"Ario de Rayón\";\"main\"\n\"4018255\";\"Ario de Rayon\";\"ascii\"\n\"4018255\";\"Ario\";\"other\"\n\"4018255\";\"Ario Santa Monica\";\"other\"\n\"4018255\";\"Ario Santa Mónica\";\"other\"\n\"4018320\";\"Arcelia\";\"main\"\n\"4018348\";\"Arandas\";\"main\"\n\"4018380\";\"Apozol\";\"main\"\n\"4018390\";\"Apodaca\";\"main\"\n\"4018390\";\"Apodaka\";\"other\"\n\"4018390\";\"Аподака\";\"other\"\n\"4018400\";\"Apatzingán de la Constitución\";\"main\"\n\"4018400\";\"Apatzingan de la Constitucion\";\"ascii\"\n\"4018400\";\"Apatzingan\";\"other\"\n\"4018403\";\"Apaseo el Grande\";\"main\"\n\"4018403\";\"Apaseo\";\"other\"\n\"4018403\";\"Apaseo-ehl'-Grande\";\"other\"\n\"4018403\";\"Villa Apaseo\";\"other\"\n\"4018403\";\"Апасео-эль-Гранде\";\"other\"\n\"4018404\";\"Apaseo el Alto\";\"main\"\n\"4018404\";\"Apaseo\";\"other\"\n\"4018404\";\"Apaseo-ehl'-Al'to\";\"other\"\n\"4018404\";\"Апасео-эль-Альто\";\"other\"\n\"4018430\";\"Antunes\";\"main\"\n\"4018430\";\"Antunez\";\"other\"\n\"4018430\";\"Antúnez\";\"other\"\n\"4018430\";\"Atunez\";\"other\"\n\"4018435\";\"Antonio Escobedo\";\"main\"\n\"4018499\";\"Angostura\";\"main\"\n\"4018518\";\"Angamacutiro de la Unión\";\"main\"\n\"4018518\";\"Angamacutiro de la Union\";\"ascii\"\n\"4018518\";\"Angamacutiro\";\"other\"\n\"4018519\";\"Angahuán\";\"main\"\n\"4018519\";\"Angahuan\";\"ascii\"\n\"4018543\";\"Anáhuac\";\"main\"\n\"4018543\";\"Anahuac\";\"ascii\"\n\"4018543\";\"Colonia Anahuac\";\"other\"\n\"4018543\";\"Colonia Anáhuac\";\"other\"\n\"4018582\";\"Ameca\";\"main\"\n\"4018584\";\"Amealco\";\"main\"\n\"4018592\";\"Amatlán de Cañas\";\"main\"\n\"4018592\";\"Amatlan de Canas\";\"ascii\"\n\"4018597\";\"Amatitán\";\"main\"\n\"4018597\";\"Amatitan\";\"ascii\"\n\"4018601\";\"Amascala\";\"main\"\n\"4018625\";\"Amanalco de Becerra\";\"main\"\n\"4018648\";\"Álvaro Obregón\";\"main\"\n\"4018648\";\"Alvaro Obregon\";\"ascii\"\n\"4018700\";\"Altar\";\"main\"\n\"4018737\";\"Almoloya\";\"main\"\n\"4018761\";\"Allende\";\"main\"\n\"4018762\";\"Allende\";\"main\"\n\"4018835\";\"Aldama\";\"main\"\n\"4018835\";\"Jaripitio\";\"other\"\n\"4018835\";\"Jaripito\";\"other\"\n\"4018904\";\"Álamos\";\"main\"\n\"4018904\";\"Alamos\";\"ascii\"\n\"4019039\";\"Ajuchitlán del Progreso\";\"main\"\n\"4019039\";\"Ajuchitlan del Progreso\";\"ascii\"\n\"4019039\";\"Ajuchitlan\";\"other\"\n\"4019042\";\"Ajuchitlán\";\"main\"\n\"4019042\";\"Ajuchitlan\";\"ascii\"\n\"4019042\";\"Juchitan\";\"other\"\n\"4019042\";\"Juchitlan\";\"other\"\n\"4019042\";\"Juchitlán\";\"other\"\n\"4019042\";\"Juchitán\";\"other\"\n\"4019042\";\"San Jose de Gracia Ajuchitlan\";\"other\"\n\"4019042\";\"San José de Gracia Ajuchitlán\";\"other\"\n\"4019054\";\"Ajijic\";\"main\"\n\"4019054\";\"Ajijoy\";\"other\"\n\"4019082\";\"Ahualulco de Mercado\";\"main\"\n\"4019082\";\"Ahualulco\";\"other\"\n\"4019085\";\"Ahualulco\";\"main\"\n\"4019089\";\"Ahuacatlán\";\"main\"\n\"4019089\";\"Ahuacatlan\";\"ascii\"\n\"4019098\";\"Ahome\";\"main\"\n\"4019098\";\"Ahoma\";\"other\"\n\"4019152\";\"Aguililla\";\"main\"\n\"4019152\";\"Aguililla de Iturbide\";\"other\"\n\"4019219\";\"Agua Verde\";\"main\"\n\"4019233\";\"Aguascalientes\";\"main\"\n\"4019233\";\"Aguaskal'entes\";\"other\"\n\"4019233\";\"Ciudad de Aguascalientes\";\"other\"\n\"4019233\";\"Агуаскальентес\";\"other\"\n\"4019260\";\"Agua Prieta\";\"main\"\n\"4019727\";\"Adolfo Ruíz Cortínes\";\"main\"\n\"4019727\";\"Adolfo Ruiz Cortines\";\"ascii\"\n\"4019727\";\"Adolfo Ruiz Cortinez\";\"other\"\n\"4019727\";\"Adolfo Ruiz Cortínez\";\"other\"\n\"4019727\";\"Ruiz Cortines\";\"other\"\n\"4019727\";\"Ruiz Cortines Numero Tres\";\"other\"\n\"4019727\";\"Ruíz Cortines Número Tres\";\"other\"\n\"4019757\";\"Acuitzio del Canje\";\"main\"\n\"4019757\";\"Acuitzio\";\"other\"\n\"4019807\";\"Acatic\";\"main\"\n\"4019819\";\"Acaponeta\";\"main\"\n\"4019827\";\"Acámbaro\";\"main\"\n\"4019827\";\"Acambaro\";\"ascii\"\n\"4019827\";\"Akambaro\";\"other\"\n\"4019827\";\"Акамбаро\";\"other\"\n\"4019869\";\"Abasolo\";\"main\"\n\"4019869\";\"Cuitzeo de Abasolo\";\"other\"\n\"4019869\";\"Cuitzeo de Hidalgo\";\"other\"\n\"4019869\";\"Villa Abasolo\";\"other\"\n\"4019869\";\"Абасоло\";\"other\"\n\"4020386\";\"Juárez\";\"main\"\n\"4020386\";\"Juarez\";\"ascii\"\n\"4020480\";\"La Presa\";\"main\"\n\"4021223\";\"San José de Gracia\";\"main\"\n\"4021223\";\"San Jose de Gracia\";\"ascii\"\n\"4021449\";\"Villa Juárez\";\"main\"\n\"4021449\";\"Villa Juarez\";\"ascii\"\n\"4022970\";\"Victoria\";\"main\"\n\"4022983\";\"Doctor Mora\";\"main\"\n\"4022983\";\"Charcas\";\"other\"\n\"4022983\";\"Villa Doctor Mora\";\"other\"\n\"4023117\";\"Dolores Hidalgo\";\"main\"\n\"4023117\";\"Ciudad de Dolores Hidalgo\";\"other\"\n\"4023835\";\"Maravatío del Encinal\";\"main\"\n\"4023835\";\"Maravatio del Encinal\";\"ascii\"\n\"4023835\";\"Huerta de Maravatio\";\"other\"\n\"4023835\";\"Huerta de Maravatío\";\"other\"\n\"4023835\";\"Maravatio\";\"other\"\n\"4023835\";\"Maravatío\";\"other\"\n\"4024263\";\"C. Militar Sarabia\";\"main\"\n\"4024263\";\"Sarabia\";\"other\"\n\"4024597\";\"Nuevo México\";\"main\"\n\"4024597\";\"Nuevo Mexico\";\"ascii\"\n\"4024597\";\"Colonias de Nuevo Mexico\";\"other\"\n\"4024597\";\"Colonias de Nuevo México\";\"other\"\n\"4024597\";\"Las Colonias\";\"other\"\n\"4024597\";\"Nuehvo-Meksiko\";\"other\"\n\"4024597\";\"Нуэво-Мексико\";\"other\"\n\"4024861\";\"La Ermita\";\"main\"\n\"4025093\";\"Irimbo\";\"main\"\n\"4026075\";\"Las Guacamayas\";\"main\"\n\"4026075\";\"Guacamayas\";\"other\"\n\"4026082\";\"Lázaro Cárdenas\";\"main\"\n\"4026082\";\"Lazaro Cardenas\";\"ascii\"\n\"4026082\";\"Ciudad Lazaro Cardenas\";\"other\"\n\"4026082\";\"Ciudad Lázaro Cárdenas\";\"other\"\n\"4026082\";\"Melchor Ocampo\";\"other\"\n\"4026082\";\"Melchor Ocampo del Balsas\";\"other\"\n\"6618821\";\"San Juan De Los Platanos\";\"main\"\n\"6620235\";\"francisco villa\";\"main\"\n\"6690612\";\"Huapinol\";\"main\"\n\"6692163\";\"Zapopan2\";\"main\"\n\"7280708\";\"Colonia del Valle\";\"main\"\n\"7280708\";\"Col del valle\";\"other\"\n\"7280708\";\"Col. del Valle\";\"other\"\n\"7280708\";\"del Valle\";\"other\"\n\"7280711\";\"Colonia Lindavista\";\"main\"\n\"7280711\";\"Col Lindavista\";\"other\"\n\"7280711\";\"Col. Lindavista\";\"other\"\n\"7280711\";\"Lindavista\";\"other\"\n\"7280712\";\"Col. Bosques de las Lomas\";\"main\"\n\"7280712\";\"Bosques de las Lomas\";\"other\"\n\"7280712\";\"Col Bosques de las Lomas\";\"other\"\n\"7280712\";\"Col. Bosques\";\"other\"\n\"7280712\";\"Colonia Bosques\";\"other\"\n\"7280712\";\"Colonia Bosques de las Lomas\";\"other\"\n\"7280718\";\"Colonia Nativitas\";\"main\"\n\"7280718\";\"Col Nativitas\";\"other\"\n\"7280718\";\"Col. Nativitas\";\"other\"\n\"7280718\";\"Nativitas\";\"other\"\n\"1222396\";\"Kuah\";\"main\"\n\"1222396\";\"Kuan\";\"other\"\n\"1222396\";\"Kwah\";\"other\"\n\"1222396\";\"Langkawi\";\"other\"\n\"1732602\";\"Jerantut\";\"main\"\n\"1732663\";\"Raub\";\"main\"\n\"1732687\";\"Batu Pahat\";\"main\"\n\"1732687\";\"Bandar Penggaram\";\"other\"\n\"1732687\";\"Distrik Batu Pahat\";\"other\"\n\"1732698\";\"Parit Raja\";\"main\"\n\"1732706\";\"Pekan Nanas\";\"main\"\n\"1732706\";\"Pekan Nenas\";\"other\"\n\"1732711\";\"Pontian Kecil\";\"main\"\n\"1732711\";\"Pontian\";\"other\"\n\"1732711\";\"Pontian Kechil\";\"other\"\n\"1732721\";\"Kampung Pasir Gudang\";\"main\"\n\"1732738\";\"Kota Tinggi\";\"main\"\n\"1732738\";\"Kota Tuiggi\";\"other\"\n\"1732741\";\"Senai\";\"main\"\n\"1732741\";\"Сенаи\";\"other\"\n\"1732742\";\"Kulai\";\"main\"\n\"1732742\";\"Kuli\";\"other\"\n\"1732745\";\"Sekudai\";\"main\"\n\"1732745\";\"Kampong Skudai\";\"other\"\n\"1732745\";\"Kangkar Skudai\";\"other\"\n\"1732745\";\"Scudai\";\"other\"\n\"1732745\";\"Skudai\";\"other\"\n\"1732752\";\"Johor Bahru\";\"main\"\n\"1732752\";\"Baru\";\"other\"\n\"1732752\";\"Bharu\";\"other\"\n\"1732752\";\"Jahore Bahru\";\"other\"\n\"1732752\";\"Johor\";\"other\"\n\"1732752\";\"Johor Baharu\";\"other\"\n\"1732752\";\"Johore\";\"other\"\n\"1732752\";\"Johore Bahru\";\"other\"\n\"1732752\";\"Johore Baru\";\"other\"\n\"1732752\";\"Johore Bharu\";\"other\"\n\"1732752\";\"dzhokhor-bakhru\";\"other\"\n\"1732752\";\"johorubaru\";\"other\"\n\"1732752\";\"jwhwr bahrw\";\"other\"\n\"1732752\";\"xin shan\";\"other\"\n\"1732752\";\"Джохор-Бахру\";\"other\"\n\"1732752\";\"جوهور باهرو\";\"other\"\n\"1732752\";\"ジョホールバル\";\"other\"\n\"1732752\";\"新山\";\"other\"\n\"1732811\";\"Keluang\";\"main\"\n\"1732811\";\"Kluang\";\"other\"\n\"1732814\";\"Yong Peng\";\"main\"\n\"1732826\";\"Mersing\";\"main\"\n\"1732846\";\"Segamat\";\"main\"\n\"1732857\";\"Tangkak\";\"main\"\n\"1732857\";\"Tangkah\";\"other\"\n\"1732869\";\"Muar\";\"main\"\n\"1732869\";\"Bandar Maharani\";\"other\"\n\"1732869\";\"ma po\";\"other\"\n\"1732869\";\"Муар\";\"other\"\n\"1732869\";\"麻坡\";\"other\"\n\"1732871\";\"Bakri\";\"main\"\n\"1732871\";\"Bukit Bakri\";\"other\"\n\"1732871\";\"Бакри\";\"other\"\n\"1732877\";\"Labis\";\"main\"\n\"1732884\";\"Caah\";\"main\"\n\"1732884\";\"Chaah\";\"other\"\n\"1732884\";\"Kangkar Chaah\";\"other\"\n\"1732891\";\"Kuala Selangor\";\"main\"\n\"1732891\";\"Kuala-Selangor\";\"other\"\n\"1732891\";\"Selangor\";\"other\"\n\"1732891\";\"Куала-Селангор\";\"other\"\n\"1732892\";\"Batang Berjuntai\";\"main\"\n\"1732892\";\"Betang Berjuntai\";\"other\"\n\"1732893\";\"Batu Arang\";\"main\"\n\"1732893\";\"Arang\";\"other\"\n\"1732903\";\"Shah Alam\";\"main\"\n\"1732903\";\"Shakh-Alam\";\"other\"\n\"1732903\";\"Шах-Алам\";\"other\"\n\"1732905\";\"Klang\";\"main\"\n\"1732905\";\"Kelang\";\"other\"\n\"1732945\";\"Cukai\";\"main\"\n\"1732945\";\"Chukai\";\"other\"\n\"1732945\";\"Chukei\";\"other\"\n\"1732945\";\"Mokuan\";\"other\"\n\"1732945\";\"Telor Mokuan\";\"other\"\n\"1733023\";\"Kuala Lipis\";\"main\"\n\"1733353\";\"Papar\";\"main\"\n\"1733432\";\"Kota Kinabalu\";\"main\"\n\"1733432\";\"Jesselton\";\"other\"\n\"1733432\";\"Kinabalu\";\"other\"\n\"1733432\";\"Kota-Kinabalu\";\"other\"\n\"1733432\";\"kotakinabaru\";\"other\"\n\"1733432\";\"kwta kynabalw\";\"other\"\n\"1733432\";\"ya bi\";\"other\"\n\"1733432\";\"Кота-Кинабалу\";\"other\"\n\"1733432\";\"کوتا کینابالو\";\"other\"\n\"1733432\";\"コタキナバル\";\"other\"\n\"1733432\";\"亞庇\";\"other\"\n\"1733438\";\"Donggongon\";\"main\"\n\"1733440\";\"Putatan\";\"main\"\n\"1733440\";\"Kampong Putatan\";\"other\"\n\"1733440\";\"Putatan Station\";\"other\"\n\"1733449\";\"Kinarut\";\"main\"\n\"1733449\";\"Kinarut Station\";\"other\"\n\"1733502\";\"Ranau\";\"main\"\n\"1733697\";\"Semporna\";\"main\"\n\"1733697\";\"Selangor\";\"other\"\n\"1733697\";\"Semporna Settlement\";\"other\"\n\"1733697\";\"Sempurna\";\"other\"\n\"1733697\";\"Simporan\";\"other\"\n\"1733697\";\"Simporna\";\"other\"\n\"1733697\";\"Селангор\";\"other\"\n\"1733782\";\"Victoria\";\"main\"\n\"1733782\";\"Labuan\";\"other\"\n\"1733782\";\"Victoria Town\";\"other\"\n\"1733782\";\"Viktorija\";\"other\"\n\"1733782\";\"Виктория\";\"other\"\n\"1733874\";\"Beaufort\";\"main\"\n\"1733953\";\"Lahad Datu\";\"main\"\n\"1733953\";\"Lahad Datu Town\";\"other\"\n\"1734052\";\"Sandakan\";\"main\"\n\"1734052\";\"Elopura\";\"other\"\n\"1734052\";\"Samdakan\";\"other\"\n\"1734052\";\"Sandakan Town\";\"other\"\n\"1734052\";\"sandakan\";\"other\"\n\"1734052\";\"shan da gen\";\"other\"\n\"1734052\";\"Сандакан\";\"other\"\n\"1734052\";\"サンダカン\";\"other\"\n\"1734052\";\"山打根\";\"other\"\n\"1734098\";\"Keningau\";\"main\"\n\"1734098\";\"Kaningow\";\"other\"\n\"1734098\";\"Kengingan\";\"other\"\n\"1734199\";\"Tawau\";\"main\"\n\"1734199\";\"Tawao\";\"other\"\n\"1734313\";\"Paka\";\"main\"\n\"1734313\";\"Kampong Paka\";\"other\"\n\"1734313\";\"Packa\";\"other\"\n\"1734313\";\"Pak\";\"other\"\n\"1734313\";\"Пак\";\"other\"\n\"1734316\";\"Kertih\";\"main\"\n\"1734316\";\"Kerteh\";\"other\"\n\"1734316\";\"Kuala Kerteh\";\"other\"\n\"1734393\";\"Kulim\";\"main\"\n\"1734409\";\"Bagan Serai\";\"main\"\n\"1734439\";\"Bedong\";\"main\"\n\"1734439\";\"Bedung\";\"other\"\n\"1734576\";\"Simpang Empat\";\"main\"\n\"1734576\";\"Semanggol\";\"other\"\n\"1734576\";\"Simpang Ampat\";\"other\"\n\"1734586\";\"Taiping\";\"main\"\n\"1734586\";\"Bandar Taiping\";\"other\"\n\"1734586\";\"Taipeng\";\"other\"\n\"1734586\";\"Tajpin\";\"other\"\n\"1734586\";\"tai ping\";\"other\"\n\"1734586\";\"Тайпин\";\"other\"\n\"1734586\";\"太平\";\"other\"\n\"1734599\";\"Kuala Kangsar\";\"main\"\n\"1734599\";\"Kangsar\";\"other\"\n\"1734599\";\"Kuala Kangsa\";\"other\"\n\"1734634\";\"Ipoh\";\"main\"\n\"1734634\";\"Ipo\";\"other\"\n\"1734634\";\"ipo\";\"other\"\n\"1734634\";\"yi bao\";\"other\"\n\"1734634\";\"Ипо\";\"other\"\n\"1734634\";\"イポー\";\"other\"\n\"1734634\";\"怡保\";\"other\"\n\"1734651\";\"Gua Musang\";\"main\"\n\"1734705\";\"Kuala Terengganu\";\"main\"\n\"1734705\";\"Bandar Kuala Terengganu\";\"other\"\n\"1734705\";\"Kuala Trengganu\";\"other\"\n\"1734705\";\"Trengganu\";\"other\"\n\"1734705\";\"Tringano\";\"other\"\n\"1734705\";\"Tringganu\";\"other\"\n\"1734715\";\"Marang\";\"main\"\n\"1734715\";\"Kuala Marang\";\"other\"\n\"1734715\";\"Kualla Merang\";\"other\"\n\"1734715\";\"Маранг\";\"other\"\n\"1734738\";\"Tampin\";\"main\"\n\"1734745\";\"Alur Gajah\";\"main\"\n\"1734745\";\"Alor Gajah\";\"other\"\n\"1734745\";\"Alor Gajeh\";\"other\"\n\"1734753\";\"Air Keruh\";\"main\"\n\"1734753\";\"Ayer Keroh\";\"other\"\n\"1734757\";\"Sungai Udang\";\"main\"\n\"1734759\";\"Melaka\";\"main\"\n\"1734759\";\"Malaca\";\"other\"\n\"1734759\";\"Malacca\";\"other\"\n\"1734759\";\"Malacca Town\";\"other\"\n\"1734759\";\"Malaka\";\"other\"\n\"1734759\";\"Malakka\";\"other\"\n\"1734759\";\"ma liu jia\";\"other\"\n\"1734759\";\"marakka\";\"other\"\n\"1734759\";\"Малакка\";\"other\"\n\"1734759\";\"マラッカ\";\"other\"\n\"1734759\";\"马六甲\";\"other\"\n\"1734781\";\"Banting\";\"main\"\n\"1734793\";\"Jenjarum\";\"main\"\n\"1734793\";\"Jenjarom\";\"other\"\n\"1734798\";\"Semenyih\";\"main\"\n\"1734798\";\"Semenyeh\";\"other\"\n\"1734802\";\"Beranang\";\"main\"\n\"1734810\";\"Seremban\";\"main\"\n\"1734810\";\"Серембан\";\"other\"\n\"1734815\";\"Port Dickson\";\"main\"\n\"1734815\";\"Arang Arang Anchorage\";\"other\"\n\"1734815\";\"Arang-Arang\";\"other\"\n\"1734839\";\"Bahau\";\"main\"\n\"1734841\";\"Kuala Pilah\";\"main\"\n\"1734841\";\"Kuala Lipis\";\"other\"\n\"1734879\";\"Buluh Kasap\";\"main\"\n\"1734879\";\"Buloh Kasap\";\"other\"\n\"1734971\";\"Pekan\";\"main\"\n\"1734971\";\"Пекан\";\"other\"\n\"1735018\";\"Mentekab\";\"main\"\n\"1735018\";\"Mentakab\";\"other\"\n\"1735022\";\"Temerluh\";\"main\"\n\"1735022\";\"Temerloh\";\"other\"\n\"1735076\";\"Butterworth\";\"main\"\n\"1735077\";\"Perai\";\"main\"\n\"1735077\";\"Prai\";\"other\"\n\"1735079\";\"Bukit Mertajam\";\"main\"\n\"1735086\";\"Nibong Tebal\";\"main\"\n\"1735086\";\"Nibong Tepal\";\"other\"\n\"1735086\";\"Nibung Tebal\";\"other\"\n\"1735089\";\"Parit Buntar\";\"main\"\n\"1735093\";\"Tasek Glugor\";\"main\"\n\"1735093\";\"Tasek Gelugor\";\"other\"\n\"1735093\";\"Tasek Gelugur\";\"other\"\n\"1735106\";\"George Town\";\"main\"\n\"1735106\";\"Dzhordzhtaun\";\"other\"\n\"1735106\";\"Georgetown\";\"other\"\n\"1735106\";\"Penang\";\"other\"\n\"1735106\";\"Pinang\";\"other\"\n\"1735106\";\"Pinang George Town\";\"other\"\n\"1735106\";\"jojitaun\";\"other\"\n\"1735106\";\"qiao zhi shi\";\"other\"\n\"1735106\";\"Джорджтаун\";\"other\"\n\"1735106\";\"ジョージタウン\";\"other\"\n\"1735106\";\"喬治市\";\"other\"\n\"1735133\";\"Kampung Bukit Tinggi\";\"main\"\n\"1735148\";\"Serendah\";\"main\"\n\"1735150\";\"Rawang\";\"main\"\n\"1735158\";\"Petaling Jaya\";\"main\"\n\"1735158\";\"Petaling-Dzhaja\";\"other\"\n\"1735158\";\"ptalyng jaya\";\"other\"\n\"1735158\";\"Петалинг-Джая\";\"other\"\n\"1735158\";\"پتالینگ جایا\";\"other\"\n\"1735161\";\"Kuala Lumpur\";\"main\"\n\"1735161\";\"Kouala Loumpour\";\"other\"\n\"1735161\";\"Kuala Lumpor\";\"other\"\n\"1735161\";\"Kuala-Lumpur\";\"other\"\n\"1735161\";\"Kualalumpura\";\"other\"\n\"1735161\";\"Kualalumpūra\";\"other\"\n\"1735161\";\"Kvala Lumpuras\";\"other\"\n\"1735161\";\"Kvala Lumpūras\";\"other\"\n\"1735161\";\"ji long po\";\"other\"\n\"1735161\";\"kawlalampexr\";\"other\"\n\"1735161\";\"ku'alalamapura\";\"other\"\n\"1735161\";\"ku'alalampura\";\"other\"\n\"1735161\";\"kuallalumpuleu\";\"other\"\n\"1735161\";\"kuararunpuru\";\"other\"\n\"1735161\";\"Κουάλα Λουμπούρ\";\"other\"\n\"1735161\";\"Куала Лумпур\";\"other\"\n\"1735161\";\"Куала-Лумпур\";\"other\"\n\"1735161\";\"קואלה לומפור\";\"other\"\n\"1735161\";\"كۇئالا-لۇمپۇر\";\"other\"\n\"1735161\";\"कुआलालम्पुर\";\"other\"\n\"1735161\";\"कुआलालामपुर\";\"other\"\n\"1735161\";\"กัวลาลัมเปอร์\";\"other\"\n\"1735161\";\"კუალა-ლუმპური\";\"other\"\n\"1735161\";\"ኩዋላ ሉምፑር\";\"other\"\n\"1735161\";\"クアラルンプール\";\"other\"\n\"1735161\";\"吉隆坡\";\"other\"\n\"1735161\";\"쿠알라룸푸르\";\"other\"\n\"1735195\";\"Sobak Bernam\";\"main\"\n\"1735195\";\"Sabah\";\"other\"\n\"1735195\";\"Sabak\";\"other\"\n\"1735199\";\"Sungai Besar\";\"main\"\n\"1735199\";\"Kampong Sungei Besar\";\"other\"\n\"1735227\";\"Kuantan\";\"main\"\n\"1735227\";\"Kuala Kuantan\";\"other\"\n\"1735227\";\"Kuala Kuatan\";\"other\"\n\"1735227\";\"Куантан\";\"other\"\n\"1735262\";\"Tanah Rata\";\"main\"\n\"1735262\";\"Tana Rata\";\"other\"\n\"1735262\";\"Тана Рата\";\"other\"\n\"1735268\";\"Batu Gajah\";\"main\"\n\"1735268\";\"Batu Gaah\";\"other\"\n\"1735274\";\"Kampar\";\"main\"\n\"1735282\";\"Tapah Road\";\"main\"\n\"1735287\";\"Bidur\";\"main\"\n\"1735287\";\"Bidor\";\"other\"\n\"1735450\";\"Lumut\";\"main\"\n\"1735459\";\"Teluk Intan\";\"main\"\n\"1735459\";\"Telok Anson\";\"other\"\n\"1735459\";\"Teluk Anson\";\"other\"\n\"1735459\";\"an shun\";\"other\"\n\"1735459\";\"安顺\";\"other\"\n\"1735485\";\"Gurun\";\"main\"\n\"1735485\";\"Kampung Gurun\";\"other\"\n\"1735498\";\"Sungai Petani\";\"main\"\n\"1735498\";\"Sungai Patani\";\"other\"\n\"1735498\";\"Sungei Patani\";\"other\"\n\"1735506\";\"Kepala Batas\";\"main\"\n\"1735506\";\"Kapala Batas\";\"other\"\n\"1735535\";\"Ketereh\";\"main\"\n\"1735543\";\"Pulai Chondong\";\"main\"\n\"1735543\";\"Pulai Chongdong\";\"other\"\n\"1735543\";\"Pulai Condong\";\"other\"\n\"1735553\";\"Tanah Merah\";\"main\"\n\"1735553\";\"Tanah Merak\";\"other\"\n\"1735634\";\"Kuching\";\"main\"\n\"1735634\";\"Kucingas\";\"other\"\n\"1735634\";\"Kučingas\";\"other\"\n\"1735634\";\"gu jin\";\"other\"\n\"1735634\";\"kuchin\";\"other\"\n\"1735634\";\"Кучинг\";\"other\"\n\"1735634\";\"クチン\";\"other\"\n\"1735634\";\"古晉\";\"other\"\n\"1735799\";\"Simanggang\";\"main\"\n\"1735799\";\"Bandar Sri Aman\";\"other\"\n\"1735799\";\"Simmangang\";\"other\"\n\"1735799\";\"Simmanggang\";\"other\"\n\"1735799\";\"Sri Aman\";\"other\"\n\"1735837\";\"Sarikei\";\"main\"\n\"1735837\";\"Seriki\";\"other\"\n\"1735837\";\"Siriki\";\"other\"\n\"1735902\";\"Sibu\";\"main\"\n\"1735902\";\"Fort Brooke\";\"other\"\n\"1735902\";\"Siboe\";\"other\"\n\"1735902\";\"Сибу\";\"other\"\n\"1736278\";\"Kangar\";\"main\"\n\"1736278\";\"Perlis\";\"other\"\n\"1736278\";\"Poelit\";\"other\"\n\"1736278\";\"Polit\";\"other\"\n\"1736278\";\"Кангар\";\"other\"\n\"1736292\";\"Kuala Perlis\";\"main\"\n\"1736292\";\"Kampong Kuala Perlis\";\"other\"\n\"1736292\";\"Kampong Perlis\";\"other\"\n\"1736302\";\"Jitra\";\"main\"\n\"1736305\";\"Kuala Kedah\";\"main\"\n\"1736309\";\"Alor Setar\";\"main\"\n\"1736309\";\"Alor Star\";\"other\"\n\"1736309\";\"Alostar\";\"other\"\n\"1736309\";\"Alur Setar\";\"other\"\n\"1736309\";\"Saiburu\";\"other\"\n\"1736309\";\"Thai\";\"other\"\n\"1736309\";\"alwr star\";\"other\"\n\"1736309\";\"arosuta\";\"other\"\n\"1736309\";\"ya luo shi da\";\"other\"\n\"1736309\";\"الور ستار\";\"other\"\n\"1736309\";\"アロースター\";\"other\"\n\"1736309\";\"亞羅士打\";\"other\"\n\"1736356\";\"Tumpat\";\"main\"\n\"1736372\";\"Pasir Mas\";\"main\"\n\"1736376\";\"Kota Bharu\";\"main\"\n\"1736376\";\"Khota Baharu\";\"other\"\n\"1736376\";\"Khota Bahru\";\"other\"\n\"1736376\";\"Kota Baharu\";\"other\"\n\"1736376\";\"Kota Bahru\";\"other\"\n\"1736405\";\"Jertih\";\"main\"\n\"1736405\";\"Jerteh\";\"other\"\n\"1736458\";\"Kudat\";\"main\"\n\"1736660\";\"Kota Belud\";\"main\"\n\"1736660\";\"Khota Balud\";\"other\"\n\"1737185\";\"Kapit\";\"main\"\n\"1737185\";\"Kapit Fort\";\"other\"\n\"1737486\";\"Bintulu\";\"main\"\n\"1737486\";\"Бинтулу\";\"other\"\n\"1737714\";\"Limbang\";\"main\"\n\"1738050\";\"Miri\";\"main\"\n\"1738294\";\"Ulu Tiram\";\"main\"\n\"1738294\";\"Ulu Tiram Village\";\"other\"\n\"1741550\";\"Tanjung Tokong\";\"main\"\n\"1741550\";\"Tanjong Tokong\";\"other\"\n\"1741562\";\"Tanjong Sepat\";\"main\"\n\"1741562\";\"Kampong Tanjong Sepat\";\"other\"\n\"1742667\";\"Sungai Pelek New Village\";\"main\"\n\"1749659\";\"Pulau Sebang\";\"main\"\n\"1750500\";\"Permatang Kuching\";\"main\"\n\"1750582\";\"Peringat\";\"main\"\n\"1750974\";\"Pengkalan Kundang\";\"main\"\n\"1752256\";\"Pantai Remis\";\"main\"\n\"1752256\";\"Kampong Pantai Remis\";\"other\"\n\"1752256\";\"Pantei Remis\";\"other\"\n\"1759486\";\"Kuang\";\"main\"\n\"1759486\";\"Куанг\";\"other\"\n\"1759513\";\"Kuala Sungai Baru\";\"main\"\n\"1759513\";\"Kuala Sungai Baharu\";\"other\"\n\"1761242\";\"Kelebang Besar\";\"main\"\n\"1761242\";\"Klebang Besar\";\"other\"\n\"1761293\";\"Kelapa Sawit\";\"main\"\n\"1763412\";\"Kampung Tanjung Karang\";\"main\"\n\"1763412\";\"Tanjong Karang\";\"other\"\n\"1764160\";\"Kampung Sungai Ara\";\"main\"\n\"1764160\";\"Kampong Sungai Ara\";\"other\"\n\"1764160\";\"Sungei Ara\";\"other\"\n\"1764318\";\"Kampong Simpang Rengam\";\"main\"\n\"1766249\";\"Kampong Pangkal Kalong\";\"main\"\n\"1767021\";\"Kampong Masjid Tanah\";\"main\"\n\"1768664\";\"Kampong Kadok\";\"main\"\n\"1769612\";\"Kampong Dungun\";\"main\"\n\"1769612\";\"Kampong Dungan\";\"other\"\n\"1770351\";\"Kampong Bukit Baru\";\"main\"\n\"1771023\";\"Kampung Baru Subang\";\"main\"\n\"1771287\";\"Kampong Baharu Nilai\";\"main\"\n\"1771287\";\"Kampong Bahru Nilai\";\"other\"\n\"1771287\";\"Kampong Nilai\";\"other\"\n\"1771287\";\"Nilai\";\"other\"\n\"1771304\";\"Kampong Baharu Balakong\";\"main\"\n\"1771485\";\"Kampong Ayer Molek\";\"main\"\n\"1772148\";\"Juru\";\"main\"\n\"1778290\";\"Bukit Rambai\";\"main\"\n\"1779790\";\"Bentong Town\";\"main\"\n\"1779926\";\"Bemban\";\"main\"\n\"1780890\";\"Batu Berendam\";\"main\"\n\"6697380\";\"Putrajaya\";\"main\"\n\"7068135\";\"Kampung Lemal\";\"main\"\n\"7302815\";\"Bandar Labuan\";\"main\"\n\"1024552\";\"Xai-Xai\";\"main\"\n\"1024552\";\"Chai Chai\";\"other\"\n\"1024552\";\"Joa Belo\";\"other\"\n\"1024552\";\"Joao Belo\";\"other\"\n\"1024552\";\"João Belo\";\"other\"\n\"1024552\";\"Sai Sai\";\"other\"\n\"1024552\";\"Shai-Shai\";\"other\"\n\"1024552\";\"Vila de Joao Belo\";\"other\"\n\"1024552\";\"Vila de João Belo\";\"other\"\n\"1024552\";\"Vila-Joao-Belo\";\"other\"\n\"1024552\";\"Vila-João-Belo\";\"other\"\n\"1024552\";\"Xai Xai\";\"other\"\n\"1024552\";\"shaishai\";\"other\"\n\"1024552\";\"Šai Šai\";\"other\"\n\"1024552\";\"Шаи-Шаи\";\"other\"\n\"1024552\";\"シャイシャイ\";\"other\"\n\"1024696\";\"Dondo\";\"main\"\n\"1024696\";\"Vila do Dondo\";\"other\"\n\"1024696\";\"Дондо\";\"other\"\n\"1024701\";\"Macia\";\"main\"\n\"1024701\";\"Vila de Macia\";\"other\"\n\"1026014\";\"Tete\";\"main\"\n\"1026014\";\"Vila-de-Santiago-Maior\";\"other\"\n\"1026014\";\"tai te\";\"other\"\n\"1026014\";\"Тете\";\"other\"\n\"1026014\";\"太特\";\"other\"\n\"1028434\";\"Quelimane\";\"main\"\n\"1028434\";\"Kelimane\";\"other\"\n\"1028434\";\"Kelimanė\";\"other\"\n\"1028434\";\"Келимане\";\"other\"\n\"1028918\";\"Pemba\";\"main\"\n\"1028918\";\"Porto Amelia\";\"other\"\n\"1028918\";\"Пемба\";\"other\"\n\"1033356\";\"Nampula\";\"main\"\n\"1033356\";\"Нампула\";\"other\"\n\"1035025\";\"Cidade de Nacala\";\"main\"\n\"1035025\";\"Fernao Veloso\";\"other\"\n\"1035025\";\"Fernão Veloso\";\"other\"\n\"1035025\";\"Gorod-de-Nakala\";\"other\"\n\"1035025\";\"Maaia\";\"other\"\n\"1035025\";\"Maiaia\";\"other\"\n\"1035025\";\"Nacala\";\"other\"\n\"1035025\";\"Город-де-Накала\";\"other\"\n\"1037125\";\"Montepuez\";\"main\"\n\"1037125\";\"Montepveze\";\"other\"\n\"1037125\";\"Vila de Montepuez\";\"other\"\n\"1037125\";\"Монтепвезе\";\"other\"\n\"1037336\";\"Mocuba\";\"main\"\n\"1037370\";\"Mocímboa\";\"main\"\n\"1037370\";\"Mocimboa\";\"ascii\"\n\"1037390\";\"Ilha de Moçambique\";\"main\"\n\"1037390\";\"Ilha de Mocambique\";\"ascii\"\n\"1037390\";\"Mocambique\";\"other\"\n\"1037390\";\"Mozambique\";\"other\"\n\"1037390\";\"Moçambique\";\"other\"\n\"1039536\";\"Maxixe\";\"main\"\n\"1039854\";\"Matola\";\"main\"\n\"1039854\";\"Cidade da Matola\";\"other\"\n\"1039854\";\"Vila Salazar\";\"other\"\n\"1039854\";\"Матола\";\"other\"\n\"1040652\";\"Maputo\";\"main\"\n\"1040652\";\"Can Pfumo\";\"other\"\n\"1040652\";\"Kapfumo\";\"other\"\n\"1040652\";\"Lourenco Marques\";\"other\"\n\"1040652\";\"Lourenço Marques\";\"other\"\n\"1040652\";\"Mabutu\";\"other\"\n\"1040652\";\"Mapouto\";\"other\"\n\"1040652\";\"Maputu\";\"other\"\n\"1040652\";\"ma pu tuo\";\"other\"\n\"1040652\";\"maputo\";\"other\"\n\"1040652\";\"maputu\";\"other\"\n\"1040652\";\"mapwtw\";\"other\"\n\"1040652\";\"mpwtw\";\"other\"\n\"1040652\";\"Μαπούτο\";\"other\"\n\"1040652\";\"Мапуту\";\"other\"\n\"1040652\";\"מפוטו\";\"other\"\n\"1040652\";\"ماپوتو\";\"other\"\n\"1040652\";\"ማፑቶ\";\"other\"\n\"1040652\";\"マプト\";\"other\"\n\"1040652\";\"马普托\";\"other\"\n\"1040652\";\"마푸투\";\"other\"\n\"1040938\";\"Manjacaze\";\"main\"\n\"1040938\";\"Cheverine\";\"other\"\n\"1040938\";\"Vila de Manjacaze\";\"other\"\n\"1043893\";\"Lichinga\";\"main\"\n\"1043893\";\"Lisinga\";\"other\"\n\"1043893\";\"Lišinga\";\"other\"\n\"1043893\";\"Vila Cabral\";\"other\"\n\"1043893\";\"li xin jia\";\"other\"\n\"1043893\";\"利欣加\";\"other\"\n\"1045114\";\"Inhambane\";\"main\"\n\"1045114\";\"In'jambane\";\"other\"\n\"1045114\";\"Иньямбане\";\"other\"\n\"1047660\";\"Cuamba\";\"main\"\n\"1047660\";\"Cuanda\";\"other\"\n\"1047660\";\"Guamba\";\"other\"\n\"1047660\";\"Kwamba\";\"other\"\n\"1047660\";\"Mucuamba\";\"other\"\n\"1047660\";\"Mukwamba\";\"other\"\n\"1047660\";\"Nova Freixo\";\"other\"\n\"1047660\";\"ku an ba\";\"other\"\n\"1047660\";\"kua mu ba\";\"other\"\n\"1047660\";\"库安巴\";\"other\"\n\"1047660\";\"誇姆巴\";\"other\"\n\"1048364\";\"Chokwé\";\"main\"\n\"1048364\";\"Chokwe\";\"ascii\"\n\"1048364\";\"Chokue\";\"other\"\n\"1048364\";\"Chokué\";\"other\"\n\"1048364\";\"Choque\";\"other\"\n\"1048364\";\"Chókwè\";\"other\"\n\"1048364\";\"Trigo Morais\";\"other\"\n\"1048364\";\"Trigo de Morais\";\"other\"\n\"1048364\";\"Vila Trigo de Morais\";\"other\"\n\"1049261\";\"Chimoio\";\"main\"\n\"1049261\";\"Chimoyo\";\"other\"\n\"1049261\";\"Shimojo\";\"other\"\n\"1049261\";\"Vila Pery\";\"other\"\n\"1049261\";\"Шимойо\";\"other\"\n\"1049861\";\"Chibuto\";\"main\"\n\"1049861\";\"Vila do Chibuto\";\"other\"\n\"1052373\";\"Beira\";\"main\"\n\"1052373\";\"Bejra\";\"other\"\n\"1052373\";\"bei la\";\"other\"\n\"1052373\";\"beira\";\"other\"\n\"1052373\";\"Бейра\";\"other\"\n\"1052373\";\"ベイラ\";\"other\"\n\"1052373\";\"贝拉\";\"other\"\n\"1052944\";\"António Enes\";\"main\"\n\"1052944\";\"Antonio Enes\";\"ascii\"\n\"1052944\";\"Angoche\";\"other\"\n\"1052944\";\"Antonio Engs\";\"other\"\n\"1052944\";\"Antonio Ennes\";\"other\"\n\"1052944\";\"Vila de Antonio Enes\";\"other\"\n\"1052944\";\"Vila de António Enes\";\"other\"\n\"1088155\";\"Mutuáli\";\"main\"\n\"1088155\";\"Mutuali\";\"ascii\"\n\"877178\";\"Katima Mulilo\";\"main\"\n\"877178\";\"Katima Molilo\";\"other\"\n\"877178\";\"Katima-Mulilo\";\"other\"\n\"877178\";\"Катіма-Муліло\";\"other\"\n\"877178\";\"קאטימה מולילו\";\"other\"\n\"3352136\";\"Windhoek\";\"main\"\n\"3352136\";\"Gouintchouk\";\"other\"\n\"3352136\";\"Vindhuk\";\"other\"\n\"3352136\";\"Vindhukas\";\"other\"\n\"3352136\";\"Vindkhuk\";\"other\"\n\"3352136\";\"Windhuk\";\"other\"\n\"3352136\";\"binteuhukeu\";\"other\"\n\"3352136\";\"u~intofukku\";\"other\"\n\"3352136\";\"wen de he ke\";\"other\"\n\"3352136\";\"wyndhwk\";\"other\"\n\"3352136\";\"wyndhwq\";\"other\"\n\"3352136\";\"Γουίντχουκ\";\"other\"\n\"3352136\";\"Виндхук\";\"other\"\n\"3352136\";\"Վինդհուկ\";\"other\"\n\"3352136\";\"וינדהוק\";\"other\"\n\"3352136\";\"ويندهوك\";\"other\"\n\"3352136\";\"ویندهوک\";\"other\"\n\"3352136\";\"ዊንድሁክ\";\"other\"\n\"3352136\";\"ウィントフック\";\"other\"\n\"3352136\";\"温得和克\";\"other\"\n\"3352136\";\"빈트후크\";\"other\"\n\"3352263\";\"Warmbad\";\"main\"\n\"3352461\";\"Usakos\";\"main\"\n\"3352593\";\"Tsumeb\";\"main\"\n\"3352844\";\"Swakopmund\";\"main\"\n\"3352844\";\"Svakopmund\";\"other\"\n\"3352844\";\"suwakopumunto\";\"other\"\n\"3352844\";\"Свакопмунд\";\"other\"\n\"3352844\";\"スワコプムント\";\"other\"\n\"3353383\";\"Rundu\";\"main\"\n\"3353383\";\"Runtu\";\"other\"\n\"3353383\";\"Рунду\";\"other\"\n\"3353540\";\"Rehoboth\";\"main\"\n\"3353540\";\"Rekhobot\";\"other\"\n\"3353540\";\"Рехобот\";\"other\"\n\"3353715\";\"Outjo\";\"main\"\n\"3353811\";\"Otjiwarongo\";\"main\"\n\"3353811\";\"Ot'ivarongo\";\"other\"\n\"3353811\";\"Otiwarongo\";\"other\"\n\"3353811\";\"Отьиваронго\";\"other\"\n\"3353871\";\"Otjimbingwe\";\"main\"\n\"3353871\";\"Otjimbingue\";\"other\"\n\"3353934\";\"Otavi\";\"main\"\n\"3353934\";\"Otawi\";\"other\"\n\"3353996\";\"Oshikango\";\"main\"\n\"3354021\";\"Oshakati\";\"main\"\n\"3354021\";\"Okatana\";\"other\"\n\"3354021\";\"Ошакати\";\"other\"\n\"3354071\";\"Oranjemund\";\"main\"\n\"3354071\";\"Orange Mouth\";\"other\"\n\"3354071\";\"Orangemund\";\"other\"\n\"3354071\";\"Oranjemond\";\"other\"\n\"3354077\";\"Opuwo\";\"main\"\n\"3354077\";\"Ohopoho\";\"other\"\n\"3354077\";\"Ohopuho\";\"other\"\n\"3354077\";\"Opuwa\";\"other\"\n\"3354147\";\"Ongwediva\";\"main\"\n\"3354147\";\"Onguedira\";\"other\"\n\"3354147\";\"Onguediva\";\"other\"\n\"3354178\";\"Ongandjera\";\"main\"\n\"3354178\";\"Okandjera\";\"other\"\n\"3354178\";\"Rehoboth\";\"other\"\n\"3354247\";\"Ondangwa\";\"main\"\n\"3354247\";\"Ondangua\";\"other\"\n\"3354247\";\"Ondonga\";\"other\"\n\"3354540\";\"Omaruru\";\"main\"\n\"3354876\";\"Okakarara\";\"main\"\n\"3354898\";\"Okahandja\";\"main\"\n\"3354898\";\"Okahanja\";\"other\"\n\"3355595\";\"Mariental\";\"main\"\n\"3355624\";\"Maltahöhe\";\"main\"\n\"3355624\";\"Maltahohe\";\"ascii\"\n\"3355672\";\"Lüderitz\";\"main\"\n\"3355672\";\"Luderitz\";\"ascii\"\n\"3355672\";\"Ljuderic\";\"other\"\n\"3355672\";\"Luederitz\";\"other\"\n\"3355672\";\"Людериц\";\"other\"\n\"3356213\";\"Khorixas\";\"main\"\n\"3356213\";\"Wallwitch\";\"other\"\n\"3356213\";\"Wellwitsch\";\"other\"\n\"3356213\";\"Welwitsch\";\"other\"\n\"3356213\";\"Welwitschia\";\"other\"\n\"3356264\";\"Keetmanshoop\";\"main\"\n\"3356332\";\"Karibib\";\"main\"\n\"3356343\";\"Karasburg\";\"main\"\n\"3356343\";\"Kalkfontein\";\"other\"\n\"3356343\";\"Kalkfontein South\";\"other\"\n\"3356832\";\"Hentiesbaai\";\"main\"\n\"3356832\";\"Henties Bay\";\"other\"\n\"3357114\";\"Grootfontein\";\"main\"\n\"3357114\";\"Groutfontein\";\"other\"\n\"3357247\";\"Gobabis\";\"main\"\n\"3358416\";\"Bethanie\";\"main\"\n\"3358416\";\"Bethanien\";\"other\"\n\"3358416\";\"Bethany\";\"other\"\n\"3358666\";\"Aranos\";\"main\"\n\"3358670\";\"Arandis\";\"main\"\n\"3359638\";\"Walvis Bay\";\"main\"\n\"3359638\";\"Valvis Bej\";\"other\"\n\"3359638\";\"Volfis-Bej\";\"other\"\n\"3359638\";\"Walfisch-Bucht-Niederland\";\"other\"\n\"3359638\";\"Walfischbucht\";\"other\"\n\"3359638\";\"Walvisbaai\";\"other\"\n\"3359638\";\"u~orubisubei\";\"other\"\n\"3359638\";\"Валвис Беј\";\"other\"\n\"3359638\";\"Волфіш-Бей\";\"other\"\n\"3359638\";\"ウォルビスベイ\";\"other\"\n\"2137644\";\"Yaté-Barrage\";\"main\"\n\"2137644\";\"Yate-Barrage\";\"ascii\"\n\"2137690\";\"Wé\";\"main\"\n\"2137690\";\"We\";\"ascii\"\n\"2137690\";\"Oue\";\"other\"\n\"2137690\";\"Oué\";\"other\"\n\"2137748\";\"Voh\";\"main\"\n\"2137773\";\"Vao\";\"main\"\n\"2137773\";\"Upuaite\";\"other\"\n\"2137873\";\"Touho\";\"main\"\n\"2137873\";\"Tuho\";\"other\"\n\"2137873\";\"Tuo\";\"other\"\n\"2138103\";\"Thio\";\"main\"\n\"2138285\";\"Tadine\";\"main\"\n\"2138285\";\"Tadinou\";\"other\"\n\"2138285\";\"Tadinu\";\"other\"\n\"2138285\";\"Todine\";\"other\"\n\"2138522\";\"Poya\";\"main\"\n\"2138555\";\"Poum\";\"main\"\n\"2138555\";\"Bouemanda\";\"other\"\n\"2138555\";\"Bouémanda\";\"other\"\n\"2138555\";\"Buemanda\";\"other\"\n\"2138555\";\"Peum\";\"other\"\n\"2138555\";\"Poume\";\"other\"\n\"2138555\";\"Pum\";\"other\"\n\"2138592\";\"Pouembout\";\"main\"\n\"2138592\";\"Puembut\";\"other\"\n\"2138607\";\"Pouébo\";\"main\"\n\"2138607\";\"Pouebo\";\"ascii\"\n\"2138607\";\"Puebo\";\"other\"\n\"2138607\";\"Puébo\";\"other\"\n\"2138687\";\"Ponérihouen\";\"main\"\n\"2138687\";\"Ponerihouen\";\"ascii\"\n\"2138687\";\"Poneriuen\";\"other\"\n\"2138687\";\"Punereuin\";\"other\"\n\"2138717\";\"Poindimié\";\"main\"\n\"2138717\";\"Poindimie\";\"ascii\"\n\"2138981\";\"Païta\";\"main\"\n\"2138981\";\"Paita\";\"ascii\"\n\"2139259\";\"Ouégoa\";\"main\"\n\"2139259\";\"Ouegoa\";\"ascii\"\n\"2139521\";\"Nouméa\";\"main\"\n\"2139521\";\"Noumea\";\"ascii\"\n\"2139521\";\"Numea\";\"other\"\n\"2139521\";\"Port de France\";\"other\"\n\"2139521\";\"numea\";\"other\"\n\"2139521\";\"Нумеа\";\"other\"\n\"2139521\";\"ヌメア\";\"other\"\n\"2139521\";\"누메아\";\"other\"\n\"2140066\";\"Mont-Dore\";\"main\"\n\"2140466\";\"La Foa\";\"main\"\n\"2140558\";\"Koumac\";\"main\"\n\"2140558\";\"Kumac\";\"other\"\n\"2140558\";\"Kumak\";\"other\"\n\"2140691\";\"Koné\";\"main\"\n\"2140691\";\"Kone\";\"ascii\"\n\"2140915\";\"Kaala-Gomén\";\"main\"\n\"2140915\";\"Kaala-Gomen\";\"ascii\"\n\"2140915\";\"Gomen\";\"other\"\n\"2141006\";\"Houaïlou\";\"main\"\n\"2141006\";\"Houailou\";\"ascii\"\n\"2141006\";\"Huailu\";\"other\"\n\"2141006\";\"Huaïlu\";\"other\"\n\"2141050\";\"Hienghène\";\"main\"\n\"2141050\";\"Hienghene\";\"ascii\"\n\"2141050\";\"Hiengherie\";\"other\"\n\"2141050\";\"Yengen\";\"other\"\n\"2141305\";\"Fayaoué\";\"main\"\n\"2141305\";\"Fayaoue\";\"ascii\"\n\"2141305\";\"Faiaoue\";\"other\"\n\"2141305\";\"Faiaoué\";\"other\"\n\"2141305\";\"Faiaue\";\"other\"\n\"2141305\";\"Faiaué\";\"other\"\n\"2141394\";\"Dumbéa\";\"main\"\n\"2141394\";\"Dumbea\";\"ascii\"\n\"2141658\";\"Canala\";\"main\"\n\"2141658\";\"Kanala\";\"other\"\n\"2141658\";\"Napoleonville\";\"other\"\n\"2141658\";\"Napoléonville\";\"other\"\n\"2141714\";\"Bourail\";\"main\"\n\"2141714\";\"Boureil\";\"other\"\n\"2141714\";\"Burail\";\"other\"\n\"2141722\";\"Bouloupari\";\"main\"\n\"2141722\";\"Boulouparis\";\"other\"\n\"2141722\";\"Bulupari\";\"other\"\n\"2437732\";\"Birni N Konni\";\"main\"\n\"2437732\";\"Birni n'Kenni\";\"other\"\n\"2437732\";\"Birni n’Kenni\";\"other\"\n\"2437732\";\"Birni-Koni\";\"other\"\n\"2437732\";\"Birnin Koni\";\"other\"\n\"2437732\";\"Birnin Konni\";\"other\"\n\"2437732\";\"Birnin-Konni\";\"other\"\n\"2437732\";\"Konni\";\"other\"\n\"2437732\";\"Бирнин-Конни\";\"other\"\n\"2437798\";\"Zinder\";\"main\"\n\"2437798\";\"Sinder\";\"other\"\n\"2437798\";\"Зиндер\";\"other\"\n\"2438678\";\"Tillabéri\";\"main\"\n\"2438678\";\"Tillaberi\";\"ascii\"\n\"2438678\";\"Tillabery\";\"other\"\n\"2438678\";\"Tillabéry\";\"other\"\n\"2438774\";\"Tibiri\";\"main\"\n\"2438823\";\"Tessaoua\";\"main\"\n\"2438855\";\"Téra\";\"main\"\n\"2438855\";\"Tera\";\"ascii\"\n\"2438855\";\"Тера\";\"other\"\n\"2438974\";\"Tchin Tabaradèn\";\"main\"\n\"2438974\";\"Tchin Tabaraden\";\"ascii\"\n\"2438974\";\"Tchin-Tabaradene\";\"other\"\n\"2438974\";\"Tchin-terbaradin\";\"other\"\n\"2439155\";\"Tanout\";\"main\"\n\"2439376\";\"Tahoua\";\"main\"\n\"2439376\";\"Takhua\";\"other\"\n\"2439376\";\"Тахуа\";\"other\"\n\"2439812\";\"Say\";\"main\"\n\"2440371\";\"Ouallam\";\"main\"\n\"2440371\";\"Oualam\";\"other\"\n\"2440485\";\"Niamey\";\"main\"\n\"2440485\";\"Niamei\";\"other\"\n\"2440485\";\"Niamej\";\"other\"\n\"2440485\";\"Niamejus\";\"other\"\n\"2440485\";\"Niamėjus\";\"other\"\n\"2440485\";\"ni ya mei\";\"other\"\n\"2440485\";\"niame\";\"other\"\n\"2440485\";\"nyamy\";\"other\"\n\"2440485\";\"Νιαμέι\";\"other\"\n\"2440485\";\"Ниамей\";\"other\"\n\"2440485\";\"Նիամեյ\";\"other\"\n\"2440485\";\"ניאמי\";\"other\"\n\"2440485\";\"نيامي\";\"other\"\n\"2440485\";\"ኒያሜ\";\"other\"\n\"2440485\";\"ニアメ\";\"other\"\n\"2440485\";\"尼亞美\";\"other\"\n\"2440485\";\"니아메\";\"other\"\n\"2440495\";\"Nguigmi\";\"main\"\n\"2440495\";\"Ngigmi\";\"other\"\n\"2440921\";\"Mirya\";\"main\"\n\"2440921\";\"Miria\";\"other\"\n\"2440921\";\"Mirria\";\"other\"\n\"2440921\";\"Myrria\";\"other\"\n\"2440921\";\"Мирриа\";\"other\"\n\"2441194\";\"Mayahi\";\"main\"\n\"2441194\";\"Majakhi\";\"other\"\n\"2441194\";\"Mayaki\";\"other\"\n\"2441194\";\"Майахи\";\"other\"\n\"2441217\";\"Matamey\";\"main\"\n\"2441217\";\"Matameye\";\"other\"\n\"2441217\";\"Matamèye\";\"other\"\n\"2441291\";\"Maradi\";\"main\"\n\"2441291\";\"Маради\";\"other\"\n\"2441447\";\"Maïné-Soroa\";\"main\"\n\"2441447\";\"Maine-Soroa\";\"ascii\"\n\"2441482\";\"Magaria\";\"main\"\n\"2441526\";\"Madarounfa\";\"main\"\n\"2441526\";\"Madaroumfa\";\"other\"\n\"2441526\";\"Madarunfa\";\"other\"\n\"2441530\";\"Madaoua\";\"main\"\n\"2441530\";\"Madawa\";\"other\"\n\"2442248\";\"Kollo\";\"main\"\n\"2442248\";\"Kolo\";\"other\"\n\"2442478\";\"Keïta\";\"main\"\n\"2442478\";\"Keita\";\"ascii\"\n\"2443304\";\"Illéla\";\"main\"\n\"2443304\";\"Illela\";\"ascii\"\n\"2443304\";\"Ilella\";\"other\"\n\"2443304\";\"Illeta\";\"other\"\n\"2443304\";\"Illéta\";\"other\"\n\"2444219\";\"Gouré\";\"main\"\n\"2444219\";\"Goure\";\"ascii\"\n\"2444489\";\"Gaya\";\"main\"\n\"2444995\";\"Filingué\";\"main\"\n\"2444995\";\"Filingue\";\"ascii\"\n\"2445488\";\"Dosso\";\"main\"\n\"2445488\";\"Доссо\";\"other\"\n\"2445553\";\"Dogondoutchi\";\"main\"\n\"2445553\";\"Dogonduchi\";\"other\"\n\"2445704\";\"Diffa\";\"main\"\n\"2445704\";\"Difa\";\"other\"\n\"2445704\";\"Диффа\";\"other\"\n\"2446267\";\"Dakoro\";\"main\"\n\"2446466\";\"Bouza\";\"main\"\n\"2446796\";\"Bilma\";\"main\"\n\"2446796\";\"Bilina\";\"other\"\n\"2446796\";\"Fort Dromard\";\"other\"\n\"2447416\";\"Ayorou\";\"main\"\n\"2447416\";\"Agorou\";\"other\"\n\"2447938\";\"Alaghsas\";\"main\"\n\"2447938\";\"Alarsas\";\"other\"\n\"2448024\";\"Aguié\";\"main\"\n\"2448024\";\"Aguie\";\"ascii\"\n\"2448024\";\"Agye\";\"other\"\n\"2448024\";\"Agyé\";\"other\"\n\"2448245\";\"Abalak\";\"main\"\n\"2448245\";\"Ebaka\";\"other\"\n\"2448245\";\"Ibeka\";\"other\"\n\"2161314\";\"Kingston\";\"main\"\n\"2161314\";\"kingseuteon\";\"other\"\n\"2161314\";\"kingusuton\";\"other\"\n\"2161314\";\"Кингстон\";\"other\"\n\"2161314\";\"キングストン\";\"other\"\n\"2161314\";\"킹스턴\";\"other\"\n\"2317548\";\"Zuru\";\"main\"\n\"2317569\";\"Zungeru\";\"main\"\n\"2317765\";\"Zaria\";\"main\"\n\"2317765\";\"Zarja\";\"other\"\n\"2317765\";\"Заря\";\"other\"\n\"2317818\";\"Zango\";\"main\"\n\"2317887\";\"Zalanga\";\"main\"\n\"2317899\";\"Zaki Biam\";\"main\"\n\"2317899\";\"Zaki Biyem\";\"other\"\n\"2317936\";\"Zadawa\";\"main\"\n\"2317982\";\"Yuli\";\"main\"\n\"2317982\";\"Anguri\";\"other\"\n\"2318044\";\"Yola\";\"main\"\n\"2318044\";\"Jola\";\"other\"\n\"2318044\";\"Йола\";\"other\"\n\"2318123\";\"Yenagoa\";\"main\"\n\"2318166\";\"Yelwa\";\"main\"\n\"2318238\";\"Yashikera\";\"main\"\n\"2318374\";\"Yandev\";\"main\"\n\"2318383\";\"Yanda Bayo\";\"main\"\n\"2318383\";\"Yando Bayo\";\"other\"\n\"2318399\";\"Yamrat\";\"main\"\n\"2318480\";\"Yajiwa\";\"main\"\n\"2318480\";\"Yajua\";\"other\"\n\"2318480\";\"Yajuao\";\"other\"\n\"2318534\";\"Wuyo\";\"main\"\n\"2318858\";\"Wurno\";\"main\"\n\"2318921\";\"Wukari\";\"main\"\n\"2318921\";\"Ukari\";\"other\"\n\"2318933\";\"Wudil\";\"main\"\n\"2319078\";\"Wawa\";\"main\"\n\"2319123\";\"Wasagu\";\"main\"\n\"2319123\";\"Wasaga\";\"other\"\n\"2319133\";\"Warri\";\"main\"\n\"2319133\";\"Varri\";\"other\"\n\"2319133\";\"Варри\";\"other\"\n\"2319257\";\"Wamba\";\"main\"\n\"2319345\";\"Wagini\";\"main\"\n\"2319345\";\"Wagin\";\"other\"\n\"2319407\";\"Vom\";\"main\"\n\"2319480\";\"Uyo\";\"main\"\n\"2319642\";\"Uruobo-Okija\";\"main\"\n\"2319642\";\"Okija\";\"other\"\n\"2319668\";\"Uromi\";\"main\"\n\"2320417\";\"Umunede\";\"main\"\n\"2320576\";\"Umuahia\";\"main\"\n\"2320576\";\"Umuahia Ibeku\";\"other\"\n\"2320746\";\"Ukata\";\"main\"\n\"2320829\";\"Ughelli\";\"main\"\n\"2320831\";\"Ugep\";\"main\"\n\"2320920\";\"Uga\";\"main\"\n\"2320966\";\"Udi\";\"main\"\n\"2321031\";\"Ubiaja\";\"main\"\n\"2321057\";\"Uba\";\"main\"\n\"2321926\";\"Toungo\";\"main\"\n\"2322021\";\"Tokombere\";\"main\"\n\"2322263\";\"Tegina\";\"main\"\n\"2322495\";\"Tambawel\";\"main\"\n\"2322495\";\"Tambawal\";\"other\"\n\"2322495\";\"Tambuwal\";\"other\"\n\"2322529\";\"Talata Mafara\";\"main\"\n\"2322552\";\"Takum\";\"main\"\n\"2322592\";\"Takai\";\"main\"\n\"2322722\";\"Suya\";\"main\"\n\"2322722\";\"Saya\";\"other\"\n\"2322722\";\"Souya\";\"other\"\n\"2322794\";\"Abuja\";\"main\"\n\"2322794\";\"Abudzha\";\"other\"\n\"2322794\";\"Sulaija\";\"other\"\n\"2322794\";\"Suleija\";\"other\"\n\"2322794\";\"Suleja\";\"other\"\n\"2322794\";\"Абуджа\";\"other\"\n\"2322911\";\"Sokoto\";\"main\"\n\"2322911\";\"Socoto\";\"other\"\n\"2322911\";\"Сокото\";\"other\"\n\"2322957\";\"Soba\";\"main\"\n\"2323011\";\"Siluko\";\"main\"\n\"2323146\";\"Shinkafe\";\"main\"\n\"2323146\";\"Shinkafi\";\"other\"\n\"2323344\";\"Shani\";\"main\"\n\"2323349\";\"Shanga\";\"main\"\n\"2323390\";\"Saki\";\"main\"\n\"2323390\";\"Shaki\";\"other\"\n\"2323390\";\"Саки\";\"other\"\n\"2323411\";\"Shagamu\";\"main\"\n\"2323411\";\"Sagamu\";\"other\"\n\"2323418\";\"Shaffa\";\"main\"\n\"2323579\";\"Sauri\";\"main\"\n\"2323579\";\"Samri\";\"other\"\n\"2323675\";\"Sapele\";\"main\"\n\"2323858\";\"Samamiya\";\"main\"\n\"2323858\";\"Samammiya\";\"other\"\n\"2323858\";\"Saman\";\"other\"\n\"2324024\";\"Sade\";\"main\"\n\"2324281\";\"Runka\";\"main\"\n\"2324325\";\"Ruma\";\"main\"\n\"2324439\";\"Riti\";\"main\"\n\"2324460\";\"Ringim\";\"main\"\n\"2324504\";\"Rijau\";\"main\"\n\"2324575\";\"Rano\";\"main\"\n\"2324623\";\"Rahama\";\"main\"\n\"2324623\";\"Samunakar\";\"other\"\n\"2324706\";\"Rabah\";\"main\"\n\"2324767\";\"Potiskum\";\"main\"\n\"2324767\";\"Putuskum\";\"other\"\n\"2324774\";\"Port Harcourt\";\"main\"\n\"2324774\";\"Port Harkortas\";\"other\"\n\"2324774\";\"Port Kharkurt\";\"other\"\n\"2324774\";\"bwrt harkwrt\";\"other\"\n\"2324774\";\"potohakoto\";\"other\"\n\"2324774\";\"Порт Харкурт\";\"other\"\n\"2324774\";\"بورت هاركورت\";\"other\"\n\"2324774\";\"ポートハーコート\";\"other\"\n\"2324857\";\"Pindiga\";\"main\"\n\"2324960\";\"Pategi\";\"main\"\n\"2324962\";\"Patani\";\"main\"\n\"2325032\";\"Panyam\";\"main\"\n\"2325060\";\"Pankshin\";\"main\"\n\"2325161\";\"Ozubulu\";\"main\"\n\"2325200\";\"Oyo\";\"main\"\n\"2325200\";\"Oio\";\"other\"\n\"2325200\";\"Oió\";\"other\"\n\"2325200\";\"Ojo\";\"other\"\n\"2325200\";\"Ойо\";\"other\"\n\"2325249\";\"Oyan\";\"main\"\n\"2325307\";\"Owode\";\"main\"\n\"2325314\";\"Owo\";\"main\"\n\"2325314\";\"Ovo\";\"other\"\n\"2325314\";\"Ово\";\"other\"\n\"2325330\";\"Owerri\";\"main\"\n\"2325330\";\"Overri\";\"other\"\n\"2325330\";\"Оверри\";\"other\"\n\"2325437\";\"Otukpa\";\"main\"\n\"2325590\";\"Osogbo\";\"main\"\n\"2325590\";\"Eshogbo\";\"other\"\n\"2325590\";\"Oshogbo\";\"other\"\n\"2325713\";\"Orodo\";\"main\"\n\"2325725\";\"Orlu\";\"main\"\n\"2325725\";\"Awlu\";\"other\"\n\"2325733\";\"Orita Eruwa\";\"main\"\n\"2325803\";\"Orerokpe\";\"main\"\n\"2325803\";\"Orerukpe\";\"other\"\n\"2325821\";\"Ore\";\"main\"\n\"2325902\";\"Opi\";\"main\"\n\"2326016\";\"Onitsha\";\"main\"\n\"2326016\";\"Onicha\";\"other\"\n\"2326171\";\"Ondo\";\"main\"\n\"2326171\";\"Ондо\";\"other\"\n\"2326188\";\"Omuo-Ekiti\";\"main\"\n\"2326188\";\"Omuo\";\"other\"\n\"2326188\";\"Omuo-Kota\";\"other\"\n\"2326200\";\"Omu Aran\";\"main\"\n\"2326200\";\"Omu\";\"other\"\n\"2326221\";\"Omoku\";\"main\"\n\"2326221\";\"Omoko\";\"other\"\n\"2326302\";\"Olupona\";\"main\"\n\"2326302\";\"Olupono\";\"other\"\n\"2326811\";\"Okuta\";\"main\"\n\"2326899\";\"Okrika\";\"main\"\n\"2327143\";\"Okigwi\";\"main\"\n\"2327223\";\"Oke Mesi\";\"main\"\n\"2327223\";\"Oke Messi\";\"other\"\n\"2327236\";\"Oke Iho\";\"main\"\n\"2327494\";\"Ohafia-Ifigh\";\"main\"\n\"2327513\";\"Ogwashi-Uku\";\"main\"\n\"2327513\";\"Ugwashi-Uku\";\"other\"\n\"2327521\";\"Oguta\";\"main\"\n\"2327523\";\"Ogurugu\";\"main\"\n\"2327523\";\"Ogrugru\";\"other\"\n\"2327650\";\"Ogoja\";\"main\"\n\"2327827\";\"Ogaminan\";\"main\"\n\"2327879\";\"Offa\";\"main\"\n\"2327879\";\"Оффа\";\"other\"\n\"2328090\";\"Ode\";\"main\"\n\"2328090\";\"Awde\";\"other\"\n\"2328090\";\"Oda\";\"other\"\n\"2328090\";\"Ода\";\"other\"\n\"2328113\";\"Ochobo\";\"main\"\n\"2328113\";\"Ochobu\";\"other\"\n\"2328151\";\"Obudu\";\"main\"\n\"2328153\";\"Obubra\";\"main\"\n\"2328185\";\"Obonoma\";\"main\"\n\"2328185\";\"Abonnema\";\"other\"\n\"2328192\";\"Obolo-Eke (1)\";\"main\"\n\"2328192\";\"Obolo Eke\";\"other\"\n\"2328276\";\"Obiaruku Quarters\";\"main\"\n\"2328276\";\"Obiariku\";\"other\"\n\"2328276\";\"Obiaruku\";\"other\"\n\"2328617\";\"Numan\";\"main\"\n\"2328684\";\"Nsukka\";\"main\"\n\"2328684\";\"Нсукка\";\"other\"\n\"2328765\";\"Nnewi\";\"main\"\n\"2328765\";\"Newi\";\"other\"\n\"2328765\";\"Nnjuvi\";\"other\"\n\"2328765\";\"Ннюви\";\"other\"\n\"2328790\";\"Nkwerre\";\"main\"\n\"2328811\";\"Nkpor\";\"main\"\n\"2328811\";\"Mkpor\";\"other\"\n\"2328952\";\"Nguru\";\"main\"\n\"2328952\";\"N'gourou\";\"other\"\n\"2328952\";\"N’gourou\";\"other\"\n\"2328960\";\"Ngurore\";\"main\"\n\"2329087\";\"Ngala\";\"main\"\n\"2329114\";\"New Shagunnu\";\"main\"\n\"2329114\";\"Shagunnu\";\"other\"\n\"2329451\";\"Nassarawa\";\"main\"\n\"2329451\";\"Nasarawa\";\"other\"\n\"2329451\";\"Nassarava\";\"other\"\n\"2329451\";\"Нассарава\";\"other\"\n\"2329562\";\"Nafada\";\"main\"\n\"2329639\";\"Mutum Biyu\";\"main\"\n\"2329664\";\"Musawa\";\"main\"\n\"2329821\";\"Mubi\";\"main\"\n\"2329821\";\"Муби\";\"other\"\n\"2329920\";\"Moriki\";\"main\"\n\"2329946\";\"Mongonu\";\"main\"\n\"2329946\";\"Mongono\";\"other\"\n\"2329946\";\"Monguno\";\"other\"\n\"2329981\";\"Mokwa\";\"main\"\n\"2330028\";\"Modakeke\";\"main\"\n\"2330082\";\"Misau\";\"main\"\n\"2330087\";\"Miringa\";\"main\"\n\"2330087\";\"Maringa\";\"other\"\n\"2330087\";\"Meringa\";\"other\"\n\"2330100\";\"Minna\";\"main\"\n\"2330100\";\"Минна\";\"other\"\n\"2330241\";\"Mekkaw\";\"main\"\n\"2330241\";\"Meko\";\"other\"\n\"2330543\";\"Mayo Belwa\";\"main\"\n\"2330543\";\"Maya Belwa\";\"other\"\n\"2330589\";\"Matsena\";\"main\"\n\"2330589\";\"Machina\";\"other\"\n\"2330664\";\"Mashi\";\"main\"\n\"2330717\";\"Maru\";\"main\"\n\"2330719\";\"Marte\";\"main\"\n\"2330719\";\"Marte-Kuna\";\"other\"\n\"2330937\";\"Mando\";\"main\"\n\"2331005\";\"Malumfashi\";\"main\"\n\"2331037\";\"Malummaduri\";\"main\"\n\"2331037\";\"Malam-Maduri\";\"other\"\n\"2331037\";\"Malamaduri\";\"other\"\n\"2331037\";\"Mallammaduri\";\"other\"\n\"2331140\";\"Makurdi\";\"main\"\n\"2331140\";\"Makurdu\";\"other\"\n\"2331140\";\"Макурди\";\"other\"\n\"2331267\";\"Maiyema\";\"main\"\n\"2331267\";\"Maiyama\";\"other\"\n\"2331447\";\"Maiduguri\";\"main\"\n\"2331447\";\"Maidiguri\";\"other\"\n\"2331447\";\"Maidugari\";\"other\"\n\"2331447\";\"Maiduguris\";\"other\"\n\"2331447\";\"maydwghwry\";\"other\"\n\"2331447\";\"Маидугури\";\"other\"\n\"2331447\";\"مايدوغوري\";\"other\"\n\"2331493\";\"Mahuta\";\"main\"\n\"2331528\";\"Magumeri\";\"main\"\n\"2331686\";\"Madara\";\"main\"\n\"2331694\";\"Madala\";\"main\"\n\"2331694\";\"Madalla\";\"other\"\n\"2331715\";\"Madagali\";\"main\"\n\"2331939\";\"Lokoja\";\"main\"\n\"2331939\";\"Lairdstown\";\"other\"\n\"2331939\";\"Zokoja\";\"other\"\n\"2332079\";\"Lere\";\"main\"\n\"2332079\";\"Lera\";\"other\"\n\"2332079\";\"Leri\";\"other\"\n\"2332079\";\"Лера\";\"other\"\n\"2332080\";\"Lere\";\"main\"\n\"2332197\";\"Lau\";\"main\"\n\"2332249\";\"Lapai\";\"main\"\n\"2332249\";\"Badeggi\";\"other\"\n\"2332249\";\"Badeji\";\"other\"\n\"2332280\";\"Langtang\";\"main\"\n\"2332337\";\"Lame\";\"main\"\n\"2332337\";\"Lemme\";\"other\"\n\"2332337\";\"Lemmi\";\"other\"\n\"2332357\";\"Lalupon\";\"main\"\n\"2332459\";\"Lagos\";\"main\"\n\"2332459\";\"Eko\";\"other\"\n\"2332459\";\"Lacupolis\";\"other\"\n\"2332459\";\"Lagosa\";\"other\"\n\"2332459\";\"Lagosas\";\"other\"\n\"2332459\";\"Lagoso\";\"other\"\n\"2332459\";\"Logos\";\"other\"\n\"2332459\";\"la ge si\";\"other\"\n\"2332459\";\"laghws\";\"other\"\n\"2332459\";\"lagosa\";\"other\"\n\"2332459\";\"lagoseu\";\"other\"\n\"2332459\";\"lagws\";\"other\"\n\"2332459\";\"lakxs\";\"other\"\n\"2332459\";\"ragosu\";\"other\"\n\"2332459\";\"Лагос\";\"other\"\n\"2332459\";\"לאגוס\";\"other\"\n\"2332459\";\"لاغوس\";\"other\"\n\"2332459\";\"لاگوس\";\"other\"\n\"2332459\";\"लागोस\";\"other\"\n\"2332459\";\"ลากอส\";\"other\"\n\"2332459\";\"ラゴス\";\"other\"\n\"2332459\";\"拉哥斯\";\"other\"\n\"2332459\";\"라고스\";\"other\"\n\"2332504\";\"Lafiagi\";\"main\"\n\"2332515\";\"Lafia\";\"main\"\n\"2332515\";\"Lafia Beriberi\";\"other\"\n\"2332662\";\"Kwolla\";\"main\"\n\"2332733\";\"Kwatarkwashi\";\"main\"\n\"2332733\";\"Kotorkoshi\";\"other\"\n\"2332733\";\"Kotorkushi\";\"other\"\n\"2332865\";\"Kwali\";\"main\"\n\"2332871\";\"Kwale\";\"main\"\n\"2332871\";\"Kwale Station\";\"other\"\n\"2332871\";\"Obetim\";\"other\"\n\"2333064\";\"Kuta\";\"main\"\n\"2333096\";\"Kusheriki\";\"main\"\n\"2333096\";\"Kusherki\";\"other\"\n\"2333312\";\"Kura\";\"main\"\n\"2333451\";\"Kumo\";\"main\"\n\"2333490\";\"Kumagunnam\";\"main\"\n\"2333490\";\"Kumaganum\";\"other\"\n\"2333490\";\"Kumagunam\";\"other\"\n\"2333563\";\"Kukawa\";\"main\"\n\"2333563\";\"Koukaoua\";\"other\"\n\"2333563\";\"Koukawa\";\"other\"\n\"2333606\";\"Kujama\";\"main\"\n\"2333884\";\"Koton Karifi\";\"main\"\n\"2334008\";\"Kontagora\";\"main\"\n\"2334018\";\"Konkwesso\";\"main\"\n\"2334018\";\"Konkweso\";\"other\"\n\"2334044\";\"Konduga\";\"main\"\n\"2334044\";\"Kanduga\";\"other\"\n\"2334327\";\"Kishi\";\"main\"\n\"2334502\";\"Kibiya\";\"main\"\n\"2334592\";\"Kende\";\"main\"\n\"2334649\";\"Keffin Hausa\";\"main\"\n\"2334649\";\"Kaffin-Hausa\";\"other\"\n\"2334649\";\"Kafin Hausa\";\"other\"\n\"2334652\";\"Keffi\";\"main\"\n\"2334674\";\"Kazaure\";\"main\"\n\"2334756\";\"Kaura Namoda\";\"main\"\n\"2334801\";\"Katsina Ala\";\"main\"\n\"2334801\";\"Katsena Ala\";\"other\"\n\"2334802\";\"Katsina\";\"main\"\n\"2334802\";\"Катсина\";\"other\"\n\"2334861\";\"Katagum\";\"main\"\n\"2335015\";\"Kari\";\"main\"\n\"2335204\";\"Kano\";\"main\"\n\"2335204\";\"Cano\";\"other\"\n\"2335204\";\"Kanas\";\"other\"\n\"2335204\";\"Kanoriket\";\"other\"\n\"2335204\";\"kano\";\"other\"\n\"2335204\";\"kanw\";\"other\"\n\"2335204\";\"Кано\";\"other\"\n\"2335204\";\"كانو\";\"other\"\n\"2335204\";\"カノ\";\"other\"\n\"2335219\";\"Kankara\";\"main\"\n\"2335333\";\"Kamba\";\"main\"\n\"2335333\";\"Kambo\";\"other\"\n\"2335333\";\"Камба\";\"other\"\n\"2335369\";\"Kaltungo\";\"main\"\n\"2335369\";\"Kalfungo\";\"other\"\n\"2335500\";\"Kajuru\";\"main\"\n\"2335568\";\"Kaingiwa\";\"main\"\n\"2335568\";\"Kangiwa\";\"other\"\n\"2335596\";\"Kaiama\";\"main\"\n\"2335596\";\"Kaima\";\"other\"\n\"2335614\";\"Kagoro\";\"main\"\n\"2335709\";\"Kafarati\";\"main\"\n\"2335709\";\"Kafareti\";\"other\"\n\"2335713\";\"Kafachan\";\"main\"\n\"2335713\";\"Kafanchan\";\"other\"\n\"2335713\";\"Kafanchan Junction\";\"other\"\n\"2335713\";\"Kajanchan\";\"other\"\n\"2335727\";\"Kaduna\";\"main\"\n\"2335727\";\"kadwna\";\"other\"\n\"2335727\";\"Кадуна\";\"other\"\n\"2335727\";\"كادونا\";\"other\"\n\"2335798\";\"Kachia\";\"main\"\n\"2335843\";\"Kabba\";\"main\"\n\"2335953\";\"Jos\";\"main\"\n\"2335953\";\"Йос\";\"other\"\n\"2336056\";\"Jimeta\";\"main\"\n\"2336092\";\"Jikamshi\";\"main\"\n\"2336137\";\"Jibiya\";\"main\"\n\"2336137\";\"Djibia\";\"other\"\n\"2336237\";\"Jega\";\"main\"\n\"2336251\";\"Jebba\";\"main\"\n\"2336251\";\"Djebba\";\"other\"\n\"2336589\";\"Jalingo\";\"main\"\n\"2336624\";\"Jajere\";\"main\"\n\"2336624\";\"Lajere\";\"other\"\n\"2336905\";\"Iwo\";\"main\"\n\"2336905\";\"Ivo\";\"other\"\n\"2336905\";\"Иво\";\"other\"\n\"2336985\";\"Itu\";\"main\"\n\"2337148\";\"Isieke\";\"main\"\n\"2337207\";\"Ise-Ekiti\";\"main\"\n\"2337207\";\"Ise\";\"other\"\n\"2337227\";\"Isara\";\"main\"\n\"2337227\";\"Ishara\";\"other\"\n\"2337235\";\"Isanlu Itedoijowa\";\"main\"\n\"2337352\";\"Ipoti\";\"main\"\n\"2337379\";\"Iperu\";\"main\"\n\"2337490\";\"Inisa\";\"main\"\n\"2337639\";\"Ilorin\";\"main\"\n\"2337639\";\"Illorin\";\"other\"\n\"2337659\";\"Ilobu\";\"main\"\n\"2337666\";\"Illushi\";\"main\"\n\"2337680\";\"Illela\";\"main\"\n\"2337704\";\"Ilesa\";\"main\"\n\"2337704\";\"Ilesha\";\"other\"\n\"2337759\";\"Ilaro\";\"main\"\n\"2337762\";\"Ilare\";\"main\"\n\"2337762\";\"Ilara\";\"other\"\n\"2337765\";\"Ila Orangun\";\"main\"\n\"2337765\";\"Ila\";\"other\"\n\"2338106\";\"Ikot-Ekpene\";\"main\"\n\"2338106\";\"Ikot Expene\";\"other\"\n\"2338242\";\"Ikom\";\"main\"\n\"2338269\";\"Ikirun\";\"main\"\n\"2338273\";\"Ikire\";\"main\"\n\"2338287\";\"Ikerre\";\"main\"\n\"2338287\";\"Ikare\";\"other\"\n\"2338287\";\"Ikere\";\"other\"\n\"2338287\";\"Ikere-Ekiti\";\"other\"\n\"2338305\";\"Ikem\";\"main\"\n\"2338313\";\"Ikeja\";\"main\"\n\"2338334\";\"Ikang\";\"main\"\n\"2338385\";\"Ijero-Ekiti\";\"main\"\n\"2338385\";\"Ijero\";\"other\"\n\"2338400\";\"Ijebu-Ode\";\"main\"\n\"2338400\";\"Ijebu Ode\";\"other\"\n\"2338401\";\"Ijebu Ijesha\";\"main\"\n\"2338403\";\"Ijebu-Igbo\";\"main\"\n\"2338404\";\"Ijebu-Ife\";\"main\"\n\"2338469\";\"Ihuo\";\"main\"\n\"2338497\";\"Ihiala\";\"main\"\n\"2338630\";\"Igede-Ekiti\";\"main\"\n\"2338630\";\"Igbede\";\"other\"\n\"2338630\";\"Igede\";\"other\"\n\"2338640\";\"Igbo-Ukwu\";\"main\"\n\"2338640\";\"Igbo\";\"other\"\n\"2338660\";\"Igbor\";\"main\"\n\"2338669\";\"Igbo Ora\";\"main\"\n\"2338669\";\"Igbo-Awra\";\"other\"\n\"2338711\";\"Igboho\";\"main\"\n\"2338772\";\"Igbeti\";\"main\"\n\"2338772\";\"Igbetti\";\"other\"\n\"2338810\";\"Igbara-Odo\";\"main\"\n\"2338810\";\"Igbarra-Odo\";\"other\"\n\"2338840\";\"Igarra\";\"main\"\n\"2338840\";\"Igara\";\"other\"\n\"2338863\";\"Igabi\";\"main\"\n\"2338873\";\"Ifon\";\"main\"\n\"2338876\";\"Ifo\";\"main\"\n\"2338876\";\"Ifaw\";\"other\"\n\"2338908\";\"Ifaki\";\"main\"\n\"2339065\";\"Idi Iroko\";\"main\"\n\"2339065\";\"Idiroko\";\"other\"\n\"2339150\";\"Idanre\";\"main\"\n\"2339156\";\"Idah\";\"main\"\n\"2339170\";\"Icheu\";\"main\"\n\"2339287\";\"Ibi\";\"main\"\n\"2339293\";\"Ibeto\";\"main\"\n\"2339354\";\"Ibadan\";\"main\"\n\"2339354\";\"Ibadana\";\"other\"\n\"2339354\";\"Ibadanas\";\"other\"\n\"2339354\";\"aybadan\";\"other\"\n\"2339354\";\"ibadan\";\"other\"\n\"2339354\";\"Ибадан\";\"other\"\n\"2339354\";\"إيبادان\";\"other\"\n\"2339354\";\"ايبادان\";\"other\"\n\"2339354\";\"イバダン\";\"other\"\n\"2339403\";\"Hunkuyi\";\"main\"\n\"2339468\";\"Holma\";\"main\"\n\"2339483\";\"Hinna\";\"main\"\n\"2339631\";\"Hadejia\";\"main\"\n\"2339665\";\"Gwoza\";\"main\"\n\"2339706\";\"Gwio Kura\";\"main\"\n\"2339753\";\"Gwasero\";\"main\"\n\"2339756\";\"Gwarzo\";\"main\"\n\"2339786\";\"Gwaram\";\"main\"\n\"2339786\";\"Old Gwaram\";\"other\"\n\"2339789\";\"Gwaram\";\"main\"\n\"2339811\";\"Gwandu\";\"main\"\n\"2339892\";\"Gwadabawa\";\"main\"\n\"2339937\";\"Gusau\";\"main\"\n\"2339937\";\"Гусау\";\"other\"\n\"2340086\";\"Gummi\";\"main\"\n\"2340086\";\"Gunmi\";\"other\"\n\"2340086\";\"Kunmi\";\"other\"\n\"2340086\";\"Кунми\";\"other\"\n\"2340091\";\"Gumel\";\"main\"\n\"2340132\";\"Gulma\";\"main\"\n\"2340170\";\"Gujba\";\"main\"\n\"2340323\";\"Goronyo\";\"main\"\n\"2340350\";\"Gorgoram\";\"main\"\n\"2340350\";\"Gorgorum\";\"other\"\n\"2340389\";\"Gora\";\"main\"\n\"2340404\";\"Goniri\";\"main\"\n\"2340446\";\"Little Gombi\";\"main\"\n\"2340446\";\"Gombe\";\"other\"\n\"2340446\";\"Gombi\";\"other\"\n\"2340446\";\"Gombi Fulani\";\"other\"\n\"2340451\";\"Gombe\";\"main\"\n\"2341275\";\"Gembu\";\"main\"\n\"2341294\";\"Geidam\";\"main\"\n\"2341355\";\"Gbongan\";\"main\"\n\"2341580\";\"Gaya\";\"main\"\n\"2341641\";\"Gassol\";\"main\"\n\"2341656\";\"Gashua\";\"main\"\n\"2341758\";\"Garko\";\"main\"\n\"2341955\";\"Ganye\";\"main\"\n\"2342125\";\"Gandi\";\"main\"\n\"2342192\";\"Gambaru\";\"main\"\n\"2342199\";\"Gamawa\";\"main\"\n\"2342291\";\"Gakem\";\"main\"\n\"2342340\";\"Gagarawa\";\"main\"\n\"2342340\";\"Gargaraw\";\"other\"\n\"2342340\";\"Gargarawa\";\"other\"\n\"2342439\";\"Gabarin\";\"main\"\n\"2342490\";\"Funtua\";\"main\"\n\"2342490\";\"Puntua\";\"other\"\n\"2342628\";\"Fiditi\";\"main\"\n\"2342883\";\"Ezza Ohu\";\"main\"\n\"2343057\";\"Etinan\";\"main\"\n\"2343073\";\"Ete\";\"main\"\n\"2343093\";\"Esuk Oron\";\"main\"\n\"2343252\";\"Epe\";\"main\"\n\"2343252\";\"Ehpe\";\"other\"\n\"2343252\";\"Epeh\";\"other\"\n\"2343252\";\"Эпе\";\"other\"\n\"2343270\";\"Enugu-Ukwu\";\"main\"\n\"2343270\";\"Enugu\";\"other\"\n\"2343270\";\"Enugwu-Ukwu\";\"other\"\n\"2343273\";\"Enugu-Ezike\";\"main\"\n\"2343279\";\"Enugu\";\"main\"\n\"2343279\";\"Enuga\";\"other\"\n\"2343279\";\"Енугу\";\"other\"\n\"2343299\";\"Emure-Ekiti\";\"main\"\n\"2343299\";\"Emure\";\"other\"\n\"2343512\";\"Elele\";\"main\"\n\"2343641\";\"Ekpoma\";\"main\"\n\"2343720\";\"Eket\";\"main\"\n\"2343776\";\"Ejirin\";\"main\"\n\"2343776\";\"Ejinrin\";\"other\"\n\"2343776\";\"Euni\";\"other\"\n\"2343784\";\"Ejigbo\";\"main\"\n\"2343822\";\"Eha Amufu\";\"main\"\n\"2343943\";\"Egbe\";\"main\"\n\"2343983\";\"Effon Alaiye\";\"main\"\n\"2343983\";\"Efon-Alaiye\";\"other\"\n\"2343985\";\"Effium\";\"main\"\n\"2344082\";\"Ebute Ikorodu\";\"main\"\n\"2344082\";\"Awja-Ikoradu\";\"other\"\n\"2344082\";\"Ebute-Egga\";\"other\"\n\"2344217\";\"Dutsin Ma\";\"main\"\n\"2344217\";\"Dutsin Wai\";\"other\"\n\"2344229\";\"Dutsen Wai\";\"main\"\n\"2344229\";\"Dutsan Wai\";\"other\"\n\"2344245\";\"Dutse\";\"main\"\n\"2344245\";\"Dutsi\";\"other\"\n\"2344415\";\"Duku\";\"main\"\n\"2344415\";\"Dukku\";\"other\"\n\"2344418\";\"Dukku\";\"main\"\n\"2344418\";\"Duku\";\"other\"\n\"2344600\";\"Doma\";\"main\"\n\"2344760\";\"Disina\";\"main\"\n\"2344804\";\"Dindima\";\"main\"\n\"2344804\";\"Dindawa\";\"other\"\n\"2344854\";\"Dikwa\";\"main\"\n\"2344854\";\"Dikoa\";\"other\"\n\"2344941\";\"Dengi\";\"main\"\n\"2344981\";\"Dekina\";\"main\"\n\"2345029\";\"Deba Habe\";\"main\"\n\"2345029\";\"Deba\";\"other\"\n\"2345094\";\"Daura\";\"main\"\n\"2345094\";\"Даура\";\"other\"\n\"2345096\";\"Daura\";\"main\"\n\"2345152\";\"Darazo\";\"main\"\n\"2345172\";\"Dapchi\";\"main\"\n\"2345213\";\"Dan Sadau\";\"main\"\n\"2345282\";\"Dankama\";\"main\"\n\"2345283\";\"Dankalwa\";\"main\"\n\"2345283\";\"Dankalwar\";\"other\"\n\"2345306\";\"Danja\";\"main\"\n\"2345336\";\"Dan Gora\";\"main\"\n\"2345349\";\"Dange\";\"main\"\n\"2345349\";\"Denge\";\"other\"\n\"2345498\";\"Damboa\";\"main\"\n\"2345498\";\"Dumboa\";\"other\"\n\"2345505\";\"Dambarta\";\"main\"\n\"2345505\";\"Dambatta\";\"other\"\n\"2345505\";\"Danbata\";\"other\"\n\"2345505\";\"Danbatta\";\"other\"\n\"2345521\";\"Damaturu\";\"main\"\n\"2345526\";\"Damasak\";\"main\"\n\"2345526\";\"Damask\";\"other\"\n\"2345643\";\"Dakingari\";\"main\"\n\"2345785\";\"Dadiya\";\"main\"\n\"2345872\";\"Dabai\";\"main\"\n\"2346199\";\"Chafe\";\"main\"\n\"2346229\";\"Calabar\";\"main\"\n\"2346229\";\"Kalabar\";\"other\"\n\"2346229\";\"Калабар\";\"other\"\n\"2346317\";\"Burutu\";\"main\"\n\"2346322\";\"Burumburum\";\"main\"\n\"2346396\";\"Bunza\";\"main\"\n\"2346399\";\"Bununu Kasa\";\"main\"\n\"2346399\";\"Bununu\";\"other\"\n\"2346399\";\"Bununu Kassa\";\"other\"\n\"2346401\";\"Bununu Dass\";\"main\"\n\"2346401\";\"Bununu\";\"other\"\n\"2346561\";\"Bukuru\";\"main\"\n\"2346615\";\"Buguma\";\"main\"\n\"2346615\";\"Bugama\";\"other\"\n\"2346632\";\"Buga\";\"main\"\n\"2346734\";\"Brass\";\"main\"\n\"2346734\";\"Brass Town\";\"other\"\n\"2346788\";\"Bornu Yassu\";\"main\"\n\"2346800\";\"Bori\";\"main\"\n\"2346805\";\"Bopo\";\"main\"\n\"2346805\";\"Bopa\";\"other\"\n\"2346812\";\"Bonny\";\"main\"\n\"2346812\";\"Bonny Town\";\"other\"\n\"2346843\";\"Bomadi\";\"main\"\n\"2346843\";\"Bomodi\";\"other\"\n\"2346887\";\"Bokkos\";\"main\"\n\"2346893\";\"Bokani\";\"main\"\n\"2346896\";\"Boju\";\"main\"\n\"2346906\";\"Boi\";\"main\"\n\"2346951\";\"Bode Sadu\";\"main\"\n\"2346995\";\"Biu\";\"main\"\n\"2347041\";\"Birniwa\";\"main\"\n\"2347041\";\"Birinawa\";\"other\"\n\"2347041\";\"Biriniwa\";\"other\"\n\"2347057\";\"Birnin Kudu\";\"main\"\n\"2347059\";\"Birnin Kebbi\";\"main\"\n\"2347061\";\"Sofo-Birnin-Gwari\";\"main\"\n\"2347061\";\"Birni-Gwari\";\"other\"\n\"2347061\";\"Birnin-Gwari\";\"other\"\n\"2347109\";\"Bin Yauri\";\"main\"\n\"2347116\";\"Binji\";\"main\"\n\"2347155\";\"Biliri\";\"main\"\n\"2347155\";\"Billiri\";\"other\"\n\"2347209\";\"Bida\";\"main\"\n\"2347209\";\"Бида\";\"other\"\n\"2347279\";\"Benisheik\";\"main\"\n\"2347279\";\"Beni Sheik\";\"other\"\n\"2347279\";\"Benisheikh\";\"other\"\n\"2347283\";\"Benin City\";\"main\"\n\"2347283\";\"Benim\";\"other\"\n\"2347283\";\"Benin\";\"other\"\n\"2347283\";\"Benin-Siti\";\"other\"\n\"2347283\";\"Benin-Stadt\";\"other\"\n\"2347283\";\"Beninas\";\"other\"\n\"2347283\";\"Bénin\";\"other\"\n\"2347283\";\"mdynt bnyn\";\"other\"\n\"2347283\";\"Бенин-Сити\";\"other\"\n\"2347283\";\"مدينة بنين\";\"other\"\n\"2347303\";\"Bende\";\"main\"\n\"2347304\";\"Bena\";\"main\"\n\"2347330\";\"Beli\";\"main\"\n\"2347330\";\"Bali\";\"other\"\n\"2347383\";\"Bebeji\";\"main\"\n\"2347470\";\"Bauchi\";\"main\"\n\"2347470\";\"Yakoba\";\"other\"\n\"2347470\";\"Yakubu\";\"other\"\n\"2347470\";\"Баучи\";\"other\"\n\"2347483\";\"Batsari\";\"main\"\n\"2347592\";\"Baro\";\"main\"\n\"2347592\";\"Barbo\";\"other\"\n\"2347592\";\"Баро\";\"other\"\n\"2347758\";\"Bara\";\"main\"\n\"2347954\";\"Bama\";\"main\"\n\"2348118\";\"Bakori\";\"main\"\n\"2348228\";\"Baissa\";\"main\"\n\"2348228\";\"Bdissa\";\"other\"\n\"2348259\";\"Bagudo\";\"main\"\n\"2348259\";\"Tuga\";\"other\"\n\"2348298\";\"Bugana\";\"main\"\n\"2348298\";\"Bagana\";\"other\"\n\"2348365\";\"Badeggi\";\"main\"\n\"2348365\";\"Badegg\";\"other\"\n\"2348395\";\"Badagry\";\"main\"\n\"2348395\";\"Badagri\";\"other\"\n\"2348419\";\"Babura\";\"main\"\n\"2348507\";\"Babana\";\"main\"\n\"2348595\";\"Azare\";\"main\"\n\"2348773\";\"Awka\";\"main\"\n\"2348773\";\"Akwa\";\"other\"\n\"2348783\";\"Awgu\";\"main\"\n\"2348874\";\"Auna\";\"main\"\n\"2348892\";\"Auchi\";\"main\"\n\"2349276\";\"Asaba\";\"main\"\n\"2349276\";\"Асаба\";\"other\"\n\"2349360\";\"Arochukwu\";\"main\"\n\"2349360\";\"Arochuku\";\"other\"\n\"2349431\";\"Argungu\";\"main\"\n\"2349529\";\"Araomoko Ekiti\";\"main\"\n\"2349529\";\"Ara\";\"other\"\n\"2349529\";\"Aramoko-Ekiti\";\"other\"\n\"2349558\";\"Apomu\";\"main\"\n\"2349788\";\"Ankpa\";\"main\"\n\"2349788\";\"Ank\";\"other\"\n\"2349797\";\"Anka\";\"main\"\n\"2349951\";\"Anchau\";\"main\"\n\"2350027\";\"Amper\";\"main\"\n\"2350172\";\"Amassoma\";\"main\"\n\"2350172\";\"Amasama\";\"other\"\n\"2350172\";\"Amassama\";\"other\"\n\"2350249\";\"Amaigbo\";\"main\"\n\"2350259\";\"Amagunze\";\"main\"\n\"2350436\";\"Aliade\";\"main\"\n\"2350436\";\"Eleyeddi\";\"other\"\n\"2350592\";\"Alapa\";\"main\"\n\"2350806\";\"Akwanga\";\"main\"\n\"2350841\";\"Akure\";\"main\"\n\"2350841\";\"Akuce\";\"other\"\n\"2350886\";\"Aku\";\"main\"\n\"2351027\";\"Akko\";\"main\"\n\"2351027\";\"Ako\";\"other\"\n\"2351156\";\"Ake-Eze\";\"main\"\n\"2351156\";\"Aka Eze\";\"other\"\n\"2351156\";\"Akeze\";\"other\"\n\"2351209\";\"Akankpa\";\"main\"\n\"2351461\";\"Ajasse Ipo\";\"main\"\n\"2351461\";\"Ajasse\";\"other\"\n\"2351470\";\"Ajaokuta\";\"main\"\n\"2351657\";\"Ahoada\";\"main\"\n\"2351657\";\"Ahoadao\";\"other\"\n\"2351740\";\"Agulu\";\"main\"\n\"2351850\";\"Ago Are\";\"main\"\n\"2351850\";\"Agaw-Are\";\"other\"\n\"2351927\";\"Agenebode\";\"main\"\n\"2351979\";\"Agbor\";\"main\"\n\"2351979\";\"Afbor\";\"other\"\n\"2351979\";\"Agbor-BoIIboji\";\"other\"\n\"2352110\";\"Agbabu\";\"main\"\n\"2352175\";\"Agaie\";\"main\"\n\"2352250\";\"Afikpo\";\"main\"\n\"2352352\";\"Adoru\";\"main\"\n\"2352356\";\"Ado Odo\";\"main\"\n\"2352356\";\"Addo\";\"other\"\n\"2352356\";\"Ado\";\"other\"\n\"2352379\";\"Ado-Ekiti\";\"main\"\n\"2352589\";\"Adani\";\"main\"\n\"2352778\";\"Abuja\";\"main\"\n\"2352778\";\"Abudza\";\"other\"\n\"2352778\";\"Abudzha\";\"other\"\n\"2352778\";\"Abudża\";\"other\"\n\"2352778\";\"Abudža\";\"other\"\n\"2352778\";\"Abugo\";\"other\"\n\"2352778\";\"Abuya\";\"other\"\n\"2352778\";\"Abuĝo\";\"other\"\n\"2352778\";\"Ampouza\";\"other\"\n\"2352778\";\"a bu jia\";\"other\"\n\"2352778\";\"abuja\";\"other\"\n\"2352778\";\"abwja\";\"other\"\n\"2352778\";\"Αμπούζα\";\"other\"\n\"2352778\";\"Абуджа\";\"other\"\n\"2352778\";\"Абуџа\";\"other\"\n\"2352778\";\"Աբուջա\";\"other\"\n\"2352778\";\"אבוג'ה\";\"other\"\n\"2352778\";\"آبوجا\";\"other\"\n\"2352778\";\"أبوجا\";\"other\"\n\"2352778\";\"አቡጃ\";\"other\"\n\"2352778\";\"アブジャ\";\"other\"\n\"2352778\";\"阿布贾\";\"other\"\n\"2352778\";\"아부자\";\"other\"\n\"2352804\";\"Abraka\";\"main\"\n\"2352804\";\"Kwale\";\"other\"\n\"2352857\";\"Abocho\";\"main\"\n\"2352947\";\"Abeokuta\";\"main\"\n\"2352947\";\"a bei ao ku ta\";\"other\"\n\"2352947\";\"Абеокута\";\"other\"\n\"2352947\";\"阿贝奥库塔\";\"other\"\n\"2353099\";\"Abakaliki\";\"main\"\n\"2353099\";\"a ba ka li ji\";\"other\"\n\"2353099\";\"阿巴卡利基\";\"other\"\n\"2353100\";\"Abak\";\"main\"\n\"2353151\";\"Aba\";\"main\"\n\"2353151\";\"a ba\";\"other\"\n\"2353151\";\"Аба\";\"other\"\n\"2353151\";\"阿巴\";\"other\"\n\"2591159\";\"Degema Hulk\";\"main\"\n\"3615669\";\"Yalagüina\";\"main\"\n\"3615669\";\"Yalaguina\";\"ascii\"\n\"3615683\";\"Wiwilí\";\"main\"\n\"3615683\";\"Wiwili\";\"ascii\"\n\"3615683\";\"Guiguili\";\"other\"\n\"3615683\";\"Guiguilí\";\"other\"\n\"3615683\";\"Guiquili\";\"other\"\n\"3615730\";\"Waspam\";\"main\"\n\"3615730\";\"Huaspan\";\"other\"\n\"3615730\";\"Waspan\";\"other\"\n\"3615730\";\"Waspán\";\"other\"\n\"3615745\";\"Waslala\";\"main\"\n\"3615813\";\"Villa Sandino\";\"main\"\n\"3615813\";\"Viila Somoza\";\"other\"\n\"3615813\";\"Villa Somoza\";\"other\"\n\"3615865\";\"Valle San Francisco\";\"main\"\n\"3615998\";\"Totogalpa\";\"main\"\n\"3616019\";\"Tola\";\"main\"\n\"3616028\";\"Tisma\";\"main\"\n\"3616035\";\"Tipitapa\";\"main\"\n\"3616035\";\"Типитапа\";\"other\"\n\"3616064\";\"Ticuantepe\";\"main\"\n\"3616070\";\"Teustepe\";\"main\"\n\"3616070\";\"Tuestepe\";\"other\"\n\"3616076\";\"Terrabona\";\"main\"\n\"3616076\";\"Terabona\";\"other\"\n\"3616088\";\"Telpaneca\";\"main\"\n\"3616092\";\"Telica\";\"main\"\n\"3616232\";\"Somoto\";\"main\"\n\"3616234\";\"Somotillo\";\"main\"\n\"3616234\";\"Poyas\";\"other\"\n\"3616253\";\"Siuna\";\"main\"\n\"3616253\";\"Suina\";\"other\"\n\"3616349\";\"Santo Tomás\";\"main\"\n\"3616349\";\"Santo Tomas\";\"ascii\"\n\"3616349\";\"Santa Tomas\";\"other\"\n\"3616356\";\"Santo Domingo\";\"main\"\n\"3616356\";\"Santa Domingo\";\"other\"\n\"3616381\";\"Santa Teresa\";\"main\"\n\"3616387\";\"Santa Rosa del Peñón\";\"main\"\n\"3616387\";\"Santa Rosa del Penon\";\"ascii\"\n\"3616387\";\"Santa Rosa\";\"other\"\n\"3616459\";\"Santa Lucía\";\"main\"\n\"3616459\";\"Santa Lucia\";\"ascii\"\n\"3616572\";\"San Sebastián de Yalí\";\"main\"\n\"3616572\";\"San Sebastian de Yali\";\"ascii\"\n\"3616572\";\"Yali\";\"other\"\n\"3616572\";\"Yalí\";\"other\"\n\"3616584\";\"San Ramón\";\"main\"\n\"3616584\";\"San Ramon\";\"ascii\"\n\"3616594\";\"San Rafael del Sur\";\"main\"\n\"3616594\";\"San Rafael\";\"other\"\n\"3616597\";\"San Rafael del Norte\";\"main\"\n\"3616659\";\"San Miguelito\";\"main\"\n\"3616659\";\"San Miguellito\";\"other\"\n\"3616682\";\"San Marcos\";\"main\"\n\"3616708\";\"San Lorenzo\";\"main\"\n\"3616721\";\"San Juan de Río Coco\";\"main\"\n\"3616721\";\"San Juan de Rio Coco\";\"ascii\"\n\"3616721\";\"San Juan\";\"other\"\n\"3616721\";\"San Juan de Telpaneca\";\"other\"\n\"3616721\";\"San Juan del Rio Coco\";\"other\"\n\"3616721\";\"San Juan del Río Coco\";\"other\"\n\"3616723\";\"San Juan de Oriente\";\"main\"\n\"3616723\";\"San Juan\";\"other\"\n\"3616726\";\"San Juan del Sur\";\"main\"\n\"3616732\";\"San Juan de Limay\";\"main\"\n\"3616732\";\"Limay\";\"other\"\n\"3616753\";\"San José de los Remates\";\"main\"\n\"3616753\";\"San Jose de los Remates\";\"ascii\"\n\"3616753\";\"San Jose\";\"other\"\n\"3616753\";\"San José\";\"other\"\n\"3616757\";\"San José de Cusmapa\";\"main\"\n\"3616757\";\"San Jose de Cusmapa\";\"ascii\"\n\"3616757\";\"Cusmapa\";\"other\"\n\"3616759\";\"San José de Bocay\";\"main\"\n\"3616759\";\"San Jose de Bocay\";\"ascii\"\n\"3616794\";\"San Jorge\";\"main\"\n\"3616871\";\"San Fernando\";\"main\"\n\"3616888\";\"San Dionisio\";\"main\"\n\"3616911\";\"San Carlos\";\"main\"\n\"3617052\";\"Rivas\";\"main\"\n\"3617052\";\"Nicaragua\";\"other\"\n\"3617052\";\"Villa of Nicaragua\";\"other\"\n\"3617052\";\"Ривас\";\"other\"\n\"3617069\";\"Río Blanco\";\"main\"\n\"3617069\";\"Rio Blanco\";\"ascii\"\n\"3617095\";\"Rama\";\"main\"\n\"3617095\";\"Ciudad Rama\";\"other\"\n\"3617095\";\"Ramy\";\"other\"\n\"3617095\";\"Рамы\";\"other\"\n\"3617109\";\"Quilalí\";\"main\"\n\"3617109\";\"Quilali\";\"ascii\"\n\"3617115\";\"Quezalguaque\";\"main\"\n\"3617115\";\"Quesalguaque\";\"other\"\n\"3617146\";\"Puerto Morazán\";\"main\"\n\"3617146\";\"Puerto Morazan\";\"ascii\"\n\"3617146\";\"Morazan\";\"other\"\n\"3617146\";\"Morazán\";\"other\"\n\"3617154\";\"Puerto Cabezas\";\"main\"\n\"3617154\";\"Bilwi\";\"other\"\n\"3617154\";\"Bragman's Bluff\";\"other\"\n\"3617154\";\"Bragman’s Bluff\";\"other\"\n\"3617154\";\"Puehrto-Kabesas\";\"other\"\n\"3617154\";\"Пуэрто-Кабесас\";\"other\"\n\"3617162\";\"Pueblo Nuevo\";\"main\"\n\"3617187\";\"Potosí\";\"main\"\n\"3617187\";\"Potosi\";\"ascii\"\n\"3617191\";\"Posoltega\";\"main\"\n\"3617191\";\"Posoletega\";\"other\"\n\"3617388\";\"Palacagüina\";\"main\"\n\"3617388\";\"Palacaguina\";\"ascii\"\n\"3617448\";\"Ocotal\";\"main\"\n\"3617448\";\"Okotal'\";\"other\"\n\"3617448\";\"Окоталь\";\"other\"\n\"3617457\";\"Nuevo Amanecer\";\"main\"\n\"3617457\";\"Tortuguero\";\"other\"\n\"3617459\";\"Nueva Guinea\";\"main\"\n\"3617459\";\"Colonia Nueva Guinea\";\"other\"\n\"3617470\";\"Niquinohomo\";\"main\"\n\"3617470\";\"Niqui\";\"other\"\n\"3617470\";\"Niquinomo\";\"other\"\n\"3617473\";\"Nindirí\";\"main\"\n\"3617473\";\"Nindiri\";\"ascii\"\n\"3617510\";\"Nandasmo\";\"main\"\n\"3617510\";\"Nandasma\";\"other\"\n\"3617513\";\"Nandaime\";\"main\"\n\"3617522\";\"Nagarote\";\"main\"\n\"3617522\";\"Nagorote\";\"other\"\n\"3617532\";\"Muy Muy\";\"main\"\n\"3617543\";\"Murra\";\"main\"\n\"3617543\";\"San Juan\";\"other\"\n\"3617543\";\"San Juan de Murra\";\"other\"\n\"3617562\";\"Muelle de los Bueyes\";\"main\"\n\"3617565\";\"Mozonte\";\"main\"\n\"3617565\";\"Mosonte\";\"other\"\n\"3617569\";\"Moyogalpa\";\"main\"\n\"3617575\";\"Morrito\";\"main\"\n\"3617575\";\"El Morrito\";\"other\"\n\"3617575\";\"Puerto Morrito\";\"other\"\n\"3617694\";\"Matiguás\";\"main\"\n\"3617694\";\"Matiguas\";\"ascii\"\n\"3617708\";\"Matagalpa\";\"main\"\n\"3617708\";\"Matagal'pa\";\"other\"\n\"3617708\";\"Матагальпа\";\"other\"\n\"3617723\";\"Masaya\";\"main\"\n\"3617723\";\"Masaja\";\"other\"\n\"3617723\";\"Масая\";\"other\"\n\"3617725\";\"Masatepe\";\"main\"\n\"3617730\";\"Masachapa\";\"main\"\n\"3617730\";\"Puerto Masachapa\";\"other\"\n\"3617730\";\"Puerto Somoza\";\"other\"\n\"3617730\";\"Масачапа\";\"other\"\n\"3617763\";\"Managua\";\"main\"\n\"3617763\";\"Managva\";\"other\"\n\"3617763\";\"Managvo\";\"other\"\n\"3617763\";\"Manankoua\";\"other\"\n\"3617763\";\"Manágua\";\"other\"\n\"3617763\";\"ma na gua\";\"other\"\n\"3617763\";\"managhwa\";\"other\"\n\"3617763\";\"managua\";\"other\"\n\"3617763\";\"managwa\";\"other\"\n\"3617763\";\"manakaw\";\"other\"\n\"3617763\";\"Μανάγκουα\";\"other\"\n\"3617763\";\"Манагва\";\"other\"\n\"3617763\";\"Манагуа\";\"other\"\n\"3617763\";\"מנגואה\";\"other\"\n\"3617763\";\"ماناغوا\";\"other\"\n\"3617763\";\"ماناگوآ\";\"other\"\n\"3617763\";\"มานากัว\";\"other\"\n\"3617763\";\"ማናጓ\";\"other\"\n\"3617763\";\"マナグア\";\"other\"\n\"3617763\";\"馬拿瓜\";\"other\"\n\"3617763\";\"마나과\";\"other\"\n\"3618030\";\"León\";\"main\"\n\"3618030\";\"Leon\";\"ascii\"\n\"3618030\";\"לאון\";\"other\"\n\"3618124\";\"Las Sabanas\";\"main\"\n\"3618124\";\"Pueblo La Sabana\";\"other\"\n\"3618124\";\"Sabanas\";\"other\"\n\"3618124\";\"Savanas\";\"other\"\n\"3618336\";\"Larreynaga\";\"main\"\n\"3618410\";\"La Paz de Oriente\";\"main\"\n\"3618410\";\"La Paz\";\"other\"\n\"3618410\";\"Paz\";\"other\"\n\"3618411\";\"La Paz Centro\";\"main\"\n\"3618411\";\"La Paz\";\"other\"\n\"3618411\";\"La Paz Central\";\"other\"\n\"3618411\";\"Paz Central\";\"other\"\n\"3618482\";\"La Libertad\";\"main\"\n\"3618482\";\"Libertad\";\"other\"\n\"3618522\";\"Laguna de Perlas\";\"main\"\n\"3618522\";\"English Bank\";\"other\"\n\"3618522\";\"Las Perlas\";\"other\"\n\"3618522\";\"Las Perlas Town\";\"other\"\n\"3618522\";\"Los Perlos\";\"other\"\n\"3618522\";\"Perla\";\"other\"\n\"3618522\";\"Perlas\";\"other\"\n\"3618618\";\"La Cruz de Río Grande\";\"main\"\n\"3618618\";\"La Cruz de Rio Grande\";\"ascii\"\n\"3618618\";\"La Cruz\";\"other\"\n\"3618637\";\"La Concordia\";\"main\"\n\"3618637\";\"Concordia\";\"other\"\n\"3618648\";\"La Concepción\";\"main\"\n\"3618648\";\"La Concepcion\";\"ascii\"\n\"3618648\";\"Concepcion\";\"other\"\n\"3618648\";\"Concepción\";\"other\"\n\"3618648\";\"La Cancepcion\";\"other\"\n\"3618648\";\"La Cancepción\";\"other\"\n\"3618908\";\"Juigalpa\";\"main\"\n\"3618924\";\"Jiquilillo\";\"main\"\n\"3618924\";\"Khikilijo\";\"other\"\n\"3618924\";\"Tiguilillo\";\"other\"\n\"3618924\";\"Хикилийо\";\"other\"\n\"3618926\";\"Jinotepe\";\"main\"\n\"3618929\";\"Jinotega\";\"main\"\n\"3618929\";\"Khinotega\";\"other\"\n\"3618929\";\"Хинотега\";\"other\"\n\"3618954\";\"Jalapa\";\"main\"\n\"3618954\";\"Khalapa\";\"other\"\n\"3618954\";\"Халапа\";\"other\"\n\"3619136\";\"Granada\";\"main\"\n\"3619136\";\"Granado\";\"other\"\n\"3619136\";\"Grenada\";\"other\"\n\"3619136\";\"Гренада\";\"other\"\n\"3619194\";\"Estelí\";\"main\"\n\"3619194\";\"Esteli\";\"ascii\"\n\"3619194\";\"Ehsteli\";\"other\"\n\"3619194\";\"Эстели\";\"other\"\n\"3619267\";\"El Viejo\";\"main\"\n\"3619267\";\"Ehl'-V'ekho\";\"other\"\n\"3619267\";\"Viejo\";\"other\"\n\"3619267\";\"Эль-Вьехо\";\"other\"\n\"3619382\";\"El Sauce\";\"main\"\n\"3619382\";\"Sauce\";\"other\"\n\"3619420\";\"El Rosario\";\"main\"\n\"3619451\";\"El Realejo\";\"main\"\n\"3619451\";\"Realejo\";\"other\"\n\"3619695\";\"La Jicaral\";\"main\"\n\"3619695\";\"El Jicaral\";\"other\"\n\"3619695\";\"Jicaral\";\"other\"\n\"3619695\";\"Jicaro\";\"other\"\n\"3619695\";\"La India Jicaral\";\"other\"\n\"3619853\";\"El Crucero\";\"main\"\n\"3619853\";\"Crucero\";\"other\"\n\"3619853\";\"El Cirucero\";\"other\"\n\"3620084\";\"El Ayote\";\"main\"\n\"3620106\";\"El Almendro\";\"main\"\n\"3620106\";\"Almendro\";\"other\"\n\"3620106\";\"El Almendo\";\"other\"\n\"3620163\";\"Dolores\";\"main\"\n\"3620168\";\"Diriomo\";\"main\"\n\"3620170\";\"Diriamba\";\"main\"\n\"3620170\";\"Diriambo\";\"other\"\n\"3620172\";\"Diriá\";\"main\"\n\"3620172\";\"Diria\";\"ascii\"\n\"3620243\";\"Cuapa\";\"main\"\n\"3620243\";\"Coapa\";\"other\"\n\"3620266\";\"Corn Island\";\"main\"\n\"3620266\";\"South End\";\"other\"\n\"3620269\";\"Corinto\";\"main\"\n\"3620298\";\"Condega\";\"main\"\n\"3620318\";\"Comalapa\";\"main\"\n\"3620350\";\"Ciudad Darío\";\"main\"\n\"3620350\";\"Ciudad Dario\";\"ascii\"\n\"3620350\";\"Dario\";\"other\"\n\"3620350\";\"Metapa\";\"other\"\n\"3620353\";\"Ciudad Antigua\";\"main\"\n\"3620381\";\"Chinandega\";\"main\"\n\"3620381\";\"Chinandege\";\"other\"\n\"3620381\";\"Чинандеге\";\"other\"\n\"3620390\";\"Chichigalpa\";\"main\"\n\"3620441\";\"Catarina\";\"main\"\n\"3620473\";\"Carlos Fonseca Amador\";\"main\"\n\"3620473\";\"El Carmen\";\"other\"\n\"3620473\";\"Villa Carlos Fonseca Amador\";\"other\"\n\"3620473\";\"Villa El Carmen\";\"other\"\n\"3620479\";\"Cárdenas\";\"main\"\n\"3620479\";\"Cardenas\";\"ascii\"\n\"3620479\";\"Concepcion\";\"other\"\n\"3620479\";\"Concepción\";\"other\"\n\"3620479\";\"La Concepcion\";\"other\"\n\"3620479\";\"La Concepción\";\"other\"\n\"3620544\";\"Camoapa\";\"main\"\n\"3620544\";\"Camaopa\";\"other\"\n\"3620603\";\"Buenos Aires\";\"main\"\n\"3620645\";\"Bonanza\";\"main\"\n\"3620645\";\"Bonanza Bodega\";\"other\"\n\"3620661\";\"Bocana de Paiwas\";\"main\"\n\"3620661\";\"Paigua\";\"other\"\n\"3620661\";\"Paiguas\";\"other\"\n\"3620661\";\"Paiguás\";\"other\"\n\"3620661\";\"Paiwas\";\"other\"\n\"3620661\";\"San Jose de Paiwas\";\"other\"\n\"3620661\";\"San José de Paiwas\";\"other\"\n\"3620674\";\"Boaco\";\"main\"\n\"3620680\";\"Bluefields\";\"main\"\n\"3620680\";\"Blewfield\";\"other\"\n\"3620680\";\"Blufildse\";\"other\"\n\"3620680\";\"Блуфилдсе\";\"other\"\n\"3620734\";\"Belén\";\"main\"\n\"3620734\";\"Belen\";\"ascii\"\n\"3620930\";\"Altagracia\";\"main\"\n\"3620978\";\"Acoyapa\";\"main\"\n\"3620978\";\"San Sebastian de Acoyapa\";\"other\"\n\"3620982\";\"Achuapa\";\"main\"\n\"3620982\";\"San Jose de Achuapa\";\"other\"\n\"3620982\";\"San José de Achuapa\";\"other\"\n\"3828262\";\"Ciudad Sandino\";\"main\"\n\"2743477\";\"Zwolle\";\"main\"\n\"2743477\";\"Swol\";\"other\"\n\"2743477\";\"Zvolle\";\"other\"\n\"2743477\";\"zi wo lei\";\"other\"\n\"2743477\";\"Зволле\";\"other\"\n\"2743477\";\"兹沃勒\";\"other\"\n\"2743493\";\"Zwijndrecht\";\"main\"\n\"2743493\";\"Zvejndrekhte\";\"other\"\n\"2743493\";\"Звейндрехте\";\"other\"\n\"2743561\";\"Zwartebroek\";\"main\"\n\"2743590\";\"De Westereen\";\"main\"\n\"2743590\";\"De Westerein\";\"other\"\n\"2743590\";\"Zwaagwesteinde\";\"other\"\n\"2743608\";\"Zutphen\";\"main\"\n\"2743608\";\"Zjutfen\";\"other\"\n\"2743608\";\"Zutfen\";\"other\"\n\"2743608\";\"Зютфен\";\"other\"\n\"2743619\";\"Zundert\";\"main\"\n\"2743619\";\"Groot Zundert\";\"other\"\n\"2743619\";\"Zjundert\";\"other\"\n\"2743619\";\"Зюндерт\";\"other\"\n\"2743680\";\"Zuidlaren\";\"main\"\n\"2743694\";\"Zuidhorn\";\"main\"\n\"2743856\";\"Zoetermeer\";\"main\"\n\"2743856\";\"Zeutermaer\";\"other\"\n\"2743856\";\"zwtrmyyr\";\"other\"\n\"2743856\";\"זוטרמייר\";\"other\"\n\"2743877\";\"Zijtaart\";\"main\"\n\"2743877\";\"Seitaart\";\"other\"\n\"2743877\";\"Sijtaard\";\"other\"\n\"2743877\";\"Sijtaart\";\"other\"\n\"2743949\";\"Zevenaar\";\"main\"\n\"2743949\";\"Zevenar\";\"other\"\n\"2743949\";\"Зевенар\";\"other\"\n\"2743952\";\"Zetten\";\"main\"\n\"2743963\";\"Zelhem\";\"main\"\n\"2743977\";\"Zeist\";\"main\"\n\"2743997\";\"Zeewolde\";\"main\"\n\"2744014\";\"Zeeland\";\"main\"\n\"2744042\";\"Zandvoort\";\"main\"\n\"2744042\";\"Landvoort\";\"other\"\n\"2744042\";\"Зандвоорт\";\"other\"\n\"2744102\";\"Zaltbommel\";\"main\"\n\"2744114\";\"Zaanstad\";\"main\"\n\"2744118\";\"Zaandam\";\"main\"\n\"2744118\";\"Заандам\";\"other\"\n\"2744122\";\"Zaamslag\";\"main\"\n\"2744129\";\"Yerseke\";\"main\"\n\"2744129\";\"Erseke\";\"other\"\n\"2744129\";\"IJerseka\";\"other\"\n\"2744129\";\"Iersake\";\"other\"\n\"2744129\";\"Ierseke\";\"other\"\n\"2744129\";\"Ерсеке\";\"other\"\n\"2744147\";\"Wâlterswâld\";\"main\"\n\"2744147\";\"Walterswald\";\"ascii\"\n\"2744147\";\"Wouterswoud\";\"other\"\n\"2744147\";\"Wouterswoude\";\"other\"\n\"2744153\";\"Woudsend\";\"main\"\n\"2744156\";\"Woudrichem\";\"main\"\n\"2744163\";\"Woudenberg\";\"main\"\n\"2744179\";\"Workum\";\"main\"\n\"2744179\";\"Warkum\";\"other\"\n\"2744191\";\"Wommels\";\"main\"\n\"2744194\";\"Wolvega\";\"main\"\n\"2744194\";\"Vol'vega\";\"other\"\n\"2744194\";\"Вольвега\";\"other\"\n\"2744219\";\"Wolfheze\";\"main\"\n\"2744219\";\"Wolfheeze\";\"other\"\n\"2744248\";\"Woerden\";\"main\"\n\"2744248\";\"Verden\";\"other\"\n\"2744248\";\"Верден\";\"other\"\n\"2744257\";\"Woensdrecht\";\"main\"\n\"2744257\";\"Vonsdrekht\";\"other\"\n\"2744257\";\"Вонсдрехт\";\"other\"\n\"2744324\";\"Wisch\";\"main\"\n\"2744327\";\"Wirdum\";\"main\"\n\"2744332\";\"Winterswijk\";\"main\"\n\"2744332\";\"Vintersvejk\";\"other\"\n\"2744332\";\"Винтерсвейк\";\"other\"\n\"2744337\";\"Winsum\";\"main\"\n\"2744338\";\"Winsum\";\"main\"\n\"2744338\";\"Winseem\";\"other\"\n\"2744344\";\"Winschoten\";\"main\"\n\"2744373\";\"Wilp\";\"main\"\n\"2744373\";\"Welp\";\"other\"\n\"2744388\";\"Willemstad\";\"main\"\n\"2744483\";\"Wijk bij Duurstede\";\"main\"\n\"2744489\";\"Wijhe\";\"main\"\n\"2744489\";\"Wije\";\"other\"\n\"2744514\";\"Wijchen\";\"main\"\n\"2744514\";\"Vijchen\";\"other\"\n\"2744514\";\"Вийчен\";\"other\"\n\"2744549\";\"Wierden\";\"main\"\n\"2744549\";\"Vierden\";\"other\"\n\"2744549\";\"Виерден\";\"other\"\n\"2744608\";\"West-Terschelling\";\"main\"\n\"2744608\";\"West-Skylge\";\"other\"\n\"2744608\";\"Westerschelling\";\"other\"\n\"2744675\";\"Westervoort\";\"main\"\n\"2744741\";\"Westerhaar-Vriezenveensewijk\";\"main\"\n\"2744741\";\"Westerhaar\";\"other\"\n\"2744800\";\"Westdorpe\";\"main\"\n\"2744827\";\"Werkendam\";\"main\"\n\"2744827\";\"Verkendam\";\"other\"\n\"2744827\";\"Веркендам\";\"other\"\n\"2744859\";\"Wellerlooi\";\"main\"\n\"2744869\";\"Welberg\";\"main\"\n\"2744871\";\"Wekerom\";\"main\"\n\"2744904\";\"Weesp\";\"main\"\n\"2744911\";\"Weert\";\"main\"\n\"2744911\";\"Vert\";\"other\"\n\"2744911\";\"Weerd\";\"other\"\n\"2744911\";\"Wieert\";\"other\"\n\"2744911\";\"Wieërt\";\"other\"\n\"2744911\";\"Верт\";\"other\"\n\"2744991\";\"Wassenaar\";\"main\"\n\"2744994\";\"Waspik\";\"main\"\n\"2744998\";\"Warten\";\"main\"\n\"2744998\";\"Wartena\";\"other\"\n\"2745003\";\"Warnsveld\";\"main\"\n\"2745018\";\"Wergea\";\"main\"\n\"2745018\";\"Warga\";\"other\"\n\"2745048\";\"Wanneperveen\";\"main\"\n\"2745048\";\"Wenneperveen\";\"other\"\n\"2745088\";\"Wageningen\";\"main\"\n\"2745088\";\"Vada\";\"other\"\n\"2745088\";\"wa han ning en\";\"other\"\n\"2745088\";\"wa he ning gen\";\"other\"\n\"2745088\";\"瓦罕寧恩\";\"other\"\n\"2745088\";\"瓦赫宁根\";\"other\"\n\"2745096\";\"Waddinxveen\";\"main\"\n\"2745096\";\"Waddingsveen\";\"other\"\n\"2745123\";\"Waalwijk\";\"main\"\n\"2745127\";\"Waalre\";\"main\"\n\"2745154\";\"Vught\";\"main\"\n\"2745169\";\"Vroomshoop\";\"main\"\n\"2745182\";\"Vriezenveen\";\"main\"\n\"2745182\";\"Uriezenveen\";\"other\"\n\"2745189\";\"Vries\";\"main\"\n\"2745196\";\"Vreeland\";\"main\"\n\"2745271\";\"Voorthuizen\";\"main\"\n\"2745297\";\"Voorst\";\"main\"\n\"2745297\";\"Воорст\";\"other\"\n\"2745301\";\"Voorschoten\";\"main\"\n\"2745311\";\"Voorhout\";\"main\"\n\"2745321\";\"Voorburg\";\"main\"\n\"2745321\";\"Воорбург\";\"other\"\n\"2745333\";\"Vollenhove\";\"main\"\n\"2745338\";\"Volkel\";\"main\"\n\"2745340\";\"Volendam\";\"main\"\n\"2745340\";\"Волендам\";\"other\"\n\"2745369\";\"Voerendaal\";\"main\"\n\"2745382\";\"Vlodrop\";\"main\"\n\"2745388\";\"Vlist\";\"main\"\n\"2745392\";\"Vlissingen\";\"main\"\n\"2745392\";\"Flesinga\";\"other\"\n\"2745392\";\"Flessinga\";\"other\"\n\"2745392\";\"Flessingue\";\"other\"\n\"2745392\";\"Flushing\";\"other\"\n\"2745392\";\"Vlissienge\";\"other\"\n\"2745392\";\"Vlissinge\";\"other\"\n\"2745392\";\"Влиссинген\";\"other\"\n\"2745461\";\"Vlagtwedde\";\"main\"\n\"2745461\";\"Vlachtwedde\";\"other\"\n\"2745467\";\"Vlaardingen\";\"main\"\n\"2745467\";\"Vlaardinge\";\"other\"\n\"2745580\";\"Vianen\";\"main\"\n\"2745634\";\"Venray\";\"main\"\n\"2745634\";\"Venraai\";\"other\"\n\"2745634\";\"Venraij\";\"other\"\n\"2745641\";\"Venlo\";\"main\"\n\"2745641\";\"Venloo\";\"other\"\n\"2745641\";\"Венло\";\"other\"\n\"2745673\";\"Velsen-Zuid\";\"main\"\n\"2745673\";\"Velsen\";\"other\"\n\"2745673\";\"Velzen\";\"other\"\n\"2745677\";\"Velp\";\"main\"\n\"2745706\";\"Veldhoven\";\"main\"\n\"2745726\";\"Veghel\";\"main\"\n\"2745726\";\"Vechel\";\"other\"\n\"2745726\";\"Vegel\";\"other\"\n\"2745726\";\"Вегел\";\"other\"\n\"2745739\";\"Veere\";\"main\"\n\"2745739\";\"Veera\";\"other\"\n\"2745739\";\"Vere\";\"other\"\n\"2745739\";\"Веера\";\"other\"\n\"2745743\";\"Feanwâlden\";\"main\"\n\"2745743\";\"Feanwalden\";\"ascii\"\n\"2745743\";\"Veenwouden\";\"other\"\n\"2745774\";\"Veenendaal\";\"main\"\n\"2745774\";\"Venendaal\";\"other\"\n\"2745783\";\"Veendam\";\"main\"\n\"2745800\";\"Varsseveld\";\"main\"\n\"2745800\";\"Varseveld\";\"other\"\n\"2745860\";\"Valkenswaard\";\"main\"\n\"2745860\";\"Valkeswaerd\";\"other\"\n\"2745874\";\"Valkenburg\";\"main\"\n\"2745885\";\"Valburg\";\"main\"\n\"2745892\";\"Vaassen\";\"main\"\n\"2745892\";\"Vasen\";\"other\"\n\"2745906\";\"Vaals\";\"main\"\n\"2745906\";\"Vols\";\"other\"\n\"2745912\";\"Utrecht\";\"main\"\n\"2745912\";\"Outrechte\";\"other\"\n\"2745912\";\"Traiectum ad Rhenum\";\"other\"\n\"2745912\";\"Utrech\";\"other\"\n\"2745912\";\"Utrehta\";\"other\"\n\"2745912\";\"Utrei\";\"other\"\n\"2745912\";\"Utrekht\";\"other\"\n\"2745912\";\"wu de lei zhi\";\"other\"\n\"2745912\";\"yutorehito\";\"other\"\n\"2745912\";\"Ουτρέχτη\";\"other\"\n\"2745912\";\"Утрехт\";\"other\"\n\"2745912\";\"אוטרכט\";\"other\"\n\"2745912\";\"ユトレヒト\";\"other\"\n\"2745912\";\"乌得勒支\";\"other\"\n\"2745926\";\"Urmond\";\"main\"\n\"2745926\";\"Uermend\";\"other\"\n\"2745932\";\"Urk\";\"main\"\n\"2745944\";\"Ulrum\";\"main\"\n\"2745973\";\"Uithoorn\";\"main\"\n\"2745973\";\"Vithoorn\";\"other\"\n\"2745978\";\"Uitgeest\";\"main\"\n\"2746005\";\"Uden\";\"main\"\n\"2746005\";\"Уден\";\"other\"\n\"2746009\";\"Uddel\";\"main\"\n\"2746014\";\"Ubachsberg\";\"main\"\n\"2746014\";\"Ubagsberg\";\"other\"\n\"2746023\";\"Tzummarum\";\"main\"\n\"2746023\";\"Tjummarum\";\"other\"\n\"2746023\";\"Tsjummearum\";\"other\"\n\"2746024\";\"Tzum\";\"main\"\n\"2746024\";\"Tjum\";\"other\"\n\"2746024\";\"Tsjom\";\"other\"\n\"2746038\";\"Tynaarlo\";\"main\"\n\"2746038\";\"Tinaarlo\";\"other\"\n\"2746038\";\"Tinaarloo\";\"other\"\n\"2746051\";\"Twijzelerheide\";\"main\"\n\"2746051\";\"Twizelerheide\";\"other\"\n\"2746052\";\"Twijzel\";\"main\"\n\"2746052\";\"Twizel\";\"other\"\n\"2746060\";\"Twello\";\"main\"\n\"2746120\";\"Tuk\";\"main\"\n\"2746133\";\"Tubbergen\";\"main\"\n\"2746133\";\"Тубберген\";\"other\"\n\"2746215\";\"Tongelre\";\"main\"\n\"2746301\";\"Tilburg\";\"main\"\n\"2746301\";\"Тилбург\";\"other\"\n\"2746304\";\"Tijnje\";\"main\"\n\"2746304\";\"De Tynje\";\"other\"\n\"2746304\";\"Tynje\";\"other\"\n\"2746311\";\"Tytsjerk\";\"main\"\n\"2746331\";\"Tiel\";\"main\"\n\"2746331\";\"Til\";\"other\"\n\"2746331\";\"Тил\";\"other\"\n\"2746351\";\"Tholen\";\"main\"\n\"2746351\";\"Tole\";\"other\"\n\"2746351\";\"Tolen\";\"other\"\n\"2746351\";\"Толен\";\"other\"\n\"2746354\";\"'t Hofke\";\"main\"\n\"2746407\";\"Terschuur\";\"main\"\n\"2746420\";\"Terneuzen\";\"main\"\n\"2746420\";\"Neuzen\";\"other\"\n\"2746420\";\"Terneuze\";\"other\"\n\"2746420\";\"Ternezen\";\"other\"\n\"2746420\";\"Тернезен\";\"other\"\n\"2746424\";\"Ternaard\";\"main\"\n\"2746504\";\"Tegelen\";\"main\"\n\"2746557\";\"Surhuizum\";\"main\"\n\"2746557\";\"Surhuzum\";\"other\"\n\"2746558\";\"Surhuisterveen\";\"main\"\n\"2746558\";\"Surhusterfean\";\"other\"\n\"2746558\";\"Surhústerfean\";\"other\"\n\"2746565\";\"Sumar\";\"main\"\n\"2746565\";\"Suameer\";\"other\"\n\"2746596\";\"Stroe\";\"main\"\n\"2746609\";\"Strijen\";\"main\"\n\"2746705\";\"Stiens\";\"main\"\n\"2746748\";\"Stein\";\"main\"\n\"2746752\";\"Steggerda\";\"main\"\n\"2746752\";\"Steggerden\";\"other\"\n\"2746761\";\"Steenwijkerwold\";\"main\"\n\"2746761\";\"Kerkbuurt\";\"other\"\n\"2746766\";\"Steenwijk\";\"main\"\n\"2746804\";\"Steenbergen\";\"main\"\n\"2746839\";\"Staphorst\";\"main\"\n\"2746860\";\"Stadskanaal\";\"main\"\n\"2746860\";\"Afraai\";\"other\"\n\"2746932\";\"Spijkenisse\";\"main\"\n\"2746974\";\"Spankeren\";\"main\"\n\"2746981\";\"Spakenburg\";\"main\"\n\"2746981\";\"Bunschoten-Spakenburg\";\"other\"\n\"2747010\";\"Son\";\"main\"\n\"2747010\";\"Son en Breugel\";\"other\"\n\"2747021\";\"Someren\";\"main\"\n\"2747021\";\"Zomere\";\"other\"\n\"2747034\";\"Soest\";\"main\"\n\"2747034\";\"Zoest\";\"other\"\n\"2747034\";\"Зоест\";\"other\"\n\"2747063\";\"Sneek\";\"main\"\n\"2747063\";\"Snek\";\"other\"\n\"2747063\";\"Snits\";\"other\"\n\"2747063\";\"Снек\";\"other\"\n\"2747109\";\"Sluiskil\";\"main\"\n\"2747143\";\"Slochteren\";\"main\"\n\"2747169\";\"Sliedrecht\";\"main\"\n\"2747169\";\"Shedrecht\";\"other\"\n\"2747169\";\"Slidrekht\";\"other\"\n\"2747169\";\"Слидрехт\";\"other\"\n\"2747182\";\"Sleen\";\"main\"\n\"2747203\";\"Sittard\";\"main\"\n\"2747203\";\"Ситтард\";\"other\"\n\"2747227\";\"Sint-Oedenrode\";\"main\"\n\"2747229\";\"Sint Odiliënberg\";\"main\"\n\"2747229\";\"Sint Odilienberg\";\"ascii\"\n\"2747231\";\"Sint Nicolaasga\";\"main\"\n\"2747231\";\"Sint Nikelsgea\";\"other\"\n\"2747231\";\"Sint Nikolaasga\";\"other\"\n\"2747231\";\"Sint Nyk\";\"other\"\n\"2747234\";\"Sint-Michielsgestel\";\"main\"\n\"2747262\";\"Sint Jansklooster\";\"main\"\n\"2747270\";\"Sint Jacobiparochie\";\"main\"\n\"2747290\";\"Sint Anthonis\";\"main\"\n\"2747290\";\"Antonis\";\"other\"\n\"2747290\";\"Sint Antonis\";\"other\"\n\"2747290\";\"Sintunnis\";\"other\"\n\"2747297\";\"Sint Annaparochie\";\"main\"\n\"2747297\";\"Annaparochie\";\"other\"\n\"2747297\";\"Sint Anne\";\"other\"\n\"2747312\";\"Simpelveld\";\"main\"\n\"2747312\";\"Zumpelveld\";\"other\"\n\"2747348\";\"Sibbe\";\"main\"\n\"2747351\";\"s-Hertogenbosch\";\"main\"\n\"2747351\";\"'s Bosch\";\"other\"\n\"2747351\";\"'s-Hertogenbosch\";\"other\"\n\"2747351\";\"Bois-le-Duc\";\"other\"\n\"2747351\";\"Bolduque\";\"other\"\n\"2747351\";\"Boscoducale\";\"other\"\n\"2747351\";\"Den Bos\";\"other\"\n\"2747351\";\"Den Bosch\";\"other\"\n\"2747351\";\"Hertogenbosch\";\"other\"\n\"2747351\";\"Herzogenbusch\";\"other\"\n\"2747351\";\"Khertogenbos\";\"other\"\n\"2747351\";\"Oeteldonk\";\"other\"\n\"2747351\";\"denbosch\";\"other\"\n\"2747351\";\"shertogenbosch\";\"other\"\n\"2747351\";\"Хертогенбос\";\"other\"\n\"2747364\";\"s-Gravenzande\";\"main\"\n\"2747371\";\"'s Gravenmoer\";\"main\"\n\"2747371\";\"'s Gravemoer\";\"other\"\n\"2747373\";\"Den Haag\";\"main\"\n\"2747373\";\"'s-Gravenhage\";\"other\"\n\"2747373\";\"A Haia\";\"other\"\n\"2747373\";\"A Haia - Den Haag\";\"other\"\n\"2747373\";\"An Haig\";\"other\"\n\"2747373\";\"An Háig\";\"other\"\n\"2747373\";\"Chage\";\"other\"\n\"2747373\";\"D'n Haog\";\"other\"\n\"2747373\";\"De Haach\";\"other\"\n\"2747373\";\"Gaaga\";\"other\"\n\"2747373\";\"Haag\";\"other\"\n\"2747373\";\"Hag\";\"other\"\n\"2747373\";\"Haga\";\"other\"\n\"2747373\";\"Hago\";\"other\"\n\"2747373\";\"Hága\";\"other\"\n\"2747373\";\"Hāga\";\"other\"\n\"2747373\";\"Khag\";\"other\"\n\"2747373\";\"Khaga\";\"other\"\n\"2747373\";\"L'Aia\";\"other\"\n\"2747373\";\"La Haia\";\"other\"\n\"2747373\";\"La Haya\";\"other\"\n\"2747373\";\"La Haye\";\"other\"\n\"2747373\";\"Lahey\";\"other\"\n\"2747373\";\"The Haag\";\"other\"\n\"2747373\";\"The Hague\";\"other\"\n\"2747373\";\"denhaag\";\"other\"\n\"2747373\";\"haaga\";\"other\"\n\"2747373\";\"hagu\";\"other\"\n\"2747373\";\"hai ya\";\"other\"\n\"2747373\";\"heigeu\";\"other\"\n\"2747373\";\"lahay\";\"other\"\n\"2747373\";\"lahh\";\"other\"\n\"2747373\";\"Χάγη\";\"other\"\n\"2747373\";\"Гаага\";\"other\"\n\"2747373\";\"Хаг\";\"other\"\n\"2747373\";\"Хага\";\"other\"\n\"2747373\";\"האג\";\"other\"\n\"2747373\";\"لاهاي\";\"other\"\n\"2747373\";\"لاهه\";\"other\"\n\"2747373\";\"ჰააგა\";\"other\"\n\"2747373\";\"ハーグ\";\"other\"\n\"2747373\";\"海牙\";\"other\"\n\"2747373\";\"헤이그\";\"other\"\n\"2747380\";\"Sexbierum\";\"main\"\n\"2747380\";\"Seisbierrum\";\"other\"\n\"2747380\";\"Sixbierum\";\"other\"\n\"2747506\";\"Schoonhoven\";\"main\"\n\"2747506\";\"Sconhouen\";\"other\"\n\"2747515\";\"Schoonebeek\";\"main\"\n\"2747515\";\"Oud Schoonebeek\";\"other\"\n\"2747550\";\"Schinveld\";\"main\"\n\"2747551\";\"Schin op Geul\";\"main\"\n\"2747551\";\"Schin op Geule\";\"other\"\n\"2747553\";\"Schinnen\";\"main\"\n\"2747584\";\"Schijndel\";\"main\"\n\"2747596\";\"Schiedam\";\"main\"\n\"2747599\";\"Scheveningen\";\"main\"\n\"2747599\";\"Sheveningen\";\"other\"\n\"2747599\";\"Skheveningen\";\"other\"\n\"2747599\";\"suhefeningen\";\"other\"\n\"2747599\";\"Схевенинген\";\"other\"\n\"2747599\";\"Шевенинген\";\"other\"\n\"2747599\";\"スヘフェニンゲン\";\"other\"\n\"2747671\";\"Scharnegoutum\";\"main\"\n\"2747680\";\"Scharendijke\";\"main\"\n\"2747680\";\"Skharendejke\";\"other\"\n\"2747680\";\"Схарендейке\";\"other\"\n\"2747704\";\"Schalkhaar\";\"main\"\n\"2747704\";\"Schalkhaap\";\"other\"\n\"2747713\";\"Schaijk\";\"main\"\n\"2747713\";\"Schaaik\";\"other\"\n\"2747713\";\"Schaik\";\"other\"\n\"2747713\";\"Schayk\";\"other\"\n\"2747720\";\"Schagen\";\"main\"\n\"2747720\";\"Skagen\";\"other\"\n\"2747749\";\"Sas van Gent\";\"main\"\n\"2747751\";\"Sassenheim\";\"main\"\n\"2747758\";\"Sappemeer\";\"main\"\n\"2747835\";\"Ruinen\";\"main\"\n\"2747835\";\"Buinen\";\"other\"\n\"2747858\";\"Rucphen\";\"main\"\n\"2747858\";\"Rukfen\";\"other\"\n\"2747865\";\"Rozendaal\";\"main\"\n\"2747865\";\"Roosendaal\";\"other\"\n\"2747865\";\"Rosendaal\";\"other\"\n\"2747886\";\"Rottevalle\";\"main\"\n\"2747886\";\"Rottefalle\";\"other\"\n\"2747891\";\"Rotterdam\";\"main\"\n\"2747891\";\"Gemeente Rotterdam\";\"other\"\n\"2747891\";\"Roterdam\";\"other\"\n\"2747891\";\"Roterdama\";\"other\"\n\"2747891\";\"Roterdamo\";\"other\"\n\"2747891\";\"Roterdan - Rotterdam\";\"other\"\n\"2747891\";\"Roterdao\";\"other\"\n\"2747891\";\"Roterdão\";\"other\"\n\"2747891\";\"Roterntam\";\"other\"\n\"2747891\";\"Roterodamum\";\"other\"\n\"2747891\";\"Róterdam\";\"other\"\n\"2747891\";\"Róterdan - Rotterdam\";\"other\"\n\"2747891\";\"loteleudam\";\"other\"\n\"2747891\";\"lu te dan\";\"other\"\n\"2747891\";\"rotterudamu\";\"other\"\n\"2747891\";\"rtrdam\";\"other\"\n\"2747891\";\"rwtrdam\";\"other\"\n\"2747891\";\"rwtrdm\";\"other\"\n\"2747891\";\"rxt te xrdam\";\"other\"\n\"2747891\";\"Ρότερνταμ\";\"other\"\n\"2747891\";\"Ротердам\";\"other\"\n\"2747891\";\"Роттердам\";\"other\"\n\"2747891\";\"רוטרדם\";\"other\"\n\"2747891\";\"رتردام\";\"other\"\n\"2747891\";\"روتردام\";\"other\"\n\"2747891\";\"ร็อตเตอร์ดัม\";\"other\"\n\"2747891\";\"ロッテルダム\";\"other\"\n\"2747891\";\"鹿特丹\";\"other\"\n\"2747891\";\"로테르담\";\"other\"\n\"2747930\";\"Roosendaal\";\"main\"\n\"2747930\";\"Rozendal'\";\"other\"\n\"2747930\";\"Розендаль\";\"other\"\n\"2747938\";\"Reduzum\";\"main\"\n\"2747938\";\"Roardahuzum\";\"other\"\n\"2747938\";\"Roordahuizum\";\"other\"\n\"2748000\";\"Roermond\";\"main\"\n\"2748000\";\"Remunj\";\"other\"\n\"2748000\";\"Ruremonde\";\"other\"\n\"2748000\";\"Rurmonda\";\"other\"\n\"2748000\";\"Рурмонда\";\"other\"\n\"2748051\";\"Rinsumageast\";\"main\"\n\"2748051\";\"Rinsumageest\";\"other\"\n\"2748076\";\"Rijswijk\";\"main\"\n\"2748104\";\"Rijnsburg\";\"main\"\n\"2748172\";\"Ridderkerk\";\"main\"\n\"2748172\";\"Bidderkerk\";\"other\"\n\"2748172\";\"Риддеркерк\";\"other\"\n\"2748178\";\"Rhoon\";\"main\"\n\"2748178\";\"Roon\";\"other\"\n\"2748185\";\"Rhenen\";\"main\"\n\"2748185\";\"Renen\";\"other\"\n\"2748201\";\"Rheden\";\"main\"\n\"2748208\";\"Reuver\";\"main\"\n\"2748236\";\"Renkum\";\"main\"\n\"2748236\";\"Oosterbeek\";\"other\"\n\"2748240\";\"Renesse\";\"main\"\n\"2748240\";\"Ренессе\";\"other\"\n\"2748280\";\"Reeuwijk\";\"main\"\n\"2748286\";\"Reek\";\"main\"\n\"2748329\";\"Randwijk\";\"main\"\n\"2748371\";\"Raalte\";\"main\"\n\"2748371\";\"Raalt\";\"other\"\n\"2748371\";\"Раалт\";\"other\"\n\"2748392\";\"Putten\";\"main\"\n\"2748392\";\"Путтен\";\"other\"\n\"2748403\";\"Puth\";\"main\"\n\"2748413\";\"Purmerend\";\"main\"\n\"2748413\";\"Pjurmerend\";\"other\"\n\"2748413\";\"Пюрмеренд\";\"other\"\n\"2748481\";\"Posterholt\";\"main\"\n\"2748533\";\"Poeldijk\";\"main\"\n\"2748591\";\"Pijnacker\";\"main\"\n\"2748591\";\"Dijnacker\";\"other\"\n\"2748591\";\"Pijnakker\";\"other\"\n\"2748591\";\"Pynakker\";\"other\"\n\"2748729\";\"Papendrecht\";\"main\"\n\"2748864\";\"Overberg\";\"main\"\n\"2748926\";\"Oud-Loosdrecht\";\"main\"\n\"2748926\";\"Aud-Losdrekht\";\"other\"\n\"2748926\";\"Ауд-Лосдрехт\";\"other\"\n\"2748968\";\"Oude Wetering\";\"main\"\n\"2748979\";\"Oudewater\";\"main\"\n\"2749007\";\"Oudeschoot\";\"main\"\n\"2749007\";\"Aldskoat\";\"other\"\n\"2749017\";\"Ouderkerk aan de Amstel\";\"main\"\n\"2749017\";\"Ouder Amstel\";\"other\"\n\"2749017\";\"Ouderkerk\";\"other\"\n\"2749017\";\"Ouderkerk Aan Den Amstel\";\"other\"\n\"2749017\";\"Ouderkerk a/d Amstel\";\"other\"\n\"2749034\";\"Oude Pekela\";\"main\"\n\"2749061\";\"Oudemirdum\";\"main\"\n\"2749061\";\"Aldemardum\";\"other\"\n\"2749120\";\"Oudehaske\";\"main\"\n\"2749120\";\"Aldehaske\";\"other\"\n\"2749120\";\"Oldehaske\";\"other\"\n\"2749136\";\"Oudega\";\"main\"\n\"2749136\";\"Aldegea\";\"other\"\n\"2749164\";\"Ouddorp\";\"main\"\n\"2749164\";\"Auddorp\";\"other\"\n\"2749164\";\"Ауддорп\";\"other\"\n\"2749182\";\"Oud-Beijerland\";\"main\"\n\"2749182\";\"Oud Beierland\";\"other\"\n\"2749203\";\"Otterlo\";\"main\"\n\"2749203\";\"Otterloo\";\"other\"\n\"2749234\";\"Oss\";\"main\"\n\"2749234\";\"Os\";\"other\"\n\"2749234\";\"Осс\";\"other\"\n\"2749251\";\"Oranjewoud\";\"main\"\n\"2749251\";\"It Oranjewald\";\"other\"\n\"2749251\";\"It Oranjewâld\";\"other\"\n\"2749281\";\"Opperdoes\";\"main\"\n\"2749284\";\"Oppenhuizen\";\"main\"\n\"2749286\";\"Opmeer\";\"main\"\n\"2749286\";\"Opmar\";\"other\"\n\"2749304\";\"Opeinde\";\"main\"\n\"2749304\";\"De Pein\";\"other\"\n\"2749334\";\"Oost-Vlieland\";\"main\"\n\"2749334\";\"East Flylan\";\"other\"\n\"2749334\";\"East Flylân\";\"other\"\n\"2749423\";\"Oosterpark\";\"main\"\n\"2749423\";\"Oosterparkwijk\";\"other\"\n\"2749430\";\"Eastermar\";\"main\"\n\"2749430\";\"Oostermeer\";\"other\"\n\"2749449\";\"Oosterhout\";\"main\"\n\"2749450\";\"Oosterhout\";\"main\"\n\"2749450\";\"Osterkhout\";\"other\"\n\"2749450\";\"Остерхоут\";\"other\"\n\"2749503\";\"Oosterbeek\";\"main\"\n\"2749513\";\"Oostelbeers\";\"main\"\n\"2749626\";\"Olst\";\"main\"\n\"2749644\";\"Oldenzaal\";\"main\"\n\"2749644\";\"Oldenzal\";\"other\"\n\"2749644\";\"Олдензал\";\"other\"\n\"2749653\";\"Oldemarkt\";\"main\"\n\"2749660\";\"Oldehove\";\"main\"\n\"2749660\";\"Oldenhove\";\"other\"\n\"2749668\";\"Oldebroek\";\"main\"\n\"2749668\";\"Oldebruk\";\"other\"\n\"2749668\";\"Olderbroek\";\"other\"\n\"2749668\";\"Олдебрук\";\"other\"\n\"2749669\";\"Aldeboarn\";\"main\"\n\"2749669\";\"Oldeboorn\";\"other\"\n\"2749680\";\"Oisterwijk\";\"main\"\n\"2749680\";\"Ojstervejk\";\"other\"\n\"2749680\";\"Oosterwijk\";\"other\"\n\"2749680\";\"Ойстервейк\";\"other\"\n\"2749683\";\"Oirschot\";\"main\"\n\"2749683\";\"Oorschot\";\"other\"\n\"2749685\";\"Oirsbeek\";\"main\"\n\"2749685\";\"Oorsbeek\";\"other\"\n\"2749696\";\"Offenbeek\";\"main\"\n\"2749696\";\"Offenbeck\";\"other\"\n\"2749703\";\"Oerle\";\"main\"\n\"2749703\";\"Oers\";\"other\"\n\"2749708\";\"Oentsjerk\";\"main\"\n\"2749708\";\"Oenkerk\";\"other\"\n\"2749712\";\"Oene\";\"main\"\n\"2749723\";\"Oegstgeest\";\"main\"\n\"2749723\";\"Oestgeest\";\"other\"\n\"2749735\";\"Odiliapeel\";\"main\"\n\"2749753\";\"Nuth\";\"main\"\n\"2749753\";\"Nut\";\"other\"\n\"2749756\";\"Nunspeet\";\"main\"\n\"2749780\";\"Nuenen\";\"main\"\n\"2749780\";\"Njunen\";\"other\"\n\"2749780\";\"Nunen\";\"other\"\n\"2749780\";\"Нюнен\";\"other\"\n\"2749807\";\"Noordwolde\";\"main\"\n\"2749807\";\"Noardwalde\";\"other\"\n\"2749807\";\"Noardwâlde\";\"other\"\n\"2749811\";\"Noordwijkerhout\";\"main\"\n\"2749812\";\"Noordwijk-Binnen\";\"main\"\n\"2749812\";\"Noordwijk\";\"other\"\n\"2749875\";\"Noordhorn\";\"main\"\n\"2749992\";\"Noardburgum\";\"main\"\n\"2749992\";\"Noordbergum\";\"other\"\n\"2750053\";\"Nijmegen\";\"main\"\n\"2750053\";\"Nejmegen\";\"other\"\n\"2750053\";\"Nijmeyen\";\"other\"\n\"2750053\";\"Nimega\";\"other\"\n\"2750053\";\"Nimegue\";\"other\"\n\"2750053\";\"Nimwege\";\"other\"\n\"2750053\";\"Nimwegen\";\"other\"\n\"2750053\";\"Nimègue\";\"other\"\n\"2750053\";\"Noviomago\";\"other\"\n\"2750053\";\"Nymegen\";\"other\"\n\"2750053\";\"Nîmegue\";\"other\"\n\"2750053\";\"Ulpia Noviomagus Batavorum\";\"other\"\n\"2750053\";\"naimehen\";\"other\"\n\"2750053\";\"Неймеген\";\"other\"\n\"2750053\";\"ナイメーヘン\";\"other\"\n\"2750065\";\"Nijkerk\";\"main\"\n\"2750117\";\"Nieuw-Vossemeer\";\"main\"\n\"2750117\";\"Nieuw-Vosmeer\";\"other\"\n\"2750157\";\"Nieuw-Lotbroek\";\"main\"\n\"2750158\";\"Nieuw-Loosdrecht\";\"main\"\n\"2750158\";\"N'iv-Losdrekht\";\"other\"\n\"2750158\";\"Ньив-Лосдрехт\";\"other\"\n\"2750163\";\"Nieuw-Lekkerland\";\"main\"\n\"2750163\";\"N'iv-Lekkerland\";\"other\"\n\"2750163\";\"Ньив-Леккерланд\";\"other\"\n\"2750187\";\"Nieuwkoop\";\"main\"\n\"2750194\";\"Nieuw-Helvoet\";\"main\"\n\"2750194\";\"Nieuw Hellevoet\";\"other\"\n\"2750280\";\"Nieuwenhoorn\";\"main\"\n\"2750310\";\"Nieuwehorne\";\"main\"\n\"2750310\";\"Nijehorne\";\"other\"\n\"2750310\";\"Nijhoarne\";\"other\"\n\"2750325\";\"Nieuwegein\";\"main\"\n\"2750325\";\"Nieuwegen\";\"other\"\n\"2750417\";\"Nes\";\"main\"\n\"2750420\";\"Nes\";\"main\"\n\"2750444\";\"Neerijnen\";\"main\"\n\"2750460\";\"Neede\";\"main\"\n\"2750460\";\"Nede\";\"other\"\n\"2750467\";\"Nederweert\";\"main\"\n\"2750467\";\"Ni-jwieert\";\"other\"\n\"2750467\";\"Ni-jwieërt\";\"other\"\n\"2750479\";\"Nederhemert-Noord\";\"main\"\n\"2750479\";\"Nederhemert Noordzijde\";\"other\"\n\"2750480\";\"Nederhemert\";\"main\"\n\"2750521\";\"Naarden\";\"main\"\n\"2750523\";\"Naaldwijk\";\"main\"\n\"2750624\";\"Montfort\";\"main\"\n\"2750626\";\"Montfoort\";\"main\"\n\"2750630\";\"Monster\";\"main\"\n\"2750630\";\"Монстер\";\"other\"\n\"2750641\";\"Monnickendam\";\"main\"\n\"2750641\";\"Monnikendam\";\"other\"\n\"2750641\";\"Monnikkendam\";\"other\"\n\"2750641\";\"Монниккендам\";\"other\"\n\"2750790\";\"Minnertsga\";\"main\"\n\"2750790\";\"Minnertsgea\";\"other\"\n\"2750810\";\"Mijnsheerenland\";\"main\"\n\"2750815\";\"Mijdrecht\";\"main\"\n\"2750815\";\"Mudrecht\";\"other\"\n\"2750815\";\"Müdrecht\";\"other\"\n\"2750821\";\"Mierlo\";\"main\"\n\"2750821\";\"Mierloo\";\"other\"\n\"2750884\";\"Middelharnis\";\"main\"\n\"2750884\";\"Menheerse\";\"other\"\n\"2750896\";\"Middelburg\";\"main\"\n\"2750896\";\"Middelbourg\";\"other\"\n\"2750896\";\"mi de er bao\";\"other\"\n\"2750896\";\"Мидделбург\";\"other\"\n\"2750896\";\"米德尔堡\";\"other\"\n\"2750903\";\"Middelbeers\";\"main\"\n\"2750938\";\"Merkelbeek\";\"main\"\n\"2750947\";\"Meppel\";\"main\"\n\"2750947\";\"Меппел\";\"other\"\n\"2750965\";\"Menaam\";\"main\"\n\"2750965\";\"Menaldum\";\"other\"\n\"2750978\";\"Melick\";\"main\"\n\"2750978\";\"Melik\";\"other\"\n\"2751037\";\"Meerssen\";\"main\"\n\"2751037\";\"Meersen\";\"other\"\n\"2751037\";\"Meersje\";\"other\"\n\"2751122\";\"Marsum\";\"main\"\n\"2751122\";\"Marssum\";\"other\"\n\"2751129\";\"Marrum\";\"main\"\n\"2751161\";\"Markelo\";\"main\"\n\"2751161\";\"Markeloo\";\"other\"\n\"2751180\";\"Mariarade\";\"main\"\n\"2751193\";\"Mariaheide\";\"main\"\n\"2751199\";\"Margraten\";\"main\"\n\"2751212\";\"Mantgum\";\"main\"\n\"2751253\";\"Makkum\";\"main\"\n\"2751254\";\"Makkum\";\"main\"\n\"2751264\";\"Magele\";\"main\"\n\"2751283\";\"Maastricht\";\"main\"\n\"2751283\";\"Maastrikht\";\"other\"\n\"2751283\";\"Maestricht\";\"other\"\n\"2751283\";\"Mastrique\";\"other\"\n\"2751283\";\"Маастрихт\";\"other\"\n\"2751285\";\"Maassluis\";\"main\"\n\"2751296\";\"Maasdijk\";\"main\"\n\"2751301\";\"Maasbree\";\"main\"\n\"2751303\";\"Maasbracht\";\"main\"\n\"2751303\";\"Brach\";\"other\"\n\"2751316\";\"Maarssen\";\"main\"\n\"2751316\";\"Maarsen\";\"other\"\n\"2751318\";\"Maarsbergen\";\"main\"\n\"2751320\";\"Maarn\";\"main\"\n\"2751385\";\"Lunteren\";\"main\"\n\"2751424\";\"Losser\";\"main\"\n\"2751424\";\"Лоссер\";\"other\"\n\"2751436\";\"Lopik\";\"main\"\n\"2751449\";\"Loosbroek\";\"main\"\n\"2751456\";\"Loon op Zand\";\"main\"\n\"2751524\";\"Loenen\";\"main\"\n\"2751524\";\"Loenen op de Veluwe\";\"other\"\n\"2751537\";\"Lochem\";\"main\"\n\"2751547\";\"Lisse\";\"main\"\n\"2751582\";\"Lindenholt\";\"main\"\n\"2751599\";\"Limbricht\";\"main\"\n\"2751599\";\"Limbrikht\";\"other\"\n\"2751599\";\"Лимбрихт\";\"other\"\n\"2751621\";\"Liesveld\";\"main\"\n\"2751641\";\"Lienden\";\"main\"\n\"2751651\";\"Lichtenvoorde\";\"main\"\n\"2751687\";\"Leusden\";\"main\"\n\"2751687\";\"Hamersveld\";\"other\"\n\"2751687\";\"Leusden-Centrum\";\"other\"\n\"2751687\";\"Леусден\";\"other\"\n\"2751709\";\"Lepelstraat\";\"main\"\n\"2751729\";\"Lemmer\";\"main\"\n\"2751729\";\"De Lemmer\";\"other\"\n\"2751738\";\"Lelystad\";\"main\"\n\"2751738\";\"Lelistad\";\"other\"\n\"2751738\";\"lai li si ta de\";\"other\"\n\"2751738\";\"Лелистад\";\"other\"\n\"2751738\";\"لیلی‌استاد\";\"other\"\n\"2751738\";\"莱利斯塔德\";\"other\"\n\"2751750\";\"Leimuiden\";\"main\"\n\"2751750\";\"Leymuiden\";\"other\"\n\"2751771\";\"Leiderdorp\";\"main\"\n\"2751771\";\"Lejderdorpe\";\"other\"\n\"2751771\";\"Лейдердорпе\";\"other\"\n\"2751773\";\"Leiden\";\"main\"\n\"2751773\";\"Lajden\";\"other\"\n\"2751773\";\"Leida\";\"other\"\n\"2751773\";\"Leidenas\";\"other\"\n\"2751773\";\"Leie\";\"other\"\n\"2751773\";\"Lejda\";\"other\"\n\"2751773\";\"Lejden\";\"other\"\n\"2751773\";\"Leyde\";\"other\"\n\"2751773\";\"Leyden\";\"other\"\n\"2751773\";\"Lugdunum Batavorum\";\"other\"\n\"2751773\";\"lydn\";\"other\"\n\"2751773\";\"lyydn\";\"other\"\n\"2751773\";\"raiden\";\"other\"\n\"2751773\";\"Лайден\";\"other\"\n\"2751773\";\"Лейден\";\"other\"\n\"2751773\";\"ליידן\";\"other\"\n\"2751773\";\"لیدن\";\"other\"\n\"2751773\";\"ライデン\";\"other\"\n\"2751789\";\"Leeuwen\";\"main\"\n\"2751792\";\"Leeuwarden\";\"main\"\n\"2751792\";\"Leewarden\";\"other\"\n\"2751792\";\"Leuvarden\";\"other\"\n\"2751792\";\"Lieuwarden\";\"other\"\n\"2751792\";\"Liewarde\";\"other\"\n\"2751792\";\"Ljouwert\";\"other\"\n\"2751792\";\"lu fa deng\";\"other\"\n\"2751792\";\"lywwardn\";\"other\"\n\"2751792\";\"rewaruden\";\"other\"\n\"2751792\";\"Леуварден\";\"other\"\n\"2751792\";\"لیوواردن\";\"other\"\n\"2751792\";\"レーワルデン\";\"other\"\n\"2751792\";\"吕伐登\";\"other\"\n\"2751793\";\"Leesten\";\"main\"\n\"2751801\";\"Leersum\";\"main\"\n\"2751808\";\"Leerdam\";\"main\"\n\"2751834\";\"Leek\";\"main\"\n\"2751834\";\"De Leek\";\"other\"\n\"2751874\";\"Laren\";\"main\"\n\"2751875\";\"Laren\";\"main\"\n\"2751980\";\"Landsmeer\";\"main\"\n\"2752130\";\"Kwintsheul\";\"main\"\n\"2752151\";\"Kunrade\";\"main\"\n\"2752192\";\"Kruisland\";\"main\"\n\"2752264\";\"Krimpen aan den IJssel\";\"main\"\n\"2752264\";\"Krimpen\";\"other\"\n\"2752264\";\"Krimpen a/d IJssel\";\"other\"\n\"2752264\";\"Krimpen a/d Yssel\";\"other\"\n\"2752264\";\"Krimpen aan de IJssel\";\"other\"\n\"2752264\";\"Krimpen aan de Yssel\";\"other\"\n\"2752264\";\"Krimpen aan den Yssel\";\"other\"\n\"2752367\";\"Koudum\";\"main\"\n\"2752409\";\"Kortenhoef\";\"main\"\n\"2752409\";\"Kortenkhov\";\"other\"\n\"2752409\";\"Кортенхов\";\"other\"\n\"2752420\";\"Korrewegwijk\";\"main\"\n\"2752441\";\"Kootwijkerbroek\";\"main\"\n\"2752444\";\"Kootstertille\";\"main\"\n\"2752444\";\"Koatstertille\";\"other\"\n\"2752492\";\"Koningsbosch\";\"main\"\n\"2752520\";\"Kollumerzwaag\";\"main\"\n\"2752520\";\"Kollumerlan\";\"other\"\n\"2752520\";\"Kollumerland\";\"other\"\n\"2752520\";\"Kollumerlân\";\"other\"\n\"2752520\";\"Kollumersweach\";\"other\"\n\"2752524\";\"Kollum\";\"main\"\n\"2752547\";\"Koewacht\";\"main\"\n\"2752600\";\"Klundert\";\"main\"\n\"2752646\";\"Klimmen\";\"main\"\n\"2752798\";\"Klazienaveen\";\"main\"\n\"2752923\";\"Kerkrade\";\"main\"\n\"2752923\";\"Kerkraad\";\"other\"\n\"2752923\";\"Kirchroa\";\"other\"\n\"2752923\";\"kerukurade\";\"other\"\n\"2752923\";\"Керкраде\";\"other\"\n\"2752923\";\"ケルクラーデ\";\"other\"\n\"2752950\";\"Marken\";\"main\"\n\"2752950\";\"Monnickenwerf\";\"other\"\n\"2752950\";\"Monnikenwerf\";\"other\"\n\"2752950\";\"Маркен\";\"other\"\n\"2752969\";\"Keldonk\";\"main\"\n\"2753010\";\"Katwijk aan Zee\";\"main\"\n\"2753010\";\"Katijk aan Zee\";\"other\"\n\"2753010\";\"Katwijk-Midden\";\"other\"\n\"2753010\";\"Katwyk Aan Zee\";\"other\"\n\"2753011\";\"Katwijk aan den Rijn\";\"main\"\n\"2753011\";\"Katwijk\";\"other\"\n\"2753011\";\"Katwijk a/d Rijn\";\"other\"\n\"2753011\";\"Katwijk aan de Rijn\";\"other\"\n\"2753106\";\"Kampen\";\"main\"\n\"2753106\";\"Кампен\";\"other\"\n\"2753197\";\"Joure\";\"main\"\n\"2753197\";\"De Jouwer\";\"other\"\n\"2753307\";\"Jirnsum\";\"main\"\n\"2753307\";\"Irnsum\";\"other\"\n\"2753355\";\"IJsselstein\";\"main\"\n\"2753355\";\"IJselstein\";\"other\"\n\"2753355\";\"Issel'stejn\";\"other\"\n\"2753355\";\"Иссельстейн\";\"other\"\n\"2753379\";\"IJlst\";\"main\"\n\"2753379\";\"Drylts\";\"other\"\n\"2753439\";\"Hulst\";\"main\"\n\"2753468\";\"Huizen\";\"main\"\n\"2753470\";\"Huizum\";\"main\"\n\"2753548\";\"Houthem\";\"main\"\n\"2753548\";\"Houtem\";\"other\"\n\"2753548\";\"Houthem-St. Gerlach\";\"other\"\n\"2753557\";\"Houten\";\"main\"\n\"2753587\";\"Horst\";\"main\"\n\"2753587\";\"Khorst\";\"other\"\n\"2753587\";\"Хорст\";\"other\"\n\"2753638\";\"Hoorn\";\"main\"\n\"2753638\";\"Hoarn\";\"other\"\n\"2753638\";\"Khoorn\";\"other\"\n\"2753638\";\"Хоорн\";\"other\"\n\"2753686\";\"Hoogland\";\"main\"\n\"2753706\";\"Hoogezand\";\"main\"\n\"2753719\";\"Hoogeveen\";\"main\"\n\"2753719\";\"Khoogeveen\";\"other\"\n\"2753719\";\"Хоогевеен\";\"other\"\n\"2753801\";\"Hoofddorp\";\"main\"\n\"2753801\";\"Haarlemmermeer\";\"other\"\n\"2753806\";\"Honselersdijk\";\"main\"\n\"2753806\";\"Hondshorledijk\";\"other\"\n\"2753806\";\"Honselerdijk\";\"other\"\n\"2753852\";\"Holwerd\";\"main\"\n\"2753852\";\"Holwert\";\"other\"\n\"2753887\";\"Hollum\";\"main\"\n\"2753996\";\"Hoensbroek\";\"main\"\n\"2753996\";\"Gebrook\";\"other\"\n\"2753996\";\"Hoensbrock\";\"other\"\n\"2754007\";\"Hoek van Holland\";\"main\"\n\"2754007\";\"Hook of Holland\";\"other\"\n\"2754007\";\"Khoek van Kholland\";\"other\"\n\"2754007\";\"Хоек ван Холланд\";\"other\"\n\"2754064\";\"Hilversum\";\"main\"\n\"2754064\";\"Hilvertsheim\";\"other\"\n\"2754064\";\"Khilversjum\";\"other\"\n\"2754064\";\"Хилверсюм\";\"other\"\n\"2754066\";\"Hilvarenbeek\";\"main\"\n\"2754073\";\"Hillegom\";\"main\"\n\"2754073\";\"Hellegom\";\"other\"\n\"2754111\";\"Heythuysen\";\"main\"\n\"2754111\";\"Heijthuizen\";\"other\"\n\"2754111\";\"Heithuizen\";\"other\"\n\"2754111\";\"Heitse\";\"other\"\n\"2754111\";\"Heythuizen\";\"other\"\n\"2754287\";\"Heteren\";\"main\"\n\"2754322\";\"Herveld\";\"main\"\n\"2754352\";\"Herkenbosch\";\"main\"\n\"2754389\";\"Hengevelde\";\"main\"\n\"2754389\";\"Hengeveld\";\"other\"\n\"2754394\";\"Hengelo\";\"main\"\n\"2754394\";\"Hemgelo\";\"other\"\n\"2754394\";\"Hengeloo\";\"other\"\n\"2754408\";\"Hendrik-Ido-Ambacht\";\"main\"\n\"2754447\";\"Helmond\";\"main\"\n\"2754454\";\"Hellevoetsluis\";\"main\"\n\"2754502\";\"Heino\";\"main\"\n\"2754507\";\"Heinenoord\";\"main\"\n\"2754516\";\"Heiloo\";\"main\"\n\"2754516\";\"Heilo\";\"other\"\n\"2754618\";\"Heeze\";\"main\"\n\"2754635\";\"Heesch\";\"main\"\n\"2754652\";\"Heerlen\";\"main\"\n\"2754652\";\"Coriovalo\";\"other\"\n\"2754652\";\"Heele\";\"other\"\n\"2754652\";\"Heële\";\"other\"\n\"2754652\";\"Kheerlen\";\"other\"\n\"2754652\";\"Хеерлен\";\"other\"\n\"2754656\";\"Heerjansdam\";\"main\"\n\"2754659\";\"Heerhugowaard\";\"main\"\n\"2754662\";\"Heerewaarden\";\"main\"\n\"2754662\";\"Heriwarda\";\"other\"\n\"2754669\";\"Heerenveen\";\"main\"\n\"2754669\";\"Hereveen\";\"other\"\n\"2754669\";\"It Hearrenfean\";\"other\"\n\"2754669\";\"Kherenven\";\"other\"\n\"2754669\";\"Херенвен\";\"other\"\n\"2754681\";\"Heerde\";\"main\"\n\"2754682\";\"Heer\";\"main\"\n\"2754682\";\"Meer\";\"other\"\n\"2754692\";\"Heemstede\";\"main\"\n\"2754692\";\"hai mu si tai de\";\"other\"\n\"2754692\";\"海姆斯泰德\";\"other\"\n\"2754697\";\"Heemskerk\";\"main\"\n\"2754697\";\"Kheemskerk\";\"other\"\n\"2754697\";\"Хеемскерк\";\"other\"\n\"2754703\";\"Heelsum\";\"main\"\n\"2754712\";\"Heeg\";\"main\"\n\"2754719\";\"Hedel\";\"main\"\n\"2754752\";\"Havelte\";\"main\"\n\"2754768\";\"Hattem\";\"main\"\n\"2754779\";\"Hasselt\";\"main\"\n\"2754804\";\"Harskamp\";\"main\"\n\"2754804\";\"Hartenkamp\";\"other\"\n\"2754804\";\"Hartskamp\";\"other\"\n\"2754817\";\"Harlingen\";\"main\"\n\"2754817\";\"Harns\";\"other\"\n\"2754821\";\"Harkema\";\"main\"\n\"2754821\";\"De Harkema\";\"other\"\n\"2754821\";\"Harkema-Opeinde\";\"other\"\n\"2754835\";\"Harfsen\";\"main\"\n\"2754837\";\"Harenkarspel\";\"main\"\n\"2754841\";\"Haren\";\"main\"\n\"2754848\";\"Harderwijk\";\"main\"\n\"2754861\";\"Hardenberg\";\"main\"\n\"2754861\";\"Khardenberge\";\"other\"\n\"2754861\";\"Stad-Hardenberg\";\"other\"\n\"2754861\";\"Харденберге\";\"other\"\n\"2754864\";\"Hurdegaryp\";\"main\"\n\"2754864\";\"Hardegarijp\";\"other\"\n\"2754922\";\"Halsteren\";\"main\"\n\"2754930\";\"Hallum\";\"main\"\n\"2754975\";\"Haelen\";\"main\"\n\"2754975\";\"Hale\";\"other\"\n\"2754975\";\"Halen\";\"other\"\n\"2754978\";\"Haastrecht\";\"main\"\n\"2755003\";\"Haarlem\";\"main\"\n\"2755003\";\"Haarlemo\";\"other\"\n\"2755003\";\"Khaarlem\";\"other\"\n\"2755003\";\"Kharlem\";\"other\"\n\"2755003\";\"ha lei mu\";\"other\"\n\"2755003\";\"haarlemi\";\"other\"\n\"2755003\";\"haruremu\";\"other\"\n\"2755003\";\"Хаарлем\";\"other\"\n\"2755003\";\"Харлем\";\"other\"\n\"2755003\";\"ჰაარლემი\";\"other\"\n\"2755003\";\"ハールレム\";\"other\"\n\"2755003\";\"哈勒姆\";\"other\"\n\"2755009\";\"Haaren\";\"main\"\n\"2755009\";\"Haren\";\"other\"\n\"2755023\";\"Haamstede\";\"main\"\n\"2755023\";\"Khamstede\";\"other\"\n\"2755023\";\"Хамстеде\";\"other\"\n\"2755030\";\"Haaksbergen\";\"main\"\n\"2755030\";\"Khaaksbergen\";\"other\"\n\"2755030\";\"Хааксберген\";\"other\"\n\"2755052\";\"Grou\";\"main\"\n\"2755052\";\"Grouw\";\"other\"\n\"2755204\";\"Grootegast\";\"main\"\n\"2755251\";\"Groningen\";\"main\"\n\"2755251\";\"Greuninge\";\"other\"\n\"2755251\";\"Grins\";\"other\"\n\"2755251\";\"Groninga\";\"other\"\n\"2755251\";\"Groningue\";\"other\"\n\"2755251\";\"Grunneng\";\"other\"\n\"2755251\";\"Nkronin'nken\";\"other\"\n\"2755251\";\"furoningen\";\"other\"\n\"2755251\";\"furoningen shi\";\"other\"\n\"2755251\";\"ge luo ning gen\";\"other\"\n\"2755251\";\"hrwnyngn\";\"other\"\n\"2755251\";\"Γκρόνινγκεν\";\"other\"\n\"2755251\";\"Гронинген\";\"other\"\n\"2755251\";\"חרונינגן\";\"other\"\n\"2755251\";\"フローニンゲン\";\"other\"\n\"2755251\";\"フローニンゲン市\";\"other\"\n\"2755251\";\"格罗宁根\";\"other\"\n\"2755272\";\"Groesbeek\";\"main\"\n\"2755317\";\"Grijpskerk\";\"main\"\n\"2755358\";\"Grave\";\"main\"\n\"2755399\";\"Goutum\";\"main\"\n\"2755420\";\"Gouda\";\"main\"\n\"2755420\";\"Gauda\";\"other\"\n\"2755420\";\"Guda\";\"other\"\n\"2755420\";\"Гауда\";\"other\"\n\"2755428\";\"Gorssel\";\"main\"\n\"2755428\";\"Gorsel\";\"other\"\n\"2755429\";\"Gorredijk\";\"main\"\n\"2755429\";\"De Gordyk\";\"other\"\n\"2755434\";\"Gorinchem\";\"main\"\n\"2755434\";\"Gorkum\";\"other\"\n\"2755449\";\"Goor\";\"main\"\n\"2755464\";\"Goirle\";\"main\"\n\"2755464\";\"Goirl\";\"other\"\n\"2755464\";\"Goorle\";\"other\"\n\"2755464\";\"Гоирл\";\"other\"\n\"2755476\";\"Goes\";\"main\"\n\"2755485\";\"Goedereede\";\"main\"\n\"2755485\";\"Goederee\";\"other\"\n\"2755485\";\"Goeree\";\"other\"\n\"2755517\";\"Giethoorn\";\"main\"\n\"2755533\";\"Giessenburg\";\"main\"\n\"2755533\";\"Giesen Nieuwkerk\";\"other\"\n\"2755533\";\"Giessen Nieuwkerk\";\"other\"\n\"2755542\";\"Gytsjerk\";\"main\"\n\"2755542\";\"Giekerk\";\"other\"\n\"2755584\";\"Gennep\";\"main\"\n\"2755584\";\"Asnapium\";\"other\"\n\"2755584\";\"Gennep an der Maas\";\"other\"\n\"2755599\";\"Gendringen\";\"main\"\n\"2755599\";\"Гендринген\";\"other\"\n\"2755619\";\"Geldrop\";\"main\"\n\"2755619\";\"Gel'drop\";\"other\"\n\"2755619\";\"Гельдроп\";\"other\"\n\"2755633\";\"Geldermalsen\";\"main\"\n\"2755633\";\"Gel'dermalsen\";\"other\"\n\"2755633\";\"Гельдермалсен\";\"other\"\n\"2755645\";\"Geffen\";\"main\"\n\"2755669\";\"Geertruidenberg\";\"main\"\n\"2755669\";\"Getrudenberg\";\"other\"\n\"2755669\";\"Гетруденберг\";\"other\"\n\"2755729\";\"Garyp\";\"main\"\n\"2755729\";\"Garijp\";\"other\"\n\"2755732\";\"Garderen\";\"main\"\n\"2755845\";\"Franeker\";\"main\"\n\"2755845\";\"Frjentsjer\";\"other\"\n\"2755920\";\"Ferwert\";\"main\"\n\"2756035\";\"Erp\";\"main\"\n\"2756039\";\"Ermelo\";\"main\"\n\"2756039\";\"Ehrmelo\";\"other\"\n\"2756039\";\"Эрмело\";\"other\"\n\"2756050\";\"Epse\";\"main\"\n\"2756059\";\"Epe\";\"main\"\n\"2756059\";\"Ehpe\";\"other\"\n\"2756059\";\"Эпе\";\"other\"\n\"2756071\";\"Enschede\";\"main\"\n\"2756071\";\"Ehnskhede\";\"other\"\n\"2756071\";\"Ensjedee\";\"other\"\n\"2756071\";\"Enskede\";\"other\"\n\"2756071\";\"Ynskedee\";\"other\"\n\"2756071\";\"Энсхеде\";\"other\"\n\"2756072\";\"Ens\";\"main\"\n\"2756077\";\"Enkhuizen\";\"main\"\n\"2756077\";\"Enkhuze\";\"other\"\n\"2756077\";\"Inkhuzen\";\"other\"\n\"2756114\";\"Emst\";\"main\"\n\"2756133\";\"Emmer-Compascuum\";\"main\"\n\"2756136\";\"Emmen\";\"main\"\n\"2756136\";\"Ehmmen\";\"other\"\n\"2756136\";\"Emme\";\"other\"\n\"2756136\";\"Emmeni vald\";\"other\"\n\"2756136\";\"Эммен\";\"other\"\n\"2756139\";\"Emmeloord\";\"main\"\n\"2756161\";\"Elst\";\"main\"\n\"2756169\";\"Elsloo\";\"main\"\n\"2756169\";\"Aelse\";\"other\"\n\"2756169\";\"Elslo\";\"other\"\n\"2756200\";\"Ellecom\";\"main\"\n\"2756200\";\"Ellekom\";\"other\"\n\"2756232\";\"Elburg\";\"main\"\n\"2756232\";\"Ehlburg\";\"other\"\n\"2756232\";\"Элбург\";\"other\"\n\"2756253\";\"Eindhoven\";\"main\"\n\"2756253\";\"Ehjndkhoven\";\"other\"\n\"2756253\";\"Eindhove\";\"other\"\n\"2756253\";\"Eindhovena\";\"other\"\n\"2756253\";\"aintohofen\";\"other\"\n\"2756253\";\"Эйндховен\";\"other\"\n\"2756253\";\"アイントホーフェン\";\"other\"\n\"2756283\";\"Eijsden\";\"main\"\n\"2756283\";\"Eisden\";\"other\"\n\"2756283\";\"Eysden\";\"other\"\n\"2756295\";\"Eibergen\";\"main\"\n\"2756342\";\"Eersel\";\"main\"\n\"2756349\";\"Eerde\";\"main\"\n\"2756351\";\"Eerbeek\";\"main\"\n\"2756351\";\"Erbeke\";\"other\"\n\"2756418\";\"Eefde\";\"main\"\n\"2756426\";\"Ederveen\";\"main\"\n\"2756429\";\"Ede\";\"main\"\n\"2756429\";\"Ehde\";\"other\"\n\"2756429\";\"ede\";\"other\"\n\"2756429\";\"Эде\";\"other\"\n\"2756429\";\"エーデ\";\"other\"\n\"2756431\";\"Edam\";\"main\"\n\"2756431\";\"Ehdam\";\"other\"\n\"2756431\";\"Эдам\";\"other\"\n\"2756438\";\"Echtenerbrug\";\"main\"\n\"2756438\";\"Echterbrug\";\"other\"\n\"2756451\";\"Dwingeloo\";\"main\"\n\"2756451\";\"Dwingelo\";\"other\"\n\"2756504\";\"Duivendrecht\";\"main\"\n\"2756507\";\"Duiven\";\"main\"\n\"2756539\";\"Druten\";\"main\"\n\"2756559\";\"Dronten\";\"main\"\n\"2756559\";\"doronten\";\"other\"\n\"2756559\";\"Дронтен\";\"other\"\n\"2756559\";\"ドロンテン\";\"other\"\n\"2756561\";\"Dronryp\";\"main\"\n\"2756561\";\"Dronrijp\";\"other\"\n\"2756567\";\"Drogeham\";\"main\"\n\"2756567\";\"Droegeham\";\"other\"\n\"2756567\";\"Droogeham\";\"other\"\n\"2756569\";\"Drimmelen\";\"main\"\n\"2756569\";\"Drimlen\";\"other\"\n\"2756569\";\"Дримлен\";\"other\"\n\"2756584\";\"Driemond\";\"main\"\n\"2756591\";\"Driel\";\"main\"\n\"2756619\";\"Driebergen-Rijsenburg\";\"main\"\n\"2756642\";\"Drachtstercompagnie\";\"main\"\n\"2756642\";\"De Compagnie\";\"other\"\n\"2756642\";\"Drachster Compaghnie\";\"other\"\n\"2756642\";\"Drachtster Kompenije\";\"other\"\n\"2756644\";\"Drachten\";\"main\"\n\"2756644\";\"Drakhten\";\"other\"\n\"2756644\";\"Драхтен\";\"other\"\n\"2756669\";\"Dordrecht\";\"main\"\n\"2756669\";\"Doardt\";\"other\"\n\"2756669\";\"Dordracum\";\"other\"\n\"2756669\";\"Dordrech\";\"other\"\n\"2756669\";\"Dordt\";\"other\"\n\"2756669\";\"Dort\";\"other\"\n\"2756669\";\"Ntorntrecht\";\"other\"\n\"2756669\";\"dorutorehito\";\"other\"\n\"2756669\";\"Ντόρντρεχτ\";\"other\"\n\"2756669\";\"ドルトレヒト\";\"other\"\n\"2756673\";\"Doorwerth\";\"main\"\n\"2756686\";\"Doorn\";\"main\"\n\"2756723\";\"Dongen\";\"main\"\n\"2756723\";\"Донген\";\"other\"\n\"2756759\";\"Dokkum\";\"main\"\n\"2756767\";\"Doetinchem\";\"main\"\n\"2756767\";\"Dutinkhem\";\"other\"\n\"2756767\";\"Дутинхем\";\"other\"\n\"2756772\";\"Doesburg\";\"main\"\n\"2756774\";\"Doenrade\";\"main\"\n\"2756774\";\"Groot Doenrade\";\"other\"\n\"2756787\";\"Dirksland\";\"main\"\n\"2756800\";\"Dinteloord\";\"main\"\n\"2756865\";\"Dieren\";\"main\"\n\"2756878\";\"Diepenheim\";\"main\"\n\"2756888\";\"Diemen\";\"main\"\n\"2756888\";\"Diemerbrug\";\"other\"\n\"2756987\";\"Deventer\";\"main\"\n\"2756987\";\"Dimter\";\"other\"\n\"2756987\";\"Девентер\";\"other\"\n\"2757041\";\"De Steeg\";\"main\"\n\"2757041\";\"Steeg\";\"other\"\n\"2757194\";\"Den Oever\";\"main\"\n\"2757194\";\"Den-Uver\";\"other\"\n\"2757194\";\"Oever\";\"other\"\n\"2757194\";\"Ден-Увер\";\"other\"\n\"2757220\";\"Den Helder\";\"main\"\n\"2757220\";\"Der Helder\";\"other\"\n\"2757220\";\"Helder\";\"other\"\n\"2757220\";\"Le Helder\";\"other\"\n\"2757220\";\"denhelder\";\"other\"\n\"2757224\";\"Den Ham\";\"main\"\n\"2757224\";\"Ham\";\"other\"\n\"2757244\";\"Den Burg\";\"main\"\n\"2757244\";\"Burg\";\"other\"\n\"2757244\";\"De Burg\";\"other\"\n\"2757336\";\"De Lier\";\"main\"\n\"2757336\";\"Lier\";\"other\"\n\"2757340\";\"Delfzijl\";\"main\"\n\"2757340\";\"Delfzejl\";\"other\"\n\"2757340\";\"Delfzyl\";\"other\"\n\"2757340\";\"Делфзейл\";\"other\"\n\"2757345\";\"Delft\";\"main\"\n\"2757345\";\"Ntelpht\";\"other\"\n\"2757345\";\"dai er fu te\";\"other\"\n\"2757345\";\"derufuto shi\";\"other\"\n\"2757345\";\"dlpt\";\"other\"\n\"2757345\";\"Ντελφτ\";\"other\"\n\"2757345\";\"Делфт\";\"other\"\n\"2757345\";\"דלפט\";\"other\"\n\"2757345\";\"デルフト市\";\"other\"\n\"2757345\";\"代尔夫特\";\"other\"\n\"2757347\";\"Delfshaven\";\"main\"\n\"2757370\";\"Delden\";\"main\"\n\"2757475\";\"Deinum\";\"main\"\n\"2757493\";\"De Horst\";\"main\"\n\"2757685\";\"De Doornakkers\";\"main\"\n\"2757685\";\"Doornakkers\";\"other\"\n\"2757783\";\"De Bilt\";\"main\"\n\"2757783\";\"De Bildt\";\"other\"\n\"2757838\";\"Damwâld\";\"main\"\n\"2757838\";\"Damwald\";\"ascii\"\n\"2757838\";\"Damwoude\";\"other\"\n\"2757838\";\"Moarrewald\";\"other\"\n\"2757838\";\"Moarrewâld\";\"other\"\n\"2757838\";\"Murmerwoude\";\"other\"\n\"2757850\";\"Dalfsen\";\"main\"\n\"2757850\";\"Dal'fsen\";\"other\"\n\"2757850\";\"Дальфсен\";\"other\"\n\"2757857\";\"Dalen\";\"main\"\n\"2757872\";\"Culemborg\";\"main\"\n\"2757872\";\"Culemburg\";\"other\"\n\"2757872\";\"Culenborg\";\"other\"\n\"2757872\";\"Kuilenburg\";\"other\"\n\"2757872\";\"Kulemborg\";\"other\"\n\"2757872\";\"Кулемборг\";\"other\"\n\"2757874\";\"Cuijk\";\"main\"\n\"2757874\";\"Cuyk\";\"other\"\n\"2757874\";\"Kuuk\";\"other\"\n\"2757874\";\"Kuyk\";\"other\"\n\"2757890\";\"Cranendonck\";\"main\"\n\"2757890\";\"Kranedonk\";\"other\"\n\"2757937\";\"Coevorden\";\"main\"\n\"2757937\";\"Koevorden\";\"other\"\n\"2757991\";\"Castricum\";\"main\"\n\"2757991\";\"Kastrikum\";\"other\"\n\"2758007\";\"Capelle-West\";\"main\"\n\"2758012\";\"Capelle aan den IJssel\";\"main\"\n\"2758012\";\"Capelle\";\"other\"\n\"2758012\";\"Capelle a/d IJssel\";\"other\"\n\"2758012\";\"Capelle a/d Yssel\";\"other\"\n\"2758012\";\"Capelle aan de IJssel\";\"other\"\n\"2758012\";\"Capelle aan de Yssel\";\"other\"\n\"2758012\";\"Capelle aan den Yssel\";\"other\"\n\"2758012\";\"Kapelle\";\"other\"\n\"2758064\";\"Bussum\";\"main\"\n\"2758064\";\"Bjussjum\";\"other\"\n\"2758064\";\"Бюссюм\";\"other\"\n\"2758081\";\"Burgh\";\"main\"\n\"2758081\";\"Burg\";\"other\"\n\"2758081\";\"Бург\";\"other\"\n\"2758104\";\"Bunschoten\";\"main\"\n\"2758104\";\"Bunschoten-Spakenburg\";\"other\"\n\"2758106\";\"Bunnik\";\"main\"\n\"2758131\";\"Buitenpost\";\"main\"\n\"2758131\";\"Butenpost\";\"other\"\n\"2758131\";\"Bûtenpost\";\"other\"\n\"2758174\";\"Brunssum\";\"main\"\n\"2758174\";\"Brjunssume\";\"other\"\n\"2758174\";\"Broensem\";\"other\"\n\"2758174\";\"Brunsum\";\"other\"\n\"2758174\";\"Брюнссуме\";\"other\"\n\"2758177\";\"Brummen\";\"main\"\n\"2758177\";\"Бруммен\";\"other\"\n\"2758186\";\"Bruinisse\";\"main\"\n\"2758239\";\"Broeksterwâld\";\"main\"\n\"2758239\";\"Broeksterwald\";\"ascii\"\n\"2758239\";\"Broek\";\"other\"\n\"2758239\";\"Broeksterwoude\";\"other\"\n\"2758239\";\"De Broek\";\"other\"\n\"2758245\";\"Broek op Langedijk\";\"main\"\n\"2758245\";\"Broek op Langendijk\";\"other\"\n\"2758258\";\"Broek in Waterland\";\"main\"\n\"2758258\";\"Broek\";\"other\"\n\"2758275\";\"Broekhem\";\"main\"\n\"2758275\";\"Brokem\";\"other\"\n\"2758309\";\"Britsum\";\"main\"\n\"2758326\";\"Brielle\";\"main\"\n\"2758326\";\"Den Briel\";\"other\"\n\"2758333\";\"Breukelen\";\"main\"\n\"2758336\";\"Breugel\";\"main\"\n\"2758391\";\"Bredeweg\";\"main\"\n\"2758391\";\"Breedeweg\";\"other\"\n\"2758393\";\"Bredevoort\";\"main\"\n\"2758393\";\"Bredevort\";\"other\"\n\"2758393\";\"Бредеворт\";\"other\"\n\"2758401\";\"Breda\";\"main\"\n\"2758401\";\"Brigita\";\"other\"\n\"2758401\";\"Bréda\";\"other\"\n\"2758401\";\"beuleda\";\"other\"\n\"2758401\";\"Бреда\";\"other\"\n\"2758401\";\"브레다\";\"other\"\n\"2758460\";\"Boxtel\";\"main\"\n\"2758460\";\"Bokstel\";\"other\"\n\"2758460\";\"Бокстел\";\"other\"\n\"2758462\";\"Boxmeer\";\"main\"\n\"2758462\";\"Boksmaer\";\"other\"\n\"2758462\";\"Boksmeer\";\"other\"\n\"2758500\";\"Boven-Hardinxveld\";\"main\"\n\"2758500\";\"Boven Hardingsveld\";\"other\"\n\"2758500\";\"Hardingsveld\";\"other\"\n\"2758500\";\"Hardinxveld\";\"other\"\n\"2758547\";\"Boskoop\";\"main\"\n\"2758549\";\"Boskamp\";\"main\"\n\"2758587\";\"Borssele\";\"main\"\n\"2758587\";\"Borsele\";\"other\"\n\"2758587\";\"Borssel'\";\"other\"\n\"2758587\";\"Borsselen\";\"other\"\n\"2758587\";\"Bossele\";\"other\"\n\"2758587\";\"Борссель\";\"other\"\n\"2758598\";\"Borne\";\"main\"\n\"2758598\";\"Борне\";\"other\"\n\"2758602\";\"Born\";\"main\"\n\"2758621\";\"Borger\";\"main\"\n\"2758621\";\"Боргер\";\"other\"\n\"2758626\";\"Borculo\";\"main\"\n\"2758626\";\"Borkulo\";\"other\"\n\"2758633\";\"Boornbergum\";\"main\"\n\"2758633\";\"Boarnburgum\";\"other\"\n\"2758682\";\"Bolsward\";\"main\"\n\"2758682\";\"Boalsert\";\"other\"\n\"2758748\";\"Boelenslaan\";\"main\"\n\"2758748\";\"Boelensloane\";\"other\"\n\"2758748\";\"Surhuisterveensterheide\";\"other\"\n\"2758759\";\"Boekel\";\"main\"\n\"2758765\";\"Bodegraven\";\"main\"\n\"2758777\";\"Blokzijl\";\"main\"\n\"2758803\";\"Bloemendaal\";\"main\"\n\"2758803\";\"Bloemendaalseweg\";\"other\"\n\"2758804\";\"Bloemendaal\";\"main\"\n\"2758838\";\"Bleiswijk\";\"main\"\n\"2758838\";\"Blieswijk\";\"other\"\n\"2758868\";\"Blaricum\";\"main\"\n\"2758868\";\"Blarikum\";\"other\"\n\"2758878\";\"Bladel\";\"main\"\n\"2758895\";\"Burdaard\";\"main\"\n\"2758895\";\"Birdaard\";\"other\"\n\"2758930\";\"Bilgaard\";\"main\"\n\"2758930\";\"Bilgaerd\";\"other\"\n\"2758992\";\"Biddinghuizen\";\"main\"\n\"2758998\";\"Beverwijk\";\"main\"\n\"2758998\";\"Berverwyk\";\"other\"\n\"2759016\";\"Beuningen\";\"main\"\n\"2759040\";\"Best\";\"main\"\n\"2759057\";\"Berltsum\";\"main\"\n\"2759057\";\"Berlikum\";\"other\"\n\"2759103\";\"Burgum\";\"main\"\n\"2759103\";\"Bergum\";\"other\"\n\"2759113\";\"Bergschenhoek\";\"main\"\n\"2759126\";\"Berghem\";\"main\"\n\"2759126\";\"Berchem\";\"other\"\n\"2759129\";\"Bergharen\";\"main\"\n\"2759132\";\"Bergeijk\";\"main\"\n\"2759132\";\"Bergeyk\";\"ascii\"\n\"2759132\";\"Bergeik\";\"other\"\n\"2759145\";\"Bergen op Zoom\";\"main\"\n\"2759145\";\"Bergen-op-Zom\";\"other\"\n\"2759145\";\"Берген-оп-Зом\";\"other\"\n\"2759147\";\"Berg en Dal\";\"main\"\n\"2759163\";\"Berg\";\"main\"\n\"2759163\";\"Berg aan de Maas\";\"other\"\n\"2759164\";\"Berg\";\"main\"\n\"2759178\";\"Benthuizen\";\"main\"\n\"2759197\";\"Bennekom\";\"main\"\n\"2759199\";\"Bennebroek\";\"main\"\n\"2759286\";\"Beesel\";\"main\"\n\"2759286\";\"Besel\";\"other\"\n\"2759342\";\"Beekbergen\";\"main\"\n\"2759350\";\"Beek\";\"main\"\n\"2759350\";\"Baek\";\"other\"\n\"2759356\";\"Bedum\";\"main\"\n\"2759407\";\"Barneveld\";\"main\"\n\"2759407\";\"Барневелд\";\"other\"\n\"2759426\";\"Barendrecht\";\"main\"\n\"2759429\";\"Barchem\";\"main\"\n\"2759472\";\"Balk\";\"main\"\n\"2759544\";\"Baarn\";\"main\"\n\"2759544\";\"Baan\";\"other\"\n\"2759544\";\"Баан\";\"other\"\n\"2759581\";\"Baak\";\"main\"\n\"2759594\";\"Axel\";\"main\"\n\"2759594\";\"Aksel\";\"other\"\n\"2759611\";\"Augustinusga\";\"main\"\n\"2759611\";\"Stynsgea\";\"other\"\n\"2759621\";\"Asten\";\"main\"\n\"2759621\";\"Aste\";\"other\"\n\"2759633\";\"Assen\";\"main\"\n\"2759633\";\"Asen\";\"other\"\n\"2759633\";\"Asse\";\"other\"\n\"2759633\";\"a sen\";\"other\"\n\"2759633\";\"assen\";\"other\"\n\"2759633\";\"Асен\";\"other\"\n\"2759633\";\"アッセン\";\"other\"\n\"2759633\";\"阿森\";\"other\"\n\"2759661\";\"Arnhem\";\"main\"\n\"2759661\";\"Arnem\";\"other\"\n\"2759661\";\"Arnheim\";\"other\"\n\"2759661\";\"Arnhemia\";\"other\"\n\"2759661\";\"Arnhim\";\"other\"\n\"2759661\";\"a na mu\";\"other\"\n\"2759661\";\"anemu\";\"other\"\n\"2759661\";\"Арнем\";\"other\"\n\"2759661\";\"ארנהם\";\"other\"\n\"2759661\";\"アーネム\";\"other\"\n\"2759661\";\"阿纳姆\";\"other\"\n\"2759684\";\"Arcen\";\"main\"\n\"2759687\";\"Appingedam\";\"main\"\n\"2759706\";\"Apeldoorn\";\"main\"\n\"2759706\";\"Apeldoorne\";\"other\"\n\"2759706\";\"Apeldorn\";\"other\"\n\"2759706\";\"aperudorun\";\"other\"\n\"2759706\";\"Апелдорн\";\"other\"\n\"2759706\";\"アペルドールン\";\"other\"\n\"2759746\";\"Anloo\";\"main\"\n\"2759746\";\"Anlo\";\"other\"\n\"2759757\";\"Anjum\";\"main\"\n\"2759757\";\"Eanjum\";\"other\"\n\"2759781\";\"Andelst\";\"main\"\n\"2759794\";\"Amsterdam\";\"main\"\n\"2759794\";\"Amstehrdam\";\"other\"\n\"2759794\";\"Amstelodamum\";\"other\"\n\"2759794\";\"Amsterdam - Amsterdam\";\"other\"\n\"2759794\";\"Amsterdama\";\"other\"\n\"2759794\";\"Amsterdamas\";\"other\"\n\"2759794\";\"Amsterdami\";\"other\"\n\"2759794\";\"Amsterdamo\";\"other\"\n\"2759794\";\"Amsterdao\";\"other\"\n\"2759794\";\"Amsterdão\";\"other\"\n\"2759794\";\"Amsterntam\";\"other\"\n\"2759794\";\"Amszterdam\";\"other\"\n\"2759794\";\"a mu si te dan\";\"other\"\n\"2759794\";\"amseuteleudam\";\"other\"\n\"2759794\";\"amstrdam\";\"other\"\n\"2759794\";\"amusuterudamu\";\"other\"\n\"2759794\";\"xamstexrdam\";\"other\"\n\"2759794\";\"Ámsterdam\";\"other\"\n\"2759794\";\"Ámsterdam - Amsterdam\";\"other\"\n\"2759794\";\"Άμστερνταμ\";\"other\"\n\"2759794\";\"Амстердам\";\"other\"\n\"2759794\";\"Амстэрдам\";\"other\"\n\"2759794\";\"אמסטרדם\";\"other\"\n\"2759794\";\"آمستردام\";\"other\"\n\"2759794\";\"أمستردام\";\"other\"\n\"2759794\";\"ئامستېردام\";\"other\"\n\"2759794\";\"ܐܡܣܬܪܕܡ\";\"other\"\n\"2759794\";\"অ্যামস্টারডাম\";\"other\"\n\"2759794\";\"อัมสเตอร์ดัม\";\"other\"\n\"2759794\";\"ამსტერდამი\";\"other\"\n\"2759794\";\"አምስተርዳም\";\"other\"\n\"2759794\";\"アムステルダム\";\"other\"\n\"2759794\";\"阿姆斯特丹\";\"other\"\n\"2759794\";\"암스테르담\";\"other\"\n\"2759796\";\"Amstenrade\";\"main\"\n\"2759798\";\"Amstelveen\";\"main\"\n\"2759798\";\"Amstelvin\";\"other\"\n\"2759798\";\"Nieuwer Amstel\";\"other\"\n\"2759798\";\"a mu si te er fen\";\"other\"\n\"2759798\";\"Амстелвин\";\"other\"\n\"2759798\";\"阿姆斯特尔芬\";\"other\"\n\"2759821\";\"Amersfoort\";\"main\"\n\"2759821\";\"Amersfort\";\"other\"\n\"2759821\";\"Amersforto\";\"other\"\n\"2759821\";\"Амерсфорт\";\"other\"\n\"2759828\";\"Amerongen\";\"main\"\n\"2759875\";\"Alphen aan den Rijn\";\"main\"\n\"2759875\";\"Alfen\";\"other\"\n\"2759875\";\"Alphen\";\"other\"\n\"2759875\";\"Alphen a/d Rijn\";\"other\"\n\"2759875\";\"Alphen aan de Rijn\";\"other\"\n\"2759875\";\"Alphen aan der Rijn\";\"other\"\n\"2759878\";\"Almkerk\";\"main\"\n\"2759879\";\"Almere Stad\";\"main\"\n\"2759884\";\"Almen\";\"main\"\n\"2759887\";\"Almelo\";\"main\"\n\"2759887\";\"Almeloo\";\"other\"\n\"2759887\";\"Алмело\";\"other\"\n\"2759899\";\"Alkmaar\";\"main\"\n\"2759899\";\"Alkmar\";\"other\"\n\"2759899\";\"a er ke ma er\";\"other\"\n\"2759899\";\"arukumaru\";\"other\"\n\"2759899\";\"Алкмаар\";\"other\"\n\"2759899\";\"アルクマール\";\"other\"\n\"2759899\";\"阿尔克马尔\";\"other\"\n\"2759915\";\"Alblasserdam\";\"main\"\n\"2759915\";\"Alhlasserdam\";\"other\"\n\"2759922\";\"Akkrum\";\"main\"\n\"2759922\";\"Ankrum\";\"other\"\n\"2759961\";\"Aduard\";\"main\"\n\"2759961\";\"Adeward\";\"other\"\n\"2759961\";\"Adewardervoorwerk\";\"other\"\n\"2760123\";\"Aalten\";\"main\"\n\"2760134\";\"Aalsmeer\";\"main\"\n\"2760134\";\"Alsmer\";\"other\"\n\"2760134\";\"a er si mei er\";\"other\"\n\"2760134\";\"Алсмер\";\"other\"\n\"2760134\";\"阿尔斯梅尔\";\"other\"\n\"2760144\";\"Aalburg\";\"main\"\n\"2760144\";\"Wijk en Aalburg\";\"other\"\n\"6251994\";\"Klundert\";\"main\"\n\"6324403\";\"Camminghaburen\";\"main\"\n\"6544881\";\"Amsterdam-Zuidoost\";\"main\"\n\"6692371\";\"Jubbega\";\"main\"\n\"6692371\";\"Jobbegea\";\"other\"\n\"6695503\";\"Meerhoven\";\"main\"\n\"6697854\";\"De Knipe\";\"main\"\n\"6697854\";\"De Knijpe\";\"other\"\n\"6698635\";\"Lunetten\";\"main\"\n\"6698718\";\"Aarle-Rixtel\";\"main\"\n\"6929953\";\"Kelpen-Oler\";\"main\"\n\"6929980\";\"Muschberg en Geestenberg\";\"main\"\n\"6929984\";\"Villapark\";\"main\"\n\"6929985\";\"Lakerlopen\";\"main\"\n\"6929992\";\"Berkel en Rodenrijs\";\"main\"\n\"6941548\";\"Ypenburg\";\"main\"\n\"6948945\";\"Oranjewijk\";\"main\"\n\"6948946\";\"Vondelwijk\";\"main\"\n\"6948947\";\"Groenswaard\";\"main\"\n\"6950811\";\"Randenbroek\";\"main\"\n\"777019\";\"Vardø\";\"main\"\n\"777019\";\"Vardo\";\"ascii\"\n\"777019\";\"VARDE\";\"other\"\n\"777019\";\"Vard'o\";\"other\"\n\"777019\";\"Varde\";\"other\"\n\"777019\";\"Vardő\";\"other\"\n\"777019\";\"Varggat\";\"other\"\n\"777019\";\"Vuoreija\";\"other\"\n\"777019\";\"Várggát\";\"other\"\n\"777019\";\"ВАРДЕ\";\"other\"\n\"777019\";\"Варде\";\"other\"\n\"777019\";\"Вардьо\";\"other\"\n\"777073\";\"Vadsø\";\"main\"\n\"777073\";\"Vadso\";\"ascii\"\n\"777073\";\"Cahcesuolu\";\"other\"\n\"777073\";\"VADSE\";\"other\"\n\"777073\";\"Vadse\";\"other\"\n\"777073\";\"Vadso kommun\";\"other\"\n\"777073\";\"Vadsø kommun\";\"other\"\n\"777073\";\"Vesisaari\";\"other\"\n\"777073\";\"Čáhcesuolu\";\"other\"\n\"777073\";\"ВАДСЕ\";\"other\"\n\"777073\";\"Вадсе\";\"other\"\n\"777381\";\"Storslett\";\"main\"\n\"777381\";\"Storslet\";\"other\"\n\"777682\";\"Skjervøy\";\"main\"\n\"777682\";\"Skjervoy\";\"ascii\"\n\"777682\";\"Skjarvoy\";\"other\"\n\"777682\";\"Skjarvöy\";\"other\"\n\"777682\";\"Skjervo\";\"other\"\n\"777682\";\"Skjervö\";\"other\"\n\"777682\";\"Skjoervo\";\"other\"\n\"777682\";\"Skjoervø\";\"other\"\n\"779082\";\"Lakselv\";\"main\"\n\"779082\";\"Lakeselv\";\"other\"\n\"779082\";\"Laksehl'v\";\"other\"\n\"779082\";\"Лаксэльв\";\"other\"\n\"779303\";\"Kirkenes\";\"main\"\n\"779303\";\"Girkonjarga\";\"other\"\n\"779303\";\"Girkonjárga\";\"other\"\n\"779303\";\"KIRKENES\";\"other\"\n\"779303\";\"Kirkkoniemi\";\"other\"\n\"779303\";\"КИРКЕНЕС\";\"other\"\n\"779303\";\"Киркенес\";\"other\"\n\"779330\";\"Kautokeino\";\"main\"\n\"779330\";\"Guovdagaeidno\";\"other\"\n\"779330\";\"Guovdagaeino\";\"other\"\n\"779330\";\"Guovdageaidnu\";\"other\"\n\"779330\";\"Guovdagæidno\";\"other\"\n\"779330\";\"Guovdagæino\";\"other\"\n\"779330\";\"Kautokeini\";\"other\"\n\"779350\";\"Karasjok\";\"main\"\n\"779350\";\"Karasjohka\";\"other\"\n\"779350\";\"Kárášjohka\";\"other\"\n\"779350\";\"Карасйок\";\"other\"\n\"779554\";\"Honningsvåg\";\"main\"\n\"779554\";\"Honningsvag\";\"ascii\"\n\"779554\";\"Honnesvahki\";\"other\"\n\"779554\";\"Honnesváhki\";\"other\"\n\"779554\";\"Honningsvaag\";\"other\"\n\"779554\";\"Hönningsvaag\";\"other\"\n\"779554\";\"Khonningsvog\";\"other\"\n\"779554\";\"Sondre Honningsvaag\";\"other\"\n\"779554\";\"Sondre Honningsvag\";\"other\"\n\"779554\";\"Söndre Honningsvaag\";\"other\"\n\"779554\";\"Söndre Honningsvåg\";\"other\"\n\"779554\";\"Хоннингсвог\";\"other\"\n\"779622\";\"Havøysund\";\"main\"\n\"779622\";\"Havoysund\";\"ascii\"\n\"779622\";\"Havosund\";\"other\"\n\"779622\";\"Havøsund\";\"other\"\n\"779622\";\"Khavesunn\";\"other\"\n\"779622\";\"Хавесунн\";\"other\"\n\"779683\";\"Hammerfest\";\"main\"\n\"779683\";\"Hammarfeasta\";\"other\"\n\"779683\";\"Hámmárfeasta\";\"other\"\n\"779683\";\"Khammerfest\";\"other\"\n\"779683\";\"hmrpst\";\"other\"\n\"779683\";\"Хаммерфест\";\"other\"\n\"779683\";\"המרפסט\";\"other\"\n\"780643\";\"Bjørnevatn\";\"main\"\n\"780643\";\"Bjornevatn\";\"ascii\"\n\"780643\";\"Bjornevand\";\"other\"\n\"780643\";\"Bjornvandet\";\"other\"\n\"780643\";\"Björnevand\";\"other\"\n\"780643\";\"Björnvandet\";\"other\"\n\"780687\";\"Berlevåg\";\"main\"\n\"780687\";\"Berlevag\";\"ascii\"\n\"780687\";\"Berlevaag\";\"other\"\n\"780687\";\"Berlevog\";\"other\"\n\"780687\";\"Берлевог\";\"other\"\n\"780717\";\"Båtsfjord\";\"main\"\n\"780717\";\"Batsfjord\";\"ascii\"\n\"780717\";\"Baasfjord\";\"other\"\n\"780717\";\"Botsf'ord\";\"other\"\n\"780717\";\"Ботсфьорд\";\"other\"\n\"847633\";\"Alta\";\"main\"\n\"847633\";\"Alaheadju\";\"other\"\n\"847633\";\"Alattio\";\"other\"\n\"847633\";\"Alta kommun\";\"other\"\n\"847633\";\"Álaheadju\";\"other\"\n\"847633\";\"Алта\";\"other\"\n\"847634\";\"Rypefjord\";\"main\"\n\"3131178\";\"Ytre Strai\";\"main\"\n\"3131178\";\"Strai\";\"other\"\n\"3131189\";\"Ytre Skålevik\";\"main\"\n\"3131189\";\"Ytre Skalevik\";\"ascii\"\n\"3131189\";\"Skaalevig\";\"other\"\n\"3131246\";\"Ytre Arna\";\"main\"\n\"3131329\";\"Vossevangen\";\"main\"\n\"3131329\";\"Voss\";\"other\"\n\"3131329\";\"Vossavangen\";\"other\"\n\"3131449\";\"Volda\";\"main\"\n\"3131449\";\"Hallkjellsvik\";\"other\"\n\"3131449\";\"Hallkjelsvik\";\"other\"\n\"3131449\";\"Volda kommun\";\"other\"\n\"3131449\";\"Volden\";\"other\"\n\"3131538\";\"Vinstra\";\"main\"\n\"3131684\";\"Vikersund\";\"main\"\n\"3131684\";\"Vikesund\";\"other\"\n\"3131824\";\"Vigrestad\";\"main\"\n\"3131848\";\"Vigeland\";\"main\"\n\"3132051\";\"Vestbygd\";\"main\"\n\"3132051\";\"Vestbygda\";\"other\"\n\"3132051\";\"Vestbygden\";\"other\"\n\"3132058\";\"Vestby\";\"main\"\n\"3132176\";\"Verdalsøra\";\"main\"\n\"3132176\";\"Verdalsora\";\"ascii\"\n\"3132176\";\"Vaerdalsoren\";\"other\"\n\"3132176\";\"Verdalsoren\";\"other\"\n\"3132176\";\"Verdalsoyra\";\"other\"\n\"3132176\";\"Verdalsören\";\"other\"\n\"3132176\";\"Verdalsöyra\";\"other\"\n\"3132176\";\"Værdalsören\";\"other\"\n\"3132208\";\"Vennesla\";\"main\"\n\"3132208\";\"Vennesla kommun\";\"other\"\n\"3132428\";\"Vatne\";\"main\"\n\"3132644\";\"Varhaug\";\"main\"\n\"3132720\";\"Vanse\";\"main\"\n\"3132720\";\"Lista\";\"other\"\n\"3132893\";\"Våler\";\"main\"\n\"3132893\";\"Valer\";\"ascii\"\n\"3132893\";\"Vaaler\";\"other\"\n\"3132893\";\"Valer i Solor\";\"other\"\n\"3132893\";\"Våler i Solør\";\"other\"\n\"3133053\";\"Vågåmo\";\"main\"\n\"3133053\";\"Vagamo\";\"ascii\"\n\"3133349\";\"Ulsteinvik\";\"main\"\n\"3133402\";\"Ulefoss\";\"main\"\n\"3133448\";\"Tysvær\";\"main\"\n\"3133448\";\"Tysvaer\";\"ascii\"\n\"3133448\";\"Tysvaer kommun\";\"other\"\n\"3133448\";\"Tysvær kommun\";\"other\"\n\"3133498\";\"Tynset\";\"main\"\n\"3133498\";\"Tonset\";\"other\"\n\"3133498\";\"Tönset\";\"other\"\n\"3133663\";\"Tveit\";\"main\"\n\"3133663\";\"Tveid\";\"other\"\n\"3133681\";\"Tvedestrand\";\"main\"\n\"3133819\";\"Trysil\";\"main\"\n\"3133880\";\"Trondheim\";\"main\"\n\"3133880\";\"Nidaros\";\"other\"\n\"3133880\";\"THrandheimur\";\"other\"\n\"3133880\";\"Trondhjem\";\"other\"\n\"3133880\";\"Trondkhajm\";\"other\"\n\"3133880\";\"Trondkhejm\";\"other\"\n\"3133880\";\"Tronheimas\";\"other\"\n\"3133880\";\"Tronkhajm\";\"other\"\n\"3133880\";\"Tronkhejm\";\"other\"\n\"3133880\";\"Trontchaim\";\"other\"\n\"3133880\";\"toronhaimu\";\"other\"\n\"3133880\";\"toronheimu\";\"other\"\n\"3133880\";\"troneim\";\"other\"\n\"3133880\";\"trwndhyym\";\"other\"\n\"3133880\";\"Þrándheimur\";\"other\"\n\"3133880\";\"Τροντχαιμ\";\"other\"\n\"3133880\";\"Τρόντχαιμ\";\"other\"\n\"3133880\";\"Τρόντχαϊμ\";\"other\"\n\"3133880\";\"Трондхайм\";\"other\"\n\"3133880\";\"Трондхајм\";\"other\"\n\"3133880\";\"Трондхейм\";\"other\"\n\"3133880\";\"Тронхайм\";\"other\"\n\"3133880\";\"Тронхейм\";\"other\"\n\"3133880\";\"טרונדהיים\";\"other\"\n\"3133880\";\"トロンハイム\";\"other\"\n\"3133880\";\"トロンヘイム\";\"other\"\n\"3133895\";\"Tromsø\";\"main\"\n\"3133895\";\"Tromso\";\"ascii\"\n\"3133895\";\"Romsa\";\"other\"\n\"3133895\";\"Tromse\";\"other\"\n\"3133895\";\"Tromsjo\";\"other\"\n\"3133895\";\"Tromsoe kommun\";\"other\"\n\"3133895\";\"Tromssa\";\"other\"\n\"3133895\";\"Tromsö kommun\";\"other\"\n\"3133895\";\"Tromsė\";\"other\"\n\"3133895\";\"teulomsoe\";\"other\"\n\"3133895\";\"toromuse\";\"other\"\n\"3133895\";\"trwmsw\";\"other\"\n\"3133895\";\"Тромсё\";\"other\"\n\"3133895\";\"טרומסו\";\"other\"\n\"3133895\";\"トロムセ\";\"other\"\n\"3133895\";\"트롬쇠\";\"other\"\n\"3134070\";\"Tranby\";\"main\"\n\"3134331\";\"Tønsberg\";\"main\"\n\"3134331\";\"Tonsberg\";\"ascii\"\n\"3134331\";\"teng si bei ge\";\"other\"\n\"3134331\";\"滕斯贝格\";\"other\"\n\"3134349\";\"Tomter\";\"main\"\n\"3134357\";\"Tomra\";\"main\"\n\"3134357\";\"Tomra i Romsdal\";\"other\"\n\"3134357\";\"Tomren\";\"other\"\n\"3134429\";\"Tofte\";\"main\"\n\"3134429\";\"Tofte i Hurum\";\"other\"\n\"3134521\";\"Tjøme\";\"main\"\n\"3134521\";\"Tjome\";\"ascii\"\n\"3134521\";\"Tjome kommun\";\"other\"\n\"3134521\";\"Tjøme kommun\";\"other\"\n\"3134776\";\"Tau\";\"main\"\n\"3134865\";\"Tananger\";\"main\"\n\"3134993\";\"Syfteland\";\"main\"\n\"3135020\";\"Svolvær\";\"main\"\n\"3135020\";\"Svolvaer\";\"ascii\"\n\"3135124\";\"Svelvik\";\"main\"\n\"3135124\";\"Svelvik kommun\";\"other\"\n\"3135124\";\"Свелвик\";\"other\"\n\"3135132\";\"Svelgen\";\"main\"\n\"3135377\";\"Sunndalsøra\";\"main\"\n\"3135377\";\"Sunndalsora\";\"ascii\"\n\"3135377\";\"Sundalsoren\";\"other\"\n\"3135377\";\"Sundalsören\";\"other\"\n\"3135377\";\"Sunndalsoyra\";\"other\"\n\"3135377\";\"Sunndalsöyra\";\"other\"\n\"3135601\";\"Stryn\";\"main\"\n\"3135601\";\"Nedstryn\";\"other\"\n\"3135728\";\"Straumen\";\"main\"\n\"3135728\";\"Strommen\";\"other\"\n\"3135728\";\"Strömmen\";\"other\"\n\"3135813\";\"Stranda\";\"main\"\n\"3135813\";\"Stranden\";\"other\"\n\"3136618\";\"Storabø\";\"main\"\n\"3136618\";\"Storabo\";\"ascii\"\n\"3136618\";\"Storebo\";\"other\"\n\"3136618\";\"Storebö\";\"other\"\n\"3136690\";\"Stokmarknes\";\"main\"\n\"3136690\";\"Stokkmarknes\";\"other\"\n\"3136725\";\"Stokke\";\"main\"\n\"3136725\";\"Stokke kommun\";\"other\"\n\"3136765\";\"Stjørdalshalsen\";\"main\"\n\"3136765\";\"Stjordalshalsen\";\"ascii\"\n\"3136946\";\"Steinkjer\";\"main\"\n\"3136946\";\"Stenkjaer\";\"other\"\n\"3136946\";\"Stenkjær\";\"other\"\n\"3136947\";\"Steinkjer\";\"main\"\n\"3136947\";\"Stenkjaer\";\"other\"\n\"3137091\";\"Stavern\";\"main\"\n\"3137091\";\"Fredriksvaern\";\"other\"\n\"3137091\";\"Fredriksvern\";\"other\"\n\"3137091\";\"Fredriksværn\";\"other\"\n\"3137115\";\"Stavanger\";\"main\"\n\"3137115\";\"Stafangur\";\"other\"\n\"3137115\";\"Stavangera\";\"other\"\n\"3137115\";\"Stavenger\";\"other\"\n\"3137115\";\"sutavu~angeru\";\"other\"\n\"3137115\";\"Ставангер\";\"other\"\n\"3137115\";\"スタヴァンゲル\";\"other\"\n\"3137169\";\"Stange\";\"main\"\n\"3137169\";\"Stange Stasjonsby\";\"other\"\n\"3137245\";\"Spydeberg\";\"main\"\n\"3137304\";\"Spetalen\";\"main\"\n\"3137390\";\"Sørumsand\";\"main\"\n\"3137390\";\"Sorumsand\";\"ascii\"\n\"3137405\";\"Sortland\";\"main\"\n\"3137405\";\"Sortland kommun\";\"other\"\n\"3137405\";\"Сортланд\";\"other\"\n\"3137971\";\"Søgne\";\"main\"\n\"3137971\";\"Sogne\";\"ascii\"\n\"3137971\";\"Sogne kommun\";\"other\"\n\"3137971\";\"Søgne kommun\";\"other\"\n\"3138423\";\"Skui\";\"main\"\n\"3138429\";\"Skudeneshavn\";\"main\"\n\"3138429\";\"Skudeneskhavn\";\"other\"\n\"3138429\";\"Skudneshavn\";\"other\"\n\"3138429\";\"Скуденесхавн\";\"other\"\n\"3138479\";\"Skreia\";\"main\"\n\"3138532\";\"Skotterud\";\"main\"\n\"3138624\";\"Skoppum\";\"main\"\n\"3138701\";\"Skogn\";\"main\"\n\"3138713\";\"Skoger\";\"main\"\n\"3138747\";\"Skodje\";\"main\"\n\"3138955\";\"Skjeberg\";\"main\"\n\"3139075\";\"Skien\";\"main\"\n\"3139081\";\"Ski\";\"main\"\n\"3139148\";\"Skaun\";\"main\"\n\"3139148\";\"Skauan\";\"other\"\n\"3139148\";\"Skaun kommun\";\"other\"\n\"3139244\";\"Skarnes\";\"main\"\n\"3139244\";\"Skarnes Stasjonsby\";\"other\"\n\"3139557\";\"Sjøholt\";\"main\"\n\"3139557\";\"Sjoholt\";\"ascii\"\n\"3139557\";\"Soholt\";\"other\"\n\"3139557\";\"Söholt\";\"other\"\n\"3139765\";\"Sætermoen\";\"main\"\n\"3139765\";\"Saetermoen\";\"ascii\"\n\"3139765\";\"Setermoen\";\"other\"\n\"3139819\";\"Sem\";\"main\"\n\"3139826\";\"Selvik\";\"main\"\n\"3139894\";\"Seljord\";\"main\"\n\"3140056\";\"Sauda\";\"main\"\n\"3140056\";\"Mirza Rafi Sauda\";\"other\"\n\"3140056\";\"Sauda kommun\";\"other\"\n\"3140084\";\"Sarpsborg\";\"main\"\n\"3140084\";\"Сарпсборг\";\"other\"\n\"3140301\";\"Sandnessjøen\";\"main\"\n\"3140301\";\"Sandnessjoen\";\"ascii\"\n\"3140321\";\"Sandnes\";\"main\"\n\"3140321\";\"Sandnes kommun\";\"other\"\n\"3140390\";\"Sandefjord\";\"main\"\n\"3140390\";\"Sandefjord kommun\";\"other\"\n\"3140398\";\"Sande\";\"main\"\n\"3140398\";\"Sande i Vestfold\";\"other\"\n\"3140431\";\"Sandane\";\"main\"\n\"3140431\";\"Sandene\";\"other\"\n\"3140573\";\"Sagvåg\";\"main\"\n\"3140573\";\"Sagvag\";\"ascii\"\n\"3140636\";\"Sætre\";\"main\"\n\"3140636\";\"Saetre\";\"ascii\"\n\"3140636\";\"Saetre i Hurum\";\"other\"\n\"3140636\";\"Setre\";\"other\"\n\"3140636\";\"Sætre i Hurum\";\"other\"\n\"3140825\";\"Rygge\";\"main\"\n\"3140825\";\"Rjugge\";\"other\"\n\"3140825\";\"Рюгге\";\"other\"\n\"3141032\";\"Rubbestadneset\";\"main\"\n\"3141032\";\"Rubben\";\"other\"\n\"3141107\";\"Røyken\";\"main\"\n\"3141107\";\"Royken\";\"ascii\"\n\"3141156\";\"Rotnes\";\"main\"\n\"3141310\";\"Rørvik\";\"main\"\n\"3141310\";\"Rorvik\";\"ascii\"\n\"3141332\";\"Røros\";\"main\"\n\"3141332\";\"Roros\";\"ascii\"\n\"3141548\";\"Rognan\";\"main\"\n\"3141682\";\"Rjukan\";\"main\"\n\"3141747\";\"Risør\";\"main\"\n\"3141747\";\"Risor\";\"ascii\"\n\"3141747\";\"Risor kommun\";\"other\"\n\"3141747\";\"Risør kommun\";\"other\"\n\"3141850\";\"Ringebu\";\"main\"\n\"3141982\";\"Rena\";\"main\"\n\"3142060\";\"Reinsvoll\";\"main\"\n\"3142061\";\"Reinsvik\";\"main\"\n\"3142061\";\"Rensvik\";\"other\"\n\"3142228\";\"Raufoss\";\"main\"\n\"3142520\";\"Rakkestad\";\"main\"\n\"3142539\";\"Råholt\";\"main\"\n\"3142539\";\"Raholt\";\"ascii\"\n\"3142626\";\"Prestestranda\";\"main\"\n\"3142626\";\"Prestestrand\";\"other\"\n\"3142657\";\"Porsgrunn\";\"main\"\n\"3142657\";\"Porsgrund\";\"other\"\n\"3142657\";\"Pushgrjon\";\"other\"\n\"3142657\";\"Порсгрунн\";\"other\"\n\"3142657\";\"Пушгрён\";\"other\"\n\"3142754\";\"Øystese\";\"main\"\n\"3142754\";\"Oystese\";\"ascii\"\n\"3142754\";\"Oysteso\";\"other\"\n\"3142754\";\"Öystesö\";\"other\"\n\"3143034\";\"Øvre Årdal\";\"main\"\n\"3143034\";\"Ovre Ardal\";\"ascii\"\n\"3143034\";\"Farnes\";\"other\"\n\"3143034\";\"Ovre Aardal\";\"other\"\n\"3143034\";\"Øvre Aardal\";\"other\"\n\"3143120\";\"Otta\";\"main\"\n\"3143244\";\"Oslo\";\"main\"\n\"3143244\";\"Asloa\";\"other\"\n\"3143244\";\"Christiania (historical)\";\"other\"\n\"3143244\";\"Kristiania (historical)\";\"other\"\n\"3143244\";\"Osla\";\"other\"\n\"3143244\";\"Oslas\";\"other\"\n\"3143244\";\"Oslu\";\"other\"\n\"3143244\";\"Osló\";\"other\"\n\"3143244\";\"ao si lu\";\"other\"\n\"3143244\";\"aslw\";\"other\"\n\"3143244\";\"awslw\";\"other\"\n\"3143244\";\"osalo\";\"other\"\n\"3143244\";\"oseullo\";\"other\"\n\"3143244\";\"oslo\";\"other\"\n\"3143244\";\"osuro\";\"other\"\n\"3143244\";\"xxslo\";\"other\"\n\"3143244\";\"Òslo\";\"other\"\n\"3143244\";\"Ósló\";\"other\"\n\"3143244\";\"Όσλο\";\"other\"\n\"3143244\";\"Осла\";\"other\"\n\"3143244\";\"Осло\";\"other\"\n\"3143244\";\"Օսլո\";\"other\"\n\"3143244\";\"אוסלו\";\"other\"\n\"3143244\";\"أوسلو\";\"other\"\n\"3143244\";\"اسلو\";\"other\"\n\"3143244\";\"ܐܘܣܠܘ\";\"other\"\n\"3143244\";\"ओस्लो\";\"other\"\n\"3143244\";\"ওসলো\";\"other\"\n\"3143244\";\"ออสโล\";\"other\"\n\"3143244\";\"ოსლო\";\"other\"\n\"3143244\";\"ኦስሎ\";\"other\"\n\"3143244\";\"オスロ\";\"other\"\n\"3143244\";\"奥斯陆\";\"other\"\n\"3143244\";\"오슬로\";\"other\"\n\"3143368\";\"Ørnes\";\"main\"\n\"3143368\";\"Ornes\";\"ascii\"\n\"3143427\";\"Ørje\";\"main\"\n\"3143427\";\"Orje\";\"ascii\"\n\"3143513\";\"Oppdal\";\"main\"\n\"3143513\";\"Opdal\";\"other\"\n\"3143513\";\"Oppdal kommun\";\"other\"\n\"3143513\";\"Uvdal\";\"other\"\n\"3143830\";\"Odda\";\"main\"\n\"3143830\";\"Odda kommun\";\"other\"\n\"3143830\";\"Odde\";\"other\"\n\"3143830\";\"Одда\";\"other\"\n\"3144075\";\"Notodden\";\"main\"\n\"3144110\";\"Norheimsund\";\"main\"\n\"3144110\";\"Nordheimsund\";\"other\"\n\"3144369\";\"Nordfjordeid\";\"main\"\n\"3144369\";\"Nordfjordeidet\";\"other\"\n\"3144534\";\"Nodeland\";\"main\"\n\"3144534\";\"Naadeland\";\"other\"\n\"3144534\";\"Nadeland\";\"other\"\n\"3144534\";\"Noteland\";\"other\"\n\"3144534\";\"Nådeland\";\"other\"\n\"3144661\";\"Nesna\";\"main\"\n\"3144733\";\"Nesbyen\";\"main\"\n\"3144953\";\"Naustdal\";\"main\"\n\"3144953\";\"Naustdal i Sunnfjord\";\"other\"\n\"3144987\";\"Narvik\";\"main\"\n\"3144987\";\"Narwik\";\"other\"\n\"3144987\";\"naleubikeu\";\"other\"\n\"3144987\";\"naruvu~iku\";\"other\"\n\"3144987\";\"Нарвик\";\"other\"\n\"3144987\";\"ナルヴィク\";\"other\"\n\"3144987\";\"나르비크\";\"other\"\n\"3145023\";\"Namsos\";\"main\"\n\"3145023\";\"Namsos kommun\";\"other\"\n\"3145023\";\"namsus\";\"other\"\n\"3145080\";\"Nærbø\";\"main\"\n\"3145080\";\"Naerbo\";\"ascii\"\n\"3145080\";\"Narbo\";\"other\"\n\"3145080\";\"Narbø\";\"other\"\n\"3145094\";\"Mysen\";\"main\"\n\"3145148\";\"Myre\";\"main\"\n\"3145357\";\"Mosterhamn\";\"main\"\n\"3145357\";\"Moster\";\"other\"\n\"3145357\";\"Mosterham\";\"other\"\n\"3145357\";\"Mosterhavn\";\"other\"\n\"3145375\";\"Moss\";\"main\"\n\"3145375\";\"Мосс\";\"other\"\n\"3145386\";\"Mosjøen\";\"main\"\n\"3145386\";\"Mosjoen\";\"ascii\"\n\"3145580\";\"Molde\";\"main\"\n\"3145580\";\"mo er de\";\"other\"\n\"3145580\";\"Молде\";\"other\"\n\"3145580\";\"莫尔德\";\"other\"\n\"3145614\";\"Mo i Rana\";\"main\"\n\"3145614\";\"Mo\";\"other\"\n\"3145617\";\"Moi\";\"main\"\n\"3145689\";\"Moelv\";\"main\"\n\"3145689\";\"Moelven\";\"other\"\n\"3146049\";\"Melsomvik\";\"main\"\n\"3146125\";\"Melhus\";\"main\"\n\"3146160\";\"Melbu\";\"main\"\n\"3146270\";\"Maura\";\"main\"\n\"3146463\";\"Mandal\";\"main\"\n\"3146463\";\"Mandal kommun\";\"other\"\n\"3146463\";\"Мандал\";\"other\"\n\"3146470\";\"Malvik\";\"main\"\n\"3146470\";\"Malvik kommun\";\"other\"\n\"3146487\";\"Måløy\";\"main\"\n\"3146487\";\"Maloy\";\"ascii\"\n\"3146487\";\"Maaloey\";\"other\"\n\"3146487\";\"Maloya\";\"other\"\n\"3146487\";\"Moldo\";\"other\"\n\"3146487\";\"Moldö\";\"other\"\n\"3146487\";\"Måløya\";\"other\"\n\"3146508\";\"Malm\";\"main\"\n\"3146684\";\"Lyngdal\";\"main\"\n\"3146684\";\"Lyngdal kommun\";\"other\"\n\"3146811\";\"Lunde\";\"main\"\n\"3146811\";\"Lunde i Telemark\";\"other\"\n\"3146831\";\"Lundamo\";\"main\"\n\"3146831\";\"Lund\";\"other\"\n\"3146831\";\"Lunde\";\"other\"\n\"3146831\";\"Lundemo\";\"other\"\n\"3146897\";\"Løten\";\"main\"\n\"3146897\";\"Loten\";\"ascii\"\n\"3146897\";\"Loiten\";\"other\"\n\"3146897\";\"Löiten\";\"other\"\n\"3146942\";\"Løpsmarka\";\"main\"\n\"3146942\";\"Lopsmarka\";\"ascii\"\n\"3146942\";\"Laupsmarka\";\"other\"\n\"3146942\";\"Lopsmarken\";\"other\"\n\"3146942\";\"Löpsmarken\";\"other\"\n\"3147026\";\"Lom\";\"main\"\n\"3147026\";\"Lom kommun\";\"other\"\n\"3147026\";\"Lom kommune\";\"other\"\n\"3147026\";\"Лом\";\"other\"\n\"3147102\";\"Lødingen\";\"main\"\n\"3147102\";\"Lodingen\";\"ascii\"\n\"3147102\";\"Loedingen\";\"other\"\n\"3147104\";\"Løding\";\"main\"\n\"3147104\";\"Loding\";\"ascii\"\n\"3147441\";\"Lindås\";\"main\"\n\"3147441\";\"Lindas\";\"ascii\"\n\"3147465\";\"Lillestrøm\";\"main\"\n\"3147465\";\"Lillestrom\";\"ascii\"\n\"3147467\";\"Lillesand\";\"main\"\n\"3147467\";\"Lillesand kommun\";\"other\"\n\"3147474\";\"Lillehammer\";\"main\"\n\"3147474\";\"Lillekhammer\";\"other\"\n\"3147474\";\"rirehanmeru\";\"other\"\n\"3147474\";\"Лиллехаммер\";\"other\"\n\"3147474\";\"לילהאמר\";\"other\"\n\"3147474\";\"リレハンメル\";\"other\"\n\"3147498\";\"Liknes\";\"main\"\n\"3147698\";\"Levanger\";\"main\"\n\"3147720\";\"Lervik\";\"main\"\n\"3147763\";\"Lena\";\"main\"\n\"3147822\";\"Leirvik\";\"main\"\n\"3147854\";\"Leirsund\";\"main\"\n\"3148129\";\"Larvik\";\"main\"\n\"3148129\";\"Larvik kommun\";\"other\"\n\"3148129\";\"Ларвик\";\"other\"\n\"3148138\";\"Larkollen\";\"main\"\n\"3148138\";\"Laurkollen\";\"other\"\n\"3148569\";\"Lærdalsøyri\";\"main\"\n\"3148569\";\"Laerdalsoyri\";\"ascii\"\n\"3148569\";\"Laedalsoyra\";\"other\"\n\"3148569\";\"Laerdal\";\"other\"\n\"3148569\";\"Laerdal kommun\";\"other\"\n\"3148569\";\"Laerdalsora\";\"other\"\n\"3148569\";\"Laerdalsoren\";\"other\"\n\"3148569\";\"Lardal\";\"other\"\n\"3148569\";\"Lædalsöyra\";\"other\"\n\"3148569\";\"Lærdal\";\"other\"\n\"3148569\";\"Lærdal kommun\";\"other\"\n\"3148569\";\"Lærdalsöra\";\"other\"\n\"3148569\";\"Lærdalsøren\";\"other\"\n\"3148602\";\"Kyrksæterøra\";\"main\"\n\"3148602\";\"Kyrksaeterora\";\"ascii\"\n\"3148602\";\"Kirksaeteroren\";\"other\"\n\"3148602\";\"Kirksaeterören\";\"other\"\n\"3148602\";\"Kyrkseterora\";\"other\"\n\"3148602\";\"Kyrkseterøra\";\"other\"\n\"3149312\";\"Kristiansund\";\"main\"\n\"3149312\";\"Kristiansund Nord\";\"other\"\n\"3149312\";\"Kristiansund kommun\";\"other\"\n\"3149318\";\"Kristiansand\";\"main\"\n\"3149318\";\"Christiansand\";\"other\"\n\"3149318\";\"Krisjansanna\";\"other\"\n\"3149318\";\"Krisjānsanna\";\"other\"\n\"3149318\";\"Kristiansand Sor\";\"other\"\n\"3149318\";\"Kristiansand Sør\";\"other\"\n\"3149318\";\"ke li si di an sang\";\"other\"\n\"3149318\";\"Кристиансанд\";\"other\"\n\"3149318\";\"כריסטיאנסנד\";\"other\"\n\"3149318\";\"克里斯蒂安桑\";\"other\"\n\"3149412\";\"Kragerø\";\"main\"\n\"3149412\";\"Kragero\";\"ascii\"\n\"3149510\";\"Koppang\";\"main\"\n\"3149512\";\"Kopervik\";\"main\"\n\"3149533\";\"Kongsvinger\";\"main\"\n\"3149533\";\"Конгсвингер\";\"other\"\n\"3149563\";\"Kongsberg\";\"main\"\n\"3149563\";\"Kongsberg kommun\";\"other\"\n\"3149563\";\"Конгсберг\";\"other\"\n\"3149577\";\"Kolvereid\";\"main\"\n\"3149577\";\"Kolnereid\";\"other\"\n\"3149720\";\"Knarrviki\";\"main\"\n\"3149720\";\"Knarrevik\";\"other\"\n\"3149720\";\"Knarrvik\";\"other\"\n\"3149720\";\"Knarvik\";\"other\"\n\"3149726\";\"Knappstad\";\"main\"\n\"3149726\";\"Knapstad\";\"other\"\n\"3149727\";\"Knappskog\";\"main\"\n\"3149813\";\"Kløfta\";\"main\"\n\"3149813\";\"Klofta\";\"ascii\"\n\"3150261\";\"Kirkenær\";\"main\"\n\"3150261\";\"Kirkenaer\";\"ascii\"\n\"3150261\";\"Kirkenaer i Solor\";\"other\"\n\"3150261\";\"Kirkenær i Solør\";\"other\"\n\"3150437\";\"Karlshus\";\"main\"\n\"3150437\";\"Carlshuus\";\"other\"\n\"3150437\";\"Karlsbunden\";\"other\"\n\"3150639\";\"Kabelvåg\";\"main\"\n\"3150639\";\"Kabelvag\";\"ascii\"\n\"3150639\";\"Kabelvaag\";\"other\"\n\"3150742\";\"Jørpeland\";\"main\"\n\"3150742\";\"Jorpeland\";\"ascii\"\n\"3150842\";\"Jevnaker\";\"main\"\n\"3150851\";\"Jessheim\";\"main\"\n\"3150851\";\"Jesseim\";\"other\"\n\"3151272\";\"Hylkje\";\"main\"\n\"3151288\";\"Hvittingfoss\";\"main\"\n\"3151288\";\"Vittingfos\";\"other\"\n\"3151288\";\"Vittingfoss\";\"other\"\n\"3151574\";\"Høyanger\";\"main\"\n\"3151574\";\"Hoyanger\";\"ascii\"\n\"3151719\";\"Hov\";\"main\"\n\"3151719\";\"Hov i Land\";\"other\"\n\"3151770\";\"Horten\";\"main\"\n\"3151770\";\"Khorten\";\"other\"\n\"3151770\";\"Хортен\";\"other\"\n\"3151917\";\"Hønefoss\";\"main\"\n\"3151917\";\"Honefoss\";\"ascii\"\n\"3151942\";\"Hommelvik\";\"main\"\n\"3152132\";\"Holmestrand\";\"main\"\n\"3152132\";\"Holmestrand kommun\";\"other\"\n\"3152548\";\"Hjelset\";\"main\"\n\"3152548\";\"Hjellset\";\"other\"\n\"3152565\";\"Hjelmeland\";\"main\"\n\"3152565\";\"Hjelmeland kommun\";\"other\"\n\"3152565\";\"Jel'meland\";\"other\"\n\"3152565\";\"Йельмеланд\";\"other\"\n\"3152862\";\"Herre\";\"main\"\n\"3152884\";\"Hermansverk\";\"main\"\n\"3152989\";\"Hemsedal\";\"main\"\n\"3152989\";\"Khemsedal'\";\"other\"\n\"3152989\";\"Хемседаль\";\"other\"\n\"3152995\";\"Hemnesberget\";\"main\"\n\"3153517\";\"Hauknes\";\"main\"\n\"3153623\";\"Haugesund\";\"main\"\n\"3153623\";\"Haugesund kommun\";\"other\"\n\"3153623\";\"Khaugezund\";\"other\"\n\"3153623\";\"Хаугезунд\";\"other\"\n\"3153694\";\"Hauge\";\"main\"\n\"3153823\";\"Harstad\";\"main\"\n\"3153823\";\"Harsta\";\"other\"\n\"3153823\";\"Hárštá\";\"other\"\n\"3153823\";\"Kharstad\";\"other\"\n\"3153823\";\"Харстад\";\"other\"\n\"3153861\";\"Hareid\";\"main\"\n\"3153861\";\"Indre Hareid\";\"other\"\n\"3153861\";\"Midtre Hareid\";\"other\"\n\"3153861\";\"Ytre Hareid\";\"other\"\n\"3154084\";\"Hamar\";\"main\"\n\"3154084\";\"Khamar\";\"other\"\n\"3154084\";\"ha ma er\";\"other\"\n\"3154084\";\"Хамар\";\"other\"\n\"3154084\";\"哈马尔\";\"other\"\n\"3154209\";\"Halden\";\"main\"\n\"3154209\";\"Fredrikshald\";\"other\"\n\"3154209\";\"Khalden\";\"other\"\n\"3154209\";\"Халден\";\"other\"\n\"3154321\";\"Hagavik\";\"main\"\n\"3154539\";\"Gullhaug\";\"main\"\n\"3154539\";\"Guldhaug\";\"other\"\n\"3154539\";\"Gullaug\";\"other\"\n\"3154704\";\"Grua\";\"main\"\n\"3154907\";\"Grong\";\"main\"\n\"3155041\";\"Grimstad\";\"main\"\n\"3155041\";\"Гримстад\";\"other\"\n\"3155152\";\"Gravdal\";\"main\"\n\"3155422\";\"Gol\";\"main\"\n\"3155422\";\"Gol kommun\";\"other\"\n\"3155487\";\"Glomfjord\";\"main\"\n\"3155487\";\"Glaamen\";\"other\"\n\"3155487\";\"Glamfjord\";\"other\"\n\"3155487\";\"Glåmfjord\";\"other\"\n\"3155567\";\"Justvik\";\"main\"\n\"3155567\";\"Gjusvig\";\"other\"\n\"3155573\";\"Gjøvik\";\"main\"\n\"3155573\";\"Gjovik\";\"ascii\"\n\"3155573\";\"Gjovik kommun\";\"other\"\n\"3155573\";\"Gjøvik kommun\";\"other\"\n\"3155710\";\"Gjerdrum\";\"main\"\n\"3155913\";\"Geilo\";\"main\"\n\"3155913\";\"Gejlo\";\"other\"\n\"3155913\";\"Gielo\";\"other\"\n\"3155913\";\"Gjelo\";\"other\"\n\"3155913\";\"Гейло\";\"other\"\n\"3156470\";\"Frogner\";\"main\"\n\"3156521\";\"Frekhaug\";\"main\"\n\"3156529\";\"Fredrikstad\";\"main\"\n\"3156529\";\"Frederikstad\";\"other\"\n\"3156529\";\"furedorikusuta\";\"other\"\n\"3156529\";\"Фредрикстад\";\"other\"\n\"3156529\";\"フレドリクスタ\";\"other\"\n\"3156804\";\"Førde\";\"main\"\n\"3156804\";\"Forde\";\"ascii\"\n\"3156804\";\"Fords\";\"other\"\n\"3156980\";\"Florø\";\"main\"\n\"3156980\";\"Floro\";\"ascii\"\n\"3156980\";\"Kinn\";\"other\"\n\"3157090\";\"Flekkefjord\";\"main\"\n\"3157162\";\"Flateby\";\"main\"\n\"3157436\";\"Fitjar\";\"main\"\n\"3157436\";\"Fitjar kommun\";\"other\"\n\"3157549\";\"Finnsnes\";\"main\"\n\"3157549\";\"Finsnes\";\"other\"\n\"3157549\";\"Финнснес\";\"other\"\n\"3157679\";\"Fevik\";\"main\"\n\"3157679\";\"Fevig\";\"other\"\n\"3157686\";\"Fetsund\";\"main\"\n\"3157781\";\"Fauske\";\"main\"\n\"3157781\";\"Фауске\";\"other\"\n\"3157799\";\"Farsund\";\"main\"\n\"3157889\";\"Fagerstrand\";\"main\"\n\"3157897\";\"Fagernes\";\"main\"\n\"3157977\";\"Evjen\";\"main\"\n\"3158015\";\"Etnesjøen\";\"main\"\n\"3158015\";\"Etnesjoen\";\"ascii\"\n\"3158015\";\"Etne\";\"other\"\n\"3158015\";\"Etne kommun\";\"other\"\n\"3158046\";\"Espeland\";\"main\"\n\"3158300\";\"Elverum\";\"main\"\n\"3158300\";\"Ehl'verum\";\"other\"\n\"3158300\";\"Эльверум\";\"other\"\n\"3158578\";\"Eike\";\"main\"\n\"3158697\";\"Eide\";\"main\"\n\"3158697\";\"Eide kommun\";\"other\"\n\"3158697\";\"Eide pa Nordmore\";\"other\"\n\"3158697\";\"Eide på Nordmøre\";\"other\"\n\"3158792\";\"Egersund\";\"main\"\n\"3158960\";\"Drøbak\";\"main\"\n\"3158960\";\"Drobak\";\"ascii\"\n\"3159016\";\"Drammen\";\"main\"\n\"3159016\";\"Драммен\";\"other\"\n\"3159107\";\"Dombås\";\"main\"\n\"3159107\";\"Dombas\";\"ascii\"\n\"3159107\";\"Dombaas\";\"other\"\n\"3159143\";\"Dokka\";\"main\"\n\"3159438\";\"Dale\";\"main\"\n\"3159438\";\"Dale i Bruvik\";\"other\"\n\"3159822\";\"Bryne\";\"main\"\n\"3159894\";\"Brumunddal\";\"main\"\n\"3159894\";\"Brumunddalen\";\"other\"\n\"3159954\";\"Brønnøysund\";\"main\"\n\"3159954\";\"Bronnoysund\";\"ascii\"\n\"3159954\";\"Bronno\";\"other\"\n\"3159954\";\"Bronnoy\";\"other\"\n\"3159954\";\"Brønnø\";\"other\"\n\"3159954\";\"Brønnøy\";\"other\"\n\"3160100\";\"Brekstad\";\"main\"\n\"3160100\";\"Brekkstad\";\"other\"\n\"3160100\";\"Brokstad\";\"other\"\n\"3160100\";\"Брекстад\";\"other\"\n\"3160310\";\"Brattvåg\";\"main\"\n\"3160310\";\"Brattvag\";\"ascii\"\n\"3160310\";\"Bratvaag\";\"other\"\n\"3160491\";\"Botngard\";\"main\"\n\"3160491\";\"Botngaard\";\"other\"\n\"3160630\";\"Borkenes\";\"main\"\n\"3160881\";\"Bodø\";\"main\"\n\"3160881\";\"Bodo\";\"ascii\"\n\"3160881\";\"Bodoe\";\"other\"\n\"3160881\";\"Bodö\";\"other\"\n\"3160881\";\"Bude\";\"other\"\n\"3160881\";\"Budė\";\"other\"\n\"3160881\";\"Бодо\";\"other\"\n\"3160911\";\"Bø\";\"main\"\n\"3160911\";\"Bo\";\"ascii\"\n\"3160911\";\"Bo i Telemark\";\"other\"\n\"3160911\";\"Bø i Telemark\";\"other\"\n\"3161059\";\"Blakstad\";\"main\"\n\"3161059\";\"Blakkestad\";\"other\"\n\"3161346\";\"Bjørkelangen\";\"main\"\n\"3161346\";\"Bjorkelangen\";\"ascii\"\n\"3161456\";\"Bjørkvang\";\"main\"\n\"3161456\";\"Bjorkvang\";\"ascii\"\n\"3161456\";\"Bjerkvik\";\"other\"\n\"3161456\";\"Bjorkvik\";\"other\"\n\"3161456\";\"Bjørkvik\";\"other\"\n\"3161532\";\"Birkeland\";\"main\"\n\"3161724\";\"Berger\";\"main\"\n\"3161724\";\"Berger i Vestfold\";\"other\"\n\"3161732\";\"Bergen\";\"main\"\n\"3161732\";\"Berga\";\"other\"\n\"3161732\";\"Bergena\";\"other\"\n\"3161732\";\"Bergenas\";\"other\"\n\"3161732\";\"Bjoergvin\";\"other\"\n\"3161732\";\"Björgvin\";\"other\"\n\"3161732\";\"bei er gen\";\"other\"\n\"3161732\";\"berugen\";\"other\"\n\"3161732\";\"brgn\";\"other\"\n\"3161732\";\"Берген\";\"other\"\n\"3161732\";\"ברגן\";\"other\"\n\"3161732\";\"ベルゲン\";\"other\"\n\"3161732\";\"卑爾根\";\"other\"\n\"3162032\";\"Barkåker\";\"main\"\n\"3162032\";\"Barkaker\";\"ascii\"\n\"3162032\";\"Barkaaker\";\"other\"\n\"3162385\";\"Aurskog\";\"main\"\n\"3162385\";\"Urskog\";\"other\"\n\"3162475\";\"Auli\";\"main\"\n\"3162651\";\"Askim\";\"main\"\n\"3162668\";\"Ask\";\"main\"\n\"3162682\";\"Åsgårdstrand\";\"main\"\n\"3162682\";\"Asgardstrand\";\"ascii\"\n\"3162682\";\"Aasgaardstrand\";\"other\"\n\"3162797\";\"Ås\";\"main\"\n\"3162797\";\"As\";\"ascii\"\n\"3162797\";\"Aas\";\"other\"\n\"3162884\";\"Åros\";\"main\"\n\"3162884\";\"Aros\";\"ascii\"\n\"3162906\";\"Årnes\";\"main\"\n\"3162906\";\"Arnes\";\"ascii\"\n\"3162906\";\"Aarnes\";\"other\"\n\"3162924\";\"Indre Arna\";\"main\"\n\"3162924\";\"Arna\";\"other\"\n\"3162955\";\"Arendal\";\"main\"\n\"3162955\";\"Arendal kommun\";\"other\"\n\"3162955\";\"Arendal'\";\"other\"\n\"3162955\";\"Арендаль\";\"other\"\n\"3162970\";\"Årdalstangen\";\"main\"\n\"3162970\";\"Ardalstangen\";\"ascii\"\n\"3163079\";\"Åneby\";\"main\"\n\"3163079\";\"Aneby\";\"ascii\"\n\"3163079\";\"Aaneby\";\"other\"\n\"3163146\";\"Andenes\";\"main\"\n\"3163155\";\"Åndalsnes\";\"main\"\n\"3163155\";\"Andalsnes\";\"ascii\"\n\"3163155\";\"Anbalsnes\";\"other\"\n\"3163392\";\"Ålesund\";\"main\"\n\"3163392\";\"Alesund\";\"ascii\"\n\"3163392\";\"Aalesund\";\"other\"\n\"3163392\";\"Alasund\";\"other\"\n\"3163392\";\"Estrecio Anguilla\";\"other\"\n\"3163392\";\"Olesunn\";\"other\"\n\"3163392\";\"alesunda\";\"other\"\n\"3163392\";\"Álasund\";\"other\"\n\"3163392\";\"Олесунн\";\"other\"\n\"3163392\";\"অলেসুন্ড\";\"other\"\n\"3163410\";\"Ål\";\"main\"\n\"3163410\";\"Al\";\"ascii\"\n\"3163410\";\"Aal\";\"other\"\n\"3163443\";\"Åkrehamn\";\"main\"\n\"3163443\";\"Akrehamn\";\"ascii\"\n\"3163443\";\"Aakrehamn\";\"other\"\n\"3163443\";\"Akrahamn\";\"other\"\n\"3163443\";\"Akrehavn\";\"other\"\n\"3163443\";\"Åkrahamn\";\"other\"\n\"3163506\";\"Ågotnes\";\"main\"\n\"3163506\";\"Agotnes\";\"ascii\"\n\"3163608\";\"Å\";\"main\"\n\"3163608\";\"A\";\"ascii\"\n\"3163608\";\"A i Afjord\";\"other\"\n\"3163608\";\"A i Aford\";\"other\"\n\"3163608\";\"Afjord\";\"other\"\n\"3163608\";\"Afjord kommun\";\"other\"\n\"3163608\";\"Ao\";\"other\"\n\"3163608\";\"As\";\"other\"\n\"3163608\";\"Å i Åfjord\";\"other\"\n\"3163608\";\"Å i Åford\";\"other\"\n\"3163608\";\"Åfjord\";\"other\"\n\"3163608\";\"Åfjord kommun\";\"other\"\n\"3163608\";\"Åo\";\"other\"\n\"3205608\";\"Vormedal\";\"main\"\n\"3207861\";\"Tingvoll\";\"main\"\n\"3227582\";\"Hommersåk\";\"main\"\n\"3227582\";\"Hommersak\";\"ascii\"\n\"3227582\";\"Hommarsak\";\"other\"\n\"3227582\";\"Hommarsåk\";\"other\"\n\"3229577\";\"Årøysund\";\"main\"\n\"3229577\";\"Aroysund\";\"ascii\"\n\"3229577\";\"Aroysundet\";\"other\"\n\"3229577\";\"Årøysundet\";\"other\"\n\"3336585\";\"Nesoddtangen\";\"main\"\n\"3336587\";\"Askøy\";\"main\"\n\"3336587\";\"Askoy\";\"ascii\"\n\"3336587\";\"Askoy kommun\";\"other\"\n\"3336587\";\"Askøy kommun\";\"other\"\n\"3336587\";\"asakaya\";\"other\"\n\"3336587\";\"আসকায়\";\"other\"\n\"3336588\";\"Ørsta\";\"main\"\n\"3336588\";\"Orsta\";\"ascii\"\n\"3336588\";\"Orsta kommun\";\"other\"\n\"3336588\";\"Ørsta kommun\";\"other\"\n\"3336590\";\"Ryggebyen\";\"main\"\n\"3336591\";\"Vedavågen\";\"main\"\n\"3336591\";\"Vedavagen\";\"ascii\"\n\"3345453\";\"Vestnes\";\"main\"\n\"3345453\";\"Vestnes kommun\";\"other\"\n\"6545362\";\"Fjellfoten\";\"main\"\n\"6545367\";\"Neskollen\";\"main\"\n\"6693002\";\"Sjølyststranda\";\"main\"\n\"6693002\";\"Sjolyststranda\";\"ascii\"\n\"6697344\";\"Ytrebygda\";\"main\"\n\"6697345\";\"Sandsli\";\"main\"\n\"7280466\";\"Frosta\";\"main\"\n\"7280466\";\"Фроста\";\"other\"\n\"7288344\";\"Vik\";\"main\"\n\"7288344\";\"Вик\";\"other\"\n\"7288345\";\"Sogndal\";\"main\"\n\"7288345\";\"Sogdal'\";\"other\"\n\"7288345\";\"Согдаль\";\"other\"\n\"1282616\";\"Wāling\";\"main\"\n\"1282616\";\"Waling\";\"ascii\"\n\"1282616\";\"Walling\";\"other\"\n\"1282635\";\"Tulsīpur\";\"main\"\n\"1282635\";\"Tulsipur\";\"ascii\"\n\"1282666\";\"Tīkāpur\";\"main\"\n\"1282666\";\"Tikapur\";\"ascii\"\n\"1282714\";\"Tānsen\";\"main\"\n\"1282714\";\"Tansen\";\"ascii\"\n\"1282714\";\"Tansing\";\"other\"\n\"1282714\";\"Tānsing\";\"other\"\n\"1282714\";\"Тансен\";\"other\"\n\"1282770\";\"Sirāhā\";\"main\"\n\"1282770\";\"Siraha\";\"ascii\"\n\"1282770\";\"Shirha\";\"other\"\n\"1282770\";\"Sirakha\";\"other\"\n\"1282770\";\"Sirha\";\"other\"\n\"1282770\";\"Сираха\";\"other\"\n\"1282884\";\"Rājbirāj\";\"main\"\n\"1282884\";\"Rajbiraj\";\"ascii\"\n\"1282898\";\"Pokhara\";\"main\"\n\"1282898\";\"Pakhra\";\"other\"\n\"1282898\";\"Pokhar\";\"other\"\n\"1282898\";\"Pokhra\";\"other\"\n\"1282898\";\"Pokkhara\";\"other\"\n\"1282898\";\"pokala\";\"other\"\n\"1282898\";\"pokara\";\"other\"\n\"1282898\";\"Покхара\";\"other\"\n\"1282898\";\"ポカラ\";\"other\"\n\"1282898\";\"포카라\";\"other\"\n\"1282931\";\"Pātan\";\"main\"\n\"1282931\";\"Patan\";\"ascii\"\n\"1282931\";\"Lalitapura\";\"other\"\n\"1282931\";\"Lalitpur\";\"other\"\n\"1282931\";\"Yala\";\"other\"\n\"1282931\";\"Лалитпур\";\"other\"\n\"1282950\";\"Panaoti\";\"main\"\n\"1282950\";\"Panauti Village\";\"other\"\n\"1283011\";\"Nāmche Bāzār\";\"main\"\n\"1283011\";\"Namche Bazar\";\"ascii\"\n\"1283011\";\"Namche-Bazar\";\"other\"\n\"1283011\";\"Nanche Bazar\";\"other\"\n\"1283011\";\"Nauche\";\"other\"\n\"1283011\";\"Намче-Базар\";\"other\"\n\"1283018\";\"Nagarkot\";\"main\"\n\"1283018\";\"Нагаркот\";\"other\"\n\"1283082\";\"Malangwa\";\"main\"\n\"1283082\";\"Malangawa\";\"other\"\n\"1283082\";\"Malankwa\";\"other\"\n\"1283095\";\"Mahendranagar\";\"main\"\n\"1283095\";\"Mahen Dkanagar\";\"other\"\n\"1283161\";\"Lahān\";\"main\"\n\"1283161\";\"Lahan\";\"ascii\"\n\"1283189\";\"Kodāri\";\"main\"\n\"1283189\";\"Kodari\";\"ascii\"\n\"1283189\";\"Kodali\";\"other\"\n\"1283189\";\"Kothari\";\"other\"\n\"1283189\";\"Кодари\";\"other\"\n\"1283190\";\"Kirtipur\";\"main\"\n\"1283217\";\"Khāndbāri\";\"main\"\n\"1283217\";\"Khandbari\";\"ascii\"\n\"1283217\";\"Khanbari\";\"other\"\n\"1283240\";\"Kathmandu\";\"main\"\n\"1283240\";\"Catmandu\";\"other\"\n\"1283240\";\"Kantipur\";\"other\"\n\"1283240\";\"Kantipura\";\"other\"\n\"1283240\";\"Kathmandau\";\"other\"\n\"1283240\";\"Kathmandou\";\"other\"\n\"1283240\";\"Katmandou\";\"other\"\n\"1283240\";\"Katmandu\";\"other\"\n\"1283240\";\"Katmanduo\";\"other\"\n\"1283240\";\"Katmandú\";\"other\"\n\"1283240\";\"Katmantou\";\"other\"\n\"1283240\";\"Khatmandu\";\"other\"\n\"1283240\";\"Kàtmandu\";\"other\"\n\"1283240\";\"Káthmandu\";\"other\"\n\"1283240\";\"Káthmándú\";\"other\"\n\"1283240\";\"jia de man dou\";\"other\"\n\"1283240\";\"kateumandu\";\"other\"\n\"1283240\";\"kath manthu\";\"other\"\n\"1283240\";\"kathamadaum\";\"other\"\n\"1283240\";\"kathamandu\";\"other\"\n\"1283240\";\"kathmandw\";\"other\"\n\"1283240\";\"katmandw\";\"other\"\n\"1283240\";\"katmantu\";\"other\"\n\"1283240\";\"katomanzu\";\"other\"\n\"1283240\";\"qtmndw\";\"other\"\n\"1283240\";\"yem\";\"other\"\n\"1283240\";\"Κατμαντού\";\"other\"\n\"1283240\";\"Катманду\";\"other\"\n\"1283240\";\"קטמנדו\";\"other\"\n\"1283240\";\"كاتماندۇ\";\"other\"\n\"1283240\";\"كاثماندو\";\"other\"\n\"1283240\";\"کاتماندو\";\"other\"\n\"1283240\";\"کھٹمنڈو\";\"other\"\n\"1283240\";\"काठमांडू\";\"other\"\n\"1283240\";\"काठमाडौं\";\"other\"\n\"1283240\";\"येँ\";\"other\"\n\"1283240\";\"কাঠমান্ডু\";\"other\"\n\"1283240\";\"கத்மந்து\";\"other\"\n\"1283240\";\"กาฐมาณฑุ\";\"other\"\n\"1283240\";\"ཀཋ་མན་གྲུ\";\"other\"\n\"1283240\";\"ካትማንዱ\";\"other\"\n\"1283240\";\"カトマンズ\";\"other\"\n\"1283240\";\"加德滿都\";\"other\"\n\"1283240\";\"카트만두\";\"other\"\n\"1283285\";\"Jumlā\";\"main\"\n\"1283285\";\"Jumla\";\"ascii\"\n\"1283318\";\"Janakpur\";\"main\"\n\"1283323\";\"Jaleswar\";\"main\"\n\"1283323\";\"Jaleshwar\";\"other\"\n\"1283329\";\"Ithari\";\"main\"\n\"1283329\";\"Itahari\";\"other\"\n\"1283329\";\"Titahari\";\"other\"\n\"1283333\";\"Ilām\";\"main\"\n\"1283333\";\"Ilam\";\"ascii\"\n\"1283339\";\"Heṭauḍā\";\"main\"\n\"1283339\";\"Hetauda\";\"ascii\"\n\"1283339\";\"Hetauda Bazar\";\"other\"\n\"1283339\";\"Hetaunda\";\"other\"\n\"1283339\";\"Hetaura\";\"other\"\n\"1283339\";\"Hithaura\";\"other\"\n\"1283339\";\"Hitura\";\"other\"\n\"1283368\";\"Gulariyā\";\"main\"\n\"1283368\";\"Gulariya\";\"ascii\"\n\"1283368\";\"Gularia\";\"other\"\n\"1283401\";\"Gaur\";\"main\"\n\"1283401\";\"Gaura\";\"other\"\n\"1283401\";\"Gour\";\"other\"\n\"1283401\";\"Гаура\";\"other\"\n\"1283460\";\"Dharān Bāzār\";\"main\"\n\"1283460\";\"Dharan Bazar\";\"ascii\"\n\"1283460\";\"Dharan\";\"other\"\n\"1283465\";\"Dhankutā\";\"main\"\n\"1283465\";\"Dhankuta\";\"ascii\"\n\"1283465\";\"Dhankuta Bazar\";\"other\"\n\"1283465\";\"Dhankutta\";\"other\"\n\"1283467\";\"Dhangarhi\";\"main\"\n\"1283467\";\"Dhangadhi\";\"other\"\n\"1283467\";\"Dhantardhi\";\"other\"\n\"1283484\";\"Dārchulā\";\"main\"\n\"1283484\";\"Darchula\";\"ascii\"\n\"1283484\";\"Dharchul\";\"other\"\n\"1283484\";\"Dharchula\";\"other\"\n\"1283484\";\"Dhārchul\";\"other\"\n\"1283484\";\"Dhārchulā\";\"other\"\n\"1283496\";\"Dailekh\";\"main\"\n\"1283499\";\"Dadeldhurā\";\"main\"\n\"1283499\";\"Dadeldhura\";\"ascii\"\n\"1283499\";\"Dandeldhura\";\"other\"\n\"1283499\";\"Dandelhura\";\"other\"\n\"1283562\";\"Butwāl\";\"main\"\n\"1283562\";\"Butwal\";\"ascii\"\n\"1283562\";\"Butaul\";\"other\"\n\"1283562\";\"Butwai\";\"other\"\n\"1283562\";\"Butwaī\";\"other\"\n\"1283581\";\"Bīrganj\";\"main\"\n\"1283581\";\"Birganj\";\"ascii\"\n\"1283581\";\"Birgunj\";\"other\"\n\"1283582\";\"Birātnagar\";\"main\"\n\"1283582\";\"Biratnagar\";\"ascii\"\n\"1283582\";\"Biratnagur\";\"other\"\n\"1283582\";\"Биратнагар\";\"other\"\n\"1283613\";\"Bharatpur\";\"main\"\n\"1283618\";\"Bhaktapur\";\"main\"\n\"1283621\";\"Bhairāhawā\";\"main\"\n\"1283621\";\"Bhairahawa\";\"ascii\"\n\"1283621\";\"Bhairawa\";\"other\"\n\"1283621\";\"Bhairhwa\";\"other\"\n\"1283621\";\"Bhairwa\";\"other\"\n\"1283621\";\"Siddharthanagar\";\"other\"\n\"1283628\";\"Bhadrapur\";\"main\"\n\"1283679\";\"Banepa\";\"main\"\n\"1283679\";\"Banepa Bazar\";\"other\"\n\"1283679\";\"Panepa\";\"other\"\n\"1283711\";\"Bāglung\";\"main\"\n\"1283711\";\"Baglung\";\"ascii\"\n\"1283711\";\"Baglung Bazar\";\"other\"\n\"1283711\";\"Баглунг\";\"other\"\n\"6254843\";\"Birendranagar\";\"main\"\n\"6254843\";\"Birendranagan\";\"other\"\n\"6254843\";\"Бирендранаган\";\"other\"\n\"6941099\";\"Nepalgunj\";\"main\"\n\"6941099\";\"Nepalgun\";\"other\"\n\"6941099\";\"Непалгун\";\"other\"\n\"6941691\";\"Chitre\";\"main\"\n\"4036284\";\"Alofi\";\"main\"\n\"4036284\";\"Alofis\";\"other\"\n\"4036284\";\"alwfy\";\"other\"\n\"4036284\";\"arofi\";\"other\"\n\"4036284\";\"Алофис\";\"other\"\n\"4036284\";\"الوفی\";\"other\"\n\"4036284\";\"アロフィ\";\"other\"\n\"2178982\";\"Woodend\";\"main\"\n\"2179103\";\"Whitianga\";\"main\"\n\"2179328\";\"Whangamata\";\"main\"\n\"2179532\";\"Wellsford\";\"main\"\n\"2179532\";\"Welsford\";\"other\"\n\"2179537\";\"Wellington\";\"main\"\n\"2179537\";\"Ouellinkton\";\"other\"\n\"2179537\";\"Vellington\";\"other\"\n\"2179537\";\"Ουέλλιγκτον\";\"other\"\n\"2179537\";\"Веллингтон\";\"other\"\n\"2179639\";\"Warkworth\";\"main\"\n\"2179639\";\"Warkworth Town District\";\"other\"\n\"2179670\";\"Wanganui\";\"main\"\n\"2179670\";\"Vanganui\";\"other\"\n\"2179670\";\"Вангануи\";\"other\"\n\"2179702\";\"Wakefield\";\"main\"\n\"2179756\";\"Waiuku\";\"main\"\n\"2179756\";\"Waiuku Town District\";\"other\"\n\"2180063\";\"Waiouru\";\"main\"\n\"2180063\";\"Warouru\";\"other\"\n\"2180173\";\"Waimate North\";\"main\"\n\"2180393\";\"Waihi Beach\";\"main\"\n\"2180737\";\"Turangi\";\"main\"\n\"2180737\";\"Taupahi\";\"other\"\n\"2180737\";\"Tokaanu Junction\";\"other\"\n\"2180737\";\"Tongariro Bridge\";\"other\"\n\"2180995\";\"Tokoroa\";\"main\"\n\"2181133\";\"Timaru\";\"main\"\n\"2181133\";\"Te Tihi-o-Maru\";\"other\"\n\"2181133\";\"Timaru City\";\"other\"\n\"2181133\";\"Timaru-Distrikt\";\"other\"\n\"2181133\";\"Тимару\";\"other\"\n\"2181511\";\"Te Kauwhata\";\"main\"\n\"2181511\";\"Kauwhata\";\"other\"\n\"2181511\";\"Te Kaiwhata\";\"other\"\n\"2181511\";\"Te Kauwhata Town District\";\"other\"\n\"2181625\";\"Te Anau\";\"main\"\n\"2181742\";\"Taupo\";\"main\"\n\"2181742\";\"Taupo Town District\";\"other\"\n\"2181742\";\"Taupo-nui-a-Tia\";\"other\"\n\"2181742\";\"Taupō-nui-a-Tia\";\"other\"\n\"2181742\";\"tao bo\";\"other\"\n\"2181742\";\"Таупо\";\"other\"\n\"2181742\";\"陶波\";\"other\"\n\"2181997\";\"Takaka\";\"main\"\n\"2181997\";\"Takaka Town District\";\"other\"\n\"2182010\";\"Tairua\";\"main\"\n\"2182017\";\"Taipa\";\"main\"\n\"2183310\";\"Rolleston\";\"main\"\n\"2183472\";\"Richmond\";\"main\"\n\"2183472\";\"Richmond Borough\";\"other\"\n\"2183824\";\"Rakaia\";\"main\"\n\"2183824\";\"South Rakaia\";\"other\"\n\"2183854\";\"Raglan\";\"main\"\n\"2184155\";\"Pukekohe East\";\"main\"\n\"2184361\";\"Motueka\";\"main\"\n\"2184397\";\"Porirua\";\"main\"\n\"2184397\";\"Порируа\";\"other\"\n\"2184512\";\"Pleasant Point\";\"main\"\n\"2184512\";\"Pleasant Point Town District\";\"other\"\n\"2184707\";\"Wanaka\";\"main\"\n\"2184707\";\"Pembroke\";\"other\"\n\"2184904\";\"Paraparaumu\";\"main\"\n\"2184904\";\"Парапарауму\";\"other\"\n\"2184927\";\"Parakai\";\"main\"\n\"2185018\";\"Palmerston North\";\"main\"\n\"2185018\";\"Palmerston North City\";\"other\"\n\"2185018\";\"Palmerston-Nort\";\"other\"\n\"2185018\";\"Te Papa-i-oea\";\"other\"\n\"2185018\";\"bei pa mo si dun\";\"other\"\n\"2185018\";\"Палмерстон-Норт\";\"other\"\n\"2185018\";\"北帕莫斯顿\";\"other\"\n\"2185081\";\"Paihia\";\"main\"\n\"2185148\";\"Oxford\";\"main\"\n\"2185245\";\"Otorohanga\";\"main\"\n\"2185245\";\"Otorohanga Town District\";\"other\"\n\"2185964\";\"North Shore\";\"main\"\n\"2185964\";\"Boreia Akte\";\"other\"\n\"2185964\";\"Nort-Shor\";\"other\"\n\"2185964\";\"bei an shi\";\"other\"\n\"2185964\";\"Βόρεια Ακτή\";\"other\"\n\"2185964\";\"Норт-Шор\";\"other\"\n\"2185964\";\"北岸市\";\"other\"\n\"2186111\";\"Ngunguru\";\"main\"\n\"2186152\";\"Ngatea\";\"main\"\n\"2186239\";\"New Plymouth\";\"main\"\n\"2186239\";\"Aberplymm Nowydh\";\"other\"\n\"2186239\";\"N'ju-Plimut\";\"other\"\n\"2186239\";\"New Plymouth City\";\"other\"\n\"2186239\";\"New Plymouth Ngamotu\";\"other\"\n\"2186239\";\"New Plymouth Ngāmotu\";\"other\"\n\"2186239\";\"Nueva Plymouth\";\"other\"\n\"2186239\";\"nyupeullimeoseu\";\"other\"\n\"2186239\";\"Нью-Плимут\";\"other\"\n\"2186239\";\"뉴플리머스\";\"other\"\n\"2186280\";\"Nelson\";\"main\"\n\"2186280\";\"Nel'son\";\"other\"\n\"2186280\";\"Nelson City\";\"other\"\n\"2186280\";\"Whakatu\";\"other\"\n\"2186280\";\"Нельсон\";\"other\"\n\"2186313\";\"Napier\";\"main\"\n\"2186313\";\"Napier City\";\"other\"\n\"2186313\";\"Nejpir\";\"other\"\n\"2186313\";\"Нейпир\";\"other\"\n\"2186338\";\"Murupara\";\"main\"\n\"2186338\";\"Murapara\";\"other\"\n\"2186338\";\"Muripara\";\"other\"\n\"2186363\";\"Muriwai Beach\";\"main\"\n\"2186363\";\"Muriwai\";\"other\"\n\"2186722\";\"Moerewa\";\"main\"\n\"2186895\";\"Methven\";\"main\"\n\"2187074\";\"Maungatapere\";\"main\"\n\"2187365\";\"Mapua\";\"main\"\n\"2187404\";\"Manukau City\";\"main\"\n\"2187404\";\"Manukau\";\"other\"\n\"2187454\";\"Mangere\";\"main\"\n\"2187908\";\"Maketu\";\"main\"\n\"2188164\";\"Lower Hutt\";\"main\"\n\"2188164\";\"Lower Hutt City\";\"other\"\n\"2188371\";\"Lincoln\";\"main\"\n\"2188444\";\"Leeston\";\"main\"\n\"2188444\";\"Leeston Town District\";\"other\"\n\"2188874\";\"Kerikeri\";\"main\"\n\"2188922\";\"Kelburn\";\"main\"\n\"2188942\";\"Kawerau\";\"main\"\n\"2188966\";\"Kawakawa\";\"main\"\n\"2188966\";\"Kawakawa Town District\";\"other\"\n\"2189016\";\"Katikati\";\"main\"\n\"2189529\";\"Invercargill\";\"main\"\n\"2189529\";\"Inverkargill\";\"other\"\n\"2189529\";\"Waihopai\";\"other\"\n\"2189529\";\"Инверкаргилл\";\"other\"\n\"2190224\";\"Hastings\";\"main\"\n\"2190224\";\"Khejstings\";\"other\"\n\"2190224\";\"Хейстингс\";\"other\"\n\"2190324\";\"Hamilton\";\"main\"\n\"2190324\";\"Gamil'ton\";\"other\"\n\"2190324\";\"Hamilton City\";\"other\"\n\"2190324\";\"Khamilt\\\"n\";\"other\"\n\"2190324\";\"Kirikiriroa\";\"other\"\n\"2190324\";\"hamiruton\";\"other\"\n\"2190324\";\"han mi er dun\";\"other\"\n\"2190324\";\"Гамильтон\";\"other\"\n\"2190324\";\"Хамилтън\";\"other\"\n\"2190324\";\"ハミルトン\";\"other\"\n\"2190324\";\"汉密尔顿\";\"other\"\n\"2191451\";\"Edgecumbe\";\"main\"\n\"2191562\";\"Dunedin\";\"main\"\n\"2191562\";\"Dunidin\";\"other\"\n\"2191562\";\"Otepoti\";\"other\"\n\"2191562\";\"Taieri\";\"other\"\n\"2191562\";\"dan ni ding\";\"other\"\n\"2191562\";\"Ōtepoti\";\"other\"\n\"2191562\";\"Дънидин\";\"other\"\n\"2191562\";\"但尼丁\";\"other\"\n\"2191911\";\"Dargaville\";\"main\"\n\"2191913\";\"Darfield\";\"main\"\n\"2191913\";\"Horndon\";\"other\"\n\"2192093\";\"Coromandel\";\"main\"\n\"2192362\";\"Christchurch\";\"main\"\n\"2192362\";\"Krajstchjorch\";\"other\"\n\"2192362\";\"Otautahi\";\"other\"\n\"2192362\";\"ji du cheng\";\"other\"\n\"2192362\";\"ke lai si te che qi\";\"other\"\n\"2192362\";\"keulaiseuteucheochi\";\"other\"\n\"2192362\";\"kuraisutochachi\";\"other\"\n\"2192362\";\"qryystz'rz'\";\"other\"\n\"2192362\";\"Ōtautahi\";\"other\"\n\"2192362\";\"Крайстчёрч\";\"other\"\n\"2192362\";\"קרייסטצ'רץ'\";\"other\"\n\"2192362\";\"کرایست‌چرچ\";\"other\"\n\"2192362\";\"クライストチャーチ\";\"other\"\n\"2192362\";\"克赖斯特彻奇\";\"other\"\n\"2192362\";\"基督城\";\"other\"\n\"2192362\";\"크라이스트처치\";\"other\"\n\"2192521\";\"Castlepoint\";\"main\"\n\"2192521\";\"Kaslpoint\";\"other\"\n\"2192521\";\"Каслпоинт\";\"other\"\n\"2192797\";\"Burnham\";\"main\"\n\"2192828\";\"Bulls\";\"main\"\n\"2192828\";\"Bulls Town District\";\"other\"\n\"2192941\";\"Brooklyn\";\"main\"\n\"2192964\";\"Brightwater\";\"main\"\n\"2193733\";\"Auckland\";\"main\"\n\"2193733\";\"Oklend\";\"other\"\n\"2193733\";\"Окленд\";\"other\"\n\"2193968\";\"Amberley\";\"main\"\n\"2194098\";\"Ahipara\";\"main\"\n\"2206357\";\"Opunake\";\"main\"\n\"2206358\";\"Eltham\";\"main\"\n\"2206359\";\"Hawera\";\"main\"\n\"2206361\";\"Patea\";\"main\"\n\"2206369\";\"Foxton\";\"main\"\n\"2206371\";\"Levin\";\"main\"\n\"2206372\";\"Otaki\";\"main\"\n\"2206808\";\"Wairoa\";\"main\"\n\"2206854\";\"Gisborne\";\"main\"\n\"2206854\";\"East Cape\";\"other\"\n\"2206854\";\"Gisborn\";\"other\"\n\"2206854\";\"Turanga-nui-a-Kiwa\";\"other\"\n\"2206854\";\"Tūranga-nui-a-Kiwa\";\"other\"\n\"2206854\";\"gyzbrn\";\"other\"\n\"2206854\";\"Гисборн\";\"other\"\n\"2206854\";\"גיזברן\";\"other\"\n\"2206874\";\"Waipawa\";\"main\"\n\"2206890\";\"Masterton\";\"main\"\n\"2206890\";\"Мастертон\";\"other\"\n\"2206894\";\"Hokitika\";\"main\"\n\"2206895\";\"Greymouth\";\"main\"\n\"2206900\";\"Westport\";\"main\"\n\"2206939\";\"Bluff\";\"main\"\n\"2206957\";\"Riverton\";\"main\"\n\"2206968\";\"Winton\";\"main\"\n\"2208032\";\"Tauranga\";\"main\"\n\"2208032\";\"Tauranga-moana\";\"other\"\n\"2208032\";\"tauranga\";\"other\"\n\"2208032\";\"Тауранга\";\"other\"\n\"2208032\";\"タウランガ\";\"other\"\n\"2208091\";\"Waitara\";\"main\"\n\"2208242\";\"Milton\";\"main\"\n\"2208248\";\"Balclutha\";\"main\"\n\"2208327\";\"Paeroa\";\"main\"\n\"2208328\";\"Waihi\";\"main\"\n\"2208329\";\"Papakura\";\"main\"\n\"2208330\";\"Whakatane\";\"main\"\n\"2208332\";\"Opotiki\";\"main\"\n\"2208333\";\"Thames\";\"main\"\n\"4032804\";\"Waitangi\";\"main\"\n\"6201424\";\"Gore\";\"main\"\n\"6204696\";\"Queenstown\";\"main\"\n\"6204696\";\"Kvinstaun\";\"other\"\n\"6204696\";\"huang hou zhen\";\"other\"\n\"6204696\";\"kuinzutaun\";\"other\"\n\"6204696\";\"Квинстаун\";\"other\"\n\"6204696\";\"クイーンズタウン\";\"other\"\n\"6204696\";\"皇后镇\";\"other\"\n\"6206253\";\"Arrowtown\";\"main\"\n\"6206253\";\"Ehrroutaun\";\"other\"\n\"6206253\";\"Эрроутаун\";\"other\"\n\"6215045\";\"Oamaru\";\"main\"\n\"6220587\";\"Kaiapoi\";\"main\"\n\"6230919\";\"Whangarei\";\"main\"\n\"6230919\";\"Vangarei\";\"other\"\n\"6230919\";\"Вангареи\";\"other\"\n\"6231568\";\"Takanini\";\"main\"\n\"6231571\";\"Red Hill\";\"main\"\n\"6232063\";\"Wiri\";\"main\"\n\"6232082\";\"Pakuranga\";\"main\"\n\"6232217\";\"Tamaki\";\"main\"\n\"6232280\";\"Titirangi\";\"main\"\n\"6235764\";\"Matamata\";\"main\"\n\"6240770\";\"Cambridge\";\"main\"\n\"6241325\";\"Rotorua\";\"main\"\n\"6241325\";\"Rotorua-nui-a-Kahu\";\"other\"\n\"6241325\";\"luo tuo lu ya\";\"other\"\n\"6241325\";\"Роторуа\";\"other\"\n\"6241325\";\"罗托路亚\";\"other\"\n\"6243776\";\"Picton\";\"main\"\n\"6243776\";\"Pikton\";\"other\"\n\"6243776\";\"Пиктон\";\"other\"\n\"6243926\";\"Blenheim\";\"main\"\n\"6243926\";\"Blenkhejm\";\"other\"\n\"6243926\";\"Waiharakeke\";\"other\"\n\"6243926\";\"Бленхейм\";\"other\"\n\"6244825\";\"Karori\";\"main\"\n\"6244864\";\"Petone\";\"main\"\n\"6244895\";\"Upper Hutt\";\"main\"\n\"6246634\";\"Taradale\";\"main\"\n\"6246634\";\"Taradale Town District\";\"other\"\n\"6247826\";\"Ngaruawahia\";\"main\"\n\"7302484\";\"Waitakere\";\"main\"\n\"7303619\";\"Kaikoura\";\"main\"\n\"286245\";\"Şūr\";\"main\"\n\"286245\";\"Sur\";\"ascii\"\n\"286245\";\"As Sur\";\"other\"\n\"286245\";\"As Sūr\";\"other\"\n\"286245\";\"Сур\";\"other\"\n\"286282\";\"Şuḩār\";\"main\"\n\"286282\";\"Suhar\";\"ascii\"\n\"286282\";\"Al Sohar\";\"other\"\n\"286282\";\"As Sohar\";\"other\"\n\"286282\";\"As Sohār\";\"other\"\n\"286282\";\"As Suhar\";\"other\"\n\"286282\";\"Aş Şuḩār\";\"other\"\n\"286282\";\"Sohar\";\"other\"\n\"286282\";\"Sohār\";\"other\"\n\"286282\";\"Sukhar\";\"other\"\n\"286282\";\"Сухар\";\"other\"\n\"286293\";\"Sufālat Samā’il\";\"main\"\n\"286293\";\"Sufalat Sama'il\";\"ascii\"\n\"286293\";\"Sama'il\";\"other\"\n\"286293\";\"Samā’il\";\"other\"\n\"286293\";\"Sifalat Samail\";\"other\"\n\"286293\";\"Sifālat Samāil\";\"other\"\n\"286402\";\"Shināş\";\"main\"\n\"286402\";\"Shinas\";\"ascii\"\n\"286402\";\"Al Shinas\";\"other\"\n\"286402\";\"Ash Shinas\";\"other\"\n\"286402\";\"Ash Shinās\";\"other\"\n\"286621\";\"Şalālah\";\"main\"\n\"286621\";\"Salalah\";\"ascii\"\n\"286621\";\"Al Kathir\";\"other\"\n\"286621\";\"As Salala\";\"other\"\n\"286621\";\"As Salalah\";\"other\"\n\"286621\";\"Aş Şalālah\";\"other\"\n\"286621\";\"Salala\";\"other\"\n\"286621\";\"slalh\";\"other\"\n\"286621\";\"slalt\";\"other\"\n\"286621\";\"Āl Kathīr\";\"other\"\n\"286621\";\"Салала\";\"other\"\n\"286621\";\"صلالة\";\"other\"\n\"286621\";\"صلاله\";\"other\"\n\"286647\";\"Şaḩam\";\"main\"\n\"286647\";\"Saham\";\"ascii\"\n\"286647\";\"As Saham\";\"other\"\n\"286647\";\"As Şaham\";\"other\"\n\"286647\";\"Saham Town\";\"other\"\n\"286647\";\"Sahm\";\"other\"\n\"286647\";\"Salam\";\"other\"\n\"286647\";\"Şaḩm\";\"other\"\n\"286647\";\"Салам\";\"other\"\n\"286987\";\"Nizwá\";\"main\"\n\"286987\";\"Nizwa\";\"ascii\"\n\"286987\";\"Nazwah\";\"other\"\n\"286987\";\"Nizva\";\"other\"\n\"286987\";\"Низва\";\"other\"\n\"287286\";\"Muscat\";\"main\"\n\"287286\";\"Maeskat\";\"other\"\n\"287286\";\"Mascat\";\"other\"\n\"287286\";\"Mascate\";\"other\"\n\"287286\";\"Maskat\";\"other\"\n\"287286\";\"Maskatas\";\"other\"\n\"287286\";\"Masqat\";\"other\"\n\"287286\";\"Masqaţ\";\"other\"\n\"287286\";\"Masquat\";\"other\"\n\"287286\";\"Mouskat\";\"other\"\n\"287286\";\"Muskat\";\"other\"\n\"287286\";\"Mäskat\";\"other\"\n\"287286\";\"ma si ke te\";\"other\"\n\"287286\";\"masukatto\";\"other\"\n\"287286\";\"mhafzt msqt\";\"other\"\n\"287286\";\"msqt\";\"other\"\n\"287286\";\"museukateu\";\"other\"\n\"287286\";\"mwsqt\";\"other\"\n\"287286\";\"Μουσκάτ\";\"other\"\n\"287286\";\"Маскат\";\"other\"\n\"287286\";\"Մասկատ\";\"other\"\n\"287286\";\"מוסקט\";\"other\"\n\"287286\";\"محافظة مسقط\";\"other\"\n\"287286\";\"مسقط\";\"other\"\n\"287286\";\"መስከት\";\"other\"\n\"287286\";\"マスカット\";\"other\"\n\"287286\";\"马斯喀特\";\"other\"\n\"287286\";\"무스카트\";\"other\"\n\"287614\";\"Khaşab\";\"main\"\n\"287614\";\"Khasab\";\"ascii\"\n\"287614\";\"Al Khasab\";\"other\"\n\"287614\";\"Al Khasal\";\"other\"\n\"287614\";\"Al Khaşab\";\"other\"\n\"287814\";\"Izkī\";\"main\"\n\"287814\";\"Izki\";\"ascii\"\n\"287814\";\"Azki\";\"other\"\n\"287814\";\"Azkī\";\"other\"\n\"287814\";\"Ziki\";\"other\"\n\"287830\";\"‘Ibrī\";\"main\"\n\"287830\";\"`Ibri\";\"ascii\"\n\"287830\";\"Ibri\";\"other\"\n\"287832\";\"Ibrā\";\"main\"\n\"287832\";\"Ibra\";\"ascii\"\n\"287832\";\"Bira\";\"other\"\n\"287832\";\"Sufalat Ibra'\";\"other\"\n\"287832\";\"Sufālat Ibrā’\";\"other\"\n\"287832\";\"Ибра\";\"other\"\n\"288507\";\"Dib Dibba\";\"main\"\n\"288507\";\"Diba Dib`\";\"other\"\n\"288507\";\"Dibba Al'-Bajakh\";\"other\"\n\"288507\";\"Dibba Dib\";\"other\"\n\"288507\";\"Dibā Dib‘\";\"other\"\n\"288507\";\"Дибба Аль-Баях\";\"other\"\n\"288721\";\"Bidbid\";\"main\"\n\"288764\";\"Bawshar\";\"main\"\n\"288764\";\"Baushar\";\"other\"\n\"288789\";\"Barkā’\";\"main\"\n\"288789\";\"Barka'\";\"ascii\"\n\"288789\";\"Barkah\";\"other\"\n\"288899\";\"Bahlā’\";\"main\"\n\"288899\";\"Bahla'\";\"ascii\"\n\"288899\";\"Bahlah\";\"other\"\n\"288902\";\"Badīyah\";\"main\"\n\"288902\";\"Badiyah\";\"ascii\"\n\"288902\";\"Badiya\";\"other\"\n\"288955\";\"As Suwayq\";\"main\"\n\"288955\";\"As Suwaiq\";\"other\"\n\"288955\";\"Suwaik\";\"other\"\n\"288955\";\"Suwayq\";\"other\"\n\"288967\";\"As Sīb\";\"main\"\n\"288967\";\"As Sib\";\"ascii\"\n\"288967\";\"Al-Sib\";\"other\"\n\"288967\";\"Al-Sīb\";\"other\"\n\"288967\";\"Sib\";\"other\"\n\"289011\";\"Rustāq\";\"main\"\n\"289011\";\"Rustaq\";\"ascii\"\n\"289011\";\"Ar Rustaq\";\"other\"\n\"289011\";\"Ar Rustāq\";\"other\"\n\"289011\";\"Qal`at Kasra\";\"other\"\n\"289011\";\"Qal‘at Kasrá\";\"other\"\n\"289011\";\"Rostak\";\"other\"\n\"289011\";\"Rustaka\";\"other\"\n\"289011\";\"Рустака\";\"other\"\n\"289142\";\"Al Qābil\";\"main\"\n\"289142\";\"Al Qabil\";\"ascii\"\n\"289142\";\"Gabil\";\"other\"\n\"289142\";\"Qabil\";\"other\"\n\"289142\";\"Qabil al Hirth\";\"other\"\n\"289142\";\"Qābil al Hirth\";\"other\"\n\"289174\";\"Al Liwā’\";\"main\"\n\"289174\";\"Al Liwa'\";\"ascii\"\n\"289174\";\"Hillat al Hisn\";\"other\"\n\"289174\";\"Liwa'\";\"other\"\n\"289174\";\"Liwā’\";\"other\"\n\"289174\";\"Ḩillat al Ḩisn\";\"other\"\n\"289199\";\"Al Khābūrah\";\"main\"\n\"289199\";\"Al Khaburah\";\"ascii\"\n\"289199\";\"Al Khabura\";\"other\"\n\"289199\";\"Al Khābūra\";\"other\"\n\"289199\";\"Al-Khabourah\";\"other\"\n\"289199\";\"Khabura\";\"other\"\n\"289199\";\"Khaburah\";\"other\"\n\"289199\";\"Khābūrah\";\"other\"\n\"289317\";\"Al Buraymī\";\"main\"\n\"289317\";\"Al Buraymi\";\"ascii\"\n\"289317\";\"Baraimi\";\"other\"\n\"289317\";\"Bireimi\";\"other\"\n\"289317\";\"Buraimi\";\"other\"\n\"289317\";\"Burami\";\"other\"\n\"289433\";\"Ādam\";\"main\"\n\"289433\";\"Adam\";\"ascii\"\n\"411849\";\"Yanqul\";\"main\"\n\"412084\";\"Bayt al ‘Awābī\";\"main\"\n\"412084\";\"Bayt al `Awabi\";\"ascii\"\n\"3699980\";\"Yaviza\";\"main\"\n\"3699980\";\"Yavisa\";\"other\"\n\"3700017\";\"Volcán\";\"main\"\n\"3700017\";\"Volcan\";\"ascii\"\n\"3700017\";\"El Hato\";\"other\"\n\"3700017\";\"El Hato del Volcan\";\"other\"\n\"3700017\";\"El Hato del Volcán\";\"other\"\n\"3700017\";\"El Volcan\";\"other\"\n\"3700017\";\"El Volcán\";\"other\"\n\"3700017\";\"Hato de Volcan\";\"other\"\n\"3700017\";\"Hato del Volcan\";\"other\"\n\"3700017\";\"Hato del Volcán\";\"other\"\n\"3700033\";\"Vista Hermosa\";\"main\"\n\"3700038\";\"Vista Alegre\";\"main\"\n\"3700070\";\"Villa Rosario\";\"main\"\n\"3700080\";\"Villa Carmen\";\"main\"\n\"3700164\";\"Veracruz\";\"main\"\n\"3700164\";\"Camaron\";\"other\"\n\"3700164\";\"Camarón\";\"other\"\n\"3700164\";\"Cameron\";\"other\"\n\"3700164\";\"Camerón\";\"other\"\n\"3700269\";\"Ustupo\";\"main\"\n\"3700269\";\"Concepcion\";\"other\"\n\"3700269\";\"Concepción\";\"other\"\n\"3700269\";\"Ustupo Ogobsucun\";\"other\"\n\"3700269\";\"Yantupo\";\"other\"\n\"3700393\";\"Tubualá\";\"main\"\n\"3700393\";\"Tubuala\";\"ascii\"\n\"3700393\";\"Tubuala Numero Dos\";\"other\"\n\"3700393\";\"Tubualá Número Dos\";\"other\"\n\"3700538\";\"Tonosí\";\"main\"\n\"3700538\";\"Tonosi\";\"ascii\"\n\"3700563\";\"Tocumen\";\"main\"\n\"3700563\";\"Tokumen\";\"other\"\n\"3700563\";\"Токумен\";\"other\"\n\"3700620\";\"Tijera\";\"main\"\n\"3700620\";\"Tijeras\";\"other\"\n\"3700871\";\"Sortová\";\"main\"\n\"3700871\";\"Sortova\";\"ascii\"\n\"3700871\";\"Sortoua\";\"other\"\n\"3700888\";\"Soná\";\"main\"\n\"3700888\";\"Sona\";\"ascii\"\n\"3700931\";\"Sioguí Arriba\";\"main\"\n\"3700931\";\"Siogui Arriba\";\"ascii\"\n\"3700933\";\"Sioguí Abajo\";\"main\"\n\"3700933\";\"Siogui Abajo\";\"ascii\"\n\"3701088\";\"San Vicente de Bique\";\"main\"\n\"3701101\";\"Santo Domingo\";\"main\"\n\"3701103\";\"Santo Domingo\";\"main\"\n\"3701117\";\"Santiago de Veraguas\";\"main\"\n\"3701163\";\"Santa Marta\";\"main\"\n\"3701174\";\"Santa María\";\"main\"\n\"3701174\";\"Santa Maria\";\"ascii\"\n\"3701195\";\"Santa Fé\";\"main\"\n\"3701195\";\"Santa Fe\";\"ascii\"\n\"3701239\";\"Santa Clara\";\"main\"\n\"3701329\";\"San Miguelito\";\"main\"\n\"3701329\";\"San Miguel\";\"other\"\n\"3701466\";\"San Ignacio de Tupile\";\"main\"\n\"3701484\";\"San Francisco\";\"main\"\n\"3701491\";\"San Félix\";\"main\"\n\"3701491\";\"San Felix\";\"ascii\"\n\"3701578\";\"San Andrés\";\"main\"\n\"3701578\";\"San Andres\";\"ascii\"\n\"3701578\";\"San Andreas\";\"other\"\n\"3701682\";\"Sabanitas\";\"main\"\n\"3701682\";\"Sabanita\";\"other\"\n\"3701810\";\"Río Sereno\";\"main\"\n\"3701810\";\"Rio Sereno\";\"ascii\"\n\"3701810\";\"Sereno\";\"other\"\n\"3701816\";\"Río Rita\";\"main\"\n\"3701816\";\"Rio Rita\";\"ascii\"\n\"3701861\";\"Río Hato\";\"main\"\n\"3701861\";\"Rio Hato\";\"ascii\"\n\"3701868\";\"Río Grande\";\"main\"\n\"3701868\";\"Rio Grande\";\"ascii\"\n\"3701870\";\"Río Gatún\";\"main\"\n\"3701870\";\"Rio Gatun\";\"ascii\"\n\"3701870\";\"Gatun\";\"other\"\n\"3701874\";\"Río Duque\";\"main\"\n\"3701874\";\"Rio Duque\";\"ascii\"\n\"3701882\";\"Río de Jesús\";\"main\"\n\"3701882\";\"Rio de Jesus\";\"ascii\"\n\"3701914\";\"Río Alejandro\";\"main\"\n\"3701914\";\"Rio Alejandro\";\"ascii\"\n\"3702269\";\"Quebrada Canoa\";\"main\"\n\"3702269\";\"Canoa\";\"other\"\n\"3702276\";\"Quebrada Bonita Adentro\";\"main\"\n\"3702342\";\"Punta de Burica\";\"main\"\n\"3702342\";\"Burica\";\"other\"\n\"3702384\";\"Puerto Pilón\";\"main\"\n\"3702384\";\"Puerto Pilon\";\"ascii\"\n\"3702412\";\"Puerto Escondido\";\"main\"\n\"3702427\";\"Puerto Caimito\";\"main\"\n\"3702427\";\"Chorrera Landing\";\"other\"\n\"3702427\";\"Port of La Chorrera\";\"other\"\n\"3702427\";\"Puerto Chorrera\";\"other\"\n\"3702427\";\"Puerto de Chorrera\";\"other\"\n\"3702427\";\"Puerto de la Chorrera\";\"other\"\n\"3702431\";\"Puerto Armuelles\";\"main\"\n\"3702431\";\"Armuelles\";\"other\"\n\"3702431\";\"Rabo de Puerco\";\"other\"\n\"3702448\";\"Pueblo Viejo\";\"main\"\n\"3702464\";\"Pueblo Nuevo\";\"main\"\n\"3702509\";\"Progreso\";\"main\"\n\"3702538\";\"Potrero Grande\";\"main\"\n\"3702548\";\"Potrerillos Arriba\";\"main\"\n\"3702550\";\"Potrerillos Abajo\";\"main\"\n\"3702550\";\"Potrerillos\";\"other\"\n\"3702550\";\"Potrreillo Abajo\";\"other\"\n\"3702577\";\"Portobelo\";\"main\"\n\"3702577\";\"Portobello\";\"other\"\n\"3702577\";\"Puerto Bello\";\"other\"\n\"3702631\";\"Pocrí\";\"main\"\n\"3702631\";\"Pocri\";\"ascii\"\n\"3702637\";\"Plaza de Caisán\";\"main\"\n\"3702637\";\"Plaza de Caisan\";\"ascii\"\n\"3702647\";\"Playón Chico\";\"main\"\n\"3702647\";\"Playon Chico\";\"ascii\"\n\"3703011\";\"Pesé\";\"main\"\n\"3703011\";\"Pese\";\"ascii\"\n\"3703068\";\"Penonomé\";\"main\"\n\"3703068\";\"Penonome\";\"ascii\"\n\"3703229\";\"Pedregal\";\"main\"\n\"3703229\";\"Puerto Pedregal\";\"other\"\n\"3703239\";\"Pedasí\";\"main\"\n\"3703239\";\"Pedasi\";\"ascii\"\n\"3703327\";\"Paso Blanco\";\"main\"\n\"3703354\";\"Parita\";\"main\"\n\"3703373\";\"Paraíso\";\"main\"\n\"3703373\";\"Paraiso\";\"ascii\"\n\"3703443\";\"Panamá\";\"main\"\n\"3703443\";\"Panama\";\"ascii\"\n\"3703443\";\"Ciudad de Panama\";\"other\"\n\"3703443\";\"Ciudad de Panamá\";\"other\"\n\"3703443\";\"Ciutat de Panama\";\"other\"\n\"3703443\";\"Ciutat de Panamà\";\"other\"\n\"3703443\";\"Panama City\";\"other\"\n\"3703443\";\"Panama Hiria\";\"other\"\n\"3703443\";\"Panama by\";\"other\"\n\"3703443\";\"Panama-Stadt\";\"other\"\n\"3703443\";\"Panama-Urbo\";\"other\"\n\"3703443\";\"Panama-stad\";\"other\"\n\"3703443\";\"Panamurbo\";\"other\"\n\"3703443\";\"Pole tou Panama\";\"other\"\n\"3703443\";\"Ziuda de Panama\";\"other\"\n\"3703443\";\"Ziudá de Panamá\";\"other\"\n\"3703443\";\"ba na ma cheng\";\"other\"\n\"3703443\";\"panama si\";\"other\"\n\"3703443\";\"panama siti\";\"other\"\n\"3703443\";\"panamashiti\";\"other\"\n\"3703443\";\"panamasiti\";\"other\"\n\"3703443\";\"pnmh syty\";\"other\"\n\"3703443\";\"shhr panama\";\"other\"\n\"3703443\";\"Πόλη του Παναμά\";\"other\"\n\"3703443\";\"Панама\";\"other\"\n\"3703443\";\"פנמה סיטי\";\"other\"\n\"3703443\";\"شهر پاناما\";\"other\"\n\"3703443\";\"पनामा सिटी\";\"other\"\n\"3703443\";\"ปานามาซิตี\";\"other\"\n\"3703443\";\"ፓናማ ከተማ\";\"other\"\n\"3703443\";\"パナマシティ\";\"other\"\n\"3703443\";\"巴拿馬城\";\"other\"\n\"3703443\";\"파나마 시\";\"other\"\n\"3703505\";\"Palmira\";\"main\"\n\"3703523\";\"Palmas Bellas\";\"main\"\n\"3703523\";\"Lagarto\";\"other\"\n\"3703647\";\"Pacora\";\"main\"\n\"3703786\";\"Ocú\";\"main\"\n\"3703786\";\"Ocu\";\"ascii\"\n\"3703818\";\"Nuevo Vigía\";\"main\"\n\"3703818\";\"Nuevo Vigia\";\"ascii\"\n\"3703818\";\"Vigia\";\"other\"\n\"3703820\";\"Nuevo San Juan\";\"main\"\n\"3703828\";\"Nuevo Emperador\";\"main\"\n\"3703828\";\"Paja\";\"other\"\n\"3703833\";\"Nuevo Arraiján\";\"main\"\n\"3703833\";\"Nuevo Arraijan\";\"ascii\"\n\"3703839\";\"Nueva Gorgona\";\"main\"\n\"3703839\";\"Gorgona\";\"other\"\n\"3703938\";\"Natá\";\"main\"\n\"3703938\";\"Nata\";\"ascii\"\n\"3703946\";\"Narganá\";\"main\"\n\"3703946\";\"Nargana\";\"ascii\"\n\"3703946\";\"Rio Diablo\";\"other\"\n\"3703946\";\"Rio Diablo Village\";\"other\"\n\"3703946\";\"Río Diablo\";\"other\"\n\"3704029\";\"Mulatupo Sasardí\";\"main\"\n\"3704029\";\"Mulatupo Sasardi\";\"ascii\"\n\"3704029\";\"Gallinazo\";\"other\"\n\"3704029\";\"Isla Gallinazo\";\"other\"\n\"3704029\";\"Mulatupo\";\"other\"\n\"3704123\";\"Montijo\";\"main\"\n\"3704138\";\"Monte Lirio\";\"main\"\n\"3704327\";\"Metetí\";\"main\"\n\"3704327\";\"Meteti\";\"ascii\"\n\"3704327\";\"Metety\";\"other\"\n\"3704460\";\"Mata del Nance\";\"main\"\n\"3704547\";\"María Chiquita\";\"main\"\n\"3704547\";\"Maria Chiquita\";\"ascii\"\n\"3704571\";\"Margarita\";\"main\"\n\"3704571\";\"Margarita-Escondido\";\"other\"\n\"3704874\";\"Macaracas\";\"main\"\n\"3704964\";\"Los Santos\";\"main\"\n\"3705229\";\"Los Lotes\";\"main\"\n\"3705493\";\"Los Boquerones\";\"main\"\n\"3705493\";\"Boquerones\";\"other\"\n\"3705549\";\"Los Anastacios\";\"main\"\n\"3705562\";\"Los Algarrobos\";\"main\"\n\"3705562\";\"Algarrabo\";\"other\"\n\"3705562\";\"Algarrobo\";\"other\"\n\"3705563\";\"Los Algarrobos\";\"main\"\n\"3705691\";\"Llano Marín\";\"main\"\n\"3705691\";\"Llano Marin\";\"ascii\"\n\"3705710\";\"Llano Largo\";\"main\"\n\"3705743\";\"Llano de Piedra\";\"main\"\n\"3705894\";\"Lídice\";\"main\"\n\"3705894\";\"Lidice\";\"ascii\"\n\"3705989\";\"La Victoria\";\"main\"\n\"3706091\";\"La Tiza\";\"main\"\n\"3706208\";\"Las Tablas\";\"main\"\n\"3706292\";\"Las Palmas\";\"main\"\n\"3706347\";\"Las Minas\";\"main\"\n\"3706409\";\"Las Lomas\";\"main\"\n\"3706410\";\"Las Lomas\";\"main\"\n\"3706410\";\"Llano del Medio\";\"other\"\n\"3706567\";\"Las Cumbres\";\"main\"\n\"3706590\";\"Las Colinas\";\"main\"\n\"3706931\";\"La Pintada\";\"main\"\n\"3706974\";\"La Peña\";\"main\"\n\"3706974\";\"La Pena\";\"ascii\"\n\"3707058\";\"La Palma\";\"main\"\n\"3707063\";\"La Palma\";\"main\"\n\"3707150\";\"La Mitra\";\"main\"\n\"3707220\";\"La Mesa\";\"main\"\n\"3707227\";\"La Mesa\";\"main\"\n\"3707227\";\"Las Mesa\";\"other\"\n\"3707311\";\"La Loma\";\"main\"\n\"3707568\";\"La Herradura\";\"main\"\n\"3707752\";\"La Espigadilla\";\"main\"\n\"3707758\";\"La Esperanza\";\"main\"\n\"3707899\";\"La Concepción\";\"main\"\n\"3707899\";\"La Concepcion\";\"ascii\"\n\"3707899\";\"Concepcion\";\"other\"\n\"3707899\";\"Concepción\";\"other\"\n\"3707921\";\"La Colorada\";\"main\"\n\"3707961\";\"La Chorrera\";\"main\"\n\"3707961\";\"Chorrera\";\"other\"\n\"3708066\";\"La Cabima\";\"main\"\n\"3708066\";\"La Cabina\";\"other\"\n\"3708307\";\"Juan Díaz\";\"main\"\n\"3708307\";\"Juan Diaz\";\"ascii\"\n\"3708432\";\"Jaqué\";\"main\"\n\"3708432\";\"Jaque\";\"ascii\"\n\"3708432\";\"Jague\";\"other\"\n\"3708432\";\"Jagué\";\"other\"\n\"3708432\";\"Jarque\";\"other\"\n\"3708892\";\"Guarumal\";\"main\"\n\"3708911\";\"Guararé\";\"main\"\n\"3708911\";\"Guarare\";\"ascii\"\n\"3708948\";\"Gualaca\";\"main\"\n\"3708954\";\"Guadalupe\";\"main\"\n\"3708954\";\"La Laguna\";\"other\"\n\"3708989\";\"Guabito\";\"main\"\n\"3709228\";\"Gómez\";\"main\"\n\"3709228\";\"Gomez\";\"ascii\"\n\"3709228\";\"Gomez Arriba\";\"other\"\n\"3709228\";\"Gómez Arriba\";\"other\"\n\"3709361\";\"Garachiné\";\"main\"\n\"3709361\";\"Garachine\";\"ascii\"\n\"3709561\";\"Finca Corredor\";\"main\"\n\"3709561\";\"Corredor\";\"other\"\n\"3709569\";\"Finca Blanco Número Uno\";\"main\"\n\"3709569\";\"Finca Blanco Numero Uno\";\"ascii\"\n\"3709569\";\"Blanco\";\"other\"\n\"3709569\";\"Finca Blanco\";\"other\"\n\"3709742\";\"Escobal\";\"main\"\n\"3710026\";\"El Roble\";\"main\"\n\"3710040\";\"El Rincón\";\"main\"\n\"3710040\";\"El Rincon\";\"ascii\"\n\"3710066\";\"El Quiteño\";\"main\"\n\"3710066\";\"El Quiteno\";\"ascii\"\n\"3710066\";\"Quiteno\";\"other\"\n\"3710087\";\"El Progreso\";\"main\"\n\"3710114\";\"El Porvenir\";\"main\"\n\"3710808\";\"El Giral\";\"main\"\n\"3710808\";\"Giral\";\"other\"\n\"3710808\";\"Jiral\";\"other\"\n\"3710864\";\"El Espino de Santa Rosa\";\"main\"\n\"3710864\";\"El Espino\";\"other\"\n\"3710864\";\"Espino\";\"other\"\n\"3710875\";\"El Espino\";\"main\"\n\"3710910\";\"El Entradero\";\"main\"\n\"3710910\";\"El Entradero Marica\";\"other\"\n\"3710923\";\"El Ejido\";\"main\"\n\"3710923\";\"Ejido\";\"other\"\n\"3710923\";\"El Egido\";\"other\"\n\"3710961\";\"El Cristo\";\"main\"\n\"3710978\";\"El Cortezo\";\"main\"\n\"3710978\";\"Cortezo\";\"other\"\n\"3711009\";\"El Copé\";\"main\"\n\"3711009\";\"El Cope\";\"ascii\"\n\"3711009\";\"Cope\";\"other\"\n\"3711009\";\"Copé\";\"other\"\n\"3711056\";\"El Coco\";\"main\"\n\"3711056\";\"Coco\";\"other\"\n\"3711059\";\"El Coco\";\"main\"\n\"3711240\";\"El Caño\";\"main\"\n\"3711240\";\"El Cano\";\"ascii\"\n\"3711618\";\"Dolega\";\"main\"\n\"3711631\";\"Divalá\";\"main\"\n\"3711631\";\"Divala\";\"ascii\"\n\"3711631\";\"Davala\";\"other\"\n\"3711631\";\"Davalá\";\"other\"\n\"3711668\";\"David\";\"main\"\n\"3711668\";\"Ciudad de David\";\"other\"\n\"3711668\";\"Dehvid\";\"other\"\n\"3711668\";\"Дэвид\";\"other\"\n\"3711694\";\"Cusapín\";\"main\"\n\"3711694\";\"Cusapin\";\"ascii\"\n\"3712076\";\"Colón\";\"main\"\n\"3712076\";\"Colon\";\"ascii\"\n\"3712076\";\"Aspinwall\";\"other\"\n\"3712076\";\"Ciudad de Colon\";\"other\"\n\"3712076\";\"Ciudad de Colón\";\"other\"\n\"3712076\";\"Kolon\";\"other\"\n\"3712076\";\"koron\";\"other\"\n\"3712076\";\"Колон\";\"other\"\n\"3712076\";\"コロン\";\"other\"\n\"3712164\";\"Coclé\";\"main\"\n\"3712164\";\"Cocle\";\"ascii\"\n\"3712280\";\"Churuquita Grande\";\"main\"\n\"3712280\";\"Churiquita Grande\";\"other\"\n\"3712281\";\"Churuquita Chiquita\";\"main\"\n\"3712281\";\"Chiquita\";\"other\"\n\"3712281\";\"Churiquita Chiquita\";\"other\"\n\"3712281\";\"Churuquita\";\"other\"\n\"3712384\";\"Chitré\";\"main\"\n\"3712384\";\"Chitre\";\"ascii\"\n\"3712401\";\"Chiriquí Grande\";\"main\"\n\"3712401\";\"Chiriqui Grande\";\"ascii\"\n\"3712419\";\"Chiriquí\";\"main\"\n\"3712419\";\"Chiriqui\";\"ascii\"\n\"3712455\";\"Chilibre\";\"main\"\n\"3712462\";\"Chigoré\";\"main\"\n\"3712462\";\"Chigore\";\"ascii\"\n\"3712462\";\"Chicore\";\"other\"\n\"3712505\";\"Chepo\";\"main\"\n\"3712560\";\"Changuinola\";\"main\"\n\"3712579\";\"Chame\";\"main\"\n\"3712636\";\"Cerro Punta\";\"main\"\n\"3712765\";\"Cerro Cama\";\"main\"\n\"3712786\";\"Cerro Azul\";\"main\"\n\"3712884\";\"Cativá\";\"main\"\n\"3712884\";\"Cativa\";\"ascii\"\n\"3712884\";\"Catival\";\"other\"\n\"3712951\";\"Cartí Suitupo\";\"main\"\n\"3712951\";\"Carti Suitupo\";\"ascii\"\n\"3712951\";\"Carti Sutupo\";\"other\"\n\"3712951\";\"Cartí Sutupo\";\"other\"\n\"3712951\";\"Suctupo\";\"other\"\n\"3713047\";\"Capira\";\"main\"\n\"3713051\";\"Capellanía\";\"main\"\n\"3713051\";\"Capellania\";\"ascii\"\n\"3713051\";\"Las Guabas\";\"other\"\n\"3713131\";\"Cañita\";\"main\"\n\"3713131\";\"Canita\";\"ascii\"\n\"3713131\";\"Tumaganti\";\"other\"\n\"3713131\";\"Tumagantí\";\"other\"\n\"3713196\";\"Cañazas\";\"main\"\n\"3713196\";\"Canazas\";\"ascii\"\n\"3713381\";\"Calzada Larga\";\"main\"\n\"3713381\";\"Casa Larga\";\"other\"\n\"3713499\";\"Caimitillo\";\"main\"\n\"3713588\";\"Cabra\";\"main\"\n\"3713667\";\"Bugaba\";\"main\"\n\"3713715\";\"Buena Vista\";\"main\"\n\"3713860\";\"Boquete\";\"main\"\n\"3713860\";\"Bajo Boquete\";\"other\"\n\"3713873\";\"Boquerón\";\"main\"\n\"3713873\";\"Boqueron\";\"ascii\"\n\"3713959\";\"Bocas del Toro\";\"main\"\n\"3713959\";\"Bokas-del'-Toro\";\"other\"\n\"3713959\";\"Бокас-дель-Торо\";\"other\"\n\"3714000\";\"Boca de Parita\";\"main\"\n\"3714176\";\"Bella Vista\";\"main\"\n\"3714201\";\"Bejuco\";\"main\"\n\"3714260\";\"Isla Bastimentos\";\"main\"\n\"3714260\";\"Isla Provision\";\"other\"\n\"3714260\";\"Isla Provisión\";\"other\"\n\"3714260\";\"Isla de Bastimentos\";\"other\"\n\"3714260\";\"Old Bank Island\";\"other\"\n\"3714336\";\"Barranco\";\"main\"\n\"3714336\";\"Riverside\";\"other\"\n\"3714598\";\"Atalaya\";\"main\"\n\"3714611\";\"Aserrío de Gariché\";\"main\"\n\"3714611\";\"Aserrio de Gariche\";\"ascii\"\n\"3714611\";\"Aserria\";\"other\"\n\"3714611\";\"Aserrio\";\"other\"\n\"3714611\";\"Aserrío\";\"other\"\n\"3714611\";\"San Antonio\";\"other\"\n\"3714637\";\"Arraiján\";\"main\"\n\"3714637\";\"Arraijan\";\"ascii\"\n\"3714710\";\"Antón\";\"main\"\n\"3714710\";\"Anton\";\"ascii\"\n\"3714734\";\"Ancón\";\"main\"\n\"3714734\";\"Ancon\";\"ascii\"\n\"3714830\";\"Alto del Espino\";\"main\"\n\"3714849\";\"Alto de la Estancia\";\"main\"\n\"3714849\";\"Cabecera de Sofre\";\"other\"\n\"3714896\";\"Almirante\";\"main\"\n\"3714932\";\"Alcaldedíaz\";\"main\"\n\"3714932\";\"Alcaldediaz\";\"ascii\"\n\"3714932\";\"Penoncito\";\"other\"\n\"3714932\";\"Peñoncito\";\"other\"\n\"3714939\";\"Alanje\";\"main\"\n\"3714956\";\"Ailigandí\";\"main\"\n\"3714956\";\"Ailigandi\";\"ascii\"\n\"3714956\";\"Ailingandi\";\"other\"\n\"3714956\";\"Ailingandí\";\"other\"\n\"3715042\";\"Aguadulce\";\"main\"\n\"3715111\";\"Agua Buena\";\"main\"\n\"3715156\";\"Achutupo Número Dos\";\"main\"\n\"3715156\";\"Achutupo Numero Dos\";\"ascii\"\n\"3715156\";\"Achutupo\";\"other\"\n\"3715156\";\"Achutupo Numero 2\";\"other\"\n\"3715156\";\"Achutupo Número 2\";\"other\"\n\"3764343\";\"Santa Rita Arriba\";\"main\"\n\"3690608\";\"Zorritos\";\"main\"\n\"3690608\";\"Puerto Villar\";\"other\"\n\"3690654\";\"Yurimaguas\";\"main\"\n\"3690654\";\"Jurimaguas\";\"other\"\n\"3690654\";\"Yurimahuas\";\"other\"\n\"3690654\";\"Юримагуас\";\"other\"\n\"3690673\";\"Yungay\";\"main\"\n\"3690733\";\"Yauya\";\"main\"\n\"3690875\";\"Virú\";\"main\"\n\"3690875\";\"Viru\";\"ascii\"\n\"3690935\";\"Vice\";\"main\"\n\"3691094\";\"Uchiza\";\"main\"\n\"3691094\";\"Uchisa\";\"other\"\n\"3691148\";\"Tumbes\";\"main\"\n\"3691148\";\"Tumbez\";\"other\"\n\"3691148\";\"Tumpiurbo\";\"other\"\n\"3691148\";\"Tunpis\";\"other\"\n\"3691148\";\"Тумбес\";\"other\"\n\"3691161\";\"Túcume\";\"main\"\n\"3691161\";\"Tucume\";\"ascii\"\n\"3691161\";\"Tucumo\";\"other\"\n\"3691175\";\"Trujillo\";\"main\"\n\"3691175\";\"Trukhil'o\";\"other\"\n\"3691175\";\"Трухильо\";\"other\"\n\"3691324\";\"Tocache Nuevo\";\"main\"\n\"3691324\";\"San Juan de Tocache\";\"other\"\n\"3691324\";\"Tocache\";\"other\"\n\"3691348\";\"Tingo María\";\"main\"\n\"3691348\";\"Tingo Maria\";\"ascii\"\n\"3691348\";\"Leoncio Prado\";\"other\"\n\"3691530\";\"Tambo Grande\";\"main\"\n\"3691582\";\"Talara\";\"main\"\n\"3691582\";\"Puerto Talara\";\"other\"\n\"3691582\";\"Талара\";\"other\"\n\"3691638\";\"Tabalosos\";\"main\"\n\"3691674\";\"Sullana\";\"main\"\n\"3691674\";\"Sul'jana\";\"other\"\n\"3691674\";\"Сульяна\";\"other\"\n\"3691712\";\"Soritor\";\"main\"\n\"3691954\";\"Sechura\";\"main\"\n\"3692020\";\"Saquena\";\"main\"\n\"3692029\";\"Saposoa\";\"main\"\n\"3692072\";\"Santiago de Chuco\";\"main\"\n\"3692073\";\"Santiago de Cao\";\"main\"\n\"3692116\";\"Santa Rosa\";\"main\"\n\"3692116\";\"Santa Rosa Hacienda\";\"other\"\n\"3692310\";\"San Pedro de Lloc\";\"main\"\n\"3692310\";\"San Pedro\";\"other\"\n\"3692464\";\"San José de Sisa\";\"main\"\n\"3692464\";\"San Jose de Sisa\";\"ascii\"\n\"3692464\";\"Sisa\";\"other\"\n\"3692482\";\"San José\";\"main\"\n\"3692482\";\"San Jose\";\"ascii\"\n\"3692529\";\"San Ignacio\";\"main\"\n\"3692667\";\"Zaña\";\"main\"\n\"3692667\";\"Zana\";\"ascii\"\n\"3692667\";\"Sana\";\"other\"\n\"3692667\";\"Saña\";\"other\"\n\"3692667\";\"Зана\";\"other\"\n\"3692727\";\"Salitral\";\"main\"\n\"3692729\";\"Salinera Colán\";\"main\"\n\"3692729\";\"Salinera Colan\";\"ascii\"\n\"3692747\";\"Salaverry\";\"main\"\n\"3692747\";\"Puerto de Salaverry\";\"other\"\n\"3692863\";\"Rioja\";\"main\"\n\"3692900\";\"Reque\";\"main\"\n\"3692900\";\"Tranca de Reque\";\"other\"\n\"3692953\";\"Ramón Castilla\";\"main\"\n\"3692953\";\"Ramon Castilla\";\"ascii\"\n\"3692994\";\"Quiruvilca\";\"main\"\n\"3692994\";\"Ouiruvilca\";\"other\"\n\"3693057\";\"Querecotillo\";\"main\"\n\"3693191\";\"Puerto Santa\";\"main\"\n\"3693302\";\"Pueblo Nuevo\";\"main\"\n\"3693302\";\"Pueblo Nuevo de Ildefonso\";\"other\"\n\"3693302\";\"Pueblo Nuevo de San Ildefonso\";\"other\"\n\"3693305\";\"Pueblo Nuevo\";\"main\"\n\"3693345\";\"Pucallpa\";\"main\"\n\"3693345\";\"Callaria\";\"other\"\n\"3693345\";\"Pucalpa\";\"other\"\n\"3693345\";\"Pukal'pa\";\"other\"\n\"3693345\";\"Pulcalla\";\"other\"\n\"3693345\";\"pu lan er pa\";\"other\"\n\"3693345\";\"pukaruba\";\"other\"\n\"3693345\";\"Пукальпа\";\"other\"\n\"3693345\";\"プカルバ\";\"other\"\n\"3693345\";\"普兰尔帕\";\"other\"\n\"3693468\";\"Pomabamba\";\"main\"\n\"3693468\";\"Pamabamba\";\"other\"\n\"3693528\";\"Piura\";\"main\"\n\"3693528\";\"Piŭra\";\"other\"\n\"3693528\";\"Пиура\";\"other\"\n\"3693584\";\"Pimentel\";\"main\"\n\"3693645\";\"Picsi\";\"main\"\n\"3693645\";\"Piksi\";\"other\"\n\"3693645\";\"Pisci\";\"other\"\n\"3693645\";\"Pixi\";\"other\"\n\"3693645\";\"Пикси\";\"other\"\n\"3693646\";\"Picota\";\"main\"\n\"3694112\";\"Paita\";\"main\"\n\"3694112\";\"Паита\";\"other\"\n\"3694119\";\"Paiján\";\"main\"\n\"3694119\";\"Paijan\";\"ascii\"\n\"3694178\";\"Pacasmayo\";\"main\"\n\"3694178\";\"Puerto de Pacasmayo\";\"other\"\n\"3694183\";\"Pacanga\";\"main\"\n\"3694183\";\"Pacahoa\";\"other\"\n\"3694197\";\"Oyotún\";\"main\"\n\"3694197\";\"Oyotun\";\"ascii\"\n\"3694197\";\"Oyontun\";\"other\"\n\"3694197\";\"Oyontún\";\"other\"\n\"3694212\";\"Otuzco\";\"main\"\n\"3694256\";\"Olmos\";\"main\"\n\"3694564\";\"Moyobamba\";\"main\"\n\"3694564\";\"Moiobamba\";\"other\"\n\"3694564\";\"Mojobamba\";\"other\"\n\"3694564\";\"Мойобамба\";\"other\"\n\"3694569\";\"Motupe\";\"main\"\n\"3694582\";\"Morropón\";\"main\"\n\"3694582\";\"Morropon\";\"ascii\"\n\"3694586\";\"Mórrope\";\"main\"\n\"3694586\";\"Morrope\";\"ascii\"\n\"3694666\";\"Monsefú\";\"main\"\n\"3694666\";\"Monsefu\";\"ascii\"\n\"3694720\";\"Mochumí\";\"main\"\n\"3694720\";\"Mochumi\";\"ascii\"\n\"3694720\";\"Muchumi\";\"other\"\n\"3694725\";\"Moche\";\"main\"\n\"3694939\";\"Marcavelica\";\"main\"\n\"3694939\";\"Marcavelica Hacienda\";\"other\"\n\"3695000\";\"Máncora\";\"main\"\n\"3695000\";\"Mancora\";\"ascii\"\n\"3695000\";\"Hacienda Mancora\";\"other\"\n\"3695000\";\"Mancora Hacienda\";\"other\"\n\"3695000\";\"Máncora Hacienda\";\"other\"\n\"3695320\";\"Llata\";\"main\"\n\"3695465\";\"La Unión\";\"main\"\n\"3695465\";\"La Union\";\"ascii\"\n\"3695466\";\"La Unión\";\"main\"\n\"3695466\";\"La Union\";\"ascii\"\n\"3695552\";\"Las Lomas\";\"main\"\n\"3695617\";\"Laredo\";\"main\"\n\"3695617\";\"Laredo Hacienda\";\"other\"\n\"3695617\";\"Ларедо\";\"other\"\n\"3695675\";\"La Peca\";\"main\"\n\"3695675\";\"La Peca Nueva\";\"other\"\n\"3695754\";\"Lambayeque\";\"main\"\n\"3695754\";\"Lambajeke\";\"other\"\n\"3695754\";\"Ламбайеке\";\"other\"\n\"3695757\";\"Lamas\";\"main\"\n\"3695829\";\"La Huaca\";\"main\"\n\"3695829\";\"Lattuaca\";\"other\"\n\"3695844\";\"Lagunas\";\"main\"\n\"3695844\";\"La Laguna\";\"other\"\n\"3695844\";\"San Antonio de la Laguna\";\"other\"\n\"3696057\";\"Juanjuí\";\"main\"\n\"3696057\";\"Juanjui\";\"ascii\"\n\"3696096\";\"Jepelacio\";\"main\"\n\"3696096\";\"Jepelecio\";\"other\"\n\"3696104\";\"Jayanca\";\"main\"\n\"3696150\";\"Jaén\";\"main\"\n\"3696150\";\"Jaen\";\"ascii\"\n\"3696150\";\"Khaehn\";\"other\"\n\"3696150\";\"Хаэн\";\"other\"\n\"3696183\";\"Iquitos\";\"main\"\n\"3696183\";\"Ikitos\";\"other\"\n\"3696183\";\"Ikitosas\";\"other\"\n\"3696183\";\"Iquitum\";\"other\"\n\"3696183\";\"Икитос\";\"other\"\n\"3696183\";\"איקיטוס\";\"other\"\n\"3696267\";\"Huicungo\";\"main\"\n\"3696378\";\"Huaraz\";\"main\"\n\"3696378\";\"Huaras\";\"other\"\n\"3696378\";\"Uaras\";\"other\"\n\"3696378\";\"Waras\";\"other\"\n\"3696378\";\"Уарас\";\"other\"\n\"3696417\";\"Huánuco\";\"main\"\n\"3696417\";\"Huanuco\";\"ascii\"\n\"3696417\";\"Huanucum\";\"other\"\n\"3696417\";\"Uanuko\";\"other\"\n\"3696417\";\"Wanuku\";\"other\"\n\"3696417\";\"Ŭanuko\";\"other\"\n\"3696417\";\"Уануко\";\"other\"\n\"3696466\";\"Huancabamba\";\"main\"\n\"3696509\";\"Huamachuco\";\"main\"\n\"3696847\";\"Guadalupe\";\"main\"\n\"3697033\";\"Ferreñafe\";\"main\"\n\"3697033\";\"Ferrenafe\";\"ascii\"\n\"3697033\";\"Terrenafe\";\"other\"\n\"3697033\";\"Terreñafe\";\"other\"\n\"3697083\";\"Eten\";\"main\"\n\"3697083\";\"Villa Eten\";\"other\"\n\"3697441\";\"El Alto\";\"main\"\n\"3697838\";\"Contamana\";\"main\"\n\"3697838\";\"Contamena\";\"other\"\n\"3697990\";\"Coishco\";\"main\"\n\"3697990\";\"Coisco\";\"other\"\n\"3697990\";\"Coshco\";\"other\"\n\"3698105\";\"Chulucanas\";\"main\"\n\"3698105\";\"Chulucana\";\"other\"\n\"3698105\";\"Chulukanasa\";\"other\"\n\"3698105\";\"Чулуканаса\";\"other\"\n\"3698141\";\"Chota\";\"main\"\n\"3698176\";\"Chongoyape\";\"main\"\n\"3698194\";\"Chocope\";\"main\"\n\"3698304\";\"Chimbote\";\"main\"\n\"3698304\";\"Чимботе\";\"other\"\n\"3698350\";\"Chiclayo\";\"main\"\n\"3698350\";\"Chiklajo\";\"other\"\n\"3698350\";\"Chiklayu\";\"other\"\n\"3698350\";\"Ciclaium\";\"other\"\n\"3698350\";\"Ciklajas\";\"other\"\n\"3698350\";\"Čiklajas\";\"other\"\n\"3698350\";\"Чиклайо\";\"other\"\n\"3698359\";\"Chicama\";\"main\"\n\"3698390\";\"Chepén\";\"main\"\n\"3698390\";\"Chepen\";\"ascii\"\n\"3698414\";\"Chazuta\";\"main\"\n\"3698414\";\"Chasuta\";\"other\"\n\"3698540\";\"Chachapoyas\";\"main\"\n\"3698540\";\"Chachapoias\";\"other\"\n\"3698540\";\"Chachapuyas\";\"other\"\n\"3698608\";\"Celendín\";\"main\"\n\"3698608\";\"Celendin\";\"ascii\"\n\"3698658\";\"Catacaos\";\"main\"\n\"3698705\";\"Cascas\";\"main\"\n\"3698814\";\"Carhuaz\";\"main\"\n\"3698841\";\"Carás\";\"main\"\n\"3698841\";\"Caras\";\"ascii\"\n\"3698841\";\"Caraz\";\"other\"\n\"3698841\";\"Cavas\";\"other\"\n\"3698841\";\"Cavás\";\"other\"\n\"3699078\";\"Cajaruro\";\"main\"\n\"3699078\";\"Cajarura\";\"other\"\n\"3699088\";\"Cajamarca\";\"main\"\n\"3699088\";\"Caxamarca\";\"other\"\n\"3699088\";\"Kachamarka\";\"other\"\n\"3699088\";\"Kakhamarka\";\"other\"\n\"3699088\";\"Kasamarko\";\"other\"\n\"3699088\";\"Kaŝamarko\";\"other\"\n\"3699088\";\"Qasha Marka\";\"other\"\n\"3699088\";\"Qashamarka\";\"other\"\n\"3699088\";\"Кахамарка\";\"other\"\n\"3699095\";\"Cajabamba\";\"main\"\n\"3699223\";\"Buenos Aires\";\"main\"\n\"3699223\";\"Buenos Aires Hacienda\";\"other\"\n\"3699350\";\"Bernal\";\"main\"\n\"3699364\";\"Bellavista\";\"main\"\n\"3699366\";\"Bellavista\";\"main\"\n\"3699427\";\"Barranca\";\"main\"\n\"3699456\";\"Bambamarca\";\"main\"\n\"3699484\";\"Bagua Grande\";\"main\"\n\"3699502\";\"Ayabaca\";\"main\"\n\"3699544\";\"Ascope\";\"main\"\n\"3699832\";\"Aguas Verdes\";\"main\"\n\"3733380\";\"Campoverde\";\"main\"\n\"3814568\";\"La Breita\";\"main\"\n\"3814568\";\"La Brea\";\"other\"\n\"3814639\";\"Papayal\";\"main\"\n\"3818398\";\"Zarumilla\";\"main\"\n\"3925467\";\"Yura\";\"main\"\n\"3925467\";\"Balneario de Yura\";\"other\"\n\"3925476\";\"Yunguyo\";\"main\"\n\"3925749\";\"Yanaoca\";\"main\"\n\"3925809\";\"Yanahuanca\";\"main\"\n\"3925863\";\"Yanacancha\";\"main\"\n\"3925863\";\"Yanacocha\";\"other\"\n\"3925955\";\"Vizcachane\";\"main\"\n\"3926119\";\"Villa Tupac Amaru\";\"main\"\n\"3926120\";\"Villa Rica\";\"main\"\n\"3926328\";\"Végueta\";\"main\"\n\"3926328\";\"Vegueta\";\"ascii\"\n\"3926438\";\"Urubamba\";\"main\"\n\"3926462\";\"Urcos\";\"main\"\n\"3926776\";\"Tungasuca\";\"main\"\n\"3927023\";\"Totoral\";\"main\"\n\"3927158\";\"Torata\";\"main\"\n\"3927420\";\"Tinyahuarco\";\"main\"\n\"3927420\";\"Fundicion de Tinyahuarco\";\"other\"\n\"3927420\";\"Fundición de Tinyahuarco\";\"other\"\n\"3927420\";\"La Fundicion\";\"other\"\n\"3927420\";\"La Fundición\";\"other\"\n\"3927420\";\"Smelter\";\"other\"\n\"3927420\";\"Tinllahuarco\";\"other\"\n\"3927441\";\"Tinta\";\"main\"\n\"3927758\";\"Tarma\";\"main\"\n\"3927758\";\"Тарма\";\"other\"\n\"3927774\";\"Tarata\";\"main\"\n\"3927803\";\"Taquile\";\"main\"\n\"3927803\";\"Intika\";\"other\"\n\"3927803\";\"Isla de Taquili\";\"other\"\n\"3927803\";\"Taquila\";\"other\"\n\"3927942\";\"Tambopata\";\"main\"\n\"3927995\";\"Tambo\";\"main\"\n\"3928043\";\"Talavera\";\"main\"\n\"3928128\";\"Tacna\";\"main\"\n\"3928128\";\"Takna\";\"other\"\n\"3928128\";\"Taqna\";\"other\"\n\"3928128\";\"Такна\";\"other\"\n\"3928274\";\"Supe\";\"main\"\n\"3928365\";\"Subtanjalla\";\"main\"\n\"3928679\";\"Sicuani\";\"main\"\n\"3928691\";\"Sicaya\";\"main\"\n\"3928867\";\"Sayán\";\"main\"\n\"3928867\";\"Sayan\";\"ascii\"\n\"3928867\";\"San Jeronimo de Sayan\";\"other\"\n\"3928924\";\"Satipo\";\"main\"\n\"3928924\";\"San Francisco de Satipo\";\"other\"\n\"3928993\";\"San Vicente de Cañete\";\"main\"\n\"3928993\";\"San Vicente de Canete\";\"ascii\"\n\"3928993\";\"Canete\";\"other\"\n\"3928993\";\"Cañete\";\"other\"\n\"3928993\";\"Pueblo Nuevo\";\"other\"\n\"3929051\";\"Santiago\";\"main\"\n\"3929172\";\"Santa Maria\";\"main\"\n\"3929188\";\"Santa Lucía\";\"main\"\n\"3929188\";\"Santa Lucia\";\"ascii\"\n\"3929213\";\"Santa Eulalia\";\"main\"\n\"3929295\";\"Santa Ana\";\"main\"\n\"3929314\";\"San Ramón\";\"main\"\n\"3929314\";\"San Ramon\";\"ascii\"\n\"3929314\";\"San Roman\";\"other\"\n\"3929335\";\"San Pedro de Cajas\";\"main\"\n\"3929335\";\"Cajas\";\"other\"\n\"3929335\";\"San Pedro de Cacas\";\"other\"\n\"3929375\";\"San Pablo\";\"main\"\n\"3929389\";\"San Miguel de Cauri\";\"main\"\n\"3929403\";\"San Miguel\";\"main\"\n\"3929438\";\"San Luis\";\"main\"\n\"3929493\";\"San Juan Bautista\";\"main\"\n\"3929493\";\"Juan Bautista\";\"other\"\n\"3929493\";\"San Juan\";\"other\"\n\"3929607\";\"San Jerónimo\";\"main\"\n\"3929607\";\"San Jeronimo\";\"ascii\"\n\"3929607\";\"San Geronimo\";\"other\"\n\"3929611\";\"San Jerónimo\";\"main\"\n\"3929611\";\"San Jeronimo\";\"ascii\"\n\"3929611\";\"San Geronimo\";\"other\"\n\"3929611\";\"San Gerónimo\";\"other\"\n\"3929611\";\"San Jeronimo de Tunan\";\"other\"\n\"3929611\";\"San Jerónimo de Tunán\";\"other\"\n\"3929631\";\"San Isidro\";\"main\"\n\"3929768\";\"San Clemente\";\"main\"\n\"3929805\";\"San Bartolo\";\"main\"\n\"3929805\";\"Сан Бартоло\";\"other\"\n\"3929888\";\"San Agustin\";\"main\"\n\"3929888\";\"San Agustin de Cajas\";\"other\"\n\"3929888\";\"San Agustín\";\"other\"\n\"3929888\";\"San Agustín de Cajas\";\"other\"\n\"3930348\";\"Río Grande\";\"main\"\n\"3930348\";\"Rio Grande\";\"ascii\"\n\"3930382\";\"Ricardo Palma\";\"main\"\n\"3930817\";\"Quilmaná\";\"main\"\n\"3930817\";\"Quilmana\";\"ascii\"\n\"3930817\";\"Quillmana\";\"other\"\n\"3930871\";\"Quilahuani\";\"main\"\n\"3931137\";\"Putina\";\"main\"\n\"3931223\";\"Puquio\";\"main\"\n\"3931223\";\"Puqure\";\"other\"\n\"3931255\";\"Punta de Bombón\";\"main\"\n\"3931255\";\"Punta de Bombon\";\"ascii\"\n\"3931255\";\"Bombon\";\"other\"\n\"3931255\";\"La Punta\";\"other\"\n\"3931276\";\"Puno\";\"main\"\n\"3931276\";\"Punas\";\"other\"\n\"3931276\";\"Punum\";\"other\"\n\"3931276\";\"puno\";\"other\"\n\"3931276\";\"Пуно\";\"other\"\n\"3931276\";\"プーノ\";\"other\"\n\"3931427\";\"Pujocucho\";\"main\"\n\"3931453\";\"Puerto Supe\";\"main\"\n\"3931470\";\"Puerto Maldonado\";\"main\"\n\"3931470\";\"Maldonado\";\"other\"\n\"3931470\";\"Portus Maldonatus\";\"other\"\n\"3931470\";\"Puehrto-Mal'donado\";\"other\"\n\"3931470\";\"puerutomarudonado\";\"other\"\n\"3931470\";\"Пуэрто-Мальдонадо\";\"other\"\n\"3931470\";\"プエルトマルドナド\";\"other\"\n\"3931656\";\"Pucara\";\"main\"\n\"3932145\";\"Pisco\";\"main\"\n\"3932145\";\"Pisko\";\"other\"\n\"3932145\";\"Писко\";\"other\"\n\"3932166\";\"Pisac\";\"main\"\n\"3932166\";\"Pisak\";\"other\"\n\"3932166\";\"Писак\";\"other\"\n\"3932282\";\"Pilcomay\";\"main\"\n\"3932282\";\"Pilcomayo\";\"other\"\n\"3932502\";\"Perené\";\"main\"\n\"3932502\";\"Perene\";\"ascii\"\n\"3932502\";\"Hacienda Perene\";\"other\"\n\"3932502\";\"Hacienda Perené\";\"other\"\n\"3932687\";\"Pativilca\";\"main\"\n\"3933024\";\"Paramonga\";\"main\"\n\"3933024\";\"Hacienda Paramonga\";\"other\"\n\"3933024\";\"Paramonga Hacienda\";\"other\"\n\"3933024\";\"Parmonga\";\"other\"\n\"3933024\";\"Парамонга\";\"other\"\n\"3933058\";\"Paracas\";\"main\"\n\"3933058\";\"Parakas\";\"other\"\n\"3933058\";\"Паракас\";\"other\"\n\"3933104\";\"Pangoa\";\"main\"\n\"3933104\";\"Pangos\";\"other\"\n\"3933104\";\"Pongos-Casa\";\"other\"\n\"3933185\";\"Pampas\";\"main\"\n\"3933218\";\"Pampamarca\";\"main\"\n\"3933345\";\"Palpa\";\"main\"\n\"3933659\";\"Pacocha\";\"main\"\n\"3933659\";\"Pacoch\";\"other\"\n\"3933867\";\"Oyón\";\"main\"\n\"3933867\";\"Oyon\";\"ascii\"\n\"3933874\";\"Oxapampa\";\"main\"\n\"3933956\";\"Oropesa\";\"main\"\n\"3933981\";\"Orcotuna\";\"main\"\n\"3933986\";\"Orcopampa\";\"main\"\n\"3934055\";\"Ollantaytambo\";\"main\"\n\"3934055\";\"Ollantaitambo\";\"other\"\n\"3934055\";\"Ullantaytampu\";\"other\"\n\"3934055\";\"Ullantaytanpu\";\"other\"\n\"3934233\";\"Ñuñoa\";\"main\"\n\"3934233\";\"Nunoa\";\"ascii\"\n\"3934239\";\"Nuevo Imperial\";\"main\"\n\"3934290\";\"Nicolas de Pierola\";\"main\"\n\"3934356\";\"Nazca\";\"main\"\n\"3934356\";\"Nasca\";\"other\"\n\"3934356\";\"Naska\";\"other\"\n\"3934356\";\"Placa de Nazca\";\"other\"\n\"3934356\";\"Plaskowyz Nazca\";\"other\"\n\"3934356\";\"Provincia de Nazca\";\"other\"\n\"3934356\";\"Płaskowyż Nazca\";\"other\"\n\"3934356\";\"Наска\";\"other\"\n\"3934586\";\"Morococha\";\"main\"\n\"3934608\";\"Moquegua\";\"main\"\n\"3934608\";\"Mokegua\";\"other\"\n\"3934608\";\"Мокегуа\";\"other\"\n\"3934707\";\"Mollendo\";\"main\"\n\"3934707\";\"Mol'endo\";\"other\"\n\"3934707\";\"Мольендо\";\"other\"\n\"3935102\";\"Mazamari\";\"main\"\n\"3935102\";\"Mazamani\";\"other\"\n\"3935155\";\"Matucana\";\"main\"\n\"3935288\";\"Minas de Marcona\";\"main\"\n\"3935288\";\"Marcona\";\"other\"\n\"3935288\";\"Mina Marcona\";\"other\"\n\"3935379\";\"Maranganí\";\"main\"\n\"3935379\";\"Marangani\";\"ascii\"\n\"3935572\";\"Mala\";\"main\"\n\"3935624\";\"Macusani\";\"main\"\n\"3935969\";\"Los Aquijes\";\"main\"\n\"3936088\";\"Lluta\";\"main\"\n\"3936456\";\"Lima\";\"main\"\n\"3936456\";\"Limo\";\"other\"\n\"3936456\";\"Líma\";\"other\"\n\"3936456\";\"li ma\";\"other\"\n\"3936456\";\"lima\";\"other\"\n\"3936456\";\"lyma\";\"other\"\n\"3936456\";\"lymh\";\"other\"\n\"3936456\";\"rima\";\"other\"\n\"3936456\";\"Λίμα\";\"other\"\n\"3936456\";\"Лима\";\"other\"\n\"3936456\";\"Ліма\";\"other\"\n\"3936456\";\"לימה\";\"other\"\n\"3936456\";\"ليما\";\"other\"\n\"3936456\";\"لیما\";\"other\"\n\"3936456\";\"ลิมา\";\"other\"\n\"3936456\";\"ሊማ\";\"other\"\n\"3936456\";\"リマ\";\"other\"\n\"3936456\";\"利馬\";\"other\"\n\"3936456\";\"리마\";\"other\"\n\"3936541\";\"Layo\";\"main\"\n\"3936952\";\"La Oroya\";\"main\"\n\"3936952\";\"La-Oroja\";\"other\"\n\"3936952\";\"Oroya\";\"other\"\n\"3936952\";\"Ла-Оройа\";\"other\"\n\"3936963\";\"Langui\";\"main\"\n\"3936996\";\"Lampa\";\"main\"\n\"3937486\";\"Junín\";\"main\"\n\"3937486\";\"Junin\";\"ascii\"\n\"3937513\";\"Juliaca\";\"main\"\n\"3937516\";\"Juli\";\"main\"\n\"3937516\";\"Juliaca\";\"other\"\n\"3937733\";\"Jauja\";\"main\"\n\"3937733\";\"Khaukha\";\"other\"\n\"3937733\";\"Хауха\";\"other\"\n\"3937765\";\"Jatun Orcochiri\";\"main\"\n\"3938324\";\"Independencia\";\"main\"\n\"3938396\";\"Imperial\";\"main\"\n\"3938415\";\"Ilo\";\"main\"\n\"3938415\";\"New Ilo\";\"other\"\n\"3938415\";\"Pacocha\";\"other\"\n\"3938415\";\"Ило\";\"other\"\n\"3938451\";\"Ilave\";\"main\"\n\"3938451\";\"Ylave\";\"other\"\n\"3938455\";\"Ilabaya\";\"main\"\n\"3938527\";\"Ica\";\"main\"\n\"3938527\";\"Ika\";\"other\"\n\"3938527\";\"Ика\";\"other\"\n\"3938531\";\"Iberia\";\"main\"\n\"3938819\";\"Huayucachi\";\"main\"\n\"3939023\";\"Huaura\";\"main\"\n\"3939123\";\"Huasahuasi\";\"main\"\n\"3939168\";\"Huarmey\";\"main\"\n\"3939168\";\"Huarmei\";\"other\"\n\"3939168\";\"Puerto de Huarmey\";\"other\"\n\"3939285\";\"Huaral\";\"main\"\n\"3939386\";\"Huanta\";\"main\"\n\"3939459\";\"Huancayo\";\"main\"\n\"3939459\";\"Huancaium\";\"other\"\n\"3939459\";\"Huancaya\";\"other\"\n\"3939459\";\"Uankajo\";\"other\"\n\"3939459\";\"Wankayu\";\"other\"\n\"3939459\";\"Уанкайо\";\"other\"\n\"3939470\";\"Huancavelica\";\"main\"\n\"3939470\";\"Uankavelika\";\"other\"\n\"3939470\";\"Wankawillka\";\"other\"\n\"3939470\";\"Уанкавелика\";\"other\"\n\"3939531\";\"Hacienda Huancane\";\"main\"\n\"3939531\";\"Huancane Hacienda\";\"other\"\n\"3939761\";\"Hualmay\";\"main\"\n\"3940002\";\"Huacho\";\"main\"\n\"3940002\";\"Uacho\";\"other\"\n\"3940002\";\"Уачо\";\"other\"\n\"3941492\";\"Desaguadero\";\"main\"\n\"3941584\";\"Cusco\";\"main\"\n\"3941584\";\"Ciudad del Cuzco\";\"other\"\n\"3941584\";\"Cuscum\";\"other\"\n\"3941584\";\"Cuzco\";\"other\"\n\"3941584\";\"Kuskas\";\"other\"\n\"3941584\";\"Kusko\";\"other\"\n\"3941584\";\"Qusqu\";\"other\"\n\"3941584\";\"ku si ke\";\"other\"\n\"3941584\";\"kuseuko\";\"other\"\n\"3941584\";\"kusuko\";\"other\"\n\"3941584\";\"kwzkw\";\"other\"\n\"3941584\";\"qwsqw\";\"other\"\n\"3941584\";\"Куско\";\"other\"\n\"3941584\";\"קוסקו\";\"other\"\n\"3941584\";\"كوزكو\";\"other\"\n\"3941584\";\"کوزکو\";\"other\"\n\"3941584\";\"クスコ\";\"other\"\n\"3941584\";\"庫斯科\";\"other\"\n\"3941584\";\"쿠스코\";\"other\"\n\"3942259\";\"Coracora\";\"main\"\n\"3942548\";\"Concepción\";\"main\"\n\"3942548\";\"Concepcion\";\"ascii\"\n\"3942593\";\"Combapata\";\"main\"\n\"3942957\";\"Cocachacra\";\"main\"\n\"3942957\";\"Cocahacra\";\"other\"\n\"3943186\";\"Chupaca\";\"main\"\n\"3943423\";\"Chosica\";\"main\"\n\"3943423\";\"Nueva Chosica\";\"other\"\n\"3943626\";\"Chivay\";\"main\"\n\"3943699\";\"Chipispaya\";\"main\"\n\"3943789\";\"Chincha Alta\";\"main\"\n\"3943957\";\"Chilca\";\"main\"\n\"3943957\";\"Salinas\";\"other\"\n\"3944134\";\"Checca\";\"main\"\n\"3944134\";\"Checa\";\"other\"\n\"3944138\";\"Checacupe\";\"main\"\n\"3944138\";\"Checcacupe\";\"other\"\n\"3944179\";\"Chaupimarca\";\"main\"\n\"3944399\";\"Chancay\";\"main\"\n\"3944797\";\"Cerro de Pasco\";\"main\"\n\"3944797\";\"Collis Pasca\";\"other\"\n\"3944797\";\"Serro-de-Pasko\";\"other\"\n\"3944797\";\"Серро-де-Паско\";\"other\"\n\"3945466\";\"Carhuamayo\";\"main\"\n\"3945808\";\"Candarave\";\"main\"\n\"3945985\";\"Camaná\";\"main\"\n\"3945985\";\"Camana\";\"ascii\"\n\"3946083\";\"Callao\";\"main\"\n\"3946083\";\"El Callao\";\"other\"\n\"3946083\";\"Kaljao\";\"other\"\n\"3946083\";\"Kallao\";\"other\"\n\"3946083\";\"Kallaw\";\"other\"\n\"3946083\";\"Regio de Callao\";\"other\"\n\"3946083\";\"Regió de Callao\";\"other\"\n\"3946083\";\"ka ya e\";\"other\"\n\"3946083\";\"kayao\";\"other\"\n\"3946083\";\"Каляо\";\"other\"\n\"3946083\";\"カヤオ\";\"other\"\n\"3946083\";\"卡亞俄\";\"other\"\n\"3946147\";\"Caleta de Carquín\";\"main\"\n\"3946147\";\"Caleta de Carquin\";\"ascii\"\n\"3946147\";\"Carquin\";\"other\"\n\"3946147\";\"Carquín\";\"other\"\n\"3946177\";\"Calca\";\"main\"\n\"3946177\";\"Colca\";\"other\"\n\"3946820\";\"Barranca\";\"main\"\n\"3946937\";\"Azángaro\";\"main\"\n\"3946937\";\"Azangaro\";\"ascii\"\n\"3946937\";\"Asangaro\";\"other\"\n\"3946937\";\"Asángaro\";\"other\"\n\"3946962\";\"Ayna\";\"main\"\n\"3946985\";\"Ayaviri\";\"main\"\n\"3947019\";\"Ayacucho\";\"main\"\n\"3947019\";\"Ajakucho\";\"other\"\n\"3947019\";\"Wamanqa\";\"other\"\n\"3947019\";\"Аякучо\";\"other\"\n\"3947110\";\"Atuncolla\";\"main\"\n\"3947322\";\"Arequipa\";\"main\"\n\"3947322\";\"Arekipa\";\"other\"\n\"3947322\";\"Arekipo\";\"other\"\n\"3947322\";\"Arikipa\";\"other\"\n\"3947322\";\"Ariqipa\";\"other\"\n\"3947322\";\"arekipa\";\"other\"\n\"3947322\";\"Арекипа\";\"other\"\n\"3947322\";\"ארקיפה\";\"other\"\n\"3947322\";\"アレキパ\";\"other\"\n\"3947634\";\"Anta\";\"main\"\n\"3947740\";\"Andahuaylas\";\"main\"\n\"3947740\";\"Andahuailas\";\"other\"\n\"3947740\";\"Andahuavlas\";\"other\"\n\"3947956\";\"Ambo\";\"main\"\n\"3948448\";\"Acolla\";\"main\"\n\"3948613\";\"Acarí\";\"main\"\n\"3948613\";\"Acari\";\"ascii\"\n\"3948642\";\"Abancay\";\"main\"\n\"3948642\";\"Abancai\";\"other\"\n\"3948642\";\"Abancaius\";\"other\"\n\"3948642\";\"Abankaj\";\"other\"\n\"3948642\";\"Abankay\";\"other\"\n\"3948642\";\"Awankay\";\"other\"\n\"3948642\";\"a ban kai\";\"other\"\n\"3948642\";\"Абанкай\";\"other\"\n\"3948642\";\"阿班凯\";\"other\"\n\"3948689\";\"Mosoc Llacta\";\"main\"\n\"3948917\";\"Santo Tomas\";\"main\"\n\"3951506\";\"Huarancante\";\"main\"\n\"3951550\";\"Ccolo\";\"main\"\n\"3951691\";\"Huarichancara\";\"main\"\n\"3951757\";\"Llongasora\";\"main\"\n\"3951767\";\"Jayune\";\"main\"\n\"3952372\";\"Chuquitira\";\"main\"\n\"3952849\";\"Callanca\";\"main\"\n\"3952867\";\"Cullcuyre\";\"main\"\n\"3953301\";\"Cahuanuyo\";\"main\"\n\"3953343\";\"Ccaquiracunca\";\"main\"\n\"3953385\";\"Chignayhua\";\"main\"\n\"3953594\";\"Ccuntuma\";\"main\"\n\"3953687\";\"Lima Pampa\";\"main\"\n\"3953711\";\"Jayobamba\";\"main\"\n\"3953732\";\"Queromarca\";\"main\"\n\"3953762\";\"Qquea\";\"main\"\n\"3953918\";\"Conchopata\";\"main\"\n\"3954288\";\"Mosoc Cancha\";\"main\"\n\"3954291\";\"Huayna Alcalde\";\"main\"\n\"7535952\";\"San Pedro De Cachora\";\"main\"\n\"4020109\";\"Atuona\";\"main\"\n\"4020109\";\"Atouana\";\"other\"\n\"4020109\";\"Atuana\";\"other\"\n\"4030556\";\"Rikitea\";\"main\"\n\"4030556\";\"Rihirea\";\"other\"\n\"4033077\";\"Vaitape\";\"main\"\n\"4033094\";\"Vairao\";\"main\"\n\"4033094\";\"Port Vairao\";\"other\"\n\"4033094\";\"Vaieri\";\"other\"\n\"4033205\";\"Uturoa\";\"main\"\n\"4033295\";\"Tohautu\";\"main\"\n\"4033295\";\"Toahotu\";\"other\"\n\"4033356\";\"Tiarei\";\"main\"\n\"4033375\";\"Tevaitoa\";\"main\"\n\"4033375\";\"Peavitoa\";\"other\"\n\"4033375\";\"Te Avi Toa\";\"other\"\n\"4033514\";\"Teavaro\";\"main\"\n\"4033543\";\"Teahupoo\";\"main\"\n\"4033543\";\"Teahupo\";\"other\"\n\"4033543\";\"Teahupu\";\"other\"\n\"4033557\";\"Tautira\";\"main\"\n\"4033557\";\"Tautera\";\"other\"\n\"4033566\";\"Taunoa\";\"main\"\n\"4033566\";\"Papeari\";\"other\"\n\"4033779\";\"Punaauia\";\"main\"\n\"4033779\";\"Punaavia\";\"other\"\n\"4033792\";\"Pueu\";\"main\"\n\"4033792\";\"Pucu\";\"other\"\n\"4033838\";\"Pirae\";\"main\"\n\"4033910\";\"Papetoai\";\"main\"\n\"4033910\";\"Papeotai\";\"other\"\n\"4033936\";\"Papeete\";\"main\"\n\"4033936\";\"Pape'ete\";\"other\"\n\"4033936\";\"Papeehte\";\"other\"\n\"4033936\";\"Papeetė\";\"other\"\n\"4033936\";\"Papeiti\";\"other\"\n\"4033936\";\"Papete\";\"other\"\n\"4033936\";\"Pape’ete\";\"other\"\n\"4033936\";\"Papiete\";\"other\"\n\"4033936\";\"Papiti\";\"other\"\n\"4033936\";\"Vaiete\";\"other\"\n\"4033936\";\"papete\";\"other\"\n\"4033936\";\"papiete\";\"other\"\n\"4033936\";\"Папеете\";\"other\"\n\"4033936\";\"Папете\";\"other\"\n\"4033936\";\"Папеэте\";\"other\"\n\"4033936\";\"パペーテ\";\"other\"\n\"4033936\";\"파피에테\";\"other\"\n\"4033951\";\"Papao\";\"main\"\n\"4033951\";\"Papara\";\"other\"\n\"4033958\";\"Paopao\";\"main\"\n\"4034005\";\"Paea\";\"main\"\n\"4034005\";\"Paca\";\"other\"\n\"4034022\";\"Otutara\";\"main\"\n\"4034022\";\"Mataiea\";\"other\"\n\"4034188\";\"Moerai\";\"main\"\n\"4034307\";\"Mahina\";\"main\"\n\"4034402\";\"Hitiaa\";\"main\"\n\"4034402\";\"Hitia\";\"other\"\n\"4034438\";\"Haapiti\";\"main\"\n\"4034451\";\"Fitii\";\"main\"\n\"4034496\";\"Fare\";\"main\"\n\"4034496\";\"Fane\";\"other\"\n\"4034496\";\"Fané\";\"other\"\n\"4034496\";\"Owharre\";\"other\"\n\"4034548\";\"Faaone\";\"main\"\n\"4034548\";\"Faone\";\"other\"\n\"4034551\";\"Faanui\";\"main\"\n\"4034551\";\"Fanui\";\"other\"\n\"4034561\";\"Faaa\";\"main\"\n\"4034561\";\"Torea\";\"other\"\n\"4034636\";\"Arue\";\"main\"\n\"4034636\";\"Arve\";\"other\"\n\"4034688\";\"Anau\";\"main\"\n\"4034741\";\"Afareaitu\";\"main\"\n\"4034745\";\"Afaahiti\";\"main\"\n\"2083537\";\"Wewak\";\"main\"\n\"2083653\";\"Wau\";\"main\"\n\"2084246\";\"Wabag\";\"main\"\n\"2084442\";\"Vanimo\";\"main\"\n\"2084442\";\"Angriffs-Hafen\";\"other\"\n\"2084442\";\"Attack Bay\";\"other\"\n\"2084442\";\"Vanimo Government Station\";\"other\"\n\"2084442\";\"Wanimo\";\"other\"\n\"2087894\";\"Rabaul\";\"main\"\n\"2087894\";\"Exung\";\"other\"\n\"2087894\";\"Nankai Shi\";\"other\"\n\"2087894\";\"Simpson Harbour\";\"other\"\n\"2087894\";\"Simpson-Hafen\";\"other\"\n\"2087894\";\"Simpsonhafen\";\"other\"\n\"2087894\";\"la bao er\";\"other\"\n\"2087894\";\"labaul\";\"other\"\n\"2087894\";\"rabauru\";\"other\"\n\"2087894\";\"ラバウル\";\"other\"\n\"2087894\";\"拉包爾\";\"other\"\n\"2087894\";\"라바울\";\"other\"\n\"2088122\";\"Port Moresby\";\"main\"\n\"2088122\";\"Port Moresmpi\";\"other\"\n\"2088122\";\"Port Morsbis\";\"other\"\n\"2088122\";\"Port Morzbi\";\"other\"\n\"2088122\";\"Port-Morsbi\";\"other\"\n\"2088122\";\"Pot Mosbi\";\"other\"\n\"2088122\";\"mo er zi bi gang\";\"other\"\n\"2088122\";\"poteu moseubi\";\"other\"\n\"2088122\";\"potomoresubi\";\"other\"\n\"2088122\";\"pwrt mwrsby\";\"other\"\n\"2088122\";\"Πορτ Μόρεσμπι\";\"other\"\n\"2088122\";\"Порт Морзби\";\"other\"\n\"2088122\";\"Порт-Морсби\";\"other\"\n\"2088122\";\"פורט מורסבי\";\"other\"\n\"2088122\";\"پورت مورسبی\";\"other\"\n\"2088122\";\"ፖርት ሞርስቢ\";\"other\"\n\"2088122\";\"ポートモレスビー\";\"other\"\n\"2088122\";\"莫尔兹比港\";\"other\"\n\"2088122\";\"포트 모스비\";\"other\"\n\"2088143\";\"Porgera\";\"main\"\n\"2088163\";\"Popondetta\";\"main\"\n\"2088163\";\"Popendetta\";\"other\"\n\"2088163\";\"Попондетта\";\"other\"\n\"2088659\";\"Panguna\";\"main\"\n\"2090021\";\"Namatanai\";\"main\"\n\"2090409\";\"Mount Hagen\";\"main\"\n\"2090409\";\"Hagen\";\"other\"\n\"2090495\";\"Morehead\";\"main\"\n\"2090990\";\"Mendi\";\"main\"\n\"2090990\";\"Менди\";\"other\"\n\"2091996\";\"Madang\";\"main\"\n\"2091996\";\"Friedrich Wilhelms Harbour\";\"other\"\n\"2091996\";\"Friedrich-Wilhelmshafen\";\"other\"\n\"2091996\";\"Маданг\";\"other\"\n\"2092164\";\"Lorengau\";\"main\"\n\"2092164\";\"Leronguan\";\"other\"\n\"2092164\";\"Lorangau\";\"other\"\n\"2092164\";\"Lorungau\";\"other\"\n\"2092164\";\"Losa\";\"other\"\n\"2092164\";\"Rorengau\";\"other\"\n\"2092740\";\"Lae\";\"main\"\n\"2092740\";\"Laeh\";\"other\"\n\"2092740\";\"Лаэ\";\"other\"\n\"2093059\";\"Kundiawa\";\"main\"\n\"2093685\";\"Kokopo\";\"main\"\n\"2093691\";\"Kokoda\";\"main\"\n\"2093691\";\"Kodoka\";\"other\"\n\"2093846\";\"Kiunga\";\"main\"\n\"2093967\";\"Kimbe\";\"main\"\n\"2094027\";\"Kieta\";\"main\"\n\"2094144\";\"Kerema\";\"main\"\n\"2094342\";\"Kavieng\";\"main\"\n\"2094342\";\"Kaewieng\";\"other\"\n\"2094342\";\"Kawieng\";\"other\"\n\"2094342\";\"Käwieng\";\"other\"\n\"2094746\";\"Kandrian\";\"main\"\n\"2094746\";\"Kandrian Police Post\";\"other\"\n\"2095038\";\"Kainantu\";\"main\"\n\"2095925\";\"Ialibu\";\"main\"\n\"2096742\";\"Goroka\";\"main\"\n\"2096742\";\"Garoka\";\"other\"\n\"2096742\";\"New Garoka\";\"other\"\n\"2097418\";\"Finschhafen\";\"main\"\n\"2097418\";\"Finschafen\";\"other\"\n\"2097418\";\"Finschaven\";\"other\"\n\"2098329\";\"Daru\";\"main\"\n\"2098329\";\"Daru Government Station\";\"other\"\n\"2098869\";\"Bulolo\";\"main\"\n\"2098869\";\"Bubolo\";\"other\"\n\"2100633\";\"Arawa\";\"main\"\n\"2100633\";\"Arava\";\"other\"\n\"2100633\";\"Арава\";\"other\"\n\"2100765\";\"Angoram\";\"main\"\n\"2100765\";\"Angorum\";\"other\"\n\"2100933\";\"Ambunti\";\"main\"\n\"2101169\";\"Aitape\";\"main\"\n\"2101169\";\"Berlin Harbour\";\"other\"\n\"2101169\";\"Berlin Reede\";\"other\"\n\"2101169\";\"Berlinhafen\";\"other\"\n\"2101169\";\"Bodinhafen\";\"other\"\n\"2101169\";\"Eitape\";\"other\"\n\"2132606\";\"Samarai\";\"main\"\n\"2132606\";\"Samarar\";\"other\"\n\"2132606\";\"Samaria\";\"other\"\n\"1679384\";\"Zarraga\";\"main\"\n\"1679384\";\"Zarrago\";\"other\"\n\"1679386\";\"Zaragoza\";\"main\"\n\"1679423\";\"Zamboanguita\";\"main\"\n\"1679423\";\"Zamboanguit\";\"other\"\n\"1679432\";\"Zamboanga\";\"main\"\n\"1679432\";\"Burleigh School\";\"other\"\n\"1679432\";\"Zamboanga City\";\"other\"\n\"1679432\";\"Замбоанга\";\"other\"\n\"1679446\";\"Yumbing\";\"main\"\n\"1679452\";\"Yubo\";\"main\"\n\"1679464\";\"Yook\";\"main\"\n\"1679464\";\"Yooc\";\"other\"\n\"1679476\";\"Ilaya\";\"main\"\n\"1679476\";\"Ylaya\";\"other\"\n\"1679488\";\"Yeban\";\"main\"\n\"1679558\";\"Wright\";\"main\"\n\"1679569\";\"Wines\";\"main\"\n\"1679645\";\"Wawa\";\"main\"\n\"1679648\";\"Wawa\";\"main\"\n\"1679648\";\"Uaua\";\"other\"\n\"1679649\";\"Wawa\";\"main\"\n\"1679678\";\"Wao\";\"main\"\n\"1679689\";\"Wañgan\";\"main\"\n\"1679689\";\"Wangan\";\"ascii\"\n\"1679755\";\"Vizal Santo Niño\";\"main\"\n\"1679755\";\"Vizal Santo Nino\";\"ascii\"\n\"1679756\";\"Vizal San Pablo\";\"main\"\n\"1679756\";\"Bisal\";\"other\"\n\"1679756\";\"Visal\";\"other\"\n\"1679766\";\"Vito\";\"main\"\n\"1679776\";\"Vitali\";\"main\"\n\"1679776\";\"Tali\";\"other\"\n\"1679782\";\"Vista Alegre\";\"main\"\n\"1679796\";\"Viriato\";\"main\"\n\"1679796\";\"Veriate\";\"other\"\n\"1679796\";\"Virato\";\"other\"\n\"1679802\";\"Virac\";\"main\"\n\"1679811\";\"Vinzons\";\"main\"\n\"1679811\";\"Indan\";\"other\"\n\"1679815\";\"Vintar\";\"main\"\n\"1679845\";\"Villasis\";\"main\"\n\"1679850\";\"Villarosa\";\"main\"\n\"1679856\";\"Villareal\";\"main\"\n\"1679868\";\"Villanueva\";\"main\"\n\"1679873\";\"Villanueva\";\"main\"\n\"1679879\";\"Villamor\";\"main\"\n\"1679893\";\"Villa Isla\";\"main\"\n\"1679901\";\"Villahermosa\";\"main\"\n\"1679901\";\"Hemosa\";\"other\"\n\"1679945\";\"Villaba\";\"main\"\n\"1679954\";\"Villa Aglipay\";\"main\"\n\"1679964\";\"Vigo\";\"main\"\n\"1679965\";\"Viga\";\"main\"\n\"1679965\";\"Vigo\";\"other\"\n\"1679980\";\"Vigan\";\"main\"\n\"1679992\";\"Biga\";\"main\"\n\"1679992\";\"Bigaa\";\"other\"\n\"1679992\";\"Viga\";\"other\"\n\"1679992\";\"Vigo\";\"other\"\n\"1679993\";\"Viga\";\"main\"\n\"1680007\";\"Victorias City\";\"main\"\n\"1680007\";\"Dakbayan sa Victorias\";\"other\"\n\"1680007\";\"Syudad han Victorias\";\"other\"\n\"1680007\";\"Victorias\";\"other\"\n\"1680018\";\"Victoria\";\"main\"\n\"1680018\";\"Nanhaya\";\"other\"\n\"1680018\";\"Viktorija\";\"other\"\n\"1680018\";\"Виктория\";\"other\"\n\"1680019\";\"Victoria\";\"main\"\n\"1680021\";\"Victoria\";\"main\"\n\"1680021\";\"Viktorija\";\"other\"\n\"1680021\";\"Виктория\";\"other\"\n\"1680036\";\"Biay\";\"main\"\n\"1680036\";\"Viay\";\"other\"\n\"1680040\";\"Veruela\";\"main\"\n\"1680075\";\"Vargas\";\"main\"\n\"1680092\";\"Vallehermoso\";\"main\"\n\"1680093\";\"Valle Hermoso\";\"main\"\n\"1680106\";\"Valencia\";\"main\"\n\"1680107\";\"East Valencia\";\"main\"\n\"1680107\";\"South Valencia\";\"other\"\n\"1680107\";\"Valencia\";\"other\"\n\"1680110\";\"Valencia\";\"main\"\n\"1680111\";\"Valencia\";\"main\"\n\"1680112\";\"Valencia\";\"main\"\n\"1680112\";\"Valensija\";\"other\"\n\"1680112\";\"Валенсия\";\"other\"\n\"1680116\";\"Valencia\";\"main\"\n\"1680116\";\"Valensija\";\"other\"\n\"1680116\";\"Валенсия\";\"other\"\n\"1680125\";\"Valderrama\";\"main\"\n\"1680125\";\"Valderama\";\"other\"\n\"1680134\";\"Uyong\";\"main\"\n\"1680134\";\"Oyong\";\"other\"\n\"1680139\";\"Uyaan\";\"main\"\n\"1680172\";\"Uson\";\"main\"\n\"1680189\";\"Usab\";\"main\"\n\"1680197\";\"Urdaneta\";\"main\"\n\"1680200\";\"Urbiztondo\";\"main\"\n\"1680200\";\"Urbistondo\";\"other\"\n\"1680211\";\"Upper San Mateo\";\"main\"\n\"1680216\";\"Upper Klinan\";\"main\"\n\"1680226\";\"Upig\";\"main\"\n\"1680226\";\"Upeg\";\"other\"\n\"1680232\";\"Upi\";\"main\"\n\"1680232\";\"Upi Norte\";\"other\"\n\"1680232\";\"Upie\";\"other\"\n\"1680233\";\"Upi\";\"main\"\n\"1680233\";\"North Upi\";\"other\"\n\"1680233\";\"Upi Nuro\";\"other\"\n\"1680243\";\"Unzad\";\"main\"\n\"1680243\";\"Unzao\";\"other\"\n\"1680250\";\"Unisan\";\"main\"\n\"1680260\";\"Union\";\"main\"\n\"1680260\";\"Inyauan\";\"other\"\n\"1680262\";\"Union\";\"main\"\n\"1680266\";\"Union\";\"main\"\n\"1680267\";\"Union\";\"main\"\n\"1680272\";\"Unidos\";\"main\"\n\"1680275\";\"Unidos\";\"main\"\n\"1680276\";\"Unidad\";\"main\"\n\"1680285\";\"Ungca\";\"main\"\n\"1680285\";\"Ungka\";\"other\"\n\"1680312\";\"Umiray\";\"main\"\n\"1680312\";\"Umirey\";\"other\"\n\"1680313\";\"Umingan\";\"main\"\n\"1680331\";\"Umanday\";\"main\"\n\"1680342\";\"Umaganhan\";\"main\"\n\"1680342\";\"Omaganhan\";\"other\"\n\"1680344\";\"Umabay\";\"main\"\n\"1680367\";\"Uling\";\"main\"\n\"1680399\";\"Ula\";\"main\"\n\"1680428\";\"Ugad\";\"main\"\n\"1680430\";\"Ugac\";\"main\"\n\"1680430\";\"Ugoc\";\"other\"\n\"1680439\";\"Uddiawan\";\"main\"\n\"1680441\";\"Odala\";\"main\"\n\"1680441\";\"Udalo\";\"other\"\n\"1680475\";\"Ubay\";\"main\"\n\"1680505\";\"Ualog\";\"main\"\n\"1680512\";\"Uacon\";\"main\"\n\"1680531\";\"Tuyom\";\"main\"\n\"1680531\";\"Tuyum\";\"other\"\n\"1680548\";\"Tuyan\";\"main\"\n\"1680554\";\"Tuy\";\"main\"\n\"1680566\";\"Tutubigan\";\"main\"\n\"1680566\";\"Totubigan\";\"other\"\n\"1680566\";\"Tutugiban\";\"other\"\n\"1680570\";\"Tutay\";\"main\"\n\"1680570\";\"Tulay\";\"other\"\n\"1680604\";\"Tupsan\";\"main\"\n\"1680604\";\"Tupsan Pequeno\";\"other\"\n\"1680613\";\"Tupi\";\"main\"\n\"1680623\";\"Tupang\";\"main\"\n\"1680636\";\"Tuod\";\"main\"\n\"1680656\";\"Tungol\";\"main\"\n\"1680656\";\"Tunggol\";\"other\"\n\"1680677\";\"Tungawan\";\"main\"\n\"1680677\";\"Lower Tungawan\";\"other\"\n\"1680677\";\"Tungauan\";\"other\"\n\"1680687\";\"Tungao\";\"main\"\n\"1680694\";\"Tunga\";\"main\"\n\"1680735\";\"Tumcon Ilawod\";\"main\"\n\"1680735\";\"Tumcon\";\"other\"\n\"1680735\";\"Tumcon Ilauod\";\"other\"\n\"1680745\";\"Tumbagaan\";\"main\"\n\"1680745\";\"Leug Tumbagaan\";\"other\"\n\"1680753\";\"Tumauini\";\"main\"\n\"1680763\";\"Tumarbong\";\"main\"\n\"1680794\";\"Tumalim\";\"main\"\n\"1680797\";\"Tumalaytay\";\"main\"\n\"1680820\";\"Tulunan\";\"main\"\n\"1680820\";\"Tolonan\";\"other\"\n\"1680844\";\"Tuli\";\"main\"\n\"1680848\";\"Tulay na Lupa\";\"main\"\n\"1680855\";\"Tulay\";\"main\"\n\"1680885\";\"Tucuran\";\"main\"\n\"1680885\";\"Tukuran\";\"other\"\n\"1680913\";\"Tuhian\";\"main\"\n\"1680913\";\"Tuquian\";\"other\"\n\"1680932\";\"Tuguegarao City\";\"main\"\n\"1680932\";\"Lungsod ng Tuguegarao\";\"other\"\n\"1680932\";\"Tuguegarao\";\"other\"\n\"1680932\";\"Tuguegaro\";\"other\"\n\"1680942\";\"Tugos\";\"main\"\n\"1680954\";\"Tugdan\";\"main\"\n\"1680962\";\"Tugbong\";\"main\"\n\"1681006\";\"Tuganay\";\"main\"\n\"1681022\";\"Tuding\";\"main\"\n\"1681022\";\"Tocding\";\"other\"\n\"1681022\";\"Toeding\";\"other\"\n\"1681026\";\"Tudela\";\"main\"\n\"1681038\";\"Tucdao\";\"main\"\n\"1681038\";\"Tucdaw\";\"other\"\n\"1681061\";\"Tuburan\";\"main\"\n\"1681079\";\"Tuburan\";\"main\"\n\"1681079\";\"Tuburan Proper\";\"other\"\n\"1681128\";\"Tubod-dugoan\";\"main\"\n\"1681128\";\"Tubod\";\"other\"\n\"1681138\";\"Tubod\";\"main\"\n\"1681138\";\"Tubud\";\"other\"\n\"1681149\";\"Tubod\";\"main\"\n\"1681149\";\"Tubud\";\"other\"\n\"1681150\";\"Tubod\";\"main\"\n\"1681162\";\"Tubli\";\"main\"\n\"1681167\";\"Tublay\";\"main\"\n\"1681182\";\"Tibigan\";\"main\"\n\"1681182\";\"Tubigon\";\"other\"\n\"1681217\";\"Tubigan\";\"main\"\n\"1681220\";\"Tubigagmanoc\";\"main\"\n\"1681220\";\"Bubigagmanok\";\"other\"\n\"1681220\";\"Tibugagmanok\";\"other\"\n\"1681220\";\"Tubigagmanak\";\"other\"\n\"1681220\";\"Tubigagmanok\";\"other\"\n\"1681220\";\"Tubigmanoc\";\"other\"\n\"1681220\";\"Tubigmanok\";\"other\"\n\"1681232\";\"Tubay\";\"main\"\n\"1681249\";\"Tuban\";\"main\"\n\"1681250\";\"Tuban\";\"main\"\n\"1681257\";\"Tubalan\";\"main\"\n\"1681257\";\"Tabalan\";\"other\"\n\"1681259\";\"Tubajon\";\"main\"\n\"1681284\";\"Tuao\";\"main\"\n\"1681285\";\"Tuao\";\"main\"\n\"1681285\";\"Tuao Norte\";\"other\"\n\"1681285\";\"Tuao Sur\";\"other\"\n\"1681313\";\"Sabang\";\"main\"\n\"1681313\";\"Trinidad\";\"other\"\n\"1681316\";\"Trinidad\";\"main\"\n\"1681333\";\"Trento\";\"main\"\n\"1681346\";\"Trapiche\";\"main\"\n\"1681346\";\"Trapichi\";\"other\"\n\"1681357\";\"Tranca\";\"main\"\n\"1681359\";\"Tran\";\"main\"\n\"1681377\";\"Totolan\";\"main\"\n\"1681377\";\"Tutolan\";\"other\"\n\"1681388\";\"Tortosa\";\"main\"\n\"1681388\";\"Tortoso\";\"other\"\n\"1681392\";\"Torrijos\";\"main\"\n\"1681404\";\"Toritori\";\"main\"\n\"1681419\";\"Topdac\";\"main\"\n\"1681419\";\"Topdak\";\"other\"\n\"1681428\";\"Toong\";\"main\"\n\"1681464\";\"Tongouson\";\"main\"\n\"1681464\";\"Tong-Gusong\";\"other\"\n\"1681464\";\"Tungosong\";\"other\"\n\"1681499\";\"Tondol\";\"main\"\n\"1681499\";\"Tondul\";\"other\"\n\"1681501\";\"Tondod\";\"main\"\n\"1681501\";\"Tondad\";\"other\"\n\"1681501\";\"Tundod\";\"other\"\n\"1681526\";\"Tominhao\";\"main\"\n\"1681526\";\"Tominjao\";\"other\"\n\"1681526\";\"Tuminhau\";\"other\"\n\"1681526\";\"Tuminhaw\";\"other\"\n\"1681529\";\"Tomingad\";\"main\"\n\"1681537\";\"Tombod\";\"main\"\n\"1681543\";\"Tamayong\";\"main\"\n\"1681543\";\"Tomayong\";\"other\"\n\"1681544\";\"Tomas Oppus\";\"main\"\n\"1681544\";\"San Isidro\";\"other\"\n\"1681563\";\"Tomado\";\"main\"\n\"1681602\";\"Toledo\";\"main\"\n\"1681602\";\"Ciudad ti Toledo\";\"other\"\n\"1681602\";\"Dakbayan sa Talisay\";\"other\"\n\"1681602\";\"Toledo City\";\"other\"\n\"1681602\";\"Толедо\";\"other\"\n\"1681630\";\"Tocok\";\"main\"\n\"1681632\";\"Tococ East\";\"main\"\n\"1681632\";\"Tococ\";\"other\"\n\"1681652\";\"Tobuan\";\"main\"\n\"1681652\";\"Tubuan\";\"other\"\n\"1681655\";\"Taboy Norte\";\"main\"\n\"1681655\";\"Taboy\";\"other\"\n\"1681655\";\"Toboy\";\"other\"\n\"1681656\";\"Toboso\";\"main\"\n\"1681656\";\"Escalante\";\"other\"\n\"1681676\";\"Tiwi\";\"main\"\n\"1681677\";\"Tiwi\";\"main\"\n\"1681689\";\"Titay\";\"main\"\n\"1681689\";\"Tifay\";\"other\"\n\"1681699\";\"Tiring\";\"main\"\n\"1681715\";\"Tipo-Tipo\";\"main\"\n\"1681730\";\"Tipolo\";\"main\"\n\"1681743\";\"Tipaz\";\"main\"\n\"1681743\";\"Tipas\";\"other\"\n\"1681745\";\"Tiparak\";\"main\"\n\"1681759\";\"Tinutulan\";\"main\"\n\"1681766\";\"Tinongan\";\"main\"\n\"1681766\";\"Tinungan\";\"other\"\n\"1681777\";\"Tinubuan\";\"main\"\n\"1681777\";\"Tinubdan\";\"other\"\n\"1681782\";\"Tinoto\";\"main\"\n\"1681782\";\"Tinto\";\"other\"\n\"1681798\";\"Tinogboc\";\"main\"\n\"1681798\";\"Tinabooc\";\"other\"\n\"1681798\";\"Tinaboot\";\"other\"\n\"1681798\";\"Tinobog\";\"other\"\n\"1681820\";\"Tiniguiban\";\"main\"\n\"1681820\";\"Teneguiban\";\"other\"\n\"1681830\";\"Brgy. Tinigao, Kalibo\";\"main\"\n\"1681843\";\"Tingloy\";\"main\"\n\"1681843\";\"Tinglay\";\"other\"\n\"1681843\";\"Tingluy\";\"other\"\n\"1681873\";\"Tindog\";\"main\"\n\"1681873\";\"Tindog Norte\";\"other\"\n\"1681873\";\"Tindug\";\"other\"\n\"1681887\";\"Tinawagan\";\"main\"\n\"1681887\";\"Tinalwagan\";\"other\"\n\"1681907\";\"Tinaogan\";\"main\"\n\"1681907\";\"Tinoongan\";\"other\"\n\"1681920\";\"Tinang\";\"main\"\n\"1681927\";\"Tinampo\";\"main\"\n\"1681931\";\"Tinamnan\";\"main\"\n\"1681934\";\"Tinambacan\";\"main\"\n\"1681936\";\"Tinambac\";\"main\"\n\"1681943\";\"Tinalmud\";\"main\"\n\"1681980\";\"Tinago\";\"main\"\n\"1681997\";\"Tinagacan\";\"main\"\n\"1681997\";\"Tinagakan\";\"other\"\n\"1681997\";\"Tinagaken\";\"other\"\n\"1682026\";\"Tinaan\";\"main\"\n\"1682044\";\"Timpas\";\"main\"\n\"1682048\";\"Timonan\";\"main\"\n\"1682098\";\"Tiling\";\"main\"\n\"1682100\";\"Tilik\";\"main\"\n\"1682100\";\"Tilic\";\"other\"\n\"1682100\";\"Tilig\";\"other\"\n\"1682100\";\"Titik\";\"other\"\n\"1682122\";\"Ticala-an\";\"main\"\n\"1682122\";\"Tikalaan\";\"other\"\n\"1682146\";\"Tigum\";\"main\"\n\"1682151\";\"Tiguisan\";\"main\"\n\"1682155\";\"Tiguion\";\"main\"\n\"1682164\";\"Tiguib\";\"main\"\n\"1682166\";\"Tigui\";\"main\"\n\"1682166\";\"Tigiui\";\"other\"\n\"1682166\";\"Tiguion\";\"other\"\n\"1682166\";\"Tigwi\";\"other\"\n\"1682171\";\"Tigtabon\";\"main\"\n\"1682171\";\"Tabtabon\";\"other\"\n\"1682171\";\"Tagtabon\";\"other\"\n\"1682180\";\"Tignuan\";\"main\"\n\"1682180\";\"Tignoan\";\"other\"\n\"1682182\";\"Tignapalan\";\"main\"\n\"1682182\";\"Tignapoloan\";\"other\"\n\"1682196\";\"Tiglawigan\";\"main\"\n\"1682196\";\"Tiglauigan\";\"other\"\n\"1682219\";\"Tigbinan\";\"main\"\n\"1682250\";\"Tigbauan\";\"main\"\n\"1682250\";\"Tigbuan\";\"other\"\n\"1682262\";\"Tigbao\";\"main\"\n\"1682262\";\"Tigbaw\";\"other\"\n\"1682263\";\"Tigbaw\";\"main\"\n\"1682263\";\"Tigbao\";\"other\"\n\"1682275\";\"Tigbao\";\"main\"\n\"1682301\";\"Tigaon\";\"main\"\n\"1682304\";\"Tigao\";\"main\"\n\"1682315\";\"Tiep\";\"main\"\n\"1682321\";\"Tidman\";\"main\"\n\"1682393\";\"Tiblawan\";\"main\"\n\"1682393\";\"Ascension\";\"other\"\n\"1682393\";\"Tiblauan\";\"other\"\n\"1682405\";\"Tibiao\";\"main\"\n\"1682421\";\"Tibanbang\";\"main\"\n\"1682421\";\"Tibanban\";\"other\"\n\"1682428\";\"Tibagon\";\"main\"\n\"1682442\";\"Tiaong\";\"main\"\n\"1682472\";\"Ternate\";\"main\"\n\"1682476\";\"Teresita\";\"main\"\n\"1682478\";\"Teresa\";\"main\"\n\"1682478\";\"Tereza\";\"other\"\n\"1682478\";\"Тереза\";\"other\"\n\"1682528\";\"Telbang\";\"main\"\n\"1682535\";\"Telafas\";\"main\"\n\"1682537\";\"Telabastagan\";\"main\"\n\"1682559\";\"Tebag\";\"main\"\n\"1682562\";\"Taywanak\";\"main\"\n\"1682570\";\"Tayum\";\"main\"\n\"1682574\";\"Tayug\";\"main\"\n\"1682576\";\"Tayud\";\"main\"\n\"1682594\";\"Taytayan\";\"main\"\n\"1682596\";\"Taytayan\";\"main\"\n\"1682596\";\"San Antonio\";\"other\"\n\"1682598\";\"Taytay\";\"main\"\n\"1682600\";\"Taytay\";\"main\"\n\"1682606\";\"Taytay\";\"main\"\n\"1682613\";\"Taytay\";\"main\"\n\"1682618\";\"Taysan\";\"main\"\n\"1682649\";\"Tayaman\";\"main\"\n\"1682653\";\"Tayabo\";\"main\"\n\"1682653\";\"Rosaldo\";\"other\"\n\"1682659\";\"Tayabas\";\"main\"\n\"1682689\";\"Tawan tawan\";\"main\"\n\"1682694\";\"Tawagan\";\"main\"\n\"1682694\";\"Tanagun\";\"other\"\n\"1682694\";\"Tawagan Sur\";\"other\"\n\"1682699\";\"Taviran\";\"main\"\n\"1682699\";\"Tariran\";\"other\"\n\"1682715\";\"Taungo\";\"main\"\n\"1682715\";\"Taungon\";\"other\"\n\"1682715\";\"Taungu\";\"other\"\n\"1682732\";\"Taiwala\";\"main\"\n\"1682732\";\"Tauala\";\"other\"\n\"1682732\";\"Tawala\";\"other\"\n\"1682775\";\"Tarusan\";\"main\"\n\"1682787\";\"Tartaro\";\"main\"\n\"1682787\";\"Taltaro\";\"other\"\n\"1682792\";\"Tarragona\";\"main\"\n\"1682798\";\"Tarong\";\"main\"\n\"1682812\";\"Tarlac\";\"main\"\n\"1682819\";\"Tariric\";\"main\"\n\"1682826\";\"Tariji\";\"main\"\n\"1682844\";\"Tarangnan\";\"main\"\n\"1682844\";\"Taranga\";\"other\"\n\"1682844\";\"Tarangan\";\"other\"\n\"1682876\";\"Tara\";\"main\"\n\"1682913\";\"Tapon\";\"main\"\n\"1682914\";\"Tapon\";\"main\"\n\"1682934\";\"Tapilon\";\"main\"\n\"1682934\";\"Tablon\";\"other\"\n\"1682936\";\"Tapikan\";\"main\"\n\"1682951\";\"Tapia\";\"main\"\n\"1682958\";\"Tapel\";\"main\"\n\"1682958\";\"Tapal\";\"other\"\n\"1682960\";\"Tapas\";\"main\"\n\"1682960\";\"Tapaz\";\"other\"\n\"1682966\";\"Tapayan\";\"main\"\n\"1683013\";\"Tanza\";\"main\"\n\"1683016\";\"Tanza\";\"main\"\n\"1683018\";\"Tanza\";\"main\"\n\"1683037\";\"Tantangan\";\"main\"\n\"1683057\";\"Tangke\";\"main\"\n\"1683057\";\"Tanke\";\"other\"\n\"1683057\";\"Tanque\";\"other\"\n\"1683066\";\"Tanolong\";\"main\"\n\"1683080\";\"Tanlad\";\"main\"\n\"1683080\";\"Tanglad\";\"other\"\n\"1683088\";\"Tanjay\";\"main\"\n\"1683116\";\"Tangub\";\"main\"\n\"1683116\";\"Tangob\";\"other\"\n\"1683116\";\"Tangub City\";\"other\"\n\"1683140\";\"Tañgo\";\"main\"\n\"1683140\";\"Tango\";\"ascii\"\n\"1683145\";\"Tangnan\";\"main\"\n\"1683231\";\"Tangal\";\"main\"\n\"1683231\";\"Tangol\";\"other\"\n\"1683280\";\"Tandoc\";\"main\"\n\"1683293\";\"Tandayag\";\"main\"\n\"1683302\";\"Tandag\";\"main\"\n\"1683319\";\"Tanay\";\"main\"\n\"1683340\";\"Tanauan\";\"main\"\n\"1683342\";\"Tanauan\";\"main\"\n\"1683385\";\"Tamugan\";\"main\"\n\"1683407\";\"Tampocon\";\"main\"\n\"1683411\";\"Tampilisan\";\"main\"\n\"1683418\";\"Tampayan\";\"main\"\n\"1683425\";\"Tamparan\";\"main\"\n\"1683430\";\"Tampakan\";\"main\"\n\"1683430\";\"Tampacan\";\"other\"\n\"1683433\";\"Tampakan\";\"main\"\n\"1683433\";\"Tampacan\";\"other\"\n\"1683445\";\"Tamorong\";\"main\"\n\"1683447\";\"Tamontaka\";\"main\"\n\"1683447\";\"Tamontaca\";\"other\"\n\"1683456\";\"Tamnag\";\"main\"\n\"1683461\";\"Tamlang\";\"main\"\n\"1683461\";\"Tamlang Nuevo\";\"other\"\n\"1683467\";\"Tamisu\";\"main\"\n\"1683467\";\"T. Real\";\"other\"\n\"1683468\";\"Tamisan\";\"main\"\n\"1683506\";\"Tambulig\";\"main\"\n\"1683506\";\"Tambuig\";\"other\"\n\"1683511\";\"Tambalan\";\"main\"\n\"1683511\";\"Tambulan\";\"other\"\n\"1683537\";\"Tambongon\";\"main\"\n\"1683538\";\"Tombongon\";\"main\"\n\"1683538\";\"Tambongon\";\"other\"\n\"1683541\";\"Tambong\";\"main\"\n\"1683574\";\"Tambo\";\"main\"\n\"1683575\";\"Tambo\";\"main\"\n\"1683578\";\"Tambo\";\"main\"\n\"1683586\";\"Tambo\";\"main\"\n\"1683602\";\"Tambilil\";\"main\"\n\"1683602\";\"Tamblil\";\"other\"\n\"1683629\";\"Tambalisa\";\"main\"\n\"1683629\";\"Tambaliza\";\"other\"\n\"1683638\";\"Tambac\";\"main\"\n\"1683638\";\"Tambak\";\"other\"\n\"1683642\";\"Tambak\";\"main\"\n\"1683642\";\"Tambac\";\"other\"\n\"1683663\";\"Tamayo\";\"main\"\n\"1683690\";\"Taluya\";\"main\"\n\"1683701\";\"Talusan\";\"main\"\n\"1683713\";\"Taluksangay\";\"main\"\n\"1683718\";\"Talugtug\";\"main\"\n\"1683718\";\"San Isidro\";\"other\"\n\"1683718\";\"Talogtog\";\"other\"\n\"1683718\";\"Talugtog\";\"other\"\n\"1683718\";\"Talugtogbalite\";\"other\"\n\"1683718\";\"Talugtug-bali\";\"other\"\n\"1683733\";\"Taltal\";\"main\"\n\"1683737\";\"Taloy\";\"main\"\n\"1683738\";\"Taloy\";\"main\"\n\"1683742\";\"Platagata\";\"main\"\n\"1683742\";\"Taloto-an\";\"other\"\n\"1683747\";\"Talospatang\";\"main\"\n\"1683771\";\"Talon\";\"main\"\n\"1683779\";\"Talomo\";\"main\"\n\"1683784\";\"Talokgañgan\";\"main\"\n\"1683784\";\"Talokgangan\";\"ascii\"\n\"1683800\";\"Taloc\";\"main\"\n\"1683800\";\"Taluc\";\"other\"\n\"1683801\";\"Talubatib\";\"main\"\n\"1683801\";\"Talobatib\";\"other\"\n\"1683818\";\"Talitay\";\"main\"\n\"1683818\";\"Talita\";\"other\"\n\"1683852\";\"Talisayan\";\"main\"\n\"1683855\";\"Talisayan\";\"main\"\n\"1683856\";\"Talisayan\";\"main\"\n\"1683859\";\"Talisay\";\"main\"\n\"1683860\";\"Talisay\";\"main\"\n\"1683861\";\"Talisay\";\"main\"\n\"1683862\";\"Talisay\";\"main\"\n\"1683865\";\"Talisay\";\"main\"\n\"1683871\";\"Talisay\";\"main\"\n\"1683871\";\"Tailsay\";\"other\"\n\"1683877\";\"Talisay\";\"main\"\n\"1683881\";\"Talisay\";\"main\"\n\"1683881\";\"Ciudad ti Talisay\";\"other\"\n\"1683881\";\"Talisay City\";\"other\"\n\"1683881\";\"tarisai\";\"other\"\n\"1683881\";\"タリサイ\";\"other\"\n\"1683883\";\"Talisay\";\"main\"\n\"1683886\";\"Talisay\";\"main\"\n\"1683900\";\"Talipao\";\"main\"\n\"1683900\";\"Bila\\\"an\";\"other\"\n\"1683900\";\"Bilaan Constabulary Post\";\"other\"\n\"1683900\";\"Bila”an\";\"other\"\n\"1683900\";\"Camp Romandier\";\"other\"\n\"1683900\";\"Romandies\";\"other\"\n\"1683900\";\"Talipaw\";\"other\"\n\"1683911\";\"Talipan\";\"main\"\n\"1683931\";\"Tal I Mun Doc\";\"main\"\n\"1683949\";\"Taligaman\";\"main\"\n\"1683961\";\"Talibon\";\"main\"\n\"1684016\";\"Talavera\";\"main\"\n\"1684016\";\"Талавера\";\"other\"\n\"1684052\";\"Talangnan\";\"main\"\n\"1684062\";\"Talang\";\"main\"\n\"1684077\";\"Talalora\";\"main\"\n\"1684086\";\"Talakag\";\"main\"\n\"1684086\";\"Talacag\";\"other\"\n\"1684095\";\"Talaibon\";\"main\"\n\"1684100\";\"Talahib Payap\";\"main\"\n\"1684100\";\"Talahib\";\"other\"\n\"1684100\";\"Talahib Payapa\";\"other\"\n\"1684103\";\"Talahiban Primero\";\"main\"\n\"1684103\";\"Talahiban\";\"other\"\n\"1684103\";\"Talahiban I\";\"other\"\n\"1684122\";\"Talaga\";\"main\"\n\"1684128\";\"Talaga\";\"main\"\n\"1684137\";\"Talacogon\";\"main\"\n\"1684154\";\"Talaban\";\"main\"\n\"1684177\";\"Tala\";\"main\"\n\"1684190\";\"Tacub\";\"main\"\n\"1684190\";\"Takub\";\"other\"\n\"1684191\";\"Takub\";\"main\"\n\"1684191\";\"Tacub\";\"other\"\n\"1684210\";\"Tajao\";\"main\"\n\"1684210\";\"Tahao\";\"other\"\n\"1684210\";\"Tanaw\";\"other\"\n\"1684245\";\"Tagusao\";\"main\"\n\"1684268\";\"Tagum\";\"main\"\n\"1684292\";\"Taguisa\";\"main\"\n\"1684300\";\"Taguing\";\"main\"\n\"1684320\";\"Tagudin\";\"main\"\n\"1684321\";\"Tagudin\";\"main\"\n\"1684321\";\"Taguding\";\"other\"\n\"1684348\";\"Tagasilay\";\"main\"\n\"1684348\";\"Tagsilay\";\"other\"\n\"1684361\";\"Taypano\";\"main\"\n\"1684361\";\"Tagpangi\";\"other\"\n\"1684364\";\"Tagoytoy\";\"main\"\n\"1684379\";\"Tagoloan\";\"main\"\n\"1684395\";\"Tago\";\"main\"\n\"1684422\";\"Tagkawayan Sabang\";\"main\"\n\"1684454\";\"Tagdangua\";\"main\"\n\"1684454\";\"Tagdanua\";\"other\"\n\"1684462\";\"Tagcatong\";\"main\"\n\"1684463\";\"Tagburos\";\"main\"\n\"1684466\";\"Tagbubungang Diot\";\"main\"\n\"1684466\";\"Tabubunga\";\"other\"\n\"1684466\";\"Tagbobunga\";\"other\"\n\"1684466\";\"Tagbubunga\";\"other\"\n\"1684491\";\"Tagbina\";\"main\"\n\"1684497\";\"Tagbilaran\";\"main\"\n\"1684497\";\"Dakbayan sa Tagbilaran\";\"other\"\n\"1684497\";\"Syudad han Tagbilaran\";\"other\"\n\"1684497\";\"Tagbilaran City\";\"other\"\n\"1684538\";\"Tagbacan\";\"main\"\n\"1684538\";\"Tagbacan Ibaba\";\"other\"\n\"1684542\";\"Tagbak\";\"main\"\n\"1684542\";\"Tabbac\";\"other\"\n\"1684542\";\"Tagbac\";\"other\"\n\"1684562\";\"Tugaya\";\"main\"\n\"1684562\";\"Tagaya\";\"other\"\n\"1684577\";\"Tagas\";\"main\"\n\"1684606\";\"Taganak\";\"main\"\n\"1684606\";\"Turtle Islands\";\"other\"\n\"1684610\";\"Tagana-an\";\"main\"\n\"1684629\";\"Tagakpan\";\"main\"\n\"1684629\";\"Tagakpad\";\"other\"\n\"1684645\";\"Tagabas\";\"main\"\n\"1684659\";\"Taft\";\"main\"\n\"1684672\";\"Tadian\";\"main\"\n\"1684681\";\"Tacurong\";\"main\"\n\"1684681\";\"Tacorong\";\"other\"\n\"1684681\";\"Takrong\";\"other\"\n\"1684681\";\"Takurong\";\"other\"\n\"1684706\";\"Taclobo\";\"main\"\n\"1684717\";\"Tacligan\";\"main\"\n\"1684717\";\"Taclingan\";\"other\"\n\"1684717\";\"Takligan\";\"other\"\n\"1684746\";\"Tacadang\";\"main\"\n\"1684759\";\"Tagbita\";\"main\"\n\"1684759\";\"Taburi\";\"other\"\n\"1684765\";\"Tabonok\";\"main\"\n\"1684765\";\"Tabonak\";\"other\"\n\"1684765\";\"Tabunok\";\"other\"\n\"1684803\";\"Tabuk\";\"main\"\n\"1684818\";\"Tabug\";\"main\"\n\"1684821\";\"Tabuelan\";\"main\"\n\"1684828\";\"Tabuc Pontevedra\";\"main\"\n\"1684842\";\"Tabuating\";\"main\"\n\"1684853\";\"Tabuan\";\"main\"\n\"1684857\";\"Tabu\";\"main\"\n\"1684867\";\"Tubao\";\"main\"\n\"1684867\";\"Tabo-o\";\"other\"\n\"1684871\";\"Tabontabon\";\"main\"\n\"1684876\";\"Tabunok\";\"main\"\n\"1684876\";\"Tabonoc\";\"other\"\n\"1684876\";\"Tabonok\";\"other\"\n\"1684877\";\"Tabonoc\";\"main\"\n\"1684877\";\"Tabunok\";\"other\"\n\"1684892\";\"Tabon\";\"main\"\n\"1684899\";\"Tabon\";\"main\"\n\"1684901\";\"Tabon\";\"main\"\n\"1684902\";\"Tabon\";\"main\"\n\"1684938\";\"Taboc\";\"main\"\n\"1684967\";\"Tablac\";\"main\"\n\"1684977\";\"Tabio\";\"main\"\n\"1684977\";\"Tabia\";\"other\"\n\"1684986\";\"Tabing\";\"main\"\n\"1684989\";\"Tabinay\";\"main\"\n\"1684990\";\"Tabina\";\"main\"\n\"1685003\";\"Tadid\";\"main\"\n\"1685003\";\"Tabia\";\"other\"\n\"1685003\";\"Tabid\";\"other\"\n\"1685006\";\"Tabiauan\";\"main\"\n\"1685006\";\"Tabialan\";\"other\"\n\"1685006\";\"Tavialan\";\"other\"\n\"1685071\";\"Tabango\";\"main\"\n\"1685102\";\"Tabalong\";\"main\"\n\"1685117\";\"Tabaco\";\"main\"\n\"1685117\";\"Tobaco\";\"other\"\n\"1685125\";\"Tabaan\";\"main\"\n\"1685146\";\"Taal\";\"main\"\n\"1685146\";\"Таал\";\"other\"\n\"1685161\";\"Suyo\";\"main\"\n\"1685161\";\"Urzadan\";\"other\"\n\"1685161\";\"Uzzadan\";\"other\"\n\"1685166\";\"Suyan\";\"main\"\n\"1685196\";\"Suso\";\"main\"\n\"1685203\";\"Surup\";\"main\"\n\"1685203\";\"Surop\";\"other\"\n\"1685218\";\"Surigao\";\"main\"\n\"1685218\";\"Ciudad ti Surigao\";\"other\"\n\"1685218\";\"Surigao City\";\"other\"\n\"1685230\";\"Surallah\";\"main\"\n\"1685270\";\"Sungai\";\"main\"\n\"1685270\";\"Sunga\";\"other\"\n\"1685270\";\"Sungay\";\"other\"\n\"1685286\";\"Sumpong\";\"main\"\n\"1685296\";\"Sumisip\";\"main\"\n\"1685296\";\"Mangal\";\"other\"\n\"1685296\";\"Sumipsip\";\"other\"\n\"1685302\";\"Sumilao\";\"main\"\n\"1685340\";\"Sumagui\";\"main\"\n\"1685360\";\"Sumabnit\";\"main\"\n\"1685366\";\"Sulucan\";\"main\"\n\"1685391\";\"Sulop\";\"main\"\n\"1685401\";\"Sulit\";\"main\"\n\"1685418\";\"Sulat\";\"main\"\n\"1685422\";\"Sulangan\";\"main\"\n\"1685423\";\"Sulangan\";\"main\"\n\"1685423\";\"Salanga\";\"other\"\n\"1685423\";\"Salangan\";\"other\"\n\"1685424\";\"Sulangan\";\"main\"\n\"1685434\";\"Sula\";\"main\"\n\"1685484\";\"Sugod\";\"main\"\n\"1685499\";\"Sugcad\";\"main\"\n\"1685506\";\"Sugbongkogon\";\"main\"\n\"1685506\";\"Sugbongcogon\";\"other\"\n\"1685520\";\"Sugal\";\"main\"\n\"1685549\";\"Suklayin\";\"main\"\n\"1685549\";\"Suclayin\";\"other\"\n\"1685556\";\"Sibusob\";\"main\"\n\"1685556\";\"Subusob\";\"other\"\n\"1685556\";\"Subusub\";\"other\"\n\"1685577\";\"Subic\";\"main\"\n\"1685578\";\"Subic\";\"main\"\n\"1685609\";\"Saaban\";\"main\"\n\"1685609\";\"Subaan\";\"other\"\n\"1685615\";\"Suba\";\"main\"\n\"1685622\";\"Suay\";\"main\"\n\"1685625\";\"Suz-on\";\"main\"\n\"1685625\";\"Sua-on\";\"other\"\n\"1685634\";\"Sual\";\"main\"\n\"1685681\";\"Soyung\";\"main\"\n\"1685681\";\"Soyon\";\"other\"\n\"1685692\";\"South Upi\";\"main\"\n\"1685692\";\"Looy\";\"other\"\n\"1685755\";\"Sorsogon\";\"main\"\n\"1685800\";\"Sunacolan\";\"main\"\n\"1685800\";\"Songculan\";\"other\"\n\"1685800\";\"Sunculan\";\"other\"\n\"1685800\";\"Sungculan\";\"other\"\n\"1685831\";\"Solsona\";\"main\"\n\"1685850\";\"Solo\";\"main\"\n\"1685867\";\"Soledad\";\"main\"\n\"1685875\";\"Solano\";\"main\"\n\"1685875\";\"Солано\";\"other\"\n\"1685882\";\"Solana\";\"main\"\n\"1685882\";\"Colona\";\"other\"\n\"1685882\";\"Coloña\";\"other\"\n\"1685915\";\"Sogod\";\"main\"\n\"1685918\";\"Sogod\";\"main\"\n\"1685918\";\"Sugod\";\"other\"\n\"1685923\";\"Sogod\";\"main\"\n\"1685925\";\"Sogod\";\"main\"\n\"1685936\";\"Socorro\";\"main\"\n\"1685936\";\"Soccoro\";\"other\"\n\"1685938\";\"Socorro\";\"main\"\n\"1686004\";\"Sitangkai\";\"main\"\n\"1686004\";\"Si Tangkay\";\"other\"\n\"1686004\";\"Sitankai\";\"other\"\n\"1686007\";\"Sison\";\"main\"\n\"1686009\";\"Sison\";\"main\"\n\"1686045\";\"Sirib\";\"main\"\n\"1686045\";\"Serib\";\"other\"\n\"1686047\";\"Siraway\";\"main\"\n\"1686047\";\"Siraguay\";\"other\"\n\"1686047\";\"Sirawai\";\"other\"\n\"1686047\";\"Sirawi\";\"other\"\n\"1686066\";\"Siquijor\";\"main\"\n\"1686066\";\"Siguijor\";\"other\"\n\"1686078\";\"Sipocot\";\"main\"\n\"1686078\";\"Sipoco\";\"other\"\n\"1686102\";\"Sipalay\";\"main\"\n\"1686123\";\"Siocon\";\"main\"\n\"1686123\";\"Siacon\";\"other\"\n\"1686123\";\"Sicogon\";\"other\"\n\"1686123\";\"Siocin\";\"other\"\n\"1686123\";\"Siokon\";\"other\"\n\"1686123\";\"Siokun\";\"other\"\n\"1686141\";\"Sinuknipan\";\"main\"\n\"1686141\";\"Sinoknipan\";\"other\"\n\"1686141\";\"Sinuknipan I\";\"other\"\n\"1686144\";\"Sinubong\";\"main\"\n\"1686144\";\"Sinubung\";\"other\"\n\"1686159\";\"Sinonoc\";\"main\"\n\"1686159\";\"Sinonuc\";\"other\"\n\"1686164\";\"Sinolon\";\"main\"\n\"1686170\";\"Sinubong\";\"main\"\n\"1686170\";\"Sinobong\";\"other\"\n\"1686175\";\"Sinisian\";\"main\"\n\"1686191\";\"Sinilian\";\"main\"\n\"1686191\";\"Sinilian Primero\";\"other\"\n\"1686228\";\"Sindon\";\"main\"\n\"1686234\";\"Sindangan\";\"main\"\n\"1686244\";\"Sinayawan\";\"main\"\n\"1686250\";\"Sinawilan\";\"main\"\n\"1686290\";\"Sinamar\";\"main\"\n\"1686311\";\"Sinala\";\"main\"\n\"1686318\";\"Sinait\";\"main\"\n\"1686319\";\"Sinait\";\"main\"\n\"1686335\";\"Sinacaban\";\"main\"\n\"1686335\";\"Nacavan\";\"other\"\n\"1686335\";\"Navacan\";\"other\"\n\"1686335\";\"Sinakaban\";\"other\"\n\"1686355\";\"Simunul\";\"main\"\n\"1686355\";\"Tubig Indangan\";\"other\"\n\"1686387\";\"Simimbaan\";\"main\"\n\"1686407\";\"Simanu Sur\";\"main\"\n\"1686422\";\"Simala\";\"main\"\n\"1686435\";\"Silway 7\";\"main\"\n\"1686435\";\"Silway\";\"other\"\n\"1686435\";\"Silway Pito\";\"other\"\n\"1686435\";\"Silway Seven\";\"other\"\n\"1686436\";\"Silvino Lobos\";\"main\"\n\"1686455\";\"Siloñgin\";\"main\"\n\"1686455\";\"Silongin\";\"ascii\"\n\"1686467\";\"Sillon\";\"main\"\n\"1686467\";\"Silion\";\"other\"\n\"1686467\";\"Sillion\";\"other\"\n\"1686502\";\"Silawit\";\"main\"\n\"1686545\";\"Silanga\";\"main\"\n\"1686547\";\"Silang\";\"main\"\n\"1686559\";\"Silago\";\"main\"\n\"1686564\";\"Silae\";\"main\"\n\"1686564\";\"Siloe\";\"other\"\n\"1686572\";\"Silab\";\"main\"\n\"1686615\";\"Sigma\";\"main\"\n\"1686636\";\"Cigaras\";\"main\"\n\"1686636\";\"Segaras\";\"other\"\n\"1686636\";\"Sigaras\";\"other\"\n\"1686652\";\"Sierra Bullones\";\"main\"\n\"1686652\";\"Sierra Bollones\";\"other\"\n\"1686655\";\"Siempre Viva\";\"main\"\n\"1686668\";\"Sico Primero\";\"main\"\n\"1686678\";\"Siclong\";\"main\"\n\"1686712\";\"Sibutao\";\"main\"\n\"1686712\";\"Sibutad\";\"other\"\n\"1686725\";\"Sibulan\";\"main\"\n\"1686728\";\"Sibulan\";\"main\"\n\"1686732\";\"Sibulan\";\"main\"\n\"1686735\";\"Sibul\";\"main\"\n\"1686737\";\"Sibul\";\"main\"\n\"1686737\";\"Sibul Springs\";\"other\"\n\"1686760\";\"Sibuco\";\"main\"\n\"1686760\";\"Sibuko\";\"other\"\n\"1686767\";\"Sibucao\";\"main\"\n\"1686767\";\"Gibucao\";\"other\"\n\"1686777\";\"Sibonga\";\"main\"\n\"1686819\";\"Sibalom\";\"main\"\n\"1686840\";\"Sibaguan\";\"main\"\n\"1686847\";\"Sibagat\";\"main\"\n\"1686847\";\"Sibagat Viejo\";\"other\"\n\"1686858\";\"Siayan\";\"main\"\n\"1686862\";\"Siay\";\"main\"\n\"1686868\";\"Siaton\";\"main\"\n\"1686874\";\"Siasi\";\"main\"\n\"1686874\";\"Banting\";\"other\"\n\"1686874\";\"Maddas\";\"other\"\n\"1686874\";\"Muddas\";\"other\"\n\"1686874\";\"Si AseΓÇ¥\";\"other\"\n\"1686878\";\"Siari\";\"main\"\n\"1686878\";\"Siare\";\"other\"\n\"1686933\";\"Sexmoan\";\"main\"\n\"1686933\";\"Sasmoan\";\"other\"\n\"1686933\";\"Sasmuan\";\"other\"\n\"1686954\";\"Sergio Osmeña Sr\";\"main\"\n\"1686954\";\"Sergio Osmena Sr\";\"ascii\"\n\"1686956\";\"Seres\";\"main\"\n\"1686959\";\"Salunayan\";\"main\"\n\"1686959\";\"Serenaya\";\"other\"\n\"1686985\";\"Semut\";\"main\"\n\"1686985\";\"Semmut\";\"other\"\n\"1686992\";\"Semirara\";\"main\"\n\"1687014\";\"Siguinon\";\"main\"\n\"1687014\";\"Seguinon\";\"other\"\n\"1687029\";\"Sebu\";\"main\"\n\"1687038\";\"Sebaste\";\"main\"\n\"1687039\";\"Sebaste\";\"main\"\n\"1687058\";\"Saysain\";\"main\"\n\"1687132\";\"Satan\";\"main\"\n\"1687147\";\"Sarrat\";\"main\"\n\"1687164\";\"Sariaya\";\"main\"\n\"1687167\";\"Saraza\";\"main\"\n\"1687186\";\"Sarangani\";\"main\"\n\"1687186\";\"Сарангани\";\"other\"\n\"1687196\";\"Sara\";\"main\"\n\"1687203\";\"Sapu Padidu\";\"main\"\n\"1687203\";\"Sapu\";\"other\"\n\"1687203\";\"Sapu-Padido\";\"other\"\n\"1687206\";\"Sapol\";\"main\"\n\"1687206\";\"Sapul\";\"other\"\n\"1687238\";\"Sapian\";\"main\"\n\"1687238\";\"Saipan\";\"other\"\n\"1687275\";\"Sapang Dalaga\";\"main\"\n\"1687291\";\"Sapang Buho\";\"main\"\n\"1687291\";\"Sapang Bato\";\"other\"\n\"1687302\";\"Sapang\";\"main\"\n\"1687321\";\"Sapadun\";\"main\"\n\"1687321\";\"Sapad\";\"other\"\n\"1687322\";\"Sapad\";\"main\"\n\"1687343\";\"Sapa\";\"main\"\n\"1687409\";\"San Vicente\";\"main\"\n\"1687410\";\"San Vicente\";\"main\"\n\"1687419\";\"San Vicente\";\"main\"\n\"1687428\";\"San Vicente\";\"main\"\n\"1687432\";\"San Vicente\";\"main\"\n\"1687435\";\"San Vicente\";\"main\"\n\"1687442\";\"San Vicente\";\"main\"\n\"1687444\";\"San Vicente\";\"main\"\n\"1687444\";\"San Vincente\";\"other\"\n\"1687445\";\"San Vicente\";\"main\"\n\"1687446\";\"San Vincente\";\"main\"\n\"1687446\";\"San Vicente\";\"other\"\n\"1687451\";\"San Vicente\";\"main\"\n\"1687457\";\"San Vicente\";\"main\"\n\"1687461\";\"San Vicente\";\"main\"\n\"1687470\";\"San Vicente\";\"main\"\n\"1687474\";\"San Vicente\";\"main\"\n\"1687486\";\"San Vicente\";\"main\"\n\"1687488\";\"San Vicente\";\"main\"\n\"1687513\";\"Santo Tomas\";\"main\"\n\"1687522\";\"Santo Tomas\";\"main\"\n\"1687529\";\"Santo Tomas\";\"main\"\n\"1687533\";\"Santo Tomas\";\"main\"\n\"1687534\";\"Santo Tomas\";\"main\"\n\"1687534\";\"Santa Tomas\";\"other\"\n\"1687534\";\"Santo-Tomas\";\"other\"\n\"1687534\";\"Санто-Томас\";\"other\"\n\"1687542\";\"Santo Tomas\";\"main\"\n\"1687564\";\"Santo Rosario\";\"main\"\n\"1687570\";\"Santo Rosario\";\"main\"\n\"1687599\";\"Santor\";\"main\"\n\"1687599\";\"Santol\";\"other\"\n\"1687614\";\"Santo Niño\";\"main\"\n\"1687614\";\"Santo Nino\";\"ascii\"\n\"1687614\";\"Faire\";\"other\"\n\"1687614\";\"Fraire\";\"other\"\n\"1687623\";\"Santo Niño\";\"main\"\n\"1687623\";\"Santo Nino\";\"ascii\"\n\"1687642\";\"Santo Niño\";\"main\"\n\"1687642\";\"Santo Nino\";\"ascii\"\n\"1687645\";\"Santo Niño\";\"main\"\n\"1687645\";\"Santo Nino\";\"ascii\"\n\"1687651\";\"Santo Niño\";\"main\"\n\"1687651\";\"Santo Nino\";\"ascii\"\n\"1687651\";\"Gayong\";\"other\"\n\"1687653\";\"Santo Niño\";\"main\"\n\"1687653\";\"Santo Nino\";\"ascii\"\n\"1687662\";\"Santo Niño\";\"main\"\n\"1687662\";\"Santo Nino\";\"ascii\"\n\"1687665\";\"Santa Nino\";\"main\"\n\"1687665\";\"Santo Nino\";\"other\"\n\"1687665\";\"Santo Niño\";\"other\"\n\"1687670\";\"Santo Niño\";\"main\"\n\"1687670\";\"Santo Nino\";\"ascii\"\n\"1687671\";\"Santo Niño\";\"main\"\n\"1687671\";\"Santo Nino\";\"ascii\"\n\"1687674\";\"Santo Niño\";\"main\"\n\"1687674\";\"Santo Nino\";\"ascii\"\n\"1687687\";\"Santol\";\"main\"\n\"1687702\";\"Santol\";\"main\"\n\"1687714\";\"Santo Domingo\";\"main\"\n\"1687724\";\"Santo Domingo\";\"main\"\n\"1687724\";\"Santa Domingo\";\"other\"\n\"1687725\";\"Santo Domingo\";\"main\"\n\"1687727\";\"Santo Domingo\";\"main\"\n\"1687733\";\"Santo Domingo\";\"main\"\n\"1687733\";\"Santo Doming\";\"other\"\n\"1687738\";\"Santo Domingo\";\"main\"\n\"1687742\";\"Santo Domingo\";\"main\"\n\"1687752\";\"Santo Cristo\";\"main\"\n\"1687753\";\"Santo Cristo\";\"main\"\n\"1687777\";\"Santa Angel\";\"main\"\n\"1687777\";\"Santo Angel\";\"other\"\n\"1687780\";\"Santisimo Rosario\";\"main\"\n\"1687780\";\"Santo Rosario\";\"other\"\n\"1687801\";\"Santiago\";\"main\"\n\"1687812\";\"Santiago\";\"main\"\n\"1687818\";\"Santiago\";\"main\"\n\"1687825\";\"Santiago\";\"main\"\n\"1687827\";\"Santiago\";\"main\"\n\"1687834\";\"Santiago\";\"main\"\n\"1687838\";\"San Teodoro\";\"main\"\n\"1687838\";\"Subaang\";\"other\"\n\"1687847\";\"Santa Teresita\";\"main\"\n\"1687848\";\"Santa Teresita\";\"main\"\n\"1687849\";\"Santa Teresita\";\"main\"\n\"1687855\";\"Santa Teresa Primera\";\"main\"\n\"1687855\";\"Santa Teresa\";\"other\"\n\"1687860\";\"Santa Teresa\";\"main\"\n\"1687860\";\"Lalawigan\";\"other\"\n\"1687862\";\"Santa Teresa\";\"main\"\n\"1687868\";\"Santa Rosa Sur\";\"main\"\n\"1687868\";\"Danaw\";\"other\"\n\"1687868\";\"Santa Rosa\";\"other\"\n\"1687874\";\"Hacienda Santa Rosa\";\"main\"\n\"1687874\";\"Santa Rosa\";\"other\"\n\"1687874\";\"Santa Rosa Hacienda\";\"other\"\n\"1687888\";\"Santa Rosa\";\"main\"\n\"1687889\";\"Santa Rosa\";\"main\"\n\"1687893\";\"Santa Rosa\";\"main\"\n\"1687894\";\"Santa Rosa\";\"main\"\n\"1687898\";\"Santa Rosa\";\"main\"\n\"1687929\";\"Santa Rita\";\"main\"\n\"1687936\";\"Santa Rita\";\"main\"\n\"1687936\";\"Santa Maria\";\"other\"\n\"1687937\";\"Santa Rita\";\"main\"\n\"1687938\";\"Santa Rita\";\"main\"\n\"1687943\";\"Santa Rita\";\"main\"\n\"1687960\";\"Santa Paz\";\"main\"\n\"1687965\";\"Santander\";\"main\"\n\"1687976\";\"Santa Monica\";\"main\"\n\"1687976\";\"San Monica\";\"other\"\n\"1687993\";\"Santa Monica\";\"main\"\n\"1687994\";\"Santa Monica\";\"main\"\n\"1687994\";\"Sapao\";\"other\"\n\"1688012\";\"Santa Maria\";\"main\"\n\"1688015\";\"Santa Maria\";\"main\"\n\"1688016\";\"Santa Maria\";\"main\"\n\"1688029\";\"Santa Maria\";\"main\"\n\"1688031\";\"Santa Maria\";\"main\"\n\"1688035\";\"Santa Maria\";\"main\"\n\"1688044\";\"Santa Maria\";\"main\"\n\"1688051\";\"Santa Maria\";\"main\"\n\"1688055\";\"Santa Maria\";\"main\"\n\"1688056\";\"Santa Maria\";\"main\"\n\"1688058\";\"Santa Maria\";\"main\"\n\"1688058\";\"Basiauan\";\"other\"\n\"1688058\";\"Basiawan\";\"other\"\n\"1688066\";\"Santa Margarita\";\"main\"\n\"1688072\";\"Santa Magdalena\";\"main\"\n\"1688081\";\"Santa Lucia\";\"main\"\n\"1688088\";\"Santa Lucia\";\"main\"\n\"1688088\";\"Old Santa Lucia\";\"other\"\n\"1688090\";\"Santa Lucia\";\"main\"\n\"1688091\";\"Santa Lucia\";\"main\"\n\"1688107\";\"Santa Lucia\";\"main\"\n\"1688115\";\"Santa Justina\";\"main\"\n\"1688118\";\"Santa Juliana\";\"main\"\n\"1688119\";\"Santa Josefa\";\"main\"\n\"1688136\";\"Santa Ines\";\"main\"\n\"1688145\";\"Santa Ignacia\";\"main\"\n\"1688145\";\"Stalgnacia\";\"other\"\n\"1688154\";\"Santa Filomena\";\"main\"\n\"1688154\";\"Santa Felomena\";\"other\"\n\"1688162\";\"Santa Fe\";\"main\"\n\"1688164\";\"Santa Fe\";\"main\"\n\"1688169\";\"Santa Fe\";\"main\"\n\"1688171\";\"Santa Fe\";\"main\"\n\"1688172\";\"Santa Fe\";\"main\"\n\"1688175\";\"Santa Fe\";\"main\"\n\"1688185\";\"Santa Elena\";\"main\"\n\"1688217\";\"Santa Cruz\";\"main\"\n\"1688225\";\"Santa Cruz\";\"main\"\n\"1688225\";\"Santa-Krus\";\"other\"\n\"1688225\";\"Санта-Крус\";\"other\"\n\"1688232\";\"Santa Cruz\";\"main\"\n\"1688232\";\"Sant Cruz\";\"other\"\n\"1688232\";\"Santa-Krus\";\"other\"\n\"1688232\";\"Санта-Крус\";\"other\"\n\"1688238\";\"Santa Cruz\";\"main\"\n\"1688248\";\"Santa Cruz\";\"main\"\n\"1688253\";\"Santa Cruz\";\"main\"\n\"1688257\";\"Santa Cruz\";\"main\"\n\"1688262\";\"Santa Cruz\";\"main\"\n\"1688271\";\"Santa Cruz\";\"main\"\n\"1688271\";\"Santa-Krus\";\"other\"\n\"1688271\";\"Санта-Крус\";\"other\"\n\"1688275\";\"Santa Cruz\";\"main\"\n\"1688278\";\"Santa Cruz\";\"main\"\n\"1688298\";\"Santa Cruz\";\"main\"\n\"1688299\";\"Santa Cruz\";\"main\"\n\"1688307\";\"Santa Cruz\";\"main\"\n\"1688313\";\"Santa Cruz\";\"main\"\n\"1688313\";\"Santa Cruz Nuevo\";\"other\"\n\"1688313\";\"Santa-Krus\";\"other\"\n\"1688313\";\"Санта-Крус\";\"other\"\n\"1688338\";\"Santa Clara\";\"main\"\n\"1688340\";\"Santa Clara\";\"main\"\n\"1688342\";\"Santa Cecilia\";\"main\"\n\"1688343\";\"Santa Catalina Sur\";\"main\"\n\"1688345\";\"Santa Catalina Norte\";\"main\"\n\"1688359\";\"Santa Catalina\";\"main\"\n\"1688363\";\"Santa Catalina\";\"main\"\n\"1688368\";\"Santa Brigida\";\"main\"\n\"1688372\";\"Santa Barbara\";\"main\"\n\"1688376\";\"Santa Barbara\";\"main\"\n\"1688382\";\"Santa Barbara\";\"main\"\n\"1688393\";\"Santa Ana\";\"main\"\n\"1688393\";\"Santa-Ana\";\"other\"\n\"1688393\";\"Санта-Ана\";\"other\"\n\"1688398\";\"Santa Ana\";\"main\"\n\"1688398\";\"San Joaquin\";\"other\"\n\"1688398\";\"Santa-Ana\";\"other\"\n\"1688398\";\"Санта-Ана\";\"other\"\n\"1688411\";\"Santa Ana\";\"main\"\n\"1688414\";\"Santa Ana\";\"main\"\n\"1688420\";\"Santa\";\"main\"\n\"1688425\";\"San Simon\";\"main\"\n\"1688432\";\"San Sebastian\";\"main\"\n\"1688432\";\"San Sebastian Este\";\"other\"\n\"1688438\";\"San Sebastian\";\"main\"\n\"1688440\";\"San Sebastian\";\"main\"\n\"1688456\";\"San Roque Dau\";\"main\"\n\"1688456\";\"San Roque\";\"other\"\n\"1688462\";\"San Roque\";\"main\"\n\"1688480\";\"San Roque\";\"main\"\n\"1688488\";\"San Roque\";\"main\"\n\"1688537\";\"San Roque\";\"main\"\n\"1688543\";\"San Roque\";\"main\"\n\"1688556\";\"San Roque\";\"main\"\n\"1688566\";\"San Roque\";\"main\"\n\"1688588\";\"San Roque\";\"main\"\n\"1688588\";\"San Rogue\";\"other\"\n\"1688590\";\"San Ricardo\";\"main\"\n\"1688594\";\"San Remigio\";\"main\"\n\"1688607\";\"San Ramon\";\"main\"\n\"1688610\";\"San Ramon\";\"main\"\n\"1688611\";\"San Ramon\";\"main\"\n\"1688643\";\"San Rafael\";\"main\"\n\"1688653\";\"San Rafael\";\"main\"\n\"1688665\";\"San Rafael\";\"main\"\n\"1688666\";\"San Rafael\";\"main\"\n\"1688670\";\"San Rafael\";\"main\"\n\"1688674\";\"San Rafael\";\"main\"\n\"1688682\";\"San Rafael\";\"main\"\n\"1688692\";\"Sanquil\";\"main\"\n\"1688692\";\"Sonquil\";\"other\"\n\"1688696\";\"San Policarpo\";\"main\"\n\"1688696\";\"Policarpio\";\"other\"\n\"1688696\";\"San Policarpio\";\"other\"\n\"1688697\";\"San Policarpo\";\"main\"\n\"1688697\";\"San Policarpio\";\"other\"\n\"1688715\";\"San Pedro\";\"main\"\n\"1688715\";\"San - Pedro\";\"other\"\n\"1688715\";\"San Pedro Apartado\";\"other\"\n\"1688715\";\"Сан - Педро\";\"other\"\n\"1688725\";\"San Pedro\";\"main\"\n\"1688749\";\"San Pedro\";\"main\"\n\"1688754\";\"San Pedro One\";\"main\"\n\"1688754\";\"Galo\";\"other\"\n\"1688754\";\"San - Pedro\";\"other\"\n\"1688754\";\"San Galo\";\"other\"\n\"1688754\";\"San Pedro\";\"other\"\n\"1688754\";\"Сан - Педро\";\"other\"\n\"1688761\";\"San Pedro\";\"main\"\n\"1688762\";\"San Pedro\";\"main\"\n\"1688774\";\"San Pedro\";\"main\"\n\"1688776\";\"San Pedro\";\"main\"\n\"1688780\";\"San Pedro\";\"main\"\n\"1688786\";\"San Patricio\";\"main\"\n\"1688789\";\"San Pascual\";\"main\"\n\"1688789\";\"Lloren\";\"other\"\n\"1688789\";\"San - Paskual'\";\"other\"\n\"1688789\";\"Сан - Паскуаль\";\"other\"\n\"1688795\";\"San Pascual\";\"main\"\n\"1688797\";\"San Pascual\";\"main\"\n\"1688797\";\"San - Paskual'\";\"other\"\n\"1688797\";\"Сан - Паскуаль\";\"other\"\n\"1688800\";\"San Pascual\";\"main\"\n\"1688830\";\"San Pablo\";\"main\"\n\"1688830\";\"San Pablo City\";\"other\"\n\"1688838\";\"San Pablo\";\"main\"\n\"1688844\";\"San Pablo\";\"main\"\n\"1688844\";\"San - Pablo\";\"other\"\n\"1688844\";\"Сан - Пабло\";\"other\"\n\"1688859\";\"San Nicolas\";\"main\"\n\"1688868\";\"San Nicolas\";\"main\"\n\"1688874\";\"San Nicolas\";\"main\"\n\"1688880\";\"San Nicolas\";\"main\"\n\"1688887\";\"San Nicolas\";\"main\"\n\"1688899\";\"San Nicolas\";\"main\"\n\"1688901\";\"San Nicolas\";\"main\"\n\"1688912\";\"San Narciso\";\"main\"\n\"1688912\";\"San Narcisco\";\"other\"\n\"1688913\";\"San Narciso\";\"main\"\n\"1688949\";\"San Miguel\";\"main\"\n\"1688954\";\"San Miguel\";\"main\"\n\"1688965\";\"San Miguel\";\"main\"\n\"1688975\";\"San Miguel\";\"main\"\n\"1688983\";\"San Miguel\";\"main\"\n\"1688991\";\"San Miguel\";\"main\"\n\"1688993\";\"San Miguel\";\"main\"\n\"1688998\";\"San Miguel\";\"main\"\n\"1689002\";\"San Miguel\";\"main\"\n\"1689002\";\"San - Migel'\";\"other\"\n\"1689002\";\"San Migual\";\"other\"\n\"1689002\";\"Сан - Мигель\";\"other\"\n\"1689004\";\"San Miguel\";\"main\"\n\"1689005\";\"San Miguel\";\"main\"\n\"1689010\";\"San Miguel\";\"main\"\n\"1689010\";\"Cambangay\";\"other\"\n\"1689010\";\"Cambangay Sur\";\"other\"\n\"1689010\";\"Cambangays\";\"other\"\n\"1689010\";\"San - Migel'\";\"other\"\n\"1689010\";\"Сан - Мигель\";\"other\"\n\"1689012\";\"San Miguel\";\"main\"\n\"1689016\";\"San Miguel\";\"main\"\n\"1689018\";\"San Miguel\";\"main\"\n\"1689020\";\"San Miguel\";\"main\"\n\"1689021\";\"San Miguel\";\"main\"\n\"1689021\";\"San - Migel'\";\"other\"\n\"1689021\";\"Сан - Мигель\";\"other\"\n\"1689023\";\"San Miguel\";\"main\"\n\"1689026\";\"San Miguel\";\"main\"\n\"1689051\";\"San Mateo\";\"main\"\n\"1689052\";\"San Mateo\";\"main\"\n\"1689054\";\"San Mateo\";\"main\"\n\"1689056\";\"San Mateo\";\"main\"\n\"1689078\";\"San Martin\";\"main\"\n\"1689080\";\"San Mariano\";\"main\"\n\"1689080\";\"Angela\";\"other\"\n\"1689080\";\"San Mariana\";\"other\"\n\"1689086\";\"San Mariano\";\"main\"\n\"1689087\";\"San Mariano\";\"main\"\n\"1689099\";\"San Marcelino\";\"main\"\n\"1689106\";\"San Manuel\";\"main\"\n\"1689106\";\"Callang\";\"other\"\n\"1689111\";\"San Manuel\";\"main\"\n\"1689123\";\"San Luis\";\"main\"\n\"1689129\";\"San Luis\";\"main\"\n\"1689144\";\"San Luis\";\"main\"\n\"1689144\";\"San - Luis\";\"other\"\n\"1689144\";\"Сан - Луис\";\"other\"\n\"1689145\";\"San Luis\";\"main\"\n\"1689146\";\"San Luis\";\"main\"\n\"1689154\";\"San Lucas\";\"main\"\n\"1689159\";\"San Lorenzo\";\"main\"\n\"1689160\";\"San Lorenzo\";\"main\"\n\"1689168\";\"Sanlibo\";\"main\"\n\"1689171\";\"San Leonardo\";\"main\"\n\"1689177\";\"Sankanan\";\"main\"\n\"1689177\";\"Sankanam\";\"other\"\n\"1689191\";\"San Julian\";\"main\"\n\"1689220\";\"San Juan de Mata\";\"main\"\n\"1689236\";\"San Juan\";\"main\"\n\"1689236\";\"Lapog\";\"other\"\n\"1689238\";\"San Juan\";\"main\"\n\"1689268\";\"San Juan\";\"main\"\n\"1689276\";\"San Juan\";\"main\"\n\"1689299\";\"San Juan\";\"main\"\n\"1689308\";\"San Juan\";\"main\"\n\"1689332\";\"San Juan\";\"main\"\n\"1689341\";\"San Juan\";\"main\"\n\"1689383\";\"Malino\";\"main\"\n\"1689383\";\"San Jose Malino\";\"other\"\n\"1689395\";\"San Jose del Monte\";\"main\"\n\"1689399\";\"San Jose de Buan\";\"main\"\n\"1689413\";\"San Jose\";\"main\"\n\"1689416\";\"San Jose\";\"main\"\n\"1689433\";\"Tabacao\";\"main\"\n\"1689433\";\"San Jose\";\"other\"\n\"1689448\";\"San Jose\";\"main\"\n\"1689486\";\"San Jose\";\"main\"\n\"1689501\";\"San Jose\";\"main\"\n\"1689515\";\"Agcogon\";\"main\"\n\"1689515\";\"Acogon\";\"other\"\n\"1689515\";\"San Jose\";\"other\"\n\"1689515\";\"Taft\";\"other\"\n\"1689532\";\"San Jose\";\"main\"\n\"1689538\";\"San Jose\";\"main\"\n\"1689554\";\"San Jose\";\"main\"\n\"1689562\";\"San Jose\";\"main\"\n\"1689589\";\"San Joaquin\";\"main\"\n\"1689593\";\"San Joaquin\";\"main\"\n\"1689597\";\"San Joaquin\";\"main\"\n\"1689603\";\"San Jacinto\";\"main\"\n\"1689605\";\"San Jacinto\";\"main\"\n\"1689607\";\"San Jacinto\";\"main\"\n\"1689623\";\"San Isidro Laug\";\"main\"\n\"1689623\";\"Laug\";\"other\"\n\"1689623\";\"San Isidro\";\"other\"\n\"1689655\";\"San Isidro\";\"main\"\n\"1689663\";\"San Isidro\";\"main\"\n\"1689682\";\"San Isidro\";\"main\"\n\"1689693\";\"San Isidro\";\"main\"\n\"1689704\";\"San Isidro\";\"main\"\n\"1689714\";\"San Isidro\";\"main\"\n\"1689732\";\"San Isidro\";\"main\"\n\"1689750\";\"San Isidro\";\"main\"\n\"1689761\";\"San Isidro\";\"main\"\n\"1689773\";\"San Isidro\";\"main\"\n\"1689790\";\"San Isidro\";\"main\"\n\"1689800\";\"San Isidro\";\"main\"\n\"1689811\";\"Batobato\";\"main\"\n\"1689811\";\"San Isidro\";\"other\"\n\"1689832\";\"San Ildefonso\";\"main\"\n\"1689846\";\"San Ignacio\";\"main\"\n\"1689852\";\"San Guillermo\";\"main\"\n\"1689867\";\"San Gregorio\";\"main\"\n\"1689893\";\"Sanghan\";\"main\"\n\"1689911\";\"Sañgay\";\"main\"\n\"1689911\";\"Sangay\";\"ascii\"\n\"1689916\";\"Sangat\";\"main\"\n\"1689930\";\"San Gabriel\";\"main\"\n\"1689931\";\"San Gabriel\";\"main\"\n\"1689939\";\"San Gabriel\";\"main\"\n\"1689969\";\"San Francisco\";\"main\"\n\"1689973\";\"San Francisco\";\"main\"\n\"1689973\";\"Caysyan\";\"other\"\n\"1689979\";\"San Francisco\";\"main\"\n\"1689988\";\"San Francisco\";\"main\"\n\"1689989\";\"San Francisco\";\"main\"\n\"1689994\";\"San Francisco\";\"main\"\n\"1689994\";\"Aurora\";\"other\"\n\"1689996\";\"San Francisco\";\"main\"\n\"1689997\";\"San Francisco\";\"main\"\n\"1689999\";\"San Francisco\";\"main\"\n\"1689999\";\"Potot\";\"other\"\n\"1690005\";\"San Francisco\";\"main\"\n\"1690011\";\"San Francisco\";\"main\"\n\"1690014\";\"San Francisco\";\"main\"\n\"1690015\";\"San Francisco\";\"main\"\n\"1690017\";\"San Francisco\";\"main\"\n\"1690019\";\"San Francisco\";\"main\"\n\"1690033\";\"San Fernando\";\"main\"\n\"1690034\";\"San Fernando\";\"main\"\n\"1690039\";\"San Fernando\";\"main\"\n\"1690039\";\"Santo Rosario\";\"other\"\n\"1690043\";\"San Fernando\";\"main\"\n\"1690043\";\"San - Fernando\";\"other\"\n\"1690043\";\"Сан - Фернандо\";\"other\"\n\"1690045\";\"San Fernando\";\"main\"\n\"1690045\";\"San - Fernando\";\"other\"\n\"1690045\";\"Сан - Фернандо\";\"other\"\n\"1690050\";\"San Fernando\";\"main\"\n\"1690056\";\"San Fernando\";\"main\"\n\"1690060\";\"San Fernando\";\"main\"\n\"1690082\";\"San Felipe\";\"main\"\n\"1690085\";\"San Felipe\";\"main\"\n\"1690086\";\"Poblacion, San Felipe\";\"main\"\n\"1690088\";\"San Felipe\";\"main\"\n\"1690095\";\"San Fabian\";\"main\"\n\"1690100\";\"San Eugenio\";\"main\"\n\"1690117\";\"San Enrique\";\"main\"\n\"1690119\";\"San Enrique\";\"main\"\n\"1690127\";\"San Eduardo\";\"main\"\n\"1690140\";\"Sandolot\";\"main\"\n\"1690140\";\"Sandolo\";\"other\"\n\"1690140\";\"Sandulot\";\"other\"\n\"1690144\";\"San Dionisio\";\"main\"\n\"1690144\";\"Dionis\";\"other\"\n\"1690144\";\"Dionisio\";\"other\"\n\"1690158\";\"San Diego\";\"main\"\n\"1690160\";\"San Diego\";\"main\"\n\"1690170\";\"Sandiat\";\"main\"\n\"1690172\";\"Sandayong Sur\";\"main\"\n\"1690172\";\"Sandayong\";\"other\"\n\"1690172\";\"Sandayong Norte\";\"other\"\n\"1690183\";\"San Cristobal\";\"main\"\n\"1690191\";\"San Clemente\";\"main\"\n\"1690198\";\"San Celestino\";\"main\"\n\"1690200\";\"San Casimiro\";\"main\"\n\"1690209\";\"San Carlos\";\"main\"\n\"1690213\";\"San Carlos\";\"main\"\n\"1690214\";\"San Carlos\";\"main\"\n\"1690220\";\"San Carlos\";\"main\"\n\"1690233\";\"San Bernardino\";\"main\"\n\"1690233\";\"San Bernardo\";\"other\"\n\"1690245\";\"San Benito\";\"main\"\n\"1690253\";\"San Benito\";\"main\"\n\"1690257\";\"San Basilio\";\"main\"\n\"1690275\";\"San Aquilino\";\"main\"\n\"1690295\";\"San Antonio\";\"main\"\n\"1690303\";\"San Antonio\";\"main\"\n\"1690313\";\"San Antonio\";\"main\"\n\"1690314\";\"San Antonio\";\"main\"\n\"1690317\";\"San Antonio\";\"main\"\n\"1690320\";\"San Antonio\";\"main\"\n\"1690324\";\"San Antonio\";\"main\"\n\"1690336\";\"San Antonio\";\"main\"\n\"1690344\";\"San Antonio\";\"main\"\n\"1690357\";\"San Antonio\";\"main\"\n\"1690376\";\"San Antonio\";\"main\"\n\"1690389\";\"San Antonio\";\"main\"\n\"1690402\";\"San Antonio\";\"main\"\n\"1690409\";\"San Anton\";\"main\"\n\"1690428\";\"San Andres\";\"main\"\n\"1690433\";\"San Andres\";\"main\"\n\"1690434\";\"San Andres\";\"main\"\n\"1690438\";\"San Andres\";\"main\"\n\"1690439\";\"San Andres\";\"main\"\n\"1690456\";\"San Alfonso\";\"main\"\n\"1690456\";\"San Alfonzo\";\"other\"\n\"1690459\";\"San Alejandro\";\"main\"\n\"1690493\";\"San Agustin\";\"main\"\n\"1690499\";\"San Agustin\";\"main\"\n\"1690508\";\"San Agustin\";\"main\"\n\"1690511\";\"San Agustin\";\"main\"\n\"1690511\";\"Rawis\";\"other\"\n\"1690512\";\"San Agustin\";\"main\"\n\"1690512\";\"San Augustin\";\"other\"\n\"1690514\";\"San Agustin\";\"main\"\n\"1690516\";\"San Agustin\";\"main\"\n\"1690516\";\"San Augustin\";\"other\"\n\"1690528\";\"San Agustin\";\"main\"\n\"1690554\";\"Sampiro\";\"main\"\n\"1690563\";\"Sampao\";\"main\"\n\"1690564\";\"Sampao\";\"main\"\n\"1690570\";\"Sampaloc\";\"main\"\n\"1690570\";\"Sampalok\";\"other\"\n\"1690578\";\"Sampaloc\";\"main\"\n\"1690582\";\"Sampaloc\";\"main\"\n\"1690582\";\"San Isidro\";\"other\"\n\"1690582\";\"San Roque\";\"other\"\n\"1690583\";\"Sampaloc\";\"main\"\n\"1690591\";\"Sampagar\";\"main\"\n\"1690598\";\"Samon\";\"main\"\n\"1690607\";\"Sambuluan\";\"main\"\n\"1690607\";\"Sambulawan\";\"other\"\n\"1690623\";\"Samboan\";\"main\"\n\"1690664\";\"Samal\";\"main\"\n\"1690664\";\"Самал\";\"other\"\n\"1690666\";\"Samal\";\"main\"\n\"1690666\";\"Penaplata\";\"other\"\n\"1690666\";\"Peñaplata\";\"other\"\n\"1690666\";\"Самал\";\"other\"\n\"1690681\";\"San Salvador\";\"main\"\n\"1690681\";\"Salvador\";\"other\"\n\"1690684\";\"Salvador\";\"main\"\n\"1690684\";\"Balimbing\";\"other\"\n\"1690687\";\"Salvacion Primera\";\"main\"\n\"1690687\";\"Salvacion\";\"other\"\n\"1690687\";\"Salvacion 1\";\"other\"\n\"1690700\";\"Salvacion\";\"main\"\n\"1690700\";\"Mabalodbalod Giganoy\";\"other\"\n\"1690702\";\"Salvacion\";\"main\"\n\"1690710\";\"Salvacion\";\"main\"\n\"1690718\";\"Salvacion\";\"main\"\n\"1690721\";\"Salvacion\";\"main\"\n\"1690729\";\"Salvacion\";\"main\"\n\"1690731\";\"Salvacion\";\"main\"\n\"1690736\";\"Salvacion\";\"main\"\n\"1690737\";\"Salvacion\";\"main\"\n\"1690741\";\"Salvacion\";\"main\"\n\"1690774\";\"Salug\";\"main\"\n\"1690774\";\"Salog\";\"other\"\n\"1690774\";\"Salum\";\"other\"\n\"1690823\";\"Salogon\";\"main\"\n\"1690823\";\"Salongon\";\"other\"\n\"1690866\";\"Salinungan Proper\";\"main\"\n\"1690866\";\"Salinongan\";\"other\"\n\"1690866\";\"Salinungan\";\"other\"\n\"1690869\";\"Salingogan\";\"main\"\n\"1690869\";\"Salingogon\";\"other\"\n\"1690880\";\"Salinas\";\"main\"\n\"1690889\";\"Salimbao\";\"main\"\n\"1690891\";\"Salimbalan\";\"main\"\n\"1690891\";\"Salimbalon\";\"other\"\n\"1690909\";\"Salcedo\";\"main\"\n\"1690910\";\"Salcedo\";\"main\"\n\"1690912\";\"Salcedo\";\"main\"\n\"1690920\";\"Salaza\";\"main\"\n\"1690920\";\"Salasa\";\"other\"\n\"1690934\";\"Salay\";\"main\"\n\"1690937\";\"Salawagan\";\"main\"\n\"1690955\";\"Salapuñgan\";\"main\"\n\"1690955\";\"Salapungan\";\"ascii\"\n\"1690984\";\"Salamanca\";\"main\"\n\"1691060\";\"Sagurong\";\"main\"\n\"1691061\";\"Sagunto\";\"main\"\n\"1691061\";\"Sagundo\";\"other\"\n\"1691084\";\"Saguing\";\"main\"\n\"1691090\";\"Sagud Baley\";\"main\"\n\"1691091\";\"Saguday\";\"main\"\n\"1691103\";\"Sagrada Familia\";\"main\"\n\"1691106\";\"Sagrada\";\"main\"\n\"1691107\";\"Sagpon\";\"main\"\n\"1691123\";\"Sagnay\";\"main\"\n\"1691137\";\"Sagbayan\";\"main\"\n\"1691137\";\"Borja\";\"other\"\n\"1691150\";\"Sagay\";\"main\"\n\"1691152\";\"Sagay\";\"main\"\n\"1691166\";\"Sagasa\";\"main\"\n\"1691168\";\"Sagasa\";\"main\"\n\"1691172\";\"Sagang\";\"main\"\n\"1691173\";\"Susana\";\"main\"\n\"1691173\";\"Sagana\";\"other\"\n\"1691174\";\"Sagana\";\"main\"\n\"1691184\";\"Sagada\";\"main\"\n\"1691193\";\"Sadsalan\";\"main\"\n\"1691194\";\"Sadsadan\";\"main\"\n\"1691274\";\"Sablig\";\"main\"\n\"1691280\";\"Sablayan\";\"main\"\n\"1691286\";\"Sablan\";\"main\"\n\"1691341\";\"Sabang\";\"main\"\n\"1691344\";\"Sabang\";\"main\"\n\"1691346\";\"Sabang Indan\";\"main\"\n\"1691346\";\"Sabang\";\"other\"\n\"1691350\";\"Sabang\";\"main\"\n\"1691355\";\"Sabang\";\"main\"\n\"1691360\";\"Sabang\";\"main\"\n\"1691363\";\"Sabang\";\"main\"\n\"1691398\";\"Saavedra\";\"main\"\n\"1691441\";\"Roxas\";\"main\"\n\"1691442\";\"Roxas\";\"main\"\n\"1691442\";\"Paclasan\";\"other\"\n\"1691442\";\"Paglasan\";\"other\"\n\"1691444\";\"Roxas City\";\"main\"\n\"1691444\";\"Roxas\";\"other\"\n\"1691446\";\"Roxas\";\"main\"\n\"1691446\";\"Barbacan\";\"other\"\n\"1691446\";\"Del Pilar\";\"other\"\n\"1691446\";\"New Barbacan\";\"other\"\n\"1691463\";\"Rotunda\";\"main\"\n\"1691488\";\"Rosario\";\"main\"\n\"1691492\";\"Rosario\";\"main\"\n\"1691509\";\"Rosales\";\"main\"\n\"1691530\";\"Rominimbang\";\"main\"\n\"1691538\";\"Romblon\";\"main\"\n\"1691538\";\"Ромблон\";\"other\"\n\"1691561\";\"Rogongon\";\"main\"\n\"1691594\";\"Liwan\";\"main\"\n\"1691594\";\"Rizal\";\"other\"\n\"1691597\";\"Rizal\";\"main\"\n\"1691606\";\"Rizal\";\"main\"\n\"1691606\";\"Nazaret\";\"other\"\n\"1691606\";\"Rizel\";\"other\"\n\"1691606\";\"Ризал\";\"other\"\n\"1691612\";\"Rizal\";\"main\"\n\"1691614\";\"Rizal\";\"main\"\n\"1691618\";\"Rizal\";\"main\"\n\"1691625\";\"Rizal\";\"main\"\n\"1691626\";\"Rizal\";\"main\"\n\"1691642\";\"Rizal\";\"main\"\n\"1691645\";\"Rizal\";\"main\"\n\"1691654\";\"Rizal\";\"main\"\n\"1691662\";\"Rizal\";\"main\"\n\"1691673\";\"Rizal\";\"main\"\n\"1691674\";\"Rizal\";\"main\"\n\"1691674\";\"Risal\";\"other\"\n\"1691674\";\"Ризал\";\"other\"\n\"1691695\";\"Rissing\";\"main\"\n\"1691703\";\"Rio Tuba\";\"main\"\n\"1691712\";\"Rimos\";\"main\"\n\"1691712\";\"Rimus\";\"other\"\n\"1691713\";\"Rimpeso\";\"main\"\n\"1691713\";\"Rimpes\";\"other\"\n\"1691769\";\"Reina Mercedes\";\"main\"\n\"1691769\";\"Reina Mercedes Nuevo\";\"other\"\n\"1691779\";\"Hacienda Refugio\";\"main\"\n\"1691779\";\"Refugio\";\"other\"\n\"1691803\";\"Recodo\";\"main\"\n\"1691804\";\"Recodo\";\"main\"\n\"1691806\";\"Robonkon\";\"main\"\n\"1691806\";\"Rebokon\";\"other\"\n\"1691806\";\"Robokon\";\"other\"\n\"1691811\";\"Real\";\"main\"\n\"1691811\";\"Keal\";\"other\"\n\"1691812\";\"Real\";\"main\"\n\"1691812\";\"Puerto Real\";\"other\"\n\"1691862\";\"Rapu-Rapu\";\"main\"\n\"1691872\";\"Ransang\";\"main\"\n\"1691899\";\"Ranao\";\"main\"\n\"1691899\";\"Ronao\";\"other\"\n\"1691903\";\"Ramos\";\"main\"\n\"1691903\";\"Romas\";\"other\"\n\"1691904\";\"Ramos\";\"main\"\n\"1691904\";\"Bani\";\"other\"\n\"1691909\";\"Ramon Magsaysay\";\"main\"\n\"1691911\";\"Ramon\";\"main\"\n\"1691911\";\"Рамон\";\"other\"\n\"1691929\";\"Rajal\";\"main\"\n\"1691941\";\"Ragay\";\"main\"\n\"1691941\";\"Raike\";\"other\"\n\"1691941\";\"Rakei\";\"other\"\n\"1691946\";\"Ragan Norte\";\"main\"\n\"1691948\";\"Ragandang\";\"main\"\n\"1691968\";\"Quitang\";\"main\"\n\"1691973\";\"Quisao\";\"main\"\n\"1691995\";\"Quipot\";\"main\"\n\"1691996\";\"Quipot\";\"main\"\n\"1692018\";\"Quintong\";\"main\"\n\"1692032\";\"Quinipot\";\"main\"\n\"1692032\";\"Quiniput\";\"other\"\n\"1692032\";\"Quinput\";\"other\"\n\"1692052\";\"Quinatacutan\";\"main\"\n\"1692052\";\"Kinatakutan\";\"other\"\n\"1692063\";\"Quinarayan\";\"main\"\n\"1692066\";\"Quinapundan\";\"main\"\n\"1692066\";\"Quinapondan\";\"other\"\n\"1692100\";\"Quinagaringan\";\"main\"\n\"1692100\";\"Kinagaringan\";\"other\"\n\"1692113\";\"Quinabigan\";\"main\"\n\"1692136\";\"Quilo-quilo\";\"main\"\n\"1692147\";\"Quiling\";\"main\"\n\"1692174\";\"Quibal\";\"main\"\n\"1692196\";\"Quezon\";\"main\"\n\"1692197\";\"Quezon\";\"main\"\n\"1692197\";\"Keson-Siti\";\"other\"\n\"1692197\";\"Кесон-Сити\";\"other\"\n\"1692199\";\"Quezon\";\"main\"\n\"1692199\";\"Keson-Siti\";\"other\"\n\"1692199\";\"Кесон-Сити\";\"other\"\n\"1692201\";\"Quezon\";\"main\"\n\"1692205\";\"Quezon\";\"main\"\n\"1692210\";\"Quezon\";\"main\"\n\"1692211\";\"Quezon\";\"main\"\n\"1692211\";\"Alfonso XIII\";\"other\"\n\"1692211\";\"Keson-Siti\";\"other\"\n\"1692211\";\"Кесон-Сити\";\"other\"\n\"1692214\";\"Quezon\";\"main\"\n\"1692214\";\"Keson\";\"other\"\n\"1692214\";\"Kiokong\";\"other\"\n\"1692214\";\"Кесон\";\"other\"\n\"1692287\";\"Putol\";\"main\"\n\"1692291\";\"Putlod\";\"main\"\n\"1692291\";\"Putlog\";\"other\"\n\"1692291\";\"Putloo\";\"other\"\n\"1692300\";\"Puting Kahoy\";\"main\"\n\"1692302\";\"Putingkahoy\";\"main\"\n\"1692302\";\"Putingcahoy\";\"other\"\n\"1692302\";\"Putingkakoy\";\"other\"\n\"1692318\";\"Putiao\";\"main\"\n\"1692330\";\"Putat\";\"main\"\n\"1692360\";\"Puro Pingit\";\"main\"\n\"1692360\";\"Pura Pinget\";\"other\"\n\"1692360\";\"Puro\";\"other\"\n\"1692360\";\"Puro Pinget\";\"other\"\n\"1692360\";\"Puru Pinget\";\"other\"\n\"1692364\";\"Puro\";\"main\"\n\"1692364\";\"Goldbag\";\"other\"\n\"1692364\";\"Poro Landing\";\"other\"\n\"1692364\";\"Rio Guinobatan\";\"other\"\n\"1692367\";\"Puricay\";\"main\"\n\"1692367\";\"Purikay\";\"other\"\n\"1692373\";\"Porais\";\"main\"\n\"1692373\";\"Purais\";\"other\"\n\"1692376\";\"Porac\";\"main\"\n\"1692376\";\"Porach\";\"other\"\n\"1692376\";\"Purac\";\"other\"\n\"1692376\";\"Порач\";\"other\"\n\"1692377\";\"Pura\";\"main\"\n\"1692398\";\"Pontian\";\"main\"\n\"1692398\";\"Puntian\";\"other\"\n\"1692400\";\"Punta Silum\";\"main\"\n\"1692416\";\"Punta\";\"main\"\n\"1692416\";\"Punta Paddaya\";\"other\"\n\"1692419\";\"Punta\";\"main\"\n\"1692424\";\"Punta\";\"main\"\n\"1692429\";\"Punta\";\"main\"\n\"1692444\";\"Punolu\";\"main\"\n\"1692444\";\"Punol\";\"other\"\n\"1692460\";\"Pongol\";\"main\"\n\"1692460\";\"Pungol\";\"other\"\n\"1692475\";\"Puncan\";\"main\"\n\"1692477\";\"Punay\";\"main\"\n\"1692477\";\"Punai\";\"other\"\n\"1692479\";\"Punao\";\"main\"\n\"1692481\";\"Punang\";\"main\"\n\"1692481\";\"Punango\";\"other\"\n\"1692489\";\"Pulupandan\";\"main\"\n\"1692489\";\"Palupandan\";\"other\"\n\"1692489\";\"Puhipandan\";\"other\"\n\"1692491\";\"Pulung Santol\";\"main\"\n\"1692491\";\"Pulong Santol\";\"other\"\n\"1692493\";\"Pulungmasle\";\"main\"\n\"1692522\";\"Pulong Sampaloc\";\"main\"\n\"1692522\";\"Pulong Sampalok\";\"other\"\n\"1692522\";\"Pulong Sampoloc\";\"other\"\n\"1692529\";\"Pulong Gubat\";\"main\"\n\"1692529\";\"Pulongubat\";\"other\"\n\"1692549\";\"Pulo\";\"main\"\n\"1692550\";\"Pulo\";\"main\"\n\"1692550\";\"Polo\";\"other\"\n\"1692565\";\"Pulilan\";\"main\"\n\"1692603\";\"Pulangbato\";\"main\"\n\"1692650\";\"Pugo\";\"main\"\n\"1692685\";\"Puerto Princesa\";\"main\"\n\"1692685\";\"Lungsod ng Puerto Princesa\";\"other\"\n\"1692685\";\"Puerta Princesa\";\"other\"\n\"1692685\";\"Puerto Princesa City\";\"other\"\n\"1692685\";\"Syudad han Puerto Princesa\";\"other\"\n\"1692685\";\"pu lin sai sa gang\";\"other\"\n\"1692685\";\"Пуерто Принцеса\";\"other\"\n\"1692685\";\"普林塞薩港\";\"other\"\n\"1692688\";\"Puerto Galera\";\"main\"\n\"1692688\";\"Port Galera\";\"other\"\n\"1692688\";\"Puerto Calero\";\"other\"\n\"1692688\";\"Puerto Gallera\";\"other\"\n\"1692691\";\"Puerto Bello\";\"main\"\n\"1692691\";\"Hacienda Porto Bello\";\"other\"\n\"1692699\";\"Puelay\";\"main\"\n\"1692706\";\"Pudoc West\";\"main\"\n\"1692706\";\"Pudoc\";\"other\"\n\"1692708\";\"Pudoc\";\"main\"\n\"1692708\";\"Pudoc Norte\";\"other\"\n\"1692730\";\"Pualas\";\"main\"\n\"1692746\";\"Prosperidad\";\"main\"\n\"1692754\";\"Progreso\";\"main\"\n\"1692763\";\"Prinza\";\"main\"\n\"1692780\";\"President Roxas\";\"main\"\n\"1692780\";\"Lotudlotud\";\"other\"\n\"1692780\";\"Lutodlutod\";\"other\"\n\"1692780\";\"President Roxax\";\"other\"\n\"1692781\";\"President Roxas\";\"main\"\n\"1692781\";\"Roxas\";\"other\"\n\"1692784\";\"President Quirino\";\"main\"\n\"1692784\";\"Sambulawan\";\"other\"\n\"1692784\";\"Simbulawan\";\"other\"\n\"1692788\";\"Pitogo\";\"main\"\n\"1692788\";\"Pitoco\";\"other\"\n\"1692788\";\"President Carlos Polestico Garcia\";\"other\"\n\"1692792\";\"Parabcan\";\"main\"\n\"1692792\";\"Parubcan\";\"other\"\n\"1692792\";\"Presentacion\";\"other\"\n\"1692795\";\"Prenza\";\"main\"\n\"1692800\";\"Prado\";\"main\"\n\"1692817\";\"Pototan\";\"main\"\n\"1692820\";\"Potot\";\"main\"\n\"1692825\";\"Patong\";\"main\"\n\"1692825\";\"Potong\";\"other\"\n\"1692861\";\"San Vicente\";\"main\"\n\"1692861\";\"Port San Vicente\";\"other\"\n\"1692861\";\"San Vincent\";\"other\"\n\"1692861\";\"San Vincente\";\"other\"\n\"1692871\";\"Port Barton\";\"main\"\n\"1692901\";\"Poro\";\"main\"\n\"1692914\";\"Porac\";\"main\"\n\"1692914\";\"Porach\";\"other\"\n\"1692914\";\"Порач\";\"other\"\n\"1692977\";\"Pontevedra\";\"main\"\n\"1692978\";\"Pontevedra\";\"main\"\n\"1692978\";\"Portevedra\";\"other\"\n\"1692985\";\"Ponso\";\"main\"\n\"1692989\";\"Ponot\";\"main\"\n\"1692989\";\"Jose Dalman\";\"other\"\n\"1692996\";\"Ponong\";\"main\"\n\"1692996\";\"Ponong Grande\";\"other\"\n\"1693018\";\"Pung-Pang\";\"main\"\n\"1693018\";\"Pongpong\";\"other\"\n\"1693047\";\"Pondaguitan\";\"main\"\n\"1693047\";\"Pundaguitan\";\"other\"\n\"1693056\";\"Puloypuloy\";\"main\"\n\"1693056\";\"Poloy-Poloy\";\"other\"\n\"1693066\";\"Polopina\";\"main\"\n\"1693069\";\"Polonoling\";\"main\"\n\"1693069\";\"Polongding\";\"other\"\n\"1693072\";\"Polong Norte\";\"main\"\n\"1693072\";\"Polong\";\"other\"\n\"1693075\";\"Polong\";\"main\"\n\"1693077\";\"Polomolok\";\"main\"\n\"1693077\";\"Polomoloc\";\"other\"\n\"1693089\";\"Polo\";\"main\"\n\"1693092\";\"Polo\";\"main\"\n\"1693092\";\"Pulo\";\"other\"\n\"1693100\";\"Polo\";\"main\"\n\"1693104\";\"Polo\";\"main\"\n\"1693106\";\"Polo\";\"main\"\n\"1693112\";\"Polloc\";\"main\"\n\"1693125\";\"Polillo\";\"main\"\n\"1693136\";\"Polangui\";\"main\"\n\"1693142\";\"Polañge\";\"main\"\n\"1693142\";\"Polange\";\"ascii\"\n\"1693142\";\"Polangi\";\"other\"\n\"1693142\";\"Polangui\";\"other\"\n\"1693145\";\"Polanco\";\"main\"\n\"1693150\";\"Polahongon\";\"main\"\n\"1693150\";\"Palahongon\";\"other\"\n\"1693150\";\"Polabongon\";\"other\"\n\"1693171\";\"Pogonsili\";\"main\"\n\"1693201\";\"Poctol\";\"main\"\n\"1693238\";\"Plaridel\";\"main\"\n\"1693239\";\"Plaridel\";\"main\"\n\"1693239\";\"Quingua\";\"other\"\n\"1693239\";\"Quinqua\";\"other\"\n\"1693243\";\"Plaridel\";\"main\"\n\"1693243\";\"Siain\";\"other\"\n\"1693248\";\"Plaridel\";\"main\"\n\"1693250\";\"Plaridel\";\"main\"\n\"1693250\";\"Tigbauan\";\"other\"\n\"1693253\";\"Plaridel\";\"main\"\n\"1693255\";\"Plaridel\";\"main\"\n\"1693268\";\"Placer\";\"main\"\n\"1693268\";\"Paacer\";\"other\"\n\"1693270\";\"Placer\";\"main\"\n\"1693280\";\"Pitogo\";\"main\"\n\"1693280\";\"Pitugu\";\"other\"\n\"1693303\";\"Pitogo\";\"main\"\n\"1693307\";\"Pitogo\";\"main\"\n\"1693320\";\"Pitogo\";\"main\"\n\"1693394\";\"Limbuhan\";\"main\"\n\"1693394\";\"Limbujan\";\"other\"\n\"1693394\";\"Pio V. Corpus\";\"other\"\n\"1693394\";\"Pio V. Corpuz\";\"other\"\n\"1693396\";\"Pio Duran\";\"main\"\n\"1693401\";\"Pio\";\"main\"\n\"1693407\";\"Pinukpuk\";\"main\"\n\"1693407\";\"Pinucpuc\";\"other\"\n\"1693407\";\"Taga\";\"other\"\n\"1693409\";\"Pinugay\";\"main\"\n\"1693436\";\"Pinoma\";\"main\"\n\"1693440\";\"Pinokawan\";\"main\"\n\"1693440\";\"Pinocawan\";\"other\"\n\"1693461\";\"Pinit\";\"main\"\n\"1693468\";\"Pinili\";\"main\"\n\"1693491\";\"Pines\";\"main\"\n\"1693502\";\"Pindasan\";\"main\"\n\"1693502\";\"Pandasan\";\"other\"\n\"1693506\";\"Pindangan\";\"main\"\n\"1693510\";\"Pinayagan Norte\";\"main\"\n\"1693510\";\"Pinayagan\";\"other\"\n\"1693529\";\"Pinaring\";\"main\"\n\"1693574\";\"Pinamungahan\";\"main\"\n\"1693574\";\"Pihamungajan\";\"other\"\n\"1693574\";\"Pinamangajan\";\"other\"\n\"1693574\";\"Pinamangayan\";\"other\"\n\"1693574\";\"Pinamungajan\";\"other\"\n\"1693574\";\"Pinamunganjan\";\"other\"\n\"1693590\";\"Pinamopoan\";\"main\"\n\"1693603\";\"Pinambaran\";\"main\"\n\"1693618\";\"Pinamalayan\";\"main\"\n\"1693618\";\"Wawa\";\"other\"\n\"1693641\";\"Piñahan\";\"main\"\n\"1693641\";\"Pinahan\";\"ascii\"\n\"1693641\";\"Pinelands\";\"other\"\n\"1693652\";\"Pinagsibaan\";\"main\"\n\"1693661\";\"Pinagsabangan\";\"main\"\n\"1693721\";\"Panadtaban\";\"main\"\n\"1693721\";\"Pinadtaban\";\"other\"\n\"1693742\";\"Piña\";\"main\"\n\"1693742\";\"Pina\";\"ascii\"\n\"1693749\";\"Pimbalayan\";\"main\"\n\"1693778\";\"Pililla\";\"main\"\n\"1693785\";\"Pilig\";\"main\"\n\"1693795\";\"Pili\";\"main\"\n\"1693798\";\"Pili\";\"main\"\n\"1693799\";\"Pili\";\"main\"\n\"1693805\";\"Pili\";\"main\"\n\"1693805\";\"Pill\";\"other\"\n\"1693805\";\"Пили\";\"other\"\n\"1693839\";\"Pilar\";\"main\"\n\"1693840\";\"Pilar\";\"main\"\n\"1693843\";\"Pilar\";\"main\"\n\"1693843\";\"Pilar Town\";\"other\"\n\"1693848\";\"Pilar\";\"main\"\n\"1693849\";\"Pilar\";\"main\"\n\"1693870\";\"Pila\";\"main\"\n\"1693870\";\"Pily\";\"other\"\n\"1693870\";\"Пилы\";\"other\"\n\"1693874\";\"Pikit\";\"main\"\n\"1693874\";\"Fort Pikit\";\"other\"\n\"1693874\";\"Pikit Pagalungan\";\"other\"\n\"1693902\";\"Pigkelegan\";\"main\"\n\"1693903\";\"Pigcawayan\";\"main\"\n\"1693903\";\"Pigkawayan\";\"other\"\n\"1693927\";\"Pidsandawan\";\"main\"\n\"1693935\";\"Pidigan\";\"main\"\n\"1693941\";\"Piddig\";\"main\"\n\"1693941\";\"Pidding\";\"other\"\n\"1693970\";\"Piat\";\"main\"\n\"1693981\";\"Pias\";\"main\"\n\"1693982\";\"Pias-Pias\";\"main\"\n\"1693982\";\"Pias\";\"other\"\n\"1693987\";\"Piape I\";\"main\"\n\"1693987\";\"Piape\";\"other\"\n\"1693987\";\"Piapi\";\"other\"\n\"1694028\";\"Perrelos\";\"main\"\n\"1694045\";\"Perez\";\"main\"\n\"1694045\";\"Sangirin\";\"other\"\n\"1694075\";\"Peñaranda\";\"main\"\n\"1694075\";\"Penaranda\";\"ascii\"\n\"1694075\";\"Pen'jaranda\";\"other\"\n\"1694075\";\"Пеньяранда\";\"other\"\n\"1694089\";\"Peñablanca\";\"main\"\n\"1694089\";\"Penablanca\";\"ascii\"\n\"1694091\";\"Piña\";\"main\"\n\"1694091\";\"Pina\";\"ascii\"\n\"1694091\";\"Pena\";\"other\"\n\"1694091\";\"Peña\";\"other\"\n\"1694092\";\"Peña\";\"main\"\n\"1694092\";\"Pena\";\"ascii\"\n\"1694114\";\"Pedtad\";\"main\"\n\"1694158\";\"Paypay\";\"main\"\n\"1694167\";\"Payocpoc Sur\";\"main\"\n\"1694199\";\"Payapa\";\"main\"\n\"1694209\";\"Payao\";\"main\"\n\"1694210\";\"Payao\";\"main\"\n\"1694234\";\"Pawing\";\"main\"\n\"1694236\";\"Pawili\";\"main\"\n\"1694236\";\"Pauili\";\"other\"\n\"1694241\";\"Pawican\";\"main\"\n\"1694250\";\"Pawak\";\"main\"\n\"1694250\";\"Pawac\";\"other\"\n\"1694252\";\"Pawa\";\"main\"\n\"1694253\";\"Pawa\";\"main\"\n\"1694258\";\"Pawa\";\"main\"\n\"1694262\";\"Pavia\";\"main\"\n\"1694262\";\"Payia\";\"other\"\n\"1694262\";\"Ravia\";\"other\"\n\"1694267\";\"Paulba\";\"main\"\n\"1694286\";\"Pau\";\"main\"\n\"1694290\";\"Patuto\";\"main\"\n\"1694297\";\"Patonan\";\"main\"\n\"1694297\";\"Patun-an\";\"other\"\n\"1694317\";\"Pattao\";\"main\"\n\"1694319\";\"Patrocinio\";\"main\"\n\"1694327\";\"Patria\";\"main\"\n\"1694327\";\"Patriya\";\"other\"\n\"1694331\";\"Patpata Segundo\";\"main\"\n\"1694331\";\"Patpata\";\"other\"\n\"1694338\";\"Pato-o\";\"main\"\n\"1694365\";\"Patnongon\";\"main\"\n\"1694369\";\"Patnanungan\";\"main\"\n\"1694369\";\"Patnanongan\";\"other\"\n\"1694382\";\"Patindeguen\";\"main\"\n\"1694383\";\"Patin-ay\";\"main\"\n\"1694396\";\"Patique\";\"main\"\n\"1694396\";\"Paticui\";\"other\"\n\"1694412\";\"Patayac\";\"main\"\n\"1694412\";\"Patayak\";\"other\"\n\"1694418\";\"Patawag\";\"main\"\n\"1694418\";\"Patauag\";\"other\"\n\"1694432\";\"Patao\";\"main\"\n\"1694432\";\"Patoa\";\"other\"\n\"1694475\";\"Patabog\";\"main\"\n\"1694477\";\"Pata\";\"main\"\n\"1694484\";\"Pasuquin\";\"main\"\n\"1694491\";\"Pastrana\";\"main\"\n\"1694498\";\"Passi\";\"main\"\n\"1694514\";\"Pasongcawayan\";\"main\"\n\"1694514\";\"Pasong Kawayan\";\"other\"\n\"1694556\";\"Pasil\";\"main\"\n\"1694559\";\"Pasil\";\"main\"\n\"1694579\";\"Pasig\";\"main\"\n\"1694585\";\"Pasibe West\";\"main\"\n\"1694585\";\"Pasibi\";\"other\"\n\"1694585\";\"Pasibi Sur\";\"other\"\n\"1694589\";\"Pasian\";\"main\"\n\"1694589\";\"Santa Felomena\";\"other\"\n\"1694631\";\"Pasacao\";\"main\"\n\"1694660\";\"Parista\";\"main\"\n\"1694663\";\"Parioc Segundo\";\"main\"\n\"1694663\";\"Parioc\";\"other\"\n\"1694667\";\"Paringao\";\"main\"\n\"1694667\";\"Paringaor\";\"other\"\n\"1694680\";\"Parian Dakula\";\"main\"\n\"1694680\";\"Parian Dacula\";\"other\"\n\"1694687\";\"Parion\";\"main\"\n\"1694687\";\"Parian\";\"other\"\n\"1694759\";\"Parangan\";\"main\"\n\"1694767\";\"Parang\";\"main\"\n\"1694773\";\"Parang\";\"main\"\n\"1694775\";\"Parang\";\"main\"\n\"1694776\";\"Parang\";\"main\"\n\"1694791\";\"Paraiso\";\"main\"\n\"1694792\";\"Paraiso\";\"main\"\n\"1694803\";\"Paradahan\";\"main\"\n\"1694807\";\"Paracelis\";\"main\"\n\"1694812\";\"Paracale\";\"main\"\n\"1694861\";\"Paombong\";\"main\"\n\"1694861\";\"Paonbong\";\"other\"\n\"1694863\";\"Paulba\";\"main\"\n\"1694863\";\"Paolbo\";\"other\"\n\"1694871\";\"Paoay\";\"main\"\n\"1694895\";\"Panukulan\";\"main\"\n\"1694898\";\"Panognawan\";\"main\"\n\"1694898\";\"Panugnawan\";\"other\"\n\"1694909\";\"Pantukan\";\"main\"\n\"1694909\";\"Kingking\";\"other\"\n\"1694914\";\"Pantubig\";\"main\"\n\"1694914\";\"Puting Tubig\";\"other\"\n\"1694929\";\"Pantihan No. 2\";\"main\"\n\"1694929\";\"Pantijan\";\"other\"\n\"1694941\";\"Pantay Na Matanda\";\"main\"\n\"1694941\";\"Pantay\";\"other\"\n\"1694956\";\"Pantao-Ragat\";\"main\"\n\"1694956\";\"Ragat\";\"other\"\n\"1694964\";\"Pantao\";\"main\"\n\"1694964\";\"Panta\";\"other\"\n\"1694988\";\"Pantabangan\";\"main\"\n\"1694988\";\"Panabangan\";\"other\"\n\"1694992\";\"Pansoy\";\"main\"\n\"1695002\";\"Pansol\";\"main\"\n\"1695002\";\"Panso\";\"other\"\n\"1695053\";\"Panlinlang\";\"main\"\n\"1695065\";\"Panlaitan\";\"main\"\n\"1695082\";\"Panitan\";\"main\"\n\"1695082\";\"Panatan\";\"other\"\n\"1695082\";\"Paniban\";\"other\"\n\"1695083\";\"Panitian\";\"main\"\n\"1695083\";\"Panitan\";\"other\"\n\"1695097\";\"Paniqui\";\"main\"\n\"1695100\";\"Paniqui\";\"main\"\n\"1695100\";\"Panique\";\"other\"\n\"1695107\";\"Panique\";\"main\"\n\"1695137\";\"Panikihan\";\"main\"\n\"1695142\";\"Panikian\";\"main\"\n\"1695144\";\"Panikian\";\"main\"\n\"1695175\";\"Pangyan\";\"main\"\n\"1695180\";\"Simbahan\";\"main\"\n\"1695180\";\"Pangutaran\";\"other\"\n\"1695180\";\"Pangutatan\";\"other\"\n\"1695180\";\"Simbanan\";\"other\"\n\"1695185\";\"Pangulayan\";\"main\"\n\"1695185\";\"Panggulayan\";\"other\"\n\"1695194\";\"Panguiranan\";\"main\"\n\"1695220\";\"Pangpang\";\"main\"\n\"1695227\";\"Pangpang\";\"main\"\n\"1695250\";\"Pañgobilian\";\"main\"\n\"1695250\";\"Pangobilian\";\"ascii\"\n\"1695262\";\"Panglao\";\"main\"\n\"1695283\";\"Pangil\";\"main\"\n\"1695284\";\"Pañgil\";\"main\"\n\"1695284\";\"Pangil\";\"ascii\"\n\"1695284\";\"Pangi\";\"other\"\n\"1695284\";\"Pañgi\";\"other\"\n\"1695292\";\"Pangian\";\"main\"\n\"1695324\";\"Pangdan\";\"main\"\n\"1695324\";\"Pangdon\";\"other\"\n\"1695330\";\"Pangdan\";\"main\"\n\"1695330\";\"Pandan\";\"other\"\n\"1695360\";\"Pangascasan\";\"main\"\n\"1695360\";\"Panasgasan\";\"other\"\n\"1695377\";\"Pangapisam\";\"main\"\n\"1695377\";\"Pangapisan\";\"other\"\n\"1695383\";\"Pangao\";\"main\"\n\"1695399\";\"Panganiban\";\"main\"\n\"1695400\";\"Panganiban\";\"main\"\n\"1695400\";\"Payo\";\"other\"\n\"1695427\";\"Pangal Sur\";\"main\"\n\"1695427\";\"Pangal\";\"other\"\n\"1695438\";\"Pangabuan\";\"main\"\n\"1695438\";\"Panagabuan\";\"other\"\n\"1695444\";\"Pang\";\"main\"\n\"1695455\";\"Pando\";\"main\"\n\"1695462\";\"Pandi\";\"main\"\n\"1695462\";\"Panda\";\"other\"\n\"1695462\";\"Панда\";\"other\"\n\"1695504\";\"New Pandanon\";\"main\"\n\"1695504\";\"Pandanon\";\"other\"\n\"1695506\";\"Pandan Niog\";\"main\"\n\"1695506\";\"Pangdan\";\"other\"\n\"1695546\";\"Pandan\";\"main\"\n\"1695547\";\"Pandan\";\"main\"\n\"1695547\";\"Panadan\";\"other\"\n\"1695566\";\"Pandan\";\"main\"\n\"1695566\";\"Padan\";\"other\"\n\"1695583\";\"Pandacaqui\";\"main\"\n\"1695583\";\"Pandakaki\";\"other\"\n\"1695594\";\"Pancol\";\"main\"\n\"1695598\";\"Pance\";\"main\"\n\"1695602\";\"Panaytayon\";\"main\"\n\"1695614\";\"Panayacan\";\"main\"\n\"1695614\";\"Panayakan\";\"other\"\n\"1695619\";\"Panay\";\"main\"\n\"1695619\";\"Panay Town\";\"other\"\n\"1695620\";\"Pan-an\";\"main\"\n\"1695620\";\"Pan-ay\";\"other\"\n\"1695622\";\"Panay\";\"main\"\n\"1695702\";\"Panan\";\"main\"\n\"1695728\";\"Panalo-on\";\"main\"\n\"1695734\";\"Panalipan\";\"main\"\n\"1695734\";\"Panalipon\";\"other\"\n\"1695736\";\"Panalingaan\";\"main\"\n\"1695743\";\"Panalanoy\";\"main\"\n\"1695751\";\"Panacan\";\"main\"\n\"1695751\";\"Panakan\";\"other\"\n\"1695802\";\"Panabuan\";\"main\"\n\"1695804\";\"Panabo\";\"main\"\n\"1695808\";\"Panabiñgan\";\"main\"\n\"1695808\";\"Panabingan\";\"ascii\"\n\"1695830\";\"Pamplona\";\"main\"\n\"1695830\";\"Bidduang\";\"other\"\n\"1695833\";\"Pamplona\";\"main\"\n\"1695834\";\"Pamplona\";\"main\"\n\"1695887\";\"Pambujan\";\"main\"\n\"1695887\";\"Pambuhan\";\"other\"\n\"1695887\";\"Pambunan\";\"other\"\n\"1695887\";\"Pamuhan\";\"other\"\n\"1695893\";\"Pambuhan\";\"main\"\n\"1695893\";\"Panbuhan\";\"other\"\n\"1695898\";\"Pambisan\";\"main\"\n\"1695909\";\"Pamatawan\";\"main\"\n\"1695921\";\"Pamantingan\";\"main\"\n\"1695956\";\"Palusapis\";\"main\"\n\"1695956\";\"Palusapig\";\"other\"\n\"1695982\";\"Paluan\";\"main\"\n\"1695982\";\"Lipa\";\"other\"\n\"1695994\";\"Palsong\";\"main\"\n\"1696017\";\"Palompon\";\"main\"\n\"1696017\";\"Palompan\";\"other\"\n\"1696023\";\"Palomoc\";\"main\"\n\"1696023\";\"Palomac\";\"other\"\n\"1696023\";\"Palomok\";\"other\"\n\"1696041\";\"Palo\";\"main\"\n\"1696041\";\"Polo\";\"other\"\n\"1696047\";\"Palma Gil\";\"main\"\n\"1696061\";\"Palkan\";\"main\"\n\"1696105\";\"Palimbang\";\"main\"\n\"1696105\";\"Palimban\";\"other\"\n\"1696136\";\"Palian\";\"main\"\n\"1696140\";\"Palhi\";\"main\"\n\"1696141\";\"Palguyod\";\"main\"\n\"1696141\";\"Palguyog\";\"other\"\n\"1696141\";\"Palugyog\";\"other\"\n\"1696145\";\"Palestina\";\"main\"\n\"1696147\";\"Paldit\";\"main\"\n\"1696165\";\"Palayan City\";\"main\"\n\"1696165\";\"Palayan\";\"other\"\n\"1696188\";\"Palauig\";\"main\"\n\"1696217\";\"Palaroo\";\"main\"\n\"1696217\";\"Palarao\";\"other\"\n\"1696217\";\"Palaraw\";\"other\"\n\"1696234\";\"Palapag\";\"main\"\n\"1696256\";\"Palanit\";\"main\"\n\"1696261\";\"Palangue\";\"main\"\n\"1696261\";\"Palangui\";\"other\"\n\"1696289\";\"Palanas\";\"main\"\n\"1696312\";\"Palanas\";\"main\"\n\"1696312\";\"Palampas\";\"other\"\n\"1696312\";\"Paljampas\";\"other\"\n\"1696333\";\"Palali\";\"main\"\n\"1696333\";\"Palale\";\"other\"\n\"1696354\";\"Palahanan Primero\";\"main\"\n\"1696360\";\"Palagao Norte\";\"main\"\n\"1696360\";\"Palagao\";\"other\"\n\"1696368\";\"Palacpalac\";\"main\"\n\"1696395\";\"Pakil\";\"main\"\n\"1696398\";\"Pakiad\";\"main\"\n\"1696398\";\"Kakiad\";\"other\"\n\"1696398\";\"Pakiao\";\"other\"\n\"1696416\";\"Pajo\";\"main\"\n\"1696416\";\"Paho\";\"other\"\n\"1696428\";\"Paitan\";\"main\"\n\"1696428\";\"San Pedro Martir Paitan\";\"other\"\n\"1696431\";\"Paitan\";\"main\"\n\"1696437\";\"Paitan\";\"main\"\n\"1696448\";\"Paiisa\";\"main\"\n\"1696482\";\"Pagudpud\";\"main\"\n\"1696482\";\"Pagupud\";\"other\"\n\"1696505\";\"Pagsanjan\";\"main\"\n\"1696505\";\"Paxenheim\";\"other\"\n\"1696524\";\"Pagsañgahan\";\"main\"\n\"1696524\";\"Pagsangahan\";\"ascii\"\n\"1696524\";\"Pasangahan\";\"other\"\n\"1696529\";\"Pagsana-an\";\"main\"\n\"1696529\";\"Pagsanahgn\";\"other\"\n\"1696538\";\"Pagsabangan\";\"main\"\n\"1696614\";\"Pagbilao\";\"main\"\n\"1696652\";\"Pagatin\";\"main\"\n\"1696662\";\"Pag-asa\";\"main\"\n\"1696679\";\"Pagangan\";\"main\"\n\"1696684\";\"Pagalungan\";\"main\"\n\"1696684\";\"Balumis\";\"other\"\n\"1696684\";\"Balumis Pagalungan\";\"other\"\n\"1696684\";\"Pagatungan\";\"other\"\n\"1696684\";\"Pikit Pagalungan\";\"other\"\n\"1696718\";\"Paete\";\"main\"\n\"1696738\";\"Padre Zamora\";\"main\"\n\"1696742\";\"Padre Garcia\";\"main\"\n\"1696742\";\"Lumang Bayan\";\"other\"\n\"1696742\";\"Padre V. Garcia\";\"other\"\n\"1696744\";\"Padre Burgos\";\"main\"\n\"1696744\";\"Burgos\";\"other\"\n\"1696744\";\"Laguimanoc\";\"other\"\n\"1696751\";\"Padong\";\"main\"\n\"1696761\";\"Padaya\";\"main\"\n\"1696761\";\"Paddaya\";\"other\"\n\"1696767\";\"Padapada\";\"main\"\n\"1696772\";\"Padang\";\"main\"\n\"1696780\";\"Padada\";\"main\"\n\"1696808\";\"Pacoroman\";\"main\"\n\"1696814\";\"Pacol\";\"main\"\n\"1696828\";\"Paclolo\";\"main\"\n\"1696886\";\"Paatan\";\"main\"\n\"1696886\";\"Paalan\";\"other\"\n\"1696886\";\"Paatun\";\"other\"\n\"1696896\";\"Paagahan\";\"main\"\n\"1696899\";\"Ozamis\";\"main\"\n\"1696899\";\"Ozamis City\";\"other\"\n\"1696899\";\"Ozamiz\";\"other\"\n\"1696924\";\"Owak\";\"main\"\n\"1696924\";\"Oac\";\"other\"\n\"1696942\";\"Oton\";\"main\"\n\"1696942\";\"Oton Town\";\"other\"\n\"1696960\";\"Utabi\";\"main\"\n\"1696960\";\"Otabe\";\"other\"\n\"1696960\";\"Otavi\";\"other\"\n\"1696960\";\"Utabe\";\"other\"\n\"1696960\";\"Utavi\";\"other\"\n\"1696973\";\"Osmeña\";\"main\"\n\"1696973\";\"Osmena\";\"ascii\"\n\"1696983\";\"Osmeña\";\"main\"\n\"1696983\";\"Osmena\";\"ascii\"\n\"1696989\";\"Oslob\";\"main\"\n\"1696995\";\"Osias\";\"main\"\n\"1696996\";\"Osiao\";\"main\"\n\"1696996\";\"San Pedro\";\"other\"\n\"1697006\";\"Oroquieta\";\"main\"\n\"1697006\";\"Oroguieta\";\"other\"\n\"1697006\";\"Oroquieta City\";\"other\"\n\"1697007\";\"Orong\";\"main\"\n\"1697007\";\"Crong\";\"other\"\n\"1697007\";\"Orang\";\"other\"\n\"1697018\";\"Ormoc\";\"main\"\n\"1697018\";\"Ciudad ti Ormoc\";\"other\"\n\"1697018\";\"Dakbayan sa Ormoc\";\"other\"\n\"1697018\";\"MacArthur\";\"other\"\n\"1697018\";\"Ormco\";\"other\"\n\"1697018\";\"Ormoc City\";\"other\"\n\"1697018\";\"Oromoc\";\"other\"\n\"1697018\";\"Syudad han Ormoc\";\"other\"\n\"1697023\";\"Orion\";\"main\"\n\"1697023\";\"Орион\";\"other\"\n\"1697042\";\"Oras\";\"main\"\n\"1697046\";\"Orani\";\"main\"\n\"1697052\";\"Oracon\";\"main\"\n\"1697072\";\"Opol\";\"main\"\n\"1697072\";\"Opal\";\"other\"\n\"1697110\";\"Ondoy\";\"main\"\n\"1697110\";\"Omdoy\";\"other\"\n\"1697155\";\"Olutanga\";\"main\"\n\"1697155\";\"Calida\";\"other\"\n\"1697155\";\"Suba Nipa\";\"other\"\n\"1697175\";\"Olongapo\";\"main\"\n\"1697175\";\"Ciudad ti Olongapo\";\"other\"\n\"1697175\";\"Olongapo City\";\"other\"\n\"1697175\";\"Olóngapo\";\"other\"\n\"1697191\";\"Olingan\";\"main\"\n\"1697203\";\"Olea\";\"main\"\n\"1697245\";\"Okiot\";\"main\"\n\"1697260\";\"Udtongan\";\"main\"\n\"1697260\";\"Ogtongon\";\"other\"\n\"1697266\";\"Ogod\";\"main\"\n\"1697294\";\"Odiongan\";\"main\"\n\"1697299\";\"Odiongan\";\"main\"\n\"1697301\";\"Odiong\";\"main\"\n\"1697303\";\"Odiong\";\"main\"\n\"1697306\";\"Odiong\";\"main\"\n\"1697310\";\"Odicon\";\"main\"\n\"1697320\";\"Ocoy\";\"main\"\n\"1697320\";\"Okoy\";\"other\"\n\"1697326\";\"Ochanado\";\"main\"\n\"1697326\";\"Ochando\";\"other\"\n\"1697331\";\"Ocaña\";\"main\"\n\"1697331\";\"Ocana\";\"ascii\"\n\"1697332\";\"Ocampo\";\"main\"\n\"1697361\";\"Obong\";\"main\"\n\"1697376\";\"Obando\";\"main\"\n\"1697387\";\"Oaqui\";\"main\"\n\"1697439\";\"Noling\";\"main\"\n\"1697439\";\"Nuling\";\"other\"\n\"1697447\";\"Nugas\";\"main\"\n\"1697457\";\"Nueva Vida Sur\";\"main\"\n\"1697457\";\"Nueva Vida\";\"other\"\n\"1697459\";\"Nueva Valencia\";\"main\"\n\"1697459\";\"Igang\";\"other\"\n\"1697464\";\"Nueva Fuerza\";\"main\"\n\"1697486\";\"Noveleta\";\"main\"\n\"1697489\";\"Novallas\";\"main\"\n\"1697489\";\"Novallaso\";\"other\"\n\"1697489\";\"Novollas\";\"other\"\n\"1697497\";\"Norzagaray\";\"main\"\n\"1697497\";\"Norzugaray\";\"other\"\n\"1697577\";\"Norala\";\"main\"\n\"1697607\";\"Nuing\";\"main\"\n\"1697607\";\"Noing\";\"other\"\n\"1697607\";\"Nuin\";\"other\"\n\"1697622\";\"Niugan\";\"main\"\n\"1697622\";\"Niogan\";\"other\"\n\"1697624\";\"Niugan\";\"main\"\n\"1697624\";\"Niogan\";\"other\"\n\"1697624\";\"Niyugan\";\"other\"\n\"1697663\";\"Niñoy\";\"main\"\n\"1697663\";\"Ninoy\";\"ascii\"\n\"1697675\";\"Nilombot Golden\";\"main\"\n\"1697675\";\"Nilombot\";\"other\"\n\"1697696\";\"Nieves\";\"main\"\n\"1697707\";\"Nibaliw Central\";\"main\"\n\"1697707\";\"Nibalio\";\"other\"\n\"1697707\";\"Nibaliw\";\"other\"\n\"1697734\";\"New Washington\";\"main\"\n\"1697734\";\"New Washington Town\";\"other\"\n\"1697734\";\"Port Washington\";\"other\"\n\"1697736\";\"New Visayas\";\"main\"\n\"1697739\";\"New Sibonga\";\"main\"\n\"1697753\";\"New Panay\";\"main\"\n\"1697762\";\"Lucena\";\"main\"\n\"1697762\";\"New Lucena\";\"other\"\n\"1697764\";\"New Leyte\";\"main\"\n\"1697765\";\"New Lagao\";\"main\"\n\"1697765\";\"Lagao\";\"other\"\n\"1697769\";\"New Iloilo\";\"main\"\n\"1697773\";\"New Corella\";\"main\"\n\"1697775\";\"New Cebu\";\"main\"\n\"1697782\";\"New Bohol\";\"main\"\n\"1697786\";\"New Batu Batu\";\"main\"\n\"1697787\";\"New Bataan\";\"main\"\n\"1697787\";\"Bantacan\";\"other\"\n\"1697793\";\"New Agutaya\";\"main\"\n\"1697799\";\"Nenita\";\"main\"\n\"1697800\";\"Nena\";\"main\"\n\"1697848\";\"Navotas\";\"main\"\n\"1697848\";\"Nabotas\";\"other\"\n\"1697863\";\"Navatat\";\"main\"\n\"1697879\";\"Naval\";\"main\"\n\"1697911\";\"Naujan\";\"main\"\n\"1697911\";\"Navjan\";\"other\"\n\"1697942\";\"Natalungan\";\"main\"\n\"1697942\";\"Natulongan\";\"other\"\n\"1697949\";\"Natubleng\";\"main\"\n\"1697962\";\"Nato\";\"main\"\n\"1697966\";\"Nato\";\"main\"\n\"1697970\";\"Natividad\";\"main\"\n\"1697998\";\"Natapian\";\"main\"\n\"1697998\";\"Natappian\";\"other\"\n\"1698030\";\"Nasugbu\";\"main\"\n\"1698046\";\"Masonogan\";\"main\"\n\"1698046\";\"Nasonogan\";\"other\"\n\"1698046\";\"Nasonugan\";\"other\"\n\"1698046\";\"Nasunogan\";\"other\"\n\"1698063\";\"Nasipit\";\"main\"\n\"1698063\";\"Nasapit\";\"other\"\n\"1698090\";\"Narvacan\";\"main\"\n\"1698103\";\"Narra\";\"main\"\n\"1698108\";\"Naro\";\"main\"\n\"1698108\";\"Naro Island\";\"other\"\n\"1698116\";\"Marawis\";\"main\"\n\"1698116\";\"Narauis\";\"other\"\n\"1698116\";\"Narawis\";\"other\"\n\"1698135\";\"Napuro\";\"main\"\n\"1698160\";\"Napoles\";\"main\"\n\"1698177\";\"Napnapan\";\"main\"\n\"1698208\";\"Napalitan\";\"main\"\n\"1698208\";\"Napaliran\";\"other\"\n\"1698225\";\"Nanyo\";\"main\"\n\"1698250\";\"Nangka\";\"main\"\n\"1698250\";\"Nanca\";\"other\"\n\"1698250\";\"Nanka\";\"other\"\n\"1698269\";\"Nangka\";\"main\"\n\"1698270\";\"Nangka\";\"main\"\n\"1698273\";\"Nañgka\";\"main\"\n\"1698273\";\"Nangka\";\"ascii\"\n\"1698281\";\"Nangka\";\"main\"\n\"1698281\";\"Nangca\";\"other\"\n\"1698289\";\"Nangan\";\"main\"\n\"1698296\";\"Nangalisan\";\"main\"\n\"1698323\";\"Nancamarinan\";\"main\"\n\"1698327\";\"Nancalabasaan\";\"main\"\n\"1698354\";\"Namuac\";\"main\"\n\"1698357\";\"Nampicuan\";\"main\"\n\"1698384\";\"Namboongan\";\"main\"\n\"1698391\";\"Nambalan\";\"main\"\n\"1698431\";\"Nama\";\"main\"\n\"1698440\";\"Nalus\";\"main\"\n\"1698446\";\"Nalundan\";\"main\"\n\"1698457\";\"Nalsian Norte\";\"main\"\n\"1698457\";\"Nalsian\";\"other\"\n\"1698461\";\"Brgy. Nalook, kalibo\";\"main\"\n\"1698532\";\"Naisud\";\"main\"\n\"1698532\";\"Naisud Town\";\"other\"\n\"1698538\";\"Nailong\";\"main\"\n\"1698538\";\"Nailon\";\"other\"\n\"1698542\";\"Naili\";\"main\"\n\"1698542\";\"Cassia\";\"other\"\n\"1698542\";\"Naile\";\"other\"\n\"1698548\";\"Naic\";\"main\"\n\"1698561\";\"Nahawan\";\"main\"\n\"1698561\";\"Nahauan\";\"other\"\n\"1698595\";\"Naguilian\";\"main\"\n\"1698595\";\"Naguihan\";\"other\"\n\"1698595\";\"Naguilan\";\"other\"\n\"1698595\";\"Naguillian\";\"other\"\n\"1698599\";\"Naguilayan\";\"main\"\n\"1698599\";\"Naguilaryan\";\"other\"\n\"1698606\";\"Naguelguel\";\"main\"\n\"1698621\";\"Nagtipunan\";\"main\"\n\"1698658\";\"Nagsaing\";\"main\"\n\"1698673\";\"Nagrumboan\";\"main\"\n\"1698695\";\"Nagpandayan\";\"main\"\n\"1698722\";\"Nagiba\";\"main\"\n\"1698722\";\"Nag-iba II\";\"other\"\n\"1698722\";\"Nag-iba Segundo\";\"other\"\n\"1698722\";\"Naguiba\";\"other\"\n\"1698728\";\"Naghalin\";\"main\"\n\"1698728\";\"Naghalen\";\"other\"\n\"1698740\";\"Nagcarlan\";\"main\"\n\"1698777\";\"Nagbalaye\";\"main\"\n\"1698777\";\"Nagbalayo\";\"other\"\n\"1698783\";\"Nagbacalan\";\"main\"\n\"1698783\";\"Nagbakalan\";\"other\"\n\"1698802\";\"Naagas\";\"main\"\n\"1698802\";\"Nagas\";\"other\"\n\"1698829\";\"Naga\";\"main\"\n\"1698829\";\"Naga City\";\"other\"\n\"1698829\";\"Nagi\";\"other\"\n\"1698829\";\"Наги\";\"other\"\n\"1698839\";\"Naga\";\"main\"\n\"1698840\";\"Naga\";\"main\"\n\"1698887\";\"Nabunturan\";\"main\"\n\"1698905\";\"Nabulao\";\"main\"\n\"1698905\";\"Jabulao\";\"other\"\n\"1698914\";\"Nabannagan\";\"main\"\n\"1698914\";\"Nabuangan\";\"other\"\n\"1698921\";\"Nabua\";\"main\"\n\"1698985\";\"Nabangig\";\"main\"\n\"1698985\";\"Napangig\";\"other\"\n\"1699010\";\"Naawan\";\"main\"\n\"1699010\";\"Naauan\";\"other\"\n\"1699031\";\"Muti\";\"main\"\n\"1699054\";\"Muricay\";\"main\"\n\"1699059\";\"Murcia\";\"main\"\n\"1699060\";\"Murcia\";\"main\"\n\"1699087\";\"Muñoz\";\"main\"\n\"1699087\";\"Munoz\";\"ascii\"\n\"1699088\";\"Muñoz\";\"main\"\n\"1699088\";\"Munoz\";\"ascii\"\n\"1699096\";\"Mungo\";\"main\"\n\"1699096\";\"Mongo\";\"other\"\n\"1699100\";\"Munai\";\"main\"\n\"1699100\";\"Manay\";\"other\"\n\"1699100\";\"Munay\";\"other\"\n\"1699124\";\"Mulauin\";\"main\"\n\"1699124\";\"Mulawin\";\"other\"\n\"1699134\";\"Mulanay\";\"main\"\n\"1699138\";\"Muladbucad\";\"main\"\n\"1699138\";\"Muladbukad\";\"other\"\n\"1699167\";\"Mozzozzin\";\"main\"\n\"1699167\";\"Mozzozin\";\"other\"\n\"1699169\";\"Mozon\";\"main\"\n\"1699169\";\"Muzon\";\"other\"\n\"1699180\";\"Motiong\";\"main\"\n\"1699204\";\"Morong\";\"main\"\n\"1699204\";\"Moron\";\"other\"\n\"1699204\";\"Моронг\";\"other\"\n\"1699205\";\"Morong\";\"main\"\n\"1699205\";\"Моронг\";\"other\"\n\"1699216\";\"Morobuan\";\"main\"\n\"1699216\";\"Morubuan\";\"other\"\n\"1699222\";\"Moriones\";\"main\"\n\"1699240\";\"Morales\";\"main\"\n\"1699246\";\"Moog\";\"main\"\n\"1699261\";\"Montilla\";\"main\"\n\"1699264\";\"Montevista\";\"main\"\n\"1699281\";\"Montecillo\";\"main\"\n\"1699281\";\"Monticello\";\"other\"\n\"1699293\";\"Montaneza\";\"main\"\n\"1699293\";\"Mantayosa\";\"other\"\n\"1699296\";\"Rodriguez\";\"main\"\n\"1699296\";\"Montalban\";\"other\"\n\"1699296\";\"Rodriges\";\"other\"\n\"1699296\";\"Родригес\";\"other\"\n\"1699310\";\"Monreal\";\"main\"\n\"1699314\";\"Monpon\";\"main\"\n\"1699314\";\"Mongpong\";\"other\"\n\"1699323\";\"Monkayo\";\"main\"\n\"1699323\";\"Moncayo\";\"other\"\n\"1699342\";\"Mondragon\";\"main\"\n\"1699347\";\"Monbon\";\"main\"\n\"1699352\";\"Monamon\";\"main\"\n\"1699366\";\"Molugan\";\"main\"\n\"1699366\";\"Malugan\";\"other\"\n\"1699388\";\"Molave\";\"main\"\n\"1699428\";\"Mogpog\";\"main\"\n\"1699428\";\"Mopog\";\"other\"\n\"1699450\";\"Mobo\";\"main\"\n\"1699454\";\"Moalboal\";\"main\"\n\"1699505\";\"Miranda\";\"main\"\n\"1699519\";\"Minuyan\";\"main\"\n\"1699519\";\"Minoyan\";\"other\"\n\"1699524\";\"Minuri\";\"main\"\n\"1699554\";\"Minolos\";\"main\"\n\"1699554\";\"Minilos\";\"other\"\n\"1699559\";\"Minlagas\";\"main\"\n\"1699559\";\"San Luis\";\"other\"\n\"1699570\";\"Minien Este\";\"main\"\n\"1699570\";\"Menien\";\"other\"\n\"1699570\";\"Minien\";\"other\"\n\"1699572\";\"Minglanilla\";\"main\"\n\"1699582\";\"Mindupok\";\"main\"\n\"1699617\";\"Minapasoc\";\"main\"\n\"1699617\";\"Minapasuk\";\"other\"\n\"1699619\";\"Minapan\";\"main\"\n\"1699626\";\"Minante\";\"main\"\n\"1699626\";\"Ninante\";\"other\"\n\"1699630\";\"Minanga Norte\";\"main\"\n\"1699630\";\"Minanga\";\"other\"\n\"1699638\";\"Minanga\";\"main\"\n\"1699655\";\"Minallo\";\"main\"\n\"1699656\";\"Minalin\";\"main\"\n\"1699659\";\"Minalabac\";\"main\"\n\"1699684\";\"Mina\";\"main\"\n\"1699684\";\"Minal\";\"other\"\n\"1699703\";\"Mileb\";\"main\"\n\"1699703\";\"Miteb\";\"other\"\n\"1699713\";\"Milaor\";\"main\"\n\"1699713\";\"Santo Domingo\";\"other\"\n\"1699720\";\"Milagros\";\"main\"\n\"1699755\";\"Midsayap\";\"main\"\n\"1699757\";\"Midsalip\";\"main\"\n\"1699782\";\"Miaray\";\"main\"\n\"1699788\";\"Mianay\";\"main\"\n\"1699788\";\"Mainay\";\"other\"\n\"1699791\";\"Miagao\";\"main\"\n\"1699791\";\"Miagao Town\";\"other\"\n\"1699793\";\"Miaga\";\"main\"\n\"1699802\";\"Meycauayan\";\"main\"\n\"1699802\";\"Meycawayan\";\"other\"\n\"1699805\";\"Mexico\";\"main\"\n\"1699827\";\"Merida\";\"main\"\n\"1699827\";\"Meriba\";\"other\"\n\"1699833\";\"Mercedes\";\"main\"\n\"1699833\";\"Meredes\";\"other\"\n\"1699838\";\"Mercedes\";\"main\"\n\"1699840\";\"Mercedes\";\"main\"\n\"1699840\";\"Las Mercedes\";\"other\"\n\"1699858\";\"Mendez-Nuñez\";\"main\"\n\"1699858\";\"Mendez-Nunez\";\"ascii\"\n\"1699858\";\"Mendez\";\"other\"\n\"1699890\";\"Medina\";\"main\"\n\"1699896\";\"Medellin\";\"main\"\n\"1699896\";\"Medelin\";\"other\"\n\"1699912\";\"McKinley\";\"main\"\n\"1699952\";\"Maypangdan\";\"main\"\n\"1699952\";\"Maypandan\";\"other\"\n\"1699960\";\"Mayorga\";\"main\"\n\"1699960\";\"Mayorgac\";\"other\"\n\"1699979\";\"Mayo\";\"main\"\n\"1699981\";\"Mayñgaran\";\"main\"\n\"1699981\";\"Mayngaran\";\"ascii\"\n\"1700009\";\"Maygatasan\";\"main\"\n\"1700009\";\"Maigatasan\";\"other\"\n\"1700013\";\"Maydolong\";\"main\"\n\"1700056\";\"Mayaposi\";\"main\"\n\"1700068\";\"Mayantoc\";\"main\"\n\"1700084\";\"Mayana\";\"main\"\n\"1700084\";\"Mayama\";\"other\"\n\"1700092\";\"Mayabon\";\"main\"\n\"1700105\";\"Maya\";\"main\"\n\"1700107\";\"Maxingal\";\"main\"\n\"1700107\";\"Maxingul\";\"other\"\n\"1700116\";\"Mawab\";\"main\"\n\"1700116\";\"Mauab\";\"other\"\n\"1700129\";\"Mauraro\";\"main\"\n\"1700148\";\"Maulawin\";\"main\"\n\"1700156\";\"Mauhao\";\"main\"\n\"1700156\";\"Maujao\";\"other\"\n\"1700170\";\"Maugat\";\"main\"\n\"1700179\";\"Mauban\";\"main\"\n\"1700197\";\"Maturanoc\";\"main\"\n\"1700240\";\"Matti\";\"main\"\n\"1700268\";\"Matnog\";\"main\"\n\"1700269\";\"Matnog\";\"main\"\n\"1700276\";\"Matlang\";\"main\"\n\"1700282\";\"Matiompong\";\"main\"\n\"1700295\";\"Matingain\";\"main\"\n\"1700310\";\"Matinao\";\"main\"\n\"1700310\";\"Malinao\";\"other\"\n\"1700310\";\"Mulinao\";\"other\"\n\"1700338\";\"Maticmatic\";\"main\"\n\"1700346\";\"Matiao\";\"main\"\n\"1700352\";\"Mat-i\";\"main\"\n\"1700356\";\"Mat-i\";\"main\"\n\"1700360\";\"Mati\";\"main\"\n\"1700360\";\"Мати\";\"other\"\n\"1700377\";\"Mataywanac\";\"main\"\n\"1700377\";\"Matayuanac\";\"other\"\n\"1700379\";\"Matayumtayum\";\"main\"\n\"1700433\";\"Matangad\";\"main\"\n\"1700447\";\"Matanao\";\"main\"\n\"1700447\";\"Matinao\";\"other\"\n\"1700476\";\"Matalom\";\"main\"\n\"1700490\";\"Matalam\";\"main\"\n\"1700490\";\"Matalan\";\"other\"\n\"1700496\";\"Matala\";\"main\"\n\"1700519\";\"Matagbak\";\"main\"\n\"1700534\";\"Matacon\";\"main\"\n\"1700534\";\"Matacos\";\"other\"\n\"1700537\";\"Matabungkay\";\"main\"\n\"1700547\";\"Matabao\";\"main\"\n\"1700582\";\"Masoli\";\"main\"\n\"1700582\";\"Masuli\";\"other\"\n\"1700618\";\"Maslog\";\"main\"\n\"1700665\";\"Masinloc\";\"main\"\n\"1700686\";\"Masiga\";\"main\"\n\"1700712\";\"Masbate\";\"main\"\n\"1700721\";\"Massaya Sur\";\"main\"\n\"1700721\";\"Masaya Sur\";\"other\"\n\"1700724\";\"Masaya\";\"main\"\n\"1700732\";\"Masarayao\";\"main\"\n\"1700732\";\"Masarayas\";\"other\"\n\"1700733\";\"Masaraway\";\"main\"\n\"1700733\";\"Masarauag\";\"other\"\n\"1700733\";\"Masarawag\";\"other\"\n\"1700746\";\"Masapang\";\"main\"\n\"1700753\";\"Masantol\";\"main\"\n\"1700768\";\"Masalukot\";\"main\"\n\"1700774\";\"Mansalipit\";\"main\"\n\"1700774\";\"Masalipit\";\"other\"\n\"1700775\";\"Masaling\";\"main\"\n\"1700786\";\"Masaguisi\";\"main\"\n\"1700802\";\"Masaba\";\"main\"\n\"1700806\";\"Marupit\";\"main\"\n\"1700847\";\"Marogong\";\"main\"\n\"1700868\";\"Mariveles\";\"main\"\n\"1700876\";\"Mariroc\";\"main\"\n\"1700892\";\"Marintoc\";\"main\"\n\"1700917\";\"Marilao\";\"main\"\n\"1700917\";\"Марилао\";\"other\"\n\"1700933\";\"Marihatag\";\"main\"\n\"1700952\";\"Maricalom\";\"main\"\n\"1700962\";\"Maricaban\";\"main\"\n\"1700966\";\"Maribong\";\"main\"\n\"1700968\";\"Maribojoc\";\"main\"\n\"1700980\";\"Mariano\";\"main\"\n\"1700988\";\"Maria Cristina\";\"main\"\n\"1700994\";\"Maria Aurora\";\"main\"\n\"1700994\";\"San Jose\";\"other\"\n\"1701003\";\"Margosatubig\";\"main\"\n\"1701003\";\"Fort Margosatubig\";\"other\"\n\"1701006\";\"Margen\";\"main\"\n\"1701006\";\"Marhen\";\"other\"\n\"1701041\";\"Marbel\";\"main\"\n\"1701053\";\"Marawi City\";\"main\"\n\"1701053\";\"City of Dansalan\";\"other\"\n\"1701053\";\"Dansalan\";\"other\"\n\"1701053\";\"Dansalan City\";\"other\"\n\"1701053\";\"Maraur\";\"other\"\n\"1701053\";\"Marawi\";\"other\"\n\"1701054\";\"Marawi\";\"main\"\n\"1701054\";\"Dansalan\";\"other\"\n\"1701054\";\"Maravi\";\"other\"\n\"1701054\";\"Marawi City\";\"other\"\n\"1701054\";\"Марави\";\"other\"\n\"1701056\";\"Marawa\";\"main\"\n\"1701061\";\"Maravilla\";\"main\"\n\"1701083\";\"Marao\";\"main\"\n\"1701087\";\"Marantao\";\"main\"\n\"1701124\";\"Maramag\";\"main\"\n\"1701149\";\"Maragondon\";\"main\"\n\"1701149\";\"Maragandon\";\"other\"\n\"1701186\";\"Makiwalo\";\"main\"\n\"1701186\";\"Maquinalo\";\"other\"\n\"1701186\";\"Maquiualo\";\"other\"\n\"1701195\";\"Maquiling\";\"main\"\n\"1701195\";\"Maguiling\";\"other\"\n\"1701195\";\"Makiling\";\"other\"\n\"1701200\";\"Maquiapo\";\"main\"\n\"1701218\";\"Maputi\";\"main\"\n\"1701227\";\"Mapulot\";\"main\"\n\"1701229\";\"Mapulo\";\"main\"\n\"1701246\";\"Mapolopolo\";\"main\"\n\"1701257\";\"Mapili\";\"main\"\n\"1701281\";\"Mapaniqui\";\"main\"\n\"1701290\";\"Mapandan\";\"main\"\n\"1701296\";\"Mapanas\";\"main\"\n\"1701313\";\"Mapalad\";\"main\"\n\"1701314\";\"Mapalacsiao\";\"main\"\n\"1701342\";\"Maonon\";\"main\"\n\"1701342\";\"Bonon\";\"other\"\n\"1701383\";\"Manup\";\"main\"\n\"1701394\";\"Manuk Mangkaw\";\"main\"\n\"1701394\";\"Lokdatan\";\"other\"\n\"1701394\";\"Luuk Datan\";\"other\"\n\"1701394\";\"Manuk Mangaw\";\"other\"\n\"1701395\";\"Manukan\";\"main\"\n\"1701400\";\"Manuel Roxas\";\"main\"\n\"1701410\";\"Manubul\";\"main\"\n\"1701410\";\"Manubal\";\"other\"\n\"1701413\";\"Manuangan\";\"main\"\n\"1701431\";\"Mantiquil\";\"main\"\n\"1701441\";\"Manticao\";\"main\"\n\"1701441\";\"Mantikao\";\"other\"\n\"1701441\";\"Mantikaw\";\"other\"\n\"1701441\";\"Mantikow\";\"other\"\n\"1701469\";\"Mantang\";\"main\"\n\"1701472\";\"Mantampay\";\"main\"\n\"1701474\";\"Mantalongon\";\"main\"\n\"1701475\";\"Mantalongon\";\"main\"\n\"1701475\";\"Manta Longan\";\"other\"\n\"1701500\";\"Mansilingan\";\"main\"\n\"1701516\";\"Mansalay\";\"main\"\n\"1701516\";\"Bulalacao\";\"other\"\n\"1701537\";\"Manolo Fortich\";\"main\"\n\"1701551\";\"Manocmanoc\";\"main\"\n\"1701551\";\"Manok-Manok\";\"other\"\n\"1701551\";\"Манок-Манок\";\"other\"\n\"1701559\";\"Maño\";\"main\"\n\"1701559\";\"Mano\";\"ascii\"\n\"1701579\";\"Manlocahoc\";\"main\"\n\"1701582\";\"Malilinao\";\"main\"\n\"1701582\";\"Manlilinac\";\"other\"\n\"1701582\";\"Manlilinao\";\"other\"\n\"1701623\";\"Manito\";\"main\"\n\"1701643\";\"Maninihon\";\"main\"\n\"1701668\";\"Manila\";\"main\"\n\"1701668\";\"Manilla\";\"other\"\n\"1701668\";\"Manille\";\"other\"\n\"1701668\";\"Manilo\";\"other\"\n\"1701668\";\"Maníla\";\"other\"\n\"1701668\";\"Maynila\";\"other\"\n\"1701668\";\"Menila\";\"other\"\n\"1701668\";\"ma ni la\";\"other\"\n\"1701668\";\"manila\";\"other\"\n\"1701668\";\"manilla\";\"other\"\n\"1701668\";\"manira\";\"other\"\n\"1701668\";\"manyla\";\"other\"\n\"1701668\";\"mnila\";\"other\"\n\"1701668\";\"mnylh\";\"other\"\n\"1701668\";\"myanila\";\"other\"\n\"1701668\";\"Μανίλα\";\"other\"\n\"1701668\";\"Манила\";\"other\"\n\"1701668\";\"מנילה\";\"other\"\n\"1701668\";\"مانىلا\";\"other\"\n\"1701668\";\"مانيلا\";\"other\"\n\"1701668\";\"ম্যানিলা\";\"other\"\n\"1701668\";\"மணிலா\";\"other\"\n\"1701668\";\"มนิลา\";\"other\"\n\"1701668\";\"มะนิลา\";\"other\"\n\"1701668\";\"ማኒላ\";\"other\"\n\"1701668\";\"マニラ\";\"other\"\n\"1701668\";\"马尼拉\";\"other\"\n\"1701668\";\"마닐라\";\"other\"\n\"1701672\";\"Manikling\";\"main\"\n\"1701674\";\"Manika\";\"main\"\n\"1701688\";\"Manicahan\";\"main\"\n\"1701688\";\"Manicaan\";\"other\"\n\"1701692\";\"Manibaug\";\"main\"\n\"1701692\";\"Manibaug Pasig\";\"other\"\n\"1701702\";\"Manjoy\";\"main\"\n\"1701702\";\"Manhoy\";\"other\"\n\"1701723\";\"Manquiring\";\"main\"\n\"1701723\";\"Manguirin\";\"other\"\n\"1701723\";\"Manguiring\";\"other\"\n\"1701750\";\"Mangoso\";\"main\"\n\"1701789\";\"Mangili\";\"main\"\n\"1701789\";\"Luayon\";\"other\"\n\"1701789\";\"Mangile\";\"other\"\n\"1701799\";\"Mañgero\";\"main\"\n\"1701799\";\"Mangero\";\"ascii\"\n\"1701799\";\"Alonjiro\";\"other\"\n\"1701822\";\"Mangatarem\";\"main\"\n\"1701830\";\"Mangas\";\"main\"\n\"1701840\";\"Mangarine\";\"main\"\n\"1701840\";\"Mangaran\";\"other\"\n\"1701840\";\"Mangarin\";\"other\"\n\"1701872\";\"Mangaldan\";\"main\"\n\"1701874\";\"Manaloal\";\"main\"\n\"1701874\";\"Mangalcal\";\"other\"\n\"1701879\";\"Manggahan\";\"main\"\n\"1701879\";\"Mangahan\";\"other\"\n\"1701891\";\"Manga\";\"main\"\n\"1701899\";\"Mangga\";\"main\"\n\"1701899\";\"Manga\";\"other\"\n\"1701903\";\"Manga\";\"main\"\n\"1701911\";\"Manga\";\"main\"\n\"1701938\";\"Mandili\";\"main\"\n\"1701938\";\"Mandile\";\"other\"\n\"1701939\";\"Mandih\";\"main\"\n\"1701947\";\"Mandaue City\";\"main\"\n\"1701954\";\"Mandaon\";\"main\"\n\"1701962\";\"Mandangoa\";\"main\"\n\"1701998\";\"Mancilang\";\"main\"\n\"1701998\";\"Mansilang\";\"other\"\n\"1702002\";\"Mankayan\";\"main\"\n\"1702002\";\"Mancayan\";\"other\"\n\"1702031\";\"Manay\";\"main\"\n\"1702032\";\"Manay\";\"main\"\n\"1702037\";\"Manaulanan\";\"main\"\n\"1702041\";\"Manaul\";\"main\"\n\"1702051\";\"Manatal\";\"main\"\n\"1702056\";\"Manat\";\"main\"\n\"1702057\";\"Mainit\";\"main\"\n\"1702057\";\"Manat\";\"other\"\n\"1702066\";\"Manaring\";\"main\"\n\"1702077\";\"Manapla\";\"main\"\n\"1702077\";\"Manapala\";\"other\"\n\"1702083\";\"Manapa\";\"main\"\n\"1702096\";\"Manaoag\";\"main\"\n\"1702101\";\"Mananum\";\"main\"\n\"1702140\";\"Manamrag\";\"main\"\n\"1702140\";\"Manambrag\";\"other\"\n\"1702145\";\"Manalongon\";\"main\"\n\"1702145\";\"Manalongan\";\"other\"\n\"1702153\";\"Manalad\";\"main\"\n\"1702165\";\"Manogpi\";\"main\"\n\"1702165\";\"Managpi\";\"other\"\n\"1702166\";\"Managok\";\"main\"\n\"1702176\";\"Managa\";\"main\"\n\"1702183\";\"Manacsac\";\"main\"\n\"1702215\";\"Mamunit\";\"main\"\n\"1702215\";\"Mamonit\";\"other\"\n\"1702221\";\"Mampurog\";\"main\"\n\"1702221\";\"Manpurog\";\"other\"\n\"1702257\";\"Mambusao\";\"main\"\n\"1702263\";\"Mamburao\";\"main\"\n\"1702263\";\"Mambulao\";\"other\"\n\"1702271\";\"Mambulo\";\"main\"\n\"1702298\";\"Mambog\";\"main\"\n\"1702298\";\"Mambag-Buen\";\"other\"\n\"1702318\";\"Mambayaan\";\"main\"\n\"1702318\";\"Mambay-an\";\"other\"\n\"1702322\";\"Mambatangan\";\"main\"\n\"1702348\";\"Mambajao\";\"main\"\n\"1702348\";\"Mamajao\";\"other\"\n\"1702351\";\"Mabahin\";\"main\"\n\"1702351\";\"Mambahin\";\"other\"\n\"1702354\";\"Mambago\";\"main\"\n\"1702354\";\"Mambago-B\";\"other\"\n\"1702359\";\"Mambagatan\";\"main\"\n\"1702372\";\"Mamatid\";\"main\"\n\"1702396\";\"Mamali\";\"main\"\n\"1702402\";\"Mamala\";\"main\"\n\"1702402\";\"Mamalo\";\"other\"\n\"1702413\";\"Malvar\";\"main\"\n\"1702425\";\"Maluso\";\"main\"\n\"1702431\";\"Malusac\";\"main\"\n\"1702431\";\"Malusak\";\"other\"\n\"1702439\";\"Maluno\";\"main\"\n\"1702442\";\"Maluñgun\";\"main\"\n\"1702442\";\"Malungun\";\"ascii\"\n\"1702442\";\"Malungon\";\"other\"\n\"1702457\";\"Maluko\";\"main\"\n\"1702459\";\"Maluid\";\"main\"\n\"1702486\";\"Malway\";\"main\"\n\"1702486\";\"Maluay\";\"other\"\n\"1702487\";\"Maluanluan\";\"main\"\n\"1702492\";\"Maltana\";\"main\"\n\"1702539\";\"Maloma\";\"main\"\n\"1702540\";\"Malolos\";\"main\"\n\"1702540\";\"Malalos\";\"other\"\n\"1702540\";\"Malolas\";\"other\"\n\"1702544\";\"Maloh\";\"main\"\n\"1702544\";\"Malok\";\"other\"\n\"1702544\";\"Malon\";\"other\"\n\"1702544\";\"Malut\";\"other\"\n\"1702553\";\"Maloco\";\"main\"\n\"1702554\";\"Malocloc\";\"main\"\n\"1702591\";\"Mallig\";\"main\"\n\"1702615\";\"Malitubog\";\"main\"\n\"1702633\";\"Malitbog\";\"main\"\n\"1702635\";\"Malitbog\";\"main\"\n\"1702637\";\"Malitbog\";\"main\"\n\"1702649\";\"Malita\";\"main\"\n\"1702649\";\"Malit\";\"other\"\n\"1702652\";\"Malisbeng\";\"main\"\n\"1702652\";\"Malisbong\";\"other\"\n\"1702678\";\"Malinta\";\"main\"\n\"1702693\";\"Malingin\";\"main\"\n\"1702708\";\"Malinaw\";\"main\"\n\"1702708\";\"Malinao\";\"other\"\n\"1702718\";\"Malinao Ilaya\";\"main\"\n\"1702718\";\"Malinao\";\"other\"\n\"1702744\";\"Malinao\";\"main\"\n\"1702763\";\"Malilipot\";\"main\"\n\"1702777\";\"Maliig\";\"main\"\n\"1702796\";\"Maligaya\";\"main\"\n\"1702807\";\"Malidong\";\"main\"\n\"1702807\";\"Malidon\";\"other\"\n\"1702814\";\"Malicboy\";\"main\"\n\"1702814\";\"Malicbuy\";\"other\"\n\"1702824\";\"Malibong\";\"main\"\n\"1702843\";\"Malibago\";\"main\"\n\"1702860\";\"Malhiao\";\"main\"\n\"1702889\";\"Malbug\";\"main\"\n\"1702889\";\"Malburg\";\"other\"\n\"1702892\";\"Malbug\";\"main\"\n\"1702892\";\"Malbago\";\"other\"\n\"1702892\";\"Malbog\";\"other\"\n\"1702912\";\"Malbang\";\"main\"\n\"1702934\";\"Malaybalay\";\"main\"\n\"1702944\";\"Malayal\";\"main\"\n\"1702944\";\"Malaya\";\"other\"\n\"1702949\";\"Malaya\";\"main\"\n\"1702962\";\"Malawag\";\"main\"\n\"1702962\";\"Malauag\";\"other\"\n\"1702963\";\"Malawa\";\"main\"\n\"1702963\";\"Malaoa\";\"other\"\n\"1703003\";\"Malatap\";\"main\"\n\"1703003\";\"Malatag\";\"other\"\n\"1703005\";\"Malasugui\";\"main\"\n\"1703005\";\"Malasugui Lica\";\"other\"\n\"1703012\";\"Malasin\";\"main\"\n\"1703013\";\"Malasin\";\"main\"\n\"1703020\";\"Malasila\";\"main\"\n\"1703027\";\"Malaruhatan\";\"main\"\n\"1703051\";\"Malapatan\";\"main\"\n\"1703062\";\"Malapag\";\"main\"\n\"1703101\";\"Malangas\";\"main\"\n\"1703101\";\"Malangus\";\"other\"\n\"1703108\";\"Malangabang\";\"main\"\n\"1703108\";\"Malangaban\";\"other\"\n\"1703108\";\"Malangbany\";\"other\"\n\"1703116\";\"Malanday\";\"main\"\n\"1703119\";\"Malanay\";\"main\"\n\"1703119\";\"Malunay\";\"other\"\n\"1703134\";\"Malamote\";\"main\"\n\"1703143\";\"Malamig\";\"main\"\n\"1703187\";\"Malalag\";\"main\"\n\"1703187\";\"Malalag Beach\";\"other\"\n\"1703211\";\"Malainen Luma\";\"main\"\n\"1703220\";\"Malaiba\";\"main\"\n\"1703221\";\"Malajog\";\"main\"\n\"1703221\";\"Malahog\";\"other\"\n\"1703238\";\"Malayo-an\";\"main\"\n\"1703238\";\"Malaguan\";\"other\"\n\"1703238\";\"Malaguig\";\"other\"\n\"1703238\";\"Malayu-an\";\"other\"\n\"1703243\";\"Malagos\";\"main\"\n\"1703269\";\"Malaga\";\"main\"\n\"1703289\";\"Malacampa\";\"main\"\n\"1703298\";\"Malabuyoc\";\"main\"\n\"1703306\";\"Malabugas\";\"main\"\n\"1703315\";\"Malabor\";\"main\"\n\"1703319\";\"Malabon\";\"main\"\n\"1703323\";\"Malabog\";\"main\"\n\"1703352\";\"Malabang\";\"main\"\n\"1703355\";\"Malabanban\";\"main\"\n\"1703357\";\"Malabanan\";\"main\"\n\"1703372\";\"Malabago\";\"main\"\n\"1703383\";\"Malabag\";\"main\"\n\"1703405\";\"Makilala\";\"main\"\n\"1703405\";\"Makitata\";\"other\"\n\"1703417\";\"Makati\";\"main\"\n\"1703450\";\"Majayjay\";\"main\"\n\"1703471\";\"Maitum\";\"main\"\n\"1703502\";\"Mainit Norte\";\"main\"\n\"1703518\";\"Mainit\";\"main\"\n\"1703519\";\"Mainit\";\"main\"\n\"1703521\";\"Mainit\";\"main\"\n\"1703531\";\"Maindang\";\"main\"\n\"1703539\";\"Maimbung\";\"main\"\n\"1703539\";\"Maibun\";\"other\"\n\"1703544\";\"Mailag\";\"main\"\n\"1703544\";\"Mailig\";\"other\"\n\"1703554\";\"Maigo\";\"main\"\n\"1703554\";\"Maibo\";\"other\"\n\"1703560\";\"Maibu\";\"main\"\n\"1703560\";\"Maibo\";\"other\"\n\"1703577\";\"Mahinog\";\"main\"\n\"1703577\";\"Mallinog\";\"other\"\n\"1703597\";\"Mahayag\";\"main\"\n\"1703598\";\"Mahayag\";\"main\"\n\"1703599\";\"Mahayag\";\"main\"\n\"1703608\";\"Mahaplag\";\"main\"\n\"1703612\";\"Mahanob\";\"main\"\n\"1703612\";\"Mahanub\";\"other\"\n\"1703626\";\"Mahala\";\"main\"\n\"1703626\";\"Mahaela\";\"other\"\n\"1703644\";\"Mahabang Parang\";\"main\"\n\"1703663\";\"Mahaba\";\"main\"\n\"1703667\";\"Maguyam\";\"main\"\n\"1703685\";\"Maguling\";\"main\"\n\"1703702\";\"Maguinao\";\"main\"\n\"1703704\";\"Maguiling\";\"main\"\n\"1703704\";\"Maguilling\";\"other\"\n\"1703733\";\"Magtanggol\";\"main\"\n\"1703733\";\"Magtangol\";\"other\"\n\"1703738\";\"Magtaking\";\"main\"\n\"1703738\";\"Magtaguing\";\"other\"\n\"1703757\";\"Magsingal\";\"main\"\n\"1703757\";\"Masingal\";\"other\"\n\"1703768\";\"Magsaysay\";\"main\"\n\"1703772\";\"Magsaysay\";\"main\"\n\"1703773\";\"Magsaysay\";\"main\"\n\"1703785\";\"Magsalangi\";\"main\"\n\"1703785\";\"Magsalanga\";\"other\"\n\"1703792\";\"Magpet\";\"main\"\n\"1703792\";\"Magpit\";\"other\"\n\"1703833\";\"Magnaga\";\"main\"\n\"1703855\";\"Maglamin\";\"main\"\n\"1703855\";\"Lambagan\";\"other\"\n\"1703855\";\"Miglamin\";\"other\"\n\"1703892\";\"Magdug\";\"main\"\n\"1703896\";\"Magdiwang\";\"main\"\n\"1703896\";\"Magallanes\";\"other\"\n\"1703911\";\"Magdalena\";\"main\"\n\"1703912\";\"Magdalena\";\"main\"\n\"1703915\";\"Magdalena\";\"main\"\n\"1703943\";\"Magbay\";\"main\"\n\"1703959\";\"Magay\";\"main\"\n\"1703964\";\"Magatos\";\"main\"\n\"1704002\";\"Magarao\";\"main\"\n\"1704014\";\"Magapit\";\"main\"\n\"1704021\";\"Maganoy\";\"main\"\n\"1704021\";\"Maganai\";\"other\"\n\"1704021\";\"Maganui\";\"other\"\n\"1704021\";\"Maganuy\";\"other\"\n\"1704021\";\"Magonay\";\"other\"\n\"1704043\";\"Magallon Cadre\";\"main\"\n\"1704043\";\"Magallon\";\"other\"\n\"1704049\";\"Magallanes\";\"main\"\n\"1704050\";\"Magallanes\";\"main\"\n\"1704052\";\"Magallanes\";\"main\"\n\"1704058\";\"Magallanes\";\"main\"\n\"1704067\";\"Magalang\";\"main\"\n\"1704067\";\"Magalan\";\"other\"\n\"1704070\";\"Magalalag\";\"main\"\n\"1704070\";\"Magalalab\";\"other\"\n\"1704115\";\"Madulao\";\"main\"\n\"1704126\";\"Madridejos\";\"main\"\n\"1704127\";\"Madridejos\";\"main\"\n\"1704127\";\"Nadridejos\";\"other\"\n\"1704129\";\"Madrid\";\"main\"\n\"1704154\";\"Maddela\";\"main\"\n\"1704154\";\"Pinapayan\";\"other\"\n\"1704154\";\"Pinappagan\";\"other\"\n\"1704156\";\"Maddarulog\";\"main\"\n\"1704156\";\"Maddarulug\";\"other\"\n\"1704217\";\"Madalag\";\"main\"\n\"1704217\";\"Madolag\";\"other\"\n\"1704252\";\"Macrohon\";\"main\"\n\"1704252\";\"Macrobon\";\"other\"\n\"1704271\";\"Maco\";\"main\"\n\"1704286\";\"Macayug\";\"main\"\n\"1704286\";\"Mayog\";\"other\"\n\"1704315\";\"Makato\";\"main\"\n\"1704315\";\"Dapdap Makato\";\"other\"\n\"1704315\";\"Macato\";\"other\"\n\"1704321\";\"Macatbong\";\"main\"\n\"1704321\";\"Macatbung\";\"other\"\n\"1704333\";\"MacArthur\";\"main\"\n\"1704333\";\"McArthur\";\"other\"\n\"1704335\";\"Macarse\";\"main\"\n\"1704357\";\"Macapsing\";\"main\"\n\"1704381\";\"Macalva\";\"main\"\n\"1704386\";\"Macalong\";\"main\"\n\"1704386\";\"Makalong\";\"other\"\n\"1704394\";\"Macalelon\";\"main\"\n\"1704403\";\"Macalaya\";\"main\"\n\"1704413\";\"Macalamcam\";\"main\"\n\"1704434\";\"Makabugos\";\"main\"\n\"1704434\";\"Macabugos\";\"other\"\n\"1704442\";\"Macabuboni\";\"main\"\n\"1704442\";\"Macaboboni\";\"other\"\n\"1704466\";\"Macaas\";\"main\"\n\"1704472\";\"Mabuttal East\";\"main\"\n\"1704472\";\"Mabutal\";\"other\"\n\"1704472\";\"Mabuttal\";\"other\"\n\"1704476\";\"Mabusag\";\"main\"\n\"1704476\";\"Mabusan\";\"other\"\n\"1704484\";\"Mabunga\";\"main\"\n\"1704484\";\"Mabungo\";\"other\"\n\"1704503\";\"Mabuhay\";\"main\"\n\"1704504\";\"Mabuhay\";\"main\"\n\"1704515\";\"Mabua\";\"main\"\n\"1704533\";\"Mabiton\";\"main\"\n\"1704533\";\"Mabitan\";\"other\"\n\"1704537\";\"Mabitac\";\"main\"\n\"1704544\";\"Mabini\";\"main\"\n\"1704545\";\"Mabini\";\"main\"\n\"1704545\";\"Balincaguin\";\"other\"\n\"1704552\";\"Mabini\";\"main\"\n\"1704560\";\"Mabini\";\"main\"\n\"1704575\";\"Mabini\";\"main\"\n\"1704579\";\"Mabini\";\"main\"\n\"1704591\";\"Mabini\";\"main\"\n\"1704598\";\"Mabini\";\"main\"\n\"1704606\";\"Mabinay\";\"main\"\n\"1704606\";\"Mabina\";\"other\"\n\"1704611\";\"Mabilog\";\"main\"\n\"1704615\";\"Brgy. Mabilo, New Washington\";\"main\"\n\"1704615\";\"Mabilog\";\"other\"\n\"1704618\";\"Mabilbila Sur\";\"main\"\n\"1704618\";\"Mabilbila\";\"other\"\n\"1704620\";\"Mabilao\";\"main\"\n\"1704623\";\"Mabilang\";\"main\"\n\"1704638\";\"Mabayo\";\"main\"\n\"1704638\";\"Mabage\";\"other\"\n\"1704638\";\"Maybayo\";\"other\"\n\"1704644\";\"Mabay\";\"main\"\n\"1704664\";\"Mabasa\";\"main\"\n\"1704703\";\"Mabalacat\";\"main\"\n\"1704725\";\"Mababanaba\";\"main\"\n\"1704729\";\"Maayong Tubig\";\"main\"\n\"1704729\";\"Tabig\";\"other\"\n\"1704730\";\"Maayon\";\"main\"\n\"1704755\";\"Maasin\";\"main\"\n\"1704758\";\"Maasin\";\"main\"\n\"1704758\";\"Massin\";\"other\"\n\"1704770\";\"Maasin\";\"main\"\n\"1704770\";\"Maasim\";\"other\"\n\"1704772\";\"Maasin\";\"main\"\n\"1704772\";\"Maasim\";\"other\"\n\"1704781\";\"Ma-ao\";\"main\"\n\"1704781\";\"Ma-ao Barrio\";\"other\"\n\"1704793\";\"Maanas\";\"main\"\n\"1704800\";\"Maan\";\"main\"\n\"1704816\";\"Maagnas\";\"main\"\n\"1704816\";\"Maangas\";\"other\"\n\"1704816\";\"Maañgas\";\"other\"\n\"1704836\";\"Luzong Sur\";\"main\"\n\"1704836\";\"Luzong\";\"other\"\n\"1704845\";\"Luzon\";\"main\"\n\"1704876\";\"Luuk Datan\";\"main\"\n\"1704876\";\"Lokdata\";\"other\"\n\"1704876\";\"Lokdatan\";\"other\"\n\"1704876\";\"Manuk Mangaw\";\"other\"\n\"1704881\";\"Lu-uk\";\"main\"\n\"1704881\";\"Andres\";\"other\"\n\"1704881\";\"Camp Andres\";\"other\"\n\"1704892\";\"Lut-od\";\"main\"\n\"1704897\";\"Lutayan\";\"main\"\n\"1704897\";\"Lutavan\";\"other\"\n\"1704959\";\"Lusacan\";\"main\"\n\"1704960\";\"Lurugan\";\"main\"\n\"1704968\";\"Lupon\";\"main\"\n\"1704968\";\"Sumlog\";\"other\"\n\"1704982\";\"Lupi Viejo\";\"main\"\n\"1704982\";\"Lupi\";\"other\"\n\"1704984\";\"Lupi\";\"main\"\n\"1704990\";\"Lapase\";\"main\"\n\"1704990\";\"Lapasa\";\"other\"\n\"1704990\";\"Lapasan\";\"other\"\n\"1704990\";\"Lupasan\";\"other\"\n\"1704994\";\"Lupao\";\"main\"\n\"1705019\";\"Luntal\";\"main\"\n\"1705028\";\"Lun Pequeño\";\"main\"\n\"1705028\";\"Lun Pequeno\";\"ascii\"\n\"1705028\";\"Little Lun\";\"other\"\n\"1705028\";\"Lun\";\"other\"\n\"1705028\";\"Lun Padidu\";\"other\"\n\"1705051\";\"Lungog\";\"main\"\n\"1705060\";\"Lungaog\";\"main\"\n\"1705066\";\"Lunen\";\"main\"\n\"1705066\";\"Lonen\";\"other\"\n\"1705067\";\"Lunec\";\"main\"\n\"1705084\";\"Lunas\";\"main\"\n\"1705089\";\"Lunao\";\"main\"\n\"1705096\";\"Luna\";\"main\"\n\"1705096\";\"Antatet\";\"other\"\n\"1705096\";\"Puna\";\"other\"\n\"1705105\";\"Luna\";\"main\"\n\"1705109\";\"Luna\";\"main\"\n\"1705111\";\"Luna\";\"main\"\n\"1705117\";\"Lumuyon\";\"main\"\n\"1705117\";\"Lomoyon\";\"other\"\n\"1705117\";\"Lumayan\";\"other\"\n\"1705144\";\"Lumil\";\"main\"\n\"1705166\";\"Lumbia\";\"main\"\n\"1705169\";\"Lumbayao\";\"main\"\n\"1705174\";\"Lumbayan\";\"main\"\n\"1705174\";\"Lumbayao\";\"other\"\n\"1705183\";\"Lumbangan\";\"main\"\n\"1705190\";\"Lumbang\";\"main\"\n\"1705190\";\"Lumban\";\"other\"\n\"1705222\";\"Lumatil\";\"main\"\n\"1705225\";\"Lumazal\";\"main\"\n\"1705225\";\"Lumasal\";\"other\"\n\"1705240\";\"Lumangbayan\";\"main\"\n\"1705243\";\"Lumangbayan\";\"main\"\n\"1705271\";\"Luksuhin\";\"main\"\n\"1705276\";\"Luklukan\";\"main\"\n\"1705289\";\"Luisiana\";\"main\"\n\"1705300\";\"Lugus\";\"main\"\n\"1705303\";\"Lugui\";\"main\"\n\"1705312\";\"Lugo\";\"main\"\n\"1705330\";\"Lugait\";\"main\"\n\"1705344\";\"Lucsuhin\";\"main\"\n\"1705344\";\"Luksuhin\";\"other\"\n\"1705349\";\"Lucmayan\";\"main\"\n\"1705353\";\"Lucero\";\"main\"\n\"1705354\";\"Lucero\";\"main\"\n\"1705357\";\"Lucena\";\"main\"\n\"1705357\";\"Ciudad ti Lucena\";\"other\"\n\"1705357\";\"Lucena City\";\"other\"\n\"1705367\";\"Lucban\";\"main\"\n\"1705372\";\"Lukatan\";\"main\"\n\"1705372\";\"Lucatan\";\"other\"\n\"1705376\";\"Lucapon\";\"main\"\n\"1705376\";\"Lacapon\";\"other\"\n\"1705376\";\"Locapon\";\"other\"\n\"1705378\";\"Lucap\";\"main\"\n\"1705391\";\"Lubuagan\";\"main\"\n\"1705424\";\"Lubigan\";\"main\"\n\"1705424\";\"Lubigan Sr\";\"other\"\n\"1705435\";\"Lucban\";\"main\"\n\"1705435\";\"Luban\";\"other\"\n\"1705435\";\"Lubban\";\"other\"\n\"1705440\";\"Lubao\";\"main\"\n\"1705448\";\"Lubang\";\"main\"\n\"1705489\";\"Loyola\";\"main\"\n\"1705489\";\"Layola\";\"other\"\n\"1705503\";\"Lourdes\";\"main\"\n\"1705505\";\"Lourdes\";\"main\"\n\"1705509\";\"Lourdes\";\"main\"\n\"1705516\";\"Lourdes\";\"main\"\n\"1705536\";\"Los Baños\";\"main\"\n\"1705536\";\"Los Banos\";\"ascii\"\n\"1705536\";\"Los-Ban'os\";\"other\"\n\"1705536\";\"Лос-Баньос\";\"other\"\n\"1705540\";\"Los Arcos\";\"main\"\n\"1705545\";\"Los Angeles\";\"main\"\n\"1705545\";\"Angeles\";\"other\"\n\"1705550\";\"Loreto\";\"main\"\n\"1705552\";\"Loreto\";\"main\"\n\"1705563\";\"Lupo\";\"main\"\n\"1705563\";\"Lapo\";\"other\"\n\"1705563\";\"Lopo\";\"other\"\n\"1705567\";\"Lopez Jaena\";\"main\"\n\"1705568\";\"Lopez Jaena\";\"main\"\n\"1705568\";\"Manella\";\"other\"\n\"1705572\";\"Lopez\";\"main\"\n\"1705575\";\"Lope de Vega\";\"main\"\n\"1705575\";\"Lope de Vegas\";\"other\"\n\"1705581\";\"Loon\";\"main\"\n\"1705597\";\"Lookan\";\"main\"\n\"1705597\";\"Lookani\";\"other\"\n\"1705597\";\"Luukan\";\"other\"\n\"1705609\";\"Looc\";\"main\"\n\"1705609\";\"Look\";\"other\"\n\"1705639\";\"Looc\";\"main\"\n\"1705639\";\"Looe\";\"other\"\n\"1705641\";\"Looc\";\"main\"\n\"1705641\";\"San Rafael\";\"other\"\n\"1705645\";\"Looc\";\"main\"\n\"1705650\";\"Looc\";\"main\"\n\"1705650\";\"Lo-ok\";\"other\"\n\"1705679\";\"Lono\";\"main\"\n\"1705679\";\"Lonoy\";\"other\"\n\"1705680\";\"Lonoy\";\"main\"\n\"1705702\";\"Longos\";\"main\"\n\"1705750\";\"Lomboy\";\"main\"\n\"1705759\";\"Lombog\";\"main\"\n\"1705760\";\"Lombocan\";\"main\"\n\"1705771\";\"Loma de Gato\";\"main\"\n\"1705788\";\"Lokeb\";\"main\"\n\"1705788\";\"Loqueb\";\"other\"\n\"1705804\";\"Logon\";\"main\"\n\"1705804\";\"Logan\";\"other\"\n\"1705858\";\"Lobong\";\"main\"\n\"1705881\";\"Lobo\";\"main\"\n\"1705905\";\"Loacan\";\"main\"\n\"1705910\";\"Llorente\";\"main\"\n\"1705910\";\"Lorente\";\"other\"\n\"1705922\";\"Llanera\";\"main\"\n\"1705975\";\"Little Baguio\";\"main\"\n\"1705985\";\"Litayan\";\"main\"\n\"1705985\";\"Litayen\";\"other\"\n\"1706034\";\"Lipayran\";\"main\"\n\"1706044\";\"Lipay\";\"main\"\n\"1706084\";\"Lipahan\";\"main\"\n\"1706090\";\"Lipa\";\"main\"\n\"1706090\";\"Ciudad ti Lipa\";\"other\"\n\"1706090\";\"Lipa City\";\"other\"\n\"1706090\";\"Липа\";\"other\"\n\"1706093\";\"Liozon\";\"main\"\n\"1706093\";\"Lioson\";\"other\"\n\"1706127\";\"Lintangan\";\"main\"\n\"1706127\";\"Litangan\";\"other\"\n\"1706148\";\"Linoan\";\"main\"\n\"1706152\";\"Linmansangan\";\"main\"\n\"1706173\";\"Lingion\";\"main\"\n\"1706176\";\"Lingig\";\"main\"\n\"1706188\";\"Lingayen\";\"main\"\n\"1706199\";\"Lingating\";\"main\"\n\"1706201\";\"Lingasan\";\"main\"\n\"1706201\";\"Lingasad\";\"other\"\n\"1706229\";\"Linay\";\"main\"\n\"1706242\";\"San Miguel\";\"main\"\n\"1706242\";\"Linapacan\";\"other\"\n\"1706250\";\"Linaon\";\"main\"\n\"1706250\";\"Linao\";\"other\"\n\"1706272\";\"Linao\";\"main\"\n\"1706273\";\"Linao\";\"main\"\n\"1706282\";\"Linan\";\"main\"\n\"1706287\";\"Linamon\";\"main\"\n\"1706287\";\"Tomas Cabili\";\"other\"\n\"1706298\";\"Linabuan Sur\";\"main\"\n\"1706298\";\"Linabuan\";\"other\"\n\"1706299\";\"Linabuan\";\"main\"\n\"1706303\";\"Linabo\";\"main\"\n\"1706313\";\"Limulan\";\"main\"\n\"1706317\";\"Limpapa\";\"main\"\n\"1706319\";\"Limot\";\"main\"\n\"1706325\";\"Limon\";\"main\"\n\"1706326\";\"Limon\";\"main\"\n\"1706326\";\"Lemon\";\"other\"\n\"1706332\";\"Limanancong\";\"main\"\n\"1706332\";\"Limanancang\";\"other\"\n\"1706332\";\"Limanancany\";\"other\"\n\"1706332\";\"Liminancong\";\"other\"\n\"1706332\";\"Liminangcong\";\"other\"\n\"1706332\";\"Liminangoon\";\"other\"\n\"1706349\";\"Limbo\";\"main\"\n\"1706354\";\"Limbalod\";\"main\"\n\"1706356\";\"Limba-an\";\"main\"\n\"1706361\";\"Limay\";\"main\"\n\"1706374\";\"Limaong\";\"main\"\n\"1706377\";\"Limao\";\"main\"\n\"1706383\";\"Liloy\";\"main\"\n\"1706383\";\"Pataong\";\"other\"\n\"1706392\";\"Liloan\";\"main\"\n\"1706393\";\"Liloan\";\"main\"\n\"1706394\";\"Liloan\";\"main\"\n\"1706402\";\"Lilio\";\"main\"\n\"1706402\";\"Liliw\";\"other\"\n\"1706410\";\"Liliongan\";\"main\"\n\"1706466\";\"Ligayan\";\"main\"\n\"1706466\";\"Ligayen\";\"other\"\n\"1706467\";\"Ligaya\";\"main\"\n\"1706468\";\"Ligaya\";\"main\"\n\"1706474\";\"Ligao\";\"main\"\n\"1706526\";\"Liciada\";\"main\"\n\"1706526\";\"Lachada\";\"other\"\n\"1706526\";\"Lisiada\";\"other\"\n\"1706532\";\"Licab\";\"main\"\n\"1706550\";\"Libungan\";\"main\"\n\"1706557\";\"Libuganon\";\"main\"\n\"1706557\";\"Liboganon\";\"other\"\n\"1706598\";\"Liboro\";\"main\"\n\"1706599\";\"Liboran\";\"main\"\n\"1706599\";\"Liburan\";\"other\"\n\"1706607\";\"Libona\";\"main\"\n\"1706609\";\"Libon\";\"main\"\n\"1706614\";\"Libog\";\"main\"\n\"1706658\";\"Liberty\";\"main\"\n\"1706659\";\"Liberty\";\"main\"\n\"1706660\";\"Liberty\";\"main\"\n\"1706667\";\"Libertad\";\"main\"\n\"1706669\";\"Libertad\";\"main\"\n\"1706669\";\"Libertad Town\";\"other\"\n\"1706673\";\"Libertad\";\"main\"\n\"1706674\";\"Libertad\";\"main\"\n\"1706675\";\"Libertad\";\"main\"\n\"1706677\";\"Libertad\";\"main\"\n\"1706678\";\"Libertad\";\"main\"\n\"1706684\";\"Libertad\";\"main\"\n\"1706685\";\"Libertad\";\"main\"\n\"1706687\";\"Libertad\";\"main\"\n\"1706688\";\"Libertad\";\"main\"\n\"1706689\";\"Libertad\";\"main\"\n\"1706702\";\"Libato\";\"main\"\n\"1706716\";\"Libas\";\"main\"\n\"1706717\";\"Libas\";\"main\"\n\"1706726\";\"Libas\";\"main\"\n\"1706732\";\"Libas\";\"main\"\n\"1706736\";\"Libas\";\"main\"\n\"1706757\";\"Libacao\";\"main\"\n\"1706758\";\"Libacao\";\"main\"\n\"1706781\";\"Lianga\";\"main\"\n\"1706787\";\"Lian\";\"main\"\n\"1706801\";\"Leyte\";\"main\"\n\"1706810\";\"Leuteboro\";\"main\"\n\"1706834\";\"Lepanto\";\"main\"\n\"1706836\";\"Lepa\";\"main\"\n\"1706839\";\"Leones\";\"main\"\n\"1706843\";\"Leon\";\"main\"\n\"1706852\";\"Lennec\";\"main\"\n\"1706852\";\"Lenec\";\"other\"\n\"1706864\";\"Lemery\";\"main\"\n\"1706889\";\"Legaspi\";\"main\"\n\"1706889\";\"Legaspi City\";\"other\"\n\"1706889\";\"Legazpi\";\"other\"\n\"1706889\";\"Legazpi City\";\"other\"\n\"1706894\";\"Legrada\";\"main\"\n\"1706894\";\"Legarda\";\"other\"\n\"1706894\";\"Legarda 1\";\"other\"\n\"1706894\";\"Legardo\";\"other\"\n\"1706895\";\"Leganes\";\"main\"\n\"1706923\";\"Lazi\";\"main\"\n\"1706944\";\"Layog\";\"main\"\n\"1706950\";\"Laylay\";\"main\"\n\"1706971\";\"Laya\";\"main\"\n\"1707003\";\"Lawang Kupang\";\"main\"\n\"1707003\";\"Lauang Cupang\";\"other\"\n\"1707035\";\"Lavezares\";\"main\"\n\"1707035\";\"Lavezaras\";\"other\"\n\"1707045\";\"Laurel\";\"main\"\n\"1707049\";\"Laur\";\"main\"\n\"1707049\";\"San Estaban\";\"other\"\n\"1707057\";\"La Union\";\"main\"\n\"1707058\";\"La Union\";\"main\"\n\"1707058\";\"Uangon\";\"other\"\n\"1707076\";\"Lawigan\";\"main\"\n\"1707076\";\"Lauigan\";\"other\"\n\"1707076\";\"Lavigan\";\"other\"\n\"1707108\";\"Latung\";\"main\"\n\"1707123\";\"La Trinidad\";\"main\"\n\"1707123\";\"La-Trinidad\";\"other\"\n\"1707123\";\"Trinidad\";\"other\"\n\"1707123\";\"Ла-Тринидад\";\"other\"\n\"1707179\";\"Las Navas\";\"main\"\n\"1707202\";\"Lasang\";\"main\"\n\"1707202\";\"Lasong\";\"other\"\n\"1707204\";\"Lasam\";\"main\"\n\"1707211\";\"La Roxas\";\"main\"\n\"1707213\";\"Larion\";\"main\"\n\"1707213\";\"Larion Acto\";\"other\"\n\"1707233\";\"Larap\";\"main\"\n\"1707236\";\"Larap\";\"main\"\n\"1707248\";\"Lapuz\";\"main\"\n\"1707250\";\"Lapuyan\";\"main\"\n\"1707267\";\"Lapu-Lapu City\";\"main\"\n\"1707267\";\"Ciudad ti Lapu-Lapu\";\"other\"\n\"1707267\";\"Dakbayan sa Lapu-Lapu\";\"other\"\n\"1707267\";\"Lapu-Lapu\";\"other\"\n\"1707267\";\"Opon\";\"other\"\n\"1707267\";\"la pu la pu shi\";\"other\"\n\"1707267\";\"ラプ・ラプ市\";\"other\"\n\"1707267\";\"拉普拉普市\";\"other\"\n\"1707269\";\"Lapuan\";\"main\"\n\"1707281\";\"Lapolapo\";\"main\"\n\"1707309\";\"Lapinigan\";\"main\"\n\"1707311\";\"Lapinig\";\"main\"\n\"1707316\";\"Lapi\";\"main\"\n\"1707316\";\"Lappi\";\"other\"\n\"1707321\";\"La Paz\";\"main\"\n\"1707322\";\"La Paz\";\"main\"\n\"1707324\";\"La Paz\";\"main\"\n\"1707324\";\"La-Pas\";\"other\"\n\"1707324\";\"Ла-Пас\";\"other\"\n\"1707334\";\"De la Paz\";\"main\"\n\"1707334\";\"La Paz\";\"other\"\n\"1707335\";\"Lapaz\";\"main\"\n\"1707336\";\"La Paz\";\"main\"\n\"1707336\";\"La-Pas\";\"other\"\n\"1707336\";\"Ла-Пас\";\"other\"\n\"1707339\";\"La Paz\";\"main\"\n\"1707342\";\"La Paz\";\"main\"\n\"1707342\";\"La Pas\";\"other\"\n\"1707342\";\"La-Pas\";\"other\"\n\"1707342\";\"Magabao Cove\";\"other\"\n\"1707342\";\"Ла-Пас\";\"other\"\n\"1707343\";\"La Paz\";\"main\"\n\"1707343\";\"La-Pas\";\"other\"\n\"1707343\";\"Ла-Пас\";\"other\"\n\"1707344\";\"La Paz\";\"main\"\n\"1707398\";\"Laoang\";\"main\"\n\"1707398\";\"Loangan\";\"other\"\n\"1707404\";\"Laoag\";\"main\"\n\"1707404\";\"Laoag City\";\"other\"\n\"1707404\";\"Laoang\";\"other\"\n\"1707404\";\"Laog\";\"other\"\n\"1707404\";\"Loag\";\"other\"\n\"1707411\";\"Lao\";\"main\"\n\"1707415\";\"Lanuza\";\"main\"\n\"1707434\";\"Tairan Camp\";\"main\"\n\"1707434\";\"Lantawan\";\"other\"\n\"1707434\";\"Tairan\";\"other\"\n\"1707438\";\"Lantapan\";\"main\"\n\"1707445\";\"Lantangan\";\"main\"\n\"1707446\";\"Lantangan\";\"main\"\n\"1707448\";\"Lantangan\";\"main\"\n\"1707470\";\"Lanot\";\"main\"\n\"1707476\";\"Lanna\";\"main\"\n\"1707500\";\"Lanigay\";\"main\"\n\"1707511\";\"Languyan\";\"main\"\n\"1707513\";\"Langub\";\"main\"\n\"1707513\";\"Langud\";\"other\"\n\"1707518\";\"Langob\";\"main\"\n\"1707518\";\"Langub\";\"other\"\n\"1707523\";\"Langtad\";\"main\"\n\"1707523\";\"Angtad\";\"other\"\n\"1707524\";\"Langtad\";\"main\"\n\"1707525\";\"Langpas\";\"main\"\n\"1707574\";\"Langcangan\";\"main\"\n\"1707593\";\"Langatian\";\"main\"\n\"1707659\";\"Lanat\";\"main\"\n\"1707665\";\"Lanas\";\"main\"\n\"1707665\";\"Cogon\";\"other\"\n\"1707666\";\"Lanas\";\"main\"\n\"1707675\";\"Lanao\";\"main\"\n\"1707710\";\"Lamut\";\"main\"\n\"1707724\";\"Lampitak\";\"main\"\n\"1707735\";\"Lampari\";\"main\"\n\"1707761\";\"Lamitan\";\"main\"\n\"1707762\";\"Lamitan\";\"main\"\n\"1707762\";\"Lamidan\";\"other\"\n\"1707770\";\"Laminusa\";\"main\"\n\"1707782\";\"Lamian\";\"main\"\n\"1707799\";\"Lambunao\";\"main\"\n\"1707812\";\"Lambayong\";\"main\"\n\"1707812\";\"Lombaying\";\"other\"\n\"1707812\";\"Lombayong\";\"other\"\n\"1707826\";\"Lambakin\";\"main\"\n\"1707827\";\"Lambakin\";\"main\"\n\"1707836\";\"Lambo\";\"main\"\n\"1707836\";\"Lamba\";\"other\"\n\"1707857\";\"Lamak\";\"main\"\n\"1707885\";\"Lallayug\";\"main\"\n\"1707887\";\"Lalig\";\"main\"\n\"1707889\";\"La Libertad\";\"main\"\n\"1707889\";\"La Liberlao\";\"other\"\n\"1707889\";\"Libertad\";\"other\"\n\"1707892\";\"La Libertad\";\"main\"\n\"1707911\";\"Lalauigan\";\"main\"\n\"1707911\";\"Lalawigan\";\"other\"\n\"1707930\";\"Lalagsan\";\"main\"\n\"1707939\";\"Lalab\";\"main\"\n\"1707943\";\"Lala\";\"main\"\n\"1707944\";\"Lala\";\"main\"\n\"1707951\";\"Rancheria Payau\";\"main\"\n\"1707951\";\"Lakewood\";\"other\"\n\"1707966\";\"Lajong\";\"main\"\n\"1707977\";\"Laiya\";\"main\"\n\"1707981\";\"Lais\";\"main\"\n\"1707981\";\"Lias\";\"other\"\n\"1708008\";\"La Hacienda\";\"main\"\n\"1708038\";\"Laguitas\";\"main\"\n\"1708042\";\"Laguit\";\"main\"\n\"1708051\";\"Lagindingan\";\"main\"\n\"1708051\";\"Laguindingan\";\"other\"\n\"1708056\";\"Laguilayan\";\"main\"\n\"1708073\";\"La Granja\";\"main\"\n\"1708073\";\"La Granja Experimental Farm\";\"other\"\n\"1708078\";\"Lagonoy\";\"main\"\n\"1708081\";\"Lagonglong\";\"main\"\n\"1708081\";\"Lagonlong\";\"other\"\n\"1708130\";\"Lagawe\";\"main\"\n\"1708136\";\"Lagasit\";\"main\"\n\"1708176\";\"La Fortuna\";\"main\"\n\"1708191\";\"La Curva\";\"main\"\n\"1708191\";\"Curva\";\"other\"\n\"1708199\";\"Lacson\";\"main\"\n\"1708211\";\"Lacdayan\";\"main\"\n\"1708217\";\"La Castellana\";\"main\"\n\"1708220\";\"Lacaron\";\"main\"\n\"1708223\";\"Lacaron\";\"main\"\n\"1708223\";\"Lakaran\";\"other\"\n\"1708226\";\"La Carlota\";\"main\"\n\"1708226\";\"La Calota\";\"other\"\n\"1708226\";\"La Carlota City\";\"other\"\n\"1708226\";\"La-Karlota\";\"other\"\n\"1708226\";\"Ла-Карлота\";\"other\"\n\"1708234\";\"Lacag\";\"main\"\n\"1708248\";\"Labu-o\";\"main\"\n\"1708250\";\"Labuñgan\";\"main\"\n\"1708250\";\"Labungan\";\"ascii\"\n\"1708262\";\"Labuan\";\"main\"\n\"1708266\";\"Labrador\";\"main\"\n\"1708266\";\"San Isidro Labrador\";\"other\"\n\"1708288\";\"Labog\";\"main\"\n\"1708291\";\"Labo\";\"main\"\n\"1708301\";\"Labnig\";\"main\"\n\"1708303\";\"Labney\";\"main\"\n\"1708326\";\"Labayug\";\"main\"\n\"1708341\";\"Labasan\";\"main\"\n\"1708341\";\"Baasan\";\"other\"\n\"1708368\";\"Labangan\";\"main\"\n\"1708428\";\"Kumaliskis\";\"main\"\n\"1708428\";\"Kumalisqui\";\"other\"\n\"1708428\";\"Kumalisquis\";\"other\"\n\"1708431\";\"Kumalarang\";\"main\"\n\"1708436\";\"Cumadcad\";\"main\"\n\"1708436\";\"Kumadcad\";\"other\"\n\"1708436\";\"Kumadkad\";\"other\"\n\"1708442\";\"Kulempang\";\"main\"\n\"1708442\";\"Kulumpang\";\"other\"\n\"1708449\";\"Culit\";\"main\"\n\"1708449\";\"Kulit\";\"other\"\n\"1708457\";\"Kulay-Kulay\";\"main\"\n\"1708478\";\"Kolumbug\";\"main\"\n\"1708478\";\"Kulambog\";\"other\"\n\"1708485\";\"Kulaman\";\"main\"\n\"1708501\";\"Kudanding\";\"main\"\n\"1708510\";\"Kuanos\";\"main\"\n\"1708510\";\"Cuanos\";\"other\"\n\"1708522\";\"Koronadal\";\"main\"\n\"1708522\";\"Marbel\";\"other\"\n\"1708523\";\"Koronadal\";\"main\"\n\"1708523\";\"Karonadal\";\"other\"\n\"1708523\";\"Koronadal Proper\";\"other\"\n\"1708542\";\"Comagascas\";\"main\"\n\"1708542\";\"Comagasoan\";\"other\"\n\"1708542\";\"Komagascas\";\"other\"\n\"1708553\";\"Kolape\";\"main\"\n\"1708553\";\"Kularpy\";\"other\"\n\"1708553\";\"Kulop\";\"other\"\n\"1708557\";\"Kolambugan\";\"main\"\n\"1708557\";\"Kolambuang\";\"other\"\n\"1708557\";\"Migcamiguing\";\"other\"\n\"1708557\";\"Migcaniguing\";\"other\"\n\"1708566\";\"Cogon\";\"main\"\n\"1708566\";\"Kogon\";\"other\"\n\"1708579\";\"Klinan\";\"main\"\n\"1708579\";\"Clinan\";\"other\"\n\"1708588\";\"Kiupo\";\"main\"\n\"1708588\";\"Kiupa\";\"other\"\n\"1708595\";\"Kitobo\";\"main\"\n\"1708595\";\"Kitubo\";\"other\"\n\"1708600\";\"Kitcharao\";\"main\"\n\"1708600\";\"Kitcharaw\";\"other\"\n\"1708602\";\"Kitapak\";\"main\"\n\"1708602\";\"Kitapok\";\"other\"\n\"1708604\";\"Kitaotao\";\"main\"\n\"1708604\";\"Kitawtaw\";\"other\"\n\"1708608\";\"Kitango\";\"main\"\n\"1708618\";\"Kisolon\";\"main\"\n\"1708623\";\"Kisante\";\"main\"\n\"1708638\";\"Quipot\";\"main\"\n\"1708638\";\"Kipot\";\"other\"\n\"1708641\";\"Kipit\";\"main\"\n\"1708644\";\"Kipalbig\";\"main\"\n\"1708705\";\"Kinangan\";\"main\"\n\"1708708\";\"Kinamayan\";\"main\"\n\"1708724\";\"Kinalansan\";\"main\"\n\"1708724\";\"Guinalansan\";\"other\"\n\"1708724\";\"Quinalansan\";\"other\"\n\"1708729\";\"Kinalaglagan\";\"main\"\n\"1708729\";\"Kinalaglagon\";\"other\"\n\"1708729\";\"Quinalaglagan\";\"other\"\n\"1708729\";\"Quinalaglagon\";\"other\"\n\"1708743\";\"Kinablañgan\";\"main\"\n\"1708743\";\"Kinablangan\";\"ascii\"\n\"1708746\";\"Kinabhangan\";\"main\"\n\"1708746\";\"Kinabhangon\";\"other\"\n\"1708746\";\"Kinabjangan\";\"other\"\n\"1708757\";\"Kimaya\";\"main\"\n\"1708761\";\"Kimanuit\";\"main\"\n\"1708761\";\"Kimanait\";\"other\"\n\"1708774\";\"Kiloloron\";\"main\"\n\"1708774\";\"Kilolorum\";\"other\"\n\"1708785\";\"Kilim\";\"main\"\n\"1708824\";\"Kidapawan\";\"main\"\n\"1708824\";\"Kadapawan\";\"other\"\n\"1708836\";\"Kibureau\";\"main\"\n\"1708836\";\"Kibureao\";\"other\"\n\"1708838\";\"Kibungan\";\"main\"\n\"1708838\";\"Kimbunyan\";\"other\"\n\"1708854\";\"Kibonsod\";\"main\"\n\"1708854\";\"Kibongsod\";\"other\"\n\"1708859\";\"Kiblawan\";\"main\"\n\"1708859\";\"Kiblagon\";\"other\"\n\"1708865\";\"Kibawe\";\"main\"\n\"1708872\";\"Kibangay\";\"main\"\n\"1708903\";\"Kiamba\";\"main\"\n\"1708903\";\"Kiamba-Townsite\";\"other\"\n\"1708942\";\"Kaytitinga\";\"main\"\n\"1709003\";\"Kawit\";\"main\"\n\"1709005\";\"Kawit\";\"main\"\n\"1709005\";\"Kawit Occidental\";\"other\"\n\"1709022\";\"Cawayan\";\"main\"\n\"1709022\";\"Cauayan\";\"other\"\n\"1709022\";\"Kawayan\";\"other\"\n\"1709024\";\"Kawayan\";\"main\"\n\"1709036\";\"Kauswagan\";\"main\"\n\"1709037\";\"Kauswagan\";\"main\"\n\"1709039\";\"Kauswagan\";\"main\"\n\"1709039\";\"Causwagan\";\"other\"\n\"1709044\";\"Kauran\";\"main\"\n\"1709059\";\"Katuli\";\"main\"\n\"1709077\";\"Katipunan\";\"main\"\n\"1709077\";\"Lubangan\";\"other\"\n\"1709098\";\"Katidtuan\";\"main\"\n\"1709098\";\"Catictuan\";\"other\"\n\"1709098\";\"Catidtuan\";\"other\"\n\"1709108\";\"Katubao\";\"main\"\n\"1709108\";\"Katabao\";\"other\"\n\"1709108\";\"Katabau\";\"other\"\n\"1709108\";\"Katebao\";\"other\"\n\"1709119\";\"Katangawan\";\"main\"\n\"1709159\";\"Casay\";\"main\"\n\"1709159\";\"Kasay\";\"other\"\n\"1709159\";\"Kasoy\";\"other\"\n\"1709166\";\"Karungdong\";\"main\"\n\"1709166\";\"Karungdung\";\"other\"\n\"1709172\";\"Caromatan\";\"main\"\n\"1709172\";\"Karomatan\";\"other\"\n\"1709172\";\"Kurumatan\";\"other\"\n\"1709229\";\"Kapinkong\";\"main\"\n\"1709229\";\"Kapingkong\";\"other\"\n\"1709229\";\"Kapinkang\";\"other\"\n\"1709244\";\"Kapatan\";\"main\"\n\"1709245\";\"Kapatalan\";\"main\"\n\"1709248\";\"Kapatagan\";\"main\"\n\"1709293\";\"Kaongkod\";\"main\"\n\"1709322\";\"Kansipati\";\"main\"\n\"1709322\";\"Kan Sipat\";\"other\"\n\"1709322\";\"Seit\";\"other\"\n\"1709322\";\"Siit\";\"other\"\n\"1709341\";\"Kanluran\";\"main\"\n\"1709347\";\"Kanlagay\";\"main\"\n\"1709456\";\"Kananya\";\"main\"\n\"1709456\";\"Cananga\";\"other\"\n\"1709456\";\"Kanaga\";\"other\"\n\"1709456\";\"Kananga\";\"other\"\n\"1709478\";\"Kampokpok\";\"main\"\n\"1709478\";\"Campokpok\";\"other\"\n\"1709498\";\"Kambing\";\"main\"\n\"1709537\";\"Kamanga\";\"main\"\n\"1709577\";\"Kalugmanan\";\"main\"\n\"1709593\";\"Calumboyan\";\"main\"\n\"1709593\";\"Kalomboyan\";\"other\"\n\"1709625\";\"Caliling\";\"main\"\n\"1709625\";\"Kaliling\";\"other\"\n\"1709627\";\"Kalilangan\";\"main\"\n\"1709632\";\"Kalibo (poblacion)\";\"main\"\n\"1709632\";\"Banwa it Kalibo\";\"other\"\n\"1709632\";\"Kalibo Town\";\"other\"\n\"1709632\";\"Pueblo de Calivo\";\"other\"\n\"1709641\";\"Kalian\";\"main\"\n\"1709641\";\"Calian\";\"other\"\n\"1709644\";\"Kalbugan\";\"main\"\n\"1709644\";\"Kalbungan\";\"other\"\n\"1709647\";\"Kalbay\";\"main\"\n\"1709650\";\"Kalayaan\";\"main\"\n\"1709650\";\"Kalavaan\";\"other\"\n\"1709653\";\"Kalawit\";\"main\"\n\"1709668\";\"Kalaisan\";\"main\"\n\"1709668\";\"Kalasuyan\";\"other\"\n\"1709704\";\"Kalanganan\";\"main\"\n\"1709707\";\"Kalandagan\";\"main\"\n\"1709717\";\"Kalamansig\";\"main\"\n\"1709717\";\"Calamansig\";\"other\"\n\"1709719\";\"Kalamangog\";\"main\"\n\"1709809\";\"Kagay\";\"main\"\n\"1709828\";\"Kadingilan\";\"main\"\n\"1709828\";\"Kadangilan\";\"other\"\n\"1709828\";\"Kadañgilan\";\"other\"\n\"1709828\";\"Kadingelan\";\"other\"\n\"1709845\";\"Kabuynan\";\"main\"\n\"1709845\";\"Cabuynan\";\"other\"\n\"1709845\";\"Kaboynan\";\"other\"\n\"1709859\";\"Kabungahan\";\"main\"\n\"1709859\";\"Cabungahan\";\"other\"\n\"1709865\";\"Kabulusan\";\"main\"\n\"1709868\";\"Kabulohan\";\"main\"\n\"1709868\";\"Cabulohan\";\"other\"\n\"1709886\";\"Kabugao\";\"main\"\n\"1709955\";\"Kabasalan\";\"main\"\n\"1709968\";\"Kabankalan\";\"main\"\n\"1709984\";\"Kabalen\";\"main\"\n\"1709984\";\"Kablen\";\"other\"\n\"1709984\";\"Kablon\";\"other\"\n\"1709990\";\"Kabalantian\";\"main\"\n\"1709990\";\"Cabalantian\";\"other\"\n\"1710011\";\"Kabacan\";\"main\"\n\"1710011\";\"Kabakan\";\"other\"\n\"1710041\";\"Jomalig\";\"main\"\n\"1710041\";\"Casiguran\";\"other\"\n\"1710041\";\"Jumalig\";\"other\"\n\"1710041\";\"Jumalig Island\";\"other\"\n\"1710041\";\"Rizal\";\"other\"\n\"1710054\";\"Julita\";\"main\"\n\"1710062\";\"Jugno\";\"main\"\n\"1710064\";\"Tugas\";\"main\"\n\"1710064\";\"Jugas\";\"other\"\n\"1710071\";\"Jubasan\";\"main\"\n\"1710071\";\"Hubasan\";\"other\"\n\"1710078\";\"Juban\";\"main\"\n\"1710097\";\"Jovellar\";\"main\"\n\"1710099\";\"Jovellar\";\"main\"\n\"1710099\";\"Jovellari\";\"other\"\n\"1710103\";\"Jose Pañganiban\";\"main\"\n\"1710103\";\"Jose Panganiban\";\"ascii\"\n\"1710103\";\"Mambulao\";\"other\"\n\"1710105\";\"Josefina\";\"main\"\n\"1710112\";\"Joroan\";\"main\"\n\"1710112\";\"Horoan\";\"other\"\n\"1710116\";\"Jordan\";\"main\"\n\"1710116\";\"Oracion\";\"other\"\n\"1710116\";\"Oracon\";\"other\"\n\"1710122\";\"Jones\";\"main\"\n\"1710122\";\"Cabanuangan\";\"other\"\n\"1710141\";\"Jolo\";\"main\"\n\"1710141\";\"Dzholi\";\"other\"\n\"1710141\";\"Sug\";\"other\"\n\"1710141\";\"Sulu\";\"other\"\n\"1710141\";\"Suluk\";\"other\"\n\"1710141\";\"Джоли\";\"other\"\n\"1710159\";\"Hipadpad\";\"main\"\n\"1710159\";\"Jewaran\";\"other\"\n\"1710159\";\"Jipapad\";\"other\"\n\"1710181\";\"Jimenez\";\"main\"\n\"1710191\";\"Jimalalud\";\"main\"\n\"1710191\";\"Jimalalua\";\"other\"\n\"1710213\";\"Jibao-an\";\"main\"\n\"1710213\";\"Jebaoan\";\"other\"\n\"1710216\";\"Jiabong\";\"main\"\n\"1710216\";\"Malubago\";\"other\"\n\"1710222\";\"Jetafe\";\"main\"\n\"1710222\";\"Getafe\";\"other\"\n\"1710222\";\"Jetape\";\"other\"\n\"1710235\";\"Jayubó\";\"main\"\n\"1710235\";\"Jayubo\";\"ascii\"\n\"1710246\";\"Bugho\";\"main\"\n\"1710246\";\"Bugno\";\"other\"\n\"1710246\";\"Javier\";\"other\"\n\"1710247\";\"Javier\";\"main\"\n\"1710249\";\"Javalera\";\"main\"\n\"1710258\";\"Jasaan\";\"main\"\n\"1710258\";\"Hasaan\";\"other\"\n\"1710262\";\"Jaro\";\"main\"\n\"1710269\";\"Japitan\";\"main\"\n\"1710269\";\"Apitan\";\"other\"\n\"1710270\";\"Japitan\";\"main\"\n\"1710270\";\"Hapitan\";\"other\"\n\"1710276\";\"Jantianon\";\"main\"\n\"1710279\";\"Janopol\";\"main\"\n\"1710286\";\"Janiuay\";\"main\"\n\"1710303\";\"Jandayan\";\"main\"\n\"1710311\";\"Janagdong\";\"main\"\n\"1710318\";\"Jampang\";\"main\"\n\"1710318\";\"Hampang\";\"other\"\n\"1710318\";\"Jampano\";\"other\"\n\"1710320\";\"Hamoraon\";\"main\"\n\"1710320\";\"Jamoraon\";\"other\"\n\"1710320\";\"Jamorawon\";\"other\"\n\"1710325\";\"Jamindan\";\"main\"\n\"1710336\";\"Jamabalod\";\"main\"\n\"1710336\";\"Jamabalud\";\"other\"\n\"1710347\";\"Jalaud\";\"main\"\n\"1710347\";\"Jalauod\";\"other\"\n\"1710348\";\"Jalaud\";\"main\"\n\"1710348\";\"Banga Bante\";\"other\"\n\"1710348\";\"Jalauod\";\"other\"\n\"1710348\";\"Jalavod\";\"other\"\n\"1710348\";\"Jaliaud\";\"other\"\n\"1710357\";\"Jalajala\";\"main\"\n\"1710362\";\"Jagupit\";\"main\"\n\"1710363\";\"Jaguimitan\";\"main\"\n\"1710363\";\"Haguimitan\";\"other\"\n\"1710387\";\"Jaena\";\"main\"\n\"1710389\";\"Jaen\";\"main\"\n\"1710389\";\"Khaehn\";\"other\"\n\"1710389\";\"Хаэн\";\"other\"\n\"1710395\";\"Jaclupan\";\"main\"\n\"1710399\";\"Jabonga\";\"main\"\n\"1710425\";\"Ivisan\";\"main\"\n\"1710425\";\"Iuisan\";\"other\"\n\"1710425\";\"Ivison\";\"other\"\n\"1710441\";\"Itogon\";\"main\"\n\"1710470\";\"Isulan\";\"main\"\n\"1710470\";\"Kalawag\";\"other\"\n\"1710473\";\"Isugod\";\"main\"\n\"1710489\";\"Isla\";\"main\"\n\"1710518\";\"Isabela\";\"main\"\n\"1710518\";\"Isabella\";\"other\"\n\"1710518\";\"Izabela\";\"other\"\n\"1710518\";\"Изабела\";\"other\"\n\"1710519\";\"Isabela\";\"main\"\n\"1710519\";\"Basilan\";\"other\"\n\"1710519\";\"Basilan City\";\"other\"\n\"1710519\";\"Isabel\";\"other\"\n\"1710519\";\"Izabela\";\"other\"\n\"1710519\";\"Изабела\";\"other\"\n\"1710523\";\"Isabel\";\"main\"\n\"1710523\";\"Quiot\";\"other\"\n\"1710526\";\"Isabang\";\"main\"\n\"1710531\";\"Irosin\";\"main\"\n\"1710541\";\"Irirum\";\"main\"\n\"1710541\";\"Iriron\";\"other\"\n\"1710541\";\"Irirun\";\"other\"\n\"1710544\";\"Iriga\";\"main\"\n\"1710544\";\"Iriga City\";\"other\"\n\"1710549\";\"Iraya\";\"main\"\n\"1710553\";\"Irasan\";\"main\"\n\"1710554\";\"Iraray\";\"main\"\n\"1710559\";\"Irahuan\";\"main\"\n\"1710559\";\"Irawan\";\"other\"\n\"1710560\";\"Iraga\";\"main\"\n\"1710590\";\"Ipilan\";\"main\"\n\"1710597\";\"Ipil\";\"main\"\n\"1710605\";\"Ipil\";\"main\"\n\"1710609\";\"Ipil\";\"main\"\n\"1710612\";\"Ipil\";\"main\"\n\"1710612\";\"Sanito\";\"other\"\n\"1710612\";\"Tayun\";\"other\"\n\"1710636\";\"Inobulan\";\"main\"\n\"1710636\";\"Inubolan\";\"other\"\n\"1710655\";\"Intampilan\";\"main\"\n\"1710705\";\"Initao\";\"main\"\n\"1710705\";\"Inatao\";\"other\"\n\"1710715\";\"Inicbulan\";\"main\"\n\"1710744\";\"Infanta\";\"main\"\n\"1710745\";\"Infanta\";\"main\"\n\"1710749\";\"Ineangan\";\"main\"\n\"1710753\";\"Indulang\";\"main\"\n\"1710770\";\"Indang\";\"main\"\n\"1710800\";\"Inayauan\";\"main\"\n\"1710800\";\"Inayawan\";\"other\"\n\"1710804\";\"Inayagan\";\"main\"\n\"1710806\";\"Inawayan\";\"main\"\n\"1710806\";\"Inauayan\";\"other\"\n\"1710829\";\"Inapatan\";\"main\"\n\"1710840\";\"Inangatan\";\"main\"\n\"1710912\";\"Inabaan\";\"main\"\n\"1710914\";\"Imus\";\"main\"\n\"1710936\";\"Impalutao\";\"main\"\n\"1710936\";\"Impulatao\";\"other\"\n\"1710949\";\"Imelda\";\"main\"\n\"1710950\";\"Imelda\";\"main\"\n\"1710962\";\"Imbatug\";\"main\"\n\"1710971\";\"Imbang\";\"main\"\n\"1711005\";\"Iloilo\";\"main\"\n\"1711005\";\"Iloilo City\";\"other\"\n\"1711005\";\"Iloilo Proper\";\"other\"\n\"1711005\";\"Илоило\";\"other\"\n\"1711030\";\"Ilog\";\"main\"\n\"1711047\";\"Ilioilio\";\"main\"\n\"1711047\";\"Ollio-ilio\";\"other\"\n\"1711061\";\"Ilijan\";\"main\"\n\"1711061\";\"Ilihan\";\"other\"\n\"1711073\";\"Ilihan\";\"main\"\n\"1711082\";\"Iligan City\";\"main\"\n\"1711082\";\"City of Iligan\";\"other\"\n\"1711082\";\"Idigan\";\"other\"\n\"1711082\";\"Iligan\";\"other\"\n\"1711119\";\"Ilaya\";\"main\"\n\"1711119\";\"Llaya\";\"other\"\n\"1711119\";\"Ylaya\";\"other\"\n\"1711128\";\"Ilasan Ilaya\";\"main\"\n\"1711128\";\"Ilasan\";\"other\"\n\"1711135\";\"Ilangay\";\"main\"\n\"1711135\";\"Ilañgay\";\"other\"\n\"1711146\";\"Ilagan\";\"main\"\n\"1711172\";\"Iguig\";\"main\"\n\"1711201\";\"Igpit\";\"main\"\n\"1711218\";\"Ignit\";\"main\"\n\"1711218\";\"Igpit\";\"other\"\n\"1711220\";\"Igmaya-an\";\"main\"\n\"1711251\";\"Igcocolo\";\"main\"\n\"1711277\";\"Igbon\";\"main\"\n\"1711320\";\"Igang\";\"main\"\n\"1711332\";\"Idtig\";\"main\"\n\"1711332\";\"Itig\";\"other\"\n\"1711337\";\"Idio\";\"main\"\n\"1711348\";\"Ichon\";\"main\"\n\"1711393\";\"Ibarra\";\"main\"\n\"1711404\";\"Ibajay\";\"main\"\n\"1711415\";\"Yuni\";\"main\"\n\"1711415\";\"Ibabang Yuni\";\"other\"\n\"1711416\";\"Ibabang Tayuman\";\"main\"\n\"1711431\";\"Ibaan\";\"main\"\n\"1711436\";\"Iba\";\"main\"\n\"1711437\";\"Iba\";\"main\"\n\"1711437\";\"Ibra\";\"other\"\n\"1711437\";\"Ибра\";\"other\"\n\"1711489\";\"Hukay\";\"main\"\n\"1711538\";\"Hondagua\";\"main\"\n\"1711538\";\"Bagacay\";\"other\"\n\"1711538\";\"Hondagua Bagacay\";\"other\"\n\"1711558\";\"Hobo\";\"main\"\n\"1711558\";\"Hubo\";\"other\"\n\"1711558\";\"Ubo\";\"other\"\n\"1711578\";\"Hipasngo\";\"main\"\n\"1711578\";\"Hiposngo\";\"other\"\n\"1711578\";\"HipusNgo\";\"other\"\n\"1711580\";\"Hipona\";\"main\"\n\"1711593\";\"Hinundayan\";\"main\"\n\"1711616\";\"Hinlayagan Ilaud\";\"main\"\n\"1711616\";\"Hinlayagan\";\"other\"\n\"1711621\";\"Hinigaran\";\"main\"\n\"1711635\";\"Hingatungan\";\"main\"\n\"1711635\";\"Hinatungan\";\"other\"\n\"1711645\";\"Hindang\";\"main\"\n\"1711655\";\"Hinatuan\";\"main\"\n\"1711663\";\"Hinapalanan\";\"main\"\n\"1711663\";\"Hinaplanan\";\"other\"\n\"1711697\";\"Himensulan\";\"main\"\n\"1711707\";\"Himaya\";\"main\"\n\"1711713\";\"Gimampang\";\"main\"\n\"1711713\";\"Gimangpang\";\"other\"\n\"1711713\";\"Gumampang\";\"other\"\n\"1711713\";\"Himangpang\";\"other\"\n\"1711718\";\"Himamaylan\";\"main\"\n\"1711731\";\"Himaao\";\"main\"\n\"1711731\";\"Himado\";\"other\"\n\"1711731\";\"Imaao\";\"other\"\n\"1711738\";\"Hilotongan\";\"main\"\n\"1711738\";\"Gilutongan\";\"other\"\n\"1711738\";\"Hilutangan\";\"other\"\n\"1711738\";\"Lutungan\";\"other\"\n\"1711742\";\"Hilongos\";\"main\"\n\"1711764\";\"Hijo\";\"main\"\n\"1711807\";\"Hibaiyo\";\"main\"\n\"1711807\";\"Jibayo\";\"other\"\n\"1711817\";\"Herrera\";\"main\"\n\"1711821\";\"Hernani\";\"main\"\n\"1711821\";\"Barrto\";\"other\"\n\"1711829\";\"Hermosa\";\"main\"\n\"1711829\";\"Ehrmosa\";\"other\"\n\"1711829\";\"Эрмоса\";\"other\"\n\"1711864\";\"Harrison\";\"main\"\n\"1711866\";\"Jarigue\";\"main\"\n\"1711866\";\"Arigi\";\"other\"\n\"1711866\";\"Haregue\";\"other\"\n\"1711866\";\"Harigue\";\"other\"\n\"1711876\";\"Hapao\";\"main\"\n\"1711908\";\"Hamtic\";\"main\"\n\"1711908\";\"Antique\";\"other\"\n\"1711908\";\"Hamtik\";\"other\"\n\"1711941\";\"Halog\";\"main\"\n\"1711943\";\"Haligue\";\"main\"\n\"1711954\";\"Halayhayin\";\"main\"\n\"1711955\";\"Halayhay\";\"main\"\n\"1711958\";\"Halapitan\";\"main\"\n\"1711978\";\"Haguimit\";\"main\"\n\"1711982\";\"Hagunoy\";\"main\"\n\"1711982\";\"Hagonoy\";\"other\"\n\"1711982\";\"Hagony\";\"other\"\n\"1711984\";\"Hagonoy\";\"main\"\n\"1711991\";\"Hagnaya\";\"main\"\n\"1711997\";\"Hagdan\";\"main\"\n\"1711997\";\"Jagtan\";\"other\"\n\"1712027\";\"Dolores\";\"main\"\n\"1712027\";\"Hacienda Dolores\";\"other\"\n\"1712035\";\"Hacienda\";\"main\"\n\"1712051\";\"Guyong\";\"main\"\n\"1712058\";\"Guyam\";\"main\"\n\"1712058\";\"Guyam Malaki\";\"other\"\n\"1712072\";\"Gutad\";\"main\"\n\"1712097\";\"Guruyan\";\"main\"\n\"1712097\";\"Goroyan\";\"other\"\n\"1712107\";\"Gupitan\";\"main\"\n\"1712107\";\"Bubonao\";\"other\"\n\"1712133\";\"Gumian\";\"main\"\n\"1712133\";\"Gomian\";\"other\"\n\"1712133\";\"Gumilan\";\"other\"\n\"1712140\";\"Gumaus\";\"main\"\n\"1712157\";\"Gumalang\";\"main\"\n\"1712162\";\"Gumaca\";\"main\"\n\"1712169\";\"Gulod\";\"main\"\n\"1712194\";\"Guiwanon\";\"main\"\n\"1712206\";\"Guiuan\";\"main\"\n\"1712206\";\"Guian\";\"other\"\n\"1712206\";\"Guinan\";\"other\"\n\"1712224\";\"Guisijan\";\"main\"\n\"1712224\";\"Guisihan\";\"other\"\n\"1712227\";\"Guisguis\";\"main\"\n\"1712228\";\"Guisguis\";\"main\"\n\"1712232\";\"Guiset East\";\"main\"\n\"1712232\";\"Guiset\";\"other\"\n\"1712232\";\"Guiset Este\";\"other\"\n\"1712232\";\"Guiset Sur\";\"other\"\n\"1712239\";\"Guirang\";\"main\"\n\"1712240\";\"Guipos\";\"main\"\n\"1712240\";\"Guipas\";\"other\"\n\"1712245\";\"Guiong\";\"main\"\n\"1712245\";\"Geong\";\"other\"\n\"1712245\";\"Giong\";\"other\"\n\"1712252\";\"Giawang\";\"main\"\n\"1712252\";\"Giwang\";\"other\"\n\"1712252\";\"Guio-ang\";\"other\"\n\"1712260\";\"Guintubhan\";\"main\"\n\"1712260\";\"Guitubhan\";\"other\"\n\"1712276\";\"Guinticgan\";\"main\"\n\"1712297\";\"Guinisiliban\";\"main\"\n\"1712297\";\"Ginsiliban\";\"other\"\n\"1712297\";\"Guinciliban\";\"other\"\n\"1712297\";\"Guinsilban\";\"other\"\n\"1712297\";\"Guinsiliban\";\"other\"\n\"1712305\";\"Guinsang-an\";\"main\"\n\"1712307\";\"Guinsadan\";\"main\"\n\"1712307\";\"Guinzaden\";\"other\"\n\"1712338\";\"Guinlo\";\"main\"\n\"1712338\";\"New Guinlo\";\"other\"\n\"1712377\";\"Guindulman\";\"main\"\n\"1712386\";\"Guindarohan\";\"main\"\n\"1712387\";\"Guindapunan\";\"main\"\n\"1712407\";\"Guinoaliuan\";\"main\"\n\"1712407\";\"Guinbaliuan\";\"other\"\n\"1712407\";\"Guinbaliwan\";\"other\"\n\"1712415\";\"Guinayangan\";\"main\"\n\"1712434\";\"Guinabsan\";\"main\"\n\"1712434\";\"Guinapsan\";\"other\"\n\"1712452\";\"Guinacotan\";\"main\"\n\"1712452\";\"Ginacutan\";\"other\"\n\"1712452\";\"Guinacutan\";\"other\"\n\"1712484\";\"Guimbal\";\"main\"\n\"1712488\";\"Guimba\";\"main\"\n\"1712504\";\"Guiljungan\";\"main\"\n\"1712504\";\"Guinjungan\";\"other\"\n\"1712508\";\"Guiling\";\"main\"\n\"1712508\";\"Quiling\";\"other\"\n\"1712519\";\"Guijalo\";\"main\"\n\"1712520\";\"Guihulñgan\";\"main\"\n\"1712520\";\"Guihulngan\";\"ascii\"\n\"1712520\";\"Gihulngan\";\"other\"\n\"1712520\";\"Guilhulngan\";\"other\"\n\"1712520\";\"Gulhulngan\";\"other\"\n\"1712523\";\"Guihing Proper\";\"main\"\n\"1712523\";\"Guihing\";\"other\"\n\"1712531\";\"Guiguinto\";\"main\"\n\"1712537\";\"Guiddam\";\"main\"\n\"1712549\";\"Guibodangan\";\"main\"\n\"1712549\";\"Gibuangan\";\"other\"\n\"1712549\";\"Guiboangan\";\"other\"\n\"1712549\";\"Guibuangan\";\"other\"\n\"1712576\";\"Gueset\";\"main\"\n\"1712600\";\"Gubat\";\"main\"\n\"1712609\";\"Guba\";\"main\"\n\"1712627\";\"Guagua\";\"main\"\n\"1712637\";\"Guadalupe\";\"main\"\n\"1712640\";\"Guadalupe\";\"main\"\n\"1712643\";\"Guadalupe\";\"main\"\n\"1712643\";\"Guadelupe\";\"other\"\n\"1712645\";\"Guadalupe\";\"main\"\n\"1712647\";\"Guadalupe\";\"main\"\n\"1712691\";\"Granada\";\"main\"\n\"1712704\";\"Sigaboy\";\"main\"\n\"1712704\";\"Govenor Generoso\";\"other\"\n\"1712704\";\"Governor Generoso\";\"other\"\n\"1712704\";\"Jigabay\";\"other\"\n\"1712704\";\"Segaboy\";\"other\"\n\"1712704\";\"Surup\";\"other\"\n\"1712751\";\"Gonzaga\";\"main\"\n\"1712770\";\"Goma\";\"main\"\n\"1712770\";\"Guma\";\"other\"\n\"1712803\";\"Gocoton\";\"main\"\n\"1712803\";\"Gocotan\";\"other\"\n\"1712803\";\"Gokotan\";\"other\"\n\"1712808\";\"Goa\";\"main\"\n\"1712808\";\"Гоа\";\"other\"\n\"1712813\";\"Gloria\";\"main\"\n\"1712818\";\"Glan Peidu\";\"main\"\n\"1712818\";\"Glan Padido\";\"other\"\n\"1712818\";\"Glan Padidu\";\"other\"\n\"1712818\";\"Sinabulad\";\"other\"\n\"1712818\";\"Sinabulado\";\"other\"\n\"1712819\";\"Glan\";\"main\"\n\"1712819\";\"Glan-Townsite\";\"other\"\n\"1712819\";\"Глан\";\"other\"\n\"1712821\";\"Glamang\";\"main\"\n\"1712822\";\"Glad\";\"main\"\n\"1712832\";\"Gitagum\";\"main\"\n\"1712832\";\"Gitagun\";\"other\"\n\"1712832\";\"Hitagum\";\"other\"\n\"1712842\";\"Giporlos\";\"main\"\n\"1712883\";\"Gines-Patay\";\"main\"\n\"1712883\";\"Gines\";\"other\"\n\"1712899\";\"Ginatilan\";\"main\"\n\"1712899\";\"Ginatlian\";\"other\"\n\"1712912\";\"Ginabuyan\";\"main\"\n\"1712912\";\"Hinabuyan\";\"other\"\n\"1712912\";\"Jinabuyan\";\"other\"\n\"1712949\";\"Hilantagaan\";\"main\"\n\"1712949\";\"Cabaliod\";\"other\"\n\"1712949\";\"Caballod\";\"other\"\n\"1712949\";\"Gilantagaan\";\"other\"\n\"1712961\";\"Gigmoto\";\"main\"\n\"1712964\";\"Gigaquit\";\"main\"\n\"1712986\";\"Gibong\";\"main\"\n\"1712986\";\"Gibon\";\"other\"\n\"1712986\";\"Hibung\";\"other\"\n\"1712986\";\"Hibung Town\";\"other\"\n\"1712990\";\"Gibgos\";\"main\"\n\"1712990\";\"Hibgos\";\"other\"\n\"1712992\";\"Gibato\";\"main\"\n\"1713003\";\"Getulio\";\"main\"\n\"1713003\";\"Gelulio\";\"other\"\n\"1713004\";\"Gerona\";\"main\"\n\"1713004\";\"Zherona\";\"other\"\n\"1713004\";\"Жерона\";\"other\"\n\"1713014\";\"General Trias\";\"main\"\n\"1713018\";\"General Tinio\";\"main\"\n\"1713018\";\"Papaya\";\"other\"\n\"1713024\";\"General Nakar\";\"main\"\n\"1713024\";\"Pamplona\";\"other\"\n\"1713027\";\"General Natividad\";\"main\"\n\"1713027\";\"General Mamerto Natividad\";\"other\"\n\"1713027\";\"Natividad\";\"other\"\n\"1713030\";\"General MacArthur\";\"main\"\n\"1713030\";\"General McArthur\";\"other\"\n\"1713030\";\"Hermani\";\"other\"\n\"1713030\";\"Hernani\";\"other\"\n\"1713030\";\"Pambuhan Sur\";\"other\"\n\"1713030\";\"Pambujan Sur\";\"other\"\n\"1713030\";\"Paonbiyan Sur\";\"other\"\n\"1713033\";\"General Luna\";\"main\"\n\"1713039\";\"General Luna\";\"main\"\n\"1713039\";\"Hingosa\";\"other\"\n\"1713039\";\"Hingoso\";\"other\"\n\"1713053\";\"General Emilio Aguinaldo\";\"main\"\n\"1713053\";\"Bailen\";\"other\"\n\"1713086\";\"Gayaman\";\"main\"\n\"1713116\";\"Gattaran\";\"main\"\n\"1713131\";\"Gatbo\";\"main\"\n\"1713131\";\"Gatho\";\"other\"\n\"1713154\";\"Gasan\";\"main\"\n\"1713185\";\"Garcia Hernandez\";\"main\"\n\"1713185\";\"Garcia\";\"other\"\n\"1713191\";\"Garchitorena\";\"main\"\n\"1713191\";\"Anderson\";\"other\"\n\"1713208\";\"Gappal\";\"main\"\n\"1713208\";\"Cappal\";\"other\"\n\"1713226\";\"Gapan\";\"main\"\n\"1713226\";\"Capan\";\"other\"\n\"1713239\";\"Ganyangan\";\"main\"\n\"1713239\";\"Gandiangan\";\"other\"\n\"1713239\";\"Ganyangan Junction\";\"other\"\n\"1713245\";\"Gansing\";\"main\"\n\"1713259\";\"Gang\";\"main\"\n\"1713262\";\"Gandara\";\"main\"\n\"1713262\";\"Gandara Village\";\"other\"\n\"1713271\";\"Ganassi\";\"main\"\n\"1713271\";\"Ganasi\";\"other\"\n\"1713286\";\"Gamut\";\"main\"\n\"1713287\";\"Gamut\";\"main\"\n\"1713287\";\"Gamuton\";\"other\"\n\"1713287\";\"Ganut\";\"other\"\n\"1713288\";\"Gamu\";\"main\"\n\"1713296\";\"Gammad\";\"main\"\n\"1713302\";\"Gambang\";\"main\"\n\"1713309\";\"Gamay\";\"main\"\n\"1713387\";\"Gainza\";\"main\"\n\"1713413\";\"Gadung\";\"main\"\n\"1713415\";\"Gadu\";\"main\"\n\"1713434\";\"Gabuyan\";\"main\"\n\"1713473\";\"Gabi\";\"main\"\n\"1713473\";\"Gabi Norte\";\"other\"\n\"1713473\";\"Gabi Sur\";\"other\"\n\"1713478\";\"Gabi\";\"main\"\n\"1713479\";\"Gabi\";\"main\"\n\"1713486\";\"Gabawan\";\"main\"\n\"1713486\";\"Gabauan\";\"other\"\n\"1713490\";\"Gabas\";\"main\"\n\"1713494\";\"Gabao\";\"main\"\n\"1713494\";\"Gatbo\";\"other\"\n\"1713495\";\"Gabao\";\"main\"\n\"1713498\";\"Gabaldon\";\"main\"\n\"1713523\";\"Furao\";\"main\"\n\"1713558\";\"Fuerte\";\"main\"\n\"1713558\";\"Fuarte\";\"other\"\n\"1713612\";\"Flora\";\"main\"\n\"1713612\";\"Bagutong\";\"other\"\n\"1713653\";\"Feliciano\";\"main\"\n\"1713665\";\"Famy\";\"main\"\n\"1713690\";\"Fabrica\";\"main\"\n\"1713702\";\"Evangelista\";\"main\"\n\"1713706\";\"Eustaquio Lopez\";\"main\"\n\"1713706\";\"Eustapuio Lopez\";\"other\"\n\"1713706\";\"Lopez\";\"other\"\n\"1713714\";\"Estrella\";\"main\"\n\"1713715\";\"Estrella\";\"main\"\n\"1713719\";\"Estipona\";\"main\"\n\"1713726\";\"Estefania\";\"main\"\n\"1713726\";\"Estafania\";\"other\"\n\"1713734\";\"Estancia\";\"main\"\n\"1713736\";\"Estancia\";\"main\"\n\"1713736\";\"Estacia\";\"other\"\n\"1713736\";\"Estancia Town\";\"other\"\n\"1713745\";\"Estacion\";\"main\"\n\"1713750\";\"Estaca\";\"main\"\n\"1713752\";\"Espiritu\";\"main\"\n\"1713752\";\"Banna\";\"other\"\n\"1713759\";\"Esperanza Este\";\"main\"\n\"1713759\";\"Esperanza\";\"other\"\n\"1713774\";\"Esperanza\";\"main\"\n\"1713775\";\"Esperanza\";\"main\"\n\"1713775\";\"Esperanzo\";\"other\"\n\"1713784\";\"Esperanza\";\"main\"\n\"1713785\";\"Esperanza\";\"main\"\n\"1713787\";\"Esperanza\";\"main\"\n\"1713788\";\"Esperanza\";\"main\"\n\"1713797\";\"España\";\"main\"\n\"1713797\";\"Espana\";\"ascii\"\n\"1713797\";\"Espina\";\"other\"\n\"1713797\";\"Espiña\";\"other\"\n\"1713799\";\"Esmeralda\";\"main\"\n\"1713818\";\"Escalante\";\"main\"\n\"1713829\";\"Ermita\";\"main\"\n\"1713833\";\"Erenas\";\"main\"\n\"1713839\";\"Eraan\";\"main\"\n\"1713839\";\"Eran\";\"other\"\n\"1713839\";\"Iraan\";\"other\"\n\"1713850\";\"Entablado\";\"main\"\n\"1713850\";\"Entablana\";\"other\"\n\"1713857\";\"Saravia\";\"main\"\n\"1713857\";\"Enrique B. Magalona\";\"other\"\n\"1713859\";\"Enrile\";\"main\"\n\"1713859\";\"Entile\";\"other\"\n\"1713911\";\"El Salvador\";\"main\"\n\"1713913\";\"El Pardo\";\"main\"\n\"1713913\";\"Pardo\";\"other\"\n\"1713917\";\"El Nido\";\"main\"\n\"1713917\";\"Bacuit\";\"other\"\n\"1713917\";\"El Nido Bacuit\";\"other\"\n\"1713947\";\"Eguia\";\"main\"\n\"1713955\";\"Egaña\";\"main\"\n\"1713955\";\"Egana\";\"ascii\"\n\"1713959\";\"Eden\";\"main\"\n\"1713960\";\"Ebcor Town\";\"main\"\n\"1713960\";\"Edcor\";\"other\"\n\"1713960\";\"Gallego Edcor\";\"other\"\n\"1713962\";\"Echague\";\"main\"\n\"1713962\";\"Enchague\";\"other\"\n\"1714030\";\"Duran\";\"main\"\n\"1714070\";\"Dunguan\";\"main\"\n\"1714070\";\"Dungguan\";\"other\"\n\"1714106\";\"Dumpay\";\"main\"\n\"1714106\";\"Dompay\";\"other\"\n\"1714118\";\"Dumlan\";\"main\"\n\"1714121\";\"Dumingag\";\"main\"\n\"1714140\";\"Dumarao\";\"main\"\n\"1714140\";\"Dumalao\";\"other\"\n\"1714149\";\"Dumarais\";\"main\"\n\"1714163\";\"Dumanjog\";\"main\"\n\"1714163\";\"Dumanjug\";\"other\"\n\"1714168\";\"Dumangas\";\"main\"\n\"1714168\";\"Dumanoa\";\"other\"\n\"1714176\";\"Dumalinao\";\"main\"\n\"1714186\";\"Dumalaguing\";\"main\"\n\"1714190\";\"Dumalag\";\"main\"\n\"1714196\";\"Dumaguil\";\"main\"\n\"1714201\";\"Dumaguete\";\"main\"\n\"1714201\";\"Ciudad ti Dumaguete\";\"other\"\n\"1714201\";\"Dumageute\";\"other\"\n\"1714201\";\"Dumaguete City\";\"other\"\n\"1714201\";\"do~umagete\";\"other\"\n\"1714201\";\"ドゥマゲテ\";\"other\"\n\"1714212\";\"Dumabato\";\"main\"\n\"1714212\";\"Dumabatu\";\"other\"\n\"1714232\";\"Duljo\";\"main\"\n\"1714232\";\"Doljo\";\"other\"\n\"1714237\";\"Dulig\";\"main\"\n\"1714237\";\"Dulit\";\"other\"\n\"1714247\";\"Dulao\";\"main\"\n\"1714255\";\"Dulangan\";\"main\"\n\"1714256\";\"Dulangan\";\"main\"\n\"1714258\";\"Dulangan\";\"main\"\n\"1714264\";\"Dulag\";\"main\"\n\"1714268\";\"Dukay\";\"main\"\n\"1714293\";\"Dugongan\";\"main\"\n\"1714293\";\"Dogongan\";\"other\"\n\"1714293\";\"Dugungan\";\"other\"\n\"1714301\";\"Dugcal\";\"main\"\n\"1714301\";\"Dugal\";\"other\"\n\"1714301\";\"Dugkal\";\"other\"\n\"1714309\";\"Dueñas\";\"main\"\n\"1714309\";\"Duenas\";\"ascii\"\n\"1714339\";\"Dualing\";\"main\"\n\"1714353\";\"Doyong\";\"main\"\n\"1714374\";\"Dos Hermanas\";\"main\"\n\"1714374\";\"Dos Hermanos\";\"other\"\n\"1714382\";\"Dorongan Punta\";\"main\"\n\"1714382\";\"Dorongan\";\"other\"\n\"1714382\";\"Doroñgan\";\"other\"\n\"1714396\";\"Doos\";\"main\"\n\"1714404\";\"Doong\";\"main\"\n\"1714410\";\"Donsol\";\"main\"\n\"1714414\";\"Don Pedro\";\"main\"\n\"1714416\";\"Talagutong\";\"main\"\n\"1714416\";\"Don Marcelino\";\"other\"\n\"1714416\";\"Tagalotok\";\"other\"\n\"1714416\";\"Talaguton\";\"other\"\n\"1714427\";\"Dungon\";\"main\"\n\"1714427\";\"Dongon\";\"other\"\n\"1714441\";\"Don Carlos\";\"main\"\n\"1714446\";\"Doña Remedios Trinidad\";\"main\"\n\"1714446\";\"Dona Remedios Trinidad\";\"ascii\"\n\"1714481\";\"Domampot\";\"main\"\n\"1714481\";\"Domanpot\";\"other\"\n\"1714481\";\"Dumanpot\";\"other\"\n\"1714482\";\"Domalandan\";\"main\"\n\"1714482\";\"Damaloguen\";\"other\"\n\"1714482\";\"Dumalandan\";\"other\"\n\"1714492\";\"Dolores\";\"main\"\n\"1714503\";\"Dolores\";\"main\"\n\"1714505\";\"Dolores\";\"main\"\n\"1714508\";\"Dolores\";\"main\"\n\"1714519\";\"Dologon\";\"main\"\n\"1714519\";\"Dulogan\";\"other\"\n\"1714519\";\"Dulugon\";\"other\"\n\"1714521\";\"Dolo\";\"main\"\n\"1714550\";\"Dodan\";\"main\"\n\"1714557\";\"Dobdoban\";\"main\"\n\"1714557\";\"Dubduban\";\"other\"\n\"1714575\";\"Divisoria\";\"main\"\n\"1714640\";\"Disod\";\"main\"\n\"1714674\";\"Dipolog\";\"main\"\n\"1714674\";\"Dipolog City\";\"other\"\n\"1714679\";\"Diplahan\";\"main\"\n\"1714694\";\"Dipolo\";\"main\"\n\"1714694\";\"Dipald\";\"other\"\n\"1714694\";\"Dipalo\";\"other\"\n\"1714728\";\"Dingras\";\"main\"\n\"1714733\";\"Dingle\";\"main\"\n\"1714740\";\"Dinganen\";\"main\"\n\"1714740\";\"Dinganan\";\"other\"\n\"1714743\";\"Dingalan\";\"main\"\n\"1714766\";\"Dinalupihan\";\"main\"\n\"1714766\";\"Dinalupian\";\"other\"\n\"1714766\";\"Dinalupihari\";\"other\"\n\"1714766\";\"Dinalupinan\";\"other\"\n\"1714784\";\"Dinahican\";\"main\"\n\"1714784\";\"Binutasan\";\"other\"\n\"1714795\";\"Dinagat\";\"main\"\n\"1714816\";\"Dimayon\";\"main\"\n\"1714821\";\"Dimataling\";\"main\"\n\"1714821\";\"Dimatalin\";\"other\"\n\"1714824\";\"Dimasalang\";\"main\"\n\"1714842\";\"Dimaluno\";\"main\"\n\"1714842\";\"Dimaluna\";\"other\"\n\"1714865\";\"Diliman\";\"main\"\n\"1714900\";\"Dilan\";\"main\"\n\"1714956\";\"Digos\";\"main\"\n\"1714964\";\"Digkilaan\";\"main\"\n\"1714964\";\"Dagquillan\";\"other\"\n\"1714964\";\"Dikilan\";\"other\"\n\"1714967\";\"Digdig\";\"main\"\n\"1714967\";\"Joson\";\"other\"\n\"1714970\";\"Digal\";\"main\"\n\"1714975\";\"Diffun\";\"main\"\n\"1714975\";\"Disinaba\";\"other\"\n\"1714994\";\"Dicayong\";\"main\"\n\"1714994\";\"Dicoyong\";\"other\"\n\"1715010\";\"Dicamay\";\"main\"\n\"1715010\";\"Dicamy\";\"other\"\n\"1715015\";\"Dicabisagan\";\"main\"\n\"1715015\";\"Dicaoisagan\";\"other\"\n\"1715027\";\"Dibuluan\";\"main\"\n\"1715057\";\"Diaz\";\"main\"\n\"1715072\";\"Dian-ay\";\"main\"\n\"1715082\";\"Diamantina\";\"main\"\n\"1715082\";\"Diamantino\";\"other\"\n\"1715095\";\"Diadi\";\"main\"\n\"1715160\";\"Del Rosario\";\"main\"\n\"1715169\";\"Del Pilar\";\"main\"\n\"1715181\";\"Del Pilar\";\"main\"\n\"1715194\";\"Daliciasao\";\"main\"\n\"1715194\";\"Dalisiasa\";\"other\"\n\"1715194\";\"Delicioso\";\"other\"\n\"1715198\";\"Del Gallego\";\"main\"\n\"1715198\";\"Danawin\";\"other\"\n\"1715206\";\"Del Carmen\";\"main\"\n\"1715212\";\"Del Carmen\";\"main\"\n\"1715212\";\"Nomantag\";\"other\"\n\"1715230\";\"La Paz\";\"main\"\n\"1715230\";\"De la Paz\";\"other\"\n\"1715279\";\"Daykitin\";\"main\"\n\"1715279\";\"Daiquitin\";\"other\"\n\"1715279\";\"Dayquitin\";\"other\"\n\"1715304\";\"Dayapan\";\"main\"\n\"1715307\";\"Dayap\";\"main\"\n\"1715334\";\"Dawa-Dawa\";\"main\"\n\"1715334\";\"Daua-Daua\";\"other\"\n\"1715335\";\"Davila\";\"main\"\n\"1715348\";\"Davao\";\"main\"\n\"1715348\";\"Central\";\"other\"\n\"1715348\";\"Davao City\";\"other\"\n\"1715348\";\"Давао\";\"other\"\n\"1715366\";\"Dauis\";\"main\"\n\"1715366\";\"Dauis Union\";\"other\"\n\"1715366\";\"Davis Union\";\"other\"\n\"1715369\";\"Dauin\";\"main\"\n\"1715369\";\"Davin\";\"other\"\n\"1715372\";\"Davan\";\"main\"\n\"1715372\";\"Cabuaga\";\"other\"\n\"1715372\";\"Dauan\";\"other\"\n\"1715372\";\"Dawan\";\"other\"\n\"1715382\";\"Datu Piang\";\"main\"\n\"1715382\";\"Dulauan\";\"other\"\n\"1715382\";\"Dulawan\";\"other\"\n\"1715384\";\"Datu Paglas\";\"main\"\n\"1715407\";\"Datagon\";\"main\"\n\"1715421\";\"Dassun\";\"main\"\n\"1715427\";\"Dasol\";\"main\"\n\"1715430\";\"Dasmariñas\";\"main\"\n\"1715430\";\"Dasmarinas\";\"ascii\"\n\"1715430\";\"Dasmarines\";\"other\"\n\"1715478\";\"Darapidap\";\"main\"\n\"1715493\";\"Daram\";\"main\"\n\"1715499\";\"Daraitan\";\"main\"\n\"1715502\";\"Daragutan\";\"main\"\n\"1715507\";\"Daraga\";\"main\"\n\"1715507\";\"Locsin\";\"other\"\n\"1715541\";\"Dapitan\";\"main\"\n\"1715542\";\"Dapitan\";\"main\"\n\"1715542\";\"Dapitan City\";\"other\"\n\"1715542\";\"Дапитан\";\"other\"\n\"1715569\";\"Dapdapan\";\"main\"\n\"1715587\";\"Dapdap\";\"main\"\n\"1715588\";\"Dapdap\";\"main\"\n\"1715606\";\"Dapawan\";\"main\"\n\"1715606\";\"Dapauan\";\"other\"\n\"1715617\";\"Dapa\";\"main\"\n\"1715635\";\"Dao\";\"main\"\n\"1715636\";\"Dao\";\"main\"\n\"1715636\";\"Dao Capiz\";\"other\"\n\"1715639\";\"Tobias Fornier\";\"main\"\n\"1715639\";\"Dao\";\"other\"\n\"1715655\";\"Dansuli\";\"main\"\n\"1715659\";\"Dorsalanam\";\"main\"\n\"1715659\";\"Dansolihon\";\"other\"\n\"1715719\";\"Dangcalan\";\"main\"\n\"1715719\";\"Dancalan\";\"other\"\n\"1715722\";\"Dancagan\";\"main\"\n\"1715722\";\"Dangcagan\";\"other\"\n\"1715750\";\"Dancalan\";\"main\"\n\"1715804\";\"Danao\";\"main\"\n\"1715804\";\"Danao City\";\"other\"\n\"1715804\";\"Idanao\";\"other\"\n\"1715811\";\"Danao\";\"main\"\n\"1715834\";\"Damulog\";\"main\"\n\"1715834\";\"Damolo\";\"other\"\n\"1715834\";\"Dumulug\";\"other\"\n\"1715834\";\"New Damulog\";\"other\"\n\"1715841\";\"Dampol\";\"main\"\n\"1715861\";\"Damortis\";\"main\"\n\"1715864\";\"Damolog\";\"main\"\n\"1715864\";\"Damulog\";\"other\"\n\"1715880\";\"Damilag\";\"main\"\n\"1715880\";\"Damilog\";\"other\"\n\"1715887\";\"Damayan\";\"main\"\n\"1715889\";\"Damawato\";\"main\"\n\"1715890\";\"Damatulan\";\"main\"\n\"1715912\";\"Dalwangan\";\"main\"\n\"1715912\";\"Dalawangan\";\"other\"\n\"1715912\";\"Delauangon\";\"other\"\n\"1715917\";\"Dalupirip\";\"main\"\n\"1715922\";\"Dalupaon\";\"main\"\n\"1715922\";\"Dalapaon\";\"other\"\n\"1715922\";\"Dalopaon\";\"other\"\n\"1715931\";\"Dalumangcob\";\"main\"\n\"1715940\";\"Dalorong\";\"main\"\n\"1715958\";\"Dalirig\";\"main\"\n\"1715958\";\"Dirilig\";\"other\"\n\"1715959\";\"Dalipuga\";\"main\"\n\"1715962\";\"Dalipey\";\"main\"\n\"1716014\";\"Dalican\";\"main\"\n\"1716019\";\"Daliao\";\"main\"\n\"1716019\";\"Dalio\";\"other\"\n\"1716074\";\"Dalaoig\";\"main\"\n\"1716074\";\"Dalauig\";\"other\"\n\"1716107\";\"Dalaguete\";\"main\"\n\"1716107\";\"Dalaquete\";\"other\"\n\"1716184\";\"Dahay\";\"main\"\n\"1716192\";\"Dagupan\";\"main\"\n\"1716199\";\"Dagup\";\"main\"\n\"1716199\";\"Dagap\";\"other\"\n\"1716213\";\"Daguit\";\"main\"\n\"1716230\";\"Dagumba-an\";\"main\"\n\"1716230\";\"Dagombaan\";\"other\"\n\"1716231\";\"Dagohoy\";\"main\"\n\"1716252\";\"Dagatan\";\"main\"\n\"1716256\";\"Dagatan\";\"main\"\n\"1716272\";\"Dagami\";\"main\"\n\"1716287\";\"Daet\";\"main\"\n\"1716287\";\"Дает\";\"other\"\n\"1716294\";\"Dadus\";\"main\"\n\"1716294\";\"Dados\";\"other\"\n\"1716315\";\"Dacudao\";\"main\"\n\"1716365\";\"Da-an Sur\";\"main\"\n\"1716365\";\"Da-an\";\"other\"\n\"1716385\";\"Daan Banua\";\"main\"\n\"1716385\";\"Da-an Banwa\";\"other\"\n\"1716388\";\"Daanbantayan\";\"main\"\n\"1716388\";\"Candaya\";\"other\"\n\"1716397\";\"Cuyo\";\"main\"\n\"1716397\";\"Cugo\";\"other\"\n\"1716401\";\"Cuyapo\";\"main\"\n\"1716401\";\"Cuya\";\"other\"\n\"1716423\";\"Cutcut\";\"main\"\n\"1716440\";\"Curuan\";\"main\"\n\"1716440\";\"Coroan\";\"other\"\n\"1716441\";\"Curry\";\"main\"\n\"1716441\";\"Cury\";\"other\"\n\"1716499\";\"Culubasa\";\"main\"\n\"1716518\";\"Collalabo\";\"main\"\n\"1716518\";\"Cullalabo\";\"other\"\n\"1716540\";\"Kulianin\";\"main\"\n\"1716540\";\"Culianin\";\"other\"\n\"1716542\";\"Culianan\";\"main\"\n\"1716542\";\"Culianon\";\"other\"\n\"1716573\";\"Culasi\";\"main\"\n\"1716574\";\"Culasi\";\"main\"\n\"1716589\";\"Culaman\";\"main\"\n\"1716589\";\"Kulaman\";\"other\"\n\"1716599\";\"Culaba\";\"main\"\n\"1716609\";\"Cuevas\";\"main\"\n\"1716618\";\"Cuenca\";\"main\"\n\"1716618\";\"Kuehnka\";\"other\"\n\"1716618\";\"Куэнка\";\"other\"\n\"1716672\";\"Cuartero\";\"main\"\n\"1716672\";\"Cuariero\";\"other\"\n\"1716677\";\"Cuambog\";\"main\"\n\"1716750\";\"Cotmon\";\"main\"\n\"1716762\";\"Kotkot\";\"main\"\n\"1716762\";\"Cotcot\";\"other\"\n\"1716771\";\"Cotabato\";\"main\"\n\"1716771\";\"Catabate\";\"other\"\n\"1716771\";\"Catabato\";\"other\"\n\"1716771\";\"Cotabato City\";\"other\"\n\"1716771\";\"Cottabato\";\"other\"\n\"1716771\";\"Dakbayan sa Cotabato\";\"other\"\n\"1716771\";\"Kota-Bato\";\"other\"\n\"1716771\";\"Kotabato\";\"other\"\n\"1716771\";\"kotabato shi\";\"other\"\n\"1716771\";\"Котабато\";\"other\"\n\"1716771\";\"コタバト市\";\"other\"\n\"1716780\";\"Cosina\";\"main\"\n\"1716780\";\"New Cosina\";\"other\"\n\"1716786\";\"Cortez\";\"main\"\n\"1716786\";\"Cortes\";\"other\"\n\"1716788\";\"Cortes\";\"main\"\n\"1716796\";\"Corrooy\";\"main\"\n\"1716819\";\"Coronon\";\"main\"\n\"1716834\";\"Coron\";\"main\"\n\"1716853\";\"Cordova\";\"main\"\n\"1716853\";\"Cordoba\";\"other\"\n\"1716853\";\"Kordoba\";\"other\"\n\"1716853\";\"Кордоба\";\"other\"\n\"1716854\";\"Cordon\";\"main\"\n\"1716858\";\"Cordova\";\"main\"\n\"1716858\";\"Cordoba\";\"other\"\n\"1716858\";\"Kordoba\";\"other\"\n\"1716858\";\"Кордоба\";\"other\"\n\"1716897\";\"Convercion\";\"main\"\n\"1716897\";\"Conversion\";\"other\"\n\"1716909\";\"Consuelo\";\"main\"\n\"1716909\";\"Consuolo\";\"other\"\n\"1716909\";\"Consvelo\";\"other\"\n\"1716910\";\"Consuelo\";\"main\"\n\"1716913\";\"Consuelo\";\"main\"\n\"1716915\";\"Consuegra\";\"main\"\n\"1716918\";\"Constancia\";\"main\"\n\"1716921\";\"Consolacion\";\"main\"\n\"1716924\";\"Consolacion\";\"main\"\n\"1716924\";\"Consolation\";\"other\"\n\"1716933\";\"Conner\";\"main\"\n\"1716933\";\"Connor\";\"other\"\n\"1716933\";\"Ripang\";\"other\"\n\"1716951\";\"Conel\";\"main\"\n\"1716963\";\"Conduaga\";\"main\"\n\"1716963\";\"Candawaga\";\"other\"\n\"1716975\";\"Concordia\";\"main\"\n\"1716994\";\"Concepcion\";\"main\"\n\"1716995\";\"Concepcion\";\"main\"\n\"1716995\";\"Conception\";\"other\"\n\"1716995\";\"Konseps'on\";\"other\"\n\"1716995\";\"Консепсьон\";\"other\"\n\"1716996\";\"Concepcion\";\"main\"\n\"1717008\";\"Concepcion Ibaba\";\"main\"\n\"1717008\";\"Concepcion\";\"other\"\n\"1717014\";\"Concepcion\";\"main\"\n\"1717014\";\"Konseps'on\";\"other\"\n\"1717014\";\"Консепсьон\";\"other\"\n\"1717022\";\"Concepcion\";\"main\"\n\"1717022\";\"Concepcion Town\";\"other\"\n\"1717022\";\"Konseps'on\";\"other\"\n\"1717022\";\"Консепсьон\";\"other\"\n\"1717025\";\"Concepcion\";\"main\"\n\"1717026\";\"Concepcion\";\"main\"\n\"1717051\";\"Compostela\";\"main\"\n\"1717053\";\"Compostela\";\"main\"\n\"1717066\";\"Communal\";\"main\"\n\"1717066\";\"Comunal\";\"other\"\n\"1717074\";\"Comillas\";\"main\"\n\"1717075\";\"Cornillas\";\"main\"\n\"1717075\";\"Camillas\";\"other\"\n\"1717075\";\"Comillas\";\"other\"\n\"1717103\";\"Columbio\";\"main\"\n\"1717120\";\"Colonia\";\"main\"\n\"1717120\";\"Kolonia\";\"other\"\n\"1717123\";\"Colonia\";\"main\"\n\"1717124\";\"Colongolo\";\"main\"\n\"1717181\";\"Culasian\";\"main\"\n\"1717181\";\"Colasian\";\"other\"\n\"1717181\";\"Gulasian\";\"other\"\n\"1717181\";\"Kulasian\";\"other\"\n\"1717197\";\"Culacling\";\"main\"\n\"1717197\";\"Colacling\";\"other\"\n\"1717205\";\"Cogtong\";\"main\"\n\"1717205\";\"Cogton\";\"other\"\n\"1717205\";\"Kogtong\";\"other\"\n\"1717211\";\"Cogon\";\"main\"\n\"1717211\";\"Cogow\";\"other\"\n\"1717224\";\"Cogon Cruz\";\"main\"\n\"1717242\";\"Cogon\";\"main\"\n\"1717253\";\"Cogon\";\"main\"\n\"1717259\";\"Cogon\";\"main\"\n\"1717280\";\"Codcod\";\"main\"\n\"1717348\";\"Claveria\";\"main\"\n\"1717348\";\"Calvario\";\"other\"\n\"1717349\";\"Claveria\";\"main\"\n\"1717351\";\"Claveria\";\"main\"\n\"1717356\";\"Claver\";\"main\"\n\"1717356\";\"Calver\";\"other\"\n\"1717363\";\"Clarin\";\"main\"\n\"1717363\";\"Canogan\";\"other\"\n\"1717363\";\"Clorin\";\"other\"\n\"1717364\";\"Clarin\";\"main\"\n\"1717364\";\"Loculan\";\"other\"\n\"1717441\";\"Chambrey\";\"main\"\n\"1717441\";\"Chamberry\";\"other\"\n\"1717441\";\"Chambery\";\"other\"\n\"1717452\";\"Cervantes\";\"main\"\n\"1717453\";\"Cervantes\";\"main\"\n\"1717454\";\"Cervantes\";\"main\"\n\"1717509\";\"Cebuano\";\"main\"\n\"1717512\";\"Cebu City\";\"main\"\n\"1717512\";\"Cebu\";\"other\"\n\"1717512\";\"Sebu\";\"other\"\n\"1717512\";\"Себу\";\"other\"\n\"1717520\";\"Cayungnan\";\"main\"\n\"1717520\";\"Cayugnan\";\"other\"\n\"1717520\";\"Cayungan\";\"other\"\n\"1717550\";\"Cayhagan\";\"main\"\n\"1717569\";\"Cayanguan\";\"main\"\n\"1717569\";\"Cayangwan\";\"other\"\n\"1717573\";\"Cayanga\";\"main\"\n\"1717576\";\"Cayang\";\"main\"\n\"1717592\";\"Kauit\";\"main\"\n\"1717592\";\"Cauit\";\"other\"\n\"1717592\";\"Cawit Norte\";\"other\"\n\"1717592\";\"Kawit\";\"other\"\n\"1717605\";\"Cawayan Bugtong\";\"main\"\n\"1717605\";\"Cawayan Bugtang\";\"other\"\n\"1717605\";\"Kawayah Bugtong\";\"other\"\n\"1717617\";\"Cawayan\";\"main\"\n\"1717619\";\"Cawayan\";\"main\"\n\"1717621\";\"Cawayan\";\"main\"\n\"1717621\";\"Cauayan\";\"other\"\n\"1717640\";\"Cavite\";\"main\"\n\"1717641\";\"Cavite\";\"main\"\n\"1717641\";\"Cavite City\";\"other\"\n\"1717641\";\"Kavite\";\"other\"\n\"1717641\";\"Кавите\";\"other\"\n\"1717649\";\"Cavinti\";\"main\"\n\"1717665\";\"Causwagan\";\"main\"\n\"1717665\";\"Kauswagan\";\"other\"\n\"1717667\";\"Causip\";\"main\"\n\"1717730\";\"Cauayan\";\"main\"\n\"1717730\";\"San Ildefonso\";\"other\"\n\"1717738\";\"Cawayan\";\"main\"\n\"1717738\";\"Cauayan\";\"other\"\n\"1717738\";\"Cavayan\";\"other\"\n\"1717758\";\"Catungawan Sur\";\"main\"\n\"1717758\";\"Catungawan\";\"other\"\n\"1717758\";\"Katungauan\";\"other\"\n\"1717762\";\"Catungan\";\"main\"\n\"1717787\";\"Catuday\";\"main\"\n\"1717792\";\"Catubig\";\"main\"\n\"1717812\";\"Cato\";\"main\"\n\"1717825\";\"Catmondaan\";\"main\"\n\"1717825\";\"Daan Catmon\";\"other\"\n\"1717844\";\"Catmon\";\"main\"\n\"1717849\";\"Catmon\";\"main\"\n\"1717883\";\"Caticugan\";\"main\"\n\"1717884\";\"Katico\";\"main\"\n\"1717884\";\"Catico\";\"other\"\n\"1717886\";\"Caticlan\";\"main\"\n\"1717886\";\"Tican\";\"other\"\n\"1717886\";\"Ticlan\";\"other\"\n\"1717890\";\"Catarman\";\"main\"\n\"1717890\";\"Caterman\";\"other\"\n\"1717896\";\"Cateel\";\"main\"\n\"1717911\";\"Catbalogan\";\"main\"\n\"1717916\";\"Catayuan\";\"main\"\n\"1717916\";\"Catayauan\";\"other\"\n\"1717926\";\"Catarman\";\"main\"\n\"1717930\";\"Catarman\";\"main\"\n\"1717931\";\"Catarman\";\"main\"\n\"1717960\";\"Catanauan\";\"main\"\n\"1717960\";\"Catanuan\";\"other\"\n\"1717994\";\"Cataingan\";\"main\"\n\"1717994\";\"Cataigan\";\"other\"\n\"1718033\";\"Catablan\";\"main\"\n\"1718042\";\"Catabangan\";\"main\"\n\"1718073\";\"Castillo\";\"main\"\n\"1718073\";\"Casillo\";\"other\"\n\"1718078\";\"Castillejos\";\"main\"\n\"1718078\";\"Caslillejos\";\"other\"\n\"1718078\";\"Kastil'ekhosu\";\"other\"\n\"1718078\";\"Кастильехосу\";\"other\"\n\"1718084\";\"Castilla\";\"main\"\n\"1718089\";\"Castañas\";\"main\"\n\"1718089\";\"Castanas\";\"ascii\"\n\"1718103\";\"Casisang\";\"main\"\n\"1718154\";\"Casiguran\";\"main\"\n\"1718170\";\"Casian\";\"main\"\n\"1718181\";\"Casay\";\"main\"\n\"1718181\";\"Oasay\";\"other\"\n\"1718206\";\"Cassanayan\";\"main\"\n\"1718206\";\"Casanayan\";\"other\"\n\"1718214\";\"Casambalangan\";\"main\"\n\"1718220\";\"Casala-an\";\"main\"\n\"1718234\";\"Caruray\";\"main\"\n\"1718236\";\"Carunoan\";\"main\"\n\"1718236\";\"Caronuan\";\"other\"\n\"1718247\";\"Cartagena\";\"main\"\n\"1718253\";\"Carriedo\";\"main\"\n\"1718254\";\"Carriedo\";\"main\"\n\"1718262\";\"Carrascal\";\"main\"\n\"1718266\";\"Carranglan\";\"main\"\n\"1718266\";\"Carraglan\";\"other\"\n\"1718271\";\"Carpenter\";\"main\"\n\"1718276\";\"Carot\";\"main\"\n\"1718277\";\"Carusucan\";\"main\"\n\"1718277\";\"Carosucan\";\"other\"\n\"1718306\";\"Carmona\";\"main\"\n\"1718319\";\"Carmen\";\"main\"\n\"1718319\";\"Carmay\";\"other\"\n\"1718319\";\"Karmen\";\"other\"\n\"1718319\";\"Кармен\";\"other\"\n\"1718320\";\"Carmen\";\"main\"\n\"1718324\";\"Carmen\";\"main\"\n\"1718324\";\"Carman\";\"other\"\n\"1718324\";\"Karmen\";\"other\"\n\"1718324\";\"Кармен\";\"other\"\n\"1718328\";\"Cogan\";\"main\"\n\"1718328\";\"Carmen\";\"other\"\n\"1718328\";\"Karmen\";\"other\"\n\"1718328\";\"Old Carmen\";\"other\"\n\"1718328\";\"Кармен\";\"other\"\n\"1718330\";\"Carmen Grande\";\"main\"\n\"1718330\";\"Carmen\";\"other\"\n\"1718330\";\"Karmen\";\"other\"\n\"1718330\";\"Кармен\";\"other\"\n\"1718332\";\"Carmen\";\"main\"\n\"1718332\";\"Karmen\";\"other\"\n\"1718332\";\"Кармен\";\"other\"\n\"1718333\";\"Carmen\";\"main\"\n\"1718334\";\"Carmen\";\"main\"\n\"1718334\";\"Karmen\";\"other\"\n\"1718334\";\"Кармен\";\"other\"\n\"1718337\";\"Carmen\";\"main\"\n\"1718337\";\"Ising\";\"other\"\n\"1718337\";\"Karmen\";\"other\"\n\"1718337\";\"Кармен\";\"other\"\n\"1718338\";\"Carmen\";\"main\"\n\"1718338\";\"Karmen\";\"other\"\n\"1718338\";\"Кармен\";\"other\"\n\"1718347\";\"Carmelo\";\"main\"\n\"1718349\";\"Carmelo\";\"main\"\n\"1718362\";\"Carles\";\"main\"\n\"1718367\";\"Carlagan\";\"main\"\n\"1718393\";\"Carigara\";\"main\"\n\"1718393\";\"Garigara\";\"other\"\n\"1718396\";\"Carig\";\"main\"\n\"1718412\";\"Caridad\";\"main\"\n\"1718415\";\"Caridad\";\"main\"\n\"1718415\";\"Caridao\";\"other\"\n\"1718425\";\"Cardona\";\"main\"\n\"1718426\";\"Cardona\";\"main\"\n\"1718426\";\"Kardona\";\"other\"\n\"1718426\";\"Кардона\";\"other\"\n\"1718436\";\"Carcar\";\"main\"\n\"1718446\";\"Caraycayon\";\"main\"\n\"1718448\";\"Caraycaray\";\"main\"\n\"1718448\";\"Caraycary\";\"other\"\n\"1718495\";\"Caranan\";\"main\"\n\"1718495\";\"Carinan\";\"other\"\n\"1718497\";\"Caramutan\";\"main\"\n\"1718503\";\"Caramoran\";\"main\"\n\"1718503\";\"Caramoan\";\"other\"\n\"1718508\";\"Caramoan\";\"main\"\n\"1718517\";\"Caramay\";\"main\"\n\"1718530\";\"Caraga\";\"main\"\n\"1718541\";\"Caracal\";\"main\"\n\"1718558\";\"Carabalan\";\"main\"\n\"1718564\";\"Capuy\";\"main\"\n\"1718585\";\"Capuluan\";\"main\"\n\"1718585\";\"Capuluan Central\";\"other\"\n\"1718593\";\"Capulaan\";\"main\"\n\"1718594\";\"Capul\";\"main\"\n\"1718600\";\"Capucnasan\";\"main\"\n\"1718600\";\"Capocnasan\";\"other\"\n\"1718621\";\"Capoocan\";\"main\"\n\"1718661\";\"Capissayan\";\"main\"\n\"1718661\";\"Capissavan\";\"other\"\n\"1718722\";\"Capas\";\"main\"\n\"1718722\";\"Capaz\";\"other\"\n\"1718722\";\"Kapas\";\"other\"\n\"1718722\";\"Капас\";\"other\"\n\"1718754\";\"Capandanan\";\"main\"\n\"1718754\";\"Capandanall\";\"other\"\n\"1718762\";\"Capalonga\";\"main\"\n\"1718767\";\"Capalayan\";\"main\"\n\"1718774\";\"Capaga\";\"main\"\n\"1718774\";\"Capagab\";\"other\"\n\"1718774\";\"Capagao\";\"other\"\n\"1718804\";\"Caoayan\";\"main\"\n\"1718804\";\"Cavayan\";\"other\"\n\"1718828\";\"Canubing No 2\";\"main\"\n\"1718834\";\"Canturay\";\"main\"\n\"1718848\";\"Cantoria\";\"main\"\n\"1718866\";\"Cantilan\";\"main\"\n\"1718869\";\"Cantel\";\"main\"\n\"1718869\";\"Cantil\";\"other\"\n\"1718886\";\"Cantapoy\";\"main\"\n\"1718888\";\"Cantao-an\";\"main\"\n\"1718888\";\"Kantauan\";\"other\"\n\"1718909\";\"Cansolungon\";\"main\"\n\"1718909\";\"Cansalongon\";\"other\"\n\"1718909\";\"Cansaloñgon\";\"other\"\n\"1718909\";\"Cansulungon Hacienda\";\"other\"\n\"1718909\";\"Casalongon\";\"other\"\n\"1718910\";\"Cansuje\";\"main\"\n\"1718957\";\"Canroma\";\"main\"\n\"1718969\";\"Canomoy\";\"main\"\n\"1718985\";\"Canocotan\";\"main\"\n\"1718998\";\"Canmaya Diot\";\"main\"\n\"1718998\";\"Cangmaya\";\"other\"\n\"1718998\";\"Canmaya\";\"other\"\n\"1719053\";\"Canlaon\";\"main\"\n\"1719053\";\"Canlaon City\";\"other\"\n\"1719075\";\"Canjulao\";\"main\"\n\"1719075\";\"Kanhulao\";\"other\"\n\"1719115\";\"Caningay\";\"main\"\n\"1719149\";\"Canhaway\";\"main\"\n\"1719149\";\"Kanhaway\";\"other\"\n\"1719153\";\"Canhandugan\";\"main\"\n\"1719246\";\"Candoni\";\"main\"\n\"1719251\";\"Candon\";\"main\"\n\"1719262\";\"Candijay\";\"main\"\n\"1719267\";\"Candiis\";\"main\"\n\"1719274\";\"Candelaria\";\"main\"\n\"1719276\";\"Candelaria\";\"main\"\n\"1719287\";\"Candating\";\"main\"\n\"1719326\";\"Candabong\";\"main\"\n\"1719326\";\"Kandabong\";\"other\"\n\"1719327\";\"Kandabong\";\"main\"\n\"1719327\";\"Candabong\";\"other\"\n\"1719329\";\"Candaba\";\"main\"\n\"1719343\";\"Cansilayan\";\"main\"\n\"1719343\";\"Cancilayan\";\"other\"\n\"1719386\";\"Canayan\";\"main\"\n\"1719390\";\"Canauay\";\"main\"\n\"1719390\";\"Canaway\";\"other\"\n\"1719395\";\"Can-Avid\";\"main\"\n\"1719395\";\"Canavio\";\"other\"\n\"1719395\";\"Kanavid\";\"other\"\n\"1719410\";\"Can-asujan\";\"main\"\n\"1719410\";\"Kanasujan\";\"other\"\n\"1719410\";\"Kanasulan\";\"other\"\n\"1719433\";\"Ganapi\";\"main\"\n\"1719433\";\"Canapi\";\"other\"\n\"1719438\";\"Canaoalan\";\"main\"\n\"1719438\";\"Canoalan\";\"other\"\n\"1719438\";\"Ganadalan\";\"other\"\n\"1719442\";\"Canan Norte\";\"main\"\n\"1719442\";\"Canan\";\"other\"\n\"1719463\";\"Canaman\";\"main\"\n\"1719530\";\"Camuhaguin\";\"main\"\n\"1719530\";\"Camohaguin\";\"other\"\n\"1719557\";\"Campoyo\";\"main\"\n\"1719557\";\"Campuyo\";\"other\"\n\"1719564\";\"Campusong\";\"main\"\n\"1719564\";\"Camposong\";\"other\"\n\"1719675\";\"Camingawan\";\"main\"\n\"1719677\";\"Camindangan\";\"main\"\n\"1719677\";\"Camindagan\";\"other\"\n\"1719677\";\"Gamindangan\";\"other\"\n\"1719679\";\"Caminauit\";\"main\"\n\"1719679\";\"Caminawit\";\"other\"\n\"1719683\";\"Camiling\";\"main\"\n\"1719699\";\"Camias\";\"main\"\n\"1719699\";\"Kamias\";\"other\"\n\"1719702\";\"Camflora\";\"main\"\n\"1719722\";\"Cambuga\";\"main\"\n\"1719790\";\"Cambanay\";\"main\"\n\"1719803\";\"Gambalidio\";\"main\"\n\"1719803\";\"Cambalidio\";\"other\"\n\"1719803\";\"Cambalidió\";\"other\"\n\"1719886\";\"Camangcamang\";\"main\"\n\"1719886\";\"Camangeamang\";\"other\"\n\"1719886\";\"Mambulan\";\"other\"\n\"1719886\";\"Mambulung\";\"other\"\n\"1719908\";\"Camandag\";\"main\"\n\"1719922\";\"Camambugan\";\"main\"\n\"1719922\";\"Camanbugan\";\"other\"\n\"1719926\";\"Camalobalo\";\"main\"\n\"1719931\";\"Camaligan\";\"main\"\n\"1719939\";\"Camaley\";\"main\"\n\"1719944\";\"Cama Juan\";\"main\"\n\"1719966\";\"Camachile\";\"main\"\n\"1719966\";\"Camachili\";\"other\"\n\"1720034\";\"Calumpit\";\"main\"\n\"1720050\";\"Calumpang\";\"main\"\n\"1720055\";\"Calumpang\";\"main\"\n\"1720056\";\"Calumpang\";\"main\"\n\"1720057\";\"Calumpang\";\"main\"\n\"1720073\";\"Calumboyan\";\"main\"\n\"1720073\";\"Calomboyan\";\"other\"\n\"1720094\";\"Caluluan\";\"main\"\n\"1720094\";\"Cululuan\";\"other\"\n\"1720094\";\"San Isidro\";\"other\"\n\"1720094\";\"Sitio\";\"other\"\n\"1720109\";\"Calubcub Segundo\";\"main\"\n\"1720109\";\"Calubcob Segundo\";\"other\"\n\"1720109\";\"Calubcub\";\"other\"\n\"1720109\";\"Culubcub 2\";\"other\"\n\"1720109\";\"Culubcub II\";\"other\"\n\"1720109\";\"Kalubcub Segundo\";\"other\"\n\"1720109\";\"Kalubkob Segundo\";\"other\"\n\"1720123\";\"Calsib\";\"main\"\n\"1720158\";\"Calongbuyan\";\"main\"\n\"1720171\";\"Calolbon\";\"main\"\n\"1720179\";\"Calog\";\"main\"\n\"1720183\";\"Caloc-an\";\"main\"\n\"1720183\";\"Caloocan\";\"other\"\n\"1720223\";\"Callaguip\";\"main\"\n\"1720223\";\"Callagulp\";\"other\"\n\"1720229\";\"Calizo\";\"main\"\n\"1720237\";\"Calituban\";\"main\"\n\"1720257\";\"Colipapa\";\"main\"\n\"1720257\";\"Calipapa\";\"other\"\n\"1720257\";\"Culipapa\";\"other\"\n\"1720257\";\"Kalipapa\";\"other\"\n\"1720257\";\"Kulipapa\";\"other\"\n\"1720269\";\"Calintaan\";\"main\"\n\"1720274\";\"Calinog\";\"main\"\n\"1720283\";\"Calingcuan\";\"main\"\n\"1720297\";\"Calinauan\";\"main\"\n\"1720297\";\"Calinaoan\";\"other\"\n\"1720297\";\"Colinauan\";\"other\"\n\"1720316\";\"Kalilayan Ibaba\";\"main\"\n\"1720316\";\"Calilayan\";\"other\"\n\"1720316\";\"Ilayang Calilayan\";\"other\"\n\"1720329\";\"Calidñgan\";\"main\"\n\"1720329\";\"Calidngan\";\"ascii\"\n\"1720344\";\"Calibutbut\";\"main\"\n\"1720345\";\"Calibuñgan\";\"main\"\n\"1720345\";\"Calibungan\";\"ascii\"\n\"1720345\";\"Kalibungan\";\"other\"\n\"1720372\";\"Calero\";\"main\"\n\"1720374\";\"Calepaan\";\"main\"\n\"1720397\";\"Calbiga\";\"main\"\n\"1720402\";\"Calbayog\";\"main\"\n\"1720402\";\"Calbayog City\";\"other\"\n\"1720402\";\"Dakbayan sa Calbayog\";\"other\"\n\"1720402\";\"Syudad san Calbayog\";\"other\"\n\"1720431\";\"Calayaan\";\"main\"\n\"1720435\";\"Calaya\";\"main\"\n\"1720464\";\"Calauan\";\"main\"\n\"1720472\";\"Calauag\";\"main\"\n\"1720472\";\"Calavag\";\"other\"\n\"1720474\";\"Calauag\";\"main\"\n\"1720474\";\"Calawag\";\"other\"\n\"1720478\";\"Calatugas\";\"main\"\n\"1720478\";\"Calategas\";\"other\"\n\"1720481\";\"Calatrava\";\"main\"\n\"1720482\";\"Calatrava\";\"main\"\n\"1720499\";\"Calatagan\";\"main\"\n\"1720499\";\"Calalagan\";\"other\"\n\"1720500\";\"Calatagan\";\"main\"\n\"1720508\";\"Calasiao\";\"main\"\n\"1720508\";\"Colasiao\";\"other\"\n\"1720511\";\"Calasgasan\";\"main\"\n\"1720537\";\"Calape\";\"main\"\n\"1720537\";\"Calapi\";\"other\"\n\"1720540\";\"Calape\";\"main\"\n\"1720540\";\"Calapi\";\"other\"\n\"1720541\";\"Calape\";\"main\"\n\"1720542\";\"Calape\";\"main\"\n\"1720561\";\"Calapan\";\"main\"\n\"1720573\";\"Calaoagan\";\"main\"\n\"1720573\";\"Calaogan\";\"other\"\n\"1720590\";\"Calantas\";\"main\"\n\"1720590\";\"Kalantas\";\"other\"\n\"1720592\";\"Calantas\";\"main\"\n\"1720594\";\"Calantac\";\"main\"\n\"1720622\";\"Calangain\";\"main\"\n\"1720634\";\"Calancuasan Norte\";\"main\"\n\"1720634\";\"Calancuasan\";\"other\"\n\"1720656\";\"Calampisauan\";\"main\"\n\"1720656\";\"Calampisawan\";\"other\"\n\"1720681\";\"Calamba\";\"main\"\n\"1720682\";\"Calamba\";\"main\"\n\"1720683\";\"Calamba\";\"main\"\n\"1720684\";\"Calamba\";\"main\"\n\"1720693\";\"Calamagui\";\"main\"\n\"1720693\";\"Calamagin\";\"other\"\n\"1720743\";\"Calachuchi\";\"main\"\n\"1720743\";\"Calachuche\";\"other\"\n\"1720743\";\"Calasuche\";\"other\"\n\"1720743\";\"Calatuche\";\"other\"\n\"1720751\";\"Calaca\";\"main\"\n\"1720758\";\"Calabugao\";\"main\"\n\"1720758\";\"Kalabugao\";\"other\"\n\"1720786\";\"Calabasa\";\"main\"\n\"1720793\";\"Calabanga\";\"main\"\n\"1720793\";\"Calabunga\";\"other\"\n\"1720806\";\"Calabaca\";\"main\"\n\"1720807\";\"Calaba\";\"main\"\n\"1720808\";\"Calaba\";\"main\"\n\"1720820\";\"Cajimos\";\"main\"\n\"1720840\";\"Cainta\";\"main\"\n\"1720863\";\"Caigangan\";\"main\"\n\"1720871\";\"Caibiran\";\"main\"\n\"1720948\";\"Cagsiay\";\"main\"\n\"1720984\";\"Cagmanaba\";\"main\"\n\"1720988\";\"Kaliliog\";\"main\"\n\"1720988\";\"Caglilag\";\"other\"\n\"1720988\";\"Cagliliog\";\"other\"\n\"1720988\";\"Caglilog\";\"other\"\n\"1720988\";\"Kagliliog\";\"other\"\n\"1721010\";\"Cagdianao\";\"main\"\n\"1721010\";\"Cadayanao\";\"other\"\n\"1721010\";\"Kagdyanao\";\"other\"\n\"1721049\";\"Cagbang\";\"main\"\n\"1721077\";\"Cagayan\";\"main\"\n\"1721077\";\"Cagayan de Sulu\";\"other\"\n\"1721077\";\"Cagayan de Tawi-Tawi\";\"other\"\n\"1721077\";\"Kagayan\";\"other\"\n\"1721077\";\"Kagayan de Tawi-Tawi\";\"other\"\n\"1721077\";\"Mahalu\";\"other\"\n\"1721077\";\"Tana\\\" Mapun\";\"other\"\n\"1721077\";\"Tana” Mapun\";\"other\"\n\"1721080\";\"Cagayan de Oro\";\"main\"\n\"1721080\";\"Cagayan de Oro City\";\"other\"\n\"1721120\";\"Cagamotan\";\"main\"\n\"1721120\";\"Cagamutan\";\"other\"\n\"1721133\";\"Cafe\";\"main\"\n\"1721166\";\"Cadlan\";\"main\"\n\"1721168\";\"Cadiz Viejo\";\"main\"\n\"1721176\";\"Caditaan\";\"main\"\n\"1721176\";\"Cadetaan\";\"other\"\n\"1721216\";\"Cadagmayan Norte\";\"main\"\n\"1721297\";\"Cabusao\";\"main\"\n\"1721297\";\"Baksalan\";\"other\"\n\"1721309\";\"Caburan\";\"main\"\n\"1721322\";\"Cabungan\";\"main\"\n\"1721370\";\"Cabulay\";\"main\"\n\"1721381\";\"Cabul-an\";\"main\"\n\"1721423\";\"Cabugao\";\"main\"\n\"1721423\";\"Kabugao\";\"other\"\n\"1721429\";\"Cabugao\";\"main\"\n\"1721450\";\"Cabugao\";\"main\"\n\"1721450\";\"Cabugao Lucena\";\"other\"\n\"1721470\";\"Cabucgayan\";\"main\"\n\"1721491\";\"Cabra\";\"main\"\n\"1721533\";\"Cabog\";\"main\"\n\"1721543\";\"Kablalan\";\"main\"\n\"1721543\";\"Cablallan\";\"other\"\n\"1721556\";\"Cabittaogan\";\"main\"\n\"1721568\";\"Cabitan\";\"main\"\n\"1721577\";\"Cabiraoan\";\"main\"\n\"1721580\";\"Cabinuangan\";\"main\"\n\"1721598\";\"Cabilauan\";\"main\"\n\"1721598\";\"Cabilawan\";\"other\"\n\"1721598\";\"Kabilaoan\";\"other\"\n\"1721598\";\"Kabilauan\";\"other\"\n\"1721601\";\"Kabilauan\";\"main\"\n\"1721601\";\"Cabilauan\";\"other\"\n\"1721601\";\"Kabilaoan\";\"other\"\n\"1721603\";\"Cabilao\";\"main\"\n\"1721603\";\"Cabilao Pequeno\";\"other\"\n\"1721603\";\"Cabilao Pequeño\";\"other\"\n\"1721603\";\"Kabilao\";\"other\"\n\"1721616\";\"Cabiguan\";\"main\"\n\"1721616\";\"Cabibiang\";\"other\"\n\"1721627\";\"Cabadiangan\";\"main\"\n\"1721627\";\"Cabidiangan\";\"other\"\n\"1721636\";\"Cabiao\";\"main\"\n\"1721658\";\"Cabcaben\";\"main\"\n\"1721660\";\"Cabcab\";\"main\"\n\"1721660\";\"Alibon\";\"other\"\n\"1721690\";\"Cabayaoasan\";\"main\"\n\"1721695\";\"Cabayangan\";\"main\"\n\"1721700\";\"Cabay\";\"main\"\n\"1721701\";\"Cabay\";\"main\"\n\"1721719\";\"Cabatuan\";\"main\"\n\"1721719\";\"Cabatoan\";\"other\"\n\"1721719\";\"Kabatoan\";\"other\"\n\"1721720\";\"Cabatuan\";\"main\"\n\"1721738\";\"Cabatang\";\"main\"\n\"1721777\";\"Cabarroguis\";\"main\"\n\"1721777\";\"Cabarroquis\";\"other\"\n\"1721805\";\"Cabaritan\";\"main\"\n\"1721805\";\"Cabaritan East\";\"other\"\n\"1721842\";\"Cabano\";\"main\"\n\"1721844\";\"Cabannungan II\";\"main\"\n\"1721844\";\"Cabannungan\";\"other\"\n\"1721844\";\"Cabannungan Second\";\"other\"\n\"1721860\";\"Cabanglasan\";\"main\"\n\"1721877\";\"Cabangan\";\"main\"\n\"1721886\";\"Cabangahan\";\"main\"\n\"1721886\";\"Cabangjan\";\"other\"\n\"1721887\";\"Cabangahan\";\"main\"\n\"1721900\";\"Cabanbanan\";\"main\"\n\"1721904\";\"Cabanbanan\";\"main\"\n\"1721904\";\"Cabanbaan\";\"other\"\n\"1721906\";\"Cabanatuan\";\"main\"\n\"1721906\";\"Cabanatuan City\";\"other\"\n\"1721906\";\"Cabanatúan\";\"other\"\n\"1721906\";\"Ciudad ti Cabanatuan\";\"other\"\n\"1721915\";\"Cabaluay\";\"main\"\n\"1721915\";\"Caboluoy\";\"other\"\n\"1721940\";\"Cabalician\";\"main\"\n\"1721940\";\"Cabalitian\";\"other\"\n\"1721953\";\"Cabalawan\";\"main\"\n\"1721953\";\"Kabalawan\";\"other\"\n\"1721963\";\"Cabalaoañgan\";\"main\"\n\"1721963\";\"Cabalaoangan\";\"ascii\"\n\"1721981\";\"Kabac\";\"main\"\n\"1721981\";\"Cabac\";\"other\"\n\"1721981\";\"Cabak\";\"other\"\n\"1721981\";\"Kabak\";\"other\"\n\"1721995\";\"Cabognon\";\"main\"\n\"1721995\";\"Cabagnan\";\"other\"\n\"1722005\";\"Cabagan\";\"main\"\n\"1722020\";\"Cabodiongan\";\"main\"\n\"1722020\";\"Cabadiangan\";\"other\"\n\"1722020\";\"Kabadiangan\";\"other\"\n\"1722028\";\"Cabadiangan\";\"main\"\n\"1722032\";\"Cabadbaran\";\"main\"\n\"1722038\";\"Cabacuñgan\";\"main\"\n\"1722038\";\"Cabacungan\";\"ascii\"\n\"1722038\";\"Cabacongan\";\"other\"\n\"1722039\";\"Cabacungan\";\"main\"\n\"1722053\";\"Cabacao\";\"main\"\n\"1722068\";\"Caba\";\"main\"\n\"1722100\";\"Caabiangan\";\"main\"\n\"1722100\";\"Cabilocaan\";\"other\"\n\"1722116\";\"Buyuan\";\"main\"\n\"1722116\";\"Buyoan\";\"other\"\n\"1722134\";\"Buyo\";\"main\"\n\"1722136\";\"Buyo\";\"main\"\n\"1722162\";\"Buyabod\";\"main\"\n\"1722162\";\"Buvabod\";\"other\"\n\"1722162\";\"Buyabud\";\"other\"\n\"1722167\";\"Buug\";\"main\"\n\"1722172\";\"Butulan\";\"main\"\n\"1722177\";\"Butubut Norte\";\"main\"\n\"1722177\";\"Butubat Norte\";\"other\"\n\"1722177\";\"Butubot Norte\";\"other\"\n\"1722177\";\"Butubut\";\"other\"\n\"1722186\";\"Butuan\";\"main\"\n\"1722186\";\"Butuan City\";\"other\"\n\"1722186\";\"City of Butuan\";\"other\"\n\"1722208\";\"Butigui\";\"main\"\n\"1722208\";\"Butiqui\";\"other\"\n\"1722217\";\"Butig\";\"main\"\n\"1722228\";\"Butazon\";\"main\"\n\"1722228\";\"Butasan l\";\"other\"\n\"1722228\";\"Butason\";\"other\"\n\"1722247\";\"Butag\";\"main\"\n\"1722265\";\"Brgy. New Buswang, Kalibo\";\"main\"\n\"1722265\";\"Busuang\";\"other\"\n\"1722267\";\"Bustos\";\"main\"\n\"1722267\";\"Бустос\";\"other\"\n\"1722288\";\"Busing\";\"main\"\n\"1722295\";\"Busilac\";\"main\"\n\"1722295\";\"Busilak\";\"other\"\n\"1722307\";\"Busdi\";\"main\"\n\"1722307\";\"Busde\";\"other\"\n\"1722314\";\"Busay\";\"main\"\n\"1722314\";\"Busay Hacienda\";\"other\"\n\"1722356\";\"Boroon\";\"main\"\n\"1722356\";\"Buru-un\";\"other\"\n\"1722357\";\"Barurao\";\"main\"\n\"1722384\";\"Burirao\";\"main\"\n\"1722401\";\"Burias\";\"main\"\n\"1722402\";\"Burias\";\"main\"\n\"1722421\";\"Burgos\";\"main\"\n\"1722423\";\"Burgos\";\"main\"\n\"1722426\";\"Burgos\";\"main\"\n\"1722433\";\"Burgos\";\"main\"\n\"1722436\";\"Burgos\";\"main\"\n\"1722455\";\"Burgos\";\"main\"\n\"1722467\";\"Burdeos\";\"main\"\n\"1722467\";\"Burdoes\";\"other\"\n\"1722479\";\"Buray\";\"main\"\n\"1722481\";\"Burauen\";\"main\"\n\"1722494\";\"Buracan\";\"main\"\n\"1722494\";\"Burakan\";\"other\"\n\"1722504\";\"Burabod\";\"main\"\n\"1722504\";\"Barabod\";\"other\"\n\"1722504\";\"Burabud\";\"other\"\n\"1722530\";\"Bukid\";\"main\"\n\"1722530\";\"Buquid\";\"other\"\n\"1722577\";\"Bunol\";\"main\"\n\"1722577\";\"Bunal\";\"other\"\n\"1722579\";\"Bunog\";\"main\"\n\"1722606\";\"Bungoy\";\"main\"\n\"1722606\";\"Bongoy\";\"other\"\n\"1722626\";\"Bunguiao\";\"main\"\n\"1722626\";\"Bungiao\";\"other\"\n\"1722667\";\"Bungahan\";\"main\"\n\"1722690\";\"Bunga\";\"main\"\n\"1722690\";\"Bonga\";\"other\"\n\"1722693\";\"Bunga\";\"main\"\n\"1722713\";\"Bundoc\";\"main\"\n\"1722730\";\"Buawan\";\"main\"\n\"1722730\";\"Bunawan\";\"other\"\n\"1722731\";\"Bunawan\";\"main\"\n\"1722731\";\"Bunauan\";\"other\"\n\"1722760\";\"Brgy. Bulwang, Numancia\";\"main\"\n\"1722769\";\"Bulusan\";\"main\"\n\"1722799\";\"Buluangan\";\"main\"\n\"1722803\";\"Buluang\";\"main\"\n\"1722804\";\"Buluang\";\"main\"\n\"1722818\";\"Buluan\";\"main\"\n\"1722821\";\"Bulvalto\";\"main\"\n\"1722821\";\"Balo Alto\";\"other\"\n\"1722821\";\"Bulualto\";\"other\"\n\"1722823\";\"Bulu\";\"main\"\n\"1722823\";\"Bulo\";\"other\"\n\"1722835\";\"Bulog\";\"main\"\n\"1722835\";\"Buenlag\";\"other\"\n\"1722837\";\"Bulod\";\"main\"\n\"1722851\";\"Buliwao\";\"main\"\n\"1722857\";\"Bulit\";\"main\"\n\"1722857\";\"Bulet\";\"other\"\n\"1722860\";\"Buliran Segundo\";\"main\"\n\"1722860\";\"Buliran\";\"other\"\n\"1722860\";\"Buliran Second\";\"other\"\n\"1722860\";\"Buliran Two\";\"other\"\n\"1722862\";\"Buliran\";\"main\"\n\"1722868\";\"Buliok\";\"main\"\n\"1722868\";\"Buliuk\";\"other\"\n\"1722880\";\"Bulihan\";\"main\"\n\"1722882\";\"Bulihan\";\"main\"\n\"1722885\";\"Bulihan\";\"main\"\n\"1722930\";\"Bulaon\";\"main\"\n\"1722930\";\"Bulaun\";\"other\"\n\"1722936\";\"Bulatukan\";\"main\"\n\"1722936\";\"Balatukan\";\"other\"\n\"1722941\";\"Bulata\";\"main\"\n\"1722947\";\"Bulasa\";\"main\"\n\"1722949\";\"Bularit\";\"main\"\n\"1722967\";\"Bulanon\";\"main\"\n\"1722967\";\"Bolanon\";\"other\"\n\"1722985\";\"Bulan\";\"main\"\n\"1722985\";\"Bulsan\";\"other\"\n\"1722985\";\"Булан\";\"other\"\n\"1723002\";\"Bulalacao\";\"main\"\n\"1723002\";\"Bulalakao\";\"other\"\n\"1723011\";\"Bulalacao\";\"main\"\n\"1723013\";\"Bulalacao\";\"main\"\n\"1723052\";\"Bulad\";\"main\"\n\"1723055\";\"Bulacanin\";\"main\"\n\"1723055\";\"Bulacnin\";\"other\"\n\"1723066\";\"Bulacan\";\"main\"\n\"1723070\";\"Bulacan\";\"main\"\n\"1723085\";\"Bula\";\"main\"\n\"1723086\";\"Bula\";\"main\"\n\"1723128\";\"Bukal Sur\";\"main\"\n\"1723128\";\"Bukal\";\"other\"\n\"1723130\";\"Bukal\";\"main\"\n\"1723130\";\"Bucal\";\"other\"\n\"1723132\";\"Bukal\";\"main\"\n\"1723166\";\"Buhi\";\"main\"\n\"1723166\";\"Bulu\";\"other\"\n\"1723178\";\"Buhatan\";\"main\"\n\"1723193\";\"Buhangin\";\"main\"\n\"1723211\";\"Buguias\";\"main\"\n\"1723211\";\"Bugujas\";\"other\"\n\"1723216\";\"Buguey\";\"main\"\n\"1723216\";\"Bugney\";\"other\"\n\"1723243\";\"Bugsoc\";\"main\"\n\"1723257\";\"Bugo\";\"main\"\n\"1723276\";\"Bugko\";\"main\"\n\"1723276\";\"Bugto\";\"other\"\n\"1723276\";\"Bugtu\";\"other\"\n\"1723294\";\"Bugcaon\";\"main\"\n\"1723313\";\"Bugasong\";\"main\"\n\"1723318\";\"Bugasan\";\"main\"\n\"1723318\";\"Bugasan Sur\";\"other\"\n\"1723321\";\"Bugas\";\"main\"\n\"1723331\";\"Bugang\";\"main\"\n\"1723337\";\"Bugallon\";\"main\"\n\"1723347\";\"Bugaan\";\"main\"\n\"1723349\";\"Buga\";\"main\"\n\"1723351\";\"Buga\";\"main\"\n\"1723358\";\"Buensuseso\";\"main\"\n\"1723358\";\"Buensuceso\";\"other\"\n\"1723375\";\"Buenlag\";\"main\"\n\"1723379\";\"Buenlag\";\"main\"\n\"1723403\";\"Buenavista\";\"main\"\n\"1723409\";\"Buenavista\";\"main\"\n\"1723425\";\"Buenavista\";\"main\"\n\"1723454\";\"Buenavista\";\"main\"\n\"1723459\";\"Buenavista\";\"main\"\n\"1723465\";\"Buenavista\";\"main\"\n\"1723467\";\"Buenavista\";\"main\"\n\"1723469\";\"Buenavista\";\"main\"\n\"1723470\";\"Buenavista\";\"main\"\n\"1723477\";\"Buenavista\";\"main\"\n\"1723480\";\"Buenavista\";\"main\"\n\"1723481\";\"Buenavista\";\"main\"\n\"1723484\";\"Buenavista\";\"main\"\n\"1723498\";\"Bued\";\"main\"\n\"1723501\";\"Bued\";\"main\"\n\"1723556\";\"Buclad\";\"main\"\n\"1723562\";\"Bucay Pait\";\"main\"\n\"1723562\";\"Bukay Pait\";\"other\"\n\"1723635\";\"Babug\";\"main\"\n\"1723635\";\"Bubog\";\"other\"\n\"1723635\";\"Bubug\";\"other\"\n\"1723679\";\"Buayan\";\"main\"\n\"1723679\";\"Boayan\";\"other\"\n\"1723701\";\"Buanoy\";\"main\"\n\"1723707\";\"Buang\";\"main\"\n\"1723719\";\"Bualan\";\"main\"\n\"1723724\";\"Bual\";\"main\"\n\"1723726\";\"Bual\";\"main\"\n\"1723726\";\"Bialong\";\"other\"\n\"1723726\";\"Bilan\";\"other\"\n\"1723733\";\"Buagsong\";\"main\"\n\"1723818\";\"Boton\";\"main\"\n\"1723818\";\"Bogtong\";\"other\"\n\"1723818\";\"Buton\";\"other\"\n\"1723822\";\"Botolan\";\"main\"\n\"1723842\";\"Botigues\";\"main\"\n\"1723842\";\"Botiguis\";\"other\"\n\"1723854\";\"Botao\";\"main\"\n\"1723862\";\"Boston\";\"main\"\n\"1723877\";\"Bosdak\";\"main\"\n\"1723893\";\"Borongan\";\"main\"\n\"1723907\";\"Yapak\";\"main\"\n\"1723907\";\"Japak\";\"other\"\n\"1723907\";\"Япак\";\"other\"\n\"1723926\";\"Borbon\";\"main\"\n\"1723927\";\"Borbon\";\"main\"\n\"1723954\";\"Boot\";\"main\"\n\"1723963\";\"Bood\";\"main\"\n\"1723983\";\"Bontoc\";\"main\"\n\"1723983\";\"Bontoz\";\"other\"\n\"1724034\";\"Bongued\";\"main\"\n\"1724038\";\"Bungsuan\";\"main\"\n\"1724038\";\"Bongsu-an\";\"other\"\n\"1724038\";\"Bungso-an\";\"other\"\n\"1724088\";\"Bongao\";\"main\"\n\"1724088\";\"Bangaw\";\"other\"\n\"1724088\";\"Bongao Poblacion\";\"other\"\n\"1724088\";\"Bonggao\";\"other\"\n\"1724088\";\"Bonggaw\";\"other\"\n\"1724094\";\"Bongalon\";\"main\"\n\"1724103\";\"Bongabong\";\"main\"\n\"1724106\";\"Bongabon\";\"main\"\n\"1724111\";\"Bonga\";\"main\"\n\"1724111\";\"Bunga\";\"other\"\n\"1724112\";\"Bonga\";\"main\"\n\"1724128\";\"Bone\";\"main\"\n\"1724128\";\"Bone South\";\"other\"\n\"1724165\";\"Bonbon\";\"main\"\n\"1724165\";\"Banban\";\"other\"\n\"1724177\";\"Bonawon\";\"main\"\n\"1724177\";\"Bonauon\";\"other\"\n\"1724203\";\"Bombon\";\"main\"\n\"1724239\";\"Bolong\";\"main\"\n\"1724240\";\"Bolong\";\"main\"\n\"1724272\";\"Bolo Bolo\";\"main\"\n\"1724278\";\"Bolo\";\"main\"\n\"1724280\";\"Bolo\";\"main\"\n\"1724281\";\"Bolo\";\"main\"\n\"1724289\";\"Bolo\";\"main\"\n\"1724289\";\"Bulo\";\"other\"\n\"1724291\";\"Bolo\";\"main\"\n\"1724291\";\"Balo\";\"other\"\n\"1724297\";\"Boljoon\";\"main\"\n\"1724297\";\"Baljoon\";\"other\"\n\"1724301\";\"Bolitoc\";\"main\"\n\"1724301\";\"Longos\";\"other\"\n\"1724303\";\"Bolisong\";\"main\"\n\"1724308\";\"Boliñgit\";\"main\"\n\"1724308\";\"Bolingit\";\"ascii\"\n\"1724308\";\"Bolinguit\";\"other\"\n\"1724323\";\"Bolilao\";\"main\"\n\"1724327\";\"Bolila\";\"main\"\n\"1724350\";\"Bolboc\";\"main\"\n\"1724358\";\"Bulawin\";\"main\"\n\"1724358\";\"Bolawon\";\"other\"\n\"1724358\";\"Bulawen\";\"other\"\n\"1724359\";\"Bolaoit\";\"main\"\n\"1724359\";\"Bolawit\";\"other\"\n\"1724416\";\"Bogtong\";\"main\"\n\"1724416\";\"Bugtong\";\"other\"\n\"1724435\";\"Bogo\";\"main\"\n\"1724437\";\"Bogo\";\"main\"\n\"1724461\";\"Bodega\";\"main\"\n\"1724472\";\"Bocos\";\"main\"\n\"1724489\";\"Bocaue\";\"main\"\n\"1724500\";\"Bocana\";\"main\"\n\"1724500\";\"Bocania\";\"other\"\n\"1724519\";\"Bobon Segundo\";\"main\"\n\"1724519\";\"Bobon\";\"other\"\n\"1724519\";\"Bobon 2\";\"other\"\n\"1724532\";\"Bobonan\";\"main\"\n\"1724535\";\"Bobon\";\"main\"\n\"1724544\";\"Bobon\";\"main\"\n\"1724561\";\"Buayan\";\"main\"\n\"1724561\";\"Boayan\";\"other\"\n\"1724567\";\"Buan\";\"main\"\n\"1724567\";\"Bo'an\";\"other\"\n\"1724567\";\"Bo’an\";\"other\"\n\"1724576\";\"Boac\";\"main\"\n\"1724594\";\"Blinsung\";\"main\"\n\"1724594\";\"Blensong\";\"other\"\n\"1724597\";\"Blingkong\";\"main\"\n\"1724632\";\"Biwang\";\"main\"\n\"1724641\";\"Bituñgol\";\"main\"\n\"1724641\";\"Bitungol\";\"ascii\"\n\"1724656\";\"Bito-on\";\"main\"\n\"1724660\";\"Bitoon\";\"main\"\n\"1724691\";\"Bitin\";\"main\"\n\"1724691\";\"Beaton\";\"other\"\n\"1724728\";\"Bitaogan\";\"main\"\n\"1724728\";\"Bitaugan\";\"other\"\n\"1724734\";\"Bitanjuan\";\"main\"\n\"1724734\";\"Bitahuan\";\"other\"\n\"1724734\";\"Bitanghaun\";\"other\"\n\"1724734\";\"Bitanghuan\";\"other\"\n\"1724734\";\"Bitanhuan\";\"other\"\n\"1724735\";\"Bitangan\";\"main\"\n\"1724743\";\"Bitag\";\"main\"\n\"1724747\";\"Bitadton\";\"main\"\n\"1724747\";\"Bitadtun\";\"other\"\n\"1724766\";\"Bislig\";\"main\"\n\"1724766\";\"Bitlig\";\"other\"\n\"1724767\";\"Bislig\";\"main\"\n\"1724803\";\"Biri\";\"main\"\n\"1724803\";\"Beri\";\"other\"\n\"1724833\";\"Binantocan\";\"main\"\n\"1724833\";\"Binantucan\";\"other\"\n\"1724833\";\"Binuntucan\";\"other\"\n\"1724850\";\"Binulasan\";\"main\"\n\"1724850\";\"Binolasan\";\"other\"\n\"1724850\";\"Binulusan\";\"other\"\n\"1724860\";\"Binucayan\";\"main\"\n\"1724862\";\"Binubusan\";\"main\"\n\"1724862\";\"Binabusan\";\"other\"\n\"1724872\";\"Binuangan\";\"main\"\n\"1724896\";\"Bintawan\";\"main\"\n\"1724896\";\"Bintauan\";\"other\"\n\"1724902\";\"Bintacay\";\"main\"\n\"1724902\";\"Bintakay\";\"other\"\n\"1724933\";\"Binonga\";\"main\"\n\"1724937\";\"Binon-an\";\"main\"\n\"1724945\";\"Binodegahan\";\"main\"\n\"1724956\";\"Binmaley\";\"main\"\n\"1724959\";\"Binlod\";\"main\"\n\"1724964\";\"Binitinan\";\"main\"\n\"1724968\";\"Binitayan\";\"main\"\n\"1724983\";\"Binidayan\";\"main\"\n\"1725001\";\"Binguang\";\"main\"\n\"1725001\";\"Binguan\";\"other\"\n\"1725011\";\"Bingawan\";\"main\"\n\"1725029\";\"Payabon\";\"main\"\n\"1725029\";\"Bindoy\";\"other\"\n\"1725029\";\"Pagabon\";\"other\"\n\"1725032\";\"Binday\";\"main\"\n\"1725033\";\"Bincoñgan\";\"main\"\n\"1725033\";\"Bincongan\";\"ascii\"\n\"1725033\";\"Bincungan\";\"other\"\n\"1725048\";\"Binay\";\"main\"\n\"1725076\";\"Binanwanaan\";\"main\"\n\"1725076\";\"Binanuaan\";\"other\"\n\"1725076\";\"Binanuaanan\";\"other\"\n\"1725094\";\"Binangonan\";\"main\"\n\"1725115\";\"Biñan\";\"main\"\n\"1725115\";\"Binan\";\"ascii\"\n\"1725116\";\"Biñan\";\"main\"\n\"1725116\";\"Binan\";\"ascii\"\n\"1725127\";\"Binalonan\";\"main\"\n\"1725157\";\"Binalbagan\";\"main\"\n\"1725166\";\"Binalan\";\"main\"\n\"1725173\";\"Binahaan\";\"main\"\n\"1725173\";\"Binajaan\";\"other\"\n\"1725173\";\"Binhaan\";\"other\"\n\"1725210\";\"Binabalian Ricor\";\"main\"\n\"1725210\";\"Binabalian\";\"other\"\n\"1725217\";\"Binabaan\";\"main\"\n\"1725217\";\"Binaba-an Portigo\";\"other\"\n\"1725232\";\"Bilwang\";\"main\"\n\"1725245\";\"Bilog-Bilog\";\"main\"\n\"1725250\";\"Bil-Loca\";\"main\"\n\"1725258\";\"Biliran\";\"main\"\n\"1725292\";\"Bilaran\";\"main\"\n\"1725292\";\"Bilnan\";\"other\"\n\"1725297\";\"Bilao\";\"main\"\n\"1725308\";\"Bilad\";\"main\"\n\"1725319\";\"Biking\";\"main\"\n\"1725359\";\"Bignay\";\"main\"\n\"1725394\";\"Bigaan\";\"main\"\n\"1725397\";\"Bigaa\";\"main\"\n\"1725404\";\"Biga\";\"main\"\n\"1725409\";\"Biga\";\"main\"\n\"1725411\";\"Biga\";\"main\"\n\"1725412\";\"Bien Unido\";\"main\"\n\"1725412\";\"Bahabaha\";\"other\"\n\"1725412\";\"Buen Unido\";\"other\"\n\"1725428\";\"Bicos\";\"main\"\n\"1725435\";\"Bibiclat\";\"main\"\n\"1725435\";\"Bibiclot\";\"other\"\n\"1725435\";\"Biclot\";\"other\"\n\"1725444\";\"Bical\";\"main\"\n\"1725466\";\"Biasong\";\"main\"\n\"1725484\";\"Biao\";\"main\"\n\"1725486\";\"Biao\";\"main\"\n\"1725492\";\"Bialong\";\"main\"\n\"1725506\";\"Biabas\";\"main\"\n\"1725513\";\"Betwagan\";\"main\"\n\"1725538\";\"Besao\";\"main\"\n\"1725538\";\"Basac\";\"other\"\n\"1725572\";\"Benito Soliven\";\"main\"\n\"1725609\";\"Belison\";\"main\"\n\"1725623\";\"Belance\";\"main\"\n\"1725633\";\"Begang\";\"main\"\n\"1725642\";\"Beddeng\";\"main\"\n\"1725642\";\"Bedung\";\"other\"\n\"1725649\";\"Becerril\";\"main\"\n\"1725649\";\"Becirel\";\"other\"\n\"1725653\";\"Beberon\";\"main\"\n\"1725653\";\"Beberron\";\"other\"\n\"1725676\";\"Bayuin\";\"main\"\n\"1725684\";\"Bayugan\";\"main\"\n\"1725729\";\"Bayombong\";\"main\"\n\"1725747\";\"Bayog\";\"main\"\n\"1725761\";\"Baylo\";\"main\"\n\"1725783\";\"Baybayin\";\"main\"\n\"1725794\";\"Baybay\";\"main\"\n\"1725799\";\"Baybay\";\"main\"\n\"1725804\";\"Bayawan\";\"main\"\n\"1725804\";\"Tolong\";\"other\"\n\"1725804\";\"Tolong Nuevo\";\"other\"\n\"1725804\";\"Tulong\";\"other\"\n\"1725812\";\"Bayasong\";\"main\"\n\"1725817\";\"Bayas\";\"main\"\n\"1725824\";\"Bayaoas\";\"main\"\n\"1725841\";\"Bay-ang\";\"main\"\n\"1725844\";\"Bayang\";\"main\"\n\"1725854\";\"Bayanan\";\"main\"\n\"1725854\";\"Jolo\";\"other\"\n\"1725863\";\"Bayambang\";\"main\"\n\"1725863\";\"Bayembang\";\"other\"\n\"1725892\";\"Bayabas\";\"main\"\n\"1725919\";\"Bay\";\"main\"\n\"1725919\";\"Bej\";\"other\"\n\"1725919\";\"Бей\";\"other\"\n\"1725923\";\"Bawison\";\"main\"\n\"1725923\";\"Bawisan\";\"other\"\n\"1725941\";\"Bautista\";\"main\"\n\"1725942\";\"Bautista\";\"main\"\n\"1725947\";\"Baunu-Timbangan\";\"main\"\n\"1725947\";\"Baunu' Timbangan\";\"ascii\"\n\"1725947\";\"Bounu Timbagan\";\"other\"\n\"1725947\";\"Timbangan\";\"other\"\n\"1725965\";\"Baugo\";\"main\"\n\"1725983\";\"Bauang\";\"main\"\n\"1725990\";\"Bauan\";\"main\"\n\"1725991\";\"Bauan\";\"main\"\n\"1725998\";\"Bau\";\"main\"\n\"1725998\";\"Bao\";\"other\"\n\"1726000\";\"Batutitik\";\"main\"\n\"1726000\";\"Batotitic\";\"other\"\n\"1726000\";\"Tocawal\";\"other\"\n\"1726000\";\"Tokawal\";\"other\"\n\"1726000\";\"Tukawal\";\"other\"\n\"1726052\";\"Batuan\";\"main\"\n\"1726064\";\"Batuan\";\"main\"\n\"1726076\";\"Batung\";\"main\"\n\"1726076\";\"Battung\";\"other\"\n\"1726141\";\"Batobalane\";\"main\"\n\"1726141\";\"Batobalani\";\"other\"\n\"1726153\";\"Bato\";\"main\"\n\"1726156\";\"Bato\";\"main\"\n\"1726169\";\"Bato\";\"main\"\n\"1726170\";\"Bato\";\"main\"\n\"1726172\";\"Bato\";\"main\"\n\"1726182\";\"Bato\";\"main\"\n\"1726183\";\"Bato\";\"main\"\n\"1726183\";\"Bago\";\"other\"\n\"1726194\";\"Batitang\";\"main\"\n\"1726219\";\"Batiano\";\"main\"\n\"1726225\";\"Bateria\";\"main\"\n\"1726245\";\"Batasan\";\"main\"\n\"1726249\";\"Batasan\";\"main\"\n\"1726251\";\"Batasan\";\"main\"\n\"1726252\";\"Batas\";\"main\"\n\"1726256\";\"Batarasa\";\"main\"\n\"1726256\";\"Bataraza\";\"other\"\n\"1726280\";\"Batangas\";\"main\"\n\"1726280\";\"Batangas City\";\"other\"\n\"1726280\";\"Батангас\";\"other\"\n\"1726292\";\"Batang\";\"main\"\n\"1726312\";\"Batan\";\"main\"\n\"1726312\";\"Bataan\";\"other\"\n\"1726312\";\"Батаан\";\"other\"\n\"1726320\";\"Batal\";\"main\"\n\"1726323\";\"Bataquil\";\"main\"\n\"1726323\";\"Batakil\";\"other\"\n\"1726339\";\"Batac City\";\"main\"\n\"1726361\";\"Basud\";\"main\"\n\"1726361\";\"Busod\";\"other\"\n\"1726362\";\"Basud\";\"main\"\n\"1726363\";\"Basud\";\"main\"\n\"1726385\";\"Basista\";\"main\"\n\"1726392\";\"Basing\";\"main\"\n\"1726408\";\"Basicao\";\"main\"\n\"1726425\";\"Basiao\";\"main\"\n\"1726431\";\"Basiad\";\"main\"\n\"1726436\";\"Basey\";\"main\"\n\"1726441\";\"Basdiot\";\"main\"\n\"1726449\";\"Basco\";\"main\"\n\"1726454\";\"Bascaron\";\"main\"\n\"1726454\";\"Bascaran\";\"other\"\n\"1726466\";\"Basay\";\"main\"\n\"1726466\";\"Basey\";\"other\"\n\"1726493\";\"Basak\";\"main\"\n\"1726500\";\"Basak\";\"main\"\n\"1726509\";\"Basag\";\"main\"\n\"1726513\";\"Basak\";\"main\"\n\"1726513\";\"Basac\";\"other\"\n\"1726522\";\"Basa\";\"main\"\n\"1726548\";\"Barugo\";\"main\"\n\"1726552\";\"Barucbuc\";\"main\"\n\"1726552\";\"Barucboo Norte\";\"other\"\n\"1726582\";\"Barra\";\"main\"\n\"1726582\";\"Bara\";\"other\"\n\"1726584\";\"Barra\";\"main\"\n\"1726586\";\"Baroy\";\"main\"\n\"1726591\";\"Barotac Viejo\";\"main\"\n\"1726591\";\"Baratac Viejo\";\"other\"\n\"1726591\";\"Barotac Viejo Town\";\"other\"\n\"1726594\";\"Barotac Nuevo\";\"main\"\n\"1726594\";\"Barotac Nueva\";\"other\"\n\"1726594\";\"Boratac Nueva\";\"other\"\n\"1726602\";\"Barongis\";\"main\"\n\"1726606\";\"Barong Barong\";\"main\"\n\"1726608\";\"Barong\";\"main\"\n\"1726623\";\"Barobo\";\"main\"\n\"1726627\";\"Baro\";\"main\"\n\"1726637\";\"Bariw\";\"main\"\n\"1726655\";\"Barira\";\"main\"\n\"1726670\";\"Barili\";\"main\"\n\"1726701\";\"Barcelona\";\"main\"\n\"1726701\";\"Barcelonela\";\"other\"\n\"1726701\";\"Barceloneta\";\"other\"\n\"1726705\";\"Barcelona\";\"main\"\n\"1726707\";\"Barcelona\";\"main\"\n\"1726708\";\"Barcelona\";\"main\"\n\"1726708\";\"Barcelon\";\"other\"\n\"1726733\";\"Barayong\";\"main\"\n\"1726765\";\"Baras\";\"main\"\n\"1726765\";\"Барас\";\"other\"\n\"1726772\";\"Baras\";\"main\"\n\"1726802\";\"Barangobong\";\"main\"\n\"1726832\";\"Barahan\";\"main\"\n\"1726844\";\"Baracatan\";\"main\"\n\"1726844\";\"Baracaton\";\"other\"\n\"1726865\";\"Baquero\";\"main\"\n\"1726883\";\"Baon\";\"main\"\n\"1726890\";\"Baud\";\"main\"\n\"1726890\";\"Balud\";\"other\"\n\"1726890\";\"Baod\";\"other\"\n\"1726957\";\"Bantuanon\";\"main\"\n\"1726957\";\"Bantoanon\";\"other\"\n\"1726977\";\"Bantogon\";\"main\"\n\"1726979\";\"Bantog\";\"main\"\n\"1726979\";\"Bantug\";\"other\"\n\"1726994\";\"Bantilan\";\"main\"\n\"1727015\";\"Bantiqui\";\"main\"\n\"1727015\";\"Bantigue\";\"other\"\n\"1727015\";\"Bantigui\";\"other\"\n\"1727015\";\"Bantique\";\"other\"\n\"1727042\";\"Bantayan\";\"main\"\n\"1727043\";\"Bantayan\";\"main\"\n\"1727043\";\"Banatayan\";\"other\"\n\"1727052\";\"Bantay\";\"main\"\n\"1727053\";\"Bantay\";\"main\"\n\"1727073\";\"Bansud\";\"main\"\n\"1727080\";\"Bansalan\";\"main\"\n\"1727080\";\"Dansalan\";\"other\"\n\"1727080\";\"Miral\";\"other\"\n\"1727087\";\"Banquerohan\";\"main\"\n\"1727087\";\"Bankerohan\";\"other\"\n\"1727087\";\"Bankiruhan\";\"other\"\n\"1727087\";\"Banquarohan\";\"other\"\n\"1727089\";\"Banguero\";\"main\"\n\"1727089\";\"Banquero\";\"other\"\n\"1727099\";\"Banos\";\"main\"\n\"1727102\";\"Banog Sur\";\"main\"\n\"1727102\";\"Banog\";\"other\"\n\"1727111\";\"Banogao\";\"main\"\n\"1727111\";\"Banugaa\";\"other\"\n\"1727111\";\"Banugao\";\"other\"\n\"1727111\";\"Banugaw\";\"other\"\n\"1727115\";\"Banocboc\";\"main\"\n\"1727148\";\"Bankaw\";\"main\"\n\"1727148\";\"Tong Bangkaw\";\"other\"\n\"1727161\";\"Banisilan\";\"main\"\n\"1727174\";\"Banilad\";\"main\"\n\"1727179\";\"Banilad\";\"main\"\n\"1727196\";\"Bani\";\"main\"\n\"1727201\";\"Banhigan\";\"main\"\n\"1727211\";\"Bangui\";\"main\"\n\"1727211\";\"Bangi\";\"other\"\n\"1727215\";\"Bangued\";\"main\"\n\"1727215\";\"Rangued\";\"other\"\n\"1727237\";\"Bangonay\";\"main\"\n\"1727268\";\"Bangkal\";\"main\"\n\"1727326\";\"Bangar\";\"main\"\n\"1727336\";\"Bangao\";\"main\"\n\"1727340\";\"Bangan-Oda\";\"main\"\n\"1727347\";\"Banganan\";\"main\"\n\"1727358\";\"Bangahan\";\"main\"\n\"1727367\";\"Bangad\";\"main\"\n\"1727369\";\"Bangad\";\"main\"\n\"1727373\";\"Bangad\";\"main\"\n\"1727396\";\"Bañga\";\"main\"\n\"1727396\";\"Banga\";\"ascii\"\n\"1727398\";\"Banga\";\"main\"\n\"1727398\";\"Bagna\";\"other\"\n\"1727400\";\"Bañga\";\"main\"\n\"1727400\";\"Banga\";\"ascii\"\n\"1727445\";\"Bancasi\";\"main\"\n\"1727445\";\"Bancase\";\"other\"\n\"1727445\";\"Bancosi\";\"other\"\n\"1727471\";\"Bancal\";\"main\"\n\"1727471\";\"Bankal\";\"other\"\n\"1727521\";\"Banaybanay\";\"main\"\n\"1727521\";\"Banaybanay I\";\"other\"\n\"1727522\";\"Banaybanay\";\"main\"\n\"1727524\";\"Banaybanay\";\"main\"\n\"1727524\";\"Banay-Banay\";\"other\"\n\"1727529\";\"Banaue\";\"main\"\n\"1727529\";\"Banawe\";\"other\"\n\"1727531\";\"Banawang\";\"main\"\n\"1727531\";\"Bangwang\";\"other\"\n\"1727533\";\"Banawa\";\"main\"\n\"1727533\";\"Bannawag\";\"other\"\n\"1727589\";\"Banalo\";\"main\"\n\"1727614\";\"Banag\";\"main\"\n\"1727642\";\"Banaba\";\"main\"\n\"1727643\";\"Banaba\";\"main\"\n\"1727663\";\"Bambang\";\"main\"\n\"1727679\";\"Bamban\";\"main\"\n\"1727698\";\"Baluyot\";\"main\"\n\"1727698\";\"Buluyot\";\"other\"\n\"1727701\";\"Balutu\";\"main\"\n\"1727701\";\"Baluti\";\"other\"\n\"1727701\";\"Baluto\";\"other\"\n\"1727711\";\"Balutakay\";\"main\"\n\"1727711\";\"Balutakai\";\"other\"\n\"1727715\";\"Balut\";\"main\"\n\"1727715\";\"Bulate\";\"other\"\n\"1727760\";\"Balugo\";\"main\"\n\"1727783\";\"Balud\";\"main\"\n\"1727783\";\"Balug\";\"other\"\n\"1727785\";\"Balud\";\"main\"\n\"1727785\";\"Balod\";\"other\"\n\"1727792\";\"Balud\";\"main\"\n\"1727795\";\"Balucuc\";\"main\"\n\"1727795\";\"Balucog\";\"other\"\n\"1727842\";\"Balsik\";\"main\"\n\"1727842\";\"Balsic\";\"other\"\n\"1727854\";\"Baloy\";\"main\"\n\"1727861\";\"Bal-os\";\"main\"\n\"1727889\";\"Mamungan\";\"main\"\n\"1727889\";\"Baloi\";\"other\"\n\"1727889\";\"Momungan\";\"other\"\n\"1727889\";\"Mumungan\";\"other\"\n\"1727889\";\"Munamgan\";\"other\"\n\"1727897\";\"Balogo\";\"main\"\n\"1727901\";\"Balogo\";\"main\"\n\"1727901\";\"Baloga\";\"other\"\n\"1727901\";\"Balugo\";\"other\"\n\"1727901\";\"Bologo\";\"other\"\n\"1727904\";\"Balogo\";\"main\"\n\"1727904\";\"Balugo\";\"other\"\n\"1727909\";\"Balogo\";\"main\"\n\"1727909\";\"Balugo\";\"other\"\n\"1727911\";\"Balogo\";\"main\"\n\"1727911\";\"Baloge\";\"other\"\n\"1727914\";\"Balogo\";\"main\"\n\"1727929\";\"Balocawehay\";\"main\"\n\"1727929\";\"Balocawihay\";\"other\"\n\"1727937\";\"Balucawi\";\"main\"\n\"1727937\";\"Balocaue\";\"other\"\n\"1727937\";\"Balocawe\";\"other\"\n\"1727937\";\"Balucaue\";\"other\"\n\"1727940\";\"Baloc\";\"main\"\n\"1727962\";\"Ballesteros\";\"main\"\n\"1727982\";\"Baliwagan\";\"main\"\n\"1727982\";\"Baliuagan\";\"other\"\n\"1727990\";\"Baliuag Nuevo\";\"main\"\n\"1727990\";\"Baliuag\";\"other\"\n\"1727993\";\"Baliwagan\";\"main\"\n\"1727993\";\"Baliuagan\";\"other\"\n\"1727995\";\"Baliuag\";\"main\"\n\"1727999\";\"Baliton\";\"main\"\n\"1727999\";\"Baletan\";\"other\"\n\"1728001\";\"Balitoc\";\"main\"\n\"1728002\";\"Baliti Segundo\";\"main\"\n\"1728002\";\"Balete Segundo\";\"other\"\n\"1728002\";\"Balite\";\"other\"\n\"1728019\";\"Balite\";\"main\"\n\"1728074\";\"Balinsacayao\";\"main\"\n\"1728074\";\"Balinsasayao\";\"other\"\n\"1728078\";\"Balingueo\";\"main\"\n\"1728085\";\"Balingcanaway\";\"main\"\n\"1728085\";\"Balinganauay\";\"other\"\n\"1728085\";\"Balingcanauay\";\"other\"\n\"1728085\";\"Belingcanway\";\"other\"\n\"1728091\";\"Balingasay\";\"main\"\n\"1728098\";\"Balingasag\";\"main\"\n\"1728118\";\"Balinad\";\"main\"\n\"1728125\";\"Balimbing\";\"main\"\n\"1728125\";\"Panglima Sugala\";\"other\"\n\"1728134\";\"Balilihan\";\"main\"\n\"1728134\";\"Balilinan\";\"other\"\n\"1728141\";\"Balili\";\"main\"\n\"1728141\";\"Baliti\";\"other\"\n\"1728145\";\"Balila\";\"main\"\n\"1728165\";\"Baligang\";\"main\"\n\"1728196\";\"Balibago\";\"main\"\n\"1728203\";\"Balibago\";\"main\"\n\"1728204\";\"Balibago\";\"main\"\n\"1728205\";\"Balibagan Oeste\";\"main\"\n\"1728205\";\"Balibagan\";\"other\"\n\"1728236\";\"Balete\";\"main\"\n\"1728240\";\"Balete\";\"main\"\n\"1728248\";\"Balete\";\"main\"\n\"1728249\";\"Calamundingan\";\"main\"\n\"1728249\";\"Balete\";\"other\"\n\"1728249\";\"Balite\";\"other\"\n\"1728272\";\"Baleno\";\"main\"\n\"1728275\";\"Balele\";\"main\"\n\"1728304\";\"Balbalan\";\"main\"\n\"1728318\";\"Balayong\";\"main\"\n\"1728334\";\"Balayang\";\"main\"\n\"1728336\";\"Balayan\";\"main\"\n\"1728336\";\"Balajan\";\"other\"\n\"1728336\";\"Балаян\";\"other\"\n\"1728382\";\"Balatero\";\"main\"\n\"1728389\";\"Balatan\";\"main\"\n\"1728401\";\"Balasing\";\"main\"\n\"1728411\";\"Balasan\";\"main\"\n\"1728411\";\"Balasan Town\";\"other\"\n\"1728415\";\"Balas\";\"main\"\n\"1728433\";\"Balaogan\";\"main\"\n\"1728438\";\"Balaoang\";\"main\"\n\"1728439\";\"Balaoan\";\"main\"\n\"1728486\";\"Balangonan\";\"main\"\n\"1728486\";\"Balanganan\";\"other\"\n\"1728493\";\"Balangkayan\";\"main\"\n\"1728500\";\"Balangiga\";\"main\"\n\"1728504\";\"Balangbalang\";\"main\"\n\"1728523\";\"Balanga\";\"main\"\n\"1728539\";\"Balanacan\";\"main\"\n\"1728539\";\"Balanakan\";\"other\"\n\"1728546\";\"Balamban\";\"main\"\n\"1728546\";\"Balanban\";\"other\"\n\"1728573\";\"Balagunan\";\"main\"\n\"1728576\";\"Balagui\";\"main\"\n\"1728576\";\"Balaquid\";\"other\"\n\"1728579\";\"Balagtas\";\"main\"\n\"1728579\";\"Balagtos\";\"other\"\n\"1728582\";\"Balagtasin\";\"main\"\n\"1728584\";\"Balagtas\";\"main\"\n\"1728584\";\"Tabang\";\"other\"\n\"1728590\";\"Balagon\";\"main\"\n\"1728621\";\"Balading\";\"main\"\n\"1728653\";\"Balabagan\";\"main\"\n\"1728659\";\"Balabag\";\"main\"\n\"1728659\";\"Балабаг\";\"other\"\n\"1728664\";\"Balabag\";\"main\"\n\"1728675\";\"Balabac\";\"main\"\n\"1728688\";\"Bakung\";\"main\"\n\"1728688\";\"Bakong\";\"other\"\n\"1728688\";\"Bakung Bakung\";\"other\"\n\"1728715\";\"Bachauan\";\"main\"\n\"1728715\";\"Bakhauan\";\"other\"\n\"1728715\";\"Bakhawan\";\"other\"\n\"1728715\";\"Bakjawan\";\"other\"\n\"1728735\";\"Brgy. Bachaw Norte, Kalibo\";\"main\"\n\"1728735\";\"Bacao\";\"other\"\n\"1728735\";\"Bakhao\";\"other\"\n\"1728735\";\"Bakhaw\";\"other\"\n\"1728748\";\"Baka\";\"main\"\n\"1728772\";\"Bais\";\"main\"\n\"1728772\";\"Bais City\";\"other\"\n\"1728772\";\"Bajs\";\"other\"\n\"1728772\";\"Ciudad ti Bais\";\"other\"\n\"1728772\";\"Байс\";\"other\"\n\"1728780\";\"Bairan\";\"main\"\n\"1728789\";\"Bailan\";\"main\"\n\"1728792\";\"Bail\";\"main\"\n\"1728793\";\"Baikingon\";\"main\"\n\"1728823\";\"Baheli\";\"main\"\n\"1728823\";\"Bahile\";\"other\"\n\"1728825\";\"Bah-Bah\";\"main\"\n\"1728830\";\"Bahay Pare\";\"main\"\n\"1728830\";\"Bahay Pary\";\"other\"\n\"1728830\";\"Banay Par\";\"other\"\n\"1728830\";\"Banay Pare\";\"other\"\n\"1728830\";\"Banay Pari\";\"other\"\n\"1728837\";\"Bahay\";\"main\"\n\"1728852\";\"Bao\";\"main\"\n\"1728852\";\"Bahao\";\"other\"\n\"1728866\";\"Bagupaye\";\"main\"\n\"1728882\";\"Bagombong\";\"main\"\n\"1728882\";\"Bagumbong\";\"other\"\n\"1728883\";\"Bagumbayan\";\"main\"\n\"1728884\";\"Bagumbayan\";\"main\"\n\"1728893\";\"Bagumbayan\";\"main\"\n\"1728894\";\"Bagumbayan\";\"main\"\n\"1728902\";\"Bagumbayan\";\"main\"\n\"1728914\";\"Bagulin\";\"main\"\n\"1728914\";\"Cambaly\";\"other\"\n\"1728930\";\"Baguio\";\"main\"\n\"1728930\";\"Baguio City\";\"other\"\n\"1728930\";\"Baguio'\";\"other\"\n\"1728930\";\"Ciudad ti Baguio\";\"other\"\n\"1728930\";\"Lungsod ng Baguio\";\"other\"\n\"1728930\";\"bagio\";\"other\"\n\"1728930\";\"Багуиоь\";\"other\"\n\"1728930\";\"バギオ\";\"other\"\n\"1728936\";\"Baguinge\";\"main\"\n\"1728952\";\"Baguer\";\"main\"\n\"1728968\";\"Bagu\";\"main\"\n\"1728984\";\"Bagtic\";\"main\"\n\"1728984\";\"Bagtik\";\"other\"\n\"1729001\";\"Bagroy\";\"main\"\n\"1729007\";\"Bagontapay\";\"main\"\n\"1729012\";\"Bagong\";\"main\"\n\"1729012\";\"Bagong Tanza\";\"other\"\n\"1729021\";\"Bagong Sikat\";\"main\"\n\"1729021\";\"Bagong Sicat\";\"other\"\n\"1729022\";\"Bagong Sikat\";\"main\"\n\"1729047\";\"Bagong Barrio\";\"main\"\n\"1729047\";\"Bagon\";\"other\"\n\"1729047\";\"Bagong\";\"other\"\n\"1729085\";\"Bago City\";\"main\"\n\"1729085\";\"Bago\";\"other\"\n\"1729085\";\"City of Bago\";\"other\"\n\"1729147\";\"Bagay\";\"main\"\n\"1729181\";\"Baganga\";\"main\"\n\"1729181\";\"Bangaga\";\"other\"\n\"1729181\";\"Central\";\"other\"\n\"1729183\";\"Bayanga\";\"main\"\n\"1729183\";\"Baganga\";\"other\"\n\"1729191\";\"Bagan\";\"main\"\n\"1729213\";\"Bagalangit\";\"main\"\n\"1729223\";\"Bagakay\";\"main\"\n\"1729228\";\"Bagahanlad\";\"main\"\n\"1729228\";\"Bagahanglad\";\"other\"\n\"1729271\";\"Bagacay\";\"main\"\n\"1729271\";\"Bagacy\";\"other\"\n\"1729271\";\"Bogacay\";\"other\"\n\"1729278\";\"Bagacay\";\"main\"\n\"1729303\";\"Bagacay\";\"main\"\n\"1729304\";\"Bagacay\";\"main\"\n\"1729310\";\"Bagac\";\"main\"\n\"1729324\";\"Bagabag\";\"main\"\n\"1729351\";\"Buadtasan\";\"main\"\n\"1729351\";\"Badtasan\";\"other\"\n\"1729357\";\"Badoc\";\"main\"\n\"1729362\";\"Badlan\";\"main\"\n\"1729362\";\"Badlan Grande\";\"other\"\n\"1729362\";\"Badlang\";\"other\"\n\"1729410\";\"Badian\";\"main\"\n\"1729411\";\"Badian\";\"main\"\n\"1729445\";\"Bacuyangan\";\"main\"\n\"1729456\";\"Bacungan\";\"main\"\n\"1729457\";\"Bacundao Weste\";\"main\"\n\"1729457\";\"Bacondao\";\"other\"\n\"1729464\";\"Baculongan\";\"main\"\n\"1729465\";\"Baculong\";\"main\"\n\"1729469\";\"Baculin\";\"main\"\n\"1729478\";\"Bacuag\";\"main\"\n\"1729478\";\"Bacnag\";\"other\"\n\"1729492\";\"Bactad\";\"main\"\n\"1729492\";\"Bactad West\";\"other\"\n\"1729510\";\"Bacsay\";\"main\"\n\"1729524\";\"Bacoor\";\"main\"\n\"1729537\";\"Leon Postigo\";\"main\"\n\"1729537\";\"Bacangan\";\"other\"\n\"1729537\";\"Bacongan\";\"other\"\n\"1729537\";\"Bacungan\";\"other\"\n\"1729537\";\"Leon T. Postigo\";\"other\"\n\"1729549\";\"Bacong\";\"main\"\n\"1729550\";\"Bacong\";\"main\"\n\"1729554\";\"Bacon\";\"main\"\n\"1729564\";\"Bacolod City\";\"main\"\n\"1729564\";\"Baclod City\";\"other\"\n\"1729564\";\"Bacolod\";\"other\"\n\"1729564\";\"Bacoloo City\";\"other\"\n\"1729564\";\"Bacólod\";\"other\"\n\"1729564\";\"Ciudad ti Bacolod\";\"other\"\n\"1729564\";\"Dakbayan sa Bacolod\";\"other\"\n\"1729564\";\"Lungsod ng Bacolod\";\"other\"\n\"1729564\";\"Syudad han Bacolod\";\"other\"\n\"1729571\";\"Bacolod\";\"main\"\n\"1729578\";\"Bacolod\";\"main\"\n\"1729578\";\"Baculod\";\"other\"\n\"1729580\";\"Bacolod\";\"main\"\n\"1729592\";\"Baco\";\"main\"\n\"1729594\";\"Bacnotan\";\"main\"\n\"1729594\";\"Bacnaton\";\"other\"\n\"1729596\";\"Bacnor\";\"main\"\n\"1729600\";\"Bacnar\";\"main\"\n\"1729605\";\"New Baclayon\";\"main\"\n\"1729605\";\"Baclayon\";\"other\"\n\"1729640\";\"Bacayawan\";\"main\"\n\"1729640\";\"Bakayawan\";\"other\"\n\"1729655\";\"Bacarra\";\"main\"\n\"1729688\";\"Bacalan\";\"main\"\n\"1729696\";\"Bacag\";\"main\"\n\"1729701\";\"Bacacay\";\"main\"\n\"1729711\";\"Bacabac\";\"main\"\n\"1729734\";\"Babo-Pangulo\";\"main\"\n\"1729760\";\"Babatngon\";\"main\"\n\"1729760\";\"Babaingon\";\"other\"\n\"1729760\";\"Babaiñgon\";\"other\"\n\"1729760\";\"Babatangon\";\"other\"\n\"1729794\";\"Babag\";\"main\"\n\"1729803\";\"Baay\";\"main\"\n\"1729814\";\"Baao\";\"main\"\n\"1729830\";\"Azagra\";\"main\"\n\"1729838\";\"Ayusan\";\"main\"\n\"1729850\";\"Ayugan\";\"main\"\n\"1729850\";\"Ayogan\";\"other\"\n\"1729882\";\"Aya\";\"main\"\n\"1729907\";\"Awang\";\"main\"\n\"1729909\";\"Awallan\";\"main\"\n\"1729918\";\"Avila\";\"main\"\n\"1729928\";\"Aurora\";\"main\"\n\"1729929\";\"Aurora\";\"main\"\n\"1729932\";\"Aurora\";\"main\"\n\"1729933\";\"Aurora\";\"main\"\n\"1729937\";\"Aurelliana\";\"main\"\n\"1729937\";\"Aureliana\";\"other\"\n\"1729937\";\"Aurellana\";\"other\"\n\"1729941\";\"Aumbay\";\"main\"\n\"1729953\";\"Atulayan\";\"main\"\n\"1729964\";\"Atop-atop\";\"main\"\n\"1729969\";\"Atok\";\"main\"\n\"1729976\";\"Atipuluan\";\"main\"\n\"1729976\";\"Alipuluan\";\"other\"\n\"1729976\";\"Atipuluhan\";\"other\"\n\"1729987\";\"Atimonan\";\"main\"\n\"1729987\";\"Antimonan\";\"other\"\n\"1730010\";\"Atabayan\";\"main\"\n\"1730025\";\"Asuncion\";\"main\"\n\"1730025\";\"Cambanogoy\";\"other\"\n\"1730025\";\"Cambanugoy\";\"other\"\n\"1730025\";\"Kambanogoy\";\"other\"\n\"1730025\";\"Saug\";\"other\"\n\"1730032\";\"Asturias\";\"main\"\n\"1730036\";\"Asturga\";\"main\"\n\"1730036\";\"Astorga\";\"other\"\n\"1730039\";\"Astorga\";\"main\"\n\"1730070\";\"Asingan\";\"main\"\n\"1730097\";\"Asia\";\"main\"\n\"1730097\";\"Azija\";\"other\"\n\"1730097\";\"Isio\";\"other\"\n\"1730097\";\"Азия\";\"other\"\n\"1730123\";\"Arteche\";\"main\"\n\"1730143\";\"Aroroy\";\"main\"\n\"1730143\";\"Aroio\";\"other\"\n\"1730143\";\"Aroro\";\"other\"\n\"1730143\";\"Port Aroroy\";\"other\"\n\"1730158\";\"Armenia\";\"main\"\n\"1730159\";\"Armenia\";\"main\"\n\"1730159\";\"Arminia\";\"other\"\n\"1730162\";\"Aritao\";\"main\"\n\"1730171\";\"Aringay\";\"main\"\n\"1730194\";\"Argao\";\"main\"\n\"1730204\";\"Arenas\";\"main\"\n\"1730218\";\"Arcangel\";\"main\"\n\"1730225\";\"Arayat\";\"main\"\n\"1730232\";\"Aras-asan\";\"main\"\n\"1730232\";\"Arrasasan\";\"other\"\n\"1730251\";\"Aranda\";\"main\"\n\"1730253\";\"Aranas Sur\";\"main\"\n\"1730253\";\"Aranas\";\"other\"\n\"1730258\";\"Aramawayan\";\"main\"\n\"1730258\";\"Aramaywan\";\"other\"\n\"1730259\";\"Aramayuan\";\"main\"\n\"1730259\";\"Aramaywan\";\"other\"\n\"1730272\";\"Araceli\";\"main\"\n\"1730272\";\"Dumaran\";\"other\"\n\"1730279\";\"Ara-al\";\"main\"\n\"1730282\";\"Aquino\";\"main\"\n\"1730282\";\"Aguino\";\"other\"\n\"1730290\";\"Apurawan\";\"main\"\n\"1730290\";\"Aporawan\";\"other\"\n\"1730290\";\"Apurahuan\";\"other\"\n\"1730290\";\"Apurauan\";\"other\"\n\"1730307\";\"Apud\";\"main\"\n\"1730321\";\"Apoya\";\"main\"\n\"1730321\";\"Apoloy\";\"other\"\n\"1730345\";\"Aplaya\";\"main\"\n\"1730346\";\"Santa Rita Aplaya\";\"main\"\n\"1730346\";\"Aplaya\";\"other\"\n\"1730346\";\"Cota\";\"other\"\n\"1730347\";\"Aplaya\";\"main\"\n\"1730353\";\"Apitong\";\"main\"\n\"1730398\";\"Aparri\";\"main\"\n\"1730398\";\"Apparri\";\"other\"\n\"1730413\";\"Apalit\";\"main\"\n\"1730437\";\"Apad\";\"main\"\n\"1730467\";\"Anuling\";\"main\"\n\"1730468\";\"Anuling\";\"main\"\n\"1730471\";\"Anulid\";\"main\"\n\"1730479\";\"Luna\";\"main\"\n\"1730479\";\"Antonio Luna\";\"other\"\n\"1730499\";\"Antipolo\";\"main\"\n\"1730501\";\"Antipolo\";\"main\"\n\"1730508\";\"Antipolo\";\"main\"\n\"1730509\";\"Antipolo\";\"main\"\n\"1730515\";\"Antipolo\";\"main\"\n\"1730517\";\"Antipolo\";\"main\"\n\"1730517\";\"Anlipolo\";\"other\"\n\"1730528\";\"Anticala\";\"main\"\n\"1730545\";\"Antagan Dos\";\"main\"\n\"1730545\";\"Antagan\";\"other\"\n\"1730562\";\"Anoring\";\"main\"\n\"1730566\";\"Anopog\";\"main\"\n\"1730579\";\"Anonang\";\"main\"\n\"1730595\";\"Anuling\";\"main\"\n\"1730595\";\"Anoling\";\"other\"\n\"1730622\";\"Anito\";\"main\"\n\"1730632\";\"Aanislag\";\"main\"\n\"1730632\";\"Anislag\";\"other\"\n\"1730632\";\"Anistag\";\"other\"\n\"1730663\";\"Anilao\";\"main\"\n\"1730669\";\"Ani-e\";\"main\"\n\"1730669\";\"Anii\";\"other\"\n\"1730686\";\"Anibongan\";\"main\"\n\"1730713\";\"Angono\";\"main\"\n\"1730737\";\"Angeles City\";\"main\"\n\"1730737\";\"Angeles\";\"other\"\n\"1730747\";\"Angatel\";\"main\"\n\"1730749\";\"Angat\";\"main\"\n\"1730749\";\"Santa Cruz\";\"other\"\n\"1730771\";\"Angadanan\";\"main\"\n\"1730771\";\"Angadangan\";\"other\"\n\"1730771\";\"Angadauan\";\"other\"\n\"1730773\";\"Angad\";\"main\"\n\"1730789\";\"Andres Bonifacio\";\"main\"\n\"1730789\";\"A Bonifacio\";\"other\"\n\"1730789\";\"Bonifacio\";\"other\"\n\"1730802\";\"Andili\";\"main\"\n\"1730819\";\"Anda\";\"main\"\n\"1730879\";\"Anao\";\"main\"\n\"1730895\";\"Anamboñgan\";\"main\"\n\"1730895\";\"Anambongan\";\"ascii\"\n\"1730898\";\"Anakan\";\"main\"\n\"1730914\";\"Anahawan\";\"main\"\n\"1730956\";\"Amuñgan\";\"main\"\n\"1730956\";\"Amungan\";\"ascii\"\n\"1730956\";\"Amungen\";\"other\"\n\"1730958\";\"Amulung\";\"main\"\n\"1730958\";\"Amulong\";\"other\"\n\"1730963\";\"Amucao\";\"main\"\n\"1730972\";\"Ampusuñgan\";\"main\"\n\"1730972\";\"Ampusungan\";\"ascii\"\n\"1730972\";\"Amposungan\";\"other\"\n\"1730983\";\"Ampatuan\";\"main\"\n\"1730983\";\"Ampuan\";\"other\"\n\"1731033\";\"Amlimay\";\"main\"\n\"1731047\";\"Amio\";\"main\"\n\"1731066\";\"Amdos\";\"main\"\n\"1731066\";\"Amdus\";\"other\"\n\"1731077\";\"Ambulong\";\"main\"\n\"1731090\";\"Ambuclao\";\"main\"\n\"1731090\";\"Ambuklao\";\"other\"\n\"1731099\";\"Ambulong\";\"main\"\n\"1731099\";\"Ambolong\";\"other\"\n\"1731164\";\"Amas\";\"main\"\n\"1731204\";\"Amagbagan\";\"main\"\n\"1731211\";\"Amaga\";\"main\"\n\"1731212\";\"Amadeo\";\"main\"\n\"1731218\";\"Amacalan\";\"main\"\n\"1731234\";\"Alupay\";\"main\"\n\"1731248\";\"Alugan\";\"main\"\n\"1731248\";\"Alugon\";\"other\"\n\"1731254\";\"Alubijid\";\"main\"\n\"1731254\";\"Alubihid\";\"other\"\n\"1731257\";\"Alubijid\";\"main\"\n\"1731257\";\"Alubihid\";\"other\"\n\"1731259\";\"Alua\";\"main\"\n\"1731276\";\"Altavas\";\"main\"\n\"1731298\";\"Aloleng\";\"main\"\n\"1731302\";\"Aloguinsan\";\"main\"\n\"1731302\";\"Aloquinsan\";\"other\"\n\"1731314\";\"Almeria\";\"main\"\n\"1731314\";\"Almenia\";\"other\"\n\"1731317\";\"Almendras\";\"main\"\n\"1731321\";\"Almaguer\";\"main\"\n\"1731340\";\"Allen\";\"main\"\n\"1731340\";\"La Granja\";\"other\"\n\"1731349\";\"Allangigan Primero\";\"main\"\n\"1731358\";\"Allacapan\";\"main\"\n\"1731382\";\"Alitagtag\";\"main\"\n\"1731439\";\"Alimono\";\"main\"\n\"1731441\";\"Alimodian\";\"main\"\n\"1731450\";\"Alemanguan\";\"main\"\n\"1731450\";\"Alimanguan\";\"other\"\n\"1731461\";\"Alim\";\"main\"\n\"1731472\";\"Alijis\";\"main\"\n\"1731486\";\"Alicia\";\"main\"\n\"1731487\";\"Alicia\";\"main\"\n\"1731487\";\"Batuanan\";\"other\"\n\"1731488\";\"Alicia\";\"main\"\n\"1731488\";\"Chinkang\";\"other\"\n\"1731488\";\"Chinkiang\";\"other\"\n\"1731488\";\"Naga-Naga\";\"other\"\n\"1731488\";\"Naganga\";\"other\"\n\"1731494\";\"Alicante\";\"main\"\n\"1731498\";\"Alibunan\";\"main\"\n\"1731502\";\"Alibug\";\"main\"\n\"1731502\";\"Alibog\";\"other\"\n\"1731519\";\"Alibago\";\"main\"\n\"1731519\";\"Alibagu\";\"other\"\n\"1731525\";\"Aliang\";\"main\"\n\"1731525\";\"Allang\";\"other\"\n\"1731528\";\"Aliaga\";\"main\"\n\"1731528\";\"Алиага\";\"other\"\n\"1731531\";\"Algeciras\";\"main\"\n\"1731537\";\"Alfonso\";\"main\"\n\"1731537\";\"Alfonzo\";\"other\"\n\"1731539\";\"Alpaco\";\"main\"\n\"1731539\";\"Alfaco\";\"other\"\n\"1731539\";\"Alpako\";\"other\"\n\"1731547\";\"Alejal\";\"main\"\n\"1731554\";\"Alegria\";\"main\"\n\"1731564\";\"Alegria\";\"main\"\n\"1731571\";\"Alegria\";\"main\"\n\"1731572\";\"Alegria\";\"main\"\n\"1731572\";\"Algeria\";\"other\"\n\"1731573\";\"Alegria\";\"main\"\n\"1731586\";\"Alcoy\";\"main\"\n\"1731592\";\"Alcantara\";\"main\"\n\"1731594\";\"Alcantara\";\"main\"\n\"1731597\";\"Alcala\";\"main\"\n\"1731597\";\"Acala\";\"other\"\n\"1731598\";\"Alcala\";\"main\"\n\"1731604\";\"Alburquerque\";\"main\"\n\"1731604\";\"Albuquerque\";\"other\"\n\"1731604\";\"Alburqerque\";\"other\"\n\"1731608\";\"Albuera\";\"main\"\n\"1731608\";\"Albuara\";\"other\"\n\"1731628\";\"Alayao\";\"main\"\n\"1731658\";\"Alannay\";\"main\"\n\"1731658\";\"Launay\";\"other\"\n\"1731661\";\"Alanib\";\"main\"\n\"1731665\";\"Alangilanan\";\"main\"\n\"1731669\";\"Alangilan\";\"main\"\n\"1731669\";\"Alangilang\";\"other\"\n\"1731676\";\"Alangalang\";\"main\"\n\"1731685\";\"Alaminos\";\"main\"\n\"1731685\";\"Aliminos\";\"other\"\n\"1731686\";\"Alaminos\";\"main\"\n\"1731694\";\"Alamada\";\"main\"\n\"1731726\";\"Alae\";\"main\"\n\"1731726\";\"Alai\";\"other\"\n\"1731730\";\"Alad\";\"main\"\n\"1731733\";\"Alacaygan\";\"main\"\n\"1731738\";\"Alac\";\"main\"\n\"1731740\";\"Alabug East\";\"main\"\n\"1731740\";\"Alabog\";\"other\"\n\"1731740\";\"Alabug\";\"other\"\n\"1731744\";\"Alabel\";\"main\"\n\"1731749\";\"Alabat\";\"main\"\n\"1731757\";\"Akle\";\"main\"\n\"1731757\";\"Acle\";\"other\"\n\"1731765\";\"Ajuy\";\"main\"\n\"1731765\";\"Ajuy Town\";\"other\"\n\"1731798\";\"Agutaya\";\"main\"\n\"1731798\";\"Agatuya\";\"other\"\n\"1731825\";\"Agupit\";\"main\"\n\"1731825\";\"La Purisima\";\"other\"\n\"1731838\";\"Aguisan\";\"main\"\n\"1731838\";\"Aguisan Hacienda\";\"other\"\n\"1731849\";\"Aguining\";\"main\"\n\"1731849\";\"Aguinin\";\"other\"\n\"1731859\";\"Aguilar\";\"main\"\n\"1731892\";\"Aguada\";\"main\"\n\"1731943\";\"Agpangi\";\"main\"\n\"1731943\";\"Agpange\";\"other\"\n\"1731943\";\"Agponge\";\"other\"\n\"1731952\";\"Agos\";\"main\"\n\"1731959\";\"Agoo\";\"main\"\n\"1732005\";\"Agno\";\"main\"\n\"1732050\";\"Aglayan\";\"main\"\n\"1732053\";\"Aglalana\";\"main\"\n\"1732070\";\"Aggugaddan\";\"main\"\n\"1732070\";\"Aggugadaan\";\"other\"\n\"1732070\";\"Aggugadan\";\"other\"\n\"1732070\";\"Aggugaddah\";\"other\"\n\"1732091\";\"Agdangan\";\"main\"\n\"1732131\";\"Agbannawag\";\"main\"\n\"1732132\";\"Agbanawag\";\"main\"\n\"1732132\";\"Agbannaoag\";\"other\"\n\"1732132\";\"Agbannawag\";\"other\"\n\"1732132\";\"Agbannaway\";\"other\"\n\"1732160\";\"Agay\";\"main\"\n\"1732187\";\"Aganan\";\"main\"\n\"1732191\";\"Ag-ambulong\";\"main\"\n\"1732191\";\"Agamulong\";\"other\"\n\"1732205\";\"Aga\";\"main\"\n\"1732210\";\"Afusing Centro\";\"main\"\n\"1732210\";\"Afusing\";\"other\"\n\"1732210\";\"Aposingbato\";\"other\"\n\"1732223\";\"Adtugan\";\"main\"\n\"1732223\";\"Adtoyon\";\"other\"\n\"1732223\";\"Adtuyon\";\"other\"\n\"1732229\";\"Adlay\";\"main\"\n\"1732246\";\"Adela\";\"main\"\n\"1732277\";\"Acli\";\"main\"\n\"1732277\";\"Acle\";\"other\"\n\"1732277\";\"Akli\";\"other\"\n\"1732294\";\"Acustilan\";\"main\"\n\"1732294\";\"Accusilian\";\"other\"\n\"1732294\";\"Accusillian\";\"other\"\n\"1732297\";\"Acao\";\"main\"\n\"1732304\";\"Abuyon\";\"main\"\n\"1732311\";\"Abuyog\";\"main\"\n\"1732312\";\"Abuyog\";\"main\"\n\"1732317\";\"Abut\";\"main\"\n\"1732333\";\"Abulug\";\"main\"\n\"1732333\";\"Abulog\";\"other\"\n\"1732351\";\"Abucayan\";\"main\"\n\"1732354\";\"Abucay\";\"main\"\n\"1732355\";\"Abucay\";\"main\"\n\"1732378\";\"Abra de Ilog\";\"main\"\n\"1732385\";\"Aborlan\";\"main\"\n\"1732420\";\"Abis\";\"main\"\n\"1732426\";\"Abilay\";\"main\"\n\"1732434\";\"Abiera\";\"main\"\n\"1732434\";\"Jabiera\";\"other\"\n\"1732483\";\"Abangay\";\"main\"\n\"1732526\";\"Abaca\";\"main\"\n\"1732531\";\"Abaca\";\"main\"\n\"1957304\";\"Tolosa\";\"main\"\n\"1957309\";\"Sangali\";\"main\"\n\"1957313\";\"Lamisahan\";\"main\"\n\"1957314\";\"Dulian\";\"main\"\n\"1957317\";\"Landang Laum\";\"main\"\n\"1957322\";\"Talabaan\";\"main\"\n\"1957367\";\"Tablas\";\"main\"\n\"1957465\";\"Mangusu\";\"main\"\n\"1957466\";\"Sibulao\";\"main\"\n\"1957481\";\"Batu\";\"main\"\n\"1957505\";\"Laparay\";\"main\"\n\"1957520\";\"Monching\";\"main\"\n\"1957558\";\"Dalangin\";\"main\"\n\"1957566\";\"Tigpalay\";\"main\"\n\"1957588\";\"Tunggol\";\"main\"\n\"1957653\";\"Marsada\";\"main\"\n\"1957660\";\"Talipaw\";\"main\"\n\"1957671\";\"Katipunan\";\"main\"\n\"1957691\";\"Sanga-Sanga\";\"main\"\n\"1957769\";\"Ungus-Ungus\";\"main\"\n\"1957775\";\"Binuang\";\"main\"\n\"1957783\";\"Pandakan\";\"main\"\n\"1957809\";\"Mauboh\";\"main\"\n\"1957824\";\"Kulase\";\"main\"\n\"1957824\";\"Kulasi\";\"other\"\n\"1957866\";\"Kalang\";\"main\"\n\"1957875\";\"Andalan\";\"main\"\n\"1957913\";\"Buansa\";\"main\"\n\"1957913\";\"Buanza\";\"other\"\n\"1957913\";\"Puansa\";\"other\"\n\"1957914\";\"Kajatian\";\"main\"\n\"1957915\";\"Bato Bato\";\"main\"\n\"1957915\";\"Bato-Bato\";\"ascii\"\n\"1957915\";\"Bata Bata\";\"other\"\n\"1957915\";\"Bata-Bata\";\"other\"\n\"1957931\";\"Sionogan\";\"main\"\n\"1957958\";\"Payuhan\";\"main\"\n\"1958098\";\"Buan\";\"main\"\n\"1958107\";\"Kungtad\";\"main\"\n\"1958281\";\"La Dicha\";\"main\"\n\"1958286\";\"Del Monte\";\"main\"\n\"1958297\";\"Kalian\";\"main\"\n\"1958319\";\"Lumbog\";\"main\"\n\"1958319\";\"Cabatan\";\"other\"\n\"1958342\";\"Tiguha\";\"main\"\n\"1958415\";\"Sagacad\";\"main\"\n\"1958418\";\"East Migpulao\";\"main\"\n\"1958435\";\"Binuatan\";\"main\"\n\"1958436\";\"Guiniculalay\";\"main\"\n\"1958457\";\"Danlugan\";\"main\"\n\"1958471\";\"Kagawasan\";\"main\"\n\"1958498\";\"Lapining\";\"main\"\n\"1958498\";\"Lapinig\";\"other\"\n\"1958501\";\"Margos\";\"main\"\n\"1958505\";\"Taguitic\";\"main\"\n\"1958505\";\"Tagaitic\";\"other\"\n\"1958516\";\"Sumalig\";\"main\"\n\"1958523\";\"Gubaan\";\"main\"\n\"1958534\";\"Lanipao\";\"main\"\n\"1958535\";\"Maranding\";\"main\"\n\"1958535\";\"Maramding\";\"other\"\n\"1958545\";\"Rebe\";\"main\"\n\"1958647\";\"Panubigan\";\"main\"\n\"1958659\";\"Malim\";\"main\"\n\"1958713\";\"Andop\";\"main\"\n\"1958719\";\"Concepcion\";\"main\"\n\"1958729\";\"Kaligutan\";\"main\"\n\"1958738\";\"Del Pilar\";\"main\"\n\"1958747\";\"Tagnanan\";\"main\"\n\"1958759\";\"Camudmud\";\"main\"\n\"1958761\";\"Maduao\";\"main\"\n\"1958762\";\"Katipunan\";\"main\"\n\"1959094\";\"San Remigio\";\"main\"\n\"1959388\";\"Bonbon\";\"main\"\n\"1960764\";\"Balas\";\"main\"\n\"1960765\";\"Magliman\";\"main\"\n\"1961064\";\"Motrico\";\"main\"\n\"1961418\";\"San Pascual\";\"main\"\n\"1961432\";\"Santo Niño\";\"main\"\n\"1961432\";\"Santo Nino\";\"ascii\"\n\"1965308\";\"Kapitan Ramon\";\"main\"\n\"1965308\";\"Capitan Ramon\";\"other\"\n\"1965638\";\"Malusay\";\"main\"\n\"1965740\";\"Del Pilar\";\"main\"\n\"1966063\";\"Bulihan\";\"main\"\n\"1966068\";\"Magsaysay\";\"main\"\n\"1966167\";\"Gulod\";\"main\"\n\"1966226\";\"Badak\";\"main\"\n\"1966352\";\"Lim-oo\";\"main\"\n\"1966433\";\"Ibung\";\"main\"\n\"1978291\";\"Damabalas\";\"main\"\n\"1978396\";\"Esperanza\";\"main\"\n\"1978438\";\"Makir\";\"main\"\n\"1978456\";\"Nunguan\";\"main\"\n\"1978472\";\"Basiawan\";\"main\"\n\"1978540\";\"Lumbac\";\"main\"\n\"1978552\";\"Pagalungan\";\"main\"\n\"1978565\";\"Malandag\";\"main\"\n\"1978691\";\"Dado\";\"main\"\n\"1978926\";\"Simuay\";\"main\"\n\"1978987\";\"Bualan\";\"main\"\n\"1979010\";\"Mataya\";\"main\"\n\"1979014\";\"Nuyo\";\"main\"\n\"1979115\";\"Tuka\";\"main\"\n\"1979116\";\"Busok\";\"main\"\n\"1979117\";\"Lopez Jaena\";\"main\"\n\"1979125\";\"Lambontong\";\"main\"\n\"1979142\";\"Daguma\";\"main\"\n\"1979143\";\"Kapaya\";\"main\"\n\"1979271\";\"Simod\";\"main\"\n\"7470330\";\"Sarangani Provincial Capitol\";\"main\"\n\"1108161\";\"Chuhar Jamāli\";\"main\"\n\"1108161\";\"Chuhar Jamali\";\"ascii\"\n\"1111188\";\"Tīmurgara\";\"main\"\n\"1111188\";\"Timurgara\";\"ascii\"\n\"1111188\";\"Timugara\";\"other\"\n\"1161983\";\"Rāwala Kot\";\"main\"\n\"1161983\";\"Rawala Kot\";\"ascii\"\n\"1161983\";\"Rawalkote\";\"other\"\n\"1161983\";\"Rawlakot\";\"other\"\n\"1161991\";\"Pīr jo Goth\";\"main\"\n\"1161991\";\"Pir jo Goth\";\"ascii\"\n\"1161991\";\"Pir Goth\";\"other\"\n\"1162004\";\"Khairpur\";\"main\"\n\"1162004\";\"Khaipur\";\"other\"\n\"1162004\";\"Khairpur Mirs\";\"other\"\n\"1162004\";\"Khairpur Mīrs\";\"other\"\n\"1162004\";\"Khajrpura\";\"other\"\n\"1162004\";\"Хайрпура\";\"other\"\n\"1162035\";\"Ādilpur\";\"main\"\n\"1162035\";\"Adilpur\";\"ascii\"\n\"1162035\";\"Adalpur\";\"other\"\n\"1162035\";\"Adulpoor\";\"other\"\n\"1162035\";\"Us'mar Ruk Malpur\";\"other\"\n\"1162035\";\"Us’mar Ruk Malpur\";\"other\"\n\"1162035\";\"Ādalpur\";\"other\"\n\"1162094\";\"Ziārat\";\"main\"\n\"1162094\";\"Ziarat\";\"ascii\"\n\"1162105\";\"Zhob\";\"main\"\n\"1162105\";\"Apozai\";\"other\"\n\"1162105\";\"Fort Sandeman\";\"other\"\n\"1162105\";\"Fort Sanderman\";\"other\"\n\"1162261\";\"Zaida\";\"main\"\n\"1162275\";\"Zāhir Pīr\";\"main\"\n\"1162275\";\"Zahir Pir\";\"ascii\"\n\"1162285\";\"Zafarwāl\";\"main\"\n\"1162285\";\"Zafarwal\";\"ascii\"\n\"1162285\";\"Zaffarwal\";\"other\"\n\"1162316\";\"Yazmān Mandi\";\"main\"\n\"1162316\";\"Yazman Mandi\";\"ascii\"\n\"1162316\";\"Rohotwali\";\"other\"\n\"1162316\";\"Rohotwāli\";\"other\"\n\"1162316\";\"Yazman\";\"other\"\n\"1162316\";\"Yazmān\";\"other\"\n\"1162456\";\"Wazīrābād\";\"main\"\n\"1162456\";\"Wazirabad\";\"ascii\"\n\"1162572\";\"Warburton\";\"main\"\n\"1162572\";\"Uorberton\";\"other\"\n\"1162572\";\"Уорбертон\";\"other\"\n\"1162589\";\"Wārāh\";\"main\"\n\"1162589\";\"Warah\";\"ascii\"\n\"1162634\";\"Wāna\";\"main\"\n\"1162634\";\"Wana\";\"ascii\"\n\"1162634\";\"Waha\";\"other\"\n\"1162634\";\"Wano\";\"other\"\n\"1162634\";\"Wāha\";\"other\"\n\"1162634\";\"Wāno\";\"other\"\n\"1162813\";\"Vihāri\";\"main\"\n\"1162813\";\"Vihari\";\"ascii\"\n\"1162813\";\"Vehari\";\"other\"\n\"1162855\";\"Utmānzai\";\"main\"\n\"1162855\";\"Utmanzai\";\"ascii\"\n\"1162855\";\"Uttamanza\";\"other\"\n\"1162855\";\"Uttmanzai\";\"other\"\n\"1162862\";\"Uthal\";\"main\"\n\"1162862\";\"Utal\";\"other\"\n\"1162868\";\"Usta Muhammad\";\"main\"\n\"1162868\";\"Ushda\";\"other\"\n\"1162868\";\"Usta\";\"other\"\n\"1162959\";\"Umarkot\";\"main\"\n\"1163021\";\"Ubauro\";\"main\"\n\"1163054\";\"Turbat\";\"main\"\n\"1163224\";\"Topi\";\"main\"\n\"1163224\";\"Топи\";\"other\"\n\"1163272\";\"Toba Tek Singh\";\"main\"\n\"1163414\";\"Thul\";\"main\"\n\"1163414\";\"Thul Sind\";\"other\"\n\"1163582\";\"Thatta\";\"main\"\n\"1163582\";\"Tatta\";\"other\"\n\"1163595\";\"Thāru Shāh\";\"main\"\n\"1163595\";\"Tharu Shah\";\"ascii\"\n\"1163724\";\"Taunsa\";\"main\"\n\"1163905\";\"Tānk\";\"main\"\n\"1163905\";\"Tank\";\"ascii\"\n\"1163912\";\"Tangwāni\";\"main\"\n\"1163912\";\"Tangwani\";\"ascii\"\n\"1163912\";\"Tangwan\";\"other\"\n\"1163912\";\"Tangwān\";\"other\"\n\"1163927\";\"Tangi\";\"main\"\n\"1163952\";\"Tando Muhammad Khān\";\"main\"\n\"1163952\";\"Tando Muhammad Khan\";\"ascii\"\n\"1163952\";\"Tando Mohammad Khan\";\"other\"\n\"1163953\";\"Tāndo Mittha Khān\";\"main\"\n\"1163953\";\"Tando Mittha Khan\";\"ascii\"\n\"1163953\";\"Tandomithakhan\";\"other\"\n\"1163958\";\"Tando Jām\";\"main\"\n\"1163958\";\"Tando Jam\";\"ascii\"\n\"1163964\";\"Tando Bāgo\";\"main\"\n\"1163964\";\"Tando Bago\";\"ascii\"\n\"1163965\";\"Tando Allāhyār\";\"main\"\n\"1163965\";\"Tando Allahyar\";\"ascii\"\n\"1163965\";\"Tando Alahyar\";\"other\"\n\"1163967\";\"Tando Ādam\";\"main\"\n\"1163967\";\"Tando Adam\";\"ascii\"\n\"1163968\";\"Tāndliānwāla\";\"main\"\n\"1163968\";\"Tandlianwala\";\"ascii\"\n\"1164045\";\"Talhār\";\"main\"\n\"1164045\";\"Talhar\";\"ascii\"\n\"1164064\";\"Talamba\";\"main\"\n\"1164064\";\"Tolamba\";\"other\"\n\"1164064\";\"Tulamba Town\";\"other\"\n\"1164069\";\"Talagang\";\"main\"\n\"1164076\";\"Tāl\";\"main\"\n\"1164076\";\"Tal\";\"ascii\"\n\"1164076\";\"Tal'\";\"other\"\n\"1164076\";\"Thal\";\"other\"\n\"1164076\";\"Таль\";\"other\"\n\"1164216\";\"Swābi\";\"main\"\n\"1164216\";\"Swabi\";\"ascii\"\n\"1164306\";\"Sūrāb\";\"main\"\n\"1164306\";\"Surab\";\"ascii\"\n\"1164306\";\"Soorab\";\"other\"\n\"1164306\";\"Sorab\";\"other\"\n\"1164408\";\"Sukkur\";\"main\"\n\"1164408\";\"Суккур\";\"other\"\n\"1164419\";\"Sukheke Mandi\";\"main\"\n\"1164660\";\"Sohbatpur\";\"main\"\n\"1164679\";\"Sodhra\";\"main\"\n\"1164679\";\"Sodlira\";\"other\"\n\"1164679\";\"Sohdra Town\";\"other\"\n\"1164698\";\"Sobhādero\";\"main\"\n\"1164698\";\"Sobhadero\";\"ascii\"\n\"1164698\";\"Sobbodero\";\"other\"\n\"1164698\";\"Sobho Dero\";\"other\"\n\"1164709\";\"Skārdu\";\"main\"\n\"1164709\";\"Skardu\";\"ascii\"\n\"1164709\";\"Shardu\";\"other\"\n\"1164709\";\"Skardo\";\"other\"\n\"1164716\";\"Sīta Road\";\"main\"\n\"1164716\";\"Sita Road\";\"ascii\"\n\"1164776\";\"Sinjhoro\";\"main\"\n\"1164776\";\"Sinjihoro\";\"other\"\n\"1164825\";\"Sillānwāli\";\"main\"\n\"1164825\";\"Sillanwali\";\"ascii\"\n\"1164896\";\"Sibi\";\"main\"\n\"1164896\";\"Ibis\";\"other\"\n\"1164896\";\"Сиби\";\"other\"\n\"1164909\";\"Siālkot\";\"main\"\n\"1164909\";\"Sialkot\";\"ascii\"\n\"1164909\";\"Сиалкот\";\"other\"\n\"1164970\";\"Shujāābād\";\"main\"\n\"1164970\";\"Shujaabad\";\"ascii\"\n\"1164970\";\"Shujabad\";\"other\"\n\"1164987\";\"Shorko\";\"main\"\n\"1164987\";\"Shorkot\";\"other\"\n\"1165057\";\"Shīnpokh\";\"main\"\n\"1165057\";\"Shinpokh\";\"ascii\"\n\"1165108\";\"Shikārpur\";\"main\"\n\"1165108\";\"Shikarpur\";\"ascii\"\n\"1165221\";\"Sheikhupura\";\"main\"\n\"1165221\";\"Qila Sheikhupura\";\"other\"\n\"1165221\";\"Shekhupura\";\"other\"\n\"1165221\";\"Shekhūpura\";\"other\"\n\"1165260\";\"Sharqpur\";\"main\"\n\"1165260\";\"Sharakpur\";\"other\"\n\"1165260\";\"Shargpur\";\"other\"\n\"1165388\";\"Shakargarr\";\"main\"\n\"1165486\";\"Shahr Sultān\";\"main\"\n\"1165486\";\"Shahr Sultan\";\"ascii\"\n\"1165507\";\"Shāhpur Chākar\";\"main\"\n\"1165507\";\"Shahpur Chakar\";\"ascii\"\n\"1165507\";\"Shahpur Chaka\";\"other\"\n\"1165507\";\"Shahpur Chaker\";\"other\"\n\"1165507\";\"Shāhpur Chaka\";\"other\"\n\"1165518\";\"Shāhpur\";\"main\"\n\"1165518\";\"Shahpur\";\"ascii\"\n\"1165635\";\"Shāhdādpur\";\"main\"\n\"1165635\";\"Shahdadpur\";\"ascii\"\n\"1165638\";\"Shāhdādkot\";\"main\"\n\"1165638\";\"Shahdadkot\";\"ascii\"\n\"1165638\";\"Shahdadpur\";\"other\"\n\"1165638\";\"Shāhdādpur\";\"other\"\n\"1165744\";\"Shabqadar\";\"main\"\n\"1165744\";\"Shabgadar Fort\";\"other\"\n\"1165744\";\"Shabkadar\";\"other\"\n\"1165744\";\"Shapqadar\";\"other\"\n\"1165789\";\"Sehwān\";\"main\"\n\"1165789\";\"Sehwan\";\"ascii\"\n\"1166000\";\"Sargodha\";\"main\"\n\"1166000\";\"Sargodkha\";\"other\"\n\"1166000\";\"Саргодха\";\"other\"\n\"1166062\";\"Sarāi Sidhu\";\"main\"\n\"1166062\";\"Sarai Sidhu\";\"ascii\"\n\"1166066\";\"Sarāi Naurang\";\"main\"\n\"1166066\";\"Sarai Naurang\";\"ascii\"\n\"1166066\";\"Naurang Sarai\";\"other\"\n\"1166066\";\"Naurang Sarāi\";\"other\"\n\"1166073\";\"Sarāi Ālamgīr\";\"main\"\n\"1166073\";\"Sarai Alamgir\";\"ascii\"\n\"1166115\";\"Sann\";\"main\"\n\"1166118\";\"Sanjwāl\";\"main\"\n\"1166118\";\"Sanjwal\";\"ascii\"\n\"1166146\";\"Sāngla\";\"main\"\n\"1166146\";\"Sangla\";\"ascii\"\n\"1166146\";\"Sangla Hill\";\"other\"\n\"1166164\";\"Sānghar\";\"main\"\n\"1166164\";\"Sanghar\";\"ascii\"\n\"1166164\";\"Sangar\";\"other\"\n\"1166265\";\"Sambriāl\";\"main\"\n\"1166265\";\"Sambrial\";\"ascii\"\n\"1166275\";\"Samaro\";\"main\"\n\"1166275\";\"Samara\";\"other\"\n\"1166381\";\"Sakrand\";\"main\"\n\"1166381\";\"Sakrano\";\"other\"\n\"1166475\";\"Saidu Sharīf\";\"main\"\n\"1166475\";\"Saidu Sharif\";\"ascii\"\n\"1166475\";\"Saidu\";\"other\"\n\"1166547\";\"Sāhīwāl\";\"main\"\n\"1166547\";\"Sahiwal\";\"ascii\"\n\"1166547\";\"Sakhivale\";\"other\"\n\"1166547\";\"Sohiwal\";\"other\"\n\"1166547\";\"Sōhiwāl\";\"other\"\n\"1166547\";\"Сахивале\";\"other\"\n\"1166548\";\"Sāhīwāl\";\"main\"\n\"1166548\";\"Sahiwal\";\"ascii\"\n\"1166548\";\"Montgomery\";\"other\"\n\"1166548\";\"Sakhivale\";\"other\"\n\"1166548\";\"Сахивале\";\"other\"\n\"1166652\";\"Sādiqābād\";\"main\"\n\"1166652\";\"Sadiqabad\";\"ascii\"\n\"1166652\";\"Sadikabad\";\"other\"\n\"1166652\";\"Sādikābād\";\"other\"\n\"1166720\";\"Rustam jo Goth\";\"main\"\n\"1166720\";\"Rustam\";\"other\"\n\"1166720\";\"Rustom\";\"other\"\n\"1166819\";\"Rojhān\";\"main\"\n\"1166819\";\"Rojhan\";\"ascii\"\n\"1166827\";\"Rohri\";\"main\"\n\"1166827\";\"Lohri\";\"other\"\n\"1166933\";\"Renāla Khurd\";\"main\"\n\"1166933\";\"Renala Khurd\";\"ascii\"\n\"1166933\";\"Renala\";\"other\"\n\"1166933\";\"Renāla\";\"other\"\n\"1166993\";\"Rāwalpindi\";\"main\"\n\"1166993\";\"Rawalpindi\";\"ascii\"\n\"1166993\";\"Ralalpindi\";\"other\"\n\"1166993\";\"Ravalpindi\";\"other\"\n\"1166993\";\"Ravalpindis\";\"other\"\n\"1166993\";\"la wa er pin di\";\"other\"\n\"1166993\";\"lawalpindi\";\"other\"\n\"1166993\";\"rawarupindi\";\"other\"\n\"1166993\";\"rawlpndy\";\"other\"\n\"1166993\";\"Равалпинди\";\"other\"\n\"1166993\";\"راولپندی\";\"other\"\n\"1166993\";\"راولپنڈی\";\"other\"\n\"1166993\";\"ラワルピンディ\";\"other\"\n\"1166993\";\"拉瓦尔品第\";\"other\"\n\"1166993\";\"라왈핀디\";\"other\"\n\"1167031\";\"Ratodero\";\"main\"\n\"1167031\";\"Dero\";\"other\"\n\"1167031\";\"Rato\";\"other\"\n\"1167064\";\"Rasūlnagar\";\"main\"\n\"1167064\";\"Rasulnagar\";\"ascii\"\n\"1167064\";\"Ramnagar\";\"other\"\n\"1167064\";\"Rasulnager\";\"other\"\n\"1167064\";\"Rasūlnager\";\"other\"\n\"1167064\";\"Rāmnagar\";\"other\"\n\"1167142\";\"Rānīpur\";\"main\"\n\"1167142\";\"Ranipur\";\"ascii\"\n\"1167142\";\"Raripur\";\"other\"\n\"1167342\";\"Rājo Khanāni\";\"main\"\n\"1167342\";\"Rajo Khanani\";\"ascii\"\n\"1167380\";\"Rājanpur\";\"main\"\n\"1167380\";\"Rajanpur\";\"ascii\"\n\"1167386\";\"Rāja Jang\";\"main\"\n\"1167386\";\"Raja Jang\";\"ascii\"\n\"1167386\";\"Baja Jang\";\"other\"\n\"1167398\";\"Rāiwind\";\"main\"\n\"1167398\";\"Raiwind\";\"ascii\"\n\"1167460\";\"Rahīmyār Khān\";\"main\"\n\"1167460\";\"Rahimyar Khan\";\"ascii\"\n\"1167460\";\"Bahim Yar Khan\";\"other\"\n\"1167501\";\"Rādhan\";\"main\"\n\"1167501\";\"Radhan\";\"ascii\"\n\"1167528\";\"Quetta\";\"main\"\n\"1167528\";\"Kotah\";\"other\"\n\"1167528\";\"Kvetta\";\"other\"\n\"1167528\";\"Kwatah\";\"other\"\n\"1167528\";\"Kweta\";\"other\"\n\"1167528\";\"Shal\";\"other\"\n\"1167528\";\"Shalkot\";\"other\"\n\"1167528\";\"Shāl\";\"other\"\n\"1167528\";\"Shālkot\";\"other\"\n\"1167528\";\"kuetta\";\"other\"\n\"1167528\";\"kui da\";\"other\"\n\"1167528\";\"kweta\";\"other\"\n\"1167528\";\"kwyth\";\"other\"\n\"1167528\";\"Кветта\";\"other\"\n\"1167528\";\"کویته\";\"other\"\n\"1167528\";\"クエッタ\";\"other\"\n\"1167528\";\"奎達\";\"other\"\n\"1167528\";\"퀘타\";\"other\"\n\"1167550\";\"Qila Saifullāh\";\"main\"\n\"1167550\";\"Qila Saifullah\";\"ascii\"\n\"1167550\";\"Kila Saifulla\";\"other\"\n\"1167550\";\"Killa Saifulla Bazar\";\"other\"\n\"1167550\";\"Killa-Saifulla\";\"other\"\n\"1167550\";\"New Qila Saifullah\";\"other\"\n\"1167550\";\"New Qila Saifullāh\";\"other\"\n\"1167579\";\"Qila Abdullāh\";\"main\"\n\"1167579\";\"Qila Abdullah\";\"ascii\"\n\"1167579\";\"Killa Abdullah\";\"other\"\n\"1167622\";\"Kambar\";\"main\"\n\"1167622\";\"Qambar\";\"other\"\n\"1167622\";\"Камбар\";\"other\"\n\"1167648\";\"Qādirpur Rān\";\"main\"\n\"1167648\";\"Qadirpur Ran\";\"ascii\"\n\"1167798\";\"Pithoro\";\"main\"\n\"1167821\";\"Pishin\";\"main\"\n\"1167821\";\"pshy\";\"other\"\n\"1167821\";\"Пишин\";\"other\"\n\"1167821\";\"پشی\";\"other\"\n\"1167873\";\"Pīr Mahal\";\"main\"\n\"1167873\";\"Pir Mahal\";\"ascii\"\n\"1168015\";\"Pindi Gheb\";\"main\"\n\"1168021\";\"Pindi Bhattiān\";\"main\"\n\"1168021\";\"Pindi Bhattian\";\"ascii\"\n\"1168021\";\"Pindi Battian\";\"other\"\n\"1168021\";\"Pindi Bhatian\";\"other\"\n\"1168036\";\"Pind Dādan Khān\";\"main\"\n\"1168036\";\"Pind Dadan Khan\";\"ascii\"\n\"1168036\";\"Pindi Dadan Khan\";\"other\"\n\"1168101\";\"Phūlji\";\"main\"\n\"1168101\";\"Phulji\";\"ascii\"\n\"1168166\";\"Phālia\";\"main\"\n\"1168166\";\"Phalia\";\"ascii\"\n\"1168197\";\"Peshāwar\";\"main\"\n\"1168197\";\"Peshawar\";\"ascii\"\n\"1168197\";\"Pesabar\";\"other\"\n\"1168197\";\"Pesavaras\";\"other\"\n\"1168197\";\"Peschawar\";\"other\"\n\"1168197\";\"Peshavar\";\"other\"\n\"1168197\";\"Pesjawar\";\"other\"\n\"1168197\";\"Peszawar\";\"other\"\n\"1168197\";\"Pešavaras\";\"other\"\n\"1168197\";\"bai sha wa\";\"other\"\n\"1168197\";\"pesavara\";\"other\"\n\"1168197\";\"peshawaru\";\"other\"\n\"1168197\";\"pesyawaleu\";\"other\"\n\"1168197\";\"pshawr\";\"other\"\n\"1168197\";\"pyshawr\";\"other\"\n\"1168197\";\"Πεσαβάρ\";\"other\"\n\"1168197\";\"Пешавар\";\"other\"\n\"1168197\";\"پشاور\";\"other\"\n\"1168197\";\"پیشاور\";\"other\"\n\"1168197\";\"पेशावर\";\"other\"\n\"1168197\";\"ペシャーワル\";\"other\"\n\"1168197\";\"白沙瓦\";\"other\"\n\"1168197\";\"페샤와르\";\"other\"\n\"1168226\";\"Pattoki\";\"main\"\n\"1168226\";\"Mandi Pattoki\";\"other\"\n\"1168307\";\"Pasrūr\";\"main\"\n\"1168307\";\"Pasrur\";\"ascii\"\n\"1168307\";\"Pasur\";\"other\"\n\"1168307\";\"Pasūr\";\"other\"\n\"1168312\";\"Pasni\";\"main\"\n\"1168312\";\"Pansi\";\"other\"\n\"1168312\";\"Пасни\";\"other\"\n\"1168412\";\"Pāno Āqil\";\"main\"\n\"1168412\";\"Pano Aqil\";\"ascii\"\n\"1168412\";\"Pano Akil\";\"other\"\n\"1168446\";\"Panjgūr\";\"main\"\n\"1168446\";\"Panjgur\";\"ascii\"\n\"1168446\";\"Chukan\";\"other\"\n\"1168544\";\"Palandri\";\"main\"\n\"1168555\";\"Pākpattan\";\"main\"\n\"1168555\";\"Pakpattan\";\"ascii\"\n\"1168633\";\"Pahārpur\";\"main\"\n\"1168633\";\"Paharpur\";\"ascii\"\n\"1168652\";\"Pad Īdan\";\"main\"\n\"1168652\";\"Pad Idan\";\"ascii\"\n\"1168680\";\"Pabbi\";\"main\"\n\"1168700\";\"Ormāra\";\"main\"\n\"1168700\";\"Ormara\";\"ascii\"\n\"1168718\";\"Okāra\";\"main\"\n\"1168718\";\"Okara\";\"ascii\"\n\"1168718\";\"Окара\";\"other\"\n\"1168749\";\"Nushki\";\"main\"\n\"1168864\";\"Nowshera\";\"main\"\n\"1168864\";\"Naushahra\";\"other\"\n\"1168864\";\"Nowshehra\";\"other\"\n\"1169027\";\"New Mīrpur\";\"main\"\n\"1169027\";\"New Mirpur\";\"ascii\"\n\"1169027\";\"Mirpur\";\"other\"\n\"1169027\";\"Mīrpur\";\"other\"\n\"1169116\";\"Nawābshāh\";\"main\"\n\"1169116\";\"Nawabshah\";\"ascii\"\n\"1169143\";\"Naushahro Fīroz\";\"main\"\n\"1169143\";\"Naushahro Firoz\";\"ascii\"\n\"1169143\";\"Naushahro\";\"other\"\n\"1169143\";\"Naushahro Piroz\";\"other\"\n\"1169145\";\"Naushahra Virkān\";\"main\"\n\"1169145\";\"Naushahra Virkan\";\"ascii\"\n\"1169145\";\"Naushahra Virkhan\";\"other\"\n\"1169145\";\"Naushehra Werkan\";\"other\"\n\"1169145\";\"Naushera Virkhan\";\"other\"\n\"1169187\";\"Naudero\";\"main\"\n\"1169187\";\"Naundero\";\"other\"\n\"1169254\";\"Nasīrābād\";\"main\"\n\"1169254\";\"Nasirabad\";\"ascii\"\n\"1169278\";\"Nārowāl\";\"main\"\n\"1169278\";\"Narowal\";\"ascii\"\n\"1169334\";\"Nārang\";\"main\"\n\"1169334\";\"Narang\";\"ascii\"\n\"1169334\";\"Наранг\";\"other\"\n\"1169367\";\"Naukot\";\"main\"\n\"1169367\";\"Naokot\";\"other\"\n\"1169367\";\"Nawakot\";\"other\"\n\"1169372\";\"Nankāna Sāhib\";\"main\"\n\"1169372\";\"Nankana Sahib\";\"ascii\"\n\"1169372\";\"Nanakana Sahib\";\"other\"\n\"1169372\";\"Nankana Municipality\";\"other\"\n\"1169580\";\"Nabīsar\";\"main\"\n\"1169580\";\"Nabisar\";\"ascii\"\n\"1169580\";\"Nabisarpat\";\"other\"\n\"1169605\";\"Muzaffargarh\";\"main\"\n\"1169605\";\"Muzaffargar\";\"other\"\n\"1169605\";\"Музаффаргар\";\"other\"\n\"1169607\";\"Muzaffarābād\";\"main\"\n\"1169607\";\"Muzaffarabad\";\"ascii\"\n\"1169607\";\"Musaffarabad\";\"other\"\n\"1169607\";\"Musaffarābād\";\"other\"\n\"1169607\";\"Muzafarabad\";\"other\"\n\"1169607\";\"Музафарабад\";\"other\"\n\"1169620\";\"Mustafābād\";\"main\"\n\"1169620\";\"Mustafabad\";\"ascii\"\n\"1169663\";\"Mūsa Khel Bāzār\";\"main\"\n\"1169663\";\"Musa Khel Bazar\";\"ascii\"\n\"1169663\";\"Musakhel\";\"other\"\n\"1169684\";\"Murree\";\"main\"\n\"1169692\";\"Murīdke\";\"main\"\n\"1169692\";\"Muridke\";\"ascii\"\n\"1169825\";\"Multān\";\"main\"\n\"1169825\";\"Multan\";\"ascii\"\n\"1169825\";\"Multanas\";\"other\"\n\"1169825\";\"mu er tan\";\"other\"\n\"1169825\";\"murutan\";\"other\"\n\"1169825\";\"Мултан\";\"other\"\n\"1169825\";\"ムルターン\";\"other\"\n\"1169825\";\"木爾坦\";\"other\"\n\"1170013\";\"Moro\";\"main\"\n\"1170219\";\"Mithi\";\"main\"\n\"1170219\";\"Mitti\";\"other\"\n\"1170222\";\"Mitha Tiwāna\";\"main\"\n\"1170222\";\"Mitha Tiwana\";\"ascii\"\n\"1170281\";\"Mīrwāh Gorchani\";\"main\"\n\"1170281\";\"Mirwah Gorchani\";\"ascii\"\n\"1170281\";\"Mirwah\";\"other\"\n\"1170281\";\"Mīrwāh\";\"other\"\n\"1170290\";\"Mīrpur Sakro\";\"main\"\n\"1170290\";\"Mirpur Sakro\";\"ascii\"\n\"1170290\";\"Mipur Sakro\";\"other\"\n\"1170290\";\"Mirpur Sukro\";\"other\"\n\"1170294\";\"Mīrpur Māthelo\";\"main\"\n\"1170294\";\"Mirpur Mathelo\";\"ascii\"\n\"1170294\";\"Mirpur\";\"other\"\n\"1170294\";\"Mīrpur\";\"other\"\n\"1170295\";\"Mīrpur Khās\";\"main\"\n\"1170295\";\"Mirpur Khas\";\"ascii\"\n\"1170299\";\"Mīrpur Batoro\";\"main\"\n\"1170299\";\"Mirpur Batoro\";\"ascii\"\n\"1170299\";\"Mirpur Bathoro\";\"other\"\n\"1170312\";\"Mīro Khān\";\"main\"\n\"1170312\";\"Miro Khan\";\"ascii\"\n\"1170367\";\"Mīram Shāh\";\"main\"\n\"1170367\";\"Miram Shah\";\"ascii\"\n\"1170367\";\"Miram\";\"other\"\n\"1170367\";\"Miram Shah Post\";\"other\"\n\"1170367\";\"Miram Shāh Post\";\"other\"\n\"1170367\";\"Miran Shah Scouts Post\";\"other\"\n\"1170367\";\"Miran Shāh Scouts Post\";\"other\"\n\"1170367\";\"Miranshah\";\"other\"\n\"1170395\";\"Mingāora\";\"main\"\n\"1170395\";\"Mingaora\";\"ascii\"\n\"1170395\";\"Mingora\";\"other\"\n\"1170398\";\"Minchinābād\";\"main\"\n\"1170398\";\"Minchinabad\";\"ascii\"\n\"1170398\";\"Manchinabad\";\"other\"\n\"1170425\";\"Miānwāli\";\"main\"\n\"1170425\";\"Mianwali\";\"ascii\"\n\"1170486\";\"Miān Channūn\";\"main\"\n\"1170486\";\"Mian Channun\";\"ascii\"\n\"1170486\";\"Mian Channu\";\"other\"\n\"1170564\";\"Mehrābpur\";\"main\"\n\"1170564\";\"Mehrabpur\";\"ascii\"\n\"1170564\";\"Mahrabpur\";\"other\"\n\"1170584\";\"Mehar\";\"main\"\n\"1170667\";\"Mātli\";\"main\"\n\"1170667\";\"Matli\";\"ascii\"\n\"1170677\";\"Matiāri\";\"main\"\n\"1170677\";\"Matiari\";\"ascii\"\n\"1170677\";\"Matari\";\"other\"\n\"1170706\";\"Mastung\";\"main\"\n\"1170880\";\"Mardān\";\"main\"\n\"1170880\";\"Mardan\";\"ascii\"\n\"1170880\";\"Мардан\";\"other\"\n\"1170951\";\"Mānsehra\";\"main\"\n\"1170951\";\"Mansehra\";\"ascii\"\n\"1170951\";\"Mansekhra\";\"other\"\n\"1170951\";\"Мансехра\";\"other\"\n\"1170974\";\"Mankera\";\"main\"\n\"1170974\";\"Mankora\";\"other\"\n\"1171050\";\"Mangla\";\"main\"\n\"1171123\";\"Mandi Bahāuddīn\";\"main\"\n\"1171123\";\"Mandi Bahauddin\";\"ascii\"\n\"1171123\";\"Bahauddin\";\"other\"\n\"1171165\";\"Mānānwāla\";\"main\"\n\"1171165\";\"Mananwala\";\"ascii\"\n\"1171198\";\"Māmu Kānjan\";\"main\"\n\"1171198\";\"Mamu Kanjan\";\"ascii\"\n\"1171376\";\"Malakwāl\";\"main\"\n\"1171376\";\"Malakwal\";\"ascii\"\n\"1171389\";\"Malakand\";\"main\"\n\"1171389\";\"Malakaud\";\"other\"\n\"1171502\";\"Mailsi\";\"main\"\n\"1171677\";\"Madeji\";\"main\"\n\"1171757\";\"Mach\";\"main\"\n\"1171868\";\"Loralai\";\"main\"\n\"1171868\";\"Loraiar\";\"other\"\n\"1171965\";\"Lodhrān\";\"main\"\n\"1171965\";\"Lodhran\";\"ascii\"\n\"1171991\";\"Liliāni\";\"main\"\n\"1171991\";\"Liliani\";\"ascii\"\n\"1171991\";\"Laliani\";\"other\"\n\"1171991\";\"Laliāni\";\"other\"\n\"1171991\";\"Lalliani\";\"other\"\n\"1172035\";\"Leiah\";\"main\"\n\"1172035\";\"Lelah\";\"other\"\n\"1172035\";\"Lerah\";\"other\"\n\"1172128\";\"Lārkāna\";\"main\"\n\"1172128\";\"Larkana\";\"ascii\"\n\"1172128\";\"Larkane\";\"other\"\n\"1172128\";\"Ларкане\";\"other\"\n\"1172208\";\"Landi Kotal\";\"main\"\n\"1172208\";\"Landlandi Kotal\";\"other\"\n\"1172295\";\"Lāliān\";\"main\"\n\"1172295\";\"Lalian\";\"ascii\"\n\"1172318\";\"Lāla Mūsa\";\"main\"\n\"1172318\";\"Lala Musa\";\"ascii\"\n\"1172339\";\"Lakki Marwat\";\"main\"\n\"1172339\";\"Laki-Marwat\";\"other\"\n\"1172339\";\"Lakki\";\"other\"\n\"1172389\";\"Lakhi\";\"main\"\n\"1172451\";\"Lahore\";\"main\"\n\"1172451\";\"Lahaur\";\"other\"\n\"1172451\";\"Lahor\";\"other\"\n\"1172451\";\"Lahoras\";\"other\"\n\"1172451\";\"Lakhor\";\"other\"\n\"1172451\";\"Lâhore\";\"other\"\n\"1172451\";\"Lāhaur\";\"other\"\n\"1172451\";\"la he er\";\"other\"\n\"1172451\";\"lahaura\";\"other\"\n\"1172451\";\"laholeu\";\"other\"\n\"1172451\";\"lahora\";\"other\"\n\"1172451\";\"lahori\";\"other\"\n\"1172451\";\"lahwr\";\"other\"\n\"1172451\";\"rahoru\";\"other\"\n\"1172451\";\"Лахор\";\"other\"\n\"1172451\";\"לאהור\";\"other\"\n\"1172451\";\"لاهور\";\"other\"\n\"1172451\";\"لاھور\";\"other\"\n\"1172451\";\"لاہور\";\"other\"\n\"1172451\";\"लाहोर\";\"other\"\n\"1172451\";\"लाहौर\";\"other\"\n\"1172451\";\"લાહોર\";\"other\"\n\"1172451\";\"ლაჰორი\";\"other\"\n\"1172451\";\"ラホール\";\"other\"\n\"1172451\";\"ラーホール\";\"other\"\n\"1172451\";\"拉合尔\";\"other\"\n\"1172451\";\"拉合爾\";\"other\"\n\"1172451\";\"라호르\";\"other\"\n\"1172488\";\"Ladhewāla Warāich\";\"main\"\n\"1172488\";\"Ladhewala Waraich\";\"ascii\"\n\"1172513\";\"Lāchi\";\"main\"\n\"1172513\";\"Lachi\";\"ascii\"\n\"1172657\";\"Kunri\";\"main\"\n\"1172663\";\"Kunjāh\";\"main\"\n\"1172663\";\"Kunjah\";\"ascii\"\n\"1172682\";\"Kundiān\";\"main\"\n\"1172682\";\"Kundian\";\"ascii\"\n\"1172682\";\"Kundian Pacca\";\"other\"\n\"1172779\";\"Kulāchi\";\"main\"\n\"1172779\";\"Kulachi\";\"ascii\"\n\"1172866\";\"Kot Sultan\";\"main\"\n\"1172888\";\"Kot Samāba\";\"main\"\n\"1172888\";\"Kot Samaba\";\"ascii\"\n\"1172904\";\"Kotri\";\"main\"\n\"1172904\";\"Koti\";\"other\"\n\"1172915\";\"Kot Rādha Kishan\";\"main\"\n\"1172915\";\"Kot Radha Kishan\";\"ascii\"\n\"1172964\";\"Kot Mūmin\";\"main\"\n\"1172964\";\"Kot Mumin\";\"ascii\"\n\"1172964\";\"Kot Mamin\";\"other\"\n\"1172964\";\"Kot-Moman\";\"other\"\n\"1172993\";\"Kot Malik\";\"main\"\n\"1173025\";\"Kotli Lohārān\";\"main\"\n\"1173025\";\"Kotli Loharan\";\"ascii\"\n\"1173055\";\"Kotli\";\"main\"\n\"1173272\";\"Kot Ghulām Muhammad\";\"main\"\n\"1173272\";\"Kot Ghulam Muhammad\";\"ascii\"\n\"1173302\";\"Kot Diji\";\"main\"\n\"1173302\";\"Diji\";\"other\"\n\"1173378\";\"Kot Addu\";\"main\"\n\"1173378\";\"Kot-Adu\";\"other\"\n\"1173464\";\"Kohlu\";\"main\"\n\"1173491\";\"Kohāt\";\"main\"\n\"1173491\";\"Kohat\";\"ascii\"\n\"1173491\";\"Kokhat\";\"other\"\n\"1173491\";\"Кохат\";\"other\"\n\"1173687\";\"Khushāb\";\"main\"\n\"1173687\";\"Khushab\";\"ascii\"\n\"1173687\";\"Khushah\";\"other\"\n\"1173692\";\"Khurriānwāla\";\"main\"\n\"1173692\";\"Khurrianwala\";\"ascii\"\n\"1173692\";\"Khurianwala\";\"other\"\n\"1173692\";\"Kurrianwala\";\"other\"\n\"1173889\";\"Khipro\";\"main\"\n\"1173920\";\"Khewra\";\"main\"\n\"1174042\";\"Khāriān\";\"main\"\n\"1174042\";\"Kharian\";\"ascii\"\n\"1174062\";\"Khārān\";\"main\"\n\"1174062\";\"Kharan\";\"ascii\"\n\"1174062\";\"Kharan Kalat\";\"other\"\n\"1174062\";\"Kharon Kalat\";\"other\"\n\"1174062\";\"Khārān Kalāt\";\"other\"\n\"1174074\";\"Karak\";\"main\"\n\"1174074\";\"Kark\";\"other\"\n\"1174074\";\"Kharak\";\"other\"\n\"1174094\";\"Khapalu\";\"main\"\n\"1174167\";\"Khānpur\";\"main\"\n\"1174167\";\"Khanpur\";\"ascii\"\n\"1174171\";\"Khānpur\";\"main\"\n\"1174171\";\"Khanpur\";\"ascii\"\n\"1174171\";\"Khanpoor\";\"other\"\n\"1174211\";\"Khāngarh\";\"main\"\n\"1174211\";\"Khangarh\";\"ascii\"\n\"1174217\";\"Khāngāh Dogrān\";\"main\"\n\"1174217\";\"Khangah Dogran\";\"ascii\"\n\"1174217\";\"Khanga Dogran\";\"other\"\n\"1174217\";\"Khangah-Dogra\";\"other\"\n\"1174217\";\"Khangan Dogran\";\"other\"\n\"1174217\";\"Khanqah Dogran\";\"other\"\n\"1174217\";\"Khāngān Dogrān\";\"other\"\n\"1174217\";\"Khānqāh Dogrān\";\"other\"\n\"1174220\";\"Khānewāl\";\"main\"\n\"1174220\";\"Khanewal\";\"ascii\"\n\"1174301\";\"Khalābat\";\"main\"\n\"1174301\";\"Khalabat\";\"ascii\"\n\"1174344\";\"Khairpur Nathan Shāh\";\"main\"\n\"1174344\";\"Khairpur Nathan Shah\";\"ascii\"\n\"1174344\";\"Khairpur\";\"other\"\n\"1174344\";\"Khairpur Nathoshah\";\"other\"\n\"1174355\";\"Khairpur\";\"main\"\n\"1174357\";\"Khairpur\";\"main\"\n\"1174357\";\"Khairpur Daherki\";\"other\"\n\"1174357\";\"Khajrpura\";\"other\"\n\"1174357\";\"Хайрпура\";\"other\"\n\"1174408\";\"Khadro\";\"main\"\n\"1174451\";\"Keti Bandar\";\"main\"\n\"1174451\";\"Keti\";\"other\"\n\"1174451\";\"Ketibunder\";\"other\"\n\"1174625\";\"Kasūr\";\"main\"\n\"1174625\";\"Kasur\";\"ascii\"\n\"1174625\";\"Kansur\";\"other\"\n\"1174625\";\"Kansūr\";\"other\"\n\"1174625\";\"Касур\";\"other\"\n\"1174653\";\"Kashmor\";\"main\"\n\"1174653\";\"Kashmore\";\"other\"\n\"1174720\";\"Karor\";\"main\"\n\"1174720\";\"Haror\";\"other\"\n\"1174720\";\"Karor Lal Isa\";\"other\"\n\"1174765\";\"Kario\";\"main\"\n\"1174815\";\"Karaundi\";\"main\"\n\"1174815\";\"Karundi\";\"other\"\n\"1174872\";\"Karachi\";\"main\"\n\"1174872\";\"Carachi\";\"other\"\n\"1174872\";\"Karachi - krachy\";\"other\"\n\"1174872\";\"Karachi - كراچى\";\"other\"\n\"1174872\";\"Karaci\";\"other\"\n\"1174872\";\"Karacio\";\"other\"\n\"1174872\";\"Karacis\";\"other\"\n\"1174872\";\"Karaczi\";\"other\"\n\"1174872\";\"Karanchi\";\"other\"\n\"1174872\";\"Karatschi\";\"other\"\n\"1174872\";\"Karaçi\";\"other\"\n\"1174872\";\"Karaĉio\";\"other\"\n\"1174872\";\"Karači\";\"other\"\n\"1174872\";\"Karačis\";\"other\"\n\"1174872\";\"Karáči\";\"other\"\n\"1174872\";\"Karâchi\";\"other\"\n\"1174872\";\"Karāchi\";\"other\"\n\"1174872\";\"Kurrachee\";\"other\"\n\"1174872\";\"Kurrachi\";\"other\"\n\"1174872\";\"ka la qi\";\"other\"\n\"1174872\";\"kalachi\";\"other\"\n\"1174872\";\"karachi\";\"other\"\n\"1174872\";\"karaci\";\"other\"\n\"1174872\";\"ke la chi\";\"other\"\n\"1174872\";\"krachy\";\"other\"\n\"1174872\";\"kratshy\";\"other\"\n\"1174872\";\"pechs\";\"other\"\n\"1174872\";\"Карачи\";\"other\"\n\"1174872\";\"קראצ'י\";\"other\"\n\"1174872\";\"كراتشي\";\"other\"\n\"1174872\";\"کراچی\";\"other\"\n\"1174872\";\"ڪراچي\";\"other\"\n\"1174872\";\"कराची\";\"other\"\n\"1174872\";\"ཀ་ར་ཆི\";\"other\"\n\"1174872\";\"カラチ\";\"other\"\n\"1174872\";\"カラーチー\";\"other\"\n\"1174872\";\"卡拉奇\";\"other\"\n\"1174872\";\"喀拉蚩\";\"other\"\n\"1174872\";\"카라치\";\"other\"\n\"1174984\";\"Kanganpur\";\"main\"\n\"1175010\";\"Kandiāro\";\"main\"\n\"1175010\";\"Kandiaro\";\"ascii\"\n\"1175012\";\"Kandiāri\";\"main\"\n\"1175012\";\"Kandiari\";\"ascii\"\n\"1175021\";\"Kandhkot\";\"main\"\n\"1175082\";\"Kāmra\";\"main\"\n\"1175082\";\"Kamra\";\"ascii\"\n\"1175082\";\"Kamara\";\"other\"\n\"1175088\";\"Kamoke\";\"main\"\n\"1175088\";\"Kamoki\";\"other\"\n\"1175088\";\"Kāmoke\";\"other\"\n\"1175088\";\"Kāmoki\";\"other\"\n\"1175098\";\"Kamīr\";\"main\"\n\"1175098\";\"Kamir\";\"ascii\"\n\"1175125\";\"Kamar Mushāni\";\"main\"\n\"1175125\";\"Kamar Mushani\";\"ascii\"\n\"1175156\";\"Kamālia\";\"main\"\n\"1175156\";\"Kamalia\";\"ascii\"\n\"1175180\";\"Kalūr Kot\";\"main\"\n\"1175180\";\"Kalur Kot\";\"ascii\"\n\"1175180\";\"Kallur Kot Town\";\"other\"\n\"1175232\";\"Kallar Kahār\";\"main\"\n\"1175232\";\"Kallar Kahar\";\"ascii\"\n\"1175232\";\"Kalar Kahar\";\"other\"\n\"1175283\";\"Kāleke Mandi\";\"main\"\n\"1175283\";\"Kaleke Mandi\";\"ascii\"\n\"1175283\";\"Mandi Kaleke\";\"other\"\n\"1175296\";\"Kalāt\";\"main\"\n\"1175296\";\"Kalat\";\"ascii\"\n\"1175296\";\"Kelat\";\"other\"\n\"1175296\";\"Khelat\";\"other\"\n\"1175296\";\"Калат\";\"other\"\n\"1175297\";\"Kalāswāla\";\"main\"\n\"1175297\";\"Kalaswala\";\"ascii\"\n\"1175365\";\"Kālābāgh\";\"main\"\n\"1175365\";\"Kalabagh\";\"ascii\"\n\"1175436\";\"Kahūta\";\"main\"\n\"1175436\";\"Kahuta\";\"ascii\"\n\"1175436\";\"Kakhute\";\"other\"\n\"1175436\";\"Кахуте\";\"other\"\n\"1175446\";\"Kohror Pakka\";\"main\"\n\"1175446\";\"Kahror\";\"other\"\n\"1175446\";\"Kehror Pakka Town\";\"other\"\n\"1175446\";\"Kharor\";\"other\"\n\"1175453\";\"Kāhna\";\"main\"\n\"1175453\";\"Kahna\";\"ascii\"\n\"1175453\";\"Kahna Nau\";\"other\"\n\"1175453\";\"Khana\";\"other\"\n\"1175453\";\"Khāna\";\"other\"\n\"1175506\";\"Kadhan\";\"main\"\n\"1175560\";\"Kabīrwāla\";\"main\"\n\"1175560\";\"Kabirwala\";\"ascii\"\n\"1175678\";\"Johi\";\"main\"\n\"1175712\";\"Jīwani\";\"main\"\n\"1175712\";\"Jiwani\";\"ascii\"\n\"1175712\";\"Jinwri\";\"other\"\n\"1175712\";\"Jiunri\";\"other\"\n\"1175712\";\"Jiyuni\";\"other\"\n\"1175712\";\"Jīnwri\";\"other\"\n\"1175748\";\"Jhumra\";\"main\"\n\"1175748\";\"Chak Jhumra\";\"other\"\n\"1175748\";\"Chak Jumra\";\"other\"\n\"1175762\";\"Jhol\";\"main\"\n\"1175864\";\"Jhelum\";\"main\"\n\"1175864\";\"Dzhelam\";\"other\"\n\"1175864\";\"Джелам\";\"other\"\n\"1175870\";\"Jhawāriān\";\"main\"\n\"1175870\";\"Jhawarian\";\"ascii\"\n\"1175873\";\"Jhatpat\";\"main\"\n\"1175873\";\"Jhatpat Sadar\";\"other\"\n\"1175892\";\"Jhang Sadr\";\"main\"\n\"1175892\";\"Jhang Marghiana\";\"other\"\n\"1175892\";\"Jhang Marghiānā\";\"other\"\n\"1175892\";\"Jhang Sadar\";\"other\"\n\"1175892\";\"Jhang-Maghiana\";\"other\"\n\"1175892\";\"Jhang-Maghiāna\";\"other\"\n\"1175892\";\"Maghiana\";\"other\"\n\"1175892\";\"Maghiāna\";\"other\"\n\"1176022\";\"Jauharābād\";\"main\"\n\"1176022\";\"Jauharabad\";\"ascii\"\n\"1176022\";\"Joharabad\";\"other\"\n\"1176035\";\"Jatoi Shimāli\";\"main\"\n\"1176035\";\"Jatoi Shimali\";\"ascii\"\n\"1176035\";\"Jatoi Shumali\";\"other\"\n\"1176048\";\"Jāti\";\"main\"\n\"1176048\";\"Jati\";\"ascii\"\n\"1176048\";\"Mughal Bhim\";\"other\"\n\"1176048\";\"Mughalbhin\";\"other\"\n\"1176106\";\"Jarānwāla\";\"main\"\n\"1176106\";\"Jaranwala\";\"ascii\"\n\"1176206\";\"Jāndiāla Sher Khān\";\"main\"\n\"1176206\";\"Jandiala Sher Khan\";\"ascii\"\n\"1176218\";\"Jand\";\"main\"\n\"1176229\";\"Jamshoro\";\"main\"\n\"1176229\";\"Jam Shoro\";\"other\"\n\"1176229\";\"Jams Shoro\";\"other\"\n\"1176229\";\"Jamsboro\";\"other\"\n\"1176229\";\"Jamshore\";\"other\"\n\"1176229\";\"Jām Shoro\";\"other\"\n\"1176241\";\"Jāmpur\";\"main\"\n\"1176241\";\"Jampur\";\"ascii\"\n\"1176358\";\"Jalālpur Pīrwāla\";\"main\"\n\"1176358\";\"Jalalpur Pirwala\";\"ascii\"\n\"1176358\";\"Jalalpur\";\"other\"\n\"1176368\";\"Jalālpur\";\"main\"\n\"1176368\";\"Jalalpur\";\"ascii\"\n\"1176368\";\"Jalalpur Jattan\";\"other\"\n\"1176444\";\"Jahāniān Shāh\";\"main\"\n\"1176444\";\"Jahanian Shah\";\"ascii\"\n\"1176515\";\"Jacobābād\";\"main\"\n\"1176515\";\"Jacobabad\";\"ascii\"\n\"1176515\";\"Jacobadad\";\"other\"\n\"1176515\";\"Jacobādad\";\"other\"\n\"1176608\";\"Islāmkot\";\"main\"\n\"1176608\";\"Islamkot\";\"ascii\"\n\"1176615\";\"Islāmābād\";\"main\"\n\"1176615\";\"Islamabad\";\"ascii\"\n\"1176615\";\"Islamabade\";\"other\"\n\"1176615\";\"Islamahbad\";\"other\"\n\"1176615\";\"Islamampant\";\"other\"\n\"1176615\";\"Ισλαμαμπάντ\";\"other\"\n\"1176615\";\"Исламабад\";\"other\"\n\"1176734\";\"Hyderābād\";\"main\"\n\"1176734\";\"Hyderabad\";\"ascii\"\n\"1176734\";\"Haidarabad\";\"other\"\n\"1176734\";\"Khajdarabad\";\"other\"\n\"1176734\";\"haidarabada\";\"other\"\n\"1176734\";\"Хайдарабад\";\"other\"\n\"1176734\";\"حيدرآباد سنڌ\";\"other\"\n\"1176734\";\"हैदराबाद\";\"other\"\n\"1176800\";\"Hujra\";\"main\"\n\"1176889\";\"Hingorja\";\"main\"\n\"1176948\";\"Hazro\";\"main\"\n\"1176995\";\"Haveliān\";\"main\"\n\"1176995\";\"Havelian\";\"ascii\"\n\"1176997\";\"Haveli\";\"main\"\n\"1177042\";\"Hāsilpur\";\"main\"\n\"1177042\";\"Hasilpur\";\"ascii\"\n\"1177042\";\"Hasipur\";\"other\"\n\"1177042\";\"Hāsipur\";\"other\"\n\"1177064\";\"Hasan Abdāl\";\"main\"\n\"1177064\";\"Hasan Abdal\";\"ascii\"\n\"1177073\";\"Hārūnābād\";\"main\"\n\"1177073\";\"Harunabad\";\"ascii\"\n\"1177073\";\"Badruwala Mandi\";\"other\"\n\"1177073\";\"Badruwāla Mandi\";\"other\"\n\"1177073\";\"Haroonabad Municipality\";\"other\"\n\"1177073\";\"Haru Zbad\";\"other\"\n\"1177089\";\"Harnoli\";\"main\"\n\"1177089\";\"Haranoli\";\"other\"\n\"1177098\";\"Harnai\";\"main\"\n\"1177098\";\"Harnai Bazar\";\"other\"\n\"1177107\";\"Harīpur\";\"main\"\n\"1177107\";\"Haripur\";\"ascii\"\n\"1177107\";\"Kharipur\";\"other\"\n\"1177107\";\"Харипур\";\"other\"\n\"1177203\";\"Hangu\";\"main\"\n\"1177278\";\"Hāla\";\"main\"\n\"1177278\";\"Hala\";\"ascii\"\n\"1177278\";\"Halu\";\"other\"\n\"1177278\";\"Khala\";\"other\"\n\"1177278\";\"Хала\";\"other\"\n\"1177384\";\"Hāfizābād\";\"main\"\n\"1177384\";\"Hafizabad\";\"ascii\"\n\"1177397\";\"Hadāli\";\"main\"\n\"1177397\";\"Hadali\";\"ascii\"\n\"1177446\";\"Gwādar\";\"main\"\n\"1177446\";\"Gwadar\";\"ascii\"\n\"1177446\";\"Gvadar\";\"other\"\n\"1177446\";\"Gwadur\";\"other\"\n\"1177446\";\"gwadr\";\"other\"\n\"1177446\";\"jwadr\";\"other\"\n\"1177446\";\"Гвадар\";\"other\"\n\"1177446\";\"جوادر\";\"other\"\n\"1177446\";\"گوادر\";\"other\"\n\"1177654\";\"Gujrāt\";\"main\"\n\"1177654\";\"Gujrat\";\"ascii\"\n\"1177654\";\"Gudzharat\";\"other\"\n\"1177654\";\"gjrat\";\"other\"\n\"1177654\";\"Гуджарат\";\"other\"\n\"1177654\";\"گجرات\";\"other\"\n\"1177662\";\"Gujrānwāla\";\"main\"\n\"1177662\";\"Gujranwala\";\"ascii\"\n\"1177662\";\"Gajranvala\";\"other\"\n\"1177662\";\"Гайранвала\";\"other\"\n\"1177662\";\"گوجرانوالہ\";\"other\"\n\"1177682\";\"Gūjar Khān\";\"main\"\n\"1177682\";\"Gujar Khan\";\"ascii\"\n\"1178231\";\"Gojra\";\"main\"\n\"1178338\";\"Gilgit\";\"main\"\n\"1178338\";\"Gilghit\";\"other\"\n\"1178338\";\"گلگت\";\"other\"\n\"1178456\";\"Ghotki\";\"main\"\n\"1178456\";\"Gotki\";\"other\"\n\"1178560\";\"Ghauspur\";\"main\"\n\"1178560\";\"Ghouspur\";\"other\"\n\"1178587\";\"Ghāro\";\"main\"\n\"1178587\";\"Gharo\";\"ascii\"\n\"1178587\";\"Garho\";\"other\"\n\"1178841\";\"Garh Mahārāja\";\"main\"\n\"1178841\";\"Garh Maharaja\";\"ascii\"\n\"1178843\";\"Garhi Yāsīn\";\"main\"\n\"1178843\";\"Garhi Yasin\";\"ascii\"\n\"1178843\";\"Gari Yasin\";\"other\"\n\"1178843\";\"Gharhi Yasin\";\"other\"\n\"1178843\";\"Gāri Yāsin\";\"other\"\n\"1178858\";\"Garhi Khairo\";\"main\"\n\"1178858\";\"Khaira Garhi\";\"other\"\n\"1178858\";\"Khaira Gārhi\";\"other\"\n\"1178902\";\"Goth Garelo\";\"main\"\n\"1178902\";\"Garelo\";\"other\"\n\"1179030\";\"Gandāva\";\"main\"\n\"1179030\";\"Gandava\";\"ascii\"\n\"1179030\";\"Gandawah\";\"other\"\n\"1179061\";\"Gambat\";\"main\"\n\"1179061\";\"Gampat\";\"other\"\n\"1179061\";\"Gumbad\";\"other\"\n\"1179082\";\"Gākuch\";\"main\"\n\"1179082\";\"Gakuch\";\"ascii\"\n\"1179185\";\"Gadāni\";\"main\"\n\"1179185\";\"Gadani\";\"ascii\"\n\"1179223\";\"Fort Abbās\";\"main\"\n\"1179223\";\"Fort Abbas\";\"ascii\"\n\"1179223\";\"Abbas\";\"other\"\n\"1179223\";\"Mandi\";\"other\"\n\"1179255\";\"Fazalpur\";\"main\"\n\"1179305\";\"Chak Two Hundred Forty-Nine TDA\";\"main\"\n\"1179305\";\"Fatehpur\";\"other\"\n\"1179346\";\"Faruka\";\"main\"\n\"1179346\";\"Farooka\";\"other\"\n\"1179377\";\"Faqīrwāli\";\"main\"\n\"1179377\";\"Faqirwali\";\"ascii\"\n\"1179377\";\"Fagirwali\";\"other\"\n\"1179377\";\"Fagīrwāli\";\"other\"\n\"1179377\";\"Faqirwala\";\"other\"\n\"1179377\";\"Faqīrwāla\";\"other\"\n\"1179400\";\"Faisalābād\";\"main\"\n\"1179400\";\"Faisalabad\";\"ascii\"\n\"1179400\";\"Feisalabada\";\"other\"\n\"1179400\";\"Feisalabadas\";\"other\"\n\"1179400\";\"Fejsalabade\";\"other\"\n\"1179400\";\"Lyallpur\";\"other\"\n\"1179400\";\"Shah Faisalabad\";\"other\"\n\"1179400\";\"faisarabado\";\"other\"\n\"1179400\";\"fysl abad\";\"other\"\n\"1179400\";\"Фейсалабаде\";\"other\"\n\"1179400\";\"فيصل آباد\";\"other\"\n\"1179400\";\"فیصل آباد\";\"other\"\n\"1179400\";\"ファイサラバード\";\"other\"\n\"1179400\";\"ファイサラーバード\";\"other\"\n\"1179406\";\"Eminābād\";\"main\"\n\"1179406\";\"Eminabad\";\"ascii\"\n\"1179450\";\"Dunyāpur\";\"main\"\n\"1179450\";\"Dunyapur\";\"ascii\"\n\"1179463\";\"Dunga Bunga\";\"main\"\n\"1179496\";\"Dullewāla\";\"main\"\n\"1179496\";\"Dullewala\";\"ascii\"\n\"1179496\";\"Dull-wali\";\"other\"\n\"1179496\";\"Dullewali\";\"other\"\n\"1179496\";\"Dulliwala\";\"other\"\n\"1179515\";\"Duki\";\"main\"\n\"1179660\";\"Dokri\";\"main\"\n\"1179724\";\"Doāba\";\"main\"\n\"1179724\";\"Doaba\";\"ascii\"\n\"1179757\";\"Dīr\";\"main\"\n\"1179757\";\"Dir\";\"ascii\"\n\"1179758\";\"Diplo\";\"main\"\n\"1179760\";\"Dīpālpur\";\"main\"\n\"1179760\";\"Dipalpur\";\"ascii\"\n\"1179790\";\"Dinga\";\"main\"\n\"1179834\";\"Dijkot\";\"main\"\n\"1179837\";\"Digri\";\"main\"\n\"1179902\";\"Dhoro Nāro\";\"main\"\n\"1179902\";\"Dhoro Naro\";\"ascii\"\n\"1180071\";\"Dhaunkal\";\"main\"\n\"1180071\";\"Dhaonkal\";\"other\"\n\"1180133\";\"Dhanot\";\"main\"\n\"1180281\";\"Dera Ismāīl Khān\";\"main\"\n\"1180281\";\"Dera Ismail Khan\";\"ascii\"\n\"1180289\";\"Dera Ghāzi Khān\";\"main\"\n\"1180289\";\"Dera Ghazi Khan\";\"ascii\"\n\"1180289\";\"Dera Ghoz Khan\";\"other\"\n\"1180289\";\"Deri-Ghazi Khan\";\"other\"\n\"1180295\";\"Dera Bugti\";\"main\"\n\"1180295\";\"Dera Bagti\";\"other\"\n\"1180374\";\"Daur\";\"main\"\n\"1180379\";\"Daultāla\";\"main\"\n\"1180379\";\"Daultala\";\"ascii\"\n\"1180397\";\"Daulatpur\";\"main\"\n\"1180397\";\"Doulatpur\";\"other\"\n\"1180419\";\"Dāūd Khel\";\"main\"\n\"1180419\";\"Daud Khel\";\"ascii\"\n\"1180436\";\"Daska\";\"main\"\n\"1180453\";\"Darya Khān Marri\";\"main\"\n\"1180453\";\"Darya Khan Marri\";\"ascii\"\n\"1180453\";\"Darya Khan Mari\";\"other\"\n\"1180454\";\"Darya Khān\";\"main\"\n\"1180454\";\"Darya Khan\";\"ascii\"\n\"1180454\";\"Darva Khan\";\"other\"\n\"1180454\";\"Darva Khān\";\"other\"\n\"1180454\";\"Darya Khan Daggar\";\"other\"\n\"1180491\";\"Dāro Mehar\";\"main\"\n\"1180491\";\"Daro Mehar\";\"ascii\"\n\"1180491\";\"Daro\";\"other\"\n\"1180491\";\"Durro\";\"other\"\n\"1180729\";\"Dālbandīn\";\"main\"\n\"1180729\";\"Dalbandin\";\"ascii\"\n\"1180752\";\"Dājal\";\"main\"\n\"1180752\";\"Dajal\";\"ascii\"\n\"1180757\";\"Dāira Dīn Panāh\";\"main\"\n\"1180757\";\"Daira Din Panah\";\"ascii\"\n\"1180757\";\"Daira Din Pannah Mustaqil\";\"other\"\n\"1180787\";\"Daggar\";\"main\"\n\"1180787\";\"Dagar\";\"other\"\n\"1180809\";\"Dādu\";\"main\"\n\"1180809\";\"Dadu\";\"ascii\"\n\"1180825\";\"Dādhar\";\"main\"\n\"1180825\";\"Dadhar\";\"ascii\"\n\"1180825\";\"Dhadar\";\"other\"\n\"1180942\";\"Chūniān\";\"main\"\n\"1180942\";\"Chunian\";\"ascii\"\n\"1180983\";\"Chūhar Kāna\";\"main\"\n\"1180983\";\"Chuhar Kana\";\"ascii\"\n\"1180983\";\"Chuchar-kana Mandi\";\"other\"\n\"1180983\";\"Chuhar Kand\";\"other\"\n\"1180983\";\"Chūhar Kānd\";\"other\"\n\"1181022\";\"Chor\";\"main\"\n\"1181022\";\"Chhor\";\"other\"\n\"1181022\";\"Chhor Purano\";\"other\"\n\"1181053\";\"Choa Saidān Shāh\";\"main\"\n\"1181053\";\"Choa Saidan Shah\";\"ascii\"\n\"1181053\";\"Saidan Shah\";\"other\"\n\"1181053\";\"Saidān Shāh\";\"other\"\n\"1181053\";\"Saiyidan Shah\";\"other\"\n\"1181053\";\"Saiyidān Shāh\";\"other\"\n\"1181065\";\"Chitrāl\";\"main\"\n\"1181065\";\"Chitral\";\"ascii\"\n\"1181073\";\"Chishtiān Mandi\";\"main\"\n\"1181073\";\"Chishtian Mandi\";\"ascii\"\n\"1181073\";\"Chistian\";\"other\"\n\"1181096\";\"Chiniot\";\"main\"\n\"1181096\";\"Chaniot\";\"other\"\n\"1181096\";\"Chinot\";\"other\"\n\"1181096\";\"Чиниот\";\"other\"\n\"1181138\";\"Chilās\";\"main\"\n\"1181138\";\"Chilas\";\"ascii\"\n\"1181138\";\"chlas\";\"other\"\n\"1181138\";\"چلاس\";\"other\"\n\"1181163\";\"Chīchāwatni\";\"main\"\n\"1181163\";\"Chichawatni\";\"ascii\"\n\"1181327\";\"Cherāt\";\"main\"\n\"1181327\";\"Cherat\";\"ascii\"\n\"1181327\";\"Cherat Cantonement\";\"other\"\n\"1181327\";\"Cherāt Cantonement\";\"other\"\n\"1181352\";\"Chawinda\";\"main\"\n\"1181439\";\"Chārsadda\";\"main\"\n\"1181439\";\"Charsadda\";\"ascii\"\n\"1181600\";\"Chambar\";\"main\"\n\"1181600\";\"Chakkar\";\"other\"\n\"1181611\";\"Chaman\";\"main\"\n\"1181636\";\"Chakwāl\";\"main\"\n\"1181636\";\"Chakwal\";\"ascii\"\n\"1181887\";\"Chak Āzam Saffo\";\"main\"\n\"1181887\";\"Chak Azam Saffo\";\"ascii\"\n\"1181887\";\"Chak Azam Saho\";\"other\"\n\"1181887\";\"Chak Azam Sahu\";\"other\"\n\"1181910\";\"Chak\";\"main\"\n\"1182092\";\"Būrewāla\";\"main\"\n\"1182092\";\"Burewala\";\"ascii\"\n\"1182159\";\"Bulri\";\"main\"\n\"1182295\";\"Bozdar\";\"main\"\n\"1182577\";\"Bhopālwāla\";\"main\"\n\"1182577\";\"Bhopalwala\";\"ascii\"\n\"1182607\";\"Bhit Shāh\";\"main\"\n\"1182607\";\"Bhit Shah\";\"ascii\"\n\"1182622\";\"Bhiria\";\"main\"\n\"1182637\";\"Bhimbar\";\"main\"\n\"1182637\";\"Bhimber\";\"other\"\n\"1182665\";\"Bhera\";\"main\"\n\"1182665\";\"Bwera\";\"other\"\n\"1182682\";\"Bhawāna\";\"main\"\n\"1182682\";\"Bhawana\";\"ascii\"\n\"1182682\";\"Bawana\";\"other\"\n\"1182682\";\"Bhowana\";\"other\"\n\"1182775\";\"Bhān\";\"main\"\n\"1182775\";\"Bhan\";\"ascii\"\n\"1182787\";\"Bhalwāl\";\"main\"\n\"1182787\";\"Bhalwal\";\"ascii\"\n\"1182815\";\"Bhakkar\";\"main\"\n\"1182829\";\"Bhāi Pheru\";\"main\"\n\"1182829\";\"Bhai Pheru\";\"ascii\"\n\"1182829\";\"Bhar Pheru\";\"other\"\n\"1182829\";\"Mian-ki-Maur\";\"other\"\n\"1182829\";\"Miān-ki-Maur\";\"other\"\n\"1182829\";\"Phool Nagar\";\"other\"\n\"1182872\";\"Bhāg\";\"main\"\n\"1182872\";\"Bhag\";\"ascii\"\n\"1182953\";\"Berāni\";\"main\"\n\"1182953\";\"Berani\";\"ascii\"\n\"1182998\";\"Bela\";\"main\"\n\"1182998\";\"Armabel\";\"other\"\n\"1182998\";\"Armail\";\"other\"\n\"1182998\";\"Armel\";\"other\"\n\"1182998\";\"Beila\";\"other\"\n\"1182998\";\"Kambakia\";\"other\"\n\"1182998\";\"Karabel\";\"other\"\n\"1182998\";\"Las Bela\";\"other\"\n\"1182998\";\"Бела\";\"other\"\n\"1183018\";\"Begowāla\";\"main\"\n\"1183018\";\"Begowala\";\"ascii\"\n\"1183018\";\"Begawala\";\"other\"\n\"1183090\";\"Bat Khela\";\"main\"\n\"1183090\";\"Batkhel\";\"other\"\n\"1183105\";\"Batgrām\";\"main\"\n\"1183105\";\"Batgram\";\"ascii\"\n\"1183105\";\"Batagram\";\"other\"\n\"1183105\";\"Batagrām\";\"other\"\n\"1183105\";\"Batgran\";\"other\"\n\"1183105\";\"Batgrān\";\"other\"\n\"1183105\";\"Battagram\";\"other\"\n\"1183105\";\"Battagrām\";\"other\"\n\"1183224\";\"Basīrpur\";\"main\"\n\"1183224\";\"Basirpur\";\"ascii\"\n\"1183307\";\"Bārkhān\";\"main\"\n\"1183307\";\"Barkhan\";\"ascii\"\n\"1183307\";\"بارکھان\";\"other\"\n\"1183460\";\"Bannu\";\"main\"\n\"1183511\";\"Bāndhi\";\"main\"\n\"1183511\";\"Bandhi\";\"ascii\"\n\"1183749\";\"Bakhri Ahmad Khan\";\"main\"\n\"1183880\";\"Bahāwalpur\";\"main\"\n\"1183880\";\"Bahawalpur\";\"ascii\"\n\"1183880\";\"Bakhavalpura\";\"other\"\n\"1183880\";\"Бахавалпура\";\"other\"\n\"1183883\";\"Bahāwalnagar\";\"main\"\n\"1183883\";\"Bahawalnagar\";\"ascii\"\n\"1183883\";\"Bahawalpur\";\"other\"\n\"1183883\";\"Bahawatnagar\";\"other\"\n\"1183883\";\"Bahawâlpur\";\"other\"\n\"1183883\";\"بہاولپور\";\"other\"\n\"1183992\";\"Bāgh\";\"main\"\n\"1183992\";\"Bagh\";\"ascii\"\n\"1184008\";\"Bāgarji\";\"main\"\n\"1184008\";\"Bagarji\";\"ascii\"\n\"1184008\";\"Bagerji\";\"other\"\n\"1184020\";\"Baffa\";\"main\"\n\"1184055\";\"Badīn\";\"main\"\n\"1184055\";\"Badin\";\"ascii\"\n\"1184075\";\"Baddomalhi\";\"main\"\n\"1184205\";\"Awārān\";\"main\"\n\"1184205\";\"Awaran\";\"ascii\"\n\"1184249\";\"Attock City\";\"main\"\n\"1184249\";\"Campbellpore\";\"other\"\n\"1184249\";\"Campbellpur\";\"other\"\n\"1184370\";\"Ārifwāla\";\"main\"\n\"1184370\";\"Arifwala\";\"ascii\"\n\"1184569\";\"Amangarh\";\"main\"\n\"1184626\";\"Alīzai\";\"main\"\n\"1184626\";\"Alizai\";\"ascii\"\n\"1184655\";\"Alīpur\";\"main\"\n\"1184655\";\"Alipur\";\"ascii\"\n\"1184701\";\"Alīābad\";\"main\"\n\"1184701\";\"Aliabad\";\"ascii\"\n\"1184752\";\"Akora\";\"main\"\n\"1184752\";\"Akora Khattak\";\"other\"\n\"1184752\";\"Akora Khāttak\";\"other\"\n\"1184752\";\"Акора\";\"other\"\n\"1184845\";\"Ahmadpur East\";\"main\"\n\"1184845\";\"Ahmadpur\";\"other\"\n\"1184845\";\"Ahmedpur East\";\"other\"\n\"1184845\";\"Ahmedpur East Municipality\";\"other\"\n\"1185056\";\"Abbottābād\";\"main\"\n\"1185056\";\"Abbottabad\";\"ascii\"\n\"1330335\";\"Jhang City\";\"main\"\n\"1330335\";\"Jhang\";\"other\"\n\"1332083\";\"Bahāwalnagar\";\"main\"\n\"1332083\";\"Bahawalnagar\";\"ascii\"\n\"1339742\";\"Gulishāh Kach\";\"main\"\n\"1339742\";\"Gulishah Kach\";\"ascii\"\n\"1341204\";\"Nowshera Cantonment\";\"main\"\n\"1347134\";\"Alik Ghund\";\"main\"\n\"1347927\";\"Khadan Khāk\";\"main\"\n\"1347927\";\"Khadan Khak\";\"ascii\"\n\"1347927\";\"Khadar Khak\";\"other\"\n\"1347927\";\"Khadar Khāk\";\"other\"\n\"1356491\";\"Ahmadpur Siāl\";\"main\"\n\"1356491\";\"Ahmadpur Sial\";\"ascii\"\n\"1357699\";\"New Bādāh\";\"main\"\n\"1357699\";\"New Badah\";\"ascii\"\n\"1360491\";\"Tando Ghulām Ali\";\"main\"\n\"1360491\";\"Tando Ghulam Ali\";\"ascii\"\n\"1397479\";\"Dera Murād Jamāli\";\"main\"\n\"1397479\";\"Dera Murad Jamali\";\"ascii\"\n\"1397479\";\"Temple Dera\";\"other\"\n\"1403734\";\"Jām Sāhib\";\"main\"\n\"1403734\";\"Jam Sahib\";\"ascii\"\n\"1410796\";\"Chowki Jamali\";\"main\"\n\"1412008\";\"Sethārja Old\";\"main\"\n\"1412008\";\"Setharja Old\";\"ascii\"\n\"1448637\";\"Risālpur\";\"main\"\n\"1448637\";\"Risalpur\";\"ascii\"\n\"1453226\";\"Noorābād\";\"main\"\n\"1453226\";\"Noorabad\";\"ascii\"\n\"1453226\";\"Nooriabad\";\"other\"\n\"1482305\";\"Alpūrai\";\"main\"\n\"1482305\";\"Alpurai\";\"ascii\"\n\"6457378\";\"Malakwal City\";\"main\"\n\"6940901\";\"Mehmand Chak\";\"main\"\n\"6949083\";\"Basti Dosa\";\"main\"\n\"6949140\";\"Moza Shahwala\";\"main\"\n\"7082481\";\"Khuzdār\";\"main\"\n\"7082481\";\"Khuzdar\";\"ascii\"\n\"7082481\";\"Khuzdar Cantonment\";\"other\"\n\"7082481\";\"Khuzdār Cantonment\";\"other\"\n\"7423730\";\"Īdgāh\";\"main\"\n\"7423730\";\"Idgah\";\"ascii\"\n\"7427390\";\"Dasu\";\"main\"\n\"7536245\";\"Athmuqam\";\"main\"\n\"752967\";\"Żyrardów\";\"main\"\n\"752967\";\"Zyrardow\";\"ascii\"\n\"752968\";\"Żyraków\";\"main\"\n\"752968\";\"Zyrakow\";\"ascii\"\n\"753004\";\"Zwoleń\";\"main\"\n\"753004\";\"Zwolen\";\"ascii\"\n\"753020\";\"Zwierzyniec\";\"main\"\n\"753056\";\"Żurawica\";\"main\"\n\"753056\";\"Zurawica\";\"ascii\"\n\"753130\";\"Żołynia\";\"main\"\n\"753130\";\"Zolynia\";\"ascii\"\n\"753221\";\"Złota\";\"main\"\n\"753221\";\"Zlota\";\"ascii\"\n\"753222\";\"Złota\";\"main\"\n\"753222\";\"Zlota\";\"ascii\"\n\"753276\";\"Zielonka\";\"main\"\n\"753276\";\"ZELENKA\";\"other\"\n\"753276\";\"ЗЕЛЕНКА\";\"other\"\n\"753394\";\"Żelechów\";\"main\"\n\"753394\";\"Zelechow\";\"ascii\"\n\"753395\";\"Żelechlinek\";\"main\"\n\"753395\";\"Zelechlinek\";\"ascii\"\n\"753420\";\"Żegocina\";\"main\"\n\"753420\";\"Zegocina\";\"ascii\"\n\"753420\";\"Rzegocina\";\"other\"\n\"753531\";\"Zbuczyn\";\"main\"\n\"753531\";\"Zbuchinka\";\"other\"\n\"753531\";\"Збучинка\";\"other\"\n\"753549\";\"Zbójna\";\"main\"\n\"753549\";\"Zbojna\";\"ascii\"\n\"753549\";\"Zbujna\";\"other\"\n\"753549\";\"Збуйна\";\"other\"\n\"753611\";\"Zawichost\";\"main\"\n\"753702\";\"Zatory\";\"main\"\n\"753702\";\"Заторы\";\"other\"\n\"753760\";\"Zarzecze\";\"main\"\n\"753762\";\"Zarzecze\";\"main\"\n\"753776\";\"Zarszyn\";\"main\"\n\"753787\";\"Żarnów\";\"main\"\n\"753787\";\"Zarnow\";\"ascii\"\n\"753866\";\"Zamość\";\"main\"\n\"753866\";\"Zamosc\";\"ascii\"\n\"753866\";\"Zamosc'\";\"other\"\n\"753866\";\"Zamosca\";\"other\"\n\"753866\";\"Zamoscia\";\"other\"\n\"753866\";\"Zamose\";\"other\"\n\"753866\";\"Zamost'ye\";\"other\"\n\"753866\";\"Zamost’ye\";\"other\"\n\"753866\";\"Замосць\";\"other\"\n\"753895\";\"Zambrów\";\"main\"\n\"753895\";\"Zambrow\";\"ascii\"\n\"753895\";\"ZAMBRUV\";\"other\"\n\"753895\";\"Zambrov\";\"other\"\n\"753895\";\"ЗАМБРУВ\";\"other\"\n\"753910\";\"Załuski\";\"main\"\n\"753910\";\"Zaluski\";\"ascii\"\n\"754027\";\"Zakrzówek\";\"main\"\n\"754027\";\"Zakrzowek\";\"ascii\"\n\"754066\";\"Zakrzew\";\"main\"\n\"754066\";\"Zakrzow\";\"other\"\n\"754069\";\"Zakroczym\";\"main\"\n\"754069\";\"ZAKROCHIM\";\"other\"\n\"754069\";\"Zakrochim\";\"other\"\n\"754069\";\"ЗАКРОЧИМ\";\"other\"\n\"754092\";\"Zakliczyn\";\"main\"\n\"754195\";\"Zagórz\";\"main\"\n\"754195\";\"Zagorz\";\"ascii\"\n\"754210\";\"Zagnańsk\";\"main\"\n\"754210\";\"Zagnansk\";\"ascii\"\n\"754329\";\"Żabno\";\"main\"\n\"754329\";\"Zabno\";\"ascii\"\n\"754329\";\"Zadno\";\"other\"\n\"754329\";\"Żadno\";\"other\"\n\"754331\";\"Zabłudów\";\"main\"\n\"754331\";\"Zabludow\";\"ascii\"\n\"754331\";\"ZABLUDUV\";\"other\"\n\"754331\";\"ЗАБЛУДУВ\";\"other\"\n\"754351\";\"Ząbki\";\"main\"\n\"754351\";\"Zabki\";\"ascii\"\n\"754351\";\"ZOMBKI\";\"other\"\n\"754351\";\"ЗОМБКИ\";\"other\"\n\"754364\";\"Zabierzów Bocheński\";\"main\"\n\"754364\";\"Zabierzow Bochenski\";\"ascii\"\n\"754364\";\"Zabierzow\";\"other\"\n\"754364\";\"Zabierzów\";\"other\"\n\"754364\";\"Zabierzów Bochenski\";\"other\"\n\"754386\";\"Żabia Wola\";\"main\"\n\"754386\";\"Zabia Wola\";\"ascii\"\n\"754451\";\"Wyszogród\";\"main\"\n\"754451\";\"Wyszogrod\";\"ascii\"\n\"754454\";\"Wyszków\";\"main\"\n\"754454\";\"Wyszkow\";\"ascii\"\n\"754454\";\"VYSHKUV\";\"other\"\n\"754454\";\"Vyshkov\";\"other\"\n\"754454\";\"ВЫШКУВ\";\"other\"\n\"754479\";\"Wysokie Mazowieckie\";\"main\"\n\"754493\";\"Wysokie\";\"main\"\n\"754499\";\"Wysoka Strzyżowska\";\"main\"\n\"754499\";\"Wysoka Strzyzowska\";\"ascii\"\n\"754499\";\"Wysoka\";\"other\"\n\"754508\";\"Wysoka Głogowska\";\"main\"\n\"754508\";\"Wysoka Glogowska\";\"ascii\"\n\"754509\";\"Wysoka\";\"main\"\n\"754520\";\"Wyśmierzyce\";\"main\"\n\"754520\";\"Wysmierzyce\";\"ascii\"\n\"754652\";\"Wydminy\";\"main\"\n\"754652\";\"Vydminy\";\"other\"\n\"754652\";\"Widminnen\";\"other\"\n\"754652\";\"Выдмины\";\"other\"\n\"754800\";\"Wołomin\";\"main\"\n\"754800\";\"Wolomin\";\"ascii\"\n\"754800\";\"VOLOMIN\";\"other\"\n\"754800\";\"ВОЛОМИН\";\"other\"\n\"754847\";\"Wólka Tanewska\";\"main\"\n\"754847\";\"Wolka Tanewska\";\"ascii\"\n\"754886\";\"Wólka Podleśna\";\"main\"\n\"754886\";\"Wolka Podlesna\";\"ascii\"\n\"754886\";\"Wolka\";\"other\"\n\"754886\";\"Wolka pod Lasem\";\"other\"\n\"754886\";\"Wólka\";\"other\"\n\"754886\";\"Wólka pod Lasem\";\"other\"\n\"754897\";\"Wólka Pełkińska\";\"main\"\n\"754897\";\"Wolka Pelkinska\";\"ascii\"\n\"754897\";\"Wola Pelkinska\";\"other\"\n\"754897\";\"Wola Pełkińska\";\"other\"\n\"754912\";\"Wólka Niedźwiedzka\";\"main\"\n\"754912\";\"Wolka Niedzwiedzka\";\"ascii\"\n\"754912\";\"Wolka Niedzwiecka\";\"other\"\n\"754912\";\"Wólka Niedzwiecka\";\"other\"\n\"755118\";\"Wola Uhruska\";\"main\"\n\"755155\";\"Wola Rębkowska\";\"main\"\n\"755155\";\"Wola Rebkowska\";\"ascii\"\n\"755155\";\"Rembkowska Wola\";\"other\"\n\"755276\";\"Wola Jachowa\";\"main\"\n\"755276\";\"Wola Jackowa\";\"other\"\n\"755369\";\"Wojsławice\";\"main\"\n\"755369\";\"Wojslawice\";\"ascii\"\n\"755390\";\"Wojnicz\";\"main\"\n\"755412\";\"Wojcieszków\";\"main\"\n\"755412\";\"Wojcieszkow\";\"ascii\"\n\"755421\";\"Wojciechowice\";\"main\"\n\"755421\";\"Wajeie chowice Jasice\";\"other\"\n\"755421\";\"Wajeie chówice Jasice\";\"other\"\n\"755427\";\"Wojciechów\";\"main\"\n\"755427\";\"Wojciechow\";\"ascii\"\n\"755427\";\"Wojciechow Lubelski\";\"other\"\n\"755427\";\"Wojciechów Lubelski\";\"other\"\n\"755435\";\"Wojaszówka\";\"main\"\n\"755435\";\"Wojaszowka\";\"ascii\"\n\"755438\";\"Wohyń\";\"main\"\n\"755438\";\"Wohyn\";\"ascii\"\n\"755442\";\"Wodynie\";\"main\"\n\"755474\";\"Włodawa\";\"main\"\n\"755474\";\"Wlodawa\";\"ascii\"\n\"755474\";\"Vlodava\";\"other\"\n\"755502\";\"Wizna\";\"main\"\n\"755502\";\"Vizna\";\"other\"\n\"755502\";\"Визна\";\"other\"\n\"755551\";\"Wisznice\";\"main\"\n\"755571\";\"Wiśniowa\";\"main\"\n\"755571\";\"Wisniowa\";\"ascii\"\n\"755572\";\"Wiśniowa\";\"main\"\n\"755572\";\"Wisniowa\";\"ascii\"\n\"755582\";\"Wiśniew\";\"main\"\n\"755582\";\"Wisniew\";\"ascii\"\n\"755593\";\"Wiślica\";\"main\"\n\"755593\";\"Wislica\";\"ascii\"\n\"755594\";\"Wiskitki\";\"main\"\n\"755594\";\"Viskitki\";\"other\"\n\"755594\";\"Wiskiti\";\"other\"\n\"755594\";\"Вискитки\";\"other\"\n\"755609\";\"Winnica\";\"main\"\n\"755609\";\"Vinnica\";\"other\"\n\"755609\";\"Винница\";\"other\"\n\"755670\";\"Wilków\";\"main\"\n\"755670\";\"Wilkow\";\"ascii\"\n\"755675\";\"Wilkołaz\";\"main\"\n\"755675\";\"Wilkolaz\";\"ascii\"\n\"755675\";\"Wilkolaz Pierwszy (do 1999)\";\"other\"\n\"755675\";\"Wilkołaz Pierwszy (do 1999)\";\"other\"\n\"755692\";\"Wilga\";\"main\"\n\"755692\";\"Wilda\";\"other\"\n\"755697\";\"Wilczyce\";\"main\"\n\"755754\";\"Wietrzychowice\";\"main\"\n\"755775\";\"Wierzchosławice\";\"main\"\n\"755775\";\"Wierzchoslawice\";\"ascii\"\n\"755792\";\"Wierzbno\";\"main\"\n\"755810\";\"Wierzbica\";\"main\"\n\"755848\";\"Wieniawa\";\"main\"\n\"755855\";\"Wielopole Skrzyńskie\";\"main\"\n\"755855\";\"Wielopole Skrzynskie\";\"ascii\"\n\"755855\";\"Wielopole\";\"other\"\n\"755873\";\"Wielkie Oczy\";\"main\"\n\"755883\";\"Wielka Wieś\";\"main\"\n\"755883\";\"Wielka Wies\";\"ascii\"\n\"755885\";\"Wielka Wieś\";\"main\"\n\"755885\";\"Wielka Wies\";\"ascii\"\n\"755886\";\"Wieliszew\";\"main\"\n\"755889\";\"Wieliczka\";\"main\"\n\"755889\";\"Velichka\";\"other\"\n\"755889\";\"Velicka\";\"other\"\n\"755889\";\"Veļička\";\"other\"\n\"755889\";\"Величка\";\"other\"\n\"755907\";\"Wielbark\";\"main\"\n\"755907\";\"Vel'bark\";\"other\"\n\"755907\";\"Willenberg\";\"other\"\n\"755907\";\"Вельбарк\";\"other\"\n\"755919\";\"Wieczfnia Kościelna\";\"main\"\n\"755919\";\"Wieczfnia Koscielna\";\"ascii\"\n\"755919\";\"Wieczfnia\";\"other\"\n\"755963\";\"Wiązownica\";\"main\"\n\"755963\";\"Wiazownica\";\"ascii\"\n\"756028\";\"Werbkowice\";\"main\"\n\"756046\";\"Węgrów\";\"main\"\n\"756046\";\"Wegrow\";\"ascii\"\n\"756046\";\"VENGRUV\";\"other\"\n\"756046\";\"Vengaruva\";\"other\"\n\"756046\";\"Vengrov\";\"other\"\n\"756046\";\"Wengrover\";\"other\"\n\"756046\";\"Wengrow\";\"other\"\n\"756046\";\"ВЕНГРУВ\";\"other\"\n\"756048\";\"Węgorzewo\";\"main\"\n\"756048\";\"Wegorzewo\";\"ascii\"\n\"756048\";\"Angerburg\";\"other\"\n\"756048\";\"Wegobork\";\"other\"\n\"756048\";\"Węgobork\";\"other\"\n\"756084\";\"Wawrzeńczyce\";\"main\"\n\"756084\";\"Wawrzenczyce\";\"ascii\"\n\"756091\";\"Wąwolnica\";\"main\"\n\"756091\";\"Wawolnica\";\"ascii\"\n\"756106\";\"Wąsosz\";\"main\"\n\"756106\";\"Wasosz\";\"ascii\"\n\"756120\";\"Wasilków\";\"main\"\n\"756120\";\"Wasilkow\";\"ascii\"\n\"756135\";\"Warsaw\";\"main\"\n\"756135\";\"Barsobia\";\"other\"\n\"756135\";\"VARSHAVA\";\"other\"\n\"756135\";\"Varsa\";\"other\"\n\"756135\";\"Varsava\";\"other\"\n\"756135\";\"Varsavia\";\"other\"\n\"756135\";\"Varsavja\";\"other\"\n\"756135\";\"Varshava\";\"other\"\n\"756135\";\"Varshavae\";\"other\"\n\"756135\";\"Varshovija\";\"other\"\n\"756135\";\"Varsja\";\"other\"\n\"756135\";\"Varsjá\";\"other\"\n\"756135\";\"Varso\";\"other\"\n\"756135\";\"Varsova\";\"other\"\n\"756135\";\"Varsovia\";\"other\"\n\"756135\";\"Varsovia - Warszawa\";\"other\"\n\"756135\";\"Varsovie\";\"other\"\n\"756135\";\"Varsovio\";\"other\"\n\"756135\";\"Varssavi\";\"other\"\n\"756135\";\"Varsuva\";\"other\"\n\"756135\";\"Varsòvia\";\"other\"\n\"756135\";\"Varsó\";\"other\"\n\"756135\";\"Varsóvia\";\"other\"\n\"756135\";\"Varşova\";\"other\"\n\"756135\";\"Varşovia\";\"other\"\n\"756135\";\"Varšava\";\"other\"\n\"756135\";\"Varšuva\";\"other\"\n\"756135\";\"Vársá\";\"other\"\n\"756135\";\"Warsawa\";\"other\"\n\"756135\";\"Warschau\";\"other\"\n\"756135\";\"Warskou\";\"other\"\n\"756135\";\"Warszawa\";\"other\"\n\"756135\";\"Waršawa\";\"other\"\n\"756135\";\"baleusyaba\";\"other\"\n\"756135\";\"hua sha\";\"other\"\n\"756135\";\"varshava\";\"other\"\n\"756135\";\"vorso\";\"other\"\n\"756135\";\"warsw\";\"other\"\n\"756135\";\"warushawa\";\"other\"\n\"756135\";\"wrsh\";\"other\"\n\"756135\";\"wrshw\";\"other\"\n\"756135\";\"wrsw\";\"other\"\n\"756135\";\"wxrsx\";\"other\"\n\"756135\";\"Βαρσοβία\";\"other\"\n\"756135\";\"ВАРШАВА\";\"other\"\n\"756135\";\"Варшавæ\";\"other\"\n\"756135\";\"Варшава\";\"other\"\n\"756135\";\"Варшовия\";\"other\"\n\"756135\";\"Վարշավա\";\"other\"\n\"756135\";\"ווארשע\";\"other\"\n\"756135\";\"ורשה\";\"other\"\n\"756135\";\"װאַרשע\";\"other\"\n\"756135\";\"وارسو\";\"other\"\n\"756135\";\"ورشو\";\"other\"\n\"756135\";\"ۋارشاۋا\";\"other\"\n\"756135\";\"ܘܪܣܘ\";\"other\"\n\"756135\";\"वॉर्सो\";\"other\"\n\"756135\";\"วอร์ซอ\";\"other\"\n\"756135\";\"ვარშავა\";\"other\"\n\"756135\";\"ዋርሶው\";\"other\"\n\"756135\";\"ワルシャワ\";\"other\"\n\"756135\";\"华沙\";\"other\"\n\"756135\";\"華沙\";\"other\"\n\"756135\";\"바르샤바\";\"other\"\n\"756151\";\"Warka\";\"main\"\n\"756151\";\"Varka\";\"other\"\n\"756246\";\"Wadowice Górne\";\"main\"\n\"756246\";\"Wadowice Gorne\";\"ascii\"\n\"756258\";\"Wąchock\";\"main\"\n\"756258\";\"Wachock\";\"ascii\"\n\"756280\";\"Ustrzyki Dolne\";\"main\"\n\"756280\";\"Myasto Ustshiki Dol'ne\";\"other\"\n\"756280\";\"Nizhne-Ustriki\";\"other\"\n\"756280\";\"Nizhniye Ustriki\";\"other\"\n\"756280\";\"Ustriki-Dol'nyye\";\"other\"\n\"756280\";\"Ustshiki-Dol'ne\";\"other\"\n\"756302\";\"Uście Gorlickie\";\"main\"\n\"756302\";\"Uscie Gorlickie\";\"ascii\"\n\"756315\";\"Urzędów\";\"main\"\n\"756315\";\"Urzedow\";\"ascii\"\n\"756316\";\"Urszulin\";\"main\"\n\"756316\";\"Urszula\";\"other\"\n\"756354\";\"Ułęż\";\"main\"\n\"756354\";\"Ulez\";\"ascii\"\n\"756377\";\"Ulanów\";\"main\"\n\"756377\";\"Ulanow\";\"ascii\"\n\"756406\";\"Uherce Mineralne\";\"main\"\n\"756438\";\"Tyszowce\";\"main\"\n\"756438\";\"Typzowce\";\"other\"\n\"756456\";\"Tyrawa Wołoska\";\"main\"\n\"756456\";\"Tyrawa Woloska\";\"ascii\"\n\"756474\";\"Tymbark\";\"main\"\n\"756484\";\"Tykocin\";\"main\"\n\"756484\";\"Тыкоцин\";\"other\"\n\"756485\";\"Tyczyn\";\"main\"\n\"756532\";\"Turze Pole\";\"main\"\n\"756629\";\"Tuczępy\";\"main\"\n\"756629\";\"Tuczepy\";\"ascii\"\n\"756634\";\"Tuchów\";\"main\"\n\"756634\";\"Tuchow\";\"ascii\"\n\"756648\";\"Trzydnik Duży\";\"main\"\n\"756648\";\"Trzydnik Duzy\";\"ascii\"\n\"756692\";\"Trzebieszów\";\"main\"\n\"756692\";\"Trzebieszow\";\"ascii\"\n\"756734\";\"Trzciana\";\"main\"\n\"756735\";\"Trzciana\";\"main\"\n\"756736\";\"Trzciana\";\"main\"\n\"756748\";\"Tryńcza\";\"main\"\n\"756748\";\"Tryncza\";\"ascii\"\n\"756771\";\"Troszyn\";\"main\"\n\"756794\";\"Trojanów\";\"main\"\n\"756794\";\"Trojanow\";\"ascii\"\n\"756825\";\"Trąbki\";\"main\"\n\"756825\";\"Trabki\";\"ascii\"\n\"756826\";\"Trąbki\";\"main\"\n\"756826\";\"Trabki\";\"ascii\"\n\"756826\";\"Trapki\";\"other\"\n\"756867\";\"Tomaszów Mazowiecki\";\"main\"\n\"756867\";\"Tomaszow Mazowiecki\";\"ascii\"\n\"756867\";\"Tomashuv-Mazovecki\";\"other\"\n\"756867\";\"Tomasova Mazovecka\";\"other\"\n\"756867\";\"Tomaszow\";\"other\"\n\"756867\";\"Tomaszów\";\"other\"\n\"756867\";\"Tomašova Mazovecka\";\"other\"\n\"756867\";\"Томашув-Мазовецки\";\"other\"\n\"756868\";\"Tomaszów Lubelski\";\"main\"\n\"756868\";\"Tomaszow Lubelski\";\"ascii\"\n\"756868\";\"Tomashev\";\"other\"\n\"756868\";\"Tomashuv\";\"other\"\n\"756868\";\"Tomashuv-Ljubel'ski\";\"other\"\n\"756868\";\"Tomaszow\";\"other\"\n\"756868\";\"Tomaszów\";\"other\"\n\"756868\";\"Tomoshuv Lyubel'ski\";\"other\"\n\"756868\";\"Томашув-Любельски\";\"other\"\n\"756919\";\"Tłuszcz\";\"main\"\n\"756919\";\"Tluszcz\";\"ascii\"\n\"756919\";\"TLUSHH\";\"other\"\n\"756919\";\"ТЛУЩ\";\"other\"\n\"756938\";\"Terespol\";\"main\"\n\"756938\";\"Terespol'\";\"other\"\n\"756938\";\"Тересполь\";\"other\"\n\"756939\";\"Teresin\";\"main\"\n\"756939\";\"Тересин\";\"other\"\n\"756992\";\"Tczów\";\"main\"\n\"756992\";\"Tczow\";\"ascii\"\n\"756992\";\"Tczow Sredni\";\"other\"\n\"756992\";\"Tczów Średni\";\"other\"\n\"757020\";\"Tarnowiec\";\"main\"\n\"757021\";\"Tarnowiec\";\"main\"\n\"757026\";\"Tarnów\";\"main\"\n\"757026\";\"Tarnow\";\"ascii\"\n\"757026\";\"Tarnov\";\"other\"\n\"757026\";\"Tarnova\";\"other\"\n\"757026\";\"Tarnuv\";\"other\"\n\"757026\";\"tarunufu\";\"other\"\n\"757026\";\"Тарнув\";\"other\"\n\"757026\";\"タルヌフ\";\"other\"\n\"757029\";\"Tarnogród\";\"main\"\n\"757029\";\"Tarnogrod\";\"ascii\"\n\"757033\";\"Tarnobrzeg\";\"main\"\n\"757033\";\"Tarnobzega\";\"other\"\n\"757033\";\"Tarnobzhege\";\"other\"\n\"757033\";\"Tarnobžega\";\"other\"\n\"757033\";\"Тарнобжеге\";\"other\"\n\"757050\";\"Tarłów\";\"main\"\n\"757050\";\"Tarlow\";\"ascii\"\n\"757071\";\"Tarczyn\";\"main\"\n\"757174\";\"Szydłowo\";\"main\"\n\"757174\";\"Szydlowo\";\"ascii\"\n\"757178\";\"Szydłowiec\";\"main\"\n\"757178\";\"Szydlowiec\";\"ascii\"\n\"757182\";\"Szydłów\";\"main\"\n\"757182\";\"Szydlow\";\"ascii\"\n\"757214\";\"Szumowo\";\"main\"\n\"757240\";\"Szreńsk\";\"main\"\n\"757240\";\"Szrensk\";\"ascii\"\n\"757240\";\"Shren'sk\";\"other\"\n\"757240\";\"Шреньск\";\"other\"\n\"757322\";\"Szerzyny\";\"main\"\n\"757335\";\"Szepietowo\";\"main\"\n\"757335\";\"Shepetovo-Stac'ja\";\"other\"\n\"757335\";\"Szepetowo\";\"other\"\n\"757335\";\"Szepietowo-Stacja\";\"other\"\n\"757335\";\"Шепетово-Стацья\";\"other\"\n\"757343\";\"Szelków\";\"main\"\n\"757343\";\"Szelkow\";\"ascii\"\n\"757343\";\"Stary Szelkow (do 1999)\";\"other\"\n\"757343\";\"Stary Szelków (do 1999)\";\"other\"\n\"757343\";\"Szelkow Stary\";\"other\"\n\"757343\";\"Szelków Stary\";\"other\"\n\"757357\";\"Szczytno\";\"main\"\n\"757357\";\"Ortel'sberg\";\"other\"\n\"757357\";\"Ortelsburg\";\"other\"\n\"757357\";\"Ortel’sberg\";\"other\"\n\"757357\";\"Shhitno\";\"other\"\n\"757357\";\"Szczyton\";\"other\"\n\"757357\";\"Щитно\";\"other\"\n\"757376\";\"Szczurowa\";\"main\"\n\"757386\";\"Szczuczyn\";\"main\"\n\"757386\";\"Szczuczyn Bialostocki\";\"other\"\n\"757386\";\"Szczuczyn Białostocki\";\"other\"\n\"757388\";\"Szczucin\";\"main\"\n\"757452\";\"Szczebrzeszyn\";\"main\"\n\"757461\";\"Szczawnica\";\"main\"\n\"757461\";\"Shhavnica\";\"other\"\n\"757461\";\"Szczawnica Wyzna\";\"other\"\n\"757461\";\"Szczawnica Wyżna\";\"other\"\n\"757461\";\"Szczawnica Zdroj\";\"other\"\n\"757461\";\"Szczawnica Zdrój\";\"other\"\n\"757461\";\"Щавница\";\"other\"\n\"757472\";\"Szastarka\";\"main\"\n\"757512\";\"Szaflary\";\"main\"\n\"757531\";\"Sypniewo\";\"main\"\n\"757608\";\"Swiętajno\";\"main\"\n\"757608\";\"Swietajno\";\"ascii\"\n\"757610\";\"Świętajno\";\"main\"\n\"757610\";\"Swietajno\";\"ascii\"\n\"757610\";\"Altkirchen\";\"other\"\n\"757610\";\"Schwentainen\";\"other\"\n\"757610\";\"Sventajno\";\"other\"\n\"757610\";\"Свентайно\";\"other\"\n\"757692\";\"Świdnik\";\"main\"\n\"757692\";\"Swidnik\";\"ascii\"\n\"757692\";\"Swidnik Duzy\";\"other\"\n\"757692\";\"Świdnik Duży\";\"other\"\n\"757718\";\"Suwałki\";\"main\"\n\"757718\";\"Suwalki\";\"ascii\"\n\"757718\";\"SUVALKI\";\"other\"\n\"757718\";\"Suvalkai\";\"other\"\n\"757718\";\"Suvalki\";\"other\"\n\"757718\";\"Suwalkie\";\"other\"\n\"757718\";\"СУВАЛКИ\";\"other\"\n\"757751\";\"Suraż\";\"main\"\n\"757751\";\"Suraz\";\"ascii\"\n\"757751\";\"SURAZH\";\"other\"\n\"757751\";\"СУРАЖ\";\"other\"\n\"757758\";\"Supraśl\";\"main\"\n\"757758\";\"Suprasl\";\"ascii\"\n\"757758\";\"Suprasl'\";\"other\"\n\"757758\";\"Супрасль\";\"other\"\n\"757782\";\"Sułkowice\";\"main\"\n\"757782\";\"Sulkowice\";\"ascii\"\n\"757809\";\"Sulejówek\";\"main\"\n\"757809\";\"Sulejowek\";\"ascii\"\n\"757848\";\"Suchożebry\";\"main\"\n\"757848\";\"Suchozebry\";\"ascii\"\n\"757848\";\"Sukhozhebry\";\"other\"\n\"757848\";\"Сухожебры\";\"other\"\n\"757850\";\"Suchowola\";\"main\"\n\"757886\";\"Suchedniów\";\"main\"\n\"757886\";\"Suchedniow\";\"ascii\"\n\"757894\";\"Sucha\";\"main\"\n\"757894\";\"Sucha Szlachecka\";\"other\"\n\"757912\";\"Stupsk\";\"main\"\n\"757912\";\"Ступск\";\"other\"\n\"757948\";\"Stubno\";\"main\"\n\"757953\";\"Strzyżowice\";\"main\"\n\"757953\";\"Strzyzowice\";\"ascii\"\n\"757957\";\"Strzyżów\";\"main\"\n\"757957\";\"Strzyzow\";\"ascii\"\n\"757957\";\"Stzyzow\";\"other\"\n\"757957\";\"Stzyżów\";\"other\"\n\"757993\";\"Strzegowo\";\"main\"\n\"757993\";\"Strzegowo-Osada\";\"other\"\n\"757993\";\"Stshegovo-Osada\";\"other\"\n\"757993\";\"Стшегово-Осада\";\"other\"\n\"758013\";\"Stryków\";\"main\"\n\"758013\";\"Strykow\";\"ascii\"\n\"758071\";\"Stromiec\";\"main\"\n\"758090\";\"Strawczyn\";\"main\"\n\"758110\";\"Strachocina\";\"main\"\n\"758116\";\"Stopnica\";\"main\"\n\"758157\";\"Stoczek Łukowski\";\"main\"\n\"758157\";\"Stoczek Lukowski\";\"ascii\"\n\"758157\";\"Stoczek\";\"other\"\n\"758162\";\"Stoczek\";\"main\"\n\"758162\";\"Stochek\";\"other\"\n\"758162\";\"Сточек\";\"other\"\n\"758175\";\"Stężyca\";\"main\"\n\"758175\";\"Stezyca\";\"ascii\"\n\"758182\";\"Sterdyń\";\"main\"\n\"758182\";\"Sterdyn\";\"ascii\"\n\"758182\";\"Sterdyn'\";\"other\"\n\"758182\";\"Стердынь\";\"other\"\n\"758238\";\"Stawiski\";\"main\"\n\"758238\";\"STAVISKI\";\"other\"\n\"758238\";\"СТАВИСКИ\";\"other\"\n\"758242\";\"Stawiguda\";\"main\"\n\"758242\";\"Stabigotten\";\"other\"\n\"758242\";\"Staviguta\";\"other\"\n\"758242\";\"Ставигута\";\"other\"\n\"758252\";\"Staszów\";\"main\"\n\"758252\";\"Staszow\";\"ascii\"\n\"758252\";\"Stashev\";\"other\"\n\"758282\";\"Stary Sącz\";\"main\"\n\"758282\";\"Stary Sacz\";\"ascii\"\n\"758332\";\"Stare Juchy\";\"main\"\n\"758332\";\"Alt Fliessdorf\";\"other\"\n\"758332\";\"Alt Jucha\";\"other\"\n\"758332\";\"Fliessdorf\";\"other\"\n\"758332\";\"Jucha\";\"other\"\n\"758332\";\"Stare-Jukhy\";\"other\"\n\"758332\";\"Старе-Юхы\";\"other\"\n\"758343\";\"Stare Babice\";\"main\"\n\"758343\";\"Babice Stare\";\"other\"\n\"758390\";\"Starachowice\";\"main\"\n\"758390\";\"Starachowice-Wierzbnik\";\"other\"\n\"758390\";\"Starahovice\";\"other\"\n\"758393\";\"Stąporków\";\"main\"\n\"758393\";\"Staporkow\";\"ascii\"\n\"758415\";\"Stanisławów Pierwszy\";\"main\"\n\"758415\";\"Stanislawow Pierwszy\";\"ascii\"\n\"758416\";\"Stanisławów\";\"main\"\n\"758416\";\"Stanislawow\";\"ascii\"\n\"758416\";\"Stanislavuv\";\"other\"\n\"758416\";\"Станиславув\";\"other\"\n\"758445\";\"Stalowa Wola\";\"main\"\n\"758445\";\"Stalova Vola\";\"other\"\n\"758467\";\"Srokowo\";\"main\"\n\"758467\";\"Drengfurth\";\"other\"\n\"758467\";\"Dryfort\";\"other\"\n\"758467\";\"Srokovo\";\"other\"\n\"758467\";\"Сроково\";\"other\"\n\"758558\";\"Sośnica\";\"main\"\n\"758558\";\"Sosnica\";\"ascii\"\n\"758574\";\"Sońsk\";\"main\"\n\"758574\";\"Sonsk\";\"ascii\"\n\"758574\";\"Son'sk\";\"other\"\n\"758574\";\"Соньск\";\"other\"\n\"758603\";\"Solec-Zdrój\";\"main\"\n\"758603\";\"Solec-Zdroj\";\"ascii\"\n\"758603\";\"Solec\";\"other\"\n\"758605\";\"Solec Nad Wisłą\";\"main\"\n\"758605\";\"Solec Nad Wisla\";\"ascii\"\n\"758624\";\"Sokoły\";\"main\"\n\"758624\";\"Sokoly\";\"ascii\"\n\"758624\";\"Соколы\";\"other\"\n\"758626\";\"Sokołów Podlaski\";\"main\"\n\"758626\";\"Sokolow Podlaski\";\"ascii\"\n\"758626\";\"Sokolow\";\"other\"\n\"758626\";\"Sokoluv-Podljaski\";\"other\"\n\"758626\";\"Sokołów\";\"other\"\n\"758626\";\"Соколув-Подляски\";\"other\"\n\"758633\";\"Sokołów Małopolski\";\"main\"\n\"758633\";\"Sokolow Malopolski\";\"ascii\"\n\"758633\";\"Sokolow\";\"other\"\n\"758633\";\"Sokołów\";\"other\"\n\"758651\";\"Sokółka\";\"main\"\n\"758651\";\"Sokolka\";\"ascii\"\n\"758651\";\"SOKULKA\";\"other\"\n\"758651\";\"Sokola\";\"other\"\n\"758651\";\"Sokulka\";\"other\"\n\"758651\";\"СОКУЛКА\";\"other\"\n\"758681\";\"Sochocin\";\"main\"\n\"758681\";\"Sokhocin\";\"other\"\n\"758681\";\"Сохоцин\";\"other\"\n\"758682\";\"Sochaczew\";\"main\"\n\"758682\";\"Sokhachev\";\"other\"\n\"758682\";\"Сохачев\";\"other\"\n\"758697\";\"Sobolew\";\"main\"\n\"758746\";\"Śniadowo\";\"main\"\n\"758746\";\"Sniadowo\";\"ascii\"\n\"758746\";\"Snjadovo\";\"other\"\n\"758746\";\"Снядово\";\"other\"\n\"758759\";\"Smyków\";\"main\"\n\"758759\";\"Smykow\";\"ascii\"\n\"758850\";\"Słupno\";\"main\"\n\"758850\";\"Slupno\";\"ascii\"\n\"758853\";\"Słupiec\";\"main\"\n\"758853\";\"Slupiec\";\"ascii\"\n\"758857\";\"Słupia\";\"main\"\n\"758857\";\"Slupia\";\"ascii\"\n\"758887\";\"Słopnice\";\"main\"\n\"758887\";\"Slopnice\";\"ascii\"\n\"758905\";\"Słomniki\";\"main\"\n\"758905\";\"Slomniki\";\"ascii\"\n\"758952\";\"Sławno\";\"main\"\n\"758952\";\"Slawno\";\"ascii\"\n\"758973\";\"Sławatycze\";\"main\"\n\"758973\";\"Slawatycze\";\"ascii\"\n\"758973\";\"Slavatiche\";\"other\"\n\"758973\";\"Slavatyche\";\"other\"\n\"758973\";\"Stavapycze\";\"other\"\n\"759007\";\"Skrzyszów\";\"main\"\n\"759007\";\"Skrzyszow\";\"ascii\"\n\"759064\";\"Skórzec\";\"main\"\n\"759064\";\"Skorzec\";\"ascii\"\n\"759092\";\"Skołyszyn\";\"main\"\n\"759092\";\"Skolyszyn\";\"ascii\"\n\"759123\";\"Skierniewice\";\"main\"\n\"759123\";\"Skernevice\";\"other\"\n\"759123\";\"Skernevitsy\";\"other\"\n\"759123\";\"Skieniewice\";\"other\"\n\"759123\";\"Skiernievice\";\"other\"\n\"759123\";\"Скерневице\";\"other\"\n\"759141\";\"Skarżysko-Kamienna\";\"main\"\n\"759141\";\"Skarzysko-Kamienna\";\"ascii\"\n\"759141\";\"Kamenna-Skarzhisko\";\"other\"\n\"759141\";\"Kamienna-Skarzhisko\";\"other\"\n\"759141\";\"Skarzhisko-Kamenna\";\"other\"\n\"759141\";\"Skarzysko\";\"other\"\n\"759141\";\"Скаржиско-Каменна\";\"other\"\n\"759151\";\"Skaryszew\";\"main\"\n\"759172\";\"Skalbmierz\";\"main\"\n\"759194\";\"Osiedle-Nowiny\";\"main\"\n\"759194\";\"Sitkowka\";\"other\"\n\"759194\";\"Sitkowka-Nowiny (do 1999)\";\"other\"\n\"759194\";\"Sitkówka\";\"other\"\n\"759194\";\"Sitkówka-Nowiny (do 1999)\";\"other\"\n\"759275\";\"Sienno\";\"main\"\n\"759301\";\"Sieniawa\";\"main\"\n\"759302\";\"Sieniawa\";\"main\"\n\"759320\";\"Siemiatycze\";\"main\"\n\"759320\";\"Semjatiche\";\"other\"\n\"759320\";\"Semyatichi\";\"other\"\n\"759320\";\"Sjamjatychy\";\"other\"\n\"759320\";\"Семятиче\";\"other\"\n\"759320\";\"Сямятычы\";\"other\"\n\"759325\";\"Siemiątkowo\";\"main\"\n\"759325\";\"Siemiatkowo\";\"ascii\"\n\"759325\";\"Siemiatkowo Koziebrodzkie\";\"other\"\n\"759325\";\"Siemiątkowo Koziebrodzkie\";\"other\"\n\"759412\";\"Siedlce\";\"main\"\n\"759412\";\"SEDL'CE\";\"other\"\n\"759412\";\"Sedl'ce\";\"other\"\n\"759412\";\"Sedl'tse\";\"other\"\n\"759412\";\"Sedlce\";\"other\"\n\"759412\";\"СЕДЛЬЦЕ\";\"other\"\n\"759412\";\"Седльце\";\"other\"\n\"759466\";\"Serokomla\";\"main\"\n\"759470\";\"Serock\";\"main\"\n\"759470\";\"SEROCK\";\"other\"\n\"759470\";\"СЕРОЦК\";\"other\"\n\"759482\";\"Sępopol\";\"main\"\n\"759482\";\"Sepopol\";\"ascii\"\n\"759482\";\"SEMPOPOL'\";\"other\"\n\"759482\";\"Schippenbeil\";\"other\"\n\"759482\";\"Szepopel\";\"other\"\n\"759482\";\"Szępopel\";\"other\"\n\"759482\";\"СЕМПОПОЛЬ\";\"other\"\n\"759495\";\"Sękowa\";\"main\"\n\"759495\";\"Sekowa\";\"ascii\"\n\"759503\";\"Sejny\";\"main\"\n\"759503\";\"Seinai\";\"other\"\n\"759503\";\"Сейны\";\"other\"\n\"759504\";\"Sędziszów Małopolski\";\"main\"\n\"759504\";\"Sedziszow Malopolski\";\"ascii\"\n\"759504\";\"Seziszow\";\"other\"\n\"759504\";\"Sęziszów\";\"other\"\n\"759507\";\"Sędziszów\";\"main\"\n\"759507\";\"Sedziszow\";\"ascii\"\n\"759534\";\"Sawin\";\"main\"\n\"759579\";\"Sarnaki\";\"main\"\n\"759579\";\"Сарнаки\";\"other\"\n\"759591\";\"Sanok\";\"main\"\n\"759591\";\"Sjanok\";\"other\"\n\"759591\";\"Sunok\";\"other\"\n\"759591\";\"Sánók\";\"other\"\n\"759591\";\"Сянок\";\"other\"\n\"759603\";\"Sandomierz\";\"main\"\n\"759603\";\"Sandomer\";\"other\"\n\"759603\";\"Sandomir\";\"other\"\n\"759603\";\"Sandoměř\";\"other\"\n\"759603\";\"Сандомир\";\"other\"\n\"759631\";\"Samborzec\";\"main\"\n\"759678\";\"Sadowne\";\"main\"\n\"759680\";\"Sadowie\";\"main\"\n\"759689\";\"Sadkowice\";\"main\"\n\"759704\";\"Sabnie\";\"main\"\n\"759722\";\"Rzezawa\";\"main\"\n\"759722\";\"Rzczawa\";\"other\"\n\"759726\";\"Rzewnie\";\"main\"\n\"759734\";\"Rzeszów\";\"main\"\n\"759734\";\"Rzeszow\";\"ascii\"\n\"759734\";\"Reichshof\";\"other\"\n\"759734\";\"Resov\";\"other\"\n\"759734\";\"Resovia\";\"other\"\n\"759734\";\"Zesova\";\"other\"\n\"759734\";\"Zheshev\";\"other\"\n\"759734\";\"Zheshuv\";\"other\"\n\"759734\";\"jeshufu\";\"other\"\n\"759734\";\"Řešov\";\"other\"\n\"759734\";\"Žešova\";\"other\"\n\"759734\";\"Жешув\";\"other\"\n\"759734\";\"ジェシュフ\";\"other\"\n\"759751\";\"Rzepiennik Strzyżewski\";\"main\"\n\"759751\";\"Rzepiennik Strzyzewski\";\"ascii\"\n\"759751\";\"Rzepiennik\";\"other\"\n\"759751\";\"Rżepiennik\";\"other\"\n\"759757\";\"Rzekuń\";\"main\"\n\"759757\";\"Rzekun\";\"ascii\"\n\"759757\";\"Zhekun'\";\"other\"\n\"759757\";\"Жекунь\";\"other\"\n\"759786\";\"Rzeczniów\";\"main\"\n\"759786\";\"Rzeczniow\";\"ascii\"\n\"759802\";\"Rząśnik\";\"main\"\n\"759802\";\"Rzasnik\";\"ascii\"\n\"759814\";\"Rytwiany\";\"main\"\n\"759815\";\"Rytro\";\"main\"\n\"759839\";\"Ryn\";\"main\"\n\"759839\";\"RYN\";\"other\"\n\"759839\";\"Rhein\";\"other\"\n\"759839\";\"РЫН\";\"other\"\n\"759843\";\"Rymanów\";\"main\"\n\"759843\";\"Rymanow\";\"ascii\"\n\"759852\";\"Ryki\";\"main\"\n\"759859\";\"Ryglice\";\"main\"\n\"759981\";\"Rusinów\";\"main\"\n\"759981\";\"Rusinow\";\"ascii\"\n\"760055\";\"Rudnik nad Sanem\";\"main\"\n\"760062\";\"Rudna Wielka\";\"main\"\n\"760063\";\"Rudna Mała\";\"main\"\n\"760063\";\"Rudna Mala\";\"ascii\"\n\"760084\";\"Rudka\";\"main\"\n\"760084\";\"Рудка\";\"other\"\n\"760123\";\"Ruda Maleniecka\";\"main\"\n\"760166\";\"Ruciane-Nida\";\"main\"\n\"760166\";\"Nida\";\"other\"\n\"760166\";\"Nidy\";\"other\"\n\"760166\";\"Nieden\";\"other\"\n\"760166\";\"Niedersee\";\"other\"\n\"760166\";\"Ruciane\";\"other\"\n\"760166\";\"Ruciany\";\"other\"\n\"760166\";\"Rudczanny\";\"other\"\n\"760166\";\"Rudczany\";\"other\"\n\"760203\";\"Rozogi\";\"main\"\n\"760203\";\"Friedrichshof\";\"other\"\n\"760203\";\"Розоги\";\"other\"\n\"760255\";\"Różan\";\"main\"\n\"760255\";\"Rozan\";\"ascii\"\n\"760343\";\"Ropczyce\";\"main\"\n\"760347\";\"Ropa\";\"main\"\n\"760404\";\"Rokietnica\";\"main\"\n\"760414\";\"Rogóźno\";\"main\"\n\"760414\";\"Rogozno\";\"ascii\"\n\"760414\";\"Rogozna\";\"other\"\n\"760414\";\"Rogożna\";\"other\"\n\"760415\";\"Rogóźno\";\"main\"\n\"760415\";\"Rogozno\";\"ascii\"\n\"760488\";\"Reszel\";\"main\"\n\"760488\";\"Reshel'\";\"other\"\n\"760488\";\"Rossel\";\"other\"\n\"760488\";\"Rössel\";\"other\"\n\"760488\";\"Решель\";\"other\"\n\"760490\";\"Repki\";\"main\"\n\"760490\";\"Репки\";\"other\"\n\"760516\";\"Rejowiec Fabryczny\";\"main\"\n\"760518\";\"Rejowiec\";\"main\"\n\"760527\";\"Regnów\";\"main\"\n\"760527\";\"Regnow\";\"ascii\"\n\"760528\";\"Regimin\";\"main\"\n\"760528\";\"Регимин\";\"other\"\n\"760584\";\"Rawa Mazowiecka\";\"main\"\n\"760584\";\"Rawa\";\"other\"\n\"760607\";\"Raszyn\";\"main\"\n\"760607\";\"Radzyn\";\"other\"\n\"760657\";\"Raków\";\"main\"\n\"760657\";\"Rakow\";\"ascii\"\n\"760672\";\"Rajgród\";\"main\"\n\"760672\";\"Rajgrod\";\"ascii\"\n\"760672\";\"RAJGRUD\";\"other\"\n\"760672\";\"РАЙГРУД\";\"other\"\n\"760680\";\"Radzyń Podlaski\";\"main\"\n\"760680\";\"Radzyn Podlaski\";\"ascii\"\n\"760680\";\"Radzyn\";\"other\"\n\"760680\";\"Radzyń\";\"other\"\n\"760684\";\"Radzymin\";\"main\"\n\"760684\";\"RADZYMIN\";\"other\"\n\"760684\";\"РАДЗЫМИН\";\"other\"\n\"760697\";\"Radziłów\";\"main\"\n\"760697\";\"Radzilow\";\"ascii\"\n\"760697\";\"Radziluv\";\"other\"\n\"760697\";\"Радзилув\";\"other\"\n\"760723\";\"Radzanów\";\"main\"\n\"760723\";\"Radzanow\";\"ascii\"\n\"760723\";\"Radzanuv\";\"other\"\n\"760723\";\"Радзанув\";\"other\"\n\"760724\";\"Radzanów\";\"main\"\n\"760724\";\"Radzanow\";\"ascii\"\n\"760727\";\"Radymno\";\"main\"\n\"760745\";\"Radoszyce\";\"main\"\n\"760769\";\"Radomyśl Wielki\";\"main\"\n\"760769\";\"Radomysl Wielki\";\"ascii\"\n\"760778\";\"Radom\";\"main\"\n\"760778\";\"Radoma\";\"other\"\n\"760778\";\"la duo mu\";\"other\"\n\"760778\";\"Радом\";\"other\"\n\"760778\";\"ראדום\";\"other\"\n\"760778\";\"拉多姆\";\"other\"\n\"760783\";\"Radłów\";\"main\"\n\"760783\";\"Radlow\";\"ascii\"\n\"760804\";\"Radgoszcz\";\"main\"\n\"760825\";\"Raczki\";\"main\"\n\"760825\";\"Rachki\";\"other\"\n\"760825\";\"Рачки\";\"other\"\n\"760830\";\"Racławice\";\"main\"\n\"760830\";\"Raclawice\";\"ascii\"\n\"760844\";\"Raciąż\";\"main\"\n\"760844\";\"Raciaz\";\"ascii\"\n\"760892\";\"Puszcza Mariańska\";\"main\"\n\"760892\";\"Puszcza Marianska\";\"ascii\"\n\"760892\";\"Puszcza Marjanska\";\"other\"\n\"760892\";\"Puszcza Marjańska\";\"other\"\n\"760909\";\"Purda\";\"main\"\n\"760909\";\"Gross Purden\";\"other\"\n\"760914\";\"Puńsk\";\"main\"\n\"760914\";\"Punsk\";\"ascii\"\n\"760914\";\"Pun'sk\";\"other\"\n\"760914\";\"Пуньск\";\"other\"\n\"760917\";\"Pułtusk\";\"main\"\n\"760917\";\"Pultusk\";\"ascii\"\n\"760917\";\"PULTUSK\";\"other\"\n\"760917\";\"ПУЛТУСК\";\"other\"\n\"760917\";\"Пултуск\";\"other\"\n\"760924\";\"Puławy\";\"main\"\n\"760924\";\"Pulawy\";\"ascii\"\n\"760924\";\"Pulavy\";\"other\"\n\"760924\";\"Putawy\";\"other\"\n\"760924\";\"puwavu~i\";\"other\"\n\"760924\";\"Пулавы\";\"other\"\n\"760924\";\"プワヴィ\";\"other\"\n\"761008\";\"Przysucha\";\"main\"\n\"761055\";\"Przyłęk\";\"main\"\n\"761055\";\"Przylek\";\"ascii\"\n\"761101\";\"Przyborów\";\"main\"\n\"761101\";\"Przyborow\";\"ascii\"\n\"761131\";\"Przeworsk\";\"main\"\n\"761131\";\"Pshevors'k\";\"other\"\n\"761131\";\"Пшеворськ\";\"other\"\n\"761145\";\"Przesmyki\";\"main\"\n\"761168\";\"Przemyśl\";\"main\"\n\"761168\";\"Przemysl\";\"ascii\"\n\"761168\";\"Peremishl'\";\"other\"\n\"761168\";\"Peremishl’\";\"other\"\n\"761168\";\"Peremyshl'\";\"other\"\n\"761168\";\"Peremyshl’\";\"other\"\n\"761168\";\"Pshemys'l'\";\"other\"\n\"761168\";\"Pshemys’l’\";\"other\"\n\"761168\";\"Перемишль\";\"other\"\n\"761168\";\"Перемышль\";\"other\"\n\"761187\";\"Przędzel\";\"main\"\n\"761187\";\"Przedzel\";\"ascii\"\n\"761210\";\"Przecław\";\"main\"\n\"761210\";\"Przeclaw\";\"ascii\"\n\"761218\";\"Przasnysz\";\"main\"\n\"761218\";\"PSHASNYSH\";\"other\"\n\"761218\";\"Pshasnysh\";\"other\"\n\"761218\";\"ПШАСНЫШ\";\"other\"\n\"761228\";\"Pruszków\";\"main\"\n\"761228\";\"Pruszkow\";\"ascii\"\n\"761228\";\"Prushkov\";\"other\"\n\"761228\";\"Pruskova\";\"other\"\n\"761228\";\"Pruškova\";\"other\"\n\"761228\";\"Прушков\";\"other\"\n\"761255\";\"Pruchnik\";\"main\"\n\"761255\";\"Pruchnik-Miasto\";\"other\"\n\"761258\";\"Proszowice\";\"main\"\n\"761262\";\"Prostki\";\"main\"\n\"761262\";\"Prostken\";\"other\"\n\"761262\";\"Простки\";\"other\"\n\"761273\";\"Promna\";\"main\"\n\"761331\";\"Pozezdrze\";\"main\"\n\"761331\";\"Grossgarten\";\"other\"\n\"761331\";\"Possessern\";\"other\"\n\"761331\";\"Pozedrze\";\"other\"\n\"761331\";\"Pozezdzhe\";\"other\"\n\"761331\";\"Позездже\";\"other\"\n\"761350\";\"Potworów\";\"main\"\n\"761350\";\"Potworow\";\"ascii\"\n\"761390\";\"Poświętne\";\"main\"\n\"761390\";\"Poswietne\";\"ascii\"\n\"761437\";\"Poronin\";\"main\"\n\"761477\";\"Porąbka Uszewska\";\"main\"\n\"761477\";\"Porabka Uszewska\";\"ascii\"\n\"761477\";\"Porabka\";\"other\"\n\"761477\";\"Porąbka\";\"other\"\n\"761546\";\"Poniatowa\";\"main\"\n\"761546\";\"Poniatowo\";\"other\"\n\"761582\";\"Połomia\";\"main\"\n\"761582\";\"Polomia\";\"ascii\"\n\"761582\";\"Polomyja\";\"other\"\n\"761582\";\"Połomyja\";\"other\"\n\"761607\";\"Policzna\";\"main\"\n\"761652\";\"Połaniec\";\"main\"\n\"761652\";\"Polaniec\";\"ascii\"\n\"761653\";\"Polańczyk\";\"main\"\n\"761653\";\"Polanczyk\";\"ascii\"\n\"761663\";\"Pokrzywnica\";\"main\"\n\"761671\";\"Pokrówka\";\"main\"\n\"761671\";\"Pokrowka\";\"ascii\"\n\"761878\";\"Podkowa Leśna\";\"main\"\n\"761878\";\"Podkowa Lesna\";\"ascii\"\n\"761878\";\"Podkova-Les'na\";\"other\"\n\"761878\";\"Подкова-Лесьна\";\"other\"\n\"761921\";\"Podegrodzie\";\"main\"\n\"762021\";\"Płońsk\";\"main\"\n\"762021\";\"Plonsk\";\"ascii\"\n\"762021\";\"PLON'SK\";\"other\"\n\"762021\";\"Plonska\";\"other\"\n\"762021\";\"plwnsq\";\"other\"\n\"762021\";\"ПЛОНЬСК\";\"other\"\n\"762021\";\"Плонск\";\"other\"\n\"762021\";\"פלונסק\";\"other\"\n\"762032\";\"Płoniawy-Bramura\";\"main\"\n\"762032\";\"Ploniawy-Bramura\";\"ascii\"\n\"762056\";\"Pleśna\";\"main\"\n\"762056\";\"Plesna\";\"ascii\"\n\"762106\";\"Piwniczna-Zdrój\";\"main\"\n\"762106\";\"Piwniczna-Zdroj\";\"ascii\"\n\"762118\";\"Piszczac\";\"main\"\n\"762120\";\"Pisz\";\"main\"\n\"762120\";\"Janowa Gora\";\"other\"\n\"762120\";\"Johannisburg\";\"other\"\n\"762120\";\"PISH\";\"other\"\n\"762120\";\"ПИШ\";\"other\"\n\"762199\";\"Pionki\";\"main\"\n\"762201\";\"Pińczów\";\"main\"\n\"762201\";\"Pinczow\";\"ascii\"\n\"762201\";\"Pincow\";\"other\"\n\"762203\";\"Pilzno\";\"main\"\n\"762203\";\"Pilsen\";\"other\"\n\"762223\";\"Pilawa\";\"main\"\n\"762275\";\"Pierzchnica\";\"main\"\n\"762311\";\"Pieniężno\";\"main\"\n\"762311\";\"Pieniezno\";\"ascii\"\n\"762311\";\"Mehlsack\";\"other\"\n\"762311\";\"Melzak\";\"other\"\n\"762331\";\"Piekoszów\";\"main\"\n\"762331\";\"Piekoszow\";\"ascii\"\n\"762361\";\"Piecki\";\"main\"\n\"762361\";\"Pecki\";\"other\"\n\"762361\";\"Peitschendorf\";\"other\"\n\"762361\";\"Пецки\";\"other\"\n\"762366\";\"Piątnica\";\"main\"\n\"762366\";\"Piatnica\";\"ascii\"\n\"762366\";\"Piatnica Poduchowna\";\"other\"\n\"762366\";\"Piątnica Poduchowna\";\"other\"\n\"762381\";\"Piastów\";\"main\"\n\"762381\";\"Piastow\";\"ascii\"\n\"762390\";\"Piaski\";\"main\"\n\"762390\";\"Piaski Luterskie\";\"other\"\n\"762390\";\"Piaski Wielkie\";\"other\"\n\"762423\";\"Piaseczno\";\"main\"\n\"762423\";\"PJASECHNO\";\"other\"\n\"762423\";\"Pjasechno\";\"other\"\n\"762423\";\"ПЯСЕЧНО\";\"other\"\n\"762423\";\"Пјасечно\";\"other\"\n\"762548\";\"Pawłów\";\"main\"\n\"762548\";\"Pawlow\";\"ascii\"\n\"762551\";\"Pawłosiów\";\"main\"\n\"762551\";\"Pawlosiow\";\"ascii\"\n\"762588\";\"Pasym\";\"main\"\n\"762588\";\"Passenheim\";\"other\"\n\"762588\";\"Пасым\";\"other\"\n\"762619\";\"Parysów\";\"main\"\n\"762619\";\"Parysow\";\"ascii\"\n\"762643\";\"Parczew\";\"main\"\n\"762661\";\"Paradyż\";\"main\"\n\"762661\";\"Paradyz\";\"ascii\"\n\"762663\";\"Paprotnia\";\"main\"\n\"762663\";\"Paprotnja\";\"other\"\n\"762663\";\"Папротня\";\"other\"\n\"762664\";\"Paprotnia\";\"main\"\n\"762664\";\"Paprotnja\";\"other\"\n\"762664\";\"Папротня\";\"other\"\n\"762734\";\"Padew Narodowa\";\"main\"\n\"762753\";\"Pacanów\";\"main\"\n\"762753\";\"Pacanow\";\"ascii\"\n\"762769\";\"Ożarów Mazowiecki\";\"main\"\n\"762769\";\"Ozarow Mazowiecki\";\"ascii\"\n\"762769\";\"Ozarow\";\"other\"\n\"762769\";\"Ozarow-Franciszkow\";\"other\"\n\"762769\";\"Ożarów\";\"other\"\n\"762769\";\"Ożarów-Franciszków\";\"other\"\n\"762774\";\"Ożarów\";\"main\"\n\"762774\";\"Ozarow\";\"ascii\"\n\"762788\";\"Otwock\";\"main\"\n\"762788\";\"Otvock\";\"other\"\n\"762788\";\"Otvotsk\";\"other\"\n\"762788\";\"Отвоцк\";\"other\"\n\"762850\";\"Ostrów Mazowiecka\";\"main\"\n\"762850\";\"Ostrow Mazowiecka\";\"ascii\"\n\"762850\";\"Ostrov-Mazovetskiy\";\"other\"\n\"762850\";\"Ostrow\";\"other\"\n\"762850\";\"Ostrow Mazowiecki\";\"other\"\n\"762850\";\"Ostruv-Mazovecka\";\"other\"\n\"762850\";\"Ostrów\";\"other\"\n\"762850\";\"Ostrów Mazowiecki\";\"other\"\n\"762850\";\"Острув-Мазовецка\";\"other\"\n\"762851\";\"Ostrów Lubelski\";\"main\"\n\"762851\";\"Ostrow Lubelski\";\"ascii\"\n\"762851\";\"Ostrow\";\"other\"\n\"762851\";\"Ostrow Podlaski\";\"other\"\n\"762851\";\"Ostrów\";\"other\"\n\"762851\";\"Ostrów Podlaski\";\"other\"\n\"762863\";\"Ostrowiec Świętokrzyski\";\"main\"\n\"762863\";\"Ostrowiec Swietokrzyski\";\"ascii\"\n\"762863\";\"Ostroveca Sventoksiska\";\"other\"\n\"762863\";\"Ostroveca Sventokšiska\";\"other\"\n\"762863\";\"Ostrovets\";\"other\"\n\"762863\";\"Ostrowiec\";\"other\"\n\"762873\";\"Ostrówek\";\"main\"\n\"762873\";\"Ostrowek\";\"ascii\"\n\"762901\";\"Ostrów\";\"main\"\n\"762901\";\"Ostrow\";\"ascii\"\n\"762909\";\"Ostrołęka\";\"main\"\n\"762909\";\"Ostroleka\";\"ascii\"\n\"762909\";\"OSTROLENKA\";\"other\"\n\"762909\";\"Ostrolenka\";\"other\"\n\"762909\";\"osutorou~enka\";\"other\"\n\"762909\";\"ОСТРОЛЕНКА\";\"other\"\n\"762909\";\"オストロウェンカ\";\"other\"\n\"763006\";\"Osiek Jasielski\";\"main\"\n\"763011\";\"Osiek\";\"main\"\n\"763011\";\"Osiel\";\"other\"\n\"763028\";\"Orzysz\";\"main\"\n\"763028\";\"Arys\";\"other\"\n\"763028\";\"Ozhish\";\"other\"\n\"763028\";\"Ожиш\";\"other\"\n\"763063\";\"Orońsko\";\"main\"\n\"763063\";\"Oronsko\";\"ascii\"\n\"763063\";\"Oronsk\";\"other\"\n\"763063\";\"Oronske\";\"other\"\n\"763063\";\"Orońsk\";\"other\"\n\"763063\";\"Orońske\";\"other\"\n\"763066\";\"Orneta\";\"main\"\n\"763066\";\"ORNETA\";\"other\"\n\"763066\";\"Wormditt\";\"other\"\n\"763066\";\"ОРНЕТА\";\"other\"\n\"763069\";\"Orły\";\"main\"\n\"763069\";\"Orly\";\"ascii\"\n\"763094\";\"Orla\";\"main\"\n\"763094\";\"Orlja\";\"other\"\n\"763094\";\"Орля\";\"other\"\n\"763107\";\"Opole Lubelskie\";\"main\"\n\"763107\";\"Opole\";\"other\"\n\"763111\";\"Opoczno\";\"main\"\n\"763111\";\"Opochno\";\"other\"\n\"763111\";\"Опочно\";\"other\"\n\"763113\";\"Opinogóra Górna\";\"main\"\n\"763113\";\"Opinogora Gorna\";\"ascii\"\n\"763120\";\"Opatowiec\";\"main\"\n\"763121\";\"Opatów\";\"main\"\n\"763121\";\"Opatow\";\"ascii\"\n\"763121\";\"Opatov\";\"other\"\n\"763165\";\"Olsztynek\";\"main\"\n\"763165\";\"Hohenstein\";\"other\"\n\"763165\";\"OL'SHTYNEK\";\"other\"\n\"763165\";\"ОЛЬШТЫНЕК\";\"other\"\n\"763166\";\"Olsztyn\";\"main\"\n\"763166\";\"Allenshteyn\";\"other\"\n\"763166\";\"Allenstein\";\"other\"\n\"763166\";\"OL'SHTYN\";\"other\"\n\"763166\";\"ОЛЬШТЫН\";\"other\"\n\"763244\";\"Olszanica\";\"main\"\n\"763260\";\"Oleszyce\";\"main\"\n\"763263\";\"Olesno\";\"main\"\n\"763268\";\"Oleśnica\";\"main\"\n\"763268\";\"Olesnica\";\"ascii\"\n\"763291\";\"Olecko\";\"main\"\n\"763291\";\"Marggrabowa\";\"other\"\n\"763291\";\"Margrabowa\";\"other\"\n\"763291\";\"OLECKO\";\"other\"\n\"763291\";\"Oletzko\";\"other\"\n\"763291\";\"Treuburg\";\"other\"\n\"763291\";\"ОЛЕЦКО\";\"other\"\n\"763361\";\"Ojrzeń\";\"main\"\n\"763361\";\"Ojrzen\";\"ascii\"\n\"763399\";\"Odrzywół\";\"main\"\n\"763399\";\"Odrzywol\";\"ascii\"\n\"763401\";\"Odrzykoń\";\"main\"\n\"763401\";\"Odrzykon\";\"ascii\"\n\"763440\";\"Ochotnica Dolna\";\"main\"\n\"763440\";\"Ochotnica\";\"other\"\n\"763454\";\"Obryte\";\"main\"\n\"763454\";\"Обрыте\";\"other\"\n\"763464\";\"Obrazów\";\"main\"\n\"763464\";\"Obrazow\";\"ascii\"\n\"763510\";\"Nurzec-Stacja\";\"main\"\n\"763510\";\"Nurzec\";\"other\"\n\"763510\";\"Nuzhech-Stac'ja\";\"other\"\n\"763510\";\"Stacja Nurzec\";\"other\"\n\"763510\";\"Нужеч-Стацья\";\"other\"\n\"763517\";\"Nozdrzec\";\"main\"\n\"763519\";\"Nowy Żmigród\";\"main\"\n\"763519\";\"Nowy Zmigrod\";\"ascii\"\n\"763519\";\"Zmigrod Nowy\";\"other\"\n\"763519\";\"Żmigród Nowy\";\"other\"\n\"763521\";\"Nowy Wiśnicz\";\"main\"\n\"763521\";\"Nowy Wisnicz\";\"ascii\"\n\"763521\";\"Wisnicz Nowy\";\"other\"\n\"763521\";\"Wiśnicz Nowy\";\"other\"\n\"763523\";\"Nowy Targ\";\"main\"\n\"763523\";\"Novi Targa\";\"other\"\n\"763523\";\"Novy Targ\";\"other\"\n\"763523\";\"Novy Targas\";\"other\"\n\"763523\";\"Novy-Targ\";\"other\"\n\"763523\";\"Novyy Targ\";\"other\"\n\"763523\";\"Nový Targ\";\"other\"\n\"763523\";\"Новы-Тарг\";\"other\"\n\"763523\";\"ნოვი ტარგი\";\"other\"\n\"763534\";\"Nowy Sącz\";\"main\"\n\"763534\";\"Nowy Sacz\";\"ascii\"\n\"763534\";\"Neu Sandez\";\"other\"\n\"763534\";\"Neu-Sandec\";\"other\"\n\"763534\";\"Novi Sonca\";\"other\"\n\"763534\";\"Novi Sonča\";\"other\"\n\"763534\";\"Novy-Sonch\";\"other\"\n\"763534\";\"Novyy Sandets\";\"other\"\n\"763534\";\"Novyy Sonch\";\"other\"\n\"763534\";\"Ujszandec\";\"other\"\n\"763534\";\"Újszandec\";\"other\"\n\"763534\";\"ノヴィ・ソンチ\";\"other\"\n\"763545\";\"Nowy Korczyn\";\"main\"\n\"763556\";\"Nowy Dwór Mazowiecki\";\"main\"\n\"763556\";\"Nowy Dwor Mazowiecki\";\"ascii\"\n\"763556\";\"Novy Dvor\";\"other\"\n\"763556\";\"Novy-Dvur-Mazovecki\";\"other\"\n\"763556\";\"Nowy Dwor\";\"other\"\n\"763556\";\"Nowy Dwór\";\"other\"\n\"763556\";\"Новы-Двур-Мазовецки\";\"other\"\n\"763585\";\"Nowosielce-Gniewosz\";\"main\"\n\"763585\";\"Nowosielce\";\"other\"\n\"763600\";\"Nowogród\";\"main\"\n\"763600\";\"Nowogrod\";\"ascii\"\n\"763600\";\"NOVOGRUD\";\"other\"\n\"763600\";\"НОВОГРУД\";\"other\"\n\"763608\";\"Nowodwór\";\"main\"\n\"763608\";\"Nowodwor\";\"ascii\"\n\"763659\";\"Nowe Miasto nad Pilicą\";\"main\"\n\"763659\";\"Nowe Miasto nad Pilica\";\"ascii\"\n\"763659\";\"Nowe Miasto\";\"other\"\n\"763661\";\"Nowe Miasto\";\"main\"\n\"763661\";\"Nove-Mjasto\";\"other\"\n\"763661\";\"Nowe Miasto K. Plonska\";\"other\"\n\"763661\";\"Nowe Miasto K. Płońska\";\"other\"\n\"763661\";\"Нове-Място\";\"other\"\n\"763676\";\"Nowe Brzesko\";\"main\"\n\"763676\";\"Brzesko Nowe\";\"other\"\n\"763764\";\"Nowa Słupia\";\"main\"\n\"763764\";\"Nowa Slupia\";\"ascii\"\n\"763764\";\"Slupia Nowa\";\"other\"\n\"763764\";\"Słupia Nowa\";\"other\"\n\"763765\";\"Nowa Sarzyna\";\"main\"\n\"763765\";\"Sarzyna\";\"other\"\n\"763783\";\"Nowa Dęba\";\"main\"\n\"763783\";\"Nowa Deba\";\"ascii\"\n\"763829\";\"Nisko\";\"main\"\n\"763901\";\"Nieporęt\";\"main\"\n\"763901\";\"Nieporet\";\"ascii\"\n\"763901\";\"Neporeng\";\"other\"\n\"763901\";\"Непоренг\";\"other\"\n\"763903\";\"Niepołomice\";\"main\"\n\"763903\";\"Niepolomice\";\"ascii\"\n\"763945\";\"Niemce\";\"main\"\n\"763982\";\"Niedźwiedź\";\"main\"\n\"763982\";\"Niedzwiedz\";\"ascii\"\n\"763992\";\"Niedzica\";\"main\"\n\"763992\";\"Nedzice\";\"other\"\n\"763992\";\"Недзице\";\"other\"\n\"764000\";\"Niedrzwica Duża\";\"main\"\n\"764000\";\"Niedrzwica Duza\";\"ascii\"\n\"764000\";\"Niedrzwica\";\"other\"\n\"764034\";\"Niebocko\";\"main\"\n\"764034\";\"Niebocka\";\"other\"\n\"764039\";\"Nidzica\";\"main\"\n\"764039\";\"NIDZICA\";\"other\"\n\"764039\";\"Neidenburg\";\"other\"\n\"764039\";\"Nibork\";\"other\"\n\"764039\";\"НИДЗИЦА\";\"other\"\n\"764067\";\"Nawojowa\";\"main\"\n\"764067\";\"Nowajowa\";\"other\"\n\"764100\";\"Nasielsk\";\"main\"\n\"764100\";\"NASEL'SK\";\"other\"\n\"764100\";\"НАСЕЛЬСК\";\"other\"\n\"764107\";\"Naruszewo\";\"main\"\n\"764107\";\"Narushevo\";\"other\"\n\"764107\";\"Нарушево\";\"other\"\n\"764117\";\"Narol\";\"main\"\n\"764117\";\"Narol Lipsko\";\"other\"\n\"764125\";\"Narew\";\"main\"\n\"764125\";\"Narev\";\"other\"\n\"764125\";\"Нарев\";\"other\"\n\"764145\";\"Nałęczów\";\"main\"\n\"764145\";\"Naleczow\";\"ascii\"\n\"764194\";\"Nadarzyn\";\"main\"\n\"764204\";\"Myszyniec\";\"main\"\n\"764241\";\"Muszyna\";\"main\"\n\"764269\";\"Mszczonów\";\"main\"\n\"764269\";\"Mszczonow\";\"ascii\"\n\"764269\";\"Mshchonov\";\"other\"\n\"764269\";\"Mstsonoub\";\"other\"\n\"764269\";\"Mszczonovia\";\"other\"\n\"764269\";\"mshtshwnwf\";\"other\"\n\"764269\";\"mushichonufu\";\"other\"\n\"764269\";\"Μστσόνουβ\";\"other\"\n\"764269\";\"Мшчонов\";\"other\"\n\"764269\";\"אמשינאוו\";\"other\"\n\"764269\";\"مشتشونوف\";\"other\"\n\"764269\";\"ムシチョヌフ\";\"other\"\n\"764275\";\"Mszana Górna\";\"main\"\n\"764275\";\"Mszana Gorna\";\"ascii\"\n\"764276\";\"Mszana Dolna\";\"main\"\n\"764292\";\"Mrozy\";\"main\"\n\"764292\";\"Kaluska Wola\";\"other\"\n\"764292\";\"Kałuska Wola\";\"other\"\n\"764292\";\"Wola Kaluska\";\"other\"\n\"764292\";\"Wola Kałuska\";\"other\"\n\"764292\";\"Мрозы\";\"other\"\n\"764312\";\"Mrągowo\";\"main\"\n\"764312\";\"Mragowo\";\"ascii\"\n\"764312\";\"Mrongovo\";\"other\"\n\"764312\";\"Sensburg\";\"other\"\n\"764312\";\"Zadzbork\";\"other\"\n\"764312\";\"Źadzbork\";\"other\"\n\"764312\";\"Мронгово\";\"other\"\n\"764343\";\"Moszczenica\";\"main\"\n\"764407\";\"Mordy\";\"main\"\n\"764407\";\"MORDY\";\"other\"\n\"764407\";\"МОРДЫ\";\"other\"\n\"764421\";\"Mońki\";\"main\"\n\"764421\";\"Monki\";\"ascii\"\n\"764421\";\"MON'KI\";\"other\"\n\"764421\";\"МОНЬКИ\";\"other\"\n\"764486\";\"Mokobody\";\"main\"\n\"764486\";\"Мокободы\";\"other\"\n\"764502\";\"Mogielnica\";\"main\"\n\"764572\";\"Mniszków\";\"main\"\n\"764572\";\"Mniszkow\";\"ascii\"\n\"764602\";\"Młynarze\";\"main\"\n\"764602\";\"Mlynarze\";\"ascii\"\n\"764606\";\"Młodzieszyn\";\"main\"\n\"764606\";\"Mlodzieszyn\";\"ascii\"\n\"764606\";\"Mlodzeshin\";\"other\"\n\"764606\";\"Млодзешин\";\"other\"\n\"764634\";\"Mława\";\"main\"\n\"764634\";\"Mlawa\";\"ascii\"\n\"764634\";\"MLAVA\";\"other\"\n\"764634\";\"Mlava\";\"other\"\n\"764634\";\"МЛАВА\";\"other\"\n\"764659\";\"Mirzec\";\"main\"\n\"764664\";\"Mirów\";\"main\"\n\"764664\";\"Mirow\";\"ascii\"\n\"764670\";\"Mircze\";\"main\"\n\"764679\";\"Mińsk Mazowiecki\";\"main\"\n\"764679\";\"Minsk Mazowiecki\";\"ascii\"\n\"764679\";\"Min'sk-Mazovecki\";\"other\"\n\"764679\";\"Minsk\";\"other\"\n\"764679\";\"Minsk-Mazovetskiy\";\"other\"\n\"764679\";\"Миньск-Мазовецки\";\"other\"\n\"764741\";\"Milejczyce\";\"main\"\n\"764741\";\"Milejchice\";\"other\"\n\"764741\";\"Милейчице\";\"other\"\n\"764749\";\"Milanówek\";\"main\"\n\"764749\";\"Milanowek\";\"ascii\"\n\"764749\";\"MILJANUVEK\";\"other\"\n\"764749\";\"МИЛЯНУВЕК\";\"other\"\n\"764752\";\"Miłakowo\";\"main\"\n\"764752\";\"Milakowo\";\"ascii\"\n\"764752\";\"Liebstadt\";\"other\"\n\"764752\";\"Milakovo\";\"other\"\n\"764752\";\"Милаково\";\"other\"\n\"764777\";\"Mikołajki\";\"main\"\n\"764777\";\"Mikolajki\";\"ascii\"\n\"764777\";\"Nikolaiken\";\"other\"\n\"764777\";\"Миколайки\";\"other\"\n\"764791\";\"Miętne\";\"main\"\n\"764791\";\"Mietne\";\"ascii\"\n\"764849\";\"Mielec\";\"main\"\n\"764849\";\"Melec\";\"other\"\n\"764849\";\"Meleca\";\"other\"\n\"764849\";\"Melets\";\"other\"\n\"764849\";\"Мелец\";\"other\"\n\"764860\";\"Miejsce Piastowe\";\"main\"\n\"764862\";\"Międzyrzec Podlaski\";\"main\"\n\"764862\";\"Miedzyrzec Podlaski\";\"ascii\"\n\"764862\";\"Mendzizeca Podlaska\";\"other\"\n\"764862\";\"Mendzižeca Podļaska\";\"other\"\n\"764862\";\"Mendzyzhec-Podljaski\";\"other\"\n\"764862\";\"Meserici\";\"other\"\n\"764862\";\"Mezhirech'ye\";\"other\"\n\"764862\";\"Mezhirech’ye\";\"other\"\n\"764862\";\"Miedzyrzec\";\"other\"\n\"764862\";\"Międzyrzec\";\"other\"\n\"764862\";\"Mjendzizhec-Podlaski\";\"other\"\n\"764862\";\"Palenkes Mendzizecas\";\"other\"\n\"764862\";\"Palenkės Mendzižecas\";\"other\"\n\"764862\";\"miengjijecheupodeullaseuki\";\"other\"\n\"764862\";\"mytsyrzyk bwdlasky\";\"other\"\n\"764862\";\"Мендзижець Підляський\";\"other\"\n\"764862\";\"Мендзыжец-Подляски\";\"other\"\n\"764862\";\"Мјендзижец-Подласки\";\"other\"\n\"764862\";\"ميتسيرزيك بودلاسكي\";\"other\"\n\"764862\";\"미엥지제츠포들라스키\";\"other\"\n\"764876\";\"Miedzna\";\"main\"\n\"764876\";\"Medzna\";\"other\"\n\"764876\";\"Медзна\";\"other\"\n\"764917\";\"Miechów\";\"main\"\n\"764917\";\"Miechow\";\"ascii\"\n\"764936\";\"Michałowo\";\"main\"\n\"764936\";\"Michalowo\";\"ascii\"\n\"764936\";\"Mikhalovo\";\"other\"\n\"764936\";\"Михалово\";\"other\"\n\"764947\";\"Michałowice\";\"main\"\n\"764947\";\"Michalowice\";\"ascii\"\n\"764947\";\"Michalowice-Osiedle\";\"other\"\n\"764947\";\"Michałowice-Osiedle\";\"other\"\n\"764956\";\"Michałów-Reginów\";\"main\"\n\"764956\";\"Michalow-Reginow\";\"ascii\"\n\"764956\";\"Michalow\";\"other\"\n\"764956\";\"Michałów\";\"other\"\n\"764966\";\"Michałów\";\"main\"\n\"764966\";\"Michalow\";\"ascii\"\n\"764968\";\"Michałów\";\"main\"\n\"764968\";\"Michalow\";\"ascii\"\n\"764969\";\"Michałów\";\"main\"\n\"764969\";\"Michalow\";\"ascii\"\n\"764988\";\"Miastków Kościelny\";\"main\"\n\"764988\";\"Miastkow Koscielny\";\"ascii\"\n\"765017\";\"Mełgiew\";\"main\"\n\"765017\";\"Melgiew\";\"ascii\"\n\"765017\";\"Metgiew\";\"other\"\n\"765028\";\"Medyka\";\"main\"\n\"765030\";\"Mędrzechów\";\"main\"\n\"765030\";\"Medrzechow\";\"ascii\"\n\"765177\";\"Markuszów\";\"main\"\n\"765177\";\"Markuszow\";\"ascii\"\n\"765191\";\"Marki\";\"main\"\n\"765191\";\"MARKI\";\"other\"\n\"765191\";\"МАРКИ\";\"other\"\n\"765274\";\"Maniowy\";\"main\"\n\"765286\";\"Mały Płock\";\"main\"\n\"765286\";\"Maly Plock\";\"ascii\"\n\"765286\";\"Maly-Plock\";\"other\"\n\"765286\";\"Малы-Плоцк\";\"other\"\n\"765313\";\"Małogoszcz\";\"main\"\n\"765313\";\"Malogoszcz\";\"ascii\"\n\"765328\";\"Małkinia Górna\";\"main\"\n\"765328\";\"Malkinia Gorna\";\"ascii\"\n\"765328\";\"Malkinia\";\"other\"\n\"765328\";\"Małkinia\";\"other\"\n\"765430\";\"Maków Mazowiecki\";\"main\"\n\"765430\";\"Makow Mazowiecki\";\"ascii\"\n\"765430\";\"Makow\";\"other\"\n\"765430\";\"Makow nad Orzycem (do 1928)\";\"other\"\n\"765430\";\"Maków\";\"other\"\n\"765430\";\"Maków nad Orzycem (do 1928)\";\"other\"\n\"765600\";\"Maciejowice\";\"main\"\n\"765642\";\"Łyse\";\"main\"\n\"765642\";\"Lyse\";\"ascii\"\n\"765642\";\"Лысе\";\"other\"\n\"765673\";\"Łużna\";\"main\"\n\"765673\";\"Luzna\";\"ascii\"\n\"765681\";\"Lutowiska\";\"main\"\n\"765681\";\"Liutoviska\";\"other\"\n\"765681\";\"Lyutoviska\";\"other\"\n\"765736\";\"Łukowica\";\"main\"\n\"765736\";\"Lukowica\";\"ascii\"\n\"765749\";\"Łuków\";\"main\"\n\"765749\";\"Lukow\";\"ascii\"\n\"765749\";\"Lukov\";\"other\"\n\"765749\";\"Lukuv\";\"other\"\n\"765749\";\"Лукув\";\"other\"\n\"765854\";\"Lubomino\";\"main\"\n\"765854\";\"Arnsdorf\";\"other\"\n\"765854\";\"Ljubomino\";\"other\"\n\"765854\";\"Любомино\";\"other\"\n\"765857\";\"Lubomierz\";\"main\"\n\"765871\";\"Łubnice\";\"main\"\n\"765871\";\"Lubnice\";\"ascii\"\n\"765876\";\"Lublin\";\"main\"\n\"765876\";\"Liublinas\";\"other\"\n\"765876\";\"Ljublin\";\"other\"\n\"765876\";\"Lublina\";\"other\"\n\"765876\";\"Lublino\";\"other\"\n\"765876\";\"Lyublin\";\"other\"\n\"765876\";\"lublini\";\"other\"\n\"765876\";\"lwblyn\";\"other\"\n\"765876\";\"ruburin\";\"other\"\n\"765876\";\"Ļubļina\";\"other\"\n\"765876\";\"Лублин\";\"other\"\n\"765876\";\"Люблин\";\"other\"\n\"765876\";\"Люблін\";\"other\"\n\"765876\";\"לובלין\";\"other\"\n\"765876\";\"ლუბლინი\";\"other\"\n\"765876\";\"ルブリン\";\"other\"\n\"765927\";\"Lubartów\";\"main\"\n\"765927\";\"Lubartow\";\"ascii\"\n\"765927\";\"Lyubartov\";\"other\"\n\"765932\";\"Lubaczów\";\"main\"\n\"765932\";\"Lubaczow\";\"ascii\"\n\"765932\";\"Lyubachev\";\"other\"\n\"765957\";\"Łososina Dolna\";\"main\"\n\"765957\";\"Lososina Dolna\";\"ascii\"\n\"765976\";\"Łosice\";\"main\"\n\"765976\";\"Losice\";\"ascii\"\n\"765976\";\"LOSICE\";\"other\"\n\"765976\";\"ЛОСИЦЕ\";\"other\"\n\"766021\";\"Łoniów\";\"main\"\n\"766021\";\"Loniow\";\"ascii\"\n\"766027\";\"Łomża\";\"main\"\n\"766027\";\"Lomza\";\"ascii\"\n\"766027\";\"Lomzha\";\"other\"\n\"766027\";\"Lomža\";\"other\"\n\"766027\";\"u~omuja\";\"other\"\n\"766027\";\"Ломжа\";\"other\"\n\"766027\";\"ウォムジャ\";\"other\"\n\"766042\";\"Łomianki\";\"main\"\n\"766042\";\"Lomianki\";\"ascii\"\n\"766044\";\"Łomazy\";\"main\"\n\"766044\";\"Lomazy\";\"ascii\"\n\"766073\";\"Łochów\";\"main\"\n\"766073\";\"Lochow\";\"ascii\"\n\"766132\";\"Lisia Góra\";\"main\"\n\"766132\";\"Lisia Gora\";\"ascii\"\n\"766137\";\"Lipsko\";\"main\"\n\"766142\";\"Lipsk\";\"main\"\n\"766142\";\"Липск\";\"other\"\n\"766162\";\"Lipowiec Kościelny\";\"main\"\n\"766162\";\"Lipowiec Koscielny\";\"ascii\"\n\"766191\";\"Lipinki\";\"main\"\n\"766191\";\"Lipniki\";\"other\"\n\"766193\";\"Lipnik\";\"main\"\n\"766197\";\"Lipnik\";\"main\"\n\"766201\";\"Lipnica Wielka\";\"main\"\n\"766210\";\"Lipnica\";\"main\"\n\"766301\";\"Limanowa\";\"main\"\n\"766307\";\"Lidzbark Warmiński\";\"main\"\n\"766307\";\"Lidzbark Warminski\";\"ascii\"\n\"766307\";\"Heilsberg\";\"other\"\n\"766307\";\"Heilsburg\";\"other\"\n\"766307\";\"Kheyl'sberg\";\"other\"\n\"766307\";\"LIDZBARK-VARMIN'SKI\";\"other\"\n\"766307\";\"Licbark\";\"other\"\n\"766307\";\"Lidzbark-Varmin'ski\";\"other\"\n\"766307\";\"ЛИДЗБАРК-ВАРМИНЬСКИ\";\"other\"\n\"766307\";\"Лидзбарк-Варминьски\";\"other\"\n\"766332\";\"Leżajsk\";\"main\"\n\"766332\";\"Lezajsk\";\"ascii\"\n\"766357\";\"Łętownia\";\"main\"\n\"766357\";\"Letownia\";\"ascii\"\n\"766369\";\"Lesznowola\";\"main\"\n\"766373\";\"Leszno\";\"main\"\n\"766373\";\"Leshno\";\"other\"\n\"766373\";\"Лешно\";\"other\"\n\"766435\";\"Leśnica\";\"main\"\n\"766435\";\"Lesnica\";\"ascii\"\n\"766452\";\"Lesko\";\"main\"\n\"766452\";\"Lisko\";\"other\"\n\"766507\";\"Lelkowo\";\"main\"\n\"766507\";\"Lel'kovo\";\"other\"\n\"766507\";\"Lichtenfeld\";\"other\"\n\"766507\";\"Лельково\";\"other\"\n\"766528\";\"Łęki\";\"main\"\n\"766528\";\"Leki\";\"ascii\"\n\"766528\";\"Leki Strzyzowskie\";\"other\"\n\"766528\";\"Łęki Strzyżowskie\";\"other\"\n\"766555\";\"Legionowo\";\"main\"\n\"766555\";\"Jablonna-Legionowo\";\"other\"\n\"766555\";\"Jabłonna-Legionowo\";\"other\"\n\"766555\";\"Legionova\";\"other\"\n\"766555\";\"Legionovo\";\"other\"\n\"766555\";\"Легионово\";\"other\"\n\"766583\";\"Łęczna\";\"main\"\n\"766583\";\"Leczna\";\"ascii\"\n\"766686\";\"Laszki\";\"main\"\n\"766692\";\"Łaszczów\";\"main\"\n\"766692\";\"Laszczow\";\"ascii\"\n\"766692\";\"Laszcow\";\"other\"\n\"766692\";\"Laszozow\";\"other\"\n\"766692\";\"Łaszców\";\"other\"\n\"766692\";\"Łaszozow\";\"other\"\n\"766734\";\"Laskowa\";\"main\"\n\"766757\";\"Łaskarzew\";\"main\"\n\"766757\";\"Laskarzew\";\"ascii\"\n\"766783\";\"Łapy\";\"main\"\n\"766783\";\"Lapy\";\"ascii\"\n\"766783\";\"LAPY\";\"other\"\n\"766783\";\"Zieciuki\";\"other\"\n\"766783\";\"Zięciuki\";\"other\"\n\"766783\";\"ЛАПЫ\";\"other\"\n\"766786\";\"Łapsze Niżne\";\"main\"\n\"766786\";\"Lapsze Nizne\";\"ascii\"\n\"766810\";\"Łańcut\";\"main\"\n\"766810\";\"Lancut\";\"ascii\"\n\"766877\";\"Łącko\";\"main\"\n\"766877\";\"Lacko\";\"ascii\"\n\"766899\";\"Łabowa\";\"main\"\n\"766899\";\"Labowa\";\"ascii\"\n\"766927\";\"Kuźnica\";\"main\"\n\"766927\";\"Kuznica\";\"ascii\"\n\"766927\";\"Kuznica Bialost\";\"other\"\n\"766927\";\"Кузница\";\"other\"\n\"766980\";\"Kurów\";\"main\"\n\"766980\";\"Kurow\";\"ascii\"\n\"766980\";\"Curov - Kurow\";\"other\"\n\"766980\";\"Curovia\";\"other\"\n\"766980\";\"Curóv - Kurów\";\"other\"\n\"766980\";\"Kourob\";\"other\"\n\"766980\";\"Kurau\";\"other\"\n\"766980\";\"Kuriv\";\"other\"\n\"766980\";\"Kurov\";\"other\"\n\"766980\";\"Kurova\";\"other\"\n\"766980\";\"Kuruv\";\"other\"\n\"766980\";\"Kuruvas\";\"other\"\n\"766980\";\"Kuròw\";\"other\"\n\"766980\";\"ku lu fu shi\";\"other\"\n\"766980\";\"ku ruf\";\"other\"\n\"766980\";\"kulupeu\";\"other\"\n\"766980\";\"kuro\";\"other\"\n\"766980\";\"kurov\";\"other\"\n\"766980\";\"kurova\";\"other\"\n\"766980\";\"kuruf\";\"other\"\n\"766980\";\"kurufu\";\"other\"\n\"766980\";\"kwrw\";\"other\"\n\"766980\";\"kwrwf\";\"other\"\n\"766980\";\"kwrwp\";\"other\"\n\"766980\";\"kwurwow\";\"other\"\n\"766980\";\"kyurea\";\"other\"\n\"766980\";\"qwrwb\";\"other\"\n\"766980\";\"rwstay kwrw\";\"other\"\n\"766980\";\"Κουρόβ\";\"other\"\n\"766980\";\"Кураў\";\"other\"\n\"766980\";\"Куров\";\"other\"\n\"766980\";\"Курув\";\"other\"\n\"766980\";\"Курів\";\"other\"\n\"766980\";\"Կուռով\";\"other\"\n\"766980\";\"קוראָב\";\"other\"\n\"766980\";\"קורוב\";\"other\"\n\"766980\";\"روستای کورو\";\"other\"\n\"766980\";\"كوروف\";\"other\"\n\"766980\";\"کورو\";\"other\"\n\"766980\";\"ܟܘܪܘܦ\";\"other\"\n\"766980\";\"ܟܘܼܪܘܿܘ\";\"other\"\n\"766980\";\"ކުރޫފް\";\"other\"\n\"766980\";\"कुरो\";\"other\"\n\"766980\";\"कुरोव\";\"other\"\n\"766980\";\"குரோவ்\";\"other\"\n\"766980\";\"కురోవ్\";\"other\"\n\"766980\";\"ക്യുറോ\";\"other\"\n\"766980\";\"กูรูฟ\";\"other\"\n\"766980\";\"კუროვი\";\"other\"\n\"766980\";\"ኩሩቭ\";\"other\"\n\"766980\";\"クルフ\";\"other\"\n\"766980\";\"库鲁夫市\";\"other\"\n\"766980\";\"쿠루프\";\"other\"\n\"767020\";\"Kunów\";\"main\"\n\"767020\";\"Kunow\";\"ascii\"\n\"767121\";\"Kuczbork-Osada\";\"main\"\n\"767237\";\"Krzywda\";\"main\"\n\"767241\";\"Krzywcza\";\"main\"\n\"767253\";\"Krzynowłoga Mała\";\"main\"\n\"767253\";\"Krzynowloga Mala\";\"ascii\"\n\"767357\";\"Krynki\";\"main\"\n\"767357\";\"Крынки\";\"other\"\n\"767374\";\"Krynica-Zdrój\";\"main\"\n\"767374\";\"Krynica-Zdroj\";\"ascii\"\n\"767374\";\"Krynica Zdroj\";\"other\"\n\"767374\";\"Krynica Zdrój\";\"other\"\n\"767435\";\"Kruklanki\";\"main\"\n\"767435\";\"Kruglanken\";\"other\"\n\"767435\";\"Krukljanki\";\"other\"\n\"767435\";\"Круклянки\";\"other\"\n\"767470\";\"Krosno\";\"main\"\n\"767470\";\"Кросно\";\"other\"\n\"767479\";\"Krościenko Wyżne\";\"main\"\n\"767479\";\"Kroscienko Wyzne\";\"ascii\"\n\"767561\";\"Krempna\";\"main\"\n\"767561\";\"Krepna\";\"other\"\n\"767561\";\"Krępna\";\"other\"\n\"767604\";\"Krasocin\";\"main\"\n\"767605\";\"Krasnystaw\";\"main\"\n\"767605\";\"Krasnostav\";\"other\"\n\"767608\";\"Krasnosielc\";\"main\"\n\"767608\";\"Krasnosel'c\";\"other\"\n\"767608\";\"Красносельц\";\"other\"\n\"767610\";\"Krasnopol\";\"main\"\n\"767610\";\"Krasnopol'\";\"other\"\n\"767610\";\"Краснополь\";\"other\"\n\"767619\";\"Krasnobród\";\"main\"\n\"767619\";\"Krasnobrod\";\"ascii\"\n\"767623\";\"Kraśnik\";\"main\"\n\"767623\";\"Krasnik\";\"ascii\"\n\"767623\";\"Красник\";\"other\"\n\"767647\";\"Krasne\";\"main\"\n\"767653\";\"Krasne\";\"main\"\n\"767673\";\"Krasiczyn\";\"main\"\n\"767736\";\"Kozubszczyzna\";\"main\"\n\"767763\";\"Kozłowo\";\"main\"\n\"767763\";\"Kozlowo\";\"ascii\"\n\"767763\";\"Gross Koslau\";\"other\"\n\"767763\";\"Grosskosel\";\"other\"\n\"767781\";\"Kozłów\";\"main\"\n\"767781\";\"Kozlow\";\"ascii\"\n\"767814\";\"Kozienice\";\"main\"\n\"767814\";\"Kozenitse\";\"other\"\n\"767883\";\"Kowale Oleckie\";\"main\"\n\"767883\";\"Kovale-Olecki\";\"other\"\n\"767883\";\"Kowahlen\";\"other\"\n\"767883\";\"Kowahlen Kreis Treuburg\";\"other\"\n\"767883\";\"Kowale\";\"other\"\n\"767883\";\"Reimannswalde\";\"other\"\n\"767883\";\"Ковале-Олецки\";\"other\"\n\"767908\";\"Kotuń\";\"main\"\n\"767908\";\"Kotun\";\"ascii\"\n\"767908\";\"Kotun'\";\"other\"\n\"767908\";\"Котунь\";\"other\"\n\"767940\";\"Koszyce\";\"main\"\n\"768002\";\"Kosów Lacki\";\"main\"\n\"768002\";\"Kosow Lacki\";\"ascii\"\n\"768002\";\"Kosow\";\"other\"\n\"768002\";\"Kossow\";\"other\"\n\"768002\";\"Kossów\";\"other\"\n\"768002\";\"Kosuv-Ljacki\";\"other\"\n\"768002\";\"Kosów\";\"other\"\n\"768002\";\"Косув-Ляцки\";\"other\"\n\"768081\";\"Korzenna\";\"main\"\n\"768097\";\"Korytnica\";\"main\"\n\"768097\";\"Корытница\";\"other\"\n\"768116\";\"Korsze\";\"main\"\n\"768116\";\"KORSHE\";\"other\"\n\"768116\";\"Korschen\";\"other\"\n\"768116\";\"Korsz\";\"other\"\n\"768116\";\"КОРШЕ\";\"other\"\n\"768123\";\"Stara Kornica\";\"main\"\n\"768123\";\"Kornica Stara\";\"other\"\n\"768123\";\"Stara-Kornica\";\"other\"\n\"768123\";\"SteraKornica\";\"other\"\n\"768123\";\"Стара-Корница\";\"other\"\n\"768136\";\"Korczyna\";\"main\"\n\"768146\";\"Korczew\";\"main\"\n\"768146\";\"Korchev\";\"other\"\n\"768146\";\"Корчев\";\"other\"\n\"768163\";\"Koprzywnica\";\"main\"\n\"768163\";\"Koprzywinica\";\"other\"\n\"768210\";\"Konstantynów\";\"main\"\n\"768210\";\"Konstantynow\";\"ascii\"\n\"768210\";\"Konstantynuv\";\"other\"\n\"768210\";\"Константынув\";\"other\"\n\"768216\";\"Konstancin-Jeziorna\";\"main\"\n\"768216\";\"KONSTANCIN-EZERNA\";\"other\"\n\"768216\";\"Skolimow-Konstancin\";\"other\"\n\"768216\";\"Skolimów-Konstancin\";\"other\"\n\"768216\";\"КОНСТАНЦИН-ЕЗЕРНА\";\"other\"\n\"768218\";\"Końskie\";\"main\"\n\"768218\";\"Konskie\";\"ascii\"\n\"768218\";\"Kon'ske\";\"other\"\n\"768218\";\"Konsk\";\"other\"\n\"768218\";\"Коньске\";\"other\"\n\"768338\";\"Komarówka Podlaska\";\"main\"\n\"768338\";\"Komarowka Podlaska\";\"ascii\"\n\"768344\";\"Komańcza\";\"main\"\n\"768344\";\"Komancza\";\"ascii\"\n\"768785\";\"Kolno\";\"main\"\n\"768785\";\"KOL'NO\";\"other\"\n\"768785\";\"КОЛЬНО\";\"other\"\n\"768805\";\"Kolbuszowa\";\"main\"\n\"768827\";\"Kołaczyce\";\"main\"\n\"768827\";\"Kolaczyce\";\"ascii\"\n\"768846\";\"Kodeń\";\"main\"\n\"768846\";\"Koden\";\"ascii\"\n\"768861\";\"Kock\";\"main\"\n\"768905\";\"Kobyłka\";\"main\"\n\"768905\";\"Kobylka\";\"ascii\"\n\"768940\";\"Kobylanka\";\"main\"\n\"768963\";\"Knyszyn\";\"main\"\n\"768963\";\"KNYSHIN\";\"other\"\n\"768963\";\"КНЫШИН\";\"other\"\n\"768982\";\"Klwów\";\"main\"\n\"768982\";\"Klwow\";\"ascii\"\n\"769046\";\"Kłoczew\";\"main\"\n\"769046\";\"Kloczew\";\"ascii\"\n\"769059\";\"Klimontów\";\"main\"\n\"769059\";\"Klimontow\";\"ascii\"\n\"769061\";\"Klimontów\";\"main\"\n\"769061\";\"Klimontow\";\"ascii\"\n\"769092\";\"Kleszczele\";\"main\"\n\"769092\";\"Kleshcheli\";\"other\"\n\"769092\";\"Klesheli\";\"other\"\n\"769092\";\"Kleshhele\";\"other\"\n\"769092\";\"Клещеле\";\"other\"\n\"769135\";\"Kłaj\";\"main\"\n\"769135\";\"Klaj\";\"ascii\"\n\"769177\";\"Kije\";\"main\"\n\"769250\";\"Kielce\";\"main\"\n\"769250\";\"Kel'ce\";\"other\"\n\"769250\";\"Kel'tsy\";\"other\"\n\"769250\";\"Kelce\";\"other\"\n\"769250\";\"kyerutsu~e\";\"other\"\n\"769250\";\"Келце\";\"other\"\n\"769250\";\"Кельце\";\"other\"\n\"769250\";\"キェルツェ\";\"other\"\n\"769274\";\"Kętrzyn\";\"main\"\n\"769274\";\"Ketrzyn\";\"ascii\"\n\"769274\";\"Ketzyn\";\"other\"\n\"769274\";\"Rastembork\";\"other\"\n\"769274\";\"Rastenburg\";\"other\"\n\"769285\";\"Kępie Żaleszańskie\";\"main\"\n\"769285\";\"Kepie Zaleszanskie\";\"ascii\"\n\"769285\";\"Kepie\";\"other\"\n\"769285\";\"Kępie\";\"other\"\n\"769345\";\"Kazimierz Dolny\";\"main\"\n\"769345\";\"Kazimezh-Dol'ny\";\"other\"\n\"769345\";\"Kazimierz\";\"other\"\n\"769345\";\"Казимеж-Дольны\";\"other\"\n\"769346\";\"Kazimierza Wielka\";\"main\"\n\"769359\";\"Kazanów\";\"main\"\n\"769359\";\"Kazanow\";\"ascii\"\n\"769514\";\"Karniewo\";\"main\"\n\"769514\";\"Karnevo\";\"other\"\n\"769514\";\"Карнево\";\"other\"\n\"769539\";\"Karczew\";\"main\"\n\"769575\";\"Kaniów\";\"main\"\n\"769575\";\"Kaniow\";\"ascii\"\n\"769591\";\"Kańczuga\";\"main\"\n\"769591\";\"Kanczuga\";\"ascii\"\n\"769600\";\"Kampinos\";\"main\"\n\"769600\";\"Кампинос\";\"other\"\n\"769609\";\"Kamionka Wielka\";\"main\"\n\"769640\";\"Kamionka\";\"main\"\n\"769697\";\"Kamienica\";\"main\"\n\"769738\";\"Kałuszyn\";\"main\"\n\"769738\";\"Kaluszyn\";\"ascii\"\n\"769738\";\"KALUSHIN\";\"other\"\n\"769738\";\"Kalushin\";\"other\"\n\"769738\";\"КАЛУШИН\";\"other\"\n\"769835\";\"Kadzidło\";\"main\"\n\"769835\";\"Kadzidlo\";\"ascii\"\n\"769835\";\"Кадзидло\";\"other\"\n\"769981\";\"Józefów\";\"main\"\n\"769981\";\"Jozefow\";\"ascii\"\n\"770005\";\"Józefów\";\"main\"\n\"770005\";\"Jozefow\";\"ascii\"\n\"770025\";\"Jonkowo\";\"main\"\n\"770025\";\"Jonkendorf\";\"other\"\n\"770025\";\"Jonkovo\";\"other\"\n\"770025\";\"Йонково\";\"other\"\n\"770028\";\"Joniec\";\"main\"\n\"770036\";\"Jodłowa\";\"main\"\n\"770036\";\"Jodlowa\";\"ascii\"\n\"770078\";\"Jeziorany\";\"main\"\n\"770078\";\"EZERANY\";\"other\"\n\"770078\";\"Seeburg\";\"other\"\n\"770078\";\"ЕЗЕРАНЫ\";\"other\"\n\"770148\";\"Jedwabno\";\"main\"\n\"770148\";\"Edvabno\";\"other\"\n\"770148\";\"Gedwangen\";\"other\"\n\"770148\";\"Едвабно\";\"other\"\n\"770149\";\"Jedwabne\";\"main\"\n\"770149\";\"EDVABNE\";\"other\"\n\"770149\";\"htbh bydwwbnh\";\"other\"\n\"770149\";\"ЕДВАБНЕ\";\"other\"\n\"770149\";\"הטבח בידוובנה\";\"other\"\n\"770157\";\"Jędrzejów\";\"main\"\n\"770157\";\"Jedrzejow\";\"ascii\"\n\"770157\";\"Yendzheyev\";\"other\"\n\"770160\";\"Jednorożec\";\"main\"\n\"770160\";\"Jednorozec\";\"ascii\"\n\"770160\";\"Ednorozhec\";\"other\"\n\"770160\";\"Еднорожец\";\"other\"\n\"770169\";\"Jedlicze\";\"main\"\n\"770221\";\"Jawornik Polski\";\"main\"\n\"770286\";\"Jastrząb\";\"main\"\n\"770286\";\"Jastrzab\";\"ascii\"\n\"770288\";\"Jastków\";\"main\"\n\"770288\";\"Jastkow\";\"ascii\"\n\"770293\";\"Jasło\";\"main\"\n\"770293\";\"Jaslo\";\"ascii\"\n\"770293\";\"Jasto\";\"other\"\n\"770293\";\"Yaslo\";\"other\"\n\"770293\";\"Ясло\";\"other\"\n\"770295\";\"Jaśliska\";\"main\"\n\"770295\";\"Jasliska\";\"ascii\"\n\"770341\";\"Jasieniec\";\"main\"\n\"770346\";\"Jasienica Rosielna\";\"main\"\n\"770346\";\"Jasienica\";\"other\"\n\"770348\";\"Jasienica\";\"main\"\n\"770380\";\"Jarosław\";\"main\"\n\"770380\";\"Jaroslaw\";\"ascii\"\n\"770380\";\"Jaroslau\";\"other\"\n\"770380\";\"Jaroslav\";\"other\"\n\"770380\";\"Yaroslav\";\"other\"\n\"770380\";\"Ярослав\";\"other\"\n\"770413\";\"Janów Podlaski\";\"main\"\n\"770413\";\"Janow Podlaski\";\"ascii\"\n\"770413\";\"Januv-Podljaski\";\"other\"\n\"770413\";\"Янув-Подляски\";\"other\"\n\"770425\";\"Janów Lubelski\";\"main\"\n\"770425\";\"Janow Lubelski\";\"ascii\"\n\"770425\";\"Janow\";\"other\"\n\"770425\";\"Janów\";\"other\"\n\"770602\";\"Jakubowice Murowane\";\"main\"\n\"770662\";\"Jadów\";\"main\"\n\"770662\";\"Jadow\";\"ascii\"\n\"770662\";\"Jaduv\";\"other\"\n\"770662\";\"Ядув\";\"other\"\n\"770705\";\"Jabłonna Lacka\";\"main\"\n\"770705\";\"Jablonna Lacka\";\"ascii\"\n\"770706\";\"Jabłonna\";\"main\"\n\"770706\";\"Jablonna\";\"ascii\"\n\"770711\";\"Jabłonna\";\"main\"\n\"770711\";\"Jablonna\";\"ascii\"\n\"770711\";\"Jablonna Pierwsza (do 1999)\";\"other\"\n\"770711\";\"Jabłonna Pierwsza (do 1999)\";\"other\"\n\"770721\";\"Jabłonka\";\"main\"\n\"770721\";\"Jablonka\";\"ascii\"\n\"770759\";\"Iwonicz-Zdrój\";\"main\"\n\"770759\";\"Iwonicz-Zdroj\";\"ascii\"\n\"770762\";\"Iwkowa\";\"main\"\n\"770763\";\"Iwierzyce\";\"main\"\n\"770772\";\"Iwaniska\";\"main\"\n\"770792\";\"Iłża\";\"main\"\n\"770792\";\"Ilza\";\"ascii\"\n\"770918\";\"Humniska\";\"main\"\n\"770966\";\"Hrubieszów\";\"main\"\n\"770966\";\"Hrubieszow\";\"ascii\"\n\"770966\";\"Grubeshev\";\"other\"\n\"770966\";\"Grubeshov\";\"other\"\n\"770966\";\"Grubeshuv\";\"other\"\n\"770966\";\"Khrubeshuv\";\"other\"\n\"770986\";\"Horyniec-Zdrój\";\"main\"\n\"770986\";\"Horyniec-Zdroj\";\"ascii\"\n\"770986\";\"Horyniec\";\"other\"\n\"770986\";\"Horyniec Zdroj\";\"other\"\n\"770986\";\"Horyniec Zdrój\";\"other\"\n\"770996\";\"Horodło\";\"main\"\n\"770996\";\"Horodlo\";\"ascii\"\n\"771139\";\"Hańsk\";\"main\"\n\"771139\";\"Hansk\";\"ascii\"\n\"771150\";\"Halinów\";\"main\"\n\"771150\";\"Halinow\";\"ascii\"\n\"771158\";\"Hajnówka\";\"main\"\n\"771158\";\"Hajnowka\";\"ascii\"\n\"771158\";\"KHAJNUVKA\";\"other\"\n\"771158\";\"ХАЙНУВКА\";\"other\"\n\"771165\";\"Haczów\";\"main\"\n\"771165\";\"Haczow\";\"ascii\"\n\"771168\";\"Gzy\";\"main\"\n\"771313\";\"Grybów\";\"main\"\n\"771313\";\"Grybow\";\"ascii\"\n\"771343\";\"Grudusk\";\"main\"\n\"771343\";\"Грудуск\";\"other\"\n\"771348\";\"Grudki\";\"main\"\n\"771348\";\"Grodek\";\"other\"\n\"771348\";\"Grudek\";\"other\"\n\"771348\";\"Gródek\";\"other\"\n\"771348\";\"Грудек\";\"other\"\n\"771374\";\"Gromnik\";\"main\"\n\"771384\";\"Grójec\";\"main\"\n\"771384\";\"Grojec\";\"ascii\"\n\"771401\";\"Grodzisk Mazowiecki\";\"main\"\n\"771401\";\"Grodzisk\";\"other\"\n\"771401\";\"Grodzisk-Mazovecki\";\"other\"\n\"771401\";\"Grodzisk-Mazovetskiy\";\"other\"\n\"771401\";\"Гродзиск-Мазовецки\";\"other\"\n\"771478\";\"Gręboszów\";\"main\"\n\"771478\";\"Greboszow\";\"ascii\"\n\"771481\";\"Grębków\";\"main\"\n\"771481\";\"Grebkow\";\"ascii\"\n\"771481\";\"Grembkuv\";\"other\"\n\"771481\";\"Грембкув\";\"other\"\n\"771506\";\"Grajewo\";\"main\"\n\"771506\";\"Graevo\";\"other\"\n\"771506\";\"Граево\";\"other\"\n\"771566\";\"Grabownica Starzeńska\";\"main\"\n\"771566\";\"Grabownica Starzenska\";\"ascii\"\n\"771566\";\"Grabownica\";\"other\"\n\"771683\";\"Goworowo\";\"main\"\n\"771683\";\"Govorovo\";\"other\"\n\"771683\";\"Говорово\";\"other\"\n\"771687\";\"Gowarczów\";\"main\"\n\"771687\";\"Gowarczow\";\"ascii\"\n\"771723\";\"Gościeradów\";\"main\"\n\"771723\";\"Goscieradow\";\"ascii\"\n\"771723\";\"Goscieradow Ukazowy (do 1999)\";\"other\"\n\"771723\";\"Gościeradów Ukazowy (do 1999)\";\"other\"\n\"771729\";\"Gorzyce\";\"main\"\n\"771731\";\"Gorzyce\";\"main\"\n\"771731\";\"Gorgyce\";\"other\"\n\"771733\";\"Górzno\";\"main\"\n\"771733\";\"Gorzno\";\"ascii\"\n\"771779\";\"Górowo Iławeckie\";\"main\"\n\"771779\";\"Gorowo Ilaweckie\";\"ascii\"\n\"771779\";\"Gorowo\";\"other\"\n\"771779\";\"Górowo\";\"other\"\n\"771779\";\"Landsberg\";\"other\"\n\"771779\";\"Landsberg Ost Preussen\";\"other\"\n\"771788\";\"Górno\";\"main\"\n\"771788\";\"Gorno\";\"ascii\"\n\"771790\";\"Górno\";\"main\"\n\"771790\";\"Gorno\";\"ascii\"\n\"771804\";\"Gorlice\";\"main\"\n\"771804\";\"Горлице\";\"other\"\n\"771804\";\"גארליץ\";\"other\"\n\"771870\";\"Góra Kalwaria\";\"main\"\n\"771870\";\"Gora Kalwaria\";\"ascii\"\n\"771870\";\"Ger\";\"other\"\n\"771870\";\"Gora Kalwarja\";\"other\"\n\"771870\";\"Guer\";\"other\"\n\"771870\";\"Gura-Kal'var'ya\";\"other\"\n\"771870\";\"Góra Kalwarja\";\"other\"\n\"771893\";\"Goniadz\";\"main\"\n\"771893\";\"GONENDZ\";\"other\"\n\"771893\";\"ГОНЕНДЗ\";\"other\"\n\"771901\";\"Gołymin-Ośrodek\";\"main\"\n\"771901\";\"Golymin-Osrodek\";\"ascii\"\n\"771901\";\"Golymin-Os'rodek\";\"other\"\n\"771901\";\"Голымин-Осьродек\";\"other\"\n\"771953\";\"Gołdap\";\"main\"\n\"771953\";\"Goldap\";\"ascii\"\n\"771953\";\"GOLDAP\";\"other\"\n\"771953\";\"ГОЛДАП\";\"other\"\n\"772021\";\"Gnojno\";\"main\"\n\"772023\";\"Gnojnik\";\"main\"\n\"772086\";\"Głogów Małopolski\";\"main\"\n\"772086\";\"Glogow Malopolski\";\"ascii\"\n\"772086\";\"Glogow\";\"other\"\n\"772086\";\"Głogów\";\"other\"\n\"772107\";\"Glinojeck\";\"main\"\n\"772107\";\"Glinoeck\";\"other\"\n\"772107\";\"Glinojek\";\"other\"\n\"772107\";\"Глиноецк\";\"other\"\n\"772195\";\"Giżycko\";\"main\"\n\"772195\";\"Gizycko\";\"ascii\"\n\"772195\";\"GIZHICKO\";\"other\"\n\"772195\";\"Lec\";\"other\"\n\"772195\";\"Lettsen\";\"other\"\n\"772195\";\"Lotzen\";\"other\"\n\"772195\";\"Luczany\";\"other\"\n\"772195\";\"Lutsany\";\"other\"\n\"772195\";\"Lëttsen\";\"other\"\n\"772195\";\"Lötzen\";\"other\"\n\"772195\";\"Łuczany\";\"other\"\n\"772195\";\"ГИЖИЦКО\";\"other\"\n\"772218\";\"Gietrzwałd\";\"main\"\n\"772218\";\"Gietrzwald\";\"ascii\"\n\"772218\";\"Dietrichswalde\";\"other\"\n\"772227\";\"Gierłoż\";\"main\"\n\"772227\";\"Gierloz\";\"ascii\"\n\"772227\";\"Gorlitz\";\"other\"\n\"772227\";\"Görlitz\";\"other\"\n\"772236\";\"Gielniów\";\"main\"\n\"772236\";\"Gielniow\";\"ascii\"\n\"772270\";\"Gdów\";\"main\"\n\"772270\";\"Gdow\";\"ascii\"\n\"772313\";\"Gąsocin\";\"main\"\n\"772313\";\"Gasocin\";\"ascii\"\n\"772313\";\"Gonsocin\";\"other\"\n\"772313\";\"Гонсоцин\";\"other\"\n\"772339\";\"Garwolin\";\"main\"\n\"772339\";\"Garvolin\";\"other\"\n\"772366\";\"Garbów\";\"main\"\n\"772366\";\"Garbow\";\"ascii\"\n\"772372\";\"Garbatka-Letnisko\";\"main\"\n\"772455\";\"Gać\";\"main\"\n\"772455\";\"Gac\";\"ascii\"\n\"772470\";\"Fredropol\";\"main\"\n\"772492\";\"Frampol\";\"main\"\n\"772518\";\"Firlej\";\"main\"\n\"772528\";\"Filipów\";\"main\"\n\"772528\";\"Filipow\";\"ascii\"\n\"772528\";\"Filipuv\";\"other\"\n\"772528\";\"Филипув\";\"other\"\n\"772561\";\"Fałków\";\"main\"\n\"772561\";\"Falkow\";\"ascii\"\n\"772621\";\"Ełk\";\"main\"\n\"772621\";\"Elk\";\"ascii\"\n\"772621\";\"Elka\";\"other\"\n\"772621\";\"Lik\";\"other\"\n\"772621\";\"Lyck\";\"other\"\n\"772644\";\"Dźwierzuty\";\"main\"\n\"772644\";\"Dzwierzuty\";\"ascii\"\n\"772644\";\"Mensguth\";\"other\"\n\"772644\";\"Mensguth Dorf\";\"other\"\n\"772658\";\"Dzików Stary\";\"main\"\n\"772658\";\"Dzikow Stary\";\"ascii\"\n\"772658\";\"Dzikow\";\"other\"\n\"772658\";\"Dzików\";\"other\"\n\"772658\";\"Stary Dzikow\";\"other\"\n\"772658\";\"Stary Dzików\";\"other\"\n\"772667\";\"Dziewin\";\"main\"\n\"772687\";\"Dzierzgowo\";\"main\"\n\"772698\";\"Dzierzążnia\";\"main\"\n\"772698\";\"Dzierzaznia\";\"ascii\"\n\"772698\";\"Dzierzazna\";\"other\"\n\"772698\";\"Dzierząźna\";\"other\"\n\"772747\";\"Działoszyce\";\"main\"\n\"772747\";\"Dzialoszyce\";\"ascii\"\n\"772748\";\"Działdowo\";\"main\"\n\"772748\";\"Dzialdowo\";\"ascii\"\n\"772748\";\"DZJALDOVO\";\"other\"\n\"772748\";\"Soldau\";\"other\"\n\"772748\";\"ДЗЯЛДОВО\";\"other\"\n\"772768\";\"Dywity\";\"main\"\n\"772768\";\"Diwitten\";\"other\"\n\"772768\";\"Dyvity\";\"other\"\n\"772768\";\"Дывиты\";\"other\"\n\"772772\";\"Dynów\";\"main\"\n\"772772\";\"Dynow\";\"ascii\"\n\"772793\";\"Dydnia\";\"main\"\n\"772822\";\"Dwikozy\";\"main\"\n\"772857\";\"Dukla\";\"main\"\n\"772873\";\"Duczki\";\"main\"\n\"772873\";\"Duszki\";\"other\"\n\"772896\";\"Dubienka\";\"main\"\n\"772897\";\"Dubiecko\";\"main\"\n\"772897\";\"dubetsk\";\"other\"\n\"772915\";\"Drzewica\";\"main\"\n\"772959\";\"Drohiczyn\";\"main\"\n\"772959\";\"DROKHICHIN\";\"other\"\n\"772959\";\"Drohiczyn nad Bugiem\";\"other\"\n\"772959\";\"ДРОХИЧИН\";\"other\"\n\"773033\";\"Domaszowice\";\"main\"\n\"773040\";\"Domaradz\";\"main\"\n\"773050\";\"Domanice\";\"main\"\n\"773078\";\"Dołhobyczów\";\"main\"\n\"773078\";\"Dolhobyczow\";\"ascii\"\n\"773100\";\"Dobrzyniewo Duże\";\"main\"\n\"773100\";\"Dobrzyniewo Duze\";\"ascii\"\n\"773100\";\"Dobrzyniewo Wielkie\";\"other\"\n\"773148\";\"Dobre Miasto\";\"main\"\n\"773148\";\"Dobre-Mjasto\";\"other\"\n\"773148\";\"Guttstadt\";\"other\"\n\"773148\";\"Добре-Място\";\"other\"\n\"773165\";\"Dobra\";\"main\"\n\"773165\";\"Dobra Podlopien\";\"other\"\n\"773165\";\"Dobra Podłopień\";\"other\"\n\"773176\";\"Dobczyce\";\"main\"\n\"773217\";\"Długosiodło\";\"main\"\n\"773217\";\"Dlugosiodlo\";\"ascii\"\n\"773217\";\"Dlugosedlo\";\"other\"\n\"773217\";\"Длугоседло\";\"other\"\n\"773250\";\"Długie\";\"main\"\n\"773250\";\"Dlugie\";\"ascii\"\n\"773320\";\"Dębowiec\";\"main\"\n\"773320\";\"Debowiec\";\"ascii\"\n\"773341\";\"Dębno\";\"main\"\n\"773341\";\"Debno\";\"ascii\"\n\"773357\";\"Dęblin\";\"main\"\n\"773357\";\"Deblin\";\"ascii\"\n\"773357\";\"Demblin\";\"other\"\n\"773380\";\"Dębica\";\"main\"\n\"773380\";\"Debica\";\"ascii\"\n\"773380\";\"Dembitsa\";\"other\"\n\"773453\";\"Daleszyce\";\"main\"\n\"773569\";\"Dąbrowa Tarnowska\";\"main\"\n\"773569\";\"Dabrowa Tarnowska\";\"ascii\"\n\"773569\";\"Dabrowa\";\"other\"\n\"773569\";\"Dąbrowa\";\"other\"\n\"773593\";\"Dąbrowa Białostocka\";\"main\"\n\"773593\";\"Dabrowa Bialostocka\";\"ascii\"\n\"773593\";\"Dabrowa\";\"other\"\n\"773593\";\"Dabrowa Grodzienska-Wies\";\"other\"\n\"773593\";\"Dąbrowa\";\"other\"\n\"773593\";\"Dąbrowa Grodzieńska-Wieś\";\"other\"\n\"773676\";\"Czyżew-Osada\";\"main\"\n\"773676\";\"Czyzew-Osada\";\"ascii\"\n\"773676\";\"Chizhev-Osada\";\"other\"\n\"773676\";\"Czyzewo\";\"other\"\n\"773676\";\"Czyżewo\";\"other\"\n\"773676\";\"Чижев-Осада\";\"other\"\n\"773735\";\"Czerwonka\";\"main\"\n\"773735\";\"Chervonka\";\"other\"\n\"773735\";\"Rothfliess\";\"other\"\n\"773735\";\"Червонка\";\"other\"\n\"773738\";\"Czerwonka\";\"main\"\n\"773738\";\"Czerwonka Wloscianska (do 1999)\";\"other\"\n\"773738\";\"Czerwonka Włościańska (do 1999)\";\"other\"\n\"773751\";\"Czerwińsk Nad Wisłą\";\"main\"\n\"773751\";\"Czerwinsk Nad Wisla\";\"ascii\"\n\"773751\";\"Czerwinsk\";\"other\"\n\"773751\";\"Czerwińsk\";\"other\"\n\"773753\";\"Czerwin\";\"main\"\n\"773780\";\"Czernice Borowe\";\"main\"\n\"773780\";\"Chernice-Borove\";\"other\"\n\"773780\";\"Чернице-Борове\";\"other\"\n\"773797\";\"Czermin\";\"main\"\n\"773797\";\"Kolonia Czermin\";\"other\"\n\"773802\";\"Czeremcha\";\"main\"\n\"773808\";\"Czemierniki\";\"main\"\n\"773832\";\"Czchów\";\"main\"\n\"773832\";\"Czchow\";\"ascii\"\n\"773897\";\"Czarnocin\";\"main\"\n\"773902\";\"Czarnia\";\"main\"\n\"773935\";\"Czarna Góra\";\"main\"\n\"773935\";\"Czarna Gora\";\"ascii\"\n\"773941\";\"Czarna Białostocka\";\"main\"\n\"773941\";\"Czarna Bialostocka\";\"ascii\"\n\"773941\";\"Charna-Bjalostocka\";\"other\"\n\"773941\";\"Чарна-Бялостоцка\";\"other\"\n\"773965\";\"Czarna\";\"main\"\n\"773966\";\"Czarna\";\"main\"\n\"773968\";\"Czarna\";\"main\"\n\"773968\";\"Czarna Gorna (do 1999)\";\"other\"\n\"773968\";\"Czarna Górna (do 1999)\";\"other\"\n\"774069\";\"Ćmielów\";\"main\"\n\"774069\";\"Cmielow\";\"ascii\"\n\"774090\";\"Cisna\";\"main\"\n\"774116\";\"Ciężkowice\";\"main\"\n\"774116\";\"Ciezkowice\";\"ascii\"\n\"774128\";\"Cieszanów\";\"main\"\n\"774128\";\"Cieszanow\";\"ascii\"\n\"774158\";\"Ciepielów\";\"main\"\n\"774158\";\"Ciepielow\";\"ascii\"\n\"774186\";\"Cielądz\";\"main\"\n\"774186\";\"Cieladz\";\"ascii\"\n\"774207\";\"Ciechanowiec\";\"main\"\n\"774208\";\"Ciechanów\";\"main\"\n\"774208\";\"Ciechanow\";\"ascii\"\n\"774208\";\"CEKHANUV\";\"other\"\n\"774208\";\"Tsekhanov\";\"other\"\n\"774208\";\"ЦЕХАНУВ\";\"other\"\n\"774304\";\"Chrzanów\";\"main\"\n\"774304\";\"Chrzanow\";\"ascii\"\n\"774304\";\"Chrzanow Ordynacki\";\"other\"\n\"774304\";\"Chrzanów Ordynacki\";\"other\"\n\"774387\";\"Chorzele\";\"main\"\n\"774387\";\"KHOZHELE\";\"other\"\n\"774387\";\"ХОЖЕЛЕ\";\"other\"\n\"774393\";\"Choroszcz\";\"main\"\n\"774393\";\"KHOROSHH\";\"other\"\n\"774393\";\"ХОРОЩ\";\"other\"\n\"774396\";\"Chorkówka\";\"main\"\n\"774396\";\"Chorkowka\";\"ascii\"\n\"774504\";\"Chmielnik\";\"main\"\n\"774505\";\"Chmielnik\";\"main\"\n\"774535\";\"Chlewiska\";\"main\"\n\"774554\";\"Chełmiec\";\"main\"\n\"774554\";\"Chelmiec\";\"ascii\"\n\"774554\";\"Chelmiec Polski\";\"other\"\n\"774554\";\"Chełmiec Polski\";\"other\"\n\"774558\";\"Chełm\";\"main\"\n\"774558\";\"Chelm\";\"ascii\"\n\"774558\";\"Helma\";\"other\"\n\"774558\";\"Khelm\";\"other\"\n\"774558\";\"Kholm\";\"other\"\n\"774558\";\"hlm\";\"other\"\n\"774558\";\"Хелм\";\"other\"\n\"774558\";\"Холм\";\"other\"\n\"774558\";\"חלם\";\"other\"\n\"774572\";\"Chęciny\";\"main\"\n\"774572\";\"Checiny\";\"ascii\"\n\"774628\";\"Ceranów\";\"main\"\n\"774628\";\"Ceranow\";\"ascii\"\n\"774628\";\"Ceranuv\";\"other\"\n\"774628\";\"Церанув\";\"other\"\n\"774641\";\"Celestynów\";\"main\"\n\"774641\";\"Celestynow\";\"ascii\"\n\"774641\";\"Celestynuv\";\"other\"\n\"774641\";\"Letnisko Celestynow\";\"other\"\n\"774641\";\"Letnisko Celestynów\";\"other\"\n\"774641\";\"Целестынув\";\"other\"\n\"774711\";\"Bystra\";\"main\"\n\"774730\";\"Bychawa\";\"main\"\n\"774747\";\"Busko-Zdrój\";\"main\"\n\"774747\";\"Busko-Zdroj\";\"ascii\"\n\"774747\";\"Busk\";\"other\"\n\"774747\";\"Busko\";\"other\"\n\"774747\";\"Busko Zdroj\";\"other\"\n\"774747\";\"Busko Zdrój\";\"other\"\n\"774747\";\"Busko-Zdruj\";\"other\"\n\"774747\";\"Буско-Здруј\";\"other\"\n\"774770\";\"Bulkowo\";\"main\"\n\"774770\";\"Bul'kovo\";\"other\"\n\"774770\";\"Бульково\";\"other\"\n\"774776\";\"Bukowsko\";\"main\"\n\"774790\";\"Bukowina Tatrzańska\";\"main\"\n\"774790\";\"Bukowina Tatrzanska\";\"ascii\"\n\"774790\";\"Bukowina\";\"other\"\n\"775010\";\"Brzyska\";\"main\"\n\"775010\";\"Brzyski\";\"other\"\n\"775086\";\"Brzozów\";\"main\"\n\"775086\";\"Brzozow\";\"ascii\"\n\"775110\";\"Brzostek\";\"main\"\n\"775136\";\"Brzeźnica\";\"main\"\n\"775136\";\"Brzeznica\";\"ascii\"\n\"775138\";\"Brzeźnica\";\"main\"\n\"775138\";\"Brzeznica\";\"ascii\"\n\"775155\";\"Brzeziny\";\"main\"\n\"775155\";\"Brzeiny\";\"other\"\n\"775183\";\"Brzesko\";\"main\"\n\"775224\";\"Brwinów\";\"main\"\n\"775224\";\"Brwinow\";\"ascii\"\n\"775304\";\"Brok\";\"main\"\n\"775304\";\"BROK\";\"other\"\n\"775304\";\"БРОК\";\"other\"\n\"775318\";\"Brody\";\"main\"\n\"775358\";\"Brańszczyk\";\"main\"\n\"775358\";\"Branszczyk\";\"ascii\"\n\"775358\";\"Braniszczyki\";\"other\"\n\"775358\";\"Branszezki\";\"other\"\n\"775359\";\"Brańsk\";\"main\"\n\"775359\";\"Bransk\";\"ascii\"\n\"775359\";\"BRAN'SK\";\"other\"\n\"775359\";\"Bryansk\";\"other\"\n\"775359\";\"БРАНЬСК\";\"other\"\n\"775423\";\"Borzęcin\";\"main\"\n\"775423\";\"Borzecin\";\"ascii\"\n\"775424\";\"Borzechów\";\"main\"\n\"775424\";\"Borzechow\";\"ascii\"\n\"775493\";\"Borowie\";\"main\"\n\"775513\";\"Borowa\";\"main\"\n\"775533\";\"Borkowice\";\"main\"\n\"775684\";\"Boguty-Pianki\";\"main\"\n\"775684\";\"Boguty\";\"other\"\n\"775684\";\"Boguty-Pjanki\";\"other\"\n\"775684\";\"Богуты-Пянки\";\"other\"\n\"775717\";\"Boguchwała\";\"main\"\n\"775717\";\"Boguchwala\";\"ascii\"\n\"775720\";\"Bogoria\";\"main\"\n\"775720\";\"Bogorja\";\"other\"\n\"775720\";\"Bogoryja\";\"other\"\n\"775720\";\"Borgoria\";\"other\"\n\"775736\";\"Bodzentyn\";\"main\"\n\"775738\";\"Bodzanów\";\"main\"\n\"775738\";\"Bodzanow\";\"ascii\"\n\"775738\";\"Bodzanuv\";\"other\"\n\"775738\";\"Бодзанув\";\"other\"\n\"775754\";\"Boćki\";\"main\"\n\"775754\";\"Bocki\";\"ascii\"\n\"775754\";\"Voc'ki\";\"other\"\n\"775754\";\"Воцьки\";\"other\"\n\"775758\";\"Bochnia\";\"main\"\n\"775758\";\"Bohna\";\"other\"\n\"775758\";\"Bokhnja\";\"other\"\n\"775758\";\"Bokhnya\";\"other\"\n\"775758\";\"Бохня\";\"other\"\n\"775758\";\"Бохња\";\"other\"\n\"775775\";\"Bobrowniki\";\"main\"\n\"775775\";\"Bobrovniki\";\"other\"\n\"775775\";\"Бобровники\";\"other\"\n\"775796\";\"Bobowa\";\"main\"\n\"775810\";\"Stara Błotnica\";\"main\"\n\"775810\";\"Stara Blotnica\";\"ascii\"\n\"775820\";\"Błonie\";\"main\"\n\"775820\";\"Blonie\";\"ascii\"\n\"775820\";\"BLONE\";\"other\"\n\"775820\";\"БЛОНЕ\";\"other\"\n\"775860\";\"Błędów\";\"main\"\n\"775860\";\"Bledow\";\"ascii\"\n\"775866\";\"Błażowa\";\"main\"\n\"775866\";\"Blazowa\";\"ascii\"\n\"775886\";\"Bisztynek\";\"main\"\n\"775886\";\"BISHTYNEK\";\"other\"\n\"775886\";\"Bischofstein\";\"other\"\n\"775886\";\"БИШТЫНЕК\";\"other\"\n\"775890\";\"Biskupiec\";\"main\"\n\"775890\";\"BISKUPEC\";\"other\"\n\"775890\";\"Bischofsburg\";\"other\"\n\"775890\";\"БИСКУПЕЦ\";\"other\"\n\"775908\";\"Bircza\";\"main\"\n\"775922\";\"Biłgoraj\";\"main\"\n\"775922\";\"Bilgoraj\";\"ascii\"\n\"775922\";\"Bilgora\";\"other\"\n\"775922\";\"Bilgoraja\";\"other\"\n\"775922\";\"Bilgoray\";\"other\"\n\"775922\";\"Biłgora\";\"other\"\n\"775922\";\"Билгорай\";\"other\"\n\"775922\";\"Билгорај\";\"other\"\n\"775986\";\"Bielsk Podlaski\";\"main\"\n\"775986\";\"Bel'sk-Podljaski\";\"other\"\n\"775986\";\"Bielsk\";\"other\"\n\"775986\";\"Podlaski\";\"other\"\n\"775986\";\"Бельск-Подляски\";\"other\"\n\"775996\";\"Bieliny\";\"main\"\n\"775996\";\"Bieliny Kapitulne (do 1999)\";\"other\"\n\"776001\";\"Bieliny\";\"main\"\n\"776024\";\"Bielany\";\"main\"\n\"776053\";\"Biecz\";\"main\"\n\"776053\";\"Bjech\";\"other\"\n\"776053\";\"Бјеч\";\"other\"\n\"776069\";\"Białystok\";\"main\"\n\"776069\";\"Bialystok\";\"ascii\"\n\"776069\";\"Balstoge\";\"other\"\n\"776069\";\"Balstogė\";\"other\"\n\"776069\";\"Belastok\";\"other\"\n\"776069\";\"Belostok\";\"other\"\n\"776069\";\"Belostoko\";\"other\"\n\"776069\";\"Bjalistok\";\"other\"\n\"776069\";\"Bjalistoka\";\"other\"\n\"776069\";\"Bjalistoko\";\"other\"\n\"776069\";\"Bjelostock\";\"other\"\n\"776069\";\"Byelostok\";\"other\"\n\"776069\";\"biawiseutokeu\";\"other\"\n\"776069\";\"byau~isutoku\";\"other\"\n\"776069\";\"Беласток\";\"other\"\n\"776069\";\"Белосток\";\"other\"\n\"776069\";\"Бялисток\";\"other\"\n\"776069\";\"ביאליסטוק\";\"other\"\n\"776069\";\"ビャウィストク\";\"other\"\n\"776069\";\"비아위스토크\";\"other\"\n\"776080\";\"Biały Dunajec\";\"main\"\n\"776080\";\"Bialy Dunajec\";\"ascii\"\n\"776092\";\"Białowieża\";\"main\"\n\"776092\";\"Bialowieza\";\"ascii\"\n\"776114\";\"Białobrzegi\";\"main\"\n\"776114\";\"Bialobrzegi\";\"ascii\"\n\"776144\";\"Białka Tatrzańska\";\"main\"\n\"776144\";\"Bialka Tatrzanska\";\"ascii\"\n\"776172\";\"Biała Rawska\";\"main\"\n\"776172\";\"Biala Rawska\";\"ascii\"\n\"776172\";\"Biala\";\"other\"\n\"776172\";\"Biala Ravska\";\"other\"\n\"776172\";\"Biała\";\"other\"\n\"776172\";\"Bjala Ravska\";\"other\"\n\"776172\";\"Бјала Равска\";\"other\"\n\"776175\";\"Biała Podlaska\";\"main\"\n\"776175\";\"Biala Podlaska\";\"ascii\"\n\"776175\";\"Bjala Podlaska\";\"other\"\n\"776175\";\"Bjala Podļaska\";\"other\"\n\"776175\";\"Bjala-Podljaska\";\"other\"\n\"776175\";\"Бяла-Подляска\";\"other\"\n\"776178\";\"Biała Piska\";\"main\"\n\"776178\";\"Biala Piska\";\"ascii\"\n\"776178\";\"Biala\";\"other\"\n\"776178\";\"Bialla\";\"other\"\n\"776178\";\"Biała\";\"other\"\n\"776178\";\"Bjala-Piska\";\"other\"\n\"776178\";\"Gehlenburg\";\"other\"\n\"776178\";\"Бяла-Писка\";\"other\"\n\"776184\";\"Białaczów\";\"main\"\n\"776184\";\"Bialaczow\";\"ascii\"\n\"776214\";\"Besko\";\"main\"\n\"776252\";\"Bełżyce\";\"main\"\n\"776252\";\"Belzyce\";\"ascii\"\n\"776254\";\"Bełżec\";\"main\"\n\"776254\";\"Belzec\";\"ascii\"\n\"776254\";\"Belzec extermination camp\";\"other\"\n\"776254\";\"Campo di sterminio di Belzec\";\"other\"\n\"776254\";\"Vernichtungslager Belzec\";\"other\"\n\"776254\";\"blz'z\";\"other\"\n\"776254\";\"בלז'ץ\";\"other\"\n\"776271\";\"Bejsce\";\"main\"\n\"776337\";\"Bartoszyce\";\"main\"\n\"776337\";\"BARTOSHICE\";\"other\"\n\"776337\";\"Bartenstein\";\"other\"\n\"776337\";\"Bartoshice\";\"other\"\n\"776337\";\"БАРТОШИЦЕ\";\"other\"\n\"776337\";\"Бартошице\";\"other\"\n\"776384\";\"Barczewo\";\"main\"\n\"776384\";\"BARCHEVO\";\"other\"\n\"776384\";\"Wartenbork\";\"other\"\n\"776384\";\"Wartenburg\";\"other\"\n\"776384\";\"БАРЧЕВО\";\"other\"\n\"776393\";\"Barciany\";\"main\"\n\"776393\";\"Barcjany\";\"other\"\n\"776393\";\"Barten\";\"other\"\n\"776393\";\"Барцяны\";\"other\"\n\"776403\";\"Baranów Sandomierski\";\"main\"\n\"776403\";\"Baranow Sandomierski\";\"ascii\"\n\"776403\";\"Baranow\";\"other\"\n\"776403\";\"Baranów\";\"other\"\n\"776407\";\"Baranowo\";\"main\"\n\"776407\";\"Baranovo\";\"other\"\n\"776407\";\"Бараново\";\"other\"\n\"776441\";\"Banie Mazurskie\";\"main\"\n\"776441\";\"Bane-Mazurske\";\"other\"\n\"776441\";\"Banie\";\"other\"\n\"776441\";\"Benkheim\";\"other\"\n\"776441\";\"Бане-Мазурске\";\"other\"\n\"776458\";\"Baligród\";\"main\"\n\"776458\";\"Baligrod\";\"ascii\"\n\"776531\";\"Baćkowice\";\"main\"\n\"776531\";\"Backowice\";\"ascii\"\n\"776553\";\"Baboszewo\";\"main\"\n\"776553\";\"Baboshevo\";\"other\"\n\"776553\";\"Бабошево\";\"other\"\n\"776597\";\"Augustów\";\"main\"\n\"776597\";\"Augustow\";\"ascii\"\n\"776597\";\"AVGUSTOV\";\"other\"\n\"776597\";\"Augustavas\";\"other\"\n\"776597\";\"Augustov\";\"other\"\n\"776597\";\"Avgustov\";\"other\"\n\"776597\";\"АВГУСТОВ\";\"other\"\n\"776597\";\"Аугустов\";\"other\"\n\"776677\";\"Annopol\";\"main\"\n\"776677\";\"Anopol\";\"other\"\n\"776677\";\"Rachow-Annopol\";\"other\"\n\"776677\";\"Rachów-Annopol\";\"other\"\n\"776677\";\"Аннопол\";\"other\"\n\"776677\";\"Анопол\";\"other\"\n\"776755\";\"Aleksandrów\";\"main\"\n\"776755\";\"Aleksandrow\";\"ascii\"\n\"776780\";\"Adamówka\";\"main\"\n\"776780\";\"Adamowka\";\"ascii\"\n\"776788\";\"Adamów\";\"main\"\n\"776788\";\"Adamow\";\"ascii\"\n\"3079855\";\"Żywiec\";\"main\"\n\"3079855\";\"Zywiec\";\"ascii\"\n\"3079855\";\"Saybusch\";\"other\"\n\"3079855\";\"Zwyiec\";\"other\"\n\"3079897\";\"Żychlin\";\"main\"\n\"3079897\";\"Zychlin\";\"ascii\"\n\"3079897\";\"ZHIKHLIN\";\"other\"\n\"3079897\";\"ЖИХЛИН\";\"other\"\n\"3079942\";\"Żuromin\";\"main\"\n\"3079942\";\"Zuromin\";\"ascii\"\n\"3079942\";\"ZHUROMIN\";\"other\"\n\"3079942\";\"Zuramin\";\"other\"\n\"3079942\";\"ЖУРОМИН\";\"other\"\n\"3079969\";\"Żukowo\";\"main\"\n\"3079969\";\"Zukowo\";\"ascii\"\n\"3079987\";\"Zubrzyca Dolna\";\"main\"\n\"3080004\";\"Żory\";\"main\"\n\"3080004\";\"Zory\";\"ascii\"\n\"3080004\";\"Sohrau\";\"other\"\n\"3080004\";\"Zhory\";\"other\"\n\"3080004\";\"Zori\";\"other\"\n\"3080004\";\"Žori\";\"other\"\n\"3080004\";\"Žory\";\"other\"\n\"3080004\";\"Жоры\";\"other\"\n\"3080047\";\"Żnin\";\"main\"\n\"3080047\";\"Znin\";\"ascii\"\n\"3080058\";\"Żmigród\";\"main\"\n\"3080058\";\"Zmigrod\";\"ascii\"\n\"3080058\";\"Trachenberg\";\"other\"\n\"3080061\";\"Złoty Stok\";\"main\"\n\"3080061\";\"Zloty Stok\";\"ascii\"\n\"3080061\";\"Reichenstein\";\"other\"\n\"3080061\";\"Rowne\";\"other\"\n\"3080061\";\"Równe\";\"other\"\n\"3080071\";\"Złotów\";\"main\"\n\"3080071\";\"Zlotow\";\"ascii\"\n\"3080071\";\"Flatow\";\"other\"\n\"3080074\";\"Złotoryja\";\"main\"\n\"3080074\";\"Zlotoryja\";\"ascii\"\n\"3080074\";\"Aurimontium\";\"other\"\n\"3080074\";\"Goldberg\";\"other\"\n\"3080074\";\"Goldberg in Schlesien\";\"other\"\n\"3080074\";\"Slotoryja\";\"other\"\n\"3080074\";\"Słotoryja\";\"other\"\n\"3080074\";\"Zlota Gora\";\"other\"\n\"3080074\";\"Złota Góra\";\"other\"\n\"3080083\";\"Złotniki Kujawskie\";\"main\"\n\"3080083\";\"Zlotniki Kujawskie\";\"ascii\"\n\"3080083\";\"Zlotniki-Kujavske\";\"other\"\n\"3080083\";\"Злотники-Куявске\";\"other\"\n\"3080101\";\"Złoczew\";\"main\"\n\"3080101\";\"Zloczew\";\"ascii\"\n\"3080102\";\"Złocieniec\";\"main\"\n\"3080102\";\"Zlocieniec\";\"ascii\"\n\"3080102\";\"Falkenburg\";\"other\"\n\"3080111\";\"Zławieś Wielka\";\"main\"\n\"3080111\";\"Zlawies Wielka\";\"ascii\"\n\"3080156\";\"Zielonki\";\"main\"\n\"3080165\";\"Zielona Góra\";\"main\"\n\"3080165\";\"Zielona Gora\";\"ascii\"\n\"3080165\";\"Gruentberg\";\"other\"\n\"3080165\";\"Grunberg\";\"other\"\n\"3080165\";\"Grünberg\";\"other\"\n\"3080165\";\"Zelona Gura\";\"other\"\n\"3080165\";\"Zeļona Gura\";\"other\"\n\"3080165\";\"lu shan cheng\";\"other\"\n\"3080165\";\"ジェロナ・グラ\";\"other\"\n\"3080165\";\"綠山城\";\"other\"\n\"3080226\";\"Ziębice\";\"main\"\n\"3080226\";\"Ziebice\";\"ascii\"\n\"3080226\";\"Munsterberg\";\"other\"\n\"3080226\";\"Münsterberg\";\"other\"\n\"3080226\";\"Ziembice\";\"other\"\n\"3080231\";\"Zgorzelec\";\"main\"\n\"3080231\";\"Gorlitz\";\"other\"\n\"3080231\";\"Görlitz\";\"other\"\n\"3080231\";\"Zgorzelice\";\"other\"\n\"3080231\";\"Zgozhelec\";\"other\"\n\"3080231\";\"Згожелец\";\"other\"\n\"3080251\";\"Zgierz\";\"main\"\n\"3080251\";\"Zgeza\";\"other\"\n\"3080251\";\"Zgezh\";\"other\"\n\"3080251\";\"Zgeža\";\"other\"\n\"3080251\";\"Згеж\";\"other\"\n\"3080271\";\"Żernica\";\"main\"\n\"3080271\";\"Zernica\";\"ascii\"\n\"3080275\";\"Żerków\";\"main\"\n\"3080275\";\"Zerkow\";\"ascii\"\n\"3080291\";\"Zembrzyce\";\"main\"\n\"3080291\";\"Zambrzyce\";\"other\"\n\"3080295\";\"Zelów\";\"main\"\n\"3080295\";\"Zelow\";\"ascii\"\n\"3080345\";\"Żelazków\";\"main\"\n\"3080345\";\"Zelazkow\";\"ascii\"\n\"3080367\";\"Zebrzydowice\";\"main\"\n\"3080368\";\"Zebrzydowice\";\"main\"\n\"3080369\";\"Zebrzydowice\";\"main\"\n\"3080380\";\"Zębowice\";\"main\"\n\"3080380\";\"Zebowice\";\"ascii\"\n\"3080380\";\"Fohrendorf\";\"other\"\n\"3080380\";\"Föhrendorf\";\"other\"\n\"3080380\";\"Zembowitz\";\"other\"\n\"3080389\";\"Zdzieszowice\";\"main\"\n\"3080389\";\"Deschowitz\";\"other\"\n\"3080389\";\"Odertal\";\"other\"\n\"3080389\";\"Zagieszowice\";\"other\"\n\"3080411\";\"Zduny\";\"main\"\n\"3080414\";\"Zduńska Wola\";\"main\"\n\"3080414\";\"Zdunska Wola\";\"ascii\"\n\"3080442\";\"Zbytków\";\"main\"\n\"3080442\";\"Zbytkow\";\"ascii\"\n\"3080457\";\"Zbrosławice\";\"main\"\n\"3080457\";\"Zbroslawice\";\"ascii\"\n\"3080473\";\"Zbójno\";\"main\"\n\"3080473\";\"Zbojno\";\"ascii\"\n\"3080473\";\"Zbujno\";\"other\"\n\"3080473\";\"Збуйно\";\"other\"\n\"3080476\";\"Zblewo\";\"main\"\n\"3080476\";\"Hoch Stublau\";\"other\"\n\"3080476\";\"Hoch Stüblau\";\"other\"\n\"3080476\";\"Zblevo\";\"other\"\n\"3080476\";\"Зблево\";\"other\"\n\"3080494\";\"Zbąszynek\";\"main\"\n\"3080494\";\"Zbaszynek\";\"ascii\"\n\"3080494\";\"Neu Bentschen\";\"other\"\n\"3080495\";\"Zbąszyń\";\"main\"\n\"3080495\";\"Zbaszyn\";\"ascii\"\n\"3080508\";\"Zawoja\";\"main\"\n\"3080526\";\"Zawiercie\";\"main\"\n\"3080526\";\"Zaverce\";\"other\"\n\"3080526\";\"Zavertse\";\"other\"\n\"3080526\";\"Заверце\";\"other\"\n\"3080530\";\"Zawidz\";\"main\"\n\"3080530\";\"Zawidz Koscielny\";\"other\"\n\"3080530\";\"Zawidz Kościelny\";\"other\"\n\"3080533\";\"Zawidów\";\"main\"\n\"3080533\";\"Zawidow\";\"ascii\"\n\"3080533\";\"Seidenberg\";\"other\"\n\"3080538\";\"Zawadzkie\";\"main\"\n\"3080538\";\"Andreashutte\";\"other\"\n\"3080538\";\"Andreashutte Oberschlesien\";\"other\"\n\"3080538\";\"Andreashütte\";\"other\"\n\"3080538\";\"Andreashütte Oberschlesien\";\"other\"\n\"3080538\";\"Zawadzki\";\"other\"\n\"3080538\";\"Zawadzki Oberschlesien\";\"other\"\n\"3080590\";\"Zator\";\"main\"\n\"3080636\";\"Zarzecze\";\"main\"\n\"3080644\";\"Żary\";\"main\"\n\"3080644\";\"Zary\";\"ascii\"\n\"3080644\";\"Sorau in Nieder Lausitz\";\"other\"\n\"3080644\";\"Soraw\";\"other\"\n\"3080644\";\"Zhara\";\"other\"\n\"3080644\";\"Zoraw\";\"other\"\n\"3080644\";\"Zóraw\";\"other\"\n\"3080644\";\"Жара\";\"other\"\n\"3080652\";\"Żarów\";\"main\"\n\"3080652\";\"Zarow\";\"ascii\"\n\"3080652\";\"Saarau\";\"other\"\n\"3080652\";\"Saaru\";\"other\"\n\"3080652\";\"Zarrow\";\"other\"\n\"3080674\";\"Żarki\";\"main\"\n\"3080674\";\"Zarki\";\"ascii\"\n\"3080675\";\"Żarki\";\"main\"\n\"3080675\";\"Zarki\";\"ascii\"\n\"3080736\";\"Zamarski\";\"main\"\n\"3080757\";\"Zalewo\";\"main\"\n\"3080757\";\"Saalfeld\";\"other\"\n\"3080757\";\"ZALEVO\";\"other\"\n\"3080757\";\"ЗАЛЕВО\";\"other\"\n\"3080830\";\"Zakrzewo\";\"main\"\n\"3080866\";\"Zakopane\";\"main\"\n\"3080866\";\"zakopane\";\"other\"\n\"3080866\";\"Закопане\";\"other\"\n\"3080866\";\"זאקופנה\";\"other\"\n\"3080866\";\"ザコパネ\";\"other\"\n\"3080895\";\"Zagrodno\";\"main\"\n\"3080929\";\"Zagórów\";\"main\"\n\"3080929\";\"Zagorow\";\"ascii\"\n\"3080944\";\"Żagań\";\"main\"\n\"3080944\";\"Zagan\";\"ascii\"\n\"3080944\";\"Sagan\";\"other\"\n\"3080944\";\"Saganum\";\"other\"\n\"3080944\";\"Zagan'\";\"other\"\n\"3080944\";\"Zegan\";\"other\"\n\"3080944\";\"Zegań\";\"other\"\n\"3080944\";\"Zhagan'\";\"other\"\n\"3080944\";\"jagani\";\"other\"\n\"3080944\";\"Жагань\";\"other\"\n\"3080944\";\"Жагањ\";\"other\"\n\"3080944\";\"Загань\";\"other\"\n\"3080944\";\"ジャガニ\";\"other\"\n\"3080984\";\"Zabrzeg\";\"main\"\n\"3080985\";\"Zabrze\";\"main\"\n\"3080985\";\"Hindenburg\";\"other\"\n\"3080985\";\"Zaborze\";\"other\"\n\"3080985\";\"Zabze\";\"other\"\n\"3080985\";\"Zabzhe\";\"other\"\n\"3080985\";\"Zabže\";\"other\"\n\"3080985\";\"Забже\";\"other\"\n\"3081003\";\"Zaborze\";\"main\"\n\"3081004\";\"Zaborze\";\"main\"\n\"3081036\";\"Żabnica\";\"main\"\n\"3081036\";\"Zabnica\";\"ascii\"\n\"3081045\";\"Zabłocie\";\"main\"\n\"3081045\";\"Zablocie\";\"ascii\"\n\"3081046\";\"Ząbkowice Śląskie\";\"main\"\n\"3081046\";\"Zabkowice Slaskie\";\"ascii\"\n\"3081046\";\"Frankenstein\";\"other\"\n\"3081046\";\"Frankenstein in Schlesien\";\"other\"\n\"3081046\";\"Zabkowice\";\"other\"\n\"3081046\";\"Zabkowice Szlascze\";\"other\"\n\"3081046\";\"Ząbkowice Szląsczé\";\"other\"\n\"3081060\";\"Zabierzów\";\"main\"\n\"3081060\";\"Zabierzow\";\"ascii\"\n\"3081128\";\"Wysoka\";\"main\"\n\"3081128\";\"Wissek\";\"other\"\n\"3081136\";\"Wysoka\";\"main\"\n\"3081138\";\"Wysoka\";\"main\"\n\"3081158\";\"Wyrzysk\";\"main\"\n\"3081158\";\"Wirsitz\";\"other\"\n\"3081158\";\"Wryzysk\";\"other\"\n\"3081161\";\"Wyry\";\"main\"\n\"3081206\";\"Wymiarki\";\"main\"\n\"3081300\";\"Wschowa\";\"main\"\n\"3081300\";\"Fraustadt\";\"other\"\n\"3081324\";\"Września\";\"main\"\n\"3081324\";\"Wrzesnia\";\"ascii\"\n\"3081324\";\"Vzhes'nya\";\"other\"\n\"3081324\";\"Vzhes’nya\";\"other\"\n\"3081324\";\"Wreschen\";\"other\"\n\"3081350\";\"Wronki\";\"main\"\n\"3081368\";\"Wrocław\";\"main\"\n\"3081368\";\"Wroclaw\";\"ascii\"\n\"3081368\";\"Breslau\";\"other\"\n\"3081368\";\"Breslavia\";\"other\"\n\"3081368\";\"Breslavl'\";\"other\"\n\"3081368\";\"Breslavl’\";\"other\"\n\"3081368\";\"Vratislav\";\"other\"\n\"3081368\";\"Vratislavia\";\"other\"\n\"3081368\";\"Vroclav\";\"other\"\n\"3081368\";\"Vroclava\";\"other\"\n\"3081368\";\"Vroclavas\";\"other\"\n\"3081368\";\"Vroclavo\";\"other\"\n\"3081368\";\"Vrotslav\";\"other\"\n\"3081368\";\"Wroslaw\";\"other\"\n\"3081368\";\"Wrosław\";\"other\"\n\"3081368\";\"beulocheuwapeu\";\"other\"\n\"3081368\";\"fu luo ci wa fu\";\"other\"\n\"3081368\";\"vurotsuwafu\";\"other\"\n\"3081368\";\"wrwzlb\";\"other\"\n\"3081368\";\"Вроцлав\";\"other\"\n\"3081368\";\"ורוצלב\";\"other\"\n\"3081368\";\"ヴロツワフ\";\"other\"\n\"3081368\";\"弗罗茨瓦夫\";\"other\"\n\"3081368\";\"브로츠와프\";\"other\"\n\"3081387\";\"Wręczyca Wielka\";\"main\"\n\"3081387\";\"Wreczyca Wielka\";\"ascii\"\n\"3081387\";\"Wreczyca\";\"other\"\n\"3081387\";\"Wręczyca\";\"other\"\n\"3081403\";\"Wożniki\";\"main\"\n\"3081403\";\"Wozniki\";\"ascii\"\n\"3081419\";\"Wolsztyn\";\"main\"\n\"3081430\";\"Wołów\";\"main\"\n\"3081430\";\"Wolow\";\"ascii\"\n\"3081430\";\"Wohlau\";\"other\"\n\"3081471\";\"Wolin\";\"main\"\n\"3081471\";\"Volin\";\"other\"\n\"3081471\";\"Волин\";\"other\"\n\"3081488\";\"Wołczyn\";\"main\"\n\"3081488\";\"Wolczyn\";\"ascii\"\n\"3081488\";\"Konstadt\";\"other\"\n\"3081495\";\"Wolbrom\";\"main\"\n\"3081496\";\"Wolbórz\";\"main\"\n\"3081496\";\"Wolborz\";\"ascii\"\n\"3081560\";\"Wola Krzysztoporska\";\"main\"\n\"3081604\";\"Wola\";\"main\"\n\"3081636\";\"Wojkowice\";\"main\"\n\"3081636\";\"Wojkowice Komorne\";\"other\"\n\"3081636\";\"Wojkowice-Korne\";\"other\"\n\"3081653\";\"Wojcieszów\";\"main\"\n\"3081653\";\"Wojcieszow\";\"ascii\"\n\"3081653\";\"Kauffung\";\"other\"\n\"3081677\";\"Wodzisław Śląski\";\"main\"\n\"3081677\";\"Wodzislaw Slaski\";\"ascii\"\n\"3081677\";\"Wodislaw-Slaski\";\"other\"\n\"3081677\";\"Wodisław-Śląski\";\"other\"\n\"3081677\";\"Wodzislaw\";\"other\"\n\"3081677\";\"Wodzisław\";\"other\"\n\"3081699\";\"Włoszczowa\";\"main\"\n\"3081699\";\"Wloszczowa\";\"ascii\"\n\"3081733\";\"Włodowice\";\"main\"\n\"3081733\";\"Wlodowice\";\"ascii\"\n\"3081741\";\"Włocławek\";\"main\"\n\"3081741\";\"Wloclawek\";\"ascii\"\n\"3081741\";\"Leslau\";\"other\"\n\"3081741\";\"VLOCLAVEK\";\"other\"\n\"3081741\";\"Vloclavek\";\"other\"\n\"3081741\";\"Vloclaveka\";\"other\"\n\"3081741\";\"ВЛОЦЛАВЕК\";\"other\"\n\"3081741\";\"Влоцлавек\";\"other\"\n\"3081748\";\"Wleń\";\"main\"\n\"3081748\";\"Wlen\";\"ascii\"\n\"3081748\";\"Laehn\";\"other\"\n\"3081748\";\"Lahn\";\"other\"\n\"3081748\";\"Lähn\";\"other\"\n\"3081752\";\"Władysławowo\";\"main\"\n\"3081752\";\"Wladyslawowo\";\"ascii\"\n\"3081752\";\"VLADYSLAVOVO\";\"other\"\n\"3081752\";\"Wiolgo Wies\";\"other\"\n\"3081752\";\"Wiôlgô Wies\";\"other\"\n\"3081752\";\"ВЛАДЫСЛАВОВО\";\"other\"\n\"3081818\";\"Witnica\";\"main\"\n\"3081818\";\"Vietz\";\"other\"\n\"3081818\";\"Vietz Ostbahnhof\";\"other\"\n\"3081826\";\"Witkowo\";\"main\"\n\"3081839\";\"Witaszyce\";\"main\"\n\"3081874\";\"Wisła\";\"main\"\n\"3081874\";\"Wisla\";\"ascii\"\n\"3081895\";\"Wińsko\";\"main\"\n\"3081895\";\"Winsko\";\"ascii\"\n\"3081895\";\"Winiec\";\"other\"\n\"3081895\";\"Winzig\";\"other\"\n\"3081940\";\"Wilkowice\";\"main\"\n\"3081942\";\"Wilkowice\";\"main\"\n\"3081946\";\"Wilków\";\"main\"\n\"3081946\";\"Wilkow\";\"ascii\"\n\"3081947\";\"Wilków\";\"main\"\n\"3081947\";\"Wilkow\";\"ascii\"\n\"3082016\";\"Wilcza\";\"main\"\n\"3082016\";\"Wilcza Dolna\";\"other\"\n\"3082025\";\"Wilamowice\";\"main\"\n\"3082061\";\"Wieszowa\";\"main\"\n\"3082110\";\"Wierzchowo\";\"main\"\n\"3082110\";\"Virchow\";\"other\"\n\"3082119\";\"Wierzchosławice\";\"main\"\n\"3082119\";\"Wierzchoslawice\";\"ascii\"\n\"3082130\";\"Wierzchlas\";\"main\"\n\"3082144\";\"Wierzbno\";\"main\"\n\"3082176\";\"Wieruszów\";\"main\"\n\"3082176\";\"Wieruszow\";\"ascii\"\n\"3082192\";\"Wieprz\";\"main\"\n\"3082193\";\"Wieprz\";\"main\"\n\"3082197\";\"Wieluń\";\"main\"\n\"3082197\";\"Wielun\";\"ascii\"\n\"3082197\";\"Velun\";\"other\"\n\"3082197\";\"Velun'\";\"other\"\n\"3082197\";\"Velyun'\";\"other\"\n\"3082197\";\"Weilun\";\"other\"\n\"3082197\";\"Велунь\";\"other\"\n\"3082206\";\"Wielowieś\";\"main\"\n\"3082206\";\"Wielowies\";\"ascii\"\n\"3082206\";\"Langendorf\";\"other\"\n\"3082282\";\"Wielka Wieś\";\"main\"\n\"3082282\";\"Wielka Wies\";\"ascii\"\n\"3082287\";\"Wielka Nieszawka\";\"main\"\n\"3082299\";\"Wielichowo\";\"main\"\n\"3082310\";\"Wielgie\";\"main\"\n\"3082319\";\"Wieleń\";\"main\"\n\"3082319\";\"Wielen\";\"ascii\"\n\"3082319\";\"Filehne\";\"other\"\n\"3082364\";\"Więcbork\";\"main\"\n\"3082364\";\"Wiecbork\";\"ascii\"\n\"3082364\";\"Vandsburg\";\"other\"\n\"3082364\";\"Wiebork\";\"other\"\n\"3082390\";\"Widawa\";\"main\"\n\"3082411\";\"Wiązów\";\"main\"\n\"3082411\";\"Wiazow\";\"ascii\"\n\"3082411\";\"Wansen\";\"other\"\n\"3082411\";\"Wiezow\";\"other\"\n\"3082411\";\"Wiezów\";\"other\"\n\"3082473\";\"Wejherowo\";\"main\"\n\"3082473\";\"Neustadt\";\"other\"\n\"3082473\";\"VEJKHEROVO\";\"other\"\n\"3082473\";\"Veykherovo\";\"other\"\n\"3082473\";\"Weiherowo\";\"other\"\n\"3082473\";\"Wejrowo\";\"other\"\n\"3082473\";\"Wejrowò\";\"other\"\n\"3082473\";\"ВЕЙХЕРОВО\";\"other\"\n\"3082481\";\"Węgry\";\"main\"\n\"3082481\";\"Wegry\";\"ascii\"\n\"3082485\";\"Węgorzyno\";\"main\"\n\"3082485\";\"Wegorzyno\";\"ascii\"\n\"3082485\";\"Wangerin\";\"other\"\n\"3082500\";\"Węgliniec\";\"main\"\n\"3082500\";\"Wegliniec\";\"ascii\"\n\"3082500\";\"Kalawsk\";\"other\"\n\"3082500\";\"Kaławsk\";\"other\"\n\"3082500\";\"Kohlfurt\";\"other\"\n\"3082510\";\"Węgierska Górka\";\"main\"\n\"3082510\";\"Wegierska Gorka\";\"ascii\"\n\"3082556\";\"Wąsosz\";\"main\"\n\"3082556\";\"Wasosz\";\"ascii\"\n\"3082556\";\"Herrnstadt\";\"other\"\n\"3082587\";\"Warta\";\"main\"\n\"3082607\";\"Warnice\";\"main\"\n\"3082607\";\"Warnitz\";\"other\"\n\"3082611\";\"Warlubie\";\"main\"\n\"3082611\";\"Varljube\";\"other\"\n\"3082611\";\"Варлюбе\";\"other\"\n\"3082635\";\"Wapno\";\"main\"\n\"3082635\";\"Wapno Nowe\";\"other\"\n\"3082647\";\"Wąpielsk\";\"main\"\n\"3082647\";\"Wapielsk\";\"ascii\"\n\"3082678\";\"Walim\";\"main\"\n\"3082678\";\"Wustelwaltersdorf\";\"other\"\n\"3082678\";\"Wusterwaltersdorf\";\"other\"\n\"3082678\";\"Wustewaltersdorf\";\"other\"\n\"3082678\";\"Wüstelwaltersdorf\";\"other\"\n\"3082678\";\"Wüsterwaltersdorf\";\"other\"\n\"3082678\";\"Wüstewaltersdorf\";\"other\"\n\"3082704\";\"Wałcz\";\"main\"\n\"3082704\";\"Walcz\";\"ascii\"\n\"3082704\";\"Deutsch Krone\";\"other\"\n\"3082705\";\"Walce\";\"main\"\n\"3082707\";\"Wałbrzych\";\"main\"\n\"3082707\";\"Walbrzych\";\"ascii\"\n\"3082707\";\"Valbzhikh\";\"other\"\n\"3082707\";\"Valbziha\";\"other\"\n\"3082707\";\"Valbžiha\";\"other\"\n\"3082707\";\"Waldenburg\";\"other\"\n\"3082707\";\"Waldenburg in Schlesien\";\"other\"\n\"3082707\";\"wa wu bu ri he\";\"other\"\n\"3082707\";\"Валбжих\";\"other\"\n\"3082707\";\"瓦烏布日赫\";\"other\"\n\"3082712\";\"Wągrowiec\";\"main\"\n\"3082712\";\"Wagrowiec\";\"ascii\"\n\"3082712\";\"Eichenbruck\";\"other\"\n\"3082712\";\"Eichenbrück\";\"other\"\n\"3082712\";\"Vongrovec\";\"other\"\n\"3082712\";\"Вонгровец\";\"other\"\n\"3082718\";\"Waganiec\";\"main\"\n\"3082722\";\"Wadowice\";\"main\"\n\"3082722\";\"Bantobitse\";\"other\"\n\"3082722\";\"Vadovice\";\"other\"\n\"3082722\";\"badobiche\";\"other\"\n\"3082722\";\"vu~adovu~itsu~e\";\"other\"\n\"3082722\";\"wdwbyz'\";\"other\"\n\"3082722\";\"Βαντοβίτσε\";\"other\"\n\"3082722\";\"Вадовице\";\"other\"\n\"3082722\";\"ודוביץ'\";\"other\"\n\"3082722\";\"ヴァドヴィツェ\";\"other\"\n\"3082722\";\"바도비체\";\"other\"\n\"3082734\";\"Wąbrzeźno\";\"main\"\n\"3082734\";\"Wabrzezno\";\"ascii\"\n\"3082734\";\"Briesen\";\"other\"\n\"3082745\";\"Ustronie Morskie\";\"main\"\n\"3082745\";\"Henkenhagen\";\"other\"\n\"3082745\";\"Ustronie Polana\";\"other\"\n\"3082751\";\"Ustroń\";\"main\"\n\"3082751\";\"Ustron\";\"ascii\"\n\"3082756\";\"Ustka\";\"main\"\n\"3082756\";\"Stolpmunde\";\"other\"\n\"3082756\";\"Stolpmünde\";\"other\"\n\"3082756\";\"wu si te ka\";\"other\"\n\"3082756\";\"乌斯特卡\";\"other\"\n\"3082785\";\"Unisław\";\"main\"\n\"3082785\";\"Unislaw\";\"ascii\"\n\"3082785\";\"Unislav\";\"other\"\n\"3082785\";\"Унислав\";\"other\"\n\"3082801\";\"Uniejów\";\"main\"\n\"3082801\";\"Uniejow\";\"ascii\"\n\"3082801\";\"Ùniejów\";\"other\"\n\"3082837\";\"Ujsoły\";\"main\"\n\"3082837\";\"Ujsoly\";\"ascii\"\n\"3082838\";\"Ujście\";\"main\"\n\"3082838\";\"Ujscie\";\"ascii\"\n\"3082855\";\"Ujazd\";\"main\"\n\"3082855\";\"Bischofstal\";\"other\"\n\"3082855\";\"Ujest\";\"other\"\n\"3082855\";\"Ujest Oberschlesien\";\"other\"\n\"3082887\";\"Tyniec Mały\";\"main\"\n\"3082887\";\"Tyniec Maly\";\"ascii\"\n\"3082914\";\"Tychy\";\"main\"\n\"3082914\";\"Tichau\";\"other\"\n\"3082914\";\"Tihi\";\"other\"\n\"3082916\";\"Tychowo\";\"main\"\n\"3082916\";\"Gross Tychow\";\"other\"\n\"3082931\";\"Tworóg\";\"main\"\n\"3082931\";\"Tworog\";\"ascii\"\n\"3082931\";\"Horneck\";\"other\"\n\"3082933\";\"Tworków\";\"main\"\n\"3082933\";\"Tworkow\";\"ascii\"\n\"3082938\";\"Twardogóra\";\"main\"\n\"3082938\";\"Twardogora\";\"ascii\"\n\"3082938\";\"Festenberg\";\"other\"\n\"3082938\";\"Twarda Gora\";\"other\"\n\"3082938\";\"Twarda Góra\";\"other\"\n\"3082945\";\"Tuszyn\";\"main\"\n\"3082966\";\"Turza Śląska\";\"main\"\n\"3082966\";\"Turza Slaska\";\"ascii\"\n\"3082966\";\"Turza\";\"other\"\n\"3082998\";\"Turek\";\"main\"\n\"3082998\";\"TUREK\";\"other\"\n\"3082998\";\"ТУРЕК\";\"other\"\n\"3083004\";\"Tuplice\";\"main\"\n\"3083004\";\"Klein Teuplitz\";\"other\"\n\"3083004\";\"Teuplitz\";\"other\"\n\"3083015\";\"Tułowice\";\"main\"\n\"3083015\";\"Tulowice\";\"ascii\"\n\"3083015\";\"Tillowitz\";\"other\"\n\"3083017\";\"Tuliszków\";\"main\"\n\"3083017\";\"Tuliszkow\";\"ascii\"\n\"3083017\";\"TULISHKUV\";\"other\"\n\"3083017\";\"ТУЛИШКУВ\";\"other\"\n\"3083026\";\"Tuczno\";\"main\"\n\"3083026\";\"Tuetz\";\"other\"\n\"3083026\";\"Tütz\";\"other\"\n\"3083039\";\"Tuchomie\";\"main\"\n\"3083039\";\"Goss Tuchen\";\"other\"\n\"3083039\";\"Gross Tuchen\";\"other\"\n\"3083039\";\"Tuchonie\";\"other\"\n\"3083043\";\"Tuchola\";\"main\"\n\"3083077\";\"Trzemeszno\";\"main\"\n\"3083103\";\"Trzebnica\";\"main\"\n\"3083103\";\"Trebnitz\";\"other\"\n\"3083111\";\"Trzebinia\";\"main\"\n\"3083112\";\"Trzebinia\";\"main\"\n\"3083133\";\"Trzebielino\";\"main\"\n\"3083133\";\"Treblin\";\"other\"\n\"3083134\";\"Trzebiel\";\"main\"\n\"3083134\";\"Triebel\";\"other\"\n\"3083145\";\"Trzebiatów\";\"main\"\n\"3083145\";\"Trzebiatow\";\"ascii\"\n\"3083145\";\"Preptow\";\"other\"\n\"3083145\";\"Treptow\";\"other\"\n\"3083145\";\"Treptow Rega\";\"other\"\n\"3083145\";\"Treptow an de Rega\";\"other\"\n\"3083145\";\"Treptow an der Rega\";\"other\"\n\"3083145\";\"toshebyato~ufu\";\"other\"\n\"3083145\";\"トシェビャトゥフ\";\"other\"\n\"3083158\";\"Trzcińsko Zdrój\";\"main\"\n\"3083158\";\"Trzcinsko Zdroj\";\"ascii\"\n\"3083158\";\"Bad Schonfliess\";\"other\"\n\"3083158\";\"Bad Schönfliess\";\"other\"\n\"3083158\";\"Schonfliess\";\"other\"\n\"3083158\";\"Schönfliess\";\"other\"\n\"3083158\";\"Zdroj Schonfliess\";\"other\"\n\"3083158\";\"Zdrój Schönfliess\";\"other\"\n\"3083177\";\"Trzciel\";\"main\"\n\"3083177\";\"Neu Tirschtiegel\";\"other\"\n\"3083177\";\"Tirschtiegel\";\"other\"\n\"3083185\";\"Trzcianka\";\"main\"\n\"3083185\";\"Kreisstadt Schonlanke\";\"other\"\n\"3083185\";\"Kreisstadt Schönlanke\";\"other\"\n\"3083185\";\"Schonlanke\";\"other\"\n\"3083185\";\"Schönlanke\";\"other\"\n\"3083201\";\"Truskolasy\";\"main\"\n\"3083255\";\"Trąbki Wielkie\";\"main\"\n\"3083255\";\"Trabki Wielkie\";\"ascii\"\n\"3083255\";\"Gross Trampken\";\"other\"\n\"3083263\";\"Toszek\";\"main\"\n\"3083263\";\"Toczek\";\"other\"\n\"3083263\";\"Tost\";\"other\"\n\"3083264\";\"Torzym\";\"main\"\n\"3083264\";\"Sternberg\";\"other\"\n\"3083264\";\"Sternberg Neumark\";\"other\"\n\"3083264\";\"Torun Lubuski\";\"other\"\n\"3083264\";\"Toruń Lubuski\";\"other\"\n\"3083264\";\"Tozhim\";\"other\"\n\"3083264\";\"Тожим\";\"other\"\n\"3083271\";\"Toruń\";\"main\"\n\"3083271\";\"Torun\";\"ascii\"\n\"3083271\";\"Thorn\";\"other\"\n\"3083271\";\"Torun'\";\"other\"\n\"3083271\";\"Toruna\";\"other\"\n\"3083271\";\"Torune\";\"other\"\n\"3083271\";\"Toruņa\";\"other\"\n\"3083271\";\"Toruň\";\"other\"\n\"3083271\";\"Torūnė\";\"other\"\n\"3083271\";\"torun\";\"other\"\n\"3083271\";\"tuo lun\";\"other\"\n\"3083271\";\"Торун\";\"other\"\n\"3083271\";\"Торунь\";\"other\"\n\"3083271\";\"トルン\";\"other\"\n\"3083271\";\"托伦\";\"other\"\n\"3083275\";\"Toporzysko\";\"main\"\n\"3083288\";\"Topólka\";\"main\"\n\"3083288\";\"Topolka\";\"ascii\"\n\"3083288\";\"Topul'ka\";\"other\"\n\"3083288\";\"Топулька\";\"other\"\n\"3083320\";\"Tomice\";\"main\"\n\"3083334\";\"Tolkmicko\";\"main\"\n\"3083334\";\"TOL'KMICKO\";\"other\"\n\"3083334\";\"Tolkemit\";\"other\"\n\"3083334\";\"ТОЛЬКМИЦКО\";\"other\"\n\"3083349\";\"Tokarnia\";\"main\"\n\"3083365\";\"Tłuchowo\";\"main\"\n\"3083365\";\"Tluchowo\";\"ascii\"\n\"3083426\";\"Tczew\";\"main\"\n\"3083426\";\"Derszewo\";\"other\"\n\"3083426\";\"Dirschau\";\"other\"\n\"3083426\";\"Dërszewò\";\"other\"\n\"3083426\";\"TCHEV\";\"other\"\n\"3083426\";\"Tceva\";\"other\"\n\"3083426\";\"Tcevas\";\"other\"\n\"3083426\";\"Tchev\";\"other\"\n\"3083426\";\"Tčeva\";\"other\"\n\"3083426\";\"Tčevas\";\"other\"\n\"3083426\";\"ТЧЕВ\";\"other\"\n\"3083440\";\"Tarnowskie Góry\";\"main\"\n\"3083440\";\"Tarnowskie Gory\";\"ascii\"\n\"3083440\";\"Tarnowitz\";\"other\"\n\"3083441\";\"Tarnów Opolski\";\"main\"\n\"3083441\";\"Tarnow Opolski\";\"ascii\"\n\"3083441\";\"Tarnau\";\"other\"\n\"3083441\";\"Tarnow\";\"other\"\n\"3083441\";\"Tarnów\";\"other\"\n\"3083453\";\"Tarnówka\";\"main\"\n\"3083453\";\"Tarnowka\";\"ascii\"\n\"3083453\";\"Tarnowke\";\"other\"\n\"3083576\";\"Szydłowo\";\"main\"\n\"3083576\";\"Szydlowo\";\"ascii\"\n\"3083611\";\"Szubin\";\"main\"\n\"3083611\";\"Schubin\";\"other\"\n\"3083616\";\"Sztum\";\"main\"\n\"3083616\";\"SHTUM\";\"other\"\n\"3083616\";\"Stuhm\";\"other\"\n\"3083616\";\"ШТУМ\";\"other\"\n\"3083632\";\"Szprotawa\";\"main\"\n\"3083632\";\"Sprottau\";\"other\"\n\"3083664\";\"Szlichtyngowa\";\"main\"\n\"3083664\";\"Schlichtingsheim\";\"other\"\n\"3083667\";\"Szlachta\";\"main\"\n\"3083677\";\"Szklarska Poręba\";\"main\"\n\"3083677\";\"Szklarska Poreba\";\"ascii\"\n\"3083677\";\"Schreiberhau\";\"other\"\n\"3083677\";\"Schreibhau\";\"other\"\n\"3083677\";\"Shkljarska-Poremba\";\"other\"\n\"3083677\";\"Szklarska Porbe\";\"other\"\n\"3083677\";\"Шклярска-Поремба\";\"other\"\n\"3083725\";\"Szemud\";\"main\"\n\"3083725\";\"Shemud\";\"other\"\n\"3083725\";\"Шемуд\";\"other\"\n\"3083749\";\"Szczytna\";\"main\"\n\"3083749\";\"Zhitna\";\"other\"\n\"3083749\";\"Житна\";\"other\"\n\"3083752\";\"Szczyrk\";\"main\"\n\"3083752\";\"Shhirk\";\"other\"\n\"3083752\";\"Щирк\";\"other\"\n\"3083762\";\"Szczutowo\";\"main\"\n\"3083762\";\"Szszutowo\";\"other\"\n\"3083814\";\"Szczekociny\";\"main\"\n\"3083826\";\"Szczecinek\";\"main\"\n\"3083826\";\"Neustettin\";\"other\"\n\"3083826\";\"Neustettiu\";\"other\"\n\"3083826\";\"Shhecinek\";\"other\"\n\"3083826\";\"Щецинек\";\"other\"\n\"3083829\";\"Szczecin\";\"main\"\n\"3083829\";\"Estetino\";\"other\"\n\"3083829\";\"Scecin\";\"other\"\n\"3083829\";\"Scecina\";\"other\"\n\"3083829\";\"Scecinas\";\"other\"\n\"3083829\";\"Secin\";\"other\"\n\"3083829\";\"Shchechin\";\"other\"\n\"3083829\";\"Shchehcyn\";\"other\"\n\"3083829\";\"Shhecin\";\"other\"\n\"3083829\";\"Stetin\";\"other\"\n\"3083829\";\"Stettin\";\"other\"\n\"3083829\";\"Stettino\";\"other\"\n\"3083829\";\"Szteteno\";\"other\"\n\"3083829\";\"Sztetëno\";\"other\"\n\"3083829\";\"shen qie qing\";\"other\"\n\"3083829\";\"shuchechin\";\"other\"\n\"3083829\";\"syuchechin\";\"other\"\n\"3083829\";\"Štetín\";\"other\"\n\"3083829\";\"Štětín\";\"other\"\n\"3083829\";\"Ščecina\";\"other\"\n\"3083829\";\"Ščecinas\";\"other\"\n\"3083829\";\"Шчечин\";\"other\"\n\"3083829\";\"Шчећин\";\"other\"\n\"3083829\";\"Шчэцын\";\"other\"\n\"3083829\";\"Шчэцін\";\"other\"\n\"3083829\";\"Щецин\";\"other\"\n\"3083829\";\"Щецін\";\"other\"\n\"3083829\";\"シュチェチン\";\"other\"\n\"3083829\";\"什切青\";\"other\"\n\"3083829\";\"슈체친\";\"other\"\n\"3083835\";\"Szczawno-Zdrój\";\"main\"\n\"3083835\";\"Szczawno-Zdroj\";\"ascii\"\n\"3083835\";\"Bad Salzbrunn\";\"other\"\n\"3083835\";\"Ober Salzbrunn\";\"other\"\n\"3083835\";\"Solice Zdroj\";\"other\"\n\"3083878\";\"Szamotuły\";\"main\"\n\"3083878\";\"Szamotuly\";\"ascii\"\n\"3083878\";\"Samter\";\"other\"\n\"3083878\";\"Shamotuly\";\"other\"\n\"3083878\";\"shamoto~uu~i\";\"other\"\n\"3083878\";\"シャモトゥウィ\";\"other\"\n\"3083880\";\"Szamocin\";\"main\"\n\"3083880\";\"Samotschin\";\"other\"\n\"3083904\";\"Szadek\";\"main\"\n\"3083907\";\"Syrynia\";\"main\"\n\"3083908\";\"Sypniewo\";\"main\"\n\"3083908\";\"Zippnow\";\"other\"\n\"3083909\";\"Sypniewo\";\"main\"\n\"3083921\";\"Syców\";\"main\"\n\"3083921\";\"Sycow\";\"ascii\"\n\"3083921\";\"Gross Wartenberg\";\"other\"\n\"3083955\";\"Świnoujście\";\"main\"\n\"3083955\";\"Swinoujscie\";\"ascii\"\n\"3083955\";\"Sbinooustsie\";\"other\"\n\"3083955\";\"Svinoujs'ce\";\"other\"\n\"3083955\";\"Svioujscie\";\"other\"\n\"3083955\";\"Swienemuenn\";\"other\"\n\"3083955\";\"Swienemünn\";\"other\"\n\"3083955\";\"Swina\";\"other\"\n\"3083955\";\"Swinemude\";\"other\"\n\"3083955\";\"Swinemunde\";\"other\"\n\"3083955\";\"Swinemüde\";\"other\"\n\"3083955\";\"Swinemünde\";\"other\"\n\"3083955\";\"Swinioujscie\";\"other\"\n\"3083955\";\"Swinmunde\";\"other\"\n\"3083955\";\"Σβινόουστσιε\";\"other\"\n\"3083955\";\"Свиноуйсьце\";\"other\"\n\"3083955\";\"Свиоуйсцие\";\"other\"\n\"3083958\";\"Świnna\";\"main\"\n\"3083958\";\"Swinna\";\"ascii\"\n\"3083988\";\"Świętochłowice\";\"main\"\n\"3083988\";\"Swietochlowice\";\"ascii\"\n\"3083988\";\"Sbietochlobitse\";\"other\"\n\"3083988\";\"Schweintochlitz\";\"other\"\n\"3083988\";\"Schwientochlowitz\";\"other\"\n\"3083988\";\"Shvientokhlovice\";\"other\"\n\"3083988\";\"Sventochlovice\";\"other\"\n\"3083988\";\"Sventochlovicė\";\"other\"\n\"3083988\";\"Sventohlovice\";\"other\"\n\"3083988\";\"Sventokhlovice\";\"other\"\n\"3083988\";\"Svetohlovice\";\"other\"\n\"3083988\";\"Svjentokhlovice\";\"other\"\n\"3083988\";\"Svjetohlovice\";\"other\"\n\"3083988\";\"ashfyntwhwytz\";\"other\"\n\"3083988\";\"shfyntwkhwfytsh\";\"other\"\n\"3083988\";\"shifientofuu~ovu~itsu~e\";\"other\"\n\"3083988\";\"xi wei tuo he luo wei cai\";\"other\"\n\"3083988\";\"Švetohlovice\";\"other\"\n\"3083988\";\"Σβιετοχλόβιτσε\";\"other\"\n\"3083988\";\"Свентохловице\";\"other\"\n\"3083988\";\"Свентохловіце\";\"other\"\n\"3083988\";\"Свјентохловице\";\"other\"\n\"3083988\";\"Швиентохловице\";\"other\"\n\"3083988\";\"اشفینتوهویتز\";\"other\"\n\"3083988\";\"شفينتوخوفيتسه\";\"other\"\n\"3083988\";\"シフィエントフウォヴィツェ\";\"other\"\n\"3083988\";\"希维托赫洛维采\";\"other\"\n\"3084005\";\"Święta Katarzyna\";\"main\"\n\"3084005\";\"Swieta Katarzyna\";\"ascii\"\n\"3084005\";\"Świeta Katarzyna\";\"other\"\n\"3084020\";\"Świerzno\";\"main\"\n\"3084020\";\"Swierzno\";\"ascii\"\n\"3084020\";\"Schwirsen\";\"other\"\n\"3084024\";\"Świerzawa\";\"main\"\n\"3084024\";\"Swierzawa\";\"ascii\"\n\"3084024\";\"Schonau\";\"other\"\n\"3084024\";\"Schonau am Katzbach\";\"other\"\n\"3084024\";\"Schönau\";\"other\"\n\"3084024\";\"Schönau am Katzbach\";\"other\"\n\"3084024\";\"Szunaw\";\"other\"\n\"3084024\";\"Szunow\";\"other\"\n\"3084029\";\"Świerklany Górne\";\"main\"\n\"3084029\";\"Swierklany Gorne\";\"ascii\"\n\"3084030\";\"Świerklany Dolne\";\"main\"\n\"3084030\";\"Swierklany Dolne\";\"ascii\"\n\"3084033\";\"Świerklaniec\";\"main\"\n\"3084033\";\"Swierklaniec\";\"ascii\"\n\"3084051\";\"Świerczów\";\"main\"\n\"3084051\";\"Swierczow\";\"ascii\"\n\"3084051\";\"Schwirz\";\"other\"\n\"3084055\";\"Świeradów-Zdrój\";\"main\"\n\"3084055\";\"Swieradow-Zdroj\";\"ascii\"\n\"3084055\";\"Bad Flinsberg\";\"other\"\n\"3084055\";\"Flinsberg Zdroj\";\"other\"\n\"3084055\";\"Flinsberg Zdrój\";\"other\"\n\"3084055\";\"Sveraduv-Zdruj\";\"other\"\n\"3084055\";\"Сверадув-Здруй\";\"other\"\n\"3084060\";\"Świekatowo\";\"main\"\n\"3084060\";\"Swiekatowo\";\"ascii\"\n\"3084061\";\"Świedziebnia\";\"main\"\n\"3084061\";\"Swiedziebnia\";\"ascii\"\n\"3084062\";\"Świebodzin\";\"main\"\n\"3084062\";\"Swiebodzin\";\"ascii\"\n\"3084062\";\"Schweibus\";\"other\"\n\"3084062\";\"Schwiebus\";\"other\"\n\"3084062\";\"Svebodzin\";\"other\"\n\"3084062\";\"Свебодзин\";\"other\"\n\"3084069\";\"Świecie nad Osą\";\"main\"\n\"3084069\";\"Swiecie nad Osa\";\"ascii\"\n\"3084074\";\"Świecie\";\"main\"\n\"3084074\";\"Swiecie\";\"ascii\"\n\"3084074\";\"Schwetz\";\"other\"\n\"3084084\";\"Świebodzice\";\"main\"\n\"3084084\";\"Swiebodzice\";\"ascii\"\n\"3084084\";\"Freiburg\";\"other\"\n\"3084084\";\"Freiburg in Schlesien\";\"other\"\n\"3084084\";\"Frybork\";\"other\"\n\"3084084\";\"Svebodzice\";\"other\"\n\"3084084\";\"Свебодзице\";\"other\"\n\"3084085\";\"Świdwin\";\"main\"\n\"3084085\";\"Swidwin\";\"ascii\"\n\"3084085\";\"Schivelbein\";\"other\"\n\"3084085\";\"Swibowina\";\"other\"\n\"3084093\";\"Świdnica\";\"main\"\n\"3084093\";\"Swidnica\";\"ascii\"\n\"3084093\";\"Schweidnitz\";\"other\"\n\"3084093\";\"Schweidnitz-Schlesian\";\"other\"\n\"3084093\";\"Schweinitz\";\"other\"\n\"3084093\";\"Svidnica\";\"other\"\n\"3084093\";\"Švidņica\";\"other\"\n\"3084093\";\"Свидница\";\"other\"\n\"3084107\";\"Świątniki Górne\";\"main\"\n\"3084107\";\"Swiatniki Gorne\";\"ascii\"\n\"3084130\";\"Swarzędz\";\"main\"\n\"3084130\";\"Swarzedz\";\"ascii\"\n\"3084142\";\"Suszec\";\"main\"\n\"3084143\";\"Susz\";\"main\"\n\"3084143\";\"Rosenberg\";\"other\"\n\"3084143\";\"Rosenburg\";\"other\"\n\"3084143\";\"SUSH\";\"other\"\n\"3084143\";\"СУШ\";\"other\"\n\"3084178\";\"Sułoszowa\";\"main\"\n\"3084178\";\"Suloszowa\";\"ascii\"\n\"3084184\";\"Sulmierzyce\";\"main\"\n\"3084185\";\"Sulmierzyce\";\"main\"\n\"3084194\";\"Sułkowice\";\"main\"\n\"3084194\";\"Sulkowice\";\"ascii\"\n\"3084195\";\"Sułkowice\";\"main\"\n\"3084195\";\"Sulkowice\";\"ascii\"\n\"3084213\";\"Borne Sulinowo\";\"main\"\n\"3084213\";\"Linde\";\"other\"\n\"3084213\";\"Linde bei Krangen\";\"other\"\n\"3084213\";\"Lindee\";\"other\"\n\"3084213\";\"Sulinowo\";\"other\"\n\"3084224\";\"Sulików\";\"main\"\n\"3084224\";\"Sulikow\";\"ascii\"\n\"3084224\";\"Schonberg\";\"other\"\n\"3084224\";\"Schonberg in der Oberlausitz\";\"other\"\n\"3084224\";\"Schonberg ober Lausitz\";\"other\"\n\"3084224\";\"Schönberg\";\"other\"\n\"3084224\";\"Schönberg in der Oberlausitz\";\"other\"\n\"3084224\";\"Schönberg ober Lausitz\";\"other\"\n\"3084230\";\"Sulejów\";\"main\"\n\"3084230\";\"Sulejow\";\"ascii\"\n\"3084234\";\"Sulęczyno\";\"main\"\n\"3084234\";\"Suleczyno\";\"ascii\"\n\"3084237\";\"Sulęcin\";\"main\"\n\"3084237\";\"Sulecin\";\"ascii\"\n\"3084237\";\"Cielecin\";\"other\"\n\"3084237\";\"Sulencin\";\"other\"\n\"3084237\";\"Zielenzig\";\"other\"\n\"3084237\";\"Суленцин\";\"other\"\n\"3084241\";\"Sulechów\";\"main\"\n\"3084241\";\"Sulechow\";\"ascii\"\n\"3084241\";\"Cylichow\";\"other\"\n\"3084241\";\"Cylichów\";\"other\"\n\"3084241\";\"Zullichau\";\"other\"\n\"3084241\";\"Züllichau\";\"other\"\n\"3084289\";\"Suchań\";\"main\"\n\"3084289\";\"Suchan\";\"ascii\"\n\"3084289\";\"Zachan\";\"other\"\n\"3084300\";\"Sucha Beskidzka\";\"main\"\n\"3084300\";\"Sucha\";\"other\"\n\"3084312\";\"Subkowy\";\"main\"\n\"3084312\";\"Subkovy\";\"other\"\n\"3084312\";\"Субковы\";\"other\"\n\"3084324\";\"Studzionka\";\"main\"\n\"3084334\";\"Studzienice\";\"main\"\n\"3084353\";\"Strzyżowice\";\"main\"\n\"3084353\";\"Strzyzowice\";\"ascii\"\n\"3084396\";\"Strzelno\";\"main\"\n\"3084396\";\"STSHEL'NO\";\"other\"\n\"3084396\";\"Strelno\";\"other\"\n\"3084396\";\"СТШЕЛЬНО\";\"other\"\n\"3084404\";\"Strzelin\";\"main\"\n\"3084404\";\"Strehlen\";\"other\"\n\"3084408\";\"Strzeleczki\";\"main\"\n\"3084414\";\"Strzelce Wielkie\";\"main\"\n\"3084414\";\"Strzelce Wielki\";\"other\"\n\"3084415\";\"Strzelce Opolskie\";\"main\"\n\"3084415\";\"Gross Strehlitz\";\"other\"\n\"3084415\";\"Gross Strohlitz\";\"other\"\n\"3084415\";\"Strehlitz\";\"other\"\n\"3084415\";\"Strzelce\";\"other\"\n\"3084415\";\"Stshel'ce-Opol'ske\";\"other\"\n\"3084415\";\"Стшельце-Опольске\";\"other\"\n\"3084421\";\"Strzelce Krajeńskie\";\"main\"\n\"3084421\";\"Strzelce Krajenskie\";\"ascii\"\n\"3084421\";\"Friedeberg\";\"other\"\n\"3084421\";\"Friedeberg in Neumark\";\"other\"\n\"3084421\";\"Strzelce Krainskie\";\"other\"\n\"3084421\";\"Strzelce Kraińskie\";\"other\"\n\"3084440\";\"Strzegom\";\"main\"\n\"3084440\";\"Striegau\";\"other\"\n\"3084440\";\"Strzyglow\";\"other\"\n\"3084440\";\"Strzygłow\";\"other\"\n\"3084444\";\"Strzebiń\";\"main\"\n\"3084444\";\"Strzebin\";\"ascii\"\n\"3084449\";\"Strzałkowo\";\"main\"\n\"3084449\";\"Strzalkowo\";\"ascii\"\n\"3084457\";\"Stryszów\";\"main\"\n\"3084457\";\"Stryszow\";\"ascii\"\n\"3084460\";\"Stryszawa\";\"main\"\n\"3084464\";\"Stryków\";\"main\"\n\"3084464\";\"Strykow\";\"ascii\"\n\"3084483\";\"Strumień\";\"main\"\n\"3084483\";\"Strumien\";\"ascii\"\n\"3084515\";\"Stronie Śląskie\";\"main\"\n\"3084515\";\"Stronie Slaskie\";\"ascii\"\n\"3084515\";\"Seitenberg\";\"other\"\n\"3084515\";\"Seitenberg Grafschaft Glatz\";\"other\"\n\"3084569\";\"Stoszowice\";\"main\"\n\"3084641\";\"Stężyca\";\"main\"\n\"3084641\";\"Stezyca\";\"ascii\"\n\"3084641\";\"Stezyca Krolewska\";\"other\"\n\"3084641\";\"Stężyca Królewska\";\"other\"\n\"3084647\";\"Stęszew\";\"main\"\n\"3084647\";\"Steszew\";\"ascii\"\n\"3084660\";\"Stepnica\";\"main\"\n\"3084660\";\"Gross Stepenitz\";\"other\"\n\"3084660\";\"Stepenitz\";\"other\"\n\"3084660\";\"Stepnitz\";\"other\"\n\"3084660\";\"Stopnica\";\"other\"\n\"3084673\";\"Stegna\";\"main\"\n\"3084673\";\"Steegen\";\"other\"\n\"3084673\";\"Стегна\";\"other\"\n\"3084717\";\"Stawiszyn\";\"main\"\n\"3084759\";\"Stary Targ\";\"main\"\n\"3084759\";\"Altmark\";\"other\"\n\"3084759\";\"Stary-Targ\";\"other\"\n\"3084759\";\"Стары-Тарг\";\"other\"\n\"3084807\";\"Staroźreby\";\"main\"\n\"3084807\";\"Starozreby\";\"ascii\"\n\"3084807\";\"Staroz'reby\";\"other\"\n\"3084807\";\"Старозьребы\";\"other\"\n\"3084824\";\"Starokrzepice\";\"main\"\n\"3084826\";\"Starogard Gdański\";\"main\"\n\"3084826\";\"Starogard Gdanski\";\"ascii\"\n\"3084826\";\"Starogard\";\"other\"\n\"3084826\";\"Starogard-Gdan'ski\";\"other\"\n\"3084826\";\"Старогард-Гданьски\";\"other\"\n\"3084840\";\"Stargard Szczeciński\";\"main\"\n\"3084840\";\"Stargard Szczecinski\";\"ascii\"\n\"3084840\";\"Stargard\";\"other\"\n\"3084840\";\"Stargard Shchechin'ski\";\"other\"\n\"3084840\";\"Stargard Shchechinski\";\"other\"\n\"3084840\";\"Stargard-Shhecin'ski\";\"other\"\n\"3084840\";\"Stargarda Scecinska\";\"other\"\n\"3084840\";\"Stargarda Ščeciņska\";\"other\"\n\"3084840\";\"Stargardia\";\"other\"\n\"3084840\";\"Starnkarnt Setsetsinski\";\"other\"\n\"3084840\";\"Starogrod\";\"other\"\n\"3084840\";\"Storgard\";\"other\"\n\"3084840\";\"Stôrgard\";\"other\"\n\"3084840\";\"starghard ztsysynsky\";\"other\"\n\"3084840\";\"Στάργκαρντ Σετσέτσινσκι\";\"other\"\n\"3084840\";\"Старгард Шчечински\";\"other\"\n\"3084840\";\"Старгард Шчечиньски\";\"other\"\n\"3084840\";\"Старгард Щецінський\";\"other\"\n\"3084840\";\"Старгард Щеціньски\";\"other\"\n\"3084840\";\"Старгард-Щециньски\";\"other\"\n\"3084840\";\"ستارغارد زتسيسينسكي\";\"other\"\n\"3084840\";\"スタルガルト・シュチェチュンスキ\";\"other\"\n\"3084859\";\"Stare Pole\";\"main\"\n\"3084859\";\"Altfelde\";\"other\"\n\"3084859\";\"Stare-Pole\";\"other\"\n\"3084859\";\"Старе-Поле\";\"other\"\n\"3084900\";\"Stare Bogaczowice\";\"main\"\n\"3084912\";\"Starcza\";\"main\"\n\"3084953\";\"Stara Kiszewa\";\"main\"\n\"3084953\";\"Kiszewa Stara\";\"other\"\n\"3084954\";\"Stara Kamienica\";\"main\"\n\"3084954\";\"Stara Kamienice\";\"other\"\n\"3084965\";\"Stara Dąbrowa\";\"main\"\n\"3084965\";\"Stara Dabrowa\";\"ascii\"\n\"3084965\";\"Alt Damerow\";\"other\"\n\"3084977\";\"Stanowice\";\"main\"\n\"3084978\";\"Stanowice\";\"main\"\n\"3085045\";\"Środa Wielkopolska\";\"main\"\n\"3085045\";\"Sroda Wielkopolska\";\"ascii\"\n\"3085045\";\"Schroda\";\"other\"\n\"3085045\";\"Sroda\";\"other\"\n\"3085045\";\"Środa\";\"other\"\n\"3085047\";\"Środa Śląska\";\"main\"\n\"3085047\";\"Sroda Slaska\";\"ascii\"\n\"3085047\";\"Neumarkt\";\"other\"\n\"3085047\";\"Neumarkt in Schlesieu\";\"other\"\n\"3085047\";\"Sroda\";\"other\"\n\"3085056\";\"Śrem\";\"main\"\n\"3085056\";\"Srem\";\"ascii\"\n\"3085056\";\"Срем\";\"other\"\n\"3085069\";\"Spytkowice\";\"main\"\n\"3085069\";\"Spytkewice\";\"other\"\n\"3085070\";\"Spytkowice\";\"main\"\n\"3085119\";\"Sosnówka\";\"main\"\n\"3085119\";\"Sosnowka\";\"ascii\"\n\"3085128\";\"Sosnowiec\";\"main\"\n\"3085128\";\"Sosnovec\";\"other\"\n\"3085128\";\"Sosnoveca\";\"other\"\n\"3085128\";\"Sosnovecas\";\"other\"\n\"3085128\";\"Sosnovice\";\"other\"\n\"3085128\";\"Sosnowez\";\"other\"\n\"3085128\";\"Sossnowitz\";\"other\"\n\"3085128\";\"Сосновец\";\"other\"\n\"3085134\";\"Sośno\";\"main\"\n\"3085134\";\"Sosno\";\"ascii\"\n\"3085141\";\"Sośnicowice\";\"main\"\n\"3085141\";\"Sosnicowice\";\"ascii\"\n\"3085141\";\"Kiefernstadtel\";\"other\"\n\"3085141\";\"Kiefernstädtel\";\"other\"\n\"3085141\";\"Kieferstadtel\";\"other\"\n\"3085141\";\"Kieferstädtel\";\"other\"\n\"3085149\";\"Sopotnia Wielka\";\"main\"\n\"3085151\";\"Sopot\";\"main\"\n\"3085151\";\"SOPOT\";\"other\"\n\"3085151\";\"Sopoty\";\"other\"\n\"3085151\";\"Sopòt\";\"other\"\n\"3085151\";\"Zoppot\";\"other\"\n\"3085151\";\"СОПОТ\";\"other\"\n\"3085151\";\"Сопот\";\"other\"\n\"3085158\";\"Sompolno\";\"main\"\n\"3085158\";\"Deutscheneck\";\"other\"\n\"3085158\";\"SOMPOL'NO\";\"other\"\n\"3085158\";\"СОМПОЛЬНО\";\"other\"\n\"3085159\";\"Somonino\";\"main\"\n\"3085159\";\"Сомонино\";\"other\"\n\"3085172\";\"Solec Kujawski\";\"main\"\n\"3085172\";\"Schulitz\";\"other\"\n\"3085172\";\"Solec-Kujavski\";\"other\"\n\"3085172\";\"Солец-Куявски\";\"other\"\n\"3085182\";\"Szczerbice\";\"main\"\n\"3085187\";\"Sól\";\"main\"\n\"3085187\";\"Sol\";\"ascii\"\n\"3085252\";\"Sobótka\";\"main\"\n\"3085252\";\"Sobotka\";\"ascii\"\n\"3085252\";\"Zobten\";\"other\"\n\"3085252\";\"Zobten am Berge\";\"other\"\n\"3085360\";\"Smołdzino\";\"main\"\n\"3085360\";\"Smoldzino\";\"ascii\"\n\"3085360\";\"Schmolsin\";\"other\"\n\"3085384\";\"Śmiłowo\";\"main\"\n\"3085384\";\"Smilowo\";\"ascii\"\n\"3085391\";\"Śmigiel\";\"main\"\n\"3085391\";\"Smigiel\";\"ascii\"\n\"3085414\";\"Smętowo Graniczne\";\"main\"\n\"3085414\";\"Smetowo Graniczne\";\"ascii\"\n\"3085450\";\"Słupsk\";\"main\"\n\"3085450\";\"Slupsk\";\"ascii\"\n\"3085450\";\"Slupska\";\"other\"\n\"3085450\";\"Stolp\";\"other\"\n\"3085450\";\"Stolp in Pommern\";\"other\"\n\"3085450\";\"Stolpe\";\"other\"\n\"3085450\";\"Stolpsk\";\"other\"\n\"3085450\";\"Stôłpsk\";\"other\"\n\"3085450\";\"Слупск\";\"other\"\n\"3085457\";\"Słupno\";\"main\"\n\"3085457\";\"Slupno\";\"ascii\"\n\"3085457\";\"Слупно\";\"other\"\n\"3085479\";\"Słupia pod Kępnem\";\"main\"\n\"3085479\";\"Slupia pod Kepnem\";\"ascii\"\n\"3085481\";\"Słupca\";\"main\"\n\"3085481\";\"Slupca\";\"ascii\"\n\"3085494\";\"Słubice\";\"main\"\n\"3085494\";\"Slubice\";\"ascii\"\n\"3085494\";\"Слубице\";\"other\"\n\"3085495\";\"Słubice\";\"main\"\n\"3085495\";\"Slubice\";\"ascii\"\n\"3085495\";\"Damm-Vorstadt\";\"other\"\n\"3085495\";\"Слубице\";\"other\"\n\"3085565\";\"Śliwice\";\"main\"\n\"3085565\";\"Sliwice\";\"ascii\"\n\"3085565\";\"Slivice\";\"other\"\n\"3085565\";\"Сливице\";\"other\"\n\"3085578\";\"Ślesin\";\"main\"\n\"3085578\";\"Slesin\";\"ascii\"\n\"3085578\";\"SLESIN\";\"other\"\n\"3085578\";\"СЛЕСИН\";\"other\"\n\"3085584\";\"Ślemień\";\"main\"\n\"3085584\";\"Slemien\";\"ascii\"\n\"3085609\";\"Sławoborze\";\"main\"\n\"3085609\";\"Slawoborze\";\"ascii\"\n\"3085609\";\"Stolzenberg\";\"other\"\n\"3085610\";\"Sławno\";\"main\"\n\"3085610\";\"Slawno\";\"ascii\"\n\"3085610\";\"Schlawe\";\"other\"\n\"3085616\";\"Sławków\";\"main\"\n\"3085616\";\"Slawkow\";\"ascii\"\n\"3085622\";\"Sławięcice\";\"main\"\n\"3085622\";\"Slawiecice\";\"ascii\"\n\"3085622\";\"Ehrenforst\";\"other\"\n\"3085622\";\"Slawecice\";\"other\"\n\"3085622\";\"Slawensitz\";\"other\"\n\"3085622\";\"Sławęcice\";\"other\"\n\"3085637\";\"Sława\";\"main\"\n\"3085637\";\"Slawa\";\"ascii\"\n\"3085637\";\"Schlawa\";\"other\"\n\"3085637\";\"Schlawa Schlesien\";\"other\"\n\"3085637\";\"Schlesiersee\";\"other\"\n\"3085656\";\"Skwierzyna\";\"main\"\n\"3085656\";\"Schwerin\";\"other\"\n\"3085668\";\"Skrzyszów\";\"main\"\n\"3085668\";\"Skrzyszow\";\"ascii\"\n\"3085709\";\"Skrwilno\";\"main\"\n\"3085709\";\"Skrvil'no\";\"other\"\n\"3085709\";\"Скрвильно\";\"other\"\n\"3085757\";\"Skoroszyce\";\"main\"\n\"3085757\";\"Friedewalde\";\"other\"\n\"3085757\";\"Koppendorf Kolonia\";\"other\"\n\"3085757\";\"Kubinow\";\"other\"\n\"3085766\";\"Skórcz\";\"main\"\n\"3085766\";\"Skorcz\";\"ascii\"\n\"3085771\";\"Skomlin\";\"main\"\n\"3085772\";\"Skomielna Czarna\";\"main\"\n\"3085772\";\"Skomielna\";\"other\"\n\"3085781\";\"Skoki\";\"main\"\n\"3085781\";\"Schokken\";\"other\"\n\"3085786\";\"Skoczów\";\"main\"\n\"3085786\";\"Skoczow\";\"ascii\"\n\"3085802\";\"Skępe\";\"main\"\n\"3085802\";\"Skepe\";\"ascii\"\n\"3085802\";\"Skempe\";\"other\"\n\"3085802\";\"Скемпе\";\"other\"\n\"3085807\";\"Skawina\";\"main\"\n\"3085807\";\"Skavina\";\"other\"\n\"3085807\";\"Скавина\";\"other\"\n\"3085809\";\"Skawica\";\"main\"\n\"3085826\";\"Skarszewy\";\"main\"\n\"3085826\";\"SKARSHEVY\";\"other\"\n\"3085826\";\"СКАРШЕВЫ\";\"other\"\n\"3085855\";\"Skalmierzyce\";\"main\"\n\"3085855\";\"Skalmierzyce Stare\";\"other\"\n\"3085867\";\"Skała\";\"main\"\n\"3085867\";\"Skala\";\"ascii\"\n\"3085925\";\"Siewierz\";\"main\"\n\"3085941\";\"Sierpc\";\"main\"\n\"3085941\";\"SERPC\";\"other\"\n\"3085941\";\"Serpts\";\"other\"\n\"3085941\";\"СЕРПЦ\";\"other\"\n\"3085970\";\"Sierakowice\";\"main\"\n\"3085974\";\"Sieraków\";\"main\"\n\"3085974\";\"Sierakow\";\"ascii\"\n\"3085976\";\"Sieraków Śląski\";\"main\"\n\"3085976\";\"Sierakow Slaski\";\"ascii\"\n\"3085976\";\"Breitenmarkt\";\"other\"\n\"3085976\";\"Schierokau\";\"other\"\n\"3085976\";\"Sierakow\";\"other\"\n\"3085976\";\"Sieraków\";\"other\"\n\"3085978\";\"Sieradz\";\"main\"\n\"3085978\";\"Seradz\";\"other\"\n\"3085978\";\"Серадз\";\"other\"\n\"3085980\";\"Siepraw\";\"main\"\n\"3085999\";\"Sieniawa Żarska\";\"main\"\n\"3085999\";\"Sieniawa Zarska\";\"ascii\"\n\"3085999\";\"Schonwalde\";\"other\"\n\"3085999\";\"Schönwalde\";\"other\"\n\"3086000\";\"Sieniawa\";\"main\"\n\"3086001\";\"Sieniawa\";\"main\"\n\"3086010\";\"Siemkowice\";\"main\"\n\"3086024\";\"Siemianowice Śląskie\";\"main\"\n\"3086024\";\"Siemianowice Slaskie\";\"ascii\"\n\"3086024\";\"Siemianowice\";\"other\"\n\"3086024\";\"Siemianowitz\";\"other\"\n\"3086024\";\"Simjanovice Slonska\";\"other\"\n\"3086045\";\"Siekierczyn\";\"main\"\n\"3086106\";\"Siechnice\";\"main\"\n\"3086106\";\"Kraftborn\";\"other\"\n\"3086106\";\"Tschechnitz\";\"other\"\n\"3086109\";\"Sidzina\";\"main\"\n\"3086110\";\"Sidzina\";\"main\"\n\"3086111\";\"Sidzina\";\"main\"\n\"3086134\";\"Sianów\";\"main\"\n\"3086134\";\"Sianow\";\"ascii\"\n\"3086134\";\"Zanow\";\"other\"\n\"3086153\";\"Sępólno Krajeńskie\";\"main\"\n\"3086153\";\"Sepolno Krajenskie\";\"ascii\"\n\"3086153\";\"Cembelburg\";\"other\"\n\"3086153\";\"Krainskie\";\"other\"\n\"3086153\";\"Kraińskie\";\"other\"\n\"3086153\";\"Sepolno\";\"other\"\n\"3086153\";\"Sepolno Krainskie\";\"other\"\n\"3086153\";\"Sępolno\";\"other\"\n\"3086153\";\"Sępólno Kraińskie\";\"other\"\n\"3086153\";\"Zempelburg\";\"other\"\n\"3086192\";\"Secemin\";\"main\"\n\"3086206\";\"Ścinawa\";\"main\"\n\"3086206\";\"Scinawa\";\"ascii\"\n\"3086206\";\"Steinau\";\"other\"\n\"3086206\";\"Steinau am Oder\";\"other\"\n\"3086253\";\"Sarnów\";\"main\"\n\"3086253\";\"Sarnow\";\"ascii\"\n\"3086288\";\"Sanniki\";\"main\"\n\"3086288\";\"Санники\";\"other\"\n\"3086371\";\"Sadlinki\";\"main\"\n\"3086371\";\"Sedlinen\";\"other\"\n\"3086371\";\"Садлинки\";\"other\"\n\"3086377\";\"Sadki\";\"main\"\n\"3086377\";\"Sadke\";\"other\"\n\"3086377\";\"Schlossberg\";\"other\"\n\"3086377\";\"Kr. Wirsitz\";\"other\"\n\"3086377\";\"Schloßberg\";\"other\"\n\"3086379\";\"Sączów\";\"main\"\n\"3086379\";\"Saczow\";\"ascii\"\n\"3086399\";\"Gmina Rzgów\";\"main\"\n\"3086399\";\"Gmina Rzgow\";\"ascii\"\n\"3086435\";\"Rzepin\";\"main\"\n\"3086435\";\"Reppen\";\"other\"\n\"3086435\";\"Rypin Lubuski\";\"other\"\n\"3086435\";\"Zhepin\";\"other\"\n\"3086435\";\"Жепин\";\"other\"\n\"3086469\";\"Rzeczenica\";\"main\"\n\"3086469\";\"Stegers\";\"other\"\n\"3086511\";\"Rypin\";\"main\"\n\"3086511\";\"RYPIN\";\"other\"\n\"3086511\";\"Ripin\";\"other\"\n\"3086511\";\"РЫПИН\";\"other\"\n\"3086523\";\"Rymań\";\"main\"\n\"3086523\";\"Ryman\";\"ascii\"\n\"3086523\";\"Roman\";\"other\"\n\"3086524\";\"Ryjewo\";\"main\"\n\"3086524\";\"Rehhof\";\"other\"\n\"3086527\";\"Rydzyna\";\"main\"\n\"3086531\";\"Rydułtowy\";\"main\"\n\"3086531\";\"Rydultowy\";\"ascii\"\n\"3086531\";\"Rydultovy\";\"other\"\n\"3086531\";\"Рыдултовы\";\"other\"\n\"3086533\";\"Ryczywół\";\"main\"\n\"3086533\";\"Ryczywol\";\"ascii\"\n\"3086541\";\"Rychwał\";\"main\"\n\"3086541\";\"Rychwal\";\"ascii\"\n\"3086574\";\"Rybno\";\"main\"\n\"3086574\";\"Рыбно\";\"other\"\n\"3086586\";\"Rybnik\";\"main\"\n\"3086586\";\"Ribnika\";\"other\"\n\"3086586\";\"Ribņika\";\"other\"\n\"3086586\";\"lei bu ni ke\";\"other\"\n\"3086586\";\"ribuniku\";\"other\"\n\"3086586\";\"リブニク\";\"other\"\n\"3086586\";\"雷布尼克\";\"other\"\n\"3086608\";\"Rybarzowice\";\"main\"\n\"3086706\";\"Rumia\";\"main\"\n\"3086706\";\"RUMJA\";\"other\"\n\"3086706\";\"Rumja\";\"other\"\n\"3086706\";\"РУМЯ\";\"other\"\n\"3086720\";\"Rudziniec\";\"main\"\n\"3086720\";\"Rudgershagen\";\"other\"\n\"3086720\";\"Rudzinitz\";\"other\"\n\"3086732\";\"Rudy\";\"main\"\n\"3086732\";\"Gross Rauden\";\"other\"\n\"3086732\";\"Rauden\";\"other\"\n\"3086732\";\"Ruda\";\"other\"\n\"3086752\";\"Rudniki\";\"main\"\n\"3086754\";\"Rudniki\";\"main\"\n\"3086759\";\"Rudnik\";\"main\"\n\"3086759\";\"Herrenkirch\";\"other\"\n\"3086760\";\"Rudnik\";\"main\"\n\"3086775\";\"Rudna\";\"main\"\n\"3086775\";\"Raudten\";\"other\"\n\"3086800\";\"Ruda Śląska\";\"main\"\n\"3086800\";\"Ruda Slaska\";\"ascii\"\n\"3086800\";\"Ruda\";\"other\"\n\"3086800\";\"Ruda Slonska\";\"other\"\n\"3086800\";\"Ruda-Slenska\";\"other\"\n\"3086800\";\"Руда-Сленска\";\"other\"\n\"3086861\";\"Rozprza\";\"main\"\n\"3086903\";\"Rozdrażew\";\"main\"\n\"3086903\";\"Rozdrazew\";\"ascii\"\n\"3086992\";\"Rościszewo\";\"main\"\n\"3086992\";\"Rosciszewo\";\"ascii\"\n\"3086992\";\"Ros'cishevo\";\"other\"\n\"3086992\";\"Росьцишево\";\"other\"\n\"3087047\";\"Rokiciny\";\"main\"\n\"3087071\";\"Rogóźno\";\"main\"\n\"3087071\";\"Rogozno\";\"ascii\"\n\"3087071\";\"Roguz'no\";\"other\"\n\"3087071\";\"Рогузьно\";\"other\"\n\"3087072\";\"Rogoźno\";\"main\"\n\"3087072\";\"Rogozno\";\"ascii\"\n\"3087072\";\"Rogasen\";\"other\"\n\"3087072\";\"Rogozno Wielkopolskie\";\"other\"\n\"3087072\";\"Roguz'no\";\"other\"\n\"3087072\";\"Rogóźno Wielkopolskie\";\"other\"\n\"3087072\";\"Рогузьно\";\"other\"\n\"3087076\";\"Rogoźnik\";\"main\"\n\"3087076\";\"Rogoznik\";\"ascii\"\n\"3087096\";\"Rogowo\";\"main\"\n\"3087097\";\"Rogowo\";\"main\"\n\"3087112\";\"Rogów\";\"main\"\n\"3087112\";\"Rogow\";\"ascii\"\n\"3087126\";\"Rogalinek\";\"main\"\n\"3087176\";\"Rewal\";\"main\"\n\"3087176\";\"Reval'\";\"other\"\n\"3087176\";\"Rewahl\";\"other\"\n\"3087176\";\"Реваль\";\"other\"\n\"3087195\";\"Resko\";\"main\"\n\"3087195\";\"Regenwalde\";\"other\"\n\"3087203\";\"Reńska Wieś\";\"main\"\n\"3087203\";\"Renska Wies\";\"ascii\"\n\"3087256\";\"Rędziny\";\"main\"\n\"3087256\";\"Redziny\";\"ascii\"\n\"3087281\";\"Reda\";\"main\"\n\"3087281\";\"REDA\";\"other\"\n\"3087281\";\"РЕДА\";\"other\"\n\"3087285\";\"Ręczno\";\"main\"\n\"3087285\";\"Reczno\";\"ascii\"\n\"3087287\";\"Recz\";\"main\"\n\"3087287\";\"Reetz\";\"other\"\n\"3087307\";\"Rawicz\";\"main\"\n\"3087307\";\"Ravich\";\"other\"\n\"3087307\";\"Rawitsch\";\"other\"\n\"3087307\";\"Равiч\";\"other\"\n\"3087307\";\"Равич\";\"other\"\n\"3087333\";\"Raszków\";\"main\"\n\"3087333\";\"Raszkow\";\"ascii\"\n\"3087383\";\"Rakoniewice\";\"main\"\n\"3087401\";\"Rajcza\";\"main\"\n\"3087410\";\"Radzyń Chełmiński\";\"main\"\n\"3087410\";\"Radzyn Chelminski\";\"ascii\"\n\"3087410\";\"Radzyn\";\"other\"\n\"3087410\";\"Radzyn'-Khelmin'ski\";\"other\"\n\"3087410\";\"Radzyń\";\"other\"\n\"3087410\";\"Радзынь-Хелминьски\";\"other\"\n\"3087418\";\"Radzionków\";\"main\"\n\"3087418\";\"Radzionkow\";\"ascii\"\n\"3087427\";\"Radziejów\";\"main\"\n\"3087427\";\"Radziejow\";\"ascii\"\n\"3087427\";\"RADZEJUV\";\"other\"\n\"3087427\";\"РАДЗЕЮВ\";\"other\"\n\"3087431\";\"Radziechowy\";\"main\"\n\"3087440\";\"Radzanowo\";\"main\"\n\"3087440\";\"Radzanovo\";\"other\"\n\"3087440\";\"Радзаново\";\"other\"\n\"3087462\";\"Radowo Małe\";\"main\"\n\"3087462\";\"Radowo Male\";\"ascii\"\n\"3087497\";\"Radomsko\";\"main\"\n\"3087497\";\"Novoradomsk\";\"other\"\n\"3087497\";\"Nowo Radomsko\";\"other\"\n\"3087497\";\"Радомско\";\"other\"\n\"3087499\";\"Radomin\";\"main\"\n\"3087499\";\"Радомин\";\"other\"\n\"3087529\";\"Radlin\";\"main\"\n\"3087535\";\"Radków\";\"main\"\n\"3087535\";\"Radkow\";\"ascii\"\n\"3087535\";\"Hradek\";\"other\"\n\"3087535\";\"Wunschelburg\";\"other\"\n\"3087535\";\"Wünschelburg\";\"other\"\n\"3087573\";\"Racławice Śląskie\";\"main\"\n\"3087573\";\"Raclawice Slaskie\";\"ascii\"\n\"3087573\";\"Deutsch Rasselwitz\";\"other\"\n\"3087573\";\"Raclawice\";\"other\"\n\"3087573\";\"Racławice\";\"other\"\n\"3087576\";\"Racławice\";\"main\"\n\"3087576\";\"Raclawice\";\"ascii\"\n\"3087584\";\"Racibórz\";\"main\"\n\"3087584\";\"Raciborz\";\"ascii\"\n\"3087584\";\"Raciboza\";\"other\"\n\"3087584\";\"Raciboža\";\"other\"\n\"3087584\";\"Ratibor\";\"other\"\n\"3087584\";\"Ratihor\";\"other\"\n\"3087584\";\"rachibushu\";\"other\"\n\"3087584\";\"Ратибор\";\"other\"\n\"3087584\";\"ラチブシュ\";\"other\"\n\"3087589\";\"Raciążek\";\"main\"\n\"3087589\";\"Raciazek\";\"ascii\"\n\"3087601\";\"Rabka-Zdrój\";\"main\"\n\"3087601\";\"Rabka-Zdroj\";\"ascii\"\n\"3087601\";\"Rabka\";\"other\"\n\"3087603\";\"Rąbino\";\"main\"\n\"3087603\";\"Rabino\";\"ascii\"\n\"3087613\";\"Raba Wyżna\";\"main\"\n\"3087613\";\"Raba Wyzna\";\"ascii\"\n\"3087617\";\"Pyzdry\";\"main\"\n\"3087628\";\"Pyskowice\";\"main\"\n\"3087628\";\"Peiskretscham\";\"other\"\n\"3087628\";\"Pieskretscham\";\"other\"\n\"3087630\";\"Pyrzyce\";\"main\"\n\"3087630\";\"Pyritz\";\"other\"\n\"3087640\";\"Puszczykowo\";\"main\"\n\"3087675\";\"Puńców\";\"main\"\n\"3087675\";\"Puncow\";\"ascii\"\n\"3087691\";\"Puck\";\"main\"\n\"3087691\";\"PUCK\";\"other\"\n\"3087691\";\"Putzig\";\"other\"\n\"3087691\";\"Pùck\";\"other\"\n\"3087691\";\"ПУЦК\";\"other\"\n\"3087701\";\"Pszów\";\"main\"\n\"3087701\";\"Pszow\";\"ascii\"\n\"3087701\";\"Pschow\";\"other\"\n\"3087705\";\"Pszczyna\";\"main\"\n\"3087705\";\"Pless\";\"other\"\n\"3087705\";\"Pszczyn\";\"other\"\n\"3087708\";\"Pszczółki\";\"main\"\n\"3087708\";\"Pszczolki\";\"ascii\"\n\"3087708\";\"Hohenstein\";\"other\"\n\"3087740\";\"Psary\";\"main\"\n\"3087742\";\"Psary\";\"main\"\n\"3087743\";\"Psary\";\"main\"\n\"3087744\";\"Psary\";\"main\"\n\"3087758\";\"Przywidz\";\"main\"\n\"3087758\";\"Mariensee\";\"other\"\n\"3087773\";\"Przyszowice\";\"main\"\n\"3087782\";\"Przystajń\";\"main\"\n\"3087782\";\"Przystajn\";\"ascii\"\n\"3087800\";\"Przyrów\";\"main\"\n\"3087800\";\"Przyrow\";\"ascii\"\n\"3087895\";\"Przyborów\";\"main\"\n\"3087895\";\"Przyborow\";\"ascii\"\n\"3087896\";\"Przyborów\";\"main\"\n\"3087896\";\"Przyborow\";\"ascii\"\n\"3087905\";\"Przybiernów\";\"main\"\n\"3087905\";\"Przybiernow\";\"ascii\"\n\"3087905\";\"Pribbernow\";\"other\"\n\"3087906\";\"Przodkowo\";\"main\"\n\"3087920\";\"Przeworno\";\"main\"\n\"3087920\";\"Prieborn\";\"other\"\n\"3087954\";\"Przemków\";\"main\"\n\"3087954\";\"Przemkow\";\"ascii\"\n\"3087954\";\"Primkenau\";\"other\"\n\"3087954\";\"Prymka\";\"other\"\n\"3087954\";\"Przemkowo\";\"other\"\n\"3087992\";\"Przedecz\";\"main\"\n\"3087992\";\"PSHEDECH\";\"other\"\n\"3087992\";\"ПШЕДЕЧ\";\"other\"\n\"3087994\";\"Przedbórz\";\"main\"\n\"3087994\";\"Przedborz\";\"ascii\"\n\"3087994\";\"Pshedbuzh\";\"other\"\n\"3087994\";\"Пшедбуж\";\"other\"\n\"3088011\";\"Przeciszów\";\"main\"\n\"3088011\";\"Przeciszow\";\"ascii\"\n\"3088017\";\"Przechlewo\";\"main\"\n\"3088017\";\"Prechlau\";\"other\"\n\"3088033\";\"Pruszcz\";\"main\"\n\"3088033\";\"Prushh\";\"other\"\n\"3088033\";\"Pruszcz Pomorski\";\"other\"\n\"3088033\";\"Прущ\";\"other\"\n\"3088034\";\"Pruszcz Gdański\";\"main\"\n\"3088034\";\"Pruszcz Gdanski\";\"ascii\"\n\"3088034\";\"Praust\";\"other\"\n\"3088034\";\"Pruszcz\";\"other\"\n\"3088060\";\"Prusice\";\"main\"\n\"3088060\";\"Prausnitz\";\"other\"\n\"3088065\";\"Prudnik\";\"main\"\n\"3088065\";\"Neustadt\";\"other\"\n\"3088065\";\"Neustadt in Oberschlesien\";\"other\"\n\"3088065\";\"Прудник\";\"other\"\n\"3088067\";\"Pruchna\";\"main\"\n\"3088077\";\"Prószków\";\"main\"\n\"3088077\";\"Proszkow\";\"ascii\"\n\"3088077\";\"Proskau\";\"other\"\n\"3088077\";\"Proskow\";\"other\"\n\"3088096\";\"Prochowice\";\"main\"\n\"3088096\";\"Parchwitz\";\"other\"\n\"3088135\";\"Praszka\";\"main\"\n\"3088161\";\"Prabuty\";\"main\"\n\"3088161\";\"PRABUTY\";\"other\"\n\"3088161\";\"Riesenburg\";\"other\"\n\"3088161\";\"ПРАБУТЫ\";\"other\"\n\"3088171\";\"Poznań\";\"main\"\n\"3088171\";\"Poznan\";\"ascii\"\n\"3088171\";\"Posen\";\"other\"\n\"3088171\";\"Poznan'\";\"other\"\n\"3088171\";\"Познань\";\"other\"\n\"3088211\";\"Potok Złoty\";\"main\"\n\"3088211\";\"Potok Zloty\";\"ascii\"\n\"3088211\";\"Zloty Potok\";\"other\"\n\"3088211\";\"Złoty Potok\";\"other\"\n\"3088220\";\"Potęgowo\";\"main\"\n\"3088220\";\"Potegowo\";\"ascii\"\n\"3088271\";\"Cynków\";\"main\"\n\"3088271\";\"Cynkow\";\"ascii\"\n\"3088271\";\"Poreba\";\"other\"\n\"3088271\";\"Poreba-Cynkow\";\"other\"\n\"3088271\";\"Poręba\";\"other\"\n\"3088271\";\"Poręba-Cynków\";\"other\"\n\"3088273\";\"Poręba\";\"main\"\n\"3088273\";\"Poreba\";\"ascii\"\n\"3088273\";\"Poremba\";\"other\"\n\"3088273\";\"Поремба\";\"other\"\n\"3088281\";\"Poraj\";\"main\"\n\"3088290\";\"Porąbka\";\"main\"\n\"3088290\";\"Porabka\";\"ascii\"\n\"3088324\";\"Popielów\";\"main\"\n\"3088324\";\"Popielow\";\"ascii\"\n\"3088324\";\"Klink\";\"other\"\n\"3088324\";\"Kolonie Poppelau\";\"other\"\n\"3088324\";\"Poppelau\";\"other\"\n\"3088324\";\"Poppelau Kolonie\";\"other\"\n\"3088345\";\"Poniec\";\"main\"\n\"3088418\";\"Polska Cerekiew\";\"main\"\n\"3088418\";\"Cerkiew Polska\";\"other\"\n\"3088418\";\"Gross Neukirch\";\"other\"\n\"3088418\";\"Polnisch Neukirch\";\"other\"\n\"3088427\";\"Połomia\";\"main\"\n\"3088427\";\"Polomia\";\"ascii\"\n\"3088435\";\"Polkowice\";\"main\"\n\"3088435\";\"Bolkowice\";\"other\"\n\"3088435\";\"Heerwegen\";\"other\"\n\"3088435\";\"Pol'kovice\";\"other\"\n\"3088435\";\"Polkwitz\";\"other\"\n\"3088435\";\"Polkwitz Kreis Glogau\";\"other\"\n\"3088435\";\"Польковице\";\"other\"\n\"3088461\";\"Police\";\"main\"\n\"3088461\";\"Policija\";\"other\"\n\"3088461\";\"Politz\";\"other\"\n\"3088461\";\"Pölitz\";\"other\"\n\"3088461\";\"Полиция\";\"other\"\n\"3088477\";\"Połczyn-Zdrój\";\"main\"\n\"3088477\";\"Polczyn-Zdroj\";\"ascii\"\n\"3088477\";\"Bad Polzin\";\"other\"\n\"3088477\";\"Polzin\";\"other\"\n\"3088492\";\"Polanów\";\"main\"\n\"3088492\";\"Polanow\";\"ascii\"\n\"3088492\";\"Pollnow\";\"other\"\n\"3088493\";\"Polanka Wielka\";\"main\"\n\"3088496\";\"Polanica-Zdrój\";\"main\"\n\"3088496\";\"Polanica-Zdroj\";\"ascii\"\n\"3088496\";\"Altheide\";\"other\"\n\"3088496\";\"Altheide Bad\";\"other\"\n\"3088496\";\"Bad Altheide\";\"other\"\n\"3088496\";\"Poljanica-Zdruj\";\"other\"\n\"3088496\";\"Поляница-Здруй\";\"other\"\n\"3088504\";\"Połajewo\";\"main\"\n\"3088504\";\"Polajewo\";\"ascii\"\n\"3088526\";\"Pokój\";\"main\"\n\"3088526\";\"Pokoj\";\"ascii\"\n\"3088526\";\"Carlsruhe\";\"other\"\n\"3088535\";\"Pogwizdów\";\"main\"\n\"3088535\";\"Pogwizdow\";\"ascii\"\n\"3088548\";\"Pogorzela\";\"main\"\n\"3088550\";\"Pogórze\";\"main\"\n\"3088550\";\"Pogorze\";\"ascii\"\n\"3088685\";\"Podgórzyn\";\"main\"\n\"3088685\";\"Podgorzyn\";\"ascii\"\n\"3088685\";\"Giersdorf\";\"other\"\n\"3088710\";\"Poddębice\";\"main\"\n\"3088710\";\"Poddebice\";\"ascii\"\n\"3088747\";\"Pobierowo\";\"main\"\n\"3088747\";\"Poberow\";\"other\"\n\"3088749\";\"Pobiedziska\";\"main\"\n\"3088749\";\"Pudewitz\";\"other\"\n\"3088749\";\"bociniec\";\"other\"\n\"3088759\";\"Pniewy\";\"main\"\n\"3088759\";\"Pinne\";\"other\"\n\"3088774\";\"Płużnica\";\"main\"\n\"3088774\";\"Pluznica\";\"ascii\"\n\"3088788\";\"Płoty\";\"main\"\n\"3088788\";\"Ploty\";\"ascii\"\n\"3088788\";\"Plate\";\"other\"\n\"3088788\";\"Plathe\";\"other\"\n\"3088825\";\"Płock\";\"main\"\n\"3088825\";\"Plock\";\"ascii\"\n\"3088825\";\"PLOCK\";\"other\"\n\"3088825\";\"Plocka\";\"other\"\n\"3088825\";\"Plotsk\";\"other\"\n\"3088825\";\"puu~otsuku\";\"other\"\n\"3088825\";\"ПЛОЦК\";\"other\"\n\"3088825\";\"Плоцк\";\"other\"\n\"3088825\";\"プウォツク\";\"other\"\n\"3088846\";\"Plewiska\";\"main\"\n\"3088848\";\"Pleszew\";\"main\"\n\"3088873\";\"Pławno\";\"main\"\n\"3088873\";\"Plawno\";\"ascii\"\n\"3088927\";\"Pisarzowice\";\"main\"\n\"3088931\";\"Pisarzowice\";\"main\"\n\"3088972\";\"Piotrków Trybunalski\";\"main\"\n\"3088972\";\"Piotrkow Trybunalski\";\"ascii\"\n\"3088972\";\"Petrikau\";\"other\"\n\"3088972\";\"Petrokov\";\"other\"\n\"3088972\";\"Piotrkow\";\"other\"\n\"3088972\";\"Piotrków\";\"other\"\n\"3088972\";\"Pjotrkova Tribunalska\";\"other\"\n\"3088972\";\"Pjotrkova Tribunaļska\";\"other\"\n\"3088972\";\"Pjotrkuv-Trybunal'ski\";\"other\"\n\"3088972\";\"Пётркув-Трыбунальски\";\"other\"\n\"3088977\";\"Piotrków Kujawski\";\"main\"\n\"3088977\";\"Piotrkow Kujawski\";\"ascii\"\n\"3088977\";\"Piotrkow\";\"other\"\n\"3088977\";\"Piotrków\";\"other\"\n\"3089010\";\"Pilica\";\"main\"\n\"3089019\";\"Pilchowice\";\"main\"\n\"3089019\";\"Bilchengrund\";\"other\"\n\"3089019\";\"Pilchowitz\";\"other\"\n\"3089025\";\"Piława Górna\";\"main\"\n\"3089025\";\"Pilawa Gorna\";\"ascii\"\n\"3089033\";\"Piła\";\"main\"\n\"3089033\";\"Pila\";\"ascii\"\n\"3089033\";\"Pily\";\"other\"\n\"3089033\";\"Schneidemuhl\";\"other\"\n\"3089033\";\"Schneidemühl\";\"other\"\n\"3089033\";\"Пилы\";\"other\"\n\"3089048\";\"Pietrzykowice\";\"main\"\n\"3089057\";\"Pietrowice Wielkie\";\"main\"\n\"3089065\";\"Pieszyce\";\"main\"\n\"3089093\";\"Pierściec\";\"main\"\n\"3089093\";\"Piersciec\";\"ascii\"\n\"3089098\";\"Pieńsk\";\"main\"\n\"3089098\";\"Piensk\";\"ascii\"\n\"3089098\";\"Penzig\";\"other\"\n\"3089114\";\"Pielgrzymowice\";\"main\"\n\"3089125\";\"Piekary Śląskie\";\"main\"\n\"3089125\";\"Piekary Slaskie\";\"ascii\"\n\"3089125\";\"Piekary Wielkie\";\"other\"\n\"3089152\";\"Piechowice\";\"main\"\n\"3089152\";\"Petersdorf\";\"other\"\n\"3089217\";\"Piaski\";\"main\"\n\"3089238\";\"Piasek\";\"main\"\n\"3089255\";\"Pewel Wielka\";\"main\"\n\"3089256\";\"Pewel Ślemieńska\";\"main\"\n\"3089256\";\"Pewel Slemienska\";\"ascii\"\n\"3089276\";\"Pępowo\";\"main\"\n\"3089276\";\"Pepowo\";\"ascii\"\n\"3089282\";\"Pelplin\";\"main\"\n\"3089282\";\"PEL'PLIN\";\"other\"\n\"3089282\";\"ПЕЛЬПЛИН\";\"other\"\n\"3089286\";\"Pełczyce\";\"main\"\n\"3089286\";\"Pelczyce\";\"ascii\"\n\"3089286\";\"Bernstein\";\"other\"\n\"3089301\";\"Pecna\";\"main\"\n\"3089310\";\"Pcim\";\"main\"\n\"3089316\";\"Pawonków\";\"main\"\n\"3089316\";\"Pawonkow\";\"ascii\"\n\"3089332\";\"Pawłowiczki\";\"main\"\n\"3089332\";\"Pawlowiczki\";\"ascii\"\n\"3089340\";\"Pawłowice\";\"main\"\n\"3089340\";\"Pawlowice\";\"ascii\"\n\"3089372\";\"Pątnów\";\"main\"\n\"3089372\";\"Patnow\";\"ascii\"\n\"3089375\";\"Paszowice\";\"main\"\n\"3089392\";\"Pasłęk\";\"main\"\n\"3089392\";\"Paslek\";\"ascii\"\n\"3089392\";\"PASLENK\";\"other\"\n\"3089392\";\"Preussen Holland\";\"other\"\n\"3089392\";\"Preussisch Holad\";\"other\"\n\"3089392\";\"Preussisch Holland\";\"other\"\n\"3089392\";\"ПАСЛЕНК\";\"other\"\n\"3089461\";\"Parchowo\";\"main\"\n\"3089494\";\"Panki\";\"main\"\n\"3089496\";\"Paniówki\";\"main\"\n\"3089496\";\"Paniowki\";\"ascii\"\n\"3089533\";\"Palcza\";\"main\"\n\"3089541\";\"Pakosławice\";\"main\"\n\"3089541\";\"Pakoslawice\";\"ascii\"\n\"3089543\";\"Pakosław\";\"main\"\n\"3089543\";\"Pakoslaw\";\"ascii\"\n\"3089547\";\"Pakość\";\"main\"\n\"3089547\";\"Pakosc\";\"ascii\"\n\"3089547\";\"PAKOSC'\";\"other\"\n\"3089547\";\"ПАКОСЦЬ\";\"other\"\n\"3089553\";\"Pajęczno\";\"main\"\n\"3089553\";\"Pajeczno\";\"ascii\"\n\"3089566\";\"Paczków\";\"main\"\n\"3089566\";\"Paczkow\";\"ascii\"\n\"3089566\";\"Patschkau\";\"other\"\n\"3089569\";\"Pacyna\";\"main\"\n\"3089569\";\"Pacina\";\"other\"\n\"3089569\";\"Пацина\";\"other\"\n\"3089578\";\"Pabianice\";\"main\"\n\"3089578\";\"Pab'janice\";\"other\"\n\"3089578\";\"Pab'yanitsy\";\"other\"\n\"3089578\";\"Pabjanice\";\"other\"\n\"3089578\";\"Pabjaņice\";\"other\"\n\"3089578\";\"Pab’yanitsy\";\"other\"\n\"3089578\";\"Пабьянице\";\"other\"\n\"3089578\";\"Пабянице\";\"other\"\n\"3089578\";\"Пабјањице\";\"other\"\n\"3089582\";\"Ozorków\";\"main\"\n\"3089582\";\"Ozorkow\";\"ascii\"\n\"3089582\";\"Ozorkov\";\"other\"\n\"3089583\";\"Ozimek\";\"main\"\n\"3089583\";\"Malapane\";\"other\"\n\"3089583\";\"Malapane Oberschlesien\";\"other\"\n\"3089590\";\"Ożarowice\";\"main\"\n\"3089590\";\"Ozarowice\";\"ascii\"\n\"3089590\";\"Ozgrowice\";\"other\"\n\"3089590\";\"Ożgrowice\";\"other\"\n\"3089591\";\"Ożarów\";\"main\"\n\"3089591\";\"Ozarow\";\"ascii\"\n\"3089642\";\"Otmuchów\";\"main\"\n\"3089642\";\"Otmuchow\";\"ascii\"\n\"3089642\";\"Odmuchow\";\"other\"\n\"3089642\";\"Ottmachau\";\"other\"\n\"3089658\";\"Oświęcim\";\"main\"\n\"3089658\";\"Oswiecim\";\"ascii\"\n\"3089658\";\"Auschwitz\";\"other\"\n\"3089658\";\"Osbietsim\";\"other\"\n\"3089658\";\"Osvencim\";\"other\"\n\"3089658\";\"Osvetim\";\"other\"\n\"3089658\";\"Osviencim\";\"other\"\n\"3089658\";\"Osvětim\";\"other\"\n\"3089658\";\"oshifienchimu\";\"other\"\n\"3089658\";\"Όσβιετσιμ\";\"other\"\n\"3089658\";\"Освенцим\";\"other\"\n\"3089658\";\"Освиенцим\";\"other\"\n\"3089658\";\"オシフィエンチム\";\"other\"\n\"3089670\";\"Ostrzeszów\";\"main\"\n\"3089670\";\"Ostrzeszow\";\"ascii\"\n\"3089680\";\"Ostrowy\";\"main\"\n\"3089681\";\"Ostrowy nad Okszą\";\"main\"\n\"3089681\";\"Ostrowy nad Oksza\";\"ascii\"\n\"3089684\";\"Ostrów Wielkopolski\";\"main\"\n\"3089684\";\"Ostrow Wielkopolski\";\"ascii\"\n\"3089684\";\"Ostrov\";\"other\"\n\"3089684\";\"Ostrova Velkopolska\";\"other\"\n\"3089684\";\"Ostrova Veļkopoļska\";\"other\"\n\"3089684\";\"Ostrovia\";\"other\"\n\"3089684\";\"Ostrovo\";\"other\"\n\"3089684\";\"Ostrow\";\"other\"\n\"3089684\";\"Ostruv-Vel'kopol'ski\";\"other\"\n\"3089684\";\"Ostrów\";\"other\"\n\"3089684\";\"Острув-Велькопольски\";\"other\"\n\"3089764\";\"Ostroszowice\";\"main\"\n\"3089764\";\"Weigelsdorf\";\"other\"\n\"3089764\";\"Wyganow\";\"other\"\n\"3089767\";\"Ostroróg\";\"main\"\n\"3089767\";\"Ostrorog\";\"ascii\"\n\"3089779\";\"Ostróda\";\"main\"\n\"3089779\";\"Ostroda\";\"ascii\"\n\"3089779\";\"OSTRUDA\";\"other\"\n\"3089779\";\"Osterode\";\"other\"\n\"3089779\";\"ОСТРУДА\";\"other\"\n\"3089791\";\"Ostaszewo\";\"main\"\n\"3089791\";\"Ostashevo\";\"other\"\n\"3089791\";\"Schoneberg\";\"other\"\n\"3089791\";\"Schöneberg\";\"other\"\n\"3089791\";\"Осташево\";\"other\"\n\"3089832\";\"Ośno Lubuskie\";\"main\"\n\"3089832\";\"Osno Lubuskie\";\"ascii\"\n\"3089832\";\"Drossen\";\"other\"\n\"3089832\";\"Osno\";\"other\"\n\"3089832\";\"Ośno\";\"other\"\n\"3089855\";\"Osjaków\";\"main\"\n\"3089855\";\"Osjakow\";\"ascii\"\n\"3089876\";\"Osina\";\"main\"\n\"3089881\";\"Osielsko\";\"main\"\n\"3089882\";\"Osielec\";\"main\"\n\"3089891\";\"Osiek nad Notecią\";\"main\"\n\"3089891\";\"Osiek nad Notecia\";\"ascii\"\n\"3089904\";\"Osiek\";\"main\"\n\"3089904\";\"Osek\";\"other\"\n\"3089904\";\"Осек\";\"other\"\n\"3089908\";\"Osiek\";\"main\"\n\"3089908\";\"Osiek-nad-Wisla\";\"other\"\n\"3089908\";\"Osiek-nad-Wisła\";\"other\"\n\"3089917\";\"Osiek\";\"main\"\n\"3089923\";\"Osiek\";\"main\"\n\"3089924\";\"Osiek\";\"main\"\n\"3089934\";\"Osieczna\";\"main\"\n\"3089941\";\"Osięciny\";\"main\"\n\"3089941\";\"Osieciny\";\"ascii\"\n\"3089941\";\"Osenciny\";\"other\"\n\"3089941\";\"Осенцины\";\"other\"\n\"3089942\";\"Osie\";\"main\"\n\"3089965\";\"Orzesze\";\"main\"\n\"3089976\";\"Orzech\";\"main\"\n\"3089987\";\"Ornontowice\";\"main\"\n\"3089987\";\"Ornontowitz\";\"other\"\n\"3090048\";\"Opole\";\"main\"\n\"3090048\";\"Oppein\";\"other\"\n\"3090048\";\"Oppeln\";\"other\"\n\"3090048\";\"ao bo lai\";\"other\"\n\"3090048\";\"opore\";\"other\"\n\"3090048\";\"Ополе\";\"other\"\n\"3090048\";\"אופולה\";\"other\"\n\"3090048\";\"オポーレ\";\"other\"\n\"3090048\";\"奥波莱\";\"other\"\n\"3090066\";\"Opatówek\";\"main\"\n\"3090066\";\"Opatowek\";\"ascii\"\n\"3090067\";\"Opatów\";\"main\"\n\"3090067\";\"Opatow\";\"ascii\"\n\"3090068\";\"Opatów\";\"main\"\n\"3090068\";\"Opatow\";\"ascii\"\n\"3090076\";\"Opalenica\";\"main\"\n\"3090082\";\"Olza\";\"main\"\n\"3090099\";\"Olszyna\";\"main\"\n\"3090104\";\"Olsztyn\";\"main\"\n\"3090127\";\"Olszanka\";\"main\"\n\"3090130\";\"Olszanica\";\"main\"\n\"3090146\";\"Olkusz\";\"main\"\n\"3090146\";\"Ol'kush\";\"other\"\n\"3090158\";\"Olesno\";\"main\"\n\"3090158\";\"Rosenberg\";\"other\"\n\"3090170\";\"Oleśnica\";\"main\"\n\"3090170\";\"Olesnica\";\"ascii\"\n\"3090170\";\"Oels\";\"other\"\n\"3090170\";\"Ols\";\"other\"\n\"3090170\";\"Öls\";\"other\"\n\"3090170\";\"Олесница\";\"other\"\n\"3090205\";\"Oława\";\"main\"\n\"3090205\";\"Olawa\";\"ascii\"\n\"3090205\";\"Ohiau\";\"other\"\n\"3090205\";\"Ohlau\";\"other\"\n\"3090205\";\"Olava\";\"other\"\n\"3090205\";\"Олава\";\"other\"\n\"3090245\";\"Okonek\";\"main\"\n\"3090245\";\"Ratzebuhr\";\"other\"\n\"3090245\";\"Ratzenbuhr\";\"other\"\n\"3090285\";\"Ogrodzieniec\";\"main\"\n\"3090315\";\"Odolanów\";\"main\"\n\"3090315\";\"Odolanow\";\"ascii\"\n\"3090357\";\"Ochla\";\"main\"\n\"3090360\";\"Ochaby\";\"main\"\n\"3090364\";\"Obrzycko\";\"main\"\n\"3090373\";\"Obrowo\";\"main\"\n\"3090373\";\"Obrovo\";\"other\"\n\"3090373\";\"Оброво\";\"other\"\n\"3090401\";\"Oborniki Śląskie\";\"main\"\n\"3090401\";\"Oborniki Slaskie\";\"ascii\"\n\"3090401\";\"Obernigk\";\"other\"\n\"3090401\";\"Oborniki-Sljonske\";\"other\"\n\"3090401\";\"Оборники-Слёнске\";\"other\"\n\"3090403\";\"Oborniki\";\"main\"\n\"3090403\";\"Obornik\";\"other\"\n\"3090433\";\"Nysa Zamłynie\";\"main\"\n\"3090433\";\"Nysa Zamlynie\";\"ascii\"\n\"3090436\";\"Nysa\";\"main\"\n\"3090436\";\"Neisse\";\"other\"\n\"3090436\";\"Neisze\";\"other\"\n\"3090436\";\"Niesse\";\"other\"\n\"3090436\";\"nu~isa\";\"other\"\n\"3090436\";\"ヌィサ\";\"other\"\n\"3090452\";\"Nowy Tomyśl\";\"main\"\n\"3090452\";\"Nowy Tomysl\";\"ascii\"\n\"3090470\";\"Nowy Staw\";\"main\"\n\"3090470\";\"Neuteich\";\"other\"\n\"3090470\";\"Novy-Stav\";\"other\"\n\"3090470\";\"Nytych\";\"other\"\n\"3090470\";\"Новы-Став\";\"other\"\n\"3090502\";\"Nowy Dwór Gdański\";\"main\"\n\"3090502\";\"Nowy Dwor Gdanski\";\"ascii\"\n\"3090502\";\"Nowy Dwn Gdanski\";\"other\"\n\"3090502\";\"Nowy Dwor\";\"other\"\n\"3090502\";\"Nowy Dwór\";\"other\"\n\"3090502\";\"Tiegenhof\";\"other\"\n\"3090528\";\"Nowy Duninów\";\"main\"\n\"3090528\";\"Nowy Duninow\";\"ascii\"\n\"3090528\";\"Duninow Nowy\";\"other\"\n\"3090528\";\"Duninow Nw\";\"other\"\n\"3090528\";\"Duninów Nowy\";\"other\"\n\"3090528\";\"Duninów Nw\";\"other\"\n\"3090528\";\"Novy-Duninuv\";\"other\"\n\"3090528\";\"Новы-Дунинув\";\"other\"\n\"3090551\";\"Nowogrodziec\";\"main\"\n\"3090551\";\"Naumburg am Queis\";\"other\"\n\"3090552\";\"Nowogródek Pomorski\";\"main\"\n\"3090552\";\"Nowogrodek Pomorski\";\"ascii\"\n\"3090552\";\"Neuenburg\";\"other\"\n\"3090553\";\"Nowogród Bobrzański\";\"main\"\n\"3090553\";\"Nowogrod Bobrzanski\";\"ascii\"\n\"3090553\";\"Naumburg\";\"other\"\n\"3090553\";\"Naumburg Bober\";\"other\"\n\"3090553\";\"Naumburg am Bober\";\"other\"\n\"3090553\";\"Nowy Zamek\";\"other\"\n\"3090558\";\"Nowogard\";\"main\"\n\"3090558\";\"Naugard\";\"other\"\n\"3090590\";\"Nowe Warpno\";\"main\"\n\"3090590\";\"Neuwarp\";\"other\"\n\"3090597\";\"Nowe Skalmierzyce\";\"main\"\n\"3090597\";\"Skalmierzyce\";\"other\"\n\"3090597\";\"Skalmierzyce Nowe\";\"other\"\n\"3090612\";\"Nowe Miasto nad Wartą\";\"main\"\n\"3090612\";\"Nowe Miasto nad Warta\";\"ascii\"\n\"3090612\";\"Nowe Miasto\";\"other\"\n\"3090613\";\"Nowe Miasto Lubawskie\";\"main\"\n\"3090613\";\"Nove-Mjasto\";\"other\"\n\"3090613\";\"Nowe-Miasto\";\"other\"\n\"3090613\";\"Нове-Място\";\"other\"\n\"3090616\";\"Nowe Miasteczko\";\"main\"\n\"3090616\";\"Neustadtel\";\"other\"\n\"3090616\";\"Neustädtel\";\"other\"\n\"3090660\";\"Nowe\";\"main\"\n\"3090673\";\"Nowa Wieś Wielka\";\"main\"\n\"3090673\";\"Nowa Wies Wielka\";\"ascii\"\n\"3090690\";\"Nowa Wieś Lęborska\";\"main\"\n\"3090690\";\"Nowa Wies Leborska\";\"ascii\"\n\"3090764\";\"Nowa Sól\";\"main\"\n\"3090764\";\"Nowa Sol\";\"ascii\"\n\"3090764\";\"Neusalz\";\"other\"\n\"3090768\";\"Nowa Ruda\";\"main\"\n\"3090768\";\"Neurode\";\"other\"\n\"3090768\";\"Nova-Ruda\";\"other\"\n\"3090768\";\"Nowy Ruda\";\"other\"\n\"3090768\";\"Нова-Руда\";\"other\"\n\"3090907\";\"Nieszawa\";\"main\"\n\"3090951\";\"Niemodlin\";\"main\"\n\"3090951\";\"Falkenberg\";\"other\"\n\"3090951\";\"Falkenberg in Ober Schlesien\";\"other\"\n\"3090951\";\"Nemodlin\";\"other\"\n\"3090951\";\"Немодлин\";\"other\"\n\"3090967\";\"Niemcza\";\"main\"\n\"3090967\";\"Niemcz\";\"other\"\n\"3090967\";\"Nimptsch\";\"other\"\n\"3090990\";\"Niegowonice\";\"main\"\n\"3090990\";\"Niegowinice\";\"other\"\n\"3091089\";\"Nekla\";\"main\"\n\"3091095\";\"Nędza\";\"main\"\n\"3091095\";\"Nedza\";\"ascii\"\n\"3091095\";\"Buchenau\";\"other\"\n\"3091095\";\"Klein Nensa\";\"other\"\n\"3091095\";\"Nendza\";\"other\"\n\"3091095\";\"Nensa\";\"other\"\n\"3091135\";\"Naprawa\";\"main\"\n\"3091141\";\"Namysłów\";\"main\"\n\"3091141\";\"Namyslow\";\"ascii\"\n\"3091141\";\"Namslau\";\"other\"\n\"3091150\";\"Nakło nad Notecią\";\"main\"\n\"3091150\";\"Naklo nad Notecia\";\"ascii\"\n\"3091150\";\"Nakel\";\"other\"\n\"3091150\";\"Naklo\";\"other\"\n\"3091150\";\"Nakło\";\"other\"\n\"3091153\";\"Nakło\";\"main\"\n\"3091153\";\"Naklo\";\"ascii\"\n\"3091153\";\"Nakel\";\"other\"\n\"3091154\";\"Nakło\";\"main\"\n\"3091154\";\"Naklo\";\"ascii\"\n\"3091217\";\"Myszków\";\"main\"\n\"3091217\";\"Myszkow\";\"ascii\"\n\"3091217\";\"Myshkov\";\"other\"\n\"3091217\";\"Myszkow Nowy\";\"other\"\n\"3091217\";\"Myszków Nowy\";\"other\"\n\"3091217\";\"Мышков\";\"other\"\n\"3091232\";\"Mysłowice\";\"main\"\n\"3091232\";\"Myslowice\";\"ascii\"\n\"3091232\";\"Mislovice\";\"other\"\n\"3091232\";\"Myslovice\";\"other\"\n\"3091232\";\"Мысловице\";\"other\"\n\"3091253\";\"Myślibórz\";\"main\"\n\"3091253\";\"Mysliborz\";\"ascii\"\n\"3091253\";\"Soldin\";\"other\"\n\"3091256\";\"Myślenice\";\"main\"\n\"3091256\";\"Myslenice\";\"ascii\"\n\"3091263\";\"Mysłakowice\";\"main\"\n\"3091263\";\"Myslakowice\";\"ascii\"\n\"3091269\";\"Mykanów\";\"main\"\n\"3091269\";\"Mykanow\";\"ascii\"\n\"3091293\";\"Murowana Goślina\";\"main\"\n\"3091293\";\"Murowana Goslina\";\"ascii\"\n\"3091294\";\"Murów\";\"main\"\n\"3091294\";\"Murow\";\"ascii\"\n\"3091294\";\"Hermannsthal\";\"other\"\n\"3091294\";\"Hermannsthal Oberschlesien\";\"other\"\n\"3091297\";\"Murcki\";\"main\"\n\"3091297\";\"Emanuelssegen\";\"other\"\n\"3091315\";\"Mszana\";\"main\"\n\"3091323\";\"Mstów\";\"main\"\n\"3091323\";\"Mstow\";\"ascii\"\n\"3091331\";\"Mrzeżyno\";\"main\"\n\"3091331\";\"Mrzezyno\";\"ascii\"\n\"3091331\";\"Deep\";\"other\"\n\"3091331\";\"Ost Deep\";\"other\"\n\"3091331\";\"Treptower Deep\";\"other\"\n\"3091336\";\"Mrozów\";\"main\"\n\"3091336\";\"Mrozow\";\"ascii\"\n\"3091351\";\"Mrocza\";\"main\"\n\"3091351\";\"Immenheim\";\"other\"\n\"3091351\";\"Mrotschen\";\"other\"\n\"3091371\";\"Moszczenica\";\"main\"\n\"3091377\";\"Mosty\";\"main\"\n\"3091407\";\"Mosina\";\"main\"\n\"3091435\";\"Moryń\";\"main\"\n\"3091435\";\"Moryn\";\"ascii\"\n\"3091435\";\"Mohrin\";\"other\"\n\"3091462\";\"Morąg\";\"main\"\n\"3091462\";\"Morag\";\"ascii\"\n\"3091462\";\"MORONG\";\"other\"\n\"3091462\";\"Mohrungen\";\"other\"\n\"3091462\";\"МОРОНГ\";\"other\"\n\"3091493\";\"Mokrsko\";\"main\"\n\"3091523\";\"Mogilno\";\"main\"\n\"3091528\";\"Mogilany\";\"main\"\n\"3091548\";\"Modlnica\";\"main\"\n\"3091585\";\"Mochowo\";\"main\"\n\"3091605\";\"Mnich\";\"main\"\n\"3091641\";\"Młynary\";\"main\"\n\"3091641\";\"Mlynary\";\"ascii\"\n\"3091641\";\"Muhlhausen\";\"other\"\n\"3091641\";\"Mühlhausen\";\"other\"\n\"3091641\";\"Млынары\";\"other\"\n\"3091686\";\"Mirsk\";\"main\"\n\"3091686\";\"Friedeberg\";\"other\"\n\"3091686\";\"Friedeberg am Queis\";\"other\"\n\"3091700\";\"Mirosławiec\";\"main\"\n\"3091700\";\"Miroslawiec\";\"ascii\"\n\"3091700\";\"Frydlad\";\"other\"\n\"3091700\";\"Maerkisch Friedland\";\"other\"\n\"3091700\";\"Miroslawice\";\"other\"\n\"3091700\";\"Mirosławice\";\"other\"\n\"3091700\";\"Märkisch Friedland\";\"other\"\n\"3091743\";\"Milówka\";\"main\"\n\"3091743\";\"Milowka\";\"ascii\"\n\"3091757\";\"Miłosław\";\"main\"\n\"3091757\";\"Miloslaw\";\"ascii\"\n\"3091760\";\"Miłoradz\";\"main\"\n\"3091760\";\"Miloradz\";\"ascii\"\n\"3091760\";\"Mielenz\";\"other\"\n\"3091763\";\"Miłomłyn\";\"main\"\n\"3091763\";\"Milomlyn\";\"ascii\"\n\"3091763\";\"Liebemuhl\";\"other\"\n\"3091763\";\"Liebemühl\";\"other\"\n\"3091763\";\"Миломлын\";\"other\"\n\"3091780\";\"Miłkowice\";\"main\"\n\"3091780\";\"Milkowice\";\"ascii\"\n\"3091780\";\"Arnsdorf\";\"other\"\n\"3091788\";\"Milicz\";\"main\"\n\"3091788\";\"Militsch\";\"other\"\n\"3091817\";\"Mikstat\";\"main\"\n\"3091831\";\"Mikołów\";\"main\"\n\"3091831\";\"Mikolow\";\"ascii\"\n\"3091831\";\"Miklos\";\"other\"\n\"3091831\";\"Miklós\";\"other\"\n\"3091831\";\"Mikulas\";\"other\"\n\"3091831\";\"Mikuláš\";\"other\"\n\"3091831\";\"Nicolaas\";\"other\"\n\"3091831\";\"Nicolai\";\"other\"\n\"3091831\";\"Nikolaj\";\"other\"\n\"3091831\";\"Nikolaus\";\"other\"\n\"3091831\";\"mikoufu\";\"other\"\n\"3091831\";\"Николай\";\"other\"\n\"3091831\";\"ミコウフ\";\"other\"\n\"3091838\";\"Mikołajki Pomorskie\";\"main\"\n\"3091838\";\"Mikolajki Pomorskie\";\"ascii\"\n\"3091838\";\"Mikolajki\";\"other\"\n\"3091838\";\"Mikolajki-Pomorske\";\"other\"\n\"3091838\";\"Mikołajki\";\"other\"\n\"3091838\";\"Niklaskirchen\";\"other\"\n\"3091838\";\"Nikolaiken\";\"other\"\n\"3091838\";\"Миколайки-Поморске\";\"other\"\n\"3091861\";\"Mieszkowice\";\"main\"\n\"3091861\";\"Barwalde\";\"other\"\n\"3091861\";\"Barwalde in Neumark\";\"other\"\n\"3091861\";\"Bärwalde\";\"other\"\n\"3091861\";\"Bärwalde in Neumark\";\"other\"\n\"3091874\";\"Mieścisko\";\"main\"\n\"3091874\";\"Miescisko\";\"ascii\"\n\"3091894\";\"Mierzęcice\";\"main\"\n\"3091894\";\"Mierzecice\";\"ascii\"\n\"3091901\";\"Mieroszów\";\"main\"\n\"3091901\";\"Mieroszow\";\"ascii\"\n\"3091901\";\"Friedland\";\"other\"\n\"3091901\";\"Friedland in Schlesien\";\"other\"\n\"3091901\";\"Fyrlad\";\"other\"\n\"3091913\";\"Mielno\";\"main\"\n\"3091913\";\"Grossmollen\";\"other\"\n\"3091913\";\"Grossmollen uber Koslin\";\"other\"\n\"3091913\";\"Grossmöllen\";\"other\"\n\"3091913\";\"Grossmöllen über Köslin\";\"other\"\n\"3091913\";\"Mel'no\";\"other\"\n\"3091913\";\"Mielno Koszalinskie\";\"other\"\n\"3091913\";\"Mielno Koszalińskie\";\"other\"\n\"3091913\";\"Мельно\";\"other\"\n\"3091953\";\"Miękinia\";\"main\"\n\"3091953\";\"Miekinia\";\"ascii\"\n\"3091954\";\"Miękinia\";\"main\"\n\"3091954\";\"Miekinia\";\"ascii\"\n\"3091954\";\"Miekina\";\"other\"\n\"3091954\";\"Miękina\";\"other\"\n\"3091957\";\"Miejska Górka\";\"main\"\n\"3091957\";\"Miejska Gorka\";\"ascii\"\n\"3091961\";\"Międzyzdroje\";\"main\"\n\"3091961\";\"Miedzyzdroje\";\"ascii\"\n\"3091961\";\"Misdroy\";\"other\"\n\"3091969\";\"Międzyrzecz\";\"main\"\n\"3091969\";\"Miedzyrzecz\";\"ascii\"\n\"3091969\";\"Mesdirtz\";\"other\"\n\"3091969\";\"Meseritz\";\"other\"\n\"3091974\";\"Międzylesie\";\"main\"\n\"3091974\";\"Miedzylesie\";\"ascii\"\n\"3091974\";\"Mittwalde\";\"other\"\n\"3091979\";\"Międzylesie\";\"main\"\n\"3091979\";\"Miedzylesie\";\"ascii\"\n\"3091979\";\"Mittelwalde\";\"other\"\n\"3091983\";\"Międzychód\";\"main\"\n\"3091983\";\"Miedzychod\";\"ascii\"\n\"3091983\";\"Birnbaum\";\"other\"\n\"3091983\";\"myendzu~ifuto\";\"other\"\n\"3091983\";\"ミェンヅィフト\";\"other\"\n\"3091988\";\"Międzybrodzie Bialskie\";\"main\"\n\"3091988\";\"Miedzybrodzie Bialskie\";\"ascii\"\n\"3091988\";\"Miedzybrodzie\";\"other\"\n\"3091988\";\"Międzybrodzie\";\"other\"\n\"3091991\";\"Międzybórz\";\"main\"\n\"3091991\";\"Miedzyborz\";\"ascii\"\n\"3091991\";\"Neumittelwalde\";\"other\"\n\"3091997\";\"Miedzno\";\"main\"\n\"3091999\";\"Miedźna\";\"main\"\n\"3091999\";\"Miedzna\";\"ascii\"\n\"3092024\";\"Miechów Charsznica\";\"main\"\n\"3092024\";\"Miechow Charsznica\";\"ascii\"\n\"3092044\";\"Michałowice\";\"main\"\n\"3092044\";\"Michalowice\";\"ascii\"\n\"3092080\";\"Miastko\";\"main\"\n\"3092080\";\"Miastkò\";\"other\"\n\"3092080\";\"Miasztko\";\"other\"\n\"3092080\";\"Miásztkó\";\"other\"\n\"3092080\";\"Rummelsburg\";\"other\"\n\"3092080\";\"Rummelsburg in Pommern\";\"other\"\n\"3092082\";\"Miasteczko Śląskie\";\"main\"\n\"3092082\";\"Miasteczko Slaskie\";\"ascii\"\n\"3092082\";\"Miasteczko\";\"other\"\n\"3092162\";\"Mazańcowice\";\"main\"\n\"3092162\";\"Mazancowice\";\"ascii\"\n\"3092195\";\"Maszewo Duże\";\"main\"\n\"3092195\";\"Maszewo Duze\";\"ascii\"\n\"3092197\";\"Maszewo\";\"main\"\n\"3092197\";\"Massow\";\"other\"\n\"3092199\";\"Maszewo\";\"main\"\n\"3092199\";\"Messow\";\"other\"\n\"3092276\";\"Markłowice\";\"main\"\n\"3092276\";\"Marklowice\";\"ascii\"\n\"3092280\";\"Marianowo\";\"main\"\n\"3092312\";\"Margonin\";\"main\"\n\"3092322\";\"Marciszów\";\"main\"\n\"3092322\";\"Marciszow\";\"ascii\"\n\"3092402\";\"Małomice\";\"main\"\n\"3092402\";\"Malomice\";\"ascii\"\n\"3092402\";\"Mallmitz\";\"other\"\n\"3092402\";\"Malmitz\";\"other\"\n\"3092467\";\"Małdyty\";\"main\"\n\"3092467\";\"Maldyty\";\"ascii\"\n\"3092467\";\"Maldeuten\";\"other\"\n\"3092467\";\"Малдыты\";\"other\"\n\"3092468\";\"Malczyce\";\"main\"\n\"3092468\";\"Maloszyn\";\"other\"\n\"3092468\";\"Maltsch\";\"other\"\n\"3092468\";\"Małoszyn\";\"other\"\n\"3092472\";\"Malbork\";\"main\"\n\"3092472\";\"MAL'BORK\";\"other\"\n\"3092472\";\"Mal'bork\";\"other\"\n\"3092472\";\"Malborka\";\"other\"\n\"3092472\";\"Malborkas\";\"other\"\n\"3092472\";\"Marienburg\";\"other\"\n\"3092472\";\"МАЛЬБОРК\";\"other\"\n\"3092472\";\"Мальборк\";\"other\"\n\"3092517\";\"Maków Podhalański\";\"main\"\n\"3092517\";\"Makow Podhalanski\";\"ascii\"\n\"3092517\";\"Makow\";\"other\"\n\"3092517\";\"Maków\";\"other\"\n\"3092618\";\"Łysomice\";\"main\"\n\"3092618\";\"Lysomice\";\"ascii\"\n\"3092622\";\"Lyski\";\"main\"\n\"3092638\";\"Lwówek Śląski\";\"main\"\n\"3092638\";\"Lwowek Slaski\";\"ascii\"\n\"3092638\";\"Lowenberg\";\"other\"\n\"3092638\";\"Lowenberg in Schlesien\";\"other\"\n\"3092638\";\"Löwenberg\";\"other\"\n\"3092638\";\"Löwenberg in Schlesien\";\"other\"\n\"3092639\";\"Lwówek\";\"main\"\n\"3092639\";\"Lwowek\";\"ascii\"\n\"3092639\";\"Neustadt bei Pinne\";\"other\"\n\"3092643\";\"Luzino\";\"main\"\n\"3092643\";\"Ljuzino\";\"other\"\n\"3092643\";\"Люзино\";\"other\"\n\"3092669\";\"Lutocin\";\"main\"\n\"3092757\";\"Ludwikowice Kłodzkie\";\"main\"\n\"3092757\";\"Ludwikowice Klodzkie\";\"ascii\"\n\"3092757\";\"Ludwigsdorf\";\"other\"\n\"3092757\";\"Ludwikow\";\"other\"\n\"3092757\";\"Ludwikowo\";\"other\"\n\"3092806\";\"Lubsza\";\"main\"\n\"3092813\";\"Lubsko\";\"main\"\n\"3092813\";\"Sommerfeld\";\"other\"\n\"3092813\";\"Zemsz\";\"other\"\n\"3092816\";\"Lubrza\";\"main\"\n\"3092816\";\"Liebenau\";\"other\"\n\"3092816\";\"Liebenau bei Schwiebus\";\"other\"\n\"3092816\";\"Lubna\";\"other\"\n\"3092817\";\"Lubrza\";\"main\"\n\"3092818\";\"Lubraniec\";\"main\"\n\"3092818\";\"LJUBRANEC\";\"other\"\n\"3092818\";\"ЛЮБРАНЕЦ\";\"other\"\n\"3092828\";\"Lubowidz\";\"main\"\n\"3092828\";\"Ljubovidz\";\"other\"\n\"3092828\";\"Любовидз\";\"other\"\n\"3092856\";\"Luboń\";\"main\"\n\"3092856\";\"Lubon\";\"ascii\"\n\"3092856\";\"Ljubon\";\"other\"\n\"3092856\";\"Любон\";\"other\"\n\"3092866\";\"Lubomierz\";\"main\"\n\"3092866\";\"Liebenthal\";\"other\"\n\"3092867\";\"Lubomia\";\"main\"\n\"3092894\";\"Lubniewice\";\"main\"\n\"3092894\";\"Konigswalde\";\"other\"\n\"3092894\";\"Königswalde\";\"other\"\n\"3092894\";\"Ljubnevice\";\"other\"\n\"3092894\";\"Lubniewica\";\"other\"\n\"3092894\";\"Любневице\";\"other\"\n\"3092895\";\"Łubnice\";\"main\"\n\"3092895\";\"Lubnice\";\"ascii\"\n\"3092899\";\"Łubniany\";\"main\"\n\"3092899\";\"Lubniany\";\"ascii\"\n\"3092899\";\"Lugendorf\";\"other\"\n\"3092899\";\"Lugnian\";\"other\"\n\"3092899\";\"Lugniany\";\"other\"\n\"3092899\";\"Ługniany\";\"other\"\n\"3092906\";\"Lubliniec\";\"main\"\n\"3092906\";\"Ljublinec\";\"other\"\n\"3092906\";\"Lublinek\";\"other\"\n\"3092906\";\"Lublinitz\";\"other\"\n\"3092906\";\"ruburinyetsu\";\"other\"\n\"3092906\";\"Люблинец\";\"other\"\n\"3092906\";\"ルブリニェツ\";\"other\"\n\"3092931\";\"Lubin\";\"main\"\n\"3092931\";\"Ljubin\";\"other\"\n\"3092931\";\"Luben\";\"other\"\n\"3092931\";\"Lubina\";\"other\"\n\"3092931\";\"Lüben\";\"other\"\n\"3092931\";\"Ļubina\";\"other\"\n\"3092931\";\"Любин\";\"other\"\n\"3092938\";\"Lubiewo\";\"main\"\n\"3092950\";\"Lubień Kujawski\";\"main\"\n\"3092950\";\"Lubien Kujawski\";\"ascii\"\n\"3092950\";\"Lubien\";\"other\"\n\"3092950\";\"Lubień\";\"other\"\n\"3092964\";\"Lubień\";\"main\"\n\"3092964\";\"Lubien\";\"ascii\"\n\"3092988\";\"Lubichowo\";\"main\"\n\"3093009\";\"Łubianka\";\"main\"\n\"3093009\";\"Lubianka\";\"ascii\"\n\"3093009\";\"Lubjanka\";\"other\"\n\"3093009\";\"Лубянка\";\"other\"\n\"3093027\";\"Lubawka\";\"main\"\n\"3093027\";\"Liebau\";\"other\"\n\"3093027\";\"Liebau in Schlesien\";\"other\"\n\"3093028\";\"Lubawa\";\"main\"\n\"3093029\";\"Lubasz\";\"main\"\n\"3093035\";\"Lubanie\";\"main\"\n\"3093035\";\"Ljubane\";\"other\"\n\"3093035\";\"Любане\";\"other\"\n\"3093040\";\"Lubań\";\"main\"\n\"3093040\";\"Luban\";\"ascii\"\n\"3093040\";\"Lauban\";\"other\"\n\"3093040\";\"Ljuban'\";\"other\"\n\"3093040\";\"Любань\";\"other\"\n\"3093066\";\"Łowicz\";\"main\"\n\"3093066\";\"Lowicz\";\"ascii\"\n\"3093066\";\"Lowitsch\";\"other\"\n\"3093133\";\"Łódź\";\"main\"\n\"3093133\";\"Lodz\";\"ascii\"\n\"3093133\";\"Litzmannstadt\";\"other\"\n\"3093133\";\"Lodz'\";\"other\"\n\"3093133\";\"Lodza\";\"other\"\n\"3093133\";\"Lodze\";\"other\"\n\"3093133\";\"Lodzo\";\"other\"\n\"3093133\";\"Lodzė\";\"other\"\n\"3093133\";\"Lodž\";\"other\"\n\"3093133\";\"lwdz'\";\"other\"\n\"3093133\";\"utchi\";\"other\"\n\"3093133\";\"Лодз\";\"other\"\n\"3093133\";\"Лодзь\";\"other\"\n\"3093133\";\"Лођ\";\"other\"\n\"3093133\";\"לודז'\";\"other\"\n\"3093133\";\"ウッチ\";\"other\"\n\"3093136\";\"Łodygowice\";\"main\"\n\"3093136\";\"Lodygowice\";\"ascii\"\n\"3093150\";\"Łobżenica\";\"main\"\n\"3093150\";\"Lobzenica\";\"ascii\"\n\"3093150\";\"Lobsens\";\"other\"\n\"3093156\";\"Łobodno\";\"main\"\n\"3093156\";\"Lobodno\";\"ascii\"\n\"3093158\";\"Łobez\";\"main\"\n\"3093158\";\"Lobez\";\"ascii\"\n\"3093158\";\"Labes\";\"other\"\n\"3093161\";\"Lniano\";\"main\"\n\"3093174\";\"Liszki\";\"main\"\n\"3093192\";\"Lisków\";\"main\"\n\"3093192\";\"Liskow\";\"ascii\"\n\"3093224\";\"Lisewo Malborskie\";\"main\"\n\"3093224\";\"Liessau\";\"other\"\n\"3093224\";\"Lisevo\";\"other\"\n\"3093224\";\"Lisewo\";\"other\"\n\"3093224\";\"Лисево\";\"other\"\n\"3093226\";\"Lisewo\";\"main\"\n\"3093226\";\"Lisevo\";\"other\"\n\"3093226\";\"Лисево\";\"other\"\n\"3093237\";\"Lipusz\";\"main\"\n\"3093263\";\"Lipowa\";\"main\"\n\"3093268\";\"Lipno\";\"main\"\n\"3093268\";\"LIPNO\";\"other\"\n\"3093268\";\"ЛИПНО\";\"other\"\n\"3093282\";\"Lipnica Wielka\";\"main\"\n\"3093282\";\"Alsolipnica\";\"other\"\n\"3093282\";\"Alsólipnica\";\"other\"\n\"3093282\";\"Dolna Lipnica\";\"other\"\n\"3093282\";\"Dolná Lipnica\";\"other\"\n\"3093282\";\"Nizna Lipnica\";\"other\"\n\"3093282\";\"Nižná Lipnica\";\"other\"\n\"3093283\";\"Lipnica Mała\";\"main\"\n\"3093283\";\"Lipnica Mala\";\"ascii\"\n\"3093283\";\"Felsolipnica\";\"other\"\n\"3093283\";\"Felsőlipnica\";\"other\"\n\"3093285\";\"Lipnica\";\"main\"\n\"3093298\";\"Lipka\";\"main\"\n\"3093298\";\"Linde\";\"other\"\n\"3093298\";\"Linde in Westpreussen\";\"other\"\n\"3093343\";\"Lipie\";\"main\"\n\"3093350\";\"Lipiany\";\"main\"\n\"3093350\";\"Lippehne\";\"other\"\n\"3093389\";\"Liniewo\";\"main\"\n\"3093394\";\"Linia\";\"main\"\n\"3093433\";\"Ligota\";\"main\"\n\"3093439\";\"Lidzbark\";\"main\"\n\"3093439\";\"LIDZBARK\";\"other\"\n\"3093439\";\"Lautenburg\";\"other\"\n\"3093439\";\"Lidzbark Welski\";\"other\"\n\"3093439\";\"Lidzbark-Wies\";\"other\"\n\"3093439\";\"Lidzbark-Wieś\";\"other\"\n\"3093439\";\"ЛИДЗБАРК\";\"other\"\n\"3093446\";\"Licheń Stary\";\"main\"\n\"3093446\";\"Lichen Stary\";\"ascii\"\n\"3093446\";\"Lichen Stari\";\"other\"\n\"3093446\";\"Личен Стари\";\"other\"\n\"3093457\";\"Libiąż\";\"main\"\n\"3093457\";\"Libiaz\";\"ascii\"\n\"3093478\";\"Łęczyce\";\"main\"\n\"3093478\";\"Leczyce\";\"ascii\"\n\"3093500\";\"Lewin Kłodzki\";\"main\"\n\"3093500\";\"Lewin Klodzki\";\"ascii\"\n\"3093500\";\"Hummelstadt\";\"other\"\n\"3093500\";\"Lewin\";\"other\"\n\"3093501\";\"Lewin Brzeski\";\"main\"\n\"3093501\";\"Levin-Bzheski\";\"other\"\n\"3093501\";\"Lewin\";\"other\"\n\"3093501\";\"Lowen\";\"other\"\n\"3093501\";\"Luoien\";\"other\"\n\"3093501\";\"Löwen\";\"other\"\n\"3093501\";\"Левин-Бжески\";\"other\"\n\"3093524\";\"Leszno\";\"main\"\n\"3093524\";\"Leshno\";\"other\"\n\"3093524\";\"Lesno\";\"other\"\n\"3093524\";\"Lešno\";\"other\"\n\"3093524\";\"Lissa\";\"other\"\n\"3093524\";\"Лешно\";\"other\"\n\"3093577\";\"Leśnica\";\"main\"\n\"3093577\";\"Lesnica\";\"ascii\"\n\"3093577\";\"Bergstadt\";\"other\"\n\"3093577\";\"Leschnitz\";\"other\"\n\"3093577\";\"Leschnitz Oberschlesien\";\"other\"\n\"3093589\";\"Leśna\";\"main\"\n\"3093589\";\"Lesna\";\"ascii\"\n\"3093589\";\"Marklissa-Schlesian\";\"other\"\n\"3093589\";\"Marlissa\";\"other\"\n\"3093592\";\"Leśna\";\"main\"\n\"3093592\";\"Lesna\";\"ascii\"\n\"3093636\";\"Lelów\";\"main\"\n\"3093636\";\"Lelow\";\"ascii\"\n\"3093649\";\"Łęknica\";\"main\"\n\"3093649\";\"Leknica\";\"ascii\"\n\"3093649\";\"Leknice\";\"other\"\n\"3093649\";\"Lucknitz\";\"other\"\n\"3093649\";\"Lugknitz\";\"other\"\n\"3093649\";\"Lugnice\";\"other\"\n\"3093649\";\"Ługnice\";\"other\"\n\"3093649\";\"Łęknice\";\"other\"\n\"3093651\";\"Łęki Szlacheckie\";\"main\"\n\"3093651\";\"Leki Szlacheckie\";\"ascii\"\n\"3093664\";\"Łękawica\";\"main\"\n\"3093664\";\"Lekawica\";\"ascii\"\n\"3093675\";\"Łęka Opatowska\";\"main\"\n\"3093675\";\"Leka Opatowska\";\"ascii\"\n\"3093691\";\"Legnickie Pole\";\"main\"\n\"3093691\";\"Wahlstatt\";\"other\"\n\"3093692\";\"Legnica\";\"main\"\n\"3093692\";\"Liegnitz\";\"other\"\n\"3093692\";\"Lignica\";\"other\"\n\"3093692\";\"Легница\";\"other\"\n\"3093708\";\"Lędziny\";\"main\"\n\"3093708\";\"Ledziny\";\"ascii\"\n\"3093726\";\"Łęczyca\";\"main\"\n\"3093726\";\"Leczyca\";\"ascii\"\n\"3093726\";\"u~enchitsu~a\";\"other\"\n\"3093726\";\"ウェンチツァ\";\"other\"\n\"3093739\";\"Lębork\";\"main\"\n\"3093739\";\"Lebork\";\"ascii\"\n\"3093739\";\"Lauenburg\";\"other\"\n\"3093739\";\"Lauenburg in Pommern\";\"other\"\n\"3093739\";\"Lembork\";\"other\"\n\"3093749\";\"Łeba\";\"main\"\n\"3093749\";\"Leba\";\"ascii\"\n\"3093749\";\"Леба\";\"other\"\n\"3093768\";\"Łazy\";\"main\"\n\"3093768\";\"Lazy\";\"ascii\"\n\"3093785\";\"Łaziska Górne\";\"main\"\n\"3093785\";\"Laziska Gorne\";\"ascii\"\n\"3093785\";\"Lagissa\";\"other\"\n\"3093785\";\"Laziskagorna\";\"other\"\n\"3093785\";\"Oberlasisk\";\"other\"\n\"3093785\";\"Oberlazisk\";\"other\"\n\"3093791\";\"Łaziska\";\"main\"\n\"3093791\";\"Laziska\";\"ascii\"\n\"3093902\";\"Łask\";\"main\"\n\"3093902\";\"Lask\";\"ascii\"\n\"3093906\";\"Łasin\";\"main\"\n\"3093906\";\"Lasin\";\"ascii\"\n\"3093906\";\"LASIN\";\"other\"\n\"3093906\";\"Lazin\";\"other\"\n\"3093906\";\"Łazin\";\"other\"\n\"3093906\";\"ЛАСИН\";\"other\"\n\"3093935\";\"Lanckorona\";\"main\"\n\"3093941\";\"Łambinowice\";\"main\"\n\"3093941\";\"Lambinowice\";\"ascii\"\n\"3093941\";\"Lamsdorf\";\"other\"\n\"3094003\";\"Łagiewniki\";\"main\"\n\"3094003\";\"Lagiewniki\";\"ascii\"\n\"3094003\";\"Heidersdorf\";\"other\"\n\"3094016\";\"Lądek-Zdrój\";\"main\"\n\"3094016\";\"Ladek-Zdroj\";\"ascii\"\n\"3094016\";\"Bad Landeck\";\"other\"\n\"3094016\";\"Bad Landeck in Schlesien\";\"other\"\n\"3094016\";\"Ladek Zdroj\";\"other\"\n\"3094016\";\"Landeck\";\"other\"\n\"3094016\";\"Landeck in Schlesien\";\"other\"\n\"3094016\";\"Lądek Zdrój\";\"other\"\n\"3094016\";\"Ладек Здрой\";\"other\"\n\"3094043\";\"Łąck\";\"main\"\n\"3094043\";\"Lack\";\"ascii\"\n\"3094045\";\"Lachowice\";\"main\"\n\"3094052\";\"Łabiszyn\";\"main\"\n\"3094052\";\"Labiszyn\";\"ascii\"\n\"3094086\";\"Kwidzyn\";\"main\"\n\"3094086\";\"KVIDZYN\";\"other\"\n\"3094086\";\"Marienwerder\";\"other\"\n\"3094086\";\"КВИДЗЫН\";\"other\"\n\"3094164\";\"Kuźnia Raciborska\";\"main\"\n\"3094164\";\"Kuznia Raciborska\";\"ascii\"\n\"3094164\";\"Kuznica Raciborska\";\"other\"\n\"3094164\";\"Kuźnica Raciborska\";\"other\"\n\"3094164\";\"Ratiborhammer\";\"other\"\n\"3094170\";\"Kutno\";\"main\"\n\"3094170\";\"KUTNO\";\"other\"\n\"3094170\";\"КУТНО\";\"other\"\n\"3094170\";\"Кутно\";\"other\"\n\"3094189\";\"Kurzętnik\";\"main\"\n\"3094189\";\"Kurzetnik\";\"ascii\"\n\"3094243\";\"Kup\";\"main\"\n\"3094243\";\"Kupp\";\"other\"\n\"3094243\";\"Kupy\";\"other\"\n\"3094258\";\"Kunice Żarskie\";\"main\"\n\"3094258\";\"Kunice Zarskie\";\"ascii\"\n\"3094260\";\"Kunice\";\"main\"\n\"3094283\";\"Kuków\";\"main\"\n\"3094283\";\"Kukow\";\"ascii\"\n\"3094303\";\"Kudowa-Zdrój\";\"main\"\n\"3094303\";\"Kudowa-Zdroj\";\"ascii\"\n\"3094303\";\"Bad Kudowa\";\"other\"\n\"3094303\";\"Cudowa\";\"other\"\n\"3094303\";\"Kudowa\";\"other\"\n\"3094355\";\"Książ Wielkopolski\";\"main\"\n\"3094355\";\"Ksiaz Wielkopolski\";\"ascii\"\n\"3094355\";\"Ksiaz\";\"other\"\n\"3094355\";\"Książ\";\"other\"\n\"3094359\";\"Książki\";\"main\"\n\"3094359\";\"Ksiazki\";\"ascii\"\n\"3094361\";\"Książenice\";\"main\"\n\"3094361\";\"Ksiazenice\";\"ascii\"\n\"3094386\";\"Krzyżowice\";\"main\"\n\"3094386\";\"Krzyzowice\";\"ascii\"\n\"3094400\";\"Krzyżanowice\";\"main\"\n\"3094400\";\"Krzyzanowice\";\"ascii\"\n\"3094400\";\"Kreuzenort\";\"other\"\n\"3094408\";\"Krzyż Wielkopolski\";\"main\"\n\"3094408\";\"Krzyz Wielkopolski\";\"ascii\"\n\"3094408\";\"Kreuz\";\"other\"\n\"3094408\";\"Krzyz\";\"other\"\n\"3094408\";\"Krzyż\";\"other\"\n\"3094423\";\"Krzywiń\";\"main\"\n\"3094423\";\"Krzywin\";\"ascii\"\n\"3094490\";\"Krzeszowice\";\"main\"\n\"3094494\";\"Krzeszów\";\"main\"\n\"3094494\";\"Krzeszow\";\"ascii\"\n\"3094494\";\"Grussau\";\"other\"\n\"3094494\";\"Grüssau\";\"other\"\n\"3094495\";\"Krzeszów\";\"main\"\n\"3094495\";\"Krzeszow\";\"ascii\"\n\"3094513\";\"Krzepice\";\"main\"\n\"3094525\";\"Krzemieniewo\";\"main\"\n\"3094549\";\"Krzanowice\";\"main\"\n\"3094549\";\"Kranowitz\";\"other\"\n\"3094549\";\"Kranstadt\";\"other\"\n\"3094549\";\"Kranstodt\";\"other\"\n\"3094549\";\"Kranstädt\";\"other\"\n\"3094549\";\"Kranstödt\";\"other\"\n\"3094549\";\"Krzonowice\";\"other\"\n\"3094562\";\"Krynica Morska\";\"main\"\n\"3094562\";\"Krynica-Morska\";\"other\"\n\"3094562\";\"Kryniza Morska\";\"other\"\n\"3094562\";\"Крыница-Морска\";\"other\"\n\"3094585\";\"Kruszwica\";\"main\"\n\"3094585\";\"KRUSHVICA\";\"other\"\n\"3094585\";\"КРУШВИЦА\";\"other\"\n\"3094597\";\"Krupski Młyn\";\"main\"\n\"3094597\";\"Krupski Mlyn\";\"ascii\"\n\"3094597\";\"Borowian Kolonie\";\"other\"\n\"3094597\";\"Kruppamuhle\";\"other\"\n\"3094597\";\"Kruppamühle\";\"other\"\n\"3094625\";\"Krotoszyn\";\"main\"\n\"3094625\";\"Krotoshin\";\"other\"\n\"3094625\";\"Кротошин\";\"other\"\n\"3094633\";\"Krosno Odrzańskie\";\"main\"\n\"3094633\";\"Krosno Odrzanskie\";\"ascii\"\n\"3094633\";\"Crossen\";\"other\"\n\"3094633\";\"Krosno\";\"other\"\n\"3094636\";\"Krosno\";\"main\"\n\"3094638\";\"Krośniewice\";\"main\"\n\"3094638\";\"Krosniewice\";\"ascii\"\n\"3094638\";\"KROSNEVICE\";\"other\"\n\"3094638\";\"КРОСНЕВИЦЕ\";\"other\"\n\"3094639\";\"Krośnice\";\"main\"\n\"3094639\";\"Krosnice\";\"ascii\"\n\"3094639\";\"Kraschnitz\";\"other\"\n\"3094683\";\"Kroczyce\";\"main\"\n\"3094690\";\"Krobia\";\"main\"\n\"3094788\";\"Krapkowice\";\"main\"\n\"3094788\";\"Chrapkowice\";\"other\"\n\"3094788\";\"Krappitz\";\"other\"\n\"3094802\";\"Kraków\";\"main\"\n\"3094802\";\"Krakow\";\"ascii\"\n\"3094802\";\"Cracau\";\"other\"\n\"3094802\";\"Cracaû\";\"other\"\n\"3094802\";\"Cracovia\";\"other\"\n\"3094802\";\"Cracovie\";\"other\"\n\"3094802\";\"Cracow\";\"other\"\n\"3094802\";\"Cracòvia\";\"other\"\n\"3094802\";\"Cracóvia\";\"other\"\n\"3094802\";\"Kraka\";\"other\"\n\"3094802\";\"Krakau\";\"other\"\n\"3094802\";\"Krakiv\";\"other\"\n\"3094802\";\"Krakko\";\"other\"\n\"3094802\";\"Krakkó\";\"other\"\n\"3094802\";\"Krakobia\";\"other\"\n\"3094802\";\"Krakov\";\"other\"\n\"3094802\";\"Krakova\";\"other\"\n\"3094802\";\"Krakovija\";\"other\"\n\"3094802\";\"Krakovja\";\"other\"\n\"3094802\";\"Krakovo\";\"other\"\n\"3094802\";\"Kraká\";\"other\"\n\"3094802\";\"Krokuva\";\"other\"\n\"3094802\";\"ke la ke fu\";\"other\"\n\"3094802\";\"keulakupeu\";\"other\"\n\"3094802\";\"kurakufu\";\"other\"\n\"3094802\";\"qrqwb\";\"other\"\n\"3094802\";\"Κρακοβία\";\"other\"\n\"3094802\";\"Кракаў\";\"other\"\n\"3094802\";\"Краков\";\"other\"\n\"3094802\";\"Краковия\";\"other\"\n\"3094802\";\"Краків\";\"other\"\n\"3094802\";\"קרקוב\";\"other\"\n\"3094802\";\"კრაკოვი\";\"other\"\n\"3094802\";\"クラクフ\";\"other\"\n\"3094802\";\"克拉科夫\";\"other\"\n\"3094802\";\"크라쿠프\";\"other\"\n\"3094813\";\"Krajenka\";\"main\"\n\"3094813\";\"Krojanke\";\"other\"\n\"3094831\";\"Kozy\";\"main\"\n\"3094831\";\"Kozy Wielkie\";\"other\"\n\"3094832\";\"Kożuchów\";\"main\"\n\"3094832\";\"Kozuchow\";\"ascii\"\n\"3094832\";\"Freystadt\";\"other\"\n\"3094849\";\"Koźminek\";\"main\"\n\"3094849\";\"Kozminek\";\"ascii\"\n\"3094852\";\"Koźmin Wielkopolski\";\"main\"\n\"3094852\";\"Kozmin Wielkopolski\";\"ascii\"\n\"3094898\";\"Koziegłowy\";\"main\"\n\"3094898\";\"Kozieglowy\";\"ascii\"\n\"3094934\";\"Kowary\";\"main\"\n\"3094934\";\"Krzyzatka\";\"other\"\n\"3094934\";\"Krzyżatka\";\"other\"\n\"3094934\";\"Schmiedeberg\";\"other\"\n\"3094934\";\"Schmiedeberg in Schlesien\";\"other\"\n\"3094953\";\"Kowalewo Pomorskie\";\"main\"\n\"3094953\";\"Kovalevo-Pomorske\";\"other\"\n\"3094953\";\"Kowalewo\";\"other\"\n\"3094953\";\"Ковалево-Поморске\";\"other\"\n\"3094976\";\"Kowale\";\"main\"\n\"3094976\";\"Kowall\";\"other\"\n\"3094976\";\"Schmiede\";\"other\"\n\"3094981\";\"Kowal\";\"main\"\n\"3094981\";\"KOVAL'\";\"other\"\n\"3094981\";\"КОВАЛЬ\";\"other\"\n\"3095013\";\"Kotlin\";\"main\"\n\"3095015\";\"Kotla\";\"main\"\n\"3095015\";\"Kuttlau\";\"other\"\n\"3095044\";\"Koszarawa\";\"main\"\n\"3095044\";\"Koszarowa\";\"other\"\n\"3095049\";\"Koszalin\";\"main\"\n\"3095049\";\"Kezlin\";\"other\"\n\"3095049\";\"Koeslin\";\"other\"\n\"3095049\";\"Kosalina\";\"other\"\n\"3095049\";\"Koshalin\";\"other\"\n\"3095049\";\"Koslin\";\"other\"\n\"3095049\";\"Košalina\";\"other\"\n\"3095049\";\"Köslin\";\"other\"\n\"3095049\";\"Scurgum\";\"other\"\n\"3095049\";\"Кошалин\";\"other\"\n\"3095057\";\"Kostrzyn nad Odrą\";\"main\"\n\"3095057\";\"Kostrzyn nad Odra\";\"ascii\"\n\"3095057\";\"Cuestrin\";\"other\"\n\"3095057\";\"Cüstrin\";\"other\"\n\"3095057\";\"Kistrzyn\";\"other\"\n\"3095057\";\"Kostrzyn\";\"other\"\n\"3095057\";\"Kuestrin\";\"other\"\n\"3095057\";\"Küstrin\";\"other\"\n\"3095058\";\"Kostrzyn\";\"main\"\n\"3095058\";\"Kostrzyń\";\"other\"\n\"3095110\";\"Koszęcin\";\"main\"\n\"3095110\";\"Koszecin\";\"ascii\"\n\"3095110\";\"Kosiecin\";\"other\"\n\"3095110\";\"Kosięcin\";\"other\"\n\"3095126\";\"Kościerzyna\";\"main\"\n\"3095126\";\"Koscierzyna\";\"ascii\"\n\"3095140\";\"Kościelisko\";\"main\"\n\"3095140\";\"Koscielisko\";\"ascii\"\n\"3095140\";\"Koscielsko\";\"other\"\n\"3095151\";\"Kościan\";\"main\"\n\"3095151\";\"Koscian\";\"ascii\"\n\"3095151\";\"Kos'tsyan\";\"other\"\n\"3095151\";\"Kosten\";\"other\"\n\"3095151\";\"Kos’tsyan\";\"other\"\n\"3095192\";\"Koronowo\";\"main\"\n\"3095192\";\"Crone\";\"other\"\n\"3095192\";\"Krone\";\"other\"\n\"3095193\";\"Kornowac\";\"main\"\n\"3095194\";\"Kórnik\";\"main\"\n\"3095194\";\"Kornik\";\"ascii\"\n\"3095202\";\"Korfantów\";\"main\"\n\"3095202\";\"Korfantow\";\"ascii\"\n\"3095202\";\"Friedland\";\"other\"\n\"3095202\";\"Friedland in Oberschlesien\";\"other\"\n\"3095277\";\"Konstantynów Łódzki\";\"main\"\n\"3095277\";\"Konstantynow Lodzki\";\"ascii\"\n\"3095277\";\"Konstantynow\";\"other\"\n\"3095277\";\"Konstantynów\";\"other\"\n\"3095311\";\"Konopiska\";\"main\"\n\"3095321\";\"Konin\";\"main\"\n\"3095321\";\"KONIN\";\"other\"\n\"3095321\";\"Konina\";\"other\"\n\"3095321\";\"Koņina\";\"other\"\n\"3095321\";\"КОНИН\";\"other\"\n\"3095330\";\"Koniecpol\";\"main\"\n\"3095332\";\"Koniaków\";\"main\"\n\"3095332\";\"Koniakow\";\"ascii\"\n\"3095335\";\"Kończyce Wielkie\";\"main\"\n\"3095335\";\"Konczyce Wielkie\";\"ascii\"\n\"3095336\";\"Kończyce Małe\";\"main\"\n\"3095336\";\"Konczyce Male\";\"ascii\"\n\"3095367\";\"Komprachcice\";\"main\"\n\"3095367\";\"Comprachtschutz\";\"other\"\n\"3095367\";\"Comprachtschütz\";\"other\"\n\"3095367\";\"Gumpersdorf\";\"other\"\n\"3095367\";\"Gumpertsdorf\";\"other\"\n\"3095367\";\"Komprachciec\";\"other\"\n\"3095367\";\"Lomprachciec\";\"other\"\n\"3095396\";\"Komorniki\";\"main\"\n\"3095413\";\"Koluszki\";\"main\"\n\"3095421\";\"Kolonowskie\";\"main\"\n\"3095795\";\"Kołobrzeg\";\"main\"\n\"3095795\";\"Kolobrzeg\";\"ascii\"\n\"3095795\";\"Kolberg\";\"other\"\n\"3095795\";\"Kolobzheg\";\"other\"\n\"3095795\";\"Колобжег\";\"other\"\n\"3095797\";\"Koło\";\"main\"\n\"3095797\";\"Kolo\";\"ascii\"\n\"3095797\";\"KOLO\";\"other\"\n\"3095797\";\"Kolas\";\"other\"\n\"3095797\";\"Warthbrucken\";\"other\"\n\"3095797\";\"Warthbrücken\";\"other\"\n\"3095797\";\"КОЛО\";\"other\"\n\"3095797\";\"Коло\";\"other\"\n\"3095827\";\"Kołczygłowy\";\"main\"\n\"3095827\";\"Kolczyglowy\";\"ascii\"\n\"3095827\";\"Alt Kolziglow\";\"other\"\n\"3095827\";\"Kolciglowy\";\"other\"\n\"3095827\";\"Kołcigłowy\";\"other\"\n\"3095833\";\"Kolbudy\";\"main\"\n\"3095833\";\"Kahlbude\";\"other\"\n\"3095833\";\"Kalbudy\";\"other\"\n\"3095834\";\"Kołbaskowo\";\"main\"\n\"3095834\";\"Kolbaskowo\";\"ascii\"\n\"3095834\";\"Colbitzow\";\"other\"\n\"3095834\";\"Kolbitzow\";\"other\"\n\"3095874\";\"Koczała\";\"main\"\n\"3095874\";\"Koczala\";\"ascii\"\n\"3095874\";\"Flotenstein\";\"other\"\n\"3095874\";\"Flötenstein\";\"other\"\n\"3095910\";\"Kochanowice\";\"main\"\n\"3095910\";\"Kochanowicz\";\"other\"\n\"3095910\";\"Kochanowicze\";\"other\"\n\"3095910\";\"Kochanowitz\";\"other\"\n\"3095926\";\"Kobylnica\";\"main\"\n\"3095928\";\"Kobylnica\";\"main\"\n\"3095931\";\"Kobylin\";\"main\"\n\"3095947\";\"Kobylanka\";\"main\"\n\"3095947\";\"Kublank\";\"other\"\n\"3095947\";\"Kublanka\";\"other\"\n\"3095958\";\"Kobiór\";\"main\"\n\"3095958\";\"Kobior\";\"ascii\"\n\"3095961\";\"Kobierzyce\";\"main\"\n\"3095961\";\"Koberwitz\";\"other\"\n\"3095961\";\"Rosslingen\";\"other\"\n\"3095961\";\"Rösslingen\";\"other\"\n\"3095964\";\"Kobiernice\";\"main\"\n\"3095971\";\"Knurów\";\"main\"\n\"3095971\";\"Knurow\";\"ascii\"\n\"3096002\";\"Klucze\";\"main\"\n\"3096003\";\"Kluczbork\";\"main\"\n\"3096003\";\"Klauczbork\";\"other\"\n\"3096003\";\"Kljuchbork\";\"other\"\n\"3096003\";\"Kluozborek\";\"other\"\n\"3096003\";\"Kreuzburg\";\"other\"\n\"3096003\";\"Ключборк\";\"other\"\n\"3096048\";\"Kłomnice\";\"main\"\n\"3096048\";\"Klomnice\";\"ascii\"\n\"3096053\";\"Kłodzko\";\"main\"\n\"3096053\";\"Klodzko\";\"ascii\"\n\"3096053\";\"Glatz\";\"other\"\n\"3096053\";\"Kladsko\";\"other\"\n\"3096053\";\"Kladzko\";\"other\"\n\"3096053\";\"Kładzko\";\"other\"\n\"3096053\";\"Клодзко\";\"other\"\n\"3096078\";\"Kłodawa\";\"main\"\n\"3096078\";\"Klodawa\";\"ascii\"\n\"3096078\";\"Kladow\";\"other\"\n\"3096079\";\"Kłodawa\";\"main\"\n\"3096079\";\"Klodawa\";\"ascii\"\n\"3096079\";\"KLODAVA\";\"other\"\n\"3096079\";\"КЛОДАВА\";\"other\"\n\"3096090\";\"Kłobuck\";\"main\"\n\"3096090\";\"Klobuck\";\"ascii\"\n\"3096090\";\"Klobucko\";\"other\"\n\"3096160\";\"Kleczew\";\"main\"\n\"3096160\";\"KLECHEV\";\"other\"\n\"3096160\";\"КЛЕЧЕВ\";\"other\"\n\"3096165\";\"Kłecko\";\"main\"\n\"3096165\";\"Klecko\";\"ascii\"\n\"3096208\";\"Kisielice\";\"main\"\n\"3096208\";\"Freystadt\";\"other\"\n\"3096208\";\"Kiselice\";\"other\"\n\"3096208\";\"Киселице\";\"other\"\n\"3096220\";\"Kikół\";\"main\"\n\"3096220\";\"Kikol\";\"ascii\"\n\"3096220\";\"Kikul\";\"other\"\n\"3096220\";\"Кикул\";\"other\"\n\"3096240\";\"Kietrz\";\"main\"\n\"3096240\";\"Katscher\";\"other\"\n\"3096292\";\"Kiełczów\";\"main\"\n\"3096292\";\"Kielczow\";\"ascii\"\n\"3096328\";\"Kęty\";\"main\"\n\"3096328\";\"Kety\";\"ascii\"\n\"3096334\";\"Kęsowo\";\"main\"\n\"3096334\";\"Kesowo\";\"ascii\"\n\"3096338\";\"Kępno\";\"main\"\n\"3096338\";\"Kepno\";\"ascii\"\n\"3096338\";\"Kempen in Posen\";\"other\"\n\"3096338\";\"kenpuno\";\"other\"\n\"3096338\";\"ケンプノ\";\"other\"\n\"3096353\";\"Kępice\";\"main\"\n\"3096353\";\"Kepice\";\"ascii\"\n\"3096353\";\"Hammermuhle\";\"other\"\n\"3096353\";\"Hammermühle\";\"other\"\n\"3096372\";\"Kędzierzyn-Koźle\";\"main\"\n\"3096372\";\"Kedzierzyn-Kozle\";\"ascii\"\n\"3096372\";\"Heydebreck\";\"other\"\n\"3096372\";\"Kandrzin\";\"other\"\n\"3096372\";\"Kandrzin Pogorzelletz\";\"other\"\n\"3096372\";\"Kedzierzyn\";\"other\"\n\"3096372\";\"Kendzezhin-Kozle\";\"other\"\n\"3096372\";\"Kędzierzyn\";\"other\"\n\"3096372\";\"Кендзежин-Козле\";\"other\"\n\"3096385\";\"Kcynia\";\"main\"\n\"3096392\";\"Kaźmierz\";\"main\"\n\"3096392\";\"Kazmierz\";\"ascii\"\n\"3096400\";\"Kazimierz Biskupi\";\"main\"\n\"3096400\";\"Kazimezh Biskupi\";\"other\"\n\"3096400\";\"Казимеж Бискупи\";\"other\"\n\"3096444\";\"Kąty Wrocławskie\";\"main\"\n\"3096444\";\"Katy Wroclawskie\";\"ascii\"\n\"3096444\";\"Kanth\";\"other\"\n\"3096444\";\"Katy\";\"other\"\n\"3096472\";\"Katowice\";\"main\"\n\"3096472\";\"Catowice\";\"other\"\n\"3096472\";\"Katobitse\";\"other\"\n\"3096472\";\"Katovica\";\"other\"\n\"3096472\";\"Katovice\";\"other\"\n\"3096472\";\"Katovicum\";\"other\"\n\"3096472\";\"Katovicė\";\"other\"\n\"3096472\";\"Katovitse\";\"other\"\n\"3096472\";\"Katowihi\";\"other\"\n\"3096472\";\"Kattowitz\";\"other\"\n\"3096472\";\"Stalinogorod\";\"other\"\n\"3096472\";\"Stalinograd\";\"other\"\n\"3096472\";\"Stalinogrod\";\"other\"\n\"3096472\";\"Stalinogród\";\"other\"\n\"3096472\";\"ka tuo wei zi\";\"other\"\n\"3096472\";\"katobiche\";\"other\"\n\"3096472\";\"katovitses\";\"other\"\n\"3096472\";\"katovu~itsu~e\";\"other\"\n\"3096472\";\"katwfytsh\";\"other\"\n\"3096472\";\"katwwyts\";\"other\"\n\"3096472\";\"ketovica\";\"other\"\n\"3096472\";\"ketovis\";\"other\"\n\"3096472\";\"kha to wits\";\"other\"\n\"3096472\";\"kha to witsu\";\"other\"\n\"3096472\";\"kyatobhisa\";\"other\"\n\"3096472\";\"mstkhdm:mhmd alqyrwany\";\"other\"\n\"3096472\";\"qtwbyz\";\"other\"\n\"3096472\";\"Κάτοβιτσε\";\"other\"\n\"3096472\";\"Κατοβίτσε\";\"other\"\n\"3096472\";\"Κατοβιτσε\";\"other\"\n\"3096472\";\"Катовица\";\"other\"\n\"3096472\";\"Катовице\";\"other\"\n\"3096472\";\"Катовіце\";\"other\"\n\"3096472\";\"Կատովիցե\";\"other\"\n\"3096472\";\"קטוביץ\";\"other\"\n\"3096472\";\"كاتوفيتسه\";\"other\"\n\"3096472\";\"مستخدم:محمد القيرواني\";\"other\"\n\"3096472\";\"کاتوویتس\";\"other\"\n\"3096472\";\"ކެޓޮވިސް\";\"other\"\n\"3096472\";\"केटोविच\";\"other\"\n\"3096472\";\"क्याटोभिस\";\"other\"\n\"3096472\";\"คะโตวิตซ\";\"other\"\n\"3096472\";\"คะโตวิตซึ\";\"other\"\n\"3096472\";\"კატოვიცე\";\"other\"\n\"3096472\";\"ካቶቪጸ\";\"other\"\n\"3096472\";\"カトヴィツェ\";\"other\"\n\"3096472\";\"卡托维兹\";\"other\"\n\"3096472\";\"카토비체\";\"other\"\n\"3096525\";\"Kartuzy\";\"main\"\n\"3096525\";\"KARTUZY\";\"other\"\n\"3096525\";\"Kartuze\";\"other\"\n\"3096525\";\"Kartuzë\";\"other\"\n\"3096525\";\"КАРТУЗЫ\";\"other\"\n\"3096558\";\"Karsin\";\"main\"\n\"3096576\";\"Karpacz\";\"main\"\n\"3096576\";\"Krummhubel\";\"other\"\n\"3096576\";\"Krummhübel\";\"other\"\n\"3096613\";\"Karnice\";\"main\"\n\"3096613\";\"Gryfickie\";\"other\"\n\"3096613\";\"Karnitz\";\"other\"\n\"3096630\";\"Karlino\";\"main\"\n\"3096630\";\"Karlin\";\"other\"\n\"3096630\";\"Korlin\";\"other\"\n\"3096630\";\"Körlin\";\"other\"\n\"3096640\";\"Kargowa\";\"main\"\n\"3096640\";\"Unruhstadt\";\"other\"\n\"3096687\";\"Kaniów\";\"main\"\n\"3096687\";\"Kaniow\";\"ascii\"\n\"3096701\";\"Kamyk\";\"main\"\n\"3096763\";\"Kamieńsk\";\"main\"\n\"3096763\";\"Kamiensk\";\"ascii\"\n\"3096765\";\"Kamień Pomorski\";\"main\"\n\"3096765\";\"Kamien Pomorski\";\"ascii\"\n\"3096765\";\"Cammin\";\"other\"\n\"3096765\";\"Cammin in Pommern\";\"other\"\n\"3096765\";\"Kammin\";\"other\"\n\"3096773\";\"Kamiennik\";\"main\"\n\"3096773\";\"Kamnig\";\"other\"\n\"3096773\";\"Steinhaus\";\"other\"\n\"3096779\";\"Kamienna Góra\";\"main\"\n\"3096779\";\"Kamienna Gora\";\"ascii\"\n\"3096779\";\"Landeshut\";\"other\"\n\"3096791\";\"Kamień Krajeński\";\"main\"\n\"3096791\";\"Kamien Krajenski\";\"ascii\"\n\"3096791\";\"Kamien\";\"other\"\n\"3096791\";\"Kamień\";\"other\"\n\"3096795\";\"Kamieniec Ząbkowicki\";\"main\"\n\"3096795\";\"Kamieniec Zabkowicki\";\"ascii\"\n\"3096795\";\"Camenz\";\"other\"\n\"3096795\";\"Kamenz\";\"other\"\n\"3096795\";\"Kamieniec\";\"other\"\n\"3096796\";\"Kamieniec Wrocławski\";\"main\"\n\"3096796\";\"Kamieniec Wroclawski\";\"ascii\"\n\"3096797\";\"Kamieniec\";\"main\"\n\"3096797\";\"Kamieniec Poznanskie\";\"other\"\n\"3096797\";\"Kamieniec Poznańskie\";\"other\"\n\"3096816\";\"Kamienica Polska\";\"main\"\n\"3096826\";\"Kamienica\";\"main\"\n\"3096847\";\"Kamesznica\";\"main\"\n\"3096852\";\"Kalwaria Zebrzydowska\";\"main\"\n\"3096852\";\"Kal'varija Zebzhidovska\";\"other\"\n\"3096852\";\"Kalvarija Zebzidovska\";\"other\"\n\"3096852\";\"Kalvārija Zebžidovska\";\"other\"\n\"3096852\";\"Kalwaria\";\"other\"\n\"3096852\";\"Kalwarja\";\"other\"\n\"3096852\";\"Kalwarja Zebrydowska\";\"other\"\n\"3096852\";\"Кальвария Зебжидовска\";\"other\"\n\"3096873\";\"Kalisz Pomorski\";\"main\"\n\"3096873\";\"Callies\";\"other\"\n\"3096873\";\"Kallies\";\"other\"\n\"3096880\";\"Kalisz\";\"main\"\n\"3096880\";\"Kalisa\";\"other\"\n\"3096880\";\"Kalisch\";\"other\"\n\"3096880\";\"Kalish\";\"other\"\n\"3096880\";\"Kališa\";\"other\"\n\"3096880\";\"Калиш\";\"other\"\n\"3096885\";\"Kaliska\";\"main\"\n\"3096885\";\"Калиска\";\"other\"\n\"3096911\";\"Kalety\";\"main\"\n\"3096924\";\"Kalej\";\"main\"\n\"3096964\";\"Kaczyce\";\"main\"\n\"3096964\";\"Kaczyce Gorne\";\"other\"\n\"3096964\";\"Kaczyce Górne\";\"other\"\n\"3096966\";\"Kaczory\";\"main\"\n\"3096999\";\"Jutrosin\";\"main\"\n\"3097004\";\"Juszczyna\";\"main\"\n\"3097006\";\"Juszczyn\";\"main\"\n\"3097043\";\"Jugów\";\"main\"\n\"3097043\";\"Jugow\";\"ascii\"\n\"3097104\";\"Jordanów Śląski\";\"main\"\n\"3097104\";\"Jordanow Slaski\";\"ascii\"\n\"3097104\";\"Jordanow\";\"other\"\n\"3097104\";\"Jordansmuhl\";\"other\"\n\"3097104\";\"Jordansmühl\";\"other\"\n\"3097104\";\"Jordanów\";\"other\"\n\"3097107\";\"Jordanów\";\"main\"\n\"3097107\";\"Jordanow\";\"ascii\"\n\"3097130\";\"Jeżów Sudecki\";\"main\"\n\"3097130\";\"Jezow Sudecki\";\"ascii\"\n\"3097130\";\"Grunau\";\"other\"\n\"3097130\";\"Jezow\";\"other\"\n\"3097130\";\"Jeżów\";\"other\"\n\"3097177\";\"Jeziora Wielkie\";\"main\"\n\"3097194\";\"Jeżewo\";\"main\"\n\"3097194\";\"Jezewo\";\"ascii\"\n\"3097219\";\"Jerzmanowice\";\"main\"\n\"3097233\";\"Jemielnica\";\"main\"\n\"3097241\";\"Jeleśnia\";\"main\"\n\"3097241\";\"Jelesnia\";\"ascii\"\n\"3097257\";\"Jelenia Góra\";\"main\"\n\"3097257\";\"Jelenia Gora\";\"ascii\"\n\"3097257\";\"Hirschberg\";\"other\"\n\"3097257\";\"Hirschberg im Riesengebirge\";\"other\"\n\"3097257\";\"Hirschberg in Schlesien\";\"other\"\n\"3097257\";\"Jelena Gura\";\"other\"\n\"3097257\";\"Jelenja Gura\";\"other\"\n\"3097257\";\"Jeleņa Gura\";\"other\"\n\"3097257\";\"yelleniagula\";\"other\"\n\"3097257\";\"Йеленя Гура\";\"other\"\n\"3097257\";\"옐레니아구라\";\"other\"\n\"3097271\";\"Jelcz\";\"main\"\n\"3097271\";\"Jelczc\";\"other\"\n\"3097271\";\"Jelez\";\"other\"\n\"3097271\";\"Jeltsch\";\"other\"\n\"3097272\";\"Jejkowice\";\"main\"\n\"3097301\";\"Jedlina-Zdrój\";\"main\"\n\"3097301\";\"Jedlina-Zdroj\";\"ascii\"\n\"3097301\";\"Bad Charlottenbrunn\";\"other\"\n\"3097301\";\"Charlottenbrunn-Zdroj\";\"other\"\n\"3097301\";\"Charlottenbrunn-Zdrój\";\"other\"\n\"3097327\";\"Jaworzynka\";\"main\"\n\"3097328\";\"Jaworzyna Śląska\";\"main\"\n\"3097328\";\"Jaworzyna Slaska\";\"ascii\"\n\"3097328\";\"Konigszelt\";\"other\"\n\"3097328\";\"Königszelt\";\"other\"\n\"3097333\";\"Jaworzno\";\"main\"\n\"3097333\";\"Javozhno\";\"other\"\n\"3097333\";\"Jaworzyna\";\"other\"\n\"3097333\";\"Явожно\";\"other\"\n\"3097339\";\"Jaworze\";\"main\"\n\"3097367\";\"Jawor\";\"main\"\n\"3097367\";\"Jauer\";\"other\"\n\"3097367\";\"Javor\";\"other\"\n\"3097367\";\"Явор\";\"other\"\n\"3097391\";\"Jastrzębie Zdrój\";\"main\"\n\"3097391\";\"Jastrzebie Zdroj\";\"ascii\"\n\"3097391\";\"Jastrzebie-Zdroj\";\"other\"\n\"3097391\";\"Jastrzębie-Zdrój\";\"other\"\n\"3097391\";\"Jastsembe Zdroja\";\"other\"\n\"3097391\";\"Jastšembe Zdroja\";\"other\"\n\"3097409\";\"Jastrzębia Góra\";\"main\"\n\"3097409\";\"Jastrzebia Gora\";\"ascii\"\n\"3097416\";\"Jastrząb\";\"main\"\n\"3097416\";\"Jastrzab\";\"ascii\"\n\"3097420\";\"Jastrowie\";\"main\"\n\"3097420\";\"Jastrow\";\"other\"\n\"3097421\";\"Jastarnia\";\"main\"\n\"3097421\";\"Heisternest\";\"other\"\n\"3097421\";\"Jastaania\";\"other\"\n\"3097421\";\"Jastarnja\";\"other\"\n\"3097421\";\"Ястарня\";\"other\"\n\"3097471\";\"Jasienica\";\"main\"\n\"3097472\";\"Jasienica\";\"main\"\n\"3097480\";\"Jasień\";\"main\"\n\"3097480\";\"Jasien\";\"ascii\"\n\"3097480\";\"Gassen\";\"other\"\n\"3097528\";\"Jarocin\";\"main\"\n\"3097528\";\"ya luo qin\";\"other\"\n\"3097528\";\"Яроцин\";\"other\"\n\"3097528\";\"亚罗钦\";\"other\"\n\"3097553\";\"Jaraczewo\";\"main\"\n\"3097553\";\"Jaraczew\";\"other\"\n\"3097594\";\"Janowiec Wielkopolski\";\"main\"\n\"3097594\";\"Janowiec\";\"other\"\n\"3097599\";\"Janowice Wielkie\";\"main\"\n\"3097651\";\"Jankowice Rybnickie\";\"main\"\n\"3097660\";\"Jankowice\";\"main\"\n\"3097688\";\"Janikowo\";\"main\"\n\"3097688\";\"JANIKOVO\";\"other\"\n\"3097688\";\"ЯНИКОВО\";\"other\"\n\"3097808\";\"Jabłonowo Pomorskie\";\"main\"\n\"3097808\";\"Jablonowo Pomorskie\";\"ascii\"\n\"3097808\";\"Jablonovo-Pomorske\";\"other\"\n\"3097808\";\"Jablonowo\";\"other\"\n\"3097808\";\"Jabłonowo\";\"other\"\n\"3097808\";\"Яблоново-Поморске\";\"other\"\n\"3097813\";\"Jabłonna\";\"main\"\n\"3097813\";\"Jablonna\";\"ascii\"\n\"3097823\";\"Jabłonka\";\"main\"\n\"3097823\";\"Jablonka\";\"ascii\"\n\"3097839\";\"Izbicko\";\"main\"\n\"3097839\";\"Stubendorf\";\"other\"\n\"3097841\";\"Izbica Kujawska\";\"main\"\n\"3097841\";\"Izbica\";\"other\"\n\"3097841\";\"Izbica-Kujavska\";\"other\"\n\"3097841\";\"Избица-Куявска\";\"other\"\n\"3097865\";\"Istebna\";\"main\"\n\"3097871\";\"Ińsko\";\"main\"\n\"3097871\";\"Insko\";\"ascii\"\n\"3097871\";\"Norenberg\";\"other\"\n\"3097871\";\"Nörenberg\";\"other\"\n\"3097872\";\"Inowrocław\";\"main\"\n\"3097872\";\"Inowroclaw\";\"ascii\"\n\"3097872\";\"Hohensalza\";\"other\"\n\"3097872\";\"INOVROCLAV\";\"other\"\n\"3097872\";\"Inovroclava\";\"other\"\n\"3097872\";\"Inovrotslav\";\"other\"\n\"3097872\";\"Inowraclaw\";\"other\"\n\"3097872\";\"Inowracław\";\"other\"\n\"3097872\";\"Irownoclaw\";\"other\"\n\"3097872\";\"ИНОВРОЦЛАВ\";\"other\"\n\"3097886\";\"Imielin\";\"main\"\n\"3097896\";\"Iłowa\";\"main\"\n\"3097896\";\"Ilowa\";\"ascii\"\n\"3097896\";\"Halbau\";\"other\"\n\"3097896\";\"Stadt Halbau\";\"other\"\n\"3097902\";\"Iława\";\"main\"\n\"3097902\";\"Ilawa\";\"ascii\"\n\"3097902\";\"Deutsch Eylau\";\"other\"\n\"3097902\";\"ILAVA\";\"other\"\n\"3097902\";\"iwavu~a\";\"other\"\n\"3097902\";\"ИЛАВА\";\"other\"\n\"3097902\";\"イワヴァ\";\"other\"\n\"3097935\";\"Huta Stara B\";\"main\"\n\"3098007\";\"Herby\";\"main\"\n\"3098030\";\"Hel\";\"main\"\n\"3098030\";\"Hela\";\"other\"\n\"3098030\";\"Hél\";\"other\"\n\"3098030\";\"KHEL'\";\"other\"\n\"3098030\";\"ХЕЛЬ\";\"other\"\n\"3098033\";\"Hażlach\";\"main\"\n\"3098033\";\"Hazlach\";\"ascii\"\n\"3098039\";\"Harbutowice\";\"main\"\n\"3098130\";\"Gubin\";\"main\"\n\"3098130\";\"Guben\";\"other\"\n\"3098163\";\"Grzmiąca\";\"main\"\n\"3098163\";\"Grzmiaca\";\"ascii\"\n\"3098163\";\"Gramenz\";\"other\"\n\"3098199\";\"Gryfów Śląski\";\"main\"\n\"3098199\";\"Gryfow Slaski\";\"ascii\"\n\"3098199\";\"Greiffenberg\";\"other\"\n\"3098199\";\"Greiffenberg in Schlesien\";\"other\"\n\"3098199\";\"Greiffeńberg\";\"other\"\n\"3098200\";\"Gryfino\";\"main\"\n\"3098200\";\"Greifenhagen\";\"other\"\n\"3098200\";\"Грыфино\";\"other\"\n\"3098201\";\"Gryfice\";\"main\"\n\"3098201\";\"Greifenberg\";\"other\"\n\"3098201\";\"Greifenberg in Pommern\";\"other\"\n\"3098204\";\"Gruta\";\"main\"\n\"3098204\";\"Грута\";\"other\"\n\"3098218\";\"Grudziądz\";\"main\"\n\"3098218\";\"Grudziadz\";\"ascii\"\n\"3098218\";\"GRUDZENDZ\";\"other\"\n\"3098218\";\"Graudenz\";\"other\"\n\"3098218\";\"Grudzendz\";\"other\"\n\"3098218\";\"Grudzjondza\";\"other\"\n\"3098218\";\"Grudzëndz\";\"other\"\n\"3098218\";\"ГРУДЗЕНДЗ\";\"other\"\n\"3098239\";\"Gronowo Górne\";\"main\"\n\"3098239\";\"Gronowo Gorne\";\"ascii\"\n\"3098239\";\"Gronowo\";\"other\"\n\"3098239\";\"Grunau\";\"other\"\n\"3098239\";\"Grunau Hohe\";\"other\"\n\"3098239\";\"Grünau Höhe\";\"other\"\n\"3098239\";\"Hohe\";\"other\"\n\"3098239\";\"Höhe\";\"other\"\n\"3098240\";\"Gronowo Elbląskie\";\"main\"\n\"3098240\";\"Gronowo Elblaskie\";\"ascii\"\n\"3098240\";\"Gronowo\";\"other\"\n\"3098240\";\"Grunau\";\"other\"\n\"3098267\";\"Gromadka\";\"main\"\n\"3098267\";\"Greulich\";\"other\"\n\"3098288\";\"Grodzisk Wielkopolski\";\"main\"\n\"3098288\";\"Gratz\";\"other\"\n\"3098288\";\"Grodzisk\";\"other\"\n\"3098288\";\"Grätz\";\"other\"\n\"3098333\";\"Grodków\";\"main\"\n\"3098333\";\"Grodkow\";\"ascii\"\n\"3098333\";\"Grotkow\";\"other\"\n\"3098333\";\"Grottkau\";\"other\"\n\"3098380\";\"Grębocice\";\"main\"\n\"3098380\";\"Grebocice\";\"ascii\"\n\"3098394\";\"Granowo\";\"main\"\n\"3098453\";\"Grabowo Kościerskie\";\"main\"\n\"3098453\";\"Grabowo Koscierskie\";\"ascii\"\n\"3098453\";\"Grabowo\";\"other\"\n\"3098470\";\"Grabów nad Prosną\";\"main\"\n\"3098470\";\"Grabow nad Prosna\";\"ascii\"\n\"3098556\";\"Grabica\";\"main\"\n\"3098575\";\"Gozdowo\";\"main\"\n\"3098575\";\"Gozdovo\";\"other\"\n\"3098575\";\"Гоздово\";\"other\"\n\"3098583\";\"Gozdnica\";\"main\"\n\"3098583\";\"Freiwaldau\";\"other\"\n\"3098619\";\"Gostynin\";\"main\"\n\"3098619\";\"GOSTYNIN\";\"other\"\n\"3098619\";\"Gostyn\";\"other\"\n\"3098619\";\"ГОСТЫНИН\";\"other\"\n\"3098625\";\"Gostyń\";\"main\"\n\"3098625\";\"Gostyn\";\"ascii\"\n\"3098625\";\"Gostingen\";\"other\"\n\"3098625\";\"Гостын\";\"other\"\n\"3098626\";\"Gostyń\";\"main\"\n\"3098626\";\"Gostyn\";\"ascii\"\n\"3098629\";\"Gostycyn\";\"main\"\n\"3098629\";\"Gostyczyn\";\"other\"\n\"3098665\";\"Gościno\";\"main\"\n\"3098665\";\"Goscino\";\"ascii\"\n\"3098665\";\"Gross\";\"other\"\n\"3098665\";\"Gross Jestin\";\"other\"\n\"3098699\";\"Gorzyczki\";\"main\"\n\"3098702\";\"Gorzyce Wielkie\";\"main\"\n\"3098709\";\"Gorzyce\";\"main\"\n\"3098722\";\"Gorzów Wielkopolski\";\"main\"\n\"3098722\";\"Gorzow Wielkopolski\";\"ascii\"\n\"3098722\";\"Gozhuv-Vel'kopol'ski\";\"other\"\n\"3098722\";\"Gozova Velkopolska\";\"other\"\n\"3098722\";\"Gožova Veļkopoļska\";\"other\"\n\"3098722\";\"Landsberg\";\"other\"\n\"3098722\";\"Landsberg an der Warthe\";\"other\"\n\"3098722\";\"Гожув-Велькопольски\";\"other\"\n\"3098723\";\"Gorzów Śląski\";\"main\"\n\"3098723\";\"Gorzow Slaski\";\"ascii\"\n\"3098723\";\"Gorzow\";\"other\"\n\"3098723\";\"Gorzów\";\"other\"\n\"3098723\";\"Landsberg\";\"other\"\n\"3098727\";\"Górzno\";\"main\"\n\"3098727\";\"Gorzno\";\"ascii\"\n\"3098735\";\"Gorzkowice\";\"main\"\n\"3098815\";\"Górki Wielkie\";\"main\"\n\"3098815\";\"Gorki Wielkie\";\"ascii\"\n\"3098898\";\"Góra\";\"main\"\n\"3098898\";\"Gora\";\"ascii\"\n\"3098898\";\"Guhrau\";\"other\"\n\"3098901\";\"Góra\";\"main\"\n\"3098901\";\"Gora\";\"ascii\"\n\"3098909\";\"Gomunice\";\"main\"\n\"3098925\";\"Golub-Dobrzyń\";\"main\"\n\"3098925\";\"Golub-Dobrzyn\";\"ascii\"\n\"3098925\";\"Golub\";\"other\"\n\"3098938\";\"Gołkowice\";\"main\"\n\"3098938\";\"Golkowice\";\"ascii\"\n\"3098949\";\"Golina\";\"main\"\n\"3098949\";\"GOLINA\";\"other\"\n\"3098949\";\"ГОЛИНА\";\"other\"\n\"3098959\";\"Goleszów\";\"main\"\n\"3098959\";\"Goleszow\";\"ascii\"\n\"3098966\";\"Goleniów\";\"main\"\n\"3098966\";\"Goleniow\";\"ascii\"\n\"3098966\";\"Golenjov\";\"other\"\n\"3098966\";\"Gollnow\";\"other\"\n\"3098966\";\"Golnowo\";\"other\"\n\"3098966\";\"Gòlnowò\";\"other\"\n\"3098966\";\"Голенёв\";\"other\"\n\"3098991\";\"Golczewo\";\"main\"\n\"3098991\";\"Gulzow\";\"other\"\n\"3098991\";\"Gülzow\";\"other\"\n\"3099016\";\"Gołańcz\";\"main\"\n\"3099016\";\"Golancz\";\"ascii\"\n\"3099048\";\"Gogolin\";\"main\"\n\"3099062\";\"Godziszka\";\"main\"\n\"3099084\";\"Godów\";\"main\"\n\"3099084\";\"Godow\";\"ascii\"\n\"3099095\";\"Goczałkowice Zdrój\";\"main\"\n\"3099095\";\"Goczalkowice Zdroj\";\"ascii\"\n\"3099095\";\"Goczalkowice\";\"other\"\n\"3099095\";\"Goczałkowice\";\"other\"\n\"3099112\";\"Gniezno\";\"main\"\n\"3099112\";\"Gnesen\";\"other\"\n\"3099112\";\"Gnesna\";\"other\"\n\"3099112\";\"Gnezno\";\"other\"\n\"3099112\";\"Gņezno\";\"other\"\n\"3099112\";\"Гнезно\";\"other\"\n\"3099112\";\"Гнєзно\";\"other\"\n\"3099120\";\"Gniewkowo\";\"main\"\n\"3099120\";\"Gniekowo\";\"other\"\n\"3099125\";\"Gniewino\";\"main\"\n\"3099125\";\"Gnevino\";\"other\"\n\"3099125\";\"Гневино\";\"other\"\n\"3099127\";\"Gniew\";\"main\"\n\"3099127\";\"Gnev\";\"other\"\n\"3099127\";\"Гнев\";\"other\"\n\"3099134\";\"Gniazdów\";\"main\"\n\"3099134\";\"Gniazdow\";\"ascii\"\n\"3099144\";\"Głuszyca Górna\";\"main\"\n\"3099144\";\"Gluszyca Gorna\";\"ascii\"\n\"3099144\";\"Ober Wustegiersdorf\";\"other\"\n\"3099144\";\"Ober Wüstegiersdorf\";\"other\"\n\"3099146\";\"Głuszyca\";\"main\"\n\"3099146\";\"Gluszyca\";\"ascii\"\n\"3099146\";\"Nieder Wustegiersdorf\";\"other\"\n\"3099146\";\"Nieder Wüstegiersdorf\";\"other\"\n\"3099146\";\"Wustegiersdorf\";\"other\"\n\"3099146\";\"Wüstegiersdorf\";\"other\"\n\"3099169\";\"Głuchołazy\";\"main\"\n\"3099169\";\"Glucholazy\";\"ascii\"\n\"3099169\";\"Ziegenhals\";\"other\"\n\"3099174\";\"Głubczyce\";\"main\"\n\"3099174\";\"Glubczyce\";\"ascii\"\n\"3099174\";\"Ghipczyce\";\"other\"\n\"3099174\";\"Hlubcice\";\"other\"\n\"3099174\";\"Hlubčice\";\"other\"\n\"3099174\";\"Leobschutz\";\"other\"\n\"3099174\";\"Leobschütz\";\"other\"\n\"3099180\";\"Głowno\";\"main\"\n\"3099180\";\"Glowno\";\"ascii\"\n\"3099180\";\"Glovno\";\"other\"\n\"3099180\";\"Glowd\";\"other\"\n\"3099192\";\"Główczyce\";\"main\"\n\"3099192\";\"Glowczyce\";\"ascii\"\n\"3099192\";\"Glowitz\";\"other\"\n\"3099209\";\"Głogówek\";\"main\"\n\"3099209\";\"Glogowek\";\"ascii\"\n\"3099209\";\"Oberglogau\";\"other\"\n\"3099213\";\"Głogów\";\"main\"\n\"3099213\";\"Glogow\";\"ascii\"\n\"3099213\";\"Glogau\";\"other\"\n\"3099213\";\"Glogov\";\"other\"\n\"3099213\";\"Glogovia\";\"other\"\n\"3099213\";\"Gloguva\";\"other\"\n\"3099213\";\"Hlohov\";\"other\"\n\"3099213\";\"ge wo gu fu\";\"other\"\n\"3099213\";\"guu~ogufu\";\"other\"\n\"3099213\";\"Глогов\";\"other\"\n\"3099213\";\"グウォグフ\";\"other\"\n\"3099213\";\"格沃古夫\";\"other\"\n\"3099230\";\"Gliwice\";\"main\"\n\"3099230\";\"Gleiwitz\";\"other\"\n\"3099230\";\"Glivice\";\"other\"\n\"3099230\";\"Gliwice-Sosnowiec\";\"other\"\n\"3099230\";\"Gļivice\";\"other\"\n\"3099230\";\"gurivu~itsu~e\";\"other\"\n\"3099230\";\"Гливице\";\"other\"\n\"3099230\";\"グリヴィツェ\";\"other\"\n\"3099351\";\"Gilowice\";\"main\"\n\"3099352\";\"Gilowice\";\"main\"\n\"3099371\";\"Gierałtowice\";\"main\"\n\"3099371\";\"Gieraltowice\";\"ascii\"\n\"3099391\";\"Gidle\";\"main\"\n\"3099424\";\"Gdynia\";\"main\"\n\"3099424\";\"Civitas Gdinensis\";\"other\"\n\"3099424\";\"Gdina\";\"other\"\n\"3099424\";\"Gdingen\";\"other\"\n\"3099424\";\"Gdinio\";\"other\"\n\"3099424\";\"Gdiniô\";\"other\"\n\"3099424\";\"Gdinja\";\"other\"\n\"3099424\";\"Gdiņa\";\"other\"\n\"3099424\";\"Gdyne\";\"other\"\n\"3099424\";\"Gdynja\";\"other\"\n\"3099424\";\"Gdyně\";\"other\"\n\"3099424\";\"Gotenhafen\";\"other\"\n\"3099424\";\"Gothenhafen\";\"other\"\n\"3099424\";\"ge ding ni ya\";\"other\"\n\"3099424\";\"gudinya\";\"other\"\n\"3099424\";\"Гдиня\";\"other\"\n\"3099424\";\"Гдыня\";\"other\"\n\"3099424\";\"グディニャ\";\"other\"\n\"3099424\";\"格丁尼亚\";\"other\"\n\"3099434\";\"Gdańsk\";\"main\"\n\"3099434\";\"Gdansk\";\"ascii\"\n\"3099434\";\"Dancigo\";\"other\"\n\"3099434\";\"Danzica\";\"other\"\n\"3099434\";\"Danzig\";\"other\"\n\"3099434\";\"Gdan'sk\";\"other\"\n\"3099434\";\"Gdanska\";\"other\"\n\"3099434\";\"Gdanskas\";\"other\"\n\"3099434\";\"Gdaņska\";\"other\"\n\"3099434\";\"Gdaňsk\";\"other\"\n\"3099434\";\"Gdunsk\";\"other\"\n\"3099434\";\"Gduńsk\";\"other\"\n\"3099434\";\"Gedania\";\"other\"\n\"3099434\";\"Gydanysg\";\"other\"\n\"3099434\";\"Nkntansk\";\"other\"\n\"3099434\";\"gdnsq\";\"other\"\n\"3099434\";\"ge dan si ke\";\"other\"\n\"3099434\";\"geudanseukeu\";\"other\"\n\"3099434\";\"gudanisuku\";\"other\"\n\"3099434\";\"Γκντανσκ\";\"other\"\n\"3099434\";\"Гданск\";\"other\"\n\"3099434\";\"Гданьск\";\"other\"\n\"3099434\";\"Гдањск\";\"other\"\n\"3099434\";\"Ґданськ\";\"other\"\n\"3099434\";\"גדנסק\";\"other\"\n\"3099434\";\"グダニスク\";\"other\"\n\"3099434\";\"格但斯克\";\"other\"\n\"3099434\";\"그단스크\";\"other\"\n\"3099445\";\"Gaworzyce\";\"main\"\n\"3099452\";\"Gaszowice\";\"main\"\n\"3099473\";\"Gąsawa\";\"main\"\n\"3099473\";\"Gasawa\";\"ascii\"\n\"3099492\";\"Gardeja\";\"main\"\n\"3099492\";\"Garnsee\";\"other\"\n\"3099492\";\"Гардея\";\"other\"\n\"3099494\";\"Gardawice\";\"main\"\n\"3099619\";\"Gąbin\";\"main\"\n\"3099619\";\"Gabin\";\"ascii\"\n\"3099619\";\"GOMBIN\";\"other\"\n\"3099619\";\"ГОМБИН\";\"other\"\n\"3099634\";\"Frombork\";\"main\"\n\"3099634\";\"Frauenburg\";\"other\"\n\"3099634\";\"Фромборк\";\"other\"\n\"3099720\";\"Fabianki\";\"main\"\n\"3099720\";\"Fabjanki\";\"other\"\n\"3099759\";\"Elblag\";\"main\"\n\"3099759\";\"EHL'BLONG\";\"other\"\n\"3099759\";\"El'bleng\";\"other\"\n\"3099759\";\"Elbing\";\"other\"\n\"3099759\";\"Elbinga\";\"other\"\n\"3099759\";\"Elblong\";\"other\"\n\"3099759\";\"Elblonga\";\"other\"\n\"3099759\";\"Elbląg\";\"other\"\n\"3099759\";\"El’blëng\";\"other\"\n\"3099759\";\"ЭЛЬБЛОНГ\";\"other\"\n\"3099783\";\"Dziwnów\";\"main\"\n\"3099783\";\"Dziwnow\";\"ascii\"\n\"3099783\";\"Ost Dievenow\";\"other\"\n\"3099828\";\"Dzierżoniów\";\"main\"\n\"3099828\";\"Dzierzoniow\";\"ascii\"\n\"3099828\";\"Reichenbach\";\"other\"\n\"3099828\";\"Reichenbach in Schlesien\";\"other\"\n\"3099828\";\"Rychbach\";\"other\"\n\"3099842\";\"Dzierzgoń\";\"main\"\n\"3099842\";\"Dzierzgon\";\"ascii\"\n\"3099842\";\"Christburg\";\"other\"\n\"3099878\";\"Dziemiany\";\"main\"\n\"3099887\";\"Dzięgielów\";\"main\"\n\"3099887\";\"Dziegielow\";\"ascii\"\n\"3099923\";\"Działoszyn\";\"main\"\n\"3099923\";\"Dzialoszyn\";\"ascii\"\n\"3099934\";\"Dziadowa Kłoda\";\"main\"\n\"3099934\";\"Dziadowa Kloda\";\"ascii\"\n\"3099934\";\"Kunzendorf\";\"other\"\n\"3099966\";\"Dygowo\";\"main\"\n\"3099966\";\"Degow\";\"other\"\n\"3099992\";\"Duszniki-Zdrój\";\"main\"\n\"3099992\";\"Duszniki-Zdroj\";\"ascii\"\n\"3099992\";\"Bad Reinerz\";\"other\"\n\"3099992\";\"Dushniki-Zdruj\";\"other\"\n\"3099992\";\"Duszniki\";\"other\"\n\"3099992\";\"Duszniki Zdroj\";\"other\"\n\"3099992\";\"Duszniki Zdrój\";\"other\"\n\"3099992\";\"Reinerz\";\"other\"\n\"3099992\";\"Душники-Здруй\";\"other\"\n\"3099993\";\"Duszniki\";\"main\"\n\"3100027\";\"Drzycim\";\"main\"\n\"3100116\";\"Drogomyśl\";\"main\"\n\"3100116\";\"Drogomysl\";\"ascii\"\n\"3100124\";\"Drobin\";\"main\"\n\"3100124\";\"Дробин\";\"other\"\n\"3100127\";\"Drezdenko\";\"main\"\n\"3100127\";\"Drebenko\";\"other\"\n\"3100127\";\"Driesen\";\"other\"\n\"3100139\";\"Drawsko Pomorskie\";\"main\"\n\"3100139\";\"Dramburg\";\"other\"\n\"3100139\";\"Drawsko\";\"other\"\n\"3100142\";\"Drawsko\";\"main\"\n\"3100142\";\"Dratzig\";\"other\"\n\"3100142\";\"Drawsko Kreuz\";\"other\"\n\"3100142\";\"Vratzig\";\"other\"\n\"3100148\";\"Drawno\";\"main\"\n\"3100148\";\"Neuwedell\";\"other\"\n\"3100171\";\"Dopiewo\";\"main\"\n\"3100193\";\"Domaszowice\";\"main\"\n\"3100193\";\"Noldau\";\"other\"\n\"3100231\";\"Dolsk\";\"main\"\n\"3100247\";\"Dolice\";\"main\"\n\"3100247\";\"Dolitz\";\"other\"\n\"3100247\";\"Dölitz\";\"other\"\n\"3100266\";\"Dobrzyń nad Wisłą\";\"main\"\n\"3100266\";\"Dobrzyn nad Wisla\";\"ascii\"\n\"3100266\";\"Dobrzyn\";\"other\"\n\"3100266\";\"Dobrzyń\";\"other\"\n\"3100280\";\"Dobrzyca\";\"main\"\n\"3100283\";\"Dobrzeń Wielki\";\"main\"\n\"3100283\";\"Dobrzen Wielki\";\"ascii\"\n\"3100283\";\"Dobern\";\"other\"\n\"3100283\";\"Dobrze\";\"other\"\n\"3100283\";\"Döbern\";\"other\"\n\"3100283\";\"Gross Dobern\";\"other\"\n\"3100283\";\"Gross Döbern\";\"other\"\n\"3100283\";\"Wielki Dobrzen\";\"other\"\n\"3100283\";\"Wielki Dobrzeń\";\"other\"\n\"3100297\";\"Dobrzany\";\"main\"\n\"3100297\";\"Jacobshagen\";\"other\"\n\"3100297\";\"Jakobshagen\";\"other\"\n\"3100306\";\"Dobroszyce\";\"main\"\n\"3100306\";\"Douroszyce\";\"other\"\n\"3100306\";\"Juliusburg\";\"other\"\n\"3100342\";\"Dobrodzień\";\"main\"\n\"3100342\";\"Dobrodzien\";\"ascii\"\n\"3100342\";\"Guttentag\";\"other\"\n\"3100355\";\"Dobre\";\"main\"\n\"3100363\";\"Dobra\";\"main\"\n\"3100363\";\"Daber\";\"other\"\n\"3100364\";\"Dobra\";\"main\"\n\"3100364\";\"Daber\";\"other\"\n\"3100364\";\"Szczecinska\";\"other\"\n\"3100364\";\"Szczecińska\";\"other\"\n\"3100366\";\"Dobra\";\"main\"\n\"3100382\";\"Dobieszowice\";\"main\"\n\"3100400\";\"Dobiegniew\";\"main\"\n\"3100400\";\"Dobiehiewo\";\"other\"\n\"3100400\";\"Woldenberg\";\"other\"\n\"3100400\";\"Woldenberg Neumark\";\"other\"\n\"3100489\";\"Debrzno\";\"main\"\n\"3100489\";\"Debzhno\";\"other\"\n\"3100489\";\"Preussisch Friedland\";\"other\"\n\"3100489\";\"Дебжно\";\"other\"\n\"3100515\";\"Dębowiec\";\"main\"\n\"3100515\";\"Debowiec\";\"ascii\"\n\"3100518\";\"Dębowa Łąka\";\"main\"\n\"3100518\";\"Debowa Laka\";\"ascii\"\n\"3100545\";\"Dębno\";\"main\"\n\"3100545\";\"Debno\";\"ascii\"\n\"3100545\";\"Neudamm\";\"other\"\n\"3100553\";\"Dębnica Kaszubska\";\"main\"\n\"3100553\";\"Debnica Kaszubska\";\"ascii\"\n\"3100553\";\"Rathsdamnitz\";\"other\"\n\"3100624\";\"Daszewice\";\"main\"\n\"3100637\";\"Darłowo\";\"main\"\n\"3100637\";\"Darlowo\";\"ascii\"\n\"3100637\";\"Dyrlow\";\"other\"\n\"3100637\";\"Dyrłów\";\"other\"\n\"3100637\";\"Rugenwalde\";\"other\"\n\"3100637\";\"Rügenwalde\";\"other\"\n\"3100671\";\"Damnica\";\"main\"\n\"3100677\";\"Damasławek\";\"main\"\n\"3100677\";\"Damaslawek\";\"ascii\"\n\"3100796\";\"Dąbrowa Górnicza\";\"main\"\n\"3100796\";\"Dabrowa Gornicza\";\"ascii\"\n\"3100796\";\"Dombrova Gurnica\";\"other\"\n\"3100796\";\"Dombrova Gurņiča\";\"other\"\n\"3100796\";\"Dombrowa\";\"other\"\n\"3100802\";\"Dąbrowa Chełmińska\";\"main\"\n\"3100802\";\"Dabrowa Chelminska\";\"ascii\"\n\"3100802\";\"Dabrowka Chelminska\";\"other\"\n\"3100802\";\"Dąbrowka Chełmińska\";\"other\"\n\"3100820\";\"Dąbrowa\";\"main\"\n\"3100820\";\"Dabrowa\";\"ascii\"\n\"3100849\";\"Dąbrowa\";\"main\"\n\"3100849\";\"Dabrowa\";\"ascii\"\n\"3100849\";\"Dambrau\";\"other\"\n\"3100849\";\"Deutsch Damno\";\"other\"\n\"3100880\";\"Dąbie\";\"main\"\n\"3100880\";\"Dabie\";\"ascii\"\n\"3100891\";\"Czyżowice\";\"main\"\n\"3100891\";\"Czyzowice\";\"ascii\"\n\"3100933\";\"Człuchów\";\"main\"\n\"3100933\";\"Czluchow\";\"ascii\"\n\"3100933\";\"Schlochau\";\"other\"\n\"3100936\";\"Człopa\";\"main\"\n\"3100936\";\"Czlopa\";\"ascii\"\n\"3100936\";\"Schloppe\";\"other\"\n\"3100946\";\"Częstochowa\";\"main\"\n\"3100946\";\"Czestochowa\";\"ascii\"\n\"3100946\";\"Censtakava\";\"other\"\n\"3100946\";\"Censtochova\";\"other\"\n\"3100946\";\"Censtohova\";\"other\"\n\"3100946\";\"Chenstochov\";\"other\"\n\"3100946\";\"Chenstokhov\";\"other\"\n\"3100946\";\"Chenstokhova\";\"other\"\n\"3100946\";\"Czenstochau\";\"other\"\n\"3100946\";\"Tschenstochau\";\"other\"\n\"3100946\";\"qin si tuo huo wa\";\"other\"\n\"3100946\";\"z'nstwhwbh\";\"other\"\n\"3100946\";\"Čenstakava\";\"other\"\n\"3100946\";\"Čenstochová\";\"other\"\n\"3100946\";\"Čenstohova\";\"other\"\n\"3100946\";\"Ченстохова\";\"other\"\n\"3100946\";\"צ'נסטוחובה\";\"other\"\n\"3100946\";\"琴斯托霍瓦\";\"other\"\n\"3100974\";\"Czerwionka-Leszczyny\";\"main\"\n\"3100974\";\"Czerwionka\";\"other\"\n\"3100974\";\"Leszczyny\";\"other\"\n\"3100976\";\"Czerwieńsk\";\"main\"\n\"3100976\";\"Czerwiensk\";\"ascii\"\n\"3100976\";\"Czerwinsk\";\"other\"\n\"3100976\";\"Czerwińsk\";\"other\"\n\"3100976\";\"Rothenburg\";\"other\"\n\"3100976\";\"Rothenburg an der Oder\";\"other\"\n\"3100976\";\"Rozborg\";\"other\"\n\"3100984\";\"Czersk\";\"main\"\n\"3100984\";\"Czersk Pomorski\";\"other\"\n\"3100994\";\"Czernikowo\";\"main\"\n\"3100994\";\"Chernikovo\";\"other\"\n\"3100994\";\"Черниково\";\"other\"\n\"3101006\";\"Czerniejewo\";\"main\"\n\"3101009\";\"Czernichów\";\"main\"\n\"3101009\";\"Czernichow\";\"ascii\"\n\"3101010\";\"Czernichów\";\"main\"\n\"3101010\";\"Czernichow\";\"ascii\"\n\"3101017\";\"Czernica\";\"main\"\n\"3101017\";\"Grossbruck\";\"other\"\n\"3101017\";\"Grossbrück\";\"other\"\n\"3101017\";\"Tschirne\";\"other\"\n\"3101019\";\"Czernica\";\"main\"\n\"3101053\";\"Czempiń\";\"main\"\n\"3101053\";\"Czempin\";\"ascii\"\n\"3101053\";\"Chempin'\";\"other\"\n\"3101053\";\"Chempin’\";\"other\"\n\"3101057\";\"Czeladź\";\"main\"\n\"3101057\";\"Czeladz\";\"ascii\"\n\"3101057\";\"Czeladz Piaski\";\"other\"\n\"3101076\";\"Czechowice-Dziedzice\";\"main\"\n\"3101076\";\"Czchowice\";\"other\"\n\"3101076\";\"Czechowice\";\"other\"\n\"3101076\";\"Dziedzice\";\"other\"\n\"3101076\";\"Dzieozice\";\"other\"\n\"3101076\";\"Zabracze\";\"other\"\n\"3101114\";\"Czarny Dunajec\";\"main\"\n\"3101117\";\"Czarny Bór\";\"main\"\n\"3101117\";\"Czarny Bor\";\"ascii\"\n\"3101120\";\"Czarnożyły\";\"main\"\n\"3101120\";\"Czarnozyly\";\"ascii\"\n\"3101128\";\"Czarnowąsy\";\"main\"\n\"3101128\";\"Czarnowasy\";\"ascii\"\n\"3101128\";\"Czarnowanz\";\"other\"\n\"3101128\";\"Klosterbruck\";\"other\"\n\"3101128\";\"Klosterbrück\";\"other\"\n\"3101136\";\"Czarnocin\";\"main\"\n\"3101136\";\"Czarnocin Podduchowny\";\"other\"\n\"3101136\";\"Czarnocin Poduchowny\";\"other\"\n\"3101145\";\"Czarnków\";\"main\"\n\"3101145\";\"Czarnkow\";\"ascii\"\n\"3101161\";\"Czarne\";\"main\"\n\"3101161\";\"Hammerstein\";\"other\"\n\"3101170\";\"Czarna Woda\";\"main\"\n\"3101170\";\"Charna-Voda\";\"other\"\n\"3101170\";\"Чарна-Вода\";\"other\"\n\"3101201\";\"Czapury\";\"main\"\n\"3101204\";\"Czaplinek\";\"main\"\n\"3101204\";\"Tempelburg\";\"other\"\n\"3101220\";\"Czaniec\";\"main\"\n\"3101255\";\"Cybinka\";\"main\"\n\"3101255\";\"Ziebingen\";\"other\"\n\"3101277\";\"Cisownica\";\"main\"\n\"3101289\";\"Cisiec\";\"main\"\n\"3101294\";\"Cisek\";\"main\"\n\"3101294\";\"Czissek\";\"other\"\n\"3101294\";\"Friedenau\";\"other\"\n\"3101294\";\"Friedenau Oberschlesien\";\"other\"\n\"3101321\";\"Cieszyn\";\"main\"\n\"3101321\";\"Ceshin\";\"other\"\n\"3101321\";\"Cesina\";\"other\"\n\"3101321\";\"Cešina\";\"other\"\n\"3101321\";\"Teschen\";\"other\"\n\"3101321\";\"Tesin\";\"other\"\n\"3101321\";\"Tesino\";\"other\"\n\"3101321\";\"Teŝino\";\"other\"\n\"3101321\";\"Tešín\";\"other\"\n\"3101321\";\"Těšín\";\"other\"\n\"3101321\";\"z'syn\";\"other\"\n\"3101321\";\"Цешин\";\"other\"\n\"3101321\";\"צ'שין\";\"other\"\n\"3101330\";\"Cieszków\";\"main\"\n\"3101330\";\"Cieszkow\";\"ascii\"\n\"3101330\";\"Frejno\";\"other\"\n\"3101330\";\"Freyhan\";\"other\"\n\"3101365\";\"Ciepłowody\";\"main\"\n\"3101365\";\"Cieplowody\";\"ascii\"\n\"3101365\";\"Lauenbrunn\";\"other\"\n\"3101365\";\"Tepliwoda\";\"other\"\n\"3101367\";\"Cieplice Śląskie Zdrój\";\"main\"\n\"3101367\";\"Cieplice Slaskie Zdroj\";\"ascii\"\n\"3101367\";\"Bad Warmbrunn\";\"other\"\n\"3101367\";\"Teplice\";\"other\"\n\"3101367\";\"Warmbrunn\";\"other\"\n\"3101367\";\"Теплице\";\"other\"\n\"3101415\";\"Cięcina\";\"main\"\n\"3101415\";\"Ciecina\";\"ascii\"\n\"3101426\";\"Ciechocinek\";\"main\"\n\"3101426\";\"CEKHOCINEK\";\"other\"\n\"3101426\";\"ЦЕХОЦИНЕК\";\"other\"\n\"3101428\";\"Ciechocin\";\"main\"\n\"3101428\";\"Cekhocin\";\"other\"\n\"3101428\";\"Цехоцин\";\"other\"\n\"3101446\";\"Ciasna\";\"main\"\n\"3101467\";\"Chybie\";\"main\"\n\"3101531\";\"Chrząstowice\";\"main\"\n\"3101531\";\"Chrzastowice\";\"ascii\"\n\"3101547\";\"Chrzanów\";\"main\"\n\"3101547\";\"Chrzanow\";\"ascii\"\n\"3101547\";\"Khshanov\";\"other\"\n\"3101547\";\"Krenau\";\"other\"\n\"3101547\";\"כשאנוב\";\"other\"\n\"3101553\";\"Chruszczobród\";\"main\"\n\"3101553\";\"Chruszczobrod\";\"ascii\"\n\"3101577\";\"Chrostkowo\";\"main\"\n\"3101592\";\"Chróścice\";\"main\"\n\"3101592\";\"Chroscice\";\"ascii\"\n\"3101613\";\"Choszczno\";\"main\"\n\"3101613\";\"Arnswalde\";\"other\"\n\"3101619\";\"Chorzów\";\"main\"\n\"3101619\";\"Chorzow\";\"ascii\"\n\"3101619\";\"Cherzow\";\"other\"\n\"3101619\";\"Cherzów\";\"other\"\n\"3101619\";\"Hozova\";\"other\"\n\"3101619\";\"Hožova\";\"other\"\n\"3101619\";\"Khozhuv\";\"other\"\n\"3101619\";\"Konigshutte\";\"other\"\n\"3101619\";\"Krolewska Huta\";\"other\"\n\"3101619\";\"Królewska Huta\";\"other\"\n\"3101619\";\"Königshütte\";\"other\"\n\"3101619\";\"hwrshaw\";\"other\"\n\"3101619\";\"Хожув\";\"other\"\n\"3101619\";\"هورشاو\";\"other\"\n\"3101635\";\"Choroń\";\"main\"\n\"3101635\";\"Choron\";\"ascii\"\n\"3101660\";\"Chojnów\";\"main\"\n\"3101660\";\"Chojnow\";\"ascii\"\n\"3101660\";\"Haynau\";\"other\"\n\"3101660\";\"Khojnov\";\"other\"\n\"3101660\";\"Хојнов\";\"other\"\n\"3101672\";\"Chojnice\";\"main\"\n\"3101672\";\"Chonice\";\"other\"\n\"3101672\";\"Chònice\";\"other\"\n\"3101672\";\"Hojnice\";\"other\"\n\"3101672\";\"Khojnice\";\"other\"\n\"3101672\";\"Khoynitsy\";\"other\"\n\"3101672\";\"Konitz\";\"other\"\n\"3101672\";\"hoinitsu~e\";\"other\"\n\"3101672\";\"Хойнице\";\"other\"\n\"3101672\";\"Хојњице\";\"other\"\n\"3101672\";\"ホイニツェ\";\"other\"\n\"3101675\";\"Chojna\";\"main\"\n\"3101675\";\"Konigsberg\";\"other\"\n\"3101675\";\"Konigsberg in Neumark\";\"other\"\n\"3101675\";\"Königsberg\";\"other\"\n\"3101675\";\"Königsberg in Neumark\";\"other\"\n\"3101675\";\"Neumark\";\"other\"\n\"3101680\";\"Chodzież\";\"main\"\n\"3101680\";\"Chodziez\";\"ascii\"\n\"3101680\";\"Kolmar\";\"other\"\n\"3101680\";\"hojeshu\";\"other\"\n\"3101680\";\"Хођеж\";\"other\"\n\"3101680\";\"ホジェシュ\";\"other\"\n\"3101689\";\"Chodecz\";\"main\"\n\"3101689\";\"KHODECH\";\"other\"\n\"3101689\";\"ХОДЕЧ\";\"other\"\n\"3101693\";\"Choczewo\";\"main\"\n\"3101697\";\"Chociwel\";\"main\"\n\"3101697\";\"Freienwalde in Pommern\";\"other\"\n\"3101722\";\"Chocianów\";\"main\"\n\"3101722\";\"Chocianow\";\"ascii\"\n\"3101722\";\"Kaczanow\";\"other\"\n\"3101722\";\"Kaczanów\";\"other\"\n\"3101722\";\"Kotzenau\";\"other\"\n\"3101726\";\"Choceń\";\"main\"\n\"3101726\";\"Chocen\";\"ascii\"\n\"3101734\";\"Chmielno\";\"main\"\n\"3101787\";\"Chełmża\";\"main\"\n\"3101787\";\"Chelmza\";\"ascii\"\n\"3101787\";\"KHELMZHA\";\"other\"\n\"3101787\";\"Khelmzha\";\"other\"\n\"3101787\";\"ХЕЛМЖА\";\"other\"\n\"3101787\";\"Хелмжа\";\"other\"\n\"3101788\";\"Chełm Śląski\";\"main\"\n\"3101788\";\"Chelm Slaski\";\"ascii\"\n\"3101795\";\"Chełmno\";\"main\"\n\"3101795\";\"Chelmno\";\"ascii\"\n\"3101795\";\"Campo di sterminio di Chelmno\";\"other\"\n\"3101795\";\"Campo di sterminio di Chełmno\";\"other\"\n\"3101795\";\"Chelmno nad Wisla\";\"other\"\n\"3101795\";\"Chełmno nad Wisłą\";\"other\"\n\"3101795\";\"Ekstermejo Chelmno\";\"other\"\n\"3101795\";\"Ekstermejo Chełmno\";\"other\"\n\"3101795\";\"KHELMNO\";\"other\"\n\"3101795\";\"Khelmno\";\"other\"\n\"3101795\";\"hlmnw\";\"other\"\n\"3101795\";\"ХЕЛМНО\";\"other\"\n\"3101795\";\"Хелмно\";\"other\"\n\"3101795\";\"חלמנו\";\"other\"\n\"3101812\";\"Chełmek\";\"main\"\n\"3101812\";\"Chelmek\";\"ascii\"\n\"3101856\";\"Chałupki\";\"main\"\n\"3101856\";\"Chalupki\";\"ascii\"\n\"3101856\";\"Chalutki\";\"other\"\n\"3101856\";\"Ruderswald\";\"other\"\n\"3101869\";\"Cewice\";\"main\"\n\"3101869\";\"Zewitz\";\"other\"\n\"3101902\";\"Cekcyn\";\"main\"\n\"3101902\";\"Цекцын\";\"other\"\n\"3101918\";\"Cedynia\";\"main\"\n\"3101918\";\"Zehden\";\"other\"\n\"3101919\";\"Cedry Wielkie\";\"main\"\n\"3101919\";\"Gross Zunder\";\"other\"\n\"3101919\";\"Gross Zünder\";\"other\"\n\"3101943\";\"Bytów\";\"main\"\n\"3101943\";\"Bytow\";\"ascii\"\n\"3101943\";\"Betowo\";\"other\"\n\"3101943\";\"Bitov\";\"other\"\n\"3101943\";\"Butow\";\"other\"\n\"3101943\";\"Bytowe\";\"other\"\n\"3101943\";\"Bëtowò\";\"other\"\n\"3101943\";\"Bütow\";\"other\"\n\"3101943\";\"Битов\";\"other\"\n\"3101946\";\"Bytoń\";\"main\"\n\"3101946\";\"Byton\";\"ascii\"\n\"3101947\";\"Bytom Odrzański\";\"main\"\n\"3101947\";\"Bytom Odrzanski\";\"ascii\"\n\"3101947\";\"Beuthen\";\"other\"\n\"3101947\";\"Beuthen an Oder\";\"other\"\n\"3101947\";\"Beuthen an der Oder\";\"other\"\n\"3101947\";\"Bialobrzezie\";\"other\"\n\"3101947\";\"Białobrzezie\";\"other\"\n\"3101950\";\"Bytom\";\"main\"\n\"3101950\";\"Beuthen\";\"other\"\n\"3101950\";\"Bitom\";\"other\"\n\"3101950\";\"Bitoma\";\"other\"\n\"3101950\";\"bi tuo mu\";\"other\"\n\"3101950\";\"Битом\";\"other\"\n\"3101950\";\"Бытом\";\"other\"\n\"3101950\";\"比托姆\";\"other\"\n\"3101968\";\"Bystrzyca Kłodzka\";\"main\"\n\"3101968\";\"Bystrzyca Klodzka\";\"ascii\"\n\"3101968\";\"Bystrzyca\";\"other\"\n\"3101968\";\"Habelschwerdt\";\"other\"\n\"3101976\";\"Bystrzyca\";\"main\"\n\"3101987\";\"Bystra\";\"main\"\n\"3101987\";\"Bystra Krakowska\";\"other\"\n\"3101987\";\"Bystra Slaska\";\"other\"\n\"3101987\";\"Bystra kolo Bialej\";\"other\"\n\"3101987\";\"Bystra koło Białej\";\"other\"\n\"3101987\";\"Bystra Śląska\";\"other\"\n\"3101992\";\"Bystra\";\"main\"\n\"3102014\";\"Bydgoszcz\";\"main\"\n\"3102014\";\"Bidgosca\";\"other\"\n\"3102014\";\"Bidgoshch\";\"other\"\n\"3102014\";\"Bidgošča\";\"other\"\n\"3102014\";\"Brombarg\";\"other\"\n\"3102014\";\"Bromberg\";\"other\"\n\"3102014\";\"Bydgoshh\";\"other\"\n\"3102014\";\"Bydhost\";\"other\"\n\"3102014\";\"Bydhošť\";\"other\"\n\"3102014\";\"bideugosyuchi\";\"other\"\n\"3102014\";\"bu~idogoshuchu\";\"other\"\n\"3102014\";\"bydgwsz'\";\"other\"\n\"3102014\";\"Бидгошч\";\"other\"\n\"3102014\";\"Быдгощ\";\"other\"\n\"3102014\";\"בידגושץ'\";\"other\"\n\"3102014\";\"ブィドゴシュチュ\";\"other\"\n\"3102014\";\"비드고슈치\";\"other\"\n\"3102019\";\"Byczyna\";\"main\"\n\"3102019\";\"Pitschen\";\"other\"\n\"3102076\";\"Bukowno\";\"main\"\n\"3102100\";\"Bukowiec\";\"main\"\n\"3102100\";\"Bukovec\";\"other\"\n\"3102100\";\"Буковец\";\"other\"\n\"3102138\";\"Buk\";\"main\"\n\"3102147\";\"Bujaków\";\"main\"\n\"3102147\";\"Bujakow\";\"ascii\"\n\"3102162\";\"Budzyń\";\"main\"\n\"3102162\";\"Budzyn\";\"ascii\"\n\"3102171\";\"Budzów\";\"main\"\n\"3102171\";\"Budzow\";\"ascii\"\n\"3102172\";\"Budzów\";\"main\"\n\"3102172\";\"Budzow\";\"ascii\"\n\"3102252\";\"Buczkowice\";\"main\"\n\"3102283\";\"Brzuze\";\"main\"\n\"3102316\";\"Brzozie\";\"main\"\n\"3102374\";\"Brzeźnica\";\"main\"\n\"3102374\";\"Brzeznica\";\"ascii\"\n\"3102390\";\"Brzeziny\";\"main\"\n\"3102390\";\"Bzheziny\";\"other\"\n\"3102390\";\"Бжезины\";\"other\"\n\"3102444\";\"Brzeszcze\";\"main\"\n\"3102444\";\"Bresha\";\"other\"\n\"3102447\";\"Brześć Kujawski\";\"main\"\n\"3102447\";\"Brzesc Kujawski\";\"ascii\"\n\"3102447\";\"Bzesc Kujavski\";\"other\"\n\"3102447\";\"Бжесћ Кујавски\";\"other\"\n\"3102456\";\"Brzeg Dolny\";\"main\"\n\"3102456\";\"Bzheg Dolni\";\"other\"\n\"3102456\";\"Dyhernfurth\";\"other\"\n\"3102456\";\"Бжег Долни\";\"other\"\n\"3102456\";\"ブジェク・ドルヌィ\";\"other\"\n\"3102459\";\"Brzeg\";\"main\"\n\"3102459\";\"Brieg\";\"other\"\n\"3102459\";\"Bzheg\";\"other\"\n\"3102459\";\"bujeku\";\"other\"\n\"3102459\";\"Бжег\";\"other\"\n\"3102459\";\"ブジェク\";\"other\"\n\"3102488\";\"Brusy\";\"main\"\n\"3102488\";\"Bruse\";\"other\"\n\"3102488\";\"Brusi\";\"other\"\n\"3102488\";\"Brusë\";\"other\"\n\"3102488\";\"Бруси\";\"other\"\n\"3102513\";\"Brudzeń Duży\";\"main\"\n\"3102513\";\"Brudzen Duzy\";\"ascii\"\n\"3102513\";\"Brudzen\";\"other\"\n\"3102513\";\"Brudzen Wielki\";\"other\"\n\"3102513\";\"Brudzeń\";\"other\"\n\"3102513\";\"Brudzeń Wielki\";\"other\"\n\"3102555\";\"Bronów\";\"main\"\n\"3102555\";\"Bronow\";\"ascii\"\n\"3102597\";\"Brojce\";\"main\"\n\"3102616\";\"Brody\";\"main\"\n\"3102627\";\"Brodnica\";\"main\"\n\"3102627\";\"BRODNICA\";\"other\"\n\"3102627\";\"БРОДНИЦА\";\"other\"\n\"3102627\";\"Бродњица\";\"other\"\n\"3102652\";\"Brenna\";\"main\"\n\"3102677\";\"Braniewo\";\"main\"\n\"3102677\";\"BRANEVO\";\"other\"\n\"3102677\";\"Branevo\";\"other\"\n\"3102677\";\"Braunsberg\";\"other\"\n\"3102677\";\"Brunsberga\";\"other\"\n\"3102677\";\"БРАНЕВО\";\"other\"\n\"3102677\";\"Брањево\";\"other\"\n\"3102679\";\"Branice\";\"main\"\n\"3102679\";\"Branitz\";\"other\"\n\"3102704\";\"Bozkow\";\"main\"\n\"3102728\";\"Borzytuchom\";\"main\"\n\"3102791\";\"Borucin\";\"main\"\n\"3102869\";\"Boronów\";\"main\"\n\"3102869\";\"Boronow\";\"ascii\"\n\"3102909\";\"Borek Wielkopolski\";\"main\"\n\"3102909\";\"Borek\";\"other\"\n\"3102956\";\"Boniewo\";\"main\"\n\"3102969\";\"Bolków\";\"main\"\n\"3102969\";\"Bolkow\";\"ascii\"\n\"3102969\";\"Bol'kuv\";\"other\"\n\"3102969\";\"Bolkenhain\";\"other\"\n\"3102969\";\"Болькув\";\"other\"\n\"3102975\";\"Boleszkowice\";\"main\"\n\"3102975\";\"Furstenfelde\";\"other\"\n\"3102975\";\"Fürstenfelde\";\"other\"\n\"3102987\";\"Bolesławiec\";\"main\"\n\"3102987\";\"Boleslawiec\";\"ascii\"\n\"3102987\";\"Boleslavec\";\"other\"\n\"3102987\";\"Boleslavjec\";\"other\"\n\"3102987\";\"Boleslawice\";\"other\"\n\"3102987\";\"Bunzlau\";\"other\"\n\"3102987\";\"buntsurau\";\"other\"\n\"3102987\";\"Болеславец\";\"other\"\n\"3102987\";\"Болеславјец\";\"other\"\n\"3102987\";\"ブンツラウ\";\"other\"\n\"3102988\";\"Bolesławiec\";\"main\"\n\"3102988\";\"Boleslawiec\";\"ascii\"\n\"3102992\";\"Bolesław\";\"main\"\n\"3102992\";\"Boleslaw\";\"ascii\"\n\"3103004\";\"Bojszowy\";\"main\"\n\"3103009\";\"Bojanowo\";\"main\"\n\"3103034\";\"Boguszów-Gorce\";\"main\"\n\"3103034\";\"Boguszow-Gorce\";\"ascii\"\n\"3103034\";\"Bogushov-Gorce\";\"other\"\n\"3103034\";\"Boguszow\";\"other\"\n\"3103034\";\"Boguszów\";\"other\"\n\"3103034\";\"Gottesberg\";\"other\"\n\"3103034\";\"bogushufu=gorutsu~e\";\"other\"\n\"3103034\";\"Богушов-Горце\";\"other\"\n\"3103034\";\"ボグシュフ＝ゴルツェ\";\"other\"\n\"3103096\";\"Bogatynia\";\"main\"\n\"3103096\";\"Bogatina\";\"other\"\n\"3103096\";\"Reichenau\";\"other\"\n\"3103096\";\"Богатиња\";\"other\"\n\"3103142\";\"Bobrowo\";\"main\"\n\"3103148\";\"Bobrowniki\";\"main\"\n\"3103148\";\"Bobrovniki\";\"other\"\n\"3103148\";\"Бобровники\";\"other\"\n\"3103154\";\"Bobrowniki\";\"main\"\n\"3103154\";\"Bobrowniki Slaskie\";\"other\"\n\"3103154\";\"Bobrowniki Śląskie\";\"other\"\n\"3103154\";\"Borowniki\";\"other\"\n\"3103173\";\"Bobowo\";\"main\"\n\"3103173\";\"Bobovo\";\"other\"\n\"3103173\";\"Бобово\";\"other\"\n\"3103179\";\"Bobolice\";\"main\"\n\"3103179\";\"Bablitz\";\"other\"\n\"3103261\";\"Błaszki\";\"main\"\n\"3103261\";\"Blaszki\";\"ascii\"\n\"3103274\";\"Blachownia\";\"main\"\n\"3103329\";\"Bieżuń\";\"main\"\n\"3103329\";\"Biezun\";\"ascii\"\n\"3103351\";\"Bierzwnik\";\"main\"\n\"3103364\";\"Bierutów\";\"main\"\n\"3103364\";\"Bierutow\";\"ascii\"\n\"3103364\";\"Beirut\";\"other\"\n\"3103364\";\"Bernstadt\";\"other\"\n\"3103364\";\"Bernstadt in Schlesien\";\"other\"\n\"3103365\";\"Bieruń\";\"main\"\n\"3103365\";\"Bierun\";\"ascii\"\n\"3103365\";\"Bierun Stary\";\"other\"\n\"3103365\";\"Bieruń Stary\";\"other\"\n\"3103388\";\"Bierawa\";\"main\"\n\"3103388\";\"Birawa\";\"other\"\n\"3103388\";\"Reigerfeld\";\"other\"\n\"3103388\";\"Reigersfeld\";\"other\"\n\"3103391\";\"Bieńkówka\";\"main\"\n\"3103391\";\"Bienkowka\";\"ascii\"\n\"3103402\";\"Bielsko-Biała\";\"main\"\n\"3103402\";\"Bielsko-Biala\";\"ascii\"\n\"3103402\";\"Bel'sko-Bjala\";\"other\"\n\"3103402\";\"Bel'sko-Bjalo\";\"other\"\n\"3103402\";\"Belsko-Bjala\";\"other\"\n\"3103402\";\"Beļsko-Bjala\";\"other\"\n\"3103402\";\"Biala\";\"other\"\n\"3103402\";\"Biala Krakowska\";\"other\"\n\"3103402\";\"Biała\";\"other\"\n\"3103402\";\"Biała Krakowska\";\"other\"\n\"3103402\";\"Bilsko\";\"other\"\n\"3103402\";\"Byala\";\"other\"\n\"3103402\";\"Bílsko\";\"other\"\n\"3103402\";\"byerusuko=byawa\";\"other\"\n\"3103402\";\"Бельско-Бяла\";\"other\"\n\"3103402\";\"Бельско-Бяло\";\"other\"\n\"3103402\";\"ビェルスコ＝ビャワ\";\"other\"\n\"3103411\";\"Bielsk\";\"main\"\n\"3103476\";\"Bielawa\";\"main\"\n\"3103476\";\"Langenbielau\";\"other\"\n\"3103531\";\"Biały Bór\";\"main\"\n\"3103531\";\"Bialy Bor\";\"ascii\"\n\"3103531\";\"Baldenburg\";\"other\"\n\"3103545\";\"Białośliwie\";\"main\"\n\"3103545\";\"Bialosliwie\";\"ascii\"\n\"3103556\";\"Białogard\";\"main\"\n\"3103556\";\"Bialogard\";\"ascii\"\n\"3103556\";\"Belgard\";\"other\"\n\"3103556\";\"Bialogrod\";\"other\"\n\"3103556\";\"Białogrod\";\"other\"\n\"3103556\";\"Bjalograd\";\"other\"\n\"3103556\";\"Бјалоград\";\"other\"\n\"3103588\";\"Białe Błota\";\"main\"\n\"3103588\";\"Biale Blota\";\"ascii\"\n\"3103644\";\"Biała\";\"main\"\n\"3103644\";\"Biala\";\"ascii\"\n\"3103644\";\"Biala Prudnicka\";\"other\"\n\"3103644\";\"Biała Prudnicka\";\"other\"\n\"3103644\";\"Bjala\";\"other\"\n\"3103644\";\"Zulz\";\"other\"\n\"3103644\";\"Zülz\";\"other\"\n\"3103644\";\"Бјала\";\"other\"\n\"3103644\";\"ビャワ・プルドニツカ\";\"other\"\n\"3103655\";\"Bestwinka\";\"main\"\n\"3103656\";\"Bestwina\";\"main\"\n\"3103690\";\"Bełsznica\";\"main\"\n\"3103690\";\"Belsznica\";\"ascii\"\n\"3103696\";\"Bełk\";\"main\"\n\"3103696\";\"Belk\";\"ascii\"\n\"3103709\";\"Bełchatów\";\"main\"\n\"3103709\";\"Belchatow\";\"ascii\"\n\"3103709\";\"Belhatova\";\"other\"\n\"3103709\";\"Belkhatov\";\"other\"\n\"3103709\";\"Belkhatuv\";\"other\"\n\"3103709\";\"Белхатов\";\"other\"\n\"3103709\";\"Белхатув\";\"other\"\n\"3103719\";\"Będzin\";\"main\"\n\"3103719\";\"Bedzin\";\"ascii\"\n\"3103719\";\"Bendzin\";\"other\"\n\"3103719\";\"Bendzina\";\"other\"\n\"3103719\";\"Бендзин\";\"other\"\n\"3103760\";\"Bażanowice\";\"main\"\n\"3103760\";\"Bazanowice\";\"ascii\"\n\"3103780\";\"Barwice\";\"main\"\n\"3103780\";\"Barwalde\";\"other\"\n\"3103780\";\"Berwald\";\"other\"\n\"3103780\";\"Bärwalde\";\"other\"\n\"3103785\";\"Baruchowo\";\"main\"\n\"3103824\";\"Barlinek\";\"main\"\n\"3103824\";\"Berlinchen\";\"other\"\n\"3103824\";\"Berlinek\";\"other\"\n\"3103847\";\"Bardo\";\"main\"\n\"3103847\";\"Bardo-Przylek\";\"other\"\n\"3103847\";\"Bardo-Przylęk\";\"other\"\n\"3103847\";\"Byrdo\";\"other\"\n\"3103847\";\"Wartha\";\"other\"\n\"3103847\";\"Wartha Frankenberg\";\"other\"\n\"3103856\";\"Barcin\";\"main\"\n\"3103856\";\"Barçın\";\"other\"\n\"3103856\";\"Барћин\";\"other\"\n\"3103884\";\"Banie\";\"main\"\n\"3103884\";\"Bahn\";\"other\"\n\"3103884\";\"Gmina Bane\";\"other\"\n\"3103884\";\"Гмина Бане\";\"other\"\n\"3103926\";\"Bąków\";\"main\"\n\"3103926\";\"Bakow\";\"ascii\"\n\"3103989\";\"Baborów\";\"main\"\n\"3103989\";\"Baborow\";\"ascii\"\n\"3103989\";\"Bauerwitz\";\"other\"\n\"3104002\";\"Babimost\";\"main\"\n\"3104002\";\"Bomst\";\"other\"\n\"3104002\";\"Бабимост\";\"other\"\n\"3104018\";\"Babice\";\"main\"\n\"3104019\";\"Babice\";\"main\"\n\"3104022\";\"Babiak\";\"main\"\n\"3104115\";\"Andrychów\";\"main\"\n\"3104115\";\"Andrychow\";\"ascii\"\n\"3104116\";\"Andrespol\";\"main\"\n\"3104127\";\"Alwernia\";\"main\"\n\"3104127\";\"Alvernija\";\"other\"\n\"3104127\";\"Alvernja\";\"other\"\n\"3104127\";\"Алвернија\";\"other\"\n\"3104127\";\"Алверня\";\"other\"\n\"3104132\";\"Aleksandrów Łódzki\";\"main\"\n\"3104132\";\"Aleksandrow Lodzki\";\"ascii\"\n\"3104132\";\"Aleksandrow\";\"other\"\n\"3104132\";\"Aleksandrów\";\"other\"\n\"3104132\";\"Александров Лођски\";\"other\"\n\"3104133\";\"Aleksandrów Kujawski\";\"main\"\n\"3104133\";\"Aleksandrow Kujawski\";\"ascii\"\n\"3104133\";\"Aleksandrov Kujavski\";\"other\"\n\"3104133\";\"Aleksandrow\";\"other\"\n\"3104133\";\"Aleksandruv Kujavskij\";\"other\"\n\"3104133\";\"Aleksandruv-Kujavski\";\"other\"\n\"3104133\";\"Aleksandrów\";\"other\"\n\"3104133\";\"Александров Кујавски\";\"other\"\n\"3104133\";\"Александрув Куявский\";\"other\"\n\"3104133\";\"Александрув-Куявски\";\"other\"\n\"3104146\";\"Aleksandrów\";\"main\"\n\"3104146\";\"Aleksandrow\";\"ascii\"\n\"6565267\";\"Krościenko nad Dunajcem\";\"main\"\n\"6565267\";\"Kroscienko nad Dunajcem\";\"ascii\"\n\"6640020\";\"Grzybowo\";\"main\"\n\"7302565\";\"Rzgów\";\"main\"\n\"7302565\";\"Rzgow\";\"ascii\"\n\"7303641\";\"Jelcz Laskowice\";\"main\"\n\"7522516\";\"Brody-Parcele\";\"main\"\n\"7534274\";\"Sztutowo\";\"main\"\n\"7534282\";\"Żarki-Letnisko\";\"main\"\n\"7534282\";\"Zarki-Letnisko\";\"ascii\"\n\"7534286\";\"Ostrówek\";\"main\"\n\"7534286\";\"Ostrowek\";\"ascii\"\n\"7534412\";\"Pogórze\";\"main\"\n\"7534412\";\"Pogorze\";\"ascii\"\n\"7534439\";\"Podebłocie\";\"main\"\n\"7534439\";\"Podeblocie\";\"ascii\"\n\"7534440\";\"Sulbiny Górne\";\"main\"\n\"7534440\";\"Sulbiny Gorne\";\"ascii\"\n\"7534548\";\"Biskupiec\";\"main\"\n\"7534559\";\"Ruda-Huta\";\"main\"\n\"7534560\";\"Iłowo -Osada\";\"main\"\n\"7534560\";\"Ilowo -Osada\";\"ascii\"\n\"7534583\";\"Koszyce Wielkie\";\"main\"\n\"7534656\";\"Radwanice\";\"main\"\n\"7534709\";\"Rutki-Kossaki\";\"main\"\n\"7534722\";\"Zalesie\";\"main\"\n\"7535367\";\"Bartniczka\";\"main\"\n\"7535492\";\"Lubicz Dolny\";\"main\"\n\"7535493\";\"Lubicz Górny\";\"main\"\n\"7535493\";\"Lubicz Gorny\";\"ascii\"\n\"7535494\";\"Tomaszkowice\";\"main\"\n\"7535495\";\"Chotcza\";\"main\"\n\"7535565\";\"Biała\";\"main\"\n\"7535565\";\"Biala\";\"ascii\"\n\"7535566\";\"Mała Wieś\";\"main\"\n\"7535566\";\"Mala Wies\";\"ascii\"\n\"7535568\";\"Baranowo\";\"main\"\n\"7535570\";\"Wiśniewo\";\"main\"\n\"7535570\";\"Wisniewo\";\"ascii\"\n\"7535582\";\"Izabelin\";\"main\"\n\"7535607\";\"Świercze\";\"main\"\n\"7535607\";\"Swiercze\";\"ascii\"\n\"7535672\";\"Łętownia\";\"main\"\n\"7535672\";\"Letownia\";\"ascii\"\n\"7535721\";\"Broniszewice\";\"main\"\n\"7535732\";\"Czarna Dąbrówka\";\"main\"\n\"7535732\";\"Czarna Dabrowka\";\"ascii\"\n\"7535938\";\"Skarbimierz Osiedle\";\"main\"\n\"7535972\";\"Wilczyce\";\"main\"\n\"7536163\";\"Krzczonów\";\"main\"\n\"7536163\";\"Krzczonow\";\"ascii\"\n\"3424934\";\"Saint-Pierre\";\"main\"\n\"3424934\";\"Saint Pierre\";\"other\"\n\"3424934\";\"St Pierre\";\"other\"\n\"3424934\";\"saengpieleu\";\"other\"\n\"3424934\";\"생피에르\";\"other\"\n\"3424941\";\"Miquelon\";\"main\"\n\"4030723\";\"Adamstown\";\"main\"\n\"4030723\";\"Adams Town\";\"other\"\n\"4030723\";\"Adamstaun\";\"other\"\n\"4030723\";\"Adamstauno\";\"other\"\n\"4030723\";\"Adamstaŭno\";\"other\"\n\"4030723\";\"adamusutaun\";\"other\"\n\"4030723\";\"Адамстаун\";\"other\"\n\"4030723\";\"אדמסטאון\";\"other\"\n\"4030723\";\"アダムスタウン\";\"other\"\n\"4562483\";\"Aceitunas\";\"main\"\n\"4562485\";\"Adjuntas\";\"main\"\n\"4562502\";\"Aguada\";\"main\"\n\"4562506\";\"Aguadilla\";\"main\"\n\"4562513\";\"Aguas Buenas\";\"main\"\n\"4562517\";\"Aguas Claras\";\"main\"\n\"4562524\";\"Aguilita\";\"main\"\n\"4562529\";\"Aibonito\";\"main\"\n\"4562600\";\"Añasco\";\"main\"\n\"4562600\";\"Anasco\";\"ascii\"\n\"4562615\";\"Animas\";\"main\"\n\"4562623\";\"Antón Ruiz\";\"main\"\n\"4562623\";\"Anton Ruiz\";\"ascii\"\n\"4562635\";\"Arecibo\";\"main\"\n\"4562681\";\"Arroyo\";\"main\"\n\"4562705\";\"Bairoa\";\"main\"\n\"4562709\";\"Bajadero\";\"main\"\n\"4562710\";\"Bajandas\";\"main\"\n\"4562765\";\"Barahona\";\"main\"\n\"4562768\";\"Barceloneta\";\"main\"\n\"4562778\";\"Barranquitas\";\"main\"\n\"4562812\";\"Bartolo\";\"main\"\n\"4562831\";\"Bayamón\";\"main\"\n\"4562831\";\"Bayamon\";\"ascii\"\n\"4562831\";\"Bajamon\";\"other\"\n\"4562831\";\"Баямон\";\"other\"\n\"4562832\";\"Bayamon\";\"main\"\n\"4562860\";\"Benitez\";\"main\"\n\"4562903\";\"Boquerón\";\"main\"\n\"4562903\";\"Boqueron\";\"ascii\"\n\"4562905\";\"Boqueron\";\"main\"\n\"4562955\";\"Brenas\";\"main\"\n\"4562972\";\"Buena Vista\";\"main\"\n\"4562983\";\"Bufalo\";\"main\"\n\"4562989\";\"Caban\";\"main\"\n\"4562996\";\"Cabo Rojo\";\"main\"\n\"4563003\";\"Cacao\";\"main\"\n\"4563008\";\"Caguas\";\"main\"\n\"4563053\";\"Campanilla\";\"main\"\n\"4563059\";\"Campo Rico\";\"main\"\n\"4563064\";\"Camuy\";\"main\"\n\"4563122\";\"Candelaria\";\"main\"\n\"4563123\";\"Candelaria Arenas\";\"main\"\n\"4563124\";\"Candelero Arriba\";\"main\"\n\"4563168\";\"Canovanas\";\"main\"\n\"4563220\";\"Capitanejo\";\"main\"\n\"4563243\";\"Carolina\";\"main\"\n\"4563249\";\"Carrizales\";\"main\"\n\"4563298\";\"Cataño\";\"main\"\n\"4563298\";\"Catano\";\"ascii\"\n\"4563308\";\"Cayey\";\"main\"\n\"4563376\";\"Cayuco\";\"main\"\n\"4563378\";\"Ceiba\";\"main\"\n\"4563379\";\"Ceiba\";\"main\"\n\"4563382\";\"Celada\";\"main\"\n\"4563411\";\"Central Aguirre\";\"main\"\n\"4563773\";\"Ciales\";\"main\"\n\"4563777\";\"Cidra\";\"main\"\n\"4563811\";\"Coamo\";\"main\"\n\"4563816\";\"Coco\";\"main\"\n\"4563919\";\"Comerío\";\"main\"\n\"4563919\";\"Comerio\";\"ascii\"\n\"4563939\";\"Comunas\";\"main\"\n\"4563988\";\"Coquí\";\"main\"\n\"4563988\";\"Coqui\";\"ascii\"\n\"4563990\";\"Corazón\";\"main\"\n\"4563990\";\"Corazon\";\"ascii\"\n\"4563994\";\"Corcovado\";\"main\"\n\"4564003\";\"Corozal\";\"main\"\n\"4564026\";\"Coto Laurel\";\"main\"\n\"4564028\";\"Coto Norte\";\"main\"\n\"4564070\";\"Culebra\";\"main\"\n\"4564085\";\"Daguao\";\"main\"\n\"4564133\";\"Dorado\";\"main\"\n\"4564149\";\"Duque\";\"main\"\n\"4564206\";\"El Mangó\";\"main\"\n\"4564206\";\"El Mango\";\"ascii\"\n\"4564214\";\"El Negro\";\"main\"\n\"4564216\";\"El Ojo\";\"main\"\n\"4564256\";\"Emajagua\";\"main\"\n\"4564861\";\"Esperanza\";\"main\"\n\"4564862\";\"Espino\";\"main\"\n\"4564901\";\"Estancias de Florida\";\"main\"\n\"4564946\";\"Fajardo\";\"main\"\n\"4564946\";\"Fakhardo\";\"other\"\n\"4564946\";\"Фахардо\";\"other\"\n\"4564991\";\"Florida\";\"main\"\n\"4565018\";\"Franquez\";\"main\"\n\"4565031\";\"Fuig\";\"main\"\n\"4565032\";\"G. L. Garcia\";\"main\"\n\"4565033\";\"Galateo\";\"main\"\n\"4565049\";\"Garrochales\";\"main\"\n\"4565090\";\"Guánica\";\"main\"\n\"4565090\";\"Guanica\";\"ascii\"\n\"4565101\";\"Guayabal\";\"main\"\n\"4565105\";\"Guayama\";\"main\"\n\"4565111\";\"Guayanilla\";\"main\"\n\"4565119\";\"Guaynabo\";\"main\"\n\"4565125\";\"Gurabo\";\"main\"\n\"4565130\";\"H. Rivera Colon\";\"main\"\n\"4565346\";\"Hatillo\";\"main\"\n\"4565353\";\"Hato Candal\";\"main\"\n\"4565380\";\"Hormigueros\";\"main\"\n\"4565540\";\"Imbery\";\"main\"\n\"4565544\";\"Indios\";\"main\"\n\"4565551\";\"Ingenio\";\"main\"\n\"4565564\";\"Humacao\";\"main\"\n\"4565577\";\"Isabela\";\"main\"\n\"4565621\";\"Jagual\";\"main\"\n\"4565676\";\"Jauca\";\"main\"\n\"4565679\";\"Jayuya\";\"main\"\n\"4565689\";\"Jobos\";\"main\"\n\"4565712\";\"Juana Díaz\";\"main\"\n\"4565712\";\"Juana Diaz\";\"ascii\"\n\"4565717\";\"Juncal\";\"main\"\n\"4565718\";\"Juncos\";\"main\"\n\"4565731\";\"La Alianza\";\"main\"\n\"4565755\";\"La Dolores\";\"main\"\n\"4565760\";\"La Fermina\";\"main\"\n\"4565780\";\"La Luisa\";\"main\"\n\"4565796\";\"La Parguera\";\"main\"\n\"4565804\";\"La Playa\";\"main\"\n\"4565807\";\"La Plena\";\"main\"\n\"4565898\";\"Lajas\";\"main\"\n\"4565904\";\"Lamboglia\";\"main\"\n\"4565908\";\"Lares\";\"main\"\n\"4565956\";\"Las Marias\";\"main\"\n\"4565958\";\"Las Marías\";\"main\"\n\"4565958\";\"Las Marias\";\"ascii\"\n\"4565972\";\"Las Ochenta\";\"main\"\n\"4565973\";\"Las Ollas\";\"main\"\n\"4565980\";\"Las Piedras\";\"main\"\n\"4566002\";\"Levittown\";\"main\"\n\"4566004\";\"Liborio Negron Torres\";\"main\"\n\"4566021\";\"Lluveras\";\"main\"\n\"4566022\";\"Loíza\";\"main\"\n\"4566022\";\"Loiza\";\"ascii\"\n\"4566068\";\"Los Llanos\";\"main\"\n\"4566096\";\"Luis Llorens Torres\";\"main\"\n\"4566098\";\"Luis M. Cintron\";\"main\"\n\"4566103\";\"Luquillo\";\"main\"\n\"4566110\";\"Luyando\";\"main\"\n\"4566119\";\"Magas Arriba\";\"main\"\n\"4566137\";\"Manatí\";\"main\"\n\"4566137\";\"Manati\";\"ascii\"\n\"4566171\";\"Maria Antonia\";\"main\"\n\"4566177\";\"Mariano Colón\";\"main\"\n\"4566177\";\"Mariano Colon\";\"ascii\"\n\"4566178\";\"Maricao\";\"main\"\n\"4566198\";\"Martorell\";\"main\"\n\"4566208\";\"Maunabo\";\"main\"\n\"4566267\";\"Miranda\";\"main\"\n\"4566270\";\"Moca\";\"main\"\n\"4566285\";\"Monserrate\";\"main\"\n\"4566305\";\"Monte Grande\";\"main\"\n\"4566330\";\"Mora\";\"main\"\n\"4566333\";\"Morovis\";\"main\"\n\"4566346\";\"Mucarabones\";\"main\"\n\"4566385\";\"Mayagüez\";\"main\"\n\"4566385\";\"Mayagueez\";\"ascii\"\n\"4566396\";\"Naguabo\";\"main\"\n\"4566402\";\"Naranjito\";\"main\"\n\"4566447\";\"Olimpo\";\"main\"\n\"4566470\";\"Pájaros\";\"main\"\n\"4566470\";\"Pajaros\";\"ascii\"\n\"4566475\";\"Palmarejo\";\"main\"\n\"4566477\";\"Palmarejo\";\"main\"\n\"4566481\";\"Palmas\";\"main\"\n\"4566485\";\"Palmer\";\"main\"\n\"4566492\";\"Palo Seco\";\"main\"\n\"4566497\";\"Palomas\";\"main\"\n\"4566498\";\"Palomas\";\"main\"\n\"4566509\";\"Parcelas La Milagrosa\";\"main\"\n\"4566512\";\"Parcelas Nuevas\";\"main\"\n\"4566513\";\"Parcelas Peñuelas\";\"main\"\n\"4566513\";\"Parcelas Penuelas\";\"ascii\"\n\"4566650\";\"Pastos\";\"main\"\n\"4566652\";\"Patillas\";\"main\"\n\"4566674\";\"Peña Pobre\";\"main\"\n\"4566674\";\"Pena Pobre\";\"ascii\"\n\"4566687\";\"Peñuelas\";\"main\"\n\"4566687\";\"Penuelas\";\"ascii\"\n\"4566723\";\"Piedra Gorda\";\"main\"\n\"4566767\";\"Playa Fortuna\";\"main\"\n\"4566813\";\"Playita\";\"main\"\n\"4566814\";\"Playita Cortada\";\"main\"\n\"4566877\";\"Pole Ojea\";\"main\"\n\"4566880\";\"Ponce\";\"main\"\n\"4566880\";\"Ponse\";\"other\"\n\"4566880\";\"Понсе\";\"other\"\n\"4566900\";\"Potala Pastillo\";\"main\"\n\"4566913\";\"Pueblito del Rio\";\"main\"\n\"4566955\";\"Puerto Real\";\"main\"\n\"4566992\";\"Punta Santiago\";\"main\"\n\"4566997\";\"Quebrada\";\"main\"\n\"4567552\";\"Quebradillas\";\"main\"\n\"4567573\";\"Rafael Capo\";\"main\"\n\"4567574\";\"Rafael Gonzalez\";\"main\"\n\"4567575\";\"Rafael Hernandez\";\"main\"\n\"4567586\";\"Ramos\";\"main\"\n\"4567723\";\"Rincón\";\"main\"\n\"4567723\";\"Rincon\";\"ascii\"\n\"4567745\";\"Río Blanco\";\"main\"\n\"4567745\";\"Rio Blanco\";\"ascii\"\n\"4567769\";\"Río Cañas Abajo\";\"main\"\n\"4567769\";\"Rio Canas Abajo\";\"ascii\"\n\"4567817\";\"Río Grande\";\"main\"\n\"4567817\";\"Rio Grande\";\"ascii\"\n\"4567865\";\"Río Lajas\";\"main\"\n\"4567865\";\"Rio Lajas\";\"ascii\"\n\"4567995\";\"Rosa Sanchez\";\"main\"\n\"4568009\";\"Sabana\";\"main\"\n\"4568012\";\"Sabana Eneas\";\"main\"\n\"4568014\";\"Sabana Grande\";\"main\"\n\"4568017\";\"Sabana Hoyos\";\"main\"\n\"4568023\";\"Sabana Seca\";\"main\"\n\"4568040\";\"Salinas\";\"main\"\n\"4568069\";\"San Antonio\";\"main\"\n\"4568074\";\"San Antonio\";\"main\"\n\"4568077\";\"San Antonio\";\"main\"\n\"4568104\";\"San Germán\";\"main\"\n\"4568104\";\"San German\";\"ascii\"\n\"4568109\";\"San Isidro\";\"main\"\n\"4568122\";\"San José\";\"main\"\n\"4568122\";\"San Jose\";\"ascii\"\n\"4568127\";\"San Juan\";\"main\"\n\"4568127\";\"San Chuanas\";\"other\"\n\"4568127\";\"San Khuan\";\"other\"\n\"4568127\";\"San-Khuan\";\"other\"\n\"4568127\";\"sanfuan\";\"other\"\n\"4568127\";\"sanhuan\";\"other\"\n\"4568127\";\"Сан Хуан\";\"other\"\n\"4568127\";\"Сан-Хуан\";\"other\"\n\"4568127\";\"サンフアン\";\"other\"\n\"4568127\";\"산후안\";\"other\"\n\"4568149\";\"San Lorenzo\";\"main\"\n\"4568175\";\"San Sebastián\";\"main\"\n\"4568175\";\"San Sebastian\";\"ascii\"\n\"4568194\";\"Santa Barbara\";\"main\"\n\"4568200\";\"Santa Clara\";\"main\"\n\"4568212\";\"Santa Isabel\";\"main\"\n\"4568253\";\"Santo Domingo\";\"main\"\n\"4568347\";\"Stella\";\"main\"\n\"4568350\";\"Suárez\";\"main\"\n\"4568350\";\"Suarez\";\"ascii\"\n\"4568353\";\"Sumidero\";\"main\"\n\"4568367\";\"Tallaboa\";\"main\"\n\"4568368\";\"Tallaboa Alta\";\"main\"\n\"4568399\";\"Tierras Nuevas Poniente\";\"main\"\n\"4568403\";\"Toa Alta\";\"main\"\n\"4568407\";\"Toa Baja\";\"main\"\n\"4568451\";\"Trujillo Alto\";\"main\"\n\"4568490\";\"Utuado\";\"main\"\n\"4568527\";\"Vázquez\";\"main\"\n\"4568527\";\"Vazquez\";\"ascii\"\n\"4568528\";\"Vega Alta\";\"main\"\n\"4568533\";\"Vega Baja\";\"main\"\n\"4568570\";\"Vieques\";\"main\"\n\"4568571\";\"Vieques\";\"main\"\n\"4568683\";\"Villalba\";\"main\"\n\"4568908\";\"Yabucoa\";\"main\"\n\"4568917\";\"Yauco\";\"main\"\n\"4568957\";\"Yaurel\";\"main\"\n\"281102\";\"Rafaḩ\";\"main\"\n\"281102\";\"Rafah\";\"ascii\"\n\"281102\";\"Er Rafa\";\"other\"\n\"281102\";\"Rafa\";\"other\"\n\"281102\";\"Rafaa\";\"other\"\n\"281102\";\"Rafakh\";\"other\"\n\"281102\";\"Rafia\";\"other\"\n\"281102\";\"Rafiah\";\"other\"\n\"281102\";\"Rafīah\";\"other\"\n\"281102\";\"Raphia\";\"other\"\n\"281102\";\"Rifah\";\"other\"\n\"281102\";\"Ràfia\";\"other\"\n\"281102\";\"la fa he\";\"other\"\n\"281102\";\"rfh\";\"other\"\n\"281102\";\"rpyh\";\"other\"\n\"281102\";\"Рафа\";\"other\"\n\"281102\";\"Рафах\";\"other\"\n\"281102\";\"רפיח\";\"other\"\n\"281102\";\"رفح\";\"other\"\n\"281102\";\"رَفَحْ\";\"other\"\n\"281102\";\"拉法赫\";\"other\"\n\"281124\";\"Khān Yūnis\";\"main\"\n\"281124\";\"Khan Yunis\";\"ascii\"\n\"281124\";\"Hanut Yona\";\"other\"\n\"281124\";\"Hanūt Yōnā\";\"other\"\n\"281124\";\"Jan Yunis\";\"other\"\n\"281124\";\"Jan Yunís\";\"other\"\n\"281124\";\"Khan Younes\";\"other\"\n\"281124\";\"Khan Younis\";\"other\"\n\"281124\";\"Khan Yumus\";\"other\"\n\"281124\";\"Khan Yunus\";\"other\"\n\"281124\";\"Khan-Junis\";\"other\"\n\"281124\";\"Khān Yūnus\";\"other\"\n\"281124\";\"Yunas\";\"other\"\n\"281124\";\"Yunus\";\"other\"\n\"281124\";\"Хан-Юнис\";\"other\"\n\"281124\";\"خان يونس\";\"other\"\n\"281129\";\"Jabālyā\";\"main\"\n\"281129\";\"Jabalya\";\"ascii\"\n\"281129\";\"Dzhabalija\";\"other\"\n\"281129\";\"Jabalia\";\"other\"\n\"281129\";\"Jabaliya\";\"other\"\n\"281129\";\"Jabāliyā\";\"other\"\n\"281129\";\"Джабалия\";\"other\"\n\"281129\";\"جباليا\";\"other\"\n\"281129\";\"جَباليا\";\"other\"\n\"281133\";\"Gaza\";\"main\"\n\"281133\";\"Azzah\";\"other\"\n\"281133\";\"Gaza City\";\"other\"\n\"281133\";\"Ghazah\";\"other\"\n\"281133\";\"Ghazza\";\"other\"\n\"281133\";\"Ghazzah\";\"other\"\n\"281133\";\"Ghazze\";\"other\"\n\"281133\";\"Ghazzi\";\"other\"\n\"281133\";\"Ghuzze\";\"other\"\n\"281133\";\"`Azza\";\"other\"\n\"281133\";\"`Azzā\";\"other\"\n\"281133\";\"gaza\";\"other\"\n\"281133\";\"ghzt\";\"other\"\n\"281133\";\"jia sa\";\"other\"\n\"281133\";\"jia sha\";\"other\"\n\"281133\";\"Газа\";\"other\"\n\"281133\";\"עזה\";\"other\"\n\"281133\";\"غزة\";\"other\"\n\"281133\";\"ガザ\";\"other\"\n\"281133\";\"加沙\";\"other\"\n\"281133\";\"加薩\";\"other\"\n\"281141\";\"Dayr al Balaḩ\";\"main\"\n\"281141\";\"Dayr al Balah\";\"ascii\"\n\"281141\";\"Belar\";\"other\"\n\"281141\";\"Deir el-Balah\";\"other\"\n\"281141\";\"Der el Bela\";\"other\"\n\"281141\";\"دير البلح\";\"other\"\n\"281145\";\"Bayt Lā’īyā\";\"main\"\n\"281145\";\"Bayt La'iya\";\"ascii\"\n\"281145\";\"Bayt Lahiya\";\"other\"\n\"281145\";\"Bayt Lahiyah\";\"other\"\n\"281145\";\"Bayt Lāhiya\";\"other\"\n\"281145\";\"Bayt Lāhiyah\";\"other\"\n\"281145\";\"Beit Lahia\";\"other\"\n\"281145\";\"Beit Lahiya\";\"other\"\n\"281145\";\"Beit Lahya\";\"other\"\n\"281145\";\"Beit Lāhiya\";\"other\"\n\"281145\";\"بيت لائيا\";\"other\"\n\"281161\";\"Al Burayj\";\"main\"\n\"281161\";\"Al-Bureij\";\"other\"\n\"281161\";\"El Bureij\";\"other\"\n\"281207\";\"Zubūbā\";\"main\"\n\"281207\";\"Zububa\";\"ascii\"\n\"281207\";\"Zububah\";\"other\"\n\"281207\";\"Zubūbah\";\"other\"\n\"281226\";\"Zaytā\";\"main\"\n\"281226\";\"Zayta\";\"ascii\"\n\"281226\";\"Zeita\";\"other\"\n\"281226\";\"Zeitā\";\"other\"\n\"281292\";\"Yaţţah\";\"main\"\n\"281292\";\"Yattah\";\"ascii\"\n\"281292\";\"Jatta\";\"other\"\n\"281292\";\"Yatta\";\"other\"\n\"281292\";\"Yaṭṭa\";\"other\"\n\"281292\";\"Yuta\";\"other\"\n\"281293\";\"Yatmā\";\"main\"\n\"281293\";\"Yatma\";\"ascii\"\n\"281297\";\"Yāşīd\";\"main\"\n\"281297\";\"Yasid\";\"ascii\"\n\"281577\";\"Ţūlkarm\";\"main\"\n\"281577\";\"Tulkarm\";\"ascii\"\n\"281577\";\"Keram\";\"other\"\n\"281577\";\"Toelkarem\";\"other\"\n\"281577\";\"Tul Kerem\";\"other\"\n\"281577\";\"Tul'karm\";\"other\"\n\"281577\";\"Tulkarem\";\"other\"\n\"281577\";\"Tūl Kerem\";\"other\"\n\"281577\";\"twl krm\";\"other\"\n\"281577\";\"twlkrm\";\"other\"\n\"281577\";\"Тулькарм\";\"other\"\n\"281577\";\"טול כרם\";\"other\"\n\"281577\";\"طولكرم\";\"other\"\n\"281581\";\"Ţūbās\";\"main\"\n\"281581\";\"Tubas\";\"ascii\"\n\"281623\";\"Tayāsīr\";\"main\"\n\"281623\";\"Tayasir\";\"ascii\"\n\"281637\";\"Tarqūmiyah\";\"main\"\n\"281637\";\"Tarqumiyah\";\"ascii\"\n\"281637\";\"Tarqumiya\";\"other\"\n\"281637\";\"Tarqumye\";\"other\"\n\"281637\";\"Tarqūmiya\";\"other\"\n\"281637\";\"Tarqūmye\";\"other\"\n\"281637\";\"Terkumie\";\"other\"\n\"281637\";\"Turqumiya\";\"other\"\n\"281657\";\"Ţammūn\";\"main\"\n\"281657\";\"Tammun\";\"ascii\"\n\"281662\";\"Ţallūzā\";\"main\"\n\"281662\";\"Talluza\";\"ascii\"\n\"281662\";\"Talluzah\";\"other\"\n\"281662\";\"Ţallūzah\";\"other\"\n\"281674\";\"Tall\";\"main\"\n\"281674\";\"Tell\";\"other\"\n\"281674\";\"Til\";\"other\"\n\"281674\";\"Tīl\";\"other\"\n\"281675\";\"Talfīt\";\"main\"\n\"281675\";\"Talfit\";\"ascii\"\n\"281675\";\"Tilfit\";\"other\"\n\"281675\";\"Tilfīt\";\"other\"\n\"281690\";\"Taffūḩ\";\"main\"\n\"281690\";\"Taffuh\";\"ascii\"\n\"281715\";\"Şūrīf\";\"main\"\n\"281715\";\"Surif\";\"ascii\"\n\"281764\";\"Sīrīs\";\"main\"\n\"281764\";\"Siris\";\"ascii\"\n\"281778\";\"Sinjil\";\"main\"\n\"281778\";\"Saint Gilles\";\"other\"\n\"281778\";\"Sindjil\";\"other\"\n\"281789\";\"Silwād\";\"main\"\n\"281789\";\"Silwad\";\"ascii\"\n\"281790\";\"Sīlat az̧ Z̧ahr\";\"main\"\n\"281790\";\"Silat az Zahr\";\"ascii\"\n\"281790\";\"Saylat ad Dahr\";\"other\"\n\"281790\";\"Saylat aḑ Ḑahr\";\"other\"\n\"281790\";\"Silat adh Dhahr\";\"other\"\n\"281790\";\"Silat edh Dhahr\";\"other\"\n\"281790\";\"Silet edh Dhahr\";\"other\"\n\"281790\";\"Sīlat adh Dhahr\";\"other\"\n\"281790\";\"Sīlet edh Dhahr\";\"other\"\n\"281791\";\"Sīlat al Ḩārithīyah\";\"main\"\n\"281791\";\"Silat al Harithiyah\";\"ascii\"\n\"281791\";\"Silat al Harithiya\";\"other\"\n\"281791\";\"Silat el Harithiya\";\"other\"\n\"281791\";\"Sīlat el Ḥārithīya\";\"other\"\n\"281808\";\"Shuqbā\";\"main\"\n\"281808\";\"Shuqba\";\"ascii\"\n\"281808\";\"Shuqbah\";\"other\"\n\"281965\";\"Şaydā\";\"main\"\n\"281965\";\"Sayda\";\"ascii\"\n\"281965\";\"Khirbat Saydah\";\"other\"\n\"281965\";\"Khirbat Şaydāh\";\"other\"\n\"281965\";\"Seida\";\"other\"\n\"281979\";\"Şarţah\";\"main\"\n\"281979\";\"Sartah\";\"ascii\"\n\"281979\";\"Sarta\";\"other\"\n\"281982\";\"Şarrah\";\"main\"\n\"281982\";\"Sarrah\";\"ascii\"\n\"281982\";\"Sarra\";\"other\"\n\"281982\";\"Ṣarra\";\"other\"\n\"281997\";\"Şānūr\";\"main\"\n\"281997\";\"Sanur\";\"ascii\"\n\"281998\";\"Sannīrīyah\";\"main\"\n\"281998\";\"Sanniriyah\";\"ascii\"\n\"281998\";\"Samiriyyah\";\"other\"\n\"281998\";\"Sanirah\";\"other\"\n\"281998\";\"Sanireh\";\"other\"\n\"281998\";\"Sanniriya\";\"other\"\n\"281998\";\"Sannirya\";\"other\"\n\"281998\";\"Sannīriya\";\"other\"\n\"281998\";\"Sannīrya\";\"other\"\n\"281998\";\"Sanīrah\";\"other\"\n\"281998\";\"Sanīreh\";\"other\"\n\"282034\";\"Sālim\";\"main\"\n\"282034\";\"Salim\";\"ascii\"\n\"282034\";\"Salem\";\"other\"\n\"282034\";\"Sālem\";\"other\"\n\"282039\";\"Salfīt\";\"main\"\n\"282039\";\"Salfit\";\"ascii\"\n\"282069\";\"Şaffā\";\"main\"\n\"282069\";\"Saffa\";\"ascii\"\n\"282108\";\"Sabasţīyah\";\"main\"\n\"282108\";\"Sabastiyah\";\"ascii\"\n\"282108\";\"Sabastiya\";\"other\"\n\"282108\";\"Sabatiyah\";\"other\"\n\"282108\";\"Sabaţīyah\";\"other\"\n\"282108\";\"Sebaste\";\"other\"\n\"282108\";\"Sebastia\";\"other\"\n\"282108\";\"Sebastiya\";\"other\"\n\"282108\";\"Sebastye\";\"other\"\n\"282108\";\"Sebustie\";\"other\"\n\"282108\";\"Sebustiye\";\"other\"\n\"282108\";\"Sevaste\";\"other\"\n\"282108\";\"Sevastē\";\"other\"\n\"282108\";\"Shomron\";\"other\"\n\"282119\";\"Rummānah\";\"main\"\n\"282119\";\"Rummanah\";\"ascii\"\n\"282119\";\"Rummana\";\"other\"\n\"282119\";\"Rummāna\";\"other\"\n\"282140\";\"Rūjayb\";\"main\"\n\"282140\";\"Rujayb\";\"ascii\"\n\"282140\";\"Rujeib\";\"other\"\n\"282230\";\"Rantīs\";\"main\"\n\"282230\";\"Rantis\";\"ascii\"\n\"282234\";\"Rammūn\";\"main\"\n\"282234\";\"Rammun\";\"ascii\"\n\"282234\";\"Rimmon\";\"other\"\n\"282237\";\"Rāmīn\";\"main\"\n\"282237\";\"Ramin\";\"ascii\"\n\"282239\";\"Ramallah\";\"main\"\n\"282239\";\"Rahm Alla\";\"other\"\n\"282239\";\"Ram Allah\";\"other\"\n\"282239\";\"Ramala\";\"other\"\n\"282239\";\"Ramalla\";\"other\"\n\"282239\";\"Ramallakh\";\"other\"\n\"282239\";\"Rām Allāh\";\"other\"\n\"282239\";\"la mu an la\";\"other\"\n\"282239\";\"ram allh\";\"other\"\n\"282239\";\"Рамала\";\"other\"\n\"282239\";\"Рамалла\";\"other\"\n\"282239\";\"Рамаллах\";\"other\"\n\"282239\";\"רמאללה\";\"other\"\n\"282239\";\"رام الله\";\"other\"\n\"282239\";\"رام‌الله\";\"other\"\n\"282239\";\"拉姆安拉\";\"other\"\n\"282264\";\"Rāfāt\";\"main\"\n\"282264\";\"Rafat\";\"ascii\"\n\"282265\";\"Rāfāt\";\"main\"\n\"282265\";\"Rafat\";\"ascii\"\n\"282278\";\"Rābā\";\"main\"\n\"282278\";\"Raba\";\"ascii\"\n\"282283\";\"Quşrah\";\"main\"\n\"282283\";\"Qusrah\";\"ascii\"\n\"282283\";\"Kusrah\";\"other\"\n\"282283\";\"Qusra\";\"other\"\n\"282283\";\"Quṣra\";\"other\"\n\"282348\";\"Qibyā\";\"main\"\n\"282348\";\"Qibya\";\"ascii\"\n\"282348\";\"Kibbia\";\"other\"\n\"282348\";\"Qibyah\";\"other\"\n\"282348\";\"Qibye\";\"other\"\n\"282376\";\"Qaţannah\";\"main\"\n\"282376\";\"Qatannah\";\"ascii\"\n\"282376\";\"Katanneh\";\"other\"\n\"282376\";\"Qatana\";\"other\"\n\"282376\";\"Qatanna\";\"other\"\n\"282376\";\"Qatanne\";\"other\"\n\"282423\";\"Qaryūt\";\"main\"\n\"282423\";\"Qaryut\";\"ascii\"\n\"282423\";\"Kuriyut\";\"other\"\n\"282438\";\"Qarāwat Banī Zayd\";\"main\"\n\"282438\";\"Qarawat Bani Zayd\";\"ascii\"\n\"282438\";\"Qarawat Bani Zeid\";\"other\"\n\"282438\";\"Quarawat Bani Zeid\";\"other\"\n\"282438\";\"Quarāwat Banī Zeid\";\"other\"\n\"282457\";\"Qalqīlyah\";\"main\"\n\"282457\";\"Qalqilyah\";\"ascii\"\n\"282457\";\"Kal Kiliya\";\"other\"\n\"282457\";\"Kal'kilija\";\"other\"\n\"282457\";\"Kalkilieh\";\"other\"\n\"282457\";\"Kfar Saba\";\"other\"\n\"282457\";\"Qalkilya\";\"other\"\n\"282457\";\"Qalqiliya\";\"other\"\n\"282457\";\"Qalqilye\";\"other\"\n\"282457\";\"Qalqīliya\";\"other\"\n\"282457\";\"Qalqīlye\";\"other\"\n\"282457\";\"Калькилия\";\"other\"\n\"282463\";\"Qaffīn\";\"main\"\n\"282463\";\"Qaffin\";\"ascii\"\n\"282463\";\"Kuffin\";\"other\"\n\"282463\";\"Quffin\";\"other\"\n\"282463\";\"Quffīn\";\"other\"\n\"282476\";\"Qabāţīyah\";\"main\"\n\"282476\";\"Qabatiyah\";\"ascii\"\n\"282476\";\"Kubatie\";\"other\"\n\"282476\";\"Kubatiya\";\"other\"\n\"282476\";\"Qabatiya\";\"other\"\n\"282476\";\"Qabatye\";\"other\"\n\"282476\";\"Qabātiya\";\"other\"\n\"282476\";\"Qabātye\";\"other\"\n\"282477\";\"Qabalān\";\"main\"\n\"282477\";\"Qabalan\";\"ascii\"\n\"282477\";\"Kubalan\";\"other\"\n\"282510\";\"Nūbā\";\"main\"\n\"282510\";\"Nuba\";\"ascii\"\n\"282593\";\"Naḩḩālīn\";\"main\"\n\"282593\";\"Nahhalin\";\"ascii\"\n\"282615\";\"Nablus\";\"main\"\n\"282615\";\"Flavia Neapolis\";\"other\"\n\"282615\";\"Nabulus\";\"other\"\n\"282615\";\"Naplouse\";\"other\"\n\"282615\";\"Naplusa\";\"other\"\n\"282615\";\"Napouse\";\"other\"\n\"282615\";\"Neapolis\";\"other\"\n\"282615\";\"Nāblus\";\"other\"\n\"282615\";\"Schechem\";\"other\"\n\"282615\";\"Shechem\";\"other\"\n\"282615\";\"Shekhem\";\"other\"\n\"282615\";\"Sichem\";\"other\"\n\"282615\";\"Siquem\";\"other\"\n\"282615\";\"Sychem\";\"other\"\n\"282615\";\"Sykhem\";\"other\"\n\"282615\";\"nabls\";\"other\"\n\"282615\";\"skm\";\"other\"\n\"282615\";\"Наблус\";\"other\"\n\"282615\";\"שכם\";\"other\"\n\"282615\";\"نابلس\";\"other\"\n\"282740\";\"Misilyah\";\"main\"\n\"282740\";\"Misilya\";\"other\"\n\"282740\";\"Misliya\";\"other\"\n\"282740\";\"Misliyah\";\"other\"\n\"282740\";\"Mislīyah\";\"other\"\n\"282793\";\"Maythalūn\";\"main\"\n\"282793\";\"Maythalun\";\"ascii\"\n\"282793\";\"Maysalun\";\"other\"\n\"282793\";\"Maysalūn\";\"other\"\n\"282793\";\"Meithalun\";\"other\"\n\"282793\";\"Meithalūn\";\"other\"\n\"282872\";\"Mardah\";\"main\"\n\"282872\";\"Marda\";\"other\"\n\"282941\";\"Majdal Banī Fāḑil\";\"main\"\n\"282941\";\"Majdal Bani Fadil\";\"ascii\"\n\"282941\";\"Majdal Bani Fadl\";\"other\"\n\"283040\";\"Kufayrāt\";\"main\"\n\"283040\";\"Kufayrat\";\"ascii\"\n\"283040\";\"Kufeirat\";\"other\"\n\"283040\";\"Kufeirit\";\"other\"\n\"283040\";\"Kufeirāt\";\"other\"\n\"283040\";\"kfyrt\";\"other\"\n\"283040\";\"كفيرت\";\"other\"\n\"283055\";\"Kifl Ḩārith\";\"main\"\n\"283055\";\"Kifl Harith\";\"ascii\"\n\"283055\";\"Kafr Haris\";\"other\"\n\"283055\";\"Kafr Ḩaris\";\"other\"\n\"283055\";\"Kiel Harith\";\"other\"\n\"283055\";\"Kiel Ḥārith\";\"other\"\n\"283176\";\"Khirbat al Burj\";\"main\"\n\"283176\";\"Burj el Baiyara\";\"other\"\n\"283176\";\"Burj el Baiyāra\";\"other\"\n\"283176\";\"Khirbat el Burj\";\"other\"\n\"283189\";\"Khirbat Abū Falāḩ\";\"main\"\n\"283189\";\"Khirbat Abu Falah\";\"ascii\"\n\"283189\";\"Al Jardah\";\"other\"\n\"283189\";\"Khirbet Abu Falah\";\"other\"\n\"283189\";\"Khirbet Abū Falāh\";\"other\"\n\"283246\";\"Khārās\";\"main\"\n\"283246\";\"Kharas\";\"ascii\"\n\"283316\";\"Kawbar\";\"main\"\n\"283316\";\"Kaubar\";\"other\"\n\"283351\";\"Kafr Thulth\";\"main\"\n\"283365\";\"Kafr Qallīl\";\"main\"\n\"283365\";\"Kafr Qallil\";\"ascii\"\n\"283365\";\"Kafr Qalil\";\"other\"\n\"283365\";\"Kafr Qalīl\";\"other\"\n\"283366\";\"Kafr Qaddūm\";\"main\"\n\"283366\";\"Kafr Qaddum\";\"ascii\"\n\"283366\";\"Allen More\";\"other\"\n\"283366\";\"Alon Moreh\";\"other\"\n\"283366\";\"Alon-Morah\";\"other\"\n\"283366\";\"Elon Moreh\";\"other\"\n\"283366\";\"Kaddum\";\"other\"\n\"283366\";\"Kadoum\";\"other\"\n\"283366\";\"Kafr Kaddum\";\"other\"\n\"283366\";\"Kafr Kaddūm\";\"other\"\n\"283366\";\"Kufr Qaddum\";\"other\"\n\"283366\";\"Kufr Qaddūm\";\"other\"\n\"283366\";\"Qaddum\";\"other\"\n\"283366\";\"Qadum\";\"other\"\n\"283366\";\"Qidma\";\"other\"\n\"283366\";\"Qidmā\";\"other\"\n\"283370\";\"Kafr Mālik\";\"main\"\n\"283370\";\"Kafr Malik\";\"ascii\"\n\"283373\";\"Kafr Jammāl\";\"main\"\n\"283373\";\"Kafr Jammal\";\"ascii\"\n\"283378\";\"Kafr Dān\";\"main\"\n\"283378\";\"Kafr Dan\";\"ascii\"\n\"283384\";\"Kafr al Labad\";\"main\"\n\"283384\";\"Kafr el Labad\";\"other\"\n\"283385\";\"Kafr ad Dīk\";\"main\"\n\"283385\";\"Kafr ad Dik\";\"ascii\"\n\"283385\";\"Kafr ed Dik\";\"other\"\n\"283385\";\"Kafr ed Dīk\";\"other\"\n\"283449\";\"Jīt\";\"main\"\n\"283449\";\"Jit\";\"ascii\"\n\"283449\";\"Jitt\";\"other\"\n\"283449\";\"Jītt\";\"other\"\n\"283449\";\"Qaryat Jit\";\"other\"\n\"283449\";\"Qaryat Jīt\";\"other\"\n\"283469\";\"Jayyūs\";\"main\"\n\"283469\";\"Jayyus\";\"ascii\"\n\"283469\";\"Jaiyus\";\"other\"\n\"283469\";\"Jaiyūs\";\"other\"\n\"283506\";\"Janīn\";\"main\"\n\"283506\";\"Janin\";\"ascii\"\n\"283506\";\"Djenin\";\"other\"\n\"283506\";\"Dschenin\";\"other\"\n\"283506\";\"Dzhanin\";\"other\"\n\"283506\";\"Engannim\";\"other\"\n\"283506\";\"Jenin\";\"other\"\n\"283506\";\"Jenine\";\"other\"\n\"283506\";\"Jinin\";\"other\"\n\"283506\";\"Jénine\";\"other\"\n\"283506\";\"`Ein Gannim\";\"other\"\n\"283506\";\"g'nyn\";\"other\"\n\"283506\";\"jnyn\";\"other\"\n\"283506\";\"Джанин\";\"other\"\n\"283506\";\"ג'נין\";\"other\"\n\"283506\";\"جنين\";\"other\"\n\"283506\";\"‘Ein Gannīm\";\"other\"\n\"283540\";\"Jalbūn\";\"main\"\n\"283540\";\"Jalbun\";\"ascii\"\n\"283540\";\"Djelbon\";\"other\"\n\"283540\";\"Gilbo`a\";\"other\"\n\"283540\";\"Gilbo‘a\";\"other\"\n\"283609\";\"Immātīn\";\"main\"\n\"283609\";\"Immatin\";\"ascii\"\n\"283609\";\"Um et Tin\";\"other\"\n\"283609\";\"Um et Tīn\";\"other\"\n\"283609\";\"Umm at Tin\";\"other\"\n\"283609\";\"Umm at Tīn\";\"other\"\n\"283612\";\"‘Illār\";\"main\"\n\"283612\";\"`Illar\";\"ascii\"\n\"283614\";\"Iktābah\";\"main\"\n\"283614\";\"Iktabah\";\"ascii\"\n\"283614\";\"Iktaba\";\"other\"\n\"283636\";\"Ḩūwārah\";\"main\"\n\"283636\";\"Huwarah\";\"ascii\"\n\"283636\";\"Huwwara\";\"other\"\n\"283636\";\"Huwwarah\";\"other\"\n\"283636\";\"Huwwāra\";\"other\"\n\"283636\";\"Ḩuwwārah\";\"other\"\n\"283643\";\"Ḩūsān\";\"main\"\n\"283643\";\"Husan\";\"ascii\"\n\"283676\";\"Ḩizmā\";\"main\"\n\"283676\";\"Hizma\";\"ascii\"\n\"283676\";\"Hizmah\";\"other\"\n\"283676\";\"Ḩizmah\";\"other\"\n\"283735\";\"Ḩāris\";\"main\"\n\"283735\";\"Haris\";\"ascii\"\n\"283806\";\"Ḩalḩūl\";\"main\"\n\"283806\";\"Halhul\";\"ascii\"\n\"283812\";\"Ḩajjah\";\"main\"\n\"283812\";\"Hajjah\";\"ascii\"\n\"283812\";\"Hajja\";\"other\"\n\"283812\";\"Qaryat Hajja\";\"other\"\n\"283812\";\"Qaryat Hajjah\";\"other\"\n\"283812\";\"Qaryat Ḩajjah\";\"other\"\n\"283812\";\"Ḥajja\";\"other\"\n\"283843\";\"Ḩablah\";\"main\"\n\"283843\";\"Hablah\";\"ascii\"\n\"283843\";\"Habla\";\"other\"\n\"283976\";\"Faḩmah\";\"main\"\n\"283976\";\"Fahmah\";\"ascii\"\n\"283976\";\"Fahma\";\"other\"\n\"283976\";\"Faḥma\";\"other\"\n\"284011\";\"Dūrā\";\"main\"\n\"284011\";\"Dura\";\"ascii\"\n\"284011\";\"Durah\";\"other\"\n\"284011\";\"Dury\";\"other\"\n\"284011\";\"Dūrah\";\"other\"\n\"284011\";\"Дуры\";\"other\"\n\"284013\";\"Dūmā\";\"main\"\n\"284013\";\"Duma\";\"ascii\"\n\"284013\";\"Doma\";\"other\"\n\"284013\";\"Domea\";\"other\"\n\"284013\";\"Dumah\";\"other\"\n\"284013\";\"Dōma\";\"other\"\n\"284013\";\"Dūmah\";\"other\"\n\"284046\";\"Dhannābah\";\"main\"\n\"284046\";\"Dhannabah\";\"ascii\"\n\"284046\";\"Dannaba\";\"other\"\n\"284046\";\"Dannabah\";\"other\"\n\"284046\";\"Dannāba\";\"other\"\n\"284046\";\"Dannābah\";\"other\"\n\"284054\";\"Dayr Sharaf\";\"main\"\n\"284054\";\"Deir Sharaf\";\"other\"\n\"284069\";\"Dayr Jarīr\";\"main\"\n\"284069\";\"Dayr Jarir\";\"ascii\"\n\"284069\";\"Deir Jarir\";\"other\"\n\"284069\";\"Deir Jarīr\";\"other\"\n\"284071\";\"Dayr Istiyā\";\"main\"\n\"284071\";\"Dayr Istiya\";\"ascii\"\n\"284071\";\"Dayr Istya\";\"other\"\n\"284071\";\"Dayr Istyā\";\"other\"\n\"284071\";\"Deir Istiya\";\"other\"\n\"284071\";\"Deir Istiyā\";\"other\"\n\"284071\";\"Deir Istya\";\"other\"\n\"284078\";\"Dayr Dibwān\";\"main\"\n\"284078\";\"Dayr Dibwan\";\"ascii\"\n\"284078\";\"Deir Dibwan\";\"other\"\n\"284078\";\"Deir Dibwān\";\"other\"\n\"284081\";\"Dayr Ballūţ\";\"main\"\n\"284081\";\"Dayr Ballut\";\"ascii\"\n\"284081\";\"Dair Balut\";\"other\"\n\"284081\";\"Deir Ballut\";\"other\"\n\"284081\";\"Deir Balluṭ\";\"other\"\n\"284085\";\"Dayr as Sūdān\";\"main\"\n\"284085\";\"Dayr as Sudan\";\"ascii\"\n\"284085\";\"Deir as Sudan\";\"other\"\n\"284085\";\"Deir es Sudan\";\"other\"\n\"284085\";\"Deir es Sūdān\";\"other\"\n\"284099\";\"Dayr al Ḩaţab\";\"main\"\n\"284099\";\"Dayr al Hatab\";\"ascii\"\n\"284099\";\"Deir al Hatab\";\"other\"\n\"284099\";\"Deir el Hatab\";\"other\"\n\"284100\";\"Dayr al Ghuşūn\";\"main\"\n\"284100\";\"Dayr al Ghusun\";\"ascii\"\n\"284100\";\"Dayr al Ghusn\";\"other\"\n\"284100\";\"Dayr al Ghuşn\";\"other\"\n\"284100\";\"Deir al Ghusan\";\"other\"\n\"284100\";\"Deir al Ghusun\";\"other\"\n\"284100\";\"Deir el Ghusun\";\"other\"\n\"284100\";\"Deir el Ghuṣūn\";\"other\"\n\"284187\";\"Burūqīn\";\"main\"\n\"284187\";\"Buruqin\";\"ascii\"\n\"284187\";\"Bruqin\";\"other\"\n\"284187\";\"Burgin\";\"other\"\n\"284187\";\"Burgīn\";\"other\"\n\"284187\";\"Burqayn\";\"other\"\n\"284187\";\"Burqin\";\"other\"\n\"284187\";\"Burqīn\";\"other\"\n\"284194\";\"Burqīn\";\"main\"\n\"284194\";\"Burqin\";\"ascii\"\n\"284194\";\"Birqin\";\"other\"\n\"284194\";\"Birqīn\";\"other\"\n\"284197\";\"Burqā\";\"main\"\n\"284197\";\"Burqa\";\"ascii\"\n\"284197\";\"Burqah\";\"other\"\n\"284214\";\"Būrīn\";\"main\"\n\"284214\";\"Burin\";\"ascii\"\n\"284237\";\"Bi’r Zayt\";\"main\"\n\"284237\";\"Bi'r Zayt\";\"ascii\"\n\"284237\";\"Az Zayt\";\"other\"\n\"284237\";\"Bi'r az Zayt\";\"other\"\n\"284237\";\"Bir Zeit\";\"other\"\n\"284237\";\"Bi’r az Zayt\";\"other\"\n\"284237\";\"Bīr Zeit\";\"other\"\n\"284270\";\"Biddū\";\"main\"\n\"284270\";\"Biddu\";\"ascii\"\n\"284270\";\"Bidu\";\"other\"\n\"284271\";\"Biddiyā\";\"main\"\n\"284271\";\"Biddiya\";\"ascii\"\n\"284271\";\"Biddya\";\"other\"\n\"284271\";\"Biddyā\";\"other\"\n\"284271\";\"Bidieh\";\"other\"\n\"284271\";\"Bidiye\";\"other\"\n\"284271\";\"Bidya\";\"other\"\n\"284271\";\"Biryah\";\"other\"\n\"284284\";\"Bazzārīyah\";\"main\"\n\"284284\";\"Bazzariyah\";\"ascii\"\n\"284284\";\"Bazariya\";\"other\"\n\"284284\";\"Bazariyah\";\"other\"\n\"284284\";\"Bazzariya\";\"other\"\n\"284284\";\"Bazzāriya\";\"other\"\n\"284284\";\"Bazāriya\";\"other\"\n\"284284\";\"Bazārīyah\";\"other\"\n\"284294\";\"Baytūniyā\";\"main\"\n\"284294\";\"Baytuniya\";\"ascii\"\n\"284294\";\"Beitunia\";\"other\"\n\"284294\";\"Beituniya\";\"other\"\n\"284294\";\"Beituniyā\";\"other\"\n\"284294\";\"Beitunya\";\"other\"\n\"284294\";\"Beitūnya\";\"other\"\n\"284294\";\"Betounia\";\"other\"\n\"284294\";\"Bituniya\";\"other\"\n\"284294\";\"Bītuniyā\";\"other\"\n\"284295\";\"Bayt Umrīn\";\"main\"\n\"284295\";\"Bayt Umrin\";\"ascii\"\n\"284295\";\"Beit Umrin\";\"other\"\n\"284295\";\"Beit Umrīn\";\"other\"\n\"284297\";\"Bayt Sūrīk\";\"main\"\n\"284297\";\"Bayt Surik\";\"ascii\"\n\"284297\";\"Beit Surik\";\"other\"\n\"284297\";\"Beit Sūrīk\";\"other\"\n\"284298\";\"Bayt Sīrā\";\"main\"\n\"284298\";\"Bayt Sira\";\"ascii\"\n\"284298\";\"Beit Sira\";\"other\"\n\"284298\";\"Beit Sīrā\";\"other\"\n\"284304\";\"Bayt Sāḩūr\";\"main\"\n\"284304\";\"Bayt Sahur\";\"ascii\"\n\"284304\";\"Beit Sahur\";\"other\"\n\"284304\";\"Beit Saḥūr\";\"other\"\n\"284304\";\"Bettsahour\";\"other\"\n\"284312\";\"Bayt Liqyā\";\"main\"\n\"284312\";\"Bayt Liqya\";\"ascii\"\n\"284312\";\"Beit Liqya\";\"other\"\n\"284312\";\"Beit Liqyā\";\"other\"\n\"284312\";\"Likia\";\"other\"\n\"284313\";\"Bayt Līd\";\"main\"\n\"284313\";\"Bayt Lid\";\"ascii\"\n\"284313\";\"Beit Lid\";\"other\"\n\"284313\";\"Beit Līd\";\"other\"\n\"284315\";\"Bethlehem\";\"main\"\n\"284315\";\"Bayt Lahm\";\"other\"\n\"284315\";\"Bayt Laḩm\";\"other\"\n\"284315\";\"Beit Lahm\";\"other\"\n\"284315\";\"Beit Lehem\";\"other\"\n\"284315\";\"Beitheal\";\"other\"\n\"284315\";\"Belem\";\"other\"\n\"284315\";\"Belen\";\"other\"\n\"284315\";\"Belen de Juda\";\"other\"\n\"284315\";\"Belém\";\"other\"\n\"284315\";\"Belén\";\"other\"\n\"284315\";\"Belén de Judá\";\"other\"\n\"284315\";\"Bet-Lehem\";\"other\"\n\"284315\";\"Bet-Leĥem\";\"other\"\n\"284315\";\"Bethleem\";\"other\"\n\"284315\";\"Bethleem Efrata\";\"other\"\n\"284315\";\"Bethléem\";\"other\"\n\"284315\";\"Betlehem\";\"other\"\n\"284315\";\"Betlejem\";\"other\"\n\"284315\";\"Betlem\";\"other\"\n\"284315\";\"Betlemme\";\"other\"\n\"284315\";\"Betleyem\";\"other\"\n\"284315\";\"Bètleyèm\";\"other\"\n\"284315\";\"Vifleem\";\"other\"\n\"284315\";\"bedeullehem\";\"other\"\n\"284315\";\"beit-lahmi\";\"other\"\n\"284315\";\"betsurehemu\";\"other\"\n\"284315\";\"bo li heng\";\"other\"\n\"284315\";\"byt lhm\";\"other\"\n\"284315\";\"Βηθλεέμ\";\"other\"\n\"284315\";\"Вифлеем\";\"other\"\n\"284315\";\"Віфлеєм\";\"other\"\n\"284315\";\"בית לחם\";\"other\"\n\"284315\";\"بيت لحم\";\"other\"\n\"284315\";\"ბეით-ლაჰმი\";\"other\"\n\"284315\";\"ベツレヘム\";\"other\"\n\"284315\";\"伯利恆\";\"other\"\n\"284315\";\"베들레헴\";\"other\"\n\"284320\";\"Bayt Kāḩil\";\"main\"\n\"284320\";\"Bayt Kahil\";\"ascii\"\n\"284320\";\"Beit Kahil\";\"other\"\n\"284320\";\"Beit Kāḥil\";\"other\"\n\"284324\";\"Bayt Jālā\";\"main\"\n\"284324\";\"Bayt Jala\";\"ascii\"\n\"284324\";\"Beit Jala\";\"other\"\n\"284324\";\"Beit Jālā\";\"other\"\n\"284328\";\"Baytīn\";\"main\"\n\"284328\";\"Baytin\";\"ascii\"\n\"284328\";\"Beitin\";\"other\"\n\"284328\";\"Beitīn\";\"other\"\n\"284328\";\"Bethel\";\"other\"\n\"284328\";\"Bitayn\";\"other\"\n\"284329\";\"Bayt Immar\";\"main\"\n\"284329\";\"Bayt `Umar\";\"other\"\n\"284329\";\"Bayt ‘Umar\";\"other\"\n\"284329\";\"Beit Immar\";\"other\"\n\"284329\";\"Beit Ummar\";\"other\"\n\"284330\";\"Baytillū\";\"main\"\n\"284330\";\"Baytillu\";\"ascii\"\n\"284330\";\"Beitillu\";\"other\"\n\"284334\";\"Bayt Ībā\";\"main\"\n\"284334\";\"Bayt Iba\";\"ascii\"\n\"284334\";\"Beit Iba\";\"other\"\n\"284334\";\"Beit Ība\";\"other\"\n\"284339\";\"Bayt Fūrīk\";\"main\"\n\"284339\";\"Bayt Furik\";\"ascii\"\n\"284339\";\"Bayt Nurik\";\"other\"\n\"284339\";\"Bayt Nūrīk\";\"other\"\n\"284339\";\"Beit Furik\";\"other\"\n\"284339\";\"Beit Fūrīk\";\"other\"\n\"284341\";\"Bayt Fajjār\";\"main\"\n\"284341\";\"Bayt Fajjar\";\"ascii\"\n\"284341\";\"Beit Fajjar\";\"other\"\n\"284341\";\"Beit Fajjār\";\"other\"\n\"284343\";\"Bayt Dajan\";\"main\"\n\"284343\";\"Beit Dajan\";\"other\"\n\"284347\";\"Bayt Awlā\";\"main\"\n\"284347\";\"Bayt Awla\";\"ascii\"\n\"284347\";\"Beit Aula\";\"other\"\n\"284347\";\"Beit Aulā\";\"other\"\n\"284362\";\"Baytā al Fawqā\";\"main\"\n\"284362\";\"Bayta al Fawqa\";\"ascii\"\n\"284362\";\"Beita al Fauqa\";\"other\"\n\"284362\";\"Beita el Fauqa\";\"other\"\n\"284376\";\"Battīr\";\"main\"\n\"284376\";\"Battir\";\"ascii\"\n\"284376\";\"Betar\";\"other\"\n\"284426\";\"Bāqah ash Sharqīyah\";\"main\"\n\"284426\";\"Baqah ash Sharqiyah\";\"ascii\"\n\"284426\";\"Baqa ash Sharqiya\";\"other\"\n\"284426\";\"Baqa esh Sharqiya\";\"other\"\n\"284426\";\"Baqat ash Sharqiyah\";\"other\"\n\"284426\";\"Bāqa esh Sharqiya\";\"other\"\n\"284426\";\"Bāqat ash Sharqīyah\";\"other\"\n\"284446\";\"Balāţah\";\"main\"\n\"284446\";\"Balatah\";\"ascii\"\n\"284446\";\"Balata\";\"other\"\n\"284446\";\"Balāta\";\"other\"\n\"284485\";\"Az Zāwiyah\";\"main\"\n\"284485\";\"Az Zawiyah\";\"ascii\"\n\"284485\";\"Ez Zawiya\";\"other\"\n\"284485\";\"Ez Zawye\";\"other\"\n\"284485\";\"Ez Zāwiya\";\"other\"\n\"284485\";\"Ez Zāwye\";\"other\"\n\"284485\";\"Zawiya\";\"other\"\n\"284485\";\"Zawiyah\";\"other\"\n\"284485\";\"Zāwiya\";\"other\"\n\"284485\";\"Zāwiyah\";\"other\"\n\"284486\";\"Az̧ Z̧āhirīyah\";\"main\"\n\"284486\";\"Az Zahiriyah\";\"ascii\"\n\"284486\";\"Ad Dahiriyah\";\"other\"\n\"284486\";\"Adh Dhahiriya\";\"other\"\n\"284486\";\"Aḑ Ḑāhirīyah\";\"other\"\n\"284486\";\"Debir\";\"other\"\n\"284486\";\"Devir\";\"other\"\n\"284486\";\"Devīr\";\"other\"\n\"284486\";\"Dhahiriya\";\"other\"\n\"284486\";\"Dhāhirīya\";\"other\"\n\"284486\";\"Ed Dhaherie\";\"other\"\n\"284486\";\"Edh Dhahiriya\";\"other\"\n\"284486\";\"Edh Dhahriye\";\"other\"\n\"284486\";\"Edh Dhairiya\";\"other\"\n\"284486\";\"Edh Dhāhrīye\";\"other\"\n\"284486\";\"Edh Dhāiriya\";\"other\"\n\"284486\";\"El Dahaheriya\";\"other\"\n\"284486\";\"Eḍh Ḍhāhiriya\";\"other\"\n\"284487\";\"Az Zabābidah\";\"main\"\n\"284487\";\"Az Zababidah\";\"ascii\"\n\"284487\";\"Az Zababida\";\"other\"\n\"284487\";\"Az Zababide\";\"other\"\n\"284487\";\"Ez Zababida\";\"other\"\n\"284487\";\"Ez Zabābida\";\"other\"\n\"284487\";\"Zababida\";\"other\"\n\"284487\";\"Zabābida\";\"other\"\n\"284557\";\"‘Attīl\";\"main\"\n\"284557\";\"`Attil\";\"ascii\"\n\"284581\";\"As Sāwiyah\";\"main\"\n\"284581\";\"As Sawiyah\";\"ascii\"\n\"284581\";\"As Sawiya\";\"other\"\n\"284581\";\"Es Sawiya\";\"other\"\n\"284581\";\"Es Sāwiya\";\"other\"\n\"284597\";\"Ash Shuyūkh\";\"main\"\n\"284597\";\"Ash Shuyukh\";\"ascii\"\n\"284597\";\"Esh Shuyukh\";\"other\"\n\"284597\";\"Esh Shuyūkh\";\"other\"\n\"284597\";\"Shuyukh\";\"other\"\n\"284597\";\"Shūyūkh\";\"other\"\n\"284868\";\"Arţās\";\"main\"\n\"284868\";\"Artas\";\"ascii\"\n\"284868\";\"Artasium\";\"other\"\n\"284881\";\"Ar Rīḩīyah\";\"main\"\n\"284881\";\"Ar Rihiyah\";\"ascii\"\n\"284881\";\"Ar Rihiya\";\"other\"\n\"284881\";\"Barta'a\";\"other\"\n\"284881\";\"Barta’a\";\"other\"\n\"284881\";\"Er Rihiya\";\"other\"\n\"284881\";\"Er Rīhīya\";\"other\"\n\"284881\";\"Rihiya\";\"other\"\n\"284881\";\"Rīhīya\";\"other\"\n\"284890\";\"Ar Rām\";\"main\"\n\"284890\";\"Ar Ram\";\"ascii\"\n\"284890\";\"Er Ram\";\"other\"\n\"284890\";\"Er Rām\";\"other\"\n\"284890\";\"Ram\";\"other\"\n\"284890\";\"Rām\";\"other\"\n\"284893\";\"‘Arrābah\";\"main\"\n\"284893\";\"`Arrabah\";\"ascii\"\n\"284893\";\"Arabeh\";\"other\"\n\"284893\";\"`Arava\";\"other\"\n\"284893\";\"`Arraba\";\"other\"\n\"284893\";\"`Arrabe\";\"other\"\n\"284893\";\"‘Arrāba\";\"other\"\n\"284893\";\"‘Arrābe\";\"other\"\n\"284893\";\"‘Arāvā\";\"other\"\n\"284899\";\"Jericho\";\"main\"\n\"284899\";\"Ariha\";\"other\"\n\"284899\";\"Arīḩā\";\"other\"\n\"284899\";\"Eriha\";\"other\"\n\"284899\";\"Erihon\";\"other\"\n\"284899\";\"Erīha\";\"other\"\n\"284899\";\"Gerico\";\"other\"\n\"284899\";\"Ierikhon\";\"other\"\n\"284899\";\"Jerichonas\";\"other\"\n\"284899\";\"Jerico\";\"other\"\n\"284899\";\"Jericó\";\"other\"\n\"284899\";\"Jerihon\";\"other\"\n\"284899\";\"Jerika\";\"other\"\n\"284899\";\"Jerikhon\";\"other\"\n\"284899\";\"Jeriko\";\"other\"\n\"284899\";\"Jerycho\";\"other\"\n\"284899\";\"Jéricho\";\"other\"\n\"284899\";\"Jērika\";\"other\"\n\"284899\";\"Yeriho\";\"other\"\n\"284899\";\"Yerīhō\";\"other\"\n\"284899\";\"Yirihu\";\"other\"\n\"284899\";\"Yirīḩū\";\"other\"\n\"284899\";\"aryha\";\"other\"\n\"284899\";\"eriko\";\"other\"\n\"284899\";\"jie li ke\";\"other\"\n\"284899\";\"yryhw\";\"other\"\n\"284899\";\"Єрихон\";\"other\"\n\"284899\";\"Иерихон\";\"other\"\n\"284899\";\"Йерихон\";\"other\"\n\"284899\";\"יריחו\";\"other\"\n\"284899\";\"أريحا\";\"other\"\n\"284899\";\"اریحا\";\"other\"\n\"284899\";\"エリコ\";\"other\"\n\"284899\";\"杰里科\";\"other\"\n\"284922\";\"‘Aqrabah\";\"main\"\n\"284922\";\"`Aqrabah\";\"ascii\"\n\"284922\";\"`Aqraba\";\"other\"\n\"284922\";\"`Aqrabe\";\"other\"\n\"284922\";\"‘Aqraba\";\"other\"\n\"284922\";\"‘Aqrabe\";\"other\"\n\"284976\";\"‘Anabtā\";\"main\"\n\"284976\";\"`Anabta\";\"ascii\"\n\"284976\";\"`Anabtah\";\"other\"\n\"284976\";\"`Anebta\";\"other\"\n\"284976\";\"‘Anabtah\";\"other\"\n\"284976\";\"‘Anebta\";\"other\"\n\"284999\";\"Al Yāmūn\";\"main\"\n\"284999\";\"Al Yamun\";\"ascii\"\n\"284999\";\"El Yamun\";\"other\"\n\"284999\";\"El Yāmūn\";\"other\"\n\"284999\";\"Yamun\";\"other\"\n\"284999\";\"Yāmūn\";\"other\"\n\"285009\";\"Al Qubaybah\";\"main\"\n\"285009\";\"Al Qubeiba\";\"other\"\n\"285009\";\"El Qubeiba\";\"other\"\n\"285009\";\"Qubeiba\";\"other\"\n\"285023\";\"Al Mughayyir\";\"main\"\n\"285023\";\"Al Mughaiyir\";\"other\"\n\"285023\";\"El Mughaiyir\";\"other\"\n\"285023\";\"Mughaiyir\";\"other\"\n\"285024\";\"Al Mughayyir\";\"main\"\n\"285024\";\"Al Mughaiyir\";\"other\"\n\"285024\";\"Al Mughayir\";\"other\"\n\"285024\";\"El Mughaiyir\";\"other\"\n\"285024\";\"El Mugheir\";\"other\"\n\"285024\";\"Mughaiyir\";\"other\"\n\"285061\";\"Al Khiḑr\";\"main\"\n\"285061\";\"Al Khidr\";\"ascii\"\n\"285061\";\"Al Khadr\";\"other\"\n\"285061\";\"El Khader\";\"other\"\n\"285061\";\"El Khadr\";\"other\"\n\"285061\";\"Khadr\";\"other\"\n\"285061\";\"Khaḍr\";\"other\"\n\"285066\";\"Hebron\";\"main\"\n\"285066\";\"Al Khalil\";\"other\"\n\"285066\";\"Al Khalīl\";\"other\"\n\"285066\";\"El Khalil\";\"other\"\n\"285066\";\"El Khulil\";\"other\"\n\"285066\";\"Habrun\";\"other\"\n\"285066\";\"Hebrom\";\"other\"\n\"285066\";\"Hebrón\";\"other\"\n\"285066\";\"Hevron\";\"other\"\n\"285066\";\"Hevrōn\";\"other\"\n\"285066\";\"Hébron\";\"other\"\n\"285066\";\"Khalil-el-Rahman\";\"other\"\n\"285066\";\"Khevron\";\"other\"\n\"285066\";\"alkhlyl\";\"other\"\n\"285066\";\"hbrwn\";\"other\"\n\"285066\";\"heburon\";\"other\"\n\"285066\";\"Хеврон\";\"other\"\n\"285066\";\"חברון\";\"other\"\n\"285066\";\"الخليل\";\"other\"\n\"285066\";\"Ḩabrūn\";\"other\"\n\"285066\";\"ヘブロン\";\"other\"\n\"285069\";\"Al Judayrah\";\"main\"\n\"285069\";\"Judayrah\";\"other\"\n\"285069\";\"Judeira\";\"other\"\n\"285069\";\"Judira\";\"other\"\n\"285069\";\"Judirah\";\"other\"\n\"285069\";\"Judīra\";\"other\"\n\"285069\";\"Judīrah\";\"other\"\n\"285070\";\"Al Jīb\";\"main\"\n\"285070\";\"Al Jib\";\"ascii\"\n\"285070\";\"El Jib\";\"other\"\n\"285070\";\"El Jīb\";\"other\"\n\"285070\";\"Jib\";\"other\"\n\"285070\";\"Jīb\";\"other\"\n\"285103\";\"Al Fandaqūmīyah\";\"main\"\n\"285103\";\"Al Fandaqumiyah\";\"ascii\"\n\"285103\";\"Al Fandaqumiya\";\"other\"\n\"285103\";\"El Fandaqumiya\";\"other\"\n\"285103\";\"El Fandaqumiye\";\"other\"\n\"285103\";\"El Fandaqūmiya\";\"other\"\n\"285103\";\"El Fandaqūmīye\";\"other\"\n\"285103\";\"Fandaqumiya\";\"other\"\n\"285103\";\"Fandaqumiye\";\"other\"\n\"285103\";\"Fandaqūmīya\";\"other\"\n\"285103\";\"Fandaqūmīye\";\"other\"\n\"285103\";\"Fendakumie\";\"other\"\n\"285103\";\"Fendakumiyeh\";\"other\"\n\"285103\";\"Pentakomia\";\"other\"\n\"285103\";\"Pundaqa\";\"other\"\n\"285108\";\"Al Bīrah\";\"main\"\n\"285108\";\"Al Birah\";\"ascii\"\n\"285108\";\"Al Bira\";\"other\"\n\"285108\";\"Al'-Bira\";\"other\"\n\"285108\";\"Be-erot\";\"other\"\n\"285108\";\"Be-eroth\";\"other\"\n\"285108\";\"Be-ērot\";\"other\"\n\"285108\";\"Be-ēroth\";\"other\"\n\"285108\";\"Bira\";\"other\"\n\"285108\";\"Birah\";\"other\"\n\"285108\";\"Bire\";\"other\"\n\"285108\";\"Bīra\";\"other\"\n\"285108\";\"Bīrah\";\"other\"\n\"285108\";\"Bīre\";\"other\"\n\"285108\";\"El Bira\";\"other\"\n\"285108\";\"El Bīra\";\"other\"\n\"285108\";\"Аль-Бира\";\"other\"\n\"285279\";\"Abū Dīs\";\"main\"\n\"285279\";\"Abu Dis\";\"ascii\"\n\"7303419\";\"East Jerusalem\";\"main\"\n\"7303419\";\"Aust-Jerusalem\";\"other\"\n\"7303419\";\"Jerusalem East\";\"other\"\n\"7303419\";\"Jerusalem-Est\";\"other\"\n\"7303419\";\"Jérusalem-Est\";\"other\"\n\"7303419\";\"OEstra Jerusalem\";\"other\"\n\"7303419\";\"Ost-Jerusalem\";\"other\"\n\"7303419\";\"Ostjerusalem\";\"other\"\n\"7303419\";\"lqds alshrqyt\";\"other\"\n\"7303419\";\"mzrh yrwslym\";\"other\"\n\"7303419\";\"Östra Jerusalem\";\"other\"\n\"7303419\";\"Øst-Jerusalem\";\"other\"\n\"7303419\";\"Østjerusalem\";\"other\"\n\"7303419\";\"מזרח ירושלים\";\"other\"\n\"7303419\";\"لقدس الشرقية\";\"other\"\n\"7535657\";\"Karney Shomron\";\"main\"\n\"2261577\";\"Vila Viçosa\";\"main\"\n\"2261577\";\"Vila Vicosa\";\"ascii\"\n\"2261598\";\"Vila Real de Santo António\";\"main\"\n\"2261598\";\"Vila Real de Santo Antonio\";\"ascii\"\n\"2261598\";\"Bila Real nte Santo Antonio\";\"other\"\n\"2261598\";\"Vila Real de San Antonio\";\"other\"\n\"2261598\";\"Vila Real de San António\";\"other\"\n\"2261598\";\"Βίλα Ρεάλ ντε Σάντο Αντόνιο\";\"other\"\n\"2261617\";\"Vila Nova de Milfontes\";\"main\"\n\"2261639\";\"Vila Franca de Xira\";\"main\"\n\"2261651\";\"Vila de Porto Santo\";\"main\"\n\"2261651\";\"Porta Santa\";\"other\"\n\"2261651\";\"Porto Santo\";\"other\"\n\"2261651\";\"Pôrta Santa\";\"other\"\n\"2261673\";\"Vieira de Leiria\";\"main\"\n\"2261673\";\"Vieira\";\"other\"\n\"2261697\";\"Vialonga\";\"main\"\n\"2261732\";\"Ventosa\";\"main\"\n\"2261740\";\"Vendas Novas\";\"main\"\n\"2261760\";\"Venda do Pinheiro\";\"main\"\n\"2262373\";\"Vale da Amoreira\";\"main\"\n\"2262465\";\"Unhos\";\"main\"\n\"2262478\";\"Turquel\";\"main\"\n\"2262540\";\"Tramagal\";\"main\"\n\"2262544\";\"Trafaria\";\"main\"\n\"2262581\";\"Torres Vedras\";\"main\"\n\"2262581\";\"Torresh\";\"other\"\n\"2262581\";\"Торреш\";\"other\"\n\"2262582\";\"Torres Novas\";\"main\"\n\"2262644\";\"Tomar\";\"main\"\n\"2262644\";\"Томар\";\"other\"\n\"2262687\";\"Terrugem\";\"main\"\n\"2262744\";\"Tavira\";\"main\"\n\"2262744\";\"Tabira\";\"other\"\n\"2262744\";\"Ταβίρα\";\"other\"\n\"2262744\";\"Тавира\";\"other\"\n\"2262815\";\"Souto da Carpalhosa\";\"main\"\n\"2262815\";\"Souto\";\"other\"\n\"2262865\";\"Sobreda\";\"main\"\n\"2262867\";\"Sobralinho\";\"main\"\n\"2262912\";\"Sintra\";\"main\"\n\"2262912\";\"Cintra\";\"other\"\n\"2262912\";\"shintora\";\"other\"\n\"2262912\";\"Σίντρα\";\"other\"\n\"2262912\";\"Синтра\";\"other\"\n\"2262912\";\"シントラ\";\"other\"\n\"2262917\";\"Sines\";\"main\"\n\"2262926\";\"Silves\";\"main\"\n\"2262944\";\"Silveira\";\"main\"\n\"2262957\";\"Sesimbra\";\"main\"\n\"2262957\";\"Sezimbra\";\"other\"\n\"2262957\";\"Sisimbra\";\"other\"\n\"2262957\";\"Сесимбра\";\"other\"\n\"2262963\";\"Setúbal\";\"main\"\n\"2262963\";\"Setubal\";\"ascii\"\n\"2262963\";\"Setoumpal\";\"other\"\n\"2262963\";\"sai tu ba er\";\"other\"\n\"2262963\";\"stwbal\";\"other\"\n\"2262963\";\"Σετούμπαλ\";\"other\"\n\"2262963\";\"Сетубал\";\"other\"\n\"2262963\";\"ستوبال\";\"other\"\n\"2262963\";\"塞图巴尔\";\"other\"\n\"2262987\";\"Sertã\";\"main\"\n\"2262987\";\"Serta\";\"ascii\"\n\"2263049\";\"Serpa\";\"main\"\n\"2263049\";\"Серпа\";\"other\"\n\"2263197\";\"São Vicente\";\"main\"\n\"2263197\";\"Sao Vicente\";\"ascii\"\n\"2263197\";\"San-Visente\";\"other\"\n\"2263197\";\"Сан-Висенте\";\"other\"\n\"2263207\";\"São Teotónio\";\"main\"\n\"2263207\";\"Sao Teotonio\";\"ascii\"\n\"2263207\";\"San Teotonio\";\"other\"\n\"2263207\";\"San Teotónio\";\"other\"\n\"2263207\";\"Sao Theotonio\";\"other\"\n\"2263207\";\"São Theotonio\";\"other\"\n\"2263245\";\"São Pedro da Cadeira\";\"main\"\n\"2263245\";\"Sao Pedro da Cadeira\";\"ascii\"\n\"2263322\";\"São João dos Montes\";\"main\"\n\"2263322\";\"Sao Joao dos Montes\";\"ascii\"\n\"2263326\";\"São João da Talha\";\"main\"\n\"2263326\";\"Sao Joao da Talha\";\"ascii\"\n\"2263327\";\"São João das Lampas\";\"main\"\n\"2263327\";\"Sao Joao das Lampas\";\"ascii\"\n\"2263352\";\"São Domingos de Rana\";\"main\"\n\"2263352\";\"Sao Domingos de Rana\";\"ascii\"\n\"2263352\";\"Domingos De Rana\";\"other\"\n\"2263352\";\"Sao Domingos\";\"other\"\n\"2263352\";\"São Domingos\";\"other\"\n\"2263377\";\"São Brás de Alportel\";\"main\"\n\"2263377\";\"Sao Bras de Alportel\";\"ascii\"\n\"2263377\";\"Alportel\";\"other\"\n\"2263377\";\"Sao Braz\";\"other\"\n\"2263377\";\"Sao Braz d'Alportel\";\"other\"\n\"2263377\";\"Sao Braz de Aportel\";\"other\"\n\"2263377\";\"São Braz\";\"other\"\n\"2263377\";\"São Braz de Aportel\";\"other\"\n\"2263377\";\"São Braz d’Alportel\";\"other\"\n\"2263393\";\"São Bartolomeu de Messines\";\"main\"\n\"2263393\";\"Sao Bartolomeu de Messines\";\"ascii\"\n\"2263393\";\"Messines\";\"other\"\n\"2263393\";\"Sao Bartolomeo de Messines\";\"other\"\n\"2263393\";\"São Bartolomeo de Messines\";\"other\"\n\"2263426\";\"Santo António da Charneca\";\"main\"\n\"2263426\";\"Santo Antonio da Charneca\";\"ascii\"\n\"2263434\";\"Santo Antão do Tojal\";\"main\"\n\"2263434\";\"Santo Antao do Tojal\";\"ascii\"\n\"2263434\";\"Santo Antao\";\"other\"\n\"2263434\";\"Santo Antao de Tojal\";\"other\"\n\"2263434\";\"Santo Antão\";\"other\"\n\"2263434\";\"Santo Antão de Tojal\";\"other\"\n\"2263438\";\"Santo André\";\"main\"\n\"2263438\";\"Santo Andre\";\"ascii\"\n\"2263439\";\"Santo André\";\"main\"\n\"2263439\";\"Santo Andre\";\"ascii\"\n\"2263458\";\"Santiago do Cacém\";\"main\"\n\"2263458\";\"Santiago do Cacem\";\"ascii\"\n\"2263458\";\"Sao Tiago de Cacem\";\"other\"\n\"2263458\";\"Sao Tiago do Cacem\";\"other\"\n\"2263458\";\"São Tiago de Caçem\";\"other\"\n\"2263458\";\"São Tiago do Cacém\";\"other\"\n\"2263480\";\"Santarém\";\"main\"\n\"2263480\";\"Santarem\";\"ascii\"\n\"2263480\";\"Santaren\";\"other\"\n\"2263480\";\"Scalabis\";\"other\"\n\"2263480\";\"Σανταρέμ\";\"other\"\n\"2263480\";\"Сантарен\";\"other\"\n\"2263491\";\"Santana\";\"main\"\n\"2263491\";\"Сантана\";\"other\"\n\"2263523\";\"Santa Iria da Azóia\";\"main\"\n\"2263523\";\"Santa Iria da Azoia\";\"ascii\"\n\"2263523\";\"Santa Iria\";\"other\"\n\"2263523\";\"Santa Iria de Azoia\";\"other\"\n\"2263540\";\"Santa Cruz\";\"main\"\n\"2263540\";\"Santa Krouz\";\"other\"\n\"2263540\";\"Σάντα Κρουζ\";\"other\"\n\"2263547\";\"Santa Catarina da Serra\";\"main\"\n\"2263547\";\"Santa Catarina\";\"other\"\n\"2263547\";\"Santa Catharina\";\"other\"\n\"2263547\";\"Santa Catharina da Serra\";\"other\"\n\"2263558\";\"Santa Bárbara de Nexe\";\"main\"\n\"2263558\";\"Santa Barbara de Nexe\";\"ascii\"\n\"2263586\";\"Samora Correia\";\"main\"\n\"2263596\";\"Salvaterra de Magos\";\"main\"\n\"2263650\";\"Sagres\";\"main\"\n\"2263650\";\"Sagresh\";\"other\"\n\"2263650\";\"Сагреш\";\"other\"\n\"2263667\";\"Sacavém\";\"main\"\n\"2263667\";\"Sacavem\";\"ascii\"\n\"2263823\";\"Rio Maior\";\"main\"\n\"2263827\";\"Rio de Mouro\";\"main\"\n\"2263905\";\"Ribeira Brava\";\"main\"\n\"2263905\";\"Ribeira Mpraba\";\"other\"\n\"2263905\";\"Ριβέιρα Μπράβα\";\"other\"\n\"2263923\";\"Riachos\";\"main\"\n\"2263974\";\"Reguengos de Monsaraz\";\"main\"\n\"2263974\";\"Reguengos\";\"other\"\n\"2264009\";\"Redondo\";\"main\"\n\"2264087\";\"Ramada\";\"main\"\n\"2264169\";\"Quinta do Anjo\";\"main\"\n\"2264169\";\"Quinta da Anjo\";\"other\"\n\"2264268\";\"Queluz\";\"main\"\n\"2264268\";\"Kelush\";\"other\"\n\"2264268\";\"Келуш\";\"other\"\n\"2264270\";\"Quejas\";\"main\"\n\"2264270\";\"Queijas\";\"other\"\n\"2264299\";\"Quarteira\";\"main\"\n\"2264314\";\"Proença-a-Nova\";\"main\"\n\"2264314\";\"Proenca-a-Nova\";\"ascii\"\n\"2264341\";\"Pragal\";\"main\"\n\"2264357\";\"Póvoa de Santo Adrião\";\"main\"\n\"2264357\";\"Povoa de Santo Adriao\";\"ascii\"\n\"2264359\";\"Póvoa de Santa Iria\";\"main\"\n\"2264359\";\"Povoa de Santa Iria\";\"ascii\"\n\"2264359\";\"Povoa\";\"other\"\n\"2264359\";\"Povoa Santa Iria\";\"other\"\n\"2264359\";\"Povoa de Martinho\";\"other\"\n\"2264359\";\"Povoa do Tojal\";\"other\"\n\"2264359\";\"Povua-de-Santa-Irija\";\"other\"\n\"2264359\";\"Póvoa\";\"other\"\n\"2264359\";\"Póvoa Santa Iria\";\"other\"\n\"2264359\";\"Póvoa do Tojal\";\"other\"\n\"2264359\";\"Повуа-де-Санта-Ирия\";\"other\"\n\"2264403\";\"Porto Salvo\";\"main\"\n\"2264412\";\"Porto Moniz\";\"main\"\n\"2264412\";\"Porto do Moniz\";\"other\"\n\"2264412\";\"Portu-Monish\";\"other\"\n\"2264412\";\"Pôrto do Moniz\";\"other\"\n\"2264412\";\"Порту-Мониш\";\"other\"\n\"2264427\";\"Porto de Mós\";\"main\"\n\"2264427\";\"Porto de Mos\";\"ascii\"\n\"2264442\";\"Porto Covo\";\"main\"\n\"2264442\";\"Portu-Kovu\";\"other\"\n\"2264442\";\"Порту-Кову\";\"other\"\n\"2264456\";\"Portimão\";\"main\"\n\"2264456\";\"Portimao\";\"ascii\"\n\"2264456\";\"Vila Nova de Portimao\";\"other\"\n\"2264456\";\"Vila Nova de Portimão\";\"other\"\n\"2264456\";\"Портимао\";\"other\"\n\"2264508\";\"Portalegre\";\"main\"\n\"2264508\";\"Порталегре\";\"other\"\n\"2264526\";\"Pontinha\";\"main\"\n\"2264527\";\"Pontével\";\"main\"\n\"2264527\";\"Pontevel\";\"ascii\"\n\"2264538\";\"Ponte de Sor\";\"main\"\n\"2264557\";\"Ponta do Sol\";\"main\"\n\"2264557\";\"Ponta nto Sol\";\"other\"\n\"2264557\";\"Πόντα ντο Σολ\";\"other\"\n\"2264575\";\"Pombal\";\"main\"\n\"2264575\";\"Помбал\";\"other\"\n\"2264644\";\"Poceirão\";\"main\"\n\"2264644\";\"Poceirao\";\"ascii\"\n\"2264718\";\"Pinhal Novo\";\"main\"\n\"2264736\";\"Piedade\";\"main\"\n\"2264736\";\"Cova da Piedade\";\"other\"\n\"2264811\";\"Pero Pinheiro\";\"main\"\n\"2264923\";\"Peniche\";\"main\"\n\"2265120\";\"Pataias\";\"main\"\n\"2265169\";\"Parede\";\"main\"\n\"2265223\";\"Palmela\";\"main\"\n\"2265326\";\"Paço de Arcos\";\"main\"\n\"2265326\";\"Paco de Arcos\";\"ascii\"\n\"2265326\";\"Paco d'Arcos\";\"other\"\n\"2265326\";\"Paço d'Arcos\";\"other\"\n\"2265388\";\"Ourém\";\"main\"\n\"2265388\";\"Ourem\";\"ascii\"\n\"2265422\";\"Olival do Basto\";\"main\"\n\"2265447\";\"Olhão\";\"main\"\n\"2265447\";\"Olhao\";\"ascii\"\n\"2265467\";\"Odivelas\";\"main\"\n\"2265467\";\"awdywlas\";\"other\"\n\"2265467\";\"اودیولاس\";\"other\"\n\"2265472\";\"Odemira\";\"main\"\n\"2265485\";\"Óbidos\";\"main\"\n\"2265485\";\"Obidos\";\"ascii\"\n\"2265485\";\"Obidush\";\"other\"\n\"2265485\";\"Обидуш\";\"other\"\n\"2265494\";\"Nossa Senhora do Monte\";\"main\"\n\"2265494\";\"Monte\";\"other\"\n\"2265494\";\"Монте\";\"other\"\n\"2265552\";\"Nazaré\";\"main\"\n\"2265552\";\"Nazare\";\"ascii\"\n\"2265552\";\"Ναζαρέ\";\"other\"\n\"2265686\";\"Moura\";\"main\"\n\"2265726\";\"Moscavide\";\"main\"\n\"2265788\";\"Montijo\";\"main\"\n\"2265788\";\"Montikho\";\"other\"\n\"2265788\";\"Монтихо\";\"other\"\n\"2265841\";\"Monte Redondo\";\"main\"\n\"2265888\";\"Montemor-o-Novo\";\"main\"\n\"2265914\";\"Monte Gordo\";\"main\"\n\"2265914\";\"Monte Gorde\";\"other\"\n\"2265927\";\"Monte Estoril\";\"main\"\n\"2266249\";\"Monsanto\";\"main\"\n\"2266249\";\"Монсанто\";\"other\"\n\"2266268\";\"Monchique\";\"main\"\n\"2266272\";\"Moncarapacho\";\"main\"\n\"2266319\";\"Moita\";\"main\"\n\"2266411\";\"Milharado\";\"main\"\n\"2266633\";\"Marvão\";\"main\"\n\"2266633\";\"Marvao\";\"ascii\"\n\"2266633\";\"Marvan\";\"other\"\n\"2266633\";\"Марван\";\"other\"\n\"2266702\";\"Marinhais\";\"main\"\n\"2266703\";\"Marinha Grande\";\"main\"\n\"2266777\";\"Malveira\";\"main\"\n\"2266865\";\"Mafra\";\"main\"\n\"2266895\";\"Machico\";\"main\"\n\"2266914\";\"Maceira\";\"main\"\n\"2266938\";\"Luz\";\"main\"\n\"2266961\";\"Lourinhã\";\"main\"\n\"2266961\";\"Lourinha\";\"ascii\"\n\"2266974\";\"Louriçal\";\"main\"\n\"2266974\";\"Lourical\";\"ascii\"\n\"2266977\";\"Loures\";\"main\"\n\"2266977\";\"Loyres\";\"other\"\n\"2266977\";\"Λόυρες\";\"other\"\n\"2266988\";\"Loulé\";\"main\"\n\"2266988\";\"Loule\";\"ascii\"\n\"2266988\";\"Lola\";\"other\"\n\"2266988\";\"Лола\";\"other\"\n\"2267057\";\"Lisbon\";\"main\"\n\"2267057\";\"Felicitas Julia\";\"other\"\n\"2267057\";\"Felicitas Julia Olissipo\";\"other\"\n\"2267057\";\"Liospoin\";\"other\"\n\"2267057\";\"Liospóin\";\"other\"\n\"2267057\";\"Lisabon\";\"other\"\n\"2267057\";\"Lisabona\";\"other\"\n\"2267057\";\"Lisboa\";\"other\"\n\"2267057\";\"Lisbona\";\"other\"\n\"2267057\";\"Lisbonne\";\"other\"\n\"2267057\";\"Lisbono\";\"other\"\n\"2267057\";\"Lisbonum\";\"other\"\n\"2267057\";\"Lissabon\";\"other\"\n\"2267057\";\"Lisszabon\";\"other\"\n\"2267057\";\"Lizboa\";\"other\"\n\"2267057\";\"Lizbon\";\"other\"\n\"2267057\";\"Lizbona\";\"other\"\n\"2267057\";\"Olisipo\";\"other\"\n\"2267057\";\"Olissipo\";\"other\"\n\"2267057\";\"li si ben\";\"other\"\n\"2267057\";\"lisaboni\";\"other\"\n\"2267057\";\"lisbana\";\"other\"\n\"2267057\";\"lisbxn\";\"other\"\n\"2267057\";\"liseubon\";\"other\"\n\"2267057\";\"lshbwnt\";\"other\"\n\"2267057\";\"lysabwn\";\"other\"\n\"2267057\";\"lysbwn\";\"other\"\n\"2267057\";\"risubon\";\"other\"\n\"2267057\";\"Λισαβώνα\";\"other\"\n\"2267057\";\"Лисабон\";\"other\"\n\"2267057\";\"Лиссабон\";\"other\"\n\"2267057\";\"Лісабон\";\"other\"\n\"2267057\";\"Լիսբոնա\";\"other\"\n\"2267057\";\"ליסבון\";\"other\"\n\"2267057\";\"لشبونة\";\"other\"\n\"2267057\";\"لىسابون\";\"other\"\n\"2267057\";\"لیسبون\";\"other\"\n\"2267057\";\"ܠܫܒܘܢܐ\";\"other\"\n\"2267057\";\"लिस्बन\";\"other\"\n\"2267057\";\"ลิสบอน\";\"other\"\n\"2267057\";\"ლისაბონი\";\"other\"\n\"2267057\";\"ሊዝቦን\";\"other\"\n\"2267057\";\"リスボン\";\"other\"\n\"2267057\";\"里斯本\";\"other\"\n\"2267057\";\"리스본\";\"other\"\n\"2267067\";\"Linda-a-Velha\";\"main\"\n\"2267067\";\"Linda a Velha\";\"other\"\n\"2267095\";\"Leiria\";\"main\"\n\"2267095\";\"Lejrija\";\"other\"\n\"2267095\";\"Vieira de Leiria\";\"other\"\n\"2267095\";\"lyyryh\";\"other\"\n\"2267095\";\"Λεϊρία\";\"other\"\n\"2267095\";\"Лейрия\";\"other\"\n\"2267095\";\"לייריה\";\"other\"\n\"2267131\";\"Laranjeiro\";\"main\"\n\"2267226\";\"Lagos\";\"main\"\n\"2267254\";\"Lagoa\";\"main\"\n\"2267489\";\"Guia\";\"main\"\n\"2267538\";\"Grândola\";\"main\"\n\"2267538\";\"Grandola\";\"ascii\"\n\"2267624\";\"Golegã\";\"main\"\n\"2267624\";\"Golega\";\"ascii\"\n\"2267827\";\"Funchal\";\"main\"\n\"2267827\";\"Funshal\";\"other\"\n\"2267827\";\"Phountsal\";\"other\"\n\"2267827\";\"funsharu\";\"other\"\n\"2267827\";\"Φουντσάλ\";\"other\"\n\"2267827\";\"Фуншал\";\"other\"\n\"2267827\";\"フンシャル\";\"other\"\n\"2268250\";\"Ferreiras\";\"main\"\n\"2268252\";\"Ferreira do Alentejo\";\"main\"\n\"2268313\";\"Fazendas de Almeirim\";\"main\"\n\"2268326\";\"Fátima\";\"main\"\n\"2268326\";\"Fatima\";\"ascii\"\n\"2268326\";\"Phatima\";\"other\"\n\"2268326\";\"fatima\";\"other\"\n\"2268326\";\"hua de ma\";\"other\"\n\"2268326\";\"Φάτιμα\";\"other\"\n\"2268326\";\"Фатима\";\"other\"\n\"2268326\";\"Фатіма\";\"other\"\n\"2268326\";\"ファティマ\";\"other\"\n\"2268326\";\"花地瑪\";\"other\"\n\"2268339\";\"Faro\";\"main\"\n\"2268339\";\"Faru\";\"other\"\n\"2268339\";\"Фару\";\"other\"\n\"2268358\";\"Famões\";\"main\"\n\"2268358\";\"Famoes\";\"ascii\"\n\"2268382\";\"Fajã da Ovelha\";\"main\"\n\"2268382\";\"Faja da Ovelha\";\"ascii\"\n\"2268382\";\"Faia da Ovelha\";\"other\"\n\"2268382\";\"Fazhan-da-Ovel'ja\";\"other\"\n\"2268382\";\"Фажан-да-Овелья\";\"other\"\n\"2268406\";\"Évora\";\"main\"\n\"2268406\";\"Evora\";\"ascii\"\n\"2268406\";\"Ebora\";\"other\"\n\"2268406\";\"Ehvora\";\"other\"\n\"2268406\";\"Ébora\";\"other\"\n\"2268406\";\"Эвора\";\"other\"\n\"2268411\";\"Estremoz\";\"main\"\n\"2268419\";\"Estreito da Calheta\";\"main\"\n\"2268419\";\"Ehshtrejtu-da-Kal'eta\";\"other\"\n\"2268419\";\"Эштрейту-да-Кальета\";\"other\"\n\"2268436\";\"Estoril\";\"main\"\n\"2268436\";\"Ehshtoril\";\"other\"\n\"2268436\";\"Eshhoril\";\"other\"\n\"2268436\";\"Estoris\";\"other\"\n\"2268436\";\"Estorís\";\"other\"\n\"2268436\";\"Estroil\";\"other\"\n\"2268436\";\"esutoriru\";\"other\"\n\"2268436\";\"Εστορίλ\";\"other\"\n\"2268436\";\"Ещорил\";\"other\"\n\"2268436\";\"Эшторил\";\"other\"\n\"2268436\";\"エストリル\";\"other\"\n\"2268437\";\"Estômbar\";\"main\"\n\"2268437\";\"Estombar\";\"ascii\"\n\"2268563\";\"Ericeira\";\"main\"\n\"2268575\";\"Entroncamento\";\"main\"\n\"2268575\";\"Entrocamento\";\"other\"\n\"2268615\";\"Elvas\";\"main\"\n\"2268746\";\"Curral das Freiras\";\"main\"\n\"2268746\";\"Kurral-dash-Frejrash\";\"other\"\n\"2268746\";\"Куррал-даш-Фрейраш\";\"other\"\n\"2268916\";\"Costa de Caparica\";\"main\"\n\"2268946\";\"Coruche\";\"main\"\n\"2269041\";\"Corroios\";\"main\"\n\"2269142\";\"Colares\";\"main\"\n\"2269282\";\"Charneca\";\"main\"\n\"2269282\";\"Charneca de Caparica\";\"other\"\n\"2269282\";\"Sharneka\";\"other\"\n\"2269282\";\"Шарнека\";\"other\"\n\"2269413\";\"Cercal\";\"main\"\n\"2269413\";\"Cercal do Alentejo\";\"other\"\n\"2269494\";\"Castro Verde\";\"main\"\n\"2269496\";\"Castro Marim\";\"main\"\n\"2269508\";\"Castelo de Vide\";\"main\"\n\"2269508\";\"Castello de Vide\";\"other\"\n\"2269508\";\"Kashtelu-de-Vide\";\"other\"\n\"2269508\";\"Каштелу-де-Виде\";\"other\"\n\"2269514\";\"Castelo Branco\";\"main\"\n\"2269514\";\"Kashtelu-Branku\";\"other\"\n\"2269514\";\"Каштелу-Бранку\";\"other\"\n\"2269556\";\"Castanheira do Ribatejo\";\"main\"\n\"2269556\";\"Castanheira\";\"other\"\n\"2269557\";\"Castanheira de Pêra\";\"main\"\n\"2269557\";\"Castanheira de Pera\";\"ascii\"\n\"2269557\";\"Castanheira\";\"other\"\n\"2269594\";\"Cascais\";\"main\"\n\"2269594\";\"Cascaes\";\"other\"\n\"2269594\";\"Kashkajsh\";\"other\"\n\"2269594\";\"Kaskais\";\"other\"\n\"2269594\";\"kasukaisu\";\"other\"\n\"2269594\";\"Κασκάις\";\"other\"\n\"2269594\";\"Кашкайш\";\"other\"\n\"2269594\";\"カスカイス\";\"other\"\n\"2269946\";\"Carvoeiro\";\"main\"\n\"2269946\";\"Karvoejro\";\"other\"\n\"2269946\";\"Карвоейро\";\"other\"\n\"2270023\";\"Cartaxo\";\"main\"\n\"2270084\";\"Carregado\";\"main\"\n\"2270157\";\"Carnaxide\";\"main\"\n\"2270157\";\"Karnashide\";\"other\"\n\"2270157\";\"Карнашиде\";\"other\"\n\"2270184\";\"Carcavelos\";\"main\"\n\"2270211\";\"Caranguejeira\";\"main\"\n\"2270229\";\"Caparica\";\"main\"\n\"2270258\";\"Caniço\";\"main\"\n\"2270258\";\"Canico\";\"ascii\"\n\"2270266\";\"Caniçal\";\"main\"\n\"2270266\";\"Canical\";\"ascii\"\n\"2270266\";\"Kanisal\";\"other\"\n\"2270266\";\"Канисал\";\"other\"\n\"2270290\";\"Caneças\";\"main\"\n\"2270290\";\"Canecas\";\"ascii\"\n\"2270336\";\"Campo Maior\";\"main\"\n\"2270361\";\"Campanário\";\"main\"\n\"2270361\";\"Campanario\";\"ascii\"\n\"2270377\";\"Camarate\";\"main\"\n\"2270377\";\"Camrate\";\"other\"\n\"2270377\";\"Kamarate\";\"other\"\n\"2270377\";\"Камарате\";\"other\"\n\"2270380\";\"Câmara de Lobos\";\"main\"\n\"2270380\";\"Camara de Lobos\";\"ascii\"\n\"2270380\";\"Kamara nte Lompos\";\"other\"\n\"2270380\";\"Kamara-de-Lobos\";\"other\"\n\"2270380\";\"Καμάρα ντε Λόμπος\";\"other\"\n\"2270380\";\"Камара-де-Лобос\";\"other\"\n\"2270385\";\"Camacha\";\"main\"\n\"2270386\";\"Camacha\";\"main\"\n\"2270386\";\"Kamasha\";\"other\"\n\"2270386\";\"Камаша\";\"other\"\n\"2270408\";\"Calheta\";\"main\"\n\"2270408\";\"Kal'eta\";\"other\"\n\"2270408\";\"Кальета\";\"other\"\n\"2270437\";\"Caldas da Rainha\";\"main\"\n\"2270437\";\"Caldad da Rainha\";\"other\"\n\"2270486\";\"Cacilhas\";\"main\"\n\"2270503\";\"Cacém\";\"main\"\n\"2270503\";\"Cacem\";\"ascii\"\n\"2270649\";\"Bucelas\";\"main\"\n\"2270649\";\"Bucellas\";\"other\"\n\"2270755\";\"Borba\";\"main\"\n\"2270755\";\"Borda\";\"other\"\n\"2270755\";\"Борба\";\"other\"\n\"2270770\";\"Bombarral\";\"main\"\n\"2270770\";\"Rombarral\";\"other\"\n\"2270774\";\"Boliqueime\";\"main\"\n\"2270813\";\"Bobadela\";\"main\"\n\"2270935\";\"Benedita\";\"main\"\n\"2270935\";\"Benedito\";\"other\"\n\"2270940\";\"Benavente\";\"main\"\n\"2270981\";\"Belas\";\"main\"\n\"2270985\";\"Beja\";\"main\"\n\"2271006\";\"Batalha\";\"main\"\n\"2271006\";\"Mpatalia\";\"other\"\n\"2271006\";\"Μπατάλια\";\"other\"\n\"2271071\";\"Barreiro\";\"main\"\n\"2271071\";\"Barrejru\";\"other\"\n\"2271071\";\"ba lei lu\";\"other\"\n\"2271071\";\"Баррейру\";\"other\"\n\"2271071\";\"巴雷鲁\";\"other\"\n\"2271140\";\"Barcarena\";\"main\"\n\"2271337\";\"Azambuja\";\"main\"\n\"2271350\";\"Aveiras de Cima\";\"main\"\n\"2271354\";\"Atouguia da Baleia\";\"main\"\n\"2271354\";\"Atouguia\";\"other\"\n\"2271438\";\"Arruda dos Vinhos\";\"main\"\n\"2271438\";\"Arruda\";\"other\"\n\"2271473\";\"Arrentela\";\"main\"\n\"2271473\";\"Arrentella\";\"other\"\n\"2271473\";\"Аррентела\";\"other\"\n\"2271542\";\"Armação de Pêra\";\"main\"\n\"2271542\";\"Armacao de Pera\";\"ascii\"\n\"2271598\";\"Arco da Calheta\";\"main\"\n\"2271598\";\"Arku-da-Kal'eta\";\"other\"\n\"2271598\";\"Арку-да-Кальета\";\"other\"\n\"2271623\";\"Apelação\";\"main\"\n\"2271623\";\"Apelacao\";\"ascii\"\n\"2271680\";\"Amora\";\"main\"\n\"2271682\";\"Amor\";\"main\"\n\"2271772\";\"Amadora\";\"main\"\n\"2271772\";\"Αμαδόρα\";\"other\"\n\"2271772\";\"Амадора\";\"other\"\n\"2271782\";\"Alvor\";\"main\"\n\"2271841\";\"Alter do Chão\";\"main\"\n\"2271841\";\"Alter do Chao\";\"ascii\"\n\"2271878\";\"Alpiarça\";\"main\"\n\"2271878\";\"Alpiarca\";\"ascii\"\n\"2271926\";\"Almeirim\";\"main\"\n\"2271945\";\"Almargem\";\"main\"\n\"2271945\";\"Almargem do Bispo\";\"other\"\n\"2271947\";\"Almancil\";\"main\"\n\"2271947\";\"Almansil\";\"other\"\n\"2271961\";\"Almada\";\"main\"\n\"2271961\";\"Almanta\";\"other\"\n\"2271961\";\"Αλμάντα\";\"other\"\n\"2271961\";\"Алмада\";\"other\"\n\"2271965\";\"Aljustrel\";\"main\"\n\"2271966\";\"Aljubarrota\";\"main\"\n\"2271968\";\"Aljezur\";\"main\"\n\"2271970\";\"Alhos Vedros\";\"main\"\n\"2271975\";\"Alhandra\";\"main\"\n\"2271985\";\"Algés\";\"main\"\n\"2271985\";\"Alges\";\"ascii\"\n\"2272010\";\"Alferrarede\";\"main\"\n\"2272036\";\"Alenquer\";\"main\"\n\"2272091\";\"Aldeia de Paio Pires\";\"main\"\n\"2272091\";\"Aldea de Paio Pires\";\"other\"\n\"2272091\";\"Paio Pires\";\"other\"\n\"2272143\";\"Alcoentre\";\"main\"\n\"2272144\";\"Alcochete\";\"main\"\n\"2272147\";\"Alcobaça\";\"main\"\n\"2272147\";\"Alcobaca\";\"ascii\"\n\"2272189\";\"Alcanena\";\"main\"\n\"2272190\";\"Alcanede\";\"main\"\n\"2272197\";\"Alcains\";\"main\"\n\"2272212\";\"Alcácer do Sal\";\"main\"\n\"2272212\";\"Alcacer do Sal\";\"ascii\"\n\"2272212\";\"Alcacer da Sal\";\"other\"\n\"2272212\";\"Alcácer da Sal\";\"other\"\n\"2272215\";\"Alcabideche\";\"main\"\n\"2272215\";\"Alkabideshe\";\"other\"\n\"2272215\";\"Aloabideche\";\"other\"\n\"2272215\";\"Aloabidèche\";\"other\"\n\"2272215\";\"Алкабидеше\";\"other\"\n\"2272222\";\"Albufeira\";\"main\"\n\"2272222\";\"albwfyra\";\"other\"\n\"2272222\";\"آلبوفیرا\";\"other\"\n\"2272379\";\"A dos Cunhados\";\"main\"\n\"2272379\";\"Aldeia dos Cunhados\";\"other\"\n\"2272447\";\"Abrantes\";\"main\"\n\"2732241\";\"Vizela\";\"main\"\n\"2732241\";\"Sao Jorge\";\"other\"\n\"2732241\";\"São Jorge\";\"other\"\n\"2732241\";\"Визела\";\"other\"\n\"2732265\";\"Viseu\";\"main\"\n\"2732265\";\"Vizeu\";\"other\"\n\"2732265\";\"Vizeu Celorico\";\"other\"\n\"2732265\";\"Визеу\";\"other\"\n\"2732312\";\"Vilela\";\"main\"\n\"2732326\";\"Vila Verde\";\"main\"\n\"2732404\";\"Vilarinho\";\"main\"\n\"2732438\";\"Vila Real\";\"main\"\n\"2732438\";\"Bila Real\";\"other\"\n\"2732438\";\"Vila-Real\";\"other\"\n\"2732438\";\"Βίλα Ρεάλ\";\"other\"\n\"2732438\";\"Вила-Реал\";\"other\"\n\"2732444\";\"Vilar do Paraíso\";\"main\"\n\"2732444\";\"Vilar do Paraiso\";\"ascii\"\n\"2732475\";\"Vilar de Andorinho\";\"main\"\n\"2732475\";\"Andorinho\";\"other\"\n\"2732475\";\"Vilar de Andorinha\";\"other\"\n\"2732475\";\"Villar d'Andorinha\";\"other\"\n\"2732475\";\"Villar d'Andorinho\";\"other\"\n\"2732475\";\"Villar d’Andorinha\";\"other\"\n\"2732475\";\"Villar d’Andorinho\";\"other\"\n\"2732516\";\"Vila Praia de Âncora\";\"main\"\n\"2732516\";\"Vila Praia de Ancora\";\"ascii\"\n\"2732516\";\"Ancora\";\"other\"\n\"2732516\";\"Praia de Ancora\";\"other\"\n\"2732516\";\"Praia de Âncora\";\"other\"\n\"2732516\";\"Âncora\";\"other\"\n\"2732544\";\"Vila Nova de Gaia\";\"main\"\n\"2732544\";\"Bila Noba nte Nkaia\";\"other\"\n\"2732544\";\"Gaia\";\"other\"\n\"2732544\";\"Portus Cale\";\"other\"\n\"2732544\";\"Vila-Nova-de-Gajja\";\"other\"\n\"2732544\";\"Βίλα Νόβα ντε Γκάια\";\"other\"\n\"2732544\";\"Вила-Нова-де-Гайя\";\"other\"\n\"2732547\";\"Vila Nova de Famalicão\";\"main\"\n\"2732547\";\"Vila Nova de Famalicao\";\"ascii\"\n\"2732547\";\"Famalicao\";\"other\"\n\"2732547\";\"Famalicão\";\"other\"\n\"2732547\";\"Vila Nova de Tamalicao\";\"other\"\n\"2732547\";\"Vila Nova de Tamalicão\";\"other\"\n\"2732551\";\"Vila Nova da Telha\";\"main\"\n\"2732626\";\"Vila Frescainha\";\"main\"\n\"2732626\";\"Sao Martinho\";\"other\"\n\"2732626\";\"Sao Martinho Vila Frescainha\";\"other\"\n\"2732626\";\"São Martinho\";\"other\"\n\"2732626\";\"São Martinho Vila Frescainha\";\"other\"\n\"2732649\";\"Vila do Conde\";\"main\"\n\"2732649\";\"Bila nto Konte\";\"other\"\n\"2732649\";\"Vila-du-Konde\";\"other\"\n\"2732649\";\"Βίλα ντο Κόντε\";\"other\"\n\"2732649\";\"Вила-ду-Конде\";\"other\"\n\"2732705\";\"Vila Chã\";\"main\"\n\"2732705\";\"Vila Cha\";\"ascii\"\n\"2732773\";\"Viana do Castelo\";\"main\"\n\"2732773\";\"Vianna do Castello\";\"other\"\n\"2732965\";\"Valpaços\";\"main\"\n\"2732965\";\"Valpacos\";\"ascii\"\n\"2732965\";\"Valpassos\";\"other\"\n\"2732978\";\"Valongo\";\"main\"\n\"2732978\";\"Valonga\";\"other\"\n\"2732978\";\"Valongu\";\"other\"\n\"2732978\";\"Валонгу\";\"other\"\n\"2732980\";\"Valongo\";\"main\"\n\"2733038\";\"Válega\";\"main\"\n\"2733038\";\"Valega\";\"ascii\"\n\"2733153\";\"Vale de Cambra\";\"main\"\n\"2733153\";\"Vila de Vale de Cambra\";\"other\"\n\"2733249\";\"Valbom\";\"main\"\n\"2733262\";\"Valadares\";\"main\"\n\"2733272\";\"Vagos\";\"main\"\n\"2733304\";\"Urgeses\";\"main\"\n\"2733533\";\"Tondela\";\"main\"\n\"2733533\";\"Тондела\";\"other\"\n\"2733601\";\"Telões\";\"main\"\n\"2733601\";\"Teloes\";\"ascii\"\n\"2733628\";\"Teixoso\";\"main\"\n\"2733660\";\"Tavarede\";\"main\"\n\"2733812\";\"Souto\";\"main\"\n\"2733851\";\"Soure\";\"main\"\n\"2733851\";\"Σούρε\";\"other\"\n\"2733902\";\"Sobreira\";\"main\"\n\"2733941\";\"Sobrado\";\"main\"\n\"2733992\";\"Silvalde\";\"main\"\n\"2734028\";\"Serzedo\";\"main\"\n\"2734032\";\"Serzedelo\";\"main\"\n\"2734032\";\"Cerzedelo\";\"other\"\n\"2734069\";\"Seroa\";\"main\"\n\"2734106\";\"Sequeira\";\"main\"\n\"2734140\";\"Senhora da Hora\";\"main\"\n\"2734170\";\"Selho\";\"main\"\n\"2734170\";\"Sao Cristovao\";\"other\"\n\"2734170\";\"São Cristóvão\";\"other\"\n\"2734215\";\"Seia\";\"main\"\n\"2734246\";\"Sátão\";\"main\"\n\"2734246\";\"Satao\";\"ascii\"\n\"2734246\";\"Satam\";\"other\"\n\"2734246\";\"Vila da Igreja\";\"other\"\n\"2734246\";\"Vila de Igreja\";\"other\"\n\"2734338\";\"São Roque\";\"main\"\n\"2734338\";\"Sao Roque\";\"ascii\"\n\"2734339\";\"São Romão do Coronado\";\"main\"\n\"2734339\";\"Sao Romao do Coronado\";\"ascii\"\n\"2734339\";\"Coronado\";\"other\"\n\"2734351\";\"São Pedro do Sul\";\"main\"\n\"2734351\";\"Sao Pedro do Sul\";\"ascii\"\n\"2734351\";\"Santo Pedro do Sul\";\"other\"\n\"2734363\";\"São Pedro da Cova\";\"main\"\n\"2734363\";\"Sao Pedro da Cova\";\"ascii\"\n\"2734395\";\"São Miguel do Couto\";\"main\"\n\"2734395\";\"Sao Miguel do Couto\";\"ascii\"\n\"2734434\";\"São Mamede de Infesta\";\"main\"\n\"2734434\";\"Sao Mamede de Infesta\";\"ascii\"\n\"2734434\";\"San-Mamed-de-Infeshta\";\"other\"\n\"2734434\";\"Santo Mamede de Infesta\";\"other\"\n\"2734434\";\"Sao Mamede\";\"other\"\n\"2734434\";\"Sao Mamede da Infesta\";\"other\"\n\"2734434\";\"São Mamede\";\"other\"\n\"2734434\";\"São Mamede da Infesta\";\"other\"\n\"2734434\";\"Сан-Мамед-де-Инфешта\";\"other\"\n\"2734473\";\"São João de Ver\";\"main\"\n\"2734473\";\"Sao Joao de Ver\";\"ascii\"\n\"2734484\";\"São João da Madeira\";\"main\"\n\"2734484\";\"Sao Joao da Madeira\";\"ascii\"\n\"2734484\";\"San-Zhuan-da-Madejra\";\"other\"\n\"2734484\";\"Santo Joao da Madeira\";\"other\"\n\"2734484\";\"Santo João da Madeira\";\"other\"\n\"2734484\";\"Sao Joao da Madeiro\";\"other\"\n\"2734484\";\"Sao Joao de Madeira\";\"other\"\n\"2734484\";\"São João da Madeiro\";\"other\"\n\"2734484\";\"São João de Madeira\";\"other\"\n\"2734484\";\"Сан-Жуан-да-Мадейра\";\"other\"\n\"2734493\";\"São João\";\"main\"\n\"2734493\";\"Sao Joao\";\"ascii\"\n\"2734523\";\"São Félix da Marinha\";\"main\"\n\"2734523\";\"Sao Felix da Marinha\";\"ascii\"\n\"2734523\";\"Marinha\";\"other\"\n\"2734570\";\"Santo Tirso\";\"main\"\n\"2734729\";\"Santa Cruz do Bispo\";\"main\"\n\"2734788\";\"Sangalhos\";\"main\"\n\"2734803\";\"Sandim\";\"main\"\n\"2734809\";\"Sande\";\"main\"\n\"2734858\";\"Salreu\";\"main\"\n\"2735012\";\"Ronfe\";\"main\"\n\"2735012\";\"Roufe\";\"other\"\n\"2735083\";\"Rio Tinto\";\"main\"\n\"2735088\";\"Rio Meão\";\"main\"\n\"2735088\";\"Rio Meao\";\"ascii\"\n\"2735116\";\"Rio de Loba\";\"main\"\n\"2735167\";\"Ribeirão\";\"main\"\n\"2735167\";\"Ribeirao\";\"ascii\"\n\"2735340\";\"Refojos de Basto\";\"main\"\n\"2735366\";\"Recarei\";\"main\"\n\"2735377\";\"Rebordosa\";\"main\"\n\"2735377\";\"Rebordoza\";\"other\"\n\"2735415\";\"Real\";\"main\"\n\"2735752\";\"Prado\";\"main\"\n\"2735787\";\"Póvoa de Varzim\";\"main\"\n\"2735787\";\"Povoa de Varzim\";\"ascii\"\n\"2735787\";\"Poboa nte Barzim\";\"other\"\n\"2735787\";\"Villa Euracini\";\"other\"\n\"2735787\";\"pwwa dwarzym\";\"other\"\n\"2735787\";\"Πόβοα ντε Βαρζίμ\";\"other\"\n\"2735787\";\"پووا دوارزیم\";\"other\"\n\"2735803\";\"Póvoa de Lanhoso\";\"main\"\n\"2735803\";\"Povoa de Lanhoso\";\"ascii\"\n\"2735943\";\"Porto\";\"main\"\n\"2735943\";\"Oporto\";\"other\"\n\"2735943\";\"Portu\";\"other\"\n\"2735943\";\"Portus Cale\";\"other\"\n\"2735943\";\"bo tu\";\"other\"\n\"2735943\";\"bwrtw\";\"other\"\n\"2735943\";\"poruto\";\"other\"\n\"2735943\";\"pwrtw\";\"other\"\n\"2735943\";\"Πορτο\";\"other\"\n\"2735943\";\"Πόρτο\";\"other\"\n\"2735943\";\"Порто\";\"other\"\n\"2735943\";\"Порту\";\"other\"\n\"2735943\";\"פורטו\";\"other\"\n\"2735943\";\"بورتو\";\"other\"\n\"2735943\";\"پورتو\";\"other\"\n\"2735943\";\"პორტუ\";\"other\"\n\"2735943\";\"ポルト\";\"other\"\n\"2735943\";\"波圖\";\"other\"\n\"2736041\";\"Ponte do Lima\";\"main\"\n\"2736041\";\"Ponte de Lima\";\"other\"\n\"2736041\";\"Понте де Лима\";\"other\"\n\"2736067\";\"Ponte\";\"main\"\n\"2736124\";\"Poiares\";\"main\"\n\"2736316\";\"Peso da Régua\";\"main\"\n\"2736316\";\"Peso da Regua\";\"ascii\"\n\"2736316\";\"Regoa\";\"other\"\n\"2736316\";\"Regua\";\"other\"\n\"2736316\";\"Régua\";\"other\"\n\"2736327\";\"Perozinho\";\"main\"\n\"2736327\";\"Perosinho\";\"other\"\n\"2736391\";\"Perafita\";\"main\"\n\"2736469\";\"Penafiel\";\"main\"\n\"2736469\";\"Penaphiel\";\"other\"\n\"2736469\";\"Πεναφιέλ\";\"other\"\n\"2736520\";\"Pedrouços\";\"main\"\n\"2736520\";\"Pedroucos\";\"ascii\"\n\"2736521\";\"Pedroso\";\"main\"\n\"2736666\";\"Pardilhó\";\"main\"\n\"2736666\";\"Pardilho\";\"ascii\"\n\"2736792\";\"Pampilhosa do Botão\";\"main\"\n\"2736792\";\"Pampilhosa do Botao\";\"ascii\"\n\"2736792\";\"Pampilhosa\";\"other\"\n\"2736792\";\"Pampilhosa do Bobao\";\"other\"\n\"2736792\";\"Pampilhosa do Bobão\";\"other\"\n\"2736883\";\"Paços de Ferreira\";\"main\"\n\"2736883\";\"Pacos de Ferreira\";\"ascii\"\n\"2736883\";\"Pasos nte Phereira\";\"other\"\n\"2736883\";\"Πάσος ντε Φερέϊρα\";\"other\"\n\"2736884\";\"Paços de Brandão\";\"main\"\n\"2736884\";\"Pacos de Brandao\";\"ascii\"\n\"2736930\";\"Ovar\";\"main\"\n\"2736930\";\"Овар\";\"other\"\n\"2737033\";\"Oliveirinha\";\"main\"\n\"2737038\";\"Oliveira do Hospital\";\"main\"\n\"2737038\";\"Olibeira nto Ospital\";\"other\"\n\"2737038\";\"Ολιβέιρα ντο Όσπιταλ\";\"other\"\n\"2737039\";\"Oliveira do Douro\";\"main\"\n\"2737042\";\"Oliveira do Bairro\";\"main\"\n\"2737042\";\"Oliveira de Bairro\";\"other\"\n\"2737046\";\"Oliveira de Azemeis\";\"main\"\n\"2737046\";\"Oliveira de Azeméis\";\"other\"\n\"2737046\";\"Olivejra-de-Azemejsh\";\"other\"\n\"2737046\";\"Оливейра-де-Аземейш\";\"other\"\n\"2737053\";\"Oliveira\";\"main\"\n\"2737064\";\"Olival\";\"main\"\n\"2737088\";\"Oiã\";\"main\"\n\"2737088\";\"Oia\";\"ascii\"\n\"2737137\";\"Nogueira da Regedoura\";\"main\"\n\"2737137\";\"Nogueira\";\"other\"\n\"2737150\";\"Nogueira\";\"main\"\n\"2737184\";\"Nelas\";\"main\"\n\"2737194\";\"Negrelos\";\"main\"\n\"2737194\";\"Sao Tome\";\"other\"\n\"2737194\";\"São Tomé\";\"other\"\n\"2737268\";\"Mozelos\";\"main\"\n\"2737393\";\"Moreira de Conegos\";\"main\"\n\"2737399\";\"Moreira\";\"main\"\n\"2737523\";\"Monção\";\"main\"\n\"2737523\";\"Moncao\";\"ascii\"\n\"2737523\";\"Monsao\";\"other\"\n\"2737523\";\"Monsão\";\"other\"\n\"2737599\";\"Mogadouro\";\"main\"\n\"2737639\";\"Mirandela\";\"main\"\n\"2737639\";\"Mirandella\";\"other\"\n\"2737639\";\"Мирандела\";\"other\"\n\"2737641\";\"Miranda do Corvo\";\"main\"\n\"2737641\";\"Miranta nto Korbo\";\"other\"\n\"2737641\";\"Μιράντα ντο Κόρβο\";\"other\"\n\"2737651\";\"Mira\";\"main\"\n\"2737651\";\"Dunas de Mira\";\"other\"\n\"2737669\";\"Milheirós de Poiares\";\"main\"\n\"2737669\";\"Milheiros de Poiares\";\"ascii\"\n\"2737671\";\"Milheirós\";\"main\"\n\"2737671\";\"Milheiros\";\"ascii\"\n\"2737769\";\"Meinedo\";\"main\"\n\"2737809\";\"Mealhada\";\"main\"\n\"2737810\";\"Meadela\";\"main\"\n\"2737824\";\"Matosinhos\";\"main\"\n\"2737824\";\"Matozinhos\";\"other\"\n\"2737904\";\"Marinhas\";\"main\"\n\"2737914\";\"Margaride\";\"main\"\n\"2737936\";\"Manteigas\";\"main\"\n\"2737936\";\"Mantejgas\";\"other\"\n\"2737936\";\"Мантейгас\";\"other\"\n\"2737949\";\"Mangualde\";\"main\"\n\"2737949\";\"Мангуалде\";\"other\"\n\"2738014\";\"Maia\";\"main\"\n\"2738014\";\"Majja\";\"other\"\n\"2738014\";\"Майя\";\"other\"\n\"2738038\";\"Madalena\";\"main\"\n\"2738052\";\"Macieira de Cambra\";\"main\"\n\"2738082\";\"Macedo de Cavaleiros\";\"main\"\n\"2738106\";\"Lustosa\";\"main\"\n\"2738154\";\"Lousã\";\"main\"\n\"2738154\";\"Lousa\";\"ascii\"\n\"2738154\";\"Louza\";\"other\"\n\"2738154\";\"Louzã\";\"other\"\n\"2738154\";\"Λούζα\";\"other\"\n\"2738159\";\"Lourosa\";\"main\"\n\"2738159\";\"Louroza\";\"other\"\n\"2738208\";\"Lorvão\";\"main\"\n\"2738208\";\"Lorvao\";\"ascii\"\n\"2738221\";\"Lordelo\";\"main\"\n\"2738221\";\"Lordello\";\"other\"\n\"2738224\";\"Lordelo\";\"main\"\n\"2738277\";\"Lobão\";\"main\"\n\"2738277\";\"Lobao\";\"ascii\"\n\"2738347\";\"Leça do Bailio\";\"main\"\n\"2738347\";\"Leca do Bailio\";\"ascii\"\n\"2738347\";\"Leca do Balio\";\"other\"\n\"2738347\";\"Leca do Belio\";\"other\"\n\"2738347\";\"Leça do Balio\";\"other\"\n\"2738348\";\"Leça da Palmeira\";\"main\"\n\"2738348\";\"Leca da Palmeira\";\"ascii\"\n\"2738348\";\"Leca\";\"other\"\n\"2738348\";\"Leca de Palmeira\";\"other\"\n\"2738348\";\"Leça\";\"other\"\n\"2738348\";\"Leça de Palmeira\";\"other\"\n\"2738360\";\"Lavra\";\"main\"\n\"2738362\";\"Lavos\";\"main\"\n\"2738459\";\"Lamego\";\"main\"\n\"2738479\";\"Lamas\";\"main\"\n\"2738643\";\"Jovim\";\"main\"\n\"2738643\";\"Juvim\";\"other\"\n\"2738658\";\"Joane\";\"main\"\n\"2738707\";\"Ílhavo\";\"main\"\n\"2738707\";\"Ilhavo\";\"ascii\"\n\"2738737\";\"Gulpilhares\";\"main\"\n\"2738752\";\"Guimarães\";\"main\"\n\"2738752\";\"Guimaraes\";\"ascii\"\n\"2738752\";\"Gimarajnsh\";\"other\"\n\"2738752\";\"Guimarais\";\"other\"\n\"2738752\";\"Guimarãis\";\"other\"\n\"2738752\";\"Nkimaraes\";\"other\"\n\"2738752\";\"Γκιμαράες\";\"other\"\n\"2738752\";\"Гимарайнш\";\"other\"\n\"2738766\";\"Guifões\";\"main\"\n\"2738766\";\"Guifoes\";\"ascii\"\n\"2738785\";\"Guarda\";\"main\"\n\"2738785\";\"guaruda\";\"other\"\n\"2738785\";\"Гуарда\";\"other\"\n\"2738785\";\"グアルダ\";\"other\"\n\"2738803\";\"Grijó\";\"main\"\n\"2738803\";\"Grijo\";\"ascii\"\n\"2738925\";\"Gondomar\";\"main\"\n\"2738925\";\"Гондомар\";\"other\"\n\"2738983\";\"Godim\";\"main\"\n\"2739034\";\"Gemunde\";\"main\"\n\"2739080\";\"Gandra\";\"main\"\n\"2739080\";\"Гандра\";\"other\"\n\"2739118\";\"Galegos\";\"main\"\n\"2739118\";\"Santa Maria\";\"other\"\n\"2739152\";\"Gafanha da Nazaré\";\"main\"\n\"2739152\";\"Gafanha da Nazare\";\"ascii\"\n\"2739152\";\"Gafanha\";\"other\"\n\"2739153\";\"Gafanha da Encarnação\";\"main\"\n\"2739153\";\"Gafanha da Encarnacao\";\"ascii\"\n\"2739187\";\"Fundão\";\"main\"\n\"2739187\";\"Fundao\";\"ascii\"\n\"2739285\";\"Freamunde\";\"main\"\n\"2739285\";\"Фреамунде\";\"other\"\n\"2739286\";\"Frazão\";\"main\"\n\"2739286\";\"Frazao\";\"ascii\"\n\"2739333\";\"Foz do Sousa\";\"main\"\n\"2739566\";\"Figueiró\";\"main\"\n\"2739566\";\"Figueiro\";\"ascii\"\n\"2739590\";\"Figueira da Foz\";\"main\"\n\"2739590\";\"Figejra-da-Fosh\";\"other\"\n\"2739590\";\"Phinkeira nta Phous\";\"other\"\n\"2739590\";\"Φιγκέιρα ντα Φους\";\"other\"\n\"2739590\";\"Фигейра-да-Фош\";\"other\"\n\"2739613\";\"Fiães\";\"main\"\n\"2739613\";\"Fiaes\";\"ascii\"\n\"2739613\";\"Fiais\";\"other\"\n\"2739613\";\"Fiãis\";\"other\"\n\"2739636\";\"Ferreiros\";\"main\"\n\"2739656\";\"Ferreira\";\"main\"\n\"2739723\";\"Feira\";\"main\"\n\"2739756\";\"Fânzeres\";\"main\"\n\"2739756\";\"Fanzeres\";\"ascii\"\n\"2739788\";\"Fafe\";\"main\"\n\"2739788\";\"Фафе\";\"other\"\n\"2739848\";\"Esposende\";\"main\"\n\"2739849\";\"Esposende\";\"main\"\n\"2739849\";\"Ehshpozende\";\"other\"\n\"2739849\";\"Espozende\";\"other\"\n\"2739849\";\"Эшпозенде\";\"other\"\n\"2739868\";\"Espinho\";\"main\"\n\"2739868\";\"Espinio\";\"other\"\n\"2739868\";\"Εσπίνιο\";\"other\"\n\"2739915\";\"Esmoriz\";\"main\"\n\"2739915\";\"Esmoris\";\"other\"\n\"2739997\";\"Ermezinde\";\"main\"\n\"2739997\";\"Ehrmezinde\";\"other\"\n\"2739997\";\"Эрмезинде\";\"other\"\n\"2740031\";\"Eixo\";\"main\"\n\"2740159\";\"Darque\";\"main\"\n\"2740174\";\"Custoias\";\"main\"\n\"2740221\";\"Cucujães\";\"main\"\n\"2740221\";\"Cucujaes\";\"ascii\"\n\"2740221\";\"Couto de Cocujaes\";\"other\"\n\"2740221\";\"Couto de Cocujães\";\"other\"\n\"2740313\";\"Covilhã\";\"main\"\n\"2740313\";\"Covilha\";\"ascii\"\n\"2740313\";\"Kovil'jan\";\"other\"\n\"2740313\";\"Ковильян\";\"other\"\n\"2740519\";\"Cortegaça\";\"main\"\n\"2740519\";\"Cortegaca\";\"ascii\"\n\"2740593\";\"Condeixa a Nova\";\"main\"\n\"2740593\";\"Condeixa\";\"other\"\n\"2740593\";\"Condeixa-a-Nova\";\"other\"\n\"2740637\";\"Coimbra\";\"main\"\n\"2740637\";\"Coímbra\";\"other\"\n\"2740637\";\"Coïmbra\";\"other\"\n\"2740637\";\"Koimbra\";\"other\"\n\"2740637\";\"Koimbro\";\"other\"\n\"2740637\";\"Koimpra\";\"other\"\n\"2740637\";\"Koímbra\";\"other\"\n\"2740637\";\"ke ying bu la\";\"other\"\n\"2740637\";\"koinbura\";\"other\"\n\"2740637\";\"Κόιμπρα\";\"other\"\n\"2740637\";\"Коимбра\";\"other\"\n\"2740637\";\"コインブラ\";\"other\"\n\"2740637\";\"科英布拉\";\"other\"\n\"2740761\";\"Chaves\";\"main\"\n\"2740974\";\"Castro Daire\";\"main\"\n\"2740992\";\"Castelões de Cepeda\";\"main\"\n\"2740992\";\"Casteloes de Cepeda\";\"ascii\"\n\"2741266\";\"Carvalhosa\";\"main\"\n\"2741405\";\"Carregal do Sal\";\"main\"\n\"2741547\";\"Cantanhede\";\"main\"\n\"2741551\";\"Canidelo\";\"main\"\n\"2741551\";\"Canidello\";\"other\"\n\"2741566\";\"Canelas\";\"main\"\n\"2741583\";\"Candoso\";\"main\"\n\"2741583\";\"Santiago\";\"other\"\n\"2741648\";\"Campo\";\"main\"\n\"2741649\";\"Campo\";\"main\"\n\"2741724\";\"Calendário\";\"main\"\n\"2741724\";\"Calendario\";\"ascii\"\n\"2741728\";\"Caldelas\";\"main\"\n\"2741738\";\"Caldas de Vizela\";\"main\"\n\"2741738\";\"Sao Miguel\";\"other\"\n\"2741738\";\"São Miguel\";\"other\"\n\"2741961\";\"Buarcos\";\"main\"\n\"2741985\";\"Brito\";\"main\"\n\"2742024\";\"Branca\";\"main\"\n\"2742027\";\"Bragança\";\"main\"\n\"2742027\";\"Braganca\";\"ascii\"\n\"2742027\";\"Bragance\";\"other\"\n\"2742027\";\"Браганца\";\"other\"\n\"2742032\";\"Braga\";\"main\"\n\"2742032\";\"Bracara Augusta\";\"other\"\n\"2742032\";\"Mpranka\";\"other\"\n\"2742032\";\"braga\";\"other\"\n\"2742032\";\"buraga\";\"other\"\n\"2742032\";\"Μπράγκα\";\"other\"\n\"2742032\";\"Брага\";\"other\"\n\"2742032\";\"براگا\";\"other\"\n\"2742032\";\"ブラガ\";\"other\"\n\"2742051\";\"Bougado\";\"main\"\n\"2742309\";\"Beduido\";\"main\"\n\"2742330\";\"Barrosas\";\"main\"\n\"2742330\";\"Santa Eulalia\";\"other\"\n\"2742330\";\"Santa Eulália\";\"other\"\n\"2742416\";\"Barcelos\";\"main\"\n\"2742458\";\"Baltar\";\"main\"\n\"2742506\";\"Baguim do Monte\";\"main\"\n\"2742506\";\"Baguim\";\"other\"\n\"2742557\";\"Azenha\";\"main\"\n\"2742565\";\"Avintes\";\"main\"\n\"2742577\";\"Aves\";\"main\"\n\"2742578\";\"Aver-o-Mar\";\"main\"\n\"2742578\";\"A ver-o-mar\";\"other\"\n\"2742578\";\"Abre Mar\";\"other\"\n\"2742611\";\"Aveiro\";\"main\"\n\"2742611\";\"Abeiro\";\"other\"\n\"2742611\";\"Avejru\";\"other\"\n\"2742611\";\"Αβέιρο\";\"other\"\n\"2742611\";\"Авейру\";\"other\"\n\"2742617\";\"Avanca\";\"main\"\n\"2742661\";\"Árvore\";\"main\"\n\"2742661\";\"Arvore\";\"ascii\"\n\"2742681\";\"Arrifana\";\"main\"\n\"2742702\";\"Arões\";\"main\"\n\"2742702\";\"Aroes\";\"ascii\"\n\"2742702\";\"Sao Romao\";\"other\"\n\"2742702\";\"São Romão\";\"other\"\n\"2742750\";\"Argoncilhe\";\"main\"\n\"2742757\";\"Arganil\";\"main\"\n\"2742765\";\"Areosa\";\"main\"\n\"2742765\";\"Areoza\";\"other\"\n\"2742765\";\"Ariosa\";\"other\"\n\"2742797\";\"Arcozelo\";\"main\"\n\"2742811\";\"Arcos\";\"main\"\n\"2742827\";\"Arazede\";\"main\"\n\"2742827\";\"Araxede\";\"other\"\n\"2742833\";\"Aradas\";\"main\"\n\"2742837\";\"Apúlia\";\"main\"\n\"2742837\";\"Apulia\";\"ascii\"\n\"2742856\";\"Antas\";\"main\"\n\"2742868\";\"Anta\";\"main\"\n\"2742965\";\"Amarante\";\"main\"\n\"2743076\";\"Alhadas\";\"main\"\n\"2743095\";\"Alfena\";\"main\"\n\"2743233\";\"Albergaria-a-Velha\";\"main\"\n\"2743233\";\"Albergaria\";\"other\"\n\"2743292\";\"Águeda\";\"main\"\n\"2743292\";\"Agueda\";\"ascii\"\n\"2743298\";\"Aguçadoura\";\"main\"\n\"2743298\";\"Agucadoura\";\"ascii\"\n\"2743298\";\"Agucadeira\";\"other\"\n\"2743298\";\"Agucadoira\";\"other\"\n\"2743298\";\"Aguçadeira\";\"other\"\n\"2743298\";\"Aguçadoira\";\"other\"\n\"2743304\";\"Águas Santas\";\"main\"\n\"2743304\";\"Aguas Santas\";\"ascii\"\n\"2743325\";\"Aguada de Cima\";\"main\"\n\"2743407\";\"Adaúfe\";\"main\"\n\"2743407\";\"Adaufe\";\"ascii\"\n\"2743428\";\"Abraveses\";\"main\"\n\"3372472\";\"Vila Franca do Campo\";\"main\"\n\"3372472\";\"Villa Franca do Campo\";\"other\"\n\"3372589\";\"São Roque do Pico\";\"main\"\n\"3372589\";\"Sao Roque do Pico\";\"ascii\"\n\"3372589\";\"San Roque\";\"other\"\n\"3372589\";\"San-Roke-du-Piku\";\"other\"\n\"3372589\";\"Sao Roque\";\"other\"\n\"3372589\";\"São Roque\";\"other\"\n\"3372589\";\"Сан-Роке-ду-Пику\";\"other\"\n\"3372677\";\"Rosto de Cão\";\"main\"\n\"3372677\";\"Rosto de Cao\";\"ascii\"\n\"3372677\";\"Rosto do Cao\";\"other\"\n\"3372677\";\"Rosto do Cão\";\"other\"\n\"3372707\";\"Ribeira Grande\";\"main\"\n\"3372745\";\"Rabo de Peixe\";\"main\"\n\"3372745\";\"Ribo de Peixe\";\"other\"\n\"3372760\";\"Praia da Vitória\";\"main\"\n\"3372760\";\"Praia da Vitoria\";\"ascii\"\n\"3372760\";\"Praia\";\"other\"\n\"3372760\";\"Praia da Victoria\";\"other\"\n\"3372760\";\"Vila da Praia da Victoria\";\"other\"\n\"3372760\";\"Vila da Praia da Vitoria\";\"other\"\n\"3372760\";\"Vila da Praia da Vitória\";\"other\"\n\"3372783\";\"Ponta Delgada\";\"main\"\n\"3372908\";\"Madalena\";\"main\"\n\"3372908\";\"Magdalena\";\"other\"\n\"3372964\";\"Lagoa\";\"main\"\n\"3372988\";\"Horta\";\"main\"\n\"3373025\";\"Furnas\";\"main\"\n\"3373025\";\"Furnash\";\"other\"\n\"3373025\";\"Фурнаш\";\"other\"\n\"3373099\";\"Fajã de Baixo\";\"main\"\n\"3373099\";\"Faja de Baixo\";\"ascii\"\n\"3373300\";\"Biscoitos\";\"main\"\n\"3373300\";\"Biscoutos\";\"other\"\n\"3373300\";\"Bishkojtush\";\"other\"\n\"3373300\";\"Sao Pedro Biscoutos\";\"other\"\n\"3373300\";\"São Pedro Biscoutos\";\"other\"\n\"3373300\";\"Бишкойтуш\";\"other\"\n\"3373329\";\"Arrifes\";\"main\"\n\"3373329\";\"Arrafes\";\"other\"\n\"3373348\";\"Angra do Heroísmo\";\"main\"\n\"3373348\";\"Angra do Heroismo\";\"ascii\"\n\"3373348\";\"Angra\";\"other\"\n\"3373348\";\"Ankra nto Eroismo\";\"other\"\n\"3373348\";\"Άγκρα ντο Ερόϊσμο\";\"other\"\n\"6545006\";\"Vilamoura\";\"main\"\n\"6545006\";\"Vilamura\";\"other\"\n\"6545006\";\"Виламура\";\"other\"\n\"6697257\";\"Valenza\";\"main\"\n\"6697257\";\"Valensa\";\"other\"\n\"6697257\";\"Валенса\";\"other\"\n\"7117100\";\"Vila\";\"main\"\n\"1559446\";\"Koror\";\"main\"\n\"1559446\";\"Goreor\";\"other\"\n\"1559446\";\"Goror\";\"other\"\n\"1559446\";\"Koreor\";\"other\"\n\"1559446\";\"Koror City\";\"other\"\n\"1559446\";\"Koror town\";\"other\"\n\"1559446\";\"Koror village\";\"other\"\n\"1559446\";\"Kororu\";\"other\"\n\"1559446\";\"Korōru\";\"other\"\n\"1559543\";\"Ulimang\";\"main\"\n\"1559543\";\"A Ulimang\";\"other\"\n\"1559543\";\"Galap\";\"other\"\n\"1559543\";\"Uliman\";\"other\"\n\"1559785\";\"Ngaramasch\";\"main\"\n\"1559785\";\"Delutaog\";\"other\"\n\"1559785\";\"Jimusho\";\"other\"\n\"1559785\";\"Ngaramash\";\"other\"\n\"1559785\";\"Saipan\";\"other\"\n\"1559785\";\"Saipan Town\";\"other\"\n\"1559785\";\"Saipon\";\"other\"\n\"1559785\";\"Sipon\";\"other\"\n\"1559785\";\"Yubinkyoku\";\"other\"\n\"1559797\";\"Meyungs\";\"main\"\n\"1559797\";\"Amiyonsu\";\"other\"\n\"1559797\";\"Meiungs\";\"other\"\n\"1559797\";\"Meungs\";\"other\"\n\"1559797\";\"a Meungs\";\"other\"\n\"1559804\";\"Melekeok\";\"main\"\n\"1559804\";\"Artingall\";\"other\"\n\"1559804\";\"Athermal\";\"other\"\n\"1559804\";\"Athernal\";\"other\"\n\"1559804\";\"Coaengal\";\"other\"\n\"1559804\";\"Malligoyoke\";\"other\"\n\"1559804\";\"Marukiyoku\";\"other\"\n\"1559804\";\"Melekeiok\";\"other\"\n\"1559804\";\"Melekejok\";\"other\"\n\"1559804\";\"Melekiok\";\"other\"\n\"1559804\";\"Melekyok\";\"other\"\n\"1559804\";\"Meligeok\";\"other\"\n\"1559804\";\"Mgadernal\";\"other\"\n\"1559804\";\"Molegojok\";\"other\"\n\"1559804\";\"Molegoyok\";\"other\"\n\"1559804\";\"Ngadernal\";\"other\"\n\"1559962\";\"Airai\";\"main\"\n\"1559962\";\"A Irai\";\"other\"\n\"1559962\";\"Airrai\";\"other\"\n\"1559962\";\"Irrai\";\"other\"\n\"7303944\";\"Ngerulmud\";\"main\"\n\"3436547\";\"Yuty\";\"main\"\n\"3436585\";\"Ypacarai\";\"main\"\n\"3436585\";\"Ipacarai\";\"other\"\n\"3436585\";\"Ypacaray\";\"other\"\n\"3436595\";\"Yhú\";\"main\"\n\"3436595\";\"Yhu\";\"ascii\"\n\"3436616\";\"Ygatimí\";\"main\"\n\"3436616\";\"Ygatimi\";\"ascii\"\n\"3436616\";\"Igatimi\";\"other\"\n\"3436616\";\"Igatimí\";\"other\"\n\"3436616\";\"Terecany\";\"other\"\n\"3436616\";\"Terecañy\";\"other\"\n\"3436617\";\"Yegros\";\"main\"\n\"3436642\";\"Ybycuí\";\"main\"\n\"3436642\";\"Ybycui\";\"ascii\"\n\"3436642\";\"Ibycuy\";\"other\"\n\"3436642\";\"Ybycul\";\"other\"\n\"3436655\";\"Yataity del Norte\";\"main\"\n\"3436674\";\"Yaguarón\";\"main\"\n\"3436674\";\"Yaguaron\";\"ascii\"\n\"3436674\";\"Yaquaron\";\"other\"\n\"3436714\";\"Villarrica\";\"main\"\n\"3436714\";\"Vil'jarrika\";\"other\"\n\"3436714\";\"Viljarika\";\"other\"\n\"3436714\";\"Villa Rica\";\"other\"\n\"3436714\";\"Villarrica del Espiritu Santo\";\"other\"\n\"3436714\";\"Villarrica del Espíritu Santo\";\"other\"\n\"3436714\";\"Вильяррика\";\"other\"\n\"3436727\";\"Villa Florida\";\"main\"\n\"3436727\";\"Florida\";\"other\"\n\"3436728\";\"Villa Elisa\";\"main\"\n\"3436728\";\"Colonia Eliza\";\"other\"\n\"3436763\";\"Unión\";\"main\"\n\"3436763\";\"Union\";\"ascii\"\n\"3436776\";\"Trinidad\";\"main\"\n\"3436812\";\"Tobatí\";\"main\"\n\"3436812\";\"Tobati\";\"ascii\"\n\"3436812\";\"Tobaty\";\"other\"\n\"3436880\";\"Tacuatí\";\"main\"\n\"3436880\";\"Tacuati\";\"ascii\"\n\"3436880\";\"Tacuaty\";\"other\"\n\"3436927\";\"Sapucaí\";\"main\"\n\"3436927\";\"Sapucai\";\"ascii\"\n\"3436927\";\"Sapucay\";\"other\"\n\"3436943\";\"Santiago\";\"main\"\n\"3436943\";\"Santiago De Las Misiones\";\"other\"\n\"3436959\";\"Santa Rosa\";\"main\"\n\"3436959\";\"Santa Rosa de la Misiones\";\"other\"\n\"3436968\";\"Santa Rita\";\"main\"\n\"3436977\";\"Santa María\";\"main\"\n\"3436977\";\"Santa Maria\";\"ascii\"\n\"3436987\";\"Santa Elena\";\"main\"\n\"3437021\";\"San Pedro de Ycuamandiyú\";\"main\"\n\"3437021\";\"San Pedro de Ycuamandiyu\";\"ascii\"\n\"3437021\";\"San Pedro\";\"other\"\n\"3437022\";\"San Pedro del Paraná\";\"main\"\n\"3437022\";\"San Pedro del Parana\";\"ascii\"\n\"3437029\";\"San Patricio\";\"main\"\n\"3437042\";\"San Miguel\";\"main\"\n\"3437056\";\"San Lorenzo\";\"main\"\n\"3437056\";\"San Lorenzo del Campo Grande\";\"other\"\n\"3437059\";\"San Juan Nepomuceno\";\"main\"\n\"3437062\";\"San Juan del Paraná\";\"main\"\n\"3437062\";\"San Juan del Parana\";\"ascii\"\n\"3437074\";\"San José\";\"main\"\n\"3437074\";\"San Jose\";\"ascii\"\n\"3437074\";\"San Jose de los Arroyos\";\"other\"\n\"3437074\";\"San José de los Arroyos\";\"other\"\n\"3437086\";\"San Joaquín\";\"main\"\n\"3437086\";\"San Joaquin\";\"ascii\"\n\"3437088\";\"San Isidro de Curuguaty\";\"main\"\n\"3437088\";\"Curuguaty\";\"other\"\n\"3437088\";\"Villa Curuguaty\";\"other\"\n\"3437107\";\"San Cosme y Damián\";\"main\"\n\"3437107\";\"San Cosme y Damian\";\"ascii\"\n\"3437107\";\"San Cosme\";\"other\"\n\"3437120\";\"San Bernardino\";\"main\"\n\"3437127\";\"San Antonio\";\"main\"\n\"3437136\";\"San Alberto\";\"main\"\n\"3437148\";\"Salto del Guairá\";\"main\"\n\"3437148\";\"Salto del Guaira\";\"ascii\"\n\"3437148\";\"Saltos de Guaira\";\"other\"\n\"3437148\";\"Saltos de Guairá\";\"other\"\n\"3437197\";\"Repatriación\";\"main\"\n\"3437197\";\"Repatriacion\";\"ascii\"\n\"3437215\";\"Quiindy\";\"main\"\n\"3437215\";\"Quyyndy\";\"other\"\n\"3437342\";\"Puerto Rosario\";\"main\"\n\"3437342\";\"Puerto Villa del Rosario\";\"other\"\n\"3437370\";\"Puerto Mayor Otaño\";\"main\"\n\"3437370\";\"Puerto Mayor Otano\";\"ascii\"\n\"3437444\";\"Presidente Franco\";\"main\"\n\"3437444\";\"Puerto Presidente Franco\";\"other\"\n\"3437495\";\"Piribebuy\";\"main\"\n\"3437499\";\"Pirayú\";\"main\"\n\"3437499\";\"Pirayu\";\"ascii\"\n\"3437514\";\"Pirapo\";\"main\"\n\"3437514\";\"Puerto Pirapo\";\"other\"\n\"3437514\";\"Puerto Pirapó\";\"other\"\n\"3437526\";\"Pilar\";\"main\"\n\"3437600\";\"Paraguarí\";\"main\"\n\"3437600\";\"Paraguari\";\"ascii\"\n\"3437637\";\"Obligado\";\"main\"\n\"3437637\";\"Colonia Doctor Pastor Obligado\";\"other\"\n\"3437652\";\"Nueva Italia\";\"main\"\n\"3437652\";\"Colonia Nueva Italia\";\"other\"\n\"3437653\";\"Nueva Germania\";\"main\"\n\"3437653\";\"Colonia Nueva Germania\";\"other\"\n\"3437665\";\"Nemby\";\"main\"\n\"3437665\";\"San Lorenzo de la Frontera\";\"other\"\n\"3437681\";\"Natalio\";\"main\"\n\"3437682\";\"Natalicio Talavera\";\"main\"\n\"3437682\";\"Colonia Natalicio Talavera\";\"other\"\n\"3437682\";\"Natalico Talavera\";\"other\"\n\"3437689\";\"Naranjal\";\"main\"\n\"3437696\";\"Nanawa\";\"main\"\n\"3437744\";\"Mbuyapey\";\"main\"\n\"3437748\";\"Mbutuy\";\"main\"\n\"3437763\";\"Mbocayaty\";\"main\"\n\"3437815\";\"Los Cedrales\";\"main\"\n\"3437842\";\"Limpio\";\"main\"\n\"3437853\";\"Las Palomas\";\"main\"\n\"3437863\";\"Lambaré\";\"main\"\n\"3437863\";\"Lambare\";\"ascii\"\n\"3437868\";\"La Colmena\";\"main\"\n\"3437868\";\"Colonia La Colmena\";\"other\"\n\"3437898\";\"Jesús\";\"main\"\n\"3437898\";\"Jesus\";\"ascii\"\n\"3437909\";\"Iturbe\";\"main\"\n\"3437918\";\"Itauguá\";\"main\"\n\"3437918\";\"Itaugua\";\"ascii\"\n\"3437920\";\"Itaquyry\";\"main\"\n\"3437920\";\"Ytaquyry\";\"other\"\n\"3437927\";\"Itapé\";\"main\"\n\"3437927\";\"Itape\";\"ascii\"\n\"3437935\";\"Itacurubí del Rosario\";\"main\"\n\"3437935\";\"Itacurubi del Rosario\";\"ascii\"\n\"3437935\";\"Itacurabi\";\"other\"\n\"3437936\";\"Itacurubí de la Cordillera\";\"main\"\n\"3437936\";\"Itacurubi de la Cordillera\";\"ascii\"\n\"3437936\";\"Itacurubi\";\"other\"\n\"3437954\";\"Itá\";\"main\"\n\"3437954\";\"Ita\";\"ascii\"\n\"3437962\";\"Isla Pucú\";\"main\"\n\"3437962\";\"Isla Pucu\";\"ascii\"\n\"3437982\";\"Independencia\";\"main\"\n\"3437982\";\"Colonia Independencia\";\"other\"\n\"3437997\";\"Hohenau\";\"main\"\n\"3437997\";\"Colonia Hohenau\";\"other\"\n\"3438034\";\"Guayaybi\";\"main\"\n\"3438043\";\"Guarambaré\";\"main\"\n\"3438043\";\"Guarambare\";\"ascii\"\n\"3438064\";\"General José Eduvigis Díaz\";\"main\"\n\"3438064\";\"General Jose Eduvigis Diaz\";\"ascii\"\n\"3438064\";\"General Diaz\";\"other\"\n\"3438064\";\"Jose Eduvigis Diaz\";\"other\"\n\"3438064\";\"José Eduvigis Díaz\";\"other\"\n\"3438066\";\"General Higinio Morínigo\";\"main\"\n\"3438066\";\"General Higinio Morinigo\";\"ascii\"\n\"3438066\";\"Colonia General Morinigo\";\"other\"\n\"3438066\";\"Colonia General Morínigo\";\"other\"\n\"3438066\";\"General Morinigo\";\"other\"\n\"3438066\";\"General Morínigo\";\"other\"\n\"3438070\";\"General Elizardo Aquino\";\"main\"\n\"3438070\";\"Colonia General Acuino\";\"other\"\n\"3438070\";\"General Aquino\";\"other\"\n\"3438076\";\"General Delgado\";\"main\"\n\"3438076\";\"Colonia General Delgado\";\"other\"\n\"3438080\";\"General Artigas\";\"main\"\n\"3438080\";\"Bobi\";\"other\"\n\"3438080\";\"Bobi-Cango\";\"other\"\n\"3438080\";\"Bobi-Cangó\";\"other\"\n\"3438080\";\"Bobí\";\"other\"\n\"3438080\";\"Cango\";\"other\"\n\"3438102\";\"Fuerte Olimpo\";\"main\"\n\"3438102\";\"Olimpo\";\"other\"\n\"3438106\";\"Fram\";\"main\"\n\"3438115\";\"Fernando de la Mora\";\"main\"\n\"3438123\";\"Eusebio Ayala\";\"main\"\n\"3438123\";\"Barrero Grande\";\"other\"\n\"3438735\";\"Encarnación\";\"main\"\n\"3438735\";\"Encarnacion\";\"ascii\"\n\"3438735\";\"Ehnkarnas'on\";\"other\"\n\"3438735\";\"Enkarnasjonas\";\"other\"\n\"3438735\";\"en ka na xi weng\";\"other\"\n\"3438735\";\"Энкарнасьон\";\"other\"\n\"3438735\";\"恩卡纳西翁\";\"other\"\n\"3438738\";\"Emboscada\";\"main\"\n\"3438743\";\"Edelira\";\"main\"\n\"3438753\";\"Doctor Juan Manuel Frutos\";\"main\"\n\"3438753\";\"Doctor Juan M. Frutos\";\"other\"\n\"3438753\";\"Juan M. Fruto\";\"other\"\n\"3438754\";\"Doctor Juan León Mallorquín\";\"main\"\n\"3438754\";\"Doctor Juan Leon Mallorquin\";\"ascii\"\n\"3438754\";\"Caarendy\";\"other\"\n\"3438754\";\"Doctor J. Leon Mallorquin\";\"other\"\n\"3438754\";\"Doctor J. León Mallorquín\";\"other\"\n\"3438754\";\"J. Leon Mallorquin\";\"other\"\n\"3438755\";\"Doctor Cecilio Báez\";\"main\"\n\"3438755\";\"Doctor Cecilio Baez\";\"ascii\"\n\"3438755\";\"Cecilio Baez\";\"other\"\n\"3438755\";\"Cecilio Báez\";\"other\"\n\"3438816\";\"Corpus Christi\";\"main\"\n\"3438819\";\"Coronel Oviedo\";\"main\"\n\"3438819\";\"Ajos\";\"other\"\n\"3438819\";\"Koronel'-Ov'edo\";\"other\"\n\"3438819\";\"Коронель-Овьедо\";\"other\"\n\"3438822\";\"Coronel Martínez\";\"main\"\n\"3438822\";\"Coronel Martinez\";\"ascii\"\n\"3438822\";\"Martinez\";\"other\"\n\"3438834\";\"Concepción\";\"main\"\n\"3438834\";\"Concepcion\";\"ascii\"\n\"3438834\";\"Konseps'on\";\"other\"\n\"3438834\";\"Konsepsjonas\";\"other\"\n\"3438834\";\"Villa Concepcion\";\"other\"\n\"3438834\";\"Villa Concepción\";\"other\"\n\"3438834\";\"Консепсьон\";\"other\"\n\"3438872\";\"Colonia Yguazú\";\"main\"\n\"3438872\";\"Colonia Yguazu\";\"ascii\"\n\"3438977\";\"Colonia Minga Porá\";\"main\"\n\"3438977\";\"Colonia Minga Pora\";\"ascii\"\n\"3438981\";\"Colonia Menno\";\"main\"\n\"3438991\";\"Colonia Mauricio José Troche\";\"main\"\n\"3438991\";\"Colonia Mauricio Jose Troche\";\"ascii\"\n\"3438991\";\"Colonia Cosme\";\"other\"\n\"3438991\";\"Colonia Mauricio J. Troche\";\"other\"\n\"3438991\";\"Cosme\";\"other\"\n\"3438991\";\"Mauricio Jose Troche\";\"other\"\n\"3438991\";\"Mauricio José Troche\";\"other\"\n\"3438995\";\"Colonia Mariano Roque Alonso\";\"main\"\n\"3438995\";\"Colonia Roque Alonso\";\"other\"\n\"3438995\";\"Mariano Roque Alonso\";\"other\"\n\"3439032\";\"Colonia General Alfredo Stroessner\";\"main\"\n\"3439062\";\"Colonia Catuete\";\"main\"\n\"3439133\";\"Cerrito\";\"main\"\n\"3439156\";\"Carmen del Paraná\";\"main\"\n\"3439156\";\"Carmen del Parana\";\"ascii\"\n\"3439156\";\"Carmen\";\"other\"\n\"3439159\";\"Carlos Antonio López\";\"main\"\n\"3439159\";\"Carlos Antonio Lopez\";\"ascii\"\n\"3439163\";\"Carayaó\";\"main\"\n\"3439163\";\"Carayao\";\"ascii\"\n\"3439167\";\"Carapeguá\";\"main\"\n\"3439167\";\"Carapegua\";\"ascii\"\n\"3439175\";\"Caraguatay\";\"main\"\n\"3439184\";\"Capitán Miranda\";\"main\"\n\"3439184\";\"Capitan Miranda\";\"ascii\"\n\"3439184\";\"Colonia Capitan Miranda\";\"other\"\n\"3439184\";\"Colonia Capitán Miranda\";\"other\"\n\"3439189\";\"Capitán Bado\";\"main\"\n\"3439189\";\"Capitan Bado\";\"ascii\"\n\"3439208\";\"Capiíbary\";\"main\"\n\"3439208\";\"Capiibary\";\"ascii\"\n\"3439214\";\"Capiatá\";\"main\"\n\"3439214\";\"Capiata\";\"ascii\"\n\"3439214\";\"Capista\";\"other\"\n\"3439304\";\"Caapucú\";\"main\"\n\"3439304\";\"Caapucu\";\"ascii\"\n\"3439317\";\"Caaguazú\";\"main\"\n\"3439317\";\"Caaguazu\";\"ascii\"\n\"3439320\";\"Caacupé\";\"main\"\n\"3439320\";\"Caacupe\";\"ascii\"\n\"3439325\";\"Buena Vista\";\"main\"\n\"3439348\";\"Benjamín Aceval\";\"main\"\n\"3439348\";\"Benjamin Aceval\";\"ascii\"\n\"3439348\";\"Colonia Aceval\";\"other\"\n\"3439348\";\"Colonia Benjamin Aceval\";\"other\"\n\"3439348\";\"Colonia Benjamín Aceval\";\"other\"\n\"3439352\";\"Bella Vista\";\"main\"\n\"3439352\";\"Bella Vista de Alto Parana\";\"other\"\n\"3439352\";\"Bella Vista de Alto Paraná\";\"other\"\n\"3439352\";\"Colonia Bella Vista\";\"other\"\n\"3439353\";\"Bella Vista\";\"main\"\n\"3439355\";\"Belén\";\"main\"\n\"3439355\";\"Belen\";\"ascii\"\n\"3439378\";\"Ayolas\";\"main\"\n\"3439378\";\"Juan De Ayolas\";\"other\"\n\"3439386\";\"Atyrá\";\"main\"\n\"3439386\";\"Atyra\";\"ascii\"\n\"3439389\";\"Asunción\";\"main\"\n\"3439389\";\"Asuncion\";\"ascii\"\n\"3439389\";\"Asounthion\";\"other\"\n\"3439389\";\"Assumptio\";\"other\"\n\"3439389\";\"Assuncao\";\"other\"\n\"3439389\";\"Assunção\";\"other\"\n\"3439389\";\"Asunciono\";\"other\"\n\"3439389\";\"Asuns'jon\";\"other\"\n\"3439389\";\"Asuns'on\";\"other\"\n\"3439389\";\"Asunsion\";\"other\"\n\"3439389\";\"Asunsjonas\";\"other\"\n\"3439389\";\"La Muy Noble y Leal Ciudad de Nuestra Senora Santa Maria de la Asuncion\";\"other\"\n\"3439389\";\"La Muy Noble y Leal Ciudad de Nuestra Señora Santa María de la Asunción\";\"other\"\n\"3439389\";\"Nuestra Senora Santa Maria de la Asuncion\";\"other\"\n\"3439389\";\"Nuestra Señora Santa María de la Asunción\";\"other\"\n\"3439389\";\"asunshion\";\"other\"\n\"3439389\";\"asunsion\";\"other\"\n\"3439389\";\"aswnsywn\";\"other\"\n\"3439389\";\"xa sun si xxng\";\"other\"\n\"3439389\";\"ya song sen\";\"other\"\n\"3439389\";\"Ασουνθιόν\";\"other\"\n\"3439389\";\"Асунсион\";\"other\"\n\"3439389\";\"Асунсьйон\";\"other\"\n\"3439389\";\"Асунсьон\";\"other\"\n\"3439389\";\"אסונסיון\";\"other\"\n\"3439389\";\"آسونسیون\";\"other\"\n\"3439389\";\"أسونسيون\";\"other\"\n\"3439389\";\"อะซุนซิออง\";\"other\"\n\"3439389\";\"አሱንሲዮን\";\"other\"\n\"3439389\";\"アスンシオン\";\"other\"\n\"3439389\";\"亞松森\";\"other\"\n\"3439389\";\"아순시온\";\"other\"\n\"3439395\";\"Arroyos y Esteros\";\"main\"\n\"3439402\";\"Arquitecto Tomás Romero Pereira\";\"main\"\n\"3439402\";\"Arquitecto Tomas Romero Pereira\";\"ascii\"\n\"3439403\";\"Areguá\";\"main\"\n\"3439403\";\"Aregua\";\"ascii\"\n\"3439423\";\"Antequera\";\"main\"\n\"3439423\";\"Colonia Antequera\";\"other\"\n\"3439423\";\"Puerto Antequera\";\"other\"\n\"3439439\";\"Altos\";\"main\"\n\"3439482\";\"Acahay\";\"main\"\n\"3439482\";\"Acahai\";\"other\"\n\"3439482\";\"Acahaí\";\"other\"\n\"3439483\";\"Abaí\";\"main\"\n\"3439483\";\"Abai\";\"ascii\"\n\"3439483\";\"Abay\";\"other\"\n\"3480780\";\"Horqueta\";\"main\"\n\"3867291\";\"Filadelfia\";\"main\"\n\"3867291\";\"Colonia Filadelfia\";\"other\"\n\"3867291\";\"Filadelfija\";\"other\"\n\"3867291\";\"Filadelfio\";\"other\"\n\"3867291\";\"Philadelphia\";\"other\"\n\"3867411\";\"Colonia Neuland\";\"main\"\n\"3867427\";\"Capitán Pablo Lagerenza\";\"main\"\n\"3867427\";\"Capitan Pablo Lagerenza\";\"ascii\"\n\"3867427\";\"Fortin Ingavi\";\"other\"\n\"3867427\";\"Fortín Ingavi\";\"other\"\n\"3867427\";\"Ingavi\";\"other\"\n\"3867427\";\"Lagerenza\";\"other\"\n\"3867427\";\"Mayor Pablo Lagerenza\";\"other\"\n\"3867427\";\"Mayor Paulo Lagerenza\";\"other\"\n\"289523\";\"Umm Şalāl Muḩammad\";\"main\"\n\"289523\";\"Umm Salal Muhammad\";\"ascii\"\n\"289523\";\"Umm Salal Mohammad\";\"other\"\n\"289523\";\"Umm Ses Salal\";\"other\"\n\"289523\";\"Umm Silal Mohammed\";\"other\"\n\"289523\";\"Umm Slal Mohammed\";\"other\"\n\"289523\";\"Umm es Salal\";\"other\"\n\"289523\";\"Umm es Slal\";\"other\"\n\"289523\";\"aum salaal muhamad\";\"other\"\n\"289523\";\"أُمّ صَلاَل مُحَمَّد\";\"other\"\n\"289548\";\"Umm Bāb\";\"main\"\n\"289548\";\"Umm Bab\";\"ascii\"\n\"289548\";\"aum bab\";\"other\"\n\"289548\";\"أُمّ بَاب\";\"other\"\n\"289813\";\"Dukhān\";\"main\"\n\"289813\";\"Dukhan\";\"ascii\"\n\"289813\";\"Al Khathiyah\";\"other\"\n\"289813\";\"Ghariyat Adkhan\";\"other\"\n\"289813\";\"Ghariyat Dukhan\";\"other\"\n\"289813\";\"Ghāriyat Adkhān\";\"other\"\n\"289813\";\"Ghāriyat Dukhān\";\"other\"\n\"289813\";\"dukhan\";\"other\"\n\"289813\";\"دُخَان\";\"other\"\n\"289877\";\"Ash Shaḩānīyah\";\"main\"\n\"289877\";\"Ash Shahaniyah\";\"ascii\"\n\"289877\";\"Al Shahaniyah\";\"other\"\n\"289877\";\"aalshahaniat\";\"other\"\n\"289877\";\"اَلشَّحَانِيَّة\";\"other\"\n\"289884\";\"Ar Ru’ays\";\"main\"\n\"289884\";\"Ar Ru'ays\";\"ascii\"\n\"289884\";\"Ar Ruwais\";\"other\"\n\"289884\";\"Ar Ruways\";\"other\"\n\"289884\";\"Ruwais\";\"other\"\n\"289884\";\"aalruways\";\"other\"\n\"289884\";\"اَلرُّؤَيْس\";\"other\"\n\"289888\";\"Ar Rayyān\";\"main\"\n\"289888\";\"Ar Rayyan\";\"ascii\"\n\"289888\";\"Al Raiyan\";\"other\"\n\"289888\";\"Al Rayyan\";\"other\"\n\"289888\";\"Raiyan\";\"other\"\n\"289888\";\"aalrayaan\";\"other\"\n\"289888\";\"اَلرَّيَّان\";\"other\"\n\"289913\";\"Al Wukayr\";\"main\"\n\"289913\";\"Al Wukair\";\"other\"\n\"289913\";\"aalwukayr\";\"other\"\n\"289913\";\"اَلْوُكَيْر\";\"other\"\n\"289915\";\"Al Wakrah\";\"main\"\n\"289915\";\"Al Waqra\";\"other\"\n\"289915\";\"Al Waqrah\";\"other\"\n\"289915\";\"Wakra\";\"other\"\n\"289915\";\"Wakrah\";\"other\"\n\"289915\";\"Waqra\";\"other\"\n\"289915\";\"aalwakrat\";\"other\"\n\"289915\";\"اَلْوَكْرَة\";\"other\"\n\"289962\";\"Al Khawr\";\"main\"\n\"289962\";\"Al-Khaur\";\"other\"\n\"289962\";\"Khaur Shaqiq\";\"other\"\n\"289962\";\"Khaur al-Mahanidah\";\"other\"\n\"289962\";\"Khawr Shaqiq\";\"other\"\n\"289962\";\"Khawr Shaqīq\";\"other\"\n\"289962\";\"Khor\";\"other\"\n\"289962\";\"Khor Shaqiq\";\"other\"\n\"289962\";\"Khor Shaqīq\";\"other\"\n\"289962\";\"Khor-al-Mahandah\";\"other\"\n\"289962\";\"Khor-al-Mahāndah\";\"other\"\n\"289962\";\"Shakik\";\"other\"\n\"289962\";\"aalkhawr\";\"other\"\n\"289962\";\"اَلْخَوْر\";\"other\"\n\"289975\";\"Al Jumaylīyah\";\"main\"\n\"289975\";\"Al Jumayliyah\";\"ascii\"\n\"289975\";\"Al Jamaliya\";\"other\"\n\"289975\";\"Al Jamliyah\";\"other\"\n\"289975\";\"Al Jamlīyah\";\"other\"\n\"289975\";\"Al Jumaliyah\";\"other\"\n\"289975\";\"Jimaliyah\";\"other\"\n\"289975\";\"Jimalīyah\";\"other\"\n\"289975\";\"aaljumayliat\";\"other\"\n\"289975\";\"اَلْجُمَيْلِيَّة\";\"other\"\n\"289993\";\"Al Ghuwayrīyah\";\"main\"\n\"289993\";\"Al Ghuwayriyah\";\"ascii\"\n\"289993\";\"Al Ghuwairiya\";\"other\"\n\"289993\";\"Al Ghuwairiyah\";\"other\"\n\"289993\";\"Ghuwairiyah\";\"other\"\n\"289993\";\"Ghuwairīyah\";\"other\"\n\"289993\";\"aalghuayriat\";\"other\"\n\"289993\";\"اَلْغُوَيْرِيَّة\";\"other\"\n\"290030\";\"Doha\";\"main\"\n\"290030\";\"Ad Dawha\";\"other\"\n\"290030\";\"Ad Dawhah\";\"other\"\n\"290030\";\"Ad Dawḩa\";\"other\"\n\"290030\";\"Ad Dawḩah\";\"other\"\n\"290030\";\"Ad Doha\";\"other\"\n\"290030\";\"Ad Dowhah\";\"other\"\n\"290030\";\"Ad-Dauha\";\"other\"\n\"290030\";\"Ad-Dawhah\";\"other\"\n\"290030\";\"Ad-Dawḩah\";\"other\"\n\"290030\";\"Daeuha\";\"other\"\n\"290030\";\"Dauha\";\"other\"\n\"290030\";\"Dauhá\";\"other\"\n\"290030\";\"Dawhat al Qatar\";\"other\"\n\"290030\";\"Dawḩat al Qaţar\";\"other\"\n\"290030\";\"Dohao\";\"other\"\n\"290030\";\"Dokha\";\"other\"\n\"290030\";\"Däuha\";\"other\"\n\"290030\";\"Ntocha\";\"other\"\n\"290030\";\"aaldawhat\";\"other\"\n\"290030\";\"doha\";\"other\"\n\"290030\";\"dohara\";\"other\"\n\"290030\";\"duo ha\";\"other\"\n\"290030\";\"dwhh\";\"other\"\n\"290030\";\"dwht\";\"other\"\n\"290030\";\"Ντόχα\";\"other\"\n\"290030\";\"Доха\";\"other\"\n\"290030\";\"Доҳа\";\"other\"\n\"290030\";\"דוחא\";\"other\"\n\"290030\";\"דוחה\";\"other\"\n\"290030\";\"اَلدَّوْحَة\";\"other\"\n\"290030\";\"دوحة\";\"other\"\n\"290030\";\"দোহার\";\"other\"\n\"290030\";\"ዶሃ\";\"other\"\n\"290030\";\"ドーハ\";\"other\"\n\"290030\";\"多哈\";\"other\"\n\"290030\";\"도하\";\"other\"\n\"406787\";\"Fuwayriţ\";\"main\"\n\"406787\";\"Fuwayrit\";\"ascii\"\n\"406787\";\"fuayrit\";\"other\"\n\"406787\";\"فُوَيْرِط\";\"other\"\n\"7284881\";\"Hawar Islands\";\"main\"\n\"935146\";\"Trois-Bassins\";\"main\"\n\"935146\";\"Les Trois-Bassins\";\"other\"\n\"935210\";\"Salazie\";\"main\"\n\"935210\";\"Salazie Village\";\"other\"\n\"935214\";\"Saint-Pierre\";\"main\"\n\"935214\";\"Sent-P'er\";\"other\"\n\"935214\";\"Сент-Пьер\";\"other\"\n\"935215\";\"Saint-Philippe\";\"main\"\n\"935215\";\"Saint Phillippe\";\"other\"\n\"935221\";\"Saint-Paul\";\"main\"\n\"935223\";\"Saint-Louis\";\"main\"\n\"935223\";\"Sen-Lui\";\"other\"\n\"935223\";\"Сен-Луи\";\"other\"\n\"935225\";\"Saint-Leu\";\"main\"\n\"935225\";\"Sankt-Leu\";\"other\"\n\"935225\";\"Санкт-Леу\";\"other\"\n\"935227\";\"Saint-Joseph\";\"main\"\n\"935227\";\"Sent-Dzhozef\";\"other\"\n\"935227\";\"Сент-Джозеф\";\"other\"\n\"935248\";\"Sainte-Suzanne\";\"main\"\n\"935251\";\"Sainte-Rose\";\"main\"\n\"935255\";\"Sainte-Marie\";\"main\"\n\"935255\";\"Sent-Mari\";\"other\"\n\"935255\";\"Сент-Мари\";\"other\"\n\"935264\";\"Saint-Denis\";\"main\"\n\"935264\";\"Saint-Denis de la Reunion\";\"other\"\n\"935264\";\"Saint-Denis de la Réunion\";\"other\"\n\"935264\";\"Sen-Deni\";\"other\"\n\"935264\";\"St. Denis\";\"other\"\n\"935264\";\"snt dnys\";\"other\"\n\"935264\";\"Сен-Дени\";\"other\"\n\"935264\";\"סנט דניס\";\"other\"\n\"935264\";\"サン・ドゥニ\";\"other\"\n\"935267\";\"Saint-Benoît\";\"main\"\n\"935267\";\"Saint-Benoit\";\"ascii\"\n\"935267\";\"Sankt-Benua\";\"other\"\n\"935267\";\"Санкт-Бенуа\";\"other\"\n\"935268\";\"Saint-André\";\"main\"\n\"935268\";\"Saint-Andre\";\"ascii\"\n\"935268\";\"Sankt-Andre\";\"other\"\n\"935268\";\"Санкт-Андре\";\"other\"\n\"935416\";\"Petite-Île\";\"main\"\n\"935416\";\"Petite-Ile\";\"ascii\"\n\"935416\";\"Village de la Petite Ile\";\"other\"\n\"935582\";\"Le Tampon\";\"main\"\n\"935582\";\"Tampon\";\"other\"\n\"935582\";\"Village du Tampon\";\"other\"\n\"935608\";\"Les Avirons\";\"main\"\n\"935608\";\"Avirons\";\"other\"\n\"935616\";\"Le Port\";\"main\"\n\"935616\";\"La Point-aux-galets\";\"other\"\n\"935616\";\"Le Port des Galets\";\"other\"\n\"935616\";\"Port\";\"other\"\n\"935616\";\"Port de la Pointe des Galets\";\"other\"\n\"935616\";\"Port des Galets\";\"other\"\n\"935691\";\"La Possession\";\"main\"\n\"935691\";\"Possession\";\"other\"\n\"935915\";\"L'Entre-Deux\";\"main\"\n\"935975\";\"Cilaos\";\"main\"\n\"936048\";\"Bras-Panon\";\"main\"\n\"662114\";\"Ghioca\";\"main\"\n\"662114\";\"Crampoaia\";\"other\"\n\"662114\";\"Crâmpoaia\";\"other\"\n\"662114\";\"Gheoca\";\"other\"\n\"662118\";\"Zvoriştea\";\"main\"\n\"662118\";\"Zvoristea\";\"ascii\"\n\"662128\";\"Zorlenţu Mare\";\"main\"\n\"662128\";\"Zorlentu Mare\";\"ascii\"\n\"662128\";\"Alsozorlenc\";\"other\"\n\"662128\";\"Alsózorlenc\";\"other\"\n\"662128\";\"Nagy-Zorlencz\";\"other\"\n\"662128\";\"Zorlencz\";\"other\"\n\"662128\";\"Zorlenczmare\";\"other\"\n\"662128\";\"Zorlenczmáre\";\"other\"\n\"662128\";\"Zorlentul Mare\";\"other\"\n\"662128\";\"Zorlenţul Mare\";\"other\"\n\"662130\";\"Zorleni\";\"main\"\n\"662161\";\"Zlatna\";\"main\"\n\"662187\";\"Zimnicea\";\"main\"\n\"662193\";\"Zîmbreasca\";\"main\"\n\"662193\";\"Zimbreasca\";\"ascii\"\n\"662193\";\"Zabreasca\";\"other\"\n\"662193\";\"Zâbreasca\";\"other\"\n\"662195\";\"Zimbor\";\"main\"\n\"662195\";\"Zimborul\";\"other\"\n\"662195\";\"Zimborul-Mare\";\"other\"\n\"662195\";\"Zutor\";\"other\"\n\"662197\";\"Zimandu Nou\";\"main\"\n\"662197\";\"Zimandul-Nou\";\"other\"\n\"662204\";\"Ziduri\";\"main\"\n\"662204\";\"Costienii de Jos\";\"other\"\n\"662217\";\"Zetea\";\"main\"\n\"662217\";\"Zetelaka\";\"other\"\n\"662222\";\"Zerind\";\"main\"\n\"662225\";\"Zemeş\";\"main\"\n\"662225\";\"Zemes\";\"ascii\"\n\"662225\";\"Taslaul de Sus\";\"other\"\n\"662225\";\"Taslăul de Sus\";\"other\"\n\"662225\";\"Tazlau de Sus\";\"other\"\n\"662225\";\"Tazlău de Sus\";\"other\"\n\"662254\";\"Zăvoi\";\"main\"\n\"662254\";\"Zavoi\";\"ascii\"\n\"662254\";\"Zavoiu\";\"other\"\n\"662254\";\"Zăvoiu\";\"other\"\n\"662259\";\"Zăvoaia\";\"main\"\n\"662259\";\"Zavoaia\";\"ascii\"\n\"662259\";\"Slujitorii-Albesti\";\"other\"\n\"662259\";\"Slujitorii-Albeşti\";\"other\"\n\"662274\";\"Zătreni\";\"main\"\n\"662274\";\"Zatreni\";\"ascii\"\n\"662274\";\"Zatrenii\";\"other\"\n\"662274\";\"Zătrenii\";\"other\"\n\"662285\";\"Zărneşti\";\"main\"\n\"662285\";\"Zarnesti\";\"ascii\"\n\"662293\";\"Zărand\";\"main\"\n\"662293\";\"Zarand\";\"ascii\"\n\"662302\";\"Zăpodeni\";\"main\"\n\"662302\";\"Zapodeni\";\"ascii\"\n\"662315\";\"Zăneşti\";\"main\"\n\"662315\";\"Zanesti\";\"ascii\"\n\"662317\";\"Zamostea\";\"main\"\n\"662327\";\"Zam\";\"main\"\n\"662327\";\"Sameschdorf\";\"other\"\n\"662332\";\"Zalha\";\"main\"\n\"662334\";\"Zalău\";\"main\"\n\"662334\";\"Zalau\";\"ascii\"\n\"662334\";\"Zalehu\";\"other\"\n\"662334\";\"Zelau\";\"other\"\n\"662334\";\"Zilah\";\"other\"\n\"662334\";\"Залэу\";\"other\"\n\"662349\";\"Zagra\";\"main\"\n\"662352\";\"Zagon\";\"main\"\n\"662357\";\"Zagăr\";\"main\"\n\"662357\";\"Zagar\";\"ascii\"\n\"662357\";\"Zagra\";\"other\"\n\"662366\";\"Zăbrani\";\"main\"\n\"662366\";\"Zabrani\";\"ascii\"\n\"662366\";\"Gutenbrunn\";\"other\"\n\"662366\";\"Guttenbrunn\";\"other\"\n\"662366\";\"Guttennbrunn\";\"other\"\n\"662366\";\"Temeshidegkut\";\"other\"\n\"662366\";\"Temeshidegkút\";\"other\"\n\"662366\";\"Zabrany\";\"other\"\n\"662366\";\"Zábrány\";\"other\"\n\"662373\";\"Zăbala\";\"main\"\n\"662373\";\"Zabala\";\"ascii\"\n\"662373\";\"Zabola\";\"other\"\n\"662376\";\"Vutcani\";\"main\"\n\"662379\";\"Vurpăr\";\"main\"\n\"662379\";\"Vurpar\";\"ascii\"\n\"662380\";\"Vurpăr\";\"main\"\n\"662380\";\"Vurpar\";\"ascii\"\n\"662380\";\"Burgberg\";\"other\"\n\"662380\";\"Vurpod\";\"other\"\n\"662380\";\"Vurpód\";\"other\"\n\"662382\";\"Vulturu de Sus\";\"main\"\n\"662382\";\"Vulturul-de-Sus\";\"other\"\n\"662394\";\"Vultureşti\";\"main\"\n\"662394\";\"Vulturesti\";\"ascii\"\n\"662395\";\"Vultureşti\";\"main\"\n\"662395\";\"Vulturesti\";\"ascii\"\n\"662397\";\"Vultureşti\";\"main\"\n\"662397\";\"Vulturesti\";\"ascii\"\n\"662400\";\"Vultureni\";\"main\"\n\"662401\";\"Vultureni\";\"main\"\n\"662401\";\"Gura Tiganesti\";\"other\"\n\"662401\";\"Gura Ţigăneşti\";\"other\"\n\"662412\";\"Vulpeni\";\"main\"\n\"662424\";\"Vulcana Băi\";\"main\"\n\"662424\";\"Vulcana Bai\";\"ascii\"\n\"662424\";\"Baile Vulcan\";\"other\"\n\"662424\";\"Balle Vulcana\";\"other\"\n\"662424\";\"Băile Vulcan\";\"other\"\n\"662424\";\"Vulcan Bai\";\"other\"\n\"662431\";\"Vulcan\";\"main\"\n\"662432\";\"Vulcan\";\"main\"\n\"662437\";\"Vrîncioaia\";\"main\"\n\"662437\";\"Vrincioaia\";\"ascii\"\n\"662437\";\"Vrancioaia\";\"other\"\n\"662437\";\"Vrâncioaia\";\"other\"\n\"662455\";\"Voşlobeni\";\"main\"\n\"662455\";\"Voslobeni\";\"ascii\"\n\"662455\";\"Vaslab\";\"other\"\n\"662455\";\"Vasláb\";\"other\"\n\"662455\";\"Voslab\";\"other\"\n\"662455\";\"Voşlab\";\"other\"\n\"662457\";\"Vorţa\";\"main\"\n\"662457\";\"Vorta\";\"ascii\"\n\"662463\";\"Vorona Teodoru\";\"main\"\n\"662473\";\"Vorniceni\";\"main\"\n\"662473\";\"Voriuceni\";\"other\"\n\"662476\";\"Voluntari\";\"main\"\n\"662476\";\"Cetatea Voluntareasca\";\"other\"\n\"662476\";\"Cetatea Voluntărească\";\"other\"\n\"662476\";\"Parcu Voluntarilor\";\"other\"\n\"662476\";\"Stefanestii Noi\";\"other\"\n\"662476\";\"Stefăneştii Noi\";\"other\"\n\"662476\";\"Волунтари\";\"other\"\n\"662478\";\"Volovăţ\";\"main\"\n\"662478\";\"Volovat\";\"ascii\"\n\"662486\";\"Voloiacu\";\"main\"\n\"662486\";\"Voloiac\";\"other\"\n\"662498\";\"Voivodeni\";\"main\"\n\"662498\";\"Vajdaszentivany\";\"other\"\n\"662498\";\"Vajdaszentivány\";\"other\"\n\"662508\";\"Voiteg\";\"main\"\n\"662508\";\"Vejte\";\"other\"\n\"662508\";\"Voiteni\";\"other\"\n\"662508\";\"Vojtek\";\"other\"\n\"662508\";\"Wojtek\";\"other\"\n\"662516\";\"Voineşti\";\"main\"\n\"662516\";\"Voinesti\";\"ascii\"\n\"662518\";\"Voineşti\";\"main\"\n\"662518\";\"Voinesti\";\"ascii\"\n\"662518\";\"Cirtibasul\";\"other\"\n\"662518\";\"Cîrtibaşul\";\"other\"\n\"662518\";\"Voinesti-Boeresti\";\"other\"\n\"662518\";\"Voinesti-Boieresti\";\"other\"\n\"662518\";\"Voinesti-Razesi\";\"other\"\n\"662518\";\"Voinestii Boeresti\";\"other\"\n\"662518\";\"Voinestii-Razesi\";\"other\"\n\"662518\";\"Voineşti-Boereşti\";\"other\"\n\"662518\";\"Voineşti-Boiereşti\";\"other\"\n\"662518\";\"Voineşti-Răzeşi\";\"other\"\n\"662518\";\"Voineştii Boereşti\";\"other\"\n\"662518\";\"Voineştii-Răzeşi\";\"other\"\n\"662521\";\"Voineşti\";\"main\"\n\"662521\";\"Voinesti\";\"ascii\"\n\"662521\";\"Voinestu\";\"other\"\n\"662530\";\"Voineasa\";\"main\"\n\"662530\";\"Voineasca\";\"other\"\n\"662531\";\"Voineasa\";\"main\"\n\"662531\";\"Voineasa Mare\";\"other\"\n\"662533\";\"Voila\";\"main\"\n\"662541\";\"Voiceşti\";\"main\"\n\"662541\";\"Voicesti\";\"ascii\"\n\"662541\";\"Voicestii de Mijloc\";\"other\"\n\"662541\";\"Voiceştii de Mijloc\";\"other\"\n\"662553\";\"Vlăsineşti\";\"main\"\n\"662553\";\"Vlasinesti\";\"ascii\"\n\"662570\";\"Vlăhiţa\";\"main\"\n\"662570\";\"Vlahita\";\"ascii\"\n\"662570\";\"Szentegyhazasfalu\";\"other\"\n\"662570\";\"Szentegyházasfalu\";\"other\"\n\"662583\";\"Vlad Ţepeş\";\"main\"\n\"662583\";\"Vlad Tepes\";\"ascii\"\n\"662598\";\"Vladimiru\";\"main\"\n\"662598\";\"Vladimir\";\"other\"\n\"662598\";\"Vladimirul\";\"other\"\n\"662600\";\"Vladimirescu\";\"main\"\n\"662600\";\"Glogovacz\";\"other\"\n\"662600\";\"Glogovat\";\"other\"\n\"662600\";\"Glogovácz\";\"other\"\n\"662600\";\"Glogovăţ\";\"other\"\n\"662600\";\"Glogowatz\";\"other\"\n\"662600\";\"Othalom\";\"other\"\n\"662600\";\"Tudor Vladimirescu\";\"other\"\n\"662600\";\"Öthalom\";\"other\"\n\"662605\";\"Vlădila\";\"main\"\n\"662605\";\"Vladila\";\"ascii\"\n\"662605\";\"Vladila Veche\";\"other\"\n\"662605\";\"Vlădila Veche\";\"other\"\n\"662620\";\"Vlădeşti\";\"main\"\n\"662620\";\"Vladesti\";\"ascii\"\n\"662622\";\"Vlădeşti\";\"main\"\n\"662622\";\"Vladesti\";\"ascii\"\n\"662635\";\"Vlădeni\";\"main\"\n\"662635\";\"Vladeni\";\"ascii\"\n\"662636\";\"Vlădeni\";\"main\"\n\"662636\";\"Vladeni\";\"ascii\"\n\"662640\";\"Vlădeni\";\"main\"\n\"662640\";\"Vladeni\";\"ascii\"\n\"662645\";\"Vlădaia\";\"main\"\n\"662645\";\"Vladaia\";\"ascii\"\n\"662651\";\"Viziru\";\"main\"\n\"662651\";\"Vizirul\";\"other\"\n\"662655\";\"Vizantea-Mînăstirească\";\"main\"\n\"662655\";\"Vizantea-Minastireasca\";\"ascii\"\n\"662655\";\"Vizante\";\"other\"\n\"662655\";\"Vizantea\";\"other\"\n\"662655\";\"Vizantea-Manastireasca\";\"other\"\n\"662655\";\"Vizantea-Mânăstirească\";\"other\"\n\"662655\";\"Vizantia Monastueasc\";\"other\"\n\"662655\";\"Vizantia-Manastirea\";\"other\"\n\"662655\";\"Vizantia-Mânăstirea\";\"other\"\n\"662658\";\"Vitomireşti\";\"main\"\n\"662658\";\"Vitomiresti\";\"ascii\"\n\"662658\";\"Costesti\";\"other\"\n\"662658\";\"Costesti-Uda\";\"other\"\n\"662658\";\"Costestii\";\"other\"\n\"662658\";\"Costeşti\";\"other\"\n\"662658\";\"Costeşti-Uda\";\"other\"\n\"662668\";\"Vităneşti\";\"main\"\n\"662668\";\"Vitanesti\";\"ascii\"\n\"662687\";\"Vişineşti\";\"main\"\n\"662687\";\"Visinesti\";\"ascii\"\n\"662695\";\"Vişina\";\"main\"\n\"662695\";\"Visina\";\"ascii\"\n\"662697\";\"Vişina\";\"main\"\n\"662697\";\"Visina\";\"ascii\"\n\"662697\";\"Visina Veche\";\"other\"\n\"662697\";\"Vişina Veche\";\"other\"\n\"662699\";\"Vişeu de Sus\";\"main\"\n\"662699\";\"Viseu de Sus\";\"ascii\"\n\"662699\";\"Felsoviso\";\"other\"\n\"662699\";\"Felsövisó\";\"other\"\n\"662699\";\"Visauel-de-Sus\";\"other\"\n\"662699\";\"Visaul-de-Sus\";\"other\"\n\"662699\";\"Viseu\";\"other\"\n\"662699\";\"Viseul\";\"other\"\n\"662699\";\"Viseul de Sus\";\"other\"\n\"662699\";\"Visuel de-Sus\";\"other\"\n\"662699\";\"Vişeu\";\"other\"\n\"662699\";\"Vişeul\";\"other\"\n\"662699\";\"Vişeul de Sus\";\"other\"\n\"662699\";\"Vişuel de-Sus\";\"other\"\n\"662699\";\"Vişăuel-de-Sus\";\"other\"\n\"662699\";\"Vişăul-de-Sus\";\"other\"\n\"662702\";\"Vişeu de Jos\";\"main\"\n\"662702\";\"Viseu de Jos\";\"ascii\"\n\"662702\";\"Visaul-de-Jos\";\"other\"\n\"662702\";\"Viseul de Jos\";\"other\"\n\"662702\";\"Vizaul de Jos\";\"other\"\n\"662702\";\"Vizăul de Jos\";\"other\"\n\"662702\";\"Vişeul de Jos\";\"other\"\n\"662702\";\"Vişăul-de-Jos\";\"other\"\n\"662709\";\"Vişani\";\"main\"\n\"662709\";\"Visani\";\"ascii\"\n\"662717\";\"Vîrvoru\";\"main\"\n\"662717\";\"Virvoru\";\"ascii\"\n\"662717\";\"Varvor\";\"other\"\n\"662717\";\"Varvoru\";\"other\"\n\"662717\";\"Varvorul\";\"other\"\n\"662717\";\"Vârvor\";\"other\"\n\"662717\";\"Vârvoru\";\"other\"\n\"662717\";\"Vârvorul\";\"other\"\n\"662724\";\"Vîrtopu\";\"main\"\n\"662724\";\"Virtopu\";\"ascii\"\n\"662724\";\"Vartop\";\"other\"\n\"662724\";\"Vartopu\";\"other\"\n\"662724\";\"Vartopul\";\"other\"\n\"662724\";\"Vârtop\";\"other\"\n\"662724\";\"Vârtopu\";\"other\"\n\"662724\";\"Vârtopul\";\"other\"\n\"662731\";\"Vîrtoapele de Jos\";\"main\"\n\"662731\";\"Virtoapele de Jos\";\"ascii\"\n\"662731\";\"Vartoapele-de-Jos\";\"other\"\n\"662731\";\"Vârtoapele-de-Jos\";\"other\"\n\"662759\";\"Vîrlezi\";\"main\"\n\"662759\";\"Virlezi\";\"ascii\"\n\"662759\";\"Varlezi\";\"other\"\n\"662759\";\"Vârlezi\";\"other\"\n\"662767\";\"Vîrghiş\";\"main\"\n\"662767\";\"Virghis\";\"ascii\"\n\"662767\";\"Varghis\";\"other\"\n\"662767\";\"Vargyas\";\"other\"\n\"662767\";\"Vârghiş\";\"other\"\n\"662769\";\"Vârfurile\";\"main\"\n\"662769\";\"Varfurile\";\"ascii\"\n\"662769\";\"Csucs\";\"other\"\n\"662769\";\"Csúcs\";\"other\"\n\"662769\";\"Virfurile\";\"other\"\n\"662769\";\"Vîrfurile\";\"other\"\n\"662772\";\"Vîrfuri\";\"main\"\n\"662772\";\"Virfuri\";\"ascii\"\n\"662772\";\"Varfurile\";\"other\"\n\"662772\";\"Vârfurile\";\"other\"\n\"662785\";\"Vîrciorog\";\"main\"\n\"662785\";\"Virciorog\";\"ascii\"\n\"662785\";\"Varciorog\";\"other\"\n\"662785\";\"Vârciorog\";\"other\"\n\"662787\";\"Vipereşti\";\"main\"\n\"662787\";\"Viperesti\";\"ascii\"\n\"662796\";\"Vintileasca\";\"main\"\n\"662801\";\"Vintilă Vodă\";\"main\"\n\"662801\";\"Vintila Voda\";\"ascii\"\n\"662805\";\"Vânju-Mare\";\"main\"\n\"662805\";\"Vanju-Mare\";\"ascii\"\n\"662805\";\"Vanjul-Mare\";\"other\"\n\"662805\";\"Vinju Mare\";\"other\"\n\"662805\";\"Vânjul-Mare\";\"other\"\n\"662805\";\"Vînju Mare\";\"other\"\n\"662807\";\"Vânjuleţ\";\"main\"\n\"662807\";\"Vanjulet\";\"ascii\"\n\"662807\";\"Vanjuletu\";\"other\"\n\"662807\";\"Vinjulet\";\"other\"\n\"662807\";\"Vânjuleţu\";\"other\"\n\"662807\";\"Vînjuleţ\";\"other\"\n\"662811\";\"Vinga\";\"main\"\n\"662811\";\"Neu Winga\";\"other\"\n\"662811\";\"Theresiopel\";\"other\"\n\"662811\";\"Theresiopolis\";\"other\"\n\"662811\";\"Thereziopolis\";\"other\"\n\"662811\";\"Ujvinga\";\"other\"\n\"662811\";\"Vinga Noua\";\"other\"\n\"662811\";\"Vinga Nouă\";\"other\"\n\"662811\";\"Winga\";\"other\"\n\"662811\";\"Winga an der Maresch\";\"other\"\n\"662811\";\"Újvinga\";\"other\"\n\"662820\";\"Vinderei\";\"main\"\n\"662822\";\"Vînători-Neamţ\";\"main\"\n\"662822\";\"Vinatori-Neamt\";\"ascii\"\n\"662822\";\"Draguta\";\"other\"\n\"662822\";\"Drahutel\";\"other\"\n\"662822\";\"Drăguţa\";\"other\"\n\"662822\";\"Drăhutel\";\"other\"\n\"662822\";\"Schitu-Procov\";\"other\"\n\"662822\";\"Schitu-Sihlea\";\"other\"\n\"662822\";\"Schitu-Vovidenia\";\"other\"\n\"662822\";\"Schitul Sihlea\";\"other\"\n\"662822\";\"Todiriteni\";\"other\"\n\"662822\";\"Todiriţeni\";\"other\"\n\"662822\";\"Tudoriteni\";\"other\"\n\"662822\";\"Ungureni\";\"other\"\n\"662822\";\"Valea Drahutel\";\"other\"\n\"662822\";\"Valea Drăhuţel\";\"other\"\n\"662822\";\"Vanatori-Neamt\";\"other\"\n\"662822\";\"Vanatori-Neamtu\";\"other\"\n\"662822\";\"Vanatorii-Neamt\";\"other\"\n\"662822\";\"Vânători-Neamţ\";\"other\"\n\"662822\";\"Vânători-Neamţu\";\"other\"\n\"662822\";\"Vânătorii-Neamţ\";\"other\"\n\"662824\";\"Vânătorii Mici\";\"main\"\n\"662824\";\"Vanatorii Mici\";\"ascii\"\n\"662824\";\"Vinatorii Mici\";\"other\"\n\"662824\";\"Vînătorii Mici\";\"other\"\n\"662837\";\"Vînători\";\"main\"\n\"662837\";\"Vinatori\";\"ascii\"\n\"662837\";\"Vanatori\";\"other\"\n\"662840\";\"Vînători\";\"main\"\n\"662840\";\"Vinatori\";\"ascii\"\n\"662840\";\"Hasfalau\";\"other\"\n\"662840\";\"Haşfalău\";\"other\"\n\"662840\";\"Vanator\";\"other\"\n\"662840\";\"Vanatori\";\"other\"\n\"662840\";\"Vânător\";\"other\"\n\"662840\";\"Vânători\";\"other\"\n\"662841\";\"Vînători\";\"main\"\n\"662841\";\"Vinatori\";\"ascii\"\n\"662841\";\"Vanatori\";\"other\"\n\"662841\";\"Vânători\";\"other\"\n\"662842\";\"Vînători\";\"main\"\n\"662842\";\"Vinatori\";\"ascii\"\n\"662842\";\"Vanatori\";\"other\"\n\"662842\";\"Vânători\";\"other\"\n\"662844\";\"Vânători\";\"main\"\n\"662844\";\"Vanatori\";\"ascii\"\n\"662844\";\"Vinatori\";\"other\"\n\"662844\";\"Vînători\";\"other\"\n\"662850\";\"Vima Mică\";\"main\"\n\"662850\";\"Vima Mica\";\"ascii\"\n\"662884\";\"Vîlcele\";\"main\"\n\"662884\";\"Vilcele\";\"ascii\"\n\"662884\";\"Elopatak\";\"other\"\n\"662884\";\"Elöpatak\";\"other\"\n\"662884\";\"Valcele\";\"other\"\n\"662884\";\"Vâlcele\";\"other\"\n\"662887\";\"Vîlcele\";\"main\"\n\"662887\";\"Vilcele\";\"ascii\"\n\"662887\";\"Valcelele\";\"other\"\n\"662887\";\"Vâlcelele\";\"other\"\n\"662914\";\"Viişoara\";\"main\"\n\"662914\";\"Viisoara\";\"ascii\"\n\"662914\";\"Bivolu Mare\";\"other\"\n\"662914\";\"Bivolul-Mare\";\"other\"\n\"662917\";\"Viişoara\";\"main\"\n\"662917\";\"Viisoara\";\"ascii\"\n\"662917\";\"Patal\";\"other\"\n\"662917\";\"Patal-Mare\";\"other\"\n\"662917\";\"Păţal\";\"other\"\n\"662917\";\"Păţal-Mare\";\"other\"\n\"662918\";\"Viişoara\";\"main\"\n\"662918\";\"Viisoara\";\"ascii\"\n\"662920\";\"Viişoara\";\"main\"\n\"662920\";\"Viisoara\";\"ascii\"\n\"662920\";\"Agirbiciu\";\"other\"\n\"662920\";\"Agîrbiciu\";\"other\"\n\"662921\";\"Viişoara\";\"main\"\n\"662921\";\"Viisoara\";\"ascii\"\n\"662921\";\"Basesti\";\"other\"\n\"662921\";\"Băseşti\";\"other\"\n\"662923\";\"Viişoara\";\"main\"\n\"662923\";\"Viisoara\";\"ascii\"\n\"662923\";\"Hundorf\";\"other\"\n\"662932\";\"Viişoara\";\"main\"\n\"662932\";\"Viisoara\";\"ascii\"\n\"662936\";\"Viile Satu Mare\";\"main\"\n\"662936\";\"Viile\";\"other\"\n\"662936\";\"Viile-Satmarului\";\"other\"\n\"662936\";\"Viile-Sătmarului\";\"other\"\n\"662970\";\"Vidra\";\"main\"\n\"662970\";\"Vrancea\";\"other\"\n\"662971\";\"Vidra\";\"main\"\n\"662976\";\"Videle\";\"main\"\n\"662976\";\"Vida\";\"other\"\n\"662976\";\"Vida Cirtojani\";\"other\"\n\"662976\";\"Vida Cîrtojani\";\"other\"\n\"662976\";\"Виделе\";\"other\"\n\"662979\";\"Victor Vlad Delamarina\";\"main\"\n\"662979\";\"Lugoskisfalu\";\"other\"\n\"662979\";\"Satu Mic\";\"other\"\n\"662979\";\"Szatulmik\";\"other\"\n\"662979\";\"Szatumik\";\"other\"\n\"662985\";\"Victoria\";\"main\"\n\"662985\";\"Carpiti\";\"other\"\n\"662985\";\"Cirpiti\";\"other\"\n\"662985\";\"Cârpiţi\";\"other\"\n\"662985\";\"Cîrpiţi\";\"other\"\n\"662988\";\"Victoria\";\"main\"\n\"662992\";\"Vicovu de Sus\";\"main\"\n\"662992\";\"Vicovul-de-Sus\";\"other\"\n\"662994\";\"Vicovu de Jos\";\"main\"\n\"662994\";\"Vicovul-de-Jos\";\"other\"\n\"663014\";\"Vetiş\";\"main\"\n\"663014\";\"Vetis\";\"ascii\"\n\"663014\";\"Vetes\";\"other\"\n\"663014\";\"Vetés\";\"other\"\n\"663018\";\"Veţel\";\"main\"\n\"663018\";\"Vetel\";\"ascii\"\n\"663035\";\"Verneşti\";\"main\"\n\"663035\";\"Vernesti\";\"ascii\"\n\"663040\";\"Vermeş\";\"main\"\n\"663040\";\"Vermes\";\"ascii\"\n\"663040\";\"Krassovermes\";\"other\"\n\"663040\";\"Krassóvermes\";\"other\"\n\"663040\";\"Vermus\";\"other\"\n\"663042\";\"Verguleasa\";\"main\"\n\"663045\";\"Vereşti\";\"main\"\n\"663045\";\"Veresti\";\"ascii\"\n\"663045\";\"Ion Gheorghe Duca\";\"other\"\n\"663058\";\"Verbiţa\";\"main\"\n\"663058\";\"Verbita\";\"ascii\"\n\"663078\";\"Vela\";\"main\"\n\"663078\";\"Vella\";\"other\"\n\"663086\";\"Vedea\";\"main\"\n\"663086\";\"Gera Boului\";\"other\"\n\"663086\";\"Gura-Boului\";\"other\"\n\"663087\";\"Vedea\";\"main\"\n\"663087\";\"Goala\";\"other\"\n\"663088\";\"Vedea\";\"main\"\n\"663088\";\"Arsache\";\"other\"\n\"663098\";\"Vatra Moldoviţei\";\"main\"\n\"663098\";\"Vatra Moldovitei\";\"ascii\"\n\"663100\";\"Vatra Dornei\";\"main\"\n\"663100\";\"Dorna Vatra\";\"other\"\n\"663105\";\"Vătava\";\"main\"\n\"663105\";\"Vatava\";\"ascii\"\n\"663105\";\"Felsorepa\";\"other\"\n\"663105\";\"Felsörèpa\";\"other\"\n\"663111\";\"Vaţa de Jos\";\"main\"\n\"663111\";\"Vata de Jos\";\"ascii\"\n\"663118\";\"Vaslui\";\"main\"\n\"663118\";\"Vasluiul\";\"other\"\n\"663118\";\"Vasluj\";\"other\"\n\"663118\";\"Vaszlo\";\"other\"\n\"663118\";\"Vászló\";\"other\"\n\"663118\";\"Васлуй\";\"other\"\n\"663128\";\"Vasilaţi\";\"main\"\n\"663128\";\"Vasilati\";\"ascii\"\n\"663128\";\"Vasilatii\";\"other\"\n\"663128\";\"Vasilatii-Poporul\";\"other\"\n\"663128\";\"Vasilaţii\";\"other\"\n\"663128\";\"Vasilaţii-Poporul\";\"other\"\n\"663135\";\"Vaşcău\";\"main\"\n\"663135\";\"Vascau\";\"ascii\"\n\"663135\";\"Korosbarafalva\";\"other\"\n\"663135\";\"Körösbarafalva\";\"other\"\n\"663135\";\"Vaskoh\";\"other\"\n\"663158\";\"Vărşag\";\"main\"\n\"663158\";\"Varsag\";\"ascii\"\n\"663158\";\"Szekelyvarsag\";\"other\"\n\"663158\";\"Szèkelyvarsàg\";\"other\"\n\"663158\";\"Virsag\";\"other\"\n\"663158\";\"Vîrşag\";\"other\"\n\"663171\";\"Variaş\";\"main\"\n\"663171\";\"Varias\";\"ascii\"\n\"663171\";\"Varjas\";\"other\"\n\"663171\";\"Warjasch\";\"other\"\n\"663173\";\"Vărgata\";\"main\"\n\"663173\";\"Vargata\";\"ascii\"\n\"663173\";\"Csikfalva\";\"other\"\n\"663178\";\"Vărbilău\";\"main\"\n\"663178\";\"Varbilau\";\"ascii\"\n\"663197\";\"Vărăşti\";\"main\"\n\"663197\";\"Varasti\";\"ascii\"\n\"663197\";\"Varastii\";\"other\"\n\"663197\";\"Vărăştii\";\"other\"\n\"663205\";\"Vărădia de Mureş\";\"main\"\n\"663205\";\"Varadia de Mures\";\"ascii\"\n\"663205\";\"Marosnagyvolgy\";\"other\"\n\"663205\";\"Marosnagyvölgy\";\"other\"\n\"663205\";\"Totvarad\";\"other\"\n\"663205\";\"Totvaradgya\";\"other\"\n\"663205\";\"Totvaradja\";\"other\"\n\"663205\";\"Tótvárad\";\"other\"\n\"663205\";\"Tótváradgya\";\"other\"\n\"663205\";\"Tótváradja\";\"other\"\n\"663205\";\"Valemare\";\"other\"\n\"663205\";\"Valemáre\";\"other\"\n\"663205\";\"Vallemare\";\"other\"\n\"663205\";\"Vallemáre\";\"other\"\n\"663207\";\"Vărădia\";\"main\"\n\"663207\";\"Varadia\";\"ascii\"\n\"663207\";\"Arcidava\";\"other\"\n\"663226\";\"Vama\";\"main\"\n\"663227\";\"Vama\";\"main\"\n\"663234\";\"Valu lui Traian\";\"main\"\n\"663234\";\"Hasancea\";\"other\"\n\"663234\";\"Hozancha\";\"other\"\n\"663234\";\"Valu Traian\";\"other\"\n\"663234\";\"Valul-lui-Traian\";\"other\"\n\"663244\";\"Vălişoara\";\"main\"\n\"663244\";\"Valisoara\";\"ascii\"\n\"663256\";\"Vălenii de Munte\";\"main\"\n\"663256\";\"Valenii de Munte\";\"ascii\"\n\"663256\";\"Valeni-de-Munte\";\"other\"\n\"663256\";\"Văleni-de-Munte\";\"other\"\n\"663261\";\"Văleni- Dîmboviţa\";\"main\"\n\"663261\";\"Valeni- Dimbovita\";\"ascii\"\n\"663261\";\"Valeni\";\"other\"\n\"663261\";\"Văleni\";\"other\"\n\"663297\";\"Văleni\";\"main\"\n\"663297\";\"Valeni\";\"ascii\"\n\"663297\";\"Valenii\";\"other\"\n\"663297\";\"Vălenii\";\"other\"\n\"663306\";\"Valea Vinului\";\"main\"\n\"663314\";\"Valea Viilor\";\"main\"\n\"663314\";\"Vorumloc\";\"other\"\n\"663331\";\"Valea Ursului\";\"main\"\n\"663386\";\"Valea Stanciului\";\"main\"\n\"663548\";\"Valea Nucarilor\";\"main\"\n\"663548\";\"Ion Gheorghe Duca\";\"other\"\n\"663548\";\"Sarighiol-de Vale\";\"other\"\n\"663575\";\"Valea Moldovei\";\"main\"\n\"663575\";\"Valea Seaca\";\"other\"\n\"663575\";\"Valea Seacă\";\"other\"\n\"663624\";\"Valea Mare\";\"main\"\n\"663624\";\"Nagyatak\";\"other\"\n\"663632\";\"Valea Mare\";\"main\"\n\"663634\";\"Valea Mare\";\"main\"\n\"663636\";\"Valea Mare\";\"main\"\n\"663636\";\"Valea Mare Noua\";\"other\"\n\"663636\";\"Valea Mare Nouă\";\"other\"\n\"663692\";\"Valea lui Mihai\";\"main\"\n\"663692\";\"Valea lui\";\"other\"\n\"663730\";\"Valea Ierii\";\"main\"\n\"663733\";\"Valea Iaşului\";\"main\"\n\"663733\";\"Valea Iasului\";\"ascii\"\n\"663777\";\"Valea Dragului\";\"main\"\n\"663777\";\"Valea Dragu\";\"other\"\n\"663798\";\"Valea Danului\";\"main\"\n\"663798\";\"Radesti\";\"other\"\n\"663798\";\"Rădeşti\";\"other\"\n\"663813\";\"Valea Crişului\";\"main\"\n\"663813\";\"Valea Crisului\";\"ascii\"\n\"663813\";\"Korospatak\";\"other\"\n\"663813\";\"Köröspatak\";\"other\"\n\"663834\";\"Valea Ciorii\";\"main\"\n\"663834\";\"Ciorusca\";\"other\"\n\"663834\";\"Cioruşca\";\"other\"\n\"663840\";\"Valea Chioarului\";\"main\"\n\"663840\";\"Gaura\";\"other\"\n\"663840\";\"Kovargara\";\"other\"\n\"663849\";\"Valea Caselor\";\"main\"\n\"663863\";\"Valea Călugărească\";\"main\"\n\"663863\";\"Valea Calugareasca\";\"ascii\"\n\"663926\";\"Valea Argovei\";\"main\"\n\"663926\";\"Brancoveni\";\"other\"\n\"663926\";\"Brincoveni\";\"other\"\n\"663926\";\"Brâncoveni\";\"other\"\n\"663926\";\"Brîncoveni\";\"other\"\n\"663926\";\"Frimu\";\"other\"\n\"663926\";\"I.C. Bratianu\";\"other\"\n\"663926\";\"I.C. Brătianu\";\"other\"\n\"663926\";\"I.C. Frimu\";\"other\"\n\"663926\";\"Ion I. C. Bratianu\";\"other\"\n\"663926\";\"Ion I. C. Brătianu\";\"other\"\n\"663950\";\"Valcău de Jos\";\"main\"\n\"663950\";\"Valcau de Jos\";\"ascii\"\n\"663950\";\"Valcaul-de-Jos\";\"other\"\n\"663950\";\"Vălcăul-de-Jos\";\"other\"\n\"663968\";\"Vaideeni\";\"main\"\n\"663976\";\"Văgiuleşti\";\"main\"\n\"663976\";\"Vagiulesti\";\"ascii\"\n\"663996\";\"Vadu Paşii\";\"main\"\n\"663996\";\"Vadu Pasii\";\"ascii\"\n\"663996\";\"Vadu Pasi\";\"other\"\n\"663996\";\"Vadu Paşi\";\"other\"\n\"663996\";\"Vadul-Pasii\";\"other\"\n\"663996\";\"Vadul-Paşii\";\"other\"\n\"664002\";\"Vadu Moţilor\";\"main\"\n\"664002\";\"Vadu Motilor\";\"ascii\"\n\"664002\";\"Sacatura\";\"other\"\n\"664002\";\"Secatura\";\"other\"\n\"664002\";\"Secătura\";\"other\"\n\"664002\";\"Săcătura\";\"other\"\n\"664003\";\"Vadu Moldovei\";\"main\"\n\"664003\";\"Barasti-Ciumulesti\";\"other\"\n\"664003\";\"Barasti-Ciumulestii\";\"other\"\n\"664003\";\"Bărăsti-Ciumuleştii\";\"other\"\n\"664003\";\"Bărăşti-Ciumuleşti\";\"other\"\n\"664003\";\"Ciumulesti\";\"other\"\n\"664003\";\"Ciumuleşti\";\"other\"\n\"664006\";\"Vadu Izei\";\"main\"\n\"664011\";\"Vadu Crişului\";\"main\"\n\"664011\";\"Vadu Crisului\";\"ascii\"\n\"664011\";\"Rev\";\"other\"\n\"664011\";\"Rév\";\"other\"\n\"664011\";\"Vad\";\"other\"\n\"664011\";\"Vadul lui Carol II\";\"other\"\n\"664011\";\"Vadul-Carol II\";\"other\"\n\"664020\";\"Vădeni\";\"main\"\n\"664020\";\"Vadeni\";\"ascii\"\n\"664022\";\"Vădăstriţa\";\"main\"\n\"664022\";\"Vadastrita\";\"ascii\"\n\"664024\";\"Vădastra\";\"main\"\n\"664024\";\"Vadastra\";\"ascii\"\n\"664029\";\"Vad\";\"main\"\n\"664034\";\"Văculeşti\";\"main\"\n\"664034\";\"Vaculesti\";\"ascii\"\n\"664041\";\"Văcăreşti\";\"main\"\n\"664041\";\"Vacaresti\";\"ascii\"\n\"664069\";\"Urzicuţa\";\"main\"\n\"664069\";\"Urzicuta\";\"ascii\"\n\"664073\";\"Urziceni\";\"main\"\n\"664074\";\"Urziceni\";\"main\"\n\"664127\";\"Urmeniş\";\"main\"\n\"664127\";\"Urmenis\";\"ascii\"\n\"664127\";\"Urmenisu\";\"other\"\n\"664127\";\"Urmenisul\";\"other\"\n\"664127\";\"Urmenişu\";\"other\"\n\"664127\";\"Urmenişul\";\"other\"\n\"664150\";\"Urlaţi\";\"main\"\n\"664150\";\"Urlati\";\"ascii\"\n\"664150\";\"Urlatii\";\"other\"\n\"664152\";\"Uriu\";\"main\"\n\"664152\";\"Uri\";\"other\"\n\"664152\";\"Uriul\";\"other\"\n\"664152\";\"Uriul-de-Sus\";\"other\"\n\"664163\";\"Uricani\";\"main\"\n\"664169\";\"Urecheşti\";\"main\"\n\"664169\";\"Urechesti\";\"ascii\"\n\"664169\";\"Urechestii\";\"other\"\n\"664169\";\"Urecheştii\";\"other\"\n\"664170\";\"Urecheşti\";\"main\"\n\"664170\";\"Urechesti\";\"ascii\"\n\"664175\";\"Urecheni\";\"main\"\n\"664175\";\"General Al. Averescu\";\"other\"\n\"664175\";\"General Averescu\";\"other\"\n\"664175\";\"General Uricheni\";\"other\"\n\"664184\";\"Urdari\";\"main\"\n\"664184\";\"Urdarii de Jos\";\"other\"\n\"664193\";\"Unţeni\";\"main\"\n\"664193\";\"Unteni\";\"ascii\"\n\"664202\";\"Unirea\";\"main\"\n\"664202\";\"Berthelot\";\"other\"\n\"664203\";\"Unirea\";\"main\"\n\"664203\";\"Osmanu\";\"other\"\n\"664203\";\"Osmanul\";\"other\"\n\"664204\";\"Unirea\";\"main\"\n\"664204\";\"Socariciu\";\"other\"\n\"664204\";\"Socariciul\";\"other\"\n\"664204\";\"Şocariciu\";\"other\"\n\"664204\";\"Şocariciul\";\"other\"\n\"664205\";\"Unirea\";\"main\"\n\"664205\";\"Risipiti\";\"other\"\n\"664205\";\"Risipiţi\";\"other\"\n\"664215\";\"Ungureni-Jianu\";\"main\"\n\"664226\";\"Ungureni\";\"main\"\n\"664261\";\"Unguraş\";\"main\"\n\"664261\";\"Unguras\";\"ascii\"\n\"664263\";\"Ungra\";\"main\"\n\"664266\";\"Ungheni-Prut\";\"main\"\n\"664266\";\"Ungheni\";\"other\"\n\"664271\";\"Ungheni\";\"main\"\n\"664271\";\"Nyaradto\";\"other\"\n\"664271\";\"Nyàràdtö\";\"other\"\n\"664273\";\"Ungheni\";\"main\"\n\"664281\";\"Umbrăreşti\";\"main\"\n\"664281\";\"Umbraresti\";\"ascii\"\n\"664281\";\"Umbraresti-Slobozia\";\"other\"\n\"664281\";\"Umbrăreşti-Slobozia\";\"other\"\n\"664286\";\"Ulmu\";\"main\"\n\"664286\";\"General Poetas\";\"other\"\n\"664286\";\"General Poetaş\";\"other\"\n\"664286\";\"Poetas\";\"other\"\n\"664286\";\"Poetaş\";\"other\"\n\"664287\";\"Ulmu\";\"main\"\n\"664287\";\"Ulmul\";\"other\"\n\"664287\";\"Ulmy\";\"other\"\n\"664294\";\"Ulmi\";\"main\"\n\"664295\";\"Ulmi\";\"main\"\n\"664295\";\"Ulmii-Ornesti\";\"other\"\n\"664295\";\"Ulmii-Orneşti\";\"other\"\n\"664311\";\"Ulmeni\";\"main\"\n\"664312\";\"Ulmeni\";\"main\"\n\"664314\";\"Ulmeni\";\"main\"\n\"664317\";\"Ulma\";\"main\"\n\"664329\";\"Ulieşti\";\"main\"\n\"664329\";\"Uliesti\";\"ascii\"\n\"664344\";\"Uivar\";\"main\"\n\"664344\";\"Neuburg an der Bega\";\"other\"\n\"664344\";\"Ujvar\";\"other\"\n\"664344\";\"Újvár\";\"other\"\n\"664372\";\"Udeşti\";\"main\"\n\"664372\";\"Udesti\";\"ascii\"\n\"664372\";\"Uidesti\";\"other\"\n\"664372\";\"Uideşti\";\"other\"\n\"664385\";\"Uda\";\"main\"\n\"664390\";\"Ucea de Sus\";\"main\"\n\"664397\";\"Tuzla\";\"main\"\n\"664404\";\"Tutova\";\"main\"\n\"664404\";\"Dragalina\";\"other\"\n\"664406\";\"Ţuţora\";\"main\"\n\"664406\";\"Tutora\";\"ascii\"\n\"664419\";\"Tuşnad\";\"main\"\n\"664419\";\"Tusnad\";\"ascii\"\n\"664419\";\"Gara Tusnad-Sat\";\"other\"\n\"664419\";\"Gara Tuşnad-Sat\";\"other\"\n\"664419\";\"Tusnad Sat\";\"other\"\n\"664419\";\"Tusnad-Kozseg\";\"other\"\n\"664419\";\"Tusnàd-Közsèg\";\"other\"\n\"664419\";\"Tuşnad Sat\";\"other\"\n\"664425\";\"Turulung\";\"main\"\n\"664432\";\"Turţ\";\"main\"\n\"664432\";\"Turt\";\"ascii\"\n\"664436\";\"Turnu Roşu\";\"main\"\n\"664436\";\"Turnu Rosu\";\"ascii\"\n\"664436\";\"Porcesti\";\"other\"\n\"664436\";\"Porceşti\";\"other\"\n\"664436\";\"Turnul Rosu\";\"other\"\n\"664436\";\"Turnul Roşu\";\"other\"\n\"664437\";\"Turnu Măgurele\";\"main\"\n\"664437\";\"Turnu Magurele\";\"ascii\"\n\"664437\";\"Turnul-Magurele\";\"other\"\n\"664437\";\"Turnul-Măgurele\";\"other\"\n\"664447\";\"Turia\";\"main\"\n\"664447\";\"Torja\";\"other\"\n\"664451\";\"Tureni\";\"main\"\n\"664451\";\"Tur\";\"other\"\n\"664459\";\"Turdaş\";\"main\"\n\"664459\";\"Turdas\";\"ascii\"\n\"664460\";\"Turda\";\"main\"\n\"664460\";\"Thorenburg\";\"other\"\n\"664460\";\"Torda\";\"other\"\n\"664460\";\"to~uruda\";\"other\"\n\"664460\";\"Турда\";\"other\"\n\"664460\";\"トゥルダ\";\"other\"\n\"664464\";\"Turcoaia\";\"main\"\n\"664467\";\"Turcineşti\";\"main\"\n\"664467\";\"Turcinesti\";\"ascii\"\n\"664475\";\"Turceni\";\"main\"\n\"664475\";\"Turcenii de Sus\";\"other\"\n\"664481\";\"Turburea\";\"main\"\n\"664481\";\"Turburea de Jos\";\"other\"\n\"664487\";\"Tupilaţi\";\"main\"\n\"664487\";\"Tupilati\";\"ascii\"\n\"664493\";\"Tunelu-Teliu\";\"main\"\n\"664502\";\"Tunari\";\"main\"\n\"664502\";\"Tunarii\";\"other\"\n\"664505\";\"Tuluceşti\";\"main\"\n\"664505\";\"Tulucesti\";\"ascii\"\n\"664507\";\"Tulnici\";\"main\"\n\"664507\";\"Tulnicii\";\"other\"\n\"664511\";\"Tulgheş\";\"main\"\n\"664511\";\"Tulghes\";\"ascii\"\n\"664511\";\"Toelgyes\";\"other\"\n\"664511\";\"Tölgyes\";\"other\"\n\"664518\";\"Tulcea\";\"main\"\n\"664518\";\"Aegyssos\";\"other\"\n\"664518\";\"Tulca\";\"other\"\n\"664518\";\"Tulcha\";\"other\"\n\"664518\";\"Tulcia\";\"other\"\n\"664518\";\"Tulcsa\";\"other\"\n\"664518\";\"Tulcza\";\"other\"\n\"664518\";\"Tultscha\";\"other\"\n\"664518\";\"Tulça\";\"other\"\n\"664518\";\"Tulčia\";\"other\"\n\"664518\";\"twlchy\";\"other\"\n\"664518\";\"Тулча\";\"other\"\n\"664518\";\"طولچی\";\"other\"\n\"664521\";\"Tulca\";\"main\"\n\"664534\";\"Ţuglui\";\"main\"\n\"664534\";\"Tuglui\";\"ascii\"\n\"664539\";\"Tufeşti\";\"main\"\n\"664539\";\"Tufesti\";\"ascii\"\n\"664544\";\"Tufeni\";\"main\"\n\"664544\";\"Tufeni din Vale\";\"other\"\n\"664544\";\"Tufenii-din Vale\";\"other\"\n\"664564\";\"Suceveni\";\"main\"\n\"664564\";\"Tudor Vladimirescu\";\"other\"\n\"664564\";\"Vladimirescu\";\"other\"\n\"664565\";\"Tudor Vladimirescu\";\"main\"\n\"664565\";\"Chirilesti\";\"other\"\n\"664565\";\"Chirileşti\";\"other\"\n\"664566\";\"Tudor Vladimirescu\";\"main\"\n\"664575\";\"Tudora\";\"main\"\n\"664578\";\"Truşeşti\";\"main\"\n\"664578\";\"Trusesti\";\"ascii\"\n\"664591\";\"Troianul\";\"main\"\n\"664591\";\"Belitori\";\"other\"\n\"664598\";\"Trivalea-Moşteni\";\"main\"\n\"664598\";\"Trivalea-Mosteni\";\"ascii\"\n\"664598\";\"Trivalea\";\"other\"\n\"664602\";\"Tritenii de Jos\";\"main\"\n\"664609\";\"Trifeşti\";\"main\"\n\"664609\";\"Trifesti\";\"ascii\"\n\"664610\";\"Trifeşti\";\"main\"\n\"664610\";\"Trifesti\";\"ascii\"\n\"664616\";\"Treznea\";\"main\"\n\"664616\";\"Tresnea\";\"other\"\n\"664666\";\"Traian Vuia\";\"main\"\n\"664666\";\"Bujor\";\"other\"\n\"664677\";\"Traian\";\"main\"\n\"664677\";\"Trajan\";\"other\"\n\"664680\";\"Traian\";\"main\"\n\"664686\";\"Traian\";\"main\"\n\"664687\";\"Traian\";\"main\"\n\"664698\";\"Toteşti\";\"main\"\n\"664698\";\"Totesti\";\"ascii\"\n\"664708\";\"Tortoman\";\"main\"\n\"664716\";\"Tormac\";\"main\"\n\"664716\";\"Rittberg\";\"other\"\n\"664716\";\"Tormak\";\"other\"\n\"664716\";\"Tormák\";\"other\"\n\"664722\";\"Topraisar\";\"main\"\n\"664722\";\"Topraisari\";\"other\"\n\"664724\";\"Toporu\";\"main\"\n\"664724\";\"Toporul\";\"other\"\n\"664729\";\"Topoloveni\";\"main\"\n\"664729\";\"Targu-Carcinov\";\"other\"\n\"664729\";\"Târgu-Cârcinov\";\"other\"\n\"664729\";\"Тополовени\";\"other\"\n\"664731\";\"Topolovăţu Mare\";\"main\"\n\"664731\";\"Topolovatu Mare\";\"ascii\"\n\"664731\";\"Grosstoplowetz\";\"other\"\n\"664731\";\"Nagy-Topolovecz\";\"other\"\n\"664731\";\"Nagytopoly\";\"other\"\n\"664731\";\"Topolovatul-Mare\";\"other\"\n\"664731\";\"Topolovăţul-Mare\";\"other\"\n\"664736\";\"Topolog\";\"main\"\n\"664755\";\"Topliceni\";\"main\"\n\"664755\";\"Zgirciti\";\"other\"\n\"664755\";\"Zgirciţi\";\"other\"\n\"664759\";\"Topleţ\";\"main\"\n\"664759\";\"Toplet\";\"ascii\"\n\"664759\";\"Cernahevica\";\"other\"\n\"664771\";\"Topana\";\"main\"\n\"664774\";\"Topalu\";\"main\"\n\"664774\";\"Topal\";\"other\"\n\"664774\";\"Topalul\";\"other\"\n\"664796\";\"Tomşani\";\"main\"\n\"664796\";\"Tomsani\";\"ascii\"\n\"664797\";\"Tomşani\";\"main\"\n\"664797\";\"Tomsani\";\"ascii\"\n\"664819\";\"Tomeşti\";\"main\"\n\"664819\";\"Tomesti\";\"ascii\"\n\"664824\";\"Tomeşti\";\"main\"\n\"664824\";\"Tomesti\";\"ascii\"\n\"664825\";\"Tomeşti\";\"main\"\n\"664825\";\"Tomesti\";\"ascii\"\n\"664858\";\"Todireşti\";\"main\"\n\"664858\";\"Todiresti\";\"ascii\"\n\"664858\";\"Toedoresti\";\"other\"\n\"664858\";\"Toedoreşti\";\"other\"\n\"664859\";\"Todireşti\";\"main\"\n\"664859\";\"Todiresti\";\"ascii\"\n\"664860\";\"Todireşti\";\"main\"\n\"664860\";\"Todiresti\";\"ascii\"\n\"664865\";\"Todireni\";\"main\"\n\"664865\";\"Ceir\";\"other\"\n\"664865\";\"Movileni\";\"other\"\n\"664891\";\"Titu\";\"main\"\n\"664891\";\"Titu-Targ\";\"other\"\n\"664891\";\"Titu-Tirg\";\"other\"\n\"664891\";\"Titu-Tîrg\";\"other\"\n\"664891\";\"Titul\";\"other\"\n\"664891\";\"Титу\";\"other\"\n\"664902\";\"Titeşti\";\"main\"\n\"664902\";\"Titesti\";\"ascii\"\n\"664902\";\"Tatestii\";\"other\"\n\"664902\";\"Ţaţeştii\";\"other\"\n\"664910\";\"Tismana\";\"main\"\n\"664922\";\"Tisău\";\"main\"\n\"664922\";\"Tisau\";\"ascii\"\n\"664938\";\"Tîrşolţel\";\"main\"\n\"664938\";\"Tirsoltel\";\"ascii\"\n\"664957\";\"Tîrnova\";\"main\"\n\"664957\";\"Tirnova\";\"ascii\"\n\"664957\";\"Spineni\";\"other\"\n\"664957\";\"Tarnova\";\"other\"\n\"664957\";\"Târnova\";\"other\"\n\"664958\";\"Târnova\";\"main\"\n\"664958\";\"Tarnova\";\"ascii\"\n\"664958\";\"Tirnova\";\"other\"\n\"664958\";\"Tîrnova\";\"other\"\n\"664991\";\"Tîrgu Trotuş\";\"main\"\n\"664991\";\"Tirgu Trotus\";\"ascii\"\n\"664991\";\"Targu-Trotus\";\"other\"\n\"664991\";\"Targul Trotusului\";\"other\"\n\"664991\";\"Târgu-Trotuş\";\"other\"\n\"664991\";\"Târgul Trotusului\";\"other\"\n\"664999\";\"Tîrguşor\";\"main\"\n\"664999\";\"Tirgusor\";\"ascii\"\n\"664999\";\"Pazarli\";\"other\"\n\"664999\";\"Pazarlia\";\"other\"\n\"664999\";\"Pazarlid\";\"other\"\n\"664999\";\"Targusor\";\"other\"\n\"664999\";\"Târguşor\";\"other\"\n\"665000\";\"Tîrgu Secuiesc\";\"main\"\n\"665000\";\"Tirgu Secuiesc\";\"ascii\"\n\"665000\";\"Kezdivasarhely\";\"other\"\n\"665000\";\"Kezoi-Vasarmely\";\"other\"\n\"665000\";\"Kèzdivásàrhely\";\"other\"\n\"665000\";\"Kèzoi-Vasarmely\";\"other\"\n\"665000\";\"Tarcu Sacuesc\";\"other\"\n\"665000\";\"Targu-Sacuesc\";\"other\"\n\"665000\";\"Targul Sacuesc\";\"other\"\n\"665000\";\"Tirgu Secuesc\";\"other\"\n\"665000\";\"Tirgul Sacuesc\";\"other\"\n\"665000\";\"Târgu-Săcuesc\";\"other\"\n\"665000\";\"Târgul Săcuesc\";\"other\"\n\"665000\";\"Tîrgu Secuesc\";\"other\"\n\"665000\";\"Tîrgul Săcuesc\";\"other\"\n\"665002\";\"Tîrgu Ocna\";\"main\"\n\"665002\";\"Tirgu Ocna\";\"ascii\"\n\"665002\";\"Targu Ocna\";\"other\"\n\"665002\";\"Targul-Ocna\";\"other\"\n\"665002\";\"Târgu Ocna\";\"other\"\n\"665002\";\"Târgul-Ocna\";\"other\"\n\"665003\";\"Tîrgu Neamţ\";\"main\"\n\"665003\";\"Tirgu Neamt\";\"ascii\"\n\"665003\";\"Neamtzu\";\"other\"\n\"665003\";\"Pomete\";\"other\"\n\"665003\";\"Pometea\";\"other\"\n\"665003\";\"Targu-Neamt\";\"other\"\n\"665003\";\"Targul Neamt\";\"other\"\n\"665003\";\"Tuteni\";\"other\"\n\"665003\";\"Târgu-Neamţ\";\"other\"\n\"665003\";\"Târgul Neamţ\";\"other\"\n\"665003\";\"Ţuţeni\";\"other\"\n\"665004\";\"Târgu-Mureş\";\"main\"\n\"665004\";\"Targu-Mures\";\"ascii\"\n\"665004\";\"Maros-Vasarhely\";\"other\"\n\"665004\";\"Maros-Vásárhely\";\"other\"\n\"665004\";\"Marosvasarhely\";\"other\"\n\"665004\";\"Marosvásárhely\";\"other\"\n\"665004\";\"Muresh\";\"other\"\n\"665004\";\"Neumarkt\";\"other\"\n\"665004\";\"Neumarkt am Mieresch\";\"other\"\n\"665004\";\"Novum Forum Siculorum\";\"other\"\n\"665004\";\"Targu Mures\";\"other\"\n\"665004\";\"Targul-Mures\";\"other\"\n\"665004\";\"Tirgu Mures\";\"other\"\n\"665004\";\"Turgul Mures\";\"other\"\n\"665004\";\"Tyrgu-Muresh\";\"other\"\n\"665004\";\"Târgu Mureş\";\"other\"\n\"665004\";\"Târgul-Mureş\";\"other\"\n\"665004\";\"Tîrgu Mureş\";\"other\"\n\"665004\";\"trgw mwrs\";\"other\"\n\"665004\";\"Тыргу-Муреш\";\"other\"\n\"665004\";\"טרגו מורש\";\"other\"\n\"665010\";\"Târgu Jiu\";\"main\"\n\"665010\";\"Targu Jiu\";\"ascii\"\n\"665010\";\"Jiu\";\"other\"\n\"665010\";\"Targul-Jiu\";\"other\"\n\"665010\";\"Tirgu Jiu\";\"other\"\n\"665010\";\"Turgu Zhiu\";\"other\"\n\"665010\";\"Târgul-Jiu\";\"other\"\n\"665010\";\"Tîrgu Jiu\";\"other\"\n\"665010\";\"Zsilvasarhely\";\"other\"\n\"665010\";\"Zsilvásárhely\";\"other\"\n\"665010\";\"trgw z'yw\";\"other\"\n\"665010\";\"Търгу Жиу\";\"other\"\n\"665010\";\"טרגו ז'יו\";\"other\"\n\"665013\";\"Tîrgu Frumos\";\"main\"\n\"665013\";\"Tirgu Frumos\";\"ascii\"\n\"665013\";\"Targu-Frumos\";\"other\"\n\"665013\";\"Targul Frumos\";\"other\"\n\"665013\";\"Târgu-Frumos\";\"other\"\n\"665013\";\"Târgul Frumos\";\"other\"\n\"665017\";\"Tîrgu Cărbuneşti\";\"main\"\n\"665017\";\"Tirgu Carbunesti\";\"ascii\"\n\"665017\";\"Targu Carbunesti\";\"other\"\n\"665017\";\"Targul-Carbunesti\";\"other\"\n\"665017\";\"Târgu Cărbuneşti\";\"other\"\n\"665017\";\"Târgul-Cărbuneşti\";\"other\"\n\"665019\";\"Tîrgşoru Vechi\";\"main\"\n\"665019\";\"Tirgsoru Vechi\";\"ascii\"\n\"665019\";\"Targsorul-Vechi\";\"other\"\n\"665019\";\"Targsorul-Vechiu\";\"other\"\n\"665019\";\"Târgşorul-Vechi\";\"other\"\n\"665019\";\"Târgşorul-Vechiu\";\"other\"\n\"665024\";\"Târgovişte\";\"main\"\n\"665024\";\"Targoviste\";\"ascii\"\n\"665024\";\"Tirgoviste\";\"other\"\n\"665024\";\"Turgovishhe\";\"other\"\n\"665024\";\"Târgoviste\";\"other\"\n\"665024\";\"Tîrgovişte\";\"other\"\n\"665024\";\"to~urugovu~ishute\";\"other\"\n\"665024\";\"Търговище\";\"other\"\n\"665024\";\"トゥルゴヴィシュテ\";\"other\"\n\"665027\";\"Tiream\";\"main\"\n\"665050\";\"Ţinteşti\";\"main\"\n\"665050\";\"Tintesti\";\"ascii\"\n\"665061\";\"Tinosu\";\"main\"\n\"665061\";\"Tinosul\";\"other\"\n\"665083\";\"Tîmna\";\"main\"\n\"665083\";\"Timna\";\"ascii\"\n\"665083\";\"Tamna\";\"other\"\n\"665083\";\"Tâmna\";\"other\"\n\"665087\";\"Timişoara\";\"main\"\n\"665087\";\"Timisoara\";\"ascii\"\n\"665087\";\"Freidorf\";\"other\"\n\"665087\";\"Josefvarosa\";\"other\"\n\"665087\";\"Josephs-Stadt\";\"other\"\n\"665087\";\"Jozsefvaros\";\"other\"\n\"665087\";\"Jósefvárosa\";\"other\"\n\"665087\";\"Józsefváros\";\"other\"\n\"665087\";\"Kendetelep\";\"other\"\n\"665087\";\"Szabadfalu\";\"other\"\n\"665087\";\"Temeschburg\";\"other\"\n\"665087\";\"Temeschwar\";\"other\"\n\"665087\";\"Temesvar\";\"other\"\n\"665087\";\"Temesvarinum\";\"other\"\n\"665087\";\"Temesvár\";\"other\"\n\"665087\";\"Temeswar\";\"other\"\n\"665087\";\"Temeşvar\";\"other\"\n\"665087\";\"Temešvár\";\"other\"\n\"665087\";\"Temishvar\";\"other\"\n\"665087\";\"Temisoara\";\"other\"\n\"665087\";\"Temisvar\";\"other\"\n\"665087\";\"Temişoara\";\"other\"\n\"665087\";\"Temišvar\";\"other\"\n\"665087\";\"Timishoara\";\"other\"\n\"665087\";\"Timišoara\";\"other\"\n\"665087\";\"timishoara\";\"other\"\n\"665087\";\"timisyoala\";\"other\"\n\"665087\";\"tmshwar\";\"other\"\n\"665087\";\"tymyshwara\";\"other\"\n\"665087\";\"Темишвар\";\"other\"\n\"665087\";\"Тимишоара\";\"other\"\n\"665087\";\"טימישוארה\";\"other\"\n\"665087\";\"تيميشوارا\";\"other\"\n\"665087\";\"طمشوار\";\"other\"\n\"665087\";\"ティミショアラ\";\"other\"\n\"665087\";\"티미쇼아라\";\"other\"\n\"665089\";\"Timişeşti\";\"main\"\n\"665089\";\"Timisesti\";\"ascii\"\n\"665101\";\"Tilişca\";\"main\"\n\"665101\";\"Tilisca\";\"ascii\"\n\"665104\";\"Tileagd\";\"main\"\n\"665104\";\"Telegd\";\"other\"\n\"665110\";\"Tiha Bîrgăului\";\"main\"\n\"665110\";\"Tiha Birgaului\";\"ascii\"\n\"665110\";\"Bargaului\";\"other\"\n\"665110\";\"Bârgăului\";\"other\"\n\"665110\";\"Tiha\";\"other\"\n\"665110\";\"Tiha Barg\";\"other\"\n\"665110\";\"Tiha-Bargaului\";\"other\"\n\"665110\";\"Tiha-Bârgăului\";\"other\"\n\"665113\";\"Tigveni\";\"main\"\n\"665140\";\"Ţigăneşti\";\"main\"\n\"665140\";\"Tiganesti\";\"ascii\"\n\"665145\";\"Ţigănaşi\";\"main\"\n\"665145\";\"Tiganasi\";\"ascii\"\n\"665145\";\"Tiganesti\";\"other\"\n\"665145\";\"Tigănesti\";\"other\"\n\"665151\";\"Ţifeşti\";\"main\"\n\"665151\";\"Tifesti\";\"ascii\"\n\"665155\";\"Ticvaniu Mare\";\"main\"\n\"665155\";\"Ticvaniul-Mare\";\"other\"\n\"665155\";\"Ticvanul-Mare\";\"other\"\n\"665155\";\"Tikvaniul Mare\";\"other\"\n\"665168\";\"Ţicleni\";\"main\"\n\"665168\";\"Ticleni\";\"ascii\"\n\"665176\";\"Tichileşti\";\"main\"\n\"665176\";\"Tichilesti\";\"ascii\"\n\"665182\";\"Ţibucani\";\"main\"\n\"665182\";\"Tibucani\";\"ascii\"\n\"665182\";\"Tibucani-de-Sus\";\"other\"\n\"665182\";\"Tibucanii de Sus\";\"other\"\n\"665182\";\"Ţibucani-de-Sus\";\"other\"\n\"665182\";\"Ţibucanii de Sus\";\"other\"\n\"665193\";\"Ţibăneşti\";\"main\"\n\"665193\";\"Tibanesti\";\"ascii\"\n\"665196\";\"Ţibana\";\"main\"\n\"665196\";\"Tibana\";\"ascii\"\n\"665199\";\"Tia Mare\";\"main\"\n\"665199\";\"Tia-Mar\";\"other\"\n\"665204\";\"Tetoiu\";\"main\"\n\"665204\";\"Bugiulesti\";\"other\"\n\"665204\";\"Bugiuleşti\";\"other\"\n\"665204\";\"Tetoiul\";\"other\"\n\"665218\";\"Teslui\";\"main\"\n\"665225\";\"Terpeziţa\";\"main\"\n\"665225\";\"Terpezita\";\"ascii\"\n\"665225\";\"Terezita\";\"other\"\n\"665225\";\"Tereziţa\";\"other\"\n\"665231\";\"Teremia Mare\";\"main\"\n\"665231\";\"Gross-Teremin\";\"other\"\n\"665231\";\"Mariafolde\";\"other\"\n\"665231\";\"Marienfeld\";\"other\"\n\"665231\";\"Máriafölde\";\"other\"\n\"665231\";\"Nagy-Terem\";\"other\"\n\"665231\";\"Nagy-Teremia\";\"other\"\n\"665231\";\"Nagy-Tezrem\";\"other\"\n\"665231\";\"Velika Teremija\";\"other\"\n\"665235\";\"Teregova\";\"main\"\n\"665237\";\"Terebeşti\";\"main\"\n\"665237\";\"Terebesti\";\"ascii\"\n\"665242\";\"Ţepu\";\"main\"\n\"665242\";\"Tepu\";\"ascii\"\n\"665242\";\"Tepu de Jos\";\"other\"\n\"665242\";\"Ţepu de Jos\";\"other\"\n\"665268\";\"Teliucu Inferior\";\"main\"\n\"665268\";\"Teliuc\";\"other\"\n\"665268\";\"Teliucul-Inferior\";\"other\"\n\"665277\";\"Teleşti\";\"main\"\n\"665277\";\"Telesti\";\"ascii\"\n\"665277\";\"Telesti-Birnici\";\"other\"\n\"665277\";\"Telestii Birnici\";\"other\"\n\"665277\";\"Teleşti-Birnici\";\"other\"\n\"665290\";\"Telega\";\"main\"\n\"665304\";\"Telciu\";\"main\"\n\"665304\";\"Telciul\";\"other\"\n\"665318\";\"Teiuş\";\"main\"\n\"665318\";\"Teius\";\"ascii\"\n\"665328\";\"Teiu\";\"main\"\n\"665328\";\"Teiu din Deal\";\"other\"\n\"665328\";\"Teiul din Deal\";\"other\"\n\"665337\";\"Teişani\";\"main\"\n\"665337\";\"Teisani\";\"ascii\"\n\"665355\";\"Tecuci\";\"main\"\n\"665355\";\"Tekuch\";\"other\"\n\"665355\";\"Текуч\";\"other\"\n\"665359\";\"Techirghiol\";\"main\"\n\"665359\";\"Tekerghiol\";\"other\"\n\"665371\";\"Teaca\";\"main\"\n\"665377\";\"Tazlău\";\"main\"\n\"665377\";\"Tazlau\";\"ascii\"\n\"665377\";\"Tazlaul\";\"other\"\n\"665377\";\"Tazlăul\";\"other\"\n\"665382\";\"Tăuţii Măgheruş\";\"main\"\n\"665382\";\"Tautii Magherus\";\"ascii\"\n\"665382\";\"Tauti Magheraus\";\"other\"\n\"665382\";\"Tautii Margheraus\";\"other\"\n\"665382\";\"Tăuţi Măgherăuş\";\"other\"\n\"665382\";\"Tăuţii Mărgherăuş\";\"other\"\n\"665387\";\"Tăuteu\";\"main\"\n\"665387\";\"Tauteu\";\"ascii\"\n\"665387\";\"Tautau\";\"other\"\n\"665387\";\"Toti\";\"other\"\n\"665387\";\"Tăutău\";\"other\"\n\"665394\";\"Tauţ\";\"main\"\n\"665394\";\"Taut\";\"ascii\"\n\"665394\";\"Taur\";\"other\"\n\"665394\";\"Tauti\";\"other\"\n\"665394\";\"Tauţi\";\"other\"\n\"665394\";\"Tăur\";\"other\"\n\"665398\";\"Tăureni\";\"main\"\n\"665398\";\"Taureni\";\"ascii\"\n\"665398\";\"Bikafalva\";\"other\"\n\"665413\";\"Tătuleşti\";\"main\"\n\"665413\";\"Tatulesti\";\"ascii\"\n\"665425\";\"Tătăruşi\";\"main\"\n\"665425\";\"Tatarusi\";\"ascii\"\n\"665434\";\"Tătaru\";\"main\"\n\"665434\";\"Tataru\";\"ascii\"\n\"665450\";\"Tătărăşti\";\"main\"\n\"665450\";\"Tatarasti\";\"ascii\"\n\"665450\";\"Corni\";\"other\"\n\"665450\";\"Tatarestii\";\"other\"\n\"665450\";\"Tătăreştii\";\"other\"\n\"665452\";\"Tătăranu\";\"main\"\n\"665452\";\"Tataranu\";\"ascii\"\n\"665459\";\"Tătărani\";\"main\"\n\"665459\";\"Tatarani\";\"ascii\"\n\"665469\";\"Tăşnad\";\"main\"\n\"665469\";\"Tasnad\";\"ascii\"\n\"665471\";\"Taşca\";\"main\"\n\"665471\";\"Tasca\";\"ascii\"\n\"665479\";\"Tărtăşeşti\";\"main\"\n\"665479\";\"Tartasesti\";\"ascii\"\n\"665497\";\"Tărlungeni\";\"main\"\n\"665497\";\"Tarlungeni\";\"ascii\"\n\"665497\";\"Tarlugeni\";\"other\"\n\"665497\";\"Tarungemi\";\"other\"\n\"665497\";\"Tatrang\";\"other\"\n\"665497\";\"Târungemi\";\"other\"\n\"665497\";\"Tărlugeni\";\"other\"\n\"665517\";\"Tarcea\";\"main\"\n\"665521\";\"Tarcău\";\"main\"\n\"665521\";\"Tarcau\";\"ascii\"\n\"665521\";\"Ion Gheorghe Duca\";\"other\"\n\"665521\";\"Tarcau-Gheuca\";\"other\"\n\"665521\";\"Tarcău-Gheuca\";\"other\"\n\"665525\";\"Tărcaia\";\"main\"\n\"665525\";\"Tarcaia\";\"ascii\"\n\"665525\";\"Korostarkany\";\"other\"\n\"665525\";\"Köröstárkány\";\"other\"\n\"665525\";\"Tarkany\";\"other\"\n\"665525\";\"Tárkány\";\"other\"\n\"665536\";\"Tansa\";\"main\"\n\"665540\";\"Ţăndărei\";\"main\"\n\"665540\";\"Tandarei\";\"ascii\"\n\"665545\";\"Tănăsoaia\";\"main\"\n\"665545\";\"Tanasoaia\";\"ascii\"\n\"665550\";\"Tanacu\";\"main\"\n\"665550\";\"Tanacul\";\"other\"\n\"665556\";\"Tamaşi\";\"main\"\n\"665556\";\"Tamasi\";\"ascii\"\n\"665556\";\"Tamas\";\"other\"\n\"665556\";\"Tămaş\";\"other\"\n\"665568\";\"Tămăşeni\";\"main\"\n\"665568\";\"Tamaseni\";\"ascii\"\n\"665578\";\"Tămădău Mare\";\"main\"\n\"665578\";\"Tamadau Mare\";\"ascii\"\n\"665578\";\"Tamadau\";\"other\"\n\"665578\";\"Tamadaul-Mare\";\"other\"\n\"665578\";\"Tămădău\";\"other\"\n\"665578\";\"Tămădăul-Mare\";\"other\"\n\"665588\";\"Talpa-Trivalea\";\"main\"\n\"665611\";\"Talea\";\"main\"\n\"665628\";\"Ţaga\";\"main\"\n\"665628\";\"Taga\";\"ascii\"\n\"665636\";\"Tăcuta\";\"main\"\n\"665636\";\"Tacuta\";\"ascii\"\n\"665653\";\"Sviniţa\";\"main\"\n\"665653\";\"Svinita\";\"ascii\"\n\"665664\";\"Şuţeşti\";\"main\"\n\"665664\";\"Sutesti\";\"ascii\"\n\"665690\";\"Suseni\";\"main\"\n\"665690\";\"Felfalu\";\"other\"\n\"665691\";\"Suseni\";\"main\"\n\"665691\";\"Ujfalu\";\"other\"\n\"665691\";\"Ujfalù\";\"other\"\n\"665700\";\"Suseni\";\"main\"\n\"665708\";\"Şuşani\";\"main\"\n\"665708\";\"Susani\";\"ascii\"\n\"665708\";\"Susanii de Jos\";\"other\"\n\"665708\";\"Şuşanii de Jos\";\"other\"\n\"665729\";\"Surduc\";\"main\"\n\"665729\";\"Szurduk\";\"other\"\n\"665736\";\"Surdila-Greci\";\"main\"\n\"665736\";\"Greci\";\"other\"\n\"665738\";\"Surdila-Găiseanca\";\"main\"\n\"665738\";\"Surdila-Gaiseanca\";\"ascii\"\n\"665747\";\"Surani\";\"main\"\n\"665750\";\"Şura Mică\";\"main\"\n\"665750\";\"Sura Mica\";\"ascii\"\n\"665750\";\"Klein Scheuern\";\"other\"\n\"665752\";\"Şura Mare\";\"main\"\n\"665752\";\"Sura Mare\";\"ascii\"\n\"665752\";\"Gross Scheuern\";\"other\"\n\"665754\";\"Suraia\";\"main\"\n\"665758\";\"Supuru de Jos\";\"main\"\n\"665758\";\"Supurul-de-Jos\";\"other\"\n\"665764\";\"Suplac\";\"main\"\n\"665764\";\"Supla\";\"other\"\n\"665767\";\"Şuncuiuş\";\"main\"\n\"665767\";\"Suncuius\";\"ascii\"\n\"665767\";\"Sumcuius\";\"other\"\n\"665767\";\"Sumcuiuş\";\"other\"\n\"665786\";\"Suliţa-Tîrg\";\"main\"\n\"665786\";\"Sulita-Tirg\";\"ascii\"\n\"665786\";\"Sulita-Targ\";\"other\"\n\"665786\";\"Suliţa-Târg\";\"other\"\n\"665786\";\"Targ Sulita\";\"other\"\n\"665786\";\"Târg Suliţa\";\"other\"\n\"665790\";\"Sulina\";\"main\"\n\"665794\";\"Şuletea\";\"main\"\n\"665794\";\"Suletea\";\"ascii\"\n\"665799\";\"Şuici\";\"main\"\n\"665799\";\"Suici\";\"ascii\"\n\"665809\";\"Suharău\";\"main\"\n\"665809\";\"Suharau\";\"ascii\"\n\"665813\";\"Suhaia\";\"main\"\n\"665820\";\"Şugag\";\"main\"\n\"665820\";\"Sugag\";\"ascii\"\n\"665835\";\"Sudiţi\";\"main\"\n\"665835\";\"Suditi\";\"ascii\"\n\"665839\";\"Suciu de Sus\";\"main\"\n\"665839\";\"Felsoszoos\";\"other\"\n\"665839\";\"Felsōszöos\";\"other\"\n\"665839\";\"Suciul-de Sus\";\"other\"\n\"665845\";\"Suceviţa\";\"main\"\n\"665845\";\"Sucevita\";\"ascii\"\n\"665850\";\"Suceava\";\"main\"\n\"665850\";\"Suchava\";\"other\"\n\"665850\";\"Suczawa\";\"other\"\n\"665850\";\"Szucsava\";\"other\"\n\"665850\";\"Szucsáva\";\"other\"\n\"665850\";\"suchavu~a\";\"other\"\n\"665850\";\"Сучава\";\"other\"\n\"665850\";\"סוצ'אבה\";\"other\"\n\"665850\";\"שאָץ\";\"other\"\n\"665850\";\"スチャヴァ\";\"other\"\n\"665875\";\"Subcetate\";\"main\"\n\"665875\";\"Gyorgyo-Varhegy\";\"other\"\n\"665875\";\"Györgyo-Várhegy\";\"other\"\n\"665875\";\"Varhegy\";\"other\"\n\"665875\";\"Vàrhegy\";\"other\"\n\"665879\";\"Suatu\";\"main\"\n\"665879\";\"Suatul\";\"other\"\n\"665899\";\"Stulpicani\";\"main\"\n\"665909\";\"Studina\";\"main\"\n\"665914\";\"Strunga\";\"main\"\n\"665921\";\"Strugari\";\"main\"\n\"665933\";\"Stroeşti\";\"main\"\n\"665933\";\"Stroesti\";\"ascii\"\n\"665933\";\"Stroiesti\";\"other\"\n\"665933\";\"Stroieşti\";\"other\"\n\"665938\";\"Stroeşti\";\"main\"\n\"665938\";\"Stroesti\";\"ascii\"\n\"665946\";\"Strîmtura\";\"main\"\n\"665946\";\"Strimtura\";\"ascii\"\n\"665946\";\"Stramtura\";\"other\"\n\"665946\";\"Strâmtura\";\"other\"\n\"665982\";\"Stremţ\";\"main\"\n\"665982\";\"Stremt\";\"ascii\"\n\"665990\";\"Strejeşti\";\"main\"\n\"665990\";\"Strejesti\";\"ascii\"\n\"665990\";\"Strajestii-de-Jos\";\"other\"\n\"665990\";\"Strejestii de Jos\";\"other\"\n\"665990\";\"Strejeştii de Jos\";\"other\"\n\"665990\";\"Străjeştii-de-Jos\";\"other\"\n\"665997\";\"Strehaia\";\"main\"\n\"666007\";\"Străoane\";\"main\"\n\"666007\";\"Straoane\";\"ascii\"\n\"666007\";\"Stranoanii-de Jos\";\"other\"\n\"666007\";\"Straoane de Jos\";\"other\"\n\"666007\";\"Străoane de Jos\";\"other\"\n\"666012\";\"Straja\";\"main\"\n\"666029\";\"Storobăneasa\";\"main\"\n\"666029\";\"Storobaneasa\";\"ascii\"\n\"666031\";\"Storeşti\";\"main\"\n\"666031\";\"Storesti\";\"ascii\"\n\"666035\";\"Stolnici\";\"main\"\n\"666037\";\"Stolniceni-Prăjescu\";\"main\"\n\"666037\";\"Stolniceni-Prajescu\";\"ascii\"\n\"666048\";\"Stoina\";\"main\"\n\"666050\";\"Stoileşti\";\"main\"\n\"666050\";\"Stoilesti\";\"ascii\"\n\"666050\";\"Popesti\";\"other\"\n\"666050\";\"Popeşti\";\"other\"\n\"666058\";\"Stoicăneşti\";\"main\"\n\"666058\";\"Stoicanesti\";\"ascii\"\n\"666067\";\"Stoeneşti\";\"main\"\n\"666067\";\"Stoenesti\";\"ascii\"\n\"666067\";\"Stoenestii\";\"other\"\n\"666069\";\"Stoeneşti\";\"main\"\n\"666069\";\"Stoenesti\";\"ascii\"\n\"666074\";\"Stoeneşti\";\"main\"\n\"666074\";\"Stoenesti\";\"ascii\"\n\"666074\";\"Stoeresti\";\"other\"\n\"666075\";\"Stoeneşti\";\"main\"\n\"666075\";\"Stoenesti\";\"ascii\"\n\"666075\";\"Stoenestii\";\"other\"\n\"666075\";\"Stoeneştii\";\"other\"\n\"666083\";\"Ştiuca\";\"main\"\n\"666083\";\"Stiuca\";\"ascii\"\n\"666083\";\"Csukas\";\"other\"\n\"666083\";\"Csukás\";\"other\"\n\"666083\";\"Ebendorf\";\"other\"\n\"666083\";\"Styuka\";\"other\"\n\"666085\";\"Ştiubieni\";\"main\"\n\"666085\";\"Stiubieni\";\"ascii\"\n\"666085\";\"Stiubeeni\";\"other\"\n\"666085\";\"Stiubeni\";\"other\"\n\"666085\";\"Stubieni\";\"other\"\n\"666085\";\"Ştiubeeni\";\"other\"\n\"666085\";\"Ştiubeni\";\"other\"\n\"666085\";\"Ştubieni\";\"other\"\n\"666126\";\"Stînceni\";\"main\"\n\"666126\";\"Stinceni\";\"ascii\"\n\"666126\";\"Godemesterhaza\";\"other\"\n\"666126\";\"Gödemesterhàza\";\"other\"\n\"666126\";\"Stanceni\";\"other\"\n\"666126\";\"Stânceni\";\"other\"\n\"666146\";\"Stîlpu\";\"main\"\n\"666146\";\"Stilpu\";\"ascii\"\n\"666146\";\"Stalpu\";\"other\"\n\"666146\";\"Stalpul\";\"other\"\n\"666146\";\"Stâlpu\";\"other\"\n\"666146\";\"Stâlpul\";\"other\"\n\"666149\";\"Stîlpeni\";\"main\"\n\"666149\";\"Stilpeni\";\"ascii\"\n\"666149\";\"Stalpeni\";\"other\"\n\"666149\";\"Stalpenii\";\"other\"\n\"666149\";\"Stâlpeni\";\"other\"\n\"666149\";\"Stâlpenii\";\"other\"\n\"666166\";\"Stelnica\";\"main\"\n\"666187\";\"Stejaru\";\"main\"\n\"666187\";\"Eschibaba\";\"other\"\n\"666187\";\"Eskibaba\";\"other\"\n\"666193\";\"Stejaru\";\"main\"\n\"666193\";\"Baltati\";\"other\"\n\"666193\";\"Bălţaţi\";\"other\"\n\"666198\";\"Stejari\";\"main\"\n\"666198\";\"Cordesti\";\"other\"\n\"666198\";\"Cordeşti\";\"other\"\n\"666198\";\"Stejarul\";\"other\"\n\"666211\";\"Ştefeşti\";\"main\"\n\"666211\";\"Stefesti\";\"ascii\"\n\"666214\";\"Ştefan Vodă\";\"main\"\n\"666214\";\"Stefan Voda\";\"ascii\"\n\"666214\";\"Falcoianu\";\"other\"\n\"666214\";\"Fălcoianu\";\"other\"\n\"666214\";\"General Falcoianu\";\"other\"\n\"666214\";\"General Fălcoianu\";\"other\"\n\"666217\";\"Ştefăneşti-Sat\";\"main\"\n\"666217\";\"Stefanesti-Sat\";\"ascii\"\n\"666223\";\"Ştefăneştii de Jos\";\"main\"\n\"666223\";\"Stefanestii de Jos\";\"ascii\"\n\"666223\";\"Stefanesti-de-Jos\";\"other\"\n\"666223\";\"Ştefăneşti-de-Jos\";\"other\"\n\"666235\";\"Ştefăneşti\";\"main\"\n\"666235\";\"Stefanesti\";\"ascii\"\n\"666235\";\"Partizanii\";\"other\"\n\"666238\";\"Ştefăneşti\";\"main\"\n\"666238\";\"Stefanesti\";\"ascii\"\n\"666238\";\"Scoala\";\"other\"\n\"666238\";\"Stefanestii\";\"other\"\n\"666238\";\"Şcoala\";\"other\"\n\"666238\";\"Ştefanestii\";\"other\"\n\"666248\";\"Ştefan cel Mare\";\"main\"\n\"666248\";\"Stefan cel Mare\";\"ascii\"\n\"666248\";\"Serbesti\";\"other\"\n\"666248\";\"Şerbeşti\";\"other\"\n\"666249\";\"Ştefan cel Mare\";\"main\"\n\"666249\";\"Stefan cel Mare\";\"ascii\"\n\"666251\";\"Ştefan cel Mare\";\"main\"\n\"666251\";\"Stefan cel Mare\";\"ascii\"\n\"666251\";\"Stefan-Celmore\";\"other\"\n\"666251\";\"Stefanesti\";\"other\"\n\"666253\";\"Ştefan cel Mare\";\"main\"\n\"666253\";\"Stefan cel Mare\";\"ascii\"\n\"666263\";\"Stăuceni\";\"main\"\n\"666263\";\"Stauceni\";\"ascii\"\n\"666271\";\"Starchiojd\";\"main\"\n\"666276\";\"Stăniţa\";\"main\"\n\"666276\";\"Stanita\";\"ascii\"\n\"666276\";\"Molfanesti\";\"other\"\n\"666276\";\"Molfăneşti\";\"other\"\n\"666284\";\"Stănişeşti\";\"main\"\n\"666284\";\"Stanisesti\";\"ascii\"\n\"666284\";\"Targul Stanisesti\";\"other\"\n\"666284\";\"Targul Stănişeşti\";\"other\"\n\"666287\";\"Stănileşti\";\"main\"\n\"666287\";\"Stanilesti\";\"ascii\"\n\"666287\";\"Slanilesti\";\"other\"\n\"666287\";\"Slănileşti\";\"other\"\n\"666287\";\"Stalinesti\";\"other\"\n\"666287\";\"Stalinestii\";\"other\"\n\"666287\";\"Stălineşti\";\"other\"\n\"666287\";\"Stălineştii\";\"other\"\n\"666300\";\"Stăneşti\";\"main\"\n\"666300\";\"Stanesti\";\"ascii\"\n\"666300\";\"Mijlocu\";\"other\"\n\"666305\";\"Stăneşti\";\"main\"\n\"666305\";\"Stanesti\";\"ascii\"\n\"666309\";\"Stăncuţa\";\"main\"\n\"666309\";\"Stancuta\";\"ascii\"\n\"666334\";\"Şpring\";\"main\"\n\"666334\";\"Spring\";\"ascii\"\n\"666336\";\"Sprincenata\";\"main\"\n\"666336\";\"Sprancenata\";\"other\"\n\"666350\";\"Spinuş\";\"main\"\n\"666350\";\"Spinus\";\"ascii\"\n\"666360\";\"Spineni\";\"main\"\n\"666369\";\"Spermezeu\";\"main\"\n\"666369\";\"Spermezu\";\"other\"\n\"666385\";\"Spanţov\";\"main\"\n\"666385\";\"Spantov\";\"ascii\"\n\"666395\";\"Sovata\";\"main\"\n\"666395\";\"Szovata\";\"other\"\n\"666395\";\"Szovàta\";\"other\"\n\"666399\";\"Şovarna\";\"main\"\n\"666399\";\"Sovarna\";\"ascii\"\n\"666399\";\"Sovarna de Jos\";\"other\"\n\"666404\";\"Şotrile\";\"main\"\n\"666404\";\"Sotrile\";\"ascii\"\n\"666433\";\"Şopotu Nou\";\"main\"\n\"666433\";\"Sopotu Nou\";\"ascii\"\n\"666433\";\"Novi Sopot\";\"other\"\n\"666433\";\"Sopotul-Nou\";\"other\"\n\"666433\";\"Şopotul-Nou\";\"other\"\n\"666435\";\"Şopotu\";\"main\"\n\"666435\";\"Sopotu\";\"ascii\"\n\"666435\";\"Sopolul\";\"other\"\n\"666435\";\"Sopot\";\"other\"\n\"666435\";\"Sopotul\";\"other\"\n\"666443\";\"Şona\";\"main\"\n\"666443\";\"Sona\";\"ascii\"\n\"666451\";\"Somova\";\"main\"\n\"666451\";\"Somovo\";\"other\"\n\"666467\";\"Someş-Odorhei\";\"main\"\n\"666467\";\"Somes-Odorhei\";\"ascii\"\n\"666467\";\"Somes-Odorheiu\";\"other\"\n\"666467\";\"Somes-Odorheu\";\"other\"\n\"666467\";\"Someş-Odorheiu\";\"other\"\n\"666467\";\"Someş-Odorheu\";\"other\"\n\"666475\";\"Şomcuta Mare\";\"main\"\n\"666475\";\"Somcuta Mare\";\"ascii\"\n\"666475\";\"Somcutza\";\"other\"\n\"666480\";\"Solovăstru\";\"main\"\n\"666480\";\"Solovastru\";\"ascii\"\n\"666480\";\"Gorgenyoroszfalu-Solovaestru\";\"other\"\n\"666480\";\"Görgenyoroszfalù-Solovæstru\";\"other\"\n\"666480\";\"Solovastrau\";\"other\"\n\"666480\";\"Solovastrul\";\"other\"\n\"666480\";\"Solovăstrul\";\"other\"\n\"666480\";\"Solovăstrău\";\"other\"\n\"666483\";\"Solonţ\";\"main\"\n\"666483\";\"Solont\";\"ascii\"\n\"666500\";\"Soleşti\";\"main\"\n\"666500\";\"Solesti\";\"ascii\"\n\"666504\";\"Şoldanu\";\"main\"\n\"666504\";\"Soldanu\";\"ascii\"\n\"666504\";\"Soldanul\";\"other\"\n\"666504\";\"Şoldanul\";\"other\"\n\"666509\";\"Solca\";\"main\"\n\"666524\";\"Şoimuş\";\"main\"\n\"666524\";\"Soimus\";\"ascii\"\n\"666524\";\"Marossolymos\";\"other\"\n\"666524\";\"Scholmosch\";\"other\"\n\"666528\";\"Şoimi\";\"main\"\n\"666528\";\"Soimi\";\"ascii\"\n\"666533\";\"Şoimari\";\"main\"\n\"666533\";\"Soimari\";\"ascii\"\n\"666557\";\"Sohodol\";\"main\"\n\"666561\";\"Sohatu\";\"main\"\n\"666561\";\"Sohani\";\"other\"\n\"666561\";\"Sohatul\";\"other\"\n\"666565\";\"Şofronea\";\"main\"\n\"666565\";\"Sofronea\";\"ascii\"\n\"666565\";\"Sofronia\";\"other\"\n\"666565\";\"Şofronia\";\"other\"\n\"666576\";\"Socond\";\"main\"\n\"666580\";\"Socol\";\"main\"\n\"666580\";\"Socolovati\";\"other\"\n\"666580\";\"Socolovăţi\";\"other\"\n\"666580\";\"Sokolovac\";\"other\"\n\"666583\";\"Socodor\";\"main\"\n\"666600\";\"Şoarş\";\"main\"\n\"666600\";\"Soars\";\"ascii\"\n\"666600\";\"Sears\";\"other\"\n\"666600\";\"Soarsu\";\"other\"\n\"666600\";\"Şoarşu\";\"other\"\n\"666611\";\"Snagov\";\"main\"\n\"666611\";\"Dobrosesti\";\"other\"\n\"666611\";\"Dobroşeşti\";\"other\"\n\"666613\";\"Smulţi\";\"main\"\n\"666613\";\"Smulti\";\"ascii\"\n\"666619\";\"Smîrdioasa\";\"main\"\n\"666619\";\"Smirdioasa\";\"ascii\"\n\"666619\";\"Smardioasa\";\"other\"\n\"666619\";\"Smârdioasa\";\"other\"\n\"666625\";\"Smîrdan\";\"main\"\n\"666625\";\"Smirdan\";\"ascii\"\n\"666625\";\"Smardan\";\"other\"\n\"666625\";\"Smârdan\";\"other\"\n\"666641\";\"Smeeni\";\"main\"\n\"666663\";\"Slobozia Moara\";\"main\"\n\"666665\";\"Slobozia-Mîndra\";\"main\"\n\"666665\";\"Slobozia-Mindra\";\"ascii\"\n\"666665\";\"Mandra\";\"other\"\n\"666665\";\"Slobozia\";\"other\"\n\"666665\";\"Slobozia-Mandra\";\"other\"\n\"666665\";\"Slobozia-Mândra\";\"other\"\n\"666670\";\"Slobozia-Conache\";\"main\"\n\"666670\";\"Placiata\";\"other\"\n\"666670\";\"Placinta\";\"other\"\n\"666670\";\"Plăciata\";\"other\"\n\"666670\";\"Plăcinta\";\"other\"\n\"666670\";\"Slobozia-Conachi\";\"other\"\n\"666670\";\"Slobozia-Konache\";\"other\"\n\"666670\";\"Slobozia-Konachi\";\"other\"\n\"666673\";\"Slobozia-Ciorăşti\";\"main\"\n\"666673\";\"Slobozia-Ciorasti\";\"ascii\"\n\"666673\";\"Ciorasti\";\"other\"\n\"666673\";\"Ciorăşti\";\"other\"\n\"666673\";\"Slobozia-Cioraesti\";\"other\"\n\"666673\";\"Slobozia-Ciorăeşti\";\"other\"\n\"666674\";\"Slobozia-Cîmpineanca\";\"main\"\n\"666674\";\"Slobozia-Cimpineanca\";\"ascii\"\n\"666674\";\"Campineanca\";\"other\"\n\"666674\";\"Câmpineanca\";\"other\"\n\"666674\";\"Slobozia\";\"other\"\n\"666676\";\"Slobozia Bradului\";\"main\"\n\"666676\";\"Slobozia\";\"other\"\n\"666716\";\"Slobozia\";\"main\"\n\"666716\";\"Slobozia de Sus\";\"other\"\n\"666716\";\"Slobozija\";\"other\"\n\"666716\";\"Слобозия\";\"other\"\n\"666719\";\"Slobozia\";\"main\"\n\"666724\";\"Slivileşti\";\"main\"\n\"666724\";\"Slivilesti\";\"ascii\"\n\"666728\";\"Slimnic\";\"main\"\n\"666752\";\"Slătioara\";\"main\"\n\"666752\";\"Slatioara\";\"ascii\"\n\"666753\";\"Slătioara\";\"main\"\n\"666753\";\"Slatioara\";\"ascii\"\n\"666759\";\"Slatina-Timiş\";\"main\"\n\"666759\";\"Slatina-Timis\";\"ascii\"\n\"666759\";\"Slatina\";\"other\"\n\"666759\";\"Slatina-Timisului\";\"other\"\n\"666759\";\"Slatina-Timişului\";\"other\"\n\"666765\";\"Slatina\";\"main\"\n\"666765\";\"Draceni\";\"other\"\n\"666765\";\"Drăceni\";\"other\"\n\"666765\";\"Слатина\";\"other\"\n\"666767\";\"Slatina\";\"main\"\n\"666767\";\"Striharet\";\"other\"\n\"666767\";\"Слатина\";\"other\"\n\"666770\";\"Slănic-Moldova\";\"main\"\n\"666770\";\"Slanic-Moldova\";\"ascii\"\n\"666770\";\"Baile Slanic\";\"other\"\n\"666770\";\"Băile Slănic\";\"other\"\n\"666770\";\"Slanic-Bai\";\"other\"\n\"666770\";\"Slănic-Băi\";\"other\"\n\"666775\";\"Slănic\";\"main\"\n\"666775\";\"Slanic\";\"ascii\"\n\"666775\";\"Slanicul\";\"other\"\n\"666790\";\"Sita Buzăului\";\"main\"\n\"666790\";\"Sita Buzaului\";\"ascii\"\n\"666790\";\"Sita\";\"other\"\n\"666809\";\"Şirna\";\"main\"\n\"666809\";\"Sirna\";\"ascii\"\n\"666819\";\"Şirineasa\";\"main\"\n\"666819\";\"Sirineasa\";\"ascii\"\n\"666821\";\"Şiria\";\"main\"\n\"666821\";\"Siria\";\"ascii\"\n\"666828\";\"Sireţel\";\"main\"\n\"666828\";\"Siretel\";\"ascii\"\n\"666828\";\"Siretelul\";\"other\"\n\"666828\";\"Sireţelul\";\"other\"\n\"666828\";\"Siritel\";\"other\"\n\"666828\";\"Siriţel\";\"other\"\n\"666830\";\"Siret\";\"main\"\n\"666830\";\"Seret\";\"other\"\n\"666863\";\"Sîrbeni\";\"main\"\n\"666863\";\"Sirbeni\";\"ascii\"\n\"666863\";\"Adunatii Sirbeni\";\"other\"\n\"666863\";\"Adunaţii Sîrbeni\";\"other\"\n\"666863\";\"Sarbeni\";\"other\"\n\"666863\";\"Sârbeni\";\"other\"\n\"666877\";\"Şipote\";\"main\"\n\"666877\";\"Sipote\";\"ascii\"\n\"666877\";\"Sipotel\";\"other\"\n\"666877\";\"Sipotele\";\"other\"\n\"666877\";\"Şipotel\";\"other\"\n\"666877\";\"Şipotele\";\"other\"\n\"666887\";\"Sînzieni\";\"main\"\n\"666887\";\"Sinzieni\";\"ascii\"\n\"666887\";\"Kezdisznetlelek\";\"other\"\n\"666887\";\"Kèzdisznetlèlek\";\"other\"\n\"666887\";\"Sanzieni\";\"other\"\n\"666887\";\"Sânzieni\";\"other\"\n\"666908\";\"Sîntimbru\";\"main\"\n\"666908\";\"Sintimbru\";\"ascii\"\n\"666908\";\"Santimbru\";\"other\"\n\"666908\";\"Sântimbru\";\"other\"\n\"666909\";\"Şinteu\";\"main\"\n\"666909\";\"Sinteu\";\"ascii\"\n\"666916\";\"Şintereag\";\"main\"\n\"666916\";\"Sintereag\";\"ascii\"\n\"666922\";\"Sintea Mare\";\"main\"\n\"666922\";\"Sintea\";\"other\"\n\"666928\";\"Sîntandrei\";\"main\"\n\"666928\";\"Sintandrei\";\"ascii\"\n\"666928\";\"Santandrei\";\"other\"\n\"666928\";\"Sântandrei\";\"other\"\n\"666936\";\"Sîntana\";\"main\"\n\"666936\";\"Sintana\";\"ascii\"\n\"666936\";\"Santana\";\"other\"\n\"666936\";\"Santana-de-Mures\";\"other\"\n\"666936\";\"Santana-de-Mureş\";\"other\"\n\"666936\";\"Sfanta Ana\";\"other\"\n\"666936\";\"Sfinta Ana\";\"other\"\n\"666936\";\"Sfânta Ana\";\"other\"\n\"666936\";\"Sfînta Ana\";\"other\"\n\"666942\";\"Sînta Maria\";\"main\"\n\"666942\";\"Sinta Maria\";\"ascii\"\n\"666942\";\"Santa-Maria\";\"other\"\n\"666942\";\"Sântă-Maria\";\"other\"\n\"666946\";\"Sînsimion\";\"main\"\n\"666946\";\"Sinsimion\";\"ascii\"\n\"666946\";\"Csikszentsimon\";\"other\"\n\"666946\";\"Sansimion\";\"other\"\n\"666946\";\"Sânsimion\";\"other\"\n\"666950\";\"Sânpetru Mare\";\"main\"\n\"666950\";\"Sanpetru Mare\";\"ascii\"\n\"666950\";\"Gross-Sankt-Peter\";\"other\"\n\"666950\";\"Nagyszentpeter\";\"other\"\n\"666950\";\"Nagyszentpéter\";\"other\"\n\"666950\";\"Racz-Szent-Peter\";\"other\"\n\"666950\";\"Rácz-Szent-Péter\";\"other\"\n\"666950\";\"Sanpetrul-Mare\";\"other\"\n\"666950\";\"Sinpetru Mare\";\"other\"\n\"666950\";\"Szerb-Szent-Peter\";\"other\"\n\"666950\";\"Szerb-Szent-Péter\";\"other\"\n\"666950\";\"Sânpetrul-Mare\";\"other\"\n\"666950\";\"Sînpetru Mare\";\"other\"\n\"666963\";\"Sînpaul\";\"main\"\n\"666963\";\"Sinpaul\";\"ascii\"\n\"666963\";\"Sanpaul\";\"other\"\n\"666963\";\"Sănpaul\";\"other\"\n\"666964\";\"Sînpaul\";\"main\"\n\"666964\";\"Sinpaul\";\"ascii\"\n\"666964\";\"Sanpaul\";\"other\"\n\"666964\";\"Sănpaul\";\"other\"\n\"666973\";\"Sânnicolau Mare\";\"main\"\n\"666973\";\"Sannicolau Mare\";\"ascii\"\n\"666973\";\"Deutsch-Sankt-Nikolaus\";\"other\"\n\"666973\";\"Gross-Sankt-Nikolaus\";\"other\"\n\"666973\";\"Nad-Sentmiklos\";\"other\"\n\"666973\";\"Nagyszentmiklos\";\"other\"\n\"666973\";\"Nagyszentmiklós\";\"other\"\n\"666973\";\"Racz-Nagy-Szent-Miklos\";\"other\"\n\"666973\";\"Rácz-Nagy-Szent-Miklós\";\"other\"\n\"666973\";\"Sannicolaul Mare\";\"other\"\n\"666973\";\"Sinmiclaus Mare\";\"other\"\n\"666973\";\"Sinnicolau Mare\";\"other\"\n\"666973\";\"Sinnicolaul Mare\";\"other\"\n\"666973\";\"Szerb-Nagy-Szent-Miklos\";\"other\"\n\"666973\";\"Szerb-Nagy-Szent-Miklós\";\"other\"\n\"666973\";\"Sânnicolaul Mare\";\"other\"\n\"666973\";\"Sînmiclăus Mare\";\"other\"\n\"666973\";\"Sînnicolau Mare\";\"other\"\n\"666973\";\"Sînnicolaul Mare\";\"other\"\n\"666981\";\"Sânmihaiu Român\";\"main\"\n\"666981\";\"Sanmihaiu Roman\";\"ascii\"\n\"666981\";\"Deutsch-Sankt-Michael\";\"other\"\n\"666981\";\"Nemetszentmihaly\";\"other\"\n\"666981\";\"Németszentmihály\";\"other\"\n\"666981\";\"Rautendorf\";\"other\"\n\"666981\";\"Sinmihaiu Roman\";\"other\"\n\"666981\";\"Sinmihaiu Romin\";\"other\"\n\"666981\";\"Sînmihaiu Român\";\"other\"\n\"666981\";\"Sînmihaiu Romîn\";\"other\"\n\"666989\";\"Sînmihaiu Almaşului\";\"main\"\n\"666989\";\"Sinmihaiu Almasului\";\"ascii\"\n\"666989\";\"Sanmihaiul-Almasului\";\"other\"\n\"666989\";\"Sânmihaiul-Almaşului\";\"other\"\n\"667006\";\"Sînmărtin\";\"main\"\n\"667006\";\"Sinmartin\";\"ascii\"\n\"667006\";\"Sanmartin\";\"other\"\n\"667006\";\"Sânmărtin\";\"other\"\n\"667008\";\"Sînmartin\";\"main\"\n\"667008\";\"Sinmartin\";\"ascii\"\n\"667008\";\"Csikszentmarton\";\"other\"\n\"667008\";\"Csikszentmàrton\";\"other\"\n\"667008\";\"Sanmartin\";\"other\"\n\"667008\";\"Sânmărtin\";\"other\"\n\"667020\";\"Singureni\";\"main\"\n\"667023\";\"Sîngeru\";\"main\"\n\"667023\";\"Singeru\";\"ascii\"\n\"667023\";\"Sangeru\";\"other\"\n\"667023\";\"Sangerul\";\"other\"\n\"667023\";\"Sângeru\";\"other\"\n\"667023\";\"Sângerul\";\"other\"\n\"667034\";\"Sîngeorgiu de Mureş\";\"main\"\n\"667034\";\"Singeorgiu de Mures\";\"ascii\"\n\"667034\";\"Marosszentgyorgy\";\"other\"\n\"667034\";\"Marosszentgyörgy\";\"other\"\n\"667034\";\"Sangeorg-de Mures\";\"other\"\n\"667034\";\"Sangeorgiul de Mures\";\"other\"\n\"667034\";\"Sângeorg-de Mureş\";\"other\"\n\"667034\";\"Sângeorgiul de Mureş\";\"other\"\n\"667043\";\"Sineşti\";\"main\"\n\"667043\";\"Sinesti\";\"ascii\"\n\"667045\";\"Sineşti\";\"main\"\n\"667045\";\"Sinesti\";\"ascii\"\n\"667046\";\"Sineşti\";\"main\"\n\"667046\";\"Sinesti\";\"ascii\"\n\"667046\";\"Sinesti-Noi\";\"other\"\n\"667046\";\"Sinestii Noi\";\"other\"\n\"667046\";\"Sinestii-Noui\";\"other\"\n\"667046\";\"Sineşti-Noi\";\"other\"\n\"667046\";\"Sineştii Noi\";\"other\"\n\"667046\";\"Sineştii-Noui\";\"other\"\n\"667055\";\"Sîndominic\";\"main\"\n\"667055\";\"Sindominic\";\"ascii\"\n\"667055\";\"Csikszentdomokos\";\"other\"\n\"667055\";\"Sandominic\";\"other\"\n\"667055\";\"Sândominic\";\"other\"\n\"667059\";\"Sîncraiu de Mureş\";\"main\"\n\"667059\";\"Sincraiu de Mures\";\"ascii\"\n\"667059\";\"Marosszentkiraly\";\"other\"\n\"667059\";\"Marosszentkiràly\";\"other\"\n\"667059\";\"Sancraiul-de-Mures\";\"other\"\n\"667059\";\"Sâncraiul-de-Mures\";\"other\"\n\"667064\";\"Sîncraiu\";\"main\"\n\"667064\";\"Sincraiu\";\"ascii\"\n\"667064\";\"Kalotaszentkiraly\";\"other\"\n\"667064\";\"Kalotaszentkirály\";\"other\"\n\"667064\";\"Sancrai\";\"other\"\n\"667064\";\"Sancraiu\";\"other\"\n\"667064\";\"Sancraiul\";\"other\"\n\"667064\";\"Sâncrai\";\"other\"\n\"667064\";\"Sâncraiu\";\"other\"\n\"667064\";\"Sâncraiul\";\"other\"\n\"667064\";\"Vamsancraiu\";\"other\"\n\"667064\";\"Vamsâncraiu\";\"other\"\n\"667064\";\"Zam Sancraiu\";\"other\"\n\"667064\";\"Zam Sâncraiu\";\"other\"\n\"667069\";\"Sîncrăieni\";\"main\"\n\"667069\";\"Sincraieni\";\"ascii\"\n\"667069\";\"Csik Szlkirole\";\"other\"\n\"667069\";\"Csikszentkiraly\";\"other\"\n\"667069\";\"Csikszentkiràly\";\"other\"\n\"667069\";\"Sancraeni\";\"other\"\n\"667069\";\"Sancraiem\";\"other\"\n\"667069\";\"Sancraieni\";\"other\"\n\"667069\";\"Sâncráiem\";\"other\"\n\"667069\";\"Sâncrăeni\";\"other\"\n\"667069\";\"Sâncrăieni\";\"other\"\n\"667074\";\"Sîncel\";\"main\"\n\"667074\";\"Sincel\";\"ascii\"\n\"667074\";\"Sancel\";\"other\"\n\"667074\";\"Sâncel\";\"other\"\n\"667076\";\"Şinca Veche\";\"main\"\n\"667076\";\"Sinca Veche\";\"ascii\"\n\"667082\";\"Şincai\";\"main\"\n\"667082\";\"Sincai\";\"ascii\"\n\"667089\";\"Sânandrei\";\"main\"\n\"667089\";\"Sanandrei\";\"ascii\"\n\"667089\";\"Sankt Andreas\";\"other\"\n\"667089\";\"Sinandrei\";\"other\"\n\"667089\";\"Szentandras\";\"other\"\n\"667089\";\"Szentandrás\";\"other\"\n\"667089\";\"Sînandrei\";\"other\"\n\"667089\";\"Temesszentandras\";\"other\"\n\"667089\";\"Temesszentandrás\";\"other\"\n\"667091\";\"Sinaia\";\"main\"\n\"667091\";\"Sinaïa\";\"other\"\n\"667091\";\"סינאיה\";\"other\"\n\"667094\";\"Simoneşti\";\"main\"\n\"667094\";\"Simonesti\";\"ascii\"\n\"667094\";\"Simenfalva\";\"other\"\n\"667094\";\"Simionesti\";\"other\"\n\"667094\";\"Simènfalva\";\"other\"\n\"667094\";\"Şimioneşti\";\"other\"\n\"667098\";\"Şimnicu de Sus\";\"main\"\n\"667098\";\"Simnicu de Sus\";\"ascii\"\n\"667098\";\"Simnicul de Sus\";\"other\"\n\"667101\";\"Şimleu Silvaniei\";\"main\"\n\"667101\";\"Simleu Silvaniei\";\"ascii\"\n\"667101\";\"Simleul Silvaiei\";\"other\"\n\"667101\";\"Szilagysomlyo\";\"other\"\n\"667101\";\"Szilágysomlyó\";\"other\"\n\"667109\";\"Siminicea\";\"main\"\n\"667118\";\"Şimian\";\"main\"\n\"667118\";\"Simian\";\"ascii\"\n\"667119\";\"Şimian\";\"main\"\n\"667119\";\"Simian\";\"ascii\"\n\"667119\";\"Simijanii\";\"other\"\n\"667121\";\"Simeria\";\"main\"\n\"667148\";\"Şimand\";\"main\"\n\"667148\";\"Simand\";\"ascii\"\n\"667172\";\"Siliştea Crucii\";\"main\"\n\"667172\";\"Silistea Crucii\";\"ascii\"\n\"667188\";\"Siliştea\";\"main\"\n\"667188\";\"Silistea\";\"ascii\"\n\"667188\";\"Nazaru\";\"other\"\n\"667188\";\"Nazarul\";\"other\"\n\"667188\";\"Naziru\";\"other\"\n\"667188\";\"Nazâru\";\"other\"\n\"667188\";\"Nazârul\";\"other\"\n\"667188\";\"Nazîru\";\"other\"\n\"667194\";\"Siliştea\";\"main\"\n\"667194\";\"Silistea\";\"ascii\"\n\"667194\";\"Taspunor\";\"other\"\n\"667194\";\"Taşpunor\";\"other\"\n\"667195\";\"Siliştea\";\"main\"\n\"667195\";\"Silistea\";\"ascii\"\n\"667216\";\"Sihlea\";\"main\"\n\"667227\";\"Sighetu Marmaţiei\";\"main\"\n\"667227\";\"Sighetu Marmatiei\";\"ascii\"\n\"667227\";\"Maramaros Szighet\";\"other\"\n\"667227\";\"Maramarossziget\";\"other\"\n\"667227\";\"Marmaros Sihot\";\"other\"\n\"667227\";\"Marmarosska\";\"other\"\n\"667227\";\"Marmaroš Sihot\";\"other\"\n\"667227\";\"Máramarossziget\";\"other\"\n\"667227\";\"Sighet\";\"other\"\n\"667227\";\"sygt\";\"other\"\n\"667227\";\"Сигіт Мармароський\";\"other\"\n\"667227\";\"סיגט\";\"other\"\n\"667232\";\"Şieuţ\";\"main\"\n\"667232\";\"Sieut\";\"ascii\"\n\"667232\";\"Sieu\";\"other\"\n\"667235\";\"Şieu-Odorhei\";\"main\"\n\"667235\";\"Sieu-Odorhei\";\"ascii\"\n\"667235\";\"Sieu-Odorheiu\";\"other\"\n\"667235\";\"Sieul Odorhei\";\"other\"\n\"667235\";\"Şieu-Odorheiu\";\"other\"\n\"667235\";\"Şieul Odorhei\";\"other\"\n\"667238\";\"Şieu-Măgheruş\";\"main\"\n\"667238\";\"Sieu-Magherus\";\"ascii\"\n\"667238\";\"Sieu\";\"other\"\n\"667238\";\"Sieul\";\"other\"\n\"667238\";\"Şieu\";\"other\"\n\"667238\";\"Şieul\";\"other\"\n\"667242\";\"Şieu\";\"main\"\n\"667242\";\"Sieu\";\"ascii\"\n\"667242\";\"Nagysajo\";\"other\"\n\"667242\";\"Nagysajó\";\"other\"\n\"667243\";\"Siculeni\";\"main\"\n\"667243\";\"Harghita\";\"other\"\n\"667243\";\"Madefalva\";\"other\"\n\"667243\";\"Mádéfalva\";\"other\"\n\"667245\";\"Şicula\";\"main\"\n\"667245\";\"Sicula\";\"ascii\"\n\"667256\";\"Sicheviţa\";\"main\"\n\"667256\";\"Sichevita\";\"ascii\"\n\"667256\";\"Sikevica\";\"other\"\n\"667262\";\"Sic\";\"main\"\n\"667262\";\"Szek\";\"other\"\n\"667265\";\"Şibot\";\"main\"\n\"667265\";\"Sibot\";\"ascii\"\n\"667265\";\"Sfoot\";\"other\"\n\"667265\";\"Şfoot\";\"other\"\n\"667268\";\"Sibiu\";\"main\"\n\"667268\";\"Hermannstadt\";\"other\"\n\"667268\";\"Nagy-Szeben\";\"other\"\n\"667268\";\"Nagy-Szében\";\"other\"\n\"667268\";\"Nagyszeben\";\"other\"\n\"667268\";\"Sybin\";\"other\"\n\"667268\";\"Szeben\";\"other\"\n\"667268\";\"shibiu\";\"other\"\n\"667268\";\"sibiu\";\"other\"\n\"667268\";\"Сибиу\";\"other\"\n\"667268\";\"シビウ\";\"other\"\n\"667268\";\"시비우\";\"other\"\n\"667303\";\"Sfântu-Gheorghe\";\"main\"\n\"667303\";\"Sfantu-Gheorghe\";\"ascii\"\n\"667303\";\"Sepsiszentgyorgy\";\"other\"\n\"667303\";\"Sepsiszentgyőrgy\";\"other\"\n\"667303\";\"Sfantul\";\"other\"\n\"667303\";\"Sfantul-Gheorghe\";\"other\"\n\"667303\";\"Sfehntu-Georg\";\"other\"\n\"667303\";\"Sfintu Gheorghe\";\"other\"\n\"667303\";\"Sfântul\";\"other\"\n\"667303\";\"Sfântul-Gheorghe\";\"other\"\n\"667303\";\"Sfîntu Gheorghe\";\"other\"\n\"667303\";\"Сфэнту-Георг\";\"other\"\n\"667306\";\"Sfîntu Gheorghe\";\"main\"\n\"667306\";\"Sfintu Gheorghe\";\"ascii\"\n\"667306\";\"Sfantu-Gheorghe\";\"other\"\n\"667306\";\"Sfântu-Gheorghe\";\"other\"\n\"667311\";\"Sfinţeşti\";\"main\"\n\"667311\";\"Sfintesti\";\"ascii\"\n\"667350\";\"Şercaia\";\"main\"\n\"667350\";\"Sercaia\";\"ascii\"\n\"667380\";\"Şerbăneşti\";\"main\"\n\"667380\";\"Serbanesti\";\"ascii\"\n\"667380\";\"Serbanesti-de-Jos\";\"other\"\n\"667380\";\"Serbanestii de Jos\";\"other\"\n\"667380\";\"Şerbăneşti-de-Jos\";\"other\"\n\"667380\";\"Şerbăneştii de Jos\";\"other\"\n\"667395\";\"Şendriceni\";\"main\"\n\"667395\";\"Sendriceni\";\"ascii\"\n\"667395\";\"Ghilia\";\"other\"\n\"667402\";\"Şendreni\";\"main\"\n\"667402\";\"Sendreni\";\"ascii\"\n\"667408\";\"Semlac\";\"main\"\n\"667408\";\"Semlak\";\"other\"\n\"667408\";\"Szemlak\";\"other\"\n\"667420\";\"Şelimbăr\";\"main\"\n\"667420\";\"Selimbar\";\"ascii\"\n\"667420\";\"Schellenberg\";\"other\"\n\"667424\";\"Seleuş\";\"main\"\n\"667424\";\"Seleus\";\"ascii\"\n\"667429\";\"Şelaru\";\"main\"\n\"667429\";\"Selaru\";\"ascii\"\n\"667429\";\"Selarul\";\"other\"\n\"667429\";\"Şelarul\";\"other\"\n\"667434\";\"Şeitin\";\"main\"\n\"667434\";\"Seitin\";\"ascii\"\n\"667434\";\"Sajteny\";\"other\"\n\"667434\";\"Sajtin\";\"other\"\n\"667434\";\"Sajtény\";\"other\"\n\"667437\";\"Seini\";\"main\"\n\"667437\";\"Szinervaralja\";\"other\"\n\"667437\";\"Szinervaraljá\";\"other\"\n\"667437\";\"Сеини\";\"other\"\n\"667441\";\"Seimeni\";\"main\"\n\"667441\";\"Seimeni-Mari\";\"other\"\n\"667441\";\"Seimenii Mari\";\"other\"\n\"667443\";\"Şeica Mică\";\"main\"\n\"667443\";\"Seica Mica\";\"ascii\"\n\"667445\";\"Şeíca Mare\";\"main\"\n\"667445\";\"Seica Mare\";\"ascii\"\n\"667449\";\"Segarcea Vale\";\"main\"\n\"667449\";\"Segarcea\";\"other\"\n\"667449\";\"Segarcea-din-Vale\";\"other\"\n\"667453\";\"Segarcea\";\"main\"\n\"667458\";\"Secusigiu\";\"main\"\n\"667458\";\"Secusigiul\";\"other\"\n\"667458\";\"Sekeschut\";\"other\"\n\"667458\";\"Sekushich\";\"other\"\n\"667458\";\"Szekeskut\";\"other\"\n\"667458\";\"Székeskút\";\"other\"\n\"667465\";\"Secuieni\";\"main\"\n\"667465\";\"Campeni\";\"other\"\n\"667465\";\"Cimpeni\";\"other\"\n\"667465\";\"Câmpeni\";\"other\"\n\"667465\";\"Cîmpeni\";\"other\"\n\"667465\";\"Dumbrava\";\"other\"\n\"667465\";\"Secueni\";\"other\"\n\"667481\";\"Secu\";\"main\"\n\"667481\";\"Secul\";\"other\"\n\"667507\";\"Secăria\";\"main\"\n\"667507\";\"Secaria\";\"ascii\"\n\"667515\";\"Sebiş\";\"main\"\n\"667515\";\"Sebis\";\"ascii\"\n\"667515\";\"Borossebes\";\"other\"\n\"667526\";\"Sebeş\";\"main\"\n\"667526\";\"Sebes\";\"ascii\"\n\"667526\";\"Muehlbach\";\"other\"\n\"667526\";\"Mühlbach\";\"other\"\n\"667526\";\"Sebesh\";\"other\"\n\"667526\";\"Себеш\";\"other\"\n\"667532\";\"Seaca de Cîmp\";\"main\"\n\"667532\";\"Seaca de Cimp\";\"ascii\"\n\"667532\";\"Seaca\";\"other\"\n\"667532\";\"Seaca de Camp\";\"other\"\n\"667532\";\"Seaca de Câmp\";\"other\"\n\"667545\";\"Seaca\";\"main\"\n\"667545\";\"Belciugata\";\"other\"\n\"667546\";\"Seaca\";\"main\"\n\"667548\";\"Scutelnici\";\"main\"\n\"667548\";\"Meteleu\";\"other\"\n\"667548\";\"Meteleu-Scutelnici\";\"other\"\n\"667548\";\"Meteleul\";\"other\"\n\"667548\";\"Meteleul-Scutelnici\";\"other\"\n\"667548\";\"Scurtelnici\";\"other\"\n\"667553\";\"Scurtu Mare\";\"main\"\n\"667553\";\"Scurtu\";\"other\"\n\"667553\";\"Scurtul\";\"other\"\n\"667564\";\"Scundu\";\"main\"\n\"667564\";\"Paduretu\";\"other\"\n\"667564\";\"Pădureţu\";\"other\"\n\"667572\";\"Scrioaştea\";\"main\"\n\"667572\";\"Scrioastea\";\"ascii\"\n\"667572\";\"Scriostea\";\"other\"\n\"667582\";\"Scorţoasa\";\"main\"\n\"667582\";\"Scortoasa\";\"ascii\"\n\"667585\";\"Scorţeni\";\"main\"\n\"667585\";\"Scorteni\";\"ascii\"\n\"667586\";\"Scorţeni\";\"main\"\n\"667586\";\"Scorteni\";\"ascii\"\n\"667590\";\"Scorţaru Nou\";\"main\"\n\"667590\";\"Scortaru Nou\";\"ascii\"\n\"667590\";\"Scortarul Nou\";\"other\"\n\"667590\";\"Scorţarul Nou\";\"other\"\n\"667593\";\"Scorniceşti\";\"main\"\n\"667593\";\"Scornicesti\";\"ascii\"\n\"667593\";\"Piscantesti\";\"other\"\n\"667593\";\"Piscanteşti\";\"other\"\n\"667606\";\"Scobinţi\";\"main\"\n\"667606\";\"Scobinti\";\"ascii\"\n\"667612\";\"Scoarţa\";\"main\"\n\"667612\";\"Scoarta\";\"ascii\"\n\"667620\";\"Scînteia\";\"main\"\n\"667620\";\"Scinteia\";\"ascii\"\n\"667620\";\"Scanteia\";\"other\"\n\"667620\";\"Scanteia Noua\";\"other\"\n\"667620\";\"Scinteia Noua\";\"other\"\n\"667620\";\"Scânteia\";\"other\"\n\"667620\";\"Scânteia Noua\";\"other\"\n\"667620\";\"Scînteia Nouă\";\"other\"\n\"667646\";\"Schitu-Goleşti\";\"main\"\n\"667646\";\"Schitu-Golesti\";\"ascii\"\n\"667646\";\"Schitul-Golesti\";\"other\"\n\"667646\";\"Schitul-Golesu\";\"other\"\n\"667646\";\"Schitul-Goleşti\";\"other\"\n\"667646\";\"Schitul-Goleşu\";\"other\"\n\"667646\";\"Shutu Golestio\";\"other\"\n\"667646\";\"Shutu Goleştio\";\"other\"\n\"667653\";\"Schitu-Duca\";\"main\"\n\"667653\";\"Schitul-Duca\";\"other\"\n\"667653\";\"Situl Duca\";\"other\"\n\"667653\";\"Şitul Duca\";\"other\"\n\"667669\";\"Schitu\";\"main\"\n\"667669\";\"Schitul Greci\";\"other\"\n\"667670\";\"Schitu\";\"main\"\n\"667670\";\"Pangalesti\";\"other\"\n\"667670\";\"Pingalesti\";\"other\"\n\"667670\";\"Pîngăleşti\";\"other\"\n\"667670\";\"Păngăleşti\";\"other\"\n\"667676\";\"Văleni\";\"main\"\n\"667676\";\"Valeni\";\"ascii\"\n\"667676\";\"Schiopeni\";\"other\"\n\"667676\";\"Şchiopeni\";\"other\"\n\"667691\";\"Schela\";\"main\"\n\"667691\";\"Lascar Catargiu\";\"other\"\n\"667691\";\"Lascăr Catargiu\";\"other\"\n\"667692\";\"Schela\";\"main\"\n\"667706\";\"Scheia\";\"main\"\n\"667708\";\"Şcheia\";\"main\"\n\"667708\";\"Scheia\";\"ascii\"\n\"667721\";\"Scărişoara\";\"main\"\n\"667721\";\"Scarisoara\";\"ascii\"\n\"667721\";\"Scarisoar\";\"other\"\n\"667721\";\"Scărişoar\";\"other\"\n\"667727\";\"Scărişoara\";\"main\"\n\"667727\";\"Scarisoara\";\"ascii\"\n\"667739\";\"Scăeşti\";\"main\"\n\"667739\";\"Scaesti\";\"ascii\"\n\"667748\";\"Săvârşin\";\"main\"\n\"667748\";\"Savarsin\";\"ascii\"\n\"667748\";\"Savirsin\";\"other\"\n\"667748\";\"Schoborschin\";\"other\"\n\"667748\";\"Soborsin\";\"other\"\n\"667748\";\"Săvîrşin\";\"other\"\n\"667748\";\"Vam\";\"other\"\n\"667748\";\"Vinesti\";\"other\"\n\"667748\";\"Vineşti\";\"other\"\n\"667748\";\"Vám\";\"other\"\n\"667751\";\"Săvineşti\";\"main\"\n\"667751\";\"Savinesti\";\"ascii\"\n\"667751\";\"Sevinesti\";\"other\"\n\"667751\";\"Sevineşti\";\"other\"\n\"667757\";\"Săveni\";\"main\"\n\"667757\";\"Saveni\";\"ascii\"\n\"667757\";\"Savenii\";\"other\"\n\"667759\";\"Săveni\";\"main\"\n\"667759\";\"Saveni\";\"ascii\"\n\"667763\";\"Săvădisla\";\"main\"\n\"667763\";\"Savadisla\";\"ascii\"\n\"667763\";\"Saradisla\";\"other\"\n\"667763\";\"Sărădisla\";\"other\"\n\"667771\";\"Şăulia\";\"main\"\n\"667771\";\"Saulia\";\"ascii\"\n\"667774\";\"Săuleşti\";\"main\"\n\"667774\";\"Saulesti\";\"ascii\"\n\"667783\";\"Săuca\";\"main\"\n\"667783\";\"Sauca\";\"ascii\"\n\"667793\";\"Satu Nou Calopăr\";\"main\"\n\"667793\";\"Satu Nou Calopar\";\"ascii\"\n\"667872\";\"Satu Mare\";\"main\"\n\"667872\";\"Satu-Mare\";\"other\"\n\"667872\";\"Satul-Mare\";\"other\"\n\"667872\";\"Сату-Маре\";\"other\"\n\"667873\";\"Satu Mare\";\"main\"\n\"667873\";\"Satmar\";\"other\"\n\"667873\";\"Satu-Mare\";\"other\"\n\"667873\";\"Satul Mare\";\"other\"\n\"667873\";\"Szathmar\";\"other\"\n\"667873\";\"Szatmar\";\"other\"\n\"667873\";\"Szatmar-Nemeti\";\"other\"\n\"667873\";\"Szatmarnemeti\";\"other\"\n\"667873\";\"Szatmár\";\"other\"\n\"667873\";\"Szatmár-Németi\";\"other\"\n\"667873\";\"Szatmárnémeti\";\"other\"\n\"667873\";\"Sătmar\";\"other\"\n\"667873\";\"Сату Маре\";\"other\"\n\"667873\";\"Сату-Маре\";\"other\"\n\"667873\";\"סאַטמאַר\";\"other\"\n\"667873\";\"סאטו מארה\";\"other\"\n\"667873\";\"סאטמאר\";\"other\"\n\"667873\";\"סטו מארה\";\"other\"\n\"667873\";\"サトゥ・マーレ\";\"other\"\n\"667882\";\"Satulung\";\"main\"\n\"667900\";\"Satchinez\";\"main\"\n\"667900\";\"Knees\";\"other\"\n\"667900\";\"Knes\";\"other\"\n\"667900\";\"Knez\";\"other\"\n\"667900\";\"Knéz\";\"other\"\n\"667900\";\"Temeskenez\";\"other\"\n\"667900\";\"Temeskenéz\";\"other\"\n\"667917\";\"Sascut\";\"main\"\n\"667917\";\"Sascut-Tirg\";\"other\"\n\"667917\";\"Sascut-Tîrg\";\"other\"\n\"667917\";\"Targu Sascut\";\"other\"\n\"667917\";\"Tirgu Sascut\";\"other\"\n\"667917\";\"Târgu Sascut\";\"other\"\n\"667917\";\"Tîrgu Sascut\";\"other\"\n\"667919\";\"Săsciori\";\"main\"\n\"667919\";\"Sasciori\";\"ascii\"\n\"667923\";\"Saschiz\";\"main\"\n\"667948\";\"Săruleşti\";\"main\"\n\"667948\";\"Sarulesti\";\"ascii\"\n\"667950\";\"Săruleşti\";\"main\"\n\"667950\";\"Sarulesti\";\"ascii\"\n\"667952\";\"Şaru Dornei\";\"main\"\n\"667952\";\"Saru Dornei\";\"ascii\"\n\"667952\";\"Sar\";\"other\"\n\"667952\";\"Saru\";\"other\"\n\"667952\";\"Sarul Dornei\";\"other\"\n\"667952\";\"Şar\";\"other\"\n\"667952\";\"Şaru\";\"other\"\n\"667952\";\"Şarul Dornei\";\"other\"\n\"667964\";\"Sarmizegetusa\";\"main\"\n\"667964\";\"Gradiste\";\"other\"\n\"667964\";\"Grădişte\";\"other\"\n\"667964\";\"Sarmisegetuza\";\"other\"\n\"667964\";\"Sarmizegetuza\";\"other\"\n\"667966\";\"Sărmaşu\";\"main\"\n\"667966\";\"Sarmasu\";\"ascii\"\n\"667966\";\"Sarmas\";\"other\"\n\"667966\";\"Sarmasu Mare\";\"other\"\n\"667966\";\"Sarmasul\";\"other\"\n\"667966\";\"Sărmaş\";\"other\"\n\"667966\";\"Şărmaşu Mare\";\"other\"\n\"667966\";\"Şărmaşul\";\"other\"\n\"667970\";\"Şărmăşag\";\"main\"\n\"667970\";\"Sarmasag\";\"ascii\"\n\"667972\";\"Sărmaş\";\"main\"\n\"667972\";\"Sarmas\";\"ascii\"\n\"667972\";\"Salamas\";\"other\"\n\"667972\";\"Salamàs\";\"other\"\n\"667972\";\"Salarnas\";\"other\"\n\"667972\";\"Salarnás\";\"other\"\n\"667972\";\"Sarmasul\";\"other\"\n\"667972\";\"Sărmaşul\";\"other\"\n\"667991\";\"Sarichioi\";\"main\"\n\"667991\";\"Sarikioi\";\"other\"\n\"668062\";\"Saraiu\";\"main\"\n\"668062\";\"Sarai\";\"other\"\n\"668062\";\"Saraiul\";\"other\"\n\"668073\";\"Săpoca\";\"main\"\n\"668073\";\"Sapoca\";\"ascii\"\n\"668076\";\"Săpînţa\";\"main\"\n\"668076\";\"Sapinta\";\"ascii\"\n\"668076\";\"Sapanta\";\"other\"\n\"668076\";\"Săpânta\";\"other\"\n\"668089\";\"Santău\";\"main\"\n\"668089\";\"Santau\";\"ascii\"\n\"668091\";\"Şanţ\";\"main\"\n\"668091\";\"Sant\";\"ascii\"\n\"668091\";\"Ujrad\";\"other\"\n\"668096\";\"Sanislău\";\"main\"\n\"668096\";\"Sanislau\";\"ascii\"\n\"668101\";\"Sănduleşti\";\"main\"\n\"668101\";\"Sandulesti\";\"ascii\"\n\"668101\";\"Sind\";\"other\"\n\"668104\";\"Sănduleni\";\"main\"\n\"668104\";\"Sanduleni\";\"ascii\"\n\"668116\";\"Şamşud\";\"main\"\n\"668116\";\"Samsud\";\"ascii\"\n\"668119\";\"Samarineşti\";\"main\"\n\"668119\";\"Samarinesti\";\"ascii\"\n\"668124\";\"Salva\";\"main\"\n\"668128\";\"Sălsig\";\"main\"\n\"668128\";\"Salsig\";\"ascii\"\n\"668129\";\"Salonta\";\"main\"\n\"668129\";\"Nagyszalonta\";\"other\"\n\"668129\";\"Салонта\";\"other\"\n\"668142\";\"Săliştea de Sus\";\"main\"\n\"668142\";\"Salistea de Sus\";\"ascii\"\n\"668142\";\"Saliste-de-Sus\";\"other\"\n\"668142\";\"Sălişte-de-Sus\";\"other\"\n\"668143\";\"Săliştea-Deal\";\"main\"\n\"668143\";\"Salistea-Deal\";\"ascii\"\n\"668153\";\"Sălişte\";\"main\"\n\"668153\";\"Saliste\";\"ascii\"\n\"668167\";\"Sălcuţa\";\"main\"\n\"668167\";\"Salcuta\";\"ascii\"\n\"668173\";\"Sălciua de Sus\";\"main\"\n\"668173\";\"Salciua de Sus\";\"ascii\"\n\"668186\";\"Sălcioara\";\"main\"\n\"668186\";\"Salcioara\";\"ascii\"\n\"668186\";\"Besteloaia\";\"other\"\n\"668186\";\"Beşteloaia\";\"other\"\n\"668188\";\"Sălcioara\";\"main\"\n\"668188\";\"Salcioara\";\"ascii\"\n\"668193\";\"Sălciile\";\"main\"\n\"668193\";\"Salciile\";\"ascii\"\n\"668198\";\"Salcia Tudor\";\"main\"\n\"668198\";\"Domnita Ileana\";\"other\"\n\"668198\";\"Domniţa Ileana\";\"other\"\n\"668198\";\"Tudor Vladimirescu\";\"other\"\n\"668210\";\"Salcia\";\"main\"\n\"668214\";\"Salcia\";\"main\"\n\"668215\";\"Salcia\";\"main\"\n\"668219\";\"Salcea\";\"main\"\n\"668226\";\"Sălătrucu\";\"main\"\n\"668226\";\"Salatrucu\";\"ascii\"\n\"668226\";\"Salatrucu de Sus\";\"other\"\n\"668226\";\"Salatrucul-de-Sus\";\"other\"\n\"668226\";\"Sălătrucu de Sus\";\"other\"\n\"668226\";\"Sălătrucul-de-Sus\";\"other\"\n\"668229\";\"Sălătrucel\";\"main\"\n\"668229\";\"Salatrucel\";\"ascii\"\n\"668229\";\"Salatruc\";\"other\"\n\"668229\";\"Salatrucelu\";\"other\"\n\"668229\";\"Sălătruc\";\"other\"\n\"668229\";\"Sălătrucelu\";\"other\"\n\"668236\";\"Sălăţig\";\"main\"\n\"668236\";\"Salatig\";\"ascii\"\n\"668238\";\"Sălaşu de Sus\";\"main\"\n\"668238\";\"Salasu de Sus\";\"ascii\"\n\"668238\";\"Salasu Superior\";\"other\"\n\"668238\";\"Salasul-Superior\";\"other\"\n\"668238\";\"Salasul-de-Sus\";\"other\"\n\"668238\";\"Sălaşu Superior\";\"other\"\n\"668238\";\"Sălaşul-Superior\";\"other\"\n\"668238\";\"Sălaşul-de-Sus\";\"other\"\n\"668243\";\"Sălard\";\"main\"\n\"668243\";\"Salard\";\"ascii\"\n\"668252\";\"Sălacea\";\"main\"\n\"668252\";\"Salacea\";\"ascii\"\n\"668257\";\"Săhăteni\";\"main\"\n\"668257\";\"Sahateni\";\"ascii\"\n\"668257\";\"Sahateni-de-Jos\";\"other\"\n\"668257\";\"Sahatenii de Jos\";\"other\"\n\"668257\";\"Satucul\";\"other\"\n\"668257\";\"Satueul\";\"other\"\n\"668257\";\"Săhăteni-de-Jos\";\"other\"\n\"668257\";\"Săhătenii de Jos\";\"other\"\n\"668261\";\"Şagu\";\"main\"\n\"668261\";\"Sagu\";\"ascii\"\n\"668261\";\"Dreispitz\";\"other\"\n\"668261\";\"Nemetsag\";\"other\"\n\"668261\";\"Németság\";\"other\"\n\"668261\";\"Saagh\";\"other\"\n\"668261\";\"Sag\";\"other\"\n\"668261\";\"Sagul\";\"other\"\n\"668261\";\"Segentau\";\"other\"\n\"668261\";\"Segenthau\";\"other\"\n\"668261\";\"Ság\";\"other\"\n\"668261\";\"Şagul\";\"other\"\n\"668263\";\"Sagna\";\"main\"\n\"668263\";\"La Duliba\";\"other\"\n\"668266\";\"Săgeata\";\"main\"\n\"668266\";\"Sageata\";\"ascii\"\n\"668266\";\"Sageata de Sus\";\"other\"\n\"668266\";\"Sageta de Jos\";\"other\"\n\"668266\";\"Săgeata de Sus\";\"other\"\n\"668266\";\"Săgeta de Jos\";\"other\"\n\"668269\";\"Şag\";\"main\"\n\"668269\";\"Sag\";\"ascii\"\n\"668269\";\"Saag\";\"other\"\n\"668269\";\"Sagh\";\"other\"\n\"668269\";\"Saág\";\"other\"\n\"668269\";\"Schag\";\"other\"\n\"668269\";\"Ság\";\"other\"\n\"668269\";\"Ságh\";\"other\"\n\"668269\";\"Temessag\";\"other\"\n\"668269\";\"Temesság\";\"other\"\n\"668278\";\"Sadu\";\"main\"\n\"668278\";\"Sadul\";\"other\"\n\"668286\";\"Sadova\";\"main\"\n\"668287\";\"Sadova\";\"main\"\n\"668297\";\"Székelyhíd\";\"main\"\n\"668297\";\"Szekelyhid\";\"ascii\"\n\"668297\";\"Sacuieni\";\"other\"\n\"668297\";\"Secueni\";\"other\"\n\"668300\";\"Sacu\";\"main\"\n\"668300\";\"Sacul\";\"other\"\n\"668304\";\"Sacoşu Turcesc\";\"main\"\n\"668304\";\"Sacosu Turcesc\";\"ascii\"\n\"668304\";\"Sacosu-Mare\";\"other\"\n\"668304\";\"Sacosul Turcesu\";\"other\"\n\"668304\";\"Sacosul-Mare\";\"other\"\n\"668304\";\"Sacosul-Turcesc\";\"other\"\n\"668304\";\"Sacoşu-Mare\";\"other\"\n\"668304\";\"Sacoşul Turcesu\";\"other\"\n\"668304\";\"Sacoşul-Mare\";\"other\"\n\"668304\";\"Sacoşul-Turcesc\";\"other\"\n\"668304\";\"Toeroekszakos\";\"other\"\n\"668304\";\"Törökszákos\";\"other\"\n\"668310\";\"Săceni\";\"main\"\n\"668310\";\"Saceni\";\"ascii\"\n\"668312\";\"Săcelu\";\"main\"\n\"668312\";\"Sacelu\";\"ascii\"\n\"668314\";\"Săcele\";\"main\"\n\"668314\";\"Sacele\";\"ascii\"\n\"668314\";\"Hetfalu\";\"other\"\n\"668314\";\"Sehchele\";\"other\"\n\"668314\";\"Sieben Dorfer\";\"other\"\n\"668314\";\"Sieben Dörfer\";\"other\"\n\"668314\";\"Сэчеле\";\"other\"\n\"668315\";\"Săcele\";\"main\"\n\"668315\";\"Sacele\";\"ascii\"\n\"668315\";\"Peletlia\";\"other\"\n\"668315\";\"Pelitlia\";\"other\"\n\"668315\";\"Sehchele\";\"other\"\n\"668315\";\"Сэчеле\";\"other\"\n\"668320\";\"Săcel\";\"main\"\n\"668320\";\"Sacel\";\"ascii\"\n\"668320\";\"Sacelu\";\"other\"\n\"668320\";\"Săcelu\";\"other\"\n\"668322\";\"Săcel\";\"main\"\n\"668322\";\"Sacel\";\"ascii\"\n\"668322\";\"Izaszacsal\";\"other\"\n\"668330\";\"Săcăşeni\";\"main\"\n\"668330\";\"Sacaseni\";\"ascii\"\n\"668330\";\"Socaciu\";\"other\"\n\"668342\";\"Săcălaz\";\"main\"\n\"668342\";\"Sacalaz\";\"ascii\"\n\"668342\";\"Sackelhaus\";\"other\"\n\"668342\";\"Sackelhausen\";\"other\"\n\"668342\";\"Szakalhaza\";\"other\"\n\"668342\";\"Szakálháza\";\"other\"\n\"668353\";\"Săcădat\";\"main\"\n\"668353\";\"Sacadat\";\"ascii\"\n\"668353\";\"Sacadad\";\"other\"\n\"668353\";\"Săcădad\";\"other\"\n\"668365\";\"Săbăoani\";\"main\"\n\"668365\";\"Sabaoani\";\"ascii\"\n\"668365\";\"Sabaoani-Lecuseni\";\"other\"\n\"668365\";\"Sabaoani-Leuseni\";\"other\"\n\"668365\";\"Săbăoani-Lecuşeni\";\"other\"\n\"668365\";\"Săbăoani-Leuşeni\";\"other\"\n\"668382\";\"Ruşii Munţi\";\"main\"\n\"668382\";\"Rusii Munti\";\"ascii\"\n\"668382\";\"Marosoroszfalu\";\"other\"\n\"668382\";\"Marosoroszfalù\";\"other\"\n\"668394\";\"Ruşeţu\";\"main\"\n\"668394\";\"Rusetu\";\"ascii\"\n\"668394\";\"Rusetul\";\"other\"\n\"668394\";\"Ruşeţul\";\"other\"\n\"668431\";\"Rusăneşti\";\"main\"\n\"668431\";\"Rusanesti\";\"ascii\"\n\"668431\";\"Rusanestii de Jos\";\"other\"\n\"668431\";\"Rusăneştii de Jos\";\"other\"\n\"668435\";\"Rus\";\"main\"\n\"668435\";\"Oroszinezo\";\"other\"\n\"668435\";\"Oroszinezö\";\"other\"\n\"668435\";\"Oroszmezo\";\"other\"\n\"668442\";\"Rupea\";\"main\"\n\"668442\";\"Cohalm\";\"other\"\n\"668442\";\"Kohalom\";\"other\"\n\"668442\";\"Kőhalom\";\"other\"\n\"668442\";\"Rupja\";\"other\"\n\"668442\";\"Рупя\";\"other\"\n\"668465\";\"Runcu\";\"main\"\n\"668465\";\"Runcul\";\"other\"\n\"668466\";\"Runcu\";\"main\"\n\"668466\";\"Runcul\";\"other\"\n\"668467\";\"Runcu\";\"main\"\n\"668467\";\"Runcur\";\"other\"\n\"668488\";\"Ruginoasa\";\"main\"\n\"668495\";\"Rugineşti\";\"main\"\n\"668495\";\"Ruginesti\";\"ascii\"\n\"668495\";\"Ruginestii\";\"other\"\n\"668495\";\"Rugineştii\";\"other\"\n\"668542\";\"Rucăr\";\"main\"\n\"668542\";\"Rucar\";\"ascii\"\n\"668546\";\"Roznov\";\"main\"\n\"668546\";\"Rasnov\";\"other\"\n\"668548\";\"Rozavlea\";\"main\"\n\"668552\";\"Pecica\";\"main\"\n\"668552\";\"Magyarpecska\";\"other\"\n\"668552\";\"Magyarpécska\";\"other\"\n\"668552\";\"Opecska\";\"other\"\n\"668552\";\"Pecica Ungureasca\";\"other\"\n\"668552\";\"Pecica Ungurească\";\"other\"\n\"668552\";\"Pecica Veche\";\"other\"\n\"668552\";\"Petschka\";\"other\"\n\"668552\";\"Rovine\";\"other\"\n\"668552\";\"Ópécska\";\"other\"\n\"668555\";\"Rovinari\";\"main\"\n\"668569\";\"Rotunda\";\"main\"\n\"668569\";\"Ratunda\";\"other\"\n\"668569\";\"Rătunda\";\"other\"\n\"668605\";\"Roşiori de Vede\";\"main\"\n\"668605\";\"Rosiori de Vede\";\"ascii\"\n\"668605\";\"Roisori de Vede\";\"other\"\n\"668605\";\"Roişori de Vede\";\"other\"\n\"668605\";\"Rosiorii de Vede\";\"other\"\n\"668605\";\"Roşiorii de Vede\";\"other\"\n\"668618\";\"Roşiori\";\"main\"\n\"668618\";\"Rosiori\";\"ascii\"\n\"668620\";\"Roşiori\";\"main\"\n\"668620\";\"Rosiori\";\"ascii\"\n\"668628\";\"Roşiile\";\"main\"\n\"668628\";\"Rosiile\";\"ascii\"\n\"668631\";\"Roşieşti\";\"main\"\n\"668631\";\"Rosiesti\";\"ascii\"\n\"668643\";\"Roşia de Secaş\";\"main\"\n\"668643\";\"Rosia de Secas\";\"ascii\"\n\"668645\";\"Roşia de Amaradia\";\"main\"\n\"668645\";\"Rosia de Amaradia\";\"ascii\"\n\"668645\";\"Rosia de Amaradia-de-Sus\";\"other\"\n\"668645\";\"Rosia de Sus\";\"other\"\n\"668645\";\"Roşia de Amaradia-de-Sus\";\"other\"\n\"668645\";\"Roşia de Sus\";\"other\"\n\"668653\";\"Roşia\";\"main\"\n\"668653\";\"Rosia\";\"ascii\"\n\"668656\";\"Roşia\";\"main\"\n\"668656\";\"Rosia\";\"ascii\"\n\"668656\";\"Rosia Saseasca\";\"other\"\n\"668656\";\"Roşia Săsească\";\"other\"\n\"668660\";\"Roseţi\";\"main\"\n\"668660\";\"Roseti\";\"ascii\"\n\"668660\";\"Roset\";\"other\"\n\"668660\";\"Rosetti\";\"other\"\n\"668660\";\"Roseţ\";\"other\"\n\"668681\";\"Rona de Sus\";\"main\"\n\"668683\";\"Rona de Jos\";\"main\"\n\"668687\";\"Romuli\";\"main\"\n\"668693\";\"Romos\";\"main\"\n\"668698\";\"Romîni\";\"main\"\n\"668698\";\"Romini\";\"ascii\"\n\"668698\";\"Romani\";\"other\"\n\"668698\";\"Români\";\"other\"\n\"668723\";\"Romanu\";\"main\"\n\"668723\";\"Romanul\";\"other\"\n\"668732\";\"Roman\";\"main\"\n\"668732\";\"רומאן\";\"other\"\n\"668737\";\"Roma\";\"main\"\n\"668751\";\"Rogova\";\"main\"\n\"668766\";\"Roeşti\";\"main\"\n\"668766\";\"Roesti\";\"ascii\"\n\"668772\";\"Rodna\";\"main\"\n\"668772\";\"Rodna-Veche\";\"other\"\n\"668781\";\"Rociu\";\"main\"\n\"668781\";\"Rociul\";\"other\"\n\"668781\";\"Rosiul\";\"other\"\n\"668788\";\"Robeasca\";\"main\"\n\"668788\";\"Puturosal\";\"other\"\n\"668799\";\"Roata de Jos\";\"main\"\n\"668815\";\"Rîu de Mori\";\"main\"\n\"668815\";\"Riu de Mori\";\"ascii\"\n\"668815\";\"Rau-de-Mori\";\"other\"\n\"668815\";\"Raul-de-Mori\";\"other\"\n\"668815\";\"Râu-de-Mori\";\"other\"\n\"668815\";\"Râul-de-Mori\";\"other\"\n\"668828\";\"Rîşnov\";\"main\"\n\"668828\";\"Risnov\";\"ascii\"\n\"668828\";\"Barcarozsnyo\";\"other\"\n\"668828\";\"Barcarozsnyó\";\"other\"\n\"668828\";\"R\\\"shnov\";\"other\"\n\"668828\";\"Rasnov\";\"other\"\n\"668828\";\"Rosenau\";\"other\"\n\"668828\";\"Ryshnov\";\"other\"\n\"668828\";\"Râşnov\";\"other\"\n\"668828\";\"Ръшнов\";\"other\"\n\"668828\";\"Рышнов\";\"other\"\n\"668849\";\"Ripiceni\";\"main\"\n\"668849\";\"Ripiceni-Fabrica\";\"other\"\n\"668849\";\"Ripiceni-Fabrică\";\"other\"\n\"668872\";\"Râmnicu Vâlcea\";\"main\"\n\"668872\";\"Ramnicu Valcea\";\"ascii\"\n\"668872\";\"Ramnicul Valcea\";\"other\"\n\"668872\";\"Rimnicu Vilcea\";\"other\"\n\"668872\";\"Râmnicul Vâlcea\";\"other\"\n\"668872\";\"Rîmnicu Vîlcea\";\"other\"\n\"668873\";\"Rîmnicu Sărat\";\"main\"\n\"668873\";\"Rimnicu Sarat\";\"ascii\"\n\"668873\";\"Ramnicu Sarat\";\"other\"\n\"668873\";\"Ramnicul Sarat\";\"other\"\n\"668873\";\"Rimnic\";\"other\"\n\"668873\";\"Râmnicu Sărat\";\"other\"\n\"668873\";\"Râmnicul Sărat\";\"other\"\n\"668873\";\"Rîmnic\";\"other\"\n\"668883\";\"Rîmnicelu\";\"main\"\n\"668883\";\"Rimnicelu\";\"ascii\"\n\"668883\";\"Ramnicelu\";\"other\"\n\"668883\";\"Ramnicelul\";\"other\"\n\"668883\";\"Râmnicelu\";\"other\"\n\"668883\";\"Râmnicelul\";\"other\"\n\"668900\";\"Rimetea\";\"main\"\n\"668911\";\"Rîfov\";\"main\"\n\"668911\";\"Rifov\";\"ascii\"\n\"668911\";\"Rafovul\";\"other\"\n\"668911\";\"Râfovul\";\"other\"\n\"668913\";\"Rieni\";\"main\"\n\"668913\";\"Reny\";\"other\"\n\"668913\";\"Rieny\";\"other\"\n\"668913\";\"Rény\";\"other\"\n\"668915\";\"Rîciu\";\"main\"\n\"668915\";\"Riciu\";\"ascii\"\n\"668915\";\"Mezorucs\";\"other\"\n\"668915\";\"Mezörücs\";\"other\"\n\"668915\";\"Raciu\";\"other\"\n\"668915\";\"Raciul\";\"other\"\n\"668915\";\"Râciu\";\"other\"\n\"668915\";\"Râciul\";\"other\"\n\"668928\";\"Ribiţa\";\"main\"\n\"668928\";\"Ribita\";\"ascii\"\n\"668933\";\"Reviga\";\"main\"\n\"668954\";\"Reşiţa\";\"main\"\n\"668954\";\"Resita\";\"ascii\"\n\"668954\";\"Recita\";\"other\"\n\"668954\";\"Reciţa\";\"other\"\n\"668954\";\"Reschitz\";\"other\"\n\"668954\";\"Reschitza\";\"other\"\n\"668954\";\"Resicabanya\";\"other\"\n\"668954\";\"Resicabánya\";\"other\"\n\"668954\";\"Resicza\";\"other\"\n\"668954\";\"Resiczabanya\";\"other\"\n\"668954\";\"Resiczabánya\";\"other\"\n\"668963\";\"Repedea\";\"main\"\n\"668963\";\"Ordszko\";\"other\"\n\"668973\";\"Remeţi\";\"main\"\n\"668973\";\"Remeti\";\"ascii\"\n\"668979\";\"Remetea Mare\";\"main\"\n\"668979\";\"Remete\";\"other\"\n\"668979\";\"Remetea Timisana\";\"other\"\n\"668979\";\"Remetea Timişană\";\"other\"\n\"668979\";\"Temesremete\";\"other\"\n\"668983\";\"Remetea Chioarului\";\"main\"\n\"668983\";\"Remetea Chioarulu\";\"other\"\n\"668983\";\"Remeţea Chioarulu\";\"other\"\n\"668986\";\"Remetea\";\"main\"\n\"668986\";\"Gyergyoremete\";\"other\"\n\"668986\";\"Gyergyóremete\";\"other\"\n\"668986\";\"Remete\";\"other\"\n\"668987\";\"Remetea\";\"main\"\n\"668988\";\"Remetea\";\"main\"\n\"668988\";\"Besa\";\"other\"\n\"668988\";\"Bese\";\"other\"\n\"668988\";\"Beşa\";\"other\"\n\"668994\";\"Reghiu\";\"main\"\n\"668995\";\"Reghin-Sat\";\"main\"\n\"669013\";\"Rediu\";\"main\"\n\"669013\";\"Capu Rediului\";\"other\"\n\"669013\";\"Copou Rediului\";\"other\"\n\"669013\";\"Rediu-Tatar\";\"other\"\n\"669013\";\"Rediu-Tătar\";\"other\"\n\"669013\";\"Rediu-lui-Tatar\";\"other\"\n\"669013\";\"Rediu-lui-Tătar\";\"other\"\n\"669013\";\"Rediul lui Tatar\";\"other\"\n\"669013\";\"Rediul lui Tătar\";\"other\"\n\"669018\";\"Rediu\";\"main\"\n\"669018\";\"Rediul\";\"other\"\n\"669022\";\"Rediu\";\"main\"\n\"669022\";\"Oasele\";\"other\"\n\"669026\";\"Redea\";\"main\"\n\"669029\";\"Reci\";\"main\"\n\"669029\";\"Rety\";\"other\"\n\"669029\";\"Rèty\";\"other\"\n\"669037\";\"Recea Cristur\";\"main\"\n\"669043\";\"Recea\";\"main\"\n\"669051\";\"Recea\";\"main\"\n\"669051\";\"Telechi Rece\";\"other\"\n\"669051\";\"Telechi-Recea\";\"other\"\n\"669051\";\"Telechi-Reci\";\"other\"\n\"669051\";\"Vaida-Recea\";\"other\"\n\"669054\";\"Recea\";\"main\"\n\"669054\";\"Recea de Sus\";\"other\"\n\"669058\";\"Recaş\";\"main\"\n\"669058\";\"Recas\";\"ascii\"\n\"669058\";\"Armag\";\"other\"\n\"669058\";\"Rekas\";\"other\"\n\"669058\";\"Rekasch\";\"other\"\n\"669058\";\"Rékas\";\"other\"\n\"669058\";\"Temesrekas\";\"other\"\n\"669058\";\"Temesrékas\";\"other\"\n\"669060\";\"Rebrişoara\";\"main\"\n\"669060\";\"Rebrisoara\";\"ascii\"\n\"669064\";\"Rebricea\";\"main\"\n\"669064\";\"Gura Vaii\";\"other\"\n\"669064\";\"Gura Văii\";\"other\"\n\"669067\";\"Rebra\";\"main\"\n\"669072\";\"Răzvad\";\"main\"\n\"669072\";\"Razvad\";\"ascii\"\n\"669072\";\"Rasvadu-de-Jos\";\"other\"\n\"669072\";\"Rasvadul de Jos\";\"other\"\n\"669072\";\"Razvadu de Jos\";\"other\"\n\"669072\";\"Răsvadu-de-Jos\";\"other\"\n\"669072\";\"Răsvadul de Jos\";\"other\"\n\"669072\";\"Răzvadu de Jos\";\"other\"\n\"669088\";\"Războeni\";\"main\"\n\"669088\";\"Razboeni\";\"ascii\"\n\"669088\";\"Rasboeni\";\"other\"\n\"669088\";\"Razboeni Valea-Alba\";\"other\"\n\"669088\";\"Razboenie\";\"other\"\n\"669088\";\"Razboetu\";\"other\"\n\"669088\";\"Razboieni\";\"other\"\n\"669088\";\"Răsboeni\";\"other\"\n\"669088\";\"Războeni Valea-Alba\";\"other\"\n\"669088\";\"Războenie\";\"other\"\n\"669088\";\"Războetü\";\"other\"\n\"669088\";\"Războieni\";\"other\"\n\"669098\";\"Răuseni\";\"main\"\n\"669098\";\"Rauseni\";\"ascii\"\n\"669102\";\"Răuceşti\";\"main\"\n\"669102\";\"Raucesti\";\"ascii\"\n\"669116\";\"Răteşti\";\"main\"\n\"669116\";\"Ratesti\";\"ascii\"\n\"669126\";\"Răsuceni\";\"main\"\n\"669126\";\"Rasuceni\";\"ascii\"\n\"669126\";\"Rasuceni-de-Sus\";\"other\"\n\"669126\";\"Rasucenii de Sus\";\"other\"\n\"669126\";\"Răsuceni-de-Sus\";\"other\"\n\"669126\";\"Răsucenii de Sus\";\"other\"\n\"669128\";\"Rastu\";\"main\"\n\"669128\";\"Rastul\";\"other\"\n\"669133\";\"Răstoliţa\";\"main\"\n\"669133\";\"Rastolita\";\"ascii\"\n\"669133\";\"Ratosnya\";\"other\"\n\"669148\";\"Rasova\";\"main\"\n\"669154\";\"Răsmireşti\";\"main\"\n\"669154\";\"Rasmiresti\";\"ascii\"\n\"669156\";\"Răşinari\";\"main\"\n\"669156\";\"Rasinari\";\"ascii\"\n\"669183\";\"Rapoltu Mare\";\"main\"\n\"669183\";\"Rapoldul-Mare\";\"other\"\n\"669183\";\"Rapoltul-Mare\";\"other\"\n\"669186\";\"Răpănaşu\";\"main\"\n\"669186\";\"Rapanasu\";\"ascii\"\n\"669192\";\"Ramna\";\"main\"\n\"669192\";\"Raffna\";\"other\"\n\"669192\";\"Rafna\";\"other\"\n\"669192\";\"Rustica Villa\";\"other\"\n\"669241\";\"Răducăneni\";\"main\"\n\"669241\";\"Raducaneni\";\"ascii\"\n\"669244\";\"Radovanu\";\"main\"\n\"669244\";\"Radovanul\";\"other\"\n\"669245\";\"Radovanu\";\"main\"\n\"669245\";\"Radovan\";\"other\"\n\"669245\";\"Radovanul\";\"other\"\n\"669253\";\"Radomireşti\";\"main\"\n\"669253\";\"Radomiresti\";\"ascii\"\n\"669253\";\"Fripti\";\"other\"\n\"669253\";\"Fripţi\";\"other\"\n\"669255\";\"Rădoeşti Deal\";\"main\"\n\"669255\";\"Radoesti Deal\";\"ascii\"\n\"669272\";\"Rădeşti\";\"main\"\n\"669272\";\"Radesti\";\"ascii\"\n\"669288\";\"Rădăuţi\";\"main\"\n\"669288\";\"Radauti\";\"ascii\"\n\"669289\";\"Rădăuţi\";\"main\"\n\"669289\";\"Radauti\";\"ascii\"\n\"669289\";\"Radauci\";\"other\"\n\"669289\";\"Radautio\";\"other\"\n\"669289\";\"Radautz\";\"other\"\n\"669289\";\"Radivci\";\"other\"\n\"669289\";\"Radoc\";\"other\"\n\"669289\";\"Radowce\";\"other\"\n\"669289\";\"Radóc\";\"other\"\n\"669289\";\"Rehdehuci\";\"other\"\n\"669289\";\"Rădăutio\";\"other\"\n\"669289\";\"Радауци\";\"other\"\n\"669289\";\"Радівці\";\"other\"\n\"669289\";\"Рэдэуци\";\"other\"\n\"669292\";\"Rădăşeni\";\"main\"\n\"669292\";\"Radaseni\";\"ascii\"\n\"669292\";\"Iazu\";\"other\"\n\"669292\";\"Valea Visinului\";\"other\"\n\"669292\";\"Valea Vişinului\";\"other\"\n\"669308\";\"Racoviţeni\";\"main\"\n\"669308\";\"Racoviteni\";\"ascii\"\n\"669308\";\"Nisipenii\";\"other\"\n\"669320\";\"Racoviţa\";\"main\"\n\"669320\";\"Racovita\";\"ascii\"\n\"669320\";\"Rakovica\";\"other\"\n\"669320\";\"Rakovicza\";\"other\"\n\"669321\";\"Racoviţa\";\"main\"\n\"669321\";\"Racovita\";\"ascii\"\n\"669322\";\"Racoviţa\";\"main\"\n\"669322\";\"Racovita\";\"ascii\"\n\"669323\";\"Racoviţa\";\"main\"\n\"669323\";\"Racovita\";\"ascii\"\n\"669323\";\"Suligata\";\"other\"\n\"669339\";\"Racova\";\"main\"\n\"669344\";\"Racoşu de Sus\";\"main\"\n\"669344\";\"Racosu de Sus\";\"ascii\"\n\"669344\";\"Felsorakos\";\"other\"\n\"669344\";\"Felsöràkos\";\"other\"\n\"669344\";\"Racos\";\"other\"\n\"669344\";\"Racosul-de-Sus\";\"other\"\n\"669344\";\"Racoş\";\"other\"\n\"669348\";\"Răcoasa\";\"main\"\n\"669348\";\"Racoasa\";\"ascii\"\n\"669360\";\"Răchitova\";\"main\"\n\"669360\";\"Rachitova\";\"ascii\"\n\"669360\";\"Rechitova\";\"other\"\n\"669364\";\"Răchitoasa\";\"main\"\n\"669364\";\"Rachitoasa\";\"ascii\"\n\"669371\";\"Răchiţi\";\"main\"\n\"669371\";\"Rachiti\";\"ascii\"\n\"669371\";\"Rachiti-Topauti\";\"other\"\n\"669371\";\"Răchiţi-Topăuţi\";\"other\"\n\"669398\";\"Răcăşdia\";\"main\"\n\"669398\";\"Racasdia\";\"ascii\"\n\"669398\";\"Rakazdija\";\"other\"\n\"669398\";\"Rakaždija\";\"other\"\n\"669405\";\"Răcari\";\"main\"\n\"669405\";\"Racari\";\"ascii\"\n\"669408\";\"Răcăciuni\";\"main\"\n\"669408\";\"Racaciuni\";\"ascii\"\n\"669412\";\"Răbăgani\";\"main\"\n\"669412\";\"Rabagani\";\"ascii\"\n\"669436\";\"Putna\";\"main\"\n\"669443\";\"Putineiu\";\"main\"\n\"669443\";\"Putineiul\";\"other\"\n\"669443\";\"Putineu\";\"other\"\n\"669444\";\"Putineiu\";\"main\"\n\"669444\";\"Putineiul\";\"other\"\n\"669491\";\"Punghina\";\"main\"\n\"669493\";\"Pungeşti\";\"main\"\n\"669493\";\"Pungesti\";\"ascii\"\n\"669493\";\"Pungesti-Tirg\";\"other\"\n\"669493\";\"Pungeşti-Tîrg\";\"other\"\n\"669499\";\"Puieşti\";\"main\"\n\"669499\";\"Puiesti\";\"ascii\"\n\"669499\";\"Puesti\";\"other\"\n\"669499\";\"Puesti-Tirg\";\"other\"\n\"669499\";\"Puestii Targ\";\"other\"\n\"669499\";\"Pueşti\";\"other\"\n\"669499\";\"Pueşti-Tîrg\";\"other\"\n\"669499\";\"Pueştii Targ\";\"other\"\n\"669501\";\"Pui\";\"main\"\n\"669504\";\"Pufeşti\";\"main\"\n\"669504\";\"Pufesti\";\"ascii\"\n\"669504\";\"Pufestii\";\"other\"\n\"669504\";\"Pufeştii\";\"other\"\n\"669517\";\"Pucioasa\";\"main\"\n\"669522\";\"Puchenii Mari\";\"main\"\n\"669522\";\"Pucheni\";\"other\"\n\"669522\";\"Puchenii-Crainici\";\"other\"\n\"669525\";\"Pucheni\";\"main\"\n\"669528\";\"Prunişor\";\"main\"\n\"669528\";\"Prunisor\";\"ascii\"\n\"669528\";\"Prunisori\";\"other\"\n\"669528\";\"Prunisoru\";\"other\"\n\"669528\";\"Prunişori\";\"other\"\n\"669545\";\"Prundu\";\"main\"\n\"669545\";\"Prundu Comenii\";\"other\"\n\"669545\";\"Prundul\";\"other\"\n\"669549\";\"Prundeni\";\"main\"\n\"669549\";\"Daesti\";\"other\"\n\"669549\";\"Dăeşti\";\"other\"\n\"669554\";\"Proviţa de Sus\";\"main\"\n\"669554\";\"Provita de Sus\";\"ascii\"\n\"669556\";\"Proviţa de Jos\";\"main\"\n\"669556\";\"Provita de Jos\";\"ascii\"\n\"669576\";\"Produleşti\";\"main\"\n\"669576\";\"Produlesti\";\"ascii\"\n\"669587\";\"Probota\";\"main\"\n\"669587\";\"Probota-Ciulnesti\";\"other\"\n\"669587\";\"Probota-Ciulneşti\";\"other\"\n\"669590\";\"Pristol\";\"main\"\n\"669590\";\"Pristolu\";\"other\"\n\"669610\";\"Priseaca\";\"main\"\n\"669618\";\"Prisăcani\";\"main\"\n\"669618\";\"Prisacani\";\"ascii\"\n\"669618\";\"Prisacani-Moreni\";\"other\"\n\"669618\";\"Prisecani\";\"other\"\n\"669618\";\"Prisecani-Moreni\";\"other\"\n\"669618\";\"Prisăcani-Moreni\";\"other\"\n\"669630\";\"Priponeşti\";\"main\"\n\"669630\";\"Priponesti\";\"ascii\"\n\"669630\";\"Priponescii-de Sus\";\"other\"\n\"669630\";\"Priponestii de Sus\";\"other\"\n\"669630\";\"Priponeştii de Sus\";\"other\"\n\"669643\";\"Prigoria\";\"main\"\n\"669647\";\"Prigor\";\"main\"\n\"669654\";\"Priboieni\";\"main\"\n\"669654\";\"Priboeni\";\"other\"\n\"669665\";\"Preuteşti\";\"main\"\n\"669665\";\"Preutesti\";\"ascii\"\n\"669691\";\"Prejmer\";\"main\"\n\"669691\";\"Prazsmar\";\"other\"\n\"669691\";\"Tartlau\";\"other\"\n\"669698\";\"Predeşti\";\"main\"\n\"669698\";\"Predesti\";\"ascii\"\n\"669704\";\"Predeal\";\"main\"\n\"669704\";\"Manastire Predeal\";\"other\"\n\"669704\";\"Mânăstire Predeal\";\"other\"\n\"669704\";\"Predjal\";\"other\"\n\"669704\";\"Предял\";\"other\"\n\"669730\";\"Prăjeni\";\"main\"\n\"669730\";\"Prajeni\";\"ascii\"\n\"669735\";\"Praid\";\"main\"\n\"669735\";\"Parajd\";\"other\"\n\"669753\";\"Potlogi\";\"main\"\n\"669772\";\"Potcoava\";\"main\"\n\"669772\";\"Potcoava Cirstesti\";\"other\"\n\"669772\";\"Potcoava Cîrsteşti\";\"other\"\n\"669783\";\"Poşta Cîlnău\";\"main\"\n\"669783\";\"Posta Cilnau\";\"ascii\"\n\"669783\";\"Calugari\";\"other\"\n\"669783\";\"Călugări\";\"other\"\n\"669783\";\"Posta\";\"other\"\n\"669783\";\"Posta Calnau\";\"other\"\n\"669783\";\"Poşta\";\"other\"\n\"669783\";\"Poşta Calnau\";\"other\"\n\"669783\";\"Scarisoara\";\"other\"\n\"669783\";\"Scărisoara\";\"other\"\n\"669800\";\"Poseşti-Ungureni\";\"main\"\n\"669800\";\"Posesti-Ungureni\";\"ascii\"\n\"669800\";\"Ungureni\";\"other\"\n\"669803\";\"Poşaga de Sus\";\"main\"\n\"669803\";\"Posaga de Sus\";\"ascii\"\n\"669818\";\"Porumbacu de Jos\";\"main\"\n\"669818\";\"Porumbacul de Jos\";\"other\"\n\"669832\";\"Poroschia\";\"main\"\n\"669836\";\"Poroina Mare\";\"main\"\n\"669847\";\"Popricani\";\"main\"\n\"669847\";\"Popricani-Coarba\";\"other\"\n\"669850\";\"Poporogi\";\"main\"\n\"669855\";\"Poplaca\";\"main\"\n\"669870\";\"Popeşti-Leordeni\";\"main\"\n\"669870\";\"Popesti-Leordeni\";\"ascii\"\n\"669870\";\"Popesti\";\"other\"\n\"669870\";\"Popesti-Leurdeni\";\"other\"\n\"669870\";\"Popestii\";\"other\"\n\"669870\";\"Popestii-Conduratu\";\"other\"\n\"669870\";\"Popeşti\";\"other\"\n\"669870\";\"Popeşti-Leurdeni\";\"other\"\n\"669870\";\"Popeştii\";\"other\"\n\"669870\";\"Popeştii-Conduratu\";\"other\"\n\"669870\";\"Popoestii-Leordeni\";\"other\"\n\"669870\";\"Popoeştii-Leordeni\";\"other\"\n\"669882\";\"Popeşti\";\"main\"\n\"669882\";\"Popesti\";\"ascii\"\n\"669883\";\"Popeşti\";\"main\"\n\"669883\";\"Popesti\";\"ascii\"\n\"669897\";\"Popeşti\";\"main\"\n\"669897\";\"Popesti\";\"ascii\"\n\"669904\";\"Popeşti\";\"main\"\n\"669904\";\"Popesti\";\"ascii\"\n\"669940\";\"Ponoarele\";\"main\"\n\"669947\";\"Pomîrla\";\"main\"\n\"669947\";\"Pomirla\";\"ascii\"\n\"669947\";\"Pomarla\";\"other\"\n\"669947\";\"Pomârla\";\"other\"\n\"669950\";\"Pomi\";\"main\"\n\"669952\";\"Pomezeu\";\"main\"\n\"669955\";\"Polovragi\";\"main\"\n\"669955\";\"Polovragiu\";\"other\"\n\"669968\";\"Pojorîta\";\"main\"\n\"669968\";\"Pojorita\";\"ascii\"\n\"669968\";\"Pojarata\";\"other\"\n\"669968\";\"Pojarâta\";\"other\"\n\"669968\";\"Pojorata\";\"other\"\n\"669968\";\"Pojorâta\";\"other\"\n\"669980\";\"Pojejena\";\"main\"\n\"669980\";\"Pojejena de Jos\";\"other\"\n\"669980\";\"Rumunska Pozezena\";\"other\"\n\"669980\";\"Rumunska Požežena\";\"other\"\n\"669992\";\"Poienile-Mogoş\";\"main\"\n\"669992\";\"Poienile-Mogos\";\"ascii\"\n\"669992\";\"Sularesti\";\"other\"\n\"669992\";\"Sulăreşti\";\"other\"\n\"669993\";\"Poienile Izei\";\"main\"\n\"669993\";\"Poienile Glodului\";\"other\"\n\"669995\";\"Poienile de sub Munte\";\"main\"\n\"669995\";\"Poienele de sub Munte\";\"other\"\n\"669995\";\"Poieni de Sub Munte\";\"other\"\n\"669998\";\"Poienile\";\"main\"\n\"669998\";\"Lingurari\";\"other\"\n\"669998\";\"Lingurari Ursari\";\"other\"\n\"670006\";\"Poieneşti\";\"main\"\n\"670006\";\"Poienesti\";\"ascii\"\n\"670006\";\"Dealu Poenesti\";\"other\"\n\"670006\";\"Dealu Poeneşti\";\"other\"\n\"670006\";\"Poenesti\";\"other\"\n\"670006\";\"Poenesti Minastire\";\"other\"\n\"670006\";\"Poenesti-Ghica\";\"other\"\n\"670006\";\"Poenesti-Manastirei\";\"other\"\n\"670006\";\"Poenestii-Manastirei\";\"other\"\n\"670006\";\"Poeneşti\";\"other\"\n\"670006\";\"Poeneşti Mînăstire\";\"other\"\n\"670006\";\"Poeneşti-Ghica\";\"other\"\n\"670006\";\"Poeneşti-Mănăstirei\";\"other\"\n\"670006\";\"Poeneştii-Mânăstirei\";\"other\"\n\"670006\";\"Poiana\";\"other\"\n\"670006\";\"Poienesti-Ghica\";\"other\"\n\"670006\";\"Poieneşti-Ghica\";\"other\"\n\"670008\";\"Poienari\";\"main\"\n\"670008\";\"Poenari\";\"other\"\n\"670008\";\"Poenita\";\"other\"\n\"670008\";\"Poeniţa\";\"other\"\n\"670015\";\"Poiana Vadului\";\"main\"\n\"670015\";\"Neagra\";\"other\"\n\"670021\";\"Poiana Teiului\";\"main\"\n\"670021\";\"Poiana Teului\";\"other\"\n\"670021\";\"Poiana-Teiuluui\";\"other\"\n\"670028\";\"Poiana Stampei\";\"main\"\n\"670028\";\"Poiana Stampii\";\"other\"\n\"670033\";\"Poiana Sibiului\";\"main\"\n\"670033\";\"Poiana\";\"other\"\n\"670059\";\"Poiana Mărului\";\"main\"\n\"670059\";\"Poiana Marului\";\"ascii\"\n\"670059\";\"Marulin\";\"other\"\n\"670064\";\"Poiana Mare\";\"main\"\n\"670075\";\"Poiana Lacului\";\"main\"\n\"670092\";\"Poiana Cristei\";\"main\"\n\"670093\";\"Poiana Crăcăoani\";\"main\"\n\"670093\";\"Poiana Cracaoani\";\"ascii\"\n\"670093\";\"Piona\";\"other\"\n\"670093\";\"Poiana\";\"other\"\n\"670093\";\"Poiana Almasului\";\"other\"\n\"670093\";\"Poiana Almaşului\";\"other\"\n\"670098\";\"Poiana Cîmpina\";\"main\"\n\"670098\";\"Poiana Cimpina\";\"ascii\"\n\"670098\";\"Poiana\";\"other\"\n\"670098\";\"Poiana-Campina\";\"other\"\n\"670098\";\"Poiana-Câmpina\";\"other\"\n\"670098\";\"Poiana-de-Prahova\";\"other\"\n\"670103\";\"Poiana Blenchii\";\"main\"\n\"670155\";\"Poiana\";\"main\"\n\"670155\";\"Poiana de Sus\";\"other\"\n\"670162\";\"Poian\";\"main\"\n\"670162\";\"Pojan\";\"other\"\n\"670167\";\"Pogoanele\";\"main\"\n\"670178\";\"Pogana\";\"main\"\n\"670180\";\"Pogăceaua\";\"main\"\n\"670180\";\"Pogaceaua\";\"ascii\"\n\"670180\";\"Pogaceana\";\"other\"\n\"670180\";\"Pogăceana\";\"other\"\n\"670213\";\"Poeni\";\"main\"\n\"670213\";\"Poieni\";\"other\"\n\"670222\";\"Poeni\";\"main\"\n\"670222\";\"Ion C. Bratianu-Poeni\";\"other\"\n\"670232\";\"Poenari-Burchi\";\"main\"\n\"670232\";\"Burchi\";\"other\"\n\"670232\";\"Poenarii-Burchi\";\"other\"\n\"670244\";\"Poenari\";\"main\"\n\"670245\";\"Poenari\";\"main\"\n\"670245\";\"Poenarii\";\"other\"\n\"670257\";\"Podu Turcului\";\"main\"\n\"670257\";\"Podul-Turcului\";\"other\"\n\"670273\";\"Poduri\";\"main\"\n\"670274\";\"Poduri\";\"main\"\n\"670297\";\"Podu Iloaiei\";\"main\"\n\"670297\";\"Podu Iloaei\";\"other\"\n\"670297\";\"Podu Iloaie\";\"other\"\n\"670297\";\"Podul-Iloaei\";\"other\"\n\"670297\";\"Podul-Iloaiei\";\"other\"\n\"670297\";\"Podulloae\";\"other\"\n\"670319\";\"Podoleni\";\"main\"\n\"670330\";\"Podgoria\";\"main\"\n\"670330\";\"Jideni\";\"other\"\n\"670336\";\"Podenii Noi\";\"main\"\n\"670336\";\"Podenii-Noui\";\"other\"\n\"670347\";\"Podeni\";\"main\"\n\"670353\";\"Podari\";\"main\"\n\"670360\";\"Pocola\";\"main\"\n\"670372\";\"Poboru\";\"main\"\n\"670372\";\"Poborul\";\"other\"\n\"670376\";\"Poarta Albă\";\"main\"\n\"670376\";\"Poarta Alba\";\"ascii\"\n\"670376\";\"Alacap\";\"other\"\n\"670376\";\"Alacop\";\"other\"\n\"670376\";\"Poarta Albu\";\"other\"\n\"670376\";\"Poarta Albŭ\";\"other\"\n\"670390\";\"Plugari\";\"main\"\n\"670390\";\"Balus\";\"other\"\n\"670390\";\"Băluş\";\"other\"\n\"670390\";\"Hanu Balus\";\"other\"\n\"670390\";\"Hanu Băluş\";\"other\"\n\"670409\";\"Plosca\";\"main\"\n\"670425\";\"Plopu\";\"main\"\n\"670425\";\"Plopul\";\"other\"\n\"670432\";\"Plopşoru\";\"main\"\n\"670432\";\"Plopsoru\";\"ascii\"\n\"670432\";\"Plopsorul\";\"other\"\n\"670432\";\"Plopşorul\";\"other\"\n\"670443\";\"Plopiş\";\"main\"\n\"670443\";\"Plopis\";\"ascii\"\n\"670446\";\"Plopii Slăviţeştí\";\"main\"\n\"670446\";\"Plopii Slavitesti\";\"ascii\"\n\"670446\";\"Plopi-Slavitesti\";\"other\"\n\"670446\";\"Plopi-Slăviteşti\";\"other\"\n\"670467\";\"Plopeni\";\"main\"\n\"670467\";\"Colonia Ilie Pintilie\";\"other\"\n\"670467\";\"Margineanca\";\"other\"\n\"670467\";\"Mărgineanca\";\"other\"\n\"670467\";\"Plapeni\";\"other\"\n\"670467\";\"Stejarul\";\"other\"\n\"670467\";\"Плопени\";\"other\"\n\"670472\";\"Plopana\";\"main\"\n\"670472\";\"Plopana Targ\";\"other\"\n\"670472\";\"Plopana Târg\";\"other\"\n\"670472\";\"Plopana-Sat\";\"other\"\n\"670472\";\"Plopana-Tirg\";\"other\"\n\"670472\";\"Plopana-Tîrg\";\"other\"\n\"670472\";\"Targul Plopana\";\"other\"\n\"670472\";\"Târgul Plopana\";\"other\"\n\"670474\";\"Ploieşti\";\"main\"\n\"670474\";\"Ploiesti\";\"ascii\"\n\"670474\";\"Ploeshh\";\"other\"\n\"670474\";\"Ploesti\";\"other\"\n\"670474\";\"Ploeszti\";\"other\"\n\"670474\";\"Ploeşti\";\"other\"\n\"670474\";\"plwyst\";\"other\"\n\"670474\";\"plwysty\";\"other\"\n\"670474\";\"Плоещ\";\"other\"\n\"670474\";\"פלוישט\";\"other\"\n\"670474\";\"פלוישטי\";\"other\"\n\"670494\";\"Pleşoiu\";\"main\"\n\"670494\";\"Plesoiu\";\"ascii\"\n\"670494\";\"Plesoiul\";\"other\"\n\"670494\";\"Pleşoiul\";\"other\"\n\"670515\";\"Pleşcuţa\";\"main\"\n\"670515\";\"Plescuta\";\"ascii\"\n\"670515\";\"Peleskefalva\";\"other\"\n\"670515\";\"Pleskucza\";\"other\"\n\"670528\";\"Pleniţa\";\"main\"\n\"670528\";\"Plenita\";\"ascii\"\n\"670552\";\"Plătăreşti\";\"main\"\n\"670552\";\"Plataresti\";\"ascii\"\n\"670609\";\"Piteşti\";\"main\"\n\"670609\";\"Pitesti\";\"ascii\"\n\"670609\";\"Pitesci\";\"other\"\n\"670609\";\"Pitescï\";\"other\"\n\"670609\";\"Piteshh\";\"other\"\n\"670609\";\"Piteshti\";\"other\"\n\"670609\";\"pytst\";\"other\"\n\"670609\";\"Питещ\";\"other\"\n\"670609\";\"פיטשט\";\"other\"\n\"670623\";\"Piscu Vechi\";\"main\"\n\"670623\";\"Piscu de Cimpie\";\"other\"\n\"670623\";\"Piscu de Cîmpie\";\"other\"\n\"670623\";\"Piscu-Vechiu\";\"other\"\n\"670623\";\"Piscul-Vechiu\";\"other\"\n\"670649\";\"Piscu\";\"main\"\n\"670649\";\"Piscul\";\"other\"\n\"670652\";\"Pişcolt\";\"main\"\n\"670652\";\"Piscolt\";\"ascii\"\n\"670659\";\"Pişchia\";\"main\"\n\"670659\";\"Pischia\";\"ascii\"\n\"670659\";\"Bruckenau\";\"other\"\n\"670659\";\"Hidasliget\";\"other\"\n\"670686\";\"Pîrscov\";\"main\"\n\"670686\";\"Pirscov\";\"ascii\"\n\"670686\";\"Parscov\";\"other\"\n\"670686\";\"Parscovu\";\"other\"\n\"670686\";\"Parscovul\";\"other\"\n\"670686\";\"Pârscov\";\"other\"\n\"670686\";\"Pârscovu\";\"other\"\n\"670686\";\"Pârscovul\";\"other\"\n\"670706\";\"Pîrjol\";\"main\"\n\"670706\";\"Pirjol\";\"ascii\"\n\"670706\";\"Parjol\";\"other\"\n\"670706\";\"Pârjol\";\"other\"\n\"670768\";\"Pîrgăreşti\";\"main\"\n\"670768\";\"Pirgaresti\";\"ascii\"\n\"670768\";\"Pargarestii\";\"other\"\n\"670775\";\"Pir\";\"main\"\n\"670777\";\"Pipirig\";\"main\"\n\"670777\";\"Pioirig\";\"other\"\n\"670794\";\"Pâncota\";\"main\"\n\"670794\";\"Pancota\";\"ascii\"\n\"670801\";\"Pilu\";\"main\"\n\"670801\";\"Pilul\";\"other\"\n\"670815\";\"Pietroşiţa\";\"main\"\n\"670815\";\"Pietrosita\";\"ascii\"\n\"670819\";\"Pietroşani\";\"main\"\n\"670819\";\"Pietrosani\";\"ascii\"\n\"670819\";\"Pietrosanii\";\"other\"\n\"670819\";\"Pietroşanii\";\"other\"\n\"670821\";\"Pietroşani\";\"main\"\n\"670821\";\"Pietrosani\";\"ascii\"\n\"670821\";\"Petrosani\";\"other\"\n\"670826\";\"Pietroasele\";\"main\"\n\"670826\";\"Pietroasa-de-Jos\";\"other\"\n\"670826\";\"Pietroasele-de-Jos\";\"other\"\n\"670832\";\"Pietroasa\";\"main\"\n\"670832\";\"Petroasa\";\"other\"\n\"670832\";\"Petrosz\";\"other\"\n\"670832\";\"Petrosza\";\"other\"\n\"670832\";\"Petrósz\";\"other\"\n\"670832\";\"Petrósza\";\"other\"\n\"670832\";\"Vasaskofalva\";\"other\"\n\"670832\";\"Vasaskőfalva\";\"other\"\n\"670834\";\"Pietroasa\";\"main\"\n\"670834\";\"Petroasa\";\"other\"\n\"670862\";\"Pietrari\";\"main\"\n\"670862\";\"Pietrari de Jos\";\"other\"\n\"670862\";\"Pietrarii de Jos\";\"other\"\n\"670869\";\"Pieleştí\";\"main\"\n\"670869\";\"Pielesti\";\"ascii\"\n\"670869\";\"Pielestii\";\"other\"\n\"670884\";\"Piatra Şoimului\";\"main\"\n\"670884\";\"Piatra Soimului\";\"ascii\"\n\"670884\";\"Calu\";\"other\"\n\"670884\";\"Calul\";\"other\"\n\"670888\";\"Piatra Olt\";\"main\"\n\"670889\";\"Piatra Neamţ\";\"main\"\n\"670889\";\"Piatra Neamt\";\"ascii\"\n\"670889\";\"Piatra-Neamt\";\"other\"\n\"670923\";\"Piatra\";\"main\"\n\"670923\";\"Petra\";\"other\"\n\"670923\";\"Vacaresti de Rasoaca\";\"other\"\n\"670923\";\"Văcăreşti de Răsoaca\";\"other\"\n\"670925\";\"Pianu de Sus\";\"main\"\n\"670925\";\"Pianul-de-Sus\";\"other\"\n\"670934\";\"Petrova\";\"main\"\n\"670938\";\"Petroşani\";\"main\"\n\"670938\";\"Petrosani\";\"ascii\"\n\"670938\";\"Petroseni\";\"other\"\n\"670938\";\"Petroshani\";\"other\"\n\"670938\";\"Petrozseny\";\"other\"\n\"670938\";\"Petrozsény\";\"other\"\n\"670938\";\"Petroşeni\";\"other\"\n\"670938\";\"Pietrosani\";\"other\"\n\"670938\";\"Pietroşani\";\"other\"\n\"670938\";\"Петрошани\";\"other\"\n\"670959\";\"Petriş\";\"main\"\n\"670959\";\"Petris\";\"ascii\"\n\"670959\";\"Marospetres\";\"other\"\n\"670969\";\"Petrila\";\"main\"\n\"670981\";\"Petricani\";\"main\"\n\"670985\";\"Petreştii de Jos\";\"main\"\n\"670985\";\"Petrestii de Jos\";\"ascii\"\n\"670985\";\"Petridu de Jos\";\"other\"\n\"670993\";\"Petreşti\";\"main\"\n\"670993\";\"Petresti\";\"ascii\"\n\"671003\";\"Petreşti\";\"main\"\n\"671003\";\"Petresti\";\"ascii\"\n\"671015\";\"Petrăchioaia\";\"main\"\n\"671015\";\"Petrachioaia\";\"ascii\"\n\"671015\";\"Creata-Petrachioaia\";\"other\"\n\"671015\";\"Creata-Petrachioata\";\"other\"\n\"671015\";\"Creaţa-Petrăchioaia\";\"other\"\n\"671015\";\"Creaţa-Petrăchioata\";\"other\"\n\"671015\";\"Petrichioaia\";\"other\"\n\"671034\";\"Petelea\";\"main\"\n\"671034\";\"Petele\";\"other\"\n\"671049\";\"Peştişu Mic\";\"main\"\n\"671049\";\"Pestisu Mic\";\"ascii\"\n\"671049\";\"Pestisul-Mic\";\"other\"\n\"671049\";\"Pestişul-Mic\";\"other\"\n\"671053\";\"Peştişani\";\"main\"\n\"671053\";\"Pestisani\";\"ascii\"\n\"671067\";\"Peştera\";\"main\"\n\"671067\";\"Pestera\";\"ascii\"\n\"671080\";\"Pesceana\";\"main\"\n\"671080\";\"Pesceana-Cueni\";\"other\"\n\"671110\";\"Perişoru\";\"main\"\n\"671110\";\"Perisoru\";\"ascii\"\n\"671110\";\"Duca\";\"other\"\n\"671110\";\"Ion Gheorghe Duca\";\"other\"\n\"671116\";\"Perişani\";\"main\"\n\"671116\";\"Perisani\";\"ascii\"\n\"671116\";\"Perisanii\";\"other\"\n\"671116\";\"Perişanii\";\"other\"\n\"671118\";\"Periş\";\"main\"\n\"671118\";\"Peris\";\"ascii\"\n\"671128\";\"Perieţi\";\"main\"\n\"671128\";\"Perieti\";\"ascii\"\n\"671129\";\"Perieţi\";\"main\"\n\"671129\";\"Perieti\";\"ascii\"\n\"671129\";\"Perietii de Mijloc\";\"other\"\n\"671129\";\"Perietii de Myloc\";\"other\"\n\"671129\";\"Perieţii de Mijloc\";\"other\"\n\"671132\";\"Perieni\";\"main\"\n\"671136\";\"Periceiu\";\"main\"\n\"671136\";\"Periceiul\";\"other\"\n\"671138\";\"Periam\";\"main\"\n\"671138\";\"Pergemes\";\"other\"\n\"671138\";\"Perjamos\";\"other\"\n\"671138\";\"Perjamosch\";\"other\"\n\"671138\";\"Perjámos\";\"other\"\n\"671145\";\"Peretu\";\"main\"\n\"671145\";\"Peretul\";\"other\"\n\"671151\";\"Peregu Mare\";\"main\"\n\"671151\";\"Deutschpereg\";\"other\"\n\"671151\";\"Gross-Perek\";\"other\"\n\"671151\";\"Nagy-Pereg\";\"other\"\n\"671151\";\"Nemetpereg\";\"other\"\n\"671151\";\"Németpereg\";\"other\"\n\"671151\";\"Pereg\";\"other\"\n\"671151\";\"Peregu\";\"other\"\n\"671151\";\"Peregul-Mare\";\"other\"\n\"671182\";\"Peciu Nou\";\"main\"\n\"671182\";\"Neu-Petsch\";\"other\"\n\"671182\";\"Peciul Nou\";\"other\"\n\"671182\";\"Ujbecs\";\"other\"\n\"671182\";\"Ujpecs\";\"other\"\n\"671182\";\"Ulmbach\";\"other\"\n\"671182\";\"Újbécs\";\"other\"\n\"671182\";\"Újpécs\";\"other\"\n\"671184\";\"Pecineaga\";\"main\"\n\"671184\";\"Gherengii\";\"other\"\n\"671184\";\"Ghrengic\";\"other\"\n\"671184\";\"Ion Gheorghe Duca\";\"other\"\n\"671184\";\"Peceneaga\";\"other\"\n\"671187\";\"Pechea\";\"main\"\n\"671191\";\"Peceneaga\";\"main\"\n\"671191\";\"Pecineaga\";\"other\"\n\"671196\";\"Păuşeşti-Ursăreşti\";\"main\"\n\"671196\";\"Pausesti-Ursaresti\";\"ascii\"\n\"671200\";\"Păuşeşti-Măglaşi\";\"main\"\n\"671200\";\"Pausesti-Maglasi\";\"ascii\"\n\"671200\";\"Pausesti-Maglas\";\"other\"\n\"671200\";\"Pausestii-Maglasti\";\"other\"\n\"671200\";\"Păuşeşti-Măglaş\";\"other\"\n\"671200\";\"Păuşeştii-Maglaşti\";\"other\"\n\"671209\";\"Păuneşti\";\"main\"\n\"671209\";\"Paunesti\";\"ascii\"\n\"671209\";\"Paunestii\";\"other\"\n\"671209\";\"Păuneştii\";\"other\"\n\"671218\";\"Păuliş\";\"main\"\n\"671218\";\"Paulis\";\"ascii\"\n\"671218\";\"Alt-Paulisch\";\"other\"\n\"671218\";\"Neu-Paulisch\";\"other\"\n\"671218\";\"Opalos\";\"other\"\n\"671218\";\"Opaulis\";\"other\"\n\"671218\";\"Paulisu Nou\";\"other\"\n\"671218\";\"Paulisul Nou\";\"other\"\n\"671218\";\"Păulişu Nou\";\"other\"\n\"671218\";\"Păulişul Nou\";\"other\"\n\"671218\";\"Ópaulis\";\"other\"\n\"671218\";\"Ópálos\";\"other\"\n\"671224\";\"Păuleşti\";\"main\"\n\"671224\";\"Paulesti\";\"ascii\"\n\"671228\";\"Păuleşti\";\"main\"\n\"671228\";\"Paulesti\";\"ascii\"\n\"671229\";\"Păuleni-Ciuc\";\"main\"\n\"671229\";\"Pauleni-Ciuc\";\"ascii\"\n\"671229\";\"Palfalva\";\"other\"\n\"671229\";\"Pauleni\";\"other\"\n\"671229\";\"Pàlfalva\";\"other\"\n\"671229\";\"Păuleni\";\"other\"\n\"671243\";\"Păuca\";\"main\"\n\"671243\";\"Pauca\";\"ascii\"\n\"671248\";\"Pătulele\";\"main\"\n\"671248\";\"Patulele\";\"ascii\"\n\"671248\";\"Patule\";\"other\"\n\"671248\";\"Pătule\";\"other\"\n\"671263\";\"Pătrăuţi\";\"main\"\n\"671263\";\"Patrauti\";\"ascii\"\n\"671263\";\"Patrautii-Sucevei\";\"other\"\n\"671263\";\"Patrautii-Sucevii\";\"other\"\n\"671263\";\"Patrautii-pe-Suceava\";\"other\"\n\"671263\";\"Pătrăuţii-Sucevei\";\"other\"\n\"671263\";\"Pătrăuţii-Sucevii\";\"other\"\n\"671263\";\"Pătrăuţii-pe-Suceava\";\"other\"\n\"671281\";\"Păstrăveni\";\"main\"\n\"671281\";\"Pastraveni\";\"ascii\"\n\"671300\";\"Păsăreni\";\"main\"\n\"671300\";\"Pasareni\";\"ascii\"\n\"671300\";\"Baczkamadaras\";\"other\"\n\"671311\";\"Parva\";\"main\"\n\"671319\";\"Părteştii de Jos\";\"main\"\n\"671319\";\"Partestii de Jos\";\"ascii\"\n\"671337\";\"Parincea\";\"main\"\n\"671337\";\"Parincea-Tirg\";\"other\"\n\"671337\";\"Parincea-Tîrg\";\"other\"\n\"671352\";\"Parava\";\"main\"\n\"671374\";\"Panticeu\";\"main\"\n\"671374\";\"Panticeul\";\"other\"\n\"671374\";\"Pinticeu\";\"other\"\n\"671374\";\"Pînticeu\";\"other\"\n\"671374\";\"Pănticeul\";\"other\"\n\"671376\";\"Pantelimon de Jos\";\"main\"\n\"671376\";\"Pantelimonul de Jos\";\"other\"\n\"671382\";\"Pantelimon\";\"main\"\n\"671390\";\"Pănet\";\"main\"\n\"671390\";\"Panet\";\"ascii\"\n\"671390\";\"Mezopanit\";\"other\"\n\"671390\";\"Mezöpanit\";\"other\"\n\"671398\";\"Panciu\";\"main\"\n\"671402\";\"Pănceşti\";\"main\"\n\"671402\";\"Pancesti\";\"ascii\"\n\"671413\";\"Panaci\";\"main\"\n\"671418\";\"Păltinoasa\";\"main\"\n\"671418\";\"Paltinoasa\";\"ascii\"\n\"671427\";\"Păltiniş\";\"main\"\n\"671427\";\"Paltinis\";\"ascii\"\n\"671435\";\"Păltiniş\";\"main\"\n\"671435\";\"Paltinis\";\"ascii\"\n\"671435\";\"Valea Boului\";\"other\"\n\"671443\";\"Paltin\";\"main\"\n\"671443\";\"Paltinu\";\"other\"\n\"671443\";\"Paltinul\";\"other\"\n\"671460\";\"Pălatca\";\"main\"\n\"671460\";\"Palatca\";\"ascii\"\n\"671471\";\"Palanca\";\"main\"\n\"671550\";\"Padina Mică\";\"main\"\n\"671550\";\"Padina Mica\";\"ascii\"\n\"671556\";\"Padina\";\"main\"\n\"671559\";\"Padeş\";\"main\"\n\"671559\";\"Pades\";\"ascii\"\n\"671559\";\"Padesu\";\"other\"\n\"671559\";\"Padesul\";\"other\"\n\"671559\";\"Padeşu\";\"other\"\n\"671559\";\"Padeşul\";\"other\"\n\"671568\";\"Păcureţi\";\"main\"\n\"671568\";\"Pacureti\";\"ascii\"\n\"671580\";\"Ozun\";\"main\"\n\"671580\";\"Uzon\";\"other\"\n\"671584\";\"Ovidiu\";\"main\"\n\"671584\";\"Canara\";\"other\"\n\"671584\";\"Kanara\";\"other\"\n\"671584\";\"Oridiu\";\"other\"\n\"671584\";\"Овидиу\";\"other\"\n\"671586\";\"Oveselu\";\"main\"\n\"671586\";\"Maciuca\";\"other\"\n\"671586\";\"Măciuca\";\"other\"\n\"671586\";\"Ovesel\";\"other\"\n\"671590\";\"Otopeni\";\"main\"\n\"671590\";\"Otopeni-de-Sus\";\"other\"\n\"671590\";\"Otopenii de Sus\";\"other\"\n\"671590\";\"Отопени\";\"other\"\n\"671600\";\"Oteşani\";\"main\"\n\"671600\";\"Otesani\";\"ascii\"\n\"671603\";\"Oţelu Roşu\";\"main\"\n\"671603\";\"Otelu Rosu\";\"ascii\"\n\"671603\";\"Ferdinand\";\"other\"\n\"671603\";\"Gara Ferdinand\";\"other\"\n\"671603\";\"Otelul Rosu\";\"other\"\n\"671603\";\"Oţelul Roşu\";\"other\"\n\"671607\";\"Oţeleni\";\"main\"\n\"671607\";\"Oteleni\";\"ascii\"\n\"671626\";\"Ostroveni\";\"main\"\n\"671634\";\"Ostrov\";\"main\"\n\"671636\";\"Ostrov\";\"main\"\n\"671641\";\"Ostra\";\"main\"\n\"671644\";\"Oşorheiu\";\"main\"\n\"671644\";\"Osorheiu\";\"ascii\"\n\"671657\";\"Osica de Sus\";\"main\"\n\"671657\";\"Osica\";\"other\"\n\"671661\";\"Oşeşti\";\"main\"\n\"671661\";\"Osesti\";\"ascii\"\n\"671661\";\"Fundu Negrei\";\"other\"\n\"671661\";\"Negrele\";\"other\"\n\"671661\";\"Ruginoa\";\"other\"\n\"671661\";\"Ruginoasa\";\"other\"\n\"671676\";\"Orţişoara\";\"main\"\n\"671676\";\"Ortisoara\";\"ascii\"\n\"671676\";\"Cocota\";\"other\"\n\"671676\";\"Kakota\";\"other\"\n\"671676\";\"Orczidorf\";\"other\"\n\"671676\";\"Orczifalva\";\"other\"\n\"671676\";\"Orczydorf\";\"other\"\n\"671676\";\"Orczyfalva\";\"other\"\n\"671676\";\"Orzidorf\";\"other\"\n\"671681\";\"Orşova\";\"main\"\n\"671681\";\"Orsova\";\"ascii\"\n\"671681\";\"Orsava\";\"other\"\n\"671681\";\"Oršava\";\"other\"\n\"671691\";\"Orodelu\";\"main\"\n\"671691\";\"Orodel\";\"other\"\n\"671699\";\"Ormeniş\";\"main\"\n\"671699\";\"Ormenis\";\"ascii\"\n\"671705\";\"Orleşti\";\"main\"\n\"671705\";\"Orlesti\";\"ascii\"\n\"671705\";\"Orlestii de Sus\";\"other\"\n\"671705\";\"Orleştii de Sus\";\"other\"\n\"671705\";\"Valea Bisericii\";\"other\"\n\"671709\";\"Orlea\";\"main\"\n\"671711\";\"Orlat\";\"main\"\n\"671737\";\"Orbeni\";\"main\"\n\"671737\";\"Orbeni-de-Jos\";\"other\"\n\"671737\";\"Orbenii de Jos\";\"other\"\n\"671738\";\"Orbeasca de Sus\";\"main\"\n\"671746\";\"Oraviţa\";\"main\"\n\"671746\";\"Oravita\";\"ascii\"\n\"671746\";\"Oravica\";\"other\"\n\"671746\";\"Oravicsa\";\"other\"\n\"671746\";\"Oravicza\";\"other\"\n\"671746\";\"Oravitza\";\"other\"\n\"671751\";\"Oraşu Nou\";\"main\"\n\"671751\";\"Orasu Nou\";\"ascii\"\n\"671751\";\"Orasul Nou\";\"other\"\n\"671751\";\"Oraşul Nou\";\"other\"\n\"671753\";\"Orăştioara de Sus\";\"main\"\n\"671753\";\"Orastioara de Sus\";\"ascii\"\n\"671753\";\"Orastiora de-Sus\";\"other\"\n\"671753\";\"Orăstiora de-Sus\";\"other\"\n\"671757\";\"Orăştie\";\"main\"\n\"671757\";\"Orastie\";\"ascii\"\n\"671757\";\"Broos\";\"other\"\n\"671757\";\"Orehshtie\";\"other\"\n\"671757\";\"Орэштие\";\"other\"\n\"671768\";\"Oradea\";\"main\"\n\"671768\";\"Grosswardein\";\"other\"\n\"671768\";\"Großwardein\";\"other\"\n\"671768\";\"Nagy-Varad\";\"other\"\n\"671768\";\"Nagy-Várad\";\"other\"\n\"671768\";\"Nagyvarad\";\"other\"\n\"671768\";\"Nagyvárad\";\"other\"\n\"671768\";\"Oradea-Mare\";\"other\"\n\"671768\";\"Oradja\";\"other\"\n\"671768\";\"Varadinum\";\"other\"\n\"671768\";\"Velky Varadin\";\"other\"\n\"671768\";\"Velký Varadín\";\"other\"\n\"671768\";\"ao la di ya\";\"other\"\n\"671768\";\"oladea\";\"other\"\n\"671768\";\"oradea\";\"other\"\n\"671768\";\"orateya\";\"other\"\n\"671768\";\"varadinum\";\"other\"\n\"671768\";\"Орадя\";\"other\"\n\"671768\";\"אורדאה\";\"other\"\n\"671768\";\"ஒராடெயா\";\"other\"\n\"671768\";\"オラデア\";\"other\"\n\"671768\";\"奥拉迪亚\";\"other\"\n\"671768\";\"오라데아\";\"other\"\n\"671771\";\"Optaşi\";\"main\"\n\"671771\";\"Optasi\";\"ascii\"\n\"671776\";\"Oprişor\";\"main\"\n\"671776\";\"Oprisor\";\"ascii\"\n\"671776\";\"Oprisoru\";\"other\"\n\"671776\";\"Oprisorul\";\"other\"\n\"671776\";\"Oprişoru\";\"other\"\n\"671776\";\"Oprişorul\";\"other\"\n\"671790\";\"Oporelu\";\"main\"\n\"671790\";\"Oporelul\";\"other\"\n\"671800\";\"Oniceni\";\"main\"\n\"671800\";\"Naimon\";\"other\"\n\"671812\";\"Onceşti\";\"main\"\n\"671812\";\"Oncesti\";\"ascii\"\n\"671812\";\"Oncesti Noui\";\"other\"\n\"671812\";\"Oncestii Noi\";\"other\"\n\"671812\";\"Onceşti Noui\";\"other\"\n\"671812\";\"Onceştii Noi\";\"other\"\n\"671824\";\"Oltina\";\"main\"\n\"671824\";\"Oluna\";\"other\"\n\"671832\";\"Olteniţa\";\"main\"\n\"671832\";\"Oltenita\";\"ascii\"\n\"671832\";\"Oltenice\";\"other\"\n\"671832\";\"Oltenitao\";\"other\"\n\"671832\";\"Олтенице\";\"other\"\n\"671846\";\"Olteni\";\"main\"\n\"671849\";\"Olteneşti\";\"main\"\n\"671849\";\"Oltenesti\";\"ascii\"\n\"671869\";\"Olcea\";\"main\"\n\"671873\";\"Olari\";\"main\"\n\"671884\";\"Olanu\";\"main\"\n\"671884\";\"Peretu\";\"other\"\n\"671884\";\"Peretul\";\"other\"\n\"671890\";\"Ojdula\";\"main\"\n\"671890\";\"Oszdola\";\"other\"\n\"671890\";\"Ozsdola\";\"other\"\n\"671896\";\"Oituz\";\"main\"\n\"671896\";\"Grozesti\";\"other\"\n\"671896\";\"Grozeşti\";\"other\"\n\"671902\";\"Oinacu\";\"main\"\n\"671902\";\"Oinac\";\"other\"\n\"671902\";\"Oinacul\";\"other\"\n\"671933\";\"Ogrezeni\";\"main\"\n\"671948\";\"Ogra\";\"main\"\n\"671964\";\"Odorheiu Secuiesc\";\"main\"\n\"671964\";\"Oderhellen\";\"other\"\n\"671964\";\"Odorheiu\";\"other\"\n\"671964\";\"Odorheiul Secuiesc\";\"other\"\n\"671964\";\"Szekelyudvarhely\";\"other\"\n\"671964\";\"Székelyudvarhely\";\"other\"\n\"671966\";\"Odoreu\";\"main\"\n\"671966\";\"Odoreul\";\"other\"\n\"671974\";\"Odobeşti\";\"main\"\n\"671974\";\"Odobesti\";\"ascii\"\n\"671974\";\"Odobesci\";\"other\"\n\"671974\";\"Odobeşci\";\"other\"\n\"671975\";\"Odobeşti\";\"main\"\n\"671975\";\"Odobesti\";\"ascii\"\n\"671983\";\"Odăile\";\"main\"\n\"671983\";\"Odaile\";\"ascii\"\n\"672016\";\"Ocniţa\";\"main\"\n\"672016\";\"Ocnita\";\"ascii\"\n\"672019\";\"Ocnele Mari\";\"main\"\n\"672021\";\"Ocna Şugatag\";\"main\"\n\"672021\";\"Ocna Sugatag\";\"ascii\"\n\"672023\";\"Ocna Sibiului\";\"main\"\n\"672023\";\"Salzburg\";\"other\"\n\"672024\";\"Ocna Mureş\";\"main\"\n\"672024\";\"Ocna Mures\";\"ascii\"\n\"672024\";\"Ocna-Muresului\";\"other\"\n\"672024\";\"Ocna-Mureşului\";\"other\"\n\"672031\";\"Ocland\";\"main\"\n\"672031\";\"Okland\";\"other\"\n\"672031\";\"Oklànd\";\"other\"\n\"672050\";\"Obreja\";\"main\"\n\"672060\";\"Oboga\";\"main\"\n\"672060\";\"Oboga de Mijloc\";\"other\"\n\"672073\";\"Obârşia-Câmp\";\"main\"\n\"672073\";\"Obarsia-Camp\";\"ascii\"\n\"672073\";\"Obarsia-Campul\";\"other\"\n\"672073\";\"Obirsia-Cimp\";\"other\"\n\"672073\";\"Obârşia-Câmpul\";\"other\"\n\"672073\";\"Obîrşia-Cîmp\";\"other\"\n\"672105\";\"Oarţa de Jos\";\"main\"\n\"672105\";\"Oarta de Jos\";\"ascii\"\n\"672108\";\"Oarja\";\"main\"\n\"672118\";\"Oancea\";\"main\"\n\"672123\";\"Nuşfalău\";\"main\"\n\"672123\";\"Nusfalau\";\"ascii\"\n\"672125\";\"Nuşeni\";\"main\"\n\"672125\";\"Nuseni\";\"ascii\"\n\"672128\";\"Nufăru\";\"main\"\n\"672128\";\"Nufaru\";\"ascii\"\n\"672128\";\"Ada Marinescu\";\"other\"\n\"672128\";\"Domnita Maria\";\"other\"\n\"672128\";\"Domniţa Maria\";\"other\"\n\"672134\";\"Nucşoara\";\"main\"\n\"672134\";\"Nucsoara\";\"ascii\"\n\"672135\";\"Nuci\";\"main\"\n\"672142\";\"Nucet\";\"main\"\n\"672146\";\"Nucet\";\"main\"\n\"672146\";\"Nucetu\";\"other\"\n\"672151\";\"Novaci-Străini\";\"main\"\n\"672151\";\"Novaci-Straini\";\"ascii\"\n\"672151\";\"Novaci\";\"other\"\n\"672151\";\"Novaci Streini\";\"other\"\n\"672151\";\"Novacii-Straini\";\"other\"\n\"672151\";\"Novacii-Străini\";\"other\"\n\"672167\";\"Noşlac\";\"main\"\n\"672167\";\"Noslac\";\"ascii\"\n\"672171\";\"Nojorid\";\"main\"\n\"672176\";\"Nocrich\";\"main\"\n\"672176\";\"Gara Petre Luciu\";\"other\"\n\"672176\";\"Petre Luciu\";\"other\"\n\"672185\";\"Niţchidorf\";\"main\"\n\"672185\";\"Nitchidorf\";\"ascii\"\n\"672185\";\"Niczkidorf\";\"other\"\n\"672185\";\"Niczkydorf\";\"other\"\n\"672185\";\"Niczkyfalva\";\"other\"\n\"672185\";\"Nitzkidorf\";\"other\"\n\"672185\";\"Nitzkydorf\";\"other\"\n\"672192\";\"Nistoreşti\";\"main\"\n\"672192\";\"Nistoresti\";\"ascii\"\n\"672216\";\"Nimigea de Sus\";\"main\"\n\"672229\";\"Niculiţel\";\"main\"\n\"672229\";\"Niculitel\";\"ascii\"\n\"672229\";\"Monaster\";\"other\"\n\"672229\";\"Nicolitel\";\"other\"\n\"672229\";\"Nicolitza\";\"other\"\n\"672229\";\"Nicoliţel\";\"other\"\n\"672240\";\"Nicşeni\";\"main\"\n\"672240\";\"Nicseni\";\"ascii\"\n\"672246\";\"Nicoreşti\";\"main\"\n\"672246\";\"Nicoresti\";\"ascii\"\n\"672246\";\"Targul Nicoresti\";\"other\"\n\"672246\";\"Targul Nicoreşti\";\"other\"\n\"672263\";\"Nicolae Titulescu\";\"main\"\n\"672263\";\"Atirnati\";\"other\"\n\"672263\";\"Atîrnaţi\";\"other\"\n\"672263\";\"Titulesti\";\"other\"\n\"672263\";\"Tituleşti\";\"other\"\n\"672275\";\"Nicolae Bălcescu\";\"main\"\n\"672275\";\"Nicolae Balcescu\";\"ascii\"\n\"672275\";\"Balcescu Nicolae\";\"other\"\n\"672275\";\"Bălcescu Nicolae\";\"other\"\n\"672275\";\"Ferdinand\";\"other\"\n\"672279\";\"Nicolae Bălcescu\";\"main\"\n\"672279\";\"Nicolae Balcescu\";\"ascii\"\n\"672279\";\"Balcescu Nicolae\";\"other\"\n\"672279\";\"Bălcescu Nicolae\";\"other\"\n\"672279\";\"Presna-Gara\";\"other\"\n\"672279\";\"Presna-Gară\";\"other\"\n\"672280\";\"Nicolae Bălcescu\";\"main\"\n\"672280\";\"Nicolae Balcescu\";\"ascii\"\n\"672280\";\"Balcescu Nicolae\";\"other\"\n\"672280\";\"Bălcescu Nicolae\";\"other\"\n\"672280\";\"Carol I\";\"other\"\n\"672301\";\"Nereju\";\"main\"\n\"672301\";\"Nereju-Mare\";\"other\"\n\"672331\";\"Nehoiu\";\"main\"\n\"672331\";\"Nehoiul\";\"other\"\n\"672343\";\"Negru Vodă\";\"main\"\n\"672343\";\"Negru Voda\";\"ascii\"\n\"672343\";\"Caraomer\";\"other\"\n\"672364\";\"Negri\";\"main\"\n\"672365\";\"Negreşti-Oaş\";\"main\"\n\"672365\";\"Negresti-Oas\";\"ascii\"\n\"672365\";\"Negresti\";\"other\"\n\"672365\";\"Negreşti\";\"other\"\n\"672375\";\"Negreşti\";\"main\"\n\"672375\";\"Negresti\";\"ascii\"\n\"672375\";\"Negresti Targ\";\"other\"\n\"672375\";\"Negresti Tirg\";\"other\"\n\"672375\";\"Negreşti Târg\";\"other\"\n\"672375\";\"Negreşti Tîrg\";\"other\"\n\"672406\";\"Negraşi\";\"main\"\n\"672406\";\"Negrasi\";\"ascii\"\n\"672414\";\"Negomiru\";\"main\"\n\"672449\";\"Necşeşti\";\"main\"\n\"672449\";\"Necsesti\";\"ascii\"\n\"672456\";\"Neaua\";\"main\"\n\"672456\";\"Havad\";\"other\"\n\"672486\";\"Năvodari\";\"main\"\n\"672486\";\"Navodari\";\"ascii\"\n\"672486\";\"Caracoim\";\"other\"\n\"672486\";\"Caracoium\";\"other\"\n\"672486\";\"Karakoium\";\"other\"\n\"672486\";\"Nehvodari\";\"other\"\n\"672486\";\"Нэводари\";\"other\"\n\"672492\";\"Năsturelu\";\"main\"\n\"672492\";\"Nasturelu\";\"ascii\"\n\"672492\";\"Nasturelul\";\"other\"\n\"672492\";\"Năsturelul\";\"other\"\n\"672497\";\"Năsăud\";\"main\"\n\"672497\";\"Nasaud\";\"ascii\"\n\"672497\";\"Naszod\";\"other\"\n\"672502\";\"Năruja\";\"main\"\n\"672502\";\"Naruja\";\"ascii\"\n\"672507\";\"Năpradea\";\"main\"\n\"672507\";\"Napradea\";\"ascii\"\n\"672512\";\"Nanov\";\"main\"\n\"672518\";\"Năneşti\";\"main\"\n\"672518\";\"Nanesti\";\"ascii\"\n\"672523\";\"Nana\";\"main\"\n\"672525\";\"Nămoloasa-Sat\";\"main\"\n\"672525\";\"Namoloasa-Sat\";\"ascii\"\n\"672532\";\"Nalbant\";\"main\"\n\"672532\";\"Nalband\";\"other\"\n\"672540\";\"Năeni\";\"main\"\n\"672540\";\"Naeni\";\"ascii\"\n\"672544\";\"Nădrag\";\"main\"\n\"672544\";\"Nadrag\";\"ascii\"\n\"672546\";\"Nădlac\";\"main\"\n\"672546\";\"Nadlac\";\"ascii\"\n\"672546\";\"Nadlak\";\"other\"\n\"672546\";\"Nagylak\";\"other\"\n\"672546\";\"Weliky-Lak\";\"other\"\n\"672546\";\"Weliký-Lak\";\"other\"\n\"672551\";\"Nadeş\";\"main\"\n\"672551\";\"Nades\";\"ascii\"\n\"672551\";\"Nadesu-Secuesc\";\"other\"\n\"672551\";\"Nadeşu-Secuesc\";\"other\"\n\"672581\";\"Muşeteşti\";\"main\"\n\"672581\";\"Musetesti\";\"ascii\"\n\"672582\";\"Muşeteşti\";\"main\"\n\"672582\";\"Musetesti\";\"ascii\"\n\"672583\";\"Muşeniţa\";\"main\"\n\"672583\";\"Musenita\";\"ascii\"\n\"672602\";\"Murighiol\";\"main\"\n\"672602\";\"Morughiol\";\"other\"\n\"672602\";\"Muri Geul\";\"other\"\n\"672602\";\"Murughiol\";\"other\"\n\"672609\";\"Murgeşti\";\"main\"\n\"672609\";\"Murgesti\";\"ascii\"\n\"672609\";\"Murgosti\";\"other\"\n\"672609\";\"Murgoşti\";\"other\"\n\"672615\";\"Murgeni\";\"main\"\n\"672615\";\"Murgenii Targ\";\"other\"\n\"672615\";\"Murgenii Târg\";\"other\"\n\"672620\";\"Murfatlar\";\"main\"\n\"672620\";\"Basarabi\";\"other\"\n\"672651\";\"Muntenii de Jos\";\"main\"\n\"672654\";\"Munteni Buzău\";\"main\"\n\"672654\";\"Munteni Buzau\";\"ascii\"\n\"672654\";\"Muntenii-Buzau\";\"other\"\n\"672654\";\"Muntenii-Buzău\";\"other\"\n\"672660\";\"Munteni\";\"main\"\n\"672660\";\"Muntenii\";\"other\"\n\"672669\";\"Muntele Mic\";\"main\"\n\"672700\";\"Mugeni\";\"main\"\n\"672700\";\"Boegoez\";\"other\"\n\"672700\";\"Bögöz\";\"other\"\n\"672704\";\"Muereasca\";\"main\"\n\"672704\";\"Muereasca de Jos\";\"other\"\n\"672714\";\"Mozăceni\";\"main\"\n\"672714\";\"Mozaceni\";\"ascii\"\n\"672720\";\"Moviliţa\";\"main\"\n\"672720\";\"Movilita\";\"ascii\"\n\"672722\";\"Moviliţa\";\"main\"\n\"672722\";\"Movilita\";\"ascii\"\n\"672722\";\"Movilita-Noua\";\"other\"\n\"672722\";\"Moviliţa-Nouă\";\"other\"\n\"672729\";\"Movileni\";\"main\"\n\"672729\";\"Movilenii\";\"other\"\n\"672732\";\"Movileni\";\"main\"\n\"672732\";\"Movileni de Sus\";\"other\"\n\"672732\";\"Movilenii de Sus\";\"other\"\n\"672734\";\"Movileni\";\"main\"\n\"672734\";\"Benga\";\"other\"\n\"672734\";\"Tampeni\";\"other\"\n\"672734\";\"Timpeni\";\"other\"\n\"672734\";\"Tîmpeni\";\"other\"\n\"672734\";\"Tămpeni\";\"other\"\n\"672744\";\"Movila Miresei\";\"main\"\n\"672744\";\"Movila-Miresi\";\"other\"\n\"672744\";\"Movila-Miresii\";\"other\"\n\"672746\";\"Movila Banului\";\"main\"\n\"672752\";\"Movila\";\"main\"\n\"672752\";\"Movila Gildaului\";\"other\"\n\"672752\";\"Movila Gîldăului\";\"other\"\n\"672752\";\"Vasile Roaita\";\"other\"\n\"672752\";\"Vasile Roaită\";\"other\"\n\"672757\";\"Motru\";\"main\"\n\"672760\";\"Motoşeni\";\"main\"\n\"672760\";\"Motoseni\";\"ascii\"\n\"672760\";\"Ursa\";\"other\"\n\"672760\";\"Ursa-Motoseni\";\"other\"\n\"672781\";\"Moţca\";\"main\"\n\"672781\";\"Motca\";\"ascii\"\n\"672784\";\"Moţăţei\";\"main\"\n\"672784\";\"Motatei\";\"ascii\"\n\"672784\";\"Motate\";\"other\"\n\"672784\";\"Moţăţe\";\"other\"\n\"672786\";\"Moţăeni\";\"main\"\n\"672786\";\"Motaeni\";\"ascii\"\n\"672786\";\"Molaeni\";\"other\"\n\"672786\";\"Motaenii\";\"other\"\n\"672786\";\"Moţăenii\";\"other\"\n\"672808\";\"Moşoaia\";\"main\"\n\"672808\";\"Mosoaia\";\"ascii\"\n\"672808\";\"Mosoala\";\"other\"\n\"672808\";\"Moşoala\";\"other\"\n\"672809\";\"Moşniţa Nouă\";\"main\"\n\"672809\";\"Mosnita Noua\";\"ascii\"\n\"672809\";\"Mosnica\";\"other\"\n\"672825\";\"Moşna\";\"main\"\n\"672825\";\"Mosna\";\"ascii\"\n\"672826\";\"Moşna\";\"main\"\n\"672826\";\"Mosna\";\"ascii\"\n\"672826\";\"Mojna\";\"other\"\n\"672838\";\"Morunglav\";\"main\"\n\"672838\";\"Morunglavu\";\"other\"\n\"672838\";\"Morunglavul\";\"other\"\n\"672842\";\"Morteni\";\"main\"\n\"672847\";\"Moroeni\";\"main\"\n\"672847\";\"Moreni\";\"other\"\n\"672847\";\"Moroenii\";\"other\"\n\"672847\";\"Moroieni\";\"other\"\n\"672862\";\"Moreni\";\"main\"\n\"672868\";\"Moraviţa\";\"main\"\n\"672868\";\"Moravita\";\"ascii\"\n\"672868\";\"Moravica\";\"other\"\n\"672868\";\"Moravicza\";\"other\"\n\"672868\";\"Morawitz\";\"other\"\n\"672868\";\"Morawitza\";\"other\"\n\"672868\";\"Temesmora\";\"other\"\n\"672868\";\"Temesmóra\";\"other\"\n\"672876\";\"Morăreşti\";\"main\"\n\"672876\";\"Moraresti\";\"ascii\"\n\"672883\";\"Monor\";\"main\"\n\"672883\";\"Monerfalva\";\"other\"\n\"672883\";\"Monorfalva\";\"other\"\n\"672883\";\"Mônorfalva\";\"other\"\n\"672887\";\"Moneasa\";\"main\"\n\"672887\";\"Menyhaza\";\"other\"\n\"672887\";\"Menyháza\";\"other\"\n\"672887\";\"Monyahaza\";\"other\"\n\"672887\";\"Monyaháza\";\"other\"\n\"672887\";\"Monyasza\";\"other\"\n\"672887\";\"Monyásza\";\"other\"\n\"672899\";\"Moldoviţa\";\"main\"\n\"672899\";\"Moldovita\";\"ascii\"\n\"672899\";\"Moldorita Ferast\";\"other\"\n\"672899\";\"Moldorita Ferăst\";\"other\"\n\"672901\";\"Moldoveni\";\"main\"\n\"672901\";\"Porcesti\";\"other\"\n\"672901\";\"Porceşti\";\"other\"\n\"672905\";\"Moldoveneşti\";\"main\"\n\"672905\";\"Moldovenesti\";\"ascii\"\n\"672905\";\"Varfalau\";\"other\"\n\"672905\";\"Varfalău\";\"other\"\n\"672911\";\"Moldova Suliţa\";\"main\"\n\"672911\";\"Moldova Sulita\";\"ascii\"\n\"672912\";\"Moldova Nouă\";\"main\"\n\"672912\";\"Moldova Noua\";\"ascii\"\n\"672912\";\"Nova Moldava\";\"other\"\n\"672922\";\"Moisei\";\"main\"\n\"672926\";\"Moineşti\";\"main\"\n\"672926\";\"Moinesti\";\"ascii\"\n\"672937\";\"Mogoşoaia\";\"main\"\n\"672937\";\"Mogosoaia\";\"ascii\"\n\"672938\";\"Mogoşeşti-Siret\";\"main\"\n\"672938\";\"Mogosesti-Siret\";\"ascii\"\n\"672938\";\"Mogosesti\";\"other\"\n\"672938\";\"Mogoşeşti\";\"other\"\n\"672943\";\"Mogoşeşti\";\"main\"\n\"672943\";\"Mogosesti\";\"ascii\"\n\"672955\";\"Mogoşani\";\"main\"\n\"672955\";\"Mogosani\";\"ascii\"\n\"672964\";\"Moftinu Mare\";\"main\"\n\"672964\";\"Moftinul-Mare\";\"other\"\n\"672968\";\"Moeciu de Jos\";\"main\"\n\"672968\";\"Al Moecs\";\"other\"\n\"672968\";\"Moeciul-de Jos\";\"other\"\n\"672977\";\"Modelu\";\"main\"\n\"672977\";\"Model\";\"other\"\n\"672977\";\"Sat Model\";\"other\"\n\"672977\";\"Satu-Model\";\"other\"\n\"672983\";\"Mociu\";\"main\"\n\"672983\";\"Mociul\";\"other\"\n\"672987\";\"Moceşti\";\"main\"\n\"672987\";\"Mocesti\";\"ascii\"\n\"672987\";\"Mocestii\";\"other\"\n\"673016\";\"Moara Carp\";\"main\"\n\"673022\";\"Moacşa\";\"main\"\n\"673022\";\"Moacsa\";\"ascii\"\n\"673022\";\"Maksa\";\"other\"\n\"673033\";\"Mizil\";\"main\"\n\"673033\";\"Mizilue\";\"other\"\n\"673033\";\"Мизил\";\"other\"\n\"673048\";\"Mitreni\";\"main\"\n\"673050\";\"Mitocu Dragomirnei\";\"main\"\n\"673050\";\"Mitocul-Dragomirnei\";\"other\"\n\"673054\";\"Mitoc\";\"main\"\n\"673071\";\"Mischii\";\"main\"\n\"673079\";\"Mîsca\";\"main\"\n\"673079\";\"Misca\";\"ascii\"\n\"673079\";\"Masca\";\"other\"\n\"673079\";\"Mâsca\";\"other\"\n\"673082\";\"Mîrzăneşti\";\"main\"\n\"673082\";\"Mirzanesti\";\"ascii\"\n\"673082\";\"Marzanesti\";\"other\"\n\"673082\";\"Mârzăneşti\";\"other\"\n\"673088\";\"Mirşid\";\"main\"\n\"673088\";\"Mirsid\";\"ascii\"\n\"673093\";\"Mârşa\";\"main\"\n\"673093\";\"Marsa\";\"ascii\"\n\"673093\";\"Mirsa\";\"other\"\n\"673093\";\"Mîrşa\";\"other\"\n\"673096\";\"Miroslăveşti\";\"main\"\n\"673096\";\"Miroslavesti\";\"ascii\"\n\"673096\";\"Miroslovesti\";\"other\"\n\"673096\";\"Mirosloveşti\";\"other\"\n\"673098\";\"Miroslava\";\"main\"\n\"673102\";\"Miroşi\";\"main\"\n\"673102\";\"Mirosi\";\"ascii\"\n\"673106\";\"Mironeasa\";\"main\"\n\"673106\";\"Brusturet\";\"other\"\n\"673106\";\"Brustureţ\";\"other\"\n\"673106\";\"Frunzisul\";\"other\"\n\"673106\";\"Frunzişul\";\"other\"\n\"673106\";\"La Lingurari\";\"other\"\n\"673106\";\"Lingurari\";\"other\"\n\"673123\";\"Mireşu Mare\";\"main\"\n\"673123\";\"Miresu Mare\";\"ascii\"\n\"673123\";\"Miresul-Mare\";\"other\"\n\"673123\";\"Mireşul-Mare\";\"other\"\n\"673123\";\"Nagy-Nyires\";\"other\"\n\"673123\";\"Nagy-Nyíres\";\"other\"\n\"673123\";\"Nagynyires\";\"other\"\n\"673123\";\"Nagynyíres\";\"other\"\n\"673140\";\"Mirceşti\";\"main\"\n\"673140\";\"Mircesti\";\"ascii\"\n\"673151\";\"Mircea Vodă\";\"main\"\n\"673151\";\"Mircea Voda\";\"ascii\"\n\"673154\";\"Mircea Vodă\";\"main\"\n\"673154\";\"Mircea Voda\";\"ascii\"\n\"673154\";\"Celebichioi\";\"other\"\n\"673154\";\"Celibichioi\";\"other\"\n\"673160\";\"Mirăslău\";\"main\"\n\"673160\";\"Miraslau\";\"ascii\"\n\"673160\";\"Mirislau\";\"other\"\n\"673160\";\"Mirislaul\";\"other\"\n\"673160\";\"Mirislău\";\"other\"\n\"673160\";\"Mirislăul\";\"other\"\n\"673177\";\"Mintiu Gherlii\";\"main\"\n\"673177\";\"Mintiul-Gherlei\";\"other\"\n\"673219\";\"Mîndra\";\"main\"\n\"673219\";\"Mindra\";\"ascii\"\n\"673219\";\"Mandra\";\"other\"\n\"673219\";\"Mândra\";\"other\"\n\"673230\";\"Mînăstireni\";\"main\"\n\"673230\";\"Minastireni\";\"ascii\"\n\"673230\";\"Manastireni\";\"other\"\n\"673230\";\"Mânăstireni\";\"other\"\n\"673242\";\"Mînăstirea Humorului\";\"main\"\n\"673242\";\"Minastirea Humorului\";\"ascii\"\n\"673242\";\"Manastirea Homorului\";\"other\"\n\"673242\";\"Manastirea-Humorului\";\"other\"\n\"673242\";\"Mânăstirea Homorului\";\"other\"\n\"673242\";\"Mânăstirea-Humorului\";\"other\"\n\"673275\";\"Mînăstirea\";\"main\"\n\"673275\";\"Minastirea\";\"ascii\"\n\"673275\";\"Manastirea\";\"other\"\n\"673275\";\"Mânăstirea\";\"other\"\n\"673300\";\"Miloşeşti\";\"main\"\n\"673300\";\"Milosesti\";\"ascii\"\n\"673305\";\"Milişăuţi\";\"main\"\n\"673305\";\"Milisauti\";\"ascii\"\n\"673305\";\"Milesauti\";\"other\"\n\"673305\";\"Milesăuţi\";\"other\"\n\"673315\";\"Mileanca\";\"main\"\n\"673316\";\"Milcovul\";\"main\"\n\"673316\";\"Risipiti\";\"other\"\n\"673316\";\"Risipiţi\";\"other\"\n\"673328\";\"Milcoiu\";\"main\"\n\"673328\";\"Milcoiul\";\"other\"\n\"673332\";\"Milaş\";\"main\"\n\"673332\";\"Milas\";\"ascii\"\n\"673354\";\"Mihalţ\";\"main\"\n\"673354\";\"Mihalt\";\"ascii\"\n\"673359\";\"Mihălăşeni\";\"main\"\n\"673359\";\"Mihalaseni\";\"ascii\"\n\"673359\";\"Mihalasceni\";\"other\"\n\"673359\";\"Mihalasenii\";\"other\"\n\"673359\";\"Mihălăşceni\";\"other\"\n\"673359\";\"Mihălăşenii\";\"other\"\n\"673365\";\"Mihai Viteazu\";\"main\"\n\"673365\";\"Alsoszentmihalyfalva\";\"other\"\n\"673365\";\"Alsószentmihályfalva\";\"other\"\n\"673365\";\"Mihai-Viteazul\";\"other\"\n\"673365\";\"Mihaiu Viteazul\";\"other\"\n\"673365\";\"Szentmihaly\";\"other\"\n\"673365\";\"Szentmihály\";\"other\"\n\"673367\";\"Mihai Viteazu\";\"main\"\n\"673367\";\"Mihai-Viteazul\";\"other\"\n\"673367\";\"Mihaiu Viteazul\";\"other\"\n\"673380\";\"Mihail Kogălniceanu\";\"main\"\n\"673380\";\"Mihail Kogalniceanu\";\"ascii\"\n\"673380\";\"Cogalniceanu\";\"other\"\n\"673380\";\"Cogălniceanu\";\"other\"\n\"673380\";\"Mihail-Cogalniceanu\";\"other\"\n\"673380\";\"Mihail-Cogălniceanu\";\"other\"\n\"673381\";\"Mihail Kogălniceanu\";\"main\"\n\"673381\";\"Mihail Kogalniceanu\";\"ascii\"\n\"673381\";\"Cogalniceanu\";\"other\"\n\"673381\";\"Cogălniceanu\";\"other\"\n\"673381\";\"Mihail-Cogalniceanu\";\"other\"\n\"673381\";\"Mihail-Cogălniceanu\";\"other\"\n\"673382\";\"Mihail Kogălniceanu\";\"main\"\n\"673382\";\"Mihail Kogalniceanu\";\"ascii\"\n\"673382\";\"Bulgarien\";\"other\"\n\"673382\";\"Caramurat\";\"other\"\n\"673382\";\"Cogalniceanu\";\"other\"\n\"673382\";\"Cogălniceanu\";\"other\"\n\"673382\";\"Ferdinand I\";\"other\"\n\"673382\";\"Ferdinandi\";\"other\"\n\"673382\";\"Karamurat\";\"other\"\n\"673382\";\"Kogalniceanu\";\"other\"\n\"673382\";\"Mihail Cogalniceanu\";\"other\"\n\"673382\";\"Mihail Cogălniceanu\";\"other\"\n\"673382\";\"Mikhail-Kogelnichanu\";\"other\"\n\"673386\";\"Mihăileşti\";\"main\"\n\"673386\";\"Mihailesti\";\"ascii\"\n\"673387\";\"Mihăileşti\";\"main\"\n\"673387\";\"Mihailesti\";\"ascii\"\n\"673387\";\"Mihailestii de Sus\";\"other\"\n\"673387\";\"Mihăileştii de Sus\";\"other\"\n\"673392\";\"Mihăileni\";\"main\"\n\"673392\";\"Mihaileni\";\"ascii\"\n\"673393\";\"Mihăileni\";\"main\"\n\"673393\";\"Mihaileni\";\"ascii\"\n\"673393\";\"Csikszentmihaly\";\"other\"\n\"673393\";\"Csikszentmihály\";\"other\"\n\"673396\";\"Mihăileni\";\"main\"\n\"673396\";\"Mihaileni\";\"ascii\"\n\"673396\";\"Saldorf\";\"other\"\n\"673396\";\"Şaldorf\";\"other\"\n\"673397\";\"Mihail Eminescu\";\"main\"\n\"673397\";\"Eminescu\";\"other\"\n\"673397\";\"Starojita Stavri\";\"other\"\n\"673397\";\"Starojiţa Stavri\";\"other\"\n\"673397\";\"Starosilta-Stavri\";\"other\"\n\"673397\";\"Staroşilţa-Stavri\";\"other\"\n\"673402\";\"Mihai Bravu\";\"main\"\n\"673402\";\"Camber\";\"other\"\n\"673402\";\"Mihai-Bravul\";\"other\"\n\"673404\";\"Mihai Bravu\";\"main\"\n\"673404\";\"Mihai Bravul\";\"other\"\n\"673416\";\"Mihăeşti\";\"main\"\n\"673416\";\"Mihaesti\";\"ascii\"\n\"673417\";\"Mihăeşti\";\"main\"\n\"673417\";\"Mihaesti\";\"ascii\"\n\"673418\";\"Mihăeşti\";\"main\"\n\"673418\";\"Mihaesti\";\"ascii\"\n\"673418\";\"Mihaesti-de-Sus\";\"other\"\n\"673418\";\"Mihaestii-de Sus\";\"other\"\n\"673418\";\"Mihăeşti-de-Sus\";\"other\"\n\"673418\";\"Mihăeştii-de Sus\";\"other\"\n\"673438\";\"Miercurea Sibiului\";\"main\"\n\"673438\";\"Mercurea\";\"other\"\n\"673438\";\"Mercurea-Sibiului\";\"other\"\n\"673438\";\"Miercurea\";\"other\"\n\"673440\";\"Miercurea Nirajului\";\"main\"\n\"673440\";\"Mercurea Nirajului\";\"other\"\n\"673440\";\"Miereurea Nirajului\";\"other\"\n\"673440\";\"Nyaradszereda\";\"other\"\n\"673440\";\"Nyàràdszereda\";\"other\"\n\"673441\";\"Miercurea-Ciuc\";\"main\"\n\"673441\";\"Csikszereda\";\"other\"\n\"673441\";\"Csíkszereda\";\"other\"\n\"673441\";\"Mercurea Ciuc\";\"other\"\n\"673441\";\"Merkurja-Chuk\";\"other\"\n\"673441\";\"Miercurea Ciuc\";\"other\"\n\"673441\";\"Miercurea-Ciucului\";\"other\"\n\"673441\";\"Меркуря-Чук\";\"other\"\n\"673453\";\"Micula\";\"main\"\n\"673453\";\"Micula Colonia\";\"other\"\n\"673466\";\"Micleşti\";\"main\"\n\"673466\";\"Miclesti\";\"ascii\"\n\"673477\";\"Miceştii de Cîmpie\";\"main\"\n\"673477\";\"Micestii de Cimpie\";\"ascii\"\n\"673477\";\"Micestii-de-Campie\";\"other\"\n\"673477\";\"Miceştii-de-Câmpie\";\"other\"\n\"673482\";\"Miceşti\";\"main\"\n\"673482\";\"Micesti\";\"ascii\"\n\"673485\";\"Micăsasa\";\"main\"\n\"673485\";\"Micasasa\";\"ascii\"\n\"673489\";\"Mica\";\"main\"\n\"673490\";\"Mica\";\"main\"\n\"673506\";\"Meteş\";\"main\"\n\"673506\";\"Metes\";\"ascii\"\n\"673533\";\"Meseşenii de Jos\";\"main\"\n\"673533\";\"Mesesenii de Jos\";\"ascii\"\n\"673533\";\"Catalusa\";\"other\"\n\"673533\";\"Catelusa\";\"other\"\n\"673533\";\"Catelusul\";\"other\"\n\"673533\";\"Căţeluşa\";\"other\"\n\"673533\";\"Căţeluşul\";\"other\"\n\"673533\";\"Căţăluşa\";\"other\"\n\"673553\";\"Merişani\";\"main\"\n\"673553\";\"Merisani\";\"ascii\"\n\"673553\";\"Merisanii\";\"other\"\n\"673553\";\"Merişanii\";\"other\"\n\"673566\";\"Merghindeal\";\"main\"\n\"673571\";\"Mereşti\";\"main\"\n\"673571\";\"Meresti\";\"ascii\"\n\"673571\";\"Homorodalmas\";\"other\"\n\"673571\";\"Homoròdalmàs\";\"other\"\n\"673571\";\"Homotodalmas\";\"other\"\n\"673571\";\"Homotödalmas\";\"other\"\n\"673583\";\"Mereni\";\"main\"\n\"673583\";\"Enghe-Mahale\";\"other\"\n\"673583\";\"Engimahale\";\"other\"\n\"673586\";\"Merei\";\"main\"\n\"673594\";\"Mera\";\"main\"\n\"673594\";\"Miera\";\"other\"\n\"673600\";\"Melineşti\";\"main\"\n\"673600\";\"Melinesti\";\"ascii\"\n\"673619\";\"Mehadia\";\"main\"\n\"673619\";\"Mebadia\";\"other\"\n\"673619\";\"Mehadija\";\"other\"\n\"673619\";\"mhadyh\";\"other\"\n\"673619\";\"مهادیه\";\"other\"\n\"673632\";\"Medieşu Aurit\";\"main\"\n\"673632\";\"Mediesu Aurit\";\"ascii\"\n\"673632\";\"Mediesul-Aurit\";\"other\"\n\"673632\";\"Medieşul-Aurit\";\"other\"\n\"673634\";\"Mediaş\";\"main\"\n\"673634\";\"Medias\";\"ascii\"\n\"673634\";\"Aronyosmeggyes\";\"other\"\n\"673634\";\"Aronyósmeggyes\";\"other\"\n\"673634\";\"Medgyes\";\"other\"\n\"673634\";\"Mediasch\";\"other\"\n\"673634\";\"Medivisch\";\"other\"\n\"673636\";\"Medgidia\";\"main\"\n\"673636\";\"Mecidiye\";\"other\"\n\"673636\";\"Medjidia\";\"other\"\n\"673636\";\"Medzhidija\";\"other\"\n\"673636\";\"mjydyh\";\"other\"\n\"673636\";\"Меджидия\";\"other\"\n\"673636\";\"مجیدیه\";\"other\"\n\"673652\";\"Măxineni\";\"main\"\n\"673652\";\"Maxineni\";\"ascii\"\n\"673658\";\"Mavrodin\";\"main\"\n\"673658\";\"Mavrodinu\";\"other\"\n\"673660\";\"Măureni\";\"main\"\n\"673660\";\"Maureni\";\"ascii\"\n\"673660\";\"Moricfeld\";\"other\"\n\"673660\";\"Moricfold\";\"other\"\n\"673660\";\"Moriczfold\";\"other\"\n\"673660\";\"Moritfeld\";\"other\"\n\"673660\";\"Moritzfeld\";\"other\"\n\"673660\";\"Moriţfeld\";\"other\"\n\"673660\";\"Móricföld\";\"other\"\n\"673660\";\"Móriczföld\";\"other\"\n\"673678\";\"Matei\";\"main\"\n\"673678\";\"Mateiu\";\"other\"\n\"673683\";\"Mateeşti\";\"main\"\n\"673683\";\"Mateesti\";\"ascii\"\n\"673685\";\"Matca\";\"main\"\n\"673691\";\"Mătăsaru\";\"main\"\n\"673691\";\"Matasaru\";\"ascii\"\n\"673691\";\"Matasarul\";\"other\"\n\"673691\";\"Mătăsarul\";\"other\"\n\"673695\";\"Mătăsari\";\"main\"\n\"673695\";\"Matasari\";\"ascii\"\n\"673700\";\"Mătăcina\";\"main\"\n\"673700\";\"Matacina\";\"ascii\"\n\"673702\";\"Măstăcani\";\"main\"\n\"673702\";\"Mastacani\";\"ascii\"\n\"673706\";\"Maşloc\";\"main\"\n\"673706\";\"Masloc\";\"ascii\"\n\"673706\";\"Blumental\";\"other\"\n\"673706\";\"Macsalaka\";\"other\"\n\"673706\";\"Maslak\";\"other\"\n\"673706\";\"Maslok\";\"other\"\n\"673706\";\"Mácsalaka\";\"other\"\n\"673706\";\"Máslak\";\"other\"\n\"673706\";\"Máslok\";\"other\"\n\"673723\";\"Mărunţei\";\"main\"\n\"673723\";\"Maruntei\";\"ascii\"\n\"673731\";\"Mărtiniş\";\"main\"\n\"673731\";\"Martinis\";\"ascii\"\n\"673731\";\"Homorodszentmarton\";\"other\"\n\"673731\";\"Homoródszentmàrton\";\"other\"\n\"673737\";\"Mărtineşti\";\"main\"\n\"673737\";\"Martinesti\";\"ascii\"\n\"673771\";\"Mărişelu\";\"main\"\n\"673771\";\"Mariselu\";\"ascii\"\n\"673771\";\"Mariselul\";\"other\"\n\"673771\";\"Mărişelul\";\"other\"\n\"673773\";\"Mărişel\";\"main\"\n\"673773\";\"Marisel\";\"ascii\"\n\"673773\";\"Mariselu\";\"other\"\n\"673773\";\"Mariselul\";\"other\"\n\"673773\";\"Mărişelu\";\"other\"\n\"673773\";\"Mărişelul\";\"other\"\n\"673783\";\"Mărgineni-Munteni\";\"main\"\n\"673783\";\"Margineni-Munteni\";\"ascii\"\n\"673794\";\"Mărgineni\";\"main\"\n\"673794\";\"Margineni\";\"ascii\"\n\"673807\";\"Marginea\";\"main\"\n\"673814\";\"Margina\";\"main\"\n\"673816\";\"Margita\";\"main\"\n\"673821\";\"Mărgău\";\"main\"\n\"673821\";\"Margau\";\"ascii\"\n\"673829\";\"Marga\";\"main\"\n\"673868\";\"Marca\";\"main\"\n\"673873\";\"Măraşu\";\"main\"\n\"673873\";\"Marasu\";\"ascii\"\n\"673873\";\"Marasul\";\"other\"\n\"673873\";\"Măraşul\";\"other\"\n\"673881\";\"Mărăşeşti\";\"main\"\n\"673881\";\"Marasesti\";\"ascii\"\n\"673881\";\"Marasestii\";\"other\"\n\"673881\";\"Marasheshty\";\"other\"\n\"673881\";\"Mărăşeştii\";\"other\"\n\"673893\";\"Mărăcineni\";\"main\"\n\"673893\";\"Maracineni\";\"ascii\"\n\"673894\";\"Mărăcineni\";\"main\"\n\"673894\";\"Maracineni\";\"ascii\"\n\"673908\";\"Manoleasa\";\"main\"\n\"673908\";\"Manoleasa-Volovat\";\"other\"\n\"673908\";\"Manoleasa-Volovăţ\";\"other\"\n\"673921\";\"Mangalia\";\"main\"\n\"673921\";\"Mangalija\";\"other\"\n\"673921\";\"Mangalla\";\"other\"\n\"673921\";\"Mankalya\";\"other\"\n\"673921\";\"Мангалия\";\"other\"\n\"673931\";\"Măneşti\";\"main\"\n\"673931\";\"Manesti\";\"ascii\"\n\"673931\";\"Manestii\";\"other\"\n\"673931\";\"Măneştii\";\"other\"\n\"673932\";\"Măneşti\";\"main\"\n\"673932\";\"Manesti\";\"ascii\"\n\"673934\";\"Măneciu\";\"main\"\n\"673934\";\"Maneciu\";\"ascii\"\n\"673934\";\"Manecia-Ungureni\";\"other\"\n\"673934\";\"Maneciu-Ungureni\";\"other\"\n\"673934\";\"Maneciul-Ungureni\";\"other\"\n\"673934\";\"Mineciu\";\"other\"\n\"673934\";\"Mineciu-Ungureni\";\"other\"\n\"673934\";\"Mîneciu-Ungureni\";\"other\"\n\"673934\";\"Mănecia-Ungureni\";\"other\"\n\"673934\";\"Măneciu-Ungureni\";\"other\"\n\"673934\";\"Măneciul-Ungureni\";\"other\"\n\"673934\";\"Valea Larga\";\"other\"\n\"673934\";\"Valea Largă\";\"other\"\n\"673945\";\"Mănăştiur\";\"main\"\n\"673945\";\"Manastiur\";\"ascii\"\n\"673948\";\"Manasia\";\"main\"\n\"673964\";\"Măluşteni\";\"main\"\n\"673964\";\"Malusteni\";\"ascii\"\n\"673977\";\"Mălureni\";\"main\"\n\"673977\";\"Malureni\";\"ascii\"\n\"673982\";\"Malu Mare\";\"main\"\n\"673982\";\"Malul Mare\";\"other\"\n\"673986\";\"Malu cu Flori\";\"main\"\n\"673986\";\"Malul cu Flori\";\"other\"\n\"674003\";\"Malovăţ\";\"main\"\n\"674003\";\"Malovat\";\"ascii\"\n\"674003\";\"Malovacu\";\"other\"\n\"674003\";\"Malovatu\";\"other\"\n\"674003\";\"Malovăţu\";\"other\"\n\"674006\";\"Malnaş\";\"main\"\n\"674006\";\"Malnas\";\"ascii\"\n\"674011\";\"Mălini\";\"main\"\n\"674011\";\"Malini\";\"ascii\"\n\"674025\";\"Măldăreşti\";\"main\"\n\"674025\";\"Maldaresti\";\"ascii\"\n\"674025\";\"Maldarestii de Sus\";\"other\"\n\"674025\";\"Măldăreştii de Sus\";\"other\"\n\"674030\";\"Măldăeni\";\"main\"\n\"674030\";\"Maldaeni\";\"ascii\"\n\"674038\";\"Malaia\";\"main\"\n\"674059\";\"Măieruş\";\"main\"\n\"674059\";\"Maierus\";\"ascii\"\n\"674061\";\"Măieru\";\"main\"\n\"674061\";\"Maieru\";\"ascii\"\n\"674061\";\"Maier\";\"other\"\n\"674061\";\"Major\";\"other\"\n\"674066\";\"Măicăneşti\";\"main\"\n\"674066\";\"Maicanesti\";\"ascii\"\n\"674066\";\"Bolboaca\";\"other\"\n\"674066\";\"Maicanesti-Bolboaca\";\"other\"\n\"674066\";\"Măicăneşti-Bolboaca\";\"other\"\n\"674078\";\"Mahmudia\";\"main\"\n\"674078\";\"Mahmudie\";\"other\"\n\"674078\";\"Mahmudla\";\"other\"\n\"674105\";\"Măgureni\";\"main\"\n\"674105\";\"Magureni\";\"ascii\"\n\"674115\";\"Măgurele\";\"main\"\n\"674115\";\"Magurele\";\"ascii\"\n\"674115\";\"Magurelele\";\"other\"\n\"674115\";\"Măgurelele\";\"other\"\n\"674117\";\"Măgurele\";\"main\"\n\"674117\";\"Magurele\";\"ascii\"\n\"674117\";\"Magurelele\";\"other\"\n\"674117\";\"Măgurelele\";\"other\"\n\"674117\";\"Otelelesanii\";\"other\"\n\"674124\";\"Măgura Ilvei\";\"main\"\n\"674124\";\"Magura Ilvei\";\"ascii\"\n\"674146\";\"Măgura\";\"main\"\n\"674146\";\"Magura\";\"ascii\"\n\"674155\";\"Măgura\";\"main\"\n\"674155\";\"Magura\";\"ascii\"\n\"674161\";\"Măgura\";\"main\"\n\"674161\";\"Magura\";\"ascii\"\n\"674161\";\"Magura-Laceanca\";\"other\"\n\"674161\";\"Măgura-Lăceanca\";\"other\"\n\"674170\";\"Maglavit\";\"main\"\n\"674170\";\"Maglavitu\";\"other\"\n\"674170\";\"Maglavitul\";\"other\"\n\"674172\";\"Măgireşti\";\"main\"\n\"674172\";\"Magiresti\";\"ascii\"\n\"674184\";\"Măgherani\";\"main\"\n\"674184\";\"Magherani\";\"ascii\"\n\"674184\";\"Nyaradmogyoros\";\"other\"\n\"674184\";\"Nyàràdmogyoròs\";\"other\"\n\"674188\";\"Măgeşti\";\"main\"\n\"674188\";\"Magesti\";\"ascii\"\n\"674197\";\"Măerişte\";\"main\"\n\"674197\";\"Maeriste\";\"ascii\"\n\"674197\";\"Maieriste\";\"other\"\n\"674197\";\"Măierişte\";\"other\"\n\"674200\";\"Mădulari\";\"main\"\n\"674200\";\"Madulari\";\"ascii\"\n\"674200\";\"Madulari-Cernisoara\";\"other\"\n\"674200\";\"Madularii-Cernisoara\";\"other\"\n\"674200\";\"Mădulari-Cernişoara\";\"other\"\n\"674200\";\"Mădularii-Cernişoara\";\"other\"\n\"674214\";\"Mădăraş\";\"main\"\n\"674214\";\"Madaras\";\"ascii\"\n\"674230\";\"Măcin\";\"main\"\n\"674230\";\"Macin\";\"ascii\"\n\"674230\";\"Maçin\";\"other\"\n\"674230\";\"machyn\";\"other\"\n\"674230\";\"ماچین\";\"other\"\n\"674235\";\"Măceşu de Sus\";\"main\"\n\"674235\";\"Macesu de Sus\";\"ascii\"\n\"674235\";\"Macesiu-de-Sus\";\"other\"\n\"674235\";\"Macesul-de-Sus\";\"other\"\n\"674235\";\"Măceşiu-de-Sus\";\"other\"\n\"674235\";\"Măceşul-de-Sus\";\"other\"\n\"674237\";\"Măceşu de Jos\";\"main\"\n\"674237\";\"Macesu de Jos\";\"ascii\"\n\"674237\";\"Macesiu-de-Jos\";\"other\"\n\"674237\";\"Macesul-de-Jos\";\"other\"\n\"674237\";\"Măceşiu-de-Jos\";\"other\"\n\"674237\";\"Măceşul-de-Jos\";\"other\"\n\"674244\";\"Macea\";\"main\"\n\"674267\";\"Lupşanu\";\"main\"\n\"674267\";\"Lupsanu\";\"ascii\"\n\"674267\";\"Lupsanul\";\"other\"\n\"674267\";\"Lupşanul\";\"other\"\n\"674272\";\"Lupşa\";\"main\"\n\"674272\";\"Lupsa\";\"ascii\"\n\"674294\";\"Lupeni\";\"main\"\n\"674294\";\"Farkaslaka\";\"other\"\n\"674294\";\"Farkaslaxa\";\"other\"\n\"674294\";\"Лупени\";\"other\"\n\"674295\";\"Lupeni\";\"main\"\n\"674295\";\"Luoeni\";\"other\"\n\"674295\";\"Lupeny\";\"other\"\n\"674295\";\"Lupény\";\"other\"\n\"674295\";\"Лупени\";\"other\"\n\"674305\";\"Lupac\";\"main\"\n\"674307\";\"Lunguleţu\";\"main\"\n\"674307\";\"Lunguletu\";\"ascii\"\n\"674307\";\"Lunguletul\";\"other\"\n\"674307\";\"Lunguleţul\";\"other\"\n\"674318\";\"Lungeşti\";\"main\"\n\"674318\";\"Lungesti\";\"ascii\"\n\"674323\";\"Lungani\";\"main\"\n\"674340\";\"Luncoiu de Jos\";\"main\"\n\"674340\";\"Luncoiul-de-Jos\";\"other\"\n\"674349\";\"Luncaviţa\";\"main\"\n\"674349\";\"Luncavita\";\"ascii\"\n\"674350\";\"Luncaviţa\";\"main\"\n\"674350\";\"Luncavita\";\"ascii\"\n\"674384\";\"Lunca Mureşului\";\"main\"\n\"674384\";\"Lunca Muresului\";\"ascii\"\n\"674402\";\"Lunca Ilvei\";\"main\"\n\"674402\";\"Lunca\";\"other\"\n\"674402\";\"Lunca Vinului\";\"other\"\n\"674413\";\"Lunca de Sus\";\"main\"\n\"674413\";\"Gyimesfelsolok\";\"other\"\n\"674413\";\"Gyimesfelsölok\";\"other\"\n\"674419\";\"Lunca de Jos\";\"main\"\n\"674419\";\"Gyimeskozeplok\";\"other\"\n\"674419\";\"Gyimesközéplok\";\"other\"\n\"674421\";\"Lunca Corbului\";\"main\"\n\"674426\";\"Lunca Cernii de Jos\";\"main\"\n\"674430\";\"Lunca Bradului\";\"main\"\n\"674439\";\"Lunca Banului\";\"main\"\n\"674461\";\"Lunca\";\"main\"\n\"674467\";\"Lunca\";\"main\"\n\"674467\";\"Tekeujfalu\";\"other\"\n\"674470\";\"Lunca\";\"main\"\n\"674497\";\"Lunca\";\"main\"\n\"674497\";\"Raioasa\";\"other\"\n\"674497\";\"Riiosa\";\"other\"\n\"674497\";\"Râioasa\";\"other\"\n\"674497\";\"Rîiosa\";\"other\"\n\"674517\";\"Lumina\";\"main\"\n\"674517\";\"Cogea Ali\";\"other\"\n\"674517\";\"Cogealia\";\"other\"\n\"674517\";\"Kogea Ali\";\"other\"\n\"674517\";\"Valea Neagra\";\"other\"\n\"674517\";\"Valea Neagră\";\"other\"\n\"674523\";\"Luizi-Călugăra\";\"main\"\n\"674523\";\"Luizi-Calugara\";\"ascii\"\n\"674523\";\"Luizii-Calugara\";\"other\"\n\"674523\";\"Luizii-Călugăra\";\"other\"\n\"674526\";\"Luica\";\"main\"\n\"674531\";\"Lugoj\";\"main\"\n\"674531\";\"Deutsch-Lugosch\";\"other\"\n\"674531\";\"Lugas\";\"other\"\n\"674531\";\"Lugoi\";\"other\"\n\"674531\";\"Lugos\";\"other\"\n\"674531\";\"Lugosch\";\"other\"\n\"674531\";\"Lugozh\";\"other\"\n\"674531\";\"Nemet-Lugos\";\"other\"\n\"674531\";\"Német-Lugos\";\"other\"\n\"674531\";\"Olah-Lugos\";\"other\"\n\"674531\";\"Oláh-Lugos\";\"other\"\n\"674531\";\"Walachisch-Lugosch\";\"other\"\n\"674531\";\"Лугож\";\"other\"\n\"674533\";\"Lugaşu de Jos\";\"main\"\n\"674533\";\"Lugasu de Jos\";\"ascii\"\n\"674533\";\"Lugasul-de-Jos\";\"other\"\n\"674533\";\"Lugaşul-de-Jos\";\"other\"\n\"674536\";\"Lueta\";\"main\"\n\"674536\";\"Lovete\";\"other\"\n\"674536\";\"Lövete\";\"other\"\n\"674541\";\"Luduş\";\"main\"\n\"674541\";\"Ludus\";\"ascii\"\n\"674541\";\"Ludas\";\"other\"\n\"674541\";\"Ludos\";\"other\"\n\"674550\";\"Ludeşti\";\"main\"\n\"674550\";\"Ludesti\";\"ascii\"\n\"674556\";\"Luciu\";\"main\"\n\"674556\";\"Luciul\";\"other\"\n\"674560\";\"Lucieni\";\"main\"\n\"674581\";\"Lozna\";\"main\"\n\"674586\";\"Lovrin\";\"main\"\n\"674586\";\"Lorand\";\"other\"\n\"674586\";\"Lorandium\";\"other\"\n\"674586\";\"Lorant\";\"other\"\n\"674586\";\"Lovrand\";\"other\"\n\"674586\";\"Lovránd\";\"other\"\n\"674586\";\"Lowrin\";\"other\"\n\"674586\";\"Lóránd\";\"other\"\n\"674586\";\"Lóránt\";\"other\"\n\"674606\";\"Lopătari\";\"main\"\n\"674606\";\"Lopatari\";\"ascii\"\n\"674626\";\"Logreşti\";\"main\"\n\"674626\";\"Logresti\";\"ascii\"\n\"674636\";\"Loamneş\";\"main\"\n\"674636\";\"Loamnes\";\"ascii\"\n\"674636\";\"Loamnas\";\"other\"\n\"674636\";\"Loamnăs\";\"other\"\n\"674637\";\"Livezi-Vale\";\"main\"\n\"674637\";\"Valea Rea-Sat\";\"other\"\n\"674641\";\"Livezile\";\"main\"\n\"674641\";\"Iad\";\"other\"\n\"674641\";\"Jad\";\"other\"\n\"674641\";\"Jád\";\"other\"\n\"674642\";\"Livezile\";\"main\"\n\"674642\";\"Cacova\";\"other\"\n\"674647\";\"Livezile\";\"main\"\n\"674647\";\"Broscari\";\"other\"\n\"674651\";\"Livezi\";\"main\"\n\"674651\";\"Mahalaua Veaca\";\"other\"\n\"674651\";\"Veaca\";\"other\"\n\"674651\";\"Veaca de Gradistea\";\"other\"\n\"674651\";\"Veaca de Grădiştea\";\"other\"\n\"674654\";\"Livezeni\";\"main\"\n\"674654\";\"Iedu\";\"other\"\n\"674654\";\"Iedul\";\"other\"\n\"674654\";\"Jedd\";\"other\"\n\"674679\";\"Livada\";\"main\"\n\"674679\";\"Sarkoz\";\"other\"\n\"674679\";\"Sarköz\";\"other\"\n\"674685\";\"Livada\";\"main\"\n\"674685\";\"Baumgarten\";\"other\"\n\"674685\";\"Fachert\";\"other\"\n\"674685\";\"Fakert\";\"other\"\n\"674696\";\"Liteni\";\"main\"\n\"674706\";\"Liţa\";\"main\"\n\"674706\";\"Lita\";\"ascii\"\n\"674721\";\"Lisa\";\"main\"\n\"674721\";\"Lissa\";\"other\"\n\"674723\";\"Lisa\";\"main\"\n\"674723\";\"Lissa\";\"other\"\n\"674726\";\"Lipovu\";\"main\"\n\"674726\";\"Lipovul\";\"other\"\n\"674730\";\"Lipovăţ\";\"main\"\n\"674730\";\"Lipovat\";\"ascii\"\n\"674730\";\"Lipovatul\";\"other\"\n\"674730\";\"Lipovăţul\";\"other\"\n\"674732\";\"Lipova\";\"main\"\n\"674732\";\"Popesti\";\"other\"\n\"674732\";\"Popeşti\";\"other\"\n\"674732\";\"Satu Nou\";\"other\"\n\"674732\";\"Липова\";\"other\"\n\"674733\";\"Lipova\";\"main\"\n\"674733\";\"Lippa\";\"other\"\n\"674733\";\"Lippova\";\"other\"\n\"674733\";\"Mariaradna\";\"other\"\n\"674733\";\"Máriaradna\";\"other\"\n\"674733\";\"Solymosvar\";\"other\"\n\"674733\";\"Solymosvár\";\"other\"\n\"674733\";\"lpwh\";\"other\"\n\"674733\";\"Липова\";\"other\"\n\"674733\";\"لپوه\";\"other\"\n\"674735\";\"Lipniţa\";\"main\"\n\"674735\";\"Lipnita\";\"ascii\"\n\"674745\";\"Lipăneşti\";\"main\"\n\"674745\";\"Lipanesti\";\"ascii\"\n\"674745\";\"Lipanseti\";\"other\"\n\"674745\";\"Lipănseti\";\"other\"\n\"674782\";\"Limanu\";\"main\"\n\"674782\";\"Caracicula\";\"other\"\n\"674782\";\"Limanul\";\"other\"\n\"674796\";\"Lieşti\";\"main\"\n\"674796\";\"Liesti\";\"ascii\"\n\"674796\";\"Lieste\";\"other\"\n\"674796\";\"Lieşte\";\"other\"\n\"674799\";\"Liebling\";\"main\"\n\"674799\";\"Lieblig\";\"other\"\n\"674804\";\"Licuriciu\";\"main\"\n\"674804\";\"Licuriciu-de-Jos\";\"other\"\n\"674804\";\"Licuriciul\";\"other\"\n\"674823\";\"Leu\";\"main\"\n\"674823\";\"Leul\";\"other\"\n\"674826\";\"Letea Veche\";\"main\"\n\"674834\";\"Leţcani\";\"main\"\n\"674834\";\"Letcani\";\"ascii\"\n\"674837\";\"Letca\";\"main\"\n\"674837\";\"Letka\";\"other\"\n\"674841\";\"Leşu\";\"main\"\n\"674841\";\"Lesu\";\"ascii\"\n\"674841\";\"Lesul\";\"other\"\n\"674841\";\"Leşul\";\"other\"\n\"674844\";\"Lespezi\";\"main\"\n\"674864\";\"Lereşti\";\"main\"\n\"674864\";\"Leresti\";\"ascii\"\n\"674880\";\"Leordina\";\"main\"\n\"674885\";\"Leordeni\";\"main\"\n\"674885\";\"Leurdeni\";\"other\"\n\"674889\";\"Leorda\";\"main\"\n\"674895\";\"Lenauheim\";\"main\"\n\"674895\";\"Cetad\";\"other\"\n\"674895\";\"Cetat\";\"other\"\n\"674895\";\"Csatad\";\"other\"\n\"674895\";\"Csatád\";\"other\"\n\"674895\";\"Schadat\";\"other\"\n\"674898\";\"Lemnia\";\"main\"\n\"674898\";\"Alszeg\";\"other\"\n\"674898\";\"Lemheny\";\"other\"\n\"674898\";\"Lemhèny\";\"other\"\n\"674904\";\"Leleşti\";\"main\"\n\"674904\";\"Lelesti\";\"ascii\"\n\"674910\";\"Leleasca\";\"main\"\n\"674910\";\"Stefanesti\";\"other\"\n\"674910\";\"Ştefăneşti\";\"other\"\n\"674916\";\"Lehliu-Gară\";\"main\"\n\"674916\";\"Lehliu-Gara\";\"ascii\"\n\"674916\";\"Gara Lehliul\";\"other\"\n\"674916\";\"Lehliu\";\"other\"\n\"674918\";\"Lehliu\";\"main\"\n\"674918\";\"Lehliul\";\"other\"\n\"674933\";\"Lechinţa\";\"main\"\n\"674933\";\"Lechinta\";\"ascii\"\n\"674945\";\"Lazuri de Beiuş\";\"main\"\n\"674945\";\"Lazuri de Beius\";\"ascii\"\n\"674945\";\"Belenyes\";\"other\"\n\"674945\";\"Belenyes-Lazur\";\"other\"\n\"674945\";\"Belenyesirtas\";\"other\"\n\"674945\";\"Belényes\";\"other\"\n\"674945\";\"Belényes-Lazúr\";\"other\"\n\"674945\";\"Belényesirtás\";\"other\"\n\"674945\";\"Lazuri\";\"other\"\n\"674947\";\"Lazuri\";\"main\"\n\"674947\";\"Lazar\";\"other\"\n\"674947\";\"Lăzar\";\"other\"\n\"674972\";\"Lăzăreni\";\"main\"\n\"674972\";\"Lazareni\";\"ascii\"\n\"674972\";\"Miclo-Lazuri\";\"other\"\n\"674975\";\"Lăzarea\";\"main\"\n\"674975\";\"Lazarea\";\"ascii\"\n\"674975\";\"Lazaresti\";\"other\"\n\"674975\";\"Lăzareşti\";\"other\"\n\"674975\";\"Szarheg\";\"other\"\n\"674975\";\"Szarhegy\";\"other\"\n\"674975\";\"Szàrhegy\";\"other\"\n\"674977\";\"Laza\";\"main\"\n\"674977\";\"Ferma Laza\";\"other\"\n\"675003\";\"Laslea\";\"main\"\n\"675017\";\"Largu\";\"main\"\n\"675017\";\"Largul\";\"other\"\n\"675033\";\"Lăpuşnicu Mare\";\"main\"\n\"675033\";\"Lapusnicu Mare\";\"ascii\"\n\"675033\";\"Lapusnicul-Mare\";\"other\"\n\"675033\";\"Lapusnik\";\"other\"\n\"675033\";\"Lapušnik\";\"other\"\n\"675033\";\"Lăpuşnicul-Mare\";\"other\"\n\"675035\";\"Lăpuşnicel\";\"main\"\n\"675035\";\"Lapusnicel\";\"ascii\"\n\"675035\";\"Lopusnicel\";\"other\"\n\"675035\";\"Lopušničel\";\"other\"\n\"675045\";\"Lăpuş\";\"main\"\n\"675045\";\"Lapus\";\"ascii\"\n\"675045\";\"Dlanlepos\";\"other\"\n\"675045\";\"Dlanlěpos\";\"other\"\n\"675048\";\"Lăpugiu de Jos\";\"main\"\n\"675048\";\"Lapugiu de Jos\";\"ascii\"\n\"675048\";\"Lapugiu Inferior\";\"other\"\n\"675048\";\"Lapusiul-Inferior\";\"other\"\n\"675048\";\"Lăpugiu Inferior\";\"other\"\n\"675048\";\"Lăpusiul-Inferior\";\"other\"\n\"675071\";\"Laloşu\";\"main\"\n\"675071\";\"Lalosu\";\"ascii\"\n\"675071\";\"Lalosiu\";\"other\"\n\"675071\";\"Lalosul\";\"other\"\n\"675071\";\"Laloşiu\";\"other\"\n\"675071\";\"Laloşul\";\"other\"\n\"675085\";\"Lădeşti\";\"main\"\n\"675085\";\"Ladesti\";\"ascii\"\n\"675130\";\"Jurilovca\";\"main\"\n\"675130\";\"Jurilofca\";\"other\"\n\"675130\";\"Jurilofka\";\"other\"\n\"675162\";\"Jucu Herghelia\";\"main\"\n\"675168\";\"Josenii Bîrgăului\";\"main\"\n\"675168\";\"Josenii Birgaului\";\"ascii\"\n\"675168\";\"Josenii-Bargaului\";\"other\"\n\"675168\";\"Josenii-Bârgăului\";\"other\"\n\"675171\";\"Joseni\";\"main\"\n\"675171\";\"Alfalu\";\"other\"\n\"675171\";\"Alfalù\";\"other\"\n\"675171\";\"Gyergyoalfalu\";\"other\"\n\"675171\";\"Gyergyóalfalu\";\"other\"\n\"675171\";\"Joseri\";\"other\"\n\"675182\";\"Jorăşti\";\"main\"\n\"675182\";\"Jorasti\";\"ascii\"\n\"675193\";\"Joiţa\";\"main\"\n\"675193\";\"Joita\";\"ascii\"\n\"675208\";\"Jitia\";\"main\"\n\"675215\";\"Jirlău\";\"main\"\n\"675215\";\"Jirlau\";\"ascii\"\n\"675215\";\"Jirlaul\";\"other\"\n\"675215\";\"Jirlăul\";\"other\"\n\"675218\";\"Jina\";\"main\"\n\"675223\";\"Jimbolia\";\"main\"\n\"675223\";\"Dzombolj\";\"other\"\n\"675223\";\"Hacfeld\";\"other\"\n\"675223\";\"Haczfeld\";\"other\"\n\"675223\";\"Hatzfeld\";\"other\"\n\"675223\";\"Nacfeld\";\"other\"\n\"675223\";\"Zimbolija\";\"other\"\n\"675223\";\"Zombolj\";\"other\"\n\"675223\";\"Zsombolya\";\"other\"\n\"675223\";\"Žimbolija\";\"other\"\n\"675223\";\"Žombolj\";\"other\"\n\"675227\";\"Jilavele\";\"main\"\n\"675231\";\"Jilava\";\"main\"\n\"675235\";\"Jijila\";\"main\"\n\"675251\";\"Jidveiu\";\"main\"\n\"675251\";\"Jidvei\";\"other\"\n\"675251\";\"Jidveiul\";\"other\"\n\"675258\";\"Jichişu de Jos\";\"main\"\n\"675258\";\"Jichisu de Jos\";\"ascii\"\n\"675258\";\"Jichisul-de-Jos\";\"other\"\n\"675258\";\"Jichişul-de-Jos\";\"other\"\n\"675261\";\"Jibou\";\"main\"\n\"675261\";\"Jibau\";\"other\"\n\"675261\";\"Jiboul\";\"other\"\n\"675266\";\"Jibert\";\"main\"\n\"675267\";\"Jiana Veche\";\"main\"\n\"675285\";\"Jegălia\";\"main\"\n\"675285\";\"Jegalia\";\"ascii\"\n\"675290\";\"Jebel\";\"main\"\n\"675290\";\"Schebel\";\"other\"\n\"675290\";\"Szephely\";\"other\"\n\"675290\";\"Széphely\";\"other\"\n\"675290\";\"Zsebely\";\"other\"\n\"675293\";\"Jariştea\";\"main\"\n\"675293\";\"Jaristea\";\"ascii\"\n\"675295\";\"Jamu Mare\";\"main\"\n\"675295\";\"Jamul-Mare\";\"other\"\n\"675295\";\"Nagyzsam\";\"other\"\n\"675295\";\"Nagyzsám\";\"other\"\n\"675326\";\"Izvoru de Sus\";\"main\"\n\"675326\";\"Isvorul de Sus\";\"other\"\n\"675329\";\"Izvoru Crişului\";\"main\"\n\"675329\";\"Izvoru Crisului\";\"ascii\"\n\"675329\";\"Izvorul Crisului\";\"other\"\n\"675329\";\"Izvorul Crişului\";\"other\"\n\"675331\";\"Izvoru Bârzii\";\"main\"\n\"675331\";\"Izvoru Barzii\";\"ascii\"\n\"675331\";\"Izvoru Birzei\";\"other\"\n\"675331\";\"Izvoru Birzii\";\"other\"\n\"675331\";\"Izvoru Bîrzei\";\"other\"\n\"675331\";\"Izvoru Bîrzii\";\"other\"\n\"675331\";\"Izvorul Barzej\";\"other\"\n\"675333\";\"Izvoru Berheciului\";\"main\"\n\"675333\";\"Cimbala\";\"other\"\n\"675333\";\"Gloduri\";\"other\"\n\"675333\";\"Targel Glodurile\";\"other\"\n\"675333\";\"Tirgu Gloduri\";\"other\"\n\"675333\";\"Tîrgu Gloduri\";\"other\"\n\"675365\";\"Izvoarele Sucevei\";\"main\"\n\"675365\";\"Isvoarele Sucevii\";\"other\"\n\"675365\";\"Isvor\";\"other\"\n\"675365\";\"Isvorul\";\"other\"\n\"675365\";\"Izvor\";\"other\"\n\"675365\";\"Jzwor\";\"other\"\n\"675384\";\"Izvoarele\";\"main\"\n\"675384\";\"Filimon Sirbu\";\"other\"\n\"675384\";\"Filimon Sîrbu\";\"other\"\n\"675385\";\"Izvoarele\";\"main\"\n\"675385\";\"Isvoarele\";\"other\"\n\"675389\";\"Izvoarele\";\"main\"\n\"675389\";\"Isvoarele\";\"other\"\n\"675393\";\"Izvoarele\";\"main\"\n\"675393\";\"Beiu\";\"other\"\n\"675393\";\"Beiul\";\"other\"\n\"675394\";\"Izvoarele\";\"main\"\n\"675394\";\"Gauriciu\";\"other\"\n\"675394\";\"Gauriciul\";\"other\"\n\"675394\";\"Găuriciu\";\"other\"\n\"675394\";\"Găuriciul\";\"other\"\n\"675398\";\"Izvoare\";\"main\"\n\"675398\";\"Rudari\";\"other\"\n\"675407\";\"Izbiceni\";\"main\"\n\"675407\";\"Isbiceni\";\"other\"\n\"675417\";\"Iveşti\";\"main\"\n\"675417\";\"Ivesti\";\"ascii\"\n\"675417\";\"Ivestii\";\"other\"\n\"675417\";\"Iveştii\";\"other\"\n\"675418\";\"Iveşti\";\"main\"\n\"675418\";\"Ivesti\";\"ascii\"\n\"675462\";\"Isverna\";\"main\"\n\"675462\";\"Izverna\";\"other\"\n\"675471\";\"Istria\";\"main\"\n\"675471\";\"Caranasuf\";\"other\"\n\"675471\";\"Caranasut\";\"other\"\n\"675471\";\"Histria\";\"other\"\n\"675471\";\"Istrus\";\"other\"\n\"675471\";\"Karanasuf\";\"other\"\n\"675480\";\"Islaz\";\"main\"\n\"675480\";\"Islazu\";\"other\"\n\"675480\";\"Islazul\";\"other\"\n\"675480\";\"Izlaz\";\"other\"\n\"675489\";\"Işalniţa\";\"main\"\n\"675489\";\"Isalnita\";\"ascii\"\n\"675495\";\"Isaccea\";\"main\"\n\"675495\";\"Isakcha\";\"other\"\n\"675506\";\"Iratoşu\";\"main\"\n\"675506\";\"Iratosu\";\"ascii\"\n\"675506\";\"Iratos\";\"other\"\n\"675506\";\"Iratosul\";\"other\"\n\"675506\";\"Iratoş\";\"other\"\n\"675506\";\"Iratoşul\";\"other\"\n\"675509\";\"Ipoteşti\";\"main\"\n\"675509\";\"Ipotesti\";\"ascii\"\n\"675512\";\"Ipatele\";\"main\"\n\"675512\";\"Halita\";\"other\"\n\"675512\";\"Haliţa\";\"other\"\n\"675512\";\"Petresti\";\"other\"\n\"675512\";\"Petreşti\";\"other\"\n\"675514\";\"Ip\";\"main\"\n\"675530\";\"Ion Roată\";\"main\"\n\"675530\";\"Ion Roata\";\"ascii\"\n\"675530\";\"Principesa Maria\";\"other\"\n\"675533\";\"Ion Luca Caragiale\";\"main\"\n\"675533\";\"Caragiale\";\"other\"\n\"675533\";\"I.L. Caragiale\";\"other\"\n\"675533\";\"Margineni-Monastire\";\"other\"\n\"675533\";\"Vornicu-Margineanu\";\"other\"\n\"675533\";\"Vornicu-Mărgineanu\";\"other\"\n\"675533\";\"Vornicul\";\"other\"\n\"675533\";\"Vornicul Margineanu\";\"other\"\n\"675533\";\"Vornicul Mărgineanu\";\"other\"\n\"675547\";\"Ioneşti\";\"main\"\n\"675547\";\"Ionesti\";\"ascii\"\n\"675550\";\"Ioneşti\";\"main\"\n\"675550\";\"Ionesti\";\"ascii\"\n\"675556\";\"Ion Corvin\";\"main\"\n\"675556\";\"Cuzgun\";\"other\"\n\"675556\";\"Ioan Corvin\";\"other\"\n\"675585\";\"Întorsura Buzăului\";\"main\"\n\"675585\";\"Intorsura Buzaului\";\"ascii\"\n\"675585\";\"Intorsatura-Buzaului\";\"other\"\n\"675585\";\"Intorsura Buzauli\";\"other\"\n\"675585\";\"Intorsura Buzăuli\";\"other\"\n\"675585\";\"Magyarbodza\";\"other\"\n\"675590\";\"Însurăţei\";\"main\"\n\"675590\";\"Insuratei\";\"ascii\"\n\"675604\";\"Ineu\";\"main\"\n\"675606\";\"Ineu\";\"main\"\n\"675606\";\"Borosjeno\";\"other\"\n\"675606\";\"Yanova\";\"other\"\n\"675606\";\"yanwh\";\"other\"\n\"675606\";\"Инеу\";\"other\"\n\"675606\";\"یانوه\";\"other\"\n\"675612\";\"Independenţa\";\"main\"\n\"675612\";\"Independenta\";\"ascii\"\n\"675614\";\"Independenţa\";\"main\"\n\"675614\";\"Independenta\";\"ascii\"\n\"675615\";\"Independenţa\";\"main\"\n\"675615\";\"Independenta\";\"ascii\"\n\"675615\";\"Bairamdede\";\"other\"\n\"675624\";\"Imper\";\"main\"\n\"675624\";\"Kaszoninper\";\"other\"\n\"675624\";\"Kàszoninper\";\"other\"\n\"675629\";\"Ilva Mică\";\"main\"\n\"675629\";\"Ilva Mica\";\"ascii\"\n\"675632\";\"Ilva Mare\";\"main\"\n\"675632\";\"Nagyilva\";\"other\"\n\"675637\";\"Iloviţa\";\"main\"\n\"675637\";\"Ilovita\";\"ascii\"\n\"675637\";\"Hovita\";\"other\"\n\"675637\";\"Hoviţa\";\"other\"\n\"675637\";\"Ilovica\";\"other\"\n\"675664\";\"Ilieni\";\"main\"\n\"675664\";\"Ilyefalva\";\"other\"\n\"675670\";\"Ilia\";\"main\"\n\"675678\";\"Ileanda\";\"main\"\n\"675678\";\"Nagyilonda\";\"other\"\n\"675683\";\"Ileana\";\"main\"\n\"675703\";\"Ighiu\";\"main\"\n\"675703\";\"Igen\";\"other\"\n\"675703\";\"Ighiul\";\"other\"\n\"675703\";\"Magyarigen\";\"other\"\n\"675721\";\"Ieud\";\"main\"\n\"675721\";\"Jeud\";\"other\"\n\"675721\";\"Jod\";\"other\"\n\"675727\";\"Iernut\";\"main\"\n\"675750\";\"Ideciu de Jos\";\"main\"\n\"675750\";\"Alsoidecs\";\"other\"\n\"675750\";\"Alsòidecs\";\"other\"\n\"675750\";\"Ideciul-de-Jos\";\"other\"\n\"675752\";\"Icuseşti\";\"main\"\n\"675752\";\"Icusesti\";\"ascii\"\n\"675759\";\"Icoana\";\"main\"\n\"675763\";\"Iclod\";\"main\"\n\"675763\";\"Nagyiklod\";\"other\"\n\"675763\";\"Nagyiklód\";\"other\"\n\"675766\";\"Iclănzel\";\"main\"\n\"675766\";\"Iclanzel\";\"ascii\"\n\"675766\";\"Iclanzeiu\";\"other\"\n\"675766\";\"Iclanzelul\";\"other\"\n\"675766\";\"Iclausel\";\"other\"\n\"675766\";\"Iclănzeiu\";\"other\"\n\"675766\";\"Iclănzelul\";\"other\"\n\"675766\";\"Iclăuşel\";\"other\"\n\"675783\";\"Ibăneşti\";\"main\"\n\"675783\";\"Ibanesti\";\"ascii\"\n\"675784\";\"Ibăneşti\";\"main\"\n\"675784\";\"Ibanesti\";\"ascii\"\n\"675784\";\"Libanfalva\";\"other\"\n\"675784\";\"Libànfalva\";\"other\"\n\"675810\";\"Iaşi\";\"main\"\n\"675810\";\"Iasi\";\"ascii\"\n\"675810\";\"Copou\";\"other\"\n\"675810\";\"Copou-Targ\";\"other\"\n\"675810\";\"Copou-Târg\";\"other\"\n\"675810\";\"Galata\";\"other\"\n\"675810\";\"Iasio\";\"other\"\n\"675810\";\"Iassy\";\"other\"\n\"675810\";\"Ilasi\";\"other\"\n\"675810\";\"Jash\";\"other\"\n\"675810\";\"Jasi\";\"other\"\n\"675810\";\"Jassenmarkt\";\"other\"\n\"675810\";\"Jassy\";\"other\"\n\"675810\";\"Jaszvasar\";\"other\"\n\"675810\";\"Jaßenmarkt\";\"other\"\n\"675810\";\"Jászvásár\";\"other\"\n\"675810\";\"Munteni\";\"other\"\n\"675810\";\"Pacurari\";\"other\"\n\"675810\";\"Pacuret\";\"other\"\n\"675810\";\"Podgoria\";\"other\"\n\"675810\";\"Păcurari\";\"other\"\n\"675810\";\"Păcureţ\";\"other\"\n\"675810\";\"Socol\";\"other\"\n\"675810\";\"Socola\";\"other\"\n\"675810\";\"Yas\";\"other\"\n\"675810\";\"Yashi\";\"other\"\n\"675810\";\"Yassi\";\"other\"\n\"675810\";\"Yassy\";\"other\"\n\"675810\";\"Yaş\";\"other\"\n\"675810\";\"ya xi\";\"other\"\n\"675810\";\"yashi\";\"other\"\n\"675810\";\"yashy\";\"other\"\n\"675810\";\"Ιάσιο\";\"other\"\n\"675810\";\"Яси\";\"other\"\n\"675810\";\"Яссы\";\"other\"\n\"675810\";\"Яш\";\"other\"\n\"675810\";\"יאשי\";\"other\"\n\"675810\";\"ياشي\";\"other\"\n\"675810\";\"ヤシ\";\"other\"\n\"675810\";\"雅西\";\"other\"\n\"675817\";\"Iara\";\"main\"\n\"675832\";\"Iancu Jianu\";\"main\"\n\"675832\";\"Stirbei\";\"other\"\n\"675832\";\"Ştirbei\";\"other\"\n\"675840\";\"Ianca\";\"main\"\n\"675841\";\"Ianca\";\"main\"\n\"675843\";\"Iana\";\"main\"\n\"675865\";\"Iacobeni\";\"main\"\n\"675868\";\"Iacobeni\";\"main\"\n\"675868\";\"Obeni\";\"other\"\n\"675872\";\"Iablaniţa\";\"main\"\n\"675872\";\"Iablanita\";\"ascii\"\n\"675872\";\"Bela Jablanica\";\"other\"\n\"675872\";\"Jablanita\";\"other\"\n\"675872\";\"Jablaniţa\";\"other\"\n\"675889\";\"Husnicioara\";\"main\"\n\"675892\";\"Huşi\";\"main\"\n\"675892\";\"Husi\";\"ascii\"\n\"675892\";\"Gusi\";\"other\"\n\"675892\";\"Гуси\";\"other\"\n\"675896\";\"Husasău de Tinca\";\"main\"\n\"675896\";\"Husasau de Tinca\";\"ascii\"\n\"675896\";\"Husasaul-de-Tinca\";\"other\"\n\"675896\";\"Husasăul-de-Tinca\";\"other\"\n\"675896\";\"Hususau de Bihor\";\"other\"\n\"675896\";\"Hususău de Bihor\";\"other\"\n\"675901\";\"Hurueşti\";\"main\"\n\"675901\";\"Huruesti\";\"ascii\"\n\"675901\";\"Huruestii\";\"other\"\n\"675901\";\"Hurueştii\";\"other\"\n\"675909\";\"Hurezani\";\"main\"\n\"675909\";\"Hurezani de Sus\";\"other\"\n\"675918\";\"Hunedoara\";\"main\"\n\"675918\";\"Khunedoara\";\"other\"\n\"675918\";\"Vajdahunyad\";\"other\"\n\"675918\";\"Хунедоара\";\"other\"\n\"675918\";\"חונדוארה\";\"other\"\n\"675929\";\"Hulubeşti\";\"main\"\n\"675929\";\"Hulubesti\";\"ascii\"\n\"675937\";\"Huedin\";\"main\"\n\"675937\";\"Banffyhunyad\";\"other\"\n\"675937\";\"Khuedin\";\"other\"\n\"675937\";\"Хуедин\";\"other\"\n\"675941\";\"Hudeşti\";\"main\"\n\"675941\";\"Hudesti\";\"ascii\"\n\"675941\";\"Hudesti Mari\";\"other\"\n\"675941\";\"Hudesti-Lupeni\";\"other\"\n\"675941\";\"Hudeşti-Lupeni\";\"other\"\n\"675941\";\"Lupeni\";\"other\"\n\"675968\";\"Hotarele\";\"main\"\n\"675983\";\"Horodnicu de Sus\";\"main\"\n\"675983\";\"Horodnicul-de-Sus\";\"other\"\n\"675987\";\"Horodniceni\";\"main\"\n\"675993\";\"Horoatu Crasnei\";\"main\"\n\"675993\";\"Horoatul Crasnei\";\"other\"\n\"675999\";\"Horleşti\";\"main\"\n\"675999\";\"Horlesti\";\"ascii\"\n\"676012\";\"Horia\";\"main\"\n\"676012\";\"Orta Chioi\";\"other\"\n\"676012\";\"Regina-Maria\";\"other\"\n\"676013\";\"Horia\";\"main\"\n\"676013\";\"Muskubei\";\"other\"\n\"676013\";\"Muslu-Bei\";\"other\"\n\"676016\";\"Horgeşti\";\"main\"\n\"676016\";\"Horgesti\";\"ascii\"\n\"676026\";\"Horezu\";\"main\"\n\"676050\";\"Homorodu de Jos\";\"main\"\n\"676050\";\"Alsohomorod\";\"other\"\n\"676050\";\"Alsóhomoród\";\"other\"\n\"676050\";\"Homorod-de Jos\";\"other\"\n\"676050\";\"Homorodul-de-Jos\";\"other\"\n\"676056\";\"Homorod\";\"main\"\n\"676063\";\"Homocea\";\"main\"\n\"676070\";\"Holod\";\"main\"\n\"676078\";\"Holboca\";\"main\"\n\"676087\";\"Hoghiz\";\"main\"\n\"676089\";\"Hoghilag\";\"main\"\n\"676094\";\"Hodoşa\";\"main\"\n\"676094\";\"Hodosa\";\"ascii\"\n\"676094\";\"Szekelyhodos\";\"other\"\n\"676094\";\"Szèkelyhodos\";\"other\"\n\"676106\";\"Hodod\";\"main\"\n\"676106\";\"Hadad\";\"other\"\n\"676124\";\"Hodac\";\"main\"\n\"676124\";\"Gorgenyhodak\";\"other\"\n\"676124\";\"Gorgenyhodák\";\"other\"\n\"676127\";\"Hoceni\";\"main\"\n\"676127\";\"Hoceni Targ\";\"other\"\n\"676127\";\"Hoceni Tirg\";\"other\"\n\"676127\";\"Hoceni Târg\";\"other\"\n\"676127\";\"Hoceni Tîrg\";\"other\"\n\"676138\";\"Hlipiceni\";\"main\"\n\"676138\";\"Cobiceni\";\"other\"\n\"676138\";\"Odaia Veche\";\"other\"\n\"676138\";\"Slobozia-Hlipiceni\";\"other\"\n\"676155\";\"Hîrtieşti\";\"main\"\n\"676155\";\"Hirtiesti\";\"ascii\"\n\"676155\";\"Hartiesti\";\"other\"\n\"676155\";\"Hartiestii\";\"other\"\n\"676155\";\"Hârtiestii\";\"other\"\n\"676155\";\"Hârtieşti\";\"other\"\n\"676163\";\"Hîrşova\";\"main\"\n\"676163\";\"Hirsova\";\"ascii\"\n\"676163\";\"Harosora\";\"other\"\n\"676163\";\"Harsova\";\"other\"\n\"676163\";\"Hâroşora\";\"other\"\n\"676163\";\"Hârşova\";\"other\"\n\"676163\";\"Khursovo\";\"other\"\n\"676163\";\"khrswh\";\"other\"\n\"676163\";\"Хърсово\";\"other\"\n\"676163\";\"خرسوه\";\"other\"\n\"676167\";\"Hîrseşti\";\"main\"\n\"676167\";\"Hirsesti\";\"ascii\"\n\"676167\";\"Harsesti\";\"other\"\n\"676167\";\"Hârseşti\";\"other\"\n\"676169\";\"Hîrşeni\";\"main\"\n\"676169\";\"Hirseni\";\"ascii\"\n\"676169\";\"Harseni\";\"other\"\n\"676169\";\"Hârseni\";\"other\"\n\"676176\";\"Hîrlău\";\"main\"\n\"676176\";\"Hirlau\";\"ascii\"\n\"676176\";\"Harlau\";\"other\"\n\"676176\";\"Hârlau\";\"other\"\n\"676186\";\"Hinova\";\"main\"\n\"676194\";\"Hilişeu-Horia\";\"main\"\n\"676194\";\"Hiliseu-Horia\";\"ascii\"\n\"676194\";\"Hiliseu-Curt\";\"other\"\n\"676194\";\"Hiliseul Curt\";\"other\"\n\"676194\";\"Hilişeu-Curt\";\"other\"\n\"676194\";\"Hilişeul Curt\";\"other\"\n\"676203\";\"Hidişelu de Sus\";\"main\"\n\"676203\";\"Hidiselu de Sus\";\"ascii\"\n\"676203\";\"Hidiselul-de Sus\";\"other\"\n\"676203\";\"Hidişelul-de Sus\";\"other\"\n\"676212\";\"Hida\";\"main\"\n\"676212\";\"Hidalma\";\"other\"\n\"676212\";\"Hidalmas\";\"other\"\n\"676212\";\"Hidalmás\";\"other\"\n\"676237\";\"Hereclean\";\"main\"\n\"676262\";\"Helegiu\";\"main\"\n\"676262\";\"Helegiul\";\"other\"\n\"676268\";\"Havîrna\";\"main\"\n\"676268\";\"Havirna\";\"ascii\"\n\"676268\";\"Havarna\";\"other\"\n\"676268\";\"Havârna\";\"other\"\n\"676277\";\"Haţeg\";\"main\"\n\"676277\";\"Hateg\";\"ascii\"\n\"676277\";\"Hatszeg\";\"other\"\n\"676277\";\"Hotzing\";\"other\"\n\"676277\";\"Hátszeg\";\"other\"\n\"676277\";\"Hötzing\";\"other\"\n\"676287\";\"Hăşmaş\";\"main\"\n\"676287\";\"Hasmas\";\"ascii\"\n\"676287\";\"Belhagymas\";\"other\"\n\"676287\";\"Bélhagymás\";\"other\"\n\"676287\";\"Hagymas\";\"other\"\n\"676287\";\"Hagymás\";\"other\"\n\"676287\";\"Hatzmas\";\"other\"\n\"676287\";\"Hesmas\";\"other\"\n\"676287\";\"Hesmás\";\"other\"\n\"676302\";\"Hărmăneasa\";\"main\"\n\"676302\";\"Harmaneasa\";\"ascii\"\n\"676302\";\"Helesteni Harmaneasa\";\"other\"\n\"676302\";\"Helesteni Hărmăneasa\";\"other\"\n\"676304\";\"Hărman\";\"main\"\n\"676304\";\"Harman\";\"ascii\"\n\"676304\";\"Herman\";\"other\"\n\"676304\";\"Honigberg\";\"other\"\n\"676304\";\"Szaszhermany\";\"other\"\n\"676314\";\"Hărău\";\"main\"\n\"676314\";\"Harau\";\"ascii\"\n\"676314\";\"Haraul\";\"other\"\n\"676314\";\"Hărăul\";\"other\"\n\"676331\";\"Hangu\";\"main\"\n\"676331\";\"Hangul\";\"other\"\n\"676335\";\"Hăneşti\";\"main\"\n\"676335\";\"Hanesti\";\"ascii\"\n\"676335\";\"Hanescii\";\"other\"\n\"676335\";\"Hânescii\";\"other\"\n\"676343\";\"Hamcearca\";\"main\"\n\"676351\";\"Halmeu\";\"main\"\n\"676351\";\"Halmeriu\";\"other\"\n\"676354\";\"Halmăşd\";\"main\"\n\"676354\";\"Halmasd\";\"ascii\"\n\"676354\";\"Halmajd\";\"other\"\n\"676354\";\"Halmăjd\";\"other\"\n\"676356\";\"Hălmagiu\";\"main\"\n\"676356\";\"Halmagiu\";\"ascii\"\n\"676356\";\"Grosshalmagen\";\"other\"\n\"676356\";\"Halmagy\";\"other\"\n\"676356\";\"Halmágy\";\"other\"\n\"676356\";\"Hamagiul\";\"other\"\n\"676356\";\"Hămagiul\";\"other\"\n\"676356\";\"Nagyhalmagy\";\"other\"\n\"676356\";\"Nagyhalmágy\";\"other\"\n\"676358\";\"Hălmăgel\";\"main\"\n\"676358\";\"Halmagel\";\"ascii\"\n\"676358\";\"Halmagy\";\"other\"\n\"676358\";\"Halmágy\";\"other\"\n\"676358\";\"Kishalmagy\";\"other\"\n\"676358\";\"Kishalmágy\";\"other\"\n\"676368\";\"Hălchiu\";\"main\"\n\"676368\";\"Halchiu\";\"ascii\"\n\"676368\";\"Heldsdorf\";\"other\"\n\"676371\";\"Hălăuceşti\";\"main\"\n\"676371\";\"Halaucesti\";\"ascii\"\n\"676396\";\"Hăghig\";\"main\"\n\"676396\";\"Haghig\";\"ascii\"\n\"676426\";\"Guşoeni\";\"main\"\n\"676426\";\"Gusoeni\";\"ascii\"\n\"676426\";\"Butari\";\"other\"\n\"676438\";\"Gurghiu\";\"main\"\n\"676438\";\"Gorgeny\";\"other\"\n\"676438\";\"Gorgenyszentimre\";\"other\"\n\"676438\";\"Gurghiul\";\"other\"\n\"676438\";\"Görgényszentimre\";\"other\"\n\"676438\";\"Gőrgeny\";\"other\"\n\"676447\";\"Gurbăneşti\";\"main\"\n\"676447\";\"Gurbanesti\";\"ascii\"\n\"676455\";\"Gura Viţioarei\";\"main\"\n\"676455\";\"Gura Vitioarei\";\"ascii\"\n\"676462\";\"Gura Văii\";\"main\"\n\"676462\";\"Gura Vaii\";\"ascii\"\n\"676462\";\"Gura Vaei\";\"other\"\n\"676462\";\"Gura Văei\";\"other\"\n\"676474\";\"Gura Vadului\";\"main\"\n\"676478\";\"Gura Teghii\";\"main\"\n\"676478\";\"Gura Teohii\";\"other\"\n\"676481\";\"Gura Şuţii\";\"main\"\n\"676481\";\"Gura Sutii\";\"ascii\"\n\"676481\";\"Gura Sutei\";\"other\"\n\"676481\";\"Gura Şuţei\";\"other\"\n\"676495\";\"Gura Rîului\";\"main\"\n\"676495\";\"Gura Riului\";\"ascii\"\n\"676495\";\"Gura Rauhii\";\"other\"\n\"676495\";\"Gura Rauhui\";\"other\"\n\"676495\";\"Gura Răuhii\";\"other\"\n\"676495\";\"Gura Răuhui\";\"other\"\n\"676495\";\"Gura-Raului\";\"other\"\n\"676495\";\"Gura-Râului\";\"other\"\n\"676527\";\"Gura Humorului\";\"main\"\n\"676527\";\"Gura Homorului\";\"other\"\n\"676527\";\"Gura-Humourlui\";\"other\"\n\"676530\";\"Gurahonţ\";\"main\"\n\"676530\";\"Gurahont\";\"ascii\"\n\"676530\";\"Baltele\";\"other\"\n\"676530\";\"Baltfalva\";\"other\"\n\"676530\";\"Balthelye\";\"other\"\n\"676530\";\"Baltyele\";\"other\"\n\"676530\";\"Báltfalva\";\"other\"\n\"676530\";\"Báltyele\";\"other\"\n\"676530\";\"Gurahoncz\";\"other\"\n\"676530\";\"Honcto\";\"other\"\n\"676530\";\"Honctő\";\"other\"\n\"676530\";\"Iosasel\";\"other\"\n\"676530\";\"Iosaşel\";\"other\"\n\"676530\";\"Joszashely\";\"other\"\n\"676530\";\"Jószáshely\";\"other\"\n\"676537\";\"Gura Foii\";\"main\"\n\"676557\";\"Gura Caliţei\";\"main\"\n\"676557\";\"Gura Calitei\";\"ascii\"\n\"676588\";\"Gugeşti\";\"main\"\n\"676588\";\"Gugesti\";\"ascii\"\n\"676596\";\"Grunji\";\"main\"\n\"676604\";\"Grumăzeşti\";\"main\"\n\"676604\";\"Grumazesti\";\"ascii\"\n\"676604\";\"Deleni\";\"other\"\n\"676604\";\"Valea Suseni\";\"other\"\n\"676617\";\"Gruiu\";\"main\"\n\"676617\";\"Gruiu-Fierbinti\";\"other\"\n\"676617\";\"Gruiu-Fierbinţi\";\"other\"\n\"676617\";\"Gruiul\";\"other\"\n\"676625\";\"Gruia\";\"main\"\n\"676633\";\"Grozeşti\";\"main\"\n\"676633\";\"Grozesti\";\"ascii\"\n\"676634\";\"Grozeşti\";\"main\"\n\"676634\";\"Grozesti\";\"ascii\"\n\"676653\";\"Groşi\";\"main\"\n\"676653\";\"Grosi\";\"ascii\"\n\"676673\";\"Gropniţa\";\"main\"\n\"676673\";\"Gropnita\";\"ascii\"\n\"676683\";\"Grojdibodu\";\"main\"\n\"676683\";\"Grojdibod\";\"other\"\n\"676683\";\"Grojdibodul\";\"other\"\n\"676706\";\"Griviţa\";\"main\"\n\"676706\";\"Grivita\";\"ascii\"\n\"676707\";\"Griviţa\";\"main\"\n\"676707\";\"Grivita\";\"ascii\"\n\"676708\";\"Griviţa\";\"main\"\n\"676708\";\"Grivita\";\"ascii\"\n\"676713\";\"Grinţieş\";\"main\"\n\"676713\";\"Grinties\";\"ascii\"\n\"676713\";\"Grintiesul Mare\";\"other\"\n\"676713\";\"Grinţieşul Mare\";\"other\"\n\"676719\";\"Grindu\";\"main\"\n\"676719\";\"Pisica\";\"other\"\n\"676720\";\"Grindu\";\"main\"\n\"676720\";\"Grindul\";\"other\"\n\"676755\";\"Greci\";\"main\"\n\"676758\";\"Greci\";\"main\"\n\"676758\";\"Grec\";\"other\"\n\"676762\";\"Greceşti\";\"main\"\n\"676762\";\"Grecesti\";\"ascii\"\n\"676769\";\"Grebenişu de Cîmpie\";\"main\"\n\"676769\";\"Grebenisu de Cimpie\";\"ascii\"\n\"676769\";\"Grebenisul\";\"other\"\n\"676769\";\"Grebenisul-de-Campie\";\"other\"\n\"676769\";\"Grebenişul\";\"other\"\n\"676769\";\"Grebenişul-de-Câmpie\";\"other\"\n\"676774\";\"Greaca\";\"main\"\n\"676778\";\"Greabănu\";\"main\"\n\"676778\";\"Greabanu\";\"ascii\"\n\"676778\";\"Grebanu\";\"other\"\n\"676778\";\"Grebanul\";\"other\"\n\"676778\";\"Grebănu\";\"other\"\n\"676778\";\"Grebănul\";\"other\"\n\"676783\";\"Gratia\";\"main\"\n\"676783\";\"Gratia Mare\";\"other\"\n\"676787\";\"Grăniceşti\";\"main\"\n\"676787\";\"Granicesti\";\"ascii\"\n\"676791\";\"Grăniceri\";\"main\"\n\"676791\";\"Graniceri\";\"ascii\"\n\"676791\";\"Otlaca\";\"other\"\n\"676791\";\"Ottlaka\";\"other\"\n\"676793\";\"Grămeşti\";\"main\"\n\"676793\";\"Gramesti\";\"ascii\"\n\"676798\";\"Grajduri\";\"main\"\n\"676813\";\"Grădiştea\";\"main\"\n\"676813\";\"Gradistea\";\"ascii\"\n\"676813\";\"Gradistea de Sus\";\"other\"\n\"676813\";\"Grădiştea de Sus\";\"other\"\n\"676815\";\"Grădiştea\";\"main\"\n\"676815\";\"Gradistea\";\"ascii\"\n\"676816\";\"Grădiştea\";\"main\"\n\"676816\";\"Gradistea\";\"ascii\"\n\"676819\";\"Grădiştea\";\"main\"\n\"676819\";\"Gradistea\";\"ascii\"\n\"676819\";\"Cacomeanca\";\"other\"\n\"676830\";\"Grădinari\";\"main\"\n\"676830\";\"Gradinari\";\"ascii\"\n\"676830\";\"Cacova\";\"other\"\n\"676830\";\"Cacovo\";\"other\"\n\"676830\";\"Gradinarii\";\"other\"\n\"676830\";\"Gradinaril\";\"other\"\n\"676830\";\"Grădinarii\";\"other\"\n\"676830\";\"Grădinaril\";\"other\"\n\"676830\";\"Kakova\";\"other\"\n\"676831\";\"Grădinari\";\"main\"\n\"676831\";\"Gradinari\";\"ascii\"\n\"676831\";\"Runcu Mic\";\"other\"\n\"676858\";\"Gostinu\";\"main\"\n\"676858\";\"Gostimil\";\"other\"\n\"676858\";\"Gostinul\";\"other\"\n\"676859\";\"Goştinari-Văcăreşti\";\"main\"\n\"676859\";\"Gostinari-Vacaresti\";\"ascii\"\n\"676859\";\"Gostinarii-Vacaresti\";\"other\"\n\"676859\";\"Gostinarii-Văcăreşti\";\"other\"\n\"676866\";\"Gostavăţu\";\"main\"\n\"676866\";\"Gostavatu\";\"ascii\"\n\"676866\";\"Gostavatul\";\"other\"\n\"676866\";\"Gostavăţul\";\"other\"\n\"676866\";\"Gostovatu\";\"other\"\n\"676866\";\"Gostovăţu\";\"other\"\n\"676888\";\"Gornet-Cricov\";\"main\"\n\"676888\";\"Cricov\";\"other\"\n\"676888\";\"Gornetu-Cricov\";\"other\"\n\"676890\";\"Gornet\";\"main\"\n\"676890\";\"Gornetul-Cuib\";\"other\"\n\"676892\";\"Gorneşti\";\"main\"\n\"676892\";\"Gornesti\";\"ascii\"\n\"676892\";\"Gernyeszeg\";\"other\"\n\"676907\";\"Gorgota\";\"main\"\n\"676918\";\"Gorbăneşti\";\"main\"\n\"676918\";\"Gorbanesti\";\"ascii\"\n\"676920\";\"Gorban\";\"main\"\n\"676946\";\"Goleşti\";\"main\"\n\"676946\";\"Golesti\";\"ascii\"\n\"676960\";\"Golăeşti\";\"main\"\n\"676960\";\"Golaesti\";\"ascii\"\n\"676969\";\"Goicea\";\"main\"\n\"676969\";\"Goicea Mare\";\"other\"\n\"676972\";\"Gohor\";\"main\"\n\"676972\";\"Gohorul\";\"other\"\n\"676975\";\"Gogoşu\";\"main\"\n\"676975\";\"Gogosu\";\"ascii\"\n\"676975\";\"Gogosiu\";\"other\"\n\"676975\";\"Gogosul\";\"other\"\n\"676975\";\"Gogoşiu\";\"other\"\n\"676975\";\"Gogoşul\";\"other\"\n\"676976\";\"Gogoşu\";\"main\"\n\"676976\";\"Gogosu\";\"ascii\"\n\"676976\";\"Gogosul\";\"other\"\n\"676976\";\"Gogoşul\";\"other\"\n\"676981\";\"Gogoşari\";\"main\"\n\"676981\";\"Gogosari\";\"ascii\"\n\"676981\";\"Gogosarii-Vechi\";\"other\"\n\"676981\";\"Gogoşarii-Vechi\";\"other\"\n\"676995\";\"Goeşti\";\"main\"\n\"676995\";\"Goesti\";\"ascii\"\n\"677003\";\"Godineşti\";\"main\"\n\"677003\";\"Godinesti\";\"ascii\"\n\"677005\";\"Godeni\";\"main\"\n\"677019\";\"Glogova\";\"main\"\n\"677043\";\"Glodeni\";\"main\"\n\"677043\";\"Sarpatak\";\"other\"\n\"677043\";\"Sàrpatak\";\"other\"\n\"677045\";\"Glodeni\";\"main\"\n\"677047\";\"Glodeanu-Siliştea\";\"main\"\n\"677047\";\"Glodeanu-Silistea\";\"ascii\"\n\"677047\";\"Glodeanul Silistea\";\"other\"\n\"677047\";\"Glodeanul Siliştea\";\"other\"\n\"677049\";\"Glodeanu-Sărat\";\"main\"\n\"677049\";\"Glodeanu-Sarat\";\"ascii\"\n\"677049\";\"Glodeanul Sarat\";\"other\"\n\"677049\";\"Glodeanul Sărat\";\"other\"\n\"677060\";\"Glina\";\"main\"\n\"677072\";\"Glimboca\";\"main\"\n\"677072\";\"Novaci\";\"other\"\n\"677085\";\"Glăvăneşti\";\"main\"\n\"677085\";\"Glavanesti\";\"ascii\"\n\"677085\";\"Glavanesii\";\"other\"\n\"677085\";\"Glavăneşii\";\"other\"\n\"677096\";\"Giuvărăşti\";\"main\"\n\"677096\";\"Giuvarasti\";\"ascii\"\n\"677096\";\"Giuvaresti\";\"other\"\n\"677096\";\"Giuvăreşti\";\"other\"\n\"677106\";\"Giurgiu\";\"main\"\n\"677106\";\"Gjurgevo\";\"other\"\n\"677106\";\"Gyurgyevo\";\"other\"\n\"677106\";\"Gyurgyevó\";\"other\"\n\"677106\";\"Yergogu\";\"other\"\n\"677106\";\"Yergoğu\";\"other\"\n\"677106\";\"giurgiu\";\"other\"\n\"677106\";\"Гюргево\";\"other\"\n\"677106\";\"გიურგიუ\";\"other\"\n\"677108\";\"Giurgiţa\";\"main\"\n\"677108\";\"Giurgita\";\"ascii\"\n\"677122\";\"Giurgeni\";\"main\"\n\"677135\";\"Giulvăz\";\"main\"\n\"677135\";\"Giulvaz\";\"ascii\"\n\"677135\";\"Gilwas\";\"other\"\n\"677135\";\"Gyulvesz\";\"other\"\n\"677135\";\"Gyulvez\";\"other\"\n\"677135\";\"Gyulvéz\";\"other\"\n\"677135\";\"Gyülvész\";\"other\"\n\"677135\";\"Julves\";\"other\"\n\"677135\";\"Torontalgyulvesz\";\"other\"\n\"677135\";\"Torontálgyülvész\";\"other\"\n\"677143\";\"Giuleşti\";\"main\"\n\"677143\";\"Giulesti\";\"ascii\"\n\"677150\";\"Giubega\";\"main\"\n\"677158\";\"Girov\";\"main\"\n\"677160\";\"Giroc\";\"main\"\n\"677160\";\"Gjirok\";\"other\"\n\"677160\";\"Gyirok\";\"other\"\n\"677160\";\"Gyureg\";\"other\"\n\"677160\";\"Gyurok\";\"other\"\n\"677160\";\"Gyüreg\";\"other\"\n\"677160\";\"Gyürök\";\"other\"\n\"677165\";\"Gârnic\";\"main\"\n\"677165\";\"Garnic\";\"ascii\"\n\"677165\";\"Gernik\";\"other\"\n\"677165\";\"Girnic\";\"other\"\n\"677165\";\"Gîrnic\";\"other\"\n\"677175\";\"Gîrliciu\";\"main\"\n\"677175\";\"Girliciu\";\"ascii\"\n\"677175\";\"Garliciu\";\"other\"\n\"677175\";\"Garliciul\";\"other\"\n\"677175\";\"Gârliciu\";\"other\"\n\"677175\";\"Gârliciul\";\"other\"\n\"677180\";\"Gîrleni\";\"main\"\n\"677180\";\"Girleni\";\"ascii\"\n\"677180\";\"Garleni\";\"other\"\n\"677180\";\"Gârleni\";\"other\"\n\"677186\";\"Gârla-Mare\";\"main\"\n\"677186\";\"Garla-Mare\";\"ascii\"\n\"677186\";\"Girla Mare\";\"other\"\n\"677186\";\"Gîrla Mare\";\"other\"\n\"677192\";\"Girişu de Criş / Kőrösgyíres\";\"main\"\n\"677192\";\"Girisu de Cris / Koroesgyires\";\"ascii\"\n\"677192\";\"Girisul-de-Cris\";\"other\"\n\"677192\";\"Girişul-de-Criş\";\"other\"\n\"677201\";\"Gîrda de Sus\";\"main\"\n\"677201\";\"Girda de Sus\";\"ascii\"\n\"677201\";\"Garda de Sus\";\"other\"\n\"677201\";\"Gârda de Sus\";\"other\"\n\"677205\";\"Gîrcov\";\"main\"\n\"677205\";\"Gircov\";\"ascii\"\n\"677205\";\"Garcovu\";\"other\"\n\"677205\";\"Garcovul\";\"other\"\n\"677205\";\"Gârcovu\";\"other\"\n\"677205\";\"Gârcovul\";\"other\"\n\"677213\";\"Gîrceni\";\"main\"\n\"677213\";\"Girceni\";\"ascii\"\n\"677213\";\"Garceni\";\"other\"\n\"677213\";\"Gârceni\";\"other\"\n\"677219\";\"Gîrbovi\";\"main\"\n\"677219\";\"Girbovi\";\"ascii\"\n\"677219\";\"Garbovi\";\"other\"\n\"677219\";\"Gârbovi\";\"other\"\n\"677234\";\"Gîrbova\";\"main\"\n\"677234\";\"Girbova\";\"ascii\"\n\"677234\";\"Garbova\";\"other\"\n\"677234\";\"Gârbova\";\"other\"\n\"677237\";\"Gîrbou\";\"main\"\n\"677237\";\"Girbou\";\"ascii\"\n\"677237\";\"Garbou\";\"other\"\n\"677237\";\"Gârbou\";\"other\"\n\"677256\";\"Gîngiova\";\"main\"\n\"677256\";\"Gingiova\";\"ascii\"\n\"677256\";\"Gangeova\";\"other\"\n\"677256\";\"Gangiova\";\"other\"\n\"677256\";\"Ghinjova\";\"other\"\n\"677256\";\"Gângeova\";\"other\"\n\"677256\";\"Gângiova\";\"other\"\n\"677270\";\"Gîlgău Almaşului\";\"main\"\n\"677270\";\"Gilgau Almasului\";\"ascii\"\n\"677270\";\"Galgau\";\"other\"\n\"677270\";\"Gilgau\";\"other\"\n\"677270\";\"Gâlgău\";\"other\"\n\"677270\";\"Gîlgău\";\"other\"\n\"677283\";\"Gilău\";\"main\"\n\"677283\";\"Gilau\";\"ascii\"\n\"677283\";\"Gyalu\";\"other\"\n\"677286\";\"Gighera\";\"main\"\n\"677288\";\"Giera\";\"main\"\n\"677288\";\"Djer\";\"other\"\n\"677288\";\"Ger\";\"other\"\n\"677288\";\"Gier\";\"other\"\n\"677288\";\"Gyer\";\"other\"\n\"677288\";\"Gyér\";\"other\"\n\"677288\";\"Gér\";\"other\"\n\"677294\";\"Giarmata\";\"main\"\n\"677294\";\"Gyarmata\";\"other\"\n\"677294\";\"Gyarmatha\";\"other\"\n\"677294\";\"Jahrmarkt\";\"other\"\n\"677294\";\"Temesgyarmat\";\"other\"\n\"677299\";\"Ghizela\";\"main\"\n\"677299\";\"Giseladorf\";\"other\"\n\"677299\";\"Giselladorf\";\"other\"\n\"677299\";\"Gizela\";\"other\"\n\"677299\";\"Gizellafalva\";\"other\"\n\"677313\";\"Ghiroda\";\"main\"\n\"677313\";\"Ghiroda Noua\";\"other\"\n\"677313\";\"Ghiroda Nouă\";\"other\"\n\"677313\";\"Giroda\";\"other\"\n\"677331\";\"Ghioroiu\";\"main\"\n\"677331\";\"Ghioroiul\";\"other\"\n\"677333\";\"Ghioroc\";\"main\"\n\"677333\";\"Ghiorac\";\"other\"\n\"677333\";\"Gioroc\";\"other\"\n\"677333\";\"Gyorok\";\"other\"\n\"677357\";\"Ghindari\";\"main\"\n\"677357\";\"Makfalva\";\"other\"\n\"677357\";\"Makkafalva\";\"other\"\n\"677360\";\"Ghindăreşti\";\"main\"\n\"677360\";\"Ghindaresti\";\"ascii\"\n\"677360\";\"Ghizaresti\";\"other\"\n\"677360\";\"Ghizăreşti\";\"other\"\n\"677377\";\"Ghimeş-Făget\";\"main\"\n\"677377\";\"Ghimes-Faget\";\"ascii\"\n\"677382\";\"Ghimbav\";\"main\"\n\"677407\";\"Ghidigeni\";\"main\"\n\"677407\";\"Ghidigenii\";\"other\"\n\"677410\";\"Ghidfalău\";\"main\"\n\"677410\";\"Ghidfalau\";\"ascii\"\n\"677410\";\"Ghidfalaul\";\"other\"\n\"677410\";\"Ghidfalăul\";\"other\"\n\"677410\";\"Ghidialau\";\"other\"\n\"677410\";\"Ghidialău\";\"other\"\n\"677410\";\"Gidofalva\";\"other\"\n\"677410\";\"Gidófalva\";\"other\"\n\"677419\";\"Gherţa Mică\";\"main\"\n\"677419\";\"Gherta Mica\";\"ascii\"\n\"677429\";\"Gherla\";\"main\"\n\"677429\";\"Gerla\";\"other\"\n\"677429\";\"Szamosujvar\";\"other\"\n\"677429\";\"Szamosújvár\";\"other\"\n\"677429\";\"Герла\";\"other\"\n\"677432\";\"Gherghiţa\";\"main\"\n\"677432\";\"Gherghita\";\"ascii\"\n\"677435\";\"Ghergheşti\";\"main\"\n\"677435\";\"Gherghesti\";\"ascii\"\n\"677435\";\"Micesti\";\"other\"\n\"677435\";\"Miceşti\";\"other\"\n\"677441\";\"Ghergheasa\";\"main\"\n\"677441\";\"Ghergheasa-Veche\";\"other\"\n\"677441\";\"Neculai Iorga\";\"other\"\n\"677454\";\"Gherăeşti\";\"main\"\n\"677454\";\"Gheraesti\";\"ascii\"\n\"677458\";\"Gheorgheni\";\"main\"\n\"677458\";\"Gheorghem\";\"other\"\n\"677458\";\"Gheorghieni\";\"other\"\n\"677458\";\"Gyergoszentmiklos\";\"other\"\n\"677458\";\"Gyergyo\";\"other\"\n\"677458\";\"Gyergyoszentmiklos\";\"other\"\n\"677458\";\"Gyergyószentmiklós\";\"other\"\n\"677458\";\"Gyergòszentmiklòs\";\"other\"\n\"677462\";\"Gheorghe Lazăr\";\"main\"\n\"677462\";\"Gheorghe Lazar\";\"ascii\"\n\"677466\";\"Gheorghe Doja\";\"main\"\n\"677466\";\"Dozsa Gyorgy\";\"other\"\n\"677466\";\"Dòzsa György\";\"other\"\n\"677466\";\"Luca\";\"other\"\n\"677479\";\"Ghelinţa\";\"main\"\n\"677479\";\"Ghelinta\";\"ascii\"\n\"677479\";\"Gelence\";\"other\"\n\"677479\";\"Gelencze\";\"other\"\n\"677481\";\"Ghelar\";\"main\"\n\"677481\";\"Gelari\";\"other\"\n\"677481\";\"Ghelari\";\"other\"\n\"677508\";\"George Enescu\";\"main\"\n\"677508\";\"Gheorghe Doja\";\"other\"\n\"677508\";\"Liveni Virnav\";\"other\"\n\"677508\";\"Liveni Vîrnav\";\"other\"\n\"677508\";\"Liventi Varnov\";\"other\"\n\"677508\";\"Liventi Vârnov\";\"other\"\n\"677520\";\"Geoagiu\";\"main\"\n\"677520\";\"Geoagiul\";\"other\"\n\"677532\";\"Gemenele\";\"main\"\n\"677553\";\"Geaca\";\"main\"\n\"677557\";\"Gavojdia\";\"main\"\n\"677578\";\"Găujani\";\"main\"\n\"677578\";\"Gaujani\";\"ascii\"\n\"677581\";\"Gătaia\";\"main\"\n\"677581\";\"Gataia\";\"ascii\"\n\"677581\";\"Gataja\";\"other\"\n\"677581\";\"Gatalja\";\"other\"\n\"677581\";\"Gattaj\";\"other\"\n\"677581\";\"Gattaja\";\"other\"\n\"677581\";\"Gattáj\";\"other\"\n\"677581\";\"Gátalja\";\"other\"\n\"677581\";\"Gáttája\";\"other\"\n\"677583\";\"Garoafa\";\"main\"\n\"677583\";\"Guroala\";\"other\"\n\"677621\";\"Găneşti\";\"main\"\n\"677621\";\"Ganesti\";\"ascii\"\n\"677621\";\"Ganfalau\";\"other\"\n\"677621\";\"Ganfalău\";\"other\"\n\"677625\";\"Ganeş\";\"main\"\n\"677625\";\"Ganes\";\"ascii\"\n\"677628\";\"Găneasa\";\"main\"\n\"677628\";\"Ganeasa\";\"ascii\"\n\"677629\";\"Găneasa\";\"main\"\n\"677629\";\"Ganeasa\";\"ascii\"\n\"677648\";\"Galicea Mare\";\"main\"\n\"677650\";\"Galicea\";\"main\"\n\"677655\";\"Găleşti\";\"main\"\n\"677655\";\"Galesti\";\"ascii\"\n\"677655\";\"Nyaradgalfalva\";\"other\"\n\"677655\";\"Nyàràdgàlfalva\";\"other\"\n\"677667\";\"Galda de Jos\";\"main\"\n\"677672\";\"Gălbinaşi\";\"main\"\n\"677672\";\"Galbinasi\";\"ascii\"\n\"677676\";\"Galbenu\";\"main\"\n\"677676\";\"Galbenul\";\"other\"\n\"677687\";\"Gălăuţaş\";\"main\"\n\"677687\";\"Galautas\";\"ascii\"\n\"677687\";\"Galautasi\";\"other\"\n\"677687\";\"Galocas\";\"other\"\n\"677687\";\"Galócaş\";\"other\"\n\"677687\";\"Gălăuţaşi\";\"other\"\n\"677691\";\"Galaţii Bistriţei\";\"main\"\n\"677691\";\"Galatii Bistritei\";\"ascii\"\n\"677697\";\"Galaţi\";\"main\"\n\"677697\";\"Galati\";\"ascii\"\n\"677697\";\"Galac\";\"other\"\n\"677697\";\"Galacz\";\"other\"\n\"677697\";\"Galatz\";\"other\"\n\"677697\";\"Galaz\";\"other\"\n\"677697\";\"Gałacz\";\"other\"\n\"677697\";\"jia la ci\";\"other\"\n\"677697\";\"Галац\";\"other\"\n\"677697\";\"גאלאץ\";\"other\"\n\"677697\";\"גאלץ\";\"other\"\n\"677697\";\"加拉茨\";\"other\"\n\"677701\";\"Gălăţeni\";\"main\"\n\"677701\";\"Galateni\";\"ascii\"\n\"677701\";\"Galeteni\";\"other\"\n\"677701\";\"Găleteni\";\"other\"\n\"677709\";\"Gălăneşti\";\"main\"\n\"677709\";\"Galanesti\";\"ascii\"\n\"677712\";\"Găiseni\";\"main\"\n\"677712\";\"Gaiseni\";\"ascii\"\n\"677723\";\"Găiceana\";\"main\"\n\"677723\";\"Gaiceana\";\"ascii\"\n\"677723\";\"Tirgu Gaiceana\";\"other\"\n\"677723\";\"Tîrgu Găiceana\";\"other\"\n\"677730\";\"Găgeşti\";\"main\"\n\"677730\";\"Gagesti\";\"ascii\"\n\"677742\";\"Găeşti\";\"main\"\n\"677742\";\"Gaesti\";\"ascii\"\n\"677788\";\"Fundu Moldovei\";\"main\"\n\"677788\";\"Fundul Moldovei\";\"other\"\n\"677788\";\"Moldova\";\"other\"\n\"677790\";\"Fundulea\";\"main\"\n\"677790\";\"Fundule\";\"other\"\n\"677790\";\"Fundulele\";\"other\"\n\"677808\";\"Fundeni\";\"main\"\n\"677808\";\"Ion C. Bratianu\";\"other\"\n\"677812\";\"Fundeni\";\"main\"\n\"677812\";\"Fundenii\";\"other\"\n\"677845\";\"Fulga de Sus\";\"main\"\n\"677852\";\"Frunzi\";\"main\"\n\"677870\";\"Frumuşiţa\";\"main\"\n\"677870\";\"Frumusita\";\"ascii\"\n\"677872\";\"Frumuşica\";\"main\"\n\"677872\";\"Frumusica\";\"ascii\"\n\"677872\";\"Frumusica-Targ\";\"other\"\n\"677872\";\"Frumuşica-Târg\";\"other\"\n\"677872\";\"Targ Frumusica\";\"other\"\n\"677872\";\"Târg Frumuşica\";\"other\"\n\"677880\";\"Frumuşani\";\"main\"\n\"677880\";\"Frumusani\";\"ascii\"\n\"677882\";\"Frumosu\";\"main\"\n\"677882\";\"Frumosul\";\"other\"\n\"677890\";\"Frumoasa\";\"main\"\n\"677890\";\"Szepviz\";\"other\"\n\"677890\";\"Szépviz\";\"other\"\n\"677891\";\"Frumoasa\";\"main\"\n\"677896\";\"Frînceşti\";\"main\"\n\"677896\";\"Frincesti\";\"ascii\"\n\"677896\";\"Francesti\";\"other\"\n\"677896\";\"Frincesti-Mahalaua Mare\";\"other\"\n\"677896\";\"Frânceşti\";\"other\"\n\"677896\";\"Frînceşti-Mahalaua Mare\";\"other\"\n\"677896\";\"Mahalaua Mare\";\"other\"\n\"677905\";\"Frecăţei\";\"main\"\n\"677905\";\"Frecatei\";\"ascii\"\n\"677905\";\"Frekatei\";\"other\"\n\"677906\";\"Frecăţei\";\"main\"\n\"677906\";\"Frecatei\";\"ascii\"\n\"677918\";\"Frăteşti\";\"main\"\n\"677918\";\"Fratesti\";\"ascii\"\n\"677921\";\"Frătăuţii Vechi\";\"main\"\n\"677921\";\"Fratautii Vechi\";\"ascii\"\n\"677923\";\"Frătăuţii Noi\";\"main\"\n\"677923\";\"Fratautii Noi\";\"ascii\"\n\"677923\";\"Fratauti-Noi\";\"other\"\n\"677923\";\"Fratautii Noui\";\"other\"\n\"677923\";\"Frătăuţi-Noi\";\"other\"\n\"677923\";\"Frătăuţii Noui\";\"other\"\n\"677926\";\"Frata\";\"main\"\n\"677954\";\"Frăsinet\";\"main\"\n\"677954\";\"Frasinet\";\"ascii\"\n\"677954\";\"Frasinetul\";\"other\"\n\"677954\";\"Frăsinetul\";\"other\"\n\"677964\";\"Frasin\";\"main\"\n\"677976\";\"Forotic\";\"main\"\n\"677976\";\"Forotik\";\"other\"\n\"677982\";\"Forăşti\";\"main\"\n\"677982\";\"Forasti\";\"ascii\"\n\"677986\";\"Folteşti\";\"main\"\n\"677986\";\"Foltesti\";\"ascii\"\n\"677998\";\"Foglaş\";\"main\"\n\"677998\";\"Foglas\";\"ascii\"\n\"678005\";\"Foeni\";\"main\"\n\"678006\";\"Foeni\";\"main\"\n\"678006\";\"Feny\";\"other\"\n\"678006\";\"Fény\";\"other\"\n\"678013\";\"Focuri\";\"main\"\n\"678015\";\"Focşani\";\"main\"\n\"678015\";\"Focsani\";\"ascii\"\n\"678015\";\"Foksany\";\"other\"\n\"678015\";\"Fokshani\";\"other\"\n\"678015\";\"Foksány\";\"other\"\n\"678015\";\"Фокшани\";\"other\"\n\"678015\";\"פוקשאן\";\"other\"\n\"678015\";\"פוקשאני\";\"other\"\n\"678050\";\"Floreşti\";\"main\"\n\"678050\";\"Floresti\";\"ascii\"\n\"678063\";\"Floreşti\";\"main\"\n\"678063\";\"Floresti\";\"ascii\"\n\"678064\";\"Floreşti\";\"main\"\n\"678064\";\"Floresti\";\"ascii\"\n\"678089\";\"Fizeşu Gherlii\";\"main\"\n\"678089\";\"Fizesu Gherlii\";\"ascii\"\n\"678089\";\"Fizesul-Gherlei\";\"other\"\n\"678089\";\"Fizeşul-Gherlei\";\"other\"\n\"678098\";\"Fitioneşti\";\"main\"\n\"678098\";\"Fitionesti\";\"ascii\"\n\"678098\";\"Fitionestii\";\"other\"\n\"678098\";\"Fitioneştii\";\"other\"\n\"678120\";\"Fârliug\";\"main\"\n\"678120\";\"Farliug\";\"ascii\"\n\"678120\";\"Firliug\";\"other\"\n\"678120\";\"Furluk\";\"other\"\n\"678120\";\"Fîrliug\";\"other\"\n\"678132\";\"Fîrdea\";\"main\"\n\"678132\";\"Firdea\";\"ascii\"\n\"678132\";\"Fardia\";\"other\"\n\"678132\";\"Fârdia\";\"other\"\n\"678152\";\"Fîntînele\";\"main\"\n\"678152\";\"Fintinele\";\"ascii\"\n\"678152\";\"Fantanele\";\"other\"\n\"678152\";\"Fântânele\";\"other\"\n\"678159\";\"Fîntînele\";\"main\"\n\"678159\";\"Fintinele\";\"ascii\"\n\"678159\";\"Fantanele\";\"other\"\n\"678159\";\"Fântânele\";\"other\"\n\"678159\";\"Gyulakuta\";\"other\"\n\"678162\";\"Fântânele\";\"main\"\n\"678162\";\"Fantanele\";\"ascii\"\n\"678162\";\"Angyalkut\";\"other\"\n\"678162\";\"Angyalkút\";\"other\"\n\"678162\";\"Engelsbrunn\";\"other\"\n\"678162\";\"Fintinele\";\"other\"\n\"678162\";\"Fîntînele\";\"other\"\n\"678162\";\"Kisfalud\";\"other\"\n\"678170\";\"Fîntînele\";\"main\"\n\"678170\";\"Fintinele\";\"ascii\"\n\"678170\";\"Fantanele\";\"other\"\n\"678170\";\"Fantanelele\";\"other\"\n\"678170\";\"Fântânele\";\"other\"\n\"678170\";\"Fântânelele\";\"other\"\n\"678200\";\"Finta Mare\";\"main\"\n\"678200\";\"Finta\";\"other\"\n\"678208\";\"Finiş\";\"main\"\n\"678208\";\"Finis\";\"ascii\"\n\"678208\";\"Fenes\";\"other\"\n\"678208\";\"Fenis\";\"other\"\n\"678208\";\"Varasfenes\";\"other\"\n\"678208\";\"Várasfenes\";\"other\"\n\"678243\";\"Filipeştii de Tîrg\";\"main\"\n\"678243\";\"Filipestii de Tirg\";\"ascii\"\n\"678243\";\"Filipestii de Targ\";\"other\"\n\"678243\";\"Filipeştii de Târg\";\"other\"\n\"678245\";\"Filipeştii de Pădure\";\"main\"\n\"678245\";\"Filipestii de Padure\";\"ascii\"\n\"678248\";\"Filipeşti\";\"main\"\n\"678248\";\"Filipesti\";\"ascii\"\n\"678253\";\"Filipeni\";\"main\"\n\"678253\";\"Lunca\";\"other\"\n\"678261\";\"Filiaşi\";\"main\"\n\"678261\";\"Filiasi\";\"ascii\"\n\"678261\";\"Filias\";\"other\"\n\"678261\";\"Filiaş\";\"other\"\n\"678275\";\"Fildu de Jos\";\"main\"\n\"678275\";\"Felsofuld\";\"other\"\n\"678275\";\"Fildul-de-Jos\";\"other\"\n\"678290\";\"Fieni\";\"main\"\n\"678290\";\"Fierii\";\"other\"\n\"678290\";\"Фиени\";\"other\"\n\"678306\";\"Feteşti\";\"main\"\n\"678306\";\"Fetesti\";\"ascii\"\n\"678348\";\"Felnac\";\"main\"\n\"678348\";\"Fenlak\";\"other\"\n\"678348\";\"Fonlak\";\"other\"\n\"678348\";\"Fönlak\";\"other\"\n\"678352\";\"Feliceni\";\"main\"\n\"678352\";\"Felsoboldogfalva\";\"other\"\n\"678355\";\"Feleacu\";\"main\"\n\"678355\";\"Erdoefelek\";\"other\"\n\"678355\";\"Erdöfelek\";\"other\"\n\"678355\";\"Feleac\";\"other\"\n\"678355\";\"Feleacul\";\"other\"\n\"678358\";\"Feldru\";\"main\"\n\"678358\";\"Feldrul\";\"other\"\n\"678361\";\"Feldioara\";\"main\"\n\"678361\";\"Foeldvar\";\"other\"\n\"678361\";\"Földvár\";\"other\"\n\"678361\";\"Marienburg\";\"other\"\n\"678385\";\"Făureşti\";\"main\"\n\"678385\";\"Fauresti\";\"ascii\"\n\"678393\";\"Făurei\";\"main\"\n\"678393\";\"Faurei\";\"ascii\"\n\"678395\";\"Făurei\";\"main\"\n\"678395\";\"Faurei\";\"ascii\"\n\"678395\";\"Filimon Sarbu\";\"other\"\n\"678395\";\"Filimon Sirbu\";\"other\"\n\"678395\";\"Filimon Sârbu\";\"other\"\n\"678395\";\"Filimon Sîrbu\";\"other\"\n\"678395\";\"I.C. Bratianu\";\"other\"\n\"678395\";\"I.C. Brătianu\";\"other\"\n\"678395\";\"Ion I. C. Bratianu\";\"other\"\n\"678421\";\"Fărtăţeşti\";\"main\"\n\"678421\";\"Fartatesti\";\"ascii\"\n\"678421\";\"Firtatesti\";\"other\"\n\"678421\";\"Fîrtăţeşti\";\"other\"\n\"678425\";\"Fărcaşu\";\"main\"\n\"678425\";\"Farcasu\";\"ascii\"\n\"678425\";\"Farcasul\";\"other\"\n\"678425\";\"Fărcaşul\";\"other\"\n\"678427\";\"Fărcăşeşti\";\"main\"\n\"678427\";\"Farcasesti\";\"ascii\"\n\"678430\";\"Fărcaşele\";\"main\"\n\"678430\";\"Farcasele\";\"ascii\"\n\"678430\";\"Farcasu de Sus\";\"other\"\n\"678430\";\"Farcasul de Sus\";\"other\"\n\"678430\";\"Fărcaşu de Sus\";\"other\"\n\"678430\";\"Fărcaşul de Sus\";\"other\"\n\"678432\";\"Grădinari\";\"main\"\n\"678432\";\"Gradinari\";\"ascii\"\n\"678432\";\"Farcasanca\";\"other\"\n\"678432\";\"Fărcăşanca\";\"other\"\n\"678432\";\"Gradinari Ciocanal\";\"other\"\n\"678432\";\"Gradinari Ciocanu\";\"other\"\n\"678432\";\"Gratia-Farcasanca\";\"other\"\n\"678432\";\"Gratia-Fărcăşanca\";\"other\"\n\"678432\";\"Grădinari Ciocanal\";\"other\"\n\"678432\";\"Grădinari Ciocanu\";\"other\"\n\"678437\";\"Fărcaşa\";\"main\"\n\"678437\";\"Farcasa\";\"ascii\"\n\"678438\";\"Fărcaşa\";\"main\"\n\"678438\";\"Farcasa\";\"ascii\"\n\"678447\";\"Fărău\";\"main\"\n\"678447\";\"Farau\";\"ascii\"\n\"678447\";\"Faraul\";\"other\"\n\"678447\";\"Fărăul\";\"other\"\n\"678451\";\"Faraoaní\";\"main\"\n\"678451\";\"Faraoani\";\"ascii\"\n\"678455\";\"Fărăgău\";\"main\"\n\"678455\";\"Faragau\";\"ascii\"\n\"678455\";\"Faragaul\";\"other\"\n\"678455\";\"Farago\";\"other\"\n\"678455\";\"Faragò\";\"other\"\n\"678455\";\"Fărăgăul\";\"other\"\n\"678459\";\"Fălticeni\";\"main\"\n\"678459\";\"Falticeni\";\"ascii\"\n\"678459\";\"Buciumeni\";\"other\"\n\"678459\";\"Falticenii Vechi\";\"other\"\n\"678459\";\"Fehlticheni\";\"other\"\n\"678459\";\"Fălticenii Vechi\";\"other\"\n\"678459\";\"Gradinile\";\"other\"\n\"678459\";\"Grădinile\";\"other\"\n\"678459\";\"Opriseni\";\"other\"\n\"678459\";\"Oprişeni\";\"other\"\n\"678459\";\"Tampesti\";\"other\"\n\"678459\";\"Timpesti\";\"other\"\n\"678459\";\"Tâmpeşti\";\"other\"\n\"678459\";\"Tîmpeşti\";\"other\"\n\"678459\";\"Фэлтичени\";\"other\"\n\"678462\";\"Fălcoiu\";\"main\"\n\"678462\";\"Falcoiu\";\"ascii\"\n\"678462\";\"Falcoiul\";\"other\"\n\"678462\";\"Fălcoiul\";\"other\"\n\"678465\";\"Fălciu\";\"main\"\n\"678465\";\"Falciu\";\"ascii\"\n\"678465\";\"Falciu Tirg\";\"other\"\n\"678465\";\"Falciu-Targ\";\"other\"\n\"678465\";\"Fălciu Tîrg\";\"other\"\n\"678465\";\"Fălciu-Târg\";\"other\"\n\"678481\";\"Făgeţelu\";\"main\"\n\"678481\";\"Fagetelu\";\"ascii\"\n\"678481\";\"Fagetel\";\"other\"\n\"678481\";\"Fagetelul\";\"other\"\n\"678481\";\"Făgeţel\";\"other\"\n\"678481\";\"Făgeţelul\";\"other\"\n\"678490\";\"Făget\";\"main\"\n\"678490\";\"Faget\";\"ascii\"\n\"678490\";\"Facsad\";\"other\"\n\"678490\";\"Facsád\";\"other\"\n\"678490\";\"Fehdzhet\";\"other\"\n\"678490\";\"Фэджет\";\"other\"\n\"678499\";\"Făgăraş\";\"main\"\n\"678499\";\"Fagaras\";\"ascii\"\n\"678499\";\"Fagaraso\";\"other\"\n\"678499\";\"Fehgehrash\";\"other\"\n\"678499\";\"Fogaras\";\"other\"\n\"678499\";\"Fogarasch\";\"other\"\n\"678499\";\"Făgăraso\";\"other\"\n\"678499\";\"Фэгэраш\";\"other\"\n\"678513\";\"Făcăeni\";\"main\"\n\"678513\";\"Facaeni\";\"ascii\"\n\"678519\";\"Ezeriş\";\"main\"\n\"678519\";\"Ezeris\";\"ascii\"\n\"678519\";\"Ezeres\";\"other\"\n\"678519\";\"Iezeris\";\"other\"\n\"678519\";\"Iezeriş\";\"other\"\n\"678529\";\"Ieşelniţa\";\"main\"\n\"678529\";\"Ieselnita\";\"ascii\"\n\"678529\";\"Eselnita\";\"other\"\n\"678529\";\"Eşelniţa\";\"other\"\n\"678529\";\"Jeselnica\";\"other\"\n\"678529\";\"Jeselnita\";\"other\"\n\"678529\";\"Jeşelniţa\";\"other\"\n\"678535\";\"Ernei\";\"main\"\n\"678535\";\"Erneiul\";\"other\"\n\"678535\";\"Nagyernye\";\"other\"\n\"678546\";\"Eremitu\";\"main\"\n\"678546\";\"Eremitul\";\"other\"\n\"678546\";\"Nyaradremete\";\"other\"\n\"678546\";\"Nyàradremete\";\"other\"\n\"678552\";\"Erbiceni\";\"main\"\n\"678555\";\"Iepureşti\";\"main\"\n\"678555\";\"Iepuresti\";\"ascii\"\n\"678555\";\"Epuresti\";\"other\"\n\"678555\";\"Epureşti\";\"other\"\n\"678587\";\"Eftimie Murgu\";\"main\"\n\"678587\";\"Rudaria\";\"other\"\n\"678587\";\"Rudarija\";\"other\"\n\"678587\";\"Rudăria\";\"other\"\n\"678588\";\"Eforie Sud\";\"main\"\n\"678594\";\"Edera de Jos\";\"main\"\n\"678594\";\"Ederile-de Jos\";\"other\"\n\"678594\";\"Ederue de Jos\";\"other\"\n\"678605\";\"Durneşti\";\"main\"\n\"678605\";\"Durnesti\";\"ascii\"\n\"678649\";\"Dumitreşti-Faţă\";\"main\"\n\"678649\";\"Dumitresti-Fata\";\"ascii\"\n\"678660\";\"Dumitra\";\"main\"\n\"678665\";\"Dumeşti\";\"main\"\n\"678665\";\"Dumesti\";\"ascii\"\n\"678666\";\"Dumeşti\";\"main\"\n\"678666\";\"Dumesti\";\"ascii\"\n\"678666\";\"Cioate\";\"other\"\n\"678666\";\"Dumestii Noi\";\"other\"\n\"678666\";\"Dumeştii Noi\";\"other\"\n\"678680\";\"Dumbrăviţa\";\"main\"\n\"678680\";\"Dumbravita\";\"ascii\"\n\"678688\";\"Dumbrăviţa\";\"main\"\n\"678688\";\"Dumbravita\";\"ascii\"\n\"678688\";\"Uisentes\";\"other\"\n\"678688\";\"Uisenteş\";\"other\"\n\"678688\";\"Ujszentes\";\"other\"\n\"678688\";\"Vadaszerdo\";\"other\"\n\"678688\";\"Vadászerdő\";\"other\"\n\"678688\";\"Újszentes\";\"other\"\n\"678689\";\"Dumbrăviţa\";\"main\"\n\"678689\";\"Dumbravita\";\"ascii\"\n\"678689\";\"Schnackendorf\";\"other\"\n\"678689\";\"Tantari\";\"other\"\n\"678689\";\"Tintari\";\"other\"\n\"678689\";\"Ţânţari\";\"other\"\n\"678689\";\"Ţînţari\";\"other\"\n\"678693\";\"Dumbrăveşti\";\"main\"\n\"678693\";\"Dumbravesti\";\"ascii\"\n\"678700\";\"Dumbrăveni\";\"main\"\n\"678700\";\"Dumbraveni\";\"ascii\"\n\"678704\";\"Dumbrăveni\";\"main\"\n\"678704\";\"Dumbraveni\";\"ascii\"\n\"678704\";\"Elisabethstadt\";\"other\"\n\"678704\";\"Ibasfalau\";\"other\"\n\"678704\";\"Ibaşfalău\";\"other\"\n\"678705\";\"Dumbrăveni\";\"main\"\n\"678705\";\"Dumbraveni\";\"ascii\"\n\"678705\";\"Generalissimul Suvorov\";\"other\"\n\"678705\";\"Plainesti\";\"other\"\n\"678705\";\"Plăineşti\";\"other\"\n\"678705\";\"Suvorov\";\"other\"\n\"678705\";\"Targu Cucu\";\"other\"\n\"678705\";\"Targul Cucului\";\"other\"\n\"678705\";\"Tirgu Cucului\";\"other\"\n\"678705\";\"Târgu Cucu\";\"other\"\n\"678705\";\"Târgul Cucului\";\"other\"\n\"678715\";\"Dumbrava Roşie\";\"main\"\n\"678715\";\"Dumbrava Rosie\";\"ascii\"\n\"678715\";\"Dumbrava Rosie din Deal\";\"other\"\n\"678719\";\"Dumbrava de Sus\";\"main\"\n\"678719\";\"Baltati de Sus\";\"other\"\n\"678719\";\"Baltatii de Sus\";\"other\"\n\"678719\";\"Bălţaţii de Sus\";\"other\"\n\"678752\";\"Dumbrava\";\"main\"\n\"678752\";\"Igazfalva\";\"other\"\n\"678755\";\"Dumbrava\";\"main\"\n\"678755\";\"Dumbrava-Netoti\";\"other\"\n\"678755\";\"Netoti\";\"other\"\n\"678755\";\"Netoţi\";\"other\"\n\"678766\";\"Dulceşti\";\"main\"\n\"678766\";\"Dulcesti\";\"ascii\"\n\"678782\";\"Dudeştii Vechi\";\"main\"\n\"678782\";\"Dudestii Vechi\";\"ascii\"\n\"678782\";\"Altbeschenowa\";\"other\"\n\"678782\";\"Besenje\";\"other\"\n\"678782\";\"Besenova\";\"other\"\n\"678782\";\"Besenova Veche\";\"other\"\n\"678782\";\"Besenyo\";\"other\"\n\"678782\";\"Besenyő\";\"other\"\n\"678782\";\"Beşenova\";\"other\"\n\"678782\";\"Beşenova Veche\";\"other\"\n\"678782\";\"Bešenje\";\"other\"\n\"678782\";\"Obesenyo\";\"other\"\n\"678782\";\"Obessenyo\";\"other\"\n\"678782\";\"Stara Beshenova\";\"other\"\n\"678782\";\"Óbesenyő\";\"other\"\n\"678782\";\"Óbessenyő\";\"other\"\n\"678786\";\"Dudeşti\";\"main\"\n\"678786\";\"Dudesti\";\"ascii\"\n\"678786\";\"Nicolesti-Jianu\";\"other\"\n\"678786\";\"Nicoleşti-Jianu\";\"other\"\n\"678786\";\"Niculesti Jianu\";\"other\"\n\"678786\";\"Niculeşti Jianu\";\"other\"\n\"678792\";\"Duda\";\"main\"\n\"678796\";\"Dubova\";\"main\"\n\"678817\";\"Drobeta-Turnu Severin\";\"main\"\n\"678817\";\"Drobeta Turnu Severin\";\"other\"\n\"678817\";\"Drobeta Turnu-Severin\";\"other\"\n\"678817\";\"Drubeta\";\"other\"\n\"678817\";\"Szoerenyvar\";\"other\"\n\"678817\";\"Szörényvár\";\"other\"\n\"678817\";\"Turnu Severin\";\"other\"\n\"678817\";\"Turnul Severin\";\"other\"\n\"678817\";\"drobeta turnu severin\";\"other\"\n\"678817\";\"Дробета Турну Северин\";\"other\"\n\"678821\";\"Băile Drânceni\";\"main\"\n\"678821\";\"Baile Dranceni\";\"ascii\"\n\"678821\";\"Baile Drinceni\";\"other\"\n\"678821\";\"Băile Drînceni\";\"other\"\n\"678821\";\"Dranceni Sat\";\"other\"\n\"678821\";\"Drinceni-Sat\";\"other\"\n\"678821\";\"Drânceni Sat\";\"other\"\n\"678821\";\"Drînceni-Sat\";\"other\"\n\"678831\";\"Dridu\";\"main\"\n\"678831\";\"Dridu-Movile\";\"other\"\n\"678831\";\"Dridul\";\"other\"\n\"678831\";\"Movila\";\"other\"\n\"678868\";\"Drajna de Jos\";\"main\"\n\"678868\";\"Drajna\";\"other\"\n\"678871\";\"Drăguţeşti\";\"main\"\n\"678871\";\"Dragutesti\";\"ascii\"\n\"678881\";\"Drăguşeni\";\"main\"\n\"678881\";\"Draguseni\";\"ascii\"\n\"678881\";\"Dragusenii\";\"other\"\n\"678881\";\"Drăguşenii\";\"other\"\n\"678883\";\"Drăguşeni\";\"main\"\n\"678883\";\"Draguseni\";\"ascii\"\n\"678886\";\"Drăguşeni\";\"main\"\n\"678886\";\"Draguseni\";\"ascii\"\n\"678886\";\"Diocheti\";\"other\"\n\"678886\";\"Diocheţi\";\"other\"\n\"678886\";\"Dragusen\";\"other\"\n\"678886\";\"Drăguşen\";\"other\"\n\"678894\";\"Dragu\";\"main\"\n\"678894\";\"Drag\";\"other\"\n\"678894\";\"Dragul\";\"other\"\n\"678902\";\"Drăgoteşti\";\"main\"\n\"678902\";\"Dragotesti\";\"ascii\"\n\"678904\";\"Drăgoteşti\";\"main\"\n\"678904\";\"Dragotesti\";\"ascii\"\n\"678908\";\"Dragosloveni\";\"main\"\n\"678908\";\"Dragoslaveni\";\"other\"\n\"678908\";\"Dragoslăveni\";\"other\"\n\"678912\";\"Vodă Dragos\";\"main\"\n\"678912\";\"Voda Dragos\";\"ascii\"\n\"678914\";\"Dragomireşti-Vale\";\"main\"\n\"678914\";\"Dragomiresti-Vale\";\"ascii\"\n\"678914\";\"Dragomiresti-din Vale\";\"other\"\n\"678914\";\"Dragomirestii din Vale\";\"other\"\n\"678914\";\"Dragomireşti-din Vale\";\"other\"\n\"678914\";\"Dragomireştii din Vale\";\"other\"\n\"678922\";\"Dragomireşti\";\"main\"\n\"678922\";\"Dragomiresti\";\"ascii\"\n\"678923\";\"Dragomireşti\";\"main\"\n\"678923\";\"Dragomiresti\";\"ascii\"\n\"678923\";\"Dragomirosti\";\"other\"\n\"678923\";\"Drăgomirosti\";\"other\"\n\"678924\";\"Dragomireşti\";\"main\"\n\"678924\";\"Dragomiresti\";\"ascii\"\n\"678924\";\"Dupa Deal\";\"other\"\n\"678924\";\"După Deal\";\"other\"\n\"678926\";\"Dragomireşti\";\"main\"\n\"678926\";\"Dragomiresti\";\"ascii\"\n\"678934\";\"Drăgoeşti-Snagov\";\"main\"\n\"678934\";\"Dragoesti-Snagov\";\"ascii\"\n\"678934\";\"Dragoesti Znagov\";\"other\"\n\"678934\";\"Dragoestii-Snagov\";\"other\"\n\"678934\";\"Drăgoeşti Znagov\";\"other\"\n\"678934\";\"Drăgoeştii-Snagov\";\"other\"\n\"678934\";\"Znagov\";\"other\"\n\"678942\";\"Drăgoeşti\";\"main\"\n\"678942\";\"Dragoesti\";\"ascii\"\n\"678947\";\"Drăgoeşti\";\"main\"\n\"678947\";\"Dragoesti\";\"ascii\"\n\"678954\";\"Dragodana\";\"main\"\n\"678965\";\"Drăghiceni\";\"main\"\n\"678965\";\"Draghiceni\";\"ascii\"\n\"678974\";\"Drăgeşti\";\"main\"\n\"678974\";\"Dragesti\";\"ascii\"\n\"678978\";\"Drăgăşani\";\"main\"\n\"678978\";\"Dragasani\";\"ascii\"\n\"678978\";\"Drehgehshani\";\"other\"\n\"678978\";\"Дрэгэшани\";\"other\"\n\"678979\";\"Drăganu-Olteni\";\"main\"\n\"678979\";\"Draganu-Olteni\";\"ascii\"\n\"678985\";\"Drăgăneşti-Vlaşca\";\"main\"\n\"678985\";\"Draganesti-Vlasca\";\"ascii\"\n\"678985\";\"Draganasti\";\"other\"\n\"678985\";\"Draganesti\";\"other\"\n\"678985\";\"Drăgăneşti\";\"other\"\n\"678987\";\"Drăgăneşti-Olt\";\"main\"\n\"678987\";\"Draganesti-Olt\";\"ascii\"\n\"678989\";\"Drăgăneşti de Vede\";\"main\"\n\"678989\";\"Draganesti de Vede\";\"ascii\"\n\"678989\";\"Draganesti\";\"other\"\n\"678989\";\"Drăgăneşti\";\"other\"\n\"678997\";\"Drăgăneşti\";\"main\"\n\"678997\";\"Draganesti\";\"ascii\"\n\"678997\";\"Draganfalva\";\"other\"\n\"678997\";\"Dragonyesd\";\"other\"\n\"678997\";\"Dragonyest\";\"other\"\n\"678997\";\"Dragánfalva\";\"other\"\n\"678999\";\"Drăgăneşti\";\"main\"\n\"678999\";\"Draganesti\";\"ascii\"\n\"679002\";\"Drăgăneşti\";\"main\"\n\"679002\";\"Draganesti\";\"ascii\"\n\"679011\";\"Dragalina\";\"main\"\n\"679023\";\"Drăcşani\";\"main\"\n\"679023\";\"Dracsani\";\"ascii\"\n\"679023\";\"Dracsenei\";\"other\"\n\"679023\";\"Drăcşenei\";\"other\"\n\"679034\";\"Douăzeci şi Trei August\";\"main\"\n\"679034\";\"Douazeci si Trei August\";\"ascii\"\n\"679034\";\"Domnita Elena\";\"other\"\n\"679034\";\"Domniţa Elena\";\"other\"\n\"679034\";\"Tatlageac Mare\";\"other\"\n\"679046\";\"Dosu Biricii\";\"main\"\n\"679050\";\"Doştat\";\"main\"\n\"679050\";\"Dostat\";\"ascii\"\n\"679061\";\"Dorolţ\";\"main\"\n\"679061\";\"Dorolt\";\"ascii\"\n\"679061\";\"Dorolti\";\"other\"\n\"679061\";\"Dorolţi\";\"other\"\n\"679061\";\"Pusztadaroc\";\"other\"\n\"679061\";\"Pusztadaróc\";\"other\"\n\"679065\";\"Dorohoi\";\"main\"\n\"679065\";\"Dorohoiu\";\"other\"\n\"679065\";\"Dorokhoj\";\"other\"\n\"679065\";\"Dorokhoy\";\"other\"\n\"679065\";\"Дорохой\";\"other\"\n\"679071\";\"Dorobanţu\";\"main\"\n\"679071\";\"Dorobantu\";\"ascii\"\n\"679071\";\"Dorobantul\";\"other\"\n\"679071\";\"Dorobanţul\";\"other\"\n\"679074\";\"Dorobanţu\";\"main\"\n\"679074\";\"Dorobantu\";\"ascii\"\n\"679074\";\"Dorobantul\";\"other\"\n\"679074\";\"Dorobanţul\";\"other\"\n\"679084\";\"Dorneşti\";\"main\"\n\"679084\";\"Dornesti\";\"ascii\"\n\"679089\";\"Dorna Cîndrenilor\";\"main\"\n\"679089\";\"Dorna Cindrenilor\";\"ascii\"\n\"679089\";\"Dorna-Candrenilor\";\"other\"\n\"679089\";\"Dorna-Cândrenilor\";\"other\"\n\"679092\";\"Dorna\";\"main\"\n\"679095\";\"Dor Mărunt\";\"main\"\n\"679095\";\"Dor Marunt\";\"ascii\"\n\"679097\";\"Dorgoş\";\"main\"\n\"679097\";\"Dorgos\";\"ascii\"\n\"679112\";\"Domneşti-Sârbi\";\"main\"\n\"679112\";\"Domnesti-Sarbi\";\"ascii\"\n\"679112\";\"Domnesti-Sirbi\";\"other\"\n\"679112\";\"Domneşti-Sîrbi\";\"other\"\n\"679118\";\"Domneşti\";\"main\"\n\"679118\";\"Domnesti\";\"ascii\"\n\"679118\";\"Domnestii\";\"other\"\n\"679118\";\"Domneştii\";\"other\"\n\"679124\";\"Domaşnea\";\"main\"\n\"679124\";\"Domasnea\";\"ascii\"\n\"679124\";\"Domasnia\";\"other\"\n\"679124\";\"Domaşnia\";\"other\"\n\"679133\";\"Doljeşti\";\"main\"\n\"679133\";\"Doljesti\";\"ascii\"\n\"679142\";\"Dolheşti\";\"main\"\n\"679142\";\"Dolhesti\";\"ascii\"\n\"679146\";\"Dolhasca\";\"main\"\n\"679156\";\"Doiceşti\";\"main\"\n\"679156\";\"Doicesti\";\"ascii\"\n\"679160\";\"Dognecea\";\"main\"\n\"679160\";\"Dogneca\";\"other\"\n\"679160\";\"Dogneča\";\"other\"\n\"679167\";\"Dofteana\";\"main\"\n\"679171\";\"Doftana\";\"main\"\n\"679180\";\"Doclin\";\"main\"\n\"679180\";\"Doklin\";\"other\"\n\"679191\";\"Dobrun\";\"main\"\n\"679191\";\"Dobrunu\";\"other\"\n\"679191\";\"Dobrunul\";\"other\"\n\"679197\";\"Dobrovăţ\";\"main\"\n\"679197\";\"Dobrovat\";\"ascii\"\n\"679197\";\"Dobrovatii Rusi\";\"other\"\n\"679197\";\"Dobrovăţii Rusi\";\"other\"\n\"679202\";\"Dobroteşti\";\"main\"\n\"679202\";\"Dobrotesti\";\"ascii\"\n\"679206\";\"Dobroteasa\";\"main\"\n\"679213\";\"Dobrosloveni\";\"main\"\n\"679213\";\"Ion Gheorghe Duca\";\"other\"\n\"679217\";\"Dobromir\";\"main\"\n\"679217\";\"Dobromir din Vale\";\"other\"\n\"679217\";\"Dobromir-Vale\";\"other\"\n\"679217\";\"Dobromiru\";\"other\"\n\"679217\";\"Dobromiru din Vale\";\"other\"\n\"679217\";\"Dobromirul din Vale\";\"other\"\n\"679220\";\"Dobroeşti\";\"main\"\n\"679220\";\"Dobroesti\";\"ascii\"\n\"679220\";\"Pricipele Nicolae\";\"other\"\n\"679220\";\"Principele Nicolae\";\"other\"\n\"679228\";\"Dobrin\";\"main\"\n\"679242\";\"Dobreţu\";\"main\"\n\"679242\";\"Dobretu\";\"ascii\"\n\"679242\";\"Dobretul\";\"other\"\n\"679242\";\"Dobreţul\";\"other\"\n\"679248\";\"Dobreşti\";\"main\"\n\"679248\";\"Dobresti\";\"ascii\"\n\"679248\";\"Dobresti in Bihor\";\"other\"\n\"679248\";\"Dobreşti in Bihor\";\"other\"\n\"679253\";\"Dobreşti\";\"main\"\n\"679253\";\"Dobresti\";\"ascii\"\n\"679255\";\"Dobreşti\";\"main\"\n\"679255\";\"Dobresti\";\"ascii\"\n\"679257\";\"Dobreni\";\"main\"\n\"679257\";\"Dobrein\";\"other\"\n\"679258\";\"Dobreni\";\"main\"\n\"679258\";\"Dobrenii\";\"other\"\n\"679267\";\"Dobra\";\"main\"\n\"679269\";\"Dobra\";\"main\"\n\"679277\";\"Dobîrlău\";\"main\"\n\"679277\";\"Dobirlau\";\"ascii\"\n\"679277\";\"Dobarlau\";\"other\"\n\"679277\";\"Doberleu\";\"other\"\n\"679277\";\"Dobârlău\";\"other\"\n\"679279\";\"Dobîrceni\";\"main\"\n\"679279\";\"Dobirceni\";\"ascii\"\n\"679279\";\"Dobarceni\";\"other\"\n\"679279\";\"Dobârceni\";\"other\"\n\"679294\";\"Doba\";\"main\"\n\"679310\";\"Ditrău\";\"main\"\n\"679310\";\"Ditrau\";\"ascii\"\n\"679310\";\"Ditro\";\"other\"\n\"679310\";\"Ditrō\";\"other\"\n\"679310\";\"Gyergyoditro\";\"other\"\n\"679310\";\"Gyergyóditró\";\"other\"\n\"679320\";\"Dîrvari\";\"main\"\n\"679320\";\"Dirvari\";\"ascii\"\n\"679320\";\"Darvari\";\"other\"\n\"679320\";\"Dârvari\";\"other\"\n\"679324\";\"Dîrlos\";\"main\"\n\"679324\";\"Dirlos\";\"ascii\"\n\"679324\";\"Darlos\";\"other\"\n\"679324\";\"Dârlos\";\"other\"\n\"679328\";\"Dîrjiu\";\"main\"\n\"679328\";\"Dirjiu\";\"ascii\"\n\"679328\";\"Darjiu\";\"other\"\n\"679328\";\"Darjiul\";\"other\"\n\"679328\";\"Dârjiu\";\"other\"\n\"679328\";\"Dârjiul\";\"other\"\n\"679328\";\"Szekelyders\";\"other\"\n\"679328\";\"Szèkelyders\";\"other\"\n\"679328\";\"Székelyders\";\"other\"\n\"679335\";\"Dioşti\";\"main\"\n\"679335\";\"Diosti\";\"ascii\"\n\"679340\";\"Diószeg\";\"main\"\n\"679340\";\"Dioszeg\";\"ascii\"\n\"679351\";\"Dîngeni\";\"main\"\n\"679351\";\"Dingeni\";\"ascii\"\n\"679351\";\"Dangeni\";\"other\"\n\"679351\";\"Dângeni\";\"other\"\n\"679372\";\"Dimitrie Cantemir\";\"main\"\n\"679372\";\"Hurduci\";\"other\"\n\"679372\";\"Hurdugi\";\"other\"\n\"679389\";\"Dîmbovicioara\";\"main\"\n\"679389\";\"Dimbovicioara\";\"ascii\"\n\"679389\";\"Dambovicioara\";\"other\"\n\"679389\";\"Dâmbovicioara\";\"other\"\n\"679417\";\"Dieci\";\"main\"\n\"679417\";\"Deakfalva\";\"other\"\n\"679417\";\"Decs\";\"other\"\n\"679417\";\"Decse\";\"other\"\n\"679417\";\"Deákfalva\";\"other\"\n\"679417\";\"Diakfalva\";\"other\"\n\"679417\";\"Diecs\";\"other\"\n\"679417\";\"Diákfalva\";\"other\"\n\"679417\";\"Diécs\";\"other\"\n\"679417\";\"Décs\";\"other\"\n\"679417\";\"Décse\";\"other\"\n\"679428\";\"Dichiseni\";\"main\"\n\"679428\";\"Dichisenii\";\"other\"\n\"679443\";\"Dezna\";\"main\"\n\"679448\";\"Deveselu\";\"main\"\n\"679448\";\"Deveselul\";\"other\"\n\"679450\";\"Devesel\";\"main\"\n\"679450\";\"Deveselu\";\"other\"\n\"679452\";\"Deva\";\"main\"\n\"679452\";\"Diemrich\";\"other\"\n\"679452\";\"Déva\";\"other\"\n\"679452\";\"Дева\";\"other\"\n\"679456\";\"Deta\";\"main\"\n\"679456\";\"Detta\";\"other\"\n\"679456\";\"Vijile Deta\";\"other\"\n\"679456\";\"Дета\";\"other\"\n\"679461\";\"Deseşti\";\"main\"\n\"679461\";\"Desesti\";\"ascii\"\n\"679464\";\"Desa\";\"main\"\n\"679464\";\"Dessa\";\"other\"\n\"679467\";\"Dersca\";\"main\"\n\"679471\";\"Derna\";\"main\"\n\"679477\";\"Denta\";\"main\"\n\"679478\";\"Densuş\";\"main\"\n\"679478\";\"Densus\";\"ascii\"\n\"679478\";\"Demsus\";\"other\"\n\"679478\";\"Demsuş\";\"other\"\n\"679499\";\"Deleşti\";\"main\"\n\"679499\";\"Delesti\";\"ascii\"\n\"679518\";\"Deleni\";\"main\"\n\"679524\";\"Deleni\";\"main\"\n\"679538\";\"Deleni\";\"main\"\n\"679538\";\"Enigea\";\"other\"\n\"679550\";\"Dej\";\"main\"\n\"679550\";\"Des\";\"other\"\n\"679550\";\"Dés\";\"other\"\n\"679550\";\"Дей\";\"other\"\n\"679564\";\"Deda\";\"main\"\n\"679564\";\"Dade\";\"other\"\n\"679564\";\"Deda Bistra\";\"other\"\n\"679564\";\"Déda\";\"other\"\n\"679604\";\"Dealu Morii\";\"main\"\n\"679651\";\"Dealu Dănicei\";\"main\"\n\"679651\";\"Dealu Danicei\";\"ascii\"\n\"679686\";\"Dealu\";\"main\"\n\"679686\";\"Dealul\";\"other\"\n\"679686\";\"Oroszhegy\";\"other\"\n\"679701\";\"Davideşti\";\"main\"\n\"679701\";\"Davidesti\";\"ascii\"\n\"679701\";\"Davidesa\";\"other\"\n\"679701\";\"Davidestii\";\"other\"\n\"679708\";\"Dascălu\";\"main\"\n\"679708\";\"Dascalu\";\"ascii\"\n\"679708\";\"Dascalul\";\"other\"\n\"679708\";\"Dascălul\";\"other\"\n\"679714\";\"Darova Nouă\";\"main\"\n\"679714\";\"Darova Noua\";\"ascii\"\n\"679723\";\"Dărmăneşti\";\"main\"\n\"679723\";\"Darmanesti\";\"ascii\"\n\"679723\";\"Darmanesti-Bucovina\";\"other\"\n\"679723\";\"Dărmăneşti-Bucovina\";\"other\"\n\"679724\";\"Dărmăneşti\";\"main\"\n\"679724\";\"Darmanesti\";\"ascii\"\n\"679724\";\"Darmanestii\";\"other\"\n\"679724\";\"Dârmaneştii\";\"other\"\n\"679725\";\"Dărmăneşti\";\"main\"\n\"679725\";\"Darmanesti\";\"ascii\"\n\"679725\";\"Barmonestii\";\"other\"\n\"679725\";\"Barmoneştii\";\"other\"\n\"679725\";\"Darmonesti\";\"other\"\n\"679725\";\"Dirmonesti\";\"other\"\n\"679725\";\"Dârmoneşti\";\"other\"\n\"679725\";\"Dîrmoneşti\";\"other\"\n\"679726\";\"Dărmăneşti\";\"main\"\n\"679726\";\"Darmanesti\";\"ascii\"\n\"679726\";\"Darmnesti\";\"other\"\n\"679726\";\"Darmneşti\";\"other\"\n\"679732\";\"Dărăşti-Ilfov\";\"main\"\n\"679732\";\"Darasti-Ilfov\";\"ascii\"\n\"679732\";\"Darasti\";\"other\"\n\"679732\";\"Dărăşti\";\"other\"\n\"679736\";\"Darabani\";\"main\"\n\"679749\";\"Dăneţi\";\"main\"\n\"679749\";\"Daneti\";\"ascii\"\n\"679749\";\"Danet\";\"other\"\n\"679749\";\"Daneţ\";\"other\"\n\"679757\";\"Dăneşti\";\"main\"\n\"679757\";\"Danesti\";\"ascii\"\n\"679758\";\"Dăneşti\";\"main\"\n\"679758\";\"Danesti\";\"ascii\"\n\"679758\";\"Csiksanfalva\";\"other\"\n\"679758\";\"Csiksánfalva\";\"other\"\n\"679758\";\"Danfalva\";\"other\"\n\"679758\";\"Dánfalva\";\"other\"\n\"679760\";\"Dăneşti\";\"main\"\n\"679760\";\"Danesti\";\"ascii\"\n\"679763\";\"Daneş\";\"main\"\n\"679763\";\"Danes\";\"ascii\"\n\"679765\";\"Dăneasa\";\"main\"\n\"679765\";\"Daneasa\";\"ascii\"\n\"679769\";\"Dănciuleşti\";\"main\"\n\"679769\";\"Danciulesti\";\"ascii\"\n\"679769\";\"Danculesti\";\"other\"\n\"679769\";\"Dănculeşti\";\"other\"\n\"679779\";\"Dămuc\";\"main\"\n\"679779\";\"Damuc\";\"ascii\"\n\"679779\";\"Damucu de Jos\";\"other\"\n\"679779\";\"Damucul\";\"other\"\n\"679779\";\"Damucul de Jos\";\"other\"\n\"679779\";\"Domuc\";\"other\"\n\"679779\";\"Dămucu de Jos\";\"other\"\n\"679780\";\"Dămoc\";\"main\"\n\"679780\";\"Damoc\";\"ascii\"\n\"679788\";\"Dămieneşti\";\"main\"\n\"679788\";\"Damienesti\";\"ascii\"\n\"679812\";\"Daia Romînă\";\"main\"\n\"679812\";\"Daia Romina\";\"ascii\"\n\"679812\";\"Dacia-Romana\";\"other\"\n\"679812\";\"Dacia-Româna\";\"other\"\n\"679812\";\"Daia-Romana\";\"other\"\n\"679812\";\"Daia-Română\";\"other\"\n\"679822\";\"Daia\";\"main\"\n\"679828\";\"Dăeşti\";\"main\"\n\"679828\";\"Daesti\";\"ascii\"\n\"679830\";\"Dăeni\";\"main\"\n\"679830\";\"Daeni\";\"ascii\"\n\"679841\";\"Dăbuleni\";\"main\"\n\"679841\";\"Dabuleni\";\"ascii\"\n\"679844\";\"Dăbâca\";\"main\"\n\"679844\";\"Dabaca\";\"ascii\"\n\"679844\";\"Dobaca\";\"other\"\n\"679844\";\"Dobâca\";\"other\"\n\"679858\";\"Cuza Vodă\";\"main\"\n\"679858\";\"Cuza Voda\";\"ascii\"\n\"679861\";\"Cuzăplac\";\"main\"\n\"679861\";\"Cuzaplac\";\"ascii\"\n\"679861\";\"Cuzaplacu\";\"other\"\n\"679861\";\"Cuzăplacu\";\"other\"\n\"679886\";\"Cusdrioara\";\"main\"\n\"679886\";\"Cuzdrioara\";\"other\"\n\"679898\";\"Curtişoara\";\"main\"\n\"679898\";\"Curtisoara\";\"ascii\"\n\"679901\";\"Curtici\";\"main\"\n\"679902\";\"Curteşti\";\"main\"\n\"679902\";\"Curtesti\";\"ascii\"\n\"679907\";\"Curtea de Argeş\";\"main\"\n\"679907\";\"Curtea de Arges\";\"ascii\"\n\"679907\";\"Argyasudvarhely\";\"other\"\n\"679907\";\"Curt de-Arges\";\"other\"\n\"679907\";\"Curt de-Argeş\";\"other\"\n\"679909\";\"Curtea\";\"main\"\n\"679936\";\"Curcani\";\"main\"\n\"679945\";\"Curăţele\";\"main\"\n\"679945\";\"Curatele\";\"ascii\"\n\"679951\";\"Cupşeni\";\"main\"\n\"679951\";\"Cupseni\";\"ascii\"\n\"679959\";\"Cungrea\";\"main\"\n\"679968\";\"Cumpăna\";\"main\"\n\"679968\";\"Cumpana\";\"ascii\"\n\"679968\";\"Hasi Diu luk\";\"other\"\n\"679968\";\"Hasiduluc\";\"other\"\n\"679968\";\"Hasin Duluc\";\"other\"\n\"679972\";\"Culciu Mic\";\"main\"\n\"679972\";\"Culciul Mic\";\"other\"\n\"679979\";\"Cujmir\";\"main\"\n\"679979\";\"Cujmiru\";\"other\"\n\"679979\";\"Cujmirul\";\"other\"\n\"679995\";\"Cugir\";\"main\"\n\"680003\";\"Cudalbi\";\"main\"\n\"680007\";\"Cucuteni\";\"main\"\n\"680045\";\"Cuci\";\"main\"\n\"680045\";\"Cuciu\";\"other\"\n\"680045\";\"Cuciul\";\"other\"\n\"680050\";\"Cucerdea\";\"main\"\n\"680054\";\"Cuca\";\"main\"\n\"680055\";\"Cuca\";\"main\"\n\"680067\";\"Cruşeţu\";\"main\"\n\"680067\";\"Crusetu\";\"ascii\"\n\"680067\";\"Mierea-Birnici\";\"other\"\n\"680073\";\"Crucişor\";\"main\"\n\"680073\";\"Crucisor\";\"ascii\"\n\"680090\";\"Crucea\";\"main\"\n\"680092\";\"Crucea\";\"main\"\n\"680092\";\"Satischioi\";\"other\"\n\"680092\";\"Satişchioi\";\"other\"\n\"680122\";\"Crivina\";\"main\"\n\"680148\";\"Cristuru Secuiesc\";\"main\"\n\"680148\";\"Cristur\";\"other\"\n\"680148\";\"Ion Gheorghe Duca\";\"other\"\n\"680148\";\"Szekelykeresztur\";\"other\"\n\"680148\";\"Szèkelykeresztur\";\"other\"\n\"680156\";\"Cristolţ\";\"main\"\n\"680156\";\"Cristolt\";\"ascii\"\n\"680156\";\"Crastoltul-Mare\";\"other\"\n\"680156\";\"Cristoltu Mare\";\"other\"\n\"680156\";\"Cristoltul Mare\";\"other\"\n\"680156\";\"Cristolţu Mare\";\"other\"\n\"680156\";\"Cristolţul Mare\";\"other\"\n\"680156\";\"Crâstolţul-Mare\";\"other\"\n\"680158\";\"Criştioru de Jos\";\"main\"\n\"680158\";\"Cristioru de Jos\";\"ascii\"\n\"680158\";\"Alsokristyor\";\"other\"\n\"680158\";\"Alsókristyór\";\"other\"\n\"680158\";\"Biharkristyor\";\"other\"\n\"680158\";\"Biharkristyór\";\"other\"\n\"680158\";\"Cristior-de-Jos\";\"other\"\n\"680158\";\"Criştior-de-Jos\";\"other\"\n\"680158\";\"Felsokristyor\";\"other\"\n\"680158\";\"Felsőkristyór\";\"other\"\n\"680158\";\"Kristyor\";\"other\"\n\"680161\";\"Cristineşti\";\"main\"\n\"680161\";\"Cristinesti\";\"ascii\"\n\"680166\";\"Cristian\";\"main\"\n\"680166\";\"Crossau\";\"other\"\n\"680167\";\"Cristian\";\"main\"\n\"680176\";\"Cristeşti\";\"main\"\n\"680176\";\"Cristesti\";\"ascii\"\n\"680177\";\"Cristeşti\";\"main\"\n\"680177\";\"Cristesti\";\"ascii\"\n\"680180\";\"Cristeşti\";\"main\"\n\"680180\";\"Cristesti\";\"ascii\"\n\"680180\";\"Maroskeresztur\";\"other\"\n\"680192\";\"Crişeni\";\"main\"\n\"680192\";\"Criseni\";\"ascii\"\n\"680198\";\"Crişcior\";\"main\"\n\"680198\";\"Criscior\";\"ascii\"\n\"680198\";\"Cristior\";\"other\"\n\"680198\";\"Criştior\";\"other\"\n\"680203\";\"Crişan\";\"main\"\n\"680203\";\"Crisan\";\"ascii\"\n\"680212\";\"Crîngurile de Sus\";\"main\"\n\"680212\";\"Cringurile de Sus\";\"ascii\"\n\"680212\";\"Crangurile de Sus\";\"other\"\n\"680212\";\"Crângurile de Sus\";\"other\"\n\"680229\";\"Crîngeni\";\"main\"\n\"680229\";\"Cringeni\";\"ascii\"\n\"680229\";\"Crangem\";\"other\"\n\"680229\";\"Crangeni\";\"other\"\n\"680229\";\"Crângeni\";\"other\"\n\"680229\";\"Crăngem\";\"other\"\n\"680245\";\"Criciova\";\"main\"\n\"680245\";\"Cliciova\";\"other\"\n\"680245\";\"Kricso\";\"other\"\n\"680245\";\"Kricsova\";\"other\"\n\"680245\";\"Kricsó\";\"other\"\n\"680248\";\"Cricău\";\"main\"\n\"680248\";\"Cricau\";\"ascii\"\n\"680248\";\"Cricaul\";\"other\"\n\"680248\";\"Cricăul\";\"other\"\n\"680252\";\"Crevenicu\";\"main\"\n\"680252\";\"Crevenicul\";\"other\"\n\"680256\";\"Crevedia Mare\";\"main\"\n\"680262\";\"Crevedia\";\"main\"\n\"680279\";\"Creţeni\";\"main\"\n\"680279\";\"Creteni\";\"ascii\"\n\"680298\";\"Creaca\";\"main\"\n\"680316\";\"Crasna\";\"main\"\n\"680319\";\"Crasna\";\"main\"\n\"680319\";\"Crasna Ungureni\";\"other\"\n\"680332\";\"Craiova\";\"main\"\n\"680332\";\"Croiova\";\"other\"\n\"680332\";\"Krajova\";\"other\"\n\"680332\";\"Krajowa\";\"other\"\n\"680332\";\"ke la yue wa\";\"other\"\n\"680332\";\"qrywbh\";\"other\"\n\"680332\";\"Крайова\";\"other\"\n\"680332\";\"Крајова\";\"other\"\n\"680332\";\"קראיובה\";\"other\"\n\"680332\";\"קריובה\";\"other\"\n\"680332\";\"克拉約瓦\";\"other\"\n\"680340\";\"Crăieşti\";\"main\"\n\"680340\";\"Craiesti\";\"ascii\"\n\"680340\";\"Craesti\";\"other\"\n\"680340\";\"Crăeşti\";\"other\"\n\"680342\";\"Craidorolţ\";\"main\"\n\"680342\";\"Craidorolt\";\"ascii\"\n\"680368\";\"Crăciuneşti\";\"main\"\n\"680368\";\"Craciunesti\";\"ascii\"\n\"680368\";\"Nyaradkaracsonyfalva\";\"other\"\n\"680368\";\"Nyárádkarácsonyfalva\";\"other\"\n\"680373\";\"Crăciunelu de Jos\";\"main\"\n\"680373\";\"Craciunelu de Jos\";\"ascii\"\n\"680373\";\"Craciunelul-de-Jos\";\"other\"\n\"680373\";\"Crăciunelul-de-Jos\";\"other\"\n\"680392\";\"Cozmeşti\";\"main\"\n\"680392\";\"Cozmesti\";\"ascii\"\n\"680392\";\"Cosmesti\";\"other\"\n\"680392\";\"Cosmeşti\";\"other\"\n\"680404\";\"Cozieni\";\"main\"\n\"680404\";\"Trestia\";\"other\"\n\"680430\";\"Covasna\";\"main\"\n\"680430\";\"Kavasma\";\"other\"\n\"680430\";\"Kovaszna\";\"other\"\n\"680430\";\"Kovàszna\";\"other\"\n\"680430\";\"Kovászna\";\"other\"\n\"680432\";\"Covăsinţ\";\"main\"\n\"680432\";\"Covasint\";\"ascii\"\n\"680432\";\"Covasinti\";\"other\"\n\"680432\";\"Covasnit\";\"other\"\n\"680432\";\"Covăsinţi\";\"other\"\n\"680432\";\"Covăsniţ\";\"other\"\n\"680432\";\"Kovaszi\";\"other\"\n\"680432\";\"Kovaszincz\";\"other\"\n\"680432\";\"Kovesd\";\"other\"\n\"680432\";\"Kovászi\";\"other\"\n\"680432\";\"Kövesd\";\"other\"\n\"680432\";\"Podgoria\";\"other\"\n\"680440\";\"Coţuşca\";\"main\"\n\"680440\";\"Cotusca\";\"ascii\"\n\"680481\";\"Coţofenii din Dos\";\"main\"\n\"680481\";\"Cotofenii din Dos\";\"ascii\"\n\"680485\";\"Coţofăneşti\";\"main\"\n\"680485\";\"Cotofanesti\";\"ascii\"\n\"680485\";\"Cotofanestii\";\"other\"\n\"680485\";\"Cotofenesti\";\"other\"\n\"680485\";\"Coţofeneşti\";\"other\"\n\"680485\";\"Coţofăneştii\";\"other\"\n\"680491\";\"Cotnari\";\"main\"\n\"680496\";\"Cotmeana\";\"main\"\n\"680509\";\"Coteşti\";\"main\"\n\"680509\";\"Cotesti\";\"ascii\"\n\"680520\";\"Coteana\";\"main\"\n\"680520\";\"Ion I. C. Bratianu\";\"other\"\n\"680531\";\"Costuleni\";\"main\"\n\"680541\";\"Costişa\";\"main\"\n\"680541\";\"Costisa\";\"ascii\"\n\"680546\";\"Costineşti\";\"main\"\n\"680546\";\"Costinesti\";\"ascii\"\n\"680560\";\"Costeştii din Vale\";\"main\"\n\"680560\";\"Costestii din Vale\";\"ascii\"\n\"680560\";\"Costesti de Vale\";\"other\"\n\"680560\";\"Costesti-Vale\";\"other\"\n\"680560\";\"Costesti-Vatra\";\"other\"\n\"680560\";\"Costeşti de Vale\";\"other\"\n\"680560\";\"Costeşti-Vale\";\"other\"\n\"680560\";\"Costeşti-Vatra\";\"other\"\n\"680571\";\"Costeşti\";\"main\"\n\"680571\";\"Costesti\";\"ascii\"\n\"680576\";\"Costeşti\";\"main\"\n\"680576\";\"Costesti\";\"ascii\"\n\"680577\";\"Costeşti\";\"main\"\n\"680577\";\"Costesti\";\"ascii\"\n\"680581\";\"Costeşti\";\"main\"\n\"680581\";\"Costesti\";\"ascii\"\n\"680591\";\"Coşteiu\";\"main\"\n\"680591\";\"Costeiu\";\"ascii\"\n\"680591\";\"Checea Romana\";\"other\"\n\"680591\";\"Checea Română\";\"other\"\n\"680591\";\"Costei\";\"other\"\n\"680591\";\"Costeiul\";\"other\"\n\"680591\";\"Costeiul Mare\";\"other\"\n\"680591\";\"Costeiul Mic\";\"other\"\n\"680591\";\"Coştei\";\"other\"\n\"680591\";\"Coşteiul\";\"other\"\n\"680591\";\"Coşteiul Mare\";\"other\"\n\"680591\";\"Coşteiul Mic\";\"other\"\n\"680591\";\"Kiskastely\";\"other\"\n\"680591\";\"Kiskastély\";\"other\"\n\"680591\";\"Nagykastely\";\"other\"\n\"680591\";\"Nagykastély\";\"other\"\n\"680591\";\"Nagykostely\";\"other\"\n\"680591\";\"Nagykostély\";\"other\"\n\"680591\";\"Salha\";\"other\"\n\"680591\";\"Salha Costei\";\"other\"\n\"680591\";\"Silha\";\"other\"\n\"680591\";\"Szilha\";\"other\"\n\"680591\";\"Sâlha\";\"other\"\n\"680591\";\"Sâlha Coştei\";\"other\"\n\"680591\";\"Sîlha\";\"other\"\n\"680598\";\"Costache Negri\";\"main\"\n\"680598\";\"Manjina\";\"other\"\n\"680598\";\"Mânjina\";\"other\"\n\"680601\";\"Coşoveni\";\"main\"\n\"680601\";\"Cosoveni\";\"ascii\"\n\"680601\";\"Cosovenii de Sus\";\"other\"\n\"680601\";\"Coşovenii de Sus\";\"other\"\n\"680617\";\"Cosminele de Sus\";\"main\"\n\"680623\";\"Cosmeşti\";\"main\"\n\"680623\";\"Cosmesti\";\"ascii\"\n\"680623\";\"Cosmesti din Deal\";\"other\"\n\"680623\";\"Cosmesti-Deal\";\"other\"\n\"680623\";\"Cosmestii din Deal\";\"other\"\n\"680623\";\"Cosmeşti din Deal\";\"other\"\n\"680623\";\"Cosmeşti-Deal\";\"other\"\n\"680623\";\"Cosmeştii din Deal\";\"other\"\n\"680623\";\"Cozmesti-Deal\";\"other\"\n\"680623\";\"Cozmeşti-Deal\";\"other\"\n\"680624\";\"Cosmeşti\";\"main\"\n\"680624\";\"Cosmesti\";\"ascii\"\n\"680645\";\"Coşeşti\";\"main\"\n\"680645\";\"Cosesti\";\"ascii\"\n\"680649\";\"Coşereni\";\"main\"\n\"680649\";\"Cosereni\";\"ascii\"\n\"680649\";\"Cosareni\";\"other\"\n\"680649\";\"Coşăreni\";\"other\"\n\"680655\";\"Coşeiu\";\"main\"\n\"680655\";\"Coseiu\";\"ascii\"\n\"680655\";\"Coseiul\";\"other\"\n\"680655\";\"Coşeiul\";\"other\"\n\"680660\";\"Coşbuc\";\"main\"\n\"680660\";\"Cosbuc\";\"ascii\"\n\"680660\";\"Cojbuc\";\"other\"\n\"680660\";\"Hordo\";\"other\"\n\"680674\";\"Corund\";\"main\"\n\"680674\";\"Korond\";\"other\"\n\"680690\";\"Coroisînmartin\";\"main\"\n\"680690\";\"Coroisinmartin\";\"ascii\"\n\"680690\";\"Coroisanmartin\";\"other\"\n\"680690\";\"Coroisânmartin\";\"other\"\n\"680692\";\"Coroieşti\";\"main\"\n\"680692\";\"Coroiesti\";\"ascii\"\n\"680692\";\"Coroiestii de Jos\";\"other\"\n\"680692\";\"Coroieştii de Jos\";\"other\"\n\"680701\";\"Coroeni\";\"main\"\n\"680701\";\"Coroieni\";\"other\"\n\"680708\";\"Corod\";\"main\"\n\"680720\";\"Cornu Luncii\";\"main\"\n\"680721\";\"Cornu de Sus\";\"main\"\n\"680721\";\"Cornul de Sus\";\"other\"\n\"680742\";\"Corni\";\"main\"\n\"680746\";\"Corni\";\"main\"\n\"680754\";\"Cornetu\";\"main\"\n\"680754\";\"Cornetul\";\"other\"\n\"680774\";\"Corneşti\";\"main\"\n\"680774\";\"Cornesti\";\"ascii\"\n\"680783\";\"Corneşti\";\"main\"\n\"680783\";\"Cornesti\";\"ascii\"\n\"680786\";\"Cornereva\";\"main\"\n\"680790\";\"Cornea\";\"main\"\n\"680793\";\"Cornăţelu\";\"main\"\n\"680793\";\"Cornatelu\";\"ascii\"\n\"680793\";\"Cornatelul\";\"other\"\n\"680793\";\"Cornaţelul\";\"other\"\n\"680806\";\"Cormaia\";\"main\"\n\"680815\";\"Corlăteni\";\"main\"\n\"680815\";\"Corlateni\";\"ascii\"\n\"680821\";\"Corlăţel\";\"main\"\n\"680821\";\"Corlatel\";\"ascii\"\n\"680821\";\"Corlatelu\";\"other\"\n\"680821\";\"Corlatelul\";\"other\"\n\"680821\";\"Corlăţelu\";\"other\"\n\"680821\";\"Corlăţelul\";\"other\"\n\"680831\";\"Cordun\";\"main\"\n\"680831\";\"Cordunu\";\"other\"\n\"680839\";\"Cordăreni\";\"main\"\n\"680839\";\"Cordareni\";\"ascii\"\n\"680839\";\"Cordareni-Vechi\";\"other\"\n\"680839\";\"Cordarenii Vechi\";\"other\"\n\"680839\";\"Cordăreni-Vechi\";\"other\"\n\"680839\";\"Cordărenii Vechi\";\"other\"\n\"680841\";\"Corcova\";\"main\"\n\"680862\";\"Corbu\";\"main\"\n\"680862\";\"Corbul\";\"other\"\n\"680862\";\"Hollo\";\"other\"\n\"680862\";\"Hollò\";\"other\"\n\"680869\";\"Corbu\";\"main\"\n\"680869\";\"Corbu-Nou\";\"other\"\n\"680869\";\"Corbul-Nou\";\"other\"\n\"680870\";\"Corbu\";\"main\"\n\"680870\";\"Corbu de Jos\";\"other\"\n\"680870\";\"Corbul-de-Jos\";\"other\"\n\"680870\";\"Gargalacul-Mic\";\"other\"\n\"680870\";\"Gargalic Mic\";\"other\"\n\"680870\";\"Gargaliku Mik\";\"other\"\n\"680870\";\"Gargalâcul-Mic\";\"other\"\n\"680870\";\"Gargalîc Mic\";\"other\"\n\"680874\";\"Corbiţa\";\"main\"\n\"680874\";\"Corbita\";\"ascii\"\n\"680876\";\"Corbii Mari\";\"main\"\n\"680880\";\"Corbi\";\"main\"\n\"680888\";\"Corbeni\";\"main\"\n\"680890\";\"Corbeanca\";\"main\"\n\"680894\";\"Corbasca\";\"main\"\n\"680897\";\"Corabia\";\"main\"\n\"680901\";\"Copşa Mică\";\"main\"\n\"680901\";\"Copsa Mica\";\"ascii\"\n\"680901\";\"Copsa\";\"other\"\n\"680901\";\"Copşa\";\"other\"\n\"680901\";\"Klein Kopisch\";\"other\"\n\"680907\";\"Copalnic Mănăştur\";\"main\"\n\"680907\";\"Copalnic Manastur\";\"ascii\"\n\"680907\";\"Copalnic Monastur\";\"other\"\n\"680911\";\"Copălău\";\"main\"\n\"680911\";\"Copalau\";\"ascii\"\n\"680929\";\"Copăceni\";\"main\"\n\"680929\";\"Copaceni\";\"ascii\"\n\"680934\";\"Copăcele\";\"main\"\n\"680934\";\"Copacele\";\"ascii\"\n\"680936\";\"Copăcel\";\"main\"\n\"680936\";\"Copacel\";\"ascii\"\n\"680955\";\"Conţeşti\";\"main\"\n\"680955\";\"Contesti\";\"ascii\"\n\"680961\";\"Constantin Daicoviciu\";\"main\"\n\"680961\";\"Cavaran\";\"other\"\n\"680961\";\"Căvăran\";\"other\"\n\"680963\";\"Constanţa\";\"main\"\n\"680963\";\"Constanta\";\"ascii\"\n\"680963\";\"Constantia\";\"other\"\n\"680963\";\"Constantza\";\"other\"\n\"680963\";\"Constanza\";\"other\"\n\"680963\";\"Costanza\";\"other\"\n\"680963\";\"Koestence\";\"other\"\n\"680963\";\"Konstanca\";\"other\"\n\"680963\";\"Konstanco\";\"other\"\n\"680963\";\"Konstanza\";\"other\"\n\"680963\";\"Kuestence\";\"other\"\n\"680963\";\"Kustenja\";\"other\"\n\"680963\";\"Kustenje\";\"other\"\n\"680963\";\"Kustenji\";\"other\"\n\"680963\";\"Kyustendja\";\"other\"\n\"680963\";\"Köstence\";\"other\"\n\"680963\";\"Küstence\";\"other\"\n\"680963\";\"Küstenja\";\"other\"\n\"680963\";\"kang si tan cha\";\"other\"\n\"680963\";\"konseutancha\";\"other\"\n\"680963\";\"konsutantsu~a\";\"other\"\n\"680963\";\"qwnstnzh\";\"other\"\n\"680963\";\"Констанца\";\"other\"\n\"680963\";\"קונסטנצה\";\"other\"\n\"680963\";\"კონსტანცა\";\"other\"\n\"680963\";\"コンスタンツァ\";\"other\"\n\"680963\";\"康斯坦察\";\"other\"\n\"680963\";\"콘스탄차\";\"other\"\n\"680965\";\"Conop\";\"main\"\n\"680965\";\"Konop\";\"other\"\n\"680977\";\"Conceşti\";\"main\"\n\"680977\";\"Concesti\";\"ascii\"\n\"680992\";\"Comloşu Mare\";\"main\"\n\"680992\";\"Comlosu Mare\";\"ascii\"\n\"680992\";\"Comlosul-Mare\";\"other\"\n\"680992\";\"Comloşul-Mare\";\"other\"\n\"680992\";\"Gross-Komlosch\";\"other\"\n\"680992\";\"Komlosch\";\"other\"\n\"680992\";\"Nagykomlos\";\"other\"\n\"680992\";\"Nagykomlós\";\"other\"\n\"680992\";\"Veliki Komlus\";\"other\"\n\"680992\";\"Veliki Komluš\";\"other\"\n\"680998\";\"Comişani\";\"main\"\n\"680998\";\"Comisani\";\"ascii\"\n\"681005\";\"Comarnic\";\"main\"\n\"681006\";\"Comarna\";\"main\"\n\"681017\";\"Comăneşti\";\"main\"\n\"681017\";\"Comanesti\";\"ascii\"\n\"681025\";\"Comandău\";\"main\"\n\"681025\";\"Comandau\";\"ascii\"\n\"681025\";\"Comanda\";\"other\"\n\"681025\";\"Comando\";\"other\"\n\"681025\";\"Komando\";\"other\"\n\"681025\";\"Komàndo\";\"other\"\n\"681029\";\"Comana de Sus\";\"main\"\n\"681036\";\"Comana\";\"main\"\n\"681037\";\"Comana\";\"main\"\n\"681037\";\"Mustafa-Aci\";\"other\"\n\"681037\";\"Mustafaci\";\"other\"\n\"681047\";\"Colţi\";\"main\"\n\"681047\";\"Colti\";\"ascii\"\n\"681047\";\"Intre Sibicii\";\"other\"\n\"681047\";\"Între Sibicii\";\"other\"\n\"681096\";\"Coloneşti\";\"main\"\n\"681096\";\"Colonesti\";\"ascii\"\n\"681096\";\"Corbu\";\"other\"\n\"681096\";\"Parus\";\"other\"\n\"681096\";\"Păruş\";\"other\"\n\"681096\";\"Valea lui Matei\";\"other\"\n\"681097\";\"Coloneşti\";\"main\"\n\"681097\";\"Colonesti\";\"ascii\"\n\"681112\";\"Colibaşi\";\"main\"\n\"681112\";\"Colibasi\";\"ascii\"\n\"681112\";\"Cohbasi\";\"other\"\n\"681125\";\"Colceag\";\"main\"\n\"681125\";\"Colceagu\";\"other\"\n\"681140\";\"Cojocna\";\"main\"\n\"681140\";\"Kolozs\";\"other\"\n\"681151\";\"Cojasca\";\"main\"\n\"681160\";\"Cogealac\";\"main\"\n\"681160\";\"Domnesti\";\"other\"\n\"681160\";\"Domneşti\";\"other\"\n\"681160\";\"Kogealak\";\"other\"\n\"681179\";\"Codlea\";\"main\"\n\"681179\";\"Feketehalom\";\"other\"\n\"681179\";\"Kodlja\";\"other\"\n\"681179\";\"Zeiden\";\"other\"\n\"681179\";\"Кодля\";\"other\"\n\"681183\";\"Codăeşti\";\"main\"\n\"681183\";\"Codaesti\";\"ascii\"\n\"681185\";\"Cocu\";\"main\"\n\"681185\";\"Cocul\";\"other\"\n\"681198\";\"Cocorăştii-Misli\";\"main\"\n\"681198\";\"Cocorastii-Misli\";\"ascii\"\n\"681198\";\"Cocorasti-Mislea\";\"other\"\n\"681198\";\"Cocorasti-Mislei\";\"other\"\n\"681198\";\"Cocorasti-Misli\";\"other\"\n\"681198\";\"Cocorăşti-Mislea\";\"other\"\n\"681198\";\"Cocorăşti-Mislei\";\"other\"\n\"681198\";\"Cocorăşti-Misli\";\"other\"\n\"681206\";\"Cocora\";\"main\"\n\"681214\";\"Cociuba Mare\";\"main\"\n\"681214\";\"Cociuba de Jos\";\"other\"\n\"681228\";\"Cochirleanca\";\"main\"\n\"681228\";\"Cochirleanca-Gageanu\";\"other\"\n\"681228\";\"Cochirleanca-Găgeanu\";\"other\"\n\"681228\";\"Gageanu\";\"other\"\n\"681228\";\"Gagenul\";\"other\"\n\"681228\";\"Găgenul\";\"other\"\n\"681228\";\"Regele-Carol II\";\"other\"\n\"681257\";\"Cobadin\";\"main\"\n\"681280\";\"Coarnele Caprei\";\"main\"\n\"681290\";\"Cluj-Napoca\";\"main\"\n\"681290\";\"Castrum Clus\";\"other\"\n\"681290\";\"Claudiopolis\";\"other\"\n\"681290\";\"Clausemburgo\";\"other\"\n\"681290\";\"Clausenburg\";\"other\"\n\"681290\";\"Cluj\";\"other\"\n\"681290\";\"Klausenburg\";\"other\"\n\"681290\";\"Kluz-Napoka\";\"other\"\n\"681290\";\"Kluza-Napoka\";\"other\"\n\"681290\";\"Kluzh-Napoka\";\"other\"\n\"681290\";\"Kluż-Napoka\";\"other\"\n\"681290\";\"Kluža-Napoka\";\"other\"\n\"681290\";\"Koloszvar\";\"other\"\n\"681290\";\"Koloszvár\";\"other\"\n\"681290\";\"Kolozsvar\";\"other\"\n\"681290\";\"Kolozsvár\";\"other\"\n\"681290\";\"Municipium Aelium Hadrianum Napoca\";\"other\"\n\"681290\";\"Napoca\";\"other\"\n\"681290\";\"klwj-nabwka\";\"other\"\n\"681290\";\"kuruju=napoka\";\"other\"\n\"681290\";\"qlwz'-npwqh\";\"other\"\n\"681290\";\"Клуж-Напока\";\"other\"\n\"681290\";\"קלוז'-נאפוקה\";\"other\"\n\"681290\";\"קלוז'-נפוקה\";\"other\"\n\"681290\";\"كلوج-نابوكا\";\"other\"\n\"681290\";\"クルージュ＝ナポカ\";\"other\"\n\"681327\";\"Clinceni\";\"main\"\n\"681338\";\"Clejani\";\"main\"\n\"681340\";\"Cleja\";\"main\"\n\"681353\";\"Cizer\";\"main\"\n\"681353\";\"Czizer\";\"other\"\n\"681353\";\"Czizér\";\"other\"\n\"681368\";\"Ciuruleasa\";\"main\"\n\"681368\";\"Abrud-Sat-Ciuruleasa\";\"other\"\n\"681371\";\"Ciurila\";\"main\"\n\"681371\";\"Csueruelye\";\"other\"\n\"681371\";\"Csürülye\";\"other\"\n\"681373\";\"Ciurgău\";\"main\"\n\"681373\";\"Ciurgau\";\"ascii\"\n\"681373\";\"Cirhagau\";\"other\"\n\"681373\";\"Cirhagău\";\"other\"\n\"681384\";\"Ciurea\";\"main\"\n\"681384\";\"Lunca\";\"other\"\n\"681397\";\"Ciupercenii Noi\";\"main\"\n\"681397\";\"Ciuperceni\";\"other\"\n\"681397\";\"Ciupercenii-Noui\";\"other\"\n\"681404\";\"Ciuperceni\";\"main\"\n\"681406\";\"Ciuperceni\";\"main\"\n\"681430\";\"Ciumeghiu\";\"main\"\n\"681430\";\"Ciumeghiul\";\"other\"\n\"681436\";\"Ciumani\";\"main\"\n\"681436\";\"Csomafalva\";\"other\"\n\"681444\";\"Ciulniţa\";\"main\"\n\"681444\";\"Ciulnita\";\"ascii\"\n\"681458\";\"Ciuhoiu\";\"main\"\n\"681458\";\"Ciuhoiul\";\"other\"\n\"681466\";\"Ciugud\";\"main\"\n\"681473\";\"Ciucurova\";\"main\"\n\"681480\";\"Ciucsîngeorgiu\";\"main\"\n\"681480\";\"Ciucsingeorgiu\";\"ascii\"\n\"681480\";\"Ciucsangeorgiu\";\"other\"\n\"681480\";\"Ciucsângeorgiu\";\"other\"\n\"681480\";\"Csik Szent Gyorgu\";\"other\"\n\"681480\";\"Csik Szent Györgu\";\"other\"\n\"681480\";\"Csikszentgyorgy\";\"other\"\n\"681480\";\"Csikszentgyörgy\";\"other\"\n\"681483\";\"Ciuchici\";\"main\"\n\"681483\";\"Ciuchiciu\";\"other\"\n\"681483\";\"Cukic\";\"other\"\n\"681483\";\"Cukič\";\"other\"\n\"681486\";\"Ciucea\";\"main\"\n\"681494\";\"Ciuani\";\"main\"\n\"681494\";\"Mereni-Ciuani\";\"other\"\n\"681494\";\"Mereni-Stefeni\";\"other\"\n\"681494\";\"Mereni-Ştefeni\";\"other\"\n\"681502\";\"Cisnădie\";\"main\"\n\"681502\";\"Cisnadie\";\"ascii\"\n\"681502\";\"Heltau\";\"other\"\n\"681502\";\"Nagydisznod\";\"other\"\n\"681502\";\"Nagydisznód\";\"other\"\n\"681510\";\"Cislău\";\"main\"\n\"681510\";\"Cislau\";\"ascii\"\n\"681517\";\"Cîrţişoara\";\"main\"\n\"681517\";\"Cirtisoara\";\"ascii\"\n\"681517\";\"Streja Cartisoara\";\"other\"\n\"681517\";\"Streja Cârtişoara\";\"other\"\n\"681517\";\"Streza-Cartisoara\";\"other\"\n\"681517\";\"Streza-Cirtisoara\";\"other\"\n\"681517\";\"Streza-Cârtişoara\";\"other\"\n\"681517\";\"Streza-Cîrţişoara\";\"other\"\n\"681523\";\"Cîrţa\";\"main\"\n\"681523\";\"Cirta\";\"ascii\"\n\"681523\";\"Carta\";\"other\"\n\"681523\";\"Cârţa\";\"other\"\n\"681523\";\"Karcfalva\";\"other\"\n\"681549\";\"Cîrlogani\";\"main\"\n\"681549\";\"Cirlogani\";\"ascii\"\n\"681549\";\"Carlogani\";\"other\"\n\"681549\";\"Cârlogani\";\"other\"\n\"681559\";\"Cîrligele\";\"main\"\n\"681559\";\"Cirligele\";\"ascii\"\n\"681559\";\"Carlige\";\"other\"\n\"681559\";\"Carligele\";\"other\"\n\"681559\";\"Cârlige\";\"other\"\n\"681559\";\"Cârligele\";\"other\"\n\"681569\";\"Cîrlibaba\";\"main\"\n\"681569\";\"Cirlibaba\";\"ascii\"\n\"681569\";\"Carlibaba\";\"other\"\n\"681569\";\"Cirlibaba Veche\";\"other\"\n\"681569\";\"Cârlibaba\";\"other\"\n\"681569\";\"Cîrlibaba Veche\";\"other\"\n\"681596\";\"Cireşu\";\"main\"\n\"681596\";\"Ciresu\";\"ascii\"\n\"681596\";\"Ciresul\";\"other\"\n\"681596\";\"Cireşul\";\"other\"\n\"681624\";\"Ciprian Porumbescu\";\"main\"\n\"681624\";\"Stupca\";\"other\"\n\"681634\";\"Ciorteşti\";\"main\"\n\"681634\";\"Ciortesti\";\"ascii\"\n\"681645\";\"Cioroiaşu\";\"main\"\n\"681645\";\"Cioroiasu\";\"ascii\"\n\"681645\";\"Cioroiasiu\";\"other\"\n\"681645\";\"Cioroiaşiu\";\"other\"\n\"681648\";\"Ciorogârla\";\"main\"\n\"681648\";\"Ciorogarla\";\"ascii\"\n\"681648\";\"Ciorogirla\";\"other\"\n\"681648\";\"Ciorogîrla\";\"other\"\n\"681664\";\"Ciorăşti\";\"main\"\n\"681664\";\"Ciorasti\";\"ascii\"\n\"681669\";\"Cioranii de Jos\";\"main\"\n\"681669\";\"Ciorani-de-Jos\";\"other\"\n\"681686\";\"Ciomăgeşti\";\"main\"\n\"681686\";\"Ciomagesti\";\"ascii\"\n\"681686\";\"Fedelesti-Ciomagesti\";\"other\"\n\"681686\";\"Fedeleşti-Ciomăgesti\";\"other\"\n\"681691\";\"Ciolpani\";\"main\"\n\"681701\";\"Ciofrîngeni\";\"main\"\n\"681701\";\"Ciofringeni\";\"ascii\"\n\"681701\";\"Ciofranceni\";\"other\"\n\"681701\";\"Ciofrangeni\";\"other\"\n\"681701\";\"Ciofrânceni\";\"other\"\n\"681701\";\"Ciofrângeni\";\"other\"\n\"681721\";\"Ciocîrlia\";\"main\"\n\"681721\";\"Ciocirlia\";\"ascii\"\n\"681721\";\"Biulbiu Mic\";\"other\"\n\"681721\";\"Ciocarlia-de-Jos\";\"other\"\n\"681721\";\"Ciocirlia de Jos\";\"other\"\n\"681721\";\"Ciocârlia-de-Jos\";\"other\"\n\"681721\";\"Ciocîrlia de Jos\";\"other\"\n\"681725\";\"Ciocile\";\"main\"\n\"681728\";\"Ciochina\";\"main\"\n\"681744\";\"Ciocăneşti\";\"main\"\n\"681744\";\"Ciocanesti\";\"ascii\"\n\"681744\";\"Cicanesti\";\"other\"\n\"681744\";\"Cicăneşti\";\"other\"\n\"681747\";\"Ciocăneşti\";\"main\"\n\"681747\";\"Ciocanesti\";\"ascii\"\n\"681748\";\"Ciocăneşti\";\"main\"\n\"681748\";\"Ciocanesti\";\"ascii\"\n\"681775\";\"Ciobanu\";\"main\"\n\"681775\";\"Ciobanul\";\"other\"\n\"681827\";\"Cincu\";\"main\"\n\"681827\";\"Cincul\";\"other\"\n\"681827\";\"Gross-Schenk\";\"other\"\n\"681827\";\"Grossschenk\";\"other\"\n\"681827\";\"Großschenk\";\"other\"\n\"681833\";\"Cîmpurile de Jos\";\"main\"\n\"681833\";\"Cimpurile de Jos\";\"ascii\"\n\"681833\";\"Campuri-de-Jos\";\"other\"\n\"681833\";\"Campurile\";\"other\"\n\"681833\";\"Campurile de Jos\";\"other\"\n\"681833\";\"Cimpuri de Jos\";\"other\"\n\"681833\";\"Câmpuri-de-Jos\";\"other\"\n\"681833\";\"Câmpurile\";\"other\"\n\"681833\";\"Câmpurile de Jos\";\"other\"\n\"681833\";\"Cîmpuri de Jos\";\"other\"\n\"681845\";\"Câmpulung Moldovenesc\";\"main\"\n\"681845\";\"Campulung Moldovenesc\";\"ascii\"\n\"681845\";\"Campulung\";\"other\"\n\"681845\";\"Campulungul Moldov\";\"other\"\n\"681845\";\"Campulungul Moldovenesc\";\"other\"\n\"681845\";\"Cimpulung Moldovenesc\";\"other\"\n\"681845\";\"Câmpulung\";\"other\"\n\"681845\";\"Câmpulungul Moldov\";\"other\"\n\"681845\";\"Câmpulungul Moldovenesc\";\"other\"\n\"681845\";\"Cîmpulung Moldovenesc\";\"other\"\n\"681865\";\"Cîmpia Turzii\";\"main\"\n\"681865\";\"Cimpia Turzii\";\"ascii\"\n\"681865\";\"Campia Turzei\";\"other\"\n\"681865\";\"Campia Turzi\";\"other\"\n\"681865\";\"Campia Turzii\";\"other\"\n\"681865\";\"Câmpia Turzei\";\"other\"\n\"681865\";\"Câmpia Turzi\";\"other\"\n\"681865\";\"Câmpia Turzii\";\"other\"\n\"681876\";\"Cîmpeni\";\"main\"\n\"681876\";\"Cimpeni\";\"ascii\"\n\"681876\";\"Campeni\";\"other\"\n\"681876\";\"Câmpeni\";\"other\"\n\"681876\";\"Topanfalva\";\"other\"\n\"681876\";\"Topánfalva\";\"other\"\n\"681884\";\"Cîmpani de Pomezeu\";\"main\"\n\"681884\";\"Cimpani de Pomezeu\";\"ascii\"\n\"681884\";\"Campani\";\"other\"\n\"681884\";\"Câmpani\";\"other\"\n\"681902\";\"Cîlnic\";\"main\"\n\"681902\";\"Cilnic\";\"ascii\"\n\"681902\";\"Calnic\";\"other\"\n\"681902\";\"Câlnic\";\"other\"\n\"681902\";\"Kelling\";\"other\"\n\"681908\";\"Cilieni\";\"main\"\n\"681908\";\"Chilieni\";\"other\"\n\"681912\";\"Cilibia\";\"main\"\n\"681920\";\"Cîinenii Mici\";\"main\"\n\"681920\";\"Ciinenii Mici\";\"ascii\"\n\"681920\";\"Caineni\";\"other\"\n\"681920\";\"Câineni\";\"other\"\n\"681938\";\"Ciclova-Română\";\"main\"\n\"681938\";\"Ciclova-Romana\";\"ascii\"\n\"681938\";\"Ciclova Romina\";\"other\"\n\"681938\";\"Ciclova Romînă\";\"other\"\n\"681938\";\"Ciklova Romana\";\"other\"\n\"681951\";\"Ciceu-Giurgeşti\";\"main\"\n\"681951\";\"Ciceu-Giurgesti\";\"ascii\"\n\"681971\";\"Ciacova\";\"main\"\n\"681971\";\"Csak\";\"other\"\n\"681971\";\"Csák\";\"other\"\n\"681971\";\"Tschakowa\";\"other\"\n\"681977\";\"Chiuza\";\"main\"\n\"681990\";\"Chitila\";\"main\"\n\"681990\";\"Chitil\";\"other\"\n\"682003\";\"Chişlaz\";\"main\"\n\"682003\";\"Chislaz\";\"ascii\"\n\"682009\";\"Chişineu Criş\";\"main\"\n\"682009\";\"Chisineu Cris\";\"ascii\"\n\"682009\";\"Chisinau-Cris\";\"other\"\n\"682009\";\"Chişinău-Criş\";\"other\"\n\"682011\";\"Chisindia\";\"main\"\n\"682011\";\"Biszindia\";\"other\"\n\"682011\";\"Keszend\";\"other\"\n\"682011\";\"Kiszindia\";\"other\"\n\"682011\";\"Koszend\";\"other\"\n\"682011\";\"Kőszend\";\"other\"\n\"682014\";\"Chiselet\";\"main\"\n\"682020\";\"Chiscani\";\"main\"\n\"682028\";\"Chirpăr\";\"main\"\n\"682028\";\"Chirpar\";\"ascii\"\n\"682036\";\"Chirnogi\";\"main\"\n\"682038\";\"Chirnogeni\";\"main\"\n\"682038\";\"Chiuvenlia\";\"other\"\n\"682076\";\"Chiojdu\";\"main\"\n\"682076\";\"Chiojd\";\"other\"\n\"682076\";\"Chiojdul\";\"other\"\n\"682079\";\"Chiojdeni\";\"main\"\n\"682082\";\"Chiojdeanca\";\"main\"\n\"682085\";\"Chiochiş\";\"main\"\n\"682085\";\"Chiochis\";\"ascii\"\n\"682085\";\"Kekes\";\"other\"\n\"682093\";\"Chinteni\";\"main\"\n\"682093\";\"Kajanto\";\"other\"\n\"682093\";\"Kajántó\";\"other\"\n\"682117\";\"Chilia Veche\";\"main\"\n\"682117\";\"Achillea\";\"other\"\n\"682117\";\"Khilvaci\";\"other\"\n\"682117\";\"Kiliya Veki\";\"other\"\n\"682117\";\"Licostomo\";\"other\"\n\"682132\";\"Chiheru de Jos\";\"main\"\n\"682132\";\"Alsokoher\";\"other\"\n\"682132\";\"Alsòköhèr\";\"other\"\n\"682132\";\"Chiherul-de Jos\";\"other\"\n\"682136\";\"Chieşd\";\"main\"\n\"682136\";\"Chiesd\";\"ascii\"\n\"682147\";\"Chichiş\";\"main\"\n\"682147\";\"Chichis\";\"ascii\"\n\"682147\";\"Kokos\";\"other\"\n\"682147\";\"Kökös\";\"other\"\n\"682159\";\"Chiajna\";\"main\"\n\"682159\";\"Cheajna\";\"other\"\n\"682161\";\"Chevereşu Mare\";\"main\"\n\"682161\";\"Cheveresu Mare\";\"ascii\"\n\"682161\";\"Cheveres\";\"other\"\n\"682161\";\"Cheveresul-Mare\";\"other\"\n\"682161\";\"Chevereş\";\"other\"\n\"682161\";\"Chevereşul-Mare\";\"other\"\n\"682161\";\"Nagy-Keveres\";\"other\"\n\"682161\";\"Nagykoveres\";\"other\"\n\"682161\";\"Nagykövéres\";\"other\"\n\"682171\";\"Cheţani\";\"main\"\n\"682171\";\"Chetani\";\"ascii\"\n\"682171\";\"Chelani\";\"other\"\n\"682171\";\"Cheta\";\"other\"\n\"682171\";\"Cheţa\";\"other\"\n\"682195\";\"Cherechiu\";\"main\"\n\"682195\";\"Cherechiul\";\"other\"\n\"682235\";\"Cezieni\";\"main\"\n\"682252\";\"Cetăţeni\";\"main\"\n\"682252\";\"Cetateni\";\"ascii\"\n\"682252\";\"Cetateni Deal\";\"other\"\n\"682252\";\"Cetatenii Deal\";\"other\"\n\"682252\";\"Cetăteni Deal\";\"other\"\n\"682252\";\"Cetătenii Deal\";\"other\"\n\"682268\";\"Cetate\";\"main\"\n\"682268\";\"Centatea\";\"other\"\n\"682270\";\"Cetariu\";\"main\"\n\"682278\";\"Cervenia\";\"main\"\n\"682282\";\"Certeze\";\"main\"\n\"682284\";\"Cerţeşti\";\"main\"\n\"682284\";\"Certesti\";\"ascii\"\n\"682287\";\"Certeju de Sus\";\"main\"\n\"682287\";\"Certejul-de Sus\";\"other\"\n\"682298\";\"Cernişoara\";\"main\"\n\"682298\";\"Cernisoara\";\"ascii\"\n\"682301\";\"Cernica\";\"main\"\n\"682301\";\"Cernica-Tanganu\";\"other\"\n\"682301\";\"Cernica-Tanganul\";\"other\"\n\"682301\";\"Cernica-Tânganu\";\"other\"\n\"682313\";\"Cerneşti\";\"main\"\n\"682313\";\"Cernesti\";\"ascii\"\n\"682321\";\"Cernavodă\";\"main\"\n\"682321\";\"Cernavoda\";\"ascii\"\n\"682321\";\"Bogazkoey\";\"other\"\n\"682321\";\"Boğazköy\";\"other\"\n\"682321\";\"Cherna voda\";\"other\"\n\"682321\";\"Tcherna Voda\";\"other\"\n\"682321\";\"Черна вода\";\"other\"\n\"682328\";\"Cernăteşti\";\"main\"\n\"682328\";\"Cernatesti\";\"ascii\"\n\"682329\";\"Cernăteşti\";\"main\"\n\"682329\";\"Cernatesti\";\"ascii\"\n\"682331\";\"Cernat\";\"main\"\n\"682331\";\"Alsocsernaton\";\"other\"\n\"682331\";\"Alsòcsernàton\";\"other\"\n\"682331\";\"Cernatu de Jos\";\"other\"\n\"682331\";\"Cernatul-de-Jos\";\"other\"\n\"682347\";\"Cerna\";\"main\"\n\"682350\";\"Cermei\";\"main\"\n\"682350\";\"Cermeiu\";\"other\"\n\"682359\";\"Cergău Mic\";\"main\"\n\"682359\";\"Cergau Mic\";\"ascii\"\n\"682359\";\"Cergaul-Mic\";\"other\"\n\"682359\";\"Cergăul-Mic\";\"other\"\n\"682363\";\"Ceretul\";\"main\"\n\"682363\";\"Ceretu\";\"other\"\n\"682363\";\"Rasfirati\";\"other\"\n\"682363\";\"Răsfiraţi\";\"other\"\n\"682369\";\"Cerchezu\";\"main\"\n\"682369\";\"Cerchezchioi\";\"other\"\n\"682369\";\"Cerchezul\";\"other\"\n\"682396\";\"Cerătu\";\"main\"\n\"682396\";\"Ceratu\";\"ascii\"\n\"682396\";\"Ceratul\";\"other\"\n\"682396\";\"Cerătul\";\"other\"\n\"682399\";\"Ceraşu\";\"main\"\n\"682399\";\"Cerasu\";\"ascii\"\n\"682399\";\"Cerasul\";\"other\"\n\"682399\";\"Ceraşul\";\"other\"\n\"682403\";\"Ceptura de Sus\";\"main\"\n\"682407\";\"Cepleniţa\";\"main\"\n\"682407\";\"Ceplenita\";\"ascii\"\n\"682413\";\"Cepari Pămînteni\";\"main\"\n\"682413\";\"Cepari Paminteni\";\"ascii\"\n\"682413\";\"Cepari\";\"other\"\n\"682413\";\"Ceparii\";\"other\"\n\"682413\";\"Ceparii-Pamanteni\";\"other\"\n\"682413\";\"Ceparii-Pămanteni\";\"other\"\n\"682423\";\"Cenei\";\"main\"\n\"682423\";\"Csene\";\"other\"\n\"682423\";\"Csenej\";\"other\"\n\"682423\";\"Cseney\";\"other\"\n\"682423\";\"Horvathcsene\";\"other\"\n\"682423\";\"Horváthcsene\";\"other\"\n\"682423\";\"Szerbcsene\";\"other\"\n\"682423\";\"Tschene\";\"other\"\n\"682428\";\"Cenad\";\"main\"\n\"682428\";\"Cenadu Mare\";\"other\"\n\"682428\";\"Cenadu Sirbesc\";\"other\"\n\"682428\";\"Cenadu Sîrbesc\";\"other\"\n\"682428\";\"Cenadu Vechi\";\"other\"\n\"682428\";\"Cenadul-Mare\";\"other\"\n\"682428\";\"Cenadul-Vechi\";\"other\"\n\"682428\";\"Cenadul-Vechiu\";\"other\"\n\"682428\";\"Csanad\";\"other\"\n\"682428\";\"Csanád\";\"other\"\n\"682428\";\"Deutsch-Tschanad\";\"other\"\n\"682428\";\"Escanad\";\"other\"\n\"682428\";\"Eščanad\";\"other\"\n\"682428\";\"Gross Tschanad\";\"other\"\n\"682428\";\"Nadcanad\";\"other\"\n\"682428\";\"Nadčanad\";\"other\"\n\"682428\";\"Nagycsanad\";\"other\"\n\"682428\";\"Nagycsanád\";\"other\"\n\"682428\";\"Nemet Canad\";\"other\"\n\"682428\";\"Nemet Čanad\";\"other\"\n\"682428\";\"Oscsanad\";\"other\"\n\"682428\";\"Racz-Csanad\";\"other\"\n\"682428\";\"Raitzisch-Tschanad\";\"other\"\n\"682428\";\"Rácz-Csanád\";\"other\"\n\"682428\";\"Őscsanád\";\"other\"\n\"682436\";\"Celaru\";\"main\"\n\"682436\";\"Celarul\";\"other\"\n\"682440\";\"Ceica\";\"main\"\n\"682449\";\"Cehal\";\"main\"\n\"682452\";\"Cefa\";\"main\"\n\"682473\";\"Ceanu Mare\";\"main\"\n\"682473\";\"Ceanul-Mare\";\"other\"\n\"682478\";\"Ceamurlia de Jos\";\"main\"\n\"682478\";\"Ceamurli-de-Jos\";\"other\"\n\"682478\";\"Keamurli de jos\";\"other\"\n\"682483\";\"Ceahlău\";\"main\"\n\"682483\";\"Ceahlau\";\"ascii\"\n\"682483\";\"Ciahlau\";\"other\"\n\"682483\";\"Ciahlau-Shitul\";\"other\"\n\"682483\";\"Ciahlău\";\"other\"\n\"682483\";\"Ciahlău-Shitul\";\"other\"\n\"682483\";\"Rapciuni\";\"other\"\n\"682483\";\"Răpciuni\";\"other\"\n\"682483\";\"Schit\";\"other\"\n\"682483\";\"Schitu\";\"other\"\n\"682483\";\"Shitu\";\"other\"\n\"682499\";\"Căzăneşti\";\"main\"\n\"682499\";\"Cazanesti\";\"ascii\"\n\"682501\";\"Căzăneşti\";\"main\"\n\"682501\";\"Cazanesti\";\"ascii\"\n\"682508\";\"Cavnic\";\"main\"\n\"682511\";\"Cavadineşti\";\"main\"\n\"682511\";\"Cavadinesti\";\"ascii\"\n\"682522\";\"Căuaş\";\"main\"\n\"682522\";\"Cauas\";\"ascii\"\n\"682548\";\"Cătina\";\"main\"\n\"682548\";\"Catina\";\"ascii\"\n\"682549\";\"Cătina\";\"main\"\n\"682549\";\"Catina\";\"ascii\"\n\"682560\";\"Căteasca\";\"main\"\n\"682560\";\"Cateasca\";\"ascii\"\n\"682579\";\"Catalina\";\"main\"\n\"682579\";\"Szentkatolna\";\"other\"\n\"682581\";\"Caţa\";\"main\"\n\"682581\";\"Cata\";\"ascii\"\n\"682581\";\"Katzendorf\";\"other\"\n\"682586\";\"Castra-Nova\";\"main\"\n\"682586\";\"Cacaleti\";\"other\"\n\"682586\";\"Cacaleţi\";\"other\"\n\"682589\";\"Castelu\";\"main\"\n\"682589\";\"Castelul\";\"other\"\n\"682589\";\"Chiostel\";\"other\"\n\"682604\";\"Caşin\";\"main\"\n\"682604\";\"Casin\";\"ascii\"\n\"682604\";\"Casinul\";\"other\"\n\"682604\";\"Caşinul\";\"other\"\n\"682606\";\"Casimcea\";\"main\"\n\"682614\";\"Căşeiu\";\"main\"\n\"682614\";\"Caseiu\";\"ascii\"\n\"682614\";\"Casei\";\"other\"\n\"682614\";\"Caseiul\";\"other\"\n\"682614\";\"Căşei\";\"other\"\n\"682614\";\"Căşeiul\";\"other\"\n\"682619\";\"Căscioarele\";\"main\"\n\"682619\";\"Cascioarele\";\"ascii\"\n\"682660\";\"Cărpiniş\";\"main\"\n\"682660\";\"Carpinis\";\"ascii\"\n\"682660\";\"Carpins\";\"other\"\n\"682660\";\"Cărpinş\";\"other\"\n\"682660\";\"Gertiamos\";\"other\"\n\"682660\";\"Gertianosch\";\"other\"\n\"682660\";\"Gyertyamos\";\"other\"\n\"682660\";\"Gyertyanos\";\"other\"\n\"682660\";\"Gyertyámos\";\"other\"\n\"682660\";\"Gyertyános\";\"other\"\n\"682660\";\"Kerpenis\";\"other\"\n\"682660\";\"Korpenis\";\"other\"\n\"682664\";\"Cărpinet\";\"main\"\n\"682664\";\"Carpinet\";\"ascii\"\n\"682664\";\"Kerpenyed\";\"other\"\n\"682664\";\"Kerpenyet\";\"other\"\n\"682664\";\"Kerpenyéd\";\"other\"\n\"682672\";\"Carpen\";\"main\"\n\"682672\";\"Carpenu\";\"other\"\n\"682672\";\"Carpenul\";\"other\"\n\"682679\";\"C.A. Rosetti\";\"main\"\n\"682679\";\"Satanof\";\"other\"\n\"682679\";\"Satul Nou\";\"other\"\n\"682679\";\"Statul Nou\";\"other\"\n\"682685\";\"Carei / Nagykároly / Großkarol\";\"main\"\n\"682685\";\"Carei / Nagykaroly / Grosskarol\";\"ascii\"\n\"682685\";\"Careii\";\"other\"\n\"682685\";\"Careii Mare\";\"other\"\n\"682685\";\"Careii Mari\";\"other\"\n\"682685\";\"Nagy Karoly\";\"other\"\n\"682685\";\"Nagy Károly\";\"other\"\n\"682685\";\"Nagykaroly\";\"other\"\n\"682685\";\"Nagykároly\";\"other\"\n\"682691\";\"Carcaliu\";\"main\"\n\"682691\";\"Carcaliul\";\"other\"\n\"682695\";\"Cărbuneşti\";\"main\"\n\"682695\";\"Carbunesti\";\"ascii\"\n\"682700\";\"Cărbunari\";\"main\"\n\"682700\";\"Carbunari\";\"ascii\"\n\"682700\";\"Karbonar\";\"other\"\n\"682707\";\"Caraula\";\"main\"\n\"682712\";\"Carastelec\";\"main\"\n\"682716\";\"Caraşova\";\"main\"\n\"682716\";\"Carasova\";\"ascii\"\n\"682716\";\"Crasova\";\"other\"\n\"682716\";\"Craşova\";\"other\"\n\"682729\";\"Caransebeş\";\"main\"\n\"682729\";\"Caransebes\";\"ascii\"\n\"682729\";\"Carensebes\";\"other\"\n\"682729\";\"Karansebes\";\"other\"\n\"682729\";\"Karansebeshe\";\"other\"\n\"682729\";\"Karánsebes\";\"other\"\n\"682729\";\"Карансебеше\";\"other\"\n\"682734\";\"Cărand\";\"main\"\n\"682734\";\"Carand\";\"ascii\"\n\"682734\";\"Carandu\";\"other\"\n\"682734\";\"Cărandu\";\"other\"\n\"682734\";\"Hevizkarand\";\"other\"\n\"682734\";\"Hévízkáránd\";\"other\"\n\"682734\";\"Karand\";\"other\"\n\"682734\";\"Káránd\";\"other\"\n\"682734\";\"Toplicza-Karand\";\"other\"\n\"682734\";\"Toplicza-Káránd\";\"other\"\n\"682747\";\"Caracal\";\"main\"\n\"682750\";\"Căpuşu Mare\";\"main\"\n\"682750\";\"Capusu Mare\";\"ascii\"\n\"682750\";\"Capusul-Mare\";\"other\"\n\"682750\";\"Căpuşul-Mare\";\"other\"\n\"682789\";\"Căpreni\";\"main\"\n\"682789\";\"Capreni\";\"ascii\"\n\"682789\";\"Caprenii de Mijloc\";\"other\"\n\"682789\";\"Caprenii de Myloc\";\"other\"\n\"682789\";\"Căprenii de Mijloc\";\"other\"\n\"682789\";\"Căprenii de Myloc\";\"other\"\n\"682800\";\"Căpleni\";\"main\"\n\"682800\";\"Capleni\";\"ascii\"\n\"682806\";\"Căpîlniţa\";\"main\"\n\"682806\";\"Capilnita\";\"ascii\"\n\"682806\";\"Capalnita\";\"other\"\n\"682806\";\"Căpâlniţa\";\"other\"\n\"682806\";\"Kapolnasfahi\";\"other\"\n\"682806\";\"Kapolnasfalu\";\"other\"\n\"682806\";\"Kàpolnàsfalù\";\"other\"\n\"682806\";\"Käpolnasfahi\";\"other\"\n\"682812\";\"Căpîlna\";\"main\"\n\"682812\";\"Capilna\";\"ascii\"\n\"682812\";\"Capalna\";\"other\"\n\"682812\";\"Căpâlna\";\"other\"\n\"682844\";\"Căneşti\";\"main\"\n\"682844\";\"Canesti\";\"ascii\"\n\"682844\";\"Pirlita\";\"other\"\n\"682844\";\"Pîrlita\";\"other\"\n\"682863\";\"Cămărzana\";\"main\"\n\"682863\";\"Camarzana\";\"ascii\"\n\"682863\";\"Camarazana\";\"other\"\n\"682863\";\"Camirzana\";\"other\"\n\"682863\";\"Cămîrzana\";\"other\"\n\"682863\";\"Cămărăzana\";\"other\"\n\"682863\";\"Komorzan\";\"other\"\n\"682866\";\"Cămăraşu\";\"main\"\n\"682866\";\"Camarasu\";\"ascii\"\n\"682866\";\"Camarasu-Desert\";\"other\"\n\"682866\";\"Camarasul\";\"other\"\n\"682866\";\"Cămaraşul\";\"other\"\n\"682866\";\"Cămăraşu-Deşert\";\"other\"\n\"682870\";\"Camăr\";\"main\"\n\"682870\";\"Camar\";\"ascii\"\n\"682870\";\"Kemer\";\"other\"\n\"682873\";\"Calvini\";\"main\"\n\"682907\";\"Călugăreni\";\"main\"\n\"682907\";\"Calugareni\";\"ascii\"\n\"682912\";\"Călugăreni\";\"main\"\n\"682912\";\"Calugareni\";\"ascii\"\n\"682931\";\"Călmăţuiu\";\"main\"\n\"682931\";\"Calmatuiu\";\"ascii\"\n\"682931\";\"Carligati\";\"other\"\n\"682931\";\"Cirligati\";\"other\"\n\"682931\";\"Cârligaţi\";\"other\"\n\"682931\";\"Cîrligaţi\";\"other\"\n\"682937\";\"Călineşti-Oaş\";\"main\"\n\"682937\";\"Calinesti-Oas\";\"ascii\"\n\"682937\";\"Calinesti\";\"other\"\n\"682937\";\"Călineşti\";\"other\"\n\"682953\";\"Călineşti\";\"main\"\n\"682953\";\"Calinesti\";\"ascii\"\n\"682958\";\"Călineşti\";\"main\"\n\"682958\";\"Calinesti\";\"ascii\"\n\"682958\";\"Calinosti\";\"other\"\n\"682958\";\"Călinoşti\";\"other\"\n\"682960\";\"Călineşti\";\"main\"\n\"682960\";\"Calinesti\";\"ascii\"\n\"682960\";\"Calmesti\";\"other\"\n\"682960\";\"Călmesti\";\"other\"\n\"682972\";\"Călimăneşti\";\"main\"\n\"682972\";\"Calimanesti\";\"ascii\"\n\"682997\";\"Căldăraru\";\"main\"\n\"682997\";\"Caldararu\";\"ascii\"\n\"682997\";\"Caldararul\";\"other\"\n\"682997\";\"Caldarau\";\"other\"\n\"682997\";\"Căldărarul\";\"other\"\n\"682997\";\"Căldărău\";\"other\"\n\"683004\";\"Călăţele\";\"main\"\n\"683004\";\"Calatele\";\"ascii\"\n\"683020\";\"Călăraşi\";\"main\"\n\"683020\";\"Calarasi\";\"ascii\"\n\"683020\";\"Ciornohal\";\"other\"\n\"683020\";\"Kalarasi\";\"other\"\n\"683020\";\"Калараси\";\"other\"\n\"683021\";\"Călăraşi\";\"main\"\n\"683021\";\"Calarasi\";\"ascii\"\n\"683021\";\"Harastas\";\"other\"\n\"683021\";\"Hărăstaş\";\"other\"\n\"683021\";\"Kalarasi\";\"other\"\n\"683021\";\"Калараси\";\"other\"\n\"683023\";\"Călăraşi\";\"main\"\n\"683023\";\"Calarasi\";\"ascii\"\n\"683023\";\"Calarasu\";\"other\"\n\"683023\";\"Calarasul\";\"other\"\n\"683023\";\"Călăraşu\";\"other\"\n\"683023\";\"Călăraşul\";\"other\"\n\"683023\";\"Kalarasi\";\"other\"\n\"683023\";\"Калараси\";\"other\"\n\"683030\";\"Călan\";\"main\"\n\"683030\";\"Calan\";\"ascii\"\n\"683030\";\"Calanul-Mare\";\"other\"\n\"683030\";\"Călanul-Mare\";\"other\"\n\"683033\";\"Calafindeşti\";\"main\"\n\"683033\";\"Calafindesti\";\"ascii\"\n\"683034\";\"Calafat\";\"main\"\n\"683041\";\"Cajvana\";\"main\"\n\"683042\";\"Căiuţi-Sat\";\"main\"\n\"683042\";\"Caiuti-Sat\";\"ascii\"\n\"683050\";\"Căianu Mic\";\"main\"\n\"683050\";\"Caianu Mic\";\"ascii\"\n\"683050\";\"Caianul-Mic\";\"other\"\n\"683051\";\"Căianu Mic\";\"main\"\n\"683051\";\"Caianu Mic\";\"ascii\"\n\"683084\";\"Cacica\";\"main\"\n\"683092\";\"Căbeşti\";\"main\"\n\"683092\";\"Cabesti\";\"ascii\"\n\"683100\";\"Buzoeşti\";\"main\"\n\"683100\";\"Buzoesti\";\"ascii\"\n\"683105\";\"Buziaş\";\"main\"\n\"683105\";\"Buzias\";\"ascii\"\n\"683105\";\"Busiasch\";\"other\"\n\"683105\";\"Buziasfurdo\";\"other\"\n\"683105\";\"Buziás\";\"other\"\n\"683105\";\"Buziásfürdő\";\"other\"\n\"683111\";\"Buzescu\";\"main\"\n\"683123\";\"Buzău\";\"main\"\n\"683123\";\"Buzau\";\"ascii\"\n\"683123\";\"Buzeu\";\"other\"\n\"683123\";\"Buzuu\";\"other\"\n\"683123\";\"Бузъу\";\"other\"\n\"683129\";\"Buza\";\"main\"\n\"683132\";\"Buturugeni\";\"main\"\n\"683132\";\"Buturugenii\";\"other\"\n\"683132\";\"Buturugenii-Falcoianca\";\"other\"\n\"683146\";\"Butoieşti\";\"main\"\n\"683146\";\"Butoiesti\";\"ascii\"\n\"683146\";\"Butoesti\";\"other\"\n\"683153\";\"Butimanu\";\"main\"\n\"683153\";\"Buliman\";\"other\"\n\"683153\";\"Butimanul\";\"other\"\n\"683160\";\"Buteni\";\"main\"\n\"683160\";\"Bokony\";\"other\"\n\"683160\";\"Buttyen\";\"other\"\n\"683160\";\"Buttyin\";\"other\"\n\"683160\";\"Buttyén\";\"other\"\n\"683160\";\"Butyen\";\"other\"\n\"683160\";\"Butyin\";\"other\"\n\"683160\";\"Butyén\";\"other\"\n\"683160\";\"Bököny\";\"other\"\n\"683160\";\"Korosbokeny\";\"other\"\n\"683160\";\"Körösbökény\";\"other\"\n\"683166\";\"Butea\";\"main\"\n\"683178\";\"Bustuchin\";\"main\"\n\"683178\";\"Bustucheni\";\"other\"\n\"683178\";\"Bustuchini\";\"other\"\n\"683179\";\"Buşteni\";\"main\"\n\"683179\";\"Busteni\";\"ascii\"\n\"683179\";\"Bustenii\";\"other\"\n\"683202\";\"Burueneşti\";\"main\"\n\"683202\";\"Buruenesti\";\"ascii\"\n\"683226\";\"Burila Mare\";\"main\"\n\"683252\";\"Bunteşti\";\"main\"\n\"683252\";\"Buntesti\";\"ascii\"\n\"683252\";\"Bontesd\";\"other\"\n\"683252\";\"Buntyesd\";\"other\"\n\"683268\";\"Buneşti-Regat\";\"main\"\n\"683268\";\"Bunesti-Regat\";\"ascii\"\n\"683278\";\"Buneşti\";\"main\"\n\"683278\";\"Bunesti\";\"ascii\"\n\"683279\";\"Buneşti\";\"main\"\n\"683279\";\"Bunesti\";\"ascii\"\n\"683279\";\"Bundorf\";\"other\"\n\"683282\";\"Buneşti\";\"main\"\n\"683282\";\"Bunesti\";\"ascii\"\n\"683294\";\"Bumbeşti-Jiu\";\"main\"\n\"683294\";\"Bumbesti-Jiu\";\"ascii\"\n\"683294\";\"Bumbesti\";\"other\"\n\"683294\";\"Bumbestii-Jiu\";\"other\"\n\"683294\";\"Bumbeşti\";\"other\"\n\"683294\";\"Bumbeştii-Jiu\";\"other\"\n\"683305\";\"Bulzeşti\";\"main\"\n\"683305\";\"Bulzesti\";\"ascii\"\n\"683305\";\"Bulzesta\";\"other\"\n\"683310\";\"Bulz\";\"main\"\n\"683328\";\"Bulbucata\";\"main\"\n\"683342\";\"Bujoru\";\"main\"\n\"683342\";\"Bujorul\";\"other\"\n\"683346\";\"Bujoreni\";\"main\"\n\"683352\";\"Bujor\";\"main\"\n\"683352\";\"Bujor Targ\";\"other\"\n\"683352\";\"Bujor Târg\";\"other\"\n\"683352\";\"Bujor-Tirg\";\"other\"\n\"683352\";\"Bujor-Tîrg\";\"other\"\n\"683352\";\"Ion Gheorghe Duca\";\"other\"\n\"683352\";\"Targu Bujor\";\"other\"\n\"683352\";\"Torg Bujor\";\"other\"\n\"683352\";\"Târgu Bujor\";\"other\"\n\"683365\";\"Buhuşi\";\"main\"\n\"683365\";\"Buhusi\";\"ascii\"\n\"683365\";\"Buhus\";\"other\"\n\"683365\";\"Buhuş\";\"other\"\n\"683367\";\"Buhoci\";\"main\"\n\"683367\";\"Bejghir\";\"other\"\n\"683367\";\"Buhociu\";\"other\"\n\"683367\";\"Satu Nou\";\"other\"\n\"683386\";\"Bughea de Jos\";\"main\"\n\"683394\";\"Buftea\";\"main\"\n\"683398\";\"Buduslău\";\"main\"\n\"683398\";\"Buduslau\";\"ascii\"\n\"683398\";\"Buduslaul\";\"other\"\n\"683398\";\"Buduşlăul\";\"other\"\n\"683405\";\"Budureasa\";\"main\"\n\"683422\";\"Budila\";\"main\"\n\"683434\";\"Budeşti\";\"main\"\n\"683434\";\"Budesti\";\"ascii\"\n\"683437\";\"Budeşti\";\"main\"\n\"683437\";\"Budesti\";\"ascii\"\n\"683445\";\"Budeşti\";\"main\"\n\"683445\";\"Budesti\";\"ascii\"\n\"683447\";\"Budeşti\";\"main\"\n\"683447\";\"Budesti\";\"ascii\"\n\"683455\";\"Budeasa Mică\";\"main\"\n\"683455\";\"Budeasa Mica\";\"ascii\"\n\"683469\";\"Budacu de Jos\";\"main\"\n\"683469\";\"Budacul-de-Jos\";\"other\"\n\"683496\";\"Buda\";\"main\"\n\"683506\";\"Bucureşti\";\"main\"\n\"683506\";\"Bucuresti\";\"ascii\"\n\"683506\";\"BUH\";\"other\"\n\"683506\";\"Boekarest\";\"other\"\n\"683506\";\"Boukouresti\";\"other\"\n\"683506\";\"Bucarest\";\"other\"\n\"683506\";\"Bucaresta\";\"other\"\n\"683506\";\"Bucareste\";\"other\"\n\"683506\";\"Bucarèst\";\"other\"\n\"683506\";\"Bucharest\";\"other\"\n\"683506\";\"Buekres\";\"other\"\n\"683506\";\"Bukarest\";\"other\"\n\"683506\";\"Bukarestas\";\"other\"\n\"683506\";\"Bukareste\";\"other\"\n\"683506\";\"Bukaresto\";\"other\"\n\"683506\";\"Bukareszt\";\"other\"\n\"683506\";\"Bukareŝto\";\"other\"\n\"683506\";\"Bukareštas\";\"other\"\n\"683506\";\"Bukharest\";\"other\"\n\"683506\";\"Bukureshh\";\"other\"\n\"683506\";\"Bukuresht\";\"other\"\n\"683506\";\"Bukuresht'\";\"other\"\n\"683506\";\"Bukureshta\";\"other\"\n\"683506\";\"Bukureshti\";\"other\"\n\"683506\";\"Bukurest\";\"other\"\n\"683506\";\"Bukurešt\";\"other\"\n\"683506\";\"Bukurešť\";\"other\"\n\"683506\";\"Buxarest\";\"other\"\n\"683506\";\"Búkarest\";\"other\"\n\"683506\";\"Bûkarest\";\"other\"\n\"683506\";\"Bükreş\";\"other\"\n\"683506\";\"bkharst\";\"other\"\n\"683506\";\"bu jia lei si te\";\"other\"\n\"683506\";\"bukaresuto\";\"other\"\n\"683506\";\"bukulesyuti\";\"other\"\n\"683506\";\"bwkharst\";\"other\"\n\"683506\";\"bwqrst\";\"other\"\n\"683506\";\"Βουκουρέστι\";\"other\"\n\"683506\";\"Букурешт\";\"other\"\n\"683506\";\"Букурешть\";\"other\"\n\"683506\";\"Букурещ\";\"other\"\n\"683506\";\"Бухарест\";\"other\"\n\"683506\";\"Բուխարեստ\";\"other\"\n\"683506\";\"בוקאַרעשט\";\"other\"\n\"683506\";\"בוקרשט\";\"other\"\n\"683506\";\"بخارست\";\"other\"\n\"683506\";\"بوخارست\";\"other\"\n\"683506\";\"بۇخارېست\";\"other\"\n\"683506\";\"པུ་ཁ་རེ་སིད\";\"other\"\n\"683506\";\"ბუქარესტი\";\"other\"\n\"683506\";\"ቡካረስት\";\"other\"\n\"683506\";\"ブカレスト\";\"other\"\n\"683506\";\"布加勒斯特\";\"other\"\n\"683506\";\"부쿠레슈티\";\"other\"\n\"683508\";\"Bucureşci\";\"main\"\n\"683508\";\"Bucuresci\";\"ascii\"\n\"683508\";\"Bucuresti\";\"other\"\n\"683508\";\"Bucureşti\";\"other\"\n\"683517\";\"Bucu\";\"main\"\n\"683517\";\"Bucul\";\"other\"\n\"683528\";\"Bucşani\";\"main\"\n\"683528\";\"Bucsani\";\"ascii\"\n\"683530\";\"Bucşani\";\"main\"\n\"683530\";\"Bucsani\";\"ascii\"\n\"683535\";\"Bucovineni\";\"main\"\n\"683543\";\"Bucovăţ\";\"main\"\n\"683543\";\"Bucovat\";\"ascii\"\n\"683543\";\"Bucovatu\";\"other\"\n\"683543\";\"Bucovatul\";\"other\"\n\"683543\";\"Bucovăţu\";\"other\"\n\"683543\";\"Bucovăţul\";\"other\"\n\"683547\";\"Bucov\";\"main\"\n\"683547\";\"Satu Bucovei\";\"other\"\n\"683550\";\"Bucoşniţa\";\"main\"\n\"683550\";\"Bucosnita\";\"ascii\"\n\"683553\";\"Bucium-Orlea\";\"main\"\n\"683559\";\"Buciumi\";\"main\"\n\"683559\";\"Buciumi-Bodia\";\"other\"\n\"683559\";\"Buciumii\";\"other\"\n\"683565\";\"Buciumeni\";\"main\"\n\"683566\";\"Buciumeni\";\"main\"\n\"683566\";\"Buonimeni\";\"other\"\n\"683577\";\"Bucium\";\"main\"\n\"683582\";\"Bucinişu\";\"main\"\n\"683582\";\"Bucinisu\";\"ascii\"\n\"683582\";\"Bucinisul\";\"other\"\n\"683582\";\"Bucinişul\";\"other\"\n\"683588\";\"Buchin\";\"main\"\n\"683594\";\"Buceş\";\"main\"\n\"683594\";\"Buces\";\"ascii\"\n\"683602\";\"Bucecea\";\"main\"\n\"683607\";\"Brusturoasa\";\"main\"\n\"683612\";\"Brusturi\";\"main\"\n\"683614\";\"Brusturi\";\"main\"\n\"683637\";\"Broşteni\";\"main\"\n\"683637\";\"Brosteni\";\"ascii\"\n\"683637\";\"Brosteri\";\"other\"\n\"683637\";\"Broşteri\";\"other\"\n\"683641\";\"Broşteni\";\"main\"\n\"683641\";\"Brosteni\";\"ascii\"\n\"683646\";\"Broşteni\";\"main\"\n\"683646\";\"Brosteni\";\"ascii\"\n\"683656\";\"Broscăuţi\";\"main\"\n\"683656\";\"Broscauti\";\"ascii\"\n\"683662\";\"Brodina\";\"main\"\n\"683679\";\"Brîncoveni\";\"main\"\n\"683679\";\"Brincoveni\";\"ascii\"\n\"683679\";\"Brancoveni\";\"other\"\n\"683679\";\"Brâncoveni\";\"other\"\n\"683685\";\"Brînceni\";\"main\"\n\"683685\";\"Brinceni\";\"ascii\"\n\"683685\";\"Branceni\";\"other\"\n\"683685\";\"Brânceni\";\"other\"\n\"683695\";\"Brezoi\";\"main\"\n\"683695\";\"Brezoiu\";\"other\"\n\"683695\";\"Brezoiul\";\"other\"\n\"683697\";\"Brezoaiele\";\"main\"\n\"683697\";\"Brailoiu\";\"other\"\n\"683697\";\"Brezoaele-Brailoiu\";\"other\"\n\"683697\";\"Brezoaele-Brăiloiu\";\"other\"\n\"683697\";\"Brezoaiele-Brailoiu\";\"other\"\n\"683697\";\"Brezoaiele-Brăiloiu\";\"other\"\n\"683697\";\"Brăiloiu\";\"other\"\n\"683701\";\"Brezniţa Ocol\";\"main\"\n\"683701\";\"Breznita Ocol\";\"ascii\"\n\"683701\";\"Bresnica\";\"other\"\n\"683701\";\"Bresnita\";\"other\"\n\"683701\";\"Bresnita-Ocol\";\"other\"\n\"683701\";\"Bresnita-de-Ocol\";\"other\"\n\"683701\";\"Bresniţa\";\"other\"\n\"683701\";\"Bresniţa-Ocol\";\"other\"\n\"683701\";\"Bresniţa-de-Ocol\";\"other\"\n\"683703\";\"Brezniţa-Motru\";\"main\"\n\"683703\";\"Breznita-Motru\";\"ascii\"\n\"683703\";\"Bresnita-Motru\";\"other\"\n\"683703\";\"Bresnita-de-Motru\";\"other\"\n\"683703\";\"Bresniţa-de-Motru\";\"other\"\n\"683703\";\"Breşniţa-Motru\";\"other\"\n\"683716\";\"Breţcu\";\"main\"\n\"683716\";\"Bretcu\";\"ascii\"\n\"683716\";\"Bereczk\";\"other\"\n\"683716\";\"Brecku\";\"other\"\n\"683716\";\"Bretcul\";\"other\"\n\"683716\";\"Breţcul\";\"other\"\n\"683725\";\"Brebu Mînăstirei\";\"main\"\n\"683725\";\"Brebu Minastirei\";\"ascii\"\n\"683725\";\"Brebu\";\"other\"\n\"683725\";\"Brebu-Manastirei\";\"other\"\n\"683725\";\"Brebu-Monastire\";\"other\"\n\"683725\";\"Brebu-Mânăstirei\";\"other\"\n\"683725\";\"Brebul\";\"other\"\n\"683725\";\"Brebul-Manastirei\";\"other\"\n\"683725\";\"Brebul-Mânăstirei\";\"other\"\n\"683731\";\"Brebu\";\"main\"\n\"683731\";\"Brebul\";\"other\"\n\"683731\";\"Perlo\";\"other\"\n\"683731\";\"Perlő\";\"other\"\n\"683739\";\"Brebeni\";\"main\"\n\"683739\";\"Brebeni Sarbii-Magiesesc\";\"other\"\n\"683739\";\"Brebeni Sârbii-Magiesesc\";\"other\"\n\"683739\";\"Brebeni-Sarbi\";\"other\"\n\"683739\";\"Brebeni-Sirbi\";\"other\"\n\"683739\";\"Brebeni-Sârbi\";\"other\"\n\"683739\";\"Brebeni-Sîrbi\";\"other\"\n\"683739\";\"Brebenii-Sarbi\";\"other\"\n\"683739\";\"Brebenii-Sârbi\";\"other\"\n\"683755\";\"Breaza\";\"main\"\n\"683758\";\"Breaza\";\"main\"\n\"683758\";\"Beresztelke\";\"other\"\n\"683760\";\"Breaza\";\"main\"\n\"683761\";\"Breaza\";\"main\"\n\"683764\";\"Breasta\";\"main\"\n\"683765\";\"Brazii de Sus\";\"main\"\n\"683765\";\"Brazi\";\"other\"\n\"683765\";\"Brazi de Sus\";\"other\"\n\"683769\";\"Brazii\";\"main\"\n\"683769\";\"Raj\";\"other\"\n\"683769\";\"Saturau\";\"other\"\n\"683769\";\"Saturău\";\"other\"\n\"683769\";\"Szatureo\";\"other\"\n\"683769\";\"Szatureő\";\"other\"\n\"683769\";\"Szaturo\";\"other\"\n\"683769\";\"Szaturó\";\"other\"\n\"683770\";\"Brazii\";\"main\"\n\"683770\";\"Ludfarka\";\"other\"\n\"683770\";\"Radulesti\";\"other\"\n\"683770\";\"Radulesti Filitis\";\"other\"\n\"683770\";\"Radulestii-Filitis\";\"other\"\n\"683770\";\"Răduleşti\";\"other\"\n\"683770\";\"Răduleşti Filitis\";\"other\"\n\"683770\";\"Răduleştii-Filitis\";\"other\"\n\"683791\";\"Bratoveşti\";\"main\"\n\"683791\";\"Bratovesti\";\"ascii\"\n\"683828\";\"Brateş\";\"main\"\n\"683828\";\"Brates\";\"ascii\"\n\"683828\";\"Baratos\";\"other\"\n\"683828\";\"Baràtos\";\"other\"\n\"683832\";\"Brateiu\";\"main\"\n\"683832\";\"Brateiul\";\"other\"\n\"683837\";\"Bratca\";\"main\"\n\"683837\";\"Banatka\";\"other\"\n\"683837\";\"Banátka\";\"other\"\n\"683844\";\"Braşov\";\"main\"\n\"683844\";\"Brasov\";\"ascii\"\n\"683844\";\"Brashov\";\"other\"\n\"683844\";\"Brasso\";\"other\"\n\"683844\";\"Brassó\";\"other\"\n\"683844\";\"Braszow\";\"other\"\n\"683844\";\"Braszów\";\"other\"\n\"683844\";\"Brazov\";\"other\"\n\"683844\";\"Brašov\";\"other\"\n\"683844\";\"Kronstadt\";\"other\"\n\"683844\";\"Kronstant\";\"other\"\n\"683844\";\"Orasu Stalin\";\"other\"\n\"683844\";\"Orasul Stalin\";\"other\"\n\"683844\";\"Oraşu Stalin\";\"other\"\n\"683844\";\"Oraşul Stalin\";\"other\"\n\"683844\";\"beulasyobeu\";\"other\"\n\"683844\";\"brswb\";\"other\"\n\"683844\";\"burashofu\";\"other\"\n\"683844\";\"Брашов\";\"other\"\n\"683844\";\"ברשוב\";\"other\"\n\"683844\";\"ブラショフ\";\"other\"\n\"683844\";\"브라쇼브\";\"other\"\n\"683859\";\"Braniştea\";\"main\"\n\"683859\";\"Branistea\";\"ascii\"\n\"683861\";\"Braniştea\";\"main\"\n\"683861\";\"Branistea\";\"ascii\"\n\"683863\";\"Braniştea\";\"main\"\n\"683863\";\"Branistea\";\"ascii\"\n\"683873\";\"Brănişca\";\"main\"\n\"683873\";\"Branisca\";\"ascii\"\n\"683884\";\"Brăneşti\";\"main\"\n\"683884\";\"Branesti\";\"ascii\"\n\"683884\";\"Branestii\";\"other\"\n\"683884\";\"Brăneştii\";\"other\"\n\"683885\";\"Brăneşti\";\"main\"\n\"683885\";\"Branesti\";\"ascii\"\n\"683886\";\"Brăneşti\";\"main\"\n\"683886\";\"Branesti\";\"ascii\"\n\"683890\";\"Bran\";\"main\"\n\"683890\";\"Bran-Poarta\";\"other\"\n\"683890\";\"Bran-Poartă\";\"other\"\n\"683890\";\"Slottet Bran\";\"other\"\n\"683890\";\"Toercsvar\";\"other\"\n\"683890\";\"Torzburg\";\"other\"\n\"683890\";\"Törcsvár\";\"other\"\n\"683890\";\"Törzburg\";\"other\"\n\"683893\";\"Braloştiţa\";\"main\"\n\"683893\";\"Bralostita\";\"ascii\"\n\"683902\";\"Brăila\";\"main\"\n\"683902\";\"Braila\";\"ascii\"\n\"683902\";\"Brailov\";\"other\"\n\"683902\";\"Braiła\";\"other\"\n\"683902\";\"Ibrail\";\"other\"\n\"683902\";\"Браила\";\"other\"\n\"683902\";\"בראילה\";\"other\"\n\"683908\";\"Brăhăşeştii de Jos\";\"main\"\n\"683908\";\"Brahasestii de Jos\";\"ascii\"\n\"683914\";\"Bragadiru\";\"main\"\n\"683914\";\"Bragadirul\";\"other\"\n\"683915\";\"Bragadiru\";\"main\"\n\"683915\";\"Bragadirul\";\"other\"\n\"683919\";\"Brăeşti\";\"main\"\n\"683919\";\"Braesti\";\"ascii\"\n\"683921\";\"Brăeşti\";\"main\"\n\"683921\";\"Braesti\";\"ascii\"\n\"683921\";\"Bradesti\";\"other\"\n\"683921\";\"Brădeşti\";\"other\"\n\"683922\";\"Brăeşti\";\"main\"\n\"683922\";\"Braesti\";\"ascii\"\n\"683922\";\"Braestii\";\"other\"\n\"683922\";\"Brăestii\";\"other\"\n\"683924\";\"Brăduţ\";\"main\"\n\"683924\";\"Bradut\";\"ascii\"\n\"683924\";\"Bardocz\";\"other\"\n\"683924\";\"Bardócz\";\"other\"\n\"683926\";\"Brăduleţ\";\"main\"\n\"683926\";\"Bradulet\";\"ascii\"\n\"683926\";\"Brateni\";\"other\"\n\"683926\";\"Bratienii\";\"other\"\n\"683926\";\"Brăteni\";\"other\"\n\"683926\";\"Brătienii\";\"other\"\n\"683933\";\"Bradu\";\"main\"\n\"683933\";\"Bradu de Jos\";\"other\"\n\"683933\";\"Bradul-de Jos\";\"other\"\n\"683959\";\"Brădeşti\";\"main\"\n\"683959\";\"Bradesti\";\"ascii\"\n\"683959\";\"Fenyed\";\"other\"\n\"683959\";\"Fenyèd\";\"other\"\n\"683961\";\"Brădeşti\";\"main\"\n\"683961\";\"Bradesti\";\"ascii\"\n\"683963\";\"Brădeni\";\"main\"\n\"683963\";\"Bradeni\";\"ascii\"\n\"683963\";\"Hendorf\";\"other\"\n\"683965\";\"Brădeanu\";\"main\"\n\"683965\";\"Bradeanu\";\"ascii\"\n\"683965\";\"Bradeanul\";\"other\"\n\"683965\";\"Brădeanul\";\"other\"\n\"683974\";\"Brad\";\"main\"\n\"683979\";\"Brabova\";\"main\"\n\"683985\";\"Bozovici\";\"main\"\n\"683985\";\"Bozovic\";\"other\"\n\"683989\";\"Bozioru\";\"main\"\n\"684000\";\"Bozieni\";\"main\"\n\"684000\";\"Bozienii de Jus\";\"other\"\n\"684000\";\"Bozienii-Fundacescului\";\"other\"\n\"684000\";\"Bozienii-Fundăcescului\";\"other\"\n\"684039\";\"Botoşani\";\"main\"\n\"684039\";\"Botosani\";\"ascii\"\n\"684039\";\"Botoshani\";\"other\"\n\"684039\";\"Botoszany\";\"other\"\n\"684039\";\"Ботошани\";\"other\"\n\"684039\";\"בוטושאן\";\"other\"\n\"684041\";\"Botoşana\";\"main\"\n\"684041\";\"Botosana\";\"ascii\"\n\"684041\";\"Botusana\";\"other\"\n\"684041\";\"Botuşana\";\"other\"\n\"684045\";\"Botoroaga\";\"main\"\n\"684045\";\"Hodoroaga\";\"other\"\n\"684045\";\"Ion Gheorghe Duca\";\"other\"\n\"684054\";\"Botiza\";\"main\"\n\"684056\";\"Botiz\";\"main\"\n\"684070\";\"Boţeşti\";\"main\"\n\"684070\";\"Botesti\";\"ascii\"\n\"684077\";\"Boţeşti\";\"main\"\n\"684077\";\"Botesti\";\"ascii\"\n\"684083\";\"Boteni\";\"main\"\n\"684083\";\"Boten\";\"other\"\n\"684103\";\"Boşorod\";\"main\"\n\"684103\";\"Bosorod\";\"ascii\"\n\"684116\";\"Bosanci\";\"main\"\n\"684116\";\"Bosancea\";\"other\"\n\"684143\";\"Borsec\";\"main\"\n\"684143\";\"Borszek\";\"other\"\n\"684143\";\"Borszèk\";\"other\"\n\"684156\";\"Borşa\";\"main\"\n\"684156\";\"Borsa\";\"ascii\"\n\"684159\";\"Borşa\";\"main\"\n\"684159\";\"Borsa\";\"ascii\"\n\"684159\";\"Kolozsoorsa\";\"other\"\n\"684161\";\"Borş\";\"main\"\n\"684161\";\"Bors\";\"ascii\"\n\"684170\";\"Boroşneu Mare\";\"main\"\n\"684170\";\"Borosneu Mare\";\"ascii\"\n\"684170\";\"Borosnaul-Mare\";\"other\"\n\"684170\";\"Borosneul-Mare\";\"other\"\n\"684170\";\"Boroşnaul-Mare\";\"other\"\n\"684170\";\"Boroşneul-Mare\";\"other\"\n\"684170\";\"Nagyborosnyo\";\"other\"\n\"684170\";\"Nagyborosnyò\";\"other\"\n\"684179\";\"Borod\";\"main\"\n\"684183\";\"Boroaia\";\"main\"\n\"684183\";\"Boroaia-Risca\";\"other\"\n\"684183\";\"Boroaia-Rîşca\";\"other\"\n\"684183\";\"Sibicheni\";\"other\"\n\"684183\";\"Suseni\";\"other\"\n\"684190\";\"Borleşti\";\"main\"\n\"684190\";\"Borlesti\";\"ascii\"\n\"684203\";\"Borduşani\";\"main\"\n\"684203\";\"Bordusani\";\"ascii\"\n\"684203\";\"Bordusanii\";\"other\"\n\"684203\";\"Borduşanii\";\"other\"\n\"684211\";\"Bordeşti\";\"main\"\n\"684211\";\"Bordesti\";\"ascii\"\n\"684211\";\"Bordesti-de-Sus\";\"other\"\n\"684211\";\"Bordestii de Sus\";\"other\"\n\"684211\";\"Bordeşti-de-Sus\";\"other\"\n\"684211\";\"Bordeştii de Sus\";\"other\"\n\"684216\";\"Bordei Verde\";\"main\"\n\"684216\";\"Bordeiu-Verde\";\"other\"\n\"684216\";\"Bordeiul Verde\";\"other\"\n\"684226\";\"Borcea\";\"main\"\n\"684226\";\"Cacargeaua\";\"other\"\n\"684226\";\"Cocargeaua\";\"other\"\n\"684226\";\"Cocargeaua Noua\";\"other\"\n\"684226\";\"Cocargeaua Nouă\";\"other\"\n\"684226\";\"Cocargeua\";\"other\"\n\"684230\";\"Borca\";\"main\"\n\"684232\";\"Borăscu\";\"main\"\n\"684232\";\"Borascu\";\"ascii\"\n\"684262\";\"Boloteşti\";\"main\"\n\"684262\";\"Bolotesti\";\"ascii\"\n\"684266\";\"Bolintin Vale\";\"main\"\n\"684266\";\"Bolintin-Vale\";\"other\"\n\"684266\";\"Bolintin-din-Vale\";\"other\"\n\"684266\";\"Bolintineanu\";\"other\"\n\"684266\";\"Bolintinu-din-Vale\";\"other\"\n\"684266\";\"Bolintinul-din-Vale\";\"other\"\n\"684266\";\"Болинтин-Вале\";\"other\"\n\"684269\";\"Bolintin Deal\";\"main\"\n\"684269\";\"Bolintin\";\"other\"\n\"684269\";\"Bolintinu\";\"other\"\n\"684269\";\"Bolintinu din Deal\";\"other\"\n\"684269\";\"Bolintinul\";\"other\"\n\"684275\";\"Boldur\";\"main\"\n\"684275\";\"Boldor\";\"other\"\n\"684279\";\"Boldu\";\"main\"\n\"684279\";\"Boldul\";\"other\"\n\"684280\";\"Boldeşti-Scăeni\";\"main\"\n\"684280\";\"Boldesti-Scaeni\";\"ascii\"\n\"684286\";\"Boldeşti\";\"main\"\n\"684286\";\"Boldesti\";\"ascii\"\n\"684291\";\"Bolboşi\";\"main\"\n\"684291\";\"Bolbosi\";\"ascii\"\n\"684308\";\"Boiu Mare\";\"main\"\n\"684308\";\"Boiul-Mare\";\"other\"\n\"684328\";\"Boişoara\";\"main\"\n\"684328\";\"Boisoara\";\"ascii\"\n\"684328\";\"Doisoara\";\"other\"\n\"684328\";\"Doişoara\";\"other\"\n\"684331\";\"Boianu Mare\";\"main\"\n\"684331\";\"Boianul-Mare\";\"other\"\n\"684376\";\"Bogheşti\";\"main\"\n\"684376\";\"Boghesti\";\"ascii\"\n\"684376\";\"Boghesti de Jos\";\"other\"\n\"684376\";\"Boghestii-de-Jos\";\"other\"\n\"684376\";\"Bogheşti de Jos\";\"other\"\n\"684376\";\"Bogheştii-de-Jos\";\"other\"\n\"684381\";\"Bogdan Vodă\";\"main\"\n\"684381\";\"Bogdan Voda\";\"ascii\"\n\"684381\";\"Cuhea\";\"other\"\n\"684384\";\"Bogdăniţa\";\"main\"\n\"684384\";\"Bogdanita\";\"ascii\"\n\"684389\";\"Bogdăneşti\";\"main\"\n\"684389\";\"Bogdanesti\";\"ascii\"\n\"684391\";\"Bogdăneşti\";\"main\"\n\"684391\";\"Bogdanesti\";\"ascii\"\n\"684391\";\"Bogdaneasca\";\"other\"\n\"684391\";\"Bogdăneasca\";\"other\"\n\"684391\";\"Plopi\";\"other\"\n\"684399\";\"Bogdăneşti\";\"main\"\n\"684399\";\"Bogdanesti\";\"ascii\"\n\"684399\";\"Bogdanestii\";\"other\"\n\"684399\";\"Bogdăneştii\";\"other\"\n\"684406\";\"Bogdand\";\"main\"\n\"684406\";\"Bogdan\";\"other\"\n\"684415\";\"Bogdana\";\"main\"\n\"684423\";\"Bogaţi\";\"main\"\n\"684423\";\"Bogati\";\"ascii\"\n\"684435\";\"Bogata\";\"main\"\n\"684435\";\"Bogata de Mures\";\"other\"\n\"684435\";\"Bogata de Mureş\";\"other\"\n\"684452\";\"Bodoc\";\"main\"\n\"684452\";\"Bodok\";\"other\"\n\"684461\";\"Bodeşti\";\"main\"\n\"684461\";\"Bodesti\";\"ascii\"\n\"684461\";\"Bodest Precista\";\"other\"\n\"684461\";\"Bodesti Precista\";\"other\"\n\"684461\";\"Bodesti-de-Sus\";\"other\"\n\"684461\";\"Bodestii-de-Sus\";\"other\"\n\"684461\";\"Bodeşti Precista\";\"other\"\n\"684461\";\"Bodeşti-de-Sus\";\"other\"\n\"684461\";\"Bodeştii-de-Sus\";\"other\"\n\"684477\";\"Bod\";\"main\"\n\"684481\";\"Bocsig\";\"main\"\n\"684481\";\"Caragheorghevici\";\"other\"\n\"684489\";\"Bocşa\";\"main\"\n\"684489\";\"Bocsa\";\"ascii\"\n\"684490\";\"Bocşa\";\"main\"\n\"684490\";\"Bocsa\";\"ascii\"\n\"684490\";\"Bocsa Montana\";\"other\"\n\"684490\";\"Bocsa Romina\";\"other\"\n\"684490\";\"Bocsa-Romaana\";\"other\"\n\"684490\";\"Bocsa-Romana\";\"other\"\n\"684490\";\"Bocşa Montană\";\"other\"\n\"684490\";\"Bocşa Romînă\";\"other\"\n\"684490\";\"Bocşa-Româană\";\"other\"\n\"684490\";\"Bocşa-Română\";\"other\"\n\"684490\";\"Bogsan\";\"other\"\n\"684490\";\"Bogsán\";\"other\"\n\"684490\";\"Boksa Romana\";\"other\"\n\"684490\";\"Boksan\";\"other\"\n\"684490\";\"Boksanbanya\";\"other\"\n\"684490\";\"Bokschan\";\"other\"\n\"684490\";\"Boksán\";\"other\"\n\"684490\";\"Boksánbánya\";\"other\"\n\"684490\";\"Bokša Romana\";\"other\"\n\"684490\";\"Deutsch-Bogschan\";\"other\"\n\"684490\";\"Deutsch-Bokschan\";\"other\"\n\"684490\";\"Nemet-Bogsan\";\"other\"\n\"684490\";\"Nemet-Bogschan\";\"other\"\n\"684490\";\"Nemet-Boksan\";\"other\"\n\"684490\";\"Német-Bogschán\";\"other\"\n\"684490\";\"Német-Bogsán\";\"other\"\n\"684490\";\"Német-Boksán\";\"other\"\n\"684490\";\"Varkboksan\";\"other\"\n\"684490\";\"Vassafalva\";\"other\"\n\"684490\";\"Várkboksán\";\"other\"\n\"684490\";\"Wallachisch-Bokschan\";\"other\"\n\"684490\";\"Werk-Bogschan\";\"other\"\n\"684496\";\"Bocicoiu Mare\";\"main\"\n\"684496\";\"Bocicoiul Mare\";\"other\"\n\"684516\";\"Bobota\";\"main\"\n\"684535\";\"Bobiceşti\";\"main\"\n\"684535\";\"Bobicesti\";\"ascii\"\n\"684564\";\"Blîndiana\";\"main\"\n\"684564\";\"Blindiana\";\"ascii\"\n\"684564\";\"Blandiana\";\"other\"\n\"684569\";\"Blideşti\";\"main\"\n\"684569\";\"Blidesti\";\"ascii\"\n\"684583\";\"Blejoiu\";\"main\"\n\"684583\";\"Blejoi\";\"other\"\n\"684585\";\"Blejeşti\";\"main\"\n\"684585\";\"Blejesti\";\"ascii\"\n\"684606\";\"Blăjeni\";\"main\"\n\"684606\";\"Blajeni\";\"ascii\"\n\"684606\";\"Blaieni\";\"other\"\n\"684606\";\"Blăieni\";\"other\"\n\"684608\";\"Blăjel\";\"main\"\n\"684608\";\"Blajel\";\"ascii\"\n\"684610\";\"Blăjani\";\"main\"\n\"684610\";\"Blajani\";\"ascii\"\n\"684612\";\"Blaj\";\"main\"\n\"684612\";\"Balazsfalva\";\"other\"\n\"684612\";\"Balázsfalva\";\"other\"\n\"684612\";\"Blasendorf\";\"other\"\n\"684612\";\"Блай\";\"other\"\n\"684619\";\"Blăgeşti\";\"main\"\n\"684619\";\"Blagesti\";\"ascii\"\n\"684620\";\"Blăgeşti\";\"main\"\n\"684620\";\"Blagesti\";\"ascii\"\n\"684630\";\"Bixad\";\"main\"\n\"684630\";\"Bicsad\";\"other\"\n\"684630\";\"Bicsad-Bai\";\"other\"\n\"684630\";\"Bicsad-Băi\";\"other\"\n\"684635\";\"Bivolari\";\"main\"\n\"684657\";\"Bistriţa\";\"main\"\n\"684657\";\"Bistrita\";\"ascii\"\n\"684657\";\"Beszterce\";\"other\"\n\"684657\";\"Besztercze\";\"other\"\n\"684657\";\"Bistrica\";\"other\"\n\"684657\";\"Bistritz\";\"other\"\n\"684657\";\"bisutoritsu~a\";\"other\"\n\"684657\";\"Бистрица\";\"other\"\n\"684657\";\"ビストリツァ\";\"other\"\n\"684666\";\"Bistreţu\";\"main\"\n\"684666\";\"Bistretu\";\"ascii\"\n\"684666\";\"Bistret\";\"other\"\n\"684666\";\"Bistretul\";\"other\"\n\"684666\";\"Bistreţ\";\"other\"\n\"684666\";\"Bistreţul\";\"other\"\n\"684677\";\"Bistra\";\"main\"\n\"684680\";\"Bistra\";\"main\"\n\"684683\";\"Bisoca\";\"main\"\n\"684726\";\"Bârzava\";\"main\"\n\"684726\";\"Barzava\";\"ascii\"\n\"684726\";\"Bazava\";\"other\"\n\"684726\";\"Berzava\";\"other\"\n\"684726\";\"Berzova\";\"other\"\n\"684726\";\"Birzava\";\"other\"\n\"684726\";\"Bâzava\";\"other\"\n\"684726\";\"Bîrzava\";\"other\"\n\"684726\";\"Marosborsa\";\"other\"\n\"684732\";\"Bîrza\";\"main\"\n\"684732\";\"Birza\";\"ascii\"\n\"684759\";\"Bîrsău de Sus\";\"main\"\n\"684759\";\"Birsau de Sus\";\"ascii\"\n\"684759\";\"Barsaul de-Sus\";\"other\"\n\"684759\";\"Bârsăul de-Sus\";\"other\"\n\"684770\";\"Bîrsana\";\"main\"\n\"684770\";\"Birsana\";\"ascii\"\n\"684770\";\"Barsana\";\"other\"\n\"684770\";\"Bârsana\";\"other\"\n\"684774\";\"Bârsa\";\"main\"\n\"684774\";\"Barsa\";\"ascii\"\n\"684774\";\"Barza\";\"other\"\n\"684774\";\"Bersza\";\"other\"\n\"684774\";\"Berza\";\"other\"\n\"684774\";\"Birsa\";\"other\"\n\"684774\";\"Bursza\";\"other\"\n\"684774\";\"Bîrsa\";\"other\"\n\"684778\";\"Bîrnova\";\"main\"\n\"684778\";\"Birnova\";\"ascii\"\n\"684778\";\"Barnova\";\"other\"\n\"684783\";\"Bîrna\";\"main\"\n\"684783\";\"Birna\";\"ascii\"\n\"684783\";\"Barna\";\"other\"\n\"684783\";\"Bira\";\"other\"\n\"684783\";\"Bârna\";\"other\"\n\"684783\";\"Bîra\";\"other\"\n\"684802\";\"Bîrlad\";\"main\"\n\"684802\";\"Birlad\";\"ascii\"\n\"684802\";\"Barlad\";\"other\"\n\"684802\";\"Bârlad\";\"other\"\n\"684805\";\"Bîrla\";\"main\"\n\"684805\";\"Birla\";\"ascii\"\n\"684805\";\"Barla\";\"other\"\n\"684805\";\"Bărla\";\"other\"\n\"684822\";\"Birchiş\";\"main\"\n\"684822\";\"Birchis\";\"ascii\"\n\"684830\";\"Bîrca\";\"main\"\n\"684830\";\"Birca\";\"ascii\"\n\"684830\";\"Barca\";\"other\"\n\"684830\";\"Bârca\";\"other\"\n\"684834\";\"Bîra\";\"main\"\n\"684834\";\"Bira\";\"ascii\"\n\"684834\";\"Bara\";\"other\"\n\"684834\";\"Bâra\";\"other\"\n\"684842\";\"Bâlvăneşti\";\"main\"\n\"684842\";\"Balvanesti\";\"ascii\"\n\"684842\";\"Bilvanesti\";\"other\"\n\"684842\";\"Bîlvăneşti\";\"other\"\n\"684855\";\"Biled\";\"main\"\n\"684855\";\"Bille\";\"other\"\n\"684855\";\"Billed\";\"other\"\n\"684855\";\"Billet\";\"other\"\n\"684855\";\"Billiet\";\"other\"\n\"684855\";\"Billéd\";\"other\"\n\"684855\";\"Billét\";\"other\"\n\"684860\";\"Bilciureşti\";\"main\"\n\"684860\";\"Bilciuresti\";\"ascii\"\n\"684860\";\"Bilciresti\";\"other\"\n\"684860\";\"Bilcireşti\";\"other\"\n\"684866\";\"Bilca\";\"main\"\n\"684870\";\"Bilbor\";\"main\"\n\"684870\";\"Belbor\";\"other\"\n\"684870\";\"Bèlbòr\";\"other\"\n\"684882\";\"Biharea\";\"main\"\n\"684882\";\"Biharia\";\"other\"\n\"684888\";\"Biertan\";\"main\"\n\"684888\";\"Berethalom\";\"other\"\n\"684888\";\"Birthelm\";\"other\"\n\"684903\";\"Bichiş\";\"main\"\n\"684903\";\"Bichis\";\"ascii\"\n\"684913\";\"Bicazu Ardelean\";\"main\"\n\"684913\";\"Bicazul Ardelean\";\"other\"\n\"684915\";\"Bicaz Chei\";\"main\"\n\"684915\";\"Bicazul-Chei\";\"other\"\n\"684923\";\"Bicaz\";\"main\"\n\"684923\";\"Bicas\";\"other\"\n\"684923\";\"Bikaclalya\";\"other\"\n\"684923\";\"Bikáclalya\";\"other\"\n\"684924\";\"Bicaz\";\"main\"\n\"684948\";\"Bezdead\";\"main\"\n\"684948\";\"Bezdeadu\";\"other\"\n\"684948\";\"Bezdeadul\";\"other\"\n\"684956\";\"Bethausen\";\"main\"\n\"684956\";\"Becliza\";\"other\"\n\"684956\";\"Bethlenhaas\";\"other\"\n\"684956\";\"Bethlenhaza\";\"other\"\n\"684956\";\"Bethlenháza\";\"other\"\n\"684970\";\"Berzunţi\";\"main\"\n\"684970\";\"Berzunti\";\"ascii\"\n\"684970\";\"Berzunt\";\"other\"\n\"684970\";\"Martin-Berzunt\";\"other\"\n\"684970\";\"Martin-Berzunti\";\"other\"\n\"684970\";\"Martin-Berzunţ\";\"other\"\n\"684970\";\"Martin-Berzunţi\";\"other\"\n\"684970\";\"Martinul\";\"other\"\n\"684972\";\"Berzovia\";\"main\"\n\"684972\";\"Bersovia\";\"other\"\n\"684972\";\"Berzobis\";\"other\"\n\"684972\";\"Jidovin\";\"other\"\n\"684972\";\"Zsidovin\";\"other\"\n\"684980\";\"Berveni\";\"main\"\n\"684980\";\"Borvely\";\"other\"\n\"684980\";\"Börvely\";\"other\"\n\"684983\";\"Berteştii de Jos\";\"main\"\n\"684983\";\"Bertestii de Jos\";\"ascii\"\n\"684983\";\"Berestii-de-Jos\";\"other\"\n\"684983\";\"Bereştii-de-Jos\";\"other\"\n\"684983\";\"Bertesti-de-Jos\";\"other\"\n\"684985\";\"Bertea\";\"main\"\n\"684987\";\"Berlişte\";\"main\"\n\"684987\";\"Berliste\";\"ascii\"\n\"684987\";\"Brljiste\";\"other\"\n\"684987\";\"Brljište\";\"other\"\n\"684989\";\"Berleşti\";\"main\"\n\"684989\";\"Berlesti\";\"ascii\"\n\"684995\";\"Beriu\";\"main\"\n\"684997\";\"Berislăveşti\";\"main\"\n\"684997\";\"Berislavesti\";\"ascii\"\n\"685014\";\"Berghin\";\"main\"\n\"685014\";\"Berghiu\";\"other\"\n\"685018\";\"Berezeni\";\"main\"\n\"685021\";\"Berevoeşti\";\"main\"\n\"685021\";\"Berevoesti\";\"ascii\"\n\"685021\";\"Berevoesti-Ungureni\";\"other\"\n\"685021\";\"Berevoestii-Ungureni\";\"other\"\n\"685021\";\"Berevoeşti-Ungureni\";\"other\"\n\"685021\";\"Berevoeştii-Ungureni\";\"other\"\n\"685025\";\"Bereşti-Tazlău\";\"main\"\n\"685025\";\"Beresti-Tazlau\";\"ascii\"\n\"685025\";\"Beresti\";\"other\"\n\"685025\";\"Bereşti\";\"other\"\n\"685026\";\"Bereşti-Sat\";\"main\"\n\"685026\";\"Beresti-Sat\";\"ascii\"\n\"685031\";\"Bereşti-Bistriţa\";\"main\"\n\"685031\";\"Beresti-Bistrita\";\"ascii\"\n\"685031\";\"Beresti\";\"other\"\n\"685031\";\"Berestii-Bistrita\";\"other\"\n\"685031\";\"Bereşti\";\"other\"\n\"685031\";\"Bereştii-Bistriţa\";\"other\"\n\"685076\";\"Berceni\";\"main\"\n\"685078\";\"Berceni\";\"main\"\n\"685080\";\"Berca\";\"main\"\n\"685080\";\"Bercu\";\"other\"\n\"685081\";\"Berca\";\"main\"\n\"685088\";\"Berbeşti\";\"main\"\n\"685088\";\"Berbesti\";\"ascii\"\n\"685088\";\"Berbestii\";\"other\"\n\"685088\";\"Berbeştii\";\"other\"\n\"685088\";\"Herbesti\";\"other\"\n\"685088\";\"Herbeşti\";\"other\"\n\"685099\";\"Bengeştii de Mijloc\";\"main\"\n\"685099\";\"Bengestii de Mijloc\";\"ascii\"\n\"685099\";\"Bengesti\";\"other\"\n\"685099\";\"Bengestii de Myloc\";\"other\"\n\"685099\";\"Bengeşti\";\"other\"\n\"685099\";\"Bengeştii de Myloc\";\"other\"\n\"685112\";\"Benesat\";\"main\"\n\"685121\";\"Beltiug\";\"main\"\n\"685121\";\"Belthiug\";\"other\"\n\"685121\";\"Krasznabeltek\";\"other\"\n\"685129\";\"Beliu\";\"main\"\n\"685129\";\"Beliul\";\"other\"\n\"685131\";\"Beliş\";\"main\"\n\"685131\";\"Belis\";\"ascii\"\n\"685135\";\"Belinţ\";\"main\"\n\"685135\";\"Belint\";\"ascii\"\n\"685135\";\"Belence\";\"other\"\n\"685135\";\"Belencze\";\"other\"\n\"685135\";\"Belincz\";\"other\"\n\"685137\";\"Belin\";\"main\"\n\"685137\";\"Bolon\";\"other\"\n\"685137\";\"Bölön\";\"other\"\n\"685142\";\"Beleţi\";\"main\"\n\"685142\";\"Beleti\";\"ascii\"\n\"685155\";\"Belciugatele\";\"main\"\n\"685163\";\"Belceşti\";\"main\"\n\"685163\";\"Belcesti\";\"ascii\"\n\"685163\";\"Cioreni\";\"other\"\n\"685163\";\"Rusi\";\"other\"\n\"685163\";\"Ruşi\";\"other\"\n\"685163\";\"Valeni\";\"other\"\n\"685163\";\"Văleni\";\"other\"\n\"685174\";\"Beiuş\";\"main\"\n\"685174\";\"Beius\";\"ascii\"\n\"685174\";\"Belenyes\";\"other\"\n\"685174\";\"Belényes\";\"other\"\n\"685183\";\"Beidaud\";\"main\"\n\"685183\";\"Beidaiu\";\"other\"\n\"685183\";\"Beidaut\";\"other\"\n\"685185\";\"Beica de Jos\";\"main\"\n\"685185\";\"Alsobolkeny\";\"other\"\n\"685185\";\"Alsòbölkèny\";\"other\"\n\"685204\";\"Beclean\";\"main\"\n\"685205\";\"Beclean\";\"main\"\n\"685211\";\"Becicherecu Mic\";\"main\"\n\"685211\";\"Becicherecul-Mic\";\"other\"\n\"685211\";\"Becskerek\";\"other\"\n\"685211\";\"Kisbecskerek\";\"other\"\n\"685211\";\"Klein-Betschkerek\";\"other\"\n\"685218\";\"Bechet\";\"main\"\n\"685218\";\"Bechetu\";\"other\"\n\"685218\";\"Bechetu Vechi\";\"other\"\n\"685218\";\"Bechetul\";\"other\"\n\"685223\";\"Beceni\";\"main\"\n\"685225\";\"Becaş\";\"main\"\n\"685225\";\"Becas\";\"ascii\"\n\"685225\";\"Behosteana\";\"other\"\n\"685225\";\"Bekas\";\"other\"\n\"685225\";\"Bèkàs\";\"other\"\n\"685228\";\"Beba Veche\";\"main\"\n\"685228\";\"Alt-Beba\";\"other\"\n\"685228\";\"Beba\";\"other\"\n\"685228\";\"Mala Beba\";\"other\"\n\"685228\";\"Obeb\";\"other\"\n\"685228\";\"Stara Beba\";\"other\"\n\"685228\";\"Óbéb\";\"other\"\n\"685233\";\"Bazna\";\"main\"\n\"685245\";\"Băuţar\";\"main\"\n\"685245\";\"Bautar\";\"ascii\"\n\"685245\";\"Bautaru Superior\";\"other\"\n\"685245\";\"Bautarul-Superior\";\"other\"\n\"685245\";\"Băuţaru Superior\";\"other\"\n\"685245\";\"Băuţarul-Superior\";\"other\"\n\"685259\";\"Batoş\";\"main\"\n\"685259\";\"Batos\";\"ascii\"\n\"685265\";\"Batîrăşti\";\"main\"\n\"685265\";\"Batirasti\";\"ascii\"\n\"685277\";\"Bătarci\";\"main\"\n\"685277\";\"Batarci\";\"ascii\"\n\"685279\";\"Batăr\";\"main\"\n\"685279\";\"Batar\";\"ascii\"\n\"685281\";\"Băţanii Mari\";\"main\"\n\"685281\";\"Batanii Mari\";\"ascii\"\n\"685281\";\"Nagybacon\";\"other\"\n\"685287\";\"Bata\";\"main\"\n\"685287\";\"Batta\";\"other\"\n\"685299\";\"Băseşti\";\"main\"\n\"685299\";\"Basesti\";\"ascii\"\n\"685305\";\"Başcov\";\"main\"\n\"685305\";\"Bascov\";\"ascii\"\n\"685305\";\"Bascovu\";\"other\"\n\"685318\";\"Barza\";\"main\"\n\"685319\";\"Baru Mic\";\"main\"\n\"685319\";\"Barul Mic\";\"other\"\n\"685337\";\"Bărgăoani\";\"main\"\n\"685337\";\"Bargaoani\";\"ascii\"\n\"685346\";\"Barcea\";\"main\"\n\"685350\";\"Barcani\";\"main\"\n\"685350\";\"Barkani\";\"other\"\n\"685350\";\"Bărkani\";\"other\"\n\"685353\";\"Bărcăneşti\";\"main\"\n\"685353\";\"Barcanesti\";\"ascii\"\n\"685354\";\"Bărcăneşti\";\"main\"\n\"685354\";\"Barcanesti\";\"ascii\"\n\"685356\";\"Bărcăneşti\";\"main\"\n\"685356\";\"Barcanesti\";\"ascii\"\n\"685366\";\"Bărbuleţu\";\"main\"\n\"685366\";\"Barbuletu\";\"ascii\"\n\"685366\";\"Barbuletul\";\"other\"\n\"685366\";\"Barbulotul\";\"other\"\n\"685366\";\"Bărbuletul\";\"other\"\n\"685366\";\"Bărbulotul\";\"other\"\n\"685384\";\"Bărbăteşti\";\"main\"\n\"685384\";\"Barbatesti\";\"ascii\"\n\"685386\";\"Bărbăteşti\";\"main\"\n\"685386\";\"Barbatesti\";\"ascii\"\n\"685414\";\"Bărăşti\";\"main\"\n\"685414\";\"Barasti\";\"ascii\"\n\"685419\";\"Baraolt\";\"main\"\n\"685419\";\"Baraot\";\"other\"\n\"685419\";\"Baraót\";\"other\"\n\"685419\";\"Barot\";\"other\"\n\"685419\";\"Barót\";\"other\"\n\"685419\";\"Бараолт\";\"other\"\n\"685429\";\"Bărăganul\";\"main\"\n\"685429\";\"Baraganul\";\"ascii\"\n\"685429\";\"Cioara-Doicesti\";\"other\"\n\"685429\";\"Cioara-Doiceşti\";\"other\"\n\"685445\";\"Banloc\";\"main\"\n\"685445\";\"Banlak\";\"other\"\n\"685445\";\"Banlok\";\"other\"\n\"685445\";\"Bánlak\";\"other\"\n\"685450\";\"Băniţa\";\"main\"\n\"685450\";\"Banita\";\"ascii\"\n\"685453\";\"Bănişor\";\"main\"\n\"685453\";\"Banisor\";\"ascii\"\n\"685457\";\"Bănia\";\"main\"\n\"685457\";\"Bania\";\"ascii\"\n\"685457\";\"Banja\";\"other\"\n\"685462\";\"Băneşti\";\"main\"\n\"685462\";\"Banesti\";\"ascii\"\n\"685475\";\"Băneasa\";\"main\"\n\"685475\";\"Baneasa\";\"ascii\"\n\"685476\";\"Băneasa\";\"main\"\n\"685476\";\"Baneasa\";\"ascii\"\n\"685476\";\"Parachioi\";\"other\"\n\"685477\";\"Băneasa\";\"main\"\n\"685477\";\"Baneasa\";\"ascii\"\n\"685481\";\"Band\";\"main\"\n\"685481\";\"Bandu de Cimpie\";\"other\"\n\"685481\";\"Bandu de Cîmpie\";\"other\"\n\"685481\";\"Mezoband\";\"other\"\n\"685481\";\"Mezöbànd\";\"other\"\n\"685490\";\"Banca\";\"main\"\n\"685506\";\"Băluşeni\";\"main\"\n\"685506\";\"Baluseni\";\"ascii\"\n\"685527\";\"Bălteni\";\"main\"\n\"685527\";\"Balteni\";\"ascii\"\n\"685527\";\"Balteni-Vale\";\"other\"\n\"685527\";\"Baltenii-din-Vale\";\"other\"\n\"685527\";\"Bălteni-Vale\";\"other\"\n\"685527\";\"Băltenii-din-Vale\";\"other\"\n\"685547\";\"Bălţaţi\";\"main\"\n\"685547\";\"Baltati\";\"ascii\"\n\"685551\";\"Bălţăteşti\";\"main\"\n\"685551\";\"Baltatesti\";\"ascii\"\n\"685551\";\"Burla\";\"other\"\n\"685551\";\"Piriu Sarat\";\"other\"\n\"685551\";\"Prihodistea\";\"other\"\n\"685551\";\"Prihodiştea\";\"other\"\n\"685551\";\"Prihojdia\";\"other\"\n\"685551\";\"Pîrîu Sărat\";\"other\"\n\"685570\";\"Balta Doamnei\";\"main\"\n\"685579\";\"Balta\";\"main\"\n\"685582\";\"Balşa\";\"main\"\n\"685582\";\"Balsa\";\"ascii\"\n\"685586\";\"Balş\";\"main\"\n\"685586\";\"Bals\";\"ascii\"\n\"685590\";\"Baloteşti\";\"main\"\n\"685590\";\"Balotesti\";\"ascii\"\n\"685590\";\"Balotesu\";\"other\"\n\"685590\";\"Baloteşu\";\"other\"\n\"685615\";\"Balinţ\";\"main\"\n\"685615\";\"Balint\";\"ascii\"\n\"685615\";\"Balinc\";\"other\"\n\"685615\";\"Balincz\";\"other\"\n\"685615\";\"Balintin\";\"other\"\n\"685615\";\"Balintz\";\"other\"\n\"685615\";\"Bálinc\";\"other\"\n\"685615\";\"Bálincz\";\"other\"\n\"685620\";\"Bălileşti\";\"main\"\n\"685620\";\"Balilesti\";\"ascii\"\n\"685627\";\"Băleşti\";\"main\"\n\"685627\";\"Balesti\";\"ascii\"\n\"685628\";\"Băleşti\";\"main\"\n\"685628\";\"Balesti\";\"ascii\"\n\"685630\";\"Băleni Sîrbi\";\"main\"\n\"685630\";\"Baleni Sirbi\";\"ascii\"\n\"685630\";\"Balenii-Sarbi\";\"other\"\n\"685630\";\"Bălenii-Sârbi\";\"other\"\n\"685637\";\"Băleni\";\"main\"\n\"685637\";\"Baleni\";\"ascii\"\n\"685643\";\"Baldovineşti\";\"main\"\n\"685643\";\"Baldovinesti\";\"ascii\"\n\"685657\";\"Bălceşti\";\"main\"\n\"685657\";\"Balcesti\";\"ascii\"\n\"685659\";\"Bălcăuţi\";\"main\"\n\"685659\";\"Balcauti\";\"ascii\"\n\"685662\";\"Balcani\";\"main\"\n\"685665\";\"Balc\";\"main\"\n\"685667\";\"Bălăuşeri\";\"main\"\n\"685667\";\"Balauseri\";\"ascii\"\n\"685667\";\"Balavasar\";\"other\"\n\"685667\";\"Bàlavàsàr\";\"other\"\n\"685672\";\"Bălăşeşti\";\"main\"\n\"685672\";\"Balasesti\";\"ascii\"\n\"685694\";\"Bălăneşti\";\"main\"\n\"685694\";\"Balanesti\";\"ascii\"\n\"685706\";\"Bălan\";\"main\"\n\"685706\";\"Balan\";\"ascii\"\n\"685707\";\"Bălan\";\"main\"\n\"685707\";\"Balan\";\"ascii\"\n\"685707\";\"Balanbanya\";\"other\"\n\"685707\";\"Balánbánya\";\"other\"\n\"685714\";\"Balaciu de Sus\";\"main\"\n\"685714\";\"Balaciu\";\"other\"\n\"685714\";\"Balaciul\";\"other\"\n\"685720\";\"Bălăciţa\";\"main\"\n\"685720\";\"Balacita\";\"ascii\"\n\"685725\";\"Balaci\";\"main\"\n\"685731\";\"Bălăceanu\";\"main\"\n\"685731\";\"Balaceanu\";\"ascii\"\n\"685745\";\"Bala\";\"main\"\n\"685745\";\"Bala de Jos\";\"other\"\n\"685759\";\"Băiuţ\";\"main\"\n\"685759\";\"Baiut\";\"ascii\"\n\"685759\";\"Baiuti\";\"other\"\n\"685759\";\"Banit\";\"other\"\n\"685759\";\"Băiuţi\";\"other\"\n\"685759\";\"Băniţ\";\"other\"\n\"685762\";\"Băiţa de sub Codru\";\"main\"\n\"685762\";\"Baita de sub Codru\";\"ascii\"\n\"685762\";\"Baita\";\"other\"\n\"685762\";\"Băiţa\";\"other\"\n\"685770\";\"Băiţa\";\"main\"\n\"685770\";\"Baita\";\"ascii\"\n\"685773\";\"Băişoara\";\"main\"\n\"685773\";\"Baisoara\";\"ascii\"\n\"685782\";\"Băile Tuşnad\";\"main\"\n\"685782\";\"Baile Tusnad\";\"ascii\"\n\"685782\";\"Behile-Tushnad\";\"other\"\n\"685782\";\"Gara Tusnad-Bai\";\"other\"\n\"685782\";\"Gara Tuşnad-Băi\";\"other\"\n\"685782\";\"Tusnad Bai\";\"other\"\n\"685782\";\"Tusnad Furdo\";\"other\"\n\"685782\";\"Tusnad Fürdö\";\"other\"\n\"685782\";\"Tusnad-Baile Gara\";\"other\"\n\"685782\";\"Tusnadfuerdo\";\"other\"\n\"685782\";\"Tusnádfürdő\";\"other\"\n\"685782\";\"Tuşnad Băi\";\"other\"\n\"685782\";\"Tuşnad-Băile Gara\";\"other\"\n\"685782\";\"Бэиле-Тушнад\";\"other\"\n\"685785\";\"Băileşti\";\"main\"\n\"685785\";\"Bailesti\";\"ascii\"\n\"685789\";\"Băile Olăneşti\";\"main\"\n\"685789\";\"Baile Olanesti\";\"ascii\"\n\"685796\";\"Băile Herculane\";\"main\"\n\"685796\";\"Baile Herculane\";\"ascii\"\n\"685796\";\"Baile Erculane\";\"other\"\n\"685796\";\"Băile Erculane\";\"other\"\n\"685796\";\"Herculane\";\"other\"\n\"685796\";\"Herkules-Banja\";\"other\"\n\"685797\";\"Băile Govora\";\"main\"\n\"685797\";\"Baile Govora\";\"ascii\"\n\"685810\";\"Băiculeşti\";\"main\"\n\"685810\";\"Baiculesti\";\"ascii\"\n\"685811\";\"Băicoi\";\"main\"\n\"685811\";\"Baicoi\";\"ascii\"\n\"685811\";\"Baicoiu\";\"other\"\n\"685811\";\"Băicoiu\";\"other\"\n\"685823\";\"Baia Sprie\";\"main\"\n\"685823\";\"Civitas in medio monte\";\"other\"\n\"685823\";\"Felsobanya\";\"other\"\n\"685823\";\"Felsőbánya\";\"other\"\n\"685823\";\"Mittelstadt\";\"other\"\n\"685826\";\"Baia Mare\";\"main\"\n\"685826\";\"Baja Mare\";\"other\"\n\"685826\";\"Baja-Mare\";\"other\"\n\"685826\";\"Frauenbach\";\"other\"\n\"685826\";\"Nagybanya\";\"other\"\n\"685826\";\"Nagybánya\";\"other\"\n\"685826\";\"Neustadt\";\"other\"\n\"685826\";\"Rivulus Dominarum\";\"other\"\n\"685826\";\"Бая-Маре\";\"other\"\n\"685830\";\"Baia de Fier\";\"main\"\n\"685832\";\"Baia de Criş\";\"main\"\n\"685832\";\"Baia de Cris\";\"ascii\"\n\"685834\";\"Baia de Arieş\";\"main\"\n\"685834\";\"Baia de Aries\";\"ascii\"\n\"685834\";\"Ofenabia\";\"other\"\n\"685841\";\"Baia\";\"main\"\n\"685841\";\"Movila Mare\";\"other\"\n\"685843\";\"Baia\";\"main\"\n\"685843\";\"Hamagia\";\"other\"\n\"685843\";\"Hamangi\";\"other\"\n\"685843\";\"Hamangia\";\"other\"\n\"685850\";\"Bahnea\";\"main\"\n\"685850\";\"Bachnea\";\"other\"\n\"685858\";\"Bahna\";\"main\"\n\"685858\";\"Vasile Gheorghe Mortun\";\"other\"\n\"685858\";\"Vasile Gheorghe Morţun\";\"other\"\n\"685858\";\"Vasile Mortun\";\"other\"\n\"685858\";\"Vasile Morţun\";\"other\"\n\"685872\";\"Băgaciu\";\"main\"\n\"685872\";\"Bagaciu\";\"ascii\"\n\"685872\";\"Bagaciul\";\"other\"\n\"685872\";\"Băgaciul\";\"other\"\n\"685927\";\"Baciu\";\"main\"\n\"685927\";\"Baciul\";\"other\"\n\"685932\";\"Băcia\";\"main\"\n\"685932\";\"Bacia\";\"ascii\"\n\"685934\";\"Băceşti\";\"main\"\n\"685934\";\"Bacesti\";\"ascii\"\n\"685934\";\"Atreiaparte\";\"other\"\n\"685934\";\"Bacesti-Sat\";\"other\"\n\"685934\";\"Bacesti-Tirg\";\"other\"\n\"685934\";\"Băceşti-Sat\";\"other\"\n\"685934\";\"Băceşti-Tîrg\";\"other\"\n\"685934\";\"Ezeru\";\"other\"\n\"685934\";\"Iezeru\";\"other\"\n\"685948\";\"Bacău\";\"main\"\n\"685948\";\"Bacau\";\"ascii\"\n\"685948\";\"Bako\";\"other\"\n\"685948\";\"Bakuu\";\"other\"\n\"685948\";\"Bákó\";\"other\"\n\"685948\";\"Бакъу\";\"other\"\n\"685948\";\"בקאו\";\"other\"\n\"685952\";\"Băcani\";\"main\"\n\"685952\";\"Bacani\";\"ascii\"\n\"685969\";\"Băbiciu\";\"main\"\n\"685969\";\"Babiciu\";\"ascii\"\n\"685969\";\"Babiciu Episcopiei\";\"other\"\n\"685969\";\"Babiciul\";\"other\"\n\"685969\";\"Babiciul-Episcopiei\";\"other\"\n\"685969\";\"Băbiciu Episcopiei\";\"other\"\n\"685969\";\"Băbiciul\";\"other\"\n\"685969\";\"Băbiciul-Episcopiei\";\"other\"\n\"685971\";\"Babeţi\";\"main\"\n\"685971\";\"Babeti\";\"ascii\"\n\"685971\";\"Babita\";\"other\"\n\"685971\";\"Babiţa\";\"other\"\n\"685979\";\"Băbeni\";\"main\"\n\"685979\";\"Babeni\";\"ascii\"\n\"685981\";\"Băbeni\";\"main\"\n\"685981\";\"Babeni\";\"ascii\"\n\"685981\";\"Ungureni\";\"other\"\n\"685991\";\"Băbana\";\"main\"\n\"685991\";\"Babana\";\"ascii\"\n\"685994\";\"Băbăiţa\";\"main\"\n\"685994\";\"Babaita\";\"ascii\"\n\"685994\";\"Babiata\";\"other\"\n\"685994\";\"Băbiăţa\";\"other\"\n\"685997\";\"Babadag\";\"main\"\n\"685997\";\"Babadagh\";\"other\"\n\"685997\";\"Babadagi\";\"other\"\n\"685997\";\"Babadau\";\"other\"\n\"685997\";\"Babadağ\";\"other\"\n\"685997\";\"Babadağı\";\"other\"\n\"685997\";\"babataghy\";\"other\"\n\"685997\";\"باباطاغی\";\"other\"\n\"686000\";\"Baba Ana\";\"main\"\n\"686003\";\"Azuga\";\"main\"\n\"686006\";\"Axintele\";\"main\"\n\"686006\";\"Axintel\";\"other\"\n\"686008\";\"Axente Sever\";\"main\"\n\"686008\";\"Fraua\";\"other\"\n\"686008\";\"Frina\";\"other\"\n\"686008\";\"Frâua\";\"other\"\n\"686008\";\"Frîna\";\"other\"\n\"686011\";\"Avrig\";\"main\"\n\"686011\";\"Felek\";\"other\"\n\"686011\";\"Freek\";\"other\"\n\"686011\";\"Fryk\";\"other\"\n\"686011\";\"Авриг\";\"other\"\n\"686016\";\"Avram Iancu\";\"main\"\n\"686016\";\"Avram Jancu\";\"other\"\n\"686016\";\"Avramdancu\";\"other\"\n\"686016\";\"Felsovidra\";\"other\"\n\"686016\";\"Felsővidra\";\"other\"\n\"686016\";\"Vidra de Sus\";\"other\"\n\"686025\";\"Avrămeşti\";\"main\"\n\"686025\";\"Avramesti\";\"ascii\"\n\"686025\";\"Szentabraham\";\"other\"\n\"686025\";\"Szentàbrahàm\";\"other\"\n\"686028\";\"Avrămeni\";\"main\"\n\"686028\";\"Avrameni\";\"ascii\"\n\"686035\";\"Auşeu\";\"main\"\n\"686035\";\"Auseu\";\"ascii\"\n\"686057\";\"Aţintiş\";\"main\"\n\"686057\";\"Atintis\";\"ascii\"\n\"686057\";\"Atintisi\";\"other\"\n\"686057\";\"Aţintişi\";\"other\"\n\"686059\";\"Atid\";\"main\"\n\"686059\";\"Eted\";\"other\"\n\"686065\";\"Aţel\";\"main\"\n\"686065\";\"Atel\";\"ascii\"\n\"686071\";\"Asuaju de Sus\";\"main\"\n\"686071\";\"Asuagiul-de-Sus\";\"other\"\n\"686071\";\"Asuajul-de-Sus\";\"other\"\n\"686076\";\"Aştileu\";\"main\"\n\"686076\";\"Astileu\";\"ascii\"\n\"686076\";\"Astilau\";\"other\"\n\"686076\";\"Aştilău\";\"other\"\n\"686084\";\"Aşchileu Dorna\";\"main\"\n\"686084\";\"Aschileu Dorna\";\"ascii\"\n\"686090\";\"Asău\";\"main\"\n\"686090\";\"Asau\";\"ascii\"\n\"686090\";\"Asaul\";\"other\"\n\"686113\";\"Arsura\";\"main\"\n\"686126\";\"Arpaşu de Jos\";\"main\"\n\"686126\";\"Arpasu de Jos\";\"ascii\"\n\"686126\";\"Arpas\";\"other\"\n\"686126\";\"Arpasul-de-Jos\";\"other\"\n\"686126\";\"Arpaş\";\"other\"\n\"686126\";\"Arpaşul-de-Jos\";\"other\"\n\"686131\";\"Aroneanu\";\"main\"\n\"686137\";\"Armeniş\";\"main\"\n\"686137\";\"Armenis\";\"ascii\"\n\"686145\";\"Armăşeşti\";\"main\"\n\"686145\";\"Armasesti\";\"ascii\"\n\"686157\";\"Ariniş\";\"main\"\n\"686157\";\"Arinis\";\"ascii\"\n\"686167\";\"Arieşeni\";\"main\"\n\"686167\";\"Arieseni\";\"ascii\"\n\"686173\";\"Ariceşti-Zeletin\";\"main\"\n\"686173\";\"Aricesti-Zeletin\";\"ascii\"\n\"686173\";\"Aricesti\";\"other\"\n\"686173\";\"Aricestii-Zeletin\";\"other\"\n\"686173\";\"Ariceştii-Zeletin\";\"other\"\n\"686175\";\"Ariceştii-Rahtivani\";\"main\"\n\"686175\";\"Aricestii-Rahtivani\";\"ascii\"\n\"686186\";\"Argetoaia\";\"main\"\n\"686200\";\"Arefu\";\"main\"\n\"686200\";\"Arefii\";\"other\"\n\"686200\";\"Areful\";\"other\"\n\"686203\";\"Ardusat\";\"main\"\n\"686206\";\"Ardud\";\"main\"\n\"686206\";\"Arded\";\"other\"\n\"686206\";\"Erdod\";\"other\"\n\"686206\";\"Erdöd\";\"other\"\n\"686212\";\"Ardeoani\";\"main\"\n\"686212\";\"Ardedani\";\"other\"\n\"686226\";\"Archiş\";\"main\"\n\"686226\";\"Archis\";\"ascii\"\n\"686226\";\"Arkis\";\"other\"\n\"686226\";\"Arkus\";\"other\"\n\"686226\";\"Belarkos\";\"other\"\n\"686226\";\"Bélárkos\";\"other\"\n\"686226\";\"Árkis\";\"other\"\n\"686226\";\"Árkus\";\"other\"\n\"686235\";\"Arcani\";\"main\"\n\"686239\";\"Arbore\";\"main\"\n\"686254\";\"Arad\";\"main\"\n\"686254\";\"Altarad\";\"other\"\n\"686254\";\"Aradia\";\"other\"\n\"686254\";\"Aradinum Vetus\";\"other\"\n\"686254\";\"Micalaca\";\"other\"\n\"686254\";\"Micălaca\";\"other\"\n\"686254\";\"Mikelaka\";\"other\"\n\"686254\";\"Murasel\";\"other\"\n\"686254\";\"Muresel\";\"other\"\n\"686254\";\"Mureşel\";\"other\"\n\"686254\";\"Murăşel\";\"other\"\n\"686254\";\"O-Arad\";\"other\"\n\"686254\";\"Orodinum\";\"other\"\n\"686254\";\"Zsigmondhaza\";\"other\"\n\"686254\";\"Zsigmondháza\";\"other\"\n\"686254\";\"Ō-Arad\";\"other\"\n\"686254\";\"Арад\";\"other\"\n\"686263\";\"Apostolache\";\"main\"\n\"686270\";\"Apoldu de Jos\";\"main\"\n\"686270\";\"Apoldul-de-Jos\";\"other\"\n\"686272\";\"Apold\";\"main\"\n\"686274\";\"Apele Vii\";\"main\"\n\"686279\";\"Apateu\";\"main\"\n\"686281\";\"Apaţa\";\"main\"\n\"686281\";\"Apata\";\"ascii\"\n\"686288\";\"Apahida\";\"main\"\n\"686294\";\"Apa\";\"main\"\n\"686315\";\"Aninoasa\";\"main\"\n\"686316\";\"Aninoasa\";\"main\"\n\"686317\";\"Aninoasa\";\"main\"\n\"686319\";\"Aninoasa\";\"main\"\n\"686324\";\"Anina\";\"main\"\n\"686324\";\"Staierdorfanina\";\"other\"\n\"686324\";\"Steierdorf\";\"other\"\n\"686324\";\"Анина\";\"other\"\n\"686341\";\"Andrieşeni\";\"main\"\n\"686341\";\"Andrieseni\";\"ascii\"\n\"686343\";\"Andrid\";\"main\"\n\"686350\";\"Andreiaşu de Jos\";\"main\"\n\"686350\";\"Andreiasu de Jos\";\"ascii\"\n\"686350\";\"Andriesu\";\"other\"\n\"686350\";\"Andriesu-de-Jos\";\"other\"\n\"686350\";\"Andriesul-de-Jos\";\"other\"\n\"686350\";\"Andrieşu\";\"other\"\n\"686350\";\"Andrieşu-de-Jos\";\"other\"\n\"686350\";\"Andrieşul-de-Jos\";\"other\"\n\"686358\";\"Andrăşeşti\";\"main\"\n\"686358\";\"Andrasesti\";\"ascii\"\n\"686366\";\"Amzacea\";\"main\"\n\"686380\";\"Amaru\";\"main\"\n\"686380\";\"Amarul\";\"other\"\n\"686384\";\"Amărăştii de Sus\";\"main\"\n\"686384\";\"Amarastii de Sus\";\"ascii\"\n\"686386\";\"Amărăştii de Jos\";\"main\"\n\"686386\";\"Amarastii de Jos\";\"ascii\"\n\"686386\";\"Amarasti-de-Jos\";\"other\"\n\"686386\";\"Amăraşti-de-Jos\";\"other\"\n\"686388\";\"Amărăşti\";\"main\"\n\"686388\";\"Amarasti\";\"ascii\"\n\"686399\";\"Amara\";\"main\"\n\"686402\";\"Alunu\";\"main\"\n\"686402\";\"Alunul\";\"other\"\n\"686419\";\"Aluniş\";\"main\"\n\"686419\";\"Alunis\";\"ascii\"\n\"686420\";\"Aluniş\";\"main\"\n\"686420\";\"Alunis\";\"ascii\"\n\"686420\";\"Magyaro\";\"other\"\n\"686423\";\"Aluniş\";\"main\"\n\"686423\";\"Alunis\";\"ascii\"\n\"686431\";\"Alţina\";\"main\"\n\"686431\";\"Altina\";\"ascii\"\n\"686431\";\"Alzen\";\"other\"\n\"686443\";\"Almaşu Mare\";\"main\"\n\"686443\";\"Almasu Mare\";\"ascii\"\n\"686443\";\"Aimasul Mare\";\"other\"\n\"686443\";\"Aimaşul Mare\";\"other\"\n\"686443\";\"Almasel\";\"other\"\n\"686443\";\"Almasul-Mare\";\"other\"\n\"686443\";\"Almaşel\";\"other\"\n\"686443\";\"Almaşul-Mare\";\"other\"\n\"686449\";\"Almaşu\";\"main\"\n\"686449\";\"Almasu\";\"ascii\"\n\"686449\";\"Almasul\";\"other\"\n\"686449\";\"Almaşul\";\"other\"\n\"686449\";\"Varalmas\";\"other\"\n\"686449\";\"Varalmás\";\"other\"\n\"686458\";\"Almaş\";\"main\"\n\"686458\";\"Almas\";\"ascii\"\n\"686458\";\"Almás\";\"other\"\n\"686458\";\"Haromalmas\";\"other\"\n\"686458\";\"Háromalmás\";\"other\"\n\"686463\";\"Almăju\";\"main\"\n\"686463\";\"Almaju\";\"ascii\"\n\"686463\";\"Almajiu\";\"other\"\n\"686463\";\"Almajiul\";\"other\"\n\"686463\";\"Almajul\";\"other\"\n\"686463\";\"Almăjiu\";\"other\"\n\"686463\";\"Almăjiul\";\"other\"\n\"686463\";\"Almăjul\";\"other\"\n\"686473\";\"Alimpeşti\";\"main\"\n\"686473\";\"Alimpesti\";\"ascii\"\n\"686477\";\"Aliman\";\"main\"\n\"686477\";\"Alimanul\";\"other\"\n\"686487\";\"Alexeni\";\"main\"\n\"686489\";\"Alexandru Vlăhuţă\";\"main\"\n\"686489\";\"Alexandru Vlahuta\";\"ascii\"\n\"686489\";\"Patrascani\";\"other\"\n\"686489\";\"Pătrăşcani\";\"other\"\n\"686493\";\"Alexandru Odobescu\";\"main\"\n\"686493\";\"Barza\";\"other\"\n\"686495\";\"Alexandru Ioan Cuza\";\"main\"\n\"686495\";\"Cuza-Voda\";\"other\"\n\"686495\";\"Cuza-Vodă\";\"other\"\n\"686502\";\"Alexandria\";\"main\"\n\"686507\";\"Aleşd\";\"main\"\n\"686507\";\"Alesd\";\"ascii\"\n\"686524\";\"Albota de Jos\";\"main\"\n\"686524\";\"Mosteni\";\"other\"\n\"686524\";\"Moşteni\";\"other\"\n\"686542\";\"Albeşti-Paleologu\";\"main\"\n\"686542\";\"Albesti-Paleologu\";\"ascii\"\n\"686542\";\"Albestii-Paleolog\";\"other\"\n\"686542\";\"Albestii-Paleologu\";\"other\"\n\"686542\";\"Albeştii-Paleolog\";\"other\"\n\"686542\";\"Albeştii-Paleologu\";\"other\"\n\"686542\";\"Paleologu\";\"other\"\n\"686544\";\"Albeştii Pămînteni\";\"main\"\n\"686544\";\"Albestii Paminteni\";\"ascii\"\n\"686544\";\"Albesti\";\"other\"\n\"686544\";\"Albesti-Pamanteni\";\"other\"\n\"686544\";\"Albesti-Paminteni\";\"other\"\n\"686544\";\"Albestii-Pamanteni\";\"other\"\n\"686544\";\"Albeşti\";\"other\"\n\"686544\";\"Albeşti-Pământeni\";\"other\"\n\"686544\";\"Albeşti-Pămînteni\";\"other\"\n\"686544\";\"Albeştii-Pământeni\";\"other\"\n\"686544\";\"Pamanteni\";\"other\"\n\"686544\";\"Paminteni\";\"other\"\n\"686544\";\"Pământeni\";\"other\"\n\"686544\";\"Pămînteni\";\"other\"\n\"686556\";\"Albeşti\";\"main\"\n\"686556\";\"Albesti\";\"ascii\"\n\"686560\";\"Albeşti\";\"main\"\n\"686560\";\"Albesti\";\"ascii\"\n\"686560\";\"Albestii\";\"other\"\n\"686560\";\"Albeştii\";\"other\"\n\"686561\";\"Albeşti\";\"main\"\n\"686561\";\"Albesti\";\"ascii\"\n\"686561\";\"Ferihaza\";\"other\"\n\"686562\";\"Albeşti\";\"main\"\n\"686562\";\"Albesti\";\"ascii\"\n\"686565\";\"Albeşti\";\"main\"\n\"686565\";\"Albesti\";\"ascii\"\n\"686568\";\"Albeşti\";\"main\"\n\"686568\";\"Albesti\";\"ascii\"\n\"686568\";\"Sarighial\";\"other\"\n\"686568\";\"Sarighiol\";\"other\"\n\"686568\";\"Sarighoil\";\"other\"\n\"686571\";\"Albeni\";\"main\"\n\"686578\";\"Alba Iulia\";\"main\"\n\"686578\";\"Alba Julija\";\"other\"\n\"686578\";\"Gyulafehervar\";\"other\"\n\"686578\";\"Gyulafehérvár\";\"other\"\n\"686578\";\"Karlsburg\";\"other\"\n\"686578\";\"Weissenburg\";\"other\"\n\"686578\";\"Weisskirchen\";\"other\"\n\"686578\";\"Weißkirchen\";\"other\"\n\"686578\";\"Алба Юлия\";\"other\"\n\"686580\";\"Albac\";\"main\"\n\"686590\";\"Aiud\";\"main\"\n\"686590\";\"Ajud\";\"other\"\n\"686590\";\"Nagyenyed\";\"other\"\n\"686590\";\"Strassburg\";\"other\"\n\"686590\";\"Айуд\";\"other\"\n\"686592\";\"Aiton\";\"main\"\n\"686592\";\"Anton\";\"other\"\n\"686597\";\"Aita Mare\";\"main\"\n\"686597\";\"Nagyaita\";\"other\"\n\"686597\";\"Nagyajta\";\"other\"\n\"686612\";\"Agrij\";\"main\"\n\"686616\";\"Agnita\";\"main\"\n\"686616\";\"Szentagota\";\"other\"\n\"686616\";\"Szentágota\";\"other\"\n\"686616\";\"Агнита\";\"other\"\n\"686626\";\"Agigea\";\"main\"\n\"686627\";\"Aghireşu-Fabricei\";\"main\"\n\"686627\";\"Aghiresu-Fabricei\";\"ascii\"\n\"686636\";\"Agăş\";\"main\"\n\"686636\";\"Agas\";\"ascii\"\n\"686638\";\"Agapia\";\"main\"\n\"686648\";\"Afumaţi\";\"main\"\n\"686648\";\"Afumati\";\"ascii\"\n\"686649\";\"Afumaţi\";\"main\"\n\"686649\";\"Afumati\";\"ascii\"\n\"686658\";\"Adunaţi\";\"main\"\n\"686658\";\"Adunati\";\"ascii\"\n\"686658\";\"Adunatii-Proviti\";\"other\"\n\"686658\";\"Adunatii-Provitii\";\"other\"\n\"686658\";\"Adunaţii-Proviti\";\"other\"\n\"686658\";\"Adunaţii-Proviţii\";\"other\"\n\"686669\";\"Adjud\";\"main\"\n\"686669\";\"Ad Judul\";\"other\"\n\"686673\";\"Adîncata\";\"main\"\n\"686673\";\"Adincata\";\"ascii\"\n\"686673\";\"Adancata\";\"other\"\n\"686673\";\"Adaseni\";\"other\"\n\"686673\";\"Adâncata\";\"other\"\n\"686673\";\"Adăseni\";\"other\"\n\"686674\";\"Adîncata\";\"main\"\n\"686674\";\"Adincata\";\"ascii\"\n\"686674\";\"Adancata\";\"other\"\n\"686674\";\"Adanoata\";\"other\"\n\"686674\";\"Adâncata\";\"other\"\n\"686674\";\"Adânoata\";\"other\"\n\"686684\";\"Adămuş\";\"main\"\n\"686684\";\"Adamus\";\"ascii\"\n\"686688\";\"Adamclisi\";\"main\"\n\"686705\";\"Acăţari\";\"main\"\n\"686705\";\"Acatari\";\"ascii\"\n\"686705\";\"Acatar\";\"other\"\n\"686705\";\"Acătar\";\"other\"\n\"686705\";\"Akosfalva\";\"other\"\n\"686712\";\"Abrud\";\"main\"\n\"686712\";\"Abrudbanya\";\"other\"\n\"686712\";\"Abrudbánya\";\"other\"\n\"686712\";\"Aktenburg\";\"other\"\n\"686712\";\"Абруд\";\"other\"\n\"686715\";\"Abrămuţ\";\"main\"\n\"686715\";\"Abramut\";\"ascii\"\n\"686716\";\"Abram\";\"main\"\n\"856315\";\"Prim Decembrie\";\"main\"\n\"856315\";\"1 (Prim) Decembrie\";\"other\"\n\"856315\";\"1 Decembrie\";\"other\"\n\"862909\";\"Vrani\";\"main\"\n\"864945\";\"Vetrişoaia\";\"main\"\n\"864945\";\"Vetrisoaia\";\"ascii\"\n\"6697993\";\"Baia Mare\";\"main\"\n\"6697994\";\"Targoviste\";\"main\"\n\"6930430\";\"Mârşa\";\"main\"\n\"6930430\";\"Marsa\";\"ascii\"\n\"6930430\";\"Mirsa\";\"other\"\n\"6942372\";\"Miercurea Ciuc\";\"main\"\n\"6945426\";\"Paşcani\";\"main\"\n\"6945426\";\"Pascani\";\"ascii\"\n\"783768\";\"Zvečka\";\"main\"\n\"783768\";\"Zvecka\";\"ascii\"\n\"783793\";\"Žujince\";\"main\"\n\"783793\";\"Zujince\";\"ascii\"\n\"783793\";\"Zuince\";\"other\"\n\"783793\";\"Žuince\";\"other\"\n\"783814\";\"Zrenjanin\";\"main\"\n\"783814\";\"Becicherecu Mare\";\"other\"\n\"783814\";\"Becicherecul Mare\";\"other\"\n\"783814\";\"Beckerek\";\"other\"\n\"783814\";\"Becskerek\";\"other\"\n\"783814\";\"Betschkerek\";\"other\"\n\"783814\";\"Beçkerek\";\"other\"\n\"783814\";\"Gross-Betschkerek\";\"other\"\n\"783814\";\"Nagybecskerek\";\"other\"\n\"783814\";\"Petrovgrad\";\"other\"\n\"783814\";\"Veliki Beckerek\";\"other\"\n\"783814\";\"Veliki Bečkerek\";\"other\"\n\"783814\";\"Zrenanin\";\"other\"\n\"783814\";\"Zrenjaninas\";\"other\"\n\"783814\";\"bchkrk\";\"other\"\n\"783814\";\"Зренянин\";\"other\"\n\"783814\";\"Зрењанин\";\"other\"\n\"783814\";\"بچکرک\";\"other\"\n\"783887\";\"Žitište\";\"main\"\n\"783887\";\"Zitiste\";\"ascii\"\n\"783887\";\"Bega-Szent-Gyorgy\";\"other\"\n\"783887\";\"Begej Sveti Durad\";\"other\"\n\"783887\";\"Begej Sveti Ðurađ\";\"other\"\n\"783887\";\"Béga-Szent-György\";\"other\"\n\"783887\";\"Sankt Georgen\";\"other\"\n\"783887\";\"Sankt Georgen an der Bega\";\"other\"\n\"783887\";\"Sveti Jurat\";\"other\"\n\"783920\";\"Zemun\";\"main\"\n\"783920\";\"Semlin\";\"other\"\n\"783920\";\"Taurunum\";\"other\"\n\"783920\";\"Zeman\";\"other\"\n\"783920\";\"Zemlen\";\"other\"\n\"783920\";\"Zemlén\";\"other\"\n\"783920\";\"Zimony\";\"other\"\n\"783920\";\"Земун\";\"other\"\n\"784024\";\"Zaječar\";\"main\"\n\"784024\";\"Zajecar\";\"ascii\"\n\"784024\";\"Zaechar\";\"other\"\n\"784024\";\"Zaiciar\";\"other\"\n\"784024\";\"Zaychar\";\"other\"\n\"784024\";\"Заечар\";\"other\"\n\"784068\";\"Žabalj\";\"main\"\n\"784068\";\"Zabalj\";\"ascii\"\n\"784068\";\"Josefsdorf\";\"other\"\n\"784068\";\"Josephsdorf\";\"other\"\n\"784068\";\"Josipovac\";\"other\"\n\"784068\";\"Zsablya\";\"other\"\n\"784068\";\"Zseblye\";\"other\"\n\"784136\";\"Vršac\";\"main\"\n\"784136\";\"Vrsac\";\"ascii\"\n\"784136\";\"Hennemannstadt\";\"other\"\n\"784136\";\"Varset\";\"other\"\n\"784136\";\"Versec\";\"other\"\n\"784136\";\"Versecz\";\"other\"\n\"784136\";\"Vershice\";\"other\"\n\"784136\";\"Vrsacas\";\"other\"\n\"784136\";\"Vrshac\";\"other\"\n\"784136\";\"Vršacas\";\"other\"\n\"784136\";\"Vârşeţ\";\"other\"\n\"784136\";\"Werschetz\";\"other\"\n\"784136\";\"Werschitz\";\"other\"\n\"784136\";\"Вршац\";\"other\"\n\"784141\";\"Vrnjačka Banja\";\"main\"\n\"784141\";\"Vrnjacka Banja\";\"ascii\"\n\"784227\";\"Vranje\";\"main\"\n\"784227\";\"Ivranya\";\"other\"\n\"784227\";\"Vrane\";\"other\"\n\"784227\";\"Vranja\";\"other\"\n\"784227\";\"Vranya\";\"other\"\n\"784227\";\"Враня\";\"other\"\n\"784227\";\"Врање\";\"other\"\n\"784236\";\"Vranić\";\"main\"\n\"784236\";\"Vranic\";\"ascii\"\n\"784274\";\"Vojvoda Stepa\";\"main\"\n\"784288\";\"Vojka\";\"main\"\n\"784344\";\"Vlajkovac\";\"main\"\n\"784344\";\"Temesvajkoc\";\"other\"\n\"784344\";\"Temesvajkóc\";\"other\"\n\"784344\";\"Vajkoc\";\"other\"\n\"784344\";\"Vajkóc\";\"other\"\n\"784344\";\"Vlaikovecz\";\"other\"\n\"784344\";\"Vlajkovecz\";\"other\"\n\"784352\";\"Vladimirovac\";\"main\"\n\"784352\";\"Petersdorf\";\"other\"\n\"784352\";\"Petre\";\"other\"\n\"784352\";\"Petrovosello\";\"other\"\n\"784352\";\"Roman-Petre\";\"other\"\n\"784352\";\"Román-Petre\";\"other\"\n\"784434\";\"Vilovo\";\"main\"\n\"784434\";\"Tunderes\";\"other\"\n\"784434\";\"Tündéres\";\"other\"\n\"784434\";\"Villova\";\"other\"\n\"784434\";\"Vilova\";\"other\"\n\"784519\";\"Veliko Središte\";\"main\"\n\"784519\";\"Veliko Srediste\";\"ascii\"\n\"784519\";\"Gross Sredischte\";\"other\"\n\"784519\";\"Nagy-Szredistye\";\"other\"\n\"784519\";\"Nagyszered\";\"other\"\n\"784519\";\"Sredishtje Velke\";\"other\"\n\"784519\";\"Szredistye Mare\";\"other\"\n\"784588\";\"Veliki Gaj\";\"main\"\n\"784588\";\"Gaju Mare\";\"other\"\n\"784588\";\"Gáju Mare\";\"other\"\n\"784588\";\"Maleniczfalva\";\"other\"\n\"784588\";\"Nagy-Gaj\";\"other\"\n\"784588\";\"Nagy-Gáj\";\"other\"\n\"784588\";\"Nagygaj\";\"other\"\n\"784588\";\"Nemet-Gaj\";\"other\"\n\"784588\";\"Német-Gáj\";\"other\"\n\"784588\";\"Racz-Gaj\";\"other\"\n\"784588\";\"Rácz-Gáj\";\"other\"\n\"784604\";\"Aleksandrovo\";\"main\"\n\"784604\";\"Banatsko Aleksandrovo\";\"other\"\n\"784604\";\"Livade\";\"other\"\n\"784604\";\"Velike Livade\";\"other\"\n\"784635\";\"Velika Moštanica\";\"main\"\n\"784635\";\"Velika Mostanica\";\"ascii\"\n\"784635\";\"Mostanica\";\"other\"\n\"784635\";\"Moštanica\";\"other\"\n\"784661\";\"Velika Greda\";\"main\"\n\"784661\";\"Georgshausen\";\"other\"\n\"784661\";\"Gyorgyhaz\";\"other\"\n\"784661\";\"Gyorgyhaza\";\"other\"\n\"784661\";\"Györgyház\";\"other\"\n\"784661\";\"Györgyháza\";\"other\"\n\"784745\";\"Uzdin\";\"main\"\n\"784745\";\"Ujozora\";\"other\"\n\"784745\";\"Usdin\";\"other\"\n\"784745\";\"Újozora\";\"other\"\n\"784764\";\"Umka\";\"main\"\n\"784771\";\"Uljma\";\"main\"\n\"784771\";\"Homokszil\";\"other\"\n\"784771\";\"Ullma\";\"other\"\n\"784771\";\"Ulma\";\"other\"\n\"784779\";\"Ugrinovci\";\"main\"\n\"784820\";\"Turija\";\"main\"\n\"784873\";\"Trstenik\";\"main\"\n\"784991\";\"Torda\";\"main\"\n\"784991\";\"Jordan\";\"other\"\n\"784991\";\"Kistorda\";\"other\"\n\"784991\";\"Torontaltorda\";\"other\"\n\"784991\";\"Torontáltorda\";\"other\"\n\"784991\";\"Turda\";\"other\"\n\"784991\";\"Vujicevo\";\"other\"\n\"784991\";\"Vujićevo\";\"other\"\n\"785041\";\"Tomaševac\";\"main\"\n\"785041\";\"Tomasevac\";\"ascii\"\n\"785041\";\"Tamaslaka\";\"other\"\n\"785041\";\"Tamáslaka\";\"other\"\n\"785041\";\"Tomaschewatz\";\"other\"\n\"785041\";\"Tomasevacz\";\"other\"\n\"785041\";\"Tomasevci\";\"other\"\n\"785041\";\"Tomasevácz\";\"other\"\n\"785041\";\"Tomasovacz\";\"other\"\n\"785041\";\"Tomassovacz\";\"other\"\n\"785041\";\"Tomaševci\";\"other\"\n\"785053\";\"Toba\";\"main\"\n\"785053\";\"Nagy-Toba\";\"other\"\n\"785053\";\"Nagy-Tóba\";\"other\"\n\"785053\";\"Tóba\";\"other\"\n\"785062\";\"Titel\";\"main\"\n\"785062\";\"Tetol\";\"other\"\n\"785062\";\"Tetöl\";\"other\"\n\"785062\";\"Theisshugel\";\"other\"\n\"785062\";\"Theisshügel\";\"other\"\n\"785062\";\"Titol\";\"other\"\n\"785062\";\"Tittel\";\"other\"\n\"785062\";\"Titul\";\"other\"\n\"785062\";\"Titulium\";\"other\"\n\"785062\";\"Titöl\";\"other\"\n\"785062\";\"Тител\";\"other\"\n\"785125\";\"Taraš\";\"main\"\n\"785125\";\"Taras\";\"ascii\"\n\"785125\";\"Tarras\";\"other\"\n\"785125\";\"Tiszatarros\";\"other\"\n\"785252\";\"Sutjeska\";\"main\"\n\"785252\";\"Deutsch-Sartscha\";\"other\"\n\"785252\";\"Nemet-Szarcsa\";\"other\"\n\"785252\";\"Nova Sarca\";\"other\"\n\"785252\";\"Nova Sarča\";\"other\"\n\"785252\";\"Német-Szárcsa\";\"other\"\n\"785252\";\"Roman-Szarcsa\";\"other\"\n\"785252\";\"Román-Szárcsa\";\"other\"\n\"785252\";\"Sarca\";\"other\"\n\"785252\";\"Sarča\";\"other\"\n\"785252\";\"Szarcsa\";\"other\"\n\"785252\";\"Szarcsatelek\";\"other\"\n\"785252\";\"Szarcsia\";\"other\"\n\"785252\";\"Szárcsa\";\"other\"\n\"785252\";\"Szárcsatelek\";\"other\"\n\"785287\";\"Surduk\";\"main\"\n\"785287\";\"Rittium\";\"other\"\n\"785287\";\"Szurdok\";\"other\"\n\"785288\";\"Surčin\";\"main\"\n\"785288\";\"Surcin\";\"ascii\"\n\"785288\";\"Surchin\";\"other\"\n\"785288\";\"Surcsin\";\"other\"\n\"785288\";\"Szurcsin\";\"other\"\n\"785358\";\"Stubline\";\"main\"\n\"785358\";\"Stublina\";\"other\"\n\"785489\";\"Stepojevac\";\"main\"\n\"785489\";\"Stepajevac\";\"other\"\n\"785530\";\"Stari Lec\";\"main\"\n\"785530\";\"Alt-Letz\";\"other\"\n\"785530\";\"Barachhaza\";\"other\"\n\"785530\";\"Barachháza\";\"other\"\n\"785530\";\"Baraczhaza\";\"other\"\n\"785530\";\"Baraczháza\";\"other\"\n\"785530\";\"Baráczháza\";\"other\"\n\"785530\";\"Olec\";\"other\"\n\"785530\";\"Olecz\";\"other\"\n\"785530\";\"Óléc\";\"other\"\n\"785530\";\"Ólécz\";\"other\"\n\"785541\";\"Stari Banovci\";\"main\"\n\"785559\";\"Stara Pazova\";\"main\"\n\"785559\";\"Alt-Pasua\";\"other\"\n\"785559\";\"Alt-Pazua\";\"other\"\n\"785559\";\"Opazova\";\"other\"\n\"785559\";\"Pazua\";\"other\"\n\"785559\";\"Ópázova\";\"other\"\n\"785598\";\"Stajićevo\";\"main\"\n\"785598\";\"Stajicevo\";\"ascii\"\n\"785598\";\"Alt-Etschka\";\"other\"\n\"785598\";\"Ecska\";\"other\"\n\"785598\";\"Oecska\";\"other\"\n\"785598\";\"Roman-Ecska\";\"other\"\n\"785598\";\"Román-Écska\";\"other\"\n\"785598\";\"Stara Ecka\";\"other\"\n\"785598\";\"Stara Ečka\";\"other\"\n\"785598\";\"Écska\";\"other\"\n\"785598\";\"Óécska\";\"other\"\n\"785600\";\"Srpski Itebej\";\"main\"\n\"785600\";\"Felsoittebe\";\"other\"\n\"785600\";\"Felsőittebe\";\"other\"\n\"785600\";\"Itebej\";\"other\"\n\"785600\";\"Itebo\";\"other\"\n\"785600\";\"Itebő\";\"other\"\n\"785600\";\"Ittebe\";\"other\"\n\"785600\";\"Racz-Ittebe\";\"other\"\n\"785600\";\"Rácz-Ittebe\";\"other\"\n\"785600\";\"Serbisch Itebe\";\"other\"\n\"785600\";\"Serbisch-Ittebe\";\"other\"\n\"785600\";\"Szerbittabe\";\"other\"\n\"785600\";\"Szerbittabé\";\"other\"\n\"785600\";\"Szerbittebe\";\"other\"\n\"785603\";\"Srpska Crnja\";\"main\"\n\"785603\";\"Crnja\";\"other\"\n\"785603\";\"Csernye\";\"other\"\n\"785603\";\"Czernya\";\"other\"\n\"785603\";\"Deutsch -Tschernja\";\"other\"\n\"785603\";\"Nemacka-Crnja\";\"other\"\n\"785603\";\"Nemacske-Csernye\";\"other\"\n\"785603\";\"Nemačka-Crnja\";\"other\"\n\"785603\";\"Nemačske-Csernye\";\"other\"\n\"785603\";\"Nemetcsernye\";\"other\"\n\"785603\";\"Németcsernye\";\"other\"\n\"785603\";\"Racz-Czernya\";\"other\"\n\"785603\";\"Rácz-Czernya\";\"other\"\n\"785603\";\"Serbish Zerne\";\"other\"\n\"785603\";\"Szerb-Csernya\";\"other\"\n\"785603\";\"Szerbcsernye\";\"other\"\n\"785615\";\"Sremčica\";\"main\"\n\"785615\";\"Sremcica\";\"ascii\"\n\"785753\";\"Smederevska Palanka\";\"main\"\n\"785753\";\"Palanka\";\"other\"\n\"785753\";\"Palanka Smederevska\";\"other\"\n\"785753\";\"Smederevska-Palanka\";\"other\"\n\"785753\";\"Смедеревска-Паланка\";\"other\"\n\"785756\";\"Smederevo\";\"main\"\n\"785756\";\"Semendria\";\"other\"\n\"785756\";\"Smedere\";\"other\"\n\"785756\";\"Smederevas\";\"other\"\n\"785756\";\"Szendro\";\"other\"\n\"785756\";\"Szendrő\";\"other\"\n\"785756\";\"Смедерево\";\"other\"\n\"785903\";\"Šimanovci\";\"main\"\n\"785903\";\"Simanovci\";\"ascii\"\n\"785941\";\"Ševica\";\"main\"\n\"785941\";\"Sevica\";\"ascii\"\n\"785965\";\"Senta\";\"main\"\n\"785965\";\"Szenta\";\"other\"\n\"785965\";\"Szénta\";\"other\"\n\"785965\";\"Zenta\";\"other\"\n\"785965\";\"Сента\";\"other\"\n\"786001\";\"Seleuš\";\"main\"\n\"786001\";\"Seleus\";\"ascii\"\n\"786001\";\"Keviszollos\";\"other\"\n\"786001\";\"Keviszolos\";\"other\"\n\"786001\";\"Keviszőllős\";\"other\"\n\"786001\";\"Keviszőlős\";\"other\"\n\"786001\";\"Seleuş\";\"other\"\n\"786001\";\"Selleush\";\"other\"\n\"786001\";\"Szelleus\";\"other\"\n\"786021\";\"Sefkerin\";\"main\"\n\"786021\";\"Sevkerin\";\"other\"\n\"786021\";\"Shefkerin\";\"other\"\n\"786021\";\"Szeffkerin\";\"other\"\n\"786021\";\"Szefkerin\";\"other\"\n\"786021\";\"Szekereny\";\"other\"\n\"786021\";\"Szekerény\";\"other\"\n\"786035\";\"Sečanj\";\"main\"\n\"786035\";\"Secanj\";\"ascii\"\n\"786035\";\"Petersheim\";\"other\"\n\"786035\";\"Seceani\";\"other\"\n\"786035\";\"Secsan\";\"other\"\n\"786035\";\"Setschan\";\"other\"\n\"786035\";\"Szecsany\";\"other\"\n\"786035\";\"Szecsen\";\"other\"\n\"786035\";\"Szécsány\";\"other\"\n\"786035\";\"Szécsén\";\"other\"\n\"786035\";\"Torontalszecsany\";\"other\"\n\"786035\";\"Torontálszécsány\";\"other\"\n\"786106\";\"Sanad\";\"main\"\n\"786106\";\"Szanad\";\"other\"\n\"786106\";\"Szanád\";\"other\"\n\"786106\";\"Zanad\";\"other\"\n\"786109\";\"Samoš\";\"main\"\n\"786109\";\"Samos\";\"ascii\"\n\"786109\";\"Samosh\";\"other\"\n\"786109\";\"Szamos\";\"other\"\n\"786109\";\"Számos\";\"other\"\n\"786137\";\"Sakule\";\"main\"\n\"786137\";\"Sakula\";\"other\"\n\"786137\";\"Sekulla\";\"other\"\n\"786137\";\"Szakula\";\"other\"\n\"786137\";\"Torontalsziget\";\"other\"\n\"786137\";\"Torontálsziget\";\"other\"\n\"786142\";\"Šajkaš\";\"main\"\n\"786142\";\"Sajkas\";\"ascii\"\n\"786142\";\"Kovil-Szent-Ivan\";\"other\"\n\"786142\";\"Kovil-Szent-Iván\";\"other\"\n\"786142\";\"Kowil-Sankt-Iwan\";\"other\"\n\"786142\";\"Sajkaska\";\"other\"\n\"786142\";\"Sajkaski Sveti Ivan\";\"other\"\n\"786142\";\"Sajkasszentivan\";\"other\"\n\"786142\";\"Sajkaški Sveti Ivan\";\"other\"\n\"786142\";\"Sajkásszentiván\";\"other\"\n\"786142\";\"Schatzdorf\";\"other\"\n\"786142\";\"Szent-Ivany\";\"other\"\n\"786142\";\"Szent-Ivány\";\"other\"\n\"786142\";\"Šajkaška\";\"other\"\n\"786146\";\"Sajan\";\"main\"\n\"786146\";\"Szajan\";\"other\"\n\"786146\";\"Szaján\";\"other\"\n\"786146\";\"Zajan\";\"other\"\n\"786146\";\"Zaján\";\"other\"\n\"786175\";\"Rušanj\";\"main\"\n\"786175\";\"Rusanj\";\"ascii\"\n\"786175\";\"Rushan'\";\"other\"\n\"786175\";\"Рушань\";\"other\"\n\"786395\";\"Ravni Topolovac\";\"main\"\n\"786395\";\"Katalinfalva\";\"other\"\n\"786395\";\"Katarina\";\"other\"\n\"786395\";\"Katarinenfeld\";\"other\"\n\"786395\";\"Katerina\";\"other\"\n\"786395\";\"Katharinenfeld\";\"other\"\n\"786395\";\"Kathereinfeld\";\"other\"\n\"786395\";\"Kathreinfeld\";\"other\"\n\"786395\";\"Topolovac\";\"other\"\n\"786532\";\"Rajince\";\"main\"\n\"786532\";\"Raince\";\"other\"\n\"786532\";\"Raincë\";\"other\"\n\"786532\";\"Rajinca\";\"other\"\n\"786532\";\"Rajnice\";\"other\"\n\"786532\";\"Velike Rajince\";\"other\"\n\"786562\";\"Radovnica\";\"main\"\n\"786583\";\"Radojevo\";\"main\"\n\"786583\";\"Horvatklari\";\"other\"\n\"786583\";\"Horvátklári\";\"other\"\n\"786583\";\"Hrvatska Klarija\";\"other\"\n\"786583\";\"Klari\";\"other\"\n\"786583\";\"Klarija\";\"other\"\n\"786583\";\"Klary\";\"other\"\n\"786583\";\"Klári\";\"other\"\n\"786583\";\"Peterd\";\"other\"\n\"786583\";\"Petyerda\";\"other\"\n\"786583\";\"Péterd\";\"other\"\n\"786583\";\"Srpska Klarija\";\"other\"\n\"786615\";\"Radenka\";\"main\"\n\"786690\";\"Prokuplje\";\"main\"\n\"786690\";\"Prokuple\";\"other\"\n\"786827\";\"Požarevac\";\"main\"\n\"786827\";\"Pozarevac\";\"ascii\"\n\"786827\";\"Pozarewac\";\"other\"\n\"786827\";\"Pozerevac\";\"other\"\n\"786827\";\"Pozharevac\";\"other\"\n\"786827\";\"Pozsarevac\";\"other\"\n\"786827\";\"Pozsarevác\";\"other\"\n\"786827\";\"Pożarewac\";\"other\"\n\"786827\";\"Požerevac\";\"other\"\n\"786827\";\"Пожаревац\";\"other\"\n\"787032\";\"Plandište\";\"main\"\n\"787032\";\"Plandiste\";\"ascii\"\n\"787032\";\"Mariolana\";\"other\"\n\"787032\";\"Planduliste\";\"other\"\n\"787032\";\"Plandulişte\";\"other\"\n\"787032\";\"Zichidorf\";\"other\"\n\"787032\";\"Zichifalva\";\"other\"\n\"787032\";\"Zichihaza\";\"other\"\n\"787032\";\"Zichiháza\";\"other\"\n\"787032\";\"Zichydorf\";\"other\"\n\"787032\";\"Zichyfalva\";\"other\"\n\"787032\";\"Zichyhaz\";\"other\"\n\"787032\";\"Zichyház\";\"other\"\n\"787032\";\"Zicifalva\";\"other\"\n\"787032\";\"Zičifalva\";\"other\"\n\"787050\";\"Pirot\";\"main\"\n\"787050\";\"Пирот\";\"other\"\n\"787123\";\"Perlez\";\"main\"\n\"787123\";\"Perlas\";\"other\"\n\"787123\";\"Perlasz\";\"other\"\n\"787123\";\"Perlaszvaros\";\"other\"\n\"787123\";\"Perlaszváros\";\"other\"\n\"787164\";\"Pavliš\";\"main\"\n\"787164\";\"Pavlis\";\"ascii\"\n\"787164\";\"Temes-Paulis\";\"other\"\n\"787164\";\"Temespaulis\";\"other\"\n\"787164\";\"Temiski Pavlis\";\"other\"\n\"787164\";\"Temiški Pavliš\";\"other\"\n\"787164\";\"Vrsac-Pavlis\";\"other\"\n\"787164\";\"Vršac-Pavliš\";\"other\"\n\"787215\";\"Paraćin\";\"main\"\n\"787215\";\"Paracin\";\"ascii\"\n\"787215\";\"Parachin\";\"other\"\n\"787215\";\"Парачин\";\"other\"\n\"787237\";\"Pančevo\";\"main\"\n\"787237\";\"Pancevo\";\"ascii\"\n\"787237\";\"Banstadt\";\"other\"\n\"787237\";\"Hertelendyfalva\";\"other\"\n\"787237\";\"Marienfeld\";\"other\"\n\"787237\";\"Pancevas\";\"other\"\n\"787237\";\"Panchevo\";\"other\"\n\"787237\";\"Panciova\";\"other\"\n\"787237\";\"Pancsal\";\"other\"\n\"787237\";\"Pancsaly\";\"other\"\n\"787237\";\"Pancsova\";\"other\"\n\"787237\";\"Pantschowa\";\"other\"\n\"787237\";\"Pančevas\";\"other\"\n\"787237\";\"Vojlovica\";\"other\"\n\"787237\";\"Wojlowitz\";\"other\"\n\"787237\";\"Wojlowitza\";\"other\"\n\"787237\";\"Панчево\";\"other\"\n\"787271\";\"Padina\";\"main\"\n\"787271\";\"Lajosfalva\";\"other\"\n\"787271\";\"Ludwigsdorf\";\"other\"\n\"787271\";\"Naglajosfalva\";\"other\"\n\"787271\";\"Nagylajosfalva\";\"other\"\n\"787274\";\"Padej\";\"main\"\n\"787274\";\"Magyarpade\";\"other\"\n\"787274\";\"Magyarpadé\";\"other\"\n\"787274\";\"Novi-Padej\";\"other\"\n\"787274\";\"Pade\";\"other\"\n\"787274\";\"Padé\";\"other\"\n\"787274\";\"Srpski Padej\";\"other\"\n\"787274\";\"Szerb-Pade\";\"other\"\n\"787274\";\"Szerb-Padé\";\"other\"\n\"787296\";\"Ovča\";\"main\"\n\"787296\";\"Ovca\";\"ascii\"\n\"787296\";\"Baranyos\";\"other\"\n\"787296\";\"Bárányos\";\"other\"\n\"787296\";\"Gisellenhain\";\"other\"\n\"787296\";\"Ovcha\";\"other\"\n\"787296\";\"Ovcsa\";\"other\"\n\"787296\";\"Овча\";\"other\"\n\"787306\";\"Ostružnica\";\"main\"\n\"787306\";\"Ostruznica\";\"ascii\"\n\"787341\";\"Ostojićevo\";\"main\"\n\"787341\";\"Ostojicevo\";\"ascii\"\n\"787341\";\"Klein Niklas\";\"other\"\n\"787341\";\"Klein Niklos\";\"other\"\n\"787341\";\"Ostojcevo\";\"other\"\n\"787341\";\"Ostojćevo\";\"other\"\n\"787341\";\"Ostrojcevo\";\"other\"\n\"787341\";\"Ostrojćevo\";\"other\"\n\"787341\";\"Potiski Sveti Nikola\";\"other\"\n\"787341\";\"Sankt Nikolaus an der Theiss\";\"other\"\n\"787341\";\"Tisa Sent Miklos\";\"other\"\n\"787341\";\"Tisa Sent Mikloš\";\"other\"\n\"787341\";\"Tisasentmiklus\";\"other\"\n\"787341\";\"Tisasentmikluš\";\"other\"\n\"787341\";\"Tiszaszentmiklos\";\"other\"\n\"787341\";\"Tiszaszentmiklós\";\"other\"\n\"787391\";\"Orlovat\";\"main\"\n\"787391\";\"Barlad\";\"other\"\n\"787391\";\"Borlod\";\"other\"\n\"787391\";\"Orlod\";\"other\"\n\"787391\";\"Orlód\";\"other\"\n\"787461\";\"Opovo\";\"main\"\n\"787461\";\"Konisdorf\";\"other\"\n\"787461\";\"Könisdorf\";\"other\"\n\"787461\";\"Opava\";\"other\"\n\"787461\";\"Oppova\";\"other\"\n\"787461\";\"Oppowa\";\"other\"\n\"787461\";\"Ópáva\";\"other\"\n\"787461\";\"Опово\";\"other\"\n\"787516\";\"Obrenovac\";\"main\"\n\"787584\";\"Novo Miloševo\";\"main\"\n\"787584\";\"Novo Milosevo\";\"ascii\"\n\"787584\";\"Beodra\";\"other\"\n\"787584\";\"Beodra-Dragutinovo\";\"other\"\n\"787584\";\"Dragutinovo\";\"other\"\n\"787584\";\"Karlova\";\"other\"\n\"787584\";\"Karlovo\";\"other\"\n\"787584\";\"Milosevo\";\"other\"\n\"787584\";\"Miloševo\";\"other\"\n\"787592\";\"Novi Slankamen\";\"main\"\n\"787592\";\"Neu-Slankamen\";\"other\"\n\"787592\";\"Slankamen\";\"other\"\n\"787592\";\"Slankamen Novi\";\"other\"\n\"787592\";\"Slankament\";\"other\"\n\"787592\";\"Ujzalankemen\";\"other\"\n\"787592\";\"Újzalánkemén\";\"other\"\n\"787595\";\"Novi Pazar\";\"main\"\n\"787595\";\"Novi pazar\";\"other\"\n\"787595\";\"Pazari i Ri\";\"other\"\n\"787595\";\"Yeni Pazar\";\"other\"\n\"787595\";\"Yenipazar\";\"other\"\n\"787595\";\"novi pazar\";\"other\"\n\"787595\";\"Нови Пазар\";\"other\"\n\"787595\";\"Нови пазар\";\"other\"\n\"787597\";\"Kozjak\";\"main\"\n\"787597\";\"Ferdin\";\"other\"\n\"787597\";\"Ferdinandfalva\";\"other\"\n\"787597\";\"Ferdinandsdorf\";\"other\"\n\"787597\";\"Ferdinándfalva\";\"other\"\n\"787597\";\"Novi Kozjak\";\"other\"\n\"787598\";\"Novi Kozarci\";\"main\"\n\"787598\";\"Hajfeld\";\"other\"\n\"787598\";\"Heufeld\";\"other\"\n\"787598\";\"Kistoszeg\";\"other\"\n\"787598\";\"Kistószeg\";\"other\"\n\"787598\";\"Kozarci\";\"other\"\n\"787598\";\"Massdorf\";\"other\"\n\"787598\";\"Mastort\";\"other\"\n\"787598\";\"Nagytoszeg\";\"other\"\n\"787598\";\"Nagytošzeg\";\"other\"\n\"787598\";\"Nagytószeg\";\"other\"\n\"787598\";\"Toszeg\";\"other\"\n\"787598\";\"Tószeg\";\"other\"\n\"787598\";\"Veliki Teseg\";\"other\"\n\"787600\";\"Novi Kneževac\";\"main\"\n\"787600\";\"Novi Knezevac\";\"ascii\"\n\"787600\";\"Josephova\";\"other\"\n\"787600\";\"Josephsdorf\";\"other\"\n\"787600\";\"Kanisa\";\"other\"\n\"787600\";\"Kanizsa\";\"other\"\n\"787600\";\"Kis-Kanizsa\";\"other\"\n\"787600\";\"Neukanischa\";\"other\"\n\"787600\";\"Nova Kanjiza\";\"other\"\n\"787600\";\"Nova Kanjiža\";\"other\"\n\"787600\";\"Rev-Kanizsa\";\"other\"\n\"787600\";\"Rév-Kanizsa\";\"other\"\n\"787600\";\"Torokkanizsa\";\"other\"\n\"787600\";\"Torontal-Jozseffalva\";\"other\"\n\"787600\";\"Torontál-Józseffalva\";\"other\"\n\"787600\";\"Turska Kanjiza\";\"other\"\n\"787600\";\"Turska Kanjiža\";\"other\"\n\"787600\";\"Törökkanizsa\";\"other\"\n\"787601\";\"Novi Karlovci\";\"main\"\n\"787601\";\"Karlovicz\";\"other\"\n\"787601\";\"Neu-Karlowitz\";\"other\"\n\"787601\";\"Novi Karlovec\";\"other\"\n\"787601\";\"Sase\";\"other\"\n\"787601\";\"Sassa\";\"other\"\n\"787601\";\"Ujkarloca\";\"other\"\n\"787601\";\"Újkarlóca\";\"other\"\n\"787602\";\"Novi Itebej\";\"main\"\n\"787602\";\"Alsoittebe\";\"other\"\n\"787602\";\"Alsóittebe\";\"other\"\n\"787602\";\"Itebo\";\"other\"\n\"787602\";\"Itebő\";\"other\"\n\"787602\";\"Ittebe\";\"other\"\n\"787602\";\"Magyar-Ittebe\";\"other\"\n\"787602\";\"Magyarittabe\";\"other\"\n\"787602\";\"Magyarittabé\";\"other\"\n\"787602\";\"Neu-Itebe\";\"other\"\n\"787602\";\"Ungarisch-Ittebe\";\"other\"\n\"787612\";\"Novi Banovci\";\"main\"\n\"787615\";\"bar\";\"main\"\n\"787615\";\"Neu-Pasua\";\"other\"\n\"787615\";\"Ujpazova\";\"other\"\n\"787615\";\"Újpázova\";\"other\"\n\"787621\";\"Nova Crnja\";\"main\"\n\"787657\";\"Niš\";\"main\"\n\"787657\";\"Nis\";\"ascii\"\n\"787657\";\"Nich\";\"other\"\n\"787657\";\"Nisch\";\"other\"\n\"787657\";\"Nish\";\"other\"\n\"787657\";\"Niso\";\"other\"\n\"787657\";\"Nissa\";\"other\"\n\"787657\";\"Nisz\";\"other\"\n\"787657\";\"Nix\";\"other\"\n\"787657\";\"Niŝo\";\"other\"\n\"787657\";\"Ниш\";\"other\"\n\"787663\";\"Nikolinci\";\"main\"\n\"787663\";\"Nikolince\";\"other\"\n\"787663\";\"Nikolincze\";\"other\"\n\"787663\";\"Temes-Miklos\";\"other\"\n\"787663\";\"Temes-Miklós\";\"other\"\n\"787682\";\"Neuzina\";\"main\"\n\"787682\";\"Horvat-Neuzina\";\"other\"\n\"787682\";\"Horvát-Neuzina\";\"other\"\n\"787682\";\"Hrvatska Neuzina\";\"other\"\n\"787682\";\"Kisnezseny\";\"other\"\n\"787682\";\"Kisnezsény\";\"other\"\n\"787682\";\"Kroatisch-Neusin\";\"other\"\n\"787682\";\"Nagynezseny\";\"other\"\n\"787682\";\"Nagynezsény\";\"other\"\n\"787682\";\"Neuszina\";\"other\"\n\"787682\";\"Serbisch-Neusin\";\"other\"\n\"787682\";\"Srpska Neuzina\";\"other\"\n\"787682\";\"Szerb-Neuzina\";\"other\"\n\"787718\";\"Negotin\";\"main\"\n\"787718\";\"Negotin Krajina\";\"other\"\n\"787718\";\"Negotin Krajinski\";\"other\"\n\"787718\";\"Неготин\";\"other\"\n\"787743\";\"Nakovo\";\"main\"\n\"787743\";\"Nakodorf\";\"other\"\n\"787743\";\"Nakofalva\";\"other\"\n\"787743\";\"Nákófalva\";\"other\"\n\"787747\";\"Adorjan\";\"main\"\n\"787747\";\"Nadrljan\";\"other\"\n\"787837\";\"Mošorin\";\"main\"\n\"787837\";\"Mosorin\";\"ascii\"\n\"787837\";\"Moschorin\";\"other\"\n\"787837\";\"Mozsor\";\"other\"\n\"787855\";\"Mol\";\"main\"\n\"787855\";\"Mohol\";\"other\"\n\"787855\";\"Мол\";\"other\"\n\"787857\";\"Mokrin\";\"main\"\n\"787857\";\"Homokrev\";\"other\"\n\"787857\";\"Homokrév\";\"other\"\n\"787929\";\"Miratovac\";\"main\"\n\"787929\";\"Miras\";\"other\"\n\"787929\";\"Miratovce\";\"other\"\n\"787929\";\"Miraš\";\"other\"\n\"787998\";\"Mihajlovo\";\"main\"\n\"787998\";\"Magyarszentmihaly\";\"other\"\n\"787998\";\"Magyarszentmihály\";\"other\"\n\"787998\";\"Szentmihaly\";\"other\"\n\"787998\";\"Szentmihály\";\"other\"\n\"788040\";\"Melenci\";\"main\"\n\"788040\";\"Meleanz\";\"other\"\n\"788040\";\"Melencze\";\"other\"\n\"788040\";\"Melentz\";\"other\"\n\"788040\";\"Melenze\";\"other\"\n\"788073\";\"Međa\";\"main\"\n\"788073\";\"Meda\";\"ascii\"\n\"788073\";\"Magyar-Pardany\";\"other\"\n\"788073\";\"Magyar-Párdány\";\"other\"\n\"788073\";\"Nemet-Pardany\";\"other\"\n\"788073\";\"Nincicevo\";\"other\"\n\"788073\";\"Ninčićevo\";\"other\"\n\"788073\";\"Német-Párdány\";\"other\"\n\"788073\";\"Pardan\";\"other\"\n\"788073\";\"Pardanj\";\"other\"\n\"788073\";\"Pardany\";\"other\"\n\"788073\";\"Párdány\";\"other\"\n\"788073\";\"Racz-Pardany\";\"other\"\n\"788073\";\"Rácz-Párdány\";\"other\"\n\"788073\";\"Szerb-Pardany\";\"other\"\n\"788073\";\"Szerb-Párdány\";\"other\"\n\"788153\";\"Margita\";\"main\"\n\"788153\";\"Gross-Margit\";\"other\"\n\"788153\";\"Margitha\";\"other\"\n\"788153\";\"Margitta\";\"other\"\n\"788153\";\"Nagymargita\";\"other\"\n\"788153\";\"Nagymargitta\";\"other\"\n\"788315\";\"Mala Moštanica\";\"main\"\n\"788315\";\"Mala Mostanica\";\"ascii\"\n\"788357\";\"Majdanpek\";\"main\"\n\"788357\";\"Майданпек\";\"other\"\n\"788421\";\"Lukićevo\";\"main\"\n\"788421\";\"Lukicevo\";\"ascii\"\n\"788421\";\"Martinica\";\"other\"\n\"788421\";\"Sigmundsdorf\";\"other\"\n\"788421\";\"Sigmundsfeld\";\"other\"\n\"788421\";\"Zsigmondfalva\";\"other\"\n\"788439\";\"Lugavčina\";\"main\"\n\"788439\";\"Lugavcina\";\"ascii\"\n\"788507\";\"Lokve\";\"main\"\n\"788507\";\"Semijaj\";\"other\"\n\"788507\";\"Sent Mihai\";\"other\"\n\"788507\";\"Sveti Mihajl\";\"other\"\n\"788507\";\"Sveti Mihajlo\";\"other\"\n\"788507\";\"Szent-Mihaly\";\"other\"\n\"788507\";\"Szent-Mihály\";\"other\"\n\"788507\";\"Vegsent Mihalj\";\"other\"\n\"788507\";\"Vegszentmihaly\";\"other\"\n\"788507\";\"Végszentmihály\";\"other\"\n\"788515\";\"Lok\";\"main\"\n\"788515\";\"Lock\";\"other\"\n\"788515\";\"Look\";\"other\"\n\"788515\";\"Loók\";\"other\"\n\"788515\";\"Lók\";\"other\"\n\"788515\";\"Sajkaslak\";\"other\"\n\"788515\";\"Sajkáslak\";\"other\"\n\"788539\";\"Ljukovo\";\"main\"\n\"788539\";\"Lyukovo\";\"other\"\n\"788539\";\"Pustara Ljukovo\";\"other\"\n\"788584\";\"Ljig\";\"main\"\n\"788584\";\"Lig\";\"other\"\n\"788584\";\"Лиг\";\"other\"\n\"788709\";\"Leskovac\";\"main\"\n\"788709\";\"Leskovacas\";\"other\"\n\"788709\";\"Лесковац\";\"other\"\n\"788768\";\"Lazarevo\";\"main\"\n\"788768\";\"Lasarfeld\";\"other\"\n\"788768\";\"Lazarfold\";\"other\"\n\"788768\";\"Lázárföld\";\"other\"\n\"788771\";\"Lazarevac\";\"main\"\n\"788771\";\"Лазаревац\";\"other\"\n\"788792\";\"Lapovo\";\"main\"\n\"788792\";\"Лапово\";\"other\"\n\"788838\";\"Kuštilj\";\"main\"\n\"788838\";\"Kustilj\";\"ascii\"\n\"788838\";\"Costeiu\";\"other\"\n\"788838\";\"Coşteiu\";\"other\"\n\"788838\";\"Kustely\";\"other\"\n\"788838\";\"Kustil\";\"other\"\n\"788838\";\"Kustély\";\"other\"\n\"788838\";\"Melykastely\";\"other\"\n\"788838\";\"Mélykastély\";\"other\"\n\"788868\";\"Kupinovo\";\"main\"\n\"788868\";\"Kelpeny\";\"other\"\n\"788868\";\"Kelpény\";\"other\"\n\"788868\";\"Kolpeny\";\"other\"\n\"788868\";\"Kölpény\";\"other\"\n\"788890\";\"Kumane\";\"main\"\n\"788890\";\"Kuman\";\"other\"\n\"788890\";\"Kumand\";\"other\"\n\"788890\";\"Kumani\";\"other\"\n\"788890\";\"Kumán\";\"other\"\n\"788890\";\"Kumánd\";\"other\"\n\"788975\";\"Kruševac\";\"main\"\n\"788975\";\"Krusevac\";\"ascii\"\n\"788975\";\"Alacahisar\";\"other\"\n\"788975\";\"Krusevacas\";\"other\"\n\"788975\";\"Krushevac\";\"other\"\n\"788975\";\"Kruševacas\";\"other\"\n\"788975\";\"alajh hsar\";\"other\"\n\"788975\";\"ke lu she wa ci\";\"other\"\n\"788975\";\"Крушевац\";\"other\"\n\"788975\";\"الاجه حصار\";\"other\"\n\"788975\";\"克鲁舍瓦茨\";\"other\"\n\"789076\";\"Krčedin\";\"main\"\n\"789076\";\"Krcedin\";\"ascii\"\n\"789107\";\"Kraljevo\";\"main\"\n\"789107\";\"Kralevo\";\"other\"\n\"789107\";\"Kraljevas\";\"other\"\n\"789107\";\"Rankovicevo\";\"other\"\n\"789107\";\"Rankovićevo\";\"other\"\n\"789107\";\"Кралево\";\"other\"\n\"789107\";\"Краљево\";\"other\"\n\"789124\";\"Krajišnik\";\"main\"\n\"789124\";\"Krajisnik\";\"ascii\"\n\"789124\";\"Istvanfold\";\"other\"\n\"789124\";\"Istvanfolde\";\"other\"\n\"789124\";\"Istvánföld\";\"other\"\n\"789124\";\"Istvánfölde\";\"other\"\n\"789124\";\"Schuplje\";\"other\"\n\"789124\";\"Stefanfold\";\"other\"\n\"789124\";\"Stefanifeld\";\"other\"\n\"789124\";\"Stefansfeld\";\"other\"\n\"789124\";\"Stefánföld\";\"other\"\n\"789124\";\"Stephansdorf\";\"other\"\n\"789124\";\"Supljaja\";\"other\"\n\"789124\";\"Šupljaja\";\"other\"\n\"789128\";\"Kragujevac\";\"main\"\n\"789128\";\"Krabujevac\";\"other\"\n\"789128\";\"Kragiyevac\";\"other\"\n\"789128\";\"Kraguevac\";\"other\"\n\"789128\";\"Kragujevaca\";\"other\"\n\"789128\";\"Kragujevacas\";\"other\"\n\"789128\";\"kuraguievu~atsu\";\"other\"\n\"789128\";\"qrgwyybz\";\"other\"\n\"789128\";\"Крагуевац\";\"other\"\n\"789128\";\"Крагујевац\";\"other\"\n\"789128\";\"קרגוייבץ\";\"other\"\n\"789128\";\"クラグイエヴァツ\";\"other\"\n\"789168\";\"Kovin\";\"main\"\n\"789168\";\"Cubin\";\"other\"\n\"789168\";\"Kevevara\";\"other\"\n\"789168\";\"Kevevára\";\"other\"\n\"789168\";\"Kubin\";\"other\"\n\"789168\";\"Temes-Kubin\";\"other\"\n\"789168\";\"Temeschkubin\";\"other\"\n\"789168\";\"Ковин\";\"other\"\n\"789170\";\"Kovilj\";\"main\"\n\"789170\";\"Alsokabol\";\"other\"\n\"789170\";\"Alsokovil\";\"other\"\n\"789170\";\"Alsókabol\";\"other\"\n\"789170\";\"Alsókovil\";\"other\"\n\"789170\";\"Dolnji Kovilj\";\"other\"\n\"789170\";\"Donji Kovilj\";\"other\"\n\"789170\";\"Felso-Kovil\";\"other\"\n\"789170\";\"Felsokabol\";\"other\"\n\"789170\";\"Felső-Kovil\";\"other\"\n\"789170\";\"Felsőkabol\";\"other\"\n\"789170\";\"Gornji-Kovil\";\"other\"\n\"789170\";\"Gornji-Kovilj\";\"other\"\n\"789170\";\"Kabol\";\"other\"\n\"789170\";\"Ober-Kovil\";\"other\"\n\"789170\";\"Unter-Kovil\";\"other\"\n\"789178\";\"Kovačica\";\"main\"\n\"789178\";\"Kovacica\";\"ascii\"\n\"789178\";\"Antalfalva\";\"other\"\n\"789178\";\"Kovacsica\";\"other\"\n\"789178\";\"Kovacsicza\";\"other\"\n\"789178\";\"Kowatschitza\";\"other\"\n\"789346\";\"Konak\";\"main\"\n\"789346\";\"Conak\";\"other\"\n\"789346\";\"Kanak\";\"other\"\n\"789415\";\"Knićanin\";\"main\"\n\"789415\";\"Knicanin\";\"ascii\"\n\"789471\";\"Klek\";\"main\"\n\"789471\";\"Begafo\";\"other\"\n\"789471\";\"Bégafő\";\"other\"\n\"789471\";\"Kleck\";\"other\"\n\"789471\";\"Klekk\";\"other\"\n\"789518\";\"Kikinda\";\"main\"\n\"789518\";\"Chichinda Mare\";\"other\"\n\"789518\";\"Gross-Kikinda\";\"other\"\n\"789518\";\"Kokend\";\"other\"\n\"789518\";\"Kökénd\";\"other\"\n\"789518\";\"Nagykikinda\";\"other\"\n\"789518\";\"Velika Kikinda\";\"other\"\n\"789518\";\"Кикинда\";\"other\"\n\"789600\";\"Kanjiža\";\"main\"\n\"789600\";\"Kanjiza\";\"ascii\"\n\"789600\";\"Alt-Kanischa\";\"other\"\n\"789600\";\"Kanizha\";\"other\"\n\"789600\";\"Magyarkanizsa\";\"other\"\n\"789600\";\"Pavlovgrad\";\"other\"\n\"789600\";\"Stara Kanjiza\";\"other\"\n\"789600\";\"Stara Kanjiža\";\"other\"\n\"789600\";\"Ungarisch-Kanischa\";\"other\"\n\"789600\";\"Ungarische Kanischa\";\"other\"\n\"789600\";\"Канижа\";\"other\"\n\"789787\";\"Jermenovci\";\"main\"\n\"789787\";\"Irmenjhaza\";\"other\"\n\"789787\";\"Urmenhausen\";\"other\"\n\"789787\";\"Urmenyhaza\";\"other\"\n\"789787\";\"Ürmenyhaza\";\"other\"\n\"789787\";\"Ürményháza\";\"other\"\n\"789828\";\"Jazovo\";\"main\"\n\"789828\";\"Hodegyhaz\";\"other\"\n\"789828\";\"Hodegyhaza\";\"other\"\n\"789828\";\"Hodics\";\"other\"\n\"789828\";\"Hódegyház\";\"other\"\n\"789828\";\"Hódegyháza\";\"other\"\n\"789828\";\"Jasowo\";\"other\"\n\"789828\";\"Jaszova\";\"other\"\n\"789828\";\"Jazova\";\"other\"\n\"789828\";\"Jászova\";\"other\"\n\"789828\";\"Jázova\";\"other\"\n\"789875\";\"Jaša Tomić\";\"main\"\n\"789875\";\"Jasa Tomic\";\"ascii\"\n\"789875\";\"Deutsch-Modos\";\"other\"\n\"789875\";\"Modos\";\"other\"\n\"789875\";\"Módos\";\"other\"\n\"789875\";\"Nemet-Modos\";\"other\"\n\"789875\";\"Német-Módos\";\"other\"\n\"789875\";\"Racz-Modos\";\"other\"\n\"789875\";\"Rácz-Módos\";\"other\"\n\"789875\";\"Serbish-Modos\";\"other\"\n\"789875\";\"Szerb-Modos\";\"other\"\n\"789875\";\"Szerb-Módos\";\"other\"\n\"789880\";\"Jarkovac\";\"main\"\n\"789880\";\"Arkod\";\"other\"\n\"789880\";\"Jarkovacz\";\"other\"\n\"789880\";\"Jarkovácz\";\"other\"\n\"789880\";\"Jarkowatz\";\"other\"\n\"789880\";\"Árkod\";\"other\"\n\"789888\";\"Janošik\";\"main\"\n\"789888\";\"Janosik\";\"ascii\"\n\"789888\";\"Slovacki-Aleksandrovac\";\"other\"\n\"789888\";\"Slovački-Aleksandrovac\";\"other\"\n\"789888\";\"Ujsandorfalva\";\"other\"\n\"789888\";\"Újsándorfalva\";\"other\"\n\"789923\";\"Jagodina\";\"main\"\n\"789923\";\"Svetozarevo\";\"other\"\n\"789923\";\"yaghwdynh\";\"other\"\n\"789923\";\"Ягодина\";\"other\"\n\"789923\";\"یاغودینه\";\"other\"\n\"789972\";\"Izbište\";\"main\"\n\"789972\";\"Izbiste\";\"ascii\"\n\"789972\";\"Isbischte\";\"other\"\n\"790015\";\"Inđija\";\"main\"\n\"790015\";\"Ingija\";\"ascii\"\n\"790015\";\"India\";\"other\"\n\"790015\";\"Indjija\";\"other\"\n\"790028\";\"Ilandža\";\"main\"\n\"790028\";\"Ilandza\";\"ascii\"\n\"790028\";\"Ilancsa\";\"other\"\n\"790028\";\"Ilangea\";\"other\"\n\"790028\";\"Illancs\";\"other\"\n\"790028\";\"Illancsa\";\"other\"\n\"790028\";\"Ilonc\";\"other\"\n\"790028\";\"Iloncz\";\"other\"\n\"790028\";\"Iláncsa\";\"other\"\n\"790033\";\"Idvor\";\"main\"\n\"790033\";\"Torontaludvar\";\"other\"\n\"790033\";\"Torontáludvar\";\"other\"\n\"790035\";\"Iđoš\";\"main\"\n\"790035\";\"Idos\";\"ascii\"\n\"790035\";\"Hegyes\";\"other\"\n\"790035\";\"Idjos\";\"other\"\n\"790035\";\"Idjoš\";\"other\"\n\"790035\";\"Tiszahegyes\";\"other\"\n\"790053\";\"Hetin\";\"main\"\n\"790053\";\"Heteny\";\"other\"\n\"790053\";\"Hettin\";\"other\"\n\"790053\";\"Hetény\";\"other\"\n\"790053\";\"Tamasfalva\";\"other\"\n\"790053\";\"Tamásfalva\";\"other\"\n\"790053\";\"Tomsdorf\";\"other\"\n\"790063\";\"Hajdučica\";\"main\"\n\"790063\";\"Hajducica\";\"ascii\"\n\"790063\";\"Ajducica\";\"other\"\n\"790063\";\"Ajdučica\";\"other\"\n\"790063\";\"Haiducita\";\"other\"\n\"790063\";\"Haiduciţa\";\"other\"\n\"790063\";\"Hajduschitza\";\"other\"\n\"790063\";\"Hajdusicz\";\"other\"\n\"790063\";\"Hajdusicza\";\"other\"\n\"790063\";\"Heideschutz\";\"other\"\n\"790063\";\"Heideschütz\";\"other\"\n\"790063\";\"Istvanvolgy\";\"other\"\n\"790063\";\"Istvánvölgy\";\"other\"\n\"790104\";\"Gudurica\";\"main\"\n\"790104\";\"Kudricz\";\"other\"\n\"790104\";\"Kutas\";\"other\"\n\"790104\";\"Kutrica\";\"other\"\n\"790104\";\"Temes-Kutas\";\"other\"\n\"790104\";\"Temiski Kutas\";\"other\"\n\"790277\";\"Grabovac\";\"main\"\n\"790367\";\"Gornji Milanovac\";\"main\"\n\"790394\";\"Gornji Breg\";\"main\"\n\"790557\";\"Golubinci\";\"main\"\n\"790557\";\"Gollubincze\";\"other\"\n\"790557\";\"Golubince\";\"other\"\n\"790698\";\"Glogovac\";\"main\"\n\"790698\";\"Drenas\";\"other\"\n\"790772\";\"Gardinovci\";\"main\"\n\"790772\";\"Dunagardony\";\"other\"\n\"790772\";\"Dunagárdony\";\"other\"\n\"790772\";\"Gardinovacz\";\"other\"\n\"790772\";\"Gardinovaz\";\"other\"\n\"790772\";\"Gardinovce\";\"other\"\n\"790772\";\"Gardinovcze\";\"other\"\n\"790823\";\"Farkaždin\";\"main\"\n\"790823\";\"Farkazdin\";\"ascii\"\n\"790823\";\"Farkasd\";\"other\"\n\"790823\";\"Farkasdhin\";\"other\"\n\"790842\";\"Elemir\";\"main\"\n\"790842\";\"Felsoelemer\";\"other\"\n\"790842\";\"Felsőelemér\";\"other\"\n\"790842\";\"Nemacki Elemir\";\"other\"\n\"790842\";\"Nemački Elemir\";\"other\"\n\"790842\";\"Serbisch-Elemir\";\"other\"\n\"790842\";\"Srpski Elemir\";\"other\"\n\"790847\";\"Ečka\";\"main\"\n\"790847\";\"Ecka\";\"ascii\"\n\"790847\";\"Deutsch Etschka\";\"other\"\n\"790847\";\"Ecska\";\"other\"\n\"790847\";\"Nemet-Ecska\";\"other\"\n\"790847\";\"Német-Écska\";\"other\"\n\"790847\";\"Pavlovo\";\"other\"\n\"790847\";\"Pavlovo Ecka\";\"other\"\n\"790847\";\"Pavlovo Ečka\";\"other\"\n\"790847\";\"Écska\";\"other\"\n\"790898\";\"Ðurđevo\";\"main\"\n\"790898\";\"Durdevo\";\"ascii\"\n\"790898\";\"Djurdjevo\";\"other\"\n\"790898\";\"Gjurgjevo\";\"other\"\n\"790898\";\"Gyurgyevo\";\"other\"\n\"790898\";\"Sajkasgyorgye\";\"other\"\n\"790898\";\"Sajkásgyörgye\";\"other\"\n\"790983\";\"Duboka\";\"main\"\n\"790983\";\"Donja Duboka\";\"other\"\n\"791452\";\"Dobrica\";\"main\"\n\"791452\";\"Dobricza\";\"other\"\n\"791452\";\"Dobritza\";\"other\"\n\"791452\";\"Kevedobra\";\"other\"\n\"791471\";\"Dobanovci\";\"main\"\n\"791471\";\"Dobanovce\";\"other\"\n\"791471\";\"Dobanovcze\";\"other\"\n\"791471\";\"Dobanovçe\";\"other\"\n\"791471\";\"dwbanwchh\";\"other\"\n\"791471\";\"دوبانوچه\";\"other\"\n\"791589\";\"Debeljača\";\"main\"\n\"791589\";\"Debeljaca\";\"ascii\"\n\"791589\";\"Torontalvasarhely\";\"other\"\n\"791589\";\"Torontálvásárhely\";\"other\"\n\"791672\";\"Čurug\";\"main\"\n\"791672\";\"Curug\";\"ascii\"\n\"791672\";\"Csurog\";\"other\"\n\"791678\";\"Ćuprija\";\"main\"\n\"791678\";\"Cuprija\";\"ascii\"\n\"791887\";\"Crepaja\";\"main\"\n\"791887\";\"Cserepalja\";\"other\"\n\"791887\";\"Cserépalja\";\"other\"\n\"791887\";\"Czrepaj\";\"other\"\n\"791887\";\"Czrepaja\";\"other\"\n\"791890\";\"Čortanovci\";\"main\"\n\"791890\";\"Cortanovci\";\"ascii\"\n\"791900\";\"Čoka\";\"main\"\n\"791900\";\"Coka\";\"ascii\"\n\"791900\";\"Csoka\";\"other\"\n\"791900\";\"Csóka\";\"other\"\n\"791900\";\"Tschoka\";\"other\"\n\"791948\";\"Čestereg\";\"main\"\n\"791948\";\"Cestereg\";\"ascii\"\n\"791948\";\"Cesterek\";\"other\"\n\"791948\";\"Cseszterek\";\"other\"\n\"791948\";\"Csosztelek\";\"other\"\n\"791948\";\"Csősztelek\";\"other\"\n\"791948\";\"Isterek\";\"other\"\n\"791948\";\"Neuhatzfeld\";\"other\"\n\"791948\";\"Tschestelek\";\"other\"\n\"791948\";\"Tschestereg\";\"other\"\n\"791948\";\"Česterek\";\"other\"\n\"791998\";\"Čenta\";\"main\"\n\"791998\";\"Centa\";\"ascii\"\n\"791998\";\"Csenta\";\"other\"\n\"791998\";\"Csentej\";\"other\"\n\"791998\";\"Leopoldova\";\"other\"\n\"792078\";\"Čačak\";\"main\"\n\"792078\";\"Cacak\";\"ascii\"\n\"792078\";\"Cacakas\";\"other\"\n\"792078\";\"Chachak\";\"other\"\n\"792078\";\"cha cha ke\";\"other\"\n\"792078\";\"Čačakas\";\"other\"\n\"792078\";\"Чачак\";\"other\"\n\"792078\";\"查查克\";\"other\"\n\"792404\";\"Botoš\";\"main\"\n\"792404\";\"Botos\";\"ascii\"\n\"792404\";\"Botosch\";\"other\"\n\"792404\";\"Botosh\";\"other\"\n\"792404\";\"Bottos\";\"other\"\n\"792404\";\"Bótos\";\"other\"\n\"792456\";\"Bor\";\"main\"\n\"792456\";\"Бор\";\"other\"\n\"792467\";\"Boljevci\";\"main\"\n\"792479\";\"Boka\";\"main\"\n\"792479\";\"Boca\";\"other\"\n\"792479\";\"Bóka\";\"other\"\n\"792530\";\"Bočar\";\"main\"\n\"792530\";\"Bocar\";\"ascii\"\n\"792530\";\"Bocsar\";\"other\"\n\"792530\";\"Bocsár\";\"other\"\n\"792530\";\"Botschar\";\"other\"\n\"792623\";\"Biljača\";\"main\"\n\"792623\";\"Biljaca\";\"ascii\"\n\"792623\";\"Bilace\";\"other\"\n\"792623\";\"Bilaçë\";\"other\"\n\"792623\";\"Biljace\";\"other\"\n\"792623\";\"Biljače\";\"other\"\n\"792651\";\"Beška\";\"main\"\n\"792651\";\"Beska\";\"ascii\"\n\"792651\";\"Beschka\";\"other\"\n\"792651\";\"Besska\";\"other\"\n\"792680\";\"Belgrade\";\"main\"\n\"792680\";\"Belehrad\";\"other\"\n\"792680\";\"Belgrad\";\"other\"\n\"792680\";\"Belgrada\";\"other\"\n\"792680\";\"Belgradas\";\"other\"\n\"792680\";\"Belgrado\";\"other\"\n\"792680\";\"Belgradu\";\"other\"\n\"792680\";\"Belgradum\";\"other\"\n\"792680\";\"Belgrau\";\"other\"\n\"792680\";\"Belgrað\";\"other\"\n\"792680\";\"Belgrád\";\"other\"\n\"792680\";\"Belgráu\";\"other\"\n\"792680\";\"Beligradi\";\"other\"\n\"792680\";\"Belohrod\";\"other\"\n\"792680\";\"Beograd\";\"other\"\n\"792680\";\"Beogradi\";\"other\"\n\"792680\";\"Beogrado\";\"other\"\n\"792680\";\"Bèlgrade\";\"other\"\n\"792680\";\"Bělehrad\";\"other\"\n\"792680\";\"Běłohród\";\"other\"\n\"792680\";\"Nandorfehervar\";\"other\"\n\"792680\";\"Nándorfehérvár\";\"other\"\n\"792680\";\"Singidunum\";\"other\"\n\"792680\";\"be-ogeuladeu\";\"other\"\n\"792680\";\"bei er ge lai de\";\"other\"\n\"792680\";\"belgradi\";\"other\"\n\"792680\";\"beogurado\";\"other\"\n\"792680\";\"blghrad\";\"other\"\n\"792680\";\"blgrd\";\"other\"\n\"792680\";\"pelkiret\";\"other\"\n\"792680\";\"Βελιγράδι\";\"other\"\n\"792680\";\"Белград\";\"other\"\n\"792680\";\"Београд\";\"other\"\n\"792680\";\"Бѣлъ Градъ\";\"other\"\n\"792680\";\"Բելգրադ\";\"other\"\n\"792680\";\"בלגרד\";\"other\"\n\"792680\";\"بلغراد\";\"other\"\n\"792680\";\"بېلگراد\";\"other\"\n\"792680\";\"பெல்கிறேட்\";\"other\"\n\"792680\";\"ბელგრადი\";\"other\"\n\"792680\";\"በልግራድ\";\"other\"\n\"792680\";\"ベオグラード\";\"other\"\n\"792680\";\"贝尔格莱德\";\"other\"\n\"792680\";\"베오그라드\";\"other\"\n\"792718\";\"Belo Blato\";\"main\"\n\"792718\";\"Elisenhain\";\"other\"\n\"792718\";\"Elisenheim\";\"other\"\n\"792718\";\"Erzsebetlak\";\"other\"\n\"792718\";\"Erzsébetlak\";\"other\"\n\"792718\";\"Nagyerzsebetlak\";\"other\"\n\"792718\";\"Nagyerzsébetlak\";\"other\"\n\"792764\";\"Belegiš\";\"main\"\n\"792764\";\"Belegis\";\"ascii\"\n\"792794\";\"Bela Crkva\";\"main\"\n\"792794\";\"Bela-Crkva\";\"other\"\n\"792794\";\"Biserica Alba\";\"other\"\n\"792794\";\"Biserica Albă\";\"other\"\n\"792794\";\"Feheregyhaz\";\"other\"\n\"792794\";\"Fehertemplom\";\"other\"\n\"792794\";\"Fehéregyház\";\"other\"\n\"792794\";\"Fehértemplom\";\"other\"\n\"792794\";\"Fejeregyhaz\";\"other\"\n\"792794\";\"Fejéregyház\";\"other\"\n\"792794\";\"Ungarisch Weisskirchen\";\"other\"\n\"792794\";\"Weisskirchen\";\"other\"\n\"792794\";\"Weißkirchen\";\"other\"\n\"792794\";\"Бела-Црква\";\"other\"\n\"792807\";\"Begejci\";\"main\"\n\"792807\";\"Kis-Tarnok\";\"other\"\n\"792807\";\"Kis-Tárnok\";\"other\"\n\"792807\";\"Klein Torak\";\"other\"\n\"792807\";\"Mali-Torak\";\"other\"\n\"792807\";\"Nagy-Tarnok\";\"other\"\n\"792807\";\"Nagy-Tárnok\";\"other\"\n\"792807\";\"Torak\";\"other\"\n\"792807\";\"Veliki Torak\";\"other\"\n\"792811\";\"Bečmen\";\"main\"\n\"792811\";\"Becmen\";\"ascii\"\n\"792814\";\"Bečej\";\"main\"\n\"792814\";\"Becej\";\"ascii\"\n\"792814\";\"Alt-Betsche\";\"other\"\n\"792814\";\"Bechej\";\"other\"\n\"792814\";\"Becse\";\"other\"\n\"792814\";\"Becsej\";\"other\"\n\"792814\";\"Obecse\";\"other\"\n\"792814\";\"Stari Becej\";\"other\"\n\"792814\";\"Stari Bečej\";\"other\"\n\"792814\";\"Óbecse\";\"other\"\n\"792814\";\"Бечей\";\"other\"\n\"792851\";\"Bašaid\";\"main\"\n\"792851\";\"Basaid\";\"ascii\"\n\"792851\";\"Basahid\";\"other\"\n\"792851\";\"Basahíd\";\"other\"\n\"792851\";\"Basajid\";\"other\"\n\"792851\";\"Baschaid\";\"other\"\n\"792851\";\"Bazsahida\";\"other\"\n\"792851\";\"Bazsalhida\";\"other\"\n\"792851\";\"Bašahid\";\"other\"\n\"792851\";\"Bašajid\";\"other\"\n\"792851\";\"Bikac\";\"other\"\n\"792851\";\"Bikatsch\";\"other\"\n\"792851\";\"Bikač\";\"other\"\n\"792851\";\"Bosorhida\";\"other\"\n\"792851\";\"Kikinda\";\"other\"\n\"792851\";\"Kiskikinda\";\"other\"\n\"792851\";\"Klein-Kikinda\";\"other\"\n\"792851\";\"Mala Kikinda\";\"other\"\n\"792864\";\"Barice\";\"main\"\n\"792864\";\"Borovice\";\"other\"\n\"792864\";\"Sankt Johan\";\"other\"\n\"792864\";\"Sveti Jovan\";\"other\"\n\"792864\";\"Szentjanos\";\"other\"\n\"792864\";\"Szentjános\";\"other\"\n\"792866\";\"Barič\";\"main\"\n\"792866\";\"Baric\";\"ascii\"\n\"792888\";\"Baranda\";\"main\"\n\"792937\";\"Banatsko Veliko Selo\";\"main\"\n\"792937\";\"Charleville\";\"other\"\n\"792937\";\"Karolyliget\";\"other\"\n\"792937\";\"Károlyliget\";\"other\"\n\"792937\";\"Saint-Hubert\";\"other\"\n\"792937\";\"Sank Hubert\";\"other\"\n\"792937\";\"Sarlevil\";\"other\"\n\"792937\";\"Sarlevit\";\"other\"\n\"792937\";\"Soltur\";\"other\"\n\"792937\";\"Sveti Hubert\";\"other\"\n\"792937\";\"Szent-Huberth\";\"other\"\n\"792937\";\"Szentborbala\";\"other\"\n\"792937\";\"Szentborbála\";\"other\"\n\"792937\";\"Szenthubert\";\"other\"\n\"792937\";\"Veliko Selo\";\"other\"\n\"792937\";\"Šarlevil\";\"other\"\n\"792937\";\"Šarlevit\";\"other\"\n\"792940\";\"Banatsko Karađorđevo\";\"main\"\n\"792940\";\"Banatsko Karadordevo\";\"ascii\"\n\"792940\";\"Karadjordjevo\";\"other\"\n\"792940\";\"Karadordevo\";\"other\"\n\"792940\";\"Karađorđevo\";\"other\"\n\"792940\";\"Magyar-Czerna\";\"other\"\n\"792940\";\"Magyar-Czernya\";\"other\"\n\"792940\";\"Magyarcsernye\";\"other\"\n\"792940\";\"Neu-Zerne\";\"other\"\n\"792940\";\"Ungarisch Crnja\";\"other\"\n\"792945\";\"Banatski Karlovac\";\"main\"\n\"792945\";\"Banat Karlovac\";\"other\"\n\"792945\";\"Banatsko Rankovicevo\";\"other\"\n\"792945\";\"Banatsko Rankovićevo\";\"other\"\n\"792945\";\"Dragutinovo\";\"other\"\n\"792945\";\"Karlovo Selo\";\"other\"\n\"792945\";\"Karlsdorf\";\"other\"\n\"792945\";\"Karoljfalva\";\"other\"\n\"792945\";\"Karolyfalva\";\"other\"\n\"792945\";\"Károlyfalva\";\"other\"\n\"792945\";\"Nagykarolyfalva\";\"other\"\n\"792945\";\"Nagykárolyfalva\";\"other\"\n\"792945\";\"Novo Milosevo\";\"other\"\n\"792945\";\"Novo Miloševo\";\"other\"\n\"792945\";\"Rankovicevo\";\"other\"\n\"792945\";\"Rankovićevo\";\"other\"\n\"792946\";\"Banatski Dvor\";\"main\"\n\"792946\";\"Banater Hof\";\"other\"\n\"792946\";\"Banatski Dusanovac\";\"other\"\n\"792946\";\"Banatski Dušanovac\";\"other\"\n\"792946\";\"Ittvarnok\";\"other\"\n\"792946\";\"Szollosudvarnok\";\"other\"\n\"792946\";\"Szolosudvarnok\";\"other\"\n\"792946\";\"Szőllősudvarnok\";\"other\"\n\"792946\";\"Szőlősudvarnok\";\"other\"\n\"792946\";\"Torzsudvarnok\";\"other\"\n\"792946\";\"Törzsudvarnok\";\"other\"\n\"792948\";\"Banatski Despotovac\";\"main\"\n\"792948\";\"Ernesthausen\";\"other\"\n\"792948\";\"Erneszthaza\";\"other\"\n\"792948\";\"Ernesztháza\";\"other\"\n\"792948\";\"Ernohaza\";\"other\"\n\"792948\";\"Ernőháza\";\"other\"\n\"792950\";\"Banatska Topola\";\"main\"\n\"792950\";\"Banatska Topla\";\"other\"\n\"792950\";\"Topolya\";\"other\"\n\"792950\";\"Toroktopolya\";\"other\"\n\"792950\";\"Töröktopolya\";\"other\"\n\"793014\";\"Bačko Petrovo Selo\";\"main\"\n\"793014\";\"Backo Petrovo Selo\";\"ascii\"\n\"793014\";\"Peterreve\";\"other\"\n\"793014\";\"Petrovosello\";\"other\"\n\"793014\";\"Petrovoszello\";\"other\"\n\"793014\";\"Petrovoszelló\";\"other\"\n\"793014\";\"Péterréve\";\"other\"\n\"793015\";\"Bačko Gradište\";\"main\"\n\"793015\";\"Backo Gradiste\";\"ascii\"\n\"793015\";\"Bacsfoldvar\";\"other\"\n\"793015\";\"Bácsföldvár\";\"other\"\n\"793015\";\"Foldvar\";\"other\"\n\"793015\";\"Földvár\";\"other\"\n\"793015\";\"Tisza-Foldvar\";\"other\"\n\"793015\";\"Tisza-Földvár\";\"other\"\n\"793111\";\"Aranđelovac\";\"main\"\n\"793111\";\"Arangelovac\";\"ascii\"\n\"793111\";\"Arangjelovac\";\"other\"\n\"793112\";\"Aradac\";\"main\"\n\"793112\";\"Alsoaradi\";\"other\"\n\"793112\";\"Alsóaradi\";\"other\"\n\"793112\";\"Andrejevac\";\"other\"\n\"793112\";\"Andrejevac Aradac\";\"other\"\n\"793112\";\"Aradatz\";\"other\"\n\"793112\";\"Aradaz\";\"other\"\n\"793112\";\"Aradec\";\"other\"\n\"793112\";\"Aradi\";\"other\"\n\"793112\";\"Felsoaradi\";\"other\"\n\"793112\";\"Felsőaradi\";\"other\"\n\"793112\";\"Racz-Aradacz\";\"other\"\n\"793112\";\"Rácz-Aradácz\";\"other\"\n\"793112\";\"Slovacki Aradac\";\"other\"\n\"793112\";\"Slovački Aradac\";\"other\"\n\"793112\";\"Slowakisch-Aradatz\";\"other\"\n\"793112\";\"Srpski Aradac\";\"other\"\n\"793112\";\"Szerb-Aradacz\";\"other\"\n\"793112\";\"Szerb-Aradácz\";\"other\"\n\"793112\";\"Szerbaradacz\";\"other\"\n\"793112\";\"Szerbaradácz\";\"other\"\n\"793112\";\"Tot-Aradacz\";\"other\"\n\"793112\";\"Totaradacz\";\"other\"\n\"793112\";\"Tót-Aradácz\";\"other\"\n\"793112\";\"Tótaradácz\";\"other\"\n\"793134\";\"Alibunar\";\"main\"\n\"793134\";\"Alibunár\";\"other\"\n\"793134\";\"Alisbrunn\";\"other\"\n\"793134\";\"Allibunar\";\"other\"\n\"793134\";\"Алибунар\";\"other\"\n\"836063\";\"Sokolovica\";\"main\"\n\"836698\";\"Rusko Selo\";\"main\"\n\"836698\";\"Kis-Orosz\";\"other\"\n\"836698\";\"Kis-Oroszin\";\"other\"\n\"836698\";\"Klein-Orossin\";\"other\"\n\"836698\";\"Oroszin\";\"other\"\n\"836698\";\"Ruskodorf\";\"other\"\n\"836698\";\"Torontaloroszi\";\"other\"\n\"836698\";\"Torontáloroszi\";\"other\"\n\"862740\";\"Prislonica\";\"main\"\n\"3186366\";\"Zminjak\";\"main\"\n\"3186376\";\"Zmajevo\";\"main\"\n\"3186376\";\"Alt-Keer\";\"other\"\n\"3186376\";\"Alt-Ker\";\"other\"\n\"3186376\";\"Altwiesen\";\"other\"\n\"3186376\";\"Backa Dobra\";\"other\"\n\"3186376\";\"Bačka Dobra\";\"other\"\n\"3186376\";\"Gross-Ker\";\"other\"\n\"3186376\";\"Oker\";\"other\"\n\"3186376\";\"Pasicevo\";\"other\"\n\"3186376\";\"Pašićevo\";\"other\"\n\"3186376\";\"Stari Ker\";\"other\"\n\"3186376\";\"Ókér\";\"other\"\n\"3187297\";\"Vrbas\";\"main\"\n\"3187297\";\"Alt-Werbass\";\"other\"\n\"3187297\";\"Neu-Werbass\";\"other\"\n\"3187297\";\"Overbasz\";\"other\"\n\"3187297\";\"Titov Vrbas\";\"other\"\n\"3187297\";\"Ujverbasz\";\"other\"\n\"3187297\";\"Verbasz\";\"other\"\n\"3187297\";\"Verbász\";\"other\"\n\"3187297\";\"Weidenheim\";\"other\"\n\"3187297\";\"Óverbász\";\"other\"\n\"3187297\";\"Újverbász\";\"other\"\n\"3187297\";\"Врбас\";\"other\"\n\"3187548\";\"Vladimirci\";\"main\"\n\"3187641\";\"Višnjićevo\";\"main\"\n\"3187641\";\"Visnjicevo\";\"ascii\"\n\"3187641\";\"Grk\";\"other\"\n\"3187829\";\"Veternik\";\"main\"\n\"3187829\";\"Ofutak\";\"other\"\n\"3187829\";\"Ófutak\";\"other\"\n\"3188361\";\"Varna\";\"main\"\n\"3188402\";\"Valjevo\";\"main\"\n\"3188402\";\"Valevo\";\"other\"\n\"3188402\";\"Valjevas\";\"other\"\n\"3188402\";\"Валево\";\"other\"\n\"3188402\";\"Ваљево\";\"other\"\n\"3188429\";\"Uzveće\";\"main\"\n\"3188429\";\"Uzvece\";\"ascii\"\n\"3188434\";\"Užice\";\"main\"\n\"3188434\";\"Uzice\";\"ascii\"\n\"3188434\";\"Oujiste\";\"other\"\n\"3188434\";\"Titovo Uzice\";\"other\"\n\"3188434\";\"Titovo Užice\";\"other\"\n\"3188434\";\"Uzhice\";\"other\"\n\"3188434\";\"Užicė\";\"other\"\n\"3188434\";\"Ужице\";\"other\"\n\"3188434\";\"Ѹжице\";\"other\"\n\"3188725\";\"Tršić\";\"main\"\n\"3188725\";\"Trsic\";\"ascii\"\n\"3189229\";\"Tabanović\";\"main\"\n\"3189229\";\"Tabanovic\";\"ascii\"\n\"3189595\";\"Subotica\";\"main\"\n\"3189595\";\"Maria-Theresianopel\";\"other\"\n\"3189595\";\"Maria-Theresiopel\";\"other\"\n\"3189595\";\"Maria-Theresiopolis\";\"other\"\n\"3189595\";\"Sawaditz\";\"other\"\n\"3189595\";\"Subotiza\";\"other\"\n\"3189595\";\"Szabadka\";\"other\"\n\"3189595\";\"Szent-Maria\";\"other\"\n\"3189595\";\"Szent-Mária\";\"other\"\n\"3189595\";\"Theresiopel\";\"other\"\n\"3189595\";\"Zubotica\";\"other\"\n\"3189595\";\"Суботица\";\"other\"\n\"3189859\";\"Štitar\";\"main\"\n\"3189859\";\"Stitar\";\"ascii\"\n\"3189859\";\"Stitor\";\"other\"\n\"3189891\";\"Stepanovićevo\";\"main\"\n\"3189891\";\"Stepanovicevo\";\"ascii\"\n\"3189891\";\"Bacskahadikfalva\";\"other\"\n\"3189891\";\"Bácskahadikfalva\";\"other\"\n\"3189891\";\"Horthyvara\";\"other\"\n\"3189891\";\"Horthyvára\";\"other\"\n\"3189891\";\"Mariamajor\";\"other\"\n\"3189891\";\"Máriamajor\";\"other\"\n\"3189891\";\"Stepanovi\";\"other\"\n\"3190042\";\"Stanišić\";\"main\"\n\"3190042\";\"Stanisic\";\"ascii\"\n\"3190042\";\"Deutschwachenheim\";\"other\"\n\"3190042\";\"Orszallas\";\"other\"\n\"3190042\";\"Stanischitz\";\"other\"\n\"3190042\";\"Steinsitz\";\"other\"\n\"3190042\";\"Sztanisics\";\"other\"\n\"3190042\";\"Tannenschutz\";\"other\"\n\"3190042\";\"Tannenschütz\";\"other\"\n\"3190042\";\"Wachenheim\";\"other\"\n\"3190042\";\"Őrszállás\";\"other\"\n\"3190101\";\"Sremski Karlovci\";\"main\"\n\"3190101\";\"Karloca\";\"other\"\n\"3190101\";\"Karlocza\";\"other\"\n\"3190101\";\"Karlovci\";\"other\"\n\"3190101\";\"Karlovicz\";\"other\"\n\"3190101\";\"Karloviczi\";\"other\"\n\"3190101\";\"Karlowice\";\"other\"\n\"3190101\";\"Karlowitz\";\"other\"\n\"3190101\";\"Karlóca\";\"other\"\n\"3190101\";\"Karlócza\";\"other\"\n\"3190101\";\"Karom\";\"other\"\n\"3190101\";\"Sremski-Karlovci\";\"other\"\n\"3190101\";\"Сремски-Карловци\";\"other\"\n\"3190103\";\"Sremska Mitrovica\";\"main\"\n\"3190103\";\"Dimitrofce\";\"other\"\n\"3190103\";\"Dimitrofçe\";\"other\"\n\"3190103\";\"Mitrovic\";\"other\"\n\"3190103\";\"Mitrovica\";\"other\"\n\"3190103\";\"Mitrovicz\";\"other\"\n\"3190103\";\"Mitrovicza\";\"other\"\n\"3190103\";\"Mitrovitza\";\"other\"\n\"3190103\";\"Mitrowitz\";\"other\"\n\"3190103\";\"Opshtina Sremska Mitrovica\";\"other\"\n\"3190103\";\"Opstina Sremska Mitrovica\";\"other\"\n\"3190103\";\"Opština Sremska Mitrovica\";\"other\"\n\"3190103\";\"Sirmion\";\"other\"\n\"3190103\";\"Sirmium\";\"other\"\n\"3190103\";\"Srijemska Mitrovica\";\"other\"\n\"3190103\";\"Strema Mitrovica\";\"other\"\n\"3190103\";\"Syrmisch-Mitrowitz\";\"other\"\n\"3190103\";\"Szavaszentdemeter\";\"other\"\n\"3190103\";\"Szávaszentdemeter\";\"other\"\n\"3190103\";\"dmtrwfchh\";\"other\"\n\"3190103\";\"Општина Сремска Митровица\";\"other\"\n\"3190103\";\"دمتروفچه\";\"other\"\n\"3190335\";\"Sonta\";\"main\"\n\"3190335\";\"Szond\";\"other\"\n\"3190335\";\"Szonta\";\"other\"\n\"3190335\";\"Waldau an der Donau\";\"other\"\n\"3190342\";\"Sombor\";\"main\"\n\"3190342\";\"Coborszentmihaly\";\"other\"\n\"3190342\";\"Coborszentmihály\";\"other\"\n\"3190342\";\"Kiszombor\";\"other\"\n\"3190342\";\"Mezozombor\";\"other\"\n\"3190342\";\"Mezőzombor\";\"other\"\n\"3190342\";\"Nagy-Zombor\";\"other\"\n\"3190342\";\"Opshtina Sombor\";\"other\"\n\"3190342\";\"Opstina Sombor\";\"other\"\n\"3190342\";\"Opština Sombor\";\"other\"\n\"3190342\";\"Schomburg\";\"other\"\n\"3190342\";\"Szentmihaly\";\"other\"\n\"3190342\";\"Szentmihály\";\"other\"\n\"3190342\";\"Zombor\";\"other\"\n\"3190342\";\"Општина Сомбор\";\"other\"\n\"3190855\";\"Sinošević\";\"main\"\n\"3190855\";\"Sinosevic\";\"ascii\"\n\"3190958\";\"Ševarice\";\"main\"\n\"3190958\";\"Sevarice\";\"ascii\"\n\"3191256\";\"Šašinci\";\"main\"\n\"3191256\";\"Sasinci\";\"ascii\"\n\"3191339\";\"Salaš Noćajski\";\"main\"\n\"3191339\";\"Salas Nocajski\";\"ascii\"\n\"3191339\";\"Nocajski Salas\";\"other\"\n\"3191339\";\"Noćajski Salaš\";\"other\"\n\"3191340\";\"Salaš Crnobarski\";\"main\"\n\"3191340\";\"Salas Crnobarski\";\"ascii\"\n\"3191340\";\"Crnobarski Salas\";\"other\"\n\"3191340\";\"Crnobarski Salaš\";\"other\"\n\"3191376\";\"Šabac\";\"main\"\n\"3191376\";\"Sabac\";\"ascii\"\n\"3191376\";\"Chabats\";\"other\"\n\"3191376\";\"Shabac\";\"other\"\n\"3191376\";\"Шабац\";\"other\"\n\"3191425\";\"Rumenka\";\"main\"\n\"3191425\";\"Piros\";\"other\"\n\"3191425\";\"Piross\";\"other\"\n\"3191429\";\"Ruma\";\"main\"\n\"3191429\";\"Arpatarlo\";\"other\"\n\"3191429\";\"Arpataro\";\"other\"\n\"3191429\";\"Árpatarló\";\"other\"\n\"3191429\";\"Árpataró\";\"other\"\n\"3191429\";\"Рума\";\"other\"\n\"3191660\";\"Riđica\";\"main\"\n\"3191660\";\"Ridica\";\"ascii\"\n\"3191660\";\"Deutsch-Baja\";\"other\"\n\"3191660\";\"Legin\";\"other\"\n\"3191660\";\"Regoce\";\"other\"\n\"3191660\";\"Regocze\";\"other\"\n\"3191660\";\"Regőce\";\"other\"\n\"3191660\";\"Regőcze\";\"other\"\n\"3191660\";\"Ridjica\";\"other\"\n\"3191660\";\"Riedau\";\"other\"\n\"3191660\";\"Rigicza\";\"other\"\n\"3191660\";\"Rigyicza\";\"other\"\n\"3191699\";\"Ribari\";\"main\"\n\"3191802\";\"Ravno Selo\";\"main\"\n\"3191802\";\"Alt-Schowe\";\"other\"\n\"3191802\";\"Nove Sve\";\"other\"\n\"3191802\";\"Nove Šve\";\"other\"\n\"3191802\";\"Osove\";\"other\"\n\"3191802\";\"Ravno\";\"other\"\n\"3191802\";\"Sove\";\"other\"\n\"3191802\";\"Sové\";\"other\"\n\"3191802\";\"Stare Sove\";\"other\"\n\"3191802\";\"Stare Šove\";\"other\"\n\"3191802\";\"Ujsove\";\"other\"\n\"3191802\";\"Ósóvé\";\"other\"\n\"3191802\";\"Újsóvé\";\"other\"\n\"3191810\";\"Ravnje\";\"main\"\n\"3192138\";\"Radenković\";\"main\"\n\"3192138\";\"Radenkovic\";\"ascii\"\n\"3192185\";\"Putinci\";\"main\"\n\"3192185\";\"Putince\";\"other\"\n\"3192185\";\"Putincze\";\"other\"\n\"3192328\";\"Prnjavor\";\"main\"\n\"3192420\";\"Prigrevica\";\"main\"\n\"3192420\";\"Bacsszentivan\";\"other\"\n\"3192420\";\"Batsch-Sentiwan\";\"other\"\n\"3192420\";\"Bácsszentiván\";\"other\"\n\"3192420\";\"Priglevicza-Szent-Ivan\";\"other\"\n\"3192420\";\"Priglevicza-Szent-Iván\";\"other\"\n\"3192420\";\"Priglewitz\";\"other\"\n\"3192420\";\"Prigrevica Sveti Ivan\";\"other\"\n\"3192420\";\"Prigrevica Sveti Ivon\";\"other\"\n\"3192420\";\"Sonnhofen\";\"other\"\n\"3192420\";\"Szent-Ivany\";\"other\"\n\"3192420\";\"Szent-Ivány\";\"other\"\n\"3193230\";\"Platičevo\";\"main\"\n\"3193230\";\"Platicevo\";\"ascii\"\n\"3193230\";\"Platicheva\";\"other\"\n\"3193230\";\"Platics\";\"other\"\n\"3193230\";\"Platicseva\";\"other\"\n\"3193406\";\"Petrovaradin\";\"main\"\n\"3193406\";\"Petervarad\";\"other\"\n\"3193406\";\"Petervaradin\";\"other\"\n\"3193406\";\"Peterwardein\";\"other\"\n\"3193406\";\"Pétervárad\";\"other\"\n\"3193406\";\"petorovu~aradin\";\"other\"\n\"3193406\";\"Петроварадин\";\"other\"\n\"3193406\";\"ペトロヴァラディン\";\"other\"\n\"3193437\";\"Petkovica\";\"main\"\n\"3193540\";\"Pećinci\";\"main\"\n\"3193540\";\"Pecinci\";\"ascii\"\n\"3193540\";\"Pecinei\";\"other\"\n\"3193540\";\"Pećinei\";\"other\"\n\"3193944\";\"Osečina\";\"main\"\n\"3193944\";\"Osecina\";\"ascii\"\n\"3194334\";\"Novo Selo\";\"main\"\n\"3194360\";\"Novi Sad\";\"main\"\n\"3194360\";\"Neoplanta\";\"other\"\n\"3194360\";\"Neusatz\";\"other\"\n\"3194360\";\"Novi Sadas\";\"other\"\n\"3194360\";\"Novisada\";\"other\"\n\"3194360\";\"Novy Sad\";\"other\"\n\"3194360\";\"Nový Sad\";\"other\"\n\"3194360\";\"Nowy Sad\";\"other\"\n\"3194360\";\"O-petervaradja\";\"other\"\n\"3194360\";\"Petervarad\";\"other\"\n\"3194360\";\"Pétervárad\";\"other\"\n\"3194360\";\"Ujvidek\";\"other\"\n\"3194360\";\"Varadinum Petri\";\"other\"\n\"3194360\";\"Vasaros-Varad\";\"other\"\n\"3194360\";\"Vásáros-Várad\";\"other\"\n\"3194360\";\"nuo wei sa\";\"other\"\n\"3194360\";\"Ó-péterváradja\";\"other\"\n\"3194360\";\"Újvidék\";\"other\"\n\"3194360\";\"Нови Сад\";\"other\"\n\"3194360\";\"诺威萨\";\"other\"\n\"3194498\";\"Nikinci\";\"main\"\n\"3195220\";\"Metković\";\"main\"\n\"3195220\";\"Metkovic\";\"ascii\"\n\"3195895\";\"Majur\";\"main\"\n\"3195939\";\"Maglić\";\"main\"\n\"3195939\";\"Maglic\";\"ascii\"\n\"3195939\";\"Buljkes\";\"other\"\n\"3195939\";\"Bulkes\";\"other\"\n\"3195939\";\"Bulkesz\";\"other\"\n\"3195939\";\"Bulkeszi\";\"other\"\n\"3195939\";\"Pfalzweiler\";\"other\"\n\"3195939\";\"Ravno Selo\";\"other\"\n\"3195962\";\"Mačvanska Mitrovica\";\"main\"\n\"3195962\";\"Macvanska Mitrovica\";\"ascii\"\n\"3195962\";\"Mala Mitrovica\";\"other\"\n\"3195962\";\"Mitrovica\";\"other\"\n\"3195962\";\"Srpski Mitrovica\";\"other\"\n\"3196331\";\"Ljubovija\";\"main\"\n\"3196511\";\"Lipolist\";\"main\"\n\"3196517\";\"Lipnički Šor\";\"main\"\n\"3196517\";\"Lipnicki Sor\";\"ascii\"\n\"3196517\";\"Sor\";\"other\"\n\"3196517\";\"Šor\";\"other\"\n\"3196638\";\"Lešnica\";\"main\"\n\"3196638\";\"Lesnica\";\"ascii\"\n\"3196638\";\"Ljesnica\";\"other\"\n\"3196638\";\"Lješnica\";\"other\"\n\"3196910\";\"Kupusina\";\"main\"\n\"3196910\";\"Bacskertes\";\"other\"\n\"3196910\";\"Bácskertes\";\"other\"\n\"3196910\";\"Kupussina\";\"other\"\n\"3196910\";\"Kupuszina\";\"other\"\n\"3196959\";\"Kulpin\";\"main\"\n\"3196959\";\"Kolpeny\";\"other\"\n\"3196959\";\"Kuplin\";\"other\"\n\"3196959\";\"Kölpény\";\"other\"\n\"3197111\";\"Krupanj\";\"main\"\n\"3197266\";\"Krivaja\";\"main\"\n\"3197451\";\"Kozjak\";\"main\"\n\"3197862\";\"Kolut\";\"main\"\n\"3197862\";\"Kollut\";\"other\"\n\"3197862\";\"Kolluth\";\"other\"\n\"3197862\";\"Kullod\";\"other\"\n\"3197862\";\"Küllőd\";\"other\"\n\"3197862\";\"Ringdorf\";\"other\"\n\"3198080\";\"Klenje\";\"main\"\n\"3198082\";\"Klenak\";\"main\"\n\"3198140\";\"Kisač\";\"main\"\n\"3198140\";\"Kisac\";\"ascii\"\n\"3198140\";\"Kiszacs\";\"other\"\n\"3198140\";\"Kiszács\";\"other\"\n\"3198140\";\"Kysac\";\"other\"\n\"3198140\";\"Kysač\";\"other\"\n\"3198410\";\"Kamenica\";\"main\"\n\"3198410\";\"Kamenjica\";\"other\"\n\"3198410\";\"Ravno Brdo\";\"other\"\n\"3198582\";\"Joševa\";\"main\"\n\"3198582\";\"Joseva\";\"ascii\"\n\"3198582\";\"Josevo\";\"other\"\n\"3198582\";\"Joševo\";\"other\"\n\"3198637\";\"Jevremovac\";\"main\"\n\"3198711\";\"Jelenča\";\"main\"\n\"3198711\";\"Jelenca\";\"ascii\"\n\"3198859\";\"Jarebice\";\"main\"\n\"3198868\";\"Jarak\";\"main\"\n\"3198963\";\"Jadranska Lešnica\";\"main\"\n\"3198963\";\"Jadranska Lesnica\";\"ascii\"\n\"3199251\";\"Hrtkovci\";\"main\"\n\"3199251\";\"Herkoca\";\"other\"\n\"3199251\";\"Herkóca\";\"other\"\n\"3199251\";\"Srbislavci\";\"other\"\n\"3200272\";\"Gornja Bukovica\";\"main\"\n\"3200547\";\"Glušci\";\"main\"\n\"3200547\";\"Glusci\";\"ascii\"\n\"3200547\";\"Glusii\";\"other\"\n\"3200547\";\"Glušii\";\"other\"\n\"3200560\";\"Gložan\";\"main\"\n\"3200560\";\"Glozan\";\"ascii\"\n\"3200560\";\"Dunagalos\";\"other\"\n\"3200560\";\"Dunagálos\";\"other\"\n\"3200560\";\"Gloschein\";\"other\"\n\"3200560\";\"Glozani\";\"other\"\n\"3200560\";\"Glozsan\";\"other\"\n\"3200560\";\"Glozsán\";\"other\"\n\"3200560\";\"Gložani\";\"other\"\n\"3200560\";\"Hlozany\";\"other\"\n\"3200560\";\"Hložany\";\"other\"\n\"3200746\";\"Gakovo\";\"main\"\n\"3200746\";\"Gador\";\"other\"\n\"3200746\";\"Gakowa\";\"other\"\n\"3200746\";\"Gaumarkt\";\"other\"\n\"3200746\";\"Gádor\";\"other\"\n\"3200746\";\"Gákovo\";\"other\"\n\"3201108\";\"Dublje\";\"main\"\n\"3201216\";\"Drenovac\";\"main\"\n\"3201307\";\"Draginje\";\"main\"\n\"3201307\";\"Draginja\";\"other\"\n\"3201353\";\"Doroslovo\";\"main\"\n\"3201353\";\"Bacsdoroszlo\";\"other\"\n\"3201353\";\"Bácsdoroszló\";\"other\"\n\"3201353\";\"Doroslau\";\"other\"\n\"3201353\";\"Doroszlo\";\"other\"\n\"3201353\";\"Doroszló\";\"other\"\n\"3201487\";\"Donji Dobrić\";\"main\"\n\"3201487\";\"Donji Dobric\";\"ascii\"\n\"3201946\";\"Dobrić\";\"main\"\n\"3201946\";\"Dobric\";\"ascii\"\n\"3202059\";\"Despotovo\";\"main\"\n\"3202059\";\"Despot Sent Ivan\";\"other\"\n\"3202059\";\"Despot Sveti Ivan\";\"other\"\n\"3202059\";\"Despot- Szent-Ivan\";\"other\"\n\"3202059\";\"Despot- Szent-Iván\";\"other\"\n\"3202059\";\"Despot-Sankt-Iwan\";\"other\"\n\"3202059\";\"Deszpot- Szent-Ivan\";\"other\"\n\"3202059\";\"Deszpot- Szent-Iván\";\"other\"\n\"3202059\";\"Urszentivan\";\"other\"\n\"3202059\";\"Vasilevo\";\"other\"\n\"3202059\";\"Vasiljevo\";\"other\"\n\"3202059\";\"Úrszentiván\";\"other\"\n\"3202477\";\"Crna Bara\";\"main\"\n\"3202545\";\"Čokešina\";\"main\"\n\"3202545\";\"Cokesina\";\"ascii\"\n\"3202798\";\"Čelarevo\";\"main\"\n\"3202798\";\"Celarevo\";\"ascii\"\n\"3202798\";\"Bac-Ceb\";\"other\"\n\"3202798\";\"Bacs-Cseb\";\"other\"\n\"3202798\";\"Bač-Čeb\";\"other\"\n\"3202798\";\"Bleyersdorf\";\"other\"\n\"3202798\";\"Bács-Cséb\";\"other\"\n\"3202798\";\"Cib\";\"other\"\n\"3202798\";\"Cseb\";\"other\"\n\"3202798\";\"Cséb\";\"other\"\n\"3202798\";\"Dunacseb\";\"other\"\n\"3202798\";\"Dunacséb\";\"other\"\n\"3202798\";\"Tscheb\";\"other\"\n\"3202798\";\"Čib\";\"other\"\n\"3202900\";\"Čajetina\";\"main\"\n\"3202900\";\"Cajetina\";\"ascii\"\n\"3202900\";\"Chaetina\";\"other\"\n\"3202900\";\"Чаетина\";\"other\"\n\"3203083\";\"Bukor\";\"main\"\n\"3203139\";\"Buđanovci\";\"main\"\n\"3203139\";\"Budanovci\";\"ascii\"\n\"3203139\";\"Budjanovci\";\"other\"\n\"3203497\";\"Brdarica\";\"main\"\n\"3203497\";\"Brdarice\";\"other\"\n\"3203628\";\"Bosut\";\"main\"\n\"3203817\";\"Bogosavac\";\"main\"\n\"3203822\";\"Bogojevo\";\"main\"\n\"3203822\";\"Bogojeva\";\"other\"\n\"3203822\";\"Gombos\";\"other\"\n\"3203822\";\"Gombosh\";\"other\"\n\"3203840\";\"Bogatić\";\"main\"\n\"3203840\";\"Bogatic\";\"ascii\"\n\"3203840\";\"Bocatic\";\"other\"\n\"3203840\";\"Bocatić\";\"other\"\n\"3204307\";\"Belotić\";\"main\"\n\"3204307\";\"Belotic\";\"ascii\"\n\"3204517\";\"Banovo Polje\";\"main\"\n\"3204623\";\"Bajina Bašta\";\"main\"\n\"3204623\";\"Bajina Basta\";\"ascii\"\n\"3204635\";\"Badovinci\";\"main\"\n\"3204665\";\"Bački Petrovac\";\"main\"\n\"3204665\";\"Backi Petrovac\";\"ascii\"\n\"3204665\";\"Petroc\";\"other\"\n\"3204665\";\"Petrocz\";\"other\"\n\"3204665\";\"Petrovac\";\"other\"\n\"3204665\";\"Petrovacz\";\"other\"\n\"3204665\";\"Petrovácz\";\"other\"\n\"3204665\";\"Petrowatz\";\"other\"\n\"3204665\";\"Petrőc\";\"other\"\n\"3204665\";\"Petrőcz\";\"other\"\n\"3204670\";\"Bački Breg\";\"main\"\n\"3204670\";\"Backi Breg\";\"ascii\"\n\"3204670\";\"Bereg\";\"other\"\n\"3204670\";\"Beregh\";\"other\"\n\"3204670\";\"Berg\";\"other\"\n\"3204670\";\"Berg an der Donau\";\"other\"\n\"3204670\";\"Béreg\";\"other\"\n\"3204672\";\"Bačka Topola\";\"main\"\n\"3204672\";\"Backa Topola\";\"ascii\"\n\"3204672\";\"Andrasfoldje\";\"other\"\n\"3204672\";\"Andrásföldje\";\"other\"\n\"3204672\";\"Bacstopolya\";\"other\"\n\"3204672\";\"Batsch-Topola\";\"other\"\n\"3204672\";\"Bácstopolya\";\"other\"\n\"3204672\";\"Kisbelgrad\";\"other\"\n\"3204672\";\"Kisbelgrád\";\"other\"\n\"3204672\";\"Mali Beograd\";\"other\"\n\"3204672\";\"Topolo\";\"other\"\n\"3204672\";\"Topolya\";\"other\"\n\"3204674\";\"Bačka Palanka\";\"main\"\n\"3204674\";\"Backa Palanka\";\"ascii\"\n\"3204674\";\"Alt-Palanka\";\"other\"\n\"3204674\";\"Deutsch-Palanka\";\"other\"\n\"3204674\";\"Nemet-Palanka\";\"other\"\n\"3204674\";\"Nova Palanka\";\"other\"\n\"3204674\";\"Német-Palánka\";\"other\"\n\"3204674\";\"Opalanka\";\"other\"\n\"3204674\";\"Palanka\";\"other\"\n\"3204674\";\"Palánka\";\"other\"\n\"3204674\";\"Plakenburg\";\"other\"\n\"3204674\";\"Stara Palanka\";\"other\"\n\"3204674\";\"Ujpalanka\";\"other\"\n\"3204674\";\"Ópalánka\";\"other\"\n\"3204674\";\"Újpalánka\";\"other\"\n\"3204793\";\"Apatin\";\"main\"\n\"3204793\";\"Abthausen\";\"other\"\n\"3204793\";\"Apathin\";\"other\"\n\"3204793\";\"Apati\";\"other\"\n\"3204793\";\"Апатин\";\"other\"\n\"3217047\";\"Pocerski Pričinović\";\"main\"\n\"3217047\";\"Pocerski Pricinovic\";\"ascii\"\n\"3300709\";\"Ðurići\";\"main\"\n\"3300709\";\"Durici\";\"ascii\"\n\"3305316\";\"Pec\";\"main\"\n\"3318618\";\"Sokolovo Brdo\";\"main\"\n\"3318643\";\"Osječenik\";\"main\"\n\"3318643\";\"Osjecenik\";\"ascii\"\n\"3318985\";\"Rumska\";\"main\"\n\"6619277\";\"Knjazevac\";\"main\"\n\"452949\";\"Udomlya\";\"main\"\n\"452949\";\"UDOMLJA\";\"other\"\n\"452949\";\"Udomlja\";\"other\"\n\"452949\";\"УДОМЛЯ\";\"other\"\n\"461699\";\"Sasovo\";\"main\"\n\"461699\";\"Sasowo\";\"other\"\n\"461699\";\"Сасово\";\"other\"\n\"461704\";\"Novozavidovskiy\";\"main\"\n\"461704\";\"NOVOZAVIDOVSKIJ\";\"other\"\n\"461704\";\"Novosavidovsk\";\"other\"\n\"461704\";\"Novozavidovskij\";\"other\"\n\"461704\";\"Poselok Novo-Zaridovskiy\";\"other\"\n\"461704\";\"Posëlok Novo-Zaridovskiy\";\"other\"\n\"461704\";\"НОВОЗАВИДОВСКИЙ\";\"other\"\n\"461704\";\"Новозавидовский\";\"other\"\n\"461705\";\"Krasnolesnyy\";\"main\"\n\"461705\";\"KRASNOLESNYJ\";\"other\"\n\"461705\";\"Krasnolesny\";\"other\"\n\"461705\";\"Krasnolesnyj\";\"other\"\n\"461705\";\"Poselok Krasnolesnyy\";\"other\"\n\"461705\";\"Posëlok Krasnolesnyy\";\"other\"\n\"461705\";\"КРАСНОЛЕСНЫЙ\";\"other\"\n\"461705\";\"Краснолесный\";\"other\"\n\"461720\";\"Kosterevo\";\"main\"\n\"461720\";\"Kosterovo\";\"other\"\n\"461720\";\"Костерево\";\"other\"\n\"461756\";\"Zyukayka\";\"main\"\n\"461756\";\"ZJUKAJKA\";\"other\"\n\"461756\";\"Ziukajka\";\"other\"\n\"461756\";\"ЗЮКАЙКА\";\"other\"\n\"461781\";\"Zykovo\";\"main\"\n\"461781\";\"ZYKOVO\";\"other\"\n\"461781\";\"ЗЫКОВО\";\"other\"\n\"461910\";\"Zverevo\";\"main\"\n\"461910\";\"ZVEREVO\";\"other\"\n\"461910\";\"Zvyereva\";\"other\"\n\"461910\";\"ЗВЕРЕВО\";\"other\"\n\"461910\";\"Зверево\";\"other\"\n\"461916\";\"Zvenigovo\";\"main\"\n\"461916\";\"ZVENIGOVO\";\"other\"\n\"461916\";\"Zvenigovskiy Zaton\";\"other\"\n\"461916\";\"ЗВЕНИГОВО\";\"other\"\n\"461920\";\"Zvenigorod\";\"main\"\n\"461920\";\"Svenigorod\";\"other\"\n\"461920\";\"Swenigorod\";\"other\"\n\"461920\";\"Звенигород\";\"other\"\n\"461964\";\"Zuyevka\";\"main\"\n\"461964\";\"ZUEVKA\";\"other\"\n\"461964\";\"Zuevka\";\"other\"\n\"461964\";\"Zujevka\";\"other\"\n\"461964\";\"ЗУЕВКА\";\"other\"\n\"461964\";\"Зуевка\";\"other\"\n\"462008\";\"Zubtsov\";\"main\"\n\"462008\";\"ZUBCOV\";\"other\"\n\"462008\";\"ЗУБЦОВ\";\"other\"\n\"462022\";\"Zubovo\";\"main\"\n\"462022\";\"Zuboyo\";\"other\"\n\"462022\";\"Зубово\";\"other\"\n\"462050\";\"Zubova Polyana\";\"main\"\n\"462050\";\"ZUBOVA POLJANA\";\"other\"\n\"462050\";\"Zubova Poljana\";\"other\"\n\"462050\";\"Zubovz Polyana\";\"other\"\n\"462050\";\"Zubu\";\"other\"\n\"462050\";\"ЗУБОВА ПОЛЯНА\";\"other\"\n\"462169\";\"Zolotukhino\";\"main\"\n\"462169\";\"ZOLOTUKHINO\";\"other\"\n\"462169\";\"ЗОЛОТУХИНО\";\"other\"\n\"462169\";\"Золотухино\";\"other\"\n\"462203\";\"Zolotkovo\";\"main\"\n\"462203\";\"ZOLOTKOVO\";\"other\"\n\"462203\";\"ЗОЛОТКОВО\";\"other\"\n\"462305\";\"Znamenskoye\";\"main\"\n\"462305\";\"Znamenskoe\";\"other\"\n\"462305\";\"Znamenskoje\";\"other\"\n\"462305\";\"Знаменское\";\"other\"\n\"462313\";\"Znamenskoye\";\"main\"\n\"462313\";\"Mundar-Yurt\";\"other\"\n\"462313\";\"Znamenskoe\";\"other\"\n\"462313\";\"Znamenskoje\";\"other\"\n\"462313\";\"Знаменское\";\"other\"\n\"462357\";\"Znamenka\";\"main\"\n\"462357\";\"ZNAMENKA\";\"other\"\n\"462357\";\"ЗНАМЕНКА\";\"other\"\n\"462377\";\"Zmiyëvka\";\"main\"\n\"462377\";\"Zmiyevka\";\"ascii\"\n\"462377\";\"ZMIEVKA\";\"other\"\n\"462377\";\"Zmievka\";\"other\"\n\"462377\";\"Zmijevka\";\"other\"\n\"462377\";\"ЗМИЕВКА\";\"other\"\n\"462377\";\"Змиёвка\";\"other\"\n\"462383\";\"Zmeyskaya\";\"main\"\n\"462383\";\"Zmejskaja\";\"other\"\n\"462383\";\"Змейская\";\"other\"\n\"462413\";\"Zlynka\";\"main\"\n\"462413\";\"Slynka\";\"other\"\n\"462413\";\"ZLYNKA\";\"other\"\n\"462413\";\"ЗЛЫНКА\";\"other\"\n\"462444\";\"Zlatoust\";\"main\"\n\"462444\";\"Slatoust\";\"other\"\n\"462444\";\"ZLATOUST\";\"other\"\n\"462444\";\"Zlatoutsk\";\"other\"\n\"462444\";\"Złatoust\";\"other\"\n\"462444\";\"ЗЛАТОУСТ\";\"other\"\n\"462444\";\"Златоуст\";\"other\"\n\"462467\";\"Zirgan\";\"main\"\n\"462467\";\"ZIRGAN\";\"other\"\n\"462467\";\"ЗИРГАН\";\"other\"\n\"462467\";\"Зирган\";\"other\"\n\"462522\";\"Zimovniki\";\"main\"\n\"462522\";\"Зимовники\";\"other\"\n\"462626\";\"Zilair\";\"main\"\n\"462626\";\"Зилаир\";\"other\"\n\"462755\";\"Zhukovskiy\";\"main\"\n\"462755\";\"Otdykh\";\"other\"\n\"462755\";\"Stakhanovo\";\"other\"\n\"462755\";\"ZHUKOVSKIJ\";\"other\"\n\"462755\";\"Zhukovskogo\";\"other\"\n\"462755\";\"Zjukovskij\";\"other\"\n\"462755\";\"ЖУКОВСКИЙ\";\"other\"\n\"462792\";\"Zhukovo\";\"main\"\n\"462792\";\"Ugodskiy Zavod\";\"other\"\n\"462792\";\"Zhukov\";\"other\"\n\"462792\";\"Zjukovo\";\"other\"\n\"462792\";\"Жуков\";\"other\"\n\"462815\";\"Zhukovka\";\"main\"\n\"462815\";\"Zjukovka\";\"other\"\n\"462815\";\"Жуковка\";\"other\"\n\"462822\";\"Zhukovka\";\"main\"\n\"462822\";\"ZHUKOVKA\";\"other\"\n\"462822\";\"Zjukovka\";\"other\"\n\"462822\";\"ЖУКОВКА\";\"other\"\n\"462822\";\"Жуковка\";\"other\"\n\"462914\";\"Zhizdra\";\"main\"\n\"462914\";\"Shisdra\";\"other\"\n\"462914\";\"ZHIZDRA\";\"other\"\n\"462914\";\"Zjizdra\";\"other\"\n\"462914\";\"ЖИЗДРА\";\"other\"\n\"462964\";\"Zhiryatino\";\"main\"\n\"462964\";\"Zjirjatino\";\"other\"\n\"462964\";\"Жирятино\";\"other\"\n\"462984\";\"Zhirnovsk\";\"main\"\n\"462984\";\"ZHIRNOVSK\";\"other\"\n\"462984\";\"Zhirnovoye\";\"other\"\n\"462984\";\"Zhirnovskiy\";\"other\"\n\"462984\";\"Zhirnoye\";\"other\"\n\"462984\";\"Zjirnovsk\";\"other\"\n\"462984\";\"ЖИРНОВСК\";\"other\"\n\"462988\";\"Zhirnov\";\"main\"\n\"462988\";\"ZHIRNOV\";\"other\"\n\"462988\";\"Zhirov\";\"other\"\n\"462988\";\"Zjirnov\";\"other\"\n\"462988\";\"ЖИРНОВ\";\"other\"\n\"463050\";\"Zhilëvo\";\"main\"\n\"463050\";\"Zhilevo\";\"ascii\"\n\"463050\";\"ZHILEVO\";\"other\"\n\"463050\";\"Zjilevo\";\"other\"\n\"463050\";\"ЖИЛЕВО\";\"other\"\n\"463053\";\"Zhiletovo\";\"main\"\n\"463053\";\"Zhiletova\";\"other\"\n\"463053\";\"Zjiletovo\";\"other\"\n\"463053\";\"Жилетово\";\"other\"\n\"463082\";\"Zhigulevsk\";\"main\"\n\"463082\";\"Otvazhnoye\";\"other\"\n\"463082\";\"Otvazhnyy\";\"other\"\n\"463082\";\"Zjigulevsk\";\"other\"\n\"463082\";\"Жигулевск\";\"other\"\n\"463144\";\"Zheshart\";\"main\"\n\"463144\";\"ZHESHART\";\"other\"\n\"463144\";\"Zhershart\";\"other\"\n\"463144\";\"Zheshert\";\"other\"\n\"463144\";\"Zjesjart\";\"other\"\n\"463144\";\"ЖЕШАРТ\";\"other\"\n\"463217\";\"Zherdevka\";\"main\"\n\"463217\";\"Chibisovka\";\"other\"\n\"463217\";\"Chibizovka\";\"other\"\n\"463217\";\"Staraya Zherdevka\";\"other\"\n\"463217\";\"ZHERDEVKA\";\"other\"\n\"463217\";\"Zjerdevka\";\"other\"\n\"463217\";\"ЖЕРДЕВКА\";\"other\"\n\"463229\";\"Zhemtala\";\"main\"\n\"463229\";\"Zjemtala\";\"other\"\n\"463229\";\"Жемтала\";\"other\"\n\"463340\";\"Zheleznovodsk\";\"main\"\n\"463340\";\"Shelesnowodsk\";\"other\"\n\"463340\";\"Zheleznovodak\";\"other\"\n\"463340\";\"Zhelyednovodsk\";\"other\"\n\"463340\";\"Zjeleznovodsk\";\"other\"\n\"463340\";\"Железноводск\";\"other\"\n\"463343\";\"Zheleznogorsk\";\"main\"\n\"463343\";\"ZHELEZNOGORSK\";\"other\"\n\"463343\";\"Zjeleznogorsk\";\"other\"\n\"463343\";\"ЖЕЛЕЗНОГОРСК\";\"other\"\n\"463355\";\"Zheleznodorozhnyy\";\"main\"\n\"463355\";\"Obiralovka\";\"other\"\n\"463355\";\"Zheleznodorozhny\";\"other\"\n\"463355\";\"Zheleznodorozhnyj\";\"other\"\n\"463355\";\"Zjeleznodorozjnyj\";\"other\"\n\"463355\";\"Железнодорожный\";\"other\"\n\"463356\";\"Zheleznodorozhnyy\";\"main\"\n\"463356\";\"Gerdauen\";\"other\"\n\"463356\";\"Gerdauyen\";\"other\"\n\"463356\";\"Shelesnodoroshnys'\";\"other\"\n\"463356\";\"Shelesnodoroshnys’\";\"other\"\n\"463356\";\"ZHELEZNODOROZHNYJ\";\"other\"\n\"463356\";\"Zeleznodoroznyj\";\"other\"\n\"463356\";\"Zjeleznodorozjnyj\";\"other\"\n\"463356\";\"Železnodorožnyj\";\"other\"\n\"463356\";\"ЖЕЛЕЗНОДОРОЖНЫЙ\";\"other\"\n\"463446\";\"Zhdankovskiy\";\"main\"\n\"463446\";\"ZHDANKOVSKIJ\";\"other\"\n\"463446\";\"Zhdanovka\";\"other\"\n\"463446\";\"Zjdankovskij\";\"other\"\n\"463446\";\"ЖДАНКОВСКИЙ\";\"other\"\n\"463446\";\"Жданковский\";\"other\"\n\"463465\";\"Zhavoronki\";\"main\"\n\"463465\";\"ZHAVORONKI\";\"other\"\n\"463465\";\"Zjavoronki\";\"other\"\n\"463465\";\"ЖАВОРОНКИ\";\"other\"\n\"463516\";\"Zharkovskiy\";\"main\"\n\"463516\";\"ZHARKOVSKIJ\";\"other\"\n\"463516\";\"Zjarkovskij\";\"other\"\n\"463516\";\"ЖАРКОВСКИЙ\";\"other\"\n\"463516\";\"Жарковский\";\"other\"\n\"463544\";\"Zhankhoteko\";\"main\"\n\"463544\";\"Lashkuta\";\"other\"\n\"463544\";\"Zjankhoteko\";\"other\"\n\"463544\";\"Жанхотеко\";\"other\"\n\"463568\";\"Zhadovka\";\"main\"\n\"463568\";\"ZHADOVKA\";\"other\"\n\"463568\";\"Zjadovka\";\"other\"\n\"463568\";\"ЖАДОВКА\";\"other\"\n\"463568\";\"Жадовка\";\"other\"\n\"463637\";\"Zernograd\";\"main\"\n\"463637\";\"ZERNOGRAD\";\"other\"\n\"463637\";\"Zernovol\";\"other\"\n\"463637\";\"Zernovoy\";\"other\"\n\"463637\";\"ЗЕРНОГРАД\";\"other\"\n\"463637\";\"Зерноград\";\"other\"\n\"463655\";\"Zenzeli\";\"main\"\n\"463655\";\"Зензели\";\"other\"\n\"463690\";\"Zemlyansk\";\"main\"\n\"463690\";\"Zemljansk\";\"other\"\n\"463690\";\"Землянск\";\"other\"\n\"463710\";\"Zemetchino\";\"main\"\n\"463710\";\"Semettschino\";\"other\"\n\"463710\";\"ZEMETCHINO\";\"other\"\n\"463710\";\"Zametchino\";\"other\"\n\"463710\";\"Zemettsjino\";\"other\"\n\"463710\";\"ЗЕМЕТЧИНО\";\"other\"\n\"463824\";\"Zelenokumsk\";\"main\"\n\"463824\";\"Sovetekoye\";\"other\"\n\"463824\";\"Sovetskoye\";\"other\"\n\"463824\";\"Vorontsovo-Aleksandrovskoye\";\"other\"\n\"463824\";\"Woronzowo-Alexandrowskoje\";\"other\"\n\"463824\";\"ZELENOKUMSK\";\"other\"\n\"463824\";\"ЗЕЛЕНОКУМСК\";\"other\"\n\"463826\";\"Zelenogradskiy\";\"main\"\n\"463826\";\"ZELENOGRADSKIJ\";\"other\"\n\"463826\";\"Zelenogradskij\";\"other\"\n\"463826\";\"ЗЕЛЕНОГРАДСКИЙ\";\"other\"\n\"463828\";\"Zelenogradsk\";\"main\"\n\"463828\";\"Cranz\";\"other\"\n\"463828\";\"Grants\";\"other\"\n\"463828\";\"Krants\";\"other\"\n\"463828\";\"Kranz\";\"other\"\n\"463828\";\"Selenogradsk\";\"other\"\n\"463828\";\"ZELENOGRADSK\";\"other\"\n\"463828\";\"Zielenogradsk\";\"other\"\n\"463828\";\"ЗЕЛЕНОГРАДСК\";\"other\"\n\"463828\";\"Зеленоградск\";\"other\"\n\"463829\";\"Zelenograd\";\"main\"\n\"463829\";\"Зеленоград\";\"other\"\n\"463830\";\"Zelenogorsk\";\"main\"\n\"463830\";\"Poselok Terioki\";\"other\"\n\"463830\";\"Posëlok Terioki\";\"other\"\n\"463830\";\"Terijoki\";\"other\"\n\"463830\";\"Terioki\";\"other\"\n\"463830\";\"Teriyoki\";\"other\"\n\"463830\";\"ZELENOGORSK\";\"other\"\n\"463830\";\"ЗЕЛЕНОГОРСК\";\"other\"\n\"463835\";\"Zelënodol’sk\";\"main\"\n\"463835\";\"Zelenodol'sk\";\"ascii\"\n\"463835\";\"Stary Zeleny Dol\";\"other\"\n\"463835\";\"Zelendol'sk\";\"other\"\n\"463835\";\"Zelendol’sk\";\"other\"\n\"463835\";\"Zelenodolsk\";\"other\"\n\"463835\";\"Zeleny Dol\";\"other\"\n\"463835\";\"Zelenyy Dol\";\"other\"\n\"463835\";\"Zelënodol'sk\";\"other\"\n\"463835\";\"Zelënyy Dol\";\"other\"\n\"463835\";\"Зеленодольск\";\"other\"\n\"463838\";\"Zelenoborskiy\";\"main\"\n\"463838\";\"Lesobirzha\";\"other\"\n\"463838\";\"Poselok Lesobirzhi\";\"other\"\n\"463838\";\"Posëlok Lesobirzhi\";\"other\"\n\"463838\";\"ZELENOBORSKIJ\";\"other\"\n\"463838\";\"Zelenoborskij\";\"other\"\n\"463838\";\"ЗЕЛЕНОБОРСКИЙ\";\"other\"\n\"463880\";\"Zelenets\";\"main\"\n\"463880\";\"Zelenec\";\"other\"\n\"463880\";\"Зеленец\";\"other\"\n\"463885\";\"Zelenchukskaya\";\"main\"\n\"463885\";\"Zelenchugskaya\";\"other\"\n\"463885\";\"Zelenchukskaja\";\"other\"\n\"463885\";\"Zelentsjukskaja\";\"other\"\n\"463885\";\"Зеленчукская\";\"other\"\n\"463966\";\"Zayukovo\";\"main\"\n\"463966\";\"Zajukovo\";\"other\"\n\"463966\";\"Zayukovskoye\";\"other\"\n\"463966\";\"Zayunevski\";\"other\"\n\"463966\";\"Заюково\";\"other\"\n\"464018\";\"Zaymishche\";\"main\"\n\"464018\";\"ZAJMISHHE\";\"other\"\n\"464018\";\"Zajmisjtsje\";\"other\"\n\"464018\";\"ЗАЙМИЩЕ\";\"other\"\n\"464018\";\"Займище\";\"other\"\n\"464094\";\"Zavoronezhskoye\";\"main\"\n\"464094\";\"Zavoronezhskoe\";\"other\"\n\"464094\";\"Zavoronezjskoje\";\"other\"\n\"464094\";\"Zovoronezhskoye\";\"other\"\n\"464094\";\"Заворонежское\";\"other\"\n\"464101\";\"Zavolzh’ye\";\"main\"\n\"464101\";\"Zavolzh'ye\";\"ascii\"\n\"464101\";\"Pestovo\";\"other\"\n\"464101\";\"Zavolzh'e\";\"other\"\n\"464101\";\"Zavolzje\";\"other\"\n\"464101\";\"Заволжье\";\"other\"\n\"464112\";\"Zavolzhsk\";\"main\"\n\"464112\";\"ZAVOLZHSK\";\"other\"\n\"464112\";\"Zavolzh'ye\";\"other\"\n\"464112\";\"Zavolzh’ye\";\"other\"\n\"464112\";\"Zavolzjsk\";\"other\"\n\"464112\";\"ЗАВОЛЖСК\";\"other\"\n\"464130\";\"Masalovka\";\"main\"\n\"464130\";\"Kovalev\";\"other\"\n\"464130\";\"Mosolov\";\"other\"\n\"464130\";\"ZAVODSKOJ\";\"other\"\n\"464130\";\"Zavodskoy\";\"other\"\n\"464130\";\"ЗАВОДСКОЙ\";\"other\"\n\"464130\";\"Масаловка\";\"other\"\n\"464159\";\"Zavidovo\";\"main\"\n\"464159\";\"Завидово\";\"other\"\n\"464179\";\"Zavetnoye\";\"main\"\n\"464179\";\"Amta\";\"other\"\n\"464179\";\"Zavetnoe\";\"other\"\n\"464179\";\"Zavetnoje\";\"other\"\n\"464179\";\"Заветное\";\"other\"\n\"464180\";\"Zavetnoye\";\"main\"\n\"464180\";\"Rot Front\";\"other\"\n\"464180\";\"Zavetnoe\";\"other\"\n\"464180\";\"Zavetnoje\";\"other\"\n\"464180\";\"Zavetnyy\";\"other\"\n\"464180\";\"Заветное\";\"other\"\n\"464260\";\"Zaterechnyy\";\"main\"\n\"464260\";\"ZATERECHNYJ\";\"other\"\n\"464260\";\"Zateretsjnyj\";\"other\"\n\"464260\";\"ЗАТЕРЕЧНЫЙ\";\"other\"\n\"464290\";\"Zasosna\";\"main\"\n\"464290\";\"Засосна\";\"other\"\n\"464343\";\"Zasechnoye\";\"main\"\n\"464343\";\"Zasetsjnoje\";\"other\"\n\"464343\";\"Zosechnoye\";\"other\"\n\"464343\";\"Засечное\";\"other\"\n\"464468\";\"Zarubino\";\"main\"\n\"464468\";\"ZARUBINO\";\"other\"\n\"464468\";\"ЗАРУБИНО\";\"other\"\n\"464616\";\"Zarechnyy\";\"main\"\n\"464616\";\"ZARECHNYJ\";\"other\"\n\"464616\";\"Zaretsjnyj\";\"other\"\n\"464616\";\"Zvyagino\";\"other\"\n\"464616\";\"ЗАРЕЧНЫЙ\";\"other\"\n\"464621\";\"Zarechnyy\";\"main\"\n\"464621\";\"Pobedenka\";\"other\"\n\"464621\";\"Pobedinskiy\";\"other\"\n\"464621\";\"ZARECHNYJ\";\"other\"\n\"464621\";\"Zaretsjnyj\";\"other\"\n\"464621\";\"ЗАРЕЧНЫЙ\";\"other\"\n\"464621\";\"Заречный\";\"other\"\n\"464687\";\"Zaraysk\";\"main\"\n\"464687\";\"ZARAJSK\";\"other\"\n\"464687\";\"Zaraisk\";\"other\"\n\"464687\";\"Zarajsk\";\"other\"\n\"464687\";\"ЗАРАЙСК\";\"other\"\n\"464708\";\"Zaprudnya\";\"main\"\n\"464708\";\"Gari\";\"other\"\n\"464708\";\"ZAPRUDNJA\";\"other\"\n\"464708\";\"Zaprudnja\";\"other\"\n\"464708\";\"ЗАПРУДНЯ\";\"other\"\n\"464790\";\"Zapolyarnyy\";\"main\"\n\"464790\";\"ZAPOLJARNYJ\";\"other\"\n\"464790\";\"Zapoljarnyj\";\"other\"\n\"464790\";\"ЗАПОЛЯРНЫЙ\";\"other\"\n\"464829\";\"Zaplavnoye\";\"main\"\n\"464829\";\"Zaplavnoje\";\"other\"\n\"464829\";\"Заплавное\";\"other\"\n\"464891\";\"Zapadnaya Dvina\";\"main\"\n\"464891\";\"ZAPADNAJA DVINA\";\"other\"\n\"464891\";\"Zapadnaja Dvina\";\"other\"\n\"464891\";\"ЗАПАДНАЯ ДВИНА\";\"other\"\n\"464891\";\"Западная Двина\";\"other\"\n\"464993\";\"Zaokskiy\";\"main\"\n\"464993\";\"Poselok Zaokskiy\";\"other\"\n\"464993\";\"Posëlok Zaokskiy\";\"other\"\n\"464993\";\"ZAOKSKIJ\";\"other\"\n\"464993\";\"Zaokskij\";\"other\"\n\"464993\";\"Zaokskoye\";\"other\"\n\"464993\";\"ЗАОКСКИЙ\";\"other\"\n\"465019\";\"Zandak\";\"main\"\n\"465019\";\"Dagbash\";\"other\"\n\"465019\";\"Zandaq\";\"other\"\n\"465019\";\"Зандак\";\"other\"\n\"465174\";\"Zalukokoazhe\";\"main\"\n\"465174\";\"ZALUKOKOAZHE\";\"other\"\n\"465174\";\"Zalukokoazje\";\"other\"\n\"465174\";\"ЗАЛУКОКОАЖЕ\";\"other\"\n\"465291\";\"Zalegoshch’\";\"main\"\n\"465291\";\"Zalegoshch'\";\"ascii\"\n\"465291\";\"ZALEGOSHH'\";\"other\"\n\"465291\";\"Zalegosjtsj\";\"other\"\n\"465291\";\"ЗАЛЕГОЩЬ\";\"other\"\n\"465291\";\"Залегощь\";\"other\"\n\"465446\";\"Zakharovo\";\"main\"\n\"465446\";\"Zakharovo Pervoye\";\"other\"\n\"465446\";\"Захарово\";\"other\"\n\"465532\";\"Zakan-Yurt\";\"main\"\n\"465532\";\"Prigorodnoye\";\"other\"\n\"465532\";\"Romanovskaya\";\"other\"\n\"465532\";\"Sakan-Jurt\";\"other\"\n\"465532\";\"Zakan-Jurt\";\"other\"\n\"465532\";\"Zakan-Yurtovskaya\";\"other\"\n\"465532\";\"Закан-Юрт\";\"other\"\n\"465543\";\"Zainsk\";\"main\"\n\"465543\";\"ZAINSK\";\"other\"\n\"465543\";\"ЗАИНСК\";\"other\"\n\"465632\";\"Zagoryanskiy\";\"main\"\n\"465632\";\"Zagaryanskiy\";\"other\"\n\"465632\";\"Zagorjanskij\";\"other\"\n\"465632\";\"Zagoryanskoye\";\"other\"\n\"465632\";\"Загорянский\";\"other\"\n\"465726\";\"Zadonsk\";\"main\"\n\"465726\";\"ZADONSK\";\"other\"\n\"465726\";\"ЗАДОНСК\";\"other\"\n\"465726\";\"Задонск\";\"other\"\n\"465934\";\"Zabolotovka\";\"main\"\n\"465934\";\"Заболотовка\";\"other\"\n\"466013\";\"Yuzhnyy-Kospashskiy\";\"main\"\n\"466013\";\"JUZHNYJ KOSPASHSKIJ\";\"other\"\n\"466013\";\"Juzjnyj Kospasjskij\";\"other\"\n\"466013\";\"ЮЖНЫЙ КОСПАШСКИЙ\";\"other\"\n\"466060\";\"Yuzhno-Sukhokumsk\";\"main\"\n\"466060\";\"Juzhno-Sukhokumsk\";\"other\"\n\"466060\";\"Juzjno-Sukhokumsk\";\"other\"\n\"466060\";\"Южно-Сухокумск\";\"other\"\n\"466084\";\"Yuzha\";\"main\"\n\"466084\";\"JUZHA\";\"other\"\n\"466084\";\"Juzja\";\"other\"\n\"466084\";\"ЮЖА\";\"other\"\n\"466200\";\"Yuryuzan’\";\"main\"\n\"466200\";\"Yuryuzan'\";\"ascii\"\n\"466200\";\"JURJUZAN'\";\"other\"\n\"466200\";\"Jurjuzan\";\"other\"\n\"466200\";\"ЮРЮЗАНЬ\";\"other\"\n\"466215\";\"Yur’yev-Pol’skiy\";\"main\"\n\"466215\";\"Yur'yev-Pol'skiy\";\"ascii\"\n\"466215\";\"Jurjev-Polskij\";\"other\"\n\"466215\";\"Yurev Polski\";\"other\"\n\"466215\";\"Юрьев-Польский\";\"other\"\n\"466258\";\"Yur’yevets\";\"main\"\n\"466258\";\"Yur'yevets\";\"ascii\"\n\"466258\";\"Jur'evec\";\"other\"\n\"466258\";\"Jurjevets\";\"other\"\n\"466258\";\"Yurevets\";\"other\"\n\"466258\";\"Юрьевец\";\"other\"\n\"466314\";\"Yurovka\";\"main\"\n\"466314\";\"Jurovka\";\"other\"\n\"466314\";\"Pervomayskoye\";\"other\"\n\"466314\";\"Yur'yevka\";\"other\"\n\"466314\";\"Yur’yevka\";\"other\"\n\"466314\";\"Юровка\";\"other\"\n\"466349\";\"Yurla\";\"main\"\n\"466349\";\"Jurla\";\"other\"\n\"466349\";\"Yurlya\";\"other\"\n\"466349\";\"Юрла\";\"other\"\n\"466423\";\"Yurino\";\"main\"\n\"466423\";\"JURINO\";\"other\"\n\"466423\";\"Jurino\";\"other\"\n\"466423\";\"ЮРИНО\";\"other\"\n\"466538\";\"Yumaguzino\";\"main\"\n\"466538\";\"Jumaguzino\";\"other\"\n\"466538\";\"Юмагузино\";\"other\"\n\"466658\";\"Yukhnov\";\"main\"\n\"466658\";\"JUKHNOV\";\"other\"\n\"466658\";\"Jukhnov\";\"other\"\n\"466658\";\"ЮХНОВ\";\"other\"\n\"466674\";\"Yukamenskoye\";\"main\"\n\"466674\";\"Jukamenskoe\";\"other\"\n\"466674\";\"Jukamenskoje\";\"other\"\n\"466674\";\"Юкаменское\";\"other\"\n\"466699\";\"Yugo-Kamskiy\";\"main\"\n\"466699\";\"Jugo-Kamskij\";\"other\"\n\"466699\";\"Юго-Камский\";\"other\"\n\"466710\";\"Yuganets\";\"main\"\n\"466710\";\"JUGANEC\";\"other\"\n\"466710\";\"Juganets\";\"other\"\n\"466710\";\"ЮГАНЕЦ\";\"other\"\n\"466724\";\"Yug\";\"main\"\n\"466724\";\"Jug\";\"other\"\n\"466724\";\"Yugovskiy\";\"other\"\n\"466724\";\"Yugovskoy\";\"other\"\n\"466724\";\"Yugovskoye\";\"other\"\n\"466724\";\"Юг\";\"other\"\n\"466798\";\"Yubileynyy\";\"main\"\n\"466798\";\"JUBILEJNYJ\";\"other\"\n\"466798\";\"Jubilejnyj\";\"other\"\n\"466798\";\"ЮБИЛЕЙНЫЙ\";\"other\"\n\"466806\";\"Yoshkar-Ola\";\"main\"\n\"466806\";\"Iochkar-Ola\";\"other\"\n\"466806\";\"Ioshkar Ola\";\"other\"\n\"466806\";\"JOSHKAR-OLA\";\"other\"\n\"466806\";\"Joschkar-Ola\";\"other\"\n\"466806\";\"Joshkar-Ola\";\"other\"\n\"466806\";\"Josjkar-Ola\";\"other\"\n\"466806\";\"Joskar-Ola\";\"other\"\n\"466806\";\"Joszkar-Ola\";\"other\"\n\"466806\";\"Joszkar-Oła\";\"other\"\n\"466806\";\"Joŝkar-Ola\";\"other\"\n\"466806\";\"Joškar-Ola\";\"other\"\n\"466806\";\"Tsarevokokshaysk\";\"other\"\n\"466806\";\"yosikaleuolla\";\"other\"\n\"466806\";\"ЙОШКАР-ОЛА\";\"other\"\n\"466806\";\"Йошкaр-Ола\";\"other\"\n\"466806\";\"Йошкар-Ола\";\"other\"\n\"466806\";\"יושקר-אולה\";\"other\"\n\"466806\";\"ヨシュカル・オラ\";\"other\"\n\"466806\";\"요시카르올라\";\"other\"\n\"466885\";\"Yeysk\";\"main\"\n\"466885\";\"Jeisk\";\"other\"\n\"466885\";\"Jejsk\";\"other\"\n\"466885\";\"Yeisk\";\"other\"\n\"466885\";\"Yiesk\";\"other\"\n\"466885\";\"yeiseukeu\";\"other\"\n\"466885\";\"Ейск\";\"other\"\n\"466885\";\"예이스크\";\"other\"\n\"466989\";\"Yessentukskaya\";\"main\"\n\"466989\";\"Jessentukskaja\";\"other\"\n\"466989\";\"Ессентукская\";\"other\"\n\"466990\";\"Yessentuki\";\"main\"\n\"466990\";\"ESSENTUKI\";\"other\"\n\"466990\";\"Jessentuki\";\"other\"\n\"466990\";\"Yessentaki\";\"other\"\n\"466990\";\"ЕССЕНТУКИ\";\"other\"\n\"466990\";\"Ессентуки\";\"other\"\n\"467084\";\"Yertsevo\";\"main\"\n\"467084\";\"ERCEVO\";\"other\"\n\"467084\";\"Jertsevo\";\"other\"\n\"467084\";\"ЕРЦЕВО\";\"other\"\n\"467120\";\"Yershov\";\"main\"\n\"467120\";\"ERSHOV\";\"other\"\n\"467120\";\"Jerschow\";\"other\"\n\"467120\";\"Jersjov\";\"other\"\n\"467120\";\"Yershovo\";\"other\"\n\"467120\";\"ЕРШОВ\";\"other\"\n\"467134\";\"Yershichi\";\"main\"\n\"467134\";\"Ershichi\";\"other\"\n\"467134\";\"Jersjitsji\";\"other\"\n\"467134\";\"Ершичи\";\"other\"\n\"467246\";\"Yermolayevo\";\"main\"\n\"467246\";\"ERMOLAEVO\";\"other\"\n\"467246\";\"Jermolajevo\";\"other\"\n\"467246\";\"Yermolayevka\";\"other\"\n\"467246\";\"ЕРМОЛАЕВО\";\"other\"\n\"467252\";\"Yermish’\";\"main\"\n\"467252\";\"Yermish'\";\"ascii\"\n\"467252\";\"ERMISH'\";\"other\"\n\"467252\";\"Jermisj\";\"other\"\n\"467252\";\"ЕРМИШЬ\";\"other\"\n\"467260\";\"Yermekeyevo\";\"main\"\n\"467260\";\"Ermekeevo\";\"other\"\n\"467260\";\"Ermeneevo\";\"other\"\n\"467260\";\"Yermikeyevo\";\"other\"\n\"467260\";\"Ермекеево\";\"other\"\n\"467260\";\"Ерменеево\";\"other\"\n\"467464\";\"Yepifan’\";\"main\"\n\"467464\";\"Yepifan'\";\"ascii\"\n\"467464\";\"EPIFAN'\";\"other\"\n\"467464\";\"Epufan\";\"other\"\n\"467464\";\"Jepifan\";\"other\"\n\"467464\";\"Yepinfan'\";\"other\"\n\"467464\";\"Yepinfan’\";\"other\"\n\"467464\";\"ЕПИФАНЬ\";\"other\"\n\"467464\";\"Епифань\";\"other\"\n\"467479\";\"Yenotayevka\";\"main\"\n\"467479\";\"Ekataevsk\";\"other\"\n\"467479\";\"Jenotajevka\";\"other\"\n\"467479\";\"Yenotayevsk\";\"other\"\n\"467479\";\"Енотаевка\";\"other\"\n\"467525\";\"Yemva\";\"main\"\n\"467525\";\"ZHELEZNODOROZHNYJ\";\"other\"\n\"467525\";\"Zheleznodorozhnyy\";\"other\"\n\"467525\";\"Zjeleznodorozjnyj\";\"other\"\n\"467525\";\"ЖЕЛЕЗНОДОРОЖНЫЙ\";\"other\"\n\"467527\";\"Yemtsa\";\"main\"\n\"467527\";\"Emca\";\"other\"\n\"467527\";\"Jemtsa\";\"other\"\n\"467527\";\"Емца\";\"other\"\n\"467539\";\"Yemetsk\";\"main\"\n\"467539\";\"Emeck\";\"other\"\n\"467539\";\"Емецк\";\"other\"\n\"467711\";\"Yelovo\";\"main\"\n\"467711\";\"Jelovo\";\"other\"\n\"467711\";\"Елово\";\"other\"\n\"467753\";\"Yel’nya\";\"main\"\n\"467753\";\"Yel'nya\";\"ascii\"\n\"467753\";\"El'nja\";\"other\"\n\"467753\";\"Elna\";\"other\"\n\"467753\";\"Elnya\";\"other\"\n\"467753\";\"Jelnja\";\"other\"\n\"467753\";\"Ельня\";\"other\"\n\"467787\";\"Yëlkino\";\"main\"\n\"467787\";\"Yelkino\";\"ascii\"\n\"467787\";\"ELKINO\";\"other\"\n\"467787\";\"Jelkino\";\"other\"\n\"467787\";\"ЕЛКИНО\";\"other\"\n\"467819\";\"Yelkhovka\";\"main\"\n\"467819\";\"Jelkhovka\";\"other\"\n\"467819\";\"Елховка\";\"other\"\n\"467850\";\"Yelizavetinskoye\";\"main\"\n\"467850\";\"Elizavetinskoe\";\"other\"\n\"467850\";\"Jelizavetinskoje\";\"other\"\n\"467850\";\"Елизаветинское\";\"other\"\n\"467854\";\"Yelizavetinskaya\";\"main\"\n\"467854\";\"Elizavetinskaja\";\"other\"\n\"467854\";\"Jelisawetinskaja\";\"other\"\n\"467854\";\"Jelizavetinskaja\";\"other\"\n\"467854\";\"Елизаветинская\";\"other\"\n\"467856\";\"Yelizavetino\";\"main\"\n\"467856\";\"Elizavetino\";\"other\"\n\"467856\";\"Jelizavetino\";\"other\"\n\"467856\";\"Елизаветино\";\"other\"\n\"467978\";\"Yelets\";\"main\"\n\"467978\";\"ELEC\";\"other\"\n\"467978\";\"Elec\";\"other\"\n\"467978\";\"Jelec\";\"other\"\n\"467978\";\"Jelez\";\"other\"\n\"467978\";\"ЕЛЕЦ\";\"other\"\n\"467978\";\"Елец\";\"other\"\n\"468030\";\"Yelat’ma\";\"main\"\n\"468030\";\"Yelat'ma\";\"ascii\"\n\"468030\";\"Elat'ma\";\"other\"\n\"468030\";\"Jelatma\";\"other\"\n\"468030\";\"Елатьма\";\"other\"\n\"468042\";\"Yelan’-Kolenovskiy\";\"main\"\n\"468042\";\"Yelan'-Kolenovskiy\";\"ascii\"\n\"468044\";\"Yelan’-Koleno\";\"main\"\n\"468044\";\"Yelan'-Koleno\";\"ascii\"\n\"468063\";\"Yelan’\";\"main\"\n\"468063\";\"Yelan'\";\"ascii\"\n\"468063\";\"ELAN'\";\"other\"\n\"468063\";\"Jelan\";\"other\"\n\"468063\";\"ЕЛАНЬ\";\"other\"\n\"468082\";\"Yelabuga\";\"main\"\n\"468082\";\"ELABUGA\";\"other\"\n\"468082\";\"Elabuga\";\"other\"\n\"468082\";\"Jelaboega\";\"other\"\n\"468082\";\"Jelabuga\";\"other\"\n\"468082\";\"Јелабуга\";\"other\"\n\"468082\";\"ЕЛАБУГА\";\"other\"\n\"468082\";\"Елабуга\";\"other\"\n\"468116\";\"Yekimovichi\";\"main\"\n\"468116\";\"EKIMOVICHI\";\"other\"\n\"468116\";\"Jekimovitsji\";\"other\"\n\"468116\";\"ЕКИМОВИЧИ\";\"other\"\n\"468180\";\"Yekaterinovka\";\"main\"\n\"468180\";\"EKATERINOVKA\";\"other\"\n\"468180\";\"Jekaterinovka\";\"other\"\n\"468180\";\"ЕКАТЕРИНОВКА\";\"other\"\n\"468180\";\"Екатериновка\";\"other\"\n\"468250\";\"Yegor’yevsk\";\"main\"\n\"468250\";\"Yegor'yevsk\";\"ascii\"\n\"468250\";\"EGOR'EVSK\";\"other\"\n\"468250\";\"Egor'ev\";\"other\"\n\"468250\";\"Egor’ev\";\"other\"\n\"468250\";\"Jegorjevsk\";\"other\"\n\"468250\";\"Jegorjewsk\";\"other\"\n\"468250\";\"Yegorevsk\";\"other\"\n\"468250\";\"ЕГОРЬЕВСК\";\"other\"\n\"468307\";\"Yegorlykskaya\";\"main\"\n\"468307\";\"Jegorlykskaja\";\"other\"\n\"468307\";\"Yegorlkskaya\";\"other\"\n\"468307\";\"Егорлыкская\";\"other\"\n\"468390\";\"Yefremov\";\"main\"\n\"468390\";\"EFREMOV\";\"other\"\n\"468390\";\"Jefremov\";\"other\"\n\"468390\";\"Jefremow\";\"other\"\n\"468390\";\"ЕФРЕМОВ\";\"other\"\n\"468390\";\"Ефремов\";\"other\"\n\"468483\";\"Yazykovo\";\"main\"\n\"468483\";\"Jazykovo\";\"other\"\n\"468483\";\"Языково\";\"other\"\n\"468486\";\"Yazykovo\";\"main\"\n\"468486\";\"JAZYKOVO\";\"other\"\n\"468486\";\"Jazykovo\";\"other\"\n\"468486\";\"ЯЗЫКОВО\";\"other\"\n\"468560\";\"Yayva\";\"main\"\n\"468560\";\"Jajva\";\"other\"\n\"468560\";\"Яйва\";\"other\"\n\"468587\";\"Yavas\";\"main\"\n\"468587\";\"JAVAS\";\"other\"\n\"468587\";\"Javas\";\"other\"\n\"468587\";\"ЯВАС\";\"other\"\n\"468657\";\"Yasnyy\";\"main\"\n\"468657\";\"JASNYJ\";\"other\"\n\"468657\";\"Jasnyj\";\"other\"\n\"468657\";\"ЯСНЫЙ\";\"other\"\n\"468671\";\"Yasnogorsk\";\"main\"\n\"468671\";\"JASNOGORSK\";\"other\"\n\"468671\";\"Jasnogorsk\";\"other\"\n\"468671\";\"Laptevo\";\"other\"\n\"468671\";\"Laptëvo\";\"other\"\n\"468671\";\"ЯСНОГОРСК\";\"other\"\n\"468747\";\"Yashkul’\";\"main\"\n\"468747\";\"Yashkul'\";\"ascii\"\n\"468747\";\"JASHKUL'\";\"other\"\n\"468747\";\"Jaschkul\";\"other\"\n\"468747\";\"Jasjkul\";\"other\"\n\"468747\";\"Peschanoye\";\"other\"\n\"468747\";\"Yashkuly\";\"other\"\n\"468747\";\"ЯШКУЛЬ\";\"other\"\n\"468776\";\"Yashalta\";\"main\"\n\"468776\";\"Esto-Khaginka\";\"other\"\n\"468776\";\"Esto-Khaginskoe\";\"other\"\n\"468776\";\"JASHALTA\";\"other\"\n\"468776\";\"Jasjalta\";\"other\"\n\"468776\";\"Stepnoye\";\"other\"\n\"468776\";\"ЯШАЛТА\";\"other\"\n\"468782\";\"Yasenskaya\";\"main\"\n\"468782\";\"Iasenskaia\";\"other\"\n\"468782\";\"Jasenskaja\";\"other\"\n\"468782\";\"Stanitsa Yasenskaya\";\"other\"\n\"468782\";\"Yasenka\";\"other\"\n\"468782\";\"Ясенская\";\"other\"\n\"468866\";\"Yartsevo\";\"main\"\n\"468866\";\"Jartsevo\";\"other\"\n\"468866\";\"Yartseva\";\"other\"\n\"468866\";\"Ярцево\";\"other\"\n\"468899\";\"Yaroslavskaya\";\"main\"\n\"468899\";\"Jaroslavskaja\";\"other\"\n\"468899\";\"Yaroslavskoye\";\"other\"\n\"468899\";\"Ярославская\";\"other\"\n\"468902\";\"Yaroslavl'\";\"main\"\n\"468902\";\"Jaroslavl\";\"other\"\n\"468902\";\"Jaroslavl'\";\"other\"\n\"468902\";\"Jaroslawl\";\"other\"\n\"468902\";\"Ярославль\";\"other\"\n\"468927\";\"Yaropolets\";\"main\"\n\"468927\";\"Jaropolec\";\"other\"\n\"468927\";\"Jaropolets\";\"other\"\n\"468927\";\"Ярополец\";\"other\"\n\"468983\";\"Yarensk\";\"main\"\n\"468983\";\"Jarensk\";\"other\"\n\"468983\";\"Severnyy\";\"other\"\n\"468983\";\"Яренск\";\"other\"\n\"468991\";\"Yarega\";\"main\"\n\"468991\";\"JAREGA\";\"other\"\n\"468991\";\"Jarega\";\"other\"\n\"468991\";\"ЯРЕГА\";\"other\"\n\"468991\";\"Ярега\";\"other\"\n\"469005\";\"Yaransk\";\"main\"\n\"469005\";\"JARANSK\";\"other\"\n\"469005\";\"Jaransk\";\"other\"\n\"469005\";\"ЯРАНСК\";\"other\"\n\"469017\";\"Yar\";\"main\"\n\"469017\";\"JAR\";\"other\"\n\"469017\";\"Jar\";\"other\"\n\"469017\";\"ЯР\";\"other\"\n\"469049\";\"Yantikovo\";\"main\"\n\"469081\";\"Yanis’yarvi\";\"main\"\n\"469081\";\"Yanis'yarvi\";\"ascii\"\n\"469081\";\"Iyanisyarven\";\"other\"\n\"469081\";\"Janis\\\"jarvi\";\"other\"\n\"469081\";\"Janisiarvi\";\"other\"\n\"469081\";\"Janisjarvi\";\"other\"\n\"469081\";\"Jänisjärvi\";\"other\"\n\"469081\";\"Янисъярви\";\"other\"\n\"469087\";\"Yanino Vtoroye\";\"main\"\n\"469087\";\"Janino\";\"other\"\n\"469087\";\"Yanino\";\"other\"\n\"469087\";\"Янино\";\"other\"\n\"469151\";\"Yandyki\";\"main\"\n\"469151\";\"Jandyki\";\"other\"\n\"469151\";\"Яндыки\";\"other\"\n\"469178\";\"Yanaul\";\"main\"\n\"469178\";\"JANAUL\";\"other\"\n\"469178\";\"Janaul\";\"other\"\n\"469178\";\"ЯНАУЛ\";\"other\"\n\"469186\";\"Novaya Maka\";\"main\"\n\"469186\";\"Ashaga-Maka\";\"other\"\n\"469186\";\"Novaja Maka\";\"other\"\n\"469186\";\"Yanankala\";\"other\"\n\"469186\";\"Новая Мака\";\"other\"\n\"469341\";\"Yam\";\"main\"\n\"469341\";\"Starry Frolovskiy Yam\";\"other\"\n\"469341\";\"Stary Yam\";\"other\"\n\"469341\";\"Staryy Yam\";\"other\"\n\"469372\";\"Yalkhoy-Mokhk\";\"main\"\n\"469372\";\"Jalkhoj-Mokhk\";\"other\"\n\"469372\";\"Tlyadal\";\"other\"\n\"469372\";\"Ялхой-Мохк\";\"other\"\n\"469512\";\"Yaksatovo\";\"main\"\n\"469512\";\"Jaksatovo\";\"other\"\n\"469512\";\"Яксатово\";\"other\"\n\"469533\";\"Yakovlevskoye\";\"main\"\n\"469533\";\"Jakovlevskoe\";\"other\"\n\"469533\";\"Jakovlevskoje\";\"other\"\n\"469533\";\"Yakovlevskaya\";\"other\"\n\"469533\";\"Yakovleyskoye\";\"other\"\n\"469533\";\"Яковлевское\";\"other\"\n\"469544\";\"Yakovlevo\";\"main\"\n\"469544\";\"Jakovlevo\";\"other\"\n\"469544\";\"Mustamaki\";\"other\"\n\"469544\";\"Mustamyaki\";\"other\"\n\"469544\";\"Mustamäki\";\"other\"\n\"469544\";\"Яковлево\";\"other\"\n\"469577\";\"Yakovlevo\";\"main\"\n\"469577\";\"JAKOVLEVO\";\"other\"\n\"469577\";\"Jakovlevo\";\"other\"\n\"469577\";\"ЯКОВЛЕВО\";\"other\"\n\"469655\";\"Yakhroma\";\"main\"\n\"469655\";\"JAKHROMA\";\"other\"\n\"469655\";\"Jakhroma\";\"other\"\n\"469655\";\"ЯХРОМА\";\"other\"\n\"469809\";\"Yadrin\";\"main\"\n\"469809\";\"JADRIN\";\"other\"\n\"469809\";\"Jadrin\";\"other\"\n\"469809\";\"ЯДРИН\";\"other\"\n\"469844\";\"Yablonovskiy\";\"main\"\n\"469844\";\"JABLONOVSKIJ\";\"other\"\n\"469844\";\"Jablonovskij\";\"other\"\n\"469844\";\"ЯБЛОНОВСКИЙ\";\"other\"\n\"469933\";\"Vyyezdnoye\";\"main\"\n\"469933\";\"VYEZDNOE\";\"other\"\n\"469933\";\"Vyezdnoje\";\"other\"\n\"469933\";\"ВЫЕЗДНОЕ\";\"other\"\n\"469960\";\"Vytegra\";\"main\"\n\"469960\";\"VYTEGRA\";\"other\"\n\"469960\";\"Vitegra\";\"other\"\n\"469960\";\"Wytegra\";\"other\"\n\"469960\";\"ВЫТЕГРА\";\"other\"\n\"469991\";\"Vysotskoye\";\"main\"\n\"469991\";\"Visatskoe\";\"other\"\n\"469991\";\"Vysockoe\";\"other\"\n\"469991\";\"Vysotskoje\";\"other\"\n\"469991\";\"Высоцкое\";\"other\"\n\"469995\";\"Vysotsk\";\"main\"\n\"469995\";\"Trangsund\";\"other\"\n\"469995\";\"Transund\";\"other\"\n\"469995\";\"Tranzund\";\"other\"\n\"469995\";\"Trongsund\";\"other\"\n\"469995\";\"Trångsund\";\"other\"\n\"469995\";\"Uras\";\"other\"\n\"469995\";\"Uras-Trongsund\";\"other\"\n\"469995\";\"Uuraa\";\"other\"\n\"469995\";\"Uuras\";\"other\"\n\"469995\";\"VYSOCK\";\"other\"\n\"469995\";\"ВЫСОЦК\";\"other\"\n\"470083\";\"Vysokovsk\";\"main\"\n\"470083\";\"VYSOKOVSK\";\"other\"\n\"470083\";\"Vysokovskiy\";\"other\"\n\"470083\";\"ВЫСОКОВСК\";\"other\"\n\"470212\";\"Vysokaya Gora\";\"main\"\n\"470212\";\"Высокая Гора\";\"other\"\n\"470252\";\"Vyshniy Volochëk\";\"main\"\n\"470252\";\"Vyshniy Volochek\";\"ascii\"\n\"470252\";\"Vyshnij Volochek\";\"other\"\n\"470252\";\"Vysjnij Volotsjek\";\"other\"\n\"470252\";\"Wyschni-Wolotschek\";\"other\"\n\"470252\";\"Вышний Волочек\";\"other\"\n\"470268\";\"Vyshneye Dolgoye\";\"main\"\n\"470268\";\"Dolgaja\";\"other\"\n\"470268\";\"Dolgaya\";\"other\"\n\"470268\";\"Dolgoye\";\"other\"\n\"470268\";\"Vyshnedolgoye\";\"other\"\n\"470268\";\"Vyshnee Dolgoe\";\"other\"\n\"470268\";\"Vysjneje Dolgoje\";\"other\"\n\"470268\";\"Вышнее Долгое\";\"other\"\n\"470274\";\"Vyshkov\";\"main\"\n\"470274\";\"VYSHKOV\";\"other\"\n\"470274\";\"Vysjkov\";\"other\"\n\"470274\";\"ВЫШКОВ\";\"other\"\n\"470304\";\"Vysha\";\"main\"\n\"470304\";\"VYSHA\";\"other\"\n\"470304\";\"Vysja\";\"other\"\n\"470304\";\"ВЫША\";\"other\"\n\"470338\";\"Vyselki\";\"main\"\n\"470338\";\"Byselki\";\"other\"\n\"470338\";\"Novosuvorovskaya\";\"other\"\n\"470338\";\"Novosuvorovskoye\";\"other\"\n\"470338\";\"Выселки\";\"other\"\n\"470368\";\"Vyritsa\";\"main\"\n\"470368\";\"VYRICA\";\"other\"\n\"470368\";\"ВЫРИЦА\";\"other\"\n\"470390\";\"Vypolzovo\";\"main\"\n\"470390\";\"VYPOLZOVO\";\"other\"\n\"470390\";\"ВЫПОЛЗОВО\";\"other\"\n\"470444\";\"Vyksa\";\"main\"\n\"470444\";\"VYKSA\";\"other\"\n\"470444\";\"ВЫКСА\";\"other\"\n\"470473\";\"Vygonichi\";\"main\"\n\"470473\";\"VYGONICHI\";\"other\"\n\"470473\";\"Vygonitsji\";\"other\"\n\"470473\";\"ВЫГОНИЧИ\";\"other\"\n\"470499\";\"Vydropuzhsk\";\"main\"\n\"470499\";\"Vydropusk\";\"other\"\n\"470499\";\"Vydropuzjsk\";\"other\"\n\"470499\";\"Выдропужск\";\"other\"\n\"470530\";\"Vychegodskiy\";\"main\"\n\"470530\";\"VYCHEGODSKIJ\";\"other\"\n\"470530\";\"Vytsjegodskij\";\"other\"\n\"470530\";\"ВЫЧЕГОДСКИЙ\";\"other\"\n\"470546\";\"Vyborg\";\"main\"\n\"470546\";\"Viborg\";\"other\"\n\"470546\";\"Viborgas\";\"other\"\n\"470546\";\"Viiburi\";\"other\"\n\"470546\";\"Viipuri\";\"other\"\n\"470546\";\"Vipuri\";\"other\"\n\"470546\";\"Vyborgas\";\"other\"\n\"470546\";\"Wiborg\";\"other\"\n\"470546\";\"Wyborg\";\"other\"\n\"470546\";\"biboleukeu\";\"other\"\n\"470546\";\"wei bao\";\"other\"\n\"470546\";\"Выборг\";\"other\"\n\"470546\";\"维堡\";\"other\"\n\"470546\";\"비보르크\";\"other\"\n\"470549\";\"Vybor\";\"main\"\n\"470549\";\"Выбор\";\"other\"\n\"470653\";\"Vyazovaya\";\"main\"\n\"470653\";\"VJAZOVAJA\";\"other\"\n\"470653\";\"Vjazovaja\";\"other\"\n\"470653\";\"ВЯЗОВАЯ\";\"other\"\n\"470666\";\"Vyazniki\";\"main\"\n\"470666\";\"VJAZNIKI\";\"other\"\n\"470666\";\"Vjazniki\";\"other\"\n\"470666\";\"Vyaznika\";\"other\"\n\"470666\";\"Wjasnik\";\"other\"\n\"470666\";\"ВЯЗНИКИ\";\"other\"\n\"470676\";\"Vyaz’ma\";\"main\"\n\"470676\";\"Vyaz'ma\";\"ascii\"\n\"470676\";\"Vjaz'ma\";\"other\"\n\"470676\";\"Vjazma\";\"other\"\n\"470676\";\"Vyasma\";\"other\"\n\"470676\";\"Вязьма\";\"other\"\n\"470734\";\"Vyatskiye Polyany\";\"main\"\n\"470734\";\"VJATSKIE POLJANY\";\"other\"\n\"470734\";\"Vjatskije Poljany\";\"other\"\n\"470734\";\"ВЯТСКИЕ ПОЛЯНЫ\";\"other\"\n\"470762\";\"Vyartsilya\";\"main\"\n\"470762\";\"VJARTSILJA\";\"other\"\n\"470762\";\"Vartsila\";\"other\"\n\"470762\";\"Vjartsilja\";\"other\"\n\"470762\";\"Värtsilä\";\"other\"\n\"470762\";\"ВЯРТСИЛЯ\";\"other\"\n\"470845\";\"Vurnary\";\"main\"\n\"470845\";\"VURNARY\";\"other\"\n\"470845\";\"Vurnur\";\"other\"\n\"470845\";\"ВУРНАРЫ\";\"other\"\n\"470905\";\"Vuktyl\";\"main\"\n\"470905\";\"VUKTYL\";\"other\"\n\"470905\";\"ВУКТЫЛ\";\"other\"\n\"471101\";\"Vsevolozhsk\";\"main\"\n\"471101\";\"Poselok Vsevolozhskiy\";\"other\"\n\"471101\";\"Posëlok Vsevolozhskiy\";\"other\"\n\"471101\";\"VSEVOLOZHSK\";\"other\"\n\"471101\";\"Vsevolozhskiy\";\"other\"\n\"471101\";\"Vsevolozjsk\";\"other\"\n\"471101\";\"ВСЕВОЛОЖСК\";\"other\"\n\"471160\";\"Voznesen’ye\";\"main\"\n\"471160\";\"Voznesen'ye\";\"ascii\"\n\"471160\";\"Voznesen'e\";\"other\"\n\"471160\";\"Vozneseniye\";\"other\"\n\"471160\";\"Voznesenje\";\"other\"\n\"471160\";\"Вознесенье\";\"other\"\n\"471172\";\"Voznesenskoye\";\"main\"\n\"471172\";\"VOZNESENSKOE\";\"other\"\n\"471172\";\"Voznesenskoje\";\"other\"\n\"471172\";\"ВОЗНЕСЕНСКОЕ\";\"other\"\n\"471188\";\"Voznesenskaya\";\"main\"\n\"471188\";\"Voznesenskaia\";\"other\"\n\"471188\";\"Voznesenskaja\";\"other\"\n\"471188\";\"Вознесенская\";\"other\"\n\"471189\";\"Voznesenskaya\";\"main\"\n\"471189\";\"Voznesensk\";\"other\"\n\"471189\";\"Voznesenskaja\";\"other\"\n\"471189\";\"Вознесенская\";\"other\"\n\"471245\";\"Vozhega\";\"main\"\n\"471245\";\"Vozjega\";\"other\"\n\"471245\";\"Вожега\";\"other\"\n\"471308\";\"Voyvozh\";\"main\"\n\"471308\";\"VOJVOZH\";\"other\"\n\"471308\";\"Vojvozj\";\"other\"\n\"471308\";\"ВОЙВОЖ\";\"other\"\n\"471323\";\"Voyskovitsy\";\"main\"\n\"471323\";\"Vojskovicy\";\"other\"\n\"471323\";\"Vojskovitsy\";\"other\"\n\"471323\";\"Войсковицы\";\"other\"\n\"471430\";\"Votkinsk\";\"main\"\n\"471430\";\"VOTKINSK\";\"other\"\n\"471430\";\"Votka\";\"other\"\n\"471430\";\"Wotkinsk\";\"other\"\n\"471430\";\"Wotkińsk\";\"other\"\n\"471430\";\"boskinseukeu\";\"other\"\n\"471430\";\"wo te jin si ke\";\"other\"\n\"471430\";\"ВОТКИНСК\";\"other\"\n\"471430\";\"Вотка\";\"other\"\n\"471430\";\"Воткинск\";\"other\"\n\"471430\";\"沃特金斯克\";\"other\"\n\"471430\";\"봇킨스크\";\"other\"\n\"471457\";\"Vostryakovo\";\"main\"\n\"471457\";\"VOSTRJAKOVO\";\"other\"\n\"471457\";\"Vostrjakovo\";\"other\"\n\"471457\";\"ВОСТРЯКОВО\";\"other\"\n\"471499\";\"Vostochnyy\";\"main\"\n\"471499\";\"Filippovka\";\"other\"\n\"471499\";\"VOSTOCHNYJ\";\"other\"\n\"471499\";\"Vostotsjnyj\";\"other\"\n\"471499\";\"ВОСТОЧНЫЙ\";\"other\"\n\"471501\";\"Vostochnyy\";\"main\"\n\"471501\";\"Stalinskiy\";\"other\"\n\"471501\";\"Vostochnyj\";\"other\"\n\"471501\";\"Восточный\";\"other\"\n\"471607\";\"Voskresenskoye\";\"main\"\n\"471607\";\"VOSKRESENSKOE\";\"other\"\n\"471607\";\"Voskresenskoje\";\"other\"\n\"471607\";\"ВОСКРЕСЕНСКОЕ\";\"other\"\n\"471633\";\"Voskresenskoye\";\"main\"\n\"471633\";\"VOSKRESENSKOE\";\"other\"\n\"471633\";\"Voskresenskiy Zavod\";\"other\"\n\"471633\";\"Voskresenskoje\";\"other\"\n\"471633\";\"ВОСКРЕСЕНСКОЕ\";\"other\"\n\"471639\";\"Voskresenskoye\";\"main\"\n\"471639\";\"Voskresenskoe\";\"other\"\n\"471639\";\"Воскресенское\";\"other\"\n\"471656\";\"Voskresensk\";\"main\"\n\"471656\";\"VOSKRESENSK\";\"other\"\n\"471656\";\"Woskressensk\";\"other\"\n\"471656\";\"ВОСКРЕСЕНСК\";\"other\"\n\"471656\";\"Воскресенск\";\"other\"\n\"471760\";\"Vorsma\";\"main\"\n\"471760\";\"VORSMA\";\"other\"\n\"471760\";\"Vorzima\";\"other\"\n\"471760\";\"ВОРСМА\";\"other\"\n\"471799\";\"Vorotynets\";\"main\"\n\"471799\";\"VOROTYNEC\";\"other\"\n\"471799\";\"ВОРОТЫНЕЦ\";\"other\"\n\"471820\";\"Voroshnëvo\";\"main\"\n\"471820\";\"Voroshnevo\";\"ascii\"\n\"471820\";\"Vorosjnevo\";\"other\"\n\"471820\";\"Ворошнево\";\"other\"\n\"471909\";\"Vorontsovka\";\"main\"\n\"471909\";\"Voroncovka\";\"other\"\n\"471909\";\"Vorortsovka\";\"other\"\n\"471909\";\"Воронцовка\";\"other\"\n\"472045\";\"Voronezh\";\"main\"\n\"472045\";\"VORONEZH\";\"other\"\n\"472045\";\"Voronej\";\"other\"\n\"472045\";\"Voronez\";\"other\"\n\"472045\";\"Voroneza\";\"other\"\n\"472045\";\"Voronezas\";\"other\"\n\"472045\";\"Voronezhskaja oblast'\";\"other\"\n\"472045\";\"Voronezj\";\"other\"\n\"472045\";\"Voroneĵ\";\"other\"\n\"472045\";\"Voronež\";\"other\"\n\"472045\";\"Voronežas\";\"other\"\n\"472045\";\"Voroněž\";\"other\"\n\"472045\";\"Voroņeža\";\"other\"\n\"472045\";\"Woronesch\";\"other\"\n\"472045\";\"Woronesh\";\"other\"\n\"472045\";\"Woronez\";\"other\"\n\"472045\";\"Woroneż\";\"other\"\n\"472045\";\"bolonesi\";\"other\"\n\"472045\";\"vu~oroneji\";\"other\"\n\"472045\";\"ВОРОНЕЖ\";\"other\"\n\"472045\";\"Воронеж\";\"other\"\n\"472045\";\"Воронежская область\";\"other\"\n\"472045\";\"ヴォロネジ\";\"other\"\n\"472045\";\"보로네시\";\"other\"\n\"472229\";\"Volzhskiy\";\"main\"\n\"472229\";\"Bol'shaya Tsarevshchina\";\"other\"\n\"472229\";\"Bol'shaya Tsarëvshchina\";\"other\"\n\"472229\";\"VOLZHSKIJ\";\"other\"\n\"472229\";\"Volzjskij\";\"other\"\n\"472229\";\"ВОЛЖСКИЙ\";\"other\"\n\"472231\";\"Volzhskiy\";\"main\"\n\"472231\";\"VOLZHSKIJ\";\"other\"\n\"472231\";\"Volzh Sky\";\"other\"\n\"472231\";\"Volzjskij\";\"other\"\n\"472231\";\"ВОЛЖСКИЙ\";\"other\"\n\"472231\";\"Волжский\";\"other\"\n\"472234\";\"Volzhsk\";\"main\"\n\"472234\";\"Lopatin\";\"other\"\n\"472234\";\"Lopatino\";\"other\"\n\"472234\";\"VOLZHSK\";\"other\"\n\"472234\";\"Volzjsk\";\"other\"\n\"472234\";\"ВОЛЖСК\";\"other\"\n\"472271\";\"Volya\";\"main\"\n\"472271\";\"Volja\";\"other\"\n\"472271\";\"Воля\";\"other\"\n\"472278\";\"Vol'sk\";\"main\"\n\"472278\";\"Volsk\";\"other\"\n\"472278\";\"Wolsk\";\"other\"\n\"472278\";\"Вольск\";\"other\"\n\"472306\";\"Volovo\";\"main\"\n\"472306\";\"Valova\";\"other\"\n\"472306\";\"Волово\";\"other\"\n\"472328\";\"Volot\";\"main\"\n\"472328\";\"Волот\";\"other\"\n\"472357\";\"Volosovo\";\"main\"\n\"472357\";\"VOLOSOVO\";\"other\"\n\"472357\";\"Wolossowo\";\"other\"\n\"472357\";\"ВОЛОСОВО\";\"other\"\n\"472387\";\"Voloshka\";\"main\"\n\"472387\";\"VOLOSHKA\";\"other\"\n\"472387\";\"Volosjka\";\"other\"\n\"472387\";\"ВОЛОШКА\";\"other\"\n\"472428\";\"Volokonovka\";\"main\"\n\"472428\";\"VOLOKONOVKA\";\"other\"\n\"472428\";\"Wolokonowka\";\"other\"\n\"472428\";\"ВОЛОКОНОВКА\";\"other\"\n\"472433\";\"Volokolamsk\";\"main\"\n\"472433\";\"VOLOKOLAMSK\";\"other\"\n\"472433\";\"Wolokolamsk\";\"other\"\n\"472433\";\"ВОЛОКОЛАМСК\";\"other\"\n\"472459\";\"Vologda\";\"main\"\n\"472459\";\"Wologda\";\"other\"\n\"472459\";\"Wołogda\";\"other\"\n\"472459\";\"bollogeuda\";\"other\"\n\"472459\";\"vu~oroguda\";\"other\"\n\"472459\";\"Вологда\";\"other\"\n\"472459\";\"ヴォログダ\";\"other\"\n\"472459\";\"볼로그다\";\"other\"\n\"472490\";\"Volodarskiy\";\"main\"\n\"472490\";\"VOLODARSKIJ\";\"other\"\n\"472490\";\"Volodarovka\";\"other\"\n\"472490\";\"Volodarskij\";\"other\"\n\"472490\";\"ВОЛОДАРСКИЙ\";\"other\"\n\"472490\";\"Володарский\";\"other\"\n\"472494\";\"Volodarsk\";\"main\"\n\"472494\";\"VOLODARSK\";\"other\"\n\"472494\";\"Volodary\";\"other\"\n\"472494\";\"Zolodary\";\"other\"\n\"472494\";\"ВОЛОДАРСК\";\"other\"\n\"472714\";\"Volkhovskiy\";\"main\"\n\"472714\";\"VOLKHOVSKIJ\";\"other\"\n\"472714\";\"Volkhovskij\";\"other\"\n\"472714\";\"ВОЛХОВСКИЙ\";\"other\"\n\"472722\";\"Volkhov\";\"main\"\n\"472722\";\"Olhava\";\"other\"\n\"472722\";\"VOLKHOV\";\"other\"\n\"472722\";\"Volhov\";\"other\"\n\"472722\";\"Volkhovstroy\";\"other\"\n\"472722\";\"Volĥov\";\"other\"\n\"472722\";\"Wolchow\";\"other\"\n\"472722\";\"Zvanka\";\"other\"\n\"472722\";\"bolhopeu\";\"other\"\n\"472722\";\"ВОЛХОВ\";\"other\"\n\"472722\";\"Волхов\";\"other\"\n\"472722\";\"볼호프\";\"other\"\n\"472750\";\"Volgorechensk\";\"main\"\n\"472750\";\"VOLGORECHENSK\";\"other\"\n\"472750\";\"Volgoretsjensk\";\"other\"\n\"472750\";\"ВОЛГОРЕЧЕНСК\";\"other\"\n\"472751\";\"Volgo-Kaspiyskiy\";\"main\"\n\"472751\";\"Volgo-Kaspijskij\";\"other\"\n\"472751\";\"Волго-Каспийский\";\"other\"\n\"472757\";\"Volgograd\";\"main\"\n\"472757\";\"Caricyn\";\"other\"\n\"472757\";\"Estalingrado\";\"other\"\n\"472757\";\"Stalingrad\";\"other\"\n\"472757\";\"Stalingrado\";\"other\"\n\"472757\";\"Tsaritsyn\";\"other\"\n\"472757\";\"Volgogrado\";\"other\"\n\"472757\";\"Zarizyn\";\"other\"\n\"472757\";\"Волгоград\";\"other\"\n\"472757\";\"Сталинград\";\"other\"\n\"472757\";\"Царицын\";\"other\"\n\"472761\";\"Volgodonsk\";\"main\"\n\"472761\";\"VOLGODONSK\";\"other\"\n\"472761\";\"Wolgodonsk\";\"other\"\n\"472761\";\"Wołgodońsk\";\"other\"\n\"472761\";\"ВОЛГОДОНСК\";\"other\"\n\"472761\";\"Волгодонск\";\"other\"\n\"472777\";\"Volga\";\"main\"\n\"472777\";\"VOLGA\";\"other\"\n\"472777\";\"ВОЛГА\";\"other\"\n\"472878\";\"Vokhtoga\";\"main\"\n\"472878\";\"VOKHTOGA\";\"other\"\n\"472878\";\"Vakhtoga\";\"other\"\n\"472878\";\"ВОХТОГА\";\"other\"\n\"472878\";\"Вохтога\";\"other\"\n\"472887\";\"Vokhma\";\"main\"\n\"472887\";\"Вохма\";\"other\"\n\"472942\";\"Vodstroy\";\"main\"\n\"472942\";\"VODSTROJ\";\"other\"\n\"472942\";\"Vodstroi\";\"other\"\n\"472942\";\"Vodstroj\";\"other\"\n\"472942\";\"ВОДСТРОЙ\";\"other\"\n\"472942\";\"Водстрой\";\"other\"\n\"472961\";\"Yutsa\";\"main\"\n\"472961\";\"Dzhutskiy\";\"other\"\n\"472961\";\"Juca\";\"other\"\n\"472961\";\"Jutsa\";\"other\"\n\"472961\";\"Vodopadskiy\";\"other\"\n\"472961\";\"Vodopadskoye\";\"other\"\n\"472961\";\"Юца\";\"other\"\n\"472976\";\"Vodnyy\";\"main\"\n\"472976\";\"VODNYJ\";\"other\"\n\"472976\";\"Vodnyj\";\"other\"\n\"472976\";\"ВОДНЫЙ\";\"other\"\n\"472976\";\"Водный\";\"other\"\n\"473021\";\"Vnukovo\";\"main\"\n\"473166\";\"Vladimirskaya\";\"main\"\n\"473166\";\"Vladimirovskaya\";\"other\"\n\"473166\";\"Vladimirskaja\";\"other\"\n\"473166\";\"Wladimirskaja\";\"other\"\n\"473166\";\"Владимирская\";\"other\"\n\"473247\";\"Vladimir\";\"main\"\n\"473247\";\"Blantimir\";\"other\"\n\"473247\";\"Volodimir\";\"other\"\n\"473247\";\"Volodimiria\";\"other\"\n\"473247\";\"Wladimir\";\"other\"\n\"473247\";\"Wladymir\";\"other\"\n\"473247\";\"Wlodzimierz nad Klazma\";\"other\"\n\"473247\";\"Władymir\";\"other\"\n\"473247\";\"Włodzimierz nad Klaźmą\";\"other\"\n\"473247\";\"beulladimileu\";\"other\"\n\"473247\";\"fu la ji mi er\";\"other\"\n\"473247\";\"Βλαντίμιρ\";\"other\"\n\"473247\";\"Владимир\";\"other\"\n\"473247\";\"Володимир\";\"other\"\n\"473247\";\"弗拉基米尔\";\"other\"\n\"473247\";\"블라디미르\";\"other\"\n\"473249\";\"Vladikavkaz\";\"main\"\n\"473249\";\"Bladikaukasos\";\"other\"\n\"473249\";\"Dzaeudzhykhuaeu\";\"other\"\n\"473249\";\"Dzhaudzhikau\";\"other\"\n\"473249\";\"Ordshonikidse\";\"other\"\n\"473249\";\"Ordzhonikidve\";\"other\"\n\"473249\";\"Ordzhonikidze\";\"other\"\n\"473249\";\"Orjonikidze\";\"other\"\n\"473249\";\"Wladikawkas\";\"other\"\n\"473249\";\"Wladykaukaz\";\"other\"\n\"473249\";\"Władykaukaz\";\"other\"\n\"473249\";\"beulladikabkaseu\";\"other\"\n\"473249\";\"fu la ji gao jia suo\";\"other\"\n\"473249\";\"urajikafukasu\";\"other\"\n\"473249\";\"wldyqwwqz\";\"other\"\n\"473249\";\"Βλαδικαύκασος\";\"other\"\n\"473249\";\"Владикавказ\";\"other\"\n\"473249\";\"Дзæуджыхъæу\";\"other\"\n\"473249\";\"Орджоникидзе\";\"other\"\n\"473249\";\"ולדיקווקז\";\"other\"\n\"473249\";\"ვლადიკავკაზი\";\"other\"\n\"473249\";\"ウラジカフカス\";\"other\"\n\"473249\";\"弗拉季高加索\";\"other\"\n\"473249\";\"블라디캅카스\";\"other\"\n\"473263\";\"Vizinga\";\"main\"\n\"473263\";\"Vizenga\";\"other\"\n\"473263\";\"Vizingo\";\"other\"\n\"473263\";\"Визинга\";\"other\"\n\"473295\";\"Vityazevo\";\"main\"\n\"473295\";\"VITJAZEVO\";\"other\"\n\"473295\";\"Vitjazevo\";\"other\"\n\"473295\";\"Vityazevskaya\";\"other\"\n\"473295\";\"ВИТЯЗЕВО\";\"other\"\n\"473349\";\"Vistino\";\"main\"\n\"473349\";\"Vistina\";\"other\"\n\"473349\";\"Вистино\";\"other\"\n\"473378\";\"Visim\";\"main\"\n\"473378\";\"VISIM\";\"other\"\n\"473378\";\"Visimo-Shaytansk\";\"other\"\n\"473378\";\"Visimo-Shaytanskiy Zanod\";\"other\"\n\"473378\";\"ВИСИМ\";\"other\"\n\"473382\";\"Vishnyakovskiye Dachi\";\"main\"\n\"473382\";\"Vishnjakovskie Dachi\";\"other\"\n\"473382\";\"Visjnjakovskije Datsji\";\"other\"\n\"473382\";\"Вишняковские Дачи\";\"other\"\n\"473522\";\"Vinsady\";\"main\"\n\"473522\";\"Vinogradnyye-Sady\";\"other\"\n\"473522\";\"Винсады\";\"other\"\n\"473535\";\"Vinogradovo\";\"main\"\n\"473535\";\"Виноградово\";\"other\"\n\"473546\";\"Vinogradnyy\";\"main\"\n\"473546\";\"Gastagayka\";\"other\"\n\"473546\";\"Gostagayka\";\"other\"\n\"473546\";\"Vinogradnyj\";\"other\"\n\"473546\";\"Виноградный\";\"other\"\n\"473611\";\"Vilya\";\"main\"\n\"473611\";\"VILJA\";\"other\"\n\"473611\";\"Vilja\";\"other\"\n\"473611\";\"ВИЛЯ\";\"other\"\n\"473627\";\"Vilovatovo\";\"main\"\n\"473627\";\"Виловатово\";\"other\"\n\"473762\";\"Vidyayevo\";\"main\"\n\"473762\";\"Uritsa\";\"other\"\n\"473762\";\"Vidjaevo\";\"other\"\n\"473762\";\"Видяево\";\"other\"\n\"473778\";\"Vidnoye\";\"main\"\n\"473778\";\"Poselok Vidnoye\";\"other\"\n\"473778\";\"Posëlok Vidnoye\";\"other\"\n\"473778\";\"VIDNOE\";\"other\"\n\"473778\";\"Vidnoje\";\"other\"\n\"473778\";\"ВИДНОЕ\";\"other\"\n\"473788\";\"Vichuga\";\"main\"\n\"473788\";\"Bichuga\";\"other\"\n\"473788\";\"VICHUGA\";\"other\"\n\"473788\";\"Vitsjuga\";\"other\"\n\"473788\";\"ВИЧУГА\";\"other\"\n\"473856\";\"Veydelevka\";\"main\"\n\"473856\";\"Veidelovka\";\"other\"\n\"473856\";\"Vejdelevka\";\"other\"\n\"473856\";\"Вейделевка\";\"other\"\n\"473903\";\"Vetluzhskiy\";\"main\"\n\"473903\";\"Golyshi\";\"other\"\n\"473903\";\"VETLUZHSKIJ\";\"other\"\n\"473903\";\"Vetluzjskij\";\"other\"\n\"473903\";\"ВЕТЛУЖСКИЙ\";\"other\"\n\"473904\";\"Vetluzhskiy\";\"main\"\n\"473904\";\"VETLUZHSKIJ\";\"other\"\n\"473904\";\"Vetluzjskij\";\"other\"\n\"473904\";\"ВЕТЛУЖСКИЙ\";\"other\"\n\"473910\";\"Vetluga\";\"main\"\n\"473910\";\"VETLUGA\";\"other\"\n\"473910\";\"ВЕТЛУГА\";\"other\"\n\"473943\";\"Ves’yegonsk\";\"main\"\n\"473943\";\"Ves'yegonsk\";\"ascii\"\n\"473943\";\"Ves'egonsk\";\"other\"\n\"473943\";\"Vesiegonsk\";\"other\"\n\"473943\";\"Весьегонск\";\"other\"\n\"473994\";\"Veshkayma\";\"main\"\n\"473994\";\"Sorokovoy\";\"other\"\n\"473994\";\"Veshkajma\";\"other\"\n\"473994\";\"Vesjkajma\";\"other\"\n\"473994\";\"Вешкайма\";\"other\"\n\"473998\";\"Veshenskaya\";\"main\"\n\"473998\";\"Veshenskaja\";\"other\"\n\"473998\";\"Vesjenskaja\";\"other\"\n\"473998\";\"Вешенская\";\"other\"\n\"474004\";\"Veshchevo\";\"main\"\n\"474004\";\"Heinijoki\";\"other\"\n\"474004\";\"Heinjoki\";\"other\"\n\"474004\";\"Kheynioki\";\"other\"\n\"474004\";\"Kheynyoki\";\"other\"\n\"474004\";\"Veshhevo\";\"other\"\n\"474004\";\"Vesjtsjevo\";\"other\"\n\"474004\";\"Вещево\";\"other\"\n\"474059\";\"Vesëlyy\";\"main\"\n\"474059\";\"Veselyy\";\"ascii\"\n\"474059\";\"Vesely\";\"other\"\n\"474059\";\"Veselyj\";\"other\"\n\"474059\";\"Veselyy Khutor\";\"other\"\n\"474059\";\"Веселый\";\"other\"\n\"474290\";\"Verkhozim\";\"main\"\n\"474290\";\"Верхозим\";\"other\"\n\"474324\";\"Verkhov’ye\";\"main\"\n\"474324\";\"Verkhov'ye\";\"ascii\"\n\"474324\";\"Verkhov'e\";\"other\"\n\"474324\";\"Verkhove\";\"other\"\n\"474324\";\"Verkhovje\";\"other\"\n\"474324\";\"Верховье\";\"other\"\n\"474354\";\"Verkhovazh’ye\";\"main\"\n\"474354\";\"Verkhovazh'ye\";\"ascii\"\n\"474354\";\"Verkhovazh'e\";\"other\"\n\"474354\";\"Verkhovazje\";\"other\"\n\"474354\";\"Верховажье\";\"other\"\n\"474370\";\"Verkhoshizhem’ye\";\"main\"\n\"474370\";\"Verkhoshizhem'ye\";\"ascii\"\n\"474370\";\"VERKHOSHIZHEM'E\";\"other\"\n\"474370\";\"Verkhosjizjemje\";\"other\"\n\"474370\";\"ВЕРХОШИЖЕМЬЕ\";\"other\"\n\"474462\";\"Verkhnyaya Tura\";\"main\"\n\"474462\";\"Verkhnjaja Tura\";\"other\"\n\"474462\";\"Верхняя Тура\";\"other\"\n\"474470\";\"Verkhnyaya Toyma\";\"main\"\n\"474470\";\"Verkhnjaja Tojma\";\"other\"\n\"474470\";\"Верхняя Тойма\";\"other\"\n\"474473\";\"Verkhnyaya Tishanka\";\"main\"\n\"474473\";\"Verkhnjaja Tishanka\";\"other\"\n\"474473\";\"Verkhnjaja Tisjanka\";\"other\"\n\"474473\";\"Verkho-Tishanka\";\"other\"\n\"474473\";\"Верхняя Тишанка\";\"other\"\n\"474603\";\"Verkhnyaya Maksakovka\";\"main\"\n\"474603\";\"Verkhnyaya Maksatovka\";\"other\"\n\"474663\";\"Kishcha\";\"main\"\n\"474663\";\"Kishali\";\"other\"\n\"474663\";\"Kishcha-Makhi\";\"other\"\n\"474663\";\"Kisjtsja\";\"other\"\n\"474663\";\"Verkhnyaya Kishcha\";\"other\"\n\"474663\";\"Кища\";\"other\"\n\"474669\";\"Verkhnyaya Khava\";\"main\"\n\"474669\";\"Verkhne Khava\";\"other\"\n\"474669\";\"Verkhnjaja Khava\";\"other\"\n\"474669\";\"Верхняя Хава\";\"other\"\n\"474743\";\"Verkhnyaya Balkariya\";\"main\"\n\"474743\";\"Verkhnjaja Balkaria\";\"other\"\n\"474743\";\"Verkhnjaja Balkarija\";\"other\"\n\"474743\";\"Верхняя Балкария\";\"other\"\n\"474795\";\"Verkhniy Uslon\";\"main\"\n\"474795\";\"Verkhnij Uslon\";\"other\"\n\"474795\";\"Верхний Услон\";\"other\"\n\"474821\";\"Verkhniy Tagil\";\"main\"\n\"474821\";\"VERKH.TAGIL\";\"other\"\n\"474821\";\"Verkhnij Tagil\";\"other\"\n\"474821\";\"ВЕРХ.ТАГИЛ\";\"other\"\n\"474821\";\"Верхний Тагил\";\"other\"\n\"474902\";\"Lakkha Nëvre\";\"main\"\n\"474902\";\"Lakkha Nevre\";\"ascii\"\n\"474902\";\"Verkhnij Naur\";\"other\"\n\"474902\";\"Verkhniy Naur\";\"other\"\n\"474902\";\"Verxnii Naur\";\"other\"\n\"474902\";\"Верхний Наур\";\"other\"\n\"474902\";\"Лакха Нёвре\";\"other\"\n\"474916\";\"Verkhniy Mamon\";\"main\"\n\"474916\";\"Verkhne Mamon\";\"other\"\n\"474916\";\"Verkhnij Mamon\";\"other\"\n\"474916\";\"Верхний Мамон\";\"other\"\n\"474926\";\"Verkhniy Lomov\";\"main\"\n\"474926\";\"Verkh.Lomov\";\"other\"\n\"474926\";\"Verkhnij Lomov\";\"other\"\n\"474926\";\"Верх.Ломов\";\"other\"\n\"474926\";\"Верхний Ломов\";\"other\"\n\"474931\";\"Verkhniy Landekh\";\"main\"\n\"474931\";\"Verkh.Landekh\";\"other\"\n\"474931\";\"Verkhnij Landekh\";\"other\"\n\"474931\";\"Верх.Ландех\";\"other\"\n\"474931\";\"Верхний Ландех\";\"other\"\n\"474940\";\"Verkhniy Kurkuzhin\";\"main\"\n\"474940\";\"Kurguzhin\";\"other\"\n\"474940\";\"Kurkuzhin\";\"other\"\n\"474940\";\"Verkhnij Kurkuzhin\";\"other\"\n\"474940\";\"Верхний Куркужин\";\"other\"\n\"474940\";\"Куркужин\";\"other\"\n\"475003\";\"Verkhniy Fiagdon\";\"main\"\n\"475003\";\"VERKHNIJ FIAGDON\";\"other\"\n\"475003\";\"Verkhnij Fiagdon\";\"other\"\n\"475003\";\"ВЕРХНИЙ ФИАГДОН\";\"other\"\n\"475030\";\"Verkhniye Tatyshly\";\"main\"\n\"475030\";\"Verkhnie Tatyshly\";\"other\"\n\"475030\";\"Verkhnije Tatysjly\";\"other\"\n\"475030\";\"Верхние Татышлы\";\"other\"\n\"475041\";\"Verkhniye Sergi\";\"main\"\n\"475041\";\"Verkhnie Sergi\";\"other\"\n\"475041\";\"Verkhnije Sergi\";\"other\"\n\"475041\";\"Верхние Серги\";\"other\"\n\"475060\";\"Verkhniye Osel’ki\";\"main\"\n\"475060\";\"Verkhniye Osel'ki\";\"ascii\"\n\"475060\";\"Verkhnie Osel'ki\";\"other\"\n\"475060\";\"Верхние Осельки\";\"other\"\n\"475100\";\"Verkhniye Kigi\";\"main\"\n\"475100\";\"Verkhnie Kigi\";\"other\"\n\"475100\";\"Verkhnije Kigi\";\"other\"\n\"475100\";\"Верхние Киги\";\"other\"\n\"475157\";\"Verkhniye Achaluki\";\"main\"\n\"475157\";\"Achaluk\";\"other\"\n\"475157\";\"Atsylyk\";\"other\"\n\"475157\";\"Verkhne-Atsylyk\";\"other\"\n\"475157\";\"Verkhnie Achaluki\";\"other\"\n\"475157\";\"Verkhnije Atsjaluki\";\"other\"\n\"475157\";\"Verkhniy Atsylyk\";\"other\"\n\"475157\";\"Верхние Ачалуки\";\"other\"\n\"475196\";\"Verkhniy Baskunchak\";\"main\"\n\"475196\";\"VERKH.BASKUNCHAK\";\"other\"\n\"475196\";\"Verhkniy Baskunchak\";\"other\"\n\"475196\";\"Verhniy Baskunchak\";\"other\"\n\"475196\";\"Verkhne Baskunchak\";\"other\"\n\"475196\";\"ВЕРХ.БАСКУНЧАК\";\"other\"\n\"475196\";\"Верхний Баскунчак\";\"other\"\n\"475206\";\"Verkhniy Avzyan\";\"main\"\n\"475206\";\"Avzyano Petrovsk\";\"other\"\n\"475206\";\"Avzyanopetrovsky\";\"other\"\n\"475206\";\"Verkhne-Avzyan\";\"other\"\n\"475206\";\"Verkhnij Avzian\";\"other\"\n\"475206\";\"Verkhnij Avzjan\";\"other\"\n\"475206\";\"Verkhniy Avzyah\";\"other\"\n\"475206\";\"Verkhniy Avzyano-Petrovsk\";\"other\"\n\"475206\";\"Верхний Авзян\";\"other\"\n\"475369\";\"Verkhneye Kazanishche\";\"main\"\n\"475369\";\"Verkhnee-Kazanishhe\";\"other\"\n\"475369\";\"Verkhneje-Kazanisjtsje\";\"other\"\n\"475369\";\"Verkhniye Kazanishche\";\"other\"\n\"475369\";\"Verkhniye Kazanishchi\";\"other\"\n\"475369\";\"Верхнее-Казанище\";\"other\"\n\"475438\";\"Verkhneyarkeyevo\";\"main\"\n\"475438\";\"Jarkejewa\";\"other\"\n\"475438\";\"Verkhnejarkeevo\";\"other\"\n\"475438\";\"Verkhnejarkejevo\";\"other\"\n\"475438\";\"Yarkeyevo\";\"other\"\n\"475438\";\"Верхнеяркеево\";\"other\"\n\"475463\";\"Verkhneural’sk\";\"main\"\n\"475463\";\"Verkhneural'sk\";\"ascii\"\n\"475463\";\"Verkhneuralsk\";\"other\"\n\"475463\";\"Верхнеуральск\";\"other\"\n\"475469\";\"Verkhnetulomskiy\";\"main\"\n\"475469\";\"VERKHNETULOMSKIJ\";\"other\"\n\"475469\";\"Verkhnetulomskij\";\"other\"\n\"475469\";\"ВЕРХНЕТУЛОМСКИЙ\";\"other\"\n\"475614\";\"Verkhnedneprovskiy\";\"main\"\n\"475614\";\"Verkhnedneprovskij\";\"other\"\n\"475614\";\"Верхнеднепровский\";\"other\"\n\"475619\";\"Verkhnechusovskiye Gorodki\";\"main\"\n\"475619\";\"Chusovski Gorodki\";\"other\"\n\"475619\";\"Gorodki\";\"other\"\n\"475619\";\"VERKHNECHUSOVSKIE GORODKI\";\"other\"\n\"475619\";\"Verkhne Chusovsk\";\"other\"\n\"475619\";\"Verkhnetsjusovskije Gorodki\";\"other\"\n\"475619\";\"ВЕРХНЕЧУСОВСКИЕ ГОРОДКИ\";\"other\"\n\"475699\";\"Vereya\";\"main\"\n\"475699\";\"VEREJA\";\"other\"\n\"475699\";\"Vereja\";\"other\"\n\"475699\";\"ВЕРЕЯ\";\"other\"\n\"475700\";\"Vereya\";\"main\"\n\"475701\";\"Vereya\";\"main\"\n\"475701\";\"VEREJA\";\"other\"\n\"475701\";\"Vereja\";\"other\"\n\"475701\";\"ВЕРЕЯ\";\"other\"\n\"475777\";\"Vereshchagino\";\"main\"\n\"475777\";\"Bereshchagino\";\"other\"\n\"475777\";\"Bereshchangino\";\"other\"\n\"475777\";\"VERESHHAGINO\";\"other\"\n\"475777\";\"Veresjtsjagino\";\"other\"\n\"475777\";\"ВЕРЕЩАГИНО\";\"other\"\n\"475845\";\"Verbilki\";\"main\"\n\"475845\";\"VERBILKI\";\"other\"\n\"475845\";\"ВЕРБИЛКИ\";\"other\"\n\"475868\";\"Ventsy\";\"main\"\n\"475868\";\"Vency\";\"other\"\n\"475868\";\"Ventsy-Zarya\";\"other\"\n\"475868\";\"Венцы\";\"other\"\n\"475881\";\"Venëv\";\"main\"\n\"475881\";\"Venev\";\"ascii\"\n\"475881\";\"Venjov\";\"other\"\n\"475881\";\"Венёв\";\"other\"\n\"475938\";\"Vel’sk\";\"main\"\n\"475938\";\"Vel'sk\";\"ascii\"\n\"475938\";\"Bel'sk\";\"other\"\n\"475938\";\"Bel’sk\";\"other\"\n\"475938\";\"VEL'SK\";\"other\"\n\"475938\";\"Velsk\";\"other\"\n\"475938\";\"ВЕЛЬСК\";\"other\"\n\"475955\";\"Velizh\";\"main\"\n\"475955\";\"VELIZH\";\"other\"\n\"475955\";\"Velizj\";\"other\"\n\"475955\";\"ВЕЛИЖ\";\"other\"\n\"476028\";\"Velikovechnoye\";\"main\"\n\"476028\";\"Velikovechnoe\";\"other\"\n\"476028\";\"Velikovetsjnoje\";\"other\"\n\"476028\";\"Velikoye\";\"other\"\n\"476028\";\"Великовечное\";\"other\"\n\"476046\";\"Velikooktyabr’skiy\";\"main\"\n\"476046\";\"Velikooktyabr'skiy\";\"ascii\"\n\"476046\";\"Velikiy Oktyabr'\";\"other\"\n\"476046\";\"Velikiy Oktyabr’\";\"other\"\n\"476046\";\"Velikooktjabr'skij\";\"other\"\n\"476046\";\"Velikooktjabrskij\";\"other\"\n\"476046\";\"Великооктябрьский\";\"other\"\n\"476055\";\"Velikodvorskiy\";\"main\"\n\"476055\";\"Velikodvorskij\";\"other\"\n\"476055\";\"Великодворский\";\"other\"\n\"476062\";\"Velikiy Ustyug\";\"main\"\n\"476062\";\"Usting Velikii\";\"other\"\n\"476062\";\"Usting Velikiĭ\";\"other\"\n\"476062\";\"Veliki Ustyug\";\"other\"\n\"476062\";\"Velikij Ustjug\";\"other\"\n\"476062\";\"Великий Устюг\";\"other\"\n\"476077\";\"Velikiye Luki\";\"main\"\n\"476077\";\"VELIKIE LUKI\";\"other\"\n\"476077\";\"Velikie Luki\";\"other\"\n\"476077\";\"Velikije Loeki\";\"other\"\n\"476077\";\"Velikije Luki\";\"other\"\n\"476077\";\"Welikije Luki\";\"other\"\n\"476077\";\"Wielkie Luki\";\"other\"\n\"476077\";\"Wielkie Łuki\";\"other\"\n\"476077\";\"bellikiyeluki\";\"other\"\n\"476077\";\"ВЕЛИКИЕ ЛУКИ\";\"other\"\n\"476077\";\"Великие Луки\";\"other\"\n\"476077\";\"벨리키예루키\";\"other\"\n\"476106\";\"Velikent\";\"main\"\n\"476106\";\"Великент\";\"other\"\n\"476252\";\"Vedeno\";\"main\"\n\"476252\";\"Vedana\";\"other\"\n\"476252\";\"Ведено\";\"other\"\n\"476297\";\"Vazhiny\";\"main\"\n\"476297\";\"Skuratovo\";\"other\"\n\"476297\";\"VAZHINY\";\"other\"\n\"476297\";\"Vazhina\";\"other\"\n\"476297\";\"Vazjiny\";\"other\"\n\"476297\";\"ВАЖИНЫ\";\"other\"\n\"476343\";\"Vavozh\";\"main\"\n\"476343\";\"Vavozj\";\"other\"\n\"476343\";\"Вавож\";\"other\"\n\"476372\";\"Vatutinki\";\"main\"\n\"476372\";\"Poselok Vatutinki\";\"other\"\n\"476372\";\"Posëlok Vatutinki\";\"other\"\n\"476372\";\"Ватутинки\";\"other\"\n\"476417\";\"Vasyurinskaya\";\"main\"\n\"476417\";\"Vasiurinskaja\";\"other\"\n\"476417\";\"Васюринская\";\"other\"\n\"476548\";\"Vasil’yevskiy Mokh\";\"main\"\n\"476548\";\"Vasil'yevskiy Mokh\";\"ascii\"\n\"476548\";\"Tsentral'ny\";\"other\"\n\"476548\";\"Tsentral'nyy\";\"other\"\n\"476548\";\"Tsentral’ny\";\"other\"\n\"476548\";\"Tsentral’nyy\";\"other\"\n\"476548\";\"Vasil'evskij Mokh\";\"other\"\n\"476548\";\"Vasilevski-Makh\";\"other\"\n\"476548\";\"Vasiljevskij Mokh\";\"other\"\n\"476548\";\"Васильевский Мох\";\"other\"\n\"476982\";\"Varnavino\";\"main\"\n\"476982\";\"VARNAVINO\";\"other\"\n\"476982\";\"ВАРНАВИНО\";\"other\"\n\"477004\";\"Varlamovo\";\"main\"\n\"477039\";\"Varenikovskaya\";\"main\"\n\"477039\";\"Varenikovo\";\"other\"\n\"477039\";\"Varenikovskaja\";\"other\"\n\"477039\";\"Warenikowskaja\";\"other\"\n\"477039\";\"Варениковская\";\"other\"\n\"477047\";\"Vardane\";\"main\"\n\"477047\";\"Вардане\";\"other\"\n\"477192\";\"Valuyki\";\"main\"\n\"477192\";\"VALUJKI\";\"other\"\n\"477192\";\"Valujki\";\"other\"\n\"477192\";\"Waluiki\";\"other\"\n\"477192\";\"ВАЛУЙКИ\";\"other\"\n\"477279\";\"Valerik\";\"main\"\n\"477279\";\"Valerak\";\"other\"\n\"477279\";\"Валерик\";\"other\"\n\"477280\";\"Valerianovsk\";\"main\"\n\"477280\";\"VALERIANOVSK\";\"other\"\n\"477280\";\"ВАЛЕРИАНОВСК\";\"other\"\n\"477301\";\"Valday\";\"main\"\n\"477301\";\"VALDAJ\";\"other\"\n\"477301\";\"Valdai\";\"other\"\n\"477301\";\"Valdaj\";\"other\"\n\"477301\";\"Waldai\";\"other\"\n\"477301\";\"baldai\";\"other\"\n\"477301\";\"ВАЛДАЙ\";\"other\"\n\"477301\";\"Валдай\";\"other\"\n\"477301\";\"발다이\";\"other\"\n\"477337\";\"Vakhtan\";\"main\"\n\"477337\";\"VAKHTAN\";\"other\"\n\"477337\";\"Valkhtan\";\"other\"\n\"477337\";\"ВАХТАН\";\"other\"\n\"477340\";\"Vakhrushi\";\"main\"\n\"477340\";\"VAKHRUSHI\";\"other\"\n\"477340\";\"Vakhrushevo\";\"other\"\n\"477340\";\"Vakhrusji\";\"other\"\n\"477340\";\"ВАХРУШИ\";\"other\"\n\"477418\";\"Vadinsk\";\"main\"\n\"477418\";\"Kerensk\";\"other\"\n\"477418\";\"Вадинск\";\"other\"\n\"477424\";\"Vad\";\"main\"\n\"477424\";\"Вад\";\"other\"\n\"477440\";\"Vacha\";\"main\"\n\"477440\";\"VACHA\";\"other\"\n\"477440\";\"Vatsja\";\"other\"\n\"477440\";\"ВАЧА\";\"other\"\n\"477466\";\"Uzunovo\";\"main\"\n\"477466\";\"Узуново\";\"other\"\n\"477494\";\"Uzlovaya\";\"main\"\n\"477494\";\"UZLOVAJA\";\"other\"\n\"477494\";\"Uzlovaja\";\"other\"\n\"477494\";\"УЗЛОВАЯ\";\"other\"\n\"477494\";\"Узловая\";\"other\"\n\"477579\";\"Uyemskiy\";\"main\"\n\"477579\";\"UEMSKIJ\";\"other\"\n\"477579\";\"Ujemskij\";\"other\"\n\"477579\";\"Uyma\";\"other\"\n\"477579\";\"УЕМСКИЙ\";\"other\"\n\"477626\";\"Uvarovo\";\"main\"\n\"477626\";\"UVAROVO\";\"other\"\n\"477626\";\"УВАРОВО\";\"other\"\n\"477629\";\"Uvarovka\";\"main\"\n\"477629\";\"UVAROVKA\";\"other\"\n\"477629\";\"Uvarovo\";\"other\"\n\"477629\";\"УВАРОВКА\";\"other\"\n\"477656\";\"Uva\";\"main\"\n\"477656\";\"UVA\";\"other\"\n\"477656\";\"Uya\";\"other\"\n\"477656\";\"УВА\";\"other\"\n\"477682\";\"Utsmiyurt\";\"main\"\n\"477682\";\"Utsmijurt\";\"other\"\n\"477682\";\"Utsmu-Yurt\";\"other\"\n\"477682\";\"Уцмиюрт\";\"other\"\n\"477744\";\"Utevka\";\"main\"\n\"477744\";\"Утевка\";\"other\"\n\"477762\";\"Utamysh\";\"main\"\n\"477762\";\"Utamysj\";\"other\"\n\"477762\";\"Утамыш\";\"other\"\n\"477774\";\"Usvyaty\";\"main\"\n\"477774\";\"USVJATY\";\"other\"\n\"477774\";\"Usvjaty\";\"other\"\n\"477774\";\"Usvyat\";\"other\"\n\"477774\";\"УСВЯТЫ\";\"other\"\n\"477789\";\"Usukhchay\";\"main\"\n\"477789\";\"Usukhtsjaj\";\"other\"\n\"477789\";\"Усухчай\";\"other\"\n\"477795\";\"Ustyuzhna\";\"main\"\n\"477795\";\"USTJUZHNA\";\"other\"\n\"477795\";\"Ustjushna\";\"other\"\n\"477795\";\"Ustjuzjna\";\"other\"\n\"477795\";\"УСТЮЖНА\";\"other\"\n\"477846\";\"Ust’ye\";\"main\"\n\"477846\";\"Ust'ye\";\"ascii\"\n\"477846\";\"Ust'ye-Kubinskoye\";\"other\"\n\"477846\";\"Ustje\";\"other\"\n\"477846\";\"Ust’ye-Kubinskoye\";\"other\"\n\"477846\";\"Устье\";\"other\"\n\"477940\";\"Ust’-Tsil’ma\";\"main\"\n\"477940\";\"Ust'-Tsil'ma\";\"ascii\"\n\"477940\";\"Ust'-Cil'ma\";\"other\"\n\"477940\";\"Ust-Tsilma\";\"other\"\n\"477940\";\"Усть-Цильма\";\"other\"\n\"477958\";\"Ust’-Shonosha\";\"main\"\n\"477958\";\"Ust'-Shonosha\";\"ascii\"\n\"477958\";\"Ust'-Shenosha\";\"other\"\n\"477958\";\"Ust'-Shenovskaya\";\"other\"\n\"477958\";\"Ust-Sjonosja\";\"other\"\n\"477958\";\"Ust’-Shenosha\";\"other\"\n\"477958\";\"Ust’-Shenovskaya\";\"other\"\n\"477958\";\"Усть-Шоноша\";\"other\"\n\"478036\";\"Ust’-Luga\";\"main\"\n\"478036\";\"Ust'-Luga\";\"ascii\"\n\"478036\";\"Lujski\";\"other\"\n\"478036\";\"Ust-Luga\";\"other\"\n\"478036\";\"Усть-Луга\";\"other\"\n\"478044\";\"Ust’-Labinsk\";\"main\"\n\"478044\";\"Ust'-Labinsk\";\"ascii\"\n\"478044\";\"Stanitsa Ust'-Labinskaya\";\"other\"\n\"478044\";\"Stanitsa Ust’-Labinskaya\";\"other\"\n\"478044\";\"Ust Labinskaja\";\"other\"\n\"478044\";\"Ust'-Labinskaya\";\"other\"\n\"478044\";\"Ust-Labinsk\";\"other\"\n\"478044\";\"Ust’-Labinskaya\";\"other\"\n\"478044\";\"Усть-Лабинск\";\"other\"\n\"478050\";\"Ust’-Kulom\";\"main\"\n\"478050\";\"Ust'-Kulom\";\"ascii\"\n\"478050\";\"Ust-Kulom\";\"other\"\n\"478050\";\"Усть-Кулом\";\"other\"\n\"478064\";\"Ust'-Kishert'\";\"main\"\n\"478064\";\"Ust-Kisjert\";\"other\"\n\"478064\";\"Усть-Кишерть\";\"other\"\n\"478071\";\"Ust’-Katav\";\"main\"\n\"478071\";\"Ust'-Katav\";\"ascii\"\n\"478071\";\"Ust'-Katavskiy\";\"other\"\n\"478071\";\"Ust-Katav\";\"other\"\n\"478071\";\"Ust’-Katavskiy\";\"other\"\n\"478071\";\"Усть-Катав\";\"other\"\n\"478079\";\"Ust'-Kachka\";\"main\"\n\"478079\";\"Ust-Katsjka\";\"other\"\n\"478079\";\"Усть-Качка\";\"other\"\n\"478080\";\"Ust’-Izhora\";\"main\"\n\"478080\";\"Ust'-Izhora\";\"ascii\"\n\"478080\";\"Izhora\";\"other\"\n\"478080\";\"Izhorski\";\"other\"\n\"478080\";\"Ust-Izjora\";\"other\"\n\"478080\";\"Усть-Ижора\";\"other\"\n\"478130\";\"Ust’-Dzheguta\";\"main\"\n\"478130\";\"Ust'-Dzheguta\";\"ascii\"\n\"478130\";\"Ust'-Dzhegutinskaya\";\"other\"\n\"478130\";\"Ust-Dzjeguta\";\"other\"\n\"478130\";\"Uste Dzhegutinskaya\";\"other\"\n\"478130\";\"Ust’-Dzhegutinskaya\";\"other\"\n\"478130\";\"Усть-Джегута\";\"other\"\n\"478132\";\"Ust’-Donetskiy\";\"main\"\n\"478132\";\"Ust'-Donetskiy\";\"ascii\"\n\"478132\";\"Kreslovskiy\";\"other\"\n\"478132\";\"Krestovskiy\";\"other\"\n\"478132\";\"Ust'-Doneckij\";\"other\"\n\"478132\";\"Ust-Donetskij\";\"other\"\n\"478132\";\"Усть-Донецкий\";\"other\"\n\"478197\";\"Uspenskoye\";\"main\"\n\"478197\";\"Uspenskaja\";\"other\"\n\"478197\";\"Uspenskaya\";\"other\"\n\"478197\";\"Uspenskoe\";\"other\"\n\"478197\";\"Успенская\";\"other\"\n\"478197\";\"Успенское\";\"other\"\n\"478213\";\"Uspenskaya\";\"main\"\n\"478213\";\"Uspenskaja\";\"other\"\n\"478213\";\"Успенская\";\"other\"\n\"478269\";\"Usol'ye\";\"main\"\n\"478269\";\"Usol'e\";\"other\"\n\"478269\";\"Usolje\";\"other\"\n\"478269\";\"Усолье\";\"other\"\n\"478297\";\"Usogorsk\";\"main\"\n\"478297\";\"USOGORSK\";\"other\"\n\"478297\";\"Uzogorsk\";\"other\"\n\"478297\";\"УСОГОРСК\";\"other\"\n\"478317\";\"Usman’\";\"main\"\n\"478317\";\"Usman'\";\"ascii\"\n\"478317\";\"USMAN'\";\"other\"\n\"478317\";\"Usman\";\"other\"\n\"478317\";\"УСМАНЬ\";\"other\"\n\"478317\";\"Усмань\";\"other\"\n\"478344\";\"Usisha\";\"main\"\n\"478344\";\"Usisja\";\"other\"\n\"478344\";\"Усиша\";\"other\"\n\"478532\";\"Urzhum\";\"main\"\n\"478532\";\"URZHUM\";\"other\"\n\"478532\";\"Urzjum\";\"other\"\n\"478532\";\"УРЖУМ\";\"other\"\n\"478538\";\"Uryv-Pokrovka\";\"main\"\n\"478538\";\"Uryv\";\"other\"\n\"478538\";\"Uryv-Pokovka\";\"other\"\n\"478538\";\"Uryvo-Pokrovskoye\";\"other\"\n\"478538\";\"Урыв\";\"other\"\n\"478538\";\"Урыв-Покровка\";\"other\"\n\"478544\";\"Uryupinsk\";\"main\"\n\"478544\";\"Urjupinsk\";\"other\"\n\"478544\";\"Vrjupinsk\";\"other\"\n\"478544\";\"Урюпинск\";\"other\"\n\"478563\";\"Urvan’\";\"main\"\n\"478563\";\"Urvan'\";\"ascii\"\n\"478563\";\"Urvan\";\"other\"\n\"478563\";\"Урвань\";\"other\"\n\"478565\";\"Urussu\";\"main\"\n\"478565\";\"URUSSU\";\"other\"\n\"478565\";\"УРУССУ\";\"other\"\n\"478581\";\"Urus-Martan\";\"main\"\n\"478581\";\"Krasnoarmeyskoye\";\"other\"\n\"478581\";\"Oeroes-Martan\";\"other\"\n\"478581\";\"Ourous-Martan\";\"other\"\n\"478581\";\"URUS-MARTAN\";\"other\"\n\"478581\";\"Urús-Martan\";\"other\"\n\"478581\";\"uluseumaleutan\";\"other\"\n\"478581\";\"УРУС-МАРТАН\";\"other\"\n\"478581\";\"Урус-Мартан\";\"other\"\n\"478581\";\"ХӀахӀа-Марта\";\"other\"\n\"478581\";\"ウルス・マルタン\";\"other\"\n\"478581\";\"우루스마르탄\";\"other\"\n\"478601\";\"Urukh\";\"main\"\n\"478601\";\"Урух\";\"other\"\n\"478620\";\"Urshel’skiy\";\"main\"\n\"478620\";\"Urshel'skiy\";\"ascii\"\n\"478620\";\"Rabochiy Poselok Urshel\";\"other\"\n\"478620\";\"Rabochiy Posëlok Urshel\";\"other\"\n\"478620\";\"Urshel'\";\"other\"\n\"478620\";\"Urshel'skij\";\"other\"\n\"478620\";\"Urshel’\";\"other\"\n\"478620\";\"Urshetskiy\";\"other\"\n\"478620\";\"Ursjelskij\";\"other\"\n\"478620\";\"Уршельский\";\"other\"\n\"478640\";\"Urozhaynoye\";\"main\"\n\"478640\";\"Urozhajnoe\";\"other\"\n\"478640\";\"Urozjajnoje\";\"other\"\n\"478640\";\"Урожайное\";\"other\"\n\"478689\";\"Urmary\";\"main\"\n\"478689\";\"URMARY\";\"other\"\n\"478689\";\"УРМАРЫ\";\"other\"\n\"478699\";\"Urman\";\"main\"\n\"478699\";\"URMAN\";\"other\"\n\"478699\";\"УРМАН\";\"other\"\n\"478699\";\"Урман\";\"other\"\n\"478704\";\"Urma\";\"main\"\n\"478704\";\"Урма\";\"other\"\n\"478711\";\"Urkarakh\";\"main\"\n\"478711\";\"Уркарах\";\"other\"\n\"478757\";\"Uren’\";\"main\"\n\"478757\";\"Uren'\";\"ascii\"\n\"478757\";\"UREN'\";\"other\"\n\"478757\";\"Uren\";\"other\"\n\"478757\";\"УРЕНЬ\";\"other\"\n\"478769\";\"Urdoma\";\"main\"\n\"478769\";\"Nyanda\";\"other\"\n\"478769\";\"URDOMA\";\"other\"\n\"478769\";\"УРДОМА\";\"other\"\n\"478769\";\"Урдома\";\"other\"\n\"478781\";\"Urazovo\";\"main\"\n\"478781\";\"Urazov\";\"other\"\n\"478781\";\"Urazova\";\"other\"\n\"478781\";\"Уразово\";\"other\"\n\"478782\";\"Urazovka\";\"main\"\n\"478782\";\"Aptyarovka\";\"other\"\n\"478782\";\"Уразовка\";\"other\"\n\"478849\";\"Uralets\";\"main\"\n\"478849\";\"Krasny Priisk\";\"other\"\n\"478849\";\"Krasnyy Ural\";\"other\"\n\"478849\";\"Krasnyy Ural Priisk\";\"other\"\n\"478849\";\"Uralec\";\"other\"\n\"478849\";\"Uraleis\";\"other\"\n\"478849\";\"Уралец\";\"other\"\n\"478920\";\"Upornaya\";\"main\"\n\"478920\";\"Upornaja\";\"other\"\n\"478920\";\"Упорная\";\"other\"\n\"478963\";\"Untsukul’\";\"main\"\n\"478963\";\"Untsukul'\";\"ascii\"\n\"478963\";\"Uncukul'\";\"other\"\n\"478963\";\"Untsukul\";\"other\"\n\"478963\";\"Untsukuli\";\"other\"\n\"478963\";\"Унцукль\";\"other\"\n\"478963\";\"Унцукуль\";\"other\"\n\"478996\";\"Uni\";\"main\"\n\"478996\";\"UNI\";\"other\"\n\"478996\";\"УНИ\";\"other\"\n\"479021\";\"Undory\";\"main\"\n\"479021\";\"Bol'shiye Undory\";\"other\"\n\"479021\";\"Bol’shiye Undory\";\"other\"\n\"479021\";\"Ундоры\";\"other\"\n\"479028\";\"Unecha\";\"main\"\n\"479028\";\"UNECHA\";\"other\"\n\"479028\";\"Uncha\";\"other\"\n\"479028\";\"Unetscha\";\"other\"\n\"479028\";\"Unetsja\";\"other\"\n\"479028\";\"УНЕЧА\";\"other\"\n\"479028\";\"Унеча\";\"other\"\n\"479055\";\"Umet\";\"main\"\n\"479055\";\"Umjot\";\"other\"\n\"479055\";\"Умёт\";\"other\"\n\"479071\";\"Umba\";\"main\"\n\"479071\";\"Lesnoi\";\"other\"\n\"479071\";\"Lesnoy\";\"other\"\n\"479071\";\"Lessnoi\";\"other\"\n\"479071\";\"Poselok Lesnoy\";\"other\"\n\"479071\";\"Posëlok Lesnoy\";\"other\"\n\"479071\";\"UMBA\";\"other\"\n\"479071\";\"УМБА\";\"other\"\n\"479123\";\"Ul'yanovsk\";\"main\"\n\"479123\";\"Simbirsk\";\"other\"\n\"479123\";\"Sinbirsk\";\"other\"\n\"479123\";\"UL'JANOVSK\";\"other\"\n\"479123\";\"Ul'janovsk\";\"other\"\n\"479123\";\"Uljanowsk\";\"other\"\n\"479123\";\"Uljanowska am Wolga\";\"other\"\n\"479123\";\"Синбирск\";\"other\"\n\"479123\";\"УЛЬЯНОВСК\";\"other\"\n\"479123\";\"Ульяновск\";\"other\"\n\"479140\";\"Ul’yanovka\";\"main\"\n\"479140\";\"Ul'yanovka\";\"ascii\"\n\"479140\";\"Possyelok Ulyanovka\";\"other\"\n\"479140\";\"UL'JANOVKA\";\"other\"\n\"479140\";\"Uljanovka\";\"other\"\n\"479140\";\"УЛЬЯНОВКА\";\"other\"\n\"479198\";\"Ulu-Telyak\";\"main\"\n\"479198\";\"ULU-TELJAK\";\"other\"\n\"479198\";\"Ulu-Teljak\";\"other\"\n\"479198\";\"УЛУ-ТЕЛЯК\";\"other\"\n\"479198\";\"Улу-Теляк\";\"other\"\n\"479201\";\"Ulukulevo\";\"main\"\n\"479201\";\"Улукулево\";\"other\"\n\"479241\";\"Ullubiyaul\";\"main\"\n\"479241\";\"Ullubij-Aul\";\"other\"\n\"479241\";\"Ullubijaul\";\"other\"\n\"479241\";\"Уллубий-Аул\";\"other\"\n\"479241\";\"Уллубийаул\";\"other\"\n\"479242\";\"Ulluaya\";\"main\"\n\"479242\";\"Ullu-Aja\";\"other\"\n\"479242\";\"Ulluaja\";\"other\"\n\"479242\";\"Уллу-Ая\";\"other\"\n\"479242\";\"Уллуая\";\"other\"\n\"479411\";\"Ukhta\";\"main\"\n\"479411\";\"Chib'yu\";\"other\"\n\"479411\";\"Chib’yu\";\"other\"\n\"479411\";\"Oechta\";\"other\"\n\"479411\";\"UKHTA\";\"other\"\n\"479411\";\"Uchta\";\"other\"\n\"479411\";\"Uhta\";\"other\"\n\"479411\";\"Ujta\";\"other\"\n\"479411\";\"Ujtá\";\"other\"\n\"479411\";\"Uĥta\";\"other\"\n\"479411\";\"uheuta\";\"other\"\n\"479411\";\"УХТА\";\"other\"\n\"479411\";\"Ухта\";\"other\"\n\"479411\";\"우흐타\";\"other\"\n\"479426\";\"Ukholovo\";\"main\"\n\"479426\";\"UKHOLOVO\";\"other\"\n\"479426\";\"УХОЛОВО\";\"other\"\n\"479442\";\"Uinskoye\";\"main\"\n\"479442\";\"Uinskoje\";\"other\"\n\"479442\";\"Уинское\";\"other\"\n\"479471\";\"Ugra\";\"main\"\n\"479471\";\"UGRA\";\"other\"\n\"479471\";\"УГРА\";\"other\"\n\"479512\";\"Uglyanets\";\"main\"\n\"479512\";\"Ugljanec\";\"other\"\n\"479512\";\"Ugljanets\";\"other\"\n\"479512\";\"Углянец\";\"other\"\n\"479523\";\"Uglovka\";\"main\"\n\"479523\";\"UGLOVKA\";\"other\"\n\"479523\";\"УГЛОВКА\";\"other\"\n\"479532\";\"Uglich\";\"main\"\n\"479532\";\"Oeglitsj\";\"other\"\n\"479532\";\"Ouglitch\";\"other\"\n\"479532\";\"UGLICH\";\"other\"\n\"479532\";\"Uglic\";\"other\"\n\"479532\";\"Uglicz\";\"other\"\n\"479532\";\"Uglitsch\";\"other\"\n\"479532\";\"Ugliĉ\";\"other\"\n\"479532\";\"ugeullichi\";\"other\"\n\"479532\";\"УГЛИЧ\";\"other\"\n\"479532\";\"Углич\";\"other\"\n\"479532\";\"우글리치\";\"other\"\n\"479535\";\"Ugleural'skiy\";\"main\"\n\"479535\";\"Polovinka\";\"other\"\n\"479535\";\"UGLEURAL'SKIJ\";\"other\"\n\"479535\";\"Ugeural'skiy\";\"other\"\n\"479535\";\"Ugleuralskij\";\"other\"\n\"479535\";\"Половинка\";\"other\"\n\"479535\";\"УГЛЕУРАЛЬСКИЙ\";\"other\"\n\"479537\";\"Uglerodovskiy\";\"main\"\n\"479537\";\"Poselok Shakhty Uglerod\";\"other\"\n\"479537\";\"Roseta\";\"other\"\n\"479537\";\"Rozeta\";\"other\"\n\"479537\";\"UGLERODOVSKIJ\";\"other\"\n\"479537\";\"Uglerod\";\"other\"\n\"479537\";\"Uglerodovskij\";\"other\"\n\"479537\";\"УГЛЕРОДОВСКИЙ\";\"other\"\n\"479537\";\"Углеродовсий\";\"other\"\n\"479539\";\"Uglegorskiy\";\"main\"\n\"479539\";\"Uglegorskij\";\"other\"\n\"479539\";\"Углегорский\";\"other\"\n\"479553\";\"Ufimskiy\";\"main\"\n\"479553\";\"UFIMSKIJ\";\"other\"\n\"479553\";\"Ufimka\";\"other\"\n\"479553\";\"Ufimskij\";\"other\"\n\"479553\";\"УФИМСКИЙ\";\"other\"\n\"479561\";\"Ufa\";\"main\"\n\"479561\";\"Ephu\";\"other\"\n\"479561\";\"Oefa\";\"other\"\n\"479561\";\"Oufa\";\"other\"\n\"479561\";\"UFA\";\"other\"\n\"479561\";\"Ufà\";\"other\"\n\"479561\";\"Ufа\";\"other\"\n\"479561\";\"ufa\";\"other\"\n\"479561\";\"upa\";\"other\"\n\"479561\";\"Ĕпхӳ\";\"other\"\n\"479561\";\"УФА\";\"other\"\n\"479561\";\"Уфа\";\"other\"\n\"479561\";\"Өфө\";\"other\"\n\"479561\";\"אופה\";\"other\"\n\"479561\";\"ウファ\";\"other\"\n\"479561\";\"우파\";\"other\"\n\"479596\";\"Udobnaya\";\"main\"\n\"479596\";\"Udobnaja\";\"other\"\n\"479596\";\"Удобная\";\"other\"\n\"479619\";\"Udimskiy\";\"main\"\n\"479619\";\"UDIMSKIJ\";\"other\"\n\"479619\";\"Udimskij\";\"other\"\n\"479619\";\"УДИМСКИЙ\";\"other\"\n\"479640\";\"Udel’naya\";\"main\"\n\"479640\";\"Udel'naya\";\"ascii\"\n\"479640\";\"Udel'naja\";\"other\"\n\"479640\";\"Udel'noye\";\"other\"\n\"479640\";\"Udel’noye\";\"other\"\n\"479640\";\"Удельная\";\"other\"\n\"479685\";\"Uchkulan\";\"main\"\n\"479685\";\"Madniskhevi\";\"other\"\n\"479685\";\"Uchkulon\";\"other\"\n\"479685\";\"Utschkulon\";\"other\"\n\"479685\";\"Utsjkulan\";\"other\"\n\"479685\";\"Учкулан\";\"other\"\n\"479687\";\"Uchkeken\";\"main\"\n\"479687\";\"Utsjkeken\";\"other\"\n\"479687\";\"Учкекен\";\"other\"\n\"479704\";\"Uchaly\";\"main\"\n\"479704\";\"Utsjaly\";\"other\"\n\"479704\";\"Учалы\";\"other\"\n\"479850\";\"Tyulyachi\";\"main\"\n\"479850\";\"Tjuljachi\";\"other\"\n\"479850\";\"Tjuljatsji\";\"other\"\n\"479850\";\"Тюлячи\";\"other\"\n\"479871\";\"Tyul’gan\";\"main\"\n\"479871\";\"Tyul'gan\";\"ascii\"\n\"479871\";\"Tjul'gan\";\"other\"\n\"479871\";\"Tjulgan\";\"other\"\n\"479871\";\"Тюльган\";\"other\"\n\"479933\";\"Tyrnyauz\";\"main\"\n\"479933\";\"TYRNYAUZ\";\"other\"\n\"479933\";\"Tyrny-Aus\";\"other\"\n\"479933\";\"ТЫРНЫАУЗ\";\"other\"\n\"479999\";\"Tyarlevo\";\"main\"\n\"479999\";\"TJARLEVO\";\"other\"\n\"479999\";\"Tjarlevo\";\"other\"\n\"479999\";\"ТЯРЛЕВО\";\"other\"\n\"480060\";\"Tver'\";\"main\"\n\"480060\";\"C'ver\";\"other\"\n\"480060\";\"Kalinin\";\"other\"\n\"480060\";\"Tueria\";\"other\"\n\"480060\";\"Tver\";\"other\"\n\"480060\";\"Twer\";\"other\"\n\"480060\";\"teubeli\";\"other\"\n\"480060\";\"tovu~eri\";\"other\"\n\"480060\";\"Калинин\";\"other\"\n\"480060\";\"Тверь\";\"other\"\n\"480060\";\"Цьвер\";\"other\"\n\"480060\";\"トヴェリ\";\"other\"\n\"480060\";\"트베리\";\"other\"\n\"480085\";\"Tuzha\";\"main\"\n\"480085\";\"TUZHA\";\"other\"\n\"480085\";\"Tuzja\";\"other\"\n\"480085\";\"ТУЖА\";\"other\"\n\"480089\";\"Tuymazy\";\"main\"\n\"480089\";\"TUJMAZY\";\"other\"\n\"480089\";\"Tuimasa\";\"other\"\n\"480089\";\"Tuimazy\";\"other\"\n\"480089\";\"Tujmazi\";\"other\"\n\"480089\";\"Tujmazy\";\"other\"\n\"480089\";\"Tuymaza\";\"other\"\n\"480089\";\"ТУЙМАЗЫ\";\"other\"\n\"480089\";\"Туймазы\";\"other\"\n\"480122\";\"Tutayev\";\"main\"\n\"480122\";\"Romanovo-Borisoglebsk\";\"other\"\n\"480122\";\"TUTAEV\";\"other\"\n\"480122\";\"Tutajev\";\"other\"\n\"480122\";\"Tutamev\";\"other\"\n\"480122\";\"Tutayevo\";\"other\"\n\"480122\";\"ТУТАЕВ\";\"other\"\n\"480122\";\"Тутаев\";\"other\"\n\"480267\";\"Turki\";\"main\"\n\"480267\";\"TURKI\";\"other\"\n\"480267\";\"ТУРКИ\";\"other\"\n\"480267\";\"Турки\";\"other\"\n\"480301\";\"Turgenevo\";\"main\"\n\"480301\";\"TURGENEVO\";\"other\"\n\"480301\";\"ТУРГЕНЕВО\";\"other\"\n\"480410\";\"Tunoshna\";\"main\"\n\"480410\";\"Tunoshnoye\";\"other\"\n\"480410\";\"Tunosjna\";\"other\"\n\"480410\";\"Туношна\";\"other\"\n\"480484\";\"Tuma\";\"main\"\n\"480484\";\"TUMA\";\"other\"\n\"480484\";\"ТУМА\";\"other\"\n\"480562\";\"Tula\";\"main\"\n\"480562\";\"Toela\";\"other\"\n\"480562\";\"Toula\";\"other\"\n\"480562\";\"Tuła\";\"other\"\n\"480562\";\"tulla\";\"other\"\n\"480562\";\"Τούλα\";\"other\"\n\"480562\";\"Тула\";\"other\"\n\"480562\";\"툴라\";\"other\"\n\"480637\";\"Tukan\";\"main\"\n\"480637\";\"TUKAN\";\"other\"\n\"480637\";\"ТУКАН\";\"other\"\n\"480654\";\"Tugolesskiy Bor\";\"main\"\n\"480654\";\"Tugolesskij Bor\";\"other\"\n\"480654\";\"Туголесский Бор\";\"other\"\n\"480685\";\"Tuchkovo\";\"main\"\n\"480685\";\"TUCHKOVO\";\"other\"\n\"480685\";\"Tutsjkovo\";\"other\"\n\"480685\";\"ТУЧКОВО\";\"other\"\n\"480704\";\"Tubinskiy\";\"main\"\n\"480704\";\"TUBINSKIJ\";\"other\"\n\"480704\";\"Tubinskij\";\"other\"\n\"480704\";\"Tubinskiy Rudnik\";\"other\"\n\"480704\";\"ТУБИНСКИЙ\";\"other\"\n\"480716\";\"Tuapse\";\"main\"\n\"480716\";\"TUAPSE\";\"other\"\n\"480716\";\"Toeapse\";\"other\"\n\"480716\";\"Tuapsse\";\"other\"\n\"480716\";\"tuabse\";\"other\"\n\"480716\";\"ТУАПСЕ\";\"other\"\n\"480716\";\"Туапсе\";\"other\"\n\"480716\";\"투압세\";\"other\"\n\"480798\";\"Tsurib\";\"main\"\n\"480798\";\"Цуриб\";\"other\"\n\"480851\";\"Tsivil’sk\";\"main\"\n\"480851\";\"Tsivil'sk\";\"ascii\"\n\"480851\";\"CIVIL'SK\";\"other\"\n\"480851\";\"Tsibil'sk\";\"other\"\n\"480851\";\"Tsibil’sk\";\"other\"\n\"480851\";\"Tsivilsk\";\"other\"\n\"480851\";\"ЦИВИЛЬСК\";\"other\"\n\"480876\";\"Tsimlyansk\";\"main\"\n\"480876\";\"CIMLJANSK\";\"other\"\n\"480876\";\"Tsimljansk\";\"other\"\n\"480876\";\"Tsimlyanskaya\";\"other\"\n\"480876\";\"Tsimlyanskiy\";\"other\"\n\"480876\";\"Tsymlyanskaya\";\"other\"\n\"480876\";\"Zymljanskaja\";\"other\"\n\"480876\";\"ЦИМЛЯНСК\";\"other\"\n\"480884\";\"Tsil’na\";\"main\"\n\"480884\";\"Tsil'na\";\"ascii\"\n\"480884\";\"CIL'NA\";\"other\"\n\"480884\";\"Tsil'ninskiy\";\"other\"\n\"480884\";\"Tsilna\";\"other\"\n\"480884\";\"Tsil’ninskiy\";\"other\"\n\"480884\";\"ЦИЛЬНА\";\"other\"\n\"481007\";\"Tsentoroy\";\"main\"\n\"481007\";\"Centoroj\";\"other\"\n\"481007\";\"Tsatani\";\"other\"\n\"481007\";\"Tsatanikh\";\"other\"\n\"481007\";\"Tsatanykh\";\"other\"\n\"481007\";\"Tsentoroj\";\"other\"\n\"481007\";\"Tsontoroy\";\"other\"\n\"481007\";\"Центорой\";\"other\"\n\"481036\";\"Tselina\";\"main\"\n\"481036\";\"Zelina\";\"other\"\n\"481036\";\"Целина\";\"other\"\n\"481117\";\"Tsagan Aman\";\"main\"\n\"481117\";\"Burunnyy\";\"other\"\n\"481117\";\"Burunskiy\";\"other\"\n\"481117\";\"CAGAN AMAN\";\"other\"\n\"481117\";\"Stavka\";\"other\"\n\"481117\";\"ЦАГАН АМАН\";\"other\"\n\"481181\";\"Trunovskoye\";\"main\"\n\"481181\";\"Ternovka\";\"other\"\n\"481181\";\"Ternovskoye\";\"other\"\n\"481181\";\"Trunovskoe\";\"other\"\n\"481181\";\"Trunovskoje\";\"other\"\n\"481181\";\"Труновское\";\"other\"\n\"481275\";\"Trudobelikovskiy\";\"main\"\n\"481275\";\"Trudobelikovskij\";\"other\"\n\"481275\";\"Трудобеликовский\";\"other\"\n\"481350\";\"Trubchevsk\";\"main\"\n\"481350\";\"Trubchëvsk\";\"other\"\n\"481350\";\"Trubtschewsk\";\"other\"\n\"481350\";\"Trubtsjevsk\";\"other\"\n\"481350\";\"Трубчевск\";\"other\"\n\"481439\";\"Trosna\";\"main\"\n\"481439\";\"Efratovo\";\"other\"\n\"481439\";\"Yefratovo\";\"other\"\n\"481439\";\"Тросна\";\"other\"\n\"481498\";\"Troitskoye\";\"main\"\n\"481542\";\"Troitskoye\";\"main\"\n\"481542\";\"Bulgun\";\"other\"\n\"481542\";\"Troickoe\";\"other\"\n\"481542\";\"Troitskoje\";\"other\"\n\"481542\";\"Троицкое\";\"other\"\n\"481543\";\"Troitskoye\";\"main\"\n\"481543\";\"Troitskiy\";\"other\"\n\"481543\";\"Troitskoje\";\"other\"\n\"481543\";\"Троицкое\";\"other\"\n\"481548\";\"Troitsko-Pechorsk\";\"main\"\n\"481548\";\"TROICKO PECHORSK\";\"other\"\n\"481548\";\"Troitsko Petsjorsk\";\"other\"\n\"481548\";\"Troitsko-Pechorskoye\";\"other\"\n\"481548\";\"ТРОИЦКО ПЕЧОРСК\";\"other\"\n\"481580\";\"Troitskiy\";\"main\"\n\"481604\";\"Troitskaya\";\"main\"\n\"481604\";\"Troickaja\";\"other\"\n\"481604\";\"Troitskaja\";\"other\"\n\"481604\";\"Троицкая\";\"other\"\n\"481605\";\"Troitskaya\";\"main\"\n\"481605\";\"Troickaja\";\"other\"\n\"481605\";\"Troitskaja\";\"other\"\n\"481605\";\"Троицкая\";\"other\"\n\"481608\";\"Troitsk\";\"main\"\n\"481608\";\"TROICK\";\"other\"\n\"481608\";\"Troitskiy\";\"other\"\n\"481608\";\"Troitskoye\";\"other\"\n\"481608\";\"ТРОИЦК\";\"other\"\n\"481900\";\"Tpig\";\"main\"\n\"481900\";\"Тпиг\";\"other\"\n\"481938\";\"Tovarkovskiy\";\"main\"\n\"481938\";\"Imeni Kaganovicha\";\"other\"\n\"481938\";\"Kaganovich\";\"other\"\n\"481938\";\"TOVARKOVSKIJ\";\"other\"\n\"481938\";\"Tovarkovo\";\"other\"\n\"481938\";\"ТОВАРКОВСКИЙ\";\"other\"\n\"481938\";\"Товарково\";\"other\"\n\"481938\";\"Товарковский\";\"other\"\n\"481941\";\"Tovarkovo\";\"main\"\n\"481941\";\"TOVARKOVO\";\"other\"\n\"481941\";\"ТОВАРКОВО\";\"other\"\n\"481955\";\"Totskoye\";\"main\"\n\"481955\";\"Totskaya\";\"other\"\n\"481955\";\"Totskoje\";\"other\"\n\"481955\";\"Tozkoje\";\"other\"\n\"481955\";\"Тоцкое\";\"other\"\n\"481960\";\"Tot’ma\";\"main\"\n\"481960\";\"Tot'ma\";\"ascii\"\n\"481960\";\"Totma\";\"other\"\n\"481960\";\"Тотьма\";\"other\"\n\"481964\";\"Tosno\";\"main\"\n\"481964\";\"TOSNO\";\"other\"\n\"481964\";\"ТОСНО\";\"other\"\n\"481985\";\"Torzhok\";\"main\"\n\"481985\";\"TORZHOK\";\"other\"\n\"481985\";\"Torshok\";\"other\"\n\"481985\";\"Torzjok\";\"other\"\n\"481985\";\"ТОРЖОК\";\"other\"\n\"482042\";\"Toropets\";\"main\"\n\"482042\";\"TOROPEC\";\"other\"\n\"482042\";\"Toropez\";\"other\"\n\"482042\";\"ТОРОПЕЦ\";\"other\"\n\"482096\";\"Torfyanoy\";\"main\"\n\"482096\";\"TORFJANOJ\";\"other\"\n\"482096\";\"Torfjanoj\";\"other\"\n\"482096\";\"ТОРФЯНОЙ\";\"other\"\n\"482123\";\"Torbeyevo\";\"main\"\n\"482123\";\"TORBEEVO\";\"other\"\n\"482123\";\"Torbejevo\";\"other\"\n\"482123\";\"ТОРБЕЕВО\";\"other\"\n\"482219\";\"Tonshayevo\";\"main\"\n\"482219\";\"TONSHAEVO\";\"other\"\n\"482219\";\"Tonsjajevo\";\"other\"\n\"482219\";\"ТОНШАЕВО\";\"other\"\n\"482230\";\"Tonkino\";\"main\"\n\"482230\";\"TONKINO\";\"other\"\n\"482230\";\"ТОНКИНО\";\"other\"\n\"482260\";\"Tomilino\";\"main\"\n\"482260\";\"Томилино\";\"other\"\n\"482275\";\"Tomarovka\";\"main\"\n\"482275\";\"Томаровка\";\"other\"\n\"482283\";\"Tol’yatti\";\"main\"\n\"482283\";\"Tol'yatti\";\"ascii\"\n\"482283\";\"Stavropol'\";\"other\"\n\"482283\";\"Stavropol’\";\"other\"\n\"482283\";\"Stawropol\";\"other\"\n\"482283\";\"TOL'JATTI\";\"other\"\n\"482283\";\"Togliatti\";\"other\"\n\"482283\";\"Togliatti-on-the-Volga\";\"other\"\n\"482283\";\"Togliattigrad\";\"other\"\n\"482283\";\"Tol'jatti\";\"other\"\n\"482283\";\"Tolati\";\"other\"\n\"482283\";\"Toljati\";\"other\"\n\"482283\";\"Toljatti\";\"other\"\n\"482283\";\"Tolyatti\";\"other\"\n\"482283\";\"tollyati\";\"other\"\n\"482283\";\"toriyatchi\";\"other\"\n\"482283\";\"Ставрополь\";\"other\"\n\"482283\";\"ТОЛЬЯТТИ\";\"other\"\n\"482283\";\"Тольятти\";\"other\"\n\"482283\";\"Тољати\";\"other\"\n\"482283\";\"トリヤッチ\";\"other\"\n\"482283\";\"톨랴티\";\"other\"\n\"482309\";\"Tolstoy-Yurt\";\"main\"\n\"482309\";\"Stari Yurt\";\"other\"\n\"482309\";\"Staryy Yurt\";\"other\"\n\"482309\";\"Tolstoj-Jurt\";\"other\"\n\"482309\";\"Tolstov-Yurt\";\"other\"\n\"482309\";\"Tolstovo\";\"other\"\n\"482309\";\"Толстой-Юрт\";\"other\"\n\"482329\";\"Tolstopal’tsevo\";\"main\"\n\"482329\";\"Tolstopal'tsevo\";\"ascii\"\n\"482329\";\"Poselok Tolstopal'tsevo\";\"other\"\n\"482329\";\"Posëlok Tolstopal’tsevo\";\"other\"\n\"482390\";\"Tolmachevo\";\"main\"\n\"482390\";\"TOLMACHEVO\";\"other\"\n\"482390\";\"Tolmatsjevo\";\"other\"\n\"482390\";\"ТОЛМАЧЕВО\";\"other\"\n\"482432\";\"Tolbazy\";\"main\"\n\"482432\";\"Толбазы\";\"other\"\n\"482443\";\"Toksovo\";\"main\"\n\"482443\";\"TOKSOVO\";\"other\"\n\"482443\";\"Toksova\";\"other\"\n\"482443\";\"ТОКСОВО\";\"other\"\n\"482582\";\"Tlyustenkhabl’\";\"main\"\n\"482582\";\"Tlyustenkhabl'\";\"ascii\"\n\"482582\";\"TLJUSTINKHABL'\";\"other\"\n\"482582\";\"Tljustenchablj\";\"other\"\n\"482582\";\"Tljustenkhabl'\";\"other\"\n\"482582\";\"ТЛЮСТИНХАБЛЬ\";\"other\"\n\"482582\";\"Тлюстенхабль\";\"other\"\n\"482589\";\"Tlyarata\";\"main\"\n\"482589\";\"Tljarata\";\"other\"\n\"482589\";\"Tlyarota\";\"other\"\n\"482589\";\"Тлярата\";\"other\"\n\"482742\";\"Tishchenskoye\";\"main\"\n\"482742\";\"Gishchenskoye\";\"other\"\n\"482742\";\"Tishhenskoe\";\"other\"\n\"482742\";\"Tisjtsjenskoje\";\"other\"\n\"482742\";\"Тищенское\";\"other\"\n\"482761\";\"Tirlyanskiy\";\"main\"\n\"482761\";\"TIRLJANSKIJ\";\"other\"\n\"482761\";\"Tirljanskij\";\"other\"\n\"482761\";\"Tirlyanskiy Zavod\";\"other\"\n\"482761\";\"ТИРЛЯНСКИЙ\";\"other\"\n\"482986\";\"Tim\";\"main\"\n\"482986\";\"TIM\";\"other\"\n\"482986\";\"ТИМ\";\"other\"\n\"483019\";\"Tikhvin\";\"main\"\n\"483019\";\"TIKHVIN\";\"other\"\n\"483019\";\"Tichwin\";\"other\"\n\"483019\";\"Tihvin\";\"other\"\n\"483019\";\"Tihvinae\";\"other\"\n\"483019\";\"Tihvinä\";\"other\"\n\"483019\";\"Tiĥvin\";\"other\"\n\"483019\";\"tiheubin\";\"other\"\n\"483019\";\"tikhvin\";\"other\"\n\"483019\";\"ТИХВИН\";\"other\"\n\"483019\";\"Тихвин\";\"other\"\n\"483019\";\"티흐빈\";\"other\"\n\"483029\";\"Tikhoretsk\";\"main\"\n\"483029\";\"Tichorezk\";\"other\"\n\"483029\";\"Tihoreck\";\"other\"\n\"483029\";\"Tikhoreck\";\"other\"\n\"483029\";\"Tiĥoreck\";\"other\"\n\"483029\";\"Тихорецк\";\"other\"\n\"483137\";\"Teykovo\";\"main\"\n\"483137\";\"TEJKOVO\";\"other\"\n\"483137\";\"Teikowo\";\"other\"\n\"483137\";\"Tejkovo\";\"other\"\n\"483137\";\"ТЕЙКОВО\";\"other\"\n\"483137\";\"Тейково\";\"other\"\n\"483142\";\"Adygeysk\";\"main\"\n\"483142\";\"ADYGEJSK\";\"other\"\n\"483142\";\"Adigejsk\";\"other\"\n\"483142\";\"Adigeysk\";\"other\"\n\"483142\";\"Adygeisk\";\"other\"\n\"483142\";\"Adygeiskas\";\"other\"\n\"483142\";\"Adygejsk\";\"other\"\n\"483142\";\"Teuchezhsk\";\"other\"\n\"483142\";\"adigeiseukeu\";\"other\"\n\"483142\";\"adigejsk\";\"other\"\n\"483142\";\"adygejsk\";\"other\"\n\"483142\";\"АДЫГЕЙСК\";\"other\"\n\"483142\";\"Адигејск\";\"other\"\n\"483142\";\"Адыгейск\";\"other\"\n\"483142\";\"아디게이스크\";\"other\"\n\"483150\";\"Tetyushi\";\"main\"\n\"483150\";\"TETJUSHI\";\"other\"\n\"483150\";\"Tetjusji\";\"other\"\n\"483150\";\"ТЕТЮШИ\";\"other\"\n\"483240\";\"Teryayevo\";\"main\"\n\"483240\";\"Terjaevo\";\"other\"\n\"483240\";\"Teryayeva Sloboda\";\"other\"\n\"483240\";\"Теряево\";\"other\"\n\"483269\";\"Terskol\";\"main\"\n\"483269\";\"Терскол\";\"other\"\n\"483281\";\"Terskaya\";\"main\"\n\"483281\";\"Terskaja\";\"other\"\n\"483281\";\"Терская\";\"other\"\n\"483326\";\"Ternovskaya\";\"main\"\n\"483326\";\"Ternovskaja\";\"other\"\n\"483326\";\"Терновская\";\"other\"\n\"483341\";\"Ternovka\";\"main\"\n\"483341\";\"Терновка\";\"other\"\n\"483379\";\"Teribërka\";\"main\"\n\"483379\";\"Teriberka\";\"ascii\"\n\"483379\";\"TERIBERKA\";\"other\"\n\"483379\";\"ТЕРИБЕРКА\";\"other\"\n\"483386\";\"Tereze\";\"main\"\n\"483386\";\"Терезе\";\"other\"\n\"483439\";\"Terekli-Mekteb\";\"main\"\n\"483439\";\"Терекли-Мектеб\";\"other\"\n\"483495\";\"Terek\";\"main\"\n\"483495\";\"TEREK\";\"other\"\n\"483495\";\"ТЕРЕК\";\"other\"\n\"483495\";\"Терек\";\"other\"\n\"483541\";\"Terbuny\";\"main\"\n\"483541\";\"Тербуны\";\"other\"\n\"483575\";\"Tëploye\";\"main\"\n\"483575\";\"Teploye\";\"ascii\"\n\"483575\";\"Teploe\";\"other\"\n\"483575\";\"Teploje\";\"other\"\n\"483575\";\"Теплое\";\"other\"\n\"483613\";\"Tëplaya Gora\";\"main\"\n\"483613\";\"Teplaya Gora\";\"ascii\"\n\"483613\";\"TEPLAJA GORA\";\"other\"\n\"483613\";\"Teplaja Gora\";\"other\"\n\"483613\";\"ТЕПЛАЯ ГОРА\";\"other\"\n\"483642\";\"Ten’gushevo\";\"main\"\n\"483642\";\"Ten'gushevo\";\"ascii\"\n\"483642\";\"Tengusjevo\";\"other\"\n\"483642\";\"Теньгушево\";\"other\"\n\"483650\";\"Temyasovo\";\"main\"\n\"483650\";\"Temjasovo\";\"other\"\n\"483650\";\"Темясово\";\"other\"\n\"483661\";\"Temryuk\";\"main\"\n\"483661\";\"TEMRJUK\";\"other\"\n\"483661\";\"Temrjuk\";\"other\"\n\"483661\";\"Tyemryuk\";\"other\"\n\"483661\";\"ТЕМРЮК\";\"other\"\n\"483684\";\"Temnikov\";\"main\"\n\"483684\";\"TEMNIKOV\";\"other\"\n\"483684\";\"ТЕМНИКОВ\";\"other\"\n\"483689\";\"Tëmkino\";\"main\"\n\"483689\";\"Temkino\";\"ascii\"\n\"483689\";\"Tjomkino\";\"other\"\n\"483689\";\"Тёмкино\";\"other\"\n\"483691\";\"Temizhbekskaya\";\"main\"\n\"483691\";\"Temizhbekskij\";\"other\"\n\"483691\";\"Temizhbekskiy\";\"other\"\n\"483691\";\"Temizjbekskij\";\"other\"\n\"483691\";\"Темижбекский\";\"other\"\n\"483692\";\"Temizhbekskaya\";\"main\"\n\"483692\";\"Temizhbekskaja\";\"other\"\n\"483692\";\"Temizjbekskaja\";\"other\"\n\"483692\";\"Tyemizhbekskaya\";\"other\"\n\"483692\";\"Темижбекская\";\"other\"\n\"483696\";\"Temirgoyevskaya\";\"main\"\n\"483696\";\"Temirgoevskaja\";\"other\"\n\"483696\";\"Temirgofewskaja\";\"other\"\n\"483696\";\"Temirgojevskaja\";\"other\"\n\"483696\";\"Темиргоевская\";\"other\"\n\"483699\";\"Temiraul\";\"main\"\n\"483699\";\"Temir-Aul\";\"other\"\n\"483699\";\"Темир-Аул\";\"other\"\n\"483699\";\"Темираул\";\"other\"\n\"483873\";\"Teberda\";\"main\"\n\"483883\";\"Tbilisskaya\";\"main\"\n\"483883\";\"Tbilisskaja\";\"other\"\n\"483883\";\"Tiflisskaya\";\"other\"\n\"483883\";\"Тбилисская\";\"other\"\n\"483898\";\"Taytsy\";\"main\"\n\"483898\";\"Taitsyb\";\"other\"\n\"483898\";\"Tajcy\";\"other\"\n\"483898\";\"Tajtsy\";\"other\"\n\"483898\";\"Тайцы\";\"other\"\n\"484017\";\"Tatsinskiy\";\"main\"\n\"484017\";\"TACINSKIJ\";\"other\"\n\"484017\";\"Tacinskaja\";\"other\"\n\"484017\";\"Tatsinskaya\";\"other\"\n\"484017\";\"Tazinskaja\";\"other\"\n\"484017\";\"ТАЦИНСКИЙ\";\"other\"\n\"484017\";\"Тацинская\";\"other\"\n\"484034\";\"Tatishchevo\";\"main\"\n\"484034\";\"Tatishchev\";\"other\"\n\"484034\";\"Tatishhevo\";\"other\"\n\"484034\";\"Tatutsevo\";\"other\"\n\"484034\";\"Татищево\";\"other\"\n\"484122\";\"Tatarskaya Pishlya\";\"main\"\n\"484122\";\"Tatarskaja Pisjlja\";\"other\"\n\"484122\";\"Татарская Пишля\";\"other\"\n\"484127\";\"Tatarskaya Kargala\";\"main\"\n\"484127\";\"Kagalinski\";\"other\"\n\"484127\";\"Kargala\";\"other\"\n\"484127\";\"Kargalinskiy\";\"other\"\n\"484127\";\"Каргала\";\"other\"\n\"484127\";\"Татарская Каргала\";\"other\"\n\"484162\";\"Tatarka\";\"main\"\n\"484162\";\"Tatarskoye\";\"other\"\n\"484162\";\"Татарка\";\"other\"\n\"484232\";\"Tashla\";\"main\"\n\"484232\";\"Tasala\";\"other\"\n\"484232\";\"Tasjla\";\"other\"\n\"484232\";\"Ташла\";\"other\"\n\"484287\";\"Tarusa\";\"main\"\n\"484287\";\"TARUSA\";\"other\"\n\"484287\";\"Tarussa\";\"other\"\n\"484287\";\"ТАРУСА\";\"other\"\n\"484290\";\"Tarumovka\";\"main\"\n\"484290\";\"Тарумовка\";\"other\"\n\"484296\";\"Tarskoye\";\"main\"\n\"484296\";\"Angusht\";\"other\"\n\"484296\";\"Angushty\";\"other\"\n\"484296\";\"Tarskoje\";\"other\"\n\"484296\";\"Тарское\";\"other\"\n\"484314\";\"Tarnogskiy Gorodok\";\"main\"\n\"484314\";\"Tarnogskij-Gorodok\";\"other\"\n\"484314\";\"Тарногский-Городок\";\"other\"\n\"484334\";\"Tarki\";\"main\"\n\"484334\";\"TARKI\";\"other\"\n\"484334\";\"ТАРКИ\";\"other\"\n\"484340\";\"Tarkhovka\";\"main\"\n\"484340\";\"Tarhovka\";\"other\"\n\"484340\";\"Тарховка\";\"other\"\n\"484367\";\"Taremskoye\";\"main\"\n\"484367\";\"Taremskoe\";\"other\"\n\"484367\";\"Taremskoje\";\"other\"\n\"484367\";\"Таремское\";\"other\"\n\"484396\";\"Tarasovskiy\";\"main\"\n\"484396\";\"TARASOVSKIJ\";\"other\"\n\"484396\";\"Tarasovka\";\"other\"\n\"484396\";\"Tarasovskij\";\"other\"\n\"484396\";\"Verkhne-Tarasovka\";\"other\"\n\"484396\";\"ТАРАСОВСКИЙ\";\"other\"\n\"484396\";\"Тарасовский\";\"other\"\n\"484644\";\"Tambovka\";\"main\"\n\"484644\";\"Tambowskoje\";\"other\"\n\"484644\";\"Тамбовка\";\"other\"\n\"484646\";\"Tambov\";\"main\"\n\"484646\";\"Tambow\";\"other\"\n\"484646\";\"tambopeu\";\"other\"\n\"484646\";\"Тамбов\";\"other\"\n\"484646\";\"탐보프\";\"other\"\n\"484670\";\"Taman’\";\"main\"\n\"484670\";\"Taman'\";\"ascii\"\n\"484670\";\"Taman\";\"other\"\n\"484670\";\"Tamanskaja\";\"other\"\n\"484670\";\"Tamanskaya\";\"other\"\n\"484670\";\"Тамань\";\"other\"\n\"484674\";\"Tamala\";\"main\"\n\"484674\";\"TAMALA\";\"other\"\n\"484674\";\"ТАМАЛА\";\"other\"\n\"484720\";\"Talovyy\";\"main\"\n\"484720\";\"TALOVYJ\";\"other\"\n\"484720\";\"Talovyj\";\"other\"\n\"484720\";\"ТАЛОВЫЙ\";\"other\"\n\"484747\";\"Talovaya\";\"main\"\n\"484747\";\"TALOVAJA\";\"other\"\n\"484747\";\"Talovaja\";\"other\"\n\"484747\";\"Talowaja\";\"other\"\n\"484747\";\"ТАЛОВАЯ\";\"other\"\n\"484770\";\"Talitsy\";\"main\"\n\"484770\";\"Talicy\";\"other\"\n\"484770\";\"Talitsa\";\"other\"\n\"484770\";\"Талицы\";\"other\"\n\"484826\";\"Taldom\";\"main\"\n\"484826\";\"TALDOM\";\"other\"\n\"484826\";\"ТАЛДОМ\";\"other\"\n\"484856\";\"Agidel’\";\"main\"\n\"484856\";\"Agidel'\";\"ascii\"\n\"484856\";\"AGIDEL'\";\"other\"\n\"484856\";\"Aghidhel\";\"other\"\n\"484856\";\"Agidel\";\"other\"\n\"484856\";\"Agideli\";\"other\"\n\"484856\";\"Agidelis\";\"other\"\n\"484856\";\"Agidelj\";\"other\"\n\"484856\";\"Takmalachuk\";\"other\"\n\"484856\";\"agidel\";\"other\"\n\"484856\";\"АГИДЕЛЬ\";\"other\"\n\"484856\";\"Агидель\";\"other\"\n\"484856\";\"Агидељ\";\"other\"\n\"484856\";\"아기델\";\"other\"\n\"484907\";\"Taganrog\";\"main\"\n\"484907\";\"TAGANROG\";\"other\"\n\"484907\";\"taganlokeu\";\"other\"\n\"484907\";\"taganrogu\";\"other\"\n\"484907\";\"ТАГАНРОГ\";\"other\"\n\"484907\";\"Таганрог\";\"other\"\n\"484907\";\"ტაგანროგი\";\"other\"\n\"484907\";\"タガンログ\";\"other\"\n\"484907\";\"타간로크\";\"other\"\n\"484972\";\"Syzran’\";\"main\"\n\"484972\";\"Syzran'\";\"ascii\"\n\"484972\";\"SYZRAN'\";\"other\"\n\"484972\";\"Sysran\";\"other\"\n\"484972\";\"Syzran\";\"other\"\n\"484972\";\"СЫЗРАНЬ\";\"other\"\n\"485064\";\"Syumsi\";\"main\"\n\"485064\";\"Siumsi\";\"other\"\n\"485064\";\"Sjumsi\";\"other\"\n\"485064\";\"Сюмси\";\"other\"\n\"485140\";\"Syrtych\";\"main\"\n\"485140\";\"Sirtich\";\"other\"\n\"485140\";\"Sirtitsj\";\"other\"\n\"485140\";\"Сиртич\";\"other\"\n\"485140\";\"Сыртыч\";\"other\"\n\"485153\";\"Syrskoye\";\"main\"\n\"485153\";\"SYRSKIJ\";\"other\"\n\"485153\";\"Sirskaya\";\"other\"\n\"485153\";\"Syrskaya\";\"other\"\n\"485153\";\"Syrskoe\";\"other\"\n\"485153\";\"СЫРСКИЙ\";\"other\"\n\"485153\";\"Сурское\";\"other\"\n\"485153\";\"Сырское\";\"other\"\n\"485162\";\"Syrostan\";\"main\"\n\"485162\";\"Сыростан\";\"other\"\n\"485206\";\"Syntul\";\"main\"\n\"485206\";\"SYNTUL\";\"other\"\n\"485206\";\"Syntu\";\"other\"\n\"485206\";\"СЫНТУЛ\";\"other\"\n\"485215\";\"Synya\";\"main\"\n\"485215\";\"SYNJA\";\"other\"\n\"485215\";\"Syna\";\"other\"\n\"485215\";\"Synja\";\"other\"\n\"485215\";\"СЫНЯ\";\"other\"\n\"485230\";\"Sylva\";\"main\"\n\"485230\";\"SYLVA\";\"other\"\n\"485230\";\"СЫЛВА\";\"other\"\n\"485239\";\"Syktyvkar\";\"main\"\n\"485239\";\"Siktivkar\";\"other\"\n\"485239\";\"Soktovkar\";\"other\"\n\"485239\";\"Syktywkar\";\"other\"\n\"485239\";\"Sõktõvkar\";\"other\"\n\"485239\";\"Ust'-Sysol'sk\";\"other\"\n\"485239\";\"Ust’-Sysol’sk\";\"other\"\n\"485239\";\"sigtibkaleu\";\"other\"\n\"485239\";\"su~ikutifukaru\";\"other\"\n\"485239\";\"syktywkar\";\"other\"\n\"485239\";\"syqtybqr\";\"other\"\n\"485239\";\"Сиктивкар\";\"other\"\n\"485239\";\"Сыктывкар\";\"other\"\n\"485239\";\"Усть-Сысольск\";\"other\"\n\"485239\";\"סיקטיבקר\";\"other\"\n\"485239\";\"سیکتیوکار\";\"other\"\n\"485239\";\"スィクティフカル\";\"other\"\n\"485239\";\"식팁카르\";\"other\"\n\"485273\";\"Sychëvo\";\"main\"\n\"485273\";\"Sychevo\";\"ascii\"\n\"485273\";\"Sychi\";\"other\"\n\"485273\";\"Sytsjevo\";\"other\"\n\"485273\";\"Сычево\";\"other\"\n\"485275\";\"Sychëvo\";\"main\"\n\"485275\";\"Sychevo\";\"ascii\"\n\"485280\";\"Sychëvka\";\"main\"\n\"485280\";\"Sychevka\";\"ascii\"\n\"485280\";\"SYCHEVKA\";\"other\"\n\"485280\";\"Sytsjevka\";\"other\"\n\"485280\";\"СЫЧЕВКА\";\"other\"\n\"485304\";\"Syava\";\"main\"\n\"485304\";\"SJAVA\";\"other\"\n\"485304\";\"Siava\";\"other\"\n\"485304\";\"СЯВА\";\"other\"\n\"485304\";\"Сява\";\"other\"\n\"485313\";\"Syas’stroy\";\"main\"\n\"485313\";\"Syas'stroy\";\"ascii\"\n\"485313\";\"Siasstroj\";\"other\"\n\"485313\";\"Sjas'stroj\";\"other\"\n\"485313\";\"Сясьстрой\";\"other\"\n\"485351\";\"Syamzha\";\"main\"\n\"485351\";\"D'yakovskaya\";\"other\"\n\"485351\";\"D'yakovskaya Gorka\";\"other\"\n\"485351\";\"D’yakovskaya\";\"other\"\n\"485351\";\"D’yakovskaya Gorka\";\"other\"\n\"485351\";\"Siamzja\";\"other\"\n\"485351\";\"Sjamzha\";\"other\"\n\"485351\";\"Сямжа\";\"other\"\n\"485432\";\"Svobody\";\"main\"\n\"485432\";\"Poselok Svobody\";\"other\"\n\"485432\";\"Poselok-Seobody\";\"other\"\n\"485432\";\"Posëlok Svobody\";\"other\"\n\"485432\";\"SVOBODY\";\"other\"\n\"485432\";\"СВОБОДЫ\";\"other\"\n\"485449\";\"Svobodnyy\";\"main\"\n\"485449\";\"SVOBODNYJ\";\"other\"\n\"485449\";\"Svobodnyj\";\"other\"\n\"485449\";\"СВОБОДНЫЙ\";\"other\"\n\"485516\";\"Sviyazhsk\";\"main\"\n\"485516\";\"Svijazhsk\";\"other\"\n\"485516\";\"Svijazjsk\";\"other\"\n\"485516\";\"Свияжск\";\"other\"\n\"485639\";\"Svetogorsk\";\"main\"\n\"485639\";\"Enso\";\"other\"\n\"485639\";\"Esno\";\"other\"\n\"485639\";\"SVETOGORSK\";\"other\"\n\"485639\";\"СВЕТОГОРСК\";\"other\"\n\"485643\";\"Svetlyy Yar\";\"main\"\n\"485643\";\"SVETLYJ JAR\";\"other\"\n\"485643\";\"Svetly Yar\";\"other\"\n\"485643\";\"Svetlyj Jar\";\"other\"\n\"485643\";\"СВЕТЛЫЙ ЯР\";\"other\"\n\"485643\";\"Светлый Яр\";\"other\"\n\"485660\";\"Svetlyy\";\"main\"\n\"485660\";\"SVETLYJ\";\"other\"\n\"485660\";\"Svetlyj\";\"other\"\n\"485660\";\"Tsimmerbude\";\"other\"\n\"485660\";\"Zimmerbude\";\"other\"\n\"485660\";\"СВЕТЛЫЙ\";\"other\"\n\"485698\";\"Svetlograd\";\"main\"\n\"485698\";\"Petrovskoe\";\"other\"\n\"485698\";\"Petrovskoye\";\"other\"\n\"485698\";\"Petrowskoje\";\"other\"\n\"485698\";\"SVETLOGRAD\";\"other\"\n\"485698\";\"СВЕТЛОГРАД\";\"other\"\n\"485699\";\"Svetlogorsk\";\"main\"\n\"485699\";\"Rauschen\";\"other\"\n\"485699\";\"Raushed\";\"other\"\n\"485699\";\"Светлогорск\";\"other\"\n\"485763\";\"Sverdlovskiy\";\"main\"\n\"485763\";\"Sverdlovskij\";\"other\"\n\"485763\";\"Свердловский\";\"other\"\n\"485785\";\"Sven’\";\"main\"\n\"485785\";\"Sven'\";\"ascii\"\n\"485785\";\"Sven\";\"other\"\n\"485785\";\"Свень\";\"other\"\n\"485799\";\"Svecha\";\"main\"\n\"485799\";\"SVECHA\";\"other\"\n\"485799\";\"Suuechiya\";\"other\"\n\"485799\";\"Svetsja\";\"other\"\n\"485799\";\"СВЕЧА\";\"other\"\n\"485799\";\"Свеча\";\"other\"\n\"485817\";\"Suzëmka\";\"main\"\n\"485817\";\"Suzemka\";\"ascii\"\n\"485817\";\"Susemka\";\"other\"\n\"485817\";\"Суземка\";\"other\"\n\"485824\";\"Suzdal’\";\"main\"\n\"485824\";\"Suzdal'\";\"ascii\"\n\"485824\";\"SUZDAL'\";\"other\"\n\"485824\";\"Soezdal\";\"other\"\n\"485824\";\"Souzdal\";\"other\"\n\"485824\";\"Souzntal\";\"other\"\n\"485824\";\"Susdal\";\"other\"\n\"485824\";\"Suzdal\";\"other\"\n\"485824\";\"Súzdal\";\"other\"\n\"485824\";\"su zi da er\";\"other\"\n\"485824\";\"sujeudal\";\"other\"\n\"485824\";\"suzdali\";\"other\"\n\"485824\";\"Σούζνταλ\";\"other\"\n\"485824\";\"СУЗДАЛЬ\";\"other\"\n\"485824\";\"Суздаль\";\"other\"\n\"485824\";\"სუზდალი\";\"other\"\n\"485824\";\"苏兹达尔\";\"other\"\n\"485824\";\"수즈달\";\"other\"\n\"485871\";\"Suvorovskaya\";\"main\"\n\"485871\";\"Suvorovskaja\";\"other\"\n\"485871\";\"Суворовская\";\"other\"\n\"485888\";\"Suvorov\";\"main\"\n\"485888\";\"SUVOROV\";\"other\"\n\"485888\";\"Suvorovskiy\";\"other\"\n\"485888\";\"СУВОРОВ\";\"other\"\n\"485964\";\"Suslonger\";\"main\"\n\"485964\";\"SUSLONGER\";\"other\"\n\"485964\";\"СУСЛОНГЕР\";\"other\"\n\"486015\";\"Susanino\";\"main\"\n\"486015\";\"Molvitino\";\"other\"\n\"486015\";\"SUSANINO\";\"other\"\n\"486015\";\"СУСАНИНО\";\"other\"\n\"486043\";\"Surskoye\";\"main\"\n\"486043\";\"SURSKOE\";\"other\"\n\"486043\";\"Surskoje\";\"other\"\n\"486043\";\"СУРСКОЕ\";\"other\"\n\"486048\";\"Sursk\";\"main\"\n\"486048\";\"Nikol'skiy Khutor\";\"other\"\n\"486048\";\"Nikol’skiy Khutor\";\"other\"\n\"486048\";\"SURSK\";\"other\"\n\"486048\";\"СУРСК\";\"other\"\n\"486048\";\"Сурск\";\"other\"\n\"486071\";\"Surovikino\";\"main\"\n\"486071\";\"SUROVIKINO\";\"other\"\n\"486071\";\"СУРОВИКИНО\";\"other\"\n\"486071\";\"Суровикино\";\"other\"\n\"486073\";\"Surovatikha\";\"main\"\n\"486073\";\"Surova\";\"other\"\n\"486073\";\"Суроватиха\";\"other\"\n\"486110\";\"Surkhakhi\";\"main\"\n\"486110\";\"Mamison\";\"other\"\n\"486110\";\"Surkhokhi\";\"other\"\n\"486110\";\"Syrkhokh\";\"other\"\n\"486110\";\"Сурхахи\";\"other\"\n\"486137\";\"Surgut\";\"main\"\n\"486137\";\"SURGUT\";\"other\"\n\"486137\";\"СУРГУТ\";\"other\"\n\"486137\";\"Сургут\";\"other\"\n\"486148\";\"Surazh\";\"main\"\n\"486148\";\"SURAZH\";\"other\"\n\"486148\";\"Surazj\";\"other\"\n\"486148\";\"СУРАЖ\";\"other\"\n\"486148\";\"Сураж\";\"other\"\n\"486163\";\"Sura\";\"main\"\n\"486163\";\"Chirkovo\";\"other\"\n\"486163\";\"SURA\";\"other\"\n\"486163\";\"СУРА\";\"other\"\n\"486163\";\"Сура\";\"other\"\n\"486178\";\"Suponevo\";\"main\"\n\"486178\";\"SUPONEVO\";\"other\"\n\"486178\";\"СУПОНЕВО\";\"other\"\n\"486178\";\"Супонево\";\"other\"\n\"486186\";\"Suoyarvi\";\"main\"\n\"486186\";\"SUOJARVI\";\"other\"\n\"486186\";\"Suojarvi\";\"other\"\n\"486186\";\"Suojärvi\";\"other\"\n\"486186\";\"Suvilahti\";\"other\"\n\"486186\";\"Suvilakhta\";\"other\"\n\"486186\";\"СУОЯРВИ\";\"other\"\n\"486186\";\"Суоярви\";\"other\"\n\"486203\";\"Sunzha\";\"main\"\n\"486203\";\"Sunzja\";\"other\"\n\"486203\";\"Сунжа\";\"other\"\n\"486236\";\"Suna\";\"main\"\n\"486236\";\"SUNA\";\"other\"\n\"486236\";\"СУНА\";\"other\"\n\"486236\";\"Суна\";\"other\"\n\"486398\";\"Sulak\";\"main\"\n\"486398\";\"Glavnyy Sulak\";\"other\"\n\"486398\";\"Khizrayevskiy\";\"other\"\n\"486398\";\"Khizroyevka\";\"other\"\n\"486398\";\"Khizroyevskiy\";\"other\"\n\"486398\";\"SULAK\";\"other\"\n\"486398\";\"Vataga Sulakskaya\";\"other\"\n\"486398\";\"СУЛАК\";\"other\"\n\"486398\";\"Сулак\";\"other\"\n\"486413\";\"Suksun\";\"main\"\n\"486413\";\"SUKSUN\";\"other\"\n\"486413\";\"СУКСУН\";\"other\"\n\"486456\";\"Sukko\";\"main\"\n\"486456\";\"Сукко\";\"other\"\n\"486626\";\"Sukhodol\";\"main\"\n\"486626\";\"SUKHODOL\";\"other\"\n\"486626\";\"СУХОДОЛ\";\"other\"\n\"486626\";\"Суходол\";\"other\"\n\"486645\";\"Sukhobezvodnoye\";\"main\"\n\"486645\";\"SUKHOBEZVODNOE\";\"other\"\n\"486645\";\"Sukhobezvodnoje\";\"other\"\n\"486645\";\"СУХОБЕЗВОДНОЕ\";\"other\"\n\"486645\";\"Сухобезводное\";\"other\"\n\"486665\";\"Sukhinichi\";\"main\"\n\"486665\";\"SUKHINICHI\";\"other\"\n\"486665\";\"Suchinitschi\";\"other\"\n\"486665\";\"Sukhinitsji\";\"other\"\n\"486665\";\"СУХИНИЧИ\";\"other\"\n\"486665\";\"Сухиничи\";\"other\"\n\"486725\";\"Sukhaya Buyvola\";\"main\"\n\"486725\";\"Sukhaja Bujvola\";\"other\"\n\"486725\";\"Sukhaya Buivola\";\"other\"\n\"486725\";\"Сухая Буйвола\";\"other\"\n\"486816\";\"Sudzha\";\"main\"\n\"486816\";\"SUDZHA\";\"other\"\n\"486816\";\"Ssudsha Vtoraya\";\"other\"\n\"486816\";\"Sudsha\";\"other\"\n\"486816\";\"Sudzja\";\"other\"\n\"486816\";\"СУДЖА\";\"other\"\n\"486816\";\"Суджа\";\"other\"\n\"486834\";\"Sudogda\";\"main\"\n\"486834\";\"SUDOGDA\";\"other\"\n\"486834\";\"СУДОГДА\";\"other\"\n\"486834\";\"Судогда\";\"other\"\n\"486848\";\"Sudislavl’\";\"main\"\n\"486848\";\"Sudislavl'\";\"ascii\"\n\"486848\";\"SUDISLAVL'\";\"other\"\n\"486848\";\"Sudislavl\";\"other\"\n\"486848\";\"СУДИСЛАВЛЬ\";\"other\"\n\"486848\";\"Судиславль\";\"other\"\n\"486874\";\"Suda\";\"main\"\n\"486874\";\"SUDA\";\"other\"\n\"486874\";\"СУДА\";\"other\"\n\"486874\";\"Суда\";\"other\"\n\"486894\";\"Subkhankulovo\";\"main\"\n\"486894\";\"SUBKHANKULOVO\";\"other\"\n\"486894\";\"Subkhanulova\";\"other\"\n\"486894\";\"СУБХАНКУЛОВО\";\"other\"\n\"486894\";\"Субханкулово\";\"other\"\n\"486968\";\"Stupino\";\"main\"\n\"486968\";\"Elektrovoz\";\"other\"\n\"486968\";\"STUPINO\";\"other\"\n\"486968\";\"СТУПИНО\";\"other\"\n\"486968\";\"Ступино\";\"other\"\n\"486983\";\"Stulovo\";\"main\"\n\"486983\";\"Nizhniye Kropachi\";\"other\"\n\"486983\";\"Стулово\";\"other\"\n\"487095\";\"Strunino\";\"main\"\n\"487095\";\"STRUNINO\";\"other\"\n\"487095\";\"СТРУНИНО\";\"other\"\n\"487095\";\"Струнино\";\"other\"\n\"487110\";\"Strugi-Krasnyye\";\"main\"\n\"487110\";\"Belaya\";\"other\"\n\"487110\";\"Strugi-Krasnye\";\"other\"\n\"487110\";\"Струги-Красные\";\"other\"\n\"487147\";\"Stroitel’\";\"main\"\n\"487147\";\"Stroitel'\";\"ascii\"\n\"487147\";\"STROITEL'\";\"other\"\n\"487147\";\"Stroitel\";\"other\"\n\"487147\";\"СТРОИТЕЛЬ\";\"other\"\n\"487147\";\"Строитель\";\"other\"\n\"487159\";\"Strizhi\";\"main\"\n\"487159\";\"STRIZHI\";\"other\"\n\"487159\";\"Strizhi Pervyye\";\"other\"\n\"487159\";\"Strizji\";\"other\"\n\"487159\";\"Stryzhi\";\"other\"\n\"487159\";\"СТРИЖИ\";\"other\"\n\"487159\";\"Стрижи\";\"other\"\n\"487227\";\"Strel'na\";\"main\"\n\"487227\";\"Strelna\";\"other\"\n\"487227\";\"Stryelna\";\"other\"\n\"487227\";\"Стрельна\";\"other\"\n\"487246\";\"Strelka\";\"main\"\n\"487246\";\"Krasnaya Strela\";\"other\"\n\"487246\";\"Krasnaya Strelka\";\"other\"\n\"487246\";\"Стрелка\";\"other\"\n\"487255\";\"Strelitsa\";\"main\"\n\"487255\";\"STRELICA\";\"other\"\n\"487255\";\"СТРЕЛИЦА\";\"other\"\n\"487255\";\"Стрелица\";\"other\"\n\"487372\";\"Storozhevaya\";\"main\"\n\"487372\";\"Storozjevaja\";\"other\"\n\"487372\";\"Storzhevaya\";\"other\"\n\"487372\";\"Сторожевая\";\"other\"\n\"487441\";\"Stolbovaya\";\"main\"\n\"487441\";\"STOLBOVAJA\";\"other\"\n\"487441\";\"Stolbovaja\";\"other\"\n\"487441\";\"СТОЛБОВАЯ\";\"other\"\n\"487441\";\"Столбовая\";\"other\"\n\"487444\";\"Stolbishche\";\"main\"\n\"487444\";\"Stolbishchi\";\"other\"\n\"487444\";\"Stolbisjtsje\";\"other\"\n\"487444\";\"Столбище\";\"other\"\n\"487464\";\"Stodolishche\";\"main\"\n\"487464\";\"Stodolishe\";\"other\"\n\"487464\";\"Stodolisjtsje\";\"other\"\n\"487464\";\"Стодолище\";\"other\"\n\"487495\";\"Sterlitamak\";\"main\"\n\"487495\";\"STERLITAMAK\";\"other\"\n\"487495\";\"Staerletamaq\";\"other\"\n\"487495\";\"Sterle\";\"other\"\n\"487495\";\"Stärletamaq\";\"other\"\n\"487495\";\"СТЕРЛИТАМАК\";\"other\"\n\"487495\";\"Стерлĕ\";\"other\"\n\"487495\";\"Стерлитамак\";\"other\"\n\"487498\";\"Sterlibashevo\";\"main\"\n\"487498\";\"Sterlibasjevo\";\"other\"\n\"487498\";\"Стерлибашево\";\"other\"\n\"487543\";\"Stepnoye\";\"main\"\n\"487543\";\"Luy\";\"other\"\n\"487543\";\"Otrogovo\";\"other\"\n\"487543\";\"STEPNOE\";\"other\"\n\"487543\";\"Stepnoje\";\"other\"\n\"487543\";\"СТЕПНОЕ\";\"other\"\n\"487629\";\"Stepantsevo\";\"main\"\n\"487629\";\"STEPANCEVO\";\"other\"\n\"487629\";\"СТЕПАНЦЕВО\";\"other\"\n\"487629\";\"Степанцево\";\"other\"\n\"487837\";\"Stavrovo\";\"main\"\n\"487837\";\"STAVROVO\";\"other\"\n\"487837\";\"СТАВРОВО\";\"other\"\n\"487837\";\"Ставрово\";\"other\"\n\"487846\";\"Stavropol’\";\"main\"\n\"487846\";\"Stavropol'\";\"ascii\"\n\"487846\";\"Stavropol\";\"other\"\n\"487846\";\"Voroshilovsk\";\"other\"\n\"487846\";\"Ставрополь\";\"other\"\n\"487871\";\"Staryy Urukh\";\"main\"\n\"487871\";\"Staryj Urukh\";\"other\"\n\"487871\";\"Старый Урух\";\"other\"\n\"487928\";\"Staryy Oskol\";\"main\"\n\"487928\";\"STARYJ OSKOL\";\"other\"\n\"487928\";\"Starij Oskol\";\"other\"\n\"487928\";\"Stary Oskol\";\"other\"\n\"487928\";\"seutalioseukol\";\"other\"\n\"487928\";\"СТАРЫЙ ОСКОЛ\";\"other\"\n\"487928\";\"Старий Оскол\";\"other\"\n\"487928\";\"Старый Оскол\";\"other\"\n\"487928\";\"스타리오스콜\";\"other\"\n\"488128\";\"Staryye Atagi\";\"main\"\n\"488128\";\"Predgornoye\";\"other\"\n\"488128\";\"Staraya Ataga\";\"other\"\n\"488128\";\"Starye Atagi\";\"other\"\n\"488128\";\"Staryy Atagi\";\"other\"\n\"488128\";\"Vozdvijenskaia\";\"other\"\n\"488128\";\"Vozdvizhenskaya\";\"other\"\n\"488128\";\"Старые Атаги\";\"other\"\n\"488142\";\"Staryy Cherek\";\"main\"\n\"488142\";\"Staryj Tsjerek\";\"other\"\n\"488142\";\"Staryy Cheren\";\"other\"\n\"488142\";\"Старый Черек\";\"other\"\n\"488206\";\"Starozhilovo\";\"main\"\n\"488206\";\"STAROZHILOVO\";\"other\"\n\"488206\";\"Starozjilovo\";\"other\"\n\"488206\";\"СТАРОЖИЛОВО\";\"other\"\n\"488206\";\"Старожилово\";\"other\"\n\"488214\";\"Staroyur’yevo\";\"main\"\n\"488214\";\"Staroyur'yevo\";\"ascii\"\n\"488214\";\"Starojurjevo\";\"other\"\n\"488214\";\"Staroye Yur'yevo\";\"other\"\n\"488214\";\"Staroye Yur’yevo\";\"other\"\n\"488214\";\"Староюрьево\";\"other\"\n\"488466\";\"Staroye Drozhzhanoye\";\"main\"\n\"488466\";\"Drozhzhannoye\";\"other\"\n\"488466\";\"Drozhzhanovo\";\"other\"\n\"488466\";\"Drozhzhanoye\";\"other\"\n\"488466\";\"Staroje Drozjzjanoje\";\"other\"\n\"488466\";\"Старое Дрожжаное\";\"other\"\n\"488587\";\"Starovelichkovskaya\";\"main\"\n\"488587\";\"Starovelitsjkovskaja\";\"other\"\n\"488587\";\"Starowelitschkowskaja\";\"other\"\n\"488587\";\"Старовеличковская\";\"other\"\n\"488593\";\"Staroutkinsk\";\"main\"\n\"488593\";\"STAROUTKINSK\";\"other\"\n\"488593\";\"Staraya Utka\";\"other\"\n\"488593\";\"Staro-Utkinskiy Zavod\";\"other\"\n\"488593\";\"СТАРОУТКИНСК\";\"other\"\n\"488593\";\"Староуткинск\";\"other\"\n\"488606\";\"Starotitarovskaya\";\"main\"\n\"488606\";\"Starotitarowskaja\";\"other\"\n\"488606\";\"Starotitorovskaya\";\"other\"\n\"488606\";\"Titarovskaya\";\"other\"\n\"488606\";\"Старотитаровская\";\"other\"\n\"488608\";\"Starotimoshkino\";\"main\"\n\"488608\";\"STAROTIMOSHKINO\";\"other\"\n\"488608\";\"Starotimosjkino\";\"other\"\n\"488608\";\"Staroye Timoshkino\";\"other\"\n\"488608\";\"Timoshkino\";\"other\"\n\"488608\";\"СТАРОТИМОШКИНО\";\"other\"\n\"488608\";\"Старотимошкино\";\"other\"\n\"488618\";\"Starosubkhangulovo\";\"main\"\n\"488618\";\"Subkhankulova\";\"other\"\n\"488618\";\"Старосубхангулово\";\"other\"\n\"488635\";\"Staroshcherbinovskaya\";\"main\"\n\"488635\";\"Staro Schtscherbinowskaja\";\"other\"\n\"488635\";\"Staro-Scherbinowskaja\";\"other\"\n\"488635\";\"Starosherbinovskaya\";\"other\"\n\"488635\";\"Starosjtsjerbinovskaja\";\"other\"\n\"488635\";\"Старощербиновская\";\"other\"\n\"488706\";\"Staropavlovskaya\";\"main\"\n\"488706\";\"Staropavlovskaja\";\"other\"\n\"488706\";\"Старопавловская\";\"other\"\n\"488713\";\"Staronizhestebliyevskaya\";\"main\"\n\"488713\";\"Staro Nizhesteblievskaya\";\"other\"\n\"488713\";\"Staro-Nizhne-Stebliyevskaya\";\"other\"\n\"488713\";\"Staronishesteblijewskaja\";\"other\"\n\"488713\";\"Staronizjesteblijevskaja\";\"other\"\n\"488713\";\"Старонижестеблиевская\";\"other\"\n\"488730\";\"Staromyshastovskaya\";\"main\"\n\"488730\";\"Staromishastovskaya\";\"other\"\n\"488730\";\"Staromysjastovskaja\";\"other\"\n\"488730\";\"Старомышастовская\";\"other\"\n\"488742\";\"Starominskaya\";\"main\"\n\"488742\";\"Starominskaja\";\"other\"\n\"488742\";\"Староминская\";\"other\"\n\"488758\";\"Staroleushkovskaya\";\"main\"\n\"488758\";\"Staroleushkoskaya\";\"other\"\n\"488758\";\"Staroleusjkovskaja\";\"other\"\n\"488758\";\"Stavroleushkovskaya\";\"other\"\n\"488758\";\"Старолеушковская\";\"other\"\n\"488777\";\"Starokucherganovka\";\"main\"\n\"488777\";\"Starokutsjerganovka\";\"other\"\n\"488777\";\"Старокучергановка\";\"other\"\n\"488785\";\"Starokorsunskaya\";\"main\"\n\"488785\";\"Starakorsunskaya\";\"other\"\n\"488785\";\"Starokorsunskaja\";\"other\"\n\"488785\";\"Старокорсунская\";\"other\"\n\"488839\";\"Starodzhereliyevskaya\";\"main\"\n\"488839\";\"Staraya Dzhereliyevskaya\";\"other\"\n\"488839\";\"Starodzjerelijevskaja\";\"other\"\n\"488839\";\"Староджерелиевская\";\"other\"\n\"488847\";\"Starodubskoye\";\"main\"\n\"488847\";\"Starodubskoje\";\"other\"\n\"488847\";\"Стародубское\";\"other\"\n\"488852\";\"Starodub\";\"main\"\n\"488852\";\"STARODUB\";\"other\"\n\"488852\";\"СТАРОДУБ\";\"other\"\n\"488852\";\"Стародуб\";\"other\"\n\"488859\";\"Staroderevyankovskaya\";\"main\"\n\"488859\";\"Staroderevjankovskaja\";\"other\"\n\"488859\";\"Стародеревянковская\";\"other\"\n\"488864\";\"Starocherkasskaya\";\"main\"\n\"488864\";\"Starocherkassk\";\"other\"\n\"488864\";\"Starotsjerkasskaja\";\"other\"\n\"488864\";\"Старочеркасская\";\"other\"\n\"488881\";\"Starobaltachevo\";\"main\"\n\"488881\";\"Starobaltatsjevo\";\"other\"\n\"488881\";\"Старобалтачево\";\"other\"\n\"488946\";\"Staritsa\";\"main\"\n\"488946\";\"STARICA\";\"other\"\n\"488946\";\"СТАРИЦА\";\"other\"\n\"488946\";\"Старица\";\"other\"\n\"489021\";\"Staraya Vichuga\";\"main\"\n\"489021\";\"STARAJA VICHUGA\";\"other\"\n\"489021\";\"Staraja Vitsjuga\";\"other\"\n\"489021\";\"Vichuga\";\"other\"\n\"489021\";\"СТАРАЯ ВИЧУГА\";\"other\"\n\"489021\";\"Старая Вичуга\";\"other\"\n\"489043\";\"Staraya Toropa\";\"main\"\n\"489043\";\"STARAJA TOROPA\";\"other\"\n\"489043\";\"Staraja Toropa\";\"other\"\n\"489043\";\"Toropa\";\"other\"\n\"489043\";\"СТАРАЯ ТОРОПА\";\"other\"\n\"489043\";\"Старая Торопа\";\"other\"\n\"489057\";\"Staraya Sunzha\";\"main\"\n\"489057\";\"Staraja Sunzha\";\"other\"\n\"489057\";\"Staraja Sunzja\";\"other\"\n\"489057\";\"Staro-Ssunshenskaje\";\"other\"\n\"489057\";\"Starosunzhenskoye\";\"other\"\n\"489057\";\"Старая Сунжа\";\"other\"\n\"489062\";\"Staraya Stanitsa\";\"main\"\n\"489062\";\"Staraja Stanitsa\";\"other\"\n\"489062\";\"Старая Станица\";\"other\"\n\"489063\";\"Staraya Stanitsa\";\"main\"\n\"489063\";\"Staraja Stanitsa\";\"other\"\n\"489063\";\"Старая Станица\";\"other\"\n\"489088\";\"Staraya Russa\";\"main\"\n\"489088\";\"STARAJA RUSSA\";\"other\"\n\"489088\";\"Staraja Roessa\";\"other\"\n\"489088\";\"Staraja Russa\";\"other\"\n\"489088\";\"seutalayalusa\";\"other\"\n\"489088\";\"СТАРАЯ РУССА\";\"other\"\n\"489088\";\"Старая Русса\";\"other\"\n\"489088\";\"스타라야루사\";\"other\"\n\"489102\";\"Staraya Poltavka\";\"main\"\n\"489102\";\"STAR.POLTAVKA\";\"other\"\n\"489102\";\"Staraja Poltavka\";\"other\"\n\"489102\";\"СТАР.ПОЛТАВКА\";\"other\"\n\"489102\";\"Старая Полтавка\";\"other\"\n\"489135\";\"Staraya Mayna\";\"main\"\n\"489135\";\"STARAJA MAJNA\";\"other\"\n\"489135\";\"Staraja Majna\";\"other\"\n\"489135\";\"СТАРАЯ МАЙНА\";\"other\"\n\"489158\";\"Staraya Ladoga\";\"main\"\n\"489158\";\"Laatokankaupunki\";\"other\"\n\"489158\";\"Ladoga\";\"other\"\n\"489158\";\"Star.Ladoga\";\"other\"\n\"489158\";\"Stara Ladoga\";\"other\"\n\"489158\";\"Stara Ładoga\";\"other\"\n\"489158\";\"Staragia Lantonka\";\"other\"\n\"489158\";\"Staraja Ladoga\";\"other\"\n\"489158\";\"Στάραγια Λάντογκα\";\"other\"\n\"489158\";\"Стар.Ладога\";\"other\"\n\"489158\";\"Старая Ладога\";\"other\"\n\"489162\";\"Staraya Kupavna\";\"main\"\n\"489162\";\"Kupavna\";\"other\"\n\"489162\";\"Staraja Kupavna\";\"other\"\n\"489162\";\"Купавна\";\"other\"\n\"489162\";\"Старая Купавна\";\"other\"\n\"489164\";\"Staraya Kulatka\";\"main\"\n\"489164\";\"STAR.KULATKA\";\"other\"\n\"489164\";\"Staraja Kulatka\";\"other\"\n\"489164\";\"СТАР.КУЛАТКА\";\"other\"\n\"489164\";\"Старая Кулатка\";\"other\"\n\"489264\";\"Staraya\";\"main\"\n\"489264\";\"Staraja\";\"other\"\n\"489264\";\"Старая\";\"other\"\n\"489271\";\"Star’\";\"main\"\n\"489271\";\"Star'\";\"ascii\"\n\"489271\";\"STAR'\";\"other\"\n\"489271\";\"Star\";\"other\"\n\"489271\";\"СТАРЬ\";\"other\"\n\"489271\";\"Старь\";\"other\"\n\"489290\";\"Stanovoye\";\"main\"\n\"489290\";\"Ploskoe\";\"other\"\n\"489290\";\"Ploskoye\";\"other\"\n\"489290\";\"Stanovaja\";\"other\"\n\"489290\";\"Плоское\";\"other\"\n\"489290\";\"Становая\";\"other\"\n\"489290\";\"Становое\";\"other\"\n\"489393\";\"Srednyaya Yelyuzan’\";\"main\"\n\"489393\";\"Srednyaya Yelyuzan'\";\"ascii\"\n\"489393\";\"Srednjaja Jeljuzan\";\"other\"\n\"489393\";\"Средняя Елюзань\";\"other\"\n\"489446\";\"Srednyaya Akhtuba\";\"main\"\n\"489446\";\"Srednjaja Akhtuba\";\"other\"\n\"489446\";\"Средняя Ахтуба\";\"other\"\n\"489495\";\"Sredniy Ikorets\";\"main\"\n\"489495\";\"Sredne Ikorets\";\"other\"\n\"489495\";\"Srednij Ikorets\";\"other\"\n\"489495\";\"Средний Икорец\";\"other\"\n\"489655\";\"Spokoynaya\";\"main\"\n\"489655\";\"Spokoinaya\";\"other\"\n\"489655\";\"Spokojnaja\";\"other\"\n\"489655\";\"Спокойная\";\"other\"\n\"489671\";\"Spitsevka\";\"main\"\n\"489671\";\"Spitsevskoye\";\"other\"\n\"489671\";\"Спицевка\";\"other\"\n\"489686\";\"Spirovo\";\"main\"\n\"489686\";\"Спирово\";\"other\"\n\"489701\";\"Spiridonovka\";\"main\"\n\"489701\";\"Спиридоновка\";\"other\"\n\"489741\";\"Spassk-Ryazanskiy\";\"main\"\n\"489741\";\"Spassk\";\"other\"\n\"489741\";\"Spassk-Rjasanski\";\"other\"\n\"489741\";\"Spassk-Rjazanskij\";\"other\"\n\"489741\";\"Спасск-Рязанский\";\"other\"\n\"489743\";\"Spasskoye-Lutovinovo\";\"main\"\n\"489743\";\"Spass-Lutovinovskoye\";\"other\"\n\"489743\";\"Spassko-Lutovinovskoye\";\"other\"\n\"489743\";\"Spasskoje-Lutovinovo\";\"other\"\n\"489743\";\"Spassnoye-Lutovinovo\";\"other\"\n\"489743\";\"Спасское-Лутовиново\";\"other\"\n\"489778\";\"Spasskoye\";\"main\"\n\"489778\";\"Spasskoje\";\"other\"\n\"489778\";\"Спасское\";\"other\"\n\"489862\";\"Spas-Klepiki\";\"main\"\n\"489862\";\"Спас-Клепики\";\"other\"\n\"489868\";\"Spas-Demensk\";\"main\"\n\"489868\";\"Spas Demensko\";\"other\"\n\"489868\";\"Спас-Деменск\";\"other\"\n\"489910\";\"Sozimskiy\";\"main\"\n\"489910\";\"SOZIMSKIJ\";\"other\"\n\"489910\";\"Sozimskij\";\"other\"\n\"489910\";\"СОЗИМСКИЙ\";\"other\"\n\"489910\";\"Созимский\";\"other\"\n\"489990\";\"Sovetskoye\";\"main\"\n\"489990\";\"Mariental\";\"other\"\n\"489990\";\"Mariyental'\";\"other\"\n\"489990\";\"Pfannenstiel\";\"other\"\n\"489990\";\"SOVETSKOE\";\"other\"\n\"489990\";\"Sovetskoje\";\"other\"\n\"489990\";\"СОВЕТСКОЕ\";\"other\"\n\"489994\";\"Sovetskoye\";\"main\"\n\"489994\";\"Ketchener-Shebener\";\"other\"\n\"489994\";\"Ketchener-Shebenery\";\"other\"\n\"489994\";\"Ketchenerovskiy\";\"other\"\n\"489994\";\"Ketchenery\";\"other\"\n\"489994\";\"Ketchenery-Shebenery\";\"other\"\n\"489994\";\"SOVETSKOE\";\"other\"\n\"489994\";\"Sukhotinskiy\";\"other\"\n\"489994\";\"Кетченеры\";\"other\"\n\"489994\";\"СОВЕТСКОЕ\";\"other\"\n\"489994\";\"Советское\";\"other\"\n\"489997\";\"Kashkhatau\";\"main\"\n\"489997\";\"KASHKHATAU\";\"other\"\n\"489997\";\"Kashkatau\";\"other\"\n\"489997\";\"Kasjkhatau\";\"other\"\n\"489997\";\"Sovetskoye\";\"other\"\n\"489997\";\"КАШХАТАУ\";\"other\"\n\"489997\";\"Кашхатау\";\"other\"\n\"489998\";\"Shatoy\";\"main\"\n\"489998\";\"Schatai\";\"other\"\n\"489998\";\"Shatoi\";\"other\"\n\"489998\";\"Shatoj\";\"other\"\n\"489998\";\"Sovetskoe\";\"other\"\n\"489998\";\"Sovetskoye\";\"other\"\n\"489998\";\"Советское\";\"other\"\n\"489998\";\"Шатой\";\"other\"\n\"489999\";\"Khebda\";\"main\"\n\"489999\";\"Sovetskoe\";\"other\"\n\"489999\";\"Sovetskoye\";\"other\"\n\"489999\";\"Советское\";\"other\"\n\"489999\";\"Хебда\";\"other\"\n\"490039\";\"Sovetskiy\";\"main\"\n\"490039\";\"Iogannes\";\"other\"\n\"490039\";\"Iokhannes\";\"other\"\n\"490039\";\"Johannes\";\"other\"\n\"490039\";\"Kakis-kurka\";\"other\"\n\"490039\";\"SOVETSKIJ\";\"other\"\n\"490039\";\"Sankt Johannes\";\"other\"\n\"490039\";\"Sovetskij\";\"other\"\n\"490039\";\"СОВЕТСКИЙ\";\"other\"\n\"490039\";\"Советский\";\"other\"\n\"490040\";\"Sovetskiy\";\"main\"\n\"490040\";\"SOVETSKIJ\";\"other\"\n\"490040\";\"Sovetskij\";\"other\"\n\"490040\";\"СОВЕТСКИЙ\";\"other\"\n\"490040\";\"Советский\";\"other\"\n\"490064\";\"Sovetskaya\";\"main\"\n\"490064\";\"Chernyshevskaya\";\"other\"\n\"490064\";\"Sovetskaja\";\"other\"\n\"490064\";\"Советская\";\"other\"\n\"490065\";\"Sovetskaya\";\"main\"\n\"490065\";\"Sovetskaja\";\"other\"\n\"490065\";\"Sowjetskaya\";\"other\"\n\"490065\";\"Urupskaya\";\"other\"\n\"490065\";\"Советская\";\"other\"\n\"490066\";\"Sovetskaya\";\"main\"\n\"490066\";\"Sovetskaja\";\"other\"\n\"490066\";\"Советская\";\"other\"\n\"490067\";\"Sovetsk\";\"main\"\n\"490067\";\"Kukarka\";\"other\"\n\"490067\";\"SOVETSK\";\"other\"\n\"490067\";\"СОВЕТСК\";\"other\"\n\"490067\";\"Совецк\";\"other\"\n\"490068\";\"Sovetsk\";\"main\"\n\"490068\";\"SOVETSK\";\"other\"\n\"490068\";\"Til'zit\";\"other\"\n\"490068\";\"Tilsit\";\"other\"\n\"490068\";\"Til’zit\";\"other\"\n\"490068\";\"СОВЕТСК\";\"other\"\n\"490068\";\"Совецк\";\"other\"\n\"490108\";\"Sotnikovskoye\";\"main\"\n\"490108\";\"Sotnikovskoje\";\"other\"\n\"490108\";\"Сотниковское\";\"other\"\n\"490172\";\"Sosnovyy Bor\";\"main\"\n\"490172\";\"SOSNOVYJ BOR\";\"other\"\n\"490172\";\"Sosnovyj Bor\";\"other\"\n\"490172\";\"СОСНОВЫЙ БОР\";\"other\"\n\"490211\";\"Sosnovoborsk\";\"main\"\n\"490211\";\"Litvino\";\"other\"\n\"490211\";\"Litvinovo\";\"other\"\n\"490211\";\"SOSNOVOBORSK\";\"other\"\n\"490211\";\"СОСНОВОБОРСК\";\"other\"\n\"490211\";\"Сосновоборск\";\"other\"\n\"490213\";\"Sosnovo\";\"main\"\n\"490213\";\"Rautu\";\"other\"\n\"490213\";\"Сосново\";\"other\"\n\"490276\";\"Sosnovka\";\"main\"\n\"490276\";\"SOSNOVKA\";\"other\"\n\"490276\";\"СОСНОВКА\";\"other\"\n\"490276\";\"Сосновка\";\"other\"\n\"490300\";\"Sosnovka\";\"main\"\n\"490300\";\"Сосновка\";\"other\"\n\"490323\";\"Sosnovka\";\"main\"\n\"490323\";\"SOSNOVKA\";\"other\"\n\"490323\";\"СОСНОВКА\";\"other\"\n\"490391\";\"Sosnogorsk\";\"main\"\n\"490391\";\"Izhma\";\"other\"\n\"490391\";\"SOSNOGORSK\";\"other\"\n\"490391\";\"СОСНОГОРСК\";\"other\"\n\"490391\";\"Сосногорск\";\"other\"\n\"490425\";\"Soskovo\";\"main\"\n\"490425\";\"Сосково\";\"other\"\n\"490437\";\"Sosenskiy\";\"main\"\n\"490437\";\"SOSENSKIJ\";\"other\"\n\"490437\";\"Sosenskij\";\"other\"\n\"490437\";\"СОСЕНСКИЙ\";\"other\"\n\"490437\";\"Сосенский\";\"other\"\n\"490466\";\"Sortavala\";\"main\"\n\"490466\";\"SORTAVALA\";\"other\"\n\"490466\";\"Sordavala\";\"other\"\n\"490466\";\"Sorravala\";\"other\"\n\"490466\";\"СОРТАВАЛА\";\"other\"\n\"490466\";\"Сортавала\";\"other\"\n\"490554\";\"Sorochinsk\";\"main\"\n\"490554\";\"SOROCHINSK\";\"other\"\n\"490554\";\"Sorotsjinsk\";\"other\"\n\"490554\";\"СОРОЧИНСК\";\"other\"\n\"490554\";\"Сорочинск\";\"other\"\n\"490637\";\"Sonkovo\";\"main\"\n\"490637\";\"Сонково\";\"other\"\n\"490683\";\"Somovo\";\"main\"\n\"490683\";\"SOMOVO\";\"other\"\n\"490683\";\"СОМОВО\";\"other\"\n\"490683\";\"Сомово\";\"other\"\n\"490737\";\"Solyanka\";\"main\"\n\"490737\";\"Saljanka\";\"other\"\n\"490737\";\"Солянка\";\"other\"\n\"490743\";\"Sol’vychegodsk\";\"main\"\n\"490743\";\"Sol'vychegodsk\";\"ascii\"\n\"490743\";\"Solvytsjegodsk\";\"other\"\n\"490743\";\"Сольвычегодск\";\"other\"\n\"490747\";\"Soluno-Dmitriyevskoye\";\"main\"\n\"490747\";\"Soluno-Dmitrijevskoje\";\"other\"\n\"490747\";\"Солуно-Дмитриевское\";\"other\"\n\"490750\";\"Sol’tsy\";\"main\"\n\"490750\";\"Sol'tsy\";\"ascii\"\n\"490750\";\"Soltsy\";\"other\"\n\"490750\";\"Solzy\";\"other\"\n\"490750\";\"Сольцы\";\"other\"\n\"490846\";\"Solotcha\";\"main\"\n\"490846\";\"SOLOTCHA\";\"other\"\n\"490846\";\"Solodcha\";\"other\"\n\"490846\";\"Solottsja\";\"other\"\n\"490846\";\"СОЛОТЧА\";\"other\"\n\"490846\";\"Солотча\";\"other\"\n\"490914\";\"Solomenskoye\";\"main\"\n\"490914\";\"Solomenskoje\";\"other\"\n\"490914\";\"Соломенское\";\"other\"\n\"490976\";\"Solntsevo\";\"main\"\n\"490976\";\"Korovino\";\"other\"\n\"490976\";\"SOLNCEVO\";\"other\"\n\"490976\";\"СОЛНЦЕВО\";\"other\"\n\"490976\";\"Солнцево\";\"other\"\n\"490993\";\"Solnechnoye\";\"main\"\n\"490993\";\"SOLNECHNOE\";\"other\"\n\"490993\";\"Solnetsjnoje\";\"other\"\n\"490993\";\"СОЛНЕЧНОЕ\";\"other\"\n\"490993\";\"Солнечное\";\"other\"\n\"490996\";\"Solnechnogorsk\";\"main\"\n\"490996\";\"SOLNECHNOGORSK\";\"other\"\n\"490996\";\"Solnechangorski\";\"other\"\n\"490996\";\"Solnechnogorski\";\"other\"\n\"490996\";\"Solnechnogorskiy\";\"other\"\n\"490996\";\"Solnetsjnogorsk\";\"other\"\n\"490996\";\"СОЛНЕЧНОГОРСК\";\"other\"\n\"490996\";\"Солнечногорск\";\"other\"\n\"491019\";\"Sol’-Iletsk\";\"main\"\n\"491019\";\"Sol'-Iletsk\";\"ascii\"\n\"491019\";\"Iletsk\";\"other\"\n\"491019\";\"Iletskaya\";\"other\"\n\"491019\";\"Iletskaya Zashchita\";\"other\"\n\"491019\";\"Iletskaya Zashkta\";\"other\"\n\"491019\";\"Ilezk\";\"other\"\n\"491019\";\"Sol-Iletsk\";\"other\"\n\"491019\";\"Соль-Илецк\";\"other\"\n\"491023\";\"Solikamsk\";\"main\"\n\"491023\";\"SOLIKAMSK\";\"other\"\n\"491023\";\"Solikamskas\";\"other\"\n\"491023\";\"СОЛИКАМСК\";\"other\"\n\"491023\";\"Соликамск\";\"other\"\n\"491025\";\"Soligalich\";\"main\"\n\"491025\";\"SOLIGALICH\";\"other\"\n\"491025\";\"Soligalitsj\";\"other\"\n\"491025\";\"СОЛИГАЛИЧ\";\"other\"\n\"491025\";\"Солигалич\";\"other\"\n\"491029\";\"Solginskiy\";\"main\"\n\"491029\";\"SOLGINSKIJ\";\"other\"\n\"491029\";\"Solginskij\";\"other\"\n\"491029\";\"СОЛГИНСКИЙ\";\"other\"\n\"491029\";\"Солгинский\";\"other\"\n\"491079\";\"Soldatskaya\";\"main\"\n\"491079\";\"Солдатская\";\"other\"\n\"491085\";\"Soldato-Aleksandrovskoye\";\"main\"\n\"491085\";\"Soldato-Aleksandrovskoje\";\"other\"\n\"491085\";\"Soldatsko-Aleksandrovskoye\";\"other\"\n\"491085\";\"Солдато-Александровское\";\"other\"\n\"491145\";\"Sokol’skoye\";\"main\"\n\"491145\";\"Sokol'skoye\";\"ascii\"\n\"491145\";\"Sokolskoje\";\"other\"\n\"491145\";\"Сокольское\";\"other\"\n\"491155\";\"Sokolovyy\";\"main\"\n\"491155\";\"Razboyshchina\";\"other\"\n\"491155\";\"Razboyshehina\";\"other\"\n\"491155\";\"SOKOLOVYJ\";\"other\"\n\"491155\";\"Sokolovyj\";\"other\"\n\"491155\";\"СОКОЛОВЫЙ\";\"other\"\n\"491155\";\"Соколовый\";\"other\"\n\"491158\";\"Sokolovskoye\";\"main\"\n\"491158\";\"Sokolovskiy\";\"other\"\n\"491158\";\"Sokolovskoje\";\"other\"\n\"491158\";\"Соколовское\";\"other\"\n\"491171\";\"Sokolovo-Kundryuchenskiy\";\"main\"\n\"491171\";\"Sokolovo-Kundrjutsjenskij\";\"other\"\n\"491171\";\"Sokolovo-Kundryuchenskoye\";\"other\"\n\"491171\";\"Sokolovskiy\";\"other\"\n\"491171\";\"Соколово-Кундрюченский\";\"other\"\n\"491281\";\"Sokol\";\"main\"\n\"491281\";\"SOKOL\";\"other\"\n\"491281\";\"СОКОЛ\";\"other\"\n\"491281\";\"Сокол\";\"other\"\n\"491351\";\"Sofrino\";\"main\"\n\"491351\";\"Софрино\";\"other\"\n\"491422\";\"Sochi\";\"main\"\n\"491422\";\"Sochi - Soci\";\"other\"\n\"491422\";\"Sochi - Со́чи\";\"other\"\n\"491422\";\"Soci\";\"other\"\n\"491422\";\"Soczi\";\"other\"\n\"491422\";\"Sotchi\";\"other\"\n\"491422\";\"Sotji\";\"other\"\n\"491422\";\"Sotschi\";\"other\"\n\"491422\";\"Sotsi\";\"other\"\n\"491422\";\"Sotsji\";\"other\"\n\"491422\";\"Sotši\";\"other\"\n\"491422\";\"Soĉi\";\"other\"\n\"491422\";\"Ssotschi\";\"other\"\n\"491422\";\"sochi\";\"other\"\n\"491422\";\"suo qi\";\"other\"\n\"491422\";\"Сочи\";\"other\"\n\"491422\";\"Сочі\";\"other\"\n\"491422\";\"სოჭი\";\"other\"\n\"491422\";\"ソチ\";\"other\"\n\"491422\";\"索契\";\"other\"\n\"491422\";\"소치\";\"other\"\n\"491480\";\"Sobinka\";\"main\"\n\"491480\";\"Rabochiy Poselok Sobinka\";\"other\"\n\"491480\";\"Rabochiy Posëlok Sobinka\";\"other\"\n\"491480\";\"SOBINKA\";\"other\"\n\"491480\";\"СОБИНКА\";\"other\"\n\"491480\";\"Собинка\";\"other\"\n\"491538\";\"Snegiri\";\"main\"\n\"491538\";\"SNEGIRI\";\"other\"\n\"491538\";\"Snigiri\";\"other\"\n\"491538\";\"СНЕГИРИ\";\"other\"\n\"491538\";\"Снегири\";\"other\"\n\"491576\";\"Smyshlyayevka\";\"main\"\n\"491576\";\"Kuibyschew-Smyschljajewka\";\"other\"\n\"491576\";\"SMYSHLJAEVKA\";\"other\"\n\"491576\";\"Smysjljaevka\";\"other\"\n\"491576\";\"СМЫШЛЯЕВКА\";\"other\"\n\"491576\";\"Смышляевка\";\"other\"\n\"491660\";\"Smolino\";\"main\"\n\"491660\";\"SMOLINO\";\"other\"\n\"491660\";\"СМОЛИНО\";\"other\"\n\"491685\";\"Smolenskaya\";\"main\"\n\"491685\";\"Smolenskaja\";\"other\"\n\"491685\";\"Смоленская\";\"other\"\n\"491687\";\"Smolensk\";\"main\"\n\"491687\";\"Smalensk\";\"other\"\n\"491687\";\"Smolenscum\";\"other\"\n\"491687\";\"Smolenskas\";\"other\"\n\"491687\";\"Smoleńsk\";\"other\"\n\"491687\";\"seumollenseukeu\";\"other\"\n\"491687\";\"si mo leng si ke\";\"other\"\n\"491687\";\"smwlnsq\";\"other\"\n\"491687\";\"sumorensuku\";\"other\"\n\"491687\";\"Смаленск\";\"other\"\n\"491687\";\"Смоленск\";\"other\"\n\"491687\";\"סמולנסק\";\"other\"\n\"491687\";\"スモレンスク\";\"other\"\n\"491687\";\"斯摩棱斯克\";\"other\"\n\"491687\";\"스몰렌스크\";\"other\"\n\"491882\";\"Slobodskoy\";\"main\"\n\"491882\";\"SLOBODSKOJ\";\"other\"\n\"491882\";\"Slobodskoj\";\"other\"\n\"491882\";\"Slovodskoi\";\"other\"\n\"491882\";\"СЛОБОДСКОЙ\";\"other\"\n\"491882\";\"Слободской\";\"other\"\n\"492042\";\"Sloboda\";\"main\"\n\"492042\";\"SLOBODA\";\"other\"\n\"492042\";\"Slovoda\";\"other\"\n\"492042\";\"СЛОБОДА\";\"other\"\n\"492042\";\"Слобода\";\"other\"\n\"492094\";\"Slavyansk-na-Kubani\";\"main\"\n\"492094\";\"SLAVJANSK NA KUBANI\";\"other\"\n\"492094\";\"Slavanskaya\";\"other\"\n\"492094\";\"Slavjansk-na-Kubani\";\"other\"\n\"492094\";\"Slavyanskaya\";\"other\"\n\"492094\";\"Slawjanskaja\";\"other\"\n\"492094\";\"Sslawjanskaja\";\"other\"\n\"492094\";\"seullabyanseukeunakubani\";\"other\"\n\"492094\";\"СЛАВЯНСК НА КУБАНИ\";\"other\"\n\"492094\";\"Славянск-на-Кубани\";\"other\"\n\"492094\";\"Слов'янськ на Кубані\";\"other\"\n\"492094\";\"슬라뱐스크나쿠바니\";\"other\"\n\"492112\";\"Slavsk\";\"main\"\n\"492112\";\"Genrikhsval'de\";\"other\"\n\"492112\";\"Genrikhsval’de\";\"other\"\n\"492112\";\"Heinrichswalde\";\"other\"\n\"492112\";\"Khaynrikhsval'de\";\"other\"\n\"492112\";\"Khaynrikhsval’de\";\"other\"\n\"492112\";\"Khayrikhsval'de\";\"other\"\n\"492112\";\"Khayrikhsval’de\";\"other\"\n\"492112\";\"SLAVSK\";\"other\"\n\"492112\";\"Slawsk\";\"other\"\n\"492112\";\"СЛАВСК\";\"other\"\n\"492112\";\"Славск\";\"other\"\n\"492162\";\"Slantsy\";\"main\"\n\"492162\";\"Olantsy\";\"other\"\n\"492162\";\"SLANCY\";\"other\"\n\"492162\";\"СЛАНЦЫ\";\"other\"\n\"492162\";\"Сланцы\";\"other\"\n\"492218\";\"Skuratovskiy\";\"main\"\n\"492218\";\"SKURATOVSKIJ\";\"other\"\n\"492218\";\"Skuratovka\";\"other\"\n\"492218\";\"Skuratovo\";\"other\"\n\"492218\";\"Skuratovskij\";\"other\"\n\"492218\";\"Yuzhnyy\";\"other\"\n\"492218\";\"СКУРАТОВСКИЙ\";\"other\"\n\"492333\";\"Skoropuskovskiy\";\"main\"\n\"492333\";\"SKOROPUSKOVSKIJ\";\"other\"\n\"492333\";\"Skoropuskovskij\";\"other\"\n\"492333\";\"СКОРОПУСКОВСКИЙ\";\"other\"\n\"492351\";\"Skorodnoye\";\"main\"\n\"492351\";\"Skorodnoe\";\"other\"\n\"492351\";\"Skorodnoje\";\"other\"\n\"492351\";\"Скородное\";\"other\"\n\"492376\";\"Skopin\";\"main\"\n\"492376\";\"SKOPIN\";\"other\"\n\"492376\";\"СКОПИН\";\"other\"\n\"492376\";\"Скопин\";\"other\"\n\"492448\";\"Skhodnya\";\"main\"\n\"492448\";\"SKHODNJA\";\"other\"\n\"492448\";\"Skhodnja\";\"other\"\n\"492448\";\"СХОДНЯ\";\"other\"\n\"492448\";\"Сходня\";\"other\"\n\"492579\";\"Siverskiy\";\"main\"\n\"492579\";\"Dernovskiy\";\"other\"\n\"492579\";\"Siverskij\";\"other\"\n\"492579\";\"Сиверский\";\"other\"\n\"492592\";\"Siva\";\"main\"\n\"492592\";\"Сива\";\"other\"\n\"492596\";\"Siukh\";\"main\"\n\"492596\";\"Сиух\";\"other\"\n\"492633\";\"Sitniki\";\"main\"\n\"492633\";\"Kozlikha\";\"other\"\n\"492633\";\"SITNIKI\";\"other\"\n\"492633\";\"Sitnikovo\";\"other\"\n\"492633\";\"СИТНИКИ\";\"other\"\n\"492633\";\"Ситники\";\"other\"\n\"492657\";\"Sista-Palkino\";\"main\"\n\"492657\";\"Sisto-Palkino\";\"other\"\n\"492657\";\"Систа-Палкино\";\"other\"\n\"492708\";\"Sinyavskoye\";\"main\"\n\"492708\";\"Sinjavskoje\";\"other\"\n\"492708\";\"Sinyavka\";\"other\"\n\"492708\";\"Синявское\";\"other\"\n\"492712\";\"Sinyavino\";\"main\"\n\"492712\";\"SINJAVINO\";\"other\"\n\"492712\";\"Sinjavino\";\"other\"\n\"492712\";\"Sinyavino Nomer Pervyy\";\"other\"\n\"492712\";\"СИНЯВИНО\";\"other\"\n\"492712\";\"Синявино\";\"other\"\n\"492853\";\"Sinegorskiy\";\"main\"\n\"492853\";\"SINEGORSKIJ\";\"other\"\n\"492853\";\"Sinegorskij\";\"other\"\n\"492853\";\"СИНЕГОРСКИЙ\";\"other\"\n\"492853\";\"Синегорский\";\"other\"\n\"492860\";\"Sindor\";\"main\"\n\"492860\";\"SINDOR\";\"other\"\n\"492860\";\"Sindorskaya\";\"other\"\n\"492860\";\"СИНДОР\";\"other\"\n\"492860\";\"Синдор\";\"other\"\n\"492944\";\"Sim\";\"main\"\n\"492944\";\"SIM\";\"other\"\n\"492944\";\"Simski Zavod\";\"other\"\n\"492944\";\"СИМ\";\"other\"\n\"492944\";\"Сим\";\"other\"\n\"492970\";\"Silikatnyy\";\"main\"\n\"492970\";\"SILIKATNYJ\";\"other\"\n\"492970\";\"Silikatnyj\";\"other\"\n\"492970\";\"СИЛИКАТНЫЙ\";\"other\"\n\"493040\";\"Sigayevo\";\"main\"\n\"493040\";\"Sigajevo\";\"other\"\n\"493040\";\"Сигаево\";\"other\"\n\"493160\";\"Sibay\";\"main\"\n\"493160\";\"SIBAJ\";\"other\"\n\"493160\";\"Sibai\";\"other\"\n\"493160\";\"Sibaj\";\"other\"\n\"493160\";\"sibai\";\"other\"\n\"493160\";\"СИБАЙ\";\"other\"\n\"493160\";\"Сибай\";\"other\"\n\"493160\";\"시바이\";\"other\"\n\"493184\";\"Shvartsevskiy\";\"main\"\n\"493184\";\"Poselok Imeni Shvartsa\";\"other\"\n\"493184\";\"Posëlok Imeni Shvartsa\";\"other\"\n\"493184\";\"SHVARCEVSKIJ\";\"other\"\n\"493184\";\"Sjvartsevskij\";\"other\"\n\"493184\";\"ШВАРЦЕВСКИЙ\";\"other\"\n\"493201\";\"Shuyskoye\";\"main\"\n\"493201\";\"Shayskoye\";\"other\"\n\"493201\";\"Shuiskoe\";\"other\"\n\"493201\";\"Sjujskoje\";\"other\"\n\"493201\";\"Шуйское\";\"other\"\n\"493228\";\"Shuya\";\"main\"\n\"493228\";\"SHUJA\";\"other\"\n\"493228\";\"Sjuja\";\"other\"\n\"493228\";\"ШУЯ\";\"other\"\n\"493228\";\"Шуя\";\"other\"\n\"493231\";\"Shuya\";\"main\"\n\"493231\";\"SHUJA\";\"other\"\n\"493231\";\"Schuja\";\"other\"\n\"493231\";\"Shuja\";\"other\"\n\"493231\";\"Suja\";\"other\"\n\"493231\";\"syuya\";\"other\"\n\"493231\";\"Ŝuja\";\"other\"\n\"493231\";\"Šuja\";\"other\"\n\"493231\";\"ШУЯ\";\"other\"\n\"493231\";\"Шуя\";\"other\"\n\"493231\";\"슈야\";\"other\"\n\"493316\";\"Shushary\";\"main\"\n\"493316\";\"SHUSHARY\";\"other\"\n\"493316\";\"Sjusjary\";\"other\"\n\"493316\";\"ШУШАРЫ\";\"other\"\n\"493316\";\"Шушары\";\"other\"\n\"493394\";\"Shun’ga\";\"main\"\n\"493394\";\"Shun'ga\";\"ascii\"\n\"493394\";\"Sjunga\";\"other\"\n\"493394\";\"Шуньга\";\"other\"\n\"493405\";\"Shumyachi\";\"main\"\n\"493405\";\"SHUMJACHI\";\"other\"\n\"493405\";\"Sjumjatsji\";\"other\"\n\"493405\";\"ШУМЯЧИ\";\"other\"\n\"493405\";\"Шумячи\";\"other\"\n\"493452\";\"Shumikhinskiy\";\"main\"\n\"493452\";\"Goreloye\";\"other\"\n\"493452\";\"SHUMIKHINSKIJ\";\"other\"\n\"493452\";\"Sjumikhinskij\";\"other\"\n\"493452\";\"ШУМИХИНСКИЙ\";\"other\"\n\"493463\";\"Shumerlya\";\"main\"\n\"493463\";\"Cemerle\";\"other\"\n\"493463\";\"Schumerlja\";\"other\"\n\"493463\";\"Sjumerlja\";\"other\"\n\"493463\";\"Soemoerle\";\"other\"\n\"493463\";\"Sumerla\";\"other\"\n\"493463\";\"syumeleullya\";\"other\"\n\"493463\";\"Çĕмĕрле\";\"other\"\n\"493463\";\"Śömörle\";\"other\"\n\"493463\";\"Ŝumerla\";\"other\"\n\"493463\";\"Шумерля\";\"other\"\n\"493463\";\"슈메를랴\";\"other\"\n\"493566\";\"Shugurovo\";\"main\"\n\"493566\";\"SHUGUROVO\";\"other\"\n\"493566\";\"Sjugurovo\";\"other\"\n\"493566\";\"ШУГУРОВО\";\"other\"\n\"493566\";\"Шугурово\";\"other\"\n\"493600\";\"Shudayag\";\"main\"\n\"493600\";\"SANGORODOK\";\"other\"\n\"493600\";\"Sangorodok\";\"other\"\n\"493600\";\"САНГОРОДОК\";\"other\"\n\"493600\";\"Шудаяг\";\"other\"\n\"493702\";\"Mikhaylovsk\";\"main\"\n\"493702\";\"Mikhaylovska\";\"other\"\n\"493702\";\"Mikhaylovskoye\";\"other\"\n\"493702\";\"Shpakovskoe\";\"other\"\n\"493702\";\"Shpakovskoye\";\"other\"\n\"493702\";\"Sjpakovskoje\";\"other\"\n\"493702\";\"Михайловск\";\"other\"\n\"493702\";\"Шпаковское\";\"other\"\n\"493721\";\"Shovgenovskiy\";\"main\"\n\"493721\";\"Khakurinokhabl'\";\"other\"\n\"493721\";\"Khakurinokhabl’\";\"other\"\n\"493721\";\"Sjovgenovskij\";\"other\"\n\"493721\";\"Шовгеновский\";\"other\"\n\"493795\";\"Shonguy\";\"main\"\n\"493795\";\"Khutora Shonguy\";\"other\"\n\"493795\";\"SHONGUJ\";\"other\"\n\"493795\";\"Schongui\";\"other\"\n\"493795\";\"Shongui\";\"other\"\n\"493795\";\"Sjonguj\";\"other\"\n\"493795\";\"ШОНГУЙ\";\"other\"\n\"493795\";\"Шонгуй\";\"other\"\n\"493839\";\"Sholokhovskiy\";\"main\"\n\"493839\";\"Sholokhovka\";\"other\"\n\"493839\";\"Sjolokhovskij\";\"other\"\n\"493839\";\"Шолоховский\";\"other\"\n\"493866\";\"Kvartsitnyy\";\"main\"\n\"493866\";\"Karelgranit\";\"other\"\n\"493866\";\"Kvarcitnyj\";\"other\"\n\"493866\";\"Poselok Karelgranita\";\"other\"\n\"493866\";\"Posëlok Karelgranita\";\"other\"\n\"493866\";\"Кварцитный\";\"other\"\n\"493970\";\"Shlissel’burg\";\"main\"\n\"493970\";\"Shlissel'burg\";\"ascii\"\n\"493970\";\"Petrokrepost'\";\"other\"\n\"493970\";\"Petrokrepost’\";\"other\"\n\"493970\";\"Schliisselburg\";\"other\"\n\"493970\";\"Schluselburg\";\"other\"\n\"493970\";\"Schlusselburg\";\"other\"\n\"493970\";\"Schlüselburg\";\"other\"\n\"493970\";\"Schlüsselburg\";\"other\"\n\"493970\";\"Sjlisselburg\";\"other\"\n\"493970\";\"Шлиссельбург\";\"other\"\n\"493997\";\"Shkurinskaya\";\"main\"\n\"493997\";\"Schkurinskaja\";\"other\"\n\"493997\";\"Sjkurinskaja\";\"other\"\n\"493997\";\"Шкуринская\";\"other\"\n\"494199\";\"Shirokovskiy\";\"main\"\n\"494199\";\"SHIROKOVSKIJ\";\"other\"\n\"494199\";\"Shirokovo\";\"other\"\n\"494199\";\"Shirokoye\";\"other\"\n\"494199\";\"Sjirokovskij\";\"other\"\n\"494199\";\"ШИРОКОВСКИЙ\";\"other\"\n\"494199\";\"Широковский\";\"other\"\n\"494249\";\"Shirochanka\";\"main\"\n\"494249\";\"Shirochanskoye\";\"other\"\n\"494249\";\"Sjirotsjanka\";\"other\"\n\"494249\";\"Широчанка\";\"other\"\n\"494275\";\"Shiringushi\";\"main\"\n\"494275\";\"SHIRINGUSHI\";\"other\"\n\"494275\";\"Sjiringusji\";\"other\"\n\"494275\";\"ШИРИНГУШИ\";\"other\"\n\"494275\";\"Ширингуши\";\"other\"\n\"494304\";\"Shipitsyno\";\"main\"\n\"494304\";\"SHIPICYNO\";\"other\"\n\"494304\";\"Shchipitsyno\";\"other\"\n\"494304\";\"Shipitsino\";\"other\"\n\"494304\";\"Sjipitsyno\";\"other\"\n\"494304\";\"ШИПИЦЫНО\";\"other\"\n\"494304\";\"Шипицыно\";\"other\"\n\"494366\";\"Shimsk\";\"main\"\n\"494366\";\"SHIMSK\";\"other\"\n\"494366\";\"Shimskaya\";\"other\"\n\"494366\";\"Sjimsk\";\"other\"\n\"494366\";\"ШИМСК\";\"other\"\n\"494366\";\"Шимск\";\"other\"\n\"494378\";\"Shimorskoye\";\"main\"\n\"494378\";\"Gryaznovka\";\"other\"\n\"494378\";\"SHIMORSKOE\";\"other\"\n\"494378\";\"Sjimorskoje\";\"other\"\n\"494378\";\"Zhimorskoye\";\"other\"\n\"494378\";\"ШИМОРСКОЕ\";\"other\"\n\"494427\";\"Shilovo\";\"main\"\n\"494427\";\"SHILOVO\";\"other\"\n\"494427\";\"Schilowo\";\"other\"\n\"494427\";\"Sjilovo\";\"other\"\n\"494427\";\"ШИЛОВО\";\"other\"\n\"494427\";\"Шилово\";\"other\"\n\"494430\";\"Shilovo\";\"main\"\n\"494430\";\"Шилово\";\"other\"\n\"494514\";\"Shikhazany\";\"main\"\n\"494514\";\"Sjikhazany\";\"other\"\n\"494514\";\"Шихазаны\";\"other\"\n\"494519\";\"Shikhany\";\"main\"\n\"494519\";\"SHIKHANY\";\"other\"\n\"494519\";\"Sjikhany\";\"other\"\n\"494519\";\"ШИХАНЫ\";\"other\"\n\"494531\";\"Shigony\";\"main\"\n\"494531\";\"Sjigony\";\"other\"\n\"494531\";\"Шигоны\";\"other\"\n\"494846\";\"Shepsi\";\"main\"\n\"494846\";\"Sjepsi\";\"other\"\n\"494846\";\"Шепси\";\"other\"\n\"494877\";\"Shentala\";\"main\"\n\"494877\";\"Sjentala\";\"other\"\n\"494877\";\"Шентала\";\"other\"\n\"494884\";\"Shenkursk\";\"main\"\n\"494884\";\"SHENKURSK\";\"other\"\n\"494884\";\"Sjenkursk\";\"other\"\n\"494884\";\"ШЕНКУРСК\";\"other\"\n\"494884\";\"Шенкурск\";\"other\"\n\"494900\";\"Shemysheyka\";\"main\"\n\"494900\";\"SHEMYSHEJKA\";\"other\"\n\"494900\";\"Shemyshleyka\";\"other\"\n\"494900\";\"Sjemysjejka\";\"other\"\n\"494900\";\"ШЕМЫШЕЙКА\";\"other\"\n\"494900\";\"Шемышейка\";\"other\"\n\"494920\";\"Shemursha\";\"main\"\n\"494920\";\"Sjemursja\";\"other\"\n\"494920\";\"Шемурша\";\"other\"\n\"494925\";\"Shemordan\";\"main\"\n\"494925\";\"SHEMORDAN\";\"other\"\n\"494925\";\"Sjemordan\";\"other\"\n\"494925\";\"ШЕМОРДАН\";\"other\"\n\"494925\";\"Шемордан\";\"other\"\n\"494970\";\"Sheltozero\";\"main\"\n\"494970\";\"Sheltozerskiy\";\"other\"\n\"494970\";\"Sjeltozero\";\"other\"\n\"494970\";\"Шелтозеро\";\"other\"\n\"495000\";\"Shelkovskaya\";\"main\"\n\"495000\";\"Shelkovskaja\";\"other\"\n\"495000\";\"Sjelkovskaja\";\"other\"\n\"495000\";\"Шелковская\";\"other\"\n\"495062\";\"Sheksna\";\"main\"\n\"495062\";\"Nikol'skoye\";\"other\"\n\"495062\";\"Nikol’skoye\";\"other\"\n\"495062\";\"SHEKSNA\";\"other\"\n\"495062\";\"Sjeksna\";\"other\"\n\"495062\";\"ШЕКСНА\";\"other\"\n\"495062\";\"Шексна\";\"other\"\n\"495102\";\"Shedok\";\"main\"\n\"495102\";\"Shchedok\";\"other\"\n\"495102\";\"Sjedok\";\"other\"\n\"495102\";\"Шедок\";\"other\"\n\"495112\";\"Shebekino\";\"main\"\n\"495112\";\"SHEBEKINO\";\"other\"\n\"495112\";\"Sjebekino\";\"other\"\n\"495112\";\"ШЕБЕКИНО\";\"other\"\n\"495112\";\"Шебекино\";\"other\"\n\"495206\";\"Shchigry\";\"main\"\n\"495206\";\"SHHIGRY\";\"other\"\n\"495206\";\"Schtschigry\";\"other\"\n\"495206\";\"Shchigary\";\"other\"\n\"495206\";\"Sjtsjigry\";\"other\"\n\"495206\";\"Suchigry\";\"other\"\n\"495206\";\"ЩИГРЫ\";\"other\"\n\"495206\";\"Щигры\";\"other\"\n\"495260\";\"Shcherbinka\";\"main\"\n\"495260\";\"SHHERBINKA\";\"other\"\n\"495260\";\"Shcherbinki\";\"other\"\n\"495260\";\"Sjtsjerbinka\";\"other\"\n\"495260\";\"ЩЕРБИНКА\";\"other\"\n\"495260\";\"Щербинка\";\"other\"\n\"495344\";\"Shchelkovo\";\"main\"\n\"495344\";\"Shhjolkovo\";\"other\"\n\"495344\";\"Щелково\";\"other\"\n\"495344\";\"Щёлково\";\"other\"\n\"495394\";\"Shchëkino\";\"main\"\n\"495394\";\"Shchekino\";\"ascii\"\n\"495394\";\"SHHEKINO\";\"other\"\n\"495394\";\"Schekino\";\"other\"\n\"495394\";\"Shehekino\";\"other\"\n\"495394\";\"Shhjokino\";\"other\"\n\"495394\";\"ЩЕКИНО\";\"other\"\n\"495394\";\"Щёкино\";\"other\"\n\"495412\";\"Shcheglovo\";\"main\"\n\"495412\";\"Sjtsjeglovo\";\"other\"\n\"495412\";\"Щеглово\";\"other\"\n\"495470\";\"Shaygino\";\"main\"\n\"495470\";\"SHAJGINO\";\"other\"\n\"495470\";\"Sjajgino\";\"other\"\n\"495470\";\"ШАЙГИНО\";\"other\"\n\"495470\";\"Шайгино\";\"other\"\n\"495515\";\"Shaturtorf\";\"main\"\n\"495515\";\"Poselok Tsentral'nyy\";\"other\"\n\"495515\";\"Posëlok Tsentral’nyy\";\"other\"\n\"495515\";\"SHATURTORF\";\"other\"\n\"495515\";\"Sjaturtorf\";\"other\"\n\"495515\";\"Tsentral'ny\";\"other\"\n\"495515\";\"Tsentral’ny\";\"other\"\n\"495515\";\"ШАТУРТОРФ\";\"other\"\n\"495515\";\"Шатурторф\";\"other\"\n\"495518\";\"Shatura\";\"main\"\n\"495518\";\"SHATURA\";\"other\"\n\"495518\";\"Schatura\";\"other\"\n\"495518\";\"Sjatura\";\"other\"\n\"495518\";\"ШАТУРА\";\"other\"\n\"495518\";\"Шатура\";\"other\"\n\"495532\";\"Shatsk\";\"main\"\n\"495532\";\"SHACK\";\"other\"\n\"495532\";\"Sjatsk\";\"other\"\n\"495532\";\"ШАЦК\";\"other\"\n\"495532\";\"Шацк\";\"other\"\n\"495562\";\"Shatki\";\"main\"\n\"495562\";\"SHATKI\";\"other\"\n\"495562\";\"Sjatki\";\"other\"\n\"495562\";\"ШАТКИ\";\"other\"\n\"495562\";\"Шатки\";\"other\"\n\"495575\";\"Shatalovo\";\"main\"\n\"495575\";\"Sjatalovo\";\"other\"\n\"495575\";\"Шаталово\";\"other\"\n\"495619\";\"Shar’ya\";\"main\"\n\"495619\";\"Shar'ya\";\"ascii\"\n\"495619\";\"Sjarja\";\"other\"\n\"495619\";\"Шарья\";\"other\"\n\"495670\";\"Sharlyk\";\"main\"\n\"495670\";\"Sjarlyk\";\"other\"\n\"495670\";\"Шарлык\";\"other\"\n\"495688\";\"Sharkan\";\"main\"\n\"495688\";\"Sjarkan\";\"other\"\n\"495688\";\"Шаркан\";\"other\"\n\"495767\";\"Sharanga\";\"main\"\n\"495767\";\"SHARANGA\";\"other\"\n\"495767\";\"Sjaranga\";\"other\"\n\"495767\";\"ШАРАНГА\";\"other\"\n\"495767\";\"Шаранга\";\"other\"\n\"495770\";\"Sharan\";\"main\"\n\"495770\";\"Sjaran\";\"other\"\n\"495770\";\"Шаран\";\"other\"\n\"495891\";\"Shamkhal-Termen\";\"main\"\n\"495891\";\"Sjamkhal-Termen\";\"other\"\n\"495891\";\"Шамхал-Термен\";\"other\"\n\"495893\";\"Shamkhal\";\"main\"\n\"495893\";\"SHAMKHAL\";\"other\"\n\"495893\";\"Shamkal\";\"other\"\n\"495893\";\"Sjamkhal\";\"other\"\n\"495893\";\"ШАМХАЛ\";\"other\"\n\"495893\";\"Шамхал\";\"other\"\n\"495904\";\"Shamary\";\"main\"\n\"495904\";\"SHAMARY\";\"other\"\n\"495904\";\"Sjamary\";\"other\"\n\"495904\";\"ШАМАРЫ\";\"other\"\n\"495904\";\"Шамары\";\"other\"\n\"495915\";\"Shalya\";\"main\"\n\"495915\";\"SHALJA\";\"other\"\n\"495915\";\"Shiyariya\";\"other\"\n\"495915\";\"Sjalja\";\"other\"\n\"495915\";\"ШАЛЯ\";\"other\"\n\"495915\";\"Шаля\";\"other\"\n\"495918\";\"Shalushka\";\"main\"\n\"495918\";\"Sjalusjka\";\"other\"\n\"495918\";\"Шалушка\";\"other\"\n\"495922\";\"Shal’skiy\";\"main\"\n\"495922\";\"Shal'skiy\";\"ascii\"\n\"495922\";\"Sala\";\"other\"\n\"495922\";\"Shala\";\"other\"\n\"495922\";\"Sjalskij\";\"other\"\n\"495922\";\"Шальский\";\"other\"\n\"495969\";\"Shalazhi\";\"main\"\n\"495969\";\"Podgornoye\";\"other\"\n\"495969\";\"Sjalazji\";\"other\"\n\"495969\";\"Шалажи\";\"other\"\n\"495983\";\"Shalakusha\";\"main\"\n\"495983\";\"SHALAKUSHA\";\"other\"\n\"495983\";\"Sjalakusja\";\"other\"\n\"495983\";\"ШАЛАКУША\";\"other\"\n\"495983\";\"Шалакуша\";\"other\"\n\"496012\";\"Shakhun’ya\";\"main\"\n\"496012\";\"Shakhun'ya\";\"ascii\"\n\"496012\";\"SHAKHUN'JA\";\"other\"\n\"496012\";\"Sjakhunja\";\"other\"\n\"496012\";\"ШАХУНЬЯ\";\"other\"\n\"496012\";\"Шахунья\";\"other\"\n\"496015\";\"Shakhty\";\"main\"\n\"496015\";\"Aleksandrovsk-Grushevskiy\";\"other\"\n\"496015\";\"Aleksandrovsk-Grushevskoy\";\"other\"\n\"496015\";\"SHAKHTY\";\"other\"\n\"496015\";\"Sahti\";\"other\"\n\"496015\";\"Sahto\";\"other\"\n\"496015\";\"Schachty\";\"other\"\n\"496015\";\"Shakhti\";\"other\"\n\"496015\";\"Sjachty\";\"other\"\n\"496015\";\"Szachty\";\"other\"\n\"496015\";\"syaheuti\";\"other\"\n\"496015\";\"Ŝaĥti\";\"other\"\n\"496015\";\"Šahtõ\";\"other\"\n\"496015\";\"ШАХТЫ\";\"other\"\n\"496015\";\"Шахти\";\"other\"\n\"496015\";\"Шахты\";\"other\"\n\"496015\";\"샤흐티\";\"other\"\n\"496023\";\"Shakhta\";\"main\"\n\"496023\";\"Poselok Shakhta Nomer Shestoy\";\"other\"\n\"496023\";\"Posëlok Shakhta Nomer Shestoy\";\"other\"\n\"496023\";\"SHAKHTA\";\"other\"\n\"496023\";\"Sjakhta\";\"other\"\n\"496023\";\"ШАХТА\";\"other\"\n\"496035\";\"Shakhovskaya\";\"main\"\n\"496035\";\"SHAKHOVSKAJA\";\"other\"\n\"496035\";\"Sjakhovskaja\";\"other\"\n\"496035\";\"ШАХОВСКАЯ\";\"other\"\n\"496097\";\"Shafranovo\";\"main\"\n\"496097\";\"SHAFRANOVO\";\"other\"\n\"496097\";\"Sjafranovo\";\"other\"\n\"496097\";\"ШАФРАНОВО\";\"other\"\n\"496097\";\"Шафраново\";\"other\"\n\"496159\";\"Shablykino\";\"main\"\n\"496159\";\"SHABLYKINO\";\"other\"\n\"496159\";\"Sjablykino\";\"other\"\n\"496159\";\"ШАБЛЫКИНО\";\"other\"\n\"496159\";\"Шаблыкино\";\"other\"\n\"496204\";\"Shaami-Yurt\";\"main\"\n\"496204\";\"Shaami-Jurt\";\"other\"\n\"496204\";\"Shama-Yurt\";\"other\"\n\"496204\";\"Shaman-Yurt\";\"other\"\n\"496204\";\"Sjaami-Jurt\";\"other\"\n\"496204\";\"Zelenaya Rosha\";\"other\"\n\"496204\";\"Zelenaya Roshcha\";\"other\"\n\"496204\";\"Zelënaya Roshcha\";\"other\"\n\"496204\";\"Шаами-Юрт\";\"other\"\n\"496246\";\"Sevsk\";\"main\"\n\"496246\";\"SEVSK\";\"other\"\n\"496246\";\"Syevsk\";\"other\"\n\"496246\";\"СЕВСК\";\"other\"\n\"496246\";\"Севск\";\"other\"\n\"496267\";\"Severskaya\";\"main\"\n\"496267\";\"Severskaja\";\"other\"\n\"496267\";\"Sewerskaja\";\"other\"\n\"496267\";\"Северская\";\"other\"\n\"496269\";\"Severo-Zadonsk\";\"main\"\n\"496269\";\"Северо-Задонск\";\"other\"\n\"496275\";\"Severoural’sk\";\"main\"\n\"496275\";\"Severoural'sk\";\"ascii\"\n\"496275\";\"Petropavlovsk\";\"other\"\n\"496275\";\"Petropavlovski\";\"other\"\n\"496275\";\"Petropavlovskiy\";\"other\"\n\"496275\";\"Petropavlovskoye\";\"other\"\n\"496275\";\"Severouralsk\";\"other\"\n\"496275\";\"Североуральск\";\"other\"\n\"496278\";\"Severomorsk\";\"main\"\n\"496278\";\"SEVEROMORSK\";\"other\"\n\"496278\";\"Seweromorsk\";\"other\"\n\"496278\";\"Siewieromorsk\";\"other\"\n\"496278\";\"Vaenga\";\"other\"\n\"496278\";\"Vaenka\";\"other\"\n\"496278\";\"Vayenga\";\"other\"\n\"496278\";\"sebelomoleuseukeu\";\"other\"\n\"496278\";\"sevu~eromorusuku\";\"other\"\n\"496278\";\"СЕВЕРОМОРСК\";\"other\"\n\"496278\";\"Североморск\";\"other\"\n\"496278\";\"セヴェロモルスク\";\"other\"\n\"496278\";\"세베로모르스크\";\"other\"\n\"496285\";\"Severodvinsk\";\"main\"\n\"496285\";\"Molotovsk\";\"other\"\n\"496285\";\"Molotowsk\";\"other\"\n\"496285\";\"SEVERODVINSK\";\"other\"\n\"496285\";\"Sewerodwinsk\";\"other\"\n\"496285\";\"Siewierodwinsk\";\"other\"\n\"496285\";\"Siewierodwińsk\";\"other\"\n\"496285\";\"Sudostroy\";\"other\"\n\"496285\";\"sebelodeubinseukeu\";\"other\"\n\"496285\";\"sevu~erodovu~insuku\";\"other\"\n\"496285\";\"СЕВЕРОДВИНСК\";\"other\"\n\"496285\";\"Северодвинск\";\"other\"\n\"496285\";\"セヴェロドヴィンスク\";\"other\"\n\"496285\";\"세베로드빈스크\";\"other\"\n\"496290\";\"Tretiy Severnyy\";\"main\"\n\"496290\";\"Severnyy Tretiy\";\"other\"\n\"496290\";\"Tretij severnyj\";\"other\"\n\"496290\";\"Третий северный\";\"other\"\n\"496307\";\"Severnyy-Kospashskiy\";\"main\"\n\"496307\";\"Severnyj-Kospashskij\";\"other\"\n\"496307\";\"Severnyj-Kospasjskij\";\"other\"\n\"496307\";\"Северный-Коспашский\";\"other\"\n\"496346\";\"Severnyy\";\"main\"\n\"496346\";\"SEVERNYJ\";\"other\"\n\"496346\";\"Severnyj\";\"other\"\n\"496346\";\"СЕВЕРНЫЙ\";\"other\"\n\"496346\";\"Северный\";\"other\"\n\"496358\";\"Severnyy\";\"main\"\n\"496358\";\"Северный\";\"other\"\n\"496361\";\"Severnyy\";\"main\"\n\"496361\";\"Severny\";\"other\"\n\"496361\";\"Severnyj zh/m\";\"other\"\n\"496361\";\"Северный ж/м\";\"other\"\n\"496381\";\"Severnoye\";\"main\"\n\"496381\";\"Severnoje\";\"other\"\n\"496381\";\"Sok-Karmalinsk\";\"other\"\n\"496381\";\"Северное\";\"other\"\n\"496385\";\"Severnoye\";\"main\"\n\"496385\";\"Severnoje\";\"other\"\n\"496385\";\"Северное\";\"other\"\n\"496478\";\"Sestroretsk\";\"main\"\n\"496478\";\"SESTRORECK\";\"other\"\n\"496478\";\"Sestrorezk\";\"other\"\n\"496478\";\"СЕСТРОРЕЦК\";\"other\"\n\"496478\";\"Сестрорецк\";\"other\"\n\"496503\";\"Seshcha\";\"main\"\n\"496503\";\"Seshchinskiy\";\"other\"\n\"496503\";\"Sesjtsja\";\"other\"\n\"496503\";\"Сеща\";\"other\"\n\"496505\";\"Serzhen'-Yurt\";\"main\"\n\"496505\";\"Podlesnoye\";\"other\"\n\"496505\";\"Serzhen'-Jurt\";\"other\"\n\"496505\";\"Serzjen-Jurt\";\"other\"\n\"496505\";\"Сержень-Юрт\";\"other\"\n\"496519\";\"Sertolovo\";\"main\"\n\"496519\";\"SERTOLOVO\";\"other\"\n\"496519\";\"Sertolovo Pervoye\";\"other\"\n\"496519\";\"СЕРТОЛОВО\";\"other\"\n\"496519\";\"Сертолово\";\"other\"\n\"496527\";\"Serpukhov\";\"main\"\n\"496527\";\"SERPUKHOV\";\"other\"\n\"496527\";\"Serpoechov\";\"other\"\n\"496527\";\"Serpuchov\";\"other\"\n\"496527\";\"Serpuchow\";\"other\"\n\"496527\";\"Serpuhhov\";\"other\"\n\"496527\";\"Serpuhov\";\"other\"\n\"496527\";\"Serpuĥov\";\"other\"\n\"496527\";\"Sierpuchow\";\"other\"\n\"496527\";\"Sierpukhovo\";\"other\"\n\"496527\";\"seleupuhopeu\";\"other\"\n\"496527\";\"СЕРПУХОВ\";\"other\"\n\"496527\";\"Серпухов\";\"other\"\n\"496527\";\"세르푸호프\";\"other\"\n\"496561\";\"Sernur\";\"main\"\n\"496561\";\"SERNUR\";\"other\"\n\"496561\";\"СЕРНУР\";\"other\"\n\"496561\";\"Сернур\";\"other\"\n\"496564\";\"Sernovodsk\";\"main\"\n\"496564\";\"Aslambekovskoye\";\"other\"\n\"496564\";\"Mikhailovskaya\";\"other\"\n\"496564\";\"Mikhaylovskaya\";\"other\"\n\"496564\";\"Sernovodskoe\";\"other\"\n\"496564\";\"Sernovodskoye\";\"other\"\n\"496564\";\"Серноводск\";\"other\"\n\"496564\";\"Серноводское\";\"other\"\n\"496568\";\"Sernovodsk\";\"main\"\n\"496568\";\"Серноводск\";\"other\"\n\"496610\";\"Sergokala\";\"main\"\n\"496610\";\"Sergokalkh\";\"other\"\n\"496610\";\"Сергокала\";\"other\"\n\"496638\";\"Sergiyev Posad\";\"main\"\n\"496638\";\"Sergiev Posad\";\"other\"\n\"496638\";\"Sergijev Posad\";\"other\"\n\"496638\";\"Sergijev Possad\";\"other\"\n\"496638\";\"Sergijew Possad\";\"other\"\n\"496638\";\"Sergiyev\";\"other\"\n\"496638\";\"Sergiyevskiy Posad\";\"other\"\n\"496638\";\"Siergijew Posad\";\"other\"\n\"496638\";\"Zagorsk\";\"other\"\n\"496638\";\"Сергиев Посад\";\"other\"\n\"496638\";\"Сергијев Посад\";\"other\"\n\"496802\";\"Sergach\";\"main\"\n\"496802\";\"SERGACH\";\"other\"\n\"496802\";\"Sergatsj\";\"other\"\n\"496802\";\"СЕРГАЧ\";\"other\"\n\"496802\";\"Сергач\";\"other\"\n\"496859\";\"Seredka\";\"main\"\n\"496859\";\"Середка\";\"other\"\n\"496869\";\"Seredeyskiy\";\"main\"\n\"496869\";\"SEREDEJSKIJ\";\"other\"\n\"496869\";\"Seredejskij\";\"other\"\n\"496869\";\"Yermolovo\";\"other\"\n\"496869\";\"СЕРЕДЕЙСКИЙ\";\"other\"\n\"496869\";\"Середейский\";\"other\"\n\"496879\";\"Serebryanyye Prudy\";\"main\"\n\"496879\";\"Serebrenne-Prudi\";\"other\"\n\"496879\";\"Serebrjanye Prudy\";\"other\"\n\"496879\";\"Серебряные Пруды\";\"other\"\n\"496934\";\"Serdobsk\";\"main\"\n\"496934\";\"Bol'shaya Serdoba\";\"other\"\n\"496934\";\"Bol’shaya Serdoba\";\"other\"\n\"496934\";\"SERDOBSK\";\"other\"\n\"496934\";\"СЕРДОБСК\";\"other\"\n\"496934\";\"Сердобск\";\"other\"\n\"496954\";\"Serafimovskiy\";\"main\"\n\"496954\";\"SERAFIMOVSKIJ\";\"other\"\n\"496954\";\"Serafimovka\";\"other\"\n\"496954\";\"Serafimovskij\";\"other\"\n\"496954\";\"СЕРАФИМОВСКИЙ\";\"other\"\n\"496954\";\"Серафимовский\";\"other\"\n\"496957\";\"Serafimovich\";\"main\"\n\"496957\";\"SERAFIMOVICH\";\"other\"\n\"496957\";\"Serafimovitch Pristan\";\"other\"\n\"496957\";\"Serafimovitsj\";\"other\"\n\"496957\";\"Ust'-Medveditskaya\";\"other\"\n\"496957\";\"Ust’-Medveditskaya\";\"other\"\n\"496957\";\"СЕРАФИМОВИЧ\";\"other\"\n\"496957\";\"Серафимович\";\"other\"\n\"497019\";\"Sennoy\";\"main\"\n\"497019\";\"SENNOJ\";\"other\"\n\"497019\";\"Sennoj\";\"other\"\n\"497019\";\"СЕННОЙ\";\"other\"\n\"497019\";\"Сенной\";\"other\"\n\"497094\";\"Sengiley\";\"main\"\n\"497094\";\"SENGILEJ\";\"other\"\n\"497094\";\"Sengelei\";\"other\"\n\"497094\";\"Sengilej\";\"other\"\n\"497094\";\"СЕНГИЛЕЙ\";\"other\"\n\"497094\";\"Сенгилей\";\"other\"\n\"497165\";\"Semkhoz\";\"main\"\n\"497165\";\"SEMKHOZ\";\"other\"\n\"497165\";\"СЕМХОЗ\";\"other\"\n\"497165\";\"Семхоз\";\"other\"\n\"497206\";\"Semiluki\";\"main\"\n\"497206\";\"SEMILUKI\";\"other\"\n\"497206\";\"СЕМИЛУКИ\";\"other\"\n\"497206\";\"Семилуки\";\"other\"\n\"497211\";\"Semiletka\";\"main\"\n\"497211\";\"SEMILETKA\";\"other\"\n\"497211\";\"СЕМИЛЕТКА\";\"other\"\n\"497211\";\"Семилетка\";\"other\"\n\"497218\";\"Semikarakorsk\";\"main\"\n\"497218\";\"SEMIKARAKORSK\";\"other\"\n\"497218\";\"Semikarakorskaya\";\"other\"\n\"497218\";\"Semikarakorskiy\";\"other\"\n\"497218\";\"Semikarakovskaya\";\"other\"\n\"497218\";\"СЕМИКАРАКОРСК\";\"other\"\n\"497218\";\"Семикаракорск\";\"other\"\n\"497242\";\"Semibratovo\";\"main\"\n\"497242\";\"Isady\";\"other\"\n\"497242\";\"SEMIBRATOVO\";\"other\"\n\"497242\";\"СЕМИБРАТОВО\";\"other\"\n\"497242\";\"Семибратово\";\"other\"\n\"497450\";\"Semënov\";\"main\"\n\"497450\";\"Semenov\";\"ascii\"\n\"497450\";\"Semenow\";\"other\"\n\"497450\";\"Semenowo\";\"other\"\n\"497450\";\"Семенов\";\"other\"\n\"497450\";\"Семёнов\";\"other\"\n\"497534\";\"Selyatino\";\"main\"\n\"497534\";\"Seljatino\";\"other\"\n\"497534\";\"Селятино\";\"other\"\n\"497547\";\"Selty\";\"main\"\n\"497547\";\"Селты\";\"other\"\n\"497610\";\"Sel’tso\";\"main\"\n\"497610\";\"Sel'tso\";\"ascii\"\n\"497610\";\"Сельцо\";\"other\"\n\"497661\";\"Selizharovo\";\"main\"\n\"497661\";\"SELIZHAROVO\";\"other\"\n\"497661\";\"Selijarovo\";\"other\"\n\"497661\";\"Selizjarovo\";\"other\"\n\"497661\";\"СЕЛИЖАРОВО\";\"other\"\n\"497661\";\"Селижарово\";\"other\"\n\"497764\";\"Selishche\";\"main\"\n\"497764\";\"Selisjtsje\";\"other\"\n\"497764\";\"Селище\";\"other\"\n\"497826\";\"Selezni\";\"main\"\n\"497826\";\"Селезни\";\"other\"\n\"497927\";\"Segezha\";\"main\"\n\"497927\";\"Poselok Segezha\";\"other\"\n\"497927\";\"Posëlok Segezha\";\"other\"\n\"497927\";\"SEGEZHA\";\"other\"\n\"497927\";\"Segesha\";\"other\"\n\"497927\";\"Segezja\";\"other\"\n\"497927\";\"Sekee\";\"other\"\n\"497927\";\"СЕГЕЖА\";\"other\"\n\"497927\";\"Сегежа\";\"other\"\n\"497971\";\"Sedkyrkeshch\";\"main\"\n\"497971\";\"SEDKYRKESHH\";\"other\"\n\"497971\";\"Sedkyrkesjtsj\";\"other\"\n\"497971\";\"СЕДКЫРКЕЩ\";\"other\"\n\"497971\";\"Седкыркещ\";\"other\"\n\"497984\";\"Sechenovo\";\"main\"\n\"497984\";\"Setsjenovo\";\"other\"\n\"497984\";\"Teply Stan\";\"other\"\n\"497984\";\"Teplyy Stan\";\"other\"\n\"497984\";\"Tëply Stan\";\"other\"\n\"497984\";\"Tëplyy Stan\";\"other\"\n\"497984\";\"Сеченово\";\"other\"\n\"497995\";\"Sebrovo\";\"main\"\n\"497995\";\"SEBROVO\";\"other\"\n\"497995\";\"СЕБРОВО\";\"other\"\n\"497995\";\"Себрово\";\"other\"\n\"498001\";\"Sebezh\";\"main\"\n\"498001\";\"SEBEZH\";\"other\"\n\"498001\";\"Sebezj\";\"other\"\n\"498001\";\"СЕБЕЖ\";\"other\"\n\"498001\";\"Себеж\";\"other\"\n\"498035\";\"Sazonovo\";\"main\"\n\"498035\";\"Belyye Kresty\";\"other\"\n\"498035\";\"SAZONOVO\";\"other\"\n\"498035\";\"САЗОНОВО\";\"other\"\n\"498035\";\"Сазоново\";\"other\"\n\"498264\";\"Savino\";\"main\"\n\"498264\";\"SAVINO\";\"other\"\n\"498264\";\"Savina\";\"other\"\n\"498264\";\"САВИНО\";\"other\"\n\"498264\";\"Савино\";\"other\"\n\"498295\";\"Savinka\";\"main\"\n\"498295\";\"Савинка\";\"other\"\n\"498366\";\"Savasleyka\";\"main\"\n\"498366\";\"Savaslejka\";\"other\"\n\"498366\";\"Savostleyka\";\"other\"\n\"498366\";\"Саваслейка\";\"other\"\n\"498418\";\"Satka\";\"main\"\n\"498418\";\"SATKA\";\"other\"\n\"498418\";\"САТКА\";\"other\"\n\"498418\";\"Сатка\";\"other\"\n\"498421\";\"Satis\";\"main\"\n\"498421\";\"Сатис\";\"other\"\n\"498430\";\"Satinka\";\"main\"\n\"498430\";\"Сатинка\";\"other\"\n\"498437\";\"Sasykoli\";\"main\"\n\"498437\";\"Сасыколи\";\"other\"\n\"498462\";\"Sary-Tyuz\";\"main\"\n\"498462\";\"Prikubanskoye\";\"other\"\n\"498462\";\"Sary-Tjuz\";\"other\"\n\"498462\";\"Сары-Тюз\";\"other\"\n\"498501\";\"Sars\";\"main\"\n\"498525\";\"Sarov\";\"main\"\n\"498525\";\"Arzamas-16\";\"other\"\n\"498525\";\"Kremlev\";\"other\"\n\"498525\";\"Kremlëv\";\"other\"\n\"498525\";\"Sarou\";\"other\"\n\"498525\";\"Sarova\";\"other\"\n\"498525\";\"salopeu\";\"other\"\n\"498525\";\"Саров\";\"other\"\n\"498525\";\"Сароў\";\"other\"\n\"498525\";\"사로프\";\"other\"\n\"498537\";\"Sarmanovo\";\"main\"\n\"498537\";\"Sarmany\";\"other\"\n\"498537\";\"Сарманово\";\"other\"\n\"498538\";\"Sarmakovo\";\"main\"\n\"498538\";\"Sarlyukovo\";\"other\"\n\"498538\";\"Сармаково\";\"other\"\n\"498672\";\"Saratovskaya\";\"main\"\n\"498672\";\"Saratovskaja\";\"other\"\n\"498672\";\"Саратовская\";\"other\"\n\"498677\";\"Saratov\";\"main\"\n\"498677\";\"Saratova\";\"other\"\n\"498677\";\"Saratovas\";\"other\"\n\"498677\";\"Saratow\";\"other\"\n\"498677\";\"Saratów\";\"other\"\n\"498677\";\"Saretow\";\"other\"\n\"498677\";\"salatopeu\";\"other\"\n\"498677\";\"saratofu\";\"other\"\n\"498677\";\"srtwb\";\"other\"\n\"498677\";\"Саратов\";\"other\"\n\"498677\";\"סרטוב\";\"other\"\n\"498677\";\"サラトフ\";\"other\"\n\"498677\";\"사라토프\";\"other\"\n\"498687\";\"Sarapul\";\"main\"\n\"498687\";\"Сарапул\";\"other\"\n\"498696\";\"Sarany\";\"main\"\n\"498696\";\"Saranovskiy\";\"other\"\n\"498696\";\"Сараны\";\"other\"\n\"498698\";\"Saransk\";\"main\"\n\"498698\";\"Sarańsk\";\"other\"\n\"498698\";\"salanseukeu\";\"other\"\n\"498698\";\"srnsq\";\"other\"\n\"498698\";\"Саранск\";\"other\"\n\"498698\";\"סרנסק\";\"other\"\n\"498698\";\"사란스크\";\"other\"\n\"498703\";\"Sarana\";\"main\"\n\"498703\";\"Nizhnyaya Sarana\";\"other\"\n\"498703\";\"SARANA\";\"other\"\n\"498703\";\"САРАНА\";\"other\"\n\"498703\";\"Сарана\";\"other\"\n\"498708\";\"Saraktash\";\"main\"\n\"498708\";\"SARAKTASH\";\"other\"\n\"498708\";\"Saraktasj\";\"other\"\n\"498708\";\"САРАКТАШ\";\"other\"\n\"498708\";\"Саракташ\";\"other\"\n\"498711\";\"Sarai\";\"main\"\n\"498711\";\"SARAI\";\"other\"\n\"498711\";\"САРАИ\";\"other\"\n\"498711\";\"Сараи\";\"other\"\n\"498760\";\"Sapozhok\";\"main\"\n\"498760\";\"SAPOZHOK\";\"other\"\n\"498760\";\"Sapozjok\";\"other\"\n\"498760\";\"САПОЖОК\";\"other\"\n\"498760\";\"Сапожок\";\"other\"\n\"498783\";\"Sapërnyy\";\"main\"\n\"498783\";\"Sapernyy\";\"ascii\"\n\"498783\";\"Sapernyj\";\"other\"\n\"498783\";\"Саперный\";\"other\"\n\"498783\";\"Сапёрный\";\"other\"\n\"498785\";\"Sapernoye\";\"main\"\n\"498785\";\"Sapernoje\";\"other\"\n\"498785\";\"Саперное\";\"other\"\n\"498817\";\"Saint Petersburg\";\"main\"\n\"498817\";\"Agia Petroupole\";\"other\"\n\"498817\";\"Betyrbukh\";\"other\"\n\"498817\";\"Leningrad\";\"other\"\n\"498817\";\"Leningrado\";\"other\"\n\"498817\";\"Lungsod ng Sankt-Peterburg\";\"other\"\n\"498817\";\"Peterburg\";\"other\"\n\"498817\";\"Peterburgo\";\"other\"\n\"498817\";\"Peterburi\";\"other\"\n\"498817\";\"Petersburg\";\"other\"\n\"498817\";\"Petrograd\";\"other\"\n\"498817\";\"Petrogrado\";\"other\"\n\"498817\";\"Petrohrad\";\"other\"\n\"498817\";\"Petropolis\";\"other\"\n\"498817\";\"Petursborg\";\"other\"\n\"498817\";\"Pietari\";\"other\"\n\"498817\";\"Piter\";\"other\"\n\"498817\";\"Pétursborg\";\"other\"\n\"498817\";\"SPb\";\"other\"\n\"498817\";\"Saint Petersbourg\";\"other\"\n\"498817\";\"Saint Pétersbourg\";\"other\"\n\"498817\";\"Saint-Petersbourg\";\"other\"\n\"498817\";\"Saint-Petersburg\";\"other\"\n\"498817\";\"Saint-Pétersbourg\";\"other\"\n\"498817\";\"San Petersburgo\";\"other\"\n\"498817\";\"San Pietroburgo\";\"other\"\n\"498817\";\"San Pietruburgu\";\"other\"\n\"498817\";\"Sankt Peitersbuerg\";\"other\"\n\"498817\";\"Sankt Peterbourg\";\"other\"\n\"498817\";\"Sankt Peterburg\";\"other\"\n\"498817\";\"Sankt Peterburgas\";\"other\"\n\"498817\";\"Sankt Petersborg\";\"other\"\n\"498817\";\"Sankt Petersburg\";\"other\"\n\"498817\";\"Sankt Peterzburg\";\"other\"\n\"498817\";\"Sankt Péitersbuerg\";\"other\"\n\"498817\";\"Sankt-Peterburg\";\"other\"\n\"498817\";\"Sankt-Peterburgo\";\"other\"\n\"498817\";\"Sankt-Petersburg\";\"other\"\n\"498817\";\"Sankti Petursborg\";\"other\"\n\"498817\";\"Sankti Pétursborg\";\"other\"\n\"498817\";\"Sanktpeterburga\";\"other\"\n\"498817\";\"Sanktpēterburga\";\"other\"\n\"498817\";\"Sant Petersburg\";\"other\"\n\"498817\";\"Sao Petersburgo\";\"other\"\n\"498817\";\"Sint Petersbork\";\"other\"\n\"498817\";\"Sint-Petersburg\";\"other\"\n\"498817\";\"St Peterburg\";\"other\"\n\"498817\";\"St Petersburg\";\"other\"\n\"498817\";\"St. Petersburg\";\"other\"\n\"498817\";\"St.-Petersburg\";\"other\"\n\"498817\";\"Szentpetervar\";\"other\"\n\"498817\";\"Szentpétervár\";\"other\"\n\"498817\";\"São Petersburgo\";\"other\"\n\"498817\";\"sangteupeteleubuleukeu\";\"other\"\n\"498817\";\"sankt.peterburg\";\"other\"\n\"498817\";\"sankutopeteruburuku\";\"other\"\n\"498817\";\"sant btrsbrgh\";\"other\"\n\"498817\";\"sent pi te xrs beirk\";\"other\"\n\"498817\";\"sheng bi de bao\";\"other\"\n\"498817\";\"sn ptrzbwrg\";\"other\"\n\"498817\";\"snqt ptrbwrg\";\"other\"\n\"498817\";\"Αγία Πετρούπολη\";\"other\"\n\"498817\";\"Бетырбух\";\"other\"\n\"498817\";\"Ленинград\";\"other\"\n\"498817\";\"Петербург\";\"other\"\n\"498817\";\"Петроград\";\"other\"\n\"498817\";\"Питер\";\"other\"\n\"498817\";\"СПб\";\"other\"\n\"498817\";\"Санкт Петербург\";\"other\"\n\"498817\";\"Санкт Петерзбург\";\"other\"\n\"498817\";\"Санкт-Петербург\";\"other\"\n\"498817\";\"Սանկտ Պետերբուրգ\";\"other\"\n\"498817\";\"סנקט פטרבורג\";\"other\"\n\"498817\";\"سانت بطرسبرغ\";\"other\"\n\"498817\";\"سن پترزبورگ\";\"other\"\n\"498817\";\"เซนต์ปีเตอร์สเบิร์ก\";\"other\"\n\"498817\";\"სანკტ-პეტერბურგი\";\"other\"\n\"498817\";\"სანქტ-პეტერბურგი\";\"other\"\n\"498817\";\"サンクトペテルブルク\";\"other\"\n\"498817\";\"圣彼得堡\";\"other\"\n\"498817\";\"상트페테르부르크\";\"other\"\n\"498856\";\"Sandovo\";\"main\"\n\"498856\";\"Bandovo\";\"other\"\n\"498856\";\"Сандово\";\"other\"\n\"498866\";\"Sandata\";\"main\"\n\"498866\";\"Сандата\";\"other\"\n\"498877\";\"Sanchursk\";\"main\"\n\"498877\";\"SANCHURSK\";\"other\"\n\"498877\";\"Santsjursk\";\"other\"\n\"498877\";\"САНЧУРСК\";\"other\"\n\"498877\";\"Санчурск\";\"other\"\n\"498904\";\"Samur\";\"main\"\n\"498904\";\"Самур\";\"other\"\n\"498956\";\"Samoylovka\";\"main\"\n\"498956\";\"Imeni Samilovoi Promysel\";\"other\"\n\"498956\";\"SAMOJLOVKA\";\"other\"\n\"498956\";\"Samoilovka\";\"other\"\n\"498956\";\"Samoilovoi\";\"other\"\n\"498956\";\"Samojlovka\";\"other\"\n\"498956\";\"САМОЙЛОВКА\";\"other\"\n\"498956\";\"Самойловка\";\"other\"\n\"499025\";\"Samoded\";\"main\"\n\"499025\";\"SAMODED\";\"other\"\n\"499025\";\"САМОДЕД\";\"other\"\n\"499025\";\"Самодед\";\"other\"\n\"499040\";\"Sambek\";\"main\"\n\"499040\";\"SAMBEK\";\"other\"\n\"499040\";\"САМБЕК\";\"other\"\n\"499040\";\"Самбек\";\"other\"\n\"499051\";\"Samashki\";\"main\"\n\"499051\";\"Samashkinskaya\";\"other\"\n\"499051\";\"Samashkinskoye\";\"other\"\n\"499051\";\"Samasjki\";\"other\"\n\"499051\";\"Semashki\";\"other\"\n\"499051\";\"Самашки\";\"other\"\n\"499055\";\"Samarskoye\";\"main\"\n\"499055\";\"Samarskoje\";\"other\"\n\"499055\";\"Sanarskoye\";\"other\"\n\"499055\";\"Самарское\";\"other\"\n\"499099\";\"Samara\";\"main\"\n\"499099\";\"BALASHOV\";\"other\"\n\"499099\";\"Kuibyschew\";\"other\"\n\"499099\";\"Kuibyshev\";\"other\"\n\"499099\";\"Kujbyshev\";\"other\"\n\"499099\";\"Kuybyshev\";\"other\"\n\"499099\";\"Samāra\";\"other\"\n\"499099\";\"samala\";\"other\"\n\"499099\";\"samara\";\"other\"\n\"499099\";\"smrh\";\"other\"\n\"499099\";\"БАЛАШОВ\";\"other\"\n\"499099\";\"Куйбышев\";\"other\"\n\"499099\";\"Самара\";\"other\"\n\"499099\";\"סמרה\";\"other\"\n\"499099\";\"サマーラ\";\"other\"\n\"499099\";\"사마라\";\"other\"\n\"499133\";\"Saltykovka\";\"main\"\n\"499133\";\"Салтыковка\";\"other\"\n\"499161\";\"Sal’sk\";\"main\"\n\"499161\";\"Sal'sk\";\"ascii\"\n\"499161\";\"Salsk\";\"other\"\n\"499161\";\"Ssalsk\";\"other\"\n\"499161\";\"Torgovyy\";\"other\"\n\"499161\";\"Сальск\";\"other\"\n\"499228\";\"Salmi\";\"main\"\n\"499228\";\"Salmis\";\"other\"\n\"499228\";\"Салми\";\"other\"\n\"499292\";\"Salavat\";\"main\"\n\"499292\";\"SALAVAT\";\"other\"\n\"499292\";\"Salauat\";\"other\"\n\"499292\";\"Salawat\";\"other\"\n\"499292\";\"Saławat\";\"other\"\n\"499292\";\"САЛАВАТ\";\"other\"\n\"499292\";\"Салават\";\"other\"\n\"499342\";\"Sakmara\";\"main\"\n\"499342\";\"Sakmora\";\"other\"\n\"499342\";\"Сакмара\";\"other\"\n\"499363\";\"Sakharovo\";\"main\"\n\"499363\";\"SAKHAROVO\";\"other\"\n\"499363\";\"САХАРОВО\";\"other\"\n\"499363\";\"Сахарово\";\"other\"\n\"499404\";\"Sagopshi\";\"main\"\n\"499404\";\"Nogtsard\";\"other\"\n\"499404\";\"Sagopsh\";\"other\"\n\"499404\";\"Sagopshin\";\"other\"\n\"499404\";\"Sagopsji\";\"other\"\n\"499404\";\"Сагопши\";\"other\"\n\"499439\";\"Safonovo\";\"main\"\n\"499439\";\"Grjasnaja Guba\";\"other\"\n\"499439\";\"Gryaznaya\";\"other\"\n\"499439\";\"Gryaznaya Guba\";\"other\"\n\"499439\";\"Gryaznyy\";\"other\"\n\"499439\";\"SAFONOVO\";\"other\"\n\"499439\";\"САФОНОВО\";\"other\"\n\"499439\";\"Сафоново\";\"other\"\n\"499452\";\"Safonovo\";\"main\"\n\"499452\";\"Сафоново\";\"other\"\n\"499528\";\"Sadovoye\";\"main\"\n\"499528\";\"Pervoye Sadovoye\";\"other\"\n\"499528\";\"Sadovoe\";\"other\"\n\"499528\";\"Sadovoje\";\"other\"\n\"499528\";\"Sadovoye Pervoye\";\"other\"\n\"499528\";\"Садовое\";\"other\"\n\"499535\";\"Sadovoye\";\"main\"\n\"499535\";\"Sadovoje\";\"other\"\n\"499535\";\"Sadowoje\";\"other\"\n\"499535\";\"Садовое\";\"other\"\n\"499649\";\"Sabnova\";\"main\"\n\"499649\";\"Сабнова\";\"other\"\n\"499717\";\"Rzhev\";\"main\"\n\"499717\";\"RZHEV\";\"other\"\n\"499717\";\"Rjev\";\"other\"\n\"499717\";\"Rschew\";\"other\"\n\"499717\";\"Rshew\";\"other\"\n\"499717\";\"Rzeu\";\"other\"\n\"499717\";\"Rzev\";\"other\"\n\"499717\";\"Rzew\";\"other\"\n\"499717\";\"Rzjev\";\"other\"\n\"499717\";\"Rĵev\";\"other\"\n\"499717\";\"Rżew\";\"other\"\n\"499717\";\"Ržev\";\"other\"\n\"499717\";\"РЖЕВ\";\"other\"\n\"499717\";\"Ржев\";\"other\"\n\"499717\";\"Ржэў\";\"other\"\n\"499727\";\"Rzhavki\";\"main\"\n\"499727\";\"Rzjavki\";\"other\"\n\"499727\";\"Ржавки\";\"other\"\n\"499778\";\"Rzhanitsa\";\"main\"\n\"499778\";\"RZHANICA\";\"other\"\n\"499778\";\"Rzjanitsa\";\"other\"\n\"499778\";\"РЖАНИЦА\";\"other\"\n\"499778\";\"Ржаница\";\"other\"\n\"499782\";\"Rzhaksa\";\"main\"\n\"499782\";\"RZHAKSA\";\"other\"\n\"499782\";\"Rshaksa\";\"other\"\n\"499782\";\"Rzjaksa\";\"other\"\n\"499782\";\"РЖАКСА\";\"other\"\n\"499782\";\"Ржакса\";\"other\"\n\"499811\";\"Ryzdvyanyy\";\"main\"\n\"499811\";\"RYZDVJANYJ\";\"other\"\n\"499811\";\"Ryzdvjanyj\";\"other\"\n\"499811\";\"Ryzdvyannyy\";\"other\"\n\"499811\";\"РЫЗДВЯНЫЙ\";\"other\"\n\"499811\";\"Рыздвяный\";\"other\"\n\"499975\";\"Rybnoye\";\"main\"\n\"499975\";\"RYBNOE\";\"other\"\n\"499975\";\"Rybnoe\";\"other\"\n\"499975\";\"Rybnoje\";\"other\"\n\"499975\";\"РЫБНОЕ\";\"other\"\n\"499975\";\"Рыбное\";\"other\"\n\"499987\";\"Rybnaya Sloboda\";\"main\"\n\"499987\";\"Rybnaja Sloboda\";\"other\"\n\"499987\";\"Рыбная Слобода\";\"other\"\n\"500004\";\"Rybinsk\";\"main\"\n\"500004\";\"Andropov\";\"other\"\n\"500004\";\"RYBINSK\";\"other\"\n\"500004\";\"Ribinsk\";\"other\"\n\"500004\";\"Robinsk\";\"other\"\n\"500004\";\"Rybińsk\";\"other\"\n\"500004\";\"Rõbinsk\";\"other\"\n\"500004\";\"Shcherbakov\";\"other\"\n\"500004\";\"ruibinsuku\";\"other\"\n\"500004\";\"РЫБИНСК\";\"other\"\n\"500004\";\"Рибинск\";\"other\"\n\"500004\";\"Рыбинск\";\"other\"\n\"500004\";\"ルイビンスク\";\"other\"\n\"500047\";\"Ryazhsk\";\"main\"\n\"500047\";\"RJAZHSK\";\"other\"\n\"500047\";\"Rjazjsk\";\"other\"\n\"500047\";\"РЯЖСК\";\"other\"\n\"500047\";\"Ряжск\";\"other\"\n\"500060\";\"Ryazanskaya\";\"main\"\n\"500060\";\"Rayazanskaya\";\"other\"\n\"500060\";\"Riazanskaia\";\"other\"\n\"500060\";\"Rjazanskaja\";\"other\"\n\"500060\";\"Ryazanskoye\";\"other\"\n\"500060\";\"Рязанская\";\"other\"\n\"500096\";\"Ryazan’\";\"main\"\n\"500096\";\"Ryazan'\";\"ascii\"\n\"500096\";\"Resan\";\"other\"\n\"500096\";\"Riazan\";\"other\"\n\"500096\";\"Riazań\";\"other\"\n\"500096\";\"Rjasan\";\"other\"\n\"500096\";\"Rjazan\";\"other\"\n\"500096\";\"Rjazaň\";\"other\"\n\"500096\";\"Ryazan\";\"other\"\n\"500096\";\"liang zan\";\"other\"\n\"500096\";\"lyajan\";\"other\"\n\"500096\";\"ryazan\";\"other\"\n\"500096\";\"Рязань\";\"other\"\n\"500096\";\"リャザン\";\"other\"\n\"500096\";\"梁赞\";\"other\"\n\"500096\";\"랴잔\";\"other\"\n\"500184\";\"Ryabovo\";\"main\"\n\"500184\";\"RJABOVO\";\"other\"\n\"500184\";\"Rjabovo\";\"other\"\n\"500184\";\"РЯБОВО\";\"other\"\n\"500184\";\"Рябово\";\"other\"\n\"500299\";\"Ruzayevka\";\"main\"\n\"500299\";\"Orozay\";\"other\"\n\"500299\";\"RUZAEVKA\";\"other\"\n\"500299\";\"Rusaevka\";\"other\"\n\"500299\";\"Ruzaevka\";\"other\"\n\"500299\";\"Ruzajevka\";\"other\"\n\"500299\";\"РУЗАЕВКА\";\"other\"\n\"500299\";\"Рузаевка\";\"other\"\n\"500303\";\"Ruza\";\"main\"\n\"500303\";\"RUZA\";\"other\"\n\"500303\";\"Rusa\";\"other\"\n\"500303\";\"РУЗА\";\"other\"\n\"500303\";\"Руза\";\"other\"\n\"500316\";\"Rutul\";\"main\"\n\"500316\";\"Рутул\";\"other\"\n\"500350\";\"Russko-Vysotskoye\";\"main\"\n\"500350\";\"Russko-Vysotskoje\";\"other\"\n\"500350\";\"Vysotskoye\";\"other\"\n\"500350\";\"Русско-Высоцкое\";\"other\"\n\"500400\";\"Russkiy Kameshkir\";\"main\"\n\"500400\";\"Kameshkir Russkiy\";\"other\"\n\"500400\";\"Russkij Kamesjkir\";\"other\"\n\"500400\";\"Russkiy Kameskir\";\"other\"\n\"500400\";\"Русский Камешкир\";\"other\"\n\"500502\";\"Ruskeala\";\"main\"\n\"500502\";\"Рускеала\";\"other\"\n\"500667\";\"Rudnya\";\"main\"\n\"500667\";\"RUDNJA\";\"other\"\n\"500667\";\"Rudnja\";\"other\"\n\"500667\";\"РУДНЯ\";\"other\"\n\"500667\";\"Рудня\";\"other\"\n\"500678\";\"Rudnya\";\"main\"\n\"500678\";\"RUDNJA\";\"other\"\n\"500678\";\"Rudnja\";\"other\"\n\"500678\";\"РУДНЯ\";\"other\"\n\"500678\";\"Рудня\";\"other\"\n\"500695\";\"Rudnichnyy\";\"main\"\n\"500695\";\"Averbakhovskoye\";\"other\"\n\"500695\";\"RUDNICHNYJ\";\"other\"\n\"500695\";\"Rudnitsjnyj\";\"other\"\n\"500695\";\"РУДНИЧНЫЙ\";\"other\"\n\"500695\";\"Рудничный\";\"other\"\n\"500843\";\"Rublëvo\";\"main\"\n\"500843\";\"Rublevo\";\"ascii\"\n\"500843\";\"Рублево\";\"other\"\n\"500843\";\"Рублёво\";\"other\"\n\"500886\";\"Rtishchevo\";\"main\"\n\"500886\";\"RTISHHEVO\";\"other\"\n\"500886\";\"Rtischtschewo\";\"other\"\n\"500886\";\"Rtisjtsjevo\";\"other\"\n\"500886\";\"РТИЩЕВО\";\"other\"\n\"500886\";\"Ртищево\";\"other\"\n\"500996\";\"Rozhdestveno\";\"main\"\n\"500996\";\"Rozjdestveno\";\"other\"\n\"500996\";\"Рождествено\";\"other\"\n\"501012\";\"Rozhdestveno\";\"main\"\n\"501012\";\"Rozhdestvino\";\"other\"\n\"501012\";\"Рождествено\";\"other\"\n\"501027\";\"Rozhdestveno\";\"main\"\n\"501027\";\"Rozjdestveno\";\"other\"\n\"501027\";\"Рождествено\";\"other\"\n\"501091\";\"Rovnoye\";\"main\"\n\"501091\";\"ROVNOE\";\"other\"\n\"501091\";\"Rovnoe\";\"other\"\n\"501091\";\"Rovnoje\";\"other\"\n\"501091\";\"Zel'man\";\"other\"\n\"501091\";\"Zel’man\";\"other\"\n\"501091\";\"РОВНОЕ\";\"other\"\n\"501091\";\"Ровное\";\"other\"\n\"501175\";\"Rostov-na-Donu\";\"main\"\n\"501175\";\"Rostoph ston Nton\";\"other\"\n\"501175\";\"Rostov\";\"other\"\n\"501175\";\"Rostov Doni aeaeres\";\"other\"\n\"501175\";\"Rostov Doni ääres\";\"other\"\n\"501175\";\"Rostov aan de Don\";\"other\"\n\"501175\";\"Rostov del Don\";\"other\"\n\"501175\";\"Rostov na Don\";\"other\"\n\"501175\";\"Rostov na Donu\";\"other\"\n\"501175\";\"Rostov nad Donom\";\"other\"\n\"501175\";\"Rostov-on-Don\";\"other\"\n\"501175\";\"Rostov-pe-Don\";\"other\"\n\"501175\";\"Rostov-sur-le-Don\";\"other\"\n\"501175\";\"Rostov-war-Don\";\"other\"\n\"501175\";\"Rostova pie Donas\";\"other\"\n\"501175\";\"Rostovas prie Dono\";\"other\"\n\"501175\";\"Rostow\";\"other\"\n\"501175\";\"Rostow Am Don\";\"other\"\n\"501175\";\"Rostow am Don\";\"other\"\n\"501175\";\"Rostow nad Donem\";\"other\"\n\"501175\";\"Rostów nad Donem\";\"other\"\n\"501175\";\"dun he pan luo si tuo fu\";\"other\"\n\"501175\";\"loseutopeunadonu\";\"other\"\n\"501175\";\"Ροστόφ στον Ντον\";\"other\"\n\"501175\";\"Ростов на Дон\";\"other\"\n\"501175\";\"Ростов на Дону\";\"other\"\n\"501175\";\"Ростов-на-Дону\";\"other\"\n\"501175\";\"רוסטוב על הדון\";\"other\"\n\"501175\";\"ロストフ・ナ・ドヌ\";\"other\"\n\"501175\";\"顿河畔罗斯托夫\";\"other\"\n\"501175\";\"로스토프나도누\";\"other\"\n\"501183\";\"Rostov\";\"main\"\n\"501183\";\"Rostoph\";\"other\"\n\"501183\";\"Rostov Veliki\";\"other\"\n\"501183\";\"Rostov Velikiy\";\"other\"\n\"501183\";\"Rostov Veliky\";\"other\"\n\"501183\";\"Rostov-Yaroslavskiy\";\"other\"\n\"501183\";\"Rostovia\";\"other\"\n\"501183\";\"Rostow\";\"other\"\n\"501183\";\"Rostów\";\"other\"\n\"501183\";\"luo si tuo fu\";\"other\"\n\"501183\";\"Ροστόφ\";\"other\"\n\"501183\";\"Ростов\";\"other\"\n\"501183\";\"罗斯托夫\";\"other\"\n\"501215\";\"Rossosh’\";\"main\"\n\"501215\";\"Rossosh'\";\"ascii\"\n\"501215\";\"Pervaya Rossosh'\";\"other\"\n\"501215\";\"Pervaya Rossosh’\";\"other\"\n\"501215\";\"Rossosh' Pervaya\";\"other\"\n\"501215\";\"Rossoshi\";\"other\"\n\"501215\";\"Rossosh’ Pervaya\";\"other\"\n\"501215\";\"Rossosji\";\"other\"\n\"501215\";\"Россоши\";\"other\"\n\"501215\";\"Россошь\";\"other\"\n\"501231\";\"Rossoh’\";\"main\"\n\"501231\";\"Rossoh'\";\"ascii\"\n\"501231\";\"Rossosch\";\"other\"\n\"501231\";\"Rossosh'\";\"other\"\n\"501231\";\"Rossosj\";\"other\"\n\"501231\";\"Россошь\";\"other\"\n\"501265\";\"Roslyakovo\";\"main\"\n\"501265\";\"ROSLJAKOVO\";\"other\"\n\"501265\";\"Rosljakova\";\"other\"\n\"501265\";\"Rosljakovo\";\"other\"\n\"501265\";\"Roslyakova\";\"other\"\n\"501265\";\"РОСЛЯКОВО\";\"other\"\n\"501265\";\"Росляково\";\"other\"\n\"501283\";\"Roslavl’\";\"main\"\n\"501283\";\"Roslavl'\";\"ascii\"\n\"501283\";\"ROSLAVL'\";\"other\"\n\"501283\";\"Raslawl\";\"other\"\n\"501283\";\"Roslavl\";\"other\"\n\"501283\";\"Roslawl\";\"other\"\n\"501283\";\"РОСЛАВЛЬ\";\"other\"\n\"501283\";\"Рославль\";\"other\"\n\"501287\";\"Roshni-Chu\";\"main\"\n\"501287\";\"Lesnoye\";\"other\"\n\"501287\";\"Rosjni-Tsju\";\"other\"\n\"501287\";\"Рошни-Чу\";\"other\"\n\"501296\";\"Roshchino\";\"main\"\n\"501296\";\"ROSHHINO\";\"other\"\n\"501296\";\"Raivola\";\"other\"\n\"501296\";\"Rayvola\";\"other\"\n\"501296\";\"Rosjtsjino\";\"other\"\n\"501296\";\"РОЩИНО\";\"other\"\n\"501320\";\"Roshal’\";\"main\"\n\"501320\";\"Roshal'\";\"ascii\"\n\"501320\";\"ROSHAL'\";\"other\"\n\"501320\";\"Rosjal\";\"other\"\n\"501320\";\"РОШАЛЬ\";\"other\"\n\"501320\";\"Рошаль\";\"other\"\n\"501349\";\"Romodanovo\";\"main\"\n\"501349\";\"ROMODANOVO\";\"other\"\n\"501349\";\"РОМОДАНОВО\";\"other\"\n\"501349\";\"Ромоданово\";\"other\"\n\"501405\";\"Romanovskaya\";\"main\"\n\"501405\";\"Romanovskaja\";\"other\"\n\"501405\";\"Romanovskaya-na-Donu\";\"other\"\n\"501405\";\"Rynok-Romanovskiy\";\"other\"\n\"501405\";\"Романовская\";\"other\"\n\"501440\";\"Romanovka\";\"main\"\n\"501440\";\"Романовка\";\"other\"\n\"501468\";\"Romanovka\";\"main\"\n\"501468\";\"Romanowka\";\"other\"\n\"501468\";\"Романовка\";\"other\"\n\"501579\";\"Rogovskaya\";\"main\"\n\"501579\";\"Ragovskaya\";\"other\"\n\"501579\";\"Rogovskaja\";\"other\"\n\"501579\";\"Rogovskoye\";\"other\"\n\"501579\";\"Rogowskaja\";\"other\"\n\"501579\";\"Stanitsa Rogovskaya\";\"other\"\n\"501579\";\"Роговская\";\"other\"\n\"501616\";\"Rogovatoye\";\"main\"\n\"501616\";\"Pervoye Rogovatoye\";\"other\"\n\"501616\";\"Rogovato-Pogoreloye\";\"other\"\n\"501616\";\"Rogovatoje\";\"other\"\n\"501616\";\"Роговатое\";\"other\"\n\"501625\";\"Rognedino\";\"main\"\n\"501625\";\"ROGNEDINO\";\"other\"\n\"501625\";\"РОГНЕДИНО\";\"other\"\n\"501625\";\"Рогнедино\";\"other\"\n\"501716\";\"Rodnikovskaya\";\"main\"\n\"501716\";\"Rodnikovskaja\";\"other\"\n\"501716\";\"Родниковская\";\"other\"\n\"501730\";\"Rodniki\";\"main\"\n\"501730\";\"RODNIKI\";\"other\"\n\"501730\";\"РОДНИКИ\";\"other\"\n\"501730\";\"Родники\";\"other\"\n\"501732\";\"Rodniki\";\"main\"\n\"501732\";\"Ovrazhki-Vyalki\";\"other\"\n\"501732\";\"Родники\";\"other\"\n\"501774\";\"Rodionovo-Nesvetayskaya\";\"main\"\n\"501774\";\"Rodionoff\";\"other\"\n\"501774\";\"Rodionovo-Nesvetayskiy\";\"other\"\n\"501774\";\"Rodionovo-Nesvetayskoye\";\"other\"\n\"501774\";\"Родионово-Несветайская\";\"other\"\n\"501847\";\"Rochegda\";\"main\"\n\"501847\";\"Rotsjegda\";\"other\"\n\"501847\";\"Рочегда\";\"other\"\n\"501978\";\"Revyakino\";\"main\"\n\"501978\";\"REVJAKINO\";\"other\"\n\"501978\";\"Revjakino\";\"other\"\n\"501978\";\"Rewjakino\";\"other\"\n\"501978\";\"РЕВЯКИНО\";\"other\"\n\"502010\";\"Revda\";\"main\"\n\"502010\";\"REVDA\";\"other\"\n\"502010\";\"РЕВДА\";\"other\"\n\"502010\";\"Ревда\";\"other\"\n\"502011\";\"Revda\";\"main\"\n\"502011\";\"REVDA\";\"other\"\n\"502011\";\"РЕВДА\";\"other\"\n\"502011\";\"Ревда\";\"other\"\n\"502018\";\"Reutov\";\"main\"\n\"502018\";\"REUTOV\";\"other\"\n\"502018\";\"Reutovo\";\"other\"\n\"502018\";\"РЕУТОВ\";\"other\"\n\"502018\";\"Реутов\";\"other\"\n\"502069\";\"Reshetnikovo\";\"main\"\n\"502069\";\"RESHETNIKOVO\";\"other\"\n\"502069\";\"Resjetnikovo\";\"other\"\n\"502069\";\"РЕШЕТНИКОВО\";\"other\"\n\"502078\";\"Reshetikha\";\"main\"\n\"502078\";\"RESHETIKHA\";\"other\"\n\"502078\";\"Resjetikha\";\"other\"\n\"502078\";\"РЕШЕТИХА\";\"other\"\n\"502124\";\"Repnoye\";\"main\"\n\"502124\";\"Repnoje\";\"other\"\n\"502124\";\"Репное\";\"other\"\n\"502145\";\"Repino\";\"main\"\n\"502145\";\"Kuokkala\";\"other\"\n\"502145\";\"REPINO\";\"other\"\n\"502145\";\"РЕПИНО\";\"other\"\n\"502145\";\"Репино\";\"other\"\n\"502185\";\"Remontnoye\";\"main\"\n\"502185\";\"Dzhurak\";\"other\"\n\"502185\";\"Remontnoje\";\"other\"\n\"502185\";\"Ремонтное\";\"other\"\n\"502265\";\"Redkino\";\"main\"\n\"502265\";\"REDKINO\";\"other\"\n\"502265\";\"РЕДКИНО\";\"other\"\n\"502265\";\"Редкино\";\"other\"\n\"502345\";\"Rechitsy\";\"main\"\n\"502345\";\"Retsjitsy\";\"other\"\n\"502345\";\"Речицы\";\"other\"\n\"502400\";\"Razumnoye\";\"main\"\n\"502400\";\"Razumnoje\";\"other\"\n\"502400\";\"Rozumnoye\";\"other\"\n\"502400\";\"Разумное\";\"other\"\n\"502423\";\"Razliv\";\"main\"\n\"502423\";\"Разлив\";\"other\"\n\"502540\";\"Rayevskiy\";\"main\"\n\"502540\";\"RAEVSKIJ\";\"other\"\n\"502540\";\"Raevka\";\"other\"\n\"502540\";\"Rajevskij\";\"other\"\n\"502540\";\"РАЕВСКИЙ\";\"other\"\n\"502540\";\"Раевский\";\"other\"\n\"502542\";\"Rayevskaya\";\"main\"\n\"502542\";\"Krasnaya Medvedovskaya\";\"other\"\n\"502542\";\"Krasno-Medvedovskaya\";\"other\"\n\"502542\";\"Rajevskaja\";\"other\"\n\"502542\";\"Раевская\";\"other\"\n\"502738\";\"Rassvet\";\"main\"\n\"502738\";\"Рассвет\";\"other\"\n\"502793\";\"Rasskazovo\";\"main\"\n\"502793\";\"RASSKAZOVO\";\"other\"\n\"502793\";\"РАССКАЗОВО\";\"other\"\n\"502797\";\"Rasshevatskaya\";\"main\"\n\"502797\";\"Rasshevatskoye\";\"other\"\n\"502797\";\"Rassjevatskaja\";\"other\"\n\"502797\";\"Расшеватская\";\"other\"\n\"502895\";\"Ramon’\";\"main\"\n\"502895\";\"Ramon'\";\"ascii\"\n\"502895\";\"RAMON'\";\"other\"\n\"502895\";\"Ramon\";\"other\"\n\"502895\";\"РАМОНЬ\";\"other\"\n\"502895\";\"Рамонь\";\"other\"\n\"502903\";\"Rameshki\";\"main\"\n\"502903\";\"RAMESHKI\";\"other\"\n\"502903\";\"Ramesjki\";\"other\"\n\"502903\";\"РАМЕШКИ\";\"other\"\n\"502903\";\"Рамешки\";\"other\"\n\"502965\";\"Ramenskoye\";\"main\"\n\"502965\";\"RAMENSKOE\";\"other\"\n\"502965\";\"Ramenskoe\";\"other\"\n\"502965\";\"Ramenskoje\";\"other\"\n\"502965\";\"lamenseukoye\";\"other\"\n\"502965\";\"РАМЕНСКОЕ\";\"other\"\n\"502965\";\"Раменское\";\"other\"\n\"502965\";\"Раменскоје\";\"other\"\n\"502965\";\"라멘스코예\";\"other\"\n\"503067\";\"Rakitnoye\";\"main\"\n\"503067\";\"Rakitnoje\";\"other\"\n\"503067\";\"Ракитное\";\"other\"\n\"503210\";\"Radovitskiy\";\"main\"\n\"503210\";\"RADOVICKIJ\";\"other\"\n\"503210\";\"Radovitskij\";\"other\"\n\"503210\";\"Tsentral'nyy\";\"other\"\n\"503210\";\"Tsentral’nyy\";\"other\"\n\"503210\";\"РАДОВИЦКИЙ\";\"other\"\n\"503210\";\"Радовитский\";\"other\"\n\"503248\";\"Raditsa-Krylovka\";\"main\"\n\"503248\";\"Krylovka\";\"other\"\n\"503248\";\"Samara Raditsa\";\"other\"\n\"503248\";\"Радица-Крыловка\";\"other\"\n\"503254\";\"Radishchevo\";\"main\"\n\"503254\";\"RADISHHEVO\";\"other\"\n\"503254\";\"Radisjtsjevo\";\"other\"\n\"503254\";\"РАДИЩЕВО\";\"other\"\n\"503281\";\"Radchenko\";\"main\"\n\"503281\";\"RADCHENKO\";\"other\"\n\"503281\";\"Radtsjenko\";\"other\"\n\"503281\";\"Tos\";\"other\"\n\"503281\";\"РАДЧЕНКО\";\"other\"\n\"503281\";\"Радченко\";\"other\"\n\"503374\";\"Pytalovo\";\"main\"\n\"503374\";\"Abrene\";\"other\"\n\"503374\";\"Jaunlatgale\";\"other\"\n\"503374\";\"Pitalovo\";\"other\"\n\"503374\";\"Potalovo\";\"other\"\n\"503374\";\"Pyatalovo\";\"other\"\n\"503374\";\"Pytalowo\";\"other\"\n\"503374\";\"Põtalovo\";\"other\"\n\"503374\";\"Yaunlatgale\";\"other\"\n\"503374\";\"pitallobo\";\"other\"\n\"503374\";\"Питалово\";\"other\"\n\"503374\";\"Пыталово\";\"other\"\n\"503374\";\"피탈로보\";\"other\"\n\"503401\";\"Pyshchug\";\"main\"\n\"503401\";\"Pysjtsjug\";\"other\"\n\"503401\";\"Пыщуг\";\"other\"\n\"503428\";\"Pyra\";\"main\"\n\"503428\";\"PYRA\";\"other\"\n\"503428\";\"Poselok Pyrskiy\";\"other\"\n\"503428\";\"Posëlok Pyrskiy\";\"other\"\n\"503428\";\"ПЫРА\";\"other\"\n\"503428\";\"Пыра\";\"other\"\n\"503453\";\"Pychas\";\"main\"\n\"503453\";\"PYCHAS\";\"other\"\n\"503453\";\"Pytsjas\";\"other\"\n\"503453\";\"ПЫЧАС\";\"other\"\n\"503453\";\"Пычас\";\"other\"\n\"503479\";\"Pyatovskiy\";\"main\"\n\"503479\";\"PJATOVSKIJ\";\"other\"\n\"503479\";\"Pjatovskij\";\"other\"\n\"503479\";\"ПЯТОВСКИЙ\";\"other\"\n\"503479\";\"Пятовский\";\"other\"\n\"503499\";\"Pyatnitskoye\";\"main\"\n\"503499\";\"Pjatnickoe\";\"other\"\n\"503499\";\"Pjatnitskoje\";\"other\"\n\"503499\";\"Пятнитское\";\"other\"\n\"503499\";\"Пятницкое\";\"other\"\n\"503548\";\"Pyatigorskiy\";\"main\"\n\"503548\";\"Myassovkhoz Pyatigorskiy\";\"other\"\n\"503548\";\"Pjatigorskij\";\"other\"\n\"503548\";\"Пятигорский\";\"other\"\n\"503550\";\"Pyatigorsk\";\"main\"\n\"503550\";\"Five Mountains\";\"other\"\n\"503550\";\"P'jatigors'k\";\"other\"\n\"503550\";\"PJATIGORSK\";\"other\"\n\"503550\";\"Piatigorsk\";\"other\"\n\"503550\";\"Pjatigorsk\";\"other\"\n\"503550\";\"pyachigorusuku\";\"other\"\n\"503550\";\"pyatigoleuseukeu\";\"other\"\n\"503550\";\"wu shan cheng\";\"other\"\n\"503550\";\"П'ятигорськ\";\"other\"\n\"503550\";\"ПЯТИГОРСК\";\"other\"\n\"503550\";\"Пятигорск\";\"other\"\n\"503550\";\"פיאטיגורסק\";\"other\"\n\"503550\";\"ピャチゴルスク\";\"other\"\n\"503550\";\"五山城\";\"other\"\n\"503550\";\"퍄티고르스크\";\"other\"\n\"503581\";\"Pyaozerskiy\";\"main\"\n\"503581\";\"Pjaozerskij\";\"other\"\n\"503581\";\"Пяозерский\";\"other\"\n\"503682\";\"Putyatino\";\"main\"\n\"503682\";\"Putjanino\";\"other\"\n\"503682\";\"Путянино\";\"other\"\n\"503682\";\"Путятино\";\"other\"\n\"503772\";\"Puteyets\";\"main\"\n\"503772\";\"PUTEEC\";\"other\"\n\"503772\";\"Putejets\";\"other\"\n\"503772\";\"ПУТЕЕЦ\";\"other\"\n\"503772\";\"Путеец\";\"other\"\n\"503878\";\"Pustoshka\";\"main\"\n\"503878\";\"Pustosjka\";\"other\"\n\"503878\";\"Пустошка\";\"other\"\n\"503965\";\"Pushkinskiye Gory\";\"main\"\n\"503965\";\"PUSHKINSKIE GORY\";\"other\"\n\"503965\";\"Pushkinskiy\";\"other\"\n\"503965\";\"Pusjkinskije Gory\";\"other\"\n\"503965\";\"ПУШКИНСКИЕ ГОРЫ\";\"other\"\n\"503965\";\"Пушкинские Горы\";\"other\"\n\"503977\";\"Pushkino\";\"main\"\n\"503977\";\"PUSHKINO\";\"other\"\n\"503977\";\"Pusjkino\";\"other\"\n\"503977\";\"ПУШКИНО\";\"other\"\n\"503977\";\"Пушкино\";\"other\"\n\"504000\";\"Pushkino\";\"main\"\n\"504000\";\"PUSHKINO\";\"other\"\n\"504000\";\"Pusjkino\";\"other\"\n\"504000\";\"Urbakh\";\"other\"\n\"504000\";\"ПУШКИНО\";\"other\"\n\"504003\";\"Pushkin\";\"main\"\n\"504003\";\"Detskoye Selo\";\"other\"\n\"504003\";\"Puschkin\";\"other\"\n\"504003\";\"Pusjkin\";\"other\"\n\"504003\";\"Tsarskoye Selo\";\"other\"\n\"504003\";\"Пушкин\";\"other\"\n\"504042\";\"Pushchino\";\"main\"\n\"504042\";\"PUSHHINO\";\"other\"\n\"504042\";\"Pushchino-na-Oke\";\"other\"\n\"504042\";\"Pusjtsjino\";\"other\"\n\"504042\";\"ПУЩИНО\";\"other\"\n\"504187\";\"Puksoozero\";\"main\"\n\"504187\";\"PUKSOOZERO\";\"other\"\n\"504187\";\"ПУКСООЗЕРО\";\"other\"\n\"504187\";\"Пуксоозеро\";\"other\"\n\"504269\";\"Pudozh\";\"main\"\n\"504269\";\"PUDOZH\";\"other\"\n\"504269\";\"Pudoj\";\"other\"\n\"504269\";\"Pudosh\";\"other\"\n\"504269\";\"Pudoz\";\"other\"\n\"504269\";\"Pudoĵ\";\"other\"\n\"504269\";\"Pudoż\";\"other\"\n\"504269\";\"Puudosi\";\"other\"\n\"504269\";\"Puudozi\";\"other\"\n\"504269\";\"Puutoinen\";\"other\"\n\"504269\";\"pudosi\";\"other\"\n\"504269\";\"ПУДОЖ\";\"other\"\n\"504269\";\"Пудож\";\"other\"\n\"504269\";\"푸도시\";\"other\"\n\"504280\";\"Pudem\";\"main\"\n\"504280\";\"PUDEM\";\"other\"\n\"504280\";\"ПУДЕМ\";\"other\"\n\"504280\";\"Пудем\";\"other\"\n\"504294\";\"Puchezh\";\"main\"\n\"504294\";\"PUCHEZH\";\"other\"\n\"504294\";\"Putsjezj\";\"other\"\n\"504294\";\"ПУЧЕЖ\";\"other\"\n\"504294\";\"Пучеж\";\"other\"\n\"504317\";\"Psyzh\";\"main\"\n\"504317\";\"Psyzj\";\"other\"\n\"504317\";\"Псыж\";\"other\"\n\"504327\";\"Psygansu\";\"main\"\n\"504327\";\"Psygasu\";\"other\"\n\"504327\";\"Псыгансу\";\"other\"\n\"504341\";\"Pskov\";\"main\"\n\"504341\";\"Pihkova\";\"other\"\n\"504341\";\"Pihkva\";\"other\"\n\"504341\";\"Pleskau\";\"other\"\n\"504341\";\"Pscovia\";\"other\"\n\"504341\";\"Pskovas\";\"other\"\n\"504341\";\"Pskow\";\"other\"\n\"504341\";\"Psków\";\"other\"\n\"504341\";\"peuseukopeu\";\"other\"\n\"504341\";\"pu si ke fu\";\"other\"\n\"504341\";\"pusukofu\";\"other\"\n\"504341\";\"Псков\";\"other\"\n\"504341\";\"プスコフ\";\"other\"\n\"504341\";\"普斯科夫\";\"other\"\n\"504341\";\"프스코프\";\"other\"\n\"504371\";\"Pshekhskaya\";\"main\"\n\"504371\";\"Psjekhskaja\";\"other\"\n\"504371\";\"Пшехская\";\"other\"\n\"504376\";\"Pshada\";\"main\"\n\"504376\";\"Psjada\";\"other\"\n\"504376\";\"Пшада\";\"other\"\n\"504388\";\"Psedakh\";\"main\"\n\"504388\";\"Alanskoye\";\"other\"\n\"504388\";\"Alonskoye\";\"other\"\n\"504388\";\"Пседах\";\"other\"\n\"504391\";\"Psebay\";\"main\"\n\"504391\";\"Isebay\";\"other\"\n\"504391\";\"Psebaj\";\"other\"\n\"504391\";\"Psebayskaya\";\"other\"\n\"504391\";\"Псебай\";\"other\"\n\"504409\";\"Pryazha\";\"main\"\n\"504409\";\"Krasnaya Pryazha\";\"other\"\n\"504409\";\"PRJAZHA\";\"other\"\n\"504409\";\"Prjazja\";\"other\"\n\"504409\";\"ПРЯЖА\";\"other\"\n\"504409\";\"Пряжа\";\"other\"\n\"504416\";\"Pryamitsyno\";\"main\"\n\"504416\";\"PRJAMICYNO\";\"other\"\n\"504416\";\"Prjamitsyno\";\"other\"\n\"504416\";\"Pryamitsino\";\"other\"\n\"504416\";\"ПРЯМИЦЫНО\";\"other\"\n\"504416\";\"Прямицыно\";\"other\"\n\"504459\";\"Prudy\";\"main\"\n\"504459\";\"Sobakino\";\"other\"\n\"504459\";\"Пруды\";\"other\"\n\"504576\";\"Protvino\";\"main\"\n\"504576\";\"PROTVINO\";\"other\"\n\"504576\";\"ПРОТВИНО\";\"other\"\n\"504717\";\"Pronsk\";\"main\"\n\"504717\";\"PRONSK\";\"other\"\n\"504717\";\"ПРОНСК\";\"other\"\n\"504717\";\"Пронск\";\"other\"\n\"504798\";\"Proletarskiy\";\"main\"\n\"504798\";\"PROLETARSKIJ\";\"other\"\n\"504798\";\"Proletarskij\";\"other\"\n\"504798\";\"ПРОЛЕТАРСКИЙ\";\"other\"\n\"504798\";\"Пролетарский\";\"other\"\n\"504806\";\"Proletarskiy\";\"main\"\n\"504806\";\"Gotnya\";\"other\"\n\"504806\";\"PROLETARSKIJ\";\"other\"\n\"504806\";\"Proletarskij\";\"other\"\n\"504806\";\"ПРОЛЕТАРСКИЙ\";\"other\"\n\"504806\";\"Пролетарский\";\"other\"\n\"504831\";\"Proletarsk\";\"main\"\n\"504831\";\"PROLETARSK\";\"other\"\n\"504831\";\"Proletarskaja\";\"other\"\n\"504831\";\"Proletarskaya\";\"other\"\n\"504831\";\"ПРОЛЕТАРСК\";\"other\"\n\"504831\";\"Пролетарск\";\"other\"\n\"504840\";\"Proletariy\";\"main\"\n\"504840\";\"PROLETARIJ\";\"other\"\n\"504840\";\"Proletarij\";\"other\"\n\"504840\";\"ПРОЛЕТАРИЙ\";\"other\"\n\"504840\";\"Пролетарий\";\"other\"\n\"504875\";\"Kipen’\";\"main\"\n\"504875\";\"Kipen'\";\"ascii\"\n\"504875\";\"Kipen\";\"other\"\n\"504875\";\"Prokovsino\";\"other\"\n\"504875\";\"Verkhnyaya Kipen'\";\"other\"\n\"504875\";\"Verkhnyaya Kipen’\";\"other\"\n\"504875\";\"Кипень\";\"other\"\n\"504915\";\"Prokhorovka\";\"main\"\n\"504915\";\"Aleksandrovskij\";\"other\"\n\"504915\";\"Aleksandrovskiy\";\"other\"\n\"504915\";\"Prochorowka\";\"other\"\n\"504915\";\"Александровский\";\"other\"\n\"504915\";\"Прохоровка\";\"other\"\n\"504935\";\"Prokhladnyy\";\"main\"\n\"504935\";\"Prochladnaja\";\"other\"\n\"504935\";\"Prochladnyj\";\"other\"\n\"504935\";\"Prokhladnyj\";\"other\"\n\"504935\";\"Прохладный\";\"other\"\n\"504994\";\"Prochnookopskaya\";\"main\"\n\"504994\";\"Protchanokopskaya\";\"other\"\n\"504994\";\"Protchnokopskaya\";\"other\"\n\"504994\";\"Protsjnookopskaja\";\"other\"\n\"504994\";\"Прочноокопская\";\"other\"\n\"505014\";\"Priyutovo\";\"main\"\n\"505014\";\"PRIJUTOVO\";\"other\"\n\"505014\";\"Prijutovo\";\"other\"\n\"505014\";\"ПРИЮТОВО\";\"other\"\n\"505014\";\"Приютово\";\"other\"\n\"505019\";\"Priyutnoye\";\"main\"\n\"505019\";\"Antanur\";\"other\"\n\"505019\";\"Prijutnoje\";\"other\"\n\"505019\";\"Приютное\";\"other\"\n\"505057\";\"Privolzhskiy\";\"main\"\n\"505057\";\"Privolzhskij\";\"other\"\n\"505057\";\"Privolzjskij\";\"other\"\n\"505057\";\"Приволжский\";\"other\"\n\"505060\";\"Privolzhsk\";\"main\"\n\"505060\";\"PRIVOLZHSK\";\"other\"\n\"505060\";\"Yakovlevskoye\";\"other\"\n\"505060\";\"ПРИВОЛЖСК\";\"other\"\n\"505060\";\"Приволжск\";\"other\"\n\"505112\";\"Privodino\";\"main\"\n\"505112\";\"PRIVODINO\";\"other\"\n\"505112\";\"ПРИВОДИНО\";\"other\"\n\"505112\";\"Приводино\";\"other\"\n\"505129\";\"Priupskiy\";\"main\"\n\"505129\";\"Priupskij\";\"other\"\n\"505129\";\"Приупский\";\"other\"\n\"505154\";\"Pristen’\";\"main\"\n\"505154\";\"Pristen'\";\"ascii\"\n\"505154\";\"Mar'ino\";\"other\"\n\"505154\";\"Mar’ino\";\"other\"\n\"505154\";\"PRISTEN'\";\"other\"\n\"505154\";\"Pristen\";\"other\"\n\"505154\";\"ПРИСТЕНЬ\";\"other\"\n\"505154\";\"Пристень\";\"other\"\n\"505230\";\"Priozërsk\";\"main\"\n\"505230\";\"Priozersk\";\"ascii\"\n\"505230\";\"Kakisalmi\";\"other\"\n\"505230\";\"Keksgol'm\";\"other\"\n\"505230\";\"Keksgol’m\";\"other\"\n\"505230\";\"Keksholm\";\"other\"\n\"505230\";\"Kexholm\";\"other\"\n\"505230\";\"Korela\";\"other\"\n\"505230\";\"Kyakisalmi\";\"other\"\n\"505230\";\"Käkisalmi\";\"other\"\n\"505230\";\"Yeksgol'm\";\"other\"\n\"505230\";\"Yeksgol’m\";\"other\"\n\"505230\";\"Приозерск\";\"other\"\n\"505230\";\"Приозёрск\";\"other\"\n\"505256\";\"Primorka\";\"main\"\n\"505256\";\"Kosa Kuryacha\";\"other\"\n\"505256\";\"Primorskoye\";\"other\"\n\"505256\";\"Приморка\";\"other\"\n\"505259\";\"Primorsko-Akhtarsk\";\"main\"\n\"505259\";\"Akhtari\";\"other\"\n\"505259\";\"Primorsko-Achidrskaja\";\"other\"\n\"505259\";\"Primorsko-Akhtarskaya\";\"other\"\n\"505259\";\"Stantsiya Primorsko-Akhtarskaya\";\"other\"\n\"505259\";\"Приморско-Ахтарск\";\"other\"\n\"505269\";\"Primorsk\";\"main\"\n\"505269\";\"B'yerke\";\"other\"\n\"505269\";\"Bjoerkoe\";\"other\"\n\"505269\";\"Björkö\";\"other\"\n\"505269\";\"B’yërkë\";\"other\"\n\"505269\";\"Koivisto\";\"other\"\n\"505269\";\"Koyvisto\";\"other\"\n\"505269\";\"PRIMORSK\";\"other\"\n\"505269\";\"ПРИМОРСК\";\"other\"\n\"505269\";\"Приморск\";\"other\"\n\"505270\";\"Primorsk\";\"main\"\n\"505270\";\"Fischhausen\";\"other\"\n\"505270\";\"Fishgauzen\";\"other\"\n\"505270\";\"Fishhausen\";\"other\"\n\"505270\";\"Fishkhauzen\";\"other\"\n\"505270\";\"PRIMORSK\";\"other\"\n\"505270\";\"ПРИМОРСК\";\"other\"\n\"505270\";\"Приморск\";\"other\"\n\"505271\";\"Primorsk\";\"main\"\n\"505271\";\"Lugo-Vodyanoye\";\"other\"\n\"505271\";\"Lugo-Vodyanskoye\";\"other\"\n\"505271\";\"PRIMORSK\";\"other\"\n\"505271\";\"Vodyanoe\";\"other\"\n\"505271\";\"Vodyanoye\";\"other\"\n\"505271\";\"ПРИМОРСК\";\"other\"\n\"505271\";\"Приморск\";\"other\"\n\"505279\";\"Primalkinskoye\";\"main\"\n\"505279\";\"Primalkinskoje\";\"other\"\n\"505279\";\"Прималкинское\";\"other\"\n\"505345\";\"Prikubanskiy\";\"main\"\n\"505345\";\"Prikubanskij\";\"other\"\n\"505345\";\"Прикубанский\";\"other\"\n\"505376\";\"Prigorodnyy\";\"main\"\n\"505376\";\"Пригородный\";\"other\"\n\"505386\";\"Prigorodnoye\";\"main\"\n\"505386\";\"Komsomol'skiy\";\"other\"\n\"505386\";\"Prigorodnoe\";\"other\"\n\"505386\";\"Prigorodnoje\";\"other\"\n\"505386\";\"Пригородное\";\"other\"\n\"505395\";\"Prigorodka\";\"main\"\n\"505395\";\"Prigorodnaya\";\"other\"\n\"505395\";\"Пригородка\";\"other\"\n\"505421\";\"Pridonskoy\";\"main\"\n\"505421\";\"Pridonskoj\";\"other\"\n\"505421\";\"Придонской\";\"other\"\n\"505538\";\"Pregradnoye\";\"main\"\n\"505538\";\"Pregradnaya\";\"other\"\n\"505538\";\"Pregradnoje\";\"other\"\n\"505538\";\"Преградное\";\"other\"\n\"505539\";\"Pregradnaya\";\"main\"\n\"505539\";\"Pregradnaja\";\"other\"\n\"505539\";\"Преградная\";\"other\"\n\"505558\";\"Prechistoye\";\"main\"\n\"505558\";\"Prechiskoe\";\"other\"\n\"505558\";\"Pretsjistoje\";\"other\"\n\"505558\";\"Пречистое\";\"other\"\n\"505581\";\"Pravokumskoye\";\"main\"\n\"505581\";\"Pravokumskoje\";\"other\"\n\"505581\";\"Правокумское\";\"other\"\n\"505597\";\"Pravdinskiy\";\"main\"\n\"505597\";\"PRAVDINSKIJ\";\"other\"\n\"505597\";\"Pravda\";\"other\"\n\"505597\";\"Pravdinskij\";\"other\"\n\"505597\";\"ПРАВДИНСКИЙ\";\"other\"\n\"505597\";\"Правдинский\";\"other\"\n\"505599\";\"Pravdinsk\";\"main\"\n\"505599\";\"Fridland\";\"other\"\n\"505599\";\"Fridlyand\";\"other\"\n\"505599\";\"Friedland\";\"other\"\n\"505599\";\"PRAVDINSK\";\"other\"\n\"505599\";\"Pravdinskas\";\"other\"\n\"505599\";\"Pravdisk\";\"other\"\n\"505599\";\"Prawdinsk\";\"other\"\n\"505599\";\"ПРАВДИНСК\";\"other\"\n\"505599\";\"Правдинск\";\"other\"\n\"505641\";\"Praskoveya\";\"main\"\n\"505641\";\"Praskoveja\";\"other\"\n\"505641\";\"Praskoveyskoye\";\"other\"\n\"505641\";\"Proskoveya\";\"other\"\n\"505641\";\"Прасковея\";\"other\"\n\"505665\";\"Pozhva\";\"main\"\n\"505665\";\"POZHVA\";\"other\"\n\"505665\";\"Pozjva\";\"other\"\n\"505665\";\"ПОЖВА\";\"other\"\n\"505795\";\"Poyakonda\";\"main\"\n\"505795\";\"Pojakonda\";\"other\"\n\"505795\";\"Pojakontu\";\"other\"\n\"505795\";\"Пояконда\";\"other\"\n\"505806\";\"Povorino\";\"main\"\n\"505806\";\"POVORINO\";\"other\"\n\"505806\";\"Poworino\";\"other\"\n\"505806\";\"Proverino\";\"other\"\n\"505806\";\"ПОВОРИНО\";\"other\"\n\"505806\";\"Поворино\";\"other\"\n\"505820\";\"Povenets\";\"main\"\n\"505820\";\"Powonez\";\"other\"\n\"505820\";\"Повенец\";\"other\"\n\"505824\";\"Povarovo\";\"main\"\n\"505824\";\"Pavarovo\";\"other\"\n\"505824\";\"Povorovo\";\"other\"\n\"505824\";\"Поварово\";\"other\"\n\"506029\";\"Poshekhon’ye\";\"main\"\n\"506029\";\"Poshekhon'ye\";\"ascii\"\n\"506029\";\"POSHEKHON'E\";\"other\"\n\"506029\";\"Poshekhon'ye-Volodarsk\";\"other\"\n\"506029\";\"Poshekhone\";\"other\"\n\"506029\";\"Poshekhonic\";\"other\"\n\"506029\";\"Poshekhon’ye-Volodarsk\";\"other\"\n\"506029\";\"Posjekhonje\";\"other\"\n\"506029\";\"ПОШЕХОНЬЕ\";\"other\"\n\"506029\";\"Пошехонье\";\"other\"\n\"506123\";\"Poselki\";\"main\"\n\"506123\";\"Поселки\";\"other\"\n\"506188\";\"Port-Katon\";\"main\"\n\"506188\";\"Порт-Катон\";\"other\"\n\"506232\";\"Porosozero\";\"main\"\n\"506232\";\"Akan\\\"yarvi\";\"other\"\n\"506232\";\"Akan”yarvi\";\"other\"\n\"506232\";\"POROSOZERO\";\"other\"\n\"506232\";\"Porajarvi\";\"other\"\n\"506232\";\"Porajärvi\";\"other\"\n\"506232\";\"ПОРОСОЗЕРО\";\"other\"\n\"506232\";\"Поросозеро\";\"other\"\n\"506278\";\"Porkhov\";\"main\"\n\"506278\";\"PORKHOV\";\"other\"\n\"506278\";\"Porchow\";\"other\"\n\"506278\";\"ПОРХОВ\";\"other\"\n\"506278\";\"Порхов\";\"other\"\n\"506286\";\"Poretskoye\";\"main\"\n\"506286\";\"Poreckoe\";\"other\"\n\"506286\";\"Poretskoe\";\"other\"\n\"506286\";\"Poretskoje\";\"other\"\n\"506286\";\"Поретское\";\"other\"\n\"506286\";\"Порецкое\";\"other\"\n\"506291\";\"Porech’ye-Rybnoye\";\"main\"\n\"506291\";\"Porech'ye-Rybnoye\";\"ascii\"\n\"506291\";\"PORECH'E-RYBNOE\";\"other\"\n\"506291\";\"Porech'e-Rybnoe\";\"other\"\n\"506291\";\"Porech'ye\";\"other\"\n\"506291\";\"Porech’ye\";\"other\"\n\"506291\";\"Poretsje-Rybnoje\";\"other\"\n\"506291\";\"Poryeche\";\"other\"\n\"506291\";\"ПОРЕЧЬЕ-РЫБНОЕ\";\"other\"\n\"506291\";\"Поречье-Рыбное\";\"other\"\n\"506320\";\"Poputnaya\";\"main\"\n\"506320\";\"Poputnaja\";\"other\"\n\"506320\";\"Попутная\";\"other\"\n\"506596\";\"Ponyri Vtoryye\";\"main\"\n\"506596\";\"Vtoryye Ponyri\";\"other\"\n\"506596\";\"Поныри Вторые\";\"other\"\n\"506612\";\"Pontonnyy\";\"main\"\n\"506612\";\"PONTONNYJ\";\"other\"\n\"506612\";\"Pontonnyj\";\"other\"\n\"506612\";\"ПОНТОННЫЙ\";\"other\"\n\"506612\";\"Понтонный\";\"other\"\n\"506680\";\"Ponezhukay\";\"main\"\n\"506680\";\"Ponezjukaj\";\"other\"\n\"506680\";\"Понежукай\";\"other\"\n\"506696\";\"Ponazyrevo\";\"main\"\n\"506696\";\"Поназырево\";\"other\"\n\"506738\";\"Pomary\";\"main\"\n\"506738\";\"Помары\";\"other\"\n\"506762\";\"Polyarnyye Zori\";\"main\"\n\"506762\";\"POLJARNYE ZORI\";\"other\"\n\"506762\";\"Poljarnye Zori\";\"other\"\n\"506762\";\"ПОЛЯРНЫЕ ЗОРИ\";\"other\"\n\"506762\";\"Полярные Зори\";\"other\"\n\"506763\";\"Polyarnyy\";\"main\"\n\"506763\";\"Aleksandrovsk\";\"other\"\n\"506763\";\"Alexandrovsk\";\"other\"\n\"506763\";\"POLJARNYJ\";\"other\"\n\"506763\";\"Poljarnyj\";\"other\"\n\"506763\";\"Polyarnoye\";\"other\"\n\"506763\";\"Port Alexandrovsk\";\"other\"\n\"506763\";\"ПОЛЯРНЫЙ\";\"other\"\n\"506763\";\"Полярный\";\"other\"\n\"506782\";\"Polyany\";\"main\"\n\"506782\";\"Poljany\";\"other\"\n\"506782\";\"Поляны\";\"other\"\n\"507079\";\"Polotnyanyy Zavod\";\"main\"\n\"507079\";\"POLOTNJANYJ ZAVOD\";\"other\"\n\"507079\";\"Polotnjanyj Zavod\";\"other\"\n\"507079\";\"Polotnyani Zavod\";\"other\"\n\"507079\";\"Polotnyany Zavod\";\"other\"\n\"507079\";\"Polotnyanyy\";\"other\"\n\"507079\";\"ПОЛОТНЯНЫЙ ЗАВОД\";\"other\"\n\"507079\";\"Полотняный Завод\";\"other\"\n\"507291\";\"Polessk\";\"main\"\n\"507291\";\"Labiau\";\"other\"\n\"507291\";\"Loebau\";\"other\"\n\"507291\";\"POLESSK\";\"other\"\n\"507291\";\"ПОЛЕССК\";\"other\"\n\"507291\";\"Полесск\";\"other\"\n\"507318\";\"Polazna\";\"main\"\n\"507318\";\"POLAZNA\";\"other\"\n\"507318\";\"Polasna\";\"other\"\n\"507318\";\"ПОЛАЗНА\";\"other\"\n\"507318\";\"Полазна\";\"other\"\n\"507421\";\"Pokrovskoye\";\"main\"\n\"507421\";\"POKROVSKOE\";\"other\"\n\"507421\";\"Pokrovskoje\";\"other\"\n\"507421\";\"Pokrovskoye Lintsy\";\"other\"\n\"507421\";\"ПОКРОВСКОЕ\";\"other\"\n\"507421\";\"Покровское\";\"other\"\n\"507427\";\"Pokrovskoye\";\"main\"\n\"507427\";\"Pokrovskoje\";\"other\"\n\"507427\";\"Pokrowskoje\";\"other\"\n\"507427\";\"Покровское\";\"other\"\n\"507464\";\"Pokrovskoye\";\"main\"\n\"507464\";\"Pokrovskiy\";\"other\"\n\"507464\";\"Покровское\";\"other\"\n\"507479\";\"Pokrovo-Prigorodnoye\";\"main\"\n\"507479\";\"Pokrovo-Prigorodnoje\";\"other\"\n\"507479\";\"Pokrovsko-Prigorodnoye\";\"other\"\n\"507479\";\"Покрово-Пригородное\";\"other\"\n\"507599\";\"Pokrov\";\"main\"\n\"507599\";\"POKROV\";\"other\"\n\"507599\";\"ПОКРОВ\";\"other\"\n\"507599\";\"Покров\";\"other\"\n\"507612\";\"Pokoynoye\";\"main\"\n\"507612\";\"Pokoinoe\";\"other\"\n\"507612\";\"Pokoinoje\";\"other\"\n\"507612\";\"Pokojnoje\";\"other\"\n\"507612\";\"Покойное\";\"other\"\n\"507624\";\"Pokhvistnevo\";\"main\"\n\"507624\";\"Похвистнево\";\"other\"\n\"507643\";\"Poim\";\"main\"\n\"507643\";\"Поим\";\"other\"\n\"507875\";\"Pogar\";\"main\"\n\"507875\";\"POGAR\";\"other\"\n\"507875\";\"ПОГАР\";\"other\"\n\"507875\";\"Погар\";\"other\"\n\"507899\";\"Podyuga\";\"main\"\n\"507899\";\"PODJUGA\";\"other\"\n\"507899\";\"Podjuga\";\"other\"\n\"507899\";\"ПОДЮГА\";\"other\"\n\"507899\";\"Подюга\";\"other\"\n\"507977\";\"Podstepki\";\"main\"\n\"507977\";\"Podstepnoye\";\"other\"\n\"507977\";\"Подстепки\";\"other\"\n\"508034\";\"Podporozh’ye\";\"main\"\n\"508034\";\"Podporozh'ye\";\"ascii\"\n\"508034\";\"Podporoshje\";\"other\"\n\"508034\";\"Podporozh'ye-Verkhneye\";\"other\"\n\"508034\";\"Podporozh’ye-Verkhneye\";\"other\"\n\"508034\";\"Podporozje\";\"other\"\n\"508034\";\"Подпорожье\";\"other\"\n\"508068\";\"Podosinovets\";\"main\"\n\"508068\";\"PODOSINOVEC\";\"other\"\n\"508068\";\"Podosinovskiy\";\"other\"\n\"508068\";\"ПОДОСИНОВЕЦ\";\"other\"\n\"508068\";\"Подосиновец\";\"other\"\n\"508101\";\"Podol’sk\";\"main\"\n\"508101\";\"Podol'sk\";\"ascii\"\n\"508101\";\"Podolsk\";\"other\"\n\"508101\";\"Подольск\";\"other\"\n\"508216\";\"Podlesnyy\";\"main\"\n\"508216\";\"Lesnoy\";\"other\"\n\"508216\";\"Pervomayskiy\";\"other\"\n\"508216\";\"Podlesnyj\";\"other\"\n\"508216\";\"Подлесный\";\"other\"\n\"508237\";\"Podlesnoye\";\"main\"\n\"508237\";\"PODLESNOE\";\"other\"\n\"508237\";\"Podlesnoje\";\"other\"\n\"508237\";\"Unterval'den\";\"other\"\n\"508237\";\"Unterval’den\";\"other\"\n\"508237\";\"ПОДЛЕСНОЕ\";\"other\"\n\"508237\";\"Подлесное\";\"other\"\n\"508257\";\"Podkumskiy\";\"main\"\n\"508257\";\"Podkumok\";\"other\"\n\"508257\";\"Podkumsk\";\"other\"\n\"508273\";\"Podkletnoye\";\"main\"\n\"508273\";\"Pervoye Parusnoye\";\"other\"\n\"508273\";\"Podkletnoje\";\"other\"\n\"508273\";\"Подклетное\";\"other\"\n\"508311\";\"Podgorodnyaya Pokrovka\";\"main\"\n\"508311\";\"Podgornaja Pokrovka\";\"other\"\n\"508311\";\"Podgornaya Pokrovka\";\"other\"\n\"508311\";\"Подгорная Покровка\";\"other\"\n\"508311\";\"Подгородняя Покровка\";\"other\"\n\"508362\";\"Podgornoye\";\"main\"\n\"508362\";\"Podgornoje\";\"other\"\n\"508362\";\"Подгорное\";\"other\"\n\"508366\";\"Podgornoye\";\"main\"\n\"508366\";\"Podgornaya\";\"other\"\n\"508366\";\"Podgornoje\";\"other\"\n\"508366\";\"Подгорное\";\"other\"\n\"508390\";\"Podgornaya\";\"main\"\n\"508390\";\"Podgornaja\";\"other\"\n\"508390\";\"Подгорная\";\"other\"\n\"508394\";\"Podgorenskiy\";\"main\"\n\"508394\";\"PODGORENSKIJ\";\"other\"\n\"508394\";\"Podgorenskij\";\"other\"\n\"508394\";\"ПОДГОРЕНСКИЙ\";\"other\"\n\"508394\";\"Подгоренский\";\"other\"\n\"508441\";\"Poddor’ye\";\"main\"\n\"508441\";\"Poddor'ye\";\"ascii\"\n\"508441\";\"Poddorje\";\"other\"\n\"508441\";\"Поддорье\";\"other\"\n\"508606\";\"Pochinok\";\"main\"\n\"508606\";\"POCHINOK\";\"other\"\n\"508606\";\"Potsjinok\";\"other\"\n\"508606\";\"ПОЧИНОК\";\"other\"\n\"508606\";\"Починок\";\"other\"\n\"508635\";\"Pochinki\";\"main\"\n\"508635\";\"Pochinki-Arzamasskiye\";\"other\"\n\"508635\";\"Potsjinki\";\"other\"\n\"508635\";\"Починки\";\"other\"\n\"508656\";\"Pochëp\";\"main\"\n\"508656\";\"Pochep\";\"ascii\"\n\"508656\";\"Pocher\";\"other\"\n\"508656\";\"Potschep\";\"other\"\n\"508656\";\"Potsjep\";\"other\"\n\"508656\";\"Почеп\";\"other\"\n\"508656\";\"Почёп\";\"other\"\n\"508743\";\"Plyussa\";\"main\"\n\"508743\";\"Pljussa\";\"other\"\n\"508743\";\"Plyusa\";\"other\"\n\"508743\";\"Плюсса\";\"other\"\n\"509017\";\"Pleshanovo\";\"main\"\n\"509017\";\"Pleshhanovo\";\"other\"\n\"509017\";\"Плешаново\";\"other\"\n\"509017\";\"Плещаново\";\"other\"\n\"509026\";\"Plesetsk\";\"main\"\n\"509026\";\"PLESECK\";\"other\"\n\"509026\";\"ПЛЕСЕЦК\";\"other\"\n\"509026\";\"Плесецк\";\"other\"\n\"509029\";\"Plës\";\"main\"\n\"509029\";\"Ples\";\"ascii\"\n\"509029\";\"Pljos\";\"other\"\n\"509029\";\"Плес\";\"other\"\n\"509029\";\"Плёс\";\"other\"\n\"509052\";\"Plavsk\";\"main\"\n\"509052\";\"PLAVSK\";\"other\"\n\"509052\";\"Plavskiy\";\"other\"\n\"509052\";\"Plavskoye\";\"other\"\n\"509052\";\"Plawsk\";\"other\"\n\"509052\";\"ПЛАВСК\";\"other\"\n\"509052\";\"Плавск\";\"other\"\n\"509104\";\"Platonovka\";\"main\"\n\"509104\";\"Платоновка\";\"other\"\n\"509113\";\"Platnirovskaya\";\"main\"\n\"509113\";\"Platnirovskaja\";\"other\"\n\"509113\";\"Платнировская\";\"other\"\n\"509124\";\"Plastunovskaya\";\"main\"\n\"509124\";\"Plastunovskaja\";\"other\"\n\"509124\";\"Plastunowskaja\";\"other\"\n\"509124\";\"Пластуновская\";\"other\"\n\"509139\";\"Planovskoye\";\"main\"\n\"509139\";\"Planovskaya\";\"other\"\n\"509139\";\"Planovskoje\";\"other\"\n\"509139\";\"Плановское\";\"other\"\n\"509176\";\"Pizhma\";\"main\"\n\"509176\";\"PIZHMA\";\"other\"\n\"509176\";\"Pizjma\";\"other\"\n\"509176\";\"ПИЖМА\";\"other\"\n\"509176\";\"Пижма\";\"other\"\n\"509184\";\"Pizhanka\";\"main\"\n\"509184\";\"PIZHANKA\";\"other\"\n\"509184\";\"Pizjanka\";\"other\"\n\"509184\";\"ПИЖАНКА\";\"other\"\n\"509184\";\"Пижанка\";\"other\"\n\"509234\";\"Pitkyaranta\";\"main\"\n\"509234\";\"PITKJARANTA\";\"other\"\n\"509234\";\"Pitkaeranta\";\"other\"\n\"509234\";\"Pitkjaranta\";\"other\"\n\"509234\";\"Pitkäranta\";\"other\"\n\"509234\";\"ПИТКЯРАНТА\";\"other\"\n\"509234\";\"Питкяранта\";\"other\"\n\"509269\";\"Piterka\";\"main\"\n\"509269\";\"PITERKA\";\"other\"\n\"509269\";\"ПИТЕРКА\";\"other\"\n\"509269\";\"Питерка\";\"other\"\n\"509273\";\"Pitelino\";\"main\"\n\"509273\";\"PITELINO\";\"other\"\n\"509273\";\"Petelino\";\"other\"\n\"509273\";\"ПИТЕЛИНО\";\"other\"\n\"509273\";\"Пителино\";\"other\"\n\"509278\";\"Pistsovo\";\"main\"\n\"509278\";\"PISCOVO\";\"other\"\n\"509278\";\"ПИСЦОВО\";\"other\"\n\"509392\";\"Pirogovskiy\";\"main\"\n\"509392\";\"Pirogovskij\";\"other\"\n\"509392\";\"Пироговский\";\"other\"\n\"509401\";\"Pirogovo\";\"main\"\n\"509401\";\"Пирогово\";\"other\"\n\"509437\";\"Pionerskiy\";\"main\"\n\"509437\";\"Neukuhren\";\"other\"\n\"509437\";\"New-Kuhren\";\"other\"\n\"509437\";\"Noy Kuren\";\"other\"\n\"509437\";\"PIONERSKIJ\";\"other\"\n\"509437\";\"Pionerskij\";\"other\"\n\"509437\";\"ПИОНЕРСКИЙ\";\"other\"\n\"509437\";\"Пионерский\";\"other\"\n\"509451\";\"Pinyug\";\"main\"\n\"509451\";\"PINJUG\";\"other\"\n\"509451\";\"Pinjug\";\"other\"\n\"509451\";\"ПИНЮГ\";\"other\"\n\"509451\";\"Пинюг\";\"other\"\n\"509475\";\"Pinerovka\";\"main\"\n\"509475\";\"Pionerovka\";\"other\"\n\"509475\";\"Пинеровка\";\"other\"\n\"509483\";\"Pinega\";\"main\"\n\"509483\";\"Пинега\";\"other\"\n\"509487\";\"Pindushi\";\"main\"\n\"509487\";\"Pindusji\";\"other\"\n\"509487\";\"Пиндуши\";\"other\"\n\"509538\";\"Pil’na\";\"main\"\n\"509538\";\"Pil'na\";\"ascii\"\n\"509538\";\"Pilna\";\"other\"\n\"509538\";\"Пильна\";\"other\"\n\"509598\";\"Pikalëvo\";\"main\"\n\"509598\";\"Pikalevo\";\"ascii\"\n\"509598\";\"Пикалево\";\"other\"\n\"509598\";\"Пикалёво\";\"other\"\n\"509649\";\"Pichayevo\";\"main\"\n\"509649\";\"Pichayevo Pervoye\";\"other\"\n\"509649\";\"Pitsjajevo\";\"other\"\n\"509649\";\"Пичаево\";\"other\"\n\"509697\";\"Petushki\";\"main\"\n\"509697\";\"Novyye Petushki\";\"other\"\n\"509697\";\"PETUSHKI\";\"other\"\n\"509697\";\"Petusjki\";\"other\"\n\"509697\";\"ПЕТУШКИ\";\"other\"\n\"509697\";\"Петушки\";\"other\"\n\"509820\";\"Petrozavodsk\";\"main\"\n\"509820\";\"Petrosawodsk\";\"other\"\n\"509820\";\"Petroskoi\";\"other\"\n\"509820\";\"Petroskoj\";\"other\"\n\"509820\";\"Petrozawodzk\";\"other\"\n\"509820\";\"Pietrozawodsk\";\"other\"\n\"509820\";\"peteulojabocheukeu\";\"other\"\n\"509820\";\"petorozavu~otsuku\";\"other\"\n\"509820\";\"ptrwzbwdsq\";\"other\"\n\"509820\";\"Петрозаводск\";\"other\"\n\"509820\";\"פטרוזבודסק\";\"other\"\n\"509820\";\"ペトロザヴォーツク\";\"other\"\n\"509820\";\"페트로자보츠크\";\"other\"\n\"509826\";\"Petrov Val\";\"main\"\n\"509826\";\"PETROV VAL\";\"other\"\n\"509826\";\"ПЕТРОВ ВАЛ\";\"other\"\n\"509826\";\"Петров Вал\";\"other\"\n\"509850\";\"Petrovskoye\";\"main\"\n\"509850\";\"Petrovsk\";\"other\"\n\"509850\";\"Petrovskoje\";\"other\"\n\"509850\";\"Петровское\";\"other\"\n\"509926\";\"Petrovskiy\";\"main\"\n\"509926\";\"PETROVSKIJ\";\"other\"\n\"509926\";\"Petrovskaya\";\"other\"\n\"509926\";\"Petrovskii\";\"other\"\n\"509926\";\"Petrovskij\";\"other\"\n\"509926\";\"ПЕТРОВСКИЙ\";\"other\"\n\"509926\";\"Петровский\";\"other\"\n\"509985\";\"Petrovskaya\";\"main\"\n\"509985\";\"Petrovskaja\";\"other\"\n\"509985\";\"Петровская\";\"other\"\n\"509987\";\"Petrovsk\";\"main\"\n\"509987\";\"PETROVSK\";\"other\"\n\"509987\";\"Petrowsk\";\"other\"\n\"509987\";\"ПЕТРОВСК\";\"other\"\n\"509987\";\"Петровск\";\"other\"\n\"509998\";\"Petrovo-Dal’neye\";\"main\"\n\"509998\";\"Petrovo-Dal'neye\";\"ascii\"\n\"509998\";\"Petrovo-Dalneje\";\"other\"\n\"509998\";\"Petrovskoye\";\"other\"\n\"509998\";\"Petrovskoye-Dal'neye\";\"other\"\n\"509998\";\"Petrovskoye-Dal’neye\";\"other\"\n\"509998\";\"Петрово-Дальнее\";\"other\"\n\"510139\";\"Petro-Slavyanka\";\"main\"\n\"510139\";\"Petro-Slavjanka\";\"other\"\n\"510139\";\"Петро-Славянка\";\"other\"\n\"510171\";\"Petropavlovskaya\";\"main\"\n\"510171\";\"Petropavlovskaja\";\"other\"\n\"510171\";\"Петропавловская\";\"other\"\n\"510172\";\"Petropavlovskaya\";\"main\"\n\"510172\";\"Petropavlovskaja\";\"other\"\n\"510172\";\"Петропавловская\";\"other\"\n\"510225\";\"Petrodvorets\";\"main\"\n\"510225\";\"PETRODVOREC\";\"other\"\n\"510225\";\"Petergof\";\"other\"\n\"510225\";\"ПЕТРОДВОРЕЦ\";\"other\"\n\"510323\";\"Pestyaki\";\"main\"\n\"510323\";\"PESTJAKI\";\"other\"\n\"510323\";\"Pestjaki\";\"other\"\n\"510323\";\"ПЕСТЯКИ\";\"other\"\n\"510342\";\"Pestretsy\";\"main\"\n\"510342\";\"Пестрецы\";\"other\"\n\"510347\";\"Pestravka\";\"main\"\n\"510347\";\"Пестравка\";\"other\"\n\"510364\";\"Pestovo\";\"main\"\n\"510364\";\"Pestowo\";\"other\"\n\"510364\";\"Пестово\";\"other\"\n\"510410\";\"Pesochnyy\";\"main\"\n\"510410\";\"PESOCHNYJ\";\"other\"\n\"510410\";\"Pesochnaya\";\"other\"\n\"510410\";\"Pesochnoye\";\"other\"\n\"510410\";\"Pesotsjnyj\";\"other\"\n\"510410\";\"ПЕСОЧНЫЙ\";\"other\"\n\"510410\";\"Песочный\";\"other\"\n\"510442\";\"Pesochnoye\";\"main\"\n\"510442\";\"PESOCHNOE\";\"other\"\n\"510442\";\"Pesotsjnoje\";\"other\"\n\"510442\";\"ПЕСОЧНОЕ\";\"other\"\n\"510442\";\"Песочное\";\"other\"\n\"510473\";\"Peskovka\";\"main\"\n\"510473\";\"PESKOVKA\";\"other\"\n\"510473\";\"Peskovski Zavod\";\"other\"\n\"510473\";\"Shlakovaya\";\"other\"\n\"510473\";\"ПЕСКОВКА\";\"other\"\n\"510473\";\"Песковка\";\"other\"\n\"510512\";\"Peski\";\"main\"\n\"510512\";\"PESKI\";\"other\"\n\"510512\";\"ПЕСКИ\";\"other\"\n\"510512\";\"Пески\";\"other\"\n\"510539\";\"Peshkovo\";\"main\"\n\"510539\";\"Pashkovo\";\"other\"\n\"510539\";\"Пешково\";\"other\"\n\"510613\";\"Peschanokopskoye\";\"main\"\n\"510613\";\"Peschanokopskaya\";\"other\"\n\"510613\";\"Pestsjanokopskoje\";\"other\"\n\"510613\";\"Песчанокопское\";\"other\"\n\"510808\";\"Pervoural’sk\";\"main\"\n\"510808\";\"Pervoural'sk\";\"ascii\"\n\"510808\";\"Pervoural'skiy\";\"other\"\n\"510808\";\"Pervouralsk\";\"other\"\n\"510808\";\"Pervoural’skiy\";\"other\"\n\"510808\";\"Первоуральск\";\"other\"\n\"510814\";\"Pervomayskoye\";\"main\"\n\"510814\";\"Kivenapa\";\"other\"\n\"510814\";\"Kivennapa\";\"other\"\n\"510814\";\"Kivinebb\";\"other\"\n\"510814\";\"Pervomajskoje\";\"other\"\n\"510814\";\"Pervomayskiy\";\"other\"\n\"510814\";\"Первомайское\";\"other\"\n\"510842\";\"Pervomayskoye\";\"main\"\n\"510842\";\"Pervomayskiy\";\"other\"\n\"510842\";\"Первомайское\";\"other\"\n\"510878\";\"Pervomayskiy\";\"main\"\n\"510878\";\"PERVOMAJSKIJ\";\"other\"\n\"510878\";\"Pervomajskij\";\"other\"\n\"510878\";\"ПЕРВОМАЙСКИЙ\";\"other\"\n\"510878\";\"Первомайский\";\"other\"\n\"510899\";\"Pervomayskiy\";\"main\"\n\"510899\";\"PERVOMAJSKIJ\";\"other\"\n\"510899\";\"Pervomajskij\";\"other\"\n\"510899\";\"Verob'yevka\";\"other\"\n\"510899\";\"Verob’yevka\";\"other\"\n\"510899\";\"ПЕРВОМАЙСКИЙ\";\"other\"\n\"510899\";\"Первомайский\";\"other\"\n\"510911\";\"Pervomayskiy\";\"main\"\n\"510911\";\"Bogoyavelenskoye\";\"other\"\n\"510911\";\"Bogoyavlenskoye\";\"other\"\n\"510911\";\"Pervomajskij\";\"other\"\n\"510911\";\"Первомайский\";\"other\"\n\"510934\";\"Pervomayskiy\";\"main\"\n\"510934\";\"Первомайский\";\"other\"\n\"510997\";\"Pervomayskaya\";\"main\"\n\"510997\";\"PERVOMAJSKAJA\";\"other\"\n\"510997\";\"Pervomajskaja\";\"other\"\n\"510997\";\"Pervomayskoye\";\"other\"\n\"510997\";\"Perwomaiskaja\";\"other\"\n\"510997\";\"Perwomaiskoje\";\"other\"\n\"510997\";\"ПЕРВОМАЙСКАЯ\";\"other\"\n\"511002\";\"Pervomaysk\";\"main\"\n\"511002\";\"PERVOMAJSK\";\"other\"\n\"511002\";\"Pervomajsk\";\"other\"\n\"511002\";\"Tashino\";\"other\"\n\"511002\";\"ПЕРВОМАЙСК\";\"other\"\n\"511002\";\"Первомайск\";\"other\"\n\"511012\";\"Pervoavgustovskiy\";\"main\"\n\"511012\";\"PERVOAVGUSTOVSKIJ\";\"other\"\n\"511012\";\"Pervoavgustovskij\";\"other\"\n\"511012\";\"ПЕРВОАВГУСТОВСКИЙ\";\"other\"\n\"511012\";\"Первоавгустовский\";\"other\"\n\"511196\";\"Perm'\";\"main\"\n\"511196\";\"Molotov\";\"other\"\n\"511196\";\"Perm\";\"other\"\n\"511196\";\"Молотов\";\"other\"\n\"511196\";\"Пермь\";\"other\"\n\"511264\";\"Pereyaslovskaya\";\"main\"\n\"511264\";\"Perejaslovskaja\";\"other\"\n\"511264\";\"Pereyaslavskaya\";\"other\"\n\"511264\";\"Переясловская\";\"other\"\n\"511287\";\"Perevoz\";\"main\"\n\"511287\";\"P'yanskiy Perevoz\";\"other\"\n\"511287\";\"P'yany Perevoz\";\"other\"\n\"511287\";\"P'yanyy Perevoz\";\"other\"\n\"511287\";\"PEREVOZ\";\"other\"\n\"511287\";\"P’yanskiy Perevoz\";\"other\"\n\"511287\";\"P’yany Perevoz\";\"other\"\n\"511287\";\"P’yanyy Perevoz\";\"other\"\n\"511287\";\"ПЕРЕВОЗ\";\"other\"\n\"511287\";\"Перевоз\";\"other\"\n\"511291\";\"Perevolotskiy\";\"main\"\n\"511291\";\"PEREVOLOCKIJ\";\"other\"\n\"511291\";\"Perevolotsk\";\"other\"\n\"511291\";\"Perevolotskaya\";\"other\"\n\"511291\";\"Perevolotski\";\"other\"\n\"511291\";\"Perevolotskij\";\"other\"\n\"511291\";\"Perevolotskoye\";\"other\"\n\"511291\";\"ПЕРЕВОЛОЦКИЙ\";\"other\"\n\"511291\";\"Переволотский\";\"other\"\n\"511359\";\"Pereslavl’-Zalesskiy\";\"main\"\n\"511359\";\"Pereslavl'-Zalesskiy\";\"ascii\"\n\"511359\";\"Pereslavl-Zalesskij\";\"other\"\n\"511359\";\"Pereslawl-Saleski\";\"other\"\n\"511359\";\"Переславль-Залесский\";\"other\"\n\"511386\";\"Perepravnaya\";\"main\"\n\"511386\";\"Perepravnaja\";\"other\"\n\"511386\";\"Переправная\";\"other\"\n\"511400\";\"Peremyshl’\";\"main\"\n\"511400\";\"Peremyshl'\";\"ascii\"\n\"511400\";\"Peremishl\";\"other\"\n\"511400\";\"Peremyschl\";\"other\"\n\"511400\";\"Peremysjl\";\"other\"\n\"511400\";\"Перемышль\";\"other\"\n\"511416\";\"Perelyub\";\"main\"\n\"511416\";\"Pereljub\";\"other\"\n\"511416\";\"Перелюб\";\"other\"\n\"511435\";\"Pereleshinskiy\";\"main\"\n\"511435\";\"PERELESHINSKIJ\";\"other\"\n\"511435\";\"Perelesjinskij\";\"other\"\n\"511435\";\"ПЕРЕЛЕШИНСКИЙ\";\"other\"\n\"511435\";\"Перелешинский\";\"other\"\n\"511437\";\"Pereleshino\";\"main\"\n\"511437\";\"Perelesjino\";\"other\"\n\"511437\";\"Перелешино\";\"other\"\n\"511495\";\"Peredovaya\";\"main\"\n\"511495\";\"Peredovaja\";\"other\"\n\"511495\";\"Передовая\";\"other\"\n\"511565\";\"Penza\";\"main\"\n\"511565\";\"Pensa\";\"other\"\n\"511565\";\"penja\";\"other\"\n\"511565\";\"penza\";\"other\"\n\"511565\";\"Пенза\";\"other\"\n\"511565\";\"ペンザ\";\"other\"\n\"511565\";\"펜자\";\"other\"\n\"511592\";\"Peno\";\"main\"\n\"511592\";\"PENO\";\"other\"\n\"511592\";\"ПЕНО\";\"other\"\n\"511592\";\"Пено\";\"other\"\n\"511707\";\"Pelagiada\";\"main\"\n\"511707\";\"Palagiada\";\"other\"\n\"511707\";\"Пелагиада\";\"other\"\n\"511785\";\"Pechory\";\"main\"\n\"511785\";\"Pechery\";\"other\"\n\"511785\";\"Petseri\";\"other\"\n\"511785\";\"Petsjory\";\"other\"\n\"511785\";\"Vyru Pechory\";\"other\"\n\"511785\";\"Печоры\";\"other\"\n\"511794\";\"Pechora\";\"main\"\n\"511794\";\"PECHORA\";\"other\"\n\"511794\";\"Pecora\";\"other\"\n\"511794\";\"Peczora\";\"other\"\n\"511794\";\"Petschora\";\"other\"\n\"511794\";\"Petsjora\";\"other\"\n\"511794\";\"Petsora\";\"other\"\n\"511794\";\"Petšora\";\"other\"\n\"511794\";\"Peĉora\";\"other\"\n\"511794\";\"Pečora\";\"other\"\n\"511794\";\"pechola\";\"other\"\n\"511794\";\"pechora\";\"other\"\n\"511794\";\"ПЕЧОРА\";\"other\"\n\"511794\";\"Печора\";\"other\"\n\"511794\";\"ペチョラ\";\"other\"\n\"511794\";\"페초라\";\"other\"\n\"511865\";\"Pechenga\";\"main\"\n\"511865\";\"Petsamo\";\"other\"\n\"511865\";\"Petschenga\";\"other\"\n\"511865\";\"Petsjenga\";\"other\"\n\"511865\";\"Pieczenga\";\"other\"\n\"511865\";\"Печенга\";\"other\"\n\"511980\";\"Pavshino\";\"main\"\n\"511980\";\"Pavshuno\";\"other\"\n\"511980\";\"Pavsjino\";\"other\"\n\"511980\";\"Павшино\";\"other\"\n\"512023\";\"Pavlovskiy Posad\";\"main\"\n\"512023\";\"PAVLOVSKIJ POSAD\";\"other\"\n\"512023\";\"Pavloro Pasad\";\"other\"\n\"512023\";\"Pavlov-Posad\";\"other\"\n\"512023\";\"Pavlovo-Posad\";\"other\"\n\"512023\";\"Pavlovski Posad\";\"other\"\n\"512023\";\"Pavlovskij Posad\";\"other\"\n\"512023\";\"ПАВЛОВСКИЙ ПОСАД\";\"other\"\n\"512023\";\"Павловский Посад\";\"other\"\n\"512027\";\"Pavlovskiy\";\"main\"\n\"512027\";\"PAVLOVSKIJ\";\"other\"\n\"512027\";\"Pavlovskij\";\"other\"\n\"512027\";\"ПАВЛОВСКИЙ\";\"other\"\n\"512027\";\"Павловский\";\"other\"\n\"512039\";\"Pavlovskaya Sloboda\";\"main\"\n\"512039\";\"Pavlovskaja-Sloboda\";\"other\"\n\"512039\";\"Павловская Слобода\";\"other\"\n\"512039\";\"Павловская-Слобода\";\"other\"\n\"512051\";\"Pavlovskaya\";\"main\"\n\"512051\";\"Pavlovskaja\";\"other\"\n\"512051\";\"Pawlowskaja\";\"other\"\n\"512051\";\"Павловская\";\"other\"\n\"512052\";\"Pavlovsk\";\"main\"\n\"512052\";\"PAVLOVSK\";\"other\"\n\"512052\";\"Paviosk\";\"other\"\n\"512052\";\"Slutsk\";\"other\"\n\"512052\";\"ПАВЛОВСК\";\"other\"\n\"512052\";\"Павловск\";\"other\"\n\"512053\";\"Pavlovsk\";\"main\"\n\"512053\";\"PAVLOVSK\";\"other\"\n\"512053\";\"Pawlowsk\";\"other\"\n\"512053\";\"ПАВЛОВСК\";\"other\"\n\"512053\";\"Павловск\";\"other\"\n\"512063\";\"Pavlovo\";\"main\"\n\"512063\";\"PAVLOVO\";\"other\"\n\"512063\";\"ПАВЛОВО\";\"other\"\n\"512063\";\"Павлово\";\"other\"\n\"512109\";\"Pavlovka\";\"main\"\n\"512109\";\"PAVLOVKA\";\"other\"\n\"512109\";\"ПАВЛОВКА\";\"other\"\n\"512109\";\"Павловка\";\"other\"\n\"512133\";\"Pavlovka\";\"main\"\n\"512133\";\"Павловка\";\"other\"\n\"512152\";\"Pavlovka\";\"main\"\n\"512152\";\"PAVLOVKA\";\"other\"\n\"512152\";\"ПАВЛОВКА\";\"other\"\n\"512152\";\"Павловка\";\"other\"\n\"512217\";\"Pavlodol’skaya\";\"main\"\n\"512217\";\"Pavlodol'skaya\";\"ascii\"\n\"512217\";\"Pavlodolskaja\";\"other\"\n\"512217\";\"Павлодольская\";\"other\"\n\"512247\";\"Pavino\";\"main\"\n\"512247\";\"Павино\";\"other\"\n\"512255\";\"Pavelets\";\"main\"\n\"512255\";\"PAVELEC\";\"other\"\n\"512255\";\"Paveletskiy\";\"other\"\n\"512255\";\"ПАВЕЛЕЦ\";\"other\"\n\"512255\";\"Павелец\";\"other\"\n\"512382\";\"Pashkovskiy\";\"main\"\n\"512382\";\"PASHKOVSKIJ\";\"other\"\n\"512382\";\"Pachksowskaja\";\"other\"\n\"512382\";\"Paschkowskaja\";\"other\"\n\"512382\";\"Pashkovskaya\";\"other\"\n\"512382\";\"Pasjkovskij\";\"other\"\n\"512382\";\"ПАШКОВСКИЙ\";\"other\"\n\"512382\";\"Пашковский\";\"other\"\n\"512413\";\"Pashiya\";\"main\"\n\"512413\";\"PASHIJA\";\"other\"\n\"512413\";\"Pasjia\";\"other\"\n\"512413\";\"ПАШИЯ\";\"other\"\n\"512471\";\"Partizan\";\"main\"\n\"512471\";\"PARTIZAN\";\"other\"\n\"512471\";\"ПАРТИЗАН\";\"other\"\n\"512471\";\"Партизан\";\"other\"\n\"512524\";\"Parma\";\"main\"\n\"512524\";\"Парма\";\"other\"\n\"512533\";\"Parkovyy\";\"main\"\n\"512533\";\"TIKHORECK\";\"other\"\n\"512533\";\"Tikhoretskiy\";\"other\"\n\"512533\";\"Парковый\";\"other\"\n\"512533\";\"ТИХОРЕЦК\";\"other\"\n\"512566\";\"Pargolovo\";\"main\"\n\"512566\";\"PARGOLOVO\";\"other\"\n\"512566\";\"Pargalovo\";\"other\"\n\"512566\";\"ПАРГОЛОВО\";\"other\"\n\"512566\";\"Парголово\";\"other\"\n\"512570\";\"Parfino\";\"main\"\n\"512570\";\"PARFINO\";\"other\"\n\"512570\";\"Zhereslo\";\"other\"\n\"512570\";\"ПАРФИНО\";\"other\"\n\"512570\";\"Парфино\";\"other\"\n\"512576\";\"Parfen’yevo\";\"main\"\n\"512576\";\"Parfen'yevo\";\"ascii\"\n\"512576\";\"Parfenjevo\";\"other\"\n\"512576\";\"Парфеньево\";\"other\"\n\"512607\";\"Paraul\";\"main\"\n\"512607\";\"Параул\";\"other\"\n\"512618\";\"Paran’ga\";\"main\"\n\"512618\";\"Paran'ga\";\"ascii\"\n\"512618\";\"Paranga\";\"other\"\n\"512618\";\"Параньга\";\"other\"\n\"512817\";\"Pankovka\";\"main\"\n\"512817\";\"PANKOVKA\";\"other\"\n\"512817\";\"ПАНКОВКА\";\"other\"\n\"512817\";\"Панковка\";\"other\"\n\"512861\";\"Panino\";\"main\"\n\"512861\";\"Панино\";\"other\"\n\"512947\";\"Pamyat’ Parizhskoy Kommuny\";\"main\"\n\"512947\";\"Pamyat' Parizhskoy Kommuny\";\"ascii\"\n\"512947\";\"PAMJAT' PARIZHSKOJ KOMMUNY\";\"other\"\n\"512947\";\"Pamjat Parizjskoj Kommuny\";\"other\"\n\"512947\";\"Parizhskaya Kommuna\";\"other\"\n\"512947\";\"Parizhskoy Kommuny\";\"other\"\n\"512947\";\"ПАМЯТЬ ПАРИЖСКОЙ КОММУНЫ\";\"other\"\n\"512947\";\"Память Парижской Коммуны\";\"other\"\n\"513042\";\"Pallasovka\";\"main\"\n\"513042\";\"Bulbin\";\"other\"\n\"513042\";\"Ney-Galka\";\"other\"\n\"513042\";\"PALLASOVKA\";\"other\"\n\"513042\";\"Palassovka\";\"other\"\n\"513042\";\"Pallassowka\";\"other\"\n\"513042\";\"ПАЛЛАСОВКА\";\"other\"\n\"513042\";\"Палласовка\";\"other\"\n\"513051\";\"Palkino\";\"main\"\n\"513051\";\"PALKINO\";\"other\"\n\"513051\";\"ПАЛКИНО\";\"other\"\n\"513051\";\"Палкино\";\"other\"\n\"513095\";\"Palekh\";\"main\"\n\"513095\";\"PALEKH\";\"other\"\n\"513095\";\"Paleg\";\"other\"\n\"513095\";\"ПАЛЕХ\";\"other\"\n\"513095\";\"Палех\";\"other\"\n\"513309\";\"Pachelma\";\"main\"\n\"513309\";\"Patsjelma\";\"other\"\n\"513309\";\"Пачелма\";\"other\"\n\"513329\";\"Ozinki\";\"main\"\n\"513329\";\"OZINKI\";\"other\"\n\"513329\";\"Osinki\";\"other\"\n\"513329\";\"Ozinkhi\";\"other\"\n\"513329\";\"ОЗИНКИ\";\"other\"\n\"513329\";\"Озинки\";\"other\"\n\"513362\";\"Ozherel’ye\";\"main\"\n\"513362\";\"Ozherel'ye\";\"ascii\"\n\"513362\";\"Ozjerelje\";\"other\"\n\"513362\";\"Ожерелье\";\"other\"\n\"513378\";\"Ozëry\";\"main\"\n\"513378\";\"Ozery\";\"ascii\"\n\"513378\";\"OZERY\";\"other\"\n\"513378\";\"Ozeri\";\"other\"\n\"513378\";\"ОЗЕРЫ\";\"other\"\n\"513378\";\"Озёры\";\"other\"\n\"513406\";\"Ozërsk\";\"main\"\n\"513406\";\"Ozersk\";\"ascii\"\n\"513406\";\"Angerapp\";\"other\"\n\"513406\";\"Darkehmen\";\"other\"\n\"513406\";\"Darkemen\";\"other\"\n\"513406\";\"OZERSK\";\"other\"\n\"513406\";\"ОЗЕРСК\";\"other\"\n\"513406\";\"Озёрск\";\"other\"\n\"513426\";\"Ozërnyy\";\"main\"\n\"513426\";\"Ozernyy\";\"ascii\"\n\"513426\";\"Ozjornyj\";\"other\"\n\"513426\";\"Озёрный\";\"other\"\n\"513760\";\"Overyata\";\"main\"\n\"513760\";\"OVERJATA\";\"other\"\n\"513760\";\"Overjata\";\"other\"\n\"513760\";\"ОВЕРЯТА\";\"other\"\n\"513878\";\"Otrado-Kubanskoye\";\"main\"\n\"513878\";\"Otradno-Kubanskoe\";\"other\"\n\"513878\";\"Otradokubanskiy\";\"other\"\n\"513878\";\"Отрадно-Кубанское\";\"other\"\n\"513878\";\"Отрадо-Кубанское\";\"other\"\n\"513883\";\"Otradnyy\";\"main\"\n\"513883\";\"OTRADNYJ\";\"other\"\n\"513883\";\"Otradnoye\";\"other\"\n\"513883\";\"Otradny\";\"other\"\n\"513883\";\"Otradnyj\";\"other\"\n\"513883\";\"ОТРАДНЫЙ\";\"other\"\n\"513883\";\"Отрадный\";\"other\"\n\"513898\";\"Otradnoye\";\"main\"\n\"513898\";\"Otradnoje\";\"other\"\n\"513898\";\"Отрадное\";\"other\"\n\"513911\";\"Otradnaya\";\"main\"\n\"513911\";\"Otradnaja\";\"other\"\n\"513911\";\"Отрадная\";\"other\"\n\"513970\";\"Otkaznoye\";\"main\"\n\"513970\";\"Otkaznoje\";\"other\"\n\"513970\";\"Отказное\";\"other\"\n\"514042\";\"Ostrovtsy\";\"main\"\n\"514042\";\"Островцы\";\"other\"\n\"514052\";\"Ostrovskoye\";\"main\"\n\"514052\";\"Ostrovskoje\";\"other\"\n\"514052\";\"Semenovskoye\";\"other\"\n\"514052\";\"Островское\";\"other\"\n\"514171\";\"Ostrov\";\"main\"\n\"514171\";\"Остров\";\"other\"\n\"514198\";\"Ostrogozhsk\";\"main\"\n\"514198\";\"OSTROGOZHSK\";\"other\"\n\"514198\";\"Ostrogoshsk\";\"other\"\n\"514198\";\"Ostrogozjsk\";\"other\"\n\"514198\";\"ОСТРОГОЖСК\";\"other\"\n\"514198\";\"Острогожск\";\"other\"\n\"514246\";\"Oster\";\"main\"\n\"514246\";\"OSTER\";\"other\"\n\"514246\";\"ОСТЕР\";\"other\"\n\"514246\";\"Остер\";\"other\"\n\"514259\";\"Ostashkov\";\"main\"\n\"514259\";\"Ostaschkow\";\"other\"\n\"514259\";\"Осташков\";\"other\"\n\"514460\";\"Osinovo\";\"main\"\n\"514460\";\"Осиново\";\"other\"\n\"514572\";\"Osinki\";\"main\"\n\"514572\";\"OSINKI\";\"other\"\n\"514572\";\"ОСИНКИ\";\"other\"\n\"514572\";\"Осинки\";\"other\"\n\"514679\";\"Osel’ki\";\"main\"\n\"514679\";\"Osel'ki\";\"ascii\"\n\"514679\";\"Осельки\";\"other\"\n\"514706\";\"Osa\";\"main\"\n\"514706\";\"OSA\";\"other\"\n\"514706\";\"ОСА\";\"other\"\n\"514719\";\"Orud’yevo\";\"main\"\n\"514719\";\"Orud'yevo\";\"ascii\"\n\"514719\";\"Orudjevo\";\"other\"\n\"514719\";\"Орудьево\";\"other\"\n\"514734\";\"Orsk\";\"main\"\n\"514734\";\"ORSK\";\"other\"\n\"514734\";\"ОРСК\";\"other\"\n\"514734\";\"Орск\";\"other\"\n\"514739\";\"Orshanka\";\"main\"\n\"514739\";\"ORSHANKA\";\"other\"\n\"514739\";\"Orsjanka\";\"other\"\n\"514739\";\"ОРШАНКА\";\"other\"\n\"514739\";\"Оршанка\";\"other\"\n\"514744\";\"Orsha\";\"main\"\n\"514744\";\"ORSHA\";\"other\"\n\"514744\";\"Orsha Pervaya\";\"other\"\n\"514744\";\"Orsja\";\"other\"\n\"514744\";\"ОРША\";\"other\"\n\"514744\";\"Орша\";\"other\"\n\"514796\";\"Orlovskiy\";\"main\"\n\"514796\";\"ORLOVSKIJ\";\"other\"\n\"514796\";\"Orlovka\";\"other\"\n\"514796\";\"Orlovskaya\";\"other\"\n\"514796\";\"Orlovskij\";\"other\"\n\"514796\";\"ОРЛОВСКИЙ\";\"other\"\n\"514796\";\"Орловский\";\"other\"\n\"514833\";\"Orlovo\";\"main\"\n\"514833\";\"Орлово\";\"other\"\n\"514906\";\"Orlovka\";\"main\"\n\"514906\";\"Орловка\";\"other\"\n\"514966\";\"Orichi\";\"main\"\n\"514966\";\"ORICHI\";\"other\"\n\"514966\";\"Oritsji\";\"other\"\n\"514966\";\"ОРИЧИ\";\"other\"\n\"514966\";\"Оричи\";\"other\"\n\"514968\";\"Orgtrud\";\"main\"\n\"514968\";\"Lemeshenskiy\";\"other\"\n\"514968\";\"ORGTRUD\";\"other\"\n\"514968\";\"Poselok Lemeshki\";\"other\"\n\"514968\";\"Posëlok Lemeshki\";\"other\"\n\"514968\";\"ОРГТРУД\";\"other\"\n\"514968\";\"Оргтруд\";\"other\"\n\"515003\";\"Orenburg\";\"main\"\n\"515003\";\"Chkalov\";\"other\"\n\"515003\";\"Orenbourg\";\"other\"\n\"515003\";\"Tschkalow\";\"other\"\n\"515003\";\"awrnbrgh\";\"other\"\n\"515003\";\"olenbuleukeu\";\"other\"\n\"515003\";\"orenburuku\";\"other\"\n\"515003\";\"shkalwf\";\"other\"\n\"515003\";\"Оренбург\";\"other\"\n\"515003\";\"Чкалов\";\"other\"\n\"515003\";\"אורנבורג\";\"other\"\n\"515003\";\"أورنبرغ\";\"other\"\n\"515003\";\"شكالوف\";\"other\"\n\"515003\";\"オレンブルク\";\"other\"\n\"515003\";\"오렌부르크\";\"other\"\n\"515012\";\"Orël\";\"main\"\n\"515012\";\"Orel\";\"ascii\"\n\"515012\";\"Oriol\";\"other\"\n\"515012\";\"Oriolas\";\"other\"\n\"515012\";\"Orjol\";\"other\"\n\"515012\";\"Oryol\";\"other\"\n\"515012\";\"Orzel\";\"other\"\n\"515012\";\"Orzeł\";\"other\"\n\"515012\";\"olyol\";\"other\"\n\"515012\";\"oryoru\";\"other\"\n\"515012\";\"Орел\";\"other\"\n\"515012\";\"Орёл\";\"other\"\n\"515012\";\"オリョール\";\"other\"\n\"515012\";\"오룔\";\"other\"\n\"515024\";\"Orekhovo-Zuyevo\";\"main\"\n\"515024\";\"OREKHOVO-ZUEVO\";\"other\"\n\"515024\";\"Orechowo-Sujewo\";\"other\"\n\"515024\";\"Orehhovo-Zujevo\";\"other\"\n\"515024\";\"Orehovo-Zujevo\";\"other\"\n\"515024\";\"Orekhovo\";\"other\"\n\"515024\";\"Orekhovo-Zuevo\";\"other\"\n\"515024\";\"Oreĥovo-Zujevo\";\"other\"\n\"515024\";\"Oriechowo-Zujewo\";\"other\"\n\"515024\";\"Orjechowo Sujewo\";\"other\"\n\"515024\";\"Oryekhovo\";\"other\"\n\"515024\";\"ОРЕХОВО-ЗУЕВО\";\"other\"\n\"515024\";\"Орехово-Зуево\";\"other\"\n\"515082\";\"Ordzhonikidzevskiy\";\"main\"\n\"515082\";\"Ordzjonikidzevskij\";\"other\"\n\"515082\";\"Орджоникидзевский\";\"other\"\n\"515083\";\"Ordzhonikidzevskaya\";\"main\"\n\"515083\";\"Ordshonikidsewskaja\";\"other\"\n\"515083\";\"Ordzhonikidzevskaja\";\"other\"\n\"515083\";\"Ordzhonikidzevskoye\";\"other\"\n\"515083\";\"Ordzjonikidzevskaja\";\"other\"\n\"515083\";\"Sleptsovskaya\";\"other\"\n\"515083\";\"Slyeptsovskaya\";\"other\"\n\"515083\";\"Орджоникидзевская\";\"other\"\n\"515098\";\"Orda\";\"main\"\n\"515098\";\"Орда\";\"other\"\n\"515109\";\"Oranzherei\";\"main\"\n\"515109\";\"ORANZHEREI\";\"other\"\n\"515109\";\"Oranjereinyi Promysel\";\"other\"\n\"515109\";\"Oranzherey\";\"other\"\n\"515109\";\"Oranzhereynoye\";\"other\"\n\"515109\";\"Oranzjerei\";\"other\"\n\"515109\";\"ОРАНЖЕРЕИ\";\"other\"\n\"515109\";\"Оранжереи\";\"other\"\n\"515155\";\"Opochka\";\"main\"\n\"515155\";\"Opotschka\";\"other\"\n\"515155\";\"Opotsjka\";\"other\"\n\"515155\";\"Pechka\";\"other\"\n\"515155\";\"Опочка\";\"other\"\n\"515161\";\"Opechenskiy Posad\";\"main\"\n\"515161\";\"Opetsjenskij Posad\";\"other\"\n\"515161\";\"Opochinskoi\";\"other\"\n\"515161\";\"Opochinskoi Posad\";\"other\"\n\"515161\";\"Опеченский Посад\";\"other\"\n\"515175\";\"Oparino\";\"main\"\n\"515175\";\"OPARINO\";\"other\"\n\"515175\";\"ОПАРИНО\";\"other\"\n\"515175\";\"Опарино\";\"other\"\n\"515186\";\"Opalikha\";\"main\"\n\"515186\";\"Опалиха\";\"other\"\n\"515246\";\"Onega\";\"main\"\n\"515246\";\"ONEGA\";\"other\"\n\"515246\";\"ОНЕГА\";\"other\"\n\"515246\";\"Онега\";\"other\"\n\"515267\";\"Omutninsk\";\"main\"\n\"515267\";\"OMUTNINSK\";\"other\"\n\"515267\";\"Omutinisk\";\"other\"\n\"515267\";\"ОМУТНИНСК\";\"other\"\n\"515267\";\"Омутнинск\";\"other\"\n\"515309\";\"Olym\";\"main\"\n\"515309\";\"Olymskij\";\"other\"\n\"515309\";\"Olymskiy\";\"other\"\n\"515309\";\"Олым\";\"other\"\n\"515309\";\"Олымский\";\"other\"\n\"515403\";\"Olonets\";\"main\"\n\"515403\";\"Aunus\";\"other\"\n\"515403\";\"OLONEC\";\"other\"\n\"515403\";\"Olonec\";\"other\"\n\"515403\";\"Olonez\";\"other\"\n\"515403\";\"ОЛОНЕЦ\";\"other\"\n\"515403\";\"Олонец\";\"other\"\n\"515539\";\"Ol’khovatka\";\"main\"\n\"515539\";\"Ol'khovatka\";\"ascii\"\n\"515539\";\"OL'KHOVATKA\";\"other\"\n\"515539\";\"Olchowatka-marjewka\";\"other\"\n\"515539\";\"Olkhovatka\";\"other\"\n\"515539\";\"ОЛЬХОВАТКА\";\"other\"\n\"515539\";\"Ольховатка\";\"other\"\n\"515558\";\"Ol’gino\";\"main\"\n\"515558\";\"Ol'gino\";\"ascii\"\n\"515558\";\"Olgino\";\"other\"\n\"515558\";\"Olino\";\"other\"\n\"515558\";\"Ольгино\";\"other\"\n\"515582\";\"Ol’ginskaya\";\"main\"\n\"515582\";\"Ol'ginskaya\";\"ascii\"\n\"515582\";\"Olginskaja\";\"other\"\n\"515582\";\"Ольгинская\";\"other\"\n\"515583\";\"Ol’ginskaya\";\"main\"\n\"515583\";\"Ol'ginskaya\";\"ascii\"\n\"515583\";\"Olginskaja\";\"other\"\n\"515583\";\"Stanitsa Ol'ginskaya\";\"other\"\n\"515583\";\"Stanitsa Ol’ginskaya\";\"other\"\n\"515583\";\"Ольгинская\";\"other\"\n\"515612\";\"Ol’ginka\";\"main\"\n\"515612\";\"Ol'ginka\";\"ascii\"\n\"515612\";\"Olginka\";\"other\"\n\"515612\";\"Ольгинка\";\"other\"\n\"515687\";\"Olenino\";\"main\"\n\"515687\";\"OLENINO\";\"other\"\n\"515687\";\"Oljenin\";\"other\"\n\"515687\";\"ОЛЕНИНО\";\"other\"\n\"515687\";\"Оленино\";\"other\"\n\"515698\";\"Olenegorsk\";\"main\"\n\"515698\";\"OLENEGORSK\";\"other\"\n\"515698\";\"Olen'ya\";\"other\"\n\"515698\";\"Olenja\";\"other\"\n\"515698\";\"ОЛЕНЕГОРСК\";\"other\"\n\"515771\";\"Okulovka\";\"main\"\n\"515771\";\"OKULOVKA\";\"other\"\n\"515771\";\"Okulowka\";\"other\"\n\"515771\";\"ОКУЛОВКА\";\"other\"\n\"515804\";\"Tsotsin-Yurt\";\"main\"\n\"515804\";\"Cocin-Avl\";\"other\"\n\"515804\";\"Cocin-Avla\";\"other\"\n\"515804\";\"Cocin-Jurt\";\"other\"\n\"515804\";\"Cocin-Əvl\";\"other\"\n\"515804\";\"Cocin-Əvla\";\"other\"\n\"515804\";\"Oktjabr'skoe\";\"other\"\n\"515804\";\"Oktyabr'skoye\";\"other\"\n\"515804\";\"Tsatsan-Yurt\";\"other\"\n\"515804\";\"Октябрьское\";\"other\"\n\"515804\";\"Цоцин-Юрт\";\"other\"\n\"515805\";\"Oktyabr’skoye\";\"main\"\n\"515805\";\"Oktyabr'skoye\";\"ascii\"\n\"515805\";\"Kartsa\";\"other\"\n\"515805\";\"Oktjabr'skoe\";\"other\"\n\"515805\";\"Oktjabrskoje\";\"other\"\n\"515805\";\"Sholkhi\";\"other\"\n\"515805\";\"Октябрьское\";\"other\"\n\"515873\";\"Oktyabr’skiy\";\"main\"\n\"515873\";\"Oktyabr'skiy\";\"ascii\"\n\"515873\";\"Oktyabrsky\";\"other\"\n\"515873\";\"Октябрьский\";\"other\"\n\"515879\";\"Oktyabr’skiy\";\"main\"\n\"515879\";\"Oktyabr'skiy\";\"ascii\"\n\"515879\";\"Oktiabr'skil\";\"other\"\n\"515879\";\"Oktiabr’skil\";\"other\"\n\"515879\";\"Oktjabrskij\";\"other\"\n\"515879\";\"Oktyabrsk\";\"other\"\n\"515879\";\"Октябрьский\";\"other\"\n\"515921\";\"Takhtamukay\";\"main\"\n\"515921\";\"Khakurate\";\"other\"\n\"515921\";\"Oktyabr'skiy\";\"other\"\n\"515921\";\"Oktyabr’skiy\";\"other\"\n\"515921\";\"Takhtamukaj\";\"other\"\n\"515921\";\"Tokhtamukay\";\"other\"\n\"515921\";\"Тахтамукай\";\"other\"\n\"515966\";\"Oksovskiy\";\"main\"\n\"515966\";\"Navolok\";\"other\"\n\"515966\";\"OKSOVSKIJ\";\"other\"\n\"515966\";\"Oksovskij\";\"other\"\n\"515966\";\"ОКСОВСКИЙ\";\"other\"\n\"515966\";\"Оксовский\";\"other\"\n\"516073\";\"Okhansk\";\"main\"\n\"516073\";\"OKHANSK\";\"other\"\n\"516073\";\"ОХАНСК\";\"other\"\n\"516197\";\"Odoyev\";\"main\"\n\"516197\";\"ODOEV\";\"other\"\n\"516197\";\"Odoev\";\"other\"\n\"516197\";\"Odojev\";\"other\"\n\"516197\";\"Odoyevo\";\"other\"\n\"516197\";\"ОДОЕВ\";\"other\"\n\"516197\";\"Одоев\";\"other\"\n\"516215\";\"Odintsovo\";\"main\"\n\"516215\";\"Odincovo\";\"other\"\n\"516215\";\"Одинцово\";\"other\"\n\"516256\";\"Ochër\";\"main\"\n\"516256\";\"Ocher\";\"ascii\"\n\"516256\";\"OCHER\";\"other\"\n\"516256\";\"Otsjer\";\"other\"\n\"516256\";\"ОЧЕР\";\"other\"\n\"516256\";\"Очёр\";\"other\"\n\"516305\";\"Obukhovo\";\"main\"\n\"516305\";\"Обухово\";\"other\"\n\"516342\";\"Obsharovka\";\"main\"\n\"516342\";\"Obsjarovka\";\"other\"\n\"516342\";\"Обшаровка\";\"other\"\n\"516400\";\"Oboyan’\";\"main\"\n\"516400\";\"Oboyan'\";\"ascii\"\n\"516400\";\"OBOJAN'\";\"other\"\n\"516400\";\"Obojan\";\"other\"\n\"516400\";\"Obojan'\";\"other\"\n\"516400\";\"Obojany\";\"other\"\n\"516400\";\"ОБОЯНЬ\";\"other\"\n\"516400\";\"Обоянь\";\"other\"\n\"516436\";\"Obninsk\";\"main\"\n\"516436\";\"OBNINSK\";\"other\"\n\"516436\";\"Obnińsk\";\"other\"\n\"516436\";\"obeuninseukeu\";\"other\"\n\"516436\";\"ОБНИНСК\";\"other\"\n\"516436\";\"Обнинск\";\"other\"\n\"516436\";\"오브닌스크\";\"other\"\n\"516454\";\"Oblivskaya\";\"main\"\n\"516454\";\"Obliswskaja\";\"other\"\n\"516454\";\"Oblivskaja\";\"other\"\n\"516454\";\"Обливская\";\"other\"\n\"516539\";\"Nyuksenitsa\";\"main\"\n\"516539\";\"Njuksenitsa\";\"other\"\n\"516539\";\"Нюксеница\";\"other\"\n\"516576\";\"Nytva\";\"main\"\n\"516576\";\"NYTVA\";\"other\"\n\"516576\";\"НЫТВА\";\"other\"\n\"516588\";\"Nyrob\";\"main\"\n\"516588\";\"NYROB\";\"other\"\n\"516588\";\"НЫРОБ\";\"other\"\n\"516615\";\"Nyazepetrovsk\";\"main\"\n\"516615\";\"Knyazepetrovski\";\"other\"\n\"516615\";\"Njazepetrovsk\";\"other\"\n\"516615\";\"Нязепетровск\";\"other\"\n\"516647\";\"Nyandoma\";\"main\"\n\"516647\";\"NJANDOMA\";\"other\"\n\"516647\";\"Njandoma\";\"other\"\n\"516647\";\"НЯНДОМА\";\"other\"\n\"516647\";\"Няндома\";\"other\"\n\"516710\";\"Nurma\";\"main\"\n\"516710\";\"Нурма\";\"other\"\n\"516716\";\"Nurlat\";\"main\"\n\"516716\";\"NURLAT\";\"other\"\n\"516716\";\"НУРЛАТ\";\"other\"\n\"516716\";\"Нурлат\";\"other\"\n\"516730\";\"Nuradilovo\";\"main\"\n\"516730\";\"Daud-Otar\";\"other\"\n\"516730\";\"Daut\";\"other\"\n\"516730\";\"Нурадилово\";\"other\"\n\"516780\";\"Nozhay-Yurt\";\"main\"\n\"516780\";\"Andalaly\";\"other\"\n\"516780\";\"Andalely\";\"other\"\n\"516780\";\"Nazin-Yurt\";\"other\"\n\"516780\";\"Nozhaj-Jurt\";\"other\"\n\"516780\";\"Nozhayt-Yurt\";\"other\"\n\"516780\";\"Nozjaj-Jurt\";\"other\"\n\"516780\";\"Ножай-Юрт\";\"other\"\n\"516801\";\"Novyy Yegorlyk\";\"main\"\n\"516801\";\"Nov.Egorlyk\";\"other\"\n\"516801\";\"Novy-Yegorlyk\";\"other\"\n\"516801\";\"Нов.Егорлык\";\"other\"\n\"516801\";\"Новый Егорлык\";\"other\"\n\"516875\";\"Novyy Rogachik\";\"main\"\n\"516875\";\"NOV.ROGACHIK\";\"other\"\n\"516875\";\"Novy Rogachik\";\"other\"\n\"516875\";\"Novyj Rogachik\";\"other\"\n\"516875\";\"НОВ.РОГАЧИК\";\"other\"\n\"516875\";\"Новый Рогачик\";\"other\"\n\"516931\";\"Novyy Oskol\";\"main\"\n\"516931\";\"NOVYJ OSKOL\";\"other\"\n\"516931\";\"Novo Oskol\";\"other\"\n\"516931\";\"Novy Oskol\";\"other\"\n\"516931\";\"Novyj Oskol\";\"other\"\n\"516931\";\"НОВЫЙ ОСКОЛ\";\"other\"\n\"516931\";\"Новый Оскол\";\"other\"\n\"516935\";\"Novyy Nekouz\";\"main\"\n\"516935\";\"NOVYJ NEKOUZ\";\"other\"\n\"516935\";\"Nekouz\";\"other\"\n\"516935\";\"Novyj Nekouz\";\"other\"\n\"516935\";\"НОВЫЙ НЕКОУЗ\";\"other\"\n\"516935\";\"Новый Некоуз\";\"other\"\n\"517009\";\"Novyy Karachay\";\"main\"\n\"517009\";\"NOVYJ KARACHAJ\";\"other\"\n\"517009\";\"Novo-Karachayevskiy\";\"other\"\n\"517009\";\"Novyj Karatsjaj\";\"other\"\n\"517009\";\"Pravoberezhnoye\";\"other\"\n\"517009\";\"НОВЫЙ КАРАЧАЙ\";\"other\"\n\"517009\";\"Новый Карачай\";\"other\"\n\"517111\";\"Novyye Lyady\";\"main\"\n\"517111\";\"Novye Ljady\";\"other\"\n\"517111\";\"Новые Ляды\";\"other\"\n\"517144\";\"Novyye Gorki\";\"main\"\n\"517144\";\"NOV.GORKI\";\"other\"\n\"517144\";\"НОВ.ГОРКИ\";\"other\"\n\"517144\";\"Новые Горки\";\"other\"\n\"517172\";\"Novyye Burasy\";\"main\"\n\"517172\";\"NOV.BURASY\";\"other\"\n\"517172\";\"Novyye Burassy\";\"other\"\n\"517172\";\"НОВ.БУРАСЫ\";\"other\"\n\"517172\";\"Новые Бурасы\";\"other\"\n\"517191\";\"Novyye Atagi\";\"main\"\n\"517191\";\"Ataga\";\"other\"\n\"517191\";\"Ataki\";\"other\"\n\"517191\";\"Mayskoye\";\"other\"\n\"517191\";\"Novaya Ataga\";\"other\"\n\"517191\";\"Novye Atagi\";\"other\"\n\"517191\";\"Novyy Atagi\";\"other\"\n\"517191\";\"Новые Атаги\";\"other\"\n\"517218\";\"Novyy Buyan\";\"main\"\n\"517218\";\"Nov. Bujan\";\"other\"\n\"517218\";\"Novy Buyan\";\"other\"\n\"517218\";\"Нов. Буян\";\"other\"\n\"517218\";\"Новый Буян\";\"other\"\n\"517269\";\"Novozybkov\";\"main\"\n\"517269\";\"NOVOZYBKOV\";\"other\"\n\"517269\";\"Novozibkov\";\"other\"\n\"517269\";\"Nowosybkoff\";\"other\"\n\"517269\";\"НОВОЗЫБКОВ\";\"other\"\n\"517269\";\"Новозыбков\";\"other\"\n\"517303\";\"Novozavedennoye\";\"main\"\n\"517303\";\"Kasayevo\";\"other\"\n\"517303\";\"Novozavedennoje\";\"other\"\n\"517303\";\"Novozavedenskoye\";\"other\"\n\"517303\";\"Новозаведенное\";\"other\"\n\"517503\";\"Novoye Leushino\";\"main\"\n\"517503\";\"NOV.LEUSHINO\";\"other\"\n\"517503\";\"НОВ.ЛЕУШИНО\";\"other\"\n\"517503\";\"Новое Леушино\";\"other\"\n\"517577\";\"Novoye Devyatkino\";\"main\"\n\"517577\";\"Novoje Devjatkino\";\"other\"\n\"517577\";\"Новое Девяткино\";\"other\"\n\"517698\";\"Novovyazniki\";\"main\"\n\"517698\";\"NOVOVJAZNIKI\";\"other\"\n\"517698\";\"Novovjazniki\";\"other\"\n\"517698\";\"НОВОВЯЗНИКИ\";\"other\"\n\"517716\";\"Novovoronezh\";\"main\"\n\"517716\";\"NOVOVORONEZH\";\"other\"\n\"517716\";\"Novovoionezhskiy\";\"other\"\n\"517716\";\"Novovoronezhskiy\";\"other\"\n\"517716\";\"Novovoronezj\";\"other\"\n\"517716\";\"НОВОВОРОНЕЖ\";\"other\"\n\"517716\";\"Нововоронеж\";\"other\"\n\"517725\";\"Novovelichkovskaya\";\"main\"\n\"517725\";\"Novovelitsjkovskaja\";\"other\"\n\"517725\";\"Nowowelitschkowskaja\";\"other\"\n\"517725\";\"Нововеличковская\";\"other\"\n\"517739\";\"Novouzensk\";\"main\"\n\"517739\";\"NOVOUZENSK\";\"other\"\n\"517739\";\"НОВОУЗЕНСК\";\"other\"\n\"517739\";\"Новоузенск\";\"other\"\n\"517744\";\"Novoutkinsk\";\"main\"\n\"517744\";\"NOVOUTKINSK\";\"other\"\n\"517744\";\"Novaya Utka\";\"other\"\n\"517744\";\"НОВОУТКИНСК\";\"other\"\n\"517744\";\"Новоуткинск\";\"other\"\n\"517766\";\"Novoul’yanovsk\";\"main\"\n\"517766\";\"Novoul'yanovsk\";\"ascii\"\n\"517766\";\"NOVOUL'JANOVSK\";\"other\"\n\"517766\";\"Novouljanovsk\";\"other\"\n\"517766\";\"НОВОУЛЬЯНОВСК\";\"other\"\n\"517767\";\"Novoukrainskoye\";\"main\"\n\"517767\";\"Novoukrainskiy\";\"other\"\n\"517767\";\"Novoukrainskoje\";\"other\"\n\"517767\";\"Новоукраинское\";\"other\"\n\"517769\";\"Novoukrainskiy\";\"main\"\n\"517769\";\"Novoukrainka\";\"other\"\n\"517769\";\"Ukrainskiy\";\"other\"\n\"517769\";\"Новоукраинка\";\"other\"\n\"517769\";\"Новоукраинский\";\"other\"\n\"517813\";\"Novotroitskaya\";\"main\"\n\"517813\";\"Novotroickaja\";\"other\"\n\"517813\";\"Novotroitskaja\";\"other\"\n\"517813\";\"Novotroitskoye\";\"other\"\n\"517813\";\"Новотроитская\";\"other\"\n\"517813\";\"Новотроицкая\";\"other\"\n\"517836\";\"Novotroitsk\";\"main\"\n\"517836\";\"NOVOTROICK\";\"other\"\n\"517836\";\"Novo-Troitskiy\";\"other\"\n\"517836\";\"Novotroick\";\"other\"\n\"517836\";\"Nowotroick\";\"other\"\n\"517836\";\"Nowotroizk\";\"other\"\n\"517836\";\"НОВОТРОИЦК\";\"other\"\n\"517836\";\"Новотроицк\";\"other\"\n\"517842\";\"Novotitarovskaya\";\"main\"\n\"517842\";\"Novotitarovskaja\";\"other\"\n\"517842\";\"Nowo-titarowskaja\";\"other\"\n\"517842\";\"Новотитаровская\";\"other\"\n\"517897\";\"Novospasskoye\";\"main\"\n\"517897\";\"NOVOSPASSKOE\";\"other\"\n\"517897\";\"Novospasskoje\";\"other\"\n\"517897\";\"НОВОСПАССКОЕ\";\"other\"\n\"517897\";\"Новоспасское\";\"other\"\n\"517921\";\"Novosokol’niki\";\"main\"\n\"517921\";\"Novosokol'niki\";\"ascii\"\n\"517921\";\"Novosokolniki\";\"other\"\n\"517921\";\"Nowo Sokolniki\";\"other\"\n\"517921\";\"Новосокольники\";\"other\"\n\"517926\";\"Novosmolinskiy\";\"main\"\n\"517926\";\"Novosmolinskij\";\"other\"\n\"517926\";\"Smolino Vtoroye\";\"other\"\n\"517926\";\"Новосмолинский\";\"other\"\n\"517947\";\"Novosil’\";\"main\"\n\"517947\";\"Novosil'\";\"ascii\"\n\"517947\";\"NOVOSIL'\";\"other\"\n\"517947\";\"Novosil\";\"other\"\n\"517947\";\"НОВОСИЛЬ\";\"other\"\n\"517947\";\"Новосиль\";\"other\"\n\"517958\";\"Novosheshminsk\";\"main\"\n\"517958\";\"Novosjesjminsk\";\"other\"\n\"517958\";\"Новошешминск\";\"other\"\n\"517959\";\"Novoshcherbinovskaya\";\"main\"\n\"517959\";\"Novosjtsjerbinovskaja\";\"other\"\n\"517959\";\"Nowoschtscherbinowskaja\";\"other\"\n\"517959\";\"Stanitsa Novo-Shcherbinovskaya\";\"other\"\n\"517959\";\"Новощербиновская\";\"other\"\n\"517963\";\"Novoshakhtinsk\";\"main\"\n\"517963\";\"Komintern\";\"other\"\n\"517963\";\"Kominternovskiy\";\"other\"\n\"517963\";\"Molotovskiy\";\"other\"\n\"517963\";\"NOVOSHAKHTINSK\";\"other\"\n\"517963\";\"Novosahtinsk\";\"other\"\n\"517963\";\"Novoŝaĥtinsk\";\"other\"\n\"517963\";\"Novošahtinsk\";\"other\"\n\"517963\";\"Nowoschachtinsk\";\"other\"\n\"517963\";\"Nowoszachtynsk\";\"other\"\n\"517963\";\"Nowoszachtyńsk\";\"other\"\n\"517963\";\"НОВОШАХТИНСК\";\"other\"\n\"517963\";\"Новошахтинск\";\"other\"\n\"517982\";\"Novosergiyevka\";\"main\"\n\"517982\";\"NOVOSERGIEVKA\";\"other\"\n\"517982\";\"Novosergeyevka\";\"other\"\n\"517982\";\"Novosergeyevskoye\";\"other\"\n\"517982\";\"Novosergijevka\";\"other\"\n\"517982\";\"НОВОСЕРГИЕВКА\";\"other\"\n\"517982\";\"Новосергиевка\";\"other\"\n\"517992\";\"Novosemeykino\";\"main\"\n\"517992\";\"NOVOSEMEJKINO\";\"other\"\n\"517992\";\"Novosemejkino\";\"other\"\n\"517992\";\"Novoye Semeykino\";\"other\"\n\"517992\";\"НОВОСЕМЕЙКИНО\";\"other\"\n\"518209\";\"Novoselitskoye\";\"main\"\n\"518209\";\"Novoseletskoye\";\"other\"\n\"518209\";\"Novoselickoe\";\"other\"\n\"518209\";\"Novoselitskoje\";\"other\"\n\"518209\";\"Новоселитское\";\"other\"\n\"518209\";\"Новоселицкое\";\"other\"\n\"518236\";\"Novorzhev\";\"main\"\n\"518236\";\"NOVORZHEV\";\"other\"\n\"518236\";\"Novorzjev\";\"other\"\n\"518236\";\"Noworshew\";\"other\"\n\"518236\";\"НОВОРЖЕВ\";\"other\"\n\"518236\";\"Новоржев\";\"other\"\n\"518246\";\"Novorudnyy\";\"main\"\n\"518246\";\"NOVORUDNYJ\";\"other\"\n\"518246\";\"Novorudnyj\";\"other\"\n\"518246\";\"НОВОРУДНЫЙ\";\"other\"\n\"518246\";\"Новорудный\";\"other\"\n\"518249\";\"Novorozhdestvenskaya\";\"main\"\n\"518249\";\"Novorozjdestvenskaja\";\"other\"\n\"518249\";\"Новорождественская\";\"other\"\n\"518255\";\"Novorossiysk\";\"main\"\n\"518255\";\"Noborosisk\";\"other\"\n\"518255\";\"Novorosijsk\";\"other\"\n\"518255\";\"Novorossiejsk\";\"other\"\n\"518255\";\"Novorossiisk\";\"other\"\n\"518255\";\"Novorossijsk\";\"other\"\n\"518255\";\"Novorossisk\";\"other\"\n\"518255\";\"Noworossiisk\";\"other\"\n\"518255\";\"Noworossijsk\";\"other\"\n\"518255\";\"Noworosyjsk\";\"other\"\n\"518255\";\"nobolosiseukeu\";\"other\"\n\"518255\";\"Νοβορωσίσκ\";\"other\"\n\"518255\";\"Новоросијск\";\"other\"\n\"518255\";\"Новороссийск\";\"other\"\n\"518255\";\"노보로시스크\";\"other\"\n\"518325\";\"Novopokrovskaya\";\"main\"\n\"518325\";\"Novopokrovskaja\";\"other\"\n\"518325\";\"Новопокровская\";\"other\"\n\"518333\";\"Novopokrovka\";\"main\"\n\"518333\";\"NOVOPOKROVKA\";\"other\"\n\"518333\";\"Novo-Pokrovskiy\";\"other\"\n\"518333\";\"Novopokrovskoye\";\"other\"\n\"518333\";\"НОВОПОКРОВКА\";\"other\"\n\"518333\";\"Новопокровка\";\"other\"\n\"518337\";\"Novopodrezkovo\";\"main\"\n\"518337\";\"Новоподрезково\";\"other\"\n\"518341\";\"Novoplatnirovskaya\";\"main\"\n\"518341\";\"Novoplatnikovskaya\";\"other\"\n\"518341\";\"Novoplatnirovskaja\";\"other\"\n\"518341\";\"Новоплатнировская\";\"other\"\n\"518344\";\"Novopistsovo\";\"main\"\n\"518344\";\"Новописцово\";\"other\"\n\"518346\";\"Novopetrovskoye\";\"main\"\n\"518346\";\"Novopetrovskoje\";\"other\"\n\"518346\";\"Новопетровское\";\"other\"\n\"518383\";\"Novopavlovsk\";\"main\"\n\"518383\";\"NOVOPAVLOVSK\";\"other\"\n\"518383\";\"Novopavloskaya\";\"other\"\n\"518383\";\"Novopavlovskaya\";\"other\"\n\"518383\";\"Novopavoskaya\";\"other\"\n\"518383\";\"НОВОПАВЛОВСК\";\"other\"\n\"518383\";\"Новопавловск\";\"other\"\n\"518418\";\"Novoorsk\";\"main\"\n\"518418\";\"Новоорск\";\"other\"\n\"518488\";\"Novonikolayevskiy\";\"main\"\n\"518488\";\"Novo-Nikolayevskaya\";\"other\"\n\"518488\";\"Novonikolajevskij\";\"other\"\n\"518488\";\"Новониколаевский\";\"other\"\n\"518540\";\"Novomyshastovskaya\";\"main\"\n\"518540\";\"Novomishastovski\";\"other\"\n\"518540\";\"Novomysjastovskaja\";\"other\"\n\"518540\";\"Nowomyschastowskaja\";\"other\"\n\"518540\";\"Новомышастовская\";\"other\"\n\"518557\";\"Novomoskovsk\";\"main\"\n\"518557\";\"Bobriki\";\"other\"\n\"518557\";\"NOVOMOSKOVSK\";\"other\"\n\"518557\";\"Nowomoskowsk\";\"other\"\n\"518557\";\"Stalinogorsk\";\"other\"\n\"518557\";\"Stalinogorsk Pervyy\";\"other\"\n\"518557\";\"Stalinogorsk Severnyy\";\"other\"\n\"518557\";\"Stalinogorsk Vtoroy\";\"other\"\n\"518557\";\"Stalinogorsk Yuzhnyy\";\"other\"\n\"518557\";\"nobomoseukobseukeu\";\"other\"\n\"518557\";\"xin mo si ke si ke\";\"other\"\n\"518557\";\"НОВОМОСКОВСК\";\"other\"\n\"518557\";\"Новомосковск\";\"other\"\n\"518557\";\"新莫斯科斯克\";\"other\"\n\"518557\";\"노보모스콥스크\";\"other\"\n\"518568\";\"Novominskaya\";\"main\"\n\"518568\";\"Novominskaja\";\"other\"\n\"518568\";\"Novominskoye\";\"other\"\n\"518568\";\"Nowominskaja\";\"other\"\n\"518568\";\"Stanitsa-Novominskaya\";\"other\"\n\"518568\";\"Новоминская\";\"other\"\n\"518585\";\"Novomikhaylovskiy\";\"main\"\n\"518585\";\"NOVOMIKHAJLOVSKIJ\";\"other\"\n\"518585\";\"Novo-Mikhaylovka\";\"other\"\n\"518585\";\"Novo-Mikhaylovskaya\";\"other\"\n\"518585\";\"Novomikhajlovskij\";\"other\"\n\"518585\";\"Novomikhaylovskoye\";\"other\"\n\"518585\";\"НОВОМИХАЙЛОВСКИЙ\";\"other\"\n\"518585\";\"Новомихайловский\";\"other\"\n\"518602\";\"Novomichurinsk\";\"main\"\n\"518602\";\"Novomikhurinsk\";\"other\"\n\"518602\";\"Novomitsjurinsk\";\"other\"\n\"518602\";\"Новомичуринск\";\"other\"\n\"518619\";\"Novaya Malykla\";\"main\"\n\"518619\";\"Nov.Malykla\";\"other\"\n\"518619\";\"Novomalykla\";\"other\"\n\"518619\";\"Нов.Малыкла\";\"other\"\n\"518619\";\"Новая Малыкла\";\"other\"\n\"518621\";\"Novomalorossiyskaya\";\"main\"\n\"518621\";\"Grazhdanskaya\";\"other\"\n\"518621\";\"Novomalorossijskaja\";\"other\"\n\"518621\";\"Novomalorossiskaya\";\"other\"\n\"518621\";\"Novomyshastovskaya\";\"other\"\n\"518621\";\"Новомалороссийская\";\"other\"\n\"518643\";\"Novoleushkovskaya\";\"main\"\n\"518643\";\"Novo-Leushkovskoye\";\"other\"\n\"518643\";\"Novoleusjkovskaja\";\"other\"\n\"518643\";\"Новолеушковская\";\"other\"\n\"518648\";\"Novolakskoye\";\"main\"\n\"518648\";\"Banay-Aul\";\"other\"\n\"518648\";\"Kishen'-Aukh\";\"other\"\n\"518648\";\"Kishen’-Aukh\";\"other\"\n\"518648\";\"Novolakskoje\";\"other\"\n\"518648\";\"Новолакское\";\"other\"\n\"518652\";\"Novolabinskaya\";\"main\"\n\"518652\";\"Novolabinskaja\";\"other\"\n\"518652\";\"Новолабинская\";\"other\"\n\"518659\";\"Novokuybyshevsk\";\"main\"\n\"518659\";\"NOVOKUJBYSHEVSK\";\"other\"\n\"518659\";\"Novo-Kuybuyshev\";\"other\"\n\"518659\";\"Novo-Kuybyshevskiy\";\"other\"\n\"518659\";\"Novokujbysjevsk\";\"other\"\n\"518659\";\"НОВОКУЙБЫШЕВСК\";\"other\"\n\"518659\";\"Новокуйбышевск\";\"other\"\n\"518682\";\"Novokubansk\";\"main\"\n\"518682\";\"Khutorok\";\"other\"\n\"518682\";\"NOVOKUBANSK\";\"other\"\n\"518682\";\"Novo-Kubanskaya\";\"other\"\n\"518682\";\"Novokubanskiy\";\"other\"\n\"518682\";\"Novokubanskoe\";\"other\"\n\"518682\";\"Novokubanskoye\";\"other\"\n\"518682\";\"НОВОКУБАНСК\";\"other\"\n\"518682\";\"Новокубанск\";\"other\"\n\"518701\";\"Novokorsunskaya\";\"main\"\n\"518701\";\"Novokorsunskaja\";\"other\"\n\"518701\";\"Новокорсунская\";\"other\"\n\"518745\";\"Novokhopërsk\";\"main\"\n\"518745\";\"Novokhopersk\";\"ascii\"\n\"518745\";\"Novokhoperk\";\"other\"\n\"518745\";\"Nowochopersk\";\"other\"\n\"518745\";\"Новохоперск\";\"other\"\n\"518745\";\"Новохопёрск\";\"other\"\n\"518764\";\"Novokayakent\";\"main\"\n\"518764\";\"Novokajakent\";\"other\"\n\"518764\";\"Новокаякент\";\"other\"\n\"518845\";\"Novogurovskiy\";\"main\"\n\"518845\";\"NOVOGUROVSKIJ\";\"other\"\n\"518845\";\"Novogurovskij\";\"other\"\n\"518845\";\"НОВОГУРОВСКИЙ\";\"other\"\n\"518851\";\"Oyskhara\";\"main\"\n\"518851\";\"New Groznyy\";\"other\"\n\"518851\";\"Novogroznenskiy\";\"other\"\n\"518851\";\"OJSKHARA\";\"other\"\n\"518851\";\"Ojskhara\";\"other\"\n\"518851\";\"Ojssungur\";\"other\"\n\"518851\";\"Oysangur\";\"other\"\n\"518851\";\"Oysungur\";\"other\"\n\"518851\";\"Oysungurskoye\";\"other\"\n\"518851\";\"ОЙСХАРА\";\"other\"\n\"518897\";\"Novogagatli\";\"main\"\n\"518897\";\"Aksay\";\"other\"\n\"518897\";\"Novogagatlinskoe\";\"other\"\n\"518897\";\"Novogagatlinskoye\";\"other\"\n\"518897\";\"Новогагатли\";\"other\"\n\"518897\";\"Новогагатлинское\";\"other\"\n\"518907\";\"Novodzhereliyevskaya\";\"main\"\n\"518907\";\"Novaya Dzhereliyevskaya\";\"other\"\n\"518907\";\"Novodzherelievskaya\";\"other\"\n\"518907\";\"Novodzjerelijevskaja\";\"other\"\n\"518907\";\"Novozhareliyevskaya\";\"other\"\n\"518907\";\"Новоджерелиевская\";\"other\"\n\"518909\";\"Novodvinsk\";\"main\"\n\"518909\";\"Mechkastroy\";\"other\"\n\"518909\";\"NOVODVINSK\";\"other\"\n\"518909\";\"Nowodwinsk\";\"other\"\n\"518909\";\"Pervomayskiy\";\"other\"\n\"518909\";\"Voroshilovskiy\";\"other\"\n\"518909\";\"nobodeubinseukeu\";\"other\"\n\"518909\";\"novu~odovu~insuku\";\"other\"\n\"518909\";\"НОВОДВИНСК\";\"other\"\n\"518909\";\"Новодвинск\";\"other\"\n\"518909\";\"ノヴォドヴィンスク\";\"other\"\n\"518909\";\"노보드빈스크\";\"other\"\n\"518912\";\"Novodugino\";\"main\"\n\"518912\";\"NOVODUGINO\";\"other\"\n\"518912\";\"Novoduginskaya\";\"other\"\n\"518912\";\"НОВОДУГИНО\";\"other\"\n\"518912\";\"Новодугино\";\"other\"\n\"518928\";\"Novodmitriyevskaya\";\"main\"\n\"518928\";\"Novaya Dmitriyevskaya\";\"other\"\n\"518928\";\"Novodmitrijevskaja\";\"other\"\n\"518928\";\"Новодмитриевская\";\"other\"\n\"518944\";\"Novoderevyankovskaya\";\"main\"\n\"518944\";\"Novoderevjankovskaja\";\"other\"\n\"518944\";\"Новодеревянковская\";\"other\"\n\"518970\";\"Novocherkassk\";\"main\"\n\"518970\";\"NOVOCHERKASSK\";\"other\"\n\"518970\";\"Novocerkask\";\"other\"\n\"518970\";\"Novocerkassk\";\"other\"\n\"518970\";\"Novocherkask\";\"other\"\n\"518970\";\"Novotcherkassk\";\"other\"\n\"518970\";\"Novotjerkassk\";\"other\"\n\"518970\";\"Novotserkassk\";\"other\"\n\"518970\";\"Novotšerkassk\";\"other\"\n\"518970\";\"Novoĉerkassk\";\"other\"\n\"518970\";\"Novočerkask\";\"other\"\n\"518970\";\"Nowoczerkask\";\"other\"\n\"518970\";\"Nowotscherkask\";\"other\"\n\"518970\";\"Nowotscherkassk\";\"other\"\n\"518970\";\"НОВОЧЕРКАССК\";\"other\"\n\"518970\";\"Новочеркаск\";\"other\"\n\"518970\";\"Новочеркасск\";\"other\"\n\"518972\";\"Novocheremshansk\";\"main\"\n\"518972\";\"NOVOCHEREMSHANSK\";\"other\"\n\"518972\";\"Novotsjeremsjansk\";\"other\"\n\"518972\";\"Stantsiya Salavan\";\"other\"\n\"518972\";\"Staryy Salavan\";\"other\"\n\"518972\";\"Staryy Salaven\";\"other\"\n\"518972\";\"НОВОЧЕРЕМШАНСК\";\"other\"\n\"518972\";\"Новочеремшанск\";\"other\"\n\"518976\";\"Novocheboksarsk\";\"main\"\n\"518976\";\"Cene Shupashkar\";\"other\"\n\"518976\";\"NOVOCHEBOKSARSK\";\"other\"\n\"518976\";\"Novoceboksarsk\";\"other\"\n\"518976\";\"Novotseboksarsk\";\"other\"\n\"518976\";\"Novotsjeboksarsk\";\"other\"\n\"518976\";\"Novotšeboksarsk\";\"other\"\n\"518976\";\"Novoĉeboksarsk\";\"other\"\n\"518976\";\"Novočeboksarsk\";\"other\"\n\"518976\";\"Nowotscheboksarsk\";\"other\"\n\"518976\";\"Soenoe Supaskar\";\"other\"\n\"518976\";\"nobochebogsaleuseukeu\";\"other\"\n\"518976\";\"novu~ochebokusarusuku\";\"other\"\n\"518976\";\"Çĕнĕ Шупашкар\";\"other\"\n\"518976\";\"Śönö Šupaškar\";\"other\"\n\"518976\";\"НОВОЧЕБОКСАРСК\";\"other\"\n\"518976\";\"Новочебоксарск\";\"other\"\n\"518976\";\"ノヴォチェボクサルスク\";\"other\"\n\"518976\";\"노보체복사르스크\";\"other\"\n\"519005\";\"Novoblagodarnoye\";\"main\"\n\"519005\";\"Novoblagodarnoje\";\"other\"\n\"519005\";\"Новоблагодарное\";\"other\"\n\"519015\";\"Novobeysugskaya\";\"main\"\n\"519015\";\"Beysugskaya\";\"other\"\n\"519015\";\"Novobejsugskaja\";\"other\"\n\"519015\";\"Новобейсугская\";\"other\"\n\"519016\";\"Novobessergenovka\";\"main\"\n\"519016\";\"Novobessergenevka\";\"other\"\n\"519016\";\"Новобессергеневка\";\"other\"\n\"519016\";\"Новобессергеновка\";\"other\"\n\"519027\";\"Novobelokatay\";\"main\"\n\"519027\";\"Novobelokataj\";\"other\"\n\"519027\";\"Novyy Belokatay\";\"other\"\n\"519027\";\"Новобелокатай\";\"other\"\n\"519033\";\"Novobataysk\";\"main\"\n\"519033\";\"Novobatajsk\";\"other\"\n\"519033\";\"Новобатайск\";\"other\"\n\"519062\";\"Novoanninskiy\";\"main\"\n\"519062\";\"Annenskiy\";\"other\"\n\"519062\";\"NOVOANNINSKIJ\";\"other\"\n\"519062\";\"Novaya Annenskaya\";\"other\"\n\"519062\";\"Novo-Annenskiy\";\"other\"\n\"519062\";\"Novoannenka\";\"other\"\n\"519062\";\"Novoannenskaya\";\"other\"\n\"519062\";\"Novoanninskij\";\"other\"\n\"519062\";\"НОВОАННИНСКИЙ\";\"other\"\n\"519062\";\"Новоаннинский\";\"other\"\n\"519085\";\"Novoalekseyevskaya\";\"main\"\n\"519085\";\"Novoaleksejevskaja\";\"other\"\n\"519085\";\"Новоалексеевская\";\"other\"\n\"519106\";\"Novoaleksandrovsk\";\"main\"\n\"519106\";\"NOVOALEKSANDROVSK\";\"other\"\n\"519106\";\"Novoaleksandrovskaya\";\"other\"\n\"519106\";\"Nowo Aleksandrowskaja\";\"other\"\n\"519106\";\"Nowo-Alexandrowskaja\";\"other\"\n\"519106\";\"НОВОАЛЕКСАНДРОВСК\";\"other\"\n\"519106\";\"Новоалександровск\";\"other\"\n\"519168\";\"Novki\";\"main\"\n\"519168\";\"NOVKI\";\"other\"\n\"519168\";\"Noviki\";\"other\"\n\"519168\";\"НОВКИ\";\"other\"\n\"519168\";\"Новки\";\"other\"\n\"519336\";\"Velikiy Novgorod\";\"main\"\n\"519336\";\"Holmgardur\";\"other\"\n\"519336\";\"Hólmgarður\";\"other\"\n\"519336\";\"Naugard\";\"other\"\n\"519336\";\"Naugardas\";\"other\"\n\"519336\";\"Nobnkoront\";\"other\"\n\"519336\";\"Nov\\\" Grad\\\"\";\"other\"\n\"519336\";\"Nov\\\"grad\\\"\";\"other\"\n\"519336\";\"Novgorod\";\"other\"\n\"519336\";\"Novogardia Magna\";\"other\"\n\"519336\";\"Nowgorod\";\"other\"\n\"519336\";\"Nowogrod Wielki\";\"other\"\n\"519336\";\"Nowogród Wielki\";\"other\"\n\"519336\";\"Nóvgorod\";\"other\"\n\"519336\";\"Veliki Novgorod\";\"other\"\n\"519336\";\"Velikij Novgorod\";\"other\"\n\"519336\";\"Weliki Nowgorod\";\"other\"\n\"519336\";\"da nuo fu ge luo de\";\"other\"\n\"519336\";\"nobeugolodeu\";\"other\"\n\"519336\";\"novgorodi\";\"other\"\n\"519336\";\"novugorodo\";\"other\"\n\"519336\";\"nwbgwrwd\";\"other\"\n\"519336\";\"Νόβγκοροντ\";\"other\"\n\"519336\";\"Велики Новгород\";\"other\"\n\"519336\";\"Великий Новгород\";\"other\"\n\"519336\";\"Новгород\";\"other\"\n\"519336\";\"Новъ Градъ\";\"other\"\n\"519336\";\"Новъградъ\";\"other\"\n\"519336\";\"נובגורוד\";\"other\"\n\"519336\";\"ნოვგოროდი\";\"other\"\n\"519336\";\"ノヴゴロド\";\"other\"\n\"519336\";\"大诺夫哥罗德\";\"other\"\n\"519336\";\"노브고로드\";\"other\"\n\"519447\";\"Novaya Usman’\";\"main\"\n\"519447\";\"Novaya Usman'\";\"ascii\"\n\"519447\";\"Nov.Usman'\";\"other\"\n\"519447\";\"Novaja Usman'\";\"other\"\n\"519447\";\"Novo-Usman'\";\"other\"\n\"519447\";\"Novo-Usman’\";\"other\"\n\"519447\";\"Sobakino\";\"other\"\n\"519447\";\"Usman\";\"other\"\n\"519447\";\"Usman' Sobakino\";\"other\"\n\"519447\";\"Usman’ Sobakino\";\"other\"\n\"519447\";\"Нов.Усмань\";\"other\"\n\"519447\";\"Новая Усмань\";\"other\"\n\"519473\";\"Novaya Tavolzhanka\";\"main\"\n\"519473\";\"Nov.Tavolzhanka\";\"other\"\n\"519473\";\"Novotavolzhanka\";\"other\"\n\"519473\";\"Нов.Таволжанка\";\"other\"\n\"519473\";\"Новая Таволжанка\";\"other\"\n\"519611\";\"Novaya Mayna\";\"main\"\n\"519611\";\"Novaja Majna\";\"other\"\n\"519611\";\"Новая Майна\";\"other\"\n\"519621\";\"Novaya Lyada\";\"main\"\n\"519621\";\"Novaja Ljada\";\"other\"\n\"519621\";\"Новая Ляда\";\"other\"\n\"519630\";\"Novaya Ladoga\";\"main\"\n\"519630\";\"NOVAJA LADOGA\";\"other\"\n\"519630\";\"Novaja Ladoga\";\"other\"\n\"519630\";\"Nowoja-Ladoga\";\"other\"\n\"519630\";\"НОВАЯ ЛАДОГА\";\"other\"\n\"519630\";\"Новая Ладога\";\"other\"\n\"519777\";\"Novaya Chigla\";\"main\"\n\"519777\";\"Nov.Chigla\";\"other\"\n\"519777\";\"Nowo-Tschigla\";\"other\"\n\"519777\";\"Нов.Чигла\";\"other\"\n\"519777\";\"Новая Чигла\";\"other\"\n\"520041\";\"Nolinsk\";\"main\"\n\"520041\";\"Molotovsk\";\"other\"\n\"520041\";\"NOLINSK\";\"other\"\n\"520041\";\"НОЛИНСК\";\"other\"\n\"520041\";\"Нолинск\";\"other\"\n\"520065\";\"Nogir\";\"main\"\n\"520065\";\"Ногир\";\"other\"\n\"520068\";\"Noginsk\";\"main\"\n\"520068\";\"NOGINSK\";\"other\"\n\"520068\";\"Nogińsk\";\"other\"\n\"520068\";\"НОГИНСК\";\"other\"\n\"520068\";\"Ногинск\";\"other\"\n\"520278\";\"Nizhnepavlovka\";\"main\"\n\"520278\";\"Nizhne-Pavlovskaya\";\"other\"\n\"520278\";\"Nizhnjaja Pavlovka\";\"other\"\n\"520278\";\"Nizhnyaya Pavlovka\";\"other\"\n\"520278\";\"Pavlovskaya\";\"other\"\n\"520278\";\"Нижнепавловка\";\"other\"\n\"520278\";\"Нижняя Павловка\";\"other\"\n\"520318\";\"Nizhnyaya Maktama\";\"main\"\n\"520318\";\"Nizjnjaja Maktama\";\"other\"\n\"520318\";\"Нижняя Мактама\";\"other\"\n\"520473\";\"Nizhniy Ufaley\";\"main\"\n\"520473\";\"Nizjnij Ufalej\";\"other\"\n\"520473\";\"Ufalei\";\"other\"\n\"520473\";\"Ufaley\";\"other\"\n\"520473\";\"Нижний Уфалей\";\"other\"\n\"520494\";\"Nizhniy Tagil\";\"main\"\n\"520494\";\"Nizhne-Tagil'skiy\";\"other\"\n\"520494\";\"Nizhne-Tagil’skiy\";\"other\"\n\"520494\";\"Nizhni Tagil\";\"other\"\n\"520494\";\"Nizhnii Tagil\";\"other\"\n\"520494\";\"Nizjnij Tagil\";\"other\"\n\"520494\";\"Нижний Тагил\";\"other\"\n\"520552\";\"Nizhniy Odes\";\"main\"\n\"520552\";\"NIZH.ODES\";\"other\"\n\"520552\";\"НИЖ.ОДЕС\";\"other\"\n\"520552\";\"Нижний Одес\";\"other\"\n\"520555\";\"Nizhniy Novgorod\";\"main\"\n\"520555\";\"Gor'kij\";\"other\"\n\"520555\";\"Gor'kiy\";\"other\"\n\"520555\";\"Gorkey\";\"other\"\n\"520555\";\"Gorki\";\"other\"\n\"520555\";\"Gorkii\";\"other\"\n\"520555\";\"Gorky\";\"other\"\n\"520555\";\"Nijni Novgorod\";\"other\"\n\"520555\";\"Nijnii Novgorod\";\"other\"\n\"520555\";\"Nishni-Nowgorod\";\"other\"\n\"520555\";\"Nishnii Nowgorod\";\"other\"\n\"520555\";\"Nishnij Nowgorod\";\"other\"\n\"520555\";\"Nizhni Novgorod\";\"other\"\n\"520555\";\"Nizhnii Novgorod\";\"other\"\n\"520555\";\"Nizhnij Novgorod\";\"other\"\n\"520555\";\"Nizjnij Novgorod\";\"other\"\n\"520555\";\"Niznij Nowgorod\";\"other\"\n\"520555\";\"Nižnij Nowgorod\";\"other\"\n\"520555\";\"Горький\";\"other\"\n\"520555\";\"Нижний Новгород\";\"other\"\n\"520564\";\"Nizhniy Mamon\";\"main\"\n\"520564\";\"Nizjnij Mamon\";\"other\"\n\"520564\";\"Novoe Mamon\";\"other\"\n\"520564\";\"Нижний Мамон\";\"other\"\n\"520574\";\"Nizhniy Lomov\";\"main\"\n\"520574\";\"NIZH.LOMOV\";\"other\"\n\"520574\";\"Nizhni Lamov\";\"other\"\n\"520574\";\"НИЖ.ЛОМОВ\";\"other\"\n\"520574\";\"Нижний Ломов\";\"other\"\n\"520599\";\"Nizhniy Kislyay\";\"main\"\n\"520599\";\"NIZHNIJ KISLJAJ\";\"other\"\n\"520599\";\"Nizjnij Kisljaj\";\"other\"\n\"520599\";\"НИЖНИЙ КИСЛЯЙ\";\"other\"\n\"520599\";\"Нижний Кисляй\";\"other\"\n\"520642\";\"Nizhniye Vyazovyye\";\"main\"\n\"520642\";\"Nizhne-Vyazovyye\";\"other\"\n\"520642\";\"Nizhneye Vyazov'ye\";\"other\"\n\"520642\";\"Nizhneye Vyazov’ye\";\"other\"\n\"520642\";\"Nizjnije Vjazovye\";\"other\"\n\"520642\";\"Нижние Вязовые\";\"other\"\n\"520667\";\"Nizhniye Sergi\";\"main\"\n\"520667\";\"Nizjnije Sergi\";\"other\"\n\"520667\";\"Нижние Серги\";\"other\"\n\"520769\";\"Nizhniye Achaluki\";\"main\"\n\"520769\";\"Nizhne-Atsylyk\";\"other\"\n\"520769\";\"Nizhnie Achaluki\";\"other\"\n\"520769\";\"Nizhniy Atsylyk\";\"other\"\n\"520769\";\"Nizjnije Atsjaluki\";\"other\"\n\"520769\";\"Нижние Ачалуки\";\"other\"\n\"520775\";\"Nizhniy Dzhengutay\";\"main\"\n\"520775\";\"Nizjnij Dzjengutaj\";\"other\"\n\"520775\";\"Нижний Дженгутай\";\"other\"\n\"520783\";\"Nizhniy Chir\";\"main\"\n\"520783\";\"Churki\";\"other\"\n\"520783\";\"NIZH.CHIR\";\"other\"\n\"520783\";\"Nishne-Tschirskaja\";\"other\"\n\"520783\";\"Nizhne-Chirskaya\";\"other\"\n\"520783\";\"НИЖ.ЧИР\";\"other\"\n\"520783\";\"Нижний Чир\";\"other\"\n\"520784\";\"Nizhniy Cherek\";\"main\"\n\"520784\";\"Nizjnij Tsjerek\";\"other\"\n\"520784\";\"Нижний Черек\";\"other\"\n\"520798\";\"Nizhniy Baskunchak\";\"main\"\n\"520798\";\"NIZH.BASKUNCHAK\";\"other\"\n\"520798\";\"Nizhni Baskunchak\";\"other\"\n\"520798\";\"НИЖ.БАСКУНЧАК\";\"other\"\n\"520798\";\"Нижний Баскунчак\";\"other\"\n\"520806\";\"Nizhniy Arkhyz\";\"main\"\n\"520806\";\"Nizjnij Arkhyz\";\"other\"\n\"520806\";\"Zelenchuk\";\"other\"\n\"520806\";\"Нижний Архыз\";\"other\"\n\"520955\";\"Nizhneye Kazanishche\";\"main\"\n\"520955\";\"Nizhnee-Kazanishhe\";\"other\"\n\"520955\";\"Nizhniye Kazanishche\";\"other\"\n\"520955\";\"Nizhniye Kazanishchi\";\"other\"\n\"520955\";\"Nizjneje-Kazanisjtsje\";\"other\"\n\"520955\";\"Нижнее Казанище\";\"other\"\n\"520955\";\"Нижнее-Казанище\";\"other\"\n\"521031\";\"Nizhnetroitskiy\";\"main\"\n\"521031\";\"NIZHNETROICKIJ\";\"other\"\n\"521031\";\"Nizhne Troitskiy Zavod\";\"other\"\n\"521031\";\"Nizjnetroitskij\";\"other\"\n\"521031\";\"НИЖНЕТРОИЦКИЙ\";\"other\"\n\"521031\";\"Нижнетроитский\";\"other\"\n\"521118\";\"Nizhnekamsk\";\"main\"\n\"521118\";\"Anat Kama\";\"other\"\n\"521118\";\"NIZHNEKAMSK\";\"other\"\n\"521118\";\"Nijnekamsk\";\"other\"\n\"521118\";\"Nischnekamsk\";\"other\"\n\"521118\";\"Nizhnekamskiy\";\"other\"\n\"521118\";\"Nizjnekamsk\";\"other\"\n\"521118\";\"Niznekamsk\";\"other\"\n\"521118\";\"Nizniekamsk\";\"other\"\n\"521118\";\"Niĵnekamsk\";\"other\"\n\"521118\";\"Niżniekamsk\";\"other\"\n\"521118\";\"Nižnekamsk\";\"other\"\n\"521118\";\"Tuebaen Kama\";\"other\"\n\"521118\";\"Tübän Kama\";\"other\"\n\"521118\";\"nijeunekamseukeu\";\"other\"\n\"521118\";\"Анат Кама\";\"other\"\n\"521118\";\"НИЖНЕКАМСК\";\"other\"\n\"521118\";\"Нижнекамск\";\"other\"\n\"521118\";\"니즈네캄스크\";\"other\"\n\"521123\";\"Nizhneivkino\";\"main\"\n\"521123\";\"NIZHNEIVKINO\";\"other\"\n\"521123\";\"Nizhneye Ivkino\";\"other\"\n\"521123\";\"Nizjneivkino\";\"other\"\n\"521123\";\"НИЖНЕИВКИНО\";\"other\"\n\"521123\";\"Нижнеивкино\";\"other\"\n\"521148\";\"Nizhnedevitsk\";\"main\"\n\"521148\";\"Nishnedewizk\";\"other\"\n\"521148\";\"Nizhnedevitsic\";\"other\"\n\"521148\";\"Nizjnedevitsk\";\"other\"\n\"521148\";\"Нижнедевицк\";\"other\"\n\"521316\";\"Niny\";\"main\"\n\"521316\";\"Нины\";\"other\"\n\"521773\";\"Nikol’sk\";\"main\"\n\"521773\";\"Nikol'sk\";\"ascii\"\n\"521773\";\"Никольск\";\"other\"\n\"521776\";\"Nikol’sk\";\"main\"\n\"521776\";\"Nikol'sk\";\"ascii\"\n\"521776\";\"Nikol'skaya Pestravka\";\"other\"\n\"521776\";\"Nikolsk\";\"other\"\n\"521776\";\"Nikol’skaya Pestravka\";\"other\"\n\"521776\";\"Никольск\";\"other\"\n\"521807\";\"Nikologory\";\"main\"\n\"521807\";\"NIKOLOGORY\";\"other\"\n\"521807\";\"НИКОЛОГОРЫ\";\"other\"\n\"521807\";\"Никологоры\";\"other\"\n\"521814\";\"Nikolo-Berëzovka\";\"main\"\n\"521814\";\"Nikolo-Berezovka\";\"ascii\"\n\"521814\";\"Nikolo-Berezovskoye\";\"other\"\n\"521814\";\"Николо-Березовка\";\"other\"\n\"521821\";\"Nikolina Gora\";\"main\"\n\"521821\";\"Николина Гора\";\"other\"\n\"521870\";\"Nikolayevskaya\";\"main\"\n\"521870\";\"Nikolajevskaja\";\"other\"\n\"521870\";\"Николаевская\";\"other\"\n\"521874\";\"Nikolayevsk\";\"main\"\n\"521874\";\"NIKOLAEVSK\";\"other\"\n\"521874\";\"Nikolaevsk\";\"other\"\n\"521874\";\"Nikolaevskaya\";\"other\"\n\"521874\";\"Nikolaevski\";\"other\"\n\"521874\";\"Nikolajevsk\";\"other\"\n\"521874\";\"Nikolajevska\";\"other\"\n\"521874\";\"Nikolayevka\";\"other\"\n\"521874\";\"Nikolayevskaya\";\"other\"\n\"521874\";\"Nikolayevskiy\";\"other\"\n\"521874\";\"НИКОЛАЕВСК\";\"other\"\n\"521874\";\"Николаевск\";\"other\"\n\"521931\";\"Nikolayevka\";\"main\"\n\"521931\";\"NIKOLAEVKA\";\"other\"\n\"521931\";\"Nikolajevka\";\"other\"\n\"521931\";\"НИКОЛАЕВКА\";\"other\"\n\"521931\";\"Николаевка\";\"other\"\n\"521966\";\"Nikolayevka\";\"main\"\n\"521966\";\"NIKOLAEVKA\";\"other\"\n\"521966\";\"Nikolajevka\";\"other\"\n\"521966\";\"НИКОЛАЕВКА\";\"other\"\n\"521966\";\"Николаевка\";\"other\"\n\"522080\";\"Nikolo-Lenivets\";\"main\"\n\"522080\";\"Nikola Lenivets\";\"other\"\n\"522080\";\"Nikola-Lennvets\";\"other\"\n\"522080\";\"Николо-Ленивец\";\"other\"\n\"522260\";\"Nikel’\";\"main\"\n\"522260\";\"Nikel'\";\"ascii\"\n\"522260\";\"Kolosjoki\";\"other\"\n\"522260\";\"Kolosjokki\";\"other\"\n\"522260\";\"NIKEL'\";\"other\"\n\"522260\";\"Nikel\";\"other\"\n\"522260\";\"НИКЕЛЬ\";\"other\"\n\"522260\";\"Никель\";\"other\"\n\"522301\";\"Nezlobnaya\";\"main\"\n\"522301\";\"Nezlobnaja\";\"other\"\n\"522301\";\"Незлобная\";\"other\"\n\"522312\";\"Nezhinka\";\"main\"\n\"522312\";\"Nezhenka\";\"other\"\n\"522312\";\"Nezjinka\";\"other\"\n\"522312\";\"Нежинка\";\"other\"\n\"522353\";\"Neya\";\"main\"\n\"522353\";\"Neja\";\"other\"\n\"522353\";\"Нея\";\"other\"\n\"522377\";\"Nevinnomyssk\";\"main\"\n\"522377\";\"NEVINNOMYSSK\";\"other\"\n\"522377\";\"Nevinnomissk\";\"other\"\n\"522377\";\"Nevinnomossk\";\"other\"\n\"522377\";\"Nevinnomyskaya\";\"other\"\n\"522377\";\"Nevinnomysskaya\";\"other\"\n\"522377\";\"Nevinnomõssk\";\"other\"\n\"522377\";\"Nevinnonyssk\";\"other\"\n\"522377\";\"Nevinomysk\";\"other\"\n\"522377\";\"Newinnomyssaja\";\"other\"\n\"522377\";\"Newinnomyssk\";\"other\"\n\"522377\";\"Newinnomysskaja\";\"other\"\n\"522377\";\"Niewinnomysk\";\"other\"\n\"522377\";\"nebinomiseukeu\";\"other\"\n\"522377\";\"nevu~in'nomuisuku\";\"other\"\n\"522377\";\"НЕВИННОМЫССК\";\"other\"\n\"522377\";\"Невинномысск\";\"other\"\n\"522377\";\"ネヴィンノムイスク\";\"other\"\n\"522377\";\"네비노미스크\";\"other\"\n\"522402\";\"Neverkino\";\"main\"\n\"522402\";\"Неверкино\";\"other\"\n\"522410\";\"Nevel’\";\"main\"\n\"522410\";\"Nevel'\";\"ascii\"\n\"522410\";\"NEVEL'\";\"other\"\n\"522410\";\"Nevel\";\"other\"\n\"522410\";\"Newel\";\"other\"\n\"522410\";\"НЕВЕЛЬ\";\"other\"\n\"522410\";\"Невель\";\"other\"\n\"522470\";\"Nesterovskaya\";\"main\"\n\"522470\";\"Nesterovskaja\";\"other\"\n\"522470\";\"Nesterowskaja\";\"other\"\n\"522470\";\"Нестеровская\";\"other\"\n\"522508\";\"Nesterov\";\"main\"\n\"522508\";\"Ebenrode\";\"other\"\n\"522508\";\"NESTEROV\";\"other\"\n\"522508\";\"Nesterovas\";\"other\"\n\"522508\";\"Nesterow\";\"other\"\n\"522508\";\"Niestierow\";\"other\"\n\"522508\";\"Shtallupenen\";\"other\"\n\"522508\";\"Shtallupënen\";\"other\"\n\"522508\";\"Stallupenen\";\"other\"\n\"522508\";\"Stallupoenen\";\"other\"\n\"522508\";\"Stallupönen\";\"other\"\n\"522508\";\"НЕСТЕРОВ\";\"other\"\n\"522508\";\"Нестеров\";\"other\"\n\"522580\";\"Nerl’\";\"main\"\n\"522580\";\"Nerl'\";\"ascii\"\n\"522580\";\"NERL'\";\"other\"\n\"522580\";\"Nerl\";\"other\"\n\"522580\";\"НЕРЛЬ\";\"other\"\n\"522580\";\"Нерль\";\"other\"\n\"522594\";\"Nerekhta\";\"main\"\n\"522594\";\"NEREKHTA\";\"other\"\n\"522594\";\"НЕРЕХТА\";\"other\"\n\"522730\";\"Nemchinovka\";\"main\"\n\"522730\";\"NEMCHINOVKA\";\"other\"\n\"522730\";\"Nemchinovo\";\"other\"\n\"522730\";\"Nemtsjinovka\";\"other\"\n\"522730\";\"НЕМЧИНОВКА\";\"other\"\n\"522730\";\"Немчиновка\";\"other\"\n\"522742\";\"Neman\";\"main\"\n\"522742\";\"NEMAN\";\"other\"\n\"522742\";\"Nieman\";\"other\"\n\"522742\";\"Ragaine\";\"other\"\n\"522742\";\"Ragainė\";\"other\"\n\"522742\";\"Ragnit\";\"other\"\n\"522742\";\"neman\";\"other\"\n\"522742\";\"НЕМАН\";\"other\"\n\"522742\";\"Неман\";\"other\"\n\"522742\";\"네만\";\"other\"\n\"522745\";\"Nema\";\"main\"\n\"522745\";\"NEMA\";\"other\"\n\"522745\";\"НЕМА\";\"other\"\n\"522745\";\"Нема\";\"other\"\n\"522775\";\"Nelidovo\";\"main\"\n\"522775\";\"NELIDOVO\";\"other\"\n\"522775\";\"Nelidowo\";\"other\"\n\"522775\";\"Poselok Delidovo\";\"other\"\n\"522775\";\"Poselok Nelidovo\";\"other\"\n\"522775\";\"Posëlok Delidovo\";\"other\"\n\"522775\";\"Posëlok Nelidovo\";\"other\"\n\"522775\";\"НЕЛИДОВО\";\"other\"\n\"522775\";\"Нелидово\";\"other\"\n\"522799\";\"Nekrasovskoye\";\"main\"\n\"522799\";\"Bol'shiye Soli\";\"other\"\n\"522799\";\"Bol’shiye Soli\";\"other\"\n\"522799\";\"NEKRASOVSKOE\";\"other\"\n\"522799\";\"Nekrasovskiy\";\"other\"\n\"522799\";\"Nekrasovskoje\";\"other\"\n\"522799\";\"НЕКРАСОВСКОЕ\";\"other\"\n\"522803\";\"Nekrasovskiy\";\"main\"\n\"522803\";\"NEKRASOVSKIJ\";\"other\"\n\"522803\";\"Nekrasovskij\";\"other\"\n\"522803\";\"НЕКРАСОВСКИЙ\";\"other\"\n\"522803\";\"Некрасовский\";\"other\"\n\"522810\";\"Nekrasovskaya\";\"main\"\n\"522810\";\"Nekrasovskaja\";\"other\"\n\"522810\";\"Некрасовская\";\"other\"\n\"522839\";\"Nekrasovka\";\"main\"\n\"522839\";\"Некрасовка\";\"other\"\n\"522871\";\"Neklyudovo\";\"main\"\n\"522871\";\"NEKLJUDOVO\";\"other\"\n\"522871\";\"Nekljudovo\";\"other\"\n\"522871\";\"НЕКЛЮДОВО\";\"other\"\n\"522871\";\"Неклюдово\";\"other\"\n\"522902\";\"Nekhayevskiy\";\"main\"\n\"522902\";\"NEKHAEVSKIJ\";\"other\"\n\"522902\";\"Nekhajevskij\";\"other\"\n\"522902\";\"Nekhayevskaya\";\"other\"\n\"522902\";\"НЕХАЕВСКИЙ\";\"other\"\n\"522902\";\"Нехаевский\";\"other\"\n\"522941\";\"Neftekumsk\";\"main\"\n\"522941\";\"Neftekumsk Urozhanoye\";\"other\"\n\"522941\";\"Нефтекумск\";\"other\"\n\"522942\";\"Neftekamsk\";\"main\"\n\"522942\";\"Kasevo\";\"other\"\n\"522942\";\"Kaseyevo\";\"other\"\n\"522942\";\"NEFTEKAMSK\";\"other\"\n\"522942\";\"Neftekama\";\"other\"\n\"522942\";\"nebtekamseukeu\";\"other\"\n\"522942\";\"НЕФТЕКАМСК\";\"other\"\n\"522942\";\"Нефтекамск\";\"other\"\n\"522942\";\"넵테캄스크\";\"other\"\n\"522945\";\"Neftegorsk\";\"main\"\n\"522945\";\"NEFTEGORSK\";\"other\"\n\"522945\";\"НЕФТЕГОРСК\";\"other\"\n\"522945\";\"Нефтегорск\";\"other\"\n\"522946\";\"Neftegorsk\";\"main\"\n\"522946\";\"NEFTEGORSK\";\"other\"\n\"522946\";\"Neftegorskaya\";\"other\"\n\"522946\";\"НЕФТЕГОРСК\";\"other\"\n\"522946\";\"Нефтегорск\";\"other\"\n\"523048\";\"Nebug\";\"main\"\n\"523048\";\"Nebugskaya\";\"other\"\n\"523048\";\"Nebugskiy\";\"other\"\n\"523048\";\"Небуг\";\"other\"\n\"523051\";\"Nebolchi\";\"main\"\n\"523051\";\"NEBOLCHI\";\"other\"\n\"523051\";\"Neboltsji\";\"other\"\n\"523051\";\"НЕБОЛЧИ\";\"other\"\n\"523051\";\"Неболчи\";\"other\"\n\"523064\";\"Nazran’\";\"main\"\n\"523064\";\"Nazran'\";\"ascii\"\n\"523064\";\"Imeni Kost-Khetagurova\";\"other\"\n\"523064\";\"Kazran\";\"other\"\n\"523064\";\"Kosta-Khetagurovo\";\"other\"\n\"523064\";\"NAZRAN'\";\"other\"\n\"523064\";\"Nasran\";\"other\"\n\"523064\";\"Nazran\";\"other\"\n\"523064\";\"Nazrane\";\"other\"\n\"523064\";\"Nazranj\";\"other\"\n\"523064\";\"Nazranė\";\"other\"\n\"523064\";\"Nazrań\";\"other\"\n\"523064\";\"Poselok Nazran'\";\"other\"\n\"523064\";\"Posëlok Nazran’\";\"other\"\n\"523064\";\"najeulan\";\"other\"\n\"523064\";\"НАЗРАНЬ\";\"other\"\n\"523064\";\"Назрань\";\"other\"\n\"523064\";\"나즈란\";\"other\"\n\"523161\";\"Navoloki\";\"main\"\n\"523161\";\"NAVOLOKI\";\"other\"\n\"523161\";\"Novoloki\";\"other\"\n\"523161\";\"НАВОЛОКИ\";\"other\"\n\"523161\";\"Наволоки\";\"other\"\n\"523186\";\"Navlya\";\"main\"\n\"523186\";\"NAVLJA\";\"other\"\n\"523186\";\"Navlja\";\"other\"\n\"523186\";\"Novlya\";\"other\"\n\"523186\";\"НАВЛЯ\";\"other\"\n\"523186\";\"Навля\";\"other\"\n\"523198\";\"Navashino\";\"main\"\n\"523198\";\"NAVASHINO\";\"other\"\n\"523198\";\"Navasjino\";\"other\"\n\"523198\";\"НАВАШИНО\";\"other\"\n\"523206\";\"Naurskaya\";\"main\"\n\"523206\";\"Naurskaja\";\"other\"\n\"523206\";\"Nauskaya\";\"other\"\n\"523206\";\"Наурская\";\"other\"\n\"523210\";\"Alpatovo\";\"main\"\n\"523210\";\"Alpatov\";\"other\"\n\"523210\";\"Naurskiy\";\"other\"\n\"523210\";\"Алпатово\";\"other\"\n\"523269\";\"Natyrbovo\";\"main\"\n\"523269\";\"Натырбово\";\"other\"\n\"523382\";\"Naryshkino\";\"main\"\n\"523382\";\"Bolshoye Naryschkino\";\"other\"\n\"523382\";\"NARYSHKINO\";\"other\"\n\"523382\";\"Naryschkino\";\"other\"\n\"523382\";\"Narysjkino\";\"other\"\n\"523382\";\"НАРЫШКИНО\";\"other\"\n\"523382\";\"Нарышкино\";\"other\"\n\"523392\";\"Nar'yan-Mar\";\"main\"\n\"523392\";\"Dzerzhinskiy\";\"other\"\n\"523392\";\"NAR'JAN-MAR\";\"other\"\n\"523392\";\"Narjan Mar\";\"other\"\n\"523392\";\"Narjan-Mar\";\"other\"\n\"523392\";\"Naryan-Mar\";\"other\"\n\"523392\";\"naliyanmaleu\";\"other\"\n\"523392\";\"nar'jan-mar\";\"other\"\n\"523392\";\"НАРЬЯН-МАР\";\"other\"\n\"523392\";\"Нарьян-Мар\";\"other\"\n\"523392\";\"נריין-מאר\";\"other\"\n\"523392\";\"ナリヤン・マル\";\"other\"\n\"523392\";\"나리얀마르\";\"other\"\n\"523405\";\"Nartkala\";\"main\"\n\"523405\";\"Dokshukino\";\"other\"\n\"523405\";\"Doshukino\";\"other\"\n\"523405\";\"Нарткала\";\"other\"\n\"523408\";\"Nartan\";\"main\"\n\"523408\";\"Нартан\";\"other\"\n\"523415\";\"Narovchat\";\"main\"\n\"523415\";\"Narovtsjat\";\"other\"\n\"523415\";\"Наровчат\";\"other\"\n\"523426\";\"Naro-Fominsk\";\"main\"\n\"523426\";\"Наро-Фоминск\";\"other\"\n\"523443\";\"Narimanov\";\"main\"\n\"523443\";\"Nizhnevolzhsk\";\"other\"\n\"523443\";\"Nizhnevolzhskoye\";\"other\"\n\"523443\";\"Нариманов\";\"other\"\n\"523443\";\"Нижневолжск\";\"other\"\n\"523523\";\"Nal’chik\";\"main\"\n\"523523\";\"Nal'chik\";\"ascii\"\n\"523523\";\"NAL'CHIK\";\"other\"\n\"523523\";\"Naltschik\";\"other\"\n\"523523\";\"НАЛЬЧИК\";\"other\"\n\"523523\";\"Нальчик\";\"other\"\n\"523553\";\"Nakhabino\";\"main\"\n\"523553\";\"Нахабино\";\"other\"\n\"523560\";\"Nagutskoye\";\"main\"\n\"523560\";\"Nagutsk\";\"other\"\n\"523560\";\"Nagutskaja\";\"other\"\n\"523560\";\"Nagutskoje\";\"other\"\n\"523560\";\"Нагутское\";\"other\"\n\"523583\";\"Nagorsk\";\"main\"\n\"523583\";\"NAGORSK\";\"other\"\n\"523583\";\"Nagorskoe\";\"other\"\n\"523583\";\"Nagorskoye\";\"other\"\n\"523583\";\"НАГОРСК\";\"other\"\n\"523583\";\"Нагорск\";\"other\"\n\"523655\";\"Lakha Nëvre\";\"main\"\n\"523655\";\"Lakha Nevre\";\"ascii\"\n\"523655\";\"Nadterechnaya\";\"other\"\n\"523655\";\"Nadterechnoye\";\"other\"\n\"523655\";\"Nadterecnoe\";\"other\"\n\"523655\";\"Nadteretsjnoje\";\"other\"\n\"523655\";\"Nadtereçnoe\";\"other\"\n\"523655\";\"Nizhniy Naur\";\"other\"\n\"523655\";\"Лаха Нёвре\";\"other\"\n\"523655\";\"Надтеречное\";\"other\"\n\"523662\";\"Nadvoitsy\";\"main\"\n\"523662\";\"NADVOICY\";\"other\"\n\"523662\";\"Nadovitsy\";\"other\"\n\"523662\";\"Nadvoytsy\";\"other\"\n\"523662\";\"Nadvoyzi\";\"other\"\n\"523662\";\"Otvet Kulaku\";\"other\"\n\"523662\";\"Vojatsu\";\"other\"\n\"523662\";\"НАДВОИЦЫ\";\"other\"\n\"523662\";\"Надвоицы\";\"other\"\n\"523715\";\"Nadezhda\";\"main\"\n\"523715\";\"Nadezjda\";\"other\"\n\"523715\";\"Надежда\";\"other\"\n\"523734\";\"Nachalovo\";\"main\"\n\"523734\";\"Nachalo\";\"other\"\n\"523734\";\"Natsjalo\";\"other\"\n\"523734\";\"Начало\";\"other\"\n\"523734\";\"Началово\";\"other\"\n\"523750\";\"Naberezhnyye Chelny\";\"main\"\n\"523750\";\"Brezhnev\";\"other\"\n\"523750\";\"Calli\";\"other\"\n\"523750\";\"NABEREZHNYE CHELNY\";\"other\"\n\"523750\";\"Naberejnije Celni\";\"other\"\n\"523750\";\"Nabereschnyje Tschelny\";\"other\"\n\"523750\";\"Naberezhnye Chelny\";\"other\"\n\"523750\";\"Naberezjnye Tsjelny\";\"other\"\n\"523750\";\"Nabereznije Celni\";\"other\"\n\"523750\";\"Nabereznoje Tselno\";\"other\"\n\"523750\";\"Nabereznye Celny\";\"other\"\n\"523750\";\"Nabereznyje Celny\";\"other\"\n\"523750\";\"Nabereznyje Tselny\";\"other\"\n\"523750\";\"Nabereĵnije Ĉelni\";\"other\"\n\"523750\";\"Naberežnije Čelni\";\"other\"\n\"523750\";\"Naberežnye Čelny\";\"other\"\n\"523750\";\"Naberežnyje Tšelny\";\"other\"\n\"523750\";\"Naberežnyje Čelny\";\"other\"\n\"523750\";\"Naberežnõje Tšelnõ\";\"other\"\n\"523750\";\"nabelejeuniyechelni\";\"other\"\n\"523750\";\"nabelejuniyechelni\";\"other\"\n\"523750\";\"Çallı\";\"other\"\n\"523750\";\"НАБЕРЕЖНЫЕ ЧЕЛНЫ\";\"other\"\n\"523750\";\"Набережные Челны\";\"other\"\n\"523750\";\"나베레주니예첼니\";\"other\"\n\"523750\";\"나베레즈니예첼니\";\"other\"\n\"523790\";\"Myurego\";\"main\"\n\"523790\";\"Mjurego\";\"other\"\n\"523790\";\"Myuregi\";\"other\"\n\"523790\";\"Мюрего\";\"other\"\n\"523812\";\"Mytishchi\";\"main\"\n\"523812\";\"Mitisci\";\"other\"\n\"523812\";\"Mitishchi\";\"other\"\n\"523812\";\"Mitiŝĉi\";\"other\"\n\"523812\";\"Mitišči\";\"other\"\n\"523812\";\"Motistsi\";\"other\"\n\"523812\";\"Mytichi\";\"other\"\n\"523812\";\"Mytischtschi\";\"other\"\n\"523812\";\"Mytisci\";\"other\"\n\"523812\";\"Mytishi\";\"other\"\n\"523812\";\"Mytistsi\";\"other\"\n\"523812\";\"Mytiszczi\";\"other\"\n\"523812\";\"Mytištši\";\"other\"\n\"523812\";\"Mytišči\";\"other\"\n\"523812\";\"Mõtištši\";\"other\"\n\"523812\";\"mitisi\";\"other\"\n\"523812\";\"mitisichi\";\"other\"\n\"523812\";\"Митишчи\";\"other\"\n\"523812\";\"Мытищи\";\"other\"\n\"523812\";\"미티시\";\"other\"\n\"523812\";\"미티시치\";\"other\"\n\"523859\";\"Myshkin\";\"main\"\n\"523859\";\"MYSHKIN\";\"other\"\n\"523859\";\"Myshkino\";\"other\"\n\"523859\";\"Mysjkin\";\"other\"\n\"523859\";\"МЫШКИН\";\"other\"\n\"523859\";\"Мышкин\";\"other\"\n\"523928\";\"Myatlevo\";\"main\"\n\"523928\";\"MJATLEVO\";\"other\"\n\"523928\";\"Mjatlevo\";\"other\"\n\"523928\";\"Mjatlewo\";\"other\"\n\"523928\";\"МЯТЛЕВО\";\"other\"\n\"523928\";\"Мятлево\";\"other\"\n\"524100\";\"Muyezerskiy\";\"main\"\n\"524100\";\"Mujezerskij\";\"other\"\n\"524100\";\"Muujarvi\";\"other\"\n\"524100\";\"Muyezero\";\"other\"\n\"524100\";\"Muyozero\";\"other\"\n\"524100\";\"Muyëzero\";\"other\"\n\"524100\";\"Муезерский\";\"other\"\n\"524113\";\"Mutsalaul\";\"main\"\n\"524113\";\"Mucal-Aul\";\"other\"\n\"524113\";\"Муцал-Аул\";\"other\"\n\"524113\";\"Муцалаул\";\"other\"\n\"524183\";\"Muslyumovo\";\"main\"\n\"524183\";\"Musljumovo\";\"other\"\n\"524183\";\"Муслюмово\";\"other\"\n\"524243\";\"Murygino\";\"main\"\n\"524243\";\"MURYGINO\";\"other\"\n\"524243\";\"МУРЫГИНО\";\"other\"\n\"524243\";\"Мурыгино\";\"other\"\n\"524294\";\"Murom\";\"main\"\n\"524294\";\"MUROM\";\"other\"\n\"524294\";\"Moerom\";\"other\"\n\"524294\";\"Murom am Oka\";\"other\"\n\"524294\";\"mulom\";\"other\"\n\"524294\";\"МУРОМ\";\"other\"\n\"524294\";\"Муром\";\"other\"\n\"524294\";\"무롬\";\"other\"\n\"524298\";\"Murmino\";\"main\"\n\"524298\";\"MURMINO\";\"other\"\n\"524298\";\"МУРМИНО\";\"other\"\n\"524298\";\"Мурмино\";\"other\"\n\"524305\";\"Murmansk\";\"main\"\n\"524305\";\"Gorod Murmansk\";\"other\"\n\"524305\";\"Moermansk\";\"other\"\n\"524305\";\"Mourmansk\";\"other\"\n\"524305\";\"Murmanska\";\"other\"\n\"524305\";\"Murmanskas\";\"other\"\n\"524305\";\"Murmanszk\";\"other\"\n\"524305\";\"Murmask\";\"other\"\n\"524305\";\"Murmańsk\";\"other\"\n\"524305\";\"Murmánska\";\"other\"\n\"524305\";\"Muurmanni\";\"other\"\n\"524305\";\"Múrmansk\";\"other\"\n\"524305\";\"Múrmask\";\"other\"\n\"524305\";\"mo er man si ke\";\"other\"\n\"524305\";\"muleumanseukeu\";\"other\"\n\"524305\";\"murumansuku\";\"other\"\n\"524305\";\"mwrmnsq\";\"other\"\n\"524305\";\"Μουρμάνσκ\";\"other\"\n\"524305\";\"Мурманск\";\"other\"\n\"524305\";\"מורמנסק\";\"other\"\n\"524305\";\"ムルマンスク\";\"other\"\n\"524305\";\"摩爾曼斯克\";\"other\"\n\"524305\";\"무르만스크\";\"other\"\n\"524311\";\"Murino\";\"main\"\n\"524311\";\"Мурино\";\"other\"\n\"524414\";\"Murashi\";\"main\"\n\"524414\";\"MURASHI\";\"other\"\n\"524414\";\"Murasji\";\"other\"\n\"524414\";\"МУРАШИ\";\"other\"\n\"524414\";\"Мураши\";\"other\"\n\"524423\";\"Muranovo\";\"main\"\n\"524423\";\"Мураново\";\"other\"\n\"524489\";\"Mullovka\";\"main\"\n\"524489\";\"MULLOVKA\";\"other\"\n\"524489\";\"Mullovki\";\"other\"\n\"524489\";\"МУЛЛОВКА\";\"other\"\n\"524489\";\"Мулловка\";\"other\"\n\"524504\";\"Mulino\";\"main\"\n\"524504\";\"Mulina\";\"other\"\n\"524504\";\"Zolino\";\"other\"\n\"524504\";\"Золино\";\"other\"\n\"524504\";\"Мулино\";\"other\"\n\"524534\";\"Mukhtolovo\";\"main\"\n\"524534\";\"MUKHTOLOVO\";\"other\"\n\"524534\";\"МУХТОЛОВО\";\"other\"\n\"524602\";\"Mugi\";\"main\"\n\"524602\";\"Муги\";\"other\"\n\"524627\";\"Muchkapskiy\";\"main\"\n\"524627\";\"MUCHKAPSKIJ\";\"other\"\n\"524627\";\"Muchkan\";\"other\"\n\"524627\";\"Muchkap\";\"other\"\n\"524627\";\"Mutschap\";\"other\"\n\"524627\";\"Mutsjkapskij\";\"other\"\n\"524627\";\"МУЧКАПСКИЙ\";\"other\"\n\"524627\";\"Мучкапский\";\"other\"\n\"524640\";\"Mtsensk\";\"main\"\n\"524640\";\"MCENSK\";\"other\"\n\"524640\";\"Misensk\";\"other\"\n\"524640\";\"Mzensk\";\"other\"\n\"524640\";\"МЦЕНСК\";\"other\"\n\"524640\";\"Мценск\";\"other\"\n\"524649\";\"Mstikhino\";\"main\"\n\"524649\";\"Мстихино\";\"other\"\n\"524651\";\"Mstera\";\"main\"\n\"524651\";\"MSTERA\";\"other\"\n\"524651\";\"МСТЕРА\";\"other\"\n\"524651\";\"Мстера\";\"other\"\n\"524681\";\"Mrakovo\";\"main\"\n\"524681\";\"Мраково\";\"other\"\n\"524699\";\"Mozhga\";\"main\"\n\"524699\";\"Krasnyy\";\"other\"\n\"524699\";\"MOZHGA\";\"other\"\n\"524699\";\"Moshga\";\"other\"\n\"524699\";\"Mozjga\";\"other\"\n\"524699\";\"Syuginskaya\";\"other\"\n\"524699\";\"Syuginskiy\";\"other\"\n\"524699\";\"МОЖГА\";\"other\"\n\"524699\";\"Можга\";\"other\"\n\"524712\";\"Mozhaysk\";\"main\"\n\"524712\";\"MOZHAJSK\";\"other\"\n\"524712\";\"Mozhaisk\";\"other\"\n\"524712\";\"Mozjajsk\";\"other\"\n\"524712\";\"МОЖАЙСК\";\"other\"\n\"524712\";\"Можайск\";\"other\"\n\"524736\";\"Mozdok\";\"main\"\n\"524736\";\"Masdok\";\"other\"\n\"524736\";\"Mosdok\";\"other\"\n\"524736\";\"Моздок\";\"other\"\n\"524809\";\"Mostovskoy\";\"main\"\n\"524809\";\"MOSTOVSKOJ\";\"other\"\n\"524809\";\"Mostovoye\";\"other\"\n\"524809\";\"Mostovskoj\";\"other\"\n\"524809\";\"Mostovskoye\";\"other\"\n\"524809\";\"МОСТОВСКОЙ\";\"other\"\n\"524809\";\"Мостовской\";\"other\"\n\"524901\";\"Moscow\";\"main\"\n\"524901\";\"MOW\";\"other\"\n\"524901\";\"Maeskaew\";\"other\"\n\"524901\";\"Maeskuy\";\"other\"\n\"524901\";\"Maskav\";\"other\"\n\"524901\";\"Maskava\";\"other\"\n\"524901\";\"Maskva\";\"other\"\n\"524901\";\"Mat-xco-va\";\"other\"\n\"524901\";\"Matxcova\";\"other\"\n\"524901\";\"Matxcơva\";\"other\"\n\"524901\";\"Mosca\";\"other\"\n\"524901\";\"Moscfa\";\"other\"\n\"524901\";\"Moscha\";\"other\"\n\"524901\";\"Mosco\";\"other\"\n\"524901\";\"Moscou\";\"other\"\n\"524901\";\"Moscova\";\"other\"\n\"524901\";\"Moscovo\";\"other\"\n\"524901\";\"Moscu\";\"other\"\n\"524901\";\"Moscua\";\"other\"\n\"524901\";\"Moscòu\";\"other\"\n\"524901\";\"Moscó\";\"other\"\n\"524901\";\"Moscù\";\"other\"\n\"524901\";\"Moscú\";\"other\"\n\"524901\";\"Mosk\\\"va\";\"other\"\n\"524901\";\"Moska\";\"other\"\n\"524901\";\"Moskau\";\"other\"\n\"524901\";\"Mosko\";\"other\"\n\"524901\";\"Moskou\";\"other\"\n\"524901\";\"Moskova\";\"other\"\n\"524901\";\"Moskowa\";\"other\"\n\"524901\";\"Mosku\";\"other\"\n\"524901\";\"Moskuas\";\"other\"\n\"524901\";\"Moskva\";\"other\"\n\"524901\";\"Moskvo\";\"other\"\n\"524901\";\"Moskwa\";\"other\"\n\"524901\";\"Moszkva\";\"other\"\n\"524901\";\"Muskav\";\"other\"\n\"524901\";\"Musko\";\"other\"\n\"524901\";\"Mát-xcơ-va\";\"other\"\n\"524901\";\"Mäskäw\";\"other\"\n\"524901\";\"Mòskwa\";\"other\"\n\"524901\";\"masko\";\"other\"\n\"524901\";\"maskw\";\"other\"\n\"524901\";\"mo si ke\";\"other\"\n\"524901\";\"moseukeuba\";\"other\"\n\"524901\";\"mosko\";\"other\"\n\"524901\";\"mosukuwa\";\"other\"\n\"524901\";\"mskw\";\"other\"\n\"524901\";\"mwskva\";\"other\"\n\"524901\";\"mwskw\";\"other\"\n\"524901\";\"mwsqbh\";\"other\"\n\"524901\";\"mx s ko\";\"other\"\n\"524901\";\"Μόσχα\";\"other\"\n\"524901\";\"Мæскуы\";\"other\"\n\"524901\";\"Маскав\";\"other\"\n\"524901\";\"Масква\";\"other\"\n\"524901\";\"Москва\";\"other\"\n\"524901\";\"Москова\";\"other\"\n\"524901\";\"Москъва\";\"other\"\n\"524901\";\"Мускав\";\"other\"\n\"524901\";\"Муско\";\"other\"\n\"524901\";\"Մոսկվա\";\"other\"\n\"524901\";\"מאָסקװע\";\"other\"\n\"524901\";\"מאסקווע\";\"other\"\n\"524901\";\"מוסקבה\";\"other\"\n\"524901\";\"ماسکو\";\"other\"\n\"524901\";\"مسکو\";\"other\"\n\"524901\";\"موسكو\";\"other\"\n\"524901\";\"موسكۋا\";\"other\"\n\"524901\";\"ܡܘܣܟܘ\";\"other\"\n\"524901\";\"मास्को\";\"other\"\n\"524901\";\"मॉस्को\";\"other\"\n\"524901\";\"মস্কো\";\"other\"\n\"524901\";\"மாஸ்கோ\";\"other\"\n\"524901\";\"มอสโก\";\"other\"\n\"524901\";\"མོ་སི་ཁོ\";\"other\"\n\"524901\";\"მოსკოვი\";\"other\"\n\"524901\";\"ሞስኮ\";\"other\"\n\"524901\";\"モスクワ\";\"other\"\n\"524901\";\"莫斯科\";\"other\"\n\"524901\";\"모스크바\";\"other\"\n\"524907\";\"Moskovskoye\";\"main\"\n\"524907\";\"Moskovskaya\";\"other\"\n\"524907\";\"Moskovskoje\";\"other\"\n\"524907\";\"Московское\";\"other\"\n\"525025\";\"Moshenskoye\";\"main\"\n\"525025\";\"Mosjenskoje\";\"other\"\n\"525025\";\"Nikolo-Moshenskoye\";\"other\"\n\"525025\";\"Мошенское\";\"other\"\n\"525084\";\"Mosal’sk\";\"main\"\n\"525084\";\"Mosal'sk\";\"ascii\"\n\"525084\";\"Mosalsk\";\"other\"\n\"525084\";\"Мосальск\";\"other\"\n\"525138\";\"Morshansk\";\"main\"\n\"525138\";\"MORSHANSK\";\"other\"\n\"525138\";\"Morschansk\";\"other\"\n\"525138\";\"Morshinsk\";\"other\"\n\"525138\";\"Morsjansk\";\"other\"\n\"525138\";\"МОРШАНСК\";\"other\"\n\"525138\";\"Моршанск\";\"other\"\n\"525162\";\"Morozovsk\";\"main\"\n\"525162\";\"MOROZOVSK\";\"other\"\n\"525162\";\"Morosowski\";\"other\"\n\"525162\";\"Morosowskij\";\"other\"\n\"525162\";\"Morozovskaya\";\"other\"\n\"525162\";\"Morozovskiy\";\"other\"\n\"525162\";\"МОРОЗОВСК\";\"other\"\n\"525162\";\"Морозовск\";\"other\"\n\"525262\";\"Morki\";\"main\"\n\"525262\";\"MORKI\";\"other\"\n\"525262\";\"МОРКИ\";\"other\"\n\"525262\";\"Морки\";\"other\"\n\"525280\";\"Morgaushi\";\"main\"\n\"525280\";\"Morgausji\";\"other\"\n\"525280\";\"Моргауши\";\"other\"\n\"525365\";\"Mordovo\";\"main\"\n\"525365\";\"MORDOVO\";\"other\"\n\"525365\";\"Murdovo\";\"other\"\n\"525365\";\"МОРДОВО\";\"other\"\n\"525365\";\"Мордово\";\"other\"\n\"525371\";\"Mordino\";\"main\"\n\"525371\";\"Мордино\";\"other\"\n\"525396\";\"Monino\";\"main\"\n\"525396\";\"MONINO\";\"other\"\n\"525396\";\"Monin\";\"other\"\n\"525396\";\"МОНИНО\";\"other\"\n\"525396\";\"Монино\";\"other\"\n\"525404\";\"Monchegorsk\";\"main\"\n\"525404\";\"Moncha Guba\";\"other\"\n\"525404\";\"Monchagorsk\";\"other\"\n\"525404\";\"Montsegorsk\";\"other\"\n\"525404\";\"Montsjegorsk\";\"other\"\n\"525404\";\"Montšegorsk\";\"other\"\n\"525404\";\"Мончегорск\";\"other\"\n\"525426\";\"Monastyrshchina\";\"main\"\n\"525426\";\"MONASTYRSHHINA\";\"other\"\n\"525426\";\"Monastirshchina\";\"other\"\n\"525426\";\"Monastyrsjtsjina\";\"other\"\n\"525426\";\"МОНАСТЫРЩИНА\";\"other\"\n\"525426\";\"Монастырщина\";\"other\"\n\"525509\";\"Molokovo\";\"main\"\n\"525509\";\"MOLOKOVO\";\"other\"\n\"525509\";\"МОЛОКОВО\";\"other\"\n\"525509\";\"Молоково\";\"other\"\n\"525585\";\"Molochnoye\";\"main\"\n\"525585\";\"MOLOCHNOE\";\"other\"\n\"525585\";\"Molotsjnoje\";\"other\"\n\"525585\";\"МОЛОЧНОЕ\";\"other\"\n\"525585\";\"Молочное\";\"other\"\n\"525659\";\"Mokshan\";\"main\"\n\"525659\";\"MOKSHAN\";\"other\"\n\"525659\";\"Moksjan\";\"other\"\n\"525659\";\"МОКШАН\";\"other\"\n\"525659\";\"Мокшан\";\"other\"\n\"525719\";\"Mokrous\";\"main\"\n\"525719\";\"MOKROUS\";\"other\"\n\"525719\";\"МОКРОУС\";\"other\"\n\"525719\";\"Мокроус\";\"other\"\n\"525961\";\"Mochalishche\";\"main\"\n\"525961\";\"MOCHALISHHE\";\"other\"\n\"525961\";\"Motsjalisjtsje\";\"other\"\n\"525961\";\"МОЧАЛИЩЕ\";\"other\"\n\"525961\";\"Мочалище\";\"other\"\n\"525988\";\"Mshinskaya\";\"main\"\n\"525988\";\"Mshinskaja\";\"other\"\n\"525988\";\"Мшинская\";\"other\"\n\"525990\";\"Mizur\";\"main\"\n\"525990\";\"Mizurskiy\";\"other\"\n\"526083\";\"Mitrofanovka\";\"main\"\n\"526083\";\"Митрофановка\";\"other\"\n\"526185\";\"Miskindzha\";\"main\"\n\"526185\";\"Miskidzha\";\"other\"\n\"526185\";\"Miskindzhi\";\"other\"\n\"526185\";\"Мискинджа\";\"other\"\n\"526185\";\"Мискинджи\";\"other\"\n\"526247\";\"Mishkino\";\"main\"\n\"526247\";\"Мишкино\";\"other\"\n\"526271\";\"Misheronskiy\";\"main\"\n\"526271\";\"MISHERONSKIJ\";\"other\"\n\"526271\";\"Misherevki\";\"other\"\n\"526271\";\"Misjeronskij\";\"other\"\n\"526271\";\"МИШЕРОНСКИЙ\";\"other\"\n\"526271\";\"Мишеронский\";\"other\"\n\"526296\";\"Mirskoy\";\"main\"\n\"526296\";\"Imeni Kaganovicha\";\"other\"\n\"526296\";\"Mirskoj\";\"other\"\n\"526296\";\"Мирской\";\"other\"\n\"526346\";\"Mirnyy\";\"main\"\n\"526346\";\"Mirnyj\";\"other\"\n\"526346\";\"Мирный\";\"other\"\n\"526347\";\"Mirnyy\";\"main\"\n\"526347\";\"Мирный\";\"other\"\n\"526354\";\"Mirnyy\";\"main\"\n\"526354\";\"Mirnyj\";\"other\"\n\"526354\";\"Мирный\";\"other\"\n\"526357\";\"Mirnyy\";\"main\"\n\"526480\";\"Mineral’nyye Vody\";\"main\"\n\"526480\";\"Mineral'nyye Vody\";\"ascii\"\n\"526480\";\"MINERAL'NYE VODY\";\"other\"\n\"526480\";\"Mineralne Wody\";\"other\"\n\"526480\";\"Mineralnije Vodi\";\"other\"\n\"526480\";\"Mineralnoje Vodo\";\"other\"\n\"526480\";\"Mineralnye\";\"other\"\n\"526480\";\"Mineralnye Vody\";\"other\"\n\"526480\";\"Mineralnyje Wody\";\"other\"\n\"526480\";\"Mineralnõje Vodõ\";\"other\"\n\"526480\";\"minelalniyebodi\";\"other\"\n\"526480\";\"МИНЕРАЛЬНЫЕ ВОДЫ\";\"other\"\n\"526480\";\"Минералније Води\";\"other\"\n\"526480\";\"Минеральные Воды\";\"other\"\n\"526480\";\"Мінеральні води\";\"other\"\n\"526480\";\"미네랄니예보디\";\"other\"\n\"526489\";\"Mindyak\";\"main\"\n\"526489\";\"Mindjak\";\"other\"\n\"526489\";\"Миндяк\";\"other\"\n\"526504\";\"Milyutinskaya\";\"main\"\n\"526504\";\"Miljutinskaja\";\"other\"\n\"526504\";\"Милютинская\";\"other\"\n\"526543\";\"Miloslavskoye\";\"main\"\n\"526543\";\"MILOSLAVSKOE\";\"other\"\n\"526543\";\"Miloslavskoje\";\"other\"\n\"526543\";\"МИЛОСЛАВСКОЕ\";\"other\"\n\"526543\";\"Милославское\";\"other\"\n\"526558\";\"Millerovo\";\"main\"\n\"526558\";\"MILLEROVO\";\"other\"\n\"526558\";\"Millerowo\";\"other\"\n\"526558\";\"МИЛЛЕРОВО\";\"other\"\n\"526558\";\"Миллерово\";\"other\"\n\"526600\";\"Mikun’\";\"main\"\n\"526600\";\"Mikun'\";\"ascii\"\n\"526600\";\"MIKUN'\";\"other\"\n\"526600\";\"Mikun\";\"other\"\n\"526600\";\"МИКУНЬ\";\"other\"\n\"526600\";\"Микунь\";\"other\"\n\"526605\";\"Mikulino\";\"main\"\n\"526605\";\"Mikulino-Gorodischtsche\";\"other\"\n\"526605\";\"Mikulino-Gorodishche\";\"other\"\n\"526605\";\"Mikulino-Nagornoye\";\"other\"\n\"526605\";\"Микулино\";\"other\"\n\"526652\";\"Mikhnëvo\";\"main\"\n\"526652\";\"Mikhnevo\";\"ascii\"\n\"526652\";\"Mikhievo\";\"other\"\n\"526652\";\"Михнево\";\"other\"\n\"526652\";\"Михнёво\";\"other\"\n\"526749\";\"Mikhaylovskoye\";\"main\"\n\"526749\";\"Mikhaylovskaya\";\"other\"\n\"526749\";\"Михайловское\";\"other\"\n\"526814\";\"Mikhaylovskaya\";\"main\"\n\"526814\";\"Mikhajlovskaja\";\"other\"\n\"526814\";\"Mikhaylovskoye\";\"other\"\n\"526814\";\"Михайловская\";\"other\"\n\"526815\";\"Mikhaylovsk\";\"main\"\n\"526815\";\"MIKHAJLOVSK\";\"other\"\n\"526815\";\"Mikhajlovsk\";\"other\"\n\"526815\";\"Mikhalovskiy\";\"other\"\n\"526815\";\"Mikhaylovka\";\"other\"\n\"526815\";\"Mikhaylovskiy\";\"other\"\n\"526815\";\"МИХАЙЛОВСК\";\"other\"\n\"526815\";\"Михайловск\";\"other\"\n\"526875\";\"Mikhaylovka\";\"main\"\n\"526875\";\"Mikhajlovka\";\"other\"\n\"526875\";\"Михайловка\";\"other\"\n\"527012\";\"Mikhaylovka\";\"main\"\n\"527012\";\"Michalowka\";\"other\"\n\"527012\";\"Mikhailovka\";\"other\"\n\"527012\";\"Mikhajlovka\";\"other\"\n\"527012\";\"Михайловка\";\"other\"\n\"527034\";\"Mikhaylov\";\"main\"\n\"527034\";\"MIKHAJLOV\";\"other\"\n\"527034\";\"Mikhailov\";\"other\"\n\"527034\";\"Mikhajlov\";\"other\"\n\"527034\";\"Mizailov\";\"other\"\n\"527034\";\"МИХАЙЛОВ\";\"other\"\n\"527034\";\"Михайлов\";\"other\"\n\"527191\";\"Michurinsk\";\"main\"\n\"527191\";\"Koslov\";\"other\"\n\"527191\";\"Kozlov\";\"other\"\n\"527191\";\"MICHURINSK\";\"other\"\n\"527191\";\"Micurinsk\";\"other\"\n\"527191\";\"Miczurynsk\";\"other\"\n\"527191\";\"Miczuryńsk\";\"other\"\n\"527191\";\"Mitschurinsk\";\"other\"\n\"527191\";\"Mitschurnisk\";\"other\"\n\"527191\";\"Mitsurinsk\";\"other\"\n\"527191\";\"Mitšurinsk\";\"other\"\n\"527191\";\"Miĉurinsk\";\"other\"\n\"527191\";\"Mičurinsk\";\"other\"\n\"527191\";\"michulinseukeu\";\"other\"\n\"527191\";\"МИЧУРИНСК\";\"other\"\n\"527191\";\"Мичуринск\";\"other\"\n\"527191\";\"미추린스크\";\"other\"\n\"527212\";\"Miatli\";\"main\"\n\"527212\";\"Miatly\";\"other\"\n\"527212\";\"Miyatly\";\"other\"\n\"527212\";\"Staroye-Miatli\";\"other\"\n\"527212\";\"Миатли\";\"other\"\n\"527217\";\"Mglin\";\"main\"\n\"527217\";\"MGLIN\";\"other\"\n\"527217\";\"МГЛИН\";\"other\"\n\"527217\";\"Мглин\";\"other\"\n\"527220\";\"Mga\";\"main\"\n\"527220\";\"MGA\";\"other\"\n\"527220\";\"МГА\";\"other\"\n\"527220\";\"Мга\";\"other\"\n\"527224\";\"Mezinovskiy\";\"main\"\n\"527224\";\"Poselok Mezinovka\";\"other\"\n\"527224\";\"Posëlok Mezinovka\";\"other\"\n\"527224\";\"Мезиновский\";\"other\"\n\"527263\";\"Mezhevoy\";\"main\"\n\"527263\";\"MEZHEVOJ\";\"other\"\n\"527263\";\"SULEJA\";\"other\"\n\"527263\";\"Suleya\";\"other\"\n\"527263\";\"МЕЖЕВОЙ\";\"other\"\n\"527263\";\"Межевой\";\"other\"\n\"527263\";\"СУЛЕЯ\";\"other\"\n\"527299\";\"Mezhdurechensk\";\"main\"\n\"527299\";\"Междуреченск\";\"other\"\n\"527300\";\"Mezhdurechensk\";\"main\"\n\"527300\";\"MEZHDURECHENSK\";\"other\"\n\"527300\";\"Mezjduretsjensk\";\"other\"\n\"527300\";\"МЕЖДУРЕЧЕНСК\";\"other\"\n\"527300\";\"Междуреченск\";\"other\"\n\"527321\";\"Mezen'\";\"main\"\n\"527321\";\"MEZEN'\";\"other\"\n\"527321\";\"Mezen\";\"other\"\n\"527321\";\"МЕЗЕНЬ\";\"other\"\n\"527361\";\"Metallostroy\";\"main\"\n\"527361\";\"Metallostroj\";\"other\"\n\"527361\";\"Металлострой\";\"other\"\n\"527370\";\"Mesyagutovo\";\"main\"\n\"527370\";\"Mesiagutovo\";\"other\"\n\"527370\";\"Месягутово\";\"other\"\n\"527388\";\"Mesker-Yurt\";\"main\"\n\"527388\";\"Mesker-Jurt\";\"other\"\n\"527388\";\"Rubezhnoye\";\"other\"\n\"527388\";\"Мескер-Юрт\";\"other\"\n\"527405\";\"Meshchovsk\";\"main\"\n\"527405\";\"MESHHOVSK\";\"other\"\n\"527405\";\"Meshovsk\";\"other\"\n\"527405\";\"Mesjtsjovsk\";\"other\"\n\"527405\";\"МЕЩОВСК\";\"other\"\n\"527405\";\"Мещовск\";\"other\"\n\"527429\";\"Meshcherino\";\"main\"\n\"527429\";\"Mesjtsjerino\";\"other\"\n\"527429\";\"Мещерино\";\"other\"\n\"527529\";\"Menzelinsk\";\"main\"\n\"527529\";\"MENZELINSK\";\"other\"\n\"527529\";\"МЕНЗЕЛИНСК\";\"other\"\n\"527529\";\"Мензелинск\";\"other\"\n\"527578\";\"Mendeleyevskiy\";\"main\"\n\"527578\";\"MENDELEEVSKIJ\";\"other\"\n\"527578\";\"Mendelejevskij\";\"other\"\n\"527578\";\"МЕНДЕЛЕЕВСКИЙ\";\"other\"\n\"527579\";\"Mendeleyevsk\";\"main\"\n\"527579\";\"Bondyushskiy Zavod\";\"other\"\n\"527579\";\"Bondyuzhski Zavod\";\"other\"\n\"527579\";\"Bondyuzhskiy\";\"other\"\n\"527579\";\"Bondyuzhskiy Zavod\";\"other\"\n\"527579\";\"MENDELEEVSK\";\"other\"\n\"527579\";\"Mendelejevsk\";\"other\"\n\"527579\";\"МЕНДЕЛЕЕВСК\";\"other\"\n\"527579\";\"Менделеевск\";\"other\"\n\"527580\";\"Mendeleyevo\";\"main\"\n\"527580\";\"Mendeleevo\";\"other\"\n\"527580\";\"Mendelejevo\";\"other\"\n\"527580\";\"Менделеево\";\"other\"\n\"527581\";\"Mendeleyevo\";\"main\"\n\"527581\";\"MENDELEEVO\";\"other\"\n\"527581\";\"Mendelejevo\";\"other\"\n\"527581\";\"МЕНДЕЛЕЕВО\";\"other\"\n\"527581\";\"Менделеево\";\"other\"\n\"527697\";\"Melikhovo\";\"main\"\n\"527697\";\"Melekhovo\";\"other\"\n\"527697\";\"Мелихово\";\"other\"\n\"527717\";\"Meleuz\";\"main\"\n\"527717\";\"MELEUZ\";\"other\"\n\"527717\";\"МЕЛЕУЗ\";\"other\"\n\"527717\";\"Мелеуз\";\"other\"\n\"527740\";\"Melenki\";\"main\"\n\"527740\";\"MELENKI\";\"other\"\n\"527740\";\"МЕЛЕНКИ\";\"other\"\n\"527740\";\"Меленки\";\"other\"\n\"527751\";\"Melikhovskaya\";\"main\"\n\"527751\";\"Melekhovskaya\";\"other\"\n\"527751\";\"Мелиховская\";\"other\"\n\"527761\";\"Melekhovo\";\"main\"\n\"527761\";\"MELEKHOVO\";\"other\"\n\"527761\";\"Melekhova\";\"other\"\n\"527761\";\"МЕЛЕХОВО\";\"other\"\n\"527761\";\"Мелехово\";\"other\"\n\"527869\";\"Medyn’\";\"main\"\n\"527869\";\"Medyn'\";\"ascii\"\n\"527869\";\"MEDYN'\";\"other\"\n\"527869\";\"Medin\";\"other\"\n\"527869\";\"Medyn\";\"other\"\n\"527869\";\"МЕДЫНЬ\";\"other\"\n\"527869\";\"Медынь\";\"other\"\n\"527888\";\"Medvezh’yegorsk\";\"main\"\n\"527888\";\"Medvezh'yegorsk\";\"ascii\"\n\"527888\";\"Medvesh'va Gora\";\"other\"\n\"527888\";\"Medvesh’va Gora\";\"other\"\n\"527888\";\"Medvezhegorsk\";\"other\"\n\"527888\";\"Medvezhogorsk\";\"other\"\n\"527888\";\"Medvezhya Gora\";\"other\"\n\"527888\";\"Medvezjegorsk\";\"other\"\n\"527888\";\"Medweshegorsk\";\"other\"\n\"527888\";\"Медвежьегорск\";\"other\"\n\"527968\";\"Medvedovskaya\";\"main\"\n\"527968\";\"Medvedevskaya\";\"other\"\n\"527968\";\"Medvedovskaja\";\"other\"\n\"527968\";\"Medvyedovskaya\";\"other\"\n\"527968\";\"Медведовская\";\"other\"\n\"527979\";\"Medvedok\";\"main\"\n\"527979\";\"MEDVEDOK\";\"other\"\n\"527979\";\"Medvedka\";\"other\"\n\"527979\";\"МЕДВЕДОК\";\"other\"\n\"527979\";\"Медведок\";\"other\"\n\"528017\";\"Medveditskiy\";\"main\"\n\"528017\";\"MEDVEDICKIJ\";\"other\"\n\"528017\";\"Medveditskij\";\"other\"\n\"528017\";\"МЕДВЕДИЦКИЙ\";\"other\"\n\"528017\";\"Медведитский\";\"other\"\n\"528056\";\"Medvedevo\";\"main\"\n\"528056\";\"MEDVEDEVO\";\"other\"\n\"528056\";\"МЕДВЕДЕВО\";\"other\"\n\"528056\";\"Медведево\";\"other\"\n\"528109\";\"Mednogorsk\";\"main\"\n\"528109\";\"MEDNOGORSK\";\"other\"\n\"528109\";\"МЕДНОГОРСК\";\"other\"\n\"528109\";\"Медногорск\";\"other\"\n\"528137\";\"Mechetinskaya\";\"main\"\n\"528137\";\"Metschetinskaja\";\"other\"\n\"528137\";\"Metsjetinskaja\";\"other\"\n\"528137\";\"Мечетинская\";\"other\"\n\"528216\";\"Mayskoye\";\"main\"\n\"528216\";\"Majskoje\";\"other\"\n\"528216\";\"Mayskiy\";\"other\"\n\"528216\";\"Pervomayskiy\";\"other\"\n\"528216\";\"Майское\";\"other\"\n\"528233\";\"Mayskiy\";\"main\"\n\"528233\";\"Devyatogo Maya\";\"other\"\n\"528233\";\"Майский\";\"other\"\n\"528239\";\"Mayskiy\";\"main\"\n\"528239\";\"Майский\";\"other\"\n\"528242\";\"Mayskiy\";\"main\"\n\"528242\";\"MAJSKIJ\";\"other\"\n\"528242\";\"Majskij\";\"other\"\n\"528242\";\"МАЙСКИЙ\";\"other\"\n\"528242\";\"Майский\";\"other\"\n\"528248\";\"Mayskiy\";\"main\"\n\"528248\";\"Majskij\";\"other\"\n\"528248\";\"Mayskoye\";\"other\"\n\"528248\";\"Майский\";\"other\"\n\"528258\";\"Mayrtup\";\"main\"\n\"528258\";\"Majrtup\";\"other\"\n\"528258\";\"Mayortun\";\"other\"\n\"528258\";\"Mayrtun\";\"other\"\n\"528258\";\"Sulebkent\";\"other\"\n\"528258\";\"Майртуп\";\"other\"\n\"528278\";\"Mayna\";\"main\"\n\"528278\";\"MAJNA\";\"other\"\n\"528278\";\"Majna\";\"other\"\n\"528278\";\"МАЙНА\";\"other\"\n\"528278\";\"Майна\";\"other\"\n\"528288\";\"Maykor\";\"main\"\n\"528288\";\"Majkor\";\"other\"\n\"528288\";\"Maykorskiy\";\"other\"\n\"528288\";\"Майкор\";\"other\"\n\"528289\";\"Maykopskoye\";\"main\"\n\"528289\";\"Majkopskoje\";\"other\"\n\"528289\";\"Maykopskiy\";\"other\"\n\"528289\";\"Майкопское\";\"other\"\n\"528293\";\"Maykop\";\"main\"\n\"528293\";\"Maikop\";\"other\"\n\"528293\";\"Maikopas\";\"other\"\n\"528293\";\"Majkop\";\"other\"\n\"528293\";\"Maïkop\";\"other\"\n\"528293\";\"maikopeu\";\"other\"\n\"528293\";\"maikopu\";\"other\"\n\"528293\";\"myyqwp\";\"other\"\n\"528293\";\"Майкоп\";\"other\"\n\"528293\";\"Мајкоп\";\"other\"\n\"528293\";\"מייקופ\";\"other\"\n\"528293\";\"マイコープ\";\"other\"\n\"528293\";\"마이코프\";\"other\"\n\"528380\";\"Mayachnyy\";\"main\"\n\"528380\";\"MAJACHNYJ\";\"other\"\n\"528380\";\"Majatsjnyj\";\"other\"\n\"528380\";\"МАЯЧНЫЙ\";\"other\"\n\"528380\";\"Маячный\";\"other\"\n\"528495\";\"Matveyev Kurgan\";\"main\"\n\"528495\";\"MATVEEV KURGAN\";\"other\"\n\"528495\";\"Matvejev Kurgan\";\"other\"\n\"528495\";\"Matveyev-Kurgah\";\"other\"\n\"528495\";\"Matwejew-Kurgan\";\"other\"\n\"528495\";\"Motveyev Kurgan\";\"other\"\n\"528495\";\"МАТВЕЕВ КУРГАН\";\"other\"\n\"528495\";\"Матвеев Курган\";\"other\"\n\"528521\";\"Matveyevka\";\"main\"\n\"528521\";\"Matveyevskiy\";\"other\"\n\"528521\";\"Матвеевка\";\"other\"\n\"528734\";\"Maslovka\";\"main\"\n\"528734\";\"Масловка\";\"other\"\n\"528741\";\"Maslova Pristan’\";\"main\"\n\"528741\";\"Maslova Pristan'\";\"ascii\"\n\"528741\";\"Maslova\";\"other\"\n\"528741\";\"Maslova-Pristan\";\"other\"\n\"528741\";\"Maslova-Pristan'\";\"other\"\n\"528741\";\"Маслова Пристань\";\"other\"\n\"528741\";\"Маслова-Пристань\";\"other\"\n\"529051\";\"Maromitsa\";\"main\"\n\"529051\";\"MAROMICA\";\"other\"\n\"529051\";\"МАРОМИЦА\";\"other\"\n\"529051\";\"Маромица\";\"other\"\n\"529073\";\"Marks\";\"main\"\n\"529073\";\"Baronsk\";\"other\"\n\"529073\";\"MARKS\";\"other\"\n\"529073\";\"Marksshtadt\";\"other\"\n\"529073\";\"Marksstadt\";\"other\"\n\"529073\";\"Marx\";\"other\"\n\"529073\";\"Yekaterinenshtadt\";\"other\"\n\"529073\";\"МАРКС\";\"other\"\n\"529113\";\"Markovo\";\"main\"\n\"529113\";\"MARKOVO\";\"other\"\n\"529113\";\"Markov\";\"other\"\n\"529113\";\"Markovo-Sbornoye\";\"other\"\n\"529113\";\"МАРКОВО\";\"other\"\n\"529195\";\"Mari-Turek\";\"main\"\n\"529195\";\"MARI-TUREK\";\"other\"\n\"529195\";\"МАРИ-ТУРЕК\";\"other\"\n\"529195\";\"Мари-Турек\";\"other\"\n\"529343\";\"Mariinskiy Posad\";\"main\"\n\"529343\";\"MARIINSKIJ POSAD\";\"other\"\n\"529343\";\"Mariinskij Posad\";\"other\"\n\"529343\";\"МАРИИНСКИЙ ПОСАД\";\"other\"\n\"529343\";\"Мариинский Посад\";\"other\"\n\"529368\";\"Marfino\";\"main\"\n\"529368\";\"Марфино\";\"other\"\n\"529376\";\"Marfino\";\"main\"\n\"529376\";\"Марфино\";\"other\"\n\"529387\";\"Marevo\";\"main\"\n\"529387\";\"Марево\";\"other\"\n\"529505\";\"Manturovo\";\"main\"\n\"529505\";\"MANTUROVO\";\"other\"\n\"529505\";\"МАНТУРОВО\";\"other\"\n\"529505\";\"Мантурово\";\"other\"\n\"529507\";\"Manturovo\";\"main\"\n\"529507\";\"Мантурово\";\"other\"\n\"529608\";\"Manaskent\";\"main\"\n\"529608\";\"Manass-Kent\";\"other\"\n\"529608\";\"Манаскент\";\"other\"\n\"529610\";\"Manas\";\"main\"\n\"529610\";\"MANASKENT\";\"other\"\n\"529610\";\"Manaskent\";\"other\"\n\"529610\";\"МАНАСКЕНТ\";\"other\"\n\"529610\";\"Манас\";\"other\"\n\"529638\";\"Mamontovka\";\"main\"\n\"529638\";\"Мамонтовка\";\"other\"\n\"529679\";\"Mamedkala\";\"main\"\n\"529679\";\"Khan-Mamed-Kala\";\"other\"\n\"529679\";\"MAMEDKALA\";\"other\"\n\"529679\";\"МАМЕДКАЛА\";\"other\"\n\"529679\";\"Мамедкала\";\"other\"\n\"529709\";\"Mamadysh\";\"main\"\n\"529709\";\"Mamadysj\";\"other\"\n\"529709\";\"Мамадыш\";\"other\"\n\"530196\";\"Malyye Derbety\";\"main\"\n\"530196\";\"Mal.Derbety\";\"other\"\n\"530196\";\"Мал.Дербеты\";\"other\"\n\"530196\";\"Малые Дербеты\";\"other\"\n\"530480\";\"Maloye Verevo\";\"main\"\n\"530480\";\"Maloje Verevo\";\"other\"\n\"530480\";\"Малое Верево\";\"other\"\n\"530849\";\"Maloyaroslavets\";\"main\"\n\"530849\";\"MALOJAROSLAVEC\";\"other\"\n\"530849\";\"Malojaroslavets\";\"other\"\n\"530849\";\"Malojaroslawez\";\"other\"\n\"530849\";\"МАЛОЯРОСЛАВЕЦ\";\"other\"\n\"530849\";\"Малоярославец\";\"other\"\n\"530966\";\"Maloarkhangel’sk\";\"main\"\n\"530966\";\"Maloarkhangel'sk\";\"ascii\"\n\"530966\";\"Maloarkhangelsk\";\"other\"\n\"530966\";\"Малоархангельск\";\"other\"\n\"530972\";\"Malmyzh\";\"main\"\n\"530972\";\"MALMYZH\";\"other\"\n\"530972\";\"Malmyzj\";\"other\"\n\"530972\";\"МАЛМЫЖ\";\"other\"\n\"530972\";\"Малмыж\";\"other\"\n\"530994\";\"Malka\";\"main\"\n\"530994\";\"Ashabovo\";\"other\"\n\"530994\";\"Малка\";\"other\"\n\"531098\";\"Malino\";\"main\"\n\"531098\";\"Малино\";\"other\"\n\"531129\";\"Malgobek\";\"main\"\n\"531129\";\"MALGOBEK\";\"other\"\n\"531129\";\"МАЛГОБЕК\";\"other\"\n\"531257\";\"Malaya Vishera\";\"main\"\n\"531257\";\"MALAJA VISHERA\";\"other\"\n\"531257\";\"Malaia Vichera\";\"other\"\n\"531257\";\"Malaja Visjera\";\"other\"\n\"531257\";\"Malaja Wischera\";\"other\"\n\"531257\";\"МАЛАЯ ВИШЕРА\";\"other\"\n\"531257\";\"Малая Вишера\";\"other\"\n\"531383\";\"Malaya Serdoba\";\"main\"\n\"531383\";\"Mal.Serdoba\";\"other\"\n\"531383\";\"Мал.Сердоба\";\"other\"\n\"531383\";\"Малая Сердоба\";\"other\"\n\"531426\";\"Malaya Purga\";\"main\"\n\"531426\";\"Mal.Purga\";\"other\"\n\"531426\";\"Pichi Purga\";\"other\"\n\"531426\";\"Мал.Пурга\";\"other\"\n\"531426\";\"Малая Пурга\";\"other\"\n\"531426\";\"Пичи Пурга\";\"other\"\n\"531820\";\"Malakhovka\";\"main\"\n\"531820\";\"MALAKHOVKA\";\"other\"\n\"531820\";\"МАЛАХОВКА\";\"other\"\n\"531820\";\"Малаховка\";\"other\"\n\"531979\";\"Maksatikha\";\"main\"\n\"531979\";\"MAKSATIKHA\";\"other\"\n\"531979\";\"МАКСАТИХА\";\"other\"\n\"531979\";\"Максатиха\";\"other\"\n\"532092\";\"Makhalino\";\"main\"\n\"532092\";\"Novyy Kryazhim\";\"other\"\n\"532092\";\"Махалино\";\"other\"\n\"532096\";\"Makhachkala\";\"main\"\n\"532096\";\"Machackala\";\"other\"\n\"532096\";\"Machaczkala\";\"other\"\n\"532096\";\"Machaczkała\";\"other\"\n\"532096\";\"Machatjkala\";\"other\"\n\"532096\";\"Machatsch-Kala\";\"other\"\n\"532096\";\"Machatschkala\";\"other\"\n\"532096\";\"Machatsjkala\";\"other\"\n\"532096\";\"Machačkala\";\"other\"\n\"532096\";\"Mahackala\";\"other\"\n\"532096\";\"Mahatskala\";\"other\"\n\"532096\";\"Mahatškala\";\"other\"\n\"532096\";\"Mahačkala\";\"other\"\n\"532096\";\"Mahhatskala\";\"other\"\n\"532096\";\"Mahhatškala\";\"other\"\n\"532096\";\"MakhIachkhuala\";\"other\"\n\"532096\";\"Makhackala\";\"other\"\n\"532096\";\"Makhatchkala\";\"other\"\n\"532096\";\"Makhatsjkala\";\"other\"\n\"532096\";\"Makhatxkala\";\"other\"\n\"532096\";\"Makhatxkalà\";\"other\"\n\"532096\";\"Makhačkala\";\"other\"\n\"532096\";\"Maĥaĉkala\";\"other\"\n\"532096\";\"Petrovsk\";\"other\"\n\"532096\";\"Petrovsk-Port\";\"other\"\n\"532096\";\"mahachikalla\";\"other\"\n\"532096\";\"mahachikara\";\"other\"\n\"532096\";\"mhz'qlh\";\"other\"\n\"532096\";\"МахIачхъала\";\"other\"\n\"532096\";\"Махачкала\";\"other\"\n\"532096\";\"מחצ'קלה\";\"other\"\n\"532096\";\"マハチカラ\";\"other\"\n\"532096\";\"마하치칼라\";\"other\"\n\"532138\";\"Makar’yev\";\"main\"\n\"532138\";\"Makar'yev\";\"ascii\"\n\"532138\";\"Makarjev\";\"other\"\n\"532138\";\"Makarowo\";\"other\"\n\"532138\";\"Макарьев\";\"other\"\n\"532288\";\"Magnitogorsk\";\"main\"\n\"532288\";\"MAGNITOGORSK\";\"other\"\n\"532288\";\"Magnetogorsk\";\"other\"\n\"532288\";\"mageunitogoleuseukeu\";\"other\"\n\"532288\";\"magunitogorusuku\";\"other\"\n\"532288\";\"mgnytwgwrsq\";\"other\"\n\"532288\";\"МАГНИТОГОРСК\";\"other\"\n\"532288\";\"Магнитогорск\";\"other\"\n\"532288\";\"מגניטוגורסק\";\"other\"\n\"532288\";\"マグニトゴルスク\";\"other\"\n\"532288\";\"마그니토고르스크\";\"other\"\n\"532292\";\"Magnitka\";\"main\"\n\"532292\";\"MAGNITKA\";\"other\"\n\"532292\";\"Titanogorsk\";\"other\"\n\"532292\";\"МАГНИТКА\";\"other\"\n\"532292\";\"Магнитка\";\"other\"\n\"532307\";\"Magaramkent\";\"main\"\n\"532307\";\"Магарамкент\";\"other\"\n\"532314\";\"Madzhalis\";\"main\"\n\"532314\";\"Madzhales\";\"other\"\n\"532314\";\"Madzjalis\";\"other\"\n\"532314\";\"Маджалис\";\"other\"\n\"532459\";\"Lyudinovo\";\"main\"\n\"532459\";\"LJUDINOVO\";\"other\"\n\"532459\";\"Ljudinovo\";\"other\"\n\"532459\";\"ЛЮДИНОВО\";\"other\"\n\"532459\";\"Людиново\";\"other\"\n\"532463\";\"Lyubytino\";\"main\"\n\"532463\";\"Beloye\";\"other\"\n\"532463\";\"LJUBYTINO\";\"other\"\n\"532463\";\"Ljubytino\";\"other\"\n\"532463\";\"ЛЮБЫТИНО\";\"other\"\n\"532477\";\"Lyubuchany\";\"main\"\n\"532477\";\"Ljubutsjany\";\"other\"\n\"532477\";\"Любучаны\";\"other\"\n\"532518\";\"Lyubokhna\";\"main\"\n\"532518\";\"LJUBOKHNA\";\"other\"\n\"532518\";\"Ljubokhna\";\"other\"\n\"532518\";\"ЛЮБОХНА\";\"other\"\n\"532518\";\"Любохна\";\"other\"\n\"532600\";\"Lyubim\";\"main\"\n\"532600\";\"Ljubim\";\"other\"\n\"532600\";\"Любим\";\"other\"\n\"532615\";\"Lyubertsy\";\"main\"\n\"532615\";\"LJUBERCY\";\"other\"\n\"532615\";\"Ljuberzy\";\"other\"\n\"532615\";\"Luberci\";\"other\"\n\"532615\";\"Lubertsi\";\"other\"\n\"532615\";\"ЛЮБЕРЦЫ\";\"other\"\n\"532615\";\"Люберцы\";\"other\"\n\"532637\";\"Lyuban’\";\"main\"\n\"532637\";\"Lyuban'\";\"ascii\"\n\"532637\";\"LJUBAN'\";\"other\"\n\"532637\";\"Ljuban\";\"other\"\n\"532637\";\"ЛЮБАНЬ\";\"other\"\n\"532637\";\"Любань\";\"other\"\n\"532657\";\"Lytkarino\";\"main\"\n\"532657\";\"LYTKARINO\";\"other\"\n\"532657\";\"Lytkorino\";\"other\"\n\"532657\";\"ЛЫТКАРИНО\";\"other\"\n\"532657\";\"Лыткарино\";\"other\"\n\"532664\";\"Lysyye Gory\";\"main\"\n\"532664\";\"LYSYE GORY\";\"other\"\n\"532664\";\"Lisiya Gori\";\"other\"\n\"532664\";\"Lysye Gory\";\"other\"\n\"532664\";\"ЛЫСЫЕ ГОРЫ\";\"other\"\n\"532664\";\"Лысые Горы\";\"other\"\n\"532675\";\"Lys'va\";\"main\"\n\"532675\";\"LYS'VA\";\"other\"\n\"532675\";\"Lysva\";\"other\"\n\"532675\";\"ЛЫСЬВА\";\"other\"\n\"532706\";\"Lysogorskaya\";\"main\"\n\"532706\";\"Lysagorskaya\";\"other\"\n\"532706\";\"Lysogorskaja\";\"other\"\n\"532706\";\"Лысогорская\";\"other\"\n\"532715\";\"Lyskovo\";\"main\"\n\"532715\";\"LYSKOVO\";\"other\"\n\"532715\";\"ЛЫСКОВО\";\"other\"\n\"532715\";\"Лысково\";\"other\"\n\"532825\";\"Lyaskelya\";\"main\"\n\"532825\";\"LJASKELJA\";\"other\"\n\"532825\";\"Laskela\";\"other\"\n\"532825\";\"Ljaskelja\";\"other\"\n\"532825\";\"Läskelä\";\"other\"\n\"532825\";\"ЛЯСКЕЛЯ\";\"other\"\n\"532825\";\"Ляскеля\";\"other\"\n\"532860\";\"Lyangasovo\";\"main\"\n\"532860\";\"LJANGASOVO\";\"other\"\n\"532860\";\"Ljangasovo\";\"other\"\n\"532860\";\"ЛЯНГАСОВО\";\"other\"\n\"532860\";\"Лянгасово\";\"other\"\n\"532887\";\"Lyamino\";\"main\"\n\"532887\";\"LJAMINO\";\"other\"\n\"532887\";\"Ljamino\";\"other\"\n\"532887\";\"ЛЯМИНО\";\"other\"\n\"532895\";\"Lyambir’\";\"main\"\n\"532895\";\"Lyambir'\";\"ascii\"\n\"532895\";\"Ljambir\";\"other\"\n\"532895\";\"Лямбирь\";\"other\"\n\"533008\";\"L’vovskiy\";\"main\"\n\"533008\";\"L'vovskiy\";\"ascii\"\n\"533008\";\"L'vovskaya\";\"other\"\n\"533008\";\"L'vovskoye\";\"other\"\n\"533008\";\"Lvovskij\";\"other\"\n\"533008\";\"L’vovskaya\";\"other\"\n\"533008\";\"L’vovskoye\";\"other\"\n\"533008\";\"Львовский\";\"other\"\n\"533143\";\"Luza\";\"main\"\n\"533143\";\"LUZA\";\"other\"\n\"533143\";\"ЛУЗА\";\"other\"\n\"533143\";\"Луза\";\"other\"\n\"533284\";\"Lunino\";\"main\"\n\"533284\";\"LUNINO\";\"other\"\n\"533284\";\"ЛУНИНО\";\"other\"\n\"533284\";\"Лунино\";\"other\"\n\"533400\";\"Lukoyanov\";\"main\"\n\"533400\";\"Lukojanov\";\"other\"\n\"533400\";\"Lukozanov\";\"other\"\n\"533400\";\"Лукоянов\";\"other\"\n\"533418\";\"Lukovetskiy\";\"main\"\n\"533418\";\"Lukoveckij\";\"other\"\n\"533418\";\"Lukovetskij\";\"other\"\n\"533418\";\"Луковетский\";\"other\"\n\"533418\";\"Луковецкий\";\"other\"\n\"533432\";\"Luknovo\";\"main\"\n\"533432\";\"LUKNOVO\";\"other\"\n\"533432\";\"ЛУКНОВО\";\"other\"\n\"533484\";\"Lukino\";\"main\"\n\"533484\";\"Лукино\";\"other\"\n\"533541\";\"Lukhovka\";\"main\"\n\"533541\";\"LUKHOVKA\";\"other\"\n\"533541\";\"ЛУХОВКА\";\"other\"\n\"533541\";\"Луховка\";\"other\"\n\"533543\";\"Lukhovitsy\";\"main\"\n\"533543\";\"Луховицы\";\"other\"\n\"533555\";\"Lukh\";\"main\"\n\"533555\";\"LUKH\";\"other\"\n\"533555\";\"ЛУХ\";\"other\"\n\"533555\";\"Лух\";\"other\"\n\"533651\";\"Lugovaya\";\"main\"\n\"533651\";\"LUGOVAJA\";\"other\"\n\"533651\";\"Lugovaja\";\"other\"\n\"533651\";\"Lugovoy\";\"other\"\n\"533651\";\"ЛУГОВАЯ\";\"other\"\n\"533651\";\"Луговая\";\"other\"\n\"533690\";\"Luga\";\"main\"\n\"533690\";\"LUGA\";\"other\"\n\"533690\";\"ЛУГА\";\"other\"\n\"533690\";\"Луга\";\"other\"\n\"533793\";\"Lubyany\";\"main\"\n\"533793\";\"LUBJANY\";\"other\"\n\"533793\";\"Lubjany\";\"other\"\n\"533793\";\"ЛУБЯНЫ\";\"other\"\n\"533793\";\"Лубяны\";\"other\"\n\"533916\";\"Loyga\";\"main\"\n\"533916\";\"LOJGA\";\"other\"\n\"533916\";\"Lojga\";\"other\"\n\"533916\";\"ЛОЙГА\";\"other\"\n\"533916\";\"Лойга\";\"other\"\n\"533933\";\"Lovozero\";\"main\"\n\"533933\";\"Lovozerskiy Pogost\";\"other\"\n\"533933\";\"Lowosero\";\"other\"\n\"533933\";\"Ловозеро\";\"other\"\n\"533964\";\"Loukhi\";\"main\"\n\"533964\";\"LOUKHI\";\"other\"\n\"533964\";\"Louchi\";\"other\"\n\"533964\";\"Louhi\";\"other\"\n\"533964\";\"ЛОУХИ\";\"other\"\n\"533964\";\"Лоухи\";\"other\"\n\"533975\";\"Lotoshino\";\"main\"\n\"533975\";\"Latashino\";\"other\"\n\"533975\";\"Lotosjino\";\"other\"\n\"533975\";\"Лотошино\";\"other\"\n\"534015\";\"Losino-Petrovskiy\";\"main\"\n\"534015\";\"Losino-Petrovskij\";\"other\"\n\"534015\";\"Лосино-Петровский\";\"other\"\n\"534073\";\"Losevo\";\"main\"\n\"534073\";\"Losewo\";\"other\"\n\"534073\";\"Лосево\";\"other\"\n\"534174\";\"Lopatinskiy\";\"main\"\n\"534174\";\"Dvoriki\";\"other\"\n\"534174\";\"Lopatinskij\";\"other\"\n\"534174\";\"Lopatinskiy Rudnik\";\"other\"\n\"534174\";\"Лопатинский\";\"other\"\n\"534206\";\"Lopatino\";\"main\"\n\"534206\";\"Лопатино\";\"other\"\n\"534245\";\"Lopandino\";\"main\"\n\"534245\";\"LOPANDINO\";\"other\"\n\"534245\";\"Lopandin\";\"other\"\n\"534245\";\"ЛОПАНДИНО\";\"other\"\n\"534245\";\"Лопандино\";\"other\"\n\"534313\";\"Lomovka\";\"main\"\n\"534313\";\"LOMOVKA\";\"other\"\n\"534313\";\"ЛОМОВКА\";\"other\"\n\"534313\";\"Ломовка\";\"other\"\n\"534341\";\"Lomonosov\";\"main\"\n\"534341\";\"Kaarosta\";\"other\"\n\"534341\";\"LOMONOSOV\";\"other\"\n\"534341\";\"Lomonosob\";\"other\"\n\"534341\";\"Lomonossov\";\"other\"\n\"534341\";\"Lomonossow\";\"other\"\n\"534341\";\"Oranienbaum\";\"other\"\n\"534341\";\"Oraniyenbaum\";\"other\"\n\"534341\";\"lomonosopeu\";\"other\"\n\"534341\";\"romonosofu\";\"other\"\n\"534341\";\"Λομονόσοβ\";\"other\"\n\"534341\";\"ЛОМОНОСОВ\";\"other\"\n\"534341\";\"Ломоносов\";\"other\"\n\"534341\";\"ロモノソフ\";\"other\"\n\"534341\";\"로모노소프\";\"other\"\n\"534352\";\"Lomintsevskiy\";\"main\"\n\"534352\";\"LOMINCEVSKIJ\";\"other\"\n\"534352\";\"Lomintsevskij\";\"other\"\n\"534352\";\"ЛОМИНЦЕВСКИЙ\";\"other\"\n\"534352\";\"Ломинцевский\";\"other\"\n\"534413\";\"Lokot’\";\"main\"\n\"534413\";\"Lokot'\";\"ascii\"\n\"534413\";\"Lokot\";\"other\"\n\"534413\";\"Локоть\";\"other\"\n\"534423\";\"Loknya\";\"main\"\n\"534423\";\"LOKNJA\";\"other\"\n\"534423\";\"Loknja\";\"other\"\n\"534423\";\"ЛОКНЯ\";\"other\"\n\"534423\";\"Локня\";\"other\"\n\"534538\";\"Log\";\"main\"\n\"534538\";\"LOG\";\"other\"\n\"534538\";\"Logovskiy\";\"other\"\n\"534538\";\"ЛОГ\";\"other\"\n\"534538\";\"Лог\";\"other\"\n\"534560\";\"Lodeynoye Pole\";\"main\"\n\"534560\";\"LODEJNOE POLE\";\"other\"\n\"534560\";\"Lodeinoje Pole\";\"other\"\n\"534560\";\"Lodejnoje Pole\";\"other\"\n\"534560\";\"Lodeyana\";\"other\"\n\"534560\";\"ЛОДЕЙНОЕ ПОЛЕ\";\"other\"\n\"534560\";\"Лодейное Поле\";\"other\"\n\"534595\";\"Lobnya\";\"main\"\n\"534595\";\"Krasnaya Polyana\";\"other\"\n\"534595\";\"LOBNJA\";\"other\"\n\"534595\";\"Lobnja\";\"other\"\n\"534595\";\"ЛОБНЯ\";\"other\"\n\"534595\";\"Лобня\";\"other\"\n\"534639\";\"Lobanovo\";\"main\"\n\"534639\";\"Лобаново\";\"other\"\n\"534701\";\"Livny\";\"main\"\n\"534701\";\"LIVNY\";\"other\"\n\"534701\";\"Liwny\";\"other\"\n\"534701\";\"ЛИВНЫ\";\"other\"\n\"534701\";\"Ливны\";\"other\"\n\"534717\";\"Livenka\";\"main\"\n\"534717\";\"Ливенка\";\"other\"\n\"534838\";\"Liski\";\"main\"\n\"534838\";\"Georgiu-Dezh\";\"other\"\n\"534838\";\"Novopokrovka\";\"other\"\n\"534838\";\"Svoboda\";\"other\"\n\"534838\";\"Лиски\";\"other\"\n\"534841\";\"Lisiy Nos\";\"main\"\n\"534841\";\"Lissijnos\";\"other\"\n\"534841\";\"Valdimirovka\";\"other\"\n\"534841\";\"Vladimirovka\";\"other\"\n\"534841\";\"Лисий Нос\";\"other\"\n\"535113\";\"Lipin Bor\";\"main\"\n\"535113\";\"Липин Бор\";\"other\"\n\"535121\";\"Lipetsk\";\"main\"\n\"535121\";\"Lipeck\";\"other\"\n\"535121\";\"Lipezk\";\"other\"\n\"535121\";\"Lipieck\";\"other\"\n\"535121\";\"lipecheukeu\";\"other\"\n\"535121\";\"Липецк\";\"other\"\n\"535121\";\"리페츠크\";\"other\"\n\"535183\";\"Linda\";\"main\"\n\"535183\";\"Линда\";\"other\"\n\"535229\";\"Liman\";\"main\"\n\"535229\";\"Dolban\";\"other\"\n\"535229\";\"LIMAN\";\"other\"\n\"535229\";\"ЛИМАН\";\"other\"\n\"535229\";\"Лиман\";\"other\"\n\"535243\";\"Likino-Dulevo\";\"main\"\n\"535243\";\"Dulevo\";\"other\"\n\"535243\";\"Ликино-Дулево\";\"other\"\n\"535253\";\"Likhoy\";\"main\"\n\"535253\";\"Лихой\";\"other\"\n\"535254\";\"Likhovskoy\";\"main\"\n\"535254\";\"LIKHOVSKOJ\";\"other\"\n\"535254\";\"Lichaja\";\"other\"\n\"535254\";\"Likhaya\";\"other\"\n\"535254\";\"Likhoj\";\"other\"\n\"535254\";\"Likhovskiy\";\"other\"\n\"535254\";\"Likhoy\";\"other\"\n\"535254\";\"ЛИХОВСКОЙ\";\"other\"\n\"535254\";\"Лиховской\";\"other\"\n\"535254\";\"Лихой\";\"other\"\n\"535261\";\"Likhoslavl’\";\"main\"\n\"535261\";\"Likhoslavl'\";\"ascii\"\n\"535261\";\"LIKHOSLAVL'\";\"other\"\n\"535261\";\"Likhoslavl\";\"other\"\n\"535261\";\"ЛИХОСЛАВЛЬ\";\"other\"\n\"535261\";\"Лихославль\";\"other\"\n\"535334\";\"L’govskiy\";\"main\"\n\"535334\";\"L'govskiy\";\"ascii\"\n\"535334\";\"L'gov\";\"other\"\n\"535334\";\"Lgov\";\"other\"\n\"535334\";\"Льгов\";\"other\"\n\"535334\";\"Льговский\";\"other\"\n\"535366\";\"Lezhnevo\";\"main\"\n\"535366\";\"LEZHNEVO\";\"other\"\n\"535366\";\"Lezjnevo\";\"other\"\n\"535366\";\"ЛЕЖНЕВО\";\"other\"\n\"535366\";\"Лежнево\";\"other\"\n\"535417\";\"Lev Tolstoy\";\"main\"\n\"535417\";\"Astapovo\";\"other\"\n\"535417\";\"LEV TOLSTOJ\";\"other\"\n\"535417\";\"Lev Tolstoi\";\"other\"\n\"535417\";\"Lev Tolstoj\";\"other\"\n\"535417\";\"ЛЕВ ТОЛСТОЙ\";\"other\"\n\"535417\";\"Лев Толстой\";\"other\"\n\"535438\";\"Levokumskoye\";\"main\"\n\"535438\";\"Levokumskoje\";\"other\"\n\"535438\";\"Левокумское\";\"other\"\n\"535440\";\"Levokumka\";\"main\"\n\"535440\";\"Levokumskiy\";\"other\"\n\"535440\";\"Левокумка\";\"other\"\n\"535505\";\"Levikha\";\"main\"\n\"535505\";\"LEVIKHA\";\"other\"\n\"535505\";\"ЛЕВИХА\";\"other\"\n\"535505\";\"Левиха\";\"other\"\n\"535542\";\"Levashi\";\"main\"\n\"535542\";\"Levasji\";\"other\"\n\"535542\";\"Леваши\";\"other\"\n\"535544\";\"Levashovo\";\"main\"\n\"535544\";\"LEVASHOVO\";\"other\"\n\"535544\";\"Levashevo\";\"other\"\n\"535544\";\"Levasjovo\";\"other\"\n\"535544\";\"Levshovo\";\"other\"\n\"535544\";\"Lewaschewo\";\"other\"\n\"535544\";\"ЛЕВАШОВО\";\"other\"\n\"535544\";\"Левашово\";\"other\"\n\"535605\";\"Letnyaya Stavka\";\"main\"\n\"535605\";\"Letnjaja Stavka\";\"other\"\n\"535605\";\"Летняя Ставка\";\"other\"\n\"535625\";\"Letnik\";\"main\"\n\"535625\";\"Letniki\";\"other\"\n\"535625\";\"Letnitskoye\";\"other\"\n\"535625\";\"Letnytskoye\";\"other\"\n\"535625\";\"Летник\";\"other\"\n\"535639\";\"Letka\";\"main\"\n\"535639\";\"Летка\";\"other\"\n\"535670\";\"Lesogorskiy\";\"main\"\n\"535670\";\"Iaski\";\"other\"\n\"535670\";\"Jaeaeski\";\"other\"\n\"535670\";\"Jääski\";\"other\"\n\"535670\";\"LESOGORSKIJ\";\"other\"\n\"535670\";\"Lesogorskij\";\"other\"\n\"535670\";\"Yaski\";\"other\"\n\"535670\";\"Yayaski\";\"other\"\n\"535670\";\"ЛЕСОГОРСКИЙ\";\"other\"\n\"535670\";\"Лесогорский\";\"other\"\n\"535672\";\"Lesogorsk\";\"main\"\n\"535672\";\"LESOGORSK\";\"other\"\n\"535672\";\"ЛЕСОГОРСК\";\"other\"\n\"535672\";\"Лесогорск\";\"other\"\n\"535678\";\"Lesnyye Polyany\";\"main\"\n\"535678\";\"LESNYE POLJANY\";\"other\"\n\"535678\";\"Lesnye Poljany\";\"other\"\n\"535678\";\"ЛЕСНЫЕ ПОЛЯНЫ\";\"other\"\n\"535678\";\"Лесные Поляны\";\"other\"\n\"535679\";\"Lesnyye Polyany\";\"main\"\n\"535679\";\"Lesnye Poljany\";\"other\"\n\"535679\";\"Лесные Поляны\";\"other\"\n\"535695\";\"Lesnoy Gorodok\";\"main\"\n\"535695\";\"Lesnoj Gorodok\";\"other\"\n\"535695\";\"Лесной Городок\";\"other\"\n\"535711\";\"Lesnoye\";\"main\"\n\"535711\";\"Lesnoje\";\"other\"\n\"535711\";\"Лесное\";\"other\"\n\"535734\";\"Lesnoy\";\"main\"\n\"535734\";\"LESNOJ\";\"other\"\n\"535734\";\"Lesnoj\";\"other\"\n\"535734\";\"Lesnoye\";\"other\"\n\"535734\";\"ЛЕСНОЙ\";\"other\"\n\"535734\";\"Лесной\";\"other\"\n\"535741\";\"Lesnoy\";\"main\"\n\"535741\";\"LESNOJ\";\"other\"\n\"535741\";\"Lesnoj\";\"other\"\n\"535741\";\"ЛЕСНОЙ\";\"other\"\n\"535741\";\"Лесной\";\"other\"\n\"535744\";\"Lesnoy\";\"main\"\n\"535744\";\"LESNOJ\";\"other\"\n\"535744\";\"Lesnoj\";\"other\"\n\"535744\";\"ЛЕСНОЙ\";\"other\"\n\"535744\";\"Лесной\";\"other\"\n\"535806\";\"Leskolovo\";\"main\"\n\"535806\";\"Лесколово\";\"other\"\n\"535839\";\"Leshukonskoye\";\"main\"\n\"535839\";\"Leschukonskaja\";\"other\"\n\"535839\";\"Leshukonskoe\";\"other\"\n\"535839\";\"Lesjukonskoje\";\"other\"\n\"535839\";\"Лешуконское\";\"other\"\n\"535886\";\"Lermontov\";\"main\"\n\"535886\";\"LERMONTOV\";\"other\"\n\"535886\";\"Lermontovskiy\";\"other\"\n\"535886\";\"Lumontov\";\"other\"\n\"535886\";\"ЛЕРМОНТОВ\";\"other\"\n\"535886\";\"Лермонтов\";\"other\"\n\"536035\";\"Leninskoye\";\"main\"\n\"536035\";\"LENINSKOE\";\"other\"\n\"536035\";\"Leninskiy\";\"other\"\n\"536035\";\"Leninskoje\";\"other\"\n\"536035\";\"ЛЕНИНСКОЕ\";\"other\"\n\"536035\";\"Ленинское\";\"other\"\n\"536111\";\"Leninskiy\";\"main\"\n\"536111\";\"LENINSKIJ\";\"other\"\n\"536111\";\"Leninskij\";\"other\"\n\"536111\";\"ЛЕНИНСКИЙ\";\"other\"\n\"536155\";\"Leninsk\";\"main\"\n\"536155\";\"LENINSK\";\"other\"\n\"536155\";\"Leninskiy\";\"other\"\n\"536155\";\"ЛЕНИНСК\";\"other\"\n\"536155\";\"Ленинск\";\"other\"\n\"536156\";\"Leninsk\";\"main\"\n\"536156\";\"LENINSK\";\"other\"\n\"536156\";\"Leninskiy\";\"other\"\n\"536156\";\"Leninskoje\";\"other\"\n\"536156\";\"ЛЕНИНСК\";\"other\"\n\"536156\";\"Ленинск\";\"other\"\n\"536162\";\"Leninogorsk\";\"main\"\n\"536162\";\"LENINOGORSK\";\"other\"\n\"536162\";\"Novaya Pis'menka\";\"other\"\n\"536162\";\"Novaya Pis'myanka\";\"other\"\n\"536162\";\"Novaya Pis’menka\";\"other\"\n\"536162\";\"Novaya Pis’myanka\";\"other\"\n\"536162\";\"Novopis'myanka\";\"other\"\n\"536162\";\"Novopis’myanka\";\"other\"\n\"536162\";\"ЛЕНИНОГОРСК\";\"other\"\n\"536162\";\"Лениногорск\";\"other\"\n\"536186\";\"Leninkent\";\"main\"\n\"536186\";\"LENINKENT\";\"other\"\n\"536186\";\"ЛЕНИНКЕНТ\";\"other\"\n\"536186\";\"Ленинкент\";\"other\"\n\"536200\";\"Leningradskaya\";\"main\"\n\"536200\";\"Leningradskaja\";\"other\"\n\"536200\";\"Umanskaya\";\"other\"\n\"536200\";\"Ленинградская\";\"other\"\n\"536206\";\"Yubileyny\";\"main\"\n\"536206\";\"Jubilejnyj\";\"other\"\n\"536206\";\"Юбилейный\";\"other\"\n\"536209\";\"Leninaul\";\"main\"\n\"536209\";\"Aktash-Aukh\";\"other\"\n\"536209\";\"Aktash-Aul\";\"other\"\n\"536209\";\"Lenin-Aul\";\"other\"\n\"536209\";\"Stalinaul\";\"other\"\n\"536209\";\"Ленин-Аул\";\"other\"\n\"536209\";\"Ленинаул\";\"other\"\n\"536219\";\"Lenina\";\"main\"\n\"536219\";\"Imeni Lenina\";\"other\"\n\"536219\";\"Ленина\";\"other\"\n\"536440\";\"Lechinkay\";\"main\"\n\"536440\";\"Lechinkaya\";\"other\"\n\"536440\";\"Letsjinkaj\";\"other\"\n\"536440\";\"Лечинкай\";\"other\"\n\"536466\";\"Lebyazh’ye\";\"main\"\n\"536466\";\"Lebyazh'ye\";\"ascii\"\n\"536466\";\"LEBJAZH'E\";\"other\"\n\"536466\";\"Lebjashe\";\"other\"\n\"536466\";\"Lebjazh'e\";\"other\"\n\"536466\";\"ЛЕБЯЖЬЕ\";\"other\"\n\"536466\";\"Лебяжье\";\"other\"\n\"536518\";\"Lebedyan’\";\"main\"\n\"536518\";\"Lebedyan'\";\"ascii\"\n\"536518\";\"LEBEDJAN'\";\"other\"\n\"536518\";\"Lebedjan\";\"other\"\n\"536518\";\"ЛЕБЕДЯНЬ\";\"other\"\n\"536518\";\"Лебедянь\";\"other\"\n\"536625\";\"Lazarevskoye\";\"main\"\n\"536625\";\"LAZAREVSKOE\";\"other\"\n\"536625\";\"Lasarewskaja\";\"other\"\n\"536625\";\"Lazarevskaya\";\"other\"\n\"536625\";\"Lazarevskoje\";\"other\"\n\"536625\";\"ЛАЗАРЕВСКОЕ\";\"other\"\n\"536625\";\"Лазаревское\";\"other\"\n\"536818\";\"Latnaya\";\"main\"\n\"536818\";\"Латная\";\"other\"\n\"536857\";\"Lashma\";\"main\"\n\"536857\";\"LASHMA\";\"other\"\n\"536857\";\"Lasjma\";\"other\"\n\"536857\";\"ЛАШМА\";\"other\"\n\"536857\";\"Лашма\";\"other\"\n\"537094\";\"Lal’sk\";\"main\"\n\"537094\";\"Lal'sk\";\"ascii\"\n\"537094\";\"Lalsk\";\"other\"\n\"537094\";\"Лальск\";\"other\"\n\"537107\";\"Lakinsk\";\"main\"\n\"537107\";\"LAKINSK\";\"other\"\n\"537107\";\"Lakinskiy\";\"other\"\n\"537107\";\"ЛАКИНСК\";\"other\"\n\"537107\";\"Лакинск\";\"other\"\n\"537147\";\"Lakhdenpokh’ya\";\"main\"\n\"537147\";\"Lakhdenpokh'ya\";\"ascii\"\n\"537147\";\"LAKHDENPOKH'JA\";\"other\"\n\"537147\";\"Lahdenpohja\";\"other\"\n\"537147\";\"Lakhdenpokhja\";\"other\"\n\"537147\";\"ЛАХДЕНПОХЬЯ\";\"other\"\n\"537147\";\"Лахденпохья\";\"other\"\n\"537158\";\"Laishevo\";\"main\"\n\"537158\";\"LAPSHEVO\";\"other\"\n\"537158\";\"Laishev\";\"other\"\n\"537158\";\"Lalshevo\";\"other\"\n\"537158\";\"Lapshevo\";\"other\"\n\"537158\";\"ЛАПШЕВО\";\"other\"\n\"537158\";\"Лаишево\";\"other\"\n\"537229\";\"Ladushkin\";\"main\"\n\"537229\";\"LADUSHKIN\";\"other\"\n\"537229\";\"Ladusjkin\";\"other\"\n\"537229\";\"Laduskin\";\"other\"\n\"537229\";\"Laduškin\";\"other\"\n\"537229\";\"Ludwigsort\";\"other\"\n\"537229\";\"Lyudvigsort\";\"other\"\n\"537229\";\"ЛАДУШКИН\";\"other\"\n\"537229\";\"Ладушкин\";\"other\"\n\"537235\";\"Ladozhskaya\";\"main\"\n\"537235\";\"Ladoshskaja\";\"other\"\n\"537235\";\"Ladozjskaja\";\"other\"\n\"537235\";\"Ладожская\";\"other\"\n\"537238\";\"Ladovskaya Balka\";\"main\"\n\"537238\";\"Lad-Balka\";\"other\"\n\"537238\";\"Ladovskaja Balka\";\"other\"\n\"537238\";\"Ladovsko-Balkovskoye\";\"other\"\n\"537238\";\"Ладовская Балка\";\"other\"\n\"537281\";\"Labinsk\";\"main\"\n\"537281\";\"LABINSK\";\"other\"\n\"537281\";\"Labinskaja\";\"other\"\n\"537281\";\"Labinskaya\";\"other\"\n\"537281\";\"labinseukeu\";\"other\"\n\"537281\";\"ЛАБИНСК\";\"other\"\n\"537281\";\"Лабинск\";\"other\"\n\"537281\";\"라빈스크\";\"other\"\n\"537326\";\"Kyzyl-Oktyabr’skiy\";\"main\"\n\"537326\";\"Kyzyl-Oktyabr'skiy\";\"ascii\"\n\"537326\";\"Krasnyy Oktyabr'\";\"other\"\n\"537326\";\"Krasnyy Oktyabr’\";\"other\"\n\"537326\";\"Kyzyl-Oktyabr'\";\"other\"\n\"537326\";\"Kyzyl-Oktyabr’\";\"other\"\n\"537344\";\"Islamey\";\"main\"\n\"537344\";\"Islamej\";\"other\"\n\"537344\";\"Kyzburun Vtoroy\";\"other\"\n\"537344\";\"Исламей\";\"other\"\n\"537345\";\"Dugulubgey\";\"main\"\n\"537345\";\"Dugulubgej\";\"other\"\n\"537345\";\"Kyzburun Tretiy\";\"other\"\n\"537345\";\"Дугулубгей\";\"other\"\n\"537346\";\"Kyzburun Pervyy\";\"main\"\n\"537346\";\"Kysburun\";\"other\"\n\"537346\";\"Kyzburun Pervyj\";\"other\"\n\"537346\";\"Кызбурун Первый\";\"other\"\n\"537508\";\"Kyakhulay\";\"main\"\n\"537508\";\"Kjakhulaj\";\"other\"\n\"537508\";\"Кяхулай\";\"other\"\n\"537541\";\"Kvarkeno\";\"main\"\n\"537541\";\"Кваркено\";\"other\"\n\"537598\";\"Kuzovatovo\";\"main\"\n\"537598\";\"Vtoroye Kuzovatovo\";\"other\"\n\"537598\";\"Кузоватово\";\"other\"\n\"537737\";\"Kuznetsk\";\"main\"\n\"537737\";\"KUZNECK\";\"other\"\n\"537737\";\"Kusnezk\";\"other\"\n\"537737\";\"КУЗНЕЦК\";\"other\"\n\"537737\";\"Кузнецк\";\"other\"\n\"537740\";\"Kuznechnoye\";\"main\"\n\"537740\";\"KUZNECHNOE\";\"other\"\n\"537740\";\"Kaarlahti\";\"other\"\n\"537740\";\"Kaarlakhti\";\"other\"\n\"537740\";\"Karlakhti\";\"other\"\n\"537740\";\"Kuznetsjnoje\";\"other\"\n\"537740\";\"КУЗНЕЧНОЕ\";\"other\"\n\"537740\";\"Кузнечное\";\"other\"\n\"537760\";\"Kuznechikha\";\"main\"\n\"537760\";\"Kuznetsjikha\";\"other\"\n\"537760\";\"Кузнечиха\";\"other\"\n\"537888\";\"Kuzino\";\"main\"\n\"537888\";\"Кузино\";\"other\"\n\"537893\";\"Kuzino\";\"main\"\n\"537893\";\"KUZINO\";\"other\"\n\"537893\";\"КУЗИНО\";\"other\"\n\"537893\";\"Кузино\";\"other\"\n\"537915\";\"Kuzhorskaya\";\"main\"\n\"537915\";\"Kuzjorskaja\";\"other\"\n\"537915\";\"Кужорская\";\"other\"\n\"537935\";\"Kuzhenkino\";\"main\"\n\"537935\";\"Куженкино\";\"other\"\n\"537939\";\"Kuzhener\";\"main\"\n\"537939\";\"KUZHENER\";\"other\"\n\"537939\";\"Kuzjener\";\"other\"\n\"537939\";\"КУЖЕНЕР\";\"other\"\n\"537939\";\"Куженер\";\"other\"\n\"538046\";\"Kuyeda\";\"main\"\n\"538046\";\"KUEDA\";\"other\"\n\"538046\";\"Kueda\";\"other\"\n\"538046\";\"Kujeda\";\"other\"\n\"538046\";\"КУЕДА\";\"other\"\n\"538049\";\"Kuybyshevskiy Zaton\";\"main\"\n\"538049\";\"Kujbysjevskij-Zaton\";\"other\"\n\"538049\";\"Kuybyshev-Zaton\";\"other\"\n\"538049\";\"Spasskin Zaton\";\"other\"\n\"538049\";\"Spasskiy Zaton\";\"other\"\n\"538049\";\"Куйбышевский Затон\";\"other\"\n\"538061\";\"Kuybyshevo\";\"main\"\n\"538061\";\"Golodayevka\";\"other\"\n\"538061\";\"Golodayevskoye\";\"other\"\n\"538061\";\"Kujbysjevo\";\"other\"\n\"538061\";\"Куйбышево\";\"other\"\n\"538104\";\"Kuvshinovo\";\"main\"\n\"538104\";\"Kamenka\";\"other\"\n\"538104\";\"Kuvsjinovo\";\"other\"\n\"538104\";\"Kuwschinowo\";\"other\"\n\"538104\";\"Кувшиново\";\"other\"\n\"538138\";\"Kuvandyk\";\"main\"\n\"538138\";\"KUVANDYK\";\"other\"\n\"538138\";\"КУВАНДЫК\";\"other\"\n\"538138\";\"Кувандык\";\"other\"\n\"538340\";\"Kushva\";\"main\"\n\"538340\";\"KUSHVA\";\"other\"\n\"538340\";\"Kusjva\";\"other\"\n\"538340\";\"КУШВА\";\"other\"\n\"538340\";\"Кушва\";\"other\"\n\"538368\";\"Kushnarënkovo\";\"main\"\n\"538368\";\"Kushnarenkovo\";\"ascii\"\n\"538368\";\"Kusharenkovo\";\"other\"\n\"538368\";\"Kusjnarenkovo\";\"other\"\n\"538368\";\"Topornino\";\"other\"\n\"538368\";\"Кушнаренково\";\"other\"\n\"538368\";\"Кушнарёнково\";\"other\"\n\"538416\";\"Kushchëvskaya\";\"main\"\n\"538416\";\"Kushchevskaya\";\"ascii\"\n\"538416\";\"Kuschewskaja\";\"other\"\n\"538416\";\"Kuschtschewskaja\";\"other\"\n\"538416\";\"Kushhevskaja\";\"other\"\n\"538416\";\"Kusjtsjevskaja\";\"other\"\n\"538416\";\"Кущевская\";\"other\"\n\"538416\";\"Кущёвская\";\"other\"\n\"538442\";\"Kusa\";\"main\"\n\"538442\";\"KUSA\";\"other\"\n\"538442\";\"КУСА\";\"other\"\n\"538442\";\"Куса\";\"other\"\n\"538505\";\"Kurush\";\"main\"\n\"538505\";\"Kaler\";\"other\"\n\"538505\";\"Kurusj\";\"other\"\n\"538505\";\"Куруш\";\"other\"\n\"538508\";\"Kurumoch\";\"main\"\n\"538508\";\"Kurumotsj\";\"other\"\n\"538508\";\"Курумоч\";\"other\"\n\"538558\";\"Kurskaya\";\"main\"\n\"538558\";\"Kurskaja\";\"other\"\n\"538558\";\"Курская\";\"other\"\n\"538560\";\"Kursk\";\"main\"\n\"538560\";\"Koersk\";\"other\"\n\"538560\";\"Koursk\";\"other\"\n\"538560\";\"Kurs'k\";\"other\"\n\"538560\";\"Kurskas\";\"other\"\n\"538560\";\"Kúrsk\";\"other\"\n\"538560\";\"ku er si ke\";\"other\"\n\"538560\";\"kuleuseukeu\";\"other\"\n\"538560\";\"kurusuku\";\"other\"\n\"538560\";\"Курск\";\"other\"\n\"538560\";\"Курськ\";\"other\"\n\"538560\";\"クルスク\";\"other\"\n\"538560\";\"库尔斯克\";\"other\"\n\"538560\";\"庫爾斯克\";\"other\"\n\"538560\";\"쿠르스크\";\"other\"\n\"538582\";\"Kursavka\";\"main\"\n\"538582\";\"Kurshava\";\"other\"\n\"538582\";\"Kurshavka\";\"other\"\n\"538582\";\"Курсавка\";\"other\"\n\"538582\";\"Куршава\";\"other\"\n\"538601\";\"Kurovskoye\";\"main\"\n\"538601\";\"KUROVSKOE\";\"other\"\n\"538601\";\"Kuovskaya\";\"other\"\n\"538601\";\"Kurovskaya\";\"other\"\n\"538601\";\"Kurovskoje\";\"other\"\n\"538601\";\"КУРОВСКОЕ\";\"other\"\n\"538601\";\"Куровское\";\"other\"\n\"538685\";\"Kurmanayevka\";\"main\"\n\"538685\";\"Kurmanajevka\";\"other\"\n\"538685\";\"Kurmanayevo\";\"other\"\n\"538685\";\"Курманаевка\";\"other\"\n\"538696\";\"Kurlovo\";\"main\"\n\"538696\";\"Курлово\";\"other\"\n\"538711\";\"Nizhniy Kurkuzhin\";\"main\"\n\"538711\";\"Kurkuzhin\";\"other\"\n\"538711\";\"Nizjnij Kurkuzjin\";\"other\"\n\"538711\";\"Нижний Куркужин\";\"other\"\n\"538733\";\"Kurkino\";\"main\"\n\"538733\";\"KURKINO\";\"other\"\n\"538733\";\"Kourkino\";\"other\"\n\"538733\";\"КУРКИНО\";\"other\"\n\"538733\";\"Куркино\";\"other\"\n\"538739\";\"Kurkent\";\"main\"\n\"538739\";\"Куркент\";\"other\"\n\"538836\";\"Kurganinsk\";\"main\"\n\"538836\";\"KURGANINSK\";\"other\"\n\"538836\";\"Kurgannaja\";\"other\"\n\"538836\";\"Kurgannaya\";\"other\"\n\"538836\";\"КУРГАНИНСК\";\"other\"\n\"538836\";\"Курганинск\";\"other\"\n\"538879\";\"Kurdzhinovo\";\"main\"\n\"538879\";\"KURDZHINOVO\";\"other\"\n\"538879\";\"Kurdzjinovo\";\"other\"\n\"538879\";\"КУРДЖИНОВО\";\"other\"\n\"538879\";\"Курджиново\";\"other\"\n\"538908\";\"Kurchatov\";\"main\"\n\"538908\";\"KURCHATOV\";\"other\"\n\"538908\";\"Kurtsjatov\";\"other\"\n\"538908\";\"КУРЧАТОВ\";\"other\"\n\"538908\";\"Курчатов\";\"other\"\n\"538913\";\"Kurchaloy\";\"main\"\n\"538913\";\"Chkalovo\";\"other\"\n\"538913\";\"Kurcaloyn-Avla\";\"other\"\n\"538913\";\"Kurchaloj\";\"other\"\n\"538913\";\"Kurcula\";\"other\"\n\"538913\";\"Kurtsjaloj\";\"other\"\n\"538913\";\"Kurçaloyn-Əvla\";\"other\"\n\"538913\";\"Kurçula\";\"other\"\n\"538913\";\"Курчалой\";\"other\"\n\"538937\";\"Kurba\";\"main\"\n\"538937\";\"Курба\";\"other\"\n\"538994\";\"Kurakh\";\"main\"\n\"538994\";\"Курах\";\"other\"\n\"539147\";\"Kungur\";\"main\"\n\"539147\";\"KUNGUR\";\"other\"\n\"539147\";\"kung-guleu\";\"other\"\n\"539147\";\"kunguleu\";\"other\"\n\"539147\";\"КУНГУР\";\"other\"\n\"539147\";\"Кунгур\";\"other\"\n\"539147\";\"쿤구르\";\"other\"\n\"539147\";\"쿵구르\";\"other\"\n\"539218\";\"Kumysh\";\"main\"\n\"539218\";\"Kumysj\";\"other\"\n\"539218\";\"Podgornoye\";\"other\"\n\"539218\";\"Кумыш\";\"other\"\n\"539221\";\"Kumylzhenskaya\";\"main\"\n\"539221\";\"KUMYLZHENSKAJA\";\"other\"\n\"539221\";\"Kumilzhenskaya\";\"other\"\n\"539221\";\"Kumylzjenskaja\";\"other\"\n\"539221\";\"КУМЫЛЖЕНСКАЯ\";\"other\"\n\"539221\";\"Кумылженская\";\"other\"\n\"539233\";\"Kumukh\";\"main\"\n\"539233\";\"Кумух\";\"other\"\n\"539283\";\"Kumertau\";\"main\"\n\"539283\";\"KUMERTAU\";\"other\"\n\"539283\";\"КУМЕРТАУ\";\"other\"\n\"539283\";\"Кумертау\";\"other\"\n\"539284\";\"Kumëny\";\"main\"\n\"539284\";\"Kumeny\";\"ascii\"\n\"539284\";\"KUMENY\";\"other\"\n\"539284\";\"КУМЕНЫ\";\"other\"\n\"539284\";\"Кумёны\";\"other\"\n\"539369\";\"Kultayevo\";\"main\"\n\"539369\";\"Kultaevo\";\"other\"\n\"539369\";\"Kultajevo\";\"other\"\n\"539369\";\"Култаево\";\"other\"\n\"539385\";\"Kuloy\";\"main\"\n\"539385\";\"KULOJ\";\"other\"\n\"539385\";\"Kuloj\";\"other\"\n\"539385\";\"КУЛОЙ\";\"other\"\n\"539385\";\"Кулой\";\"other\"\n\"539389\";\"Kulotino\";\"main\"\n\"539389\";\"KULOTINO\";\"other\"\n\"539389\";\"КУЛОТИНО\";\"other\"\n\"539511\";\"Kuli\";\"main\"\n\"539511\";\"Kuly\";\"other\"\n\"539511\";\"Кули\";\"other\"\n\"539537\";\"Kuleshovka\";\"main\"\n\"539537\";\"Kulesjovka\";\"other\"\n\"539537\";\"Kulischewka\";\"other\"\n\"539537\";\"Кулешовка\";\"other\"\n\"539555\";\"Kulebaki\";\"main\"\n\"539555\";\"KULEBAKI\";\"other\"\n\"539555\";\"КУЛЕБАКИ\";\"other\"\n\"539578\";\"Kulary\";\"main\"\n\"539578\";\"Kulari\";\"other\"\n\"539578\";\"Naberezhnoye\";\"other\"\n\"539578\";\"Кулары\";\"other\"\n\"539640\";\"Kukushtan\";\"main\"\n\"539640\";\"KUKUSHTAN\";\"other\"\n\"539640\";\"Kukusjtan\";\"other\"\n\"539640\";\"КУКУШТАН\";\"other\"\n\"539684\";\"Kukoboy\";\"main\"\n\"539684\";\"Bukoboy\";\"other\"\n\"539684\";\"Kukoboj\";\"other\"\n\"539684\";\"Кукобой\";\"other\"\n\"539689\";\"Kukmor\";\"main\"\n\"539689\";\"Bol.Kukmor\";\"other\"\n\"539689\";\"KUKMOR\";\"other\"\n\"539689\";\"Бол.Кукмор\";\"other\"\n\"539689\";\"КУКМОР\";\"other\"\n\"539689\";\"Кукмор\";\"other\"\n\"539794\";\"Kugesi\";\"main\"\n\"539794\";\"KUGESI\";\"other\"\n\"539794\";\"КУГЕСИ\";\"other\"\n\"539794\";\"Кугеси\";\"other\"\n\"539817\";\"Kudymkar\";\"main\"\n\"539817\";\"KUDYMKAR\";\"other\"\n\"539817\";\"Kudimkar\";\"other\"\n\"539817\";\"Kudymkarskoye\";\"other\"\n\"539817\";\"kudimkaleu\";\"other\"\n\"539817\";\"kudimukaru\";\"other\"\n\"539817\";\"КУДЫМКАР\";\"other\"\n\"539817\";\"Кудимкар\";\"other\"\n\"539817\";\"Кудымкар\";\"other\"\n\"539817\";\"クディムカル\";\"other\"\n\"539817\";\"쿠딤카르\";\"other\"\n\"539885\";\"Kudinovo\";\"main\"\n\"539885\";\"Кудиново\";\"other\"\n\"539897\";\"Kudeyevskiy\";\"main\"\n\"539897\";\"KUDEEVSKIJ\";\"other\"\n\"539897\";\"Kudejevskij\";\"other\"\n\"539897\";\"КУДЕЕВСКИЙ\";\"other\"\n\"539897\";\"Кудеевский\";\"other\"\n\"539946\";\"Kuchugury\";\"main\"\n\"539946\";\"Kutsjugury\";\"other\"\n\"539946\";\"Кучугуры\";\"other\"\n\"540030\";\"Kubinka\";\"main\"\n\"540030\";\"KUBINKA\";\"other\"\n\"540030\";\"КУБИНКА\";\"other\"\n\"540030\";\"Кубинка\";\"other\"\n\"540042\";\"Kuba-Taba\";\"main\"\n\"540042\";\"Kuba-Tapa\";\"other\"\n\"540042\";\"Куба-Таба\";\"other\"\n\"540055\";\"Kubanskiy\";\"main\"\n\"540078\";\"Kubachi\";\"main\"\n\"540078\";\"KUBACHI\";\"other\"\n\"540078\";\"Kubatsji\";\"other\"\n\"540078\";\"КУБАЧИ\";\"other\"\n\"540078\";\"Кубачи\";\"other\"\n\"540103\";\"Kstovo\";\"main\"\n\"540103\";\"KSTOVO\";\"other\"\n\"540103\";\"Kostova\";\"other\"\n\"540103\";\"КСТОВО\";\"other\"\n\"540103\";\"Кстово\";\"other\"\n\"540121\";\"Kshenskiy\";\"main\"\n\"540121\";\"KSHENSKIJ\";\"other\"\n\"540121\";\"Kshen'\";\"other\"\n\"540121\";\"Kshen’\";\"other\"\n\"540121\";\"Ksjenskij\";\"other\"\n\"540121\";\"Lipovchik\";\"other\"\n\"540121\";\"Sovetskiy\";\"other\"\n\"540121\";\"Sovetskoye\";\"other\"\n\"540121\";\"КШЕНСКИЙ\";\"other\"\n\"540121\";\"Кшенский\";\"other\"\n\"540251\";\"Krymsk\";\"main\"\n\"540251\";\"Krimskaja\";\"other\"\n\"540251\";\"Krimskaya\";\"other\"\n\"540251\";\"Krymasko\";\"other\"\n\"540251\";\"Krymskaja\";\"other\"\n\"540251\";\"Krymskaya\";\"other\"\n\"540251\";\"Крымск\";\"other\"\n\"540259\";\"Krym\";\"main\"\n\"540259\";\"Крым\";\"other\"\n\"540267\";\"Krylovskaya\";\"main\"\n\"540267\";\"Jekaterinowskaja\";\"other\"\n\"540267\";\"Krylovskaja\";\"other\"\n\"540267\";\"Yekaterinovskaya\";\"other\"\n\"540267\";\"Крыловская\";\"other\"\n\"540268\";\"Krylovskaya\";\"main\"\n\"540268\";\"Krylovskaja\";\"other\"\n\"540268\";\"Крыловская\";\"other\"\n\"540690\";\"Kruglolesskoye\";\"main\"\n\"540690\";\"Kruglolesskoje\";\"other\"\n\"540690\";\"Kruglolyesskoe\";\"other\"\n\"540690\";\"Круглолесское\";\"other\"\n\"540740\";\"Krotovka\";\"main\"\n\"540740\";\"Krowtowka\";\"other\"\n\"540740\";\"Кротовка\";\"other\"\n\"540761\";\"Kropotkin\";\"main\"\n\"540761\";\"KROPOTKIN\";\"other\"\n\"540761\";\"Krapotkin\";\"other\"\n\"540761\";\"Romanovskiy Khutor\";\"other\"\n\"540761\";\"КРОПОТКИН\";\"other\"\n\"540761\";\"Кропоткин\";\"other\"\n\"540769\";\"Kropachëvo\";\"main\"\n\"540769\";\"Kropachevo\";\"ascii\"\n\"540769\";\"KROPACHEVO\";\"other\"\n\"540769\";\"Kropatsjevo\";\"other\"\n\"540769\";\"КРОПАЧЕВО\";\"other\"\n\"540769\";\"Кропачёво\";\"other\"\n\"540771\";\"Kronshtadt\";\"main\"\n\"540771\";\"Cronstadt\";\"other\"\n\"540771\";\"KRONSHTADT\";\"other\"\n\"540771\";\"Kronsjtadt\";\"other\"\n\"540771\";\"Kronstadt\";\"other\"\n\"540771\";\"Kroonlinn\";\"other\"\n\"540771\";\"КРОНШТАДТ\";\"other\"\n\"540776\";\"Kromy\";\"main\"\n\"540776\";\"KROMY\";\"other\"\n\"540776\";\"КРОМЫ\";\"other\"\n\"540776\";\"Кромы\";\"other\"\n\"540797\";\"Krivyanskaya\";\"main\"\n\"540797\";\"Krivjanskaja\";\"other\"\n\"540797\";\"Кривянская\";\"other\"\n\"541116\";\"Kresttsy\";\"main\"\n\"541116\";\"Krestsy\";\"other\"\n\"541116\";\"Kresttsey\";\"other\"\n\"541116\";\"Крестцы\";\"other\"\n\"541235\";\"Kremenki\";\"main\"\n\"541235\";\"Кременки\";\"other\"\n\"541256\";\"Krechevitsy\";\"main\"\n\"541256\";\"KRECHEVICY\";\"other\"\n\"541256\";\"Kretsjevitsy\";\"other\"\n\"541256\";\"КРЕЧЕВИЦЫ\";\"other\"\n\"541256\";\"Кречевицы\";\"other\"\n\"541286\";\"Kratovo\";\"main\"\n\"541286\";\"Кратово\";\"other\"\n\"541288\";\"Krasyukovskaya\";\"main\"\n\"541288\";\"Krasiukovskaja\";\"other\"\n\"541288\";\"Красюковская\";\"other\"\n\"541337\";\"Krasnyy Yar\";\"main\"\n\"541337\";\"Kransy-Yar\";\"other\"\n\"541337\";\"Krasny Yar\";\"other\"\n\"541337\";\"Krasnyj Jar\";\"other\"\n\"541337\";\"Красный Яр\";\"other\"\n\"541341\";\"Krasnyy Yar\";\"main\"\n\"541341\";\"Krasn.Jar\";\"other\"\n\"541341\";\"Krasni-Yar\";\"other\"\n\"541341\";\"Красн.Яр\";\"other\"\n\"541341\";\"Красный Яр\";\"other\"\n\"541344\";\"Krasnyy Yar\";\"main\"\n\"541344\";\"KRASN.JAR\";\"other\"\n\"541344\";\"Krasn.Jar\";\"other\"\n\"541344\";\"Krasny Jar\";\"other\"\n\"541344\";\"КРАСН.ЯР\";\"other\"\n\"541344\";\"Красный Яр\";\"other\"\n\"541349\";\"Krasnyy Yar\";\"main\"\n\"541349\";\"Krasnyj_jar\";\"other\"\n\"541349\";\"Krassnyj-Jar\";\"other\"\n\"541349\";\"Красный Яр\";\"other\"\n\"541401\";\"Krasnyy Tkach\";\"main\"\n\"541401\";\"KRASN.TKACH\";\"other\"\n\"541401\";\"Krasniy Tkach\";\"other\"\n\"541401\";\"КРАСН.ТКАЧ\";\"other\"\n\"541401\";\"Красный Ткач\";\"other\"\n\"541404\";\"Krasnyy Sulin\";\"main\"\n\"541404\";\"KRASNYJ SULIN\";\"other\"\n\"541404\";\"Krasny-Sulin\";\"other\"\n\"541404\";\"Krasnyj Sulin\";\"other\"\n\"541404\";\"Krassnyj Ssulin\";\"other\"\n\"541404\";\"КРАСНЫЙ СУЛИН\";\"other\"\n\"541404\";\"Красный Сулин\";\"other\"\n\"541446\";\"Krasnyy Profintern\";\"main\"\n\"541446\";\"Guzitsino\";\"other\"\n\"541446\";\"KRASNYJ PROFINTERN\";\"other\"\n\"541446\";\"Krasny Profintern\";\"other\"\n\"541446\";\"Krasnyj Profintern\";\"other\"\n\"541446\";\"КРАСНЫЙ ПРОФИНТЕРН\";\"other\"\n\"541446\";\"Красный Профинтерн\";\"other\"\n\"541549\";\"Krasnyy Oktyabr’\";\"main\"\n\"541549\";\"Krasnyy Oktyabr'\";\"ascii\"\n\"541549\";\"KRASNYJ OKTJABR'\";\"other\"\n\"541549\";\"Krasnyj Oktjabr\";\"other\"\n\"541549\";\"КРАСНЫЙ ОКТЯБРЬ\";\"other\"\n\"541549\";\"Красный Октябрь\";\"other\"\n\"541550\";\"Krasnyy Oktyabr’\";\"main\"\n\"541550\";\"Krasnyy Oktyabr'\";\"ascii\"\n\"541550\";\"KRASNYJ OKTJABR'\";\"other\"\n\"541550\";\"Krasnyj Oktjabr\";\"other\"\n\"541550\";\"Poselok Krasnyy Oktyabr'\";\"other\"\n\"541550\";\"Posëlok Krasnyy Oktyabr’\";\"other\"\n\"541550\";\"КРАСНЫЙ ОКТЯБРЬ\";\"other\"\n\"541550\";\"Красный Октябрь\";\"other\"\n\"541573\";\"Krasnyy Oktyabr’\";\"main\"\n\"541573\";\"Krasnyy Oktyabr'\";\"ascii\"\n\"541573\";\"KRASN.OKTJABR'\";\"other\"\n\"541573\";\"Krasn.Oktjabr\";\"other\"\n\"541573\";\"КРАСН.ОКТЯБРЬ\";\"other\"\n\"541573\";\"Красный Октябрь\";\"other\"\n\"541629\";\"Krasnyy Luch\";\"main\"\n\"541629\";\"KRASNYJ LUCH\";\"other\"\n\"541629\";\"Krasnyj Lutsj\";\"other\"\n\"541629\";\"Luzha\";\"other\"\n\"541629\";\"Novy Svet\";\"other\"\n\"541629\";\"Novyy Svet\";\"other\"\n\"541629\";\"КРАСНЫЙ ЛУЧ\";\"other\"\n\"541629\";\"Красный Луч\";\"other\"\n\"541647\";\"Krasnyy Kut\";\"main\"\n\"541647\";\"KRASN.KUT\";\"other\"\n\"541647\";\"Krasn.Kut\";\"other\"\n\"541647\";\"Krasny Kut\";\"other\"\n\"541647\";\"КРАСН.КУТ\";\"other\"\n\"541647\";\"Красный Кут\";\"other\"\n\"541661\";\"Krasnyy Kurgan\";\"main\"\n\"541661\";\"Krasnyj Kurgan\";\"other\"\n\"541661\";\"Красный Курган\";\"other\"\n\"541679\";\"Krasnyy Klyuch\";\"main\"\n\"541679\";\"Красный Ключ\";\"other\"\n\"541704\";\"Krasnyy Kholm\";\"main\"\n\"541704\";\"KRASNYJ KHOLM\";\"other\"\n\"541704\";\"Krasny Cholm\";\"other\"\n\"541704\";\"Krasny Kholm\";\"other\"\n\"541704\";\"Krasnyj Kholm\";\"other\"\n\"541704\";\"КРАСНЫЙ ХОЛМ\";\"other\"\n\"541704\";\"Красный Холм\";\"other\"\n\"541722\";\"Krasnyy Gulyay\";\"main\"\n\"541722\";\"KRASNYJ GULJAJ\";\"other\"\n\"541722\";\"Krasnyj Guljaj\";\"other\"\n\"541722\";\"КРАСНЫЙ ГУЛЯЙ\";\"other\"\n\"541722\";\"Красный Гуляй\";\"other\"\n\"541747\";\"Krasnyye Tkachi\";\"main\"\n\"541747\";\"KRASNYE TKACHI\";\"other\"\n\"541747\";\"Krasnye Tkatsji\";\"other\"\n\"541747\";\"КРАСНЫЕ ТКАЧИ\";\"other\"\n\"541747\";\"Красные Ткачи\";\"other\"\n\"541791\";\"Krasnyye Chetai\";\"main\"\n\"541791\";\"Krasn.Chetai\";\"other\"\n\"541791\";\"Krasny Chetay\";\"other\"\n\"541791\";\"Krasnyye Chetay\";\"other\"\n\"541791\";\"Красн.Четаи\";\"other\"\n\"541791\";\"Красные Четаи\";\"other\"\n\"541795\";\"Krasnyye Barrikady\";\"main\"\n\"541795\";\"Bertyul'\";\"other\"\n\"541795\";\"Bertyul’\";\"other\"\n\"541795\";\"Krasnye Barrikady\";\"other\"\n\"541795\";\"Красные Баррикады\";\"other\"\n\"541796\";\"Krasnyye Baki\";\"main\"\n\"541796\";\"Krasnye Baki\";\"other\"\n\"541796\";\"Krasnyje Baki\";\"other\"\n\"541796\";\"Красные Баки\";\"other\"\n\"541826\";\"Krasnyy Bor\";\"main\"\n\"541826\";\"KRASNYJ BOR\";\"other\"\n\"541826\";\"Krasny Bor\";\"other\"\n\"541826\";\"Krasnyj Bor\";\"other\"\n\"541826\";\"КРАСНЫЙ БОР\";\"other\"\n\"541826\";\"Красный Бор\";\"other\"\n\"541844\";\"Krasnyy Bogatyr’\";\"main\"\n\"541844\";\"Krasnyy Bogatyr'\";\"ascii\"\n\"541844\";\"KRASNYJ BOGATYR'\";\"other\"\n\"541844\";\"Krasnyj Bogatyr\";\"other\"\n\"541844\";\"КРАСНЫЙ БОГАТЫРЬ\";\"other\"\n\"541844\";\"Красный Богатырь\";\"other\"\n\"541947\";\"Krasnoznamensk\";\"main\"\n\"541947\";\"Haselberg\";\"other\"\n\"541947\";\"KRASNOZNAMENSK\";\"other\"\n\"541947\";\"Lasdehen\";\"other\"\n\"541947\";\"Lasdehnen\";\"other\"\n\"541947\";\"Lasdenen\";\"other\"\n\"541947\";\"Lazdenay\";\"other\"\n\"541947\";\"Lazdenen\";\"other\"\n\"541947\";\"КРАСНОЗНАМЕНСК\";\"other\"\n\"541947\";\"Краснознаменск\";\"other\"\n\"541950\";\"Krasnozavodsk\";\"main\"\n\"541950\";\"KRASNOZAVODSK\";\"other\"\n\"541950\";\"Krasnozavodskiy\";\"other\"\n\"541950\";\"Zagorskiy\";\"other\"\n\"541950\";\"КРАСНОЗАВОДСК\";\"other\"\n\"542000\";\"Krasnoye Selo\";\"main\"\n\"542000\";\"KRASNOE SELO\";\"other\"\n\"542000\";\"Krasnoje Selo\";\"other\"\n\"542000\";\"Krasnyy\";\"other\"\n\"542000\";\"КРАСНОЕ СЕЛО\";\"other\"\n\"542000\";\"Красное Село\";\"other\"\n\"542024\";\"Krasnoye-na-Volge\";\"main\"\n\"542024\";\"Krasnoe\";\"other\"\n\"542024\";\"Krasnoje-Na-Volge\";\"other\"\n\"542024\";\"Krasnoye\";\"other\"\n\"542024\";\"Krasnyi Volgar\";\"other\"\n\"542024\";\"Красное-на-Волге\";\"other\"\n\"542109\";\"Krasnoye\";\"main\"\n\"542109\";\"Krasnoje\";\"other\"\n\"542109\";\"Красное\";\"other\"\n\"542121\";\"Krasnoye\";\"main\"\n\"542121\";\"Krasnaya\";\"other\"\n\"542121\";\"Krasnoe\";\"other\"\n\"542121\";\"Krasnoje\";\"other\"\n\"542121\";\"Krasnoye Ukolovskoye\";\"other\"\n\"542121\";\"Красное\";\"other\"\n\"542125\";\"Krasnoye\";\"main\"\n\"542125\";\"Krasnoje\";\"other\"\n\"542125\";\"Красное\";\"other\"\n\"542133\";\"Krasnoyarskiy\";\"main\"\n\"542133\";\"KRASNOJARSKIJ\";\"other\"\n\"542133\";\"Krasnojarskij\";\"other\"\n\"542133\";\"КРАСНОЯРСКИЙ\";\"other\"\n\"542133\";\"Красноярский\";\"other\"\n\"542143\";\"Krasnoyarskaya\";\"main\"\n\"542143\";\"Krasnojarskaja\";\"other\"\n\"542143\";\"Krasnoyarskiy\";\"other\"\n\"542143\";\"Красноярская\";\"other\"\n\"542182\";\"Krasnovka\";\"main\"\n\"542182\";\"Donskoy\";\"other\"\n\"542182\";\"Красновка\";\"other\"\n\"542184\";\"Krasnovishersk\";\"main\"\n\"542184\";\"KRASNOVISHERSK\";\"other\"\n\"542184\";\"Krasnovisjersk\";\"other\"\n\"542184\";\"КРАСНОВИШЕРСК\";\"other\"\n\"542199\";\"Krasnoufimsk\";\"main\"\n\"542199\";\"KRASNOUFIMSK\";\"other\"\n\"542199\";\"Krasnoutimsk\";\"other\"\n\"542199\";\"КРАСНОУФИМСК\";\"other\"\n\"542199\";\"Красноуфимск\";\"other\"\n\"542212\";\"Krasnoslobodsk\";\"main\"\n\"542212\";\"KRASNOSLOBODSK\";\"other\"\n\"542212\";\"КРАСНОСЛОБОДСК\";\"other\"\n\"542212\";\"Краснослободск\";\"other\"\n\"542213\";\"Krasnoslobodsk\";\"main\"\n\"542213\";\"KRASNOSLOBODSK\";\"other\"\n\"542213\";\"Krasnaya Sloboda\";\"other\"\n\"542213\";\"Sloboda\";\"other\"\n\"542213\";\"КРАСНОСЛОБОДСК\";\"other\"\n\"542213\";\"Краснослободск\";\"other\"\n\"542298\";\"Krasnomayskiy\";\"main\"\n\"542298\";\"KRASNOMAJSKIJ\";\"other\"\n\"542298\";\"Klyuchino\";\"other\"\n\"542298\";\"Klyuchinskiy\";\"other\"\n\"542298\";\"Klyuchinskoy\";\"other\"\n\"542298\";\"Krasnoarmeyskiy\";\"other\"\n\"542298\";\"Krasnomajskij\";\"other\"\n\"542298\";\"КРАСНОМАЙСКИЙ\";\"other\"\n\"542298\";\"Красномайский\";\"other\"\n\"542312\";\"Krasnokumskoye\";\"main\"\n\"542312\";\"Krasnaya Slobodka\";\"other\"\n\"542312\";\"Krasnokumskoje\";\"other\"\n\"542312\";\"Краснокумское\";\"other\"\n\"542322\";\"Krasnokholm\";\"main\"\n\"542322\";\"Krasnokholnskaya\";\"other\"\n\"542322\";\"Krasny-Kholm\";\"other\"\n\"542322\";\"Krasnyy Kholm\";\"other\"\n\"542322\";\"Краснохолм\";\"other\"\n\"542327\";\"Krasnokamsk\";\"main\"\n\"542327\";\"KRASNOKAMSK\";\"other\"\n\"542327\";\"КРАСНОКАМСК\";\"other\"\n\"542333\";\"Biryuch\";\"main\"\n\"542333\";\"Budennoye\";\"other\"\n\"542333\";\"Budennyy\";\"other\"\n\"542333\";\"Krasnogvardejskoje\";\"other\"\n\"542333\";\"Krasnogvardeyskoye\";\"other\"\n\"542333\";\"Красногвардейское\";\"other\"\n\"542334\";\"Krasnogvardeyskoye\";\"main\"\n\"542334\";\"Krasnogvardejskoje\";\"other\"\n\"542334\";\"Medvezh'ye\";\"other\"\n\"542334\";\"Medvezh’ye\";\"other\"\n\"542334\";\"Medweshe\";\"other\"\n\"542334\";\"Molotovskoye\";\"other\"\n\"542334\";\"Molotowskoje\";\"other\"\n\"542334\";\"Moltovskoye\";\"other\"\n\"542334\";\"Yevdokimovskoye\";\"other\"\n\"542334\";\"Красногвардейское\";\"other\"\n\"542335\";\"Krasnogvardeyskoye\";\"main\"\n\"542335\";\"Nikolayevka\";\"other\"\n\"542335\";\"Nikolayevskoye\";\"other\"\n\"542335\";\"Красногвардейское\";\"other\"\n\"542345\";\"Krasnogvardeyets\";\"main\"\n\"542345\";\"Krasnogvardejets\";\"other\"\n\"542345\";\"Umnovskiy\";\"other\"\n\"542345\";\"Красногвардеец\";\"other\"\n\"542356\";\"Krasnogorskoye\";\"main\"\n\"542356\";\"Baryshnikovo\";\"other\"\n\"542356\";\"Krasnogorskoje\";\"other\"\n\"542356\";\"Красногорское\";\"other\"\n\"542366\";\"Krasnogorskiy\";\"main\"\n\"542366\";\"Ilet'\";\"other\"\n\"542366\";\"Ilet’\";\"other\"\n\"542366\";\"KRASNOGORSKIJ\";\"other\"\n\"542366\";\"Krasnogorskoye\";\"other\"\n\"542366\";\"Илеть\";\"other\"\n\"542366\";\"КРАСНОГОРСКИЙ\";\"other\"\n\"542366\";\"Красногорский\";\"other\"\n\"542374\";\"Krasnogorsk\";\"main\"\n\"542374\";\"Ban'ki\";\"other\"\n\"542374\";\"Ban’ki\";\"other\"\n\"542374\";\"KRASNOGORSK\";\"other\"\n\"542374\";\"КРАСНОГОРСК\";\"other\"\n\"542374\";\"Красногорск\";\"other\"\n\"542378\";\"Krasnogorodskoye\";\"main\"\n\"542378\";\"KRASNOGORODSKOE\";\"other\"\n\"542378\";\"Krasnogorodsk\";\"other\"\n\"542378\";\"Krasny\";\"other\"\n\"542378\";\"Krasnyy\";\"other\"\n\"542378\";\"Prigorod Krasnyy\";\"other\"\n\"542378\";\"КРАСНОГОРОДСКОЕ\";\"other\"\n\"542378\";\"Красногородск\";\"other\"\n\"542378\";\"Красногородское\";\"other\"\n\"542400\";\"Krasnofarfornyy\";\"main\"\n\"542400\";\"KRASNOFARFORNYJ\";\"other\"\n\"542400\";\"Krasnofarforny\";\"other\"\n\"542400\";\"Krasnofarfornyj\";\"other\"\n\"542400\";\"КРАСНОФАРФОРНЫЙ\";\"other\"\n\"542400\";\"Краснофарфорный\";\"other\"\n\"542420\";\"Krasnodar\";\"main\"\n\"542420\";\"Ekaterinodar\";\"other\"\n\"542420\";\"Krasnodara\";\"other\"\n\"542420\";\"Yekaterinodar\";\"other\"\n\"542420\";\"ke la si nuo da er\";\"other\"\n\"542420\";\"keulaseunodaleu\";\"other\"\n\"542420\";\"kurasunodaru\";\"other\"\n\"542420\";\"qrsnwdr\";\"other\"\n\"542420\";\"Краснодар\";\"other\"\n\"542420\";\"קרסנודר\";\"other\"\n\"542420\";\"クラスノダル\";\"other\"\n\"542420\";\"克拉斯诺达尔\";\"other\"\n\"542420\";\"크라스노다르\";\"other\"\n\"542423\";\"Krasnoborsk\";\"main\"\n\"542423\";\"Красноборск\";\"other\"\n\"542429\";\"Krasnoarmeyskoye\";\"main\"\n\"542429\";\"Krasnoarmejskoje\";\"other\"\n\"542429\";\"Peredniye Traki\";\"other\"\n\"542429\";\"Красноармейское\";\"other\"\n\"542452\";\"Krasnoarmeyskiy\";\"main\"\n\"542452\";\"Krasnoarmejskij\";\"other\"\n\"542452\";\"Tokmatskiy\";\"other\"\n\"542452\";\"Красноармейский\";\"other\"\n\"542461\";\"Krasnoarmeyskaya\";\"main\"\n\"542461\";\"Krasnoarmeyskoye\";\"other\"\n\"542461\";\"Poltavskaja\";\"other\"\n\"542461\";\"Poltavskaya\";\"other\"\n\"542461\";\"Красноармейская\";\"other\"\n\"542461\";\"Полтавская\";\"other\"\n\"542463\";\"Krasnoarmeysk\";\"main\"\n\"542463\";\"KRASNOARMEJSK\";\"other\"\n\"542463\";\"Krasnoarmejsk\";\"other\"\n\"542463\";\"Krasnoarmeyskiy\";\"other\"\n\"542463\";\"КРАСНОАРМЕЙСК\";\"other\"\n\"542463\";\"Красноармейск\";\"other\"\n\"542464\";\"Krasnoarmeysk\";\"main\"\n\"542464\";\"Bal'tser\";\"other\"\n\"542464\";\"Bal’tser\";\"other\"\n\"542464\";\"Golyy Karamysh\";\"other\"\n\"542464\";\"KRASNOARMEJSK\";\"other\"\n\"542464\";\"Krasnoarmejsk\";\"other\"\n\"542464\";\"Pantsir\";\"other\"\n\"542464\";\"КРАСНОАРМЕЙСК\";\"other\"\n\"542464\";\"Красноармейск\";\"other\"\n\"542561\";\"Krasnaya Zarya\";\"main\"\n\"542561\";\"Krasnaja Zarja\";\"other\"\n\"542561\";\"Volna\";\"other\"\n\"542561\";\"Красная Заря\";\"other\"\n\"542571\";\"Krasnaya Yaruga\";\"main\"\n\"542571\";\"KRASNAJA JARUGA\";\"other\"\n\"542571\";\"Krasnaja Jaruga\";\"other\"\n\"542571\";\"КРАСНАЯ ЯРУГА\";\"other\"\n\"542571\";\"Красная Яруга\";\"other\"\n\"542637\";\"Krasnaya Poyma\";\"main\"\n\"542637\";\"Krasnaja Pojma\";\"other\"\n\"542637\";\"Красная Пойма\";\"other\"\n\"542640\";\"Krasnaya Polyana\";\"main\"\n\"542640\";\"KRASNAJA POLJANA\";\"other\"\n\"542640\";\"Krasnaja Poljana\";\"other\"\n\"542640\";\"КРАСНАЯ ПОЛЯНА\";\"other\"\n\"542640\";\"Красная Поляна\";\"other\"\n\"542673\";\"Krasnaya Polyana\";\"main\"\n\"542673\";\"Krasnaja Poljana\";\"other\"\n\"542673\";\"Krasnaya\";\"other\"\n\"542673\";\"Красная Поляна\";\"other\"\n\"542680\";\"Krasnaya Polyana\";\"main\"\n\"542680\";\"Krasnaja Poljana\";\"other\"\n\"542680\";\"Красная Поляна\";\"other\"\n\"542681\";\"Krasnaya Polyana\";\"main\"\n\"542681\";\"Krasnaja Poljana\";\"other\"\n\"542681\";\"Krassnaja Poljana\";\"other\"\n\"542681\";\"Punase Lageda\";\"other\"\n\"542681\";\"Красная Поляна\";\"other\"\n\"542765\";\"Krasnaya Gorka\";\"main\"\n\"542765\";\"Krasn.Gorka\";\"other\"\n\"542765\";\"Ostrov\";\"other\"\n\"542765\";\"Sobachiy Ostrov\";\"other\"\n\"542765\";\"Красн.Горка\";\"other\"\n\"542765\";\"Красная Горка\";\"other\"\n\"542769\";\"Krasnaya Gorka\";\"main\"\n\"542769\";\"Krasnaja Gorka\";\"other\"\n\"542769\";\"Красная Горка\";\"other\"\n\"542776\";\"Krasnaya Gorbatka\";\"main\"\n\"542776\";\"Gorbatka\";\"other\"\n\"542776\";\"KRASN.GORBATKA\";\"other\"\n\"542776\";\"КРАСН.ГОРБАТКА\";\"other\"\n\"542776\";\"Красная Горбатка\";\"other\"\n\"542788\";\"Krasnaya Gora\";\"main\"\n\"542788\";\"Krasnaja Gora\";\"other\"\n\"542788\";\"Красная Гора\";\"other\"\n\"542841\";\"Kraskovo\";\"main\"\n\"542841\";\"Красково\";\"other\"\n\"542908\";\"Krasavino\";\"main\"\n\"542908\";\"KRASAVINO\";\"other\"\n\"542908\";\"КРАСАВИНО\";\"other\"\n\"542908\";\"Красавино\";\"other\"\n\"542942\";\"Krapivna\";\"main\"\n\"542942\";\"Krepiwna\";\"other\"\n\"542942\";\"Крапивна\";\"other\"\n\"542965\";\"Krasnokholmskiy\";\"main\"\n\"542965\";\"KRASNOKHOLMSKIJ\";\"other\"\n\"542965\";\"Kranokholmskiy\";\"other\"\n\"542965\";\"Krasnokholmskij\";\"other\"\n\"542965\";\"КРАСНОХОЛМСКИЙ\";\"other\"\n\"542965\";\"Краснохолмский\";\"other\"\n\"543018\";\"Koz’modem’yansk\";\"main\"\n\"543018\";\"Koz'modem'yansk\";\"ascii\"\n\"543018\";\"KOZ'MODEM'JANSK\";\"other\"\n\"543018\";\"Kozmedemyansk\";\"other\"\n\"543018\";\"Kozmodemjansk\";\"other\"\n\"543018\";\"КОЗЬМОДЕМЬЯНСК\";\"other\"\n\"543018\";\"Козьмодемьянск\";\"other\"\n\"543106\";\"Kozlovo\";\"main\"\n\"543106\";\"KOZLOVO\";\"other\"\n\"543106\";\"КОЗЛОВО\";\"other\"\n\"543106\";\"Козлово\";\"other\"\n\"543133\";\"Kozlovka\";\"main\"\n\"543133\";\"Козловка\";\"other\"\n\"543171\";\"Kozlovka\";\"main\"\n\"543171\";\"Козловка\";\"other\"\n\"543246\";\"Kozhva\";\"main\"\n\"543246\";\"KOZHVA\";\"other\"\n\"543246\";\"Koshwa\";\"other\"\n\"543246\";\"Kozjva\";\"other\"\n\"543246\";\"Ust'-Kozhva\";\"other\"\n\"543246\";\"Ust’-Kozhva\";\"other\"\n\"543246\";\"КОЖВА\";\"other\"\n\"543246\";\"Кожва\";\"other\"\n\"543348\";\"Kozel’sk\";\"main\"\n\"543348\";\"Kozel'sk\";\"ascii\"\n\"543348\";\"Kozelsk\";\"other\"\n\"543348\";\"Козельск\";\"other\"\n\"543396\";\"Koygorodok\";\"main\"\n\"543396\";\"Kaygorod\";\"other\"\n\"543396\";\"Kaygorodok\";\"other\"\n\"543396\";\"Kojgorodok\";\"other\"\n\"543396\";\"Койгородок\";\"other\"\n\"543436\";\"Kovylkino\";\"main\"\n\"543436\";\"KOVYLKINO\";\"other\"\n\"543436\";\"Kovykino\";\"other\"\n\"543436\";\"Lashma\";\"other\"\n\"543436\";\"КОВЫЛКИНО\";\"other\"\n\"543436\";\"Ковылкино\";\"other\"\n\"543460\";\"Kovrov\";\"main\"\n\"543460\";\"KOVROV\";\"other\"\n\"543460\";\"Kowrow\";\"other\"\n\"543460\";\"kobeulopeu\";\"other\"\n\"543460\";\"КОВРОВ\";\"other\"\n\"543460\";\"Ковров\";\"other\"\n\"543460\";\"코브로프\";\"other\"\n\"543494\";\"Kovernino\";\"main\"\n\"543494\";\"KOVERNINO\";\"other\"\n\"543494\";\"КОВЕРНИНО\";\"other\"\n\"543494\";\"Ковернино\";\"other\"\n\"543508\";\"Kovdor\";\"main\"\n\"543508\";\"KOVDOR\";\"other\"\n\"543508\";\"Kouteri\";\"other\"\n\"543508\";\"КОВДОР\";\"other\"\n\"543508\";\"Ковдор\";\"other\"\n\"543605\";\"Kotovsk\";\"main\"\n\"543605\";\"KOTOVSK\";\"other\"\n\"543605\";\"КОТОВСК\";\"other\"\n\"543633\";\"Kotovo\";\"main\"\n\"543633\";\"KOTOVO\";\"other\"\n\"543633\";\"Katovo\";\"other\"\n\"543633\";\"КОТОВО\";\"other\"\n\"543633\";\"Котово\";\"other\"\n\"543671\";\"Kotlyarevskaya\";\"main\"\n\"543671\";\"Kotljarevskaja\";\"other\"\n\"543671\";\"Kotlyareyskaya\";\"other\"\n\"543671\";\"Котляревская\";\"other\"\n\"543704\";\"Kotlas\";\"main\"\n\"543704\";\"KOTLAS\";\"other\"\n\"543704\";\"Kotlass\";\"other\"\n\"543704\";\"Kotłas\";\"other\"\n\"543704\";\"koteullaseu\";\"other\"\n\"543704\";\"kotorasu\";\"other\"\n\"543704\";\"КОТЛАС\";\"other\"\n\"543704\";\"Котлас\";\"other\"\n\"543704\";\"コトラス\";\"other\"\n\"543704\";\"코틀라스\";\"other\"\n\"543728\";\"Kotel’nikovo\";\"main\"\n\"543728\";\"Kotel'nikovo\";\"ascii\"\n\"543728\";\"Kotel'nikovskiy\";\"other\"\n\"543728\";\"Kotelnikowo\";\"other\"\n\"543728\";\"Kotelnikowskij\";\"other\"\n\"543728\";\"Kotel’nikovskiy\";\"other\"\n\"543728\";\"Котельниково\";\"other\"\n\"543731\";\"Kotel’niki\";\"main\"\n\"543731\";\"Kotel'niki\";\"ascii\"\n\"543731\";\"Kotel`nika\";\"other\"\n\"543731\";\"Kotelniki\";\"other\"\n\"543731\";\"Котельники\";\"other\"\n\"543737\";\"Kotel’nich\";\"main\"\n\"543737\";\"Kotel'nich\";\"ascii\"\n\"543737\";\"Kotelnitsj\";\"other\"\n\"543737\";\"Котельнич\";\"other\"\n\"543864\";\"Kostrovo\";\"main\"\n\"543864\";\"Кострово\";\"other\"\n\"543878\";\"Kostroma\";\"main\"\n\"543878\";\"Kostromna\";\"other\"\n\"543878\";\"koseuteuloma\";\"other\"\n\"543878\";\"Кострома\";\"other\"\n\"543878\";\"코스트로마\";\"other\"\n\"543899\";\"Kostomuksha\";\"main\"\n\"543899\";\"Kostamus\";\"other\"\n\"543899\";\"Kostomuksa\";\"other\"\n\"543899\";\"Kostomukscha\";\"other\"\n\"543899\";\"Kostomuksja\";\"other\"\n\"543899\";\"Kostomuksza\";\"other\"\n\"543899\";\"Kostomukŝa\";\"other\"\n\"543899\";\"koseutomugsya\";\"other\"\n\"543899\";\"Костомукша\";\"other\"\n\"543899\";\"코스토묵샤\";\"other\"\n\"543939\";\"Kostino\";\"main\"\n\"543939\";\"Костино\";\"other\"\n\"544007\";\"Kostek\";\"main\"\n\"544007\";\"Keslek\";\"other\"\n\"544007\";\"Kestek\";\"other\"\n\"544007\";\"Костек\";\"other\"\n\"544068\";\"Kosmynino\";\"main\"\n\"544068\";\"KOSMYNINO\";\"other\"\n\"544068\";\"Kosminino\";\"other\"\n\"544068\";\"КОСМЫНИНО\";\"other\"\n\"544068\";\"Космынино\";\"other\"\n\"544084\";\"Koslan\";\"main\"\n\"544084\";\"Кослан\";\"other\"\n\"544119\";\"Kosino\";\"main\"\n\"544119\";\"KOSINO\";\"other\"\n\"544119\";\"КОСИНО\";\"other\"\n\"544119\";\"Косино\";\"other\"\n\"544203\";\"Koshki\";\"main\"\n\"544203\";\"Kosjki\";\"other\"\n\"544203\";\"Кошки\";\"other\"\n\"544263\";\"Koshekhabl’\";\"main\"\n\"544263\";\"Koshekhabl'\";\"ascii\"\n\"544263\";\"Kosjekhabl\";\"other\"\n\"544263\";\"Кошехабль\";\"other\"\n\"544293\";\"Kosaya Gora\";\"main\"\n\"544293\";\"KOSAJA GORA\";\"other\"\n\"544293\";\"Kosaja Gora\";\"other\"\n\"544293\";\"Poselok Kosaya Gora\";\"other\"\n\"544293\";\"Posëlok Kosaya Gora\";\"other\"\n\"544293\";\"КОСАЯ ГОРА\";\"other\"\n\"544293\";\"Косая Гора\";\"other\"\n\"544318\";\"Kosa\";\"main\"\n\"544318\";\"Коса\";\"other\"\n\"544332\";\"Korzhevskiy\";\"main\"\n\"544332\";\"Korzjevskij\";\"other\"\n\"544332\";\"Коржевский\";\"other\"\n\"544370\";\"Koryazhma\";\"main\"\n\"544370\";\"KORJAZHMA\";\"other\"\n\"544370\";\"Korjazjma\";\"other\"\n\"544370\";\"Koryazhemka\";\"other\"\n\"544370\";\"Koryazhemskaya\";\"other\"\n\"544370\";\"Koryazma\";\"other\"\n\"544370\";\"КОРЯЖМА\";\"other\"\n\"544370\";\"Коряжма\";\"other\"\n\"544397\";\"Kortkeros\";\"main\"\n\"544397\";\"Kortker\";\"other\"\n\"544397\";\"Kortkeres\";\"other\"\n\"544397\";\"Kortkerës\";\"other\"\n\"544397\";\"Kortkores\";\"other\"\n\"544397\";\"Корткерос\";\"other\"\n\"544440\";\"Korsakovo\";\"main\"\n\"544440\";\"Корсаково\";\"other\"\n\"544746\";\"Korobitsyno\";\"main\"\n\"544746\";\"Коробицыно\";\"other\"\n\"544830\";\"Kormëzhka\";\"main\"\n\"544830\";\"Kormezhka\";\"ascii\"\n\"544830\";\"Kormezjka\";\"other\"\n\"544830\";\"Кормежка\";\"other\"\n\"544830\";\"Кормёжка\";\"other\"\n\"544896\";\"Korenovsk\";\"main\"\n\"544896\";\"KORENOVSK\";\"other\"\n\"544896\";\"Korenovskaya\";\"other\"\n\"544896\";\"Korenowskaja\";\"other\"\n\"544896\";\"КОРЕНОВСК\";\"other\"\n\"544896\";\"Кореновск\";\"other\"\n\"544904\";\"Korenëvo\";\"main\"\n\"544904\";\"Korenevo\";\"ascii\"\n\"544904\";\"Коренёво\";\"other\"\n\"544906\";\"Korenëvo\";\"main\"\n\"544906\";\"Korenevo\";\"ascii\"\n\"544906\";\"Korenewo\";\"other\"\n\"544906\";\"Коренево\";\"other\"\n\"544906\";\"Коренёво\";\"other\"\n\"545001\";\"Korablino\";\"main\"\n\"545001\";\"KORABLINO\";\"other\"\n\"545001\";\"КОРАБЛИНО\";\"other\"\n\"545001\";\"Кораблино\";\"other\"\n\"545129\";\"Kopor’ye\";\"main\"\n\"545129\";\"Kopor'ye\";\"ascii\"\n\"545129\";\"Kopor'e\";\"other\"\n\"545129\";\"Koporje\";\"other\"\n\"545129\";\"Kopor’e\";\"other\"\n\"545129\";\"Копорье\";\"other\"\n\"545168\";\"Kopanskaya\";\"main\"\n\"545168\";\"Kopanskaja\";\"other\"\n\"545168\";\"Копанская\";\"other\"\n\"545223\";\"Konyshevka\";\"main\"\n\"545223\";\"KONYSHEVKA\";\"other\"\n\"545223\";\"Konishevka\";\"other\"\n\"545223\";\"Konysjevka\";\"other\"\n\"545223\";\"КОНЫШЕВКА\";\"other\"\n\"545223\";\"Конышевка\";\"other\"\n\"545267\";\"Konstantinovskoye\";\"main\"\n\"545267\";\"Konstaninovka\";\"other\"\n\"545267\";\"Konstantinovka\";\"other\"\n\"545267\";\"Konstantinovskoje\";\"other\"\n\"545267\";\"Константиновское\";\"other\"\n\"545272\";\"Konstantinovskiy\";\"main\"\n\"545272\";\"KONSTANTINOVSKIJ\";\"other\"\n\"545272\";\"Konstantinovo\";\"other\"\n\"545272\";\"Konstantinovskij\";\"other\"\n\"545272\";\"КОНСТАНТИНОВСКИЙ\";\"other\"\n\"545272\";\"Константиновский\";\"other\"\n\"545275\";\"Konstantinovskaya\";\"main\"\n\"545275\";\"Konstantinovskaja\";\"other\"\n\"545275\";\"Konstantinowskaja\";\"other\"\n\"545275\";\"Константиновская\";\"other\"\n\"545276\";\"Konstantinovskaya\";\"main\"\n\"545276\";\"Константиновская\";\"other\"\n\"545277\";\"Konstantinovsk\";\"main\"\n\"545277\";\"Konstantinovskaja\";\"other\"\n\"545277\";\"Konstantinovskaya\";\"other\"\n\"545277\";\"Konstantinovskiy\";\"other\"\n\"545277\";\"Konstantinowskaja\";\"other\"\n\"545277\";\"Konstantinowskoje\";\"other\"\n\"545277\";\"Константиновск\";\"other\"\n\"545277\";\"Константиновская\";\"other\"\n\"545282\";\"Konstantinovo\";\"main\"\n\"545282\";\"Константиново\";\"other\"\n\"545353\";\"Konosha\";\"main\"\n\"545353\";\"KONOSHA\";\"other\"\n\"545353\";\"Konosja\";\"other\"\n\"545353\";\"КОНОША\";\"other\"\n\"545353\";\"Коноша\";\"other\"\n\"545400\";\"Konokovo\";\"main\"\n\"545400\";\"Kanokovo\";\"other\"\n\"545400\";\"Коноково\";\"other\"\n\"545405\";\"Konobeyevo\";\"main\"\n\"545405\";\"Konobejevo\";\"other\"\n\"545405\";\"Конобеево\";\"other\"\n\"545467\";\"Konëvo\";\"main\"\n\"545467\";\"Konevo\";\"ascii\"\n\"545467\";\"Конево\";\"other\"\n\"545467\";\"Конёво\";\"other\"\n\"545575\";\"Kondrovo\";\"main\"\n\"545575\";\"KONDROVO\";\"other\"\n\"545575\";\"Kondrova\";\"other\"\n\"545575\";\"Troitskoye\";\"other\"\n\"545575\";\"КОНДРОВО\";\"other\"\n\"545575\";\"Кондрово\";\"other\"\n\"545626\";\"Kondopoga\";\"main\"\n\"545626\";\"KONDOPOGA\";\"other\"\n\"545626\";\"Kondupohju\";\"other\"\n\"545626\";\"Kontupohja\";\"other\"\n\"545626\";\"Tonopoga\";\"other\"\n\"545626\";\"КОНДОПОГА\";\"other\"\n\"545626\";\"Кондопога\";\"other\"\n\"545630\";\"Kondol’\";\"main\"\n\"545630\";\"Kondol'\";\"ascii\"\n\"545630\";\"Kondol\";\"other\"\n\"545630\";\"Кондоль\";\"other\"\n\"545673\";\"Konakovo\";\"main\"\n\"545673\";\"KONAKOVO\";\"other\"\n\"545673\";\"Kuznetsova\";\"other\"\n\"545673\";\"Kuznetsovo\";\"other\"\n\"545673\";\"КОНАКОВО\";\"other\"\n\"545673\";\"Конаково\";\"other\"\n\"545690\";\"Komsomol'skoye\";\"main\"\n\"545690\";\"Bol'shiye Koshelei\";\"other\"\n\"545690\";\"Bol'shoy Kosheley\";\"other\"\n\"545690\";\"Komsomol'skoe\";\"other\"\n\"545690\";\"Komsomolskoje\";\"other\"\n\"545690\";\"Kosheley\";\"other\"\n\"545690\";\"Комсомольское\";\"other\"\n\"545728\";\"Komsomol’skiy\";\"main\"\n\"545728\";\"Komsomol'skiy\";\"ascii\"\n\"545728\";\"KOMSOMOL'SKIJ\";\"other\"\n\"545728\";\"Komsomol'skij\";\"other\"\n\"545728\";\"Komsomolskij\";\"other\"\n\"545728\";\"КОМСОМОЛЬСКИЙ\";\"other\"\n\"545728\";\"Комсомольский\";\"other\"\n\"545736\";\"Komsomol’sk\";\"main\"\n\"545736\";\"Komsomol'sk\";\"ascii\"\n\"545736\";\"KOMSOMOL'SK\";\"other\"\n\"545736\";\"КОМСОМОЛЬСК\";\"other\"\n\"545736\";\"Комсомольск\";\"other\"\n\"545747\";\"Komsomolets\";\"main\"\n\"545747\";\"Sovkhoz Komsomolets\";\"other\"\n\"545747\";\"Комсомолец\";\"other\"\n\"545752\";\"Komsomolets\";\"main\"\n\"545752\";\"Комсомолец\";\"other\"\n\"545782\";\"Kommunarka\";\"main\"\n\"545782\";\"Sovkhoz Kommunarka\";\"other\"\n\"545782\";\"Коммунарка\";\"other\"\n\"545788\";\"Kommunar\";\"main\"\n\"545788\";\"KOMMUNAR\";\"other\"\n\"545788\";\"КОММУНАР\";\"other\"\n\"545788\";\"Коммунар\";\"other\"\n\"545791\";\"Kommunar\";\"main\"\n\"545791\";\"Коммунар\";\"other\"\n\"545881\";\"Komarovo\";\"main\"\n\"545881\";\"KOMAROVO\";\"other\"\n\"545881\";\"Kellomaki\";\"other\"\n\"545881\";\"Kellomayki\";\"other\"\n\"545881\";\"Kellomäki\";\"other\"\n\"545881\";\"Kelomyaki\";\"other\"\n\"545881\";\"Kelomyakki\";\"other\"\n\"545881\";\"КОМАРОВО\";\"other\"\n\"545881\";\"Комарово\";\"other\"\n\"545938\";\"Komarikhinskiy\";\"main\"\n\"545938\";\"KOMARIKHINSKIJ\";\"other\"\n\"545938\";\"Komarikha\";\"other\"\n\"545938\";\"Komarikhinskaya\";\"other\"\n\"545938\";\"Komarikhinskij\";\"other\"\n\"545938\";\"КОМАРИХИНСКИЙ\";\"other\"\n\"545946\";\"Komarichi\";\"main\"\n\"545946\";\"KOMARICHI\";\"other\"\n\"545946\";\"Komarich\";\"other\"\n\"545946\";\"Komaritschi\";\"other\"\n\"545946\";\"Komaritsji\";\"other\"\n\"545946\";\"КОМАРИЧИ\";\"other\"\n\"545946\";\"Комаричи\";\"other\"\n\"545978\";\"Kolyubakino\";\"main\"\n\"545978\";\"KOLJUBAKINO\";\"other\"\n\"545978\";\"Koljubakino\";\"other\"\n\"545978\";\"Kolyubakovo\";\"other\"\n\"545978\";\"КОЛЮБАКИНО\";\"other\"\n\"545978\";\"Колюбакино\";\"other\"\n\"545982\";\"Kolyshley\";\"main\"\n\"545982\";\"KOLYSHLEJ\";\"other\"\n\"545982\";\"Kolishlei\";\"other\"\n\"545982\";\"Kolysjlej\";\"other\"\n\"545982\";\"КОЛЫШЛЕЙ\";\"other\"\n\"545982\";\"Колышлей\";\"other\"\n\"546055\";\"Koltushi\";\"main\"\n\"546055\";\"Колтуши\";\"other\"\n\"546060\";\"Koltubanovskiy\";\"main\"\n\"546060\";\"KOLTUBANOVSKIJ\";\"other\"\n\"546060\";\"Koltubanka\";\"other\"\n\"546060\";\"Koltubanovskij\";\"other\"\n\"546060\";\"Kotlubanka\";\"other\"\n\"546060\";\"КОЛТУБАНОВСКИЙ\";\"other\"\n\"546060\";\"Колтубановский\";\"other\"\n\"546092\";\"Kolpny\";\"main\"\n\"546092\";\"KOLPNY\";\"other\"\n\"546092\";\"Kolpna\";\"other\"\n\"546092\";\"КОЛПНЫ\";\"other\"\n\"546092\";\"Колпны\";\"other\"\n\"546105\";\"Kolpino\";\"main\"\n\"546105\";\"Колпино\";\"other\"\n\"546230\";\"Kolomna\";\"main\"\n\"546230\";\"KOLOMNA\";\"other\"\n\"546230\";\"Kalomna\";\"other\"\n\"546230\";\"Kołomna\";\"other\"\n\"546230\";\"kollomna\";\"other\"\n\"546230\";\"КОЛОМНА\";\"other\"\n\"546230\";\"Каломна\";\"other\"\n\"546230\";\"Коломна\";\"other\"\n\"546230\";\"콜롬나\";\"other\"\n\"546282\";\"Kologriv\";\"main\"\n\"546282\";\"KOLOGRIV\";\"other\"\n\"546282\";\"КОЛОГРИВ\";\"other\"\n\"546282\";\"Кологрив\";\"other\"\n\"546316\";\"Kolodeznyy\";\"main\"\n\"546316\";\"Kolodeznyj\";\"other\"\n\"546316\";\"Колодезный\";\"other\"\n\"546374\";\"Kolobovo\";\"main\"\n\"546374\";\"KOLOBOVO\";\"other\"\n\"546374\";\"КОЛОБОВО\";\"other\"\n\"546374\";\"Колобово\";\"other\"\n\"546521\";\"Kol’chugino\";\"main\"\n\"546521\";\"Kol'chugino\";\"ascii\"\n\"546521\";\"KOL'CHUGINO\";\"other\"\n\"546521\";\"Kellerovo\";\"other\"\n\"546521\";\"Koltschugino\";\"other\"\n\"546521\";\"Koltsjugino\";\"other\"\n\"546521\";\"КОЛЬЧУГИНО\";\"other\"\n\"546521\";\"Кольчугино\";\"other\"\n\"546554\";\"Kola\";\"main\"\n\"546554\";\"Gorod Kola\";\"other\"\n\"546554\";\"Guoladat\";\"other\"\n\"546554\";\"Guoládat\";\"other\"\n\"546554\";\"Kualok\";\"other\"\n\"546554\";\"Kuola\";\"other\"\n\"546554\";\"Kuâlõk\";\"other\"\n\"546554\";\"Кола\";\"other\"\n\"546579\";\"Koksovyy\";\"main\"\n\"546579\";\"KOKSOVYJ\";\"other\"\n\"546579\";\"Koksovyj\";\"other\"\n\"546579\";\"КОКСОВЫЙ\";\"other\"\n\"546579\";\"Коксовый\";\"other\"\n\"546606\";\"Kokoshkino\";\"main\"\n\"546606\";\"Kokoshkinskiy\";\"other\"\n\"546606\";\"Кокошкино\";\"other\"\n\"546633\";\"Kokorevka\";\"main\"\n\"546633\";\"KOKOREVKA\";\"other\"\n\"546633\";\"КОКОРЕВКА\";\"other\"\n\"546633\";\"Кокоревка\";\"other\"\n\"546664\";\"Kokino\";\"main\"\n\"546664\";\"Kokina\";\"other\"\n\"546664\";\"Кокино\";\"other\"\n\"546672\";\"Kokhma\";\"main\"\n\"546672\";\"KOKHMA\";\"other\"\n\"546672\";\"КОХМА\";\"other\"\n\"546672\";\"Кохма\";\"other\"\n\"546742\";\"Kodino\";\"main\"\n\"546742\";\"KODINO\";\"other\"\n\"546742\";\"КОДИНО\";\"other\"\n\"546742\";\"Кодино\";\"other\"\n\"546798\";\"Kochkurovo\";\"main\"\n\"546798\";\"Kotsjkurovo\";\"other\"\n\"546798\";\"Кочкурово\";\"other\"\n\"546845\";\"Kochevo\";\"main\"\n\"546845\";\"Kotsjevo\";\"other\"\n\"546845\";\"Кочево\";\"other\"\n\"547005\";\"Kobrinskoye\";\"main\"\n\"547005\";\"Kobrino\";\"other\"\n\"547005\";\"Kobrinskoje\";\"other\"\n\"547005\";\"Кобринское\";\"other\"\n\"547162\";\"Knyaginino\";\"main\"\n\"547162\";\"KNJAGININO\";\"other\"\n\"547162\";\"Knjaginino\";\"other\"\n\"547162\";\"Knyaginin\";\"other\"\n\"547162\";\"Knyayinino\";\"other\"\n\"547162\";\"КНЯГИНИНО\";\"other\"\n\"547162\";\"Княгинино\";\"other\"\n\"547383\";\"Klyavlino\";\"main\"\n\"547383\";\"Kljavlino\";\"other\"\n\"547383\";\"Клявлино\";\"other\"\n\"547475\";\"Klintsy\";\"main\"\n\"547475\";\"KLINCY\";\"other\"\n\"547475\";\"Klince\";\"other\"\n\"547475\";\"Klinci\";\"other\"\n\"547475\";\"Klintsi\";\"other\"\n\"547475\";\"Klinzy\";\"other\"\n\"547475\";\"Klińce\";\"other\"\n\"547475\";\"КЛИНЦЫ\";\"other\"\n\"547475\";\"Клинцы\";\"other\"\n\"547523\";\"Klin\";\"main\"\n\"547523\";\"KLIN\";\"other\"\n\"547523\";\"Ulin\";\"other\"\n\"547523\";\"keullin\";\"other\"\n\"547523\";\"КЛИН\";\"other\"\n\"547523\";\"Клин\";\"other\"\n\"547523\";\"클린\";\"other\"\n\"547560\";\"Klimovsk\";\"main\"\n\"547560\";\"Klimovskiy\";\"other\"\n\"547560\";\"Климовск\";\"other\"\n\"547591\";\"Klimovo\";\"main\"\n\"547591\";\"KLIMOVO\";\"other\"\n\"547591\";\"Klimov\";\"other\"\n\"547591\";\"КЛИМОВО\";\"other\"\n\"547591\";\"Климово\";\"other\"\n\"547677\";\"Kletskaya\";\"main\"\n\"547677\";\"KLETSKIJ\";\"other\"\n\"547677\";\"Kletskiy\";\"other\"\n\"547677\";\"Klyetskaya\";\"other\"\n\"547677\";\"КЛЕТСКИЙ\";\"other\"\n\"547677\";\"Клетская\";\"other\"\n\"547681\";\"Kletnya\";\"main\"\n\"547681\";\"KLETNJA\";\"other\"\n\"547681\";\"Kletnja\";\"other\"\n\"547681\";\"Lyudinka\";\"other\"\n\"547681\";\"КЛЕТНЯ\";\"other\"\n\"547681\";\"Клетня\";\"other\"\n\"547831\";\"Kizner\";\"main\"\n\"547831\";\"Кизнер\";\"other\"\n\"547840\";\"Kizlyar\";\"main\"\n\"547840\";\"KIZLJAR\";\"other\"\n\"547840\";\"Kisljar\";\"other\"\n\"547840\";\"Kizilyar\";\"other\"\n\"547840\";\"Kizlar\";\"other\"\n\"547840\";\"Kizljar\";\"other\"\n\"547840\";\"kijeullyaleu\";\"other\"\n\"547840\";\"kizljar\";\"other\"\n\"547840\";\"КИЗЛЯР\";\"other\"\n\"547840\";\"Кизляр\";\"other\"\n\"547840\";\"키즐랴르\";\"other\"\n\"547841\";\"Kizlyar\";\"main\"\n\"547841\";\"Kizljar\";\"other\"\n\"547841\";\"Kizlyarskoye\";\"other\"\n\"547841\";\"Кизляр\";\"other\"\n\"547849\";\"Kizilyurt\";\"main\"\n\"547849\";\"Chir-Yurt\";\"other\"\n\"547849\";\"KIZILJURT\";\"other\"\n\"547849\";\"Kiziljurt\";\"other\"\n\"547849\";\"Kizyl-Yurt\";\"other\"\n\"547849\";\"Tschir-jurt\";\"other\"\n\"547849\";\"КИЗИЛЮРТ\";\"other\"\n\"547849\";\"Кизилюрт\";\"other\"\n\"547871\";\"Kizema\";\"main\"\n\"547871\";\"KIZEMA\";\"other\"\n\"547871\";\"Kizima\";\"other\"\n\"547871\";\"КИЗЕМА\";\"other\"\n\"547871\";\"Кизема\";\"other\"\n\"547875\";\"Kizel\";\"main\"\n\"547875\";\"KIZEL\";\"other\"\n\"547875\";\"Kisel\";\"other\"\n\"547875\";\"КИЗЕЛ\";\"other\"\n\"547891\";\"Kiyevskoye\";\"main\"\n\"547891\";\"Kievskaya\";\"other\"\n\"547891\";\"Kievskoi\";\"other\"\n\"547891\";\"Kiewskoje\";\"other\"\n\"547891\";\"Kijevskoje\";\"other\"\n\"547891\";\"Киевское\";\"other\"\n\"547927\";\"Kiyasovo\";\"main\"\n\"547927\";\"Kijasovo\";\"other\"\n\"547927\";\"Киясово\";\"other\"\n\"548040\";\"Kitovo\";\"main\"\n\"548040\";\"Китово\";\"other\"\n\"548097\";\"Kislyakovskaya\";\"main\"\n\"548097\";\"Kishakovskaya\";\"other\"\n\"548097\";\"Kisljakovskaja\";\"other\"\n\"548097\";\"Kizlyakovskaya\";\"other\"\n\"548097\";\"Кисляковская\";\"other\"\n\"548114\";\"Kislovodsk\";\"main\"\n\"548114\";\"Kislovodsk - Kislovodsk\";\"other\"\n\"548114\";\"Kislovodsk - Кисловодск\";\"other\"\n\"548114\";\"Kislowodsk\";\"other\"\n\"548114\";\"Kislowodzk\";\"other\"\n\"548114\";\"Kisslowodsk\";\"other\"\n\"548114\";\"Kisłowodzk\";\"other\"\n\"548114\";\"kiseullobocheukeu\";\"other\"\n\"548114\";\"kisurovu~otsuku\";\"other\"\n\"548114\";\"Кисловодск\";\"other\"\n\"548114\";\"キスロヴォツク\";\"other\"\n\"548114\";\"키슬로보츠크\";\"other\"\n\"548151\";\"Kishpek\";\"main\"\n\"548151\";\"Kisjpek\";\"other\"\n\"548151\";\"Кишпек\";\"other\"\n\"548278\";\"Kirzhach\";\"main\"\n\"548278\";\"Kirshatsch\";\"other\"\n\"548278\";\"Kirzjatsj\";\"other\"\n\"548278\";\"Киржач\";\"other\"\n\"548302\";\"Kirya\";\"main\"\n\"548302\";\"KIRJA\";\"other\"\n\"548302\";\"Kirja\";\"other\"\n\"548302\";\"КИРЯ\";\"other\"\n\"548302\";\"Киря\";\"other\"\n\"548330\";\"Kirsanov\";\"main\"\n\"548330\";\"KIRSANOV\";\"other\"\n\"548330\";\"Kirsanow\";\"other\"\n\"548330\";\"КИРСАНОВ\";\"other\"\n\"548330\";\"Кирсанов\";\"other\"\n\"548333\";\"Kirs\";\"main\"\n\"548333\";\"KIRS\";\"other\"\n\"548333\";\"Kirsinskiy\";\"other\"\n\"548333\";\"КИРС\";\"other\"\n\"548333\";\"Кирс\";\"other\"\n\"548383\";\"Kirovskiy\";\"main\"\n\"548383\";\"Кировский\";\"other\"\n\"548387\";\"Kirovskiy\";\"main\"\n\"548387\";\"Bol'shaya Pavlova\";\"other\"\n\"548387\";\"Bol’shaya Pavlova\";\"other\"\n\"548387\";\"KIROVSKIJ\";\"other\"\n\"548387\";\"Kirovskij\";\"other\"\n\"548387\";\"КИРОВСКИЙ\";\"other\"\n\"548387\";\"Кировский\";\"other\"\n\"548390\";\"Kirovskaya\";\"main\"\n\"548390\";\"Kirovskaja\";\"other\"\n\"548390\";\"Кировская\";\"other\"\n\"548391\";\"Kirovsk\";\"main\"\n\"548391\";\"Hiipina\";\"other\"\n\"548391\";\"KIROVSK\";\"other\"\n\"548391\";\"Khibinogorsk\";\"other\"\n\"548391\";\"Kirowsk\";\"other\"\n\"548391\";\"КИРОВСК\";\"other\"\n\"548391\";\"Кировск\";\"other\"\n\"548392\";\"Kirovsk\";\"main\"\n\"548392\";\"Imeni Kirova\";\"other\"\n\"548392\";\"KIROVSK\";\"other\"\n\"548392\";\"Pervoye Gorodok\";\"other\"\n\"548392\";\"Vtoroy Gorodok\";\"other\"\n\"548392\";\"КИРОВСК\";\"other\"\n\"548392\";\"Кировск\";\"other\"\n\"548395\";\"Kirovo-Chepetsk\";\"main\"\n\"548395\";\"Chepets\";\"other\"\n\"548395\";\"Chepetsk\";\"other\"\n\"548395\";\"Cheptsa\";\"other\"\n\"548395\";\"KIROVO-CHEPECK\";\"other\"\n\"548395\";\"Kirovo-Cepeck\";\"other\"\n\"548395\";\"Kirovo-Chepetskiy\";\"other\"\n\"548395\";\"Kirovo-Ĉepeck\";\"other\"\n\"548395\";\"Ust'-Chepetskoye\";\"other\"\n\"548395\";\"Ust'-Cheptsa\";\"other\"\n\"548395\";\"Ust’-Chepetskoye\";\"other\"\n\"548395\";\"Ust’-Cheptsa\";\"other\"\n\"548395\";\"kilobochepecheukeu\";\"other\"\n\"548395\";\"КИРОВО-ЧЕПЕЦК\";\"other\"\n\"548395\";\"Кирово-Чепецк\";\"other\"\n\"548395\";\"키로보체페츠크\";\"other\"\n\"548408\";\"Kirov\";\"main\"\n\"548408\";\"Khlynov\";\"other\"\n\"548408\";\"Kirovas\";\"other\"\n\"548408\";\"Kirow\";\"other\"\n\"548408\";\"Kírov\";\"other\"\n\"548408\";\"Viatka\";\"other\"\n\"548408\";\"Vyatka\";\"other\"\n\"548408\";\"Wjatka\";\"other\"\n\"548408\";\"kilopeu\";\"other\"\n\"548408\";\"kirofu\";\"other\"\n\"548408\";\"Киров\";\"other\"\n\"548408\";\"キーロフ\";\"other\"\n\"548408\";\"키로프\";\"other\"\n\"548410\";\"Kirov\";\"main\"\n\"548410\";\"KIROV\";\"other\"\n\"548410\";\"Kirovo\";\"other\"\n\"548410\";\"Pesochnaya\";\"other\"\n\"548410\";\"Pesochnya\";\"other\"\n\"548410\";\"КИРОВ\";\"other\"\n\"548410\";\"Киров\";\"other\"\n\"548442\";\"Kirishi\";\"main\"\n\"548442\";\"KIRISHI\";\"other\"\n\"548442\";\"Kirisji\";\"other\"\n\"548442\";\"КИРИШИ\";\"other\"\n\"548442\";\"Кириши\";\"other\"\n\"548478\";\"Kirillov\";\"main\"\n\"548478\";\"Кириллов\";\"other\"\n\"548493\";\"Kirgiz-Miyaki\";\"main\"\n\"548493\";\"Kirgiz-Mayaki\";\"other\"\n\"548493\";\"Kirgiz-Mijaki\";\"other\"\n\"548493\";\"Киргиз-Мияки\";\"other\"\n\"548506\";\"Kireyevsk\";\"main\"\n\"548506\";\"KIREEVSK\";\"other\"\n\"548506\";\"Kirejevsk\";\"other\"\n\"548506\";\"Kireyevka\";\"other\"\n\"548506\";\"КИРЕЕВСК\";\"other\"\n\"548506\";\"Киреевск\";\"other\"\n\"548602\";\"Kingisepp\";\"main\"\n\"548602\";\"Jaama\";\"other\"\n\"548602\";\"Jamburg\";\"other\"\n\"548602\";\"KINGISEPP\";\"other\"\n\"548602\";\"Kingissepp\";\"other\"\n\"548602\";\"Yamburg\";\"other\"\n\"548602\";\"king-gisepeu\";\"other\"\n\"548602\";\"kingisepeu\";\"other\"\n\"548602\";\"КИНГИСЕПП\";\"other\"\n\"548602\";\"Кингисепп\";\"other\"\n\"548602\";\"킨기세프\";\"other\"\n\"548602\";\"킹기세프\";\"other\"\n\"548605\";\"Kineshma\";\"main\"\n\"548605\";\"KINESHMA\";\"other\"\n\"548605\";\"Kineschma\";\"other\"\n\"548605\";\"Kineshima\";\"other\"\n\"548605\";\"Kinesma\";\"other\"\n\"548605\";\"Kineŝma\";\"other\"\n\"548605\";\"Kinešma\";\"other\"\n\"548605\";\"kinesima\";\"other\"\n\"548605\";\"kinesyuma\";\"other\"\n\"548605\";\"КИНЕШМА\";\"other\"\n\"548605\";\"Кинешма\";\"other\"\n\"548605\";\"키네슈마\";\"other\"\n\"548605\";\"키네시마\";\"other\"\n\"548622\";\"Kinel’-Cherkassy\";\"main\"\n\"548622\";\"Kinel'-Cherkassy\";\"ascii\"\n\"548622\";\"Kinel'-Cherkasy\";\"other\"\n\"548622\";\"Kinel’-Cherkasy\";\"other\"\n\"548622\";\"Кинель-Черкассы\";\"other\"\n\"548625\";\"Kinel'\";\"main\"\n\"548625\";\"KINEL'\";\"other\"\n\"548625\";\"Kinel\";\"other\"\n\"548625\";\"КИНЕЛЬ\";\"other\"\n\"548652\";\"Kimry\";\"main\"\n\"548652\";\"KIMRY\";\"other\"\n\"548652\";\"КИМРЫ\";\"other\"\n\"548652\";\"Кимры\";\"other\"\n\"548658\";\"Kimovsk\";\"main\"\n\"548658\";\"Bol'shaya Mikhaylovka\";\"other\"\n\"548658\";\"Bol’shaya Mikhaylovka\";\"other\"\n\"548658\";\"Mikhaylovka\";\"other\"\n\"548658\";\"Кимовск\";\"other\"\n\"548715\";\"Kilemary\";\"main\"\n\"548715\";\"KILEMARY\";\"other\"\n\"548715\";\"КИЛЕМАРЫ\";\"other\"\n\"548715\";\"Килемары\";\"other\"\n\"548740\";\"Kikvidze\";\"main\"\n\"548740\";\"KIKVIDZE\";\"other\"\n\"548740\";\"Kikvidse\";\"other\"\n\"548740\";\"Preobrazhenka\";\"other\"\n\"548740\";\"Preobrazhenskaja\";\"other\"\n\"548740\";\"Preobrazhenskaya\";\"other\"\n\"548740\";\"КИКВИДЗЕ\";\"other\"\n\"548740\";\"Киквидзе\";\"other\"\n\"548740\";\"Преображенская\";\"other\"\n\"548747\";\"Kiknur\";\"main\"\n\"548747\";\"KIKNUR\";\"other\"\n\"548747\";\"КИКНУР\";\"other\"\n\"548747\";\"Кикнур\";\"other\"\n\"548763\";\"Kikerino\";\"main\"\n\"548763\";\"KIKERINO\";\"other\"\n\"548763\";\"КИКЕРИНО\";\"other\"\n\"548781\";\"Kideksha\";\"main\"\n\"548781\";\"Кидекша\";\"other\"\n\"548791\";\"Kichmengskiy Gorodok\";\"main\"\n\"548791\";\"Kichmenskiy Gorodok\";\"other\"\n\"548791\";\"Kitsjmengskij Gorodok\";\"other\"\n\"548791\";\"Кичменгский Городок\";\"other\"\n\"548890\";\"Khvoynaya\";\"main\"\n\"548890\";\"Chwoinaja\";\"other\"\n\"548890\";\"KHVOJNAJA\";\"other\"\n\"548890\";\"Khvojnaja\";\"other\"\n\"548890\";\"ХВОЙНАЯ\";\"other\"\n\"548890\";\"Хвойная\";\"other\"\n\"548946\";\"Khvorostyanka\";\"main\"\n\"548946\";\"Khvorostjanka\";\"other\"\n\"548946\";\"Khvorostyahka\";\"other\"\n\"548946\";\"Хворостянка\";\"other\"\n\"548964\";\"Khvatovka\";\"main\"\n\"548964\";\"KHVATOVKA\";\"other\"\n\"548964\";\"ХВАТОВКА\";\"other\"\n\"548964\";\"Хватовка\";\"other\"\n\"548972\";\"Khvastovichi\";\"main\"\n\"548972\";\"Khastovichi\";\"other\"\n\"548972\";\"Khvastovitsji\";\"other\"\n\"548972\";\"Хвастовичи\";\"other\"\n\"548982\";\"Khvalynsk\";\"main\"\n\"548982\";\"KHVALYNSK\";\"other\"\n\"548982\";\"ХВАЛЫНСК\";\"other\"\n\"548982\";\"Хвалынск\";\"other\"\n\"549105\";\"Khunzakh\";\"main\"\n\"549105\";\"Khumsakh\";\"other\"\n\"549105\";\"Хунзах\";\"other\"\n\"549118\";\"Khumalag\";\"main\"\n\"549118\";\"Хумалаг\";\"other\"\n\"549175\";\"Khuchni\";\"main\"\n\"549175\";\"Khunchi\";\"other\"\n\"549175\";\"Khutsjni\";\"other\"\n\"549175\";\"Хучни\";\"other\"\n\"549191\";\"Khryashchevka\";\"main\"\n\"549191\";\"Khrjasjtsjevka\";\"other\"\n\"549191\";\"Khryashcheyevka\";\"other\"\n\"549191\";\"Хрящевка\";\"other\"\n\"549266\";\"Khrenovoye\";\"main\"\n\"549266\";\"Chernowje\";\"other\"\n\"549266\";\"Chrenowje\";\"other\"\n\"549266\";\"Khrenovo\";\"other\"\n\"549266\";\"Khrenovoje\";\"other\"\n\"549266\";\"Хреновое\";\"other\"\n\"549341\";\"Khotynets\";\"main\"\n\"549341\";\"KHOTYNEC\";\"other\"\n\"549341\";\"Khotinets\";\"other\"\n\"549341\";\"ХОТЫНЕЦ\";\"other\"\n\"549341\";\"Хотынец\";\"other\"\n\"549373\";\"Khot'kovo\";\"main\"\n\"549373\";\"KHOT'KOVO\";\"other\"\n\"549373\";\"ХОТЬКОВО\";\"other\"\n\"549373\";\"Хотьково\";\"other\"\n\"549424\";\"Khosta\";\"main\"\n\"549424\";\"Хоста\";\"other\"\n\"549531\";\"Khorlovo\";\"main\"\n\"549531\";\"KHORLOVO\";\"other\"\n\"549531\";\"ХОРЛОВО\";\"other\"\n\"549531\";\"Хорлово\";\"other\"\n\"549610\";\"Khomutovo\";\"main\"\n\"549610\";\"KHOMUTOVO\";\"other\"\n\"549610\";\"Khomutovskiy\";\"other\"\n\"549610\";\"ХОМУТОВО\";\"other\"\n\"549610\";\"Хомутово\";\"other\"\n\"549617\";\"Khomutovka\";\"main\"\n\"549617\";\"KHOMUTOVKA\";\"other\"\n\"549617\";\"ХОМУТОВКА\";\"other\"\n\"549617\";\"Хомутовка\";\"other\"\n\"549718\";\"Kholm-Zhirkovskiy\";\"main\"\n\"549718\";\"KHOLM ZHIRKOVSKIJ\";\"other\"\n\"549718\";\"Kholm\";\"other\"\n\"549718\";\"Kholm Zjirkovskij\";\"other\"\n\"549718\";\"Zhirkovskiy\";\"other\"\n\"549718\";\"ХОЛМ ЖИРКОВСКИЙ\";\"other\"\n\"549718\";\"Холм-Жирковский\";\"other\"\n\"549741\";\"Kholmskiy\";\"main\"\n\"549741\";\"Cholmskaja\";\"other\"\n\"549741\";\"KHOLMSKIJ\";\"other\"\n\"549741\";\"Kholmskaja\";\"other\"\n\"549741\";\"Kholmskaya\";\"other\"\n\"549741\";\"ХОЛМСКИЙ\";\"other\"\n\"549741\";\"Холмская\";\"other\"\n\"549741\";\"Холмский\";\"other\"\n\"549748\";\"Kholmogory\";\"main\"\n\"549748\";\"Cholmogory\";\"other\"\n\"549748\";\"Холмогоры\";\"other\"\n\"549786\";\"Kholm\";\"main\"\n\"549786\";\"Холм\";\"other\"\n\"549797\";\"Kholm\";\"main\"\n\"549797\";\"Cholm\";\"other\"\n\"549797\";\"Холм\";\"other\"\n\"549844\";\"Khokhryaki\";\"main\"\n\"549844\";\"Khokhrjaki\";\"other\"\n\"549844\";\"Хохряки\";\"other\"\n\"549854\";\"Khokhlovo\";\"main\"\n\"549854\";\"KHOKHLOVO\";\"other\"\n\"549854\";\"Khokhlova\";\"other\"\n\"549854\";\"ХОХЛОВО\";\"other\"\n\"549854\";\"Хохлово\";\"other\"\n\"549891\";\"Khodz’\";\"main\"\n\"549891\";\"Khodz'\";\"ascii\"\n\"549891\";\"Khodz\";\"other\"\n\"549891\";\"Ходзь\";\"other\"\n\"550102\";\"Khlevnoye\";\"main\"\n\"550102\";\"Khlebnoye\";\"other\"\n\"550102\";\"Khlevnoje\";\"other\"\n\"550102\";\"Хлевное\";\"other\"\n\"550201\";\"Khiv\";\"main\"\n\"550201\";\"Хив\";\"other\"\n\"550234\";\"Khislavichi\";\"main\"\n\"550234\";\"KHISLAVICHI\";\"other\"\n\"550234\";\"Khislavitsji\";\"other\"\n\"550234\";\"Khoslavichi\";\"other\"\n\"550234\";\"ХИСЛАВИЧИ\";\"other\"\n\"550234\";\"Хиславичи\";\"other\"\n\"550280\";\"Khimki\";\"main\"\n\"550280\";\"Chimki\";\"other\"\n\"550280\";\"Himki\";\"other\"\n\"550280\";\"Moskau-Chimki\";\"other\"\n\"550280\";\"himki\";\"other\"\n\"550280\";\"Ĥimki\";\"other\"\n\"550280\";\"Химки\";\"other\"\n\"550280\";\"힘키\";\"other\"\n\"550366\";\"Khelyulya\";\"main\"\n\"550366\";\"KHELJULJA\";\"other\"\n\"550366\";\"Kheljulja\";\"other\"\n\"550366\";\"ХЕЛЮЛЯ\";\"other\"\n\"550366\";\"Хелюля\";\"other\"\n\"550452\";\"Khatukay\";\"main\"\n\"550452\";\"Khatukaj\";\"other\"\n\"550452\";\"Хатукай\";\"other\"\n\"550478\";\"Khasavyurt\";\"main\"\n\"550478\";\"Chassaw-Jurt\";\"other\"\n\"550478\";\"KHASAVJURT\";\"other\"\n\"550478\";\"Khasavjurt\";\"other\"\n\"550478\";\"Staro Khasav-Yurt\";\"other\"\n\"550478\";\"ХАСАВЮРТ\";\"other\"\n\"550512\";\"Kharovsk\";\"main\"\n\"550512\";\"KHAROVSK\";\"other\"\n\"550512\";\"Karovsk\";\"other\"\n\"550512\";\"ХАРОВСК\";\"other\"\n\"550512\";\"Харовск\";\"other\"\n\"550516\";\"Kharlu\";\"main\"\n\"550516\";\"Harlu\";\"other\"\n\"550516\";\"Харлу\";\"other\"\n\"550574\";\"Kharitonovo\";\"main\"\n\"550574\";\"Charitonovo\";\"other\"\n\"550574\";\"KHARITONOVO\";\"other\"\n\"550574\";\"Khiritonovo\";\"other\"\n\"550574\";\"ХАРИТОНОВО\";\"other\"\n\"550574\";\"Харитоново\";\"other\"\n\"550671\";\"Kharabali\";\"main\"\n\"550671\";\"Charabali\";\"other\"\n\"550671\";\"Charabalinskoje\";\"other\"\n\"550671\";\"KHARABALI\";\"other\"\n\"550671\";\"ХАРАБАЛИ\";\"other\"\n\"550671\";\"Харабали\";\"other\"\n\"550708\";\"Khanskaya\";\"main\"\n\"550708\";\"Chanskaja\";\"other\"\n\"550708\";\"Khanskaja\";\"other\"\n\"550708\";\"Ханская\";\"other\"\n\"550726\";\"Khanino\";\"main\"\n\"550726\";\"KHANINO\";\"other\"\n\"550726\";\"ХАНИНО\";\"other\"\n\"550726\";\"Ханино\";\"other\"\n\"550775\";\"Khamamatyurt\";\"main\"\n\"550775\";\"Khamamat-Jurt\";\"other\"\n\"550775\";\"Khamamayurt\";\"other\"\n\"550775\";\"Хамамат-Юрт\";\"other\"\n\"550775\";\"Хамаматюрт\";\"other\"\n\"550785\";\"Orlov\";\"main\"\n\"550785\";\"Khalturin\";\"other\"\n\"550785\";\"Орлов\";\"other\"\n\"550844\";\"Khadzhalmakhi\";\"main\"\n\"550844\";\"Khadzhal-Makhi\";\"other\"\n\"550844\";\"Khajal-Makhi\";\"other\"\n\"550844\";\"Khodzhal-Makhinskskoye\";\"other\"\n\"550844\";\"Хаджал-Махи\";\"other\"\n\"550844\";\"Хаджалмахи\";\"other\"\n\"550846\";\"Khadyzhensk\";\"main\"\n\"550846\";\"KHADYZHENSK\";\"other\"\n\"550846\";\"Khadyzhenskaya\";\"other\"\n\"550846\";\"Khadyzhenskiy\";\"other\"\n\"550846\";\"Khadyzhensky\";\"other\"\n\"550846\";\"Khadyzhy\";\"other\"\n\"550846\";\"Khadyzjensk\";\"other\"\n\"550846\";\"ХАДЫЖЕНСК\";\"other\"\n\"550846\";\"Хадыженск\";\"other\"\n\"550868\";\"Khabez\";\"main\"\n\"550868\";\"Хабез\";\"other\"\n\"550902\";\"Kez\";\"main\"\n\"550902\";\"KEZ\";\"other\"\n\"550902\";\"КЕЗ\";\"other\"\n\"550902\";\"Кез\";\"other\"\n\"550918\";\"Kevsala\";\"main\"\n\"550918\";\"Кевсала\";\"other\"\n\"550949\";\"Kesova Gora\";\"main\"\n\"550949\";\"Kesova-Gora\";\"other\"\n\"550949\";\"Кесова Гора\";\"other\"\n\"550973\";\"Kerva\";\"main\"\n\"550973\";\"KERVA\";\"other\"\n\"550973\";\"КЕРВА\";\"other\"\n\"550973\";\"Керва\";\"other\"\n\"551047\";\"Kerchevskiy\";\"main\"\n\"551047\";\"KERCHEVSKIJ\";\"other\"\n\"551047\";\"Kercheva\";\"other\"\n\"551047\";\"Kerchevo\";\"other\"\n\"551047\";\"Kertsjevskij\";\"other\"\n\"551047\";\"КЕРЧЕВСКИЙ\";\"other\"\n\"551070\";\"Kenzhe\";\"main\"\n\"551070\";\"KENZHE\";\"other\"\n\"551070\";\"Kenzje\";\"other\"\n\"551070\";\"КЕНЖЕ\";\"other\"\n\"551070\";\"Кенже\";\"other\"\n\"551124\";\"Kemlya\";\"main\"\n\"551124\";\"KEMLJA\";\"other\"\n\"551124\";\"Kemlja\";\"other\"\n\"551124\";\"КЕМЛЯ\";\"other\"\n\"551124\";\"Кемля\";\"other\"\n\"551145\";\"Kem’\";\"main\"\n\"551145\";\"Kem'\";\"ascii\"\n\"551145\";\"KEM'\";\"other\"\n\"551145\";\"Kem\";\"other\"\n\"551145\";\"Ken\";\"other\"\n\"551145\";\"Vienan Kemi\";\"other\"\n\"551145\";\"КЕМЬ\";\"other\"\n\"551145\";\"Кемь\";\"other\"\n\"551438\";\"Kazanskaya\";\"main\"\n\"551438\";\"Kasanskaja\";\"other\"\n\"551438\";\"Kazanskaja\";\"other\"\n\"551438\";\"Казанская\";\"other\"\n\"551439\";\"Kazanskaya\";\"main\"\n\"551439\";\"Kazanskaja\";\"other\"\n\"551439\";\"Казанская\";\"other\"\n\"551487\";\"Kazan’\";\"main\"\n\"551487\";\"Kazan'\";\"ascii\"\n\"551487\";\"KAZAN'\";\"other\"\n\"551487\";\"Kasan\";\"other\"\n\"551487\";\"КАЗАНЬ\";\"other\"\n\"551487\";\"Казань\";\"other\"\n\"551535\";\"Kazaki\";\"main\"\n\"551535\";\"Kagaki\";\"other\"\n\"551535\";\"Kasaki\";\"other\"\n\"551535\";\"Казаки\";\"other\"\n\"551638\";\"Kayasula\";\"main\"\n\"551638\";\"Kajasula\";\"other\"\n\"551638\";\"Kayasulu\";\"other\"\n\"551638\";\"Terek-bay\";\"other\"\n\"551638\";\"Каясула\";\"other\"\n\"551646\";\"Kayakent\";\"main\"\n\"551646\";\"Kaja-Ken\";\"other\"\n\"551646\";\"Kajakent\";\"other\"\n\"551646\";\"Kaya Kend\";\"other\"\n\"551646\";\"Каякент\";\"other\"\n\"551667\";\"Kavkazskiy\";\"main\"\n\"551667\";\"Karkazskiy\";\"other\"\n\"551667\";\"Kavkazskij\";\"other\"\n\"551667\";\"Кавказский\";\"other\"\n\"551669\";\"Kavkazskaya\";\"main\"\n\"551669\";\"Kavkazskaja\";\"other\"\n\"551669\";\"Kawkaskaja\";\"other\"\n\"551669\";\"Кавказская\";\"other\"\n\"551729\";\"Katyr-Yurt\";\"main\"\n\"551729\";\"Katyr-Jurt\";\"other\"\n\"551729\";\"Tutovo\";\"other\"\n\"551729\";\"Катыр-Юрт\";\"other\"\n\"551732\";\"Katyn'\";\"main\"\n\"551732\";\"Катынь\";\"other\"\n\"551736\";\"Katunino\";\"main\"\n\"551736\";\"Lakhta\";\"other\"\n\"551736\";\"Катунино\";\"other\"\n\"551794\";\"Katav-Ivanovsk\";\"main\"\n\"551794\";\"Katav-Ivanovskiy\";\"other\"\n\"551794\";\"Катав-Ивановск\";\"other\"\n\"551816\";\"Kasumkent\";\"main\"\n\"551816\";\"Касумкент\";\"other\"\n\"551823\";\"Kastornoye\";\"main\"\n\"551823\";\"KASTORNOE\";\"other\"\n\"551823\";\"Kastornoje\";\"other\"\n\"551823\";\"КАСТОРНОЕ\";\"other\"\n\"551823\";\"Касторное\";\"other\"\n\"551846\";\"Kaspiyskiy\";\"main\"\n\"551846\";\"LAGAN'\";\"other\"\n\"551846\";\"Lagan\";\"other\"\n\"551846\";\"Lagan'\";\"other\"\n\"551846\";\"Lagan’\";\"other\"\n\"551846\";\"Logan'\";\"other\"\n\"551846\";\"Logan’\";\"other\"\n\"551846\";\"Каспийский\";\"other\"\n\"551846\";\"ЛАГАНЬ\";\"other\"\n\"551847\";\"Kaspiysk\";\"main\"\n\"551847\";\"Dvigatel'stroy\";\"other\"\n\"551847\";\"Dvigatel’stroy\";\"other\"\n\"551847\";\"KASPIJSK\";\"other\"\n\"551847\";\"Kaspijsk\";\"other\"\n\"551847\";\"Sotsgorod\";\"other\"\n\"551847\";\"kaseupiseukeu\";\"other\"\n\"551847\";\"КАСПИЙСК\";\"other\"\n\"551847\";\"Каспийск\";\"other\"\n\"551847\";\"카스피스크\";\"other\"\n\"551891\";\"Kasimov\";\"main\"\n\"551891\";\"KASIMOV\";\"other\"\n\"551891\";\"КАСИМОВ\";\"other\"\n\"551891\";\"Касимов\";\"other\"\n\"551948\";\"Kashirskoye\";\"main\"\n\"551948\";\"Kasjirskoje\";\"other\"\n\"551948\";\"Каширское\";\"other\"\n\"551964\";\"Kashira\";\"main\"\n\"551964\";\"KASHIRA\";\"other\"\n\"551964\";\"Kasjira\";\"other\"\n\"551964\";\"КАШИРА\";\"other\"\n\"551964\";\"Кашира\";\"other\"\n\"551986\";\"Kashin\";\"main\"\n\"551986\";\"KASHIN\";\"other\"\n\"551986\";\"Kaschin\";\"other\"\n\"551986\";\"Kasjin\";\"other\"\n\"551986\";\"КАШИН\";\"other\"\n\"552006\";\"Kashary\";\"main\"\n\"552006\";\"Kasjary\";\"other\"\n\"552006\";\"Кашары\";\"other\"\n\"552133\";\"Karsun\";\"main\"\n\"552133\";\"KARSUN\";\"other\"\n\"552133\";\"КАРСУН\";\"other\"\n\"552133\";\"Карсун\";\"other\"\n\"552161\";\"Karpushikha\";\"main\"\n\"552161\";\"KARPUSHIKHA\";\"other\"\n\"552161\";\"Karpusjikha\";\"other\"\n\"552161\";\"КАРПУШИХА\";\"other\"\n\"552161\";\"Карпушиха\";\"other\"\n\"552256\";\"Karpogory\";\"main\"\n\"552256\";\"Карпогоры\";\"other\"\n\"552312\";\"Karmaskaly\";\"main\"\n\"552312\";\"Karmakaly\";\"other\"\n\"552312\";\"Кармаскалы\";\"other\"\n\"552465\";\"Kargopol’\";\"main\"\n\"552465\";\"Kargopol'\";\"ascii\"\n\"552465\";\"KARGOPOL'\";\"other\"\n\"552465\";\"Kargopol\";\"other\"\n\"552465\";\"КАРГОПОЛЬ\";\"other\"\n\"552465\";\"Каргополь\";\"other\"\n\"552500\";\"Kargalinskaya\";\"main\"\n\"552500\";\"Kargalinskaja\";\"other\"\n\"552500\";\"Каргалинская\";\"other\"\n\"552555\";\"Kardzhin\";\"main\"\n\"552555\";\"Kardzjin\";\"other\"\n\"552555\";\"Карджин\";\"other\"\n\"552558\";\"Kardymovo\";\"main\"\n\"552558\";\"KARDYMOVO\";\"other\"\n\"552558\";\"Kardymoro\";\"other\"\n\"552558\";\"КАРДЫМОВО\";\"other\"\n\"552558\";\"Кардымово\";\"other\"\n\"552562\";\"Kardonikskaya\";\"main\"\n\"552562\";\"Kardonikskaja\";\"other\"\n\"552562\";\"Кардоникская\";\"other\"\n\"552568\";\"Kardailovo\";\"main\"\n\"552568\";\"Kapoailovskaya\";\"other\"\n\"552568\";\"Kardailovskaya\";\"other\"\n\"552568\";\"Kardailovskiy\";\"other\"\n\"552568\";\"Кардаилово\";\"other\"\n\"552692\";\"Karata\";\"main\"\n\"552692\";\"Карата\";\"other\"\n\"552830\";\"Karakulino\";\"main\"\n\"552830\";\"Каракулино\";\"other\"\n\"552862\";\"Karaidel’\";\"main\"\n\"552862\";\"Karaidel'\";\"ascii\"\n\"552862\";\"Karaidel\";\"other\"\n\"552862\";\"Караидель\";\"other\"\n\"552887\";\"Karagay\";\"main\"\n\"552887\";\"Karagaj\";\"other\"\n\"552887\";\"Карагай\";\"other\"\n\"552895\";\"Karagach\";\"main\"\n\"552895\";\"Inalov\";\"other\"\n\"552895\";\"Karagachevo\";\"other\"\n\"552895\";\"Karagatsj\";\"other\"\n\"552895\";\"Карагач\";\"other\"\n\"552920\";\"Karachev\";\"main\"\n\"552920\";\"Karatschew\";\"other\"\n\"552920\";\"Karatsjev\";\"other\"\n\"552920\";\"Карачев\";\"other\"\n\"552924\";\"Karachayevsk\";\"main\"\n\"552924\";\"KARACHAEVSK\";\"other\"\n\"552924\";\"Karatsjajevsk\";\"other\"\n\"552924\";\"Klukhori\";\"other\"\n\"552924\";\"Mikojan-Schachar\";\"other\"\n\"552924\";\"Mikopi Shakhar\";\"other\"\n\"552924\";\"Mikoyan-Shakhar\";\"other\"\n\"552924\";\"КАРАЧАЕВСК\";\"other\"\n\"552924\";\"Карачаевск\";\"other\"\n\"552951\";\"Karabulak\";\"main\"\n\"552951\";\"KARABULAK\";\"other\"\n\"552951\";\"Karabulakskaya\";\"other\"\n\"552951\";\"КАРАБУЛАК\";\"other\"\n\"552953\";\"Karabudakhkent\";\"main\"\n\"552953\";\"Karabudachkent\";\"other\"\n\"552953\";\"Karabudukh\";\"other\"\n\"552953\";\"Karabulakh-Kend\";\"other\"\n\"552953\";\"Карабудахкент\";\"other\"\n\"552974\";\"Karabash\";\"main\"\n\"552974\";\"KARABASH\";\"other\"\n\"552974\";\"Karabasj\";\"other\"\n\"552974\";\"КАРАБАШ\";\"other\"\n\"552974\";\"Карабаш\";\"other\"\n\"552977\";\"Karabanovo\";\"main\"\n\"552977\";\"KARABANOVO\";\"other\"\n\"552977\";\"КАРАБАНОВО\";\"other\"\n\"552977\";\"Карабаново\";\"other\"\n\"552999\";\"Kapustin Yar\";\"main\"\n\"552999\";\"Капустин Яр\";\"other\"\n\"553092\";\"Kantyshevo\";\"main\"\n\"553092\";\"Kantysjevo\";\"other\"\n\"553092\";\"Nartovo\";\"other\"\n\"553092\";\"Nartovskoya\";\"other\"\n\"553092\";\"Кантышево\";\"other\"\n\"553099\";\"Kantemirovka\";\"main\"\n\"553099\";\"Kantemirowka\";\"other\"\n\"553099\";\"Кантемировка\";\"other\"\n\"553138\";\"Kangly\";\"main\"\n\"553138\";\"Канглы\";\"other\"\n\"553152\";\"Kanevskaya\";\"main\"\n\"553152\";\"Kanevskaja\";\"other\"\n\"553152\";\"Kanewskaja\";\"other\"\n\"553152\";\"Каневская\";\"other\"\n\"553159\";\"Kanelovskaya\";\"main\"\n\"553159\";\"Kanelovskaja\";\"other\"\n\"553159\";\"Konelovskaya\";\"other\"\n\"553159\";\"Krasnopolyanka\";\"other\"\n\"553159\";\"Канеловская\";\"other\"\n\"553169\";\"Kandry\";\"main\"\n\"553169\";\"Kandry-Amineva\";\"other\"\n\"553169\";\"Кандры\";\"other\"\n\"553190\";\"Kandalaksha\";\"main\"\n\"553190\";\"Kaeddluhtt\";\"other\"\n\"553190\";\"Kandalaksa\";\"other\"\n\"553190\";\"Kandalakscha\";\"other\"\n\"553190\";\"Kandalaksja\";\"other\"\n\"553190\";\"Kandalaksza\";\"other\"\n\"553190\";\"Kandalakŝa\";\"other\"\n\"553190\";\"Kandalakša\";\"other\"\n\"553190\";\"Kandałaksza\";\"other\"\n\"553190\";\"Kannanlahti\";\"other\"\n\"553190\";\"Kannanlaksi\";\"other\"\n\"553190\";\"Kannanlakši\";\"other\"\n\"553190\";\"Kantalahti\";\"other\"\n\"553190\";\"Käddluhtt\";\"other\"\n\"553190\";\"kandallagsya\";\"other\"\n\"553190\";\"kanradakusha\";\"other\"\n\"553190\";\"Кандалакша\";\"other\"\n\"553190\";\"カンラダクシャ\";\"other\"\n\"553190\";\"칸달락샤\";\"other\"\n\"553216\";\"Kanash\";\"main\"\n\"553216\";\"KANASH\";\"other\"\n\"553216\";\"Kanas\";\"other\"\n\"553216\";\"Kanasch\";\"other\"\n\"553216\";\"Kanasz\";\"other\"\n\"553216\";\"Kanaŝ\";\"other\"\n\"553216\";\"Kanaš\";\"other\"\n\"553216\";\"Shikhrany\";\"other\"\n\"553216\";\"kanash\";\"other\"\n\"553216\";\"kanasi\";\"other\"\n\"553216\";\"КАНАШ\";\"other\"\n\"553216\";\"Канаш\";\"other\"\n\"553216\";\"카나시\";\"other\"\n\"553233\";\"Kanadey\";\"main\"\n\"553233\";\"KANADEJ\";\"other\"\n\"553233\";\"Kanadej\";\"other\"\n\"553233\";\"КАНАДЕЙ\";\"other\"\n\"553233\";\"Канадей\";\"other\"\n\"553248\";\"Kamyzyak\";\"main\"\n\"553248\";\"KAMYZJAK\";\"other\"\n\"553248\";\"Kamysjak\";\"other\"\n\"553248\";\"Kamyziak\";\"other\"\n\"553248\";\"КАМЫЗЯК\";\"other\"\n\"553248\";\"Камызяк\";\"other\"\n\"553271\";\"Kamyshla\";\"main\"\n\"553271\";\"Kamysjla\";\"other\"\n\"553271\";\"Камышла\";\"other\"\n\"553287\";\"Kamyshin\";\"main\"\n\"553287\";\"KAMYSHIN\";\"other\"\n\"553287\";\"Kamisin\";\"other\"\n\"553287\";\"Kamiŝin\";\"other\"\n\"553287\";\"Kamišin\";\"other\"\n\"553287\";\"Kamosin\";\"other\"\n\"553287\";\"Kamyschin\";\"other\"\n\"553287\";\"Kamyszyn\";\"other\"\n\"553287\";\"Kamõšin\";\"other\"\n\"553287\";\"kamisin\";\"other\"\n\"553287\";\"КАМЫШИН\";\"other\"\n\"553287\";\"Камышин\";\"other\"\n\"553287\";\"카미신\";\"other\"\n\"553310\";\"Kamyshevatskaya\";\"main\"\n\"553310\";\"Kamishevatskaya\";\"other\"\n\"553310\";\"Kamuishevat\";\"other\"\n\"553310\";\"Kamyschewatkaja\";\"other\"\n\"553310\";\"Kamyshevatka\";\"other\"\n\"553310\";\"Kamyshyevat\";\"other\"\n\"553310\";\"Kamysjevatskaja\";\"other\"\n\"553310\";\"Камышеватская\";\"other\"\n\"553374\";\"Kaminskiy\";\"main\"\n\"553374\";\"Gorki-Pavlovo\";\"other\"\n\"553374\";\"Gorki-Pavlovy\";\"other\"\n\"553374\";\"KAMINSKIJ\";\"other\"\n\"553374\";\"Kaminskij\";\"other\"\n\"553374\";\"Kaminsky\";\"other\"\n\"553374\";\"КАМИНСКИЙ\";\"other\"\n\"553374\";\"Каминский\";\"other\"\n\"553389\";\"Kameshkovo\";\"main\"\n\"553389\";\"KAMESHKOVO\";\"other\"\n\"553389\";\"Kamesjkovo\";\"other\"\n\"553389\";\"КАМЕШКОВО\";\"other\"\n\"553389\";\"Камешково\";\"other\"\n\"553399\";\"Kamensk-Shakhtinskiy\";\"main\"\n\"553399\";\"Kamensk\";\"other\"\n\"553399\";\"Kamensk Shakhtinski\";\"other\"\n\"553399\";\"Kamensk-Schachtinskij\";\"other\"\n\"553399\";\"Kamensk-Schachtiuski\";\"other\"\n\"553399\";\"Kamenskaya\";\"other\"\n\"553399\";\"Каменск\";\"other\"\n\"553399\";\"Каменск-Шахтинский\";\"other\"\n\"553416\";\"Kamenskiy\";\"main\"\n\"553416\";\"Grimm\";\"other\"\n\"553416\";\"KAMENSKIJ\";\"other\"\n\"553416\";\"Kamenskij\";\"other\"\n\"553416\";\"Lesnoy Karamysh\";\"other\"\n\"553416\";\"КАМЕНСКИЙ\";\"other\"\n\"553416\";\"Каменский\";\"other\"\n\"553427\";\"Kamenolomni\";\"main\"\n\"553427\";\"KAMENOLOMNI\";\"other\"\n\"553427\";\"Kamenolomnya\";\"other\"\n\"553427\";\"КАМЕНОЛОМНИ\";\"other\"\n\"553427\";\"Каменоломни\";\"other\"\n\"553513\";\"Kamennomostskoye\";\"main\"\n\"553513\";\"Kamennomostskoje\";\"other\"\n\"553513\";\"Kamenomostskoye\";\"other\"\n\"553513\";\"Karmovo\";\"other\"\n\"553513\";\"Каменномостское\";\"other\"\n\"553514\";\"Kamennomostskiy\";\"main\"\n\"553514\";\"KAMENNOMOSTSKIJ\";\"other\"\n\"553514\";\"Kamennomostskaja\";\"other\"\n\"553514\";\"Kamennomostskaya\";\"other\"\n\"553514\";\"Kamennomostskij\";\"other\"\n\"553514\";\"КАМЕННОМОСТСКИЙ\";\"other\"\n\"553514\";\"Каменномостский\";\"other\"\n\"553518\";\"Kamennogorsk\";\"main\"\n\"553518\";\"Antrea\";\"other\"\n\"553518\";\"KAMENNOGORSK\";\"other\"\n\"553518\";\"Kammenogorsk\";\"other\"\n\"553518\";\"КАМЕННОГОРСК\";\"other\"\n\"553518\";\"Каменногорск\";\"other\"\n\"553609\";\"Kamenka\";\"main\"\n\"553609\";\"KAMENKA\";\"other\"\n\"553609\";\"КАМЕНКА\";\"other\"\n\"553609\";\"Каменка\";\"other\"\n\"553655\";\"Kamenka\";\"main\"\n\"553655\";\"Каменка\";\"other\"\n\"553766\";\"Kamenka\";\"main\"\n\"553766\";\"Каменка\";\"other\"\n\"553778\";\"Kamenka\";\"main\"\n\"553778\";\"Каменка\";\"other\"\n\"553791\";\"Kamenetskiy\";\"main\"\n\"553791\";\"KAMENECKIJ\";\"other\"\n\"553791\";\"Kamenetskij\";\"other\"\n\"553791\";\"КАМЕНЕЦКИЙ\";\"other\"\n\"553791\";\"Каменетский\";\"other\"\n\"553828\";\"Kambileyevskoye\";\"main\"\n\"553828\";\"Kambilejevskoje\";\"other\"\n\"553828\";\"Nizhniy Dzherakh\";\"other\"\n\"553828\";\"Verkhne-Kambileyevskoye\";\"other\"\n\"553828\";\"Камбилеевское\";\"other\"\n\"553835\";\"Kambarka\";\"main\"\n\"553835\";\"KAMBARKA\";\"other\"\n\"553835\";\"Kamarka\";\"other\"\n\"553835\";\"Kambarskiy\";\"other\"\n\"553835\";\"КАМБАРКА\";\"other\"\n\"553835\";\"Камбарка\";\"other\"\n\"553878\";\"Kama\";\"main\"\n\"553878\";\"Butysh\";\"other\"\n\"553878\";\"KAMA\";\"other\"\n\"553878\";\"КАМА\";\"other\"\n\"553878\";\"Кама\";\"other\"\n\"553884\";\"Kalyazin\";\"main\"\n\"553884\";\"Kaliazin\";\"other\"\n\"553884\";\"Kaljazin\";\"other\"\n\"553884\";\"Калязин\";\"other\"\n\"553915\";\"Kaluga\";\"main\"\n\"553915\";\"Kaloega\";\"other\"\n\"553915\";\"Kalugae\";\"other\"\n\"553915\";\"Kalyga\";\"other\"\n\"553915\";\"Kaługa\";\"other\"\n\"553915\";\"kalluga\";\"other\"\n\"553915\";\"karuga\";\"other\"\n\"553915\";\"qlwgh\";\"other\"\n\"553915\";\"Калугæ\";\"other\"\n\"553915\";\"Калуга\";\"other\"\n\"553915\";\"קלוגה\";\"other\"\n\"553915\";\"カルーガ\";\"other\"\n\"553915\";\"칼루가\";\"other\"\n\"553929\";\"Kaltasy\";\"main\"\n\"553929\";\"Калтасы\";\"other\"\n\"553955\";\"Kalnibolotskaya\";\"main\"\n\"553955\";\"Kainibolotskaya\";\"other\"\n\"553955\";\"Kalnibolotskaja\";\"other\"\n\"553955\";\"Kanibolotskaya\";\"other\"\n\"553955\";\"Калниболотская\";\"other\"\n\"554064\";\"Kalinovskoye\";\"main\"\n\"554064\";\"Kalinovskoje\";\"other\"\n\"554064\";\"Kalivo\";\"other\"\n\"554064\";\"Калиновское\";\"other\"\n\"554077\";\"Kalinovskaya\";\"main\"\n\"554077\";\"Kahnoyakaya\";\"other\"\n\"554077\";\"Kalinovskaja\";\"other\"\n\"554077\";\"Kalinovskoye\";\"other\"\n\"554077\";\"Калиновская\";\"other\"\n\"554153\";\"Kalino\";\"main\"\n\"554153\";\"KALINO\";\"other\"\n\"554153\";\"КАЛИНО\";\"other\"\n\"554173\";\"Kalininskaya\";\"main\"\n\"554173\";\"Kalininskaja\";\"other\"\n\"554173\";\"Kalininskyaya\";\"other\"\n\"554173\";\"Popovicheskaya\";\"other\"\n\"554173\";\"Popovichevskaya\";\"other\"\n\"554173\";\"Popovichskaya\";\"other\"\n\"554173\";\"Popoviehskaya\";\"other\"\n\"554173\";\"Popowitscheskaja\";\"other\"\n\"554173\";\"Калининская\";\"other\"\n\"554199\";\"Kalininsk\";\"main\"\n\"554199\";\"Balanda\";\"other\"\n\"554199\";\"KALININSK\";\"other\"\n\"554199\";\"КАЛИНИНСК\";\"other\"\n\"554199\";\"Калининск\";\"other\"\n\"554233\";\"Korolëv\";\"main\"\n\"554233\";\"Korolev\";\"ascii\"\n\"554233\";\"Kaliningrad\";\"other\"\n\"554233\";\"Kalininskiy\";\"other\"\n\"554233\";\"Poselok Imeni Kalinina\";\"other\"\n\"554233\";\"Posëlok Imeni Kalinina\";\"other\"\n\"554233\";\"Королев\";\"other\"\n\"554233\";\"Королёв\";\"other\"\n\"554234\";\"Kaliningrad\";\"main\"\n\"554234\";\"Calininopolis\";\"other\"\n\"554234\";\"Kaliningradas\";\"other\"\n\"554234\";\"Kaliningrado\";\"other\"\n\"554234\";\"Kaliningrado - Kaliningrad\";\"other\"\n\"554234\";\"Kaliningrado - Калининград\";\"other\"\n\"554234\";\"Kalinjingrad\";\"other\"\n\"554234\";\"Kalinyingrad\";\"other\"\n\"554234\";\"Kalinyingrád\";\"other\"\n\"554234\";\"Kenisberg\";\"other\"\n\"554234\";\"Koenigsbarg\";\"other\"\n\"554234\";\"Koenigsberg\";\"other\"\n\"554234\";\"Koenigsberg in Preussen\";\"other\"\n\"554234\";\"Korigsberg\";\"other\"\n\"554234\";\"Krolewiec\";\"other\"\n\"554234\";\"Królewiec\";\"other\"\n\"554234\";\"Kënisberg\";\"other\"\n\"554234\";\"Königsbarg\";\"other\"\n\"554234\";\"Königsberg\";\"other\"\n\"554234\";\"Königsberg in Preußen\";\"other\"\n\"554234\";\"Körigsberg\";\"other\"\n\"554234\";\"jia li ning ge lei\";\"other\"\n\"554234\";\"kalliningeuladeu\";\"other\"\n\"554234\";\"kalynyngrad\";\"other\"\n\"554234\";\"kariningurado\";\"other\"\n\"554234\";\"qlynyngrd\";\"other\"\n\"554234\";\"Калининград\";\"other\"\n\"554234\";\"Калињинград\";\"other\"\n\"554234\";\"קלינינגרד\";\"other\"\n\"554234\";\"کالینینگراد\";\"other\"\n\"554234\";\"カリーニングラード\";\"other\"\n\"554234\";\"加里寧格勒\";\"other\"\n\"554234\";\"칼리닌그라드\";\"other\"\n\"554236\";\"Kalininaul\";\"main\"\n\"554236\";\"Yurt-Aukh\";\"other\"\n\"554236\";\"Калининаул\";\"other\"\n\"554269\";\"Kalinin\";\"main\"\n\"554269\";\"Калинин\";\"other\"\n\"554297\";\"Kalikino\";\"main\"\n\"554297\";\"Kadikino\";\"other\"\n\"554297\";\"Каликино\";\"other\"\n\"554318\";\"Kalevala\";\"main\"\n\"554318\";\"KALEVALA\";\"other\"\n\"554318\";\"Uchtinskaja\";\"other\"\n\"554318\";\"Uhtua\";\"other\"\n\"554318\";\"Ukhta\";\"other\"\n\"554318\";\"КАЛЕВАЛА\";\"other\"\n\"554318\";\"Калевала\";\"other\"\n\"554363\";\"Kalashnikovo\";\"main\"\n\"554363\";\"KALASHNIKOVO\";\"other\"\n\"554363\";\"Kalasjnikovo\";\"other\"\n\"554363\";\"КАЛАШНИКОВО\";\"other\"\n\"554363\";\"Калашниково\";\"other\"\n\"554397\";\"Kalach-na-Donu\";\"main\"\n\"554397\";\"Kalach\";\"other\"\n\"554397\";\"Kalatsch\";\"other\"\n\"554397\";\"Kalatsj-Na-Donu\";\"other\"\n\"554397\";\"Калач-на-Дону\";\"other\"\n\"554410\";\"Kalach\";\"main\"\n\"554410\";\"Kalatsch\";\"other\"\n\"554410\";\"Kalatsj\";\"other\"\n\"554410\";\"Калач\";\"other\"\n\"554444\";\"Kakhun\";\"main\"\n\"554444\";\"Кахун\";\"other\"\n\"554491\";\"Kafyr-Kumukh\";\"main\"\n\"554491\";\"Kafyr-Kumuch\";\"other\"\n\"554491\";\"Kafyrkumyk'\";\"other\"\n\"554491\";\"Kafyrkumyk’\";\"other\"\n\"554491\";\"Кафыр-Кумух\";\"other\"\n\"554502\";\"Kadyy\";\"main\"\n\"554502\";\"KADYJ\";\"other\"\n\"554502\";\"Kady\";\"other\"\n\"554502\";\"Kadyj\";\"other\"\n\"554502\";\"КАДЫЙ\";\"other\"\n\"554502\";\"Кадый\";\"other\"\n\"554535\";\"Kaduy\";\"main\"\n\"554535\";\"KADUJ\";\"other\"\n\"554535\";\"Kadui\";\"other\"\n\"554535\";\"Kaduj\";\"other\"\n\"554535\";\"Teplova\";\"other\"\n\"554535\";\"КАДУЙ\";\"other\"\n\"554535\";\"Кадуй\";\"other\"\n\"554544\";\"Kadoshkino\";\"main\"\n\"554544\";\"KADOSHKINO\";\"other\"\n\"554544\";\"Kadosjkino\";\"other\"\n\"554544\";\"КАДОШКИНО\";\"other\"\n\"554544\";\"Кадошкино\";\"other\"\n\"554549\";\"Kadom\";\"main\"\n\"554549\";\"KADOM\";\"other\"\n\"554549\";\"КАДОМ\";\"other\"\n\"554549\";\"Кадом\";\"other\"\n\"554554\";\"Kadnikov\";\"main\"\n\"554554\";\"KADNIKOV\";\"other\"\n\"554554\";\"КАДНИКОВ\";\"other\"\n\"554554\";\"Кадников\";\"other\"\n\"554599\";\"Kachkanar\";\"main\"\n\"554599\";\"KACHKANAR\";\"other\"\n\"554599\";\"Katsjkanar\";\"other\"\n\"554599\";\"КАЧКАНАР\";\"other\"\n\"554599\";\"Качканар\";\"other\"\n\"554668\";\"Kabardinka\";\"main\"\n\"554668\";\"KABARDINKA\";\"other\"\n\"554668\";\"Kabardinskaya\";\"other\"\n\"554668\";\"Kabardinskiy Poselok\";\"other\"\n\"554668\";\"Kaberdinka\";\"other\"\n\"554668\";\"КАБАРДИНКА\";\"other\"\n\"554668\";\"Кабардинка\";\"other\"\n\"554692\";\"Kabakovo\";\"main\"\n\"554692\";\"Kabanovo\";\"other\"\n\"554692\";\"Кабаково\";\"other\"\n\"554767\";\"Izoplit\";\"main\"\n\"554767\";\"IZOPLIT\";\"other\"\n\"554767\";\"ИЗОПЛИТ\";\"other\"\n\"554767\";\"Изоплит\";\"other\"\n\"554776\";\"Iznoski\";\"main\"\n\"554776\";\"Izhoski\";\"other\"\n\"554776\";\"Износки\";\"other\"\n\"554791\";\"Izmaylovo\";\"main\"\n\"554791\";\"IZMAJLOVO\";\"other\"\n\"554791\";\"Izmajlovo\";\"other\"\n\"554791\";\"ИЗМАЙЛОВО\";\"other\"\n\"554791\";\"Измайлово\";\"other\"\n\"554806\";\"Izmalkovo\";\"main\"\n\"554806\";\"Измалково\";\"other\"\n\"554830\";\"Izhma\";\"main\"\n\"554830\";\"Ishma\";\"other\"\n\"554830\";\"Iz'va\";\"other\"\n\"554830\";\"Izjma\";\"other\"\n\"554830\";\"Iz’va\";\"other\"\n\"554830\";\"Ижма\";\"other\"\n\"554836\";\"Izhevskoye\";\"main\"\n\"554836\";\"Izjevskoje\";\"other\"\n\"554836\";\"Ижевское\";\"other\"\n\"554840\";\"Izhevsk\";\"main\"\n\"554840\";\"Ijevsk\";\"other\"\n\"554840\";\"Ischewsk\";\"other\"\n\"554840\";\"Ishewsk\";\"other\"\n\"554840\";\"Izevsk\";\"other\"\n\"554840\";\"Izevska\";\"other\"\n\"554840\";\"Izewsk\";\"other\"\n\"554840\";\"Izh\";\"other\"\n\"554840\";\"Izhkar\";\"other\"\n\"554840\";\"Izjevsk\";\"other\"\n\"554840\";\"Iĵevsk\";\"other\"\n\"554840\";\"Iżewsk\";\"other\"\n\"554840\";\"Iževsk\";\"other\"\n\"554840\";\"Iževska\";\"other\"\n\"554840\";\"Ustinov\";\"other\"\n\"554840\";\"ijebseukeu\";\"other\"\n\"554840\";\"ijefusuku\";\"other\"\n\"554840\";\"Иж\";\"other\"\n\"554840\";\"Ижевск\";\"other\"\n\"554840\";\"Ижкар\";\"other\"\n\"554840\";\"איז'בסק\";\"other\"\n\"554840\";\"イジェフスク\";\"other\"\n\"554840\";\"이젭스크\";\"other\"\n\"554873\";\"Izborsk\";\"main\"\n\"554873\";\"Irboska\";\"other\"\n\"554873\";\"Staroizborsk\";\"other\"\n\"554873\";\"Vana-Irboska\";\"other\"\n\"554873\";\"Изборск\";\"other\"\n\"554894\";\"Izberbash\";\"main\"\n\"554894\";\"IZBERBASH\";\"other\"\n\"554894\";\"Izbarbash\";\"other\"\n\"554894\";\"Izberbasj\";\"other\"\n\"554894\";\"Izerbash\";\"other\"\n\"554894\";\"ИЗБЕРБАШ\";\"other\"\n\"554894\";\"Избербаш\";\"other\"\n\"554950\";\"Ivot\";\"main\"\n\"554950\";\"Ивот\";\"other\"\n\"554973\";\"Ivnya\";\"main\"\n\"554973\";\"Ivnja\";\"other\"\n\"554973\";\"Ивня\";\"other\"\n\"555111\";\"Ivanteyevka\";\"main\"\n\"555111\";\"Ivantejevka\";\"other\"\n\"555111\";\"Ivanteyevskiy\";\"other\"\n\"555111\";\"Ивантеевка\";\"other\"\n\"555112\";\"Ivanteyevka\";\"main\"\n\"555112\";\"Ivantejevka\";\"other\"\n\"555112\";\"Ивантеевка\";\"other\"\n\"555206\";\"Ivanovskoye\";\"main\"\n\"555206\";\"Ivanovskoje\";\"other\"\n\"555206\";\"Ивановское\";\"other\"\n\"555312\";\"Ivanovo\";\"main\"\n\"555312\";\"Ivanovo-Voznesensk\";\"other\"\n\"555312\";\"Iwanowo\";\"other\"\n\"555312\";\"ibanobo\";\"other\"\n\"555312\";\"yi wan nuo wo\";\"other\"\n\"555312\";\"Иваново\";\"other\"\n\"555312\";\"伊万诺沃\";\"other\"\n\"555312\";\"이바노보\";\"other\"\n\"555610\";\"Ivanishchi\";\"main\"\n\"555610\";\"IVANISHHI\";\"other\"\n\"555610\";\"Ivanishchevskiy\";\"other\"\n\"555610\";\"Ivanisjtsji\";\"other\"\n\"555610\";\"Rabochiy Poselok Ivanishchvskiy\";\"other\"\n\"555610\";\"Rabochiy Posëlok Ivanishchvskiy\";\"other\"\n\"555610\";\"ИВАНИЩИ\";\"other\"\n\"555610\";\"Иванищи\";\"other\"\n\"555617\";\"Ivanino\";\"main\"\n\"555617\";\"Иванино\";\"other\"\n\"555624\";\"Ivangorod\";\"main\"\n\"555624\";\"IVANGOROD\";\"other\"\n\"555624\";\"Iban'nkoront\";\"other\"\n\"555624\";\"Iivananlinna\";\"other\"\n\"555624\";\"Ivangorodas\";\"other\"\n\"555624\";\"Iwangorod\";\"other\"\n\"555624\";\"Jaanilinn\";\"other\"\n\"555624\";\"ibangolodeu\";\"other\"\n\"555624\";\"ibangoloteu\";\"other\"\n\"555624\";\"Ιβάνγκοροντ\";\"other\"\n\"555624\";\"ИВАНГОРОД\";\"other\"\n\"555624\";\"Ивангород\";\"other\"\n\"555624\";\"이반고로드\";\"other\"\n\"555624\";\"이반고로트\";\"other\"\n\"555681\";\"Itum-Kale\";\"main\"\n\"555681\";\"Akhalkhevi\";\"other\"\n\"555681\";\"Itum-Kali\";\"other\"\n\"555681\";\"Итум-Кале\";\"other\"\n\"555717\";\"Isyangulovo\";\"main\"\n\"555717\";\"Isiangulovo\";\"other\"\n\"555717\";\"Исянгулово\";\"other\"\n\"555746\";\"Istra\";\"main\"\n\"555746\";\"ISTRA\";\"other\"\n\"555746\";\"Voskresensk\";\"other\"\n\"555746\";\"ИСТРА\";\"other\"\n\"555746\";\"Истра\";\"other\"\n\"555798\";\"Issa\";\"main\"\n\"555798\";\"ISSA\";\"other\"\n\"555798\";\"ИССА\";\"other\"\n\"555798\";\"Исса\";\"other\"\n\"555801\";\"Ispravnaya\";\"main\"\n\"555801\";\"Ispravnaja\";\"other\"\n\"555801\";\"Исправная\";\"other\"\n\"555933\";\"Ishnya\";\"main\"\n\"555933\";\"Isjnja\";\"other\"\n\"555933\";\"Ишня\";\"other\"\n\"555950\";\"Ishley\";\"main\"\n\"555950\";\"Ishlei\";\"other\"\n\"555950\";\"Ishley-Pokrovskoye\";\"other\"\n\"555950\";\"Isjlej\";\"other\"\n\"555950\";\"Ишлей\";\"other\"\n\"555962\";\"Ishkhoy-Yurt\";\"main\"\n\"555962\";\"Ishkhoj-Jurt\";\"other\"\n\"555962\";\"Isjkhoj-Jurt\";\"other\"\n\"555962\";\"Isxoyn-Avla\";\"other\"\n\"555962\";\"Isxoyn-Yurt\";\"other\"\n\"555962\";\"Işxoyn-Yurt\";\"other\"\n\"555962\";\"Işxoyn-Əvla\";\"other\"\n\"555962\";\"Tanty\";\"other\"\n\"555962\";\"Ишхой-Юрт\";\"other\"\n\"555980\";\"Ishimbay\";\"main\"\n\"555980\";\"ISHIMBAJ\";\"other\"\n\"555980\";\"Isembai\";\"other\"\n\"555980\";\"Ishimbaj\";\"other\"\n\"555980\";\"Isimbai\";\"other\"\n\"555980\";\"Isimbaj\";\"other\"\n\"555980\";\"Iszimbaj\";\"other\"\n\"555980\";\"Iŝimbaj\";\"other\"\n\"555980\";\"Išembai\";\"other\"\n\"555980\";\"Išimbai\";\"other\"\n\"555980\";\"Išimbaj\";\"other\"\n\"555980\";\"isimbai\";\"other\"\n\"555980\";\"ИШИМБАЙ\";\"other\"\n\"555980\";\"Ишимбай\";\"other\"\n\"555980\";\"Ишимбај\";\"other\"\n\"555980\";\"이심바이\";\"other\"\n\"555984\";\"Isheyevka\";\"main\"\n\"555984\";\"Laishevka\";\"other\"\n\"555984\";\"Laisjevka\";\"other\"\n\"555984\";\"Лаишевка\";\"other\"\n\"555994\";\"Ishcherskaya\";\"main\"\n\"555994\";\"Isherskaya\";\"other\"\n\"555994\";\"Ishherskaja\";\"other\"\n\"555994\";\"Isjtsjerskaja\";\"other\"\n\"555994\";\"Ищерская\";\"other\"\n\"556111\";\"Isakly\";\"main\"\n\"556111\";\"Исаклы\";\"other\"\n\"556131\";\"Is\";\"main\"\n\"556131\";\"Fedino\";\"other\"\n\"556131\";\"IS\";\"other\"\n\"556131\";\"Is Poselok\";\"other\"\n\"556131\";\"Sverdlovskiy Priisk\";\"other\"\n\"556131\";\"ИС\";\"other\"\n\"556131\";\"Ис\";\"other\"\n\"556170\";\"Irkliyevskaya\";\"main\"\n\"556170\";\"Irklievskaya\";\"other\"\n\"556170\";\"Irklijevskaja\";\"other\"\n\"556170\";\"Ирклиевская\";\"other\"\n\"556199\";\"Irgakly\";\"main\"\n\"556199\";\"Irgakli\";\"other\"\n\"556199\";\"Иргаклы\";\"other\"\n\"556230\";\"Ipatovo\";\"main\"\n\"556230\";\"IPATOVO\";\"other\"\n\"556230\";\"Spatowo\";\"other\"\n\"556230\";\"Vinodel'noye\";\"other\"\n\"556230\";\"Vinodel’noye\";\"other\"\n\"556230\";\"ИПАТОВО\";\"other\"\n\"556230\";\"Ипатово\";\"other\"\n\"556268\";\"Ostrovnoy\";\"main\"\n\"556268\";\"Ekonga\";\"other\"\n\"556268\";\"Iokanga\";\"other\"\n\"556268\";\"Iokanka\";\"other\"\n\"556268\";\"Murmansk-140\";\"other\"\n\"556268\";\"Yokan'ga\";\"other\"\n\"556268\";\"Yokan’ga\";\"other\"\n\"556268\";\"Иоканга\";\"other\"\n\"556268\";\"Островной\";\"other\"\n\"556275\";\"Inzhavino\";\"main\"\n\"556275\";\"INZHAVINO\";\"other\"\n\"556275\";\"Inshawino\";\"other\"\n\"556275\";\"Inzjavino\";\"other\"\n\"556275\";\"ИНЖАВИНО\";\"other\"\n\"556275\";\"Инжавино\";\"other\"\n\"556279\";\"Inzer\";\"main\"\n\"556279\";\"INZER\";\"other\"\n\"556279\";\"Inzerskiy Zavod\";\"other\"\n\"556279\";\"ИНЗЕР\";\"other\"\n\"556279\";\"Инзер\";\"other\"\n\"556283\";\"Inza\";\"main\"\n\"556283\";\"INZA\";\"other\"\n\"556283\";\"ИНЗА\";\"other\"\n\"556283\";\"Инза\";\"other\"\n\"556318\";\"Insar\";\"main\"\n\"556318\";\"INSAR\";\"other\"\n\"556318\";\"ИНСАР\";\"other\"\n\"556318\";\"Инсар\";\"other\"\n\"556320\";\"Inozemtsevo\";\"main\"\n\"556320\";\"Inozemcevo\";\"other\"\n\"556320\";\"Иноземцево\";\"other\"\n\"556396\";\"Inderka\";\"main\"\n\"556396\";\"Индерка\";\"other\"\n\"556430\";\"Imeni Zhelyabova\";\"main\"\n\"556430\";\"IM. ZHELJABOVA\";\"other\"\n\"556430\";\"Sudoverf'\";\"other\"\n\"556430\";\"Sudoverf’\";\"other\"\n\"556430\";\"ИМ. ЖЕЛЯБОВА\";\"other\"\n\"556430\";\"Имени Желябова\";\"other\"\n\"556462\";\"Imeni Vorovskogo\";\"main\"\n\"556462\";\"IM.VOROVSKOGO\";\"other\"\n\"556462\";\"Im.Vorovskogo\";\"other\"\n\"556462\";\"Poselok Imeni Vorovskogo\";\"other\"\n\"556462\";\"Posëlok Imeni Vorovskogo\";\"other\"\n\"556462\";\"imeni Vorovskogo\";\"other\"\n\"556462\";\"ИМ.ВОРОВСКОГО\";\"other\"\n\"556462\";\"Имени Воровского\";\"other\"\n\"556462\";\"имени Воровского\";\"other\"\n\"556463\";\"Imeni Vorovskogo\";\"main\"\n\"556463\";\"IM.VOROVSKOGO\";\"other\"\n\"556463\";\"Poselok Vorovskogo\";\"other\"\n\"556463\";\"Posëlok Vorovskogo\";\"other\"\n\"556463\";\"imeni Vorovskogo\";\"other\"\n\"556463\";\"ИМ.ВОРОВСКОГО\";\"other\"\n\"556463\";\"Имени Воровского\";\"other\"\n\"556463\";\"имени Воровского\";\"other\"\n\"556480\";\"Imeni Vladimira Il’icha Lenina\";\"main\"\n\"556480\";\"Imeni Vladimira Il'icha Lenina\";\"ascii\"\n\"556480\";\"Fabrika Imeni Lenina\";\"other\"\n\"556480\";\"Imeni V.I. Lenina\";\"other\"\n\"556480\";\"Leninskiy\";\"other\"\n\"556480\";\"Pri Fabrike Imeni Vladimira Il'ich Lenina\";\"other\"\n\"556480\";\"Pri Fabrike Imeni Vladimira Il’ich Lenina\";\"other\"\n\"556480\";\"Имени Владимира Ильича Ленина\";\"other\"\n\"556483\";\"Imeni Tsyurupy\";\"main\"\n\"556483\";\"Poselok Imeni Tsyurupy\";\"other\"\n\"556483\";\"Posëlok Imeni Tsyurupy\";\"other\"\n\"556483\";\"Vanilovo\";\"other\"\n\"556483\";\"imeni Cjurupy\";\"other\"\n\"556483\";\"imeni Tsjurupy\";\"other\"\n\"556483\";\"Имени Цюрупы\";\"other\"\n\"556483\";\"имени Цюрупы\";\"other\"\n\"556511\";\"Imeni Sverdlova\";\"main\"\n\"556511\";\"imeni Sverdlova\";\"other\"\n\"556511\";\"Имени Свердлова\";\"other\"\n\"556511\";\"имени Свердлова\";\"other\"\n\"556516\";\"Imeni Stepana Razina\";\"main\"\n\"556516\";\"IM.STEPANA RAZINA\";\"other\"\n\"556516\";\"Stepana Razina\";\"other\"\n\"556516\";\"imeni Stepana Razina\";\"other\"\n\"556516\";\"ИМ.СТЕПАНА РАЗИНА\";\"other\"\n\"556516\";\"Имени Степана Разина\";\"other\"\n\"556516\";\"имени Степана Разина\";\"other\"\n\"556575\";\"Imeni Morozova\";\"main\"\n\"556575\";\"IM.MOROZOVA\";\"other\"\n\"556575\";\"Shlissel'burgskiy Zavod\";\"other\"\n\"556575\";\"Shlissel’burgskiy Zavod\";\"other\"\n\"556575\";\"imeni Morozova\";\"other\"\n\"556575\";\"ИМ.МОРОЗОВА\";\"other\"\n\"556575\";\"Имени Морозова\";\"other\"\n\"556575\";\"имени Морозова\";\"other\"\n\"556779\";\"Gereykhanovskoye\";\"main\"\n\"556779\";\"Gerejkhanovskij\";\"other\"\n\"556779\";\"Gereykhanova\";\"other\"\n\"556779\";\"Gereykhanovskiy\";\"other\"\n\"556779\";\"Imeni Geredkhanova\";\"other\"\n\"556779\";\"Sovkhoz Imeni Gereykhanova\";\"other\"\n\"556779\";\"Герейхановский\";\"other\"\n\"556779\";\"Герейхановское\";\"other\"\n\"556858\";\"Imeni Babushkina\";\"main\"\n\"556858\";\"Ledengsk\";\"other\"\n\"556858\";\"Ledengskoye\";\"other\"\n\"556858\";\"Ledengskoye Kurort\";\"other\"\n\"556858\";\"im.Babushkina\";\"other\"\n\"556858\";\"imeni Babushkina\";\"other\"\n\"556858\";\"Имени Бабушкина\";\"other\"\n\"556858\";\"им.Бабушкина\";\"other\"\n\"556858\";\"имени Бабушкина\";\"other\"\n\"556951\";\"Il’skiy\";\"main\"\n\"556951\";\"Il'skiy\";\"ascii\"\n\"556951\";\"Il'skaya\";\"other\"\n\"556951\";\"Ilskij\";\"other\"\n\"556951\";\"Il’skaya\";\"other\"\n\"556951\";\"Ильский\";\"other\"\n\"556961\";\"Ilovlya\";\"main\"\n\"556961\";\"ILOVLJA\";\"other\"\n\"556961\";\"Ilovlinska\";\"other\"\n\"556961\";\"Ilovlinskaya\";\"other\"\n\"556961\";\"Ilovlja\";\"other\"\n\"556961\";\"ИЛОВЛЯ\";\"other\"\n\"556961\";\"Иловля\";\"other\"\n\"556967\";\"Ilovka\";\"main\"\n\"556967\";\"Ilovskoye\";\"other\"\n\"556967\";\"Иловка\";\"other\"\n\"557060\";\"Il’inskoye-Khovanskoye\";\"main\"\n\"557060\";\"Il'inskoye-Khovanskoye\";\"ascii\"\n\"557060\";\"Ilinskoje-Khovanskoje\";\"other\"\n\"557060\";\"Ильинское-Хованское\";\"other\"\n\"557100\";\"Il’inskoye\";\"main\"\n\"557100\";\"Il'inskoye\";\"ascii\"\n\"557100\";\"Ilinskoje\";\"other\"\n\"557100\";\"Ильинское\";\"other\"\n\"557132\";\"Il’inskiy Pogost\";\"main\"\n\"557132\";\"Il'inskiy Pogost\";\"ascii\"\n\"557132\";\"Ilinskij Pogost\";\"other\"\n\"557132\";\"Ильинский Погост\";\"other\"\n\"557140\";\"Il’inskiy\";\"main\"\n\"557140\";\"Il'inskiy\";\"ascii\"\n\"557140\";\"Il'inskoye\";\"other\"\n\"557140\";\"Il’inskoye\";\"other\"\n\"557140\";\"Ильинский\";\"other\"\n\"557276\";\"Il’ichëvo\";\"main\"\n\"557276\";\"Il'ichevo\";\"ascii\"\n\"557276\";\"Il'ichëvo\";\"other\"\n\"557276\";\"Ilitsjevo\";\"other\"\n\"557276\";\"Yalkala\";\"other\"\n\"557276\";\"Ильичево\";\"other\"\n\"557276\";\"Ильичёво\";\"other\"\n\"557292\";\"Il’ich\";\"main\"\n\"557292\";\"Il'ich\";\"ascii\"\n\"557292\";\"Ilitsj\";\"other\"\n\"557292\";\"Poselok Il'icha\";\"other\"\n\"557292\";\"Posëlok Il’icha\";\"other\"\n\"557292\";\"Ильич\";\"other\"\n\"557340\";\"Ilek\";\"main\"\n\"557340\";\"Ilen-Gorodok\";\"other\"\n\"557340\";\"Iletski Gordok\";\"other\"\n\"557340\";\"Илек\";\"other\"\n\"557382\";\"Iksha\";\"main\"\n\"557382\";\"IKSHA\";\"other\"\n\"557382\";\"Iksja\";\"other\"\n\"557382\";\"ИКША\";\"other\"\n\"557382\";\"Икша\";\"other\"\n\"557390\";\"Ikryanoye\";\"main\"\n\"557390\";\"Ikrjanoje\";\"other\"\n\"557390\";\"Ikryanov\";\"other\"\n\"557390\";\"Икряное\";\"other\"\n\"557399\";\"Ikon-Khalk\";\"main\"\n\"557399\";\"Икон-Халк\";\"other\"\n\"557413\";\"Iki-Burul\";\"main\"\n\"557413\";\"Chonin-Sala\";\"other\"\n\"557413\";\"Ики-Бурул\";\"other\"\n\"557469\";\"Igra\";\"main\"\n\"557469\";\"Игра\";\"other\"\n\"557531\";\"Ignatovka\";\"main\"\n\"557531\";\"IGNATOVKA\";\"other\"\n\"557531\";\"ИГНАТОВКА\";\"other\"\n\"557531\";\"Игнатовка\";\"other\"\n\"557563\";\"Iglino\";\"main\"\n\"557563\";\"IGLINO\";\"other\"\n\"557563\";\"ИГЛИНО\";\"other\"\n\"557563\";\"Иглино\";\"other\"\n\"557588\";\"Idritsa\";\"main\"\n\"557588\";\"IDRICA\";\"other\"\n\"557588\";\"Idriza\";\"other\"\n\"557588\";\"ИДРИЦА\";\"other\"\n\"557588\";\"Идрица\";\"other\"\n\"557628\";\"Ibresi\";\"main\"\n\"557628\";\"IBRESI\";\"other\"\n\"557628\";\"ИБРЕСИ\";\"other\"\n\"557657\";\"Gzhel’\";\"main\"\n\"557657\";\"Gzhel'\";\"ascii\"\n\"557657\";\"Gzjel\";\"other\"\n\"557657\";\"Гжель\";\"other\"\n\"557706\";\"Elin-Yurt\";\"main\"\n\"557706\";\"Ali-Yurt\";\"other\"\n\"557706\";\"Gvardejskoe\";\"other\"\n\"557706\";\"Gvardejskoje\";\"other\"\n\"557706\";\"Gvardeyskoye\";\"other\"\n\"557706\";\"Гвардейское\";\"other\"\n\"557710\";\"Gvardeysk\";\"main\"\n\"557710\";\"Gvardeiskas\";\"other\"\n\"557710\";\"Gvardejsk\";\"other\"\n\"557710\";\"Gwardeisk\";\"other\"\n\"557710\";\"Gwardiejsk\";\"other\"\n\"557710\";\"Tapiau\";\"other\"\n\"557710\";\"Tapyau\";\"other\"\n\"557710\";\"geubaleudeiseukeu\";\"other\"\n\"557710\";\"gvardejsk\";\"other\"\n\"557710\";\"Гвардейск\";\"other\"\n\"557710\";\"Гвардејск\";\"other\"\n\"557710\";\"그바르데이스크\";\"other\"\n\"557754\";\"Gus’-Zheleznyy\";\"main\"\n\"557754\";\"Gus'-Zheleznyy\";\"ascii\"\n\"557754\";\"Gus'-Zhelezny\";\"other\"\n\"557754\";\"Gus-Zjeleznyj\";\"other\"\n\"557754\";\"Gus’-Zhelezny\";\"other\"\n\"557754\";\"Гусь-Железный\";\"other\"\n\"557775\";\"Gus’-Khrustal’nyy\";\"main\"\n\"557775\";\"Gus'-Khrustal'nyy\";\"ascii\"\n\"557775\";\"Gus'-Khrustal'ny\";\"other\"\n\"557775\";\"Gus-Khrustalnyi\";\"other\"\n\"557775\";\"Gus-Khrustalnyj\";\"other\"\n\"557775\";\"Gus’-Khrustal’ny\";\"other\"\n\"557775\";\"Гусь-Хрустальный\";\"other\"\n\"557842\";\"Gusevskiy\";\"main\"\n\"557842\";\"GUSEVSKIJ\";\"other\"\n\"557842\";\"Gusevskij\";\"other\"\n\"557842\";\"ГУСЕВСКИЙ\";\"other\"\n\"557842\";\"Гусевский\";\"other\"\n\"557882\";\"Gusev\";\"main\"\n\"557882\";\"GUSEV\";\"other\"\n\"557882\";\"Gabin\";\"other\"\n\"557882\";\"Gumbinen\";\"other\"\n\"557882\";\"Gumbinnen\";\"other\"\n\"557882\";\"Gusayev\";\"other\"\n\"557882\";\"Gusevas\";\"other\"\n\"557882\";\"Gusevsk\";\"other\"\n\"557882\";\"Gusiew\";\"other\"\n\"557882\";\"Gussew\";\"other\"\n\"557882\";\"gusepeu\";\"other\"\n\"557882\";\"gusev\";\"other\"\n\"557882\";\"ГУСЕВ\";\"other\"\n\"557882\";\"Гусев\";\"other\"\n\"557882\";\"구세프\";\"other\"\n\"557906\";\"Gur’yevsk\";\"main\"\n\"557906\";\"Gur'yevsk\";\"ascii\"\n\"557906\";\"Gurjevsk\";\"other\"\n\"557906\";\"Naykhauzeh\";\"other\"\n\"557906\";\"Neuhausen\";\"other\"\n\"557906\";\"Noykhauzen\";\"other\"\n\"557906\";\"Гурьевск\";\"other\"\n\"557968\";\"Gurbuki\";\"main\"\n\"557968\";\"Urbuke\";\"other\"\n\"557968\";\"Гурбуки\";\"other\"\n\"557979\";\"Gunib\";\"main\"\n\"557979\";\"Гуниб\";\"other\"\n\"557984\";\"Gundorovskiy\";\"main\"\n\"557984\";\"Gundorov\";\"other\"\n\"557984\";\"Gundorovskij\";\"other\"\n\"557984\";\"Гундоровский\";\"other\"\n\"557992\";\"Gumrak\";\"main\"\n\"557992\";\"GUMRAK\";\"other\"\n\"557992\";\"Gumrik\";\"other\"\n\"557992\";\"ГУМРАК\";\"other\"\n\"557992\";\"Гумрак\";\"other\"\n\"558066\";\"Gul’kevichi\";\"main\"\n\"558066\";\"Gul'kevichi\";\"ascii\"\n\"558066\";\"Gulkevitsji\";\"other\"\n\"558066\";\"Гулькевичи\";\"other\"\n\"558082\";\"Gukovo\";\"main\"\n\"558082\";\"GUKOVO\";\"other\"\n\"558082\";\"Gukova\";\"other\"\n\"558082\";\"Gukowo\";\"other\"\n\"558082\";\"ГУКОВО\";\"other\"\n\"558082\";\"Гуково\";\"other\"\n\"558118\";\"Gudermes\";\"main\"\n\"558118\";\"GUDERMES\";\"other\"\n\"558118\";\"Goedermes\";\"other\"\n\"558118\";\"Goudermes\";\"other\"\n\"558118\";\"gudeleumeseu\";\"other\"\n\"558118\";\"gwdrms\";\"other\"\n\"558118\";\"ГУДЕРМЕС\";\"other\"\n\"558118\";\"Гудермес\";\"other\"\n\"558118\";\"גודרמס\";\"other\"\n\"558118\";\"구데르메스\";\"other\"\n\"558135\";\"Gubskaya\";\"main\"\n\"558135\";\"Gubskaja\";\"other\"\n\"558135\";\"Губская\";\"other\"\n\"558146\";\"Gubkin\";\"main\"\n\"558146\";\"Rabochiy Poselok Imeni Gubkina\";\"other\"\n\"558146\";\"gubkin\";\"other\"\n\"558146\";\"Губкин\";\"other\"\n\"558146\";\"굽킨\";\"other\"\n\"558186\";\"Gubden\";\"main\"\n\"558186\";\"Губден\";\"other\"\n\"558209\";\"Gubakha\";\"main\"\n\"558209\";\"GUBAKHA\";\"other\"\n\"558209\";\"Gubacha\";\"other\"\n\"558209\";\"ГУБАХА\";\"other\"\n\"558236\";\"Gryazovets\";\"main\"\n\"558236\";\"Grjazovets\";\"other\"\n\"558236\";\"Грязовец\";\"other\"\n\"558312\";\"Gryazi\";\"main\"\n\"558312\";\"GRJAZI\";\"other\"\n\"558312\";\"Grjazi\";\"other\"\n\"558312\";\"Gryasi\";\"other\"\n\"558312\";\"ГРЯЗИ\";\"other\"\n\"558312\";\"Грязи\";\"other\"\n\"558384\";\"Grushevskaya\";\"main\"\n\"558384\";\"Grushevskaja\";\"other\"\n\"558384\";\"Grusjevskaja\";\"other\"\n\"558384\";\"Грушевская\";\"other\"\n\"558385\";\"Martan-Chu\";\"main\"\n\"558385\";\"Grushevoye\";\"other\"\n\"558385\";\"Martan-Tsju\";\"other\"\n\"558385\";\"Мартан-Чу\";\"other\"\n\"558418\";\"Groznyy\";\"main\"\n\"558418\";\"Dzhokhar-Gala\";\"other\"\n\"558418\";\"Dzhokhar-Geala\";\"other\"\n\"558418\";\"Dzhokhar-Ghala\";\"other\"\n\"558418\";\"Dzovhar-GIala\";\"other\"\n\"558418\";\"Grosni\";\"other\"\n\"558418\";\"Grosnij\";\"other\"\n\"558418\";\"Grosny\";\"other\"\n\"558418\";\"Grosnyi\";\"other\"\n\"558418\";\"Grosnyj\";\"other\"\n\"558418\";\"Grosní\";\"other\"\n\"558418\";\"Grosnî\";\"other\"\n\"558418\";\"Groznai\";\"other\"\n\"558418\";\"Groznas\";\"other\"\n\"558418\";\"Grozni\";\"other\"\n\"558418\";\"Grozno\";\"other\"\n\"558418\";\"Groznoi\";\"other\"\n\"558418\";\"Grozny\";\"other\"\n\"558418\";\"Groznyi\";\"other\"\n\"558418\";\"Groznyj\";\"other\"\n\"558418\";\"Groznâi\";\"other\"\n\"558418\";\"Groznõi\";\"other\"\n\"558418\";\"Grózni\";\"other\"\n\"558418\";\"Nasongi\";\"other\"\n\"558418\";\"Nkrozny\";\"other\"\n\"558418\";\"geulojeuni\";\"other\"\n\"558418\";\"grozno\";\"other\"\n\"558418\";\"grwzny\";\"other\"\n\"558418\";\"gurozunui\";\"other\"\n\"558418\";\"Γκρόζνυ\";\"other\"\n\"558418\";\"Грозни\";\"other\"\n\"558418\";\"Грозный\";\"other\"\n\"558418\";\"Джовхар-ГІала\";\"other\"\n\"558418\";\"Джовхар-ГӀала\";\"other\"\n\"558418\";\"גרוזני\";\"other\"\n\"558418\";\"გროზნო\";\"other\"\n\"558418\";\"グロズヌイ\";\"other\"\n\"558418\";\"그로즈니\";\"other\"\n\"558487\";\"Grivenskaya\";\"main\"\n\"558487\";\"Grivenskaja\";\"other\"\n\"558487\";\"Гривенская\";\"other\"\n\"558497\";\"Gritsovskiy\";\"main\"\n\"558497\";\"GRICOVSKIJ\";\"other\"\n\"558497\";\"Gritsovskij\";\"other\"\n\"558497\";\"ГРИЦОВСКИЙ\";\"other\"\n\"558497\";\"Грицовский\";\"other\"\n\"558707\";\"Grigoropolisskaya\";\"main\"\n\"558707\";\"Grigoripolisskaya\";\"other\"\n\"558707\";\"Grigoripolisskiy\";\"other\"\n\"558707\";\"Grigoropolisskaja\";\"other\"\n\"558707\";\"Grigoropolisskiy\";\"other\"\n\"558707\";\"Григорополисская\";\"other\"\n\"558799\";\"Gribanovskiy\";\"main\"\n\"558799\";\"Bol'shaya Gribanovka\";\"other\"\n\"558799\";\"Bol’shaya Gribanovka\";\"other\"\n\"558799\";\"GRIBANOVSKIJ\";\"other\"\n\"558799\";\"Gribanovskij\";\"other\"\n\"558799\";\"Gribanowka\";\"other\"\n\"558799\";\"ГРИБАНОВСКИЙ\";\"other\"\n\"558799\";\"Грибановский\";\"other\"\n\"558885\";\"Gremyachinsk\";\"main\"\n\"558885\";\"Baskaya\";\"other\"\n\"558885\";\"GREMJACHINSK\";\"other\"\n\"558885\";\"Gremjatsjinsk\";\"other\"\n\"558885\";\"Gremyachinskiy\";\"other\"\n\"558885\";\"Vaskaya\";\"other\"\n\"558885\";\"ГРЕМЯЧИНСК\";\"other\"\n\"558969\";\"Grecheskoye\";\"main\"\n\"558969\";\"Grecheskoe\";\"other\"\n\"558969\";\"Gretsjeskoje\";\"other\"\n\"558969\";\"Греческое\";\"other\"\n\"558998\";\"Grebenskaya\";\"main\"\n\"558998\";\"Grebenskaja\";\"other\"\n\"558998\";\"Гребенская\";\"other\"\n\"559020\";\"Grazhdanskoye\";\"main\"\n\"559020\";\"Grazhdanskiy\";\"other\"\n\"559020\";\"Grazhdanskiy Pervyy\";\"other\"\n\"559020\";\"Grazhdanskiy Vtoroy\";\"other\"\n\"559020\";\"Grazhdanskoye Pervoye\";\"other\"\n\"559020\";\"Grazhdanskoye Pervyy\";\"other\"\n\"559020\";\"Grazhdanskoye Vtoroye\";\"other\"\n\"559020\";\"Гражданское\";\"other\"\n\"559034\";\"Grayvoron\";\"main\"\n\"559034\";\"GRAJVORON\";\"other\"\n\"559034\";\"Grajvoron\";\"other\"\n\"559034\";\"ГРАЙВОРОН\";\"other\"\n\"559034\";\"Грайворон\";\"other\"\n\"559073\";\"Grakhovo\";\"main\"\n\"559073\";\"Грахово\";\"other\"\n\"559158\";\"Grabovo\";\"main\"\n\"559158\";\"Грабово\";\"other\"\n\"559179\";\"Goyty\";\"main\"\n\"559179\";\"Goity\";\"other\"\n\"559179\";\"Gojty\";\"other\"\n\"559179\";\"Svobodnoye\";\"other\"\n\"559179\";\"Гойты\";\"other\"\n\"559242\";\"Gostilitsy\";\"main\"\n\"559242\";\"Krasnaya Baltika\";\"other\"\n\"559242\";\"Гостилицы\";\"other\"\n\"559252\";\"Gostagayevskaya\";\"main\"\n\"559252\";\"Gastagayevskaya\";\"other\"\n\"559252\";\"Gostagajevskaja\";\"other\"\n\"559252\";\"Gostagajewskaja\";\"other\"\n\"559252\";\"Гостагаевская\";\"other\"\n\"559317\";\"Goryachiy Klyuch\";\"main\"\n\"559317\";\"GORJACHIJ KLJUCH\";\"other\"\n\"559317\";\"Gorjatschi-Kljutsch\";\"other\"\n\"559317\";\"Gorjatsjij Kljutsj\";\"other\"\n\"559317\";\"Goyyachi Klyuch\";\"other\"\n\"559317\";\"ГОРЯЧИЙ КЛЮЧ\";\"other\"\n\"559317\";\"Горячий Ключ\";\"other\"\n\"559320\";\"Goryachevodskiy\";\"main\"\n\"559320\";\"GORJACHEVODSKIJ\";\"other\"\n\"559320\";\"Gorjatsjevodskij\";\"other\"\n\"559320\";\"Goryachevodskaya\";\"other\"\n\"559320\";\"ГОРЯЧЕВОДСКИЙ\";\"other\"\n\"559320\";\"Горячеводский\";\"other\"\n\"559378\";\"Gorskaya\";\"main\"\n\"559378\";\"Gorskaja\";\"other\"\n\"559378\";\"Горская\";\"other\"\n\"559400\";\"Gorshechnoye\";\"main\"\n\"559400\";\"GORSHECHNOE\";\"other\"\n\"559400\";\"Gorschetschnoje\";\"other\"\n\"559400\";\"Gorshechnoe\";\"other\"\n\"559400\";\"Gorsjetsjnoje\";\"other\"\n\"559400\";\"ГОРШЕЧНОЕ\";\"other\"\n\"559400\";\"Горшечное\";\"other\"\n\"559459\";\"Gorokhovets\";\"main\"\n\"559459\";\"GOROKHOVEC\";\"other\"\n\"559459\";\"Gorochowez\";\"other\"\n\"559459\";\"Gorohkovets\";\"other\"\n\"559459\";\"ГОРОХОВЕЦ\";\"other\"\n\"559475\";\"Gorodovikovsk\";\"main\"\n\"559475\";\"Bachanta\";\"other\"\n\"559475\";\"Bashanta\";\"other\"\n\"559475\";\"Zapadnyy\";\"other\"\n\"559475\";\"Городовиковск\";\"other\"\n\"559478\";\"Gorodoviki\";\"main\"\n\"559478\";\"Gorodovikov\";\"other\"\n\"559478\";\"Gorodovikovsk\";\"other\"\n\"559478\";\"Городовики\";\"other\"\n\"559643\";\"Gorodishche\";\"main\"\n\"559643\";\"GORODISHHE\";\"other\"\n\"559643\";\"Gorodisjtsje\";\"other\"\n\"559643\";\"ГОРОДИЩЕ\";\"other\"\n\"559643\";\"Городище\";\"other\"\n\"559654\";\"Gorodishche\";\"main\"\n\"559654\";\"GORODISHHE\";\"other\"\n\"559654\";\"Gorodisjtsje\";\"other\"\n\"559654\";\"ГОРОДИЩЕ\";\"other\"\n\"559654\";\"Городище\";\"other\"\n\"559678\";\"Gorodets\";\"main\"\n\"559678\";\"Gorodec\";\"other\"\n\"559678\";\"Городец\";\"other\"\n\"559731\";\"Gornyy\";\"main\"\n\"559731\";\"Gornyj\";\"other\"\n\"559731\";\"Горный\";\"other\"\n\"559736\";\"Gornyy\";\"main\"\n\"559736\";\"GORNYJ\";\"other\"\n\"559736\";\"Gornaya\";\"other\"\n\"559736\";\"Gornaya Shoriya\";\"other\"\n\"559736\";\"Gorny\";\"other\"\n\"559736\";\"Gornyj\";\"other\"\n\"559736\";\"ГОРНЫЙ\";\"other\"\n\"559736\";\"Горный\";\"other\"\n\"559740\";\"Gornyatskiy\";\"main\"\n\"559740\";\"Gornjackij\";\"other\"\n\"559740\";\"Gornjatskij\";\"other\"\n\"559740\";\"Gornyatskiy Rudnik\";\"other\"\n\"559740\";\"Горнятский\";\"other\"\n\"559740\";\"Горняцкий\";\"other\"\n\"559752\";\"Gornozavodsk\";\"main\"\n\"559752\";\"GORNOZAVODSK\";\"other\"\n\"559752\";\"Gornazavodsk\";\"other\"\n\"559752\";\"Novo-Pashkyskiy\";\"other\"\n\"559752\";\"Novopashiyskiy\";\"other\"\n\"559752\";\"ГОРНОЗАВОДСК\";\"other\"\n\"559862\";\"Gorki-Leninskiye\";\"main\"\n\"559862\";\"GORKI LENINSKIE\";\"other\"\n\"559862\";\"Gorki Leninskije\";\"other\"\n\"559862\";\"Leninskiye Gorki\";\"other\"\n\"559862\";\"Sovkhoz Gorki-Leninskiye\";\"other\"\n\"559862\";\"ГОРКИ ЛЕНИНСКИЕ\";\"other\"\n\"559862\";\"Горки-Ленинские\";\"other\"\n\"560058\";\"Goritsy\";\"main\"\n\"560058\";\"Горицы\";\"other\"\n\"560138\";\"Goreloye\";\"main\"\n\"560138\";\"Goreloje\";\"other\"\n\"560138\";\"Горелое\";\"other\"\n\"560154\";\"Gorelki\";\"main\"\n\"560154\";\"GORELKI\";\"other\"\n\"560154\";\"Poseiok Gorelki\";\"other\"\n\"560154\";\"Posëiok Gorelki\";\"other\"\n\"560154\";\"ГОРЕЛКИ\";\"other\"\n\"560154\";\"Горелки\";\"other\"\n\"560191\";\"Gordeyevka\";\"main\"\n\"560191\";\"Gordejevka\";\"other\"\n\"560191\";\"Gordeyevo\";\"other\"\n\"560191\";\"Гордеевка\";\"other\"\n\"560255\";\"Gorbunki\";\"main\"\n\"560255\";\"Горбунки\";\"other\"\n\"560281\";\"Gorbatovka\";\"main\"\n\"560281\";\"GORBATOVKA\";\"other\"\n\"560281\";\"ГОРБАТОВКА\";\"other\"\n\"560285\";\"Gorbatov\";\"main\"\n\"560285\";\"GORBATOV\";\"other\"\n\"560285\";\"ГОРБАТОВ\";\"other\"\n\"560325\";\"Goragorskiy\";\"main\"\n\"560325\";\"GORAGORSKIJ\";\"other\"\n\"560325\";\"Goragorskaya\";\"other\"\n\"560325\";\"Goragorskij\";\"other\"\n\"560325\";\"Gorskiy\";\"other\"\n\"560325\";\"ГОРАГОРСКИЙ\";\"other\"\n\"560452\";\"Golynki\";\"main\"\n\"560452\";\"GOLYNKI\";\"other\"\n\"560452\";\"Golinki\";\"other\"\n\"560452\";\"ГОЛЫНКИ\";\"other\"\n\"560452\";\"Голынки\";\"other\"\n\"560513\";\"Golubitskaya\";\"main\"\n\"560513\";\"Golubickaja\";\"other\"\n\"560513\";\"Golubinskaya\";\"other\"\n\"560513\";\"Golubitskaja\";\"other\"\n\"560513\";\"Голубитская\";\"other\"\n\"560513\";\"Голубицкая\";\"other\"\n\"560646\";\"Golovino\";\"main\"\n\"560646\";\"Головино\";\"other\"\n\"560674\";\"Golovchino\";\"main\"\n\"560674\";\"Golovtsjino\";\"other\"\n\"560674\";\"Spasskaya\";\"other\"\n\"560674\";\"Головчино\";\"other\"\n\"560756\";\"Golitsyno\";\"main\"\n\"560756\";\"Golitsino\";\"other\"\n\"560756\";\"Golytsyno\";\"other\"\n\"560756\";\"Голицыно\";\"other\"\n\"560849\";\"Gagatli\";\"main\"\n\"560849\";\"Gagatl'\";\"other\"\n\"560849\";\"Gagatl’\";\"other\"\n\"560849\";\"Gogatl'\";\"other\"\n\"560849\";\"Gogatl’\";\"other\"\n\"560849\";\"Гагатли\";\"other\"\n\"560852\";\"Gofitskoye\";\"main\"\n\"560852\";\"Gofickoe\";\"other\"\n\"560852\";\"Gofitskiy\";\"other\"\n\"560852\";\"Gofitskoje\";\"other\"\n\"560852\";\"Medvedka\";\"other\"\n\"560852\";\"Medvedskoye\";\"other\"\n\"560852\";\"Гофитское\";\"other\"\n\"560852\";\"Гофицкое\";\"other\"\n\"560995\";\"Glushkovo\";\"main\"\n\"560995\";\"GLUSHKOVO\";\"other\"\n\"560995\";\"Glushkova\";\"other\"\n\"560995\";\"Glusjkovo\";\"other\"\n\"560995\";\"ГЛУШКОВО\";\"other\"\n\"560995\";\"Глушково\";\"other\"\n\"561146\";\"Glubokiy\";\"main\"\n\"561146\";\"GLUBOKIJ\";\"other\"\n\"561146\";\"Glubokaja\";\"other\"\n\"561146\";\"Glubokij\";\"other\"\n\"561146\";\"ГЛУБОКИЙ\";\"other\"\n\"561146\";\"Глубокий\";\"other\"\n\"561148\";\"Glubokiy\";\"main\"\n\"561148\";\"Glubokij\";\"other\"\n\"561148\";\"Глубокий\";\"other\"\n\"561179\";\"Glotovka\";\"main\"\n\"561179\";\"GLOTOVKA\";\"other\"\n\"561179\";\"ГЛОТОВКА\";\"other\"\n\"561179\";\"Глотовка\";\"other\"\n\"561234\";\"Glinka\";\"main\"\n\"561234\";\"Глинка\";\"other\"\n\"561240\";\"Glinishchevo\";\"main\"\n\"561240\";\"Glinishhe\";\"other\"\n\"561240\";\"Глинище\";\"other\"\n\"561240\";\"Глинищево\";\"other\"\n\"561251\";\"Glebychevo\";\"main\"\n\"561251\";\"Glebytsevo\";\"other\"\n\"561251\";\"Glebytsjevo\";\"other\"\n\"561251\";\"Glebytševo\";\"other\"\n\"561251\";\"Roempoetti\";\"other\"\n\"561251\";\"Rompotti\";\"other\"\n\"561251\";\"Römpötti\";\"other\"\n\"561251\";\"Sprengtporten\";\"other\"\n\"561251\";\"Глебычево\";\"other\"\n\"561313\";\"Glazunovka\";\"main\"\n\"561313\";\"GLAZUNOVKA\";\"other\"\n\"561313\";\"Glasunovka\";\"other\"\n\"561313\";\"ГЛАЗУНОВКА\";\"other\"\n\"561313\";\"Глазуновка\";\"other\"\n\"561347\";\"Glazov\";\"main\"\n\"561347\";\"GLAZOV\";\"other\"\n\"561347\";\"Glasow\";\"other\"\n\"561347\";\"Glaz\";\"other\"\n\"561347\";\"Glazow\";\"other\"\n\"561347\";\"Głazow\";\"other\"\n\"561347\";\"geullajopeu\";\"other\"\n\"561347\";\"ГЛАЗОВ\";\"other\"\n\"561347\";\"Глаз\";\"other\"\n\"561347\";\"Глазов\";\"other\"\n\"561347\";\"글라조프\";\"other\"\n\"561437\";\"Gizel’\";\"main\"\n\"561437\";\"Gizel'\";\"ascii\"\n\"561437\";\"Gizel\";\"other\"\n\"561437\";\"Гизель\";\"other\"\n\"561462\";\"Girey\";\"main\"\n\"561462\";\"GIREJ\";\"other\"\n\"561462\";\"Girej\";\"other\"\n\"561462\";\"Giren\";\"other\"\n\"561462\";\"ГИРЕЙ\";\"other\"\n\"561462\";\"Гирей\";\"other\"\n\"561472\";\"Gimry\";\"main\"\n\"561472\";\"Gimra\";\"other\"\n\"561472\";\"Gimri\";\"other\"\n\"561472\";\"Гимра\";\"other\"\n\"561472\";\"Гимры\";\"other\"\n\"561501\";\"Gigant\";\"main\"\n\"561501\";\"GIGANT\";\"other\"\n\"561501\";\"ГИГАНТ\";\"other\"\n\"561501\";\"Гигант\";\"other\"\n\"561504\";\"Gidrotorf\";\"main\"\n\"561504\";\"GIDROTORF\";\"other\"\n\"561504\";\"ГИДРОТОРФ\";\"other\"\n\"561515\";\"Giaginskaya\";\"main\"\n\"561515\";\"Ghiaghinskayai\";\"other\"\n\"561515\";\"Giaginskaja\";\"other\"\n\"561515\";\"Гиагинская\";\"other\"\n\"561534\";\"Gerzel'-Aul\";\"main\"\n\"561549\";\"Germenchuk\";\"main\"\n\"561549\";\"Germenchak\";\"other\"\n\"561549\";\"Germenchik\";\"other\"\n\"561549\";\"Germentsjuk\";\"other\"\n\"561549\";\"Mostovoye\";\"other\"\n\"561549\";\"Герменчук\";\"other\"\n\"561550\";\"Germenchik\";\"main\"\n\"561550\";\"Герменчик\";\"other\"\n\"561560\";\"Gergebil’\";\"main\"\n\"561560\";\"Gergebil'\";\"ascii\"\n\"561560\";\"Geregebil'\";\"other\"\n\"561560\";\"Geregebil’\";\"other\"\n\"561560\";\"Gergebel'\";\"other\"\n\"561560\";\"Gergebel’\";\"other\"\n\"561560\";\"Gergebil\";\"other\"\n\"561560\";\"Гергебиль\";\"other\"\n\"561593\";\"Georgiyevskoye\";\"main\"\n\"561593\";\"Georgijevskoje\";\"other\"\n\"561593\";\"Георгиевское\";\"other\"\n\"561626\";\"Georgiyevskaya\";\"main\"\n\"561626\";\"Churekovo\";\"other\"\n\"561626\";\"Georgijevskaja\";\"other\"\n\"561626\";\"Sergeyevskoye\";\"other\"\n\"561626\";\"Георгиевская\";\"other\"\n\"561627\";\"Georgiyevsk\";\"main\"\n\"561627\";\"GEORGIEVSK\";\"other\"\n\"561627\";\"Georgievsk\";\"other\"\n\"561627\";\"Georgiewsk\";\"other\"\n\"561627\";\"Georgijevsk\";\"other\"\n\"561627\";\"Georgijewsk\";\"other\"\n\"561627\";\"ГЕОРГИЕВСК\";\"other\"\n\"561627\";\"Георгиевск\";\"other\"\n\"561633\";\"Georgiyevka\";\"main\"\n\"561633\";\"Georgijevka\";\"other\"\n\"561633\";\"Георгиевка\";\"other\"\n\"561667\";\"Gelendzhik\";\"main\"\n\"561667\";\"GELENDZHIK\";\"other\"\n\"561667\";\"Gelendjik\";\"other\"\n\"561667\";\"Gelendshik\";\"other\"\n\"561667\";\"Gelendzjik\";\"other\"\n\"561667\";\"Gelenjir\";\"other\"\n\"561667\";\"Gelenzhik\";\"other\"\n\"561667\";\"Gelyendzhik\";\"other\"\n\"561667\";\"Ghelenjik\";\"other\"\n\"561667\";\"Gyelyendzhik\";\"other\"\n\"561667\";\"ГЕЛЕНДЖИК\";\"other\"\n\"561667\";\"Геленджик\";\"other\"\n\"561670\";\"Gekhi\";\"main\"\n\"561670\";\"Blagodatnoye\";\"other\"\n\"561670\";\"Gikhi\";\"other\"\n\"561670\";\"Гехи\";\"other\"\n\"561679\";\"Gdov\";\"main\"\n\"561679\";\"Gdow\";\"other\"\n\"561679\";\"Oudova\";\"other\"\n\"561679\";\"Гдов\";\"other\"\n\"561698\";\"Gayny\";\"main\"\n\"561698\";\"GAINY\";\"other\"\n\"561698\";\"Gainskoje\";\"other\"\n\"561698\";\"Gajny\";\"other\"\n\"561698\";\"ГАИНЫ\";\"other\"\n\"561698\";\"Гайны\";\"other\"\n\"561722\";\"Gayduk\";\"main\"\n\"561722\";\"GAJDUK\";\"other\"\n\"561722\";\"Gaiduk\";\"other\"\n\"561722\";\"Gajduk\";\"other\"\n\"561722\";\"ГАЙДУК\";\"other\"\n\"561722\";\"Гайдук\";\"other\"\n\"561731\";\"Gay\";\"main\"\n\"561731\";\"GAJ\";\"other\"\n\"561731\";\"Gai\";\"other\"\n\"561731\";\"Gaj\";\"other\"\n\"561731\";\"ГАЙ\";\"other\"\n\"561731\";\"Гай\";\"other\"\n\"561762\";\"Gavrilov-Yam\";\"main\"\n\"561762\";\"Gavrilov-Jam\";\"other\"\n\"561762\";\"Гаврилов-Ям\";\"other\"\n\"561783\";\"Gavrilov Posad\";\"main\"\n\"561783\";\"Gavrilov-Posad\";\"other\"\n\"561783\";\"Gavrilovski-Posad\";\"other\"\n\"561783\";\"Гаврилов Посад\";\"other\"\n\"561783\";\"Гаврилов-Посад\";\"other\"\n\"561804\";\"Gavrilovka Vtoraya\";\"main\"\n\"561804\";\"Gavrilovka Vtoraja\";\"other\"\n\"561804\";\"Гавриловка Вторая\";\"other\"\n\"561887\";\"Gatchina\";\"main\"\n\"561887\";\"GATCHINA\";\"other\"\n\"561887\";\"Gatcina\";\"other\"\n\"561887\";\"Gatczyna\";\"other\"\n\"561887\";\"Gatschina\";\"other\"\n\"561887\";\"Gatsjina\";\"other\"\n\"561887\";\"Gattsina\";\"other\"\n\"561887\";\"Gattšina\";\"other\"\n\"561887\";\"Gatĉina\";\"other\"\n\"561887\";\"Hatsina\";\"other\"\n\"561887\";\"Krasnogvardeysk\";\"other\"\n\"561887\";\"Krasnogwardeisk\";\"other\"\n\"561887\";\"Nkatsina\";\"other\"\n\"561887\";\"gachina\";\"other\"\n\"561887\";\"Γκάτσινα\";\"other\"\n\"561887\";\"ГАТЧИНА\";\"other\"\n\"561887\";\"Гатчина\";\"other\"\n\"561887\";\"가치나\";\"other\"\n\"561999\";\"Garbolovo\";\"main\"\n\"561999\";\"Гарболово\";\"other\"\n\"562016\";\"Gaptsakh\";\"main\"\n\"562016\";\"Goptsikh\";\"other\"\n\"562016\";\"Гапцах\";\"other\"\n\"562070\";\"Gamovo\";\"main\"\n\"562070\";\"Gamy\";\"other\"\n\"562070\";\"Гамово\";\"other\"\n\"562086\";\"Galyugayevskaya\";\"main\"\n\"562086\";\"Galjugajevskaja\";\"other\"\n\"562086\";\"Galjugajewskaja\";\"other\"\n\"562086\";\"Galyugayevskiy\";\"other\"\n\"562086\";\"Галюгаевская\";\"other\"\n\"562136\";\"Galitsy\";\"main\"\n\"562136\";\"GALICY\";\"other\"\n\"562136\";\"ГАЛИЦЫ\";\"other\"\n\"562161\";\"Galich\";\"main\"\n\"562161\";\"GALICH\";\"other\"\n\"562161\";\"Galitsj\";\"other\"\n\"562161\";\"ГАЛИЧ\";\"other\"\n\"562161\";\"Галич\";\"other\"\n\"562209\";\"Gagino\";\"main\"\n\"562209\";\"Гагино\";\"other\"\n\"562237\";\"Gagarin\";\"main\"\n\"562237\";\"GAGARIN\";\"other\"\n\"562237\";\"Gagaringrad\";\"other\"\n\"562237\";\"Gshatsk\";\"other\"\n\"562237\";\"Gzhatsk\";\"other\"\n\"562237\";\"gagalin\";\"other\"\n\"562237\";\"ГАГАРИН\";\"other\"\n\"562237\";\"Гагарин\";\"other\"\n\"562237\";\"가가린\";\"other\"\n\"562245\";\"Gadzhiyevo\";\"main\"\n\"562245\";\"Murmansk-130\";\"other\"\n\"562245\";\"Sayda Guba Base\";\"other\"\n\"562245\";\"Skalistyy\";\"other\"\n\"562245\";\"Yagel'naya Guba\";\"other\"\n\"562245\";\"Yagel’naya Guba\";\"other\"\n\"562245\";\"Гаджиево\";\"other\"\n\"562309\";\"Furmanov\";\"main\"\n\"562309\";\"FURMANOV\";\"other\"\n\"562309\";\"Sereda\";\"other\"\n\"562309\";\"ФУРМАНОВ\";\"other\"\n\"562309\";\"Фурманов\";\"other\"\n\"562319\";\"Fryazino\";\"main\"\n\"562319\";\"FRJAZINO\";\"other\"\n\"562319\";\"Frjasino\";\"other\"\n\"562319\";\"Frjazino\";\"other\"\n\"562319\";\"ФРЯЗИНО\";\"other\"\n\"562319\";\"Фрязино\";\"other\"\n\"562322\";\"Fryanovo\";\"main\"\n\"562322\";\"FRJANOVO\";\"other\"\n\"562322\";\"Frjanovo\";\"other\"\n\"562322\";\"ФРЯНОВО\";\"other\"\n\"562322\";\"Фряново\";\"other\"\n\"562389\";\"Frolovo\";\"main\"\n\"562389\";\"FROLOVO\";\"other\"\n\"562389\";\"ФРОЛОВО\";\"other\"\n\"562389\";\"Фролово\";\"other\"\n\"562413\";\"Frolishchi\";\"main\"\n\"562413\";\"FROLISHHI\";\"other\"\n\"562413\";\"Florishchi\";\"other\"\n\"562413\";\"Frolishcheva Pustyn'\";\"other\"\n\"562413\";\"Frolishcheva Pustyn’\";\"other\"\n\"562413\";\"Frolisjtsji\";\"other\"\n\"562413\";\"ФРОЛИЩИ\";\"other\"\n\"562445\";\"Fosforitnyy\";\"main\"\n\"562445\";\"FOSFORITNYJ\";\"other\"\n\"562445\";\"Fosforitny\";\"other\"\n\"562445\";\"Fosforitnyj\";\"other\"\n\"562445\";\"ФОСФОРИТНЫЙ\";\"other\"\n\"562445\";\"Фосфоритный\";\"other\"\n\"562450\";\"Fornosovo\";\"main\"\n\"562450\";\"FORNOSOVO\";\"other\"\n\"562450\";\"Novo-Lisino\";\"other\"\n\"562450\";\"ФОРНОСОВО\";\"other\"\n\"562450\";\"Форносово\";\"other\"\n\"562580\";\"Foki\";\"main\"\n\"562580\";\"Фоки\";\"other\"\n\"562625\";\"Firsanovka\";\"main\"\n\"562625\";\"Firsanovskiy\";\"other\"\n\"562625\";\"Фирсановка\";\"other\"\n\"562627\";\"Firovo\";\"main\"\n\"562627\";\"FIROVO\";\"other\"\n\"562627\";\"ФИРОВО\";\"other\"\n\"562627\";\"Фирово\";\"other\"\n\"562814\";\"Filimonki\";\"main\"\n\"562814\";\"Филимонки\";\"other\"\n\"562873\";\"Ferzikovo\";\"main\"\n\"562873\";\"Poselok Ferzikovo\";\"other\"\n\"562873\";\"Posëlok Ferzikovo\";\"other\"\n\"562873\";\"Ферзиково\";\"other\"\n\"562878\";\"Fershampenuaz\";\"main\"\n\"562878\";\"Fersjampenuaz\";\"other\"\n\"562878\";\"Фершампенуаз\";\"other\"\n\"562886\";\"Ferapontovo\";\"main\"\n\"562886\";\"Ферапонтово\";\"other\"\n\"563057\";\"Fëdorovskoye\";\"main\"\n\"563057\";\"Fedorovskoye\";\"ascii\"\n\"563057\";\"Fedorovskiy\";\"other\"\n\"563057\";\"Fedorovskoe\";\"other\"\n\"563057\";\"Fedorovskoje\";\"other\"\n\"563057\";\"Федоровское\";\"other\"\n\"563057\";\"Фёдоровское\";\"other\"\n\"563300\";\"Fatezh\";\"main\"\n\"563300\";\"FATEZH\";\"other\"\n\"563300\";\"Fatesh\";\"other\"\n\"563300\";\"Fatezj\";\"other\"\n\"563300\";\"ФАТЕЖ\";\"other\"\n\"563300\";\"Фатеж\";\"other\"\n\"563306\";\"Fastovetskaya\";\"main\"\n\"563306\";\"Fastoveckaja\";\"other\"\n\"563306\";\"Fastovetsaya\";\"other\"\n\"563306\";\"Fastovetskaja\";\"other\"\n\"563306\";\"Фастоветская\";\"other\"\n\"563306\";\"Фастовецкая\";\"other\"\n\"563344\";\"Falënki\";\"main\"\n\"563344\";\"Falenki\";\"ascii\"\n\"563344\";\"FALENKI\";\"other\"\n\"563344\";\"Faljonki\";\"other\"\n\"563344\";\"ФАЛЕНКИ\";\"other\"\n\"563344\";\"Фалёнки\";\"other\"\n\"563354\";\"Fakel\";\"main\"\n\"563354\";\"FAKEL\";\"other\"\n\"563354\";\"Sergiyevskiy\";\"other\"\n\"563354\";\"Sergiyevskiy Zavod\";\"other\"\n\"563354\";\"ФАКЕЛ\";\"other\"\n\"563354\";\"Факел\";\"other\"\n\"563379\";\"Ezhva\";\"main\"\n\"563379\";\"Ezjva\";\"other\"\n\"563379\";\"Sloboda\";\"other\"\n\"563379\";\"Эжва\";\"other\"\n\"563395\";\"Etoka\";\"main\"\n\"563395\";\"Etoko\";\"other\"\n\"563395\";\"Verkhne-Etokskiy\";\"other\"\n\"563395\";\"Этока\";\"other\"\n\"563407\";\"Essoyla\";\"main\"\n\"563407\";\"Ehssojla\";\"other\"\n\"563407\";\"Essojla\";\"other\"\n\"563407\";\"Эссойла\";\"other\"\n\"563420\";\"Ertil’\";\"main\"\n\"563420\";\"Ertil'\";\"ascii\"\n\"563420\";\"EHRTIL'\";\"other\"\n\"563420\";\"Ertil\";\"other\"\n\"563420\";\"ЭРТИЛЬ\";\"other\"\n\"563420\";\"Эртиль\";\"other\"\n\"563425\";\"Erpeli\";\"main\"\n\"563425\";\"Эрпели\";\"other\"\n\"563461\";\"Engel'-Yurt\";\"main\"\n\"563464\";\"Engel's\";\"main\"\n\"563464\";\"EHNGEL'S\";\"other\"\n\"563464\";\"Ehngel's\";\"other\"\n\"563464\";\"Engels\";\"other\"\n\"563464\";\"Engels an der Wolga\";\"other\"\n\"563464\";\"Pokrovskaya\";\"other\"\n\"563464\";\"ЭНГЕЛЬС\";\"other\"\n\"563464\";\"Энгельс\";\"other\"\n\"563471\";\"Energetik\";\"main\"\n\"563471\";\"EHNERGETIK\";\"other\"\n\"563471\";\"ЭНЕРГЕТИК\";\"other\"\n\"563471\";\"Энергетик\";\"other\"\n\"563472\";\"Enem\";\"main\"\n\"563472\";\"EHNEM\";\"other\"\n\"563472\";\"ЭНЕМ\";\"other\"\n\"563472\";\"Энем\";\"other\"\n\"563481\";\"Emmaus\";\"main\"\n\"563481\";\"Ehmmauss\";\"other\"\n\"563481\";\"Emmauss\";\"other\"\n\"563481\";\"Эммаус\";\"other\"\n\"563481\";\"Эммаусс\";\"other\"\n\"563495\";\"El’ton\";\"main\"\n\"563495\";\"El'ton\";\"ascii\"\n\"563495\";\"Elton\";\"other\"\n\"563495\";\"Novyy El'ton\";\"other\"\n\"563495\";\"Novyy El’ton\";\"other\"\n\"563495\";\"Эльтон\";\"other\"\n\"563514\";\"Elista\";\"main\"\n\"563514\";\"Stepnoi\";\"other\"\n\"563514\";\"Stepnoy\";\"other\"\n\"563514\";\"erisuta\";\"other\"\n\"563514\";\"yelliseuta\";\"other\"\n\"563514\";\"Элиста\";\"other\"\n\"563514\";\"אליסטה\";\"other\"\n\"563514\";\"エリスタ\";\"other\"\n\"563514\";\"옐리스타\";\"other\"\n\"563522\";\"Elektrougli\";\"main\"\n\"563522\";\"EHLEKTROUGLI\";\"other\"\n\"563522\";\"ЭЛЕКТРОУГЛИ\";\"other\"\n\"563522\";\"Электроугли\";\"other\"\n\"563523\";\"Elektrostal’\";\"main\"\n\"563523\";\"Elektrostal'\";\"ascii\"\n\"563523\";\"Elektrostal\";\"other\"\n\"563523\";\"Elektrostalj\";\"other\"\n\"563523\";\"yellegteuloseutal\";\"other\"\n\"563523\";\"Электросталь\";\"other\"\n\"563523\";\"옐렉트로스탈\";\"other\"\n\"563524\";\"Elektrogorsk\";\"main\"\n\"563524\";\"EHLEKTROGORSK\";\"other\"\n\"563524\";\"Elektroperedacha\";\"other\"\n\"563524\";\"Elektroperedachr\";\"other\"\n\"563524\";\"ЭЛЕКТРОГОРСК\";\"other\"\n\"563524\";\"Электрогорск\";\"other\"\n\"563534\";\"El’brus\";\"main\"\n\"563534\";\"El'brus\";\"ascii\"\n\"563534\";\"Elbrus\";\"other\"\n\"563534\";\"Gagishi\";\"other\"\n\"563534\";\"Gyagishch\";\"other\"\n\"563534\";\"Ialbuzi\";\"other\"\n\"563534\";\"Эльбрус\";\"other\"\n\"563551\";\"Ekazhevo\";\"main\"\n\"563551\";\"Ehkazhevo\";\"other\"\n\"563551\";\"Ekazjevo\";\"other\"\n\"563551\";\"Novoardonskoye\";\"other\"\n\"563551\";\"Novyy Ardon\";\"other\"\n\"563551\";\"Экажево\";\"other\"\n\"563556\";\"Edissiya\";\"main\"\n\"563556\";\"Edisseya\";\"other\"\n\"563556\";\"Edissia\";\"other\"\n\"563556\";\"Эдиссия\";\"other\"\n\"563601\";\"Dzhubga\";\"main\"\n\"563601\";\"Dshubga\";\"other\"\n\"563601\";\"Dzhubq\";\"other\"\n\"563601\";\"Dzjubga\";\"other\"\n\"563601\";\"Джубга\";\"other\"\n\"563618\";\"Dzhiginka\";\"main\"\n\"563618\";\"Dshijinskoje\";\"other\"\n\"563618\";\"Dzhiginsko\";\"other\"\n\"563618\";\"Dzhiginskoye\";\"other\"\n\"563618\";\"Dzjiginka\";\"other\"\n\"563618\";\"Джигинка\";\"other\"\n\"563623\";\"Dzhayrakh\";\"main\"\n\"563623\";\"Dzhejrakh\";\"other\"\n\"563623\";\"Dzheyrakh\";\"other\"\n\"563623\";\"Dzjejrakh\";\"other\"\n\"563623\";\"Джейрах\";\"other\"\n\"563678\";\"Dzhalka\";\"main\"\n\"563678\";\"Dzjalka\";\"other\"\n\"563678\";\"Джалка\";\"other\"\n\"563681\";\"Dzhalil’\";\"main\"\n\"563681\";\"Dzhalil'\";\"ascii\"\n\"563681\";\"DZHALIL'\";\"other\"\n\"563681\";\"Dzjalil\";\"other\"\n\"563681\";\"ДЖАЛИЛЬ\";\"other\"\n\"563681\";\"Джалиль\";\"other\"\n\"563705\";\"Dzerzhinskiy\";\"main\"\n\"563705\";\"Dzerzjinskij\";\"other\"\n\"563705\";\"Дзержинский\";\"other\"\n\"563708\";\"Dzerzhinsk\";\"main\"\n\"563708\";\"Chernorech'ye\";\"other\"\n\"563708\";\"Chernoye\";\"other\"\n\"563708\";\"DZERZHINSK\";\"other\"\n\"563708\";\"Dzerhinsh\";\"other\"\n\"563708\";\"Dzerzjinsk\";\"other\"\n\"563708\";\"Rastyapino\";\"other\"\n\"563708\";\"ДЗЕРЖИНСК\";\"other\"\n\"563719\";\"Dyurtyuli\";\"main\"\n\"563719\";\"DJURTJULI\";\"other\"\n\"563719\";\"Djurtjuli\";\"other\"\n\"563719\";\"Dyrtyli\";\"other\"\n\"563719\";\"ДЮРТЮЛИ\";\"other\"\n\"563719\";\"Дюртюли\";\"other\"\n\"563744\";\"Dyshne-Vedeno\";\"main\"\n\"563744\";\"Akhnoda\";\"other\"\n\"563744\";\"Aknada\";\"other\"\n\"563744\";\"Aknady\";\"other\"\n\"563744\";\"Disni-Vedana\";\"other\"\n\"563744\";\"Dişni-Vedana\";\"other\"\n\"563744\";\"Dyshni-Vedeno\";\"other\"\n\"563744\";\"Dyshny-Vedeno\";\"other\"\n\"563744\";\"Dysjne-Vedeno\";\"other\"\n\"563744\";\"Дышне-Ведено\";\"other\"\n\"563792\";\"Dylym\";\"main\"\n\"563792\";\"Дылым\";\"other\"\n\"563822\";\"Dyat’kovo\";\"main\"\n\"563822\";\"Dyat'kovo\";\"ascii\"\n\"563822\";\"Djatkovo\";\"other\"\n\"563822\";\"Djatkowa\";\"other\"\n\"563822\";\"Дятьково\";\"other\"\n\"563990\";\"Dvinskoy\";\"main\"\n\"563990\";\"DVINSKOJ\";\"other\"\n\"563990\";\"Dvinskoj\";\"other\"\n\"563990\";\"ДВИНСКОЙ\";\"other\"\n\"563990\";\"Двинской\";\"other\"\n\"564022\";\"Duvan\";\"main\"\n\"564022\";\"Дуван\";\"other\"\n\"564098\";\"Durgeli\";\"main\"\n\"564098\";\"Dorgeli\";\"other\"\n\"564098\";\"Доргели\";\"other\"\n\"564098\";\"Дургели\";\"other\"\n\"564191\";\"Duminichi\";\"main\"\n\"564191\";\"Duminitsji\";\"other\"\n\"564191\";\"Думиничи\";\"other\"\n\"564200\";\"Dulyapino\";\"main\"\n\"564200\";\"DULJAPINO\";\"other\"\n\"564200\";\"Duljapino\";\"other\"\n\"564200\";\"Poselok Dulyapino\";\"other\"\n\"564200\";\"Posëlok Dulyapino\";\"other\"\n\"564200\";\"ДУЛЯПИНО\";\"other\"\n\"564200\";\"Дуляпино\";\"other\"\n\"564234\";\"Dukhovshchina\";\"main\"\n\"564234\";\"DUKHOVSHHINA\";\"other\"\n\"564234\";\"Dukhovschina\";\"other\"\n\"564234\";\"Dukhovsjtsjina\";\"other\"\n\"564234\";\"ДУХОВЩИНА\";\"other\"\n\"564234\";\"Духовщина\";\"other\"\n\"564241\";\"Dukhovnitskoye\";\"main\"\n\"564241\";\"DUKHOVNICKOE\";\"other\"\n\"564241\";\"Dukhovnitskoje\";\"other\"\n\"564241\";\"ДУХОВНИЦКОЕ\";\"other\"\n\"564241\";\"Духовнитское\";\"other\"\n\"564417\";\"Dubrovka\";\"main\"\n\"564417\";\"DUBROVKA\";\"other\"\n\"564417\";\"ДУБРОВКА\";\"other\"\n\"564417\";\"Дубровка\";\"other\"\n\"564487\";\"Dubrovka\";\"main\"\n\"564487\";\"DUBROVKA\";\"other\"\n\"564487\";\"ДУБРОВКА\";\"other\"\n\"564487\";\"Дубровка\";\"other\"\n\"564517\";\"Dubrovitsy\";\"main\"\n\"564517\";\"Sovkhoz Dubrovitsy\";\"other\"\n\"564517\";\"Дубровицы\";\"other\"\n\"564579\";\"Dubovyy Umët\";\"main\"\n\"564579\";\"Dubovyy Umet\";\"ascii\"\n\"564579\";\"Dubovy Umet\";\"other\"\n\"564579\";\"Dubovyj Umet\";\"other\"\n\"564579\";\"Дубовый Умет\";\"other\"\n\"564579\";\"Дубовый Умёт\";\"other\"\n\"564593\";\"Dubovskoye\";\"main\"\n\"564593\";\"Dubovskoje\";\"other\"\n\"564593\";\"Дубовское\";\"other\"\n\"564654\";\"Dubovka\";\"main\"\n\"564654\";\"Дубовка\";\"other\"\n\"564719\";\"Dubna\";\"main\"\n\"564719\";\"DUBNA\";\"other\"\n\"564719\";\"Doebna\";\"other\"\n\"564719\";\"Doubna\";\"other\"\n\"564719\";\"Dubno\";\"other\"\n\"564719\";\"dubna\";\"other\"\n\"564719\";\"ДУБНА\";\"other\"\n\"564719\";\"Дубна\";\"other\"\n\"564723\";\"Dubna\";\"main\"\n\"564723\";\"DUBNA\";\"other\"\n\"564723\";\"ДУБНА\";\"other\"\n\"564723\";\"Дубна\";\"other\"\n\"564745\";\"Dubki\";\"main\"\n\"564745\";\"Дубки\";\"other\"\n\"564764\";\"Dubki\";\"main\"\n\"564764\";\"DUBKI\";\"other\"\n\"564764\";\"ДУБКИ\";\"other\"\n\"564821\";\"Duba-Yurt\";\"main\"\n\"564821\";\"Duba-Jurt\";\"other\"\n\"564821\";\"Rodnikovoye\";\"other\"\n\"564821\";\"Дуба-Юрт\";\"other\"\n\"564866\";\"Druzhnaya Gorka\";\"main\"\n\"564866\";\"DRUZHNAJA GORKA\";\"other\"\n\"564866\";\"Druzjnaja Gorka\";\"other\"\n\"564866\";\"ДРУЖНАЯ ГОРКА\";\"other\"\n\"564866\";\"Дружная Горка\";\"other\"\n\"564878\";\"Druzhinino\";\"main\"\n\"564878\";\"DRUZHININO\";\"other\"\n\"564878\";\"Druzjinino\";\"other\"\n\"564878\";\"ДРУЖИНИНО\";\"other\"\n\"564878\";\"Дружинино\";\"other\"\n\"564912\";\"Druzhba\";\"main\"\n\"564912\";\"Дружба\";\"other\"\n\"564929\";\"Druzhba\";\"main\"\n\"564929\";\"Дружба\";\"other\"\n\"565007\";\"Drezna\";\"main\"\n\"565007\";\"DREZNA\";\"other\"\n\"565007\";\"ДРЕЗНА\";\"other\"\n\"565007\";\"Дрезна\";\"other\"\n\"565052\";\"Drakino\";\"main\"\n\"565052\";\"Дракино\";\"other\"\n\"565108\";\"Doschatoye\";\"main\"\n\"565108\";\"DOSCHATOE\";\"other\"\n\"565108\";\"Doshchatoye\";\"other\"\n\"565108\";\"Dostsjatoje\";\"other\"\n\"565108\";\"ДОСЧАТОЕ\";\"other\"\n\"565172\";\"Dorokhovo\";\"main\"\n\"565172\";\"DOROKHOVO\";\"other\"\n\"565172\";\"Dorochowo\";\"other\"\n\"565172\";\"ДОРОХОВО\";\"other\"\n\"565172\";\"Дорохово\";\"other\"\n\"565202\";\"Dorogobuzh\";\"main\"\n\"565202\";\"DOROGOBUZH\";\"other\"\n\"565202\";\"Dorogobusch\";\"other\"\n\"565202\";\"Dorogobuzh na Dnepre\";\"other\"\n\"565202\";\"Dorogobuzj\";\"other\"\n\"565202\";\"ДОРОГОБУЖ\";\"other\"\n\"565202\";\"Дорогобуж\";\"other\"\n\"565284\";\"Donskoye\";\"main\"\n\"565284\";\"Donskaya\";\"other\"\n\"565284\";\"Donskoje\";\"other\"\n\"565284\";\"Донское\";\"other\"\n\"565285\";\"Donskoye\";\"main\"\n\"565285\";\"Donskoje\";\"other\"\n\"565285\";\"Patriarsheye\";\"other\"\n\"565285\";\"Vodop'yanovo\";\"other\"\n\"565285\";\"Vodop'yanovskoye\";\"other\"\n\"565285\";\"Vodopinovskoe\";\"other\"\n\"565285\";\"Vodop’yanovo\";\"other\"\n\"565285\";\"Vodop’yanovskoye\";\"other\"\n\"565285\";\"Донское\";\"other\"\n\"565289\";\"Donskoye\";\"main\"\n\"565289\";\"Donskoje\";\"other\"\n\"565289\";\"Донское\";\"other\"\n\"565290\";\"Donskoy\";\"main\"\n\"565290\";\"DONSKOJ\";\"other\"\n\"565290\";\"Donskoj\";\"other\"\n\"565290\";\"ДОНСКОЙ\";\"other\"\n\"565290\";\"Донской\";\"other\"\n\"565300\";\"Donskoy\";\"main\"\n\"565300\";\"Donskoj\";\"other\"\n\"565300\";\"Донской\";\"other\"\n\"565348\";\"Donetsk\";\"main\"\n\"565348\";\"Gunderovskaya\";\"other\"\n\"565348\";\"Gundorovka\";\"other\"\n\"565348\";\"Gundorovskaya\";\"other\"\n\"565348\";\"Gundurovka\";\"other\"\n\"565348\";\"Донецк\";\"other\"\n\"565357\";\"Dondukovskaya\";\"main\"\n\"565357\";\"Dondukovskaja\";\"other\"\n\"565357\";\"Дондуковская\";\"other\"\n\"565381\";\"Domodedovo\";\"main\"\n\"565381\";\"DOMODEDOVO\";\"other\"\n\"565381\";\"ДОМОДЕДОВО\";\"other\"\n\"565381\";\"Домодедово\";\"other\"\n\"565407\";\"Dombarovskiy\";\"main\"\n\"565407\";\"DOMBAROVSKIJ\";\"other\"\n\"565407\";\"Dombarovskij\";\"other\"\n\"565407\";\"ДОМБАРОВСКИЙ\";\"other\"\n\"565407\";\"Домбаровский\";\"other\"\n\"565456\";\"Dolzhanskaya\";\"main\"\n\"565456\";\"Doljansk\";\"other\"\n\"565456\";\"Dolshanskaja\";\"other\"\n\"565456\";\"Dolzhanka\";\"other\"\n\"565456\";\"Dolzjanskaja\";\"other\"\n\"565456\";\"Stanitsa Dolzhanskaya\";\"other\"\n\"565456\";\"Должанская\";\"other\"\n\"565611\";\"Dolgorukovo\";\"main\"\n\"565611\";\"Долгоруково\";\"other\"\n\"565614\";\"Dolgoprudnyy\";\"main\"\n\"565614\";\"DOLGOPRUDNYJ\";\"other\"\n\"565614\";\"Dolgoprodnyy\";\"other\"\n\"565614\";\"Dolgoprudnyj\";\"other\"\n\"565614\";\"Dolgoprudyy\";\"other\"\n\"565614\";\"ДОЛГОПРУДНЫЙ\";\"other\"\n\"565614\";\"Долгопрудный\";\"other\"\n\"565774\";\"Dobryatino\";\"main\"\n\"565774\";\"DOBRJATINO\";\"other\"\n\"565774\";\"Dobriatino\";\"other\"\n\"565774\";\"Dobrjatino\";\"other\"\n\"565774\";\"ДОБРЯТИНО\";\"other\"\n\"565774\";\"Добрятино\";\"other\"\n\"565778\";\"Dobryanka\";\"main\"\n\"565778\";\"DOBRJANKA\";\"other\"\n\"565778\";\"Dobrjanka\";\"other\"\n\"565778\";\"Dobryansk\";\"other\"\n\"565778\";\"ДОБРЯНКА\";\"other\"\n\"565778\";\"Добрянка\";\"other\"\n\"565783\";\"Dobrun’\";\"main\"\n\"565783\";\"Dobrun'\";\"ascii\"\n\"565783\";\"Dobrun\";\"other\"\n\"565783\";\"Добрунь\";\"other\"\n\"565803\";\"Dobroye\";\"main\"\n\"565803\";\"Dobroje\";\"other\"\n\"565803\";\"Доброе\";\"other\"\n\"565857\";\"Dobrinka\";\"main\"\n\"565857\";\"DOBRINKA\";\"other\"\n\"565857\";\"ДОБРИНКА\";\"other\"\n\"565857\";\"Добринка\";\"other\"\n\"565885\";\"Dno\";\"main\"\n\"565885\";\"DNO\";\"other\"\n\"565885\";\"ДНО\";\"other\"\n\"565885\";\"Дно\";\"other\"\n\"565892\";\"Dneprovskaya\";\"main\"\n\"565892\";\"Dneprovskaja\";\"other\"\n\"565892\";\"Dnjeprowskaja\";\"other\"\n\"565892\";\"Днепровская\";\"other\"\n\"565908\";\"Dmitrovsk-Orlovskiy\";\"main\"\n\"565908\";\"Dmitrovsk\";\"other\"\n\"565908\";\"Dmitrovsk-Orlovskij\";\"other\"\n\"565908\";\"Dmitrowsk\";\"other\"\n\"565908\";\"Дмитровск-Орловский\";\"other\"\n\"565955\";\"Dmitrov\";\"main\"\n\"565955\";\"DMITROV\";\"other\"\n\"565955\";\"Dmitrow\";\"other\"\n\"565955\";\"Dmitrów\";\"other\"\n\"565955\";\"deumiteulopeu\";\"other\"\n\"565955\";\"dmitrov\";\"other\"\n\"565955\";\"ДМИТРОВ\";\"other\"\n\"565955\";\"Дмитров\";\"other\"\n\"565955\";\"드미트로프\";\"other\"\n\"565979\";\"Dmitriyevskoye\";\"main\"\n\"565979\";\"Dmitrievskaja\";\"other\"\n\"565979\";\"Dmitriyevskaya\";\"other\"\n\"565979\";\"Novo-Dimitrievskoe\";\"other\"\n\"565979\";\"Дмитриевская\";\"other\"\n\"565979\";\"Дмитриевское\";\"other\"\n\"566000\";\"Dmitriyevskaya\";\"main\"\n\"566000\";\"Dmitrijevskaja\";\"other\"\n\"566000\";\"Дмитриевская\";\"other\"\n\"566027\";\"Dmitriyevka\";\"main\"\n\"566027\";\"Дмитриевка\";\"other\"\n\"566155\";\"Divnoye\";\"main\"\n\"566155\";\"Divnoje\";\"other\"\n\"566155\";\"Diwnoje\";\"other\"\n\"566155\";\"Дивное\";\"other\"\n\"566157\";\"Divnomorskoye\";\"main\"\n\"566157\";\"Divnomorskoje\";\"other\"\n\"566157\";\"Fal'shivy Gelendzhik\";\"other\"\n\"566157\";\"Fal'shivyy Gelendzhik\";\"other\"\n\"566157\";\"Fal’shivy Gelendzhik\";\"other\"\n\"566157\";\"Fal’shivyy Gelendzhik\";\"other\"\n\"566157\";\"Дивноморское\";\"other\"\n\"566165\";\"Diveyevo\";\"main\"\n\"566165\";\"Divejevo\";\"other\"\n\"566165\";\"Дивеево\";\"other\"\n\"566181\";\"Dinskaya\";\"main\"\n\"566181\";\"Dinskaja\";\"other\"\n\"566181\";\"Динская\";\"other\"\n\"566199\";\"Dimitrovgrad\";\"main\"\n\"566199\";\"DIMITROVGRAD\";\"other\"\n\"566199\";\"Melekes\";\"other\"\n\"566199\";\"Melekess\";\"other\"\n\"566199\";\"ДИМИТРОВГРАД\";\"other\"\n\"566243\";\"Digora\";\"main\"\n\"566243\";\"DIGORA\";\"other\"\n\"566243\";\"Khristianskoye\";\"other\"\n\"566243\";\"ДИГОРА\";\"other\"\n\"566243\";\"Дигора\";\"other\"\n\"566267\";\"Deyskoye\";\"main\"\n\"566267\";\"Deiskoye\";\"other\"\n\"566267\";\"Dejskoje\";\"other\"\n\"566267\";\"Дейское\";\"other\"\n\"566319\";\"Devitsa\";\"main\"\n\"566319\";\"Девица\";\"other\"\n\"566363\";\"Detchino\";\"main\"\n\"566363\";\"Dettsjino\";\"other\"\n\"566363\";\"Детчино\";\"other\"\n\"566384\";\"Desnogorsk\";\"main\"\n\"566384\";\"DESNOGORSK\";\"other\"\n\"566384\";\"ДЕСНОГОРСК\";\"other\"\n\"566384\";\"Десногорск\";\"other\"\n\"566456\";\"Dergachi\";\"main\"\n\"566456\";\"DERGACHI\";\"other\"\n\"566456\";\"Dergatsji\";\"other\"\n\"566456\";\"ДЕРГАЧИ\";\"other\"\n\"566456\";\"Дергачи\";\"other\"\n\"566532\";\"Derbent\";\"main\"\n\"566532\";\"DERBENT\";\"other\"\n\"566532\";\"Derbend\";\"other\"\n\"566532\";\"deleubenteu\";\"other\"\n\"566532\";\"drbnd\";\"other\"\n\"566532\";\"drbnt\";\"other\"\n\"566532\";\"ДЕРБЕНТ\";\"other\"\n\"566532\";\"Дербенд\";\"other\"\n\"566532\";\"Дербент\";\"other\"\n\"566532\";\"דרבנט\";\"other\"\n\"566532\";\"دربند\";\"other\"\n\"566532\";\"დერბენტი\";\"other\"\n\"566532\";\"데르벤트\";\"other\"\n\"566629\";\"Demyansk\";\"main\"\n\"566629\";\"DEMJANSK\";\"other\"\n\"566629\";\"Demjansk\";\"other\"\n\"566629\";\"ДЕМЯНСК\";\"other\"\n\"566629\";\"Демянск\";\"other\"\n\"566635\";\"Dem’yanovo\";\"main\"\n\"566635\";\"Dem'yanovo\";\"ascii\"\n\"566635\";\"Demjanovo\";\"other\"\n\"566635\";\"Демьяново\";\"other\"\n\"566712\";\"Demikhovo\";\"main\"\n\"566712\";\"Demikhova\";\"other\"\n\"566712\";\"Демихово\";\"other\"\n\"566751\";\"Demidov\";\"main\"\n\"566751\";\"Porech'ye\";\"other\"\n\"566751\";\"Porech’ye\";\"other\"\n\"566751\";\"Демидов\";\"other\"\n\"566854\";\"Dedovsk\";\"main\"\n\"566854\";\"DEDOVSK\";\"other\"\n\"566854\";\"Dedovo\";\"other\"\n\"566854\";\"Dedovskiy\";\"other\"\n\"566854\";\"ДЕДОВСК\";\"other\"\n\"566854\";\"Дедовск\";\"other\"\n\"566868\";\"Dedovichi\";\"main\"\n\"566868\";\"DEDOVICHI\";\"other\"\n\"566868\";\"Dedovitsji\";\"other\"\n\"566868\";\"ДЕДОВИЧИ\";\"other\"\n\"566868\";\"Дедовичи\";\"other\"\n\"566891\";\"Dedenevo\";\"main\"\n\"566891\";\"DEDENEVO\";\"other\"\n\"566891\";\"ДЕДЕНЕВО\";\"other\"\n\"566891\";\"Деденево\";\"other\"\n\"566908\";\"Debesy\";\"main\"\n\"566908\";\"Debessy\";\"other\"\n\"566908\";\"Дебесы\";\"other\"\n\"566950\";\"Davydovo\";\"main\"\n\"566950\";\"Davydova\";\"other\"\n\"566950\";\"Dvydovo\";\"other\"\n\"566950\";\"Давыдово\";\"other\"\n\"566969\";\"Davydovka\";\"main\"\n\"566969\";\"DAVYDOVKA\";\"other\"\n\"566969\";\"Davyidovka\";\"other\"\n\"566969\";\"Dawidowka\";\"other\"\n\"566969\";\"ДАВЫДОВКА\";\"other\"\n\"566969\";\"Давыдовка\";\"other\"\n\"567006\";\"Davlekanovo\";\"main\"\n\"567006\";\"DAVLEKANOVO\";\"other\"\n\"567006\";\"Davlekanova\";\"other\"\n\"567006\";\"Davlekaovo\";\"other\"\n\"567006\";\"Dawlekanowo\";\"other\"\n\"567006\";\"ДАВЛЕКАНОВО\";\"other\"\n\"567006\";\"Давлеканово\";\"other\"\n\"567047\";\"Darovskoy\";\"main\"\n\"567047\";\"DAROVSKOJ\";\"other\"\n\"567047\";\"Darovskoj\";\"other\"\n\"567047\";\"Darovskoye\";\"other\"\n\"567047\";\"ДАРОВСКОЙ\";\"other\"\n\"567047\";\"Даровской\";\"other\"\n\"567109\";\"Dankov\";\"main\"\n\"567109\";\"DANKOV\";\"other\"\n\"567109\";\"Dankovo\";\"other\"\n\"567109\";\"ДАНКОВ\";\"other\"\n\"567109\";\"Данков\";\"other\"\n\"567111\";\"Danki\";\"main\"\n\"567111\";\"Данки\";\"other\"\n\"567177\";\"Danilovka\";\"main\"\n\"567177\";\"Даниловка\";\"other\"\n\"567183\";\"Danilov\";\"main\"\n\"567183\";\"DANILOV\";\"other\"\n\"567183\";\"Danilow\";\"other\"\n\"567183\";\"danillopeu\";\"other\"\n\"567183\";\"ДАНИЛОВ\";\"other\"\n\"567183\";\"Данилов\";\"other\"\n\"567183\";\"다닐로프\";\"other\"\n\"567280\";\"Dalakovo\";\"main\"\n\"567280\";\"Dallagkau\";\"other\"\n\"567280\";\"Dallakau\";\"other\"\n\"567280\";\"Dolakovo\";\"other\"\n\"567280\";\"Dollaqkau\";\"other\"\n\"567280\";\"Долаково\";\"other\"\n\"567290\";\"Dagestanskiye Ogni\";\"main\"\n\"567290\";\"DAGESTANSKIE OGNI\";\"other\"\n\"567290\";\"Dagestanskije Ogni\";\"other\"\n\"567290\";\"ДАГЕСТАНСКИЕ ОГНИ\";\"other\"\n\"567290\";\"Дагестанские Огни\";\"other\"\n\"567312\";\"Dachnoye\";\"main\"\n\"567312\";\"Дачное\";\"other\"\n\"567434\";\"Chusovoy\";\"main\"\n\"567434\";\"CHUSOVOJ\";\"other\"\n\"567434\";\"Chusovaya\";\"other\"\n\"567434\";\"Tsjusovoj\";\"other\"\n\"567434\";\"Zavod Chusovskoye\";\"other\"\n\"567434\";\"ЧУСОВОЙ\";\"other\"\n\"567589\";\"Chupa\";\"main\"\n\"567589\";\"CHUPA\";\"other\"\n\"567589\";\"Chup\";\"other\"\n\"567589\";\"Tsjupa\";\"other\"\n\"567589\";\"Tsuupa\";\"other\"\n\"567589\";\"Tšuupa\";\"other\"\n\"567589\";\"ЧУПА\";\"other\"\n\"567589\";\"Чупа\";\"other\"\n\"567695\";\"Chukhloma\";\"main\"\n\"567695\";\"CHUKHLOMA\";\"other\"\n\"567695\";\"Tsjukhloma\";\"other\"\n\"567695\";\"ЧУХЛОМА\";\"other\"\n\"567695\";\"Чухлома\";\"other\"\n\"567748\";\"Chufarovo\";\"main\"\n\"567748\";\"CHUFAROVO\";\"other\"\n\"567748\";\"Tsjufarovo\";\"other\"\n\"567748\";\"ЧУФАРОВО\";\"other\"\n\"567748\";\"Чуфарово\";\"other\"\n\"567774\";\"Chudovo\";\"main\"\n\"567774\";\"CHUDOVO\";\"other\"\n\"567774\";\"Tschudowo\";\"other\"\n\"567774\";\"Tsjudovo\";\"other\"\n\"567774\";\"ЧУДОВО\";\"other\"\n\"567774\";\"Чудово\";\"other\"\n\"567806\";\"Chuchkovo\";\"main\"\n\"567806\";\"CHUCHKOVO\";\"other\"\n\"567806\";\"Tsjutsjkovo\";\"other\"\n\"567806\";\"ЧУЧКОВО\";\"other\"\n\"567806\";\"Чучково\";\"other\"\n\"567859\";\"Chontaul\";\"main\"\n\"567859\";\"Tsjontaul\";\"other\"\n\"567859\";\"Чонтаул\";\"other\"\n\"567902\";\"Chkalovsk\";\"main\"\n\"567902\";\"CHKALOVSK\";\"other\"\n\"567902\";\"Tsjkalovsk\";\"other\"\n\"567902\";\"Vasil'yevo\";\"other\"\n\"567902\";\"Vasilevo\";\"other\"\n\"567902\";\"ЧКАЛОВСК\";\"other\"\n\"567972\";\"Chistoye\";\"main\"\n\"567972\";\"CHISTOE\";\"other\"\n\"567972\";\"Tsjistoje\";\"other\"\n\"567972\";\"ЧИСТОЕ\";\"other\"\n\"567990\";\"Chistopol’\";\"main\"\n\"567990\";\"Chistopol'\";\"ascii\"\n\"567990\";\"Tsjistopol\";\"other\"\n\"567990\";\"Чистополь\";\"other\"\n\"568012\";\"Chishmy\";\"main\"\n\"568012\";\"Tsjisjmy\";\"other\"\n\"568012\";\"Чишмы\";\"other\"\n\"568077\";\"Chirkey\";\"main\"\n\"568077\";\"Cherkai\";\"other\"\n\"568077\";\"Chirkat\";\"other\"\n\"568077\";\"Chirkkat\";\"other\"\n\"568077\";\"Staryy Chirkey\";\"other\"\n\"568077\";\"Staryy-Cherkey\";\"other\"\n\"568077\";\"Tsjirkej\";\"other\"\n\"568077\";\"Чиркей\";\"other\"\n\"568085\";\"Chiri-Yurt\";\"main\"\n\"568085\";\"Chir-Yurt\";\"other\"\n\"568085\";\"Chiri-Jurt\";\"other\"\n\"568085\";\"Nadrech'ye\";\"other\"\n\"568085\";\"Tsjiri-Jurt\";\"other\"\n\"568085\";\"Чири-Юрт\";\"other\"\n\"568184\";\"Chikola\";\"main\"\n\"568184\";\"Tsjikola\";\"other\"\n\"568184\";\"Чикола\";\"other\"\n\"568400\";\"Cherusti\";\"main\"\n\"568400\";\"CHERUSTI\";\"other\"\n\"568400\";\"Cherust'\";\"other\"\n\"568400\";\"Cherust’\";\"other\"\n\"568400\";\"Tsjerusti\";\"other\"\n\"568400\";\"ЧЕРУСТИ\";\"other\"\n\"568400\";\"Черусти\";\"other\"\n\"568429\";\"Chertkovo\";\"main\"\n\"568429\";\"Tsjertkovo\";\"other\"\n\"568429\";\"Чертково\";\"other\"\n\"568464\";\"Chërnyy Yar\";\"main\"\n\"568464\";\"Chernyy Yar\";\"ascii\"\n\"568464\";\"Cherny Yar\";\"other\"\n\"568464\";\"Chernyj Jar\";\"other\"\n\"568464\";\"Tschernyi-jar\";\"other\"\n\"568464\";\"Tschernyjar\";\"other\"\n\"568464\";\"Tsjernyj Jar\";\"other\"\n\"568464\";\"Черный Яр\";\"other\"\n\"568464\";\"Чёрный Яр\";\"other\"\n\"568527\";\"Chernyshkovskiy\";\"main\"\n\"568527\";\"CHERNYSHKOVSKIJ\";\"other\"\n\"568527\";\"Chernyshkov\";\"other\"\n\"568527\";\"Tschernyschkowski\";\"other\"\n\"568527\";\"Tsjernysjkovskij\";\"other\"\n\"568527\";\"Tzhernyshkovskiy\";\"other\"\n\"568527\";\"ЧЕРНЫШКОВСКИЙ\";\"other\"\n\"568527\";\"Чернышковский\";\"other\"\n\"568587\";\"Chernyanka\";\"main\"\n\"568587\";\"CHERNJANKA\";\"other\"\n\"568587\";\"Tschernjanka\";\"other\"\n\"568587\";\"Tsjernjanka\";\"other\"\n\"568587\";\"ЧЕРНЯНКА\";\"other\"\n\"568587\";\"Чернянка\";\"other\"\n\"568595\";\"Chernyakhovsk\";\"main\"\n\"568595\";\"CHERNJAKHOVSK\";\"other\"\n\"568595\";\"Cerniachovskas\";\"other\"\n\"568595\";\"Cernjahovsk\";\"other\"\n\"568595\";\"Cernjakhovsk\";\"other\"\n\"568595\";\"Chernikovsk\";\"other\"\n\"568595\";\"Chernjakhovsk\";\"other\"\n\"568595\";\"Chernyakhovskiy\";\"other\"\n\"568595\";\"Chernyakovsky\";\"other\"\n\"568595\";\"Czerniachowsk\";\"other\"\n\"568595\";\"Insterburg\";\"other\"\n\"568595\";\"Tschernjachowsk\";\"other\"\n\"568595\";\"Wystruc\";\"other\"\n\"568595\";\"Wystruć\";\"other\"\n\"568595\";\"cheleunyahobseukeu\";\"other\"\n\"568595\";\"Ĉernjaĥovsk\";\"other\"\n\"568595\";\"Černiachovskas\";\"other\"\n\"568595\";\"Černjahovsk\";\"other\"\n\"568595\";\"Černjakhovsk\";\"other\"\n\"568595\";\"ЧЕРНЯХОВСК\";\"other\"\n\"568595\";\"Черняховск\";\"other\"\n\"568595\";\"체르냐홉스크\";\"other\"\n\"568608\";\"Chernushka\";\"main\"\n\"568608\";\"CHERNUSHKA\";\"other\"\n\"568608\";\"Tschernuschka\";\"other\"\n\"568608\";\"Tsjernusjka\";\"other\"\n\"568608\";\"ЧЕРНУШКА\";\"other\"\n\"568608\";\"Чернушка\";\"other\"\n\"568615\";\"Chernukha\";\"main\"\n\"568615\";\"Tsjernukha\";\"other\"\n\"568615\";\"Чернуха\";\"other\"\n\"568633\";\"Chernoyerkovskaya\";\"main\"\n\"568633\";\"Tsjernojerkovskaja\";\"other\"\n\"568633\";\"Черноерковская\";\"other\"\n\"568785\";\"Chernomorskiy\";\"main\"\n\"568785\";\"CHERNOMORSKIJ\";\"other\"\n\"568785\";\"Tsjernomorskij\";\"other\"\n\"568785\";\"ЧЕРНОМОРСКИЙ\";\"other\"\n\"568785\";\"Черноморский\";\"other\"\n\"568790\";\"Chernolesskoye\";\"main\"\n\"568790\";\"Tsjernolesskoje\";\"other\"\n\"568790\";\"Чернолесское\";\"other\"\n\"568797\";\"Chernoistochinsk\";\"main\"\n\"568797\";\"CHERNOISTOCHINSK\";\"other\"\n\"568797\";\"Chernoistochinskiy\";\"other\"\n\"568797\";\"Tsjernoistotsjinsk\";\"other\"\n\"568797\";\"ЧЕРНОИСТОЧИНСК\";\"other\"\n\"568797\";\"Черноисточинск\";\"other\"\n\"568808\";\"Chernogolovka\";\"main\"\n\"568808\";\"CHERNOGOLOVKA\";\"other\"\n\"568808\";\"Tsjernogolovka\";\"other\"\n\"568808\";\"ЧЕРНОГОЛОВКА\";\"other\"\n\"568808\";\"Черноголовка\";\"other\"\n\"568822\";\"Chernitsyno\";\"main\"\n\"568822\";\"Tsjernitsyno\";\"other\"\n\"568822\";\"Черницыно\";\"other\"\n\"568954\";\"Chërnaya Kholunitsa\";\"main\"\n\"568954\";\"Chernaya Kholunitsa\";\"ascii\"\n\"568954\";\"CHERNAJA KHOLUNICA\";\"other\"\n\"568954\";\"Tsjernaja Kholunitsa\";\"other\"\n\"568954\";\"ЧЕРНАЯ ХОЛУНИЦА\";\"other\"\n\"568954\";\"Чёрная Холуница\";\"other\"\n\"569077\";\"Chërnaya\";\"main\"\n\"569077\";\"Chernaya\";\"ascii\"\n\"569077\";\"Chernaja\";\"other\"\n\"569077\";\"Chernoye\";\"other\"\n\"569077\";\"Chornaya\";\"other\"\n\"569077\";\"Chërnoye\";\"other\"\n\"569077\";\"Черная\";\"other\"\n\"569077\";\"Чёрная\";\"other\"\n\"569116\";\"Chern’\";\"main\"\n\"569116\";\"Chern'\";\"ascii\"\n\"569116\";\"CHERN'\";\"other\"\n\"569116\";\"Tsjern\";\"other\"\n\"569116\";\"ЧЕРНЬ\";\"other\"\n\"569116\";\"Чернь\";\"other\"\n\"569122\";\"Chermoz\";\"main\"\n\"569122\";\"CHERMOZ\";\"other\"\n\"569122\";\"Tsjermoz\";\"other\"\n\"569122\";\"ЧЕРМОЗ\";\"other\"\n\"569122\";\"Чермоз\";\"other\"\n\"569132\";\"Chermen\";\"main\"\n\"569132\";\"Bazorkino\";\"other\"\n\"569132\";\"Bozorkino\";\"other\"\n\"569132\";\"Tsjermen\";\"other\"\n\"569132\";\"Чермен\";\"other\"\n\"569144\";\"Cherkizovo\";\"main\"\n\"569144\";\"Tekstil'shchiki\";\"other\"\n\"569144\";\"Tekstil’shchiki\";\"other\"\n\"569144\";\"Tsjerkizovo\";\"other\"\n\"569144\";\"Черкизово\";\"other\"\n\"569154\";\"Cherkessk\";\"main\"\n\"569154\";\"Batalpashinsk\";\"other\"\n\"569154\";\"Cerkesk\";\"other\"\n\"569154\";\"Cerkessk\";\"other\"\n\"569154\";\"Czerkiesk\";\"other\"\n\"569154\";\"Tscherkessk\";\"other\"\n\"569154\";\"Tserkessk\";\"other\"\n\"569154\";\"Tsjerkessk\";\"other\"\n\"569154\";\"Tšerkessk\";\"other\"\n\"569154\";\"Yezhovo-Cherkessk\";\"other\"\n\"569154\";\"Zhezhoro-Cherkessk\";\"other\"\n\"569154\";\"cheleukeseukeu\";\"other\"\n\"569154\";\"cherukesuku\";\"other\"\n\"569154\";\"z'rqsq\";\"other\"\n\"569154\";\"Ĉerkessk\";\"other\"\n\"569154\";\"Čerkesk\";\"other\"\n\"569154\";\"Черкесск\";\"other\"\n\"569154\";\"צ'רקסק\";\"other\"\n\"569154\";\"チェルケスク\";\"other\"\n\"569154\";\"체르케스크\";\"other\"\n\"569170\";\"Cherkasskoye\";\"main\"\n\"569170\";\"CHERKASSKOE\";\"other\"\n\"569170\";\"Cherkaskoye\";\"other\"\n\"569170\";\"Cherkasy\";\"other\"\n\"569170\";\"Tsjerkasskoje\";\"other\"\n\"569170\";\"ЧЕРКАССКОЕ\";\"other\"\n\"569223\";\"Cherepovets\";\"main\"\n\"569223\";\"Cerepovec\";\"other\"\n\"569223\";\"Cherepovec\";\"other\"\n\"569223\";\"Cherepovetz\";\"other\"\n\"569223\";\"Czerepowiec\";\"other\"\n\"569223\";\"Tscherepowez\";\"other\"\n\"569223\";\"Tserepovets\";\"other\"\n\"569223\";\"Tsjerepovets\";\"other\"\n\"569223\";\"Tšerepovets\";\"other\"\n\"569223\";\"chelepobecheu\";\"other\"\n\"569223\";\"cherepovu~etsu\";\"other\"\n\"569223\";\"Ĉerepovec\";\"other\"\n\"569223\";\"Čerepovec\";\"other\"\n\"569223\";\"Череповец\";\"other\"\n\"569223\";\"チェレポヴェツ\";\"other\"\n\"569223\";\"체레포베츠\";\"other\"\n\"569231\";\"Cherepet’\";\"main\"\n\"569231\";\"Cherepet'\";\"ascii\"\n\"569231\";\"CHEREPET'\";\"other\"\n\"569231\";\"Tsjerepet\";\"other\"\n\"569231\";\"ЧЕРЕПЕТЬ\";\"other\"\n\"569231\";\"Черепеть\";\"other\"\n\"569269\";\"Cheremushskiy\";\"main\"\n\"569269\";\"CHEREMUSHSKIJ\";\"other\"\n\"569269\";\"Cheremukha\";\"other\"\n\"569269\";\"Cherëmukha\";\"other\"\n\"569269\";\"Tsjeremusjskij\";\"other\"\n\"569269\";\"ЧЕРЕМУШСКИЙ\";\"other\"\n\"569269\";\"Черемушский\";\"other\"\n\"569295\";\"Cherëmukhovo\";\"main\"\n\"569295\";\"Cheremukhovo\";\"ascii\"\n\"569295\";\"CHEREMUKHOVO\";\"other\"\n\"569295\";\"Tsjeremukhovo\";\"other\"\n\"569295\";\"ЧЕРЕМУХОВО\";\"other\"\n\"569295\";\"Черёмухово\";\"other\"\n\"569318\";\"Cheremshan\";\"main\"\n\"569318\";\"Tsjeremsjan\";\"other\"\n\"569318\";\"Черемшан\";\"other\"\n\"569339\";\"Cheremisinovo\";\"main\"\n\"569339\";\"Tsjeremisinovo\";\"other\"\n\"569339\";\"Черемисиново\";\"other\"\n\"569359\";\"Cherdyn'\";\"main\"\n\"569359\";\"Tscherdyn\";\"other\"\n\"569359\";\"Tsjerdyn\";\"other\"\n\"569359\";\"Чердынь\";\"other\"\n\"569360\";\"Cherdakly\";\"main\"\n\"569360\";\"CHERDAKLY\";\"other\"\n\"569360\";\"Tsjerdakly\";\"other\"\n\"569360\";\"ЧЕРДАКЛЫ\";\"other\"\n\"569360\";\"Чердаклы\";\"other\"\n\"569453\";\"Chemodanovka\";\"main\"\n\"569453\";\"Tsjemodanovka\";\"other\"\n\"569453\";\"Чемодановка\";\"other\"\n\"569497\";\"Chelno-Vershiny\";\"main\"\n\"569497\";\"Tsjelno-Versjiny\";\"other\"\n\"569497\";\"Челно-Вершины\";\"other\"\n\"569540\";\"Chelbasskaya\";\"main\"\n\"569540\";\"Chelbaskaya\";\"other\"\n\"569540\";\"Tsjelbasskaja\";\"other\"\n\"569540\";\"Челбасская\";\"other\"\n\"569579\";\"Chekmagush\";\"main\"\n\"569579\";\"Chekmagushi\";\"other\"\n\"569579\";\"Tsjekmagusj\";\"other\"\n\"569579\";\"Чекмагуш\";\"other\"\n\"569591\";\"Chekhov\";\"main\"\n\"569591\";\"CHEKHOV\";\"other\"\n\"569591\";\"Lopasnya\";\"other\"\n\"569591\";\"Tsjekhov\";\"other\"\n\"569591\";\"ЧЕХОВ\";\"other\"\n\"569591\";\"Чехов\";\"other\"\n\"569615\";\"Chekalin\";\"main\"\n\"569615\";\"CHEKALIN\";\"other\"\n\"569615\";\"Dikhvin\";\"other\"\n\"569615\";\"Likhvin\";\"other\"\n\"569615\";\"Tsjekalin\";\"other\"\n\"569615\";\"ЧЕКАЛИН\";\"other\"\n\"569615\";\"Чекалин\";\"other\"\n\"569632\";\"Chegem Vtoroy\";\"main\"\n\"569632\";\"Chechem\";\"other\"\n\"569632\";\"Tsjegem Vtoroj\";\"other\"\n\"569632\";\"Чегем Второй\";\"other\"\n\"569639\";\"Chegem\";\"main\"\n\"569639\";\"Chechem\";\"other\"\n\"569639\";\"Tsjegem\";\"other\"\n\"569639\";\"Чегем\";\"other\"\n\"569666\";\"Chechen-Aul\";\"main\"\n\"569666\";\"Kalinovka\";\"other\"\n\"569666\";\"Tsjetsjen-Aul\";\"other\"\n\"569666\";\"Чечен-Аул\";\"other\"\n\"569681\";\"Chebsara\";\"main\"\n\"569681\";\"CHEBSARA\";\"other\"\n\"569681\";\"Chabsara\";\"other\"\n\"569681\";\"Tsjebsara\";\"other\"\n\"569681\";\"ЧЕБСАРА\";\"other\"\n\"569681\";\"Чебсара\";\"other\"\n\"569696\";\"Cheboksary\";\"main\"\n\"569696\";\"Ceboksari\";\"other\"\n\"569696\";\"Ceboksary\";\"other\"\n\"569696\";\"Cheboksar'\";\"other\"\n\"569696\";\"Cheboksar’\";\"other\"\n\"569696\";\"Csebokszari\";\"other\"\n\"569696\";\"Csebokszári\";\"other\"\n\"569696\";\"Czeboksary\";\"other\"\n\"569696\";\"Shupashkar\";\"other\"\n\"569696\";\"Tcheboksary\";\"other\"\n\"569696\";\"Tjeboksary\";\"other\"\n\"569696\";\"Tscheboksary\";\"other\"\n\"569696\";\"Tseboksaro\";\"other\"\n\"569696\";\"Tseboksary\";\"other\"\n\"569696\";\"Tsjeboksary\";\"other\"\n\"569696\";\"Tšeboksary\";\"other\"\n\"569696\";\"Tšeboksarõ\";\"other\"\n\"569696\";\"chebogsali\";\"other\"\n\"569696\";\"chebokusaru\";\"other\"\n\"569696\";\"z'bwqsry\";\"other\"\n\"569696\";\"Ĉeboksari\";\"other\"\n\"569696\";\"Čeboksari\";\"other\"\n\"569696\";\"Čeboksary\";\"other\"\n\"569696\";\"Чебоксары\";\"other\"\n\"569696\";\"Шупашкар\";\"other\"\n\"569696\";\"צ'בוקסרי\";\"other\"\n\"569696\";\"چاباق‌سر\";\"other\"\n\"569696\";\"チェボクサル\";\"other\"\n\"569696\";\"체복사리\";\"other\"\n\"569742\";\"Chaykovskiy\";\"main\"\n\"569742\";\"CHAJKOVSKIJ\";\"other\"\n\"569742\";\"Tsjajkovskij\";\"other\"\n\"569742\";\"ЧАЙКОВСКИЙ\";\"other\"\n\"569743\";\"Chaykovskaya\";\"main\"\n\"569743\";\"Chajkovskaja\";\"other\"\n\"569743\";\"Tsjajkovskaja\";\"other\"\n\"569743\";\"Чайковская\";\"other\"\n\"569794\";\"Chastyye\";\"main\"\n\"569794\";\"Tsjastye\";\"other\"\n\"569794\";\"Частые\";\"other\"\n\"569841\";\"Chashnikovo\";\"main\"\n\"569841\";\"Tsjasjnikovo\";\"other\"\n\"569841\";\"Чашниково\";\"other\"\n\"569934\";\"Chaplygin\";\"main\"\n\"569934\";\"CHAPLYGIN\";\"other\"\n\"569934\";\"Ranenburg\";\"other\"\n\"569934\";\"Tsjaplygin\";\"other\"\n\"569934\";\"ЧАПЛЫГИН\";\"other\"\n\"569934\";\"Чаплыгин\";\"other\"\n\"569955\";\"Chapayevsk\";\"main\"\n\"569955\";\"CHAPAEVSK\";\"other\"\n\"569955\";\"Chapaevsk\";\"other\"\n\"569955\";\"Ivashchenkovo\";\"other\"\n\"569955\";\"Trotsk\";\"other\"\n\"569955\";\"Tschapajewsk\";\"other\"\n\"569955\";\"Tsjapajevsk\";\"other\"\n\"569955\";\"ЧАПАЕВСК\";\"other\"\n\"569955\";\"Чапаевск\";\"other\"\n\"570008\";\"Chamlykskaya\";\"main\"\n\"570008\";\"Chamlikskaya\";\"other\"\n\"570008\";\"Chamlyskaya\";\"other\"\n\"570008\";\"Tschamlykaja\";\"other\"\n\"570008\";\"Tsjamlykskaja\";\"other\"\n\"570008\";\"Чамлыкская\";\"other\"\n\"570021\";\"Chaltyr’\";\"main\"\n\"570021\";\"Chaltyr'\";\"ascii\"\n\"570021\";\"Tschaltyr\";\"other\"\n\"570021\";\"Tsjaltyr\";\"other\"\n\"570021\";\"Чалтырь\";\"other\"\n\"570086\";\"Chagoda\";\"main\"\n\"570086\";\"Belyy Bychek\";\"other\"\n\"570086\";\"Belyy Bychok\";\"other\"\n\"570086\";\"Tsjagoda\";\"other\"\n\"570086\";\"Чагода\";\"other\"\n\"570133\";\"Chaadayevka\";\"main\"\n\"570133\";\"Tsjaadajevka\";\"other\"\n\"570133\";\"Чаадаевка\";\"other\"\n\"570158\";\"Bytosh’\";\"main\"\n\"570158\";\"Bytosh'\";\"ascii\"\n\"570158\";\"BYTOSH'\";\"other\"\n\"570158\";\"Bytoshskiy\";\"other\"\n\"570158\";\"Bytosj\";\"other\"\n\"570158\";\"БЫТОШЬ\";\"other\"\n\"570158\";\"Бытошь\";\"other\"\n\"570188\";\"Bystrogorskiy\";\"main\"\n\"570188\";\"Bystrogorskij\";\"other\"\n\"570188\";\"Быстрогорский\";\"other\"\n\"570298\";\"Bykovo\";\"main\"\n\"570298\";\"Быково\";\"other\"\n\"570315\";\"Bykovo\";\"main\"\n\"570315\";\"BYKOVO\";\"other\"\n\"570315\";\"Bykowo\";\"other\"\n\"570315\";\"Kalinov\";\"other\"\n\"570315\";\"Kalinova Balka\";\"other\"\n\"570315\";\"Kalinovaya Balka\";\"other\"\n\"570315\";\"БЫКОВО\";\"other\"\n\"570315\";\"Быково\";\"other\"\n\"570427\";\"Buzuluk\";\"main\"\n\"570427\";\"BUZULUK\";\"other\"\n\"570427\";\"Busuluk\";\"other\"\n\"570427\";\"Buzułuk\";\"other\"\n\"570427\";\"bujullukeu\";\"other\"\n\"570427\";\"БУЗУЛУК\";\"other\"\n\"570427\";\"Бузулук\";\"other\"\n\"570427\";\"부줄루크\";\"other\"\n\"570455\";\"Buzdyak\";\"main\"\n\"570455\";\"Buzdjak\";\"other\"\n\"570455\";\"Буздяк\";\"other\"\n\"570479\";\"Buynaksk\";\"main\"\n\"570479\";\"BUJNAKSK\";\"other\"\n\"570479\";\"Boejnaksk\";\"other\"\n\"570479\";\"Buinaksk\";\"other\"\n\"570479\";\"Bujnakh\\\"sk\";\"other\"\n\"570479\";\"Bujnaksk\";\"other\"\n\"570479\";\"Temir Khan Choura\";\"other\"\n\"570479\";\"Temir-Khan-Shura\";\"other\"\n\"570479\";\"bu-inagseukeu\";\"other\"\n\"570479\";\"БУЙНАКСК\";\"other\"\n\"570479\";\"Буйнакск\";\"other\"\n\"570479\";\"Буйнахъск\";\"other\"\n\"570479\";\"부이낙스크\";\"other\"\n\"570508\";\"Buy\";\"main\"\n\"570508\";\"BUJ\";\"other\"\n\"570508\";\"Buj\";\"other\"\n\"570508\";\"БУЙ\";\"other\"\n\"570563\";\"Buturlinovka\";\"main\"\n\"570563\";\"BUTURLINOVKA\";\"other\"\n\"570563\";\"Buturlinowka\";\"other\"\n\"570563\";\"БУТУРЛИНОВКА\";\"other\"\n\"570563\";\"Бутурлиновка\";\"other\"\n\"570564\";\"Buturlino\";\"main\"\n\"570564\";\"BUTURLINO\";\"other\"\n\"570564\";\"БУТУРЛИНО\";\"other\"\n\"570564\";\"Бутурлино\";\"other\"\n\"570683\";\"Burtunay\";\"main\"\n\"570683\";\"Burtunaj\";\"other\"\n\"570683\";\"Буртунай\";\"other\"\n\"570770\";\"Burmakino\";\"main\"\n\"570770\";\"Burmikino\";\"other\"\n\"570770\";\"Бурмакино\";\"other\"\n\"570785\";\"Burlatskoye\";\"main\"\n\"570785\";\"Burlackoe\";\"other\"\n\"570785\";\"Burlatskoje\";\"other\"\n\"570785\";\"Бурлатское\";\"other\"\n\"570785\";\"Бурлацкое\";\"other\"\n\"570813\";\"Buribay\";\"main\"\n\"570813\";\"BURIBAJ\";\"other\"\n\"570813\";\"Buribai\";\"other\"\n\"570813\";\"Buribaj\";\"other\"\n\"570813\";\"Buryubaeva\";\"other\"\n\"570813\";\"БУРИБАЙ\";\"other\"\n\"570813\";\"Бурибай\";\"other\"\n\"570827\";\"Burevestnik\";\"main\"\n\"570827\";\"Sovkhoz Burevestnik\";\"other\"\n\"570827\";\"Буревестник\";\"other\"\n\"570868\";\"Burayevo\";\"main\"\n\"570868\";\"Burajevo\";\"other\"\n\"570868\";\"Бураево\";\"other\"\n\"570990\";\"Bolgar\";\"main\"\n\"570990\";\"BOLGAR\";\"other\"\n\"570990\";\"Bulgar\";\"other\"\n\"570990\";\"Kuybyshev\";\"other\"\n\"570990\";\"Spask\";\"other\"\n\"570990\";\"Spassk\";\"other\"\n\"570990\";\"Spassk-Tatarskiy\";\"other\"\n\"570990\";\"БОЛГАР\";\"other\"\n\"570990\";\"Болгар\";\"other\"\n\"571154\";\"Buinsk\";\"main\"\n\"571154\";\"BUINSK\";\"other\"\n\"571154\";\"БУИНСК\";\"other\"\n\"571155\";\"Buinsk\";\"main\"\n\"571155\";\"BUINSK\";\"other\"\n\"571155\";\"БУИНСК\";\"other\"\n\"571159\";\"Buguruslan\";\"main\"\n\"571159\";\"BUGURUSLAN\";\"other\"\n\"571159\";\"Bugurusłan\";\"other\"\n\"571159\";\"buguluseullan\";\"other\"\n\"571159\";\"БУГУРУСЛАН\";\"other\"\n\"571159\";\"Бугуруслан\";\"other\"\n\"571159\";\"부구루슬란\";\"other\"\n\"571170\";\"Bugul’ma\";\"main\"\n\"571170\";\"Bugul'ma\";\"ascii\"\n\"571170\";\"Bugulina\";\"other\"\n\"571170\";\"Bugulma\";\"other\"\n\"571170\";\"Бугульма\";\"other\"\n\"571252\";\"Budogoshch’\";\"main\"\n\"571252\";\"Budogoshch'\";\"ascii\"\n\"571252\";\"BUDOGOSHH'\";\"other\"\n\"571252\";\"Budogoschtsch\";\"other\"\n\"571252\";\"Budogoschtsch-Sumpe\";\"other\"\n\"571252\";\"Budogosjtsj\";\"other\"\n\"571252\";\"БУДОГОЩЬ\";\"other\"\n\"571252\";\"Будогощь\";\"other\"\n\"571306\";\"Budënnovsk\";\"main\"\n\"571306\";\"Budennovsk\";\"ascii\"\n\"571306\";\"BUDENNOVSK\";\"other\"\n\"571306\";\"Budennowsk\";\"other\"\n\"571306\";\"Budenovsk\";\"other\"\n\"571306\";\"Budjennowsk\";\"other\"\n\"571306\";\"Budyonovsk\";\"other\"\n\"571306\";\"Karabagly\";\"other\"\n\"571306\";\"Prikumsk\";\"other\"\n\"571306\";\"Svetaya Kresta\";\"other\"\n\"571306\";\"Svyatoy Krest\";\"other\"\n\"571306\";\"БУДЕННОВСК\";\"other\"\n\"571306\";\"Будённовск\";\"other\"\n\"571420\";\"Bryukhovetskaya\";\"main\"\n\"571420\";\"Brjukhovetskaja\";\"other\"\n\"571420\";\"Брюховецкая\";\"other\"\n\"571476\";\"Bryansk\";\"main\"\n\"571476\";\"Briansk\";\"other\"\n\"571476\";\"Briańsk\";\"other\"\n\"571476\";\"Brjansk\";\"other\"\n\"571476\";\"beulyanseukeu\";\"other\"\n\"571476\";\"Брянск\";\"other\"\n\"571476\";\"Брјанск\";\"other\"\n\"571476\";\"브랸스크\";\"other\"\n\"571492\";\"Brusyanka\";\"main\"\n\"571492\";\"Brusianskij\";\"other\"\n\"571492\";\"Brusjanskij\";\"other\"\n\"571492\";\"Brusyanskiy\";\"other\"\n\"571492\";\"Брусянка\";\"other\"\n\"571492\";\"Брусянский\";\"other\"\n\"571557\";\"Bronnitsy\";\"main\"\n\"571557\";\"BRONNICY\";\"other\"\n\"571557\";\"Bronnitsi\";\"other\"\n\"571557\";\"БРОННИЦЫ\";\"other\"\n\"571557\";\"Бронницы\";\"other\"\n\"571634\";\"Breytovo\";\"main\"\n\"571634\";\"BREJTOVO\";\"other\"\n\"571634\";\"Brejtovo\";\"other\"\n\"571634\";\"БРЕЙТОВО\";\"other\"\n\"571634\";\"Брейтово\";\"other\"\n\"571702\";\"Nogamirzin-Yurt\";\"main\"\n\"571702\";\"Bratskoe\";\"other\"\n\"571702\";\"Bratskoje\";\"other\"\n\"571702\";\"Bratskoye\";\"other\"\n\"571702\";\"Nogay-Mirza\";\"other\"\n\"571702\";\"Nogay-Mirza-Yurt\";\"other\"\n\"571702\";\"Братское\";\"other\"\n\"571913\";\"Borzoy\";\"main\"\n\"571913\";\"Al'piyskoye\";\"other\"\n\"571913\";\"Barzoy\";\"other\"\n\"571913\";\"Borzoj\";\"other\"\n\"571913\";\"Борзой\";\"other\"\n\"571987\";\"Borskoye\";\"main\"\n\"571987\";\"Borskoje\";\"other\"\n\"571987\";\"Борское\";\"other\"\n\"572070\";\"Borovsk\";\"main\"\n\"572070\";\"BOROVSK\";\"other\"\n\"572070\";\"БОРОВСК\";\"other\"\n\"572070\";\"Боровск\";\"other\"\n\"572090\";\"Borovoy\";\"main\"\n\"572090\";\"Borovaya\";\"other\"\n\"572090\";\"Borovoj\";\"other\"\n\"572090\";\"Боровой\";\"other\"\n\"572091\";\"Borovoy\";\"main\"\n\"572091\";\"Borovyj\";\"other\"\n\"572091\";\"Borovyy\";\"other\"\n\"572091\";\"Боровой\";\"other\"\n\"572091\";\"Боровый\";\"other\"\n\"572154\";\"Borovichi\";\"main\"\n\"572154\";\"Borovitsji\";\"other\"\n\"572154\";\"Боровичи\";\"other\"\n\"572220\";\"Borok\";\"main\"\n\"572220\";\"Grigorovo\";\"other\"\n\"572220\";\"Борок\";\"other\"\n\"572256\";\"Borodinskiy\";\"main\"\n\"572256\";\"Borodino\";\"other\"\n\"572256\";\"Бородинский\";\"other\"\n\"572500\";\"Borisovka\";\"main\"\n\"572500\";\"BORISOVKA\";\"other\"\n\"572500\";\"Bohsouka\";\"other\"\n\"572500\";\"БОРИСОВКА\";\"other\"\n\"572500\";\"Борисовка\";\"other\"\n\"572506\";\"Borisova Griva\";\"main\"\n\"572506\";\"Борисова Грива\";\"other\"\n\"572520\";\"Borisoglebskiy\";\"main\"\n\"572520\";\"BORISOGLEBSKIJ\";\"other\"\n\"572520\";\"Borisoglebskaya Sloboda\";\"other\"\n\"572520\";\"Borisoglebskij\";\"other\"\n\"572520\";\"Borisoglebskiye Slobody\";\"other\"\n\"572520\";\"БОРИСОГЛЕБСКИЙ\";\"other\"\n\"572520\";\"Борисоглебский\";\"other\"\n\"572525\";\"Borisoglebsk\";\"main\"\n\"572525\";\"BORISOGLEBSK\";\"other\"\n\"572525\";\"Borissoglebsk\";\"other\"\n\"572525\";\"Borysoglebsk\";\"other\"\n\"572525\";\"bolisogeullebseukeu\";\"other\"\n\"572525\";\"БОРИСОГЛЕБСК\";\"other\"\n\"572525\";\"Борисоглебск\";\"other\"\n\"572525\";\"Борисоглібськ\";\"other\"\n\"572525\";\"보리소글렙스크\";\"other\"\n\"572559\";\"Borinskoye\";\"main\"\n\"572559\";\"Borinskiye Zavody\";\"other\"\n\"572559\";\"Borinskoje\";\"other\"\n\"572559\";\"Боринское\";\"other\"\n\"572567\";\"Borgustanskaya\";\"main\"\n\"572567\";\"Borgustanskaja\";\"other\"\n\"572567\";\"Боргустанская\";\"other\"\n\"572665\";\"Bor\";\"main\"\n\"572665\";\"BOR\";\"other\"\n\"572665\";\"Motavka\";\"other\"\n\"572665\";\"boleu\";\"other\"\n\"572665\";\"БОР\";\"other\"\n\"572665\";\"Бор\";\"other\"\n\"572665\";\"보르\";\"other\"\n\"572706\";\"Bamut\";\"main\"\n\"572706\";\"Bomut\";\"other\"\n\"572706\";\"Bukovka\";\"other\"\n\"572706\";\"Nizhniy Bamut\";\"other\"\n\"572706\";\"Бамут\";\"other\"\n\"573089\";\"Bol’shoy Karay\";\"main\"\n\"573089\";\"Bol'shoy Karay\";\"ascii\"\n\"573089\";\"Большой Карай\";\"other\"\n\"573302\";\"Bol’shoye Skuratovo\";\"main\"\n\"573302\";\"Bol'shoye Skuratovo\";\"ascii\"\n\"573302\";\"Skuratovo\";\"other\"\n\"573302\";\"Большое Скуратово\";\"other\"\n\"573302\";\"Скуратово\";\"other\"\n\"573338\";\"Bol’shoye Selo\";\"main\"\n\"573338\";\"Bol'shoye Selo\";\"ascii\"\n\"573338\";\"Bolsjoje Selo\";\"other\"\n\"573338\";\"Большое Село\";\"other\"\n\"573471\";\"Bol’shoye Murashkino\";\"main\"\n\"573471\";\"Bol'shoye Murashkino\";\"ascii\"\n\"573471\";\"Bol.Murasjkino\";\"other\"\n\"573471\";\"Murashkino\";\"other\"\n\"573471\";\"Большое Мурашкино\";\"other\"\n\"573709\";\"Bol’shoye Boldino\";\"main\"\n\"573709\";\"Bol'shoye Boldino\";\"ascii\"\n\"573709\";\"Большое Болдино\";\"other\"\n\"573922\";\"Bol'shiye Vyazëmy\";\"main\"\n\"573922\";\"Bol'shiye Vyazemy\";\"ascii\"\n\"573922\";\"Bol'shie Vjazjomy\";\"other\"\n\"573922\";\"Большие Вязёмы\";\"other\"\n\"574307\";\"Bolshëvo\";\"main\"\n\"574307\";\"Bolshevo\";\"ascii\"\n\"574307\";\"Болшёво\";\"other\"\n\"575070\";\"Bol’shaya Izhora\";\"main\"\n\"575070\";\"Bol'shaya Izhora\";\"ascii\"\n\"575070\";\"Bol'shaja Izhora\";\"other\"\n\"575070\";\"Bolsjaja Izjora\";\"other\"\n\"575070\";\"Большая Ижора\";\"other\"\n\"575343\";\"Bolokhovo\";\"main\"\n\"575343\";\"BOLOKHOVO\";\"other\"\n\"575343\";\"Bolochevo\";\"other\"\n\"575343\";\"Bolokhovka\";\"other\"\n\"575343\";\"БОЛОХОВО\";\"other\"\n\"575349\";\"Bologoye\";\"main\"\n\"575349\";\"Bologoje\";\"other\"\n\"575349\";\"Бологое\";\"other\"\n\"575364\";\"Bolkhov\";\"main\"\n\"575364\";\"Болхов\";\"other\"\n\"575410\";\"Boksitogorsk\";\"main\"\n\"575410\";\"BOKSITOGORSK\";\"other\"\n\"575410\";\"БОКСИТОГОРСК\";\"other\"\n\"575410\";\"Бокситогорск\";\"other\"\n\"575413\";\"Bokovskaya\";\"main\"\n\"575413\";\"Bokovskaja\";\"other\"\n\"575413\";\"Боковская\";\"other\"\n\"575423\";\"Bokino\";\"main\"\n\"575423\";\"Бокино\";\"other\"\n\"575457\";\"Boguchar\";\"main\"\n\"575457\";\"Bogutsjar\";\"other\"\n\"575457\";\"Богучар\";\"other\"\n\"575480\";\"Bogovarovo\";\"main\"\n\"575480\";\"Боговарово\";\"other\"\n\"575494\";\"Bogoslovka\";\"main\"\n\"575494\";\"Богословка\";\"other\"\n\"575514\";\"Bogorodskoye\";\"main\"\n\"575514\";\"BOGORODSKOE\";\"other\"\n\"575514\";\"Bogorodskoje\";\"other\"\n\"575514\";\"БОГОРОДСКОЕ\";\"other\"\n\"575514\";\"Богородское\";\"other\"\n\"575519\";\"Bogorodskoye\";\"main\"\n\"575519\";\"Klintsevo\";\"other\"\n\"575519\";\"Богородское\";\"other\"\n\"575521\";\"Bogorodskoye\";\"main\"\n\"575521\";\"Богородское\";\"other\"\n\"575560\";\"Bogorodsk\";\"main\"\n\"575560\";\"BOGORODSK\";\"other\"\n\"575560\";\"Bogorodskoje\";\"other\"\n\"575560\";\"Bogorodskoye\";\"other\"\n\"575560\";\"БОГОРОДСК\";\"other\"\n\"575591\";\"Bogoroditsk\";\"main\"\n\"575591\";\"BOGORODICK\";\"other\"\n\"575591\";\"БОГОРОДИЦК\";\"other\"\n\"575591\";\"Богородицк\";\"other\"\n\"575609\";\"Bogolyubovo\";\"main\"\n\"575609\";\"BOGOLJUBOVO\";\"other\"\n\"575609\";\"Bogoljubovo\";\"other\"\n\"575609\";\"БОГОЛЮБОВО\";\"other\"\n\"575609\";\"Боголюбово\";\"other\"\n\"575728\";\"Bogatyye Saby\";\"main\"\n\"575728\";\"Bogatye Saby\";\"other\"\n\"575728\";\"Saby\";\"other\"\n\"575728\";\"Богатые Сабы\";\"other\"\n\"575751\";\"Bogatyr’\";\"main\"\n\"575751\";\"Bogatyr'\";\"ascii\"\n\"575751\";\"BOGATYR'\";\"other\"\n\"575751\";\"Bogatyr\";\"other\"\n\"575751\";\"БОГАТЫРЬ\";\"other\"\n\"575751\";\"Богатырь\";\"other\"\n\"575756\";\"Bogatoye\";\"main\"\n\"575756\";\"Bogatoje\";\"other\"\n\"575756\";\"Pavlovka\";\"other\"\n\"575756\";\"Богатое\";\"other\"\n\"575948\";\"Bobrov\";\"main\"\n\"575948\";\"BOBROV\";\"other\"\n\"575948\";\"Bobrow\";\"other\"\n\"575948\";\"Borrov\";\"other\"\n\"575948\";\"БОБРОВ\";\"other\"\n\"575948\";\"Бобров\";\"other\"\n\"576053\";\"Blizhne-Pesochnoye\";\"main\"\n\"576053\";\"Blizhnepesochnaya\";\"other\"\n\"576053\";\"Blizjne-Pesotsjnoje\";\"other\"\n\"576053\";\"Pesochnaya\";\"other\"\n\"576053\";\"Pesochnya\";\"other\"\n\"576053\";\"Ближне-Песочное\";\"other\"\n\"576080\";\"Blechepsin\";\"main\"\n\"576080\";\"Blechenskiy\";\"other\"\n\"576080\";\"Bletsjepsin\";\"other\"\n\"576080\";\"Blichensin\";\"other\"\n\"576080\";\"Блечепсин\";\"other\"\n\"576093\";\"Blagoyevo\";\"main\"\n\"576093\";\"BLAGOEVO\";\"other\"\n\"576093\";\"Blagojevo\";\"other\"\n\"576093\";\"БЛАГОЕВО\";\"other\"\n\"576093\";\"Благоево\";\"other\"\n\"576116\";\"Blagoveshchensk\";\"main\"\n\"576116\";\"BLAGOVESHHENSK\";\"other\"\n\"576116\";\"Blagoveshchenskiy\";\"other\"\n\"576116\";\"Blagoveshchenskiy Zavod\";\"other\"\n\"576116\";\"Blagovesjtsjensk\";\"other\"\n\"576116\";\"Blagoweschtschenski\";\"other\"\n\"576116\";\"БЛАГОВЕЩЕНСК\";\"other\"\n\"576116\";\"Благовещенск\";\"other\"\n\"576147\";\"Blagodatnoye\";\"main\"\n\"576147\";\"Berestovka\";\"other\"\n\"576147\";\"Blagodatnoje\";\"other\"\n\"576147\";\"Благодатное\";\"other\"\n\"576172\";\"Blagodarnyy\";\"main\"\n\"576172\";\"BLAGODARNYJ\";\"other\"\n\"576172\";\"Blagodarnoe\";\"other\"\n\"576172\";\"Blagodarnoje\";\"other\"\n\"576172\";\"Blagodarnoye\";\"other\"\n\"576172\";\"Blagodarnyj\";\"other\"\n\"576172\";\"Blagodatnoye\";\"other\"\n\"576172\";\"БЛАГОДАРНЫЙ\";\"other\"\n\"576172\";\"Благодарный\";\"other\"\n\"576195\";\"Bizhbulyak\";\"main\"\n\"576195\";\"Bizjbuljak\";\"other\"\n\"576195\";\"Бижбуляк\";\"other\"\n\"576260\";\"Bisert’\";\"main\"\n\"576260\";\"Bisert'\";\"ascii\"\n\"576260\";\"BISERT'\";\"other\"\n\"576260\";\"Bisert\";\"other\"\n\"576260\";\"Bisertskiy Zavod\";\"other\"\n\"576260\";\"БИСЕРТЬ\";\"other\"\n\"576260\";\"Бисерть\";\"other\"\n\"576317\";\"Birsk\";\"main\"\n\"576317\";\"BIRSK\";\"other\"\n\"576317\";\"БИРСК\";\"other\"\n\"576317\";\"Бирск\";\"other\"\n\"576342\";\"Bilyarsk\";\"main\"\n\"576342\";\"Biljarsk\";\"other\"\n\"576342\";\"Билярск\";\"other\"\n\"576351\";\"Bilimbay\";\"main\"\n\"576351\";\"BILIMBAJ\";\"other\"\n\"576351\";\"Bilimbaj\";\"other\"\n\"576351\";\"БИЛИМБАЙ\";\"other\"\n\"576351\";\"Билимбай\";\"other\"\n\"576519\";\"Bezopasnoye\";\"main\"\n\"576519\";\"Bezopasnoje\";\"other\"\n\"576519\";\"Безопасное\";\"other\"\n\"576558\";\"Bezhta\";\"main\"\n\"576558\";\"Bezhita\";\"other\"\n\"576558\";\"Bezjta\";\"other\"\n\"576558\";\"Бежта\";\"other\"\n\"576566\";\"Bezhetsk\";\"main\"\n\"576566\";\"BEZHECK\";\"other\"\n\"576566\";\"Beshezk\";\"other\"\n\"576566\";\"Bezheck\";\"other\"\n\"576566\";\"БЕЖЕЦК\";\"other\"\n\"576566\";\"Бежецк\";\"other\"\n\"576572\";\"Bezhanitsy\";\"main\"\n\"576572\";\"BEZHANICY\";\"other\"\n\"576572\";\"Bezhanicy\";\"other\"\n\"576572\";\"БЕЖАНИЦЫ\";\"other\"\n\"576572\";\"Бежаницы\";\"other\"\n\"576590\";\"Bezenchuk\";\"main\"\n\"576590\";\"BEZENCHUK\";\"other\"\n\"576590\";\"Borodinskij\";\"other\"\n\"576590\";\"Borodinskiy\";\"other\"\n\"576590\";\"Byrodinskiy\";\"other\"\n\"576590\";\"БЕЗЕНЧУК\";\"other\"\n\"576590\";\"Безенчук\";\"other\"\n\"576590\";\"Бородинский\";\"other\"\n\"576626\";\"Betlitsa\";\"main\"\n\"576626\";\"Бетлица\";\"other\"\n\"576663\";\"Bessonovka\";\"main\"\n\"576663\";\"Бессоновка\";\"other\"\n\"576666\";\"Bessonovka\";\"main\"\n\"576666\";\"Bessonowka\";\"other\"\n\"576666\";\"Бессоновка\";\"other\"\n\"576672\";\"Besskorbnaya\";\"main\"\n\"576672\";\"Besskorbnaja\";\"other\"\n\"576672\";\"Bezskorbnaya\";\"other\"\n\"576672\";\"Бесскорбная\";\"other\"\n\"576695\";\"Besleney\";\"main\"\n\"576695\";\"Beslenej\";\"other\"\n\"576695\";\"Besleny\";\"other\"\n\"576695\";\"Бесленей\";\"other\"\n\"576697\";\"Beslan\";\"main\"\n\"576697\";\"Belsan\";\"other\"\n\"576697\";\"Beslán\";\"other\"\n\"576697\";\"Bieslan\";\"other\"\n\"576697\";\"Biesłan\";\"other\"\n\"576697\";\"beseullan\";\"other\"\n\"576697\";\"beslani\";\"other\"\n\"576697\";\"besuran\";\"other\"\n\"576697\";\"Беслан\";\"other\"\n\"576697\";\"בסלאן\";\"other\"\n\"576697\";\"ბესლანი\";\"other\"\n\"576697\";\"ベスラン\";\"other\"\n\"576697\";\"베슬란\";\"other\"\n\"576712\";\"Beshpagir\";\"main\"\n\"576712\";\"Beshpagin\";\"other\"\n\"576712\";\"Besjpagir\";\"other\"\n\"576712\";\"Бешпагир\";\"other\"\n\"576745\";\"Bershet’\";\"main\"\n\"576745\";\"Bershet'\";\"ascii\"\n\"576745\";\"Bersjet\";\"other\"\n\"576745\";\"Бершеть\";\"other\"\n\"576754\";\"Bernovo\";\"main\"\n\"576754\";\"Берново\";\"other\"\n\"577206\";\"Berezniki\";\"main\"\n\"577206\";\"BEREZNIKI\";\"other\"\n\"577206\";\"Beresniki\";\"other\"\n\"577206\";\"Bierezniki\";\"other\"\n\"577206\";\"Usol'ye-Solikamskoye\";\"other\"\n\"577206\";\"Usol’ye-Solikamskoye\";\"other\"\n\"577206\";\"belejeuniki\";\"other\"\n\"577206\";\"БЕРЕЗНИКИ\";\"other\"\n\"577206\";\"Березники\";\"other\"\n\"577206\";\"베레즈니키\";\"other\"\n\"577240\";\"Bereznik\";\"main\"\n\"577240\";\"BEREZNIK\";\"other\"\n\"577240\";\"Semenovskaya\";\"other\"\n\"577240\";\"Semenovskoye\";\"other\"\n\"577240\";\"Semënovskoye\";\"other\"\n\"577240\";\"БЕРЕЗНИК\";\"other\"\n\"577240\";\"Березник\";\"other\"\n\"577375\";\"Berezayka\";\"main\"\n\"577375\";\"BEREZAJKA\";\"other\"\n\"577375\";\"Berezajaka\";\"other\"\n\"577375\";\"Berezajka\";\"other\"\n\"577375\";\"БЕРЕЗАЙКА\";\"other\"\n\"577375\";\"Березайка\";\"other\"\n\"577380\";\"Berezanskaya\";\"main\"\n\"577380\";\"Berezanskaja\";\"other\"\n\"577380\";\"Березанская\";\"other\"\n\"577384\";\"Berëza\";\"main\"\n\"577384\";\"Bereza\";\"ascii\"\n\"577384\";\"BEREZA\";\"other\"\n\"577384\";\"БЕРЕЗА\";\"other\"\n\"577384\";\"Берёза\";\"other\"\n\"577403\";\"Bereslavka\";\"main\"\n\"577403\";\"Bereslavskiy\";\"other\"\n\"577403\";\"Береславка\";\"other\"\n\"577408\";\"Berendeyevo\";\"main\"\n\"577408\";\"Berendeevo\";\"other\"\n\"577408\";\"Berendyeevo\";\"other\"\n\"577408\";\"Берендеево\";\"other\"\n\"577450\";\"Berdyaush\";\"main\"\n\"577450\";\"BERDJAUSH\";\"other\"\n\"577450\";\"Berdjausch\";\"other\"\n\"577450\";\"Berdjaush\";\"other\"\n\"577450\";\"БЕРДЯУШ\";\"other\"\n\"577450\";\"Бердяуш\";\"other\"\n\"577485\";\"Benoy-Yurt\";\"main\"\n\"577485\";\"Beno-Jurt\";\"other\"\n\"577485\";\"Beno-Yurt\";\"other\"\n\"577485\";\"Benoj-Jurt\";\"other\"\n\"577485\";\"Ozernoye\";\"other\"\n\"577485\";\"Ozërnoye\";\"other\"\n\"577485\";\"Бено-Юрт\";\"other\"\n\"577485\";\"Беной-Юрт\";\"other\"\n\"577548\";\"Belyy Gorodok\";\"main\"\n\"577548\";\"BELYJ-GORODOK\";\"other\"\n\"577548\";\"Belyj Gorodok\";\"other\"\n\"577548\";\"Gorodok\";\"other\"\n\"577548\";\"БЕЛЫЙ-ГОРОДОК\";\"other\"\n\"577548\";\"Белый Городок\";\"other\"\n\"577551\";\"Belyye Stolby\";\"main\"\n\"577551\";\"BELYE STOLBY\";\"other\"\n\"577551\";\"Belye Stolby\";\"other\"\n\"577551\";\"БЕЛЫЕ СТОЛБЫ\";\"other\"\n\"577551\";\"Белые Столбы\";\"other\"\n\"577560\";\"Belyye Berega\";\"main\"\n\"577560\";\"BELYE-BEREGA\";\"other\"\n\"577560\";\"Belye Berega\";\"other\"\n\"577560\";\"БЕЛЫЕ-БЕРЕГА\";\"other\"\n\"577560\";\"Белые Берега\";\"other\"\n\"577576\";\"Belyy\";\"main\"\n\"577576\";\"Beloi\";\"other\"\n\"577576\";\"Bely\";\"other\"\n\"577576\";\"Belyj\";\"other\"\n\"577576\";\"Byeloi\";\"other\"\n\"577576\";\"Белый\";\"other\"\n\"577630\";\"Belyayevka\";\"main\"\n\"577630\";\"Beljaevka\";\"other\"\n\"577630\";\"Belyayevskiy\";\"other\"\n\"577630\";\"Беляевка\";\"other\"\n\"577711\";\"Belozërsk\";\"main\"\n\"577711\";\"Belozersk\";\"ascii\"\n\"577711\";\"BELOZERSK\";\"other\"\n\"577711\";\"Belosersk\";\"other\"\n\"577711\";\"Belosjorsk\";\"other\"\n\"577711\";\"Belozjorsk\";\"other\"\n\"577711\";\"bellojeleuseukeu\";\"other\"\n\"577711\";\"БЕЛОЗЕРСК\";\"other\"\n\"577711\";\"Белозерск\";\"other\"\n\"577711\";\"Белозёрск\";\"other\"\n\"577711\";\"Белозјорск\";\"other\"\n\"577711\";\"벨로제르스크\";\"other\"\n\"577817\";\"Beloye\";\"main\"\n\"577817\";\"Beloje\";\"other\"\n\"577817\";\"Beloyy\";\"other\"\n\"577817\";\"Белое\";\"other\"\n\"577856\";\"Belousovo\";\"main\"\n\"577856\";\"BELOUSOVO\";\"other\"\n\"577856\";\"БЕЛОУСОВО\";\"other\"\n\"577856\";\"Белоусово\";\"other\"\n\"577881\";\"Beloretsk\";\"main\"\n\"577881\";\"BELORECK\";\"other\"\n\"577881\";\"Beloreck\";\"other\"\n\"577881\";\"Beloret\";\"other\"\n\"577881\";\"Beloretskiy Zavod\";\"other\"\n\"577881\";\"Belorezk\";\"other\"\n\"577881\";\"Bieloreck\";\"other\"\n\"577881\";\"Biełoreck\";\"other\"\n\"577881\";\"bellolecheukeu\";\"other\"\n\"577881\";\"БЕЛОРЕЦК\";\"other\"\n\"577881\";\"Белорецк\";\"other\"\n\"577881\";\"벨로레츠크\";\"other\"\n\"577883\";\"Ilaskhan-Yurt\";\"main\"\n\"577883\";\"Belorech'e\";\"other\"\n\"577883\";\"Belorech'ye\";\"other\"\n\"577883\";\"Eliskhan-Yurt\";\"other\"\n\"577883\";\"Ilaskhan-Jurt\";\"other\"\n\"577883\";\"Ilasxan-Yurt\";\"other\"\n\"577883\";\"Белоречье\";\"other\"\n\"577883\";\"Иласхан-Юрт\";\"other\"\n\"577892\";\"Belorechensk\";\"main\"\n\"577892\";\"BELORECHENSK\";\"other\"\n\"577892\";\"Biserskiy\";\"other\"\n\"577892\";\"Bisertskiy\";\"other\"\n\"577892\";\"БЕЛОРЕЧЕНСК\";\"other\"\n\"577892\";\"Белореченск\";\"other\"\n\"577893\";\"Belorechensk\";\"main\"\n\"577893\";\"BELORECHENSK\";\"other\"\n\"577893\";\"Belorechenskaya\";\"other\"\n\"577893\";\"Beloretschenskaja\";\"other\"\n\"577893\";\"БЕЛОРЕЧЕНСК\";\"other\"\n\"577893\";\"Белореченск\";\"other\"\n\"577901\";\"Beloozërskiy\";\"main\"\n\"577901\";\"Beloozerskiy\";\"ascii\"\n\"577901\";\"BELOOZERSKIJ\";\"other\"\n\"577901\";\"Beloozjorskij\";\"other\"\n\"577901\";\"БЕЛООЗЕРСКИЙ\";\"other\"\n\"577901\";\"Белоозёрский\";\"other\"\n\"577907\";\"Beloostrov\";\"main\"\n\"577907\";\"BELOOSTROV\";\"other\"\n\"577907\";\"Novyy Krasnoostrov\";\"other\"\n\"577907\";\"БЕЛООСТРОВ\";\"other\"\n\"577907\";\"Белоостров\";\"other\"\n\"577908\";\"Beloomut\";\"main\"\n\"577908\";\"BELOOMUT\";\"other\"\n\"577908\";\"Beloomutovo\";\"other\"\n\"577908\";\"Nizhniy Beloomut\";\"other\"\n\"577908\";\"Verkhniy Beloomut\";\"other\"\n\"577908\";\"БЕЛООМУТ\";\"other\"\n\"577908\";\"Белоомут\";\"other\"\n\"577922\";\"Belomorsk\";\"main\"\n\"577922\";\"BELOMORSK\";\"other\"\n\"577922\";\"Bielomorsk\";\"other\"\n\"577922\";\"Biełomorsk\";\"other\"\n\"577922\";\"Bjelomorsk\";\"other\"\n\"577922\";\"Byelomorsk\";\"other\"\n\"577922\";\"Solunin\";\"other\"\n\"577922\";\"Soroka\";\"other\"\n\"577922\";\"Sorokhan\";\"other\"\n\"577922\";\"Soroki\";\"other\"\n\"577922\";\"Sorokka\";\"other\"\n\"577922\";\"bellomoleuseukeu\";\"other\"\n\"577922\";\"БЕЛОМОРСК\";\"other\"\n\"577922\";\"Беломорск\";\"other\"\n\"577922\";\"벨로모르스크\";\"other\"\n\"578045\";\"Belinskiy\";\"main\"\n\"578045\";\"BELINSKIJ\";\"other\"\n\"578045\";\"Belinskij\";\"other\"\n\"578045\";\"Chembar\";\"other\"\n\"578045\";\"БЕЛИНСКИЙ\";\"other\"\n\"578045\";\"Белинский\";\"other\"\n\"578072\";\"Belgorod\";\"main\"\n\"578072\";\"Bielgorod\";\"other\"\n\"578072\";\"Biełgorod\";\"other\"\n\"578072\";\"Bilhorod-Dnistrovskyi\";\"other\"\n\"578072\";\"Bèlgorod\";\"other\"\n\"578072\";\"belgolodeu\";\"other\"\n\"578072\";\"bie er ge luo de\";\"other\"\n\"578072\";\"Белгород\";\"other\"\n\"578072\";\"别尔哥罗德\";\"other\"\n\"578072\";\"벨고로드\";\"other\"\n\"578076\";\"Belgatoy\";\"main\"\n\"578076\";\"Belgatay\";\"other\"\n\"578076\";\"Belgatoj\";\"other\"\n\"578076\";\"Belgazoi\";\"other\"\n\"578076\";\"Kurgannoye\";\"other\"\n\"578076\";\"Белгатой\";\"other\"\n\"578091\";\"Belëv\";\"main\"\n\"578091\";\"Belev\";\"ascii\"\n\"578091\";\"Beljov\";\"other\"\n\"578091\";\"Belve\";\"other\"\n\"578091\";\"Белёв\";\"other\"\n\"578120\";\"Belebey\";\"main\"\n\"578120\";\"BELEBEJ\";\"other\"\n\"578120\";\"Belebei\";\"other\"\n\"578120\";\"Belebej\";\"other\"\n\"578120\";\"БЕЛЕБЕЙ\";\"other\"\n\"578120\";\"Белебей\";\"other\"\n\"578138\";\"Belaya Rechka\";\"main\"\n\"578138\";\"Belaja Rechka\";\"other\"\n\"578138\";\"Belaja Retsjka\";\"other\"\n\"578138\";\"Белая Речка\";\"other\"\n\"578140\";\"Belaya Rechka\";\"main\"\n\"578140\";\"BELAJA RECHKA\";\"other\"\n\"578140\";\"Belaja Retsjka\";\"other\"\n\"578140\";\"БЕЛАЯ РЕЧКА\";\"other\"\n\"578152\";\"Belaya Kholunitsa\";\"main\"\n\"578152\";\"BELAJA KHOLUNICA\";\"other\"\n\"578152\";\"Belaja Kholunica\";\"other\"\n\"578152\";\"Belokholunitskiy\";\"other\"\n\"578152\";\"Belokholunitskiy Zavod\";\"other\"\n\"578152\";\"Belokolunitskiy\";\"other\"\n\"578152\";\"Byelokhohmitski Zavod\";\"other\"\n\"578152\";\"БЕЛАЯ ХОЛУНИЦА\";\"other\"\n\"578152\";\"Белая Холуница\";\"other\"\n\"578155\";\"Belaya Kalitva\";\"main\"\n\"578155\";\"BELAJA-KALITVA\";\"other\"\n\"578155\";\"Belaja Kalitva\";\"other\"\n\"578155\";\"Belaja Kalitwa\";\"other\"\n\"578155\";\"Belokalitvenskaya\";\"other\"\n\"578155\";\"Byelaya Kalitva\";\"other\"\n\"578155\";\"Ust'-Belokalitvenskaya\";\"other\"\n\"578155\";\"Ust’-Belokalitvenskaya\";\"other\"\n\"578155\";\"БЕЛАЯ-КАЛИТВА\";\"other\"\n\"578155\";\"Белая Калитва\";\"other\"\n\"578169\";\"Belaya Glina\";\"main\"\n\"578169\";\"Belaja Glina\";\"other\"\n\"578169\";\"Glina\";\"other\"\n\"578169\";\"Белая Глина\";\"other\"\n\"578230\";\"Belaya\";\"main\"\n\"578230\";\"Belaja\";\"other\"\n\"578230\";\"Beloye\";\"other\"\n\"578230\";\"Белая\";\"other\"\n\"578263\";\"Bekovo\";\"main\"\n\"578263\";\"BEKOVO\";\"other\"\n\"578263\";\"БЕКОВО\";\"other\"\n\"578263\";\"Беково\";\"other\"\n\"578283\";\"Bekhteyevka\";\"main\"\n\"578283\";\"Bekhtejevka\";\"other\"\n\"578283\";\"Бехтеевка\";\"other\"\n\"578313\";\"Bekeshevskaya\";\"main\"\n\"578313\";\"Bekesjevskaja\";\"other\"\n\"578313\";\"Бекешевская\";\"other\"\n\"578326\";\"Begunitsy\";\"main\"\n\"578326\";\"Бегуницы\";\"other\"\n\"578339\";\"Begichevskiy\";\"main\"\n\"578339\";\"Begichevskij\";\"other\"\n\"578339\";\"Begitsjevskij\";\"other\"\n\"578339\";\"Бегичевский\";\"other\"\n\"578465\";\"Bazarnyy Syzgan\";\"main\"\n\"578465\";\"BAZARNYJ SYZGAN\";\"other\"\n\"578465\";\"Bazarny Syzgan\";\"other\"\n\"578465\";\"Bazarnyj Syzgan\";\"other\"\n\"578465\";\"БАЗАРНЫЙ СЫЗГАН\";\"other\"\n\"578465\";\"Базарный Сызган\";\"other\"\n\"578466\";\"Bazarnyy Karabulak\";\"main\"\n\"578466\";\"BAZARNYJ KARABULAK\";\"other\"\n\"578466\";\"Bazarny Karabulak\";\"other\"\n\"578466\";\"Bazarnyj Karabulak\";\"other\"\n\"578466\";\"БАЗАРНЫЙ КАРАБУЛАК\";\"other\"\n\"578466\";\"Базарный Карабулак\";\"other\"\n\"578467\";\"Bazarnyye Mataki\";\"main\"\n\"578467\";\"Bazarnye Mataki\";\"other\"\n\"578467\";\"Bazarnye-Mataki\";\"other\"\n\"578467\";\"Bazarnyye Matani\";\"other\"\n\"578467\";\"Базарные Матаки\";\"other\"\n\"578467\";\"Базарные-Матаки\";\"other\"\n\"578534\";\"Baymak\";\"main\"\n\"578534\";\"BAJMAK\";\"other\"\n\"578534\";\"Bajmak\";\"other\"\n\"578534\";\"Baymak-Tanalykovo\";\"other\"\n\"578534\";\"БАЙМАК\";\"other\"\n\"578534\";\"Баймак\";\"other\"\n\"578637\";\"Bavtugay\";\"main\"\n\"578637\";\"Bartugay\";\"other\"\n\"578637\";\"Bavtugaj\";\"other\"\n\"578637\";\"Бавтугай\";\"other\"\n\"578638\";\"Bavly\";\"main\"\n\"578638\";\"BAVLY\";\"other\"\n\"578638\";\"БАВЛЫ\";\"other\"\n\"578638\";\"Бавлы\";\"other\"\n\"578641\";\"Bavleny\";\"main\"\n\"578641\";\"BAVLENY\";\"other\"\n\"578641\";\"Bavieni\";\"other\"\n\"578641\";\"БАВЛЕНЫ\";\"other\"\n\"578641\";\"Бавлены\";\"other\"\n\"578659\";\"Batyrëvo\";\"main\"\n\"578659\";\"Batyrevo\";\"ascii\"\n\"578659\";\"Batyrjovo\";\"other\"\n\"578659\";\"Bol'shoye Batyrevo\";\"other\"\n\"578659\";\"Bol’shoye Batyrevo\";\"other\"\n\"578659\";\"Батырево\";\"other\"\n\"578659\";\"Батырёво\";\"other\"\n\"578675\";\"Baturinskaya\";\"main\"\n\"578675\";\"Baturinskaja\";\"other\"\n\"578675\";\"Батуринская\";\"other\"\n\"578732\";\"Batetskiy\";\"main\"\n\"578732\";\"Bateckij\";\"other\"\n\"578732\";\"Batetskij\";\"other\"\n\"578732\";\"Батетский\";\"other\"\n\"578732\";\"Батецкий\";\"other\"\n\"578738\";\"Botayurt\";\"main\"\n\"578738\";\"Batajurt\";\"other\"\n\"578738\";\"Batayurt\";\"other\"\n\"578738\";\"Ботаюрт\";\"other\"\n\"578740\";\"Bataysk\";\"main\"\n\"578740\";\"Batajsk\";\"other\"\n\"578740\";\"Gorodovikovsk\";\"other\"\n\"578740\";\"Батайск\";\"other\"\n\"578742\";\"Botashyurt\";\"main\"\n\"578742\";\"Batashyurt\";\"other\"\n\"578742\";\"Botash-Jurt\";\"other\"\n\"578742\";\"Botashjurt\";\"other\"\n\"578742\";\"Боташ-Юрт\";\"other\"\n\"578742\";\"Боташюрт\";\"other\"\n\"578842\";\"Bashmakovo\";\"main\"\n\"578842\";\"BASHMAKOVO\";\"other\"\n\"578842\";\"БАШМАКОВО\";\"other\"\n\"578842\";\"Башмаково\";\"other\"\n\"578931\";\"Barysh\";\"main\"\n\"578931\";\"BARYSH\";\"other\"\n\"578931\";\"БАРЫШ\";\"other\"\n\"578931\";\"Барыш\";\"other\"\n\"578940\";\"Barybino\";\"main\"\n\"578940\";\"BARYBINO\";\"other\"\n\"578940\";\"Boribino\";\"other\"\n\"578940\";\"БАРЫБИНО\";\"other\"\n\"578940\";\"Барыбино\";\"other\"\n\"578947\";\"Baryatino\";\"main\"\n\"578947\";\"Bariatino\";\"other\"\n\"578947\";\"Barjatino\";\"other\"\n\"578947\";\"Baryatinskaya\";\"other\"\n\"578947\";\"Baryatinskoye\";\"other\"\n\"578947\";\"Барятино\";\"other\"\n\"578953\";\"Barvikha\";\"main\"\n\"578953\";\"Барвиха\";\"other\"\n\"578974\";\"Barsukovskaya\";\"main\"\n\"578974\";\"Barsukovskaja\";\"other\"\n\"578974\";\"Барсуковская\";\"other\"\n\"579000\";\"Barsuki\";\"main\"\n\"579000\";\"BARSUKI\";\"other\"\n\"579000\";\"БАРСУКИ\";\"other\"\n\"579000\";\"Барсуки\";\"other\"\n\"579132\";\"Barda\";\"main\"\n\"579132\";\"Барда\";\"other\"\n\"579147\";\"Barashevo\";\"main\"\n\"579147\";\"Barasjevo\";\"other\"\n\"579147\";\"Барашево\";\"other\"\n\"579266\";\"Baranchinskiy\";\"main\"\n\"579266\";\"BARANCHINSKIJ\";\"other\"\n\"579266\";\"Baranchinskij\";\"other\"\n\"579266\";\"БАРАНЧИНСКИЙ\";\"other\"\n\"579266\";\"Баранчинский\";\"other\"\n\"579327\";\"Bammatyurt\";\"main\"\n\"579327\";\"Bamat-Yurt\";\"other\"\n\"579327\";\"Bammat-Jurt\";\"other\"\n\"579327\";\"Bammatjurt\";\"other\"\n\"579327\";\"Баммат-Юрт\";\"other\"\n\"579327\";\"Бамматюрт\";\"other\"\n\"579381\";\"Baltay\";\"main\"\n\"579381\";\"Baltaj\";\"other\"\n\"579381\";\"Boltayevskaya\";\"other\"\n\"579381\";\"Балтай\";\"other\"\n\"579384\";\"Baltasi\";\"main\"\n\"579384\";\"Балтаси\";\"other\"\n\"579432\";\"Balezino\";\"main\"\n\"579432\";\"BALEZINO\";\"other\"\n\"579432\";\"БАЛЕЗИНО\";\"other\"\n\"579432\";\"Балезино\";\"other\"\n\"579460\";\"Balashov\";\"main\"\n\"579460\";\"BALASHOV\";\"other\"\n\"579460\";\"Balachov\";\"other\"\n\"579460\";\"Balaschow\";\"other\"\n\"579460\";\"Balashovo\";\"other\"\n\"579460\";\"Balasov\";\"other\"\n\"579460\";\"Balaŝov\";\"other\"\n\"579460\";\"Balašov\";\"other\"\n\"579460\";\"БАЛАШОВ\";\"other\"\n\"579460\";\"Балашов\";\"other\"\n\"579464\";\"Balashikha\";\"main\"\n\"579464\";\"Balaschicha\";\"other\"\n\"579464\";\"Balasiha\";\"other\"\n\"579464\";\"Balasihha\";\"other\"\n\"579464\";\"Balaŝiĥa\";\"other\"\n\"579464\";\"Balašiha\";\"other\"\n\"579464\";\"Balašihha\";\"other\"\n\"579464\";\"Balishikha\";\"other\"\n\"579464\";\"ballasiha\";\"other\"\n\"579464\";\"Балашиха\";\"other\"\n\"579464\";\"발라시하\";\"other\"\n\"579468\";\"Balasheyka\";\"main\"\n\"579468\";\"Balasjejka\";\"other\"\n\"579468\";\"Балашейка\";\"other\"\n\"579492\";\"Balakovo\";\"main\"\n\"579492\";\"BALAKOVO\";\"other\"\n\"579492\";\"Balakowo\";\"other\"\n\"579492\";\"Bałakowo\";\"other\"\n\"579492\";\"ballakobo\";\"other\"\n\"579492\";\"БАЛАКОВО\";\"other\"\n\"579492\";\"Балаково\";\"other\"\n\"579492\";\"발라코보\";\"other\"\n\"579496\";\"Balakirevo\";\"main\"\n\"579496\";\"BALAKIREVO\";\"other\"\n\"579496\";\"Parakirevo\";\"other\"\n\"579496\";\"Yasnaya Polyana\";\"other\"\n\"579496\";\"БАЛАКИРЕВО\";\"other\"\n\"579496\";\"Балакирево\";\"other\"\n\"579503\";\"Balakhonovskoye\";\"main\"\n\"579503\";\"Balakhonovskoje\";\"other\"\n\"579503\";\"Bogoslavskaya\";\"other\"\n\"579503\";\"Bogoslovskoye\";\"other\"\n\"579503\";\"Балахоновское\";\"other\"\n\"579514\";\"Balakhna\";\"main\"\n\"579514\";\"BALAKHNA\";\"other\"\n\"579514\";\"Balachna\";\"other\"\n\"579514\";\"Balahna\";\"other\"\n\"579514\";\"Balaĥna\";\"other\"\n\"579514\";\"ballaheuna\";\"other\"\n\"579514\";\"БАЛАХНА\";\"other\"\n\"579514\";\"Балахна\";\"other\"\n\"579514\";\"발라흐나\";\"other\"\n\"579529\";\"Balabanovo\";\"main\"\n\"579529\";\"BALABANOVO\";\"other\"\n\"579529\";\"Balabanova\";\"other\"\n\"579529\";\"Balobanovo\";\"other\"\n\"579529\";\"БАЛАБАНОВО\";\"other\"\n\"579529\";\"Балабаново\";\"other\"\n\"579560\";\"Baksheyevo\";\"main\"\n\"579560\";\"BAKSHEEVO\";\"other\"\n\"579560\";\"Badsheyevo\";\"other\"\n\"579560\";\"Baksheevo\";\"other\"\n\"579560\";\"БАКШЕЕВО\";\"other\"\n\"579560\";\"Бакшеево\";\"other\"\n\"579571\";\"Baksanenok\";\"main\"\n\"579571\";\"Kasayevo\";\"other\"\n\"579571\";\"Баксаненок\";\"other\"\n\"579574\";\"Baksan\";\"main\"\n\"579574\";\"BAKSAN\";\"other\"\n\"579574\";\"Baksanskie\";\"other\"\n\"579574\";\"Bakssan\";\"other\"\n\"579574\";\"БАКСАН\";\"other\"\n\"579728\";\"Bakaly\";\"main\"\n\"579728\";\"Бакалы\";\"other\"\n\"579738\";\"Bakal\";\"main\"\n\"579738\";\"BAKAL\";\"other\"\n\"579738\";\"БАКАЛ\";\"other\"\n\"579738\";\"Бакал\";\"other\"\n\"579760\";\"Bagrationovsk\";\"main\"\n\"579760\";\"BAGRATIONOVSK\";\"other\"\n\"579760\";\"Bagratinovsk\";\"other\"\n\"579760\";\"Bagrationovskas\";\"other\"\n\"579760\";\"Bagrationowsk\";\"other\"\n\"579760\";\"Eylau\";\"other\"\n\"579760\";\"Preussisch Eylau\";\"other\"\n\"579760\";\"Preussisch-Eylau\";\"other\"\n\"579760\";\"Preußisch Eylau\";\"other\"\n\"579760\";\"Preysish Aylau\";\"other\"\n\"579760\";\"Preyss Aylau\";\"other\"\n\"579760\";\"Preyss-Eylau\";\"other\"\n\"579760\";\"Stadt Preussisch Eylau\";\"other\"\n\"579760\";\"Stadt Preußisch Eylau\";\"other\"\n\"579760\";\"bageulationobseukeu\";\"other\"\n\"579760\";\"bagrationovsk\";\"other\"\n\"579760\";\"БАГРАТИОНОВСК\";\"other\"\n\"579760\";\"Багратионовск\";\"other\"\n\"579760\";\"바그라티오놉스크\";\"other\"\n\"579771\";\"Bagayevskaya\";\"main\"\n\"579771\";\"Bagajevskaja\";\"other\"\n\"579771\";\"Bagajewskaja\";\"other\"\n\"579771\";\"Bagayevskiy\";\"other\"\n\"579771\";\"Багаевская\";\"other\"\n\"579831\";\"Bachi-Yurt\";\"main\"\n\"579831\";\"B`acin-Yurt\";\"other\"\n\"579831\";\"B`açin-Yurt\";\"other\"\n\"579831\";\"Bachi-Jurt\";\"other\"\n\"579831\";\"Batsji-Jurt\";\"other\"\n\"579831\";\"Krasnoarmeyskoye\";\"other\"\n\"579831\";\"Pervomaysk\";\"other\"\n\"579831\";\"Pervomayskoye\";\"other\"\n\"579831\";\"Бачи-Юрт\";\"other\"\n\"579838\";\"Babynino\";\"main\"\n\"579838\";\"Babinino\";\"other\"\n\"579838\";\"Poselok Babynino\";\"other\"\n\"579838\";\"Posëlok Babynino\";\"other\"\n\"579838\";\"Бабынино\";\"other\"\n\"579951\";\"Babino\";\"main\"\n\"579951\";\"BABINO\";\"other\"\n\"579951\";\"БАБИНО\";\"other\"\n\"579999\";\"Babayurt\";\"main\"\n\"579999\";\"Babajurt\";\"other\"\n\"579999\";\"Бабаюрт\";\"other\"\n\"580006\";\"Babayevo\";\"main\"\n\"580006\";\"Babaevo\";\"other\"\n\"580006\";\"Babajewo\";\"other\"\n\"580006\";\"Бабаево\";\"other\"\n\"580048\";\"Azovskaya\";\"main\"\n\"580048\";\"Azovskaja\";\"other\"\n\"580048\";\"Азовская\";\"other\"\n\"580054\";\"Azov\";\"main\"\n\"580054\";\"Asoff\";\"other\"\n\"580054\";\"Asovia\";\"other\"\n\"580054\";\"Asow\";\"other\"\n\"580054\";\"Azak\";\"other\"\n\"580054\";\"Azov - Azov\";\"other\"\n\"580054\";\"Azov - Азов\";\"other\"\n\"580054\";\"Azow\";\"other\"\n\"580054\";\"ajopeu\";\"other\"\n\"580054\";\"azofu\";\"other\"\n\"580054\";\"Азов\";\"other\"\n\"580054\";\"アゾフ\";\"other\"\n\"580054\";\"아조프\";\"other\"\n\"580139\";\"Ayutinskiy\";\"main\"\n\"580139\";\"AJUTINSKIJ\";\"other\"\n\"580139\";\"Ajutinskij\";\"other\"\n\"580139\";\"Aytinskiy\";\"other\"\n\"580139\";\"Vlasovo-Ayuta\";\"other\"\n\"580139\";\"АЮТИНСКИЙ\";\"other\"\n\"580139\";\"Аютинский\";\"other\"\n\"580167\";\"Aysha\";\"main\"\n\"580167\";\"Ajsha\";\"other\"\n\"580167\";\"Ajsja\";\"other\"\n\"580167\";\"Айша\";\"other\"\n\"580182\";\"Aykino\";\"main\"\n\"580182\";\"Ajkino\";\"other\"\n\"580182\";\"Айкино\";\"other\"\n\"580218\";\"Avtury\";\"main\"\n\"580218\";\"Avtara\";\"other\"\n\"580218\";\"Avturi\";\"other\"\n\"580218\";\"Novosadovoye\";\"other\"\n\"580218\";\"Əvtara\";\"other\"\n\"580218\";\"Автуры\";\"other\"\n\"580227\";\"Avsyunino\";\"main\"\n\"580227\";\"Avsiunino\";\"other\"\n\"580227\";\"Авсюнино\";\"other\"\n\"580299\";\"Avdon\";\"main\"\n\"580299\";\"Авдон\";\"other\"\n\"580352\";\"Aushiger\";\"main\"\n\"580352\";\"Ausjiger\";\"other\"\n\"580352\";\"Аушигер\";\"other\"\n\"580375\";\"Atyashevo\";\"main\"\n\"580375\";\"Atjashevo\";\"other\"\n\"580375\";\"Batushevo\";\"other\"\n\"580375\";\"Атяшево\";\"other\"\n\"580375\";\"Батушево\";\"other\"\n\"580420\";\"Atkarsk\";\"main\"\n\"580420\";\"ATKARSK\";\"other\"\n\"580420\";\"Atarsk\";\"other\"\n\"580420\";\"АТКАРСК\";\"other\"\n\"580420\";\"Аткарск\";\"other\"\n\"580426\";\"Atig\";\"main\"\n\"580426\";\"ATIG\";\"other\"\n\"580426\";\"АТИГ\";\"other\"\n\"580426\";\"Атиг\";\"other\"\n\"580431\";\"Ateptsevo\";\"main\"\n\"580431\";\"Ageptsevo\";\"other\"\n\"580431\";\"Ateptsovo\";\"other\"\n\"580431\";\"Атепцево\";\"other\"\n\"580432\";\"Atemar\";\"main\"\n\"580432\";\"Атемар\";\"other\"\n\"580453\";\"Atamanskaya\";\"main\"\n\"580453\";\"Atamanskaja\";\"other\"\n\"580453\";\"Атаманская\";\"other\"\n\"580497\";\"Astrakhan’\";\"main\"\n\"580497\";\"Astrakhan'\";\"ascii\"\n\"580497\";\"Astrakhan\";\"other\"\n\"580497\";\"Астрахань\";\"other\"\n\"580545\";\"Assinovskaya\";\"main\"\n\"580545\";\"Assinovskaja\";\"other\"\n\"580545\";\"Assinowskaja\";\"other\"\n\"580545\";\"Assinskaya\";\"other\"\n\"580545\";\"Ассиновская\";\"other\"\n\"580577\";\"Askino\";\"main\"\n\"580577\";\"Askin\";\"other\"\n\"580577\";\"Аскино\";\"other\"\n\"580597\";\"Ashukino\";\"main\"\n\"580597\";\"ASHUKINO\";\"other\"\n\"580597\";\"Ashchukino\";\"other\"\n\"580597\";\"Ashukinskiy\";\"other\"\n\"580597\";\"АШУКИНО\";\"other\"\n\"580597\";\"Ашукино\";\"other\"\n\"580616\";\"Ashitkovo\";\"main\"\n\"580616\";\"Asjitkovo\";\"other\"\n\"580616\";\"Ашитково\";\"other\"\n\"580621\";\"Ashil’ta\";\"main\"\n\"580621\";\"Ashil'ta\";\"ascii\"\n\"580621\";\"Asjilta\";\"other\"\n\"580621\";\"Ашильта\";\"other\"\n\"580660\";\"Asha\";\"main\"\n\"580660\";\"ASHA\";\"other\"\n\"580660\";\"АША\";\"other\"\n\"580660\";\"Аша\";\"other\"\n\"580676\";\"Asekeyevo\";\"main\"\n\"580676\";\"Asekejevo\";\"other\"\n\"580676\";\"Асекеево\";\"other\"\n\"580688\";\"Asanovo\";\"main\"\n\"580688\";\"Асаново\";\"other\"\n\"580716\";\"Arzgir\";\"main\"\n\"580716\";\"Arsgir\";\"other\"\n\"580716\";\"Арзгир\";\"other\"\n\"580724\";\"Arzamas\";\"main\"\n\"580724\";\"ARZAMAS\";\"other\"\n\"580724\";\"Arsamas\";\"other\"\n\"580724\";\"Arzamass\";\"other\"\n\"580724\";\"aleujamaseu\";\"other\"\n\"580724\";\"aruzamasu\";\"other\"\n\"580724\";\"АРЗАМАС\";\"other\"\n\"580724\";\"Арзамас\";\"other\"\n\"580724\";\"アルザマス\";\"other\"\n\"580724\";\"아르자마스\";\"other\"\n\"580783\";\"Arti\";\"main\"\n\"580783\";\"ARTI\";\"other\"\n\"580783\";\"АРТИ\";\"other\"\n\"580783\";\"Арти\";\"other\"\n\"580850\";\"Arsk\";\"main\"\n\"580850\";\"ARSK\";\"other\"\n\"580850\";\"АРСК\";\"other\"\n\"580850\";\"Арск\";\"other\"\n\"580862\";\"Arshan’\";\"main\"\n\"580862\";\"Arshan'\";\"ascii\"\n\"580862\";\"Arsjan\";\"other\"\n\"580862\";\"Prigorodnaya Arshan'\";\"other\"\n\"580862\";\"Prigorodnaya Arshan’\";\"other\"\n\"580862\";\"Sadovyy\";\"other\"\n\"580862\";\"Аршань\";\"other\"\n\"580872\";\"Arsen’yevo\";\"main\"\n\"580872\";\"Arsen'yevo\";\"ascii\"\n\"580872\";\"ARSEN'EVO\";\"other\"\n\"580872\";\"Aren'yevo\";\"other\"\n\"580872\";\"Aren’yevo\";\"other\"\n\"580872\";\"Arsen'evo\";\"other\"\n\"580872\";\"АРСЕНЬЕВО\";\"other\"\n\"580872\";\"Арсеньево\";\"other\"\n\"580881\";\"Arsaki\";\"main\"\n\"580881\";\"Арсаки\";\"other\"\n\"580922\";\"Armavir\";\"main\"\n\"580922\";\"ARMAVIR\";\"other\"\n\"580922\";\"Aramir\";\"other\"\n\"580922\";\"Armawir\";\"other\"\n\"580922\";\"aleumabileu\";\"other\"\n\"580922\";\"armawyr\";\"other\"\n\"580922\";\"АРМАВИР\";\"other\"\n\"580922\";\"Армавир\";\"other\"\n\"580922\";\"آرماویر\";\"other\"\n\"580922\";\"아르마비르\";\"other\"\n\"580931\";\"Arkul’\";\"main\"\n\"580931\";\"Arkul'\";\"ascii\"\n\"580931\";\"ARKUL'\";\"other\"\n\"580931\";\"АРКУЛЬ\";\"other\"\n\"580931\";\"Аркуль\";\"other\"\n\"580942\";\"Arkhonskaya\";\"main\"\n\"580942\";\"Arkhohskaya\";\"other\"\n\"580942\";\"Arkhonskaja\";\"other\"\n\"580942\";\"Архонская\";\"other\"\n\"580960\";\"Arkhipovka\";\"main\"\n\"580960\";\"ARKHIPOVKA\";\"other\"\n\"580960\";\"АРХИПОВКА\";\"other\"\n\"580960\";\"Архиповка\";\"other\"\n\"580969\";\"Arkhipo-Osipovka\";\"main\"\n\"580969\";\"ARKHIPO-OSIPOVKA\";\"other\"\n\"580969\";\"Arkhipo-Osipovskaya\";\"other\"\n\"580969\";\"Arkhipo-Osipovskoye\";\"other\"\n\"580969\";\"АРХИПО-ОСИПОВКА\";\"other\"\n\"580969\";\"Архипо-Осиповка\";\"other\"\n\"580993\";\"Arkhangel’skoye\";\"main\"\n\"580993\";\"Arkhangel'skoye\";\"ascii\"\n\"580993\";\"Arkhan'\";\"other\"\n\"580993\";\"Arkhangel'skoe\";\"other\"\n\"580993\";\"Arkhangelskoje\";\"other\"\n\"580993\";\"Arkhan’\";\"other\"\n\"580993\";\"Архангельское\";\"other\"\n\"580994\";\"Arkhangel’skoye\";\"main\"\n\"580994\";\"Arkhangel'skoye\";\"ascii\"\n\"580994\";\"Arkhangel'skoe\";\"other\"\n\"580994\";\"Arkhangelskoje\";\"other\"\n\"580994\";\"Poselok Arkhangel'skoye\";\"other\"\n\"580994\";\"Posëlok Arkhangel’skoye\";\"other\"\n\"580994\";\"Архангельское\";\"other\"\n\"581049\";\"Arkhangel’sk\";\"main\"\n\"581049\";\"Arkhangel'sk\";\"ascii\"\n\"581049\";\"Archangel\";\"other\"\n\"581049\";\"Archangelsk\";\"other\"\n\"581049\";\"Arkhangelsk\";\"other\"\n\"581049\";\"Novo-Kholmogory\";\"other\"\n\"581049\";\"Novyye Kholmogory\";\"other\"\n\"581049\";\"Архангельск\";\"other\"\n\"581080\";\"Arkadak\";\"main\"\n\"581080\";\"ARKADAK\";\"other\"\n\"581080\";\"АРКАДАК\";\"other\"\n\"581080\";\"Аркадак\";\"other\"\n\"581126\";\"Argun\";\"main\"\n\"581126\";\"Kolkhoznoye\";\"other\"\n\"581126\";\"Ustar-Gordoy\";\"other\"\n\"581126\";\"Аргун\";\"other\"\n\"581128\";\"Argudan\";\"main\"\n\"581128\";\"Cherex\";\"other\"\n\"581128\";\"Аргудан\";\"other\"\n\"581178\";\"Ardon’\";\"main\"\n\"581178\";\"Ardon'\";\"ascii\"\n\"581178\";\"Ardon\";\"other\"\n\"581178\";\"Ардонь\";\"other\"\n\"581179\";\"Ardon\";\"main\"\n\"581179\";\"AErydon\";\"other\"\n\"581179\";\"ARDON\";\"other\"\n\"581179\";\"aleudon\";\"other\"\n\"581179\";\"Æрыдон\";\"other\"\n\"581179\";\"АРДОН\";\"other\"\n\"581179\";\"Ардон\";\"other\"\n\"581179\";\"아르돈\";\"other\"\n\"581186\";\"Ardatov\";\"main\"\n\"581186\";\"ARDATOV\";\"other\"\n\"581186\";\"Ardatovo\";\"other\"\n\"581186\";\"АРДАТОВ\";\"other\"\n\"581186\";\"Ардатов\";\"other\"\n\"581187\";\"Ardatov\";\"main\"\n\"581187\";\"ARDATOV\";\"other\"\n\"581187\";\"АРДАТОВ\";\"other\"\n\"581187\";\"Ардатов\";\"other\"\n\"581228\";\"Arbazh\";\"main\"\n\"581228\";\"ARBAZH\";\"other\"\n\"581228\";\"АРБАЖ\";\"other\"\n\"581228\";\"Арбаж\";\"other\"\n\"581313\";\"Apsheronsk\";\"main\"\n\"581313\";\"APSHERONSK\";\"other\"\n\"581313\";\"Apscheranskaja\";\"other\"\n\"581313\";\"Apscheronskij\";\"other\"\n\"581313\";\"Apsheron\";\"other\"\n\"581313\";\"Apsheronskaya\";\"other\"\n\"581313\";\"Apsheronskiy\";\"other\"\n\"581313\";\"АПШЕРОНСК\";\"other\"\n\"581313\";\"Апшеронск\";\"other\"\n\"581321\";\"Aprelevka\";\"main\"\n\"581321\";\"APRELEVKA\";\"other\"\n\"581321\";\"АПРЕЛЕВКА\";\"other\"\n\"581321\";\"Апрелевка\";\"other\"\n\"581357\";\"Apatity\";\"main\"\n\"581357\";\"APATITY\";\"other\"\n\"581357\";\"Apatiitti\";\"other\"\n\"581357\";\"Apatiti\";\"other\"\n\"581357\";\"Apatito\";\"other\"\n\"581357\";\"Apatitõ\";\"other\"\n\"581357\";\"Apatyty\";\"other\"\n\"581357\";\"apatiti\";\"other\"\n\"581357\";\"АПАТИТЫ\";\"other\"\n\"581357\";\"Апатиты\";\"other\"\n\"581357\";\"아파티티\";\"other\"\n\"581359\";\"Apastovo\";\"main\"\n\"581359\";\"Апастово\";\"other\"\n\"581456\";\"Antropovo\";\"main\"\n\"581456\";\"Antropova\";\"other\"\n\"581456\";\"Антропово\";\"other\"\n\"581540\";\"Antipovka\";\"main\"\n\"581540\";\"Антиповка\";\"other\"\n\"581568\";\"Ansalta\";\"main\"\n\"581568\";\"Ансалта\";\"other\"\n\"581585\";\"Anopino\";\"main\"\n\"581585\";\"ANOPINO\";\"other\"\n\"581585\";\"Anopenskiy\";\"other\"\n\"581585\";\"Poselok Anopenskiy\";\"other\"\n\"581585\";\"Posëlok Anopenskiy\";\"other\"\n\"581585\";\"АНОПИНО\";\"other\"\n\"581585\";\"Анопино\";\"other\"\n\"581623\";\"Annino\";\"main\"\n\"581623\";\"Аннино\";\"other\"\n\"581671\";\"Anna\";\"main\"\n\"581671\";\"Анна\";\"other\"\n\"581788\";\"Andzhiyevskiy\";\"main\"\n\"581788\";\"ANDZHIEVSKIJ\";\"other\"\n\"581788\";\"Andzhievskij\";\"other\"\n\"581788\";\"АНДЖИЕВСКИЙ\";\"other\"\n\"581788\";\"Анджиевский\";\"other\"\n\"581989\";\"Andreyevo\";\"main\"\n\"581989\";\"ANDREEVO\";\"other\"\n\"581989\";\"Andreevo\";\"other\"\n\"581989\";\"Andreyevskiy\";\"other\"\n\"581989\";\"Poselok Andreyevskiy\";\"other\"\n\"581989\";\"Posëlok Andreyevskiy\";\"other\"\n\"581989\";\"АНДРЕЕВО\";\"other\"\n\"581989\";\"Андреево\";\"other\"\n\"582001\";\"Andreyevka\";\"main\"\n\"582001\";\"Andreevka\";\"other\"\n\"582001\";\"Andrejevka\";\"other\"\n\"582001\";\"Андреевка\";\"other\"\n\"582097\";\"Endirey\";\"main\"\n\"582097\";\"Andreyaul\";\"other\"\n\"582097\";\"Endirej\";\"other\"\n\"582097\";\"Эндирей\";\"other\"\n\"582105\";\"Andreapol’\";\"main\"\n\"582105\";\"Andreapol'\";\"ascii\"\n\"582105\";\"ANDREAPOL'\";\"other\"\n\"582105\";\"Dubno\";\"other\"\n\"582105\";\"АНДРЕАПОЛЬ\";\"other\"\n\"582105\";\"Андреаполь\";\"other\"\n\"582123\";\"Andi\";\"main\"\n\"582123\";\"Анди\";\"other\"\n\"582163\";\"Anastasiyevskaya\";\"main\"\n\"582163\";\"Anastasevskaya\";\"other\"\n\"582163\";\"Anastasijevskaja\";\"other\"\n\"582163\";\"Anastasiyevka\";\"other\"\n\"582163\";\"Anastassijewskaja\";\"other\"\n\"582163\";\"Анастасиевская\";\"other\"\n\"582164\";\"Anastasiyevka\";\"main\"\n\"582164\";\"Anastas'yevka\";\"other\"\n\"582164\";\"Anastasievka\";\"other\"\n\"582164\";\"Anastasijevka\";\"other\"\n\"582164\";\"Anastassjewska\";\"other\"\n\"582164\";\"Anastas’yevka\";\"other\"\n\"582164\";\"Анастасиевка\";\"other\"\n\"582181\";\"Anapskaya\";\"main\"\n\"582181\";\"Anapskaja\";\"other\"\n\"582181\";\"Анапская\";\"other\"\n\"582182\";\"Anapa\";\"main\"\n\"582182\";\"anapa\";\"other\"\n\"582182\";\"Анапа\";\"other\"\n\"582182\";\"아나파\";\"other\"\n\"582222\";\"Amzya\";\"main\"\n\"582222\";\"AMZJA\";\"other\"\n\"582222\";\"Amzja\";\"other\"\n\"582222\";\"АМЗЯ\";\"other\"\n\"582222\";\"Амзя\";\"other\"\n\"582358\";\"Altukhovo\";\"main\"\n\"582358\";\"ALTUKHOVO\";\"other\"\n\"582358\";\"Altukhova\";\"other\"\n\"582358\";\"АЛТУХОВО\";\"other\"\n\"582358\";\"Алтухово\";\"other\"\n\"582362\";\"Altud\";\"main\"\n\"582362\";\"Tambievo\";\"other\"\n\"582362\";\"Алтуд\";\"other\"\n\"582423\";\"Alnashi\";\"main\"\n\"582423\";\"Alnasji\";\"other\"\n\"582423\";\"Алнаши\";\"other\"\n\"582432\";\"Al’met’yevsk\";\"main\"\n\"582432\";\"Al'met'yevsk\";\"ascii\"\n\"582432\";\"AL'MET'EVSK\";\"other\"\n\"582432\";\"Al'met'evsk\";\"other\"\n\"582432\";\"Al'met'yevo\";\"other\"\n\"582432\";\"Al’met’yevo\";\"other\"\n\"582432\";\"АЛЬМЕТЬЕВСК\";\"other\"\n\"582432\";\"Альметьевск\";\"other\"\n\"582447\";\"Almaznyy\";\"main\"\n\"582447\";\"Almaznyj\";\"other\"\n\"582447\";\"Алмазный\";\"other\"\n\"582462\";\"Alleroy\";\"main\"\n\"582462\";\"Alleroj\";\"other\"\n\"582462\";\"Shuragat\";\"other\"\n\"582462\";\"Аллерой\";\"other\"\n\"582490\";\"Alkhazurovo\";\"main\"\n\"582490\";\"Privol'noye\";\"other\"\n\"582490\";\"Privol’noye\";\"other\"\n\"582490\";\"Алхазурово\";\"other\"\n\"582491\";\"Alkhan-Yurt\";\"main\"\n\"582491\";\"Alchantschurt\";\"other\"\n\"582491\";\"Alkhan-Jurt\";\"other\"\n\"582491\";\"Ayvazovo\";\"other\"\n\"582491\";\"Ayvazovskoye\";\"other\"\n\"582491\";\"Алхан-Юрт\";\"other\"\n\"582493\";\"Alkhan-Kala\";\"main\"\n\"582493\";\"Mezhdugor'ye\";\"other\"\n\"582493\";\"Mezhdugor’ye\";\"other\"\n\"582493\";\"Алхан-Кала\";\"other\"\n\"582504\";\"Ali-Yurt\";\"main\"\n\"582504\";\"Ali-Jurt\";\"other\"\n\"582504\";\"Naron\";\"other\"\n\"582504\";\"Али-Юрт\";\"other\"\n\"582533\";\"Alikovo\";\"main\"\n\"582533\";\"Аликово\";\"other\"\n\"582544\";\"Ali-Berdukovskiy\";\"main\"\n\"582544\";\"Ali-Berdukovskij\";\"other\"\n\"582544\";\"Aliberdukovskaya\";\"other\"\n\"582544\";\"Али-Бердуковский\";\"other\"\n\"582750\";\"Aleksin\";\"main\"\n\"582750\";\"ALEKSIN\";\"other\"\n\"582750\";\"АЛЕКСИН\";\"other\"\n\"582750\";\"Алексин\";\"other\"\n\"582775\";\"Alekseyevskoye\";\"main\"\n\"582775\";\"ALEKSEEVSKOE\";\"other\"\n\"582775\";\"Alekseevskoe\";\"other\"\n\"582775\";\"АЛЕКСЕЕВСКОЕ\";\"other\"\n\"582775\";\"Алексеевское\";\"other\"\n\"582816\";\"Alekseyevskaya\";\"main\"\n\"582816\";\"ALEKSEEVSKAJA\";\"other\"\n\"582816\";\"Alekseevskaja\";\"other\"\n\"582816\";\"Alekseevskaya\";\"other\"\n\"582816\";\"АЛЕКСЕЕВСКАЯ\";\"other\"\n\"582816\";\"Алексеевская\";\"other\"\n\"582817\";\"Alekseyevskaya\";\"main\"\n\"582817\";\"Aleksejevskaja\";\"other\"\n\"582817\";\"Алексеевская\";\"other\"\n\"582854\";\"Alekseyevka\";\"main\"\n\"582854\";\"Alekseevka\";\"other\"\n\"582854\";\"Aleksejevka\";\"other\"\n\"582854\";\"Алексеевка\";\"other\"\n\"582926\";\"Alekseyevka\";\"main\"\n\"582926\";\"ALEKSEEVKA\";\"other\"\n\"582926\";\"Alekseevka\";\"other\"\n\"582926\";\"АЛЕКСЕЕВКА\";\"other\"\n\"582926\";\"Алексеевка\";\"other\"\n\"582956\";\"Alekseyevka\";\"main\"\n\"582956\";\"ALEKSEEVKA\";\"other\"\n\"582956\";\"Alekseevka\";\"other\"\n\"582956\";\"АЛЕКСЕЕВКА\";\"other\"\n\"582956\";\"Алексеевка\";\"other\"\n\"582993\";\"Aleksandrovskoye\";\"main\"\n\"582993\";\"Aleksandrovskoje\";\"other\"\n\"582993\";\"Alexandrowskoje\";\"other\"\n\"582993\";\"Alyeksandrovskoe\";\"other\"\n\"582993\";\"Александровское\";\"other\"\n\"583036\";\"Aleksandrovskaya\";\"main\"\n\"583036\";\"Aleksandrovskaja\";\"other\"\n\"583036\";\"Александровская\";\"other\"\n\"583039\";\"Aleksandrovskaya\";\"main\"\n\"583039\";\"Aleksandrovskaja\";\"other\"\n\"583039\";\"Александровская\";\"other\"\n\"583041\";\"Aleksandrovsk\";\"main\"\n\"583041\";\"ALEKSANDROVSK\";\"other\"\n\"583041\";\"Aleksandrovskiy\";\"other\"\n\"583041\";\"АЛЕКСАНДРОВСК\";\"other\"\n\"583041\";\"Александровск\";\"other\"\n\"583345\";\"Aleksandrov Gay\";\"main\"\n\"583345\";\"ALEKSANDROV GAJ\";\"other\"\n\"583345\";\"Aleksandrov Gaj\";\"other\"\n\"583345\";\"АЛЕКСАНДРОВ ГАЙ\";\"other\"\n\"583345\";\"Александров Гай\";\"other\"\n\"583350\";\"Aleksandrov\";\"main\"\n\"583350\";\"Aleksandrovo\";\"other\"\n\"583350\";\"Alexandrov\";\"other\"\n\"583350\";\"Александров\";\"other\"\n\"583358\";\"Aleksandro-Nevskiy\";\"main\"\n\"583358\";\"ALEKSANDRO-NEVSKIJ\";\"other\"\n\"583358\";\"Aleksandro-Nevskaya\";\"other\"\n\"583358\";\"Aleksandro-Nevskij\";\"other\"\n\"583358\";\"Aleksandro-Nevskoye\";\"other\"\n\"583358\";\"АЛЕКСАНДРО-НЕВСКИЙ\";\"other\"\n\"583358\";\"Александро-Невский\";\"other\"\n\"583368\";\"Aleksandriyskaya\";\"main\"\n\"583368\";\"Aleksandrijskaja\";\"other\"\n\"583368\";\"Александрийская\";\"other\"\n\"583373\";\"Aleksandriya\";\"main\"\n\"583373\";\"Aleksandria\";\"other\"\n\"583373\";\"Александрия\";\"other\"\n\"583437\";\"Alatyr’\";\"main\"\n\"583437\";\"Alatyr'\";\"ascii\"\n\"583437\";\"Алатырь\";\"other\"\n\"583472\";\"Alakurtti\";\"main\"\n\"583472\";\"Alakurti-Tuntsa\";\"other\"\n\"583472\";\"Allakurtti\";\"other\"\n\"583472\";\"Алакуртти\";\"other\"\n\"583491\";\"Alabushevo\";\"main\"\n\"583491\";\"Alabusjevo\";\"other\"\n\"583491\";\"Алабушево\";\"other\"\n\"583509\";\"Ak”yar\";\"main\"\n\"583509\";\"Akjar\";\"other\"\n\"583509\";\"Akujar\";\"other\"\n\"583509\";\"Khaibulina\";\"other\"\n\"583509\";\"Khaybulino\";\"other\"\n\"583509\";\"Khaybullino\";\"other\"\n\"583509\";\"Акъяр\";\"other\"\n\"583512\";\"Akusha\";\"main\"\n\"583512\";\"Akusja\";\"other\"\n\"583512\";\"Акуша\";\"other\"\n\"583548\";\"Aktyubinskiy\";\"main\"\n\"583548\";\"AKTJUBINSKIJ\";\"other\"\n\"583548\";\"Ak-Tubya\";\"other\"\n\"583548\";\"Aktjubinskij\";\"other\"\n\"583548\";\"АКТЮБИНСКИЙ\";\"other\"\n\"583548\";\"Актюбинский\";\"other\"\n\"583573\";\"Russkiy Aktash\";\"main\"\n\"583573\";\"Aktash\";\"other\"\n\"583573\";\"Акташ\";\"other\"\n\"583573\";\"Русский Акташ\";\"other\"\n\"583578\";\"Aktanysh\";\"main\"\n\"583578\";\"Aktanysj\";\"other\"\n\"583578\";\"Актаныш\";\"other\"\n\"583673\";\"Aksay\";\"main\"\n\"583673\";\"AKSAJ\";\"other\"\n\"583673\";\"Aksaj\";\"other\"\n\"583673\";\"Aksayskaya\";\"other\"\n\"583673\";\"АКСАЙ\";\"other\"\n\"583673\";\"Аксай\";\"other\"\n\"583674\";\"Aksay\";\"main\"\n\"583674\";\"Aksaj\";\"other\"\n\"583674\";\"Novo Aksai\";\"other\"\n\"583674\";\"Аксай\";\"other\"\n\"583683\";\"Aksarayskiy\";\"main\"\n\"583683\";\"Aksarajskij\";\"other\"\n\"583683\";\"Аксарайский\";\"other\"\n\"583692\";\"Aksakovo\";\"main\"\n\"583692\";\"AKSAKOVO\";\"other\"\n\"583692\";\"АКСАКОВО\";\"other\"\n\"583692\";\"Аксаково\";\"other\"\n\"583707\";\"Aknada\";\"main\"\n\"583707\";\"Aknoda\";\"other\"\n\"583707\";\"Ankoda\";\"other\"\n\"583707\";\"Акнада\";\"other\"\n\"583731\";\"Staraya Akkermanovka\";\"main\"\n\"583731\";\"AKKERMANOVKA\";\"other\"\n\"583731\";\"Akkerman\";\"other\"\n\"583731\";\"Akkermanovka\";\"other\"\n\"583731\";\"Akkermanovskiy\";\"other\"\n\"583731\";\"Staroakkermanovka\";\"other\"\n\"583731\";\"АККЕРМАНОВКА\";\"other\"\n\"583731\";\"Старая Аккермановка\";\"other\"\n\"583781\";\"Akhunovo\";\"main\"\n\"583781\";\"Akhunova\";\"other\"\n\"583781\";\"Ахуново\";\"other\"\n\"583785\";\"Akhtyrskiy\";\"main\"\n\"583785\";\"Akhtyrskij\";\"other\"\n\"583785\";\"Ахтырский\";\"other\"\n\"583794\";\"Akhty\";\"main\"\n\"583794\";\"Achty\";\"other\"\n\"583794\";\"Akhtay\";\"other\"\n\"583794\";\"Akhti\";\"other\"\n\"583794\";\"Ахты\";\"other\"\n\"583798\";\"Akhtubinsk\";\"main\"\n\"583798\";\"AKHTUBINSK\";\"other\"\n\"583798\";\"Achtubinsk\";\"other\"\n\"583798\";\"Achtubińsk\";\"other\"\n\"583798\";\"Ahtubinsk\";\"other\"\n\"583798\";\"Aĥtubinsk\";\"other\"\n\"583798\";\"АХТУБИНСК\";\"other\"\n\"583798\";\"Ахтубинск\";\"other\"\n\"583811\";\"Akhtanizovskaya\";\"main\"\n\"583811\";\"Achtanisowskaja\";\"other\"\n\"583811\";\"Akhtanizovskaja\";\"other\"\n\"583811\";\"Ахтанизовская\";\"other\"\n\"583973\";\"Agvali\";\"main\"\n\"583973\";\"Ageali\";\"other\"\n\"583973\";\"Agvaly\";\"other\"\n\"583973\";\"Агвали\";\"other\"\n\"583983\";\"Agryz\";\"main\"\n\"583983\";\"AEgerce\";\"other\"\n\"583983\";\"AGRYZ\";\"other\"\n\"583983\";\"Agriz\";\"other\"\n\"583983\";\"Agrys\";\"other\"\n\"583983\";\"ageuliseu\";\"other\"\n\"583983\";\"Ägerce\";\"other\"\n\"583983\";\"АГРЫЗ\";\"other\"\n\"583983\";\"Агрыз\";\"other\"\n\"583983\";\"아그리스\";\"other\"\n\"583988\";\"Agronom\";\"main\"\n\"583988\";\"Агроном\";\"other\"\n\"584003\";\"Agoy\";\"main\"\n\"584003\";\"Agoj\";\"other\"\n\"584003\";\"Aguy\";\"other\"\n\"584003\";\"Агой\";\"other\"\n\"584021\";\"Ageyevo\";\"main\"\n\"584021\";\"AGEEVO\";\"other\"\n\"584021\";\"Ageevo\";\"other\"\n\"584021\";\"АГЕЕВО\";\"other\"\n\"584021\";\"Агеево\";\"other\"\n\"584051\";\"Agapovka\";\"main\"\n\"584051\";\"AGAPOVKA\";\"other\"\n\"584051\";\"Agapovo\";\"other\"\n\"584051\";\"Agapovskiy\";\"other\"\n\"584051\";\"АГАПОВКА\";\"other\"\n\"584051\";\"Агаповка\";\"other\"\n\"584059\";\"Agalatovo\";\"main\"\n\"584059\";\"Agalatova\";\"other\"\n\"584059\";\"Ohalatva\";\"other\"\n\"584059\";\"Агалатово\";\"other\"\n\"584087\";\"Afrikanda\";\"main\"\n\"584087\";\"AFRIKANDA\";\"other\"\n\"584087\";\"Africanda\";\"other\"\n\"584087\";\"Poselok Afrikanda\";\"other\"\n\"584087\";\"Posëlok Afrikanda\";\"other\"\n\"584087\";\"АФРИКАНДА\";\"other\"\n\"584087\";\"Африканда\";\"other\"\n\"584104\";\"Afonino\";\"main\"\n\"584104\";\"Афонино\";\"other\"\n\"584126\";\"Afipskiy\";\"main\"\n\"584126\";\"AFIPSKIJ\";\"other\"\n\"584126\";\"Afipskij\";\"other\"\n\"584126\";\"Georgiafipskaya\";\"other\"\n\"584126\";\"Georgiye-Afipskaya\";\"other\"\n\"584126\";\"АФИПСКИЙ\";\"other\"\n\"584126\";\"Афипский\";\"other\"\n\"584221\";\"Adyge-Khabl’\";\"main\"\n\"584221\";\"Adyge-Khabl'\";\"ascii\"\n\"584221\";\"Adyge-Khabl\";\"other\"\n\"584221\";\"Адыге-Хабль\";\"other\"\n\"584243\";\"Adler\";\"main\"\n\"584243\";\"ADLER\";\"other\"\n\"584243\";\"АДЛЕР\";\"other\"\n\"584243\";\"Адлер\";\"other\"\n\"584248\";\"Adil’-Yangiyurt\";\"main\"\n\"584248\";\"Adil'-Yangiyurt\";\"ascii\"\n\"584248\";\"Adil'-Jangi-Jurt\";\"other\"\n\"584248\";\"Adil'-Jangijurt\";\"other\"\n\"584248\";\"Адиль-Янги-Юрт\";\"other\"\n\"584248\";\"Адиль-Янгиюрт\";\"other\"\n\"584279\";\"Adamovka\";\"main\"\n\"584279\";\"ADAMOVKA\";\"other\"\n\"584279\";\"АДАМОВКА\";\"other\"\n\"584279\";\"Адамовка\";\"other\"\n\"584298\";\"Achkhoy-Martan\";\"main\"\n\"584298\";\"Achkhoi-Martan\";\"other\"\n\"584298\";\"Achkhoj-Martan\";\"other\"\n\"584298\";\"Atsjkhoj-Martan\";\"other\"\n\"584298\";\"Novosel'skoye\";\"other\"\n\"584298\";\"Novosel’skoye\";\"other\"\n\"584298\";\"Ачхой-Мартан\";\"other\"\n\"584308\";\"Achit\";\"main\"\n\"584308\";\"ACHIT\";\"other\"\n\"584308\";\"Achitskoye\";\"other\"\n\"584308\";\"АЧИТ\";\"other\"\n\"584308\";\"Ачит\";\"other\"\n\"584309\";\"Achisu\";\"main\"\n\"584309\";\"Achi\";\"other\"\n\"584309\";\"Ачи\";\"other\"\n\"584309\";\"Ачису\";\"other\"\n\"584310\";\"Achikulak\";\"main\"\n\"584310\";\"Achikulakskoye\";\"other\"\n\"584310\";\"Atsjikulak\";\"other\"\n\"584310\";\"Ачикулак\";\"other\"\n\"584329\";\"Abzakovo\";\"main\"\n\"584329\";\"Abzakova\";\"other\"\n\"584329\";\"Абзаково\";\"other\"\n\"584365\";\"Abrau-Dyurso\";\"main\"\n\"584365\";\"Abrau-Djurso\";\"other\"\n\"584365\";\"Абрау-Дюрсо\";\"other\"\n\"584401\";\"Abramovka\";\"main\"\n\"584401\";\"Abramowka\";\"other\"\n\"584401\";\"Абрамовка\";\"other\"\n\"584441\";\"Abinsk\";\"main\"\n\"584441\";\"ABINSK\";\"other\"\n\"584441\";\"Abinskaya\";\"other\"\n\"584441\";\"Abinskiy\";\"other\"\n\"584441\";\"АБИНСК\";\"other\"\n\"584441\";\"Абинск\";\"other\"\n\"584471\";\"Abdulino\";\"main\"\n\"584471\";\"ABDULINO\";\"other\"\n\"584471\";\"abdullino\";\"other\"\n\"584471\";\"abeudullino\";\"other\"\n\"584471\";\"АБДУЛИНО\";\"other\"\n\"584471\";\"Абдулино\";\"other\"\n\"584471\";\"아브둘리노\";\"other\"\n\"584471\";\"압둘리노\";\"other\"\n\"584534\";\"Abadzekhskaya\";\"main\"\n\"584534\";\"Abadzekhskaja\";\"other\"\n\"584534\";\"Абадзехская\";\"other\"\n\"611182\";\"Vasil’yevo\";\"main\"\n\"611182\";\"Vasil'yevo\";\"ascii\"\n\"611182\";\"Vasil'evo\";\"other\"\n\"611182\";\"Vasilevo\";\"other\"\n\"611182\";\"Vasileyevo\";\"other\"\n\"611182\";\"Vasiljevo\";\"other\"\n\"611182\";\"Васильево\";\"other\"\n\"695019\";\"Ryl’sk\";\"main\"\n\"695019\";\"Ryl'sk\";\"ascii\"\n\"695019\";\"Rylsk\";\"other\"\n\"695019\";\"Рыльск\";\"other\"\n\"795067\";\"Gedzhukh\";\"main\"\n\"795067\";\"Gedzjukh\";\"other\"\n\"795067\";\"Геджух\";\"other\"\n\"795140\";\"Krasnoyarskaya\";\"main\"\n\"795140\";\"Krasnojarskaja\";\"other\"\n\"795140\";\"Красноярская\";\"other\"\n\"795235\";\"Vidyayevo\";\"main\"\n\"795235\";\"Vidjaevo\";\"other\"\n\"795235\";\"Vidyayeva\";\"other\"\n\"795235\";\"Видяево\";\"other\"\n\"795243\";\"Snezhnogorsk\";\"main\"\n\"795243\";\"Murmansk-60\";\"other\"\n\"795243\";\"Olenaya Guba Base\";\"other\"\n\"795243\";\"Snezjnogorsk\";\"other\"\n\"795243\";\"Снежногорск\";\"other\"\n\"796701\";\"Kokrek\";\"main\"\n\"796701\";\"Кокрек\";\"other\"\n\"797011\";\"Kontenko\";\"main\"\n\"797011\";\"Контенко\";\"other\"\n\"797083\";\"Vyshestebliyevskaya\";\"main\"\n\"797083\";\"Vyshesteblievskaja\";\"other\"\n\"797083\";\"Vysjesteblijevskaja\";\"other\"\n\"797083\";\"Вышестеблиевская\";\"other\"\n\"797213\";\"Pervomayskoye\";\"main\"\n\"797213\";\"Pervomayskiy\";\"other\"\n\"797213\";\"Первомайское\";\"other\"\n\"797411\";\"Stepnoye\";\"main\"\n\"797725\";\"Kara-Tyube\";\"main\"\n\"797725\";\"Kara-Tjube\";\"other\"\n\"797725\";\"Кара-Тюбе\";\"other\"\n\"798335\";\"Imeni Pervogo Maya\";\"main\"\n\"798335\";\"Pervoe Maja\";\"other\"\n\"798335\";\"Pervoje Maja\";\"other\"\n\"798335\";\"Pervoye Maya\";\"other\"\n\"798335\";\"Первое Мая\";\"other\"\n\"798536\";\"Rabocheostrovsk\";\"main\"\n\"798536\";\"Рабочеостровск\";\"other\"\n\"799386\";\"Lutkun\";\"main\"\n\"799386\";\"Луткун\";\"other\"\n\"801983\";\"Druzhba\";\"main\"\n\"801983\";\"Дружба\";\"other\"\n\"802000\";\"Gerga\";\"main\"\n\"802000\";\"Герга\";\"other\"\n\"802037\";\"Imeni Chkalova\";\"main\"\n\"802037\";\"Chkalova\";\"other\"\n\"802037\";\"Chkalovskij\";\"other\"\n\"802037\";\"Чкаловский\";\"other\"\n\"802078\";\"Alagir\";\"main\"\n\"802078\";\"alagir\";\"other\"\n\"802078\";\"allagileu\";\"other\"\n\"802078\";\"Алагир\";\"other\"\n\"802078\";\"Алагір\";\"other\"\n\"802078\";\"알라기르\";\"other\"\n\"802473\";\"Yuzhnyy\";\"main\"\n\"802629\";\"Kovalevskoye\";\"main\"\n\"802629\";\"Kovalevskoje\";\"other\"\n\"802629\";\"Ковалевское\";\"other\"\n\"802714\";\"Persianovka\";\"main\"\n\"802714\";\"Persianovskij\";\"other\"\n\"802714\";\"Persianovskiy\";\"other\"\n\"802714\";\"Персиановка\";\"other\"\n\"802714\";\"Персиановский\";\"other\"\n\"802754\";\"Karamakhi\";\"main\"\n\"802754\";\"Kara-Makhi\";\"other\"\n\"802754\";\"Кара-Махи\";\"other\"\n\"802754\";\"Карамахи\";\"other\"\n\"802799\";\"Alkhan-Churt\";\"main\"\n\"802799\";\"Alkhan-Tsjurt\";\"other\"\n\"802799\";\"Алхан-Чурт\";\"other\"\n\"802921\";\"Novyy Khushet\";\"main\"\n\"802921\";\"Novyj Khusjet\";\"other\"\n\"802921\";\"Новый Хушет\";\"other\"\n\"803021\";\"Khambi-Irze\";\"main\"\n\"803021\";\"Lermontov-Yurt\";\"other\"\n\"803021\";\"Хамби-Ирзе\";\"other\"\n\"803494\";\"Orel-Izumrud\";\"main\"\n\"803494\";\"Орел-Изумруд\";\"other\"\n\"803498\";\"Vysokoye\";\"main\"\n\"803498\";\"Nizhne-Vysokoye\";\"other\"\n\"803498\";\"Vysokoe\";\"other\"\n\"803498\";\"Высокое\";\"other\"\n\"804875\";\"Zavetnyy\";\"main\"\n\"804875\";\"Zavetnyj\";\"other\"\n\"804875\";\"Заветный\";\"other\"\n\"805755\";\"Yasnaya Polyana\";\"main\"\n\"805755\";\"Ясная Поляна\";\"other\"\n\"805775\";\"Borisovka\";\"main\"\n\"805775\";\"Борисовка\";\"other\"\n\"815857\";\"Kurovskoye\";\"main\"\n\"815857\";\"Kurovskoe\";\"other\"\n\"815857\";\"Kurovskoje\";\"other\"\n\"815857\";\"Куровское\";\"other\"\n\"818487\";\"Vorotynsk\";\"main\"\n\"819827\";\"Razvilka\";\"main\"\n\"819827\";\"Развилка\";\"other\"\n\"821801\";\"Dubovka\";\"main\"\n\"821801\";\"Дубовка\";\"other\"\n\"823674\";\"Dagomys\";\"main\"\n\"823674\";\"Дагомыс\";\"other\"\n\"823676\";\"Gornoye Loo\";\"main\"\n\"823676\";\"Gornoje Loo\";\"other\"\n\"823676\";\"Горное Лоо\";\"other\"\n\"824070\";\"Bugry\";\"main\"\n\"824070\";\"Бугры\";\"other\"\n\"824094\";\"Ferma\";\"main\"\n\"824366\";\"Krasnoarmeyskoye\";\"main\"\n\"824366\";\"Красноармейское\";\"other\"\n\"825035\";\"Korkmaskala\";\"main\"\n\"825035\";\"Коркмаскала\";\"other\"\n\"825214\";\"Otradnoye\";\"main\"\n\"825214\";\"Отрадное\";\"other\"\n\"825760\";\"Yuzhnyy\";\"main\"\n\"825760\";\"Jesau\";\"other\"\n\"825760\";\"Juzhnyj\";\"other\"\n\"825760\";\"Juzjnyj\";\"other\"\n\"825760\";\"Южный\";\"other\"\n\"826558\";\"Surok\";\"main\"\n\"826558\";\"Сурок\";\"other\"\n\"826995\";\"Partsa\";\"main\"\n\"826995\";\"Парца\";\"other\"\n\"826996\";\"Udarnyy\";\"main\"\n\"826997\";\"Lepley\";\"main\"\n\"826997\";\"Leplej\";\"other\"\n\"826997\";\"Леплей\";\"other\"\n\"827329\";\"Pavlovo\";\"main\"\n\"827329\";\"PAVLOVO\";\"other\"\n\"827329\";\"ПАВЛОВО\";\"other\"\n\"827329\";\"Павлово\";\"other\"\n\"827792\";\"Novoye Atlashevo\";\"main\"\n\"827792\";\"Atlashevo\";\"other\"\n\"827792\";\"Novoje Atlasjevo\";\"other\"\n\"827792\";\"Новое Атлашево\";\"other\"\n\"827990\";\"Privolzhskiy\";\"main\"\n\"827990\";\"PRIVOLZHSKIJ\";\"other\"\n\"827990\";\"Privolzjskij\";\"other\"\n\"827990\";\"ПРИВОЛЖСКИЙ\";\"other\"\n\"827990\";\"Приволжский\";\"other\"\n\"828055\";\"Belidzhi\";\"main\"\n\"828055\";\"BELIDZHI\";\"other\"\n\"828055\";\"БЕЛИДЖИ\";\"other\"\n\"828055\";\"Белиджи\";\"other\"\n\"828062\";\"Khazar\";\"main\"\n\"828062\";\"Vos'moy Uchastok Sovkhoza Imeni Karla Marksa\";\"other\"\n\"828062\";\"Хазар\";\"other\"\n\"828218\";\"Zaozërsk\";\"main\"\n\"828218\";\"Zaozersk\";\"ascii\"\n\"828218\";\"Murmansk-150\";\"other\"\n\"828218\";\"Заозерск\";\"other\"\n\"828218\";\"Заозёрск\";\"other\"\n\"828440\";\"Pervoye Maya\";\"main\"\n\"828440\";\"Pervomayskiy\";\"other\"\n\"828440\";\"Первое Мая\";\"other\"\n\"829005\";\"Lesnoy\";\"main\"\n\"829005\";\"Nizhnyaya Tura\";\"other\"\n\"829005\";\"Sverdlovsk-45\";\"other\"\n\"829005\";\"Лесной\";\"other\"\n\"829032\";\"Kondratovo\";\"main\"\n\"829032\";\"Кондратово\";\"other\"\n\"829291\";\"Ileza\";\"main\"\n\"829291\";\"ILEZA\";\"other\"\n\"829291\";\"ИЛЕЗА\";\"other\"\n\"829291\";\"Илеза\";\"other\"\n\"830844\";\"Trëkhgornyy\";\"main\"\n\"830844\";\"Trekhgornyy\";\"ascii\"\n\"830844\";\"Trjokhgornyj\";\"other\"\n\"830844\";\"Yuryuzan'\";\"other\"\n\"830844\";\"Yuryuzan’\";\"other\"\n\"830844\";\"Zlatoust'-26\";\"other\"\n\"830844\";\"Zlatoust’-26\";\"other\"\n\"830844\";\"Трёхгорный\";\"other\"\n\"831129\";\"Mirnyy\";\"main\"\n\"831129\";\"Leningrad-300\";\"other\"\n\"831129\";\"Mirnyj\";\"other\"\n\"831129\";\"Мирный\";\"other\"\n\"831130\";\"Znamensk\";\"main\"\n\"831130\";\"KAPUSTIN JAR\";\"other\"\n\"831130\";\"Kapustin Jar\";\"other\"\n\"831130\";\"Kapustin Yar-1\";\"other\"\n\"831130\";\"Знаменск\";\"other\"\n\"831130\";\"КАПУСТИН ЯР\";\"other\"\n\"831137\";\"Svetlyy\";\"main\"\n\"831137\";\"TATISHHEVO\";\"other\"\n\"831137\";\"Tatishchevo-5\";\"other\"\n\"831137\";\"Tatisjtsjevo\";\"other\"\n\"831137\";\"ТАТИЩЕВО\";\"other\"\n\"831140\";\"Zvëzdnyy\";\"main\"\n\"831140\";\"Zvezdnyy\";\"ascii\"\n\"831140\";\"Bershetskiye Dachi\";\"other\"\n\"831140\";\"Perm'-76\";\"other\"\n\"831140\";\"Zvezdnyj\";\"other\"\n\"831140\";\"Звездный\";\"other\"\n\"831165\";\"Zarechnyy\";\"main\"\n\"831165\";\"Penza-19\";\"other\"\n\"831165\";\"Zarechnyj\";\"other\"\n\"831165\";\"Заречный\";\"other\"\n\"840909\";\"Dvubratskiy\";\"main\"\n\"840909\";\"Dvubratskij\";\"other\"\n\"840909\";\"Двубратский\";\"other\"\n\"840987\";\"Yuzhnyy\";\"main\"\n\"841006\";\"Kochubeyevskoye\";\"main\"\n\"841006\";\"Кочубеевское\";\"other\"\n\"841270\";\"Udarnyy\";\"main\"\n\"841270\";\"UDARNYJ\";\"other\"\n\"841270\";\"Udarnyj\";\"other\"\n\"841270\";\"УДАРНЫЙ\";\"other\"\n\"841270\";\"Ударный\";\"other\"\n\"841363\";\"Novoterskiy\";\"main\"\n\"841363\";\"Novoterskij\";\"other\"\n\"841363\";\"Новотерский\";\"other\"\n\"856673\";\"Svetlopolyansk\";\"main\"\n\"856673\";\"SVETLOPOLJANSK\";\"other\"\n\"856673\";\"Svetlopoljansk\";\"other\"\n\"856673\";\"СВЕТЛОПОЛЯНСК\";\"other\"\n\"856829\";\"Putëvka\";\"main\"\n\"856829\";\"Putevka\";\"ascii\"\n\"856829\";\"Путевка\";\"other\"\n\"856829\";\"Путёвка\";\"other\"\n\"856845\";\"Kazachka\";\"main\"\n\"856845\";\"Kazatsjka\";\"other\"\n\"856845\";\"Казачка\";\"other\"\n\"857689\";\"Vnukovo\";\"main\"\n\"857689\";\"Внуково\";\"other\"\n\"857690\";\"Moskovskiy\";\"main\"\n\"857690\";\"Moskovskij\";\"other\"\n\"857690\";\"Московский\";\"other\"\n\"857691\";\"Zhitnevo\";\"main\"\n\"857691\";\"Zjitnevo\";\"other\"\n\"857691\";\"Житнево\";\"other\"\n\"858658\";\"Zubutli-Miatli\";\"main\"\n\"858658\";\"Zabutli-Miatli\";\"other\"\n\"858658\";\"Зубутли-Миатли\";\"other\"\n\"858667\";\"Solnechnoye\";\"main\"\n\"858667\";\"Batashevskiy\";\"other\"\n\"858667\";\"Solnetsjnoje\";\"other\"\n\"858667\";\"Солнечное\";\"other\"\n\"858701\";\"Shamil’kala\";\"main\"\n\"858701\";\"Shamil'kala\";\"ascii\"\n\"858701\";\"Шамилькала\";\"other\"\n\"858712\";\"Novyy Sulak\";\"main\"\n\"858712\";\"Novyj Sulak\";\"other\"\n\"858712\";\"SULAK\";\"other\"\n\"858712\";\"Sulak\";\"other\"\n\"858712\";\"Новый Сулак\";\"other\"\n\"858712\";\"СУЛАК\";\"other\"\n\"858716\";\"Novyy Kostek\";\"main\"\n\"858716\";\"Novyj Kostek\";\"other\"\n\"858716\";\"Новый Костек\";\"other\"\n\"860420\";\"Botlikh\";\"main\"\n\"860420\";\"Ботлих\";\"other\"\n\"863061\";\"Usinsk\";\"main\"\n\"863061\";\"Усинск\";\"other\"\n\"864018\";\"Krasnyy Kommunar\";\"main\"\n\"864018\";\"Krasnyj Kommunar\";\"other\"\n\"864018\";\"Красный Коммунар\";\"other\"\n\"864116\";\"Volovo\";\"main\"\n\"864116\";\"VOLOVO\";\"other\"\n\"864116\";\"ВОЛОВО\";\"other\"\n\"864116\";\"Волово\";\"other\"\n\"864612\";\"Mednogorskiy\";\"main\"\n\"864612\";\"Mednogorskij\";\"other\"\n\"864612\";\"Медногорский\";\"other\"\n\"865321\";\"Khankala\";\"main\"\n\"865321\";\"Ханкала\";\"other\"\n\"865506\";\"Pravokubanskiy\";\"main\"\n\"865506\";\"Pravokubanskij\";\"other\"\n\"865506\";\"Правокубанский\";\"other\"\n\"866053\";\"Novyye Lapsary\";\"main\"\n\"866053\";\"Novye Lapsary\";\"other\"\n\"866053\";\"Новые Лапсары\";\"other\"\n\"866054\";\"Raduzhnyy\";\"main\"\n\"866054\";\"Raduzjnyj\";\"other\"\n\"866054\";\"Радужный\";\"other\"\n\"866055\";\"Priladozhskiy\";\"main\"\n\"866055\";\"Priladozjskij\";\"other\"\n\"866055\";\"Приладожский\";\"other\"\n\"866057\";\"Molochnyy\";\"main\"\n\"866057\";\"MOLOCHNYJ\";\"other\"\n\"866057\";\"Molotsjnyj\";\"other\"\n\"866057\";\"МОЛОЧНЫЙ\";\"other\"\n\"866057\";\"Молочный\";\"other\"\n\"866062\";\"Iskateley\";\"main\"\n\"866062\";\"Iskatelej\";\"other\"\n\"866062\";\"Искателей\";\"other\"\n\"866210\";\"Tsibanobalka\";\"main\"\n\"866210\";\"Cibanobalka\";\"other\"\n\"866210\";\"Цибанобалка\";\"other\"\n\"866241\";\"Myskhako\";\"main\"\n\"866241\";\"Мысхако\";\"other\"\n\"866267\";\"Lermontovo\";\"main\"\n\"866267\";\"Лермонтово\";\"other\"\n\"866986\";\"Chinar\";\"main\"\n\"866986\";\"Tsjinar\";\"other\"\n\"866986\";\"Чинар\";\"other\"\n\"867005\";\"Petra-Dubrava\";\"main\"\n\"867005\";\"Петра-Дубрава\";\"other\"\n\"867006\";\"Povolzhskiy\";\"main\"\n\"867006\";\"Povolzjskij\";\"other\"\n\"867006\";\"Поволжский\";\"other\"\n\"867425\";\"Verkhnebakanskiy\";\"main\"\n\"868355\";\"Kochubey\";\"main\"\n\"868355\";\"KOCHUBEJ\";\"other\"\n\"868355\";\"Kotsjubej\";\"other\"\n\"868355\";\"КОЧУБЕЙ\";\"other\"\n\"868355\";\"Кочубей\";\"other\"\n\"869259\";\"Nezhinskiy\";\"main\"\n\"869259\";\"Nezjinskij\";\"other\"\n\"869259\";\"Нежинский\";\"other\"\n\"869342\";\"Tyube\";\"main\"\n\"869342\";\"TJUBE\";\"other\"\n\"869342\";\"Tjube\";\"other\"\n\"869342\";\"ТЮБЕ\";\"other\"\n\"869345\";\"Novyy Chirkey\";\"main\"\n\"869345\";\"Novyj Tsjirkej\";\"other\"\n\"869345\";\"Новый Чиркей\";\"other\"\n\"869346\";\"Uchkent\";\"main\"\n\"869346\";\"Utsjkent\";\"other\"\n\"869346\";\"Учкент\";\"other\"\n\"871870\";\"Mursalimkino\";\"main\"\n\"871870\";\"Мурсалимкино\";\"other\"\n\"872128\";\"Belozërnyy\";\"main\"\n\"872128\";\"Belozernyy\";\"ascii\"\n\"872128\";\"Belozernyj\";\"other\"\n\"872128\";\"Belozjornyj\";\"other\"\n\"872128\";\"Белозерный\";\"other\"\n\"872128\";\"Белозёрный\";\"other\"\n\"872144\";\"Sovkhoznyy\";\"main\"\n\"872144\";\"Совхозный\";\"other\"\n\"874034\";\"Galashki\";\"main\"\n\"874034\";\"Galasjki\";\"other\"\n\"874034\";\"Галашки\";\"other\"\n\"874045\";\"Staryy Malgobek\";\"main\"\n\"1484871\";\"Krasnobrodskiy\";\"main\"\n\"1484871\";\"KRASNOBRODSKIJ\";\"other\"\n\"1484871\";\"Krasnobrodskij\";\"other\"\n\"1484871\";\"Krasnyy Brod\";\"other\"\n\"1484871\";\"КРАСНОБРОДСКИЙ\";\"other\"\n\"1484871\";\"Краснобродский\";\"other\"\n\"1484889\";\"Zyuzel’skiy\";\"main\"\n\"1484889\";\"Zyuzel'skiy\";\"ascii\"\n\"1484889\";\"ZJUZEL'SKIJ\";\"other\"\n\"1484889\";\"Ziuzelskij\";\"other\"\n\"1484889\";\"ЗЮЗЕЛЬСКИЙ\";\"other\"\n\"1484892\";\"Zyryanskoye\";\"main\"\n\"1484892\";\"Zyrjanskoe\";\"other\"\n\"1484892\";\"Zyrjanskoje\";\"other\"\n\"1484892\";\"Зырянское\";\"other\"\n\"1484923\";\"Zykovo\";\"main\"\n\"1484923\";\"Зыково\";\"other\"\n\"1484943\";\"Zverinogolovskoye\";\"main\"\n\"1484943\";\"Swerinoglowskaja\";\"other\"\n\"1484943\";\"Zveringolovskoye\";\"other\"\n\"1484943\";\"Zverinogolovskiy\";\"other\"\n\"1484943\";\"Zverinogolovskoe\";\"other\"\n\"1484943\";\"Zverinogolovskoje\";\"other\"\n\"1484943\";\"Звериноголовское\";\"other\"\n\"1484956\";\"Zudilovo\";\"main\"\n\"1484956\";\"Зудилово\";\"other\"\n\"1485020\";\"Znamenskoye\";\"main\"\n\"1485020\";\"Znamenskoe\";\"other\"\n\"1485020\";\"Znamenskoje\";\"other\"\n\"1485020\";\"Знаменское\";\"other\"\n\"1485042\";\"Zmeinogorsk\";\"main\"\n\"1485042\";\"ZMEINOGORSK\";\"other\"\n\"1485042\";\"ЗМЕИНОГОРСК\";\"other\"\n\"1485193\";\"Zheleznodorozhnyy\";\"main\"\n\"1485275\";\"Zelënyy Bor\";\"main\"\n\"1485275\";\"Zelenyy Bor\";\"ascii\"\n\"1485275\";\"ZELENYJ BOR\";\"other\"\n\"1485275\";\"Zelenyj Bor\";\"other\"\n\"1485275\";\"ЗЕЛЕНЫЙ БОР\";\"other\"\n\"1485284\";\"Zelenogorskiy\";\"main\"\n\"1485284\";\"ZELENOGORSKIJ\";\"other\"\n\"1485284\";\"Zelenogorskij\";\"other\"\n\"1485284\";\"ЗЕЛЕНОГОРСКИЙ\";\"other\"\n\"1485286\";\"Zelenoborsk\";\"main\"\n\"1485286\";\"Konda\";\"other\"\n\"1485286\";\"ZELENOBORSK\";\"other\"\n\"1485286\";\"ЗЕЛЕНОБОРСК\";\"other\"\n\"1485312\";\"Zdvinsk\";\"main\"\n\"1485312\";\"ZDVINSK\";\"other\"\n\"1485312\";\"ЗДВИНСК\";\"other\"\n\"1485323\";\"Zaykovo\";\"main\"\n\"1485323\";\"ZAJKOVO\";\"other\"\n\"1485323\";\"Zajkovo\";\"other\"\n\"1485323\";\"ЗАЙКОВО\";\"other\"\n\"1485354\";\"Zavodouspenskoye\";\"main\"\n\"1485354\";\"ZAVODOUSPENSKOE\";\"other\"\n\"1485354\";\"Zavodouspenskoje\";\"other\"\n\"1485354\";\"ЗАВОДОУСПЕНСКОЕ\";\"other\"\n\"1485357\";\"Zavodoukovsk\";\"main\"\n\"1485357\";\"ZAVODOUKOVSK\";\"other\"\n\"1485357\";\"Zavodoukovskiy\";\"other\"\n\"1485357\";\"Zavodoukovskoye\";\"other\"\n\"1485357\";\"ЗАВОДОУКОВСК\";\"other\"\n\"1485397\";\"Zaton\";\"main\"\n\"1485397\";\"ZATON\";\"other\"\n\"1485397\";\"ЗАТОН\";\"other\"\n\"1485439\";\"Zarinsk\";\"main\"\n\"1485439\";\"Zarinskaja\";\"other\"\n\"1485439\";\"Zarinskaya\";\"other\"\n\"1485439\";\"Заринск\";\"other\"\n\"1485439\";\"Заринская\";\"other\"\n\"1485445\";\"Zarechnyy\";\"main\"\n\"1485445\";\"ZARECHNYJ\";\"other\"\n\"1485445\";\"Zaretsjnyj\";\"other\"\n\"1485445\";\"ЗАРЕЧНЫЙ\";\"other\"\n\"1485470\";\"Zapolyarnyy\";\"main\"\n\"1485470\";\"ZAPOLJARNYJ\";\"other\"\n\"1485470\";\"Zapoljarnyj\";\"other\"\n\"1485470\";\"ЗАПОЛЯРНЫЙ\";\"other\"\n\"1485528\";\"Zalesovo\";\"main\"\n\"1485528\";\"Залесово\";\"other\"\n\"1485627\";\"Yuzhnyy\";\"main\"\n\"1485627\";\"JUZHNYJ\";\"other\"\n\"1485627\";\"Juzjnyj\";\"other\"\n\"1485627\";\"ЮЖНЫЙ\";\"other\"\n\"1485634\";\"Yuzhnoural’sk\";\"main\"\n\"1485634\";\"Yuzhnoural'sk\";\"ascii\"\n\"1485634\";\"JUZHNOURAL'SK\";\"other\"\n\"1485634\";\"Juzjnouralsk\";\"other\"\n\"1485634\";\"Nizhne-Uvel'skoye\";\"other\"\n\"1485634\";\"Nizhne-Uvel’skoye\";\"other\"\n\"1485634\";\"Yuzhnoural'skiy\";\"other\"\n\"1485634\";\"Yuzhnoural’skiy\";\"other\"\n\"1485634\";\"ЮЖНОУРАЛЬСК\";\"other\"\n\"1485664\";\"Yushala\";\"main\"\n\"1485664\";\"JUSHALA\";\"other\"\n\"1485664\";\"Jusjala\";\"other\"\n\"1485664\";\"ЮШАЛА\";\"other\"\n\"1485680\";\"Yurty\";\"main\"\n\"1485680\";\"JURTY\";\"other\"\n\"1485680\";\"Jurty\";\"other\"\n\"1485680\";\"ЮРТЫ\";\"other\"\n\"1485680\";\"Юрты\";\"other\"\n\"1485712\";\"Yurginskoye\";\"main\"\n\"1485712\";\"Jurginskoe\";\"other\"\n\"1485712\";\"Jurginskoje\";\"other\"\n\"1485712\";\"Korginskoye\";\"other\"\n\"1485712\";\"Yurga\";\"other\"\n\"1485712\";\"Юргинское\";\"other\"\n\"1485721\";\"Yurgamysh\";\"main\"\n\"1485721\";\"JURGAMYSH\";\"other\"\n\"1485721\";\"Jurgamysj\";\"other\"\n\"1485721\";\"ЮРГАМЫШ\";\"other\"\n\"1485724\";\"Yurga\";\"main\"\n\"1485724\";\"JURGA\";\"other\"\n\"1485724\";\"Jurga\";\"other\"\n\"1485724\";\"yuruga\";\"other\"\n\"1485724\";\"ЮРГА\";\"other\"\n\"1485724\";\"Юрга\";\"other\"\n\"1485724\";\"ユルガ\";\"other\"\n\"1485849\";\"Yetkul’\";\"main\"\n\"1485849\";\"Yetkul'\";\"ascii\"\n\"1485849\";\"Etkul'\";\"other\"\n\"1485849\";\"Jetkul\";\"other\"\n\"1485849\";\"Еткуль\";\"other\"\n\"1485873\";\"Yertarskiy\";\"main\"\n\"1485873\";\"ERTARSKIJ\";\"other\"\n\"1485873\";\"Jertarskij\";\"other\"\n\"1485873\";\"Yertarkoye\";\"other\"\n\"1485873\";\"Yertarskoye\";\"other\"\n\"1485873\";\"ЕРТАРСКИЙ\";\"other\"\n\"1485904\";\"Yermakovskoye\";\"main\"\n\"1485904\";\"Ermakovskoe\";\"other\"\n\"1485904\";\"Jermakovskoje\";\"other\"\n\"1485904\";\"Yermakovskoe\";\"other\"\n\"1485904\";\"Ермаковское\";\"other\"\n\"1485997\";\"Yeniseysk\";\"main\"\n\"1485997\";\"ENISEJSK\";\"other\"\n\"1485997\";\"Eniseisk\";\"other\"\n\"1485997\";\"Enisejsk\";\"other\"\n\"1485997\";\"Eniséjsk\";\"other\"\n\"1485997\";\"Jeniseiskas\";\"other\"\n\"1485997\";\"Jenisejk\";\"other\"\n\"1485997\";\"Jenisejsk\";\"other\"\n\"1485997\";\"Jenisseisk\";\"other\"\n\"1485997\";\"Yeniseisk\";\"other\"\n\"1485997\";\"Yeniseyevo\";\"other\"\n\"1485997\";\"Јенисејк\";\"other\"\n\"1485997\";\"ЕНИСЕЙСК\";\"other\"\n\"1485997\";\"Енисейск\";\"other\"\n\"1486031\";\"Yemel'yanovo\";\"main\"\n\"1486031\";\"EMEL'JANOVO\";\"other\"\n\"1486031\";\"Jemeljanovo\";\"other\"\n\"1486031\";\"ЕМЕЛЬЯНОВО\";\"other\"\n\"1486039\";\"Yemanzhelinsk\";\"main\"\n\"1486039\";\"Emanzhelinka\";\"other\"\n\"1486039\";\"Emanzhelinsk\";\"other\"\n\"1486039\";\"Emanzhelinskij\";\"other\"\n\"1486039\";\"Yemanzhelinka\";\"other\"\n\"1486039\";\"Yemanzhelinskiy\";\"other\"\n\"1486039\";\"Еманжелинка\";\"other\"\n\"1486039\";\"Еманжелинск\";\"other\"\n\"1486039\";\"Еманжелинский\";\"other\"\n\"1486040\";\"Yemanzhelinka\";\"main\"\n\"1486040\";\"EMANZHELINSK\";\"other\"\n\"1486040\";\"Jemanzjelinsk\";\"other\"\n\"1486040\";\"Yemanzhelinskiy\";\"other\"\n\"1486040\";\"ЕМАНЖЕЛИНСК\";\"other\"\n\"1486164\";\"Yelanskiy\";\"main\"\n\"1486164\";\"Elanskij\";\"other\"\n\"1486164\";\"Jelanskij\";\"other\"\n\"1486164\";\"Еланский\";\"other\"\n\"1486209\";\"Yekaterinburg\";\"main\"\n\"1486209\";\"Catharinoburgum\";\"other\"\n\"1486209\";\"Ekaterimburgo\";\"other\"\n\"1486209\";\"Ekaterinburg\";\"other\"\n\"1486209\";\"Ekaterinburgo\";\"other\"\n\"1486209\";\"Iekaterinbourg\";\"other\"\n\"1486209\";\"Jekaterinburg\";\"other\"\n\"1486209\";\"Jekaterinburga\";\"other\"\n\"1486209\";\"Jekaterinburgas\";\"other\"\n\"1486209\";\"Jekaterinenburg\";\"other\"\n\"1486209\";\"Jekaterynburg\";\"other\"\n\"1486209\";\"Jekatyerinburg\";\"other\"\n\"1486209\";\"Jekatěrinburg\";\"other\"\n\"1486209\";\"Sverdlovsk\";\"other\"\n\"1486209\";\"Sverolovsk\";\"other\"\n\"1486209\";\"ekaterinburuku\";\"other\"\n\"1486209\";\"ye ka jie lin bao\";\"other\"\n\"1486209\";\"yekatelinbuleukeu\";\"other\"\n\"1486209\";\"yqtrynbwrg\";\"other\"\n\"1486209\";\"Єкатеринбург\";\"other\"\n\"1486209\";\"Екатеринбург\";\"other\"\n\"1486209\";\"Свердловск\";\"other\"\n\"1486209\";\"יקטרינבורג\";\"other\"\n\"1486209\";\"エカテリンブルク\";\"other\"\n\"1486209\";\"葉卡捷琳堡\";\"other\"\n\"1486209\";\"예카테린부르크\";\"other\"\n\"1486261\";\"Yaya\";\"main\"\n\"1486261\";\"JAJA\";\"other\"\n\"1486261\";\"Jaja\";\"other\"\n\"1486261\";\"ЯЯ\";\"other\"\n\"1486298\";\"Yashkino\";\"main\"\n\"1486298\";\"Jaschkino\";\"other\"\n\"1486298\";\"Jashkino\";\"other\"\n\"1486298\";\"Яшкино\";\"other\"\n\"1486321\";\"Yar-Sale\";\"main\"\n\"1486321\";\"Jar-Sale\";\"other\"\n\"1486321\";\"Яр-Сале\";\"other\"\n\"1486340\";\"Yarovoye\";\"main\"\n\"1486340\";\"JAROVOE\";\"other\"\n\"1486340\";\"Jarovoje\";\"other\"\n\"1486340\";\"Yarovoy\";\"other\"\n\"1486340\";\"ЯРОВОЕ\";\"other\"\n\"1486340\";\"Яровое\";\"other\"\n\"1486369\";\"Yarkovo\";\"main\"\n\"1486369\";\"Jarkovo\";\"other\"\n\"1486369\";\"Ярково\";\"other\"\n\"1486371\";\"Yarkovo\";\"main\"\n\"1486371\";\"Jarkovo\";\"other\"\n\"1486371\";\"Yarkova\";\"other\"\n\"1486371\";\"Ярково\";\"other\"\n\"1486468\";\"Yalutorovsk\";\"main\"\n\"1486468\";\"JALUTOROVSK\";\"other\"\n\"1486468\";\"Jalutorovsk\";\"other\"\n\"1486468\";\"ЯЛУТОРОВСК\";\"other\"\n\"1486525\";\"Yagunovskiy\";\"main\"\n\"1486525\";\"Davydova\";\"other\"\n\"1486525\";\"Ishanova\";\"other\"\n\"1486525\";\"JAGUNOVSKIJ\";\"other\"\n\"1486525\";\"Jagunovskij\";\"other\"\n\"1486525\";\"ЯГУНОВСКИЙ\";\"other\"\n\"1486677\";\"Vvedenskoye\";\"main\"\n\"1486677\";\"Vvedenskoe\";\"other\"\n\"1486677\";\"Vvednskoe\";\"other\"\n\"1486677\";\"Введенское\";\"other\"\n\"1486677\";\"Введнское\";\"other\"\n\"1486795\";\"Vostochnyy\";\"main\"\n\"1486795\";\"VOSTOCHNYJ\";\"other\"\n\"1486795\";\"Vostotsjnyj\";\"other\"\n\"1486795\";\"ВОСТОЧНЫЙ\";\"other\"\n\"1486795\";\"Восточный\";\"other\"\n\"1486910\";\"Vorkuta\";\"main\"\n\"1486910\";\"VORKUTA\";\"other\"\n\"1486910\";\"Voerkuta\";\"other\"\n\"1486910\";\"Vorkoeta\";\"other\"\n\"1486910\";\"Vorkouta\";\"other\"\n\"1486910\";\"Workuta\";\"other\"\n\"1486910\";\"boleukuta\";\"other\"\n\"1486910\";\"vu~orukuta\";\"other\"\n\"1486910\";\"Вöркута\";\"other\"\n\"1486910\";\"ВОРКУТА\";\"other\"\n\"1486910\";\"Воркута\";\"other\"\n\"1486910\";\"ヴォルクタ\";\"other\"\n\"1486910\";\"보르쿠타\";\"other\"\n\"1486913\";\"Vorgashor\";\"main\"\n\"1486913\";\"Vorgasjor\";\"other\"\n\"1486913\";\"Воргашор\";\"other\"\n\"1486983\";\"Volchikha\";\"main\"\n\"1486983\";\"VOLCHIKHA\";\"other\"\n\"1486983\";\"Voltchikha\";\"other\"\n\"1486983\";\"Voltsjikha\";\"other\"\n\"1486983\";\"ВОЛЧИХА\";\"other\"\n\"1486984\";\"Volchansk\";\"main\"\n\"1486984\";\"Volchanka\";\"other\"\n\"1486984\";\"Voltsjansk\";\"other\"\n\"1486984\";\"Волчанск\";\"other\"\n\"1487022\";\"Vlasikha\";\"main\"\n\"1487022\";\"Власиха\";\"other\"\n\"1487048\";\"Vkhodnoy\";\"main\"\n\"1487048\";\"VKHODNOJ\";\"other\"\n\"1487048\";\"Vkhodnoj\";\"other\"\n\"1487048\";\"ВХОДНОЙ\";\"other\"\n\"1487048\";\"Входной\";\"other\"\n\"1487074\";\"Vishnëvogorsk\";\"main\"\n\"1487074\";\"Vishnevogorsk\";\"ascii\"\n\"1487074\";\"VISHNEVOGORSK\";\"other\"\n\"1487074\";\"Visjnevogorsk\";\"other\"\n\"1487074\";\"ВИШНЕВОГОРСК\";\"other\"\n\"1487086\";\"Vinzili\";\"main\"\n\"1487086\";\"VINZILI\";\"other\"\n\"1487086\";\"ВИНЗИЛИ\";\"other\"\n\"1487112\";\"Vikulovo\";\"main\"\n\"1487112\";\"Викулово\";\"other\"\n\"1487164\";\"Veseloyarsk\";\"main\"\n\"1487164\";\"Veselojarsk\";\"other\"\n\"1487164\";\"Veseloyarskoye\";\"other\"\n\"1487164\";\"Veselyy Yar\";\"other\"\n\"1487164\";\"Веселоярск\";\"other\"\n\"1487195\";\"Vershina Tei\";\"main\"\n\"1487195\";\"Teja\";\"other\"\n\"1487195\";\"Teya\";\"other\"\n\"1487195\";\"VERSHINA TEI\";\"other\"\n\"1487195\";\"ВЕРШИНА ТЕИ\";\"other\"\n\"1487195\";\"Тея\";\"other\"\n\"1487214\";\"Verkh-Suetka\";\"main\"\n\"1487219\";\"Verkhotur’ye\";\"main\"\n\"1487219\";\"Verkhotur'ye\";\"ascii\"\n\"1487219\";\"VERKHOTUR'E\";\"other\"\n\"1487219\";\"Verkhoturje\";\"other\"\n\"1487219\";\"ВЕРХОТУРЬЕ\";\"other\"\n\"1487241\";\"Verkh-Tula\";\"main\"\n\"1487241\";\"Verkhne-Tulinskoye\";\"other\"\n\"1487241\";\"Verkhnyaya Tula\";\"other\"\n\"1487241\";\"Верх-Тула\";\"other\"\n\"1487260\";\"Verkhnyaya Sysert'\";\"main\"\n\"1487260\";\"Verkhne Sysertskiy\";\"other\"\n\"1487260\";\"Verkhnjaja Sysert\";\"other\"\n\"1487260\";\"Verkhnjaja Sysert'\";\"other\"\n\"1487260\";\"Верхняя Сысерть\";\"other\"\n\"1487272\";\"Verkhnyaya Sinyachikha\";\"main\"\n\"1487272\";\"Verkhniy Sinyachikhinskiy\";\"other\"\n\"1487272\";\"Verkhnjaja Sinjachikha\";\"other\"\n\"1487272\";\"Verkhnjaja Sinjatsjikha\";\"other\"\n\"1487272\";\"Верхняя Синячиха\";\"other\"\n\"1487277\";\"Verkhnyaya Salda\";\"main\"\n\"1487277\";\"Salda\";\"other\"\n\"1487277\";\"Verkhnjaja Salda\";\"other\"\n\"1487277\";\"Верхняя Салда\";\"other\"\n\"1487281\";\"Verkhnyaya Pyshma\";\"main\"\n\"1487281\";\"Pyshma\";\"other\"\n\"1487281\";\"Verkhnjaja Pyshma\";\"other\"\n\"1487281\";\"Верхняя Пышма\";\"other\"\n\"1487281\";\"Пышма\";\"other\"\n\"1487332\";\"Verkhnyaya Inta\";\"main\"\n\"1487332\";\"Verkhnjaja Inta\";\"other\"\n\"1487332\";\"Верхняя Инта\";\"other\"\n\"1487394\";\"Verkhniy Ufaley\";\"main\"\n\"1487394\";\"Verkhnij Ufalej\";\"other\"\n\"1487394\";\"Верхний Уфалей\";\"other\"\n\"1487504\";\"Verkh-Neyvinskiy\";\"main\"\n\"1487504\";\"Verkhne-Neivinsk\";\"other\"\n\"1487504\";\"Verkhne-Neyvinskiy\";\"other\"\n\"1487504\";\"Verkhneivinsk\";\"other\"\n\"1487504\";\"Verkhniye-Nevinsk\";\"other\"\n\"1487520\";\"Verkhneye Dubrovo\";\"main\"\n\"1487520\";\"Dubrovinskiy\";\"other\"\n\"1487520\";\"Verkhnee Dubrovo\";\"other\"\n\"1487520\";\"Verkhneje Dubrovo\";\"other\"\n\"1487520\";\"Верхнее Дуброво\";\"other\"\n\"1487599\";\"Verkh-Chebula\";\"main\"\n\"1487599\";\"Verkh-Tsjebula\";\"other\"\n\"1487599\";\"Verkhne Chebulinskoye\";\"other\"\n\"1487599\";\"Verkhne-Chebula\";\"other\"\n\"1487599\";\"Verkhnyaya Chebula\";\"other\"\n\"1487599\";\"Верх-Чебула\";\"other\"\n\"1487615\";\"Vengerovo\";\"main\"\n\"1487615\";\"Spasskoye\";\"other\"\n\"1487615\";\"Венгерово\";\"other\"\n\"1487764\";\"Varna\";\"main\"\n\"1487764\";\"Варна\";\"other\"\n\"1487784\";\"Vargashi\";\"main\"\n\"1487784\";\"VARGASHI\";\"other\"\n\"1487784\";\"Vargasji\";\"other\"\n\"1487784\";\"ВАРГАШИ\";\"other\"\n\"1487839\";\"Vakhrushevo\";\"main\"\n\"1487860\";\"Vagay\";\"main\"\n\"1487860\";\"Vagaj\";\"other\"\n\"1487860\";\"Vagayskoye\";\"other\"\n\"1487860\";\"Wagai\";\"other\"\n\"1487860\";\"Вагай\";\"other\"\n\"1487882\";\"Uzhur\";\"main\"\n\"1487882\";\"UZHUR\";\"other\"\n\"1487882\";\"Uzjur\";\"other\"\n\"1487882\";\"УЖУР\";\"other\"\n\"1487922\";\"Uyar\";\"main\"\n\"1487922\";\"Ujar\";\"other\"\n\"1487922\";\"Уяр\";\"other\"\n\"1487939\";\"Uvat\";\"main\"\n\"1487939\";\"Уват\";\"other\"\n\"1488048\";\"Ust’-Ulagan\";\"main\"\n\"1488048\";\"Ust'-Ulagan\";\"ascii\"\n\"1488048\";\"Ulagan\";\"other\"\n\"1488048\";\"Улаган\";\"other\"\n\"1488048\";\"Усть-Улаган\";\"other\"\n\"1488074\";\"Ust’-Tarka\";\"main\"\n\"1488074\";\"Ust'-Tarka\";\"ascii\"\n\"1488074\";\"Ust'-Tarskoye\";\"other\"\n\"1488074\";\"Ust-Tarka\";\"other\"\n\"1488074\";\"Ust’-Tarskoye\";\"other\"\n\"1488074\";\"Усть-Тарка\";\"other\"\n\"1488167\";\"Ust’-Koksa\";\"main\"\n\"1488167\";\"Ust'-Koksa\";\"ascii\"\n\"1488167\";\"Ust-Koksa\";\"other\"\n\"1488167\";\"Усть-Кокса\";\"other\"\n\"1488190\";\"Ust’-Kan\";\"main\"\n\"1488190\";\"Ust'-Kan\";\"ascii\"\n\"1488190\";\"Ust-Kan\";\"other\"\n\"1488190\";\"Усть-Кан\";\"other\"\n\"1488200\";\"Ust’-Kalmanka\";\"main\"\n\"1488200\";\"Ust'-Kalmanka\";\"ascii\"\n\"1488200\";\"Ust'-Kalmanskoye\";\"other\"\n\"1488200\";\"Ust-Kalmanka\";\"other\"\n\"1488200\";\"Ust’-Kalmanskoye\";\"other\"\n\"1488200\";\"Усть-Калманка\";\"other\"\n\"1488206\";\"Ust’-Ishim\";\"main\"\n\"1488206\";\"Ust'-Ishim\";\"ascii\"\n\"1488206\";\"Ust-Isjim\";\"other\"\n\"1488206\";\"Усть-Ишим\";\"other\"\n\"1488235\";\"Ust’-Charyshskaya Pristan’\";\"main\"\n\"1488235\";\"Ust'-Charyshskaya Pristan'\";\"ascii\"\n\"1488235\";\"Ust'-Char-Pristan'\";\"other\"\n\"1488235\";\"Ust'-Charysh\";\"other\"\n\"1488235\";\"Ust'-Charyshskaja Pristan'\";\"other\"\n\"1488235\";\"Ust-Tsjarysjskaja Pristan\";\"other\"\n\"1488235\";\"Ust’-Char-Pristan’\";\"other\"\n\"1488235\";\"Ust’-Charysh\";\"other\"\n\"1488235\";\"Усть-Чарышская Пристань\";\"other\"\n\"1488253\";\"Zelenogorsk\";\"main\"\n\"1488253\";\"Barga\";\"other\"\n\"1488253\";\"Krasnoyarsk-45\";\"other\"\n\"1488253\";\"Ust'-Barga\";\"other\"\n\"1488253\";\"Ust’-Barga\";\"other\"\n\"1488253\";\"Зеленогорск\";\"other\"\n\"1488258\";\"Ust’-Bagaryak\";\"main\"\n\"1488258\";\"Ust'-Bagaryak\";\"ascii\"\n\"1488258\";\"Nizhnyaya\";\"other\"\n\"1488258\";\"Ust'-Bagarjak\";\"other\"\n\"1488258\";\"Ust-Bagarjak\";\"other\"\n\"1488258\";\"Усть-Багаряк\";\"other\"\n\"1488272\";\"Ust’-Abakan\";\"main\"\n\"1488272\";\"Ust'-Abakan\";\"ascii\"\n\"1488272\";\"Ust'-Abakanskoye\";\"other\"\n\"1488272\";\"Ust-Abakan\";\"other\"\n\"1488272\";\"Ust’-Abakanskoye\";\"other\"\n\"1488272\";\"Усть-Абакан\";\"other\"\n\"1488288\";\"Uspenka\";\"main\"\n\"1488288\";\"Успенка\";\"other\"\n\"1488414\";\"Urengoy\";\"main\"\n\"1488414\";\"URENGOJ\";\"other\"\n\"1488414\";\"Urengoj\";\"other\"\n\"1488414\";\"УРЕНГОЙ\";\"other\"\n\"1488429\";\"Uray\";\"main\"\n\"1488429\";\"Nizhnyaya Arpa\";\"other\"\n\"1488429\";\"URAJ\";\"other\"\n\"1488429\";\"Urai\";\"other\"\n\"1488429\";\"Uraj\";\"other\"\n\"1488429\";\"УРАЙ\";\"other\"\n\"1488429\";\"Урай\";\"other\"\n\"1488458\";\"Ural\";\"main\"\n\"1488458\";\"URAL\";\"other\"\n\"1488458\";\"УРАЛ\";\"other\"\n\"1488465\";\"Uporovo\";\"main\"\n\"1488465\";\"Упорово\";\"other\"\n\"1488616\";\"Uk\";\"main\"\n\"1488616\";\"UK\";\"other\"\n\"1488616\";\"УК\";\"other\"\n\"1488632\";\"Uglovskoye\";\"main\"\n\"1488632\";\"Uglovskoje\";\"other\"\n\"1488632\";\"Угловское\";\"other\"\n\"1488708\";\"Ubinskoye\";\"main\"\n\"1488708\";\"Ubinskoe\";\"other\"\n\"1488708\";\"Ubinskoje\";\"other\"\n\"1488708\";\"Убинское\";\"other\"\n\"1488741\";\"Tyumentsevo\";\"main\"\n\"1488741\";\"Tjumentsevo\";\"other\"\n\"1488741\";\"Tyumentseva\";\"other\"\n\"1488741\";\"Тюменцево\";\"other\"\n\"1488754\";\"Tyumen’\";\"main\"\n\"1488754\";\"Tyumen'\";\"ascii\"\n\"1488754\";\"Tjumen\";\"other\"\n\"1488754\";\"Tjumen'\";\"other\"\n\"1488754\";\"Тюмень\";\"other\"\n\"1488774\";\"Tyukhtet\";\"main\"\n\"1488774\";\"Tjukhtet\";\"other\"\n\"1488774\";\"Тюхтет\";\"other\"\n\"1488780\";\"Tyukalinsk\";\"main\"\n\"1488780\";\"TJUKALINSK\";\"other\"\n\"1488780\";\"Tjukalinsk\";\"other\"\n\"1488780\";\"ТЮКАЛИНСК\";\"other\"\n\"1488788\";\"Tyubuk\";\"main\"\n\"1488788\";\"Tjubuk\";\"other\"\n\"1488788\";\"Тюбук\";\"other\"\n\"1488838\";\"Tyazhinskiy\";\"main\"\n\"1488838\";\"TJAZHINSKIJ\";\"other\"\n\"1488838\";\"Tjazjinskij\";\"other\"\n\"1488838\";\"Tyazhin\";\"other\"\n\"1488838\";\"Tyazhing\";\"other\"\n\"1488838\";\"Tyazhinskoye\";\"other\"\n\"1488838\";\"ТЯЖИНСКИЙ\";\"other\"\n\"1488903\";\"Turukhansk\";\"main\"\n\"1488903\";\"Туруханск\";\"other\"\n\"1488920\";\"Turochak\";\"main\"\n\"1488920\";\"Turochan\";\"other\"\n\"1488920\";\"Turotsjak\";\"other\"\n\"1488920\";\"Турочак\";\"other\"\n\"1488931\";\"Turinskaya Sloboda\";\"main\"\n\"1488931\";\"Turinskaja-Sloboda\";\"other\"\n\"1488931\";\"Туринская-Слобода\";\"other\"\n\"1488933\";\"Turinsk\";\"main\"\n\"1488933\";\"TURINSK\";\"other\"\n\"1488933\";\"ТУРИНСК\";\"other\"\n\"1488933\";\"Туринск\";\"other\"\n\"1488937\";\"Turgoyak\";\"main\"\n\"1488937\";\"TURGOJAK\";\"other\"\n\"1488937\";\"Turgojak\";\"other\"\n\"1488937\";\"ТУРГОЯК\";\"other\"\n\"1488950\";\"Turan\";\"main\"\n\"1488950\";\"Poselok Turanskiy\";\"other\"\n\"1488950\";\"Posëlok Turanskiy\";\"other\"\n\"1488950\";\"TURAN\";\"other\"\n\"1488950\";\"Turanskiy\";\"other\"\n\"1488950\";\"ТУРАН\";\"other\"\n\"1489048\";\"Tuim\";\"main\"\n\"1489048\";\"TUIM\";\"other\"\n\"1489048\";\"ТУИМ\";\"other\"\n\"1489057\";\"Tugulym\";\"main\"\n\"1489057\";\"TUGULYM\";\"other\"\n\"1489057\";\"ТУГУЛЫМ\";\"other\"\n\"1489125\";\"Tsementnyy\";\"main\"\n\"1489125\";\"CEMENTNYJ\";\"other\"\n\"1489125\";\"Tsementnyj\";\"other\"\n\"1489125\";\"ЦЕМЕНТНЫЙ\";\"other\"\n\"1489126\";\"Tsementnozavodskiy\";\"main\"\n\"1489126\";\"CEMENTNOZAVODSKIJ\";\"other\"\n\"1489126\";\"Tsementnozavodskij\";\"other\"\n\"1489126\";\"ЦЕМЕНТНОЗАВОДСКИЙ\";\"other\"\n\"1489137\";\"Tselinnoye\";\"main\"\n\"1489137\";\"Celinnoe\";\"other\"\n\"1489137\";\"Novo-Kocherdyk\";\"other\"\n\"1489137\";\"Novyy Kocherdyk\";\"other\"\n\"1489137\";\"Tselinnoje\";\"other\"\n\"1489137\";\"Целинное\";\"other\"\n\"1489138\";\"Tselinnoye\";\"main\"\n\"1489138\";\"Celinnoe\";\"other\"\n\"1489138\";\"Tselinnoje\";\"other\"\n\"1489138\";\"Yaminskoye\";\"other\"\n\"1489138\";\"Целинное\";\"other\"\n\"1489167\";\"Trudarmeyskiy\";\"main\"\n\"1489167\";\"TRUDARMEJSKIJ\";\"other\"\n\"1489167\";\"Trudarmejskij\";\"other\"\n\"1489167\";\"Trudarmeysk\";\"other\"\n\"1489167\";\"Trudarmeyskoye\";\"other\"\n\"1489167\";\"Tyrgan\";\"other\"\n\"1489167\";\"ТРУДАРМЕЙСКИЙ\";\"other\"\n\"1489167\";\"Трудармейский\";\"other\"\n\"1489202\";\"Troitskoye\";\"main\"\n\"1489209\";\"Troitskoye\";\"main\"\n\"1489209\";\"Troitskoje\";\"other\"\n\"1489209\";\"Троицкое\";\"other\"\n\"1489218\";\"Troitskiy\";\"main\"\n\"1489218\";\"TROICKIJ\";\"other\"\n\"1489218\";\"Troitskij\";\"other\"\n\"1489218\";\"ТРОИЦКИЙ\";\"other\"\n\"1489218\";\"Троицкий\";\"other\"\n\"1489246\";\"Troitsk\";\"main\"\n\"1489246\";\"TROICK\";\"other\"\n\"1489246\";\"Troizk\";\"other\"\n\"1489246\";\"ТРОИЦК\";\"other\"\n\"1489398\";\"Topchikha\";\"main\"\n\"1489398\";\"TOPCHIKHA\";\"other\"\n\"1489398\";\"Toptsjikha\";\"other\"\n\"1489398\";\"ТОПЧИХА\";\"other\"\n\"1489401\";\"Toora-Khem\";\"main\"\n\"1489401\";\"Doora-Khem\";\"other\"\n\"1489401\";\"Dora-Khem\";\"other\"\n\"1489401\";\"Doro-Kem\";\"other\"\n\"1489401\";\"Saldam\";\"other\"\n\"1489401\";\"Tora-Khem\";\"other\"\n\"1489401\";\"Салдам\";\"other\"\n\"1489401\";\"Тоора-Хем\";\"other\"\n\"1489425\";\"Tomsk\";\"main\"\n\"1489425\";\"Toms'k\";\"other\"\n\"1489425\";\"Tomscum\";\"other\"\n\"1489425\";\"tomseukeu\";\"other\"\n\"1489425\";\"tomusuku\";\"other\"\n\"1489425\";\"tuo mu si ke\";\"other\"\n\"1489425\";\"Томск\";\"other\"\n\"1489425\";\"Томськ\";\"other\"\n\"1489425\";\"トムスク\";\"other\"\n\"1489425\";\"托木斯克\";\"other\"\n\"1489425\";\"톰스크\";\"other\"\n\"1489474\";\"Tolmachëvo\";\"main\"\n\"1489474\";\"Tolmachevo\";\"ascii\"\n\"1489474\";\"Tolmacheva\";\"other\"\n\"1489474\";\"Tolmatsjevo\";\"other\"\n\"1489474\";\"Толмачево\";\"other\"\n\"1489499\";\"Togur\";\"main\"\n\"1489499\";\"TOGUR\";\"other\"\n\"1489499\";\"ТОГУР\";\"other\"\n\"1489499\";\"Тогур\";\"other\"\n\"1489504\";\"Togul\";\"main\"\n\"1489504\";\"Тогул\";\"other\"\n\"1489508\";\"Toguchin\";\"main\"\n\"1489508\";\"Goguchin\";\"other\"\n\"1489508\";\"TOGUCHIN\";\"other\"\n\"1489508\";\"Togutsjin\";\"other\"\n\"1489508\";\"Toruchin\";\"other\"\n\"1489508\";\"ТОГУЧИН\";\"other\"\n\"1489530\";\"Tobol’sk\";\"main\"\n\"1489530\";\"Tobol'sk\";\"ascii\"\n\"1489530\";\"Tobolsk\";\"other\"\n\"1489530\";\"Тобольск\";\"other\"\n\"1489554\";\"Tisul’\";\"main\"\n\"1489554\";\"Tisul'\";\"ascii\"\n\"1489554\";\"TISUL'\";\"other\"\n\"1489554\";\"Tisul\";\"other\"\n\"1489554\";\"ТИСУЛЬ\";\"other\"\n\"1489571\";\"Tinskoy\";\"main\"\n\"1489571\";\"Tinskaya\";\"other\"\n\"1489571\";\"Tinskiy\";\"other\"\n\"1489571\";\"Vyselke-Tinskiy\";\"other\"\n\"1489571\";\"Vyselok Tiny\";\"other\"\n\"1489597\";\"Timiryazevskoye\";\"main\"\n\"1489597\";\"Novaya Eushta\";\"other\"\n\"1489597\";\"TIMIRJAZEVSKIJ\";\"other\"\n\"1489597\";\"Timirjazevskoe\";\"other\"\n\"1489597\";\"Timiryazevskiy\";\"other\"\n\"1489597\";\"ТИМИРЯЗЕВСКИЙ\";\"other\"\n\"1489597\";\"Тимирязевское\";\"other\"\n\"1489656\";\"Teya\";\"main\"\n\"1489661\";\"Tevriz\";\"main\"\n\"1489661\";\"Tavrizskoye\";\"other\"\n\"1489661\";\"Тевриз\";\"other\"\n\"1489779\";\"Temirtau\";\"main\"\n\"1489779\";\"TEMIRTAU\";\"other\"\n\"1489779\";\"Timer-Tau\";\"other\"\n\"1489779\";\"ТЕМИРТАУ\";\"other\"\n\"1489779\";\"Темиртау\";\"other\"\n\"1489822\";\"Tegul’det\";\"main\"\n\"1489822\";\"Tegul'det\";\"ascii\"\n\"1489822\";\"Teguldet\";\"other\"\n\"1489822\";\"Тегульдет\";\"other\"\n\"1489828\";\"Teeli\";\"main\"\n\"1489828\";\"Tehehli\";\"other\"\n\"1489828\";\"Tehli\";\"other\"\n\"1489828\";\"Teli\";\"other\"\n\"1489828\";\"Тэли\";\"other\"\n\"1489828\";\"Тээли\";\"other\"\n\"1489853\";\"Tazovskiy\";\"main\"\n\"1489853\";\"Khal'mer-Sede\";\"other\"\n\"1489853\";\"Khal’mer-Sede\";\"other\"\n\"1489853\";\"TAZOVSKIJ\";\"other\"\n\"1489853\";\"Tazovskij\";\"other\"\n\"1489853\";\"Tazovskoye\";\"other\"\n\"1489853\";\"ТАЗОВСКИЙ\";\"other\"\n\"1489863\";\"Tayzhina\";\"main\"\n\"1489863\";\"TAJZHINA\";\"other\"\n\"1489863\";\"Tajzjina\";\"other\"\n\"1489863\";\"ТАЙЖИНА\";\"other\"\n\"1489863\";\"Тайжина\";\"other\"\n\"1489870\";\"Tayshet\";\"main\"\n\"1489870\";\"TAJSHET\";\"other\"\n\"1489870\";\"Taischet\";\"other\"\n\"1489870\";\"Taishet\";\"other\"\n\"1489870\";\"Tajset\";\"other\"\n\"1489870\";\"Tajshet\";\"other\"\n\"1489870\";\"Tajŝet\";\"other\"\n\"1489870\";\"Tajšet\";\"other\"\n\"1489870\";\"Tashieta\";\"other\"\n\"1489870\";\"tai she te\";\"other\"\n\"1489870\";\"taisheto\";\"other\"\n\"1489870\";\"taisyeteu\";\"other\"\n\"1489870\";\"ТАЙШЕТ\";\"other\"\n\"1489870\";\"Тайшет\";\"other\"\n\"1489870\";\"Тајшет\";\"other\"\n\"1489870\";\"タイシェト\";\"other\"\n\"1489870\";\"泰舍特\";\"other\"\n\"1489870\";\"타이셰트\";\"other\"\n\"1489900\";\"Tayginka\";\"main\"\n\"1489900\";\"TAJGINKA\";\"other\"\n\"1489900\";\"Tajginka\";\"other\"\n\"1489900\";\"ТАЙГИНКА\";\"other\"\n\"1489907\";\"Tayga\";\"main\"\n\"1489907\";\"TAJGA\";\"other\"\n\"1489907\";\"Taiga\";\"other\"\n\"1489907\";\"Tajga\";\"other\"\n\"1489907\";\"ТАЙГА\";\"other\"\n\"1489938\";\"Tavricheskoye\";\"main\"\n\"1489938\";\"TAVRICHESKOE\";\"other\"\n\"1489938\";\"Tavritsjeskoje\";\"other\"\n\"1489938\";\"ТАВРИЧЕСКОЕ\";\"other\"\n\"1489938\";\"Таврическое\";\"other\"\n\"1489962\";\"Tavda\";\"main\"\n\"1489962\";\"TAVDA\";\"other\"\n\"1489962\";\"ТАВДА\";\"other\"\n\"1490003\";\"Tatarsk\";\"main\"\n\"1490003\";\"TATARSK\";\"other\"\n\"1490003\";\"ТАТАРСК\";\"other\"\n\"1490036\";\"Tashtyp\";\"main\"\n\"1490036\";\"Tashtypskoye\";\"other\"\n\"1490036\";\"Tasjtyp\";\"other\"\n\"1490036\";\"Таштып\";\"other\"\n\"1490042\";\"Tashtagol\";\"main\"\n\"1490042\";\"TASHTAGOL\";\"other\"\n\"1490042\";\"Tashtapol\";\"other\"\n\"1490042\";\"Tashtogol\";\"other\"\n\"1490042\";\"Tasjtagol\";\"other\"\n\"1490042\";\"ТАШТАГОЛ\";\"other\"\n\"1490042\";\"Таштагол\";\"other\"\n\"1490054\";\"Tashara\";\"main\"\n\"1490054\";\"Tasjara\";\"other\"\n\"1490054\";\"Ташара\";\"other\"\n\"1490055\";\"Tashanta\";\"main\"\n\"1490055\";\"Tasjanta\";\"other\"\n\"1490055\";\"Ташанта\";\"other\"\n\"1490058\";\"Taseyevo\";\"main\"\n\"1490058\";\"Taseevo\";\"other\"\n\"1490058\";\"Tasejevo\";\"other\"\n\"1490058\";\"Taseyevskoye\";\"other\"\n\"1490058\";\"Tasyeevo\";\"other\"\n\"1490058\";\"Тасеево\";\"other\"\n\"1490085\";\"Tarko-Sale\";\"main\"\n\"1490085\";\"Tarka-Sale\";\"other\"\n\"1490085\";\"Tarsale\";\"other\"\n\"1490085\";\"Тарко-Сале\";\"other\"\n\"1490140\";\"Tara\";\"main\"\n\"1490140\";\"TARA\";\"other\"\n\"1490140\";\"ТАРА\";\"other\"\n\"1490140\";\"Тара\";\"other\"\n\"1490256\";\"Talnakh\";\"main\"\n\"1490256\";\"TALNAKH\";\"other\"\n\"1490256\";\"ТАЛНАХ\";\"other\"\n\"1490256\";\"Талнах\";\"other\"\n\"1490277\";\"Talitsa\";\"main\"\n\"1490281\";\"Talitsa\";\"main\"\n\"1490281\";\"TALICA\";\"other\"\n\"1490281\";\"ТАЛИЦА\";\"other\"\n\"1490281\";\"Талица\";\"other\"\n\"1490356\";\"Tabuny\";\"main\"\n\"1490356\";\"Табуны\";\"other\"\n\"1490364\";\"Tabory\";\"main\"\n\"1490364\";\"Таборы\";\"other\"\n\"1490402\";\"Sysert'\";\"main\"\n\"1490402\";\"SYSERT'\";\"other\"\n\"1490402\";\"Sysert\";\"other\"\n\"1490402\";\"СЫСЕРТЬ\";\"other\"\n\"1490496\";\"Svetlyy\";\"main\"\n\"1490496\";\"Svetlyj\";\"other\"\n\"1490496\";\"Светлый\";\"other\"\n\"1490501\";\"Svetlyy\";\"main\"\n\"1490501\";\"SVETLYJ\";\"other\"\n\"1490501\";\"Svetliy\";\"other\"\n\"1490501\";\"Svetlyj\";\"other\"\n\"1490501\";\"СВЕТЛЫЙ\";\"other\"\n\"1490516\";\"Svetlogorsk\";\"main\"\n\"1490516\";\"SVETLOGORSK\";\"other\"\n\"1490516\";\"СВЕТЛОГОРСК\";\"other\"\n\"1490551\";\"Suzun\";\"main\"\n\"1490551\";\"SUZUN\";\"other\"\n\"1490551\";\"СУЗУН\";\"other\"\n\"1490590\";\"Sut-Khol’\";\"main\"\n\"1490590\";\"Sut-Khol'\";\"ascii\"\n\"1490590\";\"Sug-Aksy\";\"other\"\n\"1490590\";\"Суг-Аксы\";\"other\"\n\"1490590\";\"Сут-Холь\";\"other\"\n\"1490591\";\"Suslovo\";\"main\"\n\"1490591\";\"Суслово\";\"other\"\n\"1490624\";\"Surgut\";\"main\"\n\"1490624\";\"SURGUT\";\"other\"\n\"1490624\";\"Soergoet\";\"other\"\n\"1490624\";\"suleuguteu\";\"other\"\n\"1490624\";\"suruguto\";\"other\"\n\"1490624\";\"swrgwt\";\"other\"\n\"1490624\";\"СУРГУТ\";\"other\"\n\"1490624\";\"Сургут\";\"other\"\n\"1490624\";\"סורגוט\";\"other\"\n\"1490624\";\"スルグト\";\"other\"\n\"1490624\";\"수르구트\";\"other\"\n\"1490655\";\"Sumkino\";\"main\"\n\"1490655\";\"SUMKINO\";\"other\"\n\"1490655\";\"СУМКИНО\";\"other\"\n\"1490655\";\"Сумкино\";\"other\"\n\"1490676\";\"Sukpak\";\"main\"\n\"1490676\";\"Сукпак\";\"other\"\n\"1490686\";\"Sukhoy Log\";\"main\"\n\"1490686\";\"Sukhoj Log\";\"other\"\n\"1490686\";\"Сухой Лог\";\"other\"\n\"1490711\";\"Sukhobuzimskoye\";\"main\"\n\"1490711\";\"Sukhobuzimskoe\";\"other\"\n\"1490711\";\"Sukhobuzimskoje\";\"other\"\n\"1490711\";\"Сухобузимское\";\"other\"\n\"1490796\";\"Strezhevoy\";\"main\"\n\"1490796\";\"STREZHEVOJ\";\"other\"\n\"1490796\";\"Strazhevoy\";\"other\"\n\"1490796\";\"Strezhevoye\";\"other\"\n\"1490796\";\"Strezhevsy\";\"other\"\n\"1490796\";\"Strezjevoj\";\"other\"\n\"1490796\";\"СТРЕЖЕВОЙ\";\"other\"\n\"1490796\";\"Стрежевой\";\"other\"\n\"1490805\";\"Strelka\";\"main\"\n\"1490805\";\"STRELKA\";\"other\"\n\"1490805\";\"СТРЕЛКА\";\"other\"\n\"1490918\";\"Staryy Nadym\";\"main\"\n\"1490918\";\"Staryj Nadym\";\"other\"\n\"1490918\";\"Старый Надым\";\"other\"\n\"1490962\";\"Staropyshminsk\";\"main\"\n\"1490962\";\"Pyshminskiy\";\"other\"\n\"1490962\";\"STAROPYSHMINSK\";\"other\"\n\"1490962\";\"Staropysjminsk\";\"other\"\n\"1490962\";\"СТАРОПЫШМИНСК\";\"other\"\n\"1490962\";\"Старопышминск\";\"other\"\n\"1490966\";\"Staropesterevo\";\"main\"\n\"1490966\";\"Pesterevskoye\";\"other\"\n\"1490966\";\"Stropesterovo\";\"other\"\n\"1490966\";\"Старопестерево\";\"other\"\n\"1491004\";\"Starobachaty\";\"main\"\n\"1491004\";\"Bachatskoye\";\"other\"\n\"1491004\";\"Bachaty\";\"other\"\n\"1491004\";\"Bochatskoye\";\"other\"\n\"1491004\";\"Bochaty\";\"other\"\n\"1491004\";\"Boghatyy\";\"other\"\n\"1491004\";\"STAROBACHATY\";\"other\"\n\"1491004\";\"Starobatsjaty\";\"other\"\n\"1491004\";\"СТАРОБАЧАТЫ\";\"other\"\n\"1491004\";\"Старобачаты\";\"other\"\n\"1491006\";\"Staroaleyskoye\";\"main\"\n\"1491006\";\"Staroalejskoje\";\"other\"\n\"1491006\";\"Староалейское\";\"other\"\n\"1491055\";\"Stantsionno-Oyashinskiy\";\"main\"\n\"1491055\";\"Oyash\";\"other\"\n\"1491055\";\"Stantsionno-Ojasjinskij\";\"other\"\n\"1491055\";\"Станционно-Ояшинский\";\"other\"\n\"1491088\";\"Srostki\";\"main\"\n\"1491088\";\"Srostinskoye\";\"other\"\n\"1491088\";\"Сростки\";\"other\"\n\"1491159\";\"Sredneural’sk\";\"main\"\n\"1491159\";\"Sredneural'sk\";\"ascii\"\n\"1491159\";\"Sredneuralsk\";\"other\"\n\"1491159\";\"Среднеуральск\";\"other\"\n\"1491197\";\"Spassk\";\"main\"\n\"1491197\";\"SPASSK\";\"other\"\n\"1491197\";\"Spasskoye\";\"other\"\n\"1491197\";\"СПАССК\";\"other\"\n\"1491197\";\"Спасск\";\"other\"\n\"1491215\";\"Sovkhoznyy\";\"main\"\n\"1491215\";\"Sovkhoznyj\";\"other\"\n\"1491215\";\"Совхозный\";\"other\"\n\"1491219\";\"Sovetskoye\";\"main\"\n\"1491219\";\"Gryaznukha\";\"other\"\n\"1491219\";\"Sovetskoe\";\"other\"\n\"1491219\";\"Sovetskoje\";\"other\"\n\"1491219\";\"Советское\";\"other\"\n\"1491229\";\"Sovetskiy\";\"main\"\n\"1491229\";\"SOVETSKIJ\";\"other\"\n\"1491229\";\"Sovetskij\";\"other\"\n\"1491229\";\"СОВЕТСКИЙ\";\"other\"\n\"1491229\";\"Советский\";\"other\"\n\"1491230\";\"Sovetskiy\";\"main\"\n\"1491230\";\"SOVETSKIJ\";\"other\"\n\"1491230\";\"Sovetskij\";\"other\"\n\"1491230\";\"СОВЕТСКИЙ\";\"other\"\n\"1491230\";\"Советский\";\"other\"\n\"1491267\";\"Sos’va\";\"main\"\n\"1491267\";\"Sos'va\";\"ascii\"\n\"1491267\";\"Sos'vinskiy Zavod\";\"other\"\n\"1491267\";\"Sosva\";\"other\"\n\"1491267\";\"Sos’vinskiy Zavod\";\"other\"\n\"1491267\";\"Сосьва\";\"other\"\n\"1491291\";\"Sosnovoborsk\";\"main\"\n\"1491291\";\"SOSNOVOBORSK\";\"other\"\n\"1491291\";\"СОСНОВОБОРСК\";\"other\"\n\"1491360\";\"Sorsk\";\"main\"\n\"1491360\";\"Dzerzhinskiy\";\"other\"\n\"1491360\";\"SORSK\";\"other\"\n\"1491360\";\"Sora\";\"other\"\n\"1491360\";\"СОРСК\";\"other\"\n\"1491360\";\"Сорск\";\"other\"\n\"1491378\";\"Sorokino\";\"main\"\n\"1491378\";\"Сорокино\";\"other\"\n\"1491428\";\"Solton\";\"main\"\n\"1491428\";\"Soltonskoye\";\"other\"\n\"1491428\";\"Солтон\";\"other\"\n\"1491461\";\"Soloneshnoye\";\"main\"\n\"1491461\";\"Solnechnoye\";\"other\"\n\"1491461\";\"Solonesjnoje\";\"other\"\n\"1491461\";\"Soloreshnoye\";\"other\"\n\"1491461\";\"Солонешное\";\"other\"\n\"1491525\";\"Sokur\";\"main\"\n\"1491525\";\"Novyy Sokur\";\"other\"\n\"1491525\";\"Сокур\";\"other\"\n\"1491535\";\"Sokolovo\";\"main\"\n\"1491535\";\"Sonolovo\";\"other\"\n\"1491535\";\"Соколово\";\"other\"\n\"1491600\";\"Snezhnogorsk\";\"main\"\n\"1491600\";\"SNEZHNOGORSK\";\"other\"\n\"1491600\";\"Snezjnogorsk\";\"other\"\n\"1491600\";\"СНЕЖНОГОРСК\";\"other\"\n\"1491633\";\"Smolenskoye\";\"main\"\n\"1491633\";\"Smolenskoe\";\"other\"\n\"1491633\";\"Smolenskoje\";\"other\"\n\"1491633\";\"Смоленское\";\"other\"\n\"1491704\";\"Slavgorodskoye\";\"main\"\n\"1491704\";\"Славгородское\";\"other\"\n\"1491706\";\"Slavgorod\";\"main\"\n\"1491706\";\"SLAVGOROD\";\"other\"\n\"1491706\";\"Slavgorodskoe\";\"other\"\n\"1491706\";\"Sslawgorod\";\"other\"\n\"1491706\";\"СЛАВГОРОД\";\"other\"\n\"1491706\";\"Славгород\";\"other\"\n\"1491706\";\"Славгородское\";\"other\"\n\"1491719\";\"Sladkovo\";\"main\"\n\"1491719\";\"Sladkovskoye\";\"other\"\n\"1491719\";\"Сладково\";\"other\"\n\"1491953\";\"Shushenskoye\";\"main\"\n\"1491953\";\"SHUSHENSKOE\";\"other\"\n\"1491953\";\"Shush\";\"other\"\n\"1491953\";\"Shushinskoe\";\"other\"\n\"1491953\";\"Sjusjenskoje\";\"other\"\n\"1491953\";\"ШУШЕНСКОЕ\";\"other\"\n\"1491977\";\"Shumskiy\";\"main\"\n\"1491977\";\"SHUMSKIJ\";\"other\"\n\"1491977\";\"Sjumskij\";\"other\"\n\"1491977\";\"ШУМСКИЙ\";\"other\"\n\"1491999\";\"Shumikha\";\"main\"\n\"1491999\";\"SHUMIKHA\";\"other\"\n\"1491999\";\"Schumicha\";\"other\"\n\"1491999\";\"Sjumikha\";\"other\"\n\"1491999\";\"ШУМИХА\";\"other\"\n\"1491999\";\"Шумиха\";\"other\"\n\"1492110\";\"Shitkino\";\"main\"\n\"1492110\";\"SHITKINO\";\"other\"\n\"1492110\";\"Shitka\";\"other\"\n\"1492110\";\"Shitkina\";\"other\"\n\"1492110\";\"Sjitkino\";\"other\"\n\"1492110\";\"ШИТКИНО\";\"other\"\n\"1492110\";\"Шиткино\";\"other\"\n\"1492142\";\"Shirokaya Rechka\";\"main\"\n\"1492142\";\"Sjirokaja-Retsjka\";\"other\"\n\"1492142\";\"Широкая Речка\";\"other\"\n\"1492149\";\"Shira\";\"main\"\n\"1492149\";\"Chiro\";\"other\"\n\"1492149\";\"SHIRA\";\"other\"\n\"1492149\";\"Sjira\";\"other\"\n\"1492149\";\"ШИРА\";\"other\"\n\"1492149\";\"Шира\";\"other\"\n\"1492160\";\"Shipunovo\";\"main\"\n\"1492160\";\"SHIPUNOVO\";\"other\"\n\"1492160\";\"Sjipunovo\";\"other\"\n\"1492160\";\"ШИПУНОВО\";\"other\"\n\"1492160\";\"Шипуново\";\"other\"\n\"1492252\";\"Sheregesh\";\"main\"\n\"1492252\";\"SHEREGESH\";\"other\"\n\"1492252\";\"Sjeregesj\";\"other\"\n\"1492252\";\"ШЕРЕГЕШ\";\"other\"\n\"1492252\";\"Шерегеш\";\"other\"\n\"1492255\";\"Sherbakul’\";\"main\"\n\"1492255\";\"Sherbakul'\";\"ascii\"\n\"1492255\";\"Sjerbakul\";\"other\"\n\"1492255\";\"Шербакуль\";\"other\"\n\"1492281\";\"Shelabolikha\";\"main\"\n\"1492281\";\"Sjelabolikha\";\"other\"\n\"1492281\";\"Шелаболиха\";\"other\"\n\"1492299\";\"Shebalino\";\"main\"\n\"1492299\";\"Shebilano\";\"other\"\n\"1492299\";\"Sjebalino\";\"other\"\n\"1492299\";\"Шебалино\";\"other\"\n\"1492342\";\"Shchelkun\";\"main\"\n\"1492342\";\"Shchelkunskoye\";\"other\"\n\"1492342\";\"Sjtsjelkun\";\"other\"\n\"1492342\";\"Щелкун\";\"other\"\n\"1492388\";\"Shatrovo\";\"main\"\n\"1492388\";\"Sjatrovo\";\"other\"\n\"1492388\";\"Шатрово\";\"other\"\n\"1492401\";\"Sharypovo\";\"main\"\n\"1492401\";\"Chernenko\";\"other\"\n\"1492401\";\"SHARYPOVO\";\"other\"\n\"1492401\";\"Sharypovskoye\";\"other\"\n\"1492401\";\"Sjarypovo\";\"other\"\n\"1492401\";\"ШАРЫПОВО\";\"other\"\n\"1492466\";\"Shalinskoye\";\"main\"\n\"1492466\";\"Shalinskoe\";\"other\"\n\"1492466\";\"Sjalinskoje\";\"other\"\n\"1492466\";\"Шалинское\";\"other\"\n\"1492499\";\"Shagonar\";\"main\"\n\"1492499\";\"Shagaan-Aryg\";\"other\"\n\"1492499\";\"Shagak-Arig\";\"other\"\n\"1492499\";\"Shagan-Aryg\";\"other\"\n\"1492499\";\"Shagokar\";\"other\"\n\"1492499\";\"Sjagonar\";\"other\"\n\"1492499\";\"Шагонар\";\"other\"\n\"1492517\";\"Shadrinsk\";\"main\"\n\"1492517\";\"SHADRINSK\";\"other\"\n\"1492517\";\"Schadrinsk\";\"other\"\n\"1492517\";\"Sjadrinsk\";\"other\"\n\"1492517\";\"ШАДРИНСК\";\"other\"\n\"1492517\";\"Шадринск\";\"other\"\n\"1492536\";\"Shabrovskiy\";\"main\"\n\"1492536\";\"Pereskachka\";\"other\"\n\"1492536\";\"SHABROVSKIJ\";\"other\"\n\"1492536\";\"Sjabrovskij\";\"other\"\n\"1492536\";\"ШАБРОВСКИЙ\";\"other\"\n\"1492536\";\"Шабровский\";\"other\"\n\"1492566\";\"Severo-Yeniseyskiy\";\"main\"\n\"1492566\";\"Severo-Enisejskij\";\"other\"\n\"1492566\";\"Severo-Jenisejskij\";\"other\"\n\"1492566\";\"Severo-Yeniseiki\";\"other\"\n\"1492566\";\"Severo-Yeniseysk\";\"other\"\n\"1492566\";\"Северо-Енисейский\";\"other\"\n\"1492607\";\"Severnoye\";\"main\"\n\"1492607\";\"Severnoje\";\"other\"\n\"1492607\";\"Северное\";\"other\"\n\"1492637\";\"Severka\";\"main\"\n\"1492637\";\"SEVERKA\";\"other\"\n\"1492637\";\"СЕВЕРКА\";\"other\"\n\"1492637\";\"Северка\";\"other\"\n\"1492663\";\"Serov\";\"main\"\n\"1492663\";\"Kabakovsk\";\"other\"\n\"1492663\";\"Nadezhdinsk\";\"other\"\n\"1492663\";\"SEROV\";\"other\"\n\"1492663\";\"СЕРОВ\";\"other\"\n\"1492663\";\"Серов\";\"other\"\n\"1492827\";\"Novoseleznëvo\";\"main\"\n\"1492827\";\"Novoseleznevo\";\"ascii\"\n\"1492827\";\"Selezneva\";\"other\"\n\"1492827\";\"Seleznevo\";\"other\"\n\"1492827\";\"Seleznëva\";\"other\"\n\"1492827\";\"Seleznëvo\";\"other\"\n\"1492827\";\"Новоселезнево\";\"other\"\n\"1492827\";\"Новоселезнёво\";\"other\"\n\"1492891\";\"Sayansk\";\"main\"\n\"1492891\";\"Sajansk\";\"other\"\n\"1492891\";\"Sajanskij\";\"other\"\n\"1492891\";\"Sayanskiy\";\"other\"\n\"1492891\";\"Саянск\";\"other\"\n\"1492891\";\"Саянский\";\"other\"\n\"1492893\";\"Sayanogorsk\";\"main\"\n\"1492893\";\"Oznachennaya\";\"other\"\n\"1492893\";\"Oznachennoye\";\"other\"\n\"1492893\";\"SAJANOGORSK\";\"other\"\n\"1492893\";\"Sajanogorsk\";\"other\"\n\"1492893\";\"САЯНОГОРСК\";\"other\"\n\"1492893\";\"Саяногорск\";\"other\"\n\"1492948\";\"Saryg-Sep\";\"main\"\n\"1492948\";\"Saryy-Sey\";\"other\"\n\"1492948\";\"Saryye-Sep\";\"other\"\n\"1492948\";\"Znamenka\";\"other\"\n\"1492948\";\"Znamenskiy\";\"other\"\n\"1492948\";\"Сарыг-Сеп\";\"other\"\n\"1493004\";\"Sargatskoye\";\"main\"\n\"1493004\";\"Poselkovo-Sargatskoye\";\"other\"\n\"1493004\";\"SARGATSKOE\";\"other\"\n\"1493004\";\"Sargatka\";\"other\"\n\"1493004\";\"Sargatskoje\";\"other\"\n\"1493004\";\"САРГАТСКОЕ\";\"other\"\n\"1493004\";\"Саргатское\";\"other\"\n\"1493049\";\"Saranpaul’\";\"main\"\n\"1493049\";\"Saranpaul'\";\"ascii\"\n\"1493049\";\"Saranpaul\";\"other\"\n\"1493049\";\"Саранпауль\";\"other\"\n\"1493110\";\"Samus’\";\"main\"\n\"1493110\";\"Samus'\";\"ascii\"\n\"1493110\";\"SAMUS'\";\"other\"\n\"1493110\";\"Samus\";\"other\"\n\"1493110\";\"Zaton Samus'kin\";\"other\"\n\"1493110\";\"Zaton Samus’kin\";\"other\"\n\"1493110\";\"САМУСЬ\";\"other\"\n\"1493155\";\"Samagaltay\";\"main\"\n\"1493155\";\"Samagalday\";\"other\"\n\"1493155\";\"Samagaltaj\";\"other\"\n\"1493155\";\"Samgaltay\";\"other\"\n\"1493155\";\"Самагалтай\";\"other\"\n\"1493162\";\"Salym\";\"main\"\n\"1493162\";\"Kintus\";\"other\"\n\"1493162\";\"Салым\";\"other\"\n\"1493197\";\"Salekhard\";\"main\"\n\"1493197\";\"Obdorsk\";\"other\"\n\"1493197\";\"Obdorsr\";\"other\"\n\"1493197\";\"Salechard\";\"other\"\n\"1493197\";\"Salechardas\";\"other\"\n\"1493197\";\"Salehard\";\"other\"\n\"1493197\";\"Saleĥard\";\"other\"\n\"1493197\";\"sallehaleuteu\";\"other\"\n\"1493197\";\"sareharudo\";\"other\"\n\"1493197\";\"slhrd\";\"other\"\n\"1493197\";\"Обдорск\";\"other\"\n\"1493197\";\"Салехард\";\"other\"\n\"1493197\";\"סלחרד\";\"other\"\n\"1493197\";\"サレハルド\";\"other\"\n\"1493197\";\"살레하르트\";\"other\"\n\"1493224\";\"Salair\";\"main\"\n\"1493224\";\"SALAIR\";\"other\"\n\"1493224\";\"Salairskoye\";\"other\"\n\"1493224\";\"САЛАИР\";\"other\"\n\"1493224\";\"Салаир\";\"other\"\n\"1493268\";\"Safakulevo\";\"main\"\n\"1493268\";\"Safakulewo\";\"other\"\n\"1493268\";\"Sayakulevo\";\"other\"\n\"1493268\";\"Сафакулево\";\"other\"\n\"1493273\";\"Sovkhoznyy\";\"main\"\n\"1493273\";\"Sadovyy\";\"other\"\n\"1493273\";\"Sverdlovskiy\";\"other\"\n\"1493273\";\"Совхозный\";\"other\"\n\"1493423\";\"Russkaya Polyana\";\"main\"\n\"1493423\";\"RUSSKAJA POLJANA\";\"other\"\n\"1493423\";\"Russkaja Poljana\";\"other\"\n\"1493423\";\"РУССКАЯ ПОЛЯНА\";\"other\"\n\"1493423\";\"Русская Поляна\";\"other\"\n\"1493457\";\"Rudnichnyy\";\"main\"\n\"1493457\";\"Auerbach\";\"other\"\n\"1493457\";\"Auerbakhovskoye\";\"other\"\n\"1493457\";\"RUDNICHNYJ\";\"other\"\n\"1493457\";\"Rudniki\";\"other\"\n\"1493457\";\"Rudnitsjnyj\";\"other\"\n\"1493457\";\"РУДНИЧНЫЙ\";\"other\"\n\"1493457\";\"Рудничный\";\"other\"\n\"1493458\";\"Rudnichnyy\";\"main\"\n\"1493458\";\"Рудничный\";\"other\"\n\"1493467\";\"Rubtsovsk\";\"main\"\n\"1493467\";\"RUBCOVSK\";\"other\"\n\"1493467\";\"Rubcovsk\";\"other\"\n\"1493467\";\"Rustovsk\";\"other\"\n\"1493467\";\"lubchopeuseukeu\";\"other\"\n\"1493467\";\"РУБЦОВСК\";\"other\"\n\"1493467\";\"Рубцовск\";\"other\"\n\"1493467\";\"룹초프스크\";\"other\"\n\"1493511\";\"Roza\";\"main\"\n\"1493511\";\"Rosa\";\"other\"\n\"1493511\";\"Роза\";\"other\"\n\"1493523\";\"Rostovka\";\"main\"\n\"1493523\";\"Ростовка\";\"other\"\n\"1493577\";\"Romanovo\";\"main\"\n\"1493577\";\"Romanovka\";\"other\"\n\"1493577\";\"Romanovskiy\";\"other\"\n\"1493577\";\"Romanovskoye\";\"other\"\n\"1493577\";\"Романово\";\"other\"\n\"1493623\";\"Rodino\";\"main\"\n\"1493623\";\"Родино\";\"other\"\n\"1493648\";\"Rezh\";\"main\"\n\"1493648\";\"REZH\";\"other\"\n\"1493648\";\"Rezj\";\"other\"\n\"1493648\";\"РЕЖ\";\"other\"\n\"1493648\";\"Реж\";\"other\"\n\"1493687\";\"Reftinskiy\";\"main\"\n\"1493687\";\"REFTINSKIJ\";\"other\"\n\"1493687\";\"Reftinskij\";\"other\"\n\"1493687\";\"РЕФТИНСКИЙ\";\"other\"\n\"1493687\";\"Рефтинский\";\"other\"\n\"1493722\";\"Rebrikha\";\"main\"\n\"1493722\";\"Ребриха\";\"other\"\n\"1493756\";\"Razdolinsk\";\"main\"\n\"1493756\";\"RAZDOLINSK\";\"other\"\n\"1493756\";\"Razdol'stroy\";\"other\"\n\"1493756\";\"РАЗДОЛИНСК\";\"other\"\n\"1493783\";\"Rassvet\";\"main\"\n\"1493783\";\"RASSVET\";\"other\"\n\"1493783\";\"Spasovka\";\"other\"\n\"1493783\";\"РАССВЕТ\";\"other\"\n\"1493870\";\"Pyshma\";\"main\"\n\"1493870\";\"PYSHMA\";\"other\"\n\"1493870\";\"Pysjma\";\"other\"\n\"1493870\";\"ПЫШМА\";\"other\"\n\"1493870\";\"Пышма\";\"other\"\n\"1494071\";\"Prosvet\";\"main\"\n\"1494071\";\"Просвет\";\"other\"\n\"1494088\";\"Promyshlennyy\";\"main\"\n\"1494088\";\"PROMYSHLENNYJ\";\"other\"\n\"1494088\";\"Promyshlenyy\";\"other\"\n\"1494088\";\"Promysjlennyj\";\"other\"\n\"1494088\";\"ПРОМЫШЛЕННЫЙ\";\"other\"\n\"1494088\";\"Промышленный\";\"other\"\n\"1494090\";\"Promyshlennovskiy\";\"main\"\n\"1494090\";\"Bol'shaya Promyshlenka\";\"other\"\n\"1494090\";\"Bol'she-Promyshlenka'\";\"other\"\n\"1494090\";\"Bol’shaya Promyshlenka\";\"other\"\n\"1494090\";\"Bol’she-Promyshlenka’\";\"other\"\n\"1494090\";\"PROMYSHLENNOVSKIJ\";\"other\"\n\"1494090\";\"Promysjlennovskij\";\"other\"\n\"1494090\";\"ПРОМЫШЛЕННОВСКИЙ\";\"other\"\n\"1494090\";\"Промышленновский\";\"other\"\n\"1494091\";\"Promyshlennaya\";\"main\"\n\"1494091\";\"PROMYSHLENNAJA\";\"other\"\n\"1494091\";\"Promysjlennaja\";\"other\"\n\"1494091\";\"ПРОМЫШЛЕННАЯ\";\"other\"\n\"1494091\";\"Промышленная\";\"other\"\n\"1494111\";\"Prokudskoye\";\"main\"\n\"1494111\";\"Prokudskoje\";\"other\"\n\"1494111\";\"Прокудское\";\"other\"\n\"1494114\";\"Prokop’yevsk\";\"main\"\n\"1494114\";\"Prokop'yevsk\";\"ascii\"\n\"1494114\";\"PROKOP'EVSK\";\"other\"\n\"1494114\";\"Prokop'yevo\";\"other\"\n\"1494114\";\"Prokop'yevskiy\";\"other\"\n\"1494114\";\"Prokopjevsk\";\"other\"\n\"1494114\";\"Prokop’yevo\";\"other\"\n\"1494114\";\"Prokop’yevskiy\";\"other\"\n\"1494114\";\"Prokoyevsk\";\"other\"\n\"1494114\";\"ПРОКОПЬЕВСК\";\"other\"\n\"1494114\";\"Прокопьевск\";\"other\"\n\"1494156\";\"Pritomskiy\";\"main\"\n\"1494156\";\"PRITOMSKIJ\";\"other\"\n\"1494156\";\"Pritomskij\";\"other\"\n\"1494156\";\"ПРИТОМСКИЙ\";\"other\"\n\"1494156\";\"Притомский\";\"other\"\n\"1494190\";\"Priiskovyy\";\"main\"\n\"1494190\";\"Andreyevskiy\";\"other\"\n\"1494190\";\"PRIISKOVYJ\";\"other\"\n\"1494190\";\"Priiskovy\";\"other\"\n\"1494190\";\"Priiskovyj\";\"other\"\n\"1494190\";\"ПРИИСКОВЫЙ\";\"other\"\n\"1494190\";\"Приисковый\";\"other\"\n\"1494237\";\"Predivinsk\";\"main\"\n\"1494237\";\"PREDIVINSK\";\"other\"\n\"1494237\";\"ПРЕДИВИНСК\";\"other\"\n\"1494276\";\"Poykovskiy\";\"main\"\n\"1494276\";\"Pojkovskij\";\"other\"\n\"1494276\";\"Пойковский\";\"other\"\n\"1494309\";\"Potanino\";\"main\"\n\"1494309\";\"Потанино\";\"other\"\n\"1494331\";\"Pospelikha\";\"main\"\n\"1494331\";\"POSPELIKHA\";\"other\"\n\"1494331\";\"ПОСПЕЛИХА\";\"other\"\n\"1494331\";\"Поспелиха\";\"other\"\n\"1494456\";\"Polysayevo\";\"main\"\n\"1494456\";\"POLYSAEVO\";\"other\"\n\"1494456\";\"Polysajevo\";\"other\"\n\"1494456\";\"Polysayeva\";\"other\"\n\"1494456\";\"ПОЛЫСАЕВО\";\"other\"\n\"1494456\";\"Полысаево\";\"other\"\n\"1494482\";\"Polunochnoye\";\"main\"\n\"1494482\";\"POLUNOCHNOE\";\"other\"\n\"1494482\";\"Polunochnaya\";\"other\"\n\"1494482\";\"Polunotsjnoje\";\"other\"\n\"1494482\";\"Polynochye\";\"other\"\n\"1494482\";\"ПОЛУНОЧНОЕ\";\"other\"\n\"1494482\";\"Полуночное\";\"other\"\n\"1494500\";\"Poltavka\";\"main\"\n\"1494500\";\"POLTAVKA\";\"other\"\n\"1494500\";\"ПОЛТАВКА\";\"other\"\n\"1494500\";\"Полтавка\";\"other\"\n\"1494523\";\"Polovinnoye\";\"main\"\n\"1494523\";\"Polovinnoje\";\"other\"\n\"1494523\";\"Половинное\";\"other\"\n\"1494525\";\"Polovinnoye\";\"main\"\n\"1494525\";\"Polovinnaya\";\"other\"\n\"1494525\";\"Polovinnoje\";\"other\"\n\"1494525\";\"Половинное\";\"other\"\n\"1494573\";\"Polevskoy\";\"main\"\n\"1494573\";\"POLEVSKOJ\";\"other\"\n\"1494573\";\"Polevskoj\";\"other\"\n\"1494573\";\"Tolevskoy\";\"other\"\n\"1494573\";\"ПОЛЕВСКОЙ\";\"other\"\n\"1494573\";\"Полевской\";\"other\"\n\"1494587\";\"Poletayevo\";\"main\"\n\"1494587\";\"Poletajevo\";\"other\"\n\"1494587\";\"Poletayevo Pervoye\";\"other\"\n\"1494587\";\"Полетаево\";\"other\"\n\"1494603\";\"Pokrovskoye\";\"main\"\n\"1494603\";\"Pokrovskoje\";\"other\"\n\"1494603\";\"Покровское\";\"other\"\n\"1494745\";\"Podsineye\";\"main\"\n\"1494745\";\"Podsineje\";\"other\"\n\"1494745\";\"Podsinyaya\";\"other\"\n\"1494745\";\"Подсинее\";\"other\"\n\"1494790\";\"Podgornoye\";\"main\"\n\"1494790\";\"Podgornoje\";\"other\"\n\"1494790\";\"Подгорное\";\"other\"\n\"1494907\";\"Plast\";\"main\"\n\"1494907\";\"Пласт\";\"other\"\n\"1494941\";\"Pirovskoye\";\"main\"\n\"1494941\";\"Pirovsk\";\"other\"\n\"1494941\";\"Pirovskoe\";\"other\"\n\"1494941\";\"Pirovskoje\";\"other\"\n\"1494941\";\"Пировское\";\"other\"\n\"1494949\";\"Pionerskiy\";\"main\"\n\"1494949\";\"PIONERSKIJ\";\"other\"\n\"1494949\";\"Pionerskij\";\"other\"\n\"1494949\";\"ПИОНЕРСКИЙ\";\"other\"\n\"1494949\";\"Пионерский\";\"other\"\n\"1494955\";\"Pioner\";\"main\"\n\"1494955\";\"PIONER\";\"other\"\n\"1494955\";\"ПИОНЕР\";\"other\"\n\"1494955\";\"Пионер\";\"other\"\n\"1495022\";\"Petukhovo\";\"main\"\n\"1495022\";\"Yudino\";\"other\"\n\"1495022\";\"Петухово\";\"other\"\n\"1495101\";\"Petropavlovskoye\";\"main\"\n\"1495101\";\"Petropavlovskoje\";\"other\"\n\"1495101\";\"Петропавловское\";\"other\"\n\"1495144\";\"Petrokamenskoye\";\"main\"\n\"1495144\";\"Petrokamenskoje\";\"other\"\n\"1495144\";\"Петрокаменское\";\"other\"\n\"1495256\";\"Pervomayskoye\";\"main\"\n\"1495256\";\"Pervomajskoje\";\"other\"\n\"1495256\";\"Pyshkino-Troitskoye\";\"other\"\n\"1495256\";\"Первомайское\";\"other\"\n\"1495259\";\"Pervomayskoye\";\"main\"\n\"1495259\";\"Pervomajskoje\";\"other\"\n\"1495259\";\"Sredne-Krayushkino\";\"other\"\n\"1495259\";\"Первомайское\";\"other\"\n\"1495260\";\"Pervomayskiy\";\"main\"\n\"1495260\";\"Pervomayskoye\";\"other\"\n\"1495260\";\"Первомайский\";\"other\"\n\"1495385\";\"Pelym\";\"main\"\n\"1495385\";\"PELYM\";\"other\"\n\"1495385\";\"ПЕЛЫМ\";\"other\"\n\"1495385\";\"Пелым\";\"other\"\n\"1495448\";\"Pavlovsk\";\"main\"\n\"1495448\";\"PAVLOVSK\";\"other\"\n\"1495448\";\"Pavlovskoye\";\"other\"\n\"1495448\";\"ПАВЛОВСК\";\"other\"\n\"1495448\";\"Павловск\";\"other\"\n\"1495480\";\"Pavlogradka\";\"main\"\n\"1495480\";\"PAVLOGRADKA\";\"other\"\n\"1495480\";\"Pavlodarka\";\"other\"\n\"1495480\";\"Pavlogradskoye\";\"other\"\n\"1495480\";\"ПАВЛОГРАДКА\";\"other\"\n\"1495480\";\"Павлоградка\";\"other\"\n\"1495538\";\"Partizanskoye\";\"main\"\n\"1495538\";\"Partizanskoe\";\"other\"\n\"1495538\";\"Partizanskoje\";\"other\"\n\"1495538\";\"Perovo\";\"other\"\n\"1495538\";\"Партизанское\";\"other\"\n\"1495561\";\"Parizh\";\"main\"\n\"1495561\";\"Parizhskiy\";\"other\"\n\"1495561\";\"Parizj\";\"other\"\n\"1495561\";\"Париж\";\"other\"\n\"1495586\";\"Parabel’\";\"main\"\n\"1495586\";\"Parabel'\";\"ascii\"\n\"1495586\";\"Parabel\";\"other\"\n\"1495586\";\"Парабель\";\"other\"\n\"1495613\";\"Pankrushikha\";\"main\"\n\"1495613\";\"Pankrusjikha\";\"other\"\n\"1495613\";\"Панкрушиха\";\"other\"\n\"1495626\";\"Pangody\";\"main\"\n\"1495626\";\"Пангоды\";\"other\"\n\"1495797\";\"Ovsyanka\";\"main\"\n\"1495797\";\"OVSJANKA\";\"other\"\n\"1495797\";\"Ovsianka\";\"other\"\n\"1495797\";\"ОВСЯНКА\";\"other\"\n\"1495812\";\"Ous\";\"main\"\n\"1495812\";\"OUS\";\"other\"\n\"1495812\";\"ОУС\";\"other\"\n\"1495812\";\"Оус\";\"other\"\n\"1495974\";\"Osinniki\";\"main\"\n\"1495974\";\"OSINNIKI\";\"other\"\n\"1495974\";\"ОСИННИКИ\";\"other\"\n\"1495974\";\"Осинники\";\"other\"\n\"1496073\";\"Orlik\";\"main\"\n\"1496073\";\"Орлик\";\"other\"\n\"1496100\";\"Ordynskoye\";\"main\"\n\"1496100\";\"ORDYNSKOE\";\"other\"\n\"1496100\";\"Ordiinskoe\";\"other\"\n\"1496100\";\"Ordinskoe\";\"other\"\n\"1496100\";\"Ordinskoje\";\"other\"\n\"1496100\";\"Ordynskoje\";\"other\"\n\"1496100\";\"ОРДЫНСКОЕ\";\"other\"\n\"1496100\";\"Ордынское\";\"other\"\n\"1496124\";\"Onokhino\";\"main\"\n\"1496124\";\"Onokhina\";\"other\"\n\"1496124\";\"Онохино\";\"other\"\n\"1496130\";\"Onguday\";\"main\"\n\"1496130\";\"Ongudaj\";\"other\"\n\"1496130\";\"Онгудай\";\"other\"\n\"1496142\";\"Omutinskiy\";\"main\"\n\"1496142\";\"OMUTINSKIJ\";\"other\"\n\"1496142\";\"Omutinskoe\";\"other\"\n\"1496142\";\"Omutinskoye\";\"other\"\n\"1496142\";\"Omutinsnoye\";\"other\"\n\"1496142\";\"ОМУТИНСКИЙ\";\"other\"\n\"1496142\";\"Омутинский\";\"other\"\n\"1496142\";\"Омутинское\";\"other\"\n\"1496153\";\"Omsk\";\"main\"\n\"1496153\";\"Oms'k\";\"other\"\n\"1496153\";\"Omsc\";\"other\"\n\"1496153\";\"Omska\";\"other\"\n\"1496153\";\"Omszk\";\"other\"\n\"1496153\";\"e mu si ke\";\"other\"\n\"1496153\";\"omseukeu\";\"other\"\n\"1496153\";\"omusuku\";\"other\"\n\"1496153\";\"Ομσκ\";\"other\"\n\"1496153\";\"Омск\";\"other\"\n\"1496153\";\"Омськ\";\"other\"\n\"1496153\";\"אומסק\";\"other\"\n\"1496153\";\"オムスク\";\"other\"\n\"1496153\";\"鄂木斯克\";\"other\"\n\"1496153\";\"옴스크\";\"other\"\n\"1496329\";\"Okoneshnikovo\";\"main\"\n\"1496329\";\"Okoneshninovo\";\"other\"\n\"1496329\";\"Okonesjnikovo\";\"other\"\n\"1496329\";\"Оконешниково\";\"other\"\n\"1496380\";\"Odesskoye\";\"main\"\n\"1496380\";\"Odesskoje\";\"other\"\n\"1496380\";\"Одесское\";\"other\"\n\"1496421\";\"Ob’\";\"main\"\n\"1496421\";\"Ob'\";\"ascii\"\n\"1496421\";\"OB'\";\"other\"\n\"1496421\";\"Ob\";\"other\"\n\"1496421\";\"ОБЬ\";\"other\"\n\"1496421\";\"Обь\";\"other\"\n\"1496441\";\"Nyda\";\"main\"\n\"1496441\";\"Ныда\";\"other\"\n\"1496476\";\"Nyagan’\";\"main\"\n\"1496476\";\"Nyagan'\";\"ascii\"\n\"1496476\";\"Nagin\";\"other\"\n\"1496476\";\"Njagan\";\"other\"\n\"1496476\";\"Nyakh\";\"other\"\n\"1496476\";\"Nyakhyn'\";\"other\"\n\"1496476\";\"Nyakhyn’\";\"other\"\n\"1496476\";\"Yurty Nyagin\";\"other\"\n\"1496476\";\"Нягань\";\"other\"\n\"1496503\";\"Noyabr'sk\";\"main\"\n\"1496503\";\"NOJABR'SK\";\"other\"\n\"1496503\";\"Nojabr'sk\";\"other\"\n\"1496503\";\"НОЯБРЬСК\";\"other\"\n\"1496503\";\"Ноябрьск\";\"other\"\n\"1496511\";\"Novyy Urengoy\";\"main\"\n\"1496511\";\"Novyj Urengoj\";\"other\"\n\"1496511\";\"Новый Уренгой\";\"other\"\n\"1496588\";\"Novaya Zaimka\";\"main\"\n\"1496588\";\"Nov.Zaimka\";\"other\"\n\"1496588\";\"Novozaimka\";\"other\"\n\"1496588\";\"Нов.Заимка\";\"other\"\n\"1496588\";\"Новая Заимка\";\"other\"\n\"1496633\";\"Novovarshavka\";\"main\"\n\"1496633\";\"Novovarsjavka\";\"other\"\n\"1496633\";\"Нововаршавка\";\"other\"\n\"1496738\";\"Novosineglazovskiy\";\"main\"\n\"1496738\";\"NOVOSINEGLAZOVSKIJ\";\"other\"\n\"1496738\";\"Novosineglazovskij\";\"other\"\n\"1496738\";\"Sineglazovo\";\"other\"\n\"1496738\";\"НОВОСИНЕГЛАЗОВСКИЙ\";\"other\"\n\"1496738\";\"Новосинеглазовский\";\"other\"\n\"1496739\";\"Novosilikatnyy\";\"main\"\n\"1496739\";\"NOVOSILIKATNYJ\";\"other\"\n\"1496739\";\"Novosilikatnyj\";\"other\"\n\"1496739\";\"НОВОСИЛИКАТНЫЙ\";\"other\"\n\"1496739\";\"Новосиликатный\";\"other\"\n\"1496747\";\"Novosibirsk\";\"main\"\n\"1496747\";\"Nobosimpirsk\";\"other\"\n\"1496747\";\"Novo-Nikolaevsk\";\"other\"\n\"1496747\";\"Novo-Nikolaievsk\";\"other\"\n\"1496747\";\"Novo-Nikolaïevsk\";\"other\"\n\"1496747\";\"Novonikolaevsk\";\"other\"\n\"1496747\";\"Novonikolayevsk\";\"other\"\n\"1496747\";\"Novosibirscum\";\"other\"\n\"1496747\";\"Novosibirska\";\"other\"\n\"1496747\";\"Novosimpirsk\";\"other\"\n\"1496747\";\"Novossibirsk\";\"other\"\n\"1496747\";\"Novoszibirszk\";\"other\"\n\"1496747\";\"Nowosibirsk\";\"other\"\n\"1496747\";\"Nowosybirsk\";\"other\"\n\"1496747\";\"nobosibileuseukeu\";\"other\"\n\"1496747\";\"novosiBIRSK\";\"other\"\n\"1496747\";\"novu~oshibirusuku\";\"other\"\n\"1496747\";\"nwbwsybyrsq\";\"other\"\n\"1496747\";\"xin xi bo li ya\";\"other\"\n\"1496747\";\"Νοβοσιμπίρσκ\";\"other\"\n\"1496747\";\"Νοβοσιμπιρσκ\";\"other\"\n\"1496747\";\"Новониколаевск\";\"other\"\n\"1496747\";\"Новосибирск\";\"other\"\n\"1496747\";\"Новосибірськ\";\"other\"\n\"1496747\";\"נובוסיבירסק\";\"other\"\n\"1496747\";\"ノヴォシビルスク\";\"other\"\n\"1496747\";\"新西伯利亞\";\"other\"\n\"1496747\";\"노보시비르스크\";\"other\"\n\"1496889\";\"Novoomskiy\";\"main\"\n\"1496889\";\"Novoomskij\";\"other\"\n\"1496889\";\"Новоомский\";\"other\"\n\"1496976\";\"Novolugovoye\";\"main\"\n\"1496976\";\"Novaya Lugovaya\";\"other\"\n\"1496976\";\"Novolugovoje\";\"other\"\n\"1496976\";\"Novolugovskoye\";\"other\"\n\"1496976\";\"Новолуговое\";\"other\"\n\"1496990\";\"Novokuznetsk\";\"main\"\n\"1496990\";\"Kuvnetsk\";\"other\"\n\"1496990\";\"Kuznetsk\";\"other\"\n\"1496990\";\"Kuznetsk-Sibirskiy\";\"other\"\n\"1496990\";\"Novokoeznetsk\";\"other\"\n\"1496990\";\"Novokuzneck\";\"other\"\n\"1496990\";\"Novokuznjeck\";\"other\"\n\"1496990\";\"Novokuzněck\";\"other\"\n\"1496990\";\"Nowokusnezk\";\"other\"\n\"1496990\";\"Nowokuznieck\";\"other\"\n\"1496990\";\"Nowokuźnieck\";\"other\"\n\"1496990\";\"Stalinsk\";\"other\"\n\"1496990\";\"nobokujeunecheukeu\";\"other\"\n\"1496990\";\"novu~okuzunetsuku\";\"other\"\n\"1496990\";\"Новокузнецк\";\"other\"\n\"1496990\";\"Новокузњецк\";\"other\"\n\"1496990\";\"Сталинск\";\"other\"\n\"1496990\";\"ノヴォクズネツク\";\"other\"\n\"1496990\";\"노보쿠즈네츠크\";\"other\"\n\"1497095\";\"Novogornyy\";\"main\"\n\"1497095\";\"NOVOGORNYJ\";\"other\"\n\"1497095\";\"Novogornyj\";\"other\"\n\"1497095\";\"НОВОГОРНЫЙ\";\"other\"\n\"1497095\";\"Новогорный\";\"other\"\n\"1497132\";\"Novochernorechenskiy\";\"main\"\n\"1497132\";\"NOVOCHERNORECHENSKIJ\";\"other\"\n\"1497132\";\"Novochernorechenskoye\";\"other\"\n\"1497132\";\"Novotsjernoretsjenskij\";\"other\"\n\"1497132\";\"НОВОЧЕРНОРЕЧЕНСКИЙ\";\"other\"\n\"1497142\";\"Novobiryusinskiy\";\"main\"\n\"1497142\";\"NOVOBIRJUSINSKIJ\";\"other\"\n\"1497142\";\"Novobirjusinskij\";\"other\"\n\"1497142\";\"Novobiryusinskaya\";\"other\"\n\"1497142\";\"НОВОБИРЮСИНСКИЙ\";\"other\"\n\"1497142\";\"Новобирюсинский\";\"other\"\n\"1497163\";\"Novoasbest\";\"main\"\n\"1497163\";\"Krasnoural'skiy Rudnik\";\"other\"\n\"1497163\";\"Krasnoural’skiy Rudnik\";\"other\"\n\"1497163\";\"NOVOASBEST\";\"other\"\n\"1497163\";\"Novoazbest\";\"other\"\n\"1497163\";\"НОВОАСБЕСТ\";\"other\"\n\"1497163\";\"Новоасбест\";\"other\"\n\"1497173\";\"Novoaltaysk\";\"main\"\n\"1497173\";\"Chesnokovka\";\"other\"\n\"1497173\";\"Chesnokovo\";\"other\"\n\"1497173\";\"Chesnokovskoye\";\"other\"\n\"1497173\";\"NOVOALTAJSK\";\"other\"\n\"1497173\";\"Novoaltajsk\";\"other\"\n\"1497173\";\"noboaltaiseukeu\";\"other\"\n\"1497173\";\"НОВОАЛТАЙСК\";\"other\"\n\"1497173\";\"Новоалтайск\";\"other\"\n\"1497173\";\"노보알타이스크\";\"other\"\n\"1497210\";\"Novoagansk\";\"main\"\n\"1497210\";\"NOVOAGANSK\";\"other\"\n\"1497210\";\"НОВОАГАНСК\";\"other\"\n\"1497210\";\"Новоаганск\";\"other\"\n\"1497220\";\"Novichikha\";\"main\"\n\"1497220\";\"Novitsjikha\";\"other\"\n\"1497220\";\"Новичиха\";\"other\"\n\"1497276\";\"Novaya Lyalya\";\"main\"\n\"1497276\";\"Novaja Ljalja\";\"other\"\n\"1497276\";\"Новая Ляля\";\"other\"\n\"1497337\";\"Noril’sk\";\"main\"\n\"1497337\";\"Noril'sk\";\"ascii\"\n\"1497337\";\"NORIL'SK\";\"other\"\n\"1497337\";\"Norilskoe\";\"other\"\n\"1497337\";\"НОРИЛЬСК\";\"other\"\n\"1497337\";\"Норильск\";\"other\"\n\"1497376\";\"Nizhnyaya Tavda\";\"main\"\n\"1497376\";\"Nizjnjaja Tavda\";\"other\"\n\"1497376\";\"Tavdinskoe\";\"other\"\n\"1497376\";\"Tavdinskoye\";\"other\"\n\"1497376\";\"Нижняя Тавда\";\"other\"\n\"1497393\";\"Nizhnyaya Salda\";\"main\"\n\"1497393\";\"Nizjnjaja Salda\";\"other\"\n\"1497393\";\"Salda\";\"other\"\n\"1497393\";\"Нижняя Салда\";\"other\"\n\"1497397\";\"Nizhnyaya Poyma\";\"main\"\n\"1497397\";\"Nizhnjaja Pojma\";\"other\"\n\"1497397\";\"Nizjnjaja Pojma\";\"other\"\n\"1497397\";\"Нижняя Пойма\";\"other\"\n\"1497406\";\"Nizhnyaya Omka\";\"main\"\n\"1497406\";\"Nizh.Omka\";\"other\"\n\"1497406\";\"Nizhne-Omka\";\"other\"\n\"1497406\";\"Nizhnyaya Omskaya\";\"other\"\n\"1497406\";\"Ниж.Омка\";\"other\"\n\"1497406\";\"Нижняя Омка\";\"other\"\n\"1497497\";\"Nizhniy Ingash\";\"main\"\n\"1497497\";\"NIZH.INGASH\";\"other\"\n\"1497497\";\"Nizhnij Ingash\";\"other\"\n\"1497497\";\"НИЖ.ИНГАШ\";\"other\"\n\"1497497\";\"Нижний Ингаш\";\"other\"\n\"1497543\";\"Nizhnevartovsk\";\"main\"\n\"1497543\";\"NIZHNEVARTOVSK\";\"other\"\n\"1497543\";\"Nijnevartovsk\";\"other\"\n\"1497543\";\"Nischnewartowsk\";\"other\"\n\"1497543\";\"Nizhne-Vartovskaya\";\"other\"\n\"1497543\";\"Nizhne-Vartovskoye\";\"other\"\n\"1497543\";\"Nizhnevartovskiy\";\"other\"\n\"1497543\";\"Nizjnevartovsk\";\"other\"\n\"1497543\";\"Niznevartovsk\";\"other\"\n\"1497543\";\"Nizniewartowsk\";\"other\"\n\"1497543\";\"Niĵnevartovsk\";\"other\"\n\"1497543\";\"Niżniewartowsk\";\"other\"\n\"1497543\";\"Nižnevartovsk\";\"other\"\n\"1497543\";\"nijeunebaleutobseukeu\";\"other\"\n\"1497543\";\"nijinevu~arutofusuku\";\"other\"\n\"1497543\";\"НИЖНЕВАРТОВСК\";\"other\"\n\"1497543\";\"Нижневартовск\";\"other\"\n\"1497543\";\"ニジネヴァルトフスク\";\"other\"\n\"1497543\";\"니즈네바르톱스크\";\"other\"\n\"1497549\";\"Nizhneudinsk\";\"main\"\n\"1497549\";\"NIZHNEUDINSK\";\"other\"\n\"1497549\";\"Nizjneudinsk\";\"other\"\n\"1497549\";\"НИЖНЕУДИНСК\";\"other\"\n\"1497549\";\"Нижнеудинск\";\"other\"\n\"1497654\";\"Nikolo-Pavlovskoye\";\"main\"\n\"1497654\";\"Nikola Pazlovsky\";\"other\"\n\"1497654\";\"Nikolo-Pavlovskoje\";\"other\"\n\"1497654\";\"Николо-Павловское\";\"other\"\n\"1497736\";\"Nikitinskiy\";\"main\"\n\"1497736\";\"Nikitinskij\";\"other\"\n\"1497736\";\"Никитинский\";\"other\"\n\"1497778\";\"Neyvo-Shaytanskiy\";\"main\"\n\"1497778\";\"Nejvo-Sjajtanskij\";\"other\"\n\"1497778\";\"Нейво-Шайтанский\";\"other\"\n\"1497780\";\"Neyvo-Rudyanka\";\"main\"\n\"1497780\";\"Nejvo-Rudjanka\";\"other\"\n\"1497780\";\"Нейво-Рудянка\";\"other\"\n\"1497795\";\"Nev’yansk\";\"main\"\n\"1497795\";\"Nev'yansk\";\"ascii\"\n\"1497795\";\"Nevjansk\";\"other\"\n\"1497795\";\"Невьянск\";\"other\"\n\"1497917\";\"Nefteyugansk\";\"main\"\n\"1497917\";\"NEFTEJUGANSK\";\"other\"\n\"1497917\";\"Neftejugansk\";\"other\"\n\"1497917\";\"НЕФТЕЮГАНСК\";\"other\"\n\"1497917\";\"Нефтеюганск\";\"other\"\n\"1497932\";\"Nazyvayevsk\";\"main\"\n\"1497932\";\"Nazyvajevsk\";\"other\"\n\"1497932\";\"Nazyvayevskaya\";\"other\"\n\"1497932\";\"Novonazyvayevka\";\"other\"\n\"1497932\";\"Novonazyvayevskoye\";\"other\"\n\"1497932\";\"Называевск\";\"other\"\n\"1497951\";\"Nazarovo\";\"main\"\n\"1497951\";\"NAZAROVO\";\"other\"\n\"1497951\";\"НАЗАРОВО\";\"other\"\n\"1497973\";\"Nauchnyy Gorodok\";\"main\"\n\"1497973\";\"Nautsjnyj-Gorodok\";\"other\"\n\"1497973\";\"Научный Городок\";\"other\"\n\"1498027\";\"Nalobikha\";\"main\"\n\"1498027\";\"Налобиха\";\"other\"\n\"1498067\";\"Nagornyy\";\"main\"\n\"1498067\";\"Nagornyj\";\"other\"\n\"1498067\";\"Нагорный\";\"other\"\n\"1498087\";\"Nadym\";\"main\"\n\"1498087\";\"Faktoriya Nadym\";\"other\"\n\"1498087\";\"NADYM\";\"other\"\n\"1498087\";\"НАДЫМ\";\"other\"\n\"1498087\";\"Надым\";\"other\"\n\"1498129\";\"Myski\";\"main\"\n\"1498129\";\"MYSKI\";\"other\"\n\"1498129\";\"МЫСКИ\";\"other\"\n\"1498129\";\"Мыски\";\"other\"\n\"1498161\";\"Muzhi\";\"main\"\n\"1498161\";\"Muzji\";\"other\"\n\"1498161\";\"Мужи\";\"other\"\n\"1498179\";\"Muslyumovo\";\"main\"\n\"1498179\";\"Musljumovo\";\"other\"\n\"1498179\";\"Muslyumova\";\"other\"\n\"1498179\";\"Муслюмово\";\"other\"\n\"1498205\";\"Muromtsevo\";\"main\"\n\"1498205\";\"MUROMCEVO\";\"other\"\n\"1498205\";\"МУРОМЦЕВО\";\"other\"\n\"1498205\";\"Муромцево\";\"other\"\n\"1498248\";\"Mundybash\";\"main\"\n\"1498248\";\"MUNDYBASH\";\"other\"\n\"1498248\";\"Mundybasj\";\"other\"\n\"1498248\";\"МУНДЫБАШ\";\"other\"\n\"1498248\";\"Мундыбаш\";\"other\"\n\"1498283\";\"Mugur-Aksy\";\"main\"\n\"1498283\";\"Мугур-Аксы\";\"other\"\n\"1498314\";\"Motygino\";\"main\"\n\"1498314\";\"MOTYGINO\";\"other\"\n\"1498314\";\"Motygina\";\"other\"\n\"1498314\";\"МОТЫГИНО\";\"other\"\n\"1498365\";\"Moskovskiy\";\"main\"\n\"1498365\";\"Moskovskij\";\"other\"\n\"1498365\";\"Московский\";\"other\"\n\"1498389\";\"Moshkovo\";\"main\"\n\"1498389\";\"Moschkowo\";\"other\"\n\"1498389\";\"Мошково\";\"other\"\n\"1498399\";\"Moryakovskiy Zaton\";\"main\"\n\"1498399\";\"MORJAKOVSKIJ ZATON\";\"other\"\n\"1498399\";\"Morjakovskij Zaton\";\"other\"\n\"1498399\";\"Moryakovka\";\"other\"\n\"1498399\";\"МОРЯКОВСКИЙ ЗАТОН\";\"other\"\n\"1498402\";\"Mortka\";\"main\"\n\"1498402\";\"MORTKA\";\"other\"\n\"1498402\";\"МОРТКА\";\"other\"\n\"1498402\";\"Мортка\";\"other\"\n\"1498456\";\"Monetnyy\";\"main\"\n\"1498456\";\"MONETNYJ\";\"other\"\n\"1498456\";\"Monetnaya\";\"other\"\n\"1498456\";\"Monetny\";\"other\"\n\"1498456\";\"Monetnyj\";\"other\"\n\"1498456\";\"МОНЕТНЫЙ\";\"other\"\n\"1498456\";\"Монетный\";\"other\"\n\"1498493\";\"Molchanovo\";\"main\"\n\"1498493\";\"Moltsjanovo\";\"other\"\n\"1498493\";\"Молчаново\";\"other\"\n\"1498511\";\"Mokrousovo\";\"main\"\n\"1498511\";\"Мокроусово\";\"other\"\n\"1498589\";\"Mochishche\";\"main\"\n\"1498589\";\"Motsjisjtsje\";\"other\"\n\"1498589\";\"Мочище\";\"other\"\n\"1498633\";\"Mishkino\";\"main\"\n\"1498633\";\"MISHKINO\";\"other\"\n\"1498633\";\"Mischkino\";\"other\"\n\"1498633\";\"Misjkino\";\"other\"\n\"1498633\";\"МИШКИНО\";\"other\"\n\"1498633\";\"Мишкино\";\"other\"\n\"1498693\";\"Minusinsk\";\"main\"\n\"1498693\";\"MINUSINSK\";\"other\"\n\"1498693\";\"Minusinka\";\"other\"\n\"1498693\";\"Minusińsk\";\"other\"\n\"1498693\";\"Minussinsk\";\"other\"\n\"1498693\";\"МИНУСИНСК\";\"other\"\n\"1498693\";\"Минусинск\";\"other\"\n\"1498775\";\"Mikhaylovskoye\";\"main\"\n\"1498775\";\"MIKHAJLOVSKIJ\";\"other\"\n\"1498775\";\"Mikhajlovskij\";\"other\"\n\"1498775\";\"Mikhaylovka\";\"other\"\n\"1498775\";\"Mikhaylovskiy\";\"other\"\n\"1498775\";\"МИХАЙЛОВСКИЙ\";\"other\"\n\"1498775\";\"Михайловское\";\"other\"\n\"1498887\";\"Miasskoye\";\"main\"\n\"1498887\";\"Miasskiy\";\"other\"\n\"1498887\";\"Miasskoje\";\"other\"\n\"1498887\";\"Миасское\";\"other\"\n\"1498894\";\"Miass\";\"main\"\n\"1498894\";\"Mias\";\"other\"\n\"1498894\";\"Миасс\";\"other\"\n\"1498894\";\"Міас\";\"other\"\n\"1498919\";\"Mezhdurechenskiy\";\"main\"\n\"1498919\";\"MEZHDURECHENSKIJ\";\"other\"\n\"1498919\";\"Mezjduretsjenskij\";\"other\"\n\"1498919\";\"МЕЖДУРЕЧЕНСКИЙ\";\"other\"\n\"1498919\";\"Междуреченский\";\"other\"\n\"1498920\";\"Mezhdurechensk\";\"main\"\n\"1498920\";\"MEZHDURECHENSK\";\"other\"\n\"1498920\";\"Mezjduretsjensk\";\"other\"\n\"1498920\";\"Ol'zheras\";\"other\"\n\"1498920\";\"Ol’zheras\";\"other\"\n\"1498920\";\"МЕЖДУРЕЧЕНСК\";\"other\"\n\"1498920\";\"Междуреченск\";\"other\"\n\"1498997\";\"Mendeleyevo\";\"main\"\n\"1498997\";\"Менделеево\";\"other\"\n\"1499007\";\"Mel’nikovo\";\"main\"\n\"1499007\";\"Mel'nikovo\";\"ascii\"\n\"1499007\";\"Mel'nikova\";\"other\"\n\"1499007\";\"Melnikovo\";\"other\"\n\"1499007\";\"Mel’nikova\";\"other\"\n\"1499007\";\"Мельниково\";\"other\"\n\"1499042\";\"Melioratorov\";\"main\"\n\"1499042\";\"Мелиораторов\";\"other\"\n\"1499053\";\"Megion\";\"main\"\n\"1499053\";\"MEGION\";\"other\"\n\"1499053\";\"Maron\";\"other\"\n\"1499053\";\"Mayon\";\"other\"\n\"1499053\";\"megion\";\"other\"\n\"1499053\";\"МЕГИОН\";\"other\"\n\"1499053\";\"Мегион\";\"other\"\n\"1499053\";\"메기온\";\"other\"\n\"1499158\";\"Mayna\";\"main\"\n\"1499158\";\"MAJNA\";\"other\"\n\"1499158\";\"Majna\";\"other\"\n\"1499158\";\"МАЙНА\";\"other\"\n\"1499158\";\"Майна\";\"other\"\n\"1499163\";\"Mayma\";\"main\"\n\"1499163\";\"Majma\";\"other\"\n\"1499163\";\"Mayma-Chergachak\";\"other\"\n\"1499163\";\"Майма\";\"other\"\n\"1499288\";\"Martyush\";\"main\"\n\"1499288\";\"Martjusj\";\"other\"\n\"1499288\";\"Мартюш\";\"other\"\n\"1499350\";\"Mariinsk\";\"main\"\n\"1499350\";\"MARIINSK\";\"other\"\n\"1499350\";\"МАРИИНСК\";\"other\"\n\"1499350\";\"Мариинск\";\"other\"\n\"1499385\";\"Manzya\";\"main\"\n\"1499385\";\"Manza\";\"other\"\n\"1499385\";\"Manzia\";\"other\"\n\"1499385\";\"Manzja\";\"other\"\n\"1499385\";\"Манзя\";\"other\"\n\"1499386\";\"Manzherok\";\"main\"\n\"1499386\";\"Manzjerok\";\"other\"\n\"1499386\";\"Манжерок\";\"other\"\n\"1499428\";\"Mamontovo\";\"main\"\n\"1499428\";\"Мамонтово\";\"other\"\n\"1499668\";\"Malysheva\";\"main\"\n\"1499668\";\"Imeni Malysheva\";\"other\"\n\"1499668\";\"MALYSHEVA\";\"other\"\n\"1499668\";\"Malysjeva\";\"other\"\n\"1499668\";\"МАЛЫШЕВА\";\"other\"\n\"1499668\";\"Малышева\";\"other\"\n\"1499779\";\"Malinovoye Ozero\";\"main\"\n\"1499779\";\"Malinovoje Ozero\";\"other\"\n\"1499779\";\"Mikhaylovskiy\";\"other\"\n\"1499779\";\"Малиновое Озеро\";\"other\"\n\"1500036\";\"Makushino\";\"main\"\n\"1500036\";\"MAKUSHINO\";\"other\"\n\"1500036\";\"Makuschino\";\"other\"\n\"1500036\";\"Makusjino\";\"other\"\n\"1500036\";\"МАКУШИНО\";\"other\"\n\"1500036\";\"Макушино\";\"other\"\n\"1500125\";\"Lyubinskiy\";\"main\"\n\"1500125\";\"LJUBINSKIJ\";\"other\"\n\"1500125\";\"Ljubinskij\";\"other\"\n\"1500125\";\"Lyubino\";\"other\"\n\"1500125\";\"Novo-Lyubino\";\"other\"\n\"1500125\";\"ЛЮБИНСКИЙ\";\"other\"\n\"1500125\";\"Любинский\";\"other\"\n\"1500207\";\"Luzino\";\"main\"\n\"1500207\";\"Luzinskiy\";\"other\"\n\"1500207\";\"Лузино\";\"other\"\n\"1500252\";\"Lugovskoy\";\"main\"\n\"1500252\";\"LUGOVSKOJ\";\"other\"\n\"1500252\";\"Lugovskoj\";\"other\"\n\"1500252\";\"Pyshma\";\"other\"\n\"1500252\";\"ЛУГОВСКОЙ\";\"other\"\n\"1500252\";\"Луговской\";\"other\"\n\"1500335\";\"Losinyy\";\"main\"\n\"1500335\";\"LOSINYJ\";\"other\"\n\"1500335\";\"Losinyj\";\"other\"\n\"1500335\";\"ЛОСИНЫЙ\";\"other\"\n\"1500335\";\"Лосиный\";\"other\"\n\"1500399\";\"Lokosovo\";\"main\"\n\"1500399\";\"Локосово\";\"other\"\n\"1500426\";\"Lobva\";\"main\"\n\"1500426\";\"LOBVA\";\"other\"\n\"1500426\";\"ЛОБВА\";\"other\"\n\"1500426\";\"Лобва\";\"other\"\n\"1500468\";\"Listvyanskiy\";\"main\"\n\"1500468\";\"LISTVJANSKIJ\";\"other\"\n\"1500468\";\"Listvjanskij\";\"other\"\n\"1500468\";\"Listvyanka\";\"other\"\n\"1500468\";\"ЛИСТВЯНСКИЙ\";\"other\"\n\"1500468\";\"Листвянский\";\"other\"\n\"1500485\";\"Listvyagi\";\"main\"\n\"1500485\";\"LISTVJAGI\";\"other\"\n\"1500485\";\"Listvjagi\";\"other\"\n\"1500485\";\"ЛИСТВЯГИ\";\"other\"\n\"1500485\";\"Листвяги\";\"other\"\n\"1500607\";\"Lesosibirsk\";\"main\"\n\"1500607\";\"Maklakova\";\"other\"\n\"1500607\";\"Maklakovo\";\"other\"\n\"1500607\";\"NOVOMAKLAKOVO\";\"other\"\n\"1500607\";\"Novomaklakovo\";\"other\"\n\"1500607\";\"Лесосибирск\";\"other\"\n\"1500607\";\"НОВОМАКЛАКОВО\";\"other\"\n\"1500609\";\"Lesogorsk\";\"main\"\n\"1500609\";\"LESOGORSK\";\"other\"\n\"1500609\";\"ЛЕСОГОРСК\";\"other\"\n\"1500609\";\"Лесогорск\";\"other\"\n\"1500629\";\"Lesnikovo\";\"main\"\n\"1500629\";\"Лесниково\";\"other\"\n\"1500665\";\"Leninsk-Kuznetskiy\";\"main\"\n\"1500665\";\"Kol'chugino\";\"other\"\n\"1500665\";\"Kol’chugino\";\"other\"\n\"1500665\";\"Lenino\";\"other\"\n\"1500665\";\"Leninsk Kuznetski\";\"other\"\n\"1500665\";\"Leninsk-Kuzneckij\";\"other\"\n\"1500665\";\"Leninsk-Kuznetsk\";\"other\"\n\"1500665\";\"Leninsk-Kuznetskij\";\"other\"\n\"1500665\";\"Ленинск-Кузнетский\";\"other\"\n\"1500665\";\"Ленинск-Кузнецкий\";\"other\"\n\"1500764\";\"Lebyazh’ye\";\"main\"\n\"1500764\";\"Lebyazh'ye\";\"ascii\"\n\"1500764\";\"Lebjazje\";\"other\"\n\"1500764\";\"Lebyazh'ye Vtoroye\";\"other\"\n\"1500764\";\"Lebyazh’ye Vtoroye\";\"other\"\n\"1500764\";\"Лебяжье\";\"other\"\n\"1500933\";\"Labytnangi\";\"main\"\n\"1500933\";\"LABYTNANGI\";\"other\"\n\"1500933\";\"ЛАБЫТНАНГИ\";\"other\"\n\"1500933\";\"Лабытнанги\";\"other\"\n\"1500957\";\"Kyzyl-Mazhalyk\";\"main\"\n\"1500957\";\"Kyzyl-Madzhalyk\";\"other\"\n\"1500957\";\"Kyzyl-Mazjalyk\";\"other\"\n\"1500957\";\"Кызыл-Мажалык\";\"other\"\n\"1500962\";\"Kyzyl-Khaya\";\"main\"\n\"1500962\";\"Kyzyl-Khaja\";\"other\"\n\"1500962\";\"Кызыл-Хая\";\"other\"\n\"1500973\";\"Kyzyl\";\"main\"\n\"1500973\";\"Belotsarsk\";\"other\"\n\"1500973\";\"Bielorsarsk\";\"other\"\n\"1500973\";\"Chi-ch'i-erh\";\"other\"\n\"1500973\";\"Chi-ch’i-erh\";\"other\"\n\"1500973\";\"K'en-mu-pi-ch'i-erh\";\"other\"\n\"1500973\";\"KYZYL\";\"other\"\n\"1500973\";\"Khem Belder\";\"other\"\n\"1500973\";\"Kizil\";\"other\"\n\"1500973\";\"Kizil Khoto\";\"other\"\n\"1500973\";\"Kozol\";\"other\"\n\"1500973\";\"Krasni\";\"other\"\n\"1500973\";\"Krasnij\";\"other\"\n\"1500973\";\"Krasny\";\"other\"\n\"1500973\";\"Krasnyy\";\"other\"\n\"1500973\";\"Kysyl\";\"other\"\n\"1500973\";\"Kyzyl Khoro\";\"other\"\n\"1500973\";\"Kyzyl Khoto\";\"other\"\n\"1500973\";\"Kyzylas\";\"other\"\n\"1500973\";\"Kyzył\";\"other\"\n\"1500973\";\"Kõzõl\";\"other\"\n\"1500973\";\"Kızıl\";\"other\"\n\"1500973\";\"K’en-mu-pi-ch’i-erh\";\"other\"\n\"1500973\";\"kijil\";\"other\"\n\"1500973\";\"qyzyl\";\"other\"\n\"1500973\";\"КЫЗЫЛ\";\"other\"\n\"1500973\";\"Кизил\";\"other\"\n\"1500973\";\"Кызыл\";\"other\"\n\"1500973\";\"קיזיל\";\"other\"\n\"1500973\";\"키질\";\"other\"\n\"1500990\";\"Kytmanovo\";\"main\"\n\"1500990\";\"Kytmanov\";\"other\"\n\"1500990\";\"Кытманово\";\"other\"\n\"1500997\";\"Kyshtym\";\"main\"\n\"1500997\";\"KYSHTYM\";\"other\"\n\"1500997\";\"Kysjtym\";\"other\"\n\"1500997\";\"КЫШТЫМ\";\"other\"\n\"1501000\";\"Kyshtovka\";\"main\"\n\"1501000\";\"Kysjtovka\";\"other\"\n\"1501000\";\"Кыштовка\";\"other\"\n\"1501036\";\"Kvitok\";\"main\"\n\"1501036\";\"KVITOK\";\"other\"\n\"1501036\";\"КВИТОК\";\"other\"\n\"1501036\";\"Квиток\";\"other\"\n\"1501118\";\"Kuzedeyevo\";\"main\"\n\"1501118\";\"KUZEDEEVO\";\"other\"\n\"1501118\";\"Kuzedejevo\";\"other\"\n\"1501118\";\"Kuzedeyevskoye\";\"other\"\n\"1501118\";\"КУЗЕДЕЕВО\";\"other\"\n\"1501118\";\"Кузедеево\";\"other\"\n\"1501141\";\"Kuybyshev\";\"main\"\n\"1501141\";\"KUJBYSHEV\";\"other\"\n\"1501141\";\"Kainsk\";\"other\"\n\"1501141\";\"Kuibyshev\";\"other\"\n\"1501141\";\"Kujbysjev\";\"other\"\n\"1501141\";\"КУЙБЫШЕВ\";\"other\"\n\"1501141\";\"Куйбышев\";\"other\"\n\"1501255\";\"Kurtamysh\";\"main\"\n\"1501255\";\"KURTAMYSH\";\"other\"\n\"1501255\";\"Kurtamysj\";\"other\"\n\"1501255\";\"КУРТАМЫШ\";\"other\"\n\"1501255\";\"Куртамыш\";\"other\"\n\"1501321\";\"Kurgan\";\"main\"\n\"1501321\";\"Kurgan Pervyy\";\"other\"\n\"1501321\";\"kuleugan\";\"other\"\n\"1501321\";\"kurugan\";\"other\"\n\"1501321\";\"Курган\";\"other\"\n\"1501321\";\"クルガン\";\"other\"\n\"1501321\";\"쿠르간\";\"other\"\n\"1501356\";\"Kuragino\";\"main\"\n\"1501356\";\"KURAGINO\";\"other\"\n\"1501356\";\"Kuraguino\";\"other\"\n\"1501356\";\"КУРАГИНО\";\"other\"\n\"1501365\";\"Kupino\";\"main\"\n\"1501365\";\"KUPINO\";\"other\"\n\"1501365\";\"КУПИНО\";\"other\"\n\"1501365\";\"Купино\";\"other\"\n\"1501377\";\"Kungurtug\";\"main\"\n\"1501377\";\"Kungur-Tuk\";\"other\"\n\"1501377\";\"Кунгуртуг\";\"other\"\n\"1501402\";\"Kunashak\";\"main\"\n\"1501402\";\"Kunasjak\";\"other\"\n\"1501402\";\"Кунашак\";\"other\"\n\"1501429\";\"Kuminskiy\";\"main\"\n\"1501429\";\"Kuminskij\";\"other\"\n\"1501429\";\"Куминский\";\"other\"\n\"1501460\";\"Kulunda\";\"main\"\n\"1501460\";\"KULUNDA\";\"other\"\n\"1501460\";\"КУЛУНДА\";\"other\"\n\"1501460\";\"Кулунда\";\"other\"\n\"1501573\";\"Kudryashovskiy\";\"main\"\n\"1501573\";\"Kudrjasjovskij\";\"other\"\n\"1501573\";\"Kudryashevskiy\";\"other\"\n\"1501573\";\"Кудряшовский\";\"other\"\n\"1501690\";\"Krutinka\";\"main\"\n\"1501690\";\"KRUTINKA\";\"other\"\n\"1501690\";\"Krutinskoye\";\"other\"\n\"1501690\";\"КРУТИНКА\";\"other\"\n\"1501690\";\"Крутинка\";\"other\"\n\"1501706\";\"Krutikha\";\"main\"\n\"1501706\";\"Крутиха\";\"other\"\n\"1501710\";\"Krutaya Gorka\";\"main\"\n\"1501710\";\"KRUTAJA GORKA\";\"other\"\n\"1501710\";\"Krutaja Gorka\";\"other\"\n\"1501710\";\"КРУТАЯ ГОРКА\";\"other\"\n\"1501710\";\"Крутая Горка\";\"other\"\n\"1501795\";\"Krivosheino\";\"main\"\n\"1501795\";\"Krivosjeino\";\"other\"\n\"1501795\";\"Кривошеино\";\"other\"\n\"1501803\";\"Krivodanovka\";\"main\"\n\"1501803\";\"Криводановка\";\"other\"\n\"1501876\";\"Krasnyy Yar\";\"main\"\n\"1501876\";\"KRASNYJ JAR\";\"other\"\n\"1501876\";\"Krasny Yar\";\"other\"\n\"1501876\";\"Krasnyj Jar\";\"other\"\n\"1501876\";\"КРАСНЫЙ ЯР\";\"other\"\n\"1501876\";\"Красный Яр\";\"other\"\n\"1501887\";\"Krasnyy Yar\";\"main\"\n\"1501887\";\"KRASNYJ JAR\";\"other\"\n\"1501887\";\"Krasny Yar\";\"other\"\n\"1501887\";\"Krasnyj Jar\";\"other\"\n\"1501887\";\"КРАСНЫЙ ЯР\";\"other\"\n\"1501887\";\"Красный Яр\";\"other\"\n\"1501925\";\"Krasnyy Oktyabr’\";\"main\"\n\"1501925\";\"Krasnyy Oktyabr'\";\"ascii\"\n\"1501925\";\"Красный Октябрь\";\"other\"\n\"1501988\";\"Krasnozërskoye\";\"main\"\n\"1501988\";\"Krasnozerskoye\";\"ascii\"\n\"1501988\";\"KRASNOZERSKOE\";\"other\"\n\"1501988\";\"Krasnoozersk\";\"other\"\n\"1501988\";\"Krasnozersk\";\"other\"\n\"1501988\";\"Krasnozerskoje\";\"other\"\n\"1501988\";\"КРАСНОЗЕРСКОЕ\";\"other\"\n\"1501988\";\"Краснозёрское\";\"other\"\n\"1502013\";\"Krasnoye\";\"main\"\n\"1502013\";\"Krasnoje\";\"other\"\n\"1502013\";\"Красное\";\"other\"\n\"1502026\";\"Krasnoyarsk\";\"main\"\n\"1502026\";\"Krasnojarsk\";\"other\"\n\"1502026\";\"Красноярск\";\"other\"\n\"1502041\";\"Krasnoyarka\";\"main\"\n\"1502041\";\"Krasnojarka\";\"other\"\n\"1502041\";\"Красноярка\";\"other\"\n\"1502060\";\"Krasnoural’sk\";\"main\"\n\"1502060\";\"Krasnoural'sk\";\"ascii\"\n\"1502060\";\"Krasnouralsk\";\"other\"\n\"1502060\";\"Uralmed'stroy\";\"other\"\n\"1502060\";\"Uralmed’stroy\";\"other\"\n\"1502060\";\"Красноуральск\";\"other\"\n\"1502061\";\"Krasnotur’insk\";\"main\"\n\"1502061\";\"Krasnotur'insk\";\"ascii\"\n\"1502061\";\"Krasnoturinsk\";\"other\"\n\"1502061\";\"Tur'inskiy\";\"other\"\n\"1502061\";\"Tur’inskiy\";\"other\"\n\"1502061\";\"Краснотурьинск\";\"other\"\n\"1502063\";\"Krasnoturansk\";\"main\"\n\"1502063\";\"Краснотуранск\";\"other\"\n\"1502066\";\"Krasnoshchëkovo\";\"main\"\n\"1502066\";\"Krasnoshchekovo\";\"ascii\"\n\"1502066\";\"Kraskoshchekovo\";\"other\"\n\"1502066\";\"Krasnoshhekovo\";\"other\"\n\"1502066\";\"Krasnosjtsjekovo\";\"other\"\n\"1502066\";\"Краснощеково\";\"other\"\n\"1502066\";\"Краснощёково\";\"other\"\n\"1502091\";\"Krasnoobsk\";\"main\"\n\"1502091\";\"KRASNOOBSK\";\"other\"\n\"1502091\";\"КРАСНООБСК\";\"other\"\n\"1502091\";\"Краснообск\";\"other\"\n\"1502096\";\"Krasnokamensk\";\"main\"\n\"1502096\";\"KRASNOKAMENSK\";\"other\"\n\"1502096\";\"КРАСНОКАМЕНСК\";\"other\"\n\"1502100\";\"Krasnogvardeyskiy\";\"main\"\n\"1502100\";\"Irbitskiy\";\"other\"\n\"1502100\";\"KRASNOGVARDEJSKIJ\";\"other\"\n\"1502100\";\"Krasnogvardejskij\";\"other\"\n\"1502100\";\"КРАСНОГВАРДЕЙСКИЙ\";\"other\"\n\"1502100\";\"Красногвардейский\";\"other\"\n\"1502105\";\"Krasnogorskoye\";\"main\"\n\"1502105\";\"Krasnogorskoje\";\"other\"\n\"1502105\";\"Staraya Barda\";\"other\"\n\"1502105\";\"Staro-Bardinskoye\";\"other\"\n\"1502105\";\"Красногорское\";\"other\"\n\"1502112\";\"Krasnogorskiy\";\"main\"\n\"1502112\";\"KRASNOGORSKIJ\";\"other\"\n\"1502112\";\"Krasnogorskij\";\"other\"\n\"1502112\";\"КРАСНОГОРСКИЙ\";\"other\"\n\"1502112\";\"Красногорский\";\"other\"\n\"1502113\";\"Krasnogorskiy\";\"main\"\n\"1502113\";\"KRASNOGORSKIJ\";\"other\"\n\"1502113\";\"Krasnaya Gorka\";\"other\"\n\"1502113\";\"Krasnogorskij\";\"other\"\n\"1502113\";\"КРАСНОГОРСКИЙ\";\"other\"\n\"1502113\";\"Красногорский\";\"other\"\n\"1502192\";\"Krapivinskiy\";\"main\"\n\"1502192\";\"KRAPIVINSKIJ\";\"other\"\n\"1502192\";\"Krapivino\";\"other\"\n\"1502192\";\"Krapivinskij\";\"other\"\n\"1502192\";\"КРАПИВИНСКИЙ\";\"other\"\n\"1502192\";\"Крапивинский\";\"other\"\n\"1502257\";\"Kozhevnikovo\";\"main\"\n\"1502257\";\"Kozjevnikovo\";\"other\"\n\"1502257\";\"Кожевниково\";\"other\"\n\"1502280\";\"Koyelga\";\"main\"\n\"1502280\";\"Kojelga\";\"other\"\n\"1502280\";\"Коелга\";\"other\"\n\"1502387\";\"Kosikha\";\"main\"\n\"1502387\";\"Косиха\";\"other\"\n\"1502389\";\"Koshurnikovo\";\"main\"\n\"1502422\";\"Kosh-Agach\";\"main\"\n\"1502422\";\"Kosj-Agatsj\";\"other\"\n\"1502422\";\"Кош-Агач\";\"other\"\n\"1502526\";\"Kormilovka\";\"main\"\n\"1502526\";\"KORMILOVKA\";\"other\"\n\"1502526\";\"КОРМИЛОВКА\";\"other\"\n\"1502526\";\"Кормиловка\";\"other\"\n\"1502536\";\"Korkino\";\"main\"\n\"1502536\";\"KORKINO\";\"other\"\n\"1502536\";\"КОРКИНО\";\"other\"\n\"1502536\";\"Коркино\";\"other\"\n\"1502603\";\"Kopeysk\";\"main\"\n\"1502603\";\"Kopeisk\";\"other\"\n\"1502603\";\"Kopejsk\";\"other\"\n\"1502603\";\"Kopi\";\"other\"\n\"1502603\";\"Kopiejsk\";\"other\"\n\"1502603\";\"Ugolnye Kopi\";\"other\"\n\"1502603\";\"Копейск\";\"other\"\n\"1502697\";\"Kondinskoye\";\"main\"\n\"1502697\";\"KONDINSKOE\";\"other\"\n\"1502697\";\"Kondinskoje\";\"other\"\n\"1502697\";\"Nakhrachi\";\"other\"\n\"1502697\";\"КОНДИНСКОЕ\";\"other\"\n\"1502697\";\"Кондинское\";\"other\"\n\"1502725\";\"Yugorsk\";\"main\"\n\"1502725\";\"Jugorsk\";\"other\"\n\"1502725\";\"KOMSOMOL'SKIJ\";\"other\"\n\"1502725\";\"Komsomol'skiy\";\"other\"\n\"1502725\";\"Komsomol’skiy\";\"other\"\n\"1502725\";\"КОМСОМОЛЬСКИЙ\";\"other\"\n\"1502725\";\"Югорск\";\"other\"\n\"1502750\";\"Kommunisticheskiy\";\"main\"\n\"1502750\";\"SAMZA\";\"other\"\n\"1502750\";\"Samza\";\"other\"\n\"1502750\";\"Коммунистический\";\"other\"\n\"1502750\";\"САМЗА\";\"other\"\n\"1502758\";\"Kommunar\";\"main\"\n\"1502758\";\"KOMMUNAR\";\"other\"\n\"1502758\";\"КОММУНАР\";\"other\"\n\"1502758\";\"Коммунар\";\"other\"\n\"1502822\";\"Kolyvan’\";\"main\"\n\"1502822\";\"Kolyvan'\";\"ascii\"\n\"1502822\";\"KOLYVAN'\";\"other\"\n\"1502822\";\"Kolyban\";\"other\"\n\"1502822\";\"Kolyvan\";\"other\"\n\"1502822\";\"КОЛЫВАНЬ\";\"other\"\n\"1502822\";\"Колывань\";\"other\"\n\"1502847\";\"Kol’tsovo\";\"main\"\n\"1502847\";\"Kol'tsovo\";\"ascii\"\n\"1502847\";\"Koltsovo\";\"other\"\n\"1502847\";\"Кольцово\";\"other\"\n\"1502862\";\"Kolpashevo\";\"main\"\n\"1502862\";\"KOLPASHEVO\";\"other\"\n\"1502862\";\"Kolpashev\";\"other\"\n\"1502862\";\"Kolpasjevo\";\"other\"\n\"1502862\";\"КОЛПАШЕВО\";\"other\"\n\"1502862\";\"Колпашево\";\"other\"\n\"1502879\";\"Kolosovka\";\"main\"\n\"1502879\";\"Kolosova\";\"other\"\n\"1502879\";\"Колосовка\";\"other\"\n\"1503037\";\"Kodinsk\";\"main\"\n\"1503037\";\"KODINSKIJ\";\"other\"\n\"1503037\";\"Kodinskaya\";\"other\"\n\"1503037\";\"Kodinskaya Zaimka\";\"other\"\n\"1503037\";\"Kodinskiy\";\"other\"\n\"1503037\";\"КОДИНСКИЙ\";\"other\"\n\"1503037\";\"Кодинск\";\"other\"\n\"1503061\";\"Kochki\";\"main\"\n\"1503061\";\"Kochkovskoye\";\"other\"\n\"1503061\";\"Kotsjki\";\"other\"\n\"1503061\";\"Кочки\";\"other\"\n\"1503082\";\"Kochenëvo\";\"main\"\n\"1503082\";\"Kochenevo\";\"ascii\"\n\"1503082\";\"Kochenova\";\"other\"\n\"1503082\";\"Konchenevo\";\"other\"\n\"1503082\";\"Koyschenewo\";\"other\"\n\"1503082\";\"Коченёво\";\"other\"\n\"1503131\";\"Klyuchi\";\"main\"\n\"1503131\";\"Ключи\";\"other\"\n\"1503153\";\"Klyuchi\";\"main\"\n\"1503153\";\"Kljutsji\";\"other\"\n\"1503153\";\"Ключи\";\"other\"\n\"1503169\";\"Klyuchevsk\";\"main\"\n\"1503169\";\"KLJUCHEVSK\";\"other\"\n\"1503169\";\"Kljutsjevsk\";\"other\"\n\"1503169\";\"Teply-Klyuch\";\"other\"\n\"1503169\";\"Teplyy Klyuch\";\"other\"\n\"1503169\";\"Tëplyy Klyuch\";\"other\"\n\"1503169\";\"КЛЮЧЕВСК\";\"other\"\n\"1503169\";\"Ключевск\";\"other\"\n\"1503277\";\"Kiselëvsk\";\"main\"\n\"1503277\";\"Kiselevsk\";\"ascii\"\n\"1503277\";\"KISELEVSK\";\"other\"\n\"1503277\";\"Kizelovsk\";\"other\"\n\"1503277\";\"КИСЕЛЕВСК\";\"other\"\n\"1503277\";\"Киселёвск\";\"other\"\n\"1503335\";\"Kirovgrad\";\"main\"\n\"1503335\";\"KIROVGRAD\";\"other\"\n\"1503335\";\"Kalata\";\"other\"\n\"1503335\";\"КИРОВГРАД\";\"other\"\n\"1503335\";\"Кировград\";\"other\"\n\"1503481\";\"Khulimsunt\";\"main\"\n\"1503481\";\"Khulim-Sund\";\"other\"\n\"1503481\";\"Khulyum-Sunt\";\"other\"\n\"1503481\";\"Хулимсунт\";\"other\"\n\"1503527\";\"Khovu-Aksy\";\"main\"\n\"1503527\";\"Хову-Аксы\";\"other\"\n\"1503726\";\"Kharp\";\"main\"\n\"1503726\";\"KHARP\";\"other\"\n\"1503726\";\"ХАРП\";\"other\"\n\"1503726\";\"Харп\";\"other\"\n\"1503772\";\"Khanty-Mansiysk\";\"main\"\n\"1503772\";\"Chanty-Mansiejsk\";\"other\"\n\"1503772\";\"Chanty-Mansijsk\";\"other\"\n\"1503772\";\"Chanty-Mansyjsk\";\"other\"\n\"1503772\";\"Hanti-Mansijsk\";\"other\"\n\"1503772\";\"Hanto-Mansiisk\";\"other\"\n\"1503772\";\"Hantõ-Mansiisk\";\"other\"\n\"1503772\";\"Khanty Mansisk\";\"other\"\n\"1503772\";\"Khanty-Mansijsk\";\"other\"\n\"1503772\";\"Ostyako-Vogul'sk\";\"other\"\n\"1503772\";\"Ostyako-Vogul’sk\";\"other\"\n\"1503772\";\"hantimansiseukeu\";\"other\"\n\"1503772\";\"hnty-mnsyysq\";\"other\"\n\"1503772\";\"Ĥanti-Mansijsk\";\"other\"\n\"1503772\";\"Ханты-Мансийск\";\"other\"\n\"1503772\";\"חנטי-מנסייסק\";\"other\"\n\"1503772\";\"ハンティ・マンシースク\";\"other\"\n\"1503772\";\"한티만시스크\";\"other\"\n\"1503796\";\"Khandagayty\";\"main\"\n\"1503796\";\"Handagaytay\";\"other\"\n\"1503796\";\"Khandagajty\";\"other\"\n\"1503796\";\"Хандагайты\";\"other\"\n\"1503856\";\"Khabary\";\"main\"\n\"1503856\";\"Khabari\";\"other\"\n\"1503856\";\"Хабары\";\"other\"\n\"1503879\";\"Ketovo\";\"main\"\n\"1503879\";\"Кетово\";\"other\"\n\"1503901\";\"Kemerovo\";\"main\"\n\"1503901\";\"Kemerowo\";\"other\"\n\"1503901\";\"Shcheglovsk\";\"other\"\n\"1503901\";\"kemelobo\";\"other\"\n\"1503901\";\"kemerovu~o\";\"other\"\n\"1503901\";\"qmrwbw\";\"other\"\n\"1503901\";\"Кемерово\";\"other\"\n\"1503901\";\"קמרובו\";\"other\"\n\"1503901\";\"ケメロヴォ\";\"other\"\n\"1503901\";\"케메로보\";\"other\"\n\"1503931\";\"Kedrovoye\";\"main\"\n\"1503931\";\"KEDROVOE\";\"other\"\n\"1503931\";\"Kedrovoje\";\"other\"\n\"1503931\";\"КЕДРОВОЕ\";\"other\"\n\"1503931\";\"Кедровое\";\"other\"\n\"1503940\";\"Kedrovka\";\"main\"\n\"1503940\";\"KEDROVKA\";\"other\"\n\"1503940\";\"КЕДРОВКА\";\"other\"\n\"1503940\";\"Кедровка\";\"other\"\n\"1504019\";\"Kazanskoye\";\"main\"\n\"1504019\";\"KAZANSKOE\";\"other\"\n\"1504019\";\"Kazanskoje\";\"other\"\n\"1504019\";\"КАЗАНСКОЕ\";\"other\"\n\"1504019\";\"Казанское\";\"other\"\n\"1504075\";\"Kazachinskoye\";\"main\"\n\"1504075\";\"Kazachinskiy\";\"other\"\n\"1504075\";\"Kazachinskoe\";\"other\"\n\"1504075\";\"Kazatsjinskoje\";\"other\"\n\"1504075\";\"Казачинское\";\"other\"\n\"1504081\";\"Kaz\";\"main\"\n\"1504081\";\"Каз\";\"other\"\n\"1504139\";\"Kayyerkan\";\"main\"\n\"1504139\";\"KAJERKAN\";\"other\"\n\"1504139\";\"Kajerkam\";\"other\"\n\"1504139\";\"Kajerkan\";\"other\"\n\"1504139\";\"Kayerkan\";\"other\"\n\"1504139\";\"КАЙЕРКАН\";\"other\"\n\"1504212\";\"Kataysk\";\"main\"\n\"1504212\";\"KATAJSK\";\"other\"\n\"1504212\";\"Katajsk\";\"other\"\n\"1504212\";\"Katayskoye\";\"other\"\n\"1504212\";\"КАТАЙСК\";\"other\"\n\"1504212\";\"Катайск\";\"other\"\n\"1504251\";\"Kasli\";\"main\"\n\"1504251\";\"KASLI\";\"other\"\n\"1504251\";\"Kaslinskiy Zavod\";\"other\"\n\"1504251\";\"КАСЛИ\";\"other\"\n\"1504251\";\"Касли\";\"other\"\n\"1504317\";\"Kartaly\";\"main\"\n\"1504317\";\"KARTALY\";\"other\"\n\"1504317\";\"КАРТАЛЫ\";\"other\"\n\"1504317\";\"Карталы\";\"other\"\n\"1504343\";\"Karpinsk\";\"main\"\n\"1504343\";\"Bogoslovskiy\";\"other\"\n\"1504343\";\"KARPINSK\";\"other\"\n\"1504343\";\"Ugol'nyy\";\"other\"\n\"1504343\";\"Ugol’nyy\";\"other\"\n\"1504343\";\"КАРПИНСК\";\"other\"\n\"1504343\";\"Карпинск\";\"other\"\n\"1504380\";\"Kargat\";\"main\"\n\"1504380\";\"KARGAT\";\"other\"\n\"1504380\";\"КАРГАТ\";\"other\"\n\"1504380\";\"Каргат\";\"other\"\n\"1504382\";\"Kargasok\";\"main\"\n\"1504382\";\"KARGASOK\";\"other\"\n\"1504382\";\"Kargasen\";\"other\"\n\"1504382\";\"Novyy Kargasok\";\"other\"\n\"1504382\";\"КАРГАСОК\";\"other\"\n\"1504442\";\"Karatuzskoye\";\"main\"\n\"1504442\";\"Karatuz\";\"other\"\n\"1504442\";\"Karatuzskoe\";\"other\"\n\"1504442\";\"Karatuzskoje\";\"other\"\n\"1504442\";\"Каратузское\";\"other\"\n\"1504489\";\"Karasuk\";\"main\"\n\"1504489\";\"KARASUK\";\"other\"\n\"1504489\";\"КАРАСУК\";\"other\"\n\"1504489\";\"Карасук\";\"other\"\n\"1504590\";\"Karagayla\";\"main\"\n\"1504590\";\"KARAGAJLINSKIJ\";\"other\"\n\"1504590\";\"Karagaylinskiy\";\"other\"\n\"1504590\";\"Kargaylinskaya\";\"other\"\n\"1504590\";\"Nizhniye Karagayli\";\"other\"\n\"1504590\";\"КАРАГАЙЛИНСКИЙ\";\"other\"\n\"1504590\";\"Карагайла\";\"other\"\n\"1504636\";\"Karabash\";\"main\"\n\"1504636\";\"KARABASH\";\"other\"\n\"1504636\";\"Karabasj\";\"other\"\n\"1504636\";\"КАРАБАШ\";\"other\"\n\"1504636\";\"Карабаш\";\"other\"\n\"1504682\";\"Kansk\";\"main\"\n\"1504682\";\"KANSK\";\"other\"\n\"1504682\";\"Kanskas\";\"other\"\n\"1504682\";\"Kańsk\";\"other\"\n\"1504682\";\"kanseukeu\";\"other\"\n\"1504682\";\"КАНСК\";\"other\"\n\"1504682\";\"Канск\";\"other\"\n\"1504682\";\"칸스크\";\"other\"\n\"1504716\";\"Kanashevo\";\"main\"\n\"1504716\";\"Kanasjevo\";\"other\"\n\"1504716\";\"Канашево\";\"other\"\n\"1504769\";\"Kamyshlov\";\"main\"\n\"1504769\";\"KAMYSHLOV\";\"other\"\n\"1504769\";\"Kamysjlov\";\"other\"\n\"1504769\";\"Komyschlow\";\"other\"\n\"1504769\";\"КАМЫШЛОВ\";\"other\"\n\"1504769\";\"Камышлов\";\"other\"\n\"1504826\";\"Kamensk-Ural’skiy\";\"main\"\n\"1504826\";\"Kamensk-Ural'skiy\";\"ascii\"\n\"1504826\";\"Kamenisk\";\"other\"\n\"1504826\";\"Kamensk\";\"other\"\n\"1504826\";\"Kamensk-Uralskij\";\"other\"\n\"1504826\";\"Каменск-Уральский\";\"other\"\n\"1504850\";\"Mys-Kamennyy\";\"main\"\n\"1504850\";\"Kamennyy\";\"other\"\n\"1504850\";\"Mys-Kamennyj\";\"other\"\n\"1504850\";\"Мыс-Каменный\";\"other\"\n\"1504871\";\"Kamen’-na-Obi\";\"main\"\n\"1504871\";\"Kamen'-na-Obi\";\"ascii\"\n\"1504871\";\"Kamen'\";\"other\"\n\"1504871\";\"Kamen-Na-Obi\";\"other\"\n\"1504871\";\"Kamen’\";\"other\"\n\"1504871\";\"Камень-на-Оби\";\"other\"\n\"1504968\";\"Kaltay\";\"main\"\n\"1504968\";\"Kadtay\";\"other\"\n\"1504968\";\"Kaltaj\";\"other\"\n\"1504968\";\"Koltayskoye\";\"other\"\n\"1504968\";\"Калтай\";\"other\"\n\"1504972\";\"Kaltan\";\"main\"\n\"1504972\";\"KALTAN\";\"other\"\n\"1504972\";\"Kaltanskaya\";\"other\"\n\"1504972\";\"Nizhniy Kaltan\";\"other\"\n\"1504972\";\"КАЛТАН\";\"other\"\n\"1504972\";\"Калтан\";\"other\"\n\"1504985\";\"Kalmanka\";\"main\"\n\"1504985\";\"Kalmanskoye\";\"other\"\n\"1504985\";\"Калманка\";\"other\"\n\"1505003\";\"Kalinovo\";\"main\"\n\"1505003\";\"KALINOVO\";\"other\"\n\"1505003\";\"КАЛИНОВО\";\"other\"\n\"1505003\";\"Калиново\";\"other\"\n\"1505074\";\"Kalachinsk\";\"main\"\n\"1505074\";\"KALACHINSK\";\"other\"\n\"1505074\";\"Kalacinsk\";\"other\"\n\"1505074\";\"Kalanchinsk\";\"other\"\n\"1505074\";\"Kalatschinek\";\"other\"\n\"1505074\";\"Kalatschinsk\";\"other\"\n\"1505074\";\"Kalaĉinsk\";\"other\"\n\"1505074\";\"Kalačinsk\";\"other\"\n\"1505074\";\"kallachinseukeu\";\"other\"\n\"1505074\";\"КАЛАЧИНСК\";\"other\"\n\"1505074\";\"Калачинск\";\"other\"\n\"1505074\";\"칼라친스크\";\"other\"\n\"1505187\";\"Kaa-Khem\";\"main\"\n\"1505187\";\"Ka-Khehm\";\"other\"\n\"1505187\";\"Ka-Khem\";\"other\"\n\"1505187\";\"Kok-Tej\";\"other\"\n\"1505187\";\"Kok-Tey\";\"other\"\n\"1505187\";\"Ка-Хем\";\"other\"\n\"1505187\";\"Ка-Хэм\";\"other\"\n\"1505187\";\"Каа-Хем\";\"other\"\n\"1505187\";\"Кок-Тей\";\"other\"\n\"1505212\";\"Izumrud\";\"main\"\n\"1505212\";\"IZUMRUD\";\"other\"\n\"1505212\";\"ИЗУМРУД\";\"other\"\n\"1505212\";\"Изумруд\";\"other\"\n\"1505228\";\"Izhmorskiy\";\"main\"\n\"1505228\";\"Izhmorka\";\"other\"\n\"1505228\";\"Izhmorka-2ja\";\"other\"\n\"1505228\";\"Izhmorskoye\";\"other\"\n\"1505228\";\"Izjmorka-2ja\";\"other\"\n\"1505228\";\"Ижморка-2я\";\"other\"\n\"1505228\";\"Ижморский\";\"other\"\n\"1505260\";\"Ivdel’\";\"main\"\n\"1505260\";\"Ivdel'\";\"ascii\"\n\"1505260\";\"IVDEL'-1\";\"other\"\n\"1505260\";\"ИВДЕЛЬ-1\";\"other\"\n\"1505260\";\"Ивдель\";\"other\"\n\"1505383\";\"Itatskiy\";\"main\"\n\"1505383\";\"ITATSKIJ\";\"other\"\n\"1505383\";\"Itat\";\"other\"\n\"1505383\";\"Itatskaya\";\"other\"\n\"1505383\";\"Itatskij\";\"other\"\n\"1505383\";\"ИТАТСКИЙ\";\"other\"\n\"1505383\";\"Итатский\";\"other\"\n\"1505429\";\"Iskitim\";\"main\"\n\"1505429\";\"ISKITIM\";\"other\"\n\"1505429\";\"ИСКИТИМ\";\"other\"\n\"1505429\";\"Искитим\";\"other\"\n\"1505453\";\"Ishim\";\"main\"\n\"1505453\";\"ISHIM\";\"other\"\n\"1505453\";\"Ischim\";\"other\"\n\"1505453\";\"Isim\";\"other\"\n\"1505453\";\"Isjim\";\"other\"\n\"1505453\";\"Iŝim\";\"other\"\n\"1505453\";\"isim\";\"other\"\n\"1505453\";\"ИШИМ\";\"other\"\n\"1505453\";\"Ишим\";\"other\"\n\"1505453\";\"이심\";\"other\"\n\"1505466\";\"Isetskoye\";\"main\"\n\"1505466\";\"ISETSKOE\";\"other\"\n\"1505466\";\"Isetskoje\";\"other\"\n\"1505466\";\"ИСЕТСКОЕ\";\"other\"\n\"1505466\";\"Исетское\";\"other\"\n\"1505472\";\"Iset’\";\"main\"\n\"1505472\";\"Iset'\";\"ascii\"\n\"1505472\";\"ISET'\";\"other\"\n\"1505472\";\"Iset\";\"other\"\n\"1505472\";\"ИСЕТЬ\";\"other\"\n\"1505472\";\"Исеть\";\"other\"\n\"1505495\";\"Irtyshskiy\";\"main\"\n\"1505495\";\"IRTYSHSKIJ\";\"other\"\n\"1505495\";\"Irtysjskij\";\"other\"\n\"1505495\";\"ИРТЫШСКИЙ\";\"other\"\n\"1505495\";\"Иртышский\";\"other\"\n\"1505496\";\"Irtyshskiy\";\"main\"\n\"1505496\";\"Irtysjskij\";\"other\"\n\"1505496\";\"Иртышский\";\"other\"\n\"1505502\";\"Irsha\";\"main\"\n\"1505502\";\"IRSHA\";\"other\"\n\"1505502\";\"Irsja\";\"other\"\n\"1505502\";\"ИРША\";\"other\"\n\"1505526\";\"Irbit\";\"main\"\n\"1505526\";\"IRBIT\";\"other\"\n\"1505526\";\"irbit\";\"other\"\n\"1505526\";\"ИРБИТ\";\"other\"\n\"1505526\";\"Ирбит\";\"other\"\n\"1505529\";\"Irbeyskoye\";\"main\"\n\"1505529\";\"Irbejskoe\";\"other\"\n\"1505529\";\"Irbejskoje\";\"other\"\n\"1505529\";\"Ирбейское\";\"other\"\n\"1505579\";\"Inta\";\"main\"\n\"1505579\";\"INTA\";\"other\"\n\"1505579\";\"inta\";\"other\"\n\"1505579\";\"ИНТА\";\"other\"\n\"1505579\";\"Инта\";\"other\"\n\"1505579\";\"인타\";\"other\"\n\"1505584\";\"Inskoy\";\"main\"\n\"1505584\";\"INSKOJ\";\"other\"\n\"1505584\";\"Inskoj\";\"other\"\n\"1505584\";\"ИНСКОЙ\";\"other\"\n\"1505584\";\"Инской\";\"other\"\n\"1505933\";\"Ilanskiy\";\"main\"\n\"1505933\";\"ILANSKIJ\";\"other\"\n\"1505933\";\"Ilanskij\";\"other\"\n\"1505933\";\"Ilanskoe\";\"other\"\n\"1505933\";\"Ilanskoye\";\"other\"\n\"1505933\";\"ИЛАНСКИЙ\";\"other\"\n\"1505946\";\"Ikovka\";\"main\"\n\"1505946\";\"Иковка\";\"other\"\n\"1505965\";\"Igrim\";\"main\"\n\"1505965\";\"IGRIM\";\"other\"\n\"1505965\";\"Igrimskiye\";\"other\"\n\"1505965\";\"Yurty Igrim\";\"other\"\n\"1505965\";\"ИГРИМ\";\"other\"\n\"1505965\";\"Игрим\";\"other\"\n\"1505991\";\"Igarka\";\"main\"\n\"1505991\";\"IGARKA\";\"other\"\n\"1505991\";\"Igarkae\";\"other\"\n\"1505991\";\"ИГАРКА\";\"other\"\n\"1505991\";\"Игаркæ\";\"other\"\n\"1505991\";\"Игарка\";\"other\"\n\"1505998\";\"Idrinskoye\";\"main\"\n\"1505998\";\"Idrinskoe\";\"other\"\n\"1505998\";\"Idrinskoje\";\"other\"\n\"1505998\";\"Идринское\";\"other\"\n\"1506073\";\"Gur’yevsk\";\"main\"\n\"1506073\";\"Gur'yevsk\";\"ascii\"\n\"1506073\";\"Gur'yevskov\";\"other\"\n\"1506073\";\"Gurevsk\";\"other\"\n\"1506073\";\"Gurjevsk\";\"other\"\n\"1506073\";\"Gur’yevskov\";\"other\"\n\"1506073\";\"Гурьевск\";\"other\"\n\"1506192\";\"Gramoteino\";\"main\"\n\"1506192\";\"GRAMOTEINO\";\"other\"\n\"1506192\";\"Gramoteina\";\"other\"\n\"1506192\";\"ГРАМОТЕИНО\";\"other\"\n\"1506192\";\"Грамотеино\";\"other\"\n\"1506244\";\"Gornyy Shchit\";\"main\"\n\"1506244\";\"Gornoshchitskoye\";\"other\"\n\"1506244\";\"Gornoshitski\";\"other\"\n\"1506244\";\"Gornoshitskoye\";\"other\"\n\"1506244\";\"Gornyj Sjtsjit\";\"other\"\n\"1506244\";\"Горный Щит\";\"other\"\n\"1506254\";\"Gornyy\";\"main\"\n\"1506254\";\"GORNYJ\";\"other\"\n\"1506254\";\"Gornyj\";\"other\"\n\"1506254\";\"ГОРНЫЙ\";\"other\"\n\"1506254\";\"Горный\";\"other\"\n\"1506258\";\"Gornyak\";\"main\"\n\"1506258\";\"Горняк\";\"other\"\n\"1506260\";\"Gornyak\";\"main\"\n\"1506260\";\"GORNJAK\";\"other\"\n\"1506260\";\"Gornjak\";\"other\"\n\"1506260\";\"ГОРНЯК\";\"other\"\n\"1506260\";\"Горняк\";\"other\"\n\"1506268\";\"Gornopravdinsk\";\"main\"\n\"1506268\";\"Filinskoye\";\"other\"\n\"1506268\";\"Gorno-Filinskoye\";\"other\"\n\"1506268\";\"Горноправдинск\";\"other\"\n\"1506271\";\"Gorno-Altaysk\";\"main\"\n\"1506271\";\"GORNO-ALTAJSK\";\"other\"\n\"1506271\";\"Gorno-Altaisk\";\"other\"\n\"1506271\";\"Gorno-Altaiskas\";\"other\"\n\"1506271\";\"Gorno-Altajsk\";\"other\"\n\"1506271\";\"Gorno-Altaïsk\";\"other\"\n\"1506271\";\"Gorno-Ałtajsk\";\"other\"\n\"1506271\";\"Gornyy Altaysk\";\"other\"\n\"1506271\";\"Oirat-Tura\";\"other\"\n\"1506271\";\"Oirot-Tura\";\"other\"\n\"1506271\";\"Oyrot-Tura\";\"other\"\n\"1506271\";\"Ulala\";\"other\"\n\"1506271\";\"goleunoaltaiseukeu\";\"other\"\n\"1506271\";\"ГОРНО-АЛТАЙСК\";\"other\"\n\"1506271\";\"Горно-Алтайск\";\"other\"\n\"1506271\";\"고르노알타이스크\";\"other\"\n\"1506394\";\"Plotnikovo\";\"main\"\n\"1506394\";\"Gorbunovka\";\"other\"\n\"1506394\";\"Gorbunovskiy\";\"other\"\n\"1506394\";\"Plotnikovskiy\";\"other\"\n\"1506394\";\"Плотниково\";\"other\"\n\"1506422\";\"Golyshmanovo\";\"main\"\n\"1506422\";\"GOLYSHMANOVO\";\"other\"\n\"1506422\";\"Golysjmanovo\";\"other\"\n\"1506422\";\"Katyshka\";\"other\"\n\"1506422\";\"ГОЛЫШМАНОВО\";\"other\"\n\"1506422\";\"Голышманово\";\"other\"\n\"1506499\";\"Glyadyanskoye\";\"main\"\n\"1506499\";\"Gljadjanskoje\";\"other\"\n\"1506499\";\"Глядянское\";\"other\"\n\"1506676\";\"Gari\";\"main\"\n\"1506676\";\"GARI\";\"other\"\n\"1506676\";\"Garinskoye\";\"other\"\n\"1506676\";\"ГАРИ\";\"other\"\n\"1506676\";\"Гари\";\"other\"\n\"1506834\";\"Filimonovo\";\"main\"\n\"1506834\";\"FILIMONOVO\";\"other\"\n\"1506834\";\"ФИЛИМОНОВО\";\"other\"\n\"1506938\";\"Erzin\";\"main\"\n\"1506938\";\"Bay-Tag\";\"other\"\n\"1506938\";\"Saryg-Buluk\";\"other\"\n\"1506938\";\"Saryg-Bulun\";\"other\"\n\"1506938\";\"Эрзин\";\"other\"\n\"1507035\";\"Dzerzhinskoye\";\"main\"\n\"1507035\";\"Dzerzhinskoe\";\"other\"\n\"1507035\";\"Dzerzjinskoje\";\"other\"\n\"1507035\";\"Rozhdestvenskoye\";\"other\"\n\"1507035\";\"Дзержинское\";\"other\"\n\"1507059\";\"Dvurechensk\";\"main\"\n\"1507059\";\"DVURECHENSK\";\"other\"\n\"1507059\";\"Dvuretsjensk\";\"other\"\n\"1507059\";\"Khrompik\";\"other\"\n\"1507059\";\"ДВУРЕЧЕНСК\";\"other\"\n\"1507059\";\"Двуреченск\";\"other\"\n\"1507116\";\"Dudinka\";\"main\"\n\"1507116\";\"Doedinka\";\"other\"\n\"1507116\";\"Dudinskoe\";\"other\"\n\"1507116\";\"do~udinka\";\"other\"\n\"1507116\";\"dudinka\";\"other\"\n\"1507116\";\"dwdynqh\";\"other\"\n\"1507116\";\"Дудинка\";\"other\"\n\"1507116\";\"דודינקה\";\"other\"\n\"1507116\";\"ドゥディンカ\";\"other\"\n\"1507116\";\"두딘카\";\"other\"\n\"1507172\";\"Dubinino\";\"main\"\n\"1507172\";\"DUBININO\";\"other\"\n\"1507172\";\"Dubininskoye\";\"other\"\n\"1507172\";\"ДУБИНИНО\";\"other\"\n\"1507239\";\"Dorogino\";\"main\"\n\"1507239\";\"DOROGINO\";\"other\"\n\"1507239\";\"Dorogina\";\"other\"\n\"1507239\";\"ДОРОГИНО\";\"other\"\n\"1507239\";\"Дорогино\";\"other\"\n\"1507300\";\"Dolgoderevenskoye\";\"main\"\n\"1507300\";\"Dolgoderevenskoje\";\"other\"\n\"1507300\";\"Долгодеревенское\";\"other\"\n\"1507379\";\"Divnogorsk\";\"main\"\n\"1507379\";\"DIVNOGORSK\";\"other\"\n\"1507379\";\"Skit\";\"other\"\n\"1507379\";\"ДИВНОГОРСК\";\"other\"\n\"1507390\";\"Dikson\";\"main\"\n\"1507390\";\"DIKSON\";\"other\"\n\"1507390\";\"Port Dickson\";\"other\"\n\"1507390\";\"ДИКСОН\";\"other\"\n\"1507488\";\"Degtyarsk\";\"main\"\n\"1507488\";\"DEGTJARSK\";\"other\"\n\"1507488\";\"Degtjarsk\";\"other\"\n\"1507488\";\"Degtyarka\";\"other\"\n\"1507488\";\"ДЕГТЯРСК\";\"other\"\n\"1507488\";\"Дегтярск\";\"other\"\n\"1507565\";\"Dalmatovo\";\"main\"\n\"1507565\";\"DALMATOVO\";\"other\"\n\"1507565\";\"Dolmatovo\";\"other\"\n\"1507565\";\"ДАЛМАТОВО\";\"other\"\n\"1507565\";\"Далматово\";\"other\"\n\"1507636\";\"Chunskiy\";\"main\"\n\"1507636\";\"CHUNSKIJ\";\"other\"\n\"1507636\";\"Chuna\";\"other\"\n\"1507636\";\"Tsjunskij\";\"other\"\n\"1507636\";\"ЧУНСКИЙ\";\"other\"\n\"1507636\";\"Чунский\";\"other\"\n\"1507638\";\"Chunoyar\";\"main\"\n\"1507638\";\"Chunojar\";\"other\"\n\"1507638\";\"Tsjunojar\";\"other\"\n\"1507638\";\"Чунояр\";\"other\"\n\"1507679\";\"Chulym\";\"main\"\n\"1507679\";\"CHULYM\";\"other\"\n\"1507679\";\"Chalyn\";\"other\"\n\"1507679\";\"Chulim\";\"other\"\n\"1507679\";\"Tsjulym\";\"other\"\n\"1507679\";\"ЧУЛЫМ\";\"other\"\n\"1507679\";\"Чулым\";\"other\"\n\"1507745\";\"Choya\";\"main\"\n\"1507745\";\"Chaya\";\"other\"\n\"1507745\";\"Tsjoja\";\"other\"\n\"1507745\";\"Чоя\";\"other\"\n\"1507801\";\"Chistogorskiy\";\"main\"\n\"1507801\";\"CHISTOGORSKIJ\";\"other\"\n\"1507801\";\"Tsjistogorskij\";\"other\"\n\"1507801\";\"ЧИСТОГОРСКИЙ\";\"other\"\n\"1507801\";\"Чистогорский\";\"other\"\n\"1507926\";\"Chesma\";\"main\"\n\"1507926\";\"Tsjesma\";\"other\"\n\"1507926\";\"Чесма\";\"other\"\n\"1507934\";\"Chervishevo\";\"main\"\n\"1507934\";\"Chervishiyevskoye\";\"other\"\n\"1507934\";\"Tsjervisjevo\";\"other\"\n\"1507934\";\"Червишево\";\"other\"\n\"1508054\";\"Chernogorsk\";\"main\"\n\"1508054\";\"CHERNOGORSK\";\"other\"\n\"1508054\";\"Cernogorsk\";\"other\"\n\"1508054\";\"Tsernogorsk\";\"other\"\n\"1508054\";\"Tšernogorsk\";\"other\"\n\"1508054\";\"cheleunogoleuseukeu\";\"other\"\n\"1508054\";\"Ĉernogorsk\";\"other\"\n\"1508054\";\"ЧЕРНОГОРСК\";\"other\"\n\"1508054\";\"Черногорск\";\"other\"\n\"1508054\";\"체르노고르스크\";\"other\"\n\"1508138\";\"Cherlak\";\"main\"\n\"1508138\";\"CHERLAK\";\"other\"\n\"1508138\";\"Chavlak\";\"other\"\n\"1508138\";\"Cherlakovskaya\";\"other\"\n\"1508138\";\"Cherlakskiy\";\"other\"\n\"1508138\";\"Tsjerlak\";\"other\"\n\"1508138\";\"ЧЕРЛАК\";\"other\"\n\"1508138\";\"Черлак\";\"other\"\n\"1508161\";\"Cherepanovo\";\"main\"\n\"1508161\";\"CHEREPANOVO\";\"other\"\n\"1508161\";\"Tsjerepanovo\";\"other\"\n\"1508161\";\"ЧЕРЕПАНОВО\";\"other\"\n\"1508161\";\"Черепаново\";\"other\"\n\"1508177\";\"Cherëmushki\";\"main\"\n\"1508177\";\"Cheremushki\";\"ascii\"\n\"1508177\";\"Tsjeremusjki\";\"other\"\n\"1508177\";\"Черёмушки\";\"other\"\n\"1508217\";\"Cheremshanka\";\"main\"\n\"1508217\";\"CHEREMSHANKA\";\"other\"\n\"1508217\";\"Tsjeremsjanka\";\"other\"\n\"1508217\";\"ЧЕРЕМШАНКА\";\"other\"\n\"1508217\";\"Черемшанка\";\"other\"\n\"1508230\";\"Cheremnoye\";\"main\"\n\"1508230\";\"CHEREMNOE\";\"other\"\n\"1508230\";\"Cheremnovo\";\"other\"\n\"1508230\";\"Cheremnovskoye\";\"other\"\n\"1508230\";\"Tsjeremnoje\";\"other\"\n\"1508230\";\"ЧЕРЕМНОЕ\";\"other\"\n\"1508230\";\"Черемное\";\"other\"\n\"1508260\";\"Novobirilyussy\";\"main\"\n\"1508260\";\"Chepysheva\";\"other\"\n\"1508260\";\"Chipusheva\";\"other\"\n\"1508260\";\"Novobiriljussy\";\"other\"\n\"1508260\";\"Новобирилюссы\";\"other\"\n\"1508285\";\"Chemal\";\"main\"\n\"1508285\";\"CHEMAL\";\"other\"\n\"1508285\";\"Chemla\";\"other\"\n\"1508285\";\"Tsjemal\";\"other\"\n\"1508285\";\"ЧЕМАЛ\";\"other\"\n\"1508285\";\"Чемал\";\"other\"\n\"1508291\";\"Chelyabinsk\";\"main\"\n\"1508291\";\"Celabinsk\";\"other\"\n\"1508291\";\"Celabinska\";\"other\"\n\"1508291\";\"Celiabinsc\";\"other\"\n\"1508291\";\"Celiabinsk\";\"other\"\n\"1508291\";\"Celiabinskas\";\"other\"\n\"1508291\";\"Celjabinsk\";\"other\"\n\"1508291\";\"Celyabinsk\";\"other\"\n\"1508291\";\"Cheliabinsk\";\"other\"\n\"1508291\";\"Cheliábinsk\";\"other\"\n\"1508291\";\"Cheljabinsk\";\"other\"\n\"1508291\";\"Czelabinsk\";\"other\"\n\"1508291\";\"Czelabińsk\";\"other\"\n\"1508291\";\"Tcheliabinsk\";\"other\"\n\"1508291\";\"Tjeljabinsk\";\"other\"\n\"1508291\";\"Tscheljabinsk\";\"other\"\n\"1508291\";\"Tseljabinsk\";\"other\"\n\"1508291\";\"Tsjeljabinsk\";\"other\"\n\"1508291\";\"Tšeljabinsk\";\"other\"\n\"1508291\";\"chellyabinseukeu\";\"other\"\n\"1508291\";\"cheryabinsuku\";\"other\"\n\"1508291\";\"z'lyybynsq\";\"other\"\n\"1508291\";\"Çelyabinsk\";\"other\"\n\"1508291\";\"Ĉelabinsk\";\"other\"\n\"1508291\";\"Čeliabinskas\";\"other\"\n\"1508291\";\"Čeljabinsk\";\"other\"\n\"1508291\";\"Čeļabinska\";\"other\"\n\"1508291\";\"Челябинск\";\"other\"\n\"1508291\";\"Челябінськ\";\"other\"\n\"1508291\";\"Чељабинск\";\"other\"\n\"1508291\";\"צ'לייבינסק\";\"other\"\n\"1508291\";\"チェリャビンスク\";\"other\"\n\"1508291\";\"첼랴빈스크\";\"other\"\n\"1508350\";\"Chebarkul’\";\"main\"\n\"1508350\";\"Chebarkul'\";\"ascii\"\n\"1508350\";\"CHEBARKUL'\";\"other\"\n\"1508350\";\"Tsjebarkul\";\"other\"\n\"1508350\";\"ЧЕБАРКУЛЬ\";\"other\"\n\"1508350\";\"Чебаркуль\";\"other\"\n\"1508427\";\"Charyshskoye\";\"main\"\n\"1508427\";\"Charishskaya\";\"other\"\n\"1508427\";\"Tsjarysjskoje\";\"other\"\n\"1508427\";\"Чарышское\";\"other\"\n\"1508458\";\"Chany\";\"main\"\n\"1508458\";\"CHANY\";\"other\"\n\"1508458\";\"Tschany\";\"other\"\n\"1508458\";\"Tsjany\";\"other\"\n\"1508458\";\"ЧАНЫ\";\"other\"\n\"1508458\";\"Чаны\";\"other\"\n\"1508501\";\"Chadan\";\"main\"\n\"1508501\";\"CHADAN\";\"other\"\n\"1508501\";\"Chadana\";\"other\"\n\"1508501\";\"Dzhedanna\";\"other\"\n\"1508501\";\"Tsjadan\";\"other\"\n\"1508501\";\"ЧАДАН\";\"other\"\n\"1508501\";\"Чадан\";\"other\"\n\"1508517\";\"Bystryy Istok\";\"main\"\n\"1508517\";\"Bystry Istok\";\"other\"\n\"1508517\";\"Bystryiy Istok\";\"other\"\n\"1508517\";\"Bystryj Istok\";\"other\"\n\"1508517\";\"Быстрый Исток\";\"other\"\n\"1508589\";\"Butka\";\"main\"\n\"1508589\";\"Butki\";\"other\"\n\"1508589\";\"Бутка\";\"other\"\n\"1508636\";\"Burla\";\"main\"\n\"1508636\";\"Бурла\";\"other\"\n\"1508715\";\"Bulanash\";\"main\"\n\"1508715\";\"BULANASH\";\"other\"\n\"1508715\";\"Bulanasj\";\"other\"\n\"1508715\";\"БУЛАНАШ\";\"other\"\n\"1508715\";\"Буланаш\";\"other\"\n\"1508802\";\"Brodokalmak\";\"main\"\n\"1508802\";\"Brodokamlak\";\"other\"\n\"1508802\";\"Бродокалмак\";\"other\"\n\"1508811\";\"Bredy\";\"main\"\n\"1508811\";\"BREDY\";\"other\"\n\"1508811\";\"БРЕДЫ\";\"other\"\n\"1508811\";\"Бреды\";\"other\"\n\"1508879\";\"Borovskiy\";\"main\"\n\"1508879\";\"BOROVSKIJ\";\"other\"\n\"1508879\";\"Borovskij\";\"other\"\n\"1508879\";\"БОРОВСКИЙ\";\"other\"\n\"1508894\";\"Borovoy\";\"main\"\n\"1508894\";\"BOROVOJ\";\"other\"\n\"1508894\";\"Borovaya\";\"other\"\n\"1508894\";\"Borovoj\";\"other\"\n\"1508894\";\"БОРОВОЙ\";\"other\"\n\"1508894\";\"Боровой\";\"other\"\n\"1508918\";\"Borovikha\";\"main\"\n\"1508918\";\"BOROVIKHA\";\"other\"\n\"1508918\";\"БОРОВИХА\";\"other\"\n\"1508918\";\"Боровиха\";\"other\"\n\"1508943\";\"Borodino\";\"main\"\n\"1508943\";\"Бородино\";\"other\"\n\"1509008\";\"Bor\";\"main\"\n\"1509008\";\"Бор\";\"other\"\n\"1509494\";\"Bol’sherech’ye\";\"main\"\n\"1509494\";\"Bol'sherech'ye\";\"ascii\"\n\"1509494\";\"Bol'sherechenskoye\";\"other\"\n\"1509494\";\"Bolsjeretsje\";\"other\"\n\"1509494\";\"Bol’sherechenskoye\";\"other\"\n\"1509494\";\"Большеречье\";\"other\"\n\"1509819\";\"Bolotnoye\";\"main\"\n\"1509819\";\"BOLOTNOE\";\"other\"\n\"1509819\";\"Bolotinskoe\";\"other\"\n\"1509819\";\"Bolotnoje\";\"other\"\n\"1509819\";\"БОЛОТНОЕ\";\"other\"\n\"1509819\";\"Болотное\";\"other\"\n\"1509844\";\"Boguchany\";\"main\"\n\"1509844\";\"Bogutsjany\";\"other\"\n\"1509844\";\"Богучаны\";\"other\"\n\"1509847\";\"Bograd\";\"main\"\n\"1509847\";\"Bagrad\";\"other\"\n\"1509847\";\"Боград\";\"other\"\n\"1509852\";\"Bogotol\";\"main\"\n\"1509852\";\"Borotol\";\"other\"\n\"1509852\";\"Боготол\";\"other\"\n\"1509888\";\"Bogdanovich\";\"main\"\n\"1509888\";\"BOGDANOVICH\";\"other\"\n\"1509888\";\"Bogdandvich\";\"other\"\n\"1509888\";\"Bogdanovichi\";\"other\"\n\"1509888\";\"Bogdanovikhi\";\"other\"\n\"1509888\";\"Bogdanovitsj\";\"other\"\n\"1509888\";\"БОГДАНОВИЧ\";\"other\"\n\"1509888\";\"Богданович\";\"other\"\n\"1509897\";\"Bogashevo\";\"main\"\n\"1509897\";\"BOGASHEVO\";\"other\"\n\"1509897\";\"Bogashevskiy\";\"other\"\n\"1509897\";\"Bogasjevo\";\"other\"\n\"1509897\";\"БОГАШЕВО\";\"other\"\n\"1509897\";\"Богашево\";\"other\"\n\"1509902\";\"Bogandinskiy\";\"main\"\n\"1509902\";\"BOGANDINSKIJ\";\"other\"\n\"1509902\";\"Bogandinskaya\";\"other\"\n\"1509902\";\"Bogandinskoe\";\"other\"\n\"1509902\";\"Bogandinskoye\";\"other\"\n\"1509902\";\"БОГАНДИНСКИЙ\";\"other\"\n\"1509902\";\"Богандинский\";\"other\"\n\"1509902\";\"Богандинское\";\"other\"\n\"1509929\";\"Bobrovskiy\";\"main\"\n\"1509929\";\"BOBROVSKIJ\";\"other\"\n\"1509929\";\"Bobrovskij\";\"other\"\n\"1509929\";\"Bobrovskoye\";\"other\"\n\"1509929\";\"БОБРОВСКИЙ\";\"other\"\n\"1509929\";\"Бобровский\";\"other\"\n\"1509955\";\"Bobrovka\";\"main\"\n\"1509955\";\"Bobrovskij\";\"other\"\n\"1509955\";\"Bobrovskiy\";\"other\"\n\"1509955\";\"Бобровка\";\"other\"\n\"1509955\";\"Бобровский\";\"other\"\n\"1509999\";\"Blagoveshchenka\";\"main\"\n\"1509999\";\"BLAGOVESHHENKA\";\"other\"\n\"1509999\";\"Blagovesjtsjenka\";\"other\"\n\"1509999\";\"БЛАГОВЕЩЕНКА\";\"other\"\n\"1509999\";\"Благовещенка\";\"other\"\n\"1510018\";\"Biysk\";\"main\"\n\"1510018\";\"BIJSK\";\"other\"\n\"1510018\";\"Biejsk\";\"other\"\n\"1510018\";\"Biisk\";\"other\"\n\"1510018\";\"Bijsk\";\"other\"\n\"1510018\";\"Biscum\";\"other\"\n\"1510018\";\"Bisk\";\"other\"\n\"1510018\";\"Biyusk\";\"other\"\n\"1510018\";\"Mpisk\";\"other\"\n\"1510018\";\"Viysk\";\"other\"\n\"1510018\";\"bi si ke\";\"other\"\n\"1510018\";\"biseukeu\";\"other\"\n\"1510018\";\"Μπισκ\";\"other\"\n\"1510018\";\"БИЙСК\";\"other\"\n\"1510018\";\"Бийск\";\"other\"\n\"1510018\";\"Бійськ\";\"other\"\n\"1510018\";\"比斯克\";\"other\"\n\"1510018\";\"비스크\";\"other\"\n\"1510030\";\"Biskamzha\";\"main\"\n\"1510030\";\"BISKAMZHA\";\"other\"\n\"1510030\";\"Biskamzja\";\"other\"\n\"1510030\";\"БИСКАМЖА\";\"other\"\n\"1510030\";\"Бискамжа\";\"other\"\n\"1510041\";\"Biryusinsk\";\"main\"\n\"1510041\";\"BIRJUSINSK\";\"other\"\n\"1510041\";\"Birjusinsk\";\"other\"\n\"1510041\";\"Suyetikha\";\"other\"\n\"1510041\";\"БИРЮСИНСК\";\"other\"\n\"1510041\";\"Бирюсинск\";\"other\"\n\"1510131\";\"Beya\";\"main\"\n\"1510131\";\"Beja\";\"other\"\n\"1510131\";\"Бея\";\"other\"\n\"1510203\";\"Berëzovskiy\";\"main\"\n\"1510203\";\"Berezovskiy\";\"ascii\"\n\"1510203\";\"BEREZOVSKIJ\";\"other\"\n\"1510203\";\"Berezovskiy Zavod\";\"other\"\n\"1510203\";\"Berjozovskij\";\"other\"\n\"1510203\";\"БЕРЕЗОВСКИЙ\";\"other\"\n\"1510203\";\"Берёзовский\";\"other\"\n\"1510214\";\"Berëzovo\";\"main\"\n\"1510214\";\"Berezovo\";\"ascii\"\n\"1510214\";\"Berezov\";\"other\"\n\"1510214\";\"Berjozovo\";\"other\"\n\"1510214\";\"Sugmut-Vozh\";\"other\"\n\"1510214\";\"Берёзово\";\"other\"\n\"1510335\";\"Beregovoy\";\"main\"\n\"1510335\";\"BEREGOVOJ\";\"other\"\n\"1510335\";\"Beregovoj\";\"other\"\n\"1510335\";\"Kharina\";\"other\"\n\"1510335\";\"Kharino\";\"other\"\n\"1510335\";\"БЕРЕГОВОЙ\";\"other\"\n\"1510335\";\"Береговой\";\"other\"\n\"1510350\";\"Berdsk\";\"main\"\n\"1510350\";\"BERDSK\";\"other\"\n\"1510350\";\"Berdskoye\";\"other\"\n\"1510350\";\"Bordsk\";\"other\"\n\"1510350\";\"beleucheukeu\";\"other\"\n\"1510350\";\"БЕРДСК\";\"other\"\n\"1510350\";\"Бердск\";\"other\"\n\"1510350\";\"베르츠크\";\"other\"\n\"1510370\";\"Belyy Yar\";\"main\"\n\"1510370\";\"BELYJ-JAR\";\"other\"\n\"1510370\";\"Bely Yar\";\"other\"\n\"1510370\";\"Belyj Jar\";\"other\"\n\"1510370\";\"БЕЛЫЙ-ЯР\";\"other\"\n\"1510370\";\"Белый Яр\";\"other\"\n\"1510377\";\"Belyy Yar\";\"main\"\n\"1510377\";\"Belyj Jar\";\"other\"\n\"1510377\";\"Belyj-Jar\";\"other\"\n\"1510377\";\"Naryl Koye\";\"other\"\n\"1510377\";\"Narylkov\";\"other\"\n\"1510377\";\"Белый Яр\";\"other\"\n\"1510377\";\"Белый-Яр\";\"other\"\n\"1510395\";\"Belyashi\";\"main\"\n\"1510395\";\"Beljashi\";\"other\"\n\"1510395\";\"Beljasji\";\"other\"\n\"1510395\";\"Беляши\";\"other\"\n\"1510421\";\"Belozërskoye\";\"main\"\n\"1510421\";\"Belozerskoye\";\"ascii\"\n\"1510421\";\"Belozerskoe\";\"other\"\n\"1510421\";\"Belozjorskoe\";\"other\"\n\"1510421\";\"Белозерское\";\"other\"\n\"1510421\";\"Белозёрское\";\"other\"\n\"1510450\";\"Beloyarskiy\";\"main\"\n\"1510450\";\"Belojarskij\";\"other\"\n\"1510450\";\"Белоярский\";\"other\"\n\"1510451\";\"Beloyarskiy\";\"main\"\n\"1510451\";\"BELOJARSKIJ\";\"other\"\n\"1510451\";\"Belojarskij\";\"other\"\n\"1510451\";\"Beloyarsk\";\"other\"\n\"1510451\";\"Beloyarskoye\";\"other\"\n\"1510451\";\"БЕЛОЯРСКИЙ\";\"other\"\n\"1510451\";\"Белоярский\";\"other\"\n\"1510454\";\"Beloyarsk\";\"main\"\n\"1510454\";\"BELOJARSK\";\"other\"\n\"1510454\";\"Belojarsk\";\"other\"\n\"1510454\";\"Beloyarskoye\";\"other\"\n\"1510454\";\"БЕЛОЯРСК\";\"other\"\n\"1510454\";\"Белоярск\";\"other\"\n\"1510469\";\"Belovo\";\"main\"\n\"1510469\";\"Belova\";\"other\"\n\"1510469\";\"Белово\";\"other\"\n\"1510502\";\"Belokurikha\";\"main\"\n\"1510502\";\"BELOKURIKHA\";\"other\"\n\"1510502\";\"Novaya Belokurikha\";\"other\"\n\"1510502\";\"Novobelokurikha\";\"other\"\n\"1510502\";\"БЕЛОКУРИХА\";\"other\"\n\"1510502\";\"Белокуриха\";\"other\"\n\"1510514\";\"Belogorsk\";\"main\"\n\"1510514\";\"BELOGORSK\";\"other\"\n\"1510514\";\"Kiya-Shaltyr'\";\"other\"\n\"1510514\";\"Kiya-Shaltyr’\";\"other\"\n\"1510514\";\"БЕЛОГОРСК\";\"other\"\n\"1510514\";\"Белогорск\";\"other\"\n\"1510689\";\"Baykit\";\"main\"\n\"1510689\";\"Baikit\";\"other\"\n\"1510689\";\"Bajkit\";\"other\"\n\"1510689\";\"Байкит\";\"other\"\n\"1510690\";\"Bay-Khaak\";\"main\"\n\"1510690\";\"Baj-Khaak\";\"other\"\n\"1510690\";\"Baj-Khak\";\"other\"\n\"1510690\";\"Bay-Khak\";\"other\"\n\"1510690\";\"Baygak\";\"other\"\n\"1510690\";\"Бай-Хаак\";\"other\"\n\"1510690\";\"Бай-Хак\";\"other\"\n\"1510697\";\"Baykalovo\";\"main\"\n\"1510697\";\"Bajkalovo\";\"other\"\n\"1510697\";\"Байкалово\";\"other\"\n\"1510709\";\"Bayevo\";\"main\"\n\"1510709\";\"Bajevo\";\"other\"\n\"1510709\";\"Баево\";\"other\"\n\"1510817\";\"Barzas\";\"main\"\n\"1510817\";\"BARZAS\";\"other\"\n\"1510817\";\"БАРЗАС\";\"other\"\n\"1510817\";\"Барзас\";\"other\"\n\"1510821\";\"Baryshevo\";\"main\"\n\"1510821\";\"Barysheva\";\"other\"\n\"1510821\";\"Barysjevo\";\"other\"\n\"1510821\";\"Барышево\";\"other\"\n\"1510842\";\"Barsovo\";\"main\"\n\"1510842\";\"BARSOVO\";\"other\"\n\"1510842\";\"БАРСОВО\";\"other\"\n\"1510842\";\"Барсово\";\"other\"\n\"1510853\";\"Barnaul\";\"main\"\n\"1510853\";\"BARNAUL\";\"other\"\n\"1510853\";\"Barnaoul\";\"other\"\n\"1510853\";\"Barnauel\";\"other\"\n\"1510853\";\"Barnaul - Barnaul\";\"other\"\n\"1510853\";\"Barnaul - Барнау́л\";\"other\"\n\"1510853\";\"Barnaula\";\"other\"\n\"1510853\";\"Barnaulas\";\"other\"\n\"1510853\";\"Barnauł\";\"other\"\n\"1510853\";\"Barnaül\";\"other\"\n\"1510853\";\"Mparnaoul\";\"other\"\n\"1510853\";\"ba er nao er\";\"other\"\n\"1510853\";\"baleunaul\";\"other\"\n\"1510853\";\"Μπαρναούλ\";\"other\"\n\"1510853\";\"БАРНАУЛ\";\"other\"\n\"1510853\";\"Барнаул\";\"other\"\n\"1510853\";\"ברנאול\";\"other\"\n\"1510853\";\"巴尔瑙尔\";\"other\"\n\"1510853\";\"바르나울\";\"other\"\n\"1510916\";\"Barabinsk\";\"main\"\n\"1510916\";\"BARABINSK\";\"other\"\n\"1510916\";\"Barabińsk\";\"other\"\n\"1510916\";\"balabinseukeu\";\"other\"\n\"1510916\";\"barabinsuku\";\"other\"\n\"1510916\";\"БАРАБИНСК\";\"other\"\n\"1510916\";\"Барабинск\";\"other\"\n\"1510916\";\"バラビンスク\";\"other\"\n\"1510916\";\"바라빈스크\";\"other\"\n\"1510960\";\"Balgazyn\";\"main\"\n\"1510960\";\"Balgazik\";\"other\"\n\"1510960\";\"Balgazin\";\"other\"\n\"1510960\";\"Balgazun\";\"other\"\n\"1510960\";\"Балгазын\";\"other\"\n\"1510998\";\"Balakhta\";\"main\"\n\"1510998\";\"BALAKHTA\";\"other\"\n\"1510998\";\"БАЛАХТА\";\"other\"\n\"1510998\";\"Балахта\";\"other\"\n\"1511057\";\"Bakchar\";\"main\"\n\"1511057\";\"Baktsjar\";\"other\"\n\"1511057\";\"Бакчар\";\"other\"\n\"1511094\";\"Bagan\";\"main\"\n\"1511094\";\"Karasinskiy\";\"other\"\n\"1511094\";\"Баган\";\"other\"\n\"1511103\";\"Bachatskiy\";\"main\"\n\"1511103\";\"BACHATSKIJ\";\"other\"\n\"1511103\";\"Bachatskij\";\"other\"\n\"1511103\";\"БАЧАТСКИЙ\";\"other\"\n\"1511103\";\"Бачатский\";\"other\"\n\"1511135\";\"Azovo\";\"main\"\n\"1511135\";\"Azovskoye\";\"other\"\n\"1511135\";\"Азово\";\"other\"\n\"1511146\";\"Azanka\";\"main\"\n\"1511146\";\"Азанка\";\"other\"\n\"1511217\";\"Aya\";\"main\"\n\"1511217\";\"Aja\";\"other\"\n\"1511217\";\"Ayskoye\";\"other\"\n\"1511217\";\"Ая\";\"other\"\n\"1511276\";\"Atagay\";\"main\"\n\"1511276\";\"ATAGAJ\";\"other\"\n\"1511276\";\"Atagaj\";\"other\"\n\"1511276\";\"АТАГАЙ\";\"other\"\n\"1511276\";\"Атагай\";\"other\"\n\"1511303\";\"Askiz\";\"main\"\n\"1511303\";\"Аскиз\";\"other\"\n\"1511304\";\"Askiz\";\"main\"\n\"1511304\";\"ASKIZ\";\"other\"\n\"1511304\";\"Askysskoye\";\"other\"\n\"1511304\";\"Askyzskoye\";\"other\"\n\"1511304\";\"АСКИЗ\";\"other\"\n\"1511304\";\"Аскиз\";\"other\"\n\"1511309\";\"Asino\";\"main\"\n\"1511309\";\"ASINO\";\"other\"\n\"1511309\";\"ashino\";\"other\"\n\"1511309\";\"asino\";\"other\"\n\"1511309\";\"АСИНО\";\"other\"\n\"1511309\";\"Асино\";\"other\"\n\"1511309\";\"アシノ\";\"other\"\n\"1511309\";\"아시노\";\"other\"\n\"1511329\";\"Asbestovskiy\";\"main\"\n\"1511329\";\"ASBESTOVSKIJ\";\"other\"\n\"1511329\";\"Asbestovskij\";\"other\"\n\"1511329\";\"Asbestovyy\";\"other\"\n\"1511329\";\"АСБЕСТОВСКИЙ\";\"other\"\n\"1511329\";\"Асбестовский\";\"other\"\n\"1511330\";\"Asbest\";\"main\"\n\"1511330\";\"ASBEST\";\"other\"\n\"1511330\";\"АСБЕСТ\";\"other\"\n\"1511330\";\"Асбест\";\"other\"\n\"1511361\";\"Artyshta\";\"main\"\n\"1511361\";\"ARTYSHTA\";\"other\"\n\"1511361\";\"Artyshtinskaya\";\"other\"\n\"1511361\";\"АРТЫШТА\";\"other\"\n\"1511361\";\"Артышта\";\"other\"\n\"1511364\";\"Artybash\";\"main\"\n\"1511364\";\"Artybasj\";\"other\"\n\"1511364\";\"Артыбаш\";\"other\"\n\"1511368\";\"Artëmovskiy\";\"main\"\n\"1511368\";\"Artemovskiy\";\"ascii\"\n\"1511368\";\"ARTEMOVSKIJ\";\"other\"\n\"1511368\";\"Artemovsk\";\"other\"\n\"1511368\";\"Artemovski\";\"other\"\n\"1511368\";\"Artjomovskij\";\"other\"\n\"1511368\";\"Yegorshina\";\"other\"\n\"1511368\";\"Yegorshino\";\"other\"\n\"1511368\";\"Yegorshinskiye Kopi\";\"other\"\n\"1511368\";\"АРТЕМОВСКИЙ\";\"other\"\n\"1511368\";\"Артёмовский\";\"other\"\n\"1511381\";\"Aromashevo\";\"main\"\n\"1511381\";\"Aromasjevo\";\"other\"\n\"1511381\";\"Аромашево\";\"other\"\n\"1511382\";\"Armizonskoye\";\"main\"\n\"1511382\";\"Armizonskoje\";\"other\"\n\"1511382\";\"Армизонское\";\"other\"\n\"1511428\";\"Argayash\";\"main\"\n\"1511428\";\"ARGAJASH\";\"other\"\n\"1511428\";\"Argajash\";\"other\"\n\"1511428\";\"АРГАЯШ\";\"other\"\n\"1511428\";\"Аргаяш\";\"other\"\n\"1511466\";\"Aramil’\";\"main\"\n\"1511466\";\"Aramil'\";\"ascii\"\n\"1511466\";\"ARAMIL'\";\"other\"\n\"1511466\";\"Aramil'skoye\";\"other\"\n\"1511466\";\"Aramil’skoye\";\"other\"\n\"1511466\";\"АРАМИЛЬ\";\"other\"\n\"1511466\";\"Арамиль\";\"other\"\n\"1511494\";\"Anzhero-Sudzhensk\";\"main\"\n\"1511494\";\"ANZHERO-SUDZHENSK\";\"other\"\n\"1511494\";\"Anjero-Sudjensk\";\"other\"\n\"1511494\";\"Anschero-Sudschensk\";\"other\"\n\"1511494\";\"Anshero-Sudshensk\";\"other\"\n\"1511494\";\"Anzero-Sudzensk\";\"other\"\n\"1511494\";\"Anzherka\";\"other\"\n\"1511494\";\"Anzhero-Sudzhenka\";\"other\"\n\"1511494\";\"Anzhero-Sujensk\";\"other\"\n\"1511494\";\"Anĵero-Sudĵensk\";\"other\"\n\"1511494\";\"Anžero-Sudžensk\";\"other\"\n\"1511494\";\"Sudzhenka\";\"other\"\n\"1511494\";\"anjelosujenseukeu\";\"other\"\n\"1511494\";\"АНЖЕРО-СУДЖЕНСК\";\"other\"\n\"1511494\";\"Анжеро-Судженск\";\"other\"\n\"1511494\";\"안제로수젠스크\";\"other\"\n\"1511538\";\"Antipino\";\"main\"\n\"1511538\";\"Antipina\";\"other\"\n\"1511538\";\"Антипино\";\"other\"\n\"1511646\";\"Andra\";\"main\"\n\"1511646\";\"ANDRA\";\"other\"\n\"1511646\";\"Karakarskiye\";\"other\"\n\"1511646\";\"АНДРА\";\"other\"\n\"1511646\";\"Андра\";\"other\"\n\"1511709\";\"Alzamay\";\"main\"\n\"1511709\";\"ALZAMAJ\";\"other\"\n\"1511709\";\"Alzamaj\";\"other\"\n\"1511709\";\"Alzamayskoye\";\"other\"\n\"1511709\";\"АЛЗАМАЙ\";\"other\"\n\"1511709\";\"Алзамай\";\"other\"\n\"1511736\";\"Altayskoye\";\"main\"\n\"1511736\";\"ALTAJSKIJ\";\"other\"\n\"1511736\";\"Altaisk\";\"other\"\n\"1511736\";\"Altaiskoe\";\"other\"\n\"1511736\";\"Altajskoe\";\"other\"\n\"1511736\";\"Altayskiy\";\"other\"\n\"1511736\";\"АЛТАЙСКИЙ\";\"other\"\n\"1511736\";\"Алтайское\";\"other\"\n\"1511783\";\"Aleysk\";\"main\"\n\"1511783\";\"ALEJSK\";\"other\"\n\"1511783\";\"Aleisk\";\"other\"\n\"1511783\";\"Alejsk\";\"other\"\n\"1511783\";\"Aleyskaya\";\"other\"\n\"1511783\";\"Aleyskoye\";\"other\"\n\"1511783\";\"АЛЕЙСК\";\"other\"\n\"1511783\";\"Алейск\";\"other\"\n\"1511846\";\"Aleksandrovskoye\";\"main\"\n\"1511846\";\"Aleksandrovka\";\"other\"\n\"1511846\";\"Aleksandrovskoje\";\"other\"\n\"1511846\";\"Александровское\";\"other\"\n\"1511954\";\"Alapayevsk\";\"main\"\n\"1511954\";\"ALAPAEVSK\";\"other\"\n\"1511954\";\"Alapaevsk\";\"other\"\n\"1511954\";\"Alapajevsk\";\"other\"\n\"1511954\";\"Alapajewsk\";\"other\"\n\"1511954\";\"Alpaevsk\";\"other\"\n\"1511954\";\"Ałapajewsk\";\"other\"\n\"1511954\";\"АЛАПАЕВСК\";\"other\"\n\"1511954\";\"Алапаевск\";\"other\"\n\"1511954\";\"Алапаєвськ\";\"other\"\n\"1511954\";\"Алапајевск\";\"other\"\n\"1511997\";\"Aktash\";\"main\"\n\"1511997\";\"AKTASH\";\"other\"\n\"1511997\";\"АКТАШ\";\"other\"\n\"1511997\";\"Акташ\";\"other\"\n\"1512019\";\"Aksarka\";\"main\"\n\"1512019\";\"Oksarka\";\"other\"\n\"1512019\";\"Аксарка\";\"other\"\n\"1512064\";\"Ak-Dovurak\";\"main\"\n\"1512064\";\"AK-DOVURAK\";\"other\"\n\"1512064\";\"Ak-Dovoerak\";\"other\"\n\"1512064\";\"Ak-Tovurak\";\"other\"\n\"1512064\";\"agdobulag\";\"other\"\n\"1512064\";\"АК-ДОВУРАК\";\"other\"\n\"1512064\";\"Ак-Довурак\";\"other\"\n\"1512064\";\"악도부락\";\"other\"\n\"1512086\";\"Akademgorodok\";\"main\"\n\"1512086\";\"Akademicheskiy Gorodok\";\"other\"\n\"1512086\";\"Gorod Nauki\";\"other\"\n\"1512086\";\"Novosibirskij Akademgorodok\";\"other\"\n\"1512086\";\"Novosibirskiy Nauchnyy Tsentr\";\"other\"\n\"1512086\";\"Science City\";\"other\"\n\"1512086\";\"akademgolodokeu\";\"other\"\n\"1512086\";\"akademugorodoku\";\"other\"\n\"1512086\";\"akadymjwrwdwk\";\"other\"\n\"1512086\";\"Академгородок\";\"other\"\n\"1512086\";\"Новосибирский Академгородок\";\"other\"\n\"1512086\";\"أكاديمجورودوك\";\"other\"\n\"1512086\";\"アカデムゴロドク\";\"other\"\n\"1512086\";\"아카뎀고로도크\";\"other\"\n\"1512101\";\"Agirish\";\"main\"\n\"1512101\";\"AGIRISH\";\"other\"\n\"1512101\";\"Akrysh\";\"other\"\n\"1512101\";\"АГИРИШ\";\"other\"\n\"1512101\";\"Агириш\";\"other\"\n\"1512102\";\"Aginskoye\";\"main\"\n\"1512102\";\"Aginskoe\";\"other\"\n\"1512102\";\"Aginskoje\";\"other\"\n\"1512102\";\"Агинское\";\"other\"\n\"1512165\";\"Achinsk\";\"main\"\n\"1512165\";\"ACHINSK\";\"other\"\n\"1512165\";\"Acinsk\";\"other\"\n\"1512165\";\"Acinskas\";\"other\"\n\"1512165\";\"Aczynsk\";\"other\"\n\"1512165\";\"Aczyńsk\";\"other\"\n\"1512165\";\"Atschinsk\";\"other\"\n\"1512165\";\"Atsinsk\";\"other\"\n\"1512165\";\"Atšinsk\";\"other\"\n\"1512165\";\"Aĉinsk\";\"other\"\n\"1512165\";\"Ačinsk\";\"other\"\n\"1512165\";\"Ačinskas\";\"other\"\n\"1512165\";\"achinsuku\";\"other\"\n\"1512165\";\"АЧИНСК\";\"other\"\n\"1512165\";\"Ачинск\";\"other\"\n\"1512165\";\"アチンスク\";\"other\"\n\"1512205\";\"Abaza\";\"main\"\n\"1512205\";\"ABAZA\";\"other\"\n\"1512205\";\"АБАЗА\";\"other\"\n\"1512205\";\"Абаза\";\"other\"\n\"1512210\";\"Abatskoye\";\"main\"\n\"1512210\";\"ABATSKIJ\";\"other\"\n\"1512210\";\"Abatskiy\";\"other\"\n\"1512210\";\"Abatskoe\";\"other\"\n\"1512210\";\"АБАТСКИЙ\";\"other\"\n\"1512210\";\"Абатское\";\"other\"\n\"1512218\";\"Aban\";\"main\"\n\"1512218\";\"ABAN\";\"other\"\n\"1512218\";\"Alban\";\"other\"\n\"1512218\";\"АБАН\";\"other\"\n\"1512218\";\"Абан\";\"other\"\n\"1512223\";\"Abalak\";\"main\"\n\"1512223\";\"Abalakskoye\";\"other\"\n\"1512223\";\"Абалак\";\"other\"\n\"1512236\";\"Abakan\";\"main\"\n\"1512236\";\"ABAKAN\";\"other\"\n\"1512236\";\"Abakan - Abakan\";\"other\"\n\"1512236\";\"Abakanskoye\";\"other\"\n\"1512236\";\"Abakán\";\"other\"\n\"1512236\";\"Abakán - Абакан\";\"other\"\n\"1512236\";\"a ba kan\";\"other\"\n\"1512236\";\"abakan\";\"other\"\n\"1512236\";\"АБАКАН\";\"other\"\n\"1512236\";\"Абакан\";\"other\"\n\"1512236\";\"阿巴坎\";\"other\"\n\"1512236\";\"아바칸\";\"other\"\n\"1512238\";\"Abagur\";\"main\"\n\"1512238\";\"ABAGUR\";\"other\"\n\"1512238\";\"Abinskaya\";\"other\"\n\"1512238\";\"АБАГУР\";\"other\"\n\"1512238\";\"Абагур\";\"other\"\n\"1536289\";\"Snezhinsk\";\"main\"\n\"1536289\";\"Cheljabinsk-70\";\"other\"\n\"1536289\";\"Chelyabinsk-70\";\"other\"\n\"1536289\";\"Semidesjatka\";\"other\"\n\"1536289\";\"Semidesyatka\";\"other\"\n\"1536289\";\"Семидесятка\";\"other\"\n\"1536289\";\"Снежинск\";\"other\"\n\"1536289\";\"Челябинск-70\";\"other\"\n\"1536648\";\"Istok\";\"main\"\n\"1536648\";\"ISTOK\";\"other\"\n\"1536648\";\"ИСТОК\";\"other\"\n\"1536648\";\"Исток\";\"other\"\n\"1536757\";\"Priob’ye\";\"main\"\n\"1536757\";\"Priob'ye\";\"ascii\"\n\"1536757\";\"Priobje\";\"other\"\n\"1536757\";\"Приобье\";\"other\"\n\"1537749\";\"Il'ichevo\";\"main\"\n\"1537749\";\"Ilitsjevo\";\"other\"\n\"1537749\";\"Sovkhoz Imeni Il'icha\";\"other\"\n\"1537749\";\"Ильичево\";\"other\"\n\"1538634\";\"Ozërsk\";\"main\"\n\"1538634\";\"Ozersk\";\"ascii\"\n\"1538634\";\"Chelyabinsk-40\";\"other\"\n\"1538634\";\"Chelyabinsk-65\";\"other\"\n\"1538634\";\"Mayak\";\"other\"\n\"1538634\";\"Ozernyy\";\"other\"\n\"1538634\";\"Ozërnyy\";\"other\"\n\"1538634\";\"Sorokovka\";\"other\"\n\"1538634\";\"Озерск\";\"other\"\n\"1538634\";\"Озёрск\";\"other\"\n\"1538635\";\"Zheleznogorsk\";\"main\"\n\"1538635\";\"Atomgrad\";\"other\"\n\"1538635\";\"Devyatka\";\"other\"\n\"1538635\";\"Krasnoyarsk-09\";\"other\"\n\"1538635\";\"Krasnoyarsk-26\";\"other\"\n\"1538635\";\"Krasnoyarsk-9\";\"other\"\n\"1538635\";\"Zjeleznogorsk\";\"other\"\n\"1538635\";\"Железногорск\";\"other\"\n\"1538636\";\"Novoural’sk\";\"main\"\n\"1538636\";\"Novoural'sk\";\"ascii\"\n\"1538636\";\"Sverdlovsk-44\";\"other\"\n\"1538636\";\"VERKH-NEJVINSKIJ\";\"other\"\n\"1538636\";\"Verkh-Nejvinskij\";\"other\"\n\"1538636\";\"ВЕРХ-НЕЙВИНСКИЙ\";\"other\"\n\"1538636\";\"Новоуральск\";\"other\"\n\"1538637\";\"Seversk\";\"main\"\n\"1538637\";\"Sewersk\";\"other\"\n\"1538637\";\"Tomsk-7\";\"other\"\n\"1538637\";\"sebeleuseukeu\";\"other\"\n\"1538637\";\"sevu~erusuku\";\"other\"\n\"1538637\";\"Северск\";\"other\"\n\"1538637\";\"セヴェルスク\";\"other\"\n\"1538637\";\"세베르스크\";\"other\"\n\"1538638\";\"Lokomotivnyy\";\"main\"\n\"1538638\";\"Kartaly-6\";\"other\"\n\"1538638\";\"Lokomotivnyj\";\"other\"\n\"1538638\";\"Локомотивный\";\"other\"\n\"1538639\";\"Solnechnyy\";\"main\"\n\"1538639\";\"Solnechnyj\";\"other\"\n\"1538639\";\"Uzhur-04\";\"other\"\n\"1538639\";\"Uzhur-4\";\"other\"\n\"1538639\";\"Солнечный\";\"other\"\n\"1538640\";\"Svobodnyy\";\"main\"\n\"1538640\";\"Nizhniy Tagil-39\";\"other\"\n\"1538640\";\"Svobodnyj\";\"other\"\n\"1538640\";\"Свободный\";\"other\"\n\"1538641\";\"Kedrovyy\";\"main\"\n\"1538641\";\"Kedrovyj\";\"other\"\n\"1538641\";\"Krasnoyarsk-66\";\"other\"\n\"1538641\";\"Кедровый\";\"other\"\n\"1538642\";\"Sibirskiy\";\"main\"\n\"1538642\";\"Pervomayskiy\";\"other\"\n\"1538642\";\"Sibirskij\";\"other\"\n\"1538642\";\"Sibirskoye\";\"other\"\n\"1538642\";\"Сибирский\";\"other\"\n\"1539045\";\"Malinovskiy\";\"main\"\n\"1539045\";\"MALINOVSKIJ\";\"other\"\n\"1539045\";\"Malinovskij\";\"other\"\n\"1539045\";\"МАЛИНОВСКИЙ\";\"other\"\n\"1539045\";\"Малиновский\";\"other\"\n\"1539209\";\"Gubkinskiy\";\"main\"\n\"1539209\";\"Gubkinskij\";\"other\"\n\"1539209\";\"Губкинский\";\"other\"\n\"1539210\";\"Purpe\";\"main\"\n\"1539210\";\"Пурпе\";\"other\"\n\"1540356\";\"Raduzhnyy\";\"main\"\n\"1540356\";\"Raduzjnyj\";\"other\"\n\"1540356\";\"Радужный\";\"other\"\n\"1540475\";\"Turtas\";\"main\"\n\"1540475\";\"Туртас\";\"other\"\n\"1540484\";\"Kedrovyy\";\"main\"\n\"1540484\";\"Кедровый\";\"other\"\n\"1540711\";\"Muravlenko\";\"main\"\n\"1540711\";\"Муравленко\";\"other\"\n\"1540852\";\"Starokamyshinsk\";\"main\"\n\"1540852\";\"Starokamysjinsk\";\"other\"\n\"1540852\";\"Старокамышинск\";\"other\"\n\"1540853\";\"Timiryazevskiy\";\"main\"\n\"1540853\";\"Timirjazevskij\";\"other\"\n\"1540853\";\"Timirjazvskij\";\"other\"\n\"1540853\";\"Тимирязвский\";\"other\"\n\"1540853\";\"Тимирязевский\";\"other\"\n\"1540882\";\"Bazhovo\";\"main\"\n\"1540882\";\"Bazjovo\";\"other\"\n\"1540882\";\"Бажово\";\"other\"\n\"1540905\";\"Roshchino\";\"main\"\n\"1540905\";\"Рощино\";\"other\"\n\"1541359\";\"Lyantor\";\"main\"\n\"1541359\";\"Ljantor\";\"other\"\n\"1541359\";\"Lyantorskiy\";\"other\"\n\"1541359\";\"Лянтор\";\"other\"\n\"1544583\";\"Uyskoye\";\"main\"\n\"1544583\";\"Ujskoe\";\"other\"\n\"1544583\";\"Ujskoje\";\"other\"\n\"1544583\";\"Уйское\";\"other\"\n\"2012349\";\"Krasnyy Chikoy\";\"main\"\n\"2012349\";\"Krasnoy Chikoy\";\"other\"\n\"2012349\";\"Krasny Chikoy\";\"other\"\n\"2012349\";\"Krasnyi Chikoi\";\"other\"\n\"2012349\";\"Krasnyj Tsjikoj\";\"other\"\n\"2012349\";\"Красный Чикой\";\"other\"\n\"2012379\";\"Zvëzdnyy\";\"main\"\n\"2012379\";\"Zvezdnyy\";\"ascii\"\n\"2012379\";\"Zvezdnyj\";\"other\"\n\"2012379\";\"Звездный\";\"other\"\n\"2012484\";\"Zima\";\"main\"\n\"2012484\";\"ZIMA\";\"other\"\n\"2012484\";\"ЗИМА\";\"other\"\n\"2012484\";\"Зима\";\"other\"\n\"2012510\";\"Zhireken\";\"main\"\n\"2012510\";\"ZHIREKEN\";\"other\"\n\"2012510\";\"Zjireken\";\"other\"\n\"2012510\";\"ЖИРЕКЕН\";\"other\"\n\"2012530\";\"Zhigansk\";\"main\"\n\"2012530\";\"Shigansk\";\"other\"\n\"2012530\";\"Zjigansk\";\"other\"\n\"2012530\";\"Жиганск\";\"other\"\n\"2012532\";\"Zhigalovo\";\"main\"\n\"2012532\";\"ZHIGALOVO\";\"other\"\n\"2012532\";\"Zjigalovo\";\"other\"\n\"2012532\";\"ЖИГАЛОВО\";\"other\"\n\"2012544\";\"Zhemchug\";\"main\"\n\"2012544\";\"Zjemtsjug\";\"other\"\n\"2012544\";\"Жемчуг\";\"other\"\n\"2012557\";\"Zheleznogorsk-Ilimskiy\";\"main\"\n\"2012557\";\"Korshunikha\";\"other\"\n\"2012557\";\"Zheleznogorsk\";\"other\"\n\"2012557\";\"Zheleznogorsk-Ilimskij\";\"other\"\n\"2012557\";\"Zjeleznogorsk-Ilimskij\";\"other\"\n\"2012557\";\"Железногорск-Илимский\";\"other\"\n\"2012561\";\"Zheleznodorozhnyy\";\"main\"\n\"2012561\";\"ZHELEZNODOROZHNYJ\";\"other\"\n\"2012561\";\"Zjeleznodorozjnyj\";\"other\"\n\"2012561\";\"ЖЕЛЕЗНОДОРОЖНЫЙ\";\"other\"\n\"2012570\";\"Zhatay\";\"main\"\n\"2012570\";\"Zhataystroy\";\"other\"\n\"2012593\";\"Zeya\";\"main\"\n\"2012593\";\"Seja\";\"other\"\n\"2012593\";\"ZEJA\";\"other\"\n\"2012593\";\"Zeja\";\"other\"\n\"2012593\";\"ЗЕЯ\";\"other\"\n\"2012623\";\"Zavodskoy\";\"main\"\n\"2012626\";\"Zavitinsk\";\"main\"\n\"2012626\";\"ZAVITINSK\";\"other\"\n\"2012626\";\"Zavitaya\";\"other\"\n\"2012626\";\"ЗАВИТИНСК\";\"other\"\n\"2012646\";\"Zarubino\";\"main\"\n\"2012646\";\"ZARUBINO\";\"other\"\n\"2012646\";\"ЗАРУБИНО\";\"other\"\n\"2012655\";\"Zarechnyy\";\"main\"\n\"2012655\";\"ZARECHNYJ\";\"other\"\n\"2012655\";\"Zaretsjnyj\";\"other\"\n\"2012655\";\"ЗАРЕЧНЫЙ\";\"other\"\n\"2012702\";\"Zalari\";\"main\"\n\"2012702\";\"ZALARI\";\"other\"\n\"2012702\";\"ЗАЛАРИ\";\"other\"\n\"2012702\";\"Залари\";\"other\"\n\"2012728\";\"Zakamensk\";\"main\"\n\"2012728\";\"Gorodok\";\"other\"\n\"2012728\";\"ZAKAMENSK\";\"other\"\n\"2012728\";\"ЗАКАМЕНСК\";\"other\"\n\"2012735\";\"Zaigrayevo\";\"main\"\n\"2012735\";\"ZAIGRAEVO\";\"other\"\n\"2012735\";\"Zaigraeve\";\"other\"\n\"2012735\";\"Zaigrajevo\";\"other\"\n\"2012735\";\"Zaigrakvo\";\"other\"\n\"2012735\";\"Zaigrayeva\";\"other\"\n\"2012735\";\"ЗАИГРАЕВО\";\"other\"\n\"2012780\";\"Zabaykal’sk\";\"main\"\n\"2012780\";\"Zabaykal'sk\";\"ascii\"\n\"2012780\";\"Otpor\";\"other\"\n\"2012780\";\"Zabajkal'sk\";\"other\"\n\"2012780\";\"Zabajkalsk\";\"other\"\n\"2012780\";\"Забайкальск\";\"other\"\n\"2012938\";\"Yerofey Pavlovich\";\"main\"\n\"2012938\";\"Erofei Pavlovich\";\"other\"\n\"2012938\";\"Erofej Pavlovich\";\"other\"\n\"2012938\";\"Erofey-Palvovich\";\"other\"\n\"2012938\";\"Jerofej Pavlovitsj\";\"other\"\n\"2012938\";\"Yerofei Pavlovich\";\"other\"\n\"2012938\";\"Ерофей Павлович\";\"other\"\n\"2012956\";\"Yerbogachën\";\"main\"\n\"2012956\";\"Yerbogachen\";\"ascii\"\n\"2012956\";\"Erbogachen\";\"other\"\n\"2012956\";\"Jerbogatsjen\";\"other\"\n\"2012956\";\"Ербогачен\";\"other\"\n\"2013030\";\"Yekaterinovka\";\"main\"\n\"2013030\";\"Ekaterinovka\";\"other\"\n\"2013030\";\"Jekaterinovka\";\"other\"\n\"2013030\";\"Yekateranovka\";\"other\"\n\"2013030\";\"Екатериновка\";\"other\"\n\"2013032\";\"Yekaterinoslavka\";\"main\"\n\"2013032\";\"Ekaterinoslavka\";\"other\"\n\"2013032\";\"Jekaterinoslavka\";\"other\"\n\"2013032\";\"Kaganovich\";\"other\"\n\"2013032\";\"Yekaterinoslovka\";\"other\"\n\"2013032\";\"Екатеринославка\";\"other\"\n\"2013089\";\"Yaroslavskiy\";\"main\"\n\"2013089\";\"JAROSLAVSKIJ\";\"other\"\n\"2013089\";\"Jaroslavskij\";\"other\"\n\"2013089\";\"ЯРОСЛАВСКИЙ\";\"other\"\n\"2013159\";\"Yakutsk\";\"main\"\n\"2013159\";\"JAKUTSK\";\"other\"\n\"2013159\";\"Jakutsk\";\"other\"\n\"2013159\";\"Yerkutsk\";\"other\"\n\"2013159\";\"ЯКУТСК\";\"other\"\n\"2013159\";\"Якутск\";\"other\"\n\"2013176\";\"Yakovlevka\";\"main\"\n\"2013176\";\"Jakovlevka\";\"other\"\n\"2013176\";\"Яковлевка\";\"other\"\n\"2013216\";\"Vysokogornyy\";\"main\"\n\"2013216\";\"Muli\";\"other\"\n\"2013216\";\"VYSOKOGORNYJ\";\"other\"\n\"2013216\";\"Vysokogornyj\";\"other\"\n\"2013216\";\"ВЫСОКОГОРНЫЙ\";\"other\"\n\"2013225\";\"Rechka Vydrino\";\"main\"\n\"2013225\";\"VYDRINO\";\"other\"\n\"2013225\";\"Vodrinskiy\";\"other\"\n\"2013225\";\"Vydrino\";\"other\"\n\"2013225\";\"Vydrinski\";\"other\"\n\"2013225\";\"Vydrinskiy\";\"other\"\n\"2013225\";\"ВЫДРИНО\";\"other\"\n\"2013225\";\"Речка Выдрино\";\"other\"\n\"2013229\";\"Vyazemskiy\";\"main\"\n\"2013229\";\"VJAZEMSKIJ\";\"other\"\n\"2013229\";\"Vjazemskij\";\"other\"\n\"2013229\";\"Vyazemskaya\";\"other\"\n\"2013229\";\"Vyazemskoye\";\"other\"\n\"2013229\";\"ВЯЗЕМСКИЙ\";\"other\"\n\"2013258\";\"Vrangel’\";\"main\"\n\"2013258\";\"Vrangel'\";\"ascii\"\n\"2013258\";\"VRANGEL'\";\"other\"\n\"2013258\";\"Vrangel\";\"other\"\n\"2013258\";\"ВРАНГЕЛЬ\";\"other\"\n\"2013272\";\"Vozdvizhenka\";\"main\"\n\"2013272\";\"Vozdvizjenka\";\"other\"\n\"2013272\";\"Воздвиженка\";\"other\"\n\"2013279\";\"Vostok\";\"main\"\n\"2013279\";\"VOSTOK\";\"other\"\n\"2013279\";\"Vostok Vtoroy\";\"other\"\n\"2013279\";\"ВОСТОК\";\"other\"\n\"2013326\";\"Volochayevka Vtoraya\";\"main\"\n\"2013326\";\"Volochaevka-Vtoraja\";\"other\"\n\"2013326\";\"Volotsjajevka-Vtoraja\";\"other\"\n\"2013326\";\"Vtoraya Volochayevka\";\"other\"\n\"2013326\";\"Волочаевка-Вторая\";\"other\"\n\"2013337\";\"Volchanets\";\"main\"\n\"2013337\";\"Volchanec\";\"other\"\n\"2013337\";\"Voltsjanets\";\"other\"\n\"2013337\";\"Волчанец\";\"other\"\n\"2013348\";\"Vladivostok\";\"main\"\n\"2013348\";\"Bladibostok\";\"other\"\n\"2013348\";\"Vlagyivosztok\";\"other\"\n\"2013348\";\"Wladiwostok\";\"other\"\n\"2013348\";\"Wladywostok\";\"other\"\n\"2013348\";\"Władywostok\";\"other\"\n\"2013348\";\"beulladiboseutokeu\";\"other\"\n\"2013348\";\"fu la di wo si tuo ke\";\"other\"\n\"2013348\";\"hai can wei\";\"other\"\n\"2013348\";\"urajiosutoku\";\"other\"\n\"2013348\";\"wldywwstwq\";\"other\"\n\"2013348\";\"Βλαδιβοστόκ\";\"other\"\n\"2013348\";\"Владивосток\";\"other\"\n\"2013348\";\"ולדיווסטוק\";\"other\"\n\"2013348\";\"ولادی‌وستوک\";\"other\"\n\"2013348\";\"ウラジオストク\";\"other\"\n\"2013348\";\"海参崴\";\"other\"\n\"2013348\";\"符拉迪沃斯托克\";\"other\"\n\"2013348\";\"블라디보스토크\";\"other\"\n\"2013362\";\"Vladimiro-Aleksandrovskoye\";\"main\"\n\"2013362\";\"Aleksandrovka\";\"other\"\n\"2013362\";\"Aleksandrovskoe\";\"other\"\n\"2013362\";\"Alexandrovka\";\"other\"\n\"2013362\";\"Vladimir\";\"other\"\n\"2013362\";\"Vladimiro-Aleksandrovskoe\";\"other\"\n\"2013362\";\"Vladimiro-Aleksandrovskoje\";\"other\"\n\"2013362\";\"Vladimirovka\";\"other\"\n\"2013362\";\"Владимиро-Александровское\";\"other\"\n\"2013375\";\"Vitim\";\"main\"\n\"2013375\";\"VITIM\";\"other\"\n\"2013375\";\"ВИТИМ\";\"other\"\n\"2013392\";\"Vilyuysk\";\"main\"\n\"2013392\";\"VILJUJSK\";\"other\"\n\"2013392\";\"Viljujsk\";\"other\"\n\"2013392\";\"Vilyuisk\";\"other\"\n\"2013392\";\"Vilyusk\";\"other\"\n\"2013392\";\"ВИЛЮЙСК\";\"other\"\n\"2013406\";\"Vidim\";\"main\"\n\"2013406\";\"VIDIM\";\"other\"\n\"2013406\";\"ВИДИМ\";\"other\"\n\"2013441\";\"Vershino-Shakhtaminskiy\";\"main\"\n\"2013441\";\"Verchin-Shakhtaminskiy\";\"other\"\n\"2013441\";\"Verkhne-Shaktama\";\"other\"\n\"2013441\";\"Verkhnyaya Shakhtama\";\"other\"\n\"2013441\";\"Vershino-Shakhtaminskij\";\"other\"\n\"2013441\";\"Versjino-Sjakhtaminskij\";\"other\"\n\"2013441\";\"Вершино-Шахтаминский\";\"other\"\n\"2013442\";\"Vershino-Darasunskiy\";\"main\"\n\"2013442\";\"Darasun\";\"other\"\n\"2013442\";\"Vershina Darasuna\";\"other\"\n\"2013442\";\"Vershino-Darasunskij\";\"other\"\n\"2013442\";\"Versjino-Darasunskij\";\"other\"\n\"2013442\";\"Вершино-Дарасунский\";\"other\"\n\"2013459\";\"Verkh-Usugli\";\"main\"\n\"2013465\";\"Verkhoyansk\";\"main\"\n\"2013465\";\"VERKHOJANSK\";\"other\"\n\"2013465\";\"Verchojansk\";\"other\"\n\"2013465\";\"Verchojanskas\";\"other\"\n\"2013465\";\"Verhojansk\";\"other\"\n\"2013465\";\"Verkhoiansk\";\"other\"\n\"2013465\";\"Verkhojansk\";\"other\"\n\"2013465\";\"Verkhoïansk\";\"other\"\n\"2013465\";\"Verĥojansk\";\"other\"\n\"2013465\";\"Werchojansk\";\"other\"\n\"2013465\";\"Wierchojansk\";\"other\"\n\"2013465\";\"Wierchojańsk\";\"other\"\n\"2013465\";\"beleuhoyanseukeu\";\"other\"\n\"2013465\";\"beruhoyansuku\";\"other\"\n\"2013465\";\"ВЕРХОЯНСК\";\"other\"\n\"2013465\";\"Верхоянск\";\"other\"\n\"2013465\";\"ורחויאנסק\";\"other\"\n\"2013465\";\"ベルホヤンスク\";\"other\"\n\"2013465\";\"베르호얀스크\";\"other\"\n\"2013639\";\"Verkhnevilyuysk\";\"main\"\n\"2013639\";\"Verkhneviljujsk\";\"other\"\n\"2013639\";\"Верхневилюйск\";\"other\"\n\"2013727\";\"Vanavara\";\"main\"\n\"2013727\";\"Faktoriya Vanavar\";\"other\"\n\"2013727\";\"Vanovara\";\"other\"\n\"2013727\";\"Ванавара\";\"other\"\n\"2013865\";\"Ust’-Uda\";\"main\"\n\"2013865\";\"Ust'-Uda\";\"ascii\"\n\"2013865\";\"Ust-Uda\";\"other\"\n\"2013865\";\"Усть-Уда\";\"other\"\n\"2013894\";\"Ust’-Ordynskiy\";\"main\"\n\"2013894\";\"Ust'-Ordynskiy\";\"ascii\"\n\"2013894\";\"Kargana\";\"other\"\n\"2013894\";\"Ust'-Orda\";\"other\"\n\"2013894\";\"Ust'-Ordynskij\";\"other\"\n\"2013894\";\"Ust-Ordynskij\";\"other\"\n\"2013894\";\"Ust’-Orda\";\"other\"\n\"2013894\";\"Усть-Ордынский\";\"other\"\n\"2013918\";\"Ust’-Maya\";\"main\"\n\"2013918\";\"Ust'-Maya\";\"ascii\"\n\"2013918\";\"Ust Maisk\";\"other\"\n\"2013918\";\"Ust'-Maja\";\"other\"\n\"2013918\";\"Ust'-Mayskoye\";\"other\"\n\"2013918\";\"Ust-Maiskoe\";\"other\"\n\"2013918\";\"Ust-Maja\";\"other\"\n\"2013918\";\"Ust’-Mayskoye\";\"other\"\n\"2013918\";\"Усть-Мая\";\"other\"\n\"2013921\";\"Ust’-Kuyga\";\"main\"\n\"2013921\";\"Ust'-Kuyga\";\"ascii\"\n\"2013921\";\"Ust'-Kujga\";\"other\"\n\"2013921\";\"Ust-Kujga\";\"other\"\n\"2013921\";\"Усть-Куйга\";\"other\"\n\"2013923\";\"Ust’-Kut\";\"main\"\n\"2013923\";\"Ust'-Kut\";\"ascii\"\n\"2013923\";\"Ust Kutsk\";\"other\"\n\"2013923\";\"Ust-Kut\";\"other\"\n\"2013923\";\"Усть-Кут\";\"other\"\n\"2013942\";\"Ust’-Karsk\";\"main\"\n\"2013942\";\"Ust'-Karsk\";\"ascii\"\n\"2013942\";\"Ust-Kara\";\"other\"\n\"2013942\";\"Ust-Karsk\";\"other\"\n\"2013942\";\"Усть-Карск\";\"other\"\n\"2013952\";\"Ust’-Ilimsk\";\"main\"\n\"2013952\";\"Ust'-Ilimsk\";\"ascii\"\n\"2013952\";\"Ust-Ilimsk\";\"other\"\n\"2013952\";\"Усть-Илимск\";\"other\"\n\"2013986\";\"Ust’-Barguzin\";\"main\"\n\"2013986\";\"Ust'-Barguzin\";\"ascii\"\n\"2013986\";\"Ust Batguzin\";\"other\"\n\"2013986\";\"Ust-Barguzin\";\"other\"\n\"2013986\";\"Усть-Баргузин\";\"other\"\n\"2014006\";\"Ussuriysk\";\"main\"\n\"2014006\";\"Lungsod ng Ussurijsk\";\"other\"\n\"2014006\";\"Nikol'sk-Ussuriyskiy\";\"other\"\n\"2014006\";\"Nikolaevsk-Ussuri\";\"other\"\n\"2014006\";\"Nikol’sk-Ussuriyskiy\";\"other\"\n\"2014006\";\"Oessoeriejsk\";\"other\"\n\"2014006\";\"USSURIJSK\";\"other\"\n\"2014006\";\"Ussuriisk\";\"other\"\n\"2014006\";\"Ussurijsk\";\"other\"\n\"2014006\";\"Ussuryjsk\";\"other\"\n\"2014006\";\"Usszurijszk\";\"other\"\n\"2014006\";\"Voroshilov\";\"other\"\n\"2014006\";\"usuliseukeu\";\"other\"\n\"2014006\";\"usurisuku\";\"other\"\n\"2014006\";\"wu su li si ke\";\"other\"\n\"2014006\";\"УССУРИЙСК\";\"other\"\n\"2014006\";\"Уссурийск\";\"other\"\n\"2014006\";\"ウスリースク\";\"other\"\n\"2014006\";\"乌苏里斯克\";\"other\"\n\"2014006\";\"우수리스크\";\"other\"\n\"2014022\";\"Usol’ye-Sibirskoye\";\"main\"\n\"2014022\";\"Usol'ye-Sibirskoye\";\"ascii\"\n\"2014022\";\"Isol'ye-Sibirskoye\";\"other\"\n\"2014022\";\"Isol’ye-Sibirskoye\";\"other\"\n\"2014022\";\"Usel'ye-Sibirskoye\";\"other\"\n\"2014022\";\"Usel’ye-Sibirskoye\";\"other\"\n\"2014022\";\"Usol'e-Sibirskoe\";\"other\"\n\"2014022\";\"Usol'ye\";\"other\"\n\"2014022\";\"Usole Sibirskoe\";\"other\"\n\"2014022\";\"Usolje-Sibirskoje\";\"other\"\n\"2014022\";\"Usol’ye\";\"other\"\n\"2014022\";\"Усолье-Сибирское\";\"other\"\n\"2014038\";\"Ushumun\";\"main\"\n\"2014038\";\"USHUMUN\";\"other\"\n\"2014038\";\"Usjumun\";\"other\"\n\"2014038\";\"УШУМУН\";\"other\"\n\"2014078\";\"Urusha\";\"main\"\n\"2014078\";\"URUSHA\";\"other\"\n\"2014078\";\"Urusja\";\"other\"\n\"2014078\";\"УРУША\";\"other\"\n\"2014369\";\"Ulëty\";\"main\"\n\"2014369\";\"Ulety\";\"ascii\"\n\"2014369\";\"Улеты\";\"other\"\n\"2014407\";\"Ulan-Ude\";\"main\"\n\"2014407\";\"Oelan-Oede\";\"other\"\n\"2014407\";\"Oulan Ounte\";\"other\"\n\"2014407\";\"Ulaan-Udeh\";\"other\"\n\"2014407\";\"Ulan Ude\";\"other\"\n\"2014407\";\"Ulan Udė\";\"other\"\n\"2014407\";\"Ulan-Udeh\";\"other\"\n\"2014407\";\"Ulan-Udè\";\"other\"\n\"2014407\";\"Ulán-Udé\";\"other\"\n\"2014407\";\"Ułan-Ude\";\"other\"\n\"2014407\";\"Verkhne-Udinsk\";\"other\"\n\"2014407\";\"Verkhneudinsk\";\"other\"\n\"2014407\";\"ullan-ude\";\"other\"\n\"2014407\";\"wu lan wu de\";\"other\"\n\"2014407\";\"Ουλάν Ουντέ\";\"other\"\n\"2014407\";\"Верхнеудинск\";\"other\"\n\"2014407\";\"Улаан-Удэ\";\"other\"\n\"2014407\";\"Улаан-Үдэ\";\"other\"\n\"2014407\";\"Улан Уде\";\"other\"\n\"2014407\";\"Улан-Удэ\";\"other\"\n\"2014407\";\"אולן-אודה\";\"other\"\n\"2014407\";\"ウラン・ウデ\";\"other\"\n\"2014407\";\"烏蘭烏德\";\"other\"\n\"2014407\";\"울란우데\";\"other\"\n\"2014571\";\"Uglovoye\";\"main\"\n\"2014571\";\"UGLOVOE\";\"other\"\n\"2014571\";\"Uglovaya\";\"other\"\n\"2014571\";\"Uglovoje\";\"other\"\n\"2014571\";\"УГЛОВОЕ\";\"other\"\n\"2014573\";\"Uglekamensk\";\"main\"\n\"2014573\";\"Severnyy Suchan\";\"other\"\n\"2014573\";\"UGLEKAMENSK\";\"other\"\n\"2014573\";\"УГЛЕКАМЕНСК\";\"other\"\n\"2014624\";\"Udachnyy\";\"main\"\n\"2014624\";\"Novyy\";\"other\"\n\"2014624\";\"Pribut\";\"other\"\n\"2014624\";\"UDACHNYJ\";\"other\"\n\"2014624\";\"Udachnaya\";\"other\"\n\"2014624\";\"Udachnoye\";\"other\"\n\"2014624\";\"Udatsjnyj\";\"other\"\n\"2014624\";\"УДАЧНЫЙ\";\"other\"\n\"2014694\";\"Tyrma\";\"main\"\n\"2014694\";\"TYRMA\";\"other\"\n\"2014694\";\"ТЫРМА\";\"other\"\n\"2014705\";\"Tyret’ Pervaya\";\"main\"\n\"2014705\";\"Tyret' Pervaya\";\"ascii\"\n\"2014705\";\"Pervaya Tyret'\";\"other\"\n\"2014705\";\"Pervaya Tyret’\";\"other\"\n\"2014705\";\"Tyret'\";\"other\"\n\"2014705\";\"Tyret' 1-ya (Pervaya)\";\"other\"\n\"2014705\";\"Tyret’\";\"other\"\n\"2014705\";\"Tyret’ 1-ya (Pervaya)\";\"other\"\n\"2014705\";\"Тыреть Первая\";\"other\"\n\"2014718\";\"Tynda\";\"main\"\n\"2014718\";\"Tinda\";\"other\"\n\"2014718\";\"Tonda Winter Camp\";\"other\"\n\"2014718\";\"Tyndinskiy\";\"other\"\n\"2014718\";\"Tönda Winter Camp\";\"other\"\n\"2014718\";\"tinda\";\"other\"\n\"2014718\";\"Тында\";\"other\"\n\"2014718\";\"틴다\";\"other\"\n\"2014743\";\"Tygda\";\"main\"\n\"2014743\";\"TYGDA\";\"other\"\n\"2014743\";\"ТЫГДА\";\"other\"\n\"2014779\";\"Turuntayevo\";\"main\"\n\"2014779\";\"Turuntaevo\";\"other\"\n\"2014779\";\"Turuntajevo\";\"other\"\n\"2014779\";\"Турунтаево\";\"other\"\n\"2014808\";\"Turka\";\"main\"\n\"2014808\";\"TURKA\";\"other\"\n\"2014808\";\"Turkinski\";\"other\"\n\"2014808\";\"ТУРКА\";\"other\"\n\"2014833\";\"Tura\";\"main\"\n\"2014833\";\"TURA\";\"other\"\n\"2014833\";\"Toera\";\"other\"\n\"2014833\";\"Turinskaya Kul'tbaza\";\"other\"\n\"2014833\";\"Turinskaya Kutbaza\";\"other\"\n\"2014833\";\"tula\";\"other\"\n\"2014833\";\"ТУРА\";\"other\"\n\"2014833\";\"Тура\";\"other\"\n\"2014833\";\"투라\";\"other\"\n\"2014927\";\"Tulun\";\"main\"\n\"2014927\";\"Тулун\";\"other\"\n\"2015051\";\"Trudovoye\";\"main\"\n\"2015051\";\"TRUDOVOE\";\"other\"\n\"2015051\";\"Toudovoye\";\"other\"\n\"2015051\";\"Trudovoje\";\"other\"\n\"2015051\";\"ТРУДОВОЕ\";\"other\"\n\"2015136\";\"Topolëvo\";\"main\"\n\"2015136\";\"Topolevo\";\"ascii\"\n\"2015136\";\"Тополево\";\"other\"\n\"2015179\";\"Tommot\";\"main\"\n\"2015179\";\"TOMMOT\";\"other\"\n\"2015179\";\"ТОММОТ\";\"other\"\n\"2015217\";\"Tokur\";\"main\"\n\"2015217\";\"TOKUR\";\"other\"\n\"2015217\";\"ТОКУР\";\"other\"\n\"2015306\";\"Tiksi\";\"main\"\n\"2015306\";\"Tiksis\";\"other\"\n\"2015306\";\"tigsi\";\"other\"\n\"2015306\";\"tyqsy\";\"other\"\n\"2015306\";\"Тикси\";\"other\"\n\"2015306\";\"טיקסי\";\"other\"\n\"2015306\";\"틱시\";\"other\"\n\"2015310\";\"Fokino\";\"main\"\n\"2015310\";\"FOKINO\";\"other\"\n\"2015310\";\"Shkotovo-17\";\"other\"\n\"2015310\";\"Tikhookeanskiy\";\"other\"\n\"2015310\";\"pokino\";\"other\"\n\"2015310\";\"ФОКИНО\";\"other\"\n\"2015310\";\"Фокино\";\"other\"\n\"2015310\";\"포키노\";\"other\"\n\"2015352\";\"Terney\";\"main\"\n\"2015352\";\"TERNEJ\";\"other\"\n\"2015352\";\"Ternay\";\"other\"\n\"2015352\";\"Ternei\";\"other\"\n\"2015352\";\"Ternej\";\"other\"\n\"2015352\";\"Terney-Morozovskoye\";\"other\"\n\"2015352\";\"ТЕРНЕЙ\";\"other\"\n\"2015428\";\"Tayturka\";\"main\"\n\"2015428\";\"TAJTURKA\";\"other\"\n\"2015428\";\"Taiturka\";\"other\"\n\"2015428\";\"Tajturka\";\"other\"\n\"2015428\";\"ТАЙТУРКА\";\"other\"\n\"2015455\";\"Tavrichanka\";\"main\"\n\"2015455\";\"TAVRICHANKA\";\"other\"\n\"2015455\";\"Tavritsjanka\";\"other\"\n\"2015455\";\"ТАВРИЧАНКА\";\"other\"\n\"2015469\";\"Novonukutskiy\";\"main\"\n\"2015469\";\"Novonukutskij\";\"other\"\n\"2015469\";\"Takhtal-Ongoy\";\"other\"\n\"2015469\";\"Tatkhal-Ongoy\";\"other\"\n\"2015469\";\"Новонукутский\";\"other\"\n\"2015545\";\"Tarbagatay\";\"main\"\n\"2015545\";\"Tarbagatai\";\"other\"\n\"2015545\";\"Tarbagataj\";\"other\"\n\"2015545\";\"Tarbagatayskoye\";\"other\"\n\"2015545\";\"Тарбагатай\";\"other\"\n\"2015547\";\"Tarbagatay\";\"main\"\n\"2015547\";\"TARBAGATAJ\";\"other\"\n\"2015547\";\"Tabargatai\";\"other\"\n\"2015547\";\"Tarbagatai\";\"other\"\n\"2015547\";\"Tarbagataj\";\"other\"\n\"2015547\";\"ТАРБАГАТАЙ\";\"other\"\n\"2015576\";\"Tankhoy\";\"main\"\n\"2015576\";\"TANKHOJ\";\"other\"\n\"2015576\";\"Tankhoi\";\"other\"\n\"2015576\";\"Tankhoj\";\"other\"\n\"2015576\";\"Taukhoi\";\"other\"\n\"2015576\";\"ТАНХОЙ\";\"other\"\n\"2015608\";\"Tambovka\";\"main\"\n\"2015608\";\"Тамбовка\";\"other\"\n\"2015646\";\"Taldan\";\"main\"\n\"2015646\";\"Darudan\";\"other\"\n\"2015646\";\"TALDAN\";\"other\"\n\"2015646\";\"Taldak\";\"other\"\n\"2015646\";\"ТАЛДАН\";\"other\"\n\"2015686\";\"Talakan\";\"main\"\n\"2015686\";\"Yakutskoye\";\"other\"\n\"2015686\";\"Талакан\";\"other\"\n\"2015701\";\"Taksimo\";\"main\"\n\"2015701\";\"TAKSIMO\";\"other\"\n\"2015701\";\"Toksimo\";\"other\"\n\"2015701\";\"ТАКСИМО\";\"other\"\n\"2015707\";\"Takhtamygda\";\"main\"\n\"2015707\";\"TAKHTAMYGDA\";\"other\"\n\"2015707\";\"Tachtamydga\";\"other\"\n\"2015707\";\"ТАХТАМЫГДА\";\"other\"\n\"2015833\";\"Svobodnyy\";\"main\"\n\"2015833\";\"Alekseyevsk\";\"other\"\n\"2015833\";\"SVOBODNYJ\";\"other\"\n\"2015833\";\"Svobodni\";\"other\"\n\"2015833\";\"Svobodny\";\"other\"\n\"2015833\";\"Svobodnyj\";\"other\"\n\"2015833\";\"СВОБОДНЫЙ\";\"other\"\n\"2015842\";\"Svirsk\";\"main\"\n\"2015842\";\"SVIRSK\";\"other\"\n\"2015842\";\"Svirskoye\";\"other\"\n\"2015842\";\"СВИРСК\";\"other\"\n\"2015852\";\"Svetlaya\";\"main\"\n\"2015852\";\"SVETLAJA\";\"other\"\n\"2015852\";\"Svetlaja\";\"other\"\n\"2015852\";\"Svetloe\";\"other\"\n\"2015852\";\"Svetloye\";\"other\"\n\"2015852\";\"СВЕТЛАЯ\";\"other\"\n\"2015913\";\"Suntar\";\"main\"\n\"2015913\";\"Suntarsk\";\"other\"\n\"2015913\";\"Suntarskoye\";\"other\"\n\"2015913\";\"Сунтар\";\"other\"\n\"2016110\";\"Sretensk\";\"main\"\n\"2016110\";\"SRETENSK\";\"other\"\n\"2016110\";\"Sryetensk\";\"other\"\n\"2016110\";\"СРЕТЕНСК\";\"other\"\n\"2016110\";\"Сретенск\";\"other\"\n\"2016170\";\"Srednebelaya\";\"main\"\n\"2016170\";\"Sovkhoz Crednebel'skiy\";\"other\"\n\"2016170\";\"Sovkhoz Crednebel’skiy\";\"other\"\n\"2016170\";\"Sredne-Beloye\";\"other\"\n\"2016170\";\"Srednebelaja\";\"other\"\n\"2016170\";\"Srednebeloe\";\"other\"\n\"2016170\";\"Среднебелая\";\"other\"\n\"2016170\";\"Среднебелое\";\"other\"\n\"2016183\";\"Spasskoye\";\"main\"\n\"2016183\";\"Спасское\";\"other\"\n\"2016187\";\"Spassk-Dal’niy\";\"main\"\n\"2016187\";\"Spassk-Dal'niy\";\"ascii\"\n\"2016187\";\"Spassk\";\"other\"\n\"2016187\";\"Spassk Dal'ni\";\"other\"\n\"2016187\";\"Spassk Dal’ni\";\"other\"\n\"2016187\";\"Spassk-Dal'nij\";\"other\"\n\"2016187\";\"Spasskoe\";\"other\"\n\"2016187\";\"Speasskdalniy\";\"other\"\n\"2016187\";\"Спасск-Дальний\";\"other\"\n\"2016187\";\"Спасское\";\"other\"\n\"2016205\";\"Sotnikovo\";\"main\"\n\"2016205\";\"Сотниково\";\"other\"\n\"2016216\";\"Sosnovo-Ozerskoye\";\"main\"\n\"2016216\";\"Sosnovo-Ozernoye\";\"other\"\n\"2016216\";\"Sosnovo-Ozerskoje\";\"other\"\n\"2016216\";\"Sosnovo-Ozerskoya\";\"other\"\n\"2016216\";\"Сосново-Озерское\";\"other\"\n\"2016277\";\"Соловьевск\";\"main\"\n\"2016277\";\"Solov'evsk\";\"ascii\"\n\"2016277\";\"Solov'yeva\";\"other\"\n\"2016277\";\"Solov'yevka\";\"other\"\n\"2016277\";\"Solov'yevsk\";\"other\"\n\"2016277\";\"Solov'yova\";\"other\"\n\"2016277\";\"Solov'yëvsk\";\"other\"\n\"2016277\";\"Solovjevsk\";\"other\"\n\"2016305\";\"Solnechnyy\";\"main\"\n\"2016305\";\"SOLNECHNYJ\";\"other\"\n\"2016305\";\"Solnetsjnyj\";\"other\"\n\"2016305\";\"СОЛНЕЧНЫЙ\";\"other\"\n\"2016305\";\"Солнечный\";\"other\"\n\"2016307\";\"Solnechnyy\";\"main\"\n\"2016307\";\"SOLNECHNYJ\";\"other\"\n\"2016307\";\"Solnetsjnyj\";\"other\"\n\"2016307\";\"СОЛНЕЧНЫЙ\";\"other\"\n\"2016308\";\"Solnechnyy\";\"main\"\n\"2016308\";\"Solnetsjnyj\";\"other\"\n\"2016308\";\"Солнечный\";\"other\"\n\"2016334\";\"Sokol\";\"main\"\n\"2016334\";\"SOKOL\";\"other\"\n\"2016334\";\"СОКОЛ\";\"other\"\n\"2016334\";\"Сокол\";\"other\"\n\"2016402\";\"Smolyaninovo\";\"main\"\n\"2016402\";\"SMOLJANINOVO\";\"other\"\n\"2016402\";\"Smoljanikowe\";\"other\"\n\"2016402\";\"Smoljaninovo\";\"other\"\n\"2016402\";\"Smolyan'novo\";\"other\"\n\"2016402\";\"Smolyaniovo\";\"other\"\n\"2016402\";\"Smolyan’novo\";\"other\"\n\"2016402\";\"СМОЛЯНИНОВО\";\"other\"\n\"2016402\";\"Смоляниново\";\"other\"\n\"2016405\";\"Smolenka\";\"main\"\n\"2016405\";\"Smolenska\";\"other\"\n\"2016405\";\"Smolenskaya\";\"other\"\n\"2016405\";\"Smolenskoye\";\"other\"\n\"2016405\";\"Смоленка\";\"other\"\n\"2016412\";\"Smidovich\";\"main\"\n\"2016412\";\"In\";\"other\"\n\"2016412\";\"SMIDOVICH\";\"other\"\n\"2016412\";\"Smidovitsj\";\"other\"\n\"2016412\";\"СМИДОВИЧ\";\"other\"\n\"2016412\";\"Смидович\";\"other\"\n\"2016422\";\"Slyudyanka\";\"main\"\n\"2016422\";\"SLJUDJANKA\";\"other\"\n\"2016422\";\"Sladyanka\";\"other\"\n\"2016422\";\"Sljudjanka\";\"other\"\n\"2016422\";\"Sludyanka\";\"other\"\n\"2016422\";\"Slyadyanka\";\"other\"\n\"2016422\";\"СЛЮДЯНКА\";\"other\"\n\"2016422\";\"Слюдянка\";\"other\"\n\"2016430\";\"Slavyanka\";\"main\"\n\"2016430\";\"SLAVJANKA\";\"other\"\n\"2016430\";\"Slavjanka\";\"other\"\n\"2016430\";\"Slavyansk\";\"other\"\n\"2016430\";\"СЛАВЯНКА\";\"other\"\n\"2016430\";\"Славянка\";\"other\"\n\"2016443\";\"Skovorodino\";\"main\"\n\"2016443\";\"Rukhlovo\";\"other\"\n\"2016443\";\"Rukholo\";\"other\"\n\"2016443\";\"SKOVORODINO\";\"other\"\n\"2016443\";\"СКОВОРОДИНО\";\"other\"\n\"2016443\";\"Сковородино\";\"other\"\n\"2016477\";\"Sivaki\";\"main\"\n\"2016477\";\"SIVAKI\";\"other\"\n\"2016477\";\"Sivak\";\"other\"\n\"2016477\";\"СИВАКИ\";\"other\"\n\"2016477\";\"Сиваки\";\"other\"\n\"2016651\";\"Shkotovo\";\"main\"\n\"2016651\";\"SHKOTOVO\";\"other\"\n\"2016651\";\"Schkotowo\";\"other\"\n\"2016651\";\"Shkatova\";\"other\"\n\"2016651\";\"Sjkotovo\";\"other\"\n\"2016651\";\"ШКОТОВО\";\"other\"\n\"2016651\";\"Шкотово\";\"other\"\n\"2016680\";\"Shirokiy\";\"main\"\n\"2016680\";\"Allochkin Otrog\";\"other\"\n\"2016680\";\"SHIROKIJ\";\"other\"\n\"2016680\";\"Sjirokij\";\"other\"\n\"2016680\";\"ШИРОКИЙ\";\"other\"\n\"2016680\";\"Широкий\";\"other\"\n\"2016701\";\"Shimanovsk\";\"main\"\n\"2016701\";\"SHIMANOVSK\";\"other\"\n\"2016701\";\"Shimanovskaya\";\"other\"\n\"2016701\";\"Shimanovskiy\";\"other\"\n\"2016701\";\"Shimanovskoye\";\"other\"\n\"2016701\";\"Sjimanovsk\";\"other\"\n\"2016701\";\"ШИМАНОВСК\";\"other\"\n\"2016701\";\"Шимановск\";\"other\"\n\"2016708\";\"Shilka\";\"main\"\n\"2016708\";\"SHILKA\";\"other\"\n\"2016708\";\"Sjilka\";\"other\"\n\"2016708\";\"ШИЛКА\";\"other\"\n\"2016708\";\"Шилка\";\"other\"\n\"2016733\";\"Shestakovo\";\"main\"\n\"2016733\";\"Shestakova\";\"other\"\n\"2016733\";\"Шестаково\";\"other\"\n\"2016757\";\"Shelopugino\";\"main\"\n\"2016757\";\"Shelapugino\";\"other\"\n\"2016757\";\"Shelopushno\";\"other\"\n\"2016757\";\"Sjelopugino\";\"other\"\n\"2016757\";\"Шелопугино\";\"other\"\n\"2016764\";\"Shelekhov\";\"main\"\n\"2016764\";\"SHELEKHOV\";\"other\"\n\"2016764\";\"Shelikhov\";\"other\"\n\"2016764\";\"Sjelekhov\";\"other\"\n\"2016764\";\"ШЕЛЕХОВ\";\"other\"\n\"2016764\";\"Шелехов\";\"other\"\n\"2016907\";\"Severomuysk\";\"main\"\n\"2016907\";\"SEVEROMUJSK\";\"other\"\n\"2016907\";\"Severomujsk\";\"other\"\n\"2016907\";\"СЕВЕРОМУЙСК\";\"other\"\n\"2016907\";\"Северомуйск\";\"other\"\n\"2016910\";\"Severobaykal’sk\";\"main\"\n\"2016910\";\"Severobaykal'sk\";\"ascii\"\n\"2016910\";\"SEVEROBAJKAL'SK\";\"other\"\n\"2016910\";\"Severobajkalsk\";\"other\"\n\"2016910\";\"СЕВЕРОБАЙКАЛЬСК\";\"other\"\n\"2016910\";\"Северобайкальск\";\"other\"\n\"2016942\";\"Seryshevo\";\"main\"\n\"2016942\";\"SERYSHEVO\";\"other\"\n\"2016942\";\"Serysjevo\";\"other\"\n\"2016942\";\"СЕРЫШЕВО\";\"other\"\n\"2016961\";\"Sergeyevka\";\"main\"\n\"2016961\";\"Sergejevka\";\"other\"\n\"2016961\";\"Sergeyevskoye\";\"other\"\n\"2016961\";\"Sergyeeuka\";\"other\"\n\"2016961\";\"Sergyyevka\";\"other\"\n\"2016961\";\"Сергеевка\";\"other\"\n\"2016977\";\"Serebryanyy Bor\";\"main\"\n\"2016977\";\"Serebrjanyj Bor\";\"other\"\n\"2016977\";\"Серебряный Бор\";\"other\"\n\"2017042\";\"Selikhino\";\"main\"\n\"2017042\";\"Selikhin\";\"other\"\n\"2017042\";\"Селихино\";\"other\"\n\"2017063\";\"Selenduma\";\"main\"\n\"2017063\";\"SELENDUMA\";\"other\"\n\"2017063\";\"Selenginsk Duma\";\"other\"\n\"2017063\";\"Selenginskaya Duma\";\"other\"\n\"2017063\";\"СЕЛЕНДУМА\";\"other\"\n\"2017063\";\"Селендума\";\"other\"\n\"2017155\";\"Saskylakh\";\"main\"\n\"2017155\";\"Саскылах\";\"other\"\n\"2017215\";\"Sangar\";\"main\"\n\"2017215\";\"SANGAR\";\"other\"\n\"2017215\";\"Sangar-Khaya\";\"other\"\n\"2017215\";\"Sangaruhaya\";\"other\"\n\"2017215\";\"Sangary\";\"other\"\n\"2017215\";\"САНГАР\";\"other\"\n\"2017215\";\"Сангар\";\"other\"\n\"2017364\";\"Russkiy\";\"main\"\n\"2017364\";\"Russkij\";\"other\"\n\"2017364\";\"Русский\";\"other\"\n\"2017377\";\"Rudnyy\";\"main\"\n\"2017377\";\"Lifudzin\";\"other\"\n\"2017377\";\"RUDNYJ\";\"other\"\n\"2017377\";\"Rudny\";\"other\"\n\"2017377\";\"Rudnyj\";\"other\"\n\"2017377\";\"РУДНЫЙ\";\"other\"\n\"2017377\";\"Рудный\";\"other\"\n\"2017378\";\"Rudnogorsk\";\"main\"\n\"2017378\";\"RUDNOGORSK\";\"other\"\n\"2017378\";\"РУДНОГОРСК\";\"other\"\n\"2017378\";\"Рудногорск\";\"other\"\n\"2017384\";\"Rudnaya Pristan’\";\"main\"\n\"2017384\";\"Rudnaya Pristan'\";\"ascii\"\n\"2017384\";\"Plavzavod\";\"other\"\n\"2017384\";\"RUDNAJA PRISTAN'\";\"other\"\n\"2017384\";\"Rudnaja Pristan\";\"other\"\n\"2017384\";\"Tetjuche\";\"other\"\n\"2017384\";\"Tetyukhe\";\"other\"\n\"2017384\";\"Tetyukhe-Pristan'\";\"other\"\n\"2017384\";\"Tetyukhe-Pristan’\";\"other\"\n\"2017384\";\"РУДНАЯ ПРИСТАНЬ\";\"other\"\n\"2017384\";\"Рудная Пристань\";\"other\"\n\"2017409\";\"Romny\";\"main\"\n\"2017409\";\"Ромны\";\"other\"\n\"2017452\";\"Rettikhovka\";\"main\"\n\"2017452\";\"RETTIKHOVKA\";\"other\"\n\"2017452\";\"Retikhovka\";\"other\"\n\"2017452\";\"Rettikhoveka\";\"other\"\n\"2017452\";\"Rhettikhovka\";\"other\"\n\"2017452\";\"Ritikhovka\";\"other\"\n\"2017452\";\"Rittikhovka\";\"other\"\n\"2017452\";\"РЕТТИХОВКА\";\"other\"\n\"2017452\";\"Реттиховка\";\"other\"\n\"2017487\";\"Raychikhinsk\";\"main\"\n\"2017487\";\"RAJCHIKHINSK\";\"other\"\n\"2017487\";\"Rajtsjikhinsk\";\"other\"\n\"2017487\";\"Raychikhihsk\";\"other\"\n\"2017487\";\"РАЙЧИХИНСК\";\"other\"\n\"2017487\";\"Райчихинск\";\"other\"\n\"2017537\";\"Putyatin\";\"main\"\n\"2017537\";\"PUTJATIN\";\"other\"\n\"2017537\";\"Putjatin\";\"other\"\n\"2017537\";\"Shkotovo-26\";\"other\"\n\"2017537\";\"ПУТЯТИН\";\"other\"\n\"2017537\";\"Путятин\";\"other\"\n\"2017626\";\"Primorskiy\";\"main\"\n\"2017626\";\"PRIMORSKIJ\";\"other\"\n\"2017626\";\"Primorskij\";\"other\"\n\"2017626\";\"ПРИМОРСКИЙ\";\"other\"\n\"2017626\";\"Приморский\";\"other\"\n\"2017632\";\"Priiskovyy\";\"main\"\n\"2017632\";\"PRIISKOVYJ\";\"other\"\n\"2017632\";\"Priiskovaya\";\"other\"\n\"2017632\";\"Priiskovyj\";\"other\"\n\"2017632\";\"ПРИИСКОВЫЙ\";\"other\"\n\"2017632\";\"Приисковый\";\"other\"\n\"2017646\";\"Priargunsk\";\"main\"\n\"2017646\";\"Novo-Tsurukhaitui\";\"other\"\n\"2017646\";\"Novo-Tsurukhaytuy\";\"other\"\n\"2017646\";\"Novo-Tsurukhaytuyevskiy\";\"other\"\n\"2017646\";\"Novo-Tsurukhtuyevskiy\";\"other\"\n\"2017646\";\"PRIARGUNSK\";\"other\"\n\"2017646\";\"Tsurukhaytuy\";\"other\"\n\"2017646\";\"ПРИАРГУНСК\";\"other\"\n\"2017646\";\"Приаргунск\";\"other\"\n\"2017648\";\"Priamurskiy\";\"main\"\n\"2017648\";\"PRIAMURSKIJ\";\"other\"\n\"2017648\";\"Pokrovka\";\"other\"\n\"2017648\";\"Povrovka\";\"other\"\n\"2017648\";\"Priamurskij\";\"other\"\n\"2017648\";\"ПРИАМУРСКИЙ\";\"other\"\n\"2017648\";\"Приамурский\";\"other\"\n\"2017658\";\"Preobrazheniye\";\"main\"\n\"2017658\";\"PREOBRAZHENIE\";\"other\"\n\"2017658\";\"Preobrazjenije\";\"other\"\n\"2017658\";\"ПРЕОБРАЖЕНИЕ\";\"other\"\n\"2017658\";\"Преображение\";\"other\"\n\"2017705\";\"Poyarkovo\";\"main\"\n\"2017705\";\"POJARKOVO\";\"other\"\n\"2017705\";\"Pojarkovo\";\"other\"\n\"2017705\";\"Poyarkov\";\"other\"\n\"2017705\";\"ПОЯРКОВО\";\"other\"\n\"2017705\";\"Поярково\";\"other\"\n\"2017756\";\"Popova\";\"main\"\n\"2017756\";\"POPOVA\";\"other\"\n\"2017756\";\"ПОПОВА\";\"other\"\n\"2017756\";\"Попова\";\"other\"\n\"2017824\";\"Pokrovsk\";\"main\"\n\"2017824\";\"POKROVSK\";\"other\"\n\"2017824\";\"Pokrovka\";\"other\"\n\"2017824\";\"Pokrovsko\";\"other\"\n\"2017824\";\"Polrovskoye\";\"other\"\n\"2017824\";\"Porovskoye\";\"other\"\n\"2017824\";\"ПОКРОВСК\";\"other\"\n\"2017824\";\"Покровск\";\"other\"\n\"2017838\";\"Pokrovka\";\"main\"\n\"2017838\";\"Покровка\";\"other\"\n\"2017842\";\"Pokosnoye\";\"main\"\n\"2017842\";\"Pokosnoje\";\"other\"\n\"2017842\";\"Pokosnyy\";\"other\"\n\"2017842\";\"Покосное\";\"other\"\n\"2017851\";\"Pogranichnyy\";\"main\"\n\"2017851\";\"Grodekovo\";\"other\"\n\"2017851\";\"POGRANICHNYJ\";\"other\"\n\"2017851\";\"Pogranitsjnyj\";\"other\"\n\"2017851\";\"ПОГРАНИЧНЫЙ\";\"other\"\n\"2017851\";\"Пограничный\";\"other\"\n\"2017912\";\"Plastun\";\"main\"\n\"2017912\";\"PLASTUN\";\"other\"\n\"2017912\";\"ПЛАСТУН\";\"other\"\n\"2017912\";\"Пластун\";\"other\"\n\"2017945\";\"Petrovsk-Zabaykal’skiy\";\"main\"\n\"2017945\";\"Petrovsk-Zabaykal'skiy\";\"ascii\"\n\"2017945\";\"Petrovsk\";\"other\"\n\"2017945\";\"Petrovsk Zabaikal'skiy\";\"other\"\n\"2017945\";\"Petrovsk Zabaikal’skiy\";\"other\"\n\"2017945\";\"Petrovsk-Zabaikalski\";\"other\"\n\"2017945\";\"Petrovsk-Zabajkalskij\";\"other\"\n\"2017945\";\"Petrovski Zabaikalski\";\"other\"\n\"2017945\";\"Petrovskiy Zavod\";\"other\"\n\"2017945\";\"Петровск-Забайкальский\";\"other\"\n\"2017979\";\"Petropavlovka\";\"main\"\n\"2017979\";\"Petropavlovskoye\";\"other\"\n\"2017979\";\"Петропавловка\";\"other\"\n\"2018021\";\"Pervomayskiy\";\"main\"\n\"2018021\";\"PERVOMAJSKIJ\";\"other\"\n\"2018021\";\"Pervomajskij\";\"other\"\n\"2018021\";\"ПЕРВОМАЙСКИЙ\";\"other\"\n\"2018021\";\"Первомайский\";\"other\"\n\"2018069\";\"Peleduy\";\"main\"\n\"2018069\";\"Maly Peleduy\";\"other\"\n\"2018069\";\"Malyy Peleduy\";\"other\"\n\"2018069\";\"PELEDUJ\";\"other\"\n\"2018069\";\"Peleduj\";\"other\"\n\"2018069\";\"ПЕЛЕДУЙ\";\"other\"\n\"2018069\";\"Пеледуй\";\"other\"\n\"2018116\";\"Partizansk\";\"main\"\n\"2018116\";\"PARTIZANSK\";\"other\"\n\"2018116\";\"Suchan\";\"other\"\n\"2018116\";\"Suchanskiy Rudnik\";\"other\"\n\"2018116\";\"Sutschan\";\"other\"\n\"2018116\";\"ПАРТИЗАНСК\";\"other\"\n\"2018116\";\"Партизанск\";\"other\"\n\"2018207\";\"Oyëk\";\"main\"\n\"2018207\";\"Oyek\";\"ascii\"\n\"2018207\";\"Oek\";\"other\"\n\"2018207\";\"Ojek\";\"other\"\n\"2018207\";\"Оек\";\"other\"\n\"2018207\";\"Оёк\";\"other\"\n\"2018214\";\"Ovsyanka\";\"main\"\n\"2018214\";\"Ovsianka\";\"other\"\n\"2018214\";\"Овсянка\";\"other\"\n\"2018301\";\"Osa\";\"main\"\n\"2018301\";\"Оса\";\"other\"\n\"2018365\";\"Orlovskiy\";\"main\"\n\"2018365\";\"ORLOVSKIJ\";\"other\"\n\"2018365\";\"Orlovskij\";\"other\"\n\"2018365\";\"Spokoynyy\";\"other\"\n\"2018365\";\"ОРЛОВСКИЙ\";\"other\"\n\"2018436\";\"Onokhoy\";\"main\"\n\"2018436\";\"Onokhoj-Shibir'\";\"other\"\n\"2018436\";\"Onokhoj-Sjibir\";\"other\"\n\"2018436\";\"Onokhoy-Shibir\";\"other\"\n\"2018436\";\"Онохой\";\"other\"\n\"2018436\";\"Онохой-Шибирь\";\"other\"\n\"2018498\";\"Olovyannaya\";\"main\"\n\"2018498\";\"OLOVJANNAJA\";\"other\"\n\"2018498\";\"Olovjannaja\";\"other\"\n\"2018498\";\"Olovyanraya\";\"other\"\n\"2018498\";\"ОЛОВЯННАЯ\";\"other\"\n\"2018498\";\"Оловянная\";\"other\"\n\"2018567\";\"Olenëk\";\"main\"\n\"2018567\";\"Olenek\";\"ascii\"\n\"2018567\";\"Olenekskaya Kul'tbaza\";\"other\"\n\"2018567\";\"Olenekskaya Kul’tbaza\";\"other\"\n\"2018567\";\"Olenskaya Kultbaza\";\"other\"\n\"2018567\";\"Оленек\";\"other\"\n\"2018567\";\"Оленёк\";\"other\"\n\"2018571\";\"Olëkminsk\";\"main\"\n\"2018571\";\"Olekminsk\";\"ascii\"\n\"2018571\";\"Олекминск\";\"other\"\n\"2018571\";\"Олёкминск\";\"other\"\n\"2018735\";\"Nyurba\";\"main\"\n\"2018735\";\"NJURBA\";\"other\"\n\"2018735\";\"Njurba\";\"other\"\n\"2018735\";\"НЮРБА\";\"other\"\n\"2018735\";\"Нюрба\";\"other\"\n\"2018813\";\"Novyy Uoyan\";\"main\"\n\"2018813\";\"Novyj Uojan\";\"other\"\n\"2018813\";\"Новый Уоян\";\"other\"\n\"2018857\";\"Novosysoyevka\";\"main\"\n\"2018857\";\"Novaya Sysoyevka\";\"other\"\n\"2018857\";\"Novosysojevka\";\"other\"\n\"2018857\";\"Sysoyevka\";\"other\"\n\"2018857\";\"Новосысоевка\";\"other\"\n\"2018864\";\"Novoshakhtinskiy\";\"main\"\n\"2018864\";\"Novosjakhtinskij\";\"other\"\n\"2018864\";\"Новошахтинский\";\"other\"\n\"2018882\";\"Novoraychikhinsk\";\"main\"\n\"2018882\";\"NOVORAJCHIKHINSK\";\"other\"\n\"2018882\";\"Novorajtsjikhinsk\";\"other\"\n\"2018882\";\"НОВОРАЙЧИХИНСК\";\"other\"\n\"2018882\";\"Новорайчихинск\";\"other\"\n\"2018888\";\"Novopokrovka\";\"main\"\n\"2018888\";\"Katerinoe\";\"other\"\n\"2018888\";\"Kotel'naya\";\"other\"\n\"2018888\";\"Kotel’naya\";\"other\"\n\"2018888\";\"Novo-Petrovskoye\";\"other\"\n\"2018888\";\"Novo-Pokrovskiy\";\"other\"\n\"2018888\";\"Novopokrovskoye\";\"other\"\n\"2018888\";\"Novopokurofuskoe\";\"other\"\n\"2018888\";\"Новопокровка\";\"other\"\n\"2018896\";\"Novopavlovka\";\"main\"\n\"2018896\";\"NOVOPAVLOVKA\";\"other\"\n\"2018896\";\"НОВОПАВЛОВКА\";\"other\"\n\"2018896\";\"Новопавловка\";\"other\"\n\"2018925\";\"Novokruchininskiy\";\"main\"\n\"2018925\";\"NOVOKRUCHININSKIJ\";\"other\"\n\"2018925\";\"Novaya\";\"other\"\n\"2018925\";\"Novokrutsjininskij\";\"other\"\n\"2018925\";\"НОВОКРУЧИНИНСКИЙ\";\"other\"\n\"2018930\";\"Novokizhinginsk\";\"main\"\n\"2018930\";\"NOVOKIZHINGINSK\";\"other\"\n\"2018930\";\"Novokizjinginsk\";\"other\"\n\"2018930\";\"НОВОКИЖИНГИНСК\";\"other\"\n\"2018930\";\"Новокижингинск\";\"other\"\n\"2018964\";\"Novobureyskiy\";\"main\"\n\"2018964\";\"NOVOBUREJSKIJ\";\"other\"\n\"2018964\";\"Nikolayevka\";\"other\"\n\"2018964\";\"Novoburejskij\";\"other\"\n\"2018964\";\"Pribrezhnaya\";\"other\"\n\"2018964\";\"Pristan' Bureya\";\"other\"\n\"2018964\";\"Pristan’ Bureya\";\"other\"\n\"2018964\";\"НОВОБУРЕЙСКИЙ\";\"other\"\n\"2018964\";\"Новобурейский\";\"other\"\n\"2019004\";\"Novaya Igirma\";\"main\"\n\"2019004\";\"NOV.IGIRMA\";\"other\"\n\"2019004\";\"Novaya Igrima\";\"other\"\n\"2019004\";\"Novo Igirma\";\"other\"\n\"2019004\";\"НОВ.ИГИРМА\";\"other\"\n\"2019004\";\"Новая Игирма\";\"other\"\n\"2019009\";\"Novaya Bryan’\";\"main\"\n\"2019009\";\"Novaya Bryan'\";\"ascii\"\n\"2019009\";\"Novaja Brjan\";\"other\"\n\"2019009\";\"Novo-Bryanskoye\";\"other\"\n\"2019009\";\"Novoy Bryan\";\"other\"\n\"2019009\";\"Новая Брянь\";\"other\"\n\"2019118\";\"Nizhniy Tsasuchey\";\"main\"\n\"2019118\";\"Nizjnij Tsasutsjej\";\"other\"\n\"2019118\";\"Нижний Цасучей\";\"other\"\n\"2019135\";\"Nizhniy Kuranakh\";\"main\"\n\"2019135\";\"NIZHNIJ KURANAKH\";\"other\"\n\"2019135\";\"Nizjnij Kuranakh\";\"other\"\n\"2019135\";\"НИЖНИЙ КУРАНАХ\";\"other\"\n\"2019135\";\"Нижний Куранах\";\"other\"\n\"2019167\";\"Nizhniy Bestyakh\";\"main\"\n\"2019167\";\"Bestyakh\";\"other\"\n\"2019167\";\"Nizjnij Bestjakh\";\"other\"\n\"2019167\";\"Нижний Бестях\";\"other\"\n\"2019199\";\"Nizhneangarsk\";\"main\"\n\"2019199\";\"Kozlovo\";\"other\"\n\"2019199\";\"NIZHNEANGARSK\";\"other\"\n\"2019199\";\"Nizjneangarsk\";\"other\"\n\"2019199\";\"НИЖНЕАНГАРСК\";\"other\"\n\"2019199\";\"Нижнеангарск\";\"other\"\n\"2019296\";\"Never\";\"main\"\n\"2019296\";\"Larinskiy\";\"other\"\n\"2019296\";\"NEVER\";\"other\"\n\"2019296\";\"НЕВЕР\";\"other\"\n\"2019296\";\"Невер\";\"other\"\n\"2019309\";\"Neryungri\";\"main\"\n\"2019309\";\"NERJUNGRI\";\"other\"\n\"2019309\";\"Neriungri\";\"other\"\n\"2019309\";\"Neriungris\";\"other\"\n\"2019309\";\"Nerjoengri\";\"other\"\n\"2019309\";\"Nerjungri\";\"other\"\n\"2019309\";\"Neryugran\";\"other\"\n\"2019309\";\"Neryungar\";\"other\"\n\"2019309\";\"Neryungra\";\"other\"\n\"2019309\";\"nelyungeuli\";\"other\"\n\"2019309\";\"НЕРЮНГРИ\";\"other\"\n\"2019309\";\"Нерюнгри\";\"other\"\n\"2019309\";\"네륜그리\";\"other\"\n\"2019323\";\"Nerchinskiy Zavod\";\"main\"\n\"2019323\";\"Nerchinsk\";\"other\"\n\"2019323\";\"Nerchinsk-zavod\";\"other\"\n\"2019323\";\"Nerchinskizavod\";\"other\"\n\"2019323\";\"Nertsjinskij Zavod\";\"other\"\n\"2019323\";\"Нерчинский Завод\";\"other\"\n\"2019326\";\"Nerchinsk\";\"main\"\n\"2019326\";\"NERCHINSK\";\"other\"\n\"2019326\";\"Nertsjinsk\";\"other\"\n\"2019326\";\"НЕРЧИНСК\";\"other\"\n\"2019326\";\"Нерчинск\";\"other\"\n\"2019388\";\"Nekrasovka\";\"main\"\n\"2019388\";\"Некрасовка\";\"other\"\n\"2019429\";\"Naushki\";\"main\"\n\"2019429\";\"NAUSHKI\";\"other\"\n\"2019429\";\"Naushinski\";\"other\"\n\"2019429\";\"Naushinskiy\";\"other\"\n\"2019429\";\"Nausjki\";\"other\"\n\"2019429\";\"НАУШКИ\";\"other\"\n\"2019429\";\"Наушки\";\"other\"\n\"2019488\";\"Namtsy\";\"main\"\n\"2019488\";\"Namskoye\";\"other\"\n\"2019488\";\"Намцы\";\"other\"\n\"2019528\";\"Nakhodka\";\"main\"\n\"2019528\";\"NAKHODKA\";\"other\"\n\"2019528\";\"Nachodka\";\"other\"\n\"2019528\";\"Nahhodka\";\"other\"\n\"2019528\";\"Nahodka\";\"other\"\n\"2019528\";\"Najodka\";\"other\"\n\"2019528\";\"Naĥodka\";\"other\"\n\"2019528\";\"na huo de ka\";\"other\"\n\"2019528\";\"nahoska\";\"other\"\n\"2019528\";\"nahotoka\";\"other\"\n\"2019528\";\"НАХОДКА\";\"other\"\n\"2019528\";\"Находка\";\"other\"\n\"2019528\";\"ナホトカ\";\"other\"\n\"2019528\";\"納霍德卡\";\"other\"\n\"2019528\";\"나홋카\";\"other\"\n\"2019710\";\"Mukhorshibir’\";\"main\"\n\"2019710\";\"Mukhorshibir'\";\"ascii\"\n\"2019710\";\"Mokhor'shigir\";\"other\"\n\"2019710\";\"Mokhor’shigir\";\"other\"\n\"2019710\";\"Mukhor Shibar\";\"other\"\n\"2019710\";\"Mukhor-Shibir'\";\"other\"\n\"2019710\";\"Mukhor-Shigir\";\"other\"\n\"2019710\";\"Мухор-Шибирь\";\"other\"\n\"2019710\";\"Мухоршибирь\";\"other\"\n\"2019718\";\"Mukhen\";\"main\"\n\"2019718\";\"MUKHEN\";\"other\"\n\"2019718\";\"МУХЕН\";\"other\"\n\"2019718\";\"Мухен\";\"other\"\n\"2019819\";\"Monastyrishche\";\"main\"\n\"2019819\";\"Monastyrischtsche\";\"other\"\n\"2019819\";\"Monastyrisjtsje\";\"other\"\n\"2019819\";\"Монастырище\";\"other\"\n\"2019867\";\"Mokhsogollokh\";\"main\"\n\"2019867\";\"MOKHSOGOLLOKH\";\"other\"\n\"2019867\";\"МОХСОГОЛЛОХ\";\"other\"\n\"2019867\";\"Мохсоголлох\";\"other\"\n\"2019884\";\"Mogzon\";\"main\"\n\"2019884\";\"MOGZON\";\"other\"\n\"2019884\";\"МОГЗОН\";\"other\"\n\"2019884\";\"Могзон\";\"other\"\n\"2019892\";\"Mogoytuy\";\"main\"\n\"2019892\";\"MOGOJTUJ\";\"other\"\n\"2019892\";\"Mogojtuj\";\"other\"\n\"2019892\";\"МОГОЙТУЙ\";\"other\"\n\"2019912\";\"Mogocha\";\"main\"\n\"2019912\";\"MOGOCHA\";\"other\"\n\"2019912\";\"Mogacha\";\"other\"\n\"2019912\";\"Mogotsja\";\"other\"\n\"2019912\";\"Mogucha\";\"other\"\n\"2019912\";\"МОГОЧА\";\"other\"\n\"2019912\";\"Могоча\";\"other\"\n\"2019935\";\"Mnogovershinnyy\";\"main\"\n\"2019935\";\"MNOGOVERSHINNYJ\";\"other\"\n\"2019935\";\"Mnogoversjinnyj\";\"other\"\n\"2019935\";\"МНОГОВЕРШИННЫЙ\";\"other\"\n\"2019935\";\"Многовершинный\";\"other\"\n\"2019945\";\"Mishelevka\";\"main\"\n\"2019945\";\"MISHELEVKA\";\"other\"\n\"2019945\";\"Misheleyka\";\"other\"\n\"2019945\";\"Misjelevka\";\"other\"\n\"2019945\";\"МИШЕЛЕВКА\";\"other\"\n\"2019945\";\"Мишелевка\";\"other\"\n\"2019951\";\"Mirnyy\";\"main\"\n\"2019951\";\"MIRNYJ\";\"other\"\n\"2019951\";\"МИРНЫЙ\";\"other\"\n\"2019951\";\"Мирный\";\"other\"\n\"2020013\";\"Mikhaylovka\";\"main\"\n\"2020013\";\"Mikhailovka\";\"other\"\n\"2020013\";\"Mikhajlovka\";\"other\"\n\"2020013\";\"Mikhaylovskoye\";\"other\"\n\"2020013\";\"Михайловка\";\"other\"\n\"2020095\";\"Meget\";\"main\"\n\"2020095\";\"MEGET\";\"other\"\n\"2020095\";\"МЕГЕТ\";\"other\"\n\"2020095\";\"Мегет\";\"other\"\n\"2020121\";\"Mayya\";\"main\"\n\"2020121\";\"Maja\";\"other\"\n\"2020121\";\"Maya\";\"other\"\n\"2020121\";\"Майя\";\"other\"\n\"2020208\";\"Markovo\";\"main\"\n\"2020208\";\"Markova\";\"other\"\n\"2020208\";\"Markovskoye\";\"other\"\n\"2020208\";\"Марково\";\"other\"\n\"2020221\";\"Markha\";\"main\"\n\"2020221\";\"Bol'shaya Markha\";\"other\"\n\"2020221\";\"Bol’shaya Markha\";\"other\"\n\"2020221\";\"MARKHA\";\"other\"\n\"2020221\";\"МАРХА\";\"other\"\n\"2020221\";\"Марха\";\"other\"\n\"2020311\";\"Mamakan\";\"main\"\n\"2020311\";\"MAMAKAN\";\"other\"\n\"2020311\";\"МАМАКАН\";\"other\"\n\"2020311\";\"Мамакан\";\"other\"\n\"2020313\";\"Mama\";\"main\"\n\"2020313\";\"MAMA\";\"other\"\n\"2020313\";\"МАМА\";\"other\"\n\"2020313\";\"Мама\";\"other\"\n\"2020559\";\"Makkaveyevo\";\"main\"\n\"2020559\";\"Makaveyevo\";\"other\"\n\"2020559\";\"Makkavejevo\";\"other\"\n\"2020559\";\"Makkaveyeyskiy\";\"other\"\n\"2020559\";\"Makoveyevo\";\"other\"\n\"2020559\";\"Маккавеево\";\"other\"\n\"2020584\";\"Magistral’nyy\";\"main\"\n\"2020584\";\"Magistral'nyy\";\"ascii\"\n\"2020584\";\"Magistralnyj\";\"other\"\n\"2020584\";\"Магистральный\";\"other\"\n\"2020591\";\"Magdagachi\";\"main\"\n\"2020591\";\"MAGDAGACHI\";\"other\"\n\"2020591\";\"Magadagachi\";\"other\"\n\"2020591\";\"Magdagatsji\";\"other\"\n\"2020591\";\"МАГДАГАЧИ\";\"other\"\n\"2020591\";\"Магдагачи\";\"other\"\n\"2020595\";\"Magan\";\"main\"\n\"2020595\";\"MAGAN\";\"other\"\n\"2020595\";\"МАГАН\";\"other\"\n\"2020595\";\"Маган\";\"other\"\n\"2020626\";\"Sergeyevka\";\"main\"\n\"2020626\";\"Lyublino\";\"other\"\n\"2020626\";\"Sergievskij\";\"other\"\n\"2020626\";\"Sergiyevskiy\";\"other\"\n\"2020626\";\"Сергеевка\";\"other\"\n\"2020626\";\"Сергиевский\";\"other\"\n\"2020689\";\"Luchegorsk\";\"main\"\n\"2020689\";\"LUCHEGORSK\";\"other\"\n\"2020689\";\"Lutsjegorsk\";\"other\"\n\"2020689\";\"ЛУЧЕГОРСК\";\"other\"\n\"2020689\";\"Лучегорск\";\"other\"\n\"2020707\";\"Londoko\";\"main\"\n\"2020707\";\"LONDOKO\";\"other\"\n\"2020707\";\"Landoko\";\"other\"\n\"2020707\";\"Londoko-Kamenushka\";\"other\"\n\"2020707\";\"ЛОНДОКО\";\"other\"\n\"2020707\";\"Лондоко\";\"other\"\n\"2020734\";\"Livadiya\";\"main\"\n\"2020734\";\"LIVADIJA\";\"other\"\n\"2020734\";\"Livadia\";\"other\"\n\"2020734\";\"ЛИВАДИЯ\";\"other\"\n\"2020734\";\"Ливадия\";\"other\"\n\"2020738\";\"Litovko\";\"main\"\n\"2020738\";\"LITOVKO\";\"other\"\n\"2020738\";\"ЛИТОВКО\";\"other\"\n\"2020738\";\"Литовко\";\"other\"\n\"2020744\";\"Listvyanka\";\"main\"\n\"2020744\";\"LISTVJANKA\";\"other\"\n\"2020744\";\"Listrinichnoye\";\"other\"\n\"2020744\";\"Listvenichnoye\";\"other\"\n\"2020744\";\"Listvinichnoye\";\"other\"\n\"2020744\";\"Listvjanka\";\"other\"\n\"2020744\";\"ЛИСТВЯНКА\";\"other\"\n\"2020744\";\"Листвянка\";\"other\"\n\"2020752\";\"Lipovtsy\";\"main\"\n\"2020752\";\"Krasnopol'ye\";\"other\"\n\"2020752\";\"Krasnopol’ye\";\"other\"\n\"2020752\";\"LIPOVCY\";\"other\"\n\"2020752\";\"Lipovtsi\";\"other\"\n\"2020752\";\"Lipovtsky\";\"other\"\n\"2020752\";\"ЛИПОВЦЫ\";\"other\"\n\"2020752\";\"Липовцы\";\"other\"\n\"2020812\";\"Lesozavodsk\";\"main\"\n\"2020812\";\"LESOZAVODSK\";\"other\"\n\"2020812\";\"Lesozayodsk\";\"other\"\n\"2020812\";\"Ussuri\";\"other\"\n\"2020812\";\"ЛЕСОЗАВОДСК\";\"other\"\n\"2020812\";\"Лесозаводск\";\"other\"\n\"2020824\";\"Lermontovka\";\"main\"\n\"2020824\";\"Лермонтовка\";\"other\"\n\"2020838\";\"Lensk\";\"main\"\n\"2020838\";\"LENSK\";\"other\"\n\"2020838\";\"Mukhtuya\";\"other\"\n\"2020838\";\"ЛЕНСК\";\"other\"\n\"2020838\";\"Ленск\";\"other\"\n\"2020841\";\"Leninskoye\";\"main\"\n\"2020841\";\"Blyukherovo\";\"other\"\n\"2020841\";\"Leninsk\";\"other\"\n\"2020841\";\"Leninskoe\";\"other\"\n\"2020841\";\"Mikhailo-Semenovskoye\";\"other\"\n\"2020841\";\"Mikhaylo-Semenovskoye\";\"other\"\n\"2020841\";\"Ленинск\";\"other\"\n\"2020841\";\"Ленинское\";\"other\"\n\"2020848\";\"Leninskiy\";\"main\"\n\"2020848\";\"LENINSKIJ\";\"other\"\n\"2020848\";\"Leninskij\";\"other\"\n\"2020848\";\"Nizhne-Stalinsk\";\"other\"\n\"2020848\";\"Nizhniy Stalinskiy\";\"other\"\n\"2020848\";\"ЛЕНИНСКИЙ\";\"other\"\n\"2020848\";\"Ленинский\";\"other\"\n\"2020871\";\"Lebedinyy\";\"main\"\n\"2020871\";\"Lebedinyj\";\"other\"\n\"2020871\";\"Verkhne-Stalinsk\";\"other\"\n\"2020871\";\"Verkhniy Stalinskiy\";\"other\"\n\"2020871\";\"Лебединый\";\"other\"\n\"2020887\";\"Lazo\";\"main\"\n\"2020887\";\"Лазо\";\"other\"\n\"2020888\";\"Lazo\";\"main\"\n\"2020888\";\"Vangou\";\"other\"\n\"2020888\";\"Лазо\";\"other\"\n\"2021017\";\"Kysyl-Syr\";\"main\"\n\"2021017\";\"Кысыл-Сыр\";\"other\"\n\"2021031\";\"Kyren\";\"main\"\n\"2021031\";\"KYREN\";\"other\"\n\"2021031\";\"Koren\";\"other\"\n\"2021031\";\"КЫРЕН\";\"other\"\n\"2021041\";\"Kyra\";\"main\"\n\"2021041\";\"Kora\";\"other\"\n\"2021041\";\"Кыра\";\"other\"\n\"2021066\";\"Kyakhta\";\"main\"\n\"2021066\";\"Kjakhta\";\"other\"\n\"2021066\";\"Troitskosavsk\";\"other\"\n\"2021066\";\"Кяхта\";\"other\"\n\"2021093\";\"Kuytun\";\"main\"\n\"2021093\";\"KUJTUN\";\"other\"\n\"2021093\";\"Khaikhta\";\"other\"\n\"2021093\";\"Khaita\";\"other\"\n\"2021093\";\"Kuitun\";\"other\"\n\"2021093\";\"Kujtun\";\"other\"\n\"2021093\";\"Kuytuk\";\"other\"\n\"2021093\";\"КУЙТУН\";\"other\"\n\"2021093\";\"Куйтун\";\"other\"\n\"2021116\";\"Kutulik\";\"main\"\n\"2021116\";\"KUTULIK\";\"other\"\n\"2021116\";\"Kutulyk\";\"other\"\n\"2021116\";\"КУТУЛИК\";\"other\"\n\"2021188\";\"Kurumkan\";\"main\"\n\"2021188\";\"Kurumken\";\"other\"\n\"2021188\";\"Курумкан\";\"other\"\n\"2021207\";\"Kurort-Darasun\";\"main\"\n\"2021207\";\"Darasun\";\"other\"\n\"2021207\";\"KURORT DARASUN\";\"other\"\n\"2021207\";\"Kurort Darasun\";\"other\"\n\"2021207\";\"КУРОРТ ДАРАСУН\";\"other\"\n\"2021207\";\"Курорт-Дарасун\";\"other\"\n\"2021343\";\"Kultuk\";\"main\"\n\"2021343\";\"KULTUK\";\"other\"\n\"2021343\";\"Zabaykalsk\";\"other\"\n\"2021343\";\"КУЛТУК\";\"other\"\n\"2021343\";\"Култук\";\"other\"\n\"2021370\";\"Kul’dur\";\"main\"\n\"2021370\";\"Kul'dur\";\"ascii\"\n\"2021370\";\"Kuldur\";\"other\"\n\"2021370\";\"Kurort\";\"other\"\n\"2021370\";\"Кульдур\";\"other\"\n\"2021434\";\"Kudara-Somon\";\"main\"\n\"2021434\";\"Kudara\";\"other\"\n\"2021434\";\"Кудара-Сомон\";\"other\"\n\"2021504\";\"Kropotkin\";\"main\"\n\"2021504\";\"KROPOTKIN\";\"other\"\n\"2021504\";\"Krapotkin\";\"other\"\n\"2021504\";\"КРОПОТКИН\";\"other\"\n\"2021504\";\"Кропоткин\";\"other\"\n\"2021613\";\"Krasnorechenskiy\";\"main\"\n\"2021613\";\"KRASNORECHENSKIJ\";\"other\"\n\"2021613\";\"Krasnoretsjenskij\";\"other\"\n\"2021613\";\"КРАСНОРЕЧЕНСКИЙ\";\"other\"\n\"2021613\";\"Краснореченский\";\"other\"\n\"2021618\";\"Krasnokamensk\";\"main\"\n\"2021618\";\"Chandacha\";\"other\"\n\"2021618\";\"Chindachi\";\"other\"\n\"2021618\";\"Chindachinskaya\";\"other\"\n\"2021618\";\"KRASNOKAMENSK\";\"other\"\n\"2021618\";\"КРАСНОКАМЕНСК\";\"other\"\n\"2021618\";\"Краснокаменск\";\"other\"\n\"2021644\";\"Kraskino\";\"main\"\n\"2021644\";\"KRASKINO\";\"other\"\n\"2021644\";\"Novo'kievsk\";\"other\"\n\"2021644\";\"Novo-Kievsku\";\"other\"\n\"2021644\";\"Novo-Kiyevskoye\";\"other\"\n\"2021644\";\"Novokivsk\";\"other\"\n\"2021644\";\"Novokiyevsk\";\"other\"\n\"2021644\";\"Novo’kievsk\";\"other\"\n\"2021644\";\"КРАСКИНО\";\"other\"\n\"2021644\";\"Краскино\";\"other\"\n\"2021766\";\"Korfovskiy\";\"main\"\n\"2021766\";\"Корфовский\";\"other\"\n\"2021799\";\"Konstantinovka\";\"main\"\n\"2021799\";\"Konstantinovskoye\";\"other\"\n\"2021799\";\"Константиновка\";\"other\"\n\"2021851\";\"Komsomol’sk-na-Amure\";\"main\"\n\"2021851\";\"Komsomol'sk-na-Amure\";\"ascii\"\n\"2021851\";\"Komsomol'sk\";\"other\"\n\"2021851\";\"Komsomolsk-na-Amure\";\"other\"\n\"2021851\";\"Komsomol’sk\";\"other\"\n\"2021851\";\"Permskoye\";\"other\"\n\"2021851\";\"Комсомольск-на-Амуре\";\"other\"\n\"2021908\";\"Kokuy\";\"main\"\n\"2021908\";\"KOKUJ\";\"other\"\n\"2021908\";\"Kodui\";\"other\"\n\"2021908\";\"Koduy\";\"other\"\n\"2021908\";\"Kokuj\";\"other\"\n\"2021908\";\"Kokur\";\"other\"\n\"2021908\";\"Kokuyskaya\";\"other\"\n\"2021908\";\"Nokuy\";\"other\"\n\"2021908\";\"Poselok Kukuyskiy\";\"other\"\n\"2021908\";\"Posëlok Kukuyskiy\";\"other\"\n\"2021908\";\"КОКУЙ\";\"other\"\n\"2021908\";\"Кокуй\";\"other\"\n\"2021954\";\"Knyaze-Volkonskoye\";\"main\"\n\"2021954\";\"Knjaze-Volkonskoje\";\"other\"\n\"2021954\";\"Knyaze-Volkonka\";\"other\"\n\"2021954\";\"Князе-Волконское\";\"other\"\n\"2021956\";\"Knevichi\";\"main\"\n\"2021956\";\"Knevitsji\";\"other\"\n\"2021956\";\"Кневичи\";\"other\"\n\"2021980\";\"Klyuchevskiy\";\"main\"\n\"2021980\";\"KLJUCHEVSKIJ\";\"other\"\n\"2021980\";\"Kljutsjevskij\";\"other\"\n\"2021980\";\"Klyuchevskoy\";\"other\"\n\"2021980\";\"Klyuchi\";\"other\"\n\"2021980\";\"КЛЮЧЕВСКИЙ\";\"other\"\n\"2021980\";\"Ключевский\";\"other\"\n\"2021992\";\"Klichka\";\"main\"\n\"2021992\";\"KLICHKA\";\"other\"\n\"2021992\";\"Klichki\";\"other\"\n\"2021992\";\"Klitsjka\";\"other\"\n\"2021992\";\"КЛИЧКА\";\"other\"\n\"2021992\";\"Кличка\";\"other\"\n\"2022003\";\"Kizhinga\";\"main\"\n\"2022003\";\"Kizjinga\";\"other\"\n\"2022003\";\"Кижинга\";\"other\"\n\"2022024\";\"Kitoy\";\"main\"\n\"2022024\";\"Kitoi\";\"other\"\n\"2022024\";\"Kitoj\";\"other\"\n\"2022024\";\"Китой\";\"other\"\n\"2022064\";\"Kirovskiy\";\"main\"\n\"2022064\";\"KIROVSKIJ\";\"other\"\n\"2022064\";\"Kirovskij\";\"other\"\n\"2022064\";\"Uspenka\";\"other\"\n\"2022064\";\"Uspenovka\";\"other\"\n\"2022064\";\"Usupenka\";\"other\"\n\"2022064\";\"КИРОВСКИЙ\";\"other\"\n\"2022064\";\"Кировский\";\"other\"\n\"2022083\";\"Kirensk\";\"main\"\n\"2022083\";\"KIRENSK\";\"other\"\n\"2022083\";\"КИРЕНСК\";\"other\"\n\"2022083\";\"Киренск\";\"other\"\n\"2022129\";\"Kichera\";\"main\"\n\"2022129\";\"KICHERA\";\"other\"\n\"2022129\";\"Kitsjera\";\"other\"\n\"2022129\";\"КИЧЕРА\";\"other\"\n\"2022129\";\"Кичера\";\"other\"\n\"2022143\";\"Khuzhir\";\"main\"\n\"2022143\";\"KHOUJIR\";\"other\"\n\"2022143\";\"KHUZHIR\";\"other\"\n\"2022143\";\"Khuzhirtuy\";\"other\"\n\"2022143\";\"Khuzhirtuyskiy\";\"other\"\n\"2022143\";\"Mal.Khuzhir\";\"other\"\n\"2022143\";\"Мал.Хужир\";\"other\"\n\"2022143\";\"ХУЖИР\";\"other\"\n\"2022143\";\"Хужир\";\"other\"\n\"2022174\";\"Khurba\";\"main\"\n\"2022174\";\"Хурба\";\"other\"\n\"2022232\";\"Khrebtovaya\";\"main\"\n\"2022232\";\"Izbushechnaya\";\"other\"\n\"2022232\";\"KHREBTOVAJA\";\"other\"\n\"2022232\";\"Khrebtovaja\";\"other\"\n\"2022232\";\"Verkhnyaya Khrebtovaya\";\"other\"\n\"2022232\";\"ХРЕБТОВАЯ\";\"other\"\n\"2022232\";\"Хребтовая\";\"other\"\n\"2022289\";\"Khorol’\";\"main\"\n\"2022289\";\"Khorol'\";\"ascii\"\n\"2022289\";\"Khoral\";\"other\"\n\"2022289\";\"Khorel\";\"other\"\n\"2022289\";\"Khorol'sk\";\"other\"\n\"2022289\";\"Khorol'skaya\";\"other\"\n\"2022289\";\"Khorol'sko\";\"other\"\n\"2022289\";\"Khorol’sk\";\"other\"\n\"2022289\";\"Khorol’skaya\";\"other\"\n\"2022289\";\"Khorol’sko\";\"other\"\n\"2022289\";\"Хороль\";\"other\"\n\"2022289\";\"Хорольск\";\"other\"\n\"2022304\";\"Khorinsk\";\"main\"\n\"2022304\";\"Khorinskoye\";\"other\"\n\"2022304\";\"Хоринск\";\"other\"\n\"2022317\";\"Khor\";\"main\"\n\"2022317\";\"KHOR\";\"other\"\n\"2022317\";\"Khorskiy\";\"other\"\n\"2022317\";\"ХОР\";\"other\"\n\"2022317\";\"Хор\";\"other\"\n\"2022342\";\"Khomutovo\";\"main\"\n\"2022342\";\"Хомутово\";\"other\"\n\"2022369\";\"Kholtoson\";\"main\"\n\"2022369\";\"KHOLTOSON\";\"other\"\n\"2022369\";\"Nizhniy Kholtoson\";\"other\"\n\"2022369\";\"ХОЛТОСОН\";\"other\"\n\"2022369\";\"Холтосон\";\"other\"\n\"2022394\";\"Kholbon\";\"main\"\n\"2022394\";\"KHOLBON\";\"other\"\n\"2022394\";\"ХОЛБОН\";\"other\"\n\"2022394\";\"Холбон\";\"other\"\n\"2022454\";\"Khingansk\";\"main\"\n\"2022454\";\"KHINGANSK\";\"other\"\n\"2022454\";\"Mikoyanovsk\";\"other\"\n\"2022454\";\"ХИНГАНСК\";\"other\"\n\"2022454\";\"Хинганск\";\"other\"\n\"2022463\";\"Khilok\";\"main\"\n\"2022463\";\"KHILOK\";\"other\"\n\"2022463\";\"ХИЛОК\";\"other\"\n\"2022463\";\"Хилок\";\"other\"\n\"2022564\";\"Khatassy\";\"main\"\n\"2022564\";\"Khatssy\";\"other\"\n\"2022564\";\"Хатассы\";\"other\"\n\"2022572\";\"Khatanga\";\"main\"\n\"2022572\";\"Chatanga\";\"other\"\n\"2022572\";\"Khatenga\";\"other\"\n\"2022572\";\"Хатанга\";\"other\"\n\"2022773\";\"Khandyga\";\"main\"\n\"2022773\";\"KHANDYGA\";\"other\"\n\"2022773\";\"ХАНДЫГА\";\"other\"\n\"2022773\";\"Хандыга\";\"other\"\n\"2022890\";\"Khabarovsk\";\"main\"\n\"2022890\";\"Chabarovsk\";\"other\"\n\"2022890\";\"Chabarowsk\";\"other\"\n\"2022890\";\"Habarovsk\";\"other\"\n\"2022890\";\"Habarovszk\";\"other\"\n\"2022890\";\"Jabarovsk\";\"other\"\n\"2022890\";\"Jabárovsk\";\"other\"\n\"2022890\";\"KHABAROVSK\";\"other\"\n\"2022890\";\"Khabarovka\";\"other\"\n\"2022890\";\"Khabarovs'k\";\"other\"\n\"2022890\";\"bo li\";\"other\"\n\"2022890\";\"habalobseukeu\";\"other\"\n\"2022890\";\"habarofusuku\";\"other\"\n\"2022890\";\"hbrwbsq\";\"other\"\n\"2022890\";\"Ĥabarovsk\";\"other\"\n\"2022890\";\"ХАБАРОВСК\";\"other\"\n\"2022890\";\"Хабаровск\";\"other\"\n\"2022890\";\"Хабаровськ\";\"other\"\n\"2022890\";\"חברובסק\";\"other\"\n\"2022890\";\"ハバロフスク\";\"other\"\n\"2022890\";\"伯力\";\"other\"\n\"2022890\";\"하바롭스크\";\"other\"\n\"2023029\";\"Kazachinskoye\";\"main\"\n\"2023029\";\"Kazachinskaye\";\"other\"\n\"2023029\";\"Kazatsjinskoje\";\"other\"\n\"2023029\";\"Казачинское\";\"other\"\n\"2023058\";\"Kavalerovo\";\"main\"\n\"2023058\";\"KAVALEROVO\";\"other\"\n\"2023058\";\"Kavaletovo\";\"other\"\n\"2023058\";\"Kovalerovo\";\"other\"\n\"2023058\";\"Kovalevo\";\"other\"\n\"2023058\";\"КАВАЛЕРОВО\";\"other\"\n\"2023058\";\"Кавалерово\";\"other\"\n\"2023094\";\"Karymskoye\";\"main\"\n\"2023094\";\"KARYMSKOE\";\"other\"\n\"2023094\";\"Karomskaya\";\"other\"\n\"2023094\";\"Karymskaya\";\"other\"\n\"2023094\";\"Karymskoje\";\"other\"\n\"2023094\";\"Karömskaya\";\"other\"\n\"2023094\";\"КАРЫМСКОЕ\";\"other\"\n\"2023094\";\"Карымское\";\"other\"\n\"2023190\";\"Kangalassy\";\"main\"\n\"2023190\";\"KANGALASSY\";\"other\"\n\"2023190\";\"Kangalasskiye Kopi\";\"other\"\n\"2023190\";\"Kangalastsy\";\"other\"\n\"2023190\";\"Kangalasy\";\"other\"\n\"2023190\";\"Namtogor\";\"other\"\n\"2023190\";\"Odey Vtoroy\";\"other\"\n\"2023190\";\"КАНГАЛАССЫ\";\"other\"\n\"2023190\";\"Кангалассы\";\"other\"\n\"2023226\";\"Kamen’-Rybolov\";\"main\"\n\"2023226\";\"Kamen'-Rybolov\";\"ascii\"\n\"2023226\";\"Kamen\";\"other\"\n\"2023226\";\"Kamen-Rybolov\";\"other\"\n\"2023226\";\"Камень-Рыболов\";\"other\"\n\"2023249\";\"Kamenka\";\"main\"\n\"2023249\";\"KAMENKA\";\"other\"\n\"2023249\";\"КАМЕНКА\";\"other\"\n\"2023249\";\"Каменка\";\"other\"\n\"2023286\";\"Kalga\";\"main\"\n\"2023286\";\"Калга\";\"other\"\n\"2023298\";\"Kalanguy\";\"main\"\n\"2023298\";\"KALANGUJ\";\"other\"\n\"2023298\";\"Kalangui\";\"other\"\n\"2023298\";\"Kalanguj\";\"other\"\n\"2023298\";\"Kolanguy\";\"other\"\n\"2023298\";\"Kolonduy\";\"other\"\n\"2023298\";\"КАЛАНГУЙ\";\"other\"\n\"2023298\";\"Калангуй\";\"other\"\n\"2023324\";\"Kadaya\";\"main\"\n\"2023324\";\"KADAJA\";\"other\"\n\"2023324\";\"Kadai\";\"other\"\n\"2023324\";\"Kadaja\";\"other\"\n\"2023324\";\"Kaday\";\"other\"\n\"2023324\";\"Kadaya Pervaya\";\"other\"\n\"2023324\";\"КАДАЯ\";\"other\"\n\"2023324\";\"Кадая\";\"other\"\n\"2023333\";\"Kachug\";\"main\"\n\"2023333\";\"KACHUG\";\"other\"\n\"2023333\";\"Kachuga\";\"other\"\n\"2023333\";\"Kachurga\";\"other\"\n\"2023333\";\"Katsjug\";\"other\"\n\"2023333\";\"КАЧУГ\";\"other\"\n\"2023333\";\"Качуг\";\"other\"\n\"2023350\";\"Kabansk\";\"main\"\n\"2023350\";\"Кабанск\";\"other\"\n\"2023360\";\"Izvestkovyy\";\"main\"\n\"2023360\";\"Izvestkovaya\";\"other\"\n\"2023360\";\"Izvestkovyj\";\"other\"\n\"2023360\";\"Известковый\";\"other\"\n\"2023377\";\"Ivolginsk\";\"main\"\n\"2023377\";\"IVOLGINSK\";\"other\"\n\"2023377\";\"Ivolga\";\"other\"\n\"2023377\";\"Ivologinsk\";\"other\"\n\"2023377\";\"ИВОЛГИНСК\";\"other\"\n\"2023377\";\"Иволгинск\";\"other\"\n\"2023427\";\"Istok\";\"main\"\n\"2023427\";\"Исток\";\"other\"\n\"2023469\";\"Irkutsk\";\"main\"\n\"2023469\";\"Irkoetsk\";\"other\"\n\"2023469\";\"Irkoutsk\";\"other\"\n\"2023469\";\"Irkuck\";\"other\"\n\"2023469\";\"Irkutk\";\"other\"\n\"2023469\";\"Irkutsc\";\"other\"\n\"2023469\";\"Irkutskas\";\"other\"\n\"2023469\";\"Irkutszk\";\"other\"\n\"2023469\";\"Irkuţk\";\"other\"\n\"2023469\";\"ileukucheukeu\";\"other\"\n\"2023469\";\"irukutsuku\";\"other\"\n\"2023469\";\"yi er ku ci ke\";\"other\"\n\"2023469\";\"Ιρκούτσκ\";\"other\"\n\"2023469\";\"Іркутськ\";\"other\"\n\"2023469\";\"Иркутск\";\"other\"\n\"2023469\";\"Иркуцк\";\"other\"\n\"2023469\";\"אירקוטסק\";\"other\"\n\"2023469\";\"אירקוצק\";\"other\"\n\"2023469\";\"イルクーツク\";\"other\"\n\"2023469\";\"伊爾庫茨克\";\"other\"\n\"2023469\";\"이르쿠츠크\";\"other\"\n\"2023584\";\"Imeni Poliny Osipenko\";\"main\"\n\"2023584\";\"Kerbi\";\"other\"\n\"2023584\";\"Kerbinsk\";\"other\"\n\"2023584\";\"Osipenko\";\"other\"\n\"2023584\";\"Poselok Imeni Poliny Osipenko\";\"other\"\n\"2023584\";\"im.Poliny Osipenko\";\"other\"\n\"2023584\";\"imeni Poliny Osipenko\";\"other\"\n\"2023584\";\"Имени Полины Осипенко\";\"other\"\n\"2023584\";\"им.Полины Осипенко\";\"other\"\n\"2023584\";\"имени Полины Осипенко\";\"other\"\n\"2023778\";\"Gusinoye Ozero\";\"main\"\n\"2023778\";\"Gusinoje-Ozero\";\"other\"\n\"2023778\";\"Gusinoozerskiy Datsan\";\"other\"\n\"2023778\";\"Gusinoozyorskiy Monastery\";\"other\"\n\"2023778\";\"Гусиное Озеро\";\"other\"\n\"2023782\";\"Gusinoozërsk\";\"main\"\n\"2023782\";\"Gusinoozersk\";\"ascii\"\n\"2023782\";\"Bestuzhev\";\"other\"\n\"2023782\";\"Gusinoozerak\";\"other\"\n\"2023782\";\"Gusnooversk\";\"other\"\n\"2023782\";\"Shakhty\";\"other\"\n\"2023782\";\"Yelanovskiy\";\"other\"\n\"2023782\";\"Гусиноозёрск\";\"other\"\n\"2023918\";\"Gornyye Klyuchi\";\"main\"\n\"2023918\";\"Gornye-Kljutsji\";\"other\"\n\"2023918\";\"Горные Ключи\";\"other\"\n\"2023920\";\"Gornyy\";\"main\"\n\"2023920\";\"GORNYJ\";\"other\"\n\"2023920\";\"Gornyj\";\"other\"\n\"2023920\";\"Solnechnoye\";\"other\"\n\"2023920\";\"Solnechnyy\";\"other\"\n\"2023920\";\"ГОРНЫЙ\";\"other\"\n\"2023929\";\"Gornorechenskiy\";\"main\"\n\"2023929\";\"GORNORECHENSKIJ\";\"other\"\n\"2023929\";\"Gornoretsjenskij\";\"other\"\n\"2023929\";\"ГОРНОРЕЧЕНСКИЙ\";\"other\"\n\"2023929\";\"Горнореченский\";\"other\"\n\"2023943\";\"Gorin\";\"main\"\n\"2023943\";\"Горин\";\"other\"\n\"2024122\";\"Gazimurskiy Zavod\";\"main\"\n\"2024122\";\"Gazimurskij Zavod\";\"other\"\n\"2024122\";\"Gazimurskizavod\";\"other\"\n\"2024122\";\"Газимурский Завод\";\"other\"\n\"2024461\";\"Ekimchan\";\"main\"\n\"2024461\";\"EHKIMCHAN\";\"other\"\n\"2024461\";\"Ekimtsjan\";\"other\"\n\"2024461\";\"ЭКИМЧАН\";\"other\"\n\"2024461\";\"Экимчан\";\"other\"\n\"2024579\";\"Dzhida\";\"main\"\n\"2024579\";\"DZHIDA\";\"other\"\n\"2024579\";\"Dzjida\";\"other\"\n\"2024579\";\"ДЖИДА\";\"other\"\n\"2024579\";\"Джида\";\"other\"\n\"2024626\";\"Dzhebariki-Khaya\";\"main\"\n\"2024626\";\"Dzjebariki-Khaja\";\"other\"\n\"2024626\";\"Джебарики-Хая\";\"other\"\n\"2024800\";\"Dunay\";\"main\"\n\"2024800\";\"Dunai\";\"other\"\n\"2024800\";\"Dunaj\";\"other\"\n\"2024800\";\"Shkotovo-22\";\"other\"\n\"2024800\";\"Дунай\";\"other\"\n\"2024812\";\"Dul'durga\";\"main\"\n\"2024812\";\"Duldurga\";\"other\"\n\"2024812\";\"Duldurgh\";\"other\"\n\"2024812\";\"Дульдурга\";\"other\"\n\"2024848\";\"Drovyanaya\";\"main\"\n\"2024848\";\"DROVJANAJA\";\"other\"\n\"2024848\";\"Drouyanaya\";\"other\"\n\"2024848\";\"Drovjanaja\";\"other\"\n\"2024848\";\"ДРОВЯНАЯ\";\"other\"\n\"2024858\";\"Dostoyevka\";\"main\"\n\"2024858\";\"Dostojevka\";\"other\"\n\"2024858\";\"Достоевка\";\"other\"\n\"2024893\";\"Domna\";\"main\"\n\"2024893\";\"Demninskoye\";\"other\"\n\"2024893\";\"Dominskoye\";\"other\"\n\"2024893\";\"Domninskoye\";\"other\"\n\"2024893\";\"Domno\";\"other\"\n\"2024893\";\"Домна\";\"other\"\n\"2025099\";\"Dauriya\";\"main\"\n\"2025099\";\"Dauria\";\"other\"\n\"2025099\";\"Daurskoye\";\"other\"\n\"2025099\";\"Даурия\";\"other\"\n\"2025121\";\"Darasun\";\"main\"\n\"2025121\";\"DARASUN\";\"other\"\n\"2025121\";\"ДАРАСУН\";\"other\"\n\"2025159\";\"Dal’nerechensk\";\"main\"\n\"2025159\";\"Dal'nerechensk\";\"ascii\"\n\"2025159\";\"Dalneretsjensk\";\"other\"\n\"2025159\";\"Iman\";\"other\"\n\"2025159\";\"Дальнереченск\";\"other\"\n\"2025241\";\"Churapcha\";\"main\"\n\"2025241\";\"Tsjuraptsja\";\"other\"\n\"2025241\";\"Чурапча\";\"other\"\n\"2025256\";\"Chumikan\";\"main\"\n\"2025256\";\"Chumukan\";\"other\"\n\"2025256\";\"Tsjumikan\";\"other\"\n\"2025256\";\"Чумикан\";\"other\"\n\"2025261\";\"Chul’man\";\"main\"\n\"2025261\";\"Chul'man\";\"ascii\"\n\"2025261\";\"Tsjulman\";\"other\"\n\"2025261\";\"Utesnaya\";\"other\"\n\"2025261\";\"Чульман\";\"other\"\n\"2025286\";\"Chuguyevka\";\"main\"\n\"2025286\";\"Tsjugujevka\";\"other\"\n\"2025286\";\"Чугуевка\";\"other\"\n\"2025325\";\"Chkalovskoye\";\"main\"\n\"2025325\";\"Tsjkalovskoje\";\"other\"\n\"2025325\";\"Zen'kovka\";\"other\"\n\"2025325\";\"Zen’kovka\";\"other\"\n\"2025325\";\"Чкаловское\";\"other\"\n\"2025339\";\"Chita\";\"main\"\n\"2025339\";\"Chitá\";\"other\"\n\"2025339\";\"Tchita\";\"other\"\n\"2025339\";\"Tschita\";\"other\"\n\"2025339\";\"Tsita\";\"other\"\n\"2025339\";\"Tsjita\";\"other\"\n\"2025339\";\"Tšita\";\"other\"\n\"2025339\";\"chi ta\";\"other\"\n\"2025339\";\"chita\";\"other\"\n\"2025339\";\"Чита\";\"other\"\n\"2025339\";\"チタ\";\"other\"\n\"2025339\";\"赤塔\";\"other\"\n\"2025456\";\"Chernyshevskiy\";\"main\"\n\"2025456\";\"CHERNYSHEVSKIJ\";\"other\"\n\"2025456\";\"Tsjernysjevskij\";\"other\"\n\"2025456\";\"ЧЕРНЫШЕВСКИЙ\";\"other\"\n\"2025456\";\"Чернышевский\";\"other\"\n\"2025458\";\"Chernyshevsk\";\"main\"\n\"2025458\";\"Imeni Kaganovicha\";\"other\"\n\"2025458\";\"Poselok Imeni Kaganovicha\";\"other\"\n\"2025458\";\"Posëlok Imeni Kaganovicha\";\"other\"\n\"2025458\";\"Tsjernysjevsk\";\"other\"\n\"2025458\";\"Чернышевск\";\"other\"\n\"2025460\";\"Chernyshëvka\";\"main\"\n\"2025460\";\"Chernyshevka\";\"ascii\"\n\"2025460\";\"Tsjernysjevka\";\"other\"\n\"2025460\";\"Чернышевка\";\"other\"\n\"2025460\";\"Чернышёвка\";\"other\"\n\"2025489\";\"Chernigovka\";\"main\"\n\"2025489\";\"Tsjernigovka\";\"other\"\n\"2025489\";\"Черниговка\";\"other\"\n\"2025527\";\"Cheremkhovo\";\"main\"\n\"2025527\";\"CHEREMKHOVO\";\"other\"\n\"2025527\";\"Tsjeremkhovo\";\"other\"\n\"2025527\";\"ЧЕРЕМХОВО\";\"other\"\n\"2025527\";\"Черемхово\";\"other\"\n\"2025579\";\"Chegdomyn\";\"main\"\n\"2025579\";\"CHEGDOMYN\";\"other\"\n\"2025579\";\"Chagdamin\";\"other\"\n\"2025579\";\"Chagdamyn\";\"other\"\n\"2025579\";\"Tsjegdomyn\";\"other\"\n\"2025579\";\"ЧЕГДОМЫН\";\"other\"\n\"2025579\";\"Чегдомын\";\"other\"\n\"2025630\";\"Chara\";\"main\"\n\"2025630\";\"Char\";\"other\"\n\"2025630\";\"Staraja Chara\";\"other\"\n\"2025630\";\"Старая Чара\";\"other\"\n\"2025630\";\"Чара\";\"other\"\n\"2025917\";\"Bureya\";\"main\"\n\"2025917\";\"BUREJA\";\"other\"\n\"2025917\";\"Bureia\";\"other\"\n\"2025917\";\"Bureja\";\"other\"\n\"2025917\";\"БУРЕЯ\";\"other\"\n\"2025917\";\"Бурея\";\"other\"\n\"2026023\";\"Bukachacha\";\"main\"\n\"2026023\";\"BUKACHACHA\";\"other\"\n\"2026023\";\"Bukatsjatsja\";\"other\"\n\"2026023\";\"БУКАЧАЧА\";\"other\"\n\"2026023\";\"Букачача\";\"other\"\n\"2026126\";\"Borzya\";\"main\"\n\"2026126\";\"BORZJA\";\"other\"\n\"2026126\";\"Bolzhia\";\"other\"\n\"2026126\";\"Borzia\";\"other\"\n\"2026126\";\"БОРЗЯ\";\"other\"\n\"2026126\";\"Борзя\";\"other\"\n\"2026160\";\"Borogontsy\";\"main\"\n\"2026160\";\"Borogontsi\";\"other\"\n\"2026160\";\"Борогонцы\";\"other\"\n\"2026303\";\"Bol’shoy Kamen’\";\"main\"\n\"2026303\";\"Bol'shoy Kamen'\";\"ascii\"\n\"2026303\";\"Большой Камень\";\"other\"\n\"2026544\";\"Bokhan\";\"main\"\n\"2026544\";\"BOKHAN\";\"other\"\n\"2026544\";\"БОХАН\";\"other\"\n\"2026583\";\"Bodaybo\";\"main\"\n\"2026583\";\"BODAJBO\";\"other\"\n\"2026583\";\"Bodaibo\";\"other\"\n\"2026583\";\"Bodajbo\";\"other\"\n\"2026583\";\"БОДАЙБО\";\"other\"\n\"2026583\";\"Бодайбо\";\"other\"\n\"2026609\";\"Blagoveshchensk\";\"main\"\n\"2026609\";\"Blagovescensk\";\"other\"\n\"2026609\";\"Blagovesjtsjensk\";\"other\"\n\"2026609\";\"Blagovestsensk\";\"other\"\n\"2026609\";\"Blagoveŝĉensk\";\"other\"\n\"2026609\";\"Blagoveštšensk\";\"other\"\n\"2026609\";\"Blagoveščensk\";\"other\"\n\"2026609\";\"Blagovjescensk\";\"other\"\n\"2026609\";\"Blagovjeshchensk\";\"other\"\n\"2026609\";\"Blagovješčensk\";\"other\"\n\"2026609\";\"Blagovyeshchensk\";\"other\"\n\"2026609\";\"Blagoweschtschensk\";\"other\"\n\"2026609\";\"Blagowieszczensk\";\"other\"\n\"2026609\";\"Blagowjeschtschensk\";\"other\"\n\"2026609\";\"Blаgоvеsjtsjеnsk\";\"other\"\n\"2026609\";\"Błagowieszczeńsk\";\"other\"\n\"2026609\";\"beullagobesyenseukeu\";\"other\"\n\"2026609\";\"blgwbsz'ynsq\";\"other\"\n\"2026609\";\"bu la ge wei shen si ke\";\"other\"\n\"2026609\";\"buragovu~eshichensuku\";\"other\"\n\"2026609\";\"hai lan pao\";\"other\"\n\"2026609\";\"Благовещенск\";\"other\"\n\"2026609\";\"Благовјешченск\";\"other\"\n\"2026609\";\"בלגובשצ'ינסק\";\"other\"\n\"2026609\";\"ブラゴヴェシチェンスク\";\"other\"\n\"2026609\";\"布拉戈维申斯克\";\"other\"\n\"2026609\";\"海兰泡\";\"other\"\n\"2026609\";\"블라고베셴스크\";\"other\"\n\"2026643\";\"Birobidzhan\";\"main\"\n\"2026643\";\"Birabidzhan\";\"other\"\n\"2026643\";\"Birobidjan\";\"other\"\n\"2026643\";\"Birobidschan\";\"other\"\n\"2026643\";\"Birobidshansk\";\"other\"\n\"2026643\";\"Birobidzan\";\"other\"\n\"2026643\";\"Birobidzjan\";\"other\"\n\"2026643\";\"Birobidzsan\";\"other\"\n\"2026643\";\"Birobidżan\";\"other\"\n\"2026643\";\"Birobidžan\";\"other\"\n\"2026643\";\"Birobigan\";\"other\"\n\"2026643\";\"Birobijan\";\"other\"\n\"2026643\";\"Birobiĝan\";\"other\"\n\"2026643\";\"Tikhon'kaya Stantsiya\";\"other\"\n\"2026643\";\"Tikhon’kaya Stantsiya\";\"other\"\n\"2026643\";\"Tikhou'kaya Stantsiya\";\"other\"\n\"2026643\";\"Tikhou’kaya Stantsiya\";\"other\"\n\"2026643\";\"bilobijan\";\"other\"\n\"2026643\";\"birobijan\";\"other\"\n\"2026643\";\"byrwbyg'n\";\"other\"\n\"2026643\";\"Биробиджан\";\"other\"\n\"2026643\";\"ביראבידזשאן\";\"other\"\n\"2026643\";\"בירוביג'ן\";\"other\"\n\"2026643\";\"ビロビジャン\";\"other\"\n\"2026643\";\"비로비잔\";\"other\"\n\"2026657\";\"Birakan\";\"main\"\n\"2026657\";\"BIRAKAN\";\"other\"\n\"2026657\";\"Birokan\";\"other\"\n\"2026657\";\"БИРАКАН\";\"other\"\n\"2026657\";\"Биракан\";\"other\"\n\"2026659\";\"Bira\";\"main\"\n\"2026659\";\"BIRA\";\"other\"\n\"2026659\";\"Birskij\";\"other\"\n\"2026659\";\"Birskiye\";\"other\"\n\"2026659\";\"БИРА\";\"other\"\n\"2026659\";\"Бира\";\"other\"\n\"2026659\";\"Бирский\";\"other\"\n\"2026696\";\"Bikin\";\"main\"\n\"2026696\";\"BIKIN\";\"other\"\n\"2026696\";\"БИКИН\";\"other\"\n\"2026696\";\"Бикин\";\"other\"\n\"2026708\";\"Bichura\";\"main\"\n\"2026708\";\"Bichurskoye\";\"other\"\n\"2026708\";\"Bitsjura\";\"other\"\n\"2026708\";\"Бичура\";\"other\"\n\"2026777\";\"Berkakit\";\"main\"\n\"2026777\";\"BERKAKIT\";\"other\"\n\"2026777\";\"Berhakit\";\"other\"\n\"2026777\";\"Berkokit\";\"other\"\n\"2026777\";\"БЕРКАКИТ\";\"other\"\n\"2026777\";\"Беркакит\";\"other\"\n\"2026786\";\"Berezovyy\";\"main\"\n\"2026786\";\"Berezovyj\";\"other\"\n\"2026786\";\"Veli\";\"other\"\n\"2026786\";\"Березовый\";\"other\"\n\"2026861\";\"Berdigestyakh\";\"main\"\n\"2026861\";\"Berdigestjakh\";\"other\"\n\"2026861\";\"Berdigistyakh\";\"other\"\n\"2026861\";\"Berdigyastyakh\";\"other\"\n\"2026861\";\"Бердигестях\";\"other\"\n\"2026895\";\"Belogorsk\";\"main\"\n\"2026895\";\"Aleksandrovka\";\"other\"\n\"2026895\";\"Aleksandrovsk\";\"other\"\n\"2026895\";\"BELOGORSK\";\"other\"\n\"2026895\";\"Beletorsk\";\"other\"\n\"2026895\";\"Kuibyshevka\";\"other\"\n\"2026895\";\"Kuybyshevka\";\"other\"\n\"2026895\";\"Kuybyshevka-Vostochnaya\";\"other\"\n\"2026895\";\"Svobodnyy-18\";\"other\"\n\"2026895\";\"БЕЛОГОРСК\";\"other\"\n\"2026895\";\"Белогорск\";\"other\"\n\"2026979\";\"Baykal’sk\";\"main\"\n\"2026979\";\"Baykal'sk\";\"ascii\"\n\"2026979\";\"Bajkal'sk\";\"other\"\n\"2026979\";\"Bajkalsk\";\"other\"\n\"2026979\";\"Байкальск\";\"other\"\n\"2027002\";\"Bayangol\";\"main\"\n\"2027002\";\"BAJANGOL\";\"other\"\n\"2027002\";\"Bajangol\";\"other\"\n\"2027002\";\"БАЯНГОЛ\";\"other\"\n\"2027002\";\"Баянгол\";\"other\"\n\"2027004\";\"Bayanday\";\"main\"\n\"2027004\";\"Baindai\";\"other\"\n\"2027004\";\"Bainday\";\"other\"\n\"2027004\";\"Bajandaj\";\"other\"\n\"2027004\";\"Баяндай\";\"other\"\n\"2027042\";\"Batagay-Alyta\";\"main\"\n\"2027042\";\"Alytay-Bataga\";\"other\"\n\"2027042\";\"Batagai-Alyta\";\"other\"\n\"2027042\";\"Batagaj-Alyta\";\"other\"\n\"2027042\";\"Батагай-Алыта\";\"other\"\n\"2027044\";\"Batagay\";\"main\"\n\"2027044\";\"Батагай\";\"other\"\n\"2027109\";\"Barguzin\";\"main\"\n\"2027109\";\"BARGUZIN\";\"other\"\n\"2027109\";\"БАРГУЗИН\";\"other\"\n\"2027109\";\"Баргузин\";\"other\"\n\"2027142\";\"Barabash\";\"main\"\n\"2027142\";\"Barabasj\";\"other\"\n\"2027142\";\"Барабаш\";\"other\"\n\"2027173\";\"Balyaga\";\"main\"\n\"2027173\";\"BALJAGA\";\"other\"\n\"2027173\";\"Baljaga\";\"other\"\n\"2027173\";\"БАЛЯГА\";\"other\"\n\"2027173\";\"Баляга\";\"other\"\n\"2027184\";\"Baley\";\"main\"\n\"2027184\";\"BALEJ\";\"other\"\n\"2027184\";\"Balei\";\"other\"\n\"2027184\";\"Balej\";\"other\"\n\"2027184\";\"Batey\";\"other\"\n\"2027184\";\"Novo-Troitskiy Promysel\";\"other\"\n\"2027184\";\"Nowo Troizkoje\";\"other\"\n\"2027184\";\"БАЛЕЙ\";\"other\"\n\"2027184\";\"Балей\";\"other\"\n\"2027196\";\"Balakhninskiy\";\"main\"\n\"2027196\";\"BALAKHNINSKIJ\";\"other\"\n\"2027196\";\"Balakhninskij\";\"other\"\n\"2027196\";\"БАЛАХНИНСКИЙ\";\"other\"\n\"2027196\";\"Балахнинский\";\"other\"\n\"2027198\";\"Balagansk\";\"main\"\n\"2027198\";\"BALAGANSK\";\"other\"\n\"2027198\";\"Baiagansk\";\"other\"\n\"2027198\";\"Balaganski\";\"other\"\n\"2027198\";\"БАЛАГАНСК\";\"other\"\n\"2027198\";\"Балаганск\";\"other\"\n\"2027244\";\"Bagdarin\";\"main\"\n\"2027244\";\"Bogdarin\";\"other\"\n\"2027244\";\"Багдарин\";\"other\"\n\"2027275\";\"Bada\";\"main\"\n\"2027275\";\"Бада\";\"other\"\n\"2027276\";\"Babushkin\";\"main\"\n\"2027276\";\"BABUSHKIN\";\"other\"\n\"2027276\";\"Mosovsk\";\"other\"\n\"2027276\";\"Mysovaya\";\"other\"\n\"2027276\";\"Mysovsk\";\"other\"\n\"2027276\";\"Mösovsk\";\"other\"\n\"2027276\";\"БАБУШКИН\";\"other\"\n\"2027276\";\"Бабушкин\";\"other\"\n\"2027277\";\"Babstovo\";\"main\"\n\"2027277\";\"Babetova\";\"other\"\n\"2027277\";\"Babetovskiy\";\"other\"\n\"2027277\";\"Babetovskoye\";\"other\"\n\"2027277\";\"Babstova\";\"other\"\n\"2027277\";\"Babstovskoye\";\"other\"\n\"2027277\";\"Babstvo\";\"other\"\n\"2027277\";\"Babstwo\";\"other\"\n\"2027277\";\"Babustowa\";\"other\"\n\"2027277\";\"Babustōwa\";\"other\"\n\"2027277\";\"Babusutowa\";\"other\"\n\"2027277\";\"Babusutōwa\";\"other\"\n\"2027277\";\"Бабстово\";\"other\"\n\"2027296\";\"Aykhal\";\"main\"\n\"2027296\";\"AJKHAL\";\"other\"\n\"2027296\";\"Aikhal\";\"other\"\n\"2027296\";\"Ajkhal\";\"other\"\n\"2027296\";\"АЙХАЛ\";\"other\"\n\"2027296\";\"Айхал\";\"other\"\n\"2027316\";\"Ayan\";\"main\"\n\"2027316\";\"Ajan\";\"other\"\n\"2027316\";\"Аян\";\"other\"\n\"2027373\";\"Atamanovka\";\"main\"\n\"2027373\";\"ATAMANOVKA\";\"other\"\n\"2027373\";\"Atamanskaja\";\"other\"\n\"2027373\";\"Atamanskaya\";\"other\"\n\"2027373\";\"АТАМАНОВКА\";\"other\"\n\"2027373\";\"Атамановка\";\"other\"\n\"2027373\";\"Атаманская\";\"other\"\n\"2027456\";\"Artëm\";\"main\"\n\"2027456\";\"Artem\";\"ascii\"\n\"2027456\";\"ARTEM\";\"other\"\n\"2027456\";\"Artjom\";\"other\"\n\"2027456\";\"АРТЕМ\";\"other\"\n\"2027456\";\"Артём\";\"other\"\n\"2027468\";\"Arsen’yev\";\"main\"\n\"2027468\";\"Arsen'yev\";\"ascii\"\n\"2027468\";\"ARSEN'EV\";\"other\"\n\"2027468\";\"Arsen'ev\";\"other\"\n\"2027468\";\"Semenovka\";\"other\"\n\"2027468\";\"АРСЕНЬЕВ\";\"other\"\n\"2027468\";\"Арсеньев\";\"other\"\n\"2027487\";\"Arkhara\";\"main\"\n\"2027487\";\"ARKHARA\";\"other\"\n\"2027487\";\"АРХАРА\";\"other\"\n\"2027487\";\"Архара\";\"other\"\n\"2027596\";\"Anuchino\";\"main\"\n\"2027596\";\"Akuchino\";\"other\"\n\"2027596\";\"Anutsjino\";\"other\"\n\"2027596\";\"Анучино\";\"other\"\n\"2027667\";\"Angarsk\";\"main\"\n\"2027667\";\"ANGARSK\";\"other\"\n\"2027667\";\"Angars'k\";\"other\"\n\"2027667\";\"Angarskas\";\"other\"\n\"2027667\";\"Angarskiy\";\"other\"\n\"2027667\";\"angaleuseukeu\";\"other\"\n\"2027667\";\"angarusuku\";\"other\"\n\"2027667\";\"АНГАРСК\";\"other\"\n\"2027667\";\"Ангарск\";\"other\"\n\"2027667\";\"Ангарськ\";\"other\"\n\"2027667\";\"アンガルスク\";\"other\"\n\"2027667\";\"안가르스크\";\"other\"\n\"2027740\";\"Amurzet\";\"main\"\n\"2027740\";\"Амурзет\";\"other\"\n\"2027749\";\"Amursk\";\"main\"\n\"2027749\";\"AMURSK\";\"other\"\n\"2027749\";\"Amurskas\";\"other\"\n\"2027749\";\"Amūrskas\";\"other\"\n\"2027749\";\"Padali\";\"other\"\n\"2027749\";\"amuleuseukeu\";\"other\"\n\"2027749\";\"АМУРСК\";\"other\"\n\"2027749\";\"Амурск\";\"other\"\n\"2027749\";\"아무르스크\";\"other\"\n\"2027786\";\"Amga\";\"main\"\n\"2027786\";\"Amia\";\"other\"\n\"2027786\";\"Амга\";\"other\"\n\"2027806\";\"Amazar\";\"main\"\n\"2027806\";\"AMAZAR\";\"other\"\n\"2027806\";\"АМАЗАР\";\"other\"\n\"2027806\";\"Амазар\";\"other\"\n\"2027859\";\"Almaznyy\";\"main\"\n\"2027859\";\"ALMAZNYJ\";\"other\"\n\"2027859\";\"Almaznyj\";\"other\"\n\"2027859\";\"АЛМАЗНЫЙ\";\"other\"\n\"2027859\";\"Алмазный\";\"other\"\n\"2027911\";\"Alekseyevskaya\";\"main\"\n\"2027911\";\"ALEKSEEVSK\";\"other\"\n\"2027911\";\"Alekseevka\";\"other\"\n\"2027911\";\"Alekseevskaja\";\"other\"\n\"2027911\";\"Alekseyevka\";\"other\"\n\"2027911\";\"Alekseyevsk\";\"other\"\n\"2027911\";\"АЛЕКСЕЕВСК\";\"other\"\n\"2027911\";\"Алексеевка\";\"other\"\n\"2027911\";\"Алексеевская\";\"other\"\n\"2027933\";\"Aleksandrovskiy Zavod\";\"main\"\n\"2027933\";\"Aleksandrovski Zavod\";\"other\"\n\"2027933\";\"Aleksandrovskij Zavod\";\"other\"\n\"2027933\";\"Alexsandrovskiy Zavod\";\"other\"\n\"2027933\";\"Александровский Завод\";\"other\"\n\"2027968\";\"Aldan\";\"main\"\n\"2027968\";\"ALDAN\";\"other\"\n\"2027968\";\"Aldanas\";\"other\"\n\"2027968\";\"Ałdan\";\"other\"\n\"2027968\";\"Nezametnyy\";\"other\"\n\"2027968\";\"aldan\";\"other\"\n\"2027968\";\"АЛДАН\";\"other\"\n\"2027968\";\"Алдан\";\"other\"\n\"2027968\";\"알단\";\"other\"\n\"2028028\";\"Aksha\";\"main\"\n\"2028028\";\"Aksja\";\"other\"\n\"2028028\";\"Акша\";\"other\"\n\"2028078\";\"Aginskoye\";\"main\"\n\"2028078\";\"Aginskoe\";\"other\"\n\"2028078\";\"Aginskoje\";\"other\"\n\"2028078\";\"Agińskoje\";\"other\"\n\"2028078\";\"aginseukoye\";\"other\"\n\"2028078\";\"Агинское\";\"other\"\n\"2028078\";\"Агинскоје\";\"other\"\n\"2028078\";\"아긴스코예\";\"other\"\n\"2028164\";\"Deputatskiy\";\"main\"\n\"2028164\";\"DEPUTATSKIJ\";\"other\"\n\"2028164\";\"Deputatskij\";\"other\"\n\"2028164\";\"ДЕПУТАТСКИЙ\";\"other\"\n\"2028164\";\"Депутатский\";\"other\"\n\"2047258\";\"Novyy Urgal\";\"main\"\n\"2047258\";\"Novyj Urgal\";\"other\"\n\"2047258\";\"Новый Ургал\";\"other\"\n\"2051471\";\"Dal'negorsk\";\"main\"\n\"2051471\";\"Dalnegorsk\";\"other\"\n\"2051471\";\"Дальнегорск\";\"other\"\n\"2051523\";\"Bratsk\";\"main\"\n\"2051523\";\"BRATSK\";\"other\"\n\"2051523\";\"БРАТСК\";\"other\"\n\"2051523\";\"Братск\";\"other\"\n\"2051523\";\"Брацк\";\"other\"\n\"2055166\";\"Sayansk\";\"main\"\n\"2055166\";\"Sajansk\";\"other\"\n\"2055166\";\"Саянск\";\"other\"\n\"2055822\";\"Novaya Chara\";\"main\"\n\"2055822\";\"Novaja Tsjara\";\"other\"\n\"2055822\";\"Новая Чара\";\"other\"\n\"2055868\";\"Yantal’\";\"main\"\n\"2055868\";\"Yantal'\";\"ascii\"\n\"2055868\";\"Jantal\";\"other\"\n\"2055868\";\"Jantal'\";\"other\"\n\"2055868\";\"Янталь\";\"other\"\n\"2056752\";\"Khabarovsk Vtoroy\";\"main\"\n\"2056752\";\"Khabarovsk Vtoroj\";\"other\"\n\"2056752\";\"Хабаровск Второй\";\"other\"\n\"2115627\";\"Ust'-Kamchatsk Staryy\";\"main\"\n\"2118647\";\"Vilyuchinsk\";\"main\"\n\"2118647\";\"Petropavlovsk-Kamchatskiy-50\";\"other\"\n\"2118647\";\"Viljuchinsk\";\"other\"\n\"2118647\";\"Viljutsjinsk\";\"other\"\n\"2118647\";\"Вилючинск\";\"other\"\n\"2119283\";\"Zyryanka\";\"main\"\n\"2119283\";\"Novaya Zyryanka\";\"other\"\n\"2119283\";\"Zyrjanka\";\"other\"\n\"2119283\";\"Зырянка\";\"other\"\n\"2119441\";\"Yuzhno-Sakhalinsk\";\"main\"\n\"2119441\";\"Juschno-Sachalinsk\";\"other\"\n\"2119441\";\"Juzhno-Sakhalinsk\";\"other\"\n\"2119441\";\"Juzjno-Sakhalinsk\";\"other\"\n\"2119441\";\"Juzno-Sachalinsk\";\"other\"\n\"2119441\";\"Juzno-Sahalinsk\";\"other\"\n\"2119441\";\"Juzno-Sahhalinsk\";\"other\"\n\"2119441\";\"Jużno-Sachalińsk\";\"other\"\n\"2119441\";\"Južno-Sachalinsk\";\"other\"\n\"2119441\";\"Južno-Sahalinsk\";\"other\"\n\"2119441\";\"Južno-Sahhalinsk\";\"other\"\n\"2119441\";\"Toekhara\";\"other\"\n\"2119441\";\"Toyohara\";\"other\"\n\"2119441\";\"Toyokhara\";\"other\"\n\"2119441\";\"Toëkhara\";\"other\"\n\"2119441\";\"Urajimirofuka\";\"other\"\n\"2119441\";\"nan sa ha lin si ke\";\"other\"\n\"2119441\";\"yujeunosahallinseukeu\";\"other\"\n\"2119441\";\"yujinosaharinsuku\";\"other\"\n\"2119441\";\"Јужно-Сахалинск\";\"other\"\n\"2119441\";\"Южно-Сахалинск\";\"other\"\n\"2119441\";\"Южно-Сахалінськ\";\"other\"\n\"2119441\";\"ユジノサハリンスク\";\"other\"\n\"2119441\";\"南萨哈林斯克\";\"other\"\n\"2119441\";\"유즈노사할린스크\";\"other\"\n\"2119447\";\"Yuzhno-Kuril'sk\";\"main\"\n\"2119447\";\"Furukamappu\";\"other\"\n\"2119447\";\"Furukamapu\";\"other\"\n\"2119447\";\"Hurukamappu\";\"other\"\n\"2119447\";\"Hurukamapu\";\"other\"\n\"2119447\";\"Juzhno-Kuril'sk\";\"other\"\n\"2119447\";\"Juzjno-Kurilsk\";\"other\"\n\"2119447\";\"Kokamappu\";\"other\"\n\"2119447\";\"Yuzhno-Kuril'skoye\";\"other\"\n\"2119447\";\"Yuzhno-Kurl'sk\";\"other\"\n\"2119447\";\"Южно-Курильск\";\"other\"\n\"2119538\";\"Yelizovo\";\"main\"\n\"2119538\";\"ELIZOVO\";\"other\"\n\"2119538\";\"Elizovo\";\"other\"\n\"2119538\";\"Jelizovo\";\"other\"\n\"2119538\";\"ЕЛИЗОВО\";\"other\"\n\"2119626\";\"Yagodnoye\";\"main\"\n\"2119626\";\"Jagodnoe\";\"other\"\n\"2119626\";\"Jagodnoje\";\"other\"\n\"2119626\";\"Yagodnoy\";\"other\"\n\"2119626\";\"Yagodnyy\";\"other\"\n\"2119626\";\"Yagodnöy\";\"other\"\n\"2119626\";\"Ягодное\";\"other\"\n\"2119640\";\"Yablochnyy\";\"main\"\n\"2119640\";\"JABLOCHNYJ\";\"other\"\n\"2119640\";\"Jablotsjnyj\";\"other\"\n\"2119640\";\"Randomari\";\"other\"\n\"2119640\";\"Rantomari\";\"other\"\n\"2119640\";\"ЯБЛОЧНЫЙ\";\"other\"\n\"2119701\";\"Vostok\";\"main\"\n\"2119932\";\"Vanino\";\"main\"\n\"2119932\";\"VANINO\";\"other\"\n\"2119932\";\"Vakino\";\"other\"\n\"2119932\";\"ВАНИНО\";\"other\"\n\"2119964\";\"Vakhrushev\";\"main\"\n\"2119964\";\"Tomarigishi\";\"other\"\n\"2119964\";\"Tomarikishi\";\"other\"\n\"2119964\";\"Tomarikisi\";\"other\"\n\"2119964\";\"VAKHRUSHEV\";\"other\"\n\"2119964\";\"Vakhrusjev\";\"other\"\n\"2119964\";\"ВАХРУШЕВ\";\"other\"\n\"2120047\";\"Ust’-Omchug\";\"main\"\n\"2120047\";\"Ust'-Omchug\";\"ascii\"\n\"2120047\";\"Ust'-Omchuk\";\"other\"\n\"2120047\";\"Ust-Omtsjug\";\"other\"\n\"2120047\";\"Ust’-Omchuk\";\"other\"\n\"2120047\";\"Усть-Омчуг\";\"other\"\n\"2120048\";\"Ust’-Nera\";\"main\"\n\"2120048\";\"Ust'-Nera\";\"ascii\"\n\"2120048\";\"Nera\";\"other\"\n\"2120048\";\"Ust-Nera\";\"other\"\n\"2120048\";\"Yuryakh-Terde\";\"other\"\n\"2120048\";\"Усть-Нера\";\"other\"\n\"2120129\";\"Uptar\";\"main\"\n\"2120129\";\"UPTAR\";\"other\"\n\"2120129\";\"УПТАР\";\"other\"\n\"2120257\";\"Uglezavodsk\";\"main\"\n\"2120257\";\"Higashi-Naibuchi\";\"other\"\n\"2120257\";\"Khigasi-Naybut\";\"other\"\n\"2120257\";\"UGLEZAVODSK\";\"other\"\n\"2120257\";\"УГЛЕЗАВОДСК\";\"other\"\n\"2120261\";\"Uglegorsk\";\"main\"\n\"2120261\";\"Esutoru\";\"other\"\n\"2120261\";\"Esutoru-Hamashigai\";\"other\"\n\"2120261\";\"Hama-shigai\";\"other\"\n\"2120261\";\"UGLEGORSK\";\"other\"\n\"2120261\";\"УГЛЕГОРСК\";\"other\"\n\"2120334\";\"Tymovskoye\";\"main\"\n\"2120334\";\"Derbinsk\";\"other\"\n\"2120334\";\"Derbinskoye\";\"other\"\n\"2120334\";\"TYMOVSKOE\";\"other\"\n\"2120334\";\"Tymovskoje\";\"other\"\n\"2120334\";\"ТЫМОВСКОЕ\";\"other\"\n\"2120400\";\"Tungor\";\"main\"\n\"2120400\";\"TUNGOR\";\"other\"\n\"2120400\";\"ТУНГОР\";\"other\"\n\"2120452\";\"Troitskoye\";\"main\"\n\"2120452\";\"Namikawa\";\"other\"\n\"2120452\";\"Toroetsukoe\";\"other\"\n\"2120452\";\"Troickoe\";\"other\"\n\"2120452\";\"Troitskoje\";\"other\"\n\"2120452\";\"Troytskoye\";\"other\"\n\"2120452\";\"Троицкое\";\"other\"\n\"2120530\";\"Tomari\";\"main\"\n\"2120530\";\"Tomarioro\";\"other\"\n\"2120530\";\"Tomarioru\";\"other\"\n\"2120591\";\"Tilichiki\";\"main\"\n\"2120591\";\"Telichiki\";\"other\"\n\"2120591\";\"Tilichiky\";\"other\"\n\"2120591\";\"Tilighiki\";\"other\"\n\"2120591\";\"Tilitsjiki\";\"other\"\n\"2120591\";\"Тиличики\";\"other\"\n\"2120612\";\"Tigil'\";\"main\"\n\"2120612\";\"Tigil\";\"other\"\n\"2120612\";\"Тигиль\";\"other\"\n\"2120769\";\"Talaya\";\"main\"\n\"2120864\";\"Susuman\";\"main\"\n\"2120864\";\"SUSUMAN\";\"other\"\n\"2120864\";\"Susman\";\"other\"\n\"2120864\";\"СУСУМАН\";\"other\"\n\"2121025\";\"Srednekolymsk\";\"main\"\n\"2121025\";\"SREDNEKOLYMSK\";\"other\"\n\"2121025\";\"СРЕДНЕКОЛЫМСК\";\"other\"\n\"2121025\";\"Среднеколымск\";\"other\"\n\"2121052\";\"Sovetskaya Gavan’\";\"main\"\n\"2121052\";\"Sovetskaya Gavan'\";\"ascii\"\n\"2121052\";\"Port Soviet\";\"other\"\n\"2121052\";\"SOVETSKAJA GAVAN'\";\"other\"\n\"2121052\";\"Sovetskaja Gavan\";\"other\"\n\"2121052\";\"Soviet Harbor\";\"other\"\n\"2121052\";\"Sovietskaya Harbour\";\"other\"\n\"2121052\";\"Znamenskoye\";\"other\"\n\"2121052\";\"СОВЕТСКАЯ ГАВАНЬ\";\"other\"\n\"2121052\";\"Советская Гавань\";\"other\"\n\"2121102\";\"Sokol\";\"main\"\n\"2121102\";\"SOKOL\";\"other\"\n\"2121102\";\"СОКОЛ\";\"other\"\n\"2121102\";\"Сокол\";\"other\"\n\"2121103\";\"Sokol\";\"main\"\n\"2121103\";\"Barishiyatakoe\";\"other\"\n\"2121103\";\"Otani\";\"other\"\n\"2121103\";\"SOKOL\";\"other\"\n\"2121103\";\"Ōtani\";\"other\"\n\"2121103\";\"СОКОЛ\";\"other\"\n\"2121103\";\"Сокол\";\"other\"\n\"2121126\";\"Smirnykh\";\"main\"\n\"2121126\";\"Keton\";\"other\"\n\"2121126\";\"Ketongai\";\"other\"\n\"2121126\";\"Kiton\";\"other\"\n\"2121126\";\"SMIRNYKH\";\"other\"\n\"2121126\";\"Smirnov\";\"other\"\n\"2121126\";\"СМИРНЫХ\";\"other\"\n\"2121126\";\"Смирных\";\"other\"\n\"2121197\";\"Sinegor'ye\";\"main\"\n\"2121197\";\"Sinegor'e\";\"other\"\n\"2121197\";\"Синегорье\";\"other\"\n\"2121198\";\"Sinegorsk\";\"main\"\n\"2121198\";\"Kavakami\";\"other\"\n\"2121198\";\"Kavakami-Tandzan\";\"other\"\n\"2121198\";\"Kawakami\";\"other\"\n\"2121198\";\"Kawakamitanzan\";\"other\"\n\"2121198\";\"Pusutaaki\";\"other\"\n\"2121198\";\"SINEGORSK\";\"other\"\n\"2121198\";\"СИНЕГОРСК\";\"other\"\n\"2121198\";\"Синегорск\";\"other\"\n\"2121324\";\"Shebunino\";\"main\"\n\"2121324\";\"Koni\";\"other\"\n\"2121324\";\"Kōni\";\"other\"\n\"2121324\";\"Minami-Nayosi\";\"other\"\n\"2121324\";\"Minami-nayoshi\";\"other\"\n\"2121324\";\"Sjebunino\";\"other\"\n\"2121324\";\"Шебунино\";\"other\"\n\"2121367\";\"Shakhtersk\";\"main\"\n\"2121367\";\"Shatiersk\";\"other\"\n\"2121367\";\"Shatinsk\";\"other\"\n\"2121367\";\"Sjakhtersk\";\"other\"\n\"2121367\";\"Toro\";\"other\"\n\"2121367\";\"Tōro\";\"other\"\n\"2121367\";\"Шахтерск\";\"other\"\n\"2121373\";\"Seymchan\";\"main\"\n\"2121373\";\"SEJMCHAN\";\"other\"\n\"2121373\";\"Seimchan\";\"other\"\n\"2121373\";\"Sejmtsjan\";\"other\"\n\"2121373\";\"Semchan\";\"other\"\n\"2121373\";\"СЕЙМЧАН\";\"other\"\n\"2121373\";\"Сеймчан\";\"other\"\n\"2121385\";\"Severo-Kuril’sk\";\"main\"\n\"2121385\";\"Severo-Kuril'sk\";\"ascii\"\n\"2121385\";\"Kashiwabara\";\"other\"\n\"2121385\";\"Kasivobara\";\"other\"\n\"2121385\";\"Severo-Kurilsk\";\"other\"\n\"2121385\";\"Северо-Курильск\";\"other\"\n\"2121874\";\"Pravda\";\"main\"\n\"2121874\";\"Hirochi\";\"other\"\n\"2121874\";\"Hiroti\";\"other\"\n\"2121874\";\"Khirochi\";\"other\"\n\"2121874\";\"Khiroti\";\"other\"\n\"2121874\";\"PRAVDA\";\"other\"\n\"2121874\";\"Pirochi\";\"other\"\n\"2121874\";\"Pravka\";\"other\"\n\"2121874\";\"ПРАВДА\";\"other\"\n\"2121874\";\"Правда\";\"other\"\n\"2121909\";\"Poronaysk\";\"main\"\n\"2121909\";\"PORONAJSK\";\"other\"\n\"2121909\";\"Poronajsk\";\"other\"\n\"2121909\";\"Shikika\";\"other\"\n\"2121909\";\"Shikuka\";\"other\"\n\"2121909\";\"Shisuka\";\"other\"\n\"2121909\";\"Sikuka\";\"other\"\n\"2121909\";\"ПОРОНАЙСК\";\"other\"\n\"2121909\";\"Поронайск\";\"other\"\n\"2122090\";\"Pevek\";\"main\"\n\"2122090\";\"PEVEK\";\"other\"\n\"2122090\";\"Peveke\";\"other\"\n\"2122090\";\"ПЕВЕК\";\"other\"\n\"2122090\";\"Певек\";\"other\"\n\"2122104\";\"Petropavlovsk-Kamchatskiy\";\"main\"\n\"2122104\";\"Petropavlovsk\";\"other\"\n\"2122104\";\"Petropavlovsk Kamchatski\";\"other\"\n\"2122104\";\"Petropavlovsk Kamciatki\";\"other\"\n\"2122104\";\"Petropavlovsk Kamciatski\";\"other\"\n\"2122104\";\"Petropavlovsk Kamciaţki\";\"other\"\n\"2122104\";\"Petropavlovsk de Kamchatka\";\"other\"\n\"2122104\";\"Petropavlovsk-Kamcatskij\";\"other\"\n\"2122104\";\"Petropavlovsk-Kamcatskij.\";\"other\"\n\"2122104\";\"Petropavlovsk-Kamchatski\";\"other\"\n\"2122104\";\"Petropavlovsk-Kamchatskij\";\"other\"\n\"2122104\";\"Petropavlovsk-Kamchatsky\";\"other\"\n\"2122104\";\"Petropavlovsk-Kamtchatski\";\"other\"\n\"2122104\";\"Petropavlovsk-Kamtsatski\";\"other\"\n\"2122104\";\"Petropavlovsk-Kamtsjatski\";\"other\"\n\"2122104\";\"Petropavlovsk-Kamtsjatskij\";\"other\"\n\"2122104\";\"Petropavlovsk-Kamtxatski\";\"other\"\n\"2122104\";\"Petropavlovsk-Kamtšatski\";\"other\"\n\"2122104\";\"Petropavlovsk-Kamĉatskij\";\"other\"\n\"2122104\";\"Petropavlovsk-Kamčatskij\";\"other\"\n\"2122104\";\"Petropavlovsk-Kamčatskij.\";\"other\"\n\"2122104\";\"Petropawlowsk-Kamtschatski\";\"other\"\n\"2122104\";\"Petropàvlovsk-Kamtxatski\";\"other\"\n\"2122104\";\"Pietropawlowsk Kamczacki\";\"other\"\n\"2122104\";\"Pietropawłowsk Kamczacki\";\"other\"\n\"2122104\";\"kan cha jia de bi de ba fu luo fu si ke\";\"other\"\n\"2122104\";\"peteulopabeullobseukeukamchacheuki\";\"other\"\n\"2122104\";\"ptrwpblwbsq-qmz'tsqy\";\"other\"\n\"2122104\";\"Петропавловск Камчатски\";\"other\"\n\"2122104\";\"Петропавловск-Камчатский\";\"other\"\n\"2122104\";\"פטרופבלובסק-קמצ'טסקי\";\"other\"\n\"2122104\";\"ペトロパブロフスク・カムチャツキー\";\"other\"\n\"2122104\";\"堪察加的彼得巴甫洛夫斯克\";\"other\"\n\"2122104\";\"페트로파블롭스크캄차츠키\";\"other\"\n\"2122229\";\"Paratunka\";\"main\"\n\"2122229\";\"Паратунка\";\"other\"\n\"2122256\";\"Palatka\";\"main\"\n\"2122256\";\"PALATKA\";\"other\"\n\"2122256\";\"ПАЛАТКА\";\"other\"\n\"2122256\";\"Палатка\";\"other\"\n\"2122262\";\"Palana\";\"main\"\n\"2122262\";\"Палана\";\"other\"\n\"2122293\";\"Ozernovskiy\";\"main\"\n\"2122293\";\"OZERNOVSKIJ\";\"other\"\n\"2122293\";\"Ozernaya\";\"other\"\n\"2122293\";\"Ozernovskij\";\"other\"\n\"2122293\";\"Ozernoye\";\"other\"\n\"2122293\";\"ОЗЕРНОВСКИЙ\";\"other\"\n\"2122334\";\"Otrada\";\"main\"\n\"2122334\";\"Chikappunai\";\"other\"\n\"2122334\";\"Otradnoye\";\"other\"\n\"2122334\";\"Tikappunai\";\"other\"\n\"2122334\";\"Tikappunay\";\"other\"\n\"2122334\";\"Отрада\";\"other\"\n\"2122389\";\"Ossora\";\"main\"\n\"2122389\";\"OSSORA\";\"other\"\n\"2122389\";\"ОССОРА\";\"other\"\n\"2122414\";\"Orotukan\";\"main\"\n\"2122414\";\"OROTUKAN\";\"other\"\n\"2122414\";\"Urutukan\";\"other\"\n\"2122414\";\"ОРОТУКАН\";\"other\"\n\"2122414\";\"Оротукан\";\"other\"\n\"2122493\";\"Omsukchan\";\"main\"\n\"2122493\";\"OMSUKCHAN\";\"other\"\n\"2122493\";\"Omsuktsjan\";\"other\"\n\"2122493\";\"ОМСУКЧАН\";\"other\"\n\"2122493\";\"Омсукчан\";\"other\"\n\"2122574\";\"Ola\";\"main\"\n\"2122574\";\"OLA\";\"other\"\n\"2122574\";\"ОЛА\";\"other\"\n\"2122574\";\"Ола\";\"other\"\n\"2122605\";\"Okhotsk\";\"main\"\n\"2122605\";\"OKHOTSK\";\"other\"\n\"2122605\";\"Okhotak\";\"other\"\n\"2122605\";\"ОХОТСК\";\"other\"\n\"2122605\";\"Охотск\";\"other\"\n\"2122605\";\"Охоцк\";\"other\"\n\"2122614\";\"Okha\";\"main\"\n\"2122614\";\"OKHA\";\"other\"\n\"2122614\";\"Okhe\";\"other\"\n\"2122614\";\"ОХА\";\"other\"\n\"2122614\";\"Оха\";\"other\"\n\"2122783\";\"Nogliki\";\"main\"\n\"2122783\";\"NOGLIKI\";\"other\"\n\"2122783\";\"Noglik\";\"other\"\n\"2122783\";\"Novliki\";\"other\"\n\"2122783\";\"НОГЛИКИ\";\"other\"\n\"2122783\";\"Ноглики\";\"other\"\n\"2122850\";\"Nikolayevsk-na-Amure\";\"main\"\n\"2122850\";\"NIKOLAEVSK NA AMURE\";\"other\"\n\"2122850\";\"Nikolaevsk\";\"other\"\n\"2122850\";\"Nikolaevsk-na-Amur\";\"other\"\n\"2122850\";\"Nikolaevsk-on-Amur\";\"other\"\n\"2122850\";\"Nikolaievsk\";\"other\"\n\"2122850\";\"Nikolajevsk aan de Amoer\";\"other\"\n\"2122850\";\"Nikolajevsk na Amuru\";\"other\"\n\"2122850\";\"Nikolajevsk-na-Amure\";\"other\"\n\"2122850\";\"Nikolajewsk nad Amurem\";\"other\"\n\"2122850\";\"Nikolayevsk\";\"other\"\n\"2122850\";\"Nikolayevsk-on-Amur\";\"other\"\n\"2122850\";\"Nikołajewsk nad Amurem\";\"other\"\n\"2122850\";\"ni gu la ye fu si ke\";\"other\"\n\"2122850\";\"nikollayebseukeunaamule\";\"other\"\n\"2122850\";\"НИКОЛАЕВСК НА АМУРЕ\";\"other\"\n\"2122850\";\"Николаевск-на-Амуре\";\"other\"\n\"2122850\";\"Николајевск на Амуру\";\"other\"\n\"2122850\";\"ニコラエフスク・ナ・アムーレ\";\"other\"\n\"2122850\";\"尼古拉耶夫斯克\";\"other\"\n\"2122850\";\"니콜라옙스크나아무레\";\"other\"\n\"2122894\";\"Nevel’sk\";\"main\"\n\"2122894\";\"Nevel'sk\";\"ascii\"\n\"2122894\";\"Honto\";\"other\"\n\"2122894\";\"Khonto\";\"other\"\n\"2122894\";\"Nevelsk\";\"other\"\n\"2122894\";\"Невельск\";\"other\"\n\"2123100\";\"Myaundzha\";\"main\"\n\"2123100\";\"Bilikan\";\"other\"\n\"2123100\";\"MJAUNDZHA\";\"other\"\n\"2123100\";\"Mjaundzja\";\"other\"\n\"2123100\";\"МЯУНДЖА\";\"other\"\n\"2123100\";\"Мяунджа\";\"other\"\n\"2123292\";\"Mgachi\";\"main\"\n\"2123292\";\"Poselok Mgachi\";\"other\"\n\"2123292\";\"Мгачи\";\"other\"\n\"2123371\";\"Mayskiy\";\"main\"\n\"2123371\";\"Desna\";\"other\"\n\"2123371\";\"Dyesna\";\"other\"\n\"2123371\";\"MAJSKIJ\";\"other\"\n\"2123371\";\"Majskij\";\"other\"\n\"2123371\";\"МАЙСКИЙ\";\"other\"\n\"2123371\";\"Майский\";\"other\"\n\"2123614\";\"Makarov\";\"main\"\n\"2123614\";\"Higashishirutoru\";\"other\"\n\"2123614\";\"Higasisirutoru\";\"other\"\n\"2123614\";\"MAKAROV\";\"other\"\n\"2123614\";\"Shiritori\";\"other\"\n\"2123614\";\"Shiritoru\";\"other\"\n\"2123614\";\"Shirutoru\";\"other\"\n\"2123614\";\"Siritoru\";\"other\"\n\"2123614\";\"Sirutoru\";\"other\"\n\"2123614\";\"МАКАРОВ\";\"other\"\n\"2123614\";\"Макаров\";\"other\"\n\"2123621\";\"Mago\";\"main\"\n\"2123621\";\"MAGO\";\"other\"\n\"2123621\";\"МАГО\";\"other\"\n\"2123621\";\"Маго\";\"other\"\n\"2123628\";\"Magadan\";\"main\"\n\"2123628\";\"Magadanas\";\"other\"\n\"2123628\";\"Magadane\";\"other\"\n\"2123628\";\"magadan\";\"other\"\n\"2123628\";\"mgdn\";\"other\"\n\"2123628\";\"Магадан\";\"other\"\n\"2123628\";\"מגדן\";\"other\"\n\"2123628\";\"マガダン\";\"other\"\n\"2123628\";\"마가단\";\"other\"\n\"2123688\";\"Lososina\";\"main\"\n\"2123688\";\"LOSOSINA\";\"other\"\n\"2123688\";\"ЛОСОСИНА\";\"other\"\n\"2123688\";\"Лососина\";\"other\"\n\"2123805\";\"Leonidovo\";\"main\"\n\"2123805\";\"Kami-shikika\";\"other\"\n\"2123805\";\"Kami-shikuka\";\"other\"\n\"2123805\";\"Kamisikuka\";\"other\"\n\"2123805\";\"LEONIDOVO\";\"other\"\n\"2123805\";\"Sikuka\";\"other\"\n\"2123805\";\"Sikukagawa\";\"other\"\n\"2123805\";\"ЛЕОНИДОВО\";\"other\"\n\"2123805\";\"Леонидово\";\"other\"\n\"2123836\";\"Lazarev\";\"main\"\n\"2123836\";\"Kungasnaya\";\"other\"\n\"2123836\";\"LAZAREV\";\"other\"\n\"2123836\";\"Lazarevka\";\"other\"\n\"2123836\";\"Mys Lazareva\";\"other\"\n\"2123836\";\"ЛАЗАРЕВ\";\"other\"\n\"2123836\";\"Лазарев\";\"other\"\n\"2123979\";\"Kuril'sk\";\"main\"\n\"2123979\";\"Kurilsk\";\"other\"\n\"2123979\";\"Sh-Iana\";\"other\"\n\"2123979\";\"Shana\";\"other\"\n\"2123979\";\"Syana\";\"other\"\n\"2123979\";\"Курильск\";\"other\"\n\"2124187\";\"Krasnogorsk\";\"main\"\n\"2124187\";\"Chinnai\";\"other\"\n\"2124187\";\"Chinnay\";\"other\"\n\"2124187\";\"KRASNOGORSK\";\"other\"\n\"2124187\";\"Tinnay\";\"other\"\n\"2124187\";\"Uzunai\";\"other\"\n\"2124187\";\"КРАСНОГОРСК\";\"other\"\n\"2124187\";\"Красногорск\";\"other\"\n\"2124286\";\"Korsakov\";\"main\"\n\"2124286\";\"KORSAKOV\";\"other\"\n\"2124286\";\"Korskov\";\"other\"\n\"2124286\";\"Korusakofu\";\"other\"\n\"2124286\";\"Odomari\";\"other\"\n\"2124286\";\"Otomari\";\"other\"\n\"2124286\";\"Poroantomari\";\"other\"\n\"2124286\";\"Ódomari\";\"other\"\n\"2124286\";\"Ōtomari\";\"other\"\n\"2124286\";\"КОРСАКОВ\";\"other\"\n\"2124286\";\"Корсаков\";\"other\"\n\"2124611\";\"Kholodnyy\";\"main\"\n\"2124611\";\"KHOLODNYJ\";\"other\"\n\"2124611\";\"Kholodnyj\";\"other\"\n\"2124611\";\"ХОЛОДНЫЙ\";\"other\"\n\"2124611\";\"Холодный\";\"other\"\n\"2124615\";\"Kholmsk\";\"main\"\n\"2124615\";\"KHOLMSK\";\"other\"\n\"2124615\";\"Maoka\";\"other\"\n\"2124615\";\"Mauka\";\"other\"\n\"2124615\";\"Moaka\";\"other\"\n\"2124615\";\"ХОЛМСК\";\"other\"\n\"2124615\";\"Холмск\";\"other\"\n\"2125472\";\"Gornozavodsk\";\"main\"\n\"2125472\";\"GORNOZAVODSK\";\"other\"\n\"2125472\";\"Naiboro\";\"other\"\n\"2125472\";\"Naihoro\";\"other\"\n\"2125472\";\"Naiporo\";\"other\"\n\"2125472\";\"Nayboro\";\"other\"\n\"2125472\";\"Naykhoro\";\"other\"\n\"2125472\";\"ГОРНОЗАВОДСК\";\"other\"\n\"2125472\";\"Горнозаводск\";\"other\"\n\"2125626\";\"Gastello\";\"main\"\n\"2125626\";\"GASTELLO\";\"other\"\n\"2125626\";\"Grebenskoye\";\"other\"\n\"2125626\";\"Naiero\";\"other\"\n\"2125626\";\"Nairo\";\"other\"\n\"2125626\";\"Naiyoro\";\"other\"\n\"2125626\";\"Nayoro\";\"other\"\n\"2125626\";\"Nayro\";\"other\"\n\"2125626\";\"ГАСТЕЛЛО\";\"other\"\n\"2125626\";\"Гастелло\";\"other\"\n\"2125693\";\"Evensk\";\"main\"\n\"2125693\";\"Bol'shaya Garmanda\";\"other\"\n\"2125693\";\"Bol’shaya Garmanda\";\"other\"\n\"2125693\";\"EHVENSK\";\"other\"\n\"2125693\";\"ЭВЕНСК\";\"other\"\n\"2125693\";\"Эвенск\";\"other\"\n\"2125711\";\"Esso\";\"main\"\n\"2125711\";\"Ehsso\";\"other\"\n\"2125711\";\"Onovgai\";\"other\"\n\"2125711\";\"Onovgay\";\"other\"\n\"2125711\";\"Ornovgay\";\"other\"\n\"2125711\";\"Yesso\";\"other\"\n\"2125711\";\"Эссо\";\"other\"\n\"2125906\";\"Dukat\";\"main\"\n\"2125906\";\"DUKAT\";\"other\"\n\"2125906\";\"ДУКАТ\";\"other\"\n\"2125906\";\"Дукат\";\"other\"\n\"2125945\";\"Dolinsk\";\"main\"\n\"2125945\";\"DOLINSK\";\"other\"\n\"2125945\";\"Garuginourasukoe\";\"other\"\n\"2125945\";\"Ochiai\";\"other\"\n\"2125945\";\"Oshiai\";\"other\"\n\"2125945\";\"Otiai\";\"other\"\n\"2125945\";\"Otiay\";\"other\"\n\"2125945\";\"ДОЛИНСК\";\"other\"\n\"2125945\";\"Долинск\";\"other\"\n\"2126018\";\"De-Kastri\";\"main\"\n\"2126018\";\"Chikhacheva\";\"other\"\n\"2126018\";\"Debastri\";\"other\"\n\"2126018\";\"Decastri\";\"other\"\n\"2126018\";\"Port De Kastri\";\"other\"\n\"2126018\";\"Port Kastri\";\"other\"\n\"2126018\";\"Де-Кастри\";\"other\"\n\"2126123\";\"Chokurdakh\";\"main\"\n\"2126123\";\"Baryllakh\";\"other\"\n\"2126123\";\"CHOKURDAKH\";\"other\"\n\"2126123\";\"Chakurdakh\";\"other\"\n\"2126123\";\"Chekyrdakh\";\"other\"\n\"2126123\";\"Tsjokurdakh\";\"other\"\n\"2126123\";\"ЧОКУРДАХ\";\"other\"\n\"2126123\";\"Чокурдах\";\"other\"\n\"2126199\";\"Cherskiy\";\"main\"\n\"2126199\";\"CHERSKIJ\";\"other\"\n\"2126199\";\"Kresty\";\"other\"\n\"2126199\";\"Nizhne-Kresty\";\"other\"\n\"2126199\";\"Nizhniye Kresty\";\"other\"\n\"2126199\";\"Stadukhina\";\"other\"\n\"2126199\";\"Tsjerskij\";\"other\"\n\"2126199\";\"ЧЕРСКИЙ\";\"other\"\n\"2126199\";\"Черский\";\"other\"\n\"2126250\";\"Chekhov\";\"main\"\n\"2126250\";\"CHEKHOV\";\"other\"\n\"2126250\";\"Noda\";\"other\"\n\"2126250\";\"Nodasamu\";\"other\"\n\"2126250\";\"Nodasan\";\"other\"\n\"2126250\";\"Nota\";\"other\"\n\"2126250\";\"Notasamu\";\"other\"\n\"2126250\";\"Notasan\";\"other\"\n\"2126250\";\"Tsjekhov\";\"other\"\n\"2126250\";\"ЧЕХОВ\";\"other\"\n\"2126250\";\"Чехов\";\"other\"\n\"2126359\";\"Bykov\";\"main\"\n\"2126359\";\"BYKOV\";\"other\"\n\"2126359\";\"Naibuchi\";\"other\"\n\"2126359\";\"Naybuti\";\"other\"\n\"2126359\";\"БЫКОВ\";\"other\"\n\"2126359\";\"Быков\";\"other\"\n\"2126493\";\"Boshnyakovo\";\"main\"\n\"2126493\";\"BOSHNJAKOVO\";\"other\"\n\"2126493\";\"Bol'shakovo\";\"other\"\n\"2126493\";\"Bol’shakovo\";\"other\"\n\"2126493\";\"Bosjnjakovo\";\"other\"\n\"2126493\";\"Nishi-sakutan\";\"other\"\n\"2126493\";\"Nishisakovtan\";\"other\"\n\"2126493\";\"Nisisakutan\";\"other\"\n\"2126493\";\"Posyolok\";\"other\"\n\"2126493\";\"Sakotan\";\"other\"\n\"2126493\";\"Shakotan\";\"other\"\n\"2126493\";\"Vos-Bushin'yakov\";\"other\"\n\"2126493\";\"Vos-Bushin’yakov\";\"other\"\n\"2126493\";\"БОШНЯКОВО\";\"other\"\n\"2126493\";\"Бошняково\";\"other\"\n\"2126638\";\"Bogorodskoye\";\"main\"\n\"2126638\";\"Bogorodsk\";\"other\"\n\"2126638\";\"Bogorodskaya\";\"other\"\n\"2126638\";\"Bogorodskoje\";\"other\"\n\"2126638\";\"Богородское\";\"other\"\n\"2126682\";\"Bilibino\";\"main\"\n\"2126682\";\"Билибино\";\"other\"\n\"2126710\";\"Beringovskiy\";\"main\"\n\"2126710\";\"BERINGOVSKIJ\";\"other\"\n\"2126710\";\"Beringovskij\";\"other\"\n\"2126710\";\"Bukhta Ugol' Naya\";\"other\"\n\"2126710\";\"Bukhta Ugol’ Naya\";\"other\"\n\"2126710\";\"Ugol'naya\";\"other\"\n\"2126710\";\"Ugol'nyy\";\"other\"\n\"2126710\";\"Ugolnoe\";\"other\"\n\"2126710\";\"Ugol’naya\";\"other\"\n\"2126710\";\"Ugol’nyy\";\"other\"\n\"2126710\";\"БЕРИНГОВСКИЙ\";\"other\"\n\"2126710\";\"Беринговский\";\"other\"\n\"2126785\";\"Belaya Gora\";\"main\"\n\"2126785\";\"Belaja Gora\";\"other\"\n\"2126785\";\"Белая Гора\";\"other\"\n\"2127060\";\"Arman’\";\"main\"\n\"2127060\";\"Arman'\";\"ascii\"\n\"2127060\";\"ARMAN'\";\"other\"\n\"2127060\";\"АРМАНЬ\";\"other\"\n\"2127060\";\"Армань\";\"other\"\n\"2127154\";\"Aniva\";\"main\"\n\"2127154\";\"ANIVA\";\"other\"\n\"2127154\";\"Rudaka\";\"other\"\n\"2127154\";\"Rutaka\";\"other\"\n\"2127154\";\"АНИВА\";\"other\"\n\"2127154\";\"Анива\";\"other\"\n\"2127202\";\"Anadyr’\";\"main\"\n\"2127202\";\"Anadyr'\";\"ascii\"\n\"2127202\";\"ANADYR'\";\"other\"\n\"2127202\";\"Anadir\";\"other\"\n\"2127202\";\"Anadirj\";\"other\"\n\"2127202\";\"Anado\";\"other\"\n\"2127202\";\"Anador\";\"other\"\n\"2127202\";\"Anadyr\";\"other\"\n\"2127202\";\"Anadyrsk\";\"other\"\n\"2127202\";\"Anadõr\";\"other\"\n\"2127202\";\"Novo-Mariinsk\";\"other\"\n\"2127202\";\"Novo-Mariinskiy\";\"other\"\n\"2127202\";\"Post Novo-Mariinskiy\";\"other\"\n\"2127202\";\"anadili\";\"other\"\n\"2127202\";\"АНАДЫРЬ\";\"other\"\n\"2127202\";\"Анадырь\";\"other\"\n\"2127202\";\"אנדיר\";\"other\"\n\"2127202\";\"아나디리\";\"other\"\n\"2127282\";\"Aleksandrovsk-Sakhalinskiy\";\"main\"\n\"2127282\";\"ALEKSANDROVSK-SAKHALINSKIJ\";\"other\"\n\"2127282\";\"Aleksandrovsk\";\"other\"\n\"2127282\";\"Aleksandrovsk-Sakhalinskij\";\"other\"\n\"2127282\";\"Aleksandrovski\";\"other\"\n\"2127282\";\"Alexandrovsk\";\"other\"\n\"2127282\";\"АЛЕКСАНДРОВСК-САХАЛИНСКИЙ\";\"other\"\n\"2127282\";\"Александровск-Сахалинский\";\"other\"\n\"2609894\";\"Yantarnyy\";\"main\"\n\"2609894\";\"JANTARNYJ\";\"other\"\n\"2609894\";\"Jantarnyj\";\"other\"\n\"2609894\";\"Pal'mnikken\";\"other\"\n\"2609894\";\"Palmnicken\";\"other\"\n\"2609894\";\"Palmniken\";\"other\"\n\"2609894\";\"Pal’mnikken\";\"other\"\n\"2609894\";\"ЯНТАРНЫЙ\";\"other\"\n\"2609901\";\"Mamonovo\";\"main\"\n\"2609901\";\"Heiligenbeil\";\"other\"\n\"2609901\";\"Khayligenbayl'\";\"other\"\n\"2609901\";\"Khayligenbayl’\";\"other\"\n\"2609901\";\"Kheyligenbeyl\";\"other\"\n\"2609901\";\"MAMONOVO\";\"other\"\n\"2609901\";\"МАМОНОВО\";\"other\"\n\"2609901\";\"Мамоново\";\"other\"\n\"2609904\";\"Donskoye\";\"main\"\n\"2609904\";\"Donskoje\";\"other\"\n\"2609904\";\"Gross Dirschkeim\";\"other\"\n\"2609904\";\"Gross Dirshkaym\";\"other\"\n\"2609904\";\"Донское\";\"other\"\n\"2609906\";\"Baltiysk\";\"main\"\n\"2609906\";\"Baltiisk\";\"other\"\n\"2609906\";\"Baltijsk\";\"other\"\n\"2609906\";\"Baltijskas\";\"other\"\n\"2609906\";\"Baltisk\";\"other\"\n\"2609906\";\"Bałtijsk\";\"other\"\n\"2609906\";\"Pilawa\";\"other\"\n\"2609906\";\"Pillau\";\"other\"\n\"2609906\";\"baltiseukeu\";\"other\"\n\"2609906\";\"Балтийск\";\"other\"\n\"2609906\";\"발티스크\";\"other\"\n\"4031574\";\"Provideniya\";\"main\"\n\"4031574\";\"Port Provideniya\";\"other\"\n\"4031574\";\"Providenia\";\"other\"\n\"4031574\";\"Провидения\";\"other\"\n\"4031625\";\"Lorino\";\"main\"\n\"4031625\";\"Loren\";\"other\"\n\"4031625\";\"Лорино\";\"other\"\n\"4031637\";\"Lavrentiya\";\"main\"\n\"4031637\";\"Chukotskaya Kul'thaza\";\"other\"\n\"4031637\";\"Chukotskaya Kul’thaza\";\"other\"\n\"4031637\";\"Kul'tbaza\";\"other\"\n\"4031637\";\"Kul’tbaza\";\"other\"\n\"4031637\";\"Lavrentia\";\"other\"\n\"4031637\";\"Лаврентия\";\"other\"\n\"4031742\";\"Egvekinot\";\"main\"\n\"4031742\";\"Эгвекинот\";\"other\"\n\"6269121\";\"Grazhdanka\";\"main\"\n\"6269121\";\"Grazjdanka\";\"other\"\n\"6269121\";\"Гражданка\";\"other\"\n\"6283098\";\"Oktyabr’skiy\";\"main\"\n\"6283098\";\"Oktyabr'skiy\";\"ascii\"\n\"6283098\";\"Oktjabrskij\";\"other\"\n\"6283098\";\"Октябрьский\";\"other\"\n\"6313621\";\"Magas\";\"main\"\n\"6313621\";\"Magasas\";\"other\"\n\"6313621\";\"Magass\";\"other\"\n\"6313621\";\"magas\";\"other\"\n\"6313621\";\"magaseu\";\"other\"\n\"6313621\";\"megasu\";\"other\"\n\"6313621\";\"Магас\";\"other\"\n\"6313621\";\"ماگاس\";\"other\"\n\"6313621\";\"メガス\";\"other\"\n\"6313621\";\"마가스\";\"other\"\n\"6417459\";\"Krasnoznamensk\";\"main\"\n\"6417459\";\"Краснознаменск\";\"other\"\n\"6417535\";\"Mosrentgen\";\"main\"\n\"6417535\";\"Poselok Zavoda Mosrentgen\";\"other\"\n\"6417535\";\"Posëlok Zavoda Mosrentgen\";\"other\"\n\"6417535\";\"Мосрентген\";\"other\"\n\"6610370\";\"Chistyye Bory\";\"main\"\n\"6695754\";\"Kogalym\";\"main\"\n\"6695754\";\"Kogalim\";\"other\"\n\"6695754\";\"Kogalyym\";\"other\"\n\"6695754\";\"Когалым\";\"other\"\n\"6696686\";\"Pyt-Yakh\";\"main\"\n\"6696686\";\"Pyt'-Jakh\";\"other\"\n\"6696686\";\"Пыть-Ях\";\"other\"\n\"6696767\";\"Langepas\";\"main\"\n\"6696767\";\"Лангепас\";\"other\"\n\"6696921\";\"Североморск-3\";\"main\"\n\"6696921\";\"Severomorsk-3\";\"ascii\"\n\"6697077\";\"Киевский\";\"main\"\n\"6697077\";\"Kievskij\";\"ascii\"\n\"6697077\";\"Kievskiy\";\"other\"\n\"6730265\";\"Obolensk\";\"main\"\n\"6730265\";\"Оболенск\";\"other\"\n\"6930055\";\"Muromtsevo\";\"main\"\n\"6930055\";\"Muromcevo\";\"other\"\n\"6930055\";\"Муромцево\";\"other\"\n\"6930488\";\"Нежданинское\";\"main\"\n\"6930488\";\"Nezhdaninskoe\";\"ascii\"\n\"6930874\";\"Шикотан\";\"main\"\n\"6930874\";\"Shikotan\";\"ascii\"\n\"6931086\";\"Peresvet\";\"main\"\n\"6931086\";\"Пересвет\";\"other\"\n\"7115017\";\"Temernik\";\"main\"\n\"7115017\";\"Темерник\";\"other\"\n\"7117224\";\"Pribrezhnyy\";\"main\"\n\"7117224\";\"Pribrezhnyj\";\"other\"\n\"7117224\";\"Прибрежный\";\"other\"\n\"7117880\";\"Zarya\";\"main\"\n\"7117880\";\"Zarja\";\"other\"\n\"7117880\";\"Заря\";\"other\"\n\"7117885\";\"Raduzhnyy\";\"main\"\n\"7117885\";\"Raduzhnyj\";\"other\"\n\"7117885\";\"Радужный\";\"other\"\n\"7287775\";\"Nizhnesortymskiy\";\"main\"\n\"7287775\";\"Nizhnesortymskij\";\"other\"\n\"7287775\";\"Нижнесортымский\";\"other\"\n\"7289676\";\"Pokachi\";\"main\"\n\"7289676\";\"Покачи\";\"other\"\n\"7290697\";\"Izluchinsk\";\"main\"\n\"7290697\";\"Излучинск\";\"other\"\n\"7536147\";\"Singapay\";\"main\"\n\"7536147\";\"Singapaj\";\"other\"\n\"7536147\";\"Сингапай\";\"other\"\n\"201521\";\"Ruhengeri\";\"main\"\n\"201521\";\"Ruhengeris\";\"other\"\n\"201521\";\"Rukhengeri\";\"other\"\n\"201521\";\"Рухенгери\";\"other\"\n\"201865\";\"Nzega\";\"main\"\n\"201865\";\"Mont Nzega\";\"other\"\n\"201865\";\"Nseka\";\"other\"\n\"202061\";\"Kigali\";\"main\"\n\"202061\";\"Kigale\";\"other\"\n\"202061\";\"Kigalis\";\"other\"\n\"202061\";\"Kinkali\";\"other\"\n\"202061\";\"Kígalí\";\"other\"\n\"202061\";\"ji jia li\";\"other\"\n\"202061\";\"kigalli\";\"other\"\n\"202061\";\"kigari\";\"other\"\n\"202061\";\"Κιγκάλι\";\"other\"\n\"202061\";\"Кигали\";\"other\"\n\"202061\";\"קיגאלי\";\"other\"\n\"202061\";\"ኪጋሊ\";\"other\"\n\"202061\";\"キガリ\";\"other\"\n\"202061\";\"吉佳利\";\"other\"\n\"202061\";\"키갈리\";\"other\"\n\"202065\";\"Kibuye\";\"main\"\n\"202065\";\"Kibue\";\"other\"\n\"202065\";\"Kibuje\";\"other\"\n\"202065\";\"Kibujė\";\"other\"\n\"202065\";\"Кибуе\";\"other\"\n\"202068\";\"Kibungo\";\"main\"\n\"202068\";\"Kibungu\";\"other\"\n\"202068\";\"Кибунго\";\"other\"\n\"202217\";\"Gitarama\";\"main\"\n\"202217\";\"Gitarame\";\"other\"\n\"202217\";\"Гитараме\";\"other\"\n\"202239\";\"Gikongoro\";\"main\"\n\"202326\";\"Cyangugu\";\"main\"\n\"202326\";\"Shangugu\";\"other\"\n\"202326\";\"Siangugu\";\"other\"\n\"202326\";\"Сиангугу\";\"other\"\n\"202905\";\"Gisenyi\";\"main\"\n\"202905\";\"Colline Gosenyi\";\"other\"\n\"202905\";\"Gisen'i\";\"other\"\n\"202905\";\"Gisenjis\";\"other\"\n\"202905\";\"Gosenyi\";\"other\"\n\"202905\";\"ji sai ni\";\"other\"\n\"202905\";\"Гисеньи\";\"other\"\n\"202905\";\"吉塞尼\";\"other\"\n\"203104\";\"Byumba\";\"main\"\n\"203104\";\"Biumba\";\"other\"\n\"203104\";\"Bjumba\";\"other\"\n\"203104\";\"Биумба\";\"other\"\n\"203112\";\"Butare\";\"main\"\n\"203112\";\"Butaré\";\"other\"\n\"203112\";\"Butarė\";\"other\"\n\"203112\";\"Бутаре\";\"other\"\n\"203117\";\"Butare\";\"main\"\n\"203117\";\"Astrida\";\"other\"\n\"203117\";\"Бутаре\";\"other\"\n\"384529\";\"Rwamagana\";\"main\"\n\"7062967\";\"Nyanza\";\"main\"\n\"100425\";\"Yanbu‘ al Baḩr\";\"main\"\n\"100425\";\"Yanbu` al Bahr\";\"ascii\"\n\"100425\";\"Yambo\";\"other\"\n\"100425\";\"Yanbu al-Bahar\";\"other\"\n\"100425\";\"Yanbu`\";\"other\"\n\"100425\";\"Yanbu‘\";\"other\"\n\"100425\";\"Yenbo\";\"other\"\n\"100425\";\"Yenbo` al Bahar\";\"other\"\n\"100425\";\"Yenbo‘ al Bahar\";\"other\"\n\"100926\";\"Umm Lajj\";\"main\"\n\"100926\";\"Umm Lej\";\"other\"\n\"100926\";\"Umm Lujj\";\"other\"\n\"101035\";\"Umm as Sāhik\";\"main\"\n\"101035\";\"Umm as Sahik\";\"ascii\"\n\"101035\";\"Umm es Sahich\";\"other\"\n\"101035\";\"Umm-as-Sahak\";\"other\"\n\"101035\";\"Umm-as-Sāhak\";\"other\"\n\"101312\";\"Ţurayf\";\"main\"\n\"101312\";\"Turayf\";\"ascii\"\n\"101312\";\"At Turayf\";\"other\"\n\"101312\";\"Aţ Ţurayf\";\"other\"\n\"101312\";\"Et Turaif\";\"other\"\n\"101312\";\"Eṭ Ṭuraif\";\"other\"\n\"101312\";\"Mahattat al Turayf\";\"other\"\n\"101312\";\"Mahattat at Turayf\";\"other\"\n\"101312\";\"Maḩaţţat al Ţurayf\";\"other\"\n\"101312\";\"Maḩaţţat aţ Ţurayf\";\"other\"\n\"101312\";\"Turaif\";\"other\"\n\"101322\";\"Turabah\";\"main\"\n\"101322\";\"Ramadan\";\"other\"\n\"101322\";\"Taraba\";\"other\"\n\"101322\";\"Turaba\";\"other\"\n\"101322\";\"Turbah\";\"other\"\n\"101344\";\"At Tūbī\";\"main\"\n\"101344\";\"At Tubi\";\"ascii\"\n\"101344\";\"Tobi\";\"other\"\n\"101554\";\"Tārūt\";\"main\"\n\"101554\";\"Tarut\";\"ascii\"\n\"101554\";\"Darin Fort\";\"other\"\n\"101554\";\"Tarut fort\";\"other\"\n\"101554\";\"Tārūt fort\";\"other\"\n\"101581\";\"Tanūmah\";\"main\"\n\"101581\";\"Tanumah\";\"ascii\"\n\"101581\";\"Tanuma\";\"other\"\n\"101628\";\"Tabūk\";\"main\"\n\"101628\";\"Tabuk\";\"ascii\"\n\"101628\";\"Gabouk\";\"other\"\n\"101628\";\"Tabouk\";\"other\"\n\"101628\";\"Tebuk\";\"other\"\n\"101628\";\"Табук\";\"other\"\n\"101631\";\"Ţubarjal\";\"main\"\n\"101631\";\"Tubarjal\";\"ascii\"\n\"101631\";\"Tabarjal\";\"other\"\n\"101631\";\"Ţabarjal\";\"other\"\n\"101631\";\"طبرجل\";\"other\"\n\"101633\";\"Tabālah\";\"main\"\n\"101633\";\"Tabalah\";\"ascii\"\n\"101633\";\"Tabala\";\"other\"\n\"101760\";\"Sulţānah\";\"main\"\n\"101760\";\"Sultanah\";\"ascii\"\n\"102318\";\"Sayhāt\";\"main\"\n\"102318\";\"Sayhat\";\"ascii\"\n\"102318\";\"As Saihat\";\"other\"\n\"102318\";\"As Saihāt\";\"other\"\n\"102318\";\"As Sayhat\";\"other\"\n\"102318\";\"As Sayhāt\";\"other\"\n\"102318\";\"Saihat\";\"other\"\n\"102318\";\"Sihat\";\"other\"\n\"102318\";\"Sīhāt\";\"other\"\n\"102451\";\"Şāmitah\";\"main\"\n\"102451\";\"Samitah\";\"ascii\"\n\"102451\";\"Samta\";\"other\"\n\"102451\";\"Самта\";\"other\"\n\"102527\";\"Sakākā\";\"main\"\n\"102527\";\"Sakaka\";\"ascii\"\n\"102527\";\"Sakakah\";\"other\"\n\"102527\";\"Sakākah\";\"other\"\n\"102527\";\"Skaka\";\"other\"\n\"102527\";\"Skâka\";\"other\"\n\"102585\";\"Şafwá\";\"main\"\n\"102585\";\"Safwa\";\"ascii\"\n\"102585\";\"Safwah\";\"other\"\n\"102585\";\"Şafwah\";\"other\"\n\"102651\";\"Şabyā\";\"main\"\n\"102651\";\"Sabya\";\"ascii\"\n\"102651\";\"Al-Sabya\";\"other\"\n\"102651\";\"As Sabya\";\"other\"\n\"102651\";\"Aş Şabyā\";\"other\"\n\"102651\";\"Sabie\";\"other\"\n\"102651\";\"Sabiya\";\"other\"\n\"102651\";\"صبيا\";\"other\"\n\"102985\";\"Raḩīmah\";\"main\"\n\"102985\";\"Rahimah\";\"ascii\"\n\"102985\";\"Rahaima\";\"other\"\n\"103035\";\"Rābigh\";\"main\"\n\"103035\";\"Rabigh\";\"ascii\"\n\"103035\";\"Rabegh\";\"other\"\n\"103035\";\"Rabigh Qasr\";\"other\"\n\"103369\";\"Qal‘at Bīshah\";\"main\"\n\"103369\";\"Qal`at Bishah\";\"ascii\"\n\"103369\";\"Bisha\";\"other\"\n\"103630\";\"Najrān\";\"main\"\n\"103630\";\"Najran\";\"ascii\"\n\"103922\";\"Mulayjah\";\"main\"\n\"103922\";\"Mulaidja\";\"other\"\n\"103922\";\"Mulaija\";\"other\"\n\"104269\";\"Mislīyah\";\"main\"\n\"104269\";\"Misliyah\";\"ascii\"\n\"104269\";\"Masliya\";\"other\"\n\"104269\";\"Masliyah\";\"other\"\n\"104269\";\"Maslīyah\";\"other\"\n\"104269\";\"مسلية\";\"other\"\n\"104376\";\"Marāt\";\"main\"\n\"104376\";\"Marat\";\"ascii\"\n\"104376\";\"Marah\";\"other\"\n\"104376\";\"Marrat\";\"other\"\n\"104376\";\"Marrāt\";\"other\"\n\"104376\";\"Marāh\";\"other\"\n\"104515\";\"Mecca\";\"main\"\n\"104515\";\"A Meca\";\"other\"\n\"104515\";\"A Meca - mkt\";\"other\"\n\"104515\";\"A Meca - مكة\";\"other\"\n\"104515\";\"La Meca\";\"other\"\n\"104515\";\"La Mecca\";\"other\"\n\"104515\";\"La Mecque\";\"other\"\n\"104515\";\"Macoraba\";\"other\"\n\"104515\";\"Maekkae\";\"other\"\n\"104515\";\"Makka\";\"other\"\n\"104515\";\"Makkah\";\"other\"\n\"104515\";\"Makkah al Mukarramah\";\"other\"\n\"104515\";\"Makkah al Mukarraman\";\"other\"\n\"104515\";\"Makkah al-Mukarramah\";\"other\"\n\"104515\";\"Meca\";\"other\"\n\"104515\";\"Meice\";\"other\"\n\"104515\";\"Meka\";\"other\"\n\"104515\";\"Mekao\";\"other\"\n\"104515\";\"Mekka\";\"other\"\n\"104515\";\"Mekkah\";\"other\"\n\"104515\";\"Mekke\";\"other\"\n\"104515\";\"Mekko\";\"other\"\n\"104515\";\"Mäkkä\";\"other\"\n\"104515\";\"mai jia\";\"other\"\n\"104515\";\"makka\";\"other\"\n\"104515\";\"meka\";\"other\"\n\"104515\";\"mkh\";\"other\"\n\"104515\";\"mkt\";\"other\"\n\"104515\";\"Μέκκα\";\"other\"\n\"104515\";\"Мека\";\"other\"\n\"104515\";\"Мекка\";\"other\"\n\"104515\";\"מכה\";\"other\"\n\"104515\";\"مكة\";\"other\"\n\"104515\";\"مکه\";\"other\"\n\"104515\";\"مکہ\";\"other\"\n\"104515\";\"มักกะหฺ\";\"other\"\n\"104515\";\"མ་ཁ\";\"other\"\n\"104515\";\"მექა\";\"other\"\n\"104515\";\"マッカ\";\"other\"\n\"104515\";\"麥加\";\"other\"\n\"104515\";\"메카\";\"other\"\n\"105072\";\"Khamīs Mushayt\";\"main\"\n\"105072\";\"Khamis Mushayt\";\"ascii\"\n\"105072\";\"Khamis Mushait\";\"other\"\n\"105072\";\"khmys mshyt\";\"other\"\n\"105072\";\"خميس مشيط\";\"other\"\n\"105252\";\"Julayjilah\";\"main\"\n\"105252\";\"Julaijilah\";\"other\"\n\"105299\";\"Jīzān\";\"main\"\n\"105299\";\"Jizan\";\"ascii\"\n\"105299\";\"Djayzan\";\"other\"\n\"105299\";\"Djayzān\";\"other\"\n\"105299\";\"Djazan\";\"other\"\n\"105299\";\"Djāzān\";\"other\"\n\"105299\";\"Dzhizan\";\"other\"\n\"105299\";\"Gizan\";\"other\"\n\"105299\";\"Gizán\";\"other\"\n\"105299\";\"Jaizan\";\"other\"\n\"105299\";\"Jazan\";\"other\"\n\"105299\";\"Jezan\";\"other\"\n\"105299\";\"Jāzān\";\"other\"\n\"105299\";\"Qizan\";\"other\"\n\"105299\";\"Qīzān\";\"other\"\n\"105299\";\"Джизан\";\"other\"\n\"105343\";\"Jiddah\";\"main\"\n\"105343\";\"Ciddae\";\"other\"\n\"105343\";\"Cidde\";\"other\"\n\"105343\";\"Ciddä\";\"other\"\n\"105343\";\"Djedda\";\"other\"\n\"105343\";\"Djeddah\";\"other\"\n\"105343\";\"Djidda\";\"other\"\n\"105343\";\"Dschidda\";\"other\"\n\"105343\";\"Dzedda\";\"other\"\n\"105343\";\"Dzhidda\";\"other\"\n\"105343\";\"Dzida\";\"other\"\n\"105343\";\"Dzudda\";\"other\"\n\"105343\";\"Dżudda\";\"other\"\n\"105343\";\"Džedda\";\"other\"\n\"105343\";\"Džida\";\"other\"\n\"105343\";\"Gedda\";\"other\"\n\"105343\";\"Gidda\";\"other\"\n\"105343\";\"Gido\";\"other\"\n\"105343\";\"Jaddah\";\"other\"\n\"105343\";\"Jedda\";\"other\"\n\"105343\";\"Jeddah\";\"other\"\n\"105343\";\"Jida\";\"other\"\n\"105343\";\"Jidda\";\"other\"\n\"105343\";\"Jidá\";\"other\"\n\"105343\";\"Juddah\";\"other\"\n\"105343\";\"Yida\";\"other\"\n\"105343\";\"Yidda\";\"other\"\n\"105343\";\"g'dh\";\"other\"\n\"105343\";\"jdh\";\"other\"\n\"105343\";\"jdt\";\"other\"\n\"105343\";\"ji da\";\"other\"\n\"105343\";\"jidda\";\"other\"\n\"105343\";\"Ĝido\";\"other\"\n\"105343\";\"Джидда\";\"other\"\n\"105343\";\"ג'דה\";\"other\"\n\"105343\";\"جدة\";\"other\"\n\"105343\";\"جده\";\"other\"\n\"105343\";\"ジッダ\";\"other\"\n\"105343\";\"吉达\";\"other\"\n\"106281\";\"Ḩā’il\";\"main\"\n\"106281\";\"Ha'il\";\"ascii\"\n\"106281\";\"Hael\";\"other\"\n\"106281\";\"Hajel\";\"other\"\n\"106281\";\"Hayil\";\"other\"\n\"106281\";\"Ḥâjel\";\"other\"\n\"106744\";\"Farasān\";\"main\"\n\"106744\";\"Farasan\";\"ascii\"\n\"106909\";\"Ḑubā\";\"main\"\n\"106909\";\"Duba\";\"ascii\"\n\"106909\";\"Daba\";\"other\"\n\"106909\";\"Dhaba\";\"other\"\n\"106909\";\"Diba\";\"other\"\n\"106909\";\"Zbe\";\"other\"\n\"106909\";\"Ziba'\";\"other\"\n\"106909\";\"Z̧ibā’\";\"other\"\n\"106909\";\"Дуба\";\"other\"\n\"106909\";\"Ḑabā\";\"other\"\n\"107304\";\"Buraydah\";\"main\"\n\"107304\";\"Buraeydae\";\"other\"\n\"107304\";\"Buraida\";\"other\"\n\"107304\";\"Buraidah\";\"other\"\n\"107304\";\"Burajda\";\"other\"\n\"107304\";\"Buräydä\";\"other\"\n\"107304\";\"brydt\";\"other\"\n\"107304\";\"بريدة\";\"other\"\n\"107312\";\"Abqaiq\";\"main\"\n\"107312\";\"Abaqaiq\";\"other\"\n\"107312\";\"Abkayk\";\"other\"\n\"107312\";\"Abqaik\";\"other\"\n\"107312\";\"Abqayq\";\"other\"\n\"107312\";\"Bukayk\";\"other\"\n\"107312\";\"Buqayq\";\"other\"\n\"107312\";\"Madinat Abqaiq\";\"other\"\n\"107744\";\"Badr Ḩunayn\";\"main\"\n\"107744\";\"Badr Hunayn\";\"ascii\"\n\"107744\";\"Badr\";\"other\"\n\"107744\";\"Badr Hunain\";\"other\"\n\"107781\";\"Az Zulfi\";\"main\"\n\"107781\";\"Az Zilfi\";\"other\"\n\"107781\";\"Az Zilfī\";\"other\"\n\"107781\";\"Zilfi\";\"other\"\n\"107797\";\"Dhahran\";\"main\"\n\"107797\";\"Az Zahran\";\"other\"\n\"107797\";\"Az̧ Z̧ahrān\";\"other\"\n\"107797\";\"Dahahron\";\"other\"\n\"107797\";\"Dakhran\";\"other\"\n\"107797\";\"Dhahram\";\"other\"\n\"107797\";\"Zahran\";\"other\"\n\"107797\";\"Дахран\";\"other\"\n\"107959\";\"Aţ Ţaraf\";\"main\"\n\"107959\";\"At Taraf\";\"ascii\"\n\"107959\";\"Al-Taraf\";\"other\"\n\"107968\";\"Aţ Ţā’if\";\"main\"\n\"107968\";\"At Ta'if\";\"ascii\"\n\"107968\";\"Al-Ta'if\";\"other\"\n\"107968\";\"Al-Ṭā’if\";\"other\"\n\"107968\";\"Ta'if\";\"other\"\n\"107968\";\"Taef\";\"other\"\n\"107968\";\"Taif\";\"other\"\n\"107968\";\"Tayif\";\"other\"\n\"107968\";\"Taëf\";\"other\"\n\"107968\";\"Ta’if\";\"other\"\n\"107968\";\"Tāif\";\"other\"\n\"107968\";\"altayf\";\"other\"\n\"107968\";\"Таиф\";\"other\"\n\"107968\";\"الطائف\";\"other\"\n\"108048\";\"As Sulayyil\";\"main\"\n\"108048\";\"As Sullayyil\";\"other\"\n\"108048\";\"Sulaiyil\";\"other\"\n\"108121\";\"Sājir\";\"main\"\n\"108121\";\"Sajir\";\"ascii\"\n\"108121\";\"As Sajir\";\"other\"\n\"108121\";\"As Sājir\";\"other\"\n\"108142\";\"As Saffānīyah\";\"main\"\n\"108142\";\"As Saffaniyah\";\"ascii\"\n\"108142\";\"Ra's as Saffaniyah\";\"other\"\n\"108142\";\"Ra’s as Saffaniyah\";\"other\"\n\"108142\";\"Safania\";\"other\"\n\"108142\";\"Safaniya\";\"other\"\n\"108410\";\"Riyadh\";\"main\"\n\"108410\";\"Al-Riyad\";\"other\"\n\"108410\";\"Ar Riyad\";\"other\"\n\"108410\";\"Ar Riyadh\";\"other\"\n\"108410\";\"Ar Riyādh\";\"other\"\n\"108410\";\"Ar Riyāḑ\";\"other\"\n\"108410\";\"Ar-Riyad\";\"other\"\n\"108410\";\"Ar-Riyāḑ\";\"other\"\n\"108410\";\"Ehr-Rijad\";\"other\"\n\"108410\";\"Er Rijad\";\"other\"\n\"108410\";\"Riad\";\"other\"\n\"108410\";\"Riade\";\"other\"\n\"108410\";\"Riant\";\"other\"\n\"108410\";\"Rijad\";\"other\"\n\"108410\";\"Rijada\";\"other\"\n\"108410\";\"Rijadas\";\"other\"\n\"108410\";\"Rijád\";\"other\"\n\"108410\";\"Rijāda\";\"other\"\n\"108410\";\"Riyad\";\"other\"\n\"108410\";\"alryad\";\"other\"\n\"108410\";\"li ya de\";\"other\"\n\"108410\";\"liadeu\";\"other\"\n\"108410\";\"riyad\";\"other\"\n\"108410\";\"riyada\";\"other\"\n\"108410\";\"riyadha\";\"other\"\n\"108410\";\"riyado\";\"other\"\n\"108410\";\"ryad\";\"other\"\n\"108410\";\"Ριάντ\";\"other\"\n\"108410\";\"Ер Ријад\";\"other\"\n\"108410\";\"Рияд\";\"other\"\n\"108410\";\"Эр-Рияд\";\"other\"\n\"108410\";\"ריאד\";\"other\"\n\"108410\";\"الرياض\";\"other\"\n\"108410\";\"ریاض\";\"other\"\n\"108410\";\"रियाध\";\"other\"\n\"108410\";\"রিয়াদ\";\"other\"\n\"108410\";\"ริยาด\";\"other\"\n\"108410\";\"ሪያድ\";\"other\"\n\"108410\";\"リヤド\";\"other\"\n\"108410\";\"利雅德\";\"other\"\n\"108410\";\"리아드\";\"other\"\n\"108435\";\"Ar Rass\";\"main\"\n\"108435\";\"Al Russ\";\"other\"\n\"108435\";\"El Russ\";\"other\"\n\"108435\";\"Rass\";\"other\"\n\"108435\";\"alrs\";\"other\"\n\"108435\";\"الرس\";\"other\"\n\"108512\";\"‘Ar‘ar\";\"main\"\n\"108512\";\"`Ar`ar\";\"ascii\"\n\"108512\";\"Ara`ar\";\"other\"\n\"108512\";\"Arar\";\"other\"\n\"108512\";\"Ara‘ar\";\"other\"\n\"108512\";\"عرعر\";\"other\"\n\"108617\";\"An Nimāş\";\"main\"\n\"108617\";\"An Nimas\";\"ascii\"\n\"108617\";\"Al-Nimas\";\"other\"\n\"108617\";\"Al-Nimās\";\"other\"\n\"108617\";\"Numas\";\"other\"\n\"108617\";\"Numās\";\"other\"\n\"108648\";\"Al Qurayyāt\";\"main\"\n\"108648\";\"Al Qurayyat\";\"ascii\"\n\"108648\";\"Al `Aqaylah\";\"other\"\n\"108648\";\"Al `Uqaylah\";\"other\"\n\"108648\";\"Al `Uqaylah Kaf\";\"other\"\n\"108648\";\"Al ‘Aqaylah\";\"other\"\n\"108648\";\"Al ‘Uqaylah\";\"other\"\n\"108648\";\"Al ‘Uqaylah Kāf\";\"other\"\n\"108648\";\"Al-`Akejla\";\"other\"\n\"108648\";\"Al-‘Akejla\";\"other\"\n\"108648\";\"An Nabk\";\"other\"\n\"108648\";\"An Nabk Abu Nakhlah\";\"other\"\n\"108648\";\"Nabek\";\"other\"\n\"108648\";\"القريات\";\"other\"\n\"108773\";\"Al Wajh\";\"main\"\n\"108773\";\"Alwejh\";\"other\"\n\"108773\";\"Wajj\";\"other\"\n\"108773\";\"Wejh\";\"other\"\n\"108890\";\"Al Qurayn\";\"main\"\n\"108890\";\"Al Ghuraim\";\"other\"\n\"108890\";\"Al-Qurain\";\"other\"\n\"108890\";\"Qarain\";\"other\"\n\"108918\";\"Al Qayşūmah\";\"main\"\n\"108918\";\"Al Qaysumah\";\"ascii\"\n\"108918\";\"Gaisum\";\"other\"\n\"108918\";\"Gaisun\";\"other\"\n\"108918\";\"Qaisumah\";\"other\"\n\"108918\";\"Qaysumah\";\"other\"\n\"108918\";\"Qayşumah\";\"other\"\n\"108918\";\"Quasomeh\";\"other\"\n\"108927\";\"Al Qaţīf\";\"main\"\n\"108927\";\"Al Qatif\";\"ascii\"\n\"108927\";\"Ehl'-Katif\";\"other\"\n\"108927\";\"El Katif\";\"other\"\n\"108927\";\"Qatif\";\"other\"\n\"108927\";\"Эль-Катиф\";\"other\"\n\"108957\";\"Al Qārah\";\"main\"\n\"108957\";\"Al Qarah\";\"ascii\"\n\"108957\";\"El Qara\";\"other\"\n\"108957\";\"Qarah\";\"other\"\n\"108957\";\"Qārah\";\"other\"\n\"109008\";\"Al Muţayrifī\";\"main\"\n\"109008\";\"Al Mutayrifi\";\"ascii\"\n\"109008\";\"Al Mutairifi\";\"other\"\n\"109008\";\"Matairafi\";\"other\"\n\"109008\";\"Muteirfeh\";\"other\"\n\"109008\";\"Umm Terfi\";\"other\"\n\"109059\";\"Al Munayzilah\";\"main\"\n\"109059\";\"Al Munaizilah\";\"other\"\n\"109059\";\"Manaizlah\";\"other\"\n\"109059\";\"Manzilah\";\"other\"\n\"109059\";\"Minazla\";\"other\"\n\"109101\";\"Al Mubarraz\";\"main\"\n\"109118\";\"Al Mindak\";\"main\"\n\"109118\";\"Al Mindaq\";\"other\"\n\"109118\";\"Mandak\";\"other\"\n\"109118\";\"Mendak\";\"other\"\n\"109165\";\"Al Markaz\";\"main\"\n\"109223\";\"Medina\";\"main\"\n\"109223\";\"Al Madina\";\"other\"\n\"109223\";\"Al Madinah\";\"other\"\n\"109223\";\"Al Madinah al Munawwarah\";\"other\"\n\"109223\";\"Al Madīnah\";\"other\"\n\"109223\";\"Al Madīnah al Munawwarah\";\"other\"\n\"109223\";\"Al Medina\";\"other\"\n\"109223\";\"El Medina\";\"other\"\n\"109223\";\"Lathrippa\";\"other\"\n\"109223\";\"Madinah\";\"other\"\n\"109223\";\"Madinah al-Munawwarah\";\"other\"\n\"109223\";\"Maedinae\";\"other\"\n\"109223\";\"Mediina\";\"other\"\n\"109223\";\"Medine\";\"other\"\n\"109223\";\"Medino\";\"other\"\n\"109223\";\"Medyna\";\"other\"\n\"109223\";\"Medína\";\"other\"\n\"109223\";\"Medîne\";\"other\"\n\"109223\";\"Mädinä\";\"other\"\n\"109223\";\"Médine\";\"other\"\n\"109223\";\"Yathrib\";\"other\"\n\"109223\";\"almdynt\";\"other\"\n\"109223\";\"almdynt almnwrt\";\"other\"\n\"109223\";\"madina\";\"other\"\n\"109223\";\"mai de na\";\"other\"\n\"109223\";\"mdynh\";\"other\"\n\"109223\";\"medina\";\"other\"\n\"109223\";\"Медина\";\"other\"\n\"109223\";\"אל-מדינה\";\"other\"\n\"109223\";\"المدينة\";\"other\"\n\"109223\";\"المدينة المنورة\";\"other\"\n\"109223\";\"مدینه\";\"other\"\n\"109223\";\"مدینہ منورہ\";\"other\"\n\"109223\";\"मदीना\";\"other\"\n\"109223\";\"მედინა\";\"other\"\n\"109223\";\"マディーナ\";\"other\"\n\"109223\";\"麦地那\";\"other\"\n\"109323\";\"Al Khubar\";\"main\"\n\"109323\";\"Al Khobar\";\"other\"\n\"109323\";\"Khobar\";\"other\"\n\"109380\";\"Al Khafjī\";\"main\"\n\"109380\";\"Al Khafji\";\"ascii\"\n\"109380\";\"Ra's al Khafji\";\"other\"\n\"109380\";\"Ra’s al Khafjī\";\"other\"\n\"109417\";\"Al Jumūm\";\"main\"\n\"109417\";\"Al Jumum\";\"ascii\"\n\"109417\";\"Al Jumun\";\"other\"\n\"109417\";\"Al Jumūn\";\"other\"\n\"109417\";\"Jumum\";\"other\"\n\"109435\";\"Al Jubayl\";\"main\"\n\"109435\";\"Ainain\";\"other\"\n\"109435\";\"Ainan\";\"other\"\n\"109435\";\"Al'-Dzhubajl'\";\"other\"\n\"109435\";\"Jubail\";\"other\"\n\"109435\";\"Jubail al Bahri\";\"other\"\n\"109435\";\"Jubayl\";\"other\"\n\"109435\";\"Jubayl `Aynayw\";\"other\"\n\"109435\";\"Jubayl al Bahri\";\"other\"\n\"109435\";\"Jubayl al Baḩri\";\"other\"\n\"109435\";\"Jubayl ‘Aynayw\";\"other\"\n\"109435\";\"`Aynayn\";\"other\"\n\"109435\";\"aljbyl\";\"other\"\n\"109435\";\"Аль-Джубайль\";\"other\"\n\"109435\";\"الجبيل\";\"other\"\n\"109435\";\"‘Aynayn\";\"other\"\n\"109436\";\"Al Jubayl\";\"main\"\n\"109436\";\"Al'-Dzhubajl'\";\"other\"\n\"109436\";\"Al-Jubail\";\"other\"\n\"109436\";\"Аль-Джубайль\";\"other\"\n\"109481\";\"Al Jarādīyah\";\"main\"\n\"109481\";\"Al Jaradiyah\";\"ascii\"\n\"109502\";\"Al Jafr\";\"main\"\n\"109502\";\"Bab-al-Jafar\";\"other\"\n\"109502\";\"Bāb-al-Jafar\";\"other\"\n\"109502\";\"Djafar\";\"other\"\n\"109502\";\"Jafar\";\"other\"\n\"109502\";\"Jafr\";\"other\"\n\"109571\";\"Al Hufūf\";\"main\"\n\"109571\";\"Al Hufuf\";\"ascii\"\n\"109571\";\"Hofuf\";\"other\"\n\"109571\";\"Hofūf\";\"other\"\n\"109571\";\"Hufuf\";\"other\"\n\"109571\";\"Hufūf\";\"other\"\n\"109878\";\"Al Bukayrīyah\";\"main\"\n\"109878\";\"Al Bukayriyah\";\"ascii\"\n\"109878\";\"Bukayriyah\";\"other\"\n\"109878\";\"Bukayrīyah\";\"other\"\n\"109878\";\"Keriya\";\"other\"\n\"109915\";\"Al Baţţālīyah\";\"main\"\n\"109915\";\"Al Battaliyah\";\"ascii\"\n\"109953\";\"Al Bāḩah\";\"main\"\n\"109953\";\"Al Bahah\";\"ascii\"\n\"110031\";\"Al Arţāwīyah\";\"main\"\n\"110031\";\"Al Artawiyah\";\"ascii\"\n\"110031\";\"Al Irtawiya\";\"other\"\n\"110031\";\"Al Irtāwīya\";\"other\"\n\"110031\";\"Artawiyah\";\"other\"\n\"110031\";\"Artawiyya\";\"other\"\n\"110031\";\"Arţāwīyah\";\"other\"\n\"110107\";\"Al Awjām\";\"main\"\n\"110107\";\"Al Awjam\";\"ascii\"\n\"110107\";\"Ajam\";\"other\"\n\"110107\";\"Ajam al Qatif\";\"other\"\n\"110107\";\"Ajam al Qatīf\";\"other\"\n\"110107\";\"Al Ajam\";\"other\"\n\"110107\";\"Al Ājām\";\"other\"\n\"110107\";\"El Ajam\";\"other\"\n\"110107\";\"Lajam\";\"other\"\n\"110107\";\"Lājām\";\"other\"\n\"110250\";\"‘Afīf\";\"main\"\n\"110250\";\"`Afif\";\"ascii\"\n\"110250\";\"Afif\";\"other\"\n\"110314\";\"Ad Dilam\";\"main\"\n\"110314\";\"Dilam\";\"other\"\n\"110325\";\"Ad Dawādimī\";\"main\"\n\"110325\";\"Ad Dawadimi\";\"ascii\"\n\"110325\";\"Ad Dawadami\";\"other\"\n\"110325\";\"Ad Dawādamī\";\"other\"\n\"110325\";\"Ad Duwadami\";\"other\"\n\"110325\";\"Ad Duwādamī\";\"other\"\n\"110325\";\"Al-Dawadimi\";\"other\"\n\"110325\";\"Al-Dawādimi\";\"other\"\n\"110325\";\"Duwadami\";\"other\"\n\"110325\";\"Duwadimi\";\"other\"\n\"110325\";\"Duwādimi\";\"other\"\n\"110328\";\"Ad Darb\";\"main\"\n\"110328\";\"Darb\";\"other\"\n\"110336\";\"Ad Dammām\";\"main\"\n\"110336\";\"Ad Dammam\";\"ascii\"\n\"110336\";\"Daemmam\";\"other\"\n\"110336\";\"Dammam\";\"other\"\n\"110336\";\"Damman\";\"other\"\n\"110336\";\"Dammām\";\"other\"\n\"110336\";\"Dämmam\";\"other\"\n\"110336\";\"aldmam\";\"other\"\n\"110336\";\"danmamu\";\"other\"\n\"110336\";\"Даммам\";\"other\"\n\"110336\";\"الدمام\";\"other\"\n\"110336\";\"ダンマーム\";\"other\"\n\"110619\";\"Abū ‘Arīsh\";\"main\"\n\"110619\";\"Abu `Arish\";\"ascii\"\n\"110619\";\"Abi `Arish\";\"other\"\n\"110619\";\"Abu al `Arish\";\"other\"\n\"110619\";\"Abu al ‘Arish\";\"other\"\n\"110619\";\"Abī ‘Arīsh\";\"other\"\n\"110619\";\"ٲبو عريش\";\"other\"\n\"110690\";\"Abhā\";\"main\"\n\"110690\";\"Abha\";\"ascii\"\n\"110690\";\"AEbha\";\"other\"\n\"110690\";\"Abkha\";\"other\"\n\"110690\";\"Ebha\";\"other\"\n\"110690\";\"abha\";\"other\"\n\"110690\";\"Äbha\";\"other\"\n\"110690\";\"Абха\";\"other\"\n\"110690\";\"أبها\";\"other\"\n\"391699\";\"Ḩajrat al Khinbish\";\"main\"\n\"391699\";\"Hajrat al Khinbish\";\"ascii\"\n\"392753\";\"Şuwayr\";\"main\"\n\"392753\";\"Suwayr\";\"ascii\"\n\"396550\";\"Tumayr\";\"main\"\n\"397513\";\"Al Fuwayliq\";\"main\"\n\"399518\";\"Al Majāridah\";\"main\"\n\"399518\";\"Al Majaridah\";\"ascii\"\n\"409993\";\"Al Muwayh\";\"main\"\n\"409993\";\"Al Jadid\";\"other\"\n\"409993\";\"Al Jadīd\";\"other\"\n\"410084\";\"Al Hadā\";\"main\"\n\"410084\";\"Al Hada\";\"ascii\"\n\"410874\";\"Mizhirah\";\"main\"\n\"6692745\";\"shokhaibٍ\";\"main\"\n\"6692745\";\"shokhaib\";\"ascii\"\n\"6692745\";\"shkhyb\";\"other\"\n\"6692745\";\"شخيب\";\"other\"\n\"2102384\";\"Tulaghi\";\"main\"\n\"2102384\";\"Tulagi\";\"other\"\n\"2108502\";\"Honiara\";\"main\"\n\"2108502\";\"Honiaro\";\"other\"\n\"2108502\";\"Khoniara\";\"other\"\n\"2108502\";\"Oniara\";\"other\"\n\"2108502\";\"ho ni xa ra\";\"other\"\n\"2108502\";\"honiala\";\"other\"\n\"2108502\";\"honiara\";\"other\"\n\"2108502\";\"huo ni ya la\";\"other\"\n\"2108502\";\"hwnyara\";\"other\"\n\"2108502\";\"Ονιάρα\";\"other\"\n\"2108502\";\"Хониара\";\"other\"\n\"2108502\";\"הוניארה\";\"other\"\n\"2108502\";\"هونيارا\";\"other\"\n\"2108502\";\"هونیارا\";\"other\"\n\"2108502\";\"โฮนีอารา\";\"other\"\n\"2108502\";\"ሆኒያራ\";\"other\"\n\"2108502\";\"ホニアラ\";\"other\"\n\"2108502\";\"霍尼亚拉\";\"other\"\n\"2108502\";\"霍尼亞拉\";\"other\"\n\"2108502\";\"호니아라\";\"other\"\n\"2108857\";\"Gizo\";\"main\"\n\"2108857\";\"Ghizo\";\"other\"\n\"2108857\";\"Gizo Government Station\";\"other\"\n\"2109528\";\"Buala\";\"main\"\n\"2109701\";\"Auki\";\"main\"\n\"2109701\";\"Auke\";\"other\"\n\"2109701\";\"Rarasu\";\"other\"\n\"2178753\";\"Kirakira\";\"main\"\n\"241131\";\"Victoria\";\"main\"\n\"241131\";\"Biktoria\";\"other\"\n\"241131\";\"Mahe\";\"other\"\n\"241131\";\"Mahé\";\"other\"\n\"241131\";\"Port Victoria\";\"other\"\n\"241131\";\"Victòria\";\"other\"\n\"241131\";\"Viktoria\";\"other\"\n\"241131\";\"Viktorija\";\"other\"\n\"241131\";\"bigtolia\";\"other\"\n\"241131\";\"vu~ikutoria\";\"other\"\n\"241131\";\"Βικτόρια\";\"other\"\n\"241131\";\"Виктория\";\"other\"\n\"241131\";\"وکٹوریا\";\"other\"\n\"241131\";\"ቪክቶሪያ፥ ሲሸልስ\";\"other\"\n\"241131\";\"ヴィクトリア\";\"other\"\n\"241131\";\"빅토리아\";\"other\"\n\"363417\";\"Dongola\";\"main\"\n\"363417\";\"Ciutat de Dongola\";\"other\"\n\"363417\";\"Donkola\";\"other\"\n\"363417\";\"Donqola\";\"other\"\n\"363417\";\"Dunkula\";\"other\"\n\"363417\";\"Dunqula\";\"other\"\n\"363417\";\"Dunqulah\";\"other\"\n\"363417\";\"dnqla\";\"other\"\n\"363417\";\"دنقلا\";\"other\"\n\"363533\";\"Zalingei\";\"main\"\n\"363533\";\"Zalingee\";\"other\"\n\"363533\";\"Zalinje\";\"other\"\n\"363533\";\"Залингее\";\"other\"\n\"363619\";\"Yei\";\"main\"\n\"363619\";\"Ej\";\"other\"\n\"363619\";\"Yey\";\"other\"\n\"363619\";\"Yēy\";\"other\"\n\"363619\";\"Ей\";\"other\"\n\"363656\";\"Yambio\";\"main\"\n\"363656\";\"Jambio\";\"other\"\n\"363656\";\"Yambiyo\";\"other\"\n\"363656\";\"Ямбио\";\"other\"\n\"363885\";\"Wāw\";\"main\"\n\"363885\";\"Waw\";\"ascii\"\n\"363885\";\"Vau\";\"other\"\n\"363885\";\"Wau\";\"other\"\n\"363885\";\"waw\";\"other\"\n\"363885\";\"Вау\";\"other\"\n\"363885\";\"واو\";\"other\"\n\"364027\";\"Wagar\";\"main\"\n\"364027\";\"Wagga\";\"other\"\n\"364071\";\"Wad Rāwah\";\"main\"\n\"364071\";\"Wad Rawah\";\"ascii\"\n\"364071\";\"Hillet Sa`id\";\"other\"\n\"364071\";\"Hillet Sa‘id\";\"other\"\n\"364071\";\"Wad Rawa\";\"other\"\n\"364071\";\"Wad Rāwa\";\"other\"\n\"364103\";\"Wad Medani\";\"main\"\n\"364103\";\"Medani\";\"other\"\n\"364103\";\"Wad Madani\";\"other\"\n\"364103\";\"wd mdny\";\"other\"\n\"364103\";\"ود مدني\";\"other\"\n\"364216\";\"Wad az Zāki\";\"main\"\n\"364216\";\"Wad az Zaki\";\"ascii\"\n\"364216\";\"Wad ez Zaki\";\"other\"\n\"364367\";\"Awel\";\"main\"\n\"364367\";\"Aweil\";\"other\"\n\"364367\";\"Eweil\";\"other\"\n\"364367\";\"Uwayl\";\"other\"\n\"364706\";\"Um Ruwwāba\";\"main\"\n\"364706\";\"Um Ruwwaba\";\"ascii\"\n\"364706\";\"Um Ruaba\";\"other\"\n\"364706\";\"Umm Ruwaba\";\"other\"\n\"364706\";\"Umm Ruwabah\";\"other\"\n\"364706\";\"Umm Ruwāba\";\"other\"\n\"364706\";\"Umm Ruwābah\";\"other\"\n\"364933\";\"Umm Kaddādah\";\"main\"\n\"364933\";\"Umm Kaddadah\";\"ascii\"\n\"364933\";\"Um Kaddada\";\"other\"\n\"364933\";\"Umm Keddada\";\"other\"\n\"364949\";\"Um Jar Al Gharbiyya\";\"main\"\n\"364949\";\"Umm Garr\";\"other\"\n\"364949\";\"Umm Jarr\";\"other\"\n\"365137\";\"Omdurman\";\"main\"\n\"365137\";\"Omdourman\";\"other\"\n\"365137\";\"Omdurmana\";\"other\"\n\"365137\";\"Omdurmanas\";\"other\"\n\"365137\";\"Omdurmāna\";\"other\"\n\"365137\";\"Umm Durman\";\"other\"\n\"365137\";\"Umm Durmān\";\"other\"\n\"365137\";\"omdurman\";\"other\"\n\"365137\";\"omudo~uruman\";\"other\"\n\"365137\";\"Омдурман\";\"other\"\n\"365137\";\"オムドゥルマン\";\"other\"\n\"365742\";\"Torit\";\"main\"\n\"365742\";\"Торит\";\"other\"\n\"365763\";\"Tonj\";\"main\"\n\"365763\";\"At Tonj\";\"other\"\n\"365763\";\"Ibba\";\"other\"\n\"365763\";\"Ton'gh\";\"other\"\n\"365763\";\"Ton’gh\";\"other\"\n\"366323\";\"Tokār\";\"main\"\n\"366323\";\"Tokar\";\"ascii\"\n\"366323\";\"Tawkar\";\"other\"\n\"366323\";\"Ţawkar\";\"other\"\n\"366426\";\"Tandaltī\";\"main\"\n\"366426\";\"Tandalti\";\"ascii\"\n\"366426\";\"Tendelti\";\"other\"\n\"366444\";\"Tambura\";\"main\"\n\"366444\";\"Tembura\";\"other\"\n\"366444\";\"Tumbura\";\"other\"\n\"366487\";\"Talawdī\";\"main\"\n\"366487\";\"Talawdi\";\"ascii\"\n\"366487\";\"Talodi\";\"other\"\n\"366847\";\"Sinja\";\"main\"\n\"366847\";\"Senga\";\"other\"\n\"366847\";\"Singa\";\"other\"\n\"366847\";\"Sinjah\";\"other\"\n\"367308\";\"Shendi\";\"main\"\n\"367308\";\"Shandi\";\"other\"\n\"367308\";\"Shindi\";\"other\"\n\"367308\";\"Shindî\";\"other\"\n\"367544\";\"Sawākin\";\"main\"\n\"367544\";\"Sawakin\";\"ascii\"\n\"367544\";\"Savakine\";\"other\"\n\"367544\";\"Suakin\";\"other\"\n\"367544\";\"Савакине\";\"other\"\n\"367644\";\"Sannār\";\"main\"\n\"367644\";\"Sannar\";\"ascii\"\n\"367644\";\"Sennaar\";\"other\"\n\"367644\";\"Sennar\";\"other\"\n\"367644\";\"Sennār\";\"other\"\n\"367644\";\"Sinnar\";\"other\"\n\"367927\";\"Rumbek\";\"main\"\n\"367927\";\"Rumbeke\";\"other\"\n\"367927\";\"Rumbik\";\"other\"\n\"367927\";\"rmbyk\";\"other\"\n\"367927\";\"Румбеке\";\"other\"\n\"367927\";\"رمبيك\";\"other\"\n\"368246\";\"Raga\";\"main\"\n\"368246\";\"Ragaa\";\"other\"\n\"368246\";\"Raja\";\"other\"\n\"368277\";\"Rabaq\";\"main\"\n\"368277\";\"Rabak\";\"other\"\n\"368277\";\"rbk\";\"other\"\n\"368277\";\"ربك\";\"other\"\n\"369004\";\"Nyala\";\"main\"\n\"370457\";\"Marīdī\";\"main\"\n\"370457\";\"Maridi\";\"ascii\"\n\"370457\";\"Meridi\";\"other\"\n\"370457\";\"Merridi\";\"other\"\n\"370481\";\"Marawī\";\"main\"\n\"370481\";\"Marawi\";\"ascii\"\n\"370481\";\"Merawi\";\"other\"\n\"370481\";\"Merowe\";\"other\"\n\"370510\";\"Marabba\";\"main\"\n\"370737\";\"Malakal\";\"main\"\n\"370737\";\"Malakal'\";\"other\"\n\"370737\";\"Малакаль\";\"other\"\n\"370838\";\"Maiurno\";\"main\"\n\"371466\";\"Ler\";\"main\"\n\"371466\";\"Lir\";\"other\"\n\"371466\";\"Līr\";\"other\"\n\"371712\";\"Kajok\";\"main\"\n\"371712\";\"Kuacjok\";\"other\"\n\"371712\";\"Kuajok\";\"other\"\n\"371712\";\"Kwajok\";\"other\"\n\"371745\";\"Kutum\";\"main\"\n\"371760\";\"Kūstī\";\"main\"\n\"371760\";\"Kusti\";\"ascii\"\n\"371760\";\"Costi\";\"other\"\n\"371760\";\"Kosti\";\"other\"\n\"371760\";\"rbk\";\"other\"\n\"371760\";\"Кусти\";\"other\"\n\"371760\";\"ربك\";\"other\"\n\"371827\";\"Kurmuk\";\"main\"\n\"371827\";\"Kurmul\";\"other\"\n\"371870\";\"Kuraymah\";\"main\"\n\"371870\";\"Kareima\";\"other\"\n\"371870\";\"Karemah\";\"other\"\n\"371870\";\"Karima\";\"other\"\n\"371870\";\"Karêmah\";\"other\"\n\"372386\";\"Kināna\";\"main\"\n\"372386\";\"Kinana\";\"ascii\"\n\"372386\";\"Kenana\";\"other\"\n\"372386\";\"Kinanah\";\"other\"\n\"372386\";\"Kinānah\";\"other\"\n\"372753\";\"Kassala\";\"main\"\n\"372753\";\"Cassala\";\"other\"\n\"372753\";\"Kasala\";\"other\"\n\"372753\";\"Kassale\";\"other\"\n\"372753\";\"ksl\";\"other\"\n\"372753\";\"Кассале\";\"other\"\n\"372753\";\"كسل\";\"other\"\n\"372801\";\"Karmah an Nuzul\";\"main\"\n\"372801\";\"Karma An Nuzul\";\"other\"\n\"372801\";\"Karmah\";\"other\"\n\"372801\";\"Kerma\";\"other\"\n\"372801\";\"Kerma en Nuzl\";\"other\"\n\"372801\";\"Kermah\";\"other\"\n\"372884\";\"Kapoeta\";\"main\"\n\"372884\";\"Kabuyta\";\"other\"\n\"373141\";\"Kāduqlī\";\"main\"\n\"373141\";\"Kaduqli\";\"ascii\"\n\"373141\";\"Kadugli\";\"other\"\n\"373141\";\"kadqly\";\"other\"\n\"373141\";\"Кадугли\";\"other\"\n\"373141\";\"كادقلى\";\"other\"\n\"373303\";\"Juba\";\"main\"\n\"373303\";\"Dzhuba\";\"other\"\n\"373303\";\"Goba\";\"other\"\n\"373303\";\"Uula\";\"other\"\n\"373303\";\"Джуба\";\"other\"\n\"374739\";\"Gogrial\";\"main\"\n\"374739\";\"Gogriale\";\"other\"\n\"374739\";\"Qaqriyal\";\"other\"\n\"374739\";\"Гогриале\";\"other\"\n\"375046\";\"Gebeit\";\"main\"\n\"375046\";\"Jabet\";\"other\"\n\"375046\";\"Jabēt\";\"other\"\n\"375192\";\"Jalqani\";\"main\"\n\"375192\";\"Galgani\";\"other\"\n\"376332\";\"Doka\";\"main\"\n\"376450\";\"Dilling\";\"main\"\n\"376450\";\"Ad Dalanj\";\"other\"\n\"376450\";\"Диллинг\";\"other\"\n\"377039\";\"Port Sudan\";\"main\"\n\"377039\";\"Bur Sudan\";\"other\"\n\"377039\";\"Burt Sudan\";\"other\"\n\"377039\";\"Būr Sūdān\";\"other\"\n\"377039\";\"Būrt Sūdān\";\"other\"\n\"377039\";\"New Sawakin\";\"other\"\n\"377039\";\"New Sawâkin\";\"other\"\n\"377039\";\"Port-Sudan\";\"other\"\n\"377039\";\"Shaikh Barghuth\";\"other\"\n\"377039\";\"Shaikh Barghūth\";\"other\"\n\"377039\";\"Shaykh Burghuth\";\"other\"\n\"377039\";\"Shaykh Burghūth\";\"other\"\n\"377039\";\"Sheikh Barghuth\";\"other\"\n\"377039\";\"Sheikh Barghūth\";\"other\"\n\"377039\";\"bwr swdan\";\"other\"\n\"377039\";\"bwrtswdan\";\"other\"\n\"377039\";\"potosudan\";\"other\"\n\"377039\";\"Порт-Судан\";\"other\"\n\"377039\";\"بور سودان\";\"other\"\n\"377039\";\"بورتسودان\";\"other\"\n\"377039\";\"ポートスーダン\";\"other\"\n\"377241\";\"Bor\";\"main\"\n\"377472\";\"Bentiu\";\"main\"\n\"377472\";\"Bantiyo\";\"other\"\n\"377472\";\"Kilwal\";\"other\"\n\"377472\";\"Meshra` Bentiu\";\"other\"\n\"377472\";\"Meshra‘ Bentiu\";\"other\"\n\"377690\";\"Berber\";\"main\"\n\"377690\";\"Barbar\";\"other\"\n\"377724\";\"Bārah\";\"main\"\n\"377724\";\"Barah\";\"ascii\"\n\"377724\";\"Bara\";\"other\"\n\"377724\";\"Bāra\";\"other\"\n\"378231\";\"Madent Atbara\";\"main\"\n\"378231\";\"Atbara\";\"other\"\n\"378231\";\"Atbarah\";\"other\"\n\"378231\";\"Atbare\";\"other\"\n\"378231\";\"`Atbarah\";\"other\"\n\"378231\";\"Атбаре\";\"other\"\n\"378231\";\"عطبرة\";\"other\"\n\"378231\";\"‘Aţbarah\";\"other\"\n\"378271\";\"As Sūkī\";\"main\"\n\"378271\";\"As Suki\";\"ascii\"\n\"378271\";\"Es Suki\";\"other\"\n\"378459\";\"Ar Ruseris\";\"main\"\n\"378459\";\"Ar Roseris\";\"other\"\n\"378459\";\"Ar Rusayris\";\"other\"\n\"378459\";\"Ar Ruşayriş\";\"other\"\n\"378459\";\"Er Roseires\";\"other\"\n\"378459\";\"Ruseres\";\"other\"\n\"378459\";\"Ruṣêreṣ\";\"other\"\n\"378493\";\"Ar Rahad\";\"main\"\n\"378493\";\"Er Rahad\";\"other\"\n\"378493\";\"Rahad\";\"other\"\n\"378502\";\"Aroma\";\"main\"\n\"378543\";\"Argo\";\"main\"\n\"378543\";\"Arqo\";\"other\"\n\"378699\";\"An Nuhūd\";\"main\"\n\"378699\";\"An Nuhud\";\"ascii\"\n\"378699\";\"An Nahud\";\"other\"\n\"378699\";\"An Nahūd\";\"other\"\n\"378699\";\"En Nahud\";\"other\"\n\"378699\";\"En Nahūd\";\"other\"\n\"378699\";\"Nahad\";\"other\"\n\"379003\";\"El Obeid\";\"main\"\n\"379003\";\"Al Obayyid\";\"other\"\n\"379003\";\"Al Ubayd\";\"other\"\n\"379003\";\"Al Ubayyid\";\"other\"\n\"379003\";\"Al Ubayyiḑ\";\"other\"\n\"379003\";\"Al-Ubayyid\";\"other\"\n\"379003\";\"Al-`Obed\";\"other\"\n\"379003\";\"Al-‘Obêd\";\"other\"\n\"379003\";\"El Ubeiyad\";\"other\"\n\"379003\";\"`Ubed\";\"other\"\n\"379003\";\"alaby\";\"other\"\n\"379003\";\"Ел Обеид\";\"other\"\n\"379003\";\"الأبي\";\"other\"\n\"379003\";\"‘Ubêd\";\"other\"\n\"379014\";\"Al Qiţena\";\"main\"\n\"379014\";\"Al Qitena\";\"ascii\"\n\"379014\";\"Al Qutaynah\";\"other\"\n\"379014\";\"Al Quţaynah\";\"other\"\n\"379014\";\"El Geteina\";\"other\"\n\"379014\";\"El Qeteina\";\"other\"\n\"379062\";\"Gedaref\";\"main\"\n\"379062\";\"Al Qadarif\";\"other\"\n\"379062\";\"Al Qaḑārif\";\"other\"\n\"379062\";\"Al-Qadarif\";\"other\"\n\"379062\";\"El Gedaref\";\"other\"\n\"379062\";\"alqdarfy\";\"other\"\n\"379062\";\"القضارفي\";\"other\"\n\"379080\";\"Al Masallamiyya\";\"main\"\n\"379080\";\"Al Musallamiyah\";\"other\"\n\"379080\";\"Al Musallamīyah\";\"other\"\n\"379080\";\"El Mesellemiya\";\"other\"\n\"379080\";\"Mesellemiya\";\"other\"\n\"379080\";\"Messelemiya\";\"other\"\n\"379102\";\"Al Mijlad\";\"main\"\n\"379102\";\"Al Mujlad\";\"other\"\n\"379102\";\"El Muglad\";\"other\"\n\"379102\";\"Muglad\";\"other\"\n\"379127\";\"El Matama\";\"main\"\n\"379127\";\"Al Matamma\";\"other\"\n\"379127\";\"Al Matammah\";\"other\"\n\"379127\";\"El Metemma\";\"other\"\n\"379127\";\"Matammah\";\"other\"\n\"379127\";\"Maṭammah\";\"other\"\n\"379127\";\"Metemma\";\"other\"\n\"379149\";\"Al Manāqil\";\"main\"\n\"379149\";\"Al Manaqil\";\"ascii\"\n\"379149\";\"El Managil\";\"other\"\n\"379149\";\"El Manaqil\";\"other\"\n\"379149\";\"El Manāqil\";\"other\"\n\"379149\";\"Manaqil\";\"other\"\n\"379198\";\"Al Lagowa\";\"main\"\n\"379198\";\"Al Lagawa\";\"other\"\n\"379198\";\"Al Lagāwa\";\"other\"\n\"379198\";\"El Lagowa\";\"other\"\n\"379252\";\"Khartoum\";\"main\"\n\"379252\";\"Al Khartum\";\"other\"\n\"379252\";\"Al Kharţūm\";\"other\"\n\"379252\";\"Al Khurtum\";\"other\"\n\"379252\";\"Al Khurţūm\";\"other\"\n\"379252\";\"Cartum\";\"other\"\n\"379252\";\"Cartúm\";\"other\"\n\"379252\";\"Chartoum\";\"other\"\n\"379252\";\"Chartum\";\"other\"\n\"379252\";\"Chartumas\";\"other\"\n\"379252\";\"Chartúm\";\"other\"\n\"379252\";\"Hartum\";\"other\"\n\"379252\";\"Hartumo\";\"other\"\n\"379252\";\"Jartum\";\"other\"\n\"379252\";\"Kartum\";\"other\"\n\"379252\";\"Kartúm\";\"other\"\n\"379252\";\"Khartoem\";\"other\"\n\"379252\";\"Khartoun\";\"other\"\n\"379252\";\"Khartum\";\"other\"\n\"379252\";\"Khartun - alkhrtwm\";\"other\"\n\"379252\";\"Khartún - الخرطوم\";\"other\"\n\"379252\";\"haleutum\";\"other\"\n\"379252\";\"harutsumu\";\"other\"\n\"379252\";\"hrtwm\";\"other\"\n\"379252\";\"karttaum\";\"other\"\n\"379252\";\"ke tu mu\";\"other\"\n\"379252\";\"khartwm\";\"other\"\n\"379252\";\"khrtwm\";\"other\"\n\"379252\";\"Ĥartumo\";\"other\"\n\"379252\";\"Χαρτούμ\";\"other\"\n\"379252\";\"Картум\";\"other\"\n\"379252\";\"Хартум\";\"other\"\n\"379252\";\"חרטום\";\"other\"\n\"379252\";\"خارطوم\";\"other\"\n\"379252\";\"خرطوم\";\"other\"\n\"379252\";\"கார்த்தௌம்\";\"other\"\n\"379252\";\"ཁར་ཏུམ\";\"other\"\n\"379252\";\"ካርቱም\";\"other\"\n\"379252\";\"ハルツーム\";\"other\"\n\"379252\";\"喀土穆\";\"other\"\n\"379252\";\"하르툼\";\"other\"\n\"379261\";\"Al Kiremit al ‘Arakiyyīn\";\"main\"\n\"379261\";\"Al Kiremit al `Arakiyyin\";\"ascii\"\n\"379261\";\"Al Kereimet\";\"other\"\n\"379261\";\"El Kereimet\";\"other\"\n\"379261\";\"Kereimet\";\"other\"\n\"379272\";\"Al Kawa\";\"main\"\n\"379272\";\"Al Kawah\";\"other\"\n\"379272\";\"El Kawa\";\"other\"\n\"379272\";\"Kawa\";\"other\"\n\"379303\";\"El Geneina\";\"main\"\n\"379303\";\"Aj Jinena\";\"other\"\n\"379303\";\"Aj Jinēna\";\"other\"\n\"379303\";\"Al Geneina\";\"other\"\n\"379303\";\"Al Jeneina\";\"other\"\n\"379303\";\"Al Jinēna\";\"other\"\n\"379303\";\"Al Junaynah\";\"other\"\n\"379303\";\"Geneina\";\"other\"\n\"379303\";\"Geneina Fort\";\"other\"\n\"379406\";\"Al Hilāliyya\";\"main\"\n\"379406\";\"Al Hilaliyya\";\"ascii\"\n\"379406\";\"Al Hilaliyah\";\"other\"\n\"379406\";\"Al Hilālīyah\";\"other\"\n\"379406\";\"El Hilaliya\";\"other\"\n\"379406\";\"El Hilāliya\";\"other\"\n\"379406\";\"Hilaliya\";\"other\"\n\"379416\";\"Al Ḩawātah\";\"main\"\n\"379416\";\"Al Hawatah\";\"ascii\"\n\"379416\";\"Al Hawwata\";\"other\"\n\"379416\";\"El Hawata\";\"other\"\n\"379427\";\"Al Ḩaşāḩīşa\";\"main\"\n\"379427\";\"Al Hasahisa\";\"ascii\"\n\"379427\";\"El Hasaheisa\";\"other\"\n\"379427\";\"El Hasiheisa\";\"other\"\n\"379427\";\"Hasiheisa\";\"other\"\n\"379535\";\"Al Fūlah\";\"main\"\n\"379535\";\"Al Fulah\";\"ascii\"\n\"379535\";\"Al-Fula\";\"other\"\n\"379535\";\"El Fula\";\"other\"\n\"379535\";\"Rigl el Fula\";\"other\"\n\"379535\";\"Rijl Al Fula\";\"other\"\n\"379555\";\"El Fasher\";\"main\"\n\"379555\";\"Al Fashir\";\"other\"\n\"379555\";\"Al Fāshir\";\"other\"\n\"379555\";\"Al-Faschir\";\"other\"\n\"379555\";\"Al-Fashir\";\"other\"\n\"379555\";\"Ehl'-Fashir\";\"other\"\n\"379555\";\"Tendelti\";\"other\"\n\"379555\";\"Эль-Фашир\";\"other\"\n\"379630\";\"El Bauga\";\"main\"\n\"379630\";\"Al Bauga\";\"other\"\n\"380129\";\"Ad Diwem\";\"main\"\n\"380129\";\"Ad Duwaym\";\"other\"\n\"380129\";\"Ad Duwem\";\"other\"\n\"380129\";\"Ad Duwēm\";\"other\"\n\"380129\";\"Dueim\";\"other\"\n\"380129\";\"Ed Dueim\";\"other\"\n\"380151\";\"Ad Dindar\";\"main\"\n\"380173\";\"Ed Damer\";\"main\"\n\"380173\";\"Ad Damar\";\"other\"\n\"380173\";\"Ad Damir\";\"other\"\n\"380173\";\"Ad Dāmir\";\"other\"\n\"380173\";\"Ad-Damir\";\"other\"\n\"380173\";\"El Damar\";\"other\"\n\"380174\";\"Ed Damazin\";\"main\"\n\"380174\";\"Ad Damazin\";\"other\"\n\"380174\";\"Ad Damāzīn\";\"other\"\n\"380174\";\"Ad-Damazin\";\"other\"\n\"380174\";\"Damazin\";\"other\"\n\"380174\";\"aldmazyn\";\"other\"\n\"380174\";\"Ед Дамазин\";\"other\"\n\"380174\";\"الدمازين\";\"other\"\n\"380186\";\"Ad Dabbah\";\"main\"\n\"380186\";\"Ad Dabba\";\"other\"\n\"380186\";\"Al Dabbah\";\"other\"\n\"380186\";\"Dabbah\";\"other\"\n\"380186\";\"Debba\";\"other\"\n\"380186\";\"Debbat el Muaskar\";\"other\"\n\"380186\";\"Debbeh\";\"other\"\n\"380186\";\"Ed Debba\";\"other\"\n\"380348\";\"Abū Zabad\";\"main\"\n\"380348\";\"Abu Zabad\";\"ascii\"\n\"380757\";\"Abu Jibeha\";\"main\"\n\"380757\";\"Abu Gibeyah\";\"other\"\n\"380757\";\"Abu Gubeiha\";\"other\"\n\"380757\";\"Abu Jubayhah\";\"other\"\n\"380757\";\"Abu-Gebeiha\";\"other\"\n\"380757\";\"Abū Jubayhah\";\"other\"\n\"601972\";\"Viken\";\"main\"\n\"602137\";\"Ursviken\";\"main\"\n\"602137\";\"Ursvik\";\"other\"\n\"602150\";\"Umeå\";\"main\"\n\"602150\";\"Umea\";\"ascii\"\n\"602150\";\"Owmeo\";\"other\"\n\"602150\";\"Umeo\";\"other\"\n\"602150\";\"Uumaja\";\"other\"\n\"602150\";\"umeo\";\"other\"\n\"602150\";\"Умео\";\"other\"\n\"602150\";\"Ումեո\";\"other\"\n\"602150\";\"ウメオ\";\"other\"\n\"602261\";\"Töre\";\"main\"\n\"602261\";\"Toere\";\"ascii\"\n\"602261\";\"Tore\";\"other\"\n\"602261\";\"Tøre\";\"other\"\n\"602426\";\"Täfteå\";\"main\"\n\"602426\";\"Taftea\";\"ascii\"\n\"602426\";\"Teftea\";\"other\"\n\"602426\";\"Tefteå\";\"other\"\n\"602566\";\"Storvik\";\"main\"\n\"602566\";\"Storavik\";\"other\"\n\"602566\";\"Storåvik\";\"other\"\n\"602804\";\"Södra Sunderbyn\";\"main\"\n\"602804\";\"Sodra Sunderbyn\";\"ascii\"\n\"602804\";\"Soedra Sunderbyn\";\"other\"\n\"602804\";\"Sunderbyn\";\"other\"\n\"602804\";\"Sødra Sunderbyn\";\"other\"\n\"602909\";\"Skelleftehamn\";\"main\"\n\"602913\";\"Skellefteå\";\"main\"\n\"602913\";\"Skelleftea\";\"ascii\"\n\"602913\";\"Heletti\";\"other\"\n\"602913\";\"Shelefteo\";\"other\"\n\"602913\";\"Shellefteo\";\"other\"\n\"602913\";\"Шелефтео\";\"other\"\n\"602913\";\"Шеллефтео\";\"other\"\n\"603035\";\"Råneå\";\"main\"\n\"603035\";\"Ranea\";\"ascii\"\n\"603037\";\"Sävar\";\"main\"\n\"603037\";\"Saevar\";\"ascii\"\n\"603261\";\"Rosvik\";\"main\"\n\"603291\";\"Rolfs\";\"main\"\n\"603292\";\"Roknäs\";\"main\"\n\"603292\";\"Roknas\";\"ascii\"\n\"603303\";\"Robertsfors\";\"main\"\n\"603304\";\"Röbäck\";\"main\"\n\"603304\";\"Roback\";\"ascii\"\n\"603304\";\"Robacksby\";\"other\"\n\"603304\";\"Rodback\";\"other\"\n\"603304\";\"Röbäcksby\";\"other\"\n\"603304\";\"Rödbäck\";\"other\"\n\"603448\";\"Sävast\";\"main\"\n\"603448\";\"Saevast\";\"ascii\"\n\"603570\";\"Piteå\";\"main\"\n\"603570\";\"Pitea\";\"ascii\"\n\"603570\";\"Piitime\";\"other\"\n\"603570\";\"Pitejas\";\"other\"\n\"603570\";\"Piteo\";\"other\"\n\"603570\";\"Pitėjas\";\"other\"\n\"603570\";\"Питео\";\"other\"\n\"603761\";\"Pajala\";\"main\"\n\"603814\";\"Övertorneå\";\"main\"\n\"603814\";\"OEvertornea\";\"ascii\"\n\"603814\";\"Matarenki\";\"other\"\n\"603814\";\"Ofer Torne\";\"other\"\n\"603814\";\"Ofver Tornea\";\"other\"\n\"603814\";\"Overtorne\";\"other\"\n\"603814\";\"Overtornea\";\"other\"\n\"603814\";\"Öfer Torne\";\"other\"\n\"603814\";\"Öfver Torneå\";\"other\"\n\"603814\";\"Øvertorneå\";\"other\"\n\"603919\";\"Obbola\";\"main\"\n\"604006\";\"Norrfjärden\";\"main\"\n\"604006\";\"Norrfjarden\";\"ascii\"\n\"604419\";\"Malmberget\";\"main\"\n\"604419\";\"Mal'mberge\";\"other\"\n\"604419\";\"Mal'mberger\";\"other\"\n\"604419\";\"Мальмберге\";\"other\"\n\"604419\";\"Мальмбергер\";\"other\"\n\"604490\";\"Luleå\";\"main\"\n\"604490\";\"Lulea\";\"ascii\"\n\"604490\";\"Luleju\";\"other\"\n\"604490\";\"Luleo\";\"other\"\n\"604490\";\"Luulaja\";\"other\"\n\"604490\";\"Лулео\";\"other\"\n\"604490\";\"לולאו\";\"other\"\n\"604779\";\"Långsele\";\"main\"\n\"604779\";\"Langsele\";\"ascii\"\n\"605155\";\"Kiruna\";\"main\"\n\"605155\";\"Giron\";\"other\"\n\"605155\";\"Kiiruna\";\"other\"\n\"605155\";\"Кируна\";\"other\"\n\"605393\";\"Kalix\";\"main\"\n\"605428\";\"Kåge\";\"main\"\n\"605428\";\"Kage\";\"ascii\"\n\"605647\";\"Hortlax\";\"main\"\n\"605676\";\"Holmsund\";\"main\"\n\"605859\";\"Haparanda\";\"main\"\n\"605859\";\"Haaparanta\";\"other\"\n\"605859\";\"KHAPARANDA\";\"other\"\n\"605859\";\"ХАПАРАНДА\";\"other\"\n\"606072\";\"Gammelstad\";\"main\"\n\"606072\";\"Gammelstaden\";\"other\"\n\"606086\";\"Gällivare\";\"main\"\n\"606086\";\"Gaellivare\";\"ascii\"\n\"606086\";\"Ellivare\";\"other\"\n\"606086\";\"Jaellivaara\";\"other\"\n\"606086\";\"Jellivaara\";\"other\"\n\"606086\";\"Jiellevarre\";\"other\"\n\"606086\";\"Jiellevarri\";\"other\"\n\"606086\";\"Jiellevárre\";\"other\"\n\"606086\";\"Jiellevárri\";\"other\"\n\"606086\";\"Jällivaara\";\"other\"\n\"606086\";\"Vahcir\";\"other\"\n\"606086\";\"Vahtjer\";\"other\"\n\"606086\";\"Váhtjer\";\"other\"\n\"606086\";\"Váhčir\";\"other\"\n\"606086\";\"Елливаре\";\"other\"\n\"606141\";\"Forsbacka\";\"main\"\n\"606249\";\"Ersmark\";\"main\"\n\"606350\";\"Byske\";\"main\"\n\"606363\";\"Burträsk\";\"main\"\n\"606363\";\"Burtraesk\";\"ascii\"\n\"606370\";\"Bureå\";\"main\"\n\"606370\";\"Burea\";\"ascii\"\n\"606507\";\"Boliden\";\"main\"\n\"606531\";\"Boden\";\"main\"\n\"606531\";\"Puuti\";\"other\"\n\"606531\";\"Suttes\";\"other\"\n\"606638\";\"Bergsviken\";\"main\"\n\"606642\";\"Södra Bergsbyn\";\"main\"\n\"606642\";\"Soedra Bergsbyn\";\"ascii\"\n\"606649\";\"Bergnäset\";\"main\"\n\"606649\";\"Bergnaset\";\"ascii\"\n\"606714\";\"Backa\";\"main\"\n\"606834\";\"Älvsbyn\";\"main\"\n\"606834\";\"AElvsbyn\";\"ascii\"\n\"606834\";\"Elfsby\";\"other\"\n\"2599289\";\"Alunda\";\"main\"\n\"2599299\";\"Anneberg\";\"main\"\n\"2599415\";\"Björklinge\";\"main\"\n\"2599415\";\"Bjorklinge\";\"ascii\"\n\"2599415\";\"Bjoerklinge\";\"other\"\n\"2599415\";\"Bjørklinge\";\"other\"\n\"2599418\";\"Marieberg\";\"main\"\n\"2602446\";\"Marielund\";\"main\"\n\"2662149\";\"Ystad\";\"main\"\n\"2662149\";\"Istadium\";\"other\"\n\"2662149\";\"Ystao\";\"other\"\n\"2662149\";\"istad\";\"other\"\n\"2662149\";\"yu si ta de\";\"other\"\n\"2662149\";\"Истад\";\"other\"\n\"2662149\";\"于斯塔德\";\"other\"\n\"2662324\";\"Vrigstad\";\"main\"\n\"2662517\";\"Vittsjö\";\"main\"\n\"2662517\";\"Vittsjo\";\"ascii\"\n\"2662517\";\"Vittsjoe\";\"other\"\n\"2662517\";\"Vittsjon\";\"other\"\n\"2662517\";\"Vittsjön\";\"other\"\n\"2662517\";\"Vittsjø\";\"other\"\n\"2662659\";\"Vislanda\";\"main\"\n\"2662666\";\"Viskafors\";\"main\"\n\"2662689\";\"Visby\";\"main\"\n\"2662689\";\"Visbi\";\"other\"\n\"2662689\";\"Visbia\";\"other\"\n\"2662689\";\"Visbis\";\"other\"\n\"2662689\";\"Visbju\";\"other\"\n\"2662689\";\"visbus\";\"other\"\n\"2662689\";\"visybis\";\"other\"\n\"2662689\";\"vu~isubyu\";\"other\"\n\"2662689\";\"Висби\";\"other\"\n\"2662689\";\"Висбю\";\"other\"\n\"2662689\";\"ヴィスビュー\";\"other\"\n\"2662706\";\"Virserum\";\"main\"\n\"2662758\";\"Vintrosa\";\"main\"\n\"2662778\";\"Vinslöv\";\"main\"\n\"2662778\";\"Vinslov\";\"ascii\"\n\"2662778\";\"Vinsloev\";\"other\"\n\"2662778\";\"Vinsløv\";\"other\"\n\"2662795\";\"Vinninga\";\"main\"\n\"2662830\";\"Vingåker\";\"main\"\n\"2662830\";\"Vingaker\";\"ascii\"\n\"2662851\";\"Vindeln\";\"main\"\n\"2662881\";\"Vimmerby\";\"main\"\n\"2662935\";\"Vilhelmina\";\"main\"\n\"2662935\";\"Vualtjere\";\"other\"\n\"2662996\";\"Vikingstad\";\"main\"\n\"2663077\";\"Vikarbyn\";\"main\"\n\"2663161\";\"Vi\";\"main\"\n\"2663161\";\"Viforsen\";\"other\"\n\"2663254\";\"Vibble\";\"main\"\n\"2663293\";\"Vetlanda\";\"main\"\n\"2663293\";\"Vitlanda\";\"other\"\n\"2663399\";\"Vellinge\";\"main\"\n\"2663399\";\"Vallinge\";\"other\"\n\"2663399\";\"Vällinge\";\"other\"\n\"2663432\";\"Vejbystrand\";\"main\"\n\"2663432\";\"Saltoren\";\"other\"\n\"2663432\";\"Saltören\";\"other\"\n\"2663435\";\"Veinge\";\"main\"\n\"2663482\";\"Veddige\";\"main\"\n\"2663514\";\"Veberöd\";\"main\"\n\"2663514\";\"Veberod\";\"ascii\"\n\"2663514\";\"Veberoed\";\"other\"\n\"2663514\";\"Veberød\";\"other\"\n\"2663536\";\"Växjö\";\"main\"\n\"2663536\";\"Vaexjoe\";\"ascii\"\n\"2663536\";\"Vekshe\";\"other\"\n\"2663536\";\"Vexio\";\"other\"\n\"2663536\";\"Vexiö\";\"other\"\n\"2663536\";\"Векше\";\"other\"\n\"2663540\";\"Vaxholm\";\"main\"\n\"2663540\";\"Waxholm\";\"other\"\n\"2663585\";\"Vattholma\";\"main\"\n\"2664203\";\"Västervik\";\"main\"\n\"2664203\";\"Vaestervik\";\"ascii\"\n\"2664203\";\"Vestrovicum\";\"other\"\n\"2664339\";\"Västerhaninge\";\"main\"\n\"2664339\";\"Vasterhaninge\";\"ascii\"\n\"2664454\";\"Västerås\";\"main\"\n\"2664454\";\"Vasteras\";\"ascii\"\n\"2664454\";\"Arosia\";\"other\"\n\"2664454\";\"Vaesteras\";\"other\"\n\"2664454\";\"Vesteros\";\"other\"\n\"2664454\";\"Vesterosa\";\"other\"\n\"2664454\";\"Вестерос\";\"other\"\n\"2664783\";\"Vårsta\";\"main\"\n\"2664783\";\"Varsta\";\"ascii\"\n\"2664855\";\"Värnamo\";\"main\"\n\"2664855\";\"Varnamo\";\"ascii\"\n\"2664921\";\"Vargön\";\"main\"\n\"2664921\";\"Vargon\";\"ascii\"\n\"2664921\";\"Varagon\";\"other\"\n\"2664921\";\"Varagons\";\"other\"\n\"2664921\";\"Varagön\";\"other\"\n\"2664921\";\"Vargoen\";\"other\"\n\"2664921\";\"Vargøn\";\"other\"\n\"2664939\";\"Vårgårda\";\"main\"\n\"2664939\";\"Vargarda\";\"ascii\"\n\"2664996\";\"Varberg\";\"main\"\n\"2664996\";\"Varbergas\";\"other\"\n\"2664996\";\"Varburg\";\"other\"\n\"2664996\";\"Варберг\";\"other\"\n\"2665018\";\"Vara\";\"main\"\n\"2665018\";\"Wara\";\"other\"\n\"2665063\";\"Vansbro\";\"main\"\n\"2665063\";\"Vansboro\";\"other\"\n\"2665090\";\"Vännäsby\";\"main\"\n\"2665090\";\"Vannasby\";\"ascii\"\n\"2665093\";\"Vännäs\";\"main\"\n\"2665093\";\"Vaennaes\";\"ascii\"\n\"2665171\";\"Vänersborg\";\"main\"\n\"2665171\";\"Vanersborg\";\"ascii\"\n\"2665171\";\"Venersborg\";\"other\"\n\"2665171\";\"Венерсборг\";\"other\"\n\"2665452\";\"Vallentuna\";\"main\"\n\"2665487\";\"Vallda\";\"main\"\n\"2665578\";\"Valla\";\"main\"\n\"2665675\";\"Valdemarsvik\";\"main\"\n\"2665691\";\"Valbo\";\"main\"\n\"2665708\";\"Vålberg\";\"main\"\n\"2665708\";\"Valberg\";\"ascii\"\n\"2665844\";\"Vagnhärad\";\"main\"\n\"2665844\";\"Vagnharad\";\"ascii\"\n\"2665857\";\"Vaggeryd\";\"main\"\n\"2665902\";\"Vadstena\";\"main\"\n\"2665902\";\"Vadstenium\";\"other\"\n\"2665902\";\"Вадстена\";\"other\"\n\"2666199\";\"Uppsala\";\"main\"\n\"2666199\";\"Uppsalir\";\"other\"\n\"2666199\";\"Upsala\";\"other\"\n\"2666199\";\"Upsalia\";\"other\"\n\"2666199\";\"Upsalo\";\"other\"\n\"2666199\";\"ubsalla\";\"other\"\n\"2666199\";\"upusara\";\"other\"\n\"2666199\";\"Упсала\";\"other\"\n\"2666199\";\"Ուփսալա\";\"other\"\n\"2666199\";\"אופסלה\";\"other\"\n\"2666199\";\"ウプサラ\";\"other\"\n\"2666199\";\"웁살라\";\"other\"\n\"2666238\";\"Upplands-Väsby\";\"main\"\n\"2666238\";\"Upplands-Vasby\";\"ascii\"\n\"2666238\";\"Uplands Vasby\";\"other\"\n\"2666238\";\"Uplands Väsby\";\"other\"\n\"2666238\";\"Vasby\";\"other\"\n\"2666238\";\"Vasby Villastad\";\"other\"\n\"2666238\";\"Väsby\";\"other\"\n\"2666238\";\"Väsby Villastad\";\"other\"\n\"2666264\";\"Hjärup\";\"main\"\n\"2666264\";\"Hjaerup\";\"ascii\"\n\"2666493\";\"Ulricehamn\";\"main\"\n\"2666670\";\"Uddevalla\";\"main\"\n\"2666670\";\"Уддевалла\";\"other\"\n\"2666771\";\"Tyringe\";\"main\"\n\"2666823\";\"Tygelsjö\";\"main\"\n\"2666823\";\"Tygelsjo\";\"ascii\"\n\"2666823\";\"Tygelsjoe\";\"other\"\n\"2666823\";\"Tygelsjø\";\"other\"\n\"2666950\";\"Tvååker\";\"main\"\n\"2666950\";\"Tvaaker\";\"ascii\"\n\"2667094\";\"Tumba\";\"main\"\n\"2667094\";\"Тумба\";\"other\"\n\"2667253\";\"Trosa\";\"main\"\n\"2667264\";\"Trönninge\";\"main\"\n\"2667264\";\"Troenninge\";\"ascii\"\n\"2667264\";\"Tronninge\";\"other\"\n\"2667264\";\"Tronningeby\";\"other\"\n\"2667264\";\"Trönningeby\";\"other\"\n\"2667264\";\"Trønninge\";\"other\"\n\"2667303\";\"Trollhättan\";\"main\"\n\"2667303\";\"Trollhattan\";\"ascii\"\n\"2667328\";\"Gimo\";\"main\"\n\"2667402\";\"Trelleborg\";\"main\"\n\"2667402\";\"Tralleborg\";\"other\"\n\"2667402\";\"Treleborg\";\"other\"\n\"2667402\";\"Trälleborg\";\"other\"\n\"2667402\";\"te lei lei bao\";\"other\"\n\"2667402\";\"Трелеборг\";\"other\"\n\"2667402\";\"特雷勒堡\";\"other\"\n\"2667405\";\"Trekanten\";\"main\"\n\"2667499\";\"Träslövsläge\";\"main\"\n\"2667499\";\"Traslovslage\";\"ascii\"\n\"2667599\";\"Tranemo\";\"main\"\n\"2667628\";\"Tranås\";\"main\"\n\"2667628\";\"Tranas\";\"ascii\"\n\"2667628\";\"Tranas Kyarn\";\"other\"\n\"2667628\";\"Tranås Kyarn\";\"other\"\n\"2667757\";\"Torup\";\"main\"\n\"2667809\";\"Torslanda\";\"main\"\n\"2667847\";\"Torshälla\";\"main\"\n\"2667847\";\"Torshalla\";\"ascii\"\n\"2667876\";\"Torsby\";\"main\"\n\"2667904\";\"Torsås\";\"main\"\n\"2667904\";\"Torsas\";\"ascii\"\n\"2668180\";\"Tormestorp\";\"main\"\n\"2668180\";\"Tormastorp\";\"other\"\n\"2668247\";\"Töreboda\";\"main\"\n\"2668247\";\"Toereboda\";\"ascii\"\n\"2668247\";\"Toreboda\";\"other\"\n\"2668247\";\"Tøreboda\";\"other\"\n\"2668365\";\"Tomelilla\";\"main\"\n\"2668429\";\"Tollarp\";\"main\"\n\"2668552\";\"Töcksfors\";\"main\"\n\"2668552\";\"Toecksfors\";\"ascii\"\n\"2668552\";\"Tocksfors\";\"other\"\n\"2668552\";\"Tøcksfors\";\"other\"\n\"2669019\";\"Tingsryd\";\"main\"\n\"2669047\";\"Timrå\";\"main\"\n\"2669047\";\"Timra\";\"ascii\"\n\"2669057\";\"Timmernabben\";\"main\"\n\"2669086\";\"Tillberga\";\"main\"\n\"2669098\";\"Tierp\";\"main\"\n\"2669113\";\"Tidaholm\";\"main\"\n\"2669118\";\"Tibro\";\"main\"\n\"2669193\";\"Tenhult\";\"main\"\n\"2669254\";\"Teckomatorp\";\"main\"\n\"2669342\";\"Tärnsjö\";\"main\"\n\"2669342\";\"Tarnsjo\";\"ascii\"\n\"2669415\";\"Tanumshede\";\"main\"\n\"2669772\";\"Täby\";\"main\"\n\"2669772\";\"Taby\";\"ascii\"\n\"2669788\";\"Taberg\";\"main\"\n\"2669788\";\"Smalands Taberg\";\"other\"\n\"2669788\";\"Smålands Taberg\";\"other\"\n\"2670044\";\"Svenljunga\";\"main\"\n\"2670061\";\"Sveg\";\"main\"\n\"2670128\";\"Svedala\";\"main\"\n\"2670278\";\"Svärtinge\";\"main\"\n\"2670278\";\"Svartinge\";\"ascii\"\n\"2670278\";\"Svartinge Villasamhalle\";\"other\"\n\"2670278\";\"Svärtinge Villasamhälle\";\"other\"\n\"2670403\";\"Svärdsjö\";\"main\"\n\"2670403\";\"Svardsjo\";\"ascii\"\n\"2670470\";\"Svängsta\";\"main\"\n\"2670470\";\"Svangsta\";\"ascii\"\n\"2670478\";\"Svanesund\";\"main\"\n\"2670536\";\"Svalsta\";\"main\"\n\"2670542\";\"Svalöv\";\"main\"\n\"2670542\";\"Svaloev\";\"ascii\"\n\"2670542\";\"Svalof\";\"other\"\n\"2670542\";\"Svalov\";\"other\"\n\"2670542\";\"Svalöf\";\"other\"\n\"2670542\";\"Svaløv\";\"other\"\n\"2670603\";\"Surte\";\"main\"\n\"2670613\";\"Surahammar\";\"main\"\n\"2670710\";\"Sunne\";\"main\"\n\"2670781\";\"Sundsvall\";\"main\"\n\"2670781\";\"Sundsvall'\";\"other\"\n\"2670781\";\"Сундсвалль\";\"other\"\n\"2670833\";\"Sundsbruk\";\"main\"\n\"2670833\";\"Sund\";\"other\"\n\"2670995\";\"Styrsö\";\"main\"\n\"2670995\";\"Styrso\";\"ascii\"\n\"2670995\";\"Styrsoe\";\"other\"\n\"2670995\";\"Styrsø\";\"other\"\n\"2671055\";\"Sturkö\";\"main\"\n\"2671055\";\"Sturko\";\"ascii\"\n\"2671055\";\"Sturkoe\";\"other\"\n\"2671055\";\"Sturkø\";\"other\"\n\"2671060\";\"Sturefors\";\"main\"\n\"2671206\";\"Strövelstorp\";\"main\"\n\"2671206\";\"Strovelstorp\";\"ascii\"\n\"2671206\";\"Stroevelstorp\";\"other\"\n\"2671206\";\"Strøvelstorp\";\"other\"\n\"2671221\";\"Strömsund\";\"main\"\n\"2671221\";\"Stroemsund\";\"ascii\"\n\"2671221\";\"Straejmie\";\"other\"\n\"2671221\";\"Stromsund\";\"other\"\n\"2671221\";\"Strømsund\";\"other\"\n\"2671224\";\"Strömstad\";\"main\"\n\"2671224\";\"Stroemstad\";\"ascii\"\n\"2671224\";\"Stromstad\";\"other\"\n\"2671224\";\"Strømstad\";\"other\"\n\"2671230\";\"Strömsnäsbruk\";\"main\"\n\"2671230\";\"Stromsnasbruk\";\"ascii\"\n\"2671392\";\"Strängnäs\";\"main\"\n\"2671392\";\"Strangnas\";\"ascii\"\n\"2671392\";\"Strangnass\";\"other\"\n\"2671392\";\"Strängnäss\";\"other\"\n\"2671490\";\"Storvreta\";\"main\"\n\"2671490\";\"Storvreld\";\"other\"\n\"2671530\";\"Storuman\";\"main\"\n\"2671530\";\"Luspie\";\"other\"\n\"2672053\";\"Storfors\";\"main\"\n\"2673076\";\"Stora Höga\";\"main\"\n\"2673076\";\"Stora Hoga\";\"ascii\"\n\"2673076\";\"Stora Hoega\";\"other\"\n\"2673076\";\"Stora Høga\";\"other\"\n\"2673621\";\"Storå\";\"main\"\n\"2673621\";\"Stora\";\"ascii\"\n\"2673629\";\"Stöpen\";\"main\"\n\"2673629\";\"Stopen\";\"ascii\"\n\"2673629\";\"Stoepen\";\"other\"\n\"2673629\";\"Støpen\";\"other\"\n\"2673693\";\"Stockvik\";\"main\"\n\"2673693\";\"Stockviksverken\";\"other\"\n\"2673730\";\"Stockholm\";\"main\"\n\"2673730\";\"Estocolm\";\"other\"\n\"2673730\";\"Estocolme\";\"other\"\n\"2673730\";\"Estocolmo\";\"other\"\n\"2673730\";\"Estocolmo - Stockholm\";\"other\"\n\"2673730\";\"Estocòlme\";\"other\"\n\"2673730\";\"Estokolmo\";\"other\"\n\"2673730\";\"Holmia\";\"other\"\n\"2673730\";\"STO\";\"other\"\n\"2673730\";\"Stoccolma\";\"other\"\n\"2673730\";\"Stockholbma\";\"other\"\n\"2673730\";\"Stocolm\";\"other\"\n\"2673730\";\"Stokcholme\";\"other\"\n\"2673730\";\"Stokgol'm\";\"other\"\n\"2673730\";\"Stokholm\";\"other\"\n\"2673730\";\"Stokholma\";\"other\"\n\"2673730\";\"Stokholmas\";\"other\"\n\"2673730\";\"Stokholmo\";\"other\"\n\"2673730\";\"Stokkholm\";\"other\"\n\"2673730\";\"Stokkholmur\";\"other\"\n\"2673730\";\"Stokkhólm\";\"other\"\n\"2673730\";\"Stokkhólmur\";\"other\"\n\"2673730\";\"Stokolm\";\"other\"\n\"2673730\";\"Stócólm\";\"other\"\n\"2673730\";\"Sztokholm\";\"other\"\n\"2673730\";\"Sztokhòlm\";\"other\"\n\"2673730\";\"Tukholma\";\"other\"\n\"2673730\";\"astkhlm\";\"other\"\n\"2673730\";\"seutogholleum\";\"other\"\n\"2673730\";\"si de ge er mo\";\"other\"\n\"2673730\";\"stokahoma\";\"other\"\n\"2673730\";\"stwkhwlm\";\"other\"\n\"2673730\";\"stwqhwlm\";\"other\"\n\"2673730\";\"stxkholm\";\"other\"\n\"2673730\";\"sutokkuhorumu\";\"other\"\n\"2673730\";\"Štokholm\";\"other\"\n\"2673730\";\"Στοκχόλμη\";\"other\"\n\"2673730\";\"Стокгольм\";\"other\"\n\"2673730\";\"Стокхолм\";\"other\"\n\"2673730\";\"Ստոքհոլմ\";\"other\"\n\"2673730\";\"שטוקהולם\";\"other\"\n\"2673730\";\"استکهلم\";\"other\"\n\"2673730\";\"ستوكهولم\";\"other\"\n\"2673730\";\"ستوكھولم\";\"other\"\n\"2673730\";\"ܣܬܘܟܗܘܠܡ\";\"other\"\n\"2673730\";\"स्टॉकहोम\";\"other\"\n\"2673730\";\"สตอกโฮล์ม\";\"other\"\n\"2673730\";\"სტოკჰოლმი\";\"other\"\n\"2673730\";\"ストックホルム\";\"other\"\n\"2673730\";\"斯德哥尔摩\";\"other\"\n\"2673730\";\"스톡홀름\";\"other\"\n\"2673758\";\"Stockaryd\";\"main\"\n\"2673829\";\"Stigtomta\";\"main\"\n\"2673875\";\"Stenungsund\";\"main\"\n\"2673952\";\"Stenstorp\";\"main\"\n\"2674181\";\"Stenkullen\";\"main\"\n\"2674209\";\"Stenhamra\";\"main\"\n\"2674326\";\"Stehag\";\"main\"\n\"2674594\";\"Stallarholmen\";\"main\"\n\"2674649\";\"Staffanstorp\";\"main\"\n\"2674993\";\"Sösdala\";\"main\"\n\"2674993\";\"Sosdala\";\"ascii\"\n\"2674993\";\"Soesdala\";\"other\"\n\"2674993\";\"Søsdala\";\"other\"\n\"2675079\";\"Sorsele\";\"main\"\n\"2675079\";\"Suarsa\";\"other\"\n\"2675146\";\"Sörforsa\";\"main\"\n\"2675146\";\"Sorforsa\";\"ascii\"\n\"2675146\";\"Soerforsa\";\"other\"\n\"2675146\";\"Sørforsa\";\"other\"\n\"2675280\";\"Söråker\";\"main\"\n\"2675280\";\"Soraker\";\"ascii\"\n\"2675280\";\"Soeraker\";\"other\"\n\"2675280\";\"Søråker\";\"other\"\n\"2675365\";\"Sölvesborg\";\"main\"\n\"2675365\";\"Soelvesborg\";\"ascii\"\n\"2675365\";\"Selvesborg\";\"other\"\n\"2675365\";\"Solvesborg\";\"other\"\n\"2675365\";\"Sølvesborg\";\"other\"\n\"2675365\";\"Селвесборг\";\"other\"\n\"2675408\";\"Sollentuna\";\"main\"\n\"2675416\";\"Sollefteå\";\"main\"\n\"2675416\";\"Solleftea\";\"ascii\"\n\"2675418\";\"Sollebrunn\";\"main\"\n\"2675561\";\"Södra Vi\";\"main\"\n\"2675561\";\"Sodra Vi\";\"ascii\"\n\"2675561\";\"Soedra Vi\";\"other\"\n\"2675561\";\"Sødra Vi\";\"other\"\n\"2675691\";\"Södra Sandby\";\"main\"\n\"2675691\";\"Sodra Sandby\";\"ascii\"\n\"2675691\";\"Soedra Sandby\";\"other\"\n\"2675691\";\"Sødra Sandby\";\"other\"\n\"2676176\";\"Södertälje\";\"main\"\n\"2676176\";\"Soedertaelje\";\"ascii\"\n\"2676176\";\"S'odertale\";\"other\"\n\"2676176\";\"S'odertele\";\"other\"\n\"2676176\";\"S'odertelie\";\"other\"\n\"2676176\";\"Telga australis\";\"other\"\n\"2676176\";\"Сьодертале\";\"other\"\n\"2676176\";\"Сьодертеле\";\"other\"\n\"2676176\";\"Сьодертелие\";\"other\"\n\"2676215\";\"Söderköping\";\"main\"\n\"2676215\";\"Soederkoeping\";\"ascii\"\n\"2676215\";\"Soderkoping\";\"other\"\n\"2676215\";\"Søderkøping\";\"other\"\n\"2676224\";\"Söderhamn\";\"main\"\n\"2676224\";\"Soderhamn\";\"ascii\"\n\"2676224\";\"Soederhamn\";\"other\"\n\"2676224\";\"Søderhamn\";\"other\"\n\"2676238\";\"Söderfors\";\"main\"\n\"2676238\";\"Soderfors\";\"ascii\"\n\"2676238\";\"Soederfors\";\"other\"\n\"2676238\";\"Søderfors\";\"other\"\n\"2676488\";\"Smygehamn\";\"main\"\n\"2676511\";\"Smögen\";\"main\"\n\"2676511\";\"Smoegen\";\"ascii\"\n\"2676511\";\"Smogen\";\"other\"\n\"2676511\";\"Smøgen\";\"other\"\n\"2676586\";\"Smedjebacken\";\"main\"\n\"2676592\";\"Smedby\";\"main\"\n\"2676644\";\"Smålandsstenar\";\"main\"\n\"2676644\";\"Smalandsstenar\";\"ascii\"\n\"2676700\";\"Slottsbron\";\"main\"\n\"2676700\";\"Solttsbron\";\"other\"\n\"2676731\";\"Slite\";\"main\"\n\"2677019\";\"Skutskär\";\"main\"\n\"2677019\";\"Skutskaer\";\"ascii\"\n\"2677019\";\"Stutskar\";\"other\"\n\"2677019\";\"Stutskär\";\"other\"\n\"2677025\";\"Skurup\";\"main\"\n\"2677062\";\"Skultuna\";\"main\"\n\"2677063\";\"Skultorp\";\"main\"\n\"2677234\";\"Skövde\";\"main\"\n\"2677234\";\"Skoevde\";\"ascii\"\n\"2677234\";\"Schednia\";\"other\"\n\"2677234\";\"Shevde\";\"other\"\n\"2677234\";\"Skofde\";\"other\"\n\"2677234\";\"Skovd\";\"other\"\n\"2677234\";\"Skovde\";\"other\"\n\"2677234\";\"Sköfde\";\"other\"\n\"2677234\";\"Skövd\";\"other\"\n\"2677234\";\"Skøvde\";\"other\"\n\"2677234\";\"Шевде\";\"other\"\n\"2677239\";\"Skottsund\";\"main\"\n\"2677356\";\"Sköllersta\";\"main\"\n\"2677356\";\"Skollersta\";\"ascii\"\n\"2677356\";\"Skoellersta\";\"other\"\n\"2677356\";\"Skøllersta\";\"other\"\n\"2677370\";\"Skogstorp\";\"main\"\n\"2677456\";\"Skoghall\";\"main\"\n\"2677548\";\"Skivarp\";\"main\"\n\"2677593\";\"Skinnskatteberg\";\"main\"\n\"2677644\";\"Skillingaryd\";\"main\"\n\"2677719\";\"Skepplanda\";\"main\"\n\"2677869\";\"Skattkärr\";\"main\"\n\"2677869\";\"Skattkarr\";\"ascii\"\n\"2678129\";\"Skärhamn\";\"main\"\n\"2678129\";\"Skaerhamn\";\"ascii\"\n\"2678153\";\"Skåre\";\"main\"\n\"2678153\";\"Skare\";\"ascii\"\n\"2678153\";\"Skarelage\";\"other\"\n\"2678153\";\"Skåreläge\";\"other\"\n\"2678173\";\"Skärblacka\";\"main\"\n\"2678173\";\"Skarblacka\";\"ascii\"\n\"2678210\";\"Skara\";\"main\"\n\"2678210\";\"Скара\";\"other\"\n\"2678265\";\"Skänninge\";\"main\"\n\"2678265\";\"Skanninge\";\"ascii\"\n\"2678265\";\"Skenninge\";\"other\"\n\"2678687\";\"Sjuntorp\";\"main\"\n\"2678804\";\"Sjömarken\";\"main\"\n\"2678804\";\"Sjomarken\";\"ascii\"\n\"2678804\";\"Sjoemarken\";\"other\"\n\"2678804\";\"Sjømarken\";\"other\"\n\"2678913\";\"Sjöbo\";\"main\"\n\"2678913\";\"Sjoebo\";\"ascii\"\n\"2678913\";\"Sjobo\";\"other\"\n\"2678913\";\"Sjøbo\";\"other\"\n\"2678926\";\"Sjöberg\";\"main\"\n\"2678926\";\"Sjoberg\";\"ascii\"\n\"2678926\";\"Sjoeberg\";\"other\"\n\"2678926\";\"Sjøberg\";\"other\"\n\"2679107\";\"Simrishamn\";\"main\"\n\"2679107\";\"Cimbrorum portus\";\"other\"\n\"2679107\";\"Portus Cimbris\";\"other\"\n\"2679107\";\"Simrishavn\";\"other\"\n\"2679107\";\"Simriskhamn\";\"other\"\n\"2679107\";\"Симрисхамн\";\"other\"\n\"2679226\";\"Siljansnäs\";\"main\"\n\"2679226\";\"Siljansnas\";\"ascii\"\n\"2679302\";\"Sigtuna\";\"main\"\n\"2679302\";\"Sigtuna jaras\";\"other\"\n\"2679302\";\"Sigtuna járás\";\"other\"\n\"2679302\";\"Сигтуна\";\"other\"\n\"2679397\";\"Sibbhult\";\"main\"\n\"2679567\";\"Segeltorp\";\"main\"\n\"2679698\";\"Sävsjö\";\"main\"\n\"2679698\";\"Saevsjoe\";\"ascii\"\n\"2679721\";\"Sävja\";\"main\"\n\"2679721\";\"Saevja\";\"ascii\"\n\"2679819\";\"Sätofta\";\"main\"\n\"2679819\";\"Satofta\";\"ascii\"\n\"2679855\";\"Säter\";\"main\"\n\"2679855\";\"Saeter\";\"ascii\"\n\"2679855\";\"Satar\";\"other\"\n\"2679920\";\"Särö\";\"main\"\n\"2679920\";\"Saro\";\"ascii\"\n\"2680075\";\"Sandviken\";\"main\"\n\"2680075\";\"Сандвикен\";\"other\"\n\"2680350\";\"Sandarne\";\"main\"\n\"2680352\";\"Sandared\";\"main\"\n\"2680460\";\"Saltsjöbaden\";\"main\"\n\"2680460\";\"Saltsjobaden\";\"ascii\"\n\"2680460\";\"Saltsjoebaden\";\"other\"\n\"2680460\";\"Saltsjøbaden\";\"other\"\n\"2680662\";\"Sala\";\"main\"\n\"2680764\";\"Säffle\";\"main\"\n\"2680764\";\"Saeffle\";\"ascii\"\n\"2680959\";\"Rydsgård\";\"main\"\n\"2680959\";\"Rydsgard\";\"ascii\"\n\"2680969\";\"Rydebäck\";\"main\"\n\"2680969\";\"Rydeback\";\"ascii\"\n\"2680977\";\"Rydaholm\";\"main\"\n\"2680977\";\"Smalands Rydaholm\";\"other\"\n\"2680977\";\"Smålands Rydaholm\";\"other\"\n\"2680985\";\"Ryd\";\"main\"\n\"2681368\";\"Rottne\";\"main\"\n\"2681576\";\"Rosersberg\";\"main\"\n\"2681825\";\"Ronneby\";\"main\"\n\"2681825\";\"Ronebi\";\"other\"\n\"2681825\";\"Ронеби\";\"other\"\n\"2681866\";\"Rönnäng\";\"main\"\n\"2681866\";\"Ronnang\";\"ascii\"\n\"2682155\";\"Rödeby\";\"main\"\n\"2682155\";\"Rodeby\";\"ascii\"\n\"2682155\";\"Roedeby\";\"other\"\n\"2682155\";\"Rødeby\";\"other\"\n\"2682487\";\"Rinkabyholm\";\"main\"\n\"2682569\";\"Rimforsa\";\"main\"\n\"2682570\";\"Rimbo\";\"main\"\n\"2682706\";\"Resarö\";\"main\"\n\"2682706\";\"Resaro\";\"ascii\"\n\"2682706\";\"Resaroe\";\"other\"\n\"2682706\";\"Resarø\";\"other\"\n\"2682834\";\"Reftele\";\"main\"\n\"2682913\";\"Rävlanda\";\"main\"\n\"2682913\";\"Ravlanda\";\"ascii\"\n\"2682995\";\"Rättvik\";\"main\"\n\"2682995\";\"Raettvik\";\"ascii\"\n\"2683436\";\"Ramnäs\";\"main\"\n\"2683436\";\"Ramnas\";\"ascii\"\n\"2684213\";\"Perstorp\";\"main\"\n\"2684231\";\"Pershagen\";\"main\"\n\"2684386\";\"Påskallavik\";\"main\"\n\"2684386\";\"Paskallavik\";\"ascii\"\n\"2684395\";\"Partille\";\"main\"\n\"2684485\";\"Pålsboda\";\"main\"\n\"2684485\";\"Palsboda\";\"ascii\"\n\"2684593\";\"Påarp\";\"main\"\n\"2684593\";\"Paarp\";\"ascii\"\n\"2684636\";\"Oxie\";\"main\"\n\"2684653\";\"Oxelösund\";\"main\"\n\"2684653\";\"Oxelosund\";\"ascii\"\n\"2684653\";\"Oxeloesund\";\"other\"\n\"2684653\";\"Oxeløsund\";\"other\"\n\"2684945\";\"Överum\";\"main\"\n\"2684945\";\"Overum\";\"ascii\"\n\"2684945\";\"OEverum\";\"other\"\n\"2684945\";\"Øverum\";\"other\"\n\"2685699\";\"Östhammar\";\"main\"\n\"2685699\";\"OEsthammar\";\"ascii\"\n\"2685699\";\"Osthammar\";\"other\"\n\"2685699\";\"Østhammar\";\"other\"\n\"2685724\";\"Östervåla\";\"main\"\n\"2685724\";\"OEstervala\";\"ascii\"\n\"2685724\";\"Ostervala\";\"other\"\n\"2685724\";\"Østervåla\";\"other\"\n\"2685750\";\"Östersund\";\"main\"\n\"2685750\";\"Ostersund\";\"ascii\"\n\"2685750\";\"Ehstersund\";\"other\"\n\"2685750\";\"Estersund\";\"other\"\n\"2685750\";\"OEstersund\";\"other\"\n\"2685750\";\"Østersund\";\"other\"\n\"2685750\";\"Естерсунд\";\"other\"\n\"2685750\";\"Эстерсунд\";\"other\"\n\"2685828\";\"Östermalm\";\"main\"\n\"2685828\";\"OEstermalm\";\"ascii\"\n\"2685828\";\"Ostermalm\";\"other\"\n\"2685828\";\"Stockholm kerueletei\";\"other\"\n\"2685828\";\"Stockholm kerületei\";\"other\"\n\"2685828\";\"Østermalm\";\"other\"\n\"2685903\";\"Österbybruk\";\"main\"\n\"2685903\";\"Osterbybruk\";\"ascii\"\n\"2685903\";\"OEsterbybruk\";\"other\"\n\"2685903\";\"Østerbybruk\";\"other\"\n\"2686153\";\"Ösmo\";\"main\"\n\"2686153\";\"Osmo\";\"ascii\"\n\"2686153\";\"OEsmo\";\"other\"\n\"2686153\";\"Øsmo\";\"other\"\n\"2686160\";\"Oskarström\";\"main\"\n\"2686160\";\"Oskarstrom\";\"ascii\"\n\"2686160\";\"Oskarsstrom\";\"other\"\n\"2686160\";\"Oskarsström\";\"other\"\n\"2686160\";\"Oskarstroem\";\"other\"\n\"2686160\";\"Oskarstrøm\";\"other\"\n\"2686162\";\"Oskarshamn\";\"main\"\n\"2686162\";\"Oskarskhamn\";\"other\"\n\"2686162\";\"Оскарсхамн\";\"other\"\n\"2686209\";\"Osby\";\"main\"\n\"2686286\";\"Örsundsbro\";\"main\"\n\"2686286\";\"Orsundsbro\";\"ascii\"\n\"2686286\";\"OErsundsbro\";\"other\"\n\"2686286\";\"Orundsbro\";\"other\"\n\"2686286\";\"Ørsundsbro\";\"other\"\n\"2686380\";\"Orsa\";\"main\"\n\"2686469\";\"Örnsköldsvik\";\"main\"\n\"2686469\";\"Ornskoldsvik\";\"ascii\"\n\"2686469\";\"OErnskoeldsvik\";\"other\"\n\"2686469\";\"Ørnskøldsvik\";\"other\"\n\"2686493\";\"Ornäs\";\"main\"\n\"2686493\";\"Ornas\";\"ascii\"\n\"2686596\";\"Örkelljunga\";\"main\"\n\"2686596\";\"OErkelljunga\";\"ascii\"\n\"2686596\";\"Orkelljunga\";\"other\"\n\"2686596\";\"Ørkelljunga\";\"other\"\n\"2686649\";\"Öregrund\";\"main\"\n\"2686649\";\"Oregrund\";\"ascii\"\n\"2686649\";\"OEregrund\";\"other\"\n\"2686649\";\"Øregrund\";\"other\"\n\"2686657\";\"Örebro\";\"main\"\n\"2686657\";\"Orebro\";\"ascii\"\n\"2686657\";\"Erebro\";\"other\"\n\"2686657\";\"Erebru\";\"other\"\n\"2686657\";\"OErebro\";\"other\"\n\"2686657\";\"OErebro kommuna\";\"other\"\n\"2686657\";\"Isvec\";\"other\"\n\"2686657\";\"Orebrogia\";\"other\"\n\"2686657\";\"e lei bu lu\";\"other\"\n\"2686657\";\"Örebro kommuna\";\"other\"\n\"2686657\";\"İsveç\";\"other\"\n\"2686657\";\"Ørebro\";\"other\"\n\"2686657\";\"Еребро\";\"other\"\n\"2686657\";\"Еребру\";\"other\"\n\"2686657\";\"厄勒布鲁\";\"other\"\n\"2686674\";\"Örbyhus\";\"main\"\n\"2686674\";\"Orbyhus\";\"ascii\"\n\"2686674\";\"OErbyhus\";\"other\"\n\"2686674\";\"Ørbyhus\";\"other\"\n\"2686858\";\"Önnestad\";\"main\"\n\"2686858\";\"Onnestad\";\"ascii\"\n\"2686858\";\"OEnnestad\";\"other\"\n\"2686858\";\"Ønnestad\";\"other\"\n\"2686979\";\"Olstorp\";\"main\"\n\"2687062\";\"Olofström\";\"main\"\n\"2687062\";\"Olofstroem\";\"ascii\"\n\"2687062\";\"Olofstrom\";\"other\"\n\"2687062\";\"Olofstrøm\";\"other\"\n\"2687063\";\"Olofstorp\";\"main\"\n\"2687272\";\"Öjersjö\";\"main\"\n\"2687272\";\"Ojersjo\";\"ascii\"\n\"2687272\";\"OEjersjoe\";\"other\"\n\"2687272\";\"Øjersjø\";\"other\"\n\"2687420\";\"Ödeshög\";\"main\"\n\"2687420\";\"OEdeshoeg\";\"ascii\"\n\"2687420\";\"Odeshog\";\"other\"\n\"2687420\";\"Ødeshøg\";\"other\"\n\"2687444\";\"Odensjö\";\"main\"\n\"2687444\";\"Odensjo\";\"ascii\"\n\"2687444\";\"Odensjoe\";\"other\"\n\"2687444\";\"Odensjø\";\"other\"\n\"2687454\";\"Odensbacken\";\"main\"\n\"2687498\";\"Ödåkra\";\"main\"\n\"2687498\";\"Odakra\";\"ascii\"\n\"2687498\";\"OEdakra\";\"other\"\n\"2687498\";\"Ødåkra\";\"other\"\n\"2687509\";\"Öckerö\";\"main\"\n\"2687509\";\"OEckeroe\";\"ascii\"\n\"2687509\";\"Ockero\";\"other\"\n\"2687509\";\"Øckerø\";\"other\"\n\"2687517\";\"Ockelbo\";\"main\"\n\"2687636\";\"Nynäshamn\";\"main\"\n\"2687636\";\"Nynashamn\";\"ascii\"\n\"2687636\";\"Nynaeshamn\";\"other\"\n\"2687636\";\"Nynashamm\";\"other\"\n\"2687636\";\"Nynäshamm\";\"other\"\n\"2687690\";\"Nykvarn\";\"main\"\n\"2687700\";\"Nyköping\";\"main\"\n\"2687700\";\"Nykoping\";\"ascii\"\n\"2687700\";\"Nykoeping\";\"other\"\n\"2687700\";\"Nykøping\";\"other\"\n\"2687902\";\"Nybro\";\"main\"\n\"2688131\";\"Nossebro\";\"main\"\n\"2688172\";\"Norsjö\";\"main\"\n\"2688172\";\"Norsjoe\";\"ascii\"\n\"2688172\";\"Naarene\";\"other\"\n\"2688172\";\"Norsjo\";\"other\"\n\"2688172\";\"Norsjø\";\"other\"\n\"2688172\";\"Nåarene\";\"other\"\n\"2688250\";\"Norrtälje\";\"main\"\n\"2688250\";\"Norrtalje\";\"ascii\"\n\"2688250\";\"Norrtelge\";\"other\"\n\"2688250\";\"Norrtelje\";\"other\"\n\"2688255\";\"Norrsundet\";\"main\"\n\"2688255\";\"Norrsundedet\";\"other\"\n\"2688368\";\"Norrköping\";\"main\"\n\"2688368\";\"Norrkoping\";\"ascii\"\n\"2688368\";\"Norcheping\";\"other\"\n\"2688368\";\"Norrkoeping\";\"other\"\n\"2688368\";\"Norrkøping\";\"other\"\n\"2688368\";\"bei xue ping\";\"other\"\n\"2688368\";\"Норчепинг\";\"other\"\n\"2688368\";\"北雪平\";\"other\"\n\"2689192\";\"Norra Åsum\";\"main\"\n\"2689192\";\"Norra Asum\";\"ascii\"\n\"2689204\";\"Ås\";\"main\"\n\"2689204\";\"As\";\"ascii\"\n\"2689336\";\"Nordmaling\";\"main\"\n\"2689344\";\"Nordingrå\";\"main\"\n\"2689344\";\"Nordingra\";\"ascii\"\n\"2689452\";\"Norberg\";\"main\"\n\"2689452\";\"Norbergby\";\"other\"\n\"2689471\";\"Nora\";\"main\"\n\"2689520\";\"Nolby\";\"main\"\n\"2689580\";\"Njurundabommen\";\"main\"\n\"2689580\";\"Njurunda\";\"other\"\n\"2690061\";\"Nättraby\";\"main\"\n\"2690061\";\"Nattraby\";\"ascii\"\n\"2690101\";\"Näsum\";\"main\"\n\"2690101\";\"Nasum\";\"ascii\"\n\"2690170\";\"Nässjö\";\"main\"\n\"2690170\";\"Nassjo\";\"ascii\"\n\"2690580\";\"Nacka\";\"main\"\n\"2690713\";\"Myggenäs\";\"main\"\n\"2690713\";\"Myggenas\";\"ascii\"\n\"2690829\";\"Munkfors\";\"main\"\n\"2690843\";\"Munkedal\";\"main\"\n\"2690866\";\"Munka-Ljungby\";\"main\"\n\"2690901\";\"Mullsjö\";\"main\"\n\"2690901\";\"Mullsjo\";\"ascii\"\n\"2690901\";\"Mullsjoe\";\"other\"\n\"2690901\";\"Mullsjø\";\"other\"\n\"2690902\";\"Mullsjö\";\"main\"\n\"2690902\";\"Mullsjoe\";\"ascii\"\n\"2690902\";\"Mullsjo\";\"other\"\n\"2690902\";\"Mullsjø\";\"other\"\n\"2690960\";\"Motala\";\"main\"\n\"2690960\";\"Commune de Motala\";\"other\"\n\"2690960\";\"Mutala\";\"other\"\n\"2690960\";\"Мутала\";\"other\"\n\"2691230\";\"Mörtnäs\";\"main\"\n\"2691230\";\"Mortnas\";\"ascii\"\n\"2691271\";\"Mörrum\";\"main\"\n\"2691271\";\"Morrum\";\"ascii\"\n\"2691271\";\"Moerrum\";\"other\"\n\"2691271\";\"Mørrum\";\"other\"\n\"2691326\";\"Morgongåva\";\"main\"\n\"2691326\";\"Morgongava\";\"ascii\"\n\"2691348\";\"Mörbylånga\";\"main\"\n\"2691348\";\"Moerbylanga\";\"ascii\"\n\"2691348\";\"Morbylanga\";\"other\"\n\"2691348\";\"Mørbylånga\";\"other\"\n\"2691387\";\"Mörarp\";\"main\"\n\"2691387\";\"Morarp\";\"ascii\"\n\"2691387\";\"Moerarp\";\"other\"\n\"2691387\";\"Mørarp\";\"other\"\n\"2691400\";\"Mora\";\"main\"\n\"2691407\";\"Mönsterås\";\"main\"\n\"2691407\";\"Moensteras\";\"ascii\"\n\"2691407\";\"Monsteras\";\"other\"\n\"2691407\";\"Mønsterås\";\"other\"\n\"2691440\";\"Mölnlycke\";\"main\"\n\"2691440\";\"Molnlycke\";\"ascii\"\n\"2691440\";\"Moelnlycke\";\"other\"\n\"2691440\";\"Mølnlycke\";\"other\"\n\"2691459\";\"Mölndal\";\"main\"\n\"2691459\";\"Moelndal\";\"ascii\"\n\"2691459\";\"Molndal\";\"other\"\n\"2691459\";\"Mølndal\";\"other\"\n\"2691462\";\"Mölnbo\";\"main\"\n\"2691462\";\"Molnbo\";\"ascii\"\n\"2691462\";\"Moelnbo\";\"other\"\n\"2691462\";\"Mølnbo\";\"other\"\n\"2691471\";\"Mölltorp\";\"main\"\n\"2691471\";\"Molltorp\";\"ascii\"\n\"2691471\";\"Moelltorp\";\"other\"\n\"2691471\";\"Mølltorp\";\"other\"\n\"2691510\";\"Molkom\";\"main\"\n\"2691542\";\"Moheda\";\"main\"\n\"2691602\";\"Mockfjärd\";\"main\"\n\"2691602\";\"Mockfjard\";\"ascii\"\n\"2691602\";\"Mockfjards Kapell\";\"other\"\n\"2691602\";\"Mockfjärds Kapell\";\"other\"\n\"2691743\";\"Mjölby\";\"main\"\n\"2691743\";\"Mjolby\";\"ascii\"\n\"2691743\";\"Mjoelby\";\"other\"\n\"2691743\";\"Mjølby\";\"other\"\n\"2691792\";\"Mjällby\";\"main\"\n\"2691792\";\"Mjallby\";\"ascii\"\n\"2692049\";\"Mellerud\";\"main\"\n\"2692059\";\"Mellbystrand\";\"main\"\n\"2692349\";\"Matfors\";\"main\"\n\"2692469\";\"Marstrand\";\"main\"\n\"2692469\";\"Marshtrand\";\"other\"\n\"2692469\";\"Марштранд\";\"other\"\n\"2692475\";\"Märsta\";\"main\"\n\"2692475\";\"Marsta\";\"ascii\"\n\"2692475\";\"Mersta\";\"other\"\n\"2692475\";\"Мерста\";\"other\"\n\"2692596\";\"Markaryd\";\"main\"\n\"2692613\";\"Mariestad\";\"main\"\n\"2692613\";\"Мариестад\";\"other\"\n\"2692624\";\"Marieholm\";\"main\"\n\"2692624\";\"Marieholmsbruk\";\"other\"\n\"2692633\";\"Mariefred\";\"main\"\n\"2692633\";\"Мариефред\";\"other\"\n\"2692661\";\"Mariannelund\";\"main\"\n\"2692748\";\"Mantorp\";\"main\"\n\"2692876\";\"Malung\";\"main\"\n\"2692943\";\"Malmslätt\";\"main\"\n\"2692943\";\"Malmslatt\";\"ascii\"\n\"2692943\";\"Malmen\";\"other\"\n\"2692969\";\"Malmö\";\"main\"\n\"2692969\";\"Malmoe\";\"ascii\"\n\"2692969\";\"MMA\";\"other\"\n\"2692969\";\"Mal'mjo\";\"other\"\n\"2692969\";\"Malm'o\";\"other\"\n\"2692969\";\"Malme\";\"other\"\n\"2692969\";\"Malmey\";\"other\"\n\"2692969\";\"Malmo\";\"other\"\n\"2692969\";\"Malmogia\";\"other\"\n\"2692969\";\"Malmø\";\"other\"\n\"2692969\";\"Málmey\";\"other\"\n\"2692969\";\"ma er mo\";\"other\"\n\"2692969\";\"marume\";\"other\"\n\"2692969\";\"Малме\";\"other\"\n\"2692969\";\"Малмьо\";\"other\"\n\"2692969\";\"Мальмё\";\"other\"\n\"2692969\";\"מאלמה\";\"other\"\n\"2692969\";\"マルメ\";\"other\"\n\"2692969\";\"马尔莫\";\"other\"\n\"2692969\";\"马尔默\";\"other\"\n\"2692972\";\"Malmköping\";\"main\"\n\"2692972\";\"Malmkoping\";\"ascii\"\n\"2692972\";\"Malmkoeping\";\"other\"\n\"2692972\";\"Malmkøping\";\"other\"\n\"2693002\";\"Malmbäck\";\"main\"\n\"2693002\";\"Malmback\";\"ascii\"\n\"2693049\";\"Målilla\";\"main\"\n\"2693049\";\"Malilla\";\"ascii\"\n\"2693152\";\"Malå\";\"main\"\n\"2693152\";\"Mala\";\"ascii\"\n\"2693301\";\"Lysekil\";\"main\"\n\"2693347\";\"Lycksele\";\"main\"\n\"2693347\";\"Lyoksele\";\"other\"\n\"2693678\";\"Lund\";\"main\"\n\"2693678\";\"Lunda\";\"other\"\n\"2693678\";\"Lundas\";\"other\"\n\"2693678\";\"Lundur\";\"other\"\n\"2693678\";\"long de\";\"other\"\n\"2693678\";\"rundo\";\"other\"\n\"2693678\";\"Лунд\";\"other\"\n\"2693678\";\"ルンド\";\"other\"\n\"2693678\";\"隆德\";\"other\"\n\"2693759\";\"Ludvika\";\"main\"\n\"2693759\";\"Ludviki\";\"other\"\n\"2693759\";\"Лудвика\";\"other\"\n\"2694165\";\"Lönsboda\";\"main\"\n\"2694165\";\"Lonsboda\";\"ascii\"\n\"2694165\";\"Loensboda\";\"other\"\n\"2694165\";\"Lønsboda\";\"other\"\n\"2694264\";\"Lomma\";\"main\"\n\"2694366\";\"Lödöse\";\"main\"\n\"2694366\";\"Lodose\";\"ascii\"\n\"2694366\";\"Loedoese\";\"other\"\n\"2694366\";\"Lødøse\";\"other\"\n\"2694375\";\"Löddeköpinge\";\"main\"\n\"2694375\";\"Loddekopinge\";\"ascii\"\n\"2694375\";\"Loeddekoepinge\";\"other\"\n\"2694375\";\"Løddekøpinge\";\"other\"\n\"2694417\";\"Löberöd\";\"main\"\n\"2694417\";\"Loberod\";\"ascii\"\n\"2694417\";\"Loeberoed\";\"other\"\n\"2694417\";\"Løberød\";\"other\"\n\"2694475\";\"Ljusne\";\"main\"\n\"2694503\";\"Ljusdal\";\"main\"\n\"2694522\";\"Ljungskile\";\"main\"\n\"2694529\";\"Ljungsbro\";\"main\"\n\"2694529\";\"Ljugsbro\";\"other\"\n\"2694537\";\"Ljunghusen\";\"main\"\n\"2694552\";\"Ljungbyholm\";\"main\"\n\"2694554\";\"Ljungbyhed\";\"main\"\n\"2694560\";\"Ljungby\";\"main\"\n\"2694631\";\"Lit\";\"main\"\n\"2694762\";\"Linköping\";\"main\"\n\"2694762\";\"Linkoping\";\"ascii\"\n\"2694762\";\"Lincheping\";\"other\"\n\"2694762\";\"Lincopia\";\"other\"\n\"2694762\";\"Linkoeping\";\"other\"\n\"2694762\";\"Linkøping\";\"other\"\n\"2694762\";\"lin xue ping\";\"other\"\n\"2694762\";\"rinshepingu\";\"other\"\n\"2694762\";\"Линчепинг\";\"other\"\n\"2694762\";\"リンシェーピング\";\"other\"\n\"2694762\";\"林雪平\";\"other\"\n\"2694779\";\"Linghem\";\"main\"\n\"2694808\";\"Lindsdal\";\"main\"\n\"2694831\";\"Lindome\";\"main\"\n\"2694838\";\"Lindö\";\"main\"\n\"2694838\";\"Lindo\";\"ascii\"\n\"2694838\";\"Lindoe\";\"other\"\n\"2694838\";\"Lindohall\";\"other\"\n\"2694838\";\"Lindöhall\";\"other\"\n\"2694838\";\"Lindø\";\"other\"\n\"2694893\";\"Lindesberg\";\"main\"\n\"2695016\";\"Limmared\";\"main\"\n\"2696059\";\"Lilla Edet\";\"main\"\n\"2696329\";\"Lidköping\";\"main\"\n\"2696329\";\"Lidkoping\";\"ascii\"\n\"2696329\";\"Lidkoeping\";\"other\"\n\"2696329\";\"Lidkøping\";\"other\"\n\"2696329\";\"Лидкопинг\";\"other\"\n\"2696334\";\"Lidingö\";\"main\"\n\"2696334\";\"Lidingoe\";\"ascii\"\n\"2696334\";\"Lidingo\";\"other\"\n\"2696334\";\"Lidingo Villastad\";\"other\"\n\"2696334\";\"Lidingö Villastad\";\"other\"\n\"2696334\";\"Lidingø\";\"other\"\n\"2696473\";\"Lessebo\";\"main\"\n\"2696479\";\"Lesjöfors\";\"main\"\n\"2696479\";\"Lesjofors\";\"ascii\"\n\"2696479\";\"Lesjoefors\";\"other\"\n\"2696479\";\"Lesjøfors\";\"other\"\n\"2696503\";\"Lerum\";\"main\"\n\"2696608\";\"Lenhovda\";\"main\"\n\"2696650\";\"Leksand\";\"main\"\n\"2696804\";\"Laxå\";\"main\"\n\"2696804\";\"Laxa\";\"ascii\"\n\"2697295\";\"Långshyttan\";\"main\"\n\"2697295\";\"Langshyttan\";\"ascii\"\n\"2697455\";\"Länghem\";\"main\"\n\"2697455\";\"Langhem\";\"ascii\"\n\"2697703\";\"Landvetter\";\"main\"\n\"2697720\";\"Landskrona\";\"main\"\n\"2697720\";\"Coronia\";\"other\"\n\"2697720\";\"Landscrone\";\"other\"\n\"2697720\";\"Landskruna\";\"other\"\n\"2697720\";\"Ландскруна\";\"other\"\n\"2697727\";\"Landsbro\";\"main\"\n\"2697766\";\"Lammhult\";\"main\"\n\"2697766\";\"Lamhult\";\"other\"\n\"2697861\";\"Laholm\";\"main\"\n\"2697861\";\"Lakhol'm\";\"other\"\n\"2697861\";\"Лахольм\";\"other\"\n\"2697944\";\"Lagan\";\"main\"\n\"2698242\";\"Kvissleby\";\"main\"\n\"2698242\";\"Kvissle\";\"other\"\n\"2698242\";\"Kvitsle\";\"other\"\n\"2698293\";\"Kvidinge\";\"main\"\n\"2698295\";\"Kvicksund\";\"main\"\n\"2698295\";\"Kvieksund\";\"other\"\n\"2698520\";\"Kvänum\";\"main\"\n\"2698520\";\"Kvanum\";\"ascii\"\n\"2698681\";\"Kungsör\";\"main\"\n\"2698681\";\"Kungsoer\";\"ascii\"\n\"2698681\";\"Kungsor\";\"other\"\n\"2698681\";\"Kungsør\";\"other\"\n\"2698681\";\"Rungsor\";\"other\"\n\"2698681\";\"Rungsör\";\"other\"\n\"2698697\";\"Kungshamn\";\"main\"\n\"2698729\";\"Kungsbacka\";\"main\"\n\"2698729\";\"Kungsbacka Skene\";\"other\"\n\"2698733\";\"Kungsängen\";\"main\"\n\"2698733\";\"Kungsaengen\";\"ascii\"\n\"2698739\";\"Kungälv\";\"main\"\n\"2698739\";\"Kungalv\";\"ascii\"\n\"2698739\";\"Konghelle\";\"other\"\n\"2698739\";\"Kungaelv\";\"other\"\n\"2698739\";\"Kungahaella\";\"other\"\n\"2698739\";\"Kungahälla\";\"other\"\n\"2698739\";\"Kunglev\";\"other\"\n\"2698739\";\"Кунглев\";\"other\"\n\"2698745\";\"Kummelnäs\";\"main\"\n\"2698745\";\"Kummelnas\";\"ascii\"\n\"2698767\";\"Kumla\";\"main\"\n\"2699176\";\"Krokom\";\"main\"\n\"2699176\";\"Krokum Station\";\"other\"\n\"2699206\";\"Krokek\";\"main\"\n\"2699282\";\"Kristinehamn\";\"main\"\n\"2699282\";\"Kristinekhamn\";\"other\"\n\"2699282\";\"Кристинехамн\";\"other\"\n\"2699310\";\"Kristianstad\";\"main\"\n\"2699310\";\"Christiansstad\";\"other\"\n\"2699310\";\"Kristijanstad\";\"other\"\n\"2699310\";\"Кристианстад\";\"other\"\n\"2699310\";\"Кристијанстад\";\"other\"\n\"2699394\";\"Kramfors\";\"main\"\n\"2699768\";\"Kopparberg\";\"main\"\n\"2699768\";\"Kopparberg Koping\";\"other\"\n\"2699768\";\"Kopparberg Köping\";\"other\"\n\"2699768\";\"Kopparbergs Koping\";\"other\"\n\"2699768\";\"Kopparbergs Köping\";\"other\"\n\"2699768\";\"Kopparsberg\";\"other\"\n\"2699777\";\"Köpmanholmen\";\"main\"\n\"2699777\";\"Kopmanholmen\";\"ascii\"\n\"2699777\";\"Koepmanholmen\";\"other\"\n\"2699777\";\"Kopmansholmen\";\"other\"\n\"2699777\";\"Köpmansholmen\";\"other\"\n\"2699777\";\"Køpmanholmen\";\"other\"\n\"2699786\";\"Köpingebro\";\"main\"\n\"2699786\";\"Kopingebro\";\"ascii\"\n\"2699786\";\"Koepingebro\";\"other\"\n\"2699786\";\"Køpingebro\";\"other\"\n\"2699791\";\"Köping\";\"main\"\n\"2699791\";\"Koping\";\"ascii\"\n\"2699791\";\"Koeping\";\"other\"\n\"2699791\";\"Køping\";\"other\"\n\"2699879\";\"Kolsva\";\"main\"\n\"2700011\";\"Kolbäck\";\"main\"\n\"2700011\";\"Kolback\";\"ascii\"\n\"2700079\";\"Kode\";\"main\"\n\"2700199\";\"Knivsta\";\"main\"\n\"2700218\";\"Knislinge\";\"main\"\n\"2700218\";\"Knisslinge\";\"other\"\n\"2700279\";\"Knäred\";\"main\"\n\"2700279\";\"Knared\";\"ascii\"\n\"2700487\";\"Klippan\";\"main\"\n\"2700497\";\"Klintehamn\";\"main\"\n\"2700694\";\"Klågerup\";\"main\"\n\"2700694\";\"Klagerup\";\"ascii\"\n\"2700754\";\"Kivik\";\"main\"\n\"2700754\";\"Кивик\";\"other\"\n\"2700791\";\"Kista\";\"main\"\n\"2700791\";\"Киста\";\"other\"\n\"2700800\";\"Kisa\";\"main\"\n\"2700839\";\"Kinna\";\"main\"\n\"2700858\";\"Kimstad\";\"main\"\n\"2700947\";\"Kilafors\";\"main\"\n\"2700960\";\"Kil\";\"main\"\n\"2701078\";\"Kaxholmen\";\"main\"\n\"2701096\";\"Kävlinge\";\"main\"\n\"2701096\";\"Kaevlinge\";\"ascii\"\n\"2701223\";\"Katrineholm\";\"main\"\n\"2701223\";\"Cathrineholm\";\"other\"\n\"2701223\";\"Katrineholms station\";\"other\"\n\"2701223\";\"Katrinekhol'm\";\"other\"\n\"2701223\";\"Катринехольм\";\"other\"\n\"2701680\";\"Karlstad\";\"main\"\n\"2701680\";\"Carolostadium\";\"other\"\n\"2701680\";\"Karlctad\";\"other\"\n\"2701680\";\"Karlstadas\";\"other\"\n\"2701680\";\"Karlstade\";\"other\"\n\"2701680\";\"Kārlstāde\";\"other\"\n\"2701680\";\"Кaрлcтaд\";\"other\"\n\"2701680\";\"Карлстад\";\"other\"\n\"2701713\";\"Karlskrona\";\"main\"\n\"2701713\";\"Caroli corona\";\"other\"\n\"2701713\";\"Karlskruna\";\"other\"\n\"2701713\";\"karusukurona\";\"other\"\n\"2701713\";\"Карлскруна\";\"other\"\n\"2701713\";\"カールスクローナ\";\"other\"\n\"2701715\";\"Karlskoga\";\"main\"\n\"2701715\";\"Kariskoga\";\"other\"\n\"2701727\";\"Karlshamn\";\"main\"\n\"2701727\";\"Karlskhamn\";\"other\"\n\"2701727\";\"Карлсхамн\";\"other\"\n\"2701757\";\"Karlsborg\";\"main\"\n\"2701792\";\"Karlholmsbruk\";\"main\"\n\"2701792\";\"Karlholm\";\"other\"\n\"2702261\";\"Kalmar\";\"main\"\n\"2702261\";\"Calmaria\";\"other\"\n\"2702261\";\"Kal'mar\";\"other\"\n\"2702261\";\"Kalmar kommuna\";\"other\"\n\"2702261\";\"Kalmar stad\";\"other\"\n\"2702261\";\"Municipalita di Kalmar\";\"other\"\n\"2702261\";\"Municipalità di Kalmar\";\"other\"\n\"2702261\";\"ka er ma\";\"other\"\n\"2702261\";\"Кальмар\";\"other\"\n\"2702261\";\"卡爾馬\";\"other\"\n\"2702405\";\"Kallinge\";\"main\"\n\"2702449\";\"Kållered\";\"main\"\n\"2702449\";\"Kallered\";\"ascii\"\n\"2702489\";\"Källby\";\"main\"\n\"2702489\";\"Kallby\";\"ascii\"\n\"2702683\";\"Kågeröd\";\"main\"\n\"2702683\";\"Kagerod\";\"ascii\"\n\"2702683\";\"Kageroed\";\"other\"\n\"2702683\";\"Kågerød\";\"other\"\n\"2702776\";\"Jursla\";\"main\"\n\"2702908\";\"Jordbro\";\"main\"\n\"2702923\";\"Jonstorp\";\"main\"\n\"2702979\";\"Jönköping\";\"main\"\n\"2702979\";\"Jonkoping\";\"ascii\"\n\"2702979\";\"Jencheping\";\"other\"\n\"2702979\";\"Jjonchjoping\";\"other\"\n\"2702979\";\"Joenkoeping\";\"other\"\n\"2702979\";\"Joenkoepings kommuna\";\"other\"\n\"2702979\";\"Junecopia\";\"other\"\n\"2702979\";\"Jönköpings kommuna\";\"other\"\n\"2702979\";\"Jønkøping\";\"other\"\n\"2702979\";\"Јенчепинг\";\"other\"\n\"2702979\";\"Йёнчёпинг\";\"other\"\n\"2702997\";\"Jokkmokk\";\"main\"\n\"2702997\";\"Jahkamahkke\";\"other\"\n\"2702997\";\"Jockmock\";\"other\"\n\"2702997\";\"Jokimukka\";\"other\"\n\"2702997\";\"Jokkinokk\";\"other\"\n\"2702997\";\"Jåhkåmåhkke\";\"other\"\n\"2703038\";\"Johannedal\";\"main\"\n\"2703145\";\"Järvsö\";\"main\"\n\"2703145\";\"Jaervsoe\";\"ascii\"\n\"2703145\";\"Jarfso\";\"other\"\n\"2703145\";\"Jarvso\";\"other\"\n\"2703145\";\"Järfsö\";\"other\"\n\"2703212\";\"Järpen\";\"main\"\n\"2703212\";\"Jarpen\";\"ascii\"\n\"2703212\";\"Hjerpen\";\"other\"\n\"2703212\";\"Hjerpen Station\";\"other\"\n\"2703212\";\"Jarpstrommen\";\"other\"\n\"2703268\";\"Järna\";\"main\"\n\"2703268\";\"Jarna\";\"ascii\"\n\"2703300\";\"Järbo\";\"main\"\n\"2703300\";\"Jarbo\";\"ascii\"\n\"2703339\";\"Jämshög\";\"main\"\n\"2703339\";\"Jamshog\";\"ascii\"\n\"2703348\";\"Jämjö\";\"main\"\n\"2703348\";\"Jamjo\";\"ascii\"\n\"2703396\";\"Jakobsberg\";\"main\"\n\"2703525\";\"Irsta\";\"main\"\n\"2703546\";\"Insjön\";\"main\"\n\"2703546\";\"Insjon\";\"ascii\"\n\"2703546\";\"Insjo\";\"other\"\n\"2703546\";\"Insjoen\";\"other\"\n\"2703546\";\"Insjö\";\"other\"\n\"2703546\";\"Insjøn\";\"other\"\n\"2703684\";\"Ingelstad\";\"main\"\n\"2703827\";\"Iggesund\";\"main\"\n\"2703827\";\"Iggesunds Bruk\";\"other\"\n\"2704008\";\"Hyltebruk\";\"main\"\n\"2704042\";\"Hyllinge\";\"main\"\n\"2704114\";\"Husum\";\"main\"\n\"2704136\";\"Huskvarna\";\"main\"\n\"2704136\";\"Khuskvarna\";\"other\"\n\"2704136\";\"Хускварна\";\"other\"\n\"2704245\";\"Hunnebostrand\";\"main\"\n\"2704327\";\"Hummelsta\";\"main\"\n\"2704398\";\"Hultsfred\";\"main\"\n\"2704613\";\"Hudiksvall\";\"main\"\n\"2704613\";\"Khudiksvall'\";\"other\"\n\"2704613\";\"Худиксвалль\";\"other\"\n\"2704620\";\"Huddinge\";\"main\"\n\"2704638\";\"Hovsta\";\"main\"\n\"2704654\";\"Hovmantorp\";\"main\"\n\"2704662\";\"Höviksnäs\";\"main\"\n\"2704662\";\"Hoviksnas\";\"ascii\"\n\"2704662\";\"Hovik\";\"other\"\n\"2704662\";\"Hövik\";\"other\"\n\"2704716\";\"Hova\";\"main\"\n\"2704716\";\"Hofva\";\"other\"\n\"2704885\";\"Horred\";\"main\"\n\"2704956\";\"Hörnefors\";\"main\"\n\"2704956\";\"Hoernefors\";\"ascii\"\n\"2704956\";\"Hornefors\";\"other\"\n\"2704956\";\"Hørnefors\";\"other\"\n\"2704962\";\"Horndal\";\"main\"\n\"2704962\";\"Horndals Bruk\";\"other\"\n\"2705049\";\"Hörby\";\"main\"\n\"2705049\";\"Hoerby\";\"ascii\"\n\"2705049\";\"Horby\";\"other\"\n\"2705049\";\"Hørby\";\"other\"\n\"2705055\";\"Höör\";\"main\"\n\"2705055\";\"Hoeoer\";\"ascii\"\n\"2705055\";\"Hoor\";\"other\"\n\"2705055\";\"Høør\";\"other\"\n\"2705075\";\"Hönö\";\"main\"\n\"2705075\";\"Hono\";\"ascii\"\n\"2705075\";\"Hoenoe\";\"other\"\n\"2705075\";\"Hono Klava\";\"other\"\n\"2705075\";\"Hönö Klava\";\"other\"\n\"2705075\";\"Hønø\";\"other\"\n\"2705127\";\"Hölö\";\"main\"\n\"2705127\";\"Holo\";\"ascii\"\n\"2705127\";\"Hoeloe\";\"other\"\n\"2705127\";\"Hølø\";\"other\"\n\"2705402\";\"Höllviken\";\"main\"\n\"2705402\";\"Hollviken\";\"ascii\"\n\"2705402\";\"Hoellviken\";\"other\"\n\"2705402\";\"Hollviksnas\";\"other\"\n\"2705402\";\"Höllviksnäs\";\"other\"\n\"2705402\";\"Høllviken\";\"other\"\n\"2705562\";\"Hökåsen\";\"main\"\n\"2705562\";\"Hokasen\";\"ascii\"\n\"2705562\";\"Hockasen\";\"other\"\n\"2705562\";\"Hoekasen\";\"other\"\n\"2705562\";\"Höckåsen\";\"other\"\n\"2705562\";\"Høkåsen\";\"other\"\n\"2705718\";\"Högsby\";\"main\"\n\"2705718\";\"Hoegsby\";\"ascii\"\n\"2705718\";\"Hogsby\";\"other\"\n\"2705718\";\"Høgsby\";\"other\"\n\"2706003\";\"Höganäs\";\"main\"\n\"2706003\";\"Hoganas\";\"ascii\"\n\"2706054\";\"Hofterup\";\"main\"\n\"2706057\";\"Hofors\";\"main\"\n\"2706100\";\"Hjuvik\";\"main\"\n\"2706100\";\"Hjulvik\";\"other\"\n\"2706184\";\"Hjo\";\"main\"\n\"2706323\";\"Hittarp\";\"main\"\n\"2706392\";\"Hindås\";\"main\"\n\"2706392\";\"Hindas\";\"ascii\"\n\"2706435\";\"Hillerstorp\";\"main\"\n\"2706483\";\"Hestra\";\"main\"\n\"2706485\";\"Hestra\";\"main\"\n\"2706523\";\"Herrljunga\";\"main\"\n\"2706543\";\"Herrestad\";\"main\"\n\"2706619\";\"Henån\";\"main\"\n\"2706619\";\"Henan\";\"ascii\"\n\"2706678\";\"Hemse\";\"main\"\n\"2706713\";\"Hemmesta\";\"main\"\n\"2706767\";\"Helsingborg\";\"main\"\n\"2706767\";\"Halsingborg\";\"other\"\n\"2706767\";\"Helsingoburgum\";\"other\"\n\"2706767\";\"Hälsingborg\";\"other\"\n\"2706767\";\"Khel'singborg\";\"other\"\n\"2706767\";\"Khelsingborg\";\"other\"\n\"2706767\";\"he er xin bao\";\"other\"\n\"2706767\";\"herushinbori\";\"other\"\n\"2706767\";\"Хелсингборг\";\"other\"\n\"2706767\";\"Хельсингборг\";\"other\"\n\"2706767\";\"ヘルシンボリ\";\"other\"\n\"2706767\";\"赫尔辛堡\";\"other\"\n\"2706914\";\"Hedesunda\";\"main\"\n\"2706982\";\"Hedemora\";\"main\"\n\"2707057\";\"Heby\";\"main\"\n\"2707138\";\"Haverdal\";\"main\"\n\"2707217\";\"Hästveda\";\"main\"\n\"2707217\";\"Hastveda\";\"ascii\"\n\"2707366\";\"Hasslö\";\"main\"\n\"2707366\";\"Hasslo\";\"ascii\"\n\"2707366\";\"Hassloe\";\"other\"\n\"2707366\";\"Hasslø\";\"other\"\n\"2707399\";\"Hässleholm\";\"main\"\n\"2707399\";\"Hassleholm\";\"ascii\"\n\"2707664\";\"Harplinge\";\"main\"\n\"2707684\";\"Härnösand\";\"main\"\n\"2707684\";\"Harnosand\";\"ascii\"\n\"2707684\";\"Haernoesand\";\"other\"\n\"2707684\";\"Hernosand\";\"other\"\n\"2707684\";\"Hernösand\";\"other\"\n\"2708016\";\"Handen\";\"main\"\n\"2708025\";\"Hanaskog\";\"main\"\n\"2708152\";\"Hammarstrand\";\"main\"\n\"2708365\";\"Halmstad\";\"main\"\n\"2708365\";\"Halmostadium\";\"other\"\n\"2708365\";\"Hamstad\";\"other\"\n\"2708365\";\"Khalmstad\";\"other\"\n\"2708365\";\"Халмстад\";\"other\"\n\"2708426\";\"Hallstavik\";\"main\"\n\"2708429\";\"Hallstahammar\";\"main\"\n\"2708511\";\"Hallsberg\";\"main\"\n\"2708663\";\"Hälleforsnäs\";\"main\"\n\"2708663\";\"Halleforsnas\";\"ascii\"\n\"2708665\";\"Hällefors\";\"main\"\n\"2708665\";\"Haellefors\";\"ascii\"\n\"2708710\";\"Hällbybrunn\";\"main\"\n\"2708710\";\"Hallbybrunn\";\"ascii\"\n\"2708710\";\"Sveriges Chicago\";\"other\"\n\"2708821\";\"Hällabrottet\";\"main\"\n\"2708821\";\"Hallabrottet\";\"ascii\"\n\"2708821\";\"Hallebrottet\";\"other\"\n\"2708821\";\"Hällebrottet\";\"other\"\n\"2708889\";\"Häljarp\";\"main\"\n\"2708889\";\"Haljarp\";\"ascii\"\n\"2709214\";\"Hagfors\";\"main\"\n\"2709214\";\"Hagsfors\";\"other\"\n\"2709494\";\"Habo\";\"main\"\n\"2709600\";\"Gusum\";\"main\"\n\"2709628\";\"Gustavsberg\";\"main\"\n\"2709628\";\"Gustarsberg\";\"other\"\n\"2709912\";\"Gullspång\";\"main\"\n\"2709912\";\"Gullspang\";\"ascii\"\n\"2709969\";\"Gullbrandstorp\";\"main\"\n\"2710205\";\"Grycksbo\";\"main\"\n\"2710343\";\"Grums\";\"main\"\n\"2710731\";\"Grillby\";\"main\"\n\"2710797\";\"Grebbestad\";\"main\"\n\"2710797\";\"Grabbestad\";\"other\"\n\"2710797\";\"Gräbbestad\";\"other\"\n\"2710885\";\"Grästorp\";\"main\"\n\"2710885\";\"Graestorp\";\"ascii\"\n\"2711174\";\"Gränna\";\"main\"\n\"2711174\";\"Graenna\";\"ascii\"\n\"2711174\";\"Grehnna\";\"other\"\n\"2711174\";\"Grena\";\"other\"\n\"2711174\";\"Грена\";\"other\"\n\"2711174\";\"Грэнна\";\"other\"\n\"2711256\";\"Grängesberg\";\"main\"\n\"2711256\";\"Grangesberg\";\"ascii\"\n\"2711451\";\"Gråbo\";\"main\"\n\"2711451\";\"Grabo\";\"ascii\"\n\"2711526\";\"Götene\";\"main\"\n\"2711526\";\"Goetene\";\"ascii\"\n\"2711526\";\"Gotene\";\"other\"\n\"2711526\";\"Gøtene\";\"other\"\n\"2711537\";\"Göteborg\";\"main\"\n\"2711537\";\"Goeteborg\";\"ascii\"\n\"2711537\";\"G'oteborg\";\"other\"\n\"2711537\";\"Gautaborg\";\"other\"\n\"2711537\";\"Geteborga\";\"other\"\n\"2711537\";\"Gjoteborg\";\"other\"\n\"2711537\";\"Goteborg\";\"other\"\n\"2711537\";\"Goteburg\";\"other\"\n\"2711537\";\"Gotemburgo\";\"other\"\n\"2711537\";\"Gotenburg\";\"other\"\n\"2711537\";\"Gothembourg\";\"other\"\n\"2711537\";\"Gothenburg\";\"other\"\n\"2711537\";\"Gothoburgum\";\"other\"\n\"2711537\";\"Gottenborg\";\"other\"\n\"2711537\";\"Gøteborg\";\"other\"\n\"2711537\";\"Gēteborga\";\"other\"\n\"2711537\";\"Nketempornk\";\"other\"\n\"2711537\";\"ge de bao\";\"other\"\n\"2711537\";\"gwtnbwrg\";\"other\"\n\"2711537\";\"i~etebori\";\"other\"\n\"2711537\";\"Γκέτεμποργκ\";\"other\"\n\"2711537\";\"Гьотеборг\";\"other\"\n\"2711537\";\"Гётеборг\";\"other\"\n\"2711537\";\"גוטנבורג\";\"other\"\n\"2711537\";\"イェーテボリ\";\"other\"\n\"2711537\";\"哥德堡\";\"other\"\n\"2711790\";\"Gnosjö\";\"main\"\n\"2711790\";\"Gnosjoe\";\"ascii\"\n\"2711790\";\"Gnosjo\";\"other\"\n\"2711790\";\"Gnosjø\";\"other\"\n\"2711798\";\"Gnesta\";\"main\"\n\"2711820\";\"Glumslöv\";\"main\"\n\"2711820\";\"Glumslov\";\"ascii\"\n\"2711820\";\"Glumsloev\";\"other\"\n\"2711820\";\"Glumsløv\";\"other\"\n\"2711896\";\"Glimåkra\";\"main\"\n\"2711896\";\"Glimakra\";\"ascii\"\n\"2712045\";\"Gislaved\";\"main\"\n\"2712255\";\"Getinge\";\"main\"\n\"2712373\";\"Genarp\";\"main\"\n\"2712377\";\"Gemla\";\"main\"\n\"2712414\";\"Gävle\";\"main\"\n\"2712414\";\"Gavle\";\"ascii\"\n\"2712414\";\"Gaevle\";\"other\"\n\"2712414\";\"Gafle\";\"other\"\n\"2712414\";\"Gefle\";\"other\"\n\"2712414\";\"Gevalia\";\"other\"\n\"2712414\";\"Gäfle\";\"other\"\n\"2712414\";\"Jevle\";\"other\"\n\"2712414\";\"Јевле\";\"other\"\n\"2712414\";\"Йевле\";\"other\"\n\"2712642\";\"Garphyttan\";\"main\"\n\"2712859\";\"Gantofta\";\"main\"\n\"2712859\";\"Ganntofta\";\"other\"\n\"2712887\";\"Gånghester\";\"main\"\n\"2712887\";\"Ganghester\";\"ascii\"\n\"2712988\";\"Gamleby\";\"main\"\n\"2713219\";\"Gagnef\";\"main\"\n\"2713350\";\"Fyllinge\";\"main\"\n\"2713385\";\"Furulund\";\"main\"\n\"2713516\";\"Frövi\";\"main\"\n\"2713516\";\"Frovi\";\"ascii\"\n\"2713516\";\"Froevi\";\"other\"\n\"2713516\";\"Frøvi\";\"other\"\n\"2713596\";\"Frösakull\";\"main\"\n\"2713596\";\"Frosakull\";\"ascii\"\n\"2713596\";\"Froesakull\";\"other\"\n\"2713596\";\"Frøsakull\";\"other\"\n\"2713656\";\"Fritsla\";\"main\"\n\"2713656\";\"Frissla\";\"other\"\n\"2713659\";\"Fristad\";\"main\"\n\"2713679\";\"Frillesås\";\"main\"\n\"2713679\";\"Frillesas\";\"ascii\"\n\"2713797\";\"Fränsta\";\"main\"\n\"2713797\";\"Fransta\";\"ascii\"\n\"2713943\";\"Förslöv\";\"main\"\n\"2713943\";\"Forslov\";\"ascii\"\n\"2713943\";\"Foersloev\";\"other\"\n\"2713943\";\"Forslovholm\";\"other\"\n\"2713943\";\"Forslovsholm\";\"other\"\n\"2713943\";\"Förslövholm\";\"other\"\n\"2713943\";\"Förslövsholm\";\"other\"\n\"2713943\";\"Førsløv\";\"other\"\n\"2713964\";\"Forsheda\";\"main\"\n\"2713971\";\"Forshaga\";\"main\"\n\"2713974\";\"Forserum\";\"main\"\n\"2714327\";\"Floby\";\"main\"\n\"2714401\";\"Flen\";\"main\"\n\"2714618\";\"Fjugesta\";\"main\"\n\"2714678\";\"Fjärås kyrkby\";\"main\"\n\"2714678\";\"Fjaeras kyrkby\";\"ascii\"\n\"2714765\";\"Fjälkinge\";\"main\"\n\"2714765\";\"Fjalkinge\";\"ascii\"\n\"2714903\";\"Finspång\";\"main\"\n\"2714903\";\"Finspang\";\"ascii\"\n\"2715081\";\"Filipstad\";\"main\"\n\"2715164\";\"Fellingsbro\";\"main\"\n\"2715324\";\"Färjestaden\";\"main\"\n\"2715324\";\"Faerjestaden\";\"ascii\"\n\"2715341\";\"Färila\";\"main\"\n\"2715341\";\"Farila\";\"ascii\"\n\"2715351\";\"Färgelanda\";\"main\"\n\"2715351\";\"Faergelanda\";\"ascii\"\n\"2715459\";\"Falun\";\"main\"\n\"2715459\";\"Fahlun\";\"other\"\n\"2715459\";\"Falunga\";\"other\"\n\"2715459\";\"fa lun\";\"other\"\n\"2715459\";\"Фалун\";\"other\"\n\"2715459\";\"法倫\";\"other\"\n\"2715568\";\"Falköping\";\"main\"\n\"2715568\";\"Falkoeping\";\"ascii\"\n\"2715568\";\"Falkoping\";\"other\"\n\"2715568\";\"Falkøping\";\"other\"\n\"2715573\";\"Falkenberg\";\"main\"\n\"2715573\";\"Falkenbergs\";\"other\"\n\"2715573\";\"Фалкенберг\";\"other\"\n\"2715656\";\"Fagersta\";\"main\"\n\"2715656\";\"Fagersta Bruk\";\"other\"\n\"2715946\";\"Eslöv\";\"main\"\n\"2715946\";\"Eslov\";\"ascii\"\n\"2715946\";\"Esloev\";\"other\"\n\"2715946\";\"Esløv\";\"other\"\n\"2715953\";\"Eskilstuna\";\"main\"\n\"2715953\";\"Ehskil'stuna\";\"other\"\n\"2715953\";\"Эскильстуна\";\"other\"\n\"2716166\";\"Enköping\";\"main\"\n\"2716166\";\"Enkoping\";\"ascii\"\n\"2716166\";\"Enkoeping\";\"other\"\n\"2716166\";\"Enkøping\";\"other\"\n\"2716281\";\"Emmaboda\";\"main\"\n\"2716437\";\"Eksjö\";\"main\"\n\"2716437\";\"Eksjoe\";\"ascii\"\n\"2716437\";\"Eksjo\";\"other\"\n\"2716437\";\"Eksjø\";\"other\"\n\"2716443\";\"Ekshärad\";\"main\"\n\"2716443\";\"Ekshaerad\";\"ascii\"\n\"2716586\";\"Ekerö\";\"main\"\n\"2716586\";\"Ekeroe\";\"ascii\"\n\"2716586\";\"Ekero\";\"other\"\n\"2716586\";\"Ekerø\";\"other\"\n\"2716601\";\"Ekenässjön\";\"main\"\n\"2716601\";\"Ekenassjon\";\"ascii\"\n\"2716758\";\"Ekängen\";\"main\"\n\"2716758\";\"Ekangen\";\"ascii\"\n\"2716825\";\"Edsvalla\";\"main\"\n\"2716863\";\"Edsbyn\";\"main\"\n\"2716968\";\"Ed\";\"main\"\n\"2717401\";\"Dorotea\";\"main\"\n\"2717401\";\"Bergvattnet\";\"other\"\n\"2717401\";\"Doeoerte\";\"other\"\n\"2717401\";\"Döörte\";\"other\"\n\"2717412\";\"Donsö\";\"main\"\n\"2717412\";\"Donso\";\"ascii\"\n\"2717412\";\"Donsoe\";\"other\"\n\"2717412\";\"Donsø\";\"other\"\n\"2717517\";\"Djursholm\";\"main\"\n\"2717558\";\"Djurås\";\"main\"\n\"2717558\";\"Djuras\";\"ascii\"\n\"2717720\";\"Diseröd\";\"main\"\n\"2717720\";\"Diserod\";\"ascii\"\n\"2717720\";\"Diseroed\";\"other\"\n\"2717720\";\"Diserød\";\"other\"\n\"2717824\";\"Delsbo\";\"main\"\n\"2717842\";\"Deje\";\"main\"\n\"2717884\";\"Degerfors\";\"main\"\n\"2717898\";\"Degeberga\";\"main\"\n\"2718133\";\"Dals Långed\";\"main\"\n\"2718133\";\"Dals Langed\";\"ascii\"\n\"2718133\";\"Langed\";\"other\"\n\"2718133\";\"Långed\";\"other\"\n\"2718144\";\"Dalsjöfors\";\"main\"\n\"2718144\";\"Dalsjofors\";\"ascii\"\n\"2718144\";\"Dalsjoefors\";\"other\"\n\"2718144\";\"Dalsjøfors\";\"other\"\n\"2718245\";\"Dalby\";\"main\"\n\"2718271\";\"Dalarö\";\"main\"\n\"2718271\";\"Dalaro\";\"ascii\"\n\"2718271\";\"Dalaroe\";\"other\"\n\"2718271\";\"Dalarø\";\"other\"\n\"2718393\";\"Charlottenberg\";\"main\"\n\"2718759\";\"Bunkeflostrand\";\"main\"\n\"2718836\";\"Bua\";\"main\"\n\"2718975\";\"Brunna\";\"main\"\n\"2718991\";\"Brunflo\";\"main\"\n\"2719106\";\"Bromölla\";\"main\"\n\"2719106\";\"Bromoella\";\"ascii\"\n\"2719106\";\"Bromolla\";\"other\"\n\"2719106\";\"Bromølla\";\"other\"\n\"2719111\";\"Bromma\";\"main\"\n\"2719212\";\"Broby\";\"main\"\n\"2719212\";\"Broby kyrkoby\";\"other\"\n\"2719212\";\"Brody Kyrkoby\";\"other\"\n\"2719245\";\"Bro\";\"main\"\n\"2719312\";\"Brevik\";\"main\"\n\"2719318\";\"Brevik\";\"main\"\n\"2719318\";\"Bredvik\";\"other\"\n\"2719466\";\"Bredbyn\";\"main\"\n\"2719485\";\"Bredaryd\";\"main\"\n\"2719670\";\"Brastad\";\"main\"\n\"2719961\";\"Brålanda\";\"main\"\n\"2719961\";\"Bralanda\";\"ascii\"\n\"2719965\";\"Bräkne-Hoby\";\"main\"\n\"2719965\";\"Brakne-Hoby\";\"ascii\"\n\"2720004\";\"Bräcke\";\"main\"\n\"2720004\";\"Braecke\";\"ascii\"\n\"2720028\";\"Braås\";\"main\"\n\"2720028\";\"Braas\";\"ascii\"\n\"2720037\";\"Boxholm\";\"main\"\n\"2720383\";\"Borlänge\";\"main\"\n\"2720383\";\"Borlaenge\";\"ascii\"\n\"2720437\";\"Borgholm\";\"main\"\n\"2720485\";\"Borensberg\";\"main\"\n\"2720501\";\"Borås\";\"main\"\n\"2720501\";\"Boras\";\"ascii\"\n\"2720501\";\"Boerosia\";\"other\"\n\"2720501\";\"Boros\";\"other\"\n\"2720501\";\"Celfsborg\";\"other\"\n\"2720501\";\"borosu\";\"other\"\n\"2720501\";\"Борос\";\"other\"\n\"2720501\";\"ボロース\";\"other\"\n\"2720504\";\"Bor\";\"main\"\n\"2720670\";\"Bollstabruk\";\"main\"\n\"2720670\";\"Bollsta\";\"other\"\n\"2720679\";\"Bollnäs\";\"main\"\n\"2720679\";\"Bollnas\";\"ascii\"\n\"2720689\";\"Bollebygd\";\"main\"\n\"2721035\";\"Bodafors\";\"main\"\n\"2721259\";\"Boo\";\"main\"\n\"2721259\";\"Bo\";\"other\"\n\"2721285\";\"Blomstermåla\";\"main\"\n\"2721285\";\"Blomstermala\";\"ascii\"\n\"2721348\";\"Blentarp\";\"main\"\n\"2721534\";\"Bjuv\";\"main\"\n\"2721581\";\"Bjursås\";\"main\"\n\"2721581\";\"Bjursas\";\"ascii\"\n\"2721828\";\"Björneborg\";\"main\"\n\"2721828\";\"Bjorneborg\";\"ascii\"\n\"2721828\";\"Bjoerneborg\";\"other\"\n\"2721828\";\"Bjorneborgs\";\"other\"\n\"2721828\";\"Bjorneborgs bruk\";\"other\"\n\"2721828\";\"Björneborgs\";\"other\"\n\"2721828\";\"Björneborgs bruk\";\"other\"\n\"2721828\";\"Bjørneborg\";\"other\"\n\"2722026\";\"Björkö\";\"main\"\n\"2722026\";\"Bjorko\";\"ascii\"\n\"2722026\";\"Bjoerkoe\";\"other\"\n\"2722026\";\"Bjørkø\";\"other\"\n\"2722320\";\"Bjästa\";\"main\"\n\"2722320\";\"Bjasta\";\"ascii\"\n\"2722362\";\"Bjärred\";\"main\"\n\"2722362\";\"Bjarred\";\"ascii\"\n\"2722363\";\"Bjärnum\";\"main\"\n\"2722363\";\"Bjarnum\";\"ascii\"\n\"2722545\";\"Billingsfors\";\"main\"\n\"2722563\";\"Billesholm\";\"main\"\n\"2722570\";\"Billdal\";\"main\"\n\"2722734\";\"Bergsjö\";\"main\"\n\"2722734\";\"Bergsjoe\";\"ascii\"\n\"2722734\";\"Bergsjo\";\"other\"\n\"2722734\";\"Bergsjø\";\"other\"\n\"2722742\";\"Bergshamra\";\"main\"\n\"2722836\";\"Bergeforsen\";\"main\"\n\"2722996\";\"Berg\";\"main\"\n\"2723079\";\"Bengtsfors\";\"main\"\n\"2723287\";\"Båstad\";\"main\"\n\"2723287\";\"Bastad\";\"ascii\"\n\"2723350\";\"Bårslöv\";\"main\"\n\"2723350\";\"Barslov\";\"ascii\"\n\"2723350\";\"Barsloev\";\"other\"\n\"2723350\";\"Bårsløv\";\"other\"\n\"2723488\";\"Bara\";\"main\"\n\"2723503\";\"Bankeryd\";\"main\"\n\"2723567\";\"Bålsta\";\"main\"\n\"2723567\";\"Balsta\";\"ascii\"\n\"2724134\";\"Axvall\";\"main\"\n\"2724231\";\"Avesta\";\"main\"\n\"2724321\";\"Åtvidaberg\";\"main\"\n\"2724321\";\"Atvidaberg\";\"ascii\"\n\"2724321\";\"Atvid\";\"other\"\n\"2724321\";\"Åtvid\";\"other\"\n\"2724435\";\"Åstorp\";\"main\"\n\"2724435\";\"Astorp\";\"ascii\"\n\"2724693\";\"Asmundtorp\";\"main\"\n\"2724693\";\"Assmundtorp\";\"other\"\n\"2724778\";\"Askersund\";\"main\"\n\"2724958\";\"Åsele\";\"main\"\n\"2724958\";\"Asele\";\"ascii\"\n\"2724958\";\"Sjeltie\";\"other\"\n\"2724962\";\"Åseda\";\"main\"\n\"2724962\";\"Aseda\";\"ascii\"\n\"2725003\";\"Åsbro\";\"main\"\n\"2725003\";\"Asbro\";\"ascii\"\n\"2725065\";\"Åsa\";\"main\"\n\"2725065\";\"Asa\";\"ascii\"\n\"2725073\";\"Ås\";\"main\"\n\"2725073\";\"As\";\"ascii\"\n\"2725123\";\"Arvika\";\"main\"\n\"2725123\";\"Арвика\";\"other\"\n\"2725136\";\"Arvidsjaur\";\"main\"\n\"2725192\";\"Årsunda\";\"main\"\n\"2725192\";\"Arsunda\";\"ascii\"\n\"2725201\";\"Årsta\";\"main\"\n\"2725201\";\"Arsta\";\"ascii\"\n\"2725271\";\"Arnö\";\"main\"\n\"2725271\";\"Arno\";\"ascii\"\n\"2725271\";\"Arnoe\";\"other\"\n\"2725271\";\"Arnø\";\"other\"\n\"2725336\";\"Arlöv\";\"main\"\n\"2725336\";\"Arloev\";\"ascii\"\n\"2725336\";\"Arlov\";\"other\"\n\"2725336\";\"Arløv\";\"other\"\n\"2725348\";\"Ärla\";\"main\"\n\"2725348\";\"Arla\";\"ascii\"\n\"2725372\";\"Arjeplog\";\"main\"\n\"2725379\";\"Årjäng\";\"main\"\n\"2725379\";\"Arjaeng\";\"ascii\"\n\"2725379\";\"Arjange\";\"other\"\n\"2725379\";\"Arjeng\";\"other\"\n\"2725379\";\"Årjeng\";\"other\"\n\"2725379\";\"Årjänge\";\"other\"\n\"2725432\";\"Åre\";\"main\"\n\"2725432\";\"Are\";\"ascii\"\n\"2725432\";\"Ore\";\"other\"\n\"2725432\";\"Аре\";\"other\"\n\"2725432\";\"Оре\";\"other\"\n\"2725456\";\"Arbrå\";\"main\"\n\"2725456\";\"Arbra\";\"ascii\"\n\"2725471\";\"Arboga\";\"main\"\n\"2725722\";\"Ankarsrum\";\"main\"\n\"2725901\";\"Ängelholm\";\"main\"\n\"2725901\";\"Angelholm\";\"ascii\"\n\"2725901\";\"AEngelholm\";\"other\"\n\"2725901\";\"Engelholm\";\"other\"\n\"2725901\";\"Engelkholm\";\"other\"\n\"2725901\";\"Енгелхолм\";\"other\"\n\"2725924\";\"Ånge\";\"main\"\n\"2725924\";\"Ange\";\"ascii\"\n\"2726005\";\"Aneby\";\"main\"\n\"2726026\";\"Anderstorp\";\"main\"\n\"2726049\";\"Anderslöv\";\"main\"\n\"2726049\";\"Anderslov\";\"ascii\"\n\"2726049\";\"Andersloev\";\"other\"\n\"2726049\";\"Andersløv\";\"other\"\n\"2726163\";\"Åmotfors\";\"main\"\n\"2726163\";\"Amotfors\";\"ascii\"\n\"2726163\";\"Amot\";\"other\"\n\"2726163\";\"Amotsfors\";\"other\"\n\"2726163\";\"Åmot\";\"other\"\n\"2726163\";\"Åmotsfors\";\"other\"\n\"2726240\";\"Åmål\";\"main\"\n\"2726240\";\"Amal\";\"ascii\"\n\"2726285\";\"Älvkarleby\";\"main\"\n\"2726285\";\"AElvkarleby\";\"ascii\"\n\"2726314\";\"Alvesta\";\"main\"\n\"2726332\";\"Älvdalen\";\"main\"\n\"2726332\";\"AElvdalen\";\"ascii\"\n\"2726347\";\"Älvängen\";\"main\"\n\"2726347\";\"Alvangen\";\"ascii\"\n\"2726347\";\"Alfangen\";\"other\"\n\"2726347\";\"Älfängen\";\"other\"\n\"2726394\";\"Älta\";\"main\"\n\"2726394\";\"Alta\";\"ascii\"\n\"2726470\";\"Alsike\";\"main\"\n\"2726576\";\"Älmhult\";\"main\"\n\"2726576\";\"AElmhult\";\"ascii\"\n\"2726756\";\"Alingsås\";\"main\"\n\"2726756\";\"Alingsas\";\"ascii\"\n\"2726756\";\"Алингсас\";\"other\"\n\"2726939\";\"Alfta\";\"main\"\n\"2726983\";\"Åled\";\"main\"\n\"2726983\";\"Aled\";\"ascii\"\n\"2727222\";\"Åkers Styckebruk\";\"main\"\n\"2727222\";\"Akers Styckebruk\";\"ascii\"\n\"2727234\";\"Åkersberga\";\"main\"\n\"2727234\";\"Akersberga\";\"ascii\"\n\"2727234\";\"Акерсберга\";\"other\"\n\"2727314\";\"Åkarp\";\"main\"\n\"2727314\";\"Akarp\";\"ascii\"\n\"2727363\";\"Åhus\";\"main\"\n\"2727363\";\"Ahus\";\"ascii\"\n\"2727363\";\"Okhus\";\"other\"\n\"2727363\";\"Охус\";\"other\"\n\"2727594\";\"Åby\";\"main\"\n\"2727594\";\"Aby\";\"ascii\"\n\"2727731\";\"Abborrberget\";\"main\"\n\"3331621\";\"Andalen\";\"main\"\n\"3336566\";\"Fisksätra\";\"main\"\n\"3336566\";\"Fisksatra\";\"ascii\"\n\"3336568\";\"Skanör med Falsterbo\";\"main\"\n\"3336568\";\"Skanor med Falsterbo\";\"ascii\"\n\"3336568\";\"Skanoer med Falsterbo\";\"other\"\n\"3336568\";\"Skanør med Falsterbo\";\"other\"\n\"3336569\";\"Nödinge-Nol\";\"main\"\n\"3336569\";\"Nodinge-Nol\";\"ascii\"\n\"3336569\";\"Noedinge-Nol\";\"other\"\n\"3336569\";\"Nødinge-Nol\";\"other\"\n\"6269436\";\"Ingared\";\"main\"\n\"6619708\";\"Majorna\";\"main\"\n\"6930653\";\"Salem\";\"main\"\n\"6943587\";\"Onsala\";\"main\"\n\"7283918\";\"Olstorp\";\"main\"\n\"1880252\";\"Singapore\";\"main\"\n\"1880252\";\"Singapore City\";\"other\"\n\"1880252\";\"Singapour\";\"other\"\n\"1880252\";\"Singapur\";\"other\"\n\"1880252\";\"Singapura\";\"other\"\n\"1880252\";\"Sinkapoure\";\"other\"\n\"1880252\";\"Tumasik\";\"other\"\n\"1880252\";\"singkh por\";\"other\"\n\"1880252\";\"Σιγκαπούρη\";\"other\"\n\"1880252\";\"Сингапур\";\"other\"\n\"1880252\";\"สิงค์โปร\";\"other\"\n\"2411397\";\"Georgetown\";\"main\"\n\"3370726\";\"Edinburgh of the Seven Seas\";\"main\"\n\"3370726\";\"Edinburgh\";\"other\"\n\"3370726\";\"Settlement of Edinburgh\";\"other\"\n\"3370726\";\"Tristan Island Settlement\";\"other\"\n\"3370726\";\"Tristan Settlement\";\"other\"\n\"3370903\";\"Jamestown\";\"main\"\n\"3186270\";\"Žužemberk\";\"main\"\n\"3186270\";\"Zuzemberk\";\"ascii\"\n\"3186270\";\"Obcina Zuzemberk\";\"other\"\n\"3186270\";\"Občina Žužemberk\";\"other\"\n\"3186270\";\"Seisenberg\";\"other\"\n\"3186270\";\"Zuzemperk\";\"other\"\n\"3186270\";\"jujenberuku\";\"other\"\n\"3186270\";\"Žužemperk\";\"other\"\n\"3186270\";\"ジュジェンベルク\";\"other\"\n\"3186450\";\"Žiri\";\"main\"\n\"3186450\";\"Ziri\";\"ascii\"\n\"3186450\";\"Sairach\";\"other\"\n\"3186607\";\"Železniki\";\"main\"\n\"3186607\";\"Zelezniki\";\"ascii\"\n\"3186607\";\"Zeleznica\";\"other\"\n\"3186607\";\"Železnica\";\"other\"\n\"3186844\";\"Žalec\";\"main\"\n\"3186844\";\"Zalec\";\"ascii\"\n\"3186844\";\"Obcina Zalec\";\"other\"\n\"3186844\";\"Občina Žalec\";\"other\"\n\"3186844\";\"jaretsu\";\"other\"\n\"3186844\";\"ジャレツ\";\"other\"\n\"3186906\";\"Zagorje ob Savi\";\"main\"\n\"3186906\";\"Obcina Zagorje ob Savi\";\"other\"\n\"3186906\";\"Občina Zagorje ob Savi\";\"other\"\n\"3186906\";\"Zagorje\";\"other\"\n\"3186906\";\"ザゴリェ・オプ・サヴィ\";\"other\"\n\"3187020\";\"Vuzenica\";\"main\"\n\"3187125\";\"Vrtojba\";\"main\"\n\"3187125\";\"Vertoiba in Campi Santi\";\"other\"\n\"3187214\";\"Vrhnika\";\"main\"\n\"3187214\";\"Nauporto\";\"other\"\n\"3187214\";\"Ober-Laibach\";\"other\"\n\"3187214\";\"Vrkhnika\";\"other\"\n\"3187214\";\"Врхника\";\"other\"\n\"3187448\";\"Vojnik\";\"main\"\n\"3187485\";\"Vodice\";\"main\"\n\"3187485\";\"Woditz\";\"other\"\n\"3187505\";\"Vnanje Gorice\";\"main\"\n\"3187690\";\"Vir pri Stični\";\"main\"\n\"3187690\";\"Vir pri Sticni\";\"ascii\"\n\"3187690\";\"Vir\";\"other\"\n\"3187706\";\"Vipava\";\"main\"\n\"3187706\";\"Obcina Vipava\";\"other\"\n\"3187706\";\"Občina Vipava\";\"other\"\n\"3187706\";\"Vipacco\";\"other\"\n\"3187706\";\"Vippaco\";\"other\"\n\"3187706\";\"vu~ipavu~a\";\"other\"\n\"3187706\";\"Випава\";\"other\"\n\"3187706\";\"ヴィパーヴァ\";\"other\"\n\"3187855\";\"Verd\";\"main\"\n\"3188606\";\"Turnišče\";\"main\"\n\"3188606\";\"Turnisce\";\"ascii\"\n\"3188606\";\"Bantornya\";\"other\"\n\"3188606\";\"Bántornya\";\"other\"\n\"3188606\";\"Turnischa\";\"other\"\n\"3188684\";\"Trzin\";\"main\"\n\"3188688\";\"Tržič\";\"main\"\n\"3188688\";\"Trzic\";\"ascii\"\n\"3188688\";\"Neumarktl\";\"other\"\n\"3188688\";\"Trsic\";\"other\"\n\"3188688\";\"Tršič\";\"other\"\n\"3188886\";\"Trebnje\";\"main\"\n\"3188915\";\"Trbovlje\";\"main\"\n\"3188915\";\"Obcina Trbovlje\";\"other\"\n\"3188915\";\"Občina Trbovlje\";\"other\"\n\"3188915\";\"torubovurye\";\"other\"\n\"3188915\";\"トルボヴリェ\";\"other\"\n\"3188971\";\"Topolšica\";\"main\"\n\"3188971\";\"Topolsica\";\"ascii\"\n\"3188971\";\"Topolschitz\";\"other\"\n\"3188971\";\"Topolscica\";\"other\"\n\"3188971\";\"Topolščica\";\"other\"\n\"3189038\";\"Tolmin\";\"main\"\n\"3189038\";\"Obcina Tolmin\";\"other\"\n\"3189038\";\"Občina Tolmin\";\"other\"\n\"3189038\";\"Talmina\";\"other\"\n\"3189038\";\"Tolmino\";\"other\"\n\"3189038\";\"torumin\";\"other\"\n\"3189038\";\"Толмин\";\"other\"\n\"3189038\";\"トールミン\";\"other\"\n\"3189075\";\"Velenje\";\"main\"\n\"3189075\";\"Belenie\";\"other\"\n\"3189075\";\"Mestna obcina Velenje\";\"other\"\n\"3189075\";\"Mestna občina Velenje\";\"other\"\n\"3189075\";\"Titovo Velenje\";\"other\"\n\"3189075\";\"Velen'e\";\"other\"\n\"3189075\";\"Wollan\";\"other\"\n\"3189075\";\"Wöllan\";\"other\"\n\"3189075\";\"bellenye\";\"other\"\n\"3189075\";\"vu~erenie\";\"other\"\n\"3189075\";\"Βέλενιε\";\"other\"\n\"3189075\";\"Веленье\";\"other\"\n\"3189075\";\"ヴェレニエ\";\"other\"\n\"3189075\";\"벨레녜\";\"other\"\n\"3189798\";\"Štore\";\"main\"\n\"3189798\";\"Store\";\"ascii\"\n\"3189798\";\"Obcina Store\";\"other\"\n\"3189798\";\"Občina Štore\";\"other\"\n\"3189798\";\"shutore\";\"other\"\n\"3189798\";\"シュトレ\";\"other\"\n\"3190219\";\"Spodnje Hoče\";\"main\"\n\"3190219\";\"Spodnje Hoce\";\"ascii\"\n\"3190247\";\"Spodnja Idrija\";\"main\"\n\"3190247\";\"Idria di Sotto\";\"other\"\n\"3190247\";\"Unteridria\";\"other\"\n\"3190311\";\"Šoštanj\";\"main\"\n\"3190311\";\"Sostanj\";\"ascii\"\n\"3190311\";\"Schonstein\";\"other\"\n\"3190311\";\"Schönstein\";\"other\"\n\"3190311\";\"Sostanj Mesto\";\"other\"\n\"3190516\";\"Šmarca\";\"main\"\n\"3190516\";\"Smarca\";\"ascii\"\n\"3190530\";\"Slovenske Konjice\";\"main\"\n\"3190530\";\"Gonobitz\";\"other\"\n\"3190530\";\"Konjice\";\"other\"\n\"3190530\";\"Obcina Slovenske Konjice\";\"other\"\n\"3190530\";\"Občina Slovenske Konjice\";\"other\"\n\"3190530\";\"Slovenske Konice\";\"other\"\n\"3190530\";\"Словенске Коњице\";\"other\"\n\"3190530\";\"スロヴェンスケ・コニツェ\";\"other\"\n\"3190534\";\"Slovenska Bistrica\";\"main\"\n\"3190534\";\"Windisch-Feistritz\";\"other\"\n\"3190534\";\"スロヴェンスカ・ビストリツァ\";\"other\"\n\"3190536\";\"Slovenj Gradec\";\"main\"\n\"3190536\";\"Mestna obcina Slovenj Gradec\";\"other\"\n\"3190536\";\"Mestna občina Slovenj Gradec\";\"other\"\n\"3190536\";\"Sloven'-Gradec\";\"other\"\n\"3190536\";\"Slovenji Gradec\";\"other\"\n\"3190536\";\"Slovenski Gradec\";\"other\"\n\"3190536\";\"Windischgraz\";\"other\"\n\"3190536\";\"sloven gradec\";\"other\"\n\"3190536\";\"Словен Градец\";\"other\"\n\"3190536\";\"Словень-Градец\";\"other\"\n\"3190536\";\"スロヴェニ・グラデツ\";\"other\"\n\"3190712\";\"Škofljica\";\"main\"\n\"3190712\";\"Skofljica\";\"ascii\"\n\"3190712\";\"Skofelca\";\"other\"\n\"3190712\";\"Škofelca\";\"other\"\n\"3190717\";\"Škofja Loka\";\"main\"\n\"3190717\";\"Skofja Loka\";\"ascii\"\n\"3190717\";\"Bischoflack\";\"other\"\n\"3190717\";\"Skofia Loka\";\"other\"\n\"3190717\";\"Skosja Loka\";\"other\"\n\"3190717\";\"シュコーフィア・ロカ\";\"other\"\n\"3190945\";\"Sežana\";\"main\"\n\"3190945\";\"Sezana\";\"ascii\"\n\"3190945\";\"Sesana\";\"other\"\n\"3190945\";\"sejana\";\"other\"\n\"3190945\";\"セジャーナ\";\"other\"\n\"3190950\";\"Sevnica\";\"main\"\n\"3191029\";\"Šentjur\";\"main\"\n\"3191029\";\"Sentjur\";\"ascii\"\n\"3191029\";\"Obcina Sentjur\";\"other\"\n\"3191029\";\"Občina Šentjur\";\"other\"\n\"3191029\";\"Sankt Georgen\";\"other\"\n\"3191029\";\"Sent Jurij\";\"other\"\n\"3191029\";\"Sentjur pri Celju\";\"other\"\n\"3191029\";\"Sveti Juraj\";\"other\"\n\"3191029\";\"Sveti Jurij\";\"other\"\n\"3191029\";\"Sveti Jurij pri Celju\";\"other\"\n\"3191029\";\"Šent Jurij\";\"other\"\n\"3191029\";\"Šentjur pri Celju\";\"other\"\n\"3191029\";\"シェントユル・プリ・ツェリュ\";\"other\"\n\"3191039\";\"Šentilj\";\"main\"\n\"3191039\";\"Sentilj\";\"ascii\"\n\"3191039\";\"Obcina Sentilj\";\"other\"\n\"3191039\";\"Občina Šentilj\";\"other\"\n\"3191039\";\"Sveti Ilj\";\"other\"\n\"3191039\";\"shentiri\";\"other\"\n\"3191039\";\"シェンティリ\";\"other\"\n\"3191044\";\"Senovo\";\"main\"\n\"3191059\";\"Šenčur\";\"main\"\n\"3191059\";\"Sencur\";\"ascii\"\n\"3191062\";\"Šempeter v Savinjski dolini\";\"main\"\n\"3191062\";\"Sempeter v Savinjski dolini\";\"ascii\"\n\"3191062\";\"Sempeter\";\"other\"\n\"3191062\";\"Sveti Peter\";\"other\"\n\"3191062\";\"Šempeter\";\"other\"\n\"3191063\";\"Šempeter pri Gorici\";\"main\"\n\"3191063\";\"Sempeter pri Gorici\";\"ascii\"\n\"3191063\";\"San Pietro\";\"other\"\n\"3191063\";\"San Pietro di Gorizia\";\"other\"\n\"3191063\";\"San Pietro di Gorízia\";\"other\"\n\"3191063\";\"Sempeter\";\"other\"\n\"3191063\";\"Sent Peter\";\"other\"\n\"3191063\";\"Sveti Peter\";\"other\"\n\"3191064\";\"Šempas\";\"main\"\n\"3191064\";\"Sempas\";\"ascii\"\n\"3191064\";\"Sambasso\";\"other\"\n\"3191064\";\"Schonpals\";\"other\"\n\"3191064\";\"Schönpals\";\"other\"\n\"3191401\";\"Ruše\";\"main\"\n\"3191401\";\"Ruse\";\"ascii\"\n\"3191401\";\"Maria Rast\";\"other\"\n\"3191401\";\"Obcina Ruse\";\"other\"\n\"3191401\";\"Občina Ruše\";\"other\"\n\"3191401\";\"Rose\";\"other\"\n\"3191401\";\"Roše\";\"other\"\n\"3191401\";\"rushe\";\"other\"\n\"3191401\";\"ルシェ\";\"other\"\n\"3191563\";\"Rogoza\";\"main\"\n\"3191580\";\"Rogaška Slatina\";\"main\"\n\"3191580\";\"Rogaska Slatina\";\"ascii\"\n\"3191580\";\"Hohitsch Sauerbrunn\";\"other\"\n\"3191580\";\"Obcina Rogaska Slatina\";\"other\"\n\"3191580\";\"Občina Rogaška Slatina\";\"other\"\n\"3191580\";\"ロガーシュカ・スラティナ\";\"other\"\n\"3191685\";\"Ribnica\";\"main\"\n\"3191685\";\"Reifnitz\";\"other\"\n\"3191737\";\"Renče\";\"main\"\n\"3191737\";\"Rence\";\"ascii\"\n\"3191737\";\"Ranziano\";\"other\"\n\"3191774\";\"Razvanje\";\"main\"\n\"3191844\";\"Ravne\";\"main\"\n\"3191845\";\"Ravne\";\"main\"\n\"3191845\";\"Gorjne Ravne\";\"other\"\n\"3192019\";\"Rakičan\";\"main\"\n\"3192019\";\"Rakican\";\"ascii\"\n\"3192019\";\"Battyanfalva\";\"other\"\n\"3192019\";\"Battyánfalva\";\"other\"\n\"3192019\";\"Rakicsan\";\"other\"\n\"3192019\";\"Rakicsán\";\"other\"\n\"3192019\";\"Rakitsan\";\"other\"\n\"3192019\";\"Rakitsán\";\"other\"\n\"3192021\";\"Rakek\";\"main\"\n\"3192021\";\"Racche\";\"other\"\n\"3192063\";\"Radovljica\";\"main\"\n\"3192063\";\"Obcina Radovljica\";\"other\"\n\"3192063\";\"Občina Radovljica\";\"other\"\n\"3192063\";\"Radmannsdorf\";\"other\"\n\"3192063\";\"radovuritsu~a\";\"other\"\n\"3192063\";\"ラドヴリツァ\";\"other\"\n\"3192098\";\"Radomlje\";\"main\"\n\"3192121\";\"Radlje ob Dravi\";\"main\"\n\"3192121\";\"Marenberg\";\"other\"\n\"3192121\";\"Mariberg\";\"other\"\n\"3192121\";\"Obcina Radlje ob Dravi\";\"other\"\n\"3192121\";\"Občina Radlje ob Dravi\";\"other\"\n\"3192121\";\"Radlje\";\"other\"\n\"3192121\";\"ラドリェ・オブ・ドラヴィ\";\"other\"\n\"3192139\";\"Radenci\";\"main\"\n\"3192139\";\"Obcina Radenci\";\"other\"\n\"3192139\";\"Občina Radenci\";\"other\"\n\"3192139\";\"Radein\";\"other\"\n\"3192139\";\"Radinci\";\"other\"\n\"3192139\";\"radentsu~i\";\"other\"\n\"3192139\";\"ラデンツィ\";\"other\"\n\"3192144\";\"Radeče\";\"main\"\n\"3192144\";\"Radece\";\"ascii\"\n\"3192144\";\"Obcina Radece\";\"other\"\n\"3192144\";\"Občina Radeče\";\"other\"\n\"3192144\";\"radeche\";\"other\"\n\"3192144\";\"ラデチェ\";\"other\"\n\"3192165\";\"Rače\";\"main\"\n\"3192165\";\"Race\";\"ascii\"\n\"3192165\";\"Kranichsfeld\";\"other\"\n\"3192165\";\"Radisel\";\"other\"\n\"3192241\";\"Ptuj\";\"main\"\n\"3192241\";\"Mestna obcina Ptuj\";\"other\"\n\"3192241\";\"Mestna občina Ptuj\";\"other\"\n\"3192241\";\"Pettau\";\"other\"\n\"3192241\";\"puto~ui\";\"other\"\n\"3192241\";\"Птуй\";\"other\"\n\"3192241\";\"プトゥイ\";\"other\"\n\"3192262\";\"Prvačina\";\"main\"\n\"3192262\";\"Prvacina\";\"ascii\"\n\"3192262\";\"Prevacina\";\"other\"\n\"3192484\";\"Prevalje\";\"main\"\n\"3192484\";\"Pollain\";\"other\"\n\"3192570\";\"Prebold\";\"main\"\n\"3192570\";\"Obcina Prebold\";\"other\"\n\"3192570\";\"Občina Prebold\";\"other\"\n\"3192570\";\"pureborudo\";\"other\"\n\"3192570\";\"プレボルド\";\"other\"\n\"3192603\";\"Pragersko\";\"main\"\n\"3192603\";\"Pragerhof\";\"other\"\n\"3192673\";\"Postojna\";\"main\"\n\"3192673\";\"Adelsberg\";\"other\"\n\"3192673\";\"Postumia\";\"other\"\n\"3192673\";\"Postumia Grotte\";\"other\"\n\"3192673\";\"Postumija\";\"other\"\n\"3192673\";\"Postúmia\";\"other\"\n\"3192673\";\"posutoina\";\"other\"\n\"3192673\";\"ポストイナ\";\"other\"\n\"3192682\";\"Portorož\";\"main\"\n\"3192682\";\"Portoroz\";\"ascii\"\n\"3192682\";\"Portorose\";\"other\"\n\"3192762\";\"Polzela\";\"main\"\n\"3192762\";\"Obcina Polzela\";\"other\"\n\"3192762\";\"Občina Polzela\";\"other\"\n\"3192762\";\"poruzera\";\"other\"\n\"3192762\";\"ポルゼラ\";\"other\"\n\"3192802\";\"Poljčane\";\"main\"\n\"3192802\";\"Poljcane\";\"ascii\"\n\"3193011\";\"Podhom\";\"main\"\n\"3193299\";\"Pivka\";\"main\"\n\"3193299\";\"Obcina Pivka\";\"other\"\n\"3193299\";\"Občina Pivka\";\"other\"\n\"3193299\";\"Pibka\";\"other\"\n\"3193299\";\"Pietro del Carso\";\"other\"\n\"3193299\";\"San Peter\";\"other\"\n\"3193299\";\"San Pietro del Carso\";\"other\"\n\"3193299\";\"Sent Peter\";\"other\"\n\"3193299\";\"Sent Peter na Krasu\";\"other\"\n\"3193299\";\"Sveti Peter na Krasu\";\"other\"\n\"3193299\";\"pifuka\";\"other\"\n\"3193299\";\"Šent Peter\";\"other\"\n\"3193299\";\"Šent Peter na Krasu\";\"other\"\n\"3193299\";\"Πίβκα\";\"other\"\n\"3193299\";\"Пивка\";\"other\"\n\"3193299\";\"ピフカ\";\"other\"\n\"3193341\";\"Piran\";\"main\"\n\"3193341\";\"Grad Piran\";\"other\"\n\"3193341\";\"Obcina Piran\";\"other\"\n\"3193341\";\"Občina Piran\";\"other\"\n\"3193341\";\"Pirano\";\"other\"\n\"3193341\";\"piran\";\"other\"\n\"3193341\";\"Пиран\";\"other\"\n\"3193341\";\"ピラン\";\"other\"\n\"3193521\";\"Pekre\";\"main\"\n\"3193659\";\"Pameče\";\"main\"\n\"3193659\";\"Pamece\";\"ascii\"\n\"3193965\";\"Ormož\";\"main\"\n\"3193965\";\"Ormoz\";\"ascii\"\n\"3193965\";\"Friedau\";\"other\"\n\"3193965\";\"Ormob\";\"other\"\n\"3193965\";\"Ormos\";\"other\"\n\"3193965\";\"Ormoš\";\"other\"\n\"3194086\";\"Oplotnica\";\"main\"\n\"3194086\";\"Obcina Oplotnica\";\"other\"\n\"3194086\";\"Občina Oplotnica\";\"other\"\n\"3194086\";\"opurotonitsu~a\";\"other\"\n\"3194086\";\"オプロトニツァ\";\"other\"\n\"3194213\";\"Odranci\";\"main\"\n\"3194213\";\"Adorjanfalva\";\"other\"\n\"3194213\";\"Adorjanhaza\";\"other\"\n\"3194213\";\"Adorjánfalva\";\"other\"\n\"3194213\";\"Adorjánháza\";\"other\"\n\"3194213\";\"Obcina Odranci\";\"other\"\n\"3194213\";\"Občina Odranci\";\"other\"\n\"3194213\";\"Odrance\";\"other\"\n\"3194213\";\"odorantsu~i\";\"other\"\n\"3194213\";\"オドランツィ\";\"other\"\n\"3194351\";\"Novo Mesto\";\"main\"\n\"3194351\";\"Nova Mesta\";\"other\"\n\"3194351\";\"Nova mehsta\";\"other\"\n\"3194351\";\"Novo mesto\";\"other\"\n\"3194351\";\"Rudolfswert\";\"other\"\n\"3194351\";\"Rudolfswerth\";\"other\"\n\"3194351\";\"xin mei si tuo shi\";\"other\"\n\"3194351\";\"Нова мэста\";\"other\"\n\"3194351\";\"Ново Место\";\"other\"\n\"3194351\";\"Ново место\";\"other\"\n\"3194351\";\"ノヴォ・メスト\";\"other\"\n\"3194351\";\"新梅斯托市\";\"other\"\n\"3194452\";\"Nova Gorica\";\"main\"\n\"3194452\";\"Gorica\";\"other\"\n\"3194452\";\"Nuova Gorizia\";\"other\"\n\"3194452\";\"nova gorica\";\"other\"\n\"3194452\";\"Нова Горица\";\"other\"\n\"3194452\";\"ノヴァ・ゴリツァ\";\"other\"\n\"3194622\";\"Muta\";\"main\"\n\"3194622\";\"Na Muti\";\"other\"\n\"3194648\";\"Murska Sobota\";\"main\"\n\"3194648\";\"Mestna obcina Murska Sobota\";\"other\"\n\"3194648\";\"Mestna občina Murska Sobota\";\"other\"\n\"3194648\";\"Muraszombat\";\"other\"\n\"3194648\";\"Murska Subota\";\"other\"\n\"3194648\";\"Oisnitz\";\"other\"\n\"3194648\";\"Olsnitz\";\"other\"\n\"3194648\";\"Sobota\";\"other\"\n\"3194648\";\"Szombat\";\"other\"\n\"3194648\";\"Мурска Собота\";\"other\"\n\"3194648\";\"ムルスカ・ソボタ\";\"other\"\n\"3194792\";\"Mozirje\";\"main\"\n\"3194792\";\"Obcina Mozirje\";\"other\"\n\"3194792\";\"Občina Mozirje\";\"other\"\n\"3194792\";\"Prassberg\";\"other\"\n\"3194792\";\"mojirye\";\"other\"\n\"3194792\";\"モジリェ\";\"other\"\n\"3194922\";\"Mojstrana\";\"main\"\n\"3195011\";\"Mislinja\";\"main\"\n\"3195011\";\"Mislinje\";\"other\"\n\"3195011\";\"Missling\";\"other\"\n\"3195011\";\"Velika Mislinja\";\"other\"\n\"3195041\";\"Mirna\";\"main\"\n\"3195054\";\"Miren\";\"main\"\n\"3195054\";\"Merna\";\"other\"\n\"3195162\";\"Miklavž na Dravskem Polju\";\"main\"\n\"3195162\";\"Miklavz na Dravskem Polju\";\"ascii\"\n\"3195162\";\"Miklavz\";\"other\"\n\"3195162\";\"Miklavž\";\"other\"\n\"3195162\";\"Sveti Miklavz\";\"other\"\n\"3195162\";\"Sveti Miklavž\";\"other\"\n\"3195202\";\"Mežica\";\"main\"\n\"3195202\";\"Mezica\";\"ascii\"\n\"3195214\";\"Metlika\";\"main\"\n\"3195214\";\"Mottling\";\"other\"\n\"3195214\";\"Möttling\";\"other\"\n\"3195214\";\"Obcina Metlika\";\"other\"\n\"3195214\";\"Občina Metlika\";\"other\"\n\"3195214\";\"metorika\";\"other\"\n\"3195214\";\"メトリカ\";\"other\"\n\"3195250\";\"Mengeš\";\"main\"\n\"3195250\";\"Menges\";\"ascii\"\n\"3195250\";\"Mengus\";\"other\"\n\"3195250\";\"Menguš\";\"other\"\n\"3195271\";\"Mekinje\";\"main\"\n\"3195281\";\"Medvode\";\"main\"\n\"3195281\";\"Медводе\";\"other\"\n\"3195506\";\"Maribor\";\"main\"\n\"3195506\";\"Marburg an der Drau\";\"other\"\n\"3195506\";\"Marburgo\";\"other\"\n\"3195506\";\"Maribora\";\"other\"\n\"3195506\";\"Mariboras\";\"other\"\n\"3195506\";\"Mariboro\";\"other\"\n\"3195506\";\"Mestna obcina Maribor\";\"other\"\n\"3195506\";\"Mestna občina Maribor\";\"other\"\n\"3195506\";\"ma li bo er\";\"other\"\n\"3195506\";\"mariboru\";\"other\"\n\"3195506\";\"Марибор\";\"other\"\n\"3195506\";\"マリボル\";\"other\"\n\"3195506\";\"马里博尔\";\"other\"\n\"3196165\";\"Lovrenc na Pohorju\";\"main\"\n\"3196165\";\"Saint Larenzen\";\"other\"\n\"3196165\";\"Sveti Lovrenc\";\"other\"\n\"3196307\";\"Ljutomer\";\"main\"\n\"3196307\";\"Luttenberg\";\"other\"\n\"3196307\";\"Obcina Ljutomer\";\"other\"\n\"3196307\";\"Občina Ljutomer\";\"other\"\n\"3196307\";\"ryutomeru\";\"other\"\n\"3196307\";\"リュトメル\";\"other\"\n\"3196359\";\"Ljubljana\";\"main\"\n\"3196359\";\"Aemona\";\"other\"\n\"3196359\";\"Laibach\";\"other\"\n\"3196359\";\"Lioumpliana\";\"other\"\n\"3196359\";\"Liubliana\";\"other\"\n\"3196359\";\"Lubiana\";\"other\"\n\"3196359\";\"Lubjana\";\"other\"\n\"3196359\";\"Lublan\";\"other\"\n\"3196359\";\"Lublana\";\"other\"\n\"3196359\";\"Lublaň\";\"other\"\n\"3196359\";\"Lubliano\";\"other\"\n\"3196359\";\"Lubljana\";\"other\"\n\"3196359\";\"Lyublyana\";\"other\"\n\"3196359\";\"li'ubliyana\";\"other\"\n\"3196359\";\"liubliana\";\"other\"\n\"3196359\";\"lu bu er ya na\";\"other\"\n\"3196359\";\"lyubeullyana\";\"other\"\n\"3196359\";\"lywblyana\";\"other\"\n\"3196359\";\"ryuburyana\";\"other\"\n\"3196359\";\"Ļubļana\";\"other\"\n\"3196359\";\"Ľubľana\";\"other\"\n\"3196359\";\"Λιουμπλιάνα\";\"other\"\n\"3196359\";\"Љубљана\";\"other\"\n\"3196359\";\"Любляна\";\"other\"\n\"3196359\";\"Լյուբլյանա\";\"other\"\n\"3196359\";\"לובליאנה\";\"other\"\n\"3196359\";\"ليوبليانا\";\"other\"\n\"3196359\";\"لیوبلیانا\";\"other\"\n\"3196359\";\"লিউব্লিয়ানা\";\"other\"\n\"3196359\";\"ლიუბლიანა\";\"other\"\n\"3196359\";\"ልዩብልያና\";\"other\"\n\"3196359\";\"リュブリャナ\";\"other\"\n\"3196359\";\"卢布尔雅那\";\"other\"\n\"3196359\";\"류블랴나\";\"other\"\n\"3196425\";\"Litija\";\"main\"\n\"3196425\";\"Littai\";\"other\"\n\"3196425\";\"Obcina Litija\";\"other\"\n\"3196425\";\"Občina Litija\";\"other\"\n\"3196425\";\"ritiya\";\"other\"\n\"3196425\";\"リティヤ\";\"other\"\n\"3196496\";\"Lipovci\";\"main\"\n\"3196496\";\"Harsliget\";\"other\"\n\"3196496\";\"Hársliget\";\"other\"\n\"3196496\";\"Lippahoc\";\"other\"\n\"3196496\";\"Lippahocz\";\"other\"\n\"3196496\";\"Lippahócz\";\"other\"\n\"3196560\";\"Limbuš\";\"main\"\n\"3196560\";\"Limbus\";\"ascii\"\n\"3196652\";\"Lesce\";\"main\"\n\"3196652\";\"Lees\";\"other\"\n\"3196652\";\"Lesc\";\"other\"\n\"3196681\";\"Lendava\";\"main\"\n\"3196681\";\"Alsolendva\";\"other\"\n\"3196681\";\"Alsólendva\";\"other\"\n\"3196681\";\"Dolnja Lendava\";\"other\"\n\"3196681\";\"Donja Lendava\";\"other\"\n\"3196681\";\"Donja Lendova\";\"other\"\n\"3196681\";\"Lendva\";\"other\"\n\"3196681\";\"Obcina Lendava\";\"other\"\n\"3196681\";\"Občina Lendava\";\"other\"\n\"3196681\";\"Unter-Limbach\";\"other\"\n\"3196681\";\"rendavu~a\";\"other\"\n\"3196681\";\"レンダヴァ\";\"other\"\n\"3196682\";\"Lenart v Slovenskih Goricah\";\"main\"\n\"3196682\";\"Lenart\";\"other\"\n\"3196682\";\"Sankt Leonhard\";\"other\"\n\"3196682\";\"Sent Lenart\";\"other\"\n\"3196682\";\"Sveti Lenard\";\"other\"\n\"3196682\";\"Sveti Lenart\";\"other\"\n\"3196682\";\"Šent Lenart\";\"other\"\n\"3196760\";\"Laško\";\"main\"\n\"3196760\";\"Lasko\";\"ascii\"\n\"3196760\";\"Laski Trg\";\"other\"\n\"3196760\";\"Laški Trg\";\"other\"\n\"3196760\";\"Obcina Lasko\";\"other\"\n\"3196760\";\"Občina Laško\";\"other\"\n\"3196760\";\"Tueffer\";\"other\"\n\"3196760\";\"Tüffer\";\"other\"\n\"3196760\";\"rashuko\";\"other\"\n\"3196760\";\"ラーシュコ\";\"other\"\n\"3197147\";\"Krško\";\"main\"\n\"3197147\";\"Krsko\";\"ascii\"\n\"3197147\";\"Gurkfeld\";\"other\"\n\"3197147\";\"Krshko\";\"other\"\n\"3197147\";\"Obcina Krsko\";\"other\"\n\"3197147\";\"Občina Krško\";\"other\"\n\"3197147\";\"kurushuko\";\"other\"\n\"3197147\";\"Кршко\";\"other\"\n\"3197147\";\"クルシュコ\";\"other\"\n\"3197163\";\"Kromberk\";\"main\"\n\"3197163\";\"Komberg\";\"other\"\n\"3197163\";\"Moncorona\";\"other\"\n\"3197164\";\"Krog\";\"main\"\n\"3197164\";\"Korong\";\"other\"\n\"3197373\";\"Kranjska Gora\";\"main\"\n\"3197373\";\"Kronau\";\"other\"\n\"3197373\";\"Obcina Kranjska Gora\";\"other\"\n\"3197373\";\"Občina Kranjska Gora\";\"other\"\n\"3197373\";\"クランスカ・ゴーラ\";\"other\"\n\"3197378\";\"Kranj\";\"main\"\n\"3197378\";\"Cragni\";\"other\"\n\"3197378\";\"Krainburg\";\"other\"\n\"3197378\";\"Kran'\";\"other\"\n\"3197378\";\"kurani\";\"other\"\n\"3197378\";\"Крань\";\"other\"\n\"3197378\";\"クラーニ\";\"other\"\n\"3197539\";\"Kotlje\";\"main\"\n\"3197539\";\"Kotle\";\"other\"\n\"3197753\";\"Koper\";\"main\"\n\"3197753\";\"Capodistria\";\"other\"\n\"3197753\";\"Grad Kopar\";\"other\"\n\"3197753\";\"Kopar\";\"other\"\n\"3197753\";\"Koperis\";\"other\"\n\"3197753\";\"koperu\";\"other\"\n\"3197753\";\"Копер\";\"other\"\n\"3197753\";\"コペル\";\"other\"\n\"3197904\";\"Kokrica\";\"main\"\n\"3197943\";\"Kočevje\";\"main\"\n\"3197943\";\"Kocevje\";\"ascii\"\n\"3197943\";\"Gottschee\";\"other\"\n\"3197943\";\"Kochev'e\";\"other\"\n\"3197943\";\"Kotsebie\";\"other\"\n\"3197943\";\"kochevje\";\"other\"\n\"3197943\";\"kochevu~ie\";\"other\"\n\"3197943\";\"kochevu~i~e\";\"other\"\n\"3197943\";\"Κοτσέβιε\";\"other\"\n\"3197943\";\"Кочевье\";\"other\"\n\"3197943\";\"Кочевје\";\"other\"\n\"3197943\";\"コチェーヴィェ\";\"other\"\n\"3197943\";\"コチェーヴィエ\";\"other\"\n\"3197983\";\"Kobarid\";\"main\"\n\"3197983\";\"Caporetto\";\"other\"\n\"3197983\";\"Cjauret\";\"other\"\n\"3197983\";\"Cjaurêt\";\"other\"\n\"3197983\";\"Karfreit\";\"other\"\n\"3197983\";\"Obcina Kobarid\";\"other\"\n\"3197983\";\"Občina Kobarid\";\"other\"\n\"3197983\";\"kobarido\";\"other\"\n\"3197983\";\"Кобарид\";\"other\"\n\"3197983\";\"コバリード\";\"other\"\n\"3198165\";\"Kidričevo\";\"main\"\n\"3198165\";\"Kidricevo\";\"ascii\"\n\"3198165\";\"Strnisce\";\"other\"\n\"3198165\";\"Strnišče\";\"other\"\n\"3198354\";\"Kanal\";\"main\"\n\"3198354\";\"Canale\";\"other\"\n\"3198354\";\"Canale d'Isonzo\";\"other\"\n\"3198354\";\"Canale d’Isonzo\";\"other\"\n\"3198365\";\"Kamnik\";\"main\"\n\"3198365\";\"Stein\";\"other\"\n\"3198365\";\"kamuniku\";\"other\"\n\"3198365\";\"Камник\";\"other\"\n\"3198365\";\"カムニーク\";\"other\"\n\"3198366\";\"Kamnica\";\"main\"\n\"3198647\";\"Jesenice\";\"main\"\n\"3198647\";\"Assling\";\"other\"\n\"3198647\";\"Obcina Jesenice\";\"other\"\n\"3198647\";\"Občina Jesenice\";\"other\"\n\"3198647\";\"i~esenitsu~e\";\"other\"\n\"3198647\";\"Јесенице\";\"other\"\n\"3198647\";\"イェセニツェ\";\"other\"\n\"3199017\";\"Izola\";\"main\"\n\"3199017\";\"Isola\";\"other\"\n\"3199017\";\"Isola d'Istria\";\"other\"\n\"3199017\";\"Izla\";\"other\"\n\"3199017\";\"Ižla\";\"other\"\n\"3199017\";\"Obcina Izola\";\"other\"\n\"3199017\";\"Občina Izola\";\"other\"\n\"3199017\";\"izora\";\"other\"\n\"3199017\";\"Изола\";\"other\"\n\"3199017\";\"イゾラ\";\"other\"\n\"3199020\";\"Izlake\";\"main\"\n\"3199131\";\"Ilirska Bistrica\";\"main\"\n\"3199131\";\"Bisterza\";\"other\"\n\"3199131\";\"Illyrisch Feistritz\";\"other\"\n\"3199131\";\"Obcina Ilirska Bistrica\";\"other\"\n\"3199131\";\"Občina Ilirska Bistrica\";\"other\"\n\"3199131\";\"Villa del Nevoso\";\"other\"\n\"3199131\";\"イリルスカ・ビストリツァ\";\"other\"\n\"3199162\";\"Ig\";\"main\"\n\"3199162\";\"Ig pri Ljubljana\";\"other\"\n\"3199162\";\"Ig-Studenec\";\"other\"\n\"3199162\";\"Iggdorf\";\"other\"\n\"3199162\";\"Studenec-Ig\";\"other\"\n\"3199171\";\"Idrija\";\"main\"\n\"3199171\";\"Idria\";\"other\"\n\"3199243\";\"Hrušica\";\"main\"\n\"3199243\";\"Hrusica\";\"ascii\"\n\"3199297\";\"Hrastnik\";\"main\"\n\"3199297\";\"Hrastnigg\";\"other\"\n\"3199297\";\"Khrastnik\";\"other\"\n\"3199297\";\"Храстник\";\"other\"\n\"3199347\";\"Horjul\";\"main\"\n\"3199523\";\"Grosuplje\";\"main\"\n\"3199856\";\"Gotovlje\";\"main\"\n\"3200197\";\"Gornja Radgona\";\"main\"\n\"3200197\";\"Radgona\";\"other\"\n\"3200197\";\"Regede\";\"other\"\n\"3200197\";\"ゴルニャ・ラドゴナ\";\"other\"\n\"3200385\";\"Straža\";\"main\"\n\"3200385\";\"Straza\";\"ascii\"\n\"3200385\";\"Gorenja Straza\";\"other\"\n\"3200385\";\"Gorenja Straža\";\"other\"\n\"3200385\";\"Gornja Straza\";\"other\"\n\"3200385\";\"Gornja Straža\";\"other\"\n\"3200385\";\"Ober-Strascha\";\"other\"\n\"3200450\";\"Golnik\";\"main\"\n\"3200721\";\"Gančani\";\"main\"\n\"3200721\";\"Gancani\";\"ascii\"\n\"3200721\";\"Ganicsa\";\"other\"\n\"3200721\";\"Gánicsa\";\"other\"\n\"3200721\";\"Lendvarozsavolgy\";\"other\"\n\"3200721\";\"Lendvarózsavölgy\";\"other\"\n\"3201253\";\"Dravograd\";\"main\"\n\"3201253\";\"Obcina Dravograd\";\"other\"\n\"3201253\";\"Občina Dravograd\";\"other\"\n\"3201253\";\"Spodnji Dravograd\";\"other\"\n\"3201253\";\"Unter-Drauburg\";\"other\"\n\"3201253\";\"torabogurato\";\"other\"\n\"3201253\";\"トラボグラート\";\"other\"\n\"3201294\";\"Dragomer\";\"main\"\n\"3201730\";\"Domžale\";\"main\"\n\"3201730\";\"Domzale\";\"ascii\"\n\"3201730\";\"Obcina Domzale\";\"other\"\n\"3201730\";\"Občina Domžale\";\"other\"\n\"3201730\";\"domujare\";\"other\"\n\"3201730\";\"ドムジャレ\";\"other\"\n\"3201994\";\"Dob\";\"main\"\n\"3202019\";\"Divača\";\"main\"\n\"3202019\";\"Divaca\";\"ascii\"\n\"3202019\";\"Divaccia\";\"other\"\n\"3202019\";\"Divazza\";\"other\"\n\"3202019\";\"divu~acha\";\"other\"\n\"3202019\";\"ディヴァーチャ\";\"other\"\n\"3202070\";\"Deskle\";\"main\"\n\"3202070\";\"Descla\";\"other\"\n\"3202111\";\"Dekani\";\"main\"\n\"3202111\";\"Decani\";\"other\"\n\"3202111\";\"Pasja Vas\";\"other\"\n\"3202111\";\"Villa Decani\";\"other\"\n\"3202333\";\"Črnomelj\";\"main\"\n\"3202333\";\"Crnomelj\";\"ascii\"\n\"3202333\";\"Chrnomel'\";\"other\"\n\"3202333\";\"Obcina Crnomelj\";\"other\"\n\"3202333\";\"Občina Črnomelj\";\"other\"\n\"3202333\";\"Tschernembl\";\"other\"\n\"3202333\";\"cherunomeri\";\"other\"\n\"3202333\";\"Чрномель\";\"other\"\n\"3202333\";\"チェルノメリ\";\"other\"\n\"3202459\";\"Črna na Koroškem\";\"main\"\n\"3202459\";\"Crna na Koroskem\";\"ascii\"\n\"3202459\";\"Crna\";\"other\"\n\"3202459\";\"Črna\";\"other\"\n\"3202524\";\"Črenšovci\";\"main\"\n\"3202524\";\"Crensovci\";\"ascii\"\n\"3202524\";\"Cserencsocz\";\"other\"\n\"3202524\";\"Cserencsócz\";\"other\"\n\"3202524\";\"Cserfold\";\"other\"\n\"3202524\";\"Cserföld\";\"other\"\n\"3202700\";\"Černelavci\";\"main\"\n\"3202700\";\"Cernelavci\";\"ascii\"\n\"3202700\";\"Crnelavci\";\"other\"\n\"3202700\";\"Kisszombat\";\"other\"\n\"3202700\";\"Črnelavci\";\"other\"\n\"3202709\";\"Cerknica\";\"main\"\n\"3202709\";\"Circonio\";\"other\"\n\"3202709\";\"Obcina Cerknica\";\"other\"\n\"3202709\";\"Občina Cerknica\";\"other\"\n\"3202709\";\"Zirknitz\";\"other\"\n\"3202709\";\"tsu~erukunitsu~a\";\"other\"\n\"3202709\";\"ツェルクニツァ\";\"other\"\n\"3202781\";\"Celje\";\"main\"\n\"3202781\";\"Cele\";\"other\"\n\"3202781\";\"Celeia\";\"other\"\n\"3202781\";\"Cilli\";\"other\"\n\"3202781\";\"Tsel'e\";\"other\"\n\"3202781\";\"tsu~erye\";\"other\"\n\"3202781\";\"Целе\";\"other\"\n\"3202781\";\"Цеље\";\"other\"\n\"3202781\";\"ツェリェ\";\"other\"\n\"3203286\";\"Britof\";\"main\"\n\"3203338\";\"Brezovica\";\"main\"\n\"3203338\";\"Brezovica pri Ljubljani\";\"other\"\n\"3203412\";\"Brežice\";\"main\"\n\"3203412\";\"Brezice\";\"ascii\"\n\"3203412\";\"Brezhice\";\"other\"\n\"3203412\";\"Obcina Brezice\";\"other\"\n\"3203412\";\"Občina Brežice\";\"other\"\n\"3203412\";\"Rann\";\"other\"\n\"3203412\";\"burejitsu~e\";\"other\"\n\"3203412\";\"Брежице\";\"other\"\n\"3203412\";\"ブレージツェ\";\"other\"\n\"3203443\";\"Brestrnica\";\"main\"\n\"3203443\";\"Bresternica\";\"other\"\n\"3203611\";\"Bovec\";\"main\"\n\"3203611\";\"Flitsch\";\"other\"\n\"3203611\";\"Obcina Bovec\";\"other\"\n\"3203611\";\"Občina Bovec\";\"other\"\n\"3203611\";\"Plezzo\";\"other\"\n\"3203611\";\"bovu~etsu\";\"other\"\n\"3203611\";\"Бовец\";\"other\"\n\"3203611\";\"ボヴェツ\";\"other\"\n\"3203677\";\"Borovnica\";\"main\"\n\"3203808\";\"Bohinjska Bistrica\";\"main\"\n\"3203808\";\"Bokhin'ska-Bystrica\";\"other\"\n\"3203808\";\"Wochein Feistritz\";\"other\"\n\"3203808\";\"Бохиньска-Быстрица\";\"other\"\n\"3203925\";\"Bled\";\"main\"\n\"3203925\";\"Obcina Bled\";\"other\"\n\"3203925\";\"Občina Bled\";\"other\"\n\"3203925\";\"Veldes\";\"other\"\n\"3203925\";\"bureddo\";\"other\"\n\"3203925\";\"Блед\";\"other\"\n\"3203925\";\"ブレッド\";\"other\"\n\"3204144\";\"Bilje\";\"main\"\n\"3204144\";\"Biglia\";\"other\"\n\"3204303\";\"Beltinci\";\"main\"\n\"3204303\";\"Belatinc\";\"other\"\n\"3204303\";\"Belatincz\";\"other\"\n\"3204303\";\"Obcina Beltinci\";\"other\"\n\"3204303\";\"Občina Beltinci\";\"other\"\n\"3204303\";\"beltinci\";\"other\"\n\"3204303\";\"berutintsu~i\";\"other\"\n\"3204303\";\"Белтинци\";\"other\"\n\"3204303\";\"ベルティンツィ\";\"other\"\n\"3204598\";\"Bakovci\";\"main\"\n\"3204598\";\"Barkoc\";\"other\"\n\"3204598\";\"Barkocz\";\"other\"\n\"3204598\";\"Barkóc\";\"other\"\n\"3204598\";\"Barkócz\";\"other\"\n\"3204854\";\"Ajdovščina\";\"main\"\n\"3204854\";\"Ajdovscina\";\"ascii\"\n\"3204854\";\"Agintobstsina\";\"other\"\n\"3204854\";\"Aidussina\";\"other\"\n\"3204854\";\"Haidenschaft\";\"other\"\n\"3204854\";\"Hajdensaft\";\"other\"\n\"3204854\";\"Hajdenšaft\";\"other\"\n\"3204854\";\"Obcina Ajdovscina\";\"other\"\n\"3204854\";\"Občina Ajdovščina\";\"other\"\n\"3204854\";\"aidofushuchina\";\"other\"\n\"3204854\";\"Αγιντόβστσινα\";\"other\"\n\"3204854\";\"アイドフシュチナ\";\"other\"\n\"3216508\";\"Solkan\";\"main\"\n\"3217862\";\"Koroška-Bela\";\"main\"\n\"3217862\";\"Koroska-Bela\";\"ascii\"\n\"3218364\";\"Cerkno\";\"main\"\n\"3218364\";\"Circhina\";\"other\"\n\"3218907\";\"Logatec\";\"main\"\n\"3218907\";\"Obcina Logatec\";\"other\"\n\"3218907\";\"Občina Logatec\";\"other\"\n\"3218907\";\"rogatetsu\";\"other\"\n\"3218907\";\"ロガテツ\";\"other\"\n\"3220262\";\"Ankaran\";\"main\"\n\"3220262\";\"Ancarano\";\"other\"\n\"3339120\";\"Zreče\";\"main\"\n\"3339120\";\"Zrece\";\"ascii\"\n\"3339124\";\"Radizel\";\"main\"\n\"3339124\";\"Radizelj\";\"other\"\n\"3343512\";\"Lucija\";\"main\"\n\"3343512\";\"Lucia\";\"other\"\n\"3343518\";\"Jagodje\";\"main\"\n\"6956383\";\"Kisovec\";\"main\"\n\"2729907\";\"Longyearbyen\";\"main\"\n\"2729907\";\"rongui~erubin\";\"other\"\n\"2729907\";\"ロングイェールビーン\";\"other\"\n\"7535941\";\"Olonkinbyen\";\"main\"\n\"7535941\";\"Olonkin City\";\"other\"\n\"7535941\";\"Olonkinbjuehn\";\"other\"\n\"7535941\";\"Olonkinstad\";\"other\"\n\"7535941\";\"Олонкинбюэн\";\"other\"\n\"723082\";\"Ždiar\";\"main\"\n\"723082\";\"Zdiar\";\"ascii\"\n\"723082\";\"Zhd'jar\";\"other\"\n\"723082\";\"Ждьяр\";\"other\"\n\"723119\";\"Vysoké Tatry\";\"main\"\n\"723119\";\"Vysoke Tatry\";\"ascii\"\n\"723119\";\"Smokovec\";\"other\"\n\"723119\";\"Vysokie Tatry\";\"other\"\n\"723119\";\"Высокие Татры\";\"other\"\n\"723143\";\"Vyšné Ružbachy\";\"main\"\n\"723143\";\"Vysne Ruzbachy\";\"ascii\"\n\"723143\";\"Druzbaki Wyzny\";\"other\"\n\"723143\";\"Druzbaki Wyżny\";\"other\"\n\"723143\";\"Vyshne Ruzhbakhi\";\"other\"\n\"723143\";\"Vysnie Ruzbachy\";\"other\"\n\"723143\";\"Vyšnie Ružbachy\";\"other\"\n\"723143\";\"Вышне Ружбахи\";\"other\"\n\"723195\";\"Vranov nad Topľou\";\"main\"\n\"723195\";\"Vranov nad Topl'ou\";\"ascii\"\n\"723195\";\"Varanno\";\"other\"\n\"723195\";\"Varannó\";\"other\"\n\"723195\";\"Vranov\";\"other\"\n\"723195\";\"Vranov nad Toplou\";\"other\"\n\"723195\";\"vranov\";\"other\"\n\"723195\";\"Вранов\";\"other\"\n\"723224\";\"Vinné\";\"main\"\n\"723224\";\"Vinne\";\"ascii\"\n\"723224\";\"Vinna\";\"other\"\n\"723224\";\"Vinná\";\"other\"\n\"723224\";\"Винне\";\"other\"\n\"723358\";\"Trebišov\";\"main\"\n\"723358\";\"Trebisov\";\"ascii\"\n\"723358\";\"Toketerebes\";\"other\"\n\"723358\";\"Trebishov\";\"other\"\n\"723358\";\"Tőketerebes\";\"other\"\n\"723358\";\"Требишов\";\"other\"\n\"723411\";\"Svit\";\"main\"\n\"723411\";\"Swit\";\"other\"\n\"723411\";\"Szvit\";\"other\"\n\"723411\";\"Świt\";\"other\"\n\"723411\";\"Свит\";\"other\"\n\"723417\";\"Svidník\";\"main\"\n\"723417\";\"Svidnik\";\"ascii\"\n\"723417\";\"Felsovizkoez\";\"other\"\n\"723417\";\"Felsővízköz\";\"other\"\n\"723417\";\"Vysnyj Svidnik\";\"other\"\n\"723417\";\"Vyšnyj Svidnik\";\"other\"\n\"723417\";\"Свидник\";\"other\"\n\"723455\";\"Stropkov\";\"main\"\n\"723455\";\"Stropkiv\";\"other\"\n\"723455\";\"Sztropko\";\"other\"\n\"723455\";\"Sztropkó\";\"other\"\n\"723455\";\"Стропков\";\"other\"\n\"723455\";\"Стропків\";\"other\"\n\"723468\";\"Štrba\";\"main\"\n\"723468\";\"Strba\";\"ascii\"\n\"723468\";\"Shtrba\";\"other\"\n\"723468\";\"Штрба\";\"other\"\n\"723470\";\"Strážske\";\"main\"\n\"723470\";\"Strazske\";\"ascii\"\n\"723505\";\"Stará ľubovňa\";\"main\"\n\"723505\";\"Stara lubovna\";\"ascii\"\n\"723505\";\"Olublo\";\"other\"\n\"723505\";\"Stara Ljubovnja\";\"other\"\n\"723505\";\"Stara Lubovna\";\"other\"\n\"723505\";\"Stara Lubowla\";\"other\"\n\"723505\";\"Stará Ľubovňa\";\"other\"\n\"723505\";\"Ólubló\";\"other\"\n\"723505\";\"Стара Любовня\";\"other\"\n\"723519\";\"Spišské Podhradie\";\"main\"\n\"723519\";\"Spisske Podhradie\";\"ascii\"\n\"723519\";\"Spishske Podgrad'e\";\"other\"\n\"723519\";\"Spiskie Podhradie\";\"other\"\n\"723519\";\"Spiśkie Podhradie\";\"other\"\n\"723519\";\"Szepesvaralja\";\"other\"\n\"723519\";\"Szepesváralja\";\"other\"\n\"723519\";\"Спишске Подградье\";\"other\"\n\"723526\";\"Spišská Nová Ves\";\"main\"\n\"723526\";\"Spisska Nova Ves\";\"ascii\"\n\"723526\";\"Iglo\";\"other\"\n\"723526\";\"Igló\";\"other\"\n\"723526\";\"Neudorf\";\"other\"\n\"723526\";\"Spishska Nova Ves\";\"other\"\n\"723526\";\"Spiska Nowa Wies\";\"other\"\n\"723526\";\"Spiska Nowa Wieś\";\"other\"\n\"723526\";\"Spisska\";\"other\"\n\"723526\";\"Spišská\";\"other\"\n\"723526\";\"Спишска Нова Вес\";\"other\"\n\"723529\";\"Spišská Belá\";\"main\"\n\"723529\";\"Spisska Bela\";\"ascii\"\n\"723554\";\"Sobrance\";\"main\"\n\"723554\";\"Szobranc\";\"other\"\n\"723554\";\"Szobránc\";\"other\"\n\"723554\";\"Собранце\";\"other\"\n\"723559\";\"Snina\";\"main\"\n\"723559\";\"Szinna\";\"other\"\n\"723559\";\"Снина\";\"other\"\n\"723637\";\"Sečovce\";\"main\"\n\"723637\";\"Secovce\";\"ascii\"\n\"723674\";\"Sabinov\";\"main\"\n\"723674\";\"Kisseben\";\"other\"\n\"723674\";\"Kisszeben\";\"other\"\n\"723674\";\"Zeben\";\"other\"\n\"723674\";\"Сабинов\";\"other\"\n\"723713\";\"Rožňava\";\"main\"\n\"723713\";\"Roznava\";\"ascii\"\n\"723713\";\"Rosenau\";\"other\"\n\"723713\";\"Rozhnjava\";\"other\"\n\"723713\";\"Rozsnyo\";\"other\"\n\"723713\";\"Rozsnyó\";\"other\"\n\"723713\";\"Рожнява\";\"other\"\n\"723736\";\"Rimavská Sobota\";\"main\"\n\"723736\";\"Rimavska Sobota\";\"ascii\"\n\"723736\";\"Rima-Szombat\";\"other\"\n\"723736\";\"Rimaszombat\";\"other\"\n\"723736\";\"Sobota Rimavska\";\"other\"\n\"723736\";\"Sobota Rimavská\";\"other\"\n\"723736\";\"Римавска Собота\";\"other\"\n\"723747\";\"Revúca\";\"main\"\n\"723747\";\"Revuca\";\"ascii\"\n\"723747\";\"Nagyroce\";\"other\"\n\"723747\";\"Nagyrőce\";\"other\"\n\"723747\";\"Ревуца\";\"other\"\n\"723819\";\"Prešov\";\"main\"\n\"723819\";\"Presov\";\"ascii\"\n\"723819\";\"Eperjes\";\"other\"\n\"723819\";\"Prasiv\";\"other\"\n\"723819\";\"Preshov\";\"other\"\n\"723819\";\"Presova\";\"other\"\n\"723819\";\"Preszow\";\"other\"\n\"723819\";\"Preszów\";\"other\"\n\"723819\";\"Prešova\";\"other\"\n\"723819\";\"Prjashev\";\"other\"\n\"723819\";\"prswb\";\"other\"\n\"723819\";\"Прешов\";\"other\"\n\"723819\";\"Пряшев\";\"other\"\n\"723819\";\"Пряшів\";\"other\"\n\"723819\";\"פרשוב\";\"other\"\n\"723846\";\"Poprad\";\"main\"\n\"723846\";\"Deutschendorf\";\"other\"\n\"723846\";\"Попрад\";\"other\"\n\"723866\";\"Podolínec\";\"main\"\n\"723866\";\"Podolinec\";\"ascii\"\n\"724026\";\"Nová Lesná\";\"main\"\n\"724026\";\"Nova Lesna\";\"ascii\"\n\"724026\";\"Neu-Walddorf\";\"other\"\n\"724026\";\"Nova-Lesna\";\"other\"\n\"724026\";\"Нова-Лесна\";\"other\"\n\"724111\";\"Moldava nad Bodvou\";\"main\"\n\"724111\";\"Moldava-nad-Bodvou\";\"other\"\n\"724111\";\"Szepsi\";\"other\"\n\"724111\";\"Молдава-над-Бодвоу\";\"other\"\n\"724144\";\"Michalovce\";\"main\"\n\"724144\";\"Grossmichel\";\"other\"\n\"724144\";\"Großmichel\";\"other\"\n\"724144\";\"Mikhalovce\";\"other\"\n\"724144\";\"Nagymihaly\";\"other\"\n\"724144\";\"Nagymihály\";\"other\"\n\"724144\";\"miharofutsu~e\";\"other\"\n\"724144\";\"Михаловце\";\"other\"\n\"724144\";\"ミハロフツェ\";\"other\"\n\"724156\";\"Medzilaborce\";\"main\"\n\"724156\";\"Boro\";\"other\"\n\"724156\";\"Boró\";\"other\"\n\"724156\";\"Mezolaborc\";\"other\"\n\"724156\";\"Mezolaborcz\";\"other\"\n\"724156\";\"Mezőlaborc\";\"other\"\n\"724156\";\"Mezőlaborcz\";\"other\"\n\"724156\";\"Медзилаборце\";\"other\"\n\"724159\";\"Medzev\";\"main\"\n\"724159\";\"Nizni Medzev\";\"other\"\n\"724159\";\"Nizny Medzev\";\"other\"\n\"724159\";\"Nižní Medzev\";\"other\"\n\"724159\";\"Nižný Medzev\";\"other\"\n\"724159\";\"Unter-Metzenseifen\";\"other\"\n\"724159\";\"Медзев\";\"other\"\n\"724265\";\"Ľubica\";\"main\"\n\"724265\";\"Lubica\";\"ascii\"\n\"724265\";\"Leibitz\";\"other\"\n\"724286\";\"Lipany\";\"main\"\n\"724286\";\"Lipiany\";\"other\"\n\"724294\";\"Levoča\";\"main\"\n\"724294\";\"Levoca\";\"ascii\"\n\"724294\";\"Leutschau\";\"other\"\n\"724294\";\"Levocha\";\"other\"\n\"724294\";\"Lewocza\";\"other\"\n\"724294\";\"Locse\";\"other\"\n\"724294\";\"Löcse\";\"other\"\n\"724294\";\"Lőcse\";\"other\"\n\"724294\";\"Левоча\";\"other\"\n\"724377\";\"Krompachy\";\"main\"\n\"724377\";\"Korompa\";\"other\"\n\"724377\";\"Krompachi\";\"other\"\n\"724377\";\"Krompakhi\";\"other\"\n\"724377\";\"Кромпахи\";\"other\"\n\"724443\";\"Košice\";\"main\"\n\"724443\";\"Kosice\";\"ascii\"\n\"724443\";\"Kaschau\";\"other\"\n\"724443\";\"Kassa\";\"other\"\n\"724443\";\"Koesice\";\"other\"\n\"724443\";\"Koshice\";\"other\"\n\"724443\";\"Koszyce\";\"other\"\n\"724443\";\"Kösice\";\"other\"\n\"724443\";\"ke xi ce\";\"other\"\n\"724443\";\"koshitsu~e\";\"other\"\n\"724443\";\"kosiche\";\"other\"\n\"724443\";\"qwsyzh\";\"other\"\n\"724443\";\"Кошице\";\"other\"\n\"724443\";\"קושיצה\";\"other\"\n\"724443\";\"コシツェ\";\"other\"\n\"724443\";\"科希策\";\"other\"\n\"724443\";\"코시체\";\"other\"\n\"724503\";\"Kežmarok\";\"main\"\n\"724503\";\"Kezmarok\";\"ascii\"\n\"724503\";\"Kaesmark\";\"other\"\n\"724503\";\"Kesmark\";\"other\"\n\"724503\";\"Kezhmarok\";\"other\"\n\"724503\";\"Kezmarokas\";\"other\"\n\"724503\";\"Kežmarokas\";\"other\"\n\"724503\";\"Kiezmark\";\"other\"\n\"724503\";\"Kieżmark\";\"other\"\n\"724503\";\"Käsmark\";\"other\"\n\"724503\";\"Késmárk\";\"other\"\n\"724503\";\"Кежмарок\";\"other\"\n\"724627\";\"Humenné\";\"main\"\n\"724627\";\"Humenne\";\"ascii\"\n\"724627\";\"Gumenne\";\"other\"\n\"724627\";\"Homonna\";\"other\"\n\"724627\";\"Гуменне\";\"other\"\n\"724784\";\"Giraltovce\";\"main\"\n\"724784\";\"Oiraltovce\";\"other\"\n\"724800\";\"Gelnica\";\"main\"\n\"724800\";\"Goelnicbanya\";\"other\"\n\"724800\";\"Gollnitz\";\"other\"\n\"724800\";\"Gölnicbánya\";\"other\"\n\"724800\";\"Гелница\";\"other\"\n\"724893\";\"Dobšiná\";\"main\"\n\"724893\";\"Dobsina\";\"ascii\"\n\"724893\";\"Dobschau\";\"other\"\n\"724893\";\"Dobshina\";\"other\"\n\"724893\";\"Добшина\";\"other\"\n\"724941\";\"Čierna nad Tisou\";\"main\"\n\"724941\";\"Cierna nad Tisou\";\"ascii\"\n\"724941\";\"Agcsernyo\";\"other\"\n\"724941\";\"Cerna\";\"other\"\n\"724941\";\"Cherna\";\"other\"\n\"724941\";\"Cierna\";\"other\"\n\"724941\";\"Cserno\";\"other\"\n\"724941\";\"Csernő\";\"other\"\n\"724941\";\"Černá\";\"other\"\n\"724941\";\"Čierna\";\"other\"\n\"724969\";\"Chlmec\";\"main\"\n\"724969\";\"Chlumec\";\"other\"\n\"725168\";\"Bardejov\";\"main\"\n\"725168\";\"Bardiow\";\"other\"\n\"725168\";\"Bardiów\";\"other\"\n\"725168\";\"Bartfa\";\"other\"\n\"725168\";\"Bartfeld\";\"other\"\n\"725168\";\"Bártfa\";\"other\"\n\"725168\";\"bardejov\";\"other\"\n\"725168\";\"brdywb\";\"other\"\n\"725168\";\"Бардейов\";\"other\"\n\"725168\";\"ברדיוב\";\"other\"\n\"3056459\";\"Zvolen\";\"main\"\n\"3056459\";\"Altsohl\";\"other\"\n\"3056459\";\"Zolyom\";\"other\"\n\"3056459\";\"Zwolen\";\"other\"\n\"3056459\";\"Zwoleń\";\"other\"\n\"3056459\";\"Zólyom\";\"other\"\n\"3056459\";\"zvolen\";\"other\"\n\"3056459\";\"Зволен\";\"other\"\n\"3056495\";\"Zlaté Moravce\";\"main\"\n\"3056495\";\"Zlate Moravce\";\"ascii\"\n\"3056508\";\"Žilina\";\"main\"\n\"3056508\";\"Zilina\";\"ascii\"\n\"3056508\";\"Sillein\";\"other\"\n\"3056508\";\"Solna\";\"other\"\n\"3056508\";\"Zhilina\";\"other\"\n\"3056508\";\"Zsolna\";\"other\"\n\"3056508\";\"Zylina\";\"other\"\n\"3056508\";\"Żylina\";\"other\"\n\"3056508\";\"Жилина\";\"other\"\n\"3056523\";\"Žiar nad Hronom\";\"main\"\n\"3056523\";\"Ziar nad Hronom\";\"ascii\"\n\"3056523\";\"Svaty Kriz nad Hronom\";\"other\"\n\"3056523\";\"Svätý Kríž nad Hronom\";\"other\"\n\"3056547\";\"Želiezovce\";\"main\"\n\"3056547\";\"Zeliezovce\";\"ascii\"\n\"3056547\";\"Zseliz\";\"other\"\n\"3056589\";\"Žarnovica\";\"main\"\n\"3056589\";\"Zarnovica\";\"ascii\"\n\"3056589\";\"Zarovnica\";\"other\"\n\"3056589\";\"Žarovnica\";\"other\"\n\"3056683\";\"Vrútky\";\"main\"\n\"3056683\";\"Vrutky\";\"ascii\"\n\"3056697\";\"Vrbové\";\"main\"\n\"3056697\";\"Vrbove\";\"ascii\"\n\"3056697\";\"Verbo\";\"other\"\n\"3056697\";\"Verbó\";\"other\"\n\"3056697\";\"Врбове\";\"other\"\n\"3056711\";\"Vráble\";\"main\"\n\"3056711\";\"Vrable\";\"ascii\"\n\"3056711\";\"Verebely\";\"other\"\n\"3056711\";\"Verebély\";\"other\"\n\"3056816\";\"Veľký Meder\";\"main\"\n\"3056816\";\"Vel'ky Meder\";\"ascii\"\n\"3056816\";\"Calovo\";\"other\"\n\"3056816\";\"Nagy Meder\";\"other\"\n\"3056816\";\"Nagymegyer\";\"other\"\n\"3056816\";\"Čalovo\";\"other\"\n\"3057063\";\"Tvrdošín\";\"main\"\n\"3057063\";\"Tvrdosin\";\"ascii\"\n\"3057069\";\"Turzovka\";\"main\"\n\"3057108\";\"Trstená\";\"main\"\n\"3057108\";\"Trstena\";\"ascii\"\n\"3057108\";\"Trsztena\";\"other\"\n\"3057108\";\"Trzciana\";\"other\"\n\"3057124\";\"Trnava\";\"main\"\n\"3057124\";\"Nagyszombat\";\"other\"\n\"3057124\";\"Trnawa\";\"other\"\n\"3057124\";\"Tyrnau\";\"other\"\n\"3057124\";\"Трнава\";\"other\"\n\"3057140\";\"Trenčín\";\"main\"\n\"3057140\";\"Trencin\";\"ascii\"\n\"3057140\";\"Trenchin\";\"other\"\n\"3057140\";\"Trencsen\";\"other\"\n\"3057140\";\"Trencsén\";\"other\"\n\"3057140\";\"Trenczyn\";\"other\"\n\"3057140\";\"Trentschin\";\"other\"\n\"3057140\";\"Trentsen\";\"other\"\n\"3057140\";\"Trenčin\";\"other\"\n\"3057140\";\"Тренчин\";\"other\"\n\"3057141\";\"Trenčianske Teplice\";\"main\"\n\"3057141\";\"Trencianske Teplice\";\"ascii\"\n\"3057191\";\"Tlmače\";\"main\"\n\"3057191\";\"Tlmace\";\"ascii\"\n\"3057191\";\"Garamtolmacs\";\"other\"\n\"3057191\";\"Garamtolmács\";\"other\"\n\"3057191\";\"Timac\";\"other\"\n\"3057191\";\"Timace\";\"other\"\n\"3057191\";\"Timač\";\"other\"\n\"3057191\";\"Timače\";\"other\"\n\"3057197\";\"Tisovec\";\"main\"\n\"3057197\";\"Theissholz\";\"other\"\n\"3057197\";\"Tiszolcz\";\"other\"\n\"3057273\";\"Svodín\";\"main\"\n\"3057273\";\"Svodin\";\"ascii\"\n\"3057273\";\"Seldin\";\"other\"\n\"3057273\";\"Seldín\";\"other\"\n\"3057273\";\"Szogyen\";\"other\"\n\"3057273\";\"Szolgyen\";\"other\"\n\"3057273\";\"Szölgyén\";\"other\"\n\"3057273\";\"Szőgyén\";\"other\"\n\"3057304\";\"Svätý Jur\";\"main\"\n\"3057304\";\"Svaty Jur\";\"ascii\"\n\"3057304\";\"Jur pri Bratislave\";\"other\"\n\"3057304\";\"Sanct Georgius\";\"other\"\n\"3057304\";\"Sankt Georgen\";\"other\"\n\"3057304\";\"Svaety Jur\";\"other\"\n\"3057304\";\"Svety Jur\";\"other\"\n\"3057304\";\"Szentgyoergy\";\"other\"\n\"3057304\";\"Szentgyörgy\";\"other\"\n\"3057304\";\"Светы Юр\";\"other\"\n\"3057339\";\"Šurany\";\"main\"\n\"3057339\";\"Surany\";\"ascii\"\n\"3057339\";\"Nagysurany\";\"other\"\n\"3057339\";\"Nagysurány\";\"other\"\n\"3057339\";\"Shurany\";\"other\"\n\"3057339\";\"Suran\";\"other\"\n\"3057339\";\"Surány\";\"other\"\n\"3057339\";\"shurani\";\"other\"\n\"3057339\";\"shwran\";\"other\"\n\"3057339\";\"Şuran\";\"other\"\n\"3057339\";\"Шураны\";\"other\"\n\"3057339\";\"شوران\";\"other\"\n\"3057339\";\"シュラニ\";\"other\"\n\"3057379\";\"Štúrovo\";\"main\"\n\"3057379\";\"Sturovo\";\"ascii\"\n\"3057379\";\"Parkan\";\"other\"\n\"3057379\";\"Parkany\";\"other\"\n\"3057379\";\"Párkány\";\"other\"\n\"3057379\";\"Shturovo\";\"other\"\n\"3057379\";\"Штурово\";\"other\"\n\"3057384\";\"Stupava\";\"main\"\n\"3057384\";\"Stampfen\";\"other\"\n\"3057384\";\"Stomfa\";\"other\"\n\"3057384\";\"Ступава\";\"other\"\n\"3057480\";\"Stará Turá\";\"main\"\n\"3057480\";\"Stara Tura\";\"ascii\"\n\"3057480\";\"Otura\";\"other\"\n\"3057480\";\"Ótura\";\"other\"\n\"3057552\";\"Smolenice\";\"main\"\n\"3057552\";\"Смоленице\";\"other\"\n\"3057602\";\"Sládkovičovo\";\"main\"\n\"3057602\";\"Sladkovicovo\";\"ascii\"\n\"3057602\";\"Diosek\";\"other\"\n\"3057602\";\"Dioszeg\";\"other\"\n\"3057602\";\"Diószeg\";\"other\"\n\"3057602\";\"Kis-Dioszeg\";\"other\"\n\"3057602\";\"Kis-Diószeg\";\"other\"\n\"3057602\";\"Maly Diosek\";\"other\"\n\"3057602\";\"Malý Diosek\";\"other\"\n\"3057602\";\"Nagy-Dioszeg\";\"other\"\n\"3057602\";\"Nagy-Diószeg\";\"other\"\n\"3057602\";\"Vel'ky Diosek\";\"other\"\n\"3057602\";\"Veldiosek\";\"other\"\n\"3057602\";\"Veľký Diosek\";\"other\"\n\"3057630\";\"Skalica\";\"main\"\n\"3057691\";\"Senica\";\"main\"\n\"3057691\";\"Сеница\";\"other\"\n\"3057692\";\"Senec\";\"main\"\n\"3057692\";\"Szenc\";\"other\"\n\"3057692\";\"Сенец\";\"other\"\n\"3057757\";\"Šamorín\";\"main\"\n\"3057757\";\"Samorin\";\"ascii\"\n\"3057757\";\"Somorja\";\"other\"\n\"3057769\";\"Šaľa\";\"main\"\n\"3057769\";\"Sal'a\";\"ascii\"\n\"3057769\";\"Sala\";\"other\"\n\"3057769\";\"Sala nad Vahom\";\"other\"\n\"3057769\";\"Sellye\";\"other\"\n\"3057769\";\"Shalja\";\"other\"\n\"3057769\";\"Vagsellye\";\"other\"\n\"3057769\";\"Vágsellye\";\"other\"\n\"3057769\";\"Šala nad Váhom\";\"other\"\n\"3057769\";\"Шаля\";\"other\"\n\"3057772\";\"Šahy\";\"main\"\n\"3057772\";\"Sahy\";\"ascii\"\n\"3057772\";\"Ipoly Sagh\";\"other\"\n\"3057772\";\"Ipoly Ságh\";\"other\"\n\"3057772\";\"Ipolysag\";\"other\"\n\"3057772\";\"Ipolyság\";\"other\"\n\"3057772\";\"Sag\";\"other\"\n\"3057772\";\"Shagi\";\"other\"\n\"3057772\";\"Ság\";\"other\"\n\"3057772\";\"Шаги\";\"other\"\n\"3057789\";\"Ružomberok\";\"main\"\n\"3057789\";\"Ruzomberok\";\"ascii\"\n\"3057789\";\"Rosenberg\";\"other\"\n\"3057789\";\"Rozahegy\";\"other\"\n\"3057789\";\"Rozsahegy\";\"other\"\n\"3057789\";\"Roźahegy\";\"other\"\n\"3057789\";\"Ruzhomberok\";\"other\"\n\"3057789\";\"Ruzomberk\";\"other\"\n\"3057789\";\"Rużomberk\";\"other\"\n\"3057789\";\"Rózsahegy\";\"other\"\n\"3057789\";\"Ружомберок\";\"other\"\n\"3057910\";\"Rajec\";\"main\"\n\"3057963\";\"Púchov\";\"main\"\n\"3057963\";\"Puchov\";\"ascii\"\n\"3057963\";\"Pucho\";\"other\"\n\"3057963\";\"Puho\";\"other\"\n\"3057963\";\"Puhó\";\"other\"\n\"3057963\";\"Pukhov\";\"other\"\n\"3057963\";\"Пухов\";\"other\"\n\"3058000\";\"Prievidza\";\"main\"\n\"3058000\";\"Pr'evidza\";\"other\"\n\"3058000\";\"Privigye\";\"other\"\n\"3058000\";\"Прьевидза\";\"other\"\n\"3058012\";\"Pribylina\";\"main\"\n\"3058012\";\"Прибылина\";\"other\"\n\"3058060\";\"Považská Bystrica\";\"main\"\n\"3058060\";\"Povazska Bystrica\";\"ascii\"\n\"3058060\";\"Bystrica\";\"other\"\n\"3058060\";\"Povazhska Bistrica\";\"other\"\n\"3058060\";\"Povazske Bystraica\";\"other\"\n\"3058060\";\"Powazska Bystrzyca\";\"other\"\n\"3058060\";\"Poważska Bystrzyca\";\"other\"\n\"3058060\";\"Vagbeszterce\";\"other\"\n\"3058060\";\"Vágbeszterce\";\"other\"\n\"3058060\";\"Waagbistritz\";\"other\"\n\"3058060\";\"Поважска Бистрица\";\"other\"\n\"3058083\";\"Poltár\";\"main\"\n\"3058083\";\"Poltar\";\"ascii\"\n\"3058202\";\"Piešťany\";\"main\"\n\"3058202\";\"Piestany\";\"ascii\"\n\"3058202\";\"Piest'anoch\";\"other\"\n\"3058202\";\"Pieszczany\";\"other\"\n\"3058202\";\"Piešťanoch\";\"other\"\n\"3058202\";\"Poestyen\";\"other\"\n\"3058202\";\"Pöstyén\";\"other\"\n\"3058202\";\"p'eshtjany\";\"other\"\n\"3058202\";\"Пьештяны\";\"other\"\n\"3058210\";\"Pezinok\";\"main\"\n\"3058210\";\"Bazin\";\"other\"\n\"3058210\";\"Poesing\";\"other\"\n\"3058210\";\"Pösing\";\"other\"\n\"3058210\";\"Пезинок\";\"other\"\n\"3058268\";\"Partizánske\";\"main\"\n\"3058268\";\"Partizanske\";\"ascii\"\n\"3058268\";\"Bat'ovany\";\"other\"\n\"3058268\";\"Baťovany\";\"other\"\n\"3058268\";\"Partyzanske\";\"other\"\n\"3058268\";\"Partyzánske\";\"other\"\n\"3058268\";\"Simonovany\";\"other\"\n\"3058268\";\"Simony\";\"other\"\n\"3058268\";\"Šimonovany\";\"other\"\n\"3058268\";\"Παρτιζάνσκε\";\"other\"\n\"3058268\";\"Партизанске\";\"other\"\n\"3058472\";\"Nové Zámky\";\"main\"\n\"3058472\";\"Nove Zamky\";\"ascii\"\n\"3058472\";\"Ersekujvar\";\"other\"\n\"3058472\";\"Neuhaeusel\";\"other\"\n\"3058472\";\"Neuhaus\";\"other\"\n\"3058472\";\"Neuhäusel\";\"other\"\n\"3058472\";\"Uyvar\";\"other\"\n\"3058472\";\"awywar\";\"other\"\n\"3058472\";\"nove zamki\";\"other\"\n\"3058472\";\"Érsekújvár\";\"other\"\n\"3058472\";\"Нове Замки\";\"other\"\n\"3058472\";\"اویوار\";\"other\"\n\"3058477\";\"Nové Mesto nad Váhom\";\"main\"\n\"3058477\";\"Nove Mesto nad Vahom\";\"ascii\"\n\"3058477\";\"Nove Mesto nad Vagom\";\"other\"\n\"3058477\";\"Otura\";\"other\"\n\"3058477\";\"Vagujhely\";\"other\"\n\"3058477\";\"Vágújhely\";\"other\"\n\"3058477\";\"Ótura\";\"other\"\n\"3058477\";\"Нове Место над Вагом\";\"other\"\n\"3058493\";\"Nováky\";\"main\"\n\"3058493\";\"Novaky\";\"ascii\"\n\"3058493\";\"Navaky\";\"other\"\n\"3058496\";\"Nová Dubnica\";\"main\"\n\"3058496\";\"Nova Dubnica\";\"ascii\"\n\"3058496\";\"Kiskelecseny\";\"other\"\n\"3058496\";\"Kiskelecsény\";\"other\"\n\"3058496\";\"Ujtoelgyes\";\"other\"\n\"3058496\";\"Újtölgyes\";\"other\"\n\"3058498\";\"Nová Baňa\";\"main\"\n\"3058498\";\"Nova Bana\";\"ascii\"\n\"3058498\";\"Konigsberg\";\"other\"\n\"3058498\";\"Königsberg\";\"other\"\n\"3058531\";\"Nitra\";\"main\"\n\"3058531\";\"Neutra\";\"other\"\n\"3058531\";\"Nyitra\";\"other\"\n\"3058531\";\"nitora\";\"other\"\n\"3058531\";\"nytrh\";\"other\"\n\"3058531\";\"Нитра\";\"other\"\n\"3058531\";\"ניטרה\";\"other\"\n\"3058531\";\"ニトラ\";\"other\"\n\"3058546\";\"Nemšová\";\"main\"\n\"3058546\";\"Nemsova\";\"ascii\"\n\"3058579\";\"Námestovo\";\"main\"\n\"3058579\";\"Namestovo\";\"ascii\"\n\"3058579\";\"Nameszto\";\"other\"\n\"3058579\";\"Namiestow\";\"other\"\n\"3058579\";\"Namiestów\";\"other\"\n\"3058579\";\"Námesztó\";\"other\"\n\"3058579\";\"Наместово\";\"other\"\n\"3058611\";\"Myjava\";\"main\"\n\"3058611\";\"Miava\";\"other\"\n\"3058663\";\"Modra\";\"main\"\n\"3058663\";\"Modor\";\"other\"\n\"3058663\";\"Модра\";\"other\"\n\"3058780\";\"Martin\";\"main\"\n\"3058780\";\"Turciansky Svaty Martin\";\"other\"\n\"3058780\";\"Turčiansky Svätý Martin\";\"other\"\n\"3058780\";\"Мартин\";\"other\"\n\"3058897\";\"Malacky\";\"main\"\n\"3058897\";\"Malacka\";\"other\"\n\"3058897\";\"Malacke\";\"other\"\n\"3058897\";\"Malacki\";\"other\"\n\"3058897\";\"Malaczka\";\"other\"\n\"3058897\";\"Malczka\";\"other\"\n\"3058897\";\"Малацки\";\"other\"\n\"3058986\";\"Lučenec\";\"main\"\n\"3058986\";\"Lucenec\";\"ascii\"\n\"3058986\";\"Losonc\";\"other\"\n\"3058986\";\"Losoncz\";\"other\"\n\"3058986\";\"Luchenec\";\"other\"\n\"3058986\";\"Лученец\";\"other\"\n\"3059050\";\"Liptovský Mikuláš\";\"main\"\n\"3059050\";\"Liptovsky Mikulas\";\"ascii\"\n\"3059050\";\"Liptau-Sankt-Nikolaus\";\"other\"\n\"3059050\";\"Liptoszentmiklos\";\"other\"\n\"3059050\";\"Liptovski Mikulash\";\"other\"\n\"3059050\";\"Liptovsky Svaty Mikulas\";\"other\"\n\"3059050\";\"Liptovský Svätý Mikuláš\";\"other\"\n\"3059050\";\"Liptowski Mikulasz\";\"other\"\n\"3059050\";\"Liptószentmiklós\";\"other\"\n\"3059050\";\"Липтовски Микулаш\";\"other\"\n\"3059053\";\"Liptovský Hrádok\";\"main\"\n\"3059053\";\"Liptovsky Hradok\";\"ascii\"\n\"3059101\";\"Levice\";\"main\"\n\"3059101\";\"Leua\";\"other\"\n\"3059101\";\"Leva\";\"other\"\n\"3059101\";\"Léva\";\"other\"\n\"3059101\";\"lwh\";\"other\"\n\"3059101\";\"Левице\";\"other\"\n\"3059101\";\"لوه\";\"other\"\n\"3059111\";\"Leopoldov\";\"main\"\n\"3059111\";\"Mestecko\";\"other\"\n\"3059111\";\"Mestečko\";\"other\"\n\"3059111\";\"Ujvaroska\";\"other\"\n\"3059111\";\"Újvároska\";\"other\"\n\"3059111\";\"Леополдов\";\"other\"\n\"3059179\";\"Kysucké Nové Mesto\";\"main\"\n\"3059179\";\"Kysucke Nove Mesto\";\"ascii\"\n\"3059179\";\"Kisucke Nove Mesto\";\"other\"\n\"3059179\";\"Kiszucaujhely\";\"other\"\n\"3059179\";\"Kiszucaújhely\";\"other\"\n\"3059179\";\"Кисуцке Нове Место\";\"other\"\n\"3059244\";\"Krupina\";\"main\"\n\"3059244\";\"Крупина\";\"other\"\n\"3059282\";\"Kremnica\";\"main\"\n\"3059282\";\"Koermoecbanya\";\"other\"\n\"3059282\";\"Kormoczbanya\";\"other\"\n\"3059282\";\"Kremnitz\";\"other\"\n\"3059282\";\"Körmöcbánya\";\"other\"\n\"3059282\";\"Körmöczbánya\";\"other\"\n\"3059282\";\"Кремница\";\"other\"\n\"3059436\";\"Komárno\";\"main\"\n\"3059436\";\"Komarno\";\"ascii\"\n\"3059436\";\"Eszak-Komarom\";\"other\"\n\"3059436\";\"Komarnom\";\"other\"\n\"3059436\";\"Komarom\";\"other\"\n\"3059436\";\"Komorn\";\"other\"\n\"3059436\";\"Komárom\";\"other\"\n\"3059436\";\"Észak-Komárom\";\"other\"\n\"3059436\";\"Комарно\";\"other\"\n\"3059448\";\"Kolárovo\";\"main\"\n\"3059448\";\"Kolarovo\";\"ascii\"\n\"3059448\";\"Guta\";\"other\"\n\"3059448\";\"Gutta\";\"other\"\n\"3059796\";\"Ilava\";\"main\"\n\"3059796\";\"Hava\";\"other\"\n\"3059796\";\"Illava\";\"other\"\n\"3059796\";\"Илава\";\"other\"\n\"3059803\";\"Hybe\";\"main\"\n\"3059821\";\"Hurbanovo\";\"main\"\n\"3059821\";\"Altdala\";\"other\"\n\"3059821\";\"Ogyalla\";\"other\"\n\"3059821\";\"Stara d'ala\";\"other\"\n\"3059821\";\"Stará ďala\";\"other\"\n\"3059821\";\"Ógyalla\";\"other\"\n\"3059870\";\"Hriňová\";\"main\"\n\"3059870\";\"Hrinova\";\"ascii\"\n\"3059870\";\"Herencsvoelgy\";\"other\"\n\"3059870\";\"Herencsvölgy\";\"other\"\n\"3060077\";\"Holíč\";\"main\"\n\"3060077\";\"Holic\";\"ascii\"\n\"3060095\";\"Hlohovec\";\"main\"\n\"3060095\";\"Galgoc\";\"other\"\n\"3060095\";\"Galgóc\";\"other\"\n\"3060095\";\"glogovec\";\"other\"\n\"3060095\";\"Глоговец\";\"other\"\n\"3060139\";\"Handlová\";\"main\"\n\"3060139\";\"Handlova\";\"ascii\"\n\"3060208\";\"Gbely\";\"main\"\n\"3060208\";\"Egbell\";\"other\"\n\"3060219\";\"Galanta\";\"main\"\n\"3060219\";\"Galánta\";\"other\"\n\"3060219\";\"Галанта\";\"other\"\n\"3060242\";\"Fiľakovo\";\"main\"\n\"3060242\";\"Fil'akovo\";\"ascii\"\n\"3060242\";\"Filek\";\"other\"\n\"3060242\";\"Fuelek\";\"other\"\n\"3060242\";\"Fülek\";\"other\"\n\"3060242\";\"fylk\";\"other\"\n\"3060242\";\"فیلک\";\"other\"\n\"3060308\";\"Dunajská Streda\";\"main\"\n\"3060308\";\"Dunajska Streda\";\"ascii\"\n\"3060308\";\"Duna-Szerdahely\";\"other\"\n\"3060308\";\"Dunaszerdahely\";\"other\"\n\"3060308\";\"Дунайска Стреда\";\"other\"\n\"3060308\";\"ドゥナイスカー・ストレダ\";\"other\"\n\"3060346\";\"Dubnica nad Váhom\";\"main\"\n\"3060346\";\"Dubnica nad Vahom\";\"ascii\"\n\"3060346\";\"Dubnica-nad-Vagom\";\"other\"\n\"3060346\";\"Mariatoelgyes\";\"other\"\n\"3060346\";\"Máriatölgyes\";\"other\"\n\"3060346\";\"Дубница-над-Вагом\";\"other\"\n\"3060405\";\"Dolný Kubín\";\"main\"\n\"3060405\";\"Dolny Kubin\";\"ascii\"\n\"3060405\";\"Alsokubin\";\"other\"\n\"3060405\";\"Alsókubin\";\"other\"\n\"3060405\";\"Dolni Kubin\";\"other\"\n\"3060405\";\"Dolní Kubín\";\"other\"\n\"3060405\";\"Долны Кубин\";\"other\"\n\"3060835\";\"Čadca\";\"main\"\n\"3060835\";\"Cadca\";\"ascii\"\n\"3060835\";\"Chadca\";\"other\"\n\"3060835\";\"Csaca\";\"other\"\n\"3060835\";\"Csacza\";\"other\"\n\"3060835\";\"Czaca\";\"other\"\n\"3060835\";\"Чадца\";\"other\"\n\"3060839\";\"Čachtice\";\"main\"\n\"3060839\";\"Cachtice\";\"ascii\"\n\"3060839\";\"Chakhtice\";\"other\"\n\"3060839\";\"Чахтице\";\"other\"\n\"3060852\";\"Bytča\";\"main\"\n\"3060852\";\"Bytca\";\"ascii\"\n\"3060852\";\"Bitcha\";\"other\"\n\"3060852\";\"Nagybiccse\";\"other\"\n\"3060852\";\"Битча\";\"other\"\n\"3060942\";\"Brezová pod Bradlom\";\"main\"\n\"3060942\";\"Brezova pod Bradlom\";\"ascii\"\n\"3060942\";\"Berezo\";\"other\"\n\"3060942\";\"Berezó\";\"other\"\n\"3060950\";\"Brezno\";\"main\"\n\"3060950\";\"Brezno nad Hronom\";\"other\"\n\"3060950\";\"Breznobanya\";\"other\"\n\"3060950\";\"Breznon\";\"other\"\n\"3060950\";\"Breznóbánya\";\"other\"\n\"3060950\";\"Bries\";\"other\"\n\"3060950\";\"Брезно\";\"other\"\n\"3060972\";\"Bratislava\";\"main\"\n\"3060972\";\"An Bhrataslaiv\";\"other\"\n\"3060972\";\"An Bhratasláiv\";\"other\"\n\"3060972\";\"Bratislavo\";\"other\"\n\"3060972\";\"Bratislawa\";\"other\"\n\"3060972\";\"Bratisllava\";\"other\"\n\"3060972\";\"Bratyslawa\";\"other\"\n\"3060972\";\"Bratysława\";\"other\"\n\"3060972\";\"Mpratislaba\";\"other\"\n\"3060972\";\"Pozsony\";\"other\"\n\"3060972\";\"Presburg\";\"other\"\n\"3060972\";\"Presporok\";\"other\"\n\"3060972\";\"Prespurk\";\"other\"\n\"3060972\";\"Pressburg\";\"other\"\n\"3060972\";\"Preszburg\";\"other\"\n\"3060972\";\"Preßburg\";\"other\"\n\"3060972\";\"Prešporok\";\"other\"\n\"3060972\";\"Prešpurk\";\"other\"\n\"3060972\";\"beulatiseullaba\";\"other\"\n\"3060972\";\"bra ti sla wa\";\"other\"\n\"3060972\";\"bratyslafa\";\"other\"\n\"3060972\";\"bratyslaw\";\"other\"\n\"3060972\";\"bratyslawa\";\"other\"\n\"3060972\";\"bu la di si la fa\";\"other\"\n\"3060972\";\"burachisuravu~a\";\"other\"\n\"3060972\";\"Μπρατισλάβα\";\"other\"\n\"3060972\";\"Братислава\";\"other\"\n\"3060972\";\"Братіслава\";\"other\"\n\"3060972\";\"Բրատիսլավա\";\"other\"\n\"3060972\";\"ברטיסלאבה\";\"other\"\n\"3060972\";\"براتيسلافا\";\"other\"\n\"3060972\";\"براتیسلاو\";\"other\"\n\"3060972\";\"براتیسلاوا\";\"other\"\n\"3060972\";\"ܒܪܬܝܣܠܒܐ‏\";\"other\"\n\"3060972\";\"บราติสลาวา\";\"other\"\n\"3060972\";\"ბრატისლავა\";\"other\"\n\"3060972\";\"ブラチスラヴァ\";\"other\"\n\"3060972\";\"布拉迪斯拉发\";\"other\"\n\"3060972\";\"브라티슬라바\";\"other\"\n\"3061015\";\"Bojnice\";\"main\"\n\"3061015\";\"Bajmoc\";\"other\"\n\"3061015\";\"Bajmóc\";\"other\"\n\"3061015\";\"Бойнице\";\"other\"\n\"3061184\";\"Banská Štiavnica\";\"main\"\n\"3061184\";\"Banska Stiavnica\";\"ascii\"\n\"3061184\";\"Banska Sht'javnica\";\"other\"\n\"3061184\";\"Banska Stiavnica a Banska Bela\";\"other\"\n\"3061184\";\"Banská Štiavnica a Banská Belá\";\"other\"\n\"3061184\";\"Schemnitz\";\"other\"\n\"3061184\";\"Selmecbanya\";\"other\"\n\"3061184\";\"Selmecbánya\";\"other\"\n\"3061184\";\"Selmeczbanya\";\"other\"\n\"3061184\";\"Selmeczbánya\";\"other\"\n\"3061184\";\"banseuka syutiapeunicha\";\"other\"\n\"3061184\";\"Банска Штьявница\";\"other\"\n\"3061184\";\"バンスカー・シュチャヴニツァ\";\"other\"\n\"3061184\";\"반스카 슈티아프니차\";\"other\"\n\"3061186\";\"Banská Bystrica\";\"main\"\n\"3061186\";\"Banska Bystrica\";\"ascii\"\n\"3061186\";\"Banska Bistrica\";\"other\"\n\"3061186\";\"Banska Bystrzyca\";\"other\"\n\"3061186\";\"Bańska Bystrzyca\";\"other\"\n\"3061186\";\"Besztercebanya\";\"other\"\n\"3061186\";\"Besztercebánya\";\"other\"\n\"3061186\";\"Beszterczebanya\";\"other\"\n\"3061186\";\"Beszterczebánya\";\"other\"\n\"3061186\";\"Neusohl\";\"other\"\n\"3061186\";\"Банска Бистрица\";\"other\"\n\"3061186\";\"Бањска Бистрица\";\"other\"\n\"3061186\";\"バンスカー・ビストリツァ\";\"other\"\n\"3061188\";\"Bánovce nad Bebravou\";\"main\"\n\"3061188\";\"Banovce nad Bebravou\";\"ascii\"\n\"3061188\";\"Banovce\";\"other\"\n\"6559492\";\"Oravská Lesná\";\"main\"\n\"6559492\";\"Oravska Lesna\";\"ascii\"\n\"6559492\";\"Erdudka\";\"other\"\n\"6559492\";\"Erdutka\";\"other\"\n\"6559492\";\"Erdúdka\";\"other\"\n\"6559492\";\"Erdútka\";\"other\"\n\"6559492\";\"Lesna\";\"other\"\n\"2402689\";\"Zimmi\";\"main\"\n\"2402689\";\"Zimi\";\"other\"\n\"2402715\";\"Yonibana\";\"main\"\n\"2402816\";\"Yengema\";\"main\"\n\"2403056\";\"Wima\";\"main\"\n\"2403094\";\"Waterloo\";\"main\"\n\"2403303\";\"Tongole\";\"main\"\n\"2403322\";\"Tombu\";\"main\"\n\"2403324\";\"Tombodu\";\"main\"\n\"2403324\";\"Fobu\";\"other\"\n\"2403407\";\"Tintafor\";\"main\"\n\"2403407\";\"Tintfor\";\"other\"\n\"2403513\";\"Tefea\";\"main\"\n\"2403513\";\"Tefee\";\"other\"\n\"2403698\";\"Sumbuya\";\"main\"\n\"2403828\";\"Simbakoro\";\"main\"\n\"2403896\";\"Serabu\";\"main\"\n\"2404036\";\"Seidu\";\"main\"\n\"2404067\";\"Sawkta\";\"main\"\n\"2404254\";\"Rotifunk\";\"main\"\n\"2404303\";\"Rokupr\";\"main\"\n\"2404423\";\"Potoru\";\"main\"\n\"2404433\";\"Port Loko\";\"main\"\n\"2404433\";\"Port Loka\";\"other\"\n\"2404433\";\"Port Lokko\";\"other\"\n\"2404433\";\"Port-Loko\";\"other\"\n\"2404433\";\"Порт-Локо\";\"other\"\n\"2404472\";\"Peyima\";\"main\"\n\"2404607\";\"Pepel\";\"main\"\n\"2404614\";\"Pendembu\";\"main\"\n\"2404663\";\"Panguma\";\"main\"\n\"2404876\";\"Ngiehun\";\"main\"\n\"2404876\";\"Giehun\";\"other\"\n\"2405013\";\"Moyamba\";\"main\"\n\"2405038\";\"Motema\";\"main\"\n\"2405274\";\"Mogbwemo\";\"main\"\n\"2405274\";\"Mogbembo\";\"other\"\n\"2405347\";\"Mobai\";\"main\"\n\"2405701\";\"Masoyila\";\"main\"\n\"2405729\";\"Masingbi\";\"main\"\n\"2405841\";\"Masaka\";\"main\"\n\"2405952\";\"Manowa\";\"main\"\n\"2406067\";\"Mange\";\"main\"\n\"2406142\";\"Mamboma\";\"main\"\n\"2406145\";\"Mambolo\";\"main\"\n\"2406145\";\"Mambola\";\"other\"\n\"2406407\";\"Makeni\";\"main\"\n\"2406407\";\"Макени\";\"other\"\n\"2406473\";\"Makali\";\"main\"\n\"2406576\";\"Magburaka\";\"main\"\n\"2406576\";\"Magburuka\";\"other\"\n\"2406916\";\"Lunsar\";\"main\"\n\"2406916\";\"Lansar\";\"other\"\n\"2406916\";\"Lunsare\";\"other\"\n\"2406916\";\"Лунсаре\";\"other\"\n\"2406963\";\"Loma\";\"main\"\n\"2407089\";\"Lago\";\"main\"\n\"2407089\";\"Largo\";\"other\"\n\"2407262\";\"Kukuna\";\"main\"\n\"2407262\";\"Kakuna\";\"other\"\n\"2407428\";\"Koribundu\";\"main\"\n\"2407660\";\"Koidu\";\"main\"\n\"2407790\";\"Kenema\";\"main\"\n\"2407790\";\"Keneme\";\"other\"\n\"2407790\";\"Кенеме\";\"other\"\n\"2407829\";\"Kayima\";\"main\"\n\"2407899\";\"Kassiri\";\"main\"\n\"2407899\";\"Karsarai\";\"other\"\n\"2407899\";\"Kasiri\";\"other\"\n\"2408088\";\"Kambia\";\"main\"\n\"2408154\";\"Kamakwie\";\"main\"\n\"2408154\";\"Makwi\";\"other\"\n\"2408154\";\"Makwie\";\"other\"\n\"2408250\";\"Kailahun\";\"main\"\n\"2408329\";\"Kabala\";\"main\"\n\"2408329\";\"Kaballa\";\"other\"\n\"2408399\";\"Jojoima\";\"main\"\n\"2408399\";\"Joioima\";\"other\"\n\"2408582\";\"Hastings\";\"main\"\n\"2408585\";\"Hangha\";\"main\"\n\"2408683\";\"Gorahun\";\"main\"\n\"2408770\";\"Freetown\";\"main\"\n\"2408770\";\"Fritaun\";\"other\"\n\"2408770\";\"Funkia\";\"other\"\n\"2408770\";\"Godrich\";\"other\"\n\"2408770\";\"Фритаун\";\"other\"\n\"2408845\";\"Giehun\";\"main\"\n\"2409019\";\"Gberia Fotombu\";\"main\"\n\"2409215\";\"Gandorhun\";\"main\"\n\"2409306\";\"Freetown\";\"main\"\n\"2409306\";\"Fritaun\";\"other\"\n\"2409306\";\"Fritaunas\";\"other\"\n\"2409306\";\"Fritauno\";\"other\"\n\"2409306\";\"Fritaŭno\";\"other\"\n\"2409306\";\"Phritaoun\";\"other\"\n\"2409306\";\"Saint George\";\"other\"\n\"2409306\";\"fu li dun\";\"other\"\n\"2409306\";\"furitaun\";\"other\"\n\"2409306\";\"peulitaun\";\"other\"\n\"2409306\";\"zi you shi\";\"other\"\n\"2409306\";\"Φρίταουν\";\"other\"\n\"2409306\";\"Фритаун\";\"other\"\n\"2409306\";\"פריטאון\";\"other\"\n\"2409306\";\"فری‌تاون\";\"other\"\n\"2409306\";\"ፍሪታውን\";\"other\"\n\"2409306\";\"フリータウン\";\"other\"\n\"2409306\";\"弗里敦\";\"other\"\n\"2409306\";\"自由市\";\"other\"\n\"2409306\";\"프리타운\";\"other\"\n\"2409382\";\"Foindu\";\"main\"\n\"2409663\";\"Daru\";\"main\"\n\"2409751\";\"Bwedu\";\"main\"\n\"2409751\";\"Buedu\";\"other\"\n\"2409783\";\"Bunumbu\";\"main\"\n\"2409823\";\"Bumpe\";\"main\"\n\"2409829\";\"Bumbuna\";\"main\"\n\"2409914\";\"Bonthe\";\"main\"\n\"2409914\";\"Bonth\";\"other\"\n\"2409970\";\"Bomi\";\"main\"\n\"2410040\";\"Boajibu\";\"main\"\n\"2410048\";\"Bo\";\"main\"\n\"2410048\";\"Бо\";\"other\"\n\"2410065\";\"Blama\";\"main\"\n\"2410093\";\"Bindi\";\"main\"\n\"2410312\";\"Barma\";\"main\"\n\"2410624\";\"Baiima\";\"main\"\n\"2410708\";\"Alikalia\";\"main\"\n\"2566569\";\"Konakridee\";\"main\"\n\"2570857\";\"Gbewebu\";\"main\"\n\"2571039\";\"Pujehun\";\"main\"\n\"3166645\";\"Serravalle\";\"main\"\n\"3166645\";\"Серравалле\";\"other\"\n\"3168070\";\"San Marino\";\"main\"\n\"3168070\";\"Citta di San Marino\";\"other\"\n\"3168070\";\"Città di San Marino\";\"other\"\n\"3168070\";\"Ciudad de San Marino\";\"other\"\n\"3168070\";\"Ciutat de San Marino\";\"other\"\n\"3168070\";\"Saint-Marin\";\"other\"\n\"3168070\";\"San Marinas\";\"other\"\n\"3168070\";\"San Marino Citta\";\"other\"\n\"3168070\";\"San Marino Città\";\"other\"\n\"3168070\";\"San Marino by\";\"other\"\n\"3168070\";\"San Maríno\";\"other\"\n\"3168070\";\"San-Marino\";\"other\"\n\"3168070\";\"Sao Marino\";\"other\"\n\"3168070\";\"São Marino\";\"other\"\n\"3168070\";\"Zsita de San Marin\";\"other\"\n\"3168070\";\"Zsità de San Marin\";\"other\"\n\"3168070\";\"san marynw almdynt\";\"other\"\n\"3168070\";\"sanmalino si\";\"other\"\n\"3168070\";\"sanmarino\";\"other\"\n\"3168070\";\"sanmarino shi\";\"other\"\n\"3168070\";\"sn mrynw\";\"other\"\n\"3168070\";\"Сан-Марино\";\"other\"\n\"3168070\";\"סן מרינו\";\"other\"\n\"3168070\";\"سان مارينو المدينة\";\"other\"\n\"3168070\";\"サンマリノ\";\"other\"\n\"3168070\";\"サンマリノ市\";\"other\"\n\"3168070\";\"산마리노 시\";\"other\"\n\"3170472\";\"Poggio di Chiesanuova\";\"main\"\n\"3170472\";\"Chiesanuova\";\"other\"\n\"3183500\";\"Acquaviva\";\"main\"\n\"2243940\";\"Ziguinchor\";\"main\"\n\"2243940\";\"Zighinkor\";\"other\"\n\"2243940\";\"Ziginshor\";\"other\"\n\"2243940\";\"Zigiunchor\";\"other\"\n\"2243940\";\"Zinguinhor\";\"other\"\n\"2243940\";\"jiganshoru\";\"other\"\n\"2243940\";\"Зигиншор\";\"other\"\n\"2243940\";\"ジガンショール\";\"other\"\n\"2244177\";\"Vélingara\";\"main\"\n\"2244177\";\"Velingara\";\"ascii\"\n\"2244436\";\"Tionk Essil\";\"main\"\n\"2244616\";\"Tiébo\";\"main\"\n\"2244616\";\"Tiebo\";\"ascii\"\n\"2244786\";\"Tiadiaye\";\"main\"\n\"2244786\";\"Tatadem\";\"other\"\n\"2244786\";\"Thiadiaye\";\"other\"\n\"2244786\";\"Tiadaye\";\"other\"\n\"2244786\";\"Tiadiay\";\"other\"\n\"2244799\";\"Thiès Nones\";\"main\"\n\"2244799\";\"Thies Nones\";\"ascii\"\n\"2244802\";\"Thiès\";\"main\"\n\"2244802\";\"Thies\";\"ascii\"\n\"2244991\";\"Tambacounda\";\"main\"\n\"2245241\";\"Sokone\";\"main\"\n\"2245241\";\"Sokon\";\"other\"\n\"2245666\";\"Sémé\";\"main\"\n\"2245666\";\"Seme\";\"ascii\"\n\"2245666\";\"Semme\";\"other\"\n\"2245666\";\"Semmé\";\"other\"\n\"2245666\";\"Somme\";\"other\"\n\"2245666\";\"Sommé\";\"other\"\n\"2245704\";\"Sédhiou\";\"main\"\n\"2245704\";\"Sedhiou\";\"ascii\"\n\"2245704\";\"Sedhiu\";\"other\"\n\"2246452\";\"Saint-Louis\";\"main\"\n\"2246452\";\"Ndar\";\"other\"\n\"2246452\";\"SanLuis\";\"other\"\n\"2246452\";\"Sen-Lui\";\"other\"\n\"2246452\";\"St-Louis\";\"other\"\n\"2246452\";\"Сен-Луи\";\"other\"\n\"2246522\";\"Rosso\";\"main\"\n\"2246544\";\"Richard-Toll\";\"main\"\n\"2246585\";\"Ranérou\";\"main\"\n\"2246585\";\"Ranerou\";\"ascii\"\n\"2246606\";\"Pout\";\"main\"\n\"2246606\";\"Put\";\"other\"\n\"2246608\";\"Pourham\";\"main\"\n\"2246608\";\"Poukham\";\"other\"\n\"2246641\";\"Polel Diaoubé-http://polel-diaoube.info\";\"main\"\n\"2246641\";\"Polel Diaoube-http://polel-diaoube.info\";\"ascii\"\n\"2246678\";\"Pikine\";\"main\"\n\"2246678\";\"Pikin\";\"other\"\n\"2246678\";\"Пикин\";\"other\"\n\"2246780\";\"Passi\";\"main\"\n\"2246780\";\"Passy\";\"other\"\n\"2246901\";\"Oussouye\";\"main\"\n\"2246922\";\"Ouro Sogui\";\"main\"\n\"2246922\";\"Ouri Sogui\";\"other\"\n\"2246922\";\"Ouro Soghy\";\"other\"\n\"2246922\";\"Ourossogui\";\"other\"\n\"2247044\";\"Waoundé\";\"main\"\n\"2247044\";\"Waounde\";\"ascii\"\n\"2247044\";\"Ouaounde\";\"other\"\n\"2247044\";\"Ouaoundé\";\"other\"\n\"2247157\";\"Nioro du Rip\";\"main\"\n\"2247157\";\"Nioro\";\"other\"\n\"2247157\";\"Nioro-du Pup\";\"other\"\n\"2247381\";\"Nguékokh\";\"main\"\n\"2247381\";\"Nguekokh\";\"ascii\"\n\"2247381\";\"Nguekoh\";\"other\"\n\"2247381\";\"Nguekohe\";\"other\"\n\"2247381\";\"Nguekorh\";\"other\"\n\"2247381\";\"Nguékoh\";\"other\"\n\"2247381\";\"Nguékohe\";\"other\"\n\"2247381\";\"Nguékorh\";\"other\"\n\"2247660\";\"Ndofane\";\"main\"\n\"2247660\";\"N'Dofan\";\"other\"\n\"2247660\";\"N'Doffane\";\"other\"\n\"2247660\";\"N’Dofan\";\"other\"\n\"2247660\";\"N’Doffane\";\"other\"\n\"2247684\";\"Ndioum\";\"main\"\n\"2247684\";\"N'diom\";\"other\"\n\"2247684\";\"Ndioum-Oualo\";\"other\"\n\"2247684\";\"N’diom\";\"other\"\n\"2247813\";\"Ndibène Dahra\";\"main\"\n\"2247813\";\"Ndibene Dahra\";\"ascii\"\n\"2248409\";\"Mékhé\";\"main\"\n\"2248409\";\"Mekhe\";\"ascii\"\n\"2248409\";\"Mecke\";\"other\"\n\"2248409\";\"Meckhe\";\"other\"\n\"2248409\";\"Meckhé\";\"other\"\n\"2248409\";\"Mecké\";\"other\"\n\"2248409\";\"Meke\";\"other\"\n\"2248409\";\"Mekke\";\"other\"\n\"2248409\";\"Mekké\";\"other\"\n\"2248409\";\"Méké\";\"other\"\n\"2248698\";\"Mbaké\";\"main\"\n\"2248698\";\"Mbake\";\"ascii\"\n\"2248698\";\"Mbacke\";\"other\"\n\"2248698\";\"Mbacké\";\"other\"\n\"2248752\";\"Matam\";\"main\"\n\"2248777\";\"Marsassoum\";\"main\"\n\"2248777\";\"Mangri\";\"other\"\n\"2248777\";\"Marassou\";\"other\"\n\"2248777\";\"Marassu\";\"other\"\n\"2248777\";\"Marssassoum\";\"other\"\n\"2248777\";\"Marssoum\";\"other\"\n\"2249222\";\"Louga\";\"main\"\n\"2249222\";\"Luga\";\"other\"\n\"2249554\";\"Koungheul\";\"main\"\n\"2249554\";\"Koungueul\";\"other\"\n\"2249782\";\"Kolda\";\"main\"\n\"2249782\";\"Колда\";\"other\"\n\"2249901\";\"Khombole\";\"main\"\n\"2249901\";\"Kombole\";\"other\"\n\"2249901\";\"Rhombol\";\"other\"\n\"2250645\";\"Kédougou\";\"main\"\n\"2250645\";\"Kedougou\";\"ascii\"\n\"2250677\";\"Kayar\";\"main\"\n\"2250677\";\"Cayar\";\"other\"\n\"2250805\";\"Kaolack\";\"main\"\n\"2250805\";\"Kaolac\";\"other\"\n\"2250805\";\"Kaolak\";\"other\"\n\"2250849\";\"Kanel\";\"main\"\n\"2250849\";\"Karel\";\"other\"\n\"2251007\";\"Kaffrine\";\"main\"\n\"2251084\";\"Joal-Fadiout\";\"main\"\n\"2251084\";\"Fadiout\";\"other\"\n\"2251084\";\"Fadiouth\";\"other\"\n\"2251084\";\"Joal\";\"other\"\n\"2251230\";\"Guinguinéo\";\"main\"\n\"2251230\";\"Guinguineo\";\"ascii\"\n\"2251339\";\"Grand Dakar\";\"main\"\n\"2251339\";\"Grand Dakar Bope\";\"other\"\n\"2251544\";\"Goléré\";\"main\"\n\"2251544\";\"Golere\";\"ascii\"\n\"2251544\";\"Gollene\";\"other\"\n\"2251544\";\"Gollere\";\"other\"\n\"2251544\";\"Golléné\";\"other\"\n\"2251544\";\"Golléré\";\"other\"\n\"2251688\";\"Gandiaye\";\"main\"\n\"2251791\";\"Foundiougne\";\"main\"\n\"2251791\";\"Foundjougne\";\"other\"\n\"2251791\";\"Fundiun\";\"other\"\n\"2251791\";\"Poundiougne\";\"other\"\n\"2251911\";\"Fatick\";\"main\"\n\"2251911\";\"Fatik\";\"other\"\n\"2252309\";\"Diourbel\";\"main\"\n\"2252309\";\"Diourbei\";\"other\"\n\"2252473\";\"Diofior\";\"main\"\n\"2252606\";\"Diawara\";\"main\"\n\"2252606\";\"Diaouara\";\"other\"\n\"2252606\";\"Diawora\";\"other\"\n\"2253277\";\"Dara\";\"main\"\n\"2253277\";\"Dahra\";\"other\"\n\"2253277\";\"Dar\";\"other\"\n\"2253277\";\"Дар\";\"other\"\n\"2253354\";\"Dakar\";\"main\"\n\"2253354\";\"Dacar\";\"other\"\n\"2253354\";\"Ntakar\";\"other\"\n\"2253354\";\"Ντακάρ\";\"other\"\n\"2253354\";\"Дакар\";\"other\"\n\"2253901\";\"Bignona\";\"main\"\n\"2253901\";\"Pagnona\";\"other\"\n\"6620952\";\"Warang\";\"main\"\n\"49593\";\"Yeed\";\"main\"\n\"49593\";\"Iet\";\"other\"\n\"49593\";\"Yed\";\"other\"\n\"49593\";\"Yeid\";\"other\"\n\"49593\";\"Yēd\";\"other\"\n\"50064\";\"Xarardheere\";\"main\"\n\"50064\";\"Adim\";\"other\"\n\"50064\";\"Harardera\";\"other\"\n\"50064\";\"Harardere\";\"other\"\n\"50064\";\"Harardére\";\"other\"\n\"50672\";\"Wanlaweyn\";\"main\"\n\"50672\";\"Bahle Dogli\";\"other\"\n\"50672\";\"Uanle Uen\";\"other\"\n\"50672\";\"Wangleweyn\";\"other\"\n\"50672\";\"Wanla Uen\";\"other\"\n\"50672\";\"Wanla Weyne\";\"other\"\n\"50672\";\"Wanle Weyne\";\"other\"\n\"50814\";\"Waajid\";\"main\"\n\"50814\";\"Uegit\";\"other\"\n\"50814\";\"Wadjid\";\"other\"\n\"50814\";\"Wajid\";\"other\"\n\"50814\";\"Wājid\";\"other\"\n\"51299\";\"Tayeeglow\";\"main\"\n\"51299\";\"Tayeegle\";\"other\"\n\"51299\";\"Tayegle\";\"other\"\n\"51299\";\"Tayēgle\";\"other\"\n\"51299\";\"Tigheglo\";\"other\"\n\"51299\";\"Tigieglo\";\"other\"\n\"51299\";\"Tiyeglow\";\"other\"\n\"51299\";\"Trigieglo\";\"other\"\n\"51299\";\"Trijeglo\";\"other\"\n\"52381\";\"Saacow\";\"main\"\n\"52867\";\"Qoryooley\";\"main\"\n\"52867\";\"Coriole\";\"other\"\n\"52867\";\"Coriolei\";\"other\"\n\"52867\";\"Koriolay\";\"other\"\n\"52867\";\"Qoreyole\";\"other\"\n\"52867\";\"Qoryolay\";\"other\"\n\"53157\";\"Qandala\";\"main\"\n\"53157\";\"Candala\";\"other\"\n\"53157\";\"Kandala\";\"other\"\n\"53372\";\"Oodweyne\";\"main\"\n\"53372\";\"Odweina\";\"other\"\n\"53372\";\"Odweine\";\"other\"\n\"53372\";\"Odweyne\";\"other\"\n\"53372\";\"Oodweeyne\";\"other\"\n\"53372\";\"Ōdwēyne\";\"other\"\n\"53654\";\"Mogadishu\";\"main\"\n\"53654\";\"Magadiscio\";\"other\"\n\"53654\";\"Maqdishu\";\"other\"\n\"53654\";\"Mogadiisho\";\"other\"\n\"53654\";\"Mogadisa\";\"other\"\n\"53654\";\"Mogadisas\";\"other\"\n\"53654\";\"Mogadischu\";\"other\"\n\"53654\";\"Mogadiscio\";\"other\"\n\"53654\";\"Mogadish\";\"other\"\n\"53654\";\"Mogadisho\";\"other\"\n\"53654\";\"Mogadiso\";\"other\"\n\"53654\";\"Mogadisu\";\"other\"\n\"53654\";\"Mogadisxo\";\"other\"\n\"53654\";\"Mogadiszu\";\"other\"\n\"53654\";\"Mogadiŝo\";\"other\"\n\"53654\";\"Mogadişu\";\"other\"\n\"53654\";\"Mogadiša\";\"other\"\n\"53654\";\"Mogadišas\";\"other\"\n\"53654\";\"Mogadišo\";\"other\"\n\"53654\";\"Mogadišu\";\"other\"\n\"53654\";\"Mogadíscio\";\"other\"\n\"53654\";\"Mogaidisiu\";\"other\"\n\"53654\";\"Mogaidisiú\";\"other\"\n\"53654\";\"Moukntiso\";\"other\"\n\"53654\";\"Muqdisho\";\"other\"\n\"53654\";\"Muqdishow\";\"other\"\n\"53654\";\"Muqdishu\";\"other\"\n\"53654\";\"Xamar\";\"other\"\n\"53654\";\"mo jia di xiu\";\"other\"\n\"53654\";\"mogadisho\";\"other\"\n\"53654\";\"mogadishu\";\"other\"\n\"53654\";\"mogadisyu\";\"other\"\n\"53654\";\"mqdyshw\";\"other\"\n\"53654\";\"mqdyshyw\";\"other\"\n\"53654\";\"mwgadyshw\";\"other\"\n\"53654\";\"mwgdysw\";\"other\"\n\"53654\";\"Μουκντίσο\";\"other\"\n\"53654\";\"Могадишу\";\"other\"\n\"53654\";\"מוגדישו\";\"other\"\n\"53654\";\"مقديشو\";\"other\"\n\"53654\";\"مقديشيو\";\"other\"\n\"53654\";\"موگادیشو\";\"other\"\n\"53654\";\"მოგადიშო\";\"other\"\n\"53654\";\"ሞቃዲሾ\";\"other\"\n\"53654\";\"モガディシュ\";\"other\"\n\"53654\";\"摩加迪休\";\"other\"\n\"53654\";\"모가디슈\";\"other\"\n\"54460\";\"Mahadday Weyne\";\"main\"\n\"54715\";\"Luuq\";\"main\"\n\"54715\";\"Lugh\";\"other\"\n\"54715\";\"Lugh Ferrandi\";\"other\"\n\"54715\";\"Lugh Ganana\";\"other\"\n\"54715\";\"Lugh Ganane\";\"other\"\n\"54715\";\"Lughferandi\";\"other\"\n\"54715\";\"Luk\";\"other\"\n\"54715\";\"Лук\";\"other\"\n\"55223\";\"Laasqoray\";\"main\"\n\"55223\";\"Banden Laskhonai\";\"other\"\n\"55223\";\"Las Goni\";\"other\"\n\"55223\";\"Las Khonai\";\"other\"\n\"55223\";\"Las Khoreh\";\"other\"\n\"55223\";\"Las Qoray\";\"other\"\n\"55223\";\"Lās Qóray\";\"other\"\n\"55671\";\"Chisimayu\";\"main\"\n\"55671\";\"Chisimaio\";\"other\"\n\"55671\";\"Kisimayo\";\"other\"\n\"55671\";\"Kisimayu\";\"other\"\n\"55671\";\"Kismaanyo\";\"other\"\n\"55671\";\"Kismaayo\";\"other\"\n\"55671\";\"Kismanyo\";\"other\"\n\"55671\";\"Kismayo\";\"other\"\n\"55671\";\"Kismayu\";\"other\"\n\"55671\";\"Kismānyó\";\"other\"\n\"55671\";\"kisumayo\";\"other\"\n\"55671\";\"キスマヨ\";\"other\"\n\"56166\";\"Jilib\";\"main\"\n\"56166\";\"Dzhilib\";\"other\"\n\"56166\";\"Gelib\";\"other\"\n\"56166\";\"Jeelib\";\"other\"\n\"56166\";\"Джилиб\";\"other\"\n\"56335\";\"Giohar\";\"main\"\n\"56335\";\"Jawhar\";\"other\"\n\"56335\";\"Johar\";\"other\"\n\"56335\";\"Joher\";\"other\"\n\"56335\";\"Joowhar\";\"other\"\n\"56335\";\"Jowhar\";\"other\"\n\"56335\";\"Jōwhar\";\"other\"\n\"56335\";\"Villa Duca Abruzzi\";\"other\"\n\"56335\";\"Villaggio Duca Abruzzi\";\"other\"\n\"56335\";\"Villaggio Duca degli Abruzzi\";\"other\"\n\"56399\";\"Jamaame\";\"main\"\n\"56399\";\"Giamama\";\"other\"\n\"56399\";\"Giamame\";\"other\"\n\"56399\";\"Giamana\";\"other\"\n\"56399\";\"Giamane\";\"other\"\n\"56399\";\"Jamame\";\"other\"\n\"56399\";\"Jamāme\";\"other\"\n\"56399\";\"Margherita\";\"other\"\n\"56414\";\"Jalalaqsi\";\"main\"\n\"56414\";\"Gialalassi\";\"other\"\n\"56505\";\"Iskushuban\";\"main\"\n\"56505\";\"Scusciuban\";\"other\"\n\"56505\";\"Skushuban\";\"other\"\n\"57000\";\"Hobyo\";\"main\"\n\"57000\";\"Hobiya\";\"other\"\n\"57000\";\"Hobya\";\"other\"\n\"57000\";\"Hobyaa\";\"other\"\n\"57000\";\"Hobyā\";\"other\"\n\"57000\";\"Obbia\";\"other\"\n\"57289\";\"Hargeysa\";\"main\"\n\"57289\";\"Hargeisa\";\"other\"\n\"57289\";\"Hargesa\";\"other\"\n\"57289\";\"Khargejse\";\"other\"\n\"57289\";\"Харгейсе\";\"other\"\n\"58933\";\"Garoowe\";\"main\"\n\"58933\";\"Garoe\";\"other\"\n\"58933\";\"Garoway\";\"other\"\n\"58933\";\"Garowe\";\"other\"\n\"58933\";\"Geroweh\";\"other\"\n\"58933\";\"Gherroue\";\"other\"\n\"58933\";\"Gherrowe\";\"other\"\n\"58933\";\"Gherròue\";\"other\"\n\"58933\";\"Magiamacarscio\";\"other\"\n\"58994\";\"Garbahaarrey\";\"main\"\n\"58994\";\"Garba Harey\";\"other\"\n\"58994\";\"Garba Harre\";\"other\"\n\"59611\";\"Galcaio\";\"main\"\n\"59611\";\"Gaalkacyo\";\"other\"\n\"59611\";\"Galka`yo'\";\"other\"\n\"59611\";\"Galka‘yo’\";\"other\"\n\"59611\";\"Gallacai\";\"other\"\n\"59611\";\"Rocca Littorio\";\"other\"\n\"60019\";\"Eyl\";\"main\"\n\"60019\";\"Ayl\";\"other\"\n\"60019\";\"Ceel\";\"other\"\n\"60019\";\"Eeyl\";\"other\"\n\"60019\";\"Eil\";\"other\"\n\"60457\";\"Dujuuma\";\"main\"\n\"60457\";\"Digiuma\";\"other\"\n\"60457\";\"Dugiuma\";\"other\"\n\"60457\";\"Dujuma\";\"other\"\n\"60457\";\"Dùgiuma\";\"other\"\n\"60928\";\"Dusa Marreb\";\"main\"\n\"60928\";\"Dhuusa Mareeb\";\"other\"\n\"60928\";\"Dhuusamarreeb\";\"other\"\n\"60928\";\"Dusa Mareb\";\"other\"\n\"62691\";\"Erigavo\";\"main\"\n\"62691\";\"Ceerigaabo\";\"other\"\n\"62691\";\"Cerigaabo\";\"other\"\n\"62691\";\"Erigabo\";\"other\"\n\"62788\";\"Ceeldheere\";\"main\"\n\"62788\";\"El Dere\";\"other\"\n\"62821\";\"Ceelbuur\";\"main\"\n\"62821\";\"El Bur\";\"other\"\n\"62854\";\"Ceek\";\"main\"\n\"62854\";\"Aik\";\"other\"\n\"62854\";\"Ceg\";\"other\"\n\"62854\";\"Eik\";\"other\"\n\"62854\";\"`Eg\";\"other\"\n\"62854\";\"‘Eg\";\"other\"\n\"63344\";\"Cadale\";\"main\"\n\"63344\";\"Adale\";\"other\"\n\"63344\";\"Ilala\";\"other\"\n\"63344\";\"Itala\";\"other\"\n\"63571\";\"Buurhakaba\";\"main\"\n\"63571\";\"Bur Acaba\";\"other\"\n\"63571\";\"Bur Hacaba\";\"other\"\n\"63571\";\"Burhakaba\";\"other\"\n\"63571\";\"Buur Hakkaba\";\"other\"\n\"63580\";\"Buur Gaabo\";\"main\"\n\"63580\";\"Bircao\";\"other\"\n\"63580\";\"Bur Gabo\";\"other\"\n\"63580\";\"Bur Gap\";\"other\"\n\"63580\";\"Bur Gavo\";\"other\"\n\"63580\";\"Burgao\";\"other\"\n\"63580\";\"Būr Gābo\";\"other\"\n\"63580\";\"Port Dunford\";\"other\"\n\"63580\";\"Port Durnford\";\"other\"\n\"63689\";\"Buulobarde\";\"main\"\n\"63689\";\"Bulo Berde\";\"other\"\n\"63689\";\"Bulo Burti\";\"other\"\n\"63689\";\"Buulo\";\"other\"\n\"63689\";\"Buulo Berde\";\"other\"\n\"63689\";\"Buulo Burte\";\"other\"\n\"63689\";\"Būlo Bérde\";\"other\"\n\"63795\";\"Burao\";\"main\"\n\"63795\";\"Bur `o\";\"other\"\n\"63795\";\"Bur ‘ó\";\"other\"\n\"63795\";\"Burco\";\"other\"\n\"63795\";\"Бурао\";\"other\"\n\"64013\";\"Bender Cassim\";\"main\"\n\"64013\";\"Bandar Kassim\";\"other\"\n\"64013\";\"Bender Qaasin\";\"other\"\n\"64013\";\"Bender Qasin\";\"other\"\n\"64013\";\"Boosaaso\";\"other\"\n\"64013\";\"Boosaso\";\"other\"\n\"64013\";\"Bosaso\";\"other\"\n\"64013\";\"Bosasso\";\"other\"\n\"64013\";\"Bénder Qāsin\";\"other\"\n\"64412\";\"Bereeda\";\"main\"\n\"64412\";\"Bareda\";\"other\"\n\"64412\";\"Bareeda\";\"other\"\n\"64412\";\"Barēdá\";\"other\"\n\"64412\";\"Bereda\";\"other\"\n\"64435\";\"Berbera\";\"main\"\n\"64435\";\"Berberah\";\"other\"\n\"64435\";\"Berbere\";\"other\"\n\"64435\";\"bai pei la\";\"other\"\n\"64435\";\"Бербера\";\"other\"\n\"64435\";\"柏培拉\";\"other\"\n\"64460\";\"Beledweyne\";\"main\"\n\"64460\";\"Balad Weyn\";\"other\"\n\"64460\";\"Belai-Wen\";\"other\"\n\"64460\";\"Beled Weyn\";\"other\"\n\"64460\";\"Beleduehjne\";\"other\"\n\"64460\";\"Beledueyne\";\"other\"\n\"64460\";\"Belet Uen\";\"other\"\n\"64460\";\"Belet Wayne\";\"other\"\n\"64460\";\"Belet Wen\";\"other\"\n\"64460\";\"Belet Weyne\";\"other\"\n\"64460\";\"Bālad Weyn\";\"other\"\n\"64460\";\"Беледуэйне\";\"other\"\n\"64536\";\"Baidoa\";\"main\"\n\"64536\";\"Baidabho\";\"other\"\n\"64536\";\"Baidabo\";\"other\"\n\"64536\";\"Bajdoa\";\"other\"\n\"64536\";\"Baydhabo\";\"other\"\n\"64536\";\"Iscia Baidoa\";\"other\"\n\"64536\";\"Isha Baydabo\";\"other\"\n\"64536\";\"Isha Baydhaba\";\"other\"\n\"64536\";\"Isha Baydhabo\";\"other\"\n\"64536\";\"bai duo ya\";\"other\"\n\"64536\";\"baidoa\";\"other\"\n\"64536\";\"ri ben yu\";\"other\"\n\"64536\";\"Байдоа\";\"other\"\n\"64536\";\"バイドア\";\"other\"\n\"64536\";\"拜多亞\";\"other\"\n\"64536\";\"日本語\";\"other\"\n\"64670\";\"Bargaal\";\"main\"\n\"64670\";\"Baargaal\";\"other\"\n\"64670\";\"Bargal\";\"other\"\n\"64814\";\"Bandarbeyla\";\"main\"\n\"64814\";\"Bender Bayla\";\"other\"\n\"64814\";\"Bender Beila\";\"other\"\n\"64814\";\"Bender Beyla\";\"other\"\n\"64814\";\"Bénder Bäylá\";\"other\"\n\"65170\";\"Baardheere\";\"main\"\n\"65785\";\"Afgooye\";\"main\"\n\"65785\";\"Afgoi\";\"other\"\n\"65785\";\"Afgoje\";\"other\"\n\"65785\";\"Afgoye\";\"other\"\n\"65785\";\"Afgōye\";\"other\"\n\"65785\";\"Asgoi\";\"other\"\n\"65785\";\"Афгойе\";\"other\"\n\"400769\";\"Laascaanood\";\"main\"\n\"400769\";\"Las Anod\";\"other\"\n\"3382783\";\"Wageningen\";\"main\"\n\"3382867\";\"Totness\";\"main\"\n\"3382867\";\"Corome\";\"other\"\n\"3382867\";\"Coronie\";\"other\"\n\"3382867\";\"Post Coronie\";\"other\"\n\"3382867\";\"Todness\";\"other\"\n\"3383330\";\"Paramaribo\";\"main\"\n\"3383330\";\"Paramaribas\";\"other\"\n\"3383330\";\"Paramarimpo\";\"other\"\n\"3383330\";\"baramarybw\";\"other\"\n\"3383330\";\"pa la ma li bo\";\"other\"\n\"3383330\";\"palamalibo\";\"other\"\n\"3383330\";\"paramaribo\";\"other\"\n\"3383330\";\"paramarybw\";\"other\"\n\"3383330\";\"prmrybw\";\"other\"\n\"3383330\";\"Παραμαρίμπο\";\"other\"\n\"3383330\";\"Парамарибо\";\"other\"\n\"3383330\";\"פרמריבו\";\"other\"\n\"3383330\";\"باراماريبو\";\"other\"\n\"3383330\";\"پاراماریبو\";\"other\"\n\"3383330\";\"ፓራማሪቦ\";\"other\"\n\"3383330\";\"パラマリボ\";\"other\"\n\"3383330\";\"帕拉马里博\";\"other\"\n\"3383330\";\"파라마리보\";\"other\"\n\"3383384\";\"Onverwacht\";\"main\"\n\"3383384\";\"Unverwacht\";\"other\"\n\"3383427\";\"Nieuw Nickerie\";\"main\"\n\"3383427\";\"New Nickerie\";\"other\"\n\"3383427\";\"Nickerie\";\"other\"\n\"3383434\";\"Nieuw Amsterdam\";\"main\"\n\"3383434\";\"Fort Amsterdam\";\"other\"\n\"3383434\";\"Fort Neu-Amsterdam\";\"other\"\n\"3383434\";\"Fort New Amsterdam\";\"other\"\n\"3383494\";\"Moengo\";\"main\"\n\"3383570\";\"Mariënburg\";\"main\"\n\"3383570\";\"Marienburg\";\"ascii\"\n\"3383714\";\"Lelydorp\";\"main\"\n\"3384125\";\"Groningen\";\"main\"\n\"3384475\";\"Brownsweg\";\"main\"\n\"3384475\";\"Bronsweg\";\"other\"\n\"3384482\";\"Brokopondo\";\"main\"\n\"3384792\";\"Albina\";\"main\"\n\"2410763\";\"São Tomé\";\"main\"\n\"2410763\";\"Sao Tome\";\"ascii\"\n\"2410763\";\"Salazar\";\"other\"\n\"2410763\";\"San Tome\";\"other\"\n\"2410763\";\"San Tomė\";\"other\"\n\"2410763\";\"San-Tome\";\"other\"\n\"2410763\";\"Santo Tome\";\"other\"\n\"2410763\";\"Santo Tomé\";\"other\"\n\"2410763\";\"Sao Thome\";\"other\"\n\"2410763\";\"Sao Tomé\";\"other\"\n\"2410763\";\"Sao-Tomeo\";\"other\"\n\"2410763\";\"Soeo Tome\";\"other\"\n\"2410763\";\"Svaety Tomas\";\"other\"\n\"2410763\";\"Svätý Tomáš\";\"other\"\n\"2410763\";\"Sào Thomé\";\"other\"\n\"2410763\";\"Söo Tomé\";\"other\"\n\"2410763\";\"sangtume\";\"other\"\n\"2410763\";\"santome\";\"other\"\n\"2410763\";\"Σάο Τομέ\";\"other\"\n\"2410763\";\"Сан-Томе\";\"other\"\n\"2410763\";\"Сао Томе\";\"other\"\n\"2410763\";\"סאו טומה\";\"other\"\n\"2410763\";\"ሳን ቶሜ\";\"other\"\n\"2410763\";\"サントメ\";\"other\"\n\"2410763\";\"상투메\";\"other\"\n\"2410805\";\"Santo António\";\"main\"\n\"2410805\";\"Santo Antonio\";\"ascii\"\n\"2410805\";\"Cidade de Santo Antonio\";\"other\"\n\"2410805\";\"Cidade de Santo António\";\"other\"\n\"2410805\";\"San Antonio\";\"other\"\n\"2410805\";\"Sao Antonio\";\"other\"\n\"2410805\";\"São Antõnio\";\"other\"\n\"3582790\";\"Zaragoza\";\"main\"\n\"3582805\";\"Zacatecoluca\";\"main\"\n\"3582805\";\"Zacateccoluca\";\"other\"\n\"3582835\";\"Victoria\";\"main\"\n\"3582835\";\"Chocoaique\";\"other\"\n\"3582835\";\"Villa Victoria\";\"other\"\n\"3582835\";\"Villa Victorias\";\"other\"\n\"3582883\";\"Usulután\";\"main\"\n\"3582883\";\"Usulutan\";\"ascii\"\n\"3582883\";\"Usulutane\";\"other\"\n\"3582883\";\"Усулутане\";\"other\"\n\"3582918\";\"Tonacatepeque\";\"main\"\n\"3582954\";\"Texistepeque\";\"main\"\n\"3582987\";\"Tenancingo\";\"main\"\n\"3583009\";\"Tecoluca\";\"main\"\n\"3583065\";\"Tacuba\";\"main\"\n\"3583065\";\"Taucba\";\"other\"\n\"3583090\";\"Suchitoto\";\"main\"\n\"3583090\";\"Suchioto\";\"other\"\n\"3583096\";\"Soyapango\";\"main\"\n\"3583096\";\"Sojapango\";\"other\"\n\"3583096\";\"Soyopango\";\"other\"\n\"3583096\";\"Сояпанго\";\"other\"\n\"3583098\";\"Sonzacate\";\"main\"\n\"3583102\";\"Sonsonate\";\"main\"\n\"3583102\";\"Ciudad de Sonsonate\";\"other\"\n\"3583102\";\"Сонсонате\";\"other\"\n\"3583111\";\"Sociedad\";\"main\"\n\"3583155\";\"Sesori\";\"main\"\n\"3583158\";\"Sensuntepeque\";\"main\"\n\"3583158\";\"Sensuntepque\";\"other\"\n\"3583158\";\"Sensutepeke\";\"other\"\n\"3583158\";\"Сенсутепеке\";\"other\"\n\"3583178\";\"San Vicente\";\"main\"\n\"3583178\";\"San Vincente\";\"other\"\n\"3583183\";\"Santo Tomás\";\"main\"\n\"3583183\";\"Santo Tomas\";\"ascii\"\n\"3583196\";\"Santiago Nonualco\";\"main\"\n\"3583196\";\"Santiago\";\"other\"\n\"3583199\";\"Santiago de María\";\"main\"\n\"3583199\";\"Santiago de Maria\";\"ascii\"\n\"3583199\";\"Santiago\";\"other\"\n\"3583214\";\"Santa Rosa de Lima\";\"main\"\n\"3583214\";\"Santa Rosa\";\"other\"\n\"3583278\";\"Santa Elena\";\"main\"\n\"3583334\";\"Santa Ana\";\"main\"\n\"3583334\";\"Santa-Ana\";\"other\"\n\"3583334\";\"Санта-Ана\";\"other\"\n\"3583352\";\"San Sebastián\";\"main\"\n\"3583352\";\"San Sebastian\";\"ascii\"\n\"3583361\";\"San Salvador\";\"main\"\n\"3583361\";\"Salvador\";\"other\"\n\"3583361\";\"San Salbador\";\"other\"\n\"3583361\";\"San Salvadoras\";\"other\"\n\"3583361\";\"San Salwador\";\"other\"\n\"3583361\";\"San-Sal'vador\";\"other\"\n\"3583361\";\"San-Salvadoro\";\"other\"\n\"3583361\";\"san salwadwr\";\"other\"\n\"3583361\";\"sansalbadoleu\";\"other\"\n\"3583361\";\"sansalwadxr\";\"other\"\n\"3583361\";\"sansarubadoru\";\"other\"\n\"3583361\";\"sheng sa er wa duo\";\"other\"\n\"3583361\";\"sn slwwdwr\";\"other\"\n\"3583361\";\"Σαν Σαλβαδόρ\";\"other\"\n\"3583361\";\"Сан-Сальвадор\";\"other\"\n\"3583361\";\"סן סלוודור\";\"other\"\n\"3583361\";\"سان سالوادور\";\"other\"\n\"3583361\";\"ซันซัลวาดอร์\";\"other\"\n\"3583361\";\"ሳን ሳልቫዶር\";\"other\"\n\"3583361\";\"サンサルバドル\";\"other\"\n\"3583361\";\"聖薩爾瓦多\";\"other\"\n\"3583361\";\"산살바도르\";\"other\"\n\"3583379\";\"San Rafael Oriente\";\"main\"\n\"3583379\";\"San Rafael de Oriente\";\"other\"\n\"3583407\";\"San Pedro Masahuat\";\"main\"\n\"3583429\";\"San Pablo Tacachico\";\"main\"\n\"3583429\";\"Tacachico\";\"other\"\n\"3583446\";\"San Miquel\";\"main\"\n\"3583471\";\"San Martín\";\"main\"\n\"3583471\";\"San Martin\";\"ascii\"\n\"3583480\";\"San Marcos\";\"main\"\n\"3583531\";\"San Juan Opico\";\"main\"\n\"3583531\";\"Opico\";\"other\"\n\"3583716\";\"San Francisco Menéndez\";\"main\"\n\"3583716\";\"San Francisco Menendez\";\"ascii\"\n\"3583747\";\"San Francisco\";\"main\"\n\"3583747\";\"Gotera\";\"other\"\n\"3583747\";\"San Francisco Gotera\";\"other\"\n\"3583851\";\"San Antonio del Monte\";\"main\"\n\"3583905\";\"San Alejo\";\"main\"\n\"3583910\";\"San Agustín\";\"main\"\n\"3583910\";\"San Agustin\";\"ascii\"\n\"3583937\";\"Rosario de Mora\";\"main\"\n\"3583981\";\"Quezaltepeque\";\"main\"\n\"3583981\";\"Kesal'tepeke\";\"other\"\n\"3583981\";\"Quezaltepque\";\"other\"\n\"3583981\";\"Кесальтепеке\";\"other\"\n\"3584003\";\"Puerto El Triunfo\";\"main\"\n\"3584003\";\"Puerto Del Triunfo\";\"other\"\n\"3584140\";\"Pasaquina\";\"main\"\n\"3584140\";\"Pasaguina\";\"other\"\n\"3584156\";\"Panchimalco\";\"main\"\n\"3584190\";\"Ozatlán\";\"main\"\n\"3584190\";\"Ozatlan\";\"ascii\"\n\"3584212\";\"Olocuilta\";\"main\"\n\"3584251\";\"Nuevo Cuscatlán\";\"main\"\n\"3584251\";\"Nuevo Cuscatlan\";\"ascii\"\n\"3584257\";\"Nueva San Salvador\";\"main\"\n\"3584257\";\"Ciudad de Nueva San Salvador\";\"other\"\n\"3584257\";\"La Ciudad de Nueva San Salvador\";\"other\"\n\"3584257\";\"Nuehva-San-Sal'vador\";\"other\"\n\"3584257\";\"Santa Tecla\";\"other\"\n\"3584257\";\"Нуэва-Сан-Сальвадор\";\"other\"\n\"3584260\";\"Nueva Guadalupe\";\"main\"\n\"3584264\";\"Nueva Esparta\";\"main\"\n\"3584266\";\"Nueva Concepción\";\"main\"\n\"3584266\";\"Nueva Concepcion\";\"ascii\"\n\"3584266\";\"Chicunhuexo\";\"other\"\n\"3584297\";\"Nahuizalco\";\"main\"\n\"3584297\";\"Nauizalco\";\"other\"\n\"3584348\";\"Moncagua\";\"main\"\n\"3584384\";\"Metapán\";\"main\"\n\"3584384\";\"Metapan\";\"ascii\"\n\"3584399\";\"Mejicanos\";\"main\"\n\"3584399\";\"Mekhikanos\";\"other\"\n\"3584399\";\"Mexicanos\";\"other\"\n\"3584399\";\"Мехиканос\";\"other\"\n\"3584714\";\"Lolotique\";\"main\"\n\"3584772\";\"La Unión\";\"main\"\n\"3584772\";\"La Union\";\"ascii\"\n\"3584772\";\"San Carlos de La Union\";\"other\"\n\"3584772\";\"San Carlos de La Unión\";\"other\"\n\"3585157\";\"La Libertad\";\"main\"\n\"3585157\";\"Puerto La Libertad\";\"other\"\n\"3585392\";\"Jujutla\";\"main\"\n\"3585395\";\"Jucuarán\";\"main\"\n\"3585395\";\"Jucuaran\";\"ascii\"\n\"3585398\";\"Jucuapa\";\"main\"\n\"3585401\";\"Juayúa\";\"main\"\n\"3585401\";\"Juayua\";\"ascii\"\n\"3585427\";\"Jocoro\";\"main\"\n\"3585438\";\"Jiquilisco\";\"main\"\n\"3585438\";\"Ilquilisco\";\"other\"\n\"3585473\";\"Izalco\";\"main\"\n\"3585473\";\"Yzalco\";\"other\"\n\"3585480\";\"Intipucá\";\"main\"\n\"3585480\";\"Intipuca\";\"ascii\"\n\"3585484\";\"Ilopango\";\"main\"\n\"3585484\";\"Ylopango\";\"other\"\n\"3585484\";\"Илопанго\";\"other\"\n\"3585636\";\"Guazapa\";\"main\"\n\"3585636\";\"Guasapa\";\"other\"\n\"3585640\";\"Guaymango\";\"main\"\n\"3585653\";\"Guatajiagua\";\"main\"\n\"3585856\";\"El Tránsito\";\"main\"\n\"3585856\";\"El Transito\";\"ascii\"\n\"3586021\";\"El Rosario\";\"main\"\n\"3586021\";\"Rosario de la Paz\";\"other\"\n\"3586204\";\"El Paisnal\";\"main\"\n\"3586204\";\"Paisnal\";\"other\"\n\"3586550\";\"El Congo\";\"main\"\n\"3586814\";\"Delgado\";\"main\"\n\"3586814\";\"Del'gado\";\"other\"\n\"3586814\";\"Villa Delcado\";\"other\"\n\"3586814\";\"Villa Delgado\";\"other\"\n\"3586814\";\"Дельгадо\";\"other\"\n\"3586833\";\"Cuscatancingo\";\"main\"\n\"3586884\";\"Corinto\";\"main\"\n\"3586917\";\"Conchagua\";\"main\"\n\"3586926\";\"Concepción de Ataco\";\"main\"\n\"3586926\";\"Concepcion de Ataco\";\"ascii\"\n\"3586926\";\"Ataco\";\"other\"\n\"3586930\";\"Concepción Batres\";\"main\"\n\"3586930\";\"Concepcion Batres\";\"ascii\"\n\"3586977\";\"Cojutepeque\";\"main\"\n\"3586981\";\"Coatepeque\";\"main\"\n\"3586983\";\"Ciudad Barrios\";\"main\"\n\"3586983\";\"Villa de Cacahuatique\";\"other\"\n\"3586985\";\"Ciudad Arce\";\"main\"\n\"3586985\";\"Chilamatal\";\"other\"\n\"3586985\";\"El Chilamatal\";\"other\"\n\"3587018\";\"Chirilagua\";\"main\"\n\"3587037\";\"Chinameca\";\"main\"\n\"3587064\";\"Chapeltique\";\"main\"\n\"3587064\";\"Chapelpique\";\"other\"\n\"3587086\";\"Chalchuapa\";\"main\"\n\"3587091\";\"Chalatenango\";\"main\"\n\"3587091\";\"Chalatenanga\";\"other\"\n\"3587091\";\"Чалатенанго\";\"other\"\n\"3587157\";\"Candelaria de La Frontera\";\"main\"\n\"3587157\";\"Candelaria\";\"other\"\n\"3587157\";\"Candelario\";\"other\"\n\"3587208\";\"Cacaopera\";\"main\"\n\"3587266\";\"Berlín\";\"main\"\n\"3587266\";\"Berlin\";\"ascii\"\n\"3587308\";\"Ayutuxtepeque\";\"main\"\n\"3587308\";\"Ayutuxtepegue\";\"other\"\n\"3587317\";\"Atiquizaya\";\"main\"\n\"3587333\";\"Armenia\";\"main\"\n\"3587333\";\"Guaymoco\";\"other\"\n\"3587345\";\"Apopa\";\"main\"\n\"3587349\";\"Apastepeque\";\"main\"\n\"3587349\";\"Apastepeq\";\"other\"\n\"3587362\";\"Antiguo Cuscatlán\";\"main\"\n\"3587362\";\"Antiguo Cuscatlan\";\"ascii\"\n\"3587372\";\"Anamorós\";\"main\"\n\"3587372\";\"Anamoros\";\"ascii\"\n\"3587426\";\"Ahuachapán\";\"main\"\n\"3587426\";\"Ahuachapan\";\"ascii\"\n\"3587426\";\"Achuachapan\";\"other\"\n\"3587426\";\"Ачуачапан\";\"other\"\n\"3587428\";\"Aguilares\";\"main\"\n\"3587498\";\"Acajutla\";\"main\"\n\"3587498\";\"Akakhutla\";\"other\"\n\"3587498\";\"Puerto Acajutla\";\"other\"\n\"3587498\";\"Акахутла\";\"other\"\n\"162627\";\"Yabrūd\";\"main\"\n\"162627\";\"Yabrud\";\"ascii\"\n\"162627\";\"Gebru\";\"other\"\n\"162627\";\"Jabrud\";\"other\"\n\"162627\";\"Jebru\";\"other\"\n\"162627\";\"Jebrud\";\"other\"\n\"162627\";\"Yabroud\";\"other\"\n\"162627\";\"Yabroûd\";\"other\"\n\"162627\";\"Ябруд\";\"other\"\n\"163270\";\"Ţayyibat al Imām\";\"main\"\n\"163270\";\"Tayyibat al Imam\";\"ascii\"\n\"163270\";\"Taibet el Imam\";\"other\"\n\"163270\";\"Taybat al Imam\";\"other\"\n\"163270\";\"Taybat al Imam `Ali\";\"other\"\n\"163270\";\"Taïbet el Imâm\";\"other\"\n\"163270\";\"Tibbat al Imam\";\"other\"\n\"163270\";\"Tibbat al Imām\";\"other\"\n\"163270\";\"Tibet Iman\";\"other\"\n\"163270\";\"Ţaybat al Imām\";\"other\"\n\"163270\";\"Ţaybat al Imām ‘Alī\";\"other\"\n\"163345\";\"Ţarţūs\";\"main\"\n\"163345\";\"Tartus\";\"ascii\"\n\"163345\";\"Antaradus\";\"other\"\n\"163345\";\"Tartous\";\"other\"\n\"163345\";\"Tartouss\";\"other\"\n\"163345\";\"Tartoûs\";\"other\"\n\"163345\";\"mhafzt trtws\";\"other\"\n\"163345\";\"trtws\";\"other\"\n\"163345\";\"Тартус\";\"other\"\n\"163345\";\"טרטוס\";\"other\"\n\"163345\";\"طرطوس\";\"other\"\n\"163345\";\"محافظة طرطوس\";\"other\"\n\"163476\";\"Tall Rif‘at\";\"main\"\n\"163476\";\"Tall Rif`at\";\"ascii\"\n\"163476\";\"Tell Arfad\";\"other\"\n\"163476\";\"Tell Refaat\";\"other\"\n\"163476\";\"Tell Rifaate\";\"other\"\n\"163476\";\"Tell Rifat\";\"other\"\n\"163476\";\"Tell Rifaâte\";\"other\"\n\"163533\";\"Tall Kalakh\";\"main\"\n\"163533\";\"Talkalakh\";\"other\"\n\"163533\";\"Telkalakh\";\"other\"\n\"163533\";\"Tell Kalakh\";\"other\"\n\"163779\";\"Talbīsah\";\"main\"\n\"163779\";\"Talbisah\";\"ascii\"\n\"163779\";\"Talbiseh\";\"other\"\n\"163779\";\"Tall Bisih\";\"other\"\n\"163779\";\"Tall Bissah\";\"other\"\n\"163779\";\"Tall Bīsih\";\"other\"\n\"163779\";\"Tel Bisi\";\"other\"\n\"163779\";\"Telbise\";\"other\"\n\"163779\";\"Tell Bise\";\"other\"\n\"163779\";\"Tell Bisse\";\"other\"\n\"163779\";\"Tell Bîsse\";\"other\"\n\"163779\";\"Tell Bīse\";\"other\"\n\"163806\";\"Ţafas\";\"main\"\n\"163806\";\"Tafas\";\"ascii\"\n\"163806\";\"Tafass\";\"other\"\n\"163808\";\"Tadmur\";\"main\"\n\"163808\";\"Pal'mira\";\"other\"\n\"163808\";\"Palmira\";\"other\"\n\"163808\";\"Palmuera\";\"other\"\n\"163808\";\"Palmyra\";\"other\"\n\"163808\";\"Palmyre\";\"other\"\n\"163808\";\"Palmüra\";\"other\"\n\"163808\";\"Palmýra\";\"other\"\n\"163808\";\"Tadmor\";\"other\"\n\"163808\";\"Tedmor\";\"other\"\n\"163808\";\"ba er mi la\";\"other\"\n\"163808\";\"mmlkt tdmr\";\"other\"\n\"163808\";\"parumira yi ji\";\"other\"\n\"163808\";\"tdmwr\";\"other\"\n\"163808\";\"Палмира\";\"other\"\n\"163808\";\"Пальмира\";\"other\"\n\"163808\";\"תדמור\";\"other\"\n\"163808\";\"مملكة تدمر\";\"other\"\n\"163808\";\"パルミラ遺跡\";\"other\"\n\"163808\";\"巴尔米拉\";\"other\"\n\"163811\";\"Tādif\";\"main\"\n\"163811\";\"Tadif\";\"ascii\"\n\"163811\";\"Tadef\";\"other\"\n\"163811\";\"Tader\";\"other\"\n\"163811\";\"Teft\";\"other\"\n\"163811\";\"Tâdef\";\"other\"\n\"163811\";\"Tâder\";\"other\"\n\"163915\";\"Şūrān\";\"main\"\n\"163915\";\"Suran\";\"ascii\"\n\"163915\";\"Soran\";\"other\"\n\"163915\";\"Souran\";\"other\"\n\"163915\";\"Sourane\";\"other\"\n\"163915\";\"Soûrâne\";\"other\"\n\"163915\";\"Суран\";\"other\"\n\"164025\";\"Subaykhān\";\"main\"\n\"164025\";\"Subaykhan\";\"ascii\"\n\"164025\";\"Sabikhan\";\"other\"\n\"164025\";\"Soubeikhane\";\"other\"\n\"164025\";\"Soubeïkhâne\";\"other\"\n\"164328\";\"Shaykh Miskīn\";\"main\"\n\"164328\";\"Shaykh Miskin\";\"ascii\"\n\"164328\";\"Ash Shaykh Maskin\";\"other\"\n\"164328\";\"Ash Shaykh Maskīn\";\"other\"\n\"164328\";\"Ash Shaykh Miskin\";\"other\"\n\"164328\";\"Ash Shaykh Miskīn\";\"other\"\n\"164328\";\"Cheikh Meskine\";\"other\"\n\"164328\";\"Cheïkh Meskîne\";\"other\"\n\"164328\";\"Chikh Meskine\";\"other\"\n\"164328\";\"Shaykh Maskin\";\"other\"\n\"164328\";\"Shaykh Maskīn\";\"other\"\n\"164328\";\"Sheikh Miskin\";\"other\"\n\"164328\";\"Sheikh Miskīn\";\"other\"\n\"164626\";\"Shahbā’\";\"main\"\n\"164626\";\"Shahba'\";\"ascii\"\n\"164626\";\"Chahba\";\"other\"\n\"164626\";\"Philippopolis\";\"other\"\n\"164626\";\"Phillipopolis\";\"other\"\n\"164626\";\"Philppopolis\";\"other\"\n\"164626\";\"Shaba\";\"other\"\n\"164626\";\"Shahaba\";\"other\"\n\"164626\";\"Shahbah\";\"other\"\n\"164816\";\"Sarāqib\";\"main\"\n\"164816\";\"Saraqib\";\"ascii\"\n\"164816\";\"Sarakeb\";\"other\"\n\"164816\";\"Saraqeb\";\"other\"\n\"164816\";\"Saraquib\";\"other\"\n\"164816\";\"Sarâqeb\";\"other\"\n\"164816\";\"Seraikin\";\"other\"\n\"164816\";\"Serakab\";\"other\"\n\"164816\";\"Seraqab\";\"other\"\n\"164816\";\"Seraqib\";\"other\"\n\"164816\";\"Serāqab\";\"other\"\n\"164898\";\"Salqīn\";\"main\"\n\"164898\";\"Salqin\";\"ascii\"\n\"164898\";\"Salkine\";\"other\"\n\"164898\";\"Salkîne\";\"other\"\n\"164898\";\"Salqine\";\"other\"\n\"164898\";\"Salqîne\";\"other\"\n\"164898\";\"Selkin\";\"other\"\n\"164898\";\"Silkin\";\"other\"\n\"164947\";\"Salamīyah\";\"main\"\n\"164947\";\"Salamiyah\";\"ascii\"\n\"164947\";\"Salamias\";\"other\"\n\"164947\";\"Salamiyeh\";\"other\"\n\"164947\";\"Selemie\";\"other\"\n\"164947\";\"Selemiya\";\"other\"\n\"164947\";\"Selemiye\";\"other\"\n\"164947\";\"Selemié\";\"other\"\n\"164947\";\"Selemīya\";\"other\"\n\"164947\";\"Sélémîyé\";\"other\"\n\"164952\";\"Şalākhid\";\"main\"\n\"164952\";\"Salakhid\";\"ascii\"\n\"164952\";\"Salakhed\";\"other\"\n\"164952\";\"Salâkhed\";\"other\"\n\"165060\";\"Şāfītā\";\"main\"\n\"165060\";\"Safita\";\"ascii\"\n\"165060\";\"Borj Safita\";\"other\"\n\"165060\";\"Borj Sâfîta\";\"other\"\n\"165060\";\"Khokhu\";\"other\"\n\"165060\";\"Satita\";\"other\"\n\"165929\";\"Qaţanā\";\"main\"\n\"165929\";\"Qatana\";\"ascii\"\n\"165929\";\"Katana\";\"other\"\n\"165929\";\"Qatanah\";\"other\"\n\"165929\";\"Qaţanah\";\"other\"\n\"165997\";\"Qāsim\";\"main\"\n\"165997\";\"Qasim\";\"ascii\"\n\"165997\";\"Jacem\";\"other\"\n\"165997\";\"Jasem\";\"other\"\n\"165997\";\"Jasim\";\"other\"\n\"165997\";\"Jassem\";\"other\"\n\"165997\";\"Jâssem\";\"other\"\n\"165997\";\"Jāsim\";\"other\"\n\"165997\";\"Kasim\";\"other\"\n\"165997\";\"Касим\";\"other\"\n\"166111\";\"Qārah\";\"main\"\n\"166111\";\"Qarah\";\"ascii\"\n\"166111\";\"Kara\";\"other\"\n\"166111\";\"Karra\";\"other\"\n\"166111\";\"Qara\";\"other\"\n\"166111\";\"Qārā\";\"other\"\n\"166331\";\"Nubl\";\"main\"\n\"166331\";\"Noubbel\";\"other\"\n\"166331\";\"Noubbol\";\"other\"\n\"166719\";\"Mukharram al Fawqānī\";\"main\"\n\"166719\";\"Mukharram al Fawqani\";\"ascii\"\n\"166719\";\"Al-Mukharram Fokani\";\"other\"\n\"166719\";\"Moukharram Faouqani\";\"other\"\n\"166719\";\"Moukharrem el Fouqani\";\"other\"\n\"166719\";\"Muharram\";\"other\"\n\"166719\";\"Muharrem\";\"other\"\n\"166719\";\"Mukharram Fawqani\";\"other\"\n\"166719\";\"Mukharram Fawqānī\";\"other\"\n\"166719\";\"Mukharram Fokani\";\"other\"\n\"166719\";\"Muḩarram\";\"other\"\n\"167046\";\"Maşyāf\";\"main\"\n\"167046\";\"Masyaf\";\"ascii\"\n\"167046\";\"Imranie\";\"other\"\n\"167046\";\"Massiaf\";\"other\"\n\"167046\";\"Massiyaf\";\"other\"\n\"167046\";\"Massiâf\";\"other\"\n\"167046\";\"Massyaf\";\"other\"\n\"167046\";\"Masyab\";\"other\"\n\"167046\";\"Masyad\";\"other\"\n\"167046\";\"Masyāb\";\"other\"\n\"167046\";\"Maşşīyaf\";\"other\"\n\"167046\";\"Misiaf\";\"other\"\n\"167046\";\"Omranie\";\"other\"\n\"167046\";\"Omranié\";\"other\"\n\"167046\";\"`Omraniye\";\"other\"\n\"167046\";\"`Umraniya\";\"other\"\n\"167046\";\"‘Omrānīye\";\"other\"\n\"167046\";\"‘Umraniya\";\"other\"\n\"167357\";\"Manbij\";\"main\"\n\"167357\";\"Hierapolis\";\"other\"\n\"167357\";\"Manbej\";\"other\"\n\"167357\";\"Manbi\";\"other\"\n\"167357\";\"Membidj\";\"other\"\n\"167357\";\"Membij\";\"other\"\n\"167357\";\"Memdidge\";\"other\"\n\"167357\";\"Menbidj\";\"other\"\n\"167357\";\"Menbij\";\"other\"\n\"167357\";\"Mennbidj\";\"other\"\n\"167357\";\"Minbej\";\"other\"\n\"167375\";\"Ma‘lūlā\";\"main\"\n\"167375\";\"Ma`lula\";\"ascii\"\n\"167375\";\"Ma'alula\";\"other\"\n\"167375\";\"Ma`lulah\";\"other\"\n\"167375\";\"Maaljulja\";\"other\"\n\"167375\";\"Maaloula\";\"other\"\n\"167375\";\"Maaloûla\";\"other\"\n\"167375\";\"Ma‘lūlah\";\"other\"\n\"167375\";\"Ma’alula\";\"other\"\n\"167375\";\"Маалюля\";\"other\"\n\"167605\";\"Ma‘arrat Mişrīn\";\"main\"\n\"167605\";\"Ma`arrat Misrin\";\"ascii\"\n\"167605\";\"Ma`arrat Misriyn\";\"other\"\n\"167605\";\"Maarat Missrin\";\"other\"\n\"167605\";\"Maarrat al Masrin\";\"other\"\n\"167605\";\"Maarret Misrine\";\"other\"\n\"167605\";\"Maarret el Mesrine\";\"other\"\n\"167605\";\"Ma‘arrat Misriyn\";\"other\"\n\"168325\";\"Khān Shaykhūn\";\"main\"\n\"168325\";\"Khan Shaykhun\";\"ascii\"\n\"168325\";\"Khan Cheykoun\";\"other\"\n\"168325\";\"Khan Sheikhun\";\"other\"\n\"168325\";\"Khan-Sheikhoun\";\"other\"\n\"168325\";\"Khane Chaikhoun\";\"other\"\n\"168325\";\"Khane Cheikhoun\";\"other\"\n\"168325\";\"Khâne Chaïkhoun\";\"other\"\n\"168325\";\"Khâne Cheïkhoûn\";\"other\"\n\"168325\";\"Khān Sheikhūn\";\"other\"\n\"168620\";\"Kafr Zaytā\";\"main\"\n\"168620\";\"Kafr Zayta\";\"ascii\"\n\"168620\";\"Kafer Zaita\";\"other\"\n\"168620\";\"Kafer Zaïta\";\"other\"\n\"168620\";\"Kafer Zita\";\"other\"\n\"168620\";\"Kafer ez Zaita\";\"other\"\n\"168620\";\"Kafer ez Zaïta\";\"other\"\n\"168620\";\"Kafr Zaytah\";\"other\"\n\"168620\";\"Kafr Zita\";\"other\"\n\"168620\";\"Kafr Zīta\";\"other\"\n\"168629\";\"Kafr Takhārīm\";\"main\"\n\"168629\";\"Kafr Takharim\";\"ascii\"\n\"168629\";\"Kafar Takharim\";\"other\"\n\"168629\";\"Kafer Harut\";\"other\"\n\"168629\";\"Kafer Taharim\";\"other\"\n\"168629\";\"Kafer Tahârim\";\"other\"\n\"168629\";\"Kafer Takharim\";\"other\"\n\"168629\";\"Kafer Takhârim\";\"other\"\n\"168629\";\"Kafer Tkherim\";\"other\"\n\"168629\";\"Kafr Taharim\";\"other\"\n\"168629\";\"Kafr Taḩārīm\";\"other\"\n\"168661\";\"Kafr Nabl\";\"main\"\n\"168661\";\"Kafer Nebal\";\"other\"\n\"168661\";\"Kafr Nubl\";\"other\"\n\"168661\";\"Kafr Nubul\";\"other\"\n\"168661\";\"Kufer Nabel\";\"other\"\n\"168668\";\"Kafr Lāḩah\";\"main\"\n\"168668\";\"Kafr Lahah\";\"ascii\"\n\"168668\";\"Kafer Laha\";\"other\"\n\"168668\";\"Kafer Lâha\";\"other\"\n\"168668\";\"Kafr Laha\";\"other\"\n\"168668\";\"Kafr Lāhā\";\"other\"\n\"168668\";\"Kefrlehe\";\"other\"\n\"168668\";\"Kufer Laha\";\"other\"\n\"169023\";\"Jisr ash Shughūr\";\"main\"\n\"169023\";\"Jisr ash Shughur\";\"ascii\"\n\"169023\";\"Djisr el Choghour\";\"other\"\n\"169023\";\"Jisr Al-Shughour\";\"other\"\n\"169023\";\"Jisr ash Shaghur\";\"other\"\n\"169023\";\"Jisr ash Shāghūr\";\"other\"\n\"169023\";\"Jisr ech Chorhour\";\"other\"\n\"169023\";\"Jisr esh Shaur\";\"other\"\n\"169023\";\"Jisr esh Shughur\";\"other\"\n\"169023\";\"Jisr esh Shughūr\";\"other\"\n\"169023\";\"Jisr-esh-Shughour\";\"other\"\n\"169113\";\"Jayrūd\";\"main\"\n\"169113\";\"Jayrud\";\"ascii\"\n\"169113\";\"Djeroud\";\"other\"\n\"169113\";\"Djerud\";\"other\"\n\"169113\";\"Djéroud\";\"other\"\n\"169113\";\"Jairoud\";\"other\"\n\"169113\";\"Jairud\";\"other\"\n\"169113\";\"Jaïroud\";\"other\"\n\"169113\";\"Jerud\";\"other\"\n\"169113\";\"Jerūd\";\"other\"\n\"169179\";\"Jarābulus\";\"main\"\n\"169179\";\"Jarabulus\";\"ascii\"\n\"169179\";\"Carablus\";\"other\"\n\"169179\";\"Djarablous\";\"other\"\n\"169179\";\"Djerablous\";\"other\"\n\"169179\";\"Djérâbloûs\";\"other\"\n\"169179\";\"Jarablos\";\"other\"\n\"169179\";\"Jerablus\";\"other\"\n\"169179\";\"Jirablus\";\"other\"\n\"169179\";\"Jirāblus\";\"other\"\n\"169304\";\"Jablah\";\"main\"\n\"169304\";\"Djeble\";\"other\"\n\"169304\";\"Djéblé\";\"other\"\n\"169304\";\"Jableh\";\"other\"\n\"169304\";\"Jebele\";\"other\"\n\"169304\";\"Jebeleh\";\"other\"\n\"169304\";\"Jebelli\";\"other\"\n\"169304\";\"Jeble\";\"other\"\n\"169341\";\"Izra‘\";\"main\"\n\"169341\";\"Izra`\";\"ascii\"\n\"169341\";\"Ezra\";\"other\"\n\"169341\";\"Ezraa\";\"other\"\n\"169341\";\"Ezrra\";\"other\"\n\"169341\";\"Izra`a\";\"other\"\n\"169341\";\"Izra‘a\";\"other\"\n\"169341\";\"Lorava\";\"other\"\n\"169341\";\"Zoraia\";\"other\"\n\"169341\";\"Zorava\";\"other\"\n\"169372\";\"‘Irbīn\";\"main\"\n\"169372\";\"`Irbin\";\"ascii\"\n\"169372\";\"Aarbil\";\"other\"\n\"169372\";\"Aarbîl\";\"other\"\n\"169372\";\"Arbine\";\"other\"\n\"169372\";\"Irbin\";\"other\"\n\"169372\";\"Irbine\";\"other\"\n\"169375\";\"Inkhil\";\"main\"\n\"169375\";\"Enn Nakhl\";\"other\"\n\"169375\";\"Ennkhel\";\"other\"\n\"169375\";\"Inkhel\";\"other\"\n\"169389\";\"Idlib\";\"main\"\n\"169389\";\"Idleb\";\"other\"\n\"169389\";\"adlb\";\"other\"\n\"169389\";\"mhafzt adlb\";\"other\"\n\"169389\";\"Идлиб\";\"other\"\n\"169389\";\"إدلب\";\"other\"\n\"169389\";\"محافظة إدلب\";\"other\"\n\"169577\";\"Ḩimş\";\"main\"\n\"169577\";\"Hims\";\"ascii\"\n\"169577\";\"Emesa\";\"other\"\n\"169577\";\"Homs\";\"other\"\n\"169577\";\"Houmousse\";\"other\"\n\"169577\";\"Hums\";\"other\"\n\"169577\";\"Khoms\";\"other\"\n\"169577\";\"hms\";\"other\"\n\"169577\";\"hwms\";\"other\"\n\"169577\";\"mdynt hms\";\"other\"\n\"169577\";\"Хомс\";\"other\"\n\"169577\";\"חומס\";\"other\"\n\"169577\";\"حمص\";\"other\"\n\"169577\";\"مدينة حمص\";\"other\"\n\"169897\";\"Ḩiristā\";\"main\"\n\"169897\";\"Hirista\";\"ascii\"\n\"169897\";\"Arasta Bassal\";\"other\"\n\"169897\";\"Harasta\";\"other\"\n\"169897\";\"Harasta al Basal\";\"other\"\n\"169897\";\"Harasta el Bassal\";\"other\"\n\"169897\";\"Harastah al Basal\";\"other\"\n\"169897\";\"Harastah al Başal\";\"other\"\n\"169897\";\"Ḩarastā al Başal\";\"other\"\n\"170017\";\"Ḩamāh\";\"main\"\n\"170017\";\"Hamah\";\"ascii\"\n\"170017\";\"Epiphaneia\";\"other\"\n\"170017\";\"Epiphania\";\"other\"\n\"170017\";\"Hama\";\"other\"\n\"170017\";\"Hamao\";\"other\"\n\"170017\";\"Hamath\";\"other\"\n\"170017\";\"Khama\";\"other\"\n\"170017\";\"hmat\";\"other\"\n\"170017\";\"Хама\";\"other\"\n\"170017\";\"حماة\";\"other\"\n\"170044\";\"Ḩalfāyā\";\"main\"\n\"170044\";\"Halfaya\";\"ascii\"\n\"170063\";\"Aleppo\";\"main\"\n\"170063\";\"Alep\";\"other\"\n\"170063\";\"Alepas\";\"other\"\n\"170063\";\"Alepo\";\"other\"\n\"170063\";\"Alepo - hlb\";\"other\"\n\"170063\";\"Alepo - حلب\";\"other\"\n\"170063\";\"Aleppe\";\"other\"\n\"170063\";\"Berea\";\"other\"\n\"170063\";\"Beroea\";\"other\"\n\"170063\";\"Halab\";\"other\"\n\"170063\";\"Haleb\";\"other\"\n\"170063\";\"Halep\";\"other\"\n\"170063\";\"Heleb\";\"other\"\n\"170063\";\"Khaleb\";\"other\"\n\"170063\";\"Khalepion\";\"other\"\n\"170063\";\"Madinat Halab\";\"other\"\n\"170063\";\"Madīnat Ḩalab\";\"other\"\n\"170063\";\"areppo\";\"other\"\n\"170063\";\"hlb\";\"other\"\n\"170063\";\"Халеб\";\"other\"\n\"170063\";\"חאלב\";\"other\"\n\"170063\";\"حلب\";\"other\"\n\"170063\";\"Ḩalab\";\"other\"\n\"170063\";\"アレッポ\";\"other\"\n\"170572\";\"Duraykīsh\";\"main\"\n\"170572\";\"Duraykish\";\"ascii\"\n\"170572\";\"Bermana\";\"other\"\n\"170572\";\"Dere Kish\";\"other\"\n\"170572\";\"Draikich\";\"other\"\n\"170572\";\"Draykikh\";\"other\"\n\"170572\";\"Draykīkh\";\"other\"\n\"170572\";\"Draïkich\";\"other\"\n\"170572\";\"Dreikich\";\"other\"\n\"170572\";\"Dureikish\";\"other\"\n\"170572\";\"Dureikīsh\";\"other\"\n\"170592\";\"Dūmā\";\"main\"\n\"170592\";\"Duma\";\"ascii\"\n\"170592\";\"Douma\";\"other\"\n\"170592\";\"Дума\";\"other\"\n\"170654\";\"Damascus\";\"main\"\n\"170654\";\"Al-Sham\";\"other\"\n\"170654\";\"Al-Shām\";\"other\"\n\"170654\";\"Cham\";\"other\"\n\"170654\";\"Damas\";\"other\"\n\"170654\";\"Damasc\";\"other\"\n\"170654\";\"Damasco\";\"other\"\n\"170654\";\"Damascu\";\"other\"\n\"170654\";\"Damasek\";\"other\"\n\"170654\";\"Damask\";\"other\"\n\"170654\";\"Damask\\\"\";\"other\"\n\"170654\";\"Damaskas\";\"other\"\n\"170654\";\"Damasko\";\"other\"\n\"170654\";\"Damaskos\";\"other\"\n\"170654\";\"Damaskus\";\"other\"\n\"170654\";\"Damaszek\";\"other\"\n\"170654\";\"Damašek\";\"other\"\n\"170654\";\"Dammeseq\";\"other\"\n\"170654\";\"Dimaejk\";\"other\"\n\"170654\";\"Dimashk\";\"other\"\n\"170654\";\"Dimashk al-Sham\";\"other\"\n\"170654\";\"Dimashk al-Shām\";\"other\"\n\"170654\";\"Dimashq\";\"other\"\n\"170654\";\"Dimeshki esh Sham\";\"other\"\n\"170654\";\"Dimishq\";\"other\"\n\"170654\";\"Dimäjk\";\"other\"\n\"170654\";\"Esh Sham\";\"other\"\n\"170654\";\"Esh Shām\";\"other\"\n\"170654\";\"Sam\";\"other\"\n\"170654\";\"da ma shi ge\";\"other\"\n\"170654\";\"damaseukuseu\";\"other\"\n\"170654\";\"damasukasu\";\"other\"\n\"170654\";\"dmshq\";\"other\"\n\"170654\";\"dmsq\";\"other\"\n\"170654\";\"drmswq\";\"other\"\n\"170654\";\"Şam\";\"other\"\n\"170654\";\"Δαμασκός\";\"other\"\n\"170654\";\"Дамаск\";\"other\"\n\"170654\";\"Дамаскъ\";\"other\"\n\"170654\";\"Димишқ\";\"other\"\n\"170654\";\"Դամասկոս\";\"other\"\n\"170654\";\"דמשק\";\"other\"\n\"170654\";\"دمشق\";\"other\"\n\"170654\";\"ܕܪܡܣܘܩ\";\"other\"\n\"170654\";\"ደማስቆ\";\"other\"\n\"170654\";\"ダマスカス\";\"other\"\n\"170654\";\"大馬士革\";\"other\"\n\"170654\";\"다마스쿠스\";\"other\"\n\"170785\";\"Dayr Ḩāfir\";\"main\"\n\"170785\";\"Dayr Hafir\";\"ascii\"\n\"170785\";\"Deir Hafer\";\"other\"\n\"170785\";\"Deir Hafero\";\"other\"\n\"170785\";\"Deir Hafir\";\"other\"\n\"170785\";\"Deir Hâfero\";\"other\"\n\"170785\";\"Deir Hâfir\";\"other\"\n\"170785\";\"Deïr Hâfer\";\"other\"\n\"170794\";\"Dayr az Zawr\";\"main\"\n\"170794\";\"Azaura\";\"other\"\n\"170794\";\"Dayr al-Zor\";\"other\"\n\"170794\";\"Dayr az Zur\";\"other\"\n\"170794\";\"Dayr az Zūr\";\"other\"\n\"170794\";\"Deir Zzor\";\"other\"\n\"170794\";\"Deir ez Zoar\";\"other\"\n\"170794\";\"Deir ez Zor\";\"other\"\n\"170794\";\"Deïr ez Zor\";\"other\"\n\"170887\";\"Darbāsīyah\";\"main\"\n\"170887\";\"Darbasiyah\";\"ascii\"\n\"170887\";\"Derbassiye\";\"other\"\n\"170887\";\"Derbisiye\";\"other\"\n\"170887\";\"Derbisīye\";\"other\"\n\"170887\";\"Dirbassiyeh\";\"other\"\n\"170892\";\"Dārayyā\";\"main\"\n\"170892\";\"Darayya\";\"ascii\"\n\"170892\";\"Daraiya\";\"other\"\n\"170892\";\"Daraje\";\"other\"\n\"170892\";\"Daraya\";\"other\"\n\"170892\";\"Daraye\";\"other\"\n\"170892\";\"Darayyah\";\"other\"\n\"170892\";\"Dareiya\";\"other\"\n\"170892\";\"Deraya\";\"other\"\n\"170892\";\"Dâraiya\";\"other\"\n\"170892\";\"Dārayyah\";\"other\"\n\"170892\";\"Dāreiya\";\"other\"\n\"170892\";\"Дарайе\";\"other\"\n\"171451\";\"Binnish\";\"main\"\n\"171451\";\"Binnesh\";\"other\"\n\"171451\";\"Binnich\";\"other\"\n\"171830\";\"Bāniyās\";\"main\"\n\"171830\";\"Baniyas\";\"ascii\"\n\"171830\";\"Banias\";\"other\"\n\"171830\";\"Banijas\";\"other\"\n\"171830\";\"Bulunyas\";\"other\"\n\"171830\";\"Bulunyās\";\"other\"\n\"171830\";\"Bâniâs\";\"other\"\n\"171830\";\"Банияс\";\"other\"\n\"172059\";\"Az Zabadānī\";\"main\"\n\"172059\";\"Az Zabadani\";\"ascii\"\n\"172059\";\"Zabadani\";\"other\"\n\"172059\";\"Zabdani\";\"other\"\n\"172059\";\"Zabdānī\";\"other\"\n\"172059\";\"Zebdani\";\"other\"\n\"172059\";\"Zebdāni\";\"other\"\n\"172059\";\"Zebedani\";\"other\"\n\"172059\";\"Zibdani\";\"other\"\n\"172059\";\"Zibdānī\";\"other\"\n\"172082\";\"A‘zāz\";\"main\"\n\"172082\";\"A`zaz\";\"ascii\"\n\"172082\";\"Aazaz\";\"other\"\n\"172082\";\"Aazâz\";\"other\"\n\"172082\";\"Azaz\";\"other\"\n\"172082\";\"I`zaz\";\"other\"\n\"172082\";\"I‘zāz\";\"other\"\n\"172082\";\"Азаз\";\"other\"\n\"172349\";\"At Tall\";\"main\"\n\"172349\";\"Al-Tal\";\"other\"\n\"172349\";\"Ett Tell\";\"other\"\n\"172349\";\"Tal\";\"other\"\n\"172349\";\"Tall\";\"other\"\n\"172349\";\"Tell\";\"other\"\n\"172374\";\"Ath Thawrah\";\"main\"\n\"172374\";\"Al Tabaqah\";\"other\"\n\"172374\";\"Al-Tabbaqah\";\"other\"\n\"172374\";\"Al-Thawra\";\"other\"\n\"172374\";\"At Tabqah\";\"other\"\n\"172374\";\"Madinat ath Thawrah\";\"other\"\n\"172374\";\"Madīnat ath Thawrah\";\"other\"\n\"172374\";\"Medinat Al Thawra\";\"other\"\n\"172374\";\"Revolution City\";\"other\"\n\"172374\";\"Tabaqah\";\"other\"\n\"172374\";\"Tabqa\";\"other\"\n\"172374\";\"Ţabaqah\";\"other\"\n\"172408\";\"As Suwaydā’\";\"main\"\n\"172408\";\"As Suwayda'\";\"ascii\"\n\"172408\";\"Al-Sweida\";\"other\"\n\"172408\";\"As Suwaydah\";\"other\"\n\"172408\";\"Dionysia\";\"other\"\n\"172408\";\"Es Suweida\";\"other\"\n\"172408\";\"Es Suweidiya\";\"other\"\n\"172408\";\"Es Suweidīya\";\"other\"\n\"172408\";\"Soueida\";\"other\"\n\"172408\";\"Soueïda\";\"other\"\n\"172408\";\"Suwaydah\";\"other\"\n\"172408\";\"Sweida\";\"other\"\n\"172469\";\"Aş Şanamayn\";\"main\"\n\"172469\";\"As Sanamayn\";\"ascii\"\n\"172469\";\"Aere\";\"other\"\n\"172469\";\"Aeré\";\"other\"\n\"172469\";\"Es Sanamein\";\"other\"\n\"172469\";\"Es Sannamain\";\"other\"\n\"172469\";\"Sanamayn\";\"other\"\n\"172469\";\"Sanamein\";\"other\"\n\"172469\";\"Sanameine\";\"other\"\n\"172469\";\"Sanameïne\";\"other\"\n\"172469\";\"Sanmayn\";\"other\"\n\"172469\";\"Şanamayn\";\"other\"\n\"172503\";\"As Safīrah\";\"main\"\n\"172503\";\"As Safirah\";\"ascii\"\n\"172503\";\"Al-Safira\";\"other\"\n\"172503\";\"Safir\";\"other\"\n\"172503\";\"Safira\";\"other\"\n\"172503\";\"Safirah\";\"other\"\n\"172503\";\"Safīrah\";\"other\"\n\"172503\";\"Sfira\";\"other\"\n\"172503\";\"Sfire\";\"other\"\n\"172503\";\"Sfiré\";\"other\"\n\"172503\";\"Sfīra\";\"other\"\n\"172503\";\"Şafīr\";\"other\"\n\"172946\";\"Ar Rastan\";\"main\"\n\"172946\";\"Al-Rastan\";\"other\"\n\"172946\";\"Arethousa\";\"other\"\n\"172946\";\"Arethus\";\"other\"\n\"172946\";\"El Rastane\";\"other\"\n\"172946\";\"Er Rastan\";\"other\"\n\"172946\";\"Rastan\";\"other\"\n\"172946\";\"Rastane\";\"other\"\n\"172946\";\"Rastâne\";\"other\"\n\"172955\";\"Ar Raqqah\";\"main\"\n\"172955\";\"Al-Rakka\";\"other\"\n\"172955\";\"Ar-Rakka\";\"other\"\n\"172955\";\"Ar-Raqqah\";\"other\"\n\"172955\";\"Nicephorium\";\"other\"\n\"172955\";\"Rakka\";\"other\"\n\"172955\";\"Raqqa\";\"other\"\n\"172955\";\"Raqqah\";\"other\"\n\"172955\";\"alrqt\";\"other\"\n\"172955\";\"Ар-Ракка\";\"other\"\n\"172955\";\"الرقة\";\"other\"\n\"173193\";\"An Nabk\";\"main\"\n\"173193\";\"Al-Nabek\";\"other\"\n\"173193\";\"En Nebk\";\"other\"\n\"173193\";\"Kalamom\";\"other\"\n\"173193\";\"Nabak\";\"other\"\n\"173193\";\"Nabaq\";\"other\"\n\"173193\";\"Nabek\";\"other\"\n\"173193\";\"Nebeck\";\"other\"\n\"173193\";\"Nebek\";\"other\"\n\"173193\";\"Nebk\";\"other\"\n\"173193\";\"Nébeck\";\"other\"\n\"173312\";\"Al Quţayfah\";\"main\"\n\"173312\";\"Al Qutayfah\";\"ascii\"\n\"173312\";\"Al-Kutaifeh\";\"other\"\n\"173312\";\"El Qtaife\";\"other\"\n\"173312\";\"El Qtaïfé\";\"other\"\n\"173312\";\"Kouteife\";\"other\"\n\"173312\";\"Kouteifé\";\"other\"\n\"173312\";\"Kutayfa\";\"other\"\n\"173312\";\"Kuteife\";\"other\"\n\"173312\";\"Qtaife\";\"other\"\n\"173312\";\"Qtaïfé\";\"other\"\n\"173312\";\"Qutayfah\";\"other\"\n\"173312\";\"Quteifa\";\"other\"\n\"173312\";\"Quteife\";\"other\"\n\"173312\";\"Quteifeh\";\"other\"\n\"173312\";\"Quţayfah\";\"other\"\n\"173322\";\"Al Quşayr\";\"main\"\n\"173322\";\"Al Qusayr\";\"ascii\"\n\"173322\";\"Al'-Kusajra\";\"other\"\n\"173322\";\"Al-Kuseir\";\"other\"\n\"173322\";\"El Qoussair\";\"other\"\n\"173322\";\"El Quseir\";\"other\"\n\"173322\";\"Kouseir\";\"other\"\n\"173322\";\"Koussaie\";\"other\"\n\"173322\";\"Kousseir\";\"other\"\n\"173322\";\"Kuseir\";\"other\"\n\"173322\";\"Qoussair\";\"other\"\n\"173322\";\"Qoussaïr\";\"other\"\n\"173322\";\"Qusayr\";\"other\"\n\"173322\";\"Qusir\";\"other\"\n\"173322\";\"Quşayr\";\"other\"\n\"173322\";\"Аль-Кусайра\";\"other\"\n\"173334\";\"Al Qunayţirah\";\"main\"\n\"173334\";\"Al Qunaytirah\";\"ascii\"\n\"173334\";\"El Kuneitra\";\"other\"\n\"173334\";\"El Qnaitra\";\"other\"\n\"173334\";\"El Qnaïtra\";\"other\"\n\"173334\";\"El Quneitra\";\"other\"\n\"173334\";\"Kuneitra\";\"other\"\n\"173334\";\"Kuneïtra\";\"other\"\n\"173334\";\"Qhaitra\";\"other\"\n\"173334\";\"Qnaitra\";\"other\"\n\"173334\";\"Qnaytra\";\"other\"\n\"173334\";\"Qnayţra\";\"other\"\n\"173334\";\"Qnaïtra\";\"other\"\n\"173334\";\"Qunaytirah\";\"other\"\n\"173334\";\"Qunayturah\";\"other\"\n\"173334\";\"Qunayţirah\";\"other\"\n\"173334\";\"Qunayţurah\";\"other\"\n\"173334\";\"Quneitra\";\"other\"\n\"173361\";\"Al Qaryatayn\";\"main\"\n\"173361\";\"El Qaryatein\";\"other\"\n\"173361\";\"Kariatein\";\"other\"\n\"173361\";\"Kariateine\";\"other\"\n\"173361\";\"Karyatein\";\"other\"\n\"173361\";\"Kuriatein\";\"other\"\n\"173361\";\"Kuryatein\";\"other\"\n\"173361\";\"Nezala\";\"other\"\n\"173361\";\"Qariateine\";\"other\"\n\"173361\";\"Qariateïne\";\"other\"\n\"173361\";\"Qaryatayn\";\"other\"\n\"173480\";\"Al Mayādīn\";\"main\"\n\"173480\";\"Al Mayadin\";\"ascii\"\n\"173480\";\"Al-Mayadeen\";\"other\"\n\"173480\";\"Audattha\";\"other\"\n\"173480\";\"Mayadin\";\"other\"\n\"173480\";\"Mayadine\";\"other\"\n\"173480\";\"Mayādīn\";\"other\"\n\"173480\";\"Meyadin\";\"other\"\n\"173480\";\"Meyadine\";\"other\"\n\"173480\";\"Meyedine\";\"other\"\n\"173480\";\"Meyādīn\";\"other\"\n\"173576\";\"Latakia\";\"main\"\n\"173576\";\"Al Ladhiqiyah\";\"other\"\n\"173576\";\"Al Lādhiqīyah\";\"other\"\n\"173576\";\"Al-Laziqiyah\";\"other\"\n\"173576\";\"El Ladhaqiye\";\"other\"\n\"173576\";\"El Ladhiqiya\";\"other\"\n\"173576\";\"El Lādhaqiyé\";\"other\"\n\"173576\";\"El Lādhiqīya\";\"other\"\n\"173576\";\"Ladhiqiye\";\"other\"\n\"173576\";\"Ladikis\";\"other\"\n\"173576\";\"Ladikiya\";\"other\"\n\"173576\";\"Laodicea\";\"other\"\n\"173576\";\"Laodicea ad Mare\";\"other\"\n\"173576\";\"Laodicee\";\"other\"\n\"173576\";\"Laodicée\";\"other\"\n\"173576\";\"Laodikeia\";\"other\"\n\"173576\";\"Latakieh\";\"other\"\n\"173576\";\"Latakija\";\"other\"\n\"173576\";\"Lattakia\";\"other\"\n\"173576\";\"Lattaquie\";\"other\"\n\"173576\";\"Lattaquié\";\"other\"\n\"173576\";\"Lazkiye\";\"other\"\n\"173576\";\"ladhqyh\";\"other\"\n\"173576\";\"ladhqyt\";\"other\"\n\"173576\";\"ltqyh\";\"other\"\n\"173576\";\"Латакия\";\"other\"\n\"173576\";\"לטקיה\";\"other\"\n\"173576\";\"لاذقية\";\"other\"\n\"173576\";\"لاذقیه\";\"other\"\n\"173598\";\"Al Kiswah\";\"main\"\n\"173598\";\"Kisoue\";\"other\"\n\"173598\";\"Kisoué\";\"other\"\n\"173598\";\"Kissoue\";\"other\"\n\"173598\";\"Kisswa\";\"other\"\n\"173598\";\"Kiswah\";\"other\"\n\"173598\";\"Kiswe\";\"other\"\n\"173598\";\"Kisweh\";\"other\"\n\"173811\";\"Al Ḩasakah\";\"main\"\n\"173811\";\"Al Hasakah\";\"ascii\"\n\"173811\";\"Al-Hasakeh\";\"other\"\n\"173811\";\"El Haseke\";\"other\"\n\"173811\";\"Hasakeh\";\"other\"\n\"173811\";\"Hasijih\";\"other\"\n\"173811\";\"Hassetche\";\"other\"\n\"173811\";\"Hasskih\";\"other\"\n\"173811\";\"Ḩasijih\";\"other\"\n\"173811\";\"Ḩasskih\";\"other\"\n\"173819\";\"Al Ḩarāk\";\"main\"\n\"173819\";\"Al Harak\";\"ascii\"\n\"173819\";\"El Hrak\";\"other\"\n\"173819\";\"El Hrâk\";\"other\"\n\"174018\";\"Al Bāb\";\"main\"\n\"174018\";\"Al Bab\";\"ascii\"\n\"174018\";\"Al Balo\";\"other\"\n\"174018\";\"Al Bālo\";\"other\"\n\"174018\";\"Bab\";\"other\"\n\"174018\";\"Bâb\";\"other\"\n\"174018\";\"El Bab\";\"other\"\n\"174018\";\"El Bāb\";\"other\"\n\"174186\";\"‘Afrīn\";\"main\"\n\"174186\";\"`Afrin\";\"ascii\"\n\"174186\";\"Aafrine\";\"other\"\n\"174186\";\"Aafrîne\";\"other\"\n\"174186\";\"Afrin\";\"other\"\n\"174186\";\"Afrine\";\"other\"\n\"174186\";\"`Ifrin\";\"other\"\n\"174186\";\"‘Ifrīn\";\"other\"\n\"174259\";\"Ad Dānā\";\"main\"\n\"174259\";\"Ad Dana\";\"ascii\"\n\"174259\";\"Ad Danah\";\"other\"\n\"174259\";\"Ad Dānah\";\"other\"\n\"174259\";\"Dana\";\"other\"\n\"174259\";\"Dānā\";\"other\"\n\"174259\";\"Ed Dana\";\"other\"\n\"174259\";\"Ed Dâna\";\"other\"\n\"174448\";\"Abū Kamāl\";\"main\"\n\"174448\";\"Abu Kamal\";\"ascii\"\n\"174448\";\"Abou Kemal\";\"other\"\n\"174448\";\"Abu Kemal\";\"other\"\n\"174448\";\"Abu Kemāl\";\"other\"\n\"174448\";\"Abu-Kamal'\";\"other\"\n\"174448\";\"Al-bu-Kamal\";\"other\"\n\"174448\";\"Hindane\";\"other\"\n\"174448\";\"Hindané\";\"other\"\n\"174448\";\"Абу-Камаль\";\"other\"\n\"174506\";\"Hajīn\";\"main\"\n\"174506\";\"Hajin\";\"ascii\"\n\"174506\";\"Abou Hardane\";\"other\"\n\"174506\";\"Abou Hardâne\";\"other\"\n\"174506\";\"Abu Hardan\";\"other\"\n\"174506\";\"Abu Hardub\";\"other\"\n\"174506\";\"Abū Ḩardān\";\"other\"\n\"174506\";\"Abū Ḩardūb\";\"other\"\n\"174506\";\"Bou Hardane\";\"other\"\n\"174506\";\"Hajine\";\"other\"\n\"174506\";\"Hajîne\";\"other\"\n\"6943439\";\"كاف الجاع\";\"main\"\n\"934840\";\"Tshaneni\";\"main\"\n\"934840\";\"Tahaneni\";\"other\"\n\"934851\";\"Siteki\";\"main\"\n\"934851\";\"Stegi\";\"other\"\n\"934862\";\"Sidvokodvo\";\"main\"\n\"934881\";\"Piggs Peak\";\"main\"\n\"934900\";\"Nsoko\";\"main\"\n\"934900\";\"Nsoka\";\"other\"\n\"934966\";\"Mhlume\";\"main\"\n\"934971\";\"Mhlambanyatsi\";\"main\"\n\"934971\";\"Mhlambanyati\";\"other\"\n\"934985\";\"Mbabane\";\"main\"\n\"934985\";\"Mbabano\";\"other\"\n\"934985\";\"Mbabanė\";\"other\"\n\"934985\";\"Mpampane\";\"other\"\n\"934985\";\"eumbabane\";\"other\"\n\"934985\";\"mbbnh\";\"other\"\n\"934985\";\"mo ba ben\";\"other\"\n\"934985\";\"mubabane\";\"other\"\n\"934985\";\"Μπαμπάνε\";\"other\"\n\"934985\";\"Мбабане\";\"other\"\n\"934985\";\"מבבנה\";\"other\"\n\"934985\";\"ምባባኔ\";\"other\"\n\"934985\";\"ムババーネ\";\"other\"\n\"934985\";\"墨巴本\";\"other\"\n\"934985\";\"음바바네\";\"other\"\n\"934995\";\"Manzini\";\"main\"\n\"934995\";\"Bremersdorp\";\"other\"\n\"934995\";\"Maneini\";\"other\"\n\"934995\";\"Manêini\";\"other\"\n\"934995\";\"man qi ni\";\"other\"\n\"934995\";\"Манзини\";\"other\"\n\"934995\";\"曼齐尼\";\"other\"\n\"935005\";\"Malkerns\";\"main\"\n\"935048\";\"Lobamba\";\"main\"\n\"935048\";\"Lobomba\";\"other\"\n\"935048\";\"lwbmbh\";\"other\"\n\"935048\";\"Лобамба\";\"other\"\n\"935048\";\"לובמבה\";\"other\"\n\"935051\";\"Lavumisa\";\"main\"\n\"935051\";\"Gollel\";\"other\"\n\"935054\";\"Kwaluseni\";\"main\"\n\"935055\";\"Kubuta\";\"main\"\n\"935076\";\"Hluti\";\"main\"\n\"935081\";\"Hlatikulu\";\"main\"\n\"935106\";\"Darkton\";\"main\"\n\"935106\";\"Darktown\";\"other\"\n\"935111\";\"Bulembu\";\"main\"\n\"935111\";\"Compound\";\"other\"\n\"935111\";\"Emhlembi\";\"other\"\n\"935111\";\"Emlembe\";\"other\"\n\"935113\";\"Big Bend\";\"main\"\n\"935114\";\"Bhunya\";\"main\"\n\"935114\";\"Bunya\";\"other\"\n\"3576994\";\"Cockburn Town\";\"main\"\n\"243590\";\"Iriba\";\"main\"\n\"243783\";\"Goz Béïda\";\"main\"\n\"243783\";\"Goz Beida\";\"ascii\"\n\"244878\";\"Biltine\";\"main\"\n\"245338\";\"Am Timan\";\"main\"\n\"245338\";\"Am Timane\";\"other\"\n\"245338\";\"Am Timmane\";\"other\"\n\"245338\";\"Umm Timman\";\"other\"\n\"245669\";\"Adré\";\"main\"\n\"245669\";\"Adre\";\"ascii\"\n\"245785\";\"Abéché\";\"main\"\n\"245785\";\"Abeche\";\"ascii\"\n\"245785\";\"Abacher\";\"other\"\n\"245785\";\"Abecher\";\"other\"\n\"245785\";\"Abeshe\";\"other\"\n\"245785\";\"Abécher\";\"other\"\n\"245785\";\"abesye\";\"other\"\n\"245785\";\"Абеше\";\"other\"\n\"245785\";\"아베셰\";\"other\"\n\"2425791\";\"Sarh\";\"main\"\n\"2425791\";\"Archambault\";\"other\"\n\"2425791\";\"Fort-Archambault\";\"other\"\n\"2425791\";\"Sahr\";\"other\"\n\"2425791\";\"Sarkh\";\"other\"\n\"2425791\";\"Shar\";\"other\"\n\"2425791\";\"Сарх\";\"other\"\n\"2426240\";\"Pala\";\"main\"\n\"2426240\";\"Palla\";\"other\"\n\"2426240\";\"Пала\";\"other\"\n\"2426370\";\"Oum Hadjer\";\"main\"\n\"2427036\";\"Ngama\";\"main\"\n\"2427036\";\"Ngama Yakoud\";\"other\"\n\"2427123\";\"N'Djamena\";\"main\"\n\"2427123\";\"Fort-Lamy\";\"other\"\n\"2427123\";\"Lamy\";\"other\"\n\"2427123\";\"Ndjamena\";\"other\"\n\"2427123\";\"Ndjemena\";\"other\"\n\"2427123\";\"Ndzamena\";\"other\"\n\"2427123\";\"Ndzhamena\";\"other\"\n\"2427123\";\"Ndżamena\";\"other\"\n\"2427123\";\"Ndžamena\";\"other\"\n\"2427123\";\"Njameno\";\"other\"\n\"2427123\";\"Nĵameno\";\"other\"\n\"2427123\";\"N’Djamena\";\"other\"\n\"2427123\";\"N’Dj·amèna\";\"other\"\n\"2427123\";\"Tzamena\";\"other\"\n\"2427123\";\"Yamena\";\"other\"\n\"2427123\";\"anjmyna\";\"other\"\n\"2427123\";\"en jia mei na\";\"other\"\n\"2427123\";\"eunjamena\";\"other\"\n\"2427123\";\"ng'mnh\";\"other\"\n\"2427123\";\"njamena\";\"other\"\n\"2427123\";\"Τζαμένα\";\"other\"\n\"2427123\";\"Нджамена\";\"other\"\n\"2427123\";\"נג'מנה\";\"other\"\n\"2427123\";\"أنجمينا\";\"other\"\n\"2427123\";\"ንጃሜና\";\"other\"\n\"2427123\";\"ンジャメナ\";\"other\"\n\"2427123\";\"恩賈梅納\";\"other\"\n\"2427123\";\"은자메나\";\"other\"\n\"2427336\";\"Moussoro\";\"main\"\n\"2427336\";\"Bahr El Ghazal\";\"other\"\n\"2427455\";\"Moundou\";\"main\"\n\"2427455\";\"Mondou\";\"other\"\n\"2427455\";\"Mondu\";\"other\"\n\"2427455\";\"Moundu\";\"other\"\n\"2427455\";\"Mundu\";\"other\"\n\"2427455\";\"Мунду\";\"other\"\n\"2427637\";\"Mongo\";\"main\"\n\"2427637\";\"Монго\";\"other\"\n\"2427697\";\"Moïssala\";\"main\"\n\"2427697\";\"Moissala\";\"ascii\"\n\"2427697\";\"Moissaia\";\"other\"\n\"2427949\";\"Melfi\";\"main\"\n\"2428042\";\"Mboursou Léré\";\"main\"\n\"2428042\";\"Mboursou Lere\";\"ascii\"\n\"2428216\";\"Massenya\";\"main\"\n\"2428216\";\"Chekna\";\"other\"\n\"2428216\";\"Massenia\";\"other\"\n\"2428216\";\"Tchekna\";\"other\"\n\"2428228\";\"Massakory\";\"main\"\n\"2428228\";\"Dagana\";\"other\"\n\"2428228\";\"Massakori\";\"other\"\n\"2428231\";\"Massaguet\";\"main\"\n\"2428231\";\"Massa Gueit\";\"other\"\n\"2428231\";\"Massaguete\";\"other\"\n\"2428231\";\"Massaguette\";\"other\"\n\"2428231\";\"Massaquet\";\"other\"\n\"2428394\";\"Mao\";\"main\"\n\"2429296\";\"Laï\";\"main\"\n\"2429296\";\"Lai\";\"ascii\"\n\"2429296\";\"Behagie\";\"other\"\n\"2429296\";\"Behagle\";\"other\"\n\"2429344\";\"Kyabé\";\"main\"\n\"2429344\";\"Kyabe\";\"ascii\"\n\"2429344\";\"Kiyabe\";\"other\"\n\"2429344\";\"Kiyabi\";\"other\"\n\"2429344\";\"Kiyabé\";\"other\"\n\"2429605\";\"Koumra\";\"main\"\n\"2429605\";\"Koumbra\";\"other\"\n\"2430506\";\"Kelo\";\"main\"\n\"2430506\";\"Kel\";\"other\"\n\"2430506\";\"Кел\";\"other\"\n\"2431573\";\"Guélengdeng\";\"main\"\n\"2431573\";\"Guelengdeng\";\"ascii\"\n\"2431573\";\"Gelengdeng\";\"other\"\n\"2431573\";\"Gélengdeng\";\"other\"\n\"2431724\";\"Gounou-Gaya\";\"main\"\n\"2431724\";\"Gounou\";\"other\"\n\"2431724\";\"Gounou Foursoum\";\"other\"\n\"2431736\";\"Goundi\";\"main\"\n\"2431736\";\"Gundi\";\"other\"\n\"2432678\";\"Faya\";\"main\"\n\"2432678\";\"Faya-Largeau\";\"other\"\n\"2432678\";\"Largeau\";\"other\"\n\"2433055\";\"Dourbali\";\"main\"\n\"2433055\";\"Ndourbali\";\"other\"\n\"2433437\";\"Doba\";\"main\"\n\"2433437\";\"Доба\";\"other\"\n\"2434584\";\"Bousso\";\"main\"\n\"2434584\";\"Fort Bretonnet\";\"other\"\n\"2434910\";\"Bongor\";\"main\"\n\"2434910\";\"Бонгор\";\"other\"\n\"2434979\";\"Bol\";\"main\"\n\"2434979\";\"Bol I\";\"other\"\n\"2434985\";\"Bokoro\";\"main\"\n\"2435124\";\"Bitkine\";\"main\"\n\"2435124\";\"Bitkin\";\"other\"\n\"2435474\";\"Béré\";\"main\"\n\"2435474\";\"Bere\";\"ascii\"\n\"2435508\";\"Benoy\";\"main\"\n\"2435508\";\"Benoye\";\"other\"\n\"2435508\";\"Bénoye\";\"other\"\n\"2435708\";\"Beïnamar\";\"main\"\n\"2435708\";\"Beinamar\";\"ascii\"\n\"2435837\";\"Béboto\";\"main\"\n\"2435837\";\"Beboto\";\"ascii\"\n\"2435854\";\"Bébédja\";\"main\"\n\"2435854\";\"Bebedja\";\"ascii\"\n\"2435854\";\"Bebedjia\";\"other\"\n\"2435854\";\"Bebeidja\";\"other\"\n\"2435854\";\"Bebeidjia\";\"other\"\n\"2435854\";\"Bebiya\";\"other\"\n\"2435854\";\"Bébédjia\";\"other\"\n\"2436400\";\"Ati\";\"main\"\n\"2436400\";\"Ати\";\"other\"\n\"2436628\";\"Aozou\";\"main\"\n\"2436628\";\"Ozu\";\"other\"\n\"1546102\";\"Port-aux-Français\";\"main\"\n\"1546102\";\"Port-aux-Francais\";\"ascii\"\n\"1546102\";\"Port-o-Franseh\";\"other\"\n\"1546102\";\"Порт-о-Франсэ\";\"other\"\n\"2363490\";\"Vogan\";\"main\"\n\"2363490\";\"Voga\";\"other\"\n\"2363490\";\"Woga\";\"other\"\n\"2363490\";\"Wogan\";\"other\"\n\"2363490\";\"Воган\";\"other\"\n\"2363534\";\"Tsévié\";\"main\"\n\"2363534\";\"Tsevie\";\"ascii\"\n\"2363534\";\"Tsevye\";\"other\"\n\"2363534\";\"Tsévyé\";\"other\"\n\"2363534\";\"Tzevie\";\"other\"\n\"2363908\";\"Tchamba\";\"main\"\n\"2363908\";\"Kouboni\";\"other\"\n\"2363908\";\"Kuboni\";\"other\"\n\"2364041\";\"Tabligbo\";\"main\"\n\"2364041\";\"Awesi\";\"other\"\n\"2364041\";\"Awési\";\"other\"\n\"2364041\";\"Tablizhbo\";\"other\"\n\"2364041\";\"Таблигбо\";\"other\"\n\"2364079\";\"Sotouboua\";\"main\"\n\"2364104\";\"Sokodé\";\"main\"\n\"2364104\";\"Sokode\";\"ascii\"\n\"2364104\";\"suo ke de\";\"other\"\n\"2364104\";\"Сокоде\";\"other\"\n\"2364104\";\"索科德\";\"other\"\n\"2364752\";\"Notsé\";\"main\"\n\"2364752\";\"Notse\";\"ascii\"\n\"2364752\";\"Nouatja\";\"other\"\n\"2364752\";\"Nuatia\";\"other\"\n\"2364752\";\"Nuatja\";\"other\"\n\"2364752\";\"Nuatya\";\"other\"\n\"2364812\";\"Niamtougou\";\"main\"\n\"2364812\";\"Niamtugu\";\"other\"\n\"2364812\";\"Niamtuu\";\"other\"\n\"2364812\";\"Njamtuu\";\"other\"\n\"2364812\";\"Njamtūu\";\"other\"\n\"2364812\";\"Nyamtouhou\";\"other\"\n\"2364812\";\"Ниамтугу\";\"other\"\n\"2365190\";\"Sansanné-Mango\";\"main\"\n\"2365190\";\"Sansanne-Mango\";\"ascii\"\n\"2365190\";\"Mango\";\"other\"\n\"2365190\";\"N'Zara\";\"other\"\n\"2365190\";\"Nsara\";\"other\"\n\"2365190\";\"N’Zara\";\"other\"\n\"2365190\";\"Sansane-Mangu\";\"other\"\n\"2365190\";\"Sanssane-Mango\";\"other\"\n\"2365190\";\"Sanssané-Mango\";\"other\"\n\"2365267\";\"Lomé\";\"main\"\n\"2365267\";\"Lome\";\"ascii\"\n\"2365267\";\"Lomė\";\"other\"\n\"2365267\";\"lome\";\"other\"\n\"2365267\";\"luo mei\";\"other\"\n\"2365267\";\"lwmh\";\"other\"\n\"2365267\";\"lwmy\";\"other\"\n\"2365267\";\"rome\";\"other\"\n\"2365267\";\"Λομέ\";\"other\"\n\"2365267\";\"Ломе\";\"other\"\n\"2365267\";\"לומה\";\"other\"\n\"2365267\";\"لومه\";\"other\"\n\"2365267\";\"لومي\";\"other\"\n\"2365267\";\"ሎሜ\";\"other\"\n\"2365267\";\"ロメ\";\"other\"\n\"2365267\";\"洛美\";\"other\"\n\"2365267\";\"로메\";\"other\"\n\"2365560\";\"Kpalimé\";\"main\"\n\"2365560\";\"Kpalime\";\"ascii\"\n\"2365560\";\"Agome-Palime\";\"other\"\n\"2365560\";\"Agomé-Palimé\";\"other\"\n\"2365560\";\"Palime\";\"other\"\n\"2365560\";\"Palimé\";\"other\"\n\"2365560\";\"pa li mei\";\"other\"\n\"2365560\";\"帕利梅\";\"other\"\n\"2365571\";\"Pagouda\";\"main\"\n\"2365571\";\"Kpagouda\";\"other\"\n\"2366152\";\"Kara\";\"main\"\n\"2366152\";\"Lama\";\"other\"\n\"2366152\";\"Lama-Kara\";\"other\"\n\"2366152\";\"Кара\";\"other\"\n\"2366168\";\"Kandé\";\"main\"\n\"2366168\";\"Kande\";\"ascii\"\n\"2366168\";\"Kante\";\"other\"\n\"2366168\";\"Kanté\";\"other\"\n\"2367164\";\"Dapaong\";\"main\"\n\"2367164\";\"Dapango\";\"other\"\n\"2367164\";\"Dapaonge\";\"other\"\n\"2367164\";\"Dapong\";\"other\"\n\"2367164\";\"da pang\";\"other\"\n\"2367164\";\"Дапаонге\";\"other\"\n\"2367164\";\"达庞\";\"other\"\n\"2367568\";\"Bassar\";\"main\"\n\"2367568\";\"Basar\";\"other\"\n\"2367568\";\"Bassari\";\"other\"\n\"2367568\";\"ba sa\";\"other\"\n\"2367568\";\"Басар\";\"other\"\n\"2367568\";\"巴萨\";\"other\"\n\"2367656\";\"Bafilo\";\"main\"\n\"2367656\";\"Бафило\";\"other\"\n\"2367660\";\"Badou\";\"main\"\n\"2367660\";\"Bad\";\"other\"\n\"2367660\";\"Badu\";\"other\"\n\"2367660\";\"Bādu\";\"other\"\n\"2367660\";\"Бад\";\"other\"\n\"2367886\";\"Atakpamé\";\"main\"\n\"2367886\";\"Atakpame\";\"ascii\"\n\"2367990\";\"Aného\";\"main\"\n\"2367990\";\"Aneho\";\"ascii\"\n\"2367990\";\"Anecho\";\"other\"\n\"2367990\";\"Anekho\";\"other\"\n\"2367990\";\"Anerho\";\"other\"\n\"2367990\";\"Anécho\";\"other\"\n\"2367990\";\"Klein-Popo\";\"other\"\n\"2367990\";\"Little Popo\";\"other\"\n\"2367990\";\"Petit Popo\";\"other\"\n\"2368035\";\"Amlamé\";\"main\"\n\"2368035\";\"Amlame\";\"ascii\"\n\"2368035\";\"Emla\";\"other\"\n\"1115288\";\"Tha Chana\";\"main\"\n\"1115288\";\"Amphoe Tha Chana\";\"other\"\n\"1115288\";\"ท่าชนะ\";\"other\"\n\"1116760\";\"Don Sak\";\"main\"\n\"1117344\";\"Thung Sai\";\"main\"\n\"1117344\";\"Amphoe Sai Thong Watthana\";\"other\"\n\"1117344\";\"Ban Thung Sai\";\"other\"\n\"1117344\";\"King Amphoe Sai Thong Watthana\";\"other\"\n\"1117344\";\"ทุ่งทราย\";\"other\"\n\"1117652\";\"Ban Talat Yai\";\"main\"\n\"1117652\";\"Talat-Jai\";\"other\"\n\"1117652\";\"Талат-Яи\";\"other\"\n\"1117656\";\"Ban Talat Nua\";\"main\"\n\"1117656\";\"Talat-Nua\";\"other\"\n\"1117656\";\"Талат-Нуа\";\"other\"\n\"1117823\";\"Ban Sam Roi Yot\";\"main\"\n\"1119933\";\"Ban Huai I Huak\";\"main\"\n\"1120438\";\"Thap Sakae\";\"main\"\n\"1120438\";\"ทับสะแก\";\"other\"\n\"1120440\";\"Si Sawat\";\"main\"\n\"1120440\";\"ศรีสวัสดิ์\";\"other\"\n\"1120443\";\"Phrao\";\"main\"\n\"1120443\";\"พร้าว\";\"other\"\n\"1120446\";\"Palian\";\"main\"\n\"1120446\";\"ปะเหลียน\";\"other\"\n\"1120447\";\"Pai\";\"main\"\n\"1120447\";\"ปาย\";\"other\"\n\"1120448\";\"Omkoi\";\"main\"\n\"1120448\";\"อมก๋อย\";\"other\"\n\"1120449\";\"Mae Taeng\";\"main\"\n\"1120449\";\"แม่แตง\";\"other\"\n\"1120453\";\"Mae Ai\";\"main\"\n\"1120453\";\"Ban Mae Ai Luang\";\"other\"\n\"1120453\";\"บ้านแม่อายหลวง\";\"other\"\n\"1120453\";\"แม่อาย\";\"other\"\n\"1120457\";\"Khuan Khanun\";\"main\"\n\"1120457\";\"ควนขนุน\";\"other\"\n\"1120458\";\"Khlong Thom\";\"main\"\n\"1120458\";\"คลองท่อม\";\"other\"\n\"1120460\";\"Kantang\";\"main\"\n\"1120460\";\"กันตัง\";\"other\"\n\"1120461\";\"Huai Yot\";\"main\"\n\"1120461\";\"ห้วยยอด\";\"other\"\n\"1120463\";\"Dok Kham Tai\";\"main\"\n\"1120463\";\"ดอกคำใต้\";\"other\"\n\"1120465\";\"Cha-uat\";\"main\"\n\"1120465\";\"ชะอวด\";\"other\"\n\"1120467\";\"Bang Saphan\";\"main\"\n\"1120467\";\"บางสะพาน\";\"other\"\n\"1149698\";\"Phetchaburi\";\"main\"\n\"1149698\";\"Amphoe Muang Phet Buri\";\"other\"\n\"1149698\";\"Bejraburi\";\"other\"\n\"1149698\";\"Bhej Buri\";\"other\"\n\"1149698\";\"Changwat Phet Buri\";\"other\"\n\"1149698\";\"Moeang Bhejburi\";\"other\"\n\"1149698\";\"Muang Bheja Buri\";\"other\"\n\"1149698\";\"Muang Pecha Buri\";\"other\"\n\"1149698\";\"Muang Petchaboun\";\"other\"\n\"1149698\";\"Mueang Phetchaburi\";\"other\"\n\"1149698\";\"Pechaburi\";\"other\"\n\"1149698\";\"Petchaburi\";\"other\"\n\"1149698\";\"Phet Buri\";\"other\"\n\"1149698\";\"Pkhetchaburi\";\"other\"\n\"1149698\";\"Пхетчабури\";\"other\"\n\"1149698\";\"เมืองเพชรบุรี\";\"other\"\n\"1149757\";\"Yan Ta Khao\";\"main\"\n\"1149757\";\"Amphoe Yan Ta Khao\";\"other\"\n\"1149757\";\"ย่านตาขาว\";\"other\"\n\"1149878\";\"Wiang Sa\";\"main\"\n\"1149881\";\"Wiang Pa Pao\";\"main\"\n\"1149881\";\"Amphoe Wiang Pa Pao\";\"other\"\n\"1149881\";\"Amphoe Wiengpapao\";\"other\"\n\"1149881\";\"Ban Hua Wiang\";\"other\"\n\"1149881\";\"Ban Nai Wiang\";\"other\"\n\"1149881\";\"Ma\";\"other\"\n\"1149881\";\"Muang Vieng Papao\";\"other\"\n\"1149881\";\"Wiang Pa Rao\";\"other\"\n\"1149881\";\"Wieng Papa\";\"other\"\n\"1149881\";\"Wieng Papao\";\"other\"\n\"1149881\";\"เวียงป่าเป้า\";\"other\"\n\"1149882\";\"Mueang Haeng\";\"main\"\n\"1149882\";\"Ban Muang Haeng\";\"other\"\n\"1149882\";\"Ban Wiang Haeng\";\"other\"\n\"1149882\";\"Heng\";\"other\"\n\"1149882\";\"Hēng\";\"other\"\n\"1149882\";\"King Amphoe Wiang Haeng\";\"other\"\n\"1149882\";\"Maung Haeng\";\"other\"\n\"1149882\";\"Moeang Heng\";\"other\"\n\"1149882\";\"Moēang Hēng\";\"other\"\n\"1149882\";\"Muang Haeng\";\"other\"\n\"1149882\";\"Wiang Haeng\";\"other\"\n\"1149882\";\"กิ่งอำเภอเวียงแหง\";\"other\"\n\"1149882\";\"บ้านเวียงแหง\";\"other\"\n\"1149882\";\"เมืองแหง\";\"other\"\n\"1149883\";\"Wiang Chai\";\"main\"\n\"1149883\";\"เวียงชัย\";\"other\"\n\"1149892\";\"Wat Phleng\";\"main\"\n\"1149892\";\"Ban Rong Wi\";\"other\"\n\"1149892\";\"Rong Wi\";\"other\"\n\"1149915\";\"Wang Nuea\";\"main\"\n\"1149915\";\"Amphoe Wang Nua\";\"other\"\n\"1149915\";\"Wang Nua\";\"other\"\n\"1149915\";\"วังเหนือ\";\"other\"\n\"1149964\";\"U Thong\";\"main\"\n\"1149964\";\"Amphoe U-Thong\";\"other\"\n\"1149964\";\"Ban Tha Phra\";\"other\"\n\"1149964\";\"Ban U-Thong\";\"other\"\n\"1149964\";\"อู่ทอง\";\"other\"\n\"1149975\";\"Umphang\";\"main\"\n\"1149975\";\"Amphoe Mae Klong\";\"other\"\n\"1149975\";\"Amphoe Umphang\";\"other\"\n\"1149975\";\"King Amphoe Umphang\";\"other\"\n\"1149975\";\"King Um Phang\";\"other\"\n\"1149975\";\"อุ้มผาง\";\"other\"\n\"1150007\";\"Trang\";\"main\"\n\"1150007\";\"Amphoe Muang Trang\";\"other\"\n\"1150007\";\"Changwat Trang\";\"other\"\n\"1150007\";\"Транг\";\"other\"\n\"1150076\";\"Thung Yai\";\"main\"\n\"1150076\";\"Amphoe Thung Yai\";\"other\"\n\"1150076\";\"Ban Tha\";\"other\"\n\"1150076\";\"Ban Tha Yang\";\"other\"\n\"1150076\";\"King Amphoe Thung Song\";\"other\"\n\"1150076\";\"King Amphoe Yang Thung Song\";\"other\"\n\"1150076\";\"King Tha Yang\";\"other\"\n\"1150076\";\"Tha Yang\";\"other\"\n\"1150076\";\"Thung Sang\";\"other\"\n\"1150076\";\"Thung Song\";\"other\"\n\"1150076\";\"ทุ่งใหญ่\";\"other\"\n\"1150085\";\"Thung Song\";\"main\"\n\"1150085\";\"Amphoe Dhung Song\";\"other\"\n\"1150085\";\"Amphoe Thung Song\";\"other\"\n\"1150085\";\"Amphoe Tungsong\";\"other\"\n\"1150085\";\"Ban Chamai\";\"other\"\n\"1150085\";\"Chamai\";\"other\"\n\"1150085\";\"Dhung Song\";\"other\"\n\"1150085\";\"Dhūng Song\";\"other\"\n\"1150085\";\"Tungsong\";\"other\"\n\"1150085\";\"ทุ่งสง\";\"other\"\n\"1150089\";\"Thung Saliam\";\"main\"\n\"1150089\";\"Amphoe Thung Saliam\";\"other\"\n\"1150089\";\"Ban Thung Saliam\";\"other\"\n\"1150089\";\"Ban Thung Salian\";\"other\"\n\"1150089\";\"Ban Thung Saliyan\";\"other\"\n\"1150089\";\"Bān Thung Saliyan\";\"other\"\n\"1150089\";\"Dhungsaliem\";\"other\"\n\"1150089\";\"Dhungsaliēm\";\"other\"\n\"1150089\";\"King Amphoe Thung Saliam\";\"other\"\n\"1150089\";\"Thung Salian\";\"other\"\n\"1150089\";\"ทุ่งเสลี่ยม\";\"other\"\n\"1150133\";\"Thong Pha Phum\";\"main\"\n\"1150133\";\"Amphoe Sangkhlaburi\";\"other\"\n\"1150133\";\"Amphoe Sangkla Buri\";\"other\"\n\"1150133\";\"Amphoe Songkla Buri\";\"other\"\n\"1150133\";\"Amphoe Thong Pha Phum\";\"other\"\n\"1150133\";\"Ban Tha Khanun\";\"other\"\n\"1150133\";\"Dha Khanun\";\"other\"\n\"1150133\";\"King Amphoe Sangkhla\";\"other\"\n\"1150133\";\"King Amphoe Sangkhlaburi\";\"other\"\n\"1150133\";\"King Amphoe Thong Pha Phum\";\"other\"\n\"1150133\";\"Sangkhla\";\"other\"\n\"1150133\";\"Sangkhla Buri\";\"other\"\n\"1150133\";\"Ta Kanun\";\"other\"\n\"1150133\";\"Tha Khanun\";\"other\"\n\"1150133\";\"ทองผาภูมิ\";\"other\"\n\"1150154\";\"Thoen\";\"main\"\n\"1150154\";\"Amphoe Moeang Theun\";\"other\"\n\"1150154\";\"Amphoe Moeangthenn\";\"other\"\n\"1150154\";\"Amphoe Muang Thoen\";\"other\"\n\"1150154\";\"Amphoe Thoen\";\"other\"\n\"1150154\";\"Ban Laum Read\";\"other\"\n\"1150154\";\"Ban Lohm Red\";\"other\"\n\"1150154\";\"Ban Lom Raet\";\"other\"\n\"1150154\";\"Lau Raet\";\"other\"\n\"1150154\";\"Lohm Red\";\"other\"\n\"1150154\";\"Muang Tern\";\"other\"\n\"1150154\";\"Muang Teun\";\"other\"\n\"1150154\";\"Muang Tharn\";\"other\"\n\"1150154\";\"Muang Thoen\";\"other\"\n\"1150154\";\"เถิน\";\"other\"\n\"1150196\";\"Tha Song Yang\";\"main\"\n\"1150196\";\"Amphoe Tha Song Yang\";\"other\"\n\"1150196\";\"Ban Mae Tan\";\"other\"\n\"1150196\";\"King Amphoe Tha Song Yang\";\"other\"\n\"1150196\";\"Mae Tan\";\"other\"\n\"1150196\";\"Metan\";\"other\"\n\"1150196\";\"Pa-ba-le\";\"other\"\n\"1150196\";\"ท่าสองยาง\";\"other\"\n\"1150210\";\"Thap Than\";\"main\"\n\"1150210\";\"Amphoe Thap Than\";\"other\"\n\"1150210\";\"Amphu Tap Tan\";\"other\"\n\"1150210\";\"Ban Thap Than\";\"other\"\n\"1150210\";\"Dhapdhan\";\"other\"\n\"1150210\";\"Nong Kradi\";\"other\"\n\"1150210\";\"ทัพทัน\";\"other\"\n\"1150227\";\"Tha Phae\";\"main\"\n\"1150246\";\"Tha Muang\";\"main\"\n\"1150246\";\"Amphoe Tha Muang\";\"other\"\n\"1150246\";\"Amphoe Wang Khanai\";\"other\"\n\"1150246\";\"Ban Tha Muang\";\"other\"\n\"1150246\";\"Wang Kanai\";\"other\"\n\"1150246\";\"Wang Khanai\";\"other\"\n\"1150275\";\"Tha Maka\";\"main\"\n\"1150275\";\"Amphoe Tha Maka\";\"other\"\n\"1150296\";\"Thalang\";\"main\"\n\"1150296\";\"Amphoe Moeang Thalang\";\"other\"\n\"1150296\";\"Amphoe Muang Thalang\";\"other\"\n\"1150296\";\"Amphoe Thalang\";\"other\"\n\"1150296\";\"Ban Khian\";\"other\"\n\"1150296\";\"Ban Takhian\";\"other\"\n\"1150296\";\"Muang Thalang\";\"other\"\n\"1150296\";\"Ta Khian\";\"other\"\n\"1150296\";\"Ujong Salang\";\"other\"\n\"1150296\";\"thlang\";\"other\"\n\"1150296\";\"ถลาง\";\"other\"\n\"1150317\";\"Thai Mueang\";\"main\"\n\"1150317\";\"Amphoe Dhaihmoeang\";\"other\"\n\"1150317\";\"Amphoe Thai Muang\";\"other\"\n\"1150317\";\"Ban Dhai Hmoeang\";\"other\"\n\"1150317\";\"Ban Thai Muang\";\"other\"\n\"1150317\";\"Dhai Hmoeang\";\"other\"\n\"1150317\";\"Tai Muang\";\"other\"\n\"1150317\";\"Thai Muang\";\"other\"\n\"1150317\";\"thayhemuxng\";\"other\"\n\"1150317\";\"ท้ายเหมือง\";\"other\"\n\"1150447\";\"Takua Thung\";\"main\"\n\"1150447\";\"Amphoe Takua Thung\";\"other\"\n\"1150447\";\"Amphoe Takuadhung\";\"other\"\n\"1150447\";\"Amphoe Takuatung\";\"other\"\n\"1150447\";\"Ban Krasom\";\"other\"\n\"1150447\";\"Kasom\";\"other\"\n\"1150447\";\"Krasome\";\"other\"\n\"1150447\";\"Ta-Kua Dhung\";\"other\"\n\"1150447\";\"Takua Tung\";\"other\"\n\"1150490\";\"Tak\";\"main\"\n\"1150490\";\"Amphoe Mueang Tak\";\"other\"\n\"1150490\";\"Baheng\";\"other\"\n\"1150490\";\"Ban Rahaeng\";\"other\"\n\"1150490\";\"Ban Raheang\";\"other\"\n\"1150490\";\"Changwat Tak\";\"other\"\n\"1150490\";\"Muang Raheng\";\"other\"\n\"1150490\";\"Muang Tak\";\"other\"\n\"1150490\";\"Rahaeng\";\"other\"\n\"1150490\";\"Rahaong\";\"other\"\n\"1150490\";\"Raheng\";\"other\"\n\"1150490\";\"Tark\";\"other\"\n\"1150490\";\"Так\";\"other\"\n\"1150490\";\"ตาก\";\"other\"\n\"1150515\";\"Surat Thani\";\"main\"\n\"1150515\";\"Amphoe Ban Don\";\"other\"\n\"1150515\";\"Amphoe Muang Surat Thani\";\"other\"\n\"1150515\";\"Ban Dohn\";\"other\"\n\"1150515\";\"Ban Don\";\"other\"\n\"1150515\";\"Ban Makham Tia\";\"other\"\n\"1150515\";\"Ban Makham Tir\";\"other\"\n\"1150515\";\"Bandaun\";\"other\"\n\"1150515\";\"Changwat Surat\";\"other\"\n\"1150515\";\"Changwat Surat Thani\";\"other\"\n\"1150515\";\"Makham Tia\";\"other\"\n\"1150515\";\"Suras\";\"other\"\n\"1150515\";\"Surashtradhani\";\"other\"\n\"1150515\";\"Surattkhani\";\"other\"\n\"1150515\";\"suratotani\";\"other\"\n\"1150515\";\"Сураттхани\";\"other\"\n\"1150515\";\"สุราษฎร์ธานี\";\"other\"\n\"1150515\";\"เทศบาลเมืองสุราษฎร์ธานี\";\"other\"\n\"1150515\";\"スラートターニー\";\"other\"\n\"1150533\";\"Sukhothai\";\"main\"\n\"1150533\";\"Amphoe Muang Sukhothai\";\"other\"\n\"1150533\";\"Amphoe Mueang Sukhothai\";\"other\"\n\"1150533\";\"Amphoe Sukhodhai\";\"other\"\n\"1150533\";\"Amphoe Sukhothai\";\"other\"\n\"1150533\";\"Ban Thani\";\"other\"\n\"1150533\";\"Changwat Sukhobhai\";\"other\"\n\"1150533\";\"Changwat Sukhodhai\";\"other\"\n\"1150533\";\"Changwat Sukhothai\";\"other\"\n\"1150533\";\"Muang Soukotai\";\"other\"\n\"1150533\";\"Muang Sukotai\";\"other\"\n\"1150533\";\"New Sukhothai\";\"other\"\n\"1150533\";\"Sukanthai\";\"other\"\n\"1150533\";\"Sukauthai\";\"other\"\n\"1150533\";\"Sukhobhai\";\"other\"\n\"1150533\";\"Sukhodhai\";\"other\"\n\"1150533\";\"Sukhothat\";\"other\"\n\"1150533\";\"Sukkhotaj\";\"other\"\n\"1150533\";\"Sukodhai\";\"other\"\n\"1150533\";\"sukotai\";\"other\"\n\"1150533\";\"Сукхотай\";\"other\"\n\"1150533\";\"สุโขทัย\";\"other\"\n\"1150533\";\"スコータイ\";\"other\"\n\"1150544\";\"Suan Phung\";\"main\"\n\"1150544\";\"Ban Suan Phung\";\"other\"\n\"1150544\";\"Suan Phoeng\";\"other\"\n\"1150544\";\"Suan Pung\";\"other\"\n\"1150562\";\"Sop Prap\";\"main\"\n\"1150562\";\"Amphoe Sop Prap\";\"other\"\n\"1150562\";\"Amphu Sopwa\";\"other\"\n\"1150562\";\"Ban Sob Prap\";\"other\"\n\"1150562\";\"Ban Sop Prap\";\"other\"\n\"1150562\";\"Bān Sob Prāp\";\"other\"\n\"1150562\";\"King Amphoe Sop Prap\";\"other\"\n\"1150562\";\"Sob Prap\";\"other\"\n\"1150562\";\"Sobprab\";\"other\"\n\"1150562\";\"Sobprah\";\"other\"\n\"1150562\";\"สบปราบ\";\"other\"\n\"1150607\";\"Soem Ngam\";\"main\"\n\"1150607\";\"Amphoe Soem Ngam\";\"other\"\n\"1150607\";\"King Amphoe Soem Ngam\";\"other\"\n\"1150607\";\"เสริมงาม\";\"other\"\n\"1150624\";\"Si Satchanalai\";\"main\"\n\"1150624\";\"Amphoe Si Satchanalai\";\"other\"\n\"1150624\";\"Hat Siao\";\"other\"\n\"1150624\";\"ศรีสัชนาลัย\";\"other\"\n\"1150626\";\"Si Samrong\";\"main\"\n\"1150626\";\"Amphoe Khlong Tan\";\"other\"\n\"1150626\";\"Amphoe Si Samrong\";\"other\"\n\"1150626\";\"Ban Khlong Tan\";\"other\"\n\"1150626\";\"Ban Khlong Trang\";\"other\"\n\"1150626\";\"Ban Klaung Tan\";\"other\"\n\"1150626\";\"Bān Klaung Tān\";\"other\"\n\"1150626\";\"Glohngtan\";\"other\"\n\"1150626\";\"Glōhngtān\";\"other\"\n\"1150626\";\"Khlaung Tan\";\"other\"\n\"1150626\";\"Khlong Tan\";\"other\"\n\"1150626\";\"ศรีสำโรง\";\"other\"\n\"1150643\";\"Si Nakhon\";\"main\"\n\"1150643\";\"Amphoe Si Nakhon\";\"other\"\n\"1150643\";\"King Amphoe Si Nakhon\";\"other\"\n\"1150643\";\"ศรีนคร\";\"other\"\n\"1150681\";\"Sawankhalok\";\"main\"\n\"1150681\";\"Amphoe Sawankhalok\";\"other\"\n\"1150681\";\"Ban Wang Mai Kaun\";\"other\"\n\"1150681\";\"Ban Wang Mai Khon\";\"other\"\n\"1150681\";\"Changwat Muang Sawarngalok\";\"other\"\n\"1150681\";\"Changwat Sawankhalok\";\"other\"\n\"1150681\";\"Muang Savankulok\";\"other\"\n\"1150681\";\"Muang Sawan Kalok\";\"other\"\n\"1150681\";\"Muang Sawankalauk\";\"other\"\n\"1150681\";\"Muang Sawarngalok\";\"other\"\n\"1150681\";\"Mueang Sawankhalok\";\"other\"\n\"1150681\";\"Mueang Wang Mai Khon\";\"other\"\n\"1150681\";\"Sawankalauk\";\"other\"\n\"1150681\";\"Sawankaloke\";\"other\"\n\"1150681\";\"Sawankhalor\";\"other\"\n\"1150681\";\"Sawarngalok\";\"other\"\n\"1150681\";\"Swankalauk\";\"other\"\n\"1150681\";\"Swankhalok\";\"other\"\n\"1150681\";\"Wang Mai Kuan\";\"other\"\n\"1150681\";\"สวรรคโลก\";\"other\"\n\"1150683\";\"Sawang Arom\";\"main\"\n\"1150683\";\"Amphoe Sawang Arom\";\"other\"\n\"1150683\";\"Ban Noen Kao\";\"other\"\n\"1150683\";\"King Amphoe Sawang Arom\";\"other\"\n\"1150683\";\"Sawang Aram\";\"other\"\n\"1150683\";\"สว่างอารมณ์\";\"other\"\n\"1150700\";\"Saraphi\";\"main\"\n\"1150700\";\"Amphoe Saraphi\";\"other\"\n\"1150700\";\"Amphoe Yang Noeng\";\"other\"\n\"1150700\";\"Ban Sarape\";\"other\"\n\"1150700\";\"Ban Saraphi\";\"other\"\n\"1150700\";\"Sarabhi\";\"other\"\n\"1150700\";\"Sārabhi\";\"other\"\n\"1150700\";\"สารภี\";\"other\"\n\"1150700\";\"อำเภอยางเนิ้ง\";\"other\"\n\"1150726\";\"San Sai\";\"main\"\n\"1150726\";\"Amphoe San Sai\";\"other\"\n\"1150726\";\"Amphoe Sanzai\";\"other\"\n\"1150726\";\"Ban San Sai Hluang\";\"other\"\n\"1150726\";\"Ban San Sai Luang\";\"other\"\n\"1150726\";\"Ban Sun Tri Luang\";\"other\"\n\"1150726\";\"San Sai Hluang\";\"other\"\n\"1150726\";\"San Sai Luang\";\"other\"\n\"1150726\";\"Sanzaihluang\";\"other\"\n\"1150726\";\"Sanzāihlūang\";\"other\"\n\"1150726\";\"สันทราย\";\"other\"\n\"1150728\";\"San Pa Tong\";\"main\"\n\"1150728\";\"Amphoe San Pa Tong\";\"other\"\n\"1150728\";\"สันป่าตอง\";\"other\"\n\"1150732\";\"San Kamphaeng\";\"main\"\n\"1150732\";\"Amphoe San Kamphaeng\";\"other\"\n\"1150732\";\"Ban San Gampheang\";\"other\"\n\"1150732\";\"Ban San Kamphaeng\";\"other\"\n\"1150732\";\"Ban San Kamphaeng Luang\";\"other\"\n\"1150732\";\"Bān San Gampheang\";\"other\"\n\"1150732\";\"Kwaeng Mae Om\";\"other\"\n\"1150732\";\"Sankambheng\";\"other\"\n\"1150732\";\"Sankambhēng\";\"other\"\n\"1150732\";\"สันกำแพง\";\"other\"\n\"1150735\";\"Sangkhla Buri\";\"main\"\n\"1150735\";\"Ban Wang Ga\";\"other\"\n\"1150735\";\"Ban Wang Kabon\";\"other\"\n\"1150735\";\"Ban Wangka\";\"other\"\n\"1150735\";\"Bān Wang Ga\";\"other\"\n\"1150735\";\"King Amphoe Sangkhla\";\"other\"\n\"1150735\";\"King Amphoe Sangkhla Buri\";\"other\"\n\"1150735\";\"Sang Kla Buri\";\"other\"\n\"1150735\";\"Sangkhla\";\"other\"\n\"1150783\";\"Samoeng\";\"main\"\n\"1150783\";\"Amphoe Samoeng\";\"other\"\n\"1150783\";\"Ban Samarng Dai\";\"other\"\n\"1150783\";\"Ban Samoeng Tai\";\"other\"\n\"1150783\";\"Bān Samarng Dāi\";\"other\"\n\"1150783\";\"King Amphoe Samoeng\";\"other\"\n\"1150783\";\"Sameungtai\";\"other\"\n\"1150783\";\"Sameūngtai\";\"other\"\n\"1150783\";\"Samoeng Tai\";\"other\"\n\"1150783\";\"sameing\";\"other\"\n\"1150783\";\"สะเมิง\";\"other\"\n\"1150786\";\"Sam Ngao\";\"main\"\n\"1150786\";\"Amphoe Sam Ngao\";\"other\"\n\"1150786\";\"สามเงา\";\"other\"\n\"1150854\";\"Sai Ngam\";\"main\"\n\"1150854\";\"Amphoe Sai Ngam\";\"other\"\n\"1150854\";\"King Amphoe Sai Ngam\";\"other\"\n\"1150854\";\"ไทรงาม\";\"other\"\n\"1150921\";\"Ron Phibun\";\"main\"\n\"1150921\";\"Ban Romphi Bull\";\"other\"\n\"1150921\";\"Ban Ron Phibun\";\"other\"\n\"1150921\";\"Raun Phibun\";\"other\"\n\"1150921\";\"Ronipibon\";\"other\"\n\"1150954\";\"Ratchaburi\";\"main\"\n\"1150954\";\"Amphoe Muang Rat Buri\";\"other\"\n\"1150954\";\"Changwat Rat Buri\";\"other\"\n\"1150954\";\"Mondhol Rajburi\";\"other\"\n\"1150954\";\"Muang Rajburi\";\"other\"\n\"1150954\";\"Muang Ratburi\";\"other\"\n\"1150954\";\"Mueang Ratchaburi\";\"other\"\n\"1150954\";\"Rajburi\";\"other\"\n\"1150954\";\"Rat Buri\";\"other\"\n\"1150954\";\"Ратчабури\";\"other\"\n\"1150954\";\"ราชบุรี\";\"other\"\n\"1150965\";\"Ranong\";\"main\"\n\"1150965\";\"Amphoe Muang Ranong\";\"other\"\n\"1150965\";\"Changwat Ranong\";\"other\"\n\"1150965\";\"Muang Ra Nohng\";\"other\"\n\"1150965\";\"Muang Ranawng\";\"other\"\n\"1150965\";\"Muang Ranong\";\"other\"\n\"1150965\";\"Ranaong\";\"other\"\n\"1150965\";\"Ranaung\";\"other\"\n\"1150965\";\"Ranawng\";\"other\"\n\"1150965\";\"Ranohng\";\"other\"\n\"1150965\";\"Renawng\";\"other\"\n\"1150965\";\"Renong\";\"other\"\n\"1150965\";\"Ранонг\";\"other\"\n\"1150965\";\"ระนอง\";\"other\"\n\"1151063\";\"Pran Buri\";\"main\"\n\"1151063\";\"Amphoe Pranburi\";\"other\"\n\"1151063\";\"Ban Pak O Pran\";\"other\"\n\"1151063\";\"Meuangpran\";\"other\"\n\"1151063\";\"Muang Pran\";\"other\"\n\"1151063\";\"Muang Pran Kao\";\"other\"\n\"1151063\";\"Pran\";\"other\"\n\"1151074\";\"Prachuap Khiri Khan\";\"main\"\n\"1151074\";\"Amphoe Muang Prachuap Khim Khan\";\"other\"\n\"1151074\";\"Changwat Prachuap Khiri Khan\";\"other\"\n\"1151074\";\"Muang Prachuab Giri Khan\";\"other\"\n\"1151074\";\"Muang Prachuabkhirikun\";\"other\"\n\"1151074\";\"PRACHUAB KHIRI KHAN\";\"other\"\n\"1151074\";\"Prachuab\";\"other\"\n\"1151074\";\"Prachuab Girikhan\";\"other\"\n\"1151074\";\"Prachuab Khirakhanda\";\"other\"\n\"1151074\";\"Prachuab Kirikan\";\"other\"\n\"1151074\";\"Prachuap\";\"other\"\n\"1151074\";\"Prachuap Giri Khan\";\"other\"\n\"1151074\";\"Prachuap Kirikan\";\"other\"\n\"1151074\";\"Prachuapgirikhand\";\"other\"\n\"1151074\";\"Prachūab Gīrīkhan\";\"other\"\n\"1151211\";\"Phun Phin\";\"main\"\n\"1151211\";\"Amphoe Phunphin\";\"other\"\n\"1151211\";\"Ban Phumphin\";\"other\"\n\"1151211\";\"Ban Phun Phin\";\"other\"\n\"1151211\";\"Punpin\";\"other\"\n\"1151254\";\"Phuket\";\"main\"\n\"1151254\";\"Amphoe Muang Phuket\";\"other\"\n\"1151254\";\"Bhuket\";\"other\"\n\"1151254\";\"Changwat Phuket\";\"other\"\n\"1151254\";\"Pkhuket\";\"other\"\n\"1151254\";\"Puket\";\"other\"\n\"1151254\";\"Tongka\";\"other\"\n\"1151254\";\"Tongkah\";\"other\"\n\"1151254\";\"phuket\";\"other\"\n\"1151254\";\"Пхукет\";\"other\"\n\"1151254\";\"ภูเก็ต\";\"other\"\n\"1151340\";\"Photharam\";\"main\"\n\"1151340\";\"Amphoe Photharam\";\"other\"\n\"1151340\";\"Amphu Po Ta-ram\";\"other\"\n\"1151340\";\"Ban Photharam\";\"other\"\n\"1151340\";\"Bhodharam\";\"other\"\n\"1151340\";\"Bhōdhārām\";\"other\"\n\"1151340\";\"Pkhotkharam\";\"other\"\n\"1151340\";\"Пхотхарам\";\"other\"\n\"1151426\";\"Phayao\";\"main\"\n\"1151426\";\"Amphoe Moeang Bha Yao\";\"other\"\n\"1151426\";\"Amphoe Muang Phayao\";\"other\"\n\"1151426\";\"Amphoe Muang Pra Yao\";\"other\"\n\"1151426\";\"Amphoe Phayao\";\"other\"\n\"1151426\";\"Ban Nai Wiang\";\"other\"\n\"1151426\";\"Bhayao\";\"other\"\n\"1151426\";\"Moeangbhayao\";\"other\"\n\"1151426\";\"Muang Phayao\";\"other\"\n\"1151426\";\"Muang Prao\";\"other\"\n\"1151426\";\"Muang Prayao\";\"other\"\n\"1151426\";\"Mueang Chang Wat Pha Yao\";\"other\"\n\"1151426\";\"Pkhajao\";\"other\"\n\"1151426\";\"Prayao\";\"other\"\n\"1151426\";\"Пхаяо\";\"other\"\n\"1151426\";\"จังหวัดพะเยา\";\"other\"\n\"1151446\";\"Phanom Thuan\";\"main\"\n\"1151446\";\"Amphoe Phanom Thuan\";\"other\"\n\"1151446\";\"Ban Thuan\";\"other\"\n\"1151446\";\"Ban Tuan\";\"other\"\n\"1151446\";\"Bandhuan\";\"other\"\n\"1151446\";\"Bāndhūan\";\"other\"\n\"1151464\";\"Phangnga\";\"main\"\n\"1151464\";\"Amphoe Mueang Phangnga\";\"other\"\n\"1151464\";\"Bhangnga\";\"other\"\n\"1151464\";\"Changwat Phangnga\";\"other\"\n\"1151464\";\"Muang Bhang-nga\";\"other\"\n\"1151464\";\"Muang Pha Nga\";\"other\"\n\"1151464\";\"Pan Nga\";\"other\"\n\"1151464\";\"Panga\";\"other\"\n\"1151464\";\"Phung Nga\";\"other\"\n\"1151464\";\"Pkhangnga\";\"other\"\n\"1151464\";\"Pungah\";\"other\"\n\"1151464\";\"Пхангнга\";\"other\"\n\"1151464\";\"พังงา\";\"other\"\n\"1151477\";\"Phan\";\"main\"\n\"1151477\";\"พาน\";\"other\"\n\"1151528\";\"Pa Sang\";\"main\"\n\"1151528\";\"Amphoe Pa Sang\";\"other\"\n\"1151528\";\"Ban Pa Sang\";\"other\"\n\"1151528\";\"ป่าซาง\";\"other\"\n\"1151567\";\"Pak Tho\";\"main\"\n\"1151567\";\"Amphoe Pak Tho\";\"other\"\n\"1151567\";\"Ban Pak Tho\";\"other\"\n\"1151567\";\"Pak Thau\";\"other\"\n\"1151601\";\"Pai\";\"main\"\n\"1151601\";\"Amphoe Pai\";\"other\"\n\"1151601\";\"Ban Wiang Tai\";\"other\"\n\"1151601\";\"Ban Wieng Tai\";\"other\"\n\"1151601\";\"Muang Pai\";\"other\"\n\"1151601\";\"Wiang Tai\";\"other\"\n\"1151601\";\"Wieng Tai\";\"other\"\n\"1151601\";\"Паи\";\"other\"\n\"1151664\";\"Nong Ya Plong\";\"main\"\n\"1151664\";\"Amphoe Nong Ya Plong\";\"other\"\n\"1151664\";\"Ban Naung Ya Plaung\";\"other\"\n\"1151710\";\"Nong Khayang\";\"main\"\n\"1151710\";\"Amphoe Nong Kha Yang\";\"other\"\n\"1151710\";\"Ban Naung Ka Yang\";\"other\"\n\"1151710\";\"Ban Nong Kha Yang\";\"other\"\n\"1151710\";\"Bān Naung Ka Yāng\";\"other\"\n\"1151710\";\"Hnohngkhayang\";\"other\"\n\"1151710\";\"Hnōhngkhāyāng\";\"other\"\n\"1151710\";\"Naung Kha Yang\";\"other\"\n\"1151710\";\"Nong Luang\";\"other\"\n\"1151710\";\"หนองขาหย่าง\";\"other\"\n\"1151730\";\"Nong Chang\";\"main\"\n\"1151730\";\"Amphoe Nong Chang\";\"other\"\n\"1151730\";\"Ban Naung Chang\";\"other\"\n\"1151730\";\"Ban Nong Chang\";\"other\"\n\"1151730\";\"Ban Uthai Kao\";\"other\"\n\"1151730\";\"Bān Naung Chāng\";\"other\"\n\"1151730\";\"Hnohngshang\";\"other\"\n\"1151730\";\"Hnōhngshāng\";\"other\"\n\"1151730\";\"Naung Chang\";\"other\"\n\"1151730\";\"Uthai Kao\";\"other\"\n\"1151730\";\"หนองฉาง\";\"other\"\n\"1151848\";\"Ngao\";\"main\"\n\"1151848\";\"Amphoe Moeang Ngao\";\"other\"\n\"1151848\";\"Amphoe Muang Gao\";\"other\"\n\"1151848\";\"Amphoe Muang Ngao\";\"other\"\n\"1151848\";\"Amphoe Ngao\";\"other\"\n\"1151848\";\"Ban Amphoe Ngao\";\"other\"\n\"1151848\";\"Ban Hluang Hnoea\";\"other\"\n\"1151848\";\"Ban Luang Nua\";\"other\"\n\"1151848\";\"Ban Luang Nuah\";\"other\"\n\"1151848\";\"Luang Nua\";\"other\"\n\"1151848\";\"Muang Ngad\";\"other\"\n\"1151848\";\"Muang Ngao\";\"other\"\n\"1151848\";\"Muang Ngau\";\"other\"\n\"1151848\";\"งาว\";\"other\"\n\"1151933\";\"Nakhon Si Thammarat\";\"main\"\n\"1151933\";\"Amphoe Muang Nakhon Si Thammarat\";\"other\"\n\"1151933\";\"Changwat Nakhon Si Thammarat\";\"other\"\n\"1151933\";\"Lakawn\";\"other\"\n\"1151933\";\"Lakon\";\"other\"\n\"1151933\";\"Ligor\";\"other\"\n\"1151933\";\"Muang Nagorn Sridharmaraj\";\"other\"\n\"1151933\";\"Muang Nakawn Sri Tamarat\";\"other\"\n\"1151933\";\"Mueang Nakhon Si Thammarat\";\"other\"\n\"1151933\";\"Nagara Sridharmaraj\";\"other\"\n\"1151933\";\"Nagor Sridhamaraj\";\"other\"\n\"1151933\";\"Nagorn Sridharmrat\";\"other\"\n\"1151933\";\"Nagorri Sridharmrat\";\"other\"\n\"1151933\";\"Nakawn Sitamarat\";\"other\"\n\"1151933\";\"Nakawn Sritamarat\";\"other\"\n\"1151933\";\"Nakhaun Si Thammarat\";\"other\"\n\"1151933\";\"Nakhon Si Tammarat\";\"other\"\n\"1151933\";\"Nakhon Si Thammarht\";\"other\"\n\"1151933\";\"Nakhon Sritamarai\";\"other\"\n\"1151933\";\"Nakhon Srithamarat\";\"other\"\n\"1151933\";\"Nakhon Srithamrat\";\"other\"\n\"1151933\";\"Nakhonsithamrat\";\"other\"\n\"1151933\";\"Nakkhonsitkhammarat\";\"other\"\n\"1151933\";\"Nakon\";\"other\"\n\"1151933\";\"Nakon Si Tham Rat\";\"other\"\n\"1151933\";\"Nakon Sitamarat\";\"other\"\n\"1151933\";\"Nakon Sri Tammarat\";\"other\"\n\"1151933\";\"Nakon Sritamaraj\";\"other\"\n\"1151933\";\"Nakon Sritamarat\";\"other\"\n\"1151933\";\"Nakorn Si Thamarat\";\"other\"\n\"1151933\";\"Nakorn Sridamaraja\";\"other\"\n\"1151933\";\"nakonshitanmarato\";\"other\"\n\"1151933\";\"Накхонситхаммарат\";\"other\"\n\"1151933\";\"นครศรีธรรมราช\";\"other\"\n\"1151933\";\"ナコーンシータンマラート\";\"other\"\n\"1151987\";\"Mueang Pan\";\"main\"\n\"1151987\";\"Muang Pan\";\"other\"\n\"1151987\";\"เมืองปาน\";\"other\"\n\"1152180\";\"Mae Tha\";\"main\"\n\"1152180\";\"Amphoe Mae Tha\";\"other\"\n\"1152180\";\"Amphu Metar\";\"other\"\n\"1152180\";\"Ban Mae Tha\";\"other\"\n\"1152180\";\"Ban Mea Tha\";\"other\"\n\"1152180\";\"Ban Sala Mae Tha\";\"other\"\n\"1152180\";\"Bān Mea Tha\";\"other\"\n\"1152180\";\"King Amphoe Mae Tha\";\"other\"\n\"1152180\";\"King Mae Tha\";\"other\"\n\"1152180\";\"Medha\";\"other\"\n\"1152180\";\"Mēdha\";\"other\"\n\"1152180\";\"Sala Mae Tha\";\"other\"\n\"1152180\";\"Sala Meh Tha\";\"other\"\n\"1152180\";\"แม่ทา\";\"other\"\n\"1152181\";\"Mae Tha\";\"main\"\n\"1152181\";\"Amphoe Mae Tha\";\"other\"\n\"1152181\";\"Ban Mae Tha\";\"other\"\n\"1152181\";\"Ban Mea Tha\";\"other\"\n\"1152181\";\"Ban Meta\";\"other\"\n\"1152181\";\"Bān Mea Tha\";\"other\"\n\"1152181\";\"Medha\";\"other\"\n\"1152181\";\"Mēdha\";\"other\"\n\"1152181\";\"แม่ทะ\";\"other\"\n\"1152186\";\"Mae Suai\";\"main\"\n\"1152186\";\"Amphoe Mae Suai\";\"other\"\n\"1152186\";\"Ban Mae Suai\";\"other\"\n\"1152186\";\"Ban Mea Suai\";\"other\"\n\"1152186\";\"Ban Mesrewy\";\"other\"\n\"1152186\";\"Bān Mea Suai\";\"other\"\n\"1152186\";\"Mae Suai Muang Pok\";\"other\"\n\"1152186\";\"Mesuai\";\"other\"\n\"1152186\";\"Mēsūai\";\"other\"\n\"1152186\";\"แม่สรวย\";\"other\"\n\"1152188\";\"Mae Sot\";\"main\"\n\"1152188\";\"Amphoe Ban Mae Sot\";\"other\"\n\"1152188\";\"Amphoe Mae Saut\";\"other\"\n\"1152188\";\"Amphoe Mae Sot\";\"other\"\n\"1152188\";\"Amphoe Mesoht\";\"other\"\n\"1152188\";\"Ban Mae Sot\";\"other\"\n\"1152188\";\"Ban Me Ramat\";\"other\"\n\"1152188\";\"Ban Me Sohd\";\"other\"\n\"1152188\";\"Ban Mesod\";\"other\"\n\"1152188\";\"Branch Amphoe Me Sohd\";\"other\"\n\"1152188\";\"Branch Amphoe Mē Sōhd\";\"other\"\n\"1152188\";\"Mae Saut\";\"other\"\n\"1152188\";\"Mae Sord\";\"other\"\n\"1152188\";\"Mehsord\";\"other\"\n\"1152188\";\"Mesod\";\"other\"\n\"1152188\";\"Mesoht\";\"other\"\n\"1152188\";\"Mesort\";\"other\"\n\"1152188\";\"Mēsoht\";\"other\"\n\"1152188\";\"แม่สอด\";\"other\"\n\"1152194\";\"Mae Sai\";\"main\"\n\"1152194\";\"Amphoe Mae Sai\";\"other\"\n\"1152194\";\"King Amphoe Mae Sai\";\"other\"\n\"1152194\";\"แม่สาย\";\"other\"\n\"1152202\";\"Mae Ramat\";\"main\"\n\"1152202\";\"Amphoe Mae Ramat\";\"other\"\n\"1152202\";\"Ban Mae Ramat\";\"other\"\n\"1152202\";\"Meramas\";\"other\"\n\"1152202\";\"Meramat\";\"other\"\n\"1152202\";\"Mēramat\";\"other\"\n\"1152202\";\"Mēramās\";\"other\"\n\"1152202\";\"แม่ระมาด\";\"other\"\n\"1152204\";\"Mae Phrik\";\"main\"\n\"1152204\";\"Amphoe Mae Phrik\";\"other\"\n\"1152204\";\"Amphu Me Plick\";\"other\"\n\"1152204\";\"Ban Mae Phlik\";\"other\"\n\"1152204\";\"Ban Mae Phrik\";\"other\"\n\"1152204\";\"Ban Mea Phlik\";\"other\"\n\"1152204\";\"Bān Mea Phlik\";\"other\"\n\"1152204\";\"Mae Phlik\";\"other\"\n\"1152204\";\"Mebhlik\";\"other\"\n\"1152204\";\"Mēbhlik\";\"other\"\n\"1152204\";\"แม่พริก\";\"other\"\n\"1152216\";\"Mae Mo\";\"main\"\n\"1152216\";\"Ban Mae Mo\";\"other\"\n\"1152216\";\"Ban Mea Mo\";\"other\"\n\"1152216\";\"Bān Mea Mo\";\"other\"\n\"1152216\";\"Mae Moh\";\"other\"\n\"1152216\";\"แม่เมาะ\";\"other\"\n\"1152222\";\"Mae Hong Son\";\"main\"\n\"1152222\";\"Amphoe Muang Mae Hong Son\";\"other\"\n\"1152222\";\"Ban Me Tau\";\"other\"\n\"1152222\";\"Ban Muai Tau\";\"other\"\n\"1152222\";\"Ban Muai To\";\"other\"\n\"1152222\";\"Ban Muai Toh\";\"other\"\n\"1152222\";\"Changwat Mae Hong Son\";\"other\"\n\"1152222\";\"Changwat Me Hohng Sohn\";\"other\"\n\"1152222\";\"Haung Saun\";\"other\"\n\"1152222\";\"Mae Hingsorn\";\"other\"\n\"1152222\";\"Mae Hung Son\";\"other\"\n\"1152222\";\"Mae Khong Son\";\"other\"\n\"1152222\";\"Me Hawng Sawn\";\"other\"\n\"1152222\";\"Me Hong Sawn\";\"other\"\n\"1152222\";\"Mea Haung Saun\";\"other\"\n\"1152222\";\"Mehawnghsawn\";\"other\"\n\"1152222\";\"Mehohngsohn\";\"other\"\n\"1152222\";\"Mehungsong\";\"other\"\n\"1152222\";\"Muai Tau\";\"other\"\n\"1152222\";\"Мае Хонг Сон\";\"other\"\n\"1152227\";\"Mae Chan\";\"main\"\n\"1152227\";\"Amphoe Chiang Saen\";\"other\"\n\"1152227\";\"Amphoe Mae Chan\";\"other\"\n\"1152227\";\"Ban Gasa\";\"other\"\n\"1152227\";\"Ban Kasa\";\"other\"\n\"1152227\";\"Ban Mae Chan\";\"other\"\n\"1152227\";\"Ban Mea Jan\";\"other\"\n\"1152227\";\"Bān Gāsa\";\"other\"\n\"1152227\";\"Bān Mea Jan\";\"other\"\n\"1152227\";\"Chiang Saen\";\"other\"\n\"1152227\";\"Chieng Sean\";\"other\"\n\"1152227\";\"Chiengsen\";\"other\"\n\"1152227\";\"Pong Hong\";\"other\"\n\"1152227\";\"แม่จัน\";\"other\"\n\"1152322\";\"Long\";\"main\"\n\"1152322\";\"Amphoe Laung\";\"other\"\n\"1152322\";\"Amphoe Long\";\"other\"\n\"1152322\";\"Amphoe Moeang Lohng\";\"other\"\n\"1152322\";\"Amphoe Muang Long\";\"other\"\n\"1152322\";\"Ban Huai Au\";\"other\"\n\"1152322\";\"Ban Huai O\";\"other\"\n\"1152322\";\"Ban Huai Oh\";\"other\"\n\"1152322\";\"Huai Au\";\"other\"\n\"1152322\";\"Huaioh\";\"other\"\n\"1152322\";\"Hui Oh\";\"other\"\n\"1152322\";\"Hūaioh\";\"other\"\n\"1152322\";\"Muang Laung\";\"other\"\n\"1152322\";\"Muang Long\";\"other\"\n\"1152322\";\"ลอง\";\"other\"\n\"1152357\";\"Li\";\"main\"\n\"1152357\";\"Amphoe Li\";\"other\"\n\"1152357\";\"Ban Li Nua\";\"other\"\n\"1152357\";\"Li Hnoea\";\"other\"\n\"1152357\";\"Linua\";\"other\"\n\"1152357\";\"Lī Hnoēa\";\"other\"\n\"1152357\";\"ลี้\";\"other\"\n\"1152377\";\"Lat Yao\";\"main\"\n\"1152377\";\"Amphoe Lat Yao\";\"other\"\n\"1152377\";\"Ban Lad Yao\";\"other\"\n\"1152377\";\"Ban Lat Yao\";\"other\"\n\"1152377\";\"Ban Lat Yau\";\"other\"\n\"1152377\";\"Bān Lād Yao\";\"other\"\n\"1152377\";\"Bān Lāt Yāu\";\"other\"\n\"1152377\";\"ลาดยาว\";\"other\"\n\"1152421\";\"Lan Sak\";\"main\"\n\"1152421\";\"ลานสัก\";\"other\"\n\"1152423\";\"Lan Krabue\";\"main\"\n\"1152423\";\"Amphoe Lan Krabue\";\"other\"\n\"1152423\";\"King Amphoe Lan Krabue\";\"other\"\n\"1152423\";\"Lan Krabu\";\"other\"\n\"1152423\";\"ลานกระบือ\";\"other\"\n\"1152426\";\"La-ngu\";\"main\"\n\"1152426\";\"Amphoe Sangu\";\"other\"\n\"1152426\";\"Ban Pak Langu\";\"other\"\n\"1152426\";\"Ban Pāk Langu\";\"other\"\n\"1152426\";\"King Amphoe Langu\";\"other\"\n\"1152426\";\"Langu\";\"other\"\n\"1152426\";\"Pak Langu\";\"other\"\n\"1152426\";\"ละงู\";\"other\"\n\"1152432\";\"Lang Suan\";\"main\"\n\"1152432\";\"Amper Khan Ngern\";\"other\"\n\"1152432\";\"Amphoe Khan Ngoen\";\"other\"\n\"1152432\";\"Amphoe Khanngeun\";\"other\"\n\"1152432\";\"Amphoe Lang Suan\";\"other\"\n\"1152432\";\"Ban Khan Ngoen\";\"other\"\n\"1152432\";\"Khan Ngden\";\"other\"\n\"1152432\";\"Khan Ngoen\";\"other\"\n\"1152432\";\"Moeang Hlang Suan\";\"other\"\n\"1152432\";\"Moeang Hlang Sūan\";\"other\"\n\"1152432\";\"Muang Hlang Suan\";\"other\"\n\"1152432\";\"Muang Lang Suan\";\"other\"\n\"1152468\";\"Lamphun\";\"main\"\n\"1152468\";\"Amphoe Muang Lamphun\";\"other\"\n\"1152468\";\"Amphoe Mueang Lamphun\";\"other\"\n\"1152468\";\"Changwat Lamphun\";\"other\"\n\"1152468\";\"Changwat Muang Lamphun\";\"other\"\n\"1152468\";\"Lambhun\";\"other\"\n\"1152468\";\"Lampkhun\";\"other\"\n\"1152468\";\"Lampoon\";\"other\"\n\"1152468\";\"Lampun\";\"other\"\n\"1152468\";\"Muang Lam Poun\";\"other\"\n\"1152468\";\"Muang Lamphun\";\"other\"\n\"1152468\";\"Muang Lampun\";\"other\"\n\"1152468\";\"Mueang Lamphun\";\"other\"\n\"1152468\";\"Лампхун\";\"other\"\n\"1152468\";\"ลำพูน\";\"other\"\n\"1152473\";\"Lampang\";\"main\"\n\"1152473\";\"Amphoe Muang Lampang\";\"other\"\n\"1152473\";\"Amphoe Mueang Lampang\";\"other\"\n\"1152473\";\"Changwat Lampang\";\"other\"\n\"1152473\";\"Changwat Muang Lampang\";\"other\"\n\"1152473\";\"Changwat Muang Nagorn Lambang\";\"other\"\n\"1152473\";\"Lakhon\";\"other\"\n\"1152473\";\"Lakhon Lampang\";\"other\"\n\"1152473\";\"Lampangas\";\"other\"\n\"1152473\";\"Muang Lakhon Lampang\";\"other\"\n\"1152473\";\"Muang Lampang\";\"other\"\n\"1152473\";\"Muang Nagorn Lambang\";\"other\"\n\"1152473\";\"Muang Nakon Lampang\";\"other\"\n\"1152473\";\"Mueang Lampang\";\"other\"\n\"1152473\";\"Nakawn\";\"other\"\n\"1152473\";\"Nakawn Lampang\";\"other\"\n\"1152473\";\"Nakhon Lampang\";\"other\"\n\"1152473\";\"Nakon Lampang\";\"other\"\n\"1152473\";\"Nakorn Lampang\";\"other\"\n\"1152473\";\"Лампанг\";\"other\"\n\"1152473\";\"ลำปาง\";\"other\"\n\"1152562\";\"Kui Buri\";\"main\"\n\"1152562\";\"Amphoe Kui Buri\";\"other\"\n\"1152562\";\"Ban Kui Buri\";\"other\"\n\"1152562\";\"Ban Kui Kao\";\"other\"\n\"1152562\";\"Ban Kui Nua\";\"other\"\n\"1152562\";\"Kui\";\"other\"\n\"1152562\";\"Kui Kao\";\"other\"\n\"1152562\";\"Kui Nua\";\"other\"\n\"1152562\";\"Kuwi\";\"other\"\n\"1152562\";\"Menangkuwi\";\"other\"\n\"1152562\";\"Meng Kui\";\"other\"\n\"1152562\";\"Moeang Kui\";\"other\"\n\"1152562\";\"Muang Gui Gao\";\"other\"\n\"1152562\";\"Muang Kui\";\"other\"\n\"1152562\";\"Muang Kui Kao\";\"other\"\n\"1152562\";\"Muang Kuwi\";\"other\"\n\"1152633\";\"Krabi\";\"main\"\n\"1152633\";\"Amphoe Muang Krabi\";\"other\"\n\"1152633\";\"Amphoe Mueang Krabi\";\"other\"\n\"1152633\";\"Changwat Krabi\";\"other\"\n\"1152633\";\"Ghirbi\";\"other\"\n\"1152633\";\"Moeang Kra-bi\";\"other\"\n\"1152633\";\"Muang Krabi\";\"other\"\n\"1152633\";\"canghwad krabi\";\"other\"\n\"1152633\";\"meuxng krabi\";\"other\"\n\"1152633\";\"Краби\";\"other\"\n\"1152633\";\"กระบี่\";\"other\"\n\"1152633\";\"จังหวัดกระบี่\";\"other\"\n\"1152633\";\"เมืองกระบี่\";\"other\"\n\"1152647\";\"Ko Samui\";\"main\"\n\"1152647\";\"Amphoe Ko Samui\";\"other\"\n\"1152647\";\"Samui\";\"other\"\n\"1152647\";\"Самуи\";\"other\"\n\"1152657\";\"Kong Krailat\";\"main\"\n\"1152657\";\"Amphoe Ban Krai\";\"other\"\n\"1152657\";\"Amphoe Kong Krai Lat\";\"other\"\n\"1152657\";\"Ban Gong\";\"other\"\n\"1152657\";\"Ban Kong\";\"other\"\n\"1152657\";\"Ban Krai\";\"other\"\n\"1152657\";\"Ban Krong\";\"other\"\n\"1152657\";\"Kong\";\"other\"\n\"1152657\";\"Krai\";\"other\"\n\"1152657\";\"กงไกรลาศ\";\"other\"\n\"1152670\";\"Ko Lanta\";\"main\"\n\"1152670\";\"Amphoe Kau Lanta\";\"other\"\n\"1152670\";\"Amphoe Ko Lanta\";\"other\"\n\"1152670\";\"Amphoe Kohlanta\";\"other\"\n\"1152670\";\"Ban Go Lanta\";\"other\"\n\"1152670\";\"Ban Ko Lanta\";\"other\"\n\"1152670\";\"Ban Ko Lanta Yai\";\"other\"\n\"1152670\";\"Ban Koh Lanta\";\"other\"\n\"1152670\";\"Ban Koklanta Yai\";\"other\"\n\"1152670\";\"Kau Lanta Yai\";\"other\"\n\"1152670\";\"Ko Lanta Yai\";\"other\"\n\"1152670\";\"Koh Lanta\";\"other\"\n\"1152670\";\"Koklanta Yai\";\"other\"\n\"1152670\";\"Lanta\";\"other\"\n\"1152670\";\"Lanta Jai\";\"other\"\n\"1152670\";\"Ланта Яи\";\"other\"\n\"1152679\";\"Ko Kha\";\"main\"\n\"1152679\";\"Amphoe Ko Kha\";\"other\"\n\"1152679\";\"Ban Go Ka\";\"other\"\n\"1152679\";\"Ban Ko Kha\";\"other\"\n\"1152679\";\"Ban Koknar\";\"other\"\n\"1152679\";\"Bān Go Ka\";\"other\"\n\"1152679\";\"Kau Kha\";\"other\"\n\"1152679\";\"Kohga\";\"other\"\n\"1152679\";\"เกาะคา\";\"other\"\n\"1152765\";\"Khun Yuam\";\"main\"\n\"1152765\";\"Amphoe Khun Yuam\";\"other\"\n\"1152765\";\"Ban Khun Yuam\";\"other\"\n\"1152765\";\"Mong Kum Yuam\";\"other\"\n\"1152765\";\"Möng Kum Yuam\";\"other\"\n\"1152765\";\"khunywm\";\"other\"\n\"1152765\";\"ขุนยวม\";\"other\"\n\"1152850\";\"Khlong Lan\";\"main\"\n\"1152850\";\"Amphoe Khlong Lan\";\"other\"\n\"1152850\";\"King Amphoe Khlong Lan\";\"other\"\n\"1152850\";\"คลองลาน\";\"other\"\n\"1152854\";\"Khlong Khlung\";\"main\"\n\"1152854\";\"Amphoe Kanu\";\"other\"\n\"1152854\";\"Amphoe Khanu\";\"other\"\n\"1152854\";\"Amphoe Khlong Khlung\";\"other\"\n\"1152854\";\"Ban Khlong Khlung\";\"other\"\n\"1152854\";\"Ban Klaung Klung\";\"other\"\n\"1152854\";\"Ban Klong Klung\";\"other\"\n\"1152854\";\"Kan\";\"other\"\n\"1152854\";\"Khanu\";\"other\"\n\"1152854\";\"Khlaung Khlung\";\"other\"\n\"1152854\";\"คลองขลุง\";\"other\"\n\"1152876\";\"Khiri Mat\";\"main\"\n\"1152876\";\"Amphoe Khiri Mat\";\"other\"\n\"1152876\";\"คีรีมาศ\";\"other\"\n\"1152919\";\"Khao Yoi\";\"main\"\n\"1152919\";\"Amphoe Khao Yoi\";\"other\"\n\"1152953\";\"Khanu Woralaksaburi\";\"main\"\n\"1152953\";\"Amphoe Khanuworalak Buri\";\"other\"\n\"1152953\";\"Khanworalak Buri\";\"other\"\n\"1152953\";\"King Amphoe Khanu Woralaksaburi\";\"other\"\n\"1152953\";\"ขาณุวรลักษบุรี\";\"other\"\n\"1153035\";\"Kathu\";\"main\"\n\"1153035\";\"Ban Talat Kathu\";\"other\"\n\"1153035\";\"Katu\";\"other\"\n\"1153035\";\"Кату\";\"other\"\n\"1153072\";\"Kantang\";\"main\"\n\"1153072\";\"Amphoe Kantang\";\"other\"\n\"1153072\";\"Ban Gantang\";\"other\"\n\"1153072\";\"Ban Kantang\";\"other\"\n\"1153072\";\"Gantam\";\"other\"\n\"1153072\";\"Кантанг\";\"other\"\n\"1153081\";\"Kanchanaburi\";\"main\"\n\"1153081\";\"Changwat Kanchanaburi\";\"other\"\n\"1153081\";\"Kanburi\";\"other\"\n\"1153081\";\"Kanchana\";\"other\"\n\"1153081\";\"Kanpuri\";\"other\"\n\"1153081\";\"Moeang Kanchana Buri\";\"other\"\n\"1153081\";\"Muang Kanchana Buri\";\"other\"\n\"1153081\";\"kanchanaburi\";\"other\"\n\"1153081\";\"Канчанабури\";\"other\"\n\"1153081\";\"カーンチャナブリー\";\"other\"\n\"1153090\";\"Kamphaeng Phet\";\"main\"\n\"1153090\";\"Amphoe Muang Kamphaeng Phet\";\"other\"\n\"1153090\";\"Amphoe Mueang Kamphaeng Phet\";\"other\"\n\"1153090\";\"Changwat Kamphaeng Phet\";\"other\"\n\"1153090\";\"Changwat Muang Kam Bheng Bhej\";\"other\"\n\"1153090\";\"Gamphaeng Phet\";\"other\"\n\"1153090\";\"Gampheang Phet\";\"other\"\n\"1153090\";\"Kam Baeng Bejr\";\"other\"\n\"1153090\";\"Kambheng Bhej\";\"other\"\n\"1153090\";\"Meuangkamphayng\";\"other\"\n\"1153090\";\"Muang Kam Bheng Bhej\";\"other\"\n\"1153090\";\"Muang Kam Phaeng Phet\";\"other\"\n\"1153090\";\"Muang Kum Pang Pet\";\"other\"\n\"1153090\";\"กำแพงเพชร\";\"other\"\n\"1153241\";\"Huai Yot\";\"main\"\n\"1153241\";\"Amphoe Huai Yot\";\"other\"\n\"1153241\";\"Amphoe Khao Khao\";\"other\"\n\"1153241\";\"Amphoe Khau Khaw\";\"other\"\n\"1153241\";\"Ban Kao Kau\";\"other\"\n\"1153241\";\"Ban Khaokao\";\"other\"\n\"1153241\";\"Ban Nam Phrai\";\"other\"\n\"1153241\";\"Ban Nem Phrai\";\"other\"\n\"1153241\";\"Bān Kāo Kāu\";\"other\"\n\"1153241\";\"Khao Khao\";\"other\"\n\"1153241\";\"Khaokao\";\"other\"\n\"1153241\";\"Khou Khaw\";\"other\"\n\"1153241\";\"Nam Phrai\";\"other\"\n\"1153263\";\"Huai Khot\";\"main\"\n\"1153263\";\"Amphoe Huai Khot\";\"other\"\n\"1153263\";\"King Amphoe Huai Khot\";\"other\"\n\"1153263\";\"ห้วยคต\";\"other\"\n\"1153269\";\"Hua Hin\";\"main\"\n\"1153269\";\"Amphoe Hua Hin\";\"other\"\n\"1153269\";\"Ban Hua Hin\";\"other\"\n\"1153269\";\"Hau Hin\";\"other\"\n\"1153269\";\"King Amphoe Ban Hua Hin\";\"other\"\n\"1153269\";\"King Amphoe Hua Hin\";\"other\"\n\"1153269\";\"chaamu=fuwahin\";\"other\"\n\"1153269\";\"hawhin-pranburi\";\"other\"\n\"1153269\";\"xaphex hawhin\";\"other\"\n\"1153269\";\"หัวหิน-ปราณบุรี\";\"other\"\n\"1153269\";\"อำเภอหัวหิน\";\"other\"\n\"1153269\";\"チャアム=フワヒン\";\"other\"\n\"1153269\";\"チャアム＝フワヒン\";\"other\"\n\"1153278\";\"Hot\";\"main\"\n\"1153278\";\"Amphoe Hoht\";\"other\"\n\"1153278\";\"Amphoe Hot\";\"other\"\n\"1153278\";\"Ban Muang Haut\";\"other\"\n\"1153278\";\"Ban Muang Hawt\";\"other\"\n\"1153278\";\"Ban Muang Hot\";\"other\"\n\"1153278\";\"Hohd\";\"other\"\n\"1153278\";\"Hōhd\";\"other\"\n\"1153278\";\"Moeang Hohd\";\"other\"\n\"1153278\";\"Muang Haut\";\"other\"\n\"1153278\";\"Muang Hawt\";\"other\"\n\"1153278\";\"Muang Hot\";\"other\"\n\"1153278\";\"ฮอด\";\"other\"\n\"1153386\";\"Hang Dong\";\"main\"\n\"1153386\";\"Amphoe Hang Dong\";\"other\"\n\"1153386\";\"Ban Hang Dong\";\"other\"\n\"1153386\";\"Khwaeng Mae Tha Chang\";\"other\"\n\"1153386\";\"King Amphoe Hang Dong\";\"other\"\n\"1153386\";\"หางดง\";\"other\"\n\"1153386\";\"แขวงแม่ท่าช้าง\";\"other\"\n\"1153389\";\"Hang Chat\";\"main\"\n\"1153389\";\"Amphoe Hang Chat\";\"other\"\n\"1153389\";\"Ban Hang Sad\";\"other\"\n\"1153389\";\"Ban Hang Sat\";\"other\"\n\"1153389\";\"Hang Chate\";\"other\"\n\"1153389\";\"Hang Sad\";\"other\"\n\"1153389\";\"Hang Sat\";\"other\"\n\"1153389\";\"ห้างฉัตร\";\"other\"\n\"1153427\";\"Fang\";\"main\"\n\"1153427\";\"Amphoe Fang\";\"other\"\n\"1153427\";\"Amphoe Moeang Bhang\";\"other\"\n\"1153427\";\"Amphoe Moeangfhang\";\"other\"\n\"1153427\";\"Amphoe Muang Fang\";\"other\"\n\"1153427\";\"Ban Nai Wiang\";\"other\"\n\"1153427\";\"Fhang\";\"other\"\n\"1153427\";\"Fhāng\";\"other\"\n\"1153427\";\"Moeang Fhang\";\"other\"\n\"1153427\";\"Muang Fang\";\"other\"\n\"1153427\";\"Muang Pang\";\"other\"\n\"1153427\";\"ฝาง\";\"other\"\n\"1153464\";\"Dok Kham Tai\";\"main\"\n\"1153464\";\"Ban Dauk Kam Tai\";\"other\"\n\"1153464\";\"Ban Dauk Kam Tāi\";\"other\"\n\"1153464\";\"Ban Dok Kham Tai\";\"other\"\n\"1153464\";\"Dauk Kham Tai\";\"other\"\n\"1153467\";\"Doi Tao\";\"main\"\n\"1153467\";\"Ban Doi Tao\";\"other\"\n\"1153467\";\"King Amphoe Doi Tao\";\"other\"\n\"1153467\";\"ดอยเต่า\";\"other\"\n\"1153513\";\"Damnoen Saduak\";\"main\"\n\"1153513\";\"Amphoe Damnoen Saduak\";\"other\"\n\"1153513\";\"Ban Damnoen Saduak\";\"other\"\n\"1153513\";\"Ban Khlong Damnoen Saduak\";\"other\"\n\"1153513\";\"Damnoensaduak\";\"other\"\n\"1153513\";\"Дамноенсадуак\";\"other\"\n\"1153557\";\"Chumphon\";\"main\"\n\"1153557\";\"Amphoe Muang Chumphon\";\"other\"\n\"1153557\";\"Champawn\";\"other\"\n\"1153557\";\"Changwat Chumphon\";\"other\"\n\"1153557\";\"Chumphaun\";\"other\"\n\"1153557\";\"Chumpkhon\";\"other\"\n\"1153557\";\"Chumpon\";\"other\"\n\"1153557\";\"Chumporn\";\"other\"\n\"1153557\";\"Jumbhorn\";\"other\"\n\"1153557\";\"Jumbor\";\"other\"\n\"1153557\";\"Muang Champawn\";\"other\"\n\"1153557\";\"Muang Choum Pon\";\"other\"\n\"1153557\";\"Muang Chum Pon\";\"other\"\n\"1153557\";\"Muang Chumporn\";\"other\"\n\"1153557\";\"Muang Jum Bhorn\";\"other\"\n\"1153557\";\"Mueang Chumphon\";\"other\"\n\"1153557\";\"Чумпхон\";\"other\"\n\"1153557\";\"ชุมพร\";\"other\"\n\"1153634\";\"Chom Thong\";\"main\"\n\"1153634\";\"Amphoe Chohm Dhohng\";\"other\"\n\"1153634\";\"Amphoe Chom Thong\";\"other\"\n\"1153634\";\"Amphoe Chomtong\";\"other\"\n\"1153634\";\"Ban Hluang\";\"other\"\n\"1153634\";\"Ban Luang\";\"other\"\n\"1153634\";\"Ban Luang Chom Thong\";\"other\"\n\"1153634\";\"Ban Som-Luang\";\"other\"\n\"1153634\";\"Chaum Thaung\";\"other\"\n\"1153634\";\"Hluang\";\"other\"\n\"1153634\";\"Jaum Thaung\";\"other\"\n\"1153634\";\"จอมทอง\";\"other\"\n\"1153646\";\"Chom Bung\";\"main\"\n\"1153646\";\"Amphoe Chom Bung\";\"other\"\n\"1153646\";\"Ban Chom Bung\";\"other\"\n\"1153646\";\"Chaum Boeng\";\"other\"\n\"1153646\";\"Chohm Boeng\";\"other\"\n\"1153646\";\"King Chom Bung\";\"other\"\n\"1153669\";\"Chiang Rai\";\"main\"\n\"1153669\";\"Amphoe Chiang Rai\";\"other\"\n\"1153669\";\"Amphoe Muang Chiang Rai\";\"other\"\n\"1153669\";\"Chang Rai\";\"other\"\n\"1153669\";\"Changwat Chiang Rai\";\"other\"\n\"1153669\";\"Changwat Muang Chiang Rai\";\"other\"\n\"1153669\";\"Changwat Muang Jieng Rai\";\"other\"\n\"1153669\";\"Chiang-Raj\";\"other\"\n\"1153669\";\"Chiengrai\";\"other\"\n\"1153669\";\"Cziang Raj\";\"other\"\n\"1153669\";\"Jieng Rai\";\"other\"\n\"1153669\";\"Muang Chiang Rai\";\"other\"\n\"1153669\";\"Muang Chieng Rai\";\"other\"\n\"1153669\";\"Muang Jieng Rai\";\"other\"\n\"1153669\";\"Mueang Chiang Rai\";\"other\"\n\"1153669\";\"Xieng Rai\";\"other\"\n\"1153669\";\"chienrai\";\"other\"\n\"1153669\";\"qing lai\";\"other\"\n\"1153669\";\"Чианг-Рай\";\"other\"\n\"1153669\";\"צ'יאנג ראי\";\"other\"\n\"1153669\";\"เชียงราย\";\"other\"\n\"1153669\";\"チエンラーイ\";\"other\"\n\"1153669\";\"清萊\";\"other\"\n\"1153671\";\"Chiang Mai\";\"main\"\n\"1153671\";\"Amphoe Muang Chiang Mai\";\"other\"\n\"1153671\";\"Changwat Chiang Mai\";\"other\"\n\"1153671\";\"Chiang-Maj\";\"other\"\n\"1153671\";\"Chiangmai\";\"other\"\n\"1153671\";\"Chiengmai\";\"other\"\n\"1153671\";\"Cziang Maj\";\"other\"\n\"1153671\";\"Kiangmai\";\"other\"\n\"1153671\";\"Muang Chieng Mai\";\"other\"\n\"1153671\";\"Muang Jieng Hmai\";\"other\"\n\"1153671\";\"Mueang Chiang Mai\";\"other\"\n\"1153671\";\"Xieng Mai\";\"other\"\n\"1153671\";\"Zimme\";\"other\"\n\"1153671\";\"Zimmé\";\"other\"\n\"1153671\";\"chiangmai\";\"other\"\n\"1153671\";\"chienmai\";\"other\"\n\"1153671\";\"qing mai\";\"other\"\n\"1153671\";\"Чианг-Май\";\"other\"\n\"1153671\";\"צ'אנג מאי\";\"other\"\n\"1153671\";\"צ'יאנג מאי\";\"other\"\n\"1153671\";\"เชียงใหม่\";\"other\"\n\"1153671\";\"แม่ริม เชียงใหม่\";\"other\"\n\"1153671\";\"チエンマイ\";\"other\"\n\"1153671\";\"清迈\";\"other\"\n\"1153671\";\"清邁\";\"other\"\n\"1153671\";\"치앙마이\";\"other\"\n\"1153673\";\"Chiang Dao\";\"main\"\n\"1153673\";\"Amphoe Ban Chiang Dao\";\"other\"\n\"1153673\";\"Amphoe Chiang Dao\";\"other\"\n\"1153673\";\"Amphoe Jieng Dao\";\"other\"\n\"1153673\";\"Ban Chiang Dao\";\"other\"\n\"1153673\";\"Chieng Dao\";\"other\"\n\"1153673\";\"Jieng Dao\";\"other\"\n\"1153673\";\"Muang Chieng Dao\";\"other\"\n\"1153673\";\"เชียงดาว\";\"other\"\n\"1153686\";\"Chawang\";\"main\"\n\"1153686\";\"Amphoe Chawang\";\"other\"\n\"1153686\";\"Ban Chawang\";\"other\"\n\"1153686\";\"Ban Tambon Chawang\";\"other\"\n\"1153783\";\"Chaiya\";\"main\"\n\"1153783\";\"Amphoe Chaiya\";\"other\"\n\"1153783\";\"Amphoe Moeang Jaiya\";\"other\"\n\"1153783\";\"Ban Bhum Rieng\";\"other\"\n\"1153783\";\"Ban Phummariang\";\"other\"\n\"1153783\";\"Ban Phumrieng\";\"other\"\n\"1153783\";\"Ban Pum Riang\";\"other\"\n\"1153783\";\"Ban Pun Riang\";\"other\"\n\"1153783\";\"Chaija\";\"other\"\n\"1153783\";\"Jaiya\";\"other\"\n\"1153783\";\"Muang Chaiya\";\"other\"\n\"1153783\";\"Muang Chaya\";\"other\"\n\"1153783\";\"Phum Riang\";\"other\"\n\"1153783\";\"Pumreang\";\"other\"\n\"1153783\";\"Pumriang\";\"other\"\n\"1153783\";\"ไชยา\";\"other\"\n\"1153800\";\"Chae Hom\";\"main\"\n\"1153800\";\"Amphoe Cha Hom\";\"other\"\n\"1153800\";\"Amphoe Chae Hom\";\"other\"\n\"1153800\";\"Amphoe Che Hom\";\"other\"\n\"1153800\";\"Ban Chae Hom Tai\";\"other\"\n\"1153800\";\"Ban Che Hom Tai\";\"other\"\n\"1153800\";\"Ban Jea Hom Dai\";\"other\"\n\"1153800\";\"Chai Hom Tai\";\"other\"\n\"1153800\";\"Che Hom Tai\";\"other\"\n\"1153800\";\"Muang Wa\";\"other\"\n\"1153800\";\"แจ้ห่ม\";\"other\"\n\"1153807\";\"Cha-am\";\"main\"\n\"1153807\";\"Amphoe Cha-am\";\"other\"\n\"1153807\";\"Ban Chaam\";\"other\"\n\"1153807\";\"Cha Am\";\"other\"\n\"1153807\";\"Sha-am\";\"other\"\n\"1153807\";\"chaxa\";\"other\"\n\"1153807\";\"Ча-ам\";\"other\"\n\"1153807\";\"ชะอำ\";\"other\"\n\"1153850\";\"Bo Phloi\";\"main\"\n\"1153850\";\"Amphoe Bo Phloi\";\"other\"\n\"1153850\";\"Ban Bo Phloi\";\"other\"\n\"1153850\";\"King Bau Phloi\";\"other\"\n\"1153850\";\"King Bo Phloi\";\"other\"\n\"1154093\";\"Wang Chin\";\"main\"\n\"1154093\";\"Amphoe Wang Chin\";\"other\"\n\"1154093\";\"Ban Wang Bar\";\"other\"\n\"1154093\";\"Ban Wang Boe\";\"other\"\n\"1154093\";\"Ban Wang Chin\";\"other\"\n\"1154093\";\"Bān Wang Bar\";\"other\"\n\"1154093\";\"King Amphoe Wang Chin\";\"other\"\n\"1154093\";\"วังชิ้น\";\"other\"\n\"1154094\";\"Wing Chao\";\"main\"\n\"1154094\";\"Amphoe Wang Chao\";\"other\"\n\"1154094\";\"Ban Wang Chao (4)\";\"other\"\n\"1154094\";\"Gosamphi\";\"other\"\n\"1154094\";\"King Amphoe Wang Chao\";\"other\"\n\"1154094\";\"Kosambhi\";\"other\"\n\"1154094\";\"Kosamphi\";\"other\"\n\"1154094\";\"Muang Gausam Phi\";\"other\"\n\"1154094\";\"Muang Kosambhi\";\"other\"\n\"1154094\";\"Muang Kosamphi\";\"other\"\n\"1154094\";\"วังเจ้า\";\"other\"\n\"1154329\";\"Thung Hua Chang\";\"main\"\n\"1154329\";\"Amphoe Thung Hua Chang\";\"other\"\n\"1154329\";\"Ban Thung Hua Chang\";\"other\"\n\"1154329\";\"Ban Tung Hua Chang\";\"other\"\n\"1154329\";\"Dhunghuajang\";\"other\"\n\"1154329\";\"Dhunghūajāng\";\"other\"\n\"1154329\";\"King Amphoe Thung Hua Chang\";\"other\"\n\"1154329\";\"ทุ่งหัวช้าง\";\"other\"\n\"1154677\";\"Ban Tak\";\"main\"\n\"1154677\";\"Amphoe Ban Tak\";\"other\"\n\"1154677\";\"Tak\";\"other\"\n\"1154677\";\"บ้านตาก\";\"other\"\n\"1155010\";\"Rawai\";\"main\"\n\"1155010\";\"Ban Ra Wai\";\"other\"\n\"1155010\";\"Ban Rawei\";\"other\"\n\"1155010\";\"ra wiy\";\"other\"\n\"1155010\";\"ราไวย์\";\"other\"\n\"1155064\";\"Ban Rai\";\"main\"\n\"1155064\";\"Amphoe Ban Rai\";\"other\"\n\"1155064\";\"Amphoe Khok Khwai\";\"other\"\n\"1155064\";\"บ้านไร่\";\"other\"\n\"1155139\";\"Ban Pong\";\"main\"\n\"1155139\";\"Amphoe Ban Pong\";\"other\"\n\"1155139\";\"Amphu Ban Pong\";\"other\"\n\"1155139\";\"Pan-pong\";\"other\"\n\"1155139\";\"Пан-понг\";\"other\"\n\"1155214\";\"Banphot Phisai\";\"main\"\n\"1155214\";\"Ambheu Barnbhot\";\"other\"\n\"1155214\";\"Amphoe Banphot Phisai\";\"other\"\n\"1155214\";\"Amphoe Banpot Pi Sai\";\"other\"\n\"1155214\";\"Amphoe Barnbhot Bhi Sai\";\"other\"\n\"1155214\";\"Ban Banpot Pisai\";\"other\"\n\"1155214\";\"Ban Hu Gwang\";\"other\"\n\"1155214\";\"Ban Hu Kwang\";\"other\"\n\"1155214\";\"Banpot\";\"other\"\n\"1155214\";\"Barnbhotbhisai\";\"other\"\n\"1155214\";\"Hu Khwang\";\"other\"\n\"1155214\";\"บรรพตพิสัย\";\"other\"\n\"1155231\";\"Ban Phlu Nai (1)\";\"main\"\n\"1155231\";\"Ban Cho Pla Lai\";\"other\"\n\"1155231\";\"Ban Phru Nai\";\"other\"\n\"1155231\";\"Ban Pru Nai\";\"other\"\n\"1155231\";\"Pru-Nai\";\"other\"\n\"1155231\";\"Пру-Наи\";\"other\"\n\"1156046\";\"Ban Na San\";\"main\"\n\"1156046\";\"Na Sau\";\"other\"\n\"1156046\";\"Nasan\";\"other\"\n\"1156257\";\"Ban Na\";\"main\"\n\"1156836\";\"Ban Ko Kaeo\";\"main\"\n\"1156836\";\"Ban Khok Kaeo\";\"other\"\n\"1156836\";\"Ban Kok Kew\";\"other\"\n\"1156836\";\"Ko-Kaeo\";\"other\"\n\"1156836\";\"Ко-Каео\";\"other\"\n\"1156836\";\"บ้านเกาะแก้ว\";\"other\"\n\"1157241\";\"Kathu\";\"main\"\n\"1157241\";\"Amphoe Kathu\";\"other\"\n\"1157241\";\"Ban Gathu\";\"other\"\n\"1157241\";\"Ban Kathu\";\"other\"\n\"1157241\";\"Ban Kathu (1)\";\"other\"\n\"1157241\";\"Ban Katu\";\"other\"\n\"1157241\";\"Bān Gathu\";\"other\"\n\"1157241\";\"Ka Hu\";\"other\"\n\"1157241\";\"Katu\";\"other\"\n\"1157241\";\"kathu\";\"other\"\n\"1157241\";\"กะทู้\";\"other\"\n\"1157249\";\"Ban Karon\";\"main\"\n\"1157249\";\"Ka Rorn\";\"other\"\n\"1157277\";\"Kaeng Krachan\";\"main\"\n\"1157277\";\"Ban Kaeng Kachan\";\"other\"\n\"1157277\";\"Ban Kaeng Kalan\";\"other\"\n\"1157277\";\"Keng Kachan\";\"other\"\n\"1157277\";\"Kēng Kachan\";\"other\"\n\"1157551\";\"Ban Hong\";\"main\"\n\"1157551\";\"Amphoe Ban Hong\";\"other\"\n\"1157551\";\"Ban Haung\";\"other\"\n\"1157551\";\"Bān Haung\";\"other\"\n\"1157551\";\"King Amphoe Ban Hong\";\"other\"\n\"1157551\";\"บ้านโฮ่ง\";\"other\"\n\"1157662\";\"Bang Saphan\";\"main\"\n\"1157662\";\"Amphoe Bang Saphan\";\"other\"\n\"1157662\";\"Amphu Bangspan\";\"other\"\n\"1157662\";\"Ban Bang Saphan Yai\";\"other\"\n\"1157662\";\"Bang Saphan Yai\";\"other\"\n\"1157662\";\"Bangsabhan\";\"other\"\n\"1157683\";\"Bang Phae\";\"main\"\n\"1157683\";\"Amphoe Bang Phae\";\"other\"\n\"1157683\";\"Ban Bang Phae\";\"other\"\n\"1157683\";\"Ban Bang Phae Tai\";\"other\"\n\"1157683\";\"Bang Phae Tai\";\"other\"\n\"1157683\";\"Tha Rap\";\"other\"\n\"1157725\";\"Bang Khon Thi\";\"main\"\n\"1157725\";\"Amphoe Bang Khon Thi\";\"other\"\n\"1157725\";\"Ban Bang Khonthi\";\"other\"\n\"1157725\";\"Banggondhi\";\"other\"\n\"1157725\";\"Bānggondhi\";\"other\"\n\"1157949\";\"Doi Lo\";\"main\"\n\"1157949\";\"Amphoe Doi Lo\";\"other\"\n\"1157949\";\"Ban Doi Lau\";\"other\"\n\"1157949\";\"Ban Doi Lo\";\"other\"\n\"1157949\";\"Bān Doi Lau\";\"other\"\n\"1157949\";\"King Amphoe Doi Lo\";\"other\"\n\"1157949\";\"ดอยหล่อ\";\"other\"\n\"1157971\";\"Ban Dan Lan Hoi\";\"main\"\n\"1157971\";\"Ban Dan\";\"other\"\n\"1157971\";\"Lan Hoi\";\"other\"\n\"1157971\";\"บ้านด่านลานหอย\";\"other\"\n\"1158377\";\"Ban Ao Nang\";\"main\"\n\"1158377\";\"Ao-Nang\";\"other\"\n\"1158377\";\"Ао-Нанг\";\"other\"\n\"1158412\";\"Ao Luk\";\"main\"\n\"1158412\";\"Amphoe Ao Luk\";\"other\"\n\"1158412\";\"Ao Loek\";\"other\"\n\"1158412\";\"Ao Loek Tai\";\"other\"\n\"1158412\";\"Ban Ao Luk Tai\";\"other\"\n\"1158412\";\"Ban Auluek\";\"other\"\n\"1158432\";\"Amphawa\";\"main\"\n\"1158432\";\"Ambhawa\";\"other\"\n\"1158432\";\"Amphoe Amphawa\";\"other\"\n\"1158432\";\"Ban Amphawa\";\"other\"\n\"1595195\";\"Sahatsakhan\";\"main\"\n\"1595195\";\"สหัสขันธ์\";\"other\"\n\"1595679\";\"Nong Kung Si\";\"main\"\n\"1595865\";\"Na Dun\";\"main\"\n\"1595865\";\"นาดูน\";\"other\"\n\"1596287\";\"Si That\";\"main\"\n\"1596287\";\"ศรีธาตุ\";\"other\"\n\"1596290\";\"Nong Phok\";\"main\"\n\"1596290\";\"King Amphoe Nong Phok\";\"other\"\n\"1596290\";\"หนองพอก\";\"other\"\n\"1596291\";\"Na Wa\";\"main\"\n\"1596291\";\"King Amphoe Na Wa\";\"other\"\n\"1596291\";\"นาหว้า\";\"other\"\n\"1596294\";\"Don Tan\";\"main\"\n\"1596294\";\"King Amphoe Don Tan\";\"other\"\n\"1596294\";\"ดอนตาล\";\"other\"\n\"1596295\";\"Chiang Muan\";\"main\"\n\"1596295\";\"King Amphoe Chiang Muan\";\"other\"\n\"1596295\";\"เชียงม่วน\";\"other\"\n\"1598503\";\"Sak Lek\";\"main\"\n\"1598503\";\"Amphoe Sak Lek\";\"other\"\n\"1598503\";\"Ban Sak Lek\";\"other\"\n\"1598503\";\"King Amphoe Sak Lek\";\"other\"\n\"1598503\";\"สากเหล็ก\";\"other\"\n\"1599114\";\"Pha Khao\";\"main\"\n\"1599114\";\"Amphoe Pha Khao\";\"other\"\n\"1599114\";\"Ban Pha Khao\";\"other\"\n\"1599114\";\"King Amphoe Pha Khao\";\"other\"\n\"1599114\";\"ผาขาว\";\"other\"\n\"1599640\";\"Ban Nong Wua So\";\"main\"\n\"1600104\";\"Nong Na Kham\";\"main\"\n\"1600104\";\"Amphoe Nong Na Kham\";\"other\"\n\"1600104\";\"Ban Nong Na Kham\";\"other\"\n\"1600104\";\"King Amphoe Nong Na Kham\";\"other\"\n\"1600104\";\"หนองนาคำ\";\"other\"\n\"1600435\";\"Nong Hin\";\"main\"\n\"1600435\";\"Amphoe Nong Hin\";\"other\"\n\"1600435\";\"Ban Nong Hin\";\"other\"\n\"1600435\";\"King Amphoe Nong Hin\";\"other\"\n\"1600435\";\"หนองหิน\";\"other\"\n\"1600964\";\"Ban Nam Yuen\";\"main\"\n\"1600964\";\"บ้านน้ำยืน\";\"other\"\n\"1601579\";\"Ban Mai\";\"main\"\n\"1601579\";\"บ้านใหม่\";\"other\"\n\"1603235\";\"Ban Huai Thalaeng\";\"main\"\n\"1603642\";\"Ban Haet\";\"main\"\n\"1603642\";\"Amphoe Ban Haet\";\"other\"\n\"1603642\";\"King Amphoe Ban Haet\";\"other\"\n\"1603642\";\"บ้านแฮด\";\"other\"\n\"1604194\";\"Charoen Sin\";\"main\"\n\"1604194\";\"Amphoe Charoen Sin\";\"other\"\n\"1604194\";\"Ban Charoen Sin\";\"other\"\n\"1604194\";\"King Amphoe Charoen Sin\";\"other\"\n\"1604194\";\"เจริญศิลป์\";\"other\"\n\"1604452\";\"Ban Khlong Bang Sao Thong\";\"main\"\n\"1604452\";\"Ban Bang Sao Thong\";\"other\"\n\"1604452\";\"บ้านคลองบางเสาธง\";\"other\"\n\"1604591\";\"Yarang\";\"main\"\n\"1604591\";\"Amphoe Yarang\";\"other\"\n\"1604591\";\"Yaring\";\"other\"\n\"1604591\";\"ยะรัง\";\"other\"\n\"1604597\";\"Waeng\";\"main\"\n\"1604597\";\"Amphoe Waeng\";\"other\"\n\"1604597\";\"แว้ง\";\"other\"\n\"1604600\";\"Thepha\";\"main\"\n\"1604600\";\"thepha\";\"other\"\n\"1604600\";\"เทพา\";\"other\"\n\"1604601\";\"Tha Wang Pha\";\"main\"\n\"1604601\";\"ท่าวังผา\";\"other\"\n\"1604602\";\"Tha Uthen\";\"main\"\n\"1604602\";\"ท่าอุเทน\";\"other\"\n\"1604603\";\"That Phanom\";\"main\"\n\"1604603\";\"ธาตุพนม\";\"other\"\n\"1604605\";\"Tha Khan Tho\";\"main\"\n\"1604605\";\"ท่าคันโท\";\"other\"\n\"1604606\";\"Tak Fa\";\"main\"\n\"1604606\";\"ตากฟ้า\";\"other\"\n\"1604609\";\"Somdet\";\"main\"\n\"1604609\";\"สมเด็จ\";\"other\"\n\"1604610\";\"Si Songkhram\";\"main\"\n\"1604610\";\"ศรีสงคราม\";\"other\"\n\"1604612\";\"Si Khoraphum\";\"main\"\n\"1604612\";\"ศีขรภูมิ\";\"other\"\n\"1604614\";\"Si Bun Rueang\";\"main\"\n\"1604614\";\"Si Bun Ruang\";\"other\"\n\"1604614\";\"ศรีบุญเรือง\";\"other\"\n\"1604617\";\"Sanphaya\";\"main\"\n\"1604617\";\"สรรพยา\";\"other\"\n\"1604618\";\"Sangkha\";\"main\"\n\"1604618\";\"สังขะ\";\"other\"\n\"1604619\";\"Sai Buri\";\"main\"\n\"1604619\";\"สายบุรี\";\"other\"\n\"1604620\";\"Sadao\";\"main\"\n\"1604624\";\"Renu Nakhon\";\"main\"\n\"1604624\";\"เรณูนคร\";\"other\"\n\"1604625\";\"Rattaphum\";\"main\"\n\"1604625\";\"รัตภูมิ\";\"other\"\n\"1604629\";\"Pua\";\"main\"\n\"1604629\";\"ปัว\";\"other\"\n\"1604631\";\"Prang Ku\";\"main\"\n\"1604631\";\"ปรางค์กู่\";\"other\"\n\"1604632\";\"Prakhon Chai\";\"main\"\n\"1604632\";\"ประโคนชัย\";\"other\"\n\"1604633\";\"Pong\";\"main\"\n\"1604633\";\"ปง\";\"other\"\n\"1604634\";\"Pla Pak\";\"main\"\n\"1604634\";\"ปลาปาก\";\"other\"\n\"1604637\";\"Phu Khiao\";\"main\"\n\"1604637\";\"Phu Khieo\";\"other\"\n\"1604637\";\"ภูเขียว\";\"other\"\n\"1604638\";\"Phrai Bueng\";\"main\"\n\"1604638\";\"Phrai Bung\";\"other\"\n\"1604638\";\"ไพรบึง\";\"other\"\n\"1604639\";\"Phon Thong\";\"main\"\n\"1604639\";\"โพนทอง\";\"other\"\n\"1604640\";\"Phibun Mangsahan\";\"main\"\n\"1604640\";\"พิบูลมังสาหาร\";\"other\"\n\"1604643\";\"Panare\";\"main\"\n\"1604643\";\"ปะนาเระ\";\"other\"\n\"1604644\";\"Pak Phayun\";\"main\"\n\"1604645\";\"Non Sang\";\"main\"\n\"1604645\";\"โนนสัง\";\"other\"\n\"1604647\";\"Nong Chik\";\"main\"\n\"1604647\";\"หนองจิก\";\"other\"\n\"1604651\";\"Nang Rong\";\"main\"\n\"1604651\";\"นางรอง\";\"other\"\n\"1604654\";\"Na Klang\";\"main\"\n\"1604654\";\"นากลาง\";\"other\"\n\"1604656\";\"Na Kae\";\"main\"\n\"1604656\";\"นาแก\";\"other\"\n\"1604659\";\"Mayo\";\"main\"\n\"1604659\";\"มายอ\";\"other\"\n\"1604663\";\"Loeng Nok Tha\";\"main\"\n\"1604663\";\"เลิงนกทา\";\"other\"\n\"1604664\";\"Lahan Sai\";\"main\"\n\"1604664\";\"ละหานทราย\";\"other\"\n\"1604667\";\"Kumphawapi\";\"main\"\n\"1604667\";\"กุมภวาปี\";\"other\"\n\"1604668\";\"Kuchinarai\";\"main\"\n\"1604668\";\"กุฉินารายณ์\";\"other\"\n\"1604669\";\"Krasang\";\"main\"\n\"1604669\";\"กระสัง\";\"other\"\n\"1604671\";\"Kosum Phisai\";\"main\"\n\"1604671\";\"โกสุมพิสัย\";\"other\"\n\"1604673\";\"Khukhan\";\"main\"\n\"1604673\";\"ขุขันธ์\";\"other\"\n\"1604674\";\"Khon San\";\"main\"\n\"1604674\";\"คอนสาร\";\"other\"\n\"1604675\";\"Khong Chiam\";\"main\"\n\"1604675\";\"โขงเจียม\";\"other\"\n\"1604676\";\"Khon Buri\";\"main\"\n\"1604676\";\"ครบุรี\";\"other\"\n\"1604677\";\"Khok Pho\";\"main\"\n\"1604677\";\"โคกโพธิ์\";\"other\"\n\"1604679\";\"Khemarat\";\"main\"\n\"1604679\";\"Khemmarat\";\"other\"\n\"1604679\";\"เขมราฐ\";\"other\"\n\"1604680\";\"Khao Wong\";\"main\"\n\"1604680\";\"เขาวง\";\"other\"\n\"1604681\";\"Khao Chaison\";\"main\"\n\"1604681\";\"เขาชัยสน\";\"other\"\n\"1604682\";\"Khamcha-i\";\"main\"\n\"1604682\";\"คำชะอี\";\"other\"\n\"1604683\";\"Kaset Sombun\";\"main\"\n\"1604683\";\"เกษตรสมบูรณ์\";\"other\"\n\"1604684\";\"Kantharawichai\";\"main\"\n\"1604684\";\"กันทรวิชัย\";\"other\"\n\"1604685\";\"Kantharalak\";\"main\"\n\"1604685\";\"กันทรลักษณ์\";\"other\"\n\"1604686\";\"Kamalasai\";\"main\"\n\"1604686\";\"กมลาไสย\";\"other\"\n\"1604687\";\"Kaeng Khro\";\"main\"\n\"1604687\";\"แก้งคร้อ\";\"other\"\n\"1604688\";\"Huai Thalaeng\";\"main\"\n\"1604688\";\"ห้วยแถลง\";\"other\"\n\"1604690\";\"Det Udom\";\"main\"\n\"1604690\";\"เดชอุดม\";\"other\"\n\"1604695\";\"Chok Chai\";\"main\"\n\"1604695\";\"โชคชัย\";\"other\"\n\"1604696\";\"Chiang Yuen\";\"main\"\n\"1604696\";\"เชียงยืน\";\"other\"\n\"1604697\";\"Chiang Klang\";\"main\"\n\"1604697\";\"เชียงกลาง\";\"other\"\n\"1604701\";\"Chanuman\";\"main\"\n\"1604701\";\"ชานุมาน\";\"other\"\n\"1604703\";\"Buntharik\";\"main\"\n\"1604703\";\"Bunthark\";\"other\"\n\"1604703\";\"บุณฑริก\";\"other\"\n\"1604706\";\"Ban Thaen\";\"main\"\n\"1604706\";\"บ้านแท่น\";\"other\"\n\"1604707\";\"Ban Phaeng\";\"main\"\n\"1604707\";\"บ้านแพง\";\"other\"\n\"1604710\";\"Ba Cho\";\"main\"\n\"1604710\";\"Amphoe Ba Cho\";\"other\"\n\"1604710\";\"บาเจาะ\";\"other\"\n\"1604761\";\"Yi-ngo\";\"main\"\n\"1604761\";\"Amphoe Yingo\";\"other\"\n\"1604761\";\"Ban Yi-ngo\";\"other\"\n\"1604761\";\"Ban Yigo\";\"other\"\n\"1604761\";\"Ban Yingau\";\"other\"\n\"1604761\";\"Ban Yingo\";\"other\"\n\"1604761\";\"Jingo\";\"other\"\n\"1604761\";\"Yi-Ngau\";\"other\"\n\"1604761\";\"บ้านยี่งอ\";\"other\"\n\"1604761\";\"ยี่งอ\";\"other\"\n\"1604769\";\"Yasothon\";\"main\"\n\"1604769\";\"Amphoe Muang Yasothon\";\"other\"\n\"1604769\";\"Amphoe Yasodhom\";\"other\"\n\"1604769\";\"Amphoe Yasodhorn\";\"other\"\n\"1604769\";\"Amphoe Yasothon\";\"other\"\n\"1604769\";\"Ban Nai Muang\";\"other\"\n\"1604769\";\"Changwat Yasothon\";\"other\"\n\"1604769\";\"Jasotkhon\";\"other\"\n\"1604769\";\"Muang Iott-so Ton\";\"other\"\n\"1604769\";\"Muang Yasothaun\";\"other\"\n\"1604769\";\"Muang Yasothon\";\"other\"\n\"1604769\";\"Mueang Yasothon\";\"other\"\n\"1604769\";\"Yasodhorn\";\"other\"\n\"1604769\";\"Yasotawn\";\"other\"\n\"1604769\";\"Yasotorn\";\"other\"\n\"1604769\";\"Ясотхон\";\"other\"\n\"1604769\";\"ยโสธร\";\"other\"\n\"1604771\";\"Yaring\";\"main\"\n\"1604771\";\"Amphoe Yamu\";\"other\"\n\"1604771\";\"Amphoe Yaring\";\"other\"\n\"1604771\";\"Ban Yamu\";\"other\"\n\"1604771\";\"Jaring\";\"other\"\n\"1604771\";\"Muang Yaring\";\"other\"\n\"1604771\";\"Muang Yering\";\"other\"\n\"1604771\";\"Yamu\";\"other\"\n\"1604771\";\"ยะหริ่ง\";\"other\"\n\"1604792\";\"Yan Nawa\";\"main\"\n\"1604792\";\"Yan Nava\";\"other\"\n\"1604792\";\"yannawa\";\"other\"\n\"1604792\";\"ยานนาวา\";\"other\"\n\"1604797\";\"Yang Talat\";\"main\"\n\"1604797\";\"Amphoe Ban Bang Talat\";\"other\"\n\"1604797\";\"Amphoe Ban Yang Talat\";\"other\"\n\"1604797\";\"Amphoe Yangtalat\";\"other\"\n\"1604797\";\"Ban Bang Talat\";\"other\"\n\"1604797\";\"Ban Yang Talat\";\"other\"\n\"1604797\";\"Bang Talat\";\"other\"\n\"1604797\";\"Koulan Tiane\";\"other\"\n\"1604797\";\"Muang Koulan Tiane\";\"other\"\n\"1604797\";\"Muang Kulan Tiane\";\"other\"\n\"1604797\";\"Muang Phu Laen Chang\";\"other\"\n\"1604797\";\"ยางตลาด\";\"other\"\n\"1604807\";\"Yang Chum Noi\";\"main\"\n\"1604807\";\"Amphoe Yang Chum Noi\";\"other\"\n\"1604807\";\"ยางชุมน้อย\";\"other\"\n\"1604870\";\"Yala\";\"main\"\n\"1604870\";\"Ban Yala\";\"other\"\n\"1604870\";\"Changwat Yala\";\"other\"\n\"1604870\";\"Jala\";\"other\"\n\"1604870\";\"Muang Yala\";\"other\"\n\"1604870\";\"Яла\";\"other\"\n\"1604870\";\"ยะลา\";\"other\"\n\"1604979\";\"Yaha\";\"main\"\n\"1604979\";\"Amphoe Yaha\";\"other\"\n\"1604979\";\"Ban Yaha\";\"other\"\n\"1605018\";\"Wiset Chai Chan\";\"main\"\n\"1605018\";\"Amphoe Wiset Chai Chan\";\"other\"\n\"1605018\";\"Wises Jai-jan\";\"other\"\n\"1605018\";\"Wises Jai-jān\";\"other\"\n\"1605018\";\"วิเศษชัยชาญ\";\"other\"\n\"1605024\";\"Wichian Buri\";\"main\"\n\"1605024\";\"Amphoe Tha Rong\";\"other\"\n\"1605024\";\"Amphoe Wichian\";\"other\"\n\"1605024\";\"Amphoe Wichian Buri\";\"other\"\n\"1605024\";\"Amphoe Wijiern\";\"other\"\n\"1605024\";\"Ban Wichian\";\"other\"\n\"1605024\";\"Tha Rong\";\"other\"\n\"1605024\";\"Wi-jiern\";\"other\"\n\"1605024\";\"Wi-jiērn\";\"other\"\n\"1605024\";\"Wichian\";\"other\"\n\"1605024\";\"วิเชียรบุรี\";\"other\"\n\"1605026\";\"Wiang Sa\";\"main\"\n\"1605026\";\"Amphoe Sa\";\"other\"\n\"1605026\";\"Sa\";\"other\"\n\"1605026\";\"เวียงสา\";\"other\"\n\"1605043\";\"Watthana Nakhon\";\"main\"\n\"1605043\";\"Amphoe Watthana Nakhon\";\"other\"\n\"1605043\";\"Ban Wathana Nakhon\";\"other\"\n\"1605043\";\"Ban Watthana Nakhon\";\"other\"\n\"1605043\";\"Wadhana\";\"other\"\n\"1605043\";\"Watana\";\"other\"\n\"1605043\";\"Watana Nakhaun\";\"other\"\n\"1605043\";\"Whatthana Na Khom\";\"other\"\n\"1605043\";\"วัฒนานคร\";\"other\"\n\"1605048\";\"Wat Sing\";\"main\"\n\"1605048\";\"Amphoe Wat Sing\";\"other\"\n\"1605048\";\"Ban Wat Sing\";\"other\"\n\"1605048\";\"Wad Sing\";\"other\"\n\"1605048\";\"วัดสิงห์\";\"other\"\n\"1605062\";\"Wat Bot\";\"main\"\n\"1605062\";\"Amphoe Wat Bot\";\"other\"\n\"1605062\";\"King Amphoe Wat Bot\";\"other\"\n\"1605062\";\"วัดโบสถ์\";\"other\"\n\"1605069\";\"Warin Chamrap\";\"main\"\n\"1605069\";\"Amphoe Warin Chamrap\";\"other\"\n\"1605069\";\"Amphoe Warinjamrap\";\"other\"\n\"1605069\";\"Ban That\";\"other\"\n\"1605069\";\"Varindra\";\"other\"\n\"1605069\";\"Warim Chamrap\";\"other\"\n\"1605069\";\"วารินชำราบ\";\"other\"\n\"1605070\";\"Warichaphum\";\"main\"\n\"1605070\";\"Amphoe Waritchaphum\";\"other\"\n\"1605070\";\"Ban Muang Waritchaphum\";\"other\"\n\"1605070\";\"King Amphoe Barijabhum\";\"other\"\n\"1605070\";\"King Amphoe Waritchaphum\";\"other\"\n\"1605070\";\"King Waritchaphum\";\"other\"\n\"1605070\";\"Muang Ouarit Poum\";\"other\"\n\"1605070\";\"Muang Uarit Pom\";\"other\"\n\"1605070\";\"Muang Waritchaphum\";\"other\"\n\"1605070\";\"Ouarit Poum\";\"other\"\n\"1605070\";\"Waritchaphum\";\"other\"\n\"1605070\";\"วาริชภูมิ\";\"other\"\n\"1605072\";\"Wapi Pathum\";\"main\"\n\"1605072\";\"Amphoe Muang Wapi Pathum\";\"other\"\n\"1605072\";\"Amphoe Muang Wapipthum\";\"other\"\n\"1605072\";\"Amphoe Wapi Pathum\";\"other\"\n\"1605072\";\"Ban Nong Saeng\";\"other\"\n\"1605072\";\"Muang Wapi Pathum\";\"other\"\n\"1605072\";\"Muang Wapi Pra Tum\";\"other\"\n\"1605072\";\"Muang Wapipthum\";\"other\"\n\"1605072\";\"Mung Vapi Phia Thum\";\"other\"\n\"1605072\";\"Muong Vapi Phia Thoum\";\"other\"\n\"1605072\";\"Naung Saeng\";\"other\"\n\"1605072\";\"Wapi\";\"other\"\n\"1605072\";\"Wapi Pradhum\";\"other\"\n\"1605072\";\"วาปีปทุม\";\"other\"\n\"1605076\";\"Wanon Niwat\";\"main\"\n\"1605076\";\"Amphoe Wanon Niwat\";\"other\"\n\"1605076\";\"Ban Wanon Niwat\";\"other\"\n\"1605076\";\"Mong Wanon Niwas\";\"other\"\n\"1605076\";\"Möng Wanon Niwas\";\"other\"\n\"1605076\";\"วานรนิวาส\";\"other\"\n\"1605092\";\"Wang Thong\";\"main\"\n\"1605092\";\"Amphoe Wang Thong\";\"other\"\n\"1605092\";\"Ban Wang Thaung\";\"other\"\n\"1605092\";\"Bān Wang Thaung\";\"other\"\n\"1605092\";\"Nakhon Pa Mak\";\"other\"\n\"1605092\";\"Pa Mak\";\"other\"\n\"1605092\";\"Pahmak\";\"other\"\n\"1605092\";\"Pāhmāk\";\"other\"\n\"1605092\";\"Wang Thaung\";\"other\"\n\"1605092\";\"วังทอง\";\"other\"\n\"1605102\";\"Wang Saphung\";\"main\"\n\"1605102\";\"Amphoe Wang Saphung\";\"other\"\n\"1605102\";\"Ban Wang Sa Pung\";\"other\"\n\"1605102\";\"Ban Wang San Phung\";\"other\"\n\"1605102\";\"Ban Wang Saphung\";\"other\"\n\"1605102\";\"Khwaeng Wang Saphung\";\"other\"\n\"1605102\";\"Wangsabhung\";\"other\"\n\"1605102\";\"วังสะพุง\";\"other\"\n\"1605118\";\"Wang Noi\";\"main\"\n\"1605118\";\"Amphoe Wang Noi\";\"other\"\n\"1605118\";\"Ban Bang Pla Kot Noi\";\"other\"\n\"1605118\";\"Ban Wang Noi\";\"other\"\n\"1605118\";\"วังน้อย\";\"other\"\n\"1605119\";\"Wang Nam Yen\";\"main\"\n\"1605119\";\"King Amphoe Wang Nam Yen\";\"other\"\n\"1605119\";\"วังน้ำเย็น\";\"other\"\n\"1605156\";\"Wang Sai Phun\";\"main\"\n\"1605156\";\"Amphoe Wang Sai Phun\";\"other\"\n\"1605156\";\"King Amphoe Wang Sai Phun\";\"other\"\n\"1605156\";\"Wamg Sai Phun\";\"other\"\n\"1605156\";\"วังทรายพูน\";\"other\"\n\"1605176\";\"Waeng Yai\";\"main\"\n\"1605176\";\"Amphoe Waeng Yai\";\"other\"\n\"1605176\";\"King Amphoe Waeng Yai\";\"other\"\n\"1605176\";\"แวงใหญ่\";\"other\"\n\"1605179\";\"Waeng Noi\";\"main\"\n\"1605179\";\"Amphoe Waeng Noi\";\"other\"\n\"1605179\";\"King Amphoe Waeng Noi\";\"other\"\n\"1605179\";\"แวงน้อย\";\"other\"\n\"1605215\";\"Uttaradit\";\"main\"\n\"1605215\";\"Amphoe Mueang Uttaradit\";\"other\"\n\"1605215\";\"Changwat Muang Utaradith\";\"other\"\n\"1605215\";\"Changwat Uttaradit\";\"other\"\n\"1605215\";\"Muang Utaradit\";\"other\"\n\"1605215\";\"Muang Utaradith\";\"other\"\n\"1605215\";\"Outaradit\";\"other\"\n\"1605215\";\"Utaradit\";\"other\"\n\"1605215\";\"Utaraditra\";\"other\"\n\"1605215\";\"Uttradit\";\"other\"\n\"1605215\";\"Уттарадит\";\"other\"\n\"1605215\";\"อุตรดิตถ์\";\"other\"\n\"1605219\";\"Uthumphon Phisai\";\"main\"\n\"1605219\";\"Amphoe Udhumbhornbhisai\";\"other\"\n\"1605219\";\"Amphoe Uthumphon Phisai\";\"other\"\n\"1605219\";\"Ban Samrong Yai\";\"other\"\n\"1605219\";\"Ban Tamyae\";\"other\"\n\"1605219\";\"Ban Tha Mai\";\"other\"\n\"1605219\";\"Samrong Yai\";\"other\"\n\"1605219\";\"Uthom Phon Phisai\";\"other\"\n\"1605219\";\"อุทุมพรพิสัย\";\"other\"\n\"1605221\";\"Uthai Thani\";\"main\"\n\"1605221\";\"Amphoe Nam Sum\";\"other\"\n\"1605221\";\"Ban Nam Sum\";\"other\"\n\"1605221\";\"Changwat Muang Uthai Thani\";\"other\"\n\"1605221\";\"Changwat Uthai Thani\";\"other\"\n\"1605221\";\"Muang Udhai Dhani\";\"other\"\n\"1605221\";\"Muang Utai Tani\";\"other\"\n\"1605221\";\"Muang Uthai Thani\";\"other\"\n\"1605221\";\"Mueang Uthai Thani\";\"other\"\n\"1605221\";\"Udhaidhani\";\"other\"\n\"1605221\";\"อุทัยธานี\";\"other\"\n\"1605223\";\"Uthai\";\"main\"\n\"1605223\";\"Amphoe U Thai\";\"other\"\n\"1605223\";\"Ban Utai\";\"other\"\n\"1605223\";\"Ban Uthai\";\"other\"\n\"1605223\";\"Udhai\";\"other\"\n\"1605223\";\"อุทัย\";\"other\"\n\"1605239\";\"Udon Thani\";\"main\"\n\"1605239\";\"Ban Dua Makeng\";\"other\"\n\"1605239\";\"Ban Ma Keng\";\"other\"\n\"1605239\";\"Ban Mak Khaeng\";\"other\"\n\"1605239\";\"Bar Deua Ma Khong\";\"other\"\n\"1605239\";\"Changwat Udaunthani\";\"other\"\n\"1605239\";\"Changwat Udon Thani\";\"other\"\n\"1605239\";\"Mak Khaeng\";\"other\"\n\"1605239\";\"Mueang Udon Thani\";\"other\"\n\"1605239\";\"Udaun Thani\";\"other\"\n\"1605239\";\"Udon\";\"other\"\n\"1605239\";\"Udon-Tkhani\";\"other\"\n\"1605239\";\"Udorn\";\"other\"\n\"1605239\";\"Udorndhani\";\"other\"\n\"1605239\";\"Udornthani\";\"other\"\n\"1605239\";\"Удон-Тхани\";\"other\"\n\"1605239\";\"อุดรธานี\";\"other\"\n\"1605245\";\"Ubon Ratchathani\";\"main\"\n\"1605245\";\"Changwat Muang Ubon\";\"other\"\n\"1605245\";\"Changwat Ubon Ratchathani\";\"other\"\n\"1605245\";\"Muang Ubol\";\"other\"\n\"1605245\";\"Muang Ubon\";\"other\"\n\"1605245\";\"Muang Ubon Ratcha-Thani\";\"other\"\n\"1605245\";\"Muang Ubun\";\"other\"\n\"1605245\";\"Mueang Ubon Ratchathani\";\"other\"\n\"1605245\";\"Oubon\";\"other\"\n\"1605245\";\"Ubol\";\"other\"\n\"1605245\";\"Ubol Rachatani\";\"other\"\n\"1605245\";\"Ubol Rajadhani\";\"other\"\n\"1605245\";\"Ubolrajdhani\";\"other\"\n\"1605245\";\"Ubon\";\"other\"\n\"1605245\";\"Ubon Rachatani\";\"other\"\n\"1605245\";\"Ubon Rachpani\";\"other\"\n\"1605245\";\"Ubon Ratczathani\";\"other\"\n\"1605245\";\"Ubonrajathani\";\"other\"\n\"1605245\";\"Ubonrajdhani\";\"other\"\n\"1605245\";\"Ubonrajthani\";\"other\"\n\"1605245\";\"ubonrachatani\";\"other\"\n\"1605245\";\"xaphex meuxng xublrachthani\";\"other\"\n\"1605245\";\"อำเภอเมืองอุบลราชธานี\";\"other\"\n\"1605245\";\"อุบลราชธานี\";\"other\"\n\"1605245\";\"ウボンラーチャターニー\";\"other\"\n\"1605248\";\"Ubolratana\";\"main\"\n\"1605248\";\"Amphoe Ubolratana\";\"other\"\n\"1605248\";\"King Amphoe Ubolratana\";\"other\"\n\"1605248\";\"Ubonrat\";\"other\"\n\"1605248\";\"Ubonrathana\";\"other\"\n\"1605248\";\"อุบลรัตน์\";\"other\"\n\"1605268\";\"Tron\";\"main\"\n\"1605268\";\"Amphoe Tron\";\"other\"\n\"1605268\";\"Ban Geang\";\"other\"\n\"1605268\";\"Ban Kaeng\";\"other\"\n\"1605268\";\"Keng\";\"other\"\n\"1605268\";\"Kēng\";\"other\"\n\"1605268\";\"Mong Trawn\";\"other\"\n\"1605268\";\"Möng Trawn\";\"other\"\n\"1605268\";\"Traun\";\"other\"\n\"1605268\";\"ตรอน\";\"other\"\n\"1605279\";\"Trat\";\"main\"\n\"1605279\";\"Ban Bang Phra\";\"other\"\n\"1605279\";\"Ban Prah\";\"other\"\n\"1605279\";\"Bang Phra\";\"other\"\n\"1605279\";\"Changwat Trat\";\"other\"\n\"1605279\";\"Krat\";\"other\"\n\"1605279\";\"Muang Krat\";\"other\"\n\"1605279\";\"Trad\";\"other\"\n\"1605279\";\"Трат\";\"other\"\n\"1605281\";\"Trakan Phut Phon\";\"main\"\n\"1605281\";\"Amphoe Trakan Phut Phon\";\"other\"\n\"1605281\";\"Trakan Phuetphon\";\"other\"\n\"1605281\";\"ตระการพืชผล\";\"other\"\n\"1605308\";\"To Mo\";\"main\"\n\"1605308\";\"Amphoe To Mo\";\"other\"\n\"1605308\";\"Ampur Tomo\";\"other\"\n\"1605308\";\"Ban Dollah\";\"other\"\n\"1605308\";\"Ban Domo\";\"other\"\n\"1605308\";\"Ban Taumo\";\"other\"\n\"1605308\";\"Ban To Mo\";\"other\"\n\"1605308\";\"Ban Tolo\";\"other\"\n\"1605308\";\"Kampong To Mo\";\"other\"\n\"1605308\";\"Khau Lau\";\"other\"\n\"1605308\";\"Tohmoh\";\"other\"\n\"1605308\";\"ban toa moa\";\"other\"\n\"1605308\";\"บ้านโต๊ะโม๊ะ\";\"other\"\n\"1605308\";\"โต๊ะโม๊ะ\";\"other\"\n\"1605403\";\"Thon Buri\";\"main\"\n\"1605403\";\"Amphoe Thon Buri\";\"other\"\n\"1605403\";\"Changwat Thon Buri\";\"other\"\n\"1605403\";\"Dhonburi\";\"other\"\n\"1605403\";\"Dhonhuri\";\"other\"\n\"1605403\";\"Thonhuri\";\"other\"\n\"1605403\";\"thnburi\";\"other\"\n\"1605403\";\"ธนบุรี\";\"other\"\n\"1605409\";\"Thoeng\";\"main\"\n\"1605409\";\"Amphoe Dheung\";\"other\"\n\"1605409\";\"Amphoe Moeang Dheung\";\"other\"\n\"1605409\";\"Amphoe Thoeng\";\"other\"\n\"1605409\";\"Ban Nai Wiang\";\"other\"\n\"1605409\";\"Ban Thoeng\";\"other\"\n\"1605409\";\"Ban Wiang Thoeng\";\"other\"\n\"1605409\";\"Dhewng\";\"other\"\n\"1605409\";\"Dhēwng\";\"other\"\n\"1605409\";\"Moeang Dheung\";\"other\"\n\"1605409\";\"Muang Tern\";\"other\"\n\"1605409\";\"Muang Teun\";\"other\"\n\"1605409\";\"Tharng\";\"other\"\n\"1605409\";\"เทิง\";\"other\"\n\"1605467\";\"Tha Yang\";\"main\"\n\"1605467\";\"Amphoe Tha Yang\";\"other\"\n\"1605467\";\"Ban Tha Yang\";\"other\"\n\"1605469\";\"Tha Wung\";\"main\"\n\"1605469\";\"Amphoe Tha Wung\";\"other\"\n\"1605469\";\"Ban Tha Wung\";\"other\"\n\"1605469\";\"Dha Wung\";\"other\"\n\"1605469\";\"Dhā Wung\";\"other\"\n\"1605469\";\"ท่าวุ้ง\";\"other\"\n\"1605473\";\"Thawatchaburi\";\"main\"\n\"1605473\";\"Amphoe Ban Phon Thong\";\"other\"\n\"1605473\";\"Amphoe Ban Phong Thong\";\"other\"\n\"1605473\";\"Amphoe Bhondhohng\";\"other\"\n\"1605473\";\"Amphoe Phon Thong\";\"other\"\n\"1605473\";\"Amphoe Tawat Buri\";\"other\"\n\"1605473\";\"Amphoe Thawat Buri\";\"other\"\n\"1605473\";\"Ban Phon Thong\";\"other\"\n\"1605473\";\"Bouri\";\"other\"\n\"1605473\";\"Muang Bouri\";\"other\"\n\"1605473\";\"Muang Ruri\";\"other\"\n\"1605473\";\"Muang Taratburi\";\"other\"\n\"1605473\";\"Muang Tawaj Buri\";\"other\"\n\"1605473\";\"Muang Thawat Buri\";\"other\"\n\"1605473\";\"Phon Thong\";\"other\"\n\"1605473\";\"Phonthaung\";\"other\"\n\"1605473\";\"Thawat Buri\";\"other\"\n\"1605473\";\"ธวัชบุรี\";\"other\"\n\"1605483\";\"That Phanom\";\"main\"\n\"1605483\";\"Amphoe That Phanom\";\"other\"\n\"1605483\";\"Ban That Phanom\";\"other\"\n\"1605483\";\"Ban Thatphnom\";\"other\"\n\"1605483\";\"Ban Thatuphanom\";\"other\"\n\"1605490\";\"Tha Tako\";\"main\"\n\"1605490\";\"Amphoe Tha Tako\";\"other\"\n\"1605490\";\"ท่าตะโก\";\"other\"\n\"1605509\";\"Tha Rua\";\"main\"\n\"1605509\";\"Amphoe Tha Rua\";\"other\"\n\"1605509\";\"Ban Tah Roea\";\"other\"\n\"1605509\";\"Ban Tha Rua\";\"other\"\n\"1605509\";\"Dha Roea\";\"other\"\n\"1605509\";\"Dhā Roēa\";\"other\"\n\"1605509\";\"Tha Rha\";\"other\"\n\"1605530\";\"Tha Pla\";\"main\"\n\"1605530\";\"ท่าปลา\";\"other\"\n\"1605538\";\"Thap Khlo\";\"main\"\n\"1605538\";\"Amphoe Thap Khlo\";\"other\"\n\"1605538\";\"King Amphoe Thap Khlo\";\"other\"\n\"1605538\";\"ทับคล้อ\";\"other\"\n\"1605601\";\"Tha Mai\";\"main\"\n\"1605601\";\"Amphoe Tha Mai\";\"other\"\n\"1605601\";\"Ban Tha Mai\";\"other\"\n\"1605601\";\"Talat Amphoe Tha Mai\";\"other\"\n\"1605613\";\"Tha Li\";\"main\"\n\"1605613\";\"Amphoe Tha Li\";\"other\"\n\"1605613\";\"Ban Ta Li\";\"other\"\n\"1605613\";\"Ban Tha Li\";\"other\"\n\"1605613\";\"Dhali\";\"other\"\n\"1605613\";\"Dhāli\";\"other\"\n\"1605613\";\"ท่าลี่\";\"other\"\n\"1605677\";\"Tha Bo\";\"main\"\n\"1605677\";\"Amphoe Tha Bo\";\"other\"\n\"1605677\";\"Ban Tha Bau\";\"other\"\n\"1605677\";\"Ban Tha Bo\";\"other\"\n\"1605677\";\"Mong Ta Bo\";\"other\"\n\"1605677\";\"Mueang Tha Bo\";\"other\"\n\"1605677\";\"Möng Ta Bo\";\"other\"\n\"1605677\";\"Tha Bor\";\"other\"\n\"1605677\";\"ท่าบ่อ\";\"other\"\n\"1605754\";\"Taphan Hin\";\"main\"\n\"1605754\";\"Amphoe Taphan Hin\";\"other\"\n\"1605754\";\"King Amphoe Taphan Hin\";\"other\"\n\"1605754\";\"ตะพานหิน\";\"other\"\n\"1605763\";\"Tao Ngoi\";\"main\"\n\"1605763\";\"Amphoe Tao Ngoi\";\"other\"\n\"1605763\";\"King Amphoe Tao Ngoi\";\"other\"\n\"1605763\";\"เต่างอย\";\"other\"\n\"1605843\";\"Taling Chan\";\"main\"\n\"1605843\";\"Amphoe Taling Chan\";\"other\"\n\"1605843\";\"Tahng Jan\";\"other\"\n\"1605843\";\"tlingchan\";\"other\"\n\"1605843\";\"ตลิ่งชัน\";\"other\"\n\"1605912\";\"Takhli\";\"main\"\n\"1605912\";\"Amphoe Ta Khli\";\"other\"\n\"1605912\";\"Ban Ta Khli\";\"other\"\n\"1605912\";\"Ban Takli\";\"other\"\n\"1605912\";\"Bān Tākli\";\"other\"\n\"1605912\";\"ตาคลี\";\"other\"\n\"1605957\";\"Tak Bai\";\"main\"\n\"1605957\";\"Amphoe Kampong Chehe\";\"other\"\n\"1605957\";\"Amphoe Tak Bai\";\"other\"\n\"1605957\";\"Ampur Takbai\";\"other\"\n\"1605957\";\"Ban Takbai\";\"other\"\n\"1605957\";\"Chavhay\";\"other\"\n\"1605957\";\"Chayhay\";\"other\"\n\"1605957\";\"Che He\";\"other\"\n\"1605957\";\"Kampong Chehe\";\"other\"\n\"1605957\";\"Takbar\";\"other\"\n\"1605957\";\"ตากใบ\";\"other\"\n\"1606017\";\"Suwannaphum\";\"main\"\n\"1606017\";\"Amphoe Suwanapum\";\"other\"\n\"1606017\";\"Amphoe Suwannaphum\";\"other\"\n\"1606017\";\"Amphoe Suwannphum\";\"other\"\n\"1606017\";\"Amphoe Suwarnbhum\";\"other\"\n\"1606017\";\"Ban Sa Khu\";\"other\"\n\"1606017\";\"Ban Sra Ku\";\"other\"\n\"1606017\";\"Muang Suvanapum\";\"other\"\n\"1606017\";\"Sa Khu\";\"other\"\n\"1606017\";\"Souodnapoum\";\"other\"\n\"1606017\";\"Souvanapoum\";\"other\"\n\"1606017\";\"Suvanapum\";\"other\"\n\"1606017\";\"Suwanphum\";\"other\"\n\"1606030\";\"Surin\";\"main\"\n\"1606030\";\"Changwat Surin\";\"other\"\n\"1606030\";\"Muang Sourin\";\"other\"\n\"1606030\";\"Muang Surin\";\"other\"\n\"1606030\";\"Mueang Surin\";\"other\"\n\"1606030\";\"Surindr\";\"other\"\n\"1606030\";\"Surindra\";\"other\"\n\"1606030\";\"Сурин\";\"other\"\n\"1606030\";\"สุรินทร์\";\"other\"\n\"1606033\";\"Suphan Buri\";\"main\"\n\"1606033\";\"Amphoe Muang Suphan Buri\";\"other\"\n\"1606033\";\"Ban Tha Phi Liang\";\"other\"\n\"1606033\";\"Changwat Suphan Buri\";\"other\"\n\"1606033\";\"Muang Subharn\";\"other\"\n\"1606033\";\"Muang Supan\";\"other\"\n\"1606033\";\"Muang Suphan\";\"other\"\n\"1606033\";\"Mueang Suphan Buri\";\"other\"\n\"1606033\";\"Subhan Buri\";\"other\"\n\"1606033\";\"Subharn\";\"other\"\n\"1606033\";\"Sufan Buri\";\"other\"\n\"1606033\";\"Supan\";\"other\"\n\"1606033\";\"Supanburi\";\"other\"\n\"1606033\";\"Supham Buri\";\"other\"\n\"1606033\";\"Thaphi Liang\";\"other\"\n\"1606033\";\"Суфан Бури\";\"other\"\n\"1606033\";\"สุพรรณบุรี\";\"other\"\n\"1606040\";\"Sung Noen\";\"main\"\n\"1606040\";\"Amphoe Sung Noen\";\"other\"\n\"1606040\";\"Ban Sung Noen\";\"other\"\n\"1606043\";\"Sung Men\";\"main\"\n\"1606043\";\"Amphoe Sung Men\";\"other\"\n\"1606043\";\"Ban Sung Men\";\"other\"\n\"1606043\";\"Soong Men\";\"other\"\n\"1606043\";\"Sungmen\";\"other\"\n\"1606043\";\"สูงเม่น\";\"other\"\n\"1606047\";\"Ban Su-ngai Pa Di\";\"main\"\n\"1606047\";\"Ban Suhong Padi\";\"other\"\n\"1606047\";\"Sungai Padi\";\"other\"\n\"1606047\";\"Sungei Padi\";\"other\"\n\"1606047\";\"บ้านสุไหงปาดี\";\"other\"\n\"1606050\";\"Su-ngai Kolok\";\"main\"\n\"1606050\";\"Amphoe Sungai Kolok\";\"other\"\n\"1606050\";\"Kolok\";\"other\"\n\"1606050\";\"Sungai Kolok\";\"other\"\n\"1606050\";\"Sungei Kolok\";\"other\"\n\"1606050\";\"สุไหงโก-ลก\";\"other\"\n\"1606114\";\"So Phisai\";\"main\"\n\"1606114\";\"Amphoe So Phisai\";\"other\"\n\"1606114\";\"King Amphoe So Phisai\";\"other\"\n\"1606114\";\"โซ่พิสัย\";\"other\"\n\"1606147\";\"Songkhla\";\"main\"\n\"1606147\";\"Amphoe Muang Songkhla\";\"other\"\n\"1606147\";\"Changwat Songkhla\";\"other\"\n\"1606147\";\"Monthon Nakhon Si Thamarat\";\"other\"\n\"1606147\";\"Monthon Nakhon Si Thammarat\";\"other\"\n\"1606147\";\"Muang Sawng Kla\";\"other\"\n\"1606147\";\"Muang Songkla\";\"other\"\n\"1606147\";\"Sawng Kla\";\"other\"\n\"1606147\";\"Senggora\";\"other\"\n\"1606147\";\"Singgora\";\"other\"\n\"1606147\";\"Singora\";\"other\"\n\"1606147\";\"Singorra\";\"other\"\n\"1606147\";\"Songkkhla\";\"other\"\n\"1606147\";\"Songkla\";\"other\"\n\"1606147\";\"Sung Kla\";\"other\"\n\"1606147\";\"sngkhla\";\"other\"\n\"1606147\";\"Сонгкхла\";\"other\"\n\"1606147\";\"สงขลา\";\"other\"\n\"1606167\";\"Song\";\"main\"\n\"1606167\";\"Amphoe Song\";\"other\"\n\"1606167\";\"Ban Glang\";\"other\"\n\"1606167\";\"Ban Klang\";\"other\"\n\"1606167\";\"Bān Glāng\";\"other\"\n\"1606167\";\"Mueang Song\";\"other\"\n\"1606167\";\"สอง\";\"other\"\n\"1606213\";\"Soeng Sang\";\"main\"\n\"1606213\";\"Ban Soeng Sang\";\"other\"\n\"1606228\";\"Si Thep\";\"main\"\n\"1606228\";\"Amphoe Si Thep\";\"other\"\n\"1606228\";\"King Amphoe Si Thep\";\"other\"\n\"1606228\";\"ศรีเทพ\";\"other\"\n\"1606237\";\"Si Sakhon\";\"main\"\n\"1606237\";\"Amphoe Si Sakhon\";\"other\"\n\"1606237\";\"srisakhr\";\"other\"\n\"1606237\";\"ศรีสาคร\";\"other\"\n\"1606239\";\"Si Sa Ket\";\"main\"\n\"1606239\";\"Amphoe Muang Sisaket\";\"other\"\n\"1606239\";\"Amphoe Sisaket\";\"other\"\n\"1606239\";\"Cangwat Khukhan\";\"other\"\n\"1606239\";\"Changwat Khu Khan\";\"other\"\n\"1606239\";\"Changwat Si Sa Ket\";\"other\"\n\"1606239\";\"Khukhan\";\"other\"\n\"1606239\";\"Muang Sisaket\";\"other\"\n\"1606239\";\"Muang Srisaket\";\"other\"\n\"1606239\";\"Mueang Si Sa Ket\";\"other\"\n\"1606239\";\"Si Saket\";\"other\"\n\"1606239\";\"Sisakate\";\"other\"\n\"1606239\";\"Sisaket\";\"other\"\n\"1606239\";\"Srisakesa\";\"other\"\n\"1606239\";\"Srisaket\";\"other\"\n\"1606239\";\"Си Са Кет\";\"other\"\n\"1606239\";\"ศรีสะเกษ\";\"other\"\n\"1606250\";\"Si Racha\";\"main\"\n\"1606250\";\"Amphoe Si Racha\";\"other\"\n\"1606250\";\"Amphu Sri Maha Raja\";\"other\"\n\"1606250\";\"Ban Si Racha\";\"other\"\n\"1606250\";\"Ban Sriracha\";\"other\"\n\"1606250\";\"Sri Maha Raja\";\"other\"\n\"1606250\";\"Sri Mahā Rājā\";\"other\"\n\"1606250\";\"Sriracha\";\"other\"\n\"1606250\";\"Srirachi\";\"other\"\n\"1606250\";\"ศรีราชา\";\"other\"\n\"1606270\";\"Sing Buri\";\"main\"\n\"1606270\";\"Amphoe Muang Sing Buri\";\"other\"\n\"1606270\";\"Ban Bang Phutsa\";\"other\"\n\"1606270\";\"Ban Bang Putsa\";\"other\"\n\"1606270\";\"Bang Phutsa\";\"other\"\n\"1606270\";\"Changwat Sing Buri\";\"other\"\n\"1606270\";\"Muang Sing\";\"other\"\n\"1606270\";\"Mueang Sing Buri\";\"other\"\n\"1606270\";\"Sing\";\"other\"\n\"1606270\";\"Singburi\";\"other\"\n\"1606270\";\"Singha Buri\";\"other\"\n\"1606270\";\"Синг Бури\";\"other\"\n\"1606270\";\"สิงห์บุรี\";\"other\"\n\"1606314\";\"Si Chomphu\";\"main\"\n\"1606314\";\"Amphoe Si Chomphu\";\"other\"\n\"1606314\";\"King Amphoe Si Chomphu\";\"other\"\n\"1606314\";\"สีชมพู\";\"other\"\n\"1606316\";\"Si Chiang Mai\";\"main\"\n\"1606316\";\"Amphoe Si Chiang Mai\";\"other\"\n\"1606316\";\"Ban Chiang Mai\";\"other\"\n\"1606316\";\"Ban Si Chiang Mai\";\"other\"\n\"1606316\";\"Sri Chiang Mai\";\"other\"\n\"1606323\";\"Si Bun Ruang\";\"main\"\n\"1606323\";\"Amphoe Si Bun Ruang\";\"other\"\n\"1606343\";\"Seka\";\"main\"\n\"1606343\";\"Amphoe Seka\";\"other\"\n\"1606343\";\"King Amphoe Seka\";\"other\"\n\"1606343\";\"เซกา\";\"other\"\n\"1606350\";\"Sawang Daen Din\";\"main\"\n\"1606350\";\"Amphoe Sawang Daen Din\";\"other\"\n\"1606350\";\"Ban Han\";\"other\"\n\"1606350\";\"Mueang Sawang Daen Din\";\"other\"\n\"1606350\";\"Sawang Din Daen\";\"other\"\n\"1606350\";\"สว่างแดนดิน\";\"other\"\n\"1606376\";\"Satun\";\"main\"\n\"1606376\";\"Changwat Satun\";\"other\"\n\"1606376\";\"Satul\";\"other\"\n\"1606376\";\"Setul\";\"other\"\n\"1606376\";\"Сатун\";\"other\"\n\"1606376\";\"สตูล\";\"other\"\n\"1606378\";\"Satuk\";\"main\"\n\"1606378\";\"Amphoe Satuk\";\"other\"\n\"1606378\";\"So Tuk\";\"other\"\n\"1606386\";\"Sattahip\";\"main\"\n\"1606386\";\"Ban Sata Hib\";\"other\"\n\"1606386\";\"Ban Satahip\";\"other\"\n\"1606386\";\"Ban Sattahip\";\"other\"\n\"1606386\";\"King Amphoe Sattahip\";\"other\"\n\"1606386\";\"Satahib\";\"other\"\n\"1606386\";\"Sattaheeb\";\"other\"\n\"1606386\";\"Sattaheep\";\"other\"\n\"1606386\";\"Sattahib\";\"other\"\n\"1606386\";\"Sattahiep\";\"other\"\n\"1606386\";\"สัตหีบ\";\"other\"\n\"1606418\";\"Saraburi\";\"main\"\n\"1606418\";\"Ban Pak Phrieo\";\"other\"\n\"1606418\";\"Changwat Sara Buri\";\"other\"\n\"1606418\";\"Muang Sara Buri\";\"other\"\n\"1606418\";\"Pak Phrieu\";\"other\"\n\"1606418\";\"Pak Phrio\";\"other\"\n\"1606418\";\"Pak Preo\";\"other\"\n\"1606418\";\"Sita\";\"other\"\n\"1606418\";\"Sraburi\";\"other\"\n\"1606586\";\"Samut Songkhram\";\"main\"\n\"1606586\";\"Changwat Samut Songkkhram\";\"other\"\n\"1606586\";\"Mae Khlaung\";\"other\"\n\"1606586\";\"Mae Klong\";\"other\"\n\"1606586\";\"Maikulaung\";\"other\"\n\"1606586\";\"Maklong\";\"other\"\n\"1606586\";\"Me Klawng\";\"other\"\n\"1606586\";\"Me-klohng\";\"other\"\n\"1606586\";\"Meh Klong\";\"other\"\n\"1606586\";\"Meklong\";\"other\"\n\"1606586\";\"Muang Samudh Songgram\";\"other\"\n\"1606586\";\"Muang Samut Sang Khran\";\"other\"\n\"1606586\";\"Muang Samut Songgram\";\"other\"\n\"1606586\";\"Mueang Samut Songkhram\";\"other\"\n\"1606586\";\"Samudh Songgram\";\"other\"\n\"1606586\";\"Samudh Sŏnggrām\";\"other\"\n\"1606586\";\"Samut Songkram\";\"other\"\n\"1606586\";\"Smut Songkhram\";\"other\"\n\"1606586\";\"สมุทรสงคราม\";\"other\"\n\"1606588\";\"Samut Sakhon\";\"main\"\n\"1606588\";\"Ban Maha Chai\";\"other\"\n\"1606588\";\"Ban Tachin\";\"other\"\n\"1606588\";\"Changwat Samut Sakhon\";\"other\"\n\"1606588\";\"Dha-chin\";\"other\"\n\"1606588\";\"Mahachai\";\"other\"\n\"1606588\";\"Muang Samudh Sagorn\";\"other\"\n\"1606588\";\"Muang Samut Sakawn\";\"other\"\n\"1606588\";\"Muang Samut Sakhon\";\"other\"\n\"1606588\";\"Samudh Sagorn\";\"other\"\n\"1606588\";\"Smutsakhon\";\"other\"\n\"1606588\";\"Taachin\";\"other\"\n\"1606588\";\"Tachin\";\"other\"\n\"1606588\";\"Tanchin\";\"other\"\n\"1606588\";\"Tha Chin\";\"other\"\n\"1606588\";\"สมุทรสาคร\";\"other\"\n\"1606590\";\"Samut Prakan\";\"main\"\n\"1606590\";\"Amphoe Mueang Samut Prakan\";\"other\"\n\"1606590\";\"Ban Pak Nam\";\"other\"\n\"1606590\";\"Changwat Samut Prakan\";\"other\"\n\"1606590\";\"Muang Samudh Prakarn\";\"other\"\n\"1606590\";\"Muang Samut Prakan\";\"other\"\n\"1606590\";\"Muang Samut Prakon\";\"other\"\n\"1606590\";\"Paakunamu\";\"other\"\n\"1606590\";\"Pakham\";\"other\"\n\"1606590\";\"Paknam\";\"other\"\n\"1606590\";\"Samudh Prakarn\";\"other\"\n\"1606590\";\"Samut\";\"other\"\n\"1606590\";\"Samutpraken\";\"other\"\n\"1606590\";\"Smutprakan\";\"other\"\n\"1606590\";\"samuttopurakan\";\"other\"\n\"1606590\";\"xaphex meuxng smuthrprakar\";\"other\"\n\"1606590\";\"Самут Пракан\";\"other\"\n\"1606590\";\"อำเภอเมืองสมุทรปราการ\";\"other\"\n\"1606590\";\"サムットプラーカーン\";\"other\"\n\"1606638\";\"Sam Phran\";\"main\"\n\"1606638\";\"Amphoe Sam Phran\";\"other\"\n\"1606638\";\"Ban Sam Phran\";\"other\"\n\"1606638\";\"สามพราน\";\"other\"\n\"1606640\";\"Samphanthawong\";\"main\"\n\"1606640\";\"samphanthwngs\";\"other\"\n\"1606640\";\"สัมพันธวงศ์\";\"other\"\n\"1606667\";\"Sam Ngam\";\"main\"\n\"1606667\";\"Amphoe Sam Ngam\";\"other\"\n\"1606667\";\"Ban Sam Ngam\";\"other\"\n\"1606667\";\"สามง่าม\";\"other\"\n\"1606790\";\"Sakon Nakhon\";\"main\"\n\"1606790\";\"Amphoe Muang Sakhon Nakhon\";\"other\"\n\"1606790\";\"Ban That Choeng Chum\";\"other\"\n\"1606790\";\"Changwat Muang Sakhon Nakhon\";\"other\"\n\"1606790\";\"Changwat Sakon Nakhon\";\"other\"\n\"1606790\";\"Muang Sakol Nakorn\";\"other\"\n\"1606790\";\"Muang Sakon Lakon\";\"other\"\n\"1606790\";\"Muang Sakon Nakawn\";\"other\"\n\"1606790\";\"Muang Sakon Nakon\";\"other\"\n\"1606790\";\"Mueang Sakon Nakhon\";\"other\"\n\"1606790\";\"Sakhon Nakhon\";\"other\"\n\"1606790\";\"Sakol\";\"other\"\n\"1606790\";\"Sakol Nagorn\";\"other\"\n\"1606790\";\"Sakol Nakorn\";\"other\"\n\"1606790\";\"Sakon Nakawn\";\"other\"\n\"1606790\";\"Sakon Nakhaun\";\"other\"\n\"1606790\";\"Sakon Nakorn\";\"other\"\n\"1606790\";\"Skol Nakon\";\"other\"\n\"1606790\";\"Thatchoengchum\";\"other\"\n\"1606790\";\"สกลนคร\";\"other\"\n\"1606807\";\"Sa Kaeo\";\"main\"\n\"1606807\";\"Amphoe Sa Kaeo\";\"other\"\n\"1606807\";\"Ban Sa Kaeo\";\"other\"\n\"1606807\";\"Mueang Sa Kaeo\";\"other\"\n\"1606807\";\"Sa Kaew\";\"other\"\n\"1606807\";\"Sa Keo\";\"other\"\n\"1606807\";\"Sakaeo\";\"other\"\n\"1606807\";\"Sara Kaeo\";\"other\"\n\"1606807\";\"Srakeo\";\"other\"\n\"1606807\";\"สระแก้ว\";\"other\"\n\"1606851\";\"Sai Buri\";\"main\"\n\"1606851\";\"Amphoe Sai Buri\";\"other\"\n\"1606851\";\"Amphoe Taluban\";\"other\"\n\"1606851\";\"Ban Taluban\";\"other\"\n\"1606851\";\"Muang Saiburi\";\"other\"\n\"1606851\";\"Taluban\";\"other\"\n\"1606851\";\"Telupin\";\"other\"\n\"1606939\";\"Sadao\";\"main\"\n\"1606939\";\"Ban Sadao\";\"other\"\n\"1606939\";\"Садао\";\"other\"\n\"1606944\";\"Saba Yoi\";\"main\"\n\"1606944\";\"Ban Buyong\";\"other\"\n\"1606944\";\"Bu Yong\";\"other\"\n\"1606944\";\"sabayxy\";\"other\"\n\"1606944\";\"สะบ้าย้อย\";\"other\"\n\"1606961\";\"Rueso\";\"main\"\n\"1606961\";\"Amphoe Ruso\";\"other\"\n\"1606961\";\"Ban Ruasau\";\"other\"\n\"1606961\";\"King Amphoe Tanyong Mat\";\"other\"\n\"1606961\";\"Resok\";\"other\"\n\"1606961\";\"Roe Sau\";\"other\"\n\"1606961\";\"Rusaw\";\"other\"\n\"1606961\";\"Ruso\";\"other\"\n\"1606961\";\"Tanyong Mat\";\"other\"\n\"1606961\";\"ruxseaa\";\"other\"\n\"1606961\";\"รือเสาะ\";\"other\"\n\"1606983\";\"Rong Kwang\";\"main\"\n\"1606983\";\"Amphoe Rong Kwang\";\"other\"\n\"1606983\";\"Ban Raung Gwang\";\"other\"\n\"1606983\";\"Ban Rong Kiem\";\"other\"\n\"1606983\";\"Ban Rong Kwang\";\"other\"\n\"1606983\";\"Bān Raung Gwang\";\"other\"\n\"1606983\";\"King Amphoe Rong Kwang\";\"other\"\n\"1606983\";\"Raung Kwang\";\"other\"\n\"1606983\";\"Rohngkwang\";\"other\"\n\"1606983\";\"Rōhngkwāng\";\"other\"\n\"1606983\";\"ร้องกวาง\";\"other\"\n\"1607001\";\"Roi Et\";\"main\"\n\"1607001\";\"Amphoe Muang Roi Et\";\"other\"\n\"1607001\";\"Changwat Muang Roi Et\";\"other\"\n\"1607001\";\"Changwat Roi Et\";\"other\"\n\"1607001\";\"Muang Roi Et\";\"other\"\n\"1607001\";\"Rio Et\";\"other\"\n\"1607001\";\"Roi Ech\";\"other\"\n\"1607001\";\"Roi Eht\";\"other\"\n\"1607001\";\"Roi-ed\";\"other\"\n\"1607001\";\"Рои Эт\";\"other\"\n\"1607017\";\"Rayong\";\"main\"\n\"1607017\";\"Muang Ra-yohng\";\"other\"\n\"1607017\";\"Muang Rayong\";\"other\"\n\"1607017\";\"Rajong\";\"other\"\n\"1607017\";\"Rayaung\";\"other\"\n\"1607017\";\"Rayohng\";\"other\"\n\"1607017\";\"Районг\";\"other\"\n\"1607055\";\"Rat Burana\";\"main\"\n\"1607055\";\"Amphoe Rat Burana\";\"other\"\n\"1607055\";\"Raiabuna\";\"other\"\n\"1607055\";\"Rasdorn Burana\";\"other\"\n\"1607055\";\"Ratburanah\";\"other\"\n\"1607055\";\"ราษฎร์บูรณะ\";\"other\"\n\"1607062\";\"Rasi Salai\";\"main\"\n\"1607062\";\"Amphoe Gong\";\"other\"\n\"1607062\";\"Amphoe Khong\";\"other\"\n\"1607062\";\"Amphoe Muang Khong\";\"other\"\n\"1607062\";\"Amphoe Rasi Saila\";\"other\"\n\"1607062\";\"Amphoe Rasi Salai\";\"other\"\n\"1607062\";\"Ban Muang Khong\";\"other\"\n\"1607062\";\"Muang Khong\";\"other\"\n\"1607062\";\"Muang Si Chalai\";\"other\"\n\"1607062\";\"Muang Sisalai\";\"other\"\n\"1607062\";\"Muang Sri Chalai\";\"other\"\n\"1607062\";\"Rasi Saila\";\"other\"\n\"1607062\";\"Sisalai\";\"other\"\n\"1607062\";\"ราษีไศล\";\"other\"\n\"1607068\";\"Ranot\";\"main\"\n\"1607068\";\"Amphoe Ranot\";\"other\"\n\"1607068\";\"Ban Rahnot\";\"other\"\n\"1607068\";\"Ban Ranok\";\"other\"\n\"1607068\";\"Ban Ranot\";\"other\"\n\"1607068\";\"Cha Thing Phra\";\"other\"\n\"1607068\";\"King Amphoe Cha Thing Phra\";\"other\"\n\"1607068\";\"Rahnot\";\"other\"\n\"1607068\";\"Ranod\";\"other\"\n\"1607083\";\"Ra-ngae\";\"main\"\n\"1607083\";\"Amphoe Rangae\";\"other\"\n\"1607083\";\"Ban Tanyong Mat\";\"other\"\n\"1607083\";\"Kampong Bangae\";\"other\"\n\"1607083\";\"Kampong Bangek\";\"other\"\n\"1607083\";\"Rangek\";\"other\"\n\"1607083\";\"Tanyong Mas\";\"other\"\n\"1607083\";\"Tanyong Mat\";\"other\"\n\"1607083\";\"ระแงะ\";\"other\"\n\"1607097\";\"Raman\";\"main\"\n\"1607097\";\"Amphoe Kotabaru\";\"other\"\n\"1607097\";\"Amphoe Raman\";\"other\"\n\"1607097\";\"Ban Kauta Baru\";\"other\"\n\"1607097\";\"Ban Kauta Bāru\";\"other\"\n\"1607097\";\"Ban Kota Baru\";\"other\"\n\"1607097\";\"Kota Baru\";\"other\"\n\"1607097\";\"Kota Bharu\";\"other\"\n\"1607097\";\"raman\";\"other\"\n\"1607097\";\"รามัน\";\"other\"\n\"1607161\";\"Pueai Noi\";\"main\"\n\"1607161\";\"Amphoe Phueai Noi\";\"other\"\n\"1607161\";\"King Amphoe Phueai Noi\";\"other\"\n\"1607161\";\"Puai Noi\";\"other\"\n\"1607161\";\"เปือยน้อย\";\"other\"\n\"1607244\";\"Prasat\";\"main\"\n\"1607244\";\"Amphoe Prasat\";\"other\"\n\"1607244\";\"ปราสาท\";\"other\"\n\"1607257\";\"Prakhon Chai\";\"main\"\n\"1607257\";\"Amphoe Prakhon Chai\";\"other\"\n\"1607257\";\"Amphoe Talung\";\"other\"\n\"1607257\";\"Ban Pradonchai\";\"other\"\n\"1607257\";\"Makong Xai\";\"other\"\n\"1607257\";\"Muang Makong Se\";\"other\"\n\"1607257\";\"Muang Makong Xai\";\"other\"\n\"1607257\";\"Muang Nakawn Chai\";\"other\"\n\"1607257\";\"Muang Nakhaun Chai\";\"other\"\n\"1607257\";\"Muang Nakhon Chai\";\"other\"\n\"1607257\";\"Muang Pa Khon Thai\";\"other\"\n\"1607257\";\"Pakenejai\";\"other\"\n\"1607257\";\"Pradonchai\";\"other\"\n\"1607257\";\"Prakhan Chai\";\"other\"\n\"1607257\";\"Talung\";\"other\"\n\"1607280\";\"Prachin Buri\";\"main\"\n\"1607280\";\"Amphoe Muang Prachin Buri\";\"other\"\n\"1607280\";\"Changwat Prachin Buri\";\"other\"\n\"1607280\";\"Muang Prachin Buri\";\"other\"\n\"1607280\";\"Mueang Prachin Buri\";\"other\"\n\"1607280\";\"Pachim\";\"other\"\n\"1607280\";\"Prachim\";\"other\"\n\"1607280\";\"Prachin\";\"other\"\n\"1607280\";\"ปราจีนบุรี\";\"other\"\n\"1607324\";\"Pong\";\"main\"\n\"1607324\";\"Amphoe Ban Meung\";\"other\"\n\"1607324\";\"Amphoe Ban Muang\";\"other\"\n\"1607324\";\"Amphoe Pong\";\"other\"\n\"1607324\";\"Ban Muang\";\"other\"\n\"1607324\";\"Ban Muang Pong\";\"other\"\n\"1607324\";\"Muang Pong\";\"other\"\n\"1607327\";\"Pom Prap Sattru Phai\";\"main\"\n\"1607327\";\"Pom Prap\";\"other\"\n\"1607327\";\"pxmprabsatruphay\";\"other\"\n\"1607327\";\"ป้อมปราบศัตรูพ่าย\";\"other\"\n\"1607418\";\"Phu Wiang\";\"main\"\n\"1607418\";\"Amphoe Bhuwieng\";\"other\"\n\"1607418\";\"Amphoe Phu Wiang\";\"other\"\n\"1607418\";\"Ban Nai Muang\";\"other\"\n\"1607418\";\"Muang Pou Vieng\";\"other\"\n\"1607418\";\"Muang Pu Wieng\";\"other\"\n\"1607418\";\"Nai Muang\";\"other\"\n\"1607418\";\"Pou Vieng\";\"other\"\n\"1607418\";\"ภูเวียง\";\"other\"\n\"1607424\";\"Phu Ruea\";\"main\"\n\"1607424\";\"Amphoe Phu Rua\";\"other\"\n\"1607424\";\"King Amphoe Phu Rua\";\"other\"\n\"1607424\";\"Phu Rua\";\"other\"\n\"1607424\";\"ภูเรือ\";\"other\"\n\"1607433\";\"Phu Luang\";\"main\"\n\"1607433\";\"Amphoe Phu Luang\";\"other\"\n\"1607433\";\"King Amphoe Phu Luang\";\"other\"\n\"1607433\";\"ภูหลวง\";\"other\"\n\"1607435\";\"Phu Kradueng\";\"main\"\n\"1607435\";\"Amphoe Phu Kradueng\";\"other\"\n\"1607435\";\"Ban Wong Wian\";\"other\"\n\"1607435\";\"King Amphoe Phu Kradueng\";\"other\"\n\"1607435\";\"Phu Kradung\";\"other\"\n\"1607435\";\"ภูกระดึง\";\"other\"\n\"1607439\";\"Phu Khieo\";\"main\"\n\"1607439\";\"Amphoe Phu Khieo\";\"other\"\n\"1607439\";\"Ban Phak Pang\";\"other\"\n\"1607439\";\"Pho Khieo\";\"other\"\n\"1607468\";\"Phrom Phiram\";\"main\"\n\"1607468\";\"Amphoe Phrom Phiram\";\"other\"\n\"1607468\";\"Ban Grap Phuang\";\"other\"\n\"1607468\";\"พรหมพิราม\";\"other\"\n\"1607479\";\"Phra Yuen\";\"main\"\n\"1607479\";\"Amphoe Phra Yuen\";\"other\"\n\"1607479\";\"Ban Phra Yun\";\"other\"\n\"1607479\";\"King Amphoe Phra Yuen\";\"other\"\n\"1607479\";\"Phra Yun\";\"other\"\n\"1607479\";\"พระยืน\";\"other\"\n\"1607508\";\"Phra Pradaeng\";\"main\"\n\"1607508\";\"Amphoe Bhra Pradeng\";\"other\"\n\"1607508\";\"Amphoe Bhra Pradēng\";\"other\"\n\"1607508\";\"Amphoe Phra Padaeng\";\"other\"\n\"1607508\";\"Amphoe Phra Pradaeng\";\"other\"\n\"1607508\";\"Bhra Pradeng\";\"other\"\n\"1607508\";\"Khoan Khan\";\"other\"\n\"1607508\";\"Muang Nagorn Khoean Khan\";\"other\"\n\"1607508\";\"Muang Nakawn Khoan Khan\";\"other\"\n\"1607508\";\"Muang Nakhon Khaun Khan\";\"other\"\n\"1607508\";\"Muang Nakhon Khuan Khan\";\"other\"\n\"1607508\";\"Nakhon Khuan Khan\";\"other\"\n\"1607508\";\"Nakhon Khuen Khan\";\"other\"\n\"1607508\";\"purapuraden jun\";\"other\"\n\"1607508\";\"พระประแดง\";\"other\"\n\"1607508\";\"อำเภอพระประแดง\";\"other\"\n\"1607508\";\"プラプラデーン郡\";\"other\"\n\"1607512\";\"Phra Phutthabat\";\"main\"\n\"1607512\";\"Amphoe Phra Phutthabat\";\"other\"\n\"1607512\";\"Ban Khun Khlon\";\"other\"\n\"1607512\";\"Bhra Bhudhabadh\";\"other\"\n\"1607512\";\"Bhra Bhudhābadh\";\"other\"\n\"1607512\";\"Khun Khlon\";\"other\"\n\"1607512\";\"King Amphoe Phra Phutthabat\";\"other\"\n\"1607512\";\"King Phra Phutthabat\";\"other\"\n\"1607512\";\"Phra Phutthabet\";\"other\"\n\"1607532\";\"Phra Nakhon Si Ayutthaya\";\"main\"\n\"1607532\";\"Ajuthaja\";\"other\"\n\"1607532\";\"Ajutija\";\"other\"\n\"1607532\";\"Amphoe Phra Nakhon Si Ayutthaya\";\"other\"\n\"1607532\";\"Ayouthia\";\"other\"\n\"1607532\";\"Ayudhya\";\"other\"\n\"1607532\";\"Ayuthaya\";\"other\"\n\"1607532\";\"Ayuthia\";\"other\"\n\"1607532\";\"Ayuthya\";\"other\"\n\"1607532\";\"Ayutia\";\"other\"\n\"1607532\";\"Ayutthaya\";\"other\"\n\"1607532\";\"Ayutthaya - phrankhrsrixyuthya\";\"other\"\n\"1607532\";\"Ayutthaya - พระนครศรีอยุธยา\";\"other\"\n\"1607532\";\"Ayutthia\";\"other\"\n\"1607532\";\"Ayutya\";\"other\"\n\"1607532\";\"Changwat Phra Nakhon Si Ayutthaya\";\"other\"\n\"1607532\";\"Krung Kao\";\"other\"\n\"1607532\";\"Monthon Ayutthaya\";\"other\"\n\"1607532\";\"Phra Nakhon Si Ax Ayutthaya\";\"other\"\n\"1607532\";\"ayutaya\";\"other\"\n\"1607532\";\"xyuthya\";\"other\"\n\"1607532\";\"Аютия\";\"other\"\n\"1607532\";\"พระนครศรีอยุธยา\";\"other\"\n\"1607532\";\"อยุธยา\";\"other\"\n\"1607532\";\"アユタヤ\";\"other\"\n\"1607542\";\"Phra Khanong\";\"main\"\n\"1607542\";\"Amphoe Phra Khanong\";\"other\"\n\"1607542\";\"Bhra Khanong\";\"other\"\n\"1607542\";\"Phrakanhong\";\"other\"\n\"1607542\";\"Phrakhnong\";\"other\"\n\"1607542\";\"Prakanong\";\"other\"\n\"1607542\";\"phra khi nng\";\"other\"\n\"1607542\";\"พระไขนง\";\"other\"\n\"1607544\";\"Phrai Bung\";\"main\"\n\"1607552\";\"Phrae\";\"main\"\n\"1607552\";\"Amphoe Muang Phrae\";\"other\"\n\"1607552\";\"Amphoe Mueang Phrae\";\"other\"\n\"1607552\";\"Bhre\";\"other\"\n\"1607552\";\"Changwat Muang Bhre\";\"other\"\n\"1607552\";\"Changwat Muang Bhré\";\"other\"\n\"1607552\";\"Changwat Muang Phrae\";\"other\"\n\"1607552\";\"Changwat Phrae\";\"other\"\n\"1607552\";\"Muang Bhre\";\"other\"\n\"1607552\";\"Muang Phrae\";\"other\"\n\"1607552\";\"Muang Pre\";\"other\"\n\"1607552\";\"Mueang Phrae\";\"other\"\n\"1607552\";\"Phrea\";\"other\"\n\"1607552\";\"Pkhrae\";\"other\"\n\"1607552\";\"Prae\";\"other\"\n\"1607552\";\"Pre\";\"other\"\n\"1607552\";\"Пхрае\";\"other\"\n\"1607552\";\"แพร่\";\"other\"\n\"1607579\";\"Pho Thong\";\"main\"\n\"1607579\";\"Amphoe Pho Thong\";\"other\"\n\"1607579\";\"Ban Khlong Sarai\";\"other\"\n\"1607579\";\"Bho Dhohng\";\"other\"\n\"1607579\";\"Khlaung Sarai\";\"other\"\n\"1607584\";\"Pho Thale\";\"main\"\n\"1607584\";\"Amphoe Ban Khlan\";\"other\"\n\"1607584\";\"Amphoe Pho Thale\";\"other\"\n\"1607584\";\"โพทะเล\";\"other\"\n\"1607600\";\"Phon Thong\";\"main\"\n\"1607600\";\"Amphoe Phon Thong\";\"other\"\n\"1607600\";\"Ban Waeng\";\"other\"\n\"1607600\";\"Phon Tong\";\"other\"\n\"1607600\";\"Waeng\";\"other\"\n\"1607606\";\"Phon Phisai\";\"main\"\n\"1607606\";\"Amphoe Bhonbhisai\";\"other\"\n\"1607606\";\"Amphoe Phon Phisai\";\"other\"\n\"1607606\";\"Amphoe Pon Pi Sai\";\"other\"\n\"1607606\";\"Ban Bom Nang\";\"other\"\n\"1607606\";\"Ban Chum Phon\";\"other\"\n\"1607606\";\"Ban Chumpol Muang\";\"other\"\n\"1607606\";\"Chumphon\";\"other\"\n\"1607606\";\"Muang Pon Pi Sai\";\"other\"\n\"1607606\";\"Muang Ponpissay\";\"other\"\n\"1607606\";\"Pon Pi Sal\";\"other\"\n\"1607606\";\"Tiom Nang\";\"other\"\n\"1607606\";\"โพนพิสัย\";\"other\"\n\"1607615\";\"Phon Charoen\";\"main\"\n\"1607617\";\"Phon\";\"main\"\n\"1607617\";\"Amphoe Phon\";\"other\"\n\"1607617\";\"Ban Muang Phon\";\"other\"\n\"1607617\";\"Moengphol\";\"other\"\n\"1607617\";\"Mong Pol\";\"other\"\n\"1607617\";\"Muang Phon\";\"other\"\n\"1607617\";\"Möng Pol\";\"other\"\n\"1607617\";\"พล\";\"other\"\n\"1607635\";\"Pho Chai\";\"main\"\n\"1607708\";\"Phitsanulok\";\"main\"\n\"1607708\";\"Amphoe Muang Phitsanulok\";\"other\"\n\"1607708\";\"Amphoe Mueang Phitsanulok\";\"other\"\n\"1607708\";\"Bhisanulok\";\"other\"\n\"1607708\";\"Bisanulok\";\"other\"\n\"1607708\";\"Bisnulok\";\"other\"\n\"1607708\";\"Changwat Phitsanulok\";\"other\"\n\"1607708\";\"Muang Phitsanulok\";\"other\"\n\"1607708\";\"Muang Pitsanulok\";\"other\"\n\"1607708\";\"Philtsanuloke\";\"other\"\n\"1607708\";\"Phisanulauk\";\"other\"\n\"1607708\";\"Pisanuloke\";\"other\"\n\"1607708\";\"Pitsanoulok\";\"other\"\n\"1607708\";\"Pitsanulok\";\"other\"\n\"1607708\";\"Pitsanuloke\";\"other\"\n\"1607708\";\"Pkhitsanulok\";\"other\"\n\"1607708\";\"Пхитсанулок\";\"other\"\n\"1607708\";\"พิษณุโลก\";\"other\"\n\"1607708\";\"เมืองพิษณุโลก\";\"other\"\n\"1607716\";\"Phimai\";\"main\"\n\"1607716\";\"Amphoe Muang Phimai\";\"other\"\n\"1607716\";\"Amphoe Phimai\";\"other\"\n\"1607716\";\"Ban Nai Muang\";\"other\"\n\"1607716\";\"Ban Nai Wiang\";\"other\"\n\"1607716\";\"Moeang Bhimai\";\"other\"\n\"1607716\";\"Moeang Bhimaj\";\"other\"\n\"1607716\";\"Muang Phimai\";\"other\"\n\"1607716\";\"Muang Pi Mai\";\"other\"\n\"1607716\";\"Muang Pi Me\";\"other\"\n\"1607716\";\"Nai Muang\";\"other\"\n\"1607716\";\"Pi Mai\";\"other\"\n\"1607716\";\"พิมาย\";\"other\"\n\"1607725\";\"Phichit\";\"main\"\n\"1607725\";\"Amphoe Muang Phichit\";\"other\"\n\"1607725\";\"Amphoe Ta Luang\";\"other\"\n\"1607725\";\"Amphoe Tha Luang\";\"other\"\n\"1607725\";\"Ban Nai Muang\";\"other\"\n\"1607725\";\"Bhichit\";\"other\"\n\"1607725\";\"Changwat Muang Bichit\";\"other\"\n\"1607725\";\"Changwat Muang Phichit\";\"other\"\n\"1607725\";\"Changwat Phichit\";\"other\"\n\"1607725\";\"Muang Bhichit\";\"other\"\n\"1607725\";\"Muang Phichit\";\"other\"\n\"1607725\";\"Muang Phijit\";\"other\"\n\"1607725\";\"Muang Pitchit\";\"other\"\n\"1607725\";\"Okhaburi\";\"other\"\n\"1607725\";\"Pichit\";\"other\"\n\"1607725\";\"Pkhichit\";\"other\"\n\"1607725\";\"Sra Luang\";\"other\"\n\"1607725\";\"Tha Luang\";\"other\"\n\"1607725\";\"Пхичит\";\"other\"\n\"1607725\";\"พิจิตร\";\"other\"\n\"1607728\";\"Phichai\";\"main\"\n\"1607728\";\"Amphoe Phichai\";\"other\"\n\"1607728\";\"Bhijai\";\"other\"\n\"1607728\";\"Muang Phichai\";\"other\"\n\"1607728\";\"Muang Pichai\";\"other\"\n\"1607728\";\"Muang Pichāi\";\"other\"\n\"1607728\";\"พิชัย\";\"other\"\n\"1607730\";\"Phibun Mangsahan\";\"main\"\n\"1607730\";\"Amphoe Bhimunmangsaharn\";\"other\"\n\"1607730\";\"Amphoe Phibun Mangsahan\";\"other\"\n\"1607730\";\"Amphoe Phimun Mangahan\";\"other\"\n\"1607730\";\"Amphoe Phimun Mangsahan\";\"other\"\n\"1607730\";\"Ban Phimun\";\"other\"\n\"1607730\";\"Muang Phi Moun\";\"other\"\n\"1607730\";\"Muang Pimour\";\"other\"\n\"1607730\";\"Phi Moun\";\"other\"\n\"1607730\";\"Phibun Mangdshan\";\"other\"\n\"1607730\";\"Phimun\";\"other\"\n\"1607730\";\"Phimun Mangsahan\";\"other\"\n\"1607730\";\"Phinum Mangsahan\";\"other\"\n\"1607730\";\"Pibulmangsahan\";\"other\"\n\"1607730\";\"Pimool\";\"other\"\n\"1607730\";\"Pimul\";\"other\"\n\"1607730\";\"Pimun\";\"other\"\n\"1607737\";\"Phetchabun\";\"main\"\n\"1607737\";\"Amphoe Muang Phetchabun\";\"other\"\n\"1607737\";\"Bhejaburn\";\"other\"\n\"1607737\";\"Changwat Muang Bheia Burn\";\"other\"\n\"1607737\";\"Changwat Muang Bhĕia Būrn\";\"other\"\n\"1607737\";\"Changwat Muang Phetchabun\";\"other\"\n\"1607737\";\"Changwat Phetchabun\";\"other\"\n\"1607737\";\"Muang Bheia Burn\";\"other\"\n\"1607737\";\"Muang Petchboun\";\"other\"\n\"1607737\";\"Muang Phecha Bun\";\"other\"\n\"1607737\";\"Muang Phetchabun\";\"other\"\n\"1607737\";\"Pechabun\";\"other\"\n\"1607737\";\"Petchabun\";\"other\"\n\"1607737\";\"Pkhetchabun\";\"other\"\n\"1607737\";\"Пхетчабун\";\"other\"\n\"1607752\";\"Phayuha Khiri\";\"main\"\n\"1607752\";\"Amphoe Bhayuha Giri\";\"other\"\n\"1607752\";\"Amphoe Peiyua Kiri\";\"other\"\n\"1607752\";\"Amphoe Phayuhakhiri\";\"other\"\n\"1607752\";\"Ban Phayu Dean\";\"other\"\n\"1607752\";\"Ban Phayuhadaen\";\"other\"\n\"1607752\";\"Bhayuha Giri\";\"other\"\n\"1607752\";\"Payuha\";\"other\"\n\"1607752\";\"Phayu Daen\";\"other\"\n\"1607752\";\"Phayu Kiri\";\"other\"\n\"1607752\";\"Phayua Khiri\";\"other\"\n\"1607752\";\"พยุหะคีรี\";\"other\"\n\"1607763\";\"Phayakkhaphum Phisai\";\"main\"\n\"1607763\";\"Amphoe Phayakkhaphum Phisai\";\"other\"\n\"1607763\";\"Amphu Piak Puin Pisai\";\"other\"\n\"1607763\";\"Ban Palan\";\"other\"\n\"1607763\";\"Muong Kantigavise\";\"other\"\n\"1607763\";\"Palan\";\"other\"\n\"1607763\";\"Phayak Phu Phisai\";\"other\"\n\"1607779\";\"Phatthalung\";\"main\"\n\"1607779\";\"Amphoe Muang Phatthalung\";\"other\"\n\"1607779\";\"Badalung\";\"other\"\n\"1607779\";\"Bhadhalung\";\"other\"\n\"1607779\";\"Changwat Phattalung\";\"other\"\n\"1607779\";\"Changwat Phatthalung\";\"other\"\n\"1607779\";\"Muang Patalung\";\"other\"\n\"1607779\";\"Patalung\";\"other\"\n\"1607779\";\"Phatalung\";\"other\"\n\"1607779\";\"Phathalung\";\"other\"\n\"1607779\";\"Phattalung\";\"other\"\n\"1607779\";\"Pkhetchabun\";\"other\"\n\"1607779\";\"Пхетчабун\";\"other\"\n\"1607779\";\"พัทลุง\";\"other\"\n\"1607782\";\"Phasi Charoen\";\"main\"\n\"1607782\";\"Amphoe Phasi Charoen\";\"other\"\n\"1607782\";\"Bhasi Chareun\";\"other\"\n\"1607782\";\"Paseecharoen\";\"other\"\n\"1607782\";\"ภาษีเจริญ\";\"other\"\n\"1607793\";\"Phan Thong\";\"main\"\n\"1607793\";\"Amphoe Phan Thong\";\"other\"\n\"1607801\";\"Phanom Sarakham\";\"main\"\n\"1607801\";\"Amphoe Phanom Sarakham\";\"other\"\n\"1607801\";\"Amphu Panom Sarakam\";\"other\"\n\"1607801\";\"Ban Phanom Sarakham\";\"other\"\n\"1607801\";\"Bhanom Saragam\";\"other\"\n\"1607812\";\"Phanna Nikhom\";\"main\"\n\"1607812\";\"Amphoe Muang Phannanikhom\";\"other\"\n\"1607812\";\"Amphoe Phannanikhom\";\"other\"\n\"1607812\";\"Amphoe Phannikhom\";\"other\"\n\"1607812\";\"Bharnnani\";\"other\"\n\"1607812\";\"Muang Pana Nigom\";\"other\"\n\"1607812\";\"Muang Phannanikhom\";\"other\"\n\"1607812\";\"Pana Nagom\";\"other\"\n\"1607812\";\"พรรณานิคม\";\"other\"\n\"1607826\";\"Phang Khon\";\"main\"\n\"1607826\";\"Amphoe Phang Khon\";\"other\"\n\"1607826\";\"Ban Phany Khon\";\"other\"\n\"1607826\";\"Bang Khone\";\"other\"\n\"1607826\";\"King Amphoe Phang Khon\";\"other\"\n\"1607826\";\"พังโคน\";\"other\"\n\"1607838\";\"Phanat Nikhom\";\"main\"\n\"1607838\";\"Amphoe Phanat Nikhom\";\"other\"\n\"1607838\";\"Amphu Panas Nikom\";\"other\"\n\"1607838\";\"Ban Phanat Nikhom\";\"other\"\n\"1607838\";\"Bhanasnigom\";\"other\"\n\"1607838\";\"Phanatikhom\";\"other\"\n\"1607865\";\"Phak Hai\";\"main\"\n\"1607865\";\"Amphoe Phak Hai\";\"other\"\n\"1607865\";\"Amphu Phak Hai\";\"other\"\n\"1607865\";\"Ban Phakhai\";\"other\"\n\"1607881\";\"Phai Sali\";\"main\"\n\"1607881\";\"Amphoe Phaisali\";\"other\"\n\"1607881\";\"Ban Khok Dua\";\"other\"\n\"1607881\";\"King Amphoe Phaisali\";\"other\"\n\"1607881\";\"ไพศาลี\";\"other\"\n\"1607971\";\"Phaya Mengrai\";\"main\"\n\"1607971\";\"Paya Meng Rai\";\"other\"\n\"1607971\";\"พญาเม็งราย\";\"other\"\n\"1607978\";\"Pattani\";\"main\"\n\"1607978\";\"Changwat Pattani\";\"other\"\n\"1607978\";\"Muang Patani\";\"other\"\n\"1607978\";\"Muang Tara\";\"other\"\n\"1607978\";\"Patani\";\"other\"\n\"1607978\";\"Pattam\";\"other\"\n\"1607978\";\"Pattām\";\"other\"\n\"1607978\";\"ftany\";\"other\"\n\"1607978\";\"pattani\";\"other\"\n\"1607978\";\"Паттани\";\"other\"\n\"1607978\";\"فطاني\";\"other\"\n\"1607978\";\"パッターニー\";\"other\"\n\"1607983\";\"Pathum Thani\";\"main\"\n\"1607983\";\"Amphoe Muang Pathum Thani\";\"other\"\n\"1607983\";\"Amphoe Pathum Thani\";\"other\"\n\"1607983\";\"Ban Bang Kadi\";\"other\"\n\"1607983\";\"Ban Patok\";\"other\"\n\"1607983\";\"Bang Kadi\";\"other\"\n\"1607983\";\"Changwat Pathum Thani\";\"other\"\n\"1607983\";\"Muang Pradhum Dhani\";\"other\"\n\"1607983\";\"Muang Prathum Tani\";\"other\"\n\"1607983\";\"Muang Prathum Thani\";\"other\"\n\"1607983\";\"Mueang Pathum Thani\";\"other\"\n\"1607983\";\"Padumdhani\";\"other\"\n\"1607983\";\"Pathum Rani\";\"other\"\n\"1607983\";\"Pathumthani\";\"other\"\n\"1607983\";\"Pradhum Dhani\";\"other\"\n\"1607983\";\"Prathum Thani\";\"other\"\n\"1607983\";\"Pthumthani\";\"other\"\n\"1607983\";\"Ratkhum Tkhani\";\"other\"\n\"1607983\";\"Ратхум Тхани\";\"other\"\n\"1607983\";\"ปทุมธานี\";\"other\"\n\"1608033\";\"Pak Phanang\";\"main\"\n\"1608033\";\"Amphoe Pak Phanang\";\"other\"\n\"1608033\";\"Ban Pak Phanang\";\"other\"\n\"1608033\";\"Ban Pakpenang\";\"other\"\n\"1608033\";\"Pakpenang\";\"other\"\n\"1608033\";\"Pākpenang\";\"other\"\n\"1608048\";\"Pak Kret\";\"main\"\n\"1608048\";\"Amphoe Pak Kret\";\"other\"\n\"1608048\";\"Ban Pak Kret\";\"other\"\n\"1608048\";\"Pak Kred\";\"other\"\n\"1608048\";\"xaphex pakkerd\";\"other\"\n\"1608048\";\"ปากเกร็ด\";\"other\"\n\"1608048\";\"อำเภอปากเกร็ด\";\"other\"\n\"1608053\";\"Pak Khat\";\"main\"\n\"1608053\";\"Amphoe Pak Khat\";\"other\"\n\"1608053\";\"Ban Pak Khat\";\"other\"\n\"1608053\";\"King Amphoe Pak Khat\";\"other\"\n\"1608053\";\"ปากคาด\";\"other\"\n\"1608057\";\"Pak Chong\";\"main\"\n\"1608057\";\"Amphoe Pak Chong\";\"other\"\n\"1608057\";\"Ban Par Chong\";\"other\"\n\"1608068\";\"Pa Daet\";\"main\"\n\"1608068\";\"Ban Pa Daet\";\"other\"\n\"1608068\";\"Ban Pa Deat\";\"other\"\n\"1608068\";\"Bān Pa Deat\";\"other\"\n\"1608068\";\"ป่าแดด\";\"other\"\n\"1608131\";\"Non Thai\";\"main\"\n\"1608131\";\"Amphoe Non Thai\";\"other\"\n\"1608133\";\"Mueang Nonthaburi\";\"main\"\n\"1608133\";\"Amphoe Muang Nonthaburi\";\"other\"\n\"1608133\";\"Changwat Nonthaburi\";\"other\"\n\"1608133\";\"Muang Nondha Buri\";\"other\"\n\"1608133\";\"Muang Nonta Buri\";\"other\"\n\"1608133\";\"Muang Nontha Buri\";\"other\"\n\"1608133\";\"Non Buri\";\"other\"\n\"1608133\";\"Nondaburi\";\"other\"\n\"1608133\";\"Nondha Buri\";\"other\"\n\"1608133\";\"Nonthaburi\";\"other\"\n\"1608133\";\"Nontkhaburi\";\"other\"\n\"1608133\";\"Нонтхабури\";\"other\"\n\"1608133\";\"เมืองนนทบุรี\";\"other\"\n\"1608136\";\"Non Sung\";\"main\"\n\"1608136\";\"Amphoe Non Sung\";\"other\"\n\"1608139\";\"Non Sang\";\"main\"\n\"1608139\";\"Amphoe Non Sang\";\"other\"\n\"1608177\";\"Nong Ruea\";\"main\"\n\"1608177\";\"Amphoe Nong Ruea\";\"other\"\n\"1608177\";\"Ban Nong Rua\";\"other\"\n\"1608177\";\"King Amphoe Nong Ruea\";\"other\"\n\"1608177\";\"Nong Rua\";\"other\"\n\"1608177\";\"หนองเรือ\";\"other\"\n\"1608191\";\"Nong Phai\";\"main\"\n\"1608191\";\"Amphoe Nong Phai\";\"other\"\n\"1608191\";\"Ban Nong Phai\";\"other\"\n\"1608191\";\"King Amphoe Nong Phai\";\"other\"\n\"1608222\";\"Nong Ki\";\"main\"\n\"1608232\";\"Nong Khai\";\"main\"\n\"1608232\";\"Amphoe Muang Nong Khai\";\"other\"\n\"1608232\";\"Ban Mi Chai\";\"other\"\n\"1608232\";\"Changwat Nang Khai\";\"other\"\n\"1608232\";\"Changwat Nong Khai\";\"other\"\n\"1608232\";\"Hnohnggai\";\"other\"\n\"1608232\";\"Michai\";\"other\"\n\"1608232\";\"Muang Nawng Kai\";\"other\"\n\"1608232\";\"Muang Nong Khay\";\"other\"\n\"1608232\";\"Mueang Nong Khai\";\"other\"\n\"1608232\";\"Naung Khai\";\"other\"\n\"1608232\";\"Nawng Kai\";\"other\"\n\"1608232\";\"Nong Hai\";\"other\"\n\"1608232\";\"Nong Kai\";\"other\"\n\"1608232\";\"Nong-Kkhaj\";\"other\"\n\"1608232\";\"nonkai\";\"other\"\n\"1608232\";\"Нонг-Кхай\";\"other\"\n\"1608232\";\"กิ่งอำเภอสระใคร\";\"other\"\n\"1608232\";\"หนองคาย\";\"other\"\n\"1608232\";\"ノーンカーイ\";\"other\"\n\"1608236\";\"Nong Khaem\";\"main\"\n\"1608236\";\"Ban Nong Khaem\";\"other\"\n\"1608236\";\"King Amphoe Nang Khaem\";\"other\"\n\"1608236\";\"Naung Khaem\";\"other\"\n\"1608236\";\"หนองแขม\";\"other\"\n\"1608239\";\"Nong Khae\";\"main\"\n\"1608239\";\"Amphoe Nong Khae\";\"other\"\n\"1608239\";\"Ban Na Roeng\";\"other\"\n\"1608239\";\"Hnohng Ga\";\"other\"\n\"1608239\";\"Hnōhng Gā\";\"other\"\n\"1608239\";\"Na Roeng\";\"other\"\n\"1608239\";\"Naung Khae\";\"other\"\n\"1608258\";\"Nong Chok\";\"main\"\n\"1608258\";\"Amphoe Nong Chok\";\"other\"\n\"1608258\";\"Ban Nong Chok\";\"other\"\n\"1608258\";\"Hnohng Chohk\";\"other\"\n\"1608258\";\"Hnongchok\";\"other\"\n\"1608258\";\"Hnōhng Chōhk\";\"other\"\n\"1608258\";\"Naung Chauk\";\"other\"\n\"1608258\";\"hnxngcxk\";\"other\"\n\"1608258\";\"หนองจอก\";\"other\"\n\"1608263\";\"Nong Chik\";\"main\"\n\"1608263\";\"Amphoe Nong Chik\";\"other\"\n\"1608263\";\"Amphoe Tuyong\";\"other\"\n\"1608263\";\"Ban Tujong\";\"other\"\n\"1608263\";\"Ban Tuyong\";\"other\"\n\"1608263\";\"Maung Nawng Chik\";\"other\"\n\"1608263\";\"Muang Nawng Chik\";\"other\"\n\"1608263\";\"Muang Nong Chik\";\"other\"\n\"1608263\";\"Naung Chik\";\"other\"\n\"1608263\";\"Tujong\";\"other\"\n\"1608263\";\"Tuyong\";\"other\"\n\"1608263\";\"Umper Nong Chick\";\"other\"\n\"1608263\";\"Umper Nong Chik\";\"other\"\n\"1608269\";\"Nong Bua Lamphu\";\"main\"\n\"1608269\";\"Amphoe Nong Bua Lamphu\";\"other\"\n\"1608269\";\"Ban Nong Bua\";\"other\"\n\"1608269\";\"Changwat Nong Bua Lamphu\";\"other\"\n\"1608269\";\"Kamouttasai\";\"other\"\n\"1608269\";\"Kmuthasai\";\"other\"\n\"1608269\";\"Muang Gamutra Sai\";\"other\"\n\"1608269\";\"Muang Kamatdhasai\";\"other\"\n\"1608269\";\"Muang Kamouttasai\";\"other\"\n\"1608269\";\"Muang Kamuta Sai\";\"other\"\n\"1608269\";\"Muang Kamutthasai\";\"other\"\n\"1608269\";\"Muang Kmuthasai\";\"other\"\n\"1608269\";\"Mueang Nong Bua Lamphu\";\"other\"\n\"1608269\";\"Naung Bua\";\"other\"\n\"1608269\";\"หนองบัวลำภู\";\"other\"\n\"1608286\";\"Nong Bua\";\"main\"\n\"1608286\";\"Amphoe Nong Bua\";\"other\"\n\"1608286\";\"Ban Naung Bua\";\"other\"\n\"1608286\";\"Ban Nong Bua\";\"other\"\n\"1608286\";\"Bān Naung Bua\";\"other\"\n\"1608286\";\"Naung Bua\";\"other\"\n\"1608286\";\"หนองบัว\";\"other\"\n\"1608371\";\"Noen Maprang\";\"main\"\n\"1608371\";\"Amphoe Noen Maprang\";\"other\"\n\"1608371\";\"Ban Noen Maprang\";\"other\"\n\"1608371\";\"King Amphoe Noen Maprang\";\"other\"\n\"1608371\";\"เนินมะปราง\";\"other\"\n\"1608381\";\"Nikhom Nam Un\";\"main\"\n\"1608381\";\"Amphoe Nikhom Nam Un\";\"other\"\n\"1608381\";\"King Amphoe Nikhom Nam Un\";\"other\"\n\"1608381\";\"นิคมน้ำอูน\";\"other\"\n\"1608399\";\"Na Wa\";\"main\"\n\"1608399\";\"Ban Na Wa\";\"other\"\n\"1608402\";\"Na Thawi\";\"main\"\n\"1608402\";\"Ban Na Thawi\";\"other\"\n\"1608402\";\"Ban Nadhawi\";\"other\"\n\"1608402\";\"Ban Natawi\";\"other\"\n\"1608402\";\"Chana\";\"other\"\n\"1608402\";\"King Amphoe Chana\";\"other\"\n\"1608402\";\"King Amphoe Na Thawi\";\"other\"\n\"1608402\";\"King Amphoe Nadhawi\";\"other\"\n\"1608402\";\"Na Tawi\";\"other\"\n\"1608402\";\"Nadhawk\";\"other\"\n\"1608402\";\"nathwi\";\"other\"\n\"1608402\";\"นาทวี\";\"other\"\n\"1608409\";\"Narathiwat\";\"main\"\n\"1608409\";\"Ban Bangnara\";\"other\"\n\"1608409\";\"Bang Nara\";\"other\"\n\"1608409\";\"Changwat Naradhiwas\";\"other\"\n\"1608409\";\"Changwat Narathiwat\";\"other\"\n\"1608409\";\"Naradhivas\";\"other\"\n\"1608409\";\"Naradhiwas\";\"other\"\n\"1608409\";\"Narativas\";\"other\"\n\"1608409\";\"Narativat\";\"other\"\n\"1608409\";\"Naratkhivat\";\"other\"\n\"1608409\";\"Наратхиват\";\"other\"\n\"1608418\";\"Na Noi\";\"main\"\n\"1608418\";\"Amphoe Na Noi\";\"other\"\n\"1608418\";\"Ban Na Noi\";\"other\"\n\"1608418\";\"นาน้อย\";\"other\"\n\"1608424\";\"Nang Rong\";\"main\"\n\"1608424\";\"Amphoe Nang Rong\";\"other\"\n\"1608424\";\"Ban Nang Rong\";\"other\"\n\"1608424\";\"Mong Nang Rawng\";\"other\"\n\"1608424\";\"Muong Nang Rong\";\"other\"\n\"1608424\";\"Möng Nang Rawng\";\"other\"\n\"1608424\";\"Nang Raung\";\"other\"\n\"1608452\";\"Nan\";\"main\"\n\"1608452\";\"Amphoe Muang Nam\";\"other\"\n\"1608452\";\"Amphoe Mueang Nam\";\"other\"\n\"1608452\";\"Ban Muang Nan\";\"other\"\n\"1608452\";\"Changwat Muang Nan\";\"other\"\n\"1608452\";\"Changwat Nan\";\"other\"\n\"1608452\";\"Changwat Nana\";\"other\"\n\"1608452\";\"Muang Nan\";\"other\"\n\"1608452\";\"Mueang Nan\";\"other\"\n\"1608452\";\"Nagor Nan\";\"other\"\n\"1608452\";\"Нан\";\"other\"\n\"1608452\";\"น่าน\";\"other\"\n\"1608457\";\"Na Muen\";\"main\"\n\"1608457\";\"Amphoe Na Muen\";\"other\"\n\"1608457\";\"Ban Na Lak Meun\";\"other\"\n\"1608457\";\"Ban Na Lak Mun\";\"other\"\n\"1608457\";\"Bān Na Lak Meun\";\"other\"\n\"1608457\";\"King Amphoe Na Muen\";\"other\"\n\"1608457\";\"Na Mun\";\"other\"\n\"1608457\";\"นาหมื่น\";\"other\"\n\"1608462\";\"Amphoe Nam Som\";\"main\"\n\"1608480\";\"Nam Phong\";\"main\"\n\"1608480\";\"Amphoe Nam Phong\";\"other\"\n\"1608480\";\"Amphoe Tha Wa\";\"other\"\n\"1608480\";\"Nam Pong\";\"other\"\n\"1608480\";\"Tha Wa\";\"other\"\n\"1608480\";\"น้ำพอง\";\"other\"\n\"1608483\";\"Nam Pat\";\"main\"\n\"1608483\";\"Amphoe Nam Pat\";\"other\"\n\"1608483\";\"Amphoe Saen To\";\"other\"\n\"1608483\";\"น้ำปาด\";\"other\"\n\"1608485\";\"Nam Nao\";\"main\"\n\"1608485\";\"Amphoe Nam Nao\";\"other\"\n\"1608485\";\"King Amphoe Nam Nao\";\"other\"\n\"1608485\";\"น้ำหนาว\";\"other\"\n\"1608524\";\"Nakhon Thai\";\"main\"\n\"1608524\";\"Amphoe Moeang Nagorn Dhai\";\"other\"\n\"1608524\";\"Amphoe Muang Nakawn Tai\";\"other\"\n\"1608524\";\"Amphoe Muang Nakhon Thai\";\"other\"\n\"1608524\";\"Amphoe Muang Nakorn Thai\";\"other\"\n\"1608524\";\"Amphoe Nakhon Thai\";\"other\"\n\"1608524\";\"Ban Naun Jan\";\"other\"\n\"1608524\";\"Muang Nakaun Thai\";\"other\"\n\"1608524\";\"Muang Nakawn Tai\";\"other\"\n\"1608524\";\"Muang Nakhon Thai\";\"other\"\n\"1608524\";\"Nagorndhai\";\"other\"\n\"1608524\";\"Nakon Thai\";\"other\"\n\"1608524\";\"Noan Chanta\";\"other\"\n\"1608524\";\"Non Chan\";\"other\"\n\"1608524\";\"นครไทย\";\"other\"\n\"1608527\";\"Nakhon Sawan\";\"main\"\n\"1608527\";\"Amphoe Muang Nakhon Sawan\";\"other\"\n\"1608527\";\"Changwat Muang Nakhon Sawan\";\"other\"\n\"1608527\";\"Changwat Nakhon Sawan\";\"other\"\n\"1608527\";\"Muang Nagorn Sawarn\";\"other\"\n\"1608527\";\"Muang Nakawn Sawan\";\"other\"\n\"1608527\";\"Muang Nakhon Savan\";\"other\"\n\"1608527\";\"Muang Nakhon Sawan\";\"other\"\n\"1608527\";\"Mueang Nakhon Sawan\";\"other\"\n\"1608527\";\"Nagara Sawan\";\"other\"\n\"1608527\";\"Nagor Svarga\";\"other\"\n\"1608527\";\"Nagorn Sawarn\";\"other\"\n\"1608527\";\"Nakaun Sawan\";\"other\"\n\"1608527\";\"Nakawan Sawn\";\"other\"\n\"1608527\";\"Nakawn Sawan\";\"other\"\n\"1608527\";\"Nakhaun Sawan\";\"other\"\n\"1608527\";\"Naklon Sawan\";\"other\"\n\"1608527\";\"Nakon Sawan\";\"other\"\n\"1608527\";\"Nakorn Sawan\";\"other\"\n\"1608527\";\"นครสวรรค์\";\"other\"\n\"1608529\";\"Nakhon Ratchasima\";\"main\"\n\"1608529\";\"Amphoe Muang Nakhon Ratchasima\";\"other\"\n\"1608529\";\"Changwat Nakhon Rarchasima\";\"other\"\n\"1608529\";\"Changwat Nakhon Rat Sima\";\"other\"\n\"1608529\";\"Corat\";\"other\"\n\"1608529\";\"Khorat\";\"other\"\n\"1608529\";\"Korat\";\"other\"\n\"1608529\";\"Koyat\";\"other\"\n\"1608529\";\"Muang Nakawn Rachasima\";\"other\"\n\"1608529\";\"Nagara Rajasima\";\"other\"\n\"1608529\";\"Nagor Rajashima\";\"other\"\n\"1608529\";\"Nagor Rajasima\";\"other\"\n\"1608529\";\"Nakhaun Rachasima\";\"other\"\n\"1608529\";\"Nakhon Ratchsima\";\"other\"\n\"1608529\";\"Nakhon Ratczasima\";\"other\"\n\"1608529\";\"Nakhonratsima\";\"other\"\n\"1608529\";\"Nakkhonratchasima\";\"other\"\n\"1608529\";\"Nakonrajsima\";\"other\"\n\"1608529\";\"Nakonratchasima\";\"other\"\n\"1608529\";\"Nakorn Rajsima\";\"other\"\n\"1608529\";\"nakonrachashima\";\"other\"\n\"1608529\";\"Накхонратчасима\";\"other\"\n\"1608529\";\"ナコーンラーチャシーマー\";\"other\"\n\"1608531\";\"Nakhon Phanom\";\"main\"\n\"1608531\";\"Amphoe Muang Nakhon Phanom\";\"other\"\n\"1608531\";\"Ban Nakhon Phnom\";\"other\"\n\"1608531\";\"Changwat Muang Nakhon Phanom\";\"other\"\n\"1608531\";\"Changwat Nakhon Phanom\";\"other\"\n\"1608531\";\"Lakhon\";\"other\"\n\"1608531\";\"Muang Nakhon Phanom\";\"other\"\n\"1608531\";\"Mueang Nakhon Phanom\";\"other\"\n\"1608531\";\"Nagorn Bhanom\";\"other\"\n\"1608531\";\"Nakawn Panom\";\"other\"\n\"1608531\";\"Nakhaun Phanom\";\"other\"\n\"1608531\";\"Nakol Phanom\";\"other\"\n\"1608531\";\"Nakon Panom\";\"other\"\n\"1608531\";\"Nakorn Panom\";\"other\"\n\"1608531\";\"Naung Bua\";\"other\"\n\"1608531\";\"Nong Buk\";\"other\"\n\"1608531\";\"นครพนม\";\"other\"\n\"1608534\";\"Nakhon Pathom\";\"main\"\n\"1608534\";\"Amphoe Muang Nakhon Pathom\";\"other\"\n\"1608534\";\"Changwat Nakhon Chai Si\";\"other\"\n\"1608534\";\"Changwat Nakhon Pathom\";\"other\"\n\"1608534\";\"Monthon Nakhon Chai Si\";\"other\"\n\"1608534\";\"Nagara Pathom\";\"other\"\n\"1608534\";\"Nagorn Pathom\";\"other\"\n\"1608534\";\"Nakawn Patom\";\"other\"\n\"1608534\";\"Nakhaun Pathom\";\"other\"\n\"1608534\";\"Nakhon Chai Si\";\"other\"\n\"1608534\";\"Nakon Patom\";\"other\"\n\"1608534\";\"nakonpatomu\";\"other\"\n\"1608534\";\"ナコーンパトム\";\"other\"\n\"1608539\";\"Nakhon Nayok\";\"main\"\n\"1608539\";\"Amphoe Muang Nakhon Nayok\";\"other\"\n\"1608539\";\"Changwat Nakhon Nayok\";\"other\"\n\"1608539\";\"Muang Nagorn Nayok\";\"other\"\n\"1608539\";\"Muang Nakawn Nayok\";\"other\"\n\"1608539\";\"Muang Nakhon Nayok\";\"other\"\n\"1608539\";\"Mueang Nakhon Nayok\";\"other\"\n\"1608539\";\"Nagorn Nayok\";\"other\"\n\"1608539\";\"Nakaunnayok\";\"other\"\n\"1608539\";\"Nakaunnoyok\";\"other\"\n\"1608539\";\"Nakhaun Nayok\";\"other\"\n\"1608539\";\"Nakhon Nauok\";\"other\"\n\"1608539\";\"Nakon Nayok\";\"other\"\n\"1608539\";\"Nayok\";\"other\"\n\"1608539\";\"นครนายก\";\"other\"\n\"1608541\";\"Nakhon Luang\";\"main\"\n\"1608541\";\"Amphoe Nakhon Luang\";\"other\"\n\"1608541\";\"Amphu Luang\";\"other\"\n\"1608541\";\"Ban Nakhon Luang\";\"other\"\n\"1608541\";\"Hluang\";\"other\"\n\"1608541\";\"Hlūang\";\"other\"\n\"1608545\";\"Nakhon Chai Si\";\"main\"\n\"1608545\";\"Amphoe Nakhon Chai\";\"other\"\n\"1608545\";\"Amphoe Nakhon Chai Si\";\"other\"\n\"1608545\";\"Ban Pak Nam\";\"other\"\n\"1608545\";\"Nagorn Jaisri\";\"other\"\n\"1608545\";\"Talat Amphoe Nakhon Chai Si\";\"other\"\n\"1608545\";\"นครชัยศรี\";\"other\"\n\"1608565\";\"Na Duang\";\"main\"\n\"1608565\";\"Amphoe Na Duang\";\"other\"\n\"1608565\";\"King Amphoe Na Duang\";\"other\"\n\"1608565\";\"นาด้วง\";\"other\"\n\"1608597\";\"Mukdahan\";\"main\"\n\"1608597\";\"Amphoe Mukdahan\";\"other\"\n\"1608597\";\"Ban Mouk\";\"other\"\n\"1608597\";\"Ban Si Mongkhon\";\"other\"\n\"1608597\";\"Ban Srimongkhon\";\"other\"\n\"1608597\";\"Makdaharn\";\"other\"\n\"1608597\";\"Mokdaharn\";\"other\"\n\"1608597\";\"Muang Ban Muk Dahan\";\"other\"\n\"1608597\";\"Muang Muk Da Han\";\"other\"\n\"1608597\";\"Mueng Mukdahan\";\"other\"\n\"1608597\";\"Muk\";\"other\"\n\"1608597\";\"Mukdaharn\";\"other\"\n\"1608597\";\"Mukdakhan\";\"other\"\n\"1608597\";\"Mukdatarn\";\"other\"\n\"1608597\";\"Si Mongkhon\";\"other\"\n\"1608597\";\"Srimongkhon\";\"other\"\n\"1608597\";\"Мукдахан\";\"other\"\n\"1608597\";\"มุกดาหาร\";\"other\"\n\"1608614\";\"Mueang Suang\";\"main\"\n\"1608614\";\"Amphoe Muang Suang\";\"other\"\n\"1608614\";\"เมืองสรวง\";\"other\"\n\"1608625\";\"Muang Sam Sip\";\"main\"\n\"1608625\";\"Amphoe Muang Sam Sip\";\"other\"\n\"1608625\";\"Ban Muang Samsip\";\"other\"\n\"1608625\";\"Muang Nam Sip\";\"other\"\n\"1608625\";\"ม่วงสามสิบ\";\"other\"\n\"1608718\";\"Min Buri\";\"main\"\n\"1608718\";\"Amphoe Min Buri\";\"other\"\n\"1608718\";\"minburi\";\"other\"\n\"1608718\";\"มีนบุรี\";\"other\"\n\"1608774\";\"Mancha Khiri\";\"main\"\n\"1608774\";\"Amphoe Kut Kao\";\"other\"\n\"1608774\";\"Amphoe Kut Khao\";\"other\"\n\"1608774\";\"Amphoe Mancha Khiri\";\"other\"\n\"1608774\";\"Ban Han\";\"other\"\n\"1608774\";\"Koot Kao\";\"other\"\n\"1608774\";\"Kut Khao\";\"other\"\n\"1608774\";\"มัญจาคีรี\";\"other\"\n\"1608900\";\"Maha Sarakham\";\"main\"\n\"1608900\";\"Amphoe Muang Maha Sarakham\";\"other\"\n\"1608900\";\"Ban Khlong Khleng\";\"other\"\n\"1608900\";\"Ban Lat\";\"other\"\n\"1608900\";\"Ban Talat\";\"other\"\n\"1608900\";\"Changwat Maha Sarakham\";\"other\"\n\"1608900\";\"Maha Saragam\";\"other\"\n\"1608900\";\"Maha Sarakam\";\"other\"\n\"1608900\";\"Mueang Maha Sarakham\";\"other\"\n\"1608900\";\"Talat\";\"other\"\n\"1608900\";\"มหาสารคาม\";\"other\"\n\"1608937\";\"Mae Charim\";\"main\"\n\"1608937\";\"แม่จริม\";\"other\"\n\"1609032\";\"Lop Buri\";\"main\"\n\"1609032\";\"Amphoe Muang Lop Buri\";\"other\"\n\"1609032\";\"Ban Tha Hin\";\"other\"\n\"1609032\";\"Changwat Lop Buri\";\"other\"\n\"1609032\";\"Changwat Thahanbok Lop Buri\";\"other\"\n\"1609032\";\"Lobh Buri\";\"other\"\n\"1609032\";\"Lopburi\";\"other\"\n\"1609032\";\"Muang Lobh Buri\";\"other\"\n\"1609032\";\"Muang Lopburi\";\"other\"\n\"1609032\";\"Muang Xop Buri\";\"other\"\n\"1609032\";\"Mueang Lop Buri\";\"other\"\n\"1609032\";\"Tha Hin\";\"other\"\n\"1609032\";\"robburi\";\"other\"\n\"1609032\";\"Лопбури\";\"other\"\n\"1609032\";\"ลพบุรี\";\"other\"\n\"1609032\";\"ロッブリー\";\"other\"\n\"1609043\";\"Lom Sak\";\"main\"\n\"1609043\";\"Amphoe Lom Sak\";\"other\"\n\"1609043\";\"Amphoe Wat Pa\";\"other\"\n\"1609043\";\"Ban Lom Sak\";\"other\"\n\"1609043\";\"Changwat Muang Hlom Sak\";\"other\"\n\"1609043\";\"Changwat Muang Lom Sak\";\"other\"\n\"1609043\";\"Hlomsak\";\"other\"\n\"1609043\";\"Muang Hlom Sak\";\"other\"\n\"1609043\";\"Muang Lom Sak\";\"other\"\n\"1609043\";\"Wat Pa\";\"other\"\n\"1609043\";\"หล่มสัก\";\"other\"\n\"1609048\";\"Lom Kao\";\"main\"\n\"1609048\";\"Amphoe Lom Kao\";\"other\"\n\"1609048\";\"Ban Lom Gao\";\"other\"\n\"1609048\";\"Ban Lom Kao\";\"other\"\n\"1609048\";\"Bān Lom Gāo\";\"other\"\n\"1609048\";\"Hlomkao\";\"other\"\n\"1609048\";\"Mong Lom Kao\";\"other\"\n\"1609048\";\"Möng Lom Kao\";\"other\"\n\"1609048\";\"หล่มเก่า\";\"other\"\n\"1609071\";\"Loei\";\"main\"\n\"1609071\";\"Amphoe Muang Loei\";\"other\"\n\"1609071\";\"Changwat Loei\";\"other\"\n\"1609071\";\"Changwat Muang Lai\";\"other\"\n\"1609071\";\"Changwat Muang Loei\";\"other\"\n\"1609071\";\"Leui\";\"other\"\n\"1609071\";\"Loeh\";\"other\"\n\"1609071\";\"Loey\";\"other\"\n\"1609071\";\"Muang Lai\";\"other\"\n\"1609071\";\"Muang Leoi\";\"other\"\n\"1609071\";\"Muang Loei\";\"other\"\n\"1609071\";\"Muang Loeui\";\"other\"\n\"1609071\";\"Muang Loi\";\"other\"\n\"1609071\";\"Mueang Loei\";\"other\"\n\"1609071\";\"Лоэ\";\"other\"\n\"1609071\";\"เลย\";\"other\"\n\"1609163\";\"Lap Lae\";\"main\"\n\"1609163\";\"Amphoe Lap Lae\";\"other\"\n\"1609163\";\"Amphu Lubla\";\"other\"\n\"1609163\";\"Ban Yang Gadai\";\"other\"\n\"1609163\";\"Ban Yang Kadai\";\"other\"\n\"1609163\";\"Bān Yāng Gadāi\";\"other\"\n\"1609163\";\"Lap Lea\";\"other\"\n\"1609163\";\"Lap Lēa\";\"other\"\n\"1609163\";\"Yang Kadai\";\"other\"\n\"1609163\";\"ลับแล\";\"other\"\n\"1609278\";\"Laem Sing\";\"main\"\n\"1609278\";\"Amphoe Laem Sing\";\"other\"\n\"1609278\";\"Naiamphur\";\"other\"\n\"1609324\";\"Amphoe Kut Chap\";\"main\"\n\"1609324\";\"Ban Kut Chap\";\"other\"\n\"1609327\";\"Kut Bak\";\"main\"\n\"1609327\";\"Amphoe Kut Bak\";\"other\"\n\"1609327\";\"Ban Kot Bak\";\"other\"\n\"1609327\";\"Ban Kut Bak\";\"other\"\n\"1609327\";\"King Amphoe Kut Bak\";\"other\"\n\"1609327\";\"Kudpak\";\"other\"\n\"1609327\";\"กุดบาก\";\"other\"\n\"1609332\";\"Kusuman\";\"main\"\n\"1609332\";\"Amphoe Kusuman\";\"other\"\n\"1609332\";\"Ban Kusuman\";\"other\"\n\"1609332\";\"Ban Muang Kusuman\";\"other\"\n\"1609332\";\"King Amphoe Kusuman\";\"other\"\n\"1609332\";\"Muang Kusuman\";\"other\"\n\"1609332\";\"Mueang Kusuman\";\"other\"\n\"1609332\";\"Muong Kout Sa Man\";\"other\"\n\"1609332\";\"Tambon Kusuman\";\"other\"\n\"1609332\";\"กุสุมาลย์\";\"other\"\n\"1609345\";\"Kuchinarai\";\"main\"\n\"1609345\";\"Amphoe Kuchinarai\";\"other\"\n\"1609345\";\"Ban Bua Khao\";\"other\"\n\"1609345\";\"Bua Khao\";\"other\"\n\"1609350\";\"Bangkok\";\"main\"\n\"1609350\";\"Amphoe Phra Nakhon\";\"other\"\n\"1609350\";\"Bancac\";\"other\"\n\"1609350\";\"Bancác\";\"other\"\n\"1609350\";\"Bangkok - krungthephmhankhr\";\"other\"\n\"1609350\";\"Bangkok - กรุงเทพมหานคร\";\"other\"\n\"1609350\";\"Bangkoka\";\"other\"\n\"1609350\";\"Banguecoque\";\"other\"\n\"1609350\";\"Bankok\";\"other\"\n\"1609350\";\"Bankokas\";\"other\"\n\"1609350\";\"Changwat Phra Nakhon\";\"other\"\n\"1609350\";\"Krung Thep\";\"other\"\n\"1609350\";\"Krung Thep Mahanakhon Amon Rattanakosin Mahinthara Ayuthaya Mahadilok Phop Noppharat Ratchathani Burirom Udomratchaniwet Mahasathan Amon Piman Awatan Sathit Sakkathattiya Witsanukam Prasit\";\"other\"\n\"1609350\";\"Krungdeb\";\"other\"\n\"1609350\";\"Phra Nakhon\";\"other\"\n\"1609350\";\"Siayuthia\";\"other\"\n\"1609350\";\"bainkoka\";\"other\"\n\"1609350\";\"bangkog\";\"other\"\n\"1609350\";\"bangkwk\";\"other\"\n\"1609350\";\"bankoku\";\"other\"\n\"1609350\";\"bankwk\";\"other\"\n\"1609350\";\"bngqwq\";\"other\"\n\"1609350\";\"byankaka\";\"other\"\n\"1609350\";\"krungtheph\";\"other\"\n\"1609350\";\"krungthephmhankhr\";\"other\"\n\"1609350\";\"man gu\";\"other\"\n\"1609350\";\"Бангкок\";\"other\"\n\"1609350\";\"Банкок\";\"other\"\n\"1609350\";\"בנגקוק\";\"other\"\n\"1609350\";\"بانكوك\";\"other\"\n\"1609350\";\"بانکوک\";\"other\"\n\"1609350\";\"بانگكوك\";\"other\"\n\"1609350\";\"बैंकॉक\";\"other\"\n\"1609350\";\"ব্যাংকক\";\"other\"\n\"1609350\";\"กรุงเทพ\";\"other\"\n\"1609350\";\"กรุงเทพมหานคร\";\"other\"\n\"1609350\";\"པན་ཀོག\";\"other\"\n\"1609350\";\"ბანგკოკი\";\"other\"\n\"1609350\";\"ባንኮክ\";\"other\"\n\"1609350\";\"バンコク\";\"other\"\n\"1609350\";\"曼谷\";\"other\"\n\"1609350\";\"방콕\";\"other\"\n\"1609379\";\"Krok Phra\";\"main\"\n\"1609379\";\"Amphoe Krok Phra\";\"other\"\n\"1609379\";\"Amphu Krok Pra\";\"other\"\n\"1609379\";\"Ban Grauk Phra\";\"other\"\n\"1609379\";\"Ban Krok Phra\";\"other\"\n\"1609379\";\"Bān Grauk Phra\";\"other\"\n\"1609379\";\"Krok Bhra\";\"other\"\n\"1609379\";\"Noen Sala\";\"other\"\n\"1609379\";\"โกรกพระ\";\"other\"\n\"1609395\";\"Krathum Baen\";\"main\"\n\"1609395\";\"Amphor Kathum Baen\";\"other\"\n\"1609395\";\"Ban Krathum Baen\";\"other\"\n\"1609395\";\"Ban Talat Kathum Baen\";\"other\"\n\"1609395\";\"Kathum Baen\";\"other\"\n\"1609395\";\"Krathu Baen\";\"other\"\n\"1609395\";\"Krathumban\";\"other\"\n\"1609395\";\"Talat Kathum Baen\";\"other\"\n\"1609395\";\"กระทุ่มแบน\";\"other\"\n\"1609430\";\"Kranuan\";\"main\"\n\"1609430\";\"Amphoe Kranuan\";\"other\"\n\"1609430\";\"King Amphoe Kranuan\";\"other\"\n\"1609430\";\"กระนวน\";\"other\"\n\"1609476\";\"Kosum Phisai\";\"main\"\n\"1609476\";\"Amphoe Kosum Phisai\";\"other\"\n\"1609476\";\"Ban Hua Khwang\";\"other\"\n\"1609476\";\"Kosumbhisai\";\"other\"\n\"1609476\";\"Mahasarakam\";\"other\"\n\"1609476\";\"Muang Kossoum\";\"other\"\n\"1609476\";\"Muang Kossum\";\"other\"\n\"1609476\";\"Muang Kosum\";\"other\"\n\"1609479\";\"Ko Si Chang\";\"main\"\n\"1609479\";\"King Amphoe Ko Si Chang\";\"other\"\n\"1609479\";\"เกาะสีชัง\";\"other\"\n\"1609610\";\"Klaeng\";\"main\"\n\"1609610\";\"Amphoe Klaeng\";\"other\"\n\"1609610\";\"Ban Sam Yan\";\"other\"\n\"1609610\";\"Ban Thang Kwian\";\"other\"\n\"1609610\";\"Kleng\";\"other\"\n\"1609610\";\"Klēng\";\"other\"\n\"1609610\";\"Thang Kwian\";\"other\"\n\"1609610\";\"t.kælng\";\"other\"\n\"1609610\";\"ต.แกลง\";\"other\"\n\"1609689\";\"Khun Han\";\"main\"\n\"1609689\";\"ขุนหาญ\";\"other\"\n\"1609717\";\"Khuan Ka Long\";\"main\"\n\"1609717\";\"ควนกาหลง\";\"other\"\n\"1609722\";\"Khuan Don\";\"main\"\n\"1609722\";\"ควนโดน\";\"other\"\n\"1609776\";\"Khon Kaen\";\"main\"\n\"1609776\";\"Amphoe Muang Khon Kaen\";\"other\"\n\"1609776\";\"Amphoe Phralap\";\"other\"\n\"1609776\";\"Amphoe Pralap\";\"other\"\n\"1609776\";\"Changwat Khon Kaen\";\"other\"\n\"1609776\";\"Changwat Muang Khon Kaen\";\"other\"\n\"1609776\";\"Kawn Ken\";\"other\"\n\"1609776\";\"Khohn Ken\";\"other\"\n\"1609776\";\"Khon Kan\";\"other\"\n\"1609776\";\"Khon Khen\";\"other\"\n\"1609776\";\"Khonkean\";\"other\"\n\"1609776\";\"Khonkhaen\";\"other\"\n\"1609776\";\"Kkhonkehn\";\"other\"\n\"1609776\";\"Konkahen\";\"other\"\n\"1609776\";\"Muang Kaun Gean\";\"other\"\n\"1609776\";\"Muang Khaunkaen\";\"other\"\n\"1609776\";\"Muang Khon Kaen\";\"other\"\n\"1609776\";\"Mueang Khon Kaen\";\"other\"\n\"1609776\";\"Кхонкэн\";\"other\"\n\"1609776\";\"เมืองขอนแก่น\";\"other\"\n\"1609795\";\"Khon Buri\";\"main\"\n\"1609795\";\"Amphoe Khon Buri\";\"other\"\n\"1609808\";\"Khok Si Suphan\";\"main\"\n\"1609808\";\"Amphoe Khok Si Suphan\";\"other\"\n\"1609808\";\"King Amphoe Khok Si Suphan\";\"other\"\n\"1609808\";\"โคกศรีสุพรรณ\";\"other\"\n\"1609858\";\"Khlung\";\"main\"\n\"1609858\";\"Amphoe Khlung\";\"other\"\n\"1609858\";\"Ban Khlung\";\"other\"\n\"1609858\";\"Kkhlung\";\"other\"\n\"1609858\";\"Кхлунг\";\"other\"\n\"1609879\";\"Khlong San\";\"main\"\n\"1609879\";\"Amphoe Khlong San\";\"other\"\n\"1609879\";\"khlxngsan\";\"other\"\n\"1609879\";\"คลองสาน\";\"other\"\n\"1609899\";\"Khlong Luang\";\"main\"\n\"1609899\";\"Amphoe Khlong Luang\";\"other\"\n\"1609899\";\"Ban Bang Wai\";\"other\"\n\"1609899\";\"Ban Khlong Song (3)\";\"other\"\n\"1609899\";\"Bang Wai\";\"other\"\n\"1609990\";\"Khao Wong\";\"main\"\n\"1610069\";\"Kham Ta Kla\";\"main\"\n\"1610069\";\"Amphoe Kham Ta Kla\";\"other\"\n\"1610069\";\"Ban Kham Ta Kla\";\"other\"\n\"1610069\";\"Ban Kham Takra\";\"other\"\n\"1610069\";\"King Amphoe Kham Ta Kla\";\"other\"\n\"1610069\";\"คำตากล้า\";\"other\"\n\"1610072\";\"Kham Sakae Saeng\";\"main\"\n\"1610072\";\"King Amphoe Kham Sakae Saeng\";\"other\"\n\"1610185\";\"Kaset Wisai\";\"main\"\n\"1610185\";\"Amphoe Kaset Wisai\";\"other\"\n\"1610187\";\"Kaset Sombun\";\"main\"\n\"1610187\";\"Amphoe Kaset Sombun\";\"other\"\n\"1610187\";\"Ban Yang\";\"other\"\n\"1610211\";\"Kao Liao\";\"main\"\n\"1610211\";\"Amphoe Kao Liao\";\"other\"\n\"1610211\";\"Kao Lieo\";\"other\"\n\"1610211\";\"King Amphoe Kao Liao\";\"other\"\n\"1610211\";\"เก้าเลี้ยว\";\"other\"\n\"1610227\";\"Kantharalak\";\"main\"\n\"1610227\";\"Amphoe Kantharalak\";\"other\"\n\"1610227\";\"Ban Nam Om\";\"other\"\n\"1610227\";\"Kanthanalak\";\"other\"\n\"1610227\";\"Kantkharalak\";\"other\"\n\"1610227\";\"Muang Uthumpa\";\"other\"\n\"1610227\";\"Muang Uthumpau\";\"other\"\n\"1610227\";\"Muong Utumpar\";\"other\"\n\"1610227\";\"Nam Aum\";\"other\"\n\"1610227\";\"Кантхаралак\";\"other\"\n\"1610296\";\"Krong Pi Nang\";\"main\"\n\"1610296\";\"Ban Krong Pi Nang\";\"other\"\n\"1610296\";\"Kampong Pinang\";\"other\"\n\"1610296\";\"ba nk rng pinang\";\"other\"\n\"1610296\";\"กรงปินัง\";\"other\"\n\"1610296\";\"บ้านกรงปินัง\";\"other\"\n\"1610393\";\"Cho-airong\";\"main\"\n\"1610393\";\"Ban Cho-airong\";\"other\"\n\"1610393\";\"Kampong Chae Raung\";\"other\"\n\"1610393\";\"Kampong Chaerong\";\"other\"\n\"1610393\";\"ban ceaa xi rxng\";\"other\"\n\"1610393\";\"บ้านเจาะไอร้อง\";\"other\"\n\"1610393\";\"เจาะไอร้อง\";\"other\"\n\"1610445\";\"Kamphaeng Saen\";\"main\"\n\"1610445\";\"Amphoe Kamphaeng Saen\";\"other\"\n\"1610445\";\"Kamphaeng Soen\";\"other\"\n\"1610459\";\"Kamalasai\";\"main\"\n\"1610459\";\"Amphoe Kamalasai\";\"other\"\n\"1610459\";\"Ban Amphoe Kamalasai\";\"other\"\n\"1610459\";\"Ban Komlasai\";\"other\"\n\"1610459\";\"Komlasai\";\"other\"\n\"1610469\";\"Kalasin\";\"main\"\n\"1610469\";\"Amphoe Hlup\";\"other\"\n\"1610469\";\"Amphoe Kalasin\";\"other\"\n\"1610469\";\"Amphoe Lup\";\"other\"\n\"1610469\";\"Amphoe Muang Kalasin\";\"other\"\n\"1610469\";\"Ban Neur\";\"other\"\n\"1610469\";\"Changwat Kalasin\";\"other\"\n\"1610469\";\"Changwat Muang Kalasin\";\"other\"\n\"1610469\";\"Kalasim\";\"other\"\n\"1610469\";\"Kalasindhu\";\"other\"\n\"1610469\";\"Lup\";\"other\"\n\"1610469\";\"Muang Kalasim\";\"other\"\n\"1610469\";\"Muang Kalasin\";\"other\"\n\"1610469\";\"Muang Kalassim\";\"other\"\n\"1610469\";\"Muang Kansin\";\"other\"\n\"1610469\";\"Mueang Kalasin\";\"other\"\n\"1610469\";\"Каласин\";\"other\"\n\"1610469\";\"กาฬสินธุ์\";\"other\"\n\"1610503\";\"Kaeng Khoi\";\"main\"\n\"1610503\";\"Amphoe Kaeng Khoi\";\"other\"\n\"1610505\";\"Kaeng Khlo\";\"main\"\n\"1610505\";\"Amphoe Kaeng Khlo\";\"other\"\n\"1610505\";\"Amphoe Kaeng Khro\";\"other\"\n\"1610505\";\"Kaeng Khro\";\"other\"\n\"1610538\";\"Kabin Buri\";\"main\"\n\"1610538\";\"Amphoe Kabin Buri\";\"other\"\n\"1610538\";\"Ban Kabin Buri\";\"other\"\n\"1610538\";\"Mong Krabin\";\"other\"\n\"1610571\";\"In Buri\";\"main\"\n\"1610571\";\"Amphoe In Buri\";\"other\"\n\"1610571\";\"Amphoe Muang In Buri\";\"other\"\n\"1610571\";\"Ban In Buri\";\"other\"\n\"1610571\";\"In\";\"other\"\n\"1610571\";\"Muang Inburi\";\"other\"\n\"1610571\";\"อินทร์บุรี\";\"other\"\n\"1610661\";\"Huai Mek\";\"main\"\n\"1610661\";\"Ban Huai Mek\";\"other\"\n\"1610780\";\"Hat Yai\";\"main\"\n\"1610780\";\"Amphoe Hat Yai\";\"other\"\n\"1610780\";\"Ban Haad Yai\";\"other\"\n\"1610780\";\"Ban Hat Yai\";\"other\"\n\"1610780\";\"Haad Yai\";\"other\"\n\"1610780\";\"Had Yai\";\"other\"\n\"1610780\";\"hatoyai jun\";\"other\"\n\"1610780\";\"he ai\";\"other\"\n\"1610780\";\"ハートヤイ郡\";\"other\"\n\"1610780\";\"合艾\";\"other\"\n\"1610841\";\"Fak Tha\";\"main\"\n\"1610841\";\"Amphoe Fak Tha\";\"other\"\n\"1610841\";\"Ban Bung\";\"other\"\n\"1610841\";\"ฟากท่า\";\"other\"\n\"1610858\";\"Dusit\";\"main\"\n\"1610858\";\"Amphoe Dusit\";\"other\"\n\"1610858\";\"dusit\";\"other\"\n\"1610858\";\"ดุสิต\";\"other\"\n\"1610911\";\"Doem Bang Nang Buat\";\"main\"\n\"1610911\";\"Amphoe Doembang Nangbuat\";\"other\"\n\"1610940\";\"Det Udom\";\"main\"\n\"1610940\";\"Amphoe Det Udom\";\"other\"\n\"1610940\";\"Amphoe Det Udon\";\"other\"\n\"1610940\";\"Ban Muang Det\";\"other\"\n\"1610940\";\"Ban Muang Detudom\";\"other\"\n\"1610940\";\"Det\";\"other\"\n\"1610940\";\"Det Udon\";\"other\"\n\"1610940\";\"Muang Det\";\"other\"\n\"1610943\";\"Den Chai\";\"main\"\n\"1610943\";\"Amphoe Den Chai\";\"other\"\n\"1610943\";\"Ban Den Chai\";\"other\"\n\"1610943\";\"เด่นชัย\";\"other\"\n\"1610958\";\"Dan Sai\";\"main\"\n\"1610958\";\"Amphoe Dan Sai\";\"other\"\n\"1610958\";\"Amphoe Dan Zai\";\"other\"\n\"1610958\";\"Daen Sai\";\"other\"\n\"1610958\";\"Dan Zai\";\"other\"\n\"1610958\";\"Muang Daen Sai\";\"other\"\n\"1610958\";\"Muang Dansai\";\"other\"\n\"1610958\";\"ด่านซ้าย\";\"other\"\n\"1610963\";\"Dan Khun Thot\";\"main\"\n\"1610963\";\"Amphoe Dan Khun Thot\";\"other\"\n\"1611026\";\"Chum Phae\";\"main\"\n\"1611026\";\"Amphoe Chum Phae\";\"other\"\n\"1611026\";\"Ban Chum Phae\";\"other\"\n\"1611026\";\"ชุมแพ\";\"other\"\n\"1611078\";\"Chonnabot\";\"main\"\n\"1611078\";\"Ban Chonabot\";\"other\"\n\"1611078\";\"Ban Chonbot\";\"other\"\n\"1611078\";\"Ban Chonnabot\";\"other\"\n\"1611078\";\"Chenobot\";\"other\"\n\"1611078\";\"Chonaboti\";\"other\"\n\"1611078\";\"Mong Chonlabot\";\"other\"\n\"1611078\";\"Mueang Chonbot\";\"other\"\n\"1611078\";\"Möng Chonlabot\";\"other\"\n\"1611078\";\"ชนบท\";\"other\"\n\"1611106\";\"Chon Daen\";\"main\"\n\"1611106\";\"Amphoe Chon Daen\";\"other\"\n\"1611106\";\"Ban Chon Daen\";\"other\"\n\"1611106\";\"Ban Chon Dean\";\"other\"\n\"1611106\";\"Bān Chon Dean\";\"other\"\n\"1611106\";\"Jonden\";\"other\"\n\"1611106\";\"Jondēn\";\"other\"\n\"1611106\";\"King Amphoe Chon Daen\";\"other\"\n\"1611106\";\"King Chon Daen\";\"other\"\n\"1611106\";\"ชนแดน\";\"other\"\n\"1611110\";\"Chon Buri\";\"main\"\n\"1611110\";\"Amphoe Muang Chon Buri\";\"other\"\n\"1611110\";\"Baanburaisoi\";\"other\"\n\"1611110\";\"Ban Bang Pla Soi\";\"other\"\n\"1611110\";\"Ban Pla Sai\";\"other\"\n\"1611110\";\"Ban Pla Soi\";\"other\"\n\"1611110\";\"Bang Pla Soi\";\"other\"\n\"1611110\";\"Bang Pla Soil\";\"other\"\n\"1611110\";\"Changwat Chon Buri\";\"other\"\n\"1611110\";\"Cholburi\";\"other\"\n\"1611110\";\"Chonburi\";\"other\"\n\"1611110\";\"Chor Buri\";\"other\"\n\"1611110\";\"Jilburi\";\"other\"\n\"1611110\";\"Jīlburi\";\"other\"\n\"1611110\";\"Muang Jol Buri\";\"other\"\n\"1611110\";\"Muang Xonburi\";\"other\"\n\"1611110\";\"Чонбури\";\"other\"\n\"1611135\";\"Chok Chai\";\"main\"\n\"1611135\";\"Amphoe Chok Chai\";\"other\"\n\"1611135\";\"Ban Chok Chai\";\"other\"\n\"1611135\";\"Choc Chai\";\"other\"\n\"1611187\";\"Chiang Saen\";\"main\"\n\"1611187\";\"Amphoe Chiang Saen\";\"other\"\n\"1611187\";\"Chang Saen\";\"other\"\n\"1611187\";\"Chiang Saen Luang\";\"other\"\n\"1611187\";\"Chiang Saen Office\";\"other\"\n\"1611187\";\"Chieng Sen\";\"other\"\n\"1611187\";\"Ging Chieng Sean\";\"other\"\n\"1611187\";\"Ging Chiensen\";\"other\"\n\"1611187\";\"Jiengsen\";\"other\"\n\"1611187\";\"Jiēngsēn\";\"other\"\n\"1611187\";\"Keng Sen\";\"other\"\n\"1611187\";\"Muang Jieng Sen\";\"other\"\n\"1611187\";\"เชียงแสน\";\"other\"\n\"1611195\";\"Chiang Klang\";\"main\"\n\"1611195\";\"Ban Chiang Klang\";\"other\"\n\"1611197\";\"Chiang Khong\";\"main\"\n\"1611197\";\"Amphoe Chiang Khaung\";\"other\"\n\"1611197\";\"Amphoe Chiang Khong\";\"other\"\n\"1611197\";\"Amphoe Jieng Khohng\";\"other\"\n\"1611197\";\"Ban Hwei Sai\";\"other\"\n\"1611197\";\"Ban Nai Wiang\";\"other\"\n\"1611197\";\"Chieng Kaung\";\"other\"\n\"1611197\";\"Chieng Kong\";\"other\"\n\"1611197\";\"Jieng Khohng\";\"other\"\n\"1611197\";\"Muang Jieng Khohng\";\"other\"\n\"1611197\";\"Nai Wiang\";\"other\"\n\"1611197\";\"Xieng Khong\";\"other\"\n\"1611197\";\"เชียงของ\";\"other\"\n\"1611200\";\"Chiang Khan\";\"main\"\n\"1611200\";\"Amphoe Chiang Khan\";\"other\"\n\"1611200\";\"Amphoe Jieng Kan\";\"other\"\n\"1611200\";\"Amphoe Jienggan\";\"other\"\n\"1611200\";\"Amphoe Muang Chiang\";\"other\"\n\"1611200\";\"Amphoe Muang Chiang Khan\";\"other\"\n\"1611200\";\"Chieng Kan\";\"other\"\n\"1611200\";\"Chienggan\";\"other\"\n\"1611200\";\"Chienggān\";\"other\"\n\"1611200\";\"Muang Chiang Kan\";\"other\"\n\"1611200\";\"Muang Chiang Khan\";\"other\"\n\"1611200\";\"Muang Chieng Kan\";\"other\"\n\"1611200\";\"Xieng Khan\";\"other\"\n\"1611200\";\"เชียงคาน\";\"other\"\n\"1611202\";\"Chiang Kham\";\"main\"\n\"1611202\";\"Amphoe Chiang Kham\";\"other\"\n\"1611202\";\"Amphoe Chieng Kum\";\"other\"\n\"1611202\";\"Amphoe Jieng Gam\";\"other\"\n\"1611202\";\"Ban Chiang Kham\";\"other\"\n\"1611202\";\"Ban Juan\";\"other\"\n\"1611202\";\"Ban Yuan\";\"other\"\n\"1611202\";\"Chieng Kam\";\"other\"\n\"1611202\";\"Chieng Kum\";\"other\"\n\"1611202\";\"Chienggam\";\"other\"\n\"1611202\";\"Jieng Gam\";\"other\"\n\"1611202\";\"Xieng Kham\";\"other\"\n\"1611202\";\"เชียงคำ\";\"other\"\n\"1611269\";\"Chanthaburi\";\"main\"\n\"1611269\";\"Amphoe Muang Chanthaburi\";\"other\"\n\"1611269\";\"Chandaburi\";\"other\"\n\"1611269\";\"Chandha Buri\";\"other\"\n\"1611269\";\"Changwat Chanthaburi\";\"other\"\n\"1611269\";\"Chantaboun\";\"other\"\n\"1611269\";\"Chantabun\";\"other\"\n\"1611269\";\"Chantaburi\";\"other\"\n\"1611269\";\"Chantkhaburi\";\"other\"\n\"1611269\";\"Chentabun\";\"other\"\n\"1611269\";\"Chiyandburii\";\"other\"\n\"1611269\";\"Mueang Chanthaburi\";\"other\"\n\"1611269\";\"Чантхабури\";\"other\"\n\"1611269\";\"จันทบุรี\";\"other\"\n\"1611320\";\"Chanae\";\"main\"\n\"1611320\";\"Amphoe Chanea\";\"other\"\n\"1611320\";\"จะแนะ\";\"other\"\n\"1611324\";\"Chana\";\"main\"\n\"1611324\";\"Amphoe Chana\";\"other\"\n\"1611324\";\"Ban Banna\";\"other\"\n\"1611324\";\"Ban Chana\";\"other\"\n\"1611324\";\"Ban Na\";\"other\"\n\"1611324\";\"Jana\";\"other\"\n\"1611324\";\"cana\";\"other\"\n\"1611324\";\"จะนะ\";\"other\"\n\"1611407\";\"Chaiyaphum\";\"main\"\n\"1611407\";\"Amphoe Muang Chaiyaphum\";\"other\"\n\"1611407\";\"Ban Hin Tang\";\"other\"\n\"1611407\";\"Chai Phum\";\"other\"\n\"1611407\";\"Chaiaphum\";\"other\"\n\"1611407\";\"Chaiapum\";\"other\"\n\"1611407\";\"Chaiyaphun\";\"other\"\n\"1611407\";\"Chaiyapoom\";\"other\"\n\"1611407\";\"Chajjapkhum\";\"other\"\n\"1611407\";\"Chalyaphum\";\"other\"\n\"1611407\";\"Changwat Chaiyaphum\";\"other\"\n\"1611407\";\"Changwat Chaiyaphun\";\"other\"\n\"1611407\";\"Jaibhum\";\"other\"\n\"1611407\";\"Jaiyabhum\";\"other\"\n\"1611407\";\"Jayabhumi\";\"other\"\n\"1611407\";\"Muang Chaiyapum\";\"other\"\n\"1611407\";\"Muang Jaiyabhum\";\"other\"\n\"1611407\";\"Tchaiapoum\";\"other\"\n\"1611407\";\"Чайяпхум\";\"other\"\n\"1611416\";\"Chai Nat\";\"main\"\n\"1611416\";\"Amphoe Ban Kluai\";\"other\"\n\"1611416\";\"Amphoe Muang Chainat\";\"other\"\n\"1611416\";\"Chai Nad\";\"other\"\n\"1611416\";\"Chainat\";\"other\"\n\"1611416\";\"Changwat Chainat\";\"other\"\n\"1611416\";\"Changwat Muang Chainat\";\"other\"\n\"1611416\";\"Cheinat\";\"other\"\n\"1611416\";\"Jai-Nadh\";\"other\"\n\"1611416\";\"Jai-Nādh\";\"other\"\n\"1611416\";\"Jainat\";\"other\"\n\"1611416\";\"Muang Chainat\";\"other\"\n\"1611416\";\"Muang Jai Nadh\";\"other\"\n\"1611416\";\"Muang Xai Nat\";\"other\"\n\"1611416\";\"Mueang Chai Nat\";\"other\"\n\"1611416\";\"ชัยนาท\";\"other\"\n\"1611424\";\"Chai Badan\";\"main\"\n\"1611439\";\"Chachoengsao\";\"main\"\n\"1611439\";\"Amphoe Muang Chachoengsao\";\"other\"\n\"1611439\";\"Chacherngsao\";\"other\"\n\"1611439\";\"Chachurngsao\";\"other\"\n\"1611439\";\"Changwat Chachoengsao\";\"other\"\n\"1611439\";\"Chaxerngsao\";\"other\"\n\"1611439\";\"Chaxoengsao\";\"other\"\n\"1611439\";\"Muang Chachurngsao\";\"other\"\n\"1611439\";\"Muang Shajeungdhrao\";\"other\"\n\"1611439\";\"Muang Shajeungtrao\";\"other\"\n\"1611439\";\"Mueang Chachoengsao\";\"other\"\n\"1611439\";\"Muong Chaxungsao\";\"other\"\n\"1611439\";\"Paet Riu\";\"other\"\n\"1611439\";\"Petrin\";\"other\"\n\"1611439\";\"Petriou\";\"other\"\n\"1611439\";\"Petriu\";\"other\"\n\"1611439\";\"Shacheungzao\";\"other\"\n\"1611439\";\"Shajeungdhrao\";\"other\"\n\"1611439\";\"Shajeungdrao\";\"other\"\n\"1611439\";\"Shajeungzao\";\"other\"\n\"1611439\";\"Чачоенгсао\";\"other\"\n\"1611439\";\"เมืองฉะเชิงเทรา\";\"other\"\n\"1611453\";\"Buriram\";\"main\"\n\"1611453\";\"Amphoe Muang Buriram\";\"other\"\n\"1611453\";\"Changwat Buriram\";\"other\"\n\"1611453\";\"Muang Buriram\";\"other\"\n\"1611453\";\"Mueang Buri Ram\";\"other\"\n\"1611453\";\"Бурирам\";\"other\"\n\"1611453\";\"บุรีรัมย์\";\"other\"\n\"1611467\";\"Bueng Sam Phan\";\"main\"\n\"1611467\";\"Bung Sam Phan\";\"other\"\n\"1611467\";\"บึงสามพัน\";\"other\"\n\"1611473\";\"Bueng Khong Long\";\"main\"\n\"1611473\";\"Amphoe Bueng Khong Long\";\"other\"\n\"1611473\";\"Bung Khong Long\";\"other\"\n\"1611473\";\"King Amphoe Bueng Khong Long\";\"other\"\n\"1611473\";\"บึงโขงหลง\";\"other\"\n\"1611475\";\"Bueng Kan\";\"main\"\n\"1611475\";\"Amphoe Bung Kan\";\"other\"\n\"1611475\";\"Amphoe Chai Buri\";\"other\"\n\"1611475\";\"Amphoe Jaiburi\";\"other\"\n\"1611475\";\"Amphoe Shai Buri\";\"other\"\n\"1611475\";\"Ban Beung Kal\";\"other\"\n\"1611475\";\"Ban Bung Kan\";\"other\"\n\"1611475\";\"Bung Kan\";\"other\"\n\"1611475\";\"Chai Buri\";\"other\"\n\"1611475\";\"บึงกาฬ\";\"other\"\n\"1611492\";\"Bua Yai\";\"main\"\n\"1611492\";\"Amphoe Bua Yai\";\"other\"\n\"1611504\";\"Bua Chet\";\"main\"\n\"1611504\";\"บัวเชด\";\"other\"\n\"1611578\";\"Ban Bo Rai\";\"main\"\n\"1611578\";\"Bau Rai\";\"other\"\n\"1611578\";\"Bo Rai\";\"other\"\n\"1611620\";\"Bo Kluea\";\"main\"\n\"1611620\";\"Bo Klua\";\"other\"\n\"1611620\";\"King Amphoe Bo Kluea\";\"other\"\n\"1611620\";\"บ่อเกลือ\";\"other\"\n\"1611881\";\"Wang Pong\";\"main\"\n\"1611881\";\"Amphoe Wang Pong\";\"other\"\n\"1611881\";\"Ban Wang Paung\";\"other\"\n\"1611881\";\"Ban Wang Pong (1)\";\"other\"\n\"1611881\";\"King Amphoe Wang Pong\";\"other\"\n\"1611881\";\"วังโป่ง\";\"other\"\n\"1612722\";\"Ban Thai Tan\";\"main\"\n\"1613284\";\"Ban Selaphum\";\"main\"\n\"1613534\";\"Ban Sam Chuk\";\"main\"\n\"1613534\";\"Ban Sam Jok\";\"other\"\n\"1613534\";\"Bān Sām Jok\";\"other\"\n\"1613769\";\"Ban Rangsit\";\"main\"\n\"1613769\";\"Dhanya Buri\";\"other\"\n\"1613769\";\"Mong Tania Buri\";\"other\"\n\"1613769\";\"Möng Tania Buri\";\"other\"\n\"1613769\";\"Rangsit\";\"other\"\n\"1613769\";\"Thanyaburi\";\"other\"\n\"1614295\";\"Phattaya\";\"main\"\n\"1614295\";\"Ban Hat Phatthaya (2)\";\"other\"\n\"1614295\";\"Ban Phatthaya\";\"other\"\n\"1614295\";\"Pataja\";\"other\"\n\"1614295\";\"Pattajja\";\"other\"\n\"1614295\";\"Pattaya\";\"other\"\n\"1614295\";\"Port Phattaya\";\"other\"\n\"1614295\";\"ba da ya\";\"other\"\n\"1614295\";\"pattaya te bie shi\";\"other\"\n\"1614295\";\"phathya\";\"other\"\n\"1614295\";\"Патая\";\"other\"\n\"1614295\";\"Паттайя\";\"other\"\n\"1614295\";\"พัทยา\";\"other\"\n\"1614295\";\"パッタヤー特別市\";\"other\"\n\"1614295\";\"芭達亞\";\"other\"\n\"1614336\";\"Ban Phan Don\";\"main\"\n\"1614336\";\"Amphoe Kumbhawapi\";\"other\"\n\"1614336\";\"Amphoe Kumphawapi\";\"other\"\n\"1614336\";\"Ban Nam Khong\";\"other\"\n\"1614336\";\"Koumpa Ouapi\";\"other\"\n\"1614336\";\"Kumpawapi\";\"other\"\n\"1614336\";\"Kumphawapi\";\"other\"\n\"1614336\";\"Muang Kumpawapi\";\"other\"\n\"1614336\";\"Muang Kumpu Kwapi\";\"other\"\n\"1614336\";\"Nam Khaung\";\"other\"\n\"1614455\";\"Ban Phai\";\"main\"\n\"1614455\";\"Amphoe Ban Phai\";\"other\"\n\"1614455\";\"Ban Keng\";\"other\"\n\"1614455\";\"King Amphoe Ban Phai\";\"other\"\n\"1614455\";\"บ้านไผ่\";\"other\"\n\"1614465\";\"Ban Phaeo\";\"main\"\n\"1614465\";\"Amphoe Ban Phaeo\";\"other\"\n\"1614465\";\"Ban Pheo\";\"other\"\n\"1614465\";\"บ้านแพ้ว\";\"other\"\n\"1614696\";\"Ban Pak Chom\";\"main\"\n\"1614696\";\"Amphoe Pak Chom\";\"other\"\n\"1614696\";\"Ban Pak Sohm\";\"other\"\n\"1614696\";\"King Amphoe Pak Chom\";\"other\"\n\"1614696\";\"Pak Chaum\";\"other\"\n\"1614696\";\"Pak Chom\";\"other\"\n\"1614696\";\"Pāk Chaum\";\"other\"\n\"1614696\";\"ปากชม\";\"other\"\n\"1615380\";\"Nong Muang Khai\";\"main\"\n\"1615380\";\"Amphoe Nong Muang Khai\";\"other\"\n\"1615380\";\"Ban Naung Maung Kai\";\"other\"\n\"1615380\";\"Ban Nong Muang Khai\";\"other\"\n\"1615380\";\"Bān Naung Maung Kāi\";\"other\"\n\"1615380\";\"King Amphoe Nong Muang Khai\";\"other\"\n\"1615380\";\"Naung Muang Kai\";\"other\"\n\"1615380\";\"หนองม่วงไข่\";\"other\"\n\"1616198\";\"Ban Nang Sata\";\"main\"\n\"1616198\";\"Amphoe Ban Nang Sata\";\"other\"\n\"1616198\";\"Ban Ban Nang Sata\";\"other\"\n\"1616198\";\"Ban Panang Star\";\"other\"\n\"1616198\";\"Ban Pannang Sata\";\"other\"\n\"1616198\";\"Bannangsta\";\"other\"\n\"1616198\";\"Pannang Sata\";\"other\"\n\"1616198\";\"ban bannangsta\";\"other\"\n\"1616198\";\"bannangsta\";\"other\"\n\"1616198\";\"บันนังสตา\";\"other\"\n\"1616198\";\"บ้านบันนังสตา\";\"other\"\n\"1616445\";\"Na Haeo\";\"main\"\n\"1616445\";\"Amphoe Na Haeo\";\"other\"\n\"1616445\";\"Ban Na Haeo\";\"other\"\n\"1616445\";\"Ban Na Heo\";\"other\"\n\"1616445\";\"Bān Na Heo\";\"other\"\n\"1616445\";\"King Amphoe Na Haeo\";\"other\"\n\"1616445\";\"Nahai\";\"other\"\n\"1616609\";\"Ban Muang\";\"main\"\n\"1616609\";\"Amphoe Ban Muang\";\"other\"\n\"1616609\";\"King Amphoe Ban Muang\";\"other\"\n\"1616609\";\"บ้านม่วง\";\"other\"\n\"1616658\";\"Ban Mo\";\"main\"\n\"1616658\";\"Amphoe Ban Mo\";\"other\"\n\"1616934\";\"Ban Luang\";\"main\"\n\"1616934\";\"Amphoe Ban Luang\";\"other\"\n\"1616934\";\"Ban Pa Kha Luang\";\"other\"\n\"1616934\";\"Hluang\";\"other\"\n\"1616934\";\"Hlūang\";\"other\"\n\"1616934\";\"King Amphoe Ban Luang\";\"other\"\n\"1616934\";\"Mea Saut\";\"other\"\n\"1616934\";\"Muang Sot\";\"other\"\n\"1616934\";\"บ้านหลวง\";\"other\"\n\"1617111\";\"Ban Lam Luk Ka\";\"main\"\n\"1617111\";\"Lam Luk Ka\";\"other\"\n\"1617111\";\"Luk Ka\";\"other\"\n\"1617111\";\"Lūk Ka\";\"other\"\n\"1617331\";\"Ban Kruat\";\"main\"\n\"1617331\";\"บ้านกรววด\";\"other\"\n\"1618002\";\"Ban Khok\";\"main\"\n\"1618002\";\"Amphoe Ban Khok\";\"other\"\n\"1618002\";\"King Amphoe Ban Khok\";\"other\"\n\"1618002\";\"บ้านโคก\";\"other\"\n\"1618616\";\"Kap Choeng\";\"main\"\n\"1618616\";\"Ban Kapchoeng\";\"other\"\n\"1618616\";\"กาบเชิง\";\"other\"\n\"1619198\";\"Bang Yai\";\"main\"\n\"1619198\";\"Amphoe Bang Yai\";\"other\"\n\"1619263\";\"Bang Sai\";\"main\"\n\"1619263\";\"Amphoe Bang Sai\";\"other\"\n\"1619276\";\"Bang Rakam\";\"main\"\n\"1619276\";\"Amphoe Bang Rakam\";\"other\"\n\"1619276\";\"Amphoe Chum Saeng\";\"other\"\n\"1619276\";\"Amphu Bang Raka\";\"other\"\n\"1619276\";\"Ban Bang Ragam\";\"other\"\n\"1619276\";\"Ban Bang Rakam\";\"other\"\n\"1619276\";\"Bān Bāng Ragam\";\"other\"\n\"1619276\";\"Chum Saeng\";\"other\"\n\"1619276\";\"Rakam\";\"other\"\n\"1619276\";\"บางระกำ\";\"other\"\n\"1619278\";\"Bang Rak\";\"main\"\n\"1619278\";\"Amphoe Bang Rak\";\"other\"\n\"1619278\";\"Bangrak\";\"other\"\n\"1619278\";\"bangrak\";\"other\"\n\"1619278\";\"บางรัก\";\"other\"\n\"1619281\";\"Bang Racham\";\"main\"\n\"1619281\";\"Amphoe Bang Rachan\";\"other\"\n\"1619281\";\"Ban Sing\";\"other\"\n\"1619281\";\"Ban Wang Wua\";\"other\"\n\"1619363\";\"Bang Pakong\";\"main\"\n\"1619363\";\"Amphoe Bang Pakong\";\"other\"\n\"1619363\";\"Ban Tha Saan\";\"other\"\n\"1619363\";\"Tha Sa-an\";\"other\"\n\"1619363\";\"บางปะกง\";\"other\"\n\"1619369\";\"Bang Pa-in\";\"main\"\n\"1619369\";\"Amphoe Bang Pa-In\";\"other\"\n\"1619369\";\"Ban Ko Bang Pa-in\";\"other\"\n\"1619369\";\"Ban Len\";\"other\"\n\"1619400\";\"Bang Mun Nak\";\"main\"\n\"1619400\";\"Amphoe Bang Mun Nak\";\"other\"\n\"1619400\";\"Amphoe Mueang Phum\";\"other\"\n\"1619400\";\"Ban Bang Mun Nak\";\"other\"\n\"1619400\";\"Ban Mun Nak\";\"other\"\n\"1619400\";\"บางมูลนาก\";\"other\"\n\"1619415\";\"Bang Len\";\"main\"\n\"1619415\";\"Amphoe Bang Len\";\"other\"\n\"1619415\";\"Ban Bang Len\";\"other\"\n\"1619423\";\"Bang Lamung\";\"main\"\n\"1619423\";\"Amphoe Ban Lamung\";\"other\"\n\"1619423\";\"Amphoe Bang Lamung\";\"other\"\n\"1619423\";\"Amphoe Naklua\";\"other\"\n\"1619423\";\"Ban Na Kloea\";\"other\"\n\"1619423\";\"Ban Na-Glua\";\"other\"\n\"1619423\";\"Ban Naklua\";\"other\"\n\"1619423\";\"Bang La-muang\";\"other\"\n\"1619423\";\"Na Klua\";\"other\"\n\"1619423\";\"บางละมุง\";\"other\"\n\"1619434\";\"Bang Kruai\";\"main\"\n\"1619434\";\"Amphoe Bang Kruai\";\"other\"\n\"1619434\";\"Amphoe Bang Yai\";\"other\"\n\"1619434\";\"Ban Bang Yai\";\"other\"\n\"1619434\";\"Bang Krai\";\"other\"\n\"1619434\";\"Bang Yai\";\"other\"\n\"1619434\";\"บางกรวย\";\"other\"\n\"1619437\";\"Bang Krathum\";\"main\"\n\"1619437\";\"Amphoe Bang Krathum\";\"other\"\n\"1619437\";\"Ban Bang Gathum\";\"other\"\n\"1619437\";\"Ban Bang Krahtum\";\"other\"\n\"1619437\";\"Bang Kathum\";\"other\"\n\"1619437\";\"Bang Krathem\";\"other\"\n\"1619437\";\"Bān Bang Gathum\";\"other\"\n\"1619437\";\"Kathum\";\"other\"\n\"1619437\";\"King Amphoe Bang Krathum\";\"other\"\n\"1619437\";\"King Bang Kathum\";\"other\"\n\"1619437\";\"บางกระทุ่ม\";\"other\"\n\"1619457\";\"Bangkok Yai\";\"main\"\n\"1619457\";\"Amphoe Bangkok Yai\";\"other\"\n\"1619457\";\"King Amphoe Bang Kok Yai\";\"other\"\n\"1619457\";\"บางกอกใหญ่\";\"other\"\n\"1619460\";\"Bangkok Noi\";\"main\"\n\"1619460\";\"Amphoe Bangkok Noi\";\"other\"\n\"1619460\";\"bangkxknxy\";\"other\"\n\"1619460\";\"บางกอกน้อย\";\"other\"\n\"1619485\";\"Bang Khun Thian\";\"main\"\n\"1619485\";\"Amphoe Bang Khun Thian\";\"other\"\n\"1619485\";\"Bangkhunthien\";\"other\"\n\"1619485\";\"bangkhuntheiyn\";\"other\"\n\"1619485\";\"บางขุนเทียน\";\"other\"\n\"1619498\";\"Bang Khla\";\"main\"\n\"1619498\";\"Amphoe Bang Khla\";\"other\"\n\"1619498\";\"Ban Bang Khla\";\"other\"\n\"1619498\";\"Bang Gla\";\"other\"\n\"1619498\";\"Bāng Glā\";\"other\"\n\"1619506\";\"Bang Khen\";\"main\"\n\"1619506\";\"Amphoe Bang Khen\";\"other\"\n\"1619506\";\"Ban Khaen\";\"other\"\n\"1619506\";\"Bankhen\";\"other\"\n\"1619532\";\"Bang Kapi\";\"main\"\n\"1619532\";\"Amphoe Bang Kapi\";\"other\"\n\"1619532\";\"bang ka pi\";\"other\"\n\"1619532\";\"บางกะปี\";\"other\"\n\"1619602\";\"Bang Bua Thong\";\"main\"\n\"1619602\";\"Amphoe Bang Bua Thong\";\"other\"\n\"1619602\";\"บางบัวทอง\";\"other\"\n\"1619611\";\"Bang Bo\";\"main\"\n\"1619611\";\"Amphoe Bang Hia\";\"other\"\n\"1619611\";\"Ban Bang Bo\";\"other\"\n\"1619611\";\"Bang Bau\";\"other\"\n\"1619611\";\"Bang Hia\";\"other\"\n\"1619611\";\"bangbx\";\"other\"\n\"1619611\";\"บางบ่อ\";\"other\"\n\"1619616\";\"Bang Ban\";\"main\"\n\"1619616\";\"Amphoe Bang Ban\";\"other\"\n\"1619616\";\"Ban Bang Bal\";\"other\"\n\"1619616\";\"Ban Bang Ban\";\"other\"\n\"1619616\";\"Bang Bal\";\"other\"\n\"1619616\";\"Bāng Bāl\";\"other\"\n\"1619630\";\"Ban Fang\";\"main\"\n\"1619630\";\"King Amphoe Ban Fang\";\"other\"\n\"1619630\";\"บ้านฝาง\";\"other\"\n\"1619650\";\"Amphoe Ban Dung\";\"main\"\n\"1619650\";\"Ban Dung\";\"other\"\n\"1620254\";\"Ban Chang\";\"main\"\n\"1620390\";\"Beung Na Rang\";\"main\"\n\"1620390\";\"Amphoe Beung Na Rang\";\"other\"\n\"1620390\";\"Ban Beung Na Rang\";\"other\"\n\"1620390\";\"Ban Bung Na Rang\";\"other\"\n\"1620390\";\"Boeng Narang\";\"other\"\n\"1620390\";\"Bung Narang\";\"other\"\n\"1620390\";\"Bān Beung Na Rāng\";\"other\"\n\"1620390\";\"King Amphoe Beung Na Rang\";\"other\"\n\"1620390\";\"บึงนาราง\";\"other\"\n\"1620442\";\"Ban Talat Bueng\";\"main\"\n\"1620442\";\"Ban Boeng\";\"other\"\n\"1620442\";\"Ban Bung\";\"other\"\n\"1620442\";\"Boeng\";\"other\"\n\"1620442\";\"บ้านตลาดบึง\";\"other\"\n\"1620706\";\"Bang Phlat\";\"main\"\n\"1620706\";\"Amphoe Bang Phlat\";\"other\"\n\"1620706\";\"Ban Bang Phlat\";\"other\"\n\"1620706\";\"Bangprat\";\"other\"\n\"1620706\";\"bangphlad\";\"other\"\n\"1620706\";\"บางพลัด\";\"other\"\n\"1620755\";\"Bang Na\";\"main\"\n\"1620755\";\"Ban Bang Na\";\"other\"\n\"1620755\";\"bangna\";\"other\"\n\"1620755\";\"บางนา\";\"other\"\n\"1620875\";\"Ban Bang Kadi Pathum Thani\";\"main\"\n\"1620919\";\"Ban Bang Bo (1)\";\"main\"\n\"1620919\";\"Bang Bo\";\"other\"\n\"1620989\";\"Bamnet Narong\";\"main\"\n\"1620989\";\"Amphoe Bamnet Narong\";\"other\"\n\"1620989\";\"Bamhnech Narong\";\"other\"\n\"1620989\";\"Bamnech Narong\";\"other\"\n\"1620989\";\"Ban Bamhnetnarong\";\"other\"\n\"1620989\";\"Ban Chuan\";\"other\"\n\"1620989\";\"King Amphoe Bamnet Narong\";\"other\"\n\"1620989\";\"King Amphoe Ban Chuan\";\"other\"\n\"1620989\";\"Muang Bamhnech Narong\";\"other\"\n\"1620989\";\"Muang Bamhnesh Narong\";\"other\"\n\"1621020\";\"Aranyaprathet\";\"main\"\n\"1621020\";\"Amphoe Aranpradbet\";\"other\"\n\"1621020\";\"Amphoe Aranya Prathet\";\"other\"\n\"1621020\";\"Amphoe Aranyaprathet\";\"other\"\n\"1621020\";\"Amphoe Ban Aranyaprathet\";\"other\"\n\"1621020\";\"Aran Pradhesa\";\"other\"\n\"1621020\";\"Aran Pradhet\";\"other\"\n\"1621020\";\"Aran Prathet\";\"other\"\n\"1621020\";\"Aran'japratkhet\";\"other\"\n\"1621020\";\"Aranh\";\"other\"\n\"1621020\";\"Aranya Pradesa\";\"other\"\n\"1621020\";\"Aranya Pradhesa\";\"other\"\n\"1621020\";\"Ban Aran\";\"other\"\n\"1621020\";\"Ban Aranyaprathet\";\"other\"\n\"1621020\";\"Muang Aran Pradhet\";\"other\"\n\"1621020\";\"Muang Aran Pratet\";\"other\"\n\"1621020\";\"Muang Aranyapraphet\";\"other\"\n\"1621020\";\"aran'yapurateto jun\";\"other\"\n\"1621020\";\"xaphex xray pra ths\";\"other\"\n\"1621020\";\"xaphex xrayprathes\";\"other\"\n\"1621020\";\"Араньяпратхет\";\"other\"\n\"1621020\";\"อำเภออรัญประทศ\";\"other\"\n\"1621020\";\"อำเภออรัญประเทศ\";\"other\"\n\"1621020\";\"アランヤプラテート郡\";\"other\"\n\"1621035\";\"Ang Thong\";\"main\"\n\"1621035\";\"Amphoe Bang Kaeo\";\"other\"\n\"1621035\";\"Amphoe Muang Ang Thong\";\"other\"\n\"1621035\";\"Ang Thaung\";\"other\"\n\"1621035\";\"Ang Thong - xangthxng\";\"other\"\n\"1621035\";\"Ang Thong - อ่างทอง\";\"other\"\n\"1621035\";\"Angdhohng\";\"other\"\n\"1621035\";\"Ban Bang Kaeo\";\"other\"\n\"1621035\";\"Bang Kaeo\";\"other\"\n\"1621035\";\"Bang Keo\";\"other\"\n\"1621035\";\"Changwat Ang Thong\";\"other\"\n\"1621035\";\"Muang Ang Dhohng\";\"other\"\n\"1621035\";\"Muang Ang Tawng\";\"other\"\n\"1621035\";\"Muang Ang Thong\";\"other\"\n\"1621035\";\"Muang Ang Ton\";\"other\"\n\"1621035\";\"อ่างทอง\";\"other\"\n\"1621060\";\"Amnat Charoen\";\"main\"\n\"1621060\";\"Amanat Charoem\";\"other\"\n\"1621060\";\"Amphoe Amnat Charoen\";\"other\"\n\"1621060\";\"Ban Bung\";\"other\"\n\"1621060\";\"Mueang Amnat Charoen\";\"other\"\n\"1621060\";\"Амнат Чароен\";\"other\"\n\"1621060\";\"อำนาจเจริญ\";\"other\"\n\"1621066\";\"Akat Amnuai\";\"main\"\n\"1621066\";\"Amphoe Akat Amnuai\";\"other\"\n\"1621066\";\"Ban Akat\";\"other\"\n\"1621066\";\"King Amphoe Akat Amnuai\";\"other\"\n\"1621066\";\"อากาศอำนวย\";\"other\"\n\"1884764\";\"Phon Charoen\";\"main\"\n\"1884764\";\"Amphoe Phon Charoen\";\"other\"\n\"1884764\";\"King Amphoe Phon Charoen\";\"other\"\n\"1884764\";\"พรเจริญ\";\"other\"\n\"1884782\";\"Nam Yuen\";\"main\"\n\"1884782\";\"Amphoe Nam Yun\";\"other\"\n\"1884782\";\"Nam Yun\";\"other\"\n\"1884782\";\"น้ำยืน\";\"other\"\n\"1884830\";\"Chaiyo\";\"main\"\n\"1884830\";\"Amphoe Chaiyo\";\"other\"\n\"1884830\";\"Cheiyo\";\"other\"\n\"1888247\";\"Song Dao\";\"main\"\n\"1888247\";\"Amphoe Song Dao\";\"other\"\n\"1888247\";\"King Amphoe Song Dao\";\"other\"\n\"1888247\";\"ส่องดาว\";\"other\"\n\"1948015\";\"Amphoe Sikhiu\";\"main\"\n\"6691842\";\"Saladan\";\"main\"\n\"6691842\";\"Ban Saladan\";\"other\"\n\"6691842\";\"Саладан\";\"other\"\n\"6696291\";\"Wichit\";\"main\"\n\"6698658\";\"Ko Pha Ngan\";\"main\"\n\"6698658\";\"Koh Pha Ngan\";\"other\"\n\"6698658\";\"Koh Phangan\";\"other\"\n\"6698658\";\"Pangan\";\"other\"\n\"6698658\";\"keaaphangan\";\"other\"\n\"6698658\";\"Панган\";\"other\"\n\"6698658\";\"เกาะพะงัน\";\"other\"\n\"6698659\";\"Koh Tao\";\"main\"\n\"6698659\";\"Tao\";\"other\"\n\"6698659\";\"keaa tea\";\"other\"\n\"6698659\";\"Тао\";\"other\"\n\"6698659\";\"เกาะเต่า\";\"other\"\n\"6845329\";\"Bang Sue\";\"main\"\n\"6845329\";\"bangsux\";\"other\"\n\"6845329\";\"บางซื่อ\";\"other\"\n\"6845590\";\"Don Mueang\";\"main\"\n\"6845590\";\"dxnmeuxng\";\"other\"\n\"6845590\";\"ดอนเมือง\";\"other\"\n\"6908641\";\"Khlong Toei\";\"main\"\n\"6908641\";\"khlxngtey\";\"other\"\n\"6908641\";\"คลองเตย\";\"other\"\n\"6908736\";\"Prawet\";\"main\"\n\"6908736\";\"prawes\";\"other\"\n\"6908736\";\"ประเวศ\";\"other\"\n\"6941772\";\"Patong Beach\";\"main\"\n\"6941772\";\"Patong\";\"other\"\n\"6941772\";\"had pa txng\";\"other\"\n\"6941772\";\"Патонг\";\"other\"\n\"6941772\";\"หาดป่า ตอง\";\"other\"\n\"6957680\";\"Ban Huai Chun\";\"main\"\n\"6957680\";\"Amphoe Chun\";\"other\"\n\"6957680\";\"Chun\";\"other\"\n\"6957680\";\"จุน\";\"other\"\n\"6957685\";\"Thung Chang\";\"main\"\n\"6957685\";\"Amphoe Lae\";\"other\"\n\"6957685\";\"Lae\";\"other\"\n\"6957685\";\"ทุ่งช้าง\";\"other\"\n\"6957690\";\"Lat Krabang\";\"main\"\n\"6957690\";\"Amphoe Lat Kabang\";\"other\"\n\"6957690\";\"Amphoe Lat Krabang\";\"other\"\n\"6957690\";\"Lartkrabang\";\"other\"\n\"6957690\";\"Lat Kabang\";\"other\"\n\"6957690\";\"Lat Kabing\";\"other\"\n\"6957690\";\"ladkrabang\";\"other\"\n\"6957690\";\"ลาดกระบัง\";\"other\"\n\"7026720\";\"Bang Khae\";\"main\"\n\"7026720\";\"บางแค\";\"other\"\n\"7026735\";\"Bang Kho Laem\";\"main\"\n\"7026735\";\"บางคอแหลม\";\"other\"\n\"7026776\";\"Bueng Kum\";\"main\"\n\"7026776\";\"bungkum\";\"other\"\n\"7026776\";\"บึงกุ่ม\";\"other\"\n\"7026785\";\"Chatuchak\";\"main\"\n\"7026785\";\"ctucakr\";\"other\"\n\"7026785\";\"จตุจักร\";\"other\"\n\"7026787\";\"Chom Thong\";\"main\"\n\"7026787\";\"cxmthxng\";\"other\"\n\"7026787\";\"จอมทอง\";\"other\"\n\"7026800\";\"Huai Khwang\";\"main\"\n\"7026800\";\"hwykhwang\";\"other\"\n\"7026800\";\"ห้วยขวาง\";\"other\"\n\"7026817\";\"Khan Na Yao\";\"main\"\n\"7026817\";\"khannayaw\";\"other\"\n\"7026817\";\"คันนายาว\";\"other\"\n\"7026826\";\"Khlong Sam Wa\";\"main\"\n\"7026826\";\"khlxng sam wa\";\"other\"\n\"7026826\";\"คลองสามวา\";\"other\"\n\"7026833\";\"Lak Si\";\"main\"\n\"7026833\";\"hlaksi\";\"other\"\n\"7026833\";\"หลักสี่\";\"other\"\n\"7026837\";\"Lat Phrao\";\"main\"\n\"7026837\";\"ladphraw\";\"other\"\n\"7026837\";\"ลาดพร้าว\";\"other\"\n\"7026842\";\"Pathum Wan\";\"main\"\n\"7026842\";\"pthumwan\";\"other\"\n\"7026842\";\"ปทุมวัน\";\"other\"\n\"7026870\";\"Phaya Thai\";\"main\"\n\"7026885\";\"Ratchathewi\";\"main\"\n\"7026885\";\"rachthewi\";\"other\"\n\"7026885\";\"ราชเทวี\";\"other\"\n\"7026886\";\"Sai Mai\";\"main\"\n\"7026886\";\"sayhim\";\"other\"\n\"7026886\";\"สายไหม\";\"other\"\n\"7026889\";\"Saphan Sung\";\"main\"\n\"7026889\";\"saphan sung\";\"other\"\n\"7026889\";\"สะพานสูง\";\"other\"\n\"7026897\";\"Sathon\";\"main\"\n\"7026897\";\"khet sathr\";\"other\"\n\"7026897\";\"เขตสาทร\";\"other\"\n\"7026898\";\"Suan Luang\";\"main\"\n\"7026898\";\"swnhlwng\";\"other\"\n\"7026898\";\"สวนหลวง\";\"other\"\n\"7026994\";\"Thawi Watthana\";\"main\"\n\"7026994\";\"ทวีวัฒนา\";\"other\"\n\"7026999\";\"Thung Khru\";\"main\"\n\"7026999\";\"thung khru\";\"other\"\n\"7026999\";\"ทุ่งครุ\";\"other\"\n\"7027001\";\"Wang Thonglang\";\"main\"\n\"7027001\";\"wangthxnghlang\";\"other\"\n\"7027001\";\"วังทองหลาง\";\"other\"\n\"7027003\";\"Watthana\";\"main\"\n\"7027003\";\"วัฒนา\";\"other\"\n\"7072944\";\"Sop Pong\";\"main\"\n\"7072944\";\"Ban Sop Pong\";\"other\"\n\"7072944\";\"ban sb pxng\";\"other\"\n\"7072944\";\"บ้านสบป่อง\";\"other\"\n\"7072944\";\"สบป่อง\";\"other\"\n\"7091861\";\"Ban Chalong\";\"main\"\n\"7091861\";\"ban chlxng\";\"other\"\n\"7091861\";\"บ้านฉลอง\";\"other\"\n\"7091912\";\"Ban Ratsada\";\"main\"\n\"7091912\";\"Ratsada\";\"other\"\n\"7091912\";\"Ратсада\";\"other\"\n\"7091912\";\"บ้านรัษฎา\";\"other\"\n\"7092271\";\"Mueang Phuket\";\"main\"\n\"7092271\";\"meuxng phuket\";\"other\"\n\"7092271\";\"เมืองภูเก็ต\";\"other\"\n\"7096430\";\"Na Mom\";\"main\"\n\"7096430\";\"na hmxm\";\"other\"\n\"7096430\";\"นาหม่อม\";\"other\"\n\"7100111\";\"Bang Sao Thong\";\"main\"\n\"7100111\";\"bangseathng\";\"other\"\n\"7100111\";\"บางเสาธง\";\"other\"\n\"7280459\";\"Ko Chang Tai\";\"main\"\n\"7280459\";\"Ko-Chang-Tai\";\"other\"\n\"7280459\";\"Ко-Чанг-Таи\";\"other\"\n\"7302488\";\"Pa Pae\";\"main\"\n\"7302488\";\"Pa-Pae\";\"other\"\n\"7302488\";\"Па-Пае\";\"other\"\n\"7302494\";\"Nai Harn\";\"main\"\n\"7302494\";\"Nai-Kharn\";\"other\"\n\"7302494\";\"Наи-Харн\";\"other\"\n\"7323625\";\"Mae Fa Luang\";\"main\"\n\"7323625\";\"แม่ฟ้าหลวง\";\"other\"\n\"7325957\";\"Wiang Chiang Rung\";\"main\"\n\"7325957\";\"เวียงเชียงรุ้ง\";\"other\"\n\"7325958\";\"Wiang Kaen\";\"main\"\n\"7325958\";\"เวียงแก่น\";\"other\"\n\"7383661\";\"Khun Tan\";\"main\"\n\"7383661\";\"ขุนตาล\";\"other\"\n\"7383662\";\"Chaloem Phra Kiat\";\"main\"\n\"7383662\";\"เฉลิมพระเกียรติ\";\"other\"\n\"7421899\";\"Mae Lao\";\"main\"\n\"7421899\";\"แม่ลาว\";\"other\"\n\"7510867\";\"Suk Samran\";\"main\"\n\"7510867\";\"กิ่งสุขสำราญ\";\"other\"\n\"7510868\";\"Wiang Nuea\";\"main\"\n\"7510868\";\"เวียงเหนือ\";\"other\"\n\"7510869\";\"Ao Luek\";\"main\"\n\"7510869\";\"อ่าวลึก\";\"other\"\n\"7510870\";\"Ban Takhun\";\"main\"\n\"7510870\";\"บ้านตาขุน\";\"other\"\n\"7510871\";\"Wiphawadi\";\"main\"\n\"7510871\";\"King Amphoe Vibhavadi\";\"other\"\n\"7510871\";\"Vibhavadi\";\"other\"\n\"7510871\";\"กิ่งวิภาวดี\";\"other\"\n\"7510872\";\"Wiang Nong Long\";\"main\"\n\"7510872\";\"King Amphoe Wiang Nong Long\";\"other\"\n\"7510872\";\"กิ่งเวียงหนองล่อง\";\"other\"\n\"7510873\";\"Tham Phannara\";\"main\"\n\"7510873\";\"ถ้ำพรรณรา\";\"other\"\n\"7510874\";\"Chai Buri\";\"main\"\n\"7510874\";\"ชัยบุรี\";\"other\"\n\"7510875\";\"Phrasaeng\";\"main\"\n\"7510875\";\"พระแสง\";\"other\"\n\"7510876\";\"Pathio\";\"main\"\n\"7510876\";\"ปะทิว\";\"other\"\n\"7510877\";\"Suan Phueng\";\"main\"\n\"7510877\";\"สวนผึ้ง\";\"other\"\n\"7510878\";\"Nong Prue\";\"main\"\n\"7510878\";\"หนองปรือ\";\"other\"\n\"7510879\";\"Mae Poen\";\"main\"\n\"7510879\";\"กิ่งแม่เปิน\";\"other\"\n\"7510880\";\"Pang Sila Thong\";\"main\"\n\"7510880\";\"กิ่งปางศิลาทอง\";\"other\"\n\"7510881\";\"Kosamphi Nakhon\";\"main\"\n\"7510881\";\"กิ่งโกสัมพีนคร\";\"other\"\n\"7510882\";\"Ban Thi\";\"main\"\n\"7510882\";\"บ้านธิ\";\"other\"\n\"7510883\";\"Manang\";\"main\"\n\"7510883\";\"กิ่งมะนัง\";\"other\"\n\"7510884\";\"Ratsada\";\"main\"\n\"7510884\";\"รัษฎา\";\"other\"\n\"7510885\";\"Phra Phrom\";\"main\"\n\"7510885\";\"พระพรหม\";\"other\"\n\"7510886\";\"Chulabhorn\";\"main\"\n\"7510886\";\"จุฬาภรณ์\";\"other\"\n\"7510887\";\"Chang Klang\";\"main\"\n\"7510887\";\"ช้างกลาง\";\"other\"\n\"7510888\";\"Phrom Khiri\";\"main\"\n\"7510888\";\"พรหมคีรี\";\"other\"\n\"7510889\";\"Nopphitam\";\"main\"\n\"7510889\";\"นบพิตำ\";\"other\"\n\"7510890\";\"Chom Bueng\";\"main\"\n\"7510890\";\"จอมบึง\";\"other\"\n\"7510891\";\"Nong Yasai\";\"main\"\n\"7510891\";\"หนองหญ้าไซ\";\"other\"\n\"7510892\";\"Huai Khot\";\"main\"\n\"7510892\";\"ห้วยคต\";\"other\"\n\"7510893\";\"Lan Sak\";\"main\"\n\"7510893\";\"ลานสัก\";\"other\"\n\"7510894\";\"Chum Ta Bong\";\"main\"\n\"7510894\";\"ชุมตาบง\";\"other\"\n\"7510895\";\"Mae Wong\";\"main\"\n\"7510895\";\"แม่วงก์\";\"other\"\n\"7510896\";\"Bueng Samakkhi\";\"main\"\n\"7510896\";\"บึงสามัคคี\";\"other\"\n\"7510897\";\"Lan Krabue\";\"main\"\n\"7510897\";\"ลานกระบือ\";\"other\"\n\"7510898\";\"Ban Dan Lan Hoi\";\"main\"\n\"7510898\";\"บ้านด่านลานหอย\";\"other\"\n\"7510899\";\"Mae Chai\";\"main\"\n\"7510899\";\"แม่ใจ\";\"other\"\n\"7510900\";\"Phu Kam Yao\";\"main\"\n\"7510900\";\"ภูกามยาว\";\"other\"\n\"7510901\";\"Chaloem Phra Kiat\";\"main\"\n\"7510901\";\"เฉลิมพระเกียรติ\";\"other\"\n\"7510902\";\"Khai Bang Rachan\";\"main\"\n\"7510902\";\"ค่ายบางระจัน\";\"other\"\n\"7510903\";\"Sawaengha\";\"main\"\n\"7510903\";\"แสวงหา\";\"other\"\n\"7510904\";\"Doem Bang Nang Buat\";\"main\"\n\"7510904\";\"เดิมบางนางบวช\";\"other\"\n\"7510905\";\"Chumsaeng\";\"main\"\n\"7510905\";\"ชุมแสง\";\"other\"\n\"7510906\";\"Kao Liao\";\"main\"\n\"7510906\";\"เก้าเลี้ยว\";\"other\"\n\"7510907\";\"Bueng Na Rang\";\"main\"\n\"7510907\";\"บึงนาราง\";\"other\"\n\"7510908\";\"Wachira Barami\";\"main\"\n\"7510908\";\"วชิรบารมี\";\"other\"\n\"7510909\";\"Thong Saen Khan\";\"main\"\n\"7510909\";\"ทองแสนขัน\";\"other\"\n\"7510910\";\"Laplae\";\"main\"\n\"7510910\";\"ลับแล\";\"other\"\n\"7510911\";\"Nong Suea\";\"main\"\n\"7510911\";\"หนองเสือ\";\"other\"\n\"7510912\";\"Chaloem Phra Kiat\";\"main\"\n\"7510912\";\"เฉลิมพระเกียรติ\";\"other\"\n\"7510913\";\"Tha Ruea\";\"main\"\n\"7510913\";\"ท่าเรือ\";\"other\"\n\"7510914\";\"Chat Trakan\";\"main\"\n\"7510914\";\"ชาติตระการ\";\"other\"\n\"7510915\";\"Na Muen\";\"main\"\n\"7510915\";\"นาหมื่น\";\"other\"\n\"7510916\";\"Santi Suk\";\"main\"\n\"7510916\";\"สันติสุข\";\"other\"\n\"7510917\";\"Phu Phiang\";\"main\"\n\"7510917\";\"ภูเพียง\";\"other\"\n\"7510918\";\"Song Khwae\";\"main\"\n\"7510918\";\"Song Khwaeo\";\"other\"\n\"7510918\";\"สองแคว\";\"other\"\n\"7510919\";\"Thung Yang Daeng\";\"main\"\n\"7510919\";\"ทุ่งยางแดง\";\"other\"\n\"7510920\";\"Nikhom Phattana\";\"main\"\n\"7510920\";\"นิคมพัฒนา\";\"other\"\n\"7510921\";\"Ko Chan\";\"main\"\n\"7510921\";\"เกาะจันทร์\";\"other\"\n\"7510922\";\"Ban Bueng\";\"main\"\n\"7510922\";\"บ้านบึง\";\"other\"\n\"7510923\";\"Si Mahosot\";\"main\"\n\"7510923\";\"ศรีมโหสถ\";\"other\"\n\"7510924\";\"Bang Nam Priao\";\"main\"\n\"7510924\";\"บางน้ำเปรี้ยว\";\"other\"\n\"7510925\";\"Khlong Khuean\";\"main\"\n\"7510925\";\"คลองเขื่อน\";\"other\"\n\"7510926\";\"Wang Muang\";\"main\"\n\"7510926\";\"วังม่วง\";\"other\"\n\"7510927\";\"Lam Sonthi\";\"main\"\n\"7510927\";\"ลำสนธิ\";\"other\"\n\"7510928\";\"Tha Luang\";\"main\"\n\"7510928\";\"ท่าหลวง\";\"other\"\n\"7510929\";\"Phakdi Chumphon\";\"main\"\n\"7510929\";\"ภักดีชุมพล\";\"other\"\n\"7510930\";\"Bueng Sam Phan\";\"main\"\n\"7510930\";\"บึงสามพัน\";\"other\"\n\"7510931\";\"Kapho\";\"main\"\n\"7510931\";\"กะพ้อ\";\"other\"\n\"7510932\";\"Khao Chamao\";\"main\"\n\"7510932\";\"เขาชะเมา\";\"other\"\n\"7510933\";\"Tha Takiap\";\"main\"\n\"7510933\";\"ท่าตะเกียบ\";\"other\"\n\"7510934\";\"Wang Nam Khiao\";\"main\"\n\"7510934\";\"วังน้ำเขียว\";\"other\"\n\"7510935\";\"Prachamtakham\";\"main\"\n\"7510935\";\"ประจันตคาม\";\"other\"\n\"7510936\";\"Sikhio\";\"main\"\n\"7510936\";\"สี่คิ้ว\";\"other\"\n\"7510937\";\"Sap Yai\";\"main\"\n\"7510937\";\"ซับใหญ่\";\"other\"\n\"7510938\";\"Nong Bua Daeng\";\"main\"\n\"7510938\";\"หนองบัวแดง\";\"other\"\n\"7510939\";\"Phu Pha Man\";\"main\"\n\"7510939\";\"ภูผาม่าน\";\"other\"\n\"7510940\";\"Erawan\";\"main\"\n\"7510940\";\"เอราวัณ\";\"other\"\n\"7510941\";\"Phu Luang\";\"main\"\n\"7510941\";\"ภูหลวง\";\"other\"\n\"7510942\";\"Pong Nam Ron\";\"main\"\n\"7510942\";\"โป่งน้ำร้อน\";\"other\"\n\"7510943\";\"Khao Khitchakut\";\"main\"\n\"7510943\";\"เขาคิชฌกูฎ\";\"other\"\n\"7510944\";\"Soi Dao\";\"main\"\n\"7510944\";\"สอยดาว\";\"other\"\n\"7510945\";\"Wang Sombun\";\"main\"\n\"7510945\";\"วังสมบูรณ์\";\"other\"\n\"7510946\";\"Nong Bunnak\";\"main\"\n\"7510946\";\"หนองบุนนาก\";\"other\"\n\"7510947\";\"Chaloem Phra Kiat\";\"main\"\n\"7510947\";\"เฉลิมพระเกียรติ\";\"other\"\n\"7510948\";\"Kaeng Sanam Nang\";\"main\"\n\"7510948\";\"แก้งสนามนาง\";\"other\"\n\"7510949\";\"Ban Lueam\";\"main\"\n\"7510949\";\"บ้านเหลื่อม\";\"other\"\n\"7510950\";\"Noen Sa-nga\";\"main\"\n\"7510950\";\"เนินสง่า\";\"other\"\n\"7510951\";\"Khok Pho Chai\";\"main\"\n\"7510951\";\"โคกโพธิ์ชัย\";\"other\"\n\"7510952\";\"Na Wang\";\"main\"\n\"7510952\";\"นาวัง\";\"other\"\n\"7510953\";\"Suwanna Khuha\";\"main\"\n\"7510953\";\"สุวรรณคูหา\";\"other\"\n\"7510954\";\"Ban Phue\";\"main\"\n\"7510954\";\"บ้านผือ\";\"other\"\n\"7510955\";\"Sangkhom\";\"main\"\n\"7510955\";\"สังคม\";\"other\"\n\"7510956\";\"Non Din Daeng\";\"main\"\n\"7510956\";\"โนนดินแดง\";\"other\"\n\"7510957\";\"Pa Kham\";\"main\"\n\"7510957\";\"ปะคำ\";\"other\"\n\"7510958\";\"Chaloem Phra Kiat\";\"main\"\n\"7510958\";\"เฉลิมพระเกียรติ\";\"other\"\n\"7510959\";\"Lam Thamen Chai\";\"main\"\n\"7510959\";\"ลำทะเมนชัย\";\"other\"\n\"7510960\";\"Mueang Yang\";\"main\"\n\"7510960\";\"เมืองยาง\";\"other\"\n\"7510961\";\"Non Daeng\";\"main\"\n\"7510961\";\"โนนแดง\";\"other\"\n\"7510962\";\"Pueai Noi\";\"main\"\n\"7510962\";\"เปือยน้อย\";\"other\"\n\"7510963\";\"Ban Mai Chaiyaphot\";\"main\"\n\"7510963\";\"บ้านใหม่ไชยพจน์\";\"other\"\n\"7510964\";\"Non Sila\";\"main\"\n\"7510964\";\"โนนศิลา\";\"other\"\n\"7510965\";\"Phra Yuen\";\"main\"\n\"7510965\";\"พระยืน\";\"other\"\n\"7510966\";\"Ubonratana\";\"main\"\n\"7510966\";\"อุบลรัตน์\";\"other\"\n\"7510967\";\"Prachak Sinlapakhom\";\"main\"\n\"7510967\";\"ประจักษ์ศิลปาคม\";\"other\"\n\"7510968\";\"Nong Wua So\";\"main\"\n\"7510968\";\"หนองวัวซอ\";\"other\"\n\"7510969\";\"Sa Khrai\";\"main\"\n\"7510969\";\"สระใคร\";\"other\"\n\"7510970\";\"Phlapphla Chai\";\"main\"\n\"7510970\";\"พลับพลาชัย\";\"other\"\n\"7510971\";\"Satuek\";\"main\"\n\"7510971\";\"สตึก\";\"other\"\n\"7510972\";\"Khu Mueang\";\"main\"\n\"7510972\";\"คูเมือง\";\"other\"\n\"7510973\";\"Si Somdet\";\"main\"\n\"7510973\";\"ศรีสมเด็จ\";\"other\"\n\"7510974\";\"Na Chueak\";\"main\"\n\"7510974\";\"นาเชือก\";\"other\"\n\"7510975\";\"Khong Chai\";\"main\"\n\"7510975\";\"ฆ้องชัย\";\"other\"\n\"7510976\";\"Borabue\";\"main\"\n\"7510976\";\"บรบือ\";\"other\"\n\"7510977\";\"Huai Mek\";\"main\"\n\"7510977\";\"ห้วยเม็ก\";\"other\"\n\"7510978\";\"Chuenchom\";\"main\"\n\"7510978\";\"ชื่นชม\";\"other\"\n\"7510979\";\"Sam Sung\";\"main\"\n\"7510979\";\"ซำสูง\";\"other\"\n\"7510980\";\"Ku Kaeo\";\"main\"\n\"7510980\";\"กู่แก้ว\";\"other\"\n\"7510981\";\"Chaiwan\";\"main\"\n\"7510981\";\"ไชยวาน\";\"other\"\n\"7510982\";\"Phibun Rak\";\"main\"\n\"7510982\";\"พิบูลย์รักษ์\";\"other\"\n\"7510983\";\"Pakkhat\";\"main\"\n\"7510983\";\"ปากคาด\";\"other\"\n\"7510984\";\"Phonphisai\";\"main\"\n\"7510984\";\"โพนพิสัย\";\"other\"\n\"7510985\";\"Si Narong\";\"main\"\n\"7510985\";\"ศรีณรงค์\";\"other\"\n\"7510986\";\"Non Narai\";\"main\"\n\"7510986\";\"โนนนารายณ์\";\"other\"\n\"7510987\";\"Khwao Sinarin\";\"main\"\n\"7510987\";\"เขวาสินรินทร์\";\"other\"\n\"7510988\";\"Thung Khao Luang\";\"main\"\n\"7510988\";\"ทุ่งเขาหลวง\";\"other\"\n\"7510989\";\"Pho Chai\";\"main\"\n\"7510989\";\"โพธิ์ชัย\";\"other\"\n\"7510990\";\"Chiang Khwan\";\"main\"\n\"7510990\";\"เชียงขวัญ\";\"other\"\n\"7510991\";\"Changhan\";\"main\"\n\"7510991\";\"จังหาร\";\"other\"\n\"7510992\";\"Don Chan\";\"main\"\n\"7510992\";\"ดอนจาน\";\"other\"\n\"7510993\";\"Phu Phan\";\"main\"\n\"7510993\";\"ภูพาน\";\"other\"\n\"7510994\";\"Huai Phueng\";\"main\"\n\"7510994\";\"ห้วยผึ้ง\";\"other\"\n\"7510995\";\"Si Wilai\";\"main\"\n\"7510995\";\"ศรีวิไล\";\"other\"\n\"7510996\";\"Si Rattana\";\"main\"\n\"7510996\";\"ศรีรัตนะ\";\"other\"\n\"7510997\";\"Phu Sing\";\"main\"\n\"7510997\";\"ภูสิงห์\";\"other\"\n\"7510998\";\"Mueang Chan\";\"main\"\n\"7510998\";\"เมืองจันทร์\";\"other\"\n\"7510999\";\"Pho Si Suwan\";\"main\"\n\"7510999\";\"โพธิ์ศรีสุวรรณ\";\"other\"\n\"7511000\";\"Bueng Bun\";\"main\"\n\"7511000\";\"บึงบูรณ์\";\"other\"\n\"7511001\";\"Sila Lat\";\"main\"\n\"7511001\";\"ศิลาลาด\";\"other\"\n\"7511002\";\"Pa Tio\";\"main\"\n\"7511002\";\"ป่าติ้ว\";\"other\"\n\"7511003\";\"Kham Khuean Kaeo\";\"main\"\n\"7511003\";\"คำเขื่อนแก้ว\";\"other\"\n\"7511004\";\"Thai Charoen\";\"main\"\n\"7511004\";\"ไทยเจริญ\";\"other\"\n\"7511005\";\"Moeiwadi\";\"main\"\n\"7511005\";\"เมยวดี\";\"other\"\n\"7511006\";\"Phon Na Kaeo\";\"main\"\n\"7511006\";\"โพนนาแก้ว\";\"other\"\n\"7511007\";\"Khok Si Suphan\";\"main\"\n\"7511007\";\"โคกศรีสุพรรณ\";\"other\"\n\"7511008\";\"Wangyang\";\"main\"\n\"7511008\";\"วังยาง\";\"other\"\n\"7511009\";\"Bueng Khong Long\";\"main\"\n\"7511009\";\"บึงโขงหลง\";\"other\"\n\"7511010\";\"Nathom\";\"main\"\n\"7511010\";\"นาทม\";\"other\"\n\"7511011\";\"Thung Si Udom\";\"main\"\n\"7511011\";\"ทุ่งศรีอุดม\";\"other\"\n\"7511012\";\"Nam Khun\";\"main\"\n\"7511012\";\"น้ำขุ่น\";\"other\"\n\"7511013\";\"Benchalak\";\"main\"\n\"7511013\";\"เบญจลักษ์\";\"other\"\n\"7511014\";\"Lao Suea Kok\";\"main\"\n\"7511014\";\"เหล่าเสือโก้ก\";\"other\"\n\"7511015\";\"Pathum Ratchawongsa\";\"main\"\n\"7511015\";\"ปทุมราชวงศา\";\"other\"\n\"7511016\";\"Lue Amnat\";\"main\"\n\"7511016\";\"ลืออำนาจ\";\"other\"\n\"7511017\";\"Si Mueang Mai\";\"main\"\n\"7511017\";\"ศรีเมืองใหม่\";\"other\"\n\"7511018\";\"Sawang Wirawong\";\"main\"\n\"7511018\";\"สว่างวีระวงศ์\";\"other\"\n\"7511019\";\"Don Mot Daeng\";\"main\"\n\"7511019\";\"ดอนมดแดง\";\"other\"\n\"7511020\";\"Wiang Sa\";\"main\"\n\"7511020\";\"เวียงสระ\";\"other\"\n\"7511021\";\"Mae Wang\";\"main\"\n\"7511021\";\"แม่วาง\";\"other\"\n\"7511022\";\"Wang Wiset\";\"main\"\n\"7511022\";\"วังวิเศษ\";\"other\"\n\"7511023\";\"Si Banphot\";\"main\"\n\"7511023\";\"ศรีบรรพต\";\"other\"\n\"7511024\";\"Thepharak\";\"main\"\n\"7511024\";\"เทพารักษ์\";\"other\"\n\"7511025\";\"Khao Kho\";\"main\"\n\"7511025\";\"เขาค้อ\";\"other\"\n\"7511026\";\"Phra Thong Kham\";\"main\"\n\"7511026\";\"พระทองคำ\";\"other\"\n\"7511027\";\"Wiang Kao\";\"main\"\n\"7511027\";\"เวียงเก่า\";\"other\"\n\"7511028\";\"Khaen Dong\";\"main\"\n\"7511028\";\"King Amphoe Khaen Dong\";\"other\"\n\"7511028\";\"แคนดง\";\"other\"\n\"7511029\";\"Sirindon\";\"main\"\n\"7511029\";\"Sirindhorn\";\"other\"\n\"7511029\";\"สิรินธร\";\"other\"\n\"7511033\";\"Nuea Khlong\";\"main\"\n\"7511045\";\"Sida\";\"main\"\n\"7511045\";\"สีดา\";\"other\"\n\"7511049\";\"Sinakharin\";\"main\"\n\"7511049\";\"King Amphoe Srinagarindra\";\"other\"\n\"7511049\";\"Srinagarindra\";\"other\"\n\"7511049\";\"ศรีนครินทร์\";\"other\"\n\"7511051\";\"Sam Chai\";\"main\"\n\"7511051\";\"King Amphoe Sam Chai\";\"other\"\n\"7511051\";\"สามชัย\";\"other\"\n\"7511053\";\"Dong Charoen\";\"main\"\n\"7511053\";\"ดงเจริญ\";\"other\"\n\"7511054\";\"Wang Sai Phun\";\"main\"\n\"7511054\";\"วังทรายพูน\";\"other\"\n\"7524617\";\"Chaem Luang\";\"main\"\n\"7524617\";\"แจ่มหลวง\";\"other\"\n\"7525691\";\"Rattanawapi\";\"main\"\n\"7525691\";\"Amphoe Rattanawapi\";\"other\"\n\"7525691\";\"King Amphoe Rattanawapi\";\"other\"\n\"7525691\";\"รัตนวาปี\";\"other\"\n\"1220112\";\"Yovan\";\"main\"\n\"1220112\";\"Yavan\";\"other\"\n\"1220112\";\"Yovon\";\"other\"\n\"1220163\";\"Vose’\";\"main\"\n\"1220163\";\"Vose'\";\"ascii\"\n\"1220163\";\"Aral\";\"other\"\n\"1220163\";\"Imeni Vose\";\"other\"\n\"1220163\";\"Kal Khaz\";\"other\"\n\"1220163\";\"Kolkhozabad\";\"other\"\n\"1220163\";\"Paytok\";\"other\"\n\"1220164\";\"Vorukh\";\"main\"\n\"1220164\";\"Varukh\";\"other\"\n\"1220197\";\"Varzob\";\"main\"\n\"1220197\";\"Obi-Dzhuk\";\"other\"\n\"1220210\";\"Vanj\";\"main\"\n\"1220210\";\"Kala-i-Vanch\";\"other\"\n\"1220210\";\"Rokharv\";\"other\"\n\"1220210\";\"Vanch\";\"other\"\n\"1220210\";\"Ванҷ\";\"other\"\n\"1220219\";\"Vakhsh\";\"main\"\n\"1220219\";\"Vakhshstroi\";\"other\"\n\"1220219\";\"Vakhshstroy\";\"other\"\n\"1220253\";\"Istaravshan\";\"main\"\n\"1220253\";\"Bundzhikat\";\"other\"\n\"1220253\";\"Ura-Tyube\";\"other\"\n\"1220253\";\"Uroteppa\";\"other\"\n\"1220253\";\"Ŭroteppa\";\"other\"\n\"1220253\";\"Истаравшан\";\"other\"\n\"1220301\";\"Tursunzoda\";\"main\"\n\"1220301\";\"Regar\";\"other\"\n\"1220301\";\"Tursunzade\";\"other\"\n\"1220301\";\"Турсунзаде\";\"other\"\n\"1220380\";\"Tartki\";\"main\"\n\"1220380\";\"Tartku\";\"other\"\n\"1220401\";\"Tagob\";\"main\"\n\"1220401\";\"Tabok\";\"other\"\n\"1220401\";\"Takob\";\"other\"\n\"1220446\";\"Sovety\";\"main\"\n\"1220446\";\"Kizyl-Mazar\";\"other\"\n\"1220446\";\"Kizyl-Mazar-Bolo\";\"other\"\n\"1220446\";\"Kyzul-Mazar-Bolo\";\"other\"\n\"1220446\";\"Kyzyl-Mazar\";\"other\"\n\"1220446\";\"Kyzyl-Mazar-Bolo\";\"other\"\n\"1220446\";\"Kzyl-Mazar\";\"other\"\n\"1220446\";\"Kzyl-Mazar-Bolo\";\"other\"\n\"1220446\";\"Sovetskiy\";\"other\"\n\"1220446\";\"Sovetskoye\";\"other\"\n\"1220498\";\"Shughnon\";\"main\"\n\"1220498\";\"Shugnan\";\"other\"\n\"1220498\";\"Shugnon\";\"other\"\n\"1220498\";\"Tikhoro\";\"other\"\n\"1220498\";\"Verkhniy Khorog\";\"other\"\n\"1220498\";\"Тихоро\";\"other\"\n\"1220498\";\"Шуғнон\";\"other\"\n\"1220566\";\"Shakhrinav\";\"main\"\n\"1220566\";\"Cheptura\";\"other\"\n\"1220566\";\"Schachrinau\";\"other\"\n\"1220566\";\"Shahrinav\";\"other\"\n\"1220566\";\"Shakhrinau\";\"other\"\n\"1220566\";\"Shakhrinay\";\"other\"\n\"1220576\";\"Shahrtuz\";\"main\"\n\"1220576\";\"Shaarfuz\";\"other\"\n\"1220576\";\"Shaartuz\";\"other\"\n\"1220694\";\"Roshtqal’a\";\"main\"\n\"1220694\";\"Roshtqal'a\";\"ascii\"\n\"1220694\";\"Rosht-Kala\";\"other\"\n\"1220694\";\"Роштқалъа\";\"other\"\n\"1220701\";\"Roghun\";\"main\"\n\"1220701\";\"Ragun\";\"other\"\n\"1220701\";\"Rogun\";\"other\"\n\"1220747\";\"Qŭrghonteppa\";\"main\"\n\"1220747\";\"Qurghonteppa\";\"ascii\"\n\"1220747\";\"Kurgan Tjube\";\"other\"\n\"1220747\";\"Kurgan-Tyube\";\"other\"\n\"1220747\";\"Qurghan Tyube\";\"other\"\n\"1220747\";\"Qurghān Tyube\";\"other\"\n\"1220747\";\"Курган Тюбе\";\"other\"\n\"1220750\";\"Panj\";\"main\"\n\"1220750\";\"Baumanabad\";\"other\"\n\"1220750\";\"Kirovabad\";\"other\"\n\"1220750\";\"Kirowabad\";\"other\"\n\"1220750\";\"Pyandzh\";\"other\"\n\"1220750\";\"Sarai\";\"other\"\n\"1220750\";\"Sarai-Kamar\";\"other\"\n\"1220750\";\"Saray Komar\";\"other\"\n\"1220750\";\"Saray-Kamar\";\"other\"\n\"1220798\";\"Panjakent\";\"main\"\n\"1220798\";\"Panjkent\";\"other\"\n\"1220798\";\"Pendshikent\";\"other\"\n\"1220798\";\"Pendzhakent\";\"other\"\n\"1220798\";\"Pendzhikent\";\"other\"\n\"1220798\";\"Penjikent\";\"other\"\n\"1220798\";\"Пенджикент\";\"other\"\n\"1220826\";\"Farkhor\";\"main\"\n\"1220826\";\"Parkbar\";\"other\"\n\"1220826\";\"Parkhar\";\"other\"\n\"1220826\";\"Фархор\";\"other\"\n\"1220853\";\"Orzu\";\"main\"\n\"1220855\";\"Kofarnihon\";\"main\"\n\"1220855\";\"Kofarnikhon\";\"other\"\n\"1220855\";\"Kofarnikhona\";\"other\"\n\"1220855\";\"Ordhonikidzeabad\";\"other\"\n\"1220855\";\"Ordzhonikidzeabad\";\"other\"\n\"1220855\";\"Orjonikidzeabad\";\"other\"\n\"1220855\";\"Orjonikidzeobod\";\"other\"\n\"1220855\";\"Yangi-Bazar\";\"other\"\n\"1220855\";\"Кофарнихона\";\"other\"\n\"1220888\";\"Obigarm\";\"main\"\n\"1220905\";\"Norak\";\"main\"\n\"1220905\";\"Nurek\";\"other\"\n\"1220936\";\"Novobod\";\"main\"\n\"1220936\";\"Navabad\";\"other\"\n\"1220936\";\"Novabad\";\"other\"\n\"1220936\";\"Nusratobod\";\"other\"\n\"1220936\";\"Nusstatobad\";\"other\"\n\"1220936\";\"Shul'mak\";\"other\"\n\"1220936\";\"Shul’mak\";\"other\"\n\"1220962\";\"Murghob\";\"main\"\n\"1220962\";\"Margab\";\"other\"\n\"1220962\";\"Murgab\";\"other\"\n\"1220962\";\"Murghab\";\"other\"\n\"1220962\";\"Murghabi\";\"other\"\n\"1220962\";\"Murghāb\";\"other\"\n\"1220962\";\"Murghābi\";\"other\"\n\"1220962\";\"Pamir Post\";\"other\"\n\"1220962\";\"Pamirski Post\";\"other\"\n\"1220962\";\"Pamīrski Post\";\"other\"\n\"1220962\";\"Post Pamirskiy\";\"other\"\n\"1220962\";\"Pāmir Post\";\"other\"\n\"1221091\";\"Mŭminobod\";\"main\"\n\"1221091\";\"Muminobod\";\"ascii\"\n\"1221091\";\"Leningrad\";\"other\"\n\"1221091\";\"Leningradskiy\";\"other\"\n\"1221091\";\"Muminabad\";\"other\"\n\"1221091\";\"Mumynabad\";\"other\"\n\"1221091\";\"Мӯминобод\";\"other\"\n\"1221136\";\"Kuybishevsk\";\"main\"\n\"1221136\";\"Aral\";\"other\"\n\"1221136\";\"Kuibyshevabad\";\"other\"\n\"1221136\";\"Kuybyshevabad\";\"other\"\n\"1221136\";\"Kuybyshevsk\";\"other\"\n\"1221136\";\"Kuybyshevskiy\";\"other\"\n\"1221194\";\"Kŭlob\";\"main\"\n\"1221194\";\"Kulob\";\"ascii\"\n\"1221194\";\"Kulab\";\"other\"\n\"1221194\";\"Kuljab\";\"other\"\n\"1221194\";\"Kulyab\";\"other\"\n\"1221194\";\"Куляб\";\"other\"\n\"1221250\";\"Komsomolobod\";\"main\"\n\"1221250\";\"Komsomolabad\";\"other\"\n\"1221250\";\"Komsomolbad\";\"other\"\n\"1221250\";\"Pombachi\";\"other\"\n\"1221259\";\"Kolkhozobod\";\"main\"\n\"1221259\";\"Kaganovichabad\";\"other\"\n\"1221259\";\"Kaganowtschab\";\"other\"\n\"1221259\";\"Kolkhozabad\";\"other\"\n\"1221259\";\"Tugalan\";\"other\"\n\"1221259\";\"Tugolan\";\"other\"\n\"1221297\";\"Kirovskiy\";\"main\"\n\"1221297\";\"Imeni Kirova\";\"other\"\n\"1221297\";\"Sovkhoz Imeni Kirova\";\"other\"\n\"1221328\";\"Khorugh\";\"main\"\n\"1221328\";\"Khorog\";\"other\"\n\"1221328\";\"Хорог\";\"other\"\n\"1221328\";\"Хоруғ\";\"other\"\n\"1221344\";\"Khodzha-Maston\";\"main\"\n\"1221494\";\"Karakenja\";\"main\"\n\"1221494\";\"Kara-Gendzha\";\"other\"\n\"1221494\";\"Kara-Gendzhe\";\"other\"\n\"1221494\";\"Karakendzha\";\"other\"\n\"1221494\";\"Kurz-Genje\";\"other\"\n\"1221614\";\"Ishkashim\";\"main\"\n\"1221614\";\"Ishkashim Post\";\"other\"\n\"1221614\";\"Ishkāshīm Post\";\"other\"\n\"1221614\";\"Nud\";\"other\"\n\"1221614\";\"Nuda\";\"other\"\n\"1221614\";\"Ишкашим\";\"other\"\n\"1221714\";\"Hisor\";\"main\"\n\"1221714\";\"Gissar\";\"other\"\n\"1221714\";\"Khisor\";\"other\"\n\"1221714\";\"Staryy Gissar\";\"other\"\n\"1221714\";\"Гиссар\";\"other\"\n\"1221740\";\"Gharm\";\"main\"\n\"1221740\";\"Garm\";\"other\"\n\"1221748\";\"Garavuti\";\"main\"\n\"1221808\";\"Jilikul\";\"main\"\n\"1221808\";\"Dzhil'kul'\";\"other\"\n\"1221808\";\"Dzhilikol\";\"other\"\n\"1221808\";\"Dzhilikul'\";\"other\"\n\"1221808\";\"Dzhilikul’\";\"other\"\n\"1221808\";\"Dzhil’kul’\";\"other\"\n\"1221871\";\"Dŭsty\";\"main\"\n\"1221871\";\"Dusty\";\"ascii\"\n\"1221871\";\"Dusti\";\"other\"\n\"1221871\";\"Molotovabad\";\"other\"\n\"1221871\";\"Pyandzh\";\"other\"\n\"1221874\";\"Dushanbe\";\"main\"\n\"1221874\";\"Djuschambe\";\"other\"\n\"1221874\";\"Doesjanbe\";\"other\"\n\"1221874\";\"Douchanbe\";\"other\"\n\"1221874\";\"Douchanbé\";\"other\"\n\"1221874\";\"Dusanbe\";\"other\"\n\"1221874\";\"Dusanbeo\";\"other\"\n\"1221874\";\"Duschanbe\";\"other\"\n\"1221874\";\"Dushambe\";\"other\"\n\"1221874\";\"Dusjanbe\";\"other\"\n\"1221874\";\"Duszanbe\";\"other\"\n\"1221874\";\"Duŝanbeo\";\"other\"\n\"1221874\";\"Duşanbe\";\"other\"\n\"1221874\";\"Dušanbe\";\"other\"\n\"1221874\";\"Dušanbė\";\"other\"\n\"1221874\";\"Dušhanbe\";\"other\"\n\"1221874\";\"Dyushambe\";\"other\"\n\"1221874\";\"Düşənbə\";\"other\"\n\"1221874\";\"Jushambe\";\"other\"\n\"1221874\";\"Ntousanmpe\";\"other\"\n\"1221874\";\"Stalinabad\";\"other\"\n\"1221874\";\"do~ushanbe\";\"other\"\n\"1221874\";\"du shang bie\";\"other\"\n\"1221874\";\"dusyanbe\";\"other\"\n\"1221874\";\"dwshnbh\";\"other\"\n\"1221874\";\"dwsnbh\";\"other\"\n\"1221874\";\"Ντουσάνμπε\";\"other\"\n\"1221874\";\"Душанбе\";\"other\"\n\"1221874\";\"דושנבה\";\"other\"\n\"1221874\";\"دوشنبه\";\"other\"\n\"1221874\";\"ዱሻንቤ\";\"other\"\n\"1221874\";\"ドゥシャンベ\";\"other\"\n\"1221874\";\"杜尚别\";\"other\"\n\"1221874\";\"두샨베\";\"other\"\n\"1221965\";\"Danghara\";\"main\"\n\"1221965\";\"Dangar\";\"other\"\n\"1221965\";\"Dangara\";\"other\"\n\"1221965\";\"Дангара\";\"other\"\n\"1221997\";\"Chubek\";\"main\"\n\"1221997\";\"Moskovskiy\";\"other\"\n\"1222009\";\"Chorbog\";\"main\"\n\"1222085\";\"Bŭstonqal’a\";\"main\"\n\"1222085\";\"Bustonqal'a\";\"ascii\"\n\"1222085\";\"Bustonkala\";\"other\"\n\"1222107\";\"Boshkengash\";\"main\"\n\"1222107\";\"Bashkyngash\";\"other\"\n\"1222107\";\"Boshkengosh\";\"other\"\n\"1222222\";\"Ayny\";\"main\"\n\"1222222\";\"Aini\";\"other\"\n\"1222222\";\"Ayni\";\"other\"\n\"1222222\";\"Varziminor\";\"other\"\n\"1222222\";\"Varzominor\";\"other\"\n\"1222222\";\"Zakhmatabad\";\"other\"\n\"1514829\";\"Taboshar\";\"main\"\n\"1514829\";\"Taboshary\";\"other\"\n\"1514829\";\"Табошар\";\"other\"\n\"1514831\";\"Shŭrob\";\"main\"\n\"1514831\";\"Shurob\";\"ascii\"\n\"1514831\";\"Schurab\";\"other\"\n\"1514831\";\"Shurab\";\"other\"\n\"1514839\";\"Proletarsk\";\"main\"\n\"1514839\";\"Dragomirovo\";\"other\"\n\"1514839\";\"Jabar Rasulov\";\"other\"\n\"1514839\";\"Jabbor Rasulov\";\"other\"\n\"1514843\";\"Palas\";\"main\"\n\"1514844\";\"Pakhtakoron\";\"main\"\n\"1514852\";\"Nefteobod\";\"main\"\n\"1514852\";\"Nefteabad\";\"other\"\n\"1514852\";\"Predyvak\";\"other\"\n\"1514856\";\"Nov\";\"main\"\n\"1514856\";\"Nau\";\"other\"\n\"1514870\";\"Quruqsoy\";\"main\"\n\"1514870\";\"Kuruksay\";\"other\"\n\"1514870\";\"Kurusay\";\"other\"\n\"1514877\";\"Kim\";\"main\"\n\"1514877\";\"Nefteprom Kim\";\"other\"\n\"1514877\";\"Santo\";\"other\"\n\"1514879\";\"Khujand\";\"main\"\n\"1514879\";\"Chodzjand\";\"other\"\n\"1514879\";\"Chudschand\";\"other\"\n\"1514879\";\"Chudzandas\";\"other\"\n\"1514879\";\"Chudzjand\";\"other\"\n\"1514879\";\"Chudžandas\";\"other\"\n\"1514879\";\"Hodjent\";\"other\"\n\"1514879\";\"Hudzand\";\"other\"\n\"1514879\";\"Hudžand\";\"other\"\n\"1514879\";\"Khodjent\";\"other\"\n\"1514879\";\"Khodyent\";\"other\"\n\"1514879\";\"Khodzhent\";\"other\"\n\"1514879\";\"Khojend\";\"other\"\n\"1514879\";\"Khudzhand\";\"other\"\n\"1514879\";\"Khuzhant\";\"other\"\n\"1514879\";\"Kojend\";\"other\"\n\"1514879\";\"Leninabad\";\"other\"\n\"1514879\";\"Leninobod\";\"other\"\n\"1514879\";\"Ursaten\";\"other\"\n\"1514879\";\"Xo'jand\";\"other\"\n\"1514879\";\"hojendo\";\"other\"\n\"1514879\";\"khjnd\";\"other\"\n\"1514879\";\"ku zhan\";\"other\"\n\"1514879\";\"Ходжент\";\"other\"\n\"1514879\";\"Худжанд\";\"other\"\n\"1514879\";\"Хужант\";\"other\"\n\"1514879\";\"Хуҷанд\";\"other\"\n\"1514879\";\"خجند\";\"other\"\n\"1514879\";\"ホジェンド\";\"other\"\n\"1514879\";\"苦盏\";\"other\"\n\"1514889\";\"Kaindisoy\";\"main\"\n\"1514889\";\"Kansai\";\"other\"\n\"1514889\";\"Kansay\";\"other\"\n\"1514889\";\"Svints\";\"other\"\n\"1514891\";\"Konibodom\";\"main\"\n\"1514891\";\"Kanibadam\";\"other\"\n\"1514891\";\"Канибадам\";\"other\"\n\"1514896\";\"Isfara\";\"main\"\n\"1514896\";\"Исфара\";\"other\"\n\"1514913\";\"Bŭston\";\"main\"\n\"1514913\";\"Buston\";\"ascii\"\n\"1514913\";\"Yantak\";\"other\"\n\"1514921\";\"Asht\";\"main\"\n\"1514921\";\"Shaidan\";\"other\"\n\"1514921\";\"Shaydan\";\"other\"\n\"1514925\";\"Oltintopkan\";\"main\"\n\"1514925\";\"Altyn-Topkan\";\"other\"\n\"1514929\";\"Adrasmon\";\"main\"\n\"1514929\";\"Adrasman\";\"other\"\n\"1538311\";\"Chkalovsk\";\"main\"\n\"4031110\";\"Fale\";\"main\"\n\"4031110\";\"Fakaofu Village\";\"other\"\n\"7522181\";\"Nukunonu\";\"main\"\n\"7522181\";\"Nukunonu Village\";\"other\"\n\"7522183\";\"Atafu Village\";\"main\"\n\"1645457\";\"Dili\";\"main\"\n\"1645457\";\"Delhi\";\"other\"\n\"1645457\";\"Dilhi\";\"other\"\n\"1645457\";\"Dilis\";\"other\"\n\"1645457\";\"Dilli\";\"other\"\n\"1645457\";\"Dilly\";\"other\"\n\"1645457\";\"Dilo\";\"other\"\n\"1645457\";\"Dily\";\"other\"\n\"1645457\";\"Díli\";\"other\"\n\"1645457\";\"Nova Dili\";\"other\"\n\"1645457\";\"di li\";\"other\"\n\"1645457\";\"dilli\";\"other\"\n\"1645457\";\"diri\";\"other\"\n\"1645457\";\"dyly\";\"other\"\n\"1645457\";\"Дили\";\"other\"\n\"1645457\";\"דילי\";\"other\"\n\"1645457\";\"ディリ\";\"other\"\n\"1645457\";\"帝力\";\"other\"\n\"1645457\";\"딜리\";\"other\"\n\"161616\";\"Balkanabat\";\"main\"\n\"161616\";\"Nebit-Dag\";\"other\"\n\"161616\";\"Nebitdag\";\"other\"\n\"161616\";\"Neftedag\";\"other\"\n\"161616\";\"Балканабат\";\"other\"\n\"161616\";\"Небит-Даг\";\"other\"\n\"161901\";\"Kaka\";\"main\"\n\"161901\";\"Kaakhka\";\"other\"\n\"161901\";\"Кака\";\"other\"\n\"161931\";\"Gyzylarbat\";\"main\"\n\"161931\";\"Kizil-Arvat\";\"other\"\n\"161931\";\"Kizyl-Arvat\";\"other\"\n\"161931\";\"Kyzyl-Arvat\";\"other\"\n\"161931\";\"Кизил-Арват\";\"other\"\n\"161943\";\"Gumdag\";\"main\"\n\"161943\";\"Gumdage\";\"other\"\n\"161943\";\"Khudaidag\";\"other\"\n\"161943\";\"Khuday-Dag\";\"other\"\n\"161943\";\"Kum-Dag\";\"other\"\n\"161943\";\"Гумдаге\";\"other\"\n\"161974\";\"Gazanjyk\";\"main\"\n\"161974\";\"Gazandzhyk\";\"other\"\n\"161974\";\"Kasandshik\";\"other\"\n\"161974\";\"Kazandzhik\";\"other\"\n\"161974\";\"Kazanjik\";\"other\"\n\"161974\";\"Газанджык\";\"other\"\n\"161983\";\"Pewrize\";\"main\"\n\"161983\";\"Firjuza\";\"other\"\n\"161983\";\"Firyuza\";\"other\"\n\"161983\";\"Фирюза\";\"other\"\n\"162099\";\"Büzmeýin\";\"main\"\n\"162099\";\"Buzmeyin\";\"ascii\"\n\"162099\";\"Bezmein\";\"other\"\n\"162158\";\"Bäherden\";\"main\"\n\"162158\";\"Baherden\";\"ascii\"\n\"162158\";\"Bakharden\";\"other\"\n\"162183\";\"Ashgabat\";\"main\"\n\"162183\";\"Achgabat\";\"other\"\n\"162183\";\"Achkhabad - Asgabat\";\"other\"\n\"162183\";\"Achkhabad - Aşgabat\";\"other\"\n\"162183\";\"Aschabad\";\"other\"\n\"162183\";\"Aschabadas\";\"other\"\n\"162183\";\"Asgabat\";\"other\"\n\"162183\";\"Asgabato\";\"other\"\n\"162183\";\"Ashkabad\";\"other\"\n\"162183\";\"Ashkhabad\";\"other\"\n\"162183\";\"Ashkhobad\";\"other\"\n\"162183\";\"Ashqabad\";\"other\"\n\"162183\";\"Asjchabad\";\"other\"\n\"162183\";\"Asjkhabad\";\"other\"\n\"162183\";\"Askabad\";\"other\"\n\"162183\";\"Askhabad\";\"other\"\n\"162183\";\"Asnkampat\";\"other\"\n\"162183\";\"Asqabad\";\"other\"\n\"162183\";\"Aszchabad\";\"other\"\n\"162183\";\"Aŝgabato\";\"other\"\n\"162183\";\"Aşgabat\";\"other\"\n\"162183\";\"Aşqabad\";\"other\"\n\"162183\";\"Ašchabad\";\"other\"\n\"162183\";\"Ašchabadas\";\"other\"\n\"162183\";\"Ašgabat\";\"other\"\n\"162183\";\"Poltoratsk\";\"other\"\n\"162183\";\"a shen ha ba de\";\"other\"\n\"162183\";\"ashigabato\";\"other\"\n\"162183\";\"ashkhabadi\";\"other\"\n\"162183\";\"asigabateu\";\"other\"\n\"162183\";\"Ασγκαμπάτ\";\"other\"\n\"162183\";\"Ашгабат\";\"other\"\n\"162183\";\"Ашхабад\";\"other\"\n\"162183\";\"Ашхобад\";\"other\"\n\"162183\";\"אשגאבט\";\"other\"\n\"162183\";\"عشق‌آباد\";\"other\"\n\"162183\";\"აშხაბადი\";\"other\"\n\"162183\";\"አሽጋባት\";\"other\"\n\"162183\";\"‎阿什哈巴德\";\"other\"\n\"162183\";\"アシガバート\";\"other\"\n\"162183\";\"阿什哈巴德\";\"other\"\n\"162183\";\"아시가바트\";\"other\"\n\"162199\";\"Änew\";\"main\"\n\"162199\";\"Anew\";\"ascii\"\n\"162199\";\"Anau\";\"other\"\n\"162199\";\"Annau\";\"other\"\n\"162199\";\"Enev\";\"other\"\n\"601475\";\"Tagta\";\"main\"\n\"601475\";\"Takhta\";\"other\"\n\"601551\";\"Akdepe\";\"main\"\n\"601551\";\"Ak-Tepe\";\"other\"\n\"601551\";\"Ak-Tyube\";\"other\"\n\"601551\";\"Leninsk\";\"other\"\n\"601551\";\"Акдепе\";\"other\"\n\"601594\";\"Türkmenbaşy\";\"main\"\n\"601594\";\"Turkmenbasy\";\"ascii\"\n\"601594\";\"KRASNOVODSK\";\"other\"\n\"601594\";\"Krasnovodsk\";\"other\"\n\"601594\";\"Krasnowodsk\";\"other\"\n\"601594\";\"Krassnowodsk\";\"other\"\n\"601594\";\"Tuerkmenbasy\";\"other\"\n\"601594\";\"Turkmenbashi\";\"other\"\n\"601594\";\"Turkmenbashy\";\"other\"\n\"601594\";\"Turkmenbasi\";\"other\"\n\"601594\";\"Turkmenbaszy\";\"other\"\n\"601594\";\"Türkmenbashy\";\"other\"\n\"601594\";\"Türkmenbaşı\";\"other\"\n\"601594\";\"КРАСНОВОДСК\";\"other\"\n\"601594\";\"Красноводск\";\"other\"\n\"601594\";\"Туркменбаші\";\"other\"\n\"601608\";\"Köneürgench\";\"main\"\n\"601608\";\"Koeneuergench\";\"ascii\"\n\"601608\";\"Gadymy UErgenc\";\"other\"\n\"601608\";\"Gadymy Ürgenç\";\"other\"\n\"601608\";\"Koeneuergenc\";\"other\"\n\"601608\";\"Koneurgench\";\"other\"\n\"601608\";\"Kounya-Ourguentch\";\"other\"\n\"601608\";\"Kunja-Urgench\";\"other\"\n\"601608\";\"Kunja-Urgentj\";\"other\"\n\"601608\";\"Kunya Urgench\";\"other\"\n\"601608\";\"Kunya-Urgen\";\"other\"\n\"601608\";\"Kunya-Urgench\";\"other\"\n\"601608\";\"Köneürgenç\";\"other\"\n\"601608\";\"grganj\";\"other\"\n\"601608\";\"kone-uleugenchi\";\"other\"\n\"601608\";\"Куня-Ургенч\";\"other\"\n\"601608\";\"گرگانج\";\"other\"\n\"601608\";\"코네우르겐치\";\"other\"\n\"601661\";\"Boldumsaz\";\"main\"\n\"601661\";\"Kalinin\";\"other\"\n\"601661\";\"Kalininsk\";\"other\"\n\"601661\";\"Porsu\";\"other\"\n\"601661\";\"Porsy\";\"other\"\n\"601661\";\"Болдумсаз\";\"other\"\n\"601734\";\"Daşoguz\";\"main\"\n\"601734\";\"Dasoguz\";\"ascii\"\n\"601734\";\"Dashhowuz\";\"other\"\n\"601734\";\"Dashkhovuz\";\"other\"\n\"601734\";\"Dashoguz\";\"other\"\n\"601734\";\"Dashowuz\";\"other\"\n\"601734\";\"Daşoğuz\";\"other\"\n\"601734\";\"Dašhowuz\";\"other\"\n\"601734\";\"Tashauz\";\"other\"\n\"601734\";\"Taszauz\";\"other\"\n\"601734\";\"Дашогуз\";\"other\"\n\"1218021\";\"Yolöten\";\"main\"\n\"1218021\";\"Yoloten\";\"ascii\"\n\"1218021\";\"Iolotan'\";\"other\"\n\"1218021\";\"Iolotan’\";\"other\"\n\"1218021\";\"Yolotan\";\"other\"\n\"1218021\";\"Иолотань\";\"other\"\n\"1218239\";\"Tejen\";\"main\"\n\"1218239\";\"Tedjen\";\"other\"\n\"1218239\";\"Tedzen\";\"other\"\n\"1218239\";\"Tedzhen\";\"other\"\n\"1218239\";\"Tedżen\";\"other\"\n\"1218239\";\"Tejend\";\"other\"\n\"1218239\";\"Теджен\";\"other\"\n\"1218420\";\"Seydi\";\"main\"\n\"1218420\";\"Neftezavodsk\";\"other\"\n\"1218420\";\"Sejdi\";\"other\"\n\"1218420\";\"Сейди\";\"other\"\n\"1218436\";\"Saýat\";\"main\"\n\"1218436\";\"Sayat\";\"ascii\"\n\"1218612\";\"Murgab\";\"main\"\n\"1218612\";\"Stalino\";\"other\"\n\"1218667\";\"Mary\";\"main\"\n\"1218667\";\"Merv\";\"other\"\n\"1218667\";\"Мары\";\"other\"\n\"1219002\";\"Atamyrat\";\"main\"\n\"1219002\";\"Kerki\";\"other\"\n\"1219002\";\"Qarki\";\"other\"\n\"1219002\";\"Qārki\";\"other\"\n\"1219002\";\"Атамырат\";\"other\"\n\"1219377\";\"Serhetabat\";\"main\"\n\"1219377\";\"Gusgy\";\"other\"\n\"1219377\";\"Gushgy\";\"other\"\n\"1219377\";\"Guşgy\";\"other\"\n\"1219377\";\"Kushk Post\";\"other\"\n\"1219377\";\"Kushka\";\"other\"\n\"1219377\";\"Kushkinskiy Post\";\"other\"\n\"1219377\";\"Serkhetabat\";\"other\"\n\"1219377\";\"Серхетабат\";\"other\"\n\"1219392\";\"Gowurdak\";\"main\"\n\"1219392\";\"Gaurdak\";\"other\"\n\"1219392\";\"Gaurdakstroy\";\"other\"\n\"1219392\";\"Gaurdstroi\";\"other\"\n\"1219392\";\"Gaurdstroy\";\"other\"\n\"1219431\";\"Farap\";\"main\"\n\"1219431\";\"Farab\";\"other\"\n\"1219431\";\"Фарап\";\"other\"\n\"1219649\";\"Türkmenabat\";\"main\"\n\"1219649\";\"Turkmenabat\";\"ascii\"\n\"1219649\";\"Chardzha\";\"other\"\n\"1219649\";\"Chardzhou\";\"other\"\n\"1219649\";\"Chardzhui\";\"other\"\n\"1219649\";\"Chardzhuy\";\"other\"\n\"1219649\";\"Charjew\";\"other\"\n\"1219649\";\"Charjou\";\"other\"\n\"1219649\";\"Chärjew\";\"other\"\n\"1219649\";\"Leninsk-Turkmenski\";\"other\"\n\"1219649\";\"Leninsk-Turmenski\";\"other\"\n\"1219649\";\"Nov Charjui\";\"other\"\n\"1219649\";\"Nov Chārjui\";\"other\"\n\"1219649\";\"Novo Chardzhou\";\"other\"\n\"1219649\";\"Novo-Chardzhuy\";\"other\"\n\"1219649\";\"Tuerkmenabat\";\"other\"\n\"1219649\";\"Turkmenabad\";\"other\"\n\"1219649\";\"te~yurukumenabato\";\"other\"\n\"1219649\";\"tuleukeumenabateu\";\"other\"\n\"1219649\";\"turkmenabat\";\"other\"\n\"1219649\";\"Туркменабат\";\"other\"\n\"1219649\";\"Чарджоу\";\"other\"\n\"1219649\";\"テュルクメナバート\";\"other\"\n\"1219649\";\"투르크메나바트\";\"other\"\n\"1219762\";\"Bayramaly\";\"main\"\n\"1219762\";\"Bairam Ali\";\"other\"\n\"1219762\";\"Bajramalijskogo\";\"other\"\n\"1219762\";\"Bayram-Ali\";\"other\"\n\"1219762\";\"Байрамалийского\";\"other\"\n\"1514792\";\"Gazojak\";\"main\"\n\"1514792\";\"Gaz-Achak\";\"other\"\n\"2463810\";\"Matmata\";\"main\"\n\"2463810\";\"Kalaa Matmata\";\"other\"\n\"2463810\";\"Matmatah\";\"other\"\n\"2463810\";\"Maţmāţah\";\"other\"\n\"2463810\";\"Матмата\";\"other\"\n\"2463951\";\"Zāwiyat al Jadīdī\";\"main\"\n\"2463951\";\"Zawiyat al Jadidi\";\"ascii\"\n\"2463951\";\"Sidi Djedid\";\"other\"\n\"2463951\";\"Sidi Djedidi\";\"other\"\n\"2463951\";\"Zaouiat Djedidi\";\"other\"\n\"2463951\";\"Zaouiet Djedidi\";\"other\"\n\"2463951\";\"Zaouit Djedidi\";\"other\"\n\"2464037\";\"Zahānah\";\"main\"\n\"2464037\";\"Zahanah\";\"ascii\"\n\"2464037\";\"Zana\";\"other\"\n\"2464037\";\"Зана\";\"other\"\n\"2464041\";\"Zaghouan\";\"main\"\n\"2464041\";\"Zaghouane\";\"other\"\n\"2464041\";\"Zaghwan\";\"other\"\n\"2464041\";\"Zaghwān\";\"other\"\n\"2464041\";\"Zarhouan\";\"other\"\n\"2464157\";\"Wādī Malīz\";\"main\"\n\"2464157\";\"Wadi Maliz\";\"ascii\"\n\"2464157\";\"Oued Meliz\";\"other\"\n\"2464168\";\"Oued Lill\";\"main\"\n\"2464168\";\"Oued Ellil\";\"other\"\n\"2464168\";\"Wadi al Layl\";\"other\"\n\"2464168\";\"Wādī al Layl\";\"other\"\n\"2464427\";\"Ţūzah\";\"main\"\n\"2464427\";\"Tuzah\";\"ascii\"\n\"2464427\";\"Touza\";\"other\"\n\"2464427\";\"Tuza\";\"other\"\n\"2464470\";\"Tunis\";\"main\"\n\"2464470\";\"Tunes\";\"other\"\n\"2464470\";\"Tunez\";\"other\"\n\"2464470\";\"Tunis-Ville\";\"other\"\n\"2464470\";\"Tunisas\";\"other\"\n\"2464470\";\"Tunisi\";\"other\"\n\"2464470\";\"Tunisz\";\"other\"\n\"2464470\";\"Tunizo\";\"other\"\n\"2464470\";\"Tynida\";\"other\"\n\"2464470\";\"Túnez\";\"other\"\n\"2464470\";\"Túnis\";\"other\"\n\"2464470\";\"chunisu\";\"other\"\n\"2464470\";\"tu ni si\";\"other\"\n\"2464470\";\"tu ni si shi\";\"other\"\n\"2464470\";\"twiniseu\";\"other\"\n\"2464470\";\"twns\";\"other\"\n\"2464470\";\"twnys\";\"other\"\n\"2464470\";\"tyunisa\";\"other\"\n\"2464470\";\"Τύνιδα\";\"other\"\n\"2464470\";\"Тунис\";\"other\"\n\"2464470\";\"תוניס\";\"other\"\n\"2464470\";\"تونس\";\"other\"\n\"2464470\";\"ट्युनिस\";\"other\"\n\"2464470\";\"ቱኒስ\";\"other\"\n\"2464470\";\"チュニス\";\"other\"\n\"2464470\";\"突尼斯\";\"other\"\n\"2464470\";\"突尼斯市\";\"other\"\n\"2464470\";\"튀니스\";\"other\"\n\"2464648\";\"Tozeur\";\"main\"\n\"2464648\";\"Tawzar\";\"other\"\n\"2464648\";\"Tozer\";\"other\"\n\"2464648\";\"Тозер\";\"other\"\n\"2464701\";\"Tataouine\";\"main\"\n\"2464701\";\"Foum Tatahouine\";\"other\"\n\"2464701\";\"Foum Tataouine\";\"other\"\n\"2464701\";\"Fum Tatawin\";\"other\"\n\"2464701\";\"Fum Taţāwīn\";\"other\"\n\"2464701\";\"Fumm Tattauin\";\"other\"\n\"2464701\";\"Tatahouine\";\"other\"\n\"2464701\";\"Tatahouïne\";\"other\"\n\"2464701\";\"Tatawin\";\"other\"\n\"2464701\";\"Taţāwīn\";\"other\"\n\"2464704\";\"Tastūr\";\"main\"\n\"2464704\";\"Tastur\";\"ascii\"\n\"2464704\";\"Testour\";\"other\"\n\"2464704\";\"Tichilla\";\"other\"\n\"2464770\";\"Tamaghzah\";\"main\"\n\"2464770\";\"Tamerza\";\"other\"\n\"2464770\";\"Тамерза\";\"other\"\n\"2464795\";\"Thala\";\"main\"\n\"2464795\";\"Tala\";\"other\"\n\"2464795\";\"Talah\";\"other\"\n\"2464795\";\"Tālah\";\"other\"\n\"2464804\";\"Tāklisah\";\"main\"\n\"2464804\";\"Taklisah\";\"ascii\"\n\"2464804\";\"Takelsa\";\"other\"\n\"2464809\";\"Tajerouine\";\"main\"\n\"2464809\";\"Tadjerouine\";\"other\"\n\"2464809\";\"Tadjrouine\";\"other\"\n\"2464809\";\"Tadjrouïne\";\"other\"\n\"2464855\";\"Tabursuq\";\"main\"\n\"2464855\";\"Teboursouk\";\"other\"\n\"2464855\";\"Teboursouq\";\"other\"\n\"2464871\";\"Tabarka\";\"main\"\n\"2464871\";\"Tabarca\";\"other\"\n\"2464871\";\"Tabarqa\";\"other\"\n\"2464871\";\"Tabarqah\";\"other\"\n\"2464871\";\"Thabraca\";\"other\"\n\"2464871\";\"Ţabarqah\";\"other\"\n\"2464915\";\"Sousse\";\"main\"\n\"2464915\";\"Hadrumetum\";\"other\"\n\"2464915\";\"Sousa\";\"other\"\n\"2464915\";\"Souse\";\"other\"\n\"2464915\";\"Soussa\";\"other\"\n\"2464915\";\"Susa\";\"other\"\n\"2464915\";\"Susah\";\"other\"\n\"2464915\";\"Suss\";\"other\"\n\"2464915\";\"Sūsah\";\"other\"\n\"2464915\";\"qyrnh\";\"other\"\n\"2464915\";\"susu\";\"other\"\n\"2464915\";\"swst\";\"other\"\n\"2464915\";\"xi lan ni\";\"other\"\n\"2464915\";\"Сусс\";\"other\"\n\"2464915\";\"קירנה\";\"other\"\n\"2464915\";\"سوسة\";\"other\"\n\"2464915\";\"スース\";\"other\"\n\"2464915\";\"昔兰尼\";\"other\"\n\"2465030\";\"Siliana\";\"main\"\n\"2465030\";\"Silyanah\";\"other\"\n\"2465030\";\"Silyānah\";\"other\"\n\"2465030\";\"Souk el Kremis\";\"other\"\n\"2465030\";\"Силиана\";\"other\"\n\"2465138\";\"Sīdī ‘Ulwān\";\"main\"\n\"2465138\";\"Sidi `Ulwan\";\"ascii\"\n\"2465138\";\"Sidi Allouane\";\"other\"\n\"2465138\";\"Sidi Alluan\";\"other\"\n\"2465138\";\"Sidi Alouane\";\"other\"\n\"2465138\";\"Sidi Eluan\";\"other\"\n\"2465840\";\"Sidi Bouzid\";\"main\"\n\"2465840\";\"Gammouda\";\"other\"\n\"2465840\";\"Qamudah\";\"other\"\n\"2465840\";\"Qamūdah\";\"other\"\n\"2465840\";\"Sidi Bou Zid\";\"other\"\n\"2465840\";\"Sidi Bu Zayd\";\"other\"\n\"2465840\";\"Sidi-Bu-Zid\";\"other\"\n\"2465840\";\"Sīdī Bū Zayd\";\"other\"\n\"2465840\";\"Сиди-Бу-Зид\";\"other\"\n\"2466034\";\"Sidi Bou Ali\";\"main\"\n\"2466034\";\"Sidi Bu `Ali\";\"other\"\n\"2466034\";\"Sīdī Bū ‘Alī\";\"other\"\n\"2466075\";\"Sīdī Bin Nūr\";\"main\"\n\"2466075\";\"Sidi Bin Nur\";\"ascii\"\n\"2466075\";\"Sidi Ben Nour\";\"other\"\n\"2466075\";\"Sidi Ben Nur\";\"other\"\n\"2466499\";\"Sidi el Hani\";\"main\"\n\"2466499\";\"Camp de Sidi el Hani\";\"other\"\n\"2466499\";\"El Hani\";\"other\"\n\"2466499\";\"Sidi al Hani'\";\"other\"\n\"2466499\";\"Sīdī al Hāni’\";\"other\"\n\"2466688\";\"Sidi Bou Saïd\";\"main\"\n\"2466688\";\"Sidi Bou Said\";\"ascii\"\n\"2466688\";\"Sidi Abi Sa`id\";\"other\"\n\"2466688\";\"Sidi Bu Said\";\"other\"\n\"2466688\";\"Sidi Bu Saïd\";\"other\"\n\"2466688\";\"Sīdī Abī Sa‘īd\";\"other\"\n\"2466688\";\"Сиди Бу Саид\";\"other\"\n\"2466897\";\"Shurbān\";\"main\"\n\"2466897\";\"Shurban\";\"ascii\"\n\"2466897\";\"Chorbane\";\"other\"\n\"2466897\";\"Chourbane\";\"other\"\n\"2467077\";\"Shabīkah\";\"main\"\n\"2467077\";\"Shabikah\";\"ascii\"\n\"2467077\";\"Chebica\";\"other\"\n\"2467077\";\"Chebika\";\"other\"\n\"2467077\";\"Chebikha\";\"other\"\n\"2467077\";\"Чебика\";\"other\"\n\"2467239\";\"Sakiet Sidi Youssef\";\"main\"\n\"2467239\";\"Sakiet Sidi Youssof\";\"other\"\n\"2467239\";\"Saqiyat Sidi Yusuf\";\"other\"\n\"2467239\";\"Sidi Youssef\";\"other\"\n\"2467239\";\"Sāqiyat Sīdī Yūsuf\";\"other\"\n\"2467246\";\"Şaqānis\";\"main\"\n\"2467246\";\"Saqanis\";\"ascii\"\n\"2467246\";\"Chekanes\";\"other\"\n\"2467246\";\"Skanes\";\"other\"\n\"2467368\";\"Sejenane\";\"main\"\n\"2467368\";\"Sajanan\";\"other\"\n\"2467368\";\"Sajanān\";\"other\"\n\"2467368\";\"Sajnan\";\"other\"\n\"2467368\";\"Sajnān\";\"other\"\n\"2467368\";\"Sedjenane\";\"other\"\n\"2467454\";\"Sfax\";\"main\"\n\"2467454\";\"Safakis\";\"other\"\n\"2467454\";\"Safaqis\";\"other\"\n\"2467454\";\"Sfvks\";\"other\"\n\"2467454\";\"Taparura\";\"other\"\n\"2467454\";\"sfaqs\";\"other\"\n\"2467454\";\"spqs\";\"other\"\n\"2467454\";\"sufakkusu\";\"other\"\n\"2467454\";\"Şafāqis\";\"other\"\n\"2467454\";\"Сфвкс\";\"other\"\n\"2467454\";\"ספקס\";\"other\"\n\"2467454\";\"صفاقس\";\"other\"\n\"2467454\";\"スファックス\";\"other\"\n\"2467506\";\"Sbiba\";\"main\"\n\"2467506\";\"Sabibah\";\"other\"\n\"2467506\";\"Sabībah\";\"other\"\n\"2467521\";\"La Sebala du Mornag\";\"main\"\n\"2467521\";\"Cebala-du-Mornag\";\"other\"\n\"2467521\";\"La Cebala\";\"other\"\n\"2467521\";\"La Cebala du Mornag\";\"other\"\n\"2467521\";\"Sabalat Murnaq\";\"other\"\n\"2467521\";\"Sabālat Murnāq\";\"other\"\n\"2467783\";\"Remada\";\"main\"\n\"2467783\";\"Ramadah\";\"other\"\n\"2467783\";\"Ramādah\";\"other\"\n\"2467813\";\"Rafrāf\";\"main\"\n\"2467813\";\"Rafraf\";\"ascii\"\n\"2467815\";\"Radès\";\"main\"\n\"2467815\";\"Rades\";\"ascii\"\n\"2467815\";\"Maxula\";\"other\"\n\"2467815\";\"Maxula-Rades\";\"other\"\n\"2467815\";\"Maxula-Radès\";\"other\"\n\"2467815\";\"Radis\";\"other\"\n\"2467815\";\"Rādis\";\"other\"\n\"2467856\";\"Ksour Essaf\";\"main\"\n\"2467856\";\"Ksursef\";\"other\"\n\"2467856\";\"Qsour Essaf\";\"other\"\n\"2467856\";\"Qusur as Saf\";\"other\"\n\"2467856\";\"Quşūr as Sāf\";\"other\"\n\"2467890\";\"Quşaybat al Madyūnī\";\"main\"\n\"2467890\";\"Qusaybat al Madyuni\";\"ascii\"\n\"2467890\";\"Ksib-el-Mediouni\";\"other\"\n\"2467890\";\"Ksiba-el-Mediouni\";\"other\"\n\"2467890\";\"Ksibet el Mediouni\";\"other\"\n\"2467890\";\"Sieba\";\"other\"\n\"2467890\";\"Xiebah\";\"other\"\n\"2467914\";\"Qurbuş\";\"main\"\n\"2467914\";\"Qurbus\";\"ascii\"\n\"2467914\";\"Korbous\";\"other\"\n\"2467914\";\"Korbous Dar el Oudiane\";\"other\"\n\"2467914\";\"Korbus\";\"other\"\n\"2467914\";\"Корбус\";\"other\"\n\"2467920\";\"Korba\";\"main\"\n\"2467920\";\"Kourba\";\"other\"\n\"2467920\";\"Kurba\";\"other\"\n\"2467920\";\"Qurbah\";\"other\"\n\"2467920\";\"Корба\";\"other\"\n\"2467959\";\"Qulaybīyah\";\"main\"\n\"2467959\";\"Qulaybiyah\";\"ascii\"\n\"2467959\";\"Clupea\";\"other\"\n\"2467959\";\"Kelibia\";\"other\"\n\"2467959\";\"Kelibija\";\"other\"\n\"2467959\";\"Kélibia\";\"other\"\n\"2467959\";\"Келибия\";\"other\"\n\"2467980\";\"Quballāţ\";\"main\"\n\"2467980\";\"Quballat\";\"ascii\"\n\"2467980\";\"Goubellat\";\"other\"\n\"2468018\";\"Kebili\";\"main\"\n\"2468018\";\"Qibili\";\"other\"\n\"2468018\";\"Qibilī\";\"other\"\n\"2468106\";\"Qaşr Hallāl\";\"main\"\n\"2468106\";\"Qasr Hallal\";\"ascii\"\n\"2468106\";\"Kassar el Hal\";\"other\"\n\"2468106\";\"Kesser el Hal\";\"other\"\n\"2468106\";\"Ksar Hellal\";\"other\"\n\"2468245\";\"Carthage\";\"main\"\n\"2468245\";\"Karfagen\";\"other\"\n\"2468245\";\"Qartajannah\";\"other\"\n\"2468245\";\"Qarţājannah\";\"other\"\n\"2468245\";\"Карфаген\";\"other\"\n\"2468285\";\"El Fahs\";\"main\"\n\"2468285\";\"Al Fahs\";\"other\"\n\"2468285\";\"Al Faḩş\";\"other\"\n\"2468285\";\"Fahs\";\"other\"\n\"2468285\";\"Pont du Fas\";\"other\"\n\"2468285\";\"Pont-du-Fahs\";\"other\"\n\"2468285\";\"Port-du-Fachs\";\"other\"\n\"2468285\";\"Qantarat al Fahs\";\"other\"\n\"2468285\";\"Qanţarat al Faḩş\";\"other\"\n\"2468329\";\"Qal‘at al Andalus\";\"main\"\n\"2468329\";\"Qal'at al Andalus\";\"ascii\"\n\"2468329\";\"El Gelaah\";\"other\"\n\"2468329\";\"Galaat el Andeless\";\"other\"\n\"2468329\";\"Galaat el Andless\";\"other\"\n\"2468329\";\"Galaat el Anndles\";\"other\"\n\"2468329\";\"Galaat el Anndlès\";\"other\"\n\"2468329\";\"Galas el Andeless\";\"other\"\n\"2468329\";\"Guelaat el Andeless\";\"other\"\n\"2468329\";\"Guelaat-el-Andless\";\"other\"\n\"2468329\";\"Kalaat-El-Andaleus\";\"other\"\n\"2468329\";\"Kalaat-el-Andleus\";\"other\"\n\"2468329\";\"Kalat-al'-Andalus\";\"other\"\n\"2468329\";\"Qal`at al Andalus\";\"other\"\n\"2468329\";\"Калат-аль-Андалус\";\"other\"\n\"2468349\";\"Qa‘fūr\";\"main\"\n\"2468349\";\"Qa`fur\";\"ascii\"\n\"2468349\";\"Gaffour\";\"other\"\n\"2468349\";\"Gafour\";\"other\"\n\"2468353\";\"Gafsa\";\"main\"\n\"2468353\";\"Capsa\";\"other\"\n\"2468353\";\"Gafso\";\"other\"\n\"2468353\";\"Justiniania\";\"other\"\n\"2468353\";\"Kafsa\";\"other\"\n\"2468353\";\"Qafsah\";\"other\"\n\"2468353\";\"Qafşah\";\"other\"\n\"2468353\";\"Гафса\";\"other\"\n\"2468369\";\"Gabès\";\"main\"\n\"2468369\";\"Gabes\";\"ascii\"\n\"2468369\";\"Abes\";\"other\"\n\"2468369\";\"Kabis\";\"other\"\n\"2468369\";\"Kābis\";\"other\"\n\"2468369\";\"Qabes\";\"other\"\n\"2468369\";\"Qabis\";\"other\"\n\"2468369\";\"Qābis\";\"other\"\n\"2468369\";\"Tacapae\";\"other\"\n\"2468369\";\"Tacape\";\"other\"\n\"2468369\";\"qabs\";\"other\"\n\"2468369\";\"wlayt qabs\";\"other\"\n\"2468369\";\"Габес\";\"other\"\n\"2468369\";\"قابس\";\"other\"\n\"2468369\";\"ولاية قابس\";\"other\"\n\"2468459\";\"Nibbar\";\"main\"\n\"2468459\";\"Nebeur\";\"other\"\n\"2468561\";\"Nefta\";\"main\"\n\"2468561\";\"Aggarset Nepte\";\"other\"\n\"2468561\";\"Naftah\";\"other\"\n\"2468561\";\"Nafţah\";\"other\"\n\"2468561\";\"Netta\";\"other\"\n\"2468561\";\"Нефта\";\"other\"\n\"2468925\";\"Midoun\";\"main\"\n\"2468925\";\"Midun\";\"other\"\n\"2468925\";\"Mīdūn\";\"other\"\n\"2468925\";\"Мидун\";\"other\"\n\"2469088\";\"Mateur\";\"main\"\n\"2469088\";\"Matem\";\"other\"\n\"2469088\";\"Matir\";\"other\"\n\"2469088\";\"Māţir\";\"other\"\n\"2469140\";\"Masākin\";\"main\"\n\"2469140\";\"Masakin\";\"ascii\"\n\"2469140\";\"M'saken\";\"other\"\n\"2469140\";\"Msaken\";\"other\"\n\"2469140\";\"Msaker\";\"other\"\n\"2469140\";\"msakn\";\"other\"\n\"2469140\";\"مساكن\";\"other\"\n\"2469252\";\"Manzil Sālim\";\"main\"\n\"2469252\";\"Manzil Salim\";\"ascii\"\n\"2469252\";\"Menzel Salem\";\"other\"\n\"2469252\";\"Sidi Amor Ben Salem\";\"other\"\n\"2469252\";\"Sidi `Umar Bin Salim\";\"other\"\n\"2469252\";\"Sīdī ‘Umar Bin Sālim\";\"other\"\n\"2469255\";\"Manzil Kāmil\";\"main\"\n\"2469255\";\"Manzil Kamil\";\"ascii\"\n\"2469255\";\"Menzel Kamel\";\"other\"\n\"2469256\";\"Menzel Jemil\";\"main\"\n\"2469256\";\"Djemil\";\"other\"\n\"2469256\";\"Manzil Jamil\";\"other\"\n\"2469256\";\"Manzil Jamīl\";\"other\"\n\"2469256\";\"Menjel Djemil\";\"other\"\n\"2469256\";\"Mennzel Djemil\";\"other\"\n\"2469256\";\"Menzel Djemil\";\"other\"\n\"2469258\";\"Menzel Heurr\";\"main\"\n\"2469258\";\"Manzil Hurr\";\"other\"\n\"2469258\";\"Manzil Ḩurr\";\"other\"\n\"2469258\";\"Men-zel Huerr\";\"other\"\n\"2469258\";\"Mennzel Heur\";\"other\"\n\"2469258\";\"Menzel Heur\";\"other\"\n\"2469258\";\"Menzel Horr\";\"other\"\n\"2469258\";\"Menzel el Heurr\";\"other\"\n\"2469262\";\"Manzil Bū Zalafah\";\"main\"\n\"2469262\";\"Manzil Bu Zalafah\";\"ascii\"\n\"2469262\";\"Mennzel Bou Zelfa\";\"other\"\n\"2469262\";\"Menzel Bou Zelfa\";\"other\"\n\"2469264\";\"Menzel Bourguiba\";\"main\"\n\"2469264\";\"Bourguiba\";\"other\"\n\"2469264\";\"Ferryville\";\"other\"\n\"2469264\";\"Manzil Bu Ruqaybah\";\"other\"\n\"2469264\";\"Manzil Bū Ruqaybah\";\"other\"\n\"2469264\";\"Sidi Fath Allah\";\"other\"\n\"2469264\";\"Sīdī Fatḩ Allāh\";\"other\"\n\"2469268\";\"Menzel Abderhaman\";\"main\"\n\"2469268\";\"Manzil `Abd ar Rahman\";\"other\"\n\"2469268\";\"Manzil ‘Abd ar Raḩmān\";\"other\"\n\"2469268\";\"Mennzel Abd er Rahmane\";\"other\"\n\"2469268\";\"Mennzel-Abd-er-Ralmane\";\"other\"\n\"2469268\";\"Menzel Abd er Rahmane\";\"other\"\n\"2469268\";\"Menzel Abd-er-Raman\";\"other\"\n\"2469268\";\"Menzel Abderrahman\";\"other\"\n\"2469274\";\"Manouba\";\"main\"\n\"2469274\";\"La Manouba\";\"other\"\n\"2469274\";\"Manubah\";\"other\"\n\"2469274\";\"Manūbah\";\"other\"\n\"2469321\";\"Melloulèche\";\"main\"\n\"2469321\";\"Mellouleche\";\"ascii\"\n\"2469321\";\"Mallulash\";\"other\"\n\"2469321\";\"Mallūlash\";\"other\"\n\"2469321\";\"Meliouneche\";\"other\"\n\"2469321\";\"Meliounèche\";\"other\"\n\"2469321\";\"Mellouneche\";\"other\"\n\"2469321\";\"Mellounêche\";\"other\"\n\"2469321\";\"Mellulesh\";\"other\"\n\"2469341\";\"Maktar\";\"main\"\n\"2469341\";\"Mactaris\";\"other\"\n\"2469341\";\"Makthar\";\"other\"\n\"2469386\";\"Majāz al Bāb\";\"main\"\n\"2469386\";\"Majaz al Bab\";\"ascii\"\n\"2469386\";\"Medjez el Bab\";\"other\"\n\"2469571\";\"Lamţah\";\"main\"\n\"2469571\";\"Lamtah\";\"ascii\"\n\"2469571\";\"Lampta\";\"other\"\n\"2469571\";\"Lamta\";\"other\"\n\"2469571\";\"Lemta\";\"other\"\n\"2469744\";\"Kesra\";\"main\"\n\"2469744\";\"Kasra\";\"other\"\n\"2469744\";\"Kessera\";\"other\"\n\"2469744\";\"Kisrah\";\"other\"\n\"2470088\";\"Jendouba\";\"main\"\n\"2470088\";\"Dzhenduba\";\"other\"\n\"2470088\";\"Jundubah\";\"other\"\n\"2470088\";\"Jundūbah\";\"other\"\n\"2470088\";\"Souk el Arba\";\"other\"\n\"2470088\";\"Souq el Arba\";\"other\"\n\"2470088\";\"Suq al Arba`a'\";\"other\"\n\"2470088\";\"Sūq al Arba‘ā’\";\"other\"\n\"2470088\";\"Джендуба\";\"other\"\n\"2470120\";\"Jilma\";\"main\"\n\"2470120\";\"Djilma\";\"other\"\n\"2470120\";\"Jilmah\";\"other\"\n\"2470173\";\"Zarzis\";\"main\"\n\"2470173\";\"Jarjis\";\"other\"\n\"2470173\";\"Jarjīs\";\"other\"\n\"2470173\";\"Zarzia\";\"other\"\n\"2470189\";\"Jemna\";\"main\"\n\"2470189\";\"Djemma\";\"other\"\n\"2470189\";\"Djemna\";\"other\"\n\"2470189\";\"Jamnah\";\"other\"\n\"2470191\";\"Jammāl\";\"main\"\n\"2470191\";\"Jammal\";\"ascii\"\n\"2470191\";\"Djemal\";\"other\"\n\"2470191\";\"Djemmal\";\"other\"\n\"2470191\";\"Djemmel\";\"other\"\n\"2470191\";\"Dzhamal'\";\"other\"\n\"2470191\";\"Джамаль\";\"other\"\n\"2470260\";\"Jabinyānah\";\"main\"\n\"2470260\";\"Jabinyanah\";\"ascii\"\n\"2470260\";\"Djebaniana\";\"other\"\n\"2470260\";\"Djebeliana\";\"other\"\n\"2470260\";\"Djebeniana\";\"other\"\n\"2470260\";\"Djebiniana\";\"other\"\n\"2470384\";\"Houmt Souk\";\"main\"\n\"2470384\";\"Djerba\";\"other\"\n\"2470384\";\"Hawmat as Suq\";\"other\"\n\"2470384\";\"Houmet Es Souk\";\"other\"\n\"2470384\";\"Houmet Essouk\";\"other\"\n\"2470384\";\"Houmt Souq\";\"other\"\n\"2470384\";\"Humk-Suk\";\"other\"\n\"2470384\";\"Humt-Suk\";\"other\"\n\"2470384\";\"Ḩawmat as Sūq\";\"other\"\n\"2470483\";\"Harqalah\";\"main\"\n\"2470483\";\"Hergla\";\"other\"\n\"2470483\";\"Herkla\";\"other\"\n\"2470579\";\"Hammam Sousse\";\"main\"\n\"2470579\";\"Hadrumete\";\"other\"\n\"2470579\";\"Hadrumète\";\"other\"\n\"2470579\";\"Hammam Susa\";\"other\"\n\"2470579\";\"Hammam Susah\";\"other\"\n\"2470579\";\"Hamman-Sousse\";\"other\"\n\"2470579\";\"Justiniapolis\";\"other\"\n\"2470579\";\"Ḩammām Sūsah\";\"other\"\n\"2470588\";\"Hammam-Lif\";\"main\"\n\"2470588\";\"Hammam al Anf\";\"other\"\n\"2470588\";\"Hamman-Lif\";\"other\"\n\"2470588\";\"Khammam-Lif\";\"other\"\n\"2470588\";\"Хаммам-Лиф\";\"other\"\n\"2470588\";\"Ḩammām al Anf\";\"other\"\n\"2470656\";\"La Goulette\";\"main\"\n\"2470656\";\"El Aouina\";\"other\"\n\"2470656\";\"Goletta\";\"other\"\n\"2470656\";\"Goulette\";\"other\"\n\"2470656\";\"Halk el Oued\";\"other\"\n\"2470656\";\"Halq al Wadi\";\"other\"\n\"2470656\";\"Halq el Oued\";\"other\"\n\"2470656\";\"La Goletta\";\"other\"\n\"2470656\";\"La Gouletta\";\"other\"\n\"2470656\";\"Ḩalq al Wādī\";\"other\"\n\"2470800\";\"Haffouz\";\"main\"\n\"2470800\";\"Haffuz\";\"other\"\n\"2470800\";\"Pichon\";\"other\"\n\"2470800\";\"Ḩaffūz\";\"other\"\n\"2470996\";\"Ghār al Milḩ\";\"main\"\n\"2470996\";\"Ghar al Milh\";\"ascii\"\n\"2470996\";\"Gar-ehl'-Mela\";\"other\"\n\"2470996\";\"Ghar el Melah\";\"other\"\n\"2470996\";\"Porto Farina\";\"other\"\n\"2470996\";\"Rar el Melah\";\"other\"\n\"2470996\";\"Rhar el Melah\";\"other\"\n\"2470996\";\"Ruscania\";\"other\"\n\"2470996\";\"Гар-эль-Мела\";\"other\"\n\"2471287\";\"Douz\";\"main\"\n\"2471287\";\"Duz\";\"other\"\n\"2471287\";\"Dūz\";\"other\"\n\"2471287\";\"Дуз\";\"other\"\n\"2471454\";\"Degache\";\"main\"\n\"2471454\";\"Deguach\";\"other\"\n\"2471475\";\"Dawwār Tīnjah\";\"main\"\n\"2471475\";\"Dawwar Tinjah\";\"ascii\"\n\"2471475\";\"Douar Tindja\";\"other\"\n\"2471637\";\"Dar Chabanne\";\"main\"\n\"2471637\";\"Dar Chabane\";\"other\"\n\"2471637\";\"Dar Sha`ban\";\"other\"\n\"2471637\";\"Dar-Chaabane\";\"other\"\n\"2471637\";\"Dar-Chaabane-el-Fehri\";\"other\"\n\"2471637\";\"Dār Sha`bān\";\"other\"\n\"2471915\";\"Bū ‘Urqūb\";\"main\"\n\"2471915\";\"Bu `Urqub\";\"ascii\"\n\"2471915\";\"Bou Arkoub\";\"other\"\n\"2472261\";\"Bū ‘Arādah\";\"main\"\n\"2472261\";\"Bu `Aradah\";\"ascii\"\n\"2472261\";\"Bou Arada\";\"other\"\n\"2472379\";\"Bi’r ‘Alī Bin Khalīfah\";\"main\"\n\"2472379\";\"Bi'r `Ali Bin Khalifah\";\"ascii\"\n\"2472379\";\"Bir Ali Ben Khalifa\";\"other\"\n\"2472379\";\"Bir Ali Ben Khalifat\";\"other\"\n\"2472380\";\"Bi’r al Ḩufayy\";\"main\"\n\"2472380\";\"Bi'r al Hufayy\";\"ascii\"\n\"2472380\";\"Bir el Afey\";\"other\"\n\"2472380\";\"Bir el Hafey\";\"other\"\n\"2472431\";\"Bin Qirdān\";\"main\"\n\"2472431\";\"Bin Qirdan\";\"ascii\"\n\"2472431\";\"Ben Gardan\";\"other\"\n\"2472431\";\"Ben Gardane\";\"other\"\n\"2472431\";\"Ben-Gardan\";\"other\"\n\"2472431\";\"Ben-Gardán\";\"other\"\n\"2472706\";\"Bizerte\";\"main\"\n\"2472706\";\"Banzart\";\"other\"\n\"2472706\";\"Biserta\";\"other\"\n\"2472706\";\"Bizerta\";\"other\"\n\"2472706\";\"Hippo Diarrhytus\";\"other\"\n\"2472706\";\"Hippou Aksa\";\"other\"\n\"2472706\";\"bnzrt\";\"other\"\n\"2472706\";\"byzrth\";\"other\"\n\"2472706\";\"Бизерта\";\"other\"\n\"2472706\";\"ביזרטה\";\"other\"\n\"2472706\";\"بنزرت\";\"other\"\n\"2472722\";\"Beni Khiar\";\"main\"\n\"2472722\";\"Bani Khiyar\";\"other\"\n\"2472722\";\"Banī Khiyār\";\"other\"\n\"2472722\";\"Beni Khaar\";\"other\"\n\"2472722\";\"Beni Kriar\";\"other\"\n\"2472724\";\"Banī Khallād\";\"main\"\n\"2472724\";\"Bani Khallad\";\"ascii\"\n\"2472724\";\"Beni Khalled\";\"other\"\n\"2472724\";\"Beni Kraled\";\"other\"\n\"2472726\";\"Banī Khaddāsh\";\"main\"\n\"2472726\";\"Bani Khaddash\";\"ascii\"\n\"2472726\";\"Beni Kheddache\";\"other\"\n\"2472726\";\"Beni Kreddache\";\"other\"\n\"2472726\";\"El Ben Kheddaone\";\"other\"\n\"2472726\";\"Kreddache\";\"other\"\n\"2472732\";\"Banī Ḩassān\";\"main\"\n\"2472732\";\"Bani Hassan\";\"ascii\"\n\"2472732\";\"Beni Hassan\";\"other\"\n\"2472732\";\"Beni Hassane\";\"other\"\n\"2472744\";\"Banbalah\";\"main\"\n\"2472744\";\"Bembla\";\"other\"\n\"2472774\";\"Béja\";\"main\"\n\"2472774\";\"Beja\";\"ascii\"\n\"2472774\";\"Bajah\";\"other\"\n\"2472774\";\"Bedja\";\"other\"\n\"2472774\";\"Bedzha\";\"other\"\n\"2472774\";\"Bājah\";\"other\"\n\"2472774\";\"Беджа\";\"other\"\n\"2472833\";\"Zouila\";\"main\"\n\"2472833\";\"Az Zawilah\";\"other\"\n\"2472833\";\"Az Zawīlah\";\"other\"\n\"2472833\";\"Zuila\";\"other\"\n\"2473161\";\"Skhira\";\"main\"\n\"2473161\";\"As Sukhayrah\";\"other\"\n\"2473161\";\"Aş Şukhayrah\";\"other\"\n\"2473161\";\"Cekhira\";\"other\"\n\"2473161\";\"El Skhirra\";\"other\"\n\"2473161\";\"La Skhira\";\"other\"\n\"2473161\";\"La Skhirra\";\"other\"\n\"2473161\";\"La Skhrira\";\"other\"\n\"2473161\";\"La Srira\";\"other\"\n\"2473161\";\"Sekhira\";\"other\"\n\"2473161\";\"Skhrira\";\"other\"\n\"2473161\";\"Skira\";\"other\"\n\"2473161\";\"Srira\";\"other\"\n\"2473163\";\"Sbikha\";\"main\"\n\"2473163\";\"As Subaykhah\";\"other\"\n\"2473163\";\"Sbikra\";\"other\"\n\"2473169\";\"Aş Şayyādah\";\"main\"\n\"2473169\";\"As Sayyadah\";\"ascii\"\n\"2473169\";\"Saiada\";\"other\"\n\"2473169\";\"Saiadah\";\"other\"\n\"2473169\";\"Saïada\";\"other\"\n\"2473169\";\"Seiada\";\"other\"\n\"2473169\";\"Seïada\";\"other\"\n\"2473177\";\"As Sars\";\"main\"\n\"2473177\";\"Le Sers\";\"other\"\n\"2473177\";\"Les Sers\";\"other\"\n\"2473177\";\"Sers\";\"other\"\n\"2473183\";\"As Sanad\";\"main\"\n\"2473183\";\"Es Send\";\"other\"\n\"2473183\";\"Es Sened\";\"other\"\n\"2473183\";\"Sened\";\"other\"\n\"2473190\";\"Sahline\";\"main\"\n\"2473190\";\"Ain Sahalin\";\"other\"\n\"2473190\";\"As Sahilin\";\"other\"\n\"2473190\";\"As Sāḩilīn\";\"other\"\n\"2473190\";\"Sahalin\";\"other\"\n\"2473190\";\"Sahaline\";\"other\"\n\"2473229\";\"Chebba\";\"main\"\n\"2473229\";\"Ash Shabbah\";\"other\"\n\"2473229\";\"Ash Shābbah\";\"other\"\n\"2473229\";\"La Chebba\";\"other\"\n\"2473229\";\"Sheba\";\"other\"\n\"2473257\";\"Ar Rudayyif\";\"main\"\n\"2473257\";\"Redevef\";\"other\"\n\"2473257\";\"Redevel\";\"other\"\n\"2473257\";\"Redeyef\";\"other\"\n\"2473258\";\"Ar Riqāb\";\"main\"\n\"2473258\";\"Ar Riqab\";\"ascii\"\n\"2473258\";\"El Regueb\";\"other\"\n\"2473258\";\"Er Regueb\";\"other\"\n\"2473258\";\"Gounifida\";\"other\"\n\"2473258\";\"Hennchir el Gounifida\";\"other\"\n\"2473258\";\"Regueb\";\"other\"\n\"2473264\";\"Rohia\";\"main\"\n\"2473264\";\"Ar Rawhiyah\";\"other\"\n\"2473264\";\"Ar Rawḩīyah\";\"other\"\n\"2473264\";\"Souk et Tnine\";\"other\"\n\"2473420\";\"Al Wardānīn\";\"main\"\n\"2473420\";\"Al Wardanin\";\"ascii\"\n\"2473420\";\"Ouadenine\";\"other\"\n\"2473420\";\"Ouardanine\";\"other\"\n\"2473420\";\"Ouardenine\";\"other\"\n\"2473420\";\"Uardenine\";\"other\"\n\"2473439\";\"El Ksour\";\"main\"\n\"2473439\";\"Al Qusur\";\"other\"\n\"2473439\";\"Al Quşūr\";\"other\"\n\"2473439\";\"Ebba-Ksour\";\"other\"\n\"2473439\";\"El-Bak-Ksour\";\"other\"\n\"2473439\";\"Ksour\";\"other\"\n\"2473449\";\"Kairouan\";\"main\"\n\"2473449\";\"Al Qayrawan\";\"other\"\n\"2473449\";\"Al Qayrawān\";\"other\"\n\"2473449\";\"Al-Kayrawan\";\"other\"\n\"2473449\";\"Al-Kayrawān\";\"other\"\n\"2473449\";\"Kairuan\";\"other\"\n\"2473449\";\"Kairwan\";\"other\"\n\"2473449\";\"Kajruan\";\"other\"\n\"2473449\";\"Kajruano\";\"other\"\n\"2473449\";\"Kayravan\";\"other\"\n\"2473449\";\"Qairouan\";\"other\"\n\"2473449\";\"Qairwan\";\"other\"\n\"2473449\";\"Qayrawan\";\"other\"\n\"2473449\";\"qyrwan\";\"other\"\n\"2473449\";\"Кайруан\";\"other\"\n\"2473449\";\"קירואן\";\"other\"\n\"2473449\";\"قيروان\";\"other\"\n\"2473457\";\"Kasserine\";\"main\"\n\"2473457\";\"Al Qasrayn\";\"other\"\n\"2473457\";\"Al Qaşrayn\";\"other\"\n\"2473457\";\"Kasserin\";\"other\"\n\"2473457\";\"Qasserine\";\"other\"\n\"2473457\";\"Кассерин\";\"other\"\n\"2473470\";\"Al Qarmadah\";\"main\"\n\"2473470\";\"Gremda\";\"other\"\n\"2473486\";\"El Golaa\";\"main\"\n\"2473486\";\"Al Qal`ah\";\"other\"\n\"2473486\";\"Al Qal‘ah\";\"other\"\n\"2473486\";\"El Kalaa\";\"other\"\n\"2473486\";\"Galaa\";\"other\"\n\"2473493\";\"Monastir\";\"main\"\n\"2473493\";\"Al Munastir\";\"other\"\n\"2473493\";\"Al Munastīr\";\"other\"\n\"2473493\";\"El Menstir\";\"other\"\n\"2473493\";\"Hadrumetum\";\"other\"\n\"2473493\";\"Ruspina\";\"other\"\n\"2473493\";\"almnstyr\";\"other\"\n\"2473493\";\"mnstyr\";\"other\"\n\"2473493\";\"Монастир\";\"other\"\n\"2473493\";\"المنستير\";\"other\"\n\"2473493\";\"منستير\";\"other\"\n\"2473499\";\"La Mohammedia\";\"main\"\n\"2473499\";\"Al Muhammadiyah\";\"other\"\n\"2473499\";\"Al Muḩammadīyah\";\"other\"\n\"2473499\";\"Mohamedia\";\"other\"\n\"2473499\";\"Mohamedla\";\"other\"\n\"2473499\";\"Mohammedia\";\"other\"\n\"2473514\";\"El Mida\";\"main\"\n\"2473514\";\"Al Midah\";\"other\"\n\"2473514\";\"Al Mīdah\";\"other\"\n\"2473514\";\"El Midda\";\"other\"\n\"2473514\";\"Mida\";\"other\"\n\"2473517\";\"Al Metlaoui\";\"main\"\n\"2473517\";\"Matlaoui\";\"other\"\n\"2473517\";\"Metlaoni\";\"other\"\n\"2473517\";\"Metlaoui\";\"other\"\n\"2473525\";\"Al Mazzūnah\";\"main\"\n\"2473525\";\"Al Mazzunah\";\"ascii\"\n\"2473525\";\"Merzouna\";\"other\"\n\"2473525\";\"Mezzouna\";\"other\"\n\"2473533\";\"Al Matlīn\";\"main\"\n\"2473533\";\"Al Matlin\";\"ascii\"\n\"2473533\";\"El Metline\";\"other\"\n\"2473533\";\"Metlin\";\"other\"\n\"2473533\";\"Metline\";\"other\"\n\"2473533\";\"Метлин\";\"other\"\n\"2473537\";\"Al Maşdūr\";\"main\"\n\"2473537\";\"Al Masdur\";\"ascii\"\n\"2473537\";\"Mesdour\";\"other\"\n\"2473540\";\"Al Marsá\";\"main\"\n\"2473540\";\"Al Marsa\";\"ascii\"\n\"2473540\";\"El Marsa\";\"other\"\n\"2473540\";\"La Marsa\";\"other\"\n\"2473558\";\"El Maamoura\";\"main\"\n\"2473558\";\"Al Ma`murah\";\"other\"\n\"2473558\";\"Al Ma‘mūrah\";\"other\"\n\"2473558\";\"El Mamoura\";\"other\"\n\"2473558\";\"Maamoura\";\"other\"\n\"2473558\";\"Mahmur\";\"other\"\n\"2473558\";\"Marmora\";\"other\"\n\"2473572\";\"Mahdia\";\"main\"\n\"2473572\";\"Africa\";\"other\"\n\"2473572\";\"Al Mahdiyah\";\"other\"\n\"2473572\";\"Al Mahdīyah\";\"other\"\n\"2473572\";\"Madhia\";\"other\"\n\"2473572\";\"Mahedia\";\"other\"\n\"2473572\";\"Mehdia\";\"other\"\n\"2473572\";\"Zella\";\"other\"\n\"2473628\";\"Al Karīb\";\"main\"\n\"2473628\";\"Al Karib\";\"ascii\"\n\"2473628\";\"Le Krib\";\"other\"\n\"2473634\";\"El Kef\";\"main\"\n\"2473634\";\"Al Kaf\";\"other\"\n\"2473634\";\"Al Kāf\";\"other\"\n\"2473634\";\"Chakbanaria\";\"other\"\n\"2473634\";\"Chikka Benar\";\"other\"\n\"2473634\";\"Ehl'-Kef\";\"other\"\n\"2473634\";\"Kef\";\"other\"\n\"2473634\";\"Le Kef\";\"other\"\n\"2473634\";\"Sicca Veneria\";\"other\"\n\"2473634\";\"Эль-Кеф\";\"other\"\n\"2473654\";\"El Jem\";\"main\"\n\"2473654\";\"Al Jamm\";\"other\"\n\"2473654\";\"Ehl' Dzhem\";\"other\"\n\"2473654\";\"El Djem\";\"other\"\n\"2473654\";\"El Jemm\";\"other\"\n\"2473654\";\"Sidi el Djem\";\"other\"\n\"2473654\";\"Thysdrus\";\"other\"\n\"2473654\";\"Эль Джем\";\"other\"\n\"2473716\";\"El Haouaria\";\"main\"\n\"2473716\";\"Al Huwariyah\";\"other\"\n\"2473716\";\"Al Huwwariyah\";\"other\"\n\"2473716\";\"Al Huwwārīyah\";\"other\"\n\"2473716\";\"Al Hūwārīyah\";\"other\"\n\"2473716\";\"Aquilaria\";\"other\"\n\"2473716\";\"Ehl'-Khauarija\";\"other\"\n\"2473716\";\"El Aouaria\";\"other\"\n\"2473716\";\"El Awaria\";\"other\"\n\"2473716\";\"El-Haouaria\";\"other\"\n\"2473716\";\"Эль-Хауария\";\"other\"\n\"2473744\";\"Al Ḩammāmāt\";\"main\"\n\"2473744\";\"Al Hammamat\";\"ascii\"\n\"2473744\";\"Hammamet\";\"other\"\n\"2473744\";\"Khammamet\";\"other\"\n\"2473744\";\"alhmamat\";\"other\"\n\"2473744\";\"Хаммамет\";\"other\"\n\"2473744\";\"الحمامات\";\"other\"\n\"2473747\";\"El Hamma\";\"main\"\n\"2473747\";\"Al Hammah\";\"other\"\n\"2473747\";\"Al Ḩāmmah\";\"other\"\n\"2473747\";\"Ehl'-Khamma\";\"other\"\n\"2473747\";\"El Hamma de l'Arad\";\"other\"\n\"2473747\";\"El Hamma de l’Arad\";\"other\"\n\"2473747\";\"Эль-Хамма\";\"other\"\n\"2473788\";\"Al Firnānah\";\"main\"\n\"2473788\";\"Al Firnanah\";\"ascii\"\n\"2473788\";\"Fernana\";\"other\"\n\"2473788\";\"Fernara\";\"other\"\n\"2473823\";\"El Battan\";\"main\"\n\"2473823\";\"Al Batan\";\"other\"\n\"2473823\";\"Al Baţān\";\"other\"\n\"2473823\";\"El Batane\";\"other\"\n\"2473823\";\"El Bathan\";\"other\"\n\"2473823\";\"El Bathane\";\"other\"\n\"2473826\";\"Al Baqāliţah\";\"main\"\n\"2473826\";\"Al Baqalitah\";\"ascii\"\n\"2473826\";\"Bekalta\";\"other\"\n\"2473826\";\"Mkalta\";\"other\"\n\"2473876\";\"Al ‘Āliyah\";\"main\"\n\"2473876\";\"Al `Aliyah\";\"ascii\"\n\"2473876\";\"Ehl'-Alija\";\"other\"\n\"2473876\";\"El Alia\";\"other\"\n\"2473876\";\"Uzalis\";\"other\"\n\"2473876\";\"Эль-Алия\";\"other\"\n\"2473913\";\"Akouda\";\"main\"\n\"2473913\";\"Akkudah\";\"other\"\n\"2473913\";\"Akkūdah\";\"other\"\n\"2473913\";\"Akuda\";\"other\"\n\"2581754\";\"Douane\";\"main\"\n\"6355180\";\"Port el Kantaoui\";\"main\"\n\"4032243\";\"Vaini\";\"main\"\n\"4032369\";\"Pangai\";\"main\"\n\"4032369\";\"Bagai\";\"other\"\n\"4032369\";\"Bangai\";\"other\"\n\"4032384\";\"`Ohonua\";\"main\"\n\"4032402\";\"Nuku`alofa\";\"main\"\n\"4032402\";\"Niukalofa\";\"other\"\n\"4032402\";\"Noukoualopha\";\"other\"\n\"4032402\";\"Nucualofa\";\"other\"\n\"4032402\";\"Nukalofa\";\"other\"\n\"4032402\";\"Nuku'alofa\";\"other\"\n\"4032402\";\"Nuku`aloia\";\"other\"\n\"4032402\";\"Nukualofa\";\"other\"\n\"4032402\";\"Nukuʻalofa\";\"other\"\n\"4032402\";\"Nuku’alofa\";\"other\"\n\"4032402\";\"nu ku a luo fa\";\"other\"\n\"4032402\";\"nu kuxalofa\";\"other\"\n\"4032402\";\"nukuallopa\";\"other\"\n\"4032402\";\"nukuarofa\";\"other\"\n\"4032402\";\"Νουκουαλόφα\";\"other\"\n\"4032402\";\"Нукуалофа\";\"other\"\n\"4032402\";\"נוקואלופה\";\"other\"\n\"4032402\";\"นูกูอะโลฟา\";\"other\"\n\"4032402\";\"ኑኩአሎፋ\";\"other\"\n\"4032402\";\"ヌクアロファ\";\"other\"\n\"4032402\";\"努库阿洛法\";\"other\"\n\"4032402\";\"努庫阿洛發\";\"other\"\n\"4032402\";\"누쿠알로파\";\"other\"\n\"4032420\";\"Neiafu\";\"main\"\n\"4032420\";\"Neafu\";\"other\"\n\"4032420\";\"Nei-afo\";\"other\"\n\"4032623\";\"Havelu\";\"main\"\n\"4032623\";\"Haveluloto\";\"other\"\n\"295781\";\"Kale\";\"main\"\n\"295781\";\"Eynihal\";\"other\"\n\"295781\";\"Gokyazi\";\"other\"\n\"295781\";\"Gökyazı\";\"other\"\n\"295781\";\"Zumrutkaya\";\"other\"\n\"295781\";\"Zümrütkaya\";\"other\"\n\"295781\";\"Кале\";\"other\"\n\"295982\";\"Zara\";\"main\"\n\"295982\";\"Kocgiri\";\"other\"\n\"295982\";\"Koçgiri\";\"other\"\n\"296134\";\"Yunak\";\"main\"\n\"296138\";\"Yumurtalık\";\"main\"\n\"296138\";\"Yumurtalik\";\"ascii\"\n\"296138\";\"Vimourtalic\";\"other\"\n\"296173\";\"Yüksekova\";\"main\"\n\"296173\";\"Yuksekova\";\"ascii\"\n\"296173\";\"Dize\";\"other\"\n\"296173\";\"Yusekova\";\"other\"\n\"296173\";\"Yüsekova\";\"other\"\n\"296247\";\"Yukarısalat\";\"main\"\n\"296247\";\"Yukarisalat\";\"ascii\"\n\"296247\";\"Salat\";\"other\"\n\"296247\";\"Salatiulya\";\"other\"\n\"296247\";\"Sinan\";\"other\"\n\"296247\";\"Yukary-Salat\";\"other\"\n\"296562\";\"Yozgat\";\"main\"\n\"296562\";\"Saralus\";\"other\"\n\"296562\";\"Yozgad\";\"other\"\n\"296562\";\"Yuzgat\";\"other\"\n\"296644\";\"Yolbaşı\";\"main\"\n\"296644\";\"Yolbasi\";\"ascii\"\n\"296644\";\"Keferallap\";\"other\"\n\"296653\";\"Yolağzı\";\"main\"\n\"296653\";\"Yolagzi\";\"ascii\"\n\"296653\";\"Derindip\";\"other\"\n\"296653\";\"Dirindip\";\"other\"\n\"296791\";\"Yeşilyurt\";\"main\"\n\"296791\";\"Yesilyurt\";\"ascii\"\n\"296791\";\"Cirmikti\";\"other\"\n\"296791\";\"Ismetpasa\";\"other\"\n\"296791\";\"Çırmıktı\";\"other\"\n\"296791\";\"İsmetpaşa\";\"other\"\n\"296823\";\"Yeşilova\";\"main\"\n\"296823\";\"Yesilova\";\"ascii\"\n\"296823\";\"Satilar\";\"other\"\n\"296823\";\"Satirlar\";\"other\"\n\"296823\";\"Satılar\";\"other\"\n\"296823\";\"Satırlar\";\"other\"\n\"296832\";\"Yeşilli\";\"main\"\n\"296832\";\"Yesilli\";\"ascii\"\n\"296832\";\"Rismil\";\"other\"\n\"296832\";\"Rişmil\";\"other\"\n\"296852\";\"Erzin\";\"main\"\n\"296852\";\"Ehrzin\";\"other\"\n\"296852\";\"Yesilkent\";\"other\"\n\"296852\";\"Yeşilkent\";\"other\"\n\"296852\";\"Эрзин\";\"other\"\n\"296860\";\"Yeşilhisar\";\"main\"\n\"296860\";\"Yesilhisar\";\"ascii\"\n\"296860\";\"Karahisar\";\"other\"\n\"296860\";\"Karahısar\";\"other\"\n\"296885\";\"Yeşilalan\";\"main\"\n\"296885\";\"Yesilalan\";\"ascii\"\n\"296885\";\"Barman\";\"other\"\n\"296895\";\"Yerköy\";\"main\"\n\"296895\";\"Yerkoy\";\"ascii\"\n\"296942\";\"Yenişarbademli\";\"main\"\n\"296942\";\"Yenisarbademli\";\"ascii\"\n\"296942\";\"Bademli\";\"other\"\n\"296947\";\"Yenipınar\";\"main\"\n\"296947\";\"Yenipinar\";\"ascii\"\n\"296947\";\"Asagi Keferzo\";\"other\"\n\"296947\";\"Ashagy-Keferzo\";\"other\"\n\"296947\";\"Aşağı Keferzo\";\"other\"\n\"296950\";\"Yenipazar\";\"main\"\n\"297027\";\"Yeniköy\";\"main\"\n\"297027\";\"Yenikoy\";\"ascii\"\n\"297027\";\"Yenikly\";\"other\"\n\"297052\";\"Yeniköy\";\"main\"\n\"297052\";\"Yenikoy\";\"ascii\"\n\"297052\";\"Haraberes\";\"other\"\n\"297052\";\"Harabereş\";\"other\"\n\"297052\";\"Harabresik\";\"other\"\n\"297052\";\"Harabreşik\";\"other\"\n\"297052\";\"Kharabreshik\";\"other\"\n\"297090\";\"Didim\";\"main\"\n\"297090\";\"Didimy\";\"other\"\n\"297090\";\"Yenihisar\";\"other\"\n\"297090\";\"Yoran\";\"other\"\n\"297090\";\"Дидимы\";\"other\"\n\"297099\";\"Yenifakılı\";\"main\"\n\"297099\";\"Yenifakili\";\"ascii\"\n\"297099\";\"Fakili\";\"other\"\n\"297099\";\"Fakiliistasyonu\";\"other\"\n\"297099\";\"Fakılı\";\"other\"\n\"297099\";\"Fakılıistasyonu\";\"other\"\n\"297099\";\"Karafakili\";\"other\"\n\"297099\";\"Karafakılı\";\"other\"\n\"297119\";\"Yenice\";\"main\"\n\"297119\";\"Torunlar\";\"other\"\n\"297119\";\"Yenicik\";\"other\"\n\"297144\";\"Yenice\";\"main\"\n\"297144\";\"Yenice Koyu\";\"other\"\n\"297144\";\"Yenice Köyü\";\"other\"\n\"297148\";\"Yenice\";\"main\"\n\"297148\";\"Buyukorhan\";\"other\"\n\"297148\";\"Büyükorhan\";\"other\"\n\"297286\";\"Yedisu\";\"main\"\n\"297371\";\"Yazıhan\";\"main\"\n\"297371\";\"Yazihan\";\"ascii\"\n\"297404\";\"Yayvantepe\";\"main\"\n\"297404\";\"Kartmin\";\"other\"\n\"297404\";\"Katmin\";\"other\"\n\"297416\";\"Yaylı\";\"main\"\n\"297416\";\"Yayli\";\"ascii\"\n\"297416\";\"Kavs\";\"other\"\n\"297416\";\"Kavuz\";\"other\"\n\"297461\";\"Yayladere\";\"main\"\n\"297461\";\"Conek\";\"other\"\n\"297461\";\"Cönek\";\"other\"\n\"297461\";\"Holhol\";\"other\"\n\"297466\";\"Yayladağı\";\"main\"\n\"297466\";\"Yayladagi\";\"ascii\"\n\"297466\";\"Ordu\";\"other\"\n\"297466\";\"Yayladgi\";\"other\"\n\"297466\";\"Yayladği\";\"other\"\n\"297532\";\"Yavuzeli\";\"main\"\n\"297532\";\"Cingife\";\"other\"\n\"297532\";\"Yarimca\";\"other\"\n\"297532\";\"Yarımca\";\"other\"\n\"297564\";\"Yatağan\";\"main\"\n\"297564\";\"Yatagan\";\"ascii\"\n\"297564\";\"Ahikoy\";\"other\"\n\"297564\";\"Ahiköy\";\"other\"\n\"297628\";\"Yarma\";\"main\"\n\"297704\";\"Yaprakbaşı\";\"main\"\n\"297704\";\"Yaprakbasi\";\"ascii\"\n\"297704\";\"Bari\";\"other\"\n\"297789\";\"Yalvaç\";\"main\"\n\"297789\";\"Yalvac\";\"ascii\"\n\"297789\";\"Jalvach\";\"other\"\n\"297789\";\"Ялвач\";\"other\"\n\"297839\";\"Yalıhüyük\";\"main\"\n\"297839\";\"Yalihuyuk\";\"ascii\"\n\"297917\";\"Yahyalı\";\"main\"\n\"297917\";\"Yahyali\";\"ascii\"\n\"297917\";\"Gazibenli\";\"other\"\n\"297917\";\"Jakh'jaly\";\"other\"\n\"297917\";\"Яхьялы\";\"other\"\n\"298033\";\"Viranşehir\";\"main\"\n\"298033\";\"Viransehir\";\"ascii\"\n\"298033\";\"Antoninopolis\";\"other\"\n\"298033\";\"Veeranshahr\";\"other\"\n\"298033\";\"Viranshekhire\";\"other\"\n\"298033\";\"Wiranschehir\";\"other\"\n\"298033\";\"Вираншехире\";\"other\"\n\"298088\";\"Varto\";\"main\"\n\"298088\";\"Gumgum\";\"other\"\n\"298088\";\"Gümgüm\";\"other\"\n\"298117\";\"Van\";\"main\"\n\"298117\";\"Thospia\";\"other\"\n\"298117\";\"Urartu\";\"other\"\n\"298117\";\"Wan\";\"other\"\n\"298117\";\"Ван\";\"other\"\n\"298198\";\"Uzungeçit\";\"main\"\n\"298198\";\"Uzungecit\";\"ascii\"\n\"298198\";\"Derahin\";\"other\"\n\"298198\";\"Derakhin\";\"other\"\n\"298198\";\"Dirahini\";\"other\"\n\"298230\";\"Üzümlü\";\"main\"\n\"298230\";\"Uzumlu\";\"ascii\"\n\"298230\";\"Cimin\";\"other\"\n\"298299\";\"Uşak\";\"main\"\n\"298299\";\"Usak\";\"ascii\"\n\"298299\";\"Flaviopolis\";\"other\"\n\"298299\";\"Ouchak\";\"other\"\n\"298299\";\"Temenothyrae\";\"other\"\n\"298299\";\"Uschak\";\"other\"\n\"298299\";\"Ushak\";\"other\"\n\"298299\";\"Ushaq\";\"other\"\n\"298299\";\"Ушак\";\"other\"\n\"298316\";\"Urla\";\"main\"\n\"298316\";\"Vourlah Skala\";\"other\"\n\"298316\";\"Урла\";\"other\"\n\"298326\";\"Ürgüp\";\"main\"\n\"298326\";\"Urgup\";\"ascii\"\n\"298326\";\"Urgub\";\"other\"\n\"298333\";\"Şanlıurfa\";\"main\"\n\"298333\";\"Sanliurfa\";\"ascii\"\n\"298333\";\"Antiocheia\";\"other\"\n\"298333\";\"Edesa\";\"other\"\n\"298333\";\"Edessa\";\"other\"\n\"298333\";\"Ehdessa\";\"other\"\n\"298333\";\"Orfa\";\"other\"\n\"298333\";\"Ourfa\";\"other\"\n\"298333\";\"Urfa\";\"other\"\n\"298333\";\"Urfeh\";\"other\"\n\"298333\";\"Αντιόχεια\";\"other\"\n\"298333\";\"Эдесса\";\"other\"\n\"298378\";\"Uluyatır\";\"main\"\n\"298378\";\"Uluyatir\";\"ascii\"\n\"298378\";\"Mizar\";\"other\"\n\"298433\";\"Uludere\";\"main\"\n\"298433\";\"Goyan\";\"other\"\n\"298433\";\"Guyan\";\"other\"\n\"298433\";\"Göyan\";\"other\"\n\"298433\";\"Güyan\";\"other\"\n\"298433\";\"Helet\";\"other\"\n\"298433\";\"Kalhesanan\";\"other\"\n\"298433\";\"Kalkhesnan\";\"other\"\n\"298433\";\"Kilaban\";\"other\"\n\"298433\";\"Kylaban\";\"other\"\n\"298433\";\"Kılaban\";\"other\"\n\"298451\";\"Uluborlu\";\"main\"\n\"298451\";\"Uluborru\";\"other\"\n\"298454\";\"Ulubey\";\"main\"\n\"298454\";\"Gobek\";\"other\"\n\"298454\";\"Göbek\";\"other\"\n\"298454\";\"Ulubei\";\"other\"\n\"298454\";\"Улубеи\";\"other\"\n\"298471\";\"Ulaş\";\"main\"\n\"298471\";\"Ulas\";\"ascii\"\n\"298485\";\"Ula\";\"main\"\n\"298533\";\"Üçtepe\";\"main\"\n\"298533\";\"Uctepe\";\"ascii\"\n\"298533\";\"Karhidicle\";\"other\"\n\"298533\";\"Karkhydidzhle\";\"other\"\n\"298533\";\"Kerh\";\"other\"\n\"298533\";\"Kerhidicle Koyu\";\"other\"\n\"298533\";\"Kerhidicle Köyü\";\"other\"\n\"298533\";\"Kârhidicle\";\"other\"\n\"298585\";\"Üçkavak\";\"main\"\n\"298585\";\"Uckavak\";\"ascii\"\n\"298585\";\"Rasidi\";\"other\"\n\"298585\";\"Raşidi\";\"other\"\n\"298585\";\"Reshidi\";\"other\"\n\"298585\";\"Residi\";\"other\"\n\"298585\";\"Reşidi\";\"other\"\n\"298647\";\"Tuzlukçu\";\"main\"\n\"298647\";\"Tuzlukcu\";\"ascii\"\n\"298727\";\"Tutak\";\"main\"\n\"298728\";\"Tut\";\"main\"\n\"298806\";\"Turgutlu\";\"main\"\n\"298806\";\"Caesarea Trocetta\";\"other\"\n\"298806\";\"Cassaba\";\"other\"\n\"298806\";\"Kasaba\";\"other\"\n\"298846\";\"Tunceli\";\"main\"\n\"298846\";\"Kalan\";\"other\"\n\"298846\";\"Mameki\";\"other\"\n\"298846\";\"Mamiki\";\"other\"\n\"298846\";\"Tundzheli\";\"other\"\n\"298846\";\"Тунджели\";\"other\"\n\"298882\";\"Tufanbeyli\";\"main\"\n\"298882\";\"Hoket\";\"other\"\n\"298882\";\"Hoketce\";\"other\"\n\"298882\";\"Höket\";\"other\"\n\"298882\";\"Höketçe\";\"other\"\n\"298882\";\"Magara\";\"other\"\n\"298882\";\"Mağara\";\"other\"\n\"298935\";\"Torbalı\";\"main\"\n\"298935\";\"Torbali\";\"ascii\"\n\"298935\";\"Tepekoey\";\"other\"\n\"298935\";\"Tepeköy\";\"other\"\n\"298935\";\"Torbaly\";\"other\"\n\"298935\";\"Торбалы\";\"other\"\n\"298953\";\"Toptepe\";\"main\"\n\"298953\";\"Nebil\";\"other\"\n\"298977\";\"Toprakkale\";\"main\"\n\"299054\";\"Tomarza\";\"main\"\n\"299054\";\"Gostere\";\"other\"\n\"299054\";\"Goztere\";\"other\"\n\"299054\";\"Göstere\";\"other\"\n\"299137\";\"Tire\";\"main\"\n\"299137\";\"Arcadiopolis\";\"other\"\n\"299137\";\"Teira\";\"other\"\n\"299137\";\"Teıra\";\"other\"\n\"299137\";\"Theda\";\"other\"\n\"299137\";\"Thireh\";\"other\"\n\"299137\";\"Tira\";\"other\"\n\"299137\";\"tyrh\";\"other\"\n\"299137\";\"تیره\";\"other\"\n\"299268\";\"Tercan\";\"main\"\n\"299268\";\"Mamahatun\";\"other\"\n\"299268\";\"Mamhatun\";\"other\"\n\"299268\";\"trjan\";\"other\"\n\"299268\";\"ترجان\";\"other\"\n\"299272\";\"Tepeüstü\";\"main\"\n\"299272\";\"Tepeustu\";\"ascii\"\n\"299272\";\"Habap\";\"other\"\n\"299272\";\"Telmimar\";\"other\"\n\"299272\";\"Telminar\";\"other\"\n\"299354\";\"Tepealtı\";\"main\"\n\"299354\";\"Tepealti\";\"ascii\"\n\"299354\";\"Telyakup\";\"other\"\n\"299413\";\"Tekman\";\"main\"\n\"299413\";\"Takos\";\"other\"\n\"299413\";\"Tatos\";\"other\"\n\"299445\";\"Tekirova\";\"main\"\n\"299445\";\"Celcikli\";\"other\"\n\"299445\";\"Celtikli\";\"other\"\n\"299445\";\"Phaselis\";\"other\"\n\"299445\";\"Tekrova\";\"other\"\n\"299445\";\"Tekróva\";\"other\"\n\"299445\";\"Çeltikli\";\"other\"\n\"299445\";\"Текирова\";\"other\"\n\"299499\";\"Tefenni\";\"main\"\n\"299545\";\"Tavşanlı\";\"main\"\n\"299545\";\"Tavsanli\";\"ascii\"\n\"299545\";\"Taushanli\";\"other\"\n\"299575\";\"Tavas\";\"main\"\n\"299575\";\"Yarangum\";\"other\"\n\"299575\";\"Yarangume\";\"other\"\n\"299575\";\"Yarangüm\";\"other\"\n\"299575\";\"Yarangüme\";\"other\"\n\"299582\";\"Tatvan\";\"main\"\n\"299582\";\"Татван\";\"other\"\n\"299701\";\"Taşlıçay\";\"main\"\n\"299701\";\"Taslicay\";\"ascii\"\n\"299701\";\"Asagitaslicay\";\"other\"\n\"299701\";\"Aşağıtaşlıçay\";\"other\"\n\"299724\";\"Taşlı\";\"main\"\n\"299724\";\"Tasli\";\"ascii\"\n\"299724\";\"Gundukevir\";\"other\"\n\"299724\";\"Guntkevir\";\"other\"\n\"299724\";\"Gyundyukevir\";\"other\"\n\"299724\";\"Gündükevir\";\"other\"\n\"299724\";\"Güntkevir\";\"other\"\n\"299755\";\"Taşkent\";\"main\"\n\"299755\";\"Taskent\";\"ascii\"\n\"299755\";\"Pirlerkondu\";\"other\"\n\"299817\";\"Tarsus\";\"main\"\n\"299817\";\"Antiochia ad Cydnum\";\"other\"\n\"299817\";\"Tars\";\"other\"\n\"299817\";\"Tarse\";\"other\"\n\"299817\";\"Tarso\";\"other\"\n\"299817\";\"Tarsos\";\"other\"\n\"299817\";\"Tarsous\";\"other\"\n\"299817\";\"da shu\";\"other\"\n\"299817\";\"taleusoseu\";\"other\"\n\"299817\";\"tarususu\";\"other\"\n\"299817\";\"Ταρσός\";\"other\"\n\"299817\";\"Тарс\";\"other\"\n\"299817\";\"タルスス\";\"other\"\n\"299817\";\"大數\";\"other\"\n\"299817\";\"타르소스\";\"other\"\n\"299900\";\"Talas\";\"main\"\n\"299900\";\"Tafas\";\"other\"\n\"299900\";\"Талас\";\"other\"\n\"300027\";\"Şenocak\";\"main\"\n\"300027\";\"Senocak\";\"ascii\"\n\"300027\";\"Shuti\";\"other\"\n\"300027\";\"Suti\";\"other\"\n\"300027\";\"Şuti\";\"other\"\n\"300030\";\"Sütçüler\";\"main\"\n\"300030\";\"Sutculer\";\"ascii\"\n\"300030\";\"Pavlu Cebel\";\"other\"\n\"300058\";\"Susurluk\";\"main\"\n\"300058\";\"Firt\";\"other\"\n\"300058\";\"Fırt\";\"other\"\n\"300058\";\"Susigirlik\";\"other\"\n\"300058\";\"Susughirli\";\"other\"\n\"300058\";\"Susugurlu\";\"other\"\n\"300058\";\"Susığırlık\";\"other\"\n\"300075\";\"Suruç\";\"main\"\n\"300075\";\"Suruc\";\"ascii\"\n\"300075\";\"Suruch\";\"other\"\n\"300075\";\"Syuryuch\";\"other\"\n\"300075\";\"Суруч\";\"other\"\n\"300087\";\"Sürgücü\";\"main\"\n\"300087\";\"Surgucu\";\"ascii\"\n\"300087\";\"Avine\";\"other\"\n\"300087\";\"Syurgyudzhyu\";\"other\"\n\"300141\";\"Sulusaray\";\"main\"\n\"300141\";\"Ciftlik\";\"other\"\n\"300141\";\"Çiftlik\";\"other\"\n\"300195\";\"Sultanhisar\";\"main\"\n\"300201\";\"Sultandağı\";\"main\"\n\"300201\";\"Sultandagi\";\"ascii\"\n\"300201\";\"Isakli\";\"other\"\n\"300201\";\"Ishakli\";\"other\"\n\"300201\";\"İsaklı\";\"other\"\n\"300201\";\"İshaklı\";\"other\"\n\"300257\";\"Sulak\";\"main\"\n\"300257\";\"Bafi\";\"other\"\n\"300258\";\"Sulak\";\"main\"\n\"300258\";\"Mihrip\";\"other\"\n\"300258\";\"Nehrip\";\"other\"\n\"300258\";\"Nekhrip\";\"other\"\n\"300258\";\"Nihrip\";\"other\"\n\"300273\";\"Şuhut\";\"main\"\n\"300273\";\"Suhut\";\"ascii\"\n\"300352\";\"Sorgun\";\"main\"\n\"300352\";\"Buyukkohne\";\"other\"\n\"300352\";\"Büyükköhne\";\"other\"\n\"300352\";\"Kohne\";\"other\"\n\"300352\";\"Köhne\";\"other\"\n\"300352\";\"Sorgune\";\"other\"\n\"300352\";\"Yesilova\";\"other\"\n\"300352\";\"Yeşilova\";\"other\"\n\"300352\";\"Соргуне\";\"other\"\n\"300371\";\"Soma\";\"main\"\n\"300371\";\"Germe\";\"other\"\n\"300371\";\"Somy\";\"other\"\n\"300371\";\"Сомы\";\"other\"\n\"300377\";\"Solhan\";\"main\"\n\"300377\";\"Boglan\";\"other\"\n\"300377\";\"Boğlan\";\"other\"\n\"300377\";\"Buglan\";\"other\"\n\"300399\";\"Söke\";\"main\"\n\"300399\";\"Soke\";\"ascii\"\n\"300399\";\"Sok\";\"other\"\n\"300399\";\"Sokia\";\"other\"\n\"300399\";\"Сок\";\"other\"\n\"300438\";\"Söğütlü\";\"main\"\n\"300438\";\"Sogutlu\";\"ascii\"\n\"300438\";\"Kindirip\";\"other\"\n\"300593\";\"Sivrihisar\";\"main\"\n\"300601\";\"Sivrice\";\"main\"\n\"300603\";\"Sivrice\";\"main\"\n\"300614\";\"Siverek\";\"main\"\n\"300614\";\"Severek\";\"other\"\n\"300614\";\"Sivereke\";\"other\"\n\"300614\";\"Suverek\";\"other\"\n\"300614\";\"Сивереке\";\"other\"\n\"300616\";\"Sivaslı\";\"main\"\n\"300616\";\"Sivasli\";\"ascii\"\n\"300619\";\"Sivas\";\"main\"\n\"300619\";\"Megalopolis\";\"other\"\n\"300619\";\"Sebastia\";\"other\"\n\"300619\";\"Sevas\";\"other\"\n\"300619\";\"Siwas\";\"other\"\n\"300619\";\"su~ivu~asu\";\"other\"\n\"300619\";\"Сивас\";\"other\"\n\"300619\";\"スィヴァス\";\"other\"\n\"300632\";\"Şirvan\";\"main\"\n\"300632\";\"Sirvan\";\"ascii\"\n\"300632\";\"Kufra\";\"other\"\n\"300632\";\"Kufre\";\"other\"\n\"300632\";\"Küfre\";\"other\"\n\"300635\";\"Sırtköy\";\"main\"\n\"300635\";\"Sirtkoy\";\"ascii\"\n\"300635\";\"Telila\";\"other\"\n\"300635\";\"Telilâ\";\"other\"\n\"300635\";\"Tilila\";\"other\"\n\"300635\";\"Tililan\";\"other\"\n\"300640\";\"Şırnak\";\"main\"\n\"300640\";\"Sirnak\";\"ascii\"\n\"300640\";\"Shirnak\";\"other\"\n\"300640\";\"Ширнак\";\"other\"\n\"300732\";\"Sındırgı\";\"main\"\n\"300732\";\"Sindirgi\";\"ascii\"\n\"300732\";\"Korukoy\";\"other\"\n\"300732\";\"Koruköy\";\"other\"\n\"300743\";\"Sincik\";\"main\"\n\"300754\";\"Sincanlı\";\"main\"\n\"300754\";\"Sincanli\";\"ascii\"\n\"300754\";\"Sinanpasa\";\"other\"\n\"300754\";\"Sinanpaşa\";\"other\"\n\"300767\";\"Sinanköy\";\"main\"\n\"300767\";\"Sinankoy\";\"ascii\"\n\"300767\";\"Salat\";\"other\"\n\"300767\";\"Sinan\";\"other\"\n\"300791\";\"Simav\";\"main\"\n\"300791\";\"Synaus\";\"other\"\n\"300796\";\"Silvan\";\"main\"\n\"300796\";\"Miyafarkin\";\"other\"\n\"300796\";\"Sil'van\";\"other\"\n\"300796\";\"Сильван\";\"other\"\n\"300797\";\"Silopi\";\"main\"\n\"300797\";\"Girgimac\";\"other\"\n\"300797\";\"Girgimaç\";\"other\"\n\"300797\";\"Girikamo\";\"other\"\n\"300797\";\"Girikoma\";\"other\"\n\"300797\";\"Sil'opi\";\"other\"\n\"300797\";\"Силопи\";\"other\"\n\"300808\";\"Silifke\";\"main\"\n\"300808\";\"Selefke\";\"other\"\n\"300808\";\"Selefkeh\";\"other\"\n\"300808\";\"Seleucia\";\"other\"\n\"300808\";\"Силифке\";\"other\"\n\"300822\";\"Siirt\";\"main\"\n\"300822\";\"Sairt\";\"other\"\n\"300822\";\"Sirt\";\"other\"\n\"300822\";\"Sîrt\";\"other\"\n\"300822\";\"Сиирт\";\"other\"\n\"300822\";\"سعرد\";\"other\"\n\"300920\";\"Şeyitgazi\";\"main\"\n\"300920\";\"Seyitgazi\";\"ascii\"\n\"301010\";\"Seydişehir\";\"main\"\n\"301010\";\"Seydisehir\";\"ascii\"\n\"301101\";\"Serik\";\"main\"\n\"301101\";\"Kokes\";\"other\"\n\"301101\";\"Koles\";\"other\"\n\"301101\";\"Kukes\";\"other\"\n\"301101\";\"Kükes\";\"other\"\n\"301101\";\"Серик\";\"other\"\n\"301116\";\"Şereflikoçhisar\";\"main\"\n\"301116\";\"Sereflikochisar\";\"ascii\"\n\"301116\";\"Kochisar\";\"other\"\n\"301116\";\"Koçhisar\";\"other\"\n\"301116\";\"Serefli\";\"other\"\n\"301116\";\"Şerefli\";\"other\"\n\"301158\";\"Şenyurt\";\"main\"\n\"301158\";\"Senyurt\";\"ascii\"\n\"301158\";\"Derbesie\";\"other\"\n\"301158\";\"Derbesiye\";\"other\"\n\"301158\";\"Shen\\\"yurt\";\"other\"\n\"301158\";\"Shen”yurt\";\"other\"\n\"301161\";\"Şenoba\";\"main\"\n\"301161\";\"Senoba\";\"ascii\"\n\"301161\";\"Sekerek\";\"other\"\n\"301167\";\"Şenköy\";\"main\"\n\"301167\";\"Senkoy\";\"ascii\"\n\"301167\";\"Ebish\";\"other\"\n\"301167\";\"Ebsi\";\"other\"\n\"301167\";\"Ebşi\";\"other\"\n\"301167\";\"Epsi\";\"other\"\n\"301167\";\"Epşi\";\"other\"\n\"301172\";\"Senirkent\";\"main\"\n\"301172\";\"Senikent\";\"other\"\n\"301209\";\"Şemdinli\";\"main\"\n\"301209\";\"Semdinli\";\"ascii\"\n\"301209\";\"Navsar\";\"other\"\n\"301209\";\"Navşar\";\"other\"\n\"301209\";\"Semdinni\";\"other\"\n\"301209\";\"Şemdinni\";\"other\"\n\"301238\";\"Side\";\"main\"\n\"301238\";\"Eski Adalia\";\"other\"\n\"301238\";\"Eskiantalya\";\"other\"\n\"301238\";\"Selimiye\";\"other\"\n\"301238\";\"Sidé\";\"other\"\n\"301238\";\"Сиде\";\"other\"\n\"301251\";\"Selendi\";\"main\"\n\"301256\";\"Selçuk\";\"main\"\n\"301256\";\"Selcuk\";\"ascii\"\n\"301256\";\"Ayasoluk\";\"other\"\n\"301256\";\"Ephesus\";\"other\"\n\"301256\";\"Sel'chuk\";\"other\"\n\"301256\";\"Сельчук\";\"other\"\n\"301279\";\"Seksenören\";\"main\"\n\"301279\";\"Seksenoren\";\"ascii\"\n\"301279\";\"Seksenveren\";\"other\"\n\"301279\";\"Seksenviran\";\"other\"\n\"301279\";\"Suveren\";\"other\"\n\"301290\";\"Sekili\";\"main\"\n\"301290\";\"Orui\";\"other\"\n\"301290\";\"Orul\";\"other\"\n\"301350\";\"Seferihisar\";\"main\"\n\"301353\";\"Şefaatli\";\"main\"\n\"301353\";\"Sefaatli\";\"ascii\"\n\"301353\";\"Hacisefaatli\";\"other\"\n\"301353\";\"Hacışefaatlı\";\"other\"\n\"301431\";\"Savur\";\"main\"\n\"301453\";\"Savaştepe\";\"main\"\n\"301453\";\"Savastepe\";\"ascii\"\n\"301453\";\"Giresun\";\"other\"\n\"301483\";\"Sason\";\"main\"\n\"301483\";\"Kabilcevaz\";\"other\"\n\"301483\";\"Kabilcoz\";\"other\"\n\"301483\";\"Kabilcuz\";\"other\"\n\"301483\";\"Sasun\";\"other\"\n\"301492\";\"Saruhanlı\";\"main\"\n\"301492\";\"Saruhanli\";\"ascii\"\n\"301492\";\"Sarihanli\";\"other\"\n\"301492\";\"Sarıhanlı\";\"other\"\n\"301529\";\"Sarmansuyu\";\"main\"\n\"301529\";\"Edremit\";\"other\"\n\"301529\";\"Gumusdere\";\"other\"\n\"301529\";\"Gümüşdere\";\"other\"\n\"301537\";\"Şarkışla\";\"main\"\n\"301537\";\"Sarkisla\";\"ascii\"\n\"301537\";\"Tonus\";\"other\"\n\"301539\";\"Şarkîkaraağaç\";\"main\"\n\"301539\";\"Sarkikaraagac\";\"ascii\"\n\"301539\";\"Dogukaraagac\";\"other\"\n\"301539\";\"Doğukaraağaç\";\"other\"\n\"301539\";\"Karaagac\";\"other\"\n\"301539\";\"Karaağaç\";\"other\"\n\"301546\";\"Sarız\";\"main\"\n\"301546\";\"Sariz\";\"ascii\"\n\"301546\";\"Koyyeri\";\"other\"\n\"301546\";\"Köyyeri\";\"other\"\n\"301546\";\"Serez\";\"other\"\n\"301566\";\"Sarıyahşi\";\"main\"\n\"301566\";\"Sariyahsi\";\"ascii\"\n\"301567\";\"Sarıveliler\";\"main\"\n\"301567\";\"Sariveliler\";\"ascii\"\n\"301609\";\"Sarıoğlan\";\"main\"\n\"301609\";\"Sarioglan\";\"ascii\"\n\"301657\";\"Sarıköy\";\"main\"\n\"301657\";\"Sarikoy\";\"ascii\"\n\"301657\";\"Sari\";\"other\"\n\"301657\";\"Seri\";\"other\"\n\"301731\";\"Sarıgöl\";\"main\"\n\"301731\";\"Sarigol\";\"ascii\"\n\"301824\";\"Sarayönü\";\"main\"\n\"301824\";\"Sarayonu\";\"ascii\"\n\"301827\";\"Sarayköy\";\"main\"\n\"301827\";\"Saraykoy\";\"ascii\"\n\"301827\";\"Seraikeui\";\"other\"\n\"301829\";\"Saraykent\";\"main\"\n\"301829\";\"Karamagara\";\"other\"\n\"301829\";\"Karamagra\";\"other\"\n\"301829\";\"Karamağara\";\"other\"\n\"301829\";\"Karamağra\";\"other\"\n\"301855\";\"Saray\";\"main\"\n\"301855\";\"Kazimpasa\";\"other\"\n\"301855\";\"Kâzımpaşa\";\"other\"\n\"301884\";\"Şaphane\";\"main\"\n\"301884\";\"Saphane\";\"ascii\"\n\"301884\";\"Abseker\";\"other\"\n\"301884\";\"Abşeker\";\"other\"\n\"301911\";\"Sandıklı\";\"main\"\n\"301911\";\"Sandikli\";\"ascii\"\n\"301911\";\"Sandykly\";\"other\"\n\"301911\";\"Сандикли\";\"other\"\n\"301943\";\"Samsat\";\"main\"\n\"302043\";\"Salihli\";\"main\"\n\"302150\";\"Saimbeyli\";\"main\"\n\"302150\";\"Hacin\";\"other\"\n\"302150\";\"Haçin\";\"other\"\n\"302150\";\"Rumlu\";\"other\"\n\"302355\";\"Reyhanlı\";\"main\"\n\"302355\";\"Reyhanli\";\"ascii\"\n\"302355\";\"Airandji\";\"other\"\n\"302355\";\"Airanndji\";\"other\"\n\"302355\";\"Airinge\";\"other\"\n\"302355\";\"Ayranci\";\"other\"\n\"302355\";\"Aïrandji\";\"other\"\n\"302355\";\"Rehaniye\";\"other\"\n\"302355\";\"Rejkhanly\";\"other\"\n\"302355\";\"Reyhaniye\";\"other\"\n\"302355\";\"`Ayranj\";\"other\"\n\"302355\";\"Рейханлы\";\"other\"\n\"302355\";\"‘Ayranj\";\"other\"\n\"302401\";\"Refahiye\";\"main\"\n\"302401\";\"Gercanis\";\"other\"\n\"302469\";\"Pülümür\";\"main\"\n\"302469\";\"Pulumur\";\"ascii\"\n\"302469\";\"Plumur\";\"other\"\n\"302469\";\"Plurnur\";\"other\"\n\"302469\";\"Plümür\";\"other\"\n\"302469\";\"Pulumer\";\"other\"\n\"302482\";\"Pozantı\";\"main\"\n\"302482\";\"Pozanti\";\"ascii\"\n\"302482\";\"Posenti\";\"other\"\n\"302482\";\"Pozenti\";\"other\"\n\"302525\";\"Polatlı\";\"main\"\n\"302525\";\"Polatli\";\"ascii\"\n\"302525\";\"Polath\";\"other\"\n\"302624\";\"Pınarönü\";\"main\"\n\"302624\";\"Pinaronu\";\"ascii\"\n\"302624\";\"Ayinvan\";\"other\"\n\"302624\";\"Ayinvan Harap\";\"other\"\n\"302624\";\"Ayınvan\";\"other\"\n\"302624\";\"Ayınvan Harap\";\"other\"\n\"302624\";\"Razvaliny Ayinvan\";\"other\"\n\"302645\";\"Pınardere\";\"main\"\n\"302645\";\"Pinardere\";\"ascii\"\n\"302645\";\"El'fan\";\"other\"\n\"302645\";\"Elfan\";\"other\"\n\"302645\";\"El’fan\";\"other\"\n\"302667\";\"Pınarbaşı\";\"main\"\n\"302667\";\"Pinarbasi\";\"ascii\"\n\"302667\";\"Aziziye\";\"other\"\n\"302678\";\"Pınarbaşı\";\"main\"\n\"302678\";\"Pinarbasi\";\"ascii\"\n\"302678\";\"Ayinser\";\"other\"\n\"302678\";\"Ayınser\";\"other\"\n\"302720\";\"Pervari\";\"main\"\n\"302720\";\"Hashir\";\"other\"\n\"302720\";\"Hashır\";\"other\"\n\"302724\";\"Pertek\";\"main\"\n\"302781\";\"Pazaryeri\";\"main\"\n\"302781\";\"Pazarcik\";\"other\"\n\"302781\";\"Pazarcık\";\"other\"\n\"302787\";\"Pazarlar\";\"main\"\n\"302787\";\"Pazarcokyaka\";\"other\"\n\"302787\";\"Pazarçokyaka\";\"other\"\n\"302800\";\"Pazarcık\";\"main\"\n\"302800\";\"Pazarcik\";\"ascii\"\n\"302800\";\"Pazardzhik\";\"other\"\n\"302800\";\"Пазарджик\";\"other\"\n\"302819\";\"Patnos\";\"main\"\n\"302824\";\"Pasinler\";\"main\"\n\"302824\";\"Hasankale\";\"other\"\n\"302903\";\"Pamukkale\";\"main\"\n\"302903\";\"Ecirli\";\"other\"\n\"302903\";\"Hierapolis\";\"other\"\n\"302903\";\"Hierapolis de Frigia\";\"other\"\n\"302903\";\"Hieropolis\";\"other\"\n\"302903\";\"Hieràpolis de Frígia\";\"other\"\n\"302903\";\"Hierápolis\";\"other\"\n\"302903\";\"hieraporisu-pamukkare\";\"other\"\n\"302903\";\"Памуккале\";\"other\"\n\"302903\";\"ヒエラポリス-パムッカレ\";\"other\"\n\"302912\";\"Palu\";\"main\"\n\"302912\";\"Paluyah\";\"other\"\n\"302924\";\"Palamutlu\";\"main\"\n\"302924\";\"Palamut\";\"other\"\n\"302924\";\"Sas\";\"other\"\n\"302924\";\"Shoz\";\"other\"\n\"302924\";\"Soz\";\"other\"\n\"302924\";\"Sozkoy\";\"other\"\n\"302924\";\"Şaş\";\"other\"\n\"302924\";\"Şoz\";\"other\"\n\"302924\";\"Şozköy\";\"other\"\n\"303007\";\"Özbek\";\"main\"\n\"303007\";\"Ozbek\";\"ascii\"\n\"303007\";\"Tel'sikan\";\"other\"\n\"303007\";\"Telsakam\";\"other\"\n\"303007\";\"Telsakan\";\"other\"\n\"303007\";\"Telsekan\";\"other\"\n\"303007\";\"Telsekân\";\"other\"\n\"303007\";\"Telsikan\";\"other\"\n\"303007\";\"Telsikân\";\"other\"\n\"303007\";\"Tel’sikan\";\"other\"\n\"303022\";\"Özalp\";\"main\"\n\"303022\";\"Ozalp\";\"ascii\"\n\"303022\";\"Karakalli\";\"other\"\n\"303022\";\"Karakallı\";\"other\"\n\"303022\";\"Karkalli\";\"other\"\n\"303022\";\"Karkallı\";\"other\"\n\"303046\";\"Oymataş\";\"main\"\n\"303046\";\"Oymatas\";\"ascii\"\n\"303046\";\"Bediyan\";\"other\"\n\"303062\";\"Oyalı\";\"main\"\n\"303062\";\"Oyali\";\"ascii\"\n\"303092\";\"Ovakavağı\";\"main\"\n\"303092\";\"Ovakavagi\";\"ascii\"\n\"303092\";\"Kavakli\";\"other\"\n\"303092\";\"Kavaklı\";\"other\"\n\"303147\";\"Otlukbeli\";\"main\"\n\"303147\";\"Karakulak\";\"other\"\n\"303195\";\"Osmaniye\";\"main\"\n\"303195\";\"Cebelibereket\";\"other\"\n\"303195\";\"Gebelibereket\";\"other\"\n\"303195\";\"Osmanie\";\"other\"\n\"303195\";\"Османие\";\"other\"\n\"303290\";\"Ortaköy\";\"main\"\n\"303290\";\"Ortakoy\";\"ascii\"\n\"303304\";\"Ortaköy\";\"main\"\n\"303304\";\"Ortakoy\";\"ascii\"\n\"303304\";\"Asagi Arus\";\"other\"\n\"303304\";\"Ashagi-Arush\";\"other\"\n\"303304\";\"Aşağı Aruş\";\"other\"\n\"303305\";\"Ortaköy\";\"main\"\n\"303305\";\"Ortakoy\";\"ascii\"\n\"303305\";\"Gulharin\";\"other\"\n\"303305\";\"Gulharrin\";\"other\"\n\"303305\";\"Gyul'kharin\";\"other\"\n\"303305\";\"Gyul’kharin\";\"other\"\n\"303305\";\"Gülharin\";\"other\"\n\"303305\";\"Gülharrin\";\"other\"\n\"303305\";\"Harrin\";\"other\"\n\"303305\";\"Harrın\";\"other\"\n\"303305\";\"Ortakej\";\"other\"\n\"303305\";\"Ортакей\";\"other\"\n\"303353\";\"Ortaca\";\"main\"\n\"303353\";\"Hesterek\";\"other\"\n\"303353\";\"Heşterek\";\"other\"\n\"303353\";\"Kheshterek\";\"other\"\n\"303354\";\"Ortaca\";\"main\"\n\"303357\";\"Ortabağ\";\"main\"\n\"303357\";\"Ortabag\";\"ascii\"\n\"303357\";\"Gerur\";\"other\"\n\"303357\";\"Glyan\";\"other\"\n\"303357\";\"Gurur\";\"other\"\n\"303357\";\"Gürur\";\"other\"\n\"303409\";\"Orhaneli\";\"main\"\n\"303409\";\"Adranos\";\"other\"\n\"303409\";\"Atranos\";\"other\"\n\"303409\";\"Beyce\";\"other\"\n\"303409\";\"adrnws\";\"other\"\n\"303409\";\"atranws\";\"other\"\n\"303409\";\"atrnws\";\"other\"\n\"303409\";\"bkjh\";\"other\"\n\"303409\";\"ادرنوس\";\"other\"\n\"303409\";\"اطرانوس\";\"other\"\n\"303409\";\"اطرنوس\";\"other\"\n\"303409\";\"بكجه\";\"other\"\n\"303502\";\"Öncül\";\"main\"\n\"303502\";\"Oncul\";\"ascii\"\n\"303502\";\"Ille\";\"other\"\n\"303502\";\"İlle\";\"other\"\n\"303532\";\"Ömerli\";\"main\"\n\"303532\";\"Omerli\";\"ascii\"\n\"303532\";\"Maserti\";\"other\"\n\"303626\";\"Okçular\";\"main\"\n\"303626\";\"Okcular\";\"ascii\"\n\"303626\";\"Tiri\";\"other\"\n\"303642\";\"Oğuzeli\";\"main\"\n\"303642\";\"Oguzeli\";\"ascii\"\n\"303642\";\"Buyuk Kizilhisar\";\"other\"\n\"303642\";\"Büyük Kızılhisar\";\"other\"\n\"303648\";\"Oğuz\";\"main\"\n\"303648\";\"Oguz\";\"ascii\"\n\"303648\";\"Dara\";\"other\"\n\"303700\";\"Ödemiş\";\"main\"\n\"303700\";\"Odemis\";\"ascii\"\n\"303700\";\"Eudemish\";\"other\"\n\"303700\";\"Hypaepa\";\"other\"\n\"303750\";\"Nusaybin\";\"main\"\n\"303750\";\"Antiocheia\";\"other\"\n\"303750\";\"Nasabina\";\"other\"\n\"303750\";\"Nisibin\";\"other\"\n\"303750\";\"Nisibis\";\"other\"\n\"303750\";\"Nissibine\";\"other\"\n\"303750\";\"Nuseybin\";\"other\"\n\"303750\";\"Nuzajbin\";\"other\"\n\"303750\";\"Αντιόχεια\";\"other\"\n\"303750\";\"Нузайбин\";\"other\"\n\"303763\";\"Nurhak\";\"main\"\n\"303798\";\"Nizip\";\"main\"\n\"303798\";\"Nezip\";\"other\"\n\"303798\";\"Nizipe\";\"other\"\n\"303798\";\"Низипе\";\"other\"\n\"303827\";\"Niğde\";\"main\"\n\"303827\";\"Nigde\";\"ascii\"\n\"303827\";\"Nigdah\";\"other\"\n\"303827\";\"Nigdeh\";\"other\"\n\"303827\";\"Нигде\";\"other\"\n\"303831\";\"Nevşehir\";\"main\"\n\"303831\";\"Nevsehir\";\"ascii\"\n\"303831\";\"Muskara\";\"other\"\n\"303831\";\"Muşkara\";\"other\"\n\"303831\";\"Nevshehr\";\"other\"\n\"303831\";\"Nevshekhir\";\"other\"\n\"303831\";\"Невшехир\";\"other\"\n\"303872\";\"Nazımiye\";\"main\"\n\"303872\";\"Nazimiye\";\"ascii\"\n\"303873\";\"Nazilli\";\"main\"\n\"303873\";\"Nasly\";\"other\"\n\"303873\";\"Pazarkoy\";\"other\"\n\"303873\";\"Pazarköy\";\"other\"\n\"304009\";\"Mutki\";\"main\"\n\"304013\";\"Mut\";\"main\"\n\"304078\";\"Musabeyli\";\"main\"\n\"304078\";\"Murathuyugu\";\"other\"\n\"304078\";\"Murathüyüğü\";\"other\"\n\"304081\";\"Muş\";\"main\"\n\"304081\";\"Mus\";\"ascii\"\n\"304081\";\"Mush\";\"other\"\n\"304081\";\"Муш\";\"other\"\n\"304110\";\"Muratlı\";\"main\"\n\"304110\";\"Muratli\";\"ascii\"\n\"304110\";\"Hirbetcay\";\"other\"\n\"304110\";\"Hırbetçay\";\"other\"\n\"304184\";\"Muğla\";\"main\"\n\"304184\";\"Mugla\";\"ascii\"\n\"304184\";\"Mentese\";\"other\"\n\"304184\";\"Menteshe\";\"other\"\n\"304184\";\"Mobolla\";\"other\"\n\"304184\";\"Mughla\";\"other\"\n\"304184\";\"Mughlah\";\"other\"\n\"304184\";\"Мугла\";\"other\"\n\"304196\";\"Mucur\";\"main\"\n\"304341\";\"Minare\";\"main\"\n\"304349\";\"Balveren\";\"main\"\n\"304349\";\"Milli\";\"other\"\n\"304355\";\"Milas\";\"main\"\n\"304355\";\"Mylasa\";\"other\"\n\"304355\";\"Милас\";\"other\"\n\"304382\";\"Midyat\";\"main\"\n\"304382\";\"Estil\";\"other\"\n\"304382\";\"Medeat\";\"other\"\n\"304382\";\"Mid'jat\";\"other\"\n\"304382\";\"Midyad\";\"other\"\n\"304382\";\"Mityat\";\"other\"\n\"304382\";\"Мидьят\";\"other\"\n\"304414\";\"Mezrea\";\"main\"\n\"304414\";\"Mezraa\";\"other\"\n\"304414\";\"Mezraa Koyu\";\"other\"\n\"304414\";\"Mezraa Köyü\";\"other\"\n\"304440\";\"Meydankapı\";\"main\"\n\"304440\";\"Meydankapi\";\"ascii\"\n\"304440\";\"Hizan\";\"other\"\n\"304440\";\"Khizan\";\"other\"\n\"304531\";\"Mercin\";\"main\"\n\"304531\";\"Icel\";\"other\"\n\"304531\";\"Mersin\";\"other\"\n\"304531\";\"Mersina\";\"other\"\n\"304531\";\"Mersine\";\"other\"\n\"304531\";\"Merson\";\"other\"\n\"304531\";\"Mersyna\";\"other\"\n\"304531\";\"Mersîn\";\"other\"\n\"304531\";\"Zephyrium\";\"other\"\n\"304531\";\"İçel\";\"other\"\n\"304531\";\"Μερσίνη\";\"other\"\n\"304531\";\"Мерсин\";\"other\"\n\"304612\";\"Menemen\";\"main\"\n\"304612\";\"Temnos\";\"other\"\n\"304612\";\"Менемен\";\"other\"\n\"304734\";\"Mazıdağı\";\"main\"\n\"304734\";\"Mazidagi\";\"ascii\"\n\"304734\";\"Mahallimentina\";\"other\"\n\"304734\";\"Samarli\";\"other\"\n\"304734\";\"Samrah\";\"other\"\n\"304734\";\"Şamarlı\";\"other\"\n\"304734\";\"Şamrah\";\"other\"\n\"304738\";\"Mazgirt\";\"main\"\n\"304738\";\"Mazkirt\";\"other\"\n\"304782\";\"Marmaris\";\"main\"\n\"304782\";\"Mararis\";\"other\"\n\"304782\";\"Marmarice\";\"other\"\n\"304782\";\"Physcus\";\"other\"\n\"304782\";\"marmaris\";\"other\"\n\"304782\";\"marmarys\";\"other\"\n\"304782\";\"Мармарис\";\"other\"\n\"304782\";\"מרמאריס\";\"other\"\n\"304782\";\"مارماريس\";\"other\"\n\"304797\";\"Mardin\";\"main\"\n\"304797\";\"Marde\";\"other\"\n\"304797\";\"Merdin\";\"other\"\n\"304797\";\"Mêrdin\";\"other\"\n\"304797\";\"Mêrdîn\";\"other\"\n\"304797\";\"marudin\";\"other\"\n\"304797\";\"Мардин\";\"other\"\n\"304797\";\"マルディン\";\"other\"\n\"304827\";\"Manisa\";\"main\"\n\"304827\";\"Magnesia\";\"other\"\n\"304827\";\"Magnesia ad Sipylum\";\"other\"\n\"304827\";\"Magnesia am Sipylos\";\"other\"\n\"304827\";\"Magnisiyah\";\"other\"\n\"304827\";\"Magnēsıa\";\"other\"\n\"304827\";\"Mahnisa\";\"other\"\n\"304827\";\"Manissa\";\"other\"\n\"304827\";\"Sarouhan\";\"other\"\n\"304827\";\"Saruhan\";\"other\"\n\"304827\";\"Маниса\";\"other\"\n\"304854\";\"Manavgat\";\"main\"\n\"304854\";\"Манавгат\";\"other\"\n\"304916\";\"Malazgirt\";\"main\"\n\"304916\";\"Kale\";\"other\"\n\"304916\";\"Malazkirt\";\"other\"\n\"304916\";\"Malâzkirt\";\"other\"\n\"304922\";\"Malatya\";\"main\"\n\"304922\";\"Malat'ja\";\"other\"\n\"304922\";\"Malatia\";\"other\"\n\"304922\";\"Malatiyah\";\"other\"\n\"304922\";\"Meleti\";\"other\"\n\"304922\";\"Meletî\";\"other\"\n\"304922\";\"Melitene\";\"other\"\n\"304922\";\"Малатья\";\"other\"\n\"304998\";\"Mağaralı\";\"main\"\n\"304998\";\"Magarali\";\"ascii\"\n\"304998\";\"Cukurgirlevik\";\"other\"\n\"304998\";\"Girlavik\";\"other\"\n\"304998\";\"Gırlavik\";\"other\"\n\"304998\";\"Magaraly\";\"other\"\n\"304998\";\"Çukurgirlevik\";\"other\"\n\"305089\";\"Lice\";\"main\"\n\"305089\";\"Lijje\";\"other\"\n\"305182\";\"Kuyulusebil\";\"main\"\n\"305210\";\"Kuyucak\";\"main\"\n\"305210\";\"Kayancuk\";\"other\"\n\"305263\";\"Kutlubey\";\"main\"\n\"305263\";\"Tinat\";\"other\"\n\"305268\";\"Kütahya\";\"main\"\n\"305268\";\"Kutahya\";\"ascii\"\n\"305268\";\"Cotiaeum\";\"other\"\n\"305268\";\"Cotyaeum\";\"other\"\n\"305268\";\"Kjutakh'ja\";\"other\"\n\"305268\";\"Kuetahya\";\"other\"\n\"305268\";\"Kutahiyah\";\"other\"\n\"305268\";\"Kutaia\";\"other\"\n\"305268\";\"Kutaya\";\"other\"\n\"305268\";\"Кютахья\";\"other\"\n\"305359\";\"Kuşadası\";\"main\"\n\"305359\";\"Kusadasi\";\"ascii\"\n\"305359\";\"Efes\";\"other\"\n\"305359\";\"Kush Adasi\";\"other\"\n\"305359\";\"Kush Adası\";\"other\"\n\"305359\";\"Kushadassi\";\"other\"\n\"305359\";\"Kushadasy\";\"other\"\n\"305359\";\"Marathesium\";\"other\"\n\"305359\";\"Nea Ephesus\";\"other\"\n\"305359\";\"Scalanuova\";\"other\"\n\"305359\";\"Skala Nuova\";\"other\"\n\"305359\";\"Skalanova\";\"other\"\n\"305359\";\"kushadas\\\"\";\"other\"\n\"305359\";\"kushadasi\";\"other\"\n\"305359\";\"Кушадаси\";\"other\"\n\"305359\";\"Кушадасъ\";\"other\"\n\"305359\";\"Кушадасы\";\"other\"\n\"305532\";\"Kurtalan\";\"main\"\n\"305532\";\"Misirdic\";\"other\"\n\"305532\";\"Misric\";\"other\"\n\"305532\";\"Mısrıç\";\"other\"\n\"305680\";\"Kumluca\";\"main\"\n\"305685\";\"Kumlu\";\"main\"\n\"305685\";\"Dekok\";\"other\"\n\"305685\";\"Dikuk\";\"other\"\n\"305685\";\"Dikük\";\"other\"\n\"305685\";\"Dukuk\";\"other\"\n\"305685\";\"Dükük\";\"other\"\n\"305699\";\"Kumçatı\";\"main\"\n\"305699\";\"Kumcati\";\"ascii\"\n\"305699\";\"Dergul\";\"other\"\n\"305699\";\"Dergyul'\";\"other\"\n\"305699\";\"Dergyul’\";\"other\"\n\"305699\";\"Dergül\";\"other\"\n\"305737\";\"Kulucak\";\"main\"\n\"305742\";\"Kulu\";\"main\"\n\"305750\";\"Kulp\";\"main\"\n\"305810\";\"Kula\";\"main\"\n\"305810\";\"Kovla\";\"other\"\n\"305810\";\"Kul\";\"other\"\n\"305810\";\"Opsicium\";\"other\"\n\"305810\";\"Кул\";\"other\"\n\"306041\";\"Kozluk\";\"main\"\n\"306112\";\"Kozan\";\"main\"\n\"306112\";\"Flaviopolis\";\"other\"\n\"306112\";\"Sis\";\"other\"\n\"306116\";\"Kozaklı\";\"main\"\n\"306116\";\"Kozakli\";\"ascii\"\n\"306207\";\"Kovancılar\";\"main\"\n\"306207\";\"Kovancilar\";\"ascii\"\n\"306285\";\"Köşk\";\"main\"\n\"306285\";\"Kosk\";\"ascii\"\n\"306308\";\"Köseli\";\"main\"\n\"306308\";\"Koseli\";\"ascii\"\n\"306308\";\"Keseli\";\"other\"\n\"306308\";\"Këseli\";\"other\"\n\"306474\";\"Korkuteli\";\"main\"\n\"306474\";\"Istanos\";\"other\"\n\"306474\";\"Korkudeli\";\"other\"\n\"306474\";\"İstanos\";\"other\"\n\"306474\";\"Коркутели\";\"other\"\n\"306476\";\"Korkut\";\"main\"\n\"306525\";\"Çobandede\";\"main\"\n\"306525\";\"Cobandede\";\"ascii\"\n\"306525\";\"Koprukoy\";\"other\"\n\"306525\";\"Köprüköy\";\"other\"\n\"306537\";\"Köprübaşı\";\"main\"\n\"306537\";\"Koprubasi\";\"ascii\"\n\"306571\";\"Konya\";\"main\"\n\"306571\";\"Conia\";\"other\"\n\"306571\";\"Iconio\";\"other\"\n\"306571\";\"Iconium\";\"other\"\n\"306571\";\"Ikonio\";\"other\"\n\"306571\";\"Ikoniow\";\"other\"\n\"306571\";\"Kon'ja\";\"other\"\n\"306571\";\"Konia\";\"other\"\n\"306571\";\"Konieh\";\"other\"\n\"306571\";\"Konija\";\"other\"\n\"306571\";\"Konjao\";\"other\"\n\"306571\";\"Kuniyah\";\"other\"\n\"306571\";\"Qonia\";\"other\"\n\"306571\";\"kon'ya\";\"other\"\n\"306571\";\"qwnyh\";\"other\"\n\"306571\";\"qwnyt\";\"other\"\n\"306571\";\"Ικόνιο\";\"other\"\n\"306571\";\"Кония\";\"other\"\n\"306571\";\"Конья\";\"other\"\n\"306571\";\"קוניה\";\"other\"\n\"306571\";\"قونية\";\"other\"\n\"306571\";\"قونیه\";\"other\"\n\"306571\";\"コンヤ\";\"other\"\n\"306612\";\"Konalga\";\"main\"\n\"306612\";\"Martanis\";\"other\"\n\"306859\";\"Göcek\";\"main\"\n\"306859\";\"Goecek\";\"ascii\"\n\"306859\";\"Gocek\";\"other\"\n\"306859\";\"Gochek\";\"other\"\n\"306859\";\"Kocek\";\"other\"\n\"306859\";\"Kucuk\";\"other\"\n\"306859\";\"Köçek\";\"other\"\n\"306859\";\"Küçük\";\"other\"\n\"306859\";\"Гочек\";\"other\"\n\"306908\";\"Koçarlı\";\"main\"\n\"306908\";\"Kocarli\";\"ascii\"\n\"306935\";\"Kocaköy\";\"main\"\n\"306935\";\"Kocakoy\";\"ascii\"\n\"307084\";\"Kızıltepe\";\"main\"\n\"307084\";\"Kiziltepe\";\"ascii\"\n\"307084\";\"Kochisar\";\"other\"\n\"307084\";\"Kochkhisar\";\"other\"\n\"307084\";\"Koçhisar\";\"other\"\n\"307084\";\"Kyzyltepe\";\"other\"\n\"307084\";\"Кызылтепе\";\"other\"\n\"307102\";\"Kızılsu\";\"main\"\n\"307102\";\"Kizilsu\";\"ascii\"\n\"307102\";\"Sehres\";\"other\"\n\"307102\";\"Shekhresh\";\"other\"\n\"307102\";\"Sihras\";\"other\"\n\"307102\";\"Şehreş\";\"other\"\n\"307102\";\"Şıhraş\";\"other\"\n\"307129\";\"Kızılören\";\"main\"\n\"307129\";\"Kiziloren\";\"ascii\"\n\"307129\";\"Kizilviran\";\"other\"\n\"307129\";\"Kızılviran\";\"other\"\n\"307211\";\"Serinhisar\";\"main\"\n\"307211\";\"Kizilhisar\";\"other\"\n\"307211\";\"Kızılhisar\";\"other\"\n\"307515\";\"Kırşehir\";\"main\"\n\"307515\";\"Kirsehir\";\"ascii\"\n\"307515\";\"Justinianopolis\";\"other\"\n\"307515\";\"Kirshahr\";\"other\"\n\"307515\";\"Kirshehr\";\"other\"\n\"307515\";\"Kyrshekhir\";\"other\"\n\"307515\";\"Mocissus\";\"other\"\n\"307515\";\"Mokissus\";\"other\"\n\"307515\";\"Кыршехир\";\"other\"\n\"307623\";\"Kırkağaç\";\"main\"\n\"307623\";\"Kirkagac\";\"ascii\"\n\"307623\";\"Nacrasa\";\"other\"\n\"307654\";\"Kırıkkale\";\"main\"\n\"307654\";\"Kirikkale\";\"ascii\"\n\"307654\";\"Kyrykkale\";\"other\"\n\"307654\";\"Кырыккале\";\"other\"\n\"307657\";\"Kırıkhan\";\"main\"\n\"307657\";\"Kirikhan\";\"ascii\"\n\"307727\";\"Kiraz\";\"main\"\n\"307727\";\"Kelasi\";\"other\"\n\"307727\";\"Keles\";\"other\"\n\"307727\";\"Kelez\";\"other\"\n\"307786\";\"Kınık\";\"main\"\n\"307786\";\"Kinik\";\"ascii\"\n\"307864\";\"Kilis\";\"main\"\n\"307864\";\"Ciliza\";\"other\"\n\"307864\";\"Килис\";\"other\"\n\"307939\";\"Kılavuz\";\"main\"\n\"307939\";\"Kilavuz\";\"ascii\"\n\"307939\";\"Halilan\";\"other\"\n\"307939\";\"Khalilan\";\"other\"\n\"307948\";\"Kiği\";\"main\"\n\"307948\";\"Kigi\";\"ascii\"\n\"307948\";\"Kasaba\";\"other\"\n\"308024\";\"Keskin\";\"main\"\n\"308024\";\"Denek\";\"other\"\n\"308024\";\"Denekmadeni\";\"other\"\n\"308024\";\"Maden\";\"other\"\n\"308024\";\"Кескин\";\"other\"\n\"308133\";\"Kepsut\";\"main\"\n\"308133\";\"Kepsit\";\"other\"\n\"308217\";\"Kemer\";\"main\"\n\"308217\";\"Bebekler\";\"other\"\n\"308217\";\"Bobekler\";\"other\"\n\"308217\";\"Böbekler\";\"other\"\n\"308217\";\"Sertac\";\"other\"\n\"308217\";\"Sertaç\";\"other\"\n\"308217\";\"Кемер\";\"other\"\n\"308220\";\"Kemer\";\"main\"\n\"308220\";\"Eskikoy\";\"other\"\n\"308220\";\"Eskiköy\";\"other\"\n\"308220\";\"Кемер\";\"other\"\n\"308224\";\"Kemalpaşa\";\"main\"\n\"308224\";\"Kemalpasa\";\"ascii\"\n\"308224\";\"Kemal'pasha\";\"other\"\n\"308224\";\"Nif\";\"other\"\n\"308224\";\"Nymphaeum\";\"other\"\n\"308224\";\"Кемальпаша\";\"other\"\n\"308230\";\"Kemaliye\";\"main\"\n\"308230\";\"Egin\";\"other\"\n\"308233\";\"Kemah\";\"main\"\n\"308233\";\"Camacha Theodosiopolis\";\"other\"\n\"308233\";\"Gamakh\";\"other\"\n\"308233\";\"Kemakh\";\"other\"\n\"308233\";\"kmakh\";\"other\"\n\"308233\";\"کماخ\";\"other\"\n\"308261\";\"Keles\";\"main\"\n\"308365\";\"Keçiborlu\";\"main\"\n\"308365\";\"Keciborlu\";\"ascii\"\n\"308389\";\"Keban\";\"main\"\n\"308389\";\"Gumusmadeni\";\"other\"\n\"308389\";\"Gümüşmadeni\";\"other\"\n\"308400\";\"Kazımkarabekir\";\"main\"\n\"308400\";\"Kazimkarabekir\";\"ascii\"\n\"308400\";\"Gaferiyat\";\"other\"\n\"308400\";\"Gaferîyat\";\"other\"\n\"308455\";\"Kazancı\";\"main\"\n\"308455\";\"Kazanci\";\"ascii\"\n\"308455\";\"Hacigeyigi\";\"other\"\n\"308455\";\"Hacıgeyigi\";\"other\"\n\"308455\";\"Kurkhaci\";\"other\"\n\"308455\";\"Kurtaci\";\"other\"\n\"308455\";\"Kurthaci\";\"other\"\n\"308455\";\"Kyurtkhadzhi\";\"other\"\n\"308455\";\"Kürkhacı\";\"other\"\n\"308455\";\"Kürtacı\";\"other\"\n\"308455\";\"Kürthacı\";\"other\"\n\"308464\";\"Kayseri\";\"main\"\n\"308464\";\"Caesarea\";\"other\"\n\"308464\";\"Casarea\";\"other\"\n\"308464\";\"Cearee\";\"other\"\n\"308464\";\"Cesarea in Cappadocia\";\"other\"\n\"308464\";\"Cesaree\";\"other\"\n\"308464\";\"Céarée\";\"other\"\n\"308464\";\"Césarée\";\"other\"\n\"308464\";\"Eusebeia\";\"other\"\n\"308464\";\"Kaisaria\";\"other\"\n\"308464\";\"Kaisarie\";\"other\"\n\"308464\";\"Kaisarije\";\"other\"\n\"308464\";\"Kaizarie\";\"other\"\n\"308464\";\"Kajseri\";\"other\"\n\"308464\";\"Kaīzarie\";\"other\"\n\"308464\";\"Mazaca\";\"other\"\n\"308464\";\"Qaisariye\";\"other\"\n\"308464\";\"kaiseri\";\"other\"\n\"308464\";\"Кайсери\";\"other\"\n\"308464\";\"カイセリ\";\"other\"\n\"308496\";\"Kaynakkaya\";\"main\"\n\"308572\";\"Kayapınar\";\"main\"\n\"308572\";\"Kayapinar\";\"ascii\"\n\"308572\";\"Ayinkaf\";\"other\"\n\"308572\";\"Ayinkar\";\"other\"\n\"308572\";\"Ayinkef\";\"other\"\n\"308572\";\"Ayinkâf\";\"other\"\n\"308572\";\"Aynnkyaf\";\"other\"\n\"308572\";\"Ayınkâr\";\"other\"\n\"308572\";\"Habezbeni\";\"other\"\n\"308572\";\"Khabezbeni\";\"other\"\n\"308584\";\"Kayalıpınar\";\"main\"\n\"308584\";\"Kayalipinar\";\"ascii\"\n\"308584\";\"Mikri\";\"other\"\n\"308697\";\"Kayabağlar\";\"main\"\n\"308697\";\"Kayabaglar\";\"ascii\"\n\"308697\";\"Zokayit\";\"other\"\n\"308697\";\"Zokayıt\";\"other\"\n\"308776\";\"Kavaklıdere\";\"main\"\n\"308776\";\"Kavaklidere\";\"ascii\"\n\"308776\";\"Kavakdere\";\"other\"\n\"308948\";\"Kaş\";\"main\"\n\"308948\";\"Kas\";\"ascii\"\n\"308948\";\"Andifli\";\"other\"\n\"308948\";\"Andiphilo\";\"other\"\n\"308948\";\"Antiphellus\";\"other\"\n\"308998\";\"Aladağ\";\"main\"\n\"308998\";\"Aladag\";\"ascii\"\n\"308998\";\"Karsanti\";\"other\"\n\"308998\";\"Karsantı\";\"other\"\n\"308998\";\"Korsanti\";\"other\"\n\"308998\";\"Korsantı\";\"other\"\n\"308998\";\"Mansurlu\";\"other\"\n\"309008\";\"Karpuzlu\";\"main\"\n\"309008\";\"Demircidere\";\"other\"\n\"309032\";\"Karlıova\";\"main\"\n\"309032\";\"Karliova\";\"ascii\"\n\"309032\";\"Kanires\";\"other\"\n\"309032\";\"Kânireş\";\"other\"\n\"309131\";\"Kargı\";\"main\"\n\"309131\";\"Kargi\";\"ascii\"\n\"309131\";\"Kargifoca\";\"other\"\n\"309131\";\"Kargıfoca\";\"other\"\n\"309131\";\"Pirnaz\";\"other\"\n\"309131\";\"Pırnaz\";\"other\"\n\"309134\";\"Karkamış\";\"main\"\n\"309134\";\"Karkamis\";\"ascii\"\n\"309134\";\"Barak\";\"other\"\n\"309134\";\"Carablus\";\"other\"\n\"309134\";\"Carabulus\";\"other\"\n\"309134\";\"Karakamis\";\"other\"\n\"309134\";\"Karakamış\";\"other\"\n\"309134\";\"Kargamis\";\"other\"\n\"309134\";\"Kargamış\";\"other\"\n\"309134\";\"Karkamysh\";\"other\"\n\"309199\";\"Karayazı\";\"main\"\n\"309199\";\"Karayazi\";\"ascii\"\n\"309199\";\"Bayrakdar\";\"other\"\n\"309199\";\"Bayraktar\";\"other\"\n\"309312\";\"Karataş\";\"main\"\n\"309312\";\"Karatas\";\"ascii\"\n\"309312\";\"Kucukkaratas\";\"other\"\n\"309312\";\"Kuecuekkaratas\";\"other\"\n\"309312\";\"Küçükkarataş\";\"other\"\n\"309415\";\"Karapınar\";\"main\"\n\"309415\";\"Karapinar\";\"ascii\"\n\"309415\";\"Sultaniye\";\"other\"\n\"309512\";\"Karamanlı\";\"main\"\n\"309512\";\"Karamanli\";\"ascii\"\n\"309527\";\"Karaman\";\"main\"\n\"309527\";\"Ak Yokus\";\"other\"\n\"309527\";\"Ak Yokuş\";\"other\"\n\"309527\";\"Darende\";\"other\"\n\"309527\";\"Laranda\";\"other\"\n\"309527\";\"Караман\";\"other\"\n\"309554\";\"Karalar\";\"main\"\n\"309554\";\"Araban\";\"other\"\n\"309610\";\"Karakoyunlu\";\"main\"\n\"309610\";\"Karakoyun\";\"other\"\n\"309647\";\"Ağrı\";\"main\"\n\"309647\";\"Agri\";\"ascii\"\n\"309647\";\"Agiri\";\"other\"\n\"309647\";\"Agirî\";\"other\"\n\"309647\";\"Agr\\\"\";\"other\"\n\"309647\";\"Karakilise\";\"other\"\n\"309647\";\"Karakose\";\"other\"\n\"309647\";\"Karaköse\";\"other\"\n\"309647\";\"Provinsi Agri\";\"other\"\n\"309647\";\"Provinsi Ağrı\";\"other\"\n\"309647\";\"a lei sheng\";\"other\"\n\"309647\";\"Агръ\";\"other\"\n\"309647\";\"阿勒省\";\"other\"\n\"309663\";\"Karakoçan\";\"main\"\n\"309663\";\"Karakocan\";\"ascii\"\n\"309663\";\"Karakodzhana\";\"other\"\n\"309663\";\"Tepe\";\"other\"\n\"309663\";\"Tepekoy\";\"other\"\n\"309663\";\"Tepeköy\";\"other\"\n\"309663\";\"Каракоджана\";\"other\"\n\"309705\";\"Karakeçili\";\"main\"\n\"309705\";\"Karakecili\";\"ascii\"\n\"309758\";\"Karaisalı\";\"main\"\n\"309758\";\"Karaisali\";\"ascii\"\n\"309758\";\"Ceceli\";\"other\"\n\"309758\";\"Çeceli\";\"other\"\n\"309758\";\"قره عیسالو\";\"other\"\n\"309821\";\"Karahallı\";\"main\"\n\"309821\";\"Karahalli\";\"ascii\"\n\"309821\";\"Karaballi\";\"other\"\n\"309821\";\"Karaballı\";\"other\"\n\"309821\";\"Karahal\";\"other\"\n\"309821\";\"Karahalla\";\"other\"\n\"310004\";\"Karaçoban\";\"main\"\n\"310004\";\"Karacoban\";\"ascii\"\n\"310044\";\"Karacasu\";\"main\"\n\"310200\";\"Karaburun\";\"main\"\n\"310200\";\"Ahirli\";\"other\"\n\"310200\";\"Ahırlı\";\"other\"\n\"310554\";\"Kangal\";\"main\"\n\"310641\";\"Kaman\";\"main\"\n\"310641\";\"Keman\";\"other\"\n\"310641\";\"Каман\";\"other\"\n\"310677\";\"Kalkan\";\"main\"\n\"310677\";\"Kalamaki\";\"other\"\n\"310677\";\"Калкан\";\"other\"\n\"310784\";\"Kale\";\"main\"\n\"310789\";\"Kale\";\"main\"\n\"310855\";\"Kâhta\";\"main\"\n\"310855\";\"Kahta\";\"ascii\"\n\"310855\";\"Kakhta\";\"other\"\n\"310855\";\"Kolik\";\"other\"\n\"310855\";\"Koluk\";\"other\"\n\"310855\";\"Kölük\";\"other\"\n\"310855\";\"Кахта\";\"other\"\n\"310859\";\"Kahramanmaraş\";\"main\"\n\"310859\";\"Kahramanmaras\";\"ascii\"\n\"310859\";\"Caesarea Germanicia\";\"other\"\n\"310859\";\"Germanicea Marqasi\";\"other\"\n\"310859\";\"Gurgum\";\"other\"\n\"310859\";\"Kakhramanmarash\";\"other\"\n\"310859\";\"Maraache\";\"other\"\n\"310859\";\"Marache\";\"other\"\n\"310859\";\"Maras\";\"other\"\n\"310859\";\"Marasch\";\"other\"\n\"310859\";\"Marash\";\"other\"\n\"310859\";\"Marasion\";\"other\"\n\"310859\";\"Maraş\";\"other\"\n\"310859\";\"Meres\";\"other\"\n\"310859\";\"Кахраманмараш\";\"other\"\n\"310888\";\"Kadışehri\";\"main\"\n\"310888\";\"Kadisehri\";\"ascii\"\n\"310888\";\"Kadisehir\";\"other\"\n\"310888\";\"Kadışehir\";\"other\"\n\"310892\";\"Kadirli\";\"main\"\n\"310892\";\"Karszulkadriye\";\"other\"\n\"310892\";\"Karszülkadriye\";\"other\"\n\"310907\";\"Kadınhanı\";\"main\"\n\"310907\";\"Kadinhani\";\"ascii\"\n\"310907\";\"Saideli\";\"other\"\n\"310907\";\"Saiteli\";\"other\"\n\"310907\";\"syd ayly\";\"other\"\n\"310907\";\"سید ایلی\";\"other\"\n\"310982\";\"Kabala\";\"main\"\n\"311046\";\"İzmir\";\"main\"\n\"311046\";\"Izmir\";\"ascii\"\n\"311046\";\"Azmir\";\"other\"\n\"311046\";\"Esmirna\";\"other\"\n\"311046\";\"IZM\";\"other\"\n\"311046\";\"Ismir\";\"other\"\n\"311046\";\"Izmira\";\"other\"\n\"311046\";\"Izmiras\";\"other\"\n\"311046\";\"Izmiro\";\"other\"\n\"311046\";\"Smirne\";\"other\"\n\"311046\";\"Smyrna\";\"other\"\n\"311046\";\"Smyrne\";\"other\"\n\"311046\";\"Yazmir\";\"other\"\n\"311046\";\"azmyr\";\"other\"\n\"311046\";\"izmiri\";\"other\"\n\"311046\";\"izumiru\";\"other\"\n\"311046\";\"yi zi mi er\";\"other\"\n\"311046\";\"Σμύρνη\";\"other\"\n\"311046\";\"Измир\";\"other\"\n\"311046\";\"איזמיר\";\"other\"\n\"311046\";\"إزمير\";\"other\"\n\"311046\";\"იზმირი\";\"other\"\n\"311046\";\"イズミル\";\"other\"\n\"311046\";\"伊兹密尔\";\"other\"\n\"311054\";\"İvrindi\";\"main\"\n\"311054\";\"Ivrindi\";\"ascii\"\n\"311073\";\"Isparta\";\"main\"\n\"311073\";\"Baris\";\"other\"\n\"311073\";\"Hamid\";\"other\"\n\"311073\";\"Hamid-Abad\";\"other\"\n\"311073\";\"Hamitabat\";\"other\"\n\"311073\";\"Isbarta\";\"other\"\n\"311073\";\"Ispartah\";\"other\"\n\"311073\";\"Izbarta\";\"other\"\n\"311073\";\"Izparta\";\"other\"\n\"311073\";\"Sparta\";\"other\"\n\"311073\";\"Sparte\";\"other\"\n\"311073\";\"Spartē\";\"other\"\n\"311073\";\"İzparta\";\"other\"\n\"311073\";\"Испарта\";\"other\"\n\"311111\";\"İskenderun\";\"main\"\n\"311111\";\"Iskenderun\";\"ascii\"\n\"311111\";\"Alejandreta\";\"other\"\n\"311111\";\"Aleksandretta\";\"other\"\n\"311111\";\"Alessandretta\";\"other\"\n\"311111\";\"Alexandretta\";\"other\"\n\"311111\";\"Alexandrette\";\"other\"\n\"311111\";\"Alexandria ad Issum\";\"other\"\n\"311111\";\"Iskandariyah\";\"other\"\n\"311111\";\"Iskanderun\";\"other\"\n\"311111\";\"Iskenderon\";\"other\"\n\"311111\";\"Myriandrus\";\"other\"\n\"311111\";\"askndrwn\";\"other\"\n\"311111\";\"İskenderon\";\"other\"\n\"311111\";\"Искендерун\";\"other\"\n\"311111\";\"اسکندرون\";\"other\"\n\"311191\";\"İşgören\";\"main\"\n\"311191\";\"Isgoren\";\"ascii\"\n\"311191\";\"Kavsan\";\"other\"\n\"311193\";\"İscehisar\";\"main\"\n\"311193\";\"Iscehisar\";\"ascii\"\n\"311264\";\"İnönü\";\"main\"\n\"311264\";\"Inonu\";\"ascii\"\n\"311264\";\"Inonuciftligi\";\"other\"\n\"311264\";\"İnönüçiftliği\";\"other\"\n\"311314\";\"İncirliova\";\"main\"\n\"311314\";\"Incirliova\";\"ascii\"\n\"311314\";\"Karahisar\";\"other\"\n\"311314\";\"Karapinar\";\"other\"\n\"311314\";\"Karapınar\";\"other\"\n\"311433\";\"İmranlı\";\"main\"\n\"311433\";\"Imranli\";\"ascii\"\n\"311433\";\"Hamidabad\";\"other\"\n\"311433\";\"Hamidabat\";\"other\"\n\"311433\";\"Hamilabat\";\"other\"\n\"311433\";\"Hamitabad\";\"other\"\n\"311433\";\"Hamitabat\";\"other\"\n\"311433\";\"Imraniye\";\"other\"\n\"311433\";\"Umraniye\";\"other\"\n\"311433\";\"İmraniye\";\"other\"\n\"311453\";\"İmamoğlu\";\"main\"\n\"311453\";\"Imamoglu\";\"ascii\"\n\"311533\";\"Ilıca\";\"main\"\n\"311533\";\"Ilica\";\"ascii\"\n\"311533\";\"Ilici\";\"other\"\n\"311547\";\"İliç\";\"main\"\n\"311547\";\"Ilic\";\"ascii\"\n\"311547\";\"Pusadi\";\"other\"\n\"311547\";\"Puşadı\";\"other\"\n\"311553\";\"Ilgın\";\"main\"\n\"311553\";\"Ilgin\";\"ascii\"\n\"311553\";\"Tyriaeum\";\"other\"\n\"311603\";\"İkizce\";\"main\"\n\"311603\";\"Ikizce\";\"ascii\"\n\"311603\";\"Ekizce\";\"other\"\n\"311603\";\"Ikizdzhe\";\"other\"\n\"311628\";\"İkiköprü\";\"main\"\n\"311628\";\"Ikikopru\";\"ascii\"\n\"311628\";\"Asagi Aviski\";\"other\"\n\"311628\";\"Aviski\";\"other\"\n\"311628\";\"Aşağı Aviski\";\"other\"\n\"311645\";\"İhsaniye\";\"main\"\n\"311645\";\"Ihsaniye\";\"ascii\"\n\"311665\";\"Iğdır\";\"main\"\n\"311665\";\"Igdir\";\"ascii\"\n\"311665\";\"Idir\";\"other\"\n\"311665\";\"Игдир\";\"other\"\n\"311704\";\"İdil\";\"main\"\n\"311704\";\"Idil\";\"ascii\"\n\"311704\";\"Hazak\";\"other\"\n\"311704\";\"Hezek\";\"other\"\n\"311704\";\"Hezex\";\"other\"\n\"311704\";\"Idil'\";\"other\"\n\"311704\";\"Khazak\";\"other\"\n\"311704\";\"Идиль\";\"other\"\n\"311708\";\"İçören\";\"main\"\n\"311708\";\"Icoren\";\"ascii\"\n\"311708\";\"Teffi\";\"other\"\n\"311777\";\"Hüyük\";\"main\"\n\"311777\";\"Huyuk\";\"ascii\"\n\"311777\";\"Hoyuk\";\"other\"\n\"311777\";\"Hoyuk Koyu\";\"other\"\n\"311777\";\"Höyük\";\"other\"\n\"311777\";\"Höyük Köyü\";\"other\"\n\"311869\";\"Hozat\";\"main\"\n\"311869\";\"Dersim\";\"other\"\n\"311962\";\"Honaz\";\"main\"\n\"311994\";\"Hocalar\";\"main\"\n\"311998\";\"Hocaköy\";\"main\"\n\"311998\";\"Hocakoy\";\"ascii\"\n\"311998\";\"Abdulimam\";\"other\"\n\"311998\";\"Abdülimam\";\"other\"\n\"311998\";\"Gundukoru\";\"other\"\n\"311998\";\"Gyundyukoru\";\"other\"\n\"311998\";\"Gündükoru\";\"other\"\n\"312024\";\"Hizan\";\"main\"\n\"312073\";\"Hisarköy\";\"main\"\n\"312073\";\"Hisarkoy\";\"ascii\"\n\"312073\";\"Hasar\";\"other\"\n\"312073\";\"Hisar\";\"other\"\n\"312073\";\"Khisar\";\"other\"\n\"312114\";\"Hınıs\";\"main\"\n\"312114\";\"Hinis\";\"ascii\"\n\"312134\";\"Hilvan\";\"main\"\n\"312134\";\"Karacorun\";\"other\"\n\"312134\";\"Karacurum\";\"other\"\n\"312134\";\"Karacurun\";\"other\"\n\"312134\";\"Karaçürun\";\"other\"\n\"312143\";\"Hilâl\";\"main\"\n\"312143\";\"Hilal\";\"ascii\"\n\"312143\";\"Helal\";\"other\"\n\"312143\";\"Khelal\";\"other\"\n\"312245\";\"Hekimhan\";\"main\"\n\"312253\";\"Hazro\";\"main\"\n\"312289\";\"Haymana\";\"main\"\n\"312289\";\"Hamam\";\"other\"\n\"312289\";\"Sivrihamam\";\"other\"\n\"312289\";\"Yaban\";\"other\"\n\"312355\";\"Havran\";\"main\"\n\"312405\";\"Hassa\";\"main\"\n\"312406\";\"Alacakaya\";\"main\"\n\"312406\";\"Hasarut\";\"other\"\n\"312406\";\"Hasrut\";\"other\"\n\"312416\";\"Hasköy\";\"main\"\n\"312416\";\"Haskoy\";\"ascii\"\n\"312479\";\"Hasankeyf\";\"main\"\n\"312479\";\"Hasankeyif\";\"other\"\n\"312479\";\"Khasankeye\";\"other\"\n\"312504\";\"Hasanbeyli\";\"main\"\n\"312531\";\"Altınbaşak\";\"main\"\n\"312531\";\"Altinbasak\";\"ascii\"\n\"312531\";\"Altunbasak\";\"other\"\n\"312531\";\"Altunbaşak\";\"other\"\n\"312531\";\"Altynbashak\";\"other\"\n\"312531\";\"Charan\";\"other\"\n\"312531\";\"Haran\";\"other\"\n\"312531\";\"Harran\";\"other\"\n\"312531\";\"Kharran\";\"other\"\n\"312663\";\"Hani\";\"main\"\n\"312699\";\"Han\";\"main\"\n\"312731\";\"Hamur\";\"main\"\n\"312817\";\"Halkapınar\";\"main\"\n\"312817\";\"Halkapinar\";\"ascii\"\n\"312817\";\"Zanapa\";\"other\"\n\"312817\";\"Zanape\";\"other\"\n\"312862\";\"Halfeti\";\"main\"\n\"312894\";\"Hafik\";\"main\"\n\"312894\";\"Kochisar\";\"other\"\n\"312894\";\"Koçhisar\";\"other\"\n\"312899\";\"Hadım\";\"main\"\n\"312899\";\"Hadim\";\"ascii\"\n\"312899\";\"Khadim\";\"other\"\n\"312899\";\"Yukari Hadim\";\"other\"\n\"312899\";\"Yukarı Hadım\";\"other\"\n\"312899\";\"Хадим\";\"other\"\n\"313013\";\"Hacılar\";\"main\"\n\"313013\";\"Hacilar\";\"ascii\"\n\"313110\";\"Hacıbektaş\";\"main\"\n\"313110\";\"Hacibektas\";\"ascii\"\n\"313110\";\"Karabuyuk\";\"other\"\n\"313110\";\"Karabüyük\";\"other\"\n\"313110\";\"Karahuyuk\";\"other\"\n\"313110\";\"Karahüyük\";\"other\"\n\"313199\";\"Güzelyurt\";\"main\"\n\"313199\";\"Guzelyurt\";\"ascii\"\n\"313199\";\"Gelveri\";\"other\"\n\"313314\";\"Gürün\";\"main\"\n\"313314\";\"Gurun\";\"ascii\"\n\"313314\";\"Inonu\";\"other\"\n\"313314\";\"İnönü\";\"other\"\n\"313328\";\"Gürpınar\";\"main\"\n\"313328\";\"Gurpinar\";\"ascii\"\n\"313328\";\"Kigzi\";\"other\"\n\"313328\";\"Kığzı\";\"other\"\n\"313331\";\"Güroymak\";\"main\"\n\"313331\";\"Guroymak\";\"ascii\"\n\"313331\";\"Cukur\";\"other\"\n\"313331\";\"Goroymak\";\"other\"\n\"313331\";\"Göroymak\";\"other\"\n\"313331\";\"Norsin\";\"other\"\n\"313331\";\"Norşin\";\"other\"\n\"313331\";\"Çukur\";\"other\"\n\"313500\";\"Güneren\";\"main\"\n\"313500\";\"Guneren\";\"ascii\"\n\"313500\";\"Sarkimugayre\";\"other\"\n\"313500\";\"Sharkymugayre\";\"other\"\n\"313500\";\"Şarkımugayre\";\"other\"\n\"313526\";\"Gündoğmuş\";\"main\"\n\"313526\";\"Gundogmus\";\"ascii\"\n\"313526\";\"Eksere\";\"other\"\n\"313635\";\"Gülyazı\";\"main\"\n\"313635\";\"Gulyazi\";\"ascii\"\n\"313635\";\"Becu\";\"other\"\n\"313635\";\"Becuh\";\"other\"\n\"313635\";\"Becü\";\"other\"\n\"313635\";\"Bedzhukh\";\"other\"\n\"313635\";\"Bicer\";\"other\"\n\"313635\";\"Biçer\";\"other\"\n\"313640\";\"Gülveren\";\"main\"\n\"313640\";\"Gulveren\";\"ascii\"\n\"313640\";\"Bahvar\";\"other\"\n\"313640\";\"Bakhvar\";\"other\"\n\"313658\";\"Gülşehir\";\"main\"\n\"313658\";\"Gulsehir\";\"ascii\"\n\"313658\";\"Arapsun\";\"other\"\n\"313658\";\"Arebsun\";\"other\"\n\"313669\";\"Gülnar\";\"main\"\n\"313669\";\"Gulnar\";\"ascii\"\n\"313669\";\"Anaypazari\";\"other\"\n\"313669\";\"Anaypazarı\";\"other\"\n\"313713\";\"Güllü\";\"main\"\n\"313713\";\"Guellue\";\"ascii\"\n\"313742\";\"Güleçler\";\"main\"\n\"313742\";\"Gulecler\";\"ascii\"\n\"313742\";\"Hanuk\";\"other\"\n\"313742\";\"Hanük\";\"other\"\n\"313742\";\"Hunuk\";\"other\"\n\"313742\";\"Hünük\";\"other\"\n\"313742\";\"Khanyuk\";\"other\"\n\"313794\";\"Güçlükonak\";\"main\"\n\"313794\";\"Guclukonak\";\"ascii\"\n\"313794\";\"Baraniferho\";\"other\"\n\"313794\";\"Basan\";\"other\"\n\"313825\";\"Gözpınar\";\"main\"\n\"313825\";\"Gozpinar\";\"ascii\"\n\"313825\";\"Hishis\";\"other\"\n\"313825\";\"Hıshıs\";\"other\"\n\"313825\";\"Khiskhis\";\"other\"\n\"313922\";\"Görümlü\";\"main\"\n\"313922\";\"Gorumlu\";\"ascii\"\n\"313922\";\"Besbin\";\"other\"\n\"313922\";\"Bespin\";\"other\"\n\"313922\";\"Bisbin\";\"other\"\n\"313947\";\"Göreme\";\"main\"\n\"313947\";\"Goereme\";\"ascii\"\n\"313947\";\"Goereme Tarihi Milli Parki\";\"other\"\n\"313947\";\"Goreme\";\"other\"\n\"313947\";\"Göreme Tarihi Milli Parkı\";\"other\"\n\"313947\";\"Parc national de Goereme et sites rupestres de Cappadoce\";\"other\"\n\"313947\";\"Parc national de Göreme et sites rupestres de Cappadoce\";\"other\"\n\"313947\";\"Гореме\";\"other\"\n\"313960\";\"Gördes\";\"main\"\n\"313960\";\"Gordes\";\"ascii\"\n\"313973\";\"Gönen\";\"main\"\n\"313973\";\"Gonen\";\"ascii\"\n\"313973\";\"Гонен\";\"other\"\n\"313995\";\"Armutova\";\"main\"\n\"313995\";\"Altinova\";\"other\"\n\"313995\";\"Armudova\";\"other\"\n\"313995\";\"Emrutabat\";\"other\"\n\"313995\";\"Gomec\";\"other\"\n\"313995\";\"Gume\";\"other\"\n\"313995\";\"Gömeç\";\"other\"\n\"313995\";\"Güme\";\"other\"\n\"313995\";\"Yayakoy\";\"other\"\n\"313995\";\"Yayaköy\";\"other\"\n\"314038\";\"Gölmarmara\";\"main\"\n\"314038\";\"Golmarmara\";\"ascii\"\n\"314038\";\"Marmara\";\"other\"\n\"314072\";\"Gölhisar\";\"main\"\n\"314072\";\"Golhisar\";\"ascii\"\n\"314072\";\"Horzom\";\"other\"\n\"314072\";\"Horzum\";\"other\"\n\"314136\";\"Gölbaşı\";\"main\"\n\"314136\";\"Golbasi\";\"ascii\"\n\"314188\";\"Göksun\";\"main\"\n\"314188\";\"Goksun\";\"ascii\"\n\"314324\";\"Gökçekoru\";\"main\"\n\"314324\";\"Gokcekoru\";\"ascii\"\n\"314324\";\"Kerafon\";\"other\"\n\"314324\";\"Kerefan\";\"other\"\n\"314350\";\"Gökçebağ\";\"main\"\n\"314350\";\"Gokcebag\";\"ascii\"\n\"314350\";\"Civankan\";\"other\"\n\"314350\";\"Civinikan\";\"other\"\n\"314350\";\"Civinikân\";\"other\"\n\"314350\";\"Dzhivinikyan\";\"other\"\n\"314364\";\"Gökçe\";\"main\"\n\"314364\";\"Gokce\";\"ascii\"\n\"314364\";\"Selah\";\"other\"\n\"314364\";\"Selakh\";\"other\"\n\"314364\";\"Selâh\";\"other\"\n\"314373\";\"Gökbudak\";\"main\"\n\"314373\";\"Gokbudak\";\"ascii\"\n\"314373\";\"Sanuh\";\"other\"\n\"314557\";\"Gevaş\";\"main\"\n\"314557\";\"Gevas\";\"ascii\"\n\"314557\";\"Vastan\";\"other\"\n\"314557\";\"Vaston\";\"other\"\n\"314573\";\"Germencik\";\"main\"\n\"314573\";\"Germecik\";\"other\"\n\"314573\";\"Germecık\";\"other\"\n\"314573\";\"Igneabat\";\"other\"\n\"314573\";\"Igneada\";\"other\"\n\"314573\";\"Inabat\";\"other\"\n\"314573\";\"Ineabat\";\"other\"\n\"314573\";\"Mermencik\";\"other\"\n\"314573\";\"İnabat\";\"other\"\n\"314573\";\"İğneabat\";\"other\"\n\"314573\";\"İğneada\";\"other\"\n\"314588\";\"Gerger\";\"main\"\n\"314608\";\"Gercüş\";\"main\"\n\"314608\";\"Gercus\";\"ascii\"\n\"314608\";\"Gerdzhyush\";\"other\"\n\"314648\";\"Genç\";\"main\"\n\"314648\";\"Genc\";\"ascii\"\n\"314648\";\"Darahini\";\"other\"\n\"314648\";\"Genk\";\"other\"\n\"314648\";\"Генк\";\"other\"\n\"314665\";\"Gemerek\";\"main\"\n\"314677\";\"Gelinkaya\";\"main\"\n\"314677\";\"Keferhavar\";\"other\"\n\"314677\";\"Keferhavvar\";\"other\"\n\"314677\";\"Keferhuvar\";\"other\"\n\"314677\";\"Keferhuvvar\";\"other\"\n\"314677\";\"Keferkhavvar\";\"other\"\n\"314698\";\"Gelendost\";\"main\"\n\"314698\";\"Gelendos\";\"other\"\n\"314716\";\"Gediz\";\"main\"\n\"314716\";\"Cadi\";\"other\"\n\"314716\";\"Gedis\";\"other\"\n\"314716\";\"Гедиз\";\"other\"\n\"314812\";\"Gazipaşa\";\"main\"\n\"314812\";\"Gazipasa\";\"ascii\"\n\"314812\";\"Pazarci\";\"other\"\n\"314812\";\"Pazarcik\";\"other\"\n\"314812\";\"Pazarcı\";\"other\"\n\"314812\";\"Pazarcık\";\"other\"\n\"314812\";\"Pazarli\";\"other\"\n\"314812\";\"Pazarlı\";\"other\"\n\"314812\";\"Selinti\";\"other\"\n\"314812\";\"Silinti\";\"other\"\n\"314812\";\"Trajanopolis\";\"other\"\n\"314830\";\"Gaziantep\";\"main\"\n\"314830\";\"Aintab\";\"other\"\n\"314830\";\"Antep\";\"other\"\n\"314830\";\"Ayintap\";\"other\"\n\"314830\";\"Ayıntap\";\"other\"\n\"314830\";\"Dilok\";\"other\"\n\"314830\";\"Dîlok\";\"other\"\n\"314830\";\"Gazi-Ayintap\";\"other\"\n\"314830\";\"gazu~iantepu\";\"other\"\n\"314830\";\"Газиантеп\";\"other\"\n\"314830\";\"غازی عینتاب\";\"other\"\n\"314830\";\"ガズィアンテプ\";\"other\"\n\"314903\";\"Foça\";\"main\"\n\"314903\";\"Foca\";\"ascii\"\n\"314903\";\"Eski Foca\";\"other\"\n\"314903\";\"Eski Foja\";\"other\"\n\"314903\";\"Eski Foka\";\"other\"\n\"314903\";\"Eski Foça\";\"other\"\n\"314903\";\"Focha\";\"other\"\n\"314903\";\"Foja\";\"other\"\n\"314903\";\"Fokia\";\"other\"\n\"314903\";\"Fouges\";\"other\"\n\"314903\";\"Foujes\";\"other\"\n\"314903\";\"Karaca Foka\";\"other\"\n\"314903\";\"Karafoca\";\"other\"\n\"314903\";\"Karafoça\";\"other\"\n\"314903\";\"Palaies Phokes\";\"other\"\n\"314903\";\"Phocaea\";\"other\"\n\"314923\";\"Finike\";\"main\"\n\"314923\";\"Phoenicus\";\"other\"\n\"314923\";\"fnkh\";\"other\"\n\"314923\";\"فنکه\";\"other\"\n\"314967\";\"Fethiye\";\"main\"\n\"314967\";\"Fethieh\";\"other\"\n\"314967\";\"Fethy\";\"other\"\n\"314967\";\"Fetiye\";\"other\"\n\"314967\";\"Fetkhie\";\"other\"\n\"314967\";\"Makri\";\"other\"\n\"314967\";\"Makry\";\"other\"\n\"314967\";\"Telmessus\";\"other\"\n\"314967\";\"Фетхие\";\"other\"\n\"314996\";\"Felahiye\";\"main\"\n\"314996\";\"Fellahiye\";\"other\"\n\"314996\";\"Rumdigin\";\"other\"\n\"314996\";\"Rumdiğin\";\"other\"\n\"315000\";\"Feke\";\"main\"\n\"315000\";\"Asmaca\";\"other\"\n\"315061\";\"Ezine\";\"main\"\n\"315081\";\"Eymirli\";\"main\"\n\"315081\";\"Tib'yat\";\"other\"\n\"315081\";\"Tibyasa\";\"other\"\n\"315081\";\"Tibyat\";\"other\"\n\"315081\";\"Tib’yat\";\"other\"\n\"315081\";\"Tipyat\";\"other\"\n\"315132\";\"Evciler\";\"main\"\n\"315183\";\"Eşme\";\"main\"\n\"315183\";\"Esme\";\"ascii\"\n\"315183\";\"ashmh\";\"other\"\n\"315183\";\"اشمه\";\"other\"\n\"315185\";\"Eşme\";\"main\"\n\"315185\";\"Esme\";\"ascii\"\n\"315185\";\"Mezaakantar\";\"other\"\n\"315185\";\"Mezrakantar\";\"other\"\n\"315185\";\"Mezreaikantar\";\"other\"\n\"315185\";\"Mezreaikanter\";\"other\"\n\"315185\";\"Mezreakantar\";\"other\"\n\"315202\";\"Eskişehir\";\"main\"\n\"315202\";\"Eskisehir\";\"ascii\"\n\"315202\";\"Dorylaeum\";\"other\"\n\"315202\";\"Doryläum\";\"other\"\n\"315202\";\"Ehskishekhir\";\"other\"\n\"315202\";\"Eski Shahr\";\"other\"\n\"315202\";\"Eski Shehir\";\"other\"\n\"315202\";\"Eski shehr\";\"other\"\n\"315202\";\"Eski-chehir\";\"other\"\n\"315202\";\"Eski-chéhir\";\"other\"\n\"315202\";\"Eskischehir\";\"other\"\n\"315202\";\"Эскишехир\";\"other\"\n\"315368\";\"Erzurum\";\"main\"\n\"315368\";\"Ard-ar-Rum\";\"other\"\n\"315368\";\"Arzan-ar-Rum\";\"other\"\n\"315368\";\"Carana\";\"other\"\n\"315368\";\"Ehrzurum\";\"other\"\n\"315368\";\"Erserum\";\"other\"\n\"315368\";\"Erzeroum\";\"other\"\n\"315368\";\"Erzerum\";\"other\"\n\"315368\";\"Erzirom\";\"other\"\n\"315368\";\"Erzirum\";\"other\"\n\"315368\";\"Erzéroum\";\"other\"\n\"315368\";\"Kalikala\";\"other\"\n\"315368\";\"Karin\";\"other\"\n\"315368\";\"Theodosiopolis\";\"other\"\n\"315368\";\"Эрзурум\";\"other\"\n\"315373\";\"Erzincan\";\"main\"\n\"315373\";\"Arzanjan\";\"other\"\n\"315373\";\"Aziris\";\"other\"\n\"315373\";\"Ehrzindzhan\";\"other\"\n\"315373\";\"Ersindjan\";\"other\"\n\"315373\";\"Ersingan\";\"other\"\n\"315373\";\"Ersingjan\";\"other\"\n\"315373\";\"Erzincam\";\"other\"\n\"315373\";\"Erzindjan\";\"other\"\n\"315373\";\"Erzingan\";\"other\"\n\"315373\";\"Erzinjan\";\"other\"\n\"315373\";\"Yerznka\";\"other\"\n\"315373\";\"arznjan\";\"other\"\n\"315373\";\"eruzu~injan\";\"other\"\n\"315373\";\"Эрзинджан\";\"other\"\n\"315373\";\"ارزنجان\";\"other\"\n\"315373\";\"エルズィンジャン\";\"other\"\n\"315378\";\"Eruh\";\"main\"\n\"315378\";\"Dih\";\"other\"\n\"315378\";\"Erukh\";\"other\"\n\"315378\";\"Irs\";\"other\"\n\"315378\";\"Rekh\";\"other\"\n\"315378\";\"İrs\";\"other\"\n\"315401\";\"Ermenek\";\"main\"\n\"315401\";\"Ermenak\";\"other\"\n\"315401\";\"Germanicopolis\";\"other\"\n\"315408\";\"Erköklü\";\"main\"\n\"315408\";\"Erkoklu\";\"ascii\"\n\"315408\";\"Irmi\";\"other\"\n\"315408\";\"İrmi\";\"other\"\n\"315468\";\"Ergani\";\"main\"\n\"315468\";\"Arghana\";\"other\"\n\"315468\";\"Ehgrani\";\"other\"\n\"315468\";\"Erganiosmaniye\";\"other\"\n\"315468\";\"Osmaniye\";\"other\"\n\"315468\";\"Эграни\";\"other\"\n\"315498\";\"Ereğli\";\"main\"\n\"315498\";\"Eregli\";\"ascii\"\n\"315498\";\"Cybistra\";\"other\"\n\"315498\";\"Ehregli\";\"other\"\n\"315498\";\"Erakleia\";\"other\"\n\"315498\";\"Heraclea\";\"other\"\n\"315498\";\"Heraclea Minoa\";\"other\"\n\"315498\";\"Heraclee\";\"other\"\n\"315498\";\"Heracleia Minoa\";\"other\"\n\"315498\";\"Héraclée\";\"other\"\n\"315498\";\"Konyaereglisi\";\"other\"\n\"315498\";\"Konyaereğlisi\";\"other\"\n\"315498\";\"Ηράκλεια\";\"other\"\n\"315498\";\"Эрегли\";\"other\"\n\"315515\";\"Erdemli\";\"main\"\n\"315530\";\"Erciş\";\"main\"\n\"315530\";\"Ercis\";\"ascii\"\n\"315530\";\"Arcis\";\"other\"\n\"315617\";\"Emirgazi\";\"main\"\n\"315621\";\"Emirdağ\";\"main\"\n\"315621\";\"Emirdag\";\"ascii\"\n\"315621\";\"Aziziye\";\"other\"\n\"315639\";\"Emet\";\"main\"\n\"315639\";\"Ehmet\";\"other\"\n\"315639\";\"Эмет\";\"other\"\n\"315697\";\"Elmalı\";\"main\"\n\"315697\";\"Elmali\";\"ascii\"\n\"315720\";\"Elmadag\";\"main\"\n\"315720\";\"Asiyozgat\";\"other\"\n\"315720\";\"Asıyozgat\";\"other\"\n\"315720\";\"Elmadagi\";\"other\"\n\"315720\";\"Elmadağı\";\"other\"\n\"315720\";\"Kucukyozgat\";\"other\"\n\"315720\";\"Küçükyozgat\";\"other\"\n\"315758\";\"Eleşkirt\";\"main\"\n\"315758\";\"Eleskirt\";\"ascii\"\n\"315758\";\"Toprakkale\";\"other\"\n\"315758\";\"Zeydekan\";\"other\"\n\"315758\";\"Zeydikan\";\"other\"\n\"315758\";\"Zeydikân\";\"other\"\n\"315758\";\"Zidikan\";\"other\"\n\"315758\";\"Zidikân\";\"other\"\n\"315795\";\"Elbistan\";\"main\"\n\"315795\";\"Ehl'bistan\";\"other\"\n\"315795\";\"albstan\";\"other\"\n\"315795\";\"Эльбистан\";\"other\"\n\"315795\";\"البستان\";\"other\"\n\"315800\";\"Elbeyli\";\"main\"\n\"315800\";\"Alimantar\";\"other\"\n\"315808\";\"Elazığ\";\"main\"\n\"315808\";\"Elazig\";\"ascii\"\n\"315808\";\"Elaziz\";\"other\"\n\"315808\";\"Elaziğ\";\"other\"\n\"315808\";\"Eljaz\\\"g\";\"other\"\n\"315808\";\"Elâzız\";\"other\"\n\"315808\";\"Mezra\";\"other\"\n\"315808\";\"Mezreh\";\"other\"\n\"315808\";\"Елязъг\";\"other\"\n\"315835\";\"Ekinözü\";\"main\"\n\"315835\";\"Ekinozu\";\"ascii\"\n\"315835\";\"Cela\";\"other\"\n\"315835\";\"Celaki\";\"other\"\n\"315835\";\"Celeyke\";\"other\"\n\"315905\";\"Eğirdir\";\"main\"\n\"315905\";\"Egirdir\";\"ascii\"\n\"315905\";\"Egridir\";\"other\"\n\"315905\";\"Prostanna\";\"other\"\n\"315953\";\"Eğil\";\"main\"\n\"315953\";\"Egil\";\"ascii\"\n\"315985\";\"Edremit\";\"main\"\n\"315985\";\"Adramyti\";\"other\"\n\"315985\";\"Adramyttium\";\"other\"\n\"315985\";\"Edremid\";\"other\"\n\"315985\";\"Ehdremit\";\"other\"\n\"315985\";\"Эдремит\";\"other\"\n\"316028\";\"Düzova\";\"main\"\n\"316028\";\"Duzova\";\"ascii\"\n\"316028\";\"Hoser\";\"other\"\n\"316028\";\"Huser\";\"other\"\n\"316028\";\"Höser\";\"other\"\n\"316028\";\"Khuser\";\"other\"\n\"316096\";\"Duruca\";\"main\"\n\"316096\";\"Kertuvin\";\"other\"\n\"316096\";\"Kertyuvin\";\"other\"\n\"316096\";\"Kertüvin\";\"other\"\n\"316102\";\"Dursunbey\";\"main\"\n\"316102\";\"Balat\";\"other\"\n\"316165\";\"Dumlupınar\";\"main\"\n\"316165\";\"Dumlupinar\";\"ascii\"\n\"316270\";\"Dorumali\";\"main\"\n\"316284\";\"Dörtyol\";\"main\"\n\"316284\";\"Dortyol\";\"ascii\"\n\"316330\";\"Domaniç Kozluca\";\"main\"\n\"316330\";\"Domanic Kozluca\";\"ascii\"\n\"316330\";\"Domanic\";\"other\"\n\"316330\";\"Domaniç\";\"other\"\n\"316330\";\"Hisar\";\"other\"\n\"316330\";\"Hisarkoy\";\"other\"\n\"316330\";\"Hisarköy\";\"other\"\n\"316411\";\"Doğubayazıt\";\"main\"\n\"316411\";\"Dogubayazit\";\"ascii\"\n\"316411\";\"Baiazid\";\"other\"\n\"316411\";\"Bajaset\";\"other\"\n\"316411\";\"Bajasid\";\"other\"\n\"316411\";\"Bajesid\";\"other\"\n\"316411\";\"Bayazid\";\"other\"\n\"316411\";\"Bayazit\";\"other\"\n\"316411\";\"Bayezid\";\"other\"\n\"316411\";\"Bazid\";\"other\"\n\"316411\";\"Bazîd\";\"other\"\n\"316411\";\"Baīazid\";\"other\"\n\"316411\";\"Beyazit\";\"other\"\n\"316411\";\"Beyazıt\";\"other\"\n\"316411\";\"Beyzit\";\"other\"\n\"316411\";\"Beyzıt\";\"other\"\n\"316411\";\"Dogu Beyazidi\";\"other\"\n\"316411\";\"Dogubajazit\";\"other\"\n\"316411\";\"Dogubayazid\";\"other\"\n\"316411\";\"Dogubayazidi\";\"other\"\n\"316411\";\"Dogubeyazit\";\"other\"\n\"316411\";\"Doğu Beyazidi\";\"other\"\n\"316411\";\"Doğubayazidi\";\"other\"\n\"316411\";\"Doğubayazıd\";\"other\"\n\"316411\";\"Doğubeyazıt\";\"other\"\n\"316411\";\"Karakose\";\"other\"\n\"316411\";\"Karaköse\";\"other\"\n\"316411\";\"dghw bayzyd\";\"other\"\n\"316411\";\"Догубаязит\";\"other\"\n\"316411\";\"دغو بایزید\";\"other\"\n\"316431\";\"Doğanyol\";\"main\"\n\"316431\";\"Doganyol\";\"ascii\"\n\"316431\";\"Keferdiz\";\"other\"\n\"316431\";\"Siro\";\"other\"\n\"316431\";\"Şiro\";\"other\"\n\"316440\";\"Doğanşehir\";\"main\"\n\"316440\";\"Dogansehir\";\"ascii\"\n\"316440\";\"Muhacir\";\"other\"\n\"316440\";\"Viransehir\";\"other\"\n\"316440\";\"Viranşehir\";\"other\"\n\"316466\";\"Doğanköy\";\"main\"\n\"316466\";\"Dogankoy\";\"ascii\"\n\"316466\";\"Dogan\";\"other\"\n\"316466\";\"Doğan\";\"other\"\n\"316466\";\"Osyan\";\"other\"\n\"316473\";\"Doğankavak\";\"main\"\n\"316473\";\"Dogankavak\";\"ascii\"\n\"316473\";\"Hadhatih\";\"other\"\n\"316473\";\"Hadhatıh\";\"other\"\n\"316473\";\"Hathatik\";\"other\"\n\"316473\";\"Khatkhatik\";\"other\"\n\"316475\";\"Doğanhisar\";\"main\"\n\"316475\";\"Doganhisar\";\"ascii\"\n\"316497\";\"Doğanca\";\"main\"\n\"316497\";\"Doganca\";\"ascii\"\n\"316497\";\"Dogandzha\";\"other\"\n\"316497\";\"Dogankoy\";\"other\"\n\"316497\";\"Doğanköy\";\"other\"\n\"316497\";\"Harhur\";\"other\"\n\"316497\";\"Kezi\";\"other\"\n\"316541\";\"Diyarbakır\";\"main\"\n\"316541\";\"Diyarbakir\";\"ascii\"\n\"316541\";\"Amed\";\"other\"\n\"316541\";\"Amida\";\"other\"\n\"316541\";\"Diarbakir\";\"other\"\n\"316541\";\"Diarbekir\";\"other\"\n\"316541\";\"Diarbekr\";\"other\"\n\"316541\";\"Diari-Bekir\";\"other\"\n\"316541\";\"Diari-Békir\";\"other\"\n\"316541\";\"Dijarbakiro\";\"other\"\n\"316541\";\"Dijarbakyr\";\"other\"\n\"316541\";\"Dikranakerd\";\"other\"\n\"316541\";\"Diyarbekir\";\"other\"\n\"316541\";\"Diyaribakir\";\"other\"\n\"316541\";\"Diyaribekir\";\"other\"\n\"316541\";\"Diyarıbakır\";\"other\"\n\"316541\";\"Diyarıbekir\";\"other\"\n\"316541\";\"diyarubakuru\";\"other\"\n\"316541\";\"dyar bkr\";\"other\"\n\"316541\";\"dyarbkr\";\"other\"\n\"316541\";\"Диарбекир\";\"other\"\n\"316541\";\"Диярбакыр\";\"other\"\n\"316541\";\"דיארבקיר\";\"other\"\n\"316541\";\"ديار بكر\";\"other\"\n\"316541\";\"دیاربکر\";\"other\"\n\"316541\";\"ディヤルバクル\";\"other\"\n\"316542\";\"Diyadin\";\"main\"\n\"316542\";\"Didayin\";\"other\"\n\"316544\";\"Divriği\";\"main\"\n\"316544\";\"Divrigi\";\"ascii\"\n\"316544\";\"Aphrike\";\"other\"\n\"316544\";\"Difrike\";\"other\"\n\"316544\";\"Divirgi\";\"other\"\n\"316544\";\"Divrik\";\"other\"\n\"316544\";\"Divrık\";\"other\"\n\"316544\";\"Tephrike\";\"other\"\n\"316544\";\"dywryky\";\"other\"\n\"316544\";\"دیوریکی\";\"other\"\n\"316634\";\"Dinar\";\"main\"\n\"316634\";\"Apamea Cibotus\";\"other\"\n\"316634\";\"Celaenae\";\"other\"\n\"316634\";\"Dineir\";\"other\"\n\"316634\";\"Geyiklar\";\"other\"\n\"316634\";\"Динар\";\"other\"\n\"316726\";\"Dikili\";\"main\"\n\"316726\";\"Attalia\";\"other\"\n\"316726\";\"Dikeli\";\"other\"\n\"316746\";\"Dicle\";\"main\"\n\"316748\";\"Dicle\";\"main\"\n\"316748\";\"Kocapinar\";\"other\"\n\"316748\";\"Kocapınar\";\"other\"\n\"316748\";\"Omerin\";\"other\"\n\"316748\";\"Ömerin\";\"other\"\n\"316795\";\"Develi\";\"main\"\n\"316795\";\"Everek\";\"other\"\n\"316795\";\"Evrek\";\"other\"\n\"316877\";\"Derinkuyu\";\"main\"\n\"316877\";\"Melegobu\";\"other\"\n\"316877\";\"Melegubu\";\"other\"\n\"316877\";\"Melegöbü\";\"other\"\n\"316877\";\"Melegübü\";\"other\"\n\"316899\";\"Derik\";\"main\"\n\"316909\";\"Dereyanı\";\"main\"\n\"316909\";\"Dereyani\";\"ascii\"\n\"316909\";\"Shuri\";\"other\"\n\"316909\";\"Suri\";\"other\"\n\"316909\";\"Şuri\";\"other\"\n\"317049\";\"Derebucak\";\"main\"\n\"317095\";\"Derbent\";\"main\"\n\"317109\";\"Denizli\";\"main\"\n\"317109\";\"Denisli\";\"other\"\n\"317109\";\"Denislu\";\"other\"\n\"317109\";\"Denislü\";\"other\"\n\"317109\";\"Denizlu\";\"other\"\n\"317109\";\"Денизли\";\"other\"\n\"317133\";\"Demiryol\";\"main\"\n\"317133\";\"Til'merch\";\"other\"\n\"317133\";\"Tilmerc\";\"other\"\n\"317133\";\"Tilmere\";\"other\"\n\"317133\";\"Tilmerç\";\"other\"\n\"317133\";\"Til’merch\";\"other\"\n\"317241\";\"Demirci\";\"main\"\n\"317332\";\"Delice\";\"main\"\n\"317332\";\"Karabekir\";\"other\"\n\"317332\";\"Piran\";\"other\"\n\"317496\";\"Dazkırı\";\"main\"\n\"317496\";\"Dazkiri\";\"ascii\"\n\"317496\";\"Daskiri\";\"other\"\n\"317496\";\"Daskırı\";\"other\"\n\"317496\";\"Polatli\";\"other\"\n\"317496\";\"Polatlı\";\"other\"\n\"317496\";\"Pulatli\";\"other\"\n\"317496\";\"Tazkiri\";\"other\"\n\"317496\";\"Tazkırı\";\"other\"\n\"317543\";\"Datça\";\"main\"\n\"317543\";\"Datca\";\"ascii\"\n\"317543\";\"Resadiye\";\"other\"\n\"317543\";\"Reşadiye\";\"other\"\n\"317587\";\"Dargeçit\";\"main\"\n\"317587\";\"Dargecit\";\"ascii\"\n\"317587\";\"Dargechit\";\"other\"\n\"317587\";\"Deregecit\";\"other\"\n\"317587\";\"Deregeçit\";\"other\"\n\"317587\";\"Kerboran\";\"other\"\n\"317587\";\"Kerburan\";\"other\"\n\"317587\";\"Kerburun\";\"other\"\n\"317587\";\"Даргечит\";\"other\"\n\"317588\";\"Darende\";\"main\"\n\"317588\";\"Yarpus\";\"other\"\n\"317588\";\"Даренде\";\"other\"\n\"317681\";\"Dalyan\";\"main\"\n\"317681\";\"Dal'jan\";\"other\"\n\"317681\";\"Dalyankoy\";\"other\"\n\"317681\";\"Dalyanköy\";\"other\"\n\"317681\";\"Дальян\";\"other\"\n\"317762\";\"Dağdöşü\";\"main\"\n\"317762\";\"Dagdosu\";\"ascii\"\n\"317762\";\"Serhata\";\"other\"\n\"317762\";\"Serhatta\";\"other\"\n\"317762\";\"Serkhatta\";\"other\"\n\"317837\";\"Çüngüş\";\"main\"\n\"317837\";\"Cungus\";\"ascii\"\n\"317837\";\"Cunguc\";\"other\"\n\"317837\";\"Cunkus\";\"other\"\n\"317837\";\"Cüngüç\";\"other\"\n\"317837\";\"Çünküş\";\"other\"\n\"317844\";\"Çumra\";\"main\"\n\"317844\";\"Cumra\";\"ascii\"\n\"317851\";\"Cumaovası\";\"main\"\n\"317851\";\"Cumaovasi\";\"ascii\"\n\"317851\";\"Menderes\";\"other\"\n\"317851\";\"Мендерес\";\"other\"\n\"317953\";\"Çukurca\";\"main\"\n\"317953\";\"Cukurca\";\"ascii\"\n\"317953\";\"Cal\";\"other\"\n\"317953\";\"Cokurca\";\"other\"\n\"317953\";\"Çal\";\"other\"\n\"317953\";\"Çokurca\";\"other\"\n\"318137\";\"Hakkari\";\"main\"\n\"318137\";\"Colemerik\";\"other\"\n\"318137\";\"Hakari\";\"other\"\n\"318137\";\"Hakâri\";\"other\"\n\"318137\";\"Julamerk\";\"other\"\n\"318137\";\"Khakkari\";\"other\"\n\"318137\";\"Çölemerik\";\"other\"\n\"318137\";\"Хаккари\";\"other\"\n\"318253\";\"Cizre\";\"main\"\n\"318253\";\"Beit Zabde\";\"other\"\n\"318253\";\"Bezabde\";\"other\"\n\"318253\";\"Dzhizre\";\"other\"\n\"318253\";\"Jazirhe-a-ibn-a Omar\";\"other\"\n\"318253\";\"Jesiret ibn Omar\";\"other\"\n\"318253\";\"Jesıret ibn Omar\";\"other\"\n\"318253\";\"Джизре\";\"other\"\n\"318264\";\"Çivril\";\"main\"\n\"318264\";\"Civril\";\"ascii\"\n\"318372\";\"Çine\";\"main\"\n\"318372\";\"Cine\";\"ascii\"\n\"318372\";\"Hanakpinar\";\"other\"\n\"318372\";\"Hanakpınar\";\"other\"\n\"318396\";\"Çınaraltı\";\"main\"\n\"318396\";\"Cinaralti\";\"ascii\"\n\"318396\";\"Rissin\";\"other\"\n\"318404\";\"Çınar\";\"main\"\n\"318404\";\"Cinar\";\"ascii\"\n\"318404\";\"Akpinar\";\"other\"\n\"318404\";\"Akpınar\";\"other\"\n\"318404\";\"Hanakpinar\";\"other\"\n\"318404\";\"Hanakpınar\";\"other\"\n\"318404\";\"Hankpinar\";\"other\"\n\"318404\";\"Hankpınar\";\"other\"\n\"318506\";\"Cihanbeyli\";\"main\"\n\"318506\";\"Inevi\";\"other\"\n\"318506\";\"İnevi\";\"other\"\n\"318526\";\"Çığır\";\"main\"\n\"318526\";\"Cigir\";\"ascii\"\n\"318526\";\"Serkan\";\"other\"\n\"318567\";\"Çiftlikköy\";\"main\"\n\"318567\";\"Ciftlikkoy\";\"ascii\"\n\"318567\";\"Ciftlik\";\"other\"\n\"318567\";\"Ciftlikkoyu\";\"other\"\n\"318567\";\"Girikbedro\";\"other\"\n\"318567\";\"Çiftlik\";\"other\"\n\"318567\";\"Çiftlikköyü\";\"other\"\n\"318603\";\"Çifteler\";\"main\"\n\"318603\";\"Cifteler\";\"ascii\"\n\"318603\";\"Cifteler Kasabasi\";\"other\"\n\"318603\";\"Çifteler Kasabası\";\"other\"\n\"318668\";\"Ceylanpınar\";\"main\"\n\"318668\";\"Ceylanpinar\";\"ascii\"\n\"318668\";\"Cylanpinar\";\"other\"\n\"318668\";\"Dzheylanpynar\";\"other\"\n\"318668\";\"Raselain\";\"other\"\n\"318668\";\"Rass-el-Ain\";\"other\"\n\"318668\";\"Rass-el-Aïn\";\"other\"\n\"318668\";\"Resulayn\";\"other\"\n\"318668\";\"Resülayn\";\"other\"\n\"318675\";\"Ceyhan\";\"main\"\n\"318675\";\"Dzhejkhan\";\"other\"\n\"318675\";\"Hamidiye\";\"other\"\n\"318675\";\"Jehan\";\"other\"\n\"318675\";\"jyhan\";\"other\"\n\"318675\";\"Джейхан\";\"other\"\n\"318675\";\"جيهان\";\"other\"\n\"318679\";\"Çevrimova\";\"main\"\n\"318679\";\"Cevrimova\";\"ascii\"\n\"318679\";\"Barisil\";\"other\"\n\"318679\";\"Barsil\";\"other\"\n\"318679\";\"Barsyl\";\"other\"\n\"318679\";\"Barısıl\";\"other\"\n\"318755\";\"Çeşme\";\"main\"\n\"318755\";\"Cesme\";\"ascii\"\n\"318755\";\"Cheshme\";\"other\"\n\"318755\";\"Chesme\";\"other\"\n\"318755\";\"Chesnie\";\"other\"\n\"318755\";\"Cissus\";\"other\"\n\"318755\";\"Cıssus\";\"other\"\n\"318755\";\"Чешме\";\"other\"\n\"318766\";\"Çermik\";\"main\"\n\"318766\";\"Cermik\";\"ascii\"\n\"318766\";\"Cemik\";\"other\"\n\"318766\";\"Çemik\";\"other\"\n\"318904\";\"Çelikhan\";\"main\"\n\"318904\";\"Celikhan\";\"ascii\"\n\"318904\";\"Celikan\";\"other\"\n\"319069\";\"Çayıralan\";\"main\"\n\"319069\";\"Cayiralan\";\"ascii\"\n\"319069\";\"Akdag\";\"other\"\n\"319069\";\"Akdağ\";\"other\"\n\"319069\";\"Cayirse\";\"other\"\n\"319069\";\"Cayirseyhi\";\"other\"\n\"319069\";\"Cayırşe\";\"other\"\n\"319069\";\"Çayırşeyhi\";\"other\"\n\"319104\";\"Çay\";\"main\"\n\"319104\";\"Cay\";\"ascii\"\n\"319104\";\"Kej\";\"other\"\n\"319104\";\"Кей\";\"other\"\n\"319118\";\"Çavuşlu\";\"main\"\n\"319118\";\"Cavuslu\";\"ascii\"\n\"319118\";\"Sarozbah\";\"other\"\n\"319118\";\"Saruzbah\";\"other\"\n\"319118\";\"Saruzbakh\";\"other\"\n\"319118\";\"Seruzbali\";\"other\"\n\"319118\";\"Soruzbah\";\"other\"\n\"319118\";\"Şeruzbalı\";\"other\"\n\"319345\";\"Çatak\";\"main\"\n\"319345\";\"Catak\";\"ascii\"\n\"319345\";\"Martanis\";\"other\"\n\"319345\";\"Satak\";\"other\"\n\"319345\";\"Sitak\";\"other\"\n\"319345\";\"Şatak\";\"other\"\n\"319345\";\"Şitak\";\"other\"\n\"319357\";\"Çat\";\"main\"\n\"319357\";\"Cat\";\"ascii\"\n\"319357\";\"Oyuklu\";\"other\"\n\"319357\";\"Uyuklu\";\"other\"\n\"319487\";\"Çandarlı\";\"main\"\n\"319487\";\"Candarli\";\"ascii\"\n\"319487\";\"Chandarly\";\"other\"\n\"319487\";\"Sandarli\";\"other\"\n\"319487\";\"Чандарлы\";\"other\"\n\"319670\";\"Anamas\";\"main\"\n\"319670\";\"Yuruk\";\"other\"\n\"319670\";\"Yürük\";\"other\"\n\"319761\";\"Çalpınar\";\"main\"\n\"319761\";\"Calpinar\";\"ascii\"\n\"319761\";\"Siti\";\"other\"\n\"319787\";\"Çalışkan\";\"main\"\n\"319787\";\"Caliskan\";\"ascii\"\n\"319787\";\"Gitta\";\"other\"\n\"319787\";\"Gitte\";\"other\"\n\"319823\";\"Çaldıran\";\"main\"\n\"319823\";\"Caldiran\";\"ascii\"\n\"319823\";\"Bayazitaga\";\"other\"\n\"319823\";\"Bayazıtağa\";\"other\"\n\"320004\";\"Çağlayancerit\";\"main\"\n\"320004\";\"Caglayancerit\";\"ascii\"\n\"320004\";\"Buyuk Cerbit\";\"other\"\n\"320004\";\"Buyuk Cerit\";\"other\"\n\"320004\";\"Büyük Cerbit\";\"other\"\n\"320004\";\"Büyük Cerit\";\"other\"\n\"320004\";\"Cagliyan Cerit\";\"other\"\n\"320004\";\"Çağlıyan Çerit\";\"other\"\n\"320177\";\"Konak\";\"main\"\n\"320177\";\"Buyukkonak\";\"other\"\n\"320177\";\"Büyükkonak\";\"other\"\n\"320177\";\"Nikfer\";\"other\"\n\"320201\";\"Büyükkardeş\";\"main\"\n\"320201\";\"Buyukkardes\";\"ascii\"\n\"320201\";\"Cinatamaho\";\"other\"\n\"320201\";\"Cinatamiho\";\"other\"\n\"320201\";\"Dzhinatamakh\";\"other\"\n\"320369\";\"Burhaniye\";\"main\"\n\"320369\";\"Kemer\";\"other\"\n\"320374\";\"Buharkent\";\"main\"\n\"320374\";\"Burhaniye\";\"other\"\n\"320374\";\"Burhaniyekasabasi\";\"other\"\n\"320374\";\"Burhaniyekasabası\";\"other\"\n\"320374\";\"Cubukdag\";\"other\"\n\"320374\";\"Cubukdagi\";\"other\"\n\"320374\";\"Çubukdağ\";\"other\"\n\"320374\";\"Çubukdağı\";\"other\"\n\"320392\";\"Burdur\";\"main\"\n\"320392\";\"Bourdour\";\"other\"\n\"320392\";\"Buldur\";\"other\"\n\"320392\";\"Polydorion\";\"other\"\n\"320392\";\"Бурдур\";\"other\"\n\"320406\";\"Bünyan\";\"main\"\n\"320406\";\"Bunyan\";\"ascii\"\n\"320406\";\"Bunyan Hamit\";\"other\"\n\"320406\";\"Bünyan Hamit\";\"other\"\n\"320406\";\"Sarmisakli\";\"other\"\n\"320406\";\"Sarmısaklı\";\"other\"\n\"320437\";\"Buldan\";\"main\"\n\"320437\";\"Boldan\";\"other\"\n\"320448\";\"Bulanık\";\"main\"\n\"320448\";\"Bulanik\";\"ascii\"\n\"320533\";\"Bucak\";\"main\"\n\"320533\";\"Budzhak\";\"other\"\n\"320533\";\"Буджак\";\"other\"\n\"320552\";\"Bozyazı\";\"main\"\n\"320552\";\"Bozyazi\";\"ascii\"\n\"320557\";\"Bozüyük\";\"main\"\n\"320557\";\"Bozuyuk\";\"ascii\"\n\"320557\";\"Bozoyuk\";\"other\"\n\"320557\";\"Bozöyük\";\"other\"\n\"320581\";\"Bozova\";\"main\"\n\"320581\";\"Hovenk\";\"other\"\n\"320581\";\"Huvek\";\"other\"\n\"320581\";\"Hövenk\";\"other\"\n\"320581\";\"Hüvek\";\"other\"\n\"320581\";\"Бозова\";\"other\"\n\"320606\";\"Bozkurt\";\"main\"\n\"320606\";\"Hamidiye\";\"other\"\n\"320621\";\"Bozkır\";\"main\"\n\"320621\";\"Bozkir\";\"ascii\"\n\"320621\";\"Silistat\";\"other\"\n\"320621\";\"Sitistat\";\"other\"\n\"320635\";\"Bozhüyük\";\"main\"\n\"320635\";\"Bozhuyuk\";\"ascii\"\n\"320635\";\"Taliban\";\"other\"\n\"320635\";\"Teliba Koyu\";\"other\"\n\"320635\";\"Teliba Köyü\";\"other\"\n\"320647\";\"Bozdoğan\";\"main\"\n\"320647\";\"Bozdogan\";\"ascii\"\n\"320700\";\"Bozcaada\";\"main\"\n\"320700\";\"Bogcaada\";\"other\"\n\"320700\";\"Boğçaada\";\"other\"\n\"320700\";\"Tenedos\";\"other\"\n\"320700\";\"Ténédos\";\"other\"\n\"320745\";\"Bozalan\";\"main\"\n\"320745\";\"Bahmur\";\"other\"\n\"320745\";\"Bahnur\";\"other\"\n\"320745\";\"Behmur\";\"other\"\n\"320745\";\"Bekhmur\";\"other\"\n\"320835\";\"Bostancı\";\"main\"\n\"320835\";\"Bostanci\";\"ascii\"\n\"320835\";\"Rihani\";\"other\"\n\"320835\";\"Rihanı\";\"other\"\n\"320835\";\"Rikhani\";\"other\"\n\"320871\";\"Bor\";\"main\"\n\"320871\";\"Бор\";\"other\"\n\"320879\";\"Bolvadin\";\"main\"\n\"320942\";\"Boğazören\";\"main\"\n\"320942\";\"Bogazoren\";\"ascii\"\n\"320942\";\"Gelgetir\";\"other\"\n\"320942\";\"Kel'ketir\";\"other\"\n\"320942\";\"Kel’ketir\";\"other\"\n\"320942\";\"Kitir\";\"other\"\n\"320942\";\"Kıtır\";\"other\"\n\"320995\";\"Bodrum\";\"main\"\n\"320995\";\"Bodurum\";\"other\"\n\"320995\";\"Budrum\";\"other\"\n\"320995\";\"Halicarnassus\";\"other\"\n\"320995\";\"Petronium\";\"other\"\n\"320995\";\"bodorumu\";\"other\"\n\"320995\";\"bwdrwm\";\"other\"\n\"320995\";\"Бодрум\";\"other\"\n\"320995\";\"בודרום\";\"other\"\n\"320995\";\"ボドルム\";\"other\"\n\"321025\";\"Bitlis\";\"main\"\n\"321025\";\"Badlis\";\"other\"\n\"321025\";\"Bitliss\";\"other\"\n\"321025\";\"btlys\";\"other\"\n\"321025\";\"Битлис\";\"other\"\n\"321025\";\"بتلیس\";\"other\"\n\"321031\";\"Bismil\";\"main\"\n\"321062\";\"Birecik\";\"main\"\n\"321062\";\"Apamea\";\"other\"\n\"321062\";\"Biredzhik\";\"other\"\n\"321062\";\"Birejik\";\"other\"\n\"321062\";\"Birijik\";\"other\"\n\"321062\";\"Биреджик\";\"other\"\n\"321082\";\"Bingöl\";\"main\"\n\"321082\";\"Bingol\";\"ascii\"\n\"321082\";\"Badlis\";\"other\"\n\"321082\";\"Capakcur\";\"other\"\n\"321082\";\"Cevlik\";\"other\"\n\"321082\";\"Çapakçur\";\"other\"\n\"321082\";\"Çevlik\";\"other\"\n\"321082\";\"Бингол\";\"other\"\n\"321088\";\"Binatlı\";\"main\"\n\"321088\";\"Binatli\";\"ascii\"\n\"321088\";\"Bileyder\";\"other\"\n\"321136\";\"Bigadiç\";\"main\"\n\"321136\";\"Bigadic\";\"ascii\"\n\"321184\";\"Beytüşşebap\";\"main\"\n\"321184\";\"Beytussebap\";\"ascii\"\n\"321184\";\"Beyt-Esh-Shebab\";\"other\"\n\"321184\";\"Beytisebab\";\"other\"\n\"321184\";\"Beytisebap\";\"other\"\n\"321184\";\"Beytişebab\";\"other\"\n\"321184\";\"Beytusebap\";\"other\"\n\"321184\";\"Beytussebab\";\"other\"\n\"321184\";\"Beytüşebap\";\"other\"\n\"321184\";\"Beytüşşebab\";\"other\"\n\"321184\";\"El'ki\";\"other\"\n\"321184\";\"Elki\";\"other\"\n\"321191\";\"Beyşehir\";\"main\"\n\"321191\";\"Beysehir\";\"ascii\"\n\"321191\";\"Bejshekhir\";\"other\"\n\"321191\";\"bkshhry\";\"other\"\n\"321191\";\"Бейшехир\";\"other\"\n\"321191\";\"بکشهری\";\"other\"\n\"321219\";\"Beylikova\";\"main\"\n\"321219\";\"Beylikahir\";\"other\"\n\"321219\";\"Beylikahır\";\"other\"\n\"321327\";\"Beşpınar\";\"main\"\n\"321327\";\"Bespinar\";\"ascii\"\n\"321327\";\"Alenz\";\"other\"\n\"321327\";\"Arans\";\"other\"\n\"321327\";\"Aranz\";\"other\"\n\"321327\";\"Baspinar\";\"other\"\n\"321327\";\"Başpınar\";\"other\"\n\"321327\";\"Beshpynar\";\"other\"\n\"321327\";\"Jukary-Lori\";\"other\"\n\"321327\";\"Ridvan\";\"other\"\n\"321327\";\"Rıdvan\";\"other\"\n\"321327\";\"Юкары-Лори\";\"other\"\n\"321337\";\"Besni\";\"main\"\n\"321337\";\"Bahisni\";\"other\"\n\"321337\";\"Behisni\";\"other\"\n\"321360\";\"Beşiri\";\"main\"\n\"321360\";\"Besiri\";\"ascii\"\n\"321360\";\"Beshirin\";\"other\"\n\"321360\";\"Kabin\";\"other\"\n\"321360\";\"Kobin\";\"other\"\n\"321426\";\"Bergama\";\"main\"\n\"321426\";\"Pergame\";\"other\"\n\"321426\";\"Pergamo\";\"other\"\n\"321426\";\"Pergamon\";\"other\"\n\"321426\";\"Pergamos\";\"other\"\n\"321426\";\"Pergamum\";\"other\"\n\"321426\";\"Pérgamo\";\"other\"\n\"321426\";\"bie jia mo\";\"other\"\n\"321426\";\"brgama\";\"other\"\n\"321426\";\"pa jia ma\";\"other\"\n\"321426\";\"perugamon\";\"other\"\n\"321426\";\"prgamwn\";\"other\"\n\"321426\";\"prgmwn\";\"other\"\n\"321426\";\"Бергама\";\"other\"\n\"321426\";\"Пергамон\";\"other\"\n\"321426\";\"פרגמון\";\"other\"\n\"321426\";\"برگاما\";\"other\"\n\"321426\";\"پرگامون\";\"other\"\n\"321426\";\"ペルガモン\";\"other\"\n\"321426\";\"別迦摩\";\"other\"\n\"321426\";\"帕加马\";\"other\"\n\"321572\";\"Belen\";\"main\"\n\"321572\";\"Beilan\";\"other\"\n\"321572\";\"Beylan\";\"other\"\n\"321572\";\"Bilan\";\"other\"\n\"321572\";\"Белен\";\"other\"\n\"321580\";\"Belek\";\"main\"\n\"321580\";\"Belekoy\";\"other\"\n\"321580\";\"Beleköy\";\"other\"\n\"321580\";\"Besyigit\";\"other\"\n\"321580\";\"Beşyiğit\";\"other\"\n\"321580\";\"Белек\";\"other\"\n\"321637\";\"Bekilli\";\"main\"\n\"321658\";\"Behram\";\"main\"\n\"321658\";\"Assos\";\"other\"\n\"321658\";\"Bayram\";\"other\"\n\"321658\";\"Behramkale\";\"other\"\n\"321658\";\"Bekhramkale\";\"other\"\n\"321658\";\"Бехрамкале\";\"other\"\n\"321673\";\"Beğendik\";\"main\"\n\"321673\";\"Begendik\";\"ascii\"\n\"321673\";\"Bidar\";\"other\"\n\"321733\";\"Bayramiç\";\"main\"\n\"321733\";\"Bayramic\";\"ascii\"\n\"321733\";\"Bairamich\";\"other\"\n\"321733\";\"Scepsis\";\"other\"\n\"321733\";\"Scepsıs\";\"other\"\n\"321750\";\"Baykan\";\"main\"\n\"321750\";\"Havil\";\"other\"\n\"321750\";\"Havilhanlari\";\"other\"\n\"321750\";\"Havilhanları\";\"other\"\n\"321750\";\"Hovil\";\"other\"\n\"321750\";\"Huvil\";\"other\"\n\"321786\";\"Bayındır\";\"main\"\n\"321786\";\"Bayindir\";\"ascii\"\n\"321786\";\"Baindir\";\"other\"\n\"321786\";\"Bajindyr\";\"other\"\n\"321786\";\"Байиндыр\";\"other\"\n\"321814\";\"Bayat\";\"main\"\n\"321814\";\"Hambarcin\";\"other\"\n\"321814\";\"Hambarçin\";\"other\"\n\"321836\";\"Batman\";\"main\"\n\"321836\";\"Iloh\";\"other\"\n\"321836\";\"Iluh\";\"other\"\n\"321836\";\"Батман\";\"other\"\n\"321887\";\"Başmakçı\";\"main\"\n\"321887\";\"Basmakci\";\"ascii\"\n\"321929\";\"Baskil\";\"main\"\n\"321935\";\"Başkavak\";\"main\"\n\"321935\";\"Baskavak\";\"ascii\"\n\"321935\";\"Ahmedi\";\"other\"\n\"321935\";\"Akhmedi\";\"other\"\n\"321940\";\"Başkale\";\"main\"\n\"321940\";\"Baskale\";\"ascii\"\n\"321940\";\"Bash Kaleh\";\"other\"\n\"321940\";\"Bashkala\";\"other\"\n\"322002\";\"Barıştepe\";\"main\"\n\"322002\";\"Baristepe\";\"ascii\"\n\"322002\";\"Salhi\";\"other\"\n\"322002\";\"Salkhi\";\"other\"\n\"322051\";\"Banaz\";\"main\"\n\"322051\";\"Islamkoy\";\"other\"\n\"322051\";\"İslamköy\";\"other\"\n\"322060\";\"Balya\";\"main\"\n\"322060\";\"Baliy\";\"other\"\n\"322076\";\"Balpınar\";\"main\"\n\"322076\";\"Balpinar\";\"ascii\"\n\"322076\";\"Giresiran\";\"other\"\n\"322076\";\"Girisiran\";\"other\"\n\"322076\";\"Gresiran\";\"other\"\n\"322076\";\"Kersivan\";\"other\"\n\"322137\";\"Balışeyh\";\"main\"\n\"322137\";\"Baliseyh\";\"ascii\"\n\"322137\";\"Balisey\";\"other\"\n\"322137\";\"Balisih\";\"other\"\n\"322137\";\"Balisoh\";\"other\"\n\"322137\";\"Balli\";\"other\"\n\"322137\";\"Ballı\";\"other\"\n\"322137\";\"Balışey\";\"other\"\n\"322137\";\"Balışoh\";\"other\"\n\"322137\";\"Balışıh\";\"other\"\n\"322165\";\"Balıkesir\";\"main\"\n\"322165\";\"Balikesir\";\"ascii\"\n\"322165\";\"Achyraus\";\"other\"\n\"322165\";\"Adrianoutherai\";\"other\"\n\"322165\";\"Adrianouthērai\";\"other\"\n\"322165\";\"Bali-Kessir\";\"other\"\n\"322165\";\"Balikesr\";\"other\"\n\"322165\";\"Balikesri\";\"other\"\n\"322165\";\"Balukisu\";\"other\"\n\"322165\";\"Balykesir\";\"other\"\n\"322165\";\"Belikesir\";\"other\"\n\"322165\";\"Belikiser\";\"other\"\n\"322165\";\"Hadrianutherae\";\"other\"\n\"322165\";\"Karassi\";\"other\"\n\"322165\";\"Балыкесир\";\"other\"\n\"322250\";\"Baklan\";\"main\"\n\"322250\";\"Dedekoy\";\"other\"\n\"322250\";\"Dedeköy\";\"other\"\n\"322324\";\"Bahçesaray\";\"main\"\n\"322324\";\"Bahcesaray\";\"ascii\"\n\"322324\";\"Bahcesara\";\"other\"\n\"322324\";\"Muks\";\"other\"\n\"322324\";\"Mukus\";\"other\"\n\"322324\";\"Müküs\";\"other\"\n\"322391\";\"Bahçe\";\"main\"\n\"322391\";\"Bahce\";\"ascii\"\n\"322391\";\"Bulanik\";\"other\"\n\"322391\";\"Bulanikbahce\";\"other\"\n\"322391\";\"Bulanık\";\"other\"\n\"322391\";\"Bulanıkbahçe\";\"other\"\n\"322461\";\"Bağlıca\";\"main\"\n\"322461\";\"Baglica\";\"ascii\"\n\"322461\";\"Bennisht\";\"other\"\n\"322461\";\"Bennist\";\"other\"\n\"322461\";\"Bennişt\";\"other\"\n\"322461\";\"Bernist\";\"other\"\n\"322461\";\"Bernişt\";\"other\"\n\"322462\";\"Bağlıca\";\"main\"\n\"322462\";\"Baglica\";\"ascii\"\n\"322462\";\"Inceler\";\"other\"\n\"322462\";\"Kadinuk\";\"other\"\n\"322462\";\"Kadinyuk\";\"other\"\n\"322462\";\"Kadinük\";\"other\"\n\"322462\";\"Kadun\";\"other\"\n\"322462\";\"Ziravik\";\"other\"\n\"322462\";\"İnceler\";\"other\"\n\"322508\";\"Bağgöze\";\"main\"\n\"322508\";\"Baggoze\";\"ascii\"\n\"322508\";\"Ayni\";\"other\"\n\"322508\";\"Aynı\";\"other\"\n\"322508\";\"Lodi\";\"other\"\n\"322618\";\"Babadağ\";\"main\"\n\"322618\";\"Babadag\";\"ascii\"\n\"322618\";\"Kadikoy\";\"other\"\n\"322618\";\"Kadıköy\";\"other\"\n\"322673\";\"Ayvalık\";\"main\"\n\"322673\";\"Ayvalik\";\"ascii\"\n\"322673\";\"Aivali\";\"other\"\n\"322673\";\"Ajvalyk\";\"other\"\n\"322673\";\"Cisthene\";\"other\"\n\"322673\";\"Kydoniai\";\"other\"\n\"322673\";\"aywalq\";\"other\"\n\"322673\";\"Айвалык\";\"other\"\n\"322673\";\"ایوالق\";\"other\"\n\"322692\";\"Ayvacık\";\"main\"\n\"322692\";\"Ayvacik\";\"ascii\"\n\"322810\";\"Aydınlar\";\"main\"\n\"322810\";\"Aydinlar\";\"ascii\"\n\"322810\";\"Tillo\";\"other\"\n\"322813\";\"Aydınkonak\";\"main\"\n\"322813\";\"Aydinkonak\";\"ascii\"\n\"322813\";\"Keryuk\";\"other\"\n\"322813\";\"Korik\";\"other\"\n\"322813\";\"Koruk\";\"other\"\n\"322813\";\"Korukkoy\";\"other\"\n\"322813\";\"Këryuk\";\"other\"\n\"322813\";\"Körük\";\"other\"\n\"322813\";\"Körükköy\";\"other\"\n\"322817\";\"İbradı\";\"main\"\n\"322817\";\"Ibradi\";\"ascii\"\n\"322817\";\"Aydinkent\";\"other\"\n\"322817\";\"Aydınkent\";\"other\"\n\"322826\";\"Aydıncık\";\"main\"\n\"322826\";\"Aydincik\";\"ascii\"\n\"322826\";\"Aydinisik\";\"other\"\n\"322826\";\"Aydınışık\";\"other\"\n\"322826\";\"Gilindire\";\"other\"\n\"322830\";\"Aydın\";\"main\"\n\"322830\";\"Aydin\";\"ascii\"\n\"322830\";\"Aidin\";\"other\"\n\"322830\";\"Aidinion\";\"other\"\n\"322830\";\"Ajdyn\";\"other\"\n\"322830\";\"Aïdin\";\"other\"\n\"322830\";\"Aïdínion\";\"other\"\n\"322830\";\"Gusel Hissar\";\"other\"\n\"322830\";\"Guzel Hissar\";\"other\"\n\"322830\";\"Güsel Hissar\";\"other\"\n\"322830\";\"Güzel Hissar\";\"other\"\n\"322830\";\"Tralleis\";\"other\"\n\"322830\";\"Tralles\";\"other\"\n\"322830\";\"Tralli\";\"other\"\n\"322830\";\"Айдын\";\"other\"\n\"322887\";\"Avsallar\";\"main\"\n\"322887\";\"Авсаллар\";\"other\"\n\"322965\";\"Avanos\";\"main\"\n\"323039\";\"Atabey\";\"main\"\n\"323039\";\"Agros\";\"other\"\n\"323039\";\"Argos\";\"other\"\n\"323039\";\"Ağros\";\"other\"\n\"323082\";\"Aslanapa\";\"main\"\n\"323082\";\"Arslanapa\";\"other\"\n\"323094\";\"Aşkale\";\"main\"\n\"323094\";\"Askale\";\"ascii\"\n\"323095\";\"Aşkale\";\"main\"\n\"323095\";\"Askale\";\"ascii\"\n\"323251\";\"Kale\";\"main\"\n\"323251\";\"Asagi Mestikan\";\"other\"\n\"323251\";\"Aşağı Mestikân\";\"other\"\n\"323251\";\"Mestikan\";\"other\"\n\"323251\";\"Mestikân\";\"other\"\n\"323457\";\"Aşağıbeğdeş\";\"main\"\n\"323457\";\"Asagibegdes\";\"ascii\"\n\"323457\";\"Asagi Telfidan\";\"other\"\n\"323457\";\"Ashagy-Tel'fidan\";\"other\"\n\"323457\";\"Ashagy-Tel’fidan\";\"other\"\n\"323457\";\"Aşağı Telfidan\";\"other\"\n\"323653\";\"Arıcak\";\"main\"\n\"323653\";\"Aricak\";\"ascii\"\n\"323653\";\"Karabegan\";\"other\"\n\"323653\";\"Karabeğan\";\"other\"\n\"323653\";\"Karabogan\";\"other\"\n\"323653\";\"Karaboğan\";\"other\"\n\"323653\";\"Mirivan\";\"other\"\n\"323653\";\"Mirvan\";\"other\"\n\"323660\";\"Arguvan\";\"main\"\n\"323660\";\"Argavan\";\"other\"\n\"323660\";\"Tahir\";\"other\"\n\"323721\";\"Arapkir\";\"main\"\n\"323721\";\"Arabacis\";\"other\"\n\"323721\";\"Arabkir\";\"other\"\n\"323721\";\"Arapgir\";\"other\"\n\"323721\";\"عربکر\";\"other\"\n\"323721\";\"عربکیر\";\"other\"\n\"323733\";\"Aran\";\"main\"\n\"323733\";\"Zoni\";\"other\"\n\"323736\";\"Aralık\";\"main\"\n\"323736\";\"Aralik\";\"ascii\"\n\"323736\";\"Aralyk\";\"other\"\n\"323736\";\"Tezekli\";\"other\"\n\"323736\";\"Аралык\";\"other\"\n\"323750\";\"Araban\";\"main\"\n\"323750\";\"Altintas\";\"other\"\n\"323750\";\"Altıntaş\";\"other\"\n\"323777\";\"Antalya\";\"main\"\n\"323777\";\"Adalia\";\"other\"\n\"323777\";\"Antal'ja\";\"other\"\n\"323777\";\"Antalia\";\"other\"\n\"323777\";\"Antalija\";\"other\"\n\"323777\";\"Antaliyah\";\"other\"\n\"323777\";\"Antayla\";\"other\"\n\"323777\";\"Antália\";\"other\"\n\"323777\";\"Attaleia\";\"other\"\n\"323777\";\"Attalia\";\"other\"\n\"323777\";\"Olbia\";\"other\"\n\"323777\";\"Satalia\";\"other\"\n\"323777\";\"an ta li ya\";\"other\"\n\"323777\";\"antaruya\";\"other\"\n\"323777\";\"Αττάλεια\";\"other\"\n\"323777\";\"Анталия\";\"other\"\n\"323777\";\"Анталья\";\"other\"\n\"323777\";\"אנטליה\";\"other\"\n\"323777\";\"アンタルヤ\";\"other\"\n\"323777\";\"安塔利亞\";\"other\"\n\"323779\";\"Antioch\";\"main\"\n\"323779\";\"Antakija\";\"other\"\n\"323779\";\"Antakiya\";\"other\"\n\"323779\";\"Antakiyyah\";\"other\"\n\"323779\";\"Antakya\";\"other\"\n\"323779\";\"Antiocheia\";\"other\"\n\"323779\";\"Antiochia\";\"other\"\n\"323779\";\"Antiochia am Orontes\";\"other\"\n\"323779\";\"Antiochia di Siria\";\"other\"\n\"323779\";\"Antiochia vid Orontes\";\"other\"\n\"323779\";\"Antiochie\";\"other\"\n\"323779\";\"Antiochië\";\"other\"\n\"323779\";\"Antiohija\";\"other\"\n\"323779\";\"Antiokheia\";\"other\"\n\"323779\";\"Antiokhija\";\"other\"\n\"323779\";\"Antiokia\";\"other\"\n\"323779\";\"Antioquia\";\"other\"\n\"323779\";\"Antioquía\";\"other\"\n\"323779\";\"Antākiyyah\";\"other\"\n\"323779\";\"Antıoch\";\"other\"\n\"323779\";\"Hatay\";\"other\"\n\"323779\";\"an tiao ke\";\"other\"\n\"323779\";\"antakyt\";\"other\"\n\"323779\";\"antiokeia\";\"other\"\n\"323779\";\"ntakyt\";\"other\"\n\"323779\";\"Αντιόχεια\";\"other\"\n\"323779\";\"Антакия\";\"other\"\n\"323779\";\"Антиохия\";\"other\"\n\"323779\";\"Антиохија\";\"other\"\n\"323779\";\"אנטיוכיה\";\"other\"\n\"323779\";\"أنطاكية\";\"other\"\n\"323779\";\"نتاكيّة\";\"other\"\n\"323779\";\"アンティオケイア\";\"other\"\n\"323779\";\"安条克\";\"other\"\n\"323786\";\"Ankara\";\"main\"\n\"323786\";\"Ancara\";\"other\"\n\"323786\";\"Ancara - Ankara\";\"other\"\n\"323786\";\"Ancyra\";\"other\"\n\"323786\";\"Angora\";\"other\"\n\"323786\";\"Anguriyah\";\"other\"\n\"323786\";\"Ankaro\";\"other\"\n\"323786\";\"Ankura\";\"other\"\n\"323786\";\"Ankyra\";\"other\"\n\"323786\";\"Enguri\";\"other\"\n\"323786\";\"Engüri\";\"other\"\n\"323786\";\"Enqere\";\"other\"\n\"323786\";\"an ka la\";\"other\"\n\"323786\";\"angkala\";\"other\"\n\"323786\";\"ankara\";\"other\"\n\"323786\";\"anqrt\";\"other\"\n\"323786\";\"astan ankara\";\"other\"\n\"323786\";\"Άγκυρα\";\"other\"\n\"323786\";\"Анкара\";\"other\"\n\"323786\";\"Անկարա\";\"other\"\n\"323786\";\"אנקרה\";\"other\"\n\"323786\";\"أنقرة\";\"other\"\n\"323786\";\"ئەنقەرە\";\"other\"\n\"323786\";\"استان آنکارا\";\"other\"\n\"323786\";\"انقرہ\";\"other\"\n\"323786\";\"ܐܢܩܪܐ\";\"other\"\n\"323786\";\"अंकारा\";\"other\"\n\"323786\";\"ანკარა\";\"other\"\n\"323786\";\"アンカラ\";\"other\"\n\"323786\";\"安卡拉\";\"other\"\n\"323786\";\"앙카라\";\"other\"\n\"323797\";\"Andırın\";\"main\"\n\"323797\";\"Andirin\";\"ascii\"\n\"323797\";\"Andiran\";\"other\"\n\"323797\";\"Andıran\";\"other\"\n\"323806\";\"Andaç\";\"main\"\n\"323806\";\"Andac\";\"ascii\"\n\"323806\";\"Alaman\";\"other\"\n\"323806\";\"Alamon\";\"other\"\n\"323806\";\"Alamun\";\"other\"\n\"323806\";\"Cigli\";\"other\"\n\"323806\";\"Zap\";\"other\"\n\"323806\";\"Çığlı\";\"other\"\n\"323828\";\"Anamur\";\"main\"\n\"323828\";\"Anemurium\";\"other\"\n\"323828\";\"Анамур\";\"other\"\n\"323854\";\"Ambar\";\"main\"\n\"323854\";\"Anbar\";\"other\"\n\"323854\";\"Anbar Koyu\";\"other\"\n\"323854\";\"Anbar Köyü\";\"other\"\n\"323854\";\"Anbarci\";\"other\"\n\"323854\";\"Anbarcı\";\"other\"\n\"323886\";\"Altınyayla\";\"main\"\n\"323886\";\"Altinyayla\";\"ascii\"\n\"323886\";\"Tonus\";\"other\"\n\"323887\";\"Altınyayla\";\"main\"\n\"323887\";\"Altinyayla\";\"ascii\"\n\"323887\";\"Dinmil\";\"other\"\n\"323887\";\"Dirmil\";\"other\"\n\"323906\";\"Altınözü\";\"main\"\n\"323906\";\"Altinozu\";\"ascii\"\n\"323906\";\"Fatikli\";\"other\"\n\"323921\";\"Altınkum\";\"main\"\n\"323921\";\"Altinkum\";\"ascii\"\n\"323927\";\"Altunhisar\";\"main\"\n\"323927\";\"Altinhisar\";\"other\"\n\"323927\";\"Altınhisar\";\"other\"\n\"323930\";\"Altınekin\";\"main\"\n\"323930\";\"Altinekin\";\"ascii\"\n\"323930\";\"Zivarik\";\"other\"\n\"323930\";\"Zıvarık\";\"other\"\n\"323963\";\"Alpu\";\"main\"\n\"323963\";\"Alpikoy\";\"other\"\n\"323963\";\"Alpıköy\";\"other\"\n\"324106\";\"Aliağa\";\"main\"\n\"324106\";\"Aliaga\";\"ascii\"\n\"324106\";\"Aliagaciftligi\";\"other\"\n\"324106\";\"Aliağaçiftliği\";\"other\"\n\"324106\";\"Алиага\";\"other\"\n\"324126\";\"Gerger\";\"main\"\n\"324126\";\"Aldus\";\"other\"\n\"324126\";\"Alduş\";\"other\"\n\"324172\";\"Alaşehir\";\"main\"\n\"324172\";\"Alasehir\";\"ascii\"\n\"324172\";\"Ala Shehr\";\"other\"\n\"324172\";\"Alachehir\";\"other\"\n\"324172\";\"Alachehr\";\"other\"\n\"324172\";\"Alaschehir\";\"other\"\n\"324172\";\"Alashehir\";\"other\"\n\"324172\";\"Alashekhir\";\"other\"\n\"324172\";\"Alesehir\";\"other\"\n\"324172\";\"Aleşehir\";\"other\"\n\"324172\";\"Filadelfeia\";\"other\"\n\"324172\";\"Philadelphia\";\"other\"\n\"324172\";\"arashehiru\";\"other\"\n\"324172\";\"Алашехир\";\"other\"\n\"324172\";\"アラシェヒル\";\"other\"\n\"324190\";\"Alanya\";\"main\"\n\"324190\";\"Alaia\";\"other\"\n\"324190\";\"Alaiye\";\"other\"\n\"324190\";\"Alan'ja\";\"other\"\n\"324190\";\"Alanija\";\"other\"\n\"324190\";\"Alaya\";\"other\"\n\"324190\";\"Alâiye\";\"other\"\n\"324190\";\"Coracesium\";\"other\"\n\"324190\";\"Алания\";\"other\"\n\"324190\";\"Аланья\";\"other\"\n\"324190\";\"אלניה\";\"other\"\n\"324251\";\"Alakamış\";\"main\"\n\"324251\";\"Alakamis\";\"ascii\"\n\"324251\";\"Alakamysh\";\"other\"\n\"324294\";\"Alaçatı\";\"main\"\n\"324294\";\"Alacati\";\"ascii\"\n\"324294\";\"Alachati\";\"other\"\n\"324294\";\"Latzata\";\"other\"\n\"324294\";\"Алачати\";\"other\"\n\"324315\";\"Turluk\";\"main\"\n\"324315\";\"Alacakaya\";\"other\"\n\"324470\";\"Aksu\";\"main\"\n\"324470\";\"Аксу\";\"other\"\n\"324486\";\"Akseki\";\"main\"\n\"324486\";\"Aksiki\";\"other\"\n\"324490\";\"Akşehir\";\"main\"\n\"324490\";\"Aksehir\";\"ascii\"\n\"324490\";\"Ak Shehr\";\"other\"\n\"324490\";\"Philomelium\";\"other\"\n\"324496\";\"Aksaray\";\"main\"\n\"324496\";\"Aksaraj\";\"other\"\n\"324496\";\"Аксарай\";\"other\"\n\"324630\";\"Akköy\";\"main\"\n\"324630\";\"Akkoy\";\"ascii\"\n\"324643\";\"Akkışla\";\"main\"\n\"324643\";\"Akkisla\";\"ascii\"\n\"324698\";\"Akhisar\";\"main\"\n\"324698\";\"Akhissar\";\"other\"\n\"324698\";\"Akkhisar\";\"other\"\n\"324698\";\"Aq Hisar\";\"other\"\n\"324698\";\"Axari\";\"other\"\n\"324698\";\"Azarion\";\"other\"\n\"324698\";\"Thyatira\";\"other\"\n\"324698\";\"Акхисар\";\"other\"\n\"324768\";\"Akdağmadeni\";\"main\"\n\"324768\";\"Akdagmadeni\";\"ascii\"\n\"324768\";\"Adagmadeni\";\"other\"\n\"324768\";\"Adağmadenı\";\"other\"\n\"324944\";\"Akçakale\";\"main\"\n\"324944\";\"Akcakale\";\"ascii\"\n\"324944\";\"Akcekale\";\"other\"\n\"324944\";\"Akchakale\";\"other\"\n\"324953\";\"Akçadağ\";\"main\"\n\"324953\";\"Akcadag\";\"ascii\"\n\"324953\";\"Arga\";\"other\"\n\"325028\";\"Akarsu\";\"main\"\n\"325028\";\"Istilil\";\"other\"\n\"325028\";\"İstilil\";\"other\"\n\"325066\";\"Ahmetli\";\"main\"\n\"325103\";\"Ahlat\";\"main\"\n\"325103\";\"Akhlat\";\"other\"\n\"325103\";\"Erkizan\";\"other\"\n\"325103\";\"Ахлат\";\"other\"\n\"325171\";\"Ağlasun\";\"main\"\n\"325171\";\"Aglasun\";\"ascii\"\n\"325171\";\"Belonu\";\"other\"\n\"325171\";\"Belönü\";\"other\"\n\"325183\";\"Ağın\";\"main\"\n\"325183\";\"Agin\";\"ascii\"\n\"325269\";\"Ağaçören\";\"main\"\n\"325269\";\"Agacoren\";\"ascii\"\n\"325269\";\"Panli\";\"other\"\n\"325269\";\"Panlı\";\"other\"\n\"325303\";\"Afyonkarahisar\";\"main\"\n\"325303\";\"Acroenus\";\"other\"\n\"325303\";\"Acroënus\";\"other\"\n\"325303\";\"Af'onkarakhisar\";\"other\"\n\"325303\";\"Afion - Afyon\";\"other\"\n\"325303\";\"Afion Karahissar\";\"other\"\n\"325303\";\"Afioun-Kara-Hissar\";\"other\"\n\"325303\";\"Afium Kara Hissar\";\"other\"\n\"325303\";\"Afium Karahisar\";\"other\"\n\"325303\";\"Afiun Karahissar\";\"other\"\n\"325303\";\"Afiun Qarahisar\";\"other\"\n\"325303\";\"Afiun-Carahissar\";\"other\"\n\"325303\";\"Afyon\";\"other\"\n\"325303\";\"Afıon Karahissar\";\"other\"\n\"325303\";\"Kara Hissar Sahib\";\"other\"\n\"325303\";\"Karahisarisahip\";\"other\"\n\"325303\";\"Karahısarısahıp\";\"other\"\n\"325303\";\"Афьонкарахисар\";\"other\"\n\"325303\";\"افیون‌ قره حصاری\";\"other\"\n\"325303\";\"قره ‌حصار ساحب\";\"other\"\n\"325304\";\"Afşin\";\"main\"\n\"325304\";\"Afsin\";\"ascii\"\n\"325304\";\"Efsus\";\"other\"\n\"325304\";\"Yarpus\";\"other\"\n\"325304\";\"Yarpuz\";\"other\"\n\"325330\";\"Adıyaman\";\"main\"\n\"325330\";\"Adiyaman\";\"ascii\"\n\"325330\";\"Adiaman\";\"other\"\n\"325330\";\"Adityman\";\"other\"\n\"325330\";\"Adiyaman Province\";\"other\"\n\"325330\";\"Adiyamanska provincie\";\"other\"\n\"325330\";\"Adyjaman\";\"other\"\n\"325330\";\"Adıyaman Province\";\"other\"\n\"325330\";\"Adıyamanská provincie\";\"other\"\n\"325330\";\"Carbanum\";\"other\"\n\"325330\";\"Hisnumansur\";\"other\"\n\"325330\";\"Husnimansur\";\"other\"\n\"325330\";\"Husnumansur\";\"other\"\n\"325330\";\"Hüsnümansur\";\"other\"\n\"325330\";\"Perre\";\"other\"\n\"325330\";\"Pordonnium\";\"other\"\n\"325330\";\"Provincia de Adiyaman\";\"other\"\n\"325330\";\"Provinsi Adiyaman\";\"other\"\n\"325330\";\"Provinsi Adıyaman\";\"other\"\n\"325330\";\"Semsur\";\"other\"\n\"325330\";\"Semsûr\";\"other\"\n\"325330\";\"a de ya man sheng\";\"other\"\n\"325330\";\"adyaman\";\"other\"\n\"325330\";\"Адыяман\";\"other\"\n\"325330\";\"אדיאמן\";\"other\"\n\"325330\";\"آدیامان\";\"other\"\n\"325330\";\"阿德亚曼省\";\"other\"\n\"325336\";\"Adilcevaz\";\"main\"\n\"325336\";\"Adeljivaz\";\"other\"\n\"325336\";\"Adildzhevaz\";\"other\"\n\"325336\";\"Адилджеваз\";\"other\"\n\"325336\";\"عادالجواز\";\"other\"\n\"325336\";\"عادلجواز\";\"other\"\n\"325363\";\"Adana\";\"main\"\n\"325363\";\"Adhanah\";\"other\"\n\"325363\";\"Antiocheia\";\"other\"\n\"325363\";\"adana\";\"other\"\n\"325363\";\"adnt\";\"other\"\n\"325363\";\"Άδανα\";\"other\"\n\"325363\";\"Αδανα\";\"other\"\n\"325363\";\"Αντιόχεια\";\"other\"\n\"325363\";\"Адана\";\"other\"\n\"325363\";\"Ադանա\";\"other\"\n\"325363\";\"أضنة\";\"other\"\n\"325363\";\"アダナ\";\"other\"\n\"325420\";\"Acırlı\";\"main\"\n\"325420\";\"Acirli\";\"ascii\"\n\"325420\";\"Derizbin\";\"other\"\n\"325420\";\"Dirizbin\";\"other\"\n\"325426\";\"Acıpayam\";\"main\"\n\"325426\";\"Acipayam\";\"ascii\"\n\"325426\";\"Batikaraagac\";\"other\"\n\"325426\";\"Batıkaraağaç\";\"other\"\n\"325426\";\"Garbi Karaagac\";\"other\"\n\"325426\";\"Garbî Karaağaç\";\"other\"\n\"325449\";\"Acıgöl\";\"main\"\n\"325449\";\"Acigol\";\"ascii\"\n\"325449\";\"Dobada\";\"other\"\n\"392051\";\"Çardaklı\";\"main\"\n\"392051\";\"Cardakli\";\"ascii\"\n\"392059\";\"Ballı\";\"main\"\n\"392059\";\"Balli\";\"ascii\"\n\"392066\";\"Yemişli\";\"main\"\n\"392066\";\"Yemisli\";\"ascii\"\n\"392071\";\"Gündeş\";\"main\"\n\"392071\";\"Gundes\";\"ascii\"\n\"392071\";\"Guzeldere\";\"other\"\n\"392071\";\"Güzeldere\";\"other\"\n\"392071\";\"Karsani\";\"other\"\n\"392071\";\"Minyanis\";\"other\"\n\"392071\";\"Minyanysh\";\"other\"\n\"392071\";\"Minyanış\";\"other\"\n\"415534\";\"Nurdağı\";\"main\"\n\"415534\";\"Nurdagi\";\"ascii\"\n\"436138\";\"Yeşildere\";\"main\"\n\"436138\";\"Yesildere\";\"ascii\"\n\"436324\";\"Küçükkendirci\";\"main\"\n\"436324\";\"Kucukkendirci\";\"ascii\"\n\"436399\";\"Yamaçaltı\";\"main\"\n\"436399\";\"Yamacalti\";\"ascii\"\n\"436443\";\"Sevimli\";\"main\"\n\"436507\";\"Mahmutlar\";\"main\"\n\"436507\";\"Makhmutlar\";\"other\"\n\"436507\";\"Махмутлар\";\"other\"\n\"437241\";\"Aşağıkarafakılı\";\"main\"\n\"437241\";\"Asagikarafakili\";\"ascii\"\n\"437736\";\"Çırtıman\";\"main\"\n\"437736\";\"Cirtiman\";\"ascii\"\n\"438046\";\"Kuzeytepe\";\"main\"\n\"438056\";\"Küçük Dalyan\";\"main\"\n\"438056\";\"Kucuk Dalyan\";\"ascii\"\n\"438084\";\"Açıkdere\";\"main\"\n\"438084\";\"Acikdere\";\"ascii\"\n\"438096\";\"Toygarlı\";\"main\"\n\"438096\";\"Toygarli\";\"ascii\"\n\"438116\";\"Gümüşgöze\";\"main\"\n\"438116\";\"Gumusgoze\";\"ascii\"\n\"438119\";\"Dursunlu\";\"main\"\n\"438122\";\"Aşağıokçular\";\"main\"\n\"438122\";\"Asagiokcular\";\"ascii\"\n\"438129\";\"Boynuyoğun\";\"main\"\n\"438129\";\"Boynuyogun\";\"ascii\"\n\"438158\";\"Uzunbağ\";\"main\"\n\"438158\";\"Uzunbag\";\"ascii\"\n\"438161\";\"Büyükçat\";\"main\"\n\"438161\";\"Buyukcat\";\"ascii\"\n\"438162\";\"Balıklıdere\";\"main\"\n\"438162\";\"Baliklidere\";\"ascii\"\n\"438184\";\"Hacıpaşa\";\"main\"\n\"438184\";\"Hacipasa\";\"ascii\"\n\"438206\";\"Dağdüzü\";\"main\"\n\"438206\";\"Dagduzu\";\"ascii\"\n\"438234\";\"Samankaya\";\"main\"\n\"438236\";\"Anayazi\";\"main\"\n\"438237\";\"Karasüleymanlı\";\"main\"\n\"438237\";\"Karasuleymanli\";\"ascii\"\n\"438241\";\"Büyükdalyan\";\"main\"\n\"438241\";\"Buyukdalyan\";\"ascii\"\n\"438243\";\"Günyazı\";\"main\"\n\"438243\";\"Gunyazi\";\"ascii\"\n\"438245\";\"Tepehan\";\"main\"\n\"438247\";\"Oymaklı\";\"main\"\n\"438247\";\"Oymakli\";\"ascii\"\n\"438392\";\"Uzunkavak\";\"main\"\n\"438396\";\"Çırtıman\";\"main\"\n\"438396\";\"Cirtiman\";\"ascii\"\n\"438399\";\"Güzelköy\";\"main\"\n\"438399\";\"Guzelkoy\";\"ascii\"\n\"438400\";\"Denizciler\";\"main\"\n\"438909\";\"Başaran\";\"main\"\n\"438909\";\"Basaran\";\"ascii\"\n\"438967\";\"Doruklu\";\"main\"\n\"439098\";\"Akdiken\";\"main\"\n\"439099\";\"Yalıntaş\";\"main\"\n\"439099\";\"Yalintas\";\"ascii\"\n\"439101\";\"Pekmezli\";\"main\"\n\"439119\";\"Koyunluca\";\"main\"\n\"439215\";\"Yukarı Taşyalak\";\"main\"\n\"439215\";\"Yukari Tasyalak\";\"ascii\"\n\"439221\";\"Işıklar\";\"main\"\n\"439221\";\"Isiklar\";\"ascii\"\n\"439228\";\"Çıplak\";\"main\"\n\"439228\";\"Ciplak\";\"ascii\"\n\"442301\";\"Batikent\";\"main\"\n\"442301\";\"Batıkent\";\"other\"\n\"447049\";\"Başyayla\";\"main\"\n\"447049\";\"Basyayla\";\"ascii\"\n\"447273\";\"Dalaman\";\"main\"\n\"737022\";\"Zonguldak\";\"main\"\n\"737022\";\"Sandaraca\";\"other\"\n\"737022\";\"Songuldak\";\"other\"\n\"737022\";\"Sungul\";\"other\"\n\"737022\";\"Zonguldaq\";\"other\"\n\"737022\";\"Zoungouldagh\";\"other\"\n\"737022\";\"Zunguldak\";\"other\"\n\"737022\";\"Зонгулдак\";\"other\"\n\"737054\";\"Zile\";\"main\"\n\"737054\";\"Zil\";\"other\"\n\"737054\";\"Зил\";\"other\"\n\"737119\";\"Yuvacık\";\"main\"\n\"737119\";\"Yuvacik\";\"ascii\"\n\"737140\";\"Yusufeli\";\"main\"\n\"737140\";\"Ahalt\";\"other\"\n\"737421\";\"Yomra\";\"main\"\n\"737421\";\"Dirona\";\"other\"\n\"737529\";\"Yeşilyurt\";\"main\"\n\"737529\";\"Yesilyurt\";\"ascii\"\n\"737529\";\"Ciprek\";\"other\"\n\"737529\";\"Sargon\";\"other\"\n\"737529\";\"Sargun\";\"other\"\n\"737529\";\"Çiprek\";\"other\"\n\"737611\";\"Yenişehir\";\"main\"\n\"737611\";\"Yenisehir\";\"ascii\"\n\"737614\";\"Yenipazar\";\"main\"\n\"737614\";\"Kirka\";\"other\"\n\"737614\";\"Kırka\";\"other\"\n\"737660\";\"Yeniköy\";\"main\"\n\"737660\";\"Yenikoy\";\"ascii\"\n\"737709\";\"Yeniceköy\";\"main\"\n\"737709\";\"Yenicekoy\";\"ascii\"\n\"737709\";\"Yenice\";\"other\"\n\"737756\";\"Yeniçağa\";\"main\"\n\"737756\";\"Yenicaga\";\"ascii\"\n\"737756\";\"Resadiye\";\"other\"\n\"737756\";\"Reşadiye\";\"other\"\n\"737756\";\"Yenicag\";\"other\"\n\"737756\";\"Yeniçağ\";\"other\"\n\"737961\";\"Körfez\";\"main\"\n\"737961\";\"Korfez\";\"ascii\"\n\"737961\";\"Yaremdji\";\"other\"\n\"737961\";\"Yarimca\";\"other\"\n\"737961\";\"Yarımca\";\"other\"\n\"737980\";\"Yapraklı\";\"main\"\n\"737980\";\"Yaprakli\";\"ascii\"\n\"737980\";\"Tuht\";\"other\"\n\"738025\";\"Yalova\";\"main\"\n\"738025\";\"Jalova\";\"other\"\n\"738025\";\"Pythiae Thermae\";\"other\"\n\"738025\";\"Yaluva\";\"other\"\n\"738025\";\"Ялова\";\"other\"\n\"738055\";\"Yalakdere\";\"main\"\n\"738055\";\"Merdigoz\";\"other\"\n\"738055\";\"Merdigöz\";\"other\"\n\"738055\";\"Yalakdera\";\"other\"\n\"738055\";\"Yalakderekoy\";\"other\"\n\"738055\";\"Yalakdereköy\";\"other\"\n\"738064\";\"Yakuplu\";\"main\"\n\"738064\";\"Tarakatya\";\"other\"\n\"738085\";\"Yakakent\";\"main\"\n\"738085\";\"Gemenue\";\"other\"\n\"738085\";\"Gumenuz\";\"other\"\n\"738085\";\"Gümenüz\";\"other\"\n\"738123\";\"Yağlıdere\";\"main\"\n\"738123\";\"Yaglidere\";\"ascii\"\n\"738123\";\"Camiyani\";\"other\"\n\"738123\";\"Camiyanı\";\"other\"\n\"738123\";\"Gemiyani\";\"other\"\n\"738123\";\"Gemiyanı\";\"other\"\n\"738123\";\"Jaglydere\";\"other\"\n\"738123\";\"Palakli Koyunun Camiyani Mevkii\";\"other\"\n\"738123\";\"Palaklı Köyünün Camiyanı Mevkii\";\"other\"\n\"738123\";\"Яглыдере\";\"other\"\n\"738124\";\"Yağlıdere\";\"main\"\n\"738124\";\"Yaglidere\";\"ascii\"\n\"738154\";\"Vize\";\"main\"\n\"738154\";\"wyzh\";\"other\"\n\"738154\";\"ویزه\";\"other\"\n\"738167\";\"Vezirköprü\";\"main\"\n\"738167\";\"Vezirkopru\";\"ascii\"\n\"738167\";\"Koeprue\";\"other\"\n\"738167\";\"Köprü\";\"other\"\n\"738167\";\"Vezirkeprju\";\"other\"\n\"738167\";\"kpry\";\"other\"\n\"738167\";\"kwpry\";\"other\"\n\"738167\";\"Везиркепрю\";\"other\"\n\"738167\";\"کوپری\";\"other\"\n\"738167\";\"کپری\";\"other\"\n\"738228\";\"Vakfıkebir\";\"main\"\n\"738228\";\"Vakfikebir\";\"ascii\"\n\"738251\";\"Uzunköprü\";\"main\"\n\"738251\";\"Uzunkopru\";\"ascii\"\n\"738251\";\"Ivanski\";\"other\"\n\"738251\";\"Uzun Keupru\";\"other\"\n\"738251\";\"Uzunkeprju\";\"other\"\n\"738251\";\"Узункепрю\";\"other\"\n\"738276\";\"Uzundere\";\"main\"\n\"738276\";\"Azort\";\"other\"\n\"738276\";\"Azortuzundere\";\"other\"\n\"738276\";\"Азорт\";\"other\"\n\"738349\";\"Ünye\";\"main\"\n\"738349\";\"Unye\";\"ascii\"\n\"738349\";\"Oenoe\";\"other\"\n\"738349\";\"Onieh\";\"other\"\n\"738349\";\"Un'e\";\"other\"\n\"738349\";\"Unia\";\"other\"\n\"738349\";\"Unie\";\"other\"\n\"738349\";\"Unieh\";\"other\"\n\"738349\";\"Ünia\";\"other\"\n\"738349\";\"Унье\";\"other\"\n\"738372\";\"Umurbey\";\"main\"\n\"738444\";\"Ulubey\";\"main\"\n\"738444\";\"Gunduzlu\";\"other\"\n\"738444\";\"Gündüzlü\";\"other\"\n\"738444\";\"ULUBEI\";\"other\"\n\"738444\";\"УЛУБЕИ\";\"other\"\n\"738457\";\"Ulaşlı\";\"main\"\n\"738457\";\"Ulasli\";\"ascii\"\n\"738457\";\"Asagiulasli\";\"other\"\n\"738457\";\"Aşağıulaşlı\";\"other\"\n\"738468\";\"Uğurludağ\";\"main\"\n\"738468\";\"Ugurludag\";\"ascii\"\n\"738468\";\"Kizilveran\";\"other\"\n\"738468\";\"Kizilveren\";\"other\"\n\"738468\";\"Kizilviran\";\"other\"\n\"738468\";\"Kızılveran\";\"other\"\n\"738468\";\"Kızılveren\";\"other\"\n\"738468\";\"Kızılviran\";\"other\"\n\"738541\";\"Tuzluca\";\"main\"\n\"738541\";\"Kulp\";\"other\"\n\"738541\";\"TUZLUDZHA\";\"other\"\n\"738541\";\"ТУЗЛУДЖА\";\"other\"\n\"738614\";\"Türkeli\";\"main\"\n\"738614\";\"Turkeli\";\"ascii\"\n\"738614\";\"Gemiyani\";\"other\"\n\"738614\";\"Gemiyanı\";\"other\"\n\"738618\";\"Turhal\";\"main\"\n\"738618\";\"TURKHAL\";\"other\"\n\"738618\";\"ТУРХАЛ\";\"other\"\n\"738648\";\"Trabzon\";\"main\"\n\"738648\";\"Atrabazandah\";\"other\"\n\"738648\";\"TRABZON\";\"other\"\n\"738648\";\"Tarabazandah\";\"other\"\n\"738648\";\"Tirabson\";\"other\"\n\"738648\";\"Tirabzon\";\"other\"\n\"738648\";\"Trapezonte\";\"other\"\n\"738648\";\"Trapezounta\";\"other\"\n\"738648\";\"Trapezund\";\"other\"\n\"738648\";\"Trapezunt\";\"other\"\n\"738648\";\"Trapezus\";\"other\"\n\"738648\";\"Trapisonda\";\"other\"\n\"738648\";\"Trebisonda\";\"other\"\n\"738648\";\"Trebizond\";\"other\"\n\"738648\";\"Trebizonda\";\"other\"\n\"738648\";\"Trebizonde\";\"other\"\n\"738648\";\"Trébizonde\";\"other\"\n\"738648\";\"torabuzon\";\"other\"\n\"738648\";\"trbzwn\";\"other\"\n\"738648\";\"Τραπεζούντα\";\"other\"\n\"738648\";\"ТРАБЗОН\";\"other\"\n\"738648\";\"Трабзон\";\"other\"\n\"738648\";\"טרבזון\";\"other\"\n\"738648\";\"ტრაბზონი\";\"other\"\n\"738648\";\"トラブゾン\";\"other\"\n\"738662\";\"Tosya\";\"main\"\n\"738662\";\"Docea\";\"other\"\n\"738662\";\"Tosja\";\"other\"\n\"738662\";\"Тося\";\"other\"\n\"738668\";\"Torul\";\"main\"\n\"738668\";\"Ardasa\";\"other\"\n\"738668\";\"TORUL\";\"other\"\n\"738668\";\"ТОРУЛ\";\"other\"\n\"738674\";\"Tortum\";\"main\"\n\"738674\";\"Nihah\";\"other\"\n\"738674\";\"TORTUM\";\"other\"\n\"738674\";\"ТОРТУМ\";\"other\"\n\"738715\";\"Tonya\";\"main\"\n\"738715\";\"Ortamahalle\";\"other\"\n\"738743\";\"Tokat\";\"main\"\n\"738743\";\"Dazimon\";\"other\"\n\"738743\";\"Provincia de Tokat\";\"other\"\n\"738743\";\"TOKAT\";\"other\"\n\"738743\";\"Tokat Province\";\"other\"\n\"738743\";\"Tokatiaen\";\"other\"\n\"738743\";\"Tokatiän\";\"other\"\n\"738743\";\"Tokatska provincie\";\"other\"\n\"738743\";\"Tokatská provincie\";\"other\"\n\"738743\";\"Toqat\";\"other\"\n\"738743\";\"Tukat\";\"other\"\n\"738743\";\"ТОКАТ\";\"other\"\n\"738753\";\"Tirebolu\";\"main\"\n\"738753\";\"TIREBOLU\";\"other\"\n\"738753\";\"Tarablus\";\"other\"\n\"738753\";\"Tereboli\";\"other\"\n\"738753\";\"Tireboli\";\"other\"\n\"738753\";\"Trebolu\";\"other\"\n\"738753\";\"Tripolis\";\"other\"\n\"738753\";\"ТИРЕБОЛУ\";\"other\"\n\"738803\";\"Terme\";\"main\"\n\"738803\";\"TERME\";\"other\"\n\"738803\";\"ТЕРМЕ\";\"other\"\n\"738858\";\"Tepecik\";\"main\"\n\"738858\";\"Playa\";\"other\"\n\"738907\";\"Tekkeköy\";\"main\"\n\"738907\";\"Tekkekoy\";\"ascii\"\n\"738907\";\"Tekke\";\"other\"\n\"738907\";\"Tekkekej\";\"other\"\n\"738907\";\"Tekkekoey\";\"other\"\n\"738907\";\"Теккекей\";\"other\"\n\"738927\";\"Tekirdağ\";\"main\"\n\"738927\";\"Tekirdag\";\"ascii\"\n\"738927\";\"Bisanthe\";\"other\"\n\"738927\";\"Rhaedestus\";\"other\"\n\"738927\";\"Rodoscuk\";\"other\"\n\"738927\";\"Rodosto\";\"other\"\n\"738927\";\"Rodostó\";\"other\"\n\"738927\";\"Rodosçuk\";\"other\"\n\"738927\";\"Tekfur Dagh\";\"other\"\n\"738927\";\"Tekfurdag\";\"other\"\n\"738927\";\"Tekfurdağ\";\"other\"\n\"738927\";\"Tektur Dagh\";\"other\"\n\"738927\";\"Родосто\";\"other\"\n\"738927\";\"Текирдаг\";\"other\"\n\"738962\";\"Tavşanlı\";\"main\"\n\"738962\";\"Tavsanli\";\"ascii\"\n\"738965\";\"Tavşancıl\";\"main\"\n\"738965\";\"Tavsancil\";\"ascii\"\n\"738965\";\"Tavshanjik\";\"other\"\n\"738965\";\"Towshanjik\";\"other\"\n\"739015\";\"Taşova\";\"main\"\n\"739015\";\"Tasova\";\"ascii\"\n\"739015\";\"TASHOVA\";\"other\"\n\"739015\";\"Yemisenbuku\";\"other\"\n\"739015\";\"Yemişenbükü\";\"other\"\n\"739015\";\"ТАШОВА\";\"other\"\n\"739061\";\"Taşköprü\";\"main\"\n\"739061\";\"Taskopru\";\"ascii\"\n\"739067\";\"Taşköprü\";\"main\"\n\"739067\";\"Taskopru\";\"ascii\"\n\"739107\";\"Taraklı\";\"main\"\n\"739107\";\"Tarakli\";\"ascii\"\n\"739107\";\"traqly\";\"other\"\n\"739107\";\"طراقلی\";\"other\"\n\"739161\";\"Tacir\";\"main\"\n\"739161\";\"Tacir Koyu\";\"other\"\n\"739161\";\"Tacir Köyü\";\"other\"\n\"739201\";\"Susuz\";\"main\"\n\"739201\";\"Nevodobovka\";\"other\"\n\"739201\";\"Сусуз\";\"other\"\n\"739209\";\"Suşehri\";\"main\"\n\"739209\";\"Susehri\";\"ascii\"\n\"739209\";\"Endires\";\"other\"\n\"739209\";\"Endiryas\";\"other\"\n\"739209\";\"SUSHEKHRI\";\"other\"\n\"739209\";\"Susehiri\";\"other\"\n\"739209\";\"Suşehiri\";\"other\"\n\"739209\";\"СУШЕХРИ\";\"other\"\n\"739215\";\"Sürmene\";\"main\"\n\"739215\";\"Surmene\";\"ascii\"\n\"739215\";\"Hamurgan\";\"other\"\n\"739215\";\"Hamurgân\";\"other\"\n\"739215\";\"Homurgan\";\"other\"\n\"739215\";\"Humurgan\";\"other\"\n\"739215\";\"Humurgân\";\"other\"\n\"739215\";\"Kamurghia\";\"other\"\n\"739215\";\"SJURMENE\";\"other\"\n\"739215\";\"Suermene\";\"other\"\n\"739215\";\"СЮРМЕНЕ\";\"other\"\n\"739236\";\"Sungurlu\";\"main\"\n\"739236\";\"Сунгурлу\";\"other\"\n\"739251\";\"Suluova\";\"main\"\n\"739251\";\"Suluca\";\"other\"\n\"739318\";\"Sulakyurt\";\"main\"\n\"739318\";\"Konur\";\"other\"\n\"739318\";\"Sehsamikebir\";\"other\"\n\"739318\";\"Sulakujurt\";\"other\"\n\"739318\";\"Yukari Seyh Sami\";\"other\"\n\"739318\";\"Yukarı Şeyh Şamı\";\"other\"\n\"739318\";\"Şehşamıkebır\";\"other\"\n\"739318\";\"Сулакъюрт\";\"other\"\n\"739393\";\"Sölöz\";\"main\"\n\"739393\";\"Soloz\";\"ascii\"\n\"739393\";\"Muslimsoloz\";\"other\"\n\"739393\";\"Muslimsoluz\";\"other\"\n\"739393\";\"Muslumsoloz\";\"other\"\n\"739393\";\"Müslimsölöz\";\"other\"\n\"739393\";\"Müslimsölüz\";\"other\"\n\"739393\";\"Müslümsölöz\";\"other\"\n\"739393\";\"Sozlu\";\"other\"\n\"739393\";\"Sözlü\";\"other\"\n\"739425\";\"Söğütlü\";\"main\"\n\"739425\";\"Sogutlu\";\"ascii\"\n\"739574\";\"Şiran\";\"main\"\n\"739574\";\"Siran\";\"ascii\"\n\"739574\";\"Karaca\";\"other\"\n\"739574\";\"SHIRAN\";\"other\"\n\"739574\";\"ШИРАН\";\"other\"\n\"739600\";\"Sinop\";\"main\"\n\"739600\";\"Sanub\";\"other\"\n\"739600\";\"Sinob\";\"other\"\n\"739600\";\"Sinope\";\"other\"\n\"739600\";\"Sinub\";\"other\"\n\"739600\";\"Sınob\";\"other\"\n\"739600\";\"shinope\";\"other\"\n\"739600\";\"synwp\";\"other\"\n\"739600\";\"Σινώπη\";\"other\"\n\"739600\";\"Синоп\";\"other\"\n\"739600\";\"סינופ\";\"other\"\n\"739600\";\"シノペ\";\"other\"\n\"739634\";\"Silivri\";\"main\"\n\"739634\";\"Selymbria\";\"other\"\n\"739634\";\"Siliviri\";\"other\"\n\"739634\";\"slwry\";\"other\"\n\"739634\";\"slywry\";\"other\"\n\"739634\";\"سلوری\";\"other\"\n\"739634\";\"سلیوری\";\"other\"\n\"739636\";\"Şile\";\"main\"\n\"739636\";\"Sile\";\"ascii\"\n\"739636\";\"Artane\";\"other\"\n\"739636\";\"Chile\";\"other\"\n\"739636\";\"Kilia\";\"other\"\n\"739636\";\"Schile\";\"other\"\n\"739742\";\"Seydiler\";\"main\"\n\"739816\";\"Şenkaya\";\"main\"\n\"739816\";\"Senkaya\";\"ascii\"\n\"739816\";\"Ortulu\";\"other\"\n\"739816\";\"SHENKAJA\";\"other\"\n\"739816\";\"Örtülü\";\"other\"\n\"739816\";\"ШЕНКАЯ\";\"other\"\n\"739838\";\"Selimpaşa\";\"main\"\n\"739838\";\"Selimpasa\";\"ascii\"\n\"739838\";\"Bigados\";\"other\"\n\"739838\";\"Bigadoş\";\"other\"\n\"739838\";\"Boados\";\"other\"\n\"739838\";\"Boghados\";\"other\"\n\"739838\";\"Epivates\";\"other\"\n\"739847\";\"Selim\";\"main\"\n\"739847\";\"SELIM\";\"other\"\n\"739847\";\"СЕЛИМ\";\"other\"\n\"739914\";\"Şebinkarahisar\";\"main\"\n\"739914\";\"Sebinkarahisar\";\"ascii\"\n\"739914\";\"Colonia\";\"other\"\n\"739914\";\"Karahisar-i Sarki\";\"other\"\n\"739914\";\"Karahisar-ı Şarki\";\"other\"\n\"739914\";\"SHEBINKARAKHISAR\";\"other\"\n\"739914\";\"Sarki Karahissar\";\"other\"\n\"739914\";\"qrh hsar shrqy\";\"other\"\n\"739914\";\"Şarki Karahissar\";\"other\"\n\"739914\";\"ШЕБИНКАРАХИСАР\";\"other\"\n\"739914\";\"قره حصار شرقی\";\"other\"\n\"739917\";\"Seben\";\"main\"\n\"739917\";\"Carsamba\";\"other\"\n\"739917\";\"Carsanba\";\"other\"\n\"739917\";\"Seban\";\"other\"\n\"739917\";\"Çarsanba\";\"other\"\n\"739917\";\"Çarşamba\";\"other\"\n\"739950\";\"Şavşat\";\"main\"\n\"739950\";\"Savsat\";\"ascii\"\n\"739950\";\"SHAVSHAT\";\"other\"\n\"739950\";\"Yenikoy\";\"other\"\n\"739950\";\"Yeniköy\";\"other\"\n\"739950\";\"ШАВШАТ\";\"other\"\n\"740088\";\"Sarıkamış\";\"main\"\n\"740088\";\"Sarikamis\";\"ascii\"\n\"740088\";\"SARYKAMYSH\";\"other\"\n\"740088\";\"САРЫКАМЫШ\";\"other\"\n\"740125\";\"Sarıcakaya\";\"main\"\n\"740125\";\"Saricakaya\";\"ascii\"\n\"740125\";\"Sarikaya\";\"other\"\n\"740125\";\"Sarıkaya\";\"other\"\n\"740230\";\"Sapanca\";\"main\"\n\"740230\";\"Mudanya\";\"other\"\n\"740230\";\"Sabanca\";\"other\"\n\"740264\";\"Samsun\";\"main\"\n\"740264\";\"Amisus\";\"other\"\n\"740264\";\"Djanik\";\"other\"\n\"740264\";\"Janik\";\"other\"\n\"740264\";\"SAMSUN\";\"other\"\n\"740264\";\"Sampsounta\";\"other\"\n\"740264\";\"Sams\";\"other\"\n\"740264\";\"Samsoun\";\"other\"\n\"740264\";\"samusun\";\"other\"\n\"740264\";\"smswn\";\"other\"\n\"740264\";\"Σαμψούντα\";\"other\"\n\"740264\";\"САМСУН\";\"other\"\n\"740264\";\"Самсун\";\"other\"\n\"740264\";\"סמסון\";\"other\"\n\"740264\";\"サムスン\";\"other\"\n\"740303\";\"Şalpazarı\";\"main\"\n\"740303\";\"Salpazari\";\"ascii\"\n\"740303\";\"Kirec\";\"other\"\n\"740303\";\"Kireç\";\"other\"\n\"740430\";\"Safranbolu\";\"main\"\n\"740430\";\"Zafranboli\";\"other\"\n\"740430\";\"sprnbwlw\";\"other\"\n\"740430\";\"Сафранболу\";\"other\"\n\"740430\";\"ספרנבולו\";\"other\"\n\"740462\";\"Şabanözü\";\"main\"\n\"740462\";\"Sabanozu\";\"ascii\"\n\"740483\";\"Rize\";\"main\"\n\"740483\";\"Bechirias\";\"other\"\n\"740483\";\"Corum\";\"other\"\n\"740483\";\"Provinsi Rize\";\"other\"\n\"740483\";\"RIZE\";\"other\"\n\"740483\";\"Rhizus\";\"other\"\n\"740483\";\"Rizeh\";\"other\"\n\"740483\";\"Rizenska provincie\";\"other\"\n\"740483\";\"Rizenská provincie\";\"other\"\n\"740483\";\"rize\";\"other\"\n\"740483\";\"Çorum\";\"other\"\n\"740483\";\"РИЗЕ\";\"other\"\n\"740483\";\"რიზე\";\"other\"\n\"740531\";\"Posof\";\"main\"\n\"740531\";\"Digor\";\"other\"\n\"740531\";\"Dugur\";\"other\"\n\"740531\";\"Duğur\";\"other\"\n\"740531\";\"POSOF\";\"other\"\n\"740531\";\"ПОСОФ\";\"other\"\n\"740560\";\"Piraziz\";\"main\"\n\"740560\";\"Abdal\";\"other\"\n\"740560\";\"Apdal\";\"other\"\n\"740560\";\"Eren\";\"other\"\n\"740560\";\"Erenkoy\";\"other\"\n\"740560\";\"Erenkoyu\";\"other\"\n\"740560\";\"Erenköy\";\"other\"\n\"740560\";\"Erenköyü\";\"other\"\n\"740560\";\"Pirazziz\";\"other\"\n\"740561\";\"Nefsipiraziz\";\"main\"\n\"740561\";\"Piraziz\";\"other\"\n\"740561\";\"Пиразиз\";\"other\"\n\"740570\";\"Pınarhisar\";\"main\"\n\"740570\";\"Pinarhisar\";\"ascii\"\n\"740581\";\"Pınarbaşı\";\"main\"\n\"740581\";\"Pinarbasi\";\"ascii\"\n\"740581\";\"Tekkesin\";\"other\"\n\"740581\";\"Tekkeşin\";\"other\"\n\"740605\";\"Perşembe\";\"main\"\n\"740605\";\"Persembe\";\"ascii\"\n\"740605\";\"PERSHEMBE\";\"other\"\n\"740605\";\"Vona\";\"other\"\n\"740605\";\"ПЕРШЕМБЕ\";\"other\"\n\"740650\";\"Pehlivanköy\";\"main\"\n\"740650\";\"Pehlivankoy\";\"ascii\"\n\"740650\";\"Pavli\";\"other\"\n\"740659\";\"Pazaryolu\";\"main\"\n\"740659\";\"Pazarjolu\";\"other\"\n\"740659\";\"Пазарйолу\";\"other\"\n\"740675\";\"Pazar\";\"main\"\n\"740675\";\"Athenae\";\"other\"\n\"740675\";\"Atina\";\"other\"\n\"740675\";\"Buleb\";\"other\"\n\"740675\";\"Kizkalessi\";\"other\"\n\"740675\";\"PAZAR\";\"other\"\n\"740675\";\"ПАЗАР\";\"other\"\n\"740677\";\"Pazar\";\"main\"\n\"740677\";\"Пазар\";\"other\"\n\"740729\";\"Pamukova\";\"main\"\n\"740729\";\"Akhisar\";\"other\"\n\"740729\";\"Sakaryaakhisar\";\"other\"\n\"740729\";\"Sakaryaakhisari\";\"other\"\n\"740729\";\"Sakaryaakhisarı\";\"other\"\n\"740729\";\"Sakaryahisar\";\"other\"\n\"740729\";\"aqhsar\";\"other\"\n\"740729\";\"اقحصار\";\"other\"\n\"740881\";\"Osmaneli\";\"main\"\n\"740881\";\"Lefke\";\"other\"\n\"740883\";\"Osmancık\";\"main\"\n\"740883\";\"Osmancik\";\"ascii\"\n\"740883\";\"Pimolisa\";\"other\"\n\"740940\";\"Ortaköy\";\"main\"\n\"740940\";\"Ortakoy\";\"ascii\"\n\"740941\";\"Hemşin\";\"main\"\n\"740941\";\"Hemsin\";\"ascii\"\n\"740941\";\"Ortakoy\";\"other\"\n\"740941\";\"Ortaköy\";\"other\"\n\"740941\";\"Zugaortakoy\";\"other\"\n\"740941\";\"Zugaortaköy\";\"other\"\n\"741002\";\"Orta\";\"main\"\n\"741045\";\"Orhangazi\";\"main\"\n\"741045\";\"Pazarkoy\";\"other\"\n\"741045\";\"Pazarköy\";\"other\"\n\"741100\";\"Ordu\";\"main\"\n\"741100\";\"Cotyora\";\"other\"\n\"741100\";\"ORDU\";\"other\"\n\"741100\";\"ОРДУ\";\"other\"\n\"741136\";\"Olur\";\"main\"\n\"741136\";\"OLUR\";\"other\"\n\"741136\";\"Olor\";\"other\"\n\"741136\";\"ОЛУР\";\"other\"\n\"741160\";\"Oltu\";\"main\"\n\"741160\";\"OLTU\";\"other\"\n\"741160\";\"Olti\";\"other\"\n\"741160\";\"Olty\";\"other\"\n\"741160\";\"ОЛТУ\";\"other\"\n\"741240\";\"Of\";\"main\"\n\"741240\";\"OF\";\"other\"\n\"741240\";\"Off\";\"other\"\n\"741240\";\"Ophius\";\"other\"\n\"741240\";\"Solakli\";\"other\"\n\"741240\";\"Solaklı\";\"other\"\n\"741240\";\"Sulakli\";\"other\"\n\"741240\";\"Sulaklı\";\"other\"\n\"741240\";\"ОФ\";\"other\"\n\"741304\";\"Niksar\";\"main\"\n\"741304\";\"Cabeira\";\"other\"\n\"741304\";\"Diospolis\";\"other\"\n\"741304\";\"NIKSAR\";\"other\"\n\"741304\";\"Neocaesarea\";\"other\"\n\"741304\";\"Sebaste\";\"other\"\n\"741304\";\"НИКСАР\";\"other\"\n\"741330\";\"Narman\";\"main\"\n\"741330\";\"Id\";\"other\"\n\"741330\";\"İd\";\"other\"\n\"741335\";\"Narlıca\";\"main\"\n\"741335\";\"Narlica\";\"ascii\"\n\"741347\";\"Nallıhan\";\"main\"\n\"741347\";\"Nallihan\";\"ascii\"\n\"741484\";\"Mudurnu\";\"main\"\n\"741487\";\"Mudanya\";\"main\"\n\"741487\";\"Montagnae\";\"other\"\n\"741487\";\"Mudan'i\";\"other\"\n\"741487\";\"Mudania\";\"other\"\n\"741487\";\"Myrlea Apamea\";\"other\"\n\"741487\";\"Муданьи\";\"other\"\n\"741529\";\"Mimarsinan\";\"main\"\n\"741529\";\"Kalikratya\";\"other\"\n\"741529\";\"Мимарсинан\";\"other\"\n\"741538\";\"Mihalgazi\";\"main\"\n\"741538\";\"Gomele\";\"other\"\n\"741538\";\"Gumele\";\"other\"\n\"741538\";\"Gömele\";\"other\"\n\"741538\";\"Gümele\";\"other\"\n\"741570\";\"Mesudiye\";\"main\"\n\"741570\";\"Hamidiye\";\"other\"\n\"741570\";\"MESUDIE\";\"other\"\n\"741570\";\"Melet\";\"other\"\n\"741570\";\"МЕСУДИЕ\";\"other\"\n\"741609\";\"Merzifon\";\"main\"\n\"741609\";\"Marsivan\";\"other\"\n\"741609\";\"Phazemon\";\"other\"\n\"741609\";\"Мерзифон\";\"other\"\n\"741628\";\"Meriç\";\"main\"\n\"741628\";\"Meric\";\"ascii\"\n\"741628\";\"Buyuk Doganca\";\"other\"\n\"741628\";\"Büyük Doğanca\";\"other\"\n\"741628\";\"Doganca\";\"other\"\n\"741628\";\"Doğanca\";\"other\"\n\"741692\";\"Mecitözü\";\"main\"\n\"741692\";\"Mecitozu\";\"ascii\"\n\"741692\";\"Avukat Haci Koy\";\"other\"\n\"741692\";\"Avukat Hacı Köy\";\"other\"\n\"741692\";\"Hacikoey\";\"other\"\n\"741692\";\"Hacıköy\";\"other\"\n\"741692\";\"Mecidozu\";\"other\"\n\"741692\";\"Mecidözü\";\"other\"\n\"741725\";\"Marmaraereğlisi\";\"main\"\n\"741725\";\"Marmaraereglisi\";\"ascii\"\n\"741725\";\"Eregli\";\"other\"\n\"741725\";\"Erekli\";\"other\"\n\"741725\";\"Ereğli\";\"other\"\n\"741725\";\"Heraclea\";\"other\"\n\"741725\";\"Perinthus\";\"other\"\n\"741725\";\"arkly\";\"other\"\n\"741725\";\"ارکلی\";\"other\"\n\"741730\";\"Marmara\";\"main\"\n\"741737\";\"Manyas\";\"main\"\n\"741737\";\"Maltepe\";\"other\"\n\"741737\";\"Maltop\";\"other\"\n\"741771\";\"Malkara\";\"main\"\n\"741771\";\"Megalohora\";\"other\"\n\"741771\";\"Migalogora\";\"other\"\n\"741771\";\"Малкара\";\"other\"\n\"741850\";\"Maçka\";\"main\"\n\"741850\";\"Macka\";\"ascii\"\n\"741850\";\"Cevizlik\";\"other\"\n\"741850\";\"MACHKA\";\"other\"\n\"741850\";\"Matsouka\";\"other\"\n\"741850\";\"Tzevislik\";\"other\"\n\"741850\";\"Ματσούκα\";\"other\"\n\"741850\";\"Τζεβισλίκ\";\"other\"\n\"741850\";\"МАЧКА\";\"other\"\n\"741855\";\"Luleburgaz\";\"main\"\n\"741855\";\"Arcadiopolis\";\"other\"\n\"741855\";\"Bergula\";\"other\"\n\"741855\";\"Ljuleburgas\";\"other\"\n\"741855\";\"Ljuleburgaz\";\"other\"\n\"741855\";\"Lueleburgaz\";\"other\"\n\"741855\";\"Lule Burgas\";\"other\"\n\"741855\";\"Lüleburgaz\";\"other\"\n\"741855\";\"Люлебургаз\";\"other\"\n\"741855\";\"Люлебургас\";\"other\"\n\"741878\";\"Lâpseki\";\"main\"\n\"741878\";\"Lapseki\";\"ascii\"\n\"741878\";\"Lampsacus\";\"other\"\n\"741878\";\"Lampsaki\";\"other\"\n\"741884\";\"Lâlapaşa\";\"main\"\n\"741884\";\"Lalapasa\";\"ascii\"\n\"741892\";\"Ladik\";\"main\"\n\"741892\";\"Iladik\";\"other\"\n\"741892\";\"Laodicea Pontica\";\"other\"\n\"742095\";\"Kurucaşile\";\"main\"\n\"742095\";\"Kurucasile\";\"ascii\"\n\"742164\";\"Kurşunlu\";\"main\"\n\"742164\";\"Kursunlu\";\"ascii\"\n\"742164\";\"Karacaviran\";\"other\"\n\"742171\";\"Kurşunlu\";\"main\"\n\"742171\";\"Kursunlu\";\"ascii\"\n\"742189\";\"Küre\";\"main\"\n\"742189\";\"Kure\";\"ascii\"\n\"742238\";\"Kumru\";\"main\"\n\"742238\";\"KUMRU\";\"other\"\n\"742238\";\"Karacali\";\"other\"\n\"742238\";\"Karacalı\";\"other\"\n\"742238\";\"КУМРУ\";\"other\"\n\"742266\";\"Kumburgaz\";\"main\"\n\"742292\";\"Kullar\";\"main\"\n\"742348\";\"Küçükkumla\";\"main\"\n\"742348\";\"Kucukkumla\";\"ascii\"\n\"742348\";\"Kucukkumlu\";\"other\"\n\"742348\";\"Küçükkumlu\";\"other\"\n\"742499\";\"Koyulhisar\";\"main\"\n\"742499\";\"KOJUL'KHISAR\";\"other\"\n\"742499\";\"Koyunhisar\";\"other\"\n\"742499\";\"Misaz\";\"other\"\n\"742499\";\"Mişaz\";\"other\"\n\"742499\";\"КОЮЛЬХИСАР\";\"other\"\n\"742588\";\"Köseköy\";\"main\"\n\"742588\";\"Kosekoy\";\"ascii\"\n\"742588\";\"Kose\";\"other\"\n\"742588\";\"Köse\";\"other\"\n\"742606\";\"Köse\";\"main\"\n\"742606\";\"Kose\";\"ascii\"\n\"742617\";\"Koruköy\";\"main\"\n\"742617\";\"Korukoy\";\"ascii\"\n\"742617\";\"Koru\";\"other\"\n\"742617\";\"Koru Koyu\";\"other\"\n\"742617\";\"Koru Köyü\";\"other\"\n\"742617\";\"Kuru Kioi\";\"other\"\n\"742617\";\"Kuru Koru\";\"other\"\n\"742617\";\"Kuru Koyu\";\"other\"\n\"742617\";\"Kuru Körü\";\"other\"\n\"742617\";\"Kuru Köyü\";\"other\"\n\"742657\";\"Korgun\";\"main\"\n\"742657\";\"Korgan\";\"other\"\n\"742658\";\"Korgan\";\"main\"\n\"742658\";\"KORGAN\";\"other\"\n\"742658\";\"КОРГАН\";\"other\"\n\"742686\";\"Köprübaşı\";\"main\"\n\"742686\";\"Koprubasi\";\"ascii\"\n\"742686\";\"Sarki Gonesera\";\"other\"\n\"742686\";\"Sarki Gonesra\";\"other\"\n\"742686\";\"Sarkigunesera\";\"other\"\n\"742686\";\"Sarkigunesere\";\"other\"\n\"742686\";\"Şarki Göneşra\";\"other\"\n\"742686\";\"Şarkigüneşera\";\"other\"\n\"742686\";\"Şarkigüneşere\";\"other\"\n\"742686\";\"Şarkî Goneşera\";\"other\"\n\"742794\";\"Kofçaz\";\"main\"\n\"742794\";\"Kofcaz\";\"ascii\"\n\"742794\";\"Kesirlik\";\"other\"\n\"742794\";\"Keşirlik\";\"other\"\n\"742794\";\"Kofcagiz\";\"other\"\n\"742794\";\"Kofçağız\";\"other\"\n\"742875\";\"Kocadere\";\"main\"\n\"742875\";\"Asagi Kocadere\";\"other\"\n\"742875\";\"Asagı Kocadere\";\"other\"\n\"742902\";\"Kocaali\";\"main\"\n\"742902\";\"Kocali\";\"other\"\n\"742902\";\"Kocalı\";\"other\"\n\"742902\";\"Yukari Kocaali\";\"other\"\n\"742902\";\"Yukarı Kocaali\";\"other\"\n\"742987\";\"Kızılırmak\";\"main\"\n\"742987\";\"Kizilirmak\";\"ascii\"\n\"742987\";\"Huseyinli\";\"other\"\n\"742987\";\"Hüseyinli\";\"other\"\n\"743051\";\"Kızılcahamam\";\"main\"\n\"743051\";\"Kizilcahamam\";\"ascii\"\n\"743051\";\"Kizicahamam\";\"other\"\n\"743051\";\"Kızıcahamam\";\"other\"\n\"743051\";\"Yabanabat\";\"other\"\n\"743166\";\"Kırklareli\";\"main\"\n\"743166\";\"Kirklareli\";\"ascii\"\n\"743166\";\"Kirk Kilise\";\"other\"\n\"743166\";\"Kirk Kilisse\";\"other\"\n\"743166\";\"Kirk-Kilissa\";\"other\"\n\"743166\";\"Lozen\";\"other\"\n\"743166\";\"Lozengrad\";\"other\"\n\"743166\";\"Saranta Ekklesiai\";\"other\"\n\"743166\";\"Saranta Ekklēsiai\";\"other\"\n\"743166\";\"Κιρκλαρελί\";\"other\"\n\"743166\";\"Лозенград\";\"other\"\n\"743256\";\"Kirazlı\";\"main\"\n\"743256\";\"Kirazli\";\"ascii\"\n\"743382\";\"Kıbrıscık\";\"main\"\n\"743382\";\"Kibriscik\";\"ascii\"\n\"743382\";\"Karadogan\";\"other\"\n\"743382\";\"Karadoğan\";\"other\"\n\"743404\";\"Kestel\";\"main\"\n\"743438\";\"Keşap\";\"main\"\n\"743438\";\"Kesap\";\"ascii\"\n\"743438\";\"KESHAP\";\"other\"\n\"743438\";\"КЕШАП\";\"other\"\n\"743439\";\"Keşan\";\"main\"\n\"743439\";\"Kesan\";\"ascii\"\n\"743439\";\"Keshan\";\"other\"\n\"743439\";\"Кешан\";\"other\"\n\"743537\";\"Kelkit\";\"main\"\n\"743537\";\"Ciftlik\";\"other\"\n\"743537\";\"KEL'KIT\";\"other\"\n\"743537\";\"klkyt\";\"other\"\n\"743537\";\"Çiftlik\";\"other\"\n\"743537\";\"КЕЛЬКИТ\";\"other\"\n\"743537\";\"کلکیت\";\"other\"\n\"743615\";\"Kazan\";\"main\"\n\"743616\";\"Kaytazdere\";\"main\"\n\"743633\";\"Kaynarca\";\"main\"\n\"743633\";\"Kucuk Kaynarca\";\"other\"\n\"743633\";\"Küçük Kaynarca\";\"other\"\n\"743633\";\"Seyhler\";\"other\"\n\"743633\";\"Seyhlue\";\"other\"\n\"743633\";\"Şeyhler\";\"other\"\n\"743633\";\"Şeyhlü\";\"other\"\n\"743818\";\"Kavaklı\";\"main\"\n\"743818\";\"Kavakli\";\"ascii\"\n\"743818\";\"Fetekoy\";\"other\"\n\"743818\";\"Feteköy\";\"other\"\n\"743818\";\"Kavakly\";\"other\"\n\"743818\";\"Каваклы\";\"other\"\n\"743851\";\"Kavak\";\"main\"\n\"743851\";\"KAVAK\";\"other\"\n\"743851\";\"КАВАК\";\"other\"\n\"743882\";\"Kastamonu\";\"main\"\n\"743882\";\"Castamon\";\"other\"\n\"743882\";\"Castamoni\";\"other\"\n\"743882\";\"Castamuni\";\"other\"\n\"743882\";\"Kastambul\";\"other\"\n\"743882\";\"Kastamouni\";\"other\"\n\"743882\";\"Kastamuni\";\"other\"\n\"743882\";\"Kastamuniyah\";\"other\"\n\"743882\";\"Qastamuni\";\"other\"\n\"743882\";\"Кастамону\";\"other\"\n\"743952\";\"Kars\";\"main\"\n\"743952\";\"Cars\";\"other\"\n\"743952\";\"KARS\";\"other\"\n\"743952\";\"Kapc\";\"other\"\n\"743952\";\"Qars\";\"other\"\n\"743952\";\"Qers\";\"other\"\n\"743952\";\"Vanand\";\"other\"\n\"743952\";\"karusu\";\"other\"\n\"743952\";\"qars\";\"other\"\n\"743952\";\"КАРС\";\"other\"\n\"743952\";\"Карс\";\"other\"\n\"743952\";\"قارص\";\"other\"\n\"743952\";\"ყარსი\";\"other\"\n\"743952\";\"カルス\";\"other\"\n\"744093\";\"Karasu\";\"main\"\n\"744093\";\"Aksu\";\"other\"\n\"744093\";\"Карасу\";\"other\"\n\"744110\";\"Karapürçek\";\"main\"\n\"744110\";\"Karapurcek\";\"ascii\"\n\"744168\";\"Karamürsel\";\"main\"\n\"744168\";\"Karamursel\";\"ascii\"\n\"744168\";\"Karamusal\";\"other\"\n\"744514\";\"Karacaköy\";\"main\"\n\"744514\";\"Karacakoy\";\"ascii\"\n\"744537\";\"Karacabey\";\"main\"\n\"744537\";\"Karadzhabej\";\"other\"\n\"744537\";\"Mihalic\";\"other\"\n\"744537\";\"Mihaliç\";\"other\"\n\"744537\";\"Miletopolis\";\"other\"\n\"744537\";\"Muhalich\";\"other\"\n\"744537\";\"Караджабей\";\"other\"\n\"744562\";\"Karabük\";\"main\"\n\"744562\";\"Karabuk\";\"ascii\"\n\"744562\";\"Karabuek\";\"other\"\n\"744562\";\"Karabuek Province\";\"other\"\n\"744562\";\"Karabük Province\";\"other\"\n\"744562\";\"Provincia de Karabuek\";\"other\"\n\"744562\";\"Provincia de Karabük\";\"other\"\n\"744562\";\"Provinsi Karabuek\";\"other\"\n\"744562\";\"Provinsi Karabük\";\"other\"\n\"744562\";\"ka la bi ke sheng\";\"other\"\n\"744562\";\"卡拉比克省\";\"other\"\n\"744716\";\"Kandıra\";\"main\"\n\"744716\";\"Kandira\";\"ascii\"\n\"744767\";\"Kalkandere\";\"main\"\n\"744767\";\"Karadere\";\"other\"\n\"744767\";\"Medrese\";\"other\"\n\"744767\";\"Медресе\";\"other\"\n\"744814\";\"Kalecik\";\"main\"\n\"744873\";\"Kağızman\";\"main\"\n\"744873\";\"Kagizman\";\"ascii\"\n\"744873\";\"KAGYZMAN\";\"other\"\n\"744873\";\"КАГЫЗМАН\";\"other\"\n\"744926\";\"Kadıköy\";\"main\"\n\"744926\";\"Kadikoy\";\"ascii\"\n\"744958\";\"Kabataş\";\"main\"\n\"744958\";\"Kabatas\";\"ascii\"\n\"744958\";\"Karay\";\"other\"\n\"745007\";\"Kabadüz\";\"main\"\n\"745007\";\"Kabaduz\";\"ascii\"\n\"745007\";\"Kabadjuz\";\"other\"\n\"745007\";\"Kabaduez\";\"other\"\n\"745007\";\"Кабадюз\";\"other\"\n\"745026\";\"İznik\";\"main\"\n\"745026\";\"Iznik\";\"ascii\"\n\"745026\";\"Isnik\";\"other\"\n\"745026\";\"Nicaea\";\"other\"\n\"745026\";\"Nicea\";\"other\"\n\"745026\";\"Nicee\";\"other\"\n\"745026\";\"Nicée\";\"other\"\n\"745026\";\"Nikaia\";\"other\"\n\"745026\";\"izuniku\";\"other\"\n\"745026\";\"nikaia\";\"other\"\n\"745026\";\"Изник\";\"other\"\n\"745026\";\"イズニク\";\"other\"\n\"745026\";\"ニカイア\";\"other\"\n\"745028\";\"İzmit\";\"main\"\n\"745028\";\"Izmit\";\"ascii\"\n\"745028\";\"Astacus\";\"other\"\n\"745028\";\"Cocaeli\";\"other\"\n\"745028\";\"Ismid\";\"other\"\n\"745028\";\"Ismit\";\"other\"\n\"745028\";\"Isnimid\";\"other\"\n\"745028\";\"Izmid\";\"other\"\n\"745028\";\"Kocaeli\";\"other\"\n\"745028\";\"Kodja-Eli\";\"other\"\n\"745028\";\"Kodzhaehli\";\"other\"\n\"745028\";\"Koja-Ili\";\"other\"\n\"745028\";\"Nicomedia\";\"other\"\n\"745028\";\"Nikomedeia\";\"other\"\n\"745028\";\"izumitto\";\"other\"\n\"745028\";\"yi zi mi te\";\"other\"\n\"745028\";\"Коджаэли\";\"other\"\n\"745028\";\"イズミット\";\"other\"\n\"745028\";\"伊兹密特\";\"other\"\n\"745030\";\"İyidere\";\"main\"\n\"745030\";\"Iyidere\";\"ascii\"\n\"745030\";\"Ficibasi\";\"other\"\n\"745030\";\"Ficitasi\";\"other\"\n\"745030\";\"Fıçıbaşı\";\"other\"\n\"745030\";\"Fıçıtaşı\";\"other\"\n\"745044\";\"İstanbul\";\"main\"\n\"745044\";\"Istanbul\";\"ascii\"\n\"745044\";\"Bizanc\";\"other\"\n\"745044\";\"Bizánc\";\"other\"\n\"745044\";\"Byzance\";\"other\"\n\"745044\";\"Byzantio\";\"other\"\n\"745044\";\"Byzantion\";\"other\"\n\"745044\";\"Byzantium\";\"other\"\n\"745044\";\"Byzanz\";\"other\"\n\"745044\";\"Constantinoble\";\"other\"\n\"745044\";\"Constantinopla\";\"other\"\n\"745044\";\"Constantinople\";\"other\"\n\"745044\";\"Constantinopoli\";\"other\"\n\"745044\";\"Constantinopolis\";\"other\"\n\"745044\";\"Estambul\";\"other\"\n\"745044\";\"Istamboul\";\"other\"\n\"745044\";\"Istambul\";\"other\"\n\"745044\";\"Istambuł\";\"other\"\n\"745044\";\"Istampoul\";\"other\"\n\"745044\";\"Istanbúl\";\"other\"\n\"745044\";\"Isztambul\";\"other\"\n\"745044\";\"Konstantinapoly\";\"other\"\n\"745044\";\"Konstantinopel\";\"other\"\n\"745044\";\"Konstantinopolo\";\"other\"\n\"745044\";\"Konstantinoupole\";\"other\"\n\"745044\";\"Konstantinoupoli\";\"other\"\n\"745044\";\"Konstantinoupolis\";\"other\"\n\"745044\";\"Konstantinápoly\";\"other\"\n\"745044\";\"Kustantiniyah\";\"other\"\n\"745044\";\"Micklagard\";\"other\"\n\"745044\";\"Micklagård\";\"other\"\n\"745044\";\"Mikligardur\";\"other\"\n\"745044\";\"Mikligarður\";\"other\"\n\"745044\";\"Stamboul\";\"other\"\n\"745044\";\"Stambul\";\"other\"\n\"745044\";\"Stambuł\";\"other\"\n\"745044\";\"Tsarigrad\";\"other\"\n\"745044\";\"Vizantija\";\"other\"\n\"745044\";\"Vyzantio\";\"other\"\n\"745044\";\"bijantion\";\"other\"\n\"745044\";\"byuzantion\";\"other\"\n\"745044\";\"byzntywn\";\"other\"\n\"745044\";\"isutanburu\";\"other\"\n\"745044\";\"Βυζάντιο\";\"other\"\n\"745044\";\"Βυζαντιο\";\"other\"\n\"745044\";\"Ισταμπουλ\";\"other\"\n\"745044\";\"Ισταμπούλ\";\"other\"\n\"745044\";\"Κωνσταντινουπολη\";\"other\"\n\"745044\";\"Κωνσταντινούπολη\";\"other\"\n\"745044\";\"Византија\";\"other\"\n\"745044\";\"Истанбул\";\"other\"\n\"745044\";\"Стамбул\";\"other\"\n\"745044\";\"ביזנטיון\";\"other\"\n\"745044\";\"イスタンブール\";\"other\"\n\"745044\";\"ビュザンティオン\";\"other\"\n\"745044\";\"비잔티온\";\"other\"\n\"745047\";\"İspir\";\"main\"\n\"745047\";\"Ispir\";\"ascii\"\n\"745047\";\"ISPIR\";\"other\"\n\"745047\";\"ИСПИР\";\"other\"\n\"745076\";\"İskilip\";\"main\"\n\"745076\";\"Iskilip\";\"ascii\"\n\"745076\";\"Andrapa\";\"other\"\n\"745076\";\"Iskelib\";\"other\"\n\"745076\";\"Neapolis\";\"other\"\n\"745076\";\"Neoclaudiopolis\";\"other\"\n\"745148\";\"İpsala\";\"main\"\n\"745148\";\"Ipsala\";\"ascii\"\n\"745164\";\"İnhisar\";\"main\"\n\"745164\";\"Inhisar\";\"ascii\"\n\"745169\";\"İnegöl\";\"main\"\n\"745169\";\"Inegol\";\"ascii\"\n\"745169\";\"Inegeul\";\"other\"\n\"745169\";\"Inegoel\";\"other\"\n\"745175\";\"İnebolu\";\"main\"\n\"745175\";\"Inebolu\";\"ascii\"\n\"745175\";\"Abonutichus\";\"other\"\n\"745175\";\"Ineboli\";\"other\"\n\"745175\";\"Inebolua\";\"other\"\n\"745175\";\"Ionopolis\";\"other\"\n\"745175\";\"Niopoli\";\"other\"\n\"745175\";\"Niopolis\";\"other\"\n\"745260\";\"Gökçeada\";\"main\"\n\"745260\";\"Gokceada\";\"ascii\"\n\"745260\";\"Gokce\";\"other\"\n\"745260\";\"Gökçe\";\"other\"\n\"745260\";\"Imroz\";\"other\"\n\"745260\";\"Panagia\";\"other\"\n\"745260\";\"İmroz\";\"other\"\n\"745344\";\"Ilgaz\";\"main\"\n\"745344\";\"Kochisarbala\";\"other\"\n\"745344\";\"Kochisaribala\";\"other\"\n\"745344\";\"Koçhisarbalâ\";\"other\"\n\"745344\";\"Koçhisarıbala\";\"other\"\n\"745362\";\"İkizdere\";\"main\"\n\"745362\";\"Ikizdere\";\"ascii\"\n\"745362\";\"Cagiran Kaya\";\"other\"\n\"745362\";\"Cagrankaya\";\"other\"\n\"745362\";\"Cağrankaya\";\"other\"\n\"745362\";\"Cağıran Kaya\";\"other\"\n\"745362\";\"IKIZDERE\";\"other\"\n\"745362\";\"Kurai Seba\";\"other\"\n\"745362\";\"Kurayisab\\\"a\";\"other\"\n\"745362\";\"Kuraysaba\";\"other\"\n\"745362\";\"Kurayısab”a\";\"other\"\n\"745362\";\"Kureiseba\";\"other\"\n\"745362\";\"Kurreiseba\";\"other\"\n\"745362\";\"Küreiseba\";\"other\"\n\"745362\";\"Kürreiseba\";\"other\"\n\"745362\";\"ИКИЗДЕРЕ\";\"other\"\n\"745364\";\"İkizce\";\"main\"\n\"745364\";\"Ikizce\";\"ascii\"\n\"745364\";\"Lalelimaabeyceli\";\"other\"\n\"745364\";\"Lalelimabeyceli\";\"other\"\n\"745364\";\"Lâlelimaabeyceli\";\"other\"\n\"745383\";\"İhsaniye\";\"main\"\n\"745383\";\"Ihsaniye\";\"ascii\"\n\"745387\";\"İhsangazi\";\"main\"\n\"745387\";\"Ihsangazi\";\"ascii\"\n\"745387\";\"Merguze\";\"other\"\n\"745387\";\"Mergüze\";\"other\"\n\"745527\";\"Horasan\";\"main\"\n\"745527\";\"KHORASAN\";\"other\"\n\"745527\";\"ХОРАСАН\";\"other\"\n\"745530\";\"Hopa\";\"main\"\n\"745530\";\"Apsarus\";\"other\"\n\"745530\";\"KHOPA\";\"other\"\n\"745530\";\"Khoppa\";\"other\"\n\"745530\";\"ХОПА\";\"other\"\n\"745664\";\"Hendek\";\"main\"\n\"745664\";\"Khandak\";\"other\"\n\"745665\";\"Nurluca\";\"main\"\n\"745693\";\"Hayrat\";\"main\"\n\"745693\";\"Gunesalan\";\"other\"\n\"745693\";\"Güneşalan\";\"other\"\n\"745693\";\"Nefsihundez\";\"other\"\n\"745693\";\"Nefsihündez\";\"other\"\n\"745697\";\"Hayrabolu\";\"main\"\n\"745714\";\"Havza\";\"main\"\n\"745714\";\"Khavza\";\"other\"\n\"745714\";\"Thermae Phazemonitarum\";\"other\"\n\"745714\";\"Хавза\";\"other\"\n\"745719\";\"Havsa\";\"main\"\n\"745719\";\"Hafsa\";\"other\"\n\"745884\";\"Hanönü\";\"main\"\n\"745884\";\"Hanonu\";\"ascii\"\n\"745884\";\"Gokceagac\";\"other\"\n\"745884\";\"Gökçeağaç\";\"other\"\n\"745903\";\"Hanak\";\"main\"\n\"745903\";\"KHANAK\";\"other\"\n\"745903\";\"Ortahanak\";\"other\"\n\"745903\";\"ХАНАК\";\"other\"\n\"745922\";\"Hamzabey\";\"main\"\n\"745954\";\"Hamamözü\";\"main\"\n\"745954\";\"Hamamozu\";\"ascii\"\n\"746232\";\"Gürsu\";\"main\"\n\"746232\";\"Gursu\";\"ascii\"\n\"746234\";\"Gürpınar\";\"main\"\n\"746234\";\"Gurpinar\";\"ascii\"\n\"746234\";\"Anarsa\";\"other\"\n\"746234\";\"Anarşa\";\"other\"\n\"746234\";\"Gjurpynar\";\"other\"\n\"746234\";\"Гюрпынар\";\"other\"\n\"746252\";\"Gürgentepe\";\"main\"\n\"746252\";\"Gurgentepe\";\"ascii\"\n\"746252\";\"Akmescit\";\"other\"\n\"746308\";\"Güneysu\";\"main\"\n\"746308\";\"Guneysu\";\"ascii\"\n\"746308\";\"Ulucami\";\"other\"\n\"746425\";\"Gümüşhane\";\"main\"\n\"746425\";\"Gumushane\";\"ascii\"\n\"746425\";\"GJUMJUSHANE\";\"other\"\n\"746425\";\"Guemueshane\";\"other\"\n\"746425\";\"Gumusane\";\"other\"\n\"746425\";\"Gumushkhane\";\"other\"\n\"746425\";\"Gümüşane\";\"other\"\n\"746425\";\"ГЮМЮШАНЕ\";\"other\"\n\"746426\";\"Gümüşhacıköy\";\"main\"\n\"746426\";\"Gumushacikoy\";\"ascii\"\n\"746426\";\"Hacikoey\";\"other\"\n\"746426\";\"Hacıköy\";\"other\"\n\"746426\";\"hajy kwy\";\"other\"\n\"746426\";\"حاجی کوی\";\"other\"\n\"746497\";\"Güdül\";\"main\"\n\"746497\";\"Gudul\";\"ascii\"\n\"746497\";\"Godul\";\"other\"\n\"746497\";\"Gödul\";\"other\"\n\"746546\";\"Göynük\";\"main\"\n\"746546\";\"Goynuk\";\"ascii\"\n\"746546\";\"Torbali\";\"other\"\n\"746546\";\"Torbalı\";\"other\"\n\"746547\";\"Göynücek\";\"main\"\n\"746547\";\"Goynucek\";\"ascii\"\n\"746565\";\"Görele\";\"main\"\n\"746565\";\"Gorele\";\"ascii\"\n\"746565\";\"Elehu\";\"other\"\n\"746565\";\"Elevi\";\"other\"\n\"746565\";\"GERELE\";\"other\"\n\"746565\";\"Goerele\";\"other\"\n\"746565\";\"Gurele\";\"other\"\n\"746565\";\"Gürele\";\"other\"\n\"746565\";\"Philocalia\";\"other\"\n\"746565\";\"ГЕРЕЛЕ\";\"other\"\n\"746574\";\"Gönen\";\"main\"\n\"746574\";\"Gonen\";\"ascii\"\n\"746574\";\"Gonan\";\"other\"\n\"746574\";\"Gönan\";\"other\"\n\"746574\";\"Гонен\";\"other\"\n\"746602\";\"Gölpazarı\";\"main\"\n\"746602\";\"Golpazari\";\"ascii\"\n\"746603\";\"Gölova\";\"main\"\n\"746603\";\"Golova\";\"ascii\"\n\"746603\";\"Agvanis\";\"other\"\n\"746603\";\"Ağvanis\";\"other\"\n\"746603\";\"Goelova\";\"other\"\n\"746603\";\"Агванис\";\"other\"\n\"746611\";\"Göllüce\";\"main\"\n\"746611\";\"Golluce\";\"ascii\"\n\"746611\";\"Balarim\";\"other\"\n\"746611\";\"Balarin\";\"other\"\n\"746611\";\"Baların\";\"other\"\n\"746643\";\"Göle\";\"main\"\n\"746643\";\"Gole\";\"ascii\"\n\"746643\";\"Merdenek\";\"other\"\n\"746643\";\"Merdenik\";\"other\"\n\"746643\";\"Merdinik\";\"other\"\n\"746666\";\"Gölcük\";\"main\"\n\"746666\";\"Golcuk\";\"ascii\"\n\"746666\";\"Geulzuk\";\"other\"\n\"746712\";\"Murgul\";\"main\"\n\"746712\";\"Gektash\";\"other\"\n\"746712\";\"Goktas\";\"other\"\n\"746712\";\"Göktaş\";\"other\"\n\"746712\";\"Гекташ\";\"other\"\n\"746712\";\"Мургул\";\"other\"\n\"746821\";\"Gökçebey\";\"main\"\n\"746821\";\"Gokcebey\";\"ascii\"\n\"746821\";\"Tefen\";\"other\"\n\"746881\";\"Giresun\";\"main\"\n\"746881\";\"Cerasus\";\"other\"\n\"746881\";\"Choerades\";\"other\"\n\"746881\";\"GIRESUN\";\"other\"\n\"746881\";\"Gireson\";\"other\"\n\"746881\";\"Kerasounta\";\"other\"\n\"746881\";\"Kerassunde\";\"other\"\n\"746881\";\"Kerasunda\";\"other\"\n\"746881\";\"Kerasunt\";\"other\"\n\"746881\";\"Kiresun\";\"other\"\n\"746881\";\"Pharnacia\";\"other\"\n\"746881\";\"Κερασούντα\";\"other\"\n\"746881\";\"ГИРЕСУН\";\"other\"\n\"746898\";\"Geyve\";\"main\"\n\"746898\";\"Geiveh\";\"other\"\n\"746898\";\"Tottaeum\";\"other\"\n\"746898\";\"kywh\";\"other\"\n\"746898\";\"کیوه\";\"other\"\n\"746913\";\"Gerze\";\"main\"\n\"746913\";\"Carusa\";\"other\"\n\"746913\";\"Gherseh\";\"other\"\n\"746913\";\"Gherzeh\";\"other\"\n\"746940\";\"Gerede\";\"main\"\n\"746940\";\"Crateia Flaviopolis\";\"other\"\n\"746940\";\"Geredeh\";\"other\"\n\"746940\";\"Гереде\";\"other\"\n\"746958\";\"Gemlik\";\"main\"\n\"746958\";\"Cius\";\"other\"\n\"746958\";\"Kios\";\"other\"\n\"746958\";\"Kiye\";\"other\"\n\"746958\";\"Гемлик\";\"other\"\n\"746983\";\"Gelibolu\";\"main\"\n\"746983\";\"Callipolis\";\"other\"\n\"746983\";\"Gallipoli\";\"other\"\n\"746983\";\"Guelibolou\";\"other\"\n\"746983\";\"Guélibolou\";\"other\"\n\"746983\";\"Kallipolis\";\"other\"\n\"746983\";\"Гелиболу\";\"other\"\n\"747014\";\"Gebze\";\"main\"\n\"747014\";\"Guebze\";\"other\"\n\"747014\";\"kkbwzh\";\"other\"\n\"747014\";\"Гебзе\";\"other\"\n\"747014\";\"ککبوزه\";\"other\"\n\"747090\";\"Fındıklı\";\"main\"\n\"747090\";\"Findikli\";\"ascii\"\n\"747090\";\"Gavra\";\"other\"\n\"747135\";\"Ferizli\";\"main\"\n\"747155\";\"Fatsa\";\"main\"\n\"747155\";\"FATSA\";\"other\"\n\"747155\";\"Fatisa\";\"other\"\n\"747155\";\"Fatseh\";\"other\"\n\"747155\";\"Fatza\";\"other\"\n\"747155\";\"Phadisana\";\"other\"\n\"747155\";\"Phadısana\";\"other\"\n\"747155\";\"Polemonium\";\"other\"\n\"747155\";\"Side\";\"other\"\n\"747155\";\"ФАТСА\";\"other\"\n\"747191\";\"Eynesil\";\"main\"\n\"747191\";\"Dereishakli\";\"other\"\n\"747191\";\"Dereishaklı\";\"other\"\n\"747191\";\"Deresakli\";\"other\"\n\"747191\";\"Deresaklı\";\"other\"\n\"747191\";\"EHJNESIL'\";\"other\"\n\"747191\";\"ЭЙНЕСИЛЬ\";\"other\"\n\"747217\";\"Evren\";\"main\"\n\"747217\";\"Sefker\";\"other\"\n\"747217\";\"Sevker\";\"other\"\n\"747217\";\"Sofker\";\"other\"\n\"747217\";\"Söfker\";\"other\"\n\"747263\";\"Eskipazar\";\"main\"\n\"747323\";\"Esenyurt\";\"main\"\n\"747323\";\"Eksinoz\";\"other\"\n\"747323\";\"Ekşinoz\";\"other\"\n\"747323\";\"Eskiyuz\";\"other\"\n\"747323\";\"Eskiyüz\";\"other\"\n\"747449\";\"Erfelek\";\"main\"\n\"747449\";\"Karasu\";\"other\"\n\"747449\";\"Salavat\";\"other\"\n\"747471\";\"Ereğli\";\"main\"\n\"747471\";\"Eregli\";\"ascii\"\n\"747471\";\"Bender Erekli\";\"other\"\n\"747471\";\"Bender-Eregli\";\"other\"\n\"747471\";\"Bender-Ereğli\";\"other\"\n\"747471\";\"Ehregli\";\"other\"\n\"747471\";\"Erekli\";\"other\"\n\"747471\";\"Ergeli\";\"other\"\n\"747471\";\"Heraclea Pontica\";\"other\"\n\"747471\";\"Heraklea\";\"other\"\n\"747471\";\"Karadenizereglisi\";\"other\"\n\"747471\";\"Karadenizereğlisi\";\"other\"\n\"747471\";\"Эрегли\";\"other\"\n\"747482\";\"Erdek\";\"main\"\n\"747482\";\"Artace\";\"other\"\n\"747482\";\"Artaki\";\"other\"\n\"747482\";\"Erdeku\";\"other\"\n\"747482\";\"ardk\";\"other\"\n\"747482\";\"اردک\";\"other\"\n\"747489\";\"Erbaa\";\"main\"\n\"747489\";\"EHRBA\";\"other\"\n\"747489\";\"Herek\";\"other\"\n\"747489\";\"ЭРБА\";\"other\"\n\"747503\";\"Enez\";\"main\"\n\"747503\";\"Aenus\";\"other\"\n\"747503\";\"Aynos\";\"other\"\n\"747503\";\"Enos\";\"other\"\n\"747618\";\"Eldivan\";\"main\"\n\"747618\";\"Dumeli\";\"other\"\n\"747618\";\"Dumeli Kasabasi\";\"other\"\n\"747618\";\"Dümeli\";\"other\"\n\"747618\";\"Dümeli Kasabası\";\"other\"\n\"747630\";\"Elbeyli\";\"main\"\n\"747705\";\"Eflâni\";\"main\"\n\"747705\";\"Eflani\";\"ascii\"\n\"747705\";\"Celebiler\";\"other\"\n\"747705\";\"Çelebiler\";\"other\"\n\"747712\";\"Edirne\";\"main\"\n\"747712\";\"Adrianopel\";\"other\"\n\"747712\";\"Adrianople\";\"other\"\n\"747712\";\"Adrianopol\";\"other\"\n\"747712\";\"Adrianopoli\";\"other\"\n\"747712\";\"Adrianopolis\";\"other\"\n\"747712\";\"Adrianoupolis\";\"other\"\n\"747712\";\"Adrianòpolis\";\"other\"\n\"747712\";\"Adrinople\";\"other\"\n\"747712\";\"Drinapoly\";\"other\"\n\"747712\";\"Drinápoly\";\"other\"\n\"747712\";\"Ederne\";\"other\"\n\"747712\";\"Ederné\";\"other\"\n\"747712\";\"Ehdirne\";\"other\"\n\"747712\";\"Hadrianople\";\"other\"\n\"747712\";\"Hadrianopolis\";\"other\"\n\"747712\";\"Odrin\";\"other\"\n\"747712\";\"adrnt\";\"other\"\n\"747712\";\"edirune\";\"other\"\n\"747712\";\"Ədirnə\";\"other\"\n\"747712\";\"Одрин\";\"other\"\n\"747712\";\"Эдирне\";\"other\"\n\"747712\";\"أدرنة\";\"other\"\n\"747712\";\"エディルネ\";\"other\"\n\"747728\";\"Eceabat\";\"main\"\n\"747728\";\"Acaabat\";\"other\"\n\"747728\";\"Açaabat\";\"other\"\n\"747728\";\"Madytus\";\"other\"\n\"747728\";\"Maidos\";\"other\"\n\"747728\";\"Maitos\";\"other\"\n\"747728\";\"Maydos\";\"other\"\n\"747751\";\"Düzköy\";\"main\"\n\"747751\";\"Duzkoy\";\"ascii\"\n\"747764\";\"Düzce\";\"main\"\n\"747764\";\"Duzce\";\"ascii\"\n\"747764\";\"Dusje\";\"other\"\n\"747764\";\"Duzdje\";\"other\"\n\"747793\";\"Durusu\";\"main\"\n\"747793\";\"Terkos\";\"other\"\n\"747826\";\"Durağan\";\"main\"\n\"747826\";\"Duragan\";\"ascii\"\n\"747899\";\"Dörtdivan\";\"main\"\n\"747899\";\"Dortdivan\";\"ascii\"\n\"747899\";\"Cavuslar\";\"other\"\n\"747899\";\"Çavuşlar\";\"other\"\n\"747912\";\"Döngel\";\"main\"\n\"747912\";\"Dongel\";\"ascii\"\n\"747978\";\"Doğanyurt\";\"main\"\n\"747978\";\"Doganyurt\";\"ascii\"\n\"747978\";\"Doganujurt\";\"other\"\n\"747978\";\"Hosalay\";\"other\"\n\"747978\";\"Hoşalay\";\"other\"\n\"747978\";\"Meset\";\"other\"\n\"747978\";\"Доганъюрт\";\"other\"\n\"747986\";\"Doğanşar\";\"main\"\n\"747986\";\"Dogansar\";\"ascii\"\n\"747986\";\"Doganshar\";\"other\"\n\"747986\";\"Ipsala\";\"other\"\n\"747986\";\"Ipsile\";\"other\"\n\"747986\";\"Ipsili\";\"other\"\n\"747986\";\"Tozanli\";\"other\"\n\"747986\";\"Tozanlı\";\"other\"\n\"747986\";\"Tozonli\";\"other\"\n\"747986\";\"Tozonlı\";\"other\"\n\"747986\";\"İpsala\";\"other\"\n\"747986\";\"İpsile\";\"other\"\n\"747986\";\"İpsili\";\"other\"\n\"747986\";\"Доганшар\";\"other\"\n\"747986\";\"Ипсиле\";\"other\"\n\"748008\";\"Doğankent\";\"main\"\n\"748008\";\"Dogankent\";\"ascii\"\n\"748008\";\"Harsit\";\"other\"\n\"748008\";\"Harşit\";\"other\"\n\"748008\";\"Manastirbuku\";\"other\"\n\"748008\";\"Manastırbükü\";\"other\"\n\"748008\";\"Доганкент\";\"other\"\n\"748148\";\"Digor\";\"main\"\n\"748148\";\"DIGOR\";\"other\"\n\"748148\";\"ДИГОР\";\"other\"\n\"748166\";\"Devrekâni\";\"main\"\n\"748166\";\"Devrekani\";\"ascii\"\n\"748167\";\"Devrek\";\"main\"\n\"748167\";\"Hamidiye\";\"other\"\n\"748200\";\"Dernekpazarı\";\"main\"\n\"748200\";\"Dernekpazari\";\"ascii\"\n\"748230\";\"Derepazarı\";\"main\"\n\"748230\";\"Derepazari\";\"ascii\"\n\"748230\";\"Derepazar\";\"other\"\n\"748240\";\"Dereli\";\"main\"\n\"748240\";\"Дерели\";\"other\"\n\"748378\";\"Demirtaş\";\"main\"\n\"748378\";\"Demirtas\";\"ascii\"\n\"748383\";\"Demirözü\";\"main\"\n\"748383\";\"Demirozu\";\"ascii\"\n\"748383\";\"Demirezju\";\"other\"\n\"748383\";\"Demiroezue\";\"other\"\n\"748383\";\"Kisanta\";\"other\"\n\"748383\";\"Kısanta\";\"other\"\n\"748383\";\"Pulur\";\"other\"\n\"748383\";\"Демирезю\";\"other\"\n\"748688\";\"Damal\";\"main\"\n\"748688\";\"Ginya\";\"other\"\n\"748688\";\"Yukaridamal\";\"other\"\n\"748688\";\"Yukarıdamal\";\"other\"\n\"748688\";\"Дамал\";\"other\"\n\"748761\";\"Daday\";\"main\"\n\"748870\";\"Çubuk\";\"main\"\n\"748870\";\"Cubuk\";\"ascii\"\n\"748879\";\"Çorum\";\"main\"\n\"748879\";\"Corum\";\"ascii\"\n\"748879\";\"Chorum\";\"other\"\n\"748879\";\"Euchaita\";\"other\"\n\"748879\";\"Чорум\";\"other\"\n\"748893\";\"Çorlu\";\"main\"\n\"748893\";\"Corlu\";\"ascii\"\n\"748893\";\"Chorlu\";\"other\"\n\"748893\";\"Tzirallum\";\"other\"\n\"748893\";\"Tzurullum\";\"other\"\n\"749075\";\"Çınarcık\";\"main\"\n\"749075\";\"Cinarcik\";\"ascii\"\n\"749109\";\"Çıldır\";\"main\"\n\"749109\";\"Cildir\";\"ascii\"\n\"749109\";\"Zurzuna\";\"other\"\n\"749163\";\"Çiftlikköy\";\"main\"\n\"749163\";\"Ciftlikkoy\";\"ascii\"\n\"749163\";\"Ciftlik\";\"other\"\n\"749163\";\"Çiftlik\";\"other\"\n\"749263\";\"Cerrah\";\"main\"\n\"749274\";\"Çerkezköy\";\"main\"\n\"749274\";\"Cerkezkoy\";\"ascii\"\n\"749274\";\"Cerkeskoy\";\"other\"\n\"749274\";\"Cerkezkoey\";\"other\"\n\"749274\";\"Hayrabolu\";\"other\"\n\"749274\";\"Çerkesköy\";\"other\"\n\"749279\";\"Çerkeş\";\"main\"\n\"749279\";\"Cerkes\";\"ascii\"\n\"749279\";\"Cherkes\";\"other\"\n\"749279\";\"Cherkesh\";\"other\"\n\"749279\";\"Mecidiye\";\"other\"\n\"749392\";\"Çekerek\";\"main\"\n\"749392\";\"Cekerek\";\"ascii\"\n\"749392\";\"Hacikoy\";\"other\"\n\"749392\";\"Hacıköy\";\"other\"\n\"749392\";\"Turkmenhacikoyu\";\"other\"\n\"749392\";\"Türkmenhacıköyü\";\"other\"\n\"749421\";\"Kürtün\";\"main\"\n\"749421\";\"Kurtun\";\"ascii\"\n\"749421\";\"Cayra\";\"other\"\n\"749421\";\"Kjurtjun\";\"other\"\n\"749421\";\"Kuertuen\";\"other\"\n\"749421\";\"Ozkurtun\";\"other\"\n\"749421\";\"Çayra\";\"other\"\n\"749421\";\"Özkürtün\";\"other\"\n\"749421\";\"Кюртюн\";\"other\"\n\"749456\";\"Çaykara\";\"main\"\n\"749456\";\"Caykara\";\"ascii\"\n\"749456\";\"Ciftesu\";\"other\"\n\"749456\";\"Kadahor\";\"other\"\n\"749456\";\"Çiftesu\";\"other\"\n\"749502\";\"Çayeli\";\"main\"\n\"749502\";\"Cayeli\";\"ascii\"\n\"749502\";\"Caybasi\";\"other\"\n\"749502\";\"Mapavri\";\"other\"\n\"749502\";\"Mapavrı\";\"other\"\n\"749502\";\"Çaybaşı\";\"other\"\n\"749508\";\"Çaycuma\";\"main\"\n\"749508\";\"Caycuma\";\"ascii\"\n\"749644\";\"Çatalca\";\"main\"\n\"749644\";\"Catalca\";\"ascii\"\n\"749644\";\"Chataldja\";\"other\"\n\"749644\";\"Chatalja\";\"other\"\n\"749644\";\"Tchataldja\";\"other\"\n\"749644\";\"Tschataldja\";\"other\"\n\"749701\";\"Çarşıbaşı\";\"main\"\n\"749701\";\"Carsibasi\";\"ascii\"\n\"749701\";\"Charshibashi\";\"other\"\n\"749701\";\"Iskefiye\";\"other\"\n\"749701\";\"Skefe\";\"other\"\n\"749701\";\"İskefiye\";\"other\"\n\"749701\";\"Чаршибаши\";\"other\"\n\"749704\";\"Çarşamba\";\"main\"\n\"749704\";\"Carsamba\";\"ascii\"\n\"749704\";\"CHARSHAMBA\";\"other\"\n\"749704\";\"Carsampa\";\"other\"\n\"749704\";\"Carsanba\";\"other\"\n\"749704\";\"Charshambah\";\"other\"\n\"749704\";\"Charshembe\";\"other\"\n\"749704\";\"Themiscyra\";\"other\"\n\"749704\";\"Çarşanba\";\"other\"\n\"749704\";\"ЧАРШАМБА\";\"other\"\n\"749740\";\"Çanta\";\"main\"\n\"749740\";\"Canta\";\"ascii\"\n\"749740\";\"Cantakoy\";\"other\"\n\"749740\";\"Çantaköy\";\"other\"\n\"749748\";\"Çankırı\";\"main\"\n\"749748\";\"Cankiri\";\"ascii\"\n\"749748\";\"Changra\";\"other\"\n\"749748\";\"Changri\";\"other\"\n\"749748\";\"Chankiri\";\"other\"\n\"749748\";\"Chankyry\";\"other\"\n\"749748\";\"Gangra Germanicopolis\";\"other\"\n\"749748\";\"Ghanjarah\";\"other\"\n\"749748\";\"Kangiri\";\"other\"\n\"749748\";\"Kangırı\";\"other\"\n\"749748\";\"Khanjarah\";\"other\"\n\"749748\";\"knghry\";\"other\"\n\"749748\";\"Чанкыры\";\"other\"\n\"749748\";\"کنغری\";\"other\"\n\"749780\";\"Çanakkale\";\"main\"\n\"749780\";\"Canakkale\";\"ascii\"\n\"749780\";\"Abydus\";\"other\"\n\"749780\";\"Chanak\";\"other\"\n\"749780\";\"Chanakkale\";\"other\"\n\"749780\";\"Chanaq\";\"other\"\n\"749780\";\"Dardanelles\";\"other\"\n\"749780\";\"Kale-Sultanie\";\"other\"\n\"749780\";\"Tsanakkale\";\"other\"\n\"749780\";\"qia na ka lai sheng\";\"other\"\n\"749780\";\"z'nqlh\";\"other\"\n\"749780\";\"Τσανάκκαλε\";\"other\"\n\"749780\";\"Чанаккале\";\"other\"\n\"749780\";\"צ'נקלה\";\"other\"\n\"749780\";\"恰纳卡莱省\";\"other\"\n\"749789\";\"Çanakçı\";\"main\"\n\"749789\";\"Canakci\";\"ascii\"\n\"749789\";\"Kuzcakoy\";\"other\"\n\"749789\";\"Kuzcaköy\";\"other\"\n\"749795\";\"Çan\";\"main\"\n\"749795\";\"Can\";\"ascii\"\n\"749795\";\"Pazarkoy\";\"other\"\n\"749819\";\"Çamoluk\";\"main\"\n\"749819\";\"Camoluk\";\"ascii\"\n\"749819\";\"Chamoluk\";\"other\"\n\"749819\";\"Mindaval\";\"other\"\n\"749819\";\"Tesnik\";\"other\"\n\"749819\";\"Testik\";\"other\"\n\"749819\";\"Teşnik\";\"other\"\n\"749819\";\"Teştik\";\"other\"\n\"749819\";\"Чамолук\";\"other\"\n\"749841\";\"Çamlıhemşin\";\"main\"\n\"749841\";\"Camlihemsin\";\"ascii\"\n\"749841\";\"Viceulya\";\"other\"\n\"749841\";\"Viçeülya\";\"other\"\n\"749841\";\"Yukarivice\";\"other\"\n\"749841\";\"Yukarıviçe\";\"other\"\n\"749843\";\"Çamlıdere\";\"main\"\n\"749843\";\"Camlidere\";\"ascii\"\n\"749843\";\"Sehler\";\"other\"\n\"749843\";\"Seyhler\";\"other\"\n\"749843\";\"Sorba\";\"other\"\n\"749843\";\"Şehler\";\"other\"\n\"749843\";\"Şeyhler\";\"other\"\n\"749916\";\"Çamaş\";\"main\"\n\"749916\";\"Camas\";\"ascii\"\n\"749916\";\"Urmeli\";\"other\"\n\"749916\";\"Ürmeli\";\"other\"\n\"750043\";\"Çakırlı\";\"main\"\n\"750043\";\"Cakirli\";\"ascii\"\n\"750059\";\"Çakırca\";\"main\"\n\"750059\";\"Cakirca\";\"ascii\"\n\"750165\";\"Büyük Lâçin\";\"main\"\n\"750165\";\"Buyuk Lacin\";\"ascii\"\n\"750165\";\"Lacin\";\"other\"\n\"750165\";\"Lâçin\";\"other\"\n\"750228\";\"Büyükçavuşlu\";\"main\"\n\"750228\";\"Buyukcavuslu\";\"ascii\"\n\"750269\";\"Bursa\";\"main\"\n\"750269\";\"Boursa\";\"other\"\n\"750269\";\"Brossa\";\"other\"\n\"750269\";\"Broussa\";\"other\"\n\"750269\";\"Brousse\";\"other\"\n\"750269\";\"Brusa\";\"other\"\n\"750269\";\"Brussa\";\"other\"\n\"750269\";\"Prousa\";\"other\"\n\"750269\";\"bu er sa\";\"other\"\n\"750269\";\"burusa\";\"other\"\n\"750269\";\"bwrsh\";\"other\"\n\"750269\";\"bwrst\";\"other\"\n\"750269\";\"Προύσα\";\"other\"\n\"750269\";\"Бурса\";\"other\"\n\"750269\";\"בורסה\";\"other\"\n\"750269\";\"بورصة\";\"other\"\n\"750269\";\"ブルサ\";\"other\"\n\"750269\";\"布尔萨\";\"other\"\n\"750317\";\"Bulancak\";\"main\"\n\"750317\";\"Akkoy\";\"other\"\n\"750317\";\"Akköy\";\"other\"\n\"750317\";\"BULANDZHAK\";\"other\"\n\"750317\";\"Bulancik\";\"other\"\n\"750317\";\"Pulandjak\";\"other\"\n\"750317\";\"БУЛАНДЖАК\";\"other\"\n\"750392\";\"Bozkurt\";\"main\"\n\"750392\";\"Pazaryeri\";\"other\"\n\"750392\";\"Persembe\";\"other\"\n\"750392\";\"Persenbe\";\"other\"\n\"750392\";\"Perşembe\";\"other\"\n\"750392\";\"Perşenbe\";\"other\"\n\"750446\";\"Boyalık\";\"main\"\n\"750446\";\"Boyalik\";\"ascii\"\n\"750446\";\"Hadimkoy\";\"other\"\n\"750446\";\"Hadımköy\";\"other\"\n\"750450\";\"Boyalıca\";\"main\"\n\"750450\";\"Boyalica\";\"ascii\"\n\"750468\";\"Boyabat\";\"main\"\n\"750496\";\"Borçka\";\"main\"\n\"750496\";\"Borcka\";\"ascii\"\n\"750496\";\"BORCHKA\";\"other\"\n\"750496\";\"Yeniyol\";\"other\"\n\"750496\";\"БОРЧКА\";\"other\"\n\"750516\";\"Bolu\";\"main\"\n\"750516\";\"Boli\";\"other\"\n\"750516\";\"Claudiopolis\";\"other\"\n\"750516\";\"Болу\";\"other\"\n\"750598\";\"Bilecik\";\"main\"\n\"750598\";\"Agrilium\";\"other\"\n\"750598\";\"Belocome\";\"other\"\n\"750598\";\"Biledzhik\";\"other\"\n\"750598\";\"Bilejik\";\"other\"\n\"750598\";\"Биледжик\";\"other\"\n\"750605\";\"Biga\";\"main\"\n\"750605\";\"Big\";\"other\"\n\"750605\";\"Биг\";\"other\"\n\"750615\";\"Asarcık\";\"main\"\n\"750615\";\"Asarcik\";\"ascii\"\n\"750615\";\"Bicincik\";\"other\"\n\"750615\";\"Biçincik\";\"other\"\n\"750637\";\"Beypazarı\";\"main\"\n\"750637\";\"Beypazari\";\"ascii\"\n\"750637\";\"Baibazar\";\"other\"\n\"750637\";\"Petobriga\";\"other\"\n\"750735\";\"Beşikdüzü\";\"main\"\n\"750735\";\"Besikduzu\";\"ascii\"\n\"750735\";\"Sarli\";\"other\"\n\"750735\";\"Şarlı\";\"other\"\n\"750874\";\"Bayramören\";\"main\"\n\"750874\";\"Bayramoren\";\"ascii\"\n\"750874\";\"Bayramolen\";\"other\"\n\"750874\";\"Bayramölen\";\"other\"\n\"750938\";\"Bayburt\";\"main\"\n\"750938\";\"BAJBURT\";\"other\"\n\"750938\";\"Baberd\";\"other\"\n\"750938\";\"Baiburt\";\"other\"\n\"750938\";\"Bayburt Province\";\"other\"\n\"750938\";\"Bayburtiaen\";\"other\"\n\"750938\";\"Bayburtiän\";\"other\"\n\"750938\";\"Bayburtska provincie\";\"other\"\n\"750938\";\"Bayburtská provincie\";\"other\"\n\"750938\";\"Provincia de Bayburt\";\"other\"\n\"750938\";\"Provinsi Bayburt\";\"other\"\n\"750938\";\"ba yi bu er te sheng\";\"other\"\n\"750938\";\"baybwrt\";\"other\"\n\"750938\";\"БАЙБУРТ\";\"other\"\n\"750938\";\"Բաբերդ\";\"other\"\n\"750938\";\"بایبورت\";\"other\"\n\"750938\";\"巴伊布尔特省\";\"other\"\n\"751036\";\"Başçiftlik\";\"main\"\n\"751036\";\"Basciftlik\";\"ascii\"\n\"751036\";\"Basciftlik Koyu\";\"other\"\n\"751036\";\"Başçiftlik Köyü\";\"other\"\n\"751057\";\"Bartın\";\"main\"\n\"751057\";\"Bartin\";\"ascii\"\n\"751057\";\"Bartan\";\"other\"\n\"751057\";\"Bartheni\";\"other\"\n\"751057\";\"Parthenium\";\"other\"\n\"751057\";\"Бартин\";\"other\"\n\"751077\";\"Bandırma\";\"main\"\n\"751077\";\"Bandirma\";\"ascii\"\n\"751077\";\"Banderma\";\"other\"\n\"751077\";\"Bandyrma\";\"other\"\n\"751077\";\"Panderma\";\"other\"\n\"751077\";\"Panormos\";\"other\"\n\"751077\";\"Panormus\";\"other\"\n\"751077\";\"Бандырма\";\"other\"\n\"751170\";\"Balçık\";\"main\"\n\"751170\";\"Balcik\";\"ascii\"\n\"751170\";\"Hamidiye\";\"other\"\n\"751277\";\"Bahçecik\";\"main\"\n\"751277\";\"Bahcecik\";\"ascii\"\n\"751277\";\"Bagchejik\";\"other\"\n\"751335\";\"Bafra\";\"main\"\n\"751335\";\"Paura\";\"other\"\n\"751335\";\"Бафра\";\"other\"\n\"751371\";\"Babaeski\";\"main\"\n\"751371\";\"Babaatik\";\"other\"\n\"751371\";\"Babaiatik\";\"other\"\n\"751388\";\"Azdavay\";\"main\"\n\"751388\";\"Carsamba\";\"other\"\n\"751388\";\"Carsanba\";\"other\"\n\"751388\";\"Çarsanba\";\"other\"\n\"751388\";\"Çarşamba\";\"other\"\n\"751427\";\"Ayvacık\";\"main\"\n\"751427\";\"Ayvacik\";\"ascii\"\n\"751475\";\"Aydıntepe\";\"main\"\n\"751475\";\"Aydintepe\";\"ascii\"\n\"751475\";\"Ajdyntepe\";\"other\"\n\"751475\";\"Hart\";\"other\"\n\"751475\";\"Айдынтепе\";\"other\"\n\"751491\";\"Aydıncık\";\"main\"\n\"751491\";\"Aydincik\";\"ascii\"\n\"751491\";\"Eskikoy\";\"other\"\n\"751491\";\"Eskiköy\";\"other\"\n\"751491\";\"Mamure\";\"other\"\n\"751511\";\"Ayaş\";\"main\"\n\"751511\";\"Ayas\";\"ascii\"\n\"751516\";\"Ayancık\";\"main\"\n\"751516\";\"Ayancik\";\"ascii\"\n\"751516\";\"Istifan\";\"other\"\n\"751516\";\"İstifan\";\"other\"\n\"751575\";\"Atkaracalar\";\"main\"\n\"751817\";\"Artvin\";\"main\"\n\"751817\";\"ARTVIN\";\"other\"\n\"751817\";\"Artivin\";\"other\"\n\"751817\";\"Artwin\";\"other\"\n\"751817\";\"АРТВИН\";\"other\"\n\"751818\";\"Artova\";\"main\"\n\"751818\";\"ARTOVA\";\"other\"\n\"751818\";\"Kunduz\";\"other\"\n\"751818\";\"АРТОВА\";\"other\"\n\"751838\";\"Arsin\";\"main\"\n\"751838\";\"Arseni Zir\";\"other\"\n\"751838\";\"Asagi Arsin\";\"other\"\n\"751838\";\"Aşağı Arsin\";\"other\"\n\"751864\";\"Arpaçay\";\"main\"\n\"751864\";\"Arpacay\";\"ascii\"\n\"751864\";\"ARPACHAJ\";\"other\"\n\"751864\";\"Sarusat\";\"other\"\n\"751864\";\"Saruşat\";\"other\"\n\"751864\";\"Zarsat\";\"other\"\n\"751864\";\"Zarusat\";\"other\"\n\"751864\";\"Zaruşat\";\"other\"\n\"751864\";\"Zarşat\";\"other\"\n\"751864\";\"АРПАЧАЙ\";\"other\"\n\"751931\";\"Arhavi\";\"main\"\n\"751931\";\"Musazade\";\"other\"\n\"751931\";\"Мусазаде\";\"other\"\n\"751949\";\"Ardeşen\";\"main\"\n\"751949\";\"Ardesen\";\"ascii\"\n\"751949\";\"ARDESHEN\";\"other\"\n\"751949\";\"Ardasen\";\"other\"\n\"751949\";\"Ardaşen\";\"other\"\n\"751949\";\"Ardisin\";\"other\"\n\"751949\";\"Ardişin\";\"other\"\n\"751949\";\"АРДЕШЕН\";\"other\"\n\"751950\";\"Ardanuç\";\"main\"\n\"751950\";\"Ardanuc\";\"ascii\"\n\"751950\";\"ARDANUCH\";\"other\"\n\"751950\";\"Adakale\";\"other\"\n\"751950\";\"Tutunlu\";\"other\"\n\"751950\";\"Tütünlü\";\"other\"\n\"751950\";\"АРДАНУЧ\";\"other\"\n\"751952\";\"Ardahan\";\"main\"\n\"751952\";\"ARDAGAN\";\"other\"\n\"751952\";\"Ardagan\";\"other\"\n\"751952\";\"Ardakhan\";\"other\"\n\"751952\";\"Erdexan\";\"other\"\n\"751952\";\"Erdêxan\";\"other\"\n\"751952\";\"АРДАГАН\";\"other\"\n\"751952\";\"Արդահան\";\"other\"\n\"751952\";\"ארדהאן\";\"other\"\n\"751971\";\"Araklı\";\"main\"\n\"751971\";\"Arakli\";\"ascii\"\n\"751971\";\"Arakli Carsusu\";\"other\"\n\"751971\";\"Araklicarsisi\";\"other\"\n\"751971\";\"Araklı Çarşusu\";\"other\"\n\"751971\";\"Araklıçarşısı\";\"other\"\n\"751971\";\"Iraklia\";\"other\"\n\"751971\";\"Surmene\";\"other\"\n\"751971\";\"Sürmene\";\"other\"\n\"751976\";\"Araç\";\"main\"\n\"751976\";\"Arac\";\"ascii\"\n\"752015\";\"Amasya\";\"main\"\n\"752015\";\"Amas'ja\";\"other\"\n\"752015\";\"Amaseia\";\"other\"\n\"752015\";\"Amasia\";\"other\"\n\"752015\";\"Amasiyah\";\"other\"\n\"752015\";\"Amàsia\";\"other\"\n\"752015\";\"a ma xi ya\";\"other\"\n\"752015\";\"Αμάσεια\";\"other\"\n\"752015\";\"Амасья\";\"other\"\n\"752015\";\"אמסיה\";\"other\"\n\"752015\";\"阿馬西亞\";\"other\"\n\"752016\";\"Amasra\";\"main\"\n\"752016\";\"Amasreh\";\"other\"\n\"752016\";\"Amassera\";\"other\"\n\"752016\";\"Amastra\";\"other\"\n\"752016\";\"Amastris\";\"other\"\n\"752016\";\"Sesamus\";\"other\"\n\"752020\";\"Alucra\";\"main\"\n\"752020\";\"ALUDZHRA\";\"other\"\n\"752020\";\"Alucara\";\"other\"\n\"752020\";\"Mesudiye\";\"other\"\n\"752020\";\"АЛУДЖРА\";\"other\"\n\"752042\";\"Altınova\";\"main\"\n\"752042\";\"Altinova\";\"ascii\"\n\"752083\";\"Almus\";\"main\"\n\"752083\";\"ALMUS\";\"other\"\n\"752083\";\"Almis\";\"other\"\n\"752083\";\"Almıs\";\"other\"\n\"752083\";\"Tozanli\";\"other\"\n\"752083\";\"Tozanlı\";\"other\"\n\"752083\";\"АЛМУС\";\"other\"\n\"752184\";\"Alaplı\";\"main\"\n\"752184\";\"Alapli\";\"ascii\"\n\"752184\";\"Yukaridogancilar\";\"other\"\n\"752184\";\"Yukaridogncilar\";\"other\"\n\"752184\";\"Yukarıdoğancılar\";\"other\"\n\"752184\";\"Yukarıdoğncılar\";\"other\"\n\"752188\";\"Alanyurt\";\"main\"\n\"752188\";\"Adabinli\";\"other\"\n\"752278\";\"Alaca\";\"main\"\n\"752278\";\"Huseyinabat\";\"other\"\n\"752278\";\"Huseyinbat\";\"other\"\n\"752278\";\"Huseynabat\";\"other\"\n\"752278\";\"Hüseyinabat\";\"other\"\n\"752278\";\"Hüseyinbat\";\"other\"\n\"752278\";\"Hüseynabat\";\"other\"\n\"752284\";\"Akyurt\";\"main\"\n\"752284\";\"Ravli\";\"other\"\n\"752288\";\"Akyazı\";\"main\"\n\"752288\";\"Akyazi\";\"ascii\"\n\"752288\";\"Akyaz\";\"other\"\n\"752297\";\"Akyaka\";\"main\"\n\"752297\";\"Ak\\\"jaka\";\"other\"\n\"752297\";\"Akkaya\";\"other\"\n\"752297\";\"Kizil Cnakh\";\"other\"\n\"752297\";\"Kizilcakcak\";\"other\"\n\"752297\";\"Kızılçakçak\";\"other\"\n\"752297\";\"Suregel\";\"other\"\n\"752297\";\"Surgel\";\"other\"\n\"752297\";\"Süregel\";\"other\"\n\"752297\";\"Sürgel\";\"other\"\n\"752297\";\"Акъяка\";\"other\"\n\"752359\";\"Aksu\";\"main\"\n\"752359\";\"Aksu Koyu\";\"other\"\n\"752359\";\"Aksu Köyü\";\"other\"\n\"752359\";\"Аксу\";\"other\"\n\"752437\";\"Akkuş\";\"main\"\n\"752437\";\"Akkus\";\"ascii\"\n\"752437\";\"AKKUSH\";\"other\"\n\"752437\";\"Caldere\";\"other\"\n\"752437\";\"Caldere Koyu\";\"other\"\n\"752437\";\"Caldira\";\"other\"\n\"752437\";\"Çaldere\";\"other\"\n\"752437\";\"Çaldere Köyü\";\"other\"\n\"752437\";\"Çaldıra\";\"other\"\n\"752437\";\"АККУШ\";\"other\"\n\"752476\";\"Akıncılar\";\"main\"\n\"752476\";\"Akincilar\";\"ascii\"\n\"752476\";\"Akyndzhilar\";\"other\"\n\"752476\";\"Ezbider\";\"other\"\n\"752476\";\"Yukari Ezbider\";\"other\"\n\"752476\";\"Yukarı Ezbider\";\"other\"\n\"752476\";\"Акынджилар\";\"other\"\n\"752584\";\"Akçakoca\";\"main\"\n\"752584\";\"Akcakoca\";\"ascii\"\n\"752584\";\"Akcasehir\";\"other\"\n\"752584\";\"Akche Shehr\";\"other\"\n\"752584\";\"Akcheh\";\"other\"\n\"752584\";\"Akçaşehir\";\"other\"\n\"752584\";\"Dia\";\"other\"\n\"752584\";\"Diospolis\";\"other\"\n\"752627\";\"Akçaabat\";\"main\"\n\"752627\";\"Akcaabat\";\"ascii\"\n\"752627\";\"AKCHAABAD\";\"other\"\n\"752627\";\"Hermonassus\";\"other\"\n\"752627\";\"Hermyse\";\"other\"\n\"752627\";\"Platana\";\"other\"\n\"752627\";\"Polatane\";\"other\"\n\"752627\";\"Polathane\";\"other\"\n\"752627\";\"Pulathane\";\"other\"\n\"752627\";\"АКЧААБАД\";\"other\"\n\"752850\";\"Adapazarı\";\"main\"\n\"752850\";\"Adapazari\";\"ascii\"\n\"752850\";\"Ada Bazar\";\"other\"\n\"752850\";\"Sakar'ja\";\"other\"\n\"752850\";\"Сакарья\";\"other\"\n\"752926\";\"Abana\";\"main\"\n\"752926\";\"Apana\";\"other\"\n\"831432\";\"Espiye\";\"main\"\n\"857229\";\"Celâliye\";\"main\"\n\"857229\";\"Celaliye\";\"ascii\"\n\"857230\";\"Muratbey\";\"main\"\n\"862940\";\"Halıdere\";\"main\"\n\"862940\";\"Halidere\";\"ascii\"\n\"862944\";\"İçmeler\";\"main\"\n\"862944\";\"Icmeler\";\"ascii\"\n\"862944\";\"Ichlemer\";\"other\"\n\"862944\";\"Ichmeler\";\"other\"\n\"862944\";\"Ичмелер\";\"other\"\n\"6354984\";\"merter keresteciler\";\"main\"\n\"6354985\";\"güngören merter\";\"main\"\n\"6354985\";\"guengoeren merter\";\"ascii\"\n\"6559490\";\"Demre\";\"main\"\n\"6559490\";\"Демре\";\"other\"\n\"6692524\";\"Sarigerme\";\"main\"\n\"6692524\";\"Саригерме\";\"other\"\n\"6940491\";\"Arıköy\";\"main\"\n\"6940491\";\"Arikoey\";\"ascii\"\n\"6940561\";\"Çatalhöyük\";\"main\"\n\"6940561\";\"Catalhoeyuek\";\"ascii\"\n\"6940561\";\"Catalhoyuk\";\"other\"\n\"6947641\";\"Büyükçekmece\";\"main\"\n\"6947641\";\"Bueyuekcekmece\";\"ascii\"\n\"6955677\";\"Çankaya\";\"main\"\n\"6955677\";\"Cankaya\";\"ascii\"\n\"7280504\";\"Yaniklar\";\"main\"\n\"7280504\";\"Janyklar\";\"other\"\n\"7280504\";\"Yanıklar\";\"other\"\n\"7280504\";\"Яныклар\";\"other\"\n\"7457829\";\"Battalgazi\";\"main\"\n\"7569266\";\"Güçe\";\"main\"\n\"7569266\";\"Guce\";\"ascii\"\n\"3573576\";\"Tunapuna\";\"main\"\n\"3573576\";\"Tunapuna Village\";\"other\"\n\"3573643\";\"Paradise\";\"main\"\n\"3573650\";\"Tabaquite\";\"main\"\n\"3573650\";\"Tabaquite Village\";\"other\"\n\"3573681\";\"Siparia\";\"main\"\n\"3573681\";\"Siparia Village\";\"other\"\n\"3573703\";\"Scarborough\";\"main\"\n\"3573703\";\"Port Louis\";\"other\"\n\"3573732\";\"Sangre Grande\";\"main\"\n\"3573732\";\"Sangre Grand\";\"other\"\n\"3573732\";\"Sangre Grande Station\";\"other\"\n\"3573732\";\"Sangre Grande Town\";\"other\"\n\"3573738\";\"San Fernando\";\"main\"\n\"3573819\";\"Roxborough\";\"main\"\n\"3573819\";\"Roxborough Village\";\"other\"\n\"3573840\";\"Rio Claro\";\"main\"\n\"3573882\";\"Princes Town\";\"main\"\n\"3573882\";\"Princess Town\";\"other\"\n\"3573890\";\"Port-of-Spain\";\"main\"\n\"3573890\";\"City of Port-of-Spain\";\"other\"\n\"3573890\";\"Port d'Espagne\";\"other\"\n\"3573890\";\"Port of Spain\";\"other\"\n\"3573890\";\"Port of Speinas\";\"other\"\n\"3573890\";\"Port of Spejn\";\"other\"\n\"3573890\";\"Port oph Spein\";\"other\"\n\"3573890\";\"Port-au-Spain\";\"other\"\n\"3573890\";\"Port-d'Espagne\";\"other\"\n\"3573890\";\"Port-of-Spejn\";\"other\"\n\"3573890\";\"Puerto Espana\";\"other\"\n\"3573890\";\"Puerto España\";\"other\"\n\"3573890\";\"poteu obeu seupein\";\"other\"\n\"3573890\";\"poteuobeuseupein\";\"other\"\n\"3573890\";\"potoobusupein\";\"other\"\n\"3573890\";\"xi ban ya gang\";\"other\"\n\"3573890\";\"Πορτ οφ Σπέιν\";\"other\"\n\"3573890\";\"Порт оф Спејн\";\"other\"\n\"3573890\";\"Порт-оф-Спейн\";\"other\"\n\"3573890\";\"פורט אוף ספיין\";\"other\"\n\"3573890\";\"ፖርት ኦፍ ስፔን\";\"other\"\n\"3573890\";\"ポートオブスペイン\";\"other\"\n\"3573890\";\"西班牙港\";\"other\"\n\"3573890\";\"포트 오브 스페인\";\"other\"\n\"3573890\";\"포트오브스페인\";\"other\"\n\"3573899\";\"Point Fortin\";\"main\"\n\"3573935\";\"Petit Valley\";\"main\"\n\"3573965\";\"Peñal\";\"main\"\n\"3573965\";\"Penal\";\"ascii\"\n\"3573965\";\"Penal Village\";\"other\"\n\"3573965\";\"Peñal Village\";\"other\"\n\"3574069\";\"Mucurapo\";\"main\"\n\"3574116\";\"Mon Repos\";\"main\"\n\"3574194\";\"Marabella\";\"main\"\n\"3574309\";\"Laventille\";\"main\"\n\"3574659\";\"Débé\";\"main\"\n\"3574659\";\"Debe\";\"ascii\"\n\"3574659\";\"Debe Village\";\"other\"\n\"3574659\";\"Débé Village\";\"other\"\n\"3574724\";\"Couva\";\"main\"\n\"3574724\";\"Couva Savannah Village\";\"other\"\n\"3574810\";\"Chaguanas\";\"main\"\n\"3575039\";\"Arouca\";\"main\"\n\"3575039\";\"Arouca Village\";\"other\"\n\"3575051\";\"Arima\";\"main\"\n\"3575051\";\"Town of Arima\";\"other\"\n\"2110394\";\"Funafuti\";\"main\"\n\"2110394\";\"Fongafale\";\"other\"\n\"2110394\";\"Fongafale (atolon de Funafuti)\";\"other\"\n\"2110394\";\"Fongafale (atolón de Funafuti)\";\"other\"\n\"2110394\";\"Phounaphouti\";\"other\"\n\"2110394\";\"Vaiaku\";\"other\"\n\"2110394\";\"Vajaku\";\"other\"\n\"2110394\";\"Φουναφούτι\";\"other\"\n\"2110394\";\"ואיאקו\";\"other\"\n\"1665196\";\"Douliu\";\"main\"\n\"1665196\";\"Douliou\";\"other\"\n\"1665196\";\"Jun'-lin'\";\"other\"\n\"1665196\";\"Tou-liu\";\"other\"\n\"1665196\";\"Tou-liu-chieh\";\"other\"\n\"1665196\";\"Yun-lin\";\"other\"\n\"1665196\";\"Yun-lin-hsien\";\"other\"\n\"1665196\";\"Yün-lin\";\"other\"\n\"1665196\";\"Yün-lin-hsien\";\"other\"\n\"1665196\";\"Юнь-линь\";\"other\"\n\"1665196\";\"斗六\";\"other\"\n\"1665357\";\"Yujing\";\"main\"\n\"1665357\";\"Chiao-pa-nien\";\"other\"\n\"1665357\";\"Yu-ching\";\"other\"\n\"1665357\";\"Yu-ching-chuang\";\"other\"\n\"1665357\";\"Yu-ching-ts'un\";\"other\"\n\"1665357\";\"Yü-ching\";\"other\"\n\"1665357\";\"Yü-ching-chuang\";\"other\"\n\"1665357\";\"Yü-ching-ts’un\";\"other\"\n\"1665357\";\"yu jing\";\"other\"\n\"1665357\";\"玉井\";\"other\"\n\"1667905\";\"Taoyuan\";\"main\"\n\"1667905\";\"Hsin-chu\";\"other\"\n\"1667905\";\"Hsin-chu-hsien\";\"other\"\n\"1667905\";\"T'ao-yuan\";\"other\"\n\"1667905\";\"T'ao-yuan-chen\";\"other\"\n\"1667905\";\"T'ao-yuan-chieh\";\"other\"\n\"1667905\";\"T'ao-yuan-hsien\";\"other\"\n\"1667905\";\"T’ao-yüan\";\"other\"\n\"1667905\";\"T’ao-yüan-chen\";\"other\"\n\"1667905\";\"T’ao-yüan-chieh\";\"other\"\n\"1667905\";\"T’ao-yüan-hsien\";\"other\"\n\"1667905\";\"tao yuan\";\"other\"\n\"1667905\";\"桃園\";\"other\"\n\"1668295\";\"Taitung\";\"main\"\n\"1668295\";\"T'ai-tung\";\"other\"\n\"1668295\";\"T'ai-tung Shih\";\"other\"\n\"1668295\";\"T'ai-tung-chen\";\"other\"\n\"1668295\";\"T'ai-tung-hsien\";\"other\"\n\"1668295\";\"Taichung\";\"other\"\n\"1668295\";\"Taidong\";\"other\"\n\"1668295\";\"T’ai-tung\";\"other\"\n\"1668295\";\"T’ai-tung Shih\";\"other\"\n\"1668295\";\"T’ai-tung-chen\";\"other\"\n\"1668295\";\"T’ai-tung-hsien\";\"other\"\n\"1668295\";\"tai dong\";\"other\"\n\"1668295\";\"臺東\";\"other\"\n\"1668341\";\"Taipei\";\"main\"\n\"1668341\";\"Kota Taipei\";\"other\"\n\"1668341\";\"Pan Kiao\";\"other\"\n\"1668341\";\"Pan-ch'iao\";\"other\"\n\"1668341\";\"Pan-ch'iao-chen\";\"other\"\n\"1668341\";\"Pan-ch'iao-chieh\";\"other\"\n\"1668341\";\"Pan-ch’iao\";\"other\"\n\"1668341\";\"Pan-ch’iao-chen\";\"other\"\n\"1668341\";\"Pan-ch’iao-chieh\";\"other\"\n\"1668341\";\"T'ai-pei\";\"other\"\n\"1668341\";\"T'ai-pei Shih\";\"other\"\n\"1668341\";\"T'ai-pei-hsien\";\"other\"\n\"1668341\";\"Taibei Shi\";\"other\"\n\"1668341\";\"Taibei Shih\";\"other\"\n\"1668341\";\"Taibejus\";\"other\"\n\"1668341\";\"Taibėjus\";\"other\"\n\"1668341\";\"Taipe\";\"other\"\n\"1668341\";\"Taipeh\";\"other\"\n\"1668341\";\"Taipeium\";\"other\"\n\"1668341\";\"Taipejus\";\"other\"\n\"1668341\";\"Taipé\";\"other\"\n\"1668341\";\"Taipéi\";\"other\"\n\"1668341\";\"Taipėjus\";\"other\"\n\"1668341\";\"Tajbehj\";\"other\"\n\"1668341\";\"Tajpej\";\"other\"\n\"1668341\";\"Tajpeo\";\"other\"\n\"1668341\";\"Tayipeh\";\"other\"\n\"1668341\";\"Tayipèh\";\"other\"\n\"1668341\";\"Tchaj-pej\";\"other\"\n\"1668341\";\"T’ai-pei\";\"other\"\n\"1668341\";\"T’ai-pei Shih\";\"other\"\n\"1668341\";\"T’ai-pei-hsien\";\"other\"\n\"1668341\";\"ta'ipe\";\"other\"\n\"1668341\";\"tai bei shi\";\"other\"\n\"1668341\";\"taibei\";\"other\"\n\"1668341\";\"taibei si\";\"other\"\n\"1668341\";\"thipe\";\"other\"\n\"1668341\";\"Đài Bắc\";\"other\"\n\"1668341\";\"Ταϊπέι\";\"other\"\n\"1668341\";\"Тайбэй\";\"other\"\n\"1668341\";\"Тайпей\";\"other\"\n\"1668341\";\"Тајпеј\";\"other\"\n\"1668341\";\"טאיפי\";\"other\"\n\"1668341\";\"טאיפיי\";\"other\"\n\"1668341\";\"تەيبېي\";\"other\"\n\"1668341\";\"ताइपे\";\"other\"\n\"1668341\";\"ไทเป\";\"other\"\n\"1668341\";\"ཐའེ་པེ\";\"other\"\n\"1668341\";\"ታይፔ\";\"other\"\n\"1668341\";\"台北市\";\"other\"\n\"1668341\";\"臺北市\";\"other\"\n\"1668341\";\"타이베이\";\"other\"\n\"1668341\";\"타이베이 시\";\"other\"\n\"1668347\";\"Taibao\";\"main\"\n\"1668347\";\"T'ai-pao\";\"other\"\n\"1668347\";\"T'ai-pao-chuang\";\"other\"\n\"1668347\";\"T'ai-pao-li\";\"other\"\n\"1668347\";\"Ta-pao\";\"other\"\n\"1668347\";\"T’ai-pao\";\"other\"\n\"1668347\";\"T’ai-pao-chuang\";\"other\"\n\"1668347\";\"T’ai-pao-li\";\"other\"\n\"1668347\";\"tai bao\";\"other\"\n\"1668347\";\"太保\";\"other\"\n\"1668353\";\"Xinying\";\"main\"\n\"1668353\";\"Hsin-ying\";\"other\"\n\"1668353\";\"Hsing-ying\";\"other\"\n\"1668353\";\"Sinying\";\"other\"\n\"1668353\";\"T'ai-nan\";\"other\"\n\"1668353\";\"T'ai-nan-hsien\";\"other\"\n\"1668353\";\"T’ai-nan\";\"other\"\n\"1668353\";\"T’ai-nan-hsien\";\"other\"\n\"1668353\";\"xin ying\";\"other\"\n\"1668353\";\"新營\";\"other\"\n\"1668396\";\"Fengyuan\";\"main\"\n\"1668396\";\"Feng Yung\";\"other\"\n\"1668396\";\"Feng-yuan\";\"other\"\n\"1668396\";\"Feng-yuan-chen\";\"other\"\n\"1668396\";\"Feng-yuan-chieh\";\"other\"\n\"1668396\";\"Feng-yüan\";\"other\"\n\"1668396\";\"Feng-yüan-chen\";\"other\"\n\"1668396\";\"Feng-yüan-chieh\";\"other\"\n\"1668396\";\"Fongyuan\";\"other\"\n\"1668396\";\"Hu-lu-tun\";\"other\"\n\"1668396\";\"T'ai-chung\";\"other\"\n\"1668396\";\"T'ai-chung-hsien\";\"other\"\n\"1668396\";\"T’ai-chung\";\"other\"\n\"1668396\";\"T’ai-chung-hsien\";\"other\"\n\"1668396\";\"feng yuan\";\"other\"\n\"1668396\";\"豐原\";\"other\"\n\"1668399\";\"Taichung\";\"main\"\n\"1668399\";\"T'ai-chung\";\"other\"\n\"1668399\";\"T'ai-chung-shih\";\"other\"\n\"1668399\";\"Taijhong Shih\";\"other\"\n\"1668399\";\"Taizhong Shi\";\"other\"\n\"1668399\";\"T’ai-chung\";\"other\"\n\"1668399\";\"T’ai-chung-shih\";\"other\"\n\"1668399\";\"臺中市\";\"other\"\n\"1668467\";\"Daxi\";\"main\"\n\"1668467\";\"Dasi\";\"other\"\n\"1668467\";\"Ta-Si-chen\";\"other\"\n\"1668467\";\"Ta-ch'i\";\"other\"\n\"1668467\";\"Ta-ch'i-chen\";\"other\"\n\"1668467\";\"Ta-ch'i-chieh\";\"other\"\n\"1668467\";\"Ta-ch’i\";\"other\"\n\"1668467\";\"Ta-ch’i-chen\";\"other\"\n\"1668467\";\"Ta-ch’i-chieh\";\"other\"\n\"1668467\";\"Ta-hsi\";\"other\"\n\"1668467\";\"Ta-hsi-chen\";\"other\"\n\"1668467\";\"Ta-k'o-k'an\";\"other\"\n\"1668467\";\"Ta-k’o-k’an\";\"other\"\n\"1668467\";\"Та-Си-чен\";\"other\"\n\"1668467\";\"大溪\";\"other\"\n\"1670029\";\"Banqiao\";\"main\"\n\"1670029\";\"Banciao\";\"other\"\n\"1670029\";\"Fan-ch'iao\";\"other\"\n\"1670029\";\"Fan-ch’iao\";\"other\"\n\"1670029\";\"Fang-ch'iao\";\"other\"\n\"1670029\";\"Fang-ch’iao\";\"other\"\n\"1670029\";\"Pan-ch'iao\";\"other\"\n\"1670029\";\"Pan-ch’iao\";\"other\"\n\"1670029\";\"San-kuang\";\"other\"\n\"1670029\";\"San-kuang-li\";\"other\"\n\"1670029\";\"ban qiao\";\"other\"\n\"1670029\";\"板橋\";\"other\"\n\"1670310\";\"Buli\";\"main\"\n\"1670310\";\"Pu-li\";\"other\"\n\"1670310\";\"Pu-li-chieh\";\"other\"\n\"1670310\";\"Puli\";\"other\"\n\"1670310\";\"bu li\";\"other\"\n\"1670310\";\"Пули\";\"other\"\n\"1670310\";\"埔里\";\"other\"\n\"1670481\";\"Pingtung\";\"main\"\n\"1670481\";\"P'ing-tung\";\"other\"\n\"1670481\";\"P'ing-tung-chieh\";\"other\"\n\"1670481\";\"P'ing-tung-hsien\";\"other\"\n\"1670481\";\"P'ing-tung-shih\";\"other\"\n\"1670481\";\"Pingdong\";\"other\"\n\"1670481\";\"P’ing-tung\";\"other\"\n\"1670481\";\"P’ing-tung-chieh\";\"other\"\n\"1670481\";\"P’ing-tung-hsien\";\"other\"\n\"1670481\";\"P’ing-tung-shih\";\"other\"\n\"1670481\";\"屏東\";\"other\"\n\"1671566\";\"Nantou\";\"main\"\n\"1671566\";\"Nan'tou\";\"other\"\n\"1671566\";\"Nan-t'ou\";\"other\"\n\"1671566\";\"Nan-t'ou-chieh\";\"other\"\n\"1671566\";\"Nan-t'ou-hsien\";\"other\"\n\"1671566\";\"Nan-t'ou-shih\";\"other\"\n\"1671566\";\"Nan-t’ou\";\"other\"\n\"1671566\";\"Nan-t’ou-chieh\";\"other\"\n\"1671566\";\"Nan-t’ou-hsien\";\"other\"\n\"1671566\";\"Nan-t’ou-shih\";\"other\"\n\"1671566\";\"Nantow\";\"other\"\n\"1671566\";\"nan tou\";\"other\"\n\"1671566\";\"Наньтоу\";\"other\"\n\"1671566\";\"南投\";\"other\"\n\"1671971\";\"Miaoli\";\"main\"\n\"1671971\";\"Miao-li\";\"other\"\n\"1671971\";\"Miao-li-chieh\";\"other\"\n\"1671971\";\"Miao-li-hsien\";\"other\"\n\"1671971\";\"Miao-li-shih\";\"other\"\n\"1671971\";\"miao li\";\"other\"\n\"1671971\";\"苗栗\";\"other\"\n\"1672228\";\"Ma-kung\";\"main\"\n\"1672228\";\"Magong\";\"other\"\n\"1672228\";\"Magun\";\"other\"\n\"1672228\";\"P'eng-hu\";\"other\"\n\"1672228\";\"P'eng-hu-hsien\";\"other\"\n\"1672228\";\"ma gong\";\"other\"\n\"1672228\";\"Магун\";\"other\"\n\"1672228\";\"馬公\";\"other\"\n\"1672551\";\"Lugu\";\"main\"\n\"1672551\";\"Ch'iang-tzu-liao\";\"other\"\n\"1672551\";\"Ch’iang-tzu-liao\";\"other\"\n\"1672551\";\"Lu-ku\";\"other\"\n\"1672551\";\"lu gu\";\"other\"\n\"1672551\";\"Лугу\";\"other\"\n\"1672551\";\"鹿谷\";\"other\"\n\"1673816\";\"Fengshan\";\"main\"\n\"1673816\";\"Feng-shan\";\"other\"\n\"1673816\";\"Feng-shan-chieh\";\"other\"\n\"1673816\";\"Fongshan\";\"other\"\n\"1673816\";\"Kao-hsiung\";\"other\"\n\"1673816\";\"Kao-hsiung-hsien\";\"other\"\n\"1673816\";\"鳳山\";\"other\"\n\"1673820\";\"Kaohsiung\";\"main\"\n\"1673820\";\"Gaosjun\";\"other\"\n\"1673820\";\"Gaosyongshih\";\"other\"\n\"1673820\";\"Gaoxiongshi\";\"other\"\n\"1673820\";\"Kao-hsiung\";\"other\"\n\"1673820\";\"Kao-hsiung-shih\";\"other\"\n\"1673820\";\"Kaohsiung City\";\"other\"\n\"1673820\";\"gao xiong shi\";\"other\"\n\"1673820\";\"Гаосюн\";\"other\"\n\"1673820\";\"高雄巿\";\"other\"\n\"1673820\";\"高雄市\";\"other\"\n\"1674199\";\"Yilan\";\"main\"\n\"1674199\";\"I-lan\";\"other\"\n\"1674199\";\"I-lan-hsien\";\"other\"\n\"1674199\";\"I-lan-shih\";\"other\"\n\"1674199\";\"Ilan\";\"other\"\n\"1674199\";\"Ka-ma-lan\";\"other\"\n\"1674199\";\"Yilan City\";\"other\"\n\"1674199\";\"Yílán\";\"other\"\n\"1674199\";\"yi lan\";\"other\"\n\"1674199\";\"yi lan shi\";\"other\"\n\"1674199\";\"宜蘭\";\"other\"\n\"1674199\";\"宜蘭市\";\"other\"\n\"1674504\";\"Hualian\";\"main\"\n\"1674504\";\"Hua Lien Kang\";\"other\"\n\"1674504\";\"Hua-lien\";\"other\"\n\"1674504\";\"Hua-lien-chiang\";\"other\"\n\"1674504\";\"Hua-lien-hsien\";\"other\"\n\"1674504\";\"Hua-lien-shih\";\"other\"\n\"1674504\";\"Hualien\";\"other\"\n\"1675151\";\"Xinzhushi\";\"main\"\n\"1675151\";\"Hsin-chu\";\"other\"\n\"1675151\";\"Hsin-chu-hsien\";\"other\"\n\"1675151\";\"Hsin-chu-shih\";\"other\"\n\"1675151\";\"Sin'chzhu\";\"other\"\n\"1675151\";\"Sinjhushih\";\"other\"\n\"1675151\";\"xin zhu shi\";\"other\"\n\"1675151\";\"Синьчжу\";\"other\"\n\"1675151\";\"新竹市\";\"other\"\n\"1676242\";\"Hengchun\";\"main\"\n\"1676242\";\"Heng-ch'un\";\"other\"\n\"1676242\";\"Heng-ch’un\";\"other\"\n\"1676242\";\"heng chun\";\"other\"\n\"1676242\";\"恒春\";\"other\"\n\"1677112\";\"Zhubei\";\"main\"\n\"1677112\";\"Chu-pei\";\"other\"\n\"1677112\";\"Chupei\";\"other\"\n\"1677112\";\"Hung-mao\";\"other\"\n\"1677112\";\"Jhubei\";\"other\"\n\"1677112\";\"zhu bei\";\"other\"\n\"1677112\";\"竹北\";\"other\"\n\"1678008\";\"Jincheng\";\"main\"\n\"1678008\";\"Chin-ch'eng\";\"other\"\n\"1678008\";\"Chin-ch’eng\";\"other\"\n\"1678008\";\"Chin-men\";\"other\"\n\"1678008\";\"Chin-men-hsien\";\"other\"\n\"1678008\";\"Chin-men-hsien-ch'eng\";\"other\"\n\"1678008\";\"Chin-men-hsien-ch’eng\";\"other\"\n\"1678008\";\"Hou-p'u\";\"other\"\n\"1678008\";\"Hou-p’u\";\"other\"\n\"1678008\";\"Kinmen\";\"other\"\n\"1678008\";\"Quemoy\";\"other\"\n\"1678008\";\"Quemoyhsien\";\"other\"\n\"1678008\";\"金城\";\"other\"\n\"1678228\";\"Keelung\";\"main\"\n\"1678228\";\"Chi-lung\";\"other\"\n\"1678228\";\"Chi-lung-shih\";\"other\"\n\"1678228\";\"Chilung\";\"other\"\n\"1678228\";\"Co Long\";\"other\"\n\"1678228\";\"Cơ Long\";\"other\"\n\"1678228\";\"Jilong\";\"other\"\n\"1678228\";\"Jilongshi\";\"other\"\n\"1678228\";\"Jilongshih\";\"other\"\n\"1678228\";\"Shi-lun\";\"other\"\n\"1678228\";\"ji long shi\";\"other\"\n\"1678228\";\"jilung si\";\"other\"\n\"1678228\";\"Ши-лун\";\"other\"\n\"1678228\";\"基隆\";\"other\"\n\"1678228\";\"基隆市\";\"other\"\n\"1678228\";\"지룽 시\";\"other\"\n\"6695168\";\"Tainan City\";\"main\"\n\"6695168\";\"Tajnan'\";\"other\"\n\"6695168\";\"Тайнань\";\"other\"\n\"6696918\";\"Taoyuan City\";\"main\"\n\"6696918\";\"Taojuan'\";\"other\"\n\"6696918\";\"Таоюань\";\"other\"\n\"6748848\";\"Fangqiao\";\"main\"\n\"6748848\";\"Banciao\";\"other\"\n\"6748848\";\"Bank'jao\";\"other\"\n\"6748848\";\"Banqiao\";\"other\"\n\"6748848\";\"Fang-ch'iao\";\"other\"\n\"6748848\";\"Fang-ch’iao\";\"other\"\n\"6748848\";\"Pan-ch'iao\";\"other\"\n\"6748848\";\"Pan-ch’iao\";\"other\"\n\"6748848\";\"ban qiao\";\"other\"\n\"6748848\";\"Банкьяо\";\"other\"\n\"6748848\";\"板橋\";\"other\"\n\"6748848\";\"枋橋\";\"other\"\n\"6949678\";\"Taitung City\";\"main\"\n\"6949678\";\"GJai GJong\";\"other\"\n\"6949678\";\"Taidong\";\"other\"\n\"6949678\";\"Taitung\";\"other\"\n\"6949678\";\"Tchaj-tung\";\"other\"\n\"6949678\";\"Táidong\";\"other\"\n\"6949678\";\"tai dong shi\";\"other\"\n\"6949678\";\"Đài Đông\";\"other\"\n\"6949678\";\"台東市\";\"other\"\n\"7552914\";\"Nangan\";\"main\"\n\"7552914\";\"Nan-kan\";\"other\"\n\"7552914\";\"Nangan Xiang\";\"other\"\n\"7552914\";\"南竿\";\"other\"\n\"148730\";\"Zanzibar\";\"main\"\n\"148730\";\"Unguja\";\"other\"\n\"148730\";\"Zanzibar City\";\"other\"\n\"148730\";\"Занзибар\";\"other\"\n\"148842\";\"Wete\";\"main\"\n\"148842\";\"Veto\";\"other\"\n\"148842\";\"Weti\";\"other\"\n\"148842\";\"Вето\";\"other\"\n\"148942\";\"Vwawa\";\"main\"\n\"148942\";\"Vawa\";\"other\"\n\"148987\";\"Vikindu\";\"main\"\n\"149027\";\"Uyovu\";\"main\"\n\"149039\";\"Uwelini\";\"main\"\n\"149050\";\"Uvinza\";\"main\"\n\"149050\";\"Kimalapamba\";\"other\"\n\"149050\";\"Rutschugiposten\";\"other\"\n\"149050\";\"Urvinsa\";\"other\"\n\"149050\";\"Uwinsa\";\"other\"\n\"149070\";\"Utete\";\"main\"\n\"149114\";\"Usoke\";\"main\"\n\"149129\";\"Ushirombo\";\"main\"\n\"149132\";\"Usevia\";\"main\"\n\"149132\";\"Usevya\";\"other\"\n\"149151\";\"Usagara\";\"main\"\n\"149155\";\"Usa\";\"main\"\n\"149155\";\"Usa River\";\"other\"\n\"149172\";\"Urambo\";\"main\"\n\"149239\";\"Ulenje\";\"main\"\n\"149239\";\"Ulenji\";\"other\"\n\"149402\";\"Tunduma\";\"main\"\n\"149418\";\"Tumbi\";\"main\"\n\"149437\";\"Tukuyu\";\"main\"\n\"149437\";\"Neu-Langenberg\";\"other\"\n\"149437\";\"Neu-Langenburg\";\"other\"\n\"149437\";\"New Langenberg\";\"other\"\n\"149437\";\"Ntukuju\";\"other\"\n\"149512\";\"Tinde\";\"main\"\n\"149581\";\"Tarime\";\"main\"\n\"149606\";\"Tanga\";\"main\"\n\"149606\";\"Longa\";\"other\"\n\"149606\";\"tnjanyqa\";\"other\"\n\"149606\";\"Танга\";\"other\"\n\"149606\";\"تنجانيقا\";\"other\"\n\"149658\";\"Tabora\";\"main\"\n\"149658\";\"Табора\";\"other\"\n\"149703\";\"Sumbawanga\";\"main\"\n\"149703\";\"Zumbawanga\";\"other\"\n\"149703\";\"Zumbayanga\";\"other\"\n\"149768\";\"Soni\";\"main\"\n\"149775\";\"Songwa\";\"main\"\n\"149792\";\"Somanda\";\"main\"\n\"149812\";\"Sokoni\";\"main\"\n\"149854\";\"Sirari\";\"main\"\n\"149879\";\"Singida\";\"main\"\n\"149929\";\"Sikonge\";\"main\"\n\"150006\";\"Shinyanga\";\"main\"\n\"150006\";\"Schinjanga\";\"other\"\n\"150037\";\"Shelui\";\"main\"\n\"150099\";\"Sepuka\";\"main\"\n\"150099\";\"Sipuka\";\"other\"\n\"150276\";\"Same\";\"main\"\n\"150276\";\"Ssame\";\"other\"\n\"150276\";\"Zame\";\"other\"\n\"150436\";\"Rulenge\";\"main\"\n\"150453\";\"Rujewa\";\"main\"\n\"150453\";\"Rujewo\";\"other\"\n\"150634\";\"Puma\";\"main\"\n\"150689\";\"Poli\";\"main\"\n\"150793\";\"Pangani\";\"main\"\n\"150885\";\"Old Shinyanga\";\"main\"\n\"150930\";\"Nzega\";\"main\"\n\"151062\";\"Nyanguge\";\"main\"\n\"151108\";\"Nyamuswa\";\"main\"\n\"151211\";\"Nyalikungu\";\"main\"\n\"151211\";\"Nyarikungu\";\"other\"\n\"151262\";\"Nyakahanga\";\"main\"\n\"151266\";\"Nyakabindi\";\"main\"\n\"151363\";\"Nsunga\";\"main\"\n\"151373\";\"Nshamba\";\"main\"\n\"151424\";\"Nkove\";\"main\"\n\"151445\";\"Nkoaranga\";\"main\"\n\"151479\";\"Njombe\";\"main\"\n\"151479\";\"Njobe\";\"other\"\n\"151567\";\"Nguruka\";\"main\"\n\"151599\";\"Ngudu\";\"main\"\n\"151610\";\"Ngorongoro\";\"main\"\n\"151678\";\"Ngerengere\";\"main\"\n\"151711\";\"Ngara\";\"main\"\n\"151720\";\"Nganane\";\"main\"\n\"151775\";\"Ndungu\";\"main\"\n\"151872\";\"Ndago\";\"main\"\n\"151920\";\"Nansio\";\"main\"\n\"151929\";\"Nangwa\";\"main\"\n\"151986\";\"Namanyere\";\"main\"\n\"151988\";\"Namanga\";\"main\"\n\"152009\";\"Nakatunguru\";\"main\"\n\"152042\";\"Naberera\";\"main\"\n\"152169\";\"Mwembe\";\"main\"\n\"152169\";\"Mwemba\";\"other\"\n\"152183\";\"Mwaya\";\"main\"\n\"152183\";\"Muaja\";\"other\"\n\"152183\";\"Mvaya\";\"other\"\n\"152224\";\"Mwanza\";\"main\"\n\"152224\";\"Muansa\";\"other\"\n\"152224\";\"Muanza\";\"other\"\n\"152224\";\"Muvanzo\";\"other\"\n\"152224\";\"Mvanza\";\"other\"\n\"152224\";\"Mwamza\";\"other\"\n\"152224\";\"Mwansa\";\"other\"\n\"152224\";\"Мванза\";\"other\"\n\"152265\";\"Mwanga\";\"main\"\n\"152376\";\"Mwadui\";\"main\"\n\"152403\";\"Mvomero\";\"main\"\n\"152451\";\"Musoma\";\"main\"\n\"152451\";\"Mazama\";\"other\"\n\"152451\";\"Misoma\";\"other\"\n\"152451\";\"Musome\";\"other\"\n\"152451\";\"Muzoma\";\"other\"\n\"152451\";\"Мусома\";\"other\"\n\"152497\";\"Muriti\";\"main\"\n\"152546\";\"Mungaa\";\"main\"\n\"152570\";\"Muleba\";\"main\"\n\"152632\";\"Muheza\";\"main\"\n\"152632\";\"Mubeza\";\"other\"\n\"152663\";\"Mugumu\";\"main\"\n\"152689\";\"Mugango\";\"main\"\n\"152689\";\"Mgango\";\"other\"\n\"152718\";\"Mtwango\";\"main\"\n\"152743\";\"Mto wa Mbu\";\"main\"\n\"152781\";\"Mtinko\";\"main\"\n\"152793\";\"Mtimbira\";\"main\"\n\"152877\";\"Mtambile\";\"main\"\n\"152877\";\"Mtambili\";\"other\"\n\"152877\";\"Mwembeduka\";\"other\"\n\"152933\";\"Msowero\";\"main\"\n\"153046\";\"Msanga\";\"main\"\n\"153094\";\"Mpwapwa\";\"main\"\n\"153094\";\"Mpapua\";\"other\"\n\"153094\";\"Mpapwa\";\"other\"\n\"153176\";\"Mpanda\";\"main\"\n\"153209\";\"Moshi\";\"main\"\n\"153209\";\"Moschi\";\"other\"\n\"153209\";\"Моши\";\"other\"\n\"153220\";\"Morogoro\";\"main\"\n\"153220\";\"Mkoa wa Morogoro\";\"other\"\n\"153220\";\"Mrogoro\";\"other\"\n\"153220\";\"Murogoro\";\"other\"\n\"153220\";\"morogoro zhou\";\"other\"\n\"153220\";\"Морогоро\";\"other\"\n\"153220\";\"モロゴロ州\";\"other\"\n\"153247\";\"Monduli\";\"main\"\n\"153352\";\"Mlowo\";\"main\"\n\"153384\";\"Mlimba\";\"main\"\n\"153408\";\"Mlangali\";\"main\"\n\"153412\";\"Mlandizi\";\"main\"\n\"153423\";\"Mlalo\";\"main\"\n\"153482\";\"Mkuranga\";\"main\"\n\"153482\";\"Mkwanga\";\"other\"\n\"153585\";\"Mkokotoni\";\"main\"\n\"153709\";\"Mwandiga\";\"main\"\n\"153709\";\"Mandyga\";\"other\"\n\"153709\";\"Miwandica\";\"other\"\n\"153759\";\"Missungwi\";\"main\"\n\"153759\";\"Isungwi\";\"other\"\n\"153759\";\"Misungwi\";\"other\"\n\"153772\";\"Misasi\";\"main\"\n\"153871\";\"Mikumi\";\"main\"\n\"153955\";\"Micheweni\";\"main\"\n\"154002\";\"Mhango\";\"main\"\n\"154097\";\"Mgandu\";\"main\"\n\"154309\";\"Mbumi\";\"main\"\n\"154309\";\"Mbuni\";\"other\"\n\"154313\";\"Mbulu\";\"main\"\n\"154313\";\"Burru\";\"other\"\n\"154313\";\"Iraku\";\"other\"\n\"154313\";\"Mburu\";\"other\"\n\"154313\";\"Umbulu\";\"other\"\n\"154321\";\"Mbuguni\";\"main\"\n\"154380\";\"Mbeya\";\"main\"\n\"154380\";\"Mbee\";\"other\"\n\"154380\";\"Мбее\";\"other\"\n\"154470\";\"Mazinde\";\"main\"\n\"154566\";\"Matui\";\"main\"\n\"154576\";\"Matongo\";\"main\"\n\"154635\";\"Matamba\";\"main\"\n\"154638\";\"Matai\";\"main\"\n\"154648\";\"Maswa\";\"main\"\n\"154654\";\"Masumbwe\";\"main\"\n\"154666\";\"Masoko\";\"main\"\n\"154666\";\"Bujesi\";\"other\"\n\"154780\";\"Maramba\";\"main\"\n\"154915\";\"Maneromango\";\"main\"\n\"154995\";\"Malya\";\"main\"\n\"154995\";\"Malaya\";\"other\"\n\"155016\";\"Malinyi\";\"main\"\n\"155052\";\"Malangali\";\"main\"\n\"155056\";\"Malampaka\";\"main\"\n\"155076\";\"Makuyuni\";\"main\"\n\"155093\";\"Makungu\";\"main\"\n\"155093\";\"Makuugu\";\"other\"\n\"155101\";\"Makumbako\";\"main\"\n\"155101\";\"Makambako\";\"other\"\n\"155187\";\"Makanya\";\"main\"\n\"155187\";\"Makania\";\"other\"\n\"155244\";\"Majengo\";\"main\"\n\"155263\";\"Mahonda\";\"main\"\n\"155274\";\"Mahenge\";\"main\"\n\"155274\";\"Mahange\";\"other\"\n\"155285\";\"Mahanje\";\"main\"\n\"155307\";\"Magu Kahangara\";\"main\"\n\"155310\";\"Magugu\";\"main\"\n\"155310\";\"Magagu\";\"other\"\n\"155321\";\"Magomeni\";\"main\"\n\"155322\";\"Magomeni\";\"main\"\n\"155334\";\"Magole\";\"main\"\n\"155405\";\"Mafinga\";\"main\"\n\"155514\";\"Mabamba\";\"main\"\n\"155515\";\"Mabama\";\"main\"\n\"155569\";\"Lushoto\";\"main\"\n\"155569\";\"Wilhelmstal\";\"other\"\n\"155584\";\"Lupiro\";\"main\"\n\"155743\";\"Lugoba\";\"main\"\n\"155848\";\"Longido\";\"main\"\n\"155921\";\"Liwale\";\"main\"\n\"155921\";\"Livale\";\"other\"\n\"156025\";\"Lembeni\";\"main\"\n\"156080\";\"Lalago\";\"main\"\n\"156098\";\"Laela\";\"main\"\n\"156111\";\"Kyela\";\"main\"\n\"156124\";\"Kyaka\";\"main\"\n\"156312\";\"Kwakoa\";\"main\"\n\"156493\";\"Kongwa\";\"main\"\n\"156510\";\"Kondoa\";\"main\"\n\"156510\";\"Kondoa Irangi\";\"other\"\n\"156513\";\"Konde\";\"main\"\n\"156588\";\"Koani Ndogo\";\"main\"\n\"156589\";\"Koani\";\"main\"\n\"156627\";\"Kiwira\";\"main\"\n\"156636\";\"Kiwengwa\";\"main\"\n\"156636\";\"Kivengva\";\"other\"\n\"156636\";\"Kiwembwa\";\"other\"\n\"156636\";\"Kiwengwo\";\"other\"\n\"156636\";\"Кивенгва\";\"other\"\n\"156918\";\"Kisiwani\";\"main\"\n\"156918\";\"Kiswani\";\"other\"\n\"156951\";\"Kisiju\";\"main\"\n\"156963\";\"Kishapu\";\"main\"\n\"156974\";\"Kisesa\";\"main\"\n\"156996\";\"Kisarawe\";\"main\"\n\"156996\";\"Kiserawe\";\"other\"\n\"157014\";\"Kisanga\";\"main\"\n\"157045\";\"Kirya\";\"main\"\n\"157107\";\"Kirando\";\"main\"\n\"157198\";\"Kiomboi\";\"main\"\n\"157247\";\"Kintinku\";\"main\"\n\"157268\";\"Kingori\";\"main\"\n\"157366\";\"Kimamba\";\"main\"\n\"157403\";\"Kilosa\";\"main\"\n\"157403\";\"Kilossa\";\"other\"\n\"157429\";\"Kilindoni\";\"main\"\n\"157448\";\"Kilimatinde\";\"main\"\n\"157632\";\"Kijini\";\"main\"\n\"157653\";\"Kihurio\";\"main\"\n\"157738\";\"Kigoma\";\"main\"\n\"157738\";\"Kigome\";\"other\"\n\"157738\";\"Kigomo\";\"other\"\n\"157738\";\"qygwmh\";\"other\"\n\"157738\";\"Кигоме\";\"other\"\n\"157738\";\"קיגומה\";\"other\"\n\"157826\";\"Kidodi\";\"main\"\n\"157863\";\"Kidatu\";\"main\"\n\"157960\";\"Kibondo\";\"main\"\n\"157977\";\"Kibiti\";\"main\"\n\"158006\";\"Kibaya\";\"main\"\n\"158016\";\"Kibara\";\"main\"\n\"158016\";\"Kibarra\";\"other\"\n\"158024\";\"Kibakwe\";\"main\"\n\"158027\";\"Kibaha\";\"main\"\n\"158151\";\"Katumba\";\"main\"\n\"158151\";\"Kabumba\";\"other\"\n\"158151\";\"Катумба\";\"other\"\n\"158160\";\"Katoro\";\"main\"\n\"158161\";\"Katoro\";\"main\"\n\"158178\";\"Katesh\";\"main\"\n\"158178\";\"Ghatesh\";\"other\"\n\"158179\";\"Katerero\";\"main\"\n\"158214\";\"Kasulu\";\"main\"\n\"158214\";\"Kassulo\";\"other\"\n\"158214\";\"Kasulo\";\"other\"\n\"158214\";\"Касулу\";\"other\"\n\"158289\";\"Kasamwa\";\"main\"\n\"158321\";\"Karema\";\"main\"\n\"158324\";\"Karatu\";\"main\"\n\"158422\";\"Kandete\";\"main\"\n\"158492\";\"Kamachumu\";\"main\"\n\"158514\";\"Kaliua\";\"main\"\n\"158563\";\"Kakonko\";\"main\"\n\"158597\";\"Kahama\";\"main\"\n\"158684\";\"Kabanga\";\"main\"\n\"158825\";\"Izazi\";\"main\"\n\"158825\";\"Isasi\";\"other\"\n\"158825\";\"Zasi\";\"other\"\n\"158876\";\"Itumba\";\"main\"\n\"158904\";\"Itigi\";\"main\"\n\"158974\";\"Issenye\";\"main\"\n\"158974\";\"Isenye\";\"other\"\n\"159045\";\"Isaka\";\"main\"\n\"159045\";\"Исака\";\"other\"\n\"159071\";\"Iringa\";\"main\"\n\"159071\";\"Иринга\";\"other\"\n\"159107\";\"Ipinda\";\"main\"\n\"159107\";\"Ipande\";\"other\"\n\"159134\";\"Inyonga\";\"main\"\n\"159134\";\"Nyonga\";\"other\"\n\"159179\";\"Ilula\";\"main\"\n\"159186\";\"Ilongero\";\"main\"\n\"159186\";\"Irongero\";\"other\"\n\"159218\";\"Ilembula\";\"main\"\n\"159219\";\"Ilembo\";\"main\"\n\"159242\";\"Ikwiriri\";\"main\"\n\"159267\";\"Ikungi\";\"main\"\n\"159380\";\"Igurusi\";\"main\"\n\"159380\";\"Igurunzi\";\"other\"\n\"159382\";\"Igurubi\";\"main\"\n\"159386\";\"Igunga\";\"main\"\n\"159398\";\"Igugunu\";\"main\"\n\"159398\";\"Iguguno\";\"other\"\n\"159492\";\"Ifakara\";\"main\"\n\"159647\";\"Hedaru\";\"main\"\n\"159909\";\"Geiro\";\"main\"\n\"159909\";\"Gairo\";\"other\"\n\"159936\";\"Gamba\";\"main\"\n\"159951\";\"Galappo\";\"main\"\n\"159951\";\"Galapo\";\"other\"\n\"159951\";\"Gwanzave\";\"other\"\n\"160073\";\"Endasak\";\"main\"\n\"160141\";\"Dunda\";\"main\"\n\"160172\";\"Dongobesh\";\"main\"\n\"160172\";\"Dongabesh\";\"other\"\n\"160196\";\"Dodoma\";\"main\"\n\"160196\";\"Dodomao\";\"other\"\n\"160196\";\"Dódóma\";\"other\"\n\"160196\";\"Idodoma\";\"other\"\n\"160196\";\"dodoma\";\"other\"\n\"160196\";\"duo duo ma\";\"other\"\n\"160196\";\"dwdwma\";\"other\"\n\"160196\";\"dwdwmh\";\"other\"\n\"160196\";\"Додома\";\"other\"\n\"160196\";\"דודומה\";\"other\"\n\"160196\";\"دودوما\";\"other\"\n\"160196\";\"डोडोमा\";\"other\"\n\"160196\";\"ዶዶማ\";\"other\"\n\"160196\";\"ドドマ\";\"other\"\n\"160196\";\"多多马\";\"other\"\n\"160263\";\"Dar es Salaam\";\"main\"\n\"160263\";\"Dar es Salam\";\"other\"\n\"160263\";\"Dar es Salamas\";\"other\"\n\"160263\";\"Dar es Salám\";\"other\"\n\"160263\";\"Dar es-Salaam\";\"other\"\n\"160263\";\"Dar-ehs-Salam\";\"other\"\n\"160263\";\"Dar-es-Salaam\";\"other\"\n\"160263\";\"Daresalamo\";\"other\"\n\"160263\";\"Daressalam\";\"other\"\n\"160263\";\"Dār es Salām\";\"other\"\n\"160263\";\"Ntontoma\";\"other\"\n\"160263\";\"da lei si sa la mu\";\"other\"\n\"160263\";\"daleueseusallam\";\"other\"\n\"160263\";\"dar alslam\";\"other\"\n\"160263\";\"daruesusaramu\";\"other\"\n\"160263\";\"Ντοντόμα\";\"other\"\n\"160263\";\"Дар ес Салам\";\"other\"\n\"160263\";\"Дар-ес-Салаам\";\"other\"\n\"160263\";\"Дар-эс-Салам\";\"other\"\n\"160263\";\"דאר א-סלאם\";\"other\"\n\"160263\";\"دار السلام\";\"other\"\n\"160263\";\"ダルエスサラーム\";\"other\"\n\"160263\";\"达累斯萨拉姆\";\"other\"\n\"160263\";\"다르에스살람\";\"other\"\n\"160266\";\"Dareda\";\"main\"\n\"160266\";\"Ndareda\";\"other\"\n\"160464\";\"Chimala\";\"main\"\n\"160552\";\"Chato\";\"main\"\n\"160552\";\"Shato\";\"other\"\n\"160592\";\"Chanika\";\"main\"\n\"160660\";\"Chalinze\";\"main\"\n\"160670\";\"Chala\";\"main\"\n\"160677\";\"Chake Chake\";\"main\"\n\"160677\";\"Chaki Chaki\";\"other\"\n\"160798\";\"Butiama\";\"main\"\n\"160798\";\"Buliama\";\"other\"\n\"160833\";\"Buseresere\";\"main\"\n\"160877\";\"Bungu\";\"main\"\n\"160892\";\"Bunda\";\"main\"\n\"160950\";\"Bukonyo\";\"main\"\n\"160961\";\"Bukoba\";\"main\"\n\"160961\";\"Букоба\";\"other\"\n\"160971\";\"Bukene\";\"main\"\n\"161022\";\"Bugene\";\"main\"\n\"161023\";\"Bugarama\";\"main\"\n\"161154\";\"Biharamulo\";\"main\"\n\"161154\";\"Biaramulo\";\"other\"\n\"161154\";\"Usuwi\";\"other\"\n\"161197\";\"Basotu\";\"main\"\n\"161204\";\"Bashanet\";\"main\"\n\"161204\";\"Endalaghanet\";\"other\"\n\"161204\";\"Endalaghranid\";\"other\"\n\"161218\";\"Bariadi\";\"main\"\n\"161218\";\"Bariati\";\"other\"\n\"161290\";\"Bagamoyo\";\"main\"\n\"161290\";\"Bagamojo\";\"other\"\n\"161312\";\"Babati\";\"main\"\n\"161325\";\"Arusha\";\"main\"\n\"161325\";\"Aruscha\";\"other\"\n\"161325\";\"Aruso\";\"other\"\n\"161325\";\"Aruŝo\";\"other\"\n\"161325\";\"a lu sha\";\"other\"\n\"161325\";\"arusha\";\"other\"\n\"161325\";\"arwsha\";\"other\"\n\"161325\";\"Аруша\";\"other\"\n\"161325\";\"آروشا\";\"other\"\n\"161325\";\"アルーシャ\";\"other\"\n\"161325\";\"阿鲁沙\";\"other\"\n\"877384\";\"Tingi\";\"main\"\n\"877391\";\"Tandahimba\";\"main\"\n\"877401\";\"Songea\";\"main\"\n\"877401\";\"Ssongea\";\"other\"\n\"877401\";\"Сонгеа\";\"other\"\n\"877433\";\"Ruangwa\";\"main\"\n\"877471\";\"Nyangao\";\"main\"\n\"877532\";\"Newala Kisimani\";\"main\"\n\"877581\";\"Nanyamba\";\"main\"\n\"877588\";\"Nanhyanga\";\"main\"\n\"877588\";\"Nanyanga\";\"other\"\n\"877588\";\"Nyakahanga\";\"other\"\n\"877597\";\"Nangomba\";\"main\"\n\"877605\";\"Nanganga\";\"main\"\n\"877631\";\"Namikupa\";\"main\"\n\"877670\";\"Namalenga\";\"main\"\n\"877702\";\"Nachingwea\";\"main\"\n\"877702\";\"Nachingwa\";\"other\"\n\"877747\";\"Mtwara\";\"main\"\n\"877747\";\"Mikindani\";\"other\"\n\"877747\";\"Mtvara\";\"other\"\n\"877747\";\"Мтвара\";\"other\"\n\"877784\";\"Mtama\";\"main\"\n\"877925\";\"Mingoyo\";\"main\"\n\"877998\";\"Mbinga\";\"main\"\n\"878006\";\"Mbekenyera\";\"main\"\n\"878023\";\"Mbamba Bay\";\"main\"\n\"878023\";\"Mbamba\";\"other\"\n\"878023\";\"Mbampa\";\"other\"\n\"878041\";\"Matiri\";\"main\"\n\"878054\";\"Masuguru\";\"main\"\n\"878054\";\"Masaguru\";\"other\"\n\"878058\";\"Masasi\";\"main\"\n\"878058\";\"Massassi\";\"other\"\n\"878058\";\"Масаси\";\"other\"\n\"878073\";\"Maposeni\";\"main\"\n\"878087\";\"Manda\";\"main\"\n\"878087\";\"Bongo\";\"other\"\n\"878087\";\"Ilela\";\"other\"\n\"878087\";\"Vamanda\";\"other\"\n\"878087\";\"Wiedhafen\";\"other\"\n\"878087\";\"Wiedhaven\";\"other\"\n\"878121\";\"Mahuta\";\"main\"\n\"878141\";\"Madimba\";\"main\"\n\"878184\";\"Lulindi\";\"main\"\n\"878195\";\"Lukuledi\";\"main\"\n\"878223\";\"Luchingu\";\"main\"\n\"878242\";\"Liuli\";\"main\"\n\"878281\";\"Lindi\";\"main\"\n\"878281\";\"Linda\";\"other\"\n\"878281\";\"Линда\";\"other\"\n\"878362\";\"Kitangari\";\"main\"\n\"878367\";\"Kitama\";\"main\"\n\"878400\";\"Kigonsera\";\"main\"\n\"878455\";\"Chiungutwa\";\"main\"\n\"6640202\";\"Merelani\";\"main\"\n\"6640202\";\"Meralani\";\"other\"\n\"6640202\";\"Merelani Hills\";\"other\"\n\"6640202\";\"Simanjiro district\";\"other\"\n\"6640202\";\"Tanzanite Mine and Deposit\";\"other\"\n\"7284275\";\"Nungwi\";\"main\"\n\"7284275\";\"Nungvi\";\"other\"\n\"7284275\";\"Нунгви\";\"other\"\n\"461727\";\"Olenevka\";\"main\"\n\"461727\";\"Karadcha\";\"other\"\n\"461727\";\"Karadshi\";\"other\"\n\"461727\";\"Оленевка\";\"other\"\n\"505257\";\"Urzuf\";\"main\"\n\"505257\";\"Primorskoye\";\"other\"\n\"505257\";\"Zelenoye\";\"other\"\n\"505257\";\"Урзуф\";\"other\"\n\"613273\";\"Lebedyn\";\"main\"\n\"613273\";\"LEBEDIN\";\"other\"\n\"613273\";\"Lebedin\";\"other\"\n\"613273\";\"ЛЕБЕДИН\";\"other\"\n\"616196\";\"Staryy Dobrotvor\";\"main\"\n\"616196\";\"Staryy Dobrotvir\";\"other\"\n\"616743\";\"Druzhkovka\";\"main\"\n\"616743\";\"DRUZHKOVKA\";\"other\"\n\"616743\";\"ДРУЖКОВКА\";\"other\"\n\"686729\";\"Vasylivka\";\"main\"\n\"686729\";\"Vasil'yevka\";\"other\"\n\"686729\";\"Vasilevka\";\"other\"\n\"686729\";\"Vasilivka\";\"other\"\n\"686729\";\"Vasil’yevka\";\"other\"\n\"686729\";\"Василівка\";\"other\"\n\"686803\";\"Zvenyhorodka\";\"main\"\n\"686803\";\"ZVENIGORODKA\";\"other\"\n\"686803\";\"Zvenigorodka\";\"other\"\n\"686803\";\"ЗВЕНИГОРОДКА\";\"other\"\n\"686812\";\"Zuya\";\"main\"\n\"686812\";\"Zuja\";\"other\"\n\"686812\";\"Зуя\";\"other\"\n\"686818\";\"Zuhres\";\"main\"\n\"686818\";\"ZUGREHS\";\"other\"\n\"686818\";\"Zugres\";\"other\"\n\"686818\";\"ЗУГРЭС\";\"other\"\n\"686818\";\"Зугрес\";\"other\"\n\"686863\";\"Zolotyy Potik\";\"main\"\n\"686863\";\"Potok\";\"other\"\n\"686863\";\"Potok Zloty\";\"other\"\n\"686863\";\"Potok Złoty\";\"other\"\n\"686863\";\"Zolotij Potik\";\"other\"\n\"686863\";\"Zolotoy Potok\";\"other\"\n\"686863\";\"Золотий Потік\";\"other\"\n\"686875\";\"Zolotonosha\";\"main\"\n\"686875\";\"ZOLOTONOSHA\";\"other\"\n\"686875\";\"ЗОЛОТОНОША\";\"other\"\n\"686895\";\"Zolochiv\";\"main\"\n\"686895\";\"ZOLOCHEV\";\"other\"\n\"686895\";\"Zolochev\";\"other\"\n\"686895\";\"ЗОЛОЧЕВ\";\"other\"\n\"686896\";\"Zolochiv\";\"main\"\n\"686896\";\"Zlochev\";\"other\"\n\"686896\";\"Zlochuv\";\"other\"\n\"686896\";\"Zloczow\";\"other\"\n\"686896\";\"Zolochev\";\"other\"\n\"686896\";\"Zolociv\";\"other\"\n\"686896\";\"Złoczów\";\"other\"\n\"686896\";\"Золочев\";\"other\"\n\"686896\";\"Золочів\";\"other\"\n\"686919\";\"Znam”yanka\";\"main\"\n\"686919\";\"Znam\\\"yanka\";\"ascii\"\n\"686919\";\"Snamenka\";\"other\"\n\"686919\";\"ZNAMENKA\";\"other\"\n\"686919\";\"Znamenka\";\"other\"\n\"686919\";\"Znamenka Pervaya\";\"other\"\n\"686919\";\"Znomenka\";\"other\"\n\"686919\";\"ЗНАМЕНКА\";\"other\"\n\"686928\";\"Zmiyev\";\"main\"\n\"686928\";\"Gottvald\";\"other\"\n\"686928\";\"Gotval'd\";\"other\"\n\"686928\";\"Gotval’d\";\"other\"\n\"686928\";\"ZMIEV\";\"other\"\n\"686928\";\"Zmiev\";\"other\"\n\"686928\";\"Zmiiv\";\"other\"\n\"686928\";\"Zmiyiv\";\"other\"\n\"686928\";\"ЗМИЕВ\";\"other\"\n\"686928\";\"Зміїв\";\"other\"\n\"686932\";\"Zlynka\";\"main\"\n\"686932\";\"Novoukrainsk\";\"other\"\n\"686932\";\"Zlinka\";\"other\"\n\"686932\";\"Злинка\";\"other\"\n\"686932\";\"Злынка\";\"other\"\n\"686967\";\"Zhytomyr\";\"main\"\n\"686967\";\"Jitomir\";\"other\"\n\"686967\";\"Schytomyr\";\"other\"\n\"686967\";\"Shitomir\";\"other\"\n\"686967\";\"Zhitomir\";\"other\"\n\"686967\";\"Zitomir\";\"other\"\n\"686967\";\"Zjytomyr\";\"other\"\n\"686967\";\"Zsitomir\";\"other\"\n\"686967\";\"Zytomierz\";\"other\"\n\"686967\";\"Zytomyr\";\"other\"\n\"686967\";\"jitomileu\";\"other\"\n\"686967\";\"jitomiru\";\"other\"\n\"686967\";\"z'ytwmyr\";\"other\"\n\"686967\";\"Żytomierz\";\"other\"\n\"686967\";\"Žitomir\";\"other\"\n\"686967\";\"Žytomyr\";\"other\"\n\"686967\";\"Житомир\";\"other\"\n\"686967\";\"ז'יטומיר\";\"other\"\n\"686967\";\"ジトーミル\";\"other\"\n\"686967\";\"지토미르\";\"other\"\n\"686970\";\"Zhvanets\";\"main\"\n\"686970\";\"Zhvanec\";\"other\"\n\"686970\";\"Zhvaned\";\"other\"\n\"686970\";\"Жванец\";\"other\"\n\"687009\";\"Zhuravka\";\"main\"\n\"687009\";\"Журавка\";\"other\"\n\"687065\";\"Zhovtneve\";\"main\"\n\"687065\";\"Biliche\";\"other\"\n\"687065\";\"Bilicze\";\"other\"\n\"687065\";\"Vilichi\";\"other\"\n\"687065\";\"Zhovtnevoye\";\"other\"\n\"687065\";\"Жовтневе\";\"other\"\n\"687093\";\"Zhovkva\";\"main\"\n\"687093\";\"Nesterov\";\"other\"\n\"687093\";\"Schowkwa\";\"other\"\n\"687093\";\"Zholkev\";\"other\"\n\"687093\";\"Zholkva\";\"other\"\n\"687093\";\"Zhulkev\";\"other\"\n\"687093\";\"Zolkiew\";\"other\"\n\"687093\";\"Zovkva\";\"other\"\n\"687093\";\"joukeuba\";\"other\"\n\"687093\";\"joukuvu~a\";\"other\"\n\"687093\";\"z'wbqbh\";\"other\"\n\"687093\";\"Żółkiew\";\"other\"\n\"687093\";\"Žovkva\";\"other\"\n\"687093\";\"Жовква\";\"other\"\n\"687093\";\"Жолква\";\"other\"\n\"687093\";\"ז'ובקבה\";\"other\"\n\"687093\";\"ジョウクヴァ\";\"other\"\n\"687093\";\"조우크바\";\"other\"\n\"687116\";\"Zhmerynka\";\"main\"\n\"687116\";\"Zhmerinka\";\"other\"\n\"687116\";\"Жмеринка\";\"other\"\n\"687191\";\"Zhelyabovka\";\"main\"\n\"687191\";\"Zheljabovka\";\"other\"\n\"687191\";\"Желябовка\";\"other\"\n\"687196\";\"Zhovti Vody\";\"main\"\n\"687196\";\"Rudnik Shvarts\";\"other\"\n\"687196\";\"Zheleznyy Rudnik Shvarts\";\"other\"\n\"687196\";\"Zheltaya Reka\";\"other\"\n\"687196\";\"Zheltye Vody\";\"other\"\n\"687196\";\"Zheltyye Vody\";\"other\"\n\"687196\";\"Zhëltaya Reka\";\"other\"\n\"687196\";\"Zhëltyye Vody\";\"other\"\n\"687196\";\"Zovti Vodi\";\"other\"\n\"687196\";\"Желтые Воды\";\"other\"\n\"687196\";\"Жовті Води\";\"other\"\n\"687245\";\"Zhashkiv\";\"main\"\n\"687245\";\"ZHASHKOV\";\"other\"\n\"687245\";\"Zasashkhov\";\"other\"\n\"687245\";\"Zaskiv\";\"other\"\n\"687245\";\"Zhashkov\";\"other\"\n\"687245\";\"ЖАШКОВ\";\"other\"\n\"687245\";\"Жашків\";\"other\"\n\"687277\";\"Zhurivka\";\"main\"\n\"687277\";\"ZGUROVKA\";\"other\"\n\"687277\";\"Zgurivka\";\"other\"\n\"687277\";\"Zgurovka\";\"other\"\n\"687277\";\"ЗГУРОВКА\";\"other\"\n\"687277\";\"Згурівка\";\"other\"\n\"687292\";\"Zin’kiv\";\"main\"\n\"687292\";\"Zin'kiv\";\"ascii\"\n\"687292\";\"Zen'kov\";\"other\"\n\"687292\";\"Zen’kov\";\"other\"\n\"687292\";\"Зеньков\";\"other\"\n\"687432\";\"Zdolbuniv\";\"main\"\n\"687432\";\"Zdolbunov\";\"other\"\n\"687432\";\"Zdolbunovo\";\"other\"\n\"687432\";\"Zdolbunow\";\"other\"\n\"687432\";\"Zdolbunuv\";\"other\"\n\"687432\";\"Zdołbunów\";\"other\"\n\"687432\";\"Здолбунов\";\"other\"\n\"687432\";\"Здолбунів\";\"other\"\n\"687433\";\"Zdolbitsa\";\"main\"\n\"687433\";\"Zdolbica\";\"other\"\n\"687433\";\"Zdołbica\";\"other\"\n\"687449\";\"Zboriv\";\"main\"\n\"687449\";\"Zborov\";\"other\"\n\"687449\";\"Zborow\";\"other\"\n\"687449\";\"Zboruv\";\"other\"\n\"687449\";\"Zborów\";\"other\"\n\"687449\";\"Зборів\";\"other\"\n\"687455\";\"Zbarazh\";\"main\"\n\"687455\";\"Zbaraz\";\"other\"\n\"687455\";\"Збараж\";\"other\"\n\"687526\";\"Zavallya\";\"main\"\n\"687526\";\"ZAVAL'E\";\"other\"\n\"687526\";\"Zaval'ye\";\"other\"\n\"687526\";\"Zavallja\";\"other\"\n\"687526\";\"Zaval’ye\";\"other\"\n\"687526\";\"ЗАВАЛЬЕ\";\"other\"\n\"687526\";\"Завалля\";\"other\"\n\"687556\";\"Karolino-Buhaz\";\"main\"\n\"687556\";\"Bugaz\";\"other\"\n\"687556\";\"Kar'yer Devyatnadtsat' Kilometrov\";\"other\"\n\"687556\";\"Karalino Bugaz\";\"other\"\n\"687556\";\"Karolino-Bugaz\";\"other\"\n\"687556\";\"Kar’yer Devyatnadtsat’ Kilometrov\";\"other\"\n\"687556\";\"Zatoka\";\"other\"\n\"687556\";\"Каролино-Бугаз\";\"other\"\n\"687557\";\"Zatoka\";\"main\"\n\"687557\";\"Bugas\";\"other\"\n\"687557\";\"Bugaz\";\"other\"\n\"687557\";\"Затока\";\"other\"\n\"687562\";\"Zatyshshya\";\"main\"\n\"687562\";\"Zatish'ye\";\"other\"\n\"687562\";\"Zatishshja\";\"other\"\n\"687562\";\"Zatish’ye\";\"other\"\n\"687562\";\"Затишшя\";\"other\"\n\"687578\";\"Zastavna\";\"main\"\n\"687578\";\"Zastavka\";\"other\"\n\"687578\";\"Zastazna\";\"other\"\n\"687578\";\"Заставна\";\"other\"\n\"687602\";\"Zarya\";\"main\"\n\"687602\";\"Camcic\";\"other\"\n\"687602\";\"Camcicu\";\"other\"\n\"687602\";\"Kamchik\";\"other\"\n\"687602\";\"Kamchiku\";\"other\"\n\"687602\";\"Zorja\";\"other\"\n\"687602\";\"Zorya\";\"other\"\n\"687602\";\"Зоря\";\"other\"\n\"687645\";\"Zarichchya\";\"main\"\n\"687645\";\"Zarech'ye\";\"other\"\n\"687645\";\"Zarech’ye\";\"other\"\n\"687645\";\"Zaricca\";\"other\"\n\"687645\";\"Zazheche\";\"other\"\n\"687645\";\"Заріччя\";\"other\"\n\"687652\";\"Zarichne\";\"main\"\n\"687652\";\"Pogost Zazhechny\";\"other\"\n\"687652\";\"Pogost-Zarechnyy\";\"other\"\n\"687652\";\"Pohost Zarzeczny\";\"other\"\n\"687652\";\"Zarechnoye\";\"other\"\n\"687652\";\"Zaricne\";\"other\"\n\"687652\";\"Зарічне\";\"other\"\n\"687700\";\"Zaporizhzhya\";\"main\"\n\"687700\";\"Aleksandrovsk\";\"other\"\n\"687700\";\"Saporoshje\";\"other\"\n\"687700\";\"Zaborozha\";\"other\"\n\"687700\";\"Zaporizza\";\"other\"\n\"687700\";\"Zaporozh'e\";\"other\"\n\"687700\";\"Zaporozh'ye\";\"other\"\n\"687700\";\"Zaporozh’e\";\"other\"\n\"687700\";\"Zaporozh’ye\";\"other\"\n\"687700\";\"Запорожье\";\"other\"\n\"687700\";\"Запоріжжя\";\"other\"\n\"687726\";\"Zaozerne\";\"main\"\n\"687726\";\"Zaozernoe\";\"other\"\n\"687726\";\"Zaozernoye\";\"other\"\n\"687726\";\"Zaozërnoye\";\"other\"\n\"687726\";\"Заозерне\";\"other\"\n\"687726\";\"Заозерное\";\"other\"\n\"687787\";\"Zaliztsi\";\"main\"\n\"687787\";\"Zalizci\";\"other\"\n\"687787\";\"Zaliztsy\";\"other\"\n\"687787\";\"Zalos'tse Stare\";\"other\"\n\"687787\";\"Zalosce\";\"other\"\n\"687787\";\"Zalos’tse Stare\";\"other\"\n\"687787\";\"Zalozce\";\"other\"\n\"687787\";\"Zalozhtse\";\"other\"\n\"687787\";\"Zalozhtsy\";\"other\"\n\"687787\";\"Zalozhtsy-Stare\";\"other\"\n\"687787\";\"Załośce\";\"other\"\n\"687787\";\"Залізці\";\"other\"\n\"687790\";\"Железный порт\";\"main\"\n\"687790\";\"Zheleznyj port\";\"ascii\"\n\"687790\";\"Zaliznij port\";\"other\"\n\"687790\";\"Zhelezny Port\";\"other\"\n\"687790\";\"Zheleznyy Port\";\"other\"\n\"687790\";\"Zhelzeny Port\";\"other\"\n\"687790\";\"Залізний порт\";\"other\"\n\"687796\";\"Zaliznychne\";\"main\"\n\"687796\";\"Dvadtsatiletiye Oktyabr'\";\"other\"\n\"687796\";\"Dvadtsatiletiye Oktyabr’\";\"other\"\n\"687796\";\"Zaliznichnoye\";\"other\"\n\"687797\";\"Zaliznychne\";\"main\"\n\"687797\";\"Bolgariyka\";\"other\"\n\"687797\";\"Bulgarica\";\"other\"\n\"687797\";\"Bulgariyka\";\"other\"\n\"687797\";\"Zaliznichne\";\"other\"\n\"687797\";\"Zaliznichnoye\";\"other\"\n\"687797\";\"Zaliznicne\";\"other\"\n\"687797\";\"Zheleznodorozhnoye\";\"other\"\n\"687797\";\"Залізничне\";\"other\"\n\"687824\";\"Zalesnoye\";\"main\"\n\"687826\";\"Zalishchyky\";\"main\"\n\"687826\";\"Zaleshchik\";\"other\"\n\"687826\";\"Zaleshchiki\";\"other\"\n\"687826\";\"Zaleshchyki\";\"other\"\n\"687826\";\"Zaleshiki\";\"other\"\n\"687826\";\"Zaleszczyki\";\"other\"\n\"687826\";\"Zalishchiki\";\"other\"\n\"687826\";\"Zalisiki\";\"other\"\n\"687826\";\"Заліщики\";\"other\"\n\"687841\";\"Zakupne\";\"main\"\n\"687841\";\"Zakupna\";\"other\"\n\"687841\";\"Zakupnoye\";\"other\"\n\"687841\";\"Закупне\";\"other\"\n\"687872\";\"Zahvizdya\";\"main\"\n\"687872\";\"Zagvizda\";\"other\"\n\"687872\";\"Zagvozd'ye\";\"other\"\n\"687872\";\"Zagvozd’ye\";\"other\"\n\"687872\";\"Zagvuz'dzh\";\"other\"\n\"687872\";\"Zagvuz’dzh\";\"other\"\n\"687872\";\"Загвіздя\";\"other\"\n\"687901\";\"Zagnitkiv\";\"main\"\n\"687901\";\"Zagnitkov\";\"other\"\n\"687901\";\"Zahnitkiv\";\"other\"\n\"687901\";\"Загнитков\";\"other\"\n\"687901\";\"Загнітків\";\"other\"\n\"687933\";\"Zachepylivka\";\"main\"\n\"687933\";\"ZACHEPILOVKA\";\"other\"\n\"687933\";\"Zacepilivka\";\"other\"\n\"687933\";\"Zachenilovka\";\"other\"\n\"687933\";\"Zachepilovka\";\"other\"\n\"687933\";\"ЗАЧЕПИЛОВКА\";\"other\"\n\"687933\";\"Зачепилівка\";\"other\"\n\"687965\";\"Zabolotiv\";\"main\"\n\"687965\";\"Zablotov\";\"other\"\n\"687965\";\"Zablotow\";\"other\"\n\"687965\";\"Zablotuv\";\"other\"\n\"687965\";\"Zabolotov\";\"other\"\n\"687965\";\"Zabłotów\";\"other\"\n\"687965\";\"Заболотів\";\"other\"\n\"687997\";\"Yuzhne\";\"main\"\n\"687997\";\"Juzhne\";\"other\"\n\"687997\";\"Juzhnyj\";\"other\"\n\"687997\";\"Южне\";\"other\"\n\"687997\";\"Южный\";\"other\"\n\"688052\";\"Yurkivka\";\"main\"\n\"688052\";\"JURKOVKA\";\"other\"\n\"688052\";\"Urkivka\";\"other\"\n\"688052\";\"Yurkovka\";\"other\"\n\"688052\";\"ЮРКОВКА\";\"other\"\n\"688052\";\"Юрківка\";\"other\"\n\"688105\";\"Yevpatoriya\";\"main\"\n\"688105\";\"Eupatoria\";\"other\"\n\"688105\";\"Eupatorio\";\"other\"\n\"688105\";\"Evpatoria\";\"other\"\n\"688105\";\"Evpatorija\";\"other\"\n\"688105\";\"Eŭpatorio\";\"other\"\n\"688105\";\"Gazlevi\";\"other\"\n\"688105\";\"Jevpatorija\";\"other\"\n\"688105\";\"Jewpatorija\";\"other\"\n\"688105\";\"Kezlev\";\"other\"\n\"688105\";\"Kozlov\";\"other\"\n\"688105\";\"ywwptwryh\";\"other\"\n\"688105\";\"Євпаторія\";\"other\"\n\"688105\";\"Евпатория\";\"other\"\n\"688105\";\"Эвпаторія\";\"other\"\n\"688105\";\"יוופטוריה\";\"other\"\n\"688127\";\"Yerky\";\"main\"\n\"688127\";\"ERKI\";\"other\"\n\"688127\";\"Ehrki\";\"other\"\n\"688127\";\"Yerki\";\"other\"\n\"688127\";\"ЕРКИ\";\"other\"\n\"688127\";\"Эрки\";\"other\"\n\"688148\";\"Yenakiyeve\";\"main\"\n\"688148\";\"ENAKIEVO\";\"other\"\n\"688148\";\"Ordshonikidse\";\"other\"\n\"688148\";\"Ordzhonikidze\";\"other\"\n\"688148\";\"Rykovo\";\"other\"\n\"688148\";\"Yenakiyevo\";\"other\"\n\"688148\";\"ЕНАКИЕВО\";\"other\"\n\"688191\";\"Yelyzavethradka\";\"main\"\n\"688191\";\"ELIZAVETGRADKA\";\"other\"\n\"688191\";\"Ehlizavetgradka\";\"other\"\n\"688191\";\"Yelisavetgradka\";\"other\"\n\"688191\";\"Yelizavetgradka\";\"other\"\n\"688191\";\"ЕЛИЗАВЕТГРАДКА\";\"other\"\n\"688191\";\"Элизаветградка\";\"other\"\n\"688288\";\"Yavoriv\";\"main\"\n\"688288\";\"Avoriv\";\"other\"\n\"688288\";\"Javorov\";\"other\"\n\"688288\";\"Jaworow\";\"other\"\n\"688288\";\"Jaworów\";\"other\"\n\"688288\";\"Yavorov\";\"other\"\n\"688288\";\"Yavoruv\";\"other\"\n\"688288\";\"Яворов\";\"other\"\n\"688288\";\"Яворів\";\"other\"\n\"688365\";\"Yasinya\";\"main\"\n\"688365\";\"Asina\";\"other\"\n\"688365\";\"Jasina\";\"other\"\n\"688365\";\"Jasińa\";\"other\"\n\"688365\";\"Kereshmeze\";\"other\"\n\"688365\";\"Yasina\";\"other\"\n\"688365\";\"Ясіня\";\"other\"\n\"688373\";\"Yasinovataya\";\"main\"\n\"688373\";\"IAsinovataia\";\"other\"\n\"688373\";\"Jasinovataja\";\"other\"\n\"688373\";\"Yasinovatara\";\"other\"\n\"688373\";\"Ясиноватая\";\"other\"\n\"688440\";\"Yarmolyntsi\";\"main\"\n\"688440\";\"Armolinci\";\"other\"\n\"688440\";\"Yarmolintsy\";\"other\"\n\"688440\";\"Ярмолинці\";\"other\"\n\"688455\";\"Yaremcha\";\"main\"\n\"688455\";\"Jaremche\";\"other\"\n\"688455\";\"Jaremcze\";\"other\"\n\"688455\";\"Yaremche\";\"other\"\n\"688455\";\"Яремче\";\"other\"\n\"688512\";\"Yamnytsya\";\"main\"\n\"688512\";\"Jamnicja\";\"other\"\n\"688512\";\"Yamnitsa\";\"other\"\n\"688512\";\"Ямниця\";\"other\"\n\"688532\";\"Yalta\";\"main\"\n\"688532\";\"JALTA\";\"other\"\n\"688532\";\"ЯЛТА\";\"other\"\n\"688533\";\"Yalta\";\"main\"\n\"688533\";\"Ialta\";\"other\"\n\"688533\";\"Jalta\";\"other\"\n\"688533\";\"Jalto\";\"other\"\n\"688533\";\"Jałta\";\"other\"\n\"688533\";\"ya er ta\";\"other\"\n\"688533\";\"yalta\";\"other\"\n\"688533\";\"yaruta\";\"other\"\n\"688533\";\"Ялта\";\"other\"\n\"688533\";\"يالطا\";\"other\"\n\"688533\";\"იალტა\";\"other\"\n\"688533\";\"ヤルタ\";\"other\"\n\"688533\";\"雅尔塔\";\"other\"\n\"688533\";\"얄타\";\"other\"\n\"688587\";\"Yahotyn\";\"main\"\n\"688587\";\"JAGOTIN\";\"other\"\n\"688587\";\"Yagotin\";\"other\"\n\"688587\";\"ЯГОТИН\";\"other\"\n\"688602\";\"Yahil’nytsya\";\"main\"\n\"688602\";\"Yahil'nytsya\";\"ascii\"\n\"688602\";\"Jagielnica\";\"other\"\n\"688602\";\"Jagol'nica\";\"other\"\n\"688602\";\"Yagel'nitsa\";\"other\"\n\"688602\";\"Yagel’nitsa\";\"other\"\n\"688602\";\"Yagielnitsa\";\"other\"\n\"688602\";\"Ягольница\";\"other\"\n\"688625\";\"Yabluniv\";\"main\"\n\"688625\";\"Abluniv\";\"other\"\n\"688625\";\"Jablonow\";\"other\"\n\"688625\";\"Jabłonów\";\"other\"\n\"688625\";\"Yablonov\";\"other\"\n\"688625\";\"Yablonuv\";\"other\"\n\"688625\";\"Яблунів\";\"other\"\n\"688637\";\"Yablunytsya\";\"main\"\n\"688637\";\"Jablonitza\";\"other\"\n\"688637\";\"Jablunica\";\"other\"\n\"688637\";\"Yablonitsa\";\"other\"\n\"688637\";\"Яблуница\";\"other\"\n\"688663\";\"Vyshchetarasivka\";\"main\"\n\"688663\";\"Tarasovka\";\"other\"\n\"688663\";\"Velikaya Tarasovka\";\"other\"\n\"688663\";\"Verkhne-Tarasovka\";\"other\"\n\"688663\";\"Verkhnyaya Tarasovka\";\"other\"\n\"688663\";\"Visetarasivka\";\"other\"\n\"688663\";\"Vyshchevtarasivka\";\"other\"\n\"688663\";\"Vyshetarasovka\";\"other\"\n\"688663\";\"Vysshetarasovka\";\"other\"\n\"688663\";\"Вищетарасівка\";\"other\"\n\"688689\";\"Vysokopillya\";\"main\"\n\"688689\";\"Visokopilla\";\"other\"\n\"688689\";\"Vysokopol'e\";\"other\"\n\"688689\";\"Vysokopol'ye\";\"other\"\n\"688689\";\"Vysokopol’ye\";\"other\"\n\"688689\";\"Високопілля\";\"other\"\n\"688689\";\"Высокополье\";\"other\"\n\"688696\";\"Vysokyy\";\"main\"\n\"688696\";\"Visokij\";\"other\"\n\"688696\";\"Vysokiy\";\"other\"\n\"688696\";\"Високий\";\"other\"\n\"688717\";\"Vyshkove\";\"main\"\n\"688717\";\"Vishkovo\";\"other\"\n\"688717\";\"Viskava\";\"other\"\n\"688717\";\"Vyshkovo\";\"other\"\n\"688717\";\"Vyskovo\";\"other\"\n\"688717\";\"Vyskovo nad Tisou\";\"other\"\n\"688717\";\"Výškovo\";\"other\"\n\"688717\";\"Вишково\";\"other\"\n\"688723\";\"Vyshhorod\";\"main\"\n\"688723\";\"VYSHGOROD\";\"other\"\n\"688723\";\"Vishgorod\";\"other\"\n\"688723\";\"Vyshgorod\";\"other\"\n\"688723\";\"ВЫШГОРОД\";\"other\"\n\"688723\";\"Вишгород\";\"other\"\n\"688746\";\"Vynohradiv\";\"main\"\n\"688746\";\"Horvinogradovo\";\"other\"\n\"688746\";\"Nagyszollos\";\"other\"\n\"688746\";\"Nagyszöllös\";\"other\"\n\"688746\";\"Nagyszőllős\";\"other\"\n\"688746\";\"Sevljus\";\"other\"\n\"688746\";\"Sevlus\";\"other\"\n\"688746\";\"Sevluš\";\"other\"\n\"688746\";\"Sevlyush\";\"other\"\n\"688746\";\"Vel'ky Sevl'yush\";\"other\"\n\"688746\";\"Vel’ky Sevl’yush\";\"other\"\n\"688746\";\"Vinogradiv\";\"other\"\n\"688746\";\"Vinogradov\";\"other\"\n\"688746\";\"Виноградов\";\"other\"\n\"688746\";\"Виноградів\";\"other\"\n\"688749\";\"Vylok\";\"main\"\n\"688749\";\"Tisza-Ujlak\";\"other\"\n\"688749\";\"Tiszaujlak\";\"other\"\n\"688749\";\"Tiszaújlak\";\"other\"\n\"688749\";\"Vilok\";\"other\"\n\"688749\";\"Vulok\";\"other\"\n\"688749\";\"Vülok\";\"other\"\n\"688749\";\"Вилок\";\"other\"\n\"688750\";\"Vylkove\";\"main\"\n\"688750\";\"Valcov\";\"other\"\n\"688750\";\"Vilkov\";\"other\"\n\"688750\";\"Vilkove\";\"other\"\n\"688750\";\"Vilkovo\";\"other\"\n\"688750\";\"Vylkov\";\"other\"\n\"688750\";\"Vylkovo\";\"other\"\n\"688750\";\"Vâlcov\";\"other\"\n\"688750\";\"Вилкове\";\"other\"\n\"688805\";\"Vvedenka\";\"main\"\n\"688805\";\"VVEDENKA\";\"other\"\n\"688805\";\"Vvedenskoye\";\"other\"\n\"688805\";\"ВВЕДЕНКА\";\"other\"\n\"688846\";\"Vradiyivka\";\"main\"\n\"688846\";\"Bol'shaya Vradiyevka\";\"other\"\n\"688846\";\"Bol’shaya Vradiyevka\";\"other\"\n\"688846\";\"Bradiyevka\";\"other\"\n\"688846\";\"Velikaya Vradiyevka\";\"other\"\n\"688846\";\"Vradievka\";\"other\"\n\"688846\";\"Vradiivka\";\"other\"\n\"688846\";\"Vradiyevka\";\"other\"\n\"688846\";\"Врадіївка\";\"other\"\n\"688860\";\"Voznesensk\";\"main\"\n\"688860\";\"Voznesen's'k\";\"other\"\n\"688860\";\"Вознесенск\";\"other\"\n\"688860\";\"Вознесеньськ\";\"other\"\n\"688865\";\"Voznesenka\";\"main\"\n\"688865\";\"Voznesensk\";\"other\"\n\"688865\";\"Вознесенка\";\"other\"\n\"688904\";\"Voykove\";\"main\"\n\"688904\";\"Katerlez\";\"other\"\n\"688904\";\"Vojkove\";\"other\"\n\"688904\";\"Vojkovo\";\"other\"\n\"688904\";\"Voykovo\";\"other\"\n\"688904\";\"Войкове\";\"other\"\n\"688904\";\"Войково\";\"other\"\n\"688951\";\"Voskhod\";\"main\"\n\"688951\";\"Dzhardzhava\";\"other\"\n\"688951\";\"Dzhardzhavi\";\"other\"\n\"688956\";\"Vorzel’\";\"main\"\n\"688956\";\"Vorzel'\";\"ascii\"\n\"688956\";\"Dachi Vorzel'\";\"other\"\n\"688956\";\"Dachi Vorzel’\";\"other\"\n\"688956\";\"Ворзель\";\"other\"\n\"688961\";\"Vorozhba\";\"main\"\n\"688961\";\"VOROZHBA\";\"other\"\n\"688961\";\"ВОРОЖБА\";\"other\"\n\"689003\";\"Voronovytsya\";\"main\"\n\"689003\";\"Voronovicja\";\"other\"\n\"689003\";\"Voronovitsa\";\"other\"\n\"689003\";\"Voronovitsy\";\"other\"\n\"689003\";\"Вороновиця\";\"other\"\n\"689037\";\"Vorokhta\";\"main\"\n\"689037\";\"Worochta\";\"other\"\n\"689037\";\"Ворохта\";\"other\"\n\"689106\";\"Volovets\";\"main\"\n\"689106\";\"Volovec\";\"other\"\n\"689106\";\"Воловец\";\"other\"\n\"689144\";\"Voloka\";\"main\"\n\"689144\";\"Voloki\";\"other\"\n\"689144\";\"Волока\";\"other\"\n\"689157\";\"Volodarka\";\"main\"\n\"689157\";\"Володарка\";\"other\"\n\"689190\";\"Vol’noye\";\"main\"\n\"689190\";\"Vol'noye\";\"ascii\"\n\"689190\";\"Prosjana\";\"other\"\n\"689190\";\"Prosyana\";\"other\"\n\"689190\";\"Vil'ny\";\"other\"\n\"689190\";\"Vil'nyy\";\"other\"\n\"689190\";\"Vil’ny\";\"other\"\n\"689190\";\"Vil’nyy\";\"other\"\n\"689190\";\"Просяна\";\"other\"\n\"689198\";\"Volnovakha\";\"main\"\n\"689198\";\"VOLNOVAKHA\";\"other\"\n\"689198\";\"Volovakha\";\"other\"\n\"689198\";\"Wolnowacha\";\"other\"\n\"689198\";\"ВОЛНОВАХА\";\"other\"\n\"689304\";\"Vovchans’k\";\"main\"\n\"689304\";\"Vovchans'k\";\"ascii\"\n\"689304\";\"VOLCHANSK\";\"other\"\n\"689304\";\"Volchansk\";\"other\"\n\"689304\";\"Woltschansk\";\"other\"\n\"689304\";\"ВОЛЧАНСК\";\"other\"\n\"689304\";\"Вовчанськ\";\"other\"\n\"689307\";\"Voyinka\";\"main\"\n\"689307\";\"Voinka\";\"other\"\n\"689307\";\"Воїнка\";\"other\"\n\"689321\";\"Vodyane\";\"main\"\n\"689321\";\"Vodjane\";\"other\"\n\"689321\";\"Vodyanoye\";\"other\"\n\"689321\";\"Водяне\";\"other\"\n\"689378\";\"Volodymyr-Volyns’kyy\";\"main\"\n\"689378\";\"Volodymyr-Volyns'kyy\";\"ascii\"\n\"689378\";\"Vladimir\";\"other\"\n\"689378\";\"Vladimir-Volynsk\";\"other\"\n\"689378\";\"Vladimir-Volynskij\";\"other\"\n\"689378\";\"Vladimir-Volynskiy\";\"other\"\n\"689378\";\"Vlodzimezh\";\"other\"\n\"689378\";\"Volodimir-Volins'kij\";\"other\"\n\"689378\";\"Volodymir-Volyns'kyy\";\"other\"\n\"689378\";\"Volodymir-Volyns’kyy\";\"other\"\n\"689378\";\"Wladimir-Wolynsk\";\"other\"\n\"689378\";\"Wlodzimierz\";\"other\"\n\"689378\";\"Wlodzimierz Wolynski\";\"other\"\n\"689378\";\"Wlodzimierzec\";\"other\"\n\"689378\";\"Włodzimierz\";\"other\"\n\"689378\";\"Włodzimierz Wołyński\";\"other\"\n\"689378\";\"Włodzimierzec\";\"other\"\n\"689378\";\"Владимир-Волынский\";\"other\"\n\"689378\";\"Володимир-Волинський\";\"other\"\n\"689428\";\"Volodymerets’\";\"main\"\n\"689428\";\"Volodymerets'\";\"ascii\"\n\"689428\";\"Vladimirei\";\"other\"\n\"689428\";\"Vladimirets\";\"other\"\n\"689428\";\"Vlodzimezhets\";\"other\"\n\"689428\";\"Wlodzimierzec\";\"other\"\n\"689428\";\"Włodzimierzec\";\"other\"\n\"689434\";\"Vyzhnytsya\";\"main\"\n\"689434\";\"Vijnita\";\"other\"\n\"689434\";\"Vijniţa\";\"other\"\n\"689434\";\"Vizhnicja\";\"other\"\n\"689434\";\"Vizhnitsa\";\"other\"\n\"689434\";\"Viznits\";\"other\"\n\"689434\";\"Вижниця\";\"other\"\n\"689487\";\"Vyshneve\";\"main\"\n\"689487\";\"VISHNEVOE\";\"other\"\n\"689487\";\"Vishneve\";\"other\"\n\"689487\";\"Vishnevoye\";\"other\"\n\"689487\";\"Vishnëvoye\";\"other\"\n\"689487\";\"ВИШНЕВОЕ\";\"other\"\n\"689487\";\"Вишневе\";\"other\"\n\"689488\";\"Vyshneve\";\"main\"\n\"689488\";\"Erastovka\";\"other\"\n\"689488\";\"Vishnevoe\";\"other\"\n\"689488\";\"Vishnevoye\";\"other\"\n\"689488\";\"Vishnëvoye\";\"other\"\n\"689488\";\"Вишневое\";\"other\"\n\"689531\";\"Vynohradove\";\"main\"\n\"689531\";\"Chalbasy\";\"other\"\n\"689531\";\"Vinogradnoye\";\"other\"\n\"689531\";\"Vinogradove\";\"other\"\n\"689531\";\"Vinogradovo\";\"other\"\n\"689531\";\"Виноградове\";\"other\"\n\"689543\";\"Vynohradivka\";\"main\"\n\"689543\";\"Curci\";\"other\"\n\"689543\";\"Curciul\";\"other\"\n\"689543\";\"Kurchny\";\"other\"\n\"689543\";\"Kurgchi\";\"other\"\n\"689543\";\"Vinogradivka\";\"other\"\n\"689543\";\"Vinogradovka\";\"other\"\n\"689543\";\"Виноградовка\";\"other\"\n\"689543\";\"Виноградівка\";\"other\"\n\"689558\";\"Vinnytsya\";\"main\"\n\"689558\";\"Vinnica\";\"other\"\n\"689558\";\"Vinnitsa\";\"other\"\n\"689558\";\"Winniza\";\"other\"\n\"689558\";\"Винница\";\"other\"\n\"689558\";\"Вінниця\";\"other\"\n\"689595\";\"Viline\";\"main\"\n\"689595\";\"Vil'ne\";\"other\"\n\"689595\";\"Vilino\";\"other\"\n\"689595\";\"Vil’ne\";\"other\"\n\"689595\";\"Віліне\";\"other\"\n\"689717\";\"Veselynove\";\"main\"\n\"689717\";\"Veselinove\";\"other\"\n\"689717\";\"Veselinovo\";\"other\"\n\"689717\";\"Веселинове\";\"other\"\n\"689736\";\"Vesele\";\"main\"\n\"689736\";\"Veseloye\";\"other\"\n\"689736\";\"Vesëloye\";\"other\"\n\"689736\";\"Веселе\";\"other\"\n\"689817\";\"Verkhovyna\";\"main\"\n\"689817\";\"Verkhovina\";\"other\"\n\"689817\";\"Zabie\";\"other\"\n\"689817\";\"Zhab'ye\";\"other\"\n\"689817\";\"Zhabeye\";\"other\"\n\"689817\";\"Zhab’ye\";\"other\"\n\"689817\";\"Żabie\";\"other\"\n\"689817\";\"Верховина\";\"other\"\n\"689830\";\"Verkhnyaya Syrovatka\";\"main\"\n\"689830\";\"Verkh.Syrovatka\";\"other\"\n\"689830\";\"Verkhnja Sirovatka\";\"other\"\n\"689830\";\"Verkhnya Syrovatka\";\"other\"\n\"689830\";\"Верх.Сыроватка\";\"other\"\n\"689830\";\"Верхня Сироватка\";\"other\"\n\"689834\";\"Verkhnyaya Rozhanka\";\"main\"\n\"689834\";\"Rozhanka Vizhna\";\"other\"\n\"689834\";\"Verkhnjaja Rozhanka\";\"other\"\n\"689834\";\"Верхняя Рожанка\";\"other\"\n\"689857\";\"Verkhnyachka\";\"main\"\n\"689857\";\"VERKHNJACHKA\";\"other\"\n\"689857\";\"Verkhnyochka\";\"other\"\n\"689857\";\"ВЕРХНЯЧКА\";\"other\"\n\"689860\";\"Verkhniy Yasenov\";\"main\"\n\"689860\";\"Jasienow\";\"other\"\n\"689860\";\"Verkhnij Jasenov\";\"other\"\n\"689860\";\"Yasenuv Gurny\";\"other\"\n\"689860\";\"Верхний Ясенов\";\"other\"\n\"689868\";\"Verkhniy Rohachyk\";\"main\"\n\"689868\";\"Verhnij Rogacik\";\"other\"\n\"689868\";\"Verkhniy Rogachik\";\"other\"\n\"689868\";\"Верхній Рогачик\";\"other\"\n\"689892\";\"Verkhneye Sinevidnoye\";\"main\"\n\"689892\";\"Sinovudzko\";\"other\"\n\"689892\";\"Synovudzko\";\"other\"\n\"689892\";\"Synovudzko Vyzhne\";\"other\"\n\"689892\";\"Synowodzko Wyzne\";\"other\"\n\"689892\";\"Synowódzko Wyżne\";\"other\"\n\"689892\";\"Verkhnee Sinevidnoe\";\"other\"\n\"689892\";\"Verkhneye Sinevodnoye\";\"other\"\n\"689892\";\"Верхнее Синевидное\";\"other\"\n\"689945\";\"Verenchanka\";\"main\"\n\"689945\";\"Varentsyantsa\";\"other\"\n\"689945\";\"Vranceni\";\"other\"\n\"689945\";\"Vryncheny\";\"other\"\n\"689945\";\"Vrânceni\";\"other\"\n\"689945\";\"Веренчанка\";\"other\"\n\"690009\";\"Verbivka\";\"main\"\n\"690009\";\"Verbovka\";\"other\"\n\"690009\";\"Вербівка\";\"other\"\n\"690032\";\"Vendychany\";\"main\"\n\"690032\";\"Bendichany\";\"other\"\n\"690032\";\"Vendichani\";\"other\"\n\"690032\";\"Vendichany\";\"other\"\n\"690032\";\"Вендичани\";\"other\"\n\"690035\";\"Velykoploske\";\"main\"\n\"690035\";\"Bol'shoye Ploskoye\";\"other\"\n\"690035\";\"Ploskoye\";\"other\"\n\"690035\";\"Velikoploske\";\"other\"\n\"690035\";\"Velikoploskoye\";\"other\"\n\"690035\";\"Великоплоске\";\"other\"\n\"690038\";\"Velyka Mykhaylivka\";\"main\"\n\"690038\";\"Grosulovo\";\"other\"\n\"690038\";\"Prosulovo\";\"other\"\n\"690038\";\"Velika Mihajlivka\";\"other\"\n\"690038\";\"Velikaya Mikhalovka\";\"other\"\n\"690038\";\"Velikaya Mikhaylovka\";\"other\"\n\"690038\";\"Велика Михайлівка\";\"other\"\n\"690132\";\"Velykyy Klyuchiv\";\"main\"\n\"690132\";\"Klyuchev\";\"other\"\n\"690132\";\"Klyuchev Vel'kiy\";\"other\"\n\"690132\";\"Klyuchev Vel’kiy\";\"other\"\n\"690132\";\"Klyuchov\";\"other\"\n\"690132\";\"Klyuchuv Vel'ki\";\"other\"\n\"690132\";\"Klyuchuv Vel’ki\";\"other\"\n\"690132\";\"Klyuchëv\";\"other\"\n\"690132\";\"Velikij Kluciv\";\"other\"\n\"690132\";\"Velikiy Klyuchev\";\"other\"\n\"690132\";\"Великий Ключів\";\"other\"\n\"690147\";\"Velikiye Sorochintsy\";\"main\"\n\"690147\";\"Bol'shie Sorochincy\";\"other\"\n\"690147\";\"Bol'shiye Sorochintsy\";\"other\"\n\"690147\";\"Bol’shiye Sorochintsy\";\"other\"\n\"690147\";\"Verkhniye Sorochintsy\";\"other\"\n\"690147\";\"Большие Сорочинцы\";\"other\"\n\"690165\";\"Velyki Kopany\";\"main\"\n\"690165\";\"Bol'shiye Kopani\";\"other\"\n\"690165\";\"Bol'shoye Kopani\";\"other\"\n\"690165\";\"Bol’shiye Kopani\";\"other\"\n\"690165\";\"Bol’shoye Kopani\";\"other\"\n\"690165\";\"Velikiye Kopani\";\"other\"\n\"690184\";\"Velikiye Borki\";\"main\"\n\"690184\";\"Bol'shiye Borki\";\"other\"\n\"690184\";\"Bol’shiye Borki\";\"other\"\n\"690184\";\"Borki Vel'ke\";\"other\"\n\"690184\";\"Borki Velikiye\";\"other\"\n\"690184\";\"Borki Vel’ke\";\"other\"\n\"690184\";\"Borki Wielkie\";\"other\"\n\"690193\";\"Velykyy Burluk\";\"main\"\n\"690193\";\"Bol'shoy Burluk\";\"other\"\n\"690193\";\"Bolshoi Burlak\";\"other\"\n\"690193\";\"Bol’shoy Burluk\";\"other\"\n\"690193\";\"VELIKIJ BURLUK\";\"other\"\n\"690193\";\"Velikiy Burlok\";\"other\"\n\"690193\";\"Velikiy Burluk\";\"other\"\n\"690193\";\"ВЕЛИКИЙ БУРЛУК\";\"other\"\n\"690230\";\"Velyka Pysarivka\";\"main\"\n\"690230\";\"Bol'shaya Pisarevka\";\"other\"\n\"690230\";\"Bol’shaya Pisarevka\";\"other\"\n\"690230\";\"Velika Pisarivka\";\"other\"\n\"690230\";\"Velikaya Pisarevka\";\"other\"\n\"690230\";\"Велика Писарівка\";\"other\"\n\"690247\";\"Velyka Lepetykha\";\"main\"\n\"690247\";\"Bol'shaya Lepatikha\";\"other\"\n\"690247\";\"Bol'shaya Lepetikha\";\"other\"\n\"690247\";\"Bolschaja Lepeticha\";\"other\"\n\"690247\";\"Bol’shaya Lepatikha\";\"other\"\n\"690247\";\"Bol’shaya Lepetikha\";\"other\"\n\"690247\";\"Velika Lepetikha\";\"other\"\n\"690247\";\"Velikaya Lepetikha\";\"other\"\n\"690247\";\"Велика Лепетиха\";\"other\"\n\"690281\";\"Velyka Bilozerka\";\"main\"\n\"690281\";\"Bol'shaya Belozerka\";\"other\"\n\"690281\";\"Bolschaja Beloserka\";\"other\"\n\"690281\";\"Bol’shaya Belozerka\";\"other\"\n\"690281\";\"Velika Bilozerka\";\"other\"\n\"690281\";\"Velikaya Belozerka\";\"other\"\n\"690281\";\"Velikaya Belozërka\";\"other\"\n\"690281\";\"Велика Білозерка\";\"other\"\n\"690285\";\"Velyka Bahachka\";\"main\"\n\"690285\";\"Bogachka\";\"other\"\n\"690285\";\"Velika Bagachka\";\"other\"\n\"690285\";\"Velikaya Bagachka\";\"other\"\n\"690285\";\"Velikaya Bogachka\";\"other\"\n\"690285\";\"Велика Багачка\";\"other\"\n\"690288\";\"Velyka Oleksandrivka\";\"main\"\n\"690288\";\"Bol'shaya Aleksandrovka\";\"other\"\n\"690288\";\"Bolschaja Aleksandrowka\";\"other\"\n\"690288\";\"Bol’shaya Aleksandrovka\";\"other\"\n\"690288\";\"Velika Oleksandrivka\";\"other\"\n\"690288\";\"Velikaya Aleksandrovka\";\"other\"\n\"690288\";\"Велика Олександрівка\";\"other\"\n\"690312\";\"Vatutine\";\"main\"\n\"690312\";\"VATUTINO\";\"other\"\n\"690312\";\"Vatutino\";\"other\"\n\"690312\";\"ВАТУТИНО\";\"other\"\n\"690312\";\"Ватутіне\";\"other\"\n\"690335\";\"Vasyshcheve\";\"main\"\n\"690335\";\"VASISHHEVO\";\"other\"\n\"690335\";\"Vasishchevo\";\"other\"\n\"690335\";\"Vasishheve\";\"other\"\n\"690335\";\"ВАСИЩЕВО\";\"other\"\n\"690335\";\"Васищеве\";\"other\"\n\"690412\";\"Vasyl’kiv\";\"main\"\n\"690412\";\"Vasyl'kiv\";\"ascii\"\n\"690412\";\"VASIL'KOV\";\"other\"\n\"690412\";\"Vasil'kov\";\"other\"\n\"690412\";\"Vasilikov\";\"other\"\n\"690412\";\"Vasil’kov\";\"other\"\n\"690412\";\"Wassilkow\";\"other\"\n\"690412\";\"ВАСИЛЬКОВ\";\"other\"\n\"690428\";\"Vashkivtsi\";\"main\"\n\"690428\";\"Vascauti\";\"other\"\n\"690428\";\"Vashkouts\";\"other\"\n\"690428\";\"Vashkoutsi\";\"other\"\n\"690428\";\"Vashkovtsy\";\"other\"\n\"690428\";\"Vaskivci\";\"other\"\n\"690428\";\"Văscăuţi\";\"other\"\n\"690428\";\"Вашківці\";\"other\"\n\"690434\";\"Vary\";\"main\"\n\"690434\";\"Mezovari\";\"other\"\n\"690434\";\"Mezővári\";\"other\"\n\"690434\";\"Vari\";\"other\"\n\"690434\";\"Vári\";\"other\"\n\"690434\";\"Вари\";\"other\"\n\"690469\";\"Varva\";\"main\"\n\"690469\";\"VARVA\";\"other\"\n\"690469\";\"ВАРВА\";\"other\"\n\"690485\";\"Vapnyarka\";\"main\"\n\"690485\";\"Vapnjarka\";\"other\"\n\"690485\";\"Wapnjarka\";\"other\"\n\"690485\";\"Вапнярка\";\"other\"\n\"690509\";\"Valky\";\"main\"\n\"690509\";\"VALKI\";\"other\"\n\"690509\";\"Valki\";\"other\"\n\"690509\";\"ВАЛКИ\";\"other\"\n\"690545\";\"Uzyn\";\"main\"\n\"690545\";\"UZIN\";\"other\"\n\"690545\";\"Uzin\";\"other\"\n\"690545\";\"УЗИН\";\"other\"\n\"690548\";\"Uzhhorod\";\"main\"\n\"690548\";\"Oujhorod\";\"other\"\n\"690548\";\"Ungvar\";\"other\"\n\"690548\";\"Ungvár\";\"other\"\n\"690548\";\"Uschhorod\";\"other\"\n\"690548\";\"Uzgorod\";\"other\"\n\"690548\";\"Uzhgorod\";\"other\"\n\"690548\";\"Uzhorod\";\"other\"\n\"690548\";\"Użhorod\";\"other\"\n\"690548\";\"Užgorod\";\"other\"\n\"690548\";\"Užhorod\";\"other\"\n\"690548\";\"Ужгород\";\"other\"\n\"690548\";\"אונגװיר\";\"other\"\n\"690556\";\"Uyutne\";\"main\"\n\"690556\";\"Otar-Maynak\";\"other\"\n\"690556\";\"Otar-Moynak\";\"other\"\n\"690556\";\"Ujutne\";\"other\"\n\"690556\";\"Uyutnoye\";\"other\"\n\"690556\";\"Уютне\";\"other\"\n\"690571\";\"Utkivka\";\"main\"\n\"690571\";\"Utkovka\";\"other\"\n\"690571\";\"Утківка\";\"other\"\n\"690600\";\"Ustynivka\";\"main\"\n\"690600\";\"Ustinivka\";\"other\"\n\"690600\";\"Ustinovka\";\"other\"\n\"690600\";\"Ustipovka\";\"other\"\n\"690600\";\"Устинівка\";\"other\"\n\"690629\";\"Uspenka\";\"main\"\n\"690629\";\"USPENKA\";\"other\"\n\"690629\";\"Uspenskoye\";\"other\"\n\"690629\";\"Uzbenka\";\"other\"\n\"690629\";\"УСПЕНКА\";\"other\"\n\"690648\";\"Usatove\";\"main\"\n\"690648\";\"Usatovo\";\"other\"\n\"690648\";\"Усатове\";\"other\"\n\"690673\";\"Uralo-Kavkaz\";\"main\"\n\"690673\";\"Uralo-Kavkazskiy\";\"other\"\n\"690673\";\"Урало-Кавказ\";\"other\"\n\"690679\";\"Nyzhni Petrivtsi\";\"main\"\n\"690679\";\"Nizhniye Petrovtsy\";\"other\"\n\"690679\";\"Nizni Petrivci\";\"other\"\n\"690679\";\"Unter-Petrouts\";\"other\"\n\"690679\";\"Нижні Петрівці\";\"other\"\n\"690688\";\"Uman’\";\"main\"\n\"690688\";\"Uman'\";\"ascii\"\n\"690688\";\"Умань\";\"other\"\n\"690745\";\"Ulichnoye\";\"main\"\n\"690745\";\"Ulichne\";\"other\"\n\"690745\";\"Ulichno\";\"other\"\n\"690745\";\"Uliczno\";\"other\"\n\"690745\";\"Ulychne\";\"other\"\n\"690745\";\"Уличне\";\"other\"\n\"690756\";\"Ulanov\";\"main\"\n\"690756\";\"Ulaniv\";\"other\"\n\"690756\";\"Уланов\";\"other\"\n\"690756\";\"Уланів\";\"other\"\n\"690773\";\"Ukrainka\";\"main\"\n\"690773\";\"UKRAINKA\";\"other\"\n\"690773\";\"Ukrayinka\";\"other\"\n\"690773\";\"УКРАИНКА\";\"other\"\n\"690773\";\"Українка\";\"other\"\n\"690804\";\"Uhryniv\";\"main\"\n\"690804\";\"Dolishniy Uhryniv\";\"other\"\n\"690804\";\"Gorishnyy Ugrinov\";\"other\"\n\"690804\";\"Ugriniv\";\"other\"\n\"690804\";\"Ugrinov\";\"other\"\n\"690804\";\"Ugryniv\";\"other\"\n\"690804\";\"Ugrynov-Gurny\";\"other\"\n\"690804\";\"Угринів\";\"other\"\n\"690814\";\"Ugnev\";\"main\"\n\"690814\";\"Ugniv\";\"other\"\n\"690814\";\"Ugnov\";\"other\"\n\"690814\";\"Ugnuv\";\"other\"\n\"690814\";\"Uhnow\";\"other\"\n\"690814\";\"Uhnów\";\"other\"\n\"690814\";\"Угнев\";\"other\"\n\"690814\";\"Угнів\";\"other\"\n\"690820\";\"Uhlove\";\"main\"\n\"690820\";\"Adzhi-Bulat\";\"other\"\n\"690820\";\"Uglove\";\"other\"\n\"690820\";\"Uglovoye\";\"other\"\n\"690820\";\"Ulu-Kol\";\"other\"\n\"690820\";\"Углове\";\"other\"\n\"690822\";\"Uglegorsk\";\"main\"\n\"690822\";\"Chazepetowka\";\"other\"\n\"690822\";\"Chazepetrovka\";\"other\"\n\"690822\";\"Khatsapetovka\";\"other\"\n\"690822\";\"Khatsepetovka\";\"other\"\n\"690822\";\"UGLEGORSK\";\"other\"\n\"690822\";\"УГЛЕГОРСК\";\"other\"\n\"690873\";\"Tysmenytsya\";\"main\"\n\"690873\";\"Tismenicja\";\"other\"\n\"690873\";\"Tysmenitsa\";\"other\"\n\"690873\";\"Tysmienica\";\"other\"\n\"690873\";\"Tyśmienica\";\"other\"\n\"690873\";\"Тисмениця\";\"other\"\n\"690875\";\"Tysmenychany\";\"main\"\n\"690875\";\"Tismenichani\";\"other\"\n\"690875\";\"Tysmenichany\";\"other\"\n\"690875\";\"Тисменичани\";\"other\"\n\"690890\";\"Tynnoye\";\"main\"\n\"690890\";\"Tinne\";\"other\"\n\"690890\";\"Tynne\";\"other\"\n\"690890\";\"Тинне\";\"other\"\n\"690906\";\"Tyachiv\";\"main\"\n\"690906\";\"Tachevo\";\"other\"\n\"690906\";\"Taciv\";\"other\"\n\"690906\";\"Tacovo\";\"other\"\n\"690906\";\"Tačovo\";\"other\"\n\"690906\";\"Tyachev\";\"other\"\n\"690906\";\"Tyachevo\";\"other\"\n\"690906\";\"Тячів\";\"other\"\n\"690960\";\"Turka\";\"main\"\n\"690960\";\"Turko\";\"other\"\n\"690960\";\"Турка\";\"other\"\n\"690985\";\"Turbiv\";\"main\"\n\"690985\";\"Turbov\";\"other\"\n\"690985\";\"Турбів\";\"other\"\n\"691016\";\"Tul’chyn\";\"main\"\n\"691016\";\"Tul'chyn\";\"ascii\"\n\"691016\";\"Tu'chin\";\"other\"\n\"691016\";\"Tul'chin\";\"other\"\n\"691016\";\"Tultschin\";\"other\"\n\"691016\";\"Tu’chin\";\"other\"\n\"691016\";\"Тульчин\";\"other\"\n\"691019\";\"Tukhlya\";\"main\"\n\"691019\";\"Tuchla\";\"other\"\n\"691019\";\"Tukhlja\";\"other\"\n\"691019\";\"Тухля\";\"other\"\n\"691037\";\"Tsyurupyns’k\";\"main\"\n\"691037\";\"Tsyurupyns'k\";\"ascii\"\n\"691037\";\"Aleshki\";\"other\"\n\"691037\";\"Cjurupinsk\";\"other\"\n\"691037\";\"Tsyurupinsk\";\"other\"\n\"691037\";\"Цюрупинск\";\"other\"\n\"691051\";\"Tsybulevka\";\"main\"\n\"691051\";\"Cibulevka\";\"other\"\n\"691051\";\"Цибулевка\";\"other\"\n\"691052\";\"Tsybli\";\"main\"\n\"691052\";\"Cibli\";\"other\"\n\"691052\";\"Циблі\";\"other\"\n\"691097\";\"Tsibulev\";\"main\"\n\"691097\";\"Cibuliv\";\"other\"\n\"691097\";\"Tsybulev\";\"other\"\n\"691097\";\"Tsybulevo\";\"other\"\n\"691097\";\"Tsybuliev\";\"other\"\n\"691097\";\"Tsybuliv\";\"other\"\n\"691097\";\"Цибулів\";\"other\"\n\"691155\";\"Tsarychanka\";\"main\"\n\"691155\";\"Carichanka\";\"other\"\n\"691155\";\"Carychanka\";\"other\"\n\"691155\";\"Tsarichanka\";\"other\"\n\"691155\";\"Zaritschanka\";\"other\"\n\"691155\";\"Царичанка\";\"other\"\n\"691155\";\"Царычанка\";\"other\"\n\"691179\";\"Truskavets\";\"main\"\n\"691179\";\"Truskavec\";\"other\"\n\"691179\";\"Truskawiec\";\"other\"\n\"691179\";\"Трускавец\";\"other\"\n\"691255\";\"Trostyanets’\";\"main\"\n\"691255\";\"Trostyanets'\";\"ascii\"\n\"691255\";\"Trostjanec\";\"other\"\n\"691255\";\"Trostjanez\";\"other\"\n\"691255\";\"Тростянец\";\"other\"\n\"691305\";\"Tripol’ye\";\"main\"\n\"691305\";\"Tripol'ye\";\"ascii\"\n\"691305\";\"Tripillya\";\"other\"\n\"691305\";\"Tripilnya\";\"other\"\n\"691305\";\"Tripol'e\";\"other\"\n\"691305\";\"Триполье\";\"other\"\n\"691336\";\"Trebukhiv\";\"main\"\n\"691336\";\"Trebuhiv\";\"other\"\n\"691336\";\"Trebukhov\";\"other\"\n\"691336\";\"Trebukhovo\";\"other\"\n\"691336\";\"Требухов\";\"other\"\n\"691336\";\"Требухів\";\"other\"\n\"691355\";\"Toshkovka\";\"main\"\n\"691355\";\"Rudnik Toshkovka\";\"other\"\n\"691355\";\"Toshkivka\";\"other\"\n\"691355\";\"Toshkovskiy\";\"other\"\n\"691355\";\"Toshkovskiy Rudnik\";\"other\"\n\"691355\";\"Toskivka\";\"other\"\n\"691355\";\"Тошковка\";\"other\"\n\"691355\";\"Тошківка\";\"other\"\n\"691374\";\"Torez\";\"main\"\n\"691374\";\"Chistyakovo\";\"other\"\n\"691374\";\"Tschistjakowa\";\"other\"\n\"691374\";\"Tschistjakowo\";\"other\"\n\"691374\";\"Торез\";\"other\"\n\"691435\";\"Tomakivka\";\"main\"\n\"691435\";\"Tomakovka\";\"other\"\n\"691435\";\"Tomakowka\";\"other\"\n\"691435\";\"Томаківка\";\"other\"\n\"691444\";\"Tovste\";\"main\"\n\"691444\";\"Tluste\";\"other\"\n\"691444\";\"Tluste Miasto\";\"other\"\n\"691444\";\"Tluste Myasto\";\"other\"\n\"691444\";\"Tolstoye\";\"other\"\n\"691444\";\"Товсте\";\"other\"\n\"691469\";\"Tokmak\";\"main\"\n\"691469\";\"Bol'shoy Tokmak\";\"other\"\n\"691469\";\"Bol’shoy Tokmak\";\"other\"\n\"691469\";\"Tomak\";\"other\"\n\"691469\";\"Токмак\";\"other\"\n\"691510\";\"Tyshkivka\";\"main\"\n\"691510\";\"Tishkovka\";\"other\"\n\"691510\";\"Tiskivka\";\"other\"\n\"691510\";\"Тишковка\";\"other\"\n\"691510\";\"Тишківка\";\"other\"\n\"691526\";\"Tymoshivka\";\"main\"\n\"691526\";\"Timoshevka\";\"other\"\n\"691526\";\"Timoshovka\";\"other\"\n\"691526\";\"Timoshëvka\";\"other\"\n\"691526\";\"Timosivka\";\"other\"\n\"691526\";\"Тимошівка\";\"other\"\n\"691578\";\"Tetiyiv\";\"main\"\n\"691578\";\"Tetiiv\";\"other\"\n\"691578\";\"Tetiyev\";\"other\"\n\"691578\";\"Тетіїв\";\"other\"\n\"691603\";\"Terpinnya\";\"main\"\n\"691603\";\"Terpen'ye\";\"other\"\n\"691603\";\"Terpeniye\";\"other\"\n\"691603\";\"Terpen’ye\";\"other\"\n\"691603\";\"Terpinna\";\"other\"\n\"691603\";\"Терпіння\";\"other\"\n\"691606\";\"Tërny\";\"main\"\n\"691606\";\"Terny\";\"ascii\"\n\"691606\";\"TERNY\";\"other\"\n\"691606\";\"Terni\";\"other\"\n\"691606\";\"ТЕРНЫ\";\"other\"\n\"691606\";\"Терни\";\"other\"\n\"691639\";\"Ternuvate\";\"main\"\n\"691639\";\"TERNOVATOE\";\"other\"\n\"691639\";\"Ternovatoye\";\"other\"\n\"691639\";\"ТЕРНОВАТОЕ\";\"other\"\n\"691639\";\"Тернувате\";\"other\"\n\"691650\";\"Ternopil’\";\"main\"\n\"691650\";\"Ternopil'\";\"ascii\"\n\"691650\";\"Tarnopol\";\"other\"\n\"691650\";\"Tarnopol'\";\"other\"\n\"691650\";\"Tarnopol’\";\"other\"\n\"691650\";\"Ternopil\";\"other\"\n\"691650\";\"Ternopilo\";\"other\"\n\"691650\";\"Ternopol'\";\"other\"\n\"691650\";\"Ternopol’\";\"other\"\n\"691650\";\"trnwpwl\";\"other\"\n\"691650\";\"Тернополь\";\"other\"\n\"691650\";\"Тернопіль\";\"other\"\n\"691650\";\"טרנופול\";\"other\"\n\"691693\";\"Terebovlya\";\"main\"\n\"691693\";\"Terebovlja\";\"other\"\n\"691693\";\"Trebozlya\";\"other\"\n\"691693\";\"Trembovlya\";\"other\"\n\"691693\";\"Trembowla\";\"other\"\n\"691693\";\"Теребовля\";\"other\"\n\"691708\";\"Teplyk\";\"main\"\n\"691708\";\"Teplik\";\"other\"\n\"691708\";\"Теплик\";\"other\"\n\"691803\";\"Tatarbunary\";\"main\"\n\"691803\";\"Tatar Bunar\";\"other\"\n\"691803\";\"Tatarbunari\";\"other\"\n\"691803\";\"Tetereshti\";\"other\"\n\"691803\";\"Татарбунари\";\"other\"\n\"691820\";\"Tarutyne\";\"main\"\n\"691820\";\"Anchokrak\";\"other\"\n\"691820\";\"Tarutine\";\"other\"\n\"691820\";\"Tarutino\";\"other\"\n\"691820\";\"Tarutinskaya\";\"other\"\n\"691820\";\"Тарутине\";\"other\"\n\"691904\";\"Tarashcha\";\"main\"\n\"691904\";\"TARASHHA\";\"other\"\n\"691904\";\"ТАРАЩА\";\"other\"\n\"691942\";\"Talalayivka\";\"main\"\n\"691942\";\"Talalaevka\";\"other\"\n\"691942\";\"Talalaivka\";\"other\"\n\"691942\";\"Talalayevka\";\"other\"\n\"691942\";\"Талалаевка\";\"other\"\n\"691942\";\"Талалаївка\";\"other\"\n\"691999\";\"Syeverodonets’k\";\"main\"\n\"691999\";\"Syeverodonets'k\";\"ascii\"\n\"691999\";\"SEVERODONECK\";\"other\"\n\"691999\";\"Severodonec'k\";\"other\"\n\"691999\";\"Severodonetsk\";\"other\"\n\"691999\";\"СЕВЕРОДОНЕЦК\";\"other\"\n\"691999\";\"Сєвєродонецьк\";\"other\"\n\"692016\";\"Svyatogorsk\";\"main\"\n\"692016\";\"Svjatogorsk\";\"other\"\n\"692016\";\"Святогорск\";\"other\"\n\"692039\";\"Svityaz’\";\"main\"\n\"692039\";\"Svityaz'\";\"ascii\"\n\"692039\";\"Svitjaz'\";\"other\"\n\"692039\";\"Свитязь\";\"other\"\n\"692087\";\"Svitlovods’k\";\"main\"\n\"692087\";\"Svitlovods'k\";\"ascii\"\n\"692087\";\"Khrushchev\";\"other\"\n\"692087\";\"Khrushchëv\";\"other\"\n\"692087\";\"Kremges\";\"other\"\n\"692087\";\"Krylov\";\"other\"\n\"692087\";\"Novogeorgievsk\";\"other\"\n\"692087\";\"Novogeorgiyevsk\";\"other\"\n\"692087\";\"SVETLOVODSK\";\"other\"\n\"692087\";\"Svetlovodsk\";\"other\"\n\"692087\";\"СВЕТЛОВОДСК\";\"other\"\n\"692105\";\"Sverdlovs’k\";\"main\"\n\"692105\";\"Sverdlovs'k\";\"ascii\"\n\"692105\";\"Imeni Sverdlova\";\"other\"\n\"692105\";\"Selo Imeni Sverdlova\";\"other\"\n\"692105\";\"Selo imeni Sverdlova\";\"other\"\n\"692105\";\"Sverdlovsk\";\"other\"\n\"692105\";\"Свердловск\";\"other\"\n\"692105\";\"Село имени Свердлова\";\"other\"\n\"692118\";\"Svatove\";\"main\"\n\"692118\";\"SVATOVO\";\"other\"\n\"692118\";\"Svatovo\";\"other\"\n\"692118\";\"Swatowo\";\"other\"\n\"692118\";\"СВАТОВО\";\"other\"\n\"692118\";\"Сватове\";\"other\"\n\"692122\";\"Svarychiv\";\"main\"\n\"692122\";\"Svarichov\";\"other\"\n\"692122\";\"Svariciv\";\"other\"\n\"692122\";\"Svarychev\";\"other\"\n\"692122\";\"Svarychuv\";\"other\"\n\"692122\";\"Сваричів\";\"other\"\n\"692129\";\"Svalyava\";\"main\"\n\"692129\";\"Svalava\";\"other\"\n\"692129\";\"Svaljava\";\"other\"\n\"692129\";\"Svalva\";\"other\"\n\"692129\";\"Свалява\";\"other\"\n\"692146\";\"Sutysky\";\"main\"\n\"692146\";\"Sutiski\";\"other\"\n\"692146\";\"Сутиски\";\"other\"\n\"692175\";\"Sursko-Mikhaylovka\";\"main\"\n\"692175\";\"Sursko-Mikhajlovka\";\"other\"\n\"692175\";\"Сурско-Михайловка\";\"other\"\n\"692194\";\"Sumy\";\"main\"\n\"692194\";\"Soemy\";\"other\"\n\"692194\";\"Sumi\";\"other\"\n\"692194\";\"sumu~i\";\"other\"\n\"692194\";\"swmy\";\"other\"\n\"692194\";\"Суми\";\"other\"\n\"692194\";\"Сумы\";\"other\"\n\"692194\";\"סומי\";\"other\"\n\"692194\";\"سومي\";\"other\"\n\"692194\";\"スムィ\";\"other\"\n\"692233\";\"Sukhovolya\";\"main\"\n\"692233\";\"Sukhovolja\";\"other\"\n\"692233\";\"Суховоля\";\"other\"\n\"692301\";\"Sudovaya Vishnya\";\"main\"\n\"692301\";\"Sadowa Wisznia\";\"other\"\n\"692301\";\"Sondova Vishnya\";\"other\"\n\"692301\";\"Sudova Vishnja\";\"other\"\n\"692301\";\"Sudova Vyshnya\";\"other\"\n\"692301\";\"Sudovaya Vishna\";\"other\"\n\"692301\";\"Sądowa Wisznia\";\"other\"\n\"692301\";\"Wisznia\";\"other\"\n\"692301\";\"Судова Вишня\";\"other\"\n\"692315\";\"Sudak\";\"main\"\n\"692315\";\"Ssudak\";\"other\"\n\"692315\";\"Sudako\";\"other\"\n\"692315\";\"Судак\";\"other\"\n\"692315\";\"სუდაკი\";\"other\"\n\"692317\";\"Subottsi\";\"main\"\n\"692317\";\"Subbotcy\";\"other\"\n\"692317\";\"Subbotets\";\"other\"\n\"692317\";\"Subbottsy\";\"other\"\n\"692317\";\"Subotci\";\"other\"\n\"692317\";\"Субботцы\";\"other\"\n\"692317\";\"Суботці\";\"other\"\n\"692352\";\"Studenok\";\"main\"\n\"692352\";\"Студенок\";\"other\"\n\"692372\";\"Stryy\";\"main\"\n\"692372\";\"Strij\";\"other\"\n\"692372\";\"Stry\";\"other\"\n\"692372\";\"Stryj\";\"other\"\n\"692372\";\"Стрий\";\"other\"\n\"692410\";\"Strohonivka\";\"main\"\n\"692410\";\"Mamak\";\"other\"\n\"692410\";\"Stroganovka\";\"other\"\n\"692465\";\"Strabychovo\";\"main\"\n\"692465\";\"Strabichevo\";\"other\"\n\"692465\";\"Strabichovo\";\"other\"\n\"692465\";\"Strabichëvo\";\"other\"\n\"692465\";\"Strabychove\";\"other\"\n\"692465\";\"Страбичово\";\"other\"\n\"692468\";\"Stozhkovskoye\";\"main\"\n\"692468\";\"Stozhkovo\";\"other\"\n\"692531\";\"Stetseva\";\"main\"\n\"692531\";\"Steceva\";\"other\"\n\"692531\";\"Stetsova\";\"other\"\n\"692531\";\"Стецева\";\"other\"\n\"692604\";\"Stepanivka\";\"main\"\n\"692604\";\"Stepanovka\";\"other\"\n\"692604\";\"Степановка\";\"other\"\n\"692632\";\"Stebnik\";\"main\"\n\"692632\";\"Stebniki\";\"other\"\n\"692632\";\"Stebnyk\";\"other\"\n\"692632\";\"Стебник\";\"other\"\n\"692638\";\"Steblëv\";\"main\"\n\"692638\";\"Steblev\";\"ascii\"\n\"692638\";\"STEBLEV\";\"other\"\n\"692638\";\"Steblev Pervyy\";\"other\"\n\"692638\";\"Steblëv Pervyy\";\"other\"\n\"692638\";\"СТЕБЛЕВ\";\"other\"\n\"692672\";\"Stavyshche\";\"main\"\n\"692672\";\"Stavishche\";\"other\"\n\"692672\";\"Stavishhe\";\"other\"\n\"692672\";\"Ставище\";\"other\"\n\"692703\";\"Staryy Saltiv\";\"main\"\n\"692703\";\"Star.Saltov\";\"other\"\n\"692703\";\"Starij Saltiv\";\"other\"\n\"692703\";\"Stary Saltov\";\"other\"\n\"692703\";\"Staryy Saltov\";\"other\"\n\"692703\";\"Стар.Салтов\";\"other\"\n\"692703\";\"Старий Салтів\";\"other\"\n\"692709\";\"Staryy Merchyk\";\"main\"\n\"692709\";\"STAR.MERCHIK\";\"other\"\n\"692709\";\"Starij Merchik\";\"other\"\n\"692709\";\"Staryy Merchik\";\"other\"\n\"692709\";\"СТАР.МЕРЧИК\";\"other\"\n\"692709\";\"Старий Мерчик\";\"other\"\n\"692713\";\"Staryy Krym\";\"main\"\n\"692713\";\"STARYJ KRYM\";\"other\"\n\"692713\";\"Stary Krym\";\"other\"\n\"692713\";\"СТАРЫЙ КРЫМ\";\"other\"\n\"692714\";\"Staryy Krym\";\"main\"\n\"692714\";\"Eski Krym\";\"other\"\n\"692714\";\"Solkhat\";\"other\"\n\"692714\";\"Starij Krim\";\"other\"\n\"692714\";\"Stary Krim\";\"other\"\n\"692714\";\"Stary Krym\";\"other\"\n\"692714\";\"Staryy Krim\";\"other\"\n\"692714\";\"Старий Крим\";\"other\"\n\"692742\";\"Stari Kuty\";\"main\"\n\"692742\";\"Kuty Stare\";\"other\"\n\"692742\";\"Kuty Stary\";\"other\"\n\"692742\";\"Kuty Staryye\";\"other\"\n\"692742\";\"Stari Kuti\";\"other\"\n\"692742\";\"Staryye Kuty\";\"other\"\n\"692742\";\"Старі Кути\";\"other\"\n\"692749\";\"Stari Bohorodchany\";\"main\"\n\"692749\";\"Stare-Bogorodchany\";\"other\"\n\"692749\";\"Stari Bogorodcani\";\"other\"\n\"692749\";\"Staryye Bogorodchany\";\"other\"\n\"692749\";\"Старі Богородчани\";\"other\"\n\"692818\";\"Starokostyantyniv\";\"main\"\n\"692818\";\"Starokonstantinov\";\"other\"\n\"692818\";\"Starokonstantinow\";\"other\"\n\"692818\";\"Starokostantiniv\";\"other\"\n\"692818\";\"Староконстантинов\";\"other\"\n\"692818\";\"Старокостянтинів\";\"other\"\n\"692819\";\"Starokozache\";\"main\"\n\"692819\";\"Cazaci\";\"other\"\n\"692819\";\"Cazacii-Vechi\";\"other\"\n\"692819\";\"Kazach'\";\"other\"\n\"692819\";\"Kazach’\";\"other\"\n\"692819\";\"Staro-Kozaki\";\"other\"\n\"692819\";\"Starokazach'ye\";\"other\"\n\"692819\";\"Starokazach’ye\";\"other\"\n\"692819\";\"Starokozach'ye\";\"other\"\n\"692819\";\"Starokozach’ye\";\"other\"\n\"692819\";\"Старокозаче\";\"other\"\n\"692829\";\"Starobesheve\";\"main\"\n\"692829\";\"STAROBESHEVO\";\"other\"\n\"692829\";\"Starobeshevo\";\"other\"\n\"692829\";\"Starobyeshevo\";\"other\"\n\"692829\";\"Staroye Beshevo\";\"other\"\n\"692829\";\"СТАРОБЕШЕВО\";\"other\"\n\"692829\";\"Старобешеве\";\"other\"\n\"692832\";\"Starobil’s’k\";\"main\"\n\"692832\";\"Starobil's'k\";\"ascii\"\n\"692832\";\"Bel'skiy Gorodok\";\"other\"\n\"692832\";\"Bel’skiy Gorodok\";\"other\"\n\"692832\";\"STAROBEL'SK\";\"other\"\n\"692832\";\"Staraya Belaya\";\"other\"\n\"692832\";\"Starobel'sk\";\"other\"\n\"692832\";\"Starobel’sk\";\"other\"\n\"692832\";\"СТАРОБЕЛЬСК\";\"other\"\n\"692844\";\"Starychi\";\"main\"\n\"692844\";\"Starichi\";\"other\"\n\"692844\";\"Starici\";\"other\"\n\"692844\";\"Stariska\";\"other\"\n\"692844\";\"Stazhiska\";\"other\"\n\"692844\";\"Stirichi\";\"other\"\n\"692844\";\"Старичі\";\"other\"\n\"692856\";\"Stara Vyzhivka\";\"main\"\n\"692856\";\"Stara Vizivka\";\"other\"\n\"692856\";\"Stara Vyzhva\";\"other\"\n\"692856\";\"Staraya Vizhivka\";\"other\"\n\"692856\";\"Staraya Vyzhevka\";\"other\"\n\"692856\";\"Стара Вижівка\";\"other\"\n\"692866\";\"Stara Synyava\";\"main\"\n\"692866\";\"Stara Sinjava\";\"other\"\n\"692866\";\"Staraya Sinyava\";\"other\"\n\"692866\";\"Стара Синява\";\"other\"\n\"692944\";\"Stanislav\";\"main\"\n\"692944\";\"Станіслав\";\"other\"\n\"692975\";\"Stakhanov\";\"main\"\n\"692975\";\"Kadijewka\";\"other\"\n\"692975\";\"Kadiyevka\";\"other\"\n\"692975\";\"STAKHANOV\";\"other\"\n\"692975\";\"Ssergo\";\"other\"\n\"692975\";\"Stachanow\";\"other\"\n\"692975\";\"СТАХАНОВ\";\"other\"\n\"692975\";\"Стаханов\";\"other\"\n\"693001\";\"Sredneye Vodyanoye\";\"main\"\n\"693001\";\"Seredneh Vodjane\";\"other\"\n\"693001\";\"Serednye Vodyane\";\"other\"\n\"693001\";\"Середнэ Водяне\";\"other\"\n\"693002\";\"Sredneye\";\"main\"\n\"693002\";\"Seredne\";\"other\"\n\"693002\";\"Seredneye\";\"other\"\n\"693002\";\"Srednee\";\"other\"\n\"693002\";\"Среднее\";\"other\"\n\"693010\";\"Sribne\";\"main\"\n\"693010\";\"SREBNOE\";\"other\"\n\"693010\";\"Srebnoye\";\"other\"\n\"693010\";\"Sribnoye\";\"other\"\n\"693010\";\"СРЕБНОЕ\";\"other\"\n\"693010\";\"Срібне\";\"other\"\n\"693028\";\"Spasskoye\";\"main\"\n\"693028\";\"Spas'ke\";\"other\"\n\"693028\";\"Spasskoe\";\"other\"\n\"693028\";\"Спасское\";\"other\"\n\"693028\";\"Спаське\";\"other\"\n\"693044\";\"Spas\";\"main\"\n\"693044\";\"Спас\";\"other\"\n\"693100\";\"Sosnytsya\";\"main\"\n\"693100\";\"SOSNICA\";\"other\"\n\"693100\";\"Sosnicja\";\"other\"\n\"693100\";\"Sosnitsa\";\"other\"\n\"693100\";\"СОСНИЦА\";\"other\"\n\"693100\";\"Сосниця\";\"other\"\n\"693176\";\"Solotvyno\";\"main\"\n\"693176\";\"Aknaszlatina\";\"other\"\n\"693176\";\"Solotvina\";\"other\"\n\"693176\";\"Solotvino\";\"other\"\n\"693176\";\"Solotvyna\";\"other\"\n\"693176\";\"Солотвино\";\"other\"\n\"693178\";\"Solotvyn\";\"main\"\n\"693178\";\"Solotvin\";\"other\"\n\"693178\";\"Solotvina\";\"other\"\n\"693178\";\"Solotwina\";\"other\"\n\"693178\";\"Sołotwina\";\"other\"\n\"693178\";\"Zolotvina\";\"other\"\n\"693178\";\"Солотвин\";\"other\"\n\"693193\";\"Solonka\";\"main\"\n\"693193\";\"Solonka Vel'ka\";\"other\"\n\"693193\";\"Solonka Velikaya\";\"other\"\n\"693193\";\"Солонка\";\"other\"\n\"693194\";\"Solonytsivka\";\"main\"\n\"693194\";\"Sinelitsovka\";\"other\"\n\"693194\";\"Sinolitsevka\";\"other\"\n\"693194\";\"Solonicivka\";\"other\"\n\"693194\";\"Solonitsevka\";\"other\"\n\"693194\";\"Солоницівка\";\"other\"\n\"693231\";\"Solone\";\"main\"\n\"693231\";\"SOLENOE\";\"other\"\n\"693231\";\"Solenoye\";\"other\"\n\"693231\";\"Solënoye\";\"other\"\n\"693231\";\"СОЛЕНОЕ\";\"other\"\n\"693231\";\"Солоне\";\"other\"\n\"693284\";\"Sokyryany\";\"main\"\n\"693284\";\"Secureni\";\"other\"\n\"693284\";\"Secureni Targ\";\"other\"\n\"693284\";\"Secureni Târg\";\"other\"\n\"693284\";\"Sekiryany\";\"other\"\n\"693284\";\"Sekuren'\";\"other\"\n\"693284\";\"Sekureni\";\"other\"\n\"693284\";\"Sekuren’\";\"other\"\n\"693284\";\"Sekuryany\";\"other\"\n\"693284\";\"Sokirjani\";\"other\"\n\"693284\";\"Sokiryany\";\"other\"\n\"693284\";\"Сокиряни\";\"other\"\n\"693301\";\"Sokal’\";\"main\"\n\"693301\";\"Sokal'\";\"ascii\"\n\"693301\";\"Сокаль\";\"other\"\n\"693325\";\"Sofiyivka\";\"main\"\n\"693325\";\"SOFIEVKA\";\"other\"\n\"693325\";\"Sofiewka\";\"other\"\n\"693325\";\"Sofiivka\";\"other\"\n\"693325\";\"Sofijewka\";\"other\"\n\"693325\";\"Sofiyevka\";\"other\"\n\"693325\";\"Ssofijewka\";\"other\"\n\"693325\";\"СОФИЕВКА\";\"other\"\n\"693325\";\"Софіївка\";\"other\"\n\"693348\";\"Sobolivka\";\"main\"\n\"693348\";\"Соболівка\";\"other\"\n\"693365\";\"Snyatyn\";\"main\"\n\"693365\";\"Sniatyn\";\"other\"\n\"693365\";\"Snjatin\";\"other\"\n\"693365\";\"Snyatin\";\"other\"\n\"693365\";\"Śniatyn\";\"other\"\n\"693365\";\"Снятин\";\"other\"\n\"693379\";\"Snihurivka\";\"main\"\n\"693379\";\"Smigirevk\";\"other\"\n\"693379\";\"Snegirevka\";\"other\"\n\"693379\";\"Snegirëvka\";\"other\"\n\"693379\";\"Snigirevka\";\"other\"\n\"693379\";\"Snigirëvka\";\"other\"\n\"693379\";\"Snigurivka\";\"other\"\n\"693379\";\"Снігурівка\";\"other\"\n\"693381\";\"Snizhne\";\"main\"\n\"693381\";\"SNEZHNOE\";\"other\"\n\"693381\";\"Shezhnoye\";\"other\"\n\"693381\";\"Snezhnoye\";\"other\"\n\"693381\";\"Snizne\";\"other\"\n\"693381\";\"СНЕЖНОЕ\";\"other\"\n\"693381\";\"Сніжне\";\"other\"\n\"693457\";\"Smila\";\"main\"\n\"693457\";\"SMELA\";\"other\"\n\"693457\";\"Smela\";\"other\"\n\"693457\";\"СМЕЛА\";\"other\"\n\"693457\";\"Сміла\";\"other\"\n\"693468\";\"Sloviansk\";\"main\"\n\"693468\";\"Slavjansk\";\"other\"\n\"693468\";\"Slavyansk\";\"other\"\n\"693468\";\"Slawjansk\";\"other\"\n\"693468\";\"Slov”yans'k\";\"other\"\n\"693468\";\"Славянск\";\"other\"\n\"693510\";\"Slobidka\";\"main\"\n\"693510\";\"Poselok Slobodka\";\"other\"\n\"693510\";\"Posëlok Slobodka\";\"other\"\n\"693510\";\"Slobodka\";\"other\"\n\"693510\";\"Слобідка\";\"other\"\n\"693546\";\"Sloboda\";\"main\"\n\"693546\";\"Popova Sloboda\";\"other\"\n\"693546\";\"Слобода\";\"other\"\n\"693581\";\"Slavuta\";\"main\"\n\"693581\";\"Slawuta\";\"other\"\n\"693581\";\"Sslawuta\";\"other\"\n\"693581\";\"Славута\";\"other\"\n\"693582\";\"Slavskoye\";\"main\"\n\"693582\";\"Slavsko\";\"other\"\n\"693582\";\"Slavskoe\";\"other\"\n\"693582\";\"Slawsko\";\"other\"\n\"693582\";\"Sławsko\";\"other\"\n\"693582\";\"slawskoye\";\"other\"\n\"693582\";\"Славское\";\"other\"\n\"693598\";\"Slatyne\";\"main\"\n\"693598\";\"Kuliki\";\"other\"\n\"693598\";\"Poselok Slatino\";\"other\"\n\"693598\";\"Posëlok Slatino\";\"other\"\n\"693598\";\"SLATINO\";\"other\"\n\"693598\";\"Slatine\";\"other\"\n\"693598\";\"Slatino\";\"other\"\n\"693598\";\"СЛАТИНО\";\"other\"\n\"693598\";\"Слатине\";\"other\"\n\"693615\";\"Skvyra\";\"main\"\n\"693615\";\"Skvira\";\"other\"\n\"693615\";\"Сквира\";\"other\"\n\"693658\";\"Skole\";\"main\"\n\"693658\";\"Skol'ye\";\"other\"\n\"693658\";\"Skol’ye\";\"other\"\n\"693658\";\"Сколе\";\"other\"\n\"693679\";\"Skhodnitsa\";\"main\"\n\"693679\";\"Schodnica\";\"other\"\n\"693679\";\"Skhodnica\";\"other\"\n\"693679\";\"Сходница\";\"other\"\n\"693700\";\"Skalat\";\"main\"\n\"693700\";\"Скалат\";\"other\"\n\"693709\";\"Skadovs’k\";\"main\"\n\"693709\";\"Skadovs'k\";\"ascii\"\n\"693709\";\"Skadovsk\";\"other\"\n\"693709\";\"Skadowsk\";\"other\"\n\"693709\";\"Скадовск\";\"other\"\n\"693789\";\"Synevyrs'ka Polyana\";\"main\"\n\"693789\";\"Sinevir-Polyana\";\"other\"\n\"693789\";\"Sinevirskaja Poljana\";\"other\"\n\"693789\";\"Sinevirskaya Polyana\";\"other\"\n\"693789\";\"Siniyvir Polyana\";\"other\"\n\"693789\";\"Синевирская Поляна\";\"other\"\n\"693791\";\"Synevyr\";\"main\"\n\"693791\";\"Alsoszinever\";\"other\"\n\"693791\";\"Alsószinevér\";\"other\"\n\"693791\";\"Sinevir\";\"other\"\n\"693791\";\"Siniyvir\";\"other\"\n\"693791\";\"Sinovir\";\"other\"\n\"693791\";\"Синевир\";\"other\"\n\"693796\";\"Synel’nykove\";\"main\"\n\"693796\";\"Synel'nykove\";\"ascii\"\n\"693796\";\"Sinel'nikovo\";\"other\"\n\"693796\";\"Sinel’nikovo\";\"other\"\n\"693796\";\"Синельниково\";\"other\"\n\"693805\";\"Simferopol’\";\"main\"\n\"693805\";\"Simferopol'\";\"ascii\"\n\"693805\";\"Ak-Mechet\";\"other\"\n\"693805\";\"Akmescit\";\"other\"\n\"693805\";\"Aqmescit\";\"other\"\n\"693805\";\"Simferopol\";\"other\"\n\"693805\";\"Simferopoli\";\"other\"\n\"693805\";\"Simferopolo\";\"other\"\n\"693805\";\"Ssimferopol\";\"other\"\n\"693805\";\"Symferopol\";\"other\"\n\"693805\";\"shinferopori\";\"other\"\n\"693805\";\"smfrwbl\";\"other\"\n\"693805\";\"symprwpwl\";\"other\"\n\"693805\";\"xin fei luo bo er\";\"other\"\n\"693805\";\"Симферопол\";\"other\"\n\"693805\";\"Симферополь\";\"other\"\n\"693805\";\"Сімферополь\";\"other\"\n\"693805\";\"סימפרופול\";\"other\"\n\"693805\";\"سمفروبل\";\"other\"\n\"693805\";\"シンフェロポリ\";\"other\"\n\"693805\";\"辛菲罗波尔\";\"other\"\n\"693809\";\"Simeiz\";\"main\"\n\"693809\";\"Semeiz\";\"other\"\n\"693809\";\"Simonz\";\"other\"\n\"693809\";\"Симеиз\";\"other\"\n\"693920\";\"Shpola\";\"main\"\n\"693920\";\"Шпола\";\"other\"\n\"693942\";\"Shostka\";\"main\"\n\"693942\";\"SHOSTKA\";\"other\"\n\"693942\";\"Schostka\";\"other\"\n\"693942\";\"ШОСТКА\";\"other\"\n\"693942\";\"Шостка\";\"other\"\n\"693953\";\"Sholokhove\";\"main\"\n\"693953\";\"Sholokhovo\";\"other\"\n\"693953\";\"Шолохове\";\"other\"\n\"693995\";\"Shklo\";\"main\"\n\"693995\";\"Szklo\";\"other\"\n\"693995\";\"Szkło\";\"other\"\n\"693995\";\"Шкло\";\"other\"\n\"694013\";\"Shyshaky\";\"main\"\n\"694013\";\"Shishaki\";\"other\"\n\"694013\";\"Шишаки\";\"other\"\n\"694016\";\"Shyryayeve\";\"main\"\n\"694016\";\"Sharayevo\";\"other\"\n\"694016\";\"Shirjaehve\";\"other\"\n\"694016\";\"Shiryayevo\";\"other\"\n\"694016\";\"Ширяэве\";\"other\"\n\"694023\";\"Shyroke\";\"main\"\n\"694023\";\"Shiroke\";\"other\"\n\"694023\";\"Shirokoye\";\"other\"\n\"694023\";\"Широке\";\"other\"\n\"694025\";\"Shyroke\";\"main\"\n\"694025\";\"Shiroke\";\"other\"\n\"694025\";\"Shirokoye\";\"other\"\n\"694025\";\"Широке\";\"other\"\n\"694073\";\"Shypyntsi\";\"main\"\n\"694073\";\"Shipentsi\";\"other\"\n\"694073\";\"Shipintsy\";\"other\"\n\"694073\";\"Sipinci\";\"other\"\n\"694073\";\"Шипинці\";\"other\"\n\"694137\";\"Shevchenkove\";\"main\"\n\"694137\";\"Bulatselivka\";\"other\"\n\"694137\";\"Bulazelewka\";\"other\"\n\"694137\";\"SHEVCHENKOVO\";\"other\"\n\"694137\";\"Shevchenkovo\";\"other\"\n\"694137\";\"ШЕВЧЕНКОВО\";\"other\"\n\"694137\";\"Шевченкове\";\"other\"\n\"694148\";\"Shevchenkove\";\"main\"\n\"694148\";\"Shevchenko\";\"other\"\n\"694148\";\"Shevchenkovo\";\"other\"\n\"694148\";\"Шевченково\";\"other\"\n\"694152\";\"Shevchenkove\";\"main\"\n\"694152\";\"Caramahmet\";\"other\"\n\"694152\";\"Karamagmed\";\"other\"\n\"694152\";\"Karamakhmed\";\"other\"\n\"694152\";\"Shevchenkovo\";\"other\"\n\"694152\";\"Шевченково\";\"other\"\n\"694198\";\"Sheshory\";\"main\"\n\"694198\";\"Шешоры\";\"other\"\n\"694216\";\"Shepetivka\";\"main\"\n\"694216\";\"Schepetowka\";\"other\"\n\"694216\";\"Sepetivka\";\"other\"\n\"694216\";\"Shepetovka\";\"other\"\n\"694216\";\"Шепетовка\";\"other\"\n\"694216\";\"Шепетівка\";\"other\"\n\"694273\";\"Shchors\";\"main\"\n\"694273\";\"SHHORS\";\"other\"\n\"694273\";\"Shchorsk\";\"other\"\n\"694273\";\"Snovsk\";\"other\"\n\"694273\";\"ЩОРС\";\"other\"\n\"694290\";\"Shcherbinovka\";\"main\"\n\"694290\";\"Serbinivka\";\"other\"\n\"694290\";\"Shcherbynivka\";\"other\"\n\"694290\";\"Щербинівка\";\"other\"\n\"694320\";\"Shchebetovka\";\"main\"\n\"694320\";\"Otus\";\"other\"\n\"694320\";\"Otuz\";\"other\"\n\"694320\";\"Otuzy\";\"other\"\n\"694320\";\"Shebetovka\";\"other\"\n\"694320\";\"Shhebetovka\";\"other\"\n\"694320\";\"Щебетовка\";\"other\"\n\"694333\";\"Shatsk\";\"main\"\n\"694333\";\"Shats'k\";\"other\"\n\"694333\";\"Szack\";\"other\"\n\"694333\";\"Шатск\";\"other\"\n\"694333\";\"Шатськ\";\"other\"\n\"694350\";\"Sharhorod\";\"main\"\n\"694350\";\"Shargorod\";\"other\"\n\"694350\";\"Шаргород\";\"other\"\n\"694369\";\"Shalyhyne\";\"main\"\n\"694369\";\"SHALYGINO\";\"other\"\n\"694369\";\"Shaligine\";\"other\"\n\"694369\";\"Shalygino\";\"other\"\n\"694369\";\"Shul'gino\";\"other\"\n\"694369\";\"ШАЛЫГИНО\";\"other\"\n\"694369\";\"Шалигине\";\"other\"\n\"694382\";\"Shakhtërsk\";\"main\"\n\"694382\";\"Shakhtersk\";\"ascii\"\n\"694382\";\"Katyk\";\"other\"\n\"694382\";\"Zapadno-Gruppskiy\";\"other\"\n\"694382\";\"Шахтерск\";\"other\"\n\"694392\";\"Shabo\";\"main\"\n\"694392\";\"Sba\";\"other\"\n\"694392\";\"Shaba\";\"other\"\n\"694392\";\"Şba\";\"other\"\n\"694392\";\"Шабо\";\"other\"\n\"694403\";\"Seversk\";\"main\"\n\"694403\";\"Yama\";\"other\"\n\"694403\";\"Северск\";\"other\"\n\"694423\";\"Sevastopol’\";\"main\"\n\"694423\";\"Sevastopol'\";\"ascii\"\n\"694423\";\"Akhiar\";\"other\"\n\"694423\";\"Akhtyar\";\"other\"\n\"694423\";\"Akyar\";\"other\"\n\"694423\";\"Aqyar\";\"other\"\n\"694423\";\"Sebastopol\";\"other\"\n\"694423\";\"Sebastopoli\";\"other\"\n\"694423\";\"Sebastopolis\";\"other\"\n\"694423\";\"Sebastopolo\";\"other\"\n\"694423\";\"Sebastòpol\";\"other\"\n\"694423\";\"Sevastopol\";\"other\"\n\"694423\";\"Sevastopolis\";\"other\"\n\"694423\";\"Sevastopolo\";\"other\"\n\"694423\";\"Sevastopoľ\";\"other\"\n\"694423\";\"Sewastopol\";\"other\"\n\"694423\";\"Sivastopol\";\"other\"\n\"694423\";\"Sébastopol\";\"other\"\n\"694423\";\"sai wa si tuo bo er\";\"other\"\n\"694423\";\"sbstwpwl\";\"other\"\n\"694423\";\"sebaseutopol\";\"other\"\n\"694423\";\"sevu~asutopori\";\"other\"\n\"694423\";\"Севастопол\";\"other\"\n\"694423\";\"Севастополь\";\"other\"\n\"694423\";\"סבסטופול\";\"other\"\n\"694423\";\"セヴァストポリ\";\"other\"\n\"694423\";\"塞瓦斯托波爾\";\"other\"\n\"694423\";\"세바스토폴\";\"other\"\n\"694427\";\"Serpneve\";\"main\"\n\"694427\";\"Leiptig\";\"other\"\n\"694427\";\"Leipzig\";\"other\"\n\"694427\";\"Leyptsig\";\"other\"\n\"694427\";\"Leyptsigskaya\";\"other\"\n\"694427\";\"Serpnevoye\";\"other\"\n\"694427\";\"Skinos\";\"other\"\n\"694427\";\"Серпневе\";\"other\"\n\"694467\";\"Sergeyevka\";\"main\"\n\"694467\";\"Sergeevka\";\"other\"\n\"694467\";\"Sergeyevka-Bay\";\"other\"\n\"694467\";\"Serghieste-Noui\";\"other\"\n\"694467\";\"Serghieşte-Noui\";\"other\"\n\"694467\";\"Sergiyivka\";\"other\"\n\"694467\";\"Сергеевка\";\"other\"\n\"694491\";\"Seredyna-Buda\";\"main\"\n\"694491\";\"Iseredinabuda\";\"other\"\n\"694491\";\"SEREDINA BUDA\";\"other\"\n\"694491\";\"Seredina-Buda\";\"other\"\n\"694491\";\"СЕРЕДИНА БУДА\";\"other\"\n\"694498\";\"Serebriya\";\"main\"\n\"694498\";\"Serebria\";\"other\"\n\"694498\";\"Серебрія\";\"other\"\n\"694548\";\"Sencha\";\"main\"\n\"694548\";\"Сенча\";\"other\"\n\"694558\";\"Semypolky\";\"main\"\n\"694558\";\"Semipolki\";\"other\"\n\"694558\";\"Семиполки\";\"other\"\n\"694579\";\"Semeykino\";\"main\"\n\"694579\";\"SEMEJKINO\";\"other\"\n\"694579\";\"Semeykinskiy\";\"other\"\n\"694579\";\"Simejkine\";\"other\"\n\"694579\";\"Simeykyne\";\"other\"\n\"694579\";\"СЕМЕЙКИНО\";\"other\"\n\"694579\";\"Сімейкине\";\"other\"\n\"694590\";\"Semenivka\";\"main\"\n\"694590\";\"SEMENOVKA\";\"other\"\n\"694590\";\"Semenovka\";\"other\"\n\"694590\";\"Seminovka\";\"other\"\n\"694590\";\"Semionovka\";\"other\"\n\"694590\";\"Semënovka\";\"other\"\n\"694590\";\"Ssemenowka\";\"other\"\n\"694590\";\"СЕМЕНОВКА\";\"other\"\n\"694590\";\"Семенівка\";\"other\"\n\"694603\";\"Semenivka\";\"main\"\n\"694603\";\"SEMENOVKA\";\"other\"\n\"694603\";\"Semenovka\";\"other\"\n\"694603\";\"Semënovka\";\"other\"\n\"694603\";\"СЕМЕНОВКА\";\"other\"\n\"694691\";\"Selets\";\"main\"\n\"694691\";\"Selets Bel'ski\";\"other\"\n\"694691\";\"Selets Bel’ski\";\"other\"\n\"694691\";\"Sielec\";\"other\"\n\"694691\";\"Sielec Belski\";\"other\"\n\"694691\";\"Sielec Bełski\";\"other\"\n\"694712\";\"Syedove\";\"main\"\n\"694712\";\"Imeni G. Ya. Sedova\";\"other\"\n\"694712\";\"Imeni Sedova\";\"other\"\n\"694712\";\"Imeni Sedova G. Ya.\";\"other\"\n\"694712\";\"Krivaya Kosa\";\"other\"\n\"694712\";\"SEDOVO\";\"other\"\n\"694712\";\"Sedova\";\"other\"\n\"694712\";\"Sedovo\";\"other\"\n\"694712\";\"Sehdove\";\"other\"\n\"694712\";\"СЕДОВО\";\"other\"\n\"694712\";\"Сэдове\";\"other\"\n\"694715\";\"Sednëv\";\"main\"\n\"694715\";\"Sednev\";\"ascii\"\n\"694715\";\"Седнев\";\"other\"\n\"694725\";\"Schast’ye\";\"main\"\n\"694725\";\"Schast'ye\";\"ascii\"\n\"694725\";\"Schast'e\";\"other\"\n\"694725\";\"Счастье\";\"other\"\n\"694745\";\"Savran’\";\"main\"\n\"694745\";\"Savran'\";\"ascii\"\n\"694745\";\"SAVRAN'\";\"other\"\n\"694745\";\"САВРАНЬ\";\"other\"\n\"694752\";\"Savyntsi\";\"main\"\n\"694752\";\"SAVINCY\";\"other\"\n\"694752\";\"Savinci\";\"other\"\n\"694752\";\"Savintsi\";\"other\"\n\"694752\";\"Savintsy\";\"other\"\n\"694752\";\"Sawinzy\";\"other\"\n\"694752\";\"САВИНЦЫ\";\"other\"\n\"694752\";\"Савинці\";\"other\"\n\"694792\";\"Sarny\";\"main\"\n\"694792\";\"Sarni\";\"other\"\n\"694792\";\"Sarnv\";\"other\"\n\"694792\";\"Сарни\";\"other\"\n\"694812\";\"Sarata\";\"main\"\n\"694812\";\"Serata\";\"other\"\n\"694812\";\"Сарата\";\"other\"\n\"694864\";\"Sambir\";\"main\"\n\"694864\";\"Sambor\";\"other\"\n\"694864\";\"Самбор\";\"other\"\n\"694864\";\"Самбір\";\"other\"\n\"694910\";\"Saky\";\"main\"\n\"694910\";\"Saki\";\"other\"\n\"694910\";\"Ssaki\";\"other\"\n\"694910\";\"Саки\";\"other\"\n\"694919\";\"Sakhnovshchyna\";\"main\"\n\"694919\";\"SAKHNOVSHHINA\";\"other\"\n\"694919\";\"Sakhnovshchina\";\"other\"\n\"694919\";\"САХНОВЩИНА\";\"other\"\n\"694934\";\"Sadzhavka\";\"main\"\n\"694934\";\"Sadzavka\";\"other\"\n\"694934\";\"Sazhovka\";\"other\"\n\"694934\";\"Саджавка\";\"other\"\n\"694992\";\"Rzhyshchiv\";\"main\"\n\"694992\";\"RZHISHHEV\";\"other\"\n\"694992\";\"Rzhishchev\";\"other\"\n\"694992\";\"Rzhishchëv\";\"other\"\n\"694992\";\"Rzisiv\";\"other\"\n\"694992\";\"РЖИЩЕВ\";\"other\"\n\"694992\";\"Ржищів\";\"other\"\n\"695026\";\"Rykhtichi\";\"main\"\n\"695026\";\"Rihtici\";\"other\"\n\"695026\";\"Rikhtichi\";\"other\"\n\"695026\";\"Rikhtsitse\";\"other\"\n\"695026\";\"Rychcice\";\"other\"\n\"695026\";\"Rykhtsitse\";\"other\"\n\"695026\";\"Rykhtychi\";\"other\"\n\"695026\";\"Рихтичі\";\"other\"\n\"695052\";\"Rybakivka\";\"main\"\n\"695052\";\"Adshijask\";\"other\"\n\"695052\";\"Adzhiaska\";\"other\"\n\"695052\";\"Adzhiyask\";\"other\"\n\"695052\";\"Rybakovka\";\"other\"\n\"695052\";\"Рыбаковка\";\"other\"\n\"695053\";\"Rybache\";\"main\"\n\"695053\";\"Rybach'e\";\"other\"\n\"695053\";\"Rybach'ye\";\"other\"\n\"695053\";\"Rybach’ye\";\"other\"\n\"695053\";\"Tuak\";\"other\"\n\"695053\";\"Рыбачье\";\"other\"\n\"695082\";\"Ruzhyn\";\"main\"\n\"695082\";\"Rushin\";\"other\"\n\"695082\";\"Ruzhin\";\"other\"\n\"695082\";\"Ружин\";\"other\"\n\"695104\";\"Russkaya Polyana\";\"main\"\n\"695104\";\"Rus'ka Poljana\";\"other\"\n\"695104\";\"Russkaja Poljana\";\"other\"\n\"695104\";\"Русская Поляна\";\"other\"\n\"695104\";\"Руська Поляна\";\"other\"\n\"695205\";\"Rudne\";\"main\"\n\"695205\";\"Rudno\";\"other\"\n\"695205\";\"Рудно\";\"other\"\n\"695221\";\"Rudki\";\"main\"\n\"695221\";\"Рудки\";\"other\"\n\"695274\";\"Rubizhne\";\"main\"\n\"695274\";\"Rubezhnaya\";\"other\"\n\"695274\";\"Rubezhnoe\";\"other\"\n\"695274\";\"Rubezhnoye\";\"other\"\n\"695274\";\"Rubizne\";\"other\"\n\"695274\";\"Рубежное\";\"other\"\n\"695274\";\"Рубіжне\";\"other\"\n\"695298\";\"Rozvadov\";\"main\"\n\"695298\";\"Razvandov\";\"other\"\n\"695298\";\"Rozvadiv\";\"other\"\n\"695298\";\"Rozvaduv\";\"other\"\n\"695298\";\"Розвадів\";\"other\"\n\"695307\";\"Rozivka\";\"main\"\n\"695307\";\"Rozovka\";\"other\"\n\"695307\";\"Розівка\";\"other\"\n\"695315\";\"Rozhnyativ\";\"main\"\n\"695315\";\"Rozhnyatov\";\"other\"\n\"695315\";\"Rozhnyatuv\";\"other\"\n\"695315\";\"Roznativ\";\"other\"\n\"695315\";\"Roznatov\";\"other\"\n\"695315\";\"Rozniatow\";\"other\"\n\"695315\";\"Roznyatuv\";\"other\"\n\"695315\";\"Rożniatów\";\"other\"\n\"695315\";\"Рожнятів\";\"other\"\n\"695320\";\"Rozhniv\";\"main\"\n\"695320\";\"Rozhnev\";\"other\"\n\"695320\";\"Rozhnov\";\"other\"\n\"695320\";\"Rozhnyuv\";\"other\"\n\"695320\";\"Rozniv\";\"other\"\n\"695320\";\"Roznov\";\"other\"\n\"695320\";\"Roznow\";\"other\"\n\"695320\";\"Rożnów\";\"other\"\n\"695320\";\"Рожнів\";\"other\"\n\"695326\";\"Rozhishche\";\"main\"\n\"695326\";\"Rozhishhe\";\"other\"\n\"695326\";\"Rozhyshche\";\"other\"\n\"695326\";\"Rozyszcze\";\"other\"\n\"695326\";\"Рожище\";\"other\"\n\"695342\";\"Rozdo\";\"main\"\n\"695342\";\"Razdol\";\"other\"\n\"695342\";\"Rozdul\";\"other\"\n\"695344\";\"Rozdil’na\";\"main\"\n\"695344\";\"Rozdil'na\";\"ascii\"\n\"695344\";\"Posad Pazdelnaya\";\"other\"\n\"695344\";\"Razdel'naja\";\"other\"\n\"695344\";\"Razdel'naya\";\"other\"\n\"695344\";\"Razdel’naya\";\"other\"\n\"695344\";\"Раздельная\";\"other\"\n\"695365\";\"Rivne\";\"main\"\n\"695365\";\"Rovnoe\";\"other\"\n\"695365\";\"Rovnoye\";\"other\"\n\"695365\";\"Ровное\";\"other\"\n\"695379\";\"Roven’ki\";\"main\"\n\"695379\";\"Roven'ki\";\"ascii\"\n\"695379\";\"Rovenki\";\"other\"\n\"695379\";\"Rowenki\";\"other\"\n\"695379\";\"Ровеньки\";\"other\"\n\"695439\";\"Roskoshnyy\";\"main\"\n\"695439\";\"Raskoshnaya\";\"other\"\n\"695439\";\"Roskoshnaja\";\"other\"\n\"695439\";\"Roskoshnaya\";\"other\"\n\"695439\";\"Roskoshno\";\"other\"\n\"695439\";\"Роскошная\";\"other\"\n\"695441\";\"Roskoshnoye\";\"main\"\n\"695441\";\"Imeni Tel'mana\";\"other\"\n\"695441\";\"Imeni Tel’mana\";\"other\"\n\"695441\";\"Kozlyach'ye\";\"other\"\n\"695441\";\"Kozlyach’ye\";\"other\"\n\"695441\";\"Roskoshnoe\";\"other\"\n\"695441\";\"Rozkishne\";\"other\"\n\"695441\";\"Rozkisne\";\"other\"\n\"695441\";\"Tel'mana\";\"other\"\n\"695441\";\"Tel’mana\";\"other\"\n\"695441\";\"Vasil'yevka\";\"other\"\n\"695441\";\"Vasil’yevka\";\"other\"\n\"695441\";\"Розкішне\";\"other\"\n\"695441\";\"Роскошное\";\"other\"\n\"695459\";\"Ropcha\";\"main\"\n\"695459\";\"Ropche\";\"other\"\n\"695459\";\"Ропча\";\"other\"\n\"695463\";\"Romodan\";\"main\"\n\"695463\";\"Ромодан\";\"other\"\n\"695464\";\"Romny\";\"main\"\n\"695464\";\"ROMNY\";\"other\"\n\"695464\";\"Rommy\";\"other\"\n\"695464\";\"Romni\";\"other\"\n\"695464\";\"lomni\";\"other\"\n\"695464\";\"romunu~i\";\"other\"\n\"695464\";\"РОМНЫ\";\"other\"\n\"695464\";\"Ромни\";\"other\"\n\"695464\";\"Ромны\";\"other\"\n\"695464\";\"ロムヌィ\";\"other\"\n\"695464\";\"롬니\";\"other\"\n\"695515\";\"Rokosovo\";\"main\"\n\"695515\";\"Rokosiv\";\"other\"\n\"695515\";\"Rokosov\";\"other\"\n\"695515\";\"Рокосово\";\"other\"\n\"695516\";\"Rokytne\";\"main\"\n\"695516\";\"Rakitno\";\"other\"\n\"695516\";\"Rakitnoye\";\"other\"\n\"695516\";\"Rokitino\";\"other\"\n\"695516\";\"Rokitne\";\"other\"\n\"695516\";\"Rokitno\";\"other\"\n\"695516\";\"Rokitnoye\";\"other\"\n\"695516\";\"Рокитне\";\"other\"\n\"695559\";\"Rogatin\";\"main\"\n\"695559\";\"Rohatyn\";\"other\"\n\"695559\";\"Рогатин\";\"other\"\n\"695574\";\"Rodnykove\";\"main\"\n\"695574\";\"Rodnikove\";\"other\"\n\"695574\";\"Rodnikovo\";\"other\"\n\"695574\";\"Rodnikovoye\";\"other\"\n\"695574\";\"Tobe-Chokrak\";\"other\"\n\"695574\";\"Родникове\";\"other\"\n\"695581\";\"Rodinskoye\";\"main\"\n\"695581\";\"Khutor Liman\";\"other\"\n\"695581\";\"Krasnyy Liman\";\"other\"\n\"695581\";\"Liman\";\"other\"\n\"695581\";\"RODINSKOE\";\"other\"\n\"695581\";\"РОДИНСКОЕ\";\"other\"\n\"695594\";\"Rivne\";\"main\"\n\"695594\";\"Riwne\";\"other\"\n\"695594\";\"Rovno\";\"other\"\n\"695594\";\"Rowne\";\"other\"\n\"695594\";\"Ruvne\";\"other\"\n\"695594\";\"Równe\";\"other\"\n\"695594\";\"rivune\";\"other\"\n\"695594\";\"rwbnw\";\"other\"\n\"695594\";\"Ровно\";\"other\"\n\"695594\";\"Рівне\";\"other\"\n\"695594\";\"רובנו\";\"other\"\n\"695594\";\"リヴネ\";\"other\"\n\"695643\";\"Reshetylivka\";\"main\"\n\"695643\";\"RESHETILOVKA\";\"other\"\n\"695643\";\"Resetilivka\";\"other\"\n\"695643\";\"Reshetilovka\";\"other\"\n\"695643\";\"РЕШЕТИЛОВКА\";\"other\"\n\"695643\";\"Решетилівка\";\"other\"\n\"695653\";\"Ripky\";\"main\"\n\"695653\";\"REPKI\";\"other\"\n\"695653\";\"Reoki\";\"other\"\n\"695653\";\"Repki\";\"other\"\n\"695653\";\"Ripki\";\"other\"\n\"695653\";\"РЕПКИ\";\"other\"\n\"695653\";\"Ріпки\";\"other\"\n\"695670\";\"Reni\";\"main\"\n\"695670\";\"Рені\";\"other\"\n\"695699\";\"Rechka\";\"main\"\n\"695699\";\"Rechki\";\"other\"\n\"695699\";\"Richka\";\"other\"\n\"695699\";\"Речка\";\"other\"\n\"695699\";\"Річка\";\"other\"\n\"695740\";\"Rozdol’ne\";\"main\"\n\"695740\";\"Rozdol'ne\";\"ascii\"\n\"695740\";\"Ak-Sheikh\";\"other\"\n\"695740\";\"Ak-Sheykh\";\"other\"\n\"695740\";\"Razdol'noe\";\"other\"\n\"695740\";\"Razdol'noye\";\"other\"\n\"695740\";\"Razdol’noye\";\"other\"\n\"695740\";\"Раздольное\";\"other\"\n\"695740\";\"Роздольне\";\"other\"\n\"695789\";\"Ratno\";\"main\"\n\"695789\";\"Rafno\";\"other\"\n\"695798\";\"Rassypnoye\";\"main\"\n\"695798\";\"Rassypnoy\";\"other\"\n\"695798\";\"Rozsipne\";\"other\"\n\"695798\";\"Rozsypne\";\"other\"\n\"695798\";\"Розсипне\";\"other\"\n\"695821\";\"Ralevka\";\"main\"\n\"695821\";\"Radlovichi\";\"other\"\n\"695821\";\"Ralivka\";\"other\"\n\"695821\";\"Ралівка\";\"other\"\n\"695826\";\"Rakov Les\";\"main\"\n\"695826\";\"Rakovy Lyas\";\"other\"\n\"695844\";\"Rakoshyno\";\"main\"\n\"695844\";\"Beregrakos\";\"other\"\n\"695844\";\"Beregrákos\";\"other\"\n\"695844\";\"Rakoshin\";\"other\"\n\"695844\";\"Rakoshino\";\"other\"\n\"695844\";\"Rakoshyn\";\"other\"\n\"695844\";\"Ракошин\";\"other\"\n\"695844\";\"Ракошино\";\"other\"\n\"695859\";\"Rakhiv\";\"main\"\n\"695859\";\"Rachov\";\"other\"\n\"695859\";\"Rahiv\";\"other\"\n\"695859\";\"Rakhov\";\"other\"\n\"695859\";\"Rakhovo\";\"other\"\n\"695859\";\"Рахів\";\"other\"\n\"695912\";\"Radomyshl’\";\"main\"\n\"695912\";\"Radomyshl'\";\"ascii\"\n\"695912\";\"Radomishl\";\"other\"\n\"695912\";\"Радомышль\";\"other\"\n\"695937\";\"Radcha\";\"main\"\n\"695937\";\"Radcza\";\"other\"\n\"695937\";\"Радча\";\"other\"\n\"695965\";\"Piatykhatky\";\"main\"\n\"695965\";\"P'yatykhatky\";\"other\"\n\"695965\";\"Pitikhatki\";\"other\"\n\"695965\";\"Pjatichatka\";\"other\"\n\"695965\";\"Pjatichatki\";\"other\"\n\"695965\";\"Pjatikhatki\";\"other\"\n\"695965\";\"Pyatikhatka\";\"other\"\n\"695965\";\"Pyatikhatki\";\"other\"\n\"695965\";\"Пятихатки\";\"other\"\n\"696008\";\"Putyvl’\";\"main\"\n\"696008\";\"Putyvl'\";\"ascii\"\n\"696008\";\"Putivl'\";\"other\"\n\"696008\";\"Putivl’\";\"other\"\n\"696008\";\"Путивль\";\"other\"\n\"696032\";\"Pustomyty\";\"main\"\n\"696032\";\"Pustomiti\";\"other\"\n\"696032\";\"Пустомити\";\"other\"\n\"696108\";\"Pryluky\";\"main\"\n\"696108\";\"PRILUKI\";\"other\"\n\"696108\";\"Priluki\";\"other\"\n\"696108\";\"Pryluki\";\"other\"\n\"696108\";\"Pryłuki\";\"other\"\n\"696108\";\"ПРИЛУКИ\";\"other\"\n\"696108\";\"Прилуки\";\"other\"\n\"696127\";\"Prudyanka\";\"main\"\n\"696127\";\"PRUDJANKA\";\"other\"\n\"696127\";\"ПРУДЯНКА\";\"other\"\n\"696204\";\"Pryyutivka\";\"main\"\n\"696204\";\"Priutivka\";\"other\"\n\"696204\";\"Priyutovka\";\"other\"\n\"696204\";\"Приютівка\";\"other\"\n\"696218\";\"Pryvillya\";\"main\"\n\"696218\";\"PRIVOL'E\";\"other\"\n\"696218\";\"Privilla\";\"other\"\n\"696218\";\"Privol'noye\";\"other\"\n\"696218\";\"Privol'ye\";\"other\"\n\"696218\";\"Privol’noye\";\"other\"\n\"696218\";\"Privol’ye\";\"other\"\n\"696218\";\"ПРИВОЛЬЕ\";\"other\"\n\"696218\";\"Привілля\";\"other\"\n\"696262\";\"Pryshyb\";\"main\"\n\"696262\";\"Prishib\";\"other\"\n\"696262\";\"Пришиб\";\"other\"\n\"696275\";\"Pryozerne\";\"main\"\n\"696275\";\"Churabash\";\"other\"\n\"696275\";\"Churbash\";\"other\"\n\"696275\";\"Churubash\";\"other\"\n\"696275\";\"Churubash Tatarskiy\";\"other\"\n\"696275\";\"Priozerne\";\"other\"\n\"696275\";\"Priozernoe\";\"other\"\n\"696275\";\"Priozernoye\";\"other\"\n\"696275\";\"Vasil'yevka\";\"other\"\n\"696275\";\"Vasil’yevka\";\"other\"\n\"696275\";\"Приозерне\";\"other\"\n\"696275\";\"Приозерное\";\"other\"\n\"696280\";\"Primorskoye\";\"main\"\n\"696280\";\"PRIMORSKOE\";\"other\"\n\"696280\";\"Sartana\";\"other\"\n\"696280\";\"ПРИМОРСКОЕ\";\"other\"\n\"696280\";\"Сартана\";\"other\"\n\"696292\";\"Prymors’k\";\"main\"\n\"696292\";\"Prymors'k\";\"ascii\"\n\"696292\";\"Nogaisk\";\"other\"\n\"696292\";\"Nogaysk\";\"other\"\n\"696292\";\"Primorsk\";\"other\"\n\"696292\";\"Primorskoye\";\"other\"\n\"696292\";\"Приморск\";\"other\"\n\"696302\";\"Prykolotne\";\"main\"\n\"696302\";\"PRIKOLOTNOE\";\"other\"\n\"696302\";\"Prikolotne\";\"other\"\n\"696302\";\"Prikolotnoye\";\"other\"\n\"696302\";\"ПРИКОЛОТНОЕ\";\"other\"\n\"696302\";\"Приколотне\";\"other\"\n\"696348\";\"Preobrazhenka\";\"main\"\n\"696478\";\"Poroshkovo\";\"main\"\n\"696478\";\"Poroshkov\";\"other\"\n\"696478\";\"Poroshkove\";\"other\"\n\"696478\";\"Poroshkovoye\";\"other\"\n\"696478\";\"Porosko\";\"other\"\n\"696478\";\"Poroskov\";\"other\"\n\"696478\";\"Poroskő\";\"other\"\n\"696478\";\"Poroškov\";\"other\"\n\"696478\";\"Порошкове\";\"other\"\n\"696478\";\"Порошково\";\"other\"\n\"696483\";\"Porohy\";\"main\"\n\"696483\";\"Porogi\";\"other\"\n\"696483\";\"Porokhi\";\"other\"\n\"696483\";\"Porokhy\";\"other\"\n\"696483\";\"Пороги\";\"other\"\n\"696557\";\"Popil'nya\";\"main\"\n\"696557\";\"Poelnja\";\"other\"\n\"696557\";\"Popel'naya\";\"other\"\n\"696557\";\"Popel'nja\";\"other\"\n\"696557\";\"Popel'nya\";\"other\"\n\"696557\";\"Попельня\";\"other\"\n\"696566\";\"Popasnaya\";\"main\"\n\"696566\";\"Imeni Kaganovicha\";\"other\"\n\"696566\";\"Imeni L.M. Kaganovicha\";\"other\"\n\"696566\";\"Kaganovich\";\"other\"\n\"696566\";\"Kaganowitsch\";\"other\"\n\"696566\";\"Popasnaja\";\"other\"\n\"696566\";\"Попасная\";\"other\"\n\"696576\";\"Poninka\";\"main\"\n\"696576\";\"Paninka\";\"other\"\n\"696576\";\"Понінка\";\"other\"\n\"696581\";\"Pomichna\";\"main\"\n\"696581\";\"POMOSHNAJA\";\"other\"\n\"696581\";\"Pomicna\";\"other\"\n\"696581\";\"Pomoshnaya\";\"other\"\n\"696581\";\"ПОМОШНАЯ\";\"other\"\n\"696581\";\"Помічна\";\"other\"\n\"696582\";\"Pomoryany\";\"main\"\n\"696582\";\"Pomorjani\";\"other\"\n\"696582\";\"Pomorzany\";\"other\"\n\"696582\";\"Pomorzhany\";\"other\"\n\"696582\";\"Поморяни\";\"other\"\n\"696602\";\"Polyanka\";\"main\"\n\"696602\";\"Poljanka\";\"other\"\n\"696602\";\"Polyanki\";\"other\"\n\"696602\";\"Полянка\";\"other\"\n\"696643\";\"Poltava\";\"main\"\n\"696643\";\"POLTAVA\";\"other\"\n\"696643\";\"Poltawa\";\"other\"\n\"696643\";\"Połtawa\";\"other\"\n\"696643\";\"Pultava\";\"other\"\n\"696643\";\"bo er ta wa\";\"other\"\n\"696643\";\"poltaba\";\"other\"\n\"696643\";\"porutavu~a\";\"other\"\n\"696643\";\"pwltbh\";\"other\"\n\"696643\";\"ПОЛТАВА\";\"other\"\n\"696643\";\"Полтава\";\"other\"\n\"696643\";\"פולטבה\";\"other\"\n\"696643\";\"ポルタヴァ\";\"other\"\n\"696643\";\"波尔塔瓦\";\"other\"\n\"696643\";\"폴타바\";\"other\"\n\"696660\";\"Polonne\";\"main\"\n\"696660\";\"Pollonoye\";\"other\"\n\"696660\";\"Polonnoje\";\"other\"\n\"696660\";\"Polonnoye\";\"other\"\n\"696660\";\"Полонне\";\"other\"\n\"696677\";\"Polohy\";\"main\"\n\"696677\";\"Chubarovka\";\"other\"\n\"696677\";\"POLOGI\";\"other\"\n\"696677\";\"Pologi\";\"other\"\n\"696677\";\"ПОЛОГИ\";\"other\"\n\"696743\";\"Pokotylivka\";\"main\"\n\"696743\";\"Pokatilovka\";\"other\"\n\"696743\";\"Pokotilivka\";\"other\"\n\"696743\";\"Pokotilovka\";\"other\"\n\"696743\";\"Покотилівка\";\"other\"\n\"696771\";\"Pohrebyshche\";\"main\"\n\"696771\";\"Pogrebischtsche\";\"other\"\n\"696771\";\"Pogrebishche\";\"other\"\n\"696771\";\"Pogrebishchenskiy\";\"other\"\n\"696771\";\"Pogrebishhe\";\"other\"\n\"696771\";\"Погребище\";\"other\"\n\"696824\";\"Podvinogradov\";\"main\"\n\"696824\";\"Pidvinogradiv\";\"other\"\n\"696824\";\"Pidvynohradiv\";\"other\"\n\"696824\";\"Підвиноградів\";\"other\"\n\"696938\";\"Podgortsy\";\"main\"\n\"696938\";\"Pidhorodtsi\";\"other\"\n\"696938\";\"Podgorcy\";\"other\"\n\"696938\";\"Podgortse\";\"other\"\n\"696938\";\"Podhorce\";\"other\"\n\"696938\";\"Подгорцы\";\"other\"\n\"696943\";\"Pidhorodne\";\"main\"\n\"696943\";\"PODGORODNOE\";\"other\"\n\"696943\";\"Pidgorodne\";\"other\"\n\"696943\";\"Podgorodnoye\";\"other\"\n\"696943\";\"ПОДГОРОДНОЕ\";\"other\"\n\"696943\";\"Підгородне\";\"other\"\n\"696948\";\"Pidhorodna\";\"main\"\n\"696948\";\"PODGORODNAJA\";\"other\"\n\"696948\";\"Pidgorodna\";\"other\"\n\"696948\";\"Podgorodnaya\";\"other\"\n\"696948\";\"ПОДГОРОДНАЯ\";\"other\"\n\"696948\";\"Підгородна\";\"other\"\n\"696966\";\"Pidhaytsi\";\"main\"\n\"696966\";\"Pdace\";\"other\"\n\"696966\";\"Pidgajci\";\"other\"\n\"696966\";\"Pidhajci\";\"other\"\n\"696966\";\"Podgaytse\";\"other\"\n\"696966\";\"Podgaytsy\";\"other\"\n\"696966\";\"Podhace\";\"other\"\n\"696966\";\"Podhaicy\";\"other\"\n\"696966\";\"Podhajce\";\"other\"\n\"696966\";\"Podhajci\";\"other\"\n\"696966\";\"Підгайці\";\"other\"\n\"696989\";\"Podbuzh\";\"main\"\n\"696989\";\"Podbuz\";\"other\"\n\"696989\";\"Podbuż\";\"other\"\n\"697006\";\"Pochayiv\";\"main\"\n\"697006\";\"Pochaev\";\"other\"\n\"697006\";\"Pochaiv\";\"other\"\n\"697006\";\"Pochayev\";\"other\"\n\"697006\";\"Pochayuv Stary\";\"other\"\n\"697006\";\"Почаев\";\"other\"\n\"697018\";\"Pobugskoye\";\"main\"\n\"697018\";\"POBUGSKOE\";\"other\"\n\"697018\";\"ПОБУГСКОЕ\";\"other\"\n\"697038\";\"Pniv\";\"main\"\n\"697038\";\"Pnev\";\"other\"\n\"697038\";\"Pniow\";\"other\"\n\"697038\";\"Pniów\";\"other\"\n\"697038\";\"Pnyuv\";\"other\"\n\"697038\";\"Пнів\";\"other\"\n\"697124\";\"Koktebel’\";\"main\"\n\"697124\";\"Koktebel'\";\"ascii\"\n\"697124\";\"Planers'ke\";\"other\"\n\"697124\";\"Planerskoye\";\"other\"\n\"697124\";\"Planers’ke\";\"other\"\n\"697124\";\"Коктебель\";\"other\"\n\"697126\";\"Plakhtiyivka\";\"main\"\n\"697126\";\"Kletereshti\";\"other\"\n\"697126\";\"Plahteevca\";\"other\"\n\"697126\";\"Plahtiivka\";\"other\"\n\"697126\";\"Plakhteyevka\";\"other\"\n\"697126\";\"Plakhtiyevka\";\"other\"\n\"697126\";\"Плахтіївка\";\"other\"\n\"697135\";\"Pivdenne\";\"main\"\n\"697135\";\"PIVDENNOE\";\"other\"\n\"697135\";\"Pivdennoye\";\"other\"\n\"697135\";\"Pivdennyy\";\"other\"\n\"697135\";\"Yuzhniy\";\"other\"\n\"697135\";\"Yuzhnyy\";\"other\"\n\"697135\";\"ПИВДЕННОЕ\";\"other\"\n\"697135\";\"Південне\";\"other\"\n\"697183\";\"Pyryatyn\";\"main\"\n\"697183\";\"PIRJATIN\";\"other\"\n\"697183\";\"Piryatin\";\"other\"\n\"697183\";\"Pyryatin\";\"other\"\n\"697183\";\"ПИРЯТИН\";\"other\"\n\"697325\";\"Petrove\";\"main\"\n\"697325\";\"PETROVO\";\"other\"\n\"697325\";\"Petrova\";\"other\"\n\"697325\";\"Petrovo\";\"other\"\n\"697325\";\"ПЕТРОВО\";\"other\"\n\"697325\";\"Петрове\";\"other\"\n\"697423\";\"Petropavlivka\";\"main\"\n\"697423\";\"PETROPAVLOVKA\";\"other\"\n\"697423\";\"Petropavlovka\";\"other\"\n\"697423\";\"ПЕТРОПАВЛОВКА\";\"other\"\n\"697423\";\"Петропавлівка\";\"other\"\n\"697450\";\"Petrivka\";\"main\"\n\"697450\";\"Kurisovo\";\"other\"\n\"697450\";\"Petrovka\";\"other\"\n\"697450\";\"Petrovskoye\";\"other\"\n\"697450\";\"Петрівка\";\"other\"\n\"697455\";\"Petrykivka\";\"main\"\n\"697455\";\"PETRIKOVKA\";\"other\"\n\"697455\";\"Petrikivka\";\"other\"\n\"697455\";\"Petrikovka\";\"other\"\n\"697455\";\"ПЕТРИКОВКА\";\"other\"\n\"697455\";\"Петриківка\";\"other\"\n\"697457\";\"Petrikov\";\"main\"\n\"697457\";\"Petrikiv\";\"other\"\n\"697457\";\"Petrykiv\";\"other\"\n\"697457\";\"Петриків\";\"other\"\n\"697473\";\"Petranka\";\"main\"\n\"697473\";\"Петранка\";\"other\"\n\"697489\";\"Piskivka\";\"main\"\n\"697489\";\"Peskovka\";\"other\"\n\"697489\";\"Peskovskiv Zavod\";\"other\"\n\"697489\";\"Пісківка\";\"other\"\n\"697543\";\"Peschana\";\"main\"\n\"697568\";\"Pervomays’ke\";\"main\"\n\"697568\";\"Pervomays'ke\";\"ascii\"\n\"697568\";\"Chervonoe\";\"other\"\n\"697568\";\"Dzhurchi\";\"other\"\n\"697568\";\"Pervomayskoye\";\"other\"\n\"697568\";\"Первомайське\";\"other\"\n\"697568\";\"Червоное\";\"other\"\n\"697592\";\"Pervomaysk\";\"main\"\n\"697592\";\"Pervomaika\";\"other\"\n\"697592\";\"Pervomaisk\";\"other\"\n\"697592\";\"Pervomajs'k\";\"other\"\n\"697592\";\"Pervomajsk\";\"other\"\n\"697592\";\"Первомайск\";\"other\"\n\"697592\";\"Первомайськ\";\"other\"\n\"697593\";\"Pervomays’k\";\"main\"\n\"697593\";\"Pervomays'k\";\"ascii\"\n\"697593\";\"Ol'viopol'\";\"other\"\n\"697593\";\"Olwiopol\";\"other\"\n\"697593\";\"Ol’viopol’\";\"other\"\n\"697593\";\"Pervomaisk\";\"other\"\n\"697593\";\"Pervomajsk\";\"other\"\n\"697593\";\"Perwomaisk\";\"other\"\n\"697593\";\"Первомайск\";\"other\"\n\"697608\";\"Pershotravneve\";\"main\"\n\"697608\";\"Pershotravnevoye\";\"other\"\n\"697613\";\"Manhush\";\"main\"\n\"697613\";\"Mangush\";\"other\"\n\"697613\";\"PERSHOTRAVNEVOE\";\"other\"\n\"697613\";\"Pershotravneve\";\"other\"\n\"697613\";\"Pershotravnevoye\";\"other\"\n\"697613\";\"Pershotravnevyy\";\"other\"\n\"697613\";\"Pervomayskoye\";\"other\"\n\"697613\";\"Мангуш\";\"other\"\n\"697613\";\"ПЕРШОТРАВНЕВОЕ\";\"other\"\n\"697613\";\"Першотравневе\";\"other\"\n\"697637\";\"Pereyaslav-Khmel’nyts’kyy\";\"main\"\n\"697637\";\"Pereyaslav-Khmel'nyts'kyy\";\"ascii\"\n\"697637\";\"Perejaslav-Khmel'nickij\";\"other\"\n\"697637\";\"Perejaslawl\";\"other\"\n\"697637\";\"Pereyaslav\";\"other\"\n\"697637\";\"Pereyaslav-Khmel'nitskiy\";\"other\"\n\"697637\";\"Pereyaslav-Khmel’nitskiy\";\"other\"\n\"697637\";\"Переяслав-Хмельницкий\";\"other\"\n\"697650\";\"Pereval’sk\";\"main\"\n\"697650\";\"Pereval'sk\";\"ascii\"\n\"697650\";\"PEREVAL'SK\";\"other\"\n\"697650\";\"ПЕРЕВАЛЬСК\";\"other\"\n\"697653\";\"Pereval'noe\";\"main\"\n\"697653\";\"Перевальное\";\"other\"\n\"697676\";\"Peresichna\";\"main\"\n\"697676\";\"PERESECHNAJA\";\"other\"\n\"697676\";\"Peresechnaya\";\"other\"\n\"697676\";\"Peresechnoye\";\"other\"\n\"697676\";\"Peresicna\";\"other\"\n\"697676\";\"ПЕРЕСЕЧНАЯ\";\"other\"\n\"697676\";\"Пересічна\";\"other\"\n\"697692\";\"Peremyshlyany\";\"main\"\n\"697692\";\"Peremishljani\";\"other\"\n\"697692\";\"Przemysiany\";\"other\"\n\"697692\";\"Przemyslany\";\"other\"\n\"697692\";\"Przemysliane\";\"other\"\n\"697692\";\"Przemyśiany\";\"other\"\n\"697692\";\"Przemyślany\";\"other\"\n\"697692\";\"Pzhemyslyany\";\"other\"\n\"697692\";\"Перемишляни\";\"other\"\n\"697739\";\"Perehonivka\";\"main\"\n\"697739\";\"Peregonivka\";\"other\"\n\"697739\";\"Peregonovka\";\"other\"\n\"697739\";\"Перегоновка\";\"other\"\n\"697739\";\"Перегонівка\";\"other\"\n\"697750\";\"Perechyn\";\"main\"\n\"697750\";\"Perechin\";\"other\"\n\"697750\";\"Perecin\";\"other\"\n\"697750\";\"Perecseny\";\"other\"\n\"697750\";\"Perečín\";\"other\"\n\"697750\";\"Перечин\";\"other\"\n\"697802\";\"Pechenizhyn\";\"main\"\n\"697802\";\"Pecenizin\";\"other\"\n\"697802\";\"Pechenezhin\";\"other\"\n\"697802\";\"Pechenizhin\";\"other\"\n\"697802\";\"Peczenizyn\";\"other\"\n\"697802\";\"Печеніжин\";\"other\"\n\"697817\";\"Pavlysh\";\"main\"\n\"697817\";\"PAVLYSH\";\"other\"\n\"697817\";\"Pavlichi\";\"other\"\n\"697817\";\"Pavlish\";\"other\"\n\"697817\";\"ПАВЛЫШ\";\"other\"\n\"697817\";\"Павлиш\";\"other\"\n\"697839\";\"Pavlivka\";\"main\"\n\"697839\";\"Pavlovka\";\"other\"\n\"697839\";\"Павловка\";\"other\"\n\"697841\";\"Pavlovka\";\"main\"\n\"697841\";\"Pavlivka\";\"other\"\n\"697841\";\"Павловка\";\"other\"\n\"697889\";\"Pavlohrad\";\"main\"\n\"697889\";\"PAVLOGRAD\";\"other\"\n\"697889\";\"Pavlogi\";\"other\"\n\"697889\";\"Pavlograd\";\"other\"\n\"697889\";\"Pawlograd\";\"other\"\n\"697889\";\"ПАВЛОГРАД\";\"other\"\n\"697889\";\"Павлоград\";\"other\"\n\"697945\";\"Pasichna\";\"main\"\n\"697945\";\"Pasechna\";\"other\"\n\"697945\";\"Pasechnaya\";\"other\"\n\"697945\";\"Pasicna\";\"other\"\n\"697945\";\"Pasieczna\";\"other\"\n\"697945\";\"Пасічна\";\"other\"\n\"697953\";\"Parutyne\";\"main\"\n\"697953\";\"Il'inskoye\";\"other\"\n\"697953\";\"Parutina\";\"other\"\n\"697953\";\"Parutino\";\"other\"\n\"697953\";\"Парутино\";\"other\"\n\"697957\";\"Partyzany\";\"main\"\n\"697957\";\"Budennovka\";\"other\"\n\"697957\";\"Budenovka\";\"other\"\n\"697957\";\"Budënnovka\";\"other\"\n\"697957\";\"Partizani\";\"other\"\n\"697957\";\"Partizany\";\"other\"\n\"697957\";\"Партизани\";\"other\"\n\"698003\";\"Panyutyne\";\"main\"\n\"698003\";\"PANJUTINO\";\"other\"\n\"698003\";\"Panjutine\";\"other\"\n\"698003\";\"Panyutina\";\"other\"\n\"698003\";\"Panyutino\";\"other\"\n\"698003\";\"ПАНЮТИНО\";\"other\"\n\"698003\";\"Панютине\";\"other\"\n\"698008\";\"Pantayivka\";\"main\"\n\"698008\";\"PANTAEVKA\";\"other\"\n\"698008\";\"Pantaivka\";\"other\"\n\"698008\";\"Pantayevka\";\"other\"\n\"698008\";\"ПАНТАЕВКА\";\"other\"\n\"698008\";\"Пантаївка\";\"other\"\n\"698102\";\"Ozerne\";\"main\"\n\"698102\";\"Ozernoye\";\"other\"\n\"698102\";\"Ozërnoye\";\"other\"\n\"698102\";\"Озерне\";\"other\"\n\"698107\";\"Ozerne\";\"main\"\n\"698107\";\"Babel'\";\"other\"\n\"698107\";\"Babele\";\"other\"\n\"698107\";\"Babel’\";\"other\"\n\"698107\";\"General Al Averescu\";\"other\"\n\"698107\";\"General-Averesku\";\"other\"\n\"698107\";\"Ozernoye\";\"other\"\n\"698107\";\"Ozërnoye\";\"other\"\n\"698107\";\"Озерне\";\"other\"\n\"698110\";\"Ozerna\";\"main\"\n\"698110\";\"Jezierna\";\"other\"\n\"698110\";\"Ozernaja\";\"other\"\n\"698110\";\"Ozernaya\";\"other\"\n\"698110\";\"Ozernyani\";\"other\"\n\"698110\";\"Ozernyany\";\"other\"\n\"698110\";\"Ozërnaya\";\"other\"\n\"698110\";\"Yezerna\";\"other\"\n\"698110\";\"Озерна\";\"other\"\n\"698110\";\"Озерная\";\"other\"\n\"698131\";\"Ovruch\";\"main\"\n\"698131\";\"Owrutsch\";\"other\"\n\"698131\";\"Овруч\";\"other\"\n\"698138\";\"Ovidiopol’\";\"main\"\n\"698138\";\"Ovidiopol'\";\"ascii\"\n\"698138\";\"Owidiopol\";\"other\"\n\"698142\";\"Otyniya\";\"main\"\n\"698142\";\"Otinia\";\"other\"\n\"698142\";\"Ottunia\";\"other\"\n\"698142\";\"Ottynia\";\"other\"\n\"698142\";\"Ottynya\";\"other\"\n\"698142\";\"Otynya\";\"other\"\n\"698142\";\"Отинія\";\"other\"\n\"698232\";\"Ostroh\";\"main\"\n\"698232\";\"Ostrog\";\"other\"\n\"698232\";\"Ostrug\";\"other\"\n\"698232\";\"Острог\";\"other\"\n\"698247\";\"Ostër\";\"main\"\n\"698247\";\"Oster\";\"ascii\"\n\"698247\";\"OSTER\";\"other\"\n\"698247\";\"Ostjor\";\"other\"\n\"698247\";\"ОСТЕР\";\"other\"\n\"698316\";\"Osypenko\";\"main\"\n\"698316\";\"Novospasovka\";\"other\"\n\"698316\";\"Novospasovskaya\";\"other\"\n\"698316\";\"Novospasskoye\";\"other\"\n\"698316\";\"Osipenko\";\"other\"\n\"698316\";\"Осипенко\";\"other\"\n\"698346\";\"Orzhytsya\";\"main\"\n\"698346\";\"ORZHICA\";\"other\"\n\"698346\";\"Orzhicja\";\"other\"\n\"698346\";\"Orzhitsa\";\"other\"\n\"698346\";\"ОРЖИЦА\";\"other\"\n\"698346\";\"Оржиця\";\"other\"\n\"698428\";\"Orikhiv\";\"main\"\n\"698428\";\"Orechoff\";\"other\"\n\"698428\";\"Orechowka\";\"other\"\n\"698428\";\"Orekhov\";\"other\"\n\"698428\";\"Orihiv\";\"other\"\n\"698428\";\"Оріхів\";\"other\"\n\"698438\";\"Ordzhonikidze\";\"main\"\n\"698438\";\"Ordzonikidze\";\"other\"\n\"698438\";\"Орджоникидзе\";\"other\"\n\"698438\";\"Орджонікідзе\";\"other\"\n\"698450\";\"Orativ\";\"main\"\n\"698450\";\"Oratov\";\"other\"\n\"698450\";\"Oratovo\";\"other\"\n\"698450\";\"Оратів\";\"other\"\n\"698479\";\"Onufriyivka\";\"main\"\n\"698479\";\"ONUFRIEVKA\";\"other\"\n\"698479\";\"Onufriivka\";\"other\"\n\"698479\";\"Onufriyevka\";\"other\"\n\"698479\";\"ОНУФРИЕВКА\";\"other\"\n\"698479\";\"Онуфріївка\";\"other\"\n\"698502\";\"Olyka\";\"main\"\n\"698502\";\"Olika\";\"other\"\n\"698502\";\"Олика\";\"other\"\n\"698510\";\"Ol'shanskoye\";\"main\"\n\"698510\";\"Ol'shans'ke\";\"other\"\n\"698510\";\"Olshanske\";\"other\"\n\"698510\";\"Olshanskiy\";\"other\"\n\"698510\";\"Ольшанське\";\"other\"\n\"698570\";\"Olishëvka\";\"main\"\n\"698570\";\"Olishevka\";\"ascii\"\n\"698570\";\"OLISHEVKA\";\"other\"\n\"698570\";\"Olischewka\";\"other\"\n\"698570\";\"ОЛИШЕВКА\";\"other\"\n\"698598\";\"Olesko\";\"main\"\n\"698598\";\"Oles'ko\";\"other\"\n\"698598\";\"Олесько\";\"other\"\n\"698625\";\"Oleksandriya\";\"main\"\n\"698625\";\"ALEKSANDRIJA\";\"other\"\n\"698625\";\"Aleksandria\";\"other\"\n\"698625\";\"Aleksandriya\";\"other\"\n\"698625\";\"Alexandrija Pervaya\";\"other\"\n\"698625\";\"Oleksandrija\";\"other\"\n\"698625\";\"АЛЕКСАНДРИЯ\";\"other\"\n\"698625\";\"Олександрия\";\"other\"\n\"698627\";\"Oleksandrivka\";\"main\"\n\"698627\";\"ALEKSANDROVKA\";\"other\"\n\"698627\";\"Aleksandrovka\";\"other\"\n\"698627\";\"АЛЕКСАНДРОВКА\";\"other\"\n\"698627\";\"Олександрівка\";\"other\"\n\"698740\";\"Odesa\";\"main\"\n\"698740\";\"Adehsa\";\"other\"\n\"698740\";\"Odeso\";\"other\"\n\"698740\";\"Odessa\";\"other\"\n\"698740\";\"Odessos\";\"other\"\n\"698740\";\"Odessus\";\"other\"\n\"698740\";\"Oděsa\";\"other\"\n\"698740\";\"ao de sa\";\"other\"\n\"698740\";\"odesa\";\"other\"\n\"698740\";\"odessa\";\"other\"\n\"698740\";\"Οδησσός\";\"other\"\n\"698740\";\"Адэса\";\"other\"\n\"698740\";\"Одеса\";\"other\"\n\"698740\";\"Одесса\";\"other\"\n\"698740\";\"Օդեսա\";\"other\"\n\"698740\";\"אודסה\";\"other\"\n\"698740\";\"ოდესა\";\"other\"\n\"698740\";\"オデッサ\";\"other\"\n\"698740\";\"敖德薩\";\"other\"\n\"698740\";\"오데사\";\"other\"\n\"698770\";\"Ochakiv\";\"main\"\n\"698770\";\"Ocakiv\";\"other\"\n\"698770\";\"Ochakov\";\"other\"\n\"698770\";\"Otschakow\";\"other\"\n\"698770\";\"Очаків\";\"other\"\n\"698782\";\"Obukhiv\";\"main\"\n\"698782\";\"OBUKHOV\";\"other\"\n\"698782\";\"Obuhiv\";\"other\"\n\"698782\";\"Obukhov\";\"other\"\n\"698782\";\"ОБУХОВ\";\"other\"\n\"698782\";\"Обухів\";\"other\"\n\"698790\";\"Obroshyne\";\"main\"\n\"698790\";\"Obroshin\";\"other\"\n\"698790\";\"Obroshine\";\"other\"\n\"698790\";\"Obroshino\";\"other\"\n\"698790\";\"Оброшин\";\"other\"\n\"698790\";\"Оброшине\";\"other\"\n\"698807\";\"Obodivka\";\"main\"\n\"698807\";\"Obodovka\";\"other\"\n\"698807\";\"Obodovka Novaya\";\"other\"\n\"698807\";\"Ободівка\";\"other\"\n\"698825\";\"Obertyn\";\"main\"\n\"698825\";\"Obertin\";\"other\"\n\"698825\";\"Обертин\";\"other\"\n\"698840\";\"Nuyno\";\"main\"\n\"698840\";\"Nujno\";\"other\"\n\"698840\";\"Нуйно\";\"other\"\n\"698852\";\"Novyy Yarychiv\";\"main\"\n\"698852\";\"Jarychow\";\"other\"\n\"698852\";\"Jaryczow\";\"other\"\n\"698852\";\"Jaryczow Nowy\";\"other\"\n\"698852\";\"Jaryczów\";\"other\"\n\"698852\";\"Jaryczów Nowy\";\"other\"\n\"698852\";\"Novij Ariciv\";\"other\"\n\"698852\";\"Novyy Yarychev\";\"other\"\n\"698852\";\"Yarychev Novy\";\"other\"\n\"698852\";\"Yarychev Novyy\";\"other\"\n\"698852\";\"Yarychuv\";\"other\"\n\"698852\";\"Новий Яричів\";\"other\"\n\"698861\";\"Novyy Svit\";\"main\"\n\"698861\";\"NOV.SVET\";\"other\"\n\"698861\";\"Novij Svit\";\"other\"\n\"698861\";\"Novy Svet\";\"other\"\n\"698861\";\"Novyy Svet\";\"other\"\n\"698861\";\"НОВ.СВЕТ\";\"other\"\n\"698861\";\"Новий Світ\";\"other\"\n\"698865\";\"Novyy Svit\";\"main\"\n\"698865\";\"Novyy Svet\";\"other\"\n\"698865\";\"Svet\";\"other\"\n\"698866\";\"Novyy Svit\";\"main\"\n\"698866\";\"Novyj Svet\";\"other\"\n\"698866\";\"Novyy Svet\";\"other\"\n\"698866\";\"Новый Свет\";\"other\"\n\"698869\";\"Novyy Starodub\";\"main\"\n\"698869\";\"Nov.Starodub\";\"other\"\n\"698869\";\"Novij Starodub\";\"other\"\n\"698869\";\"Novo-Starodub\";\"other\"\n\"698869\";\"Novy Starodub\";\"other\"\n\"698869\";\"Нов.Стародуб\";\"other\"\n\"698869\";\"Новий Стародуб\";\"other\"\n\"698921\";\"Novi Troyany\";\"main\"\n\"698921\";\"Novi Troani\";\"other\"\n\"698921\";\"Novo Traian\";\"other\"\n\"698921\";\"Novo Trajan\";\"other\"\n\"698921\";\"Novotroyan\";\"other\"\n\"698921\";\"Novyye Troyany\";\"other\"\n\"698921\";\"Traian\";\"other\"\n\"698921\";\"Traianul-Nou\";\"other\"\n\"698921\";\"Trayan\";\"other\"\n\"698921\";\"Trayanu\";\"other\"\n\"698921\";\"Нові Трояни\";\"other\"\n\"698927\";\"Novi Sanzhary\";\"main\"\n\"698927\";\"NOV.SANZHARY\";\"other\"\n\"698927\";\"Novi Sanzari\";\"other\"\n\"698927\";\"Novi Senzhari\";\"other\"\n\"698927\";\"Novo-Senzhary\";\"other\"\n\"698927\";\"Novyye Sanzhary\";\"other\"\n\"698927\";\"Novyye Senzhary\";\"other\"\n\"698927\";\"НОВ.САНЖАРЫ\";\"other\"\n\"698927\";\"Нові Санжари\";\"other\"\n\"698943\";\"Novi Bilokorovychi\";\"main\"\n\"698943\";\"Novi Bilokorovici\";\"other\"\n\"698943\";\"Novyye Belokorovichi\";\"other\"\n\"698943\";\"Novyye Belorovichi\";\"other\"\n\"698943\";\"Нові Білокоровичі\";\"other\"\n\"698953\";\"Novyy Buh\";\"main\"\n\"698953\";\"Novi Bug\";\"other\"\n\"698953\";\"Novij Bug\";\"other\"\n\"698953\";\"Novo Bug\";\"other\"\n\"698953\";\"Novy Bug\";\"other\"\n\"698953\";\"Novyy Bug\";\"other\"\n\"698953\";\"Nowyi Bug\";\"other\"\n\"698953\";\"Новий Буг\";\"other\"\n\"699015\";\"Nove Davydkovo\";\"main\"\n\"699015\";\"Nove Davidkovo\";\"other\"\n\"699015\";\"Nove Davydkove\";\"other\"\n\"699015\";\"Novoye Davidkovo\";\"other\"\n\"699015\";\"Novoye Davydkovo\";\"other\"\n\"699015\";\"Нове Давидково\";\"other\"\n\"699034\";\"Novovorontsovka\";\"main\"\n\"699034\";\"Novaya Vorontsovka\";\"other\"\n\"699034\";\"Novovoroncovka\";\"other\"\n\"699034\";\"Нововоронцовка\";\"other\"\n\"699035\";\"Novovolyns’k\";\"main\"\n\"699035\";\"Novovolyns'k\";\"ascii\"\n\"699035\";\"Novovolynsk\";\"other\"\n\"699035\";\"Novovolynskiy\";\"other\"\n\"699035\";\"Нововолынск\";\"other\"\n\"699061\";\"Novovasylivka\";\"main\"\n\"699061\";\"Novovasil'yevka\";\"other\"\n\"699061\";\"Novovasilevka\";\"other\"\n\"699061\";\"Novovasilivka\";\"other\"\n\"699061\";\"Нововасилевка\";\"other\"\n\"699061\";\"Нововасилівка\";\"other\"\n\"699078\";\"Novoukrayinka\";\"main\"\n\"699078\";\"NOVOUKRAINKA\";\"other\"\n\"699078\";\"Novo-Urainka\";\"other\"\n\"699078\";\"Novoukrainka\";\"other\"\n\"699078\";\"Novoukrainsk\";\"other\"\n\"699078\";\"НОВОУКРАИНКА\";\"other\"\n\"699078\";\"Новоукраїнка\";\"other\"\n\"699100\";\"Novotroyits’ke\";\"main\"\n\"699100\";\"Novotroyits'ke\";\"ascii\"\n\"699100\";\"Novotroitskoye\";\"other\"\n\"699272\";\"Novoselitsa\";\"main\"\n\"699272\";\"Bol'shaya Novoselitsa\";\"other\"\n\"699272\";\"Bol'shiye Novoselitsy\";\"other\"\n\"699272\";\"Bol’shaya Novoselitsa\";\"other\"\n\"699272\";\"Bol’shiye Novoselitsy\";\"other\"\n\"699272\";\"Novoselica\";\"other\"\n\"699272\";\"Novoselytsya\";\"other\"\n\"699272\";\"Velikaya Novoselitsa\";\"other\"\n\"699272\";\"Новоселица\";\"other\"\n\"699285\";\"Novoselytsya\";\"main\"\n\"699285\";\"Noua Sulitsa\";\"other\"\n\"699285\";\"Novoselicja\";\"other\"\n\"699285\";\"Novoselitsa\";\"other\"\n\"699285\";\"Sulita\";\"other\"\n\"699285\";\"Sulitsa-Noua\";\"other\"\n\"699285\";\"Sulitsa-Nova\";\"other\"\n\"699285\";\"Suliţa\";\"other\"\n\"699285\";\"Новоселиця\";\"other\"\n\"699311\";\"Novopskov\";\"main\"\n\"699311\";\"NOVOPSKOV\";\"other\"\n\"699311\";\"НОВОПСКОВ\";\"other\"\n\"699328\";\"Novopokrovka\";\"main\"\n\"699328\";\"NOVOPOKROVKA\";\"other\"\n\"699328\";\"Novo Pokrovzkoye\";\"other\"\n\"699328\";\"Novo-Pokrovskoye\";\"other\"\n\"699328\";\"НОВОПОКРОВКА\";\"other\"\n\"699329\";\"Novopokrovka\";\"main\"\n\"699329\";\"Pokrovskaya\";\"other\"\n\"699329\";\"Новопокровка\";\"other\"\n\"699410\";\"Novonikolayevka\";\"main\"\n\"699410\";\"Novomykolayivka\";\"other\"\n\"699410\";\"Novonikolaevka\";\"other\"\n\"699410\";\"Новониколаевка\";\"other\"\n\"699413\";\"Novomykolayivka\";\"main\"\n\"699413\";\"Novomikolaivka\";\"other\"\n\"699413\";\"Novonikolayevka\";\"other\"\n\"699413\";\"Новомиколаївка\";\"other\"\n\"699445\";\"Novomoskovs’k\";\"main\"\n\"699445\";\"Novomoskovs'k\";\"ascii\"\n\"699445\";\"Novomoskovsk\";\"other\"\n\"699445\";\"Новомосковск\";\"other\"\n\"699453\";\"Novomyrhorod\";\"main\"\n\"699453\";\"NOVOMIRGOROD\";\"other\"\n\"699453\";\"Novomirgorod\";\"other\"\n\"699453\";\"НОВОМИРГОРОД\";\"other\"\n\"699553\";\"Novohrad-Volyns’kyy\";\"main\"\n\"699553\";\"Novohrad-Volyns'kyy\";\"ascii\"\n\"699553\";\"Novograd Volynski\";\"other\"\n\"699553\";\"Novograd-Volynsk\";\"other\"\n\"699553\";\"Novograd-Volynskij\";\"other\"\n\"699553\";\"Novograd-Volynskiy\";\"other\"\n\"699553\";\"Nowograd Wolynsk\";\"other\"\n\"699553\";\"Zvyagel'\";\"other\"\n\"699553\";\"Zvyagel’\";\"other\"\n\"699553\";\"Zvydgel\";\"other\"\n\"699553\";\"Zwiahl\";\"other\"\n\"699553\";\"Новоград-Волынский\";\"other\"\n\"699607\";\"Novofedorovka\";\"main\"\n\"699607\";\"Novaya Fedorovka\";\"other\"\n\"699607\";\"Новофедоровка\";\"other\"\n\"699657\";\"Novobohdanivka\";\"main\"\n\"699657\";\"Novaya Bogdanovka\";\"other\"\n\"699657\";\"Novobogdanivka\";\"other\"\n\"699657\";\"Novobogdanovka\";\"other\"\n\"699657\";\"Новобогданівка\";\"other\"\n\"699675\";\"Novoazovs'k\";\"main\"\n\"699675\";\"Budennovka\";\"other\"\n\"699675\";\"Budennowka\";\"other\"\n\"699675\";\"Budenovka\";\"other\"\n\"699675\";\"Budyanovka\";\"other\"\n\"699675\";\"Budyenovka\";\"other\"\n\"699675\";\"Budënnovka\";\"other\"\n\"699675\";\"Novoazovsk\";\"other\"\n\"699675\";\"Novoazovskoye\";\"other\"\n\"699675\";\"Novonikolayevskaya\";\"other\"\n\"699675\";\"Nowo-Nikolajewskaja\";\"other\"\n\"699675\";\"Новоазовск\";\"other\"\n\"699680\";\"Novoarkhanhel’s’k\";\"main\"\n\"699680\";\"Novoarkhanhel's'k\";\"ascii\"\n\"699680\";\"Novoarkhangel'sk\";\"other\"\n\"699680\";\"Novoarkhangel’sk\";\"other\"\n\"699680\";\"Новоархангельск\";\"other\"\n\"699706\";\"Novooleksiyivka\";\"main\"\n\"699706\";\"Novo-Ukrainka\";\"other\"\n\"699706\";\"Novoalekseevka\";\"other\"\n\"699706\";\"Novoalekseyevka\";\"other\"\n\"699706\";\"Novooleksiivka\";\"other\"\n\"699706\";\"Novyy Gorodok\";\"other\"\n\"699706\";\"Новоалексеевка\";\"other\"\n\"699706\";\"Новоолексіївка\";\"other\"\n\"699746\";\"Novytsya\";\"main\"\n\"699746\";\"Novicja\";\"other\"\n\"699746\";\"Novitsa\";\"other\"\n\"699746\";\"Новиця\";\"other\"\n\"699753\";\"Novhorod-Sivers’kyy\";\"main\"\n\"699753\";\"Novhorod-Sivers'kyy\";\"ascii\"\n\"699753\";\"Novgorod-Seversk\";\"other\"\n\"699753\";\"Novgorod-Severskij\";\"other\"\n\"699753\";\"Novgorod-Severskiy\";\"other\"\n\"699753\";\"Novgorod-Sivers'kij\";\"other\"\n\"699753\";\"Novogorod-Severskiy\";\"other\"\n\"699753\";\"Nowgorod Sewerski\";\"other\"\n\"699753\";\"Новгород-Северский\";\"other\"\n\"699753\";\"Новгород-Сіверський\";\"other\"\n\"699756\";\"Novhorodka\";\"main\"\n\"699756\";\"NOVGORODKA\";\"other\"\n\"699756\";\"Novgorodka\";\"other\"\n\"699756\";\"НОВГОРОДКА\";\"other\"\n\"699761\";\"Nove-Misto\";\"main\"\n\"699761\";\"Nove Misto\";\"other\"\n\"699761\";\"Нове Місто\";\"other\"\n\"699777\";\"Nova Vodolaha\";\"main\"\n\"699777\";\"NOV.VODOLAGA\";\"other\"\n\"699777\";\"Nova Vodolaga\";\"other\"\n\"699777\";\"Novaya Vodolaga\";\"other\"\n\"699777\";\"НОВ.ВОДОЛАГА\";\"other\"\n\"699777\";\"Нова Водолага\";\"other\"\n\"699802\";\"Nova Praha\";\"main\"\n\"699802\";\"NOV.PRAGA\";\"other\"\n\"699802\";\"Nova Praga\";\"other\"\n\"699802\";\"Novaya Praga\";\"other\"\n\"699802\";\"НОВ.ПРАГА\";\"other\"\n\"699802\";\"Нова Прага\";\"other\"\n\"699811\";\"Nova Odesa\";\"main\"\n\"699811\";\"Fedorovka\";\"other\"\n\"699811\";\"Novaya Odessa\";\"other\"\n\"699811\";\"Нова Одеса\";\"other\"\n\"699823\";\"Nova Mayachka\";\"main\"\n\"699823\";\"Bol'shaya Mayachka\";\"other\"\n\"699823\";\"Bol’shaya Mayachka\";\"other\"\n\"699823\";\"Nova Majachka\";\"other\"\n\"699823\";\"Novaya Mayachka\";\"other\"\n\"699823\";\"Нова Маячка\";\"other\"\n\"699839\";\"Nova Kakhovka\";\"main\"\n\"699839\";\"Novaya Kakhova\";\"other\"\n\"699839\";\"Novaya Kakhovka\";\"other\"\n\"699839\";\"Novo Kakhovka\";\"other\"\n\"699839\";\"Нова Каховка\";\"other\"\n\"699882\";\"Nova Borova\";\"main\"\n\"699882\";\"Novaya Borovaya\";\"other\"\n\"699882\";\"Novaya Borovaya Rudnya\";\"other\"\n\"699882\";\"Нова Борова\";\"other\"\n\"699899\";\"Nova Ushytsya\";\"main\"\n\"699899\";\"Nova Ushicja\";\"other\"\n\"699899\";\"Novaya Ushitsa\";\"other\"\n\"699899\";\"Нова Ушиця\";\"other\"\n\"699917\";\"Nosivka\";\"main\"\n\"699917\";\"NOSOVKA\";\"other\"\n\"699917\";\"Nosovka\";\"other\"\n\"699917\";\"Nosowka\";\"other\"\n\"699917\";\"НОСОВКА\";\"other\"\n\"699917\";\"Носівка\";\"other\"\n\"699933\";\"Nyzy\";\"main\"\n\"699933\";\"NIZY\";\"other\"\n\"699933\";\"Nizi\";\"other\"\n\"699933\";\"Nizy\";\"other\"\n\"699933\";\"НИЗЫ\";\"other\"\n\"699933\";\"Низи\";\"other\"\n\"699942\";\"Nizhyn\";\"main\"\n\"699942\";\"NEZHIN\";\"other\"\n\"699942\";\"Neshin\";\"other\"\n\"699942\";\"Nezhin\";\"other\"\n\"699942\";\"Niezyn\";\"other\"\n\"699942\";\"Nieżyn\";\"other\"\n\"699942\";\"Nijino\";\"other\"\n\"699942\";\"Nischyn\";\"other\"\n\"699942\";\"Nizhin\";\"other\"\n\"699942\";\"Nizin\";\"other\"\n\"699942\";\"Niĵino\";\"other\"\n\"699942\";\"Nižin\";\"other\"\n\"699942\";\"НЕЖИН\";\"other\"\n\"699942\";\"Нежин\";\"other\"\n\"699942\";\"Ніжин\";\"other\"\n\"699956\";\"Nizhnyaya Krynka\";\"main\"\n\"699956\";\"Nizhnja Krinka\";\"other\"\n\"699956\";\"Nizhnyaya Krinka\";\"other\"\n\"699956\";\"Nyzhnya Krynka\";\"other\"\n\"699956\";\"Нижня Кринка\";\"other\"\n\"699963\";\"Nyzhnya Duvanka\";\"main\"\n\"699963\";\"NIZHNJAJA DUVANKA\";\"other\"\n\"699963\";\"Nishnjaja Duwanka\";\"other\"\n\"699963\";\"Nizhnja Duvanka\";\"other\"\n\"699963\";\"Nizhnyaya Duvanka\";\"other\"\n\"699963\";\"НИЖНЯЯ ДУВАНКА\";\"other\"\n\"699963\";\"Нижня Дуванка\";\"other\"\n\"699986\";\"Nyzhni Sirohozy\";\"main\"\n\"699986\";\"Nizhniye Serogozy\";\"other\"\n\"699986\";\"Nizni Sirogozi\";\"other\"\n\"699986\";\"Нижні Сірогози\";\"other\"\n\"700019\";\"Nyzhn’ohirs’kyy\";\"main\"\n\"700019\";\"Nyzhn'ohirs'kyy\";\"ascii\"\n\"700019\";\"Nizhnegorskij\";\"other\"\n\"700019\";\"Nizhnegorskiy\";\"other\"\n\"700019\";\"Seitler\";\"other\"\n\"700019\";\"Seytler\";\"other\"\n\"700019\";\"Sseitler\";\"other\"\n\"700019\";\"Нижнегорский\";\"other\"\n\"700051\";\"Nikopol’\";\"main\"\n\"700051\";\"Nikopol'\";\"ascii\"\n\"700051\";\"Никополь\";\"other\"\n\"700159\";\"Mykolayivka\";\"main\"\n\"700159\";\"Mikolaivka\";\"other\"\n\"700159\";\"Nikolayevka\";\"other\"\n\"700159\";\"Nikolayevka Vtoraya\";\"other\"\n\"700159\";\"Миколаївка\";\"other\"\n\"700181\";\"Mykolayivka\";\"main\"\n\"700181\";\"Nikolayevka\";\"other\"\n\"700261\";\"Netishyn\";\"main\"\n\"700261\";\"Neteshin\";\"other\"\n\"700261\";\"Netishin\";\"other\"\n\"700261\";\"Netisin\";\"other\"\n\"700261\";\"Solov'ye Goryn'\";\"other\"\n\"700261\";\"Solov’ye Goryn’\";\"other\"\n\"700261\";\"Нетешин\";\"other\"\n\"700261\";\"Нетішин\";\"other\"\n\"700295\";\"Neresnytsya\";\"main\"\n\"700295\";\"Neresnicja\";\"other\"\n\"700295\";\"Neresnitsa\";\"other\"\n\"700295\";\"Nizhnya Novoselitsa\";\"other\"\n\"700295\";\"Novoselice\";\"other\"\n\"700295\";\"Novoselitsa\";\"other\"\n\"700295\";\"Нересниця\";\"other\"\n\"700322\";\"Nemyriv\";\"main\"\n\"700322\";\"Nemiriv\";\"other\"\n\"700322\";\"Nemirov\";\"other\"\n\"700322\";\"Немирів\";\"other\"\n\"700341\";\"Nelipyno\";\"main\"\n\"700341\";\"Nelepino\";\"other\"\n\"700341\";\"Nelipino\";\"other\"\n\"700341\";\"Nelipyne\";\"other\"\n\"700341\";\"Неліпино\";\"other\"\n\"700371\";\"Nedryhayliv\";\"main\"\n\"700371\";\"NEDRIGAJLOV\";\"other\"\n\"700371\";\"Nedrigajliv\";\"other\"\n\"700371\";\"Nedrigaylov\";\"other\"\n\"700371\";\"НЕДРИГАЙЛОВ\";\"other\"\n\"700371\";\"Недригайлів\";\"other\"\n\"700391\";\"Nebyliv\";\"main\"\n\"700391\";\"Nebiliv\";\"other\"\n\"700391\";\"Nebylov\";\"other\"\n\"700391\";\"Nebyluv\";\"other\"\n\"700391\";\"Небилів\";\"other\"\n\"700410\";\"Navariya\";\"main\"\n\"700410\";\"Navaria\";\"other\"\n\"700410\";\"Navarija\";\"other\"\n\"700410\";\"Навария\";\"other\"\n\"700410\";\"Наварія\";\"other\"\n\"700446\";\"Narodychi\";\"main\"\n\"700446\";\"Bolshie Narodichi\";\"other\"\n\"700446\";\"Narodichi\";\"other\"\n\"700446\";\"Narodici\";\"other\"\n\"700446\";\"Naroditschi\";\"other\"\n\"700446\";\"Народичі\";\"other\"\n\"700507\";\"Nadvirna\";\"main\"\n\"700507\";\"Naduvrna\";\"other\"\n\"700507\";\"Nadvorna\";\"other\"\n\"700507\";\"Nadvornaja\";\"other\"\n\"700507\";\"Nadvornaya\";\"other\"\n\"700507\";\"Nadworna\";\"other\"\n\"700507\";\"Надворная\";\"other\"\n\"700507\";\"Надвірна\";\"other\"\n\"700550\";\"Mysove\";\"main\"\n\"700550\";\"Afanas'ino\";\"other\"\n\"700550\";\"Afanas’ino\";\"other\"\n\"700550\";\"Kazantip\";\"other\"\n\"700550\";\"Mysovoye\";\"other\"\n\"700550\";\"Shhjolkino\";\"other\"\n\"700550\";\"Stary Kazantip Tatarskiy\";\"other\"\n\"700550\";\"Мисове\";\"other\"\n\"700550\";\"Щёлкино\";\"other\"\n\"700568\";\"Mykolayiv\";\"main\"\n\"700568\";\"Mikolajow\";\"other\"\n\"700568\";\"Mikolayuv\";\"other\"\n\"700568\";\"Mikotajow\";\"other\"\n\"700568\";\"Mikotajów\";\"other\"\n\"700568\";\"Mikołajów\";\"other\"\n\"700568\";\"Nikolaev\";\"other\"\n\"700568\";\"Nikolayev\";\"other\"\n\"700568\";\"Николаев\";\"other\"\n\"700569\";\"Mykolayiv\";\"main\"\n\"700569\";\"Nikolaev\";\"other\"\n\"700569\";\"Nikolajew\";\"other\"\n\"700569\";\"Nikolayev\";\"other\"\n\"700569\";\"Vernoleninsk\";\"other\"\n\"700569\";\"Николаев\";\"other\"\n\"700606\";\"Murovani Kurylivtsi\";\"main\"\n\"700606\";\"Murovani Kurilivci\";\"other\"\n\"700606\";\"Murovano-Kurilovtsy\";\"other\"\n\"700606\";\"Murovany-Kurilovtsy\";\"other\"\n\"700606\";\"Murovanye Kurilovtsy\";\"other\"\n\"700606\";\"Murovanyye Kurilovtsy\";\"other\"\n\"700606\";\"Муровані Курилівці\";\"other\"\n\"700607\";\"Murovanoye\";\"main\"\n\"700607\";\"Laszki Murowane\";\"other\"\n\"700607\";\"Lyashki Muravane\";\"other\"\n\"700607\";\"Lyashki Murovany\";\"other\"\n\"700607\";\"Murovane\";\"other\"\n\"700607\";\"Murovany\";\"other\"\n\"700607\";\"Муроване\";\"other\"\n\"700646\";\"Mukacheve\";\"main\"\n\"700646\";\"Mikachevo\";\"other\"\n\"700646\";\"Mukaceve\";\"other\"\n\"700646\";\"Mukacevo\";\"other\"\n\"700646\";\"Mukachevo\";\"other\"\n\"700646\";\"Mukaczewo\";\"other\"\n\"700646\";\"Mukatschewe\";\"other\"\n\"700646\";\"Mukačeve\";\"other\"\n\"700646\";\"Mukačevo\";\"other\"\n\"700646\";\"Munkacevo\";\"other\"\n\"700646\";\"Munkachevo\";\"other\"\n\"700646\";\"Munkacs\";\"other\"\n\"700646\";\"Munkačevo\";\"other\"\n\"700646\";\"Munkács\";\"other\"\n\"700646\";\"Мукачеве\";\"other\"\n\"700646\";\"Мукачево\";\"other\"\n\"700646\";\"מונקאטש\";\"other\"\n\"700646\";\"מונקאץ'\";\"other\"\n\"700700\";\"Mospyne\";\"main\"\n\"700700\";\"MOSPINO\";\"other\"\n\"700700\";\"Mospine\";\"other\"\n\"700700\";\"Mospino\";\"other\"\n\"700700\";\"МОСПИНО\";\"other\"\n\"700700\";\"Моспине\";\"other\"\n\"700730\";\"Moshny\";\"main\"\n\"700730\";\"Dudnitskoye\";\"other\"\n\"700730\";\"Moshni\";\"other\"\n\"700730\";\"Мошни\";\"other\"\n\"700730\";\"Мошны\";\"other\"\n\"700750\";\"Morskoye\";\"main\"\n\"700750\";\"Kapsikhor\";\"other\"\n\"700750\";\"Mors'ke\";\"other\"\n\"700750\";\"Morskoe\";\"other\"\n\"700750\";\"Морское\";\"other\"\n\"700750\";\"Морське\";\"other\"\n\"700753\";\"Morshin\";\"main\"\n\"700753\";\"Morshyn\";\"other\"\n\"700753\";\"Morsztyn\";\"other\"\n\"700753\";\"Morszyn\";\"other\"\n\"700753\";\"Моршин\";\"other\"\n\"700796\";\"Monastyryshche\";\"main\"\n\"700796\";\"Monastirishhe\";\"other\"\n\"700796\";\"Monastyrishche\";\"other\"\n\"700796\";\"Монастирище\";\"other\"\n\"700829\";\"Molodogvardeysk\";\"main\"\n\"700829\";\"Molodogvardejsk\";\"other\"\n\"700829\";\"Molodogvardejskoe\";\"other\"\n\"700829\";\"Molodogvardeyskoye\";\"other\"\n\"700829\";\"Молодогвардейск\";\"other\"\n\"700829\";\"Молодогвардейское\";\"other\"\n\"700831\";\"Molodiya\";\"main\"\n\"700831\";\"Cosmin\";\"other\"\n\"700831\";\"Kosmin\";\"other\"\n\"700831\";\"Molodia\";\"other\"\n\"700831\";\"Plaiul Cosmin\";\"other\"\n\"700831\";\"Молодія\";\"other\"\n\"700834\";\"Molodizhne\";\"main\"\n\"700834\";\"MOLODEZHNOE\";\"other\"\n\"700834\";\"Molodezhnoye\";\"other\"\n\"700834\";\"Molodizne\";\"other\"\n\"700834\";\"Molodëzhnoye\";\"other\"\n\"700834\";\"МОЛОДЕЖНОЕ\";\"other\"\n\"700834\";\"Молодіжне\";\"other\"\n\"700918\";\"Mohyliv-Podil’s’kyy\";\"main\"\n\"700918\";\"Mohyliv-Podil's'kyy\";\"ascii\"\n\"700918\";\"Mogilev-Podol'skij\";\"other\"\n\"700918\";\"Mogilev-Podol'skiy\";\"other\"\n\"700918\";\"Mogilov Podolski\";\"other\"\n\"700918\";\"Mogilëv-Podol’skiy\";\"other\"\n\"700918\";\"Могилев-Подольский\";\"other\"\n\"700964\";\"Mlyniv\";\"main\"\n\"700964\";\"Mliniv\";\"other\"\n\"700964\";\"Mlinov\";\"other\"\n\"700964\";\"Mlynuv\";\"other\"\n\"700964\";\"Млинів\";\"other\"\n\"700967\";\"Mleyev\";\"main\"\n\"700967\";\"Mleyevo\";\"other\"\n\"700967\";\"Mliev\";\"other\"\n\"700967\";\"Млиев\";\"other\"\n\"700974\";\"Mizoch\";\"main\"\n\"700974\";\"Mizoc\";\"other\"\n\"700974\";\"Mizocz\";\"other\"\n\"700974\";\"Мізоч\";\"other\"\n\"700977\";\"Miusinsk\";\"main\"\n\"700977\";\"MIUSINSK\";\"other\"\n\"700977\";\"Miusins'k\";\"other\"\n\"700977\";\"МИУСИНСК\";\"other\"\n\"700977\";\"Міусинськ\";\"other\"\n\"700997\";\"Miskhor\";\"main\"\n\"700997\";\"Мисхор\";\"other\"\n\"701031\";\"Myronivka\";\"main\"\n\"701031\";\"MIRONOVKA\";\"other\"\n\"701031\";\"Mironivka\";\"other\"\n\"701031\";\"Mironovka\";\"other\"\n\"701031\";\"МИРОНОВКА\";\"other\"\n\"701031\";\"Миронівка\";\"other\"\n\"701057\";\"Myrnyy\";\"main\"\n\"701057\";\"Mirnij\";\"other\"\n\"701057\";\"Mirnyi\";\"other\"\n\"701057\";\"Mirnyj\";\"other\"\n\"701057\";\"Mirnyy\";\"other\"\n\"701057\";\"Мирний\";\"other\"\n\"701057\";\"Мирный\";\"other\"\n\"701075\";\"Myrhorod\";\"main\"\n\"701075\";\"MIRGOROD\";\"other\"\n\"701075\";\"Mirgorod\";\"other\"\n\"701075\";\"МИРГОРОД\";\"other\"\n\"701091\";\"Minay\";\"main\"\n\"701091\";\"Minaj\";\"other\"\n\"701091\";\"Mynay\";\"other\"\n\"701091\";\"Минай\";\"other\"\n\"701104\";\"Milove\";\"main\"\n\"701104\";\"MELOVOE\";\"other\"\n\"701104\";\"Melovoy\";\"other\"\n\"701104\";\"Melovoye\";\"other\"\n\"701104\";\"МЕЛОВОЕ\";\"other\"\n\"701104\";\"Мілове\";\"other\"\n\"701119\";\"Mikulintsy\";\"main\"\n\"701119\";\"Mikuliczyn\";\"other\"\n\"701119\";\"Mikulince\";\"other\"\n\"701119\";\"Mikulinci\";\"other\"\n\"701119\";\"Mikulincy\";\"other\"\n\"701119\";\"Mikulintse\";\"other\"\n\"701119\";\"Mikulińce\";\"other\"\n\"701119\";\"Микулинцы\";\"other\"\n\"701119\";\"Микулинці\";\"other\"\n\"701233\";\"Mykhaylivka\";\"main\"\n\"701233\";\"Mihajlivka\";\"other\"\n\"701233\";\"Mikhaylovka\";\"other\"\n\"701233\";\"Михайлівка\";\"other\"\n\"701274\";\"Myhove\";\"main\"\n\"701274\";\"Migove\";\"other\"\n\"701274\";\"Migovo\";\"other\"\n\"701274\";\"Migovoye\";\"other\"\n\"701274\";\"Mikhova\";\"other\"\n\"701274\";\"Мигове\";\"other\"\n\"701276\";\"Myhiya\";\"main\"\n\"701276\";\"Migei\";\"other\"\n\"701276\";\"Migeja\";\"other\"\n\"701276\";\"Migeya\";\"other\"\n\"701276\";\"Migija\";\"other\"\n\"701276\";\"Migiya\";\"other\"\n\"701276\";\"Мигеи\";\"other\"\n\"701276\";\"Мигея\";\"other\"\n\"701276\";\"Мигия\";\"other\"\n\"701286\";\"Mizhvodne\";\"main\"\n\"701286\";\"Mezhvodnoe\";\"other\"\n\"701286\";\"Mezhvodnoye\";\"other\"\n\"701286\";\"Yarylgach\";\"other\"\n\"701286\";\"Межводное\";\"other\"\n\"701286\";\"Міжводне\";\"other\"\n\"701294\";\"Chudey\";\"main\"\n\"701294\";\"Chiudey\";\"other\"\n\"701294\";\"Chudei\";\"other\"\n\"701294\";\"Chudej\";\"other\"\n\"701294\";\"Chudeyu\";\"other\"\n\"701294\";\"Chudyn\";\"other\"\n\"701294\";\"Ciudeiu\";\"other\"\n\"701294\";\"Czudyn\";\"other\"\n\"701294\";\"Mezhirech'ye\";\"other\"\n\"701294\";\"Mezhirech’ye\";\"other\"\n\"701294\";\"Mezhyrichchya\";\"other\"\n\"701294\";\"Чудей\";\"other\"\n\"701299\";\"Mizhhir”ya\";\"main\"\n\"701299\";\"Mizhhir\\\"ya\";\"ascii\"\n\"701299\";\"Mezhgor'e\";\"other\"\n\"701299\";\"Mezhgor'ye\";\"other\"\n\"701299\";\"Mezhgor’ye\";\"other\"\n\"701299\";\"Mizhhir'ya\";\"other\"\n\"701299\";\"Volove\";\"other\"\n\"701299\";\"Volovets\";\"other\"\n\"701299\";\"Volovo\";\"other\"\n\"701299\";\"Volové\";\"other\"\n\"701299\";\"Межгорье\";\"other\"\n\"701305\";\"Mezhova\";\"main\"\n\"701305\";\"Grigor'yevka\";\"other\"\n\"701305\";\"Grigor’yevka\";\"other\"\n\"701305\";\"MEZHEVAJA\";\"other\"\n\"701305\";\"Mezhevaya\";\"other\"\n\"701305\";\"МЕЖЕВАЯ\";\"other\"\n\"701305\";\"Межова\";\"other\"\n\"701347\";\"Merefa\";\"main\"\n\"701347\";\"MEREFA\";\"other\"\n\"701347\";\"Meref\";\"other\"\n\"701347\";\"МЕРЕФА\";\"other\"\n\"701372\";\"Mena\";\"main\"\n\"701372\";\"MENA\";\"other\"\n\"701372\";\"МЕНА\";\"other\"\n\"701404\";\"Melitopol’\";\"main\"\n\"701404\";\"Melitopol'\";\"ascii\"\n\"701404\";\"Melitopol\";\"other\"\n\"701404\";\"mellitopol\";\"other\"\n\"701404\";\"Мелитополь\";\"other\"\n\"701404\";\"Мелітополь\";\"other\"\n\"701404\";\"멜리토폴\";\"other\"\n\"701405\";\"Meliorativnoye\";\"main\"\n\"701405\";\"Meliorativnoe\";\"other\"\n\"701405\";\"Мелиоративное\";\"other\"\n\"701413\";\"Melekyne\";\"main\"\n\"701413\";\"Byelosarai\";\"other\"\n\"701413\";\"Melekino\";\"other\"\n\"701413\";\"Milyenko\";\"other\"\n\"701413\";\"Мелекино\";\"other\"\n\"701425\";\"Medzhibozh\";\"main\"\n\"701425\";\"Medshibosh\";\"other\"\n\"701425\";\"Miedzyboz\";\"other\"\n\"701425\";\"Меджибож\";\"other\"\n\"701466\";\"Medenychi\";\"main\"\n\"701466\";\"Medenice\";\"other\"\n\"701466\";\"Medenichi\";\"other\"\n\"701466\";\"Medenici\";\"other\"\n\"701466\";\"Medenitsa\";\"other\"\n\"701466\";\"Medenitse\";\"other\"\n\"701466\";\"Medenitsy\";\"other\"\n\"701466\";\"Меденичі\";\"other\"\n\"701560\";\"Mayaky\";\"main\"\n\"701560\";\"Kommuna Mayak\";\"other\"\n\"701560\";\"Majaki\";\"other\"\n\"701560\";\"Mayaki\";\"other\"\n\"701560\";\"Маяки\";\"other\"\n\"701588\";\"Matviyivka\";\"main\"\n\"701588\";\"Matveyevka\";\"other\"\n\"701588\";\"Matviivka\";\"other\"\n\"701588\";\"Novo-Popovka\";\"other\"\n\"701588\";\"Матвіївка\";\"other\"\n\"701619\";\"Massandra\";\"main\"\n\"701619\";\"Masandra\";\"other\"\n\"701619\";\"Масандра\";\"other\"\n\"701637\";\"Mashivka\";\"main\"\n\"701637\";\"MASHEVKA\";\"other\"\n\"701637\";\"Mashevka\";\"other\"\n\"701637\";\"Masivka\";\"other\"\n\"701637\";\"МАШЕВКА\";\"other\"\n\"701637\";\"Машівка\";\"other\"\n\"701768\";\"Marshintsy\";\"main\"\n\"701768\";\"Marshenits'\";\"other\"\n\"701768\";\"Marshenits’\";\"other\"\n\"701792\";\"Markivka\";\"main\"\n\"701792\";\"MARKOVKA\";\"other\"\n\"701792\";\"Markovka\";\"other\"\n\"701792\";\"Markowka\";\"other\"\n\"701792\";\"Novo-Markovka\";\"other\"\n\"701792\";\"МАРКОВКА\";\"other\"\n\"701792\";\"Марківка\";\"other\"\n\"701802\";\"Markova\";\"main\"\n\"701802\";\"Маркова\";\"other\"\n\"701822\";\"Mariupol'\";\"main\"\n\"701822\";\"Mariupol\";\"other\"\n\"701822\";\"Zhdanov\";\"other\"\n\"701822\";\"Жданов\";\"other\"\n\"701822\";\"Мариуполь\";\"other\"\n\"701822\";\"Маріуполь\";\"other\"\n\"701855\";\"Marhanets’\";\"main\"\n\"701855\";\"Marhanets'\";\"ascii\"\n\"701855\";\"Komintern\";\"other\"\n\"701855\";\"Marganec\";\"other\"\n\"701855\";\"Marganets\";\"other\"\n\"701855\";\"Марганец\";\"other\"\n\"701877\";\"Manyava\";\"main\"\n\"701877\";\"Manjava\";\"other\"\n\"701877\";\"Манява\";\"other\"\n\"701912\";\"Manchenky\";\"main\"\n\"701912\";\"Khutor Manchenkov\";\"other\"\n\"701912\";\"MANCHENKI\";\"other\"\n\"701912\";\"Manchenki\";\"other\"\n\"701912\";\"Manchenkov\";\"other\"\n\"701912\";\"МАНЧЕНКИ\";\"other\"\n\"702061\";\"Malorichens’ke\";\"main\"\n\"702061\";\"Malorichens'ke\";\"ascii\"\n\"702061\";\"Kuchuk-Uzen'\";\"other\"\n\"702061\";\"Kuchuk-Uzen’\";\"other\"\n\"702061\";\"Malorechenskoe\";\"other\"\n\"702061\";\"Malorechenskoye\";\"other\"\n\"702061\";\"Малореченское\";\"other\"\n\"702072\";\"Malokaterynivka\";\"main\"\n\"702072\";\"Malokaterinivka\";\"other\"\n\"702072\";\"Malokaterinovka\";\"other\"\n\"702072\";\"Maloyekaterinovka\";\"other\"\n\"702072\";\"Малокатеринівка\";\"other\"\n\"702073\";\"Malokakhovka\";\"main\"\n\"702073\";\"Malaya Kakhovka\";\"other\"\n\"702073\";\"Малокаховка\";\"other\"\n\"702116\";\"Malyn\";\"main\"\n\"702116\";\"Malin\";\"other\"\n\"702116\";\"Малин\";\"other\"\n\"702147\";\"Mala Vyska\";\"main\"\n\"702147\";\"MAL.VISKA\";\"other\"\n\"702147\";\"Mala Viska\";\"other\"\n\"702147\";\"Malaya Viska\";\"other\"\n\"702147\";\"Malaya Viski\";\"other\"\n\"702147\";\"Malaya Vys'ka\";\"other\"\n\"702147\";\"Malaya Vys’ka\";\"other\"\n\"702147\";\"МАЛ.ВИСКА\";\"other\"\n\"702147\";\"Мала Виска\";\"other\"\n\"702153\";\"Mala Tokmachka\";\"main\"\n\"702153\";\"Malaya Tokmachka\";\"other\"\n\"702153\";\"Мала Токмачка\";\"other\"\n\"702231\";\"Mala Danylivka\";\"main\"\n\"702231\";\"MAL.DANILOVKA\";\"other\"\n\"702231\";\"Mala Danilivka\";\"other\"\n\"702231\";\"Malaya Danilovka\";\"other\"\n\"702231\";\"МАЛ.ДАНИЛОВКА\";\"other\"\n\"702231\";\"Мала Данилівка\";\"other\"\n\"702246\";\"Mala Bilozerka\";\"main\"\n\"702246\";\"Malaya Belozerka\";\"other\"\n\"702246\";\"Malaya Belozërka\";\"other\"\n\"702246\";\"Мала Білозерка\";\"other\"\n\"702320\";\"Makiyivka\";\"main\"\n\"702320\";\"Dmitriyevsk\";\"other\"\n\"702320\";\"Makayevka\";\"other\"\n\"702320\";\"Makeevka\";\"other\"\n\"702320\";\"Makejewka\";\"other\"\n\"702320\";\"Makeyevka\";\"other\"\n\"702320\";\"Makiivka\";\"other\"\n\"702320\";\"Makyeevka\";\"other\"\n\"702320\";\"Makyevka\";\"other\"\n\"702320\";\"Макеевка\";\"other\"\n\"702320\";\"Макіївка\";\"other\"\n\"702337\";\"Makariv\";\"main\"\n\"702337\";\"Makarov\";\"other\"\n\"702337\";\"Макарів\";\"other\"\n\"702356\";\"Mahdalynivka\";\"main\"\n\"702356\";\"MAGDALINOVKA\";\"other\"\n\"702356\";\"Magdalinivka\";\"other\"\n\"702356\";\"Magdalinovka\";\"other\"\n\"702356\";\"Magdalinowka\";\"other\"\n\"702356\";\"Magdalinowka Pervaya\";\"other\"\n\"702356\";\"Magdalinowka Vtoraya\";\"other\"\n\"702356\";\"МАГДАЛИНОВКА\";\"other\"\n\"702356\";\"Магдалинівка\";\"other\"\n\"702417\";\"Lyubotyn\";\"main\"\n\"702417\";\"LJUBOTIN\";\"other\"\n\"702417\";\"Lyobotin\";\"other\"\n\"702417\";\"Lyubotin\";\"other\"\n\"702417\";\"ЛЮБОТИН\";\"other\"\n\"702421\";\"Lyuboml’\";\"main\"\n\"702421\";\"Lyuboml'\";\"ascii\"\n\"702421\";\"Ljuboml'\";\"other\"\n\"702421\";\"Luboml\";\"other\"\n\"702421\";\"Lyubomi\";\"other\"\n\"702421\";\"Любомль\";\"other\"\n\"702459\";\"Lyubymivka\";\"main\"\n\"702459\";\"Lubimivka\";\"other\"\n\"702459\";\"Lyubimovka\";\"other\"\n\"702459\";\"Любимівка\";\"other\"\n\"702477\";\"Lyubech\";\"main\"\n\"702477\";\"LJUBECH\";\"other\"\n\"702477\";\"Lyubich'\";\"other\"\n\"702477\";\"Lyubich’\";\"other\"\n\"702477\";\"Lyubyach\";\"other\"\n\"702477\";\"ЛЮБЕЧ\";\"other\"\n\"702486\";\"Lyubar\";\"main\"\n\"702486\";\"Ljubar\";\"other\"\n\"702486\";\"Любар\";\"other\"\n\"702491\";\"Lysyanka\";\"main\"\n\"702491\";\"LYSJANKA\";\"other\"\n\"702491\";\"Lisjanka\";\"other\"\n\"702491\";\"Lisyanka\";\"other\"\n\"702491\";\"Lisyanko\";\"other\"\n\"702491\";\"ЛЫСЯНКА\";\"other\"\n\"702491\";\"Лисянка\";\"other\"\n\"702507\";\"Lysa Hora\";\"main\"\n\"702507\";\"Lisa Gora\";\"other\"\n\"702507\";\"Lysaja Gora\";\"other\"\n\"702507\";\"Lysaya Gora\";\"other\"\n\"702507\";\"Лиса Гора\";\"other\"\n\"702507\";\"Лысая Гора\";\"other\"\n\"702550\";\"L'viv\";\"main\"\n\"702550\";\"L'vov\";\"other\"\n\"702550\";\"Lavov\";\"other\"\n\"702550\";\"Lemberg\";\"other\"\n\"702550\";\"Leopoli\";\"other\"\n\"702550\";\"Leopolis\";\"other\"\n\"702550\";\"Liov\";\"other\"\n\"702550\";\"Lviv\";\"other\"\n\"702550\";\"Lviva\";\"other\"\n\"702550\";\"Lvov\";\"other\"\n\"702550\";\"Lvovas\";\"other\"\n\"702550\";\"Lvovo\";\"other\"\n\"702550\";\"Lwiw\";\"other\"\n\"702550\";\"Lwow\";\"other\"\n\"702550\";\"Lwów\";\"other\"\n\"702550\";\"l'vov\";\"other\"\n\"702550\";\"lbwb\";\"other\"\n\"702550\";\"li wo fu\";\"other\"\n\"702550\";\"libiu\";\"other\"\n\"702550\";\"lvov\";\"other\"\n\"702550\";\"rivu~ifu\";\"other\"\n\"702550\";\"Ļviva\";\"other\"\n\"702550\";\"Ľvov\";\"other\"\n\"702550\";\"Лвов\";\"other\"\n\"702550\";\"Львов\";\"other\"\n\"702550\";\"Львів\";\"other\"\n\"702550\";\"לבוב\";\"other\"\n\"702550\";\"לעמבערג\";\"other\"\n\"702550\";\"リヴィフ\";\"other\"\n\"702550\";\"利沃夫\";\"other\"\n\"702550\";\"리비우\";\"other\"\n\"702557\";\"Luzhany\";\"main\"\n\"702557\";\"Lujeni\";\"other\"\n\"702557\";\"Luzhani\";\"other\"\n\"702557\";\"Luzheny\";\"other\"\n\"702557\";\"Лужани\";\"other\"\n\"702563\";\"Lutugino\";\"main\"\n\"702563\";\"Loutougino\";\"other\"\n\"702563\";\"Лутугино\";\"other\"\n\"702569\";\"Luts’k\";\"main\"\n\"702569\";\"Luts'k\";\"ascii\"\n\"702569\";\"Loetsk\";\"other\"\n\"702569\";\"Loutsk\";\"other\"\n\"702569\";\"Luc'k\";\"other\"\n\"702569\";\"Luck\";\"other\"\n\"702569\";\"Luckas\";\"other\"\n\"702569\";\"Lucko\";\"other\"\n\"702569\";\"Lutsk\";\"other\"\n\"702569\";\"Luzk\";\"other\"\n\"702569\";\"lwzq\";\"other\"\n\"702569\";\"Łuck\";\"other\"\n\"702569\";\"Луцк\";\"other\"\n\"702569\";\"Луцьк\";\"other\"\n\"702569\";\"לוצק\";\"other\"\n\"702612\";\"Lukov\";\"main\"\n\"702612\";\"Lukiv\";\"other\"\n\"702612\";\"Lukuv\";\"other\"\n\"702612\";\"Луків\";\"other\"\n\"702658\";\"Luhans’k\";\"main\"\n\"702658\";\"Luhans'k\";\"ascii\"\n\"702658\";\"Lugans'k\";\"other\"\n\"702658\";\"Lugansk\";\"other\"\n\"702658\";\"Voroshilovgrad\";\"other\"\n\"702658\";\"Woroschilowgrad\";\"other\"\n\"702658\";\"Ворошиловград\";\"other\"\n\"702658\";\"Луганск\";\"other\"\n\"702658\";\"Луганськ\";\"other\"\n\"702679\";\"Luhyny\";\"main\"\n\"702679\";\"Lugini\";\"other\"\n\"702679\";\"Luginy\";\"other\"\n\"702679\";\"Лугини\";\"other\"\n\"702723\";\"Lubny\";\"main\"\n\"702723\";\"LUBNY\";\"other\"\n\"702723\";\"Lubin\";\"other\"\n\"702723\";\"Lubni\";\"other\"\n\"702723\";\"ЛУБНЫ\";\"other\"\n\"702723\";\"Лубни\";\"other\"\n\"702760\";\"Lozova\";\"main\"\n\"702760\";\"LOZOVAJA\";\"other\"\n\"702760\";\"Losowaja\";\"other\"\n\"702760\";\"Lozovaya\";\"other\"\n\"702760\";\"ЛОЗОВАЯ\";\"other\"\n\"702760\";\"Лозова\";\"other\"\n\"702774\";\"Lozuvatka\";\"main\"\n\"702774\";\"Lozovatka\";\"other\"\n\"702774\";\"Лозоватка\";\"other\"\n\"702774\";\"Лозуватка\";\"other\"\n\"702782\";\"Lozno-Oleksandrivka\";\"main\"\n\"702782\";\"Aleksandrovka\";\"other\"\n\"702782\";\"Aleksandrowka\";\"other\"\n\"702782\";\"Lozno-Aleksandrovka\";\"other\"\n\"702782\";\"Lozno-Aleksandrovskiy\";\"other\"\n\"702782\";\"Лозно-Александровка\";\"other\"\n\"702782\";\"Лозно-Олександрівка\";\"other\"\n\"702834\";\"Lopukhiv\";\"main\"\n\"702834\";\"Brustura\";\"other\"\n\"702834\";\"Lopuhiv\";\"other\"\n\"702834\";\"Lopukhov\";\"other\"\n\"702834\";\"Лопухів\";\"other\"\n\"702844\";\"Lopatin\";\"main\"\n\"702844\";\"Lopatyn\";\"other\"\n\"702844\";\"Łopatyn\";\"other\"\n\"702874\";\"Lokhvytsya\";\"main\"\n\"702874\";\"LOKHVICA\";\"other\"\n\"702874\";\"Lochwiza\";\"other\"\n\"702874\";\"Lokhvicja\";\"other\"\n\"702874\";\"Lokhvitsa\";\"other\"\n\"702874\";\"ЛОХВИЦА\";\"other\"\n\"702874\";\"Лохвиця\";\"other\"\n\"702878\";\"Lokachi\";\"main\"\n\"702878\";\"Lokache\";\"other\"\n\"702878\";\"Lokaci\";\"other\"\n\"702878\";\"Lokacze\";\"other\"\n\"702878\";\"Łokacze\";\"other\"\n\"702878\";\"Локачі\";\"other\"\n\"702898\";\"Lyubashivka\";\"main\"\n\"702898\";\"Lubasivka\";\"other\"\n\"702898\";\"Lyubashevka\";\"other\"\n\"702898\";\"Lyubashëvka\";\"other\"\n\"702898\";\"Любашівка\";\"other\"\n\"702907\";\"Livadiya\";\"main\"\n\"702907\";\"Livadia\";\"other\"\n\"702907\";\"Livadija\";\"other\"\n\"702907\";\"Ливадия\";\"other\"\n\"702907\";\"Лівадія\";\"other\"\n\"702931\";\"Lityn\";\"main\"\n\"702931\";\"Litin\";\"other\"\n\"702931\";\"Літин\";\"other\"\n\"702971\";\"Lysychovo\";\"main\"\n\"702971\";\"Lisichevo\";\"other\"\n\"702971\";\"Lisichovo\";\"other\"\n\"702971\";\"Lysycheve\";\"other\"\n\"702971\";\"Лисичово\";\"other\"\n\"702972\";\"Lisichansk\";\"main\"\n\"702972\";\"LISICHANSK\";\"other\"\n\"702972\";\"Lisichans'k\";\"other\"\n\"702972\";\"ЛИСИЧАНСК\";\"other\"\n\"702972\";\"Лисичанск\";\"other\"\n\"702972\";\"Лисичанськ\";\"other\"\n\"703015\";\"Lypova Dolyna\";\"main\"\n\"703015\";\"LIPOVAJA DOLINA\";\"other\"\n\"703015\";\"Lipova Dolina\";\"other\"\n\"703015\";\"Lipovaya Dolina\";\"other\"\n\"703015\";\"ЛИПОВАЯ ДОЛИНА\";\"other\"\n\"703015\";\"Липова Долина\";\"other\"\n\"703017\";\"Lypnyazhka\";\"main\"\n\"703017\";\"Lipnjazhka\";\"other\"\n\"703017\";\"Lipnyazhka\";\"other\"\n\"703017\";\"Липняжка\";\"other\"\n\"703042\";\"Lypcha\";\"main\"\n\"703042\";\"Lipca\";\"other\"\n\"703042\";\"Lipcha\";\"other\"\n\"703042\";\"Lipcse\";\"other\"\n\"703042\";\"Lipsa\";\"other\"\n\"703042\";\"Lipse\";\"other\"\n\"703042\";\"Lipsha\";\"other\"\n\"703042\";\"Lipča\";\"other\"\n\"703042\";\"Lipša\";\"other\"\n\"703042\";\"Липча\";\"other\"\n\"703061\";\"Lymans’ke\";\"main\"\n\"703061\";\"Lymans'ke\";\"ascii\"\n\"703061\";\"Limanskoye\";\"other\"\n\"703061\";\"Sel'ts\";\"other\"\n\"703061\";\"Sel’ts\";\"other\"\n\"703061\";\"Zel'ts\";\"other\"\n\"703061\";\"Zel'tsy\";\"other\"\n\"703061\";\"Zel’ts\";\"other\"\n\"703061\";\"Zel’tsy\";\"other\"\n\"703071\";\"Lyman\";\"main\"\n\"703071\";\"LIMAN\";\"other\"\n\"703071\";\"Liman\";\"other\"\n\"703071\";\"ЛИМАН\";\"other\"\n\"703079\";\"Lykhivka\";\"main\"\n\"703079\";\"Lihivka\";\"other\"\n\"703079\";\"Likhovka\";\"other\"\n\"703079\";\"Лиховка\";\"other\"\n\"703079\";\"Лихівка\";\"other\"\n\"703142\";\"Letychiv\";\"main\"\n\"703142\";\"Letichev\";\"other\"\n\"703142\";\"Leticiv\";\"other\"\n\"703142\";\"Летичів\";\"other\"\n\"703144\";\"Lesovy\";\"main\"\n\"703144\";\"Lesovy Sorochintsy\";\"other\"\n\"703144\";\"Lesovye Sorochincy\";\"other\"\n\"703144\";\"Pesovy\";\"other\"\n\"703144\";\"Sorochincy\";\"other\"\n\"703144\";\"Velikie Sorochincy\";\"other\"\n\"703144\";\"Великие Сорочинцы\";\"other\"\n\"703144\";\"Лесовые Сорочинцы\";\"other\"\n\"703144\";\"Сорочинцы\";\"other\"\n\"703261\";\"Lenine\";\"main\"\n\"703261\";\"Lenino\";\"other\"\n\"703261\";\"Sem'-Kolodezey\";\"other\"\n\"703261\";\"Sem’-Kolodezey\";\"other\"\n\"703261\";\"Леніне\";\"other\"\n\"703270\";\"Lenina\";\"main\"\n\"703270\";\"Imeni Lenina\";\"other\"\n\"703270\";\"Poselok Imeni Lenina\";\"other\"\n\"703270\";\"Posëlok Imeni Lenina\";\"other\"\n\"703270\";\"Леніна\";\"other\"\n\"703311\";\"Lebedyn\";\"main\"\n\"703311\";\"Lebedin\";\"other\"\n\"703311\";\"Лебедин\";\"other\"\n\"703317\";\"Lazurne\";\"main\"\n\"703317\";\"Lazurnoye\";\"other\"\n\"703317\";\"Novoalekseyevka\";\"other\"\n\"703317\";\"Лазурне\";\"other\"\n\"703325\";\"Lazi\";\"main\"\n\"703325\";\"Lazy\";\"other\"\n\"703325\";\"Лази\";\"other\"\n\"703328\";\"Lazeshchyna\";\"main\"\n\"703328\";\"Laveshchina\";\"other\"\n\"703328\";\"Lazeshchina\";\"other\"\n\"703328\";\"Lazeshhina\";\"other\"\n\"703328\";\"Loveshchina\";\"other\"\n\"703328\";\"Лазещина\";\"other\"\n\"703397\";\"Lanivtsi\";\"main\"\n\"703397\";\"Lanavtse\";\"other\"\n\"703397\";\"Lanivci\";\"other\"\n\"703397\";\"Lanovtse\";\"other\"\n\"703397\";\"Lanovtsy\";\"other\"\n\"703397\";\"Lanowce\";\"other\"\n\"703397\";\"Łanowce\";\"other\"\n\"703397\";\"Ланівці\";\"other\"\n\"703410\";\"Lanchyn\";\"main\"\n\"703410\";\"Lanchin\";\"other\"\n\"703410\";\"Lanczyn\";\"other\"\n\"703410\";\"Łanczyn\";\"other\"\n\"703410\";\"Ланчин\";\"other\"\n\"703428\";\"Ladyzhyn\";\"main\"\n\"703428\";\"Ladizhin\";\"other\"\n\"703428\";\"Ladyzhin\";\"other\"\n\"703428\";\"Lodyzhin\";\"other\"\n\"703428\";\"Ладижин\";\"other\"\n\"703438\";\"Ladan\";\"main\"\n\"703438\";\"LADAN\";\"other\"\n\"703438\";\"Ladin\";\"other\"\n\"703438\";\"ЛАДАН\";\"other\"\n\"703448\";\"Kiev\";\"main\"\n\"703448\";\"Chijv\";\"other\"\n\"703448\";\"Chiovia\";\"other\"\n\"703448\";\"Kaenugardur\";\"other\"\n\"703448\";\"Kiebo\";\"other\"\n\"703448\";\"Kieu\";\"other\"\n\"703448\";\"Kievo\";\"other\"\n\"703448\";\"Kiew\";\"other\"\n\"703448\";\"Kiiev\";\"other\"\n\"703448\";\"Kiiv\";\"other\"\n\"703448\";\"Kijev\";\"other\"\n\"703448\";\"Kijeva\";\"other\"\n\"703448\";\"Kijevas\";\"other\"\n\"703448\";\"Kijow\";\"other\"\n\"703448\";\"Kijv\";\"other\"\n\"703448\";\"Kijów\";\"other\"\n\"703448\";\"Kiova\";\"other\"\n\"703448\";\"Kyiiv\";\"other\"\n\"703448\";\"Kyiv\";\"other\"\n\"703448\";\"Kyjev\";\"other\"\n\"703448\";\"Kænugarður\";\"other\"\n\"703448\";\"Kíev\";\"other\"\n\"703448\";\"ji fu\";\"other\"\n\"703448\";\"kheiyf\";\"other\"\n\"703448\";\"kiefu\";\"other\"\n\"703448\";\"kiva\";\"other\"\n\"703448\";\"kiyebha\";\"other\"\n\"703448\";\"kiyepeu\";\"other\"\n\"703448\";\"kyf\";\"other\"\n\"703448\";\"kyiva\";\"other\"\n\"703448\";\"kyyf\";\"other\"\n\"703448\";\"qyyb\";\"other\"\n\"703448\";\"Κίεβο\";\"other\"\n\"703448\";\"Киев\";\"other\"\n\"703448\";\"Київ\";\"other\"\n\"703448\";\"Кијев\";\"other\"\n\"703448\";\"Кыѥвъ\";\"other\"\n\"703448\";\"Кіеў\";\"other\"\n\"703448\";\"Կիև\";\"other\"\n\"703448\";\"קייב\";\"other\"\n\"703448\";\"קיעװ\";\"other\"\n\"703448\";\"كييف\";\"other\"\n\"703448\";\"کیف\";\"other\"\n\"703448\";\"कीव\";\"other\"\n\"703448\";\"क्यीव\";\"other\"\n\"703448\";\"কিয়েভ\";\"other\"\n\"703448\";\"เคียฟ\";\"other\"\n\"703448\";\"კიევი\";\"other\"\n\"703448\";\"ኪየቭ\";\"other\"\n\"703448\";\"キエフ\";\"other\"\n\"703448\";\"基輔\";\"other\"\n\"703448\";\"키예프\";\"other\"\n\"703455\";\"Kvasy\";\"main\"\n\"703455\";\"Kvasi\";\"other\"\n\"703455\";\"Tiszaborkut\";\"other\"\n\"703455\";\"Tiszaborkút\";\"other\"\n\"703455\";\"Кваси\";\"other\"\n\"703455\";\"Квасы\";\"other\"\n\"703464\";\"Kuznetsovs’k\";\"main\"\n\"703464\";\"Kuznetsovs'k\";\"ascii\"\n\"703464\";\"Kuznecovsk\";\"other\"\n\"703464\";\"Kuznetsovsk\";\"other\"\n\"703464\";\"Кузнецовск\";\"other\"\n\"703494\";\"Kuybysheve\";\"main\"\n\"703494\";\"KUJBYSHEVO\";\"other\"\n\"703494\";\"Kujbisheve\";\"other\"\n\"703494\";\"Kuybyshevo\";\"other\"\n\"703494\";\"КУЙБЫШЕВО\";\"other\"\n\"703494\";\"Куйбишеве\";\"other\"\n\"703514\";\"Kuty\";\"main\"\n\"703514\";\"Kuti\";\"other\"\n\"703514\";\"Kutty\";\"other\"\n\"703514\";\"Кути\";\"other\"\n\"703537\";\"Kuteynykove\";\"main\"\n\"703537\";\"Kuteinikowo\";\"other\"\n\"703537\";\"Kutejnikove\";\"other\"\n\"703537\";\"Kuteynikovo\";\"other\"\n\"703537\";\"Кутейникове\";\"other\"\n\"703555\";\"Kushuhum\";\"main\"\n\"703555\";\"Kushugum\";\"other\"\n\"703555\";\"Kushugumovka\";\"other\"\n\"703555\";\"Кушугум\";\"other\"\n\"703559\";\"Kushnytsya\";\"main\"\n\"703559\";\"Kushnicja\";\"other\"\n\"703559\";\"Kushnitsa\";\"other\"\n\"703559\";\"Kushnitse\";\"other\"\n\"703559\";\"Kusnice\";\"other\"\n\"703559\";\"Kušnice\";\"other\"\n\"703559\";\"Кушниця\";\"other\"\n\"703646\";\"Kurakhovo\";\"main\"\n\"703646\";\"Kurakhovstroy\";\"other\"\n\"703646\";\"Novo-Ulakly\";\"other\"\n\"703646\";\"Petrovka\";\"other\"\n\"703646\";\"Курахово\";\"other\"\n\"703706\";\"Kulynychi\";\"main\"\n\"703706\";\"KULINICHI\";\"other\"\n\"703706\";\"Kulinichi\";\"other\"\n\"703706\";\"Kulinici\";\"other\"\n\"703706\";\"КУЛИНИЧИ\";\"other\"\n\"703706\";\"Кулиничі\";\"other\"\n\"703713\";\"Kulykivka\";\"main\"\n\"703713\";\"KULIKOVKA\";\"other\"\n\"703713\";\"Kulikivka\";\"other\"\n\"703713\";\"Kulikovka\";\"other\"\n\"703713\";\"Kulikowka\";\"other\"\n\"703713\";\"КУЛИКОВКА\";\"other\"\n\"703713\";\"Куликівка\";\"other\"\n\"703716\";\"Kulikov\";\"main\"\n\"703716\";\"Kulikiv\";\"other\"\n\"703716\";\"Kulikuv\";\"other\"\n\"703716\";\"Kulykiv\";\"other\"\n\"703716\";\"Куликів\";\"other\"\n\"703844\";\"Kryzhanivka\";\"main\"\n\"703844\";\"Krizanivka\";\"other\"\n\"703844\";\"Kryzhanovka\";\"other\"\n\"703844\";\"Крижанівка\";\"other\"\n\"703845\";\"Kryvyy Rih\";\"main\"\n\"703845\";\"Krivij Rig\";\"other\"\n\"703845\";\"Krivoj Rog\";\"other\"\n\"703845\";\"Krivoy Rog\";\"other\"\n\"703845\";\"Kriwoi Rog\";\"other\"\n\"703845\";\"Кривий Ріг\";\"other\"\n\"703845\";\"Кривой Рог\";\"other\"\n\"703903\";\"Kruty\";\"main\"\n\"703903\";\"Круты\";\"other\"\n\"704000\";\"Krolevets\";\"main\"\n\"704000\";\"Korolevets\";\"other\"\n\"704000\";\"Krolevec\";\"other\"\n\"704000\";\"Krolovets\";\"other\"\n\"704000\";\"Кролевец\";\"other\"\n\"704010\";\"Kryve Ozero\";\"main\"\n\"704010\";\"Krive Ozero\";\"other\"\n\"704010\";\"Krivoye Ozero\";\"other\"\n\"704010\";\"Криве Озеро\";\"other\"\n\"704048\";\"Krivaya Gora\";\"main\"\n\"704048\";\"Krivaja Gora\";\"other\"\n\"704048\";\"Кривая Гора\";\"other\"\n\"704055\";\"Kriva\";\"main\"\n\"704055\";\"Krivoye\";\"other\"\n\"704055\";\"Kryva\";\"other\"\n\"704055\";\"Nagykirva\";\"other\"\n\"704055\";\"Tiszakirva\";\"other\"\n\"704055\";\"Крива\";\"other\"\n\"704074\";\"Krinichnaya\";\"main\"\n\"704074\";\"Krinitschnaja\";\"other\"\n\"704079\";\"Krynychky\";\"main\"\n\"704079\";\"Krinichki\";\"other\"\n\"704079\";\"Krinichky\";\"other\"\n\"704079\";\"Кринички\";\"other\"\n\"704118\";\"Krepenskiy\";\"main\"\n\"704118\";\"KREPENSKIJ\";\"other\"\n\"704118\";\"КРЕПЕНСКИЙ\";\"other\"\n\"704130\";\"Kremintsi\";\"main\"\n\"704130\";\"Krementsy\";\"other\"\n\"704130\";\"Kremintsy\";\"other\"\n\"704130\";\"Tartarov\";\"other\"\n\"704130\";\"Tatarov\";\"other\"\n\"704130\";\"Татаров\";\"other\"\n\"704138\";\"Kreminna\";\"main\"\n\"704138\";\"KREMENNAJA\";\"other\"\n\"704138\";\"Kremennaya\";\"other\"\n\"704138\";\"КРЕМЕННАЯ\";\"other\"\n\"704138\";\"Кремінна\";\"other\"\n\"704143\";\"Kremenets’\";\"main\"\n\"704143\";\"Kremenets'\";\"ascii\"\n\"704143\";\"Kremenec'\";\"other\"\n\"704143\";\"Kremenets\";\"other\"\n\"704143\";\"Krzemieniec\";\"other\"\n\"704143\";\"Kshemenets\";\"other\"\n\"704143\";\"Кременець\";\"other\"\n\"704147\";\"Kremenchuk\";\"main\"\n\"704147\";\"Kremenchug\";\"other\"\n\"704147\";\"Kremencuk\";\"other\"\n\"704147\";\"Krementschug\";\"other\"\n\"704147\";\"Krementschuk\";\"other\"\n\"704147\";\"Krementsuk\";\"other\"\n\"704147\";\"Krementšuk\";\"other\"\n\"704147\";\"Kremenčuk\";\"other\"\n\"704147\";\"Krenenchur\";\"other\"\n\"704147\";\"Krzemienczuk\";\"other\"\n\"704147\";\"Krzemieńczuk\";\"other\"\n\"704147\";\"keulemenchukeu\";\"other\"\n\"704147\";\"kuremenchuku\";\"other\"\n\"704147\";\"Кременчуг\";\"other\"\n\"704147\";\"Кременчук\";\"other\"\n\"704147\";\"クレメンチュク\";\"other\"\n\"704147\";\"크레멘추크\";\"other\"\n\"704202\";\"Krasnyy Luch\";\"main\"\n\"704202\";\"KR.LUCH\";\"other\"\n\"704202\";\"Krasnij Luch\";\"other\"\n\"704202\";\"Krasniluch\";\"other\"\n\"704202\";\"Krasny Luch\";\"other\"\n\"704202\";\"Krassntjlutsch\";\"other\"\n\"704202\";\"КР.ЛУЧ\";\"other\"\n\"704202\";\"Красний Луч\";\"other\"\n\"704204\";\"Krasnyy Liman\";\"main\"\n\"704204\";\"Krasniy Liman\";\"other\"\n\"704204\";\"Krasny Liman\";\"other\"\n\"704204\";\"Krasnyj Liman\";\"other\"\n\"704204\";\"Liman\";\"other\"\n\"704204\";\"Красный Лиман\";\"other\"\n\"704207\";\"Krasnyy Kut\";\"main\"\n\"704207\";\"Krasnij Kut\";\"other\"\n\"704207\";\"Красний Кут\";\"other\"\n\"704277\";\"Krasnoye\";\"main\"\n\"704277\";\"Krasne\";\"other\"\n\"704277\";\"Krasnoe\";\"other\"\n\"704277\";\"Красное\";\"other\"\n\"704290\";\"Krasne\";\"main\"\n\"704290\";\"Krasnoye\";\"other\"\n\"704290\";\"Красне\";\"other\"\n\"704303\";\"Krasnotorka\";\"main\"\n\"704303\";\"KRASNOTORKA\";\"other\"\n\"704303\";\"Krasnogorka\";\"other\"\n\"704303\";\"КРАСНОТОРКА\";\"other\"\n\"704335\";\"Krasnosilka\";\"main\"\n\"704335\";\"Gil'dendorf\";\"other\"\n\"704335\";\"Gil’dendorf\";\"other\"\n\"704335\";\"Kolendorovo\";\"other\"\n\"704335\";\"Krasnoselka\";\"other\"\n\"704335\";\"Krasnosëlka\";\"other\"\n\"704335\";\"Красносілка\";\"other\"\n\"704343\";\"Krasnopillya\";\"main\"\n\"704343\";\"KRASNOPOL'E\";\"other\"\n\"704343\";\"Krasnopilla\";\"other\"\n\"704343\";\"Krasnopol'ye\";\"other\"\n\"704343\";\"Krasnopole\";\"other\"\n\"704343\";\"Krasnopol’ye\";\"other\"\n\"704343\";\"КРАСНОПОЛЬЕ\";\"other\"\n\"704343\";\"Краснопілля\";\"other\"\n\"704362\";\"Krasnoperekops’k\";\"main\"\n\"704362\";\"Krasnoperekops'k\";\"ascii\"\n\"704362\";\"Krasnoperekopsk\";\"other\"\n\"704362\";\"Or qapu\";\"other\"\n\"704362\";\"Красноперекопск\";\"other\"\n\"704362\";\"Красноперекопськ\";\"other\"\n\"704363\";\"Krasnopavlivka\";\"main\"\n\"704363\";\"Krasnopavlovka\";\"other\"\n\"704363\";\"Краснопавловка\";\"other\"\n\"704363\";\"Краснопавлівка\";\"other\"\n\"704376\";\"Krasnokutsk\";\"main\"\n\"704376\";\"Краснокутск\";\"other\"\n\"704388\";\"Krasnohrad\";\"main\"\n\"704388\";\"KRASNOGRAD\";\"other\"\n\"704388\";\"Konstantinograd\";\"other\"\n\"704388\";\"Krasnograd\";\"other\"\n\"704388\";\"КРАСНОГРАД\";\"other\"\n\"704402\";\"Krasnodon\";\"main\"\n\"704402\";\"KRASNODON\";\"other\"\n\"704402\";\"Krasnodonskiy\";\"other\"\n\"704402\";\"КРАСНОДОН\";\"other\"\n\"704403\";\"Krasnodon\";\"main\"\n\"704403\";\"KRASNODON\";\"other\"\n\"704403\";\"Krassnodon\";\"other\"\n\"704403\";\"Sorokin\";\"other\"\n\"704403\";\"Sorokino\";\"other\"\n\"704403\";\"КРАСНОДОН\";\"other\"\n\"704422\";\"Krasnoarmiys’k\";\"main\"\n\"704422\";\"Krasnoarmiys'k\";\"ascii\"\n\"704422\";\"Grishino\";\"other\"\n\"704422\";\"KRASNOARMEJSK\";\"other\"\n\"704422\";\"Krasnoarmeysk\";\"other\"\n\"704422\";\"Krasnoarmeyskoye\";\"other\"\n\"704422\";\"Krassnoarmeiskoje\";\"other\"\n\"704422\";\"КРАСНОАРМЕЙСК\";\"other\"\n\"704422\";\"Красноармійськ\";\"other\"\n\"704469\";\"Krasna\";\"main\"\n\"704469\";\"Krasnaya\";\"other\"\n\"704469\";\"Krasnoye\";\"other\"\n\"704469\";\"Красна\";\"other\"\n\"704492\";\"Krasyliv\";\"main\"\n\"704492\";\"Krasiliv\";\"other\"\n\"704492\";\"Krasilov\";\"other\"\n\"704492\";\"Krasilow\";\"other\"\n\"704492\";\"Красилів\";\"other\"\n\"704508\";\"Kramators’k\";\"main\"\n\"704508\";\"Kramators'k\";\"ascii\"\n\"704508\";\"Kramatorsk\";\"other\"\n\"704508\";\"Kramatorskaja\";\"other\"\n\"704508\";\"Kramatorskaya\";\"other\"\n\"704508\";\"Краматорск\";\"other\"\n\"704508\";\"Краматорськ\";\"other\"\n\"704525\";\"Kozova\";\"main\"\n\"704525\";\"Kozovo\";\"other\"\n\"704525\";\"Kozowa\";\"other\"\n\"704525\";\"Козова\";\"other\"\n\"704565\";\"Kozhanka\";\"main\"\n\"704565\";\"Кожанка\";\"other\"\n\"704573\";\"Kozelets\";\"main\"\n\"704573\";\"Koselez\";\"other\"\n\"704573\";\"Kozelec\";\"other\"\n\"704573\";\"Козелец\";\"other\"\n\"704608\";\"Kivsharivka\";\"main\"\n\"704608\";\"Kivsarivka\";\"other\"\n\"704608\";\"Kovsharov\";\"other\"\n\"704608\";\"Kovsharovka\";\"other\"\n\"704608\";\"Ківшарівка\";\"other\"\n\"704617\";\"Kovel’\";\"main\"\n\"704617\";\"Kovel'\";\"ascii\"\n\"704617\";\"Kovel\";\"other\"\n\"704617\";\"Kowel\";\"other\"\n\"704617\";\"Ковель\";\"other\"\n\"704670\";\"Kotsyubinskoye\";\"main\"\n\"704670\";\"Berkovets\";\"other\"\n\"704670\";\"Imeni Kotsyubinskogo\";\"other\"\n\"704670\";\"Kocjubinskoe\";\"other\"\n\"704670\";\"Kotsyubinskogo\";\"other\"\n\"704670\";\"Коцюбинское\";\"other\"\n\"704679\";\"Kotovs’k\";\"main\"\n\"704679\";\"Kotovs'k\";\"ascii\"\n\"704679\";\"Birzula\";\"other\"\n\"704679\";\"Kotovsk\";\"other\"\n\"704679\";\"Kotowsk\";\"other\"\n\"704679\";\"Котовск\";\"other\"\n\"704724\";\"Kostyantynivka\";\"main\"\n\"704724\";\"Konstantinovka\";\"other\"\n\"704724\";\"Константиновка\";\"other\"\n\"704730\";\"Kostryzhivka\";\"main\"\n\"704730\";\"Costrijeni\";\"other\"\n\"704730\";\"Kostrizhevka\";\"other\"\n\"704730\";\"Kostrizhovka\";\"other\"\n\"704730\";\"Kostrizivka\";\"other\"\n\"704730\";\"Kostryzhuvka\";\"other\"\n\"704730\";\"Kostryzowka\";\"other\"\n\"704730\";\"Kostryzówka\";\"other\"\n\"704730\";\"Кострижівка\";\"other\"\n\"704764\";\"Kosiv\";\"main\"\n\"704764\";\"Kosov\";\"other\"\n\"704764\";\"Kosow\";\"other\"\n\"704764\";\"Kossow\";\"other\"\n\"704764\";\"Kossuv\";\"other\"\n\"704764\";\"Kosuv\";\"other\"\n\"704764\";\"Kosów\";\"other\"\n\"704764\";\"Косів\";\"other\"\n\"704772\";\"Kosmach\";\"main\"\n\"704772\";\"Космач\";\"other\"\n\"704773\";\"Kosmach\";\"main\"\n\"704773\";\"Kosmacz\";\"other\"\n\"704773\";\"Kozmacz\";\"other\"\n\"704773\";\"Космач\";\"other\"\n\"704839\";\"Koryukivka\";\"main\"\n\"704839\";\"KORJUKOVKA\";\"other\"\n\"704839\";\"Karyukovka\";\"other\"\n\"704839\";\"Korukivka\";\"other\"\n\"704839\";\"Koryukovka\";\"other\"\n\"704839\";\"КОРЮКОВКА\";\"other\"\n\"704839\";\"Корюківка\";\"other\"\n\"704858\";\"Korsun’-Shevchenkivs’kyy\";\"main\"\n\"704858\";\"Korsun'-Shevchenkivs'kyy\";\"ascii\"\n\"704858\";\"Karun' Sheychenkovskaya\";\"other\"\n\"704858\";\"Karun’ Sheychenkovskaya\";\"other\"\n\"704858\";\"Korssun-Schewtschem Kowskij\";\"other\"\n\"704858\";\"Korsun'\";\"other\"\n\"704858\";\"Korsun'-Shevchenkovskij\";\"other\"\n\"704858\";\"Korsun'-Shevchenkovskiy\";\"other\"\n\"704858\";\"Korsun’\";\"other\"\n\"704858\";\"Korsun’-Shevchenkovskiy\";\"other\"\n\"704858\";\"Корсунь-Шевченковский\";\"other\"\n\"704881\";\"Korotych\";\"main\"\n\"704881\";\"KOROTYCH\";\"other\"\n\"704881\";\"Korotich\";\"other\"\n\"704881\";\"КОРОТЫЧ\";\"other\"\n\"704881\";\"Коротич\";\"other\"\n\"704885\";\"Korostyshiv\";\"main\"\n\"704885\";\"Korostisiv\";\"other\"\n\"704885\";\"Korostyshev\";\"other\"\n\"704885\";\"Коростишів\";\"other\"\n\"704885\";\"Коростышев\";\"other\"\n\"704901\";\"Korosten’\";\"main\"\n\"704901\";\"Korosten'\";\"ascii\"\n\"704901\";\"Korosten\";\"other\"\n\"704901\";\"Korostenj\";\"other\"\n\"704901\";\"Korosteń\";\"other\"\n\"704901\";\"Koroszteny\";\"other\"\n\"704901\";\"Коростень\";\"other\"\n\"704915\";\"Korop\";\"main\"\n\"704915\";\"KOROP\";\"other\"\n\"704915\";\"КОРОП\";\"other\"\n\"704920\";\"Korolevo\";\"main\"\n\"704920\";\"Kirakhaza\";\"other\"\n\"704920\";\"Kiralkhaza\";\"other\"\n\"704920\";\"Kiralyhaza\";\"other\"\n\"704920\";\"Királyháza\";\"other\"\n\"704920\";\"Koroleve\";\"other\"\n\"704920\";\"Kralovo na Tison\";\"other\"\n\"704920\";\"Kralovo nad Tisou\";\"other\"\n\"704920\";\"Королеве\";\"other\"\n\"704920\";\"Королево\";\"other\"\n\"704949\";\"Kornyn\";\"main\"\n\"704949\";\"Kornin\";\"other\"\n\"704949\";\"Корнин\";\"other\"\n\"704968\";\"Korets\";\"main\"\n\"704968\";\"Korec\";\"other\"\n\"704968\";\"Korzec\";\"other\"\n\"704968\";\"Korzhets\";\"other\"\n\"704968\";\"Kozhets\";\"other\"\n\"704968\";\"Корец\";\"other\"\n\"704972\";\"Koreiz\";\"main\"\n\"704972\";\"Кореиз\";\"other\"\n\"705016\";\"Kopychyntsi\";\"main\"\n\"705016\";\"Kopachintsy\";\"other\"\n\"705016\";\"Kopichintsy\";\"other\"\n\"705016\";\"Kopicinci\";\"other\"\n\"705016\";\"Kopychin'tse\";\"other\"\n\"705016\";\"Kopychintsa\";\"other\"\n\"705016\";\"Kopychintsy\";\"other\"\n\"705016\";\"Kopychin’tse\";\"other\"\n\"705016\";\"Kopychyn'tse\";\"other\"\n\"705016\";\"Kopychyn’tse\";\"other\"\n\"705016\";\"Kopyczynce\";\"other\"\n\"705016\";\"Kopyczyńce\";\"other\"\n\"705016\";\"Копичинці\";\"other\"\n\"705034\";\"Kopayhorod\";\"main\"\n\"705034\";\"Kopajgorod\";\"other\"\n\"705034\";\"Kopaygorod\";\"other\"\n\"705034\";\"Копайгород\";\"other\"\n\"705104\";\"Kostyantynivka\";\"main\"\n\"705104\";\"KONSTANTINOVKA\";\"other\"\n\"705104\";\"Konstantinovka\";\"other\"\n\"705104\";\"Konstantinowka\";\"other\"\n\"705104\";\"Kostantinivka\";\"other\"\n\"705104\";\"Kostjantyniwka\";\"other\"\n\"705104\";\"КОНСТАНТИНОВКА\";\"other\"\n\"705104\";\"Константиновка\";\"other\"\n\"705104\";\"Костянтинівка\";\"other\"\n\"705115\";\"Kostyantynivka\";\"main\"\n\"705115\";\"Konstantinovka\";\"other\"\n\"705115\";\"Konstantinovka Yedionkhta\";\"other\"\n\"705115\";\"Yedinokhta\";\"other\"\n\"705115\";\"Константиновка\";\"other\"\n\"705135\";\"Konotop\";\"main\"\n\"705135\";\"KONOTOP\";\"other\"\n\"705135\";\"КОНОТОП\";\"other\"\n\"705135\";\"Конотоп\";\"other\"\n\"705183\";\"Komsomol’s’ke\";\"main\"\n\"705183\";\"Komsomol's'ke\";\"ascii\"\n\"705183\";\"Komsomol'skoe\";\"other\"\n\"705183\";\"Komsomol'skoye\";\"other\"\n\"705183\";\"Komsomol’skoye\";\"other\"\n\"705183\";\"Комсомольское\";\"other\"\n\"705198\";\"Kompaniyivka\";\"main\"\n\"705198\";\"KOMPANEEVKA\";\"other\"\n\"705198\";\"Kompaneyevka\";\"other\"\n\"705198\";\"Kompaniivka\";\"other\"\n\"705198\";\"КОМПАНЕЕВКА\";\"other\"\n\"705198\";\"Компаніївка\";\"other\"\n\"705265\";\"Komarno\";\"main\"\n\"705265\";\"Комарно\";\"other\"\n\"705307\";\"Koloniya Zastav’ye\";\"main\"\n\"705307\";\"Koloniya Zastav'ye\";\"ascii\"\n\"705307\";\"Zastav'ye\";\"other\"\n\"705307\";\"Zastav’ye\";\"other\"\n\"705392\";\"Kolomyya\";\"main\"\n\"705392\";\"Colomeea\";\"other\"\n\"705392\";\"Kholomya\";\"other\"\n\"705392\";\"Kolomea\";\"other\"\n\"705392\";\"Kolomea-Ost\";\"other\"\n\"705392\";\"Kolomeo\";\"other\"\n\"705392\";\"Kolomija\";\"other\"\n\"705392\";\"Kolomyia\";\"other\"\n\"705392\";\"Kolomyja\";\"other\"\n\"705392\";\"Kołomyja\";\"other\"\n\"705392\";\"Коломия\";\"other\"\n\"705392\";\"Коломыя\";\"other\"\n\"705403\";\"Kolomak\";\"main\"\n\"705403\";\"KOLOMAK\";\"other\"\n\"705403\";\"КОЛОМАК\";\"other\"\n\"705431\";\"Kolodenka\";\"main\"\n\"705431\";\"Колоденка\";\"other\"\n\"705433\";\"Kolochava\";\"main\"\n\"705433\";\"Alsokalocsa\";\"other\"\n\"705433\";\"Alsókalocsa\";\"other\"\n\"705433\";\"Kolocava\";\"other\"\n\"705433\";\"Koločava\";\"other\"\n\"705433\";\"Nizhni Kolochava\";\"other\"\n\"705433\";\"Колочава\";\"other\"\n\"705442\";\"Kulevcha\";\"main\"\n\"705442\";\"Culevcea\";\"other\"\n\"705442\";\"Kolesnoye\";\"other\"\n\"705442\";\"Kolisne\";\"other\"\n\"705442\";\"Kolësnoye\";\"other\"\n\"705442\";\"Kulevchya\";\"other\"\n\"705442\";\"Кулевча\";\"other\"\n\"705493\";\"Kodyma\";\"main\"\n\"705493\";\"Kodima\";\"other\"\n\"705493\";\"Кодима\";\"other\"\n\"705493\";\"Кодыма\";\"other\"\n\"705494\";\"Kodra\";\"main\"\n\"705494\";\"Кодра\";\"other\"\n\"705512\";\"Kochetok\";\"main\"\n\"705512\";\"KOCHETOK\";\"other\"\n\"705512\";\"Kochegok\";\"other\"\n\"705512\";\"КОЧЕТОК\";\"other\"\n\"705524\";\"Kobyzhcha\";\"main\"\n\"705524\";\"Kobizhcha\";\"other\"\n\"705524\";\"Kobyzhchi\";\"other\"\n\"705524\";\"Кобижча\";\"other\"\n\"705524\";\"Кобыжча\";\"other\"\n\"705540\";\"Kobleve\";\"main\"\n\"705540\";\"Koblevo\";\"other\"\n\"705540\";\"Koblewo\";\"other\"\n\"705540\";\"Коблеве\";\"other\"\n\"705540\";\"Коблево\";\"other\"\n\"705544\";\"Kobelyaky\";\"main\"\n\"705544\";\"KOBELJAKI\";\"other\"\n\"705544\";\"Kobelyaki\";\"other\"\n\"705544\";\"КОБЕЛЯКИ\";\"other\"\n\"705560\";\"Knyazhichi\";\"main\"\n\"705560\";\"Knjazhichi\";\"other\"\n\"705560\";\"Княжичи\";\"other\"\n\"705626\";\"Klishkivtsi\";\"main\"\n\"705626\";\"Cliscauti\";\"other\"\n\"705626\";\"Clişcăuţi\";\"other\"\n\"705626\";\"Klishkauts'\";\"other\"\n\"705626\";\"Klishkauts’\";\"other\"\n\"705626\";\"Klishkovtsy\";\"other\"\n\"705626\";\"Kliskivci\";\"other\"\n\"705626\";\"Клішківці\";\"other\"\n\"705673\";\"Klenovyy\";\"main\"\n\"705673\";\"Klenovij\";\"other\"\n\"705673\";\"Кленовий\";\"other\"\n\"705681\";\"Klembivka\";\"main\"\n\"705681\";\"Klembovka\";\"other\"\n\"705681\";\"Клембівка\";\"other\"\n\"705689\";\"Klavdiyevo-Tarasove\";\"main\"\n\"705689\";\"Dachi Klavdiyevo\";\"other\"\n\"705689\";\"Klavdievo-Tarasove\";\"other\"\n\"705689\";\"Klavdievo-Tarasovo\";\"other\"\n\"705689\";\"Klavdiyevo-Tarasovo\";\"other\"\n\"705689\";\"Клавдиево-Тарасово\";\"other\"\n\"705689\";\"Клавдіэво-Тарасове\";\"other\"\n\"705730\";\"Kivertsy\";\"main\"\n\"705730\";\"Kiverci\";\"other\"\n\"705730\";\"Kivertse\";\"other\"\n\"705730\";\"Kivertsi\";\"other\"\n\"705730\";\"Kiwerce\";\"other\"\n\"705730\";\"Ківерці\";\"other\"\n\"705809\";\"Kirovsk\";\"main\"\n\"705809\";\"Golubovka\";\"other\"\n\"705809\";\"KIROVSK\";\"other\"\n\"705809\";\"КИРОВСК\";\"other\"\n\"705812\";\"Kirovohrad\";\"main\"\n\"705812\";\"Elizavetgrad\";\"other\"\n\"705812\";\"KIROVOGRAD\";\"other\"\n\"705812\";\"Kirovo\";\"other\"\n\"705812\";\"Kirovograd\";\"other\"\n\"705812\";\"Kirowo\";\"other\"\n\"705812\";\"Kirowograd\";\"other\"\n\"705812\";\"Kirowohrad\";\"other\"\n\"705812\";\"Sinowjewsk\";\"other\"\n\"705812\";\"Yelizavetgrad\";\"other\"\n\"705812\";\"Yelizavety\";\"other\"\n\"705812\";\"Zinov'evsk\";\"other\"\n\"705812\";\"Zinov'yevsk\";\"other\"\n\"705812\";\"Zinovievsk\";\"other\"\n\"705812\";\"Zinov’evsk\";\"other\"\n\"705812\";\"Zinov’yevsk\";\"other\"\n\"705812\";\"kirovu~ofurado\";\"other\"\n\"705812\";\"qyrwbwgrd\";\"other\"\n\"705812\";\"КИРОВОГРАД\";\"other\"\n\"705812\";\"Кировоград\";\"other\"\n\"705812\";\"Кіровоград\";\"other\"\n\"705812\";\"קירובוגרד\";\"other\"\n\"705812\";\"キロヴォフラード\";\"other\"\n\"705852\";\"Kyrylivka\";\"main\"\n\"705852\";\"Kirilivka\";\"other\"\n\"705852\";\"Kirillovka\";\"other\"\n\"705852\";\"Кирилівка\";\"other\"\n\"705854\";\"Kirikovka\";\"main\"\n\"705854\";\"KIRIKOVKA\";\"other\"\n\"705854\";\"КИРИКОВКА\";\"other\"\n\"705883\";\"Kiliya\";\"main\"\n\"705883\";\"Chilia\";\"other\"\n\"705883\";\"Chilia Noua\";\"other\"\n\"705883\";\"Chilia-Noua\";\"other\"\n\"705883\";\"Chilia-Nouă\";\"other\"\n\"705883\";\"Kilaya\";\"other\"\n\"705883\";\"Kilia\";\"other\"\n\"705883\";\"Kilia Noue\";\"other\"\n\"705883\";\"Kilija\";\"other\"\n\"705883\";\"Kiliya Noua\";\"other\"\n\"705883\";\"Килия\";\"other\"\n\"705883\";\"Кілія\";\"other\"\n\"705914\";\"Khyriv\";\"main\"\n\"705914\";\"Chyrow\";\"other\"\n\"705914\";\"Chyrów\";\"other\"\n\"705914\";\"Hiriv\";\"other\"\n\"705914\";\"Khyrov\";\"other\"\n\"705914\";\"Khyruv\";\"other\"\n\"705914\";\"Kolo Chyrowa\";\"other\"\n\"705914\";\"Хирів\";\"other\"\n\"706165\";\"Khust\";\"main\"\n\"706165\";\"Chust\";\"other\"\n\"706165\";\"Guste\";\"other\"\n\"706165\";\"Huszt\";\"other\"\n\"706165\";\"Хуст\";\"other\"\n\"706200\";\"Khrystynivka\";\"main\"\n\"706200\";\"Christinowka\";\"other\"\n\"706200\";\"Hristinivka\";\"other\"\n\"706200\";\"Khristinivka\";\"other\"\n\"706200\";\"Khristinovka\";\"other\"\n\"706200\";\"Kristinovka\";\"other\"\n\"706200\";\"Христинівка\";\"other\"\n\"706232\";\"Khotov\";\"main\"\n\"706232\";\"Hotiv\";\"other\"\n\"706232\";\"Khotiv\";\"other\"\n\"706232\";\"Хотів\";\"other\"\n\"706244\";\"Khotyn\";\"main\"\n\"706244\";\"Chocim\";\"other\"\n\"706244\";\"Chocimi csata\";\"other\"\n\"706244\";\"Chotyn\";\"other\"\n\"706244\";\"Hotin\";\"other\"\n\"706244\";\"Khotin\";\"other\"\n\"706244\";\"Ĥotin\";\"other\"\n\"706244\";\"Хотин\";\"other\"\n\"706244\";\"Хотын\";\"other\"\n\"706271\";\"Khorostkiv\";\"main\"\n\"706271\";\"Chorostkow\";\"other\"\n\"706271\";\"Chorostków\";\"other\"\n\"706271\";\"Horostkiv\";\"other\"\n\"706271\";\"Khorostkov\";\"other\"\n\"706271\";\"Khorostkuv\";\"other\"\n\"706271\";\"Хоростків\";\"other\"\n\"706281\";\"Khorosheve\";\"main\"\n\"706281\";\"KHOROSHEVO\";\"other\"\n\"706281\";\"Khoroshevo\";\"other\"\n\"706281\";\"ХОРОШЕВО\";\"other\"\n\"706281\";\"Хорошеве\";\"other\"\n\"706289\";\"Khorol\";\"main\"\n\"706289\";\"KHOROL\";\"other\"\n\"706289\";\"ХОРОЛ\";\"other\"\n\"706335\";\"Kholmy\";\"main\"\n\"706335\";\"KHOLMY\";\"other\"\n\"706335\";\"Kholmi\";\"other\"\n\"706335\";\"ХОЛМЫ\";\"other\"\n\"706335\";\"Холми\";\"other\"\n\"706352\";\"Khodorov\";\"main\"\n\"706352\";\"Chodorov\";\"other\"\n\"706352\";\"Chodorow\";\"other\"\n\"706352\";\"Chodorów\";\"other\"\n\"706352\";\"Ходоров\";\"other\"\n\"706369\";\"Khmel’nyts’kyy\";\"main\"\n\"706369\";\"Khmel'nyts'kyy\";\"ascii\"\n\"706369\";\"Kamelnitskiy\";\"other\"\n\"706369\";\"Khmel'nickij\";\"other\"\n\"706369\";\"Khmel'nitskiy\";\"other\"\n\"706369\";\"Khmelinitski\";\"other\"\n\"706369\";\"Khmel’nitskiy\";\"other\"\n\"706369\";\"Proskurov\";\"other\"\n\"706369\";\"Proskurovak\";\"other\"\n\"706369\";\"Proskurow\";\"other\"\n\"706369\";\"Хмельницкий\";\"other\"\n\"706380\";\"Khmil’nyk\";\"main\"\n\"706380\";\"Khmil'nyk\";\"ascii\"\n\"706380\";\"Khmel'nik\";\"other\"\n\"706380\";\"Khmel'niki\";\"other\"\n\"706380\";\"Khmel’nik\";\"other\"\n\"706380\";\"Khmel’niki\";\"other\"\n\"706380\";\"Khmil'nik\";\"other\"\n\"706380\";\"Хмельник\";\"other\"\n\"706380\";\"Хмільник\";\"other\"\n\"706434\";\"Khymchyn\";\"main\"\n\"706434\";\"Khimchin\";\"other\"\n\"706434\";\"Khomchin\";\"other\"\n\"706434\";\"Химчин\";\"other\"\n\"706448\";\"Kherson\";\"main\"\n\"706448\";\"Cherson\";\"other\"\n\"706448\";\"Chersonas\";\"other\"\n\"706448\";\"Chersoń\";\"other\"\n\"706448\";\"H'erson\";\"other\"\n\"706448\";\"Herson\";\"other\"\n\"706448\";\"he er song\";\"other\"\n\"706448\";\"heleuson\";\"other\"\n\"706448\";\"hrswn\";\"other\"\n\"706448\";\"Ĥerson\";\"other\"\n\"706448\";\"Херсон\";\"other\"\n\"706448\";\"חרסון\";\"other\"\n\"706448\";\"赫尔松\";\"other\"\n\"706448\";\"헤르손\";\"other\"\n\"706466\";\"Khartsyzsk\";\"main\"\n\"706466\";\"Kharcyzsk\";\"other\"\n\"706466\";\"Khartsysk\";\"other\"\n\"706466\";\"Харцызск\";\"other\"\n\"706483\";\"Kharkiv\";\"main\"\n\"706483\";\"Carcovia\";\"other\"\n\"706483\";\"Carcóvia\";\"other\"\n\"706483\";\"Charcovia\";\"other\"\n\"706483\";\"Charkiv\";\"other\"\n\"706483\";\"Charkiw\";\"other\"\n\"706483\";\"Charkov\";\"other\"\n\"706483\";\"Charkovas\";\"other\"\n\"706483\";\"Charkow\";\"other\"\n\"706483\";\"Charków\";\"other\"\n\"706483\";\"Harkiv\";\"other\"\n\"706483\";\"Harkiva\";\"other\"\n\"706483\";\"Harkivo\";\"other\"\n\"706483\";\"Harkov\";\"other\"\n\"706483\";\"Harkova\";\"other\"\n\"706483\";\"Jarkov\";\"other\"\n\"706483\";\"KHAR'KOV\";\"other\"\n\"706483\";\"Khar'kov\";\"other\"\n\"706483\";\"Kharkov\";\"other\"\n\"706483\";\"Khar’kov\";\"other\"\n\"706483\";\"ha er ke fu\";\"other\"\n\"706483\";\"haleukiu\";\"other\"\n\"706483\";\"harikofu\";\"other\"\n\"706483\";\"hrqwb\";\"other\"\n\"706483\";\"kharkwf\";\"other\"\n\"706483\";\"Ĥarkivo\";\"other\"\n\"706483\";\"Ĥarkov\";\"other\"\n\"706483\";\"ХАРЬКОВ\";\"other\"\n\"706483\";\"Харков\";\"other\"\n\"706483\";\"Харків\";\"other\"\n\"706483\";\"Харьков\";\"other\"\n\"706483\";\"חרקוב\";\"other\"\n\"706483\";\"خاركوف\";\"other\"\n\"706483\";\"ხარკოვი\";\"other\"\n\"706483\";\"ハリコフ\";\"other\"\n\"706483\";\"哈爾科夫\";\"other\"\n\"706483\";\"하르키우\";\"other\"\n\"706524\";\"Kerch\";\"main\"\n\"706524\";\"Bospor\";\"other\"\n\"706524\";\"Bospora\";\"other\"\n\"706524\";\"KERCH'\";\"other\"\n\"706524\";\"Kerc\";\"other\"\n\"706524\";\"Kerch'\";\"other\"\n\"706524\";\"Kerch’\";\"other\"\n\"706524\";\"Kerco\";\"other\"\n\"706524\";\"Kercz\";\"other\"\n\"706524\";\"Kertch\";\"other\"\n\"706524\";\"Kertj\";\"other\"\n\"706524\";\"Kerts\";\"other\"\n\"706524\";\"Kertsch\";\"other\"\n\"706524\";\"Kertsj\";\"other\"\n\"706524\";\"Kertš\";\"other\"\n\"706524\";\"Kerç\";\"other\"\n\"706524\";\"Kerĉo\";\"other\"\n\"706524\";\"Panticapaeum\";\"other\"\n\"706524\";\"Pantikapea\";\"other\"\n\"706524\";\"krch\";\"other\"\n\"706524\";\"КЕРЧЬ\";\"other\"\n\"706524\";\"Керч\";\"other\"\n\"706524\";\"Керчь\";\"other\"\n\"706524\";\"کرچ\";\"other\"\n\"706546\";\"Kehychivka\";\"main\"\n\"706546\";\"KEGICHEVKA\";\"other\"\n\"706546\";\"Kegichevka\";\"other\"\n\"706546\";\"Kegichëvka\";\"other\"\n\"706546\";\"Kegicivka\";\"other\"\n\"706546\";\"КЕГИЧЕВКА\";\"other\"\n\"706546\";\"Кегичівка\";\"other\"\n\"706571\";\"Kozyatyn\";\"main\"\n\"706571\";\"Kasatin\";\"other\"\n\"706571\";\"Kazatin\";\"other\"\n\"706571\";\"Kozjatin\";\"other\"\n\"706571\";\"Козятин\";\"other\"\n\"706580\";\"Kazanka\";\"main\"\n\"706580\";\"Kanzanka\";\"other\"\n\"706580\";\"Kazanko\";\"other\"\n\"706580\";\"Kazavka\";\"other\"\n\"706580\";\"Kazenka\";\"other\"\n\"706580\";\"Казанка\";\"other\"\n\"706596\";\"Kozachi Laheri\";\"main\"\n\"706596\";\"Kazach'i\";\"other\"\n\"706596\";\"Kazach'i Lageri\";\"other\"\n\"706596\";\"Kazach’i\";\"other\"\n\"706596\";\"Kazach’i Lageri\";\"other\"\n\"706596\";\"Kozaci Lageri\";\"other\"\n\"706596\";\"Козачі Лагері\";\"other\"\n\"706604\";\"Kaydaki\";\"main\"\n\"706604\";\"Koydaki\";\"other\"\n\"706604\";\"Starye Kodaki\";\"other\"\n\"706604\";\"Старые Кодаки\";\"other\"\n\"706612\";\"Katyuzhanka\";\"main\"\n\"706612\";\"Katjuzhanka\";\"other\"\n\"706612\";\"Катюжанка\";\"other\"\n\"706749\";\"Karlivka\";\"main\"\n\"706749\";\"KARLOVKA\";\"other\"\n\"706749\";\"Karlovka\";\"other\"\n\"706749\";\"Karlowka\";\"other\"\n\"706749\";\"КАРЛОВКА\";\"other\"\n\"706749\";\"Карлівка\";\"other\"\n\"706757\";\"Soledar\";\"main\"\n\"706757\";\"Imeni Karla Libknekhta\";\"other\"\n\"706757\";\"Karla Libknekhta\";\"other\"\n\"706757\";\"Karlo-Libknekhtovo\";\"other\"\n\"706757\";\"Karlo-Libknekhtovsk\";\"other\"\n\"706757\";\"Poselok\";\"other\"\n\"706757\";\"SOLEDAR\";\"other\"\n\"706757\";\"СОЛЕДАР\";\"other\"\n\"706803\";\"Karapyshi\";\"main\"\n\"706803\";\"Karapishi\";\"other\"\n\"706803\";\"Karapisi\";\"other\"\n\"706803\";\"Карапиші\";\"other\"\n\"706803\";\"Карапыши\";\"other\"\n\"706883\";\"Kapitanivka\";\"main\"\n\"706883\";\"KAPITANOVKA\";\"other\"\n\"706883\";\"Kapitanovka\";\"other\"\n\"706883\";\"КАПИТАНОВКА\";\"other\"\n\"706883\";\"Капітанівка\";\"other\"\n\"706900\";\"Kaniv\";\"main\"\n\"706900\";\"KANEV\";\"other\"\n\"706900\";\"Kanev\";\"other\"\n\"706900\";\"Kanew\";\"other\"\n\"706900\";\"Kanëv\";\"other\"\n\"706900\";\"КАНЕВ\";\"other\"\n\"706900\";\"Канів\";\"other\"\n\"706914\";\"Kamysh-Zarya\";\"main\"\n\"706914\";\"Kamysh-Zarja\";\"other\"\n\"706914\";\"Камыш-Заря\";\"other\"\n\"706915\";\"Kamyshnya\";\"main\"\n\"706915\";\"KAMYSHNJA\";\"other\"\n\"706915\";\"Komishnja\";\"other\"\n\"706915\";\"Komyshno\";\"other\"\n\"706915\";\"Komyshnya\";\"other\"\n\"706915\";\"КАМЫШНЯ\";\"other\"\n\"706915\";\"Комишня\";\"other\"\n\"706921\";\"Kamyshevka Vtoraya\";\"main\"\n\"706921\";\"Chemchelul Mare\";\"other\"\n\"706941\";\"Komyshuvakha\";\"main\"\n\"706941\";\"Kamyshevakha\";\"other\"\n\"706941\";\"Komishuvakha\";\"other\"\n\"706941\";\"Комишуваха\";\"other\"\n\"706945\";\"Komyshany\";\"main\"\n\"706945\";\"Arnautka\";\"other\"\n\"706945\";\"Kamyshany\";\"other\"\n\"706945\";\"Komishani\";\"other\"\n\"706945\";\"Комишани\";\"other\"\n\"706950\";\"Kam”yanets’-Podil’s’kyy\";\"main\"\n\"706950\";\"Kam\\\"yanets'-Podil's'kyy\";\"ascii\"\n\"706950\";\"Kamenec-Podol'skij\";\"other\"\n\"706950\";\"Kamenec-Podolski\";\"other\"\n\"706950\";\"Kamenets Podol'ski\";\"other\"\n\"706950\";\"Kamenets Podol’ski\";\"other\"\n\"706950\";\"Kamenets-Podilski\";\"other\"\n\"706950\";\"Kamenets-Podol'sk\";\"other\"\n\"706950\";\"Kamenets-Podol'skiy\";\"other\"\n\"706950\";\"Kamenets-Podolsk\";\"other\"\n\"706950\";\"Kamenets-Podol’sk\";\"other\"\n\"706950\";\"Kamenets-Podol’skiy\";\"other\"\n\"706950\";\"Kamenez-Podolsk\";\"other\"\n\"706950\";\"Kamianets-Podilskyi\";\"other\"\n\"706950\";\"Kamieniec Podolski\";\"other\"\n\"706950\";\"Kamjanets-Podilski\";\"other\"\n\"706950\";\"Kamjanets-Podilskyi\";\"other\"\n\"706950\";\"Kamjanez-Podilskyj\";\"other\"\n\"706950\";\"Кам'янець-Подільський\";\"other\"\n\"706950\";\"Каменец-Подолски\";\"other\"\n\"706950\";\"Каменец-Подольский\";\"other\"\n\"706987\";\"Kam”yani Potoky\";\"main\"\n\"706987\";\"Kam\\\"yani Potoky\";\"ascii\"\n\"706987\";\"Kamenno-Pototskoye\";\"other\"\n\"706987\";\"Kamennye_potoki\";\"other\"\n\"706987\";\"Kamennyye Potok\";\"other\"\n\"706987\";\"Kamennyye Potoki\";\"other\"\n\"706987\";\"Каменные_потоки\";\"other\"\n\"707002\";\"Kamennoye\";\"main\"\n\"707002\";\"Kamennoe\";\"other\"\n\"707002\";\"Millerovo\";\"other\"\n\"707002\";\"Каменное\";\"other\"\n\"707025\";\"Kamen’-Kashirskiy\";\"main\"\n\"707025\";\"Kamen'-Kashirskiy\";\"ascii\"\n\"707025\";\"Kamen' Koshirski\";\"other\"\n\"707025\";\"Kamen'-Kashirsk\";\"other\"\n\"707025\";\"Kamen'-Koshirskiy\";\"other\"\n\"707025\";\"Kamen-Koschyrski\";\"other\"\n\"707025\";\"Kamen’ Koshirski\";\"other\"\n\"707025\";\"Kamen’-Kashirsk\";\"other\"\n\"707025\";\"Kamen’-Koshirskiy\";\"other\"\n\"707025\";\"Kamien Koszyrski\";\"other\"\n\"707025\";\"Kamień Koszyrski\";\"other\"\n\"707052\";\"Kam”yanka\";\"main\"\n\"707052\";\"Kam\\\"yanka\";\"ascii\"\n\"707052\";\"KAMENKA\";\"other\"\n\"707052\";\"Kamenka\";\"other\"\n\"707052\";\"Kamenka-Shevchenkovskaya\";\"other\"\n\"707052\";\"Kamianka\";\"other\"\n\"707052\";\"КАМЕНКА\";\"other\"\n\"707099\";\"Kalush\";\"main\"\n\"707099\";\"Kalouch\";\"other\"\n\"707099\";\"Kalusz\";\"other\"\n\"707099\";\"Katusz\";\"other\"\n\"707099\";\"Kałusz\";\"other\"\n\"707099\";\"karushu\";\"other\"\n\"707099\";\"Калуш\";\"other\"\n\"707099\";\"קאַלוש\";\"other\"\n\"707099\";\"カルシュ\";\"other\"\n\"707127\";\"Kalyny\";\"main\"\n\"707127\";\"Alsokalinfalva\";\"other\"\n\"707127\";\"Alsókálinfalva\";\"other\"\n\"707127\";\"Kalini\";\"other\"\n\"707127\";\"Kaliny\";\"other\"\n\"707127\";\"Калини\";\"other\"\n\"707155\";\"Kalynivka\";\"main\"\n\"707155\";\"Kalinivka\";\"other\"\n\"707155\";\"Kalinovka\";\"other\"\n\"707155\";\"Kalinovskiy\";\"other\"\n\"707155\";\"Калиновка\";\"other\"\n\"707155\";\"Калинівка\";\"other\"\n\"707220\";\"Kalchevaya\";\"main\"\n\"707220\";\"Calceva\";\"other\"\n\"707220\";\"Kal'chevo\";\"other\"\n\"707220\";\"Kalcheva\";\"other\"\n\"707220\";\"Kal’chevo\";\"other\"\n\"707220\";\"Калчева\";\"other\"\n\"707232\";\"Kalanchak\";\"main\"\n\"707232\";\"Каланчак\";\"other\"\n\"707244\";\"Kakhovka\";\"main\"\n\"707244\";\"Kachowka\";\"other\"\n\"707244\";\"Каховка\";\"other\"\n\"707245\";\"Kayiry\";\"main\"\n\"707245\";\"Kairi\";\"other\"\n\"707245\";\"Kairy\";\"other\"\n\"707245\";\"Zapadnyye Kairy\";\"other\"\n\"707245\";\"Каїри\";\"other\"\n\"707251\";\"Kaharlyk\";\"main\"\n\"707251\";\"KAGARLYK\";\"other\"\n\"707251\";\"Kagarlik\";\"other\"\n\"707251\";\"Kagarlyk\";\"other\"\n\"707251\";\"Kagorlyk\";\"other\"\n\"707251\";\"КАГАРЛЫК\";\"other\"\n\"707251\";\"Кагарлик\";\"other\"\n\"707257\";\"Kadubivtsi\";\"main\"\n\"707257\";\"Kadobeste\";\"other\"\n\"707257\";\"Kadobovtsy\";\"other\"\n\"707257\";\"Kadubivci\";\"other\"\n\"707257\";\"Кадубівці\";\"other\"\n\"707281\";\"Kacha\";\"main\"\n\"707281\";\"Aleksandro-Mikhaylovka\";\"other\"\n\"707281\";\"Кача\";\"other\"\n\"707292\";\"Izyum\";\"main\"\n\"707292\";\"IZJUM\";\"other\"\n\"707292\";\"ИЗЮМ\";\"other\"\n\"707296\";\"Izyaslav\";\"main\"\n\"707296\";\"Izjaslav\";\"other\"\n\"707296\";\"Izyaslavl'\";\"other\"\n\"707296\";\"Izyaslavl’\";\"other\"\n\"707296\";\"Изяслав\";\"other\"\n\"707308\";\"Izmayil\";\"main\"\n\"707308\";\"Ismail\";\"other\"\n\"707308\";\"Ismajil\";\"other\"\n\"707308\";\"Izmail\";\"other\"\n\"707308\";\"Izmaił\";\"other\"\n\"707308\";\"Tuchkov\";\"other\"\n\"707308\";\"İsmail\";\"other\"\n\"707308\";\"Ізмаїл\";\"other\"\n\"707308\";\"Измаил\";\"other\"\n\"707308\";\"Измаїл\";\"other\"\n\"707313\";\"Yizhivtsi\";\"main\"\n\"707313\";\"Idzesti\";\"other\"\n\"707313\";\"Izhevtsy\";\"other\"\n\"707313\";\"Izivci\";\"other\"\n\"707313\";\"Їжівці\";\"other\"\n\"707317\";\"Iza\";\"main\"\n\"707317\";\"Іза\";\"other\"\n\"707451\";\"Ivanivka\";\"main\"\n\"707451\";\"Ivanovka\";\"other\"\n\"707451\";\"Yanovka\";\"other\"\n\"707453\";\"Ivanivka\";\"main\"\n\"707453\";\"Ivanovka\";\"other\"\n\"707453\";\"Iwanowka\";\"other\"\n\"707453\";\"Иванівка\";\"other\"\n\"707471\";\"Ivano-Frankivs’k\";\"main\"\n\"707471\";\"Ivano-Frankivs'k\";\"ascii\"\n\"707471\";\"Ivano-Frankovsk\";\"other\"\n\"707471\";\"Stanislau\";\"other\"\n\"707471\";\"Stanislav\";\"other\"\n\"707471\";\"Stanislavov\";\"other\"\n\"707471\";\"Stanislavyv\";\"other\"\n\"707471\";\"Stanistawow\";\"other\"\n\"707471\";\"Stanistawów\";\"other\"\n\"707471\";\"Ивано-Франковск\";\"other\"\n\"707489\";\"Ivankiv\";\"main\"\n\"707489\";\"Ivankov\";\"other\"\n\"707489\";\"Iwankow\";\"other\"\n\"707489\";\"Иванків\";\"other\"\n\"707529\";\"Ispas\";\"main\"\n\"707529\";\"Испас\";\"other\"\n\"707559\";\"Irshava\";\"main\"\n\"707559\";\"Ilosva\";\"other\"\n\"707559\";\"Irsava\";\"other\"\n\"707559\";\"Iršava\";\"other\"\n\"707559\";\"Іршава\";\"other\"\n\"707559\";\"Иршава\";\"other\"\n\"707565\";\"Irpin’\";\"main\"\n\"707565\";\"Irpin'\";\"ascii\"\n\"707565\";\"Dachi Irpen'\";\"other\"\n\"707565\";\"Dachi Irpen’\";\"other\"\n\"707565\";\"IRPEN'\";\"other\"\n\"707565\";\"Irpen'\";\"other\"\n\"707565\";\"Irpen’\";\"other\"\n\"707565\";\"ИРПЕНЬ\";\"other\"\n\"707679\";\"Ilovays’k\";\"main\"\n\"707679\";\"Ilovays'k\";\"ascii\"\n\"707679\";\"Ilovaiskaia\";\"other\"\n\"707679\";\"Ilovajsk\";\"other\"\n\"707679\";\"Ilovayskaya\";\"other\"\n\"707679\";\"Иловайск\";\"other\"\n\"707688\";\"Illichivs’k\";\"main\"\n\"707688\";\"Illichivs'k\";\"ascii\"\n\"707688\";\"Il'ichevka\";\"other\"\n\"707688\";\"Il'ichevsk\";\"other\"\n\"707688\";\"Ilyitschovsk\";\"other\"\n\"707688\";\"Il’ichevka\";\"other\"\n\"707688\";\"Il’ichevsk\";\"other\"\n\"707688\";\"Il’ichëvsk\";\"other\"\n\"707688\";\"Ильичевск\";\"other\"\n\"707695\";\"Illintsi\";\"main\"\n\"707695\";\"Il'intsy\";\"other\"\n\"707695\";\"Illinci\";\"other\"\n\"707695\";\"Il’intsy\";\"other\"\n\"707695\";\"Иллінці\";\"other\"\n\"707744\";\"Ichnya\";\"main\"\n\"707744\";\"ICHNJA\";\"other\"\n\"707744\";\"Itschnja\";\"other\"\n\"707744\";\"Malaya Ichnya\";\"other\"\n\"707744\";\"ИЧНЯ\";\"other\"\n\"707752\";\"Horodok\";\"main\"\n\"707752\";\"Gorodok\";\"other\"\n\"707752\";\"Gorodok-Proskurovskiy\";\"other\"\n\"707753\";\"Horlivka\";\"main\"\n\"707753\";\"GORLOVKA\";\"other\"\n\"707753\";\"Gorlivka\";\"other\"\n\"707753\";\"Gorlovka\";\"other\"\n\"707753\";\"Gorlowka\";\"other\"\n\"707753\";\"Horliwka\";\"other\"\n\"707753\";\"ГОРЛОВКА\";\"other\"\n\"707753\";\"Горловка\";\"other\"\n\"707753\";\"Горлівка\";\"other\"\n\"707757\";\"Hlyboka\";\"main\"\n\"707757\";\"Adancata\";\"other\"\n\"707757\";\"Adynkata\";\"other\"\n\"707757\";\"Gliboka\";\"other\"\n\"707757\";\"Glibookaya\";\"other\"\n\"707757\";\"Glyboka\";\"other\"\n\"707757\";\"Glybokaya\";\"other\"\n\"707757\";\"Khliboka\";\"other\"\n\"707757\";\"Глибока\";\"other\"\n\"707758\";\"Hlukhiv\";\"main\"\n\"707758\";\"GLUKHOV\";\"other\"\n\"707758\";\"Gluchoff\";\"other\"\n\"707758\";\"Gluchow\";\"other\"\n\"707758\";\"Gluhiv\";\"other\"\n\"707758\";\"Glukhov\";\"other\"\n\"707758\";\"ГЛУХОВ\";\"other\"\n\"707758\";\"Глухів\";\"other\"\n\"707770\";\"Hvizd\";\"main\"\n\"707770\";\"Gvizd\";\"other\"\n\"707770\";\"Gvozd\";\"other\"\n\"707770\";\"Гвізд\";\"other\"\n\"707786\";\"Huty\";\"main\"\n\"707786\";\"GUTY\";\"other\"\n\"707786\";\"Guti\";\"other\"\n\"707786\";\"Guty\";\"other\"\n\"707786\";\"ГУТЫ\";\"other\"\n\"707786\";\"Гути\";\"other\"\n\"707840\";\"Husyatyn\";\"main\"\n\"707840\";\"Gusjatin\";\"other\"\n\"707840\";\"Gusyatin\";\"other\"\n\"707840\";\"Husiatyn\";\"other\"\n\"707840\";\"Гусятин\";\"other\"\n\"707860\";\"Hurzuf\";\"main\"\n\"707860\";\"Gursuf\";\"other\"\n\"707860\";\"Gurzuf\";\"other\"\n\"707860\";\"Гурзуф\";\"other\"\n\"707898\";\"Hulyaypole\";\"main\"\n\"707898\";\"GULJAJPOLE\";\"other\"\n\"707898\";\"Guljai-Pole\";\"other\"\n\"707898\";\"Gulyai Pole\";\"other\"\n\"707898\";\"Gulyaypole\";\"other\"\n\"707898\";\"ГУЛЯЙПОЛЕ\";\"other\"\n\"707928\";\"Gubinikha\";\"main\"\n\"707928\";\"Губиниха\";\"other\"\n\"708057\";\"Hryshkivtsi\";\"main\"\n\"708057\";\"Grishkovtsy\";\"other\"\n\"708057\";\"Griskivci\";\"other\"\n\"708057\";\"Гришківці\";\"other\"\n\"708082\";\"Hrymayliv\";\"main\"\n\"708082\";\"Grimajliv\";\"other\"\n\"708082\";\"Grimalov\";\"other\"\n\"708082\";\"Grimaylov\";\"other\"\n\"708082\";\"Grzhimalov\";\"other\"\n\"708082\";\"Grzhymalov\";\"other\"\n\"708082\";\"Grzymalow\";\"other\"\n\"708082\";\"Grzymałów\";\"other\"\n\"708082\";\"Gzhimaluv\";\"other\"\n\"708082\";\"Гримайлів\";\"other\"\n\"708181\";\"Hrebinka\";\"main\"\n\"708181\";\"GREBENKA\";\"other\"\n\"708181\";\"Grebenka\";\"other\"\n\"708181\";\"Grebenkovskiy\";\"other\"\n\"708181\";\"Grebinka\";\"other\"\n\"708181\";\"ГРЕБЕНКА\";\"other\"\n\"708181\";\"Гребінка\";\"other\"\n\"708210\";\"Gradizhsk\";\"main\"\n\"708210\";\"Градижск\";\"other\"\n\"708251\";\"Hostomel’\";\"main\"\n\"708251\";\"Hostomel'\";\"ascii\"\n\"708251\";\"Gostomel'\";\"other\"\n\"708251\";\"Gostomel’\";\"other\"\n\"708251\";\"Gostoml'\";\"other\"\n\"708251\";\"Gostoml’\";\"other\"\n\"708251\";\"Гостомель\";\"other\"\n\"708257\";\"Hoshcha\";\"main\"\n\"708257\";\"Goshcha\";\"other\"\n\"708257\";\"Goshha\";\"other\"\n\"708257\";\"Hoszcza\";\"other\"\n\"708257\";\"Гоща\";\"other\"\n\"708273\";\"Gorskoye\";\"main\"\n\"708273\";\"GORSKOE\";\"other\"\n\"708273\";\"ГОРСКОЕ\";\"other\"\n\"708313\";\"Gorodok\";\"main\"\n\"708313\";\"Gorodok-Yagellonskiy\";\"other\"\n\"708313\";\"Grodek\";\"other\"\n\"708313\";\"Grodek Jagiellonski\";\"other\"\n\"708313\";\"Grodok Jagiellonski\";\"other\"\n\"708313\";\"Grudek Yagellon'ski\";\"other\"\n\"708313\";\"Grudek Yagellon’ski\";\"other\"\n\"708313\";\"Grudek-Yagel'on'ski\";\"other\"\n\"708313\";\"Grudek-Yagel’on’ski\";\"other\"\n\"708313\";\"Gródek Jagielloński\";\"other\"\n\"708313\";\"Gródok Jagielloński\";\"other\"\n\"708313\";\"Городок\";\"other\"\n\"708320\";\"Horodnya\";\"main\"\n\"708320\";\"GORODNJA\";\"other\"\n\"708320\";\"Gorodnya\";\"other\"\n\"708320\";\"ГОРОДНЯ\";\"other\"\n\"708324\";\"Horodnytsya\";\"main\"\n\"708324\";\"Gorodnicja\";\"other\"\n\"708324\";\"Gorodnitsa\";\"other\"\n\"708324\";\"Городниця\";\"other\"\n\"708330\";\"Horodne\";\"main\"\n\"708330\";\"Chiishia\";\"other\"\n\"708330\";\"Chiishiya\";\"other\"\n\"708330\";\"Chiyshiya\";\"other\"\n\"708330\";\"Ciisia\";\"other\"\n\"708330\";\"Ciişia\";\"other\"\n\"708330\";\"Gorodneh\";\"other\"\n\"708330\";\"Gorodneye\";\"other\"\n\"708330\";\"Gorodnoye\";\"other\"\n\"708330\";\"Gradina\";\"other\"\n\"708330\";\"Horodnye\";\"other\"\n\"708330\";\"Ogorodnoye\";\"other\"\n\"708330\";\"Городнэ\";\"other\"\n\"708351\";\"Horodyshche\";\"main\"\n\"708351\";\"Gorodishche\";\"other\"\n\"708351\";\"Gorodishhe\";\"other\"\n\"708351\";\"Gorodyshche\";\"other\"\n\"708351\";\"Horodyszcze\";\"other\"\n\"708351\";\"Городище\";\"other\"\n\"708366\";\"Horodyshche\";\"main\"\n\"708366\";\"GORODISHHE\";\"other\"\n\"708366\";\"Gorodishche\";\"other\"\n\"708366\";\"Imeni G.I. Petrovskogo\";\"other\"\n\"708366\";\"Poselok Imeni G.I. Petrovskogo\";\"other\"\n\"708366\";\"Posëlok Imeni G.I. Petrovskogo\";\"other\"\n\"708366\";\"ГОРОДИЩЕ\";\"other\"\n\"708380\";\"Horodenka\";\"main\"\n\"708380\";\"Gorodenka\";\"other\"\n\"708380\";\"Gorodënka\";\"other\"\n\"708380\";\"Городенка\";\"other\"\n\"708403\";\"Hornostayivka\";\"main\"\n\"708403\";\"Gornostaivka\";\"other\"\n\"708403\";\"Gornostayevka\";\"other\"\n\"708403\";\"Gorostayevka\";\"other\"\n\"708403\";\"Горностаївка\";\"other\"\n\"708434\";\"Horinchovo\";\"main\"\n\"708434\";\"Gorinchovo\";\"other\"\n\"708434\";\"Gorincovo\";\"other\"\n\"708434\";\"Horinchove\";\"other\"\n\"708434\";\"Horincovo\";\"other\"\n\"708434\";\"Horinčovo\";\"other\"\n\"708434\";\"Горінчово\";\"other\"\n\"708569\";\"Holovyne\";\"main\"\n\"708569\";\"Golovin\";\"other\"\n\"708569\";\"Golovine\";\"other\"\n\"708569\";\"Golovino\";\"other\"\n\"708569\";\"Головине\";\"other\"\n\"708613\";\"Goloby\";\"main\"\n\"708613\";\"Holoby\";\"other\"\n\"708613\";\"Hołoby\";\"other\"\n\"708613\";\"Kholoby\";\"other\"\n\"708632\";\"Hola Prystan’\";\"main\"\n\"708632\";\"Hola Prystan'\";\"ascii\"\n\"708632\";\"Golaja Pristan'\";\"other\"\n\"708632\";\"Golaya Pristan'\";\"other\"\n\"708632\";\"Golaya Pristan’\";\"other\"\n\"708632\";\"Голая Пристань\";\"other\"\n\"708695\";\"Gnedin\";\"main\"\n\"708695\";\"Gnedyn'\";\"other\"\n\"708695\";\"Gnedyn’\";\"other\"\n\"708695\";\"Gnidyn\";\"other\"\n\"708695\";\"Hnidyn\";\"other\"\n\"708695\";\"Гнедин\";\"other\"\n\"708753\";\"Hlobyne\";\"main\"\n\"708753\";\"GLOBINO\";\"other\"\n\"708753\";\"Globine\";\"other\"\n\"708753\";\"Globino\";\"other\"\n\"708753\";\"ГЛОБИНО\";\"other\"\n\"708753\";\"Глобине\";\"other\"\n\"708784\";\"Glevakha\";\"main\"\n\"708784\";\"Глеваха\";\"other\"\n\"708878\";\"Heniches’k\";\"main\"\n\"708878\";\"Heniches'k\";\"ascii\"\n\"708878\";\"Genichesk\";\"other\"\n\"708878\";\"Genitschesk\";\"other\"\n\"708878\";\"Геническ\";\"other\"\n\"708898\";\"Hayvoron\";\"main\"\n\"708898\";\"Gaivoron\";\"other\"\n\"708898\";\"Gajvoron\";\"other\"\n\"708898\";\"Gayvoron\";\"other\"\n\"708898\";\"Гайворон\";\"other\"\n\"708901\";\"Haysyn\";\"main\"\n\"708901\";\"Gaisin\";\"other\"\n\"708901\";\"Gaissin\";\"other\"\n\"708901\";\"Gajsin\";\"other\"\n\"708901\";\"Gaysin\";\"other\"\n\"708901\";\"Гайсин\";\"other\"\n\"708953\";\"Gaspra\";\"main\"\n\"708953\";\"Гаспра\";\"other\"\n\"709054\";\"Hadyach\";\"main\"\n\"709054\";\"Gadjach\";\"other\"\n\"709054\";\"Gadyach\";\"other\"\n\"709054\";\"Гадяч\";\"other\"\n\"709071\";\"Frunzivka\";\"main\"\n\"709071\";\"Frunzovka\";\"other\"\n\"709071\";\"Zakhar'yevka\";\"other\"\n\"709071\";\"Zakharovka\";\"other\"\n\"709071\";\"Фрунзівка\";\"other\"\n\"709074\";\"Frunzevka\";\"main\"\n\"709074\";\"Shtormovoe\";\"other\"\n\"709074\";\"Штормовое\";\"other\"\n\"709075\";\"Partenit\";\"main\"\n\"709075\";\"Frunsenkoye\";\"other\"\n\"709075\";\"Партенит\";\"other\"\n\"709075\";\"Партеніт\";\"other\"\n\"709078\";\"Frunze\";\"main\"\n\"709078\";\"FRUNZE\";\"other\"\n\"709078\";\"ФРУНЗЕ\";\"other\"\n\"709082\";\"Frunze\";\"main\"\n\"709082\";\"Фрунзе\";\"other\"\n\"709112\";\"Foros\";\"main\"\n\"709112\";\"Phoros\";\"other\"\n\"709112\";\"Форос\";\"other\"\n\"709114\";\"Fontanka\";\"main\"\n\"709114\";\"Makagonka\";\"other\"\n\"709114\";\"Фонтанка\";\"other\"\n\"709161\";\"Feodosiya\";\"main\"\n\"709161\";\"Caffa\";\"other\"\n\"709161\";\"Feodosia\";\"other\"\n\"709161\";\"Feodosija\";\"other\"\n\"709161\";\"Feodossia\";\"other\"\n\"709161\";\"Feodossija\";\"other\"\n\"709161\";\"Fyeodosiya\";\"other\"\n\"709161\";\"Kaffa\";\"other\"\n\"709161\";\"Kefe\";\"other\"\n\"709161\";\"Teodosia\";\"other\"\n\"709161\";\"Teodozio\";\"other\"\n\"709161\";\"Teodozja\";\"other\"\n\"709161\";\"Teodòsia\";\"other\"\n\"709161\";\"Teodósia\";\"other\"\n\"709161\";\"Theodosia\";\"other\"\n\"709161\";\"Theodosie\";\"other\"\n\"709161\";\"Théodosie\";\"other\"\n\"709161\";\"feodoshiya\";\"other\"\n\"709161\";\"pe-odosiya\";\"other\"\n\"709161\";\"Феодосия\";\"other\"\n\"709161\";\"Феодосія\";\"other\"\n\"709161\";\"フェオドシヤ\";\"other\"\n\"709161\";\"페오도시야\";\"other\"\n\"709248\";\"Fastiv\";\"main\"\n\"709248\";\"Fastov\";\"other\"\n\"709248\";\"Fastow\";\"other\"\n\"709248\";\"Фастов\";\"other\"\n\"709248\";\"Фастів\";\"other\"\n\"709270\";\"Eskhar\";\"main\"\n\"709270\";\"EHSKHAR\";\"other\"\n\"709270\";\"Есхар\";\"other\"\n\"709270\";\"ЭСХАР\";\"other\"\n\"709276\";\"Energodar\";\"main\"\n\"709276\";\"Ehnergodar\";\"other\"\n\"709276\";\"Енергодар\";\"other\"\n\"709276\";\"Энергодар\";\"other\"\n\"709295\";\"Dzvinogrud\";\"main\"\n\"709295\";\"Zvenigorod\";\"other\"\n\"709295\";\"Zvenyhorod\";\"other\"\n\"709295\";\"Звенигород\";\"other\"\n\"709334\";\"Dzhankoy\";\"main\"\n\"709334\";\"Dshankoi\";\"other\"\n\"709334\";\"Dzhanhoi\";\"other\"\n\"709334\";\"Dzhankoi\";\"other\"\n\"709334\";\"Dzhankoj\";\"other\"\n\"709334\";\"Джанкой\";\"other\"\n\"709354\";\"Dzerzhyns’k\";\"main\"\n\"709354\";\"Dzerzhyns'k\";\"ascii\"\n\"709354\";\"DZERZHINSK\";\"other\"\n\"709354\";\"Dzerzhins'k\";\"other\"\n\"709354\";\"Dzerzhinsk\";\"other\"\n\"709354\";\"Imeni Dzerzhinskogo\";\"other\"\n\"709354\";\"ДЗЕРЖИНСК\";\"other\"\n\"709354\";\"Дзержинськ\";\"other\"\n\"709373\";\"Dymer\";\"main\"\n\"709373\";\"DYMER\";\"other\"\n\"709373\";\"Dimer\";\"other\"\n\"709373\";\"ДЫМЕР\";\"other\"\n\"709373\";\"Димер\";\"other\"\n\"709399\";\"Dvorichna\";\"main\"\n\"709399\";\"DVURECHNAJA\";\"other\"\n\"709399\";\"Dvoricna\";\"other\"\n\"709399\";\"Dvurechnaya\";\"other\"\n\"709399\";\"Dvuretshnaya\";\"other\"\n\"709399\";\"ДВУРЕЧНАЯ\";\"other\"\n\"709399\";\"Дворічна\";\"other\"\n\"709429\";\"Dunaivtsi\";\"main\"\n\"709429\";\"Dunaivci\";\"other\"\n\"709429\";\"Dunajewzy\";\"other\"\n\"709429\";\"Dunayevtsy\";\"other\"\n\"709429\";\"Dunayivtsi\";\"other\"\n\"709429\";\"Дунаївці\";\"other\"\n\"709450\";\"Duliby\";\"main\"\n\"709450\";\"Dulibi\";\"other\"\n\"709450\";\"Дуліби\";\"other\"\n\"709465\";\"Dudchany\";\"main\"\n\"709465\";\"Dudchani\";\"other\"\n\"709465\";\"Dudchino\";\"other\"\n\"709465\";\"Дудчани\";\"other\"\n\"709465\";\"Дудчаны\";\"other\"\n\"709493\";\"Dubrovytsya\";\"main\"\n\"709493\";\"Dabrowica\";\"other\"\n\"709493\";\"Dombrovitsa\";\"other\"\n\"709493\";\"Dubrovicja\";\"other\"\n\"709493\";\"Dubrovitsa\";\"other\"\n\"709493\";\"Dąbrowica\";\"other\"\n\"709493\";\"Дубровиця\";\"other\"\n\"709516\";\"Dubove\";\"main\"\n\"709516\";\"Dombo\";\"other\"\n\"709516\";\"Dombó\";\"other\"\n\"709516\";\"Dubovoye\";\"other\"\n\"709516\";\"Дубове\";\"other\"\n\"709540\";\"Dubno\";\"main\"\n\"709540\";\"Дубно\";\"other\"\n\"709546\";\"Dublyany\";\"main\"\n\"709546\";\"Dublany\";\"other\"\n\"709546\";\"Dubljani\";\"other\"\n\"709546\";\"Дубляни\";\"other\"\n\"709547\";\"Dublyany\";\"main\"\n\"709547\";\"Dobrowlany\";\"other\"\n\"709547\";\"Dublany\";\"other\"\n\"709547\";\"Dubljani\";\"other\"\n\"709547\";\"Дубляни\";\"other\"\n\"709584\";\"Druzhba\";\"main\"\n\"709584\";\"DRUZHBA\";\"other\"\n\"709584\";\"Khutor Mikhailovsky\";\"other\"\n\"709584\";\"Khutor Mikhaylovskiy\";\"other\"\n\"709584\";\"Mikhailovskaya Khutor\";\"other\"\n\"709584\";\"Mikhaylovskiy Khutor\";\"other\"\n\"709584\";\"ДРУЖБА\";\"other\"\n\"709587\";\"Druzhba\";\"main\"\n\"709587\";\"Tribukhovtsy\";\"other\"\n\"709587\";\"Trybukhivtsi\";\"other\"\n\"709587\";\"Дружба\";\"other\"\n\"709611\";\"Drogobych\";\"main\"\n\"709611\";\"Drogobich\";\"other\"\n\"709611\";\"Drogobycz\";\"other\"\n\"709611\";\"Drohobic\";\"other\"\n\"709611\";\"Drohobico\";\"other\"\n\"709611\";\"Drohobiĉ\";\"other\"\n\"709611\";\"Drohobiĉo\";\"other\"\n\"709611\";\"Drohobych\";\"other\"\n\"709611\";\"Drohobycz\";\"other\"\n\"709611\";\"Drohobytsch\";\"other\"\n\"709611\";\"Drohobytsj\";\"other\"\n\"709611\";\"dorohobichi\";\"other\"\n\"709611\";\"drwhwbyz'\";\"other\"\n\"709611\";\"Дрогобич\";\"other\"\n\"709611\";\"Дрогобыч\";\"other\"\n\"709611\";\"דרוהוביץ'\";\"other\"\n\"709611\";\"ドロホビチ\";\"other\"\n\"709630\";\"Drahovo\";\"main\"\n\"709630\";\"Dragovo\";\"other\"\n\"709630\";\"Drahove\";\"other\"\n\"709630\";\"Драгово\";\"other\"\n\"709643\";\"Drabiv\";\"main\"\n\"709643\";\"DRABOV\";\"other\"\n\"709643\";\"Drabov\";\"other\"\n\"709643\";\"ДРАБОВ\";\"other\"\n\"709643\";\"Драбів\";\"other\"\n\"709665\";\"Dovbysh\";\"main\"\n\"709665\";\"Dovbish\";\"other\"\n\"709665\";\"Markhlevsk\";\"other\"\n\"709665\";\"Довбиш\";\"other\"\n\"709717\";\"Donets’k\";\"main\"\n\"709717\";\"Donets'k\";\"ascii\"\n\"709717\";\"Donec'k\";\"other\"\n\"709717\";\"Doneck\";\"other\"\n\"709717\";\"Donetsk\";\"other\"\n\"709717\";\"Hughesovka\";\"other\"\n\"709717\";\"Jusowka\";\"other\"\n\"709717\";\"Juzovka\";\"other\"\n\"709717\";\"Stalin\";\"other\"\n\"709717\";\"Staline\";\"other\"\n\"709717\";\"Stalino\";\"other\"\n\"709717\";\"Uzivka\";\"other\"\n\"709717\";\"Yuzovka\";\"other\"\n\"709717\";\"Yuzovo\";\"other\"\n\"709717\";\"Донецк\";\"other\"\n\"709717\";\"Донецьк\";\"other\"\n\"709717\";\"Сталино\";\"other\"\n\"709717\";\"Сталіне\";\"other\"\n\"709717\";\"Сталіно\";\"other\"\n\"709717\";\"Юзовка\";\"other\"\n\"709717\";\"Юзівка\";\"other\"\n\"709740\";\"Domanivka\";\"main\"\n\"709740\";\"Domanevka\";\"other\"\n\"709740\";\"Доманівка\";\"other\"\n\"709755\";\"Dolyna\";\"main\"\n\"709755\";\"Dolina\";\"other\"\n\"709755\";\"Долина\";\"other\"\n\"709782\";\"Dolyns'ka\";\"main\"\n\"709782\";\"Dolinskaja\";\"other\"\n\"709782\";\"Dolinskaya\";\"other\"\n\"709782\";\"Dolinskoye\";\"other\"\n\"709782\";\"Schewtschenkowo\";\"other\"\n\"709782\";\"Shevchenkovo\";\"other\"\n\"709782\";\"Долинская\";\"other\"\n\"709808\";\"Dovhe\";\"main\"\n\"709808\";\"Dolga\";\"other\"\n\"709808\";\"Dolgoye\";\"other\"\n\"709808\";\"Dolha\";\"other\"\n\"709808\";\"Dovge\";\"other\"\n\"709808\";\"Довге\";\"other\"\n\"709835\";\"Dokuchayevsk\";\"main\"\n\"709835\";\"Dokuchaevsk\";\"other\"\n\"709835\";\"Yelenovskiy Kar'yer\";\"other\"\n\"709835\";\"Yelenovskiy Kar’yer\";\"other\"\n\"709835\";\"Yelenovskiye Kar'yery\";\"other\"\n\"709835\";\"Yelenovskiye Kar’yery\";\"other\"\n\"709835\";\"Докучаевск\";\"other\"\n\"709856\";\"Dobryanka\";\"main\"\n\"709856\";\"Dobrjanka\";\"other\"\n\"709856\";\"Dobrovelickivka\";\"other\"\n\"709856\";\"Добровеличківка\";\"other\"\n\"709856\";\"Добрянка\";\"other\"\n\"709869\";\"Dobre\";\"main\"\n\"709869\";\"Dobroye\";\"other\"\n\"709869\";\"Eski-Saray\";\"other\"\n\"709869\";\"Добре\";\"other\"\n\"709900\";\"Dobropol’ye\";\"main\"\n\"709900\";\"Dobropol'ye\";\"ascii\"\n\"709900\";\"Dobropol'e\";\"other\"\n\"709900\";\"Krasnoarmeyskiy Rudnik\";\"other\"\n\"709900\";\"Доброполье\";\"other\"\n\"709930\";\"Dnipropetrovsk\";\"main\"\n\"709930\";\"Dnepropetrovsk\";\"other\"\n\"709930\";\"Dnepropetrowsk\";\"other\"\n\"709930\";\"Dnetropetrovsk\";\"other\"\n\"709930\";\"Dniepropetrovsk\";\"other\"\n\"709930\";\"Dnipropetrovs'k\";\"other\"\n\"709930\";\"Dnjepropetrowsk\";\"other\"\n\"709930\";\"Ekaterinoslav\";\"other\"\n\"709930\";\"Ekaṭerinoslav\";\"other\"\n\"709930\";\"Iekaterinoslav\";\"other\"\n\"709930\";\"Katerynoslav\";\"other\"\n\"709930\";\"Yekaterinoslav\";\"other\"\n\"709930\";\"Днепропетровск\";\"other\"\n\"709930\";\"Дніпропетровськ\";\"other\"\n\"709930\";\"Екатеринослав\";\"other\"\n\"709932\";\"Dniprodzerzhyns’k\";\"main\"\n\"709932\";\"Dniprodzerzhyns'k\";\"ascii\"\n\"709932\";\"Dneprodsershinsk\";\"other\"\n\"709932\";\"Dneprodzerzhinsk\";\"other\"\n\"709932\";\"Dneprodzherzhinsk\";\"other\"\n\"709932\";\"Kamenskoye\";\"other\"\n\"709932\";\"Днепродзержинск\";\"other\"\n\"709940\";\"Dnipryany\";\"main\"\n\"709940\";\"Britany\";\"other\"\n\"709940\";\"Dnepryany\";\"other\"\n\"709940\";\"Dniprani\";\"other\"\n\"709940\";\"Дніпряни\";\"other\"\n\"709954\";\"Dniprovka\";\"main\"\n\"709954\";\"Dneprovka\";\"other\"\n\"709954\";\"Дніпровка\";\"other\"\n\"709960\";\"Dniprorudne\";\"main\"\n\"709960\";\"Dneprograd\";\"other\"\n\"709960\";\"Dneprorudnoe\";\"other\"\n\"709960\";\"Dneprorudnoye\";\"other\"\n\"709960\";\"Днепрорудное\";\"other\"\n\"709960\";\"Дніпрорудне\";\"other\"\n\"709983\";\"Dmytrivka\";\"main\"\n\"709983\";\"Dmitrovka\";\"other\"\n\"709983\";\"Дмитровка\";\"other\"\n\"710007\";\"Dmytrivka\";\"main\"\n\"710007\";\"Dmitrievka\";\"other\"\n\"710007\";\"Dmitriyevka\";\"other\"\n\"710007\";\"Dmitrovka\";\"other\"\n\"710007\";\"Дмитровка\";\"other\"\n\"710032\";\"Dymytrove\";\"main\"\n\"710032\";\"DIMITROVO\";\"other\"\n\"710032\";\"Dimitrove\";\"other\"\n\"710032\";\"Dimitrovo\";\"other\"\n\"710032\";\"ДИМИТРОВО\";\"other\"\n\"710032\";\"Димитрове\";\"other\"\n\"710033\";\"Dmytrivka\";\"main\"\n\"710033\";\"Deleni\";\"other\"\n\"710033\";\"Dimitresti\";\"other\"\n\"710033\";\"Dimitreşti\";\"other\"\n\"710033\";\"Dimitrovka\";\"other\"\n\"710033\";\"Dmitrivka\";\"other\"\n\"710033\";\"Dmitriyevka\";\"other\"\n\"710033\";\"Dmitrovka\";\"other\"\n\"710033\";\"Dumitresht'\";\"other\"\n\"710033\";\"Dumitreshti\";\"other\"\n\"710033\";\"Dumitresht’\";\"other\"\n\"710033\";\"Dumitresti\";\"other\"\n\"710033\";\"Dumitreşti\";\"other\"\n\"710033\";\"Дмитровка\";\"other\"\n\"710033\";\"Дмитрівка\";\"other\"\n\"710041\";\"Dykan’ka\";\"main\"\n\"710041\";\"Dykan'ka\";\"ascii\"\n\"710041\";\"Dikan'ka\";\"other\"\n\"710041\";\"Dikan’ka\";\"other\"\n\"710041\";\"Диканька\";\"other\"\n\"710071\";\"Desna\";\"main\"\n\"710071\";\"DESNA\";\"other\"\n\"710071\";\"ДЕСНА\";\"other\"\n\"710098\";\"Derhachy\";\"main\"\n\"710098\";\"DERGACHI\";\"other\"\n\"710098\";\"Dergachi\";\"other\"\n\"710098\";\"Dergatschi\";\"other\"\n\"710098\";\"Derhachi\";\"other\"\n\"710098\";\"ДЕРГАЧИ\";\"other\"\n\"710129\";\"Derazhnya\";\"main\"\n\"710129\";\"Derazhnja\";\"other\"\n\"710129\";\"Derazhnva\";\"other\"\n\"710129\";\"Деражня\";\"other\"\n\"710202\";\"Dilyatyn\";\"main\"\n\"710202\";\"Delatyn\";\"other\"\n\"710202\";\"Deljatin\";\"other\"\n\"710202\";\"Delyatin\";\"other\"\n\"710202\";\"Delyatino\";\"other\"\n\"710202\";\"Delyatyn\";\"other\"\n\"710202\";\"Делятин\";\"other\"\n\"710214\";\"Degtyari\";\"main\"\n\"710214\";\"DEGTJARI\";\"other\"\n\"710214\";\"Degtyary\";\"other\"\n\"710214\";\"ДЕГТЯРИ\";\"other\"\n\"710229\";\"Debal’tsevo\";\"main\"\n\"710229\";\"Debal'tsevo\";\"ascii\"\n\"710229\";\"Debal'cevo\";\"other\"\n\"710229\";\"Debalzewo\";\"other\"\n\"710229\";\"Дебальцево\";\"other\"\n\"710243\";\"Davydivka\";\"main\"\n\"710243\";\"Davideni\";\"other\"\n\"710243\";\"Davidino\";\"other\"\n\"710243\";\"Davidivka\";\"other\"\n\"710243\";\"Davidovka\";\"other\"\n\"710243\";\"Davydovka\";\"other\"\n\"710243\";\"Давидівка\";\"other\"\n\"710260\";\"Dashev\";\"main\"\n\"710260\";\"Dashiv\";\"other\"\n\"710260\";\"Дашев\";\"other\"\n\"710260\";\"Дашів\";\"other\"\n\"710342\";\"Chutove\";\"main\"\n\"710342\";\"CHUTOVO\";\"other\"\n\"710342\";\"Chutovo\";\"other\"\n\"710342\";\"ЧУТОВО\";\"other\"\n\"710342\";\"Чутове\";\"other\"\n\"710368\";\"Chulakivka\";\"main\"\n\"710368\";\"Chulakovka\";\"other\"\n\"710368\";\"Chulokovka\";\"other\"\n\"710368\";\"Culakivka\";\"other\"\n\"710368\";\"Чулаківка\";\"other\"\n\"710374\";\"Chuhuyiv\";\"main\"\n\"710374\";\"CHUGUEV\";\"other\"\n\"710374\";\"Chuguyev\";\"other\"\n\"710374\";\"Cuguiv\";\"other\"\n\"710374\";\"Tschugujew\";\"other\"\n\"710374\";\"ЧУГУЕВ\";\"other\"\n\"710374\";\"Чугуїв\";\"other\"\n\"710381\";\"Chudniv\";\"main\"\n\"710381\";\"Chudnov\";\"other\"\n\"710381\";\"Cudniv\";\"other\"\n\"710381\";\"Tschudnow\";\"other\"\n\"710381\";\"Чуднів\";\"other\"\n\"710400\";\"Chortkiv\";\"main\"\n\"710400\";\"Chertkov\";\"other\"\n\"710400\";\"Chortkov\";\"other\"\n\"710400\";\"Chortkuv\";\"other\"\n\"710400\";\"Cortkiv\";\"other\"\n\"710400\";\"Czortkow\";\"other\"\n\"710400\";\"Czortków\";\"other\"\n\"710400\";\"Tschortkow\";\"other\"\n\"710400\";\"Чортков\";\"other\"\n\"710400\";\"Чортків\";\"other\"\n\"710408\";\"Chopovychi\";\"main\"\n\"710408\";\"Chapovichi\";\"other\"\n\"710408\";\"Chepovichi\";\"other\"\n\"710408\";\"Chopovichi\";\"other\"\n\"710408\";\"Copovici\";\"other\"\n\"710408\";\"Чоповичі\";\"other\"\n\"710409\";\"Chop\";\"main\"\n\"710409\";\"Chap\";\"other\"\n\"710409\";\"Cop\";\"other\"\n\"710409\";\"Csap\";\"other\"\n\"710409\";\"Csapi\";\"other\"\n\"710409\";\"Csop\";\"other\"\n\"710409\";\"Czop\";\"other\"\n\"710409\";\"Tschop\";\"other\"\n\"710409\";\"Čop\";\"other\"\n\"710409\";\"Чоп\";\"other\"\n\"710463\";\"Chynadiyovo\";\"main\"\n\"710463\";\"Chinadiyevo\";\"other\"\n\"710463\";\"Chynadiiovo\";\"other\"\n\"710463\";\"Chynadiyeve\";\"other\"\n\"710463\";\"Cinadijovo\";\"other\"\n\"710463\";\"Чинадійово\";\"other\"\n\"710473\";\"Chyhyryn\";\"main\"\n\"710473\";\"CHIGIRIN\";\"other\"\n\"710473\";\"Cehrin\";\"other\"\n\"710473\";\"Chigirin\";\"other\"\n\"710473\";\"Tchighin\";\"other\"\n\"710473\";\"Çehrin\";\"other\"\n\"710473\";\"ЧИГИРИН\";\"other\"\n\"710534\";\"Chervone\";\"main\"\n\"710534\";\"Chervonoye\";\"other\"\n\"710534\";\"Esman'\";\"other\"\n\"710534\";\"Esman’\";\"other\"\n\"710534\";\"Luzhki\";\"other\"\n\"710534\";\"Червоне\";\"other\"\n\"710538\";\"Chervone\";\"main\"\n\"710538\";\"Chervonnoye\";\"other\"\n\"710538\";\"Chervonoye\";\"other\"\n\"710538\";\"Червоне\";\"other\"\n\"710552\";\"Chervonohryhorivka\";\"main\"\n\"710552\";\"Cervonogrigorivka\";\"other\"\n\"710552\";\"Chervonogrigorovka\";\"other\"\n\"710552\";\"Krasnogrigor'yevka\";\"other\"\n\"710552\";\"Krasnogrigor’yevka\";\"other\"\n\"710552\";\"Червоногригорівка\";\"other\"\n\"710554\";\"Chervonograd\";\"main\"\n\"710554\";\"Kristinopol'\";\"other\"\n\"710554\";\"Kristinopol’\";\"other\"\n\"710554\";\"Krvstonopol\";\"other\"\n\"710554\";\"Krystynopol\";\"other\"\n\"710554\";\"Червоноград\";\"other\"\n\"710565\";\"Radyvyliv\";\"main\"\n\"710565\";\"Chervonoarmeysk\";\"other\"\n\"710565\";\"Chervonoarmiys'k\";\"other\"\n\"710565\";\"Chervonoarmiys’k\";\"other\"\n\"710565\";\"Radiviliv\";\"other\"\n\"710565\";\"Radzivilluv\";\"other\"\n\"710565\";\"Radzivilov\";\"other\"\n\"710565\";\"Радивилів\";\"other\"\n\"710587\";\"Chervonaya Sloboda\";\"main\"\n\"710587\";\"Chervona Sloboda\";\"other\"\n\"710587\";\"Chervonaja Sloboda\";\"other\"\n\"710587\";\"Chervonaya Slobodka\";\"other\"\n\"710587\";\"Krasnaya Sloboda\";\"other\"\n\"710587\";\"Червона Слобода\";\"other\"\n\"710587\";\"Червоная Слобода\";\"other\"\n\"710615\";\"Chortomlyk\";\"main\"\n\"710615\";\"Aleksandrovka\";\"other\"\n\"710615\";\"Alekseyevka\";\"other\"\n\"710615\";\"Chertomlyk\";\"other\"\n\"710615\";\"Chortomlik\";\"other\"\n\"710615\";\"Чортомлик\";\"other\"\n\"710652\";\"Chernyatyn\";\"main\"\n\"710652\";\"Chernjatin\";\"other\"\n\"710652\";\"Chernyatin\";\"other\"\n\"710652\";\"Czerniatyn\";\"other\"\n\"710652\";\"Чернятин\";\"other\"\n\"710653\";\"Chornyanka\";\"main\"\n\"710653\";\"Chernen'ka\";\"other\"\n\"710653\";\"Chernen’ka\";\"other\"\n\"710653\";\"Chernyanka\";\"other\"\n\"710653\";\"Chornjanka\";\"other\"\n\"710653\";\"Чорнянка\";\"other\"\n\"710663\";\"Chernyakhiv\";\"main\"\n\"710663\";\"Cernahiv\";\"other\"\n\"710663\";\"Chernyakhov\";\"other\"\n\"710663\";\"Черняхів\";\"other\"\n\"710669\";\"Chornukhy\";\"main\"\n\"710669\";\"CHERNUKHI\";\"other\"\n\"710669\";\"Chernukhi\";\"other\"\n\"710669\";\"Chornukhi\";\"other\"\n\"710669\";\"ЧЕРНУХИ\";\"other\"\n\"710669\";\"Чорнухи\";\"other\"\n\"710684\";\"Chornopillya\";\"main\"\n\"710684\";\"Chernopol'e\";\"other\"\n\"710684\";\"Chernopol'ye\";\"other\"\n\"710684\";\"Chernopol’ye\";\"other\"\n\"710684\";\"Chornopillja\";\"other\"\n\"710684\";\"Karachel'\";\"other\"\n\"710684\";\"Karachel’\";\"other\"\n\"710684\";\"Karachol'\";\"other\"\n\"710684\";\"Karachol’\";\"other\"\n\"710684\";\"Чернополье\";\"other\"\n\"710684\";\"Чорнопілля\";\"other\"\n\"710687\";\"Chornomors’ke\";\"main\"\n\"710687\";\"Chornomors'ke\";\"ascii\"\n\"710687\";\"Ak-Mechet'\";\"other\"\n\"710687\";\"Ak-Mechet’\";\"other\"\n\"710687\";\"Chernomorskoe\";\"other\"\n\"710687\";\"Chernomorskoye\";\"other\"\n\"710687\";\"Черноморское\";\"other\"\n\"710687\";\"Чорноморське\";\"other\"\n\"710698\";\"Chornoliztsi\";\"main\"\n\"710698\";\"Charnolozhtse\";\"other\"\n\"710698\";\"Charnolozhtsy\";\"other\"\n\"710698\";\"Chernolozhtsy\";\"other\"\n\"710698\";\"Chernoloztsy\";\"other\"\n\"710698\";\"Cornolizci\";\"other\"\n\"710698\";\"Чорнолізці\";\"other\"\n\"710715\";\"Chornobayivka\";\"main\"\n\"710715\";\"Chernoayevka\";\"other\"\n\"710715\";\"Chernobayevka\";\"other\"\n\"710715\";\"Chernovayevka\";\"other\"\n\"710715\";\"Cornobaivka\";\"other\"\n\"710715\";\"Чорнобаївка\";\"other\"\n\"710716\";\"Chornobay\";\"main\"\n\"710716\";\"CHERNOBAJ\";\"other\"\n\"710716\";\"Chernobay\";\"other\"\n\"710716\";\"Chornobaj\";\"other\"\n\"710716\";\"ЧЕРНОБАЙ\";\"other\"\n\"710716\";\"Чорнобай\";\"other\"\n\"710718\";\"Cherniyiv\";\"main\"\n\"710718\";\"Cerniiv\";\"other\"\n\"710718\";\"Cherneyev\";\"other\"\n\"710718\";\"Cherneyuv\";\"other\"\n\"710718\";\"Cherniyev\";\"other\"\n\"710718\";\"Czerniejow\";\"other\"\n\"710718\";\"Czerniejów\";\"other\"\n\"710718\";\"Черніїв\";\"other\"\n\"710719\";\"Chernivtsi\";\"main\"\n\"710719\";\"Cernauti\";\"other\"\n\"710719\";\"Cernivci\";\"other\"\n\"710719\";\"Cernivco\";\"other\"\n\"710719\";\"Cernovice\";\"other\"\n\"710719\";\"Cernăuţi\";\"other\"\n\"710719\";\"Chernehuc'\";\"other\"\n\"710719\";\"Chernovcy\";\"other\"\n\"710719\";\"Chernovits\";\"other\"\n\"710719\";\"Chernovitsy\";\"other\"\n\"710719\";\"Chernovtsy\";\"other\"\n\"710719\";\"Czerniowce\";\"other\"\n\"710719\";\"Czernowitz\";\"other\"\n\"710719\";\"Tchernivtsi\";\"other\"\n\"710719\";\"Tjernivtsi\";\"other\"\n\"710719\";\"Tschernowitz\";\"other\"\n\"710719\";\"Tsjernivtsi\";\"other\"\n\"710719\";\"cheleuniuchi\";\"other\"\n\"710719\";\"cherunifuchi\";\"other\"\n\"710719\";\"z'rnwbyz\";\"other\"\n\"710719\";\"Ĉernivco\";\"other\"\n\"710719\";\"Černovice\";\"other\"\n\"710719\";\"Черновцы\";\"other\"\n\"710719\";\"Чернэуць\";\"other\"\n\"710719\";\"Чернівці\";\"other\"\n\"710719\";\"צ'רנוביץ\";\"other\"\n\"710719\";\"チェルニフチ\";\"other\"\n\"710719\";\"체르니우치\";\"other\"\n\"710735\";\"Chernihiv\";\"main\"\n\"710735\";\"CHERNIGOV\";\"other\"\n\"710735\";\"Cernigiv\";\"other\"\n\"710735\";\"Cernigivo\";\"other\"\n\"710735\";\"Cernihivo\";\"other\"\n\"710735\";\"Chernigov\";\"other\"\n\"710735\";\"Csernyihiv\";\"other\"\n\"710735\";\"Czernihovia\";\"other\"\n\"710735\";\"Czernihow\";\"other\"\n\"710735\";\"Czernihów\";\"other\"\n\"710735\";\"Tchernihiv\";\"other\"\n\"710735\";\"Tschernigow\";\"other\"\n\"710735\";\"Tschernihiw\";\"other\"\n\"710735\";\"Tsernihiv\";\"other\"\n\"710735\";\"Tsjernihiv\";\"other\"\n\"710735\";\"Tšernihiv\";\"other\"\n\"710735\";\"qie er ni ge fu\";\"other\"\n\"710735\";\"Ĉernigivo\";\"other\"\n\"710735\";\"Ĉernihivo\";\"other\"\n\"710735\";\"ЧЕРНИГОВ\";\"other\"\n\"710735\";\"Чернигов\";\"other\"\n\"710735\";\"Чернігів\";\"other\"\n\"710735\";\"切尔尼戈夫\";\"other\"\n\"710741\";\"Chernivtsi\";\"main\"\n\"710741\";\"Chernevtsy\";\"other\"\n\"710741\";\"Chernovcy\";\"other\"\n\"710741\";\"Черновцы\";\"other\"\n\"710741\";\"Чернівці\";\"other\"\n\"710755\";\"Chernelytsya\";\"main\"\n\"710755\";\"Chernelicja\";\"other\"\n\"710755\";\"Chernelitsa\";\"other\"\n\"710755\";\"Chernelitse\";\"other\"\n\"710755\";\"Czernelica\";\"other\"\n\"710755\";\"Чернелиця\";\"other\"\n\"710791\";\"Cherkasy\";\"main\"\n\"710791\";\"CHERKASSY\";\"other\"\n\"710791\";\"Cerkasy\";\"other\"\n\"710791\";\"Cherkasi\";\"other\"\n\"710791\";\"Cherkassi\";\"other\"\n\"710791\";\"Cherkassy\";\"other\"\n\"710791\";\"Cserkaszi\";\"other\"\n\"710791\";\"Czerkasy\";\"other\"\n\"710791\";\"Tcherkassy\";\"other\"\n\"710791\";\"Tscherkassy\";\"other\"\n\"710791\";\"Tserkasso\";\"other\"\n\"710791\";\"Tserkasy\";\"other\"\n\"710791\";\"Tsjerkasy\";\"other\"\n\"710791\";\"Tšerkassõ\";\"other\"\n\"710791\";\"Tšerkasy\";\"other\"\n\"710791\";\"z'rqsy\";\"other\"\n\"710791\";\"Čerkasy\";\"other\"\n\"710791\";\"ЧЕРКАССЫ\";\"other\"\n\"710791\";\"Черкаси\";\"other\"\n\"710791\";\"Черкассы\";\"other\"\n\"710791\";\"צ'רקסי\";\"other\"\n\"710935\";\"Chaplynka\";\"main\"\n\"710935\";\"Chaplinka\";\"other\"\n\"710935\";\"Tschaplinka\";\"other\"\n\"710935\";\"Чаплинка\";\"other\"\n\"710940\";\"Chapayeve\";\"main\"\n\"710940\";\"CHAPAEVO\";\"other\"\n\"710940\";\"Chapaehve\";\"other\"\n\"710940\";\"Chapayevo\";\"other\"\n\"710940\";\"ЧАПАЕВО\";\"other\"\n\"710940\";\"Чапаэве\";\"other\"\n\"710947\";\"Chapayevka\";\"main\"\n\"710947\";\"Chapaevka\";\"other\"\n\"710947\";\"Чапаевка\";\"other\"\n\"710949\";\"Viytivka\";\"main\"\n\"710949\";\"Chapayevka\";\"other\"\n\"710949\";\"Viitivka\";\"other\"\n\"710949\";\"Vijtivka\";\"other\"\n\"710949\";\"Voytovka\";\"other\"\n\"710949\";\"Війтівка\";\"other\"\n\"710950\";\"Chapayevka\";\"main\"\n\"710950\";\"Chapaehvka\";\"other\"\n\"710950\";\"Chapaevka\";\"other\"\n\"710950\";\"Imeni Chapayeva\";\"other\"\n\"710950\";\"Imeni Tovarishcha Chapayeva\";\"other\"\n\"710950\";\"Чапаевка\";\"other\"\n\"710950\";\"Чапаэвка\";\"other\"\n\"710981\";\"Bytkiv\";\"main\"\n\"710981\";\"Bitkiv\";\"other\"\n\"710981\";\"Bitkov\";\"other\"\n\"710981\";\"Bitkuv\";\"other\"\n\"710981\";\"Bytkov\";\"other\"\n\"710981\";\"Битків\";\"other\"\n\"710995\";\"Bystrytsya\";\"main\"\n\"710995\";\"Bistricja\";\"other\"\n\"710995\";\"Bystrica\";\"other\"\n\"710995\";\"Bystritsa\";\"other\"\n\"710995\";\"Бистриця\";\"other\"\n\"710995\";\"Быстрица\";\"other\"\n\"711024\";\"Bykivka\";\"main\"\n\"711024\";\"Bikivka\";\"other\"\n\"711024\";\"Bykovka\";\"other\"\n\"711024\";\"Биківка\";\"other\"\n\"711105\";\"Bushtyno\";\"main\"\n\"711105\";\"Bushtina\";\"other\"\n\"711105\";\"Bushtino\";\"other\"\n\"711105\";\"Bushtyna\";\"other\"\n\"711105\";\"Bustino\";\"other\"\n\"711105\";\"Bustyahaza\";\"other\"\n\"711105\";\"Bustyaháza\";\"other\"\n\"711105\";\"Buštino\";\"other\"\n\"711105\";\"Буштино\";\"other\"\n\"711116\";\"Buryn’\";\"main\"\n\"711116\";\"Buryn'\";\"ascii\"\n\"711116\";\"Бурынь\";\"other\"\n\"711134\";\"Burshtyn\";\"main\"\n\"711134\";\"Ambar\";\"other\"\n\"711134\";\"Ambr\";\"other\"\n\"711134\";\"Ambra\";\"other\"\n\"711134\";\"Ambre\";\"other\"\n\"711134\";\"Baernsten\";\"other\"\n\"711134\";\"Barnsteen\";\"other\"\n\"711134\";\"Burschtyn\";\"other\"\n\"711134\";\"Burshtin\";\"other\"\n\"711134\";\"Burstron\";\"other\"\n\"711134\";\"Bursztyn\";\"other\"\n\"711134\";\"Bärnsten\";\"other\"\n\"711134\";\"Gintaras\";\"other\"\n\"711134\";\"Ho phach\";\"other\"\n\"711134\";\"Hổ phách\";\"other\"\n\"711134\";\"Jantar\";\"other\"\n\"711134\";\"Jantar'\";\"other\"\n\"711134\";\"Merevaik\";\"other\"\n\"711134\";\"Meripihka\";\"other\"\n\"711134\";\"Raf\";\"other\"\n\"711134\";\"Rav\";\"other\"\n\"711134\";\"Sucino\";\"other\"\n\"711134\";\"Sukceno\";\"other\"\n\"711134\";\"ampar\";\"other\"\n\"711134\";\"burushutin\";\"other\"\n\"711134\";\"hobag\";\"other\"\n\"711134\";\"hu po\";\"other\"\n\"711134\";\"kohaku\";\"other\"\n\"711134\";\"Âmbar\";\"other\"\n\"711134\";\"Бурштин\";\"other\"\n\"711134\";\"Бурштын\";\"other\"\n\"711134\";\"Янтарь\";\"other\"\n\"711134\";\"ענבר\";\"other\"\n\"711134\";\"அம்பர்\";\"other\"\n\"711134\";\"コハク\";\"other\"\n\"711134\";\"ブルシュティン\";\"other\"\n\"711134\";\"琥珀\";\"other\"\n\"711134\";\"호박\";\"other\"\n\"711268\";\"Budy\";\"main\"\n\"711268\";\"BUDY\";\"other\"\n\"711268\";\"Budi\";\"other\"\n\"711268\";\"БУДЫ\";\"other\"\n\"711268\";\"Буди\";\"other\"\n\"711348\";\"Buchach\";\"main\"\n\"711348\";\"Bucac\";\"other\"\n\"711348\";\"Buczacz\";\"other\"\n\"711348\";\"Bugach\";\"other\"\n\"711348\";\"Butjatj\";\"other\"\n\"711348\";\"Butschatsch\";\"other\"\n\"711348\";\"Bučač\";\"other\"\n\"711348\";\"Бучач\";\"other\"\n\"711348\";\"בוצ'אץ'\";\"other\"\n\"711350\";\"Bucha\";\"main\"\n\"711350\";\"Bychansk\";\"other\"\n\"711350\";\"Dachi Bucha\";\"other\"\n\"711350\";\"Буча\";\"other\"\n\"711359\";\"Bryukhovychi\";\"main\"\n\"711359\";\"Brjukhovichi\";\"other\"\n\"711359\";\"Bruhovici\";\"other\"\n\"711359\";\"Bryukhovichi\";\"other\"\n\"711359\";\"Brzuchowice\";\"other\"\n\"711359\";\"Bzhukhovitse\";\"other\"\n\"711359\";\"Брюховичи\";\"other\"\n\"711359\";\"Брюховичі\";\"other\"\n\"711369\";\"Bryanka\";\"main\"\n\"711369\";\"BRJANKA\";\"other\"\n\"711369\";\"Bryanskiy\";\"other\"\n\"711369\";\"Bryanskiy Rudnik\";\"other\"\n\"711369\";\"БРЯНКА\";\"other\"\n\"711382\";\"Brusyliv\";\"main\"\n\"711382\";\"Brusiliv\";\"other\"\n\"711382\";\"Brusilov\";\"other\"\n\"711382\";\"Brussilow\";\"other\"\n\"711382\";\"Брусилів\";\"other\"\n\"711390\";\"Brovary\";\"main\"\n\"711390\";\"BROVARY\";\"other\"\n\"711390\";\"Brovari\";\"other\"\n\"711390\";\"Browary\";\"other\"\n\"711390\";\"БРОВАРЫ\";\"other\"\n\"711390\";\"Бровари\";\"other\"\n\"711390\";\"Бровары\";\"other\"\n\"711398\";\"Broska\";\"main\"\n\"711398\";\"Broasca\";\"other\"\n\"711398\";\"Broaska\";\"other\"\n\"711398\";\"Броска\";\"other\"\n\"711400\";\"Broshniv-Osada\";\"main\"\n\"711400\";\"Broshnev\";\"other\"\n\"711400\";\"Broshnev-Osada\";\"other\"\n\"711400\";\"Broshnyuv\";\"other\"\n\"711400\";\"Brosniv-Osada\";\"other\"\n\"711400\";\"Oshnev-Osada\";\"other\"\n\"711400\";\"Брошнів-Осада\";\"other\"\n\"711416\";\"Brody\";\"main\"\n\"711416\";\"brodi\";\"other\"\n\"711416\";\"brody\";\"other\"\n\"711416\";\"brwdy\";\"other\"\n\"711416\";\"burodi\";\"other\"\n\"711416\";\"Броди\";\"other\"\n\"711416\";\"Броды\";\"other\"\n\"711416\";\"ברודי\";\"other\"\n\"711416\";\"ブロディ\";\"other\"\n\"711435\";\"Brylivka\";\"main\"\n\"711435\";\"Brilevka\";\"other\"\n\"711435\";\"Brilivka\";\"other\"\n\"711435\";\"Brilëvka\";\"other\"\n\"711435\";\"Брилiвка\";\"other\"\n\"711435\";\"Брилівка\";\"other\"\n\"711459\";\"Bratslav\";\"main\"\n\"711459\";\"Braclav\";\"other\"\n\"711459\";\"Brazlaw\";\"other\"\n\"711459\";\"Брацлав\";\"other\"\n\"711487\";\"Brailiv\";\"main\"\n\"711487\";\"Brailov\";\"other\"\n\"711515\";\"Boyarka\";\"main\"\n\"711515\";\"BOJARKA\";\"other\"\n\"711515\";\"Boyarka-Budayevka\";\"other\"\n\"711515\";\"Budayevka\";\"other\"\n\"711515\";\"БОЯРКА\";\"other\"\n\"711518\";\"Boyany\";\"main\"\n\"711518\";\"Bayan\";\"other\"\n\"711518\";\"Bayany\";\"other\"\n\"711518\";\"Boian\";\"other\"\n\"711518\";\"Bojani\";\"other\"\n\"711518\";\"Boyan\";\"other\"\n\"711518\";\"Бояни\";\"other\"\n\"711527\";\"Nikita\";\"main\"\n\"711527\";\"Botanicheskoye\";\"other\"\n\"711527\";\"Никита\";\"other\"\n\"711527\";\"Нікіта\";\"other\"\n\"711536\";\"Borzna\";\"main\"\n\"711536\";\"BORZNA\";\"other\"\n\"711536\";\"Borsna\";\"other\"\n\"711536\";\"БОРЗНА\";\"other\"\n\"711587\";\"Borshchiv\";\"main\"\n\"711587\";\"Berchev\";\"other\"\n\"711587\";\"Bershchev\";\"other\"\n\"711587\";\"Borshchev\";\"other\"\n\"711587\";\"Borshchov\";\"other\"\n\"711587\";\"Borshchuv\";\"other\"\n\"711587\";\"Borsiv\";\"other\"\n\"711587\";\"Borszczow\";\"other\"\n\"711587\";\"Borszczów\";\"other\"\n\"711587\";\"Борщів\";\"other\"\n\"711621\";\"Borova\";\"main\"\n\"711621\";\"BOROVAJA\";\"other\"\n\"711621\";\"Borovaya\";\"other\"\n\"711621\";\"БОРОВАЯ\";\"other\"\n\"711621\";\"Борова\";\"other\"\n\"711623\";\"Borova\";\"main\"\n\"711623\";\"Borovaja\";\"other\"\n\"711623\";\"Borovaya\";\"other\"\n\"711623\";\"Borowaja\";\"other\"\n\"711623\";\"Боровая\";\"other\"\n\"711629\";\"Boromlya\";\"main\"\n\"711629\";\"Boromlja\";\"other\"\n\"711629\";\"Боромля\";\"other\"\n\"711635\";\"Borodyanka\";\"main\"\n\"711635\";\"Borodjanka\";\"other\"\n\"711635\";\"Бородянка\";\"other\"\n\"711637\";\"Borodino\";\"main\"\n\"711637\";\"Saka\";\"other\"\n\"711637\";\"Бородіно\";\"other\"\n\"711660\";\"Boryspil’\";\"main\"\n\"711660\";\"Boryspil'\";\"ascii\"\n\"711660\";\"Borispilo\";\"other\"\n\"711660\";\"Borispol'\";\"other\"\n\"711660\";\"Borispol’\";\"other\"\n\"711660\";\"Boryspil\";\"other\"\n\"711660\";\"Boryspol\";\"other\"\n\"711660\";\"borisupiri\";\"other\"\n\"711660\";\"Борисполь\";\"other\"\n\"711660\";\"Бориспіль\";\"other\"\n\"711660\";\"ボリスピリ\";\"other\"\n\"711669\";\"Boryslav\";\"main\"\n\"711669\";\"Borislav\";\"other\"\n\"711669\";\"Borysxaw\";\"other\"\n\"711669\";\"Борислав\";\"other\"\n\"711752\";\"Bilshivtsi\";\"main\"\n\"711752\";\"Bolszowce\";\"other\"\n\"711752\";\"Boshovtse\";\"other\"\n\"711752\";\"Bołszowce\";\"other\"\n\"711841\";\"Bolhrad\";\"main\"\n\"711841\";\"Belgrad\";\"other\"\n\"711841\";\"Bolgrad\";\"other\"\n\"711841\";\"Болград\";\"other\"\n\"711850\";\"Bolekhiv\";\"main\"\n\"711850\";\"Bolechow\";\"other\"\n\"711850\";\"Bolechów\";\"other\"\n\"711850\";\"Bolehiv\";\"other\"\n\"711850\";\"Bolekhov\";\"other\"\n\"711850\";\"Bolekhuv\";\"other\"\n\"711850\";\"Болехів\";\"other\"\n\"711867\";\"Bohuslav\";\"main\"\n\"711867\";\"BOGUSLAV\";\"other\"\n\"711867\";\"Boguslav\";\"other\"\n\"711867\";\"Boguslaw\";\"other\"\n\"711867\";\"БОГУСЛАВ\";\"other\"\n\"711887\";\"Bohorodchany\";\"main\"\n\"711887\";\"Bogorodchani\";\"other\"\n\"711887\";\"Bogorodchany\";\"other\"\n\"711887\";\"Bohorodczany\";\"other\"\n\"711887\";\"Богородчани\";\"other\"\n\"711894\";\"Bohodukhiv\";\"main\"\n\"711894\";\"BOGODUKHOV\";\"other\"\n\"711894\";\"Bododukhov\";\"other\"\n\"711894\";\"Bogoduchow\";\"other\"\n\"711894\";\"Bogoduhiv\";\"other\"\n\"711894\";\"Bogodukhov\";\"other\"\n\"711894\";\"БОГОДУХОВ\";\"other\"\n\"711894\";\"Богодухів\";\"other\"\n\"711952\";\"Bohdan\";\"main\"\n\"711952\";\"Belaya Tissa\";\"other\"\n\"711952\";\"Bila Tisa\";\"other\"\n\"711952\";\"Bilá Tisa\";\"other\"\n\"711952\";\"Bogdan\";\"other\"\n\"711952\";\"Byala Tissa\";\"other\"\n\"711952\";\"Tiszabogboy\";\"other\"\n\"711952\";\"Tiszabogdany\";\"other\"\n\"711952\";\"Tiszabogdány\";\"other\"\n\"711952\";\"Богдан\";\"other\"\n\"711999\";\"Bobrovytsya\";\"main\"\n\"711999\";\"BOBROVICA\";\"other\"\n\"711999\";\"Bobrovicja\";\"other\"\n\"711999\";\"Bobrovisty\";\"other\"\n\"711999\";\"Bobrovitsa\";\"other\"\n\"711999\";\"Bobrovitsy\";\"other\"\n\"711999\";\"БОБРОВИЦА\";\"other\"\n\"711999\";\"Бобровиця\";\"other\"\n\"712003\";\"Bobrka\";\"main\"\n\"712003\";\"Бобрка\";\"other\"\n\"712023\";\"Bobovo\";\"main\"\n\"712023\";\"Bobove\";\"other\"\n\"712023\";\"Bobovoje\";\"other\"\n\"712023\";\"Bobovoye\";\"other\"\n\"712023\";\"Tisobiken'\";\"other\"\n\"712023\";\"Tiszaboekeny\";\"other\"\n\"712023\";\"Tiszabökény\";\"other\"\n\"712023\";\"Бобове\";\"other\"\n\"712023\";\"Тисобикень\";\"other\"\n\"712041\";\"Blyznyuky\";\"main\"\n\"712041\";\"BLIZNJUKI\";\"other\"\n\"712041\";\"Blisnezy\";\"other\"\n\"712041\";\"Bliznetsy\";\"other\"\n\"712041\";\"Bliznyuki\";\"other\"\n\"712041\";\"Staryye Bliznetsy\";\"other\"\n\"712041\";\"БЛИЗНЮКИ\";\"other\"\n\"712091\";\"Blahodatne\";\"main\"\n\"712091\";\"Amurosievka\";\"other\"\n\"712091\";\"Amvrosiyevka\";\"other\"\n\"712091\";\"Blagodatnoe\";\"other\"\n\"712091\";\"Blagodatnoye\";\"other\"\n\"712091\";\"Donetsko-Amvrosiyevka\";\"other\"\n\"712091\";\"Благодатное\";\"other\"\n\"712092\";\"Blagodatnoye\";\"main\"\n\"712092\";\"BLAGODATNOE\";\"other\"\n\"712092\";\"БЛАГОДАТНОЕ\";\"other\"\n\"712131\";\"Biryukove\";\"main\"\n\"712131\";\"BIRJUKOVO\";\"other\"\n\"712131\";\"Birjukowo\";\"other\"\n\"712131\";\"Birukove\";\"other\"\n\"712131\";\"Biryukovka\";\"other\"\n\"712131\";\"Biryukovo\";\"other\"\n\"712131\";\"Krinichnaya\";\"other\"\n\"712131\";\"БИРЮКОВО\";\"other\"\n\"712131\";\"Бірюкове\";\"other\"\n\"712160\";\"Bilhorod-Dnistrovs’kyy\";\"main\"\n\"712160\";\"Bilhorod-Dnistrovs'kyy\";\"ascii\"\n\"712160\";\"Akkerman\";\"other\"\n\"712160\";\"Belgorod-Dnestrovskij\";\"other\"\n\"712160\";\"Belgorod-Dnestrovskiy\";\"other\"\n\"712160\";\"Bilgorod-Dnistrovs'kij\";\"other\"\n\"712160\";\"Byelogorod\";\"other\"\n\"712160\";\"Cetatea Alba\";\"other\"\n\"712160\";\"Cetatea Albă\";\"other\"\n\"712160\";\"Белгород-Днестровский\";\"other\"\n\"712160\";\"Білгород-Дністровський\";\"other\"\n\"712165\";\"Bila Tserkva\";\"main\"\n\"712165\";\"Belaja Cerkov'\";\"other\"\n\"712165\";\"Belaja Zerkow\";\"other\"\n\"712165\";\"Belaya Tserkov'\";\"other\"\n\"712165\";\"Belaya Tserkov’\";\"other\"\n\"712165\";\"Biala Cerkiew\";\"other\"\n\"712165\";\"Biała Cerkiew\";\"other\"\n\"712165\";\"Bila Cerkva\";\"other\"\n\"712165\";\"Bila Zerkwa\";\"other\"\n\"712165\";\"Белая Церковь\";\"other\"\n\"712165\";\"Біла Церква\";\"other\"\n\"712165\";\"בילאיה-צרקוב\";\"other\"\n\"712165\";\"ビーラ・ツェールクヴァ\";\"other\"\n\"712181\";\"Bezimenne\";\"main\"\n\"712181\";\"Bezimennoye\";\"other\"\n\"712181\";\"Bezymennoe\";\"other\"\n\"712181\";\"Bezymennoye\";\"other\"\n\"712181\";\"Bezymenovka\";\"other\"\n\"712181\";\"Безыменное\";\"other\"\n\"712200\";\"Bezlyudivka\";\"main\"\n\"712200\";\"BEZLJUDOVKA\";\"other\"\n\"712200\";\"Bezludivka\";\"other\"\n\"712200\";\"Bezlyudovka\";\"other\"\n\"712200\";\"БЕЗЛЮДОВКА\";\"other\"\n\"712200\";\"Безлюдівка\";\"other\"\n\"712260\";\"Beryslav\";\"main\"\n\"712260\";\"Berislav\";\"other\"\n\"712260\";\"Berisslaw\";\"other\"\n\"712260\";\"Берислав\";\"other\"\n\"712276\";\"Berezovo\";\"main\"\n\"712276\";\"Berezna\";\"other\"\n\"712276\";\"Berezove\";\"other\"\n\"712276\";\"Березове\";\"other\"\n\"712276\";\"Березово\";\"other\"\n\"712300\";\"Berezivka\";\"main\"\n\"712300\";\"Berezovka\";\"other\"\n\"712300\";\"Berëzovka\";\"other\"\n\"712300\";\"Березовка\";\"other\"\n\"712312\";\"Berezivka\";\"main\"\n\"712312\";\"Beresovka\";\"other\"\n\"712312\";\"Beresowka\";\"other\"\n\"712312\";\"Berezovka\";\"other\"\n\"712312\";\"Berëzovka\";\"other\"\n\"712312\";\"Березовка\";\"other\"\n\"712336\";\"Bereznyky\";\"main\"\n\"712336\";\"Bereznik\";\"other\"\n\"712336\";\"Berezniki\";\"other\"\n\"712336\";\"Березники\";\"other\"\n\"712339\";\"Bereznehuvate\";\"main\"\n\"712339\";\"Bereznegovata\";\"other\"\n\"712339\";\"Bereznegovataya\";\"other\"\n\"712339\";\"Bereznegovatoye\";\"other\"\n\"712339\";\"Berezneguvate\";\"other\"\n\"712339\";\"Березнегувате\";\"other\"\n\"712343\";\"Berezna\";\"main\"\n\"712343\";\"BEREZNA\";\"other\"\n\"712343\";\"Beresna\";\"other\"\n\"712343\";\"БЕРЕЗНА\";\"other\"\n\"712349\";\"Berezyne\";\"main\"\n\"712349\";\"Berezina\";\"other\"\n\"712349\";\"Berezine\";\"other\"\n\"712349\";\"Berezino\";\"other\"\n\"712349\";\"Ratunda\";\"other\"\n\"712349\";\"Березине\";\"other\"\n\"712374\";\"Бережани\";\"main\"\n\"712374\";\"Berezhani\";\"ascii\"\n\"712374\";\"Berejani\";\"other\"\n\"712374\";\"Bereschany\";\"other\"\n\"712374\";\"Berezany\";\"other\"\n\"712374\";\"Berezhany\";\"other\"\n\"712374\";\"Berežany\";\"other\"\n\"712374\";\"Brzezany\";\"other\"\n\"712374\";\"Brzezhany\";\"other\"\n\"712374\";\"Brzeżany\";\"other\"\n\"712374\";\"Бережаны\";\"other\"\n\"712387\";\"Berezanka\";\"main\"\n\"712387\";\"Suvorovo\";\"other\"\n\"712387\";\"Tiligulo-Berezanka\";\"other\"\n\"712387\";\"Tiligulo-Berezannya\";\"other\"\n\"712387\";\"Березанка\";\"other\"\n\"712416\";\"Berestechko\";\"main\"\n\"712416\";\"Beresteczko\";\"other\"\n\"712416\";\"Beresteczo\";\"other\"\n\"712416\";\"Берестечко\";\"other\"\n\"712423\";\"Berehove\";\"main\"\n\"712423\";\"Beregove\";\"other\"\n\"712423\";\"Beregovo\";\"other\"\n\"712423\";\"Beregszasz\";\"other\"\n\"712423\";\"Beregszász\";\"other\"\n\"712423\";\"Berehovo\";\"other\"\n\"712423\";\"Berehowe\";\"other\"\n\"712423\";\"Berekhovo\";\"other\"\n\"712423\";\"belehobe\";\"other\"\n\"712423\";\"Берегове\";\"other\"\n\"712423\";\"Берегово\";\"other\"\n\"712423\";\"베레호베\";\"other\"\n\"712427\";\"Berehove\";\"main\"\n\"712427\";\"Beregovoe\";\"other\"\n\"712427\";\"Beregovoye\";\"other\"\n\"712427\";\"Korokel'\";\"other\"\n\"712427\";\"Korokel’\";\"other\"\n\"712427\";\"Берегове\";\"other\"\n\"712427\";\"Береговое\";\"other\"\n\"712430\";\"Berehomet\";\"main\"\n\"712430\";\"Barhumet\";\"other\"\n\"712430\";\"Beregomet\";\"other\"\n\"712430\";\"Bergomet\";\"other\"\n\"712430\";\"Berhomet\";\"other\"\n\"712430\";\"Berhomete pe Siret\";\"other\"\n\"712430\";\"Berkhomet\";\"other\"\n\"712430\";\"Berkhomet-pe-Siret\";\"other\"\n\"712430\";\"Берегомет\";\"other\"\n\"712441\";\"Berdychiv\";\"main\"\n\"712441\";\"Berdicev\";\"other\"\n\"712441\";\"Berdichen\";\"other\"\n\"712441\";\"Berdichev\";\"other\"\n\"712441\";\"Berdiciv\";\"other\"\n\"712441\";\"Berditchev\";\"other\"\n\"712441\";\"Berditschew\";\"other\"\n\"712441\";\"Berdičev\";\"other\"\n\"712441\";\"Berdyczow\";\"other\"\n\"712441\";\"Berdyczów\";\"other\"\n\"712441\";\"Berdytschiw\";\"other\"\n\"712441\";\"berudichifu\";\"other\"\n\"712441\";\"brdyz'b\";\"other\"\n\"712441\";\"Бердичев\";\"other\"\n\"712441\";\"Бердичів\";\"other\"\n\"712441\";\"ברדיצ'ב\";\"other\"\n\"712441\";\"ベルディチフ\";\"other\"\n\"712451\";\"Berdyans’k\";\"main\"\n\"712451\";\"Berdyans'k\";\"ascii\"\n\"712451\";\"BERDJANSK\";\"other\"\n\"712451\";\"Berdjansk\";\"other\"\n\"712451\";\"Osipenko\";\"other\"\n\"712451\";\"БЕРДЯНСК\";\"other\"\n\"712471\";\"Belz\";\"main\"\n\"712471\";\"Bele\";\"other\"\n\"712471\";\"Belza\";\"other\"\n\"712471\";\"Belzec\";\"other\"\n\"712471\";\"Белз\";\"other\"\n\"712477\";\"Bili Oslavy\";\"main\"\n\"712477\";\"Belyye Oslavy\";\"other\"\n\"712477\";\"Bili Oslavi\";\"other\"\n\"712477\";\"Oslav Byaly\";\"other\"\n\"712477\";\"Білі Ослави\";\"other\"\n\"712488\";\"Bilyayivka\";\"main\"\n\"712488\";\"Belyayevka\";\"other\"\n\"712488\";\"Bilaivka\";\"other\"\n\"712488\";\"Біляївка\";\"other\"\n\"712508\";\"Bilozerka\";\"main\"\n\"712508\";\"Belozerka\";\"other\"\n\"712508\";\"Belozërka\";\"other\"\n\"712508\";\"Білозерка\";\"other\"\n\"712515\";\"Beloye\";\"main\"\n\"712515\";\"BELOE\";\"other\"\n\"712515\";\"Beloe\";\"other\"\n\"712515\";\"Bile\";\"other\"\n\"712515\";\"БЕЛОЕ\";\"other\"\n\"712515\";\"Біле\";\"other\"\n\"712521\";\"Bilovods'k\";\"main\"\n\"712521\";\"Belovodsk\";\"other\"\n\"712521\";\"Belowodskoje\";\"other\"\n\"712521\";\"Беловодск\";\"other\"\n\"712559\";\"Bilopillya\";\"main\"\n\"712559\";\"BELOPOL'E\";\"other\"\n\"712559\";\"Belopol'ye\";\"other\"\n\"712559\";\"Belopolje\";\"other\"\n\"712559\";\"Belopol’ye\";\"other\"\n\"712559\";\"Bilopilla\";\"other\"\n\"712559\";\"БЕЛОПОЛЬЕ\";\"other\"\n\"712559\";\"Білопілля\";\"other\"\n\"712569\";\"Bilokurakyne\";\"main\"\n\"712569\";\"BELOKURAKINO\";\"other\"\n\"712569\";\"Belokurakino\";\"other\"\n\"712569\";\"Bilokurakine\";\"other\"\n\"712569\";\"БЕЛОКУРАКИНО\";\"other\"\n\"712569\";\"Білокуракине\";\"other\"\n\"712576\";\"Inkerman\";\"main\"\n\"712576\";\"Belokamensk\";\"other\"\n\"712576\";\"Inkyerman\";\"other\"\n\"712576\";\"Novyye Shuli\";\"other\"\n\"712576\";\"Инкерман\";\"other\"\n\"712587\";\"Bilohirs’k\";\"main\"\n\"712587\";\"Bilohirs'k\";\"ascii\"\n\"712587\";\"Belogorsk\";\"other\"\n\"712587\";\"Karassu Basar\";\"other\"\n\"712587\";\"Karasu\";\"other\"\n\"712587\";\"Karasubazar\";\"other\"\n\"712587\";\"Karasubozar\";\"other\"\n\"712588\";\"Belogorovka\";\"main\"\n\"712588\";\"BELOGOROVKA\";\"other\"\n\"712588\";\"БЕЛОГОРОВКА\";\"other\"\n\"712602\";\"Belki\";\"main\"\n\"712602\";\"Belka\";\"other\"\n\"712602\";\"Bil'ki\";\"other\"\n\"712602\";\"Bilki\";\"other\"\n\"712602\";\"Bilky\";\"other\"\n\"712602\";\"Bil’ki\";\"other\"\n\"712602\";\"Белка\";\"other\"\n\"712602\";\"Білки\";\"other\"\n\"712613\";\"Belitskoye\";\"main\"\n\"712613\";\"BELICKOE\";\"other\"\n\"712613\";\"Khutor Belitskiy\";\"other\"\n\"712613\";\"БЕЛИЦКОЕ\";\"other\"\n\"712656\";\"Bila Krynytsya\";\"main\"\n\"712656\";\"Belaya Krinitsa\";\"other\"\n\"712656\";\"Bila Krinica\";\"other\"\n\"712656\";\"Біла Криниця\";\"other\"\n\"712667\";\"Belaya\";\"main\"\n\"712667\";\"Bila\";\"other\"\n\"712667\";\"Біла\";\"other\"\n\"712682\";\"Bekhtery\";\"main\"\n\"712682\";\"Bekhteri\";\"other\"\n\"712682\";\"Бехтери\";\"other\"\n\"712715\";\"Bazaliya\";\"main\"\n\"712715\";\"Bazalia\";\"other\"\n\"712715\";\"Базалія\";\"other\"\n\"712745\";\"Baturyn\";\"main\"\n\"712745\";\"BATURIN\";\"other\"\n\"712745\";\"Baturin\";\"other\"\n\"712745\";\"batulin\";\"other\"\n\"712745\";\"БАТУРИН\";\"other\"\n\"712745\";\"Батурин\";\"other\"\n\"712745\";\"바투린\";\"other\"\n\"712775\";\"Bashtanka\";\"main\"\n\"712775\";\"Баштанка\";\"other\"\n\"712787\";\"Baryshivka\";\"main\"\n\"712787\";\"BARYSHEVKA\";\"other\"\n\"712787\";\"Barisivka\";\"other\"\n\"712787\";\"Baryshevka\";\"other\"\n\"712787\";\"Lipnyaki\";\"other\"\n\"712787\";\"БАРЫШЕВКА\";\"other\"\n\"712787\";\"Баришівка\";\"other\"\n\"712794\";\"Barvinkove\";\"main\"\n\"712794\";\"BARVENKOVO\";\"other\"\n\"712794\";\"Barvenkova\";\"other\"\n\"712794\";\"Barvenkovo\";\"other\"\n\"712794\";\"Barwenkowa\";\"other\"\n\"712794\";\"БАРВЕНКОВО\";\"other\"\n\"712794\";\"Барвінкове\";\"other\"\n\"712839\";\"Baranovka\";\"main\"\n\"712839\";\"Барановка\";\"other\"\n\"712861\";\"Bar\";\"main\"\n\"712861\";\"Бар\";\"other\"\n\"712871\";\"Banyliv\";\"main\"\n\"712871\";\"Baniliv\";\"other\"\n\"712871\";\"Banilov\";\"other\"\n\"712871\";\"Russish Banilya\";\"other\"\n\"712871\";\"Russkiy Banilov\";\"other\"\n\"712871\";\"Банилів\";\"other\"\n\"712886\";\"Balta\";\"main\"\n\"712886\";\"Балта\";\"other\"\n\"712895\";\"Balky\";\"main\"\n\"712895\";\"Balki\";\"other\"\n\"712895\";\"Балки\";\"other\"\n\"712926\";\"Balakliya\";\"main\"\n\"712926\";\"BALAKLEJA\";\"other\"\n\"712926\";\"Balakleya\";\"other\"\n\"712926\";\"Balaklia\";\"other\"\n\"712926\";\"БАЛАКЛЕЯ\";\"other\"\n\"712926\";\"Балаклія\";\"other\"\n\"712930\";\"Balaklava\";\"main\"\n\"712930\";\"Balaclava\";\"other\"\n\"712930\";\"Balaklavo\";\"other\"\n\"712930\";\"Balaklawa\";\"other\"\n\"712930\";\"Baliklava\";\"other\"\n\"712930\";\"Balıklava\";\"other\"\n\"712930\";\"Bałakława\";\"other\"\n\"712930\";\"Балаклава\";\"other\"\n\"712967\";\"Bakhmach\";\"main\"\n\"712967\";\"Bachmatsch\";\"other\"\n\"712967\";\"Bakhmach Romenskiy\";\"other\"\n\"712967\";\"Бахмач\";\"other\"\n\"712969\";\"Bakhchysaray\";\"main\"\n\"712969\";\"Bachashisarai\";\"other\"\n\"712969\";\"Bachischissarai\";\"other\"\n\"712969\";\"Bachtjisaraj\";\"other\"\n\"712969\";\"Bachtschyssaraj\";\"other\"\n\"712969\";\"Bachtsjisaraj\";\"other\"\n\"712969\";\"Bahcesaray\";\"other\"\n\"712969\";\"Bahcisarajo\";\"other\"\n\"712969\";\"Bahçesaray\";\"other\"\n\"712969\";\"Bakczysaraj\";\"other\"\n\"712969\";\"Bakhchisaray\";\"other\"\n\"712969\";\"Bakhehisaray\";\"other\"\n\"712969\";\"Baĥĉisarajo\";\"other\"\n\"712969\";\"bafuchisarai\";\"other\"\n\"712969\";\"baheuchisalai\";\"other\"\n\"712969\";\"bakhchisaraj\";\"other\"\n\"712969\";\"Бахчисарай\";\"other\"\n\"712969\";\"バフチサライ\";\"other\"\n\"712969\";\"바흐치사라이\";\"other\"\n\"712992\";\"Baherove\";\"main\"\n\"712992\";\"BAGEROVO\";\"other\"\n\"712992\";\"Bagarovo\";\"other\"\n\"712992\";\"Bagerove\";\"other\"\n\"712992\";\"Bagerovo\";\"other\"\n\"712992\";\"БАГЕРОВО\";\"other\"\n\"712992\";\"Багерове\";\"other\"\n\"713055\";\"Babanka\";\"main\"\n\"713055\";\"Babynka\";\"other\"\n\"713055\";\"Бабанка\";\"other\"\n\"713122\";\"Avdeyevka\";\"main\"\n\"713122\";\"AVDEEVKA\";\"other\"\n\"713122\";\"Avdiivka\";\"other\"\n\"713122\";\"Avdiyivka\";\"other\"\n\"713122\";\"Awdejewka\";\"other\"\n\"713122\";\"АВДЕЕВКА\";\"other\"\n\"713122\";\"Авдіївка\";\"other\"\n\"713126\";\"Auly\";\"main\"\n\"713126\";\"AULY\";\"other\"\n\"713126\";\"Auli\";\"other\"\n\"713126\";\"Romankovo\";\"other\"\n\"713126\";\"АУЛЫ\";\"other\"\n\"713126\";\"Аули\";\"other\"\n\"713154\";\"Askaniya Nova\";\"main\"\n\"713154\";\"Askania-Nova\";\"other\"\n\"713154\";\"Askanija-Nowo\";\"other\"\n\"713154\";\"Chapli\";\"other\"\n\"713154\";\"Асканiя-Нова\";\"other\"\n\"713154\";\"Асканія-Нова\";\"other\"\n\"713163\";\"Artsyz\";\"main\"\n\"713163\";\"Archiz\";\"other\"\n\"713163\";\"Arcis\";\"other\"\n\"713163\";\"Arciz\";\"other\"\n\"713163\";\"Arsis\";\"other\"\n\"713163\";\"Arsiz\";\"other\"\n\"713163\";\"Artsis\";\"other\"\n\"713163\";\"Artsiz\";\"other\"\n\"713163\";\"Арциз\";\"other\"\n\"713174\";\"Artemivs’k\";\"main\"\n\"713174\";\"Artemivs'k\";\"ascii\"\n\"713174\";\"ARTEMOVSK\";\"other\"\n\"713174\";\"Artemovsk\";\"other\"\n\"713174\";\"Artemovskiy\";\"other\"\n\"713174\";\"Artemowsk\";\"other\"\n\"713174\";\"Artëmovsk\";\"other\"\n\"713174\";\"Bakhmut\";\"other\"\n\"713174\";\"АРТЕМОВСК\";\"other\"\n\"713203\";\"Armyans’k\";\"main\"\n\"713203\";\"Armyans'k\";\"ascii\"\n\"713203\";\"Armjansk\";\"other\"\n\"713203\";\"Armyansk\";\"other\"\n\"713203\";\"Армянск\";\"other\"\n\"713203\";\"Армянськ\";\"other\"\n\"713222\";\"Arbuzynka\";\"main\"\n\"713222\";\"Arbusinka\";\"other\"\n\"713222\";\"Arbuzinka\";\"other\"\n\"713222\";\"Арбузинка\";\"other\"\n\"713245\";\"Apostolove\";\"main\"\n\"713245\";\"Apostolovo\";\"other\"\n\"713245\";\"Apostolowo\";\"other\"\n\"713245\";\"Апостолове\";\"other\"\n\"713259\";\"Antratsit\";\"main\"\n\"713259\";\"Antracit\";\"other\"\n\"713259\";\"Bokovo-Antratsit\";\"other\"\n\"713259\";\"Антрацит\";\"other\"\n\"713316\";\"Antoniny\";\"main\"\n\"713316\";\"Antonini\";\"other\"\n\"713316\";\"Антоніни\";\"other\"\n\"713389\";\"Andrushivka\";\"main\"\n\"713389\";\"Andruschowka\";\"other\"\n\"713389\";\"Andrushevka\";\"other\"\n\"713389\";\"Andrushovka\";\"other\"\n\"713389\";\"Andrusivka\";\"other\"\n\"713389\";\"Андрушівка\";\"other\"\n\"713504\";\"Amvrosiyivka\";\"main\"\n\"713504\";\"AMVROSIEVKA\";\"other\"\n\"713504\";\"Amvrosiivka\";\"other\"\n\"713504\";\"Amvrosiyevka\";\"other\"\n\"713504\";\"Donetsko Amerskevka\";\"other\"\n\"713504\";\"Donetsko-Amvrosiyevka\";\"other\"\n\"713504\";\"Donezko-Amwrossijewka\";\"other\"\n\"713504\";\"АМВРОСИЕВКА\";\"other\"\n\"713504\";\"Амвросіївка\";\"other\"\n\"713513\";\"Alushta\";\"main\"\n\"713513\";\"Aloushta\";\"other\"\n\"713513\";\"Alshta\";\"other\"\n\"713513\";\"Aluschta\";\"other\"\n\"713513\";\"Alusta\";\"other\"\n\"713513\";\"Aluszta\";\"other\"\n\"713513\";\"Aluşta\";\"other\"\n\"713513\";\"Alušta\";\"other\"\n\"713513\";\"Ałuszta\";\"other\"\n\"713513\";\"allusyuta\";\"other\"\n\"713513\";\"Алушта\";\"other\"\n\"713513\";\"알루슈타\";\"other\"\n\"713514\";\"Alupka\";\"main\"\n\"713514\";\"Alupko\";\"other\"\n\"713514\";\"Ałupka\";\"other\"\n\"713514\";\"Алупка\";\"other\"\n\"713676\";\"Aleksandrovka\";\"main\"\n\"713676\";\"Oleksandrivka\";\"other\"\n\"713676\";\"Roksandrovka\";\"other\"\n\"713676\";\"Александровка\";\"other\"\n\"713683\";\"Oleksandrivka\";\"main\"\n\"713683\";\"Aleksandrovka\";\"other\"\n\"713683\";\"Александровка\";\"other\"\n\"713716\";\"Alchevs’k\";\"main\"\n\"713716\";\"Alchevs'k\";\"ascii\"\n\"713716\";\"Alchevsk\";\"other\"\n\"713716\";\"Alchevskoe\";\"other\"\n\"713716\";\"Kommunarsk\";\"other\"\n\"713716\";\"Voroshilovsk\";\"other\"\n\"713716\";\"Woroschilowsk\";\"other\"\n\"713716\";\"Алчевск\";\"other\"\n\"713743\";\"Yakymivka\";\"main\"\n\"713743\";\"Akimivka\";\"other\"\n\"713743\";\"Akimovka\";\"other\"\n\"713743\";\"Akimowka\";\"other\"\n\"713743\";\"Якимівка\";\"other\"\n\"713749\";\"Okhtyrka\";\"main\"\n\"713749\";\"AKHTYRKA\";\"other\"\n\"713749\";\"Achtyrka\";\"other\"\n\"713749\";\"Akhtirka\";\"other\"\n\"713749\";\"Akhtyrka\";\"other\"\n\"713749\";\"Okhtirka\";\"other\"\n\"713749\";\"АХТЫРКА\";\"other\"\n\"713749\";\"Охтирка\";\"other\"\n\"713784\";\"Adzhamka\";\"main\"\n\"713784\";\"Аджамка\";\"other\"\n\"793657\";\"Malynivka\";\"main\"\n\"793657\";\"MALINOVKA\";\"other\"\n\"793657\";\"Malinivka\";\"other\"\n\"793657\";\"МАЛИНОВКА\";\"other\"\n\"793657\";\"Малинівка\";\"other\"\n\"796868\";\"Mykhaylivka\";\"main\"\n\"796868\";\"Mikhaylovka\";\"other\"\n\"829745\";\"Kopashnovo\";\"main\"\n\"829745\";\"Gernyes\";\"other\"\n\"829745\";\"Gernyés\";\"other\"\n\"829745\";\"Kopashneve\";\"other\"\n\"829745\";\"Копашневе\";\"other\"\n\"829745\";\"Копашново\";\"other\"\n\"829788\";\"Narkevychi\";\"main\"\n\"829788\";\"Narkevici\";\"other\"\n\"829788\";\"Yasne\";\"other\"\n\"829788\";\"Наркевичі\";\"other\"\n\"829795\";\"Kirove\";\"main\"\n\"829795\";\"Kirovo\";\"other\"\n\"829795\";\"Кирово\";\"other\"\n\"829795\";\"Кірове\";\"other\"\n\"832394\";\"Orikhove\";\"main\"\n\"832394\";\"Orekhovo\";\"other\"\n\"832394\";\"Orihove\";\"other\"\n\"832394\";\"Оріхове\";\"other\"\n\"860012\";\"Krasni Okny\";\"main\"\n\"860012\";\"Krasni Okni\";\"other\"\n\"860012\";\"Krasnyye Okny\";\"other\"\n\"860012\";\"Okna\";\"other\"\n\"860012\";\"Okny\";\"other\"\n\"860012\";\"Красні Окни\";\"other\"\n\"864871\";\"Kuchurhan\";\"main\"\n\"864871\";\"Kuchurgan\";\"other\"\n\"864871\";\"Кучурган\";\"other\"\n\"864933\";\"Smyha\";\"main\"\n\"864933\";\"Smiga\";\"other\"\n\"864933\";\"Smyga\";\"other\"\n\"864933\";\"Смига\";\"other\"\n\"864933\";\"Смыга\";\"other\"\n\"865086\";\"Tayirove\";\"main\"\n\"865086\";\"Tairove\";\"other\"\n\"865086\";\"Таїрове\";\"other\"\n\"865087\";\"Teplodar\";\"main\"\n\"865087\";\"Теплодар\";\"other\"\n\"6559559\";\"Komsomolsk\";\"main\"\n\"6559559\";\"Komsomol's'k\";\"other\"\n\"6559559\";\"Комсомольськ\";\"other\"\n\"6930327\";\"Славутич\";\"main\"\n\"6930327\";\"Slavutich\";\"ascii\"\n\"6931023\";\"Orzhiv\";\"main\"\n\"6931023\";\"Orziv\";\"other\"\n\"6931023\";\"Оржів\";\"other\"\n\"7039160\";\"Shkil’ne\";\"main\"\n\"7039160\";\"Shkil'ne\";\"ascii\"\n\"7039160\";\"Shkhol'noye\";\"other\"\n\"7039160\";\"Shkhol’noye\";\"other\"\n\"7039160\";\"Shkol'noe\";\"other\"\n\"7039160\";\"Школьное\";\"other\"\n\"7039160\";\"Шкільне\";\"other\"\n\"7280677\";\"Denyshi\";\"main\"\n\"7280677\";\"Denishi\";\"other\"\n\"7280677\";\"Дениші\";\"other\"\n\"7280677\";\"Деныши\";\"other\"\n\"7303923\";\"Stepove\";\"main\"\n\"7303923\";\"Stepovoe\";\"other\"\n\"7303923\";\"Степовое\";\"other\"\n\"7522123\";\"Scholkine\";\"main\"\n\"7525990\";\"Yuzhnoukrains'k\";\"main\"\n\"7525990\";\"Juzhnoukrains'k\";\"other\"\n\"7525990\";\"Juzhnoukrainsk\";\"other\"\n\"7525990\";\"Южноукраинск\";\"other\"\n\"7525990\";\"Южноукраїнськ\";\"other\"\n\"225835\";\"Yumbe\";\"main\"\n\"225858\";\"Wobulenzi\";\"main\"\n\"225858\";\"Wobolenzi\";\"other\"\n\"225858\";\"Wobulenzil\";\"other\"\n\"225964\";\"Wakiso\";\"main\"\n\"226110\";\"Tororo\";\"main\"\n\"226234\";\"Soroti\";\"main\"\n\"226361\";\"Sembabule\";\"main\"\n\"226600\";\"Rukungiri\";\"main\"\n\"226600\";\"Kinyasano\";\"other\"\n\"226600\";\"Rukungire\";\"other\"\n\"226727\";\"Rakai\";\"main\"\n\"226823\";\"Pallisa\";\"main\"\n\"226823\";\"Palissa\";\"other\"\n\"226823\";\"Паллиса\";\"other\"\n\"226853\";\"Paidha\";\"main\"\n\"226853\";\"Pai-ida\";\"other\"\n\"226853\";\"Payida\";\"other\"\n\"226866\";\"Pader Palwo\";\"main\"\n\"227592\";\"Ntungamo\";\"main\"\n\"227593\";\"Ntungamo\";\"main\"\n\"227812\";\"Njeru\";\"main\"\n\"227812\";\"Daru\";\"other\"\n\"227904\";\"Nebbi\";\"main\"\n\"227904\";\"Nebi\";\"other\"\n\"228227\";\"Namasuba\";\"main\"\n\"228418\";\"Nakasongola\";\"main\"\n\"228853\";\"Mukono\";\"main\"\n\"228894\";\"Muhororo\";\"main\"\n\"228971\";\"Mubende\";\"main\"\n\"228971\";\"Mubendi\";\"other\"\n\"229024\";\"Mpigi\";\"main\"\n\"229059\";\"Moyo\";\"main\"\n\"229112\";\"Moroto\";\"main\"\n\"229112\";\"Maroto\";\"other\"\n\"229139\";\"Mityana\";\"main\"\n\"229139\";\"Mit'jana\";\"other\"\n\"229139\";\"Mitiyana\";\"other\"\n\"229139\";\"Митьяна\";\"other\"\n\"229268\";\"Mbarara\";\"main\"\n\"229278\";\"Mbale\";\"main\"\n\"229278\";\"Мбале\";\"other\"\n\"229292\";\"Mayuge\";\"main\"\n\"229361\";\"Masindi Port\";\"main\"\n\"229362\";\"Masindi\";\"main\"\n\"229362\";\"Masinai\";\"other\"\n\"229362\";\"Масинди\";\"other\"\n\"229380\";\"Masaka\";\"main\"\n\"229380\";\"Masaki\";\"other\"\n\"229380\";\"Масаки\";\"other\"\n\"229599\";\"Lyantonde\";\"main\"\n\"229746\";\"Luwero\";\"main\"\n\"229911\";\"Lugazi\";\"main\"\n\"230166\";\"Lira\";\"main\"\n\"230256\";\"Kyotera\";\"main\"\n\"230299\";\"Kyenjojo\";\"main\"\n\"230299\";\"Kyanjojo\";\"other\"\n\"230299\";\"Kyonjojo\";\"other\"\n\"230584\";\"Kumi\";\"main\"\n\"230617\";\"Kotido\";\"main\"\n\"230893\";\"Kitgum\";\"main\"\n\"230893\";\"Kitgumo\";\"other\"\n\"230893\";\"Китгум\";\"other\"\n\"230993\";\"Kisoro\";\"main\"\n\"230993\";\"Kisolo\";\"other\"\n\"231139\";\"Kireka\";\"main\"\n\"231250\";\"Kilembe\";\"main\"\n\"231426\";\"Kigorobya\";\"main\"\n\"231550\";\"Kiboga\";\"main\"\n\"231617\";\"Kibale\";\"main\"\n\"231696\";\"Kayunga\";\"main\"\n\"231947\";\"Katakwi\";\"main\"\n\"232066\";\"Kasese\";\"main\"\n\"232235\";\"Kapchorwa\";\"main\"\n\"232235\";\"Sabei\";\"other\"\n\"232235\";\"Sebei\";\"other\"\n\"232287\";\"Kanungu\";\"main\"\n\"232287\";\"Kinkizi\";\"other\"\n\"232287\";\"Makiro\";\"other\"\n\"232371\";\"Kamwenge\";\"main\"\n\"232397\";\"Kamuli\";\"main\"\n\"232422\";\"Kampala\";\"main\"\n\"232422\";\"Campala\";\"other\"\n\"232422\";\"Kampalo\";\"other\"\n\"232422\";\"kampala\";\"other\"\n\"232422\";\"kampalla\";\"other\"\n\"232422\";\"kan pa la\";\"other\"\n\"232422\";\"kanpara\";\"other\"\n\"232422\";\"kmbala\";\"other\"\n\"232422\";\"qmplh\";\"other\"\n\"232422\";\"Καμπάλα\";\"other\"\n\"232422\";\"Кампала\";\"other\"\n\"232422\";\"Կամպալա\";\"other\"\n\"232422\";\"קמפלה\";\"other\"\n\"232422\";\"كمبالا\";\"other\"\n\"232422\";\"کامپالا\";\"other\"\n\"232422\";\"कम्पाला\";\"other\"\n\"232422\";\"ካምፓላ\";\"other\"\n\"232422\";\"カンパラ\";\"other\"\n\"232422\";\"坎帕拉\";\"other\"\n\"232422\";\"캄팔라\";\"other\"\n\"232571\";\"Kalangala\";\"main\"\n\"232713\";\"Kajansi\";\"main\"\n\"232834\";\"Kagadi\";\"main\"\n\"233019\";\"Kaberamaido\";\"main\"\n\"233019\";\"Kabiramaido\";\"other\"\n\"233070\";\"Kabale\";\"main\"\n\"233114\";\"Jinja\";\"main\"\n\"233114\";\"Jinga\";\"other\"\n\"233275\";\"Iganga\";\"main\"\n\"233275\";\"Igang\";\"other\"\n\"233312\";\"Hoima\";\"main\"\n\"233346\";\"Gulu\";\"main\"\n\"233346\";\"Gul\";\"other\"\n\"233346\";\"Гул\";\"other\"\n\"233476\";\"Fort Portal\";\"main\"\n\"233476\";\"Fort-Portal\";\"other\"\n\"233476\";\"Kabarole\";\"other\"\n\"233476\";\"Форт-Портал\";\"other\"\n\"233508\";\"Entebbe\";\"main\"\n\"233508\";\"Entebe\";\"other\"\n\"233508\";\"Ентебе\";\"other\"\n\"233508\";\"אנטבה\";\"other\"\n\"233725\";\"Byakabanda\";\"main\"\n\"233725\";\"Kyakabanda\";\"other\"\n\"233730\";\"Bwizibwera\";\"main\"\n\"233738\";\"Bweyogerere\";\"main\"\n\"233886\";\"Buwenge\";\"main\"\n\"234077\";\"Busia\";\"main\"\n\"234077\";\"Busla\";\"other\"\n\"234081\";\"Bushenyi\";\"main\"\n\"234092\";\"Busembatia\";\"main\"\n\"234178\";\"Bundibugyo\";\"main\"\n\"234565\";\"Bugiri\";\"main\"\n\"234578\";\"Bugembe\";\"main\"\n\"235039\";\"Arua\";\"main\"\n\"235039\";\"Аруа\";\"other\"\n\"235130\";\"Apac\";\"main\"\n\"235130\";\"Apach\";\"other\"\n\"235191\";\"Amudat\";\"main\"\n\"235191\";\"Amdat\";\"other\"\n\"235489\";\"Adjumani\";\"main\"\n\"235489\";\"Ajumani\";\"other\"\n\"448226\";\"Nakapiripirit\";\"main\"\n\"448227\";\"Pader\";\"main\"\n\"448228\";\"Sironko\";\"main\"\n\"448232\";\"Margherita\";\"main\"\n\"4046255\";\"Bay Minette\";\"main\"\n\"4046274\";\"Edna\";\"main\"\n\"4046319\";\"Bayou La Batre\";\"main\"\n\"4046332\";\"Henderson\";\"main\"\n\"4046332\";\"Khenderson\";\"other\"\n\"4046332\";\"Хендерсон\";\"other\"\n\"4046430\";\"Natalia\";\"main\"\n\"4046704\";\"Fort Hunt\";\"main\"\n\"4047198\";\"Brighton\";\"main\"\n\"4047198\";\"Brajton\";\"other\"\n\"4047198\";\"Брайтон\";\"other\"\n\"4047734\";\"Ocean View\";\"main\"\n\"4047827\";\"Berry\";\"main\"\n\"4047906\";\"Trinity\";\"main\"\n\"4047914\";\"Villas\";\"main\"\n\"4048023\";\"Bessemer\";\"main\"\n\"4048332\";\"Aurora\";\"main\"\n\"4048332\";\"Avrora\";\"other\"\n\"4048332\";\"Аврора\";\"other\"\n\"4048388\";\"New Pekin\";\"main\"\n\"4048488\";\"Stockton\";\"main\"\n\"4048488\";\"Stoktun\";\"other\"\n\"4048488\";\"Стоктън\";\"other\"\n\"4048662\";\"Paducah\";\"main\"\n\"4048850\";\"Monticello\";\"main\"\n\"4048888\";\"Red Chute\";\"main\"\n\"4049032\";\"Jessup\";\"main\"\n\"4049979\";\"Birmingham\";\"main\"\n\"4049979\";\"Birmingem\";\"other\"\n\"4049979\";\"Birmingham i Alabama\";\"other\"\n\"4049979\";\"baminguhamu\";\"other\"\n\"4049979\";\"baminhamu\";\"other\"\n\"4049979\";\"bo ming han\";\"other\"\n\"4049979\";\"Бирмингем\";\"other\"\n\"4049979\";\"Бірмінгем\";\"other\"\n\"4049979\";\"バーミングハム\";\"other\"\n\"4049979\";\"バーミンハム\";\"other\"\n\"4049979\";\"伯明翰\";\"other\"\n\"4050118\";\"Turpin Hills\";\"main\"\n\"4050356\";\"Lugoff\";\"main\"\n\"4050655\";\"Blountsville\";\"main\"\n\"4050879\";\"Blue Ridge\";\"main\"\n\"4050880\";\"Buda\";\"main\"\n\"4051059\";\"Boaz\";\"main\"\n\"4051669\";\"Brent\";\"main\"\n\"4051714\";\"Brewton\";\"main\"\n\"4051774\";\"Bridgeport\";\"main\"\n\"4051955\";\"Brookside\";\"main\"\n\"4051971\";\"Brookwood\";\"main\"\n\"4052177\";\"Brundidge\";\"main\"\n\"4052726\";\"Butler\";\"main\"\n\"4052824\";\"Bynum\";\"main\"\n\"4052964\";\"Cahaba Heights\";\"main\"\n\"4053050\";\"Calera\";\"main\"\n\"4053200\";\"Camden\";\"main\"\n\"4053318\";\"Camp Hill\";\"main\"\n\"4053671\";\"Carbon Hill\";\"main\"\n\"4054073\";\"Cedar Bluff\";\"main\"\n\"4054378\";\"Center Point\";\"main\"\n\"4054555\";\"Centre\";\"main\"\n\"4054566\";\"Centreville\";\"main\"\n\"4054593\";\"Chalkville\";\"main\"\n\"4054818\";\"Chatom\";\"main\"\n\"4054852\";\"Chelsea\";\"main\"\n\"4054866\";\"Cherokee\";\"main\"\n\"4054996\";\"Chickasaw\";\"main\"\n\"4055045\";\"Childersburg\";\"main\"\n\"4055535\";\"Citronelle\";\"main\"\n\"4055577\";\"Clanton\";\"main\"\n\"4055650\";\"Clay\";\"main\"\n\"4055696\";\"Clayton\";\"main\"\n\"4055815\";\"Cleveland\";\"main\"\n\"4055815\";\"Klivlend\";\"other\"\n\"4055815\";\"Кливленд\";\"other\"\n\"4055879\";\"Clio\";\"main\"\n\"4056017\";\"Coaling\";\"main\"\n\"4056381\";\"Collinsville\";\"main\"\n\"4056381\";\"Kollinsvil'\";\"other\"\n\"4056381\";\"Коллинсвиль\";\"other\"\n\"4056427\";\"Columbiana\";\"main\"\n\"4056515\";\"Concord\";\"main\"\n\"4056515\";\"Konkord\";\"other\"\n\"4056515\";\"Конкорд\";\"other\"\n\"4056837\";\"Coosada\";\"main\"\n\"4056920\";\"Cordova\";\"main\"\n\"4057139\";\"Cottonwood\";\"main\"\n\"4057320\";\"Cowarts\";\"main\"\n\"4057531\";\"Creola\";\"main\"\n\"4057731\";\"Crossville\";\"main\"\n\"4057835\";\"Cullman\";\"main\"\n\"4058027\";\"Dadeville\";\"main\"\n\"4058061\";\"Daleville\";\"main\"\n\"4058219\";\"Daphne\";\"main\"\n\"4058262\";\"Dauphin Island\";\"main\"\n\"4058553\";\"Decatur\";\"main\"\n\"4058553\";\"Dekejter\";\"other\"\n\"4058553\";\"decatur\";\"other\"\n\"4058553\";\"Декейтер\";\"other\"\n\"4058662\";\"Demopolis\";\"main\"\n\"4059070\";\"Dora\";\"main\"\n\"4059102\";\"Dothan\";\"main\"\n\"4059831\";\"East Brewton\";\"main\"\n\"4059870\";\"East Florence\";\"main\"\n\"4060176\";\"Eclectic\";\"main\"\n\"4060791\";\"Enterprise\";\"main\"\n\"4060954\";\"Eufaula\";\"main\"\n\"4060991\";\"Eutaw\";\"main\"\n\"4061064\";\"Evergreen\";\"main\"\n\"4061206\";\"Fairfield\";\"main\"\n\"4061206\";\"Feurfild\";\"other\"\n\"4061206\";\"Феърфилд\";\"other\"\n\"4061234\";\"Fairhope\";\"main\"\n\"4061466\";\"Falkville\";\"main\"\n\"4061586\";\"Fayette\";\"main\"\n\"4062523\";\"Flint City\";\"main\"\n\"4062568\";\"Florala\";\"main\"\n\"4062577\";\"Florence\";\"main\"\n\"4062577\";\"Florencija\";\"other\"\n\"4062577\";\"Флоренция\";\"other\"\n\"4062595\";\"Flomaton\";\"main\"\n\"4062644\";\"Foley\";\"main\"\n\"4062774\";\"Forestdale\";\"main\"\n\"4062824\";\"Fort Deposit\";\"main\"\n\"4062861\";\"Fort Payne\";\"main\"\n\"4063475\";\"Frisco City\";\"main\"\n\"4063570\";\"Fultondale\";\"main\"\n\"4063613\";\"Fyffe\";\"main\"\n\"4063619\";\"Gadsden\";\"main\"\n\"4063765\";\"Gardendale\";\"main\"\n\"4063926\";\"Geneva\";\"main\"\n\"4063926\";\"Zheneva\";\"other\"\n\"4063926\";\"Женева\";\"other\"\n\"4064006\";\"Georgiana\";\"main\"\n\"4064310\";\"Glencoe\";\"main\"\n\"4064548\";\"Good Hope\";\"main\"\n\"4064598\";\"Goodwater\";\"main\"\n\"4064664\";\"Gordo\";\"main\"\n\"4064840\";\"Grand Bay\";\"main\"\n\"4065029\";\"Grayson Valley\";\"main\"\n\"4065034\";\"Graysville\";\"main\"\n\"4065282\";\"Greensboro\";\"main\"\n\"4065282\";\"Grinsboro\";\"other\"\n\"4065282\";\"Гринсборо\";\"other\"\n\"4065302\";\"Greenville\";\"main\"\n\"4065302\";\"Grinvill\";\"other\"\n\"4065302\";\"Гринвилл\";\"other\"\n\"4065475\";\"Grove Hill\";\"main\"\n\"4065524\";\"Guin\";\"main\"\n\"4065552\";\"Gulf Shores\";\"main\"\n\"4065649\";\"Guntersville\";\"main\"\n\"4065731\";\"Hackleburg\";\"main\"\n\"4065830\";\"Haleyville\";\"main\"\n\"4065965\";\"Hamilton\";\"main\"\n\"4065965\";\"Gamil'ton\";\"other\"\n\"4065965\";\"Гамильтон\";\"other\"\n\"4066065\";\"Hanceville\";\"main\"\n\"4066335\";\"Harpersville\";\"main\"\n\"4066437\";\"Hartford\";\"main\"\n\"4066437\";\"Khartford\";\"other\"\n\"4066437\";\"Хартфорд\";\"other\"\n\"4066449\";\"Hartselle\";\"main\"\n\"4066463\";\"Harvest\";\"main\"\n\"4066661\";\"Hayneville\";\"main\"\n\"4066686\";\"Hazel Green\";\"main\"\n\"4066716\";\"Headland\";\"main\"\n\"4066793\";\"Heflin\";\"main\"\n\"4066811\";\"Helena\";\"main\"\n\"4066811\";\"Khelena\";\"other\"\n\"4066811\";\"Хелена\";\"other\"\n\"4066844\";\"Henagar\";\"main\"\n\"4067623\";\"Hokes Bluff\";\"main\"\n\"4067840\";\"Holt\";\"main\"\n\"4067927\";\"Homewood\";\"main\"\n\"4067994\";\"Hoover\";\"main\"\n\"4067994\";\"Guver\";\"other\"\n\"4067994\";\"Гувер\";\"other\"\n\"4068446\";\"Hueytown\";\"main\"\n\"4068506\";\"Huguley\";\"main\"\n\"4068590\";\"Huntsville\";\"main\"\n\"4068590\";\"Gantsvill\";\"other\"\n\"4068590\";\"Khantsvill\";\"other\"\n\"4068590\";\"hantsubiru\";\"other\"\n\"4068590\";\"Гантсвілл\";\"other\"\n\"4068590\";\"Хантсвилл\";\"other\"\n\"4068590\";\"ハンツビル\";\"other\"\n\"4068933\";\"Indian Springs Village\";\"main\"\n\"4069210\";\"Inverness\";\"main\"\n\"4069243\";\"Irondale\";\"main\"\n\"4069458\";\"Jackson\";\"main\"\n\"4069458\";\"Dzhekson\";\"other\"\n\"4069458\";\"Джексон\";\"other\"\n\"4069553\";\"Jacksonville\";\"main\"\n\"4069553\";\"Dzheksonvill\";\"other\"\n\"4069553\";\"Джексонвилл\";\"other\"\n\"4069659\";\"Jasper\";\"main\"\n\"4069722\";\"Jemison\";\"main\"\n\"4070786\";\"Killen\";\"main\"\n\"4070806\";\"Kimberly\";\"main\"\n\"4070997\";\"Kinsey\";\"main\"\n\"4071262\";\"Ladonia\";\"main\"\n\"4071267\";\"Lafayette\";\"main\"\n\"4071267\";\"Lafajet\";\"other\"\n\"4071267\";\"Лафайет\";\"other\"\n\"4071488\";\"Lake Purdy\";\"main\"\n\"4071540\";\"Lake View\";\"main\"\n\"4071763\";\"Lanett\";\"main\"\n\"4072130\";\"Leeds\";\"main\"\n\"4072271\";\"Level Plains\";\"main\"\n\"4072752\";\"Linden\";\"main\"\n\"4072752\";\"Линден\";\"other\"\n\"4072767\";\"Lincoln\";\"main\"\n\"4072767\";\"Linkol'n\";\"other\"\n\"4072767\";\"Линкольн\";\"other\"\n\"4072814\";\"Lineville\";\"main\"\n\"4072842\";\"Lipscomb\";\"main\"\n\"4073383\";\"Livingston\";\"main\"\n\"4073383\";\"Ливингстон\";\"other\"\n\"4073504\";\"Locust Fork\";\"main\"\n\"4073897\";\"Loxley\";\"main\"\n\"4073985\";\"Luverne\";\"main\"\n\"4074267\";\"Madison\";\"main\"\n\"4074267\";\"Мадисон\";\"other\"\n\"4074452\";\"Malvern\";\"main\"\n\"4074599\";\"Margaret\";\"main\"\n\"4074673\";\"Marion\";\"main\"\n\"4074673\";\"Mehrion\";\"other\"\n\"4074673\";\"Мэрион\";\"other\"\n\"4075368\";\"McDonald Chapel\";\"main\"\n\"4075692\";\"Meadowbrook\";\"main\"\n\"4075854\";\"Meridianville\";\"main\"\n\"4075977\";\"Midfield\";\"main\"\n\"4075984\";\"Midland City\";\"main\"\n\"4076066\";\"Mignon\";\"main\"\n\"4076239\";\"Millbrook\";\"main\"\n\"4076358\";\"Millport\";\"main\"\n\"4076468\";\"Minor\";\"main\"\n\"4076598\";\"Mobile\";\"main\"\n\"4076598\";\"Mobil\";\"other\"\n\"4076598\";\"Mobil'nye\";\"other\"\n\"4076598\";\"mobiru\";\"other\"\n\"4076598\";\"Мобильные\";\"other\"\n\"4076598\";\"Мобіл\";\"other\"\n\"4076598\";\"モービル\";\"other\"\n\"4076725\";\"Monroeville\";\"main\"\n\"4076771\";\"Montevallo\";\"main\"\n\"4076784\";\"Montgomery\";\"main\"\n\"4076784\";\"Montgomeri\";\"other\"\n\"4076784\";\"mantgmry\";\"other\"\n\"4076784\";\"meng ge ma li\";\"other\"\n\"4076784\";\"mongomeri\";\"other\"\n\"4076784\";\"mwntgwmry\";\"other\"\n\"4076784\";\"Монтгомери\";\"other\"\n\"4076784\";\"Монтгомері\";\"other\"\n\"4076784\";\"מונטגומרי\";\"other\"\n\"4076784\";\"مانتگمری\";\"other\"\n\"4076784\";\"モンゴメリー\";\"other\"\n\"4076784\";\"蒙哥马利\";\"other\"\n\"4076842\";\"Moody\";\"main\"\n\"4076982\";\"Moores Mill\";\"main\"\n\"4077143\";\"Morris\";\"main\"\n\"4077283\";\"Mosses\";\"main\"\n\"4077329\";\"Moulton\";\"main\"\n\"4077349\";\"Moundville\";\"main\"\n\"4077867\";\"Mount Olive\";\"main\"\n\"4078646\";\"Mountain Brook\";\"main\"\n\"4078898\";\"Munford\";\"main\"\n\"4078964\";\"Muscle Shoals\";\"main\"\n\"4079423\";\"New Brockton\";\"main\"\n\"4079630\";\"New Hope\";\"main\"\n\"4079916\";\"New Market\";\"main\"\n\"4080193\";\"Newton\";\"main\"\n\"4080193\";\"N'juton\";\"other\"\n\"4080193\";\"Ньютон\";\"other\"\n\"4080395\";\"North Bibb\";\"main\"\n\"4080555\";\"Northport\";\"main\"\n\"4081166\";\"Odenville\";\"main\"\n\"4081197\";\"Ohatchee\";\"main\"\n\"4081644\";\"Opelika\";\"main\"\n\"4081671\";\"Oneonta\";\"main\"\n\"4081683\";\"Opp\";\"main\"\n\"4081696\";\"Orange Beach\";\"main\"\n\"4081904\";\"Owens Cross Roads\";\"main\"\n\"4081914\";\"Oxford\";\"main\"\n\"4081914\";\"Oksford\";\"other\"\n\"4081914\";\"Оксфорд\";\"other\"\n\"4081936\";\"Ozark\";\"main\"\n\"4082250\";\"Parrish\";\"main\"\n\"4082569\";\"Pelham\";\"main\"\n\"4082589\";\"Pell City\";\"main\"\n\"4082866\";\"Phenix City\";\"main\"\n\"4082869\";\"Phil Campbell\";\"main\"\n\"4083004\";\"Piedmont\";\"main\"\n\"4083697\";\"Pinson\";\"main\"\n\"4083846\";\"Pleasant Grove\";\"main\"\n\"4084324\";\"Point Clear\";\"main\"\n\"4084796\";\"Prattville\";\"main\"\n\"4084883\";\"Priceville\";\"main\"\n\"4084888\";\"Prichard\";\"main\"\n\"4084888\";\"Причард\";\"other\"\n\"4085311\";\"Ragland\";\"main\"\n\"4085336\";\"Rainbow City\";\"main\"\n\"4085373\";\"Rainsville\";\"main\"\n\"4085521\";\"Red Bay\";\"main\"\n\"4085739\";\"Reform\";\"main\"\n\"4085771\";\"Rehobeth\";\"main\"\n\"4086224\";\"Riverside\";\"main\"\n\"4086224\";\"Riversajd\";\"other\"\n\"4086224\";\"Риверсайд\";\"other\"\n\"4086285\";\"Roanoke\";\"main\"\n\"4086363\";\"Robertsdale\";\"main\"\n\"4086500\";\"Rock Creek\";\"main\"\n\"4086921\";\"Rogersville\";\"main\"\n\"4087313\";\"Russellville\";\"main\"\n\"4088146\";\"Saks\";\"main\"\n\"4088360\";\"Samson\";\"main\"\n\"4088628\";\"Saraland\";\"main\"\n\"4088704\";\"Sardis City\";\"main\"\n\"4088737\";\"Satsuma\";\"main\"\n\"4088916\";\"Scottsboro\";\"main\"\n\"4089114\";\"Selma\";\"main\"\n\"4089114\";\"Sel'ma\";\"other\"\n\"4089114\";\"Сельма\";\"other\"\n\"4089536\";\"Sheffield\";\"main\"\n\"4090470\";\"Slocomb\";\"main\"\n\"4090684\";\"Smiths Station\";\"main\"\n\"4090700\";\"Smoke Rise\";\"main\"\n\"4091058\";\"Southside\";\"main\"\n\"4091136\";\"Spanish Fort\";\"main\"\n\"4091542\";\"Springville\";\"main\"\n\"4091755\";\"Steele\";\"main\"\n\"4091859\";\"Stevenson\";\"main\"\n\"4092267\";\"Sulligent\";\"main\"\n\"4092333\";\"Sumiton\";\"main\"\n\"4092671\";\"Sylacauga\";\"main\"\n\"4092689\";\"Sylvan Springs\";\"main\"\n\"4092692\";\"Sylvania\";\"main\"\n\"4092788\";\"Talladega\";\"main\"\n\"4092853\";\"Tallassee\";\"main\"\n\"4092970\";\"Tarrant\";\"main\"\n\"4093048\";\"Taylor\";\"main\"\n\"4093048\";\"Tejlor\";\"other\"\n\"4093048\";\"Тейлор\";\"other\"\n\"4093050\";\"Taylor\";\"main\"\n\"4093399\";\"Theodore\";\"main\"\n\"4093488\";\"Thomasville\";\"main\"\n\"4093619\";\"Thorsby\";\"main\"\n\"4093753\";\"Tillmans Corner\";\"main\"\n\"4093897\";\"Town Creek\";\"main\"\n\"4094048\";\"Trinity\";\"main\"\n\"4094163\";\"Troy\";\"main\"\n\"4094163\";\"Troja\";\"other\"\n\"4094163\";\"Троя\";\"other\"\n\"4094212\";\"Trussville\";\"main\"\n\"4094455\";\"Tuscaloosa\";\"main\"\n\"4094455\";\"Tuskalusa\";\"other\"\n\"4094455\";\"tasukarusa\";\"other\"\n\"4094455\";\"Тускалуса\";\"other\"\n\"4094455\";\"タスカルーサ\";\"other\"\n\"4094484\";\"Tuscumbia\";\"main\"\n\"4094490\";\"Tuskegee\";\"main\"\n\"4094490\";\"tasukigi\";\"other\"\n\"4094490\";\"tsqgy\";\"other\"\n\"4094490\";\"טסקגי\";\"other\"\n\"4094490\";\"タスキーギ\";\"other\"\n\"4094975\";\"Union Springs\";\"main\"\n\"4094997\";\"Uniontown\";\"main\"\n\"4095186\";\"Valley\";\"main\"\n\"4095392\";\"Vernon\";\"main\"\n\"4095415\";\"Vestavia Hills\";\"main\"\n\"4095522\";\"Vincent\";\"main\"\n\"4096404\";\"Warrior\";\"main\"\n\"4096645\";\"Weaver\";\"main\"\n\"4096678\";\"Webb\";\"main\"\n\"4096956\";\"West Blocton\";\"main\"\n\"4097257\";\"Wetumpka\";\"main\"\n\"4097406\";\"White Hall\";\"main\"\n\"4098110\";\"Wilsonville\";\"main\"\n\"4098161\";\"Winfield\";\"main\"\n\"4098776\";\"York\";\"main\"\n\"4098776\";\"Jork\";\"other\"\n\"4098776\";\"Йорк\";\"other\"\n\"4099296\";\"Alma\";\"main\"\n\"4099347\";\"Altheimer\";\"main\"\n\"4099647\";\"Arkadelphia\";\"main\"\n\"4099837\";\"Ash Flat\";\"main\"\n\"4099852\";\"Ashdown\";\"main\"\n\"4099932\";\"Atkins\";\"main\"\n\"4099952\";\"Augusta\";\"main\"\n\"4099952\";\"Ogasta\";\"other\"\n\"4099952\";\"Огаста\";\"other\"\n\"4100170\";\"Bald Knob\";\"main\"\n\"4100348\";\"Barling\";\"main\"\n\"4100525\";\"Batesville\";\"main\"\n\"4100592\";\"Bay\";\"main\"\n\"4100808\";\"Bearden\";\"main\"\n\"4100984\";\"Beebe\";\"main\"\n\"4101114\";\"Bella Vista\";\"main\"\n\"4101115\";\"Bella Vista\";\"main\"\n\"4101241\";\"Benton\";\"main\"\n\"4101241\";\"Бентон\";\"other\"\n\"4101260\";\"Bentonville\";\"main\"\n\"4101260\";\"ben dun wei\";\"other\"\n\"4101260\";\"Бентонвилле\";\"other\"\n\"4101260\";\"本頓維\";\"other\"\n\"4101309\";\"Berryville\";\"main\"\n\"4102412\";\"Blytheville\";\"main\"\n\"4102581\";\"Bono\";\"main\"\n\"4102622\";\"Booneville\";\"main\"\n\"4103042\";\"Brinkley\";\"main\"\n\"4103117\";\"Brookland\";\"main\"\n\"4103448\";\"Bryant\";\"main\"\n\"4103678\";\"Bull Shoals\";\"main\"\n\"4103957\";\"Cabot\";\"main\"\n\"4103957\";\"Kabot\";\"other\"\n\"4103957\";\"Кабот\";\"other\"\n\"4104078\";\"Calico Rock\";\"main\"\n\"4104182\";\"Camden\";\"main\"\n\"4104566\";\"Caraway\";\"main\"\n\"4104602\";\"Carlisle\";\"main\"\n\"4104857\";\"Cave City\";\"main\"\n\"4104897\";\"Cave Springs\";\"main\"\n\"4105064\";\"Cedarville\";\"main\"\n\"4105168\";\"Centerton\";\"main\"\n\"4105377\";\"Charleston\";\"main\"\n\"4105377\";\"Charlston\";\"other\"\n\"4105377\";\"Чарлстон\";\"other\"\n\"4105435\";\"Cherokee Village\";\"main\"\n\"4105824\";\"Clarendon\";\"main\"\n\"4105879\";\"Clarksville\";\"main\"\n\"4106074\";\"Clinton\";\"main\"\n\"4106074\";\"Klinton\";\"other\"\n\"4106074\";\"Клинтон\";\"other\"\n\"4106126\";\"Coal Hill\";\"main\"\n\"4106458\";\"Conway\";\"main\"\n\"4106458\";\"Konvej\";\"other\"\n\"4106458\";\"Конвей\";\"other\"\n\"4106689\";\"Corning\";\"main\"\n\"4107198\";\"Crossett\";\"main\"\n\"4107630\";\"Danville\";\"main\"\n\"4107641\";\"Dardanelle\";\"main\"\n\"4107802\";\"De Queen\";\"main\"\n\"4107823\";\"De Witt\";\"main\"\n\"4107903\";\"Decatur\";\"main\"\n\"4107903\";\"Dekejter\";\"other\"\n\"4107903\";\"Декейтер\";\"other\"\n\"4108090\";\"Dermott\";\"main\"\n\"4108091\";\"Des Arc\";\"main\"\n\"4108184\";\"Diaz\";\"main\"\n\"4108212\";\"Dierks\";\"main\"\n\"4108950\";\"Dover\";\"main\"\n\"4108950\";\"Довер\";\"other\"\n\"4109226\";\"Dumas\";\"main\"\n\"4109406\";\"Earle\";\"main\"\n\"4109452\";\"East End\";\"main\"\n\"4109785\";\"El Dorado\";\"main\"\n\"4109857\";\"Elkins\";\"main\"\n\"4109927\";\"Elm Springs\";\"main\"\n\"4110001\";\"England\";\"main\"\n\"4110100\";\"Eudora\";\"main\"\n\"4110119\";\"Eureka Springs\";\"main\"\n\"4110233\";\"Fairfield Bay\";\"main\"\n\"4110443\";\"Farmington\";\"main\"\n\"4110443\";\"Фармингтон\";\"other\"\n\"4110486\";\"Fayetteville\";\"main\"\n\"4111212\";\"Flippin\";\"main\"\n\"4111307\";\"Foreman\";\"main\"\n\"4111319\";\"Fordyce\";\"main\"\n\"4111382\";\"Forrest City\";\"main\"\n\"4111410\";\"Fort Smith\";\"main\"\n\"4111410\";\"fotosumisu\";\"other\"\n\"4111410\";\"フォートスミス\";\"other\"\n\"4112110\";\"Gassville\";\"main\"\n\"4112163\";\"Gentry\";\"main\"\n\"4112254\";\"Gibson\";\"main\"\n\"4112430\";\"Glenwood\";\"main\"\n\"4112638\";\"Gosnell\";\"main\"\n\"4112662\";\"Gould\";\"main\"\n\"4112871\";\"Gravel Ridge\";\"main\"\n\"4112898\";\"Gravette\";\"main\"\n\"4113015\";\"Green Forest\";\"main\"\n\"4113067\";\"Greenbrier\";\"main\"\n\"4113113\";\"Greenland\";\"main\"\n\"4113143\";\"Greenwood\";\"main\"\n\"4113407\";\"Gurdon\";\"main\"\n\"4113607\";\"Hamburg\";\"main\"\n\"4113647\";\"Hampton\";\"main\"\n\"4113647\";\"Khehmpton\";\"other\"\n\"4113647\";\"Хэмптон\";\"other\"\n\"4113951\";\"Harrisburg\";\"main\"\n\"4113951\";\"Garrisberg\";\"other\"\n\"4113951\";\"Гаррисберг\";\"other\"\n\"4113956\";\"Harrison\";\"main\"\n\"4113956\";\"Kharrison\";\"other\"\n\"4113956\";\"Харрисон\";\"other\"\n\"4114047\";\"Haskell\";\"main\"\n\"4114220\";\"Hazen\";\"main\"\n\"4114225\";\"Heber Springs\";\"main\"\n\"4114272\";\"Helena\";\"main\"\n\"4114272\";\"Khelena\";\"other\"\n\"4114272\";\"Хелена\";\"other\"\n\"4115181\";\"Hope\";\"main\"\n\"4115334\";\"Horseshoe Bend\";\"main\"\n\"4115412\";\"Hot Springs\";\"main\"\n\"4115412\";\"Khot-Springs\";\"other\"\n\"4115412\";\"Хот-Спрингс\";\"other\"\n\"4115429\";\"Hot Springs Village\";\"main\"\n\"4115508\";\"Hoxie\";\"main\"\n\"4115578\";\"Hughes\";\"main\"\n\"4115658\";\"Huntsville\";\"main\"\n\"4115658\";\"Khantsvill\";\"other\"\n\"4115658\";\"Хантсвилл\";\"other\"\n\"4116315\";\"Jacksonville\";\"main\"\n\"4116315\";\"Dzheksonvill\";\"other\"\n\"4116315\";\"Джексонвилл\";\"other\"\n\"4116660\";\"Johnson\";\"main\"\n\"4116834\";\"Jonesboro\";\"main\"\n\"4116834\";\"Dzhonsboro\";\"other\"\n\"4116834\";\"Джонсборо\";\"other\"\n\"4116896\";\"Judsonia\";\"main\"\n\"4117358\";\"Kensett\";\"main\"\n\"4117417\";\"Kibler\";\"main\"\n\"4117869\";\"Lake City\";\"main\"\n\"4117942\";\"Lake Hamilton\";\"main\"\n\"4118121\";\"Lake Village\";\"main\"\n\"4118223\";\"Lamar\";\"main\"\n\"4118450\";\"Lavaca\";\"main\"\n\"4118507\";\"Leachville\";\"main\"\n\"4118687\";\"Lepanto\";\"main\"\n\"4118755\";\"Lewisville\";\"main\"\n\"4118981\";\"Lincoln\";\"main\"\n\"4118981\";\"Linkol'n\";\"other\"\n\"4118981\";\"Линкольн\";\"other\"\n\"4119245\";\"Little Flock\";\"main\"\n\"4119403\";\"Little Rock\";\"main\"\n\"4119403\";\"Litl-Rok\";\"other\"\n\"4119403\";\"ritorurokku\";\"other\"\n\"4119403\";\"xiao yan cheng\";\"other\"\n\"4119403\";\"Литл-Рок\";\"other\"\n\"4119403\";\"لٹل راک، آرکنساس\";\"other\"\n\"4119403\";\"リトルロック\";\"other\"\n\"4119403\";\"小岩城\";\"other\"\n\"4119817\";\"Lonoke\";\"main\"\n\"4119972\";\"Lowell\";\"main\"\n\"4119972\";\"Louel\";\"other\"\n\"4119972\";\"Лоуел\";\"other\"\n\"4120104\";\"Luxora\";\"main\"\n\"4120323\";\"Magnolia\";\"main\"\n\"4120388\";\"Malvern\";\"main\"\n\"4120398\";\"Mammoth Spring\";\"main\"\n\"4120426\";\"Manila\";\"main\"\n\"4120438\";\"Mansfield\";\"main\"\n\"4120438\";\"Mehnsfild\";\"other\"\n\"4120438\";\"Мэнсфилд\";\"other\"\n\"4120508\";\"Marianna\";\"main\"\n\"4120524\";\"Marion\";\"main\"\n\"4120524\";\"Mehrion\";\"other\"\n\"4120524\";\"Мэрион\";\"other\"\n\"4120544\";\"Marked Tree\";\"main\"\n\"4120581\";\"Marmaduke\";\"main\"\n\"4120611\";\"Marshall\";\"main\"\n\"4120611\";\"Маршалл\";\"other\"\n\"4120684\";\"Marvell\";\"main\"\n\"4120792\";\"Maumelle\";\"main\"\n\"4120843\";\"Mayflower\";\"main\"\n\"4120886\";\"McAlmont\";\"main\"\n\"4120981\";\"McCrory\";\"main\"\n\"4121052\";\"McGehee\";\"main\"\n\"4121256\";\"Melbourne\";\"main\"\n\"4121256\";\"Mel'burn\";\"other\"\n\"4121256\";\"Мельбурн\";\"other\"\n\"4121297\";\"Mena\";\"main\"\n\"4121792\";\"Mineral Springs\";\"main\"\n\"4121954\";\"Monette\";\"main\"\n\"4122015\";\"Monticello\";\"main\"\n\"4122218\";\"Morrilton\";\"main\"\n\"4122986\";\"Mountain View\";\"main\"\n\"4122986\";\"Mauntin-V'ju\";\"other\"\n\"4122986\";\"Маунтин-Вью\";\"other\"\n\"4123037\";\"Mountain Home\";\"main\"\n\"4123120\";\"Mulberry\";\"main\"\n\"4123162\";\"Murfreesboro\";\"main\"\n\"4123162\";\"Merfrisboro\";\"other\"\n\"4123162\";\"Мерфрисборо\";\"other\"\n\"4123271\";\"Nashville\";\"main\"\n\"4123271\";\"Nashvill\";\"other\"\n\"4123271\";\"Нашвилл\";\"other\"\n\"4123800\";\"Newark\";\"main\"\n\"4123800\";\"N'juark\";\"other\"\n\"4123800\";\"Ньюарк\";\"other\"\n\"4123830\";\"Newport\";\"main\"\n\"4123830\";\"N'juport\";\"other\"\n\"4123830\";\"Ньюпорт\";\"other\"\n\"4124039\";\"North Crossett\";\"main\"\n\"4124112\";\"North Little Rock\";\"main\"\n\"4124671\";\"Ola\";\"main\"\n\"4125027\";\"Osceola\";\"main\"\n\"4125181\";\"Ozark\";\"main\"\n\"4125388\";\"Paragould\";\"main\"\n\"4125402\";\"Paris\";\"main\"\n\"4125402\";\"Parizh\";\"other\"\n\"4125402\";\"Париж\";\"other\"\n\"4125487\";\"Parkin\";\"main\"\n\"4125668\";\"Pea Ridge\";\"main\"\n\"4125681\";\"Pea Ridge\";\"main\"\n\"4125875\";\"Perryville\";\"main\"\n\"4126105\";\"Piggott\";\"main\"\n\"4126226\";\"Pine Bluff\";\"main\"\n\"4126416\";\"Piney\";\"main\"\n\"4126923\";\"Pocahontas\";\"main\"\n\"4127256\";\"Pottsville\";\"main\"\n\"4127332\";\"Prairie Creek\";\"main\"\n\"4127359\";\"Prairie Grove\";\"main\"\n\"4127433\";\"Prescott\";\"main\"\n\"4127973\";\"Rector\";\"main\"\n\"4128103\";\"Redfield\";\"main\"\n\"4128469\";\"Rison\";\"main\"\n\"4128767\";\"Rockwell\";\"main\"\n\"4128894\";\"Rogers\";\"main\"\n\"4128894\";\"Rodzhers\";\"other\"\n\"4128894\";\"Роджерс\";\"other\"\n\"4129397\";\"Russellville\";\"main\"\n\"4129962\";\"Salem\";\"main\"\n\"4129962\";\"Sejlem\";\"other\"\n\"4129962\";\"Сейлем\";\"other\"\n\"4129965\";\"Salem\";\"main\"\n\"4130430\";\"Searcy\";\"main\"\n\"4130703\";\"Shannon Hills\";\"main\"\n\"4130821\";\"Sheridan\";\"main\"\n\"4131116\";\"Siloam Springs\";\"main\"\n\"4131396\";\"Smackover\";\"main\"\n\"4132093\";\"Springdale\";\"main\"\n\"4132194\";\"Stamps\";\"main\"\n\"4132227\";\"Star City\";\"main\"\n\"4132344\";\"Stephens\";\"main\"\n\"4132625\";\"Stuttgart\";\"main\"\n\"4132976\";\"Sweet Home\";\"main\"\n\"4133367\";\"Texarkana\";\"main\"\n\"4133933\";\"Trumann\";\"main\"\n\"4133971\";\"Tuckerman\";\"main\"\n\"4134716\";\"Van Buren\";\"main\"\n\"4134871\";\"Vilonia\";\"main\"\n\"4134993\";\"Waldo\";\"main\"\n\"4135004\";\"Waldron\";\"main\"\n\"4135205\";\"Walnut Ridge\";\"main\"\n\"4135279\";\"Ward\";\"main\"\n\"4135349\";\"Warren\";\"main\"\n\"4135349\";\"Uorren\";\"other\"\n\"4135349\";\"Уоррен\";\"other\"\n\"4135746\";\"West Crossett\";\"main\"\n\"4135763\";\"West Fork\";\"main\"\n\"4135840\";\"West Helena\";\"main\"\n\"4135865\";\"West Memphis\";\"main\"\n\"4136153\";\"White Hall\";\"main\"\n\"4137171\";\"Wrightsville\";\"main\"\n\"4137215\";\"Wynne\";\"main\"\n\"4137291\";\"Yellville\";\"main\"\n\"4140963\";\"Washington\";\"main\"\n\"4140963\";\"Ouasinkton\";\"other\"\n\"4140963\";\"Vashington\";\"other\"\n\"4140963\";\"Vasingtonia\";\"other\"\n\"4140963\";\"WAS\";\"other\"\n\"4140963\";\"Washington D.C.\";\"other\"\n\"4140963\";\"Washington DC\";\"other\"\n\"4140963\";\"Waszyngton\";\"other\"\n\"4140963\";\"Ουάσιγκτον\";\"other\"\n\"4140963\";\"Вашингтон\";\"other\"\n\"4141363\";\"Bear\";\"main\"\n\"4141402\";\"Bellefonte\";\"main\"\n\"4141541\";\"Blades\";\"main\"\n\"4141632\";\"Bridgeville\";\"main\"\n\"4141674\";\"Brookside\";\"main\"\n\"4141748\";\"Camden\";\"main\"\n\"4141974\";\"Claymont\";\"main\"\n\"4141982\";\"Clayton\";\"main\"\n\"4142191\";\"Delaware City\";\"main\"\n\"4142226\";\"Delmar\";\"main\"\n\"4142290\";\"Dover\";\"main\"\n\"4142290\";\"doba\";\"other\"\n\"4142290\";\"duo fu\";\"other\"\n\"4142290\";\"dwbr\";\"other\"\n\"4142290\";\"Довер\";\"other\"\n\"4142290\";\"דובר\";\"other\"\n\"4142290\";\"ドーバー\";\"other\"\n\"4142290\";\"多佛\";\"other\"\n\"4142398\";\"Edgemoor\";\"main\"\n\"4142424\";\"Elsmere\";\"main\"\n\"4142643\";\"Georgetown\";\"main\"\n\"4142683\";\"Glasgow\";\"main\"\n\"4142766\";\"Greenville\";\"main\"\n\"4142766\";\"Grinvill\";\"other\"\n\"4142766\";\"Гринвилл\";\"other\"\n\"4142841\";\"Harrington\";\"main\"\n\"4142942\";\"Highland Acres\";\"main\"\n\"4142969\";\"Hockessin\";\"main\"\n\"4143218\";\"Kent Acres\";\"main\"\n\"4143319\";\"Laurel\";\"main\"\n\"4143354\";\"Lewes\";\"main\"\n\"4143459\";\"Long Neck\";\"main\"\n\"4143637\";\"Middletown\";\"main\"\n\"4143658\";\"Milford\";\"main\"\n\"4143658\";\"Милфорд\";\"other\"\n\"4143690\";\"Millsboro\";\"main\"\n\"4143698\";\"Milton\";\"main\"\n\"4143698\";\"Mil'ton\";\"other\"\n\"4143698\";\"Мильтон\";\"other\"\n\"4143834\";\"New Castle\";\"main\"\n\"4143861\";\"Newark\";\"main\"\n\"4143861\";\"N'juark\";\"other\"\n\"4143861\";\"Ньюарк\";\"other\"\n\"4143871\";\"Newport\";\"main\"\n\"4143871\";\"N'juport\";\"other\"\n\"4143871\";\"Ньюпорт\";\"other\"\n\"4143897\";\"North Star\";\"main\"\n\"4144100\";\"Pike Creek\";\"main\"\n\"4144284\";\"Rehoboth Beach\";\"main\"\n\"4144338\";\"Riverview\";\"main\"\n\"4144366\";\"Rodney Village\";\"main\"\n\"4144600\";\"Seaford\";\"main\"\n\"4144620\";\"Selbyville\";\"main\"\n\"4144764\";\"Smyrna\";\"main\"\n\"4144764\";\"Smirna\";\"other\"\n\"4144764\";\"Смирна\";\"other\"\n\"4145381\";\"Wilmington\";\"main\"\n\"4145381\";\"Uilmington\";\"other\"\n\"4145381\";\"u~iruminton\";\"other\"\n\"4145381\";\"wilmingteon\";\"other\"\n\"4145381\";\"Уилмингтон\";\"other\"\n\"4145381\";\"ウィルミントン\";\"other\"\n\"4145381\";\"윌밍턴\";\"other\"\n\"4145395\";\"Wilmington Manor\";\"main\"\n\"4145483\";\"Wyoming\";\"main\"\n\"4145483\";\"Vajoming\";\"other\"\n\"4145483\";\"Вайоминг\";\"other\"\n\"4145719\";\"Alachua\";\"main\"\n\"4145941\";\"Altamonte Springs\";\"main\"\n\"4145959\";\"Alva\";\"main\"\n\"4146039\";\"Andover\";\"main\"\n\"4146082\";\"Anna Maria\";\"main\"\n\"4146148\";\"Apalachicola\";\"main\"\n\"4146161\";\"Apollo Beach\";\"main\"\n\"4146166\";\"Apopka\";\"main\"\n\"4146206\";\"Arcadia\";\"main\"\n\"4146206\";\"Arkadija\";\"other\"\n\"4146206\";\"Аркадия\";\"other\"\n\"4146219\";\"Archer\";\"main\"\n\"4146302\";\"Asbury Lake\";\"main\"\n\"4146338\";\"Astatula\";\"main\"\n\"4146339\";\"Astor\";\"main\"\n\"4146354\";\"Atlantic Beach\";\"main\"\n\"4146372\";\"Atlantis\";\"main\"\n\"4146389\";\"Auburndale\";\"main\"\n\"4146429\";\"Aventura\";\"main\"\n\"4146440\";\"Avon Park\";\"main\"\n\"4146464\";\"Azalea Park\";\"main\"\n\"4146481\";\"Babson Park\";\"main\"\n\"4146494\";\"Bagdad\";\"main\"\n\"4146564\";\"Bal Harbour\";\"main\"\n\"4146570\";\"Baldwin\";\"main\"\n\"4146570\";\"Bolduin\";\"other\"\n\"4146570\";\"Болдуин\";\"other\"\n\"4146723\";\"Bartow\";\"main\"\n\"4146823\";\"Bay Harbor Islands\";\"main\"\n\"4146830\";\"Bay Hill\";\"main\"\n\"4146855\";\"Bay Pines\";\"main\"\n\"4146901\";\"Bayonet Point\";\"main\"\n\"4146934\";\"Bayshore Gardens\";\"main\"\n\"4146984\";\"Beacon Square\";\"main\"\n\"4147145\";\"Bee Ridge\";\"main\"\n\"4147241\";\"Belle Glade\";\"main\"\n\"4147242\";\"Belle Glade Camp\";\"main\"\n\"4147247\";\"Belle Isle\";\"main\"\n\"4147255\";\"Belleair\";\"main\"\n\"4147257\";\"Belleair Beach\";\"main\"\n\"4147258\";\"Belleair Bluffs\";\"main\"\n\"4147263\";\"Belleview\";\"main\"\n\"4147290\";\"Bellview\";\"main\"\n\"4147581\";\"Beverly Hills\";\"main\"\n\"4147581\";\"Bevurli Khils\";\"other\"\n\"4147581\";\"Бевърли Хилс\";\"other\"\n\"4147679\";\"Big Coppitt Key\";\"main\"\n\"4147801\";\"Big Pine Key\";\"main\"\n\"4147988\";\"Biscayne Park\";\"main\"\n\"4148012\";\"Bithlo\";\"main\"\n\"4148207\";\"Bloomingdale\";\"main\"\n\"4148237\";\"Blountstown\";\"main\"\n\"4148399\";\"Boca Del Mar\";\"main\"\n\"4148410\";\"Boca Pointe\";\"main\"\n\"4148411\";\"Boca Raton\";\"main\"\n\"4148411\";\"Boca de Ratones\";\"other\"\n\"4148504\";\"Bokeelia\";\"main\"\n\"4148526\";\"Bonifay\";\"main\"\n\"4148533\";\"Bonita Springs\";\"main\"\n\"4148659\";\"Bowling Green\";\"main\"\n\"4148659\";\"Bouling-Grin\";\"other\"\n\"4148659\";\"Боулинг-Грин\";\"other\"\n\"4148674\";\"Boyette\";\"main\"\n\"4148677\";\"Boynton Beach\";\"main\"\n\"4148708\";\"Bradenton\";\"main\"\n\"4148710\";\"Bradenton Beach\";\"main\"\n\"4148757\";\"Brandon\";\"main\"\n\"4148757\";\"Brehndon\";\"other\"\n\"4148757\";\"Брэндон\";\"other\"\n\"4148803\";\"Brent\";\"main\"\n\"4148944\";\"Broadview Park\";\"main\"\n\"4148957\";\"Bronson\";\"main\"\n\"4148975\";\"Brookridge\";\"main\"\n\"4148986\";\"Brooksville\";\"main\"\n\"4149010\";\"Broward Estates\";\"main\"\n\"4149077\";\"Brownsville\";\"main\"\n\"4149226\";\"Buckhead Ridge\";\"main\"\n\"4149241\";\"Buckingham\";\"main\"\n\"4149342\";\"Bunche Park\";\"main\"\n\"4149363\";\"Bunnell\";\"main\"\n\"4149412\";\"Burnt Store Marina\";\"main\"\n\"4149433\";\"Bushnell\";\"main\"\n\"4149453\";\"Butler Beach\";\"main\"\n\"4149635\";\"Callaway\";\"main\"\n\"4149845\";\"Campbell\";\"main\"\n\"4149845\";\"Kehmpbell\";\"other\"\n\"4149845\";\"Кэмпбелл\";\"other\"\n\"4149959\";\"Cape Canaveral\";\"main\"\n\"4149959\";\"Cabo Canaveral\";\"other\"\n\"4149959\";\"Cabo Cañaveral\";\"other\"\n\"4149962\";\"Cape Coral\";\"main\"\n\"4149962\";\"Cabo Coral\";\"other\"\n\"4150066\";\"Carol City\";\"main\"\n\"4150103\";\"Carrabelle\";\"main\"\n\"4150118\";\"Carrollwood Village\";\"main\"\n\"4150159\";\"Carver Ranches\";\"main\"\n\"4150190\";\"Casselberry\";\"main\"\n\"4150340\";\"Cedar Grove\";\"main\"\n\"4150394\";\"Celebration\";\"main\"\n\"4150517\";\"Century\";\"main\"\n\"4150524\";\"Century Village\";\"main\"\n\"4150632\";\"Charlotte Harbor\";\"main\"\n\"4150637\";\"Charlotte Park\";\"main\"\n\"4150673\";\"Chattahoochee\";\"main\"\n\"4150727\";\"Cheval\";\"main\"\n\"4150733\";\"Chiefland\";\"main\"\n\"4150769\";\"Chipley\";\"main\"\n\"4150880\";\"Christmas\";\"main\"\n\"4150914\";\"Chuluota\";\"main\"\n\"4151153\";\"Citrus Hills\";\"main\"\n\"4151157\";\"Citrus Park\";\"main\"\n\"4151162\";\"Citrus Ridge\";\"main\"\n\"4151163\";\"Citrus Springs\";\"main\"\n\"4151316\";\"Clearwater\";\"main\"\n\"4151316\";\"kuriau~ota\";\"other\"\n\"4151316\";\"クリアウォーター\";\"other\"\n\"4151352\";\"Clermont\";\"main\"\n\"4151366\";\"Clewiston\";\"main\"\n\"4151416\";\"Cleveland\";\"main\"\n\"4151416\";\"Klivlend\";\"other\"\n\"4151416\";\"Кливленд\";\"other\"\n\"4151440\";\"Cocoa\";\"main\"\n\"4151441\";\"Cocoa Beach\";\"main\"\n\"4151455\";\"Coconut Creek\";\"main\"\n\"4151607\";\"Combee Settlement\";\"main\"\n\"4151745\";\"Conway\";\"main\"\n\"4151745\";\"Konvej\";\"other\"\n\"4151745\";\"Конвей\";\"other\"\n\"4151824\";\"Cooper City\";\"main\"\n\"4151871\";\"Coral Gables\";\"main\"\n\"4151909\";\"Coral Springs\";\"main\"\n\"4151909\";\"Koral-Springs\";\"other\"\n\"4151909\";\"Корал-Спрингс\";\"other\"\n\"4151921\";\"Coral Terrace\";\"main\"\n\"4152003\";\"Cortez\";\"main\"\n\"4152064\";\"Country Walk\";\"main\"\n\"4152093\";\"Country Club\";\"main\"\n\"4152291\";\"Crescent City\";\"main\"\n\"4152311\";\"Crestview\";\"main\"\n\"4152360\";\"Crooked Lake Park\";\"main\"\n\"4152395\";\"Cross City\";\"main\"\n\"4152472\";\"Crystal Lake\";\"main\"\n\"4152487\";\"Crystal River\";\"main\"\n\"4152498\";\"Crystal Springs\";\"main\"\n\"4152513\";\"Cudjoe Key\";\"main\"\n\"4152564\";\"Cutler\";\"main\"\n\"4152574\";\"Cutler Ridge\";\"main\"\n\"4152628\";\"Cypress Gardens\";\"main\"\n\"4152639\";\"Cypress Lake\";\"main\"\n\"4152649\";\"Cypress Lakes\";\"main\"\n\"4152671\";\"Cypress Quarters\";\"main\"\n\"4152695\";\"Dade City\";\"main\"\n\"4152772\";\"Dania Beach\";\"main\"\n\"4152805\";\"Davenport\";\"main\"\n\"4152805\";\"Dehvenport\";\"other\"\n\"4152805\";\"Дэвенпорт\";\"other\"\n\"4152820\";\"Davie\";\"main\"\n\"4152820\";\"Dehvi\";\"other\"\n\"4152820\";\"Дэви\";\"other\"\n\"4152872\";\"Daytona Beach\";\"main\"\n\"4152872\";\"Dejtona-Bich\";\"other\"\n\"4152872\";\"deitonabichi\";\"other\"\n\"4152872\";\"Дейтона-Бич\";\"other\"\n\"4152872\";\"デイトナビーチ\";\"other\"\n\"4152881\";\"Daytona Beach Shores\";\"main\"\n\"4152888\";\"De Funiak Springs\";\"main\"\n\"4152890\";\"DeLand\";\"main\"\n\"4152898\";\"De Leon Springs\";\"main\"\n\"4152926\";\"DeBary\";\"main\"\n\"4153071\";\"Deerfield Beach\";\"main\"\n\"4153132\";\"Delray Beach\";\"main\"\n\"4153132\";\"dlryy byz'\";\"other\"\n\"4153132\";\"דלריי ביץ'\";\"other\"\n\"4153146\";\"Deltona\";\"main\"\n\"4153186\";\"Desoto Lakes\";\"main\"\n\"4153188\";\"Destin\";\"main\"\n\"4153367\";\"Doctor Phillips\";\"main\"\n\"4153471\";\"Doral\";\"main\"\n\"4153553\";\"Dover\";\"main\"\n\"4153553\";\"Довер\";\"other\"\n\"4153757\";\"Dundee\";\"main\"\n\"4153759\";\"Dunedin\";\"main\"\n\"4153759\";\"Danedin\";\"other\"\n\"4153759\";\"Данедин\";\"other\"\n\"4153790\";\"Dunnellon\";\"main\"\n\"4153884\";\"Eagle Lake\";\"main\"\n\"4154008\";\"East Lake\";\"main\"\n\"4154037\";\"East Palatka\";\"main\"\n\"4154047\";\"East Pensacola Heights\";\"main\"\n\"4154051\";\"East Perrine\";\"main\"\n\"4154106\";\"Eastpoint\";\"main\"\n\"4154127\";\"Eatonville\";\"main\"\n\"4154205\";\"Edgewater\";\"main\"\n\"4154216\";\"Edgewood\";\"main\"\n\"4154270\";\"Eglin Village\";\"main\"\n\"4154270\";\"Eglin\";\"other\"\n\"4154270\";\"Ehglin\";\"other\"\n\"4154270\";\"Эглин\";\"other\"\n\"4154280\";\"Egypt Lake-Leto\";\"main\"\n\"4154299\";\"El Portal\";\"main\"\n\"4154336\";\"Elfers\";\"main\"\n\"4154367\";\"Ellenton\";\"main\"\n\"4154465\";\"Englewood\";\"main\"\n\"4154489\";\"Ensley\";\"main\"\n\"4154568\";\"Estero\";\"main\"\n\"4154606\";\"Eustis\";\"main\"\n\"4154769\";\"Fairview Shores\";\"main\"\n\"4154937\";\"Feather Sound\";\"main\"\n\"4154972\";\"Fellsmere\";\"main\"\n\"4155000\";\"Fern Park\";\"main\"\n\"4155006\";\"Fernandina Beach\";\"main\"\n\"4155017\";\"Ferry Pass\";\"main\"\n\"4155430\";\"Fish Hawk\";\"main\"\n\"4155502\";\"Five Points\";\"main\"\n\"4155533\";\"Flagler Beach\";\"main\"\n\"4155623\";\"Floral City\";\"main\"\n\"4155669\";\"Florida City\";\"main\"\n\"4155726\";\"Florida Ridge\";\"main\"\n\"4155824\";\"Forest City\";\"main\"\n\"4155966\";\"Fort Lauderdale\";\"main\"\n\"4155966\";\"Ft. Lauderdale\";\"other\"\n\"4155966\";\"fotorodaderu\";\"other\"\n\"4155966\";\"lao de dai er bao\";\"other\"\n\"4155966\";\"フォートローダーデール\";\"other\"\n\"4155966\";\"劳德代尔堡\";\"other\"\n\"4155988\";\"Fort Meade\";\"main\"\n\"4155995\";\"Fort Myers\";\"main\"\n\"4155996\";\"Fort Myers Beach\";\"main\"\n\"4156006\";\"Fort Myers Shores\";\"main\"\n\"4156018\";\"Fort Pierce\";\"main\"\n\"4156042\";\"Fort Walton Beach\";\"main\"\n\"4156091\";\"Fountainebleau\";\"main\"\n\"4156091\";\"Fountainbleau\";\"other\"\n\"4156268\";\"Freeport\";\"main\"\n\"4156326\";\"Frostproof\";\"main\"\n\"4156331\";\"Fruit Cove\";\"main\"\n\"4156337\";\"Fruitland Park\";\"main\"\n\"4156340\";\"Fruitville\";\"main\"\n\"4156370\";\"Fussels Corner\";\"main\"\n\"4156404\";\"Gainesville\";\"main\"\n\"4156404\";\"Gainesopolis\";\"other\"\n\"4156462\";\"Gandy\";\"main\"\n\"4156601\";\"Gateway\";\"main\"\n\"4156657\";\"Geneva\";\"main\"\n\"4156657\";\"Zheneva\";\"other\"\n\"4156657\";\"Женева\";\"other\"\n\"4156746\";\"Gibsonia\";\"main\"\n\"4156748\";\"Gibsonton\";\"main\"\n\"4156752\";\"Gifford\";\"main\"\n\"4156824\";\"Gladeview\";\"main\"\n\"4156844\";\"Glencoe\";\"main\"\n\"4156857\";\"Glenvar Heights\";\"main\"\n\"4156920\";\"Golden Gate\";\"main\"\n\"4156931\";\"Golden Glades\";\"main\"\n\"4156947\";\"Golden Lakes\";\"main\"\n\"4156959\";\"Goldenrod\";\"main\"\n\"4156975\";\"Gonzalez\";\"main\"\n\"4157095\";\"Goulding\";\"main\"\n\"4157097\";\"Goulds\";\"main\"\n\"4157193\";\"Graceville\";\"main\"\n\"4157404\";\"Greater Sun Center\";\"main\"\n\"4157427\";\"Green Cove Springs\";\"main\"\n\"4157467\";\"Greenacres City\";\"main\"\n\"4157537\";\"Gretna\";\"main\"\n\"4157593\";\"Grove City\";\"main\"\n\"4157605\";\"Groveland\";\"main\"\n\"4157634\";\"Gulf Breeze\";\"main\"\n\"4157657\";\"Gulf Gate Estates\";\"main\"\n\"4157687\";\"Gulfport\";\"main\"\n\"4157687\";\"Galfporta\";\"other\"\n\"4157687\";\"Галфпорта\";\"other\"\n\"4157827\";\"Haines City\";\"main\"\n\"4157898\";\"Hallandale Beach\";\"main\"\n\"4157898\";\"Hallandale\";\"other\"\n\"4157981\";\"Hamptons at Boca Raton\";\"main\"\n\"4158032\";\"Harbor Bluffs\";\"main\"\n\"4158060\";\"Harbour Heights\";\"main\"\n\"4158091\";\"Harlem\";\"main\"\n\"4158094\";\"Harlem Heights\";\"main\"\n\"4158224\";\"Havana\";\"main\"\n\"4158239\";\"Haverhill\";\"main\"\n\"4158239\";\"Khaverkhill\";\"other\"\n\"4158239\";\"Хаверхилл\";\"other\"\n\"4158256\";\"Hawthorne\";\"main\"\n\"4158257\";\"Hawthorne\";\"main\"\n\"4158296\";\"Heathrow\";\"main\"\n\"4158445\";\"Hernando\";\"main\"\n\"4158446\";\"Hernando Beach\";\"main\"\n\"4158476\";\"Hialeah\";\"main\"\n\"4158476\";\"haiaria\";\"other\"\n\"4158476\";\"ハイアリア\";\"other\"\n\"4158482\";\"Hialeah Gardens\";\"main\"\n\"4158591\";\"High Point\";\"main\"\n\"4158595\";\"High Springs\";\"main\"\n\"4158599\";\"Highland Beach\";\"main\"\n\"4158604\";\"Highland City\";\"main\"\n\"4158662\";\"Hiland Park\";\"main\"\n\"4158668\";\"Hill 'n Dale\";\"main\"\n\"4158693\";\"Hilliard\";\"main\"\n\"4158700\";\"Hillsboro Beach\";\"main\"\n\"4158758\";\"Hobe Sound\";\"main\"\n\"4158844\";\"Holden Heights\";\"main\"\n\"4158865\";\"Holiday\";\"main\"\n\"4158914\";\"Holly Hill\";\"main\"\n\"4158928\";\"Hollywood\";\"main\"\n\"4158928\";\"Gollivud\";\"other\"\n\"4158928\";\"hariuddo\";\"other\"\n\"4158928\";\"hwlywwd\";\"other\"\n\"4158928\";\"Голливуд\";\"other\"\n\"4158928\";\"הוליווד\";\"other\"\n\"4158928\";\"ハリウッド\";\"other\"\n\"4158966\";\"Holmes Beach\";\"main\"\n\"4159050\";\"Homestead\";\"main\"\n\"4159071\";\"Homosassa\";\"main\"\n\"4159077\";\"Homosassa Springs\";\"main\"\n\"4159315\";\"Howie In The Hills\";\"main\"\n\"4159335\";\"Hudson\";\"main\"\n\"4159335\";\"Gudzon\";\"other\"\n\"4159335\";\"Гудзон\";\"other\"\n\"4159416\";\"Hunters Creek\";\"main\"\n\"4159484\";\"Hypoluxo\";\"main\"\n\"4159553\";\"Immokalee\";\"main\"\n\"4159575\";\"Indialantic\";\"main\"\n\"4159608\";\"Indian Harbour Beach\";\"main\"\n\"4159659\";\"Indian River Estates\";\"main\"\n\"4159672\";\"Indian River Shores\";\"main\"\n\"4159675\";\"Indian Rocks Beach\";\"main\"\n\"4159677\";\"Indian Shores\";\"main\"\n\"4159687\";\"Indiantown\";\"main\"\n\"4159702\";\"Inglis\";\"main\"\n\"4159765\";\"Interlachen\";\"main\"\n\"4159786\";\"Inverness\";\"main\"\n\"4159796\";\"Inwood\";\"main\"\n\"4159805\";\"Iona\";\"main\"\n\"4159839\";\"Islamorada\";\"main\"\n\"4159896\";\"Ives Estates\";\"main\"\n\"4160021\";\"Jacksonville\";\"main\"\n\"4160021\";\"Dzhaks\\\"nvil\";\"other\"\n\"4160021\";\"Dzheksonvil'\";\"other\"\n\"4160021\";\"Iacsoniapolis\";\"other\"\n\"4160021\";\"Iacsonvilla\";\"other\"\n\"4160021\";\"g'qswnwwyl\";\"other\"\n\"4160021\";\"jaegseunbil\";\"other\"\n\"4160021\";\"jakusonbiru\";\"other\"\n\"4160021\";\"jie ke xun wei er\";\"other\"\n\"4160021\";\"Джаксънвил\";\"other\"\n\"4160021\";\"Джексонвиль\";\"other\"\n\"4160021\";\"ג'קסונוויל\";\"other\"\n\"4160021\";\"ジャクソンビル\";\"other\"\n\"4160021\";\"杰克逊维尔\";\"other\"\n\"4160021\";\"잭슨빌\";\"other\"\n\"4160023\";\"Jacksonville Beach\";\"main\"\n\"4160086\";\"Jan-Phyl Village\";\"main\"\n\"4160100\";\"Jasmine Estates\";\"main\"\n\"4160102\";\"Jasper\";\"main\"\n\"4160171\";\"Jensen Beach\";\"main\"\n\"4160570\";\"June Park\";\"main\"\n\"4160604\";\"Juno Beach\";\"main\"\n\"4160610\";\"Jupiter\";\"main\"\n\"4160610\";\"Юпитер\";\"other\"\n\"4160651\";\"Kathleen\";\"main\"\n\"4160705\";\"Kendale Lakes\";\"main\"\n\"4160711\";\"Kendall\";\"main\"\n\"4160711\";\"Кендалл\";\"other\"\n\"4160717\";\"Kendall Green\";\"main\"\n\"4160749\";\"Kenneth City\";\"main\"\n\"4160752\";\"Kensington Park\";\"main\"\n\"4160789\";\"Key Biscayne\";\"main\"\n\"4160795\";\"Key Largo\";\"main\"\n\"4160812\";\"Key West\";\"main\"\n\"4160822\";\"Keystone\";\"main\"\n\"4160830\";\"Keystone Heights\";\"main\"\n\"4160932\";\"Kings Point\";\"main\"\n\"4160983\";\"Kissimmee\";\"main\"\n\"4160983\";\"Kissimmi\";\"other\"\n\"4160983\";\"qysymy\";\"other\"\n\"4160983\";\"Киссимми\";\"other\"\n\"4160983\";\"קיסימי\";\"other\"\n\"4161075\";\"LaBelle\";\"main\"\n\"4161110\";\"Lacoochee\";\"main\"\n\"4161118\";\"Lady Lake\";\"main\"\n\"4161141\";\"Laguna Beach\";\"main\"\n\"4161141\";\"Laguna Bich\";\"other\"\n\"4161141\";\"Лагуна Бич\";\"other\"\n\"4161150\";\"Lake Alfred\";\"main\"\n\"4161161\";\"Lake Belvedere Estates\";\"main\"\n\"4161171\";\"Lake Butler\";\"main\"\n\"4161178\";\"Lake Butler\";\"main\"\n\"4161187\";\"Lake City\";\"main\"\n\"4161195\";\"Lake Clarke Shores\";\"main\"\n\"4161228\";\"Lake Forest\";\"main\"\n\"4161228\";\"Lesnoe ozero\";\"other\"\n\"4161228\";\"Лесное озеро\";\"other\"\n\"4161250\";\"Lake Hamilton\";\"main\"\n\"4161254\";\"Lake Helen\";\"main\"\n\"4161296\";\"Lake Lorraine\";\"main\"\n\"4161298\";\"Lake Lucerne\";\"main\"\n\"4161313\";\"Lake Magdalene\";\"main\"\n\"4161327\";\"Lake Panasoffkee\";\"main\"\n\"4161334\";\"Lake Park\";\"main\"\n\"4161344\";\"Lake Placid\";\"main\"\n\"4161352\";\"Lake Sarasota\";\"main\"\n\"4161373\";\"Lake Mary\";\"main\"\n\"4161400\";\"Lake Wales\";\"main\"\n\"4161422\";\"Lake Worth\";\"main\"\n\"4161424\";\"Lake Worth Corridor\";\"main\"\n\"4161438\";\"Lakeland\";\"main\"\n\"4161444\";\"Lakeland Highlands\";\"main\"\n\"4161460\";\"Lakes by the Bay\";\"main\"\n\"4161461\";\"Lakeside\";\"main\"\n\"4161474\";\"Lakeside Green\";\"main\"\n\"4161510\";\"Lakewood Park\";\"main\"\n\"4161511\";\"Lakewood Park\";\"main\"\n\"4161534\";\"Land O' Lakes\";\"main\"\n\"4161571\";\"Lantana\";\"main\"\n\"4161580\";\"Largo\";\"main\"\n\"4161616\";\"Lauderdale Lakes\";\"main\"\n\"4161624\";\"Lauderdale-by-the-Sea\";\"main\"\n\"4161624\";\"Lauderdale by the sea\";\"other\"\n\"4161625\";\"Lauderhill\";\"main\"\n\"4161659\";\"Laurel\";\"main\"\n\"4161733\";\"Lecanto\";\"main\"\n\"4161771\";\"Leesburg\";\"main\"\n\"4161785\";\"Lehigh Acres\";\"main\"\n\"4161797\";\"Leisure City\";\"main\"\n\"4161807\";\"Lely\";\"main\"\n\"4161810\";\"Lely Resort\";\"main\"\n\"4161957\";\"Lighthouse Point\";\"main\"\n\"4161957\";\"Lighthouse PT\";\"other\"\n\"4162461\";\"Live Oak\";\"main\"\n\"4162532\";\"Lochmoor Waterway Estates\";\"main\"\n\"4162539\";\"Lockhart\";\"main\"\n\"4162776\";\"Longboat Key\";\"main\"\n\"4162783\";\"Longwood\";\"main\"\n\"4162856\";\"Loughman\";\"main\"\n\"4162911\";\"Lower Grand Lagoon\";\"main\"\n\"4163033\";\"Lutz\";\"main\"\n\"4163033\";\"Lutc\";\"other\"\n\"4163033\";\"Лутц\";\"other\"\n\"4163049\";\"Lynn Haven\";\"main\"\n\"4163083\";\"Macclenny\";\"main\"\n\"4163129\";\"Madeira Beach\";\"main\"\n\"4163140\";\"Madison\";\"main\"\n\"4163140\";\"Мадисон\";\"other\"\n\"4163220\";\"Maitland\";\"main\"\n\"4163232\";\"Malabar\";\"main\"\n\"4163248\";\"Malone\";\"main\"\n\"4163267\";\"Manasota Key\";\"main\"\n\"4163296\";\"Manatee Road\";\"main\"\n\"4163318\";\"Mango\";\"main\"\n\"4163322\";\"Mangonia Park\";\"main\"\n\"4163379\";\"Marathon\";\"main\"\n\"4163384\";\"Marco\";\"main\"\n\"4163407\";\"Margate\";\"main\"\n\"4163428\";\"Marianna\";\"main\"\n\"4163599\";\"Mary Esther\";\"main\"\n\"4163633\";\"Masaryktown\";\"main\"\n\"4163635\";\"Mascotte\";\"main\"\n\"4163723\";\"Mayo\";\"main\"\n\"4163833\";\"McGregor\";\"main\"\n\"4163918\";\"Meadow Woods\";\"main\"\n\"4163952\";\"Medley\";\"main\"\n\"4163954\";\"Medulla\";\"main\"\n\"4163971\";\"Melbourne\";\"main\"\n\"4163971\";\"Mel'burn\";\"other\"\n\"4163971\";\"mlbwrn\";\"other\"\n\"4163971\";\"Мельбурн\";\"other\"\n\"4163971\";\"מלבורן\";\"other\"\n\"4163972\";\"Melbourne Beach\";\"main\"\n\"4163994\";\"Melrose Park\";\"main\"\n\"4164047\";\"Memphis\";\"main\"\n\"4164047\";\"Memfis\";\"other\"\n\"4164047\";\"Мемфис\";\"other\"\n\"4164092\";\"Merritt Island\";\"main\"\n\"4164131\";\"Mexico Beach\";\"main\"\n\"4164138\";\"Miami\";\"main\"\n\"4164138\";\"Majami\";\"other\"\n\"4164138\";\"mai a mi\";\"other\"\n\"4164138\";\"maiaemi\";\"other\"\n\"4164138\";\"maiami\";\"other\"\n\"4164138\";\"myamy\";\"other\"\n\"4164138\";\"Майами\";\"other\"\n\"4164138\";\"Маями\";\"other\"\n\"4164138\";\"מיאמי\";\"other\"\n\"4164138\";\"ميامي\";\"other\"\n\"4164138\";\"میامی\";\"other\"\n\"4164138\";\"მაიამი\";\"other\"\n\"4164138\";\"マイアミ\";\"other\"\n\"4164138\";\"迈阿密\";\"other\"\n\"4164138\";\"마이애미\";\"other\"\n\"4164143\";\"Miami Beach\";\"main\"\n\"4164143\";\"Majami-Bich\";\"other\"\n\"4164143\";\"Майами-Бич\";\"other\"\n\"4164166\";\"Miami Gardens\";\"main\"\n\"4164167\";\"Miami Gardens\";\"main\"\n\"4164186\";\"Miami Lakes\";\"main\"\n\"4164211\";\"Miami Shores\";\"main\"\n\"4164223\";\"Miami Springs\";\"main\"\n\"4164253\";\"Micco\";\"main\"\n\"4164343\";\"Midway\";\"main\"\n\"4164346\";\"Midway\";\"main\"\n\"4164387\";\"Middleburg\";\"main\"\n\"4164547\";\"Milton\";\"main\"\n\"4164547\";\"Mil'ton\";\"other\"\n\"4164547\";\"Мильтон\";\"other\"\n\"4164554\";\"Mims\";\"main\"\n\"4164575\";\"Minneola\";\"main\"\n\"4164601\";\"Miramar\";\"main\"\n\"4164601\";\"mirama\";\"other\"\n\"4164601\";\"Мирамар\";\"other\"\n\"4164601\";\"ミラマー\";\"other\"\n\"4164602\";\"Miramar Beach\";\"main\"\n\"4164632\";\"Mission Bay\";\"main\"\n\"4164728\";\"Molino\";\"main\"\n\"4164803\";\"Monticello\";\"main\"\n\"4164836\";\"Moore Haven\";\"main\"\n\"4165069\";\"Mount Dora\";\"main\"\n\"4165218\";\"Mount Plymouth\";\"main\"\n\"4165419\";\"Mulberry\";\"main\"\n\"4165519\";\"Myrtle Grove\";\"main\"\n\"4165565\";\"Naples\";\"main\"\n\"4165565\";\"Neapol'\";\"other\"\n\"4165565\";\"Неаполь\";\"other\"\n\"4165574\";\"Naples Manor\";\"main\"\n\"4165576\";\"Naples Park\";\"main\"\n\"4165580\";\"Naranja\";\"main\"\n\"4165695\";\"Neptune Beach\";\"main\"\n\"4165869\";\"New Port Richey\";\"main\"\n\"4165913\";\"New Smyrna Beach\";\"main\"\n\"4165961\";\"Newberry\";\"main\"\n\"4165995\";\"Niceville\";\"main\"\n\"4166049\";\"Nokomis\";\"main\"\n\"4166066\";\"Norland\";\"main\"\n\"4166066\";\"Норланд\";\"other\"\n\"4166096\";\"North Andrews Gardens\";\"main\"\n\"4166105\";\"North Bay Village\";\"main\"\n\"4166124\";\"North Brooksville\";\"main\"\n\"4166154\";\"North DeLand\";\"main\"\n\"4166195\";\"North Fort Myers\";\"main\"\n\"4166208\";\"North Key Largo\";\"main\"\n\"4166222\";\"North Lauderdale\";\"main\"\n\"4166232\";\"North Miami\";\"main\"\n\"4166233\";\"North Miami Beach\";\"main\"\n\"4166253\";\"North Palm Beach\";\"main\"\n\"4166274\";\"North Port\";\"main\"\n\"4166288\";\"North Redington Beach\";\"main\"\n\"4166293\";\"North River Shores\";\"main\"\n\"4166298\";\"North Sarasota\";\"main\"\n\"4166547\";\"Oak Hill\";\"main\"\n\"4166583\";\"Oak Ridge\";\"main\"\n\"4166628\";\"Oakland\";\"main\"\n\"4166628\";\"Oklend\";\"other\"\n\"4166628\";\"Окленд\";\"other\"\n\"4166638\";\"Oakland Park\";\"main\"\n\"4166673\";\"Ocala\";\"main\"\n\"4166673\";\"Okala\";\"other\"\n\"4166673\";\"Окала\";\"other\"\n\"4166723\";\"Ocean City\";\"main\"\n\"4166738\";\"Ocean Ridge\";\"main\"\n\"4166776\";\"Ocoee\";\"main\"\n\"4166787\";\"Odessa\";\"main\"\n\"4166787\";\"Одесса\";\"other\"\n\"4166805\";\"Ojus\";\"main\"\n\"4166822\";\"Okeechobee\";\"main\"\n\"4166936\";\"Oldsmar\";\"main\"\n\"4166943\";\"Olga\";\"main\"\n\"4166979\";\"Olympia Heights\";\"main\"\n\"4167003\";\"Opa-locka\";\"main\"\n\"4167055\";\"Orange City\";\"main\"\n\"4167102\";\"Orange Park\";\"main\"\n\"4167127\";\"Orangetree\";\"main\"\n\"4167147\";\"Orlando\";\"main\"\n\"4167147\";\"ao lan duo\";\"other\"\n\"4167147\";\"orando\";\"other\"\n\"4167147\";\"Орландо\";\"other\"\n\"4167147\";\"אורלנדו\";\"other\"\n\"4167147\";\"オーランド\";\"other\"\n\"4167147\";\"奥兰多\";\"other\"\n\"4167176\";\"Orlovista\";\"main\"\n\"4167178\";\"Ormond Beach\";\"main\"\n\"4167190\";\"Ormond-by-the-Sea\";\"main\"\n\"4167245\";\"Osprey\";\"main\"\n\"4167348\";\"Oviedo\";\"main\"\n\"4167348\";\"Ov'edo\";\"other\"\n\"4167348\";\"Овьедо\";\"other\"\n\"4167424\";\"Pace\";\"main\"\n\"4167473\";\"Pahokee\";\"main\"\n\"4167482\";\"Palatka\";\"main\"\n\"4167495\";\"Palm Aire\";\"main\"\n\"4167499\";\"Palm Bay\";\"main\"\n\"4167505\";\"Palm Beach\";\"main\"\n\"4167519\";\"Palm Beach Gardens\";\"main\"\n\"4167533\";\"Palm Beach Shores\";\"main\"\n\"4167536\";\"Palm City\";\"main\"\n\"4167538\";\"Palm Coast\";\"main\"\n\"4167545\";\"Palm Harbor\";\"main\"\n\"4167583\";\"Palm Springs\";\"main\"\n\"4167583\";\"Палм Спрингс\";\"other\"\n\"4167594\";\"Palm Springs North\";\"main\"\n\"4167601\";\"Palm Valley\";\"main\"\n\"4167632\";\"Palmetto\";\"main\"\n\"4167647\";\"Palmetto Estates\";\"main\"\n\"4167671\";\"Palmona Park\";\"main\"\n\"4167694\";\"Panama City\";\"main\"\n\"4167694\";\"Panama\";\"other\"\n\"4167694\";\"Панама\";\"other\"\n\"4167695\";\"Panama City Beach\";\"main\"\n\"4167738\";\"Paradise Heights\";\"main\"\n\"4167797\";\"Parker\";\"main\"\n\"4167797\";\"Паркер\";\"other\"\n\"4167829\";\"Parkland\";\"main\"\n\"4168062\";\"Pebble Creek\";\"main\"\n\"4168095\";\"Pelican Bay\";\"main\"\n\"4168138\";\"Pembroke Park\";\"main\"\n\"4168139\";\"Pembroke Pines\";\"main\"\n\"4168228\";\"Pensacola\";\"main\"\n\"4168228\";\"Pensacola i Florida\";\"other\"\n\"4168228\";\"Pensakola\";\"other\"\n\"4168228\";\"pensakora\";\"other\"\n\"4168228\";\"Пенсакола\";\"other\"\n\"4168228\";\"ペンサコーラ\";\"other\"\n\"4168244\";\"Perry\";\"main\"\n\"4168371\";\"Pierson\";\"main\"\n\"4168418\";\"Pine Castle\";\"main\"\n\"4168459\";\"Pine Hills\";\"main\"\n\"4168493\";\"Pine Island Center\";\"main\"\n\"4168506\";\"Pine Island Ridge\";\"main\"\n\"4168556\";\"Pine Manor\";\"main\"\n\"4168563\";\"Pine Ridge\";\"main\"\n\"4168564\";\"Pine Ridge\";\"main\"\n\"4168590\";\"Pinecrest\";\"main\"\n\"4168630\";\"Pinellas Park\";\"main\"\n\"4168659\";\"Pinewood\";\"main\"\n\"4168761\";\"Placid Lakes\";\"main\"\n\"4168773\";\"Plant City\";\"main\"\n\"4168782\";\"Plantation\";\"main\"\n\"4168782\";\"Plantacija\";\"other\"\n\"4168782\";\"Плантация\";\"other\"\n\"4168783\";\"Plantation\";\"main\"\n\"4168784\";\"Plantation\";\"main\"\n\"4168784\";\"Plantacija\";\"other\"\n\"4168784\";\"Плантация\";\"other\"\n\"4168804\";\"Plantation Mobile Home Park\";\"main\"\n\"4168930\";\"Poinciana\";\"main\"\n\"4168985\";\"Polk City\";\"main\"\n\"4169014\";\"Pompano Beach\";\"main\"\n\"4169018\";\"Pompano Beach Highlands\";\"main\"\n\"4169033\";\"Ponce Inlet\";\"main\"\n\"4169060\";\"Ponte Vedra Beach\";\"main\"\n\"4169060\";\"Ponte-Vedra-Bich\";\"other\"\n\"4169060\";\"Понте-Ведра-Бич\";\"other\"\n\"4169130\";\"Port Charlotte\";\"main\"\n\"4169144\";\"Port La Belle\";\"main\"\n\"4169156\";\"Port Orange\";\"main\"\n\"4169160\";\"Port Richey\";\"main\"\n\"4169166\";\"Port Saint Joe\";\"main\"\n\"4169170\";\"Port Saint John\";\"main\"\n\"4169171\";\"Port Saint Lucie\";\"main\"\n\"4169171\";\"Port St. Lucie\";\"other\"\n\"4169176\";\"Port Salerno\";\"main\"\n\"4169302\";\"Pretty Bayou\";\"main\"\n\"4169345\";\"Princeton\";\"main\"\n\"4169345\";\"Prinston\";\"other\"\n\"4169345\";\"Принстон\";\"other\"\n\"4169378\";\"Progress Village\";\"main\"\n\"4169452\";\"Punta Gorda\";\"main\"\n\"4169455\";\"Punta Gorda Isles\";\"main\"\n\"4169461\";\"Punta Rassa\";\"main\"\n\"4169510\";\"Quincy\";\"main\"\n\"4169510\";\"Kuinsi\";\"other\"\n\"4169510\";\"Куинси\";\"other\"\n\"4169810\";\"Redington Beach\";\"main\"\n\"4169811\";\"Redington Shores\";\"main\"\n\"4170000\";\"Richmond Heights\";\"main\"\n\"4170005\";\"Richmond West\";\"main\"\n\"4170014\";\"Ridge Manor\";\"main\"\n\"4170018\";\"Ridge Wood Heights\";\"main\"\n\"4170019\";\"Ridgecrest\";\"main\"\n\"4170062\";\"Rio\";\"main\"\n\"4170156\";\"Riverview\";\"main\"\n\"4170174\";\"Riviera Beach\";\"main\"\n\"4170301\";\"Rock Island\";\"main\"\n\"4170301\";\"Rok-Ajlend\";\"other\"\n\"4170301\";\"Рок-Айленд\";\"other\"\n\"4170358\";\"Rockledge\";\"main\"\n\"4170520\";\"Roseland\";\"main\"\n\"4170556\";\"Rotonda\";\"main\"\n\"4170617\";\"Royal Palm Beach\";\"main\"\n\"4170625\";\"Royal Palm Estates\";\"main\"\n\"4170688\";\"Ruskin\";\"main\"\n\"4170797\";\"Safety Harbor\";\"main\"\n\"4170894\";\"Saint Augustine\";\"main\"\n\"4170894\";\"St. Augustine\";\"other\"\n\"4170896\";\"Saint Augustine Beach\";\"main\"\n\"4170908\";\"Saint Augustine Shores\";\"main\"\n\"4170965\";\"Saint Cloud\";\"main\"\n\"4171010\";\"Saint George\";\"main\"\n\"4171061\";\"Saint James City\";\"main\"\n\"4171522\";\"Saint Pete Beach\";\"main\"\n\"4171522\";\"St. Pete Beach\";\"other\"\n\"4171563\";\"Saint Petersburg\";\"main\"\n\"4171563\";\"St. Petersburg\";\"other\"\n\"4171741\";\"Samoset\";\"main\"\n\"4171782\";\"San Carlos Park\";\"main\"\n\"4171972\";\"Sandalfoot Cove\";\"main\"\n\"4172052\";\"Sanibel\";\"main\"\n\"4172086\";\"Sanford\";\"main\"\n\"4172131\";\"Sarasota\";\"main\"\n\"4172150\";\"Sarasota Springs\";\"main\"\n\"4172173\";\"Satellite Beach\";\"main\"\n\"4172206\";\"Sawgrass\";\"main\"\n\"4172248\";\"Schall Circle\";\"main\"\n\"4172294\";\"Scott Lake\";\"main\"\n\"4172366\";\"Seaside\";\"main\"\n\"4172366\";\"Sisajd\";\"other\"\n\"4172366\";\"Сисайд\";\"other\"\n\"4172372\";\"Sebastian\";\"main\"\n\"4172383\";\"Sebring\";\"main\"\n\"4172413\";\"Seffner\";\"main\"\n\"4172434\";\"Seminole\";\"main\"\n\"4172460\";\"Seminole Manor\";\"main\"\n\"4172557\";\"Sewall's Point\";\"main\"\n\"4172602\";\"Shady Hills\";\"main\"\n\"4172658\";\"Sharpes\";\"main\"\n\"4172935\";\"Siesta Key\";\"main\"\n\"4172971\";\"Silver Lake\";\"main\"\n\"4173007\";\"Silver Springs Shores\";\"main\"\n\"4173007\";\"Silver Springs\";\"other\"\n\"4173124\";\"Sky Lake\";\"main\"\n\"4173293\";\"Sneads\";\"main\"\n\"4173330\";\"Solana\";\"main\"\n\"4173376\";\"South Bay\";\"main\"\n\"4173380\";\"South Beach\";\"main\"\n\"4173392\";\"South Bradenton\";\"main\"\n\"4173394\";\"South Apopka\";\"main\"\n\"4173396\";\"South Brooksville\";\"main\"\n\"4173431\";\"South Daytona\";\"main\"\n\"4173460\";\"South Gate Ridge\";\"main\"\n\"4173467\";\"South Highpoint\";\"main\"\n\"4173495\";\"South Miami\";\"main\"\n\"4173497\";\"South Miami Heights\";\"main\"\n\"4173522\";\"South Palm Beach\";\"main\"\n\"4173524\";\"South Pasadena\";\"main\"\n\"4173524\";\"Juzhnaja Pasadena\";\"other\"\n\"4173524\";\"Южная Пасадена\";\"other\"\n\"4173528\";\"South Patrick Shores\";\"main\"\n\"4173558\";\"South Sarasota\";\"main\"\n\"4173593\";\"South Venice\";\"main\"\n\"4173600\";\"Southchase\";\"main\"\n\"4173634\";\"Southgate\";\"main\"\n\"4173717\";\"Southwest Ranches\";\"main\"\n\"4173838\";\"Spring Hill\";\"main\"\n\"4173838\";\"Spring-Khill\";\"other\"\n\"4173838\";\"Спринг-Хилл\";\"other\"\n\"4173892\";\"Springfield\";\"main\"\n\"4173892\";\"Springfild\";\"other\"\n\"4173892\";\"Спрингфилд\";\"other\"\n\"4173944\";\"Stacey Street\";\"main\"\n\"4173999\";\"Starke\";\"main\"\n\"4174131\";\"Stock Island\";\"main\"\n\"4174201\";\"Stuart\";\"main\"\n\"4174252\";\"Sugarmill Woods\";\"main\"\n\"4174317\";\"Sun City Center\";\"main\"\n\"4174343\";\"Suncoast Estates\";\"main\"\n\"4174383\";\"Sunny Isles Beach\";\"main\"\n\"4174402\";\"Sunrise\";\"main\"\n\"4174425\";\"Sunset\";\"main\"\n\"4174503\";\"Sunshine Ranches\";\"main\"\n\"4174518\";\"Surfside\";\"main\"\n\"4174600\";\"Sweetwater\";\"main\"\n\"4174700\";\"Taft\";\"main\"\n\"4174715\";\"Tallahassee\";\"main\"\n\"4174715\";\"Tallahassia\";\"other\"\n\"4174715\";\"Tallakhassi\";\"other\"\n\"4174715\";\"tarahashi\";\"other\"\n\"4174715\";\"Таллахасси\";\"other\"\n\"4174715\";\"טאלאהאסי\";\"other\"\n\"4174715\";\"タラハシー\";\"other\"\n\"4174738\";\"Tamarac\";\"main\"\n\"4174744\";\"Tamiami\";\"main\"\n\"4174757\";\"Tampa\";\"main\"\n\"4174757\";\"tan pa\";\"other\"\n\"4174757\";\"tanpa\";\"other\"\n\"4174757\";\"tmph\";\"other\"\n\"4174757\";\"Тампа\";\"other\"\n\"4174757\";\"טמפה\";\"other\"\n\"4174757\";\"タンパ\";\"other\"\n\"4174757\";\"坦帕\";\"other\"\n\"4174791\";\"Tangelo Park\";\"main\"\n\"4174855\";\"Tarpon Springs\";\"main\"\n\"4174861\";\"Tavares\";\"main\"\n\"4174870\";\"Tavernier\";\"main\"\n\"4174888\";\"Taylor Creek\";\"main\"\n\"4174921\";\"Tedder\";\"main\"\n\"4174969\";\"Temple Terrace\";\"main\"\n\"4175011\";\"Tequesta\";\"main\"\n\"4175022\";\"Terra Mar\";\"main\"\n\"4175091\";\"The Crossings\";\"main\"\n\"4175117\";\"The Hammocks\";\"main\"\n\"4175136\";\"The Meadows\";\"main\"\n\"4175179\";\"The Villages\";\"main\"\n\"4175269\";\"Thonotosassa\";\"main\"\n\"4175296\";\"Three Lakes\";\"main\"\n\"4175298\";\"Three Oaks\";\"main\"\n\"4175319\";\"Tice\";\"main\"\n\"4175331\";\"Tierra Verde\";\"main\"\n\"4175391\";\"Timber Pines\";\"main\"\n\"4175437\";\"Titusville\";\"main\"\n\"4175437\";\"Titusvill'\";\"other\"\n\"4175437\";\"Титусвилль\";\"other\"\n\"4175538\";\"Town 'n' Country\";\"main\"\n\"4175626\";\"Treasure Island\";\"main\"\n\"4175637\";\"Trenton\";\"main\"\n\"4175637\";\"Трентон\";\"other\"\n\"4175993\";\"Twin Lakes\";\"main\"\n\"4176059\";\"Umatilla\";\"main\"\n\"4176109\";\"Union Park\";\"main\"\n\"4176217\";\"University Park\";\"main\"\n\"4176277\";\"Upper Grand Lagoon\";\"main\"\n\"4176316\";\"Valparaiso\";\"main\"\n\"4176316\";\"Val'paraiso\";\"other\"\n\"4176316\";\"Вальпараисо\";\"other\"\n\"4176318\";\"Valrico\";\"main\"\n\"4176324\";\"Vamo\";\"main\"\n\"4176380\";\"Venice\";\"main\"\n\"4176380\";\"Venecija\";\"other\"\n\"4176380\";\"Венеция\";\"other\"\n\"4176387\";\"Venice Gardens\";\"main\"\n\"4176409\";\"Vero Beach\";\"main\"\n\"4176508\";\"Villages of Oriole\";\"main\"\n\"4176509\";\"Villano Beach\";\"main\"\n\"4176527\";\"Vineyards\";\"main\"\n\"4176550\";\"Virginia Gardens\";\"main\"\n\"4177270\";\"Wabasso Beach\";\"main\"\n\"4177308\";\"Wahneta\";\"main\"\n\"4177450\";\"Warm Mineral Springs\";\"main\"\n\"4177465\";\"Warrington\";\"main\"\n\"4177492\";\"Washington Park\";\"main\"\n\"4177542\";\"Watertown\";\"main\"\n\"4177569\";\"Wauchula\";\"main\"\n\"4177580\";\"Waverly\";\"main\"\n\"4177617\";\"Wedgefield\";\"main\"\n\"4177635\";\"Weeki Wachee Gardens\";\"main\"\n\"4177671\";\"Wekiwa Springs\";\"main\"\n\"4177679\";\"Wekiva Springs\";\"main\"\n\"4177703\";\"Wellington\";\"main\"\n\"4177703\";\"Vellington\";\"other\"\n\"4177703\";\"Веллингтон\";\"other\"\n\"4177727\";\"Wesley Chapel\";\"main\"\n\"4177759\";\"West Bradenton\";\"main\"\n\"4177779\";\"Westchase\";\"main\"\n\"4177787\";\"West DeLand\";\"main\"\n\"4177865\";\"West Little River\";\"main\"\n\"4177872\";\"West Melbourne\";\"main\"\n\"4177874\";\"West Miami\";\"main\"\n\"4177887\";\"West Palm Beach\";\"main\"\n\"4177887\";\"u~esutopamubichi\";\"other\"\n\"4177887\";\"ウェストパームビーチ\";\"other\"\n\"4177908\";\"West Pensacola\";\"main\"\n\"4177917\";\"West Perrine\";\"main\"\n\"4177930\";\"West Samoset\";\"main\"\n\"4177950\";\"West Vero Corridor\";\"main\"\n\"4177960\";\"West and East Lealman\";\"main\"\n\"4177965\";\"Westchester\";\"main\"\n\"4177965\";\"Vestchester\";\"other\"\n\"4177965\";\"Вестчестер\";\"other\"\n\"4178003\";\"Weston\";\"main\"\n\"4178003\";\"Uehston\";\"other\"\n\"4178003\";\"Уэстон\";\"other\"\n\"4178032\";\"Westview\";\"main\"\n\"4178053\";\"Westwood Lake\";\"main\"\n\"4178074\";\"Wewahitchka\";\"main\"\n\"4178111\";\"Whiskey Creek\";\"main\"\n\"4178116\";\"Whisper Walk\";\"main\"\n\"4178137\";\"White City\";\"main\"\n\"4178215\";\"Whitfield\";\"main\"\n\"4178292\";\"Wildwood\";\"main\"\n\"4178397\";\"Williamsburg\";\"main\"\n\"4178414\";\"Williston\";\"main\"\n\"4178419\";\"Williston Highlands\";\"main\"\n\"4178449\";\"Willow Oak\";\"main\"\n\"4178485\";\"Wilton Manors\";\"main\"\n\"4178488\";\"Wimauma\";\"main\"\n\"4178501\";\"Windermere\";\"main\"\n\"4178540\";\"Winston\";\"main\"\n\"4178548\";\"Winter Beach\";\"main\"\n\"4178550\";\"Winter Garden\";\"main\"\n\"4178552\";\"Winter Haven\";\"main\"\n\"4178560\";\"Winter Park\";\"main\"\n\"4178573\";\"Winter Springs\";\"main\"\n\"4178741\";\"Woodville\";\"main\"\n\"4178775\";\"Wright\";\"main\"\n\"4178775\";\"Rajt\";\"other\"\n\"4178775\";\"Райт\";\"other\"\n\"4178817\";\"Yalaha\";\"main\"\n\"4178857\";\"Yeehaw Junction\";\"main\"\n\"4178919\";\"Yulee\";\"main\"\n\"4178933\";\"Zellwood\";\"main\"\n\"4178941\";\"Zephyrhills\";\"main\"\n\"4178972\";\"Zolfo Springs\";\"main\"\n\"4178992\";\"Abbeville\";\"main\"\n\"4179074\";\"Acworth\";\"main\"\n\"4179094\";\"Adairsville\";\"main\"\n\"4179193\";\"Adel\";\"main\"\n\"4179313\";\"Alamo\";\"main\"\n\"4179320\";\"Albany\";\"main\"\n\"4179320\";\"Olbani\";\"other\"\n\"4179320\";\"Олбани\";\"other\"\n\"4179557\";\"Alma\";\"main\"\n\"4179574\";\"Alpharetta\";\"main\"\n\"4179574\";\"Al'faretta\";\"other\"\n\"4179574\";\"Альфаретта\";\"other\"\n\"4179667\";\"Americus\";\"main\"\n\"4180114\";\"Aragon\";\"main\"\n\"4180134\";\"Arcade\";\"main\"\n\"4180183\";\"Arlington\";\"main\"\n\"4180183\";\"Арлингтон\";\"other\"\n\"4180316\";\"Ashburn\";\"main\"\n\"4180386\";\"Athens\";\"main\"\n\"4180386\";\"Atina\";\"other\"\n\"4180386\";\"Атина\";\"other\"\n\"4180439\";\"Atlanta\";\"main\"\n\"4180439\";\"aeteullaenta\";\"other\"\n\"4180439\";\"atlanta\";\"other\"\n\"4180439\";\"atoranta\";\"other\"\n\"4180439\";\"ya te lan da\";\"other\"\n\"4180439\";\"Атланта\";\"other\"\n\"4180439\";\"אטלנטה\";\"other\"\n\"4180439\";\"أتلانتا\";\"other\"\n\"4180439\";\"اٹلانٹا، جارجیا\";\"other\"\n\"4180439\";\"แอตแลนตา\";\"other\"\n\"4180439\";\"アトランタ\";\"other\"\n\"4180439\";\"亚特兰大\";\"other\"\n\"4180439\";\"애틀랜타\";\"other\"\n\"4180512\";\"Auburn\";\"main\"\n\"4180531\";\"Augusta\";\"main\"\n\"4180531\";\"Ogasta\";\"other\"\n\"4180531\";\"awghsta\";\"other\"\n\"4180531\";\"jwrjya\";\"other\"\n\"4180531\";\"Огаста\";\"other\"\n\"4180531\";\"أوغستا، جورجيا\";\"other\"\n\"4180564\";\"Austell\";\"main\"\n\"4180638\";\"Avondale Estates\";\"main\"\n\"4180775\";\"Bainbridge\";\"main\"\n\"4180868\";\"Baldwin\";\"main\"\n\"4180868\";\"Bolduin\";\"other\"\n\"4180868\";\"Болдуин\";\"other\"\n\"4181110\";\"Barnesville\";\"main\"\n\"4181333\";\"Baxley\";\"main\"\n\"4181936\";\"Belvedere Park\";\"main\"\n\"4182083\";\"Berkeley Lake\";\"main\"\n\"4183305\";\"Blackshear\";\"main\"\n\"4183363\";\"Blakely\";\"main\"\n\"4183463\";\"Bloomingdale\";\"main\"\n\"4183521\";\"Blue Ridge\";\"main\"\n\"4183682\";\"Bogart\";\"main\"\n\"4183772\";\"Bonanza\";\"main\"\n\"4183849\";\"Boston\";\"main\"\n\"4183849\";\"Бостон\";\"other\"\n\"4183899\";\"Bowdon\";\"main\"\n\"4183954\";\"Bowman\";\"main\"\n\"4184165\";\"Braselton\";\"main\"\n\"4184222\";\"Bremen\";\"main\"\n\"4184540\";\"Brooklet\";\"main\"\n\"4184813\";\"Broxton\";\"main\"\n\"4184845\";\"Brunswick\";\"main\"\n\"4184845\";\"Braunshvejg\";\"other\"\n\"4184845\";\"Брауншвейг\";\"other\"\n\"4185076\";\"Buena Vista\";\"main\"\n\"4185110\";\"Buford\";\"main\"\n\"4185437\";\"Butler\";\"main\"\n\"4185553\";\"Byron\";\"main\"\n\"4185632\";\"Cairo\";\"main\"\n\"4185657\";\"Calhoun\";\"main\"\n\"4185863\";\"Camilla\";\"main\"\n\"4186213\";\"Canton\";\"main\"\n\"4186416\";\"Carrollton\";\"main\"\n\"4186531\";\"Cartersville\";\"main\"\n\"4186955\";\"Cedartown\";\"main\"\n\"4187055\";\"Centerville\";\"main\"\n\"4187204\";\"Chamblee\";\"main\"\n\"4187435\";\"Chatsworth\";\"main\"\n\"4187446\";\"Chattanooga Valley\";\"main\"\n\"4187637\";\"Chester\";\"main\"\n\"4187637\";\"Честер\";\"other\"\n\"4187696\";\"Chickamauga\";\"main\"\n\"4188197\";\"Clarkesville\";\"main\"\n\"4188233\";\"Clarkston\";\"main\"\n\"4188239\";\"Claxton\";\"main\"\n\"4188287\";\"Clayton\";\"main\"\n\"4188377\";\"Cleveland\";\"main\"\n\"4188377\";\"Klivlend\";\"other\"\n\"4188377\";\"Кливленд\";\"other\"\n\"4188590\";\"Cochran\";\"main\"\n\"4188815\";\"College Park\";\"main\"\n\"4188815\";\"Kolledzh Park\";\"other\"\n\"4188815\";\"Колледж Парк\";\"other\"\n\"4188934\";\"Colquitt\";\"main\"\n\"4188985\";\"Columbus\";\"main\"\n\"4188985\";\"kolumbus\";\"other\"\n\"4188985\";\"koronbasu\";\"other\"\n\"4188985\";\"Колумбус\";\"other\"\n\"4188985\";\"コロンバス\";\"other\"\n\"4189003\";\"Comer\";\"main\"\n\"4189014\";\"Commerce\";\"main\"\n\"4189157\";\"Conley\";\"main\"\n\"4189213\";\"Conyers\";\"main\"\n\"4189423\";\"Cordele\";\"main\"\n\"4189529\";\"Cornelia\";\"main\"\n\"4189612\";\"Country Club Estates\";\"main\"\n\"4189613\";\"Country Club Estates\";\"main\"\n\"4189785\";\"Covington\";\"main\"\n\"4190396\";\"Cumming\";\"main\"\n\"4190434\";\"Cusseta\";\"main\"\n\"4190451\";\"Cuthbert\";\"main\"\n\"4190523\";\"Dacula\";\"main\"\n\"4190542\";\"Dahlonega\";\"main\"\n\"4190581\";\"Dalton\";\"main\"\n\"4190581\";\"Далтон\";\"other\"\n\"4190598\";\"Dallas\";\"main\"\n\"4190598\";\"Даллас\";\"other\"\n\"4190744\";\"Darien\";\"main\"\n\"4190940\";\"Davisboro\";\"main\"\n\"4190953\";\"Dawson\";\"main\"\n\"4191124\";\"Decatur\";\"main\"\n\"4191124\";\"Dekejter\";\"other\"\n\"4191124\";\"Декейтер\";\"other\"\n\"4191144\";\"Deenwood\";\"main\"\n\"4191294\";\"Demorest\";\"main\"\n\"4191628\";\"Dock Junction\";\"main\"\n\"4191735\";\"Donalsonville\";\"main\"\n\"4191768\";\"Doraville\";\"main\"\n\"4191916\";\"Douglas\";\"main\"\n\"4191955\";\"Douglasville\";\"main\"\n\"4192088\";\"Druid Hills\";\"main\"\n\"4192205\";\"Dublin\";\"main\"\n\"4192205\";\"Дублин\";\"other\"\n\"4192289\";\"Duluth\";\"main\"\n\"4192289\";\"Dulut\";\"other\"\n\"4192289\";\"Дулут\";\"other\"\n\"4192375\";\"Dunwoody\";\"main\"\n\"4192375\";\"Danvudi\";\"other\"\n\"4192375\";\"Данвуди\";\"other\"\n\"4192606\";\"East Dublin\";\"main\"\n\"4192627\";\"East Griffin\";\"main\"\n\"4192674\";\"East Point\";\"main\"\n\"4192686\";\"East Newnan\";\"main\"\n\"4192754\";\"Eastman\";\"main\"\n\"4192800\";\"Eatonton\";\"main\"\n\"4192985\";\"Edison\";\"main\"\n\"4192985\";\"Ehdison\";\"other\"\n\"4192985\";\"Эдисон\";\"other\"\n\"4193099\";\"Elberton\";\"main\"\n\"4193210\";\"Ellaville\";\"main\"\n\"4193229\";\"Ellijay\";\"main\"\n\"4193354\";\"Emerson\";\"main\"\n\"4193661\";\"Euharlee\";\"main\"\n\"4193699\";\"Evans\";\"main\"\n\"4194072\";\"Experiment\";\"main\"\n\"4194111\";\"Fair Oaks\";\"main\"\n\"4194121\";\"Fairburn\";\"main\"\n\"4194202\";\"Fairview\";\"main\"\n\"4194474\";\"Fayetteville\";\"main\"\n\"4195168\";\"Fitzgerald\";\"main\"\n\"4195544\";\"Flowery Branch\";\"main\"\n\"4195600\";\"Folkston\";\"main\"\n\"4195701\";\"Forest Park\";\"main\"\n\"4195771\";\"Forsyth\";\"main\"\n\"4195809\";\"Fort Gaines\";\"main\"\n\"4195850\";\"Fort Oglethorpe\";\"main\"\n\"4195869\";\"Fort Valley\";\"main\"\n\"4196586\";\"Gainesville\";\"main\"\n\"4196688\";\"Garden City\";\"main\"\n\"4196688\";\"Garden Siti\";\"other\"\n\"4196688\";\"Гарден Сити\";\"other\"\n\"4196917\";\"Georgetown\";\"main\"\n\"4197325\";\"Glennville\";\"main\"\n\"4197593\";\"Gordon\";\"main\"\n\"4197884\";\"Grantville\";\"main\"\n\"4197938\";\"Gray\";\"main\"\n\"4197968\";\"Grayson\";\"main\"\n\"4198204\";\"Greensboro\";\"main\"\n\"4198204\";\"Grinsboro\";\"other\"\n\"4198204\";\"Гринсборо\";\"other\"\n\"4198298\";\"Gresham Park\";\"main\"\n\"4198322\";\"Griffin\";\"main\"\n\"4198322\";\"Гриффин\";\"other\"\n\"4198514\";\"Grovetown\";\"main\"\n\"4198592\";\"Gumlog\";\"main\"\n\"4198633\";\"Guyton\";\"main\"\n\"4198732\";\"Hagan\";\"main\"\n\"4198750\";\"Hahira\";\"main\"\n\"4198972\";\"Hampton\";\"main\"\n\"4198972\";\"Khehmpton\";\"other\"\n\"4198972\";\"Хэмптон\";\"other\"\n\"4199055\";\"Hannahs Mill\";\"main\"\n\"4199075\";\"Hapeville\";\"main\"\n\"4199219\";\"Harlem\";\"main\"\n\"4199572\";\"Hartwell\";\"main\"\n\"4199694\";\"Hawkinsville\";\"main\"\n\"4199778\";\"Hazlehurst\";\"main\"\n\"4199928\";\"Helena\";\"main\"\n\"4199928\";\"Khelena\";\"other\"\n\"4199928\";\"Хелена\";\"other\"\n\"4200088\";\"Hephzibah\";\"main\"\n\"4200671\";\"Hinesville\";\"main\"\n\"4200707\";\"Hiram\";\"main\"\n\"4200849\";\"Hogansville\";\"main\"\n\"4201047\";\"Holly Springs\";\"main\"\n\"4201141\";\"Homer\";\"main\"\n\"4201144\";\"Homerville\";\"main\"\n\"4201465\";\"Hoschton\";\"main\"\n\"4202021\";\"Indian Springs\";\"main\"\n\"4202022\";\"Indian Springs\";\"main\"\n\"4202260\";\"Irondale\";\"main\"\n\"4202308\";\"Isle of Hope\";\"main\"\n\"4202321\";\"Ivey\";\"main\"\n\"4202426\";\"Jackson\";\"main\"\n\"4202426\";\"Dzhekson\";\"other\"\n\"4202426\";\"Джексон\";\"other\"\n\"4202634\";\"Jasper\";\"main\"\n\"4202672\";\"Jefferson\";\"main\"\n\"4202672\";\"Dzhefferson\";\"other\"\n\"4202672\";\"Джефферсон\";\"other\"\n\"4202673\";\"Jefferson\";\"main\"\n\"4202699\";\"Jeffersonville\";\"main\"\n\"4202810\";\"Jesup\";\"main\"\n\"4203316\";\"Jonesboro\";\"main\"\n\"4203316\";\"Dzhonsboro\";\"other\"\n\"4203316\";\"Джонсборо\";\"other\"\n\"4203696\";\"Kennesaw\";\"main\"\n\"4203696\";\"Kenneso\";\"other\"\n\"4203696\";\"Кеннесо\";\"other\"\n\"4204007\";\"Kingsland\";\"main\"\n\"4204230\";\"La Grange\";\"main\"\n\"4204230\";\"City of LaGrange\";\"other\"\n\"4204230\";\"LaGrange\";\"other\"\n\"4204241\";\"LaFayette\";\"main\"\n\"4204350\";\"Lake City\";\"main\"\n\"4204775\";\"Lakeland\";\"main\"\n\"4204818\";\"Lakeview\";\"main\"\n\"4204838\";\"Lakeview Estates\";\"main\"\n\"4205164\";\"Lavonia\";\"main\"\n\"4205196\";\"Lawrenceville\";\"main\"\n\"4205392\";\"Leesburg\";\"main\"\n\"4205724\";\"Lilburn\";\"main\"\n\"4205793\";\"Lincoln Park\";\"main\"\n\"4205797\";\"Lincolnton\";\"main\"\n\"4205805\";\"Lindale\";\"main\"\n\"4205885\";\"Lithia Springs\";\"main\"\n\"4205889\";\"Lithonia\";\"main\"\n\"4206502\";\"Locust Grove\";\"main\"\n\"4206547\";\"Loganville\";\"main\"\n\"4206783\";\"Lookout Mountain\";\"main\"\n\"4206882\";\"Louisville\";\"main\"\n\"4206882\";\"Luisvil\";\"other\"\n\"4206882\";\"Луисвил\";\"other\"\n\"4206905\";\"Lovejoy\";\"main\"\n\"4207083\";\"Ludowici\";\"main\"\n\"4207098\";\"Lula\";\"main\"\n\"4207114\";\"Lumber City\";\"main\"\n\"4207128\";\"Lumpkin\";\"main\"\n\"4207205\";\"Lyons\";\"main\"\n\"4207226\";\"Mableton\";\"main\"\n\"4207400\";\"Macon\";\"main\"\n\"4207400\";\"Makon\";\"other\"\n\"4207400\";\"mei ken\";\"other\"\n\"4207400\";\"Макон\";\"other\"\n\"4207400\";\"梅肯\";\"other\"\n\"4207447\";\"Madison\";\"main\"\n\"4207447\";\"Мадисон\";\"other\"\n\"4207625\";\"Manchester\";\"main\"\n\"4207625\";\"Манчестер\";\"other\"\n\"4207783\";\"Marietta\";\"main\"\n\"4207783\";\"marietta\";\"other\"\n\"4207783\";\"Мариетта\";\"other\"\n\"4207783\";\"マリエッタ\";\"other\"\n\"4207892\";\"Marshallville\";\"main\"\n\"4207981\";\"Martinez\";\"main\"\n\"4207981\";\"Martines\";\"other\"\n\"4207981\";\"Мартинес\";\"other\"\n\"4208245\";\"Maysville\";\"main\"\n\"4208302\";\"McCaysville\";\"main\"\n\"4208442\";\"McDonough\";\"main\"\n\"4208683\";\"McRae\";\"main\"\n\"4208828\";\"Meigs\";\"main\"\n\"4209013\";\"Metter\";\"main\"\n\"4209132\";\"Midway\";\"main\"\n\"4209448\";\"Milledgeville\";\"main\"\n\"4209454\";\"Millen\";\"main\"\n\"4209884\";\"Monroe\";\"main\"\n\"4209884\";\"Monro\";\"other\"\n\"4209884\";\"Монро\";\"other\"\n\"4209927\";\"Montezuma\";\"main\"\n\"4209934\";\"Montgomery\";\"main\"\n\"4209934\";\"Montgomeri\";\"other\"\n\"4209934\";\"Монтгомери\";\"other\"\n\"4209951\";\"Monticello\";\"main\"\n\"4210099\";\"Morgan\";\"main\"\n\"4210254\";\"Morrow\";\"main\"\n\"4210397\";\"Moultrie\";\"main\"\n\"4211083\";\"Mount Vernon\";\"main\"\n\"4211143\";\"Mount Zion\";\"main\"\n\"4211144\";\"Mount Zion\";\"main\"\n\"4211775\";\"Nahunta\";\"main\"\n\"4211839\";\"Nashville\";\"main\"\n\"4211839\";\"Nashvill\";\"other\"\n\"4211839\";\"Нашвилл\";\"other\"\n\"4212684\";\"Newnan\";\"main\"\n\"4212770\";\"Nicholls\";\"main\"\n\"4212779\";\"Nicholson\";\"main\"\n\"4212888\";\"Norcross\";\"main\"\n\"4212937\";\"North Atlanta\";\"main\"\n\"4212992\";\"North Decatur\";\"main\"\n\"4212995\";\"North Druid Hills\";\"main\"\n\"4213771\";\"Oakwood\";\"main\"\n\"4213772\";\"Oakwood\";\"main\"\n\"4213812\";\"Ocilla\";\"main\"\n\"4213919\";\"Oglethorpe\";\"main\"\n\"4214294\";\"Omega\";\"main\"\n\"4214538\";\"Oxford\";\"main\"\n\"4214538\";\"Oksford\";\"other\"\n\"4214538\";\"Оксфорд\";\"other\"\n\"4214627\";\"Palmetto\";\"main\"\n\"4214693\";\"Panthersville\";\"main\"\n\"4215110\";\"Peachtree City\";\"main\"\n\"4215163\";\"Pearson\";\"main\"\n\"4215243\";\"Pelham\";\"main\"\n\"4215251\";\"Pembroke\";\"main\"\n\"4215391\";\"Perry\";\"main\"\n\"4216043\";\"Pine Mountain\";\"main\"\n\"4216049\";\"Pine Mountain\";\"main\"\n\"4216948\";\"Pooler\";\"main\"\n\"4217075\";\"Port Wentworth\";\"main\"\n\"4217100\";\"Porterdale\";\"main\"\n\"4217214\";\"Powder Springs\";\"main\"\n\"4217634\";\"Putney\";\"main\"\n\"4217712\";\"Quitman\";\"main\"\n\"4217931\";\"Raoul\";\"main\"\n\"4218165\";\"Redan\";\"main\"\n\"4218165\";\"Редан\";\"other\"\n\"4218244\";\"Reed Creek\";\"main\"\n\"4218414\";\"Reidsville\";\"main\"\n\"4218581\";\"Reynolds\";\"main\"\n\"4218732\";\"Richland\";\"main\"\n\"4218732\";\"Richlend\";\"other\"\n\"4218732\";\"Ричленд\";\"other\"\n\"4218752\";\"Richmond Hill\";\"main\"\n\"4218882\";\"Rincon\";\"main\"\n\"4218896\";\"Ringgold\";\"main\"\n\"4219001\";\"Riverdale\";\"main\"\n\"4219255\";\"Rochelle\";\"main\"\n\"4219459\";\"Rockmart\";\"main\"\n\"4219762\";\"Rome\";\"main\"\n\"4219934\";\"Roswell\";\"main\"\n\"4219964\";\"Rossville\";\"main\"\n\"4220073\";\"Royston\";\"main\"\n\"4220629\";\"Saint Marys\";\"main\"\n\"4220861\";\"Saint Simon Mills\";\"main\"\n\"4220862\";\"Saint Simons\";\"main\"\n\"4221206\";\"Sandersville\";\"main\"\n\"4221333\";\"Sandy Springs\";\"main\"\n\"4221394\";\"Sardis\";\"main\"\n\"4221395\";\"Sardis\";\"main\"\n\"4221552\";\"Savannah\";\"main\"\n\"4221552\";\"Savanna\";\"other\"\n\"4221552\";\"Savannah i Georgia\";\"other\"\n\"4221552\";\"saban'na\";\"other\"\n\"4221552\";\"sha wa na\";\"other\"\n\"4221552\";\"Саванна\";\"other\"\n\"4221552\";\"サバンナ\";\"other\"\n\"4221552\";\"沙瓦納\";\"other\"\n\"4221732\";\"Scottdale\";\"main\"\n\"4221953\";\"Senoia\";\"main\"\n\"4222182\";\"Shannon\";\"main\"\n\"4222192\";\"Shannon\";\"main\"\n\"4222333\";\"Shellman\";\"main\"\n\"4223004\";\"Skidaway Island\";\"main\"\n\"4223379\";\"Smyrna\";\"main\"\n\"4223379\";\"Smirna\";\"other\"\n\"4223379\";\"Смирна\";\"other\"\n\"4223413\";\"Snellville\";\"main\"\n\"4223469\";\"Social Circle\";\"main\"\n\"4223516\";\"Soperton\";\"main\"\n\"4223871\";\"Sparks\";\"main\"\n\"4223871\";\"Спаркс\";\"other\"\n\"4223874\";\"Sparks\";\"main\"\n\"4223880\";\"Sparta\";\"main\"\n\"4224162\";\"Springfield\";\"main\"\n\"4224162\";\"Springfild\";\"other\"\n\"4224162\";\"Спрингфилд\";\"other\"\n\"4224413\";\"Statesboro\";\"main\"\n\"4224427\";\"Statham\";\"main\"\n\"4224681\";\"Stockbridge\";\"main\"\n\"4224745\";\"Stone Mountain\";\"main\"\n\"4225039\";\"Sugar Hill\";\"main\"\n\"4225122\";\"Summerville\";\"main\"\n\"4225215\";\"Sunnyside\";\"main\"\n\"4225309\";\"Suwanee\";\"main\"\n\"4225346\";\"Swainsboro\";\"main\"\n\"4225515\";\"Sylvania\";\"main\"\n\"4225522\";\"Sylvester\";\"main\"\n\"4225658\";\"Tallapoosa\";\"main\"\n\"4225973\";\"Temple\";\"main\"\n\"4226031\";\"Tennille\";\"main\"\n\"4226348\";\"Thomasville\";\"main\"\n\"4226364\";\"Thomaston\";\"main\"\n\"4226435\";\"Thomson\";\"main\"\n\"4226499\";\"Thunderbolt\";\"main\"\n\"4226552\";\"Tifton\";\"main\"\n\"4226722\";\"Toccoa\";\"main\"\n\"4227012\";\"Trenton\";\"main\"\n\"4227012\";\"Трентон\";\"other\"\n\"4227128\";\"Trion\";\"main\"\n\"4227213\";\"Tucker\";\"main\"\n\"4227213\";\"Taker\";\"other\"\n\"4227213\";\"Такер\";\"other\"\n\"4227277\";\"Tunnel Hill\";\"main\"\n\"4227521\";\"Twin City\";\"main\"\n\"4227593\";\"Tybee Island\";\"main\"\n\"4227612\";\"Tyrone\";\"main\"\n\"4227639\";\"Unadilla\";\"main\"\n\"4227777\";\"Union City\";\"main\"\n\"4227777\";\"Junion-Siti\";\"other\"\n\"4227777\";\"Юнион-Сити\";\"other\"\n\"4227871\";\"Union Point\";\"main\"\n\"4227917\";\"Unionville\";\"main\"\n\"4228147\";\"Valdosta\";\"main\"\n\"4228262\";\"Varnell\";\"main\"\n\"4228425\";\"Vidalia\";\"main\"\n\"4228440\";\"Vienna\";\"main\"\n\"4228452\";\"Villa Rica\";\"main\"\n\"4228518\";\"Vinings\";\"main\"\n\"4229079\";\"Wadley\";\"main\"\n\"4229317\";\"Walnut Grove\";\"main\"\n\"4229357\";\"Walthourville\";\"main\"\n\"4229476\";\"Warner Robins\";\"main\"\n\"4229517\";\"Warrenton\";\"main\"\n\"4229546\";\"Washington\";\"main\"\n\"4229546\";\"Vashington\";\"other\"\n\"4229546\";\"Вашингтон\";\"other\"\n\"4229691\";\"Watkinsville\";\"main\"\n\"4229763\";\"Waycross\";\"main\"\n\"4229791\";\"Waynesboro\";\"main\"\n\"4230259\";\"West Point\";\"main\"\n\"4230280\";\"West Point\";\"main\"\n\"4230760\";\"Whitemarsh Island\";\"main\"\n\"4231065\";\"Willacoochee\";\"main\"\n\"4231354\";\"Wilmington Island\";\"main\"\n\"4231523\";\"Winder\";\"main\"\n\"4231567\";\"Winterville\";\"main\"\n\"4231725\";\"Woodbine\";\"main\"\n\"4231738\";\"Woodbury\";\"main\"\n\"4231738\";\"Vudbari\";\"other\"\n\"4231738\";\"Вудбари\";\"other\"\n\"4231874\";\"Woodstock\";\"main\"\n\"4231874\";\"Vudstok\";\"other\"\n\"4231874\";\"Вудсток\";\"other\"\n\"4231997\";\"Wrens\";\"main\"\n\"4232049\";\"Wrightsville\";\"main\"\n\"4232308\";\"Zebulon\";\"main\"\n\"4232564\";\"Albers\";\"main\"\n\"4232568\";\"Albion\";\"main\"\n\"4232652\";\"Alorton\";\"main\"\n\"4232662\";\"Altamont\";\"main\"\n\"4232679\";\"Alton\";\"main\"\n\"4232776\";\"Anna\";\"main\"\n\"4232862\";\"Arcola\";\"main\"\n\"4232911\";\"Arthur\";\"main\"\n\"4232953\";\"Ashland\";\"main\"\n\"4232987\";\"Assumption\";\"main\"\n\"4232997\";\"Athens\";\"main\"\n\"4233022\";\"Atwood\";\"main\"\n\"4233029\";\"Auburn\";\"main\"\n\"4233090\";\"Aviston\";\"main\"\n\"4233255\";\"Barry\";\"main\"\n\"4233430\";\"Beckemeyer\";\"main\"\n\"4233552\";\"Bement\";\"main\"\n\"4233572\";\"Benld\";\"main\"\n\"4233586\";\"Benton\";\"main\"\n\"4233586\";\"Бентон\";\"other\"\n\"4233662\";\"Bethalto\";\"main\"\n\"4233670\";\"Bethany\";\"main\"\n\"4233813\";\"Belleville\";\"main\"\n\"4234081\";\"Blue Mound\";\"main\"\n\"4234362\";\"Breese\";\"main\"\n\"4234416\";\"Bridgeport\";\"main\"\n\"4234436\";\"Brighton\";\"main\"\n\"4234436\";\"Brajton\";\"other\"\n\"4234436\";\"Брайтон\";\"other\"\n\"4234477\";\"Brookport\";\"main\"\n\"4234810\";\"Bunker Hill\";\"main\"\n\"4234969\";\"Cahokia\";\"main\"\n\"4234985\";\"Cairo\";\"main\"\n\"4235075\";\"Cambria\";\"main\"\n\"4235193\";\"Carbondale\";\"main\"\n\"4235211\";\"Carlinville\";\"main\"\n\"4235229\";\"Carlyle\";\"main\"\n\"4235246\";\"Carmi\";\"main\"\n\"4235274\";\"Carrier Mills\";\"main\"\n\"4235288\";\"Carrollton\";\"main\"\n\"4235311\";\"Carterville\";\"main\"\n\"4235334\";\"Casey\";\"main\"\n\"4235355\";\"Caseyville\";\"main\"\n\"4235535\";\"Central City\";\"main\"\n\"4235587\";\"Centralia\";\"main\"\n\"4235600\";\"Centreville\";\"main\"\n\"4235607\";\"Cerro Gordo\";\"main\"\n\"4235668\";\"Charleston\";\"main\"\n\"4235668\";\"Charlston\";\"other\"\n\"4235668\";\"Чарлстон\";\"other\"\n\"4235683\";\"Chatham\";\"main\"\n\"4235724\";\"Chester\";\"main\"\n\"4235724\";\"Честер\";\"other\"\n\"4235766\";\"Chrisman\";\"main\"\n\"4235804\";\"Christopher\";\"main\"\n\"4236102\";\"Cobden\";\"main\"\n\"4236191\";\"Collinsville\";\"main\"\n\"4236191\";\"Kollinsvil'\";\"other\"\n\"4236191\";\"Коллинсвиль\";\"other\"\n\"4236206\";\"Columbia\";\"main\"\n\"4236206\";\"Kolumbija\";\"other\"\n\"4236206\";\"Колумбия\";\"other\"\n\"4236454\";\"Coulterville\";\"main\"\n\"4236555\";\"Crainville\";\"main\"\n\"4236879\";\"De Soto\";\"main\"\n\"4236895\";\"Decatur\";\"main\"\n\"4236895\";\"Dekejter\";\"other\"\n\"4236895\";\"dikatura\";\"other\"\n\"4236895\";\"Декейтер\";\"other\"\n\"4236895\";\"ডিকাটুর\";\"other\"\n\"4237076\";\"Divernon\";\"main\"\n\"4237312\";\"Du Quoin\";\"main\"\n\"4237383\";\"Dupo\";\"main\"\n\"4237473\";\"East Alton\";\"main\"\n\"4237579\";\"East Saint Louis\";\"main\"\n\"4237687\";\"Edinburg\";\"main\"\n\"4237687\";\"Ehdinburg\";\"other\"\n\"4237687\";\"Эдинбург\";\"other\"\n\"4237717\";\"Edwardsville\";\"main\"\n\"4237727\";\"Effingham\";\"main\"\n\"4237767\";\"Eldorado\";\"main\"\n\"4237953\";\"Energy\";\"main\"\n\"4238081\";\"Fairfield\";\"main\"\n\"4238081\";\"Feurfild\";\"other\"\n\"4238081\";\"Феърфилд\";\"other\"\n\"4238104\";\"Fairmont City\";\"main\"\n\"4238132\";\"Fairview Heights\";\"main\"\n\"4238777\";\"Flora\";\"main\"\n\"4238858\";\"Forsyth\";\"main\"\n\"4239058\";\"Freeburg\";\"main\"\n\"4239337\";\"Georgetown\";\"main\"\n\"4239368\";\"Germantown\";\"main\"\n\"4239423\";\"Gillespie\";\"main\"\n\"4239465\";\"Glen Carbon\";\"main\"\n\"4239483\";\"Girard\";\"main\"\n\"4239509\";\"Godfrey\";\"main\"\n\"4239702\";\"Grandview\";\"main\"\n\"4239714\";\"Granite City\";\"main\"\n\"4239773\";\"Grayville\";\"main\"\n\"4239840\";\"Greenfield\";\"main\"\n\"4239840\";\"Grinfild\";\"other\"\n\"4239840\";\"Гринфилд\";\"other\"\n\"4239858\";\"Greenup\";\"main\"\n\"4239867\";\"Greenville\";\"main\"\n\"4239867\";\"Grinvill\";\"other\"\n\"4239867\";\"Гринвилл\";\"other\"\n\"4239932\";\"Griggsville\";\"main\"\n\"4240284\";\"Harrisburg\";\"main\"\n\"4240284\";\"Garrisberg\";\"other\"\n\"4240284\";\"Гаррисберг\";\"other\"\n\"4240306\";\"Harristown\";\"main\"\n\"4240319\";\"Hartford\";\"main\"\n\"4240319\";\"Khartford\";\"other\"\n\"4240319\";\"Хартфорд\";\"other\"\n\"4240540\";\"Herrin\";\"main\"\n\"4240679\";\"Highland\";\"main\"\n\"4240782\";\"Hillsboro\";\"main\"\n\"4240782\";\"Khillsboro\";\"other\"\n\"4240782\";\"Хиллсборо\";\"other\"\n\"4241354\";\"Ina\";\"main\"\n\"4241704\";\"Jacksonville\";\"main\"\n\"4241704\";\"Dzheksonvill\";\"other\"\n\"4241704\";\"Джексонвилл\";\"other\"\n\"4241810\";\"Jerome\";\"main\"\n\"4241822\";\"Jerseyville\";\"main\"\n\"4241934\";\"Johnston City\";\"main\"\n\"4241992\";\"Jonesboro\";\"main\"\n\"4241992\";\"Dzhonsboro\";\"other\"\n\"4241992\";\"Джонсборо\";\"other\"\n\"4242242\";\"Kincaid\";\"main\"\n\"4242769\";\"Lawrenceville\";\"main\"\n\"4242790\";\"Lebanon\";\"main\"\n\"4242842\";\"Leland Grove\";\"main\"\n\"4243131\";\"Litchfield\";\"main\"\n\"4243455\";\"Long Creek\";\"main\"\n\"4243551\";\"Louisville\";\"main\"\n\"4243551\";\"Luisvil\";\"other\"\n\"4243551\";\"Луисвил\";\"other\"\n\"4243574\";\"Lovington\";\"main\"\n\"4243717\";\"Macon\";\"main\"\n\"4243717\";\"Makon\";\"other\"\n\"4243717\";\"Макон\";\"other\"\n\"4243740\";\"Madison\";\"main\"\n\"4243740\";\"Мадисон\";\"other\"\n\"4243899\";\"Marion\";\"main\"\n\"4243899\";\"Mehrion\";\"other\"\n\"4243899\";\"Мэрион\";\"other\"\n\"4243918\";\"Marissa\";\"main\"\n\"4243951\";\"Marshall\";\"main\"\n\"4243951\";\"Маршалл\";\"other\"\n\"4244005\";\"Martinsville\";\"main\"\n\"4244026\";\"Maryville\";\"main\"\n\"4244031\";\"Mascoutah\";\"main\"\n\"4244099\";\"Mattoon\";\"main\"\n\"4244307\";\"McLeansboro\";\"main\"\n\"4244462\";\"Metropolis\";\"main\"\n\"4244637\";\"Millstadt\";\"main\"\n\"4244880\";\"Morrisonville\";\"main\"\n\"4244951\";\"Mounds\";\"main\"\n\"4244967\";\"Mount Carmel\";\"main\"\n\"4244967\";\"Karmel\";\"other\"\n\"4244967\";\"Karmel'\";\"other\"\n\"4244967\";\"Karmelberget\";\"other\"\n\"4244967\";\"Karmelbjerget\";\"other\"\n\"4244967\";\"Karmelgebergte\";\"other\"\n\"4244967\";\"Karmelio kalnas\";\"other\"\n\"4244967\";\"Mont Carmel\";\"other\"\n\"4244967\";\"Monte Carmelo\";\"other\"\n\"4244967\";\"Monto Karmel\";\"other\"\n\"4244967\";\"jbl alkrml\";\"other\"\n\"4244967\";\"krml\";\"other\"\n\"4244967\";\"Кармель\";\"other\"\n\"4244967\";\"כרמל\";\"other\"\n\"4244967\";\"جبل الكرمل\";\"other\"\n\"4245045\";\"Mount Olive\";\"main\"\n\"4245136\";\"Mount Sterling\";\"main\"\n\"4245152\";\"Mount Vernon\";\"main\"\n\"4245174\";\"Mount Zion\";\"main\"\n\"4245258\";\"Moweaqua\";\"main\"\n\"4245336\";\"Murphysboro\";\"main\"\n\"4245376\";\"Nashville\";\"main\"\n\"4245376\";\"Nashvill\";\"other\"\n\"4245376\";\"Нашвилл\";\"other\"\n\"4245443\";\"Neoga\";\"main\"\n\"4245463\";\"New Athens\";\"main\"\n\"4245474\";\"New Baden\";\"main\"\n\"4245481\";\"New Berlin\";\"main\"\n\"4245481\";\"Novyj Berlin\";\"other\"\n\"4245481\";\"Новый Берлин\";\"other\"\n\"4245744\";\"Nokomis\";\"main\"\n\"4245780\";\"Norris City\";\"main\"\n\"4245926\";\"O'Fallon\";\"main\"\n\"4246130\";\"Oblong\";\"main\"\n\"4246147\";\"Odin\";\"main\"\n\"4246180\";\"Okawville\";\"main\"\n\"4246382\";\"Olney\";\"main\"\n\"4246382\";\"Olni\";\"other\"\n\"4246382\";\"Олни\";\"other\"\n\"4246560\";\"Palestine\";\"main\"\n\"4246595\";\"Pana\";\"main\"\n\"4246659\";\"Paris\";\"main\"\n\"4246659\";\"Parizh\";\"other\"\n\"4246659\";\"Париж\";\"other\"\n\"4246757\";\"Pawnee\";\"main\"\n\"4246765\";\"Payson\";\"main\"\n\"4246983\";\"Pinckneyville\";\"main\"\n\"4247060\";\"Pittsfield\";\"main\"\n\"4247145\";\"Pleasant Hill\";\"main\"\n\"4247379\";\"Pontoon Beach\";\"main\"\n\"4247703\";\"Quincy\";\"main\"\n\"4247703\";\"Kuinsi\";\"other\"\n\"4247703\";\"Куинси\";\"other\"\n\"4247779\";\"Ramsey\";\"main\"\n\"4247779\";\"Rehmsi\";\"other\"\n\"4247779\";\"Рэмси\";\"other\"\n\"4247880\";\"Red Bud\";\"main\"\n\"4248205\";\"Riverton\";\"main\"\n\"4248205\";\"Ривертон\";\"other\"\n\"4248256\";\"Robinson\";\"main\"\n\"4248284\";\"Rochester\";\"main\"\n\"4248284\";\"Рочестер\";\"other\"\n\"4248420\";\"Roodhouse\";\"main\"\n\"4248480\";\"Rosewood Heights\";\"main\"\n\"4248482\";\"Rosiclare\";\"main\"\n\"4248546\";\"Roxana\";\"main\"\n\"4248562\";\"Royalton\";\"main\"\n\"4248788\";\"Saint Elmo\";\"main\"\n\"4249286\";\"Salem\";\"main\"\n\"4249286\";\"Sejlem\";\"other\"\n\"4249286\";\"Сейлем\";\"other\"\n\"4249437\";\"Sandoval\";\"main\"\n\"4249704\";\"Sesser\";\"main\"\n\"4249830\";\"Shawneetown\";\"main\"\n\"4249857\";\"Shelbyville\";\"main\"\n\"4249885\";\"Sherman\";\"main\"\n\"4249885\";\"Шерман\";\"other\"\n\"4249910\";\"Shiloh\";\"main\"\n\"4250209\";\"Smithton\";\"main\"\n\"4250334\";\"South Jacksonville\";\"main\"\n\"4250399\";\"South Roxana\";\"main\"\n\"4250404\";\"Southern View\";\"main\"\n\"4250476\";\"Sparta\";\"main\"\n\"4250542\";\"Springfield\";\"main\"\n\"4250542\";\"Springfild\";\"other\"\n\"4250542\";\"si pu lin fei er de\";\"other\"\n\"4250542\";\"springfild\";\"other\"\n\"4250542\";\"spryngpyld\";\"other\"\n\"4250542\";\"supuringufirudo\";\"other\"\n\"4250542\";\"Спрингфилд\";\"other\"\n\"4250542\";\"Спрінгфілд\";\"other\"\n\"4250542\";\"ספרינגפילד\";\"other\"\n\"4250542\";\"สปริงฟิลด์\";\"other\"\n\"4250542\";\"スプリングフィールド\";\"other\"\n\"4250542\";\"斯普林菲尔德\";\"other\"\n\"4250608\";\"Staunton\";\"main\"\n\"4250608\";\"Stonton\";\"other\"\n\"4250608\";\"Стонтон\";\"other\"\n\"4250627\";\"Steeleville\";\"main\"\n\"4250862\";\"Sullivan\";\"main\"\n\"4250909\";\"Sumner\";\"main\"\n\"4251003\";\"Swansea\";\"main\"\n\"4251082\";\"Tamms\";\"main\"\n\"4251141\";\"Taylorville\";\"main\"\n\"4251185\";\"Teutopolis\";\"main\"\n\"4251330\";\"Toledo\";\"main\"\n\"4251330\";\"Толедо\";\"other\"\n\"4251341\";\"Tolono\";\"main\"\n\"4251413\";\"Trenton\";\"main\"\n\"4251413\";\"Трентон\";\"other\"\n\"4251513\";\"Troy\";\"main\"\n\"4251513\";\"Troja\";\"other\"\n\"4251513\";\"Троя\";\"other\"\n\"4251593\";\"Tuscola\";\"main\"\n\"4251841\";\"Upper Alton\";\"main\"\n\"4251917\";\"Vandalia\";\"main\"\n\"4251958\";\"Venice\";\"main\"\n\"4251958\";\"Venecija\";\"other\"\n\"4251958\";\"Венеция\";\"other\"\n\"4252025\";\"Vienna\";\"main\"\n\"4252041\";\"Villa Grove\";\"main\"\n\"4252060\";\"Virden\";\"main\"\n\"4252071\";\"Virginia\";\"main\"\n\"4252425\";\"Wamac\";\"main\"\n\"4252469\";\"Warrensburg\";\"main\"\n\"4252512\";\"Washington Park\";\"main\"\n\"4252548\";\"Waterloo\";\"main\"\n\"4252548\";\"Vaterlo\";\"other\"\n\"4252548\";\"Ватерло\";\"other\"\n\"4252603\";\"Wayne City\";\"main\"\n\"4252616\";\"Waverly\";\"main\"\n\"4252812\";\"West Frankfort\";\"main\"\n\"4252975\";\"White Hall\";\"main\"\n\"4253179\";\"Williamsville\";\"main\"\n\"4253268\";\"Winchester\";\"main\"\n\"4253280\";\"Windsor\";\"main\"\n\"4253280\";\"Vindzor\";\"other\"\n\"4253280\";\"Виндзор\";\"other\"\n\"4253387\";\"Wood River\";\"main\"\n\"4253591\";\"Zeigler\";\"main\"\n\"4254010\";\"Austin\";\"main\"\n\"4254010\";\"Ostin\";\"other\"\n\"4254010\";\"Остин\";\"other\"\n\"4254021\";\"Avon\";\"main\"\n\"4254124\";\"Bargersville\";\"main\"\n\"4254185\";\"Batesville\";\"main\"\n\"4254282\";\"Bedford\";\"main\"\n\"4254282\";\"Бедфорд\";\"other\"\n\"4254304\";\"Beech Grove\";\"main\"\n\"4254515\";\"Bicknell\";\"main\"\n\"4254671\";\"Bloomfield\";\"main\"\n\"4254679\";\"Bloomington\";\"main\"\n\"4254679\";\"Blumington\";\"other\"\n\"4254679\";\"buruminton\";\"other\"\n\"4254679\";\"Блумингтон\";\"other\"\n\"4254679\";\"ブルーミントン\";\"other\"\n\"4254797\";\"Boonville\";\"main\"\n\"4254884\";\"Brazil\";\"main\"\n\"4254944\";\"Bright\";\"main\"\n\"4254985\";\"Brooklyn\";\"main\"\n\"4254985\";\"Bruklin\";\"other\"\n\"4254985\";\"Бруклин\";\"other\"\n\"4254999\";\"Brookville\";\"main\"\n\"4255056\";\"Brownsburg\";\"main\"\n\"4255063\";\"Brownstown\";\"main\"\n\"4255339\";\"Cambridge City\";\"main\"\n\"4255457\";\"Cannelton\";\"main\"\n\"4255466\";\"Carmel\";\"main\"\n\"4255466\";\"Karmel'\";\"other\"\n\"4255466\";\"Кармель\";\"other\"\n\"4255557\";\"Cayuga\";\"main\"\n\"4255627\";\"Centerville\";\"main\"\n\"4255673\";\"Chandler\";\"main\"\n\"4255673\";\"Чандлер\";\"other\"\n\"4255704\";\"Charlestown\";\"main\"\n\"4255836\";\"Clarksville\";\"main\"\n\"4255841\";\"Clay City\";\"main\"\n\"4255897\";\"Clermont\";\"main\"\n\"4255937\";\"Clinton\";\"main\"\n\"4255937\";\"Klinton\";\"other\"\n\"4255937\";\"Клинтон\";\"other\"\n\"4255948\";\"Cloverdale\";\"main\"\n\"4256038\";\"Columbus\";\"main\"\n\"4256038\";\"Kolumbus\";\"other\"\n\"4256038\";\"Колумбус\";\"other\"\n\"4256085\";\"Connersville\";\"main\"\n\"4256184\";\"Corydon\";\"main\"\n\"4256339\";\"Crothersville\";\"main\"\n\"4256384\";\"Cumberland\";\"main\"\n\"4256384\";\"Kamberlend\";\"other\"\n\"4256384\";\"Камберленд\";\"other\"\n\"4256426\";\"Dale\";\"main\"\n\"4256447\";\"Danville\";\"main\"\n\"4256460\";\"Darmstadt\";\"main\"\n\"4256645\";\"Dillsboro\";\"main\"\n\"4257043\";\"Edinburgh\";\"main\"\n\"4257110\";\"Ellettsville\";\"main\"\n\"4257227\";\"Evansville\";\"main\"\n\"4257227\";\"Ehvansvill\";\"other\"\n\"4257227\";\"ebanzubiru\";\"other\"\n\"4257227\";\"evu~anzuvu~iru\";\"other\"\n\"4257227\";\"Эвансвилл\";\"other\"\n\"4257227\";\"エバンズビル\";\"other\"\n\"4257227\";\"エヴァンズヴィル\";\"other\"\n\"4257268\";\"Fairland\";\"main\"\n\"4257305\";\"Fairview Park\";\"main\"\n\"4257396\";\"Farmersburg\";\"main\"\n\"4257415\";\"Ferdinand\";\"main\"\n\"4257494\";\"Fishers\";\"main\"\n\"4257617\";\"Fort Branch\";\"main\"\n\"4257630\";\"Fortville\";\"main\"\n\"4257770\";\"French Lick\";\"main\"\n\"4257835\";\"Galena\";\"main\"\n\"4257898\";\"Geneva\";\"main\"\n\"4257898\";\"Zheneva\";\"other\"\n\"4257898\";\"Женева\";\"other\"\n\"4257913\";\"Georgetown\";\"main\"\n\"4258273\";\"Greencastle\";\"main\"\n\"4258277\";\"Greendale\";\"main\"\n\"4258285\";\"Greenfield\";\"main\"\n\"4258285\";\"Grinfild\";\"other\"\n\"4258285\";\"Гринфилд\";\"other\"\n\"4258302\";\"Greensburg\";\"main\"\n\"4258313\";\"Greenwood\";\"main\"\n\"4258413\";\"Hagerstown\";\"main\"\n\"4258510\";\"Hanover\";\"main\"\n\"4258664\";\"Haubstadt\";\"main\"\n\"4258799\";\"Henryville\";\"main\"\n\"4258871\";\"Hidden Valley\";\"main\"\n\"4258909\";\"Highland\";\"main\"\n\"4259115\";\"Hope\";\"main\"\n\"4259271\";\"Huntingburg\";\"main\"\n\"4259418\";\"Indianapolis\";\"main\"\n\"4259418\";\"Индианаполис\";\"other\"\n\"4259436\";\"Ingalls\";\"main\"\n\"4259639\";\"Jasonville\";\"main\"\n\"4259640\";\"Jasper\";\"main\"\n\"4259671\";\"Jeffersonville\";\"main\"\n\"4259960\";\"Knightstown\";\"main\"\n\"4260038\";\"Ladoga\";\"main\"\n\"4260210\";\"Lawrence\";\"main\"\n\"4260210\";\"Lourens\";\"other\"\n\"4260210\";\"Лоуренс\";\"other\"\n\"4260223\";\"Lawrenceburg\";\"main\"\n\"4260329\";\"Liberty\";\"main\"\n\"4260453\";\"Linton\";\"main\"\n\"4260711\";\"Loogootee\";\"main\"\n\"4260768\";\"Lowell\";\"main\"\n\"4260768\";\"Louel\";\"other\"\n\"4260768\";\"Лоуел\";\"other\"\n\"4260853\";\"Madison\";\"main\"\n\"4260853\";\"Мадисон\";\"other\"\n\"4261032\";\"Martinsville\";\"main\"\n\"4261132\";\"McCordsville\";\"main\"\n\"4261231\";\"Melody Hill\";\"main\"\n\"4261283\";\"Meridian Hills\";\"main\"\n\"4261349\";\"Middlebury\";\"main\"\n\"4261361\";\"Milan\";\"main\"\n\"4261486\";\"Mitchell\";\"main\"\n\"4261552\";\"Montezuma\";\"main\"\n\"4261585\";\"Mooresville\";\"main\"\n\"4261628\";\"Morristown\";\"main\"\n\"4261837\";\"Mount Vernon\";\"main\"\n\"4262045\";\"New Albany\";\"main\"\n\"4262045\";\"N'ju-Albani\";\"other\"\n\"4262045\";\"Нью-Албани\";\"other\"\n\"4262072\";\"New Castle\";\"main\"\n\"4262130\";\"New Palestine\";\"main\"\n\"4262159\";\"New Whiteland\";\"main\"\n\"4262171\";\"Newburgh\";\"main\"\n\"4262171\";\"N'juberg\";\"other\"\n\"4262171\";\"Ньюберг\";\"other\"\n\"4262293\";\"North Madison\";\"main\"\n\"4262311\";\"North Terre Haute\";\"main\"\n\"4262318\";\"North Vernon\";\"main\"\n\"4262406\";\"Oak Park\";\"main\"\n\"4262406\";\"Ouk-Park\";\"other\"\n\"4262406\";\"Оук-Парк\";\"other\"\n\"4262425\";\"Oakland City\";\"main\"\n\"4262451\";\"Odon\";\"main\"\n\"4262583\";\"Oolitic\";\"main\"\n\"4262618\";\"Orleans\";\"main\"\n\"4262640\";\"Osgood\";\"main\"\n\"4262708\";\"Owensville\";\"main\"\n\"4262762\";\"Paoli\";\"main\"\n\"4262901\";\"Pendleton\";\"main\"\n\"4262968\";\"Petersburg\";\"main\"\n\"4262968\";\"Peterburg\";\"other\"\n\"4262968\";\"Петербург\";\"other\"\n\"4263105\";\"Pittsboro\";\"main\"\n\"4263108\";\"Plainfield\";\"main\"\n\"4263307\";\"Poseyville\";\"main\"\n\"4263391\";\"Princes Lakes\";\"main\"\n\"4263396\";\"Princeton\";\"main\"\n\"4263396\";\"Prinston\";\"other\"\n\"4263396\";\"Принстон\";\"other\"\n\"4263681\";\"Richmond\";\"main\"\n\"4263681\";\"Ричмонд\";\"other\"\n\"4263736\";\"Rising Sun\";\"main\"\n\"4263848\";\"Rockport\";\"main\"\n\"4263850\";\"Rockville\";\"main\"\n\"4263850\";\"Rokvill\";\"other\"\n\"4263850\";\"Роквилл\";\"other\"\n\"4263856\";\"Rockport\";\"main\"\n\"4263965\";\"Rushville\";\"main\"\n\"4264243\";\"Saint Paul\";\"main\"\n\"4264334\";\"Salem\";\"main\"\n\"4264334\";\"Sejlem\";\"other\"\n\"4264334\";\"Сейлем\";\"other\"\n\"4264457\";\"Santa Claus\";\"main\"\n\"4264555\";\"Scottsburg\";\"main\"\n\"4264592\";\"Seelyville\";\"main\"\n\"4264598\";\"Sellersburg\";\"main\"\n\"4264617\";\"Seymour\";\"main\"\n\"4264688\";\"Shelbyville\";\"main\"\n\"4264696\";\"Shelburn\";\"main\"\n\"4265103\";\"Southport\";\"main\"\n\"4265146\";\"Speedway\";\"main\"\n\"4265147\";\"Spencer\";\"main\"\n\"4265507\";\"Sullivan\";\"main\"\n\"4265717\";\"Tell City\";\"main\"\n\"4265737\";\"Terre Haute\";\"main\"\n\"4266266\";\"Versailles\";\"main\"\n\"4266278\";\"Vevay\";\"main\"\n\"4266307\";\"Vincennes\";\"main\"\n\"4266573\";\"Warren Park\";\"main\"\n\"4266586\";\"Washington\";\"main\"\n\"4266586\";\"Vashington\";\"other\"\n\"4266586\";\"Вашингтон\";\"other\"\n\"4266643\";\"Waterloo\";\"main\"\n\"4266844\";\"West Terre Haute\";\"main\"\n\"4266871\";\"Westport\";\"main\"\n\"4266960\";\"Whiteland\";\"main\"\n\"4267235\";\"Worthington\";\"main\"\n\"4267336\";\"Zionsville\";\"main\"\n\"4267354\";\"Abilene\";\"main\"\n\"4267354\";\"Abilin\";\"other\"\n\"4267354\";\"a bi lin\";\"other\"\n\"4267354\";\"abirin\";\"other\"\n\"4267354\";\"Абилин\";\"other\"\n\"4267354\";\"アビリーン\";\"other\"\n\"4267354\";\"阿比林\";\"other\"\n\"4267531\";\"Altamont\";\"main\"\n\"4267594\";\"Andover\";\"main\"\n\"4267605\";\"Anthony\";\"main\"\n\"4267661\";\"Arkansas City\";\"main\"\n\"4267669\";\"Arma\";\"main\"\n\"4267733\";\"Atchison\";\"main\"\n\"4267767\";\"Auburn\";\"main\"\n\"4267773\";\"Augusta\";\"main\"\n\"4267773\";\"Ogasta\";\"other\"\n\"4267773\";\"Огаста\";\"other\"\n\"4267866\";\"Baldwin City\";\"main\"\n\"4267944\";\"Basehor\";\"main\"\n\"4267978\";\"Baxter Springs\";\"main\"\n\"4268079\";\"Bellaire\";\"main\"\n\"4268081\";\"Belle Plaine\";\"main\"\n\"4268091\";\"Belleville\";\"main\"\n\"4268119\";\"Beloit\";\"main\"\n\"4268455\";\"Blue Rapids\";\"main\"\n\"4268521\";\"Bonner Springs\";\"main\"\n\"4268807\";\"Buhler\";\"main\"\n\"4268854\";\"Burlington\";\"main\"\n\"4268854\";\"Berlington\";\"other\"\n\"4268854\";\"Берлингтон\";\"other\"\n\"4268940\";\"Caldwell\";\"main\"\n\"4268940\";\"Kolduehll\";\"other\"\n\"4268940\";\"Колдуэлл\";\"other\"\n\"4269043\";\"Caney\";\"main\"\n\"4269076\";\"Carbondale\";\"main\"\n\"4269392\";\"Chanute\";\"main\"\n\"4269401\";\"Chapman\";\"main\"\n\"4269447\";\"Cheney\";\"main\"\n\"4269483\";\"Cherryvale\";\"main\"\n\"4269493\";\"Chetopa\";\"main\"\n\"4269641\";\"Clay Center\";\"main\"\n\"4269642\";\"Clay Center\";\"main\"\n\"4269690\";\"Clearwater\";\"main\"\n\"4269789\";\"Coffeyville\";\"main\"\n\"4269841\";\"Columbus\";\"main\"\n\"4269841\";\"Kolumbus\";\"other\"\n\"4269841\";\"Колумбус\";\"other\"\n\"4269847\";\"Colwich\";\"main\"\n\"4269872\";\"Concordia\";\"main\"\n\"4269887\";\"Conway Springs\";\"main\"\n\"4270001\";\"Council Grove\";\"main\"\n\"4270269\";\"De Soto\";\"main\"\n\"4270356\";\"Derby\";\"main\"\n\"4270460\";\"Douglass\";\"main\"\n\"4270819\";\"Edgerton\";\"main\"\n\"4270847\";\"Edwardsville\";\"main\"\n\"4270863\";\"El Dorado\";\"main\"\n\"4270929\";\"Ellinwood\";\"main\"\n\"4270936\";\"Ellis\";\"main\"\n\"4270945\";\"Ellsworth\";\"main\"\n\"4271035\";\"Elwood\";\"main\"\n\"4271086\";\"Emporia\";\"main\"\n\"4271131\";\"Erie\";\"main\"\n\"4271131\";\"Ehri\";\"other\"\n\"4271131\";\"Эри\";\"other\"\n\"4271159\";\"Eureka\";\"main\"\n\"4271159\";\"Ehvrika\";\"other\"\n\"4271159\";\"Эврика\";\"other\"\n\"4271196\";\"Eudora\";\"main\"\n\"4271358\";\"Fairway\";\"main\"\n\"4271690\";\"Fort Scott\";\"main\"\n\"4271796\";\"Fredonia\";\"main\"\n\"4271901\";\"Galena\";\"main\"\n\"4271918\";\"Frontenac\";\"main\"\n\"4271935\";\"Gardner\";\"main\"\n\"4271935\";\"Гарднер\";\"other\"\n\"4271974\";\"Garnett\";\"main\"\n\"4272061\";\"Girard\";\"main\"\n\"4272133\";\"Goddard\";\"main\"\n\"4272273\";\"Grandview Plaza\";\"main\"\n\"4272340\";\"Great Bend\";\"main\"\n\"4272411\";\"Greensburg\";\"main\"\n\"4272558\";\"Halstead\";\"main\"\n\"4272660\";\"Harper\";\"main\"\n\"4272727\";\"Haven\";\"main\"\n\"4272782\";\"Hays\";\"main\"\n\"4272788\";\"Haysville\";\"main\"\n\"4272840\";\"Herington\";\"main\"\n\"4272861\";\"Hesston\";\"main\"\n\"4272873\";\"Hiawatha\";\"main\"\n\"4272980\";\"Hill City\";\"main\"\n\"4273003\";\"Hillsboro\";\"main\"\n\"4273003\";\"Khillsboro\";\"other\"\n\"4273003\";\"Хиллсборо\";\"other\"\n\"4273066\";\"Hoisington\";\"main\"\n\"4273096\";\"Holton\";\"main\"\n\"4273211\";\"Horton\";\"main\"\n\"4273255\";\"Humboldt\";\"main\"\n\"4273299\";\"Hutchinson\";\"main\"\n\"4273299\";\"Khatchinson\";\"other\"\n\"4273299\";\"Хатчинсон\";\"other\"\n\"4273359\";\"Independence\";\"main\"\n\"4273430\";\"Inman\";\"main\"\n\"4273441\";\"Iola\";\"main\"\n\"4273680\";\"Junction City\";\"main\"\n\"4273837\";\"Kansas City\";\"main\"\n\"4273837\";\"Kansas City i Kansas\";\"other\"\n\"4273837\";\"Kanzas-Siti\";\"other\"\n\"4273837\";\"kan sa si cheng\";\"other\"\n\"4273837\";\"Канзас-Сити\";\"other\"\n\"4273837\";\"堪薩斯城\";\"other\"\n\"4273881\";\"Kechi\";\"main\"\n\"4273978\";\"Kingman\";\"main\"\n\"4273978\";\"Kingmen\";\"other\"\n\"4273978\";\"Кингмен\";\"other\"\n\"4273993\";\"Kinsley\";\"main\"\n\"4274067\";\"La Crosse\";\"main\"\n\"4274067\";\"La-Kross\";\"other\"\n\"4274067\";\"Ла-Кросс\";\"other\"\n\"4274070\";\"La Cygne\";\"main\"\n\"4274236\";\"Lansing\";\"main\"\n\"4274236\";\"Лансинг\";\"other\"\n\"4274249\";\"Larned\";\"main\"\n\"4274277\";\"Lawrence\";\"main\"\n\"4274277\";\"Lorens\";\"other\"\n\"4274277\";\"Lourens\";\"other\"\n\"4274277\";\"Лоуренс\";\"other\"\n\"4274305\";\"Leavenworth\";\"main\"\n\"4274305\";\"Livenvors\";\"other\"\n\"4274305\";\"Ливенворс\";\"other\"\n\"4274317\";\"Leawood\";\"main\"\n\"4274356\";\"Lenexa\";\"main\"\n\"4274450\";\"Lincoln\";\"main\"\n\"4274450\";\"Linkol'n\";\"other\"\n\"4274450\";\"Линкольн\";\"other\"\n\"4274532\";\"Lindsborg\";\"main\"\n\"4274828\";\"Louisburg\";\"main\"\n\"4274906\";\"Lyndon\";\"main\"\n\"4274927\";\"Lyons\";\"main\"\n\"4274980\";\"Maize\";\"main\"\n\"4274994\";\"Manhattan\";\"main\"\n\"4274994\";\"Mankhehtten\";\"other\"\n\"4274994\";\"Манхэттен\";\"other\"\n\"4275070\";\"Marion\";\"main\"\n\"4275070\";\"Mehrion\";\"other\"\n\"4275070\";\"Мэрион\";\"other\"\n\"4275144\";\"Marysville\";\"main\"\n\"4275261\";\"McPherson\";\"main\"\n\"4275315\";\"Medicine Lodge\";\"main\"\n\"4275393\";\"Merriam\";\"main\"\n\"4275586\";\"Minneapolis\";\"main\"\n\"4275586\";\"Миннеаполис\";\"other\"\n\"4275600\";\"Mission\";\"main\"\n\"4275600\";\"Missija\";\"other\"\n\"4275600\";\"Миссия\";\"other\"\n\"4275614\";\"Mission Hills\";\"main\"\n\"4275803\";\"Moundridge\";\"main\"\n\"4276017\";\"Mulvane\";\"main\"\n\"4276128\";\"Neodesha\";\"main\"\n\"4276166\";\"Ness City\";\"main\"\n\"4276248\";\"Newton\";\"main\"\n\"4276248\";\"N'juton\";\"other\"\n\"4276248\";\"Ньютон\";\"other\"\n\"4276265\";\"Nickerson\";\"main\"\n\"4276386\";\"North Newton\";\"main\"\n\"4276452\";\"Norton\";\"main\"\n\"4276588\";\"Ogden\";\"main\"\n\"4276588\";\"Огден\";\"other\"\n\"4276614\";\"Olathe\";\"main\"\n\"4276747\";\"Osage City\";\"main\"\n\"4276772\";\"Osawatomie\";\"main\"\n\"4276781\";\"Osborne\";\"main\"\n\"4276792\";\"Oskaloosa\";\"main\"\n\"4276800\";\"Oswego\";\"main\"\n\"4276816\";\"Ottawa\";\"main\"\n\"4276873\";\"Overland Park\";\"main\"\n\"4276893\";\"Oxford\";\"main\"\n\"4276893\";\"Oksford\";\"other\"\n\"4276893\";\"Оксфорд\";\"other\"\n\"4276956\";\"Paola\";\"main\"\n\"4276974\";\"Park City\";\"main\"\n\"4277011\";\"Parsons\";\"main\"\n\"4277079\";\"Peabody\";\"main\"\n\"4277079\";\"Pibodi\";\"other\"\n\"4277079\";\"Пибоди\";\"other\"\n\"4277177\";\"Phillipsburg\";\"main\"\n\"4277241\";\"Pittsburg\";\"main\"\n\"4277241\";\"Pitsburg\";\"other\"\n\"4277241\";\"Питсбург\";\"other\"\n\"4277260\";\"Plainville\";\"main\"\n\"4277260\";\"Plejnvill'\";\"other\"\n\"4277260\";\"Плейнвилль\";\"other\"\n\"4277481\";\"Pleasanton\";\"main\"\n\"4277481\";\"Plezantun\";\"other\"\n\"4277481\";\"Плезантън\";\"other\"\n\"4277718\";\"Prairie Village\";\"main\"\n\"4277752\";\"Pratt\";\"main\"\n\"4278272\";\"Roeland Park\";\"main\"\n\"4278340\";\"Rose Hill\";\"main\"\n\"4278471\";\"Russell\";\"main\"\n\"4278489\";\"Sabetha\";\"main\"\n\"4278621\";\"Saint John\";\"main\"\n\"4278741\";\"Saint Marys\";\"main\"\n\"4278742\";\"Saint Marys\";\"main\"\n\"4278890\";\"Salina\";\"main\"\n\"4278890\";\"Салина\";\"other\"\n\"4279149\";\"Sedan\";\"main\"\n\"4279154\";\"Sedgwick\";\"main\"\n\"4279170\";\"Seneca\";\"main\"\n\"4279247\";\"Shawnee\";\"main\"\n\"4279397\";\"Silver Lake\";\"main\"\n\"4279474\";\"Smith Center\";\"main\"\n\"4279540\";\"Solomon\";\"main\"\n\"4279645\";\"South Hutchinson\";\"main\"\n\"4279847\";\"Spring Hill\";\"main\"\n\"4279847\";\"Spring-Khill\";\"other\"\n\"4279847\";\"Спринг-Хилл\";\"other\"\n\"4279901\";\"Stafford\";\"main\"\n\"4279983\";\"Sterling\";\"main\"\n\"4279983\";\"Стерлинг\";\"other\"\n\"4280502\";\"Tonganoxie\";\"main\"\n\"4280531\";\"Towanda\";\"main\"\n\"4280539\";\"Topeka\";\"main\"\n\"4280539\";\"Topika\";\"other\"\n\"4280539\";\"topika\";\"other\"\n\"4280539\";\"twpyqh\";\"other\"\n\"4280539\";\"Топика\";\"other\"\n\"4280539\";\"טופיקה\";\"other\"\n\"4280539\";\"トピカ\";\"other\"\n\"4280660\";\"Troy\";\"main\"\n\"4280660\";\"Troja\";\"other\"\n\"4280660\";\"Троя\";\"other\"\n\"4280910\";\"Valley Center\";\"main\"\n\"4280917\";\"Valley Falls\";\"main\"\n\"4281010\";\"Victoria\";\"main\"\n\"4281010\";\"Viktorija\";\"other\"\n\"4281010\";\"Виктория\";\"other\"\n\"4281083\";\"WaKeeney\";\"main\"\n\"4281227\";\"Wamego\";\"main\"\n\"4281253\";\"Washington\";\"main\"\n\"4281253\";\"Vashington\";\"other\"\n\"4281253\";\"Вашингтон\";\"other\"\n\"4281323\";\"Wathena\";\"main\"\n\"4281386\";\"Wellington\";\"main\"\n\"4281386\";\"Vellington\";\"other\"\n\"4281386\";\"Веллингтон\";\"other\"\n\"4281412\";\"Wellsville\";\"main\"\n\"4281639\";\"Westwood\";\"main\"\n\"4281730\";\"Wichita\";\"main\"\n\"4281730\";\"Uichito\";\"other\"\n\"4281730\";\"u~ichita\";\"other\"\n\"4281730\";\"wei qi tuo\";\"other\"\n\"4281730\";\"Уичито\";\"other\"\n\"4281730\";\"ウィチタ\";\"other\"\n\"4281730\";\"威奇托\";\"other\"\n\"4281897\";\"Winfield\";\"main\"\n\"4282061\";\"Yates Center\";\"main\"\n\"4282305\";\"Albany\";\"main\"\n\"4282305\";\"Olbani\";\"other\"\n\"4282305\";\"Олбани\";\"other\"\n\"4282342\";\"Alexandria\";\"main\"\n\"4282342\";\"Aleksandrija\";\"other\"\n\"4282342\";\"Александрия\";\"other\"\n\"4282497\";\"Anchorage\";\"main\"\n\"4282497\";\"Ankoridzh\";\"other\"\n\"4282497\";\"Анкоридж\";\"other\"\n\"4282757\";\"Ashland\";\"main\"\n\"4282812\";\"Auburn\";\"main\"\n\"4282818\";\"Audubon Park\";\"main\"\n\"4282836\";\"Augusta\";\"main\"\n\"4282836\";\"Ogasta\";\"other\"\n\"4282836\";\"Огаста\";\"other\"\n\"4283127\";\"Barbourmeade\";\"main\"\n\"4283128\";\"Barbourville\";\"main\"\n\"4283133\";\"Bardstown\";\"main\"\n\"4283541\";\"Beattyville\";\"main\"\n\"4283557\";\"Beaver Dam\";\"main\"\n\"4283760\";\"Beechwood Village\";\"main\"\n\"4283845\";\"Bellevue\";\"main\"\n\"4283953\";\"Benton\";\"main\"\n\"4283953\";\"Бентон\";\"other\"\n\"4283974\";\"Berea\";\"main\"\n\"4283974\";\"Береа\";\"other\"\n\"4285268\";\"Bowling Green\";\"main\"\n\"4285268\";\"Bouling-Grin\";\"other\"\n\"4285268\";\"Боулинг-Грин\";\"other\"\n\"4285380\";\"Brandenburg\";\"main\"\n\"4285427\";\"Breckinridge Center\";\"main\"\n\"4285573\";\"Brodhead\";\"main\"\n\"4285588\";\"Brooks\";\"main\"\n\"4286037\";\"Buckner\";\"main\"\n\"4286054\";\"Buechel\";\"main\"\n\"4286280\";\"Burkesville\";\"main\"\n\"4286281\";\"Burlington\";\"main\"\n\"4286281\";\"Berlington\";\"other\"\n\"4286281\";\"Берлингтон\";\"other\"\n\"4286479\";\"Cadiz\";\"main\"\n\"4286581\";\"Calvert City\";\"main\"\n\"4286717\";\"Campbellsville\";\"main\"\n\"4286981\";\"Carlisle\";\"main\"\n\"4287050\";\"Carrollton\";\"main\"\n\"4287192\";\"Catlettsburg\";\"main\"\n\"4287235\";\"Cave City\";\"main\"\n\"4287450\";\"Central City\";\"main\"\n\"4287872\";\"Claryville\";\"main\"\n\"4287874\";\"Clay\";\"main\"\n\"4287881\";\"Clay City\";\"main\"\n\"4288062\";\"Clinton\";\"main\"\n\"4288062\";\"Klinton\";\"other\"\n\"4288062\";\"Клинтон\";\"other\"\n\"4288101\";\"Cloverport\";\"main\"\n\"4288230\";\"Cold Spring\";\"main\"\n\"4288366\";\"Columbia\";\"main\"\n\"4288366\";\"Kolumbija\";\"other\"\n\"4288366\";\"Колумбия\";\"other\"\n\"4288656\";\"Corbin\";\"main\"\n\"4288809\";\"Covington\";\"main\"\n\"4289028\";\"Crescent Springs\";\"main\"\n\"4289040\";\"Crestview Hills\";\"main\"\n\"4289042\";\"Crestwood\";\"main\"\n\"4289072\";\"Crittenden\";\"main\"\n\"4289232\";\"Cumberland\";\"main\"\n\"4289232\";\"Kamberlend\";\"other\"\n\"4289232\";\"Камберленд\";\"other\"\n\"4289323\";\"Cynthiana\";\"main\"\n\"4289445\";\"Danville\";\"main\"\n\"4289606\";\"Dawson Springs\";\"main\"\n\"4289629\";\"Dayton\";\"main\"\n\"4289629\";\"Dejton\";\"other\"\n\"4289629\";\"Дейтон\";\"other\"\n\"4290181\";\"Douglass Hills\";\"main\"\n\"4290421\";\"Dry Ridge\";\"main\"\n\"4290685\";\"Earlington\";\"main\"\n\"4290859\";\"Eddyville\";\"main\"\n\"4290873\";\"Edgewood\";\"main\"\n\"4290886\";\"Edmonton\";\"main\"\n\"4290988\";\"Elizabethtown\";\"main\"\n\"4290988\";\"Ehlizabettaun\";\"other\"\n\"4290988\";\"Элизабеттаун\";\"other\"\n\"4291063\";\"Elkhorn City\";\"main\"\n\"4291079\";\"Elkton\";\"main\"\n\"4291156\";\"Elsmere\";\"main\"\n\"4291181\";\"Eminence\";\"main\"\n\"4291255\";\"Erlanger\";\"main\"\n\"4291321\";\"Evarts\";\"main\"\n\"4291373\";\"Fairdale\";\"main\"\n\"4291501\";\"Falmouth\";\"main\"\n\"4291620\";\"Fern Creek\";\"main\"\n\"4291884\";\"Flatwoods\";\"main\"\n\"4291905\";\"Flemingsburg\";\"main\"\n\"4291945\";\"Florence\";\"main\"\n\"4291945\";\"Florencija\";\"other\"\n\"4291945\";\"Флоренция\";\"other\"\n\"4292067\";\"Fort Mitchell\";\"main\"\n\"4292071\";\"Fort Thomas\";\"main\"\n\"4292072\";\"Fort Wright\";\"main\"\n\"4292188\";\"Frankfort\";\"main\"\n\"4292188\";\"Frankfurt\";\"other\"\n\"4292188\";\"furankufoto\";\"other\"\n\"4292188\";\"prnqpwrt\";\"other\"\n\"4292188\";\"Франкфурт\";\"other\"\n\"4292188\";\"פרנקפורט\";\"other\"\n\"4292188\";\"แฟรงก์เฟิร์ต\";\"other\"\n\"4292188\";\"フランクフォート\";\"other\"\n\"4292193\";\"Franklin\";\"main\"\n\"4292193\";\"Франклин\";\"other\"\n\"4292424\";\"Fulton\";\"main\"\n\"4292686\";\"Georgetown\";\"main\"\n\"4292826\";\"Glasgow\";\"main\"\n\"4293284\";\"Graymoor-Devondale\";\"main\"\n\"4293311\";\"Grayson\";\"main\"\n\"4293470\";\"Greensburg\";\"main\"\n\"4293473\";\"Greenup\";\"main\"\n\"4293477\";\"Greenville\";\"main\"\n\"4293477\";\"Grinvill\";\"other\"\n\"4293477\";\"Гринвилл\";\"other\"\n\"4293704\";\"Guthrie\";\"main\"\n\"4294044\";\"Hardinsburg\";\"main\"\n\"4294072\";\"Harlan\";\"main\"\n\"4294180\";\"Harrodsburg\";\"main\"\n\"4294195\";\"Hartford\";\"main\"\n\"4294195\";\"Khartford\";\"other\"\n\"4294195\";\"Хартфорд\";\"other\"\n\"4294349\";\"Hazard\";\"main\"\n\"4294433\";\"Hebron Estates\";\"main\"\n\"4294494\";\"Henderson\";\"main\"\n\"4294494\";\"Khenderson\";\"other\"\n\"4294494\";\"Хендерсон\";\"other\"\n\"4294526\";\"Hendron\";\"main\"\n\"4294625\";\"Hickman\";\"main\"\n\"4294788\";\"Highland Heights\";\"main\"\n\"4294799\";\"Highview\";\"main\"\n\"4294858\";\"Hillview\";\"main\"\n\"4294937\";\"Hodgenville\";\"main\"\n\"4295251\";\"Hopkinsville\";\"main\"\n\"4295251\";\"Khopkinsville\";\"other\"\n\"4295251\";\"Хопкинсвилле\";\"other\"\n\"4295288\";\"Horse Cave\";\"main\"\n\"4295686\";\"Hurstbourne Acres\";\"main\"\n\"4295689\";\"Hurstbourne\";\"main\"\n\"4295776\";\"Independence\";\"main\"\n\"4295852\";\"Indian Hills\";\"main\"\n\"4295856\";\"Indian Hills Cherokee Section\";\"main\"\n\"4295954\";\"Irvine\";\"main\"\n\"4295954\";\"Irvin\";\"other\"\n\"4295954\";\"Ирвин\";\"other\"\n\"4295960\";\"Irvington\";\"main\"\n\"4296081\";\"Jackson\";\"main\"\n\"4296081\";\"Dzhekson\";\"other\"\n\"4296081\";\"Джексон\";\"other\"\n\"4296082\";\"Jackson\";\"main\"\n\"4296173\";\"Jamestown\";\"main\"\n\"4296218\";\"Jeffersontown\";\"main\"\n\"4296219\";\"Jeffersonville\";\"main\"\n\"4296229\";\"Jenkins\";\"main\"\n\"4296734\";\"Junction City\";\"main\"\n\"4297236\";\"La Center\";\"main\"\n\"4297238\";\"La Grange\";\"main\"\n\"4297318\";\"Lakeside Park\";\"main\"\n\"4297354\";\"Lancaster\";\"main\"\n\"4297354\";\"Lankaster\";\"other\"\n\"4297354\";\"Ланкастер\";\"other\"\n\"4297581\";\"Lawrenceburg\";\"main\"\n\"4297653\";\"Lebanon\";\"main\"\n\"4297664\";\"Lebanon Junction\";\"main\"\n\"4297673\";\"Ledbetter\";\"main\"\n\"4297882\";\"Leitchfield\";\"main\"\n\"4297979\";\"Lewisport\";\"main\"\n\"4297983\";\"Lexington\";\"main\"\n\"4297983\";\"Leksington\";\"other\"\n\"4297983\";\"Lexintonia\";\"other\"\n\"4297983\";\"lqsyngtwn\";\"other\"\n\"4297983\";\"rekishinton\";\"other\"\n\"4297983\";\"Лексингтон\";\"other\"\n\"4297983\";\"לקסינגטון\";\"other\"\n\"4297983\";\"レキシントン\";\"other\"\n\"4297999\";\"Lexington-Fayette\";\"main\"\n\"4298003\";\"Liberty\";\"main\"\n\"4298805\";\"Livermore\";\"main\"\n\"4298805\";\"Livurmor\";\"other\"\n\"4298805\";\"Ливърмор\";\"other\"\n\"4298960\";\"London\";\"main\"\n\"4299275\";\"Louisa\";\"main\"\n\"4299276\";\"Louisville\";\"main\"\n\"4299276\";\"Ludovicopolis\";\"other\"\n\"4299276\";\"Luisvil\";\"other\"\n\"4299276\";\"Luivil\";\"other\"\n\"4299276\";\"lu yi si wei er\";\"other\"\n\"4299276\";\"ruibiru\";\"other\"\n\"4299276\";\"Луивил\";\"other\"\n\"4299276\";\"Луисвил\";\"other\"\n\"4299276\";\"ルイビル\";\"other\"\n\"4299276\";\"路易斯維爾\";\"other\"\n\"4299531\";\"Ludlow\";\"main\"\n\"4299562\";\"Lyndon\";\"main\"\n\"4299670\";\"Madisonville\";\"main\"\n\"4299741\";\"Manchester\";\"main\"\n\"4299741\";\"Манчестер\";\"other\"\n\"4299842\";\"Marion\";\"main\"\n\"4299842\";\"Mehrion\";\"other\"\n\"4299842\";\"Мэрион\";\"other\"\n\"4300024\";\"Masonville\";\"main\"\n\"4300026\";\"Massac\";\"main\"\n\"4300105\";\"Mayfield\";\"main\"\n\"4300152\";\"Maysville\";\"main\"\n\"4300717\";\"Middlesboro\";\"main\"\n\"4300725\";\"Middletown\";\"main\"\n\"4300739\";\"Midway\";\"main\"\n\"4301094\";\"Heritage Creek\";\"main\"\n\"4301224\";\"Monticello\";\"main\"\n\"4301229\";\"Monticello\";\"main\"\n\"4301307\";\"Morehead\";\"main\"\n\"4301317\";\"Morehead\";\"main\"\n\"4301345\";\"Morganfield\";\"main\"\n\"4301349\";\"Morgantown\";\"main\"\n\"4301683\";\"Mount Sterling\";\"main\"\n\"4301702\";\"Mount Vernon\";\"main\"\n\"4301703\";\"Mount Vernon\";\"main\"\n\"4301732\";\"Mount Washington\";\"main\"\n\"4301975\";\"Muldraugh\";\"main\"\n\"4302012\";\"Munfordville\";\"main\"\n\"4302035\";\"Murray\";\"main\"\n\"4302035\";\"Mjurrej\";\"other\"\n\"4302035\";\"Мюррей\";\"other\"\n\"4302504\";\"Newburg\";\"main\"\n\"4302529\";\"Newport\";\"main\"\n\"4302529\";\"N'juport\";\"other\"\n\"4302529\";\"Ньюпорт\";\"other\"\n\"4302561\";\"Nicholasville\";\"main\"\n\"4302681\";\"North Corbin\";\"main\"\n\"4302778\";\"Nortonville\";\"main\"\n\"4302827\";\"Oak Grove\";\"main\"\n\"4302828\";\"Oak Grove\";\"main\"\n\"4302910\";\"Oakbrook\";\"main\"\n\"4303012\";\"Okolona\";\"main\"\n\"4303194\";\"Olive Hill\";\"main\"\n\"4303297\";\"Orchard Grass Hills\";\"main\"\n\"4303436\";\"Owensboro\";\"main\"\n\"4303439\";\"Owenton\";\"main\"\n\"4303441\";\"Owingsville\";\"main\"\n\"4303543\";\"Paintsville\";\"main\"\n\"4303595\";\"Park Hills\";\"main\"\n\"4303602\";\"Paris\";\"main\"\n\"4303602\";\"Parizh\";\"other\"\n\"4303602\";\"Париж\";\"other\"\n\"4304058\";\"Pewee Valley\";\"main\"\n\"4304232\";\"Pikeville\";\"main\"\n\"4304361\";\"Pine Knot\";\"main\"\n\"4304396\";\"Pineville\";\"main\"\n\"4304448\";\"Pioneer Village\";\"main\"\n\"4304713\";\"Pleasure Ridge Park\";\"main\"\n\"4305210\";\"Prestonsburg\";\"main\"\n\"4305266\";\"Princeton\";\"main\"\n\"4305266\";\"Prinston\";\"other\"\n\"4305266\";\"Принстон\";\"other\"\n\"4305287\";\"Prospect\";\"main\"\n\"4305294\";\"Providence\";\"main\"\n\"4305295\";\"Providence\";\"main\"\n\"4305295\";\"Providens\";\"other\"\n\"4305295\";\"Провиденс\";\"other\"\n\"4305500\";\"Raceland\";\"main\"\n\"4305504\";\"Radcliff\";\"main\"\n\"4305504\";\"Radklif\";\"other\"\n\"4305504\";\"Радклиф\";\"other\"\n\"4305805\";\"Reidland\";\"main\"\n\"4305974\";\"Richmond\";\"main\"\n\"4305974\";\"Ричмонд\";\"other\"\n\"4306972\";\"Russell\";\"main\"\n\"4307012\";\"Russell Springs\";\"main\"\n\"4307025\";\"Russellville\";\"main\"\n\"4307238\";\"Saint Matthews\";\"main\"\n\"4307275\";\"Saint Regis Park\";\"main\"\n\"4307447\";\"Salyersville\";\"main\"\n\"4307837\";\"Scottsville\";\"main\"\n\"4307879\";\"Sebree\";\"main\"\n\"4308122\";\"Shelbyville\";\"main\"\n\"4308163\";\"Shepherdsville\";\"main\"\n\"4308225\";\"Shively\";\"main\"\n\"4308401\";\"Silver Grove\";\"main\"\n\"4308453\";\"Simpsonville\";\"main\"\n\"4308922\";\"Somerset\";\"main\"\n\"4308922\";\"Сомерсет\";\"other\"\n\"4309076\";\"South Shore\";\"main\"\n\"4309097\";\"Southgate\";\"main\"\n\"4309329\";\"Springfield\";\"main\"\n\"4309329\";\"Springfild\";\"other\"\n\"4309329\";\"Спрингфилд\";\"other\"\n\"4309414\";\"Saint Dennis\";\"main\"\n\"4309487\";\"Stanford\";\"main\"\n\"4309487\";\"Станфорд\";\"other\"\n\"4309498\";\"Stanton\";\"main\"\n\"4309498\";\"Stehnton\";\"other\"\n\"4309498\";\"Стэнтон\";\"other\"\n\"4309559\";\"Stearns\";\"main\"\n\"4310030\";\"Sturgis\";\"main\"\n\"4310616\";\"Taylor Mill\";\"main\"\n\"4310638\";\"Taylorsville\";\"main\"\n\"4311035\";\"Tompkinsville\";\"main\"\n\"4311646\";\"Union\";\"main\"\n\"4311722\";\"Uniontown\";\"main\"\n\"4311959\";\"Van Lear\";\"main\"\n\"4311963\";\"Valley Station\";\"main\"\n\"4311976\";\"Vanceburg\";\"main\"\n\"4312057\";\"Versailles\";\"main\"\n\"4312088\";\"Villa Hills\";\"main\"\n\"4312096\";\"Vine Grove\";\"main\"\n\"4312671\";\"Walton\";\"main\"\n\"4312734\";\"Warsaw\";\"main\"\n\"4312811\";\"Watterson Park\";\"main\"\n\"4312983\";\"West Buechel\";\"main\"\n\"4313038\";\"West Liberty\";\"main\"\n\"4313047\";\"West Point\";\"main\"\n\"4313093\";\"Westwood\";\"main\"\n\"4313094\";\"Westwood\";\"main\"\n\"4313140\";\"Wheelwright\";\"main\"\n\"4313346\";\"Whitesburg\";\"main\"\n\"4313358\";\"Whitley City\";\"main\"\n\"4313448\";\"Wilder\";\"main\"\n\"4313563\";\"Williamsburg\";\"main\"\n\"4313572\";\"Williamstown\";\"main\"\n\"4313628\";\"Wilmore\";\"main\"\n\"4313697\";\"Winchester\";\"main\"\n\"4313719\";\"Windy Hills\";\"main\"\n\"4313966\";\"Woodlawn Park\";\"main\"\n\"4314044\";\"Worthington\";\"main\"\n\"4314047\";\"Worthington Hills\";\"main\"\n\"4314051\";\"Worthington\";\"main\"\n\"4314072\";\"Wurtland\";\"main\"\n\"4314295\";\"Abbeville\";\"main\"\n\"4314388\";\"Abita Springs\";\"main\"\n\"4314409\";\"Addis\";\"main\"\n\"4314498\";\"Albany\";\"main\"\n\"4314498\";\"Olbani\";\"other\"\n\"4314498\";\"Олбани\";\"other\"\n\"4314550\";\"Alexandria\";\"main\"\n\"4314550\";\"Aleksandrija\";\"other\"\n\"4314550\";\"Александрия\";\"other\"\n\"4314712\";\"Ama\";\"main\"\n\"4314724\";\"Amelia\";\"main\"\n\"4314744\";\"Amite\";\"main\"\n\"4314956\";\"Arabi\";\"main\"\n\"4314969\";\"Arcadia\";\"main\"\n\"4314969\";\"Arkadija\";\"other\"\n\"4314969\";\"Аркадия\";\"other\"\n\"4315034\";\"Arnaudville\";\"main\"\n\"4315225\";\"Avondale\";\"main\"\n\"4315225\";\"Ejvondejl\";\"other\"\n\"4315225\";\"Ейвондейл\";\"other\"\n\"4315312\";\"Baker\";\"main\"\n\"4315342\";\"Baldwin\";\"main\"\n\"4315342\";\"Bolduin\";\"other\"\n\"4315342\";\"Болдуин\";\"other\"\n\"4315350\";\"Ball\";\"main\"\n\"4315422\";\"Barataria\";\"main\"\n\"4315514\";\"Basile\";\"main\"\n\"4315535\";\"Bastrop\";\"main\"\n\"4315588\";\"Baton Rouge\";\"main\"\n\"4315588\";\"Baton-Ruzh\";\"other\"\n\"4315588\";\"Rubrobastum\";\"other\"\n\"4315588\";\"batonruju\";\"other\"\n\"4315588\";\"batwn rwzh\";\"other\"\n\"4315588\";\"Батон-Руж\";\"other\"\n\"4315588\";\"باتون روژ\";\"other\"\n\"4315588\";\"باتون‌روژ\";\"other\"\n\"4315588\";\"バトンルージュ\";\"other\"\n\"4315768\";\"Bayou Cane\";\"main\"\n\"4315845\";\"Bayou Gauche\";\"main\"\n\"4315955\";\"Bayou Vista\";\"main\"\n\"4316329\";\"Belle Chasse\";\"main\"\n\"4316362\";\"Belle Rose\";\"main\"\n\"4316471\";\"Benton\";\"main\"\n\"4316471\";\"Бентон\";\"other\"\n\"4316497\";\"Bernice\";\"main\"\n\"4316523\";\"Berwick\";\"main\"\n\"4317201\";\"Blanchard\";\"main\"\n\"4317412\";\"Bogalusa\";\"main\"\n\"4317639\";\"Bossier City\";\"main\"\n\"4317718\";\"Boutte\";\"main\"\n\"4317734\";\"Boyce\";\"main\"\n\"4317801\";\"Breaux Bridge\";\"main\"\n\"4317864\";\"Bridge City\";\"main\"\n\"4317985\";\"Broussard\";\"main\"\n\"4318037\";\"Brownsfield\";\"main\"\n\"4318163\";\"Brusly\";\"main\"\n\"4318320\";\"Bunkie\";\"main\"\n\"4318695\";\"Cameron\";\"main\"\n\"4318812\";\"Campti\";\"main\"\n\"4319030\";\"Carencro\";\"main\"\n\"4319058\";\"Carlyss\";\"main\"\n\"4319180\";\"Carville\";\"main\"\n\"4319339\";\"Cecilia\";\"main\"\n\"4319507\";\"Chackbay\";\"main\"\n\"4319518\";\"Chalmette\";\"main\"\n\"4319589\";\"Charenton\";\"main\"\n\"4319668\";\"Chauvin\";\"main\"\n\"4319972\";\"Church Point\";\"main\"\n\"4320107\";\"Claiborne\";\"main\"\n\"4320154\";\"Clarks\";\"main\"\n\"4320277\";\"Clinton\";\"main\"\n\"4320277\";\"Klinton\";\"other\"\n\"4320277\";\"Клинтон\";\"other\"\n\"4320425\";\"Colfax\";\"main\"\n\"4320871\";\"Cotton Valley\";\"main\"\n\"4320874\";\"Cottonport\";\"main\"\n\"4321005\";\"Covington\";\"main\"\n\"4321014\";\"Coushatta\";\"main\"\n\"4321310\";\"Crowley\";\"main\"\n\"4321358\";\"Cullen\";\"main\"\n\"4321399\";\"Cut Off\";\"main\"\n\"4321770\";\"DeQuincy\";\"main\"\n\"4321781\";\"DeRidder\";\"main\"\n\"4321920\";\"Delcambre\";\"main\"\n\"4321929\";\"Delhi\";\"main\"\n\"4321988\";\"Denham Springs\";\"main\"\n\"4322016\";\"Des Allemands\";\"main\"\n\"4322034\";\"Destrehan\";\"main\"\n\"4322811\";\"Donaldsonville\";\"main\"\n\"4323131\";\"Dulac\";\"main\"\n\"4323190\";\"Duson\";\"main\"\n\"4323488\";\"Eastwood\";\"main\"\n\"4323546\";\"Eden Isle\";\"main\"\n\"4323551\";\"Edgard\";\"main\"\n\"4323711\";\"Elmwood\";\"main\"\n\"4323727\";\"Elton\";\"main\"\n\"4323768\";\"Empire\";\"main\"\n\"4323830\";\"Epps\";\"main\"\n\"4323842\";\"Erath\";\"main\"\n\"4323873\";\"Estelle\";\"main\"\n\"4323900\";\"Eunice\";\"main\"\n\"4324179\";\"Farmerville\";\"main\"\n\"4324293\";\"Ferriday\";\"main\"\n\"4325150\";\"Franklin\";\"main\"\n\"4325150\";\"Франклин\";\"other\"\n\"4325165\";\"Franklinton\";\"main\"\n\"4325242\";\"French Settlement\";\"main\"\n\"4325424\";\"Galliano\";\"main\"\n\"4325507\";\"Gardere\";\"main\"\n\"4325516\";\"Garyville\";\"main\"\n\"4325649\";\"Gibsland\";\"main\"\n\"4325803\";\"Glenmora\";\"main\"\n\"4325859\";\"Golden Meadow\";\"main\"\n\"4325889\";\"Gonzales\";\"main\"\n\"4326074\";\"Grambling\";\"main\"\n\"4326081\";\"Gramercy\";\"main\"\n\"4326153\";\"Grand Coteau\";\"main\"\n\"4326198\";\"Grand Isle\";\"main\"\n\"4326320\";\"Gray\";\"main\"\n\"4326533\";\"Greenwood\";\"main\"\n\"4326534\";\"Greenwood\";\"main\"\n\"4326575\";\"Gretna\";\"main\"\n\"4326636\";\"Gueydan\";\"main\"\n\"4326758\";\"Hackberry\";\"main\"\n\"4326799\";\"Hahnville\";\"main\"\n\"4326868\";\"Hammond\";\"main\"\n\"4326868\";\"Khammond\";\"other\"\n\"4326868\";\"Хаммонд\";\"other\"\n\"4326916\";\"Harahan\";\"main\"\n\"4327047\";\"Harvey\";\"main\"\n\"4327047\";\"Kharvi\";\"other\"\n\"4327047\";\"Харви\";\"other\"\n\"4327084\";\"Haughton\";\"main\"\n\"4327129\";\"Haynesville\";\"main\"\n\"4327245\";\"Henderson\";\"main\"\n\"4327245\";\"Khenderson\";\"other\"\n\"4327245\";\"Хендерсон\";\"other\"\n\"4327785\";\"Homer\";\"main\"\n\"4328010\";\"Houma\";\"main\"\n\"4328319\";\"Independence\";\"main\"\n\"4328435\";\"Inniswold\";\"main\"\n\"4328671\";\"Iota\";\"main\"\n\"4328676\";\"Iowa\";\"main\"\n\"4328824\";\"Jackson\";\"main\"\n\"4328824\";\"Dzhekson\";\"other\"\n\"4328824\";\"Джексон\";\"other\"\n\"4328931\";\"Jean Lafitte\";\"main\"\n\"4328952\";\"Jeanerette\";\"main\"\n\"4328973\";\"Jefferson\";\"main\"\n\"4328973\";\"Dzhefferson\";\"other\"\n\"4328973\";\"Джефферсон\";\"other\"\n\"4329021\";\"Jena\";\"main\"\n\"4329037\";\"Jennings\";\"main\"\n\"4329308\";\"Jonesboro\";\"main\"\n\"4329308\";\"Dzhonsboro\";\"other\"\n\"4329308\";\"Джонсборо\";\"other\"\n\"4329317\";\"Jonesville\";\"main\"\n\"4329654\";\"Kaplan\";\"main\"\n\"4329753\";\"Kenner\";\"main\"\n\"4329753\";\"Кеннер\";\"other\"\n\"4329775\";\"Kentwood\";\"main\"\n\"4329820\";\"Killian\";\"main\"\n\"4329849\";\"Kinder\";\"main\"\n\"4330019\";\"Krotz Springs\";\"main\"\n\"4330088\";\"Labadieville\";\"main\"\n\"4330126\";\"Lacombe\";\"main\"\n\"4330145\";\"Lafayette\";\"main\"\n\"4330145\";\"Lafajet\";\"other\"\n\"4330145\";\"rafaietto\";\"other\"\n\"4330145\";\"Лафайет\";\"other\"\n\"4330145\";\"ラファイエット\";\"other\"\n\"4330172\";\"Lafitte\";\"main\"\n\"4330209\";\"Lake Arthur\";\"main\"\n\"4330236\";\"Lake Charles\";\"main\"\n\"4330236\";\"Lejk-Charl'z\";\"other\"\n\"4330236\";\"reikucharuzu\";\"other\"\n\"4330236\";\"Лейк-Чарльз\";\"other\"\n\"4330236\";\"レイクチャールズ\";\"other\"\n\"4330331\";\"Lake Providence\";\"main\"\n\"4330525\";\"Laplace\";\"main\"\n\"4330525\";\"Laplas\";\"other\"\n\"4330525\";\"Лаплас\";\"other\"\n\"4330541\";\"Larose\";\"main\"\n\"4330701\";\"Lecompte\";\"main\"\n\"4330740\";\"Leesville\";\"main\"\n\"4330809\";\"Leonville\";\"main\"\n\"4331485\";\"Livingston\";\"main\"\n\"4331485\";\"Ливингстон\";\"other\"\n\"4331493\";\"Livonia\";\"main\"\n\"4331493\";\"Livonija\";\"other\"\n\"4331493\";\"Ливония\";\"other\"\n\"4331530\";\"Lockport\";\"main\"\n\"4331567\";\"Logansport\";\"main\"\n\"4332109\";\"Luling\";\"main\"\n\"4332143\";\"Lydia\";\"main\"\n\"4332152\";\"Lutcher\";\"main\"\n\"4332432\";\"Mamou\";\"main\"\n\"4332455\";\"Mandeville\";\"main\"\n\"4332494\";\"Mansfield\";\"main\"\n\"4332494\";\"Mehnsfild\";\"other\"\n\"4332494\";\"Мэнсфилд\";\"other\"\n\"4332507\";\"Mansura\";\"main\"\n\"4332518\";\"Many\";\"main\"\n\"4332582\";\"Maringouin\";\"main\"\n\"4332604\";\"Marksville\";\"main\"\n\"4332628\";\"Marrero\";\"main\"\n\"4332628\";\"Марреро\";\"other\"\n\"4332788\";\"Mathews\";\"main\"\n\"4333095\";\"Melville\";\"main\"\n\"4333126\";\"Meraux\";\"main\"\n\"4333161\";\"Merrydale\";\"main\"\n\"4333163\";\"Merryville\";\"main\"\n\"4333177\";\"Metairie\";\"main\"\n\"4333190\";\"Metairie Terrace\";\"main\"\n\"4333277\";\"Midway\";\"main\"\n\"4333533\";\"Minden\";\"main\"\n\"4333669\";\"Monroe\";\"main\"\n\"4333669\";\"Monro\";\"other\"\n\"4333669\";\"Монро\";\"other\"\n\"4333694\";\"Montegut\";\"main\"\n\"4333695\";\"Montegut\";\"main\"\n\"4333718\";\"Monticello\";\"main\"\n\"4333725\";\"Montz\";\"main\"\n\"4333811\";\"Morgan City\";\"main\"\n\"4333961\";\"Moss Bluff\";\"main\"\n\"4334706\";\"Natalbany\";\"main\"\n\"4334720\";\"Natchitoches\";\"main\"\n\"4334971\";\"New Iberia\";\"main\"\n\"4335024\";\"New Llano\";\"main\"\n\"4335045\";\"New Orleans\";\"main\"\n\"4335045\";\"Big Easy\";\"other\"\n\"4335045\";\"Cene Orlean\";\"other\"\n\"4335045\";\"La Nouvelle-Orleans\";\"other\"\n\"4335045\";\"La Nouvelle-Orléans\";\"other\"\n\"4335045\";\"Nju Orleans\";\"other\"\n\"4335045\";\"Nju Orlijns\";\"other\"\n\"4335045\";\"Nov-Orleano\";\"other\"\n\"4335045\";\"Nov-Orleans\";\"other\"\n\"4335045\";\"Nova Aurelia\";\"other\"\n\"4335045\";\"Nova Orleans\";\"other\"\n\"4335045\";\"Nova Orleans - New Orleans\";\"other\"\n\"4335045\";\"Nova Orleáns - New Orleans\";\"other\"\n\"4335045\";\"Novyj Orlean\";\"other\"\n\"4335045\";\"Nowy Orlean\";\"other\"\n\"4335045\";\"Nueva Orleans\";\"other\"\n\"4335045\";\"The Big Easy\";\"other\"\n\"4335045\";\"akhali orleani\";\"other\"\n\"4335045\";\"new orleans louisiana\";\"other\"\n\"4335045\";\"niyu orlens\";\"other\"\n\"4335045\";\"nyuollieonseu\";\"other\"\n\"4335045\";\"nyuorinzu\";\"other\"\n\"4335045\";\"nyw awrlynz\";\"other\"\n\"4335045\";\"oralensa parisa\";\"other\"\n\"4335045\";\"xin ao er liang\";\"other\"\n\"4335045\";\"Çěнě Орлеан\";\"other\"\n\"4335045\";\"Њу Орлеанс\";\"other\"\n\"4335045\";\"Новый Орлеан\";\"other\"\n\"4335045\";\"Ню Орлийнс\";\"other\"\n\"4335045\";\"ניו אורלינס\";\"other\"\n\"4335045\";\"نيو أورلينز\";\"other\"\n\"4335045\";\"ওরলেন্স পারিশ\";\"other\"\n\"4335045\";\"நியூ ஓர்லென்ஸ்\";\"other\"\n\"4335045\";\"ახალი ორლეანი\";\"other\"\n\"4335045\";\"ニューオーリンズ\";\"other\"\n\"4335045\";\"新奥尔良\";\"other\"\n\"4335045\";\"뉴올리언스\";\"other\"\n\"4335096\";\"New Roads\";\"main\"\n\"4335123\";\"New Sarpy\";\"main\"\n\"4335212\";\"Newellton\";\"main\"\n\"4335326\";\"Norco\";\"main\"\n\"4335535\";\"North Vacherie\";\"main\"\n\"4335690\";\"Oak Grove\";\"main\"\n\"4335754\";\"Oak Hills Place\";\"main\"\n\"4335796\";\"Oakdale\";\"main\"\n\"4335797\";\"Oakdale\";\"main\"\n\"4335887\";\"Oberlin\";\"main\"\n\"4335921\";\"Oil City\";\"main\"\n\"4335963\";\"Old Jefferson\";\"main\"\n\"4336092\";\"Olla\";\"main\"\n\"4336153\";\"Opelousas\";\"main\"\n\"4336492\";\"Paradis\";\"main\"\n\"4336646\";\"Patterson\";\"main\"\n\"4336717\";\"Pearl River\";\"main\"\n\"4337049\";\"Pierre Part\";\"main\"\n\"4337272\";\"Pine Prairie\";\"main\"\n\"4337291\";\"Pineville\";\"main\"\n\"4337395\";\"Plain Dealing\";\"main\"\n\"4337436\";\"Plaquemine\";\"main\"\n\"4337775\";\"Ponchatoula\";\"main\"\n\"4337823\";\"Port Allen\";\"main\"\n\"4337836\";\"Port Barre\";\"main\"\n\"4337859\";\"Port Sulphur\";\"main\"\n\"4337963\";\"Poydras\";\"main\"\n\"4338068\";\"Prien\";\"main\"\n\"4338298\";\"Raceland\";\"main\"\n\"4338406\";\"Rayne\";\"main\"\n\"4338415\";\"Rayville\";\"main\"\n\"4338615\";\"Reserve\";\"main\"\n\"4338720\";\"Richwood\";\"main\"\n\"4338772\";\"Ringgold\";\"main\"\n\"4338818\";\"River Ridge\";\"main\"\n\"4339148\";\"Roseland\";\"main\"\n\"4339179\";\"Rosepine\";\"main\"\n\"4339348\";\"Ruston\";\"main\"\n\"4339684\";\"Saint Francisville\";\"main\"\n\"4339690\";\"Saint Gabriel\";\"main\"\n\"4339934\";\"Saint Joseph\";\"main\"\n\"4339934\";\"Sent-Dzhozef\";\"other\"\n\"4339934\";\"Сент-Джозеф\";\"other\"\n\"4340196\";\"Saint Martinville\";\"main\"\n\"4340551\";\"Saint Rose\";\"main\"\n\"4340551\";\"St. Rose\";\"other\"\n\"4341007\";\"Schriever\";\"main\"\n\"4341033\";\"Scott\";\"main\"\n\"4341378\";\"Shenandoah\";\"main\"\n\"4341513\";\"Shreveport\";\"main\"\n\"4341513\";\"shuribupoto\";\"other\"\n\"4341513\";\"Шревепорт\";\"other\"\n\"4341513\";\"シュリーブポート\";\"other\"\n\"4341543\";\"Sibley\";\"main\"\n\"4341610\";\"Simmesport\";\"main\"\n\"4341724\";\"Slaughter\";\"main\"\n\"4341727\";\"Slidell\";\"main\"\n\"4341920\";\"Sorrento\";\"main\"\n\"4342089\";\"South Vacherie\";\"main\"\n\"4342429\";\"Springhill\";\"main\"\n\"4342638\";\"Sterlington\";\"main\"\n\"4342696\";\"Stonewall\";\"main\"\n\"4342816\";\"Sulphur\";\"main\"\n\"4342921\";\"Sunset\";\"main\"\n\"4342949\";\"Supreme\";\"main\"\n\"4342984\";\"Swartz\";\"main\"\n\"4343103\";\"Tallulah\";\"main\"\n\"4343327\";\"Terrytown\";\"main\"\n\"4343429\";\"Thibodaux\";\"main\"\n\"4343659\";\"Timberlane\";\"main\"\n\"4344599\";\"Vidalia\";\"main\"\n\"4344644\";\"Village Saint George\";\"main\"\n\"4344651\";\"Ville Platte\";\"main\"\n\"4344676\";\"Vinton\";\"main\"\n\"4344684\";\"Violet\";\"main\"\n\"4344697\";\"Vivian\";\"main\"\n\"4344819\";\"Waggaman\";\"main\"\n\"4344844\";\"Walker\";\"main\"\n\"4345498\";\"Washington\";\"main\"\n\"4345498\";\"Vashington\";\"other\"\n\"4345498\";\"Вашингтон\";\"other\"\n\"4345667\";\"Welsh\";\"main\"\n\"4345780\";\"West Ferriday\";\"main\"\n\"4345850\";\"West Monroe\";\"main\"\n\"4345925\";\"Westlake\";\"main\"\n\"4345968\";\"Westwego\";\"main\"\n\"4346014\";\"Westminster\";\"main\"\n\"4346053\";\"White Castle\";\"main\"\n\"4346455\";\"Winnfield\";\"main\"\n\"4346466\";\"Winnsboro\";\"main\"\n\"4346505\";\"Wisner\";\"main\"\n\"4346615\";\"Woodmere\";\"main\"\n\"4346646\";\"Woodworth\";\"main\"\n\"4346788\";\"Zachary\";\"main\"\n\"4346810\";\"Youngsville\";\"main\"\n\"4346884\";\"Zwolle\";\"main\"\n\"4346913\";\"Aberdeen\";\"main\"\n\"4346913\";\"Aberdin\";\"other\"\n\"4346913\";\"Абердин\";\"other\"\n\"4346952\";\"Accokeek\";\"main\"\n\"4346991\";\"Adelphi\";\"main\"\n\"4347060\";\"Algonquin\";\"main\"\n\"4347242\";\"Annapolis\";\"main\"\n\"4347242\";\"an na bo li si\";\"other\"\n\"4347242\";\"anaporisu\";\"other\"\n\"4347242\";\"Аннаполис\";\"other\"\n\"4347242\";\"アナポリス\";\"other\"\n\"4347242\";\"安那波利斯\";\"other\"\n\"4347371\";\"Arbutus\";\"main\"\n\"4347392\";\"Arden on the Severn\";\"main\"\n\"4347426\";\"Arnold\";\"main\"\n\"4347426\";\"Arnol'd\";\"other\"\n\"4347426\";\"Арнольд\";\"other\"\n\"4347553\";\"Aspen Hill\";\"main\"\n\"4347778\";\"Baltimore\";\"main\"\n\"4347778\";\"Baltimor\";\"other\"\n\"4347778\";\"Baltimora\";\"other\"\n\"4347778\";\"Baltimorė\";\"other\"\n\"4347778\";\"ba er de mo\";\"other\"\n\"4347778\";\"boltimo-eo\";\"other\"\n\"4347778\";\"boruchimoa\";\"other\"\n\"4347778\";\"bwltymwr\";\"other\"\n\"4347778\";\"Балтимор\";\"other\"\n\"4347778\";\"בולטימור\";\"other\"\n\"4347778\";\"ბალტიმორი\";\"other\"\n\"4347778\";\"ボルチモア\";\"other\"\n\"4347778\";\"巴爾的摩\";\"other\"\n\"4347778\";\"볼티모어\";\"other\"\n\"4347839\";\"Ballenger Creek\";\"main\"\n\"4348240\";\"Bel Air\";\"main\"\n\"4348353\";\"Beltsville\";\"main\"\n\"4348418\";\"Bennsville\";\"main\"\n\"4348460\";\"Berlin\";\"main\"\n\"4348485\";\"Berwyn Heights\";\"main\"\n\"4348599\";\"Bethesda\";\"main\"\n\"4348888\";\"Bladensburg\";\"main\"\n\"4349107\";\"Boonsboro\";\"main\"\n\"4349159\";\"Bowie\";\"main\"\n\"4349159\";\"Boui\";\"other\"\n\"4349159\";\"Боуи\";\"other\"\n\"4349175\";\"Bowleys Quarters\";\"main\"\n\"4349228\";\"Braddock Heights\";\"main\"\n\"4349283\";\"Brandywine\";\"main\"\n\"4349337\";\"Brentwood\";\"main\"\n\"4349599\";\"Brooklyn Park\";\"main\"\n\"4349611\";\"Brookmont\";\"main\"\n\"4349706\";\"Brunswick\";\"main\"\n\"4349706\";\"Braunshvejg\";\"other\"\n\"4349706\";\"Брауншвейг\";\"other\"\n\"4349727\";\"Bryans Road\";\"main\"\n\"4349903\";\"Burtonsville\";\"main\"\n\"4350013\";\"Cabin John\";\"main\"\n\"4350049\";\"California\";\"main\"\n\"4350160\";\"Calverton\";\"main\"\n\"4350175\";\"Cambridge\";\"main\"\n\"4350175\";\"Kembridzh\";\"other\"\n\"4350175\";\"Кембридж\";\"other\"\n\"4350288\";\"Camp Springs\";\"main\"\n\"4350348\";\"Cape Saint Claire\";\"main\"\n\"4350359\";\"Capitol Heights\";\"main\"\n\"4350413\";\"Carney\";\"main\"\n\"4350413\";\"Karni\";\"other\"\n\"4350413\";\"Карни\";\"other\"\n\"4350635\";\"Catonsville\";\"main\"\n\"4350675\";\"Cavetown\";\"main\"\n\"4350878\";\"Centreville\";\"main\"\n\"4351037\";\"Charlestown\";\"main\"\n\"4351038\";\"Charlestown\";\"main\"\n\"4351048\";\"Charlotte Hall\";\"main\"\n\"4351184\";\"Chesapeake Beach\";\"main\"\n\"4351248\";\"Chester\";\"main\"\n\"4351248\";\"Честер\";\"other\"\n\"4351264\";\"Chestertown\";\"main\"\n\"4351327\";\"Cheverly\";\"main\"\n\"4351335\";\"Chevy Chase\";\"main\"\n\"4351352\";\"Chevy Chase Village\";\"main\"\n\"4351383\";\"Chillum\";\"main\"\n\"4351708\";\"Clarksburg\";\"main\"\n\"4351840\";\"Clover Hill\";\"main\"\n\"4351851\";\"Cloverly\";\"main\"\n\"4351871\";\"Clinton\";\"main\"\n\"4351871\";\"Klinton\";\"other\"\n\"4351871\";\"Клинтон\";\"other\"\n\"4351887\";\"Cockeysville\";\"main\"\n\"4351951\";\"Colesville\";\"main\"\n\"4351977\";\"College Park\";\"main\"\n\"4352015\";\"Colmar Manor\";\"main\"\n\"4352053\";\"Columbia\";\"main\"\n\"4352053\";\"Kolumbija\";\"other\"\n\"4352053\";\"Колумбия\";\"other\"\n\"4352247\";\"Coral Hills\";\"main\"\n\"4352287\";\"Cottage City\";\"main\"\n\"4352539\";\"Crofton\";\"main\"\n\"4352539\";\"Kroftona\";\"other\"\n\"4352539\";\"Крофтона\";\"other\"\n\"4352577\";\"Crisfield\";\"main\"\n\"4352618\";\"Crownsville\";\"main\"\n\"4352681\";\"Cumberland\";\"main\"\n\"4352681\";\"Kamberlend\";\"other\"\n\"4352681\";\"Камберленд\";\"other\"\n\"4352728\";\"Damascus\";\"main\"\n\"4352795\";\"Darnestown\";\"main\"\n\"4352888\";\"Deale\";\"main\"\n\"4353035\";\"Delmar\";\"main\"\n\"4353075\";\"Denton\";\"main\"\n\"4353463\";\"District Heights\";\"main\"\n\"4353765\";\"Dundalk\";\"main\"\n\"4353765\";\"Dandolk\";\"other\"\n\"4353765\";\"Дандолк\";\"other\"\n\"4353798\";\"Dunkirk\";\"main\"\n\"4353805\";\"Dunkirk Town Center\";\"main\"\n\"4353925\";\"East Riverdale\";\"main\"\n\"4353962\";\"Easton\";\"main\"\n\"4353962\";\"Iston\";\"other\"\n\"4353962\";\"Истон\";\"other\"\n\"4354060\";\"Edgemere\";\"main\"\n\"4354087\";\"Edgewood\";\"main\"\n\"4354121\";\"Edmonston\";\"main\"\n\"4354163\";\"Eldersburg\";\"main\"\n\"4354234\";\"Elkton\";\"main\"\n\"4354256\";\"Elkridge\";\"main\"\n\"4354265\";\"Ellicott City\";\"main\"\n\"4354352\";\"Emmitsburg\";\"main\"\n\"4354428\";\"Essex\";\"main\"\n\"4354428\";\"Ehsseks\";\"other\"\n\"4354428\";\"Эссекс\";\"other\"\n\"4354573\";\"Fairland\";\"main\"\n\"4354593\";\"Fairmount Heights\";\"main\"\n\"4354708\";\"Fallston\";\"main\"\n\"4354775\";\"Federalsburg\";\"main\"\n\"4354821\";\"Ferndale\";\"main\"\n\"4355214\";\"Forest Glen\";\"main\"\n\"4355230\";\"Forest Heights\";\"main\"\n\"4355274\";\"Forestville\";\"main\"\n\"4355322\";\"Fort George G Mead Junction\";\"main\"\n\"4355355\";\"Fort Washington\";\"main\"\n\"4355585\";\"Frederick\";\"main\"\n\"4355585\";\"Frederik\";\"other\"\n\"4355585\";\"Фредерик\";\"other\"\n\"4355670\";\"Friendly\";\"main\"\n\"4355730\";\"Friendship Village\";\"main\"\n\"4355756\";\"Frostburg\";\"main\"\n\"4355780\";\"Fruitland\";\"main\"\n\"4355843\";\"Gaithersburg\";\"main\"\n\"4355958\";\"Garrison\";\"main\"\n\"4356050\";\"Germantown\";\"main\"\n\"4356188\";\"Glen Burnie\";\"main\"\n\"4356242\";\"Glenarden\";\"main\"\n\"4356289\";\"Glenn Dale\";\"main\"\n\"4356341\";\"Goddard\";\"main\"\n\"4356350\";\"Golden Beach\";\"main\"\n\"4356634\";\"Grasonville\";\"main\"\n\"4356783\";\"Green Haven\";\"main\"\n\"4356836\";\"Green Valley\";\"main\"\n\"4356847\";\"Greenbelt\";\"main\"\n\"4356847\";\"Grinbelte\";\"other\"\n\"4356847\";\"Гринбелте\";\"other\"\n\"4356953\";\"Greensboro\";\"main\"\n\"4356953\";\"Grinsboro\";\"other\"\n\"4356953\";\"Гринсборо\";\"other\"\n\"4357141\";\"Hagerstown\";\"main\"\n\"4357176\";\"Halfway\";\"main\"\n\"4357279\";\"Hampstead\";\"main\"\n\"4357289\";\"Hampton\";\"main\"\n\"4357289\";\"Khehmpton\";\"other\"\n\"4357289\";\"Хэмптон\";\"other\"\n\"4357310\";\"Hancock\";\"main\"\n\"4357617\";\"Havre de Grace\";\"main\"\n\"4357794\";\"Herald Harbor\";\"main\"\n\"4357991\";\"Highfield-Cascade\";\"main\"\n\"4358066\";\"Hillandale\";\"main\"\n\"4358082\";\"Hillcrest Heights\";\"main\"\n\"4358144\";\"Hillsmere Shores\";\"main\"\n\"4358671\";\"Hughesville\";\"main\"\n\"4358772\";\"Huntingtown\";\"main\"\n\"4358779\";\"Huntingtown Town Center\";\"main\"\n\"4358790\";\"Hurlock\";\"main\"\n\"4358821\";\"Hyattsville\";\"main\"\n\"4358916\";\"Indian Head\";\"main\"\n\"4359359\";\"Jarrettsville\";\"main\"\n\"4359619\";\"Joppatowne\";\"main\"\n\"4359721\";\"Kemp Mill\";\"main\"\n\"4359760\";\"Kensington\";\"main\"\n\"4359858\";\"Kettering\";\"main\"\n\"4359858\";\"Кеттеринг\";\"other\"\n\"4359981\";\"Kingstown\";\"main\"\n\"4359984\";\"Kingsville\";\"main\"\n\"4360103\";\"La Plata\";\"main\"\n\"4360113\";\"La Vale\";\"main\"\n\"4360138\";\"Lake Arbor\";\"main\"\n\"4360201\";\"Lake Shore\";\"main\"\n\"4360288\";\"Landover Hills\";\"main\"\n\"4360314\";\"Langley Park\";\"main\"\n\"4360345\";\"Largo\";\"main\"\n\"4360369\";\"Laurel\";\"main\"\n\"4360551\";\"Leonardtown\";\"main\"\n\"4360592\";\"Lexington Park\";\"main\"\n\"4360713\";\"Linthicum\";\"main\"\n\"4360954\";\"Lochearn\";\"main\"\n\"4361085\";\"Lonaconing\";\"main\"\n\"4361094\";\"Londontowne\";\"main\"\n\"4361365\";\"Lusby\";\"main\"\n\"4361547\";\"Manchester\";\"main\"\n\"4361547\";\"Манчестер\";\"other\"\n\"4361721\";\"Marlow Heights\";\"main\"\n\"4361725\";\"Marlton\";\"main\"\n\"4361831\";\"Maryland City\";\"main\"\n\"4361969\";\"Maugansville\";\"main\"\n\"4362001\";\"Mayo\";\"main\"\n\"4362009\";\"Mays Chapel\";\"main\"\n\"4362344\";\"Middle River\";\"main\"\n\"4362372\";\"Middletown\";\"main\"\n\"4362438\";\"Milford Mill\";\"main\"\n\"4362624\";\"Mitchellville\";\"main\"\n\"4362743\";\"Montgomery Village\";\"main\"\n\"4362837\";\"Morningside\";\"main\"\n\"4362882\";\"Mount Airy\";\"main\"\n\"4363124\";\"Mount Rainier\";\"main\"\n\"4363282\";\"Mountain Lake Park\";\"main\"\n\"4363436\";\"Myersville\";\"main\"\n\"4363611\";\"New Carrollton\";\"main\"\n\"4363692\";\"New Windsor\";\"main\"\n\"4363831\";\"North Beach\";\"main\"\n\"4363836\";\"North Bel Air\";\"main\"\n\"4363843\";\"North Bethesda\";\"main\"\n\"4363889\";\"North East\";\"main\"\n\"4363960\";\"North Kensington\";\"main\"\n\"4363964\";\"North Laurel\";\"main\"\n\"4363990\";\"North Potomac\";\"main\"\n\"4364231\";\"Oakland\";\"main\"\n\"4364231\";\"Oklend\";\"other\"\n\"4364231\";\"Окленд\";\"other\"\n\"4364312\";\"Ocean City\";\"main\"\n\"4364326\";\"Ocean Pines\";\"main\"\n\"4364362\";\"Odenton\";\"main\"\n\"4364537\";\"Olney\";\"main\"\n\"4364537\";\"Olni\";\"other\"\n\"4364537\";\"Олни\";\"other\"\n\"4364690\";\"Overlea\";\"main\"\n\"4364721\";\"Owings\";\"main\"\n\"4364727\";\"Owings Mills\";\"main\"\n\"4364946\";\"Parkville\";\"main\"\n\"4364964\";\"Parole\";\"main\"\n\"4364990\";\"Pasadena\";\"main\"\n\"4364990\";\"Пасадена\";\"other\"\n\"4365227\";\"Perry Hall\";\"main\"\n\"4365254\";\"Perryman\";\"main\"\n\"4365264\";\"Perryville\";\"main\"\n\"4365387\";\"Pikesville\";\"main\"\n\"4365634\";\"Pittsville\";\"main\"\n\"4365686\";\"Pleasant Hills\";\"main\"\n\"4365766\";\"Pocomoke City\";\"main\"\n\"4365877\";\"Poolesville\";\"main\"\n\"4366001\";\"Potomac\";\"main\"\n\"4366001\";\"Potomak\";\"other\"\n\"4366001\";\"Потомак\";\"other\"\n\"4366015\";\"Potomac Heights\";\"main\"\n\"4366159\";\"Prince Frederick\";\"main\"\n\"4366176\";\"Princess Anne\";\"main\"\n\"4366270\";\"Pumphrey\";\"main\"\n\"4366476\";\"Randallstown\";\"main\"\n\"4366593\";\"Redland\";\"main\"\n\"4366647\";\"Reisterstown\";\"main\"\n\"4366772\";\"Ridgely\";\"main\"\n\"4366852\";\"Rising Sun\";\"main\"\n\"4366877\";\"Riva\";\"main\"\n\"4366919\";\"Riverdale Park\";\"main\"\n\"4366929\";\"Riverside\";\"main\"\n\"4366929\";\"Riversajd\";\"other\"\n\"4366929\";\"Риверсайд\";\"other\"\n\"4366930\";\"Riverside\";\"main\"\n\"4366966\";\"Riviera Beach\";\"main\"\n\"4367034\";\"Robinwood\";\"main\"\n\"4367036\";\"Robinwood\";\"main\"\n\"4367081\";\"Rock Hall\";\"main\"\n\"4367175\";\"Rockville\";\"main\"\n\"4367175\";\"Rokvill\";\"other\"\n\"4367175\";\"Роквилл\";\"other\"\n\"4367344\";\"Rosaryville\";\"main\"\n\"4367372\";\"Rosedale\";\"main\"\n\"4367417\";\"Rossmoor\";\"main\"\n\"4367419\";\"Rossville\";\"main\"\n\"4367734\";\"Saint Charles\";\"main\"\n\"4367872\";\"Saint James\";\"main\"\n\"4367872\";\"Sent-Dzhejms\";\"other\"\n\"4367872\";\"Сент-Джеймс\";\"other\"\n\"4368380\";\"Saint Michaels\";\"main\"\n\"4368711\";\"Salisbury\";\"main\"\n\"4369086\";\"Seat Pleasant\";\"main\"\n\"4369125\";\"Selby-on-the-Bay\";\"main\"\n\"4369190\";\"Severn\";\"main\"\n\"4369190\";\"Северн\";\"other\"\n\"4369224\";\"Severna Park\";\"main\"\n\"4369286\";\"Shady Side\";\"main\"\n\"4369596\";\"Silver Spring\";\"main\"\n\"4369596\";\"yin quan\";\"other\"\n\"4369596\";\"银泉\";\"other\"\n\"4369758\";\"Smithsburg\";\"main\"\n\"4369807\";\"Snow Hill\";\"main\"\n\"4369872\";\"Solomons\";\"main\"\n\"4369891\";\"Somerset\";\"main\"\n\"4369891\";\"Сомерсет\";\"other\"\n\"4369928\";\"South Bel Air\";\"main\"\n\"4369964\";\"South Gate\";\"main\"\n\"4369976\";\"South Kensington\";\"main\"\n\"4369978\";\"South Laurel\";\"main\"\n\"4370219\";\"Springdale\";\"main\"\n\"4370366\";\"Stevensville\";\"main\"\n\"4370854\";\"Sykesville\";\"main\"\n\"4370890\";\"Takoma Park\";\"main\"\n\"4370931\";\"Taneytown\";\"main\"\n\"4371053\";\"Temple Hills\";\"main\"\n\"4371334\";\"Thurmont\";\"main\"\n\"4371582\";\"Towson\";\"main\"\n\"4371620\";\"Trappe\";\"main\"\n\"4371635\";\"Travilah\";\"main\"\n\"4372112\";\"Union Bridge\";\"main\"\n\"4372137\";\"University Park\";\"main\"\n\"4372599\";\"Waldorf\";\"main\"\n\"4372623\";\"Walker Mill\";\"main\"\n\"4372630\";\"Walkersville\";\"main\"\n\"4373104\";\"West Elkridge\";\"main\"\n\"4373136\";\"West Laurel\";\"main\"\n\"4373153\";\"West Ocean City\";\"main\"\n\"4373225\";\"Westernport\";\"main\"\n\"4373238\";\"Westminster\";\"main\"\n\"4373426\";\"White Marsh\";\"main\"\n\"4373449\";\"White Oak\";\"main\"\n\"4373719\";\"Williamsport\";\"main\"\n\"4374054\";\"Woodlawn\";\"main\"\n\"4374056\";\"Woodlawn\";\"main\"\n\"4374100\";\"Woodmore\";\"main\"\n\"4374497\";\"Adrian\";\"main\"\n\"4374497\";\"Адриан\";\"other\"\n\"4374502\";\"Advance\";\"main\"\n\"4374513\";\"Affton\";\"main\"\n\"4374557\";\"Albany\";\"main\"\n\"4374798\";\"Anderson\";\"main\"\n\"4374798\";\"Андерсон\";\"other\"\n\"4374993\";\"Appleton City\";\"main\"\n\"4375087\";\"Arnold\";\"main\"\n\"4375087\";\"Arnol'd\";\"other\"\n\"4375087\";\"Арнольд\";\"other\"\n\"4375172\";\"Ash Grove\";\"main\"\n\"4375229\";\"Ashland\";\"main\"\n\"4375349\";\"Aurora\";\"main\"\n\"4375349\";\"Avrora\";\"other\"\n\"4375349\";\"Аврора\";\"other\"\n\"4375383\";\"Ava\";\"main\"\n\"4375663\";\"Ballwin\";\"main\"\n\"4375832\";\"Barnhart\";\"main\"\n\"4375979\";\"Battlefield\";\"main\"\n\"4376350\";\"Bel-Nor\";\"main\"\n\"4376352\";\"Bel-Ridge\";\"main\"\n\"4376432\";\"Belle\";\"main\"\n\"4376444\";\"Bellefontaine Neighbors\";\"main\"\n\"4376482\";\"Belton\";\"main\"\n\"4376482\";\"Белтон\";\"other\"\n\"4376623\";\"Berkeley\";\"main\"\n\"4376623\";\"Berkli\";\"other\"\n\"4376623\";\"Беркли\";\"other\"\n\"4376632\";\"Bernie\";\"main\"\n\"4377158\";\"Billings\";\"main\"\n\"4377158\";\"Биллингс\";\"other\"\n\"4377247\";\"Bismarck\";\"main\"\n\"4377247\";\"Bismark\";\"other\"\n\"4377247\";\"Бисмарк\";\"other\"\n\"4377295\";\"Black Jack\";\"main\"\n\"4377531\";\"Bloomfield\";\"main\"\n\"4377664\";\"Blue Springs\";\"main\"\n\"4377835\";\"Bolivar\";\"main\"\n\"4377913\";\"Bonne Terre\";\"main\"\n\"4377957\";\"Boonville\";\"main\"\n\"4378027\";\"Bourbon\";\"main\"\n\"4378070\";\"Bowling Green\";\"main\"\n\"4378070\";\"Bouling-Grin\";\"other\"\n\"4378070\";\"Боулинг-Грин\";\"other\"\n\"4378219\";\"Branson\";\"main\"\n\"4378291\";\"Breckenridge Hills\";\"main\"\n\"4378312\";\"Brentwood\";\"main\"\n\"4378391\";\"Bridgeton\";\"main\"\n\"4378488\";\"Brookfield\";\"main\"\n\"4378990\";\"Buckner\";\"main\"\n\"4379025\";\"Buffalo\";\"main\"\n\"4379025\";\"Буффало\";\"other\"\n\"4379322\";\"Butler\";\"main\"\n\"4379436\";\"Byrnes Mill\";\"main\"\n\"4379478\";\"Cabool\";\"main\"\n\"4379545\";\"California\";\"main\"\n\"4379611\";\"Calverton Park\";\"main\"\n\"4379634\";\"Camdenton\";\"main\"\n\"4379644\";\"Cameron\";\"main\"\n\"4379785\";\"Campbell\";\"main\"\n\"4379785\";\"Kehmpbell\";\"other\"\n\"4379785\";\"Кэмпбелл\";\"other\"\n\"4379966\";\"Cape Girardeau\";\"main\"\n\"4380043\";\"Carl Junction\";\"main\"\n\"4380145\";\"Carrollton\";\"main\"\n\"4380199\";\"Carterville\";\"main\"\n\"4380202\";\"Carthage\";\"main\"\n\"4380211\";\"Caruthersville\";\"main\"\n\"4380284\";\"Cassville\";\"main\"\n\"4380287\";\"Castle Point\";\"main\"\n\"4380570\";\"Cedar Hill\";\"main\"\n\"4380848\";\"Centralia\";\"main\"\n\"4380859\";\"Chaffee\";\"main\"\n\"4380976\";\"Charlack\";\"main\"\n\"4380997\";\"Charleston\";\"main\"\n\"4380997\";\"Charlston\";\"other\"\n\"4380997\";\"Чарлстон\";\"other\"\n\"4381072\";\"Chesterfield\";\"main\"\n\"4381104\";\"Chillicothe\";\"main\"\n\"4381423\";\"Clarkson Valley\";\"main\"\n\"4381426\";\"Clarkton\";\"main\"\n\"4381469\";\"Claycomo\";\"main\"\n\"4381478\";\"Clayton\";\"main\"\n\"4381585\";\"Clever\";\"main\"\n\"4381643\";\"Clinton\";\"main\"\n\"4381643\";\"Klinton\";\"other\"\n\"4381643\";\"Клинтон\";\"other\"\n\"4381856\";\"Cole Camp\";\"main\"\n\"4381982\";\"Columbia\";\"main\"\n\"4381982\";\"Kolumbija\";\"other\"\n\"4381982\";\"koronbia\";\"other\"\n\"4381982\";\"Колумбия\";\"other\"\n\"4381982\";\"コロンビア\";\"other\"\n\"4382072\";\"Concord\";\"main\"\n\"4382119\";\"Concordia\";\"main\"\n\"4382223\";\"Cool Valley\";\"main\"\n\"4382491\";\"Cottleville\";\"main\"\n\"4382559\";\"Country Club Hills\";\"main\"\n\"4382561\";\"Country Club Village\";\"main\"\n\"4382741\";\"Crane\";\"main\"\n\"4382833\";\"Crestwood\";\"main\"\n\"4382837\";\"Creve Coeur\";\"main\"\n\"4382874\";\"Crocker\";\"main\"\n\"4383041\";\"Crystal City\";\"main\"\n\"4383070\";\"Cuba\";\"main\"\n\"4383306\";\"Dardenne Prairie\";\"main\"\n\"4383513\";\"De Soto\";\"main\"\n\"4383713\";\"Dellwood\";\"main\"\n\"4383778\";\"Des Peres\";\"main\"\n\"4383785\";\"Desloge\";\"main\"\n\"4383857\";\"Dexter\";\"main\"\n\"4384134\";\"Dixon\";\"main\"\n\"4384264\";\"Doniphan\";\"main\"\n\"4384480\";\"Drexel\";\"main\"\n\"4384695\";\"Duenweg\";\"main\"\n\"4384809\";\"Duquesne\";\"main\"\n\"4385018\";\"East Independence\";\"main\"\n\"4385054\";\"East Prairie\";\"main\"\n\"4385317\";\"El Dorado Springs\";\"main\"\n\"4385339\";\"Eldon\";\"main\"\n\"4385440\";\"Ellington\";\"main\"\n\"4385494\";\"Ellisville\";\"main\"\n\"4385603\";\"Elsberry\";\"main\"\n\"4385616\";\"Elvins\";\"main\"\n\"4385798\";\"Esther\";\"main\"\n\"4385835\";\"Eureka\";\"main\"\n\"4385835\";\"Ehvrika\";\"other\"\n\"4385835\";\"Эврика\";\"other\"\n\"4385966\";\"Excelsior Springs\";\"main\"\n\"4386009\";\"Fair Grove\";\"main\"\n\"4386289\";\"Farmington\";\"main\"\n\"4386289\";\"Фармингтон\";\"other\"\n\"4386332\";\"Fayette\";\"main\"\n\"4386381\";\"Fenton\";\"main\"\n\"4386387\";\"Ferguson\";\"main\"\n\"4386387\";\"Fergjuson\";\"other\"\n\"4386387\";\"Фергюсон\";\"other\"\n\"4386419\";\"Festus\";\"main\"\n\"4386685\";\"Flat River\";\"main\"\n\"4386802\";\"Florissant\";\"main\"\n\"4386981\";\"Forsyth\";\"main\"\n\"4387060\";\"Four Seasons\";\"main\"\n\"4387240\";\"Fredericktown\";\"main\"\n\"4387435\";\"Frontenac\";\"main\"\n\"4387496\";\"Fulton\";\"main\"\n\"4387496\";\"furuton\";\"other\"\n\"4387496\";\"フルトン\";\"other\"\n\"4387569\";\"Gallatin\";\"main\"\n\"4387605\";\"Garden City\";\"main\"\n\"4387605\";\"Garden Siti\";\"other\"\n\"4387605\";\"Гарден Сити\";\"other\"\n\"4387807\";\"Gerald\";\"main\"\n\"4387885\";\"Gideon\";\"main\"\n\"4387990\";\"Gladstone\";\"main\"\n\"4387990\";\"Gladston\";\"other\"\n\"4387990\";\"Гладстон\";\"other\"\n\"4388005\";\"Glasgow Village\";\"main\"\n\"4388009\";\"Glasgow\";\"main\"\n\"4388036\";\"Glendale\";\"main\"\n\"4388036\";\"Glendejl\";\"other\"\n\"4388036\";\"Глендейл\";\"other\"\n\"4388216\";\"Goodman\";\"main\"\n\"4388353\";\"Gower\";\"main\"\n\"4388402\";\"Grain Valley\";\"main\"\n\"4388409\";\"Granby\";\"main\"\n\"4388460\";\"Grandview\";\"main\"\n\"4388632\";\"Gray Summit\";\"main\"\n\"4388732\";\"Green Park\";\"main\"\n\"4388790\";\"Greenfield\";\"main\"\n\"4388790\";\"Grinfild\";\"other\"\n\"4388790\";\"Гринфилд\";\"other\"\n\"4388831\";\"Greenwood\";\"main\"\n\"4389309\";\"Hamilton\";\"main\"\n\"4389309\";\"Gamil'ton\";\"other\"\n\"4389309\";\"Гамильтон\";\"other\"\n\"4389411\";\"Hanley Hills\";\"main\"\n\"4389418\";\"Hannibal\";\"main\"\n\"4389658\";\"Harrisonville\";\"main\"\n\"4389910\";\"Hayti\";\"main\"\n\"4389967\";\"Hazelwood\";\"main\"\n\"4390204\";\"Herculaneum\";\"main\"\n\"4390221\";\"Hermann\";\"main\"\n\"4390485\";\"Higginsville\";\"main\"\n\"4390555\";\"High Ridge\";\"main\"\n\"4390705\";\"Hillsboro\";\"main\"\n\"4390705\";\"Khillsboro\";\"other\"\n\"4390705\";\"Хиллсборо\";\"other\"\n\"4390708\";\"Hillsdale\";\"main\"\n\"4390914\";\"Holden\";\"main\"\n\"4390975\";\"Hollister\";\"main\"\n\"4391029\";\"Holts Summit\";\"main\"\n\"4391354\";\"Houston\";\"main\"\n\"4391354\";\"Kh'juston\";\"other\"\n\"4391354\";\"Хьюстон\";\"other\"\n\"4391641\";\"Huntsville\";\"main\"\n\"4391641\";\"Khantsvill\";\"other\"\n\"4391641\";\"Хантсвилл\";\"other\"\n\"4391808\";\"Imperial\";\"main\"\n\"4391812\";\"Independence\";\"main\"\n\"4391812\";\"du li cheng\";\"other\"\n\"4391812\";\"indipendensu\";\"other\"\n\"4391812\";\"インディペンデンス\";\"other\"\n\"4391812\";\"独立城\";\"other\"\n\"4392057\";\"Ironton\";\"main\"\n\"4392163\";\"Jackson\";\"main\"\n\"4392163\";\"Dzhekson\";\"other\"\n\"4392163\";\"Джексон\";\"other\"\n\"4392351\";\"Jasper\";\"main\"\n\"4392388\";\"Jefferson City\";\"main\"\n\"4392388\";\"Dzeferson Siti\";\"other\"\n\"4392388\";\"Dzhefferson-Siti\";\"other\"\n\"4392388\";\"jefasonshiti\";\"other\"\n\"4392388\";\"jepeoseun si\";\"other\"\n\"4392388\";\"Џеферсон Сити\";\"other\"\n\"4392388\";\"Джефферсон-Сити\";\"other\"\n\"4392388\";\"ジェファーソンシティ\";\"other\"\n\"4392388\";\"제퍼슨 시\";\"other\"\n\"4392445\";\"Jennings\";\"main\"\n\"4392768\";\"Joplin\";\"main\"\n\"4392768\";\"Dzhoplin\";\"other\"\n\"4392768\";\"Джоплин\";\"other\"\n\"4393217\";\"Kansas City\";\"main\"\n\"4393217\";\"Kansas City i Missouri\";\"other\"\n\"4393217\";\"Kansasurbo\";\"other\"\n\"4393217\";\"Kanzas Siti\";\"other\"\n\"4393217\";\"Kanzas-Siti\";\"other\"\n\"4393217\";\"kan sa si cheng\";\"other\"\n\"4393217\";\"kanzasushiti\";\"other\"\n\"4393217\";\"qnzs syty\";\"other\"\n\"4393217\";\"Канзас Сити\";\"other\"\n\"4393217\";\"Канзас-Сити\";\"other\"\n\"4393217\";\"קנזס סיטי\";\"other\"\n\"4393217\";\"カンザスシティ\";\"other\"\n\"4393217\";\"堪薩斯城\";\"other\"\n\"4393269\";\"Kearney\";\"main\"\n\"4393269\";\"Kerni\";\"other\"\n\"4393269\";\"Керни\";\"other\"\n\"4393451\";\"Kennett\";\"main\"\n\"4393581\";\"Kimberling City\";\"main\"\n\"4393739\";\"Kirkwood\";\"main\"\n\"4393739\";\"Kirkvuda\";\"other\"\n\"4393739\";\"Кирквуда\";\"other\"\n\"4393816\";\"Knob Noster\";\"main\"\n\"4393983\";\"La Monte\";\"main\"\n\"4394084\";\"Ladue\";\"main\"\n\"4394237\";\"Lake Lotawana\";\"main\"\n\"4394281\";\"Lake Ozark\";\"main\"\n\"4394302\";\"Lake Saint Louis\";\"main\"\n\"4394405\";\"Lake Winnebago\";\"main\"\n\"4394440\";\"Lakeshire\";\"main\"\n\"4394487\";\"Lamar\";\"main\"\n\"4394655\";\"Lathrop\";\"main\"\n\"4394716\";\"Lawson\";\"main\"\n\"4394788\";\"Leadwood\";\"main\"\n\"4394794\";\"Lebanon\";\"main\"\n\"4394870\";\"Lees Summit\";\"main\"\n\"4394905\";\"Lemay\";\"main\"\n\"4395035\";\"Lexington\";\"main\"\n\"4395035\";\"Leksington\";\"other\"\n\"4395035\";\"Лексингтон\";\"other\"\n\"4395052\";\"Liberty\";\"main\"\n\"4395255\";\"Licking\";\"main\"\n\"4395275\";\"Lilbourn\";\"main\"\n\"4395324\";\"Lincoln\";\"main\"\n\"4395324\";\"Linkol'n\";\"other\"\n\"4395324\";\"Линкольн\";\"other\"\n\"4396425\";\"Louisiana\";\"main\"\n\"4396767\";\"Macon\";\"main\"\n\"4396767\";\"Makon\";\"other\"\n\"4396767\";\"Макон\";\"other\"\n\"4396871\";\"Malden\";\"main\"\n\"4396915\";\"Manchester\";\"main\"\n\"4396915\";\"Манчестер\";\"other\"\n\"4396967\";\"Mansfield\";\"main\"\n\"4396967\";\"Mehnsfild\";\"other\"\n\"4396967\";\"Мэнсфилд\";\"other\"\n\"4397042\";\"Maplewood\";\"main\"\n\"4397065\";\"Marble Hill\";\"main\"\n\"4397071\";\"Marceline\";\"main\"\n\"4397123\";\"Marionville\";\"main\"\n\"4397163\";\"Marlborough\";\"main\"\n\"4397163\";\"Marlboro\";\"other\"\n\"4397163\";\"Марлборо\";\"other\"\n\"4397211\";\"Marshall\";\"main\"\n\"4397211\";\"Маршалл\";\"other\"\n\"4397238\";\"Marshfield\";\"main\"\n\"4397340\";\"Maryland Heights\";\"main\"\n\"4397543\";\"Maysville\";\"main\"\n\"4397962\";\"Mehlville\";\"main\"\n\"4398060\";\"Merriam Woods\";\"main\"\n\"4398103\";\"Mexico\";\"main\"\n\"4398530\";\"Miner\";\"main\"\n\"4398730\";\"Moberly\";\"main\"\n\"4398755\";\"Moline Acres\";\"main\"\n\"4398776\";\"Monett\";\"main\"\n\"4398859\";\"Monroe City\";\"main\"\n\"4398894\";\"Montgomery City\";\"main\"\n\"4399153\";\"Moscow Mills\";\"main\"\n\"4399605\";\"Mount Vernon\";\"main\"\n\"4399725\";\"Mountain Grove\";\"main\"\n\"4399745\";\"Mountain View\";\"main\"\n\"4399745\";\"Mauntin-V'ju\";\"other\"\n\"4399745\";\"Маунтин-Вью\";\"other\"\n\"4399914\";\"Murphy\";\"main\"\n\"4400183\";\"Neosho\";\"main\"\n\"4400203\";\"Nevada\";\"main\"\n\"4400203\";\"Невада\";\"other\"\n\"4400289\";\"New Haven\";\"main\"\n\"4400289\";\"N'ju-Khejven\";\"other\"\n\"4400289\";\"Нью-Хейвен\";\"other\"\n\"4400427\";\"New Madrid\";\"main\"\n\"4400648\";\"Nixa\";\"main\"\n\"4400673\";\"Noel\";\"main\"\n\"4400737\";\"Normandy\";\"main\"\n\"4400860\";\"North Kansas City\";\"main\"\n\"4400962\";\"Northwoods\";\"main\"\n\"4400974\";\"Norwood Court\";\"main\"\n\"4401242\";\"O'Fallon\";\"main\"\n\"4401282\";\"Oak Grove\";\"main\"\n\"4401560\";\"Oakland\";\"main\"\n\"4401560\";\"Oklend\";\"other\"\n\"4401560\";\"Окленд\";\"other\"\n\"4401618\";\"Oakville\";\"main\"\n\"4401659\";\"Odessa\";\"main\"\n\"4401659\";\"Одесса\";\"other\"\n\"4401938\";\"Olivette\";\"main\"\n\"4401987\";\"Oran\";\"main\"\n\"4402027\";\"Oronogo\";\"main\"\n\"4402040\";\"Osage Beach\";\"main\"\n\"4402178\";\"Overland\";\"main\"\n\"4402213\";\"Owensville\";\"main\"\n\"4402245\";\"Ozark\";\"main\"\n\"4402300\";\"Pacific\";\"main\"\n\"4402331\";\"Pagedale\";\"main\"\n\"4402381\";\"Palmyra\";\"main\"\n\"4402452\";\"Paris\";\"main\"\n\"4402452\";\"Parizh\";\"other\"\n\"4402452\";\"Париж\";\"other\"\n\"4402479\";\"Park Hills\";\"main\"\n\"4402544\";\"Parkville\";\"main\"\n\"4402588\";\"Pasadena Hills\";\"main\"\n\"4402809\";\"Peculiar\";\"main\"\n\"4402998\";\"Perryville\";\"main\"\n\"4403102\";\"Pevely\";\"main\"\n\"4403182\";\"Piedmont\";\"main\"\n\"4403187\";\"Pierce City\";\"main\"\n\"4403385\";\"Pine Lawn\";\"main\"\n\"4403599\";\"Platte City\";\"main\"\n\"4403615\";\"Plattsburg\";\"main\"\n\"4403710\";\"Pleasant Hill\";\"main\"\n\"4403887\";\"Pleasant Valley\";\"main\"\n\"4404233\";\"Poplar Bluff\";\"main\"\n\"4404267\";\"Portageville\";\"main\"\n\"4404348\";\"Potosi\";\"main\"\n\"4404848\";\"Purdy\";\"main\"\n\"4404862\";\"Puxico\";\"main\"\n\"4405180\";\"Raymore\";\"main\"\n\"4405188\";\"Raytown\";\"main\"\n\"4405434\";\"Republic\";\"main\"\n\"4405516\";\"Rich Hill\";\"main\"\n\"4405558\";\"Richland\";\"main\"\n\"4405558\";\"Richlend\";\"other\"\n\"4405558\";\"Ричленд\";\"other\"\n\"4405588\";\"Richmond\";\"main\"\n\"4405588\";\"Ричмонд\";\"other\"\n\"4405589\";\"Richmond Heights\";\"main\"\n\"4405794\";\"Riverside\";\"main\"\n\"4405795\";\"Riverside\";\"main\"\n\"4405795\";\"Riversajd\";\"other\"\n\"4405795\";\"Риверсайд\";\"other\"\n\"4405815\";\"Riverview\";\"main\"\n\"4405816\";\"Riverview\";\"main\"\n\"4406041\";\"Rock Hill\";\"main\"\n\"4406271\";\"Rogersville\";\"main\"\n\"4406282\";\"Rolla\";\"main\"\n\"4406783\";\"Saint Ann\";\"main\"\n\"4406783\";\"Sent-Ehnn\";\"other\"\n\"4406783\";\"Сент-Энн\";\"other\"\n\"4406831\";\"Saint Charles\";\"main\"\n\"4406831\";\"Sent-Charl'z\";\"other\"\n\"4406831\";\"Сент-Чарльз\";\"other\"\n\"4406840\";\"Saint Clair\";\"main\"\n\"4406895\";\"Saint George\";\"main\"\n\"4406909\";\"Saint James\";\"main\"\n\"4406909\";\"Sent-Dzhejms\";\"other\"\n\"4406909\";\"Сент-Джеймс\";\"other\"\n\"4406941\";\"Saint John\";\"main\"\n\"4406951\";\"Saint Johns\";\"main\"\n\"4407010\";\"Saint Joseph\";\"main\"\n\"4407010\";\"Sent-Dzhozef\";\"other\"\n\"4407010\";\"St. Joseph\";\"other\"\n\"4407010\";\"Сент-Джозеф\";\"other\"\n\"4407066\";\"Saint Louis\";\"main\"\n\"4407066\";\"San Luis\";\"other\"\n\"4407066\";\"Sankta-Luizo\";\"other\"\n\"4407066\";\"Sejnt Luis\";\"other\"\n\"4407066\";\"Sent-Luis\";\"other\"\n\"4407066\";\"St Louis\";\"other\"\n\"4407066\";\"St. Louis\";\"other\"\n\"4407066\";\"seinteulu-iseu\";\"other\"\n\"4407066\";\"sentoruisu\";\"other\"\n\"4407066\";\"sheng lu yi si\";\"other\"\n\"4407066\";\"Сейнт Луис\";\"other\"\n\"4407066\";\"Сент-Луис\";\"other\"\n\"4407066\";\"Сент-Луїс\";\"other\"\n\"4407066\";\"סנט לואיס\";\"other\"\n\"4407066\";\"セントルイス\";\"other\"\n\"4407066\";\"圣路易斯\";\"other\"\n\"4407066\";\"세인트루이스\";\"other\"\n\"4407106\";\"Saint Martins\";\"main\"\n\"4407186\";\"Saint Paul\";\"main\"\n\"4407237\";\"Saint Peters\";\"main\"\n\"4407237\";\"Sankt-Peterbu\";\"other\"\n\"4407237\";\"Санкт-Петербу\";\"other\"\n\"4407259\";\"Saint Robert\";\"main\"\n\"4407294\";\"Sainte Genevieve\";\"main\"\n\"4407294\";\"St. Genevieve\";\"other\"\n\"4407308\";\"Salem\";\"main\"\n\"4407308\";\"Sejlem\";\"other\"\n\"4407308\";\"Сейлем\";\"other\"\n\"4407399\";\"Salisbury\";\"main\"\n\"4407617\";\"Sappington\";\"main\"\n\"4407631\";\"Sarcoxie\";\"main\"\n\"4407665\";\"Savannah\";\"main\"\n\"4407665\";\"Savanna\";\"other\"\n\"4407665\";\"Саванна\";\"other\"\n\"4407900\";\"Scott City\";\"main\"\n\"4408000\";\"Sedalia\";\"main\"\n\"4408052\";\"Senath\";\"main\"\n\"4408054\";\"Seneca\";\"main\"\n\"4408117\";\"Seymour\";\"main\"\n\"4408334\";\"Shelbina\";\"main\"\n\"4408358\";\"Shell Knob\";\"main\"\n\"4408611\";\"Shrewsbury\";\"main\"\n\"4408611\";\"Shrusberi\";\"other\"\n\"4408611\";\"Шрусбери\";\"other\"\n\"4408672\";\"Sikeston\";\"main\"\n\"4408964\";\"Slater\";\"main\"\n\"4409199\";\"Smithville\";\"main\"\n\"4409591\";\"Spanish Lake\";\"main\"\n\"4409615\";\"Sparta\";\"main\"\n\"4409896\";\"Springfield\";\"main\"\n\"4409896\";\"Springfild\";\"other\"\n\"4409896\";\"supuringufirudo\";\"other\"\n\"4409896\";\"Спрингфилд\";\"other\"\n\"4409896\";\"スプリングフィールド\";\"other\"\n\"4410101\";\"Steele\";\"main\"\n\"4410113\";\"Steelville\";\"main\"\n\"4410287\";\"Stockton\";\"main\"\n\"4410287\";\"Stoktun\";\"other\"\n\"4410287\";\"Стоктън\";\"other\"\n\"4410425\";\"Stover\";\"main\"\n\"4410432\";\"Strafford\";\"main\"\n\"4410585\";\"Sugar Creek\";\"main\"\n\"4410669\";\"Sullivan\";\"main\"\n\"4410836\";\"Sunset Hills\";\"main\"\n\"4410978\";\"Sweet Springs\";\"main\"\n\"4411477\";\"Thayer\";\"main\"\n\"4411809\";\"Tipton\";\"main\"\n\"4411912\";\"Town and Country\";\"main\"\n\"4412089\";\"Troy\";\"main\"\n\"4412089\";\"Troja\";\"other\"\n\"4412089\";\"Троя\";\"other\"\n\"4412454\";\"Union\";\"main\"\n\"4412697\";\"University City\";\"main\"\n\"4412820\";\"Valley Park\";\"main\"\n\"4412896\";\"Vandalia\";\"main\"\n\"4412975\";\"Velda Village\";\"main\"\n\"4412976\";\"Velda Village Hills\";\"main\"\n\"4413013\";\"Versailles\";\"main\"\n\"4413136\";\"Vinita Park\";\"main\"\n\"4413595\";\"Warrensburg\";\"main\"\n\"4413598\";\"Warrenton\";\"main\"\n\"4413601\";\"Warsaw\";\"main\"\n\"4413602\";\"Warson Woods\";\"main\"\n\"4413621\";\"Washington\";\"main\"\n\"4413621\";\"Vashington\";\"other\"\n\"4413621\";\"Вашингтон\";\"other\"\n\"4413802\";\"Waynesville\";\"main\"\n\"4413815\";\"Weatherby Lake\";\"main\"\n\"4413842\";\"Webb City\";\"main\"\n\"4413872\";\"Webster Groves\";\"main\"\n\"4413926\";\"Weldon Spring\";\"main\"\n\"4413977\";\"Wellston\";\"main\"\n\"4413978\";\"Wellsville\";\"main\"\n\"4414001\";\"Wentzville\";\"main\"\n\"4414200\";\"West Plains\";\"main\"\n\"4414270\";\"Weston\";\"main\"\n\"4414270\";\"Uehston\";\"other\"\n\"4414270\";\"Уэстон\";\"other\"\n\"4414749\";\"Wildwood\";\"main\"\n\"4414816\";\"Willard\";\"main\"\n\"4414959\";\"Willow Springs\";\"main\"\n\"4415065\";\"Winchester\";\"main\"\n\"4415076\";\"Windsor\";\"main\"\n\"4415076\";\"Vindzor\";\"other\"\n\"4415076\";\"Виндзор\";\"other\"\n\"4415134\";\"Winona\";\"main\"\n\"4415134\";\"Vajnona\";\"other\"\n\"4415134\";\"Вайнона\";\"other\"\n\"4415434\";\"Woodson Terrace\";\"main\"\n\"4415502\";\"Wright City\";\"main\"\n\"4415813\";\"Aberdeen\";\"main\"\n\"4415813\";\"Aberdin\";\"other\"\n\"4415813\";\"Абердин\";\"other\"\n\"4415878\";\"Ackerman\";\"main\"\n\"4416192\";\"Amory\";\"main\"\n\"4416877\";\"Baldwyn\";\"main\"\n\"4417130\";\"Batesville\";\"main\"\n\"4417205\";\"Bay Saint Louis\";\"main\"\n\"4417212\";\"Bay Springs\";\"main\"\n\"4417642\";\"Belmont\";\"main\"\n\"4417666\";\"Belmont\";\"main\"\n\"4417666\";\"Белмонт\";\"other\"\n\"4417676\";\"Belzoni\";\"main\"\n\"4418478\";\"Biloxi\";\"main\"\n\"4418478\";\"Biloksi\";\"other\"\n\"4418478\";\"Билокси\";\"other\"\n\"4419094\";\"Booneville\";\"main\"\n\"4419290\";\"Brandon\";\"main\"\n\"4419290\";\"Brehndon\";\"other\"\n\"4419290\";\"Брэндон\";\"other\"\n\"4419500\";\"Brookhaven\";\"main\"\n\"4419539\";\"Brooksville\";\"main\"\n\"4419654\";\"Bruce\";\"main\"\n\"4419845\";\"Bude\";\"main\"\n\"4420041\";\"Burnsville\";\"main\"\n\"4420177\";\"Byram\";\"main\"\n\"4420304\";\"Calhoun City\";\"main\"\n\"4420617\";\"Canton\";\"main\"\n\"4420799\";\"Carthage\";\"main\"\n\"4421208\";\"Centreville\";\"main\"\n\"4421338\";\"Charleston\";\"main\"\n\"4421338\";\"Charlston\";\"other\"\n\"4421338\";\"Чарлстон\";\"other\"\n\"4421935\";\"Clarksdale\";\"main\"\n\"4422106\";\"Cleveland\";\"main\"\n\"4422106\";\"Klivlend\";\"other\"\n\"4422106\";\"Кливленд\";\"other\"\n\"4422133\";\"Clinton\";\"main\"\n\"4422133\";\"Klinton\";\"other\"\n\"4422133\";\"Клинтон\";\"other\"\n\"4422281\";\"Coldwater\";\"main\"\n\"4422289\";\"Coldwater\";\"main\"\n\"4422375\";\"Collins\";\"main\"\n\"4422398\";\"Collinsville\";\"main\"\n\"4422398\";\"Kollinsvil'\";\"other\"\n\"4422398\";\"Коллинсвиль\";\"other\"\n\"4422442\";\"Columbus\";\"main\"\n\"4422442\";\"Kolumbus\";\"other\"\n\"4422442\";\"Колумбус\";\"other\"\n\"4422457\";\"Columbia\";\"main\"\n\"4422457\";\"Kolumbija\";\"other\"\n\"4422457\";\"Колумбия\";\"other\"\n\"4422485\";\"Como\";\"main\"\n\"4422552\";\"Conehatta\";\"main\"\n\"4422713\";\"Corinth\";\"main\"\n\"4423227\";\"Crystal Springs\";\"main\"\n\"4423395\";\"D'Iberville\";\"main\"\n\"4423701\";\"Decatur\";\"main\"\n\"4423701\";\"Dekejter\";\"other\"\n\"4423701\";\"Декейтер\";\"other\"\n\"4423888\";\"Diamondhead\";\"main\"\n\"4424689\";\"Drew\";\"main\"\n\"4424837\";\"Duck Hill\";\"main\"\n\"4424956\";\"Durant\";\"main\"\n\"4425369\";\"Ecru\";\"main\"\n\"4425435\";\"Edwards\";\"main\"\n\"4425603\";\"Ellisville\";\"main\"\n\"4425816\";\"Escatawpa\";\"main\"\n\"4425862\";\"Eupora\";\"main\"\n\"4426190\";\"Farmington\";\"main\"\n\"4426190\";\"Фармингтон\";\"other\"\n\"4426218\";\"Fayette\";\"main\"\n\"4426772\";\"Flora\";\"main\"\n\"4426781\";\"Florence\";\"main\"\n\"4426781\";\"Florencija\";\"other\"\n\"4426781\";\"Флоренция\";\"other\"\n\"4426822\";\"Flowood\";\"main\"\n\"4426884\";\"Forest\";\"main\"\n\"4427216\";\"Friars Point\";\"main\"\n\"4427345\";\"Fulton\";\"main\"\n\"4427569\";\"Gautier\";\"main\"\n\"4427569\";\"Got'e\";\"other\"\n\"4427569\";\"Готье\";\"other\"\n\"4427809\";\"Gloster\";\"main\"\n\"4427960\";\"Goodman\";\"main\"\n\"4428475\";\"Greenville\";\"main\"\n\"4428475\";\"Grinvill\";\"other\"\n\"4428475\";\"Гринвилл\";\"other\"\n\"4428495\";\"Greenwood\";\"main\"\n\"4428539\";\"Grenada\";\"main\"\n\"4428654\";\"Gulf Hills\";\"main\"\n\"4428663\";\"Gulf Park Estates\";\"main\"\n\"4428667\";\"Gulfport\";\"main\"\n\"4428667\";\"Galfporta\";\"other\"\n\"4428667\";\"Галфпорта\";\"other\"\n\"4428744\";\"Guntown\";\"main\"\n\"4429295\";\"Hattiesburg\";\"main\"\n\"4429387\";\"Hazlehurst\";\"main\"\n\"4429589\";\"Hernando\";\"main\"\n\"4429718\";\"Hickory Hills\";\"main\"\n\"4430017\";\"Hollandale\";\"main\"\n\"4430103\";\"Holly Springs\";\"main\"\n\"4430104\";\"Holly Springs\";\"main\"\n\"4430400\";\"Horn Lake\";\"main\"\n\"4430529\";\"Houston\";\"main\"\n\"4430529\";\"Kh'juston\";\"other\"\n\"4430529\";\"Хьюстон\";\"other\"\n\"4430749\";\"Hurley\";\"main\"\n\"4430981\";\"Indianola\";\"main\"\n\"4431209\";\"Inverness\";\"main\"\n\"4431280\";\"Itta Bena\";\"main\"\n\"4431283\";\"Iuka\";\"main\"\n\"4431410\";\"Jackson\";\"main\"\n\"4431410\";\"Dzhaksun\";\"other\"\n\"4431410\";\"jakswn\";\"other\"\n\"4431410\";\"jakuson\";\"other\"\n\"4431410\";\"Джаксън\";\"other\"\n\"4431410\";\"جاكسون\";\"other\"\n\"4431410\";\"ジャクソン\";\"other\"\n\"4432041\";\"Jonestown\";\"main\"\n\"4432310\";\"Kiln\";\"main\"\n\"4432542\";\"Kosciusko\";\"main\"\n\"4432931\";\"Lambert\";\"main\"\n\"4433016\";\"Latimer\";\"main\"\n\"4433039\";\"Laurel\";\"main\"\n\"4433289\";\"Leland\";\"main\"\n\"4433359\";\"Lexington\";\"main\"\n\"4433359\";\"Leksington\";\"other\"\n\"4433359\";\"Лексингтон\";\"other\"\n\"4434069\";\"Long Beach\";\"main\"\n\"4434069\";\"Long-Bich\";\"other\"\n\"4434069\";\"Лонг-Бич\";\"other\"\n\"4434283\";\"Louisville\";\"main\"\n\"4434283\";\"Luisvil\";\"other\"\n\"4434283\";\"Луисвил\";\"other\"\n\"4434388\";\"Lucedale\";\"main\"\n\"4434435\";\"Lumberton\";\"main\"\n\"4434459\";\"Lyman\";\"main\"\n\"4434465\";\"Lynchburg\";\"main\"\n\"4434466\";\"Lynchburg\";\"main\"\n\"4434645\";\"Macon\";\"main\"\n\"4434645\";\"Makon\";\"other\"\n\"4434645\";\"Макон\";\"other\"\n\"4434663\";\"Madison\";\"main\"\n\"4434663\";\"Мадисон\";\"other\"\n\"4434697\";\"Magee\";\"main\"\n\"4434720\";\"Magnolia\";\"main\"\n\"4434850\";\"Mantachie\";\"main\"\n\"4434904\";\"Marion\";\"main\"\n\"4434904\";\"Mehrion\";\"other\"\n\"4434904\";\"Мэрион\";\"other\"\n\"4434925\";\"Marks\";\"main\"\n\"4435318\";\"McComb\";\"main\"\n\"4435722\";\"Mendenhall\";\"main\"\n\"4435764\";\"Meridian\";\"main\"\n\"4435764\";\"Меридиан\";\"other\"\n\"4435803\";\"Metcalfe\";\"main\"\n\"4436445\";\"Monticello\";\"main\"\n\"4436546\";\"Moorhead\";\"main\"\n\"4436694\";\"Morton\";\"main\"\n\"4436743\";\"Moss Point\";\"main\"\n\"4436772\";\"Mound Bayou\";\"main\"\n\"4437982\";\"Natchez\";\"main\"\n\"4438077\";\"Nellieburg\";\"main\"\n\"4438112\";\"Nettleton\";\"main\"\n\"4438121\";\"New Albany\";\"main\"\n\"4438121\";\"N'ju-Albani\";\"other\"\n\"4438121\";\"Нью-Албани\";\"other\"\n\"4438307\";\"New Hope\";\"main\"\n\"4438820\";\"Newton\";\"main\"\n\"4438820\";\"N'juton\";\"other\"\n\"4438820\";\"Ньютон\";\"other\"\n\"4439033\";\"North Tunica\";\"main\"\n\"4439506\";\"Ocean Springs\";\"main\"\n\"4439566\";\"Okolona\";\"main\"\n\"4439869\";\"Olive Branch\";\"main\"\n\"4440076\";\"Oxford\";\"main\"\n\"4440076\";\"Oksford\";\"other\"\n\"4440076\";\"Оксфорд\";\"other\"\n\"4440397\";\"Pascagoula\";\"main\"\n\"4440397\";\"Paskagula\";\"other\"\n\"4440397\";\"Паскагула\";\"other\"\n\"4440413\";\"Pass Christian\";\"main\"\n\"4440559\";\"Pearl\";\"main\"\n\"4440572\";\"Pearl River\";\"main\"\n\"4440602\";\"Pearlington\";\"main\"\n\"4440660\";\"Pelahatchie\";\"main\"\n\"4440837\";\"Petal\";\"main\"\n\"4440906\";\"Philadelphia\";\"main\"\n\"4440906\";\"Filadel'fija\";\"other\"\n\"4440906\";\"Филадельфия\";\"other\"\n\"4440975\";\"Picayune\";\"main\"\n\"4440988\";\"Pickens\";\"main\"\n\"4441578\";\"Plantersville\";\"main\"\n\"4442067\";\"Pontotoc\";\"main\"\n\"4442164\";\"Poplarville\";\"main\"\n\"4442187\";\"Port Gibson\";\"main\"\n\"4442363\";\"Prentiss\";\"main\"\n\"4442639\";\"Purvis\";\"main\"\n\"4442692\";\"Quitman\";\"main\"\n\"4442797\";\"Raleigh\";\"main\"\n\"4442797\";\"Roli\";\"other\"\n\"4442797\";\"Роли\";\"other\"\n\"4442913\";\"Raymond\";\"main\"\n\"4443249\";\"Richland\";\"main\"\n\"4443249\";\"Richlend\";\"other\"\n\"4443249\";\"Ричленд\";\"other\"\n\"4443276\";\"Richton\";\"main\"\n\"4443296\";\"Ridgeland\";\"main\"\n\"4443338\";\"Ripley\";\"main\"\n\"4443769\";\"Rolling Fork\";\"main\"\n\"4444067\";\"Ruleville\";\"main\"\n\"4444938\";\"Saltillo\";\"main\"\n\"4445170\";\"Sardis\";\"main\"\n\"4445217\";\"Saucier\";\"main\"\n\"4445447\";\"Senatobia\";\"main\"\n\"4445668\";\"Shannon\";\"main\"\n\"4445737\";\"Shelby\";\"main\"\n\"4446675\";\"Southaven\";\"main\"\n\"4447069\";\"Saint Martin\";\"main\"\n\"4447161\";\"Starkville\";\"main\"\n\"4447344\";\"Stonewall\";\"main\"\n\"4447545\";\"Summit\";\"main\"\n\"4447557\";\"Sumrall\";\"main\"\n\"4448074\";\"Taylorsville\";\"main\"\n\"4448086\";\"Tchula\";\"main\"\n\"4448894\";\"Tunica\";\"main\"\n\"4448903\";\"Tupelo\";\"main\"\n\"4448903\";\"Tjupelo\";\"other\"\n\"4448903\";\"Тюпело\";\"other\"\n\"4449055\";\"Tutwiler\";\"main\"\n\"4449106\";\"Tylertown\";\"main\"\n\"4449144\";\"Union\";\"main\"\n\"4449532\";\"Vancleave\";\"main\"\n\"4449552\";\"Vardaman\";\"main\"\n\"4449603\";\"Verona\";\"main\"\n\"4449620\";\"Vicksburg\";\"main\"\n\"4450164\";\"Walnut Grove\";\"main\"\n\"4450347\";\"Water Valley\";\"main\"\n\"4450411\";\"Waveland\";\"main\"\n\"4450441\";\"Waynesboro\";\"main\"\n\"4450606\";\"Wesson\";\"main\"\n\"4450687\";\"West Gulfport\";\"main\"\n\"4450695\";\"West Hattiesburg\";\"main\"\n\"4450753\";\"West Point\";\"main\"\n\"4451140\";\"Wiggins\";\"main\"\n\"4451465\";\"Winona\";\"main\"\n\"4451465\";\"Vajnona\";\"other\"\n\"4451465\";\"Вайнона\";\"other\"\n\"4451678\";\"Woodville\";\"main\"\n\"4451810\";\"Yazoo City\";\"main\"\n\"4452137\";\"Aberdeen\";\"main\"\n\"4452137\";\"Aberdin\";\"other\"\n\"4452137\";\"Абердин\";\"other\"\n\"4452256\";\"Ahoskie\";\"main\"\n\"4452303\";\"Albemarle\";\"main\"\n\"4452655\";\"Andrews\";\"main\"\n\"4452686\";\"Angier\";\"main\"\n\"4452808\";\"Apex\";\"main\"\n\"4452808\";\"Apeks\";\"other\"\n\"4452808\";\"Апекс\";\"other\"\n\"4452871\";\"Archdale\";\"main\"\n\"4453035\";\"Asheboro\";\"main\"\n\"4453066\";\"Asheville\";\"main\"\n\"4453066\";\"Ehshvil'\";\"other\"\n\"4453066\";\"Эшвиль\";\"other\"\n\"4453145\";\"Atlantic Beach\";\"main\"\n\"4453238\";\"Avery Creek\";\"main\"\n\"4453271\";\"Ayden\";\"main\"\n\"4453351\";\"Badin\";\"main\"\n\"4453570\";\"Balfour\";\"main\"\n\"4453759\";\"Barker Heights\";\"main\"\n\"4454034\";\"Bayshore\";\"main\"\n\"4454370\";\"Beaufort\";\"main\"\n\"4454761\";\"Belhaven\";\"main\"\n\"4454860\";\"Belmont\";\"main\"\n\"4454860\";\"Белмонт\";\"other\"\n\"4454899\";\"Belwood\";\"main\"\n\"4454971\";\"Benson\";\"main\"\n\"4454988\";\"Bent Creek\";\"main\"\n\"4455043\";\"Bermuda Run\";\"main\"\n\"4455080\";\"Bessemer City\";\"main\"\n\"4455171\";\"Bethel\";\"main\"\n\"4455335\";\"Bethlehem\";\"main\"\n\"4455335\";\"Vifleem\";\"other\"\n\"4455335\";\"Вифлеем\";\"other\"\n\"4455473\";\"Beulaville\";\"main\"\n\"4455999\";\"Biltmore Forest\";\"main\"\n\"4456054\";\"Biscoe\";\"main\"\n\"4456121\";\"Black Mountain\";\"main\"\n\"4456253\";\"Bladenboro\";\"main\"\n\"4456376\";\"Blowing Rock\";\"main\"\n\"4456593\";\"Boiling Spring Lakes\";\"main\"\n\"4456595\";\"Boiling Springs\";\"main\"\n\"4456703\";\"Boone\";\"main\"\n\"4456748\";\"Boonville\";\"main\"\n\"4457040\";\"Brevard\";\"main\"\n\"4457089\";\"Brices Creek\";\"main\"\n\"4457342\";\"Brogden\";\"main\"\n\"4457719\";\"Bryson City\";\"main\"\n\"4458033\";\"Buies Creek\";\"main\"\n\"4458175\";\"Burgaw\";\"main\"\n\"4458228\";\"Burlington\";\"main\"\n\"4458228\";\"Berlington\";\"other\"\n\"4458228\";\"Берлингтон\";\"other\"\n\"4458264\";\"Burnsville\";\"main\"\n\"4458265\";\"Burnsville\";\"main\"\n\"4458372\";\"Butner\";\"main\"\n\"4458580\";\"Cajahs Mountain\";\"main\"\n\"4459120\";\"Canton\";\"main\"\n\"4459135\";\"Cape Carteret\";\"main\"\n\"4459261\";\"Carolina Beach\";\"main\"\n\"4459298\";\"Carolina Shores\";\"main\"\n\"4459343\";\"Carrboro\";\"main\"\n\"4459426\";\"Carthage\";\"main\"\n\"4459467\";\"Cary\";\"main\"\n\"4459467\";\"Kehri\";\"other\"\n\"4459467\";\"Кэри\";\"other\"\n\"4459530\";\"Castle Hayne\";\"main\"\n\"4460084\";\"Chadbourn\";\"main\"\n\"4460162\";\"Chapel Hill\";\"main\"\n\"4460243\";\"Charlotte\";\"main\"\n\"4460243\";\"Sharl\\\"t\";\"other\"\n\"4460243\";\"Sharlot\";\"other\"\n\"4460243\";\"sharotto\";\"other\"\n\"4460243\";\"syallos\";\"other\"\n\"4460243\";\"tsharlwt\";\"other\"\n\"4460243\";\"Шарлот\";\"other\"\n\"4460243\";\"Шарлът\";\"other\"\n\"4460243\";\"שארלוט\";\"other\"\n\"4460243\";\"تشارلوت\";\"other\"\n\"4460243\";\"シャーロット\";\"other\"\n\"4460243\";\"샬롯\";\"other\"\n\"4460364\";\"Cherokee\";\"main\"\n\"4460364\";\"Cheroki\";\"other\"\n\"4460364\";\"Чероки\";\"other\"\n\"4460465\";\"Cherryville\";\"main\"\n\"4460651\";\"China Grove\";\"main\"\n\"4460831\";\"Claremont\";\"main\"\n\"4460831\";\"Klermont\";\"other\"\n\"4460831\";\"Клермонт\";\"other\"\n\"4460943\";\"Clayton\";\"main\"\n\"4461015\";\"Clemmons\";\"main\"\n\"4461101\";\"Clinton\";\"main\"\n\"4461101\";\"Klinton\";\"other\"\n\"4461101\";\"Клинтон\";\"other\"\n\"4461150\";\"Clyde\";\"main\"\n\"4461169\";\"Coats\";\"main\"\n\"4461574\";\"Concord\";\"main\"\n\"4461574\";\"Konkord\";\"other\"\n\"4461574\";\"Конкорд\";\"other\"\n\"4461668\";\"Connelly Springs\";\"main\"\n\"4461696\";\"Conover\";\"main\"\n\"4461941\";\"Cornelius\";\"main\"\n\"4461941\";\"Kornelius\";\"other\"\n\"4461941\";\"Корнелиус\";\"other\"\n\"4462356\";\"Cramerton\";\"main\"\n\"4462446\";\"Creedmoor\";\"main\"\n\"4462501\";\"Cricket\";\"main\"\n\"4462701\";\"Cullowhee\";\"main\"\n\"4462896\";\"Dallas\";\"main\"\n\"4462896\";\"Даллас\";\"other\"\n\"4463053\";\"Davidson\";\"main\"\n\"4463519\";\"Denton\";\"main\"\n\"4463810\";\"Dobson\";\"main\"\n\"4464096\";\"Drexel\";\"main\"\n\"4464326\";\"Dunn\";\"main\"\n\"4464368\";\"Durham\";\"main\"\n\"4464368\";\"Darem\";\"other\"\n\"4464368\";\"daramu\";\"other\"\n\"4464368\";\"Дарем\";\"other\"\n\"4464368\";\"ダーラム\";\"other\"\n\"4464564\";\"East Flat Rock\";\"main\"\n\"4464672\";\"East Rockingham\";\"main\"\n\"4464684\";\"East Spencer\";\"main\"\n\"4464750\";\"Eastover\";\"main\"\n\"4464873\";\"Eden\";\"main\"\n\"4464897\";\"Edenton\";\"main\"\n\"4465088\";\"Elizabeth City\";\"main\"\n\"4465106\";\"Elizabethtown\";\"main\"\n\"4465106\";\"Ehlizabettaun\";\"other\"\n\"4465106\";\"Элизабеттаун\";\"other\"\n\"4465155\";\"Elkin\";\"main\"\n\"4465251\";\"Elm City\";\"main\"\n\"4465285\";\"Elon\";\"main\"\n\"4465291\";\"Elroy\";\"main\"\n\"4465303\";\"Emerald Isle\";\"main\"\n\"4465364\";\"Enfield\";\"main\"\n\"4465442\";\"Enochville\";\"main\"\n\"4465463\";\"Erwin\";\"main\"\n\"4465507\";\"Etowah\";\"main\"\n\"4465637\";\"Fair Bluff\";\"main\"\n\"4465671\";\"Fairfield Harbour\";\"main\"\n\"4465691\";\"Fairmont\";\"main\"\n\"4465700\";\"Fairplains\";\"main\"\n\"4465705\";\"Fairview\";\"main\"\n\"4465983\";\"Farmville\";\"main\"\n\"4465984\";\"Farmville\";\"main\"\n\"4466033\";\"Fayetteville\";\"main\"\n\"4466444\";\"Flat Rock\";\"main\"\n\"4466446\";\"Flat Rock\";\"main\"\n\"4466547\";\"Fletcher\";\"main\"\n\"4466720\";\"Forest City\";\"main\"\n\"4466782\";\"Forest Oaks\";\"main\"\n\"4466988\";\"Four Oaks\";\"main\"\n\"4467128\";\"Franklin\";\"main\"\n\"4467128\";\"Франклин\";\"other\"\n\"4467129\";\"Franklin\";\"main\"\n\"4467161\";\"Franklinton\";\"main\"\n\"4467167\";\"Franklinville\";\"main\"\n\"4467254\";\"Fremont\";\"main\"\n\"4467254\";\"Frimont\";\"other\"\n\"4467254\";\"Фримонт\";\"other\"\n\"4467485\";\"Fuquay-Varina\";\"main\"\n\"4467580\";\"Gamewell\";\"main\"\n\"4467657\";\"Garner\";\"main\"\n\"4467657\";\"Гарнер\";\"other\"\n\"4467701\";\"Garysburg\";\"main\"\n\"4467732\";\"Gastonia\";\"main\"\n\"4467926\";\"Gibsonville\";\"main\"\n\"4468056\";\"Glen Alpine\";\"main\"\n\"4468076\";\"Glen Raven\";\"main\"\n\"4468261\";\"Goldsboro\";\"main\"\n\"4468525\";\"Graham\";\"main\"\n\"4468590\";\"Granite Falls\";\"main\"\n\"4468595\";\"Granite Quarry\";\"main\"\n\"4468989\";\"Green Level\";\"main\"\n\"4468990\";\"Green Level\";\"main\"\n\"4469146\";\"Greensboro\";\"main\"\n\"4469146\";\"Grinsboro\";\"other\"\n\"4469146\";\"Гринсборо\";\"other\"\n\"4469160\";\"Greenville\";\"main\"\n\"4469160\";\"Grinvill\";\"other\"\n\"4469160\";\"Гринвилл\";\"other\"\n\"4469281\";\"Grifton\";\"main\"\n\"4469607\";\"Half Moon\";\"main\"\n\"4469730\";\"Hamlet\";\"main\"\n\"4469955\";\"Harkers Island\";\"main\"\n\"4470109\";\"Harrisburg\";\"main\"\n\"4470109\";\"Garrisberg\";\"other\"\n\"4470109\";\"Гаррисберг\";\"other\"\n\"4470244\";\"Havelock\";\"main\"\n\"4470274\";\"Haw River\";\"main\"\n\"4470384\";\"Hays\";\"main\"\n\"4470416\";\"Hazelwood\";\"main\"\n\"4470545\";\"Hemby Bridge\";\"main\"\n\"4470566\";\"Henderson\";\"main\"\n\"4470566\";\"Khenderson\";\"other\"\n\"4470566\";\"Хендерсон\";\"other\"\n\"4470592\";\"Hendersonville\";\"main\"\n\"4470727\";\"Hertford\";\"main\"\n\"4470778\";\"Hickory\";\"main\"\n\"4471025\";\"High Point\";\"main\"\n\"4471149\";\"Hildebran\";\"main\"\n\"4471241\";\"Hillsborough\";\"main\"\n\"4471641\";\"Holly Springs\";\"main\"\n\"4471851\";\"Hope Mills\";\"main\"\n\"4472247\";\"Hudson\";\"main\"\n\"4472247\";\"Gudzon\";\"other\"\n\"4472247\";\"Гудзон\";\"other\"\n\"4472370\";\"Huntersville\";\"main\"\n\"4472557\";\"Icard\";\"main\"\n\"4472687\";\"Indian Trail\";\"main\"\n\"4473083\";\"Jacksonville\";\"main\"\n\"4473083\";\"Dzheksonvill\";\"other\"\n\"4473083\";\"Джексонвилл\";\"other\"\n\"4473137\";\"James City\";\"main\"\n\"4473158\";\"Jamestown\";\"main\"\n\"4473226\";\"Jefferson\";\"main\"\n\"4473226\";\"Dzhefferson\";\"other\"\n\"4473226\";\"Джефферсон\";\"other\"\n\"4473796\";\"Jonesville\";\"main\"\n\"4474040\";\"Kannapolis\";\"main\"\n\"4474159\";\"Kenly\";\"main\"\n\"4474221\";\"Kernersville\";\"main\"\n\"4474274\";\"Kill Devil Hills\";\"main\"\n\"4474382\";\"Kings Grant\";\"main\"\n\"4474388\";\"Kings Mountain\";\"main\"\n\"4474436\";\"Kinston\";\"main\"\n\"4474505\";\"Kitty Hawk\";\"main\"\n\"4474527\";\"Knightdale\";\"main\"\n\"4474609\";\"Kure Beach\";\"main\"\n\"4474627\";\"La Grange\";\"main\"\n\"4474773\";\"Lake Junaluska\";\"main\"\n\"4474841\";\"Lake Norman of Catawba\";\"main\"\n\"4474845\";\"Lake Park\";\"main\"\n\"4474919\";\"Lake Waccamaw\";\"main\"\n\"4475057\";\"Landis\";\"main\"\n\"4475309\";\"Laurel Park\";\"main\"\n\"4475347\";\"Laurinburg\";\"main\"\n\"4475622\";\"Leland\";\"main\"\n\"4475640\";\"Lenoir\";\"main\"\n\"4475767\";\"Lewisville\";\"main\"\n\"4475773\";\"Lexington\";\"main\"\n\"4475773\";\"Leksington\";\"other\"\n\"4475773\";\"Лексингтон\";\"other\"\n\"4475785\";\"Liberty\";\"main\"\n\"4475942\";\"Lillington\";\"main\"\n\"4475995\";\"Lincolnton\";\"main\"\n\"4476786\";\"Locust\";\"main\"\n\"4476919\";\"Long Beach\";\"main\"\n\"4476919\";\"Long-Bich\";\"other\"\n\"4476919\";\"Лонг-Бич\";\"other\"\n\"4477228\";\"Longview\";\"main\"\n\"4477296\";\"Louisburg\";\"main\"\n\"4477400\";\"Lowell\";\"main\"\n\"4477400\";\"Louel\";\"other\"\n\"4477400\";\"Лоуел\";\"other\"\n\"4477481\";\"Lowesville\";\"main\"\n\"4477525\";\"Lumberton\";\"main\"\n\"4477732\";\"Madison\";\"main\"\n\"4477732\";\"Мадисон\";\"other\"\n\"4477779\";\"Maiden\";\"main\"\n\"4477893\";\"Manteo\";\"main\"\n\"4477971\";\"Mar-Mac\";\"main\"\n\"4478003\";\"Marion\";\"main\"\n\"4478003\";\"Mehrion\";\"other\"\n\"4478003\";\"Мэрион\";\"other\"\n\"4478056\";\"Mars Hill\";\"main\"\n\"4478116\";\"Marshville\";\"main\"\n\"4478192\";\"Marvin\";\"main\"\n\"4478253\";\"Masonboro\";\"main\"\n\"4478334\";\"Matthews\";\"main\"\n\"4478372\";\"Maxton\";\"main\"\n\"4478408\";\"Mayodan\";\"main\"\n\"4478715\";\"McLeansville\";\"main\"\n\"4478877\";\"Mebane\";\"main\"\n\"4479207\";\"Midland\";\"main\"\n\"4479602\";\"Millers Creek\";\"main\"\n\"4479702\";\"Mineral Springs\";\"main\"\n\"4479759\";\"Mint Hill\";\"main\"\n\"4479891\";\"Mocksville\";\"main\"\n\"4479946\";\"Monroe\";\"main\"\n\"4479946\";\"Monro\";\"other\"\n\"4479946\";\"Монро\";\"other\"\n\"4480125\";\"Mooresville\";\"main\"\n\"4480150\";\"Moravian Falls\";\"main\"\n\"4480153\";\"Morehead City\";\"main\"\n\"4480219\";\"Morganton\";\"main\"\n\"4480285\";\"Morrisville\";\"main\"\n\"4480378\";\"Mount Airy\";\"main\"\n\"4480497\";\"Mount Gilead\";\"main\"\n\"4480560\";\"Mount Holly\";\"main\"\n\"4480638\";\"Mount Olive\";\"main\"\n\"4480727\";\"Mount Pleasant\";\"main\"\n\"4480727\";\"Mt Pleasant\";\"other\"\n\"4481046\";\"Mountain Home\";\"main\"\n\"4481090\";\"Mountain View\";\"main\"\n\"4481090\";\"Mauntin-V'ju\";\"other\"\n\"4481090\";\"Маунтин-Вью\";\"other\"\n\"4481212\";\"Mulberry\";\"main\"\n\"4481298\";\"Murfreesboro\";\"main\"\n\"4481298\";\"Merfrisboro\";\"other\"\n\"4481298\";\"Мерфрисборо\";\"other\"\n\"4481308\";\"Murphy\";\"main\"\n\"4481345\";\"Murraysville\";\"main\"\n\"4481385\";\"Myrtle Grove\";\"main\"\n\"4481427\";\"Nags Head\";\"main\"\n\"4481519\";\"Nashville\";\"main\"\n\"4481519\";\"Nashvill\";\"other\"\n\"4481519\";\"Нашвилл\";\"other\"\n\"4481551\";\"Navassa\";\"main\"\n\"4481662\";\"Neuse Forest\";\"main\"\n\"4481682\";\"New Bern\";\"main\"\n\"4481682\";\"N'ju-Bern\";\"other\"\n\"4481682\";\"Нью-Берн\";\"other\"\n\"4482084\";\"Newport\";\"main\"\n\"4482084\";\"N'juport\";\"other\"\n\"4482084\";\"Ньюпорт\";\"other\"\n\"4482101\";\"Newton\";\"main\"\n\"4482101\";\"N'juton\";\"other\"\n\"4482101\";\"Ньютон\";\"other\"\n\"4482264\";\"Norlina\";\"main\"\n\"4482577\";\"North Wilkesboro\";\"main\"\n\"4482621\";\"Northlakes\";\"main\"\n\"4482693\";\"Norwood\";\"main\"\n\"4482916\";\"Oak Island\";\"main\"\n\"4482941\";\"Oak Ridge\";\"main\"\n\"4482973\";\"Oakboro\";\"main\"\n\"4483174\";\"Ogden\";\"main\"\n\"4483174\";\"Огден\";\"other\"\n\"4483745\";\"Oxford\";\"main\"\n\"4483745\";\"Oksford\";\"other\"\n\"4483745\";\"Оксфорд\";\"other\"\n\"4484490\";\"Pembroke\";\"main\"\n\"4485005\";\"Pilot Mountain\";\"main\"\n\"4485145\";\"Pine Knoll Shores\";\"main\"\n\"4485161\";\"Pine Level\";\"main\"\n\"4485259\";\"Pinebluff\";\"main\"\n\"4485272\";\"Pinehurst\";\"main\"\n\"4485294\";\"Pinetops\";\"main\"\n\"4485305\";\"Pineville\";\"main\"\n\"4485355\";\"Piney Green\";\"main\"\n\"4485655\";\"Pittsboro\";\"main\"\n\"4485665\";\"Plain View\";\"main\"\n\"4485716\";\"Pleasant Garden\";\"main\"\n\"4485800\";\"Pleasant Hill\";\"main\"\n\"4485807\";\"Pleasant Hill\";\"main\"\n\"4485973\";\"Plymouth\";\"main\"\n\"4485973\";\"Plimut\";\"other\"\n\"4485973\";\"Плимут\";\"other\"\n\"4486078\";\"Polkton\";\"main\"\n\"4486537\";\"Princeton\";\"main\"\n\"4486537\";\"Prinston\";\"other\"\n\"4486537\";\"Принстон\";\"other\"\n\"4486540\";\"Princeville\";\"main\"\n\"4486727\";\"Pumpkin Center\";\"main\"\n\"4486728\";\"Pumpkin Center\";\"main\"\n\"4486983\";\"Raeford\";\"main\"\n\"4487042\";\"Raleigh\";\"main\"\n\"4487042\";\"Roli\";\"other\"\n\"4487042\";\"ra li\";\"other\"\n\"4487042\";\"rori\";\"other\"\n\"4487042\";\"Роли\";\"other\"\n\"4487042\";\"ראלי\";\"other\"\n\"4487042\";\"ราลี\";\"other\"\n\"4487042\";\"ローリー\";\"other\"\n\"4487078\";\"Ramseur\";\"main\"\n\"4487116\";\"Randleman\";\"main\"\n\"4487158\";\"Ranlo\";\"main\"\n\"4487401\";\"Red Oak\";\"main\"\n\"4487421\";\"Red Springs\";\"main\"\n\"4487682\";\"Reidsville\";\"main\"\n\"4487761\";\"Rhodhiss\";\"main\"\n\"4487877\";\"Rich Square\";\"main\"\n\"4488102\";\"River Bend\";\"main\"\n\"4488122\";\"River Road\";\"main\"\n\"4488232\";\"Roanoke Rapids\";\"main\"\n\"4488289\";\"Robbins\";\"main\"\n\"4488314\";\"Robersonville\";\"main\"\n\"4488532\";\"Rockfish\";\"main\"\n\"4488587\";\"Rockingham\";\"main\"\n\"4488600\";\"Rockwell\";\"main\"\n\"4488762\";\"Rocky Mount\";\"main\"\n\"4488954\";\"Rose Hill\";\"main\"\n\"4488978\";\"Roseboro\";\"main\"\n\"4489185\";\"Rowland\";\"main\"\n\"4489200\";\"Roxboro\";\"main\"\n\"4489236\";\"Royal Pines\";\"main\"\n\"4489303\";\"Rural Hall\";\"main\"\n\"4489354\";\"Rutherford College\";\"main\"\n\"4489365\";\"Rutherfordton\";\"main\"\n\"4489790\";\"Saint Pauls\";\"main\"\n\"4489915\";\"Salem\";\"main\"\n\"4489915\";\"Sejlem\";\"other\"\n\"4489915\";\"Сейлем\";\"other\"\n\"4489985\";\"Salisbury\";\"main\"\n\"4490329\";\"Sanford\";\"main\"\n\"4490510\";\"Sawmills\";\"main\"\n\"4490533\";\"Saxapahaw\";\"main\"\n\"4490606\";\"Scotland Neck\";\"main\"\n\"4490671\";\"Sea Breeze\";\"main\"\n\"4490689\";\"Seagate\";\"main\"\n\"4490778\";\"Selma\";\"main\"\n\"4490778\";\"Sel'ma\";\"other\"\n\"4490778\";\"Сельма\";\"other\"\n\"4490858\";\"Seven Lakes\";\"main\"\n\"4490976\";\"Shallotte\";\"main\"\n\"4491086\";\"Sharpsburg\";\"main\"\n\"4491180\";\"Shelby\";\"main\"\n\"4491300\";\"Sherrills Ford\";\"main\"\n\"4491651\";\"Siler City\";\"main\"\n\"4491692\";\"Silver City\";\"main\"\n\"4491715\";\"Silver Lake\";\"main\"\n\"4491896\";\"Skippers Corner\";\"main\"\n\"4492168\";\"Smithfield\";\"main\"\n\"4492300\";\"Sneads Ferry\";\"main\"\n\"4492329\";\"Snow Hill\";\"main\"\n\"4492573\";\"South Gastonia\";\"main\"\n\"4492581\";\"South Henderson\";\"main\"\n\"4492661\";\"South Rosemary\";\"main\"\n\"4492687\";\"South Weldon\";\"main\"\n\"4492722\";\"Southern Pines\";\"main\"\n\"4492732\";\"Southern Shores\";\"main\"\n\"4492756\";\"Southport\";\"main\"\n\"4492829\";\"Sparta\";\"main\"\n\"4492871\";\"Spencer\";\"main\"\n\"4492909\";\"Spindale\";\"main\"\n\"4493028\";\"Spring Hope\";\"main\"\n\"4493035\";\"Spring Lake\";\"main\"\n\"4493110\";\"Spruce Pine\";\"main\"\n\"4493146\";\"Saint Stephens\";\"main\"\n\"4493186\";\"Stallings\";\"main\"\n\"4493215\";\"Stanfield\";\"main\"\n\"4493226\";\"Stanley\";\"main\"\n\"4493316\";\"Statesville\";\"main\"\n\"4493547\";\"Stokesdale\";\"main\"\n\"4493685\";\"Stony Point\";\"main\"\n\"4493990\";\"Summerfield\";\"main\"\n\"4493991\";\"Summerfield\";\"main\"\n\"4494082\";\"Sunset Beach\";\"main\"\n\"4494127\";\"Surf City\";\"main\"\n\"4494217\";\"Swannanoa\";\"main\"\n\"4494238\";\"Swansboro\";\"main\"\n\"4494335\";\"Sylva\";\"main\"\n\"4494408\";\"Tabor City\";\"main\"\n\"4494513\";\"Tarboro\";\"main\"\n\"4494650\";\"Taylorsville\";\"main\"\n\"4494942\";\"Thomasville\";\"main\"\n\"4495078\";\"Thurmond\";\"main\"\n\"4495078\";\"Termond\";\"other\"\n\"4495078\";\"Термонд\";\"other\"\n\"4495169\";\"Toast\";\"main\"\n\"4495175\";\"Tobaccoville\";\"main\"\n\"4495583\";\"Trent Woods\";\"main\"\n\"4495616\";\"Trinity\";\"main\"\n\"4495710\";\"Troutman\";\"main\"\n\"4495714\";\"Troy\";\"main\"\n\"4495714\";\"Troja\";\"other\"\n\"4495714\";\"Троя\";\"other\"\n\"4495749\";\"Tryon\";\"main\"\n\"4495762\";\"Tryon\";\"main\"\n\"4496304\";\"Unionville\";\"main\"\n\"4496484\";\"Valdese\";\"main\"\n\"4496508\";\"Valley Hill\";\"main\"\n\"4496582\";\"Vander\";\"main\"\n\"4497244\";\"Wadesboro\";\"main\"\n\"4497290\";\"Wake Forest\";\"main\"\n\"4497373\";\"Walkertown\";\"main\"\n\"4497374\";\"Walkertown\";\"main\"\n\"4497385\";\"Wallace\";\"main\"\n\"4497437\";\"Walnut Cove\";\"main\"\n\"4497520\";\"Wanchese\";\"main\"\n\"4497643\";\"Warsaw\";\"main\"\n\"4497666\";\"Washington\";\"main\"\n\"4497666\";\"Vashington\";\"other\"\n\"4497666\";\"Вашингтон\";\"other\"\n\"4497833\";\"Waxhaw\";\"main\"\n\"4497868\";\"Waynesville\";\"main\"\n\"4497912\";\"Weaverville\";\"main\"\n\"4497956\";\"Weddington\";\"main\"\n\"4498003\";\"Welcome\";\"main\"\n\"4498017\";\"Weldon\";\"main\"\n\"4498056\";\"Wentworth\";\"main\"\n\"4498075\";\"Wesley Chapel\";\"main\"\n\"4498084\";\"Wendell\";\"main\"\n\"4498173\";\"West Canton\";\"main\"\n\"4498231\";\"West Jefferson\";\"main\"\n\"4498252\";\"West Marion\";\"main\"\n\"4498303\";\"West Raleigh\";\"main\"\n\"4498428\";\"Westport\";\"main\"\n\"4498560\";\"Whispering Pines\";\"main\"\n\"4498720\";\"White Plains\";\"main\"\n\"4498722\";\"White Plains\";\"main\"\n\"4498899\";\"Whiteville\";\"main\"\n\"4499138\";\"Wilkesboro\";\"main\"\n\"4499294\";\"Williamston\";\"main\"\n\"4499379\";\"Wilmington\";\"main\"\n\"4499379\";\"Uilmington\";\"other\"\n\"4499379\";\"u~iruminton\";\"other\"\n\"4499379\";\"Уилмингтон\";\"other\"\n\"4499379\";\"ウィルミントン\";\"other\"\n\"4499389\";\"Wilson\";\"main\"\n\"4499389\";\"Uilson\";\"other\"\n\"4499389\";\"Уилсон\";\"other\"\n\"4499483\";\"Wilsons Mills\";\"main\"\n\"4499528\";\"Windsor\";\"main\"\n\"4499528\";\"Vindzor\";\"other\"\n\"4499528\";\"Виндзор\";\"other\"\n\"4499529\";\"Windsor\";\"main\"\n\"4499573\";\"Wingate\";\"main\"\n\"4499612\";\"Winston-Salem\";\"main\"\n\"4499612\";\"Vinston-Salem\";\"other\"\n\"4499612\";\"Winston Salem\";\"other\"\n\"4499612\";\"Винстон-Салем\";\"other\"\n\"4499612\";\"ウィンストン・セーラム\";\"other\"\n\"4499629\";\"Winterville\";\"main\"\n\"4499850\";\"Woodfin\";\"main\"\n\"4499890\";\"Woodlawn\";\"main\"\n\"4500088\";\"Wrightsboro\";\"main\"\n\"4500092\";\"Wrightsville Beach\";\"main\"\n\"4500154\";\"Yadkinville\";\"main\"\n\"4500166\";\"Yanceyville\";\"main\"\n\"4500324\";\"Zebulon\";\"main\"\n\"4500458\";\"Absecon\";\"main\"\n\"4500491\";\"Alloway\";\"main\"\n\"4500538\";\"Ashland\";\"main\"\n\"4500546\";\"Atlantic City\";\"main\"\n\"4500546\";\"Atlantik Siti\";\"other\"\n\"4500546\";\"Atlantik-Siti\";\"other\"\n\"4500546\";\"atorantikkushiti\";\"other\"\n\"4500546\";\"Атлантик Сити\";\"other\"\n\"4500546\";\"Атлантик-Сити\";\"other\"\n\"4500546\";\"אטלאנטיק סיטי\";\"other\"\n\"4500546\";\"アトランティックシティ\";\"other\"\n\"4500572\";\"Audubon\";\"main\"\n\"4500574\";\"Audubon Park\";\"main\"\n\"4500579\";\"Avalon\";\"main\"\n\"4500630\";\"Barnegat\";\"main\"\n\"4500653\";\"Barrington\";\"main\"\n\"4500696\";\"Beach Haven\";\"main\"\n\"4500704\";\"Beach Haven West\";\"main\"\n\"4500709\";\"Beachwood\";\"main\"\n\"4500739\";\"Beckett\";\"main\"\n\"4500750\";\"Bellmawr\";\"main\"\n\"4500771\";\"Berlin\";\"main\"\n\"4500845\";\"Blackwood\";\"main\"\n\"4500920\";\"Brigantine\";\"main\"\n\"4500942\";\"Bridgeton\";\"main\"\n\"4500950\";\"Brooklawn\";\"main\"\n\"4500959\";\"Browns Mills\";\"main\"\n\"4500977\";\"Buena\";\"main\"\n\"4501018\";\"Camden\";\"main\"\n\"4501018\";\"kamuden\";\"other\"\n\"4501018\";\"カムデン\";\"other\"\n\"4501057\";\"Cape May Court House\";\"main\"\n\"4501066\";\"Cape May\";\"main\"\n\"4501073\";\"Carneys Point\";\"main\"\n\"4501111\";\"Cedar Glen Lakes\";\"main\"\n\"4501198\";\"Cherry Hill\";\"main\"\n\"4501204\";\"Cherry Hill Mall\";\"main\"\n\"4501210\";\"Chesilhurst\";\"main\"\n\"4501234\";\"Cinnaminson\";\"main\"\n\"4501265\";\"Clayton\";\"main\"\n\"4501269\";\"Clementon\";\"main\"\n\"4501305\";\"Collings Lakes\";\"main\"\n\"4501306\";\"Collingswood\";\"main\"\n\"4501360\";\"Country Lake Estates\";\"main\"\n\"4501393\";\"Crestwood Village\";\"main\"\n\"4501550\";\"Dover Beaches North\";\"main\"\n\"4501551\";\"Dover Beaches South\";\"main\"\n\"4501632\";\"Echelon\";\"main\"\n\"4501646\";\"Egg Harbor City\";\"main\"\n\"4501678\";\"Elmer\";\"main\"\n\"4501706\";\"Erma\";\"main\"\n\"4501708\";\"Estell Manor\";\"main\"\n\"4501732\";\"Fairton\";\"main\"\n\"4501808\";\"Folsom\";\"main\"\n\"4501818\";\"Forked River\";\"main\"\n\"4501919\";\"Gibbsboro\";\"main\"\n\"4501921\";\"Gibbstown\";\"main\"\n\"4501931\";\"Glassboro\";\"main\"\n\"4501940\";\"Glendora\";\"main\"\n\"4501943\";\"Gloucester City\";\"main\"\n\"4501956\";\"Golden Triangle\";\"main\"\n\"4502049\";\"Greentree\";\"main\"\n\"4502093\";\"Haddon Heights\";\"main\"\n\"4502103\";\"Haddonfield\";\"main\"\n\"4502129\";\"Hammonton\";\"main\"\n\"4502224\";\"Hi-Nella\";\"main\"\n\"4502271\";\"Holiday Heights\";\"main\"\n\"4502420\";\"Island Heights\";\"main\"\n\"4502621\";\"Laurel Lake\";\"main\"\n\"4502635\";\"Lavallette\";\"main\"\n\"4502641\";\"Lawnside\";\"main\"\n\"4502649\";\"Laurel Springs\";\"main\"\n\"4502667\";\"Leisuretowne\";\"main\"\n\"4502687\";\"Lindenwold\";\"main\"\n\"4502690\";\"Linwood\";\"main\"\n\"4502777\";\"Longport\";\"main\"\n\"4502832\";\"Magnolia\";\"main\"\n\"4502833\";\"Magnolia\";\"main\"\n\"4502866\";\"Manahawkin\";\"main\"\n\"4502901\";\"Maple Shade\";\"main\"\n\"4502904\";\"Margate City\";\"main\"\n\"4502911\";\"Marlton\";\"main\"\n\"4502962\";\"Mays Landing\";\"main\"\n\"4502986\";\"Medford Lakes\";\"main\"\n\"4503078\";\"Millville\";\"main\"\n\"4503132\";\"Mount Ephraim\";\"main\"\n\"4503134\";\"Mount Holly\";\"main\"\n\"4503195\";\"Mullica Hill\";\"main\"\n\"4503204\";\"Mystic Island\";\"main\"\n\"4503217\";\"National Park\";\"main\"\n\"4503264\";\"Newfield\";\"main\"\n\"4503289\";\"North Beach Haven\";\"main\"\n\"4503299\";\"North Cape May\";\"main\"\n\"4503313\";\"North Wildwood\";\"main\"\n\"4503316\";\"Northfield\";\"main\"\n\"4503339\";\"Oaklyn\";\"main\"\n\"4503346\";\"Ocean Acres\";\"main\"\n\"4503351\";\"Ocean City\";\"main\"\n\"4503360\";\"Ocean Gate\";\"main\"\n\"4503401\";\"Olivet\";\"main\"\n\"4503516\";\"Paulsboro\";\"main\"\n\"4503532\";\"Pemberton\";\"main\"\n\"4503534\";\"Pemberton Heights\";\"main\"\n\"4503544\";\"Penns Grove\";\"main\"\n\"4503548\";\"Pennsauken\";\"main\"\n\"4503555\";\"Pennsville\";\"main\"\n\"4503596\";\"Pine Beach\";\"main\"\n\"4503606\";\"Pine Hill\";\"main\"\n\"4503617\";\"Pine Ridge at Crestwood\";\"main\"\n\"4503635\";\"Pitman\";\"main\"\n\"4503646\";\"Pleasantville\";\"main\"\n\"4503665\";\"Pomona\";\"main\"\n\"4503665\";\"Помона\";\"other\"\n\"4503681\";\"Port Norris\";\"main\"\n\"4503682\";\"Port Republic\";\"main\"\n\"4503698\";\"Presidential Lakes Estates\";\"main\"\n\"4503736\";\"Ramblewood\";\"main\"\n\"4503788\";\"Rio Grande\";\"main\"\n\"4503816\";\"Rosenhayn\";\"main\"\n\"4503944\";\"Salem\";\"main\"\n\"4503944\";\"Sejlem\";\"other\"\n\"4503944\";\"Сейлем\";\"other\"\n\"4503953\";\"Runnemede\";\"main\"\n\"4504003\";\"Sea Isle City\";\"main\"\n\"4504007\";\"Seabrook Farms\";\"main\"\n\"4504010\";\"Seaside Heights\";\"main\"\n\"4504014\";\"Seaside Park\";\"main\"\n\"4504096\";\"Ship Bottom\";\"main\"\n\"4504131\";\"Silver Ridge\";\"main\"\n\"4504180\";\"Somerdale\";\"main\"\n\"4504186\";\"Somers Point\";\"main\"\n\"4504221\";\"South Toms River\";\"main\"\n\"4504225\";\"South Vineland\";\"main\"\n\"4504250\";\"Springdale\";\"main\"\n\"4504308\";\"Stone Harbor\";\"main\"\n\"4504336\";\"Stratford\";\"main\"\n\"4504336\";\"Стратфорд\";\"other\"\n\"4504375\";\"Surf City\";\"main\"\n\"4504391\";\"Swedesboro\";\"main\"\n\"4504476\";\"Toms River\";\"main\"\n\"4504525\";\"Tuckerton\";\"main\"\n\"4504536\";\"Turnersville\";\"main\"\n\"4504598\";\"Ventnor City\";\"main\"\n\"4504608\";\"Victory Lakes\";\"main\"\n\"4504616\";\"Villas\";\"main\"\n\"4504621\";\"Vineland\";\"main\"\n\"4504713\";\"Waretown\";\"main\"\n\"4504761\";\"Wenonah\";\"main\"\n\"4504783\";\"West Cape May\";\"main\"\n\"4504811\";\"Westville\";\"main\"\n\"4504856\";\"Wildwood\";\"main\"\n\"4504857\";\"Wildwood Crest\";\"main\"\n\"4504871\";\"Williamstown\";\"main\"\n\"4504910\";\"Wood-Lynne\";\"main\"\n\"4504911\";\"Woodbine\";\"main\"\n\"4504915\";\"Woodbury\";\"main\"\n\"4504915\";\"Vudbari\";\"other\"\n\"4504915\";\"Вудбари\";\"other\"\n\"4504919\";\"Woodbury Heights\";\"main\"\n\"4504946\";\"Woodstown\";\"main\"\n\"4504988\";\"Aberdeen\";\"main\"\n\"4504988\";\"Aberdin\";\"other\"\n\"4504988\";\"Абердин\";\"other\"\n\"4505215\";\"Amberley\";\"main\"\n\"4505219\";\"Amelia\";\"main\"\n\"4505390\";\"Arcanum\";\"main\"\n\"4505522\";\"Ashville\";\"main\"\n\"4505542\";\"Athens\";\"main\"\n\"4505542\";\"Afiny\";\"other\"\n\"4505542\";\"Афины\";\"other\"\n\"4505667\";\"Bainbridge\";\"main\"\n\"4505716\";\"Baltimore\";\"main\"\n\"4505716\";\"Baltimor\";\"other\"\n\"4505716\";\"Балтимор\";\"other\"\n\"4505786\";\"Barnesville\";\"main\"\n\"4505868\";\"Batavia\";\"main\"\n\"4505868\";\"Batavija\";\"other\"\n\"4505868\";\"Батавия\";\"other\"\n\"4506008\";\"Beavercreek\";\"main\"\n\"4506008\";\"Beaver Creek\";\"other\"\n\"4506031\";\"Beckett Ridge\";\"main\"\n\"4506166\";\"Bellbrook\";\"main\"\n\"4506187\";\"Belpre\";\"main\"\n\"4506308\";\"Bethel\";\"main\"\n\"4506309\";\"Bethel\";\"main\"\n\"4506474\";\"Beverly\";\"main\"\n\"4506487\";\"Bexley\";\"main\"\n\"4506666\";\"Blacklick Estates\";\"main\"\n\"4506684\";\"Blanchester\";\"main\"\n\"4506754\";\"Blue Ash\";\"main\"\n\"4507188\";\"Brookville\";\"main\"\n\"4507378\";\"Buckeye Lake\";\"main\"\n\"4507497\";\"Burlington\";\"main\"\n\"4507497\";\"Berlington\";\"other\"\n\"4507497\";\"Берлингтон\";\"other\"\n\"4507599\";\"Byesville\";\"main\"\n\"4507661\";\"Caldwell\";\"main\"\n\"4507661\";\"Kolduehll\";\"other\"\n\"4507661\";\"Колдуэлл\";\"other\"\n\"4507755\";\"Camden\";\"main\"\n\"4507883\";\"Canal Winchester\";\"main\"\n\"4507937\";\"Carlisle\";\"main\"\n\"4508132\";\"Cedarville\";\"main\"\n\"4508204\";\"Centerville\";\"main\"\n\"4508373\";\"Chauncey\";\"main\"\n\"4508395\";\"Cherry Grove\";\"main\"\n\"4508465\";\"Cheviot\";\"main\"\n\"4508506\";\"Choctaw Lake\";\"main\"\n\"4508722\";\"Cincinnati\";\"main\"\n\"4508722\";\"Sinsinati\";\"other\"\n\"4508722\";\"shinshinati\";\"other\"\n\"4508722\";\"synsynty\";\"other\"\n\"4508722\";\"xin xin na di\";\"other\"\n\"4508722\";\"Синсинати\";\"other\"\n\"4508722\";\"Цинциннати\";\"other\"\n\"4508722\";\"סינסינטי\";\"other\"\n\"4508722\";\"シンシナティ\";\"other\"\n\"4508722\";\"辛辛那堤\";\"other\"\n\"4508778\";\"Circleville\";\"main\"\n\"4508885\";\"Clayton\";\"main\"\n\"4508944\";\"Cleves\";\"main\"\n\"4509035\";\"Coal Grove\";\"main\"\n\"4509177\";\"Columbus\";\"main\"\n\"4509177\";\"Columbus i Ohio\";\"other\"\n\"4509177\";\"Kolumbus\";\"other\"\n\"4509177\";\"ge lun bu\";\"other\"\n\"4509177\";\"kolleombeoseu\";\"other\"\n\"4509177\";\"koronbasu\";\"other\"\n\"4509177\";\"qwlwmbws\";\"other\"\n\"4509177\";\"Колумбус\";\"other\"\n\"4509177\";\"קולומבוס\";\"other\"\n\"4509177\";\"کولمبس، اوہائیو\";\"other\"\n\"4509177\";\"コロンバス\";\"other\"\n\"4509177\";\"哥伦布\";\"other\"\n\"4509177\";\"콜럼버스\";\"other\"\n\"4509506\";\"Covedale\";\"main\"\n\"4509634\";\"Crooksville\";\"main\"\n\"4509699\";\"Crystal Lakes\";\"main\"\n\"4509882\";\"Day Heights\";\"main\"\n\"4509884\";\"Dayton\";\"main\"\n\"4509884\";\"Dejton\";\"other\"\n\"4509884\";\"dai dun\";\"other\"\n\"4509884\";\"Дейтон\";\"other\"\n\"4509884\";\"Дејтон\";\"other\"\n\"4509884\";\"代顿\";\"other\"\n\"4509986\";\"Deer Park\";\"main\"\n\"4510062\";\"Dent\";\"main\"\n\"4510098\";\"Devola\";\"main\"\n\"4510143\";\"Dillonvale\";\"main\"\n\"4510303\";\"Drexel\";\"main\"\n\"4510342\";\"Dry Run\";\"main\"\n\"4510719\";\"Eaton\";\"main\"\n\"4510996\";\"Elmwood Place\";\"main\"\n\"4511064\";\"Englewood\";\"main\"\n\"4511086\";\"Enon\";\"main\"\n\"4511196\";\"Evendale\";\"main\"\n\"4511263\";\"Fairborn\";\"main\"\n\"4511274\";\"Fairfax\";\"main\"\n\"4511283\";\"Fairfield\";\"main\"\n\"4511283\";\"Feurfild\";\"other\"\n\"4511283\";\"Феърфилд\";\"other\"\n\"4511285\";\"Fairfield Beach\";\"main\"\n\"4511642\";\"Finneytown\";\"main\"\n\"4511939\";\"Five Points\";\"main\"\n\"4512060\";\"Forest Park\";\"main\"\n\"4512083\";\"Forestville\";\"main\"\n\"4512145\";\"Fort McKinley\";\"main\"\n\"4512200\";\"Frankfort\";\"main\"\n\"4512200\";\"Frankfurt\";\"other\"\n\"4512200\";\"Франкфурт\";\"other\"\n\"4512203\";\"Franklin\";\"main\"\n\"4512203\";\"Франклин\";\"other\"\n\"4512229\";\"Franklin Furnace\";\"main\"\n\"4512378\";\"Fruit Hill\";\"main\"\n\"4512449\";\"Gallipolis\";\"main\"\n\"4512557\";\"Geneva\";\"main\"\n\"4512584\";\"Georgetown\";\"main\"\n\"4512620\";\"Germantown\";\"main\"\n\"4512773\";\"Glendale\";\"main\"\n\"4512773\";\"Glendejl\";\"other\"\n\"4512773\";\"Глендейл\";\"other\"\n\"4512821\";\"Glouster\";\"main\"\n\"4512862\";\"Golf Manor\";\"main\"\n\"4513047\";\"Grandview\";\"main\"\n\"4513057\";\"Grandview Heights\";\"main\"\n\"4513216\";\"Green Meadows\";\"main\"\n\"4513294\";\"Greenfield\";\"main\"\n\"4513294\";\"Grinfild\";\"other\"\n\"4513294\";\"Гринфилд\";\"other\"\n\"4513309\";\"Greenhills\";\"main\"\n\"4513394\";\"Groesbeck\";\"main\"\n\"4513409\";\"Grove City\";\"main\"\n\"4513425\";\"Groveport\";\"main\"\n\"4513575\";\"Hamilton\";\"main\"\n\"4513575\";\"Gamil'ton\";\"other\"\n\"4513575\";\"Гамильтон\";\"other\"\n\"4513703\";\"Harbor Hills\";\"main\"\n\"4513805\";\"Harrison\";\"main\"\n\"4513805\";\"Kharrison\";\"other\"\n\"4513805\";\"Харрисон\";\"other\"\n\"4514004\";\"Hebron\";\"main\"\n\"4514282\";\"Hillsboro\";\"main\"\n\"4514282\";\"Khillsboro\";\"other\"\n\"4514282\";\"Хиллсборо\";\"other\"\n\"4514429\";\"Holiday Valley\";\"main\"\n\"4514746\";\"Huber Heights\";\"main\"\n\"4514822\";\"Hunter\";\"main\"\n\"4515247\";\"Ironton\";\"main\"\n\"4515318\";\"Jackson\";\"main\"\n\"4515318\";\"Dzhekson\";\"other\"\n\"4515318\";\"Джексон\";\"other\"\n\"4515427\";\"Jamestown\";\"main\"\n\"4515485\";\"Jeffersonville\";\"main\"\n\"4515813\";\"Kenwood\";\"main\"\n\"4515843\";\"Kettering\";\"main\"\n\"4515843\";\"Кеттеринг\";\"other\"\n\"4516127\";\"Lake Darby\";\"main\"\n\"4516233\";\"Lancaster\";\"main\"\n\"4516233\";\"Lankaster\";\"other\"\n\"4516233\";\"Ланкастер\";\"other\"\n\"4516248\";\"Landen\";\"main\"\n\"4516412\";\"Lebanon\";\"main\"\n\"4516446\";\"Leesburg\";\"main\"\n\"4516523\";\"Lewisburg\";\"main\"\n\"4516677\";\"Lincoln Heights\";\"main\"\n\"4516701\";\"Lincoln Village\";\"main\"\n\"4516749\";\"Lisbon\";\"main\"\n\"4516931\";\"Lockland\";\"main\"\n\"4516989\";\"Logan\";\"main\"\n\"4517009\";\"London\";\"main\"\n\"4517140\";\"Loveland\";\"main\"\n\"4517142\";\"Loveland Park\";\"main\"\n\"4517204\";\"Lucasville\";\"main\"\n\"4517264\";\"Lynchburg\";\"main\"\n\"4517353\";\"Madeira\";\"main\"\n\"4517441\";\"Maineville\";\"main\"\n\"4517471\";\"Manchester\";\"main\"\n\"4517471\";\"Манчестер\";\"other\"\n\"4517580\";\"Mariemont\";\"main\"\n\"4517586\";\"Marietta\";\"main\"\n\"4517586\";\"Мариетта\";\"other\"\n\"4517698\";\"Mason\";\"main\"\n\"4517698\";\"Mejson\";\"other\"\n\"4517698\";\"Мейсон\";\"other\"\n\"4517759\";\"Mayfield\";\"main\"\n\"4517774\";\"McArthur\";\"main\"\n\"4517816\";\"McConnelsville\";\"main\"\n\"4518188\";\"Miamisburg\";\"main\"\n\"4518257\";\"Middleport\";\"main\"\n\"4518264\";\"Middletown\";\"main\"\n\"4518307\";\"Milford\";\"main\"\n\"4518307\";\"Милфорд\";\"other\"\n\"4518550\";\"Monroe\";\"main\"\n\"4518550\";\"Monro\";\"other\"\n\"4518550\";\"Монро\";\"other\"\n\"4518597\";\"Montgomery\";\"main\"\n\"4518597\";\"Montgomeri\";\"other\"\n\"4518597\";\"Монтгомери\";\"other\"\n\"4518661\";\"Moraine\";\"main\"\n\"4518737\";\"Morrow\";\"main\"\n\"4518834\";\"Mount Carmel\";\"main\"\n\"4518834\";\"Karmel'\";\"other\"\n\"4518834\";\"Кармель\";\"other\"\n\"4518890\";\"Mount Healthy\";\"main\"\n\"4518892\";\"Mount Healthy Heights\";\"main\"\n\"4519005\";\"Mount Orab\";\"main\"\n\"4519047\";\"Mount Repose\";\"main\"\n\"4519065\";\"Mount Sterling\";\"main\"\n\"4519246\";\"Mulberry\";\"main\"\n\"4519445\";\"Nelsonville\";\"main\"\n\"4519478\";\"New Boston\";\"main\"\n\"4519497\";\"New Carlisle\";\"main\"\n\"4519510\";\"New Concord\";\"main\"\n\"4519583\";\"New Lebanon\";\"main\"\n\"4519591\";\"New Lexington\";\"main\"\n\"4519625\";\"New Matamoras\";\"main\"\n\"4519627\";\"New Miami\";\"main\"\n\"4519642\";\"New Paris\";\"main\"\n\"4519657\";\"New Richmond\";\"main\"\n\"4519701\";\"New Vienna\";\"main\"\n\"4519761\";\"Newtown\";\"main\"\n\"4519853\";\"North College Hill\";\"main\"\n\"4519883\";\"North Fork Village\";\"main\"\n\"4519923\";\"North Zanesville\";\"main\"\n\"4519924\";\"Northbrook\";\"main\"\n\"4519938\";\"Northgate\";\"main\"\n\"4519950\";\"Northridge\";\"main\"\n\"4519951\";\"Northridge\";\"main\"\n\"4519995\";\"Norwood\";\"main\"\n\"4520081\";\"Oak Hill\";\"main\"\n\"4520163\";\"Oakwood\";\"main\"\n\"4520177\";\"Obetz\";\"main\"\n\"4520760\";\"Oxford\";\"main\"\n\"4520760\";\"Oksford\";\"other\"\n\"4520760\";\"Оксфорд\";\"other\"\n\"4520864\";\"Park Layne\";\"main\"\n\"4520905\";\"Pataskala\";\"main\"\n\"4521011\";\"Peebles\";\"main\"\n\"4521209\";\"Pickerington\";\"main\"\n\"4521268\";\"Piketon\";\"main\"\n\"4521465\";\"Pleasant Grove\";\"main\"\n\"4521565\";\"Pleasant Run\";\"main\"\n\"4521571\";\"Pleasant Run Farm\";\"main\"\n\"4521708\";\"Pomeroy\";\"main\"\n\"4521816\";\"Portsmouth\";\"main\"\n\"4521816\";\"Portsmut\";\"other\"\n\"4521816\";\"Портсмут\";\"other\"\n\"4521880\";\"Powhatan Point\";\"main\"\n\"4522228\";\"Reading\";\"main\"\n\"4522228\";\"Reding\";\"other\"\n\"4522228\";\"Рединг\";\"other\"\n\"4522411\";\"Reynoldsburg\";\"main\"\n\"4522540\";\"Ripley\";\"main\"\n\"4522586\";\"Riverside\";\"main\"\n\"4522586\";\"Riversajd\";\"other\"\n\"4522586\";\"Риверсайд\";\"other\"\n\"4522873\";\"Rosemount\";\"main\"\n\"4522884\";\"Ross\";\"main\"\n\"4522898\";\"Roseville\";\"main\"\n\"4522898\";\"Rozvell\";\"other\"\n\"4522898\";\"Розвелл\";\"other\"\n\"4523097\";\"Sabina\";\"main\"\n\"4523190\";\"Saint Bernard\";\"main\"\n\"4524299\";\"Seaman\";\"main\"\n\"4524446\";\"Shadyside\";\"main\"\n\"4524499\";\"Sharonville\";\"main\"\n\"4524538\";\"Shawnee Hills\";\"main\"\n\"4524642\";\"Shiloh\";\"main\"\n\"4524753\";\"Silverton\";\"main\"\n\"4524993\";\"Somerset\";\"main\"\n\"4524993\";\"Сомерсет\";\"other\"\n\"4525028\";\"South Bloomfield\";\"main\"\n\"4525041\";\"South Charleston\";\"main\"\n\"4525084\";\"South Lebanon\";\"main\"\n\"4525103\";\"South Point\";\"main\"\n\"4525137\";\"South Zanesville\";\"main\"\n\"4525304\";\"Springboro\";\"main\"\n\"4525310\";\"Springdale\";\"main\"\n\"4525353\";\"Springfield\";\"main\"\n\"4525353\";\"Springfild\";\"other\"\n\"4525353\";\"Спрингфилд\";\"other\"\n\"4525829\";\"Summerside\";\"main\"\n\"4526172\";\"Terrace Park\";\"main\"\n\"4526215\";\"The Plains\";\"main\"\n\"4526225\";\"The Village of Indian Hill\";\"main\"\n\"4526365\";\"Tipp City\";\"main\"\n\"4526469\";\"Trenton\";\"main\"\n\"4526469\";\"Трентон\";\"other\"\n\"4526576\";\"Trotwood\";\"main\"\n\"4526576\";\"Trotvud\";\"other\"\n\"4526576\";\"Тротвуд\";\"other\"\n\"4526790\";\"Union\";\"main\"\n\"4526993\";\"Upper Arlington\";\"main\"\n\"4527124\";\"Vandalia\";\"main\"\n\"4527660\";\"Washington Court House\";\"main\"\n\"4527760\";\"Waverly\";\"main\"\n\"4527805\";\"Waynesville\";\"main\"\n\"4527879\";\"Wellston\";\"main\"\n\"4527941\";\"West Alexandria\";\"main\"\n\"4527963\";\"West Carrollton City\";\"main\"\n\"4528015\";\"West Jefferson\";\"main\"\n\"4528036\";\"West Milton\";\"main\"\n\"4528051\";\"West Portsmouth\";\"main\"\n\"4528071\";\"West Union\";\"main\"\n\"4528187\";\"Wetherington\";\"main\"\n\"4528203\";\"Wheelersburg\";\"main\"\n\"4528259\";\"White Oak\";\"main\"\n\"4528291\";\"Whitehall\";\"main\"\n\"4528348\";\"Wilberforce\";\"main\"\n\"4528414\";\"Williamsburg\";\"main\"\n\"4528434\";\"Williamsport\";\"main\"\n\"4528463\";\"Wilmington\";\"main\"\n\"4528463\";\"Uilmington\";\"other\"\n\"4528463\";\"Уилмингтон\";\"other\"\n\"4528527\";\"Winchester\";\"main\"\n\"4528596\";\"Withamsville\";\"main\"\n\"4528695\";\"Woodlawn\";\"main\"\n\"4528724\";\"Woodsfield\";\"main\"\n\"4528793\";\"Wyoming\";\"main\"\n\"4528793\";\"Vajoming\";\"other\"\n\"4528793\";\"Вайоминг\";\"other\"\n\"4528810\";\"Xenia\";\"main\"\n\"4528810\";\"Ksenija\";\"other\"\n\"4528810\";\"Ксения\";\"other\"\n\"4528866\";\"Yellow Springs\";\"main\"\n\"4528923\";\"Zanesville\";\"main\"\n\"4529096\";\"Ada\";\"main\"\n\"4529143\";\"Afton\";\"main\"\n\"4529292\";\"Altus\";\"main\"\n\"4529308\";\"Alva\";\"main\"\n\"4529353\";\"Anadarko\";\"main\"\n\"4529418\";\"Antlers\";\"main\"\n\"4529424\";\"Apache\";\"main\"\n\"4529469\";\"Ardmore\";\"main\"\n\"4529480\";\"Arkoma\";\"main\"\n\"4529604\";\"Atoka\";\"main\"\n\"4529973\";\"Barnsdall\";\"main\"\n\"4529987\";\"Bartlesville\";\"main\"\n\"4530265\";\"Beggs\";\"main\"\n\"4530372\";\"Bethany\";\"main\"\n\"4530396\";\"Bethel Acres\";\"main\"\n\"4530801\";\"Bixby\";\"main\"\n\"4530866\";\"Blackwell\";\"main\"\n\"4530883\";\"Blanchard\";\"main\"\n\"4531160\";\"Boley\";\"main\"\n\"4531300\";\"Bray\";\"main\"\n\"4531370\";\"Bristow\";\"main\"\n\"4531405\";\"Broken Arrow\";\"main\"\n\"4531414\";\"Broken Bow\";\"main\"\n\"4531627\";\"Buffalo\";\"main\"\n\"4531627\";\"Буффало\";\"other\"\n\"4531760\";\"Burns Flat\";\"main\"\n\"4531785\";\"Bushyhead\";\"main\"\n\"4531846\";\"Byng\";\"main\"\n\"4531875\";\"Cache\";\"main\"\n\"4531980\";\"Calera\";\"main\"\n\"4532357\";\"Carnegie\";\"main\"\n\"4532493\";\"Catoosa\";\"main\"\n\"4532846\";\"Chandler\";\"main\"\n\"4532846\";\"Чандлер\";\"other\"\n\"4532917\";\"Checotah\";\"main\"\n\"4532918\";\"Chelsea\";\"main\"\n\"4532929\";\"Cherokee\";\"main\"\n\"4532995\";\"Cherry Tree\";\"main\"\n\"4533029\";\"Chickasha\";\"main\"\n\"4533130\";\"Choctaw\";\"main\"\n\"4533166\";\"Chouteau\";\"main\"\n\"4533580\";\"Claremore\";\"main\"\n\"4533683\";\"Cleora\";\"main\"\n\"4533688\";\"Cleveland\";\"main\"\n\"4533688\";\"Klivlend\";\"other\"\n\"4533688\";\"Кливленд\";\"other\"\n\"4533738\";\"Clinton\";\"main\"\n\"4533738\";\"Klinton\";\"other\"\n\"4533738\";\"Клинтон\";\"other\"\n\"4533854\";\"Colbert\";\"main\"\n\"4533909\";\"Collinsville\";\"main\"\n\"4533909\";\"Kollinsvil'\";\"other\"\n\"4533909\";\"Коллинсвиль\";\"other\"\n\"4533928\";\"Comanche\";\"main\"\n\"4533952\";\"Commerce\";\"main\"\n\"4534096\";\"Copeland\";\"main\"\n\"4534117\";\"Cordell\";\"main\"\n\"4534386\";\"Coweta\";\"main\"\n\"4534452\";\"Crescent\";\"main\"\n\"4534659\";\"Cushing\";\"main\"\n\"4534687\";\"Cyril\";\"main\"\n\"4534774\";\"Davis\";\"main\"\n\"4534774\";\"Dejvis\";\"other\"\n\"4534774\";\"Дейвис\";\"other\"\n\"4534934\";\"Del City\";\"main\"\n\"4535051\";\"Dewey\";\"main\"\n\"4535089\";\"Dickson\";\"main\"\n\"4535287\";\"Drumright\";\"main\"\n\"4535389\";\"Duncan\";\"main\"\n\"4535389\";\"Dunkan\";\"other\"\n\"4535389\";\"Дункан\";\"other\"\n\"4535414\";\"Durant\";\"main\"\n\"4535740\";\"Edmond\";\"main\"\n\"4535740\";\"Ehdmon\";\"other\"\n\"4535740\";\"Эдмон\";\"other\"\n\"4535783\";\"El Reno\";\"main\"\n\"4535798\";\"Eldon\";\"main\"\n\"4535806\";\"Elgin\";\"main\"\n\"4535823\";\"Elk City\";\"main\"\n\"4535961\";\"Enid\";\"main\"\n\"4535961\";\"Ehnid\";\"other\"\n\"4535961\";\"Энид\";\"other\"\n\"4536031\";\"Eufaula\";\"main\"\n\"4536099\";\"Fairfax\";\"main\"\n\"4536109\";\"Fairland\";\"main\"\n\"4536124\";\"Fairview\";\"main\"\n\"4536996\";\"Fletcher\";\"main\"\n\"4537079\";\"Forest Park\";\"main\"\n\"4537123\";\"Fort Gibson\";\"main\"\n\"4537289\";\"Frederick\";\"main\"\n\"4537289\";\"Frederik\";\"other\"\n\"4537289\";\"Фредерик\";\"other\"\n\"4537530\";\"Geary\";\"main\"\n\"4537641\";\"Glenpool\";\"main\"\n\"4537728\";\"Goldsby\";\"main\"\n\"4537884\";\"Grandfield\";\"main\"\n\"4537904\";\"Granite\";\"main\"\n\"4538126\";\"Grove\";\"main\"\n\"4538142\";\"Guthrie\";\"main\"\n\"4538234\";\"Hall Park\";\"main\"\n\"4538346\";\"Harrah\";\"main\"\n\"4538400\";\"Hartshorne\";\"main\"\n\"4538428\";\"Haskell\";\"main\"\n\"4538506\";\"Healdton\";\"main\"\n\"4538519\";\"Heavener\";\"main\"\n\"4538544\";\"Helena\";\"main\"\n\"4538544\";\"Khelena\";\"other\"\n\"4538544\";\"Хелена\";\"other\"\n\"4538562\";\"Hennessey\";\"main\"\n\"4538577\";\"Henryetta\";\"main\"\n\"4538801\";\"Hinton\";\"main\"\n\"4538821\";\"Hobart\";\"main\"\n\"4538821\";\"Khobart\";\"other\"\n\"4538821\";\"Хобарт\";\"other\"\n\"4538869\";\"Holdenville\";\"main\"\n\"4538890\";\"Hollis\";\"main\"\n\"4538955\";\"Hominy\";\"main\"\n\"4539145\";\"Hugo\";\"main\"\n\"4539217\";\"Hydro\";\"main\"\n\"4539224\";\"Idabel\";\"main\"\n\"4539351\";\"Inola\";\"main\"\n\"4539557\";\"Jay\";\"main\"\n\"4539615\";\"Jenks\";\"main\"\n\"4539726\";\"Jones\";\"main\"\n\"4539775\";\"Justice\";\"main\"\n\"4540261\";\"Kiefer\";\"main\"\n\"4540313\";\"Kingfisher\";\"main\"\n\"4540329\";\"Kingston\";\"main\"\n\"4540329\";\"Кингстон\";\"other\"\n\"4540403\";\"Konawa\";\"main\"\n\"4540422\";\"Krebs\";\"main\"\n\"4540677\";\"Langston\";\"main\"\n\"4540713\";\"Laverne\";\"main\"\n\"4540737\";\"Lawton\";\"main\"\n\"4540737\";\"Louton\";\"other\"\n\"4540737\";\"lao dun\";\"other\"\n\"4540737\";\"Лоутон\";\"other\"\n\"4540737\";\"劳顿\";\"other\"\n\"4540932\";\"Lexington\";\"main\"\n\"4540932\";\"Leksington\";\"other\"\n\"4540932\";\"Лексингтон\";\"other\"\n\"4541116\";\"Lindsay\";\"main\"\n\"4541597\";\"Locust Grove\";\"main\"\n\"4541625\";\"Lone Grove\";\"main\"\n\"4541748\";\"Longtown\";\"main\"\n\"4542052\";\"Madill\";\"main\"\n\"4542100\";\"Mangum\";\"main\"\n\"4542113\";\"Mannford\";\"main\"\n\"4542164\";\"Marietta\";\"main\"\n\"4542164\";\"Мариетта\";\"other\"\n\"4542179\";\"Marlow\";\"main\"\n\"4542180\";\"Marlow\";\"main\"\n\"4542267\";\"Maud\";\"main\"\n\"4542312\";\"Maysville\";\"main\"\n\"4542367\";\"McAlester\";\"main\"\n\"4542404\";\"McCord\";\"main\"\n\"4542500\";\"McLoud\";\"main\"\n\"4542557\";\"Medford\";\"main\"\n\"4542557\";\"Медфорд\";\"other\"\n\"4542641\";\"Meridian\";\"main\"\n\"4542641\";\"Меридиан\";\"other\"\n\"4542643\";\"Meridian\";\"main\"\n\"4542643\";\"Меридиан\";\"other\"\n\"4542692\";\"Miami\";\"main\"\n\"4542692\";\"Majami\";\"other\"\n\"4542692\";\"Майами\";\"other\"\n\"4542765\";\"Midwest City\";\"main\"\n\"4542876\";\"Minco\";\"main\"\n\"4542975\";\"Moore\";\"main\"\n\"4542975\";\"Mur\";\"other\"\n\"4542975\";\"Мур\";\"other\"\n\"4542994\";\"Mooreland\";\"main\"\n\"4543027\";\"Morris\";\"main\"\n\"4543082\";\"Mounds\";\"main\"\n\"4543280\";\"Muldrow\";\"main\"\n\"4543338\";\"Muskogee\";\"main\"\n\"4543338\";\"Maskogi\";\"other\"\n\"4543338\";\"Маскоги\";\"other\"\n\"4543352\";\"Mustang\";\"main\"\n\"4543622\";\"Newcastle\";\"main\"\n\"4543627\";\"Newkirk\";\"main\"\n\"4543652\";\"Nichols Hills\";\"main\"\n\"4543671\";\"Nicoma Park\";\"main\"\n\"4543724\";\"Ninnekah\";\"main\"\n\"4543733\";\"Noble\";\"main\"\n\"4543762\";\"Norman\";\"main\"\n\"4543762\";\"Норман\";\"other\"\n\"4544025\";\"Nowata\";\"main\"\n\"4544174\";\"Oakhurst\";\"main\"\n\"4544252\";\"Oilton\";\"main\"\n\"4544257\";\"Okarche\";\"main\"\n\"4544263\";\"Okeene\";\"main\"\n\"4544272\";\"Okemah\";\"main\"\n\"4544349\";\"Oklahoma City\";\"main\"\n\"4544349\";\"Oklakhoma Siti\";\"other\"\n\"4544349\";\"ao ke la he ma shi\";\"other\"\n\"4544349\";\"awklahwma syty\";\"other\"\n\"4544349\";\"okurahomashiti\";\"other\"\n\"4544349\";\"Оклахома Сити\";\"other\"\n\"4544349\";\"אוקלהומה סיטי\";\"other\"\n\"4544349\";\"أوكلاهوما سيتي\";\"other\"\n\"4544349\";\"オクラホマシティ\";\"other\"\n\"4544349\";\"奧克拉荷馬市\";\"other\"\n\"4544383\";\"Okmulgee\";\"main\"\n\"4547242\";\"Oologah\";\"main\"\n\"4547407\";\"Owasso\";\"main\"\n\"4547504\";\"Panama\";\"main\"\n\"4547567\";\"Park Hill\";\"main\"\n\"4547675\";\"Pawhuska\";\"main\"\n\"4547684\";\"Pawnee\";\"main\"\n\"4547690\";\"Pauls Valley\";\"main\"\n\"4547849\";\"Perkins\";\"main\"\n\"4547861\";\"Perry\";\"main\"\n\"4547954\";\"Picher\";\"main\"\n\"4547969\";\"Piedmont\";\"main\"\n\"4548088\";\"Pink\";\"main\"\n\"4548233\";\"Pocola\";\"main\"\n\"4548267\";\"Ponca City\";\"main\"\n\"4548363\";\"Poteau\";\"main\"\n\"4548393\";\"Prague\";\"main\"\n\"4548516\";\"Pryor\";\"main\"\n\"4548560\";\"Purcell\";\"main\"\n\"4548780\";\"Quinton\";\"main\"\n\"4549253\";\"Ringling\";\"main\"\n\"4549656\";\"Roland\";\"main\"\n\"4549984\";\"Rush Springs\";\"main\"\n\"4550364\";\"Salina\";\"main\"\n\"4550364\";\"Салина\";\"other\"\n\"4550374\";\"Sallisaw\";\"main\"\n\"4550659\";\"Sand Springs\";\"main\"\n\"4550881\";\"Sapulpa\";\"main\"\n\"4550928\";\"Sayre\";\"main\"\n\"4551042\";\"Seminole\";\"main\"\n\"4551173\";\"Shattuck\";\"main\"\n\"4551177\";\"Shawnee\";\"main\"\n\"4551408\";\"Skiatook\";\"main\"\n\"4551448\";\"Slaughterville\";\"main\"\n\"4551532\";\"Snyder\";\"main\"\n\"4551915\";\"Spencer\";\"main\"\n\"4551928\";\"Sperry\";\"main\"\n\"4551934\";\"Spiro\";\"main\"\n\"4552206\";\"Stigler\";\"main\"\n\"4552215\";\"Stillwater\";\"main\"\n\"4552280\";\"Stilwell\";\"main\"\n\"4552339\";\"Stratford\";\"main\"\n\"4552339\";\"Стратфорд\";\"other\"\n\"4552361\";\"Stroud\";\"main\"\n\"4552519\";\"Sulphur\";\"main\"\n\"4552707\";\"Tahlequah\";\"main\"\n\"4552725\";\"Talihina\";\"main\"\n\"4552820\";\"Tecumseh\";\"main\"\n\"4552840\";\"Temple\";\"main\"\n\"4552897\";\"Texanna\";\"main\"\n\"4552969\";\"The Village\";\"main\"\n\"4552981\";\"Thomas\";\"main\"\n\"4553126\";\"Tishomingo\";\"main\"\n\"4553160\";\"Tonkawa\";\"main\"\n\"4553433\";\"Tulsa\";\"main\"\n\"4553433\";\"T\\\"lsa\";\"other\"\n\"4553433\";\"tarusa\";\"other\"\n\"4553433\";\"tu er sa\";\"other\"\n\"4553433\";\"Тълса\";\"other\"\n\"4553433\";\"タルサ\";\"other\"\n\"4553433\";\"圖爾薩\";\"other\"\n\"4553549\";\"Turley\";\"main\"\n\"4553574\";\"Tuttle\";\"main\"\n\"4553709\";\"Union City\";\"main\"\n\"4553709\";\"Junion-Siti\";\"other\"\n\"4553709\";\"Юнион-Сити\";\"other\"\n\"4554401\";\"Verdigris\";\"main\"\n\"4554418\";\"Vian\";\"main\"\n\"4554496\";\"Vinita\";\"main\"\n\"4554548\";\"Wagoner\";\"main\"\n\"4554634\";\"Walters\";\"main\"\n\"4554687\";\"Warr Acres\";\"main\"\n\"4554693\";\"Warner\";\"main\"\n\"4554800\";\"Watonga\";\"main\"\n\"4554823\";\"Waukomis\";\"main\"\n\"4554829\";\"Waurika\";\"main\"\n\"4554858\";\"Weatherford\";\"main\"\n\"4555189\";\"Westville\";\"main\"\n\"4555204\";\"Wetumka\";\"main\"\n\"4555211\";\"Wewoka\";\"main\"\n\"4555423\";\"Wilburton\";\"main\"\n\"4555790\";\"Wilson\";\"main\"\n\"4555790\";\"Uilson\";\"other\"\n\"4555790\";\"Уилсон\";\"other\"\n\"4555791\";\"Wilson\";\"main\"\n\"4555925\";\"Wister\";\"main\"\n\"4556050\";\"Woodward\";\"main\"\n\"4556096\";\"Wynnewood\";\"main\"\n\"4556110\";\"Yale\";\"main\"\n\"4556165\";\"Yukon\";\"main\"\n\"4556165\";\"Jukon\";\"other\"\n\"4556165\";\"Юкон\";\"other\"\n\"4556248\";\"Aldan\";\"main\"\n\"4556341\";\"Atglen\";\"main\"\n\"4556349\";\"Avondale\";\"main\"\n\"4556349\";\"Ejvondejl\";\"other\"\n\"4556349\";\"Ейвондейл\";\"other\"\n\"4556518\";\"Berlin\";\"main\"\n\"4556595\";\"Biglerville\";\"main\"\n\"4556694\";\"Bonneauville\";\"main\"\n\"4556702\";\"Boothwyn\";\"main\"\n\"4556793\";\"Brookhaven\";\"main\"\n\"4556802\";\"Broomall\";\"main\"\n\"4557014\";\"Carroll Valley\";\"main\"\n\"4557109\";\"Chambersburg\";\"main\"\n\"4557137\";\"Chester\";\"main\"\n\"4557137\";\"Честер\";\"other\"\n\"4557148\";\"Chester Heights\";\"main\"\n\"4557181\";\"Christiana\";\"main\"\n\"4557228\";\"Clifton Heights\";\"main\"\n\"4557247\";\"Coatesville\";\"main\"\n\"4557287\";\"Collingdale\";\"main\"\n\"4557296\";\"Colwyn\";\"main\"\n\"4557477\";\"Dallastown\";\"main\"\n\"4557485\";\"Darby\";\"main\"\n\"4557606\";\"Drexel Hill\";\"main\"\n\"4557629\";\"Dunbar\";\"main\"\n\"4557666\";\"East Berlin\";\"main\"\n\"4557699\";\"East Lansdowne\";\"main\"\n\"4557713\";\"East Uniontown\";\"main\"\n\"4557717\";\"East York\";\"main\"\n\"4557760\";\"Eddystone\";\"main\"\n\"4557851\";\"Fairchance\";\"main\"\n\"4557857\";\"Fairdale\";\"main\"\n\"4557920\";\"Fayetteville\";\"main\"\n\"4558002\";\"Folsom\";\"main\"\n\"4558004\";\"Folcroft\";\"main\"\n\"4558131\";\"Gap\";\"main\"\n\"4558183\";\"Gettysburg\";\"main\"\n\"4558236\";\"Glen Rock\";\"main\"\n\"4558247\";\"Glenolden\";\"main\"\n\"4558315\";\"Grantley\";\"main\"\n\"4558369\";\"Greencastle\";\"main\"\n\"4558439\";\"Guilford\";\"main\"\n\"4558475\";\"Hanover\";\"main\"\n\"4558703\";\"Hopwood\";\"main\"\n\"4558838\";\"Jacobus\";\"main\"\n\"4558942\";\"Kennett Square\";\"main\"\n\"4559042\";\"Lake Heritage\";\"main\"\n\"4559053\";\"Lake Meade\";\"main\"\n\"4559077\";\"Lansdowne\";\"main\"\n\"4559210\";\"Lima\";\"main\"\n\"4559210\";\"Лима\";\"other\"\n\"4559225\";\"Linwood\";\"main\"\n\"4559273\";\"Littlestown\";\"main\"\n\"4559302\";\"Loganville\";\"main\"\n\"4559367\";\"Luzerne\";\"main\"\n\"4559431\";\"Marcus Hook\";\"main\"\n\"4559490\";\"Masontown\";\"main\"\n\"4559516\";\"McConnellsburg\";\"main\"\n\"4559553\";\"McSherrystown\";\"main\"\n\"4559575\";\"Media\";\"main\"\n\"4559600\";\"Mercersburg\";\"main\"\n\"4559619\";\"Meyersdale\";\"main\"\n\"4559639\";\"Midway\";\"main\"\n\"4559647\";\"Milford\";\"main\"\n\"4559685\";\"Millersville\";\"main\"\n\"4559730\";\"Mont Alto\";\"main\"\n\"4559761\";\"Morrisville\";\"main\"\n\"4559762\";\"Morton\";\"main\"\n\"4559831\";\"Mount Pleasant\";\"main\"\n\"4559943\";\"Nemacolin\";\"main\"\n\"4559967\";\"New Freedom\";\"main\"\n\"4559983\";\"New Oxford\";\"main\"\n\"4560048\";\"North York\";\"main\"\n\"4560057\";\"Norwood\";\"main\"\n\"4560152\";\"Oliver\";\"main\"\n\"4560185\";\"Oxford\";\"main\"\n\"4560185\";\"Oksford\";\"other\"\n\"4560185\";\"Оксфорд\";\"other\"\n\"4560229\";\"Parkesburg\";\"main\"\n\"4560233\";\"Parkside\";\"main\"\n\"4560237\";\"Parkville\";\"main\"\n\"4560291\";\"Penn Wynne\";\"main\"\n\"4560318\";\"Pennville\";\"main\"\n\"4560349\";\"Philadelphia\";\"main\"\n\"4560349\";\"Filadel'fi\";\"other\"\n\"4560349\";\"Filadel'fija\";\"other\"\n\"4560349\";\"Filadelfia\";\"other\"\n\"4560349\";\"Filadelfie\";\"other\"\n\"4560349\";\"Filadelfija\";\"other\"\n\"4560349\";\"Filadelfio\";\"other\"\n\"4560349\";\"Filadèlfia\";\"other\"\n\"4560349\";\"Filadélfia\";\"other\"\n\"4560349\";\"Filidelfi\";\"other\"\n\"4560349\";\"Philadelpheia\";\"other\"\n\"4560349\";\"Philadelphie\";\"other\"\n\"4560349\";\"fei cheng\";\"other\"\n\"4560349\";\"firaderufia\";\"other\"\n\"4560349\";\"fyladlfya\";\"other\"\n\"4560349\";\"piladelpia\";\"other\"\n\"4560349\";\"pilladelpia\";\"other\"\n\"4560349\";\"pyldlpyh\";\"other\"\n\"4560349\";\"Φιλαδέλφεια\";\"other\"\n\"4560349\";\"Филаделфия\";\"other\"\n\"4560349\";\"Филаделфија\";\"other\"\n\"4560349\";\"Филадельфи\";\"other\"\n\"4560349\";\"Филадельфия\";\"other\"\n\"4560349\";\"Філадельфія\";\"other\"\n\"4560349\";\"פילדלפיה\";\"other\"\n\"4560349\";\"فيلادلفيا\";\"other\"\n\"4560349\";\"ფილადელფია\";\"other\"\n\"4560349\";\"フィラデルフィア\";\"other\"\n\"4560349\";\"費城\";\"other\"\n\"4560349\";\"필라델피아\";\"other\"\n\"4560492\";\"Point Marion\";\"main\"\n\"4560549\";\"Prospect Park\";\"main\"\n\"4560577\";\"Quarryville\";\"main\"\n\"4560639\";\"Red Lion\";\"main\"\n\"4560671\";\"Republic\";\"main\"\n\"4560709\";\"Ridley Park\";\"main\"\n\"4561188\";\"Sharon Hill\";\"main\"\n\"4561215\";\"Shiloh\";\"main\"\n\"4561233\";\"Shrewsbury\";\"main\"\n\"4561233\";\"Shrusberi\";\"other\"\n\"4561233\";\"Шрусбери\";\"other\"\n\"4561342\";\"South Connellsville\";\"main\"\n\"4561391\";\"Spring Grove\";\"main\"\n\"4561407\";\"Springfield\";\"main\"\n\"4561407\";\"Springfild\";\"other\"\n\"4561407\";\"Спрингфилд\";\"other\"\n\"4561435\";\"Spry\";\"main\"\n\"4561501\";\"Stewartstown\";\"main\"\n\"4561542\";\"Strasburg\";\"main\"\n\"4561620\";\"Susquehanna Trails\";\"main\"\n\"4561628\";\"Swarthmore\";\"main\"\n\"4561716\";\"Thorndale\";\"main\"\n\"4561755\";\"Toughkenamon\";\"main\"\n\"4561768\";\"Trainer\";\"main\"\n\"4561859\";\"Uniontown\";\"main\"\n\"4561873\";\"Upland\";\"main\"\n\"4561874\";\"Upland\";\"main\"\n\"4561909\";\"Valley View\";\"main\"\n\"4562065\";\"Wayne Heights\";\"main\"\n\"4562070\";\"Waynesboro\";\"main\"\n\"4562078\";\"Waynesburg\";\"main\"\n\"4562088\";\"Weigelstown\";\"main\"\n\"4562144\";\"West Chester\";\"main\"\n\"4562145\";\"West Goshen\";\"main\"\n\"4562148\";\"West Grove\";\"main\"\n\"4562174\";\"West York\";\"main\"\n\"4562275\";\"Willow Street\";\"main\"\n\"4562311\";\"Windsor\";\"main\"\n\"4562311\";\"Vindzor\";\"other\"\n\"4562311\";\"Виндзор\";\"other\"\n\"4562366\";\"Woodlyn\";\"main\"\n\"4562405\";\"Yoe\";\"main\"\n\"4562407\";\"York\";\"main\"\n\"4562407\";\"Jork\";\"other\"\n\"4562407\";\"Йорк\";\"other\"\n\"4562430\";\"Yeadon\";\"main\"\n\"4568985\";\"Abbeville\";\"main\"\n\"4569067\";\"Aiken\";\"main\"\n\"4569067\";\"Ajken\";\"other\"\n\"4569067\";\"Айкен\";\"other\"\n\"4569207\";\"Allendale\";\"main\"\n\"4569298\";\"Anderson\";\"main\"\n\"4569298\";\"Андерсон\";\"other\"\n\"4569362\";\"Andrews\";\"main\"\n\"4569565\";\"Arial\";\"main\"\n\"4569793\";\"Awendaw\";\"main\"\n\"4569929\";\"Bamberg\";\"main\"\n\"4570015\";\"Barnwell\";\"main\"\n\"4570111\";\"Batesburg\";\"main\"\n\"4570117\";\"Batesburg-Leesville\";\"main\"\n\"4570284\";\"Beaufort\";\"main\"\n\"4570579\";\"Belton\";\"main\"\n\"4570579\";\"Белтон\";\"other\"\n\"4570590\";\"Belvedere\";\"main\"\n\"4570634\";\"Bennettsville\";\"main\"\n\"4570664\";\"Berea\";\"main\"\n\"4570664\";\"Береа\";\"other\"\n\"4571470\";\"Bishopville\";\"main\"\n\"4571582\";\"Blackville\";\"main\"\n\"4571593\";\"Blacksburg\";\"main\"\n\"4571593\";\"Blehksburg\";\"other\"\n\"4571593\";\"Блэксбург\";\"other\"\n\"4571722\";\"Bluffton\";\"main\"\n\"4571804\";\"Boiling Springs\";\"main\"\n\"4571805\";\"Boiling Springs\";\"main\"\n\"4571994\";\"Bowman\";\"main\"\n\"4572098\";\"Branchville\";\"main\"\n\"4572352\";\"Brookdale\";\"main\"\n\"4572665\";\"Bucksport\";\"main\"\n\"4572677\";\"Buffalo\";\"main\"\n\"4572677\";\"Буффало\";\"other\"\n\"4572857\";\"Burnettown\";\"main\"\n\"4572881\";\"Burton\";\"main\"\n\"4572881\";\"Berton\";\"other\"\n\"4572881\";\"Бертон\";\"other\"\n\"4573077\";\"Calhoun Falls\";\"main\"\n\"4573209\";\"Camden\";\"main\"\n\"4573502\";\"Cane Savannah\";\"main\"\n\"4573888\";\"Cayce\";\"main\"\n\"4574140\";\"Centerville\";\"main\"\n\"4574143\";\"Centerville\";\"main\"\n\"4574153\";\"Central\";\"main\"\n\"4574324\";\"Charleston\";\"main\"\n\"4574324\";\"Carolopolis\";\"other\"\n\"4574324\";\"Charlston\";\"other\"\n\"4574324\";\"cha er si dun\";\"other\"\n\"4574324\";\"chalseuteon\";\"other\"\n\"4574324\";\"Чарлстон\";\"other\"\n\"4574324\";\"查尔斯顿\";\"other\"\n\"4574324\";\"찰스턴\";\"other\"\n\"4574434\";\"Cheraw\";\"main\"\n\"4574514\";\"Cherryvale\";\"main\"\n\"4574517\";\"Chesnee\";\"main\"\n\"4574550\";\"Chesterfield\";\"main\"\n\"4574565\";\"Chester\";\"main\"\n\"4574565\";\"Честер\";\"other\"\n\"4574835\";\"City View\";\"main\"\n\"4574947\";\"Clearwater\";\"main\"\n\"4574989\";\"Clemson\";\"main\"\n\"4575028\";\"Clinton\";\"main\"\n\"4575028\";\"Klinton\";\"other\"\n\"4575028\";\"Клинтон\";\"other\"\n\"4575061\";\"Clover\";\"main\"\n\"4575352\";\"Columbia\";\"main\"\n\"4575352\";\"Kolumbija\";\"other\"\n\"4575352\";\"koronbia\";\"other\"\n\"4575352\";\"kwlmbya\";\"other\"\n\"4575352\";\"jnwby kyrwlyna\";\"other\"\n\"4575352\";\"Колумбия\";\"other\"\n\"4575352\";\"کولمبیا، جنوبی کیرولینا\";\"other\"\n\"4575352\";\"コロンビア\";\"other\"\n\"4575461\";\"Conway\";\"main\"\n\"4575461\";\"Konvej\";\"other\"\n\"4575461\";\"Конвей\";\"other\"\n\"4575815\";\"Cowpens\";\"main\"\n\"4576268\";\"Dalzell\";\"main\"\n\"4576319\";\"Darlington\";\"main\"\n\"4576544\";\"Denmark\";\"main\"\n\"4576573\";\"Dentsville\";\"main\"\n\"4576653\";\"Dillon\";\"main\"\n\"4577039\";\"Due West\";\"main\"\n\"4577083\";\"Duncan\";\"main\"\n\"4577083\";\"Dunkan\";\"other\"\n\"4577083\";\"Дункан\";\"other\"\n\"4577121\";\"Dunean\";\"main\"\n\"4577314\";\"East Gaffney\";\"main\"\n\"4577347\";\"East Sumter\";\"main\"\n\"4577532\";\"Edgefield\";\"main\"\n\"4577557\";\"Edisto\";\"main\"\n\"4577654\";\"Elgin\";\"main\"\n\"4577897\";\"Estill\";\"main\"\n\"4577930\";\"Eureka Mill\";\"main\"\n\"4578047\";\"Fairfax\";\"main\"\n\"4578602\";\"Five Forks\";\"main\"\n\"4578737\";\"Florence\";\"main\"\n\"4578737\";\"Florencija\";\"other\"\n\"4578737\";\"Флоренция\";\"other\"\n\"4578801\";\"Folly Beach\";\"main\"\n\"4578841\";\"Forest Acres\";\"main\"\n\"4578904\";\"Forestbrook\";\"main\"\n\"4578977\";\"Fort Mill\";\"main\"\n\"4579043\";\"Fountain Inn\";\"main\"\n\"4579418\";\"Gaffney\";\"main\"\n\"4579484\";\"Gantt\";\"main\"\n\"4579503\";\"Garden City\";\"main\"\n\"4579503\";\"Garden Siti\";\"other\"\n\"4579503\";\"Гарден Сити\";\"other\"\n\"4579571\";\"Gaston\";\"main\"\n\"4579635\";\"Gayle Mill\";\"main\"\n\"4579662\";\"Georgetown\";\"main\"\n\"4579923\";\"Gloverville\";\"main\"\n\"4579979\";\"Golden Grove\";\"main\"\n\"4580098\";\"Goose Creek\";\"main\"\n\"4580329\";\"Gray Court\";\"main\"\n\"4580354\";\"Great Falls\";\"main\"\n\"4580543\";\"Greenville\";\"main\"\n\"4580543\";\"Grinvill\";\"other\"\n\"4580543\";\"Гринвилл\";\"other\"\n\"4580569\";\"Greenwood\";\"main\"\n\"4580599\";\"Greer\";\"main\"\n\"4580599\";\"Grir\";\"other\"\n\"4580599\";\"Грир\";\"other\"\n\"4580983\";\"Hampton\";\"main\"\n\"4580983\";\"Khehmpton\";\"other\"\n\"4580983\";\"Хэмптон\";\"other\"\n\"4581023\";\"Hanahan\";\"main\"\n\"4581095\";\"Hardeeville\";\"main\"\n\"4581261\";\"Hartsville\";\"main\"\n\"4581833\";\"Hilton Head Island\";\"main\"\n\"4581833\";\"Hilton Head\";\"other\"\n\"4582000\";\"Holly Hill\";\"main\"\n\"4582042\";\"Hollywood\";\"main\"\n\"4582042\";\"Gollivud\";\"other\"\n\"4582042\";\"Голливуд\";\"other\"\n\"4582133\";\"Honea Path\";\"main\"\n\"4582142\";\"Homeland Park\";\"main\"\n\"4582701\";\"India Hook\";\"main\"\n\"4582788\";\"Inman\";\"main\"\n\"4582790\";\"Inman Mills\";\"main\"\n\"4583057\";\"Irmo\";\"main\"\n\"4583071\";\"Irwin\";\"main\"\n\"4583114\";\"Isle of Palms\";\"main\"\n\"4583114\";\"formerly Long Island\";\"other\"\n\"4583127\";\"Iva\";\"main\"\n\"4583213\";\"Jackson\";\"main\"\n\"4583213\";\"Dzhekson\";\"other\"\n\"4583213\";\"Джексон\";\"other\"\n\"4583491\";\"Joanna\";\"main\"\n\"4583632\";\"Johnsonville\";\"main\"\n\"4583636\";\"Johnston\";\"main\"\n\"4583795\";\"Judson\";\"main\"\n\"4584007\";\"Kershaw\";\"main\"\n\"4584020\";\"Kiawah Island\";\"main\"\n\"4584125\";\"Kingstree\";\"main\"\n\"4584277\";\"Ladson\";\"main\"\n\"4584322\";\"Lake City\";\"main\"\n\"4584474\";\"Lake Wylie\";\"main\"\n\"4584524\";\"Lakewood\";\"main\"\n\"4584524\";\"Lejkvud\";\"other\"\n\"4584524\";\"Лейквуд\";\"other\"\n\"4584556\";\"Lancaster\";\"main\"\n\"4584556\";\"Lankaster\";\"other\"\n\"4584556\";\"Ланкастер\";\"other\"\n\"4584571\";\"Lancaster Mill\";\"main\"\n\"4584590\";\"Landrum\";\"main\"\n\"4584668\";\"Latta\";\"main\"\n\"4584683\";\"Laurel Bay\";\"main\"\n\"4584738\";\"Laurens\";\"main\"\n\"4584885\";\"Leesville\";\"main\"\n\"4584947\";\"Lesslie\";\"main\"\n\"4585000\";\"Lexington\";\"main\"\n\"4585000\";\"Leksington\";\"other\"\n\"4585000\";\"Лексингтон\";\"other\"\n\"4585025\";\"Liberty\";\"main\"\n\"4585421\";\"Little River\";\"main\"\n\"4585835\";\"Loris\";\"main\"\n\"4585988\";\"Lyman\";\"main\"\n\"4586196\";\"Manning\";\"main\"\n\"4586266\";\"Marion\";\"main\"\n\"4586266\";\"Mehrion\";\"other\"\n\"4586266\";\"Мэрион\";\"other\"\n\"4586523\";\"Mauldin\";\"main\"\n\"4586530\";\"Mayesville\";\"main\"\n\"4586546\";\"Mayo\";\"main\"\n\"4586628\";\"McColl\";\"main\"\n\"4586642\";\"McCormick\";\"main\"\n\"4586944\";\"Meggett\";\"main\"\n\"4587511\";\"Moncks Corner\";\"main\"\n\"4588165\";\"Mount Pleasant\";\"main\"\n\"4588634\";\"Mullins\";\"main\"\n\"4588654\";\"Murphys Estates\";\"main\"\n\"4588682\";\"Murrells Inlet\";\"main\"\n\"4588718\";\"Myrtle Beach\";\"main\"\n\"4588936\";\"New Ellenton\";\"main\"\n\"4589207\";\"Newberry\";\"main\"\n\"4589262\";\"Newport\";\"main\"\n\"4589262\";\"N'juport\";\"other\"\n\"4589262\";\"Ньюпорт\";\"other\"\n\"4589300\";\"Ninety Six\";\"main\"\n\"4589368\";\"North Augusta\";\"main\"\n\"4589387\";\"North Charleston\";\"main\"\n\"4589426\";\"North Hartsville\";\"main\"\n\"4589446\";\"North Myrtle Beach\";\"main\"\n\"4589508\";\"Northlake\";\"main\"\n\"4589590\";\"Oak Grove\";\"main\"\n\"4589786\";\"Oakland\";\"main\"\n\"4589786\";\"Oklend\";\"other\"\n\"4589786\";\"Окленд\";\"other\"\n\"4590184\";\"Orangeburg\";\"main\"\n\"4590312\";\"Pacolet\";\"main\"\n\"4590338\";\"Pageland\";\"main\"\n\"4590413\";\"Pamplico\";\"main\"\n\"4590476\";\"Parker\";\"main\"\n\"4590476\";\"Паркер\";\"other\"\n\"4590762\";\"Pendleton\";\"main\"\n\"4590946\";\"Pickens\";\"main\"\n\"4590980\";\"Piedmont\";\"main\"\n\"4591304\";\"Pineridge\";\"main\"\n\"4591896\";\"Port Royal\";\"main\"\n\"4591977\";\"Powderville\";\"main\"\n\"4592073\";\"Privateer\";\"main\"\n\"4592114\";\"Prosperity\";\"main\"\n\"4592411\";\"Ravenel\";\"main\"\n\"4592453\";\"Red Bank\";\"main\"\n\"4592487\";\"Red Hill\";\"main\"\n\"4592912\";\"Ridgeland\";\"main\"\n\"4592922\";\"Ridgeville\";\"main\"\n\"4593142\";\"Rock Hill\";\"main\"\n\"4593372\";\"Roebuck\";\"main\"\n\"4593724\";\"Saint Andrews\";\"main\"\n\"4593797\";\"Saint George\";\"main\"\n\"4593797\";\"Svjatoj Georgij\";\"other\"\n\"4593797\";\"Святой Георгий\";\"other\"\n\"4594258\";\"Saint Matthews\";\"main\"\n\"4594546\";\"Saint Stephen\";\"main\"\n\"4594694\";\"Saluda\";\"main\"\n\"4594975\";\"Sans Souci\";\"main\"\n\"4595129\";\"Saxon\";\"main\"\n\"4595249\";\"Seabrook Island\";\"main\"\n\"4595346\";\"Seneca\";\"main\"\n\"4595374\";\"Seven Oaks\";\"main\"\n\"4595568\";\"Shell Point\";\"main\"\n\"4595569\";\"Shell Point\";\"main\"\n\"4595864\";\"Simpsonville\";\"main\"\n\"4596208\";\"Socastee\";\"main\"\n\"4597044\";\"South Congaree\";\"main\"\n\"4597113\";\"South Sumter\";\"main\"\n\"4597140\";\"Southern Shops\";\"main\"\n\"4597200\";\"Spartanburg\";\"main\"\n\"4597397\";\"Springdale\";\"main\"\n\"4597398\";\"Springdale\";\"main\"\n\"4597499\";\"Saint Andrews\";\"main\"\n\"4597573\";\"Stateburg\";\"main\"\n\"4597882\";\"Sullivans Island\";\"main\"\n\"4597882\";\"Sullivan's Island\";\"other\"\n\"4597911\";\"Summerton\";\"main\"\n\"4597919\";\"Summerville\";\"main\"\n\"4597948\";\"Sumter\";\"main\"\n\"4598052\";\"Surfside Beach\";\"main\"\n\"4598353\";\"Taylors\";\"main\"\n\"4598379\";\"Tega Cay\";\"main\"\n\"4598692\";\"Timmonsville\";\"main\"\n\"4598865\";\"Travelers Rest\";\"main\"\n\"4599214\";\"Union\";\"main\"\n\"4599440\";\"Utica\";\"main\"\n\"4599455\";\"Valley Falls\";\"main\"\n\"4599493\";\"Varnville\";\"main\"\n\"4599937\";\"Wade Hampton\";\"main\"\n\"4599981\";\"Walhalla\";\"main\"\n\"4600065\";\"Walterboro\";\"main\"\n\"4600141\";\"Ware Shoals\";\"main\"\n\"4600381\";\"Wedgewood\";\"main\"\n\"4600413\";\"Welcome\";\"main\"\n\"4600434\";\"Wellford\";\"main\"\n\"4600541\";\"West Columbia\";\"main\"\n\"4600661\";\"Westminster\";\"main\"\n\"4600990\";\"Whitmire\";\"main\"\n\"4601093\";\"Wilkinson Heights\";\"main\"\n\"4601167\";\"Williamston\";\"main\"\n\"4601196\";\"Williston\";\"main\"\n\"4601335\";\"Winnsboro\";\"main\"\n\"4601336\";\"Winnsboro Mills\";\"main\"\n\"4601475\";\"Woodfield\";\"main\"\n\"4601547\";\"Woodruff\";\"main\"\n\"4601703\";\"York\";\"main\"\n\"4601703\";\"Jork\";\"other\"\n\"4601703\";\"Йорк\";\"other\"\n\"4602039\";\"Adamsville\";\"main\"\n\"4602167\";\"Alamo\";\"main\"\n\"4602181\";\"Alcoa\";\"main\"\n\"4602283\";\"Algood\";\"main\"\n\"4602483\";\"Altamont\";\"main\"\n\"4602982\";\"Ardmore\";\"main\"\n\"4603001\";\"Arlington\";\"main\"\n\"4603001\";\"Арлингтон\";\"other\"\n\"4603225\";\"Ashland City\";\"main\"\n\"4603284\";\"Athens\";\"main\"\n\"4603347\";\"Atoka\";\"main\"\n\"4604183\";\"Bartlett\";\"main\"\n\"4604183\";\"Бартлетт\";\"other\"\n\"4604411\";\"Baxter\";\"main\"\n\"4604504\";\"Bean Station\";\"main\"\n\"4605324\";\"Belle Meade\";\"main\"\n\"4605372\";\"Bells\";\"main\"\n\"4605577\";\"Benton\";\"main\"\n\"4605577\";\"Бентон\";\"other\"\n\"4607005\";\"Blaine\";\"main\"\n\"4607177\";\"Bloomingdale\";\"main\"\n\"4607201\";\"Blountville\";\"main\"\n\"4607414\";\"Bluff City\";\"main\"\n\"4607598\";\"Bolivar\";\"main\"\n\"4608147\";\"Bradford\";\"main\"\n\"4608408\";\"Brentwood\";\"main\"\n\"4608418\";\"Brentwood Estates\";\"main\"\n\"4608615\";\"Brighton\";\"main\"\n\"4608616\";\"Brighton\";\"main\"\n\"4608616\";\"Brajton\";\"other\"\n\"4608616\";\"Брайтон\";\"other\"\n\"4608657\";\"Bristol\";\"main\"\n\"4609116\";\"Brownsville\";\"main\"\n\"4609163\";\"Bruceton\";\"main\"\n\"4610022\";\"Burns\";\"main\"\n\"4610643\";\"Camden\";\"main\"\n\"4611656\";\"Carthage\";\"main\"\n\"4611691\";\"Caryville\";\"main\"\n\"4612315\";\"Celina\";\"main\"\n\"4612465\";\"Centerville\";\"main\"\n\"4612474\";\"Central\";\"main\"\n\"4612476\";\"Central\";\"main\"\n\"4612828\";\"Charlotte\";\"main\"\n\"4612828\";\"Sharlott\";\"other\"\n\"4612828\";\"Шарлотт\";\"other\"\n\"4612862\";\"Chattanooga\";\"main\"\n\"4612862\";\"Chattanuga\";\"other\"\n\"4612862\";\"chatanuga\";\"other\"\n\"4612862\";\"Чаттануга\";\"other\"\n\"4612862\";\"チャタヌーガ\";\"other\"\n\"4613560\";\"Church Hill\";\"main\"\n\"4613868\";\"Clarksville\";\"main\"\n\"4614088\";\"Cleveland\";\"main\"\n\"4614088\";\"Klivlend\";\"other\"\n\"4614088\";\"Кливленд\";\"other\"\n\"4614136\";\"Clifton\";\"main\"\n\"4614136\";\"Klifton\";\"other\"\n\"4614136\";\"Клифтон\";\"other\"\n\"4614214\";\"Clinton\";\"main\"\n\"4614214\";\"Klinton\";\"other\"\n\"4614214\";\"Клинтон\";\"other\"\n\"4614720\";\"Collegedale\";\"main\"\n\"4614748\";\"Collierville\";\"main\"\n\"4614818\";\"Collinwood\";\"main\"\n\"4614843\";\"Colonial Heights\";\"main\"\n\"4614867\";\"Columbia\";\"main\"\n\"4614867\";\"Kolumbija\";\"other\"\n\"4614867\";\"Колумбия\";\"other\"\n\"4615051\";\"Condon\";\"main\"\n\"4615145\";\"Cookeville\";\"main\"\n\"4615331\";\"Coopertown\";\"main\"\n\"4615804\";\"Covington\";\"main\"\n\"4615851\";\"Cowan\";\"main\"\n\"4616393\";\"Cross Plains\";\"main\"\n\"4616470\";\"Crossville\";\"main\"\n\"4616556\";\"Crump\";\"main\"\n\"4617112\";\"Dandridge\";\"main\"\n\"4617536\";\"Dayton\";\"main\"\n\"4617536\";\"Dejton\";\"other\"\n\"4617536\";\"Дейтон\";\"other\"\n\"4617650\";\"Decatur\";\"main\"\n\"4617650\";\"Dekejter\";\"other\"\n\"4617650\";\"Декейтер\";\"other\"\n\"4617668\";\"Decherd\";\"main\"\n\"4618057\";\"Dickson\";\"main\"\n\"4618921\";\"Dover\";\"main\"\n\"4618921\";\"Довер\";\"other\"\n\"4619013\";\"Dresden\";\"main\"\n\"4619629\";\"Dunlap\";\"main\"\n\"4619758\";\"Dyer\";\"main\"\n\"4619800\";\"Dyersburg\";\"main\"\n\"4619893\";\"Eagleton Village\";\"main\"\n\"4619943\";\"East Brainerd\";\"main\"\n\"4619947\";\"East Chattanooga\";\"main\"\n\"4619955\";\"East Cleveland\";\"main\"\n\"4619955\";\"Vostochnyj Klivlend\";\"other\"\n\"4619955\";\"Восточный Кливленд\";\"other\"\n\"4620131\";\"East Ridge\";\"main\"\n\"4620634\";\"Elizabethton\";\"main\"\n\"4621002\";\"Englewood\";\"main\"\n\"4621003\";\"Englewood\";\"main\"\n\"4621108\";\"Erin\";\"main\"\n\"4621130\";\"Erwin\";\"main\"\n\"4621192\";\"Estill Springs\";\"main\"\n\"4621196\";\"Etowah\";\"main\"\n\"4621447\";\"Fairfield Glade\";\"main\"\n\"4621469\";\"Fairmount\";\"main\"\n\"4621470\";\"Fairmount\";\"main\"\n\"4621503\";\"Fairview\";\"main\"\n\"4621694\";\"Fall Branch\";\"main\"\n\"4621846\";\"Farragut\";\"main\"\n\"4621915\";\"Fayetteville\";\"main\"\n\"4623039\";\"Forest Hills\";\"main\"\n\"4623560\";\"Franklin\";\"main\"\n\"4623560\";\"Франклин\";\"other\"\n\"4624180\";\"Gallatin\";\"main\"\n\"4624443\";\"Gatlinburg\";\"main\"\n\"4624601\";\"Germantown\";\"main\"\n\"4624940\";\"Gleason\";\"main\"\n\"4625282\";\"Goodlettsville\";\"main\"\n\"4625418\";\"Gordonsville\";\"main\"\n\"4625945\";\"Gray\";\"main\"\n\"4626029\";\"Graysville\";\"main\"\n\"4626181\";\"Green Hill\";\"main\"\n\"4626275\";\"Greenback\";\"main\"\n\"4626286\";\"Greenbrier\";\"main\"\n\"4626334\";\"Greeneville\";\"main\"\n\"4626344\";\"Greenfield\";\"main\"\n\"4626344\";\"Grinfild\";\"other\"\n\"4626344\";\"Гринфилд\";\"other\"\n\"4626739\";\"Gruetli-Laager\";\"main\"\n\"4627194\";\"Halls\";\"main\"\n\"4627863\";\"Harriman\";\"main\"\n\"4627983\";\"Harrison\";\"main\"\n\"4627983\";\"Kharrison\";\"other\"\n\"4627983\";\"Харрисон\";\"other\"\n\"4628044\";\"Harrogate\";\"main\"\n\"4628109\";\"Hartsville\";\"main\"\n\"4628695\";\"Henderson\";\"main\"\n\"4628695\";\"Khenderson\";\"other\"\n\"4628695\";\"Хендерсон\";\"other\"\n\"4628735\";\"Hendersonville\";\"main\"\n\"4628800\";\"Henning\";\"main\"\n\"4629217\";\"Hickory Withe\";\"main\"\n\"4629986\";\"Hohenwald\";\"main\"\n\"4630564\";\"Hopewell\";\"main\"\n\"4630564\";\"Khopuehlla\";\"other\"\n\"4630564\";\"Хопуэлла\";\"other\"\n\"4631291\";\"Humboldt\";\"main\"\n\"4631357\";\"Hunter\";\"main\"\n\"4631358\";\"Hunter\";\"main\"\n\"4631422\";\"Huntingdon\";\"main\"\n\"4632591\";\"Jacksboro\";\"main\"\n\"4632595\";\"Jackson\";\"main\"\n\"4632595\";\"Dzhekson\";\"other\"\n\"4632595\";\"jakuson\";\"other\"\n\"4632595\";\"Джексон\";\"other\"\n\"4632595\";\"ジャクソン\";\"other\"\n\"4632852\";\"Jamestown\";\"main\"\n\"4632892\";\"Jasper\";\"main\"\n\"4632959\";\"Jefferson City\";\"main\"\n\"4632959\";\"Dzhefferson-Siti\";\"other\"\n\"4632959\";\"Джефферсон-Сити\";\"other\"\n\"4632967\";\"Jellico\";\"main\"\n\"4633419\";\"Johnson City\";\"main\"\n\"4633573\";\"Johnsonville\";\"main\"\n\"4633848\";\"Jonesborough\";\"main\"\n\"4634352\";\"Kenton\";\"main\"\n\"4634474\";\"Kimball\";\"main\"\n\"4634662\";\"Kingsport\";\"main\"\n\"4634671\";\"Kingston\";\"main\"\n\"4634671\";\"Кингстон\";\"other\"\n\"4634683\";\"Kingston Springs\";\"main\"\n\"4634946\";\"Knoxville\";\"main\"\n\"4634946\";\"Noksvill\";\"other\"\n\"4634946\";\"nokkusubiru\";\"other\"\n\"4634946\";\"nwqswwyl\";\"other\"\n\"4634946\";\"Ноксвилл\";\"other\"\n\"4634946\";\"נוקסוויל\";\"other\"\n\"4634946\";\"ノックスビル\";\"other\"\n\"4635031\";\"La Vergne\";\"main\"\n\"4635037\";\"LaFollette\";\"main\"\n\"4635093\";\"Lafayette\";\"main\"\n\"4635093\";\"Lafajet\";\"other\"\n\"4635093\";\"Лафайет\";\"other\"\n\"4635094\";\"Lafayette\";\"main\"\n\"4635130\";\"Lake City\";\"main\"\n\"4635233\";\"Lake Tansi\";\"main\"\n\"4635268\";\"Lakeland\";\"main\"\n\"4635304\";\"Lakesite\";\"main\"\n\"4635340\";\"Lakewood\";\"main\"\n\"4635340\";\"Lejkvud\";\"other\"\n\"4635340\";\"Лейквуд\";\"other\"\n\"4635849\";\"Lawrenceburg\";\"main\"\n\"4636045\";\"Lebanon\";\"main\"\n\"4636285\";\"Lenoir City\";\"main\"\n\"4636442\";\"Lewisburg\";\"main\"\n\"4636463\";\"Lexington\";\"main\"\n\"4636463\";\"Leksington\";\"other\"\n\"4636463\";\"Лексингтон\";\"other\"\n\"4637626\";\"Livingston\";\"main\"\n\"4637626\";\"Ливингстон\";\"other\"\n\"4638144\";\"Lookout Mountain\";\"main\"\n\"4638201\";\"Loretto\";\"main\"\n\"4638278\";\"Loudon\";\"main\"\n\"4638308\";\"Louisville\";\"main\"\n\"4638308\";\"Luisvil\";\"other\"\n\"4638308\";\"Луисвил\";\"other\"\n\"4638782\";\"Lynchburg\";\"main\"\n\"4639072\";\"Madisonville\";\"main\"\n\"4639224\";\"Manchester\";\"main\"\n\"4639224\";\"Манчестер\";\"other\"\n\"4639684\";\"Martin\";\"main\"\n\"4639848\";\"Maryville\";\"main\"\n\"4639859\";\"Mascot\";\"main\"\n\"4639871\";\"Mason\";\"main\"\n\"4639871\";\"Mejson\";\"other\"\n\"4639871\";\"Мейсон\";\"other\"\n\"4640160\";\"Maynardville\";\"main\"\n\"4640569\";\"McEwen\";\"main\"\n\"4640736\";\"McKenzie\";\"main\"\n\"4640882\";\"McMinnville\";\"main\"\n\"4641239\";\"Memphis\";\"main\"\n\"4641239\";\"Memfis\";\"other\"\n\"4641239\";\"Memphis Tennesiae\";\"other\"\n\"4641239\";\"Menfis\";\"other\"\n\"4641239\";\"mempisi\";\"other\"\n\"4641239\";\"menfisu\";\"other\"\n\"4641239\";\"mmpys\";\"other\"\n\"4641239\";\"mymfys\";\"other\"\n\"4641239\";\"Мемфис\";\"other\"\n\"4641239\";\"ממפיס\";\"other\"\n\"4641239\";\"ميمفيس\";\"other\"\n\"4641239\";\"მემფისი\";\"other\"\n\"4641239\";\"メンフィス\";\"other\"\n\"4641495\";\"Middle Valley\";\"main\"\n\"4641562\";\"Midway\";\"main\"\n\"4641586\";\"Midtown\";\"main\"\n\"4641630\";\"Milan\";\"main\"\n\"4641974\";\"Millersville\";\"main\"\n\"4641998\";\"Millington\";\"main\"\n\"4642403\";\"Monteagle\";\"main\"\n\"4642410\";\"Monterey\";\"main\"\n\"4642410\";\"Monterej\";\"other\"\n\"4642410\";\"Монтерей\";\"other\"\n\"4642938\";\"Morristown\";\"main\"\n\"4643005\";\"Mosheim\";\"main\"\n\"4643150\";\"Mount Carmel\";\"main\"\n\"4643153\";\"Mount Carmel\";\"main\"\n\"4643153\";\"Karmel'\";\"other\"\n\"4643153\";\"Кармель\";\"other\"\n\"4643336\";\"Mount Juliet\";\"main\"\n\"4643578\";\"Mount Pleasant\";\"main\"\n\"4643953\";\"Mountain City\";\"main\"\n\"4644282\";\"Munford\";\"main\"\n\"4644312\";\"Murfreesboro\";\"main\"\n\"4644312\";\"Merfrisboro\";\"other\"\n\"4644312\";\"Мерфрисборо\";\"other\"\n\"4644585\";\"Nashville\";\"main\"\n\"4644585\";\"Nasburgum\";\"other\"\n\"4644585\";\"Nashvil\";\"other\"\n\"4644585\";\"Nashvill\";\"other\"\n\"4644585\";\"Nehshvill\";\"other\"\n\"4644585\";\"na shen wei er\";\"other\"\n\"4644585\";\"naesyubil\";\"other\"\n\"4644585\";\"nashfyl\";\"other\"\n\"4644585\";\"nasshubiru\";\"other\"\n\"4644585\";\"neshvili\";\"other\"\n\"4644585\";\"nshwyl\";\"other\"\n\"4644585\";\"Нашвил\";\"other\"\n\"4644585\";\"Нашвилл\";\"other\"\n\"4644585\";\"Нэшвилл\";\"other\"\n\"4644585\";\"נאשוויל\";\"other\"\n\"4644585\";\"ناشفيل\";\"other\"\n\"4644585\";\"نشویل\";\"other\"\n\"4644585\";\"ნეშვილი\";\"other\"\n\"4644585\";\"ナッシュビル\";\"other\"\n\"4644585\";\"纳什维尔\";\"other\"\n\"4644585\";\"내슈빌\";\"other\"\n\"4645099\";\"New Hope\";\"main\"\n\"4645255\";\"New Johnsonville\";\"main\"\n\"4645293\";\"New Market\";\"main\"\n\"4645421\";\"New South Memphis\";\"main\"\n\"4645422\";\"New Tazewell\";\"main\"\n\"4645498\";\"Newbern\";\"main\"\n\"4645532\";\"Newport\";\"main\"\n\"4645532\";\"N'juport\";\"other\"\n\"4645532\";\"Ньюпорт\";\"other\"\n\"4645738\";\"Nolensville\";\"main\"\n\"4645799\";\"Norris\";\"main\"\n\"4646335\";\"Oak Grove\";\"main\"\n\"4646498\";\"Oak Hill\";\"main\"\n\"4646571\";\"Oak Ridge\";\"main\"\n\"4646637\";\"Oakland\";\"main\"\n\"4646637\";\"Oklend\";\"other\"\n\"4646637\";\"Окленд\";\"other\"\n\"4646772\";\"Obion\";\"main\"\n\"4647282\";\"Oliver Springs\";\"main\"\n\"4647287\";\"Oneida\";\"main\"\n\"4647313\";\"Ooltewah\";\"main\"\n\"4647963\";\"Paris\";\"main\"\n\"4647963\";\"Parizh\";\"other\"\n\"4647963\";\"Париж\";\"other\"\n\"4648217\";\"Parsons\";\"main\"\n\"4648637\";\"Pegram\";\"main\"\n\"4649251\";\"Pigeon Forge\";\"main\"\n\"4649295\";\"Pikeville\";\"main\"\n\"4649400\";\"Pine Crest\";\"main\"\n\"4649401\";\"Pine Crest\";\"main\"\n\"4649905\";\"Plainview\";\"main\"\n\"4650295\";\"Pleasant View\";\"main\"\n\"4650946\";\"Portland\";\"main\"\n\"4650946\";\"Portlend\";\"other\"\n\"4650946\";\"Портленд\";\"other\"\n\"4651214\";\"Powells Crossroads\";\"main\"\n\"4651648\";\"Pulaski\";\"main\"\n\"4652341\";\"Red Bank\";\"main\"\n\"4652359\";\"Red Boiling Springs\";\"main\"\n\"4653091\";\"Ridgely\";\"main\"\n\"4653098\";\"Ridgetop\";\"main\"\n\"4653228\";\"Ripley\";\"main\"\n\"4653451\";\"Roan Mountain\";\"main\"\n\"4653999\";\"Rockwood\";\"main\"\n\"4654293\";\"Rogersville\";\"main\"\n\"4654793\";\"Rural Hill\";\"main\"\n\"4654953\";\"Rutherford\";\"main\"\n\"4654984\";\"Rutledge\";\"main\"\n\"4656006\";\"Savannah\";\"main\"\n\"4656006\";\"Savanna\";\"other\"\n\"4656006\";\"Саванна\";\"other\"\n\"4656442\";\"Selmer\";\"main\"\n\"4656585\";\"Sevierville\";\"main\"\n\"4656589\";\"Sewanee\";\"main\"\n\"4656630\";\"Seymour\";\"main\"\n\"4657077\";\"Shelbyville\";\"main\"\n\"4657633\";\"Signal Mountain\";\"main\"\n\"4658541\";\"Smithville\";\"main\"\n\"4658590\";\"Smyrna\";\"main\"\n\"4658590\";\"Smirna\";\"other\"\n\"4658590\";\"Смирна\";\"other\"\n\"4658683\";\"Sneedville\";\"main\"\n\"4658766\";\"Soddy-Daisy\";\"main\"\n\"4658802\";\"Somerville\";\"main\"\n\"4658841\";\"South Carthage\";\"main\"\n\"4658861\";\"South Cleveland\";\"main\"\n\"4658948\";\"South Fulton\";\"main\"\n\"4659005\";\"South Pittsburg\";\"main\"\n\"4659177\";\"Sparta\";\"main\"\n\"4659233\";\"Spencer\";\"main\"\n\"4659350\";\"Spring City\";\"main\"\n\"4659446\";\"Spring Hill\";\"main\"\n\"4659446\";\"Spring-Khill\";\"other\"\n\"4659446\";\"Спринг-Хилл\";\"other\"\n\"4659557\";\"Springfield\";\"main\"\n\"4659557\";\"Springfild\";\"other\"\n\"4659557\";\"Спрингфилд\";\"other\"\n\"4659625\";\"Spurgeon\";\"main\"\n\"4661150\";\"Surgoinsville\";\"main\"\n\"4661331\";\"Sweetwater\";\"main\"\n\"4661964\";\"Tazewell\";\"main\"\n\"4662170\";\"Tennessee Ridge\";\"main\"\n\"4662519\";\"Thompson's Station\";\"main\"\n\"4662587\";\"Three Way\";\"main\"\n\"4662809\";\"Tiptonville\";\"main\"\n\"4663110\";\"Tracy City\";\"main\"\n\"4663205\";\"Trenton\";\"main\"\n\"4663205\";\"Трентон\";\"other\"\n\"4663367\";\"Troy\";\"main\"\n\"4663367\";\"Troja\";\"other\"\n\"4663367\";\"Троя\";\"other\"\n\"4663494\";\"Tullahoma\";\"main\"\n\"4663737\";\"Tusculum\";\"main\"\n\"4663928\";\"Unicoi\";\"main\"\n\"4664170\";\"Union City\";\"main\"\n\"4664170\";\"Junion-Siti\";\"other\"\n\"4664170\";\"Юнион-Сити\";\"other\"\n\"4664815\";\"Vonore\";\"main\"\n\"4665312\";\"Walden\";\"main\"\n\"4665680\";\"Walnut Hill\";\"main\"\n\"4665727\";\"Walterhill\";\"main\"\n\"4666102\";\"Watertown\";\"main\"\n\"4666202\";\"Waverly\";\"main\"\n\"4666247\";\"Waynesboro\";\"main\"\n\"4666960\";\"Westmoreland\";\"main\"\n\"4667165\";\"White Bluff\";\"main\"\n\"4667282\";\"White House\";\"main\"\n\"4667339\";\"White Pine\";\"main\"\n\"4667530\";\"Whiteville\";\"main\"\n\"4667608\";\"Whitwell\";\"main\"\n\"4667757\";\"Wildwood Lake\";\"main\"\n\"4668336\";\"Winchester\";\"main\"\n\"4668717\";\"Woodbury\";\"main\"\n\"4668717\";\"Vudbari\";\"other\"\n\"4668717\";\"Вудбари\";\"other\"\n\"4669635\";\"Abilene\";\"main\"\n\"4669635\";\"Abilin\";\"other\"\n\"4669635\";\"a bi lin\";\"other\"\n\"4669635\";\"Абилин\";\"other\"\n\"4669635\";\"阿比林\";\"other\"\n\"4669828\";\"Addison\";\"main\"\n\"4670029\";\"Alamo Heights\";\"main\"\n\"4670074\";\"Alamo\";\"main\"\n\"4670094\";\"Albany\";\"main\"\n\"4670094\";\"Olbani\";\"other\"\n\"4670094\";\"Олбани\";\"other\"\n\"4670146\";\"Aldine\";\"main\"\n\"4670165\";\"Aledo\";\"main\"\n\"4670234\";\"Alice\";\"main\"\n\"4670300\";\"Allen\";\"main\"\n\"4670300\";\"Аллен\";\"other\"\n\"4670527\";\"Alto\";\"main\"\n\"4670555\";\"Alton\";\"main\"\n\"4670562\";\"Alton North  (historical)\";\"main\"\n\"4670582\";\"Alvarado\";\"main\"\n\"4670592\";\"Alvin\";\"main\"\n\"4670592\";\"Ehlvin\";\"other\"\n\"4670592\";\"Элвин\";\"other\"\n\"4670605\";\"Alvord\";\"main\"\n\"4670666\";\"Ames\";\"main\"\n\"4670667\";\"Ames\";\"main\"\n\"4670707\";\"Anahuac\";\"main\"\n\"4670783\";\"Anderson Mill\";\"main\"\n\"4670866\";\"Angleton\";\"main\"\n\"4670871\";\"Anna\";\"main\"\n\"4670886\";\"Annetta\";\"main\"\n\"4670901\";\"Anson\";\"main\"\n\"4671141\";\"Aransas Pass\";\"main\"\n\"4671174\";\"Archer City\";\"main\"\n\"4671193\";\"Arcola\";\"main\"\n\"4671212\";\"Argyle\";\"main\"\n\"4671240\";\"Arlington\";\"main\"\n\"4671240\";\"Arlingt\\\"n\";\"other\"\n\"4671240\";\"arinton\";\"other\"\n\"4671240\";\"Арлингтън\";\"other\"\n\"4671240\";\"アーリントン\";\"other\"\n\"4671461\";\"Asherton\";\"main\"\n\"4671524\";\"Atascocita\";\"main\"\n\"4671545\";\"Athens\";\"main\"\n\"4671576\";\"Atlanta\";\"main\"\n\"4671576\";\"Атланта\";\"other\"\n\"4671620\";\"Aubrey\";\"main\"\n\"4671650\";\"Aurora\";\"main\"\n\"4671650\";\"Avrora\";\"other\"\n\"4671650\";\"Аврора\";\"other\"\n\"4671654\";\"Austin\";\"main\"\n\"4671654\";\"Austino\";\"other\"\n\"4671654\";\"Aŭstino\";\"other\"\n\"4671654\";\"Ostin\";\"other\"\n\"4671654\";\"ao si ting\";\"other\"\n\"4671654\";\"austina\";\"other\"\n\"4671654\";\"osutin\";\"other\"\n\"4671654\";\"Ώστιν\";\"other\"\n\"4671654\";\"Остин\";\"other\"\n\"4671654\";\"אוסטין\";\"other\"\n\"4671654\";\"औस्टिन\";\"other\"\n\"4671654\";\"オースティン\";\"other\"\n\"4671654\";\"奧斯汀\";\"other\"\n\"4671800\";\"Azle\";\"main\"\n\"4671895\";\"Bacliff\";\"main\"\n\"4671988\";\"Baird\";\"main\"\n\"4672059\";\"Balch Springs\";\"main\"\n\"4672081\";\"Balcones Heights\";\"main\"\n\"4672145\";\"Ballinger\";\"main\"\n\"4672171\";\"Bandera\";\"main\"\n\"4672192\";\"Bangs\";\"main\"\n\"4672422\";\"Barrett\";\"main\"\n\"4672479\";\"Bartlett\";\"main\"\n\"4672479\";\"Бартлетт\";\"other\"\n\"4672494\";\"Barton Creek\";\"main\"\n\"4672514\";\"Bartonville\";\"main\"\n\"4672576\";\"Bastrop\";\"main\"\n\"4672600\";\"Batesville\";\"main\"\n\"4672731\";\"Baytown\";\"main\"\n\"4672757\";\"Beach City\";\"main\"\n\"4672760\";\"Bayou Vista\";\"main\"\n\"4672989\";\"Beaumont\";\"main\"\n\"4673094\";\"Bedford\";\"main\"\n\"4673094\";\"Бедфорд\";\"other\"\n\"4673258\";\"Beeville\";\"main\"\n\"4673353\";\"Bellaire\";\"main\"\n\"4673389\";\"Bellmead\";\"main\"\n\"4673390\";\"Bells\";\"main\"\n\"4673398\";\"Bellville\";\"main\"\n\"4673425\";\"Belton\";\"main\"\n\"4673425\";\"Белтон\";\"other\"\n\"4673475\";\"Benavides\";\"main\"\n\"4673482\";\"Benbrook\";\"main\"\n\"4673677\";\"Bertram\";\"main\"\n\"4674001\";\"Beverly\";\"main\"\n\"4674006\";\"Beverly Hills\";\"main\"\n\"4674006\";\"Bevurli Khils\";\"other\"\n\"4674006\";\"Бевърли Хилс\";\"other\"\n\"4674015\";\"Bevil Oaks\";\"main\"\n\"4674337\";\"Big Sandy\";\"main\"\n\"4674593\";\"Bishop\";\"main\"\n\"4674911\";\"Blanco\";\"main\"\n\"4675057\";\"Bloomington\";\"main\"\n\"4675057\";\"Blumington\";\"other\"\n\"4675057\";\"Блумингтон\";\"other\"\n\"4675059\";\"Blossom\";\"main\"\n\"4675080\";\"Blue Berry Hill\";\"main\"\n\"4675146\";\"Blue Mound\";\"main\"\n\"4675373\";\"Boerne\";\"main\"\n\"4675398\";\"Bogata\";\"main\"\n\"4675536\";\"Bolivar Peninsula\";\"main\"\n\"4675577\";\"Bonham\";\"main\"\n\"4675803\";\"Bowie\";\"main\"\n\"4675803\";\"Boui\";\"other\"\n\"4675803\";\"Боуи\";\"other\"\n\"4675929\";\"Boyd\";\"main\"\n\"4676032\";\"Brady\";\"main\"\n\"4676131\";\"Brazoria\";\"main\"\n\"4676181\";\"Breckenridge\";\"main\"\n\"4676206\";\"Brenham\";\"main\"\n\"4676266\";\"Briar\";\"main\"\n\"4676316\";\"Bridge City\";\"main\"\n\"4676327\";\"Bridgeport\";\"main\"\n\"4676571\";\"Brookshire\";\"main\"\n\"4676580\";\"Brookside Village\";\"main\"\n\"4676740\";\"Brownsville\";\"main\"\n\"4676794\";\"Bruceville-Eddy\";\"main\"\n\"4676798\";\"Brownwood\";\"main\"\n\"4676920\";\"Brushy Creek\";\"main\"\n\"4677008\";\"Bryan\";\"main\"\n\"4677042\";\"Buchanan Dam\";\"main\"\n\"4677230\";\"Buffalo\";\"main\"\n\"4677230\";\"Буффало\";\"other\"\n\"4677344\";\"Bullard\";\"main\"\n\"4677392\";\"Bulverde\";\"main\"\n\"4677412\";\"Buna\";\"main\"\n\"4677432\";\"Bunker Hill Village\";\"main\"\n\"4677526\";\"Burkburnett\";\"main\"\n\"4677551\";\"Burleson\";\"main\"\n\"4677551\";\"Burlesone\";\"other\"\n\"4677551\";\"Бурлесоне\";\"other\"\n\"4677592\";\"Burnet\";\"main\"\n\"4677979\";\"Cactus\";\"main\"\n\"4678005\";\"Caddo Mills\";\"main\"\n\"4678111\";\"Caldwell\";\"main\"\n\"4678111\";\"Kolduehll\";\"other\"\n\"4678111\";\"Колдуэлл\";\"other\"\n\"4678322\";\"Calvert\";\"main\"\n\"4678357\";\"Cameron\";\"main\"\n\"4678379\";\"Cameron Park\";\"main\"\n\"4678565\";\"Camp Swift\";\"main\"\n\"4678858\";\"Canton\";\"main\"\n\"4678901\";\"Canyon Lake\";\"main\"\n\"4679148\";\"Carrizo Springs\";\"main\"\n\"4679195\";\"Carrollton\";\"main\"\n\"4679272\";\"Carthage\";\"main\"\n\"4679437\";\"Castle Hills\";\"main\"\n\"4679459\";\"Castroville\";\"main\"\n\"4679803\";\"Cedar Hill\";\"main\"\n\"4679867\";\"Cedar Park\";\"main\"\n\"4679944\";\"Celina\";\"main\"\n\"4679987\";\"Center\";\"main\"\n\"4679988\";\"Center\";\"main\"\n\"4680165\";\"Central Gardens\";\"main\"\n\"4680258\";\"César Chávez\";\"main\"\n\"4680258\";\"Cesar Chavez\";\"ascii\"\n\"4680369\";\"Chandler\";\"main\"\n\"4680369\";\"Чандлер\";\"other\"\n\"4680388\";\"Channelview\";\"main\"\n\"4680560\";\"Charlotte\";\"main\"\n\"4680560\";\"Sharlott\";\"other\"\n\"4680560\";\"Шарлотт\";\"other\"\n\"4680702\";\"Chico\";\"main\"\n\"4680702\";\"Chiko\";\"other\"\n\"4680702\";\"Чико\";\"other\"\n\"4680774\";\"China\";\"main\"\n\"4680782\";\"China Grove\";\"main\"\n\"4681462\";\"Cibolo\";\"main\"\n\"4681485\";\"Cinco Ranch\";\"main\"\n\"4681521\";\"Cisco\";\"main\"\n\"4681542\";\"Citrus City\";\"main\"\n\"4681758\";\"Clarksville\";\"main\"\n\"4681951\";\"Clear Lake Shores\";\"main\"\n\"4681976\";\"Cleburne\";\"main\"\n\"4682031\";\"Cleveland\";\"main\"\n\"4682032\";\"Cleveland\";\"main\"\n\"4682032\";\"Klivlend\";\"other\"\n\"4682032\";\"Кливленд\";\"other\"\n\"4682066\";\"Clifton\";\"main\"\n\"4682066\";\"Klifton\";\"other\"\n\"4682066\";\"Клифтон\";\"other\"\n\"4682127\";\"Cloverleaf\";\"main\"\n\"4682163\";\"Clute\";\"main\"\n\"4682169\";\"Clyde\";\"main\"\n\"4682251\";\"Cockrell Hill\";\"main\"\n\"4682380\";\"Coleman\";\"main\"\n\"4682464\";\"College Station\";\"main\"\n\"4682478\";\"Colleyville\";\"main\"\n\"4682536\";\"Collinsville\";\"main\"\n\"4682536\";\"Kollinsvil'\";\"other\"\n\"4682536\";\"Коллинсвиль\";\"other\"\n\"4682665\";\"Columbus\";\"main\"\n\"4682665\";\"Kolumbus\";\"other\"\n\"4682665\";\"Колумбус\";\"other\"\n\"4682698\";\"Comanche\";\"main\"\n\"4682742\";\"Combes\";\"main\"\n\"4682745\";\"Combine\";\"main\"\n\"4682748\";\"Comfort\";\"main\"\n\"4682762\";\"Commerce\";\"main\"\n\"4682991\";\"Conroe\";\"main\"\n\"4683021\";\"Converse\";\"main\"\n\"4683141\";\"Cooper\";\"main\"\n\"4683142\";\"Cooper\";\"main\"\n\"4683217\";\"Coppell\";\"main\"\n\"4683217\";\"Koppell\";\"other\"\n\"4683217\";\"Коппелл\";\"other\"\n\"4683230\";\"Copper Canyon\";\"main\"\n\"4683244\";\"Copperas Cove\";\"main\"\n\"4683317\";\"Corinth\";\"main\"\n\"4683416\";\"Corpus Christi\";\"main\"\n\"4683416\";\"Korpus-Kristi\";\"other\"\n\"4683416\";\"kopasukurisuti\";\"other\"\n\"4683416\";\"Корпус-Кристи\";\"other\"\n\"4683416\";\"コーパスクリスティ\";\"other\"\n\"4683453\";\"Corrigan\";\"main\"\n\"4683462\";\"Corsicana\";\"main\"\n\"4683689\";\"Cottonwood Shores\";\"main\"\n\"4683696\";\"Cotulla\";\"main\"\n\"4684056\";\"Crandall\";\"main\"\n\"4684218\";\"Crockett\";\"main\"\n\"4684301\";\"Crosby\";\"main\"\n\"4684330\";\"Cross Mountain\";\"main\"\n\"4684332\";\"Cross Plains\";\"main\"\n\"4684431\";\"Crowell\";\"main\"\n\"4684434\";\"Crowley\";\"main\"\n\"4684480\";\"Crystal City\";\"main\"\n\"4684547\";\"Cuero\";\"main\"\n\"4684698\";\"Cut and Shoot\";\"main\"\n\"4684858\";\"Daingerfield\";\"main\"\n\"4684867\";\"Daisetta\";\"main\"\n\"4684888\";\"Dallas\";\"main\"\n\"4684888\";\"Dalas\";\"other\"\n\"4684888\";\"Ntalas\";\"other\"\n\"4684888\";\"da la si\";\"other\"\n\"4684888\";\"dalas\";\"other\"\n\"4684888\";\"dalasa\";\"other\"\n\"4684888\";\"dallas\";\"other\"\n\"4684888\";\"darasu\";\"other\"\n\"4684888\";\"Ντάλας\";\"other\"\n\"4684888\";\"Далас\";\"other\"\n\"4684888\";\"Даллас\";\"other\"\n\"4684888\";\"דאלאס\";\"other\"\n\"4684888\";\"دالاس\";\"other\"\n\"4684888\";\"داللاس\";\"other\"\n\"4684888\";\"डालास\";\"other\"\n\"4684888\";\"ダラス\";\"other\"\n\"4684888\";\"達拉斯\";\"other\"\n\"4684955\";\"Dalworthington Gardens\";\"main\"\n\"4685160\";\"Danbury\";\"main\"\n\"4685449\";\"Dayton\";\"main\"\n\"4685449\";\"Dejton\";\"other\"\n\"4685449\";\"Дейтон\";\"other\"\n\"4685467\";\"De Kalb\";\"main\"\n\"4685478\";\"De Leon\";\"main\"\n\"4685515\";\"DeCordova\";\"main\"\n\"4685524\";\"DeSoto\";\"main\"\n\"4685524\";\"Soto\";\"other\"\n\"4685524\";\"Сото\";\"other\"\n\"4685617\";\"Decatur\";\"main\"\n\"4685617\";\"Dekejter\";\"other\"\n\"4685617\";\"Декейтер\";\"other\"\n\"4685737\";\"Deer Park\";\"main\"\n\"4685892\";\"Denison\";\"main\"\n\"4685892\";\"Денисон\";\"other\"\n\"4685907\";\"Denton\";\"main\"\n\"4685907\";\"Dentono\";\"other\"\n\"4685907\";\"dentana\";\"other\"\n\"4685907\";\"ডেন্টন\";\"other\"\n\"4686085\";\"Deweyville\";\"main\"\n\"4686131\";\"Diboll\";\"main\"\n\"4686163\";\"Dickinson\";\"main\"\n\"4686472\";\"Doffing\";\"main\"\n\"4686593\";\"Donna\";\"main\"\n\"4686621\";\"Doolittle\";\"main\"\n\"4686709\";\"Double Oak\";\"main\"\n\"4686903\";\"Dripping Springs\";\"main\"\n\"4687151\";\"Dublin\";\"main\"\n\"4687151\";\"Дублин\";\"other\"\n\"4687331\";\"Duncanville\";\"main\"\n\"4687579\";\"Eagle Lake\";\"main\"\n\"4687588\";\"Eagle Mountain\";\"main\"\n\"4687635\";\"Early\";\"main\"\n\"4687678\";\"East Bernard\";\"main\"\n\"4688071\";\"Eastland\";\"main\"\n\"4688216\";\"Edcouch\";\"main\"\n\"4688222\";\"Eden\";\"main\"\n\"4688248\";\"Edgecliff Village\";\"main\"\n\"4688254\";\"Edgewood\";\"main\"\n\"4688275\";\"Edinburg\";\"main\"\n\"4688275\";\"Ehdinburg\";\"other\"\n\"4688275\";\"Эдинбург\";\"other\"\n\"4688506\";\"El Campo\";\"main\"\n\"4688520\";\"El Cenizo\";\"main\"\n\"4688582\";\"El Lago\";\"main\"\n\"4688739\";\"Electra\";\"main\"\n\"4688756\";\"Elgin\";\"main\"\n\"4688795\";\"Elkhart\";\"main\"\n\"4688795\";\"Ehlkkhart\";\"other\"\n\"4688795\";\"Элкхарт\";\"other\"\n\"4689120\";\"Elsa\";\"main\"\n\"4689236\";\"Emory\";\"main\"\n\"4689240\";\"Encantada-Ranchito-El Calaboz\";\"main\"\n\"4689311\";\"Ennis\";\"main\"\n\"4689429\";\"Escobares\";\"main\"\n\"4689550\";\"Euless\";\"main\"\n\"4689569\";\"Evadale\";\"main\"\n\"4689708\";\"Everman\";\"main\"\n\"4689803\";\"Fair Oaks Ranch\";\"main\"\n\"4689837\";\"Fairfield\";\"main\"\n\"4689837\";\"Feurfild\";\"other\"\n\"4689837\";\"Феърфилд\";\"other\"\n\"4689871\";\"Fairview\";\"main\"\n\"4690070\";\"Falfurrias\";\"main\"\n\"4690198\";\"Farmers Branch\";\"main\"\n\"4690218\";\"Farmersville\";\"main\"\n\"4690257\";\"Fate\";\"main\"\n\"4690428\";\"Ferris\";\"main\"\n\"4690506\";\"Fifth Street\";\"main\"\n\"4691441\";\"Flatonia\";\"main\"\n\"4691524\";\"Florence\";\"main\"\n\"4691524\";\"Florencija\";\"other\"\n\"4691524\";\"Флоренция\";\"other\"\n\"4691553\";\"Floresville\";\"main\"\n\"4691585\";\"Flower Mound\";\"main\"\n\"4691766\";\"Forest Hill\";\"main\"\n\"4691833\";\"Forney\";\"main\"\n\"4691930\";\"Fort Worth\";\"main\"\n\"4691930\";\"Fort Uurt\";\"other\"\n\"4691930\";\"Fort-Uehrt\";\"other\"\n\"4691930\";\"fotowasu\";\"other\"\n\"4691930\";\"pwrt wwrt'\";\"other\"\n\"4691930\";\"wo si bao\";\"other\"\n\"4691930\";\"Форт Уърт\";\"other\"\n\"4691930\";\"Форт-Уэрт\";\"other\"\n\"4691930\";\"פורט וורת'\";\"other\"\n\"4691930\";\"フォートワース\";\"other\"\n\"4691930\";\"沃斯堡\";\"other\"\n\"4692193\";\"Franklin\";\"main\"\n\"4692193\";\"Франклин\";\"other\"\n\"4692252\";\"Frankston\";\"main\"\n\"4692279\";\"Fredericksburg\";\"main\"\n\"4692279\";\"Frederiksburg\";\"other\"\n\"4692279\";\"Фредериксбург\";\"other\"\n\"4692355\";\"Freeport\";\"main\"\n\"4692359\";\"Freer\";\"main\"\n\"4692400\";\"Fresno\";\"main\"\n\"4692400\";\"Фресно\";\"other\"\n\"4692521\";\"Friendswood\";\"main\"\n\"4692559\";\"Frisco\";\"main\"\n\"4692658\";\"Fulshear\";\"main\"\n\"4692661\";\"Fulton\";\"main\"\n\"4692746\";\"Gainesville\";\"main\"\n\"4692771\";\"Galena Park\";\"main\"\n\"4692883\";\"Galveston\";\"main\"\n\"4692883\";\"garubesuton\";\"other\"\n\"4692883\";\"Галвестон\";\"other\"\n\"4692883\";\"ガルベストン\";\"other\"\n\"4692898\";\"Ganado\";\"main\"\n\"4692919\";\"Garceno\";\"main\"\n\"4692962\";\"Garden Ridge\";\"main\"\n\"4692983\";\"Gardendale\";\"main\"\n\"4692997\";\"Garfield\";\"main\"\n\"4693003\";\"Garland\";\"main\"\n\"4693003\";\"Girljanda\";\"other\"\n\"4693003\";\"Гирлянда\";\"other\"\n\"4693150\";\"Gatesville\";\"main\"\n\"4693325\";\"George West\";\"main\"\n\"4693342\";\"Georgetown\";\"main\"\n\"4693472\";\"Giddings\";\"main\"\n\"4693569\";\"Gilmer\";\"main\"\n\"4693621\";\"Gladewater\";\"main\"\n\"4693696\";\"Glen Rose\";\"main\"\n\"4693726\";\"Glenn Heights\";\"main\"\n\"4693906\";\"Goldthwaite\";\"main\"\n\"4693921\";\"Goliad\";\"main\"\n\"4693940\";\"Gonzales\";\"main\"\n\"4694156\";\"Gorman\";\"main\"\n\"4694420\";\"Graham\";\"main\"\n\"4694459\";\"Granbury\";\"main\"\n\"4694482\";\"Grand Prairie\";\"main\"\n\"4694488\";\"Grand Saline\";\"main\"\n\"4694503\";\"Grandview\";\"main\"\n\"4694521\";\"Granger\";\"main\"\n\"4694535\";\"Granite Shoals\";\"main\"\n\"4694562\";\"Grapeland\";\"main\"\n\"4694568\";\"Grapevine\";\"main\"\n\"4694896\";\"Greatwood\";\"main\"\n\"4695066\";\"Greenville\";\"main\"\n\"4695066\";\"Grinvill\";\"other\"\n\"4695066\";\"Гринвилл\";\"other\"\n\"4695155\";\"Gregory\";\"main\"\n\"4695270\";\"Groesbeck\";\"main\"\n\"4695317\";\"Groves\";\"main\"\n\"4695325\";\"Groveton\";\"main\"\n\"4695535\";\"Gun Barrel City\";\"main\"\n\"4695553\";\"Gunter\";\"main\"\n\"4695554\";\"Gunter\";\"main\"\n\"4695866\";\"Hallettsville\";\"main\"\n\"4695894\";\"Hallsville\";\"main\"\n\"4695912\";\"Haltom City\";\"main\"\n\"4695938\";\"Hamilton\";\"main\"\n\"4695938\";\"Gamil'ton\";\"other\"\n\"4695938\";\"Гамильтон\";\"other\"\n\"4696202\";\"Harker Heights\";\"main\"\n\"4696233\";\"Harlingen\";\"main\"\n\"4696233\";\"Kharlingen\";\"other\"\n\"4696233\";\"Харлинген\";\"other\"\n\"4696310\";\"Harper\";\"main\"\n\"4696593\";\"Haskell\";\"main\"\n\"4696605\";\"Haslet\";\"main\"\n\"4696686\";\"Hawkins\";\"main\"\n\"4696862\";\"Hearne\";\"main\"\n\"4696876\";\"Heath\";\"main\"\n\"4696922\";\"Hebbronville\";\"main\"\n\"4696924\";\"Hedwig Village\";\"main\"\n\"4696953\";\"Heidelberg\";\"main\"\n\"4697038\";\"Helotes\";\"main\"\n\"4697054\";\"Hemphill\";\"main\"\n\"4697060\";\"Hempstead\";\"main\"\n\"4697060\";\"Khempsted\";\"other\"\n\"4697060\";\"Хемпстед\";\"other\"\n\"4697128\";\"Henrietta\";\"main\"\n\"4697330\";\"Hewitt\";\"main\"\n\"4697379\";\"Hickory Creek\";\"main\"\n\"4697440\";\"Hico\";\"main\"\n\"4697442\";\"Hidalgo\";\"main\"\n\"4697485\";\"Hideaway\";\"main\"\n\"4697616\";\"Highland Park\";\"main\"\n\"4697616\";\"Khajlend Park\";\"other\"\n\"4697616\";\"Хайленд Парк\";\"other\"\n\"4697645\";\"Highland Village\";\"main\"\n\"4697652\";\"Highlands\";\"main\"\n\"4697744\";\"Hill Country Village\";\"main\"\n\"4697867\";\"Hillsboro\";\"main\"\n\"4697867\";\"Khillsboro\";\"other\"\n\"4697867\";\"Хиллсборо\";\"other\"\n\"4697988\";\"Hitchcock\";\"main\"\n\"4698241\";\"Holiday Lakes\";\"main\"\n\"4698254\";\"Holland\";\"main\"\n\"4698254\";\"Gollandija\";\"other\"\n\"4698254\";\"Голландия\";\"other\"\n\"4698296\";\"Holliday\";\"main\"\n\"4698384\";\"Hollywood Park\";\"main\"\n\"4698562\";\"Hondo\";\"main\"\n\"4698610\";\"Honey Grove\";\"main\"\n\"4698646\";\"Hooks\";\"main\"\n\"4698864\";\"Horseshoe Bay\";\"main\"\n\"4699066\";\"Houston\";\"main\"\n\"4699066\";\"Chiouston\";\"other\"\n\"4699066\";\"Hustonia\";\"other\"\n\"4699066\";\"Kh'juston\";\"other\"\n\"4699066\";\"Khjust\\\"n\";\"other\"\n\"4699066\";\"hiws tan\";\"other\"\n\"4699066\";\"hyustana\";\"other\"\n\"4699066\";\"hyusuton\";\"other\"\n\"4699066\";\"xiu si dun\";\"other\"\n\"4699066\";\"ywstwn\";\"other\"\n\"4699066\";\"Χιούστον\";\"other\"\n\"4699066\";\"Хьюстон\";\"other\"\n\"4699066\";\"Хюстън\";\"other\"\n\"4699066\";\"יוסטון\";\"other\"\n\"4699066\";\"ھيۇستون\";\"other\"\n\"4699066\";\"ह्युस्टन\";\"other\"\n\"4699066\";\"ฮิวสตัน\";\"other\"\n\"4699066\";\"ヒューストン\";\"other\"\n\"4699066\";\"休斯敦\";\"other\"\n\"4699204\";\"Howe\";\"main\"\n\"4699235\";\"Hubbard\";\"main\"\n\"4699302\";\"Hudson\";\"main\"\n\"4699302\";\"Gudzon\";\"other\"\n\"4699302\";\"Гудзон\";\"other\"\n\"4699303\";\"Hudson\";\"main\"\n\"4699304\";\"Hudson Bend\";\"main\"\n\"4699323\";\"Hudson Oaks\";\"main\"\n\"4699392\";\"Hughes Springs\";\"main\"\n\"4699442\";\"Humble\";\"main\"\n\"4699531\";\"Hunters Creek Village\";\"main\"\n\"4699533\";\"Huntington\";\"main\"\n\"4699533\";\"Khantington\";\"other\"\n\"4699533\";\"Хантингтон\";\"other\"\n\"4699540\";\"Huntsville\";\"main\"\n\"4699540\";\"Khantsvill\";\"other\"\n\"4699540\";\"Хантсвилл\";\"other\"\n\"4699575\";\"Hurst\";\"main\"\n\"4699575\";\"Kherst\";\"other\"\n\"4699575\";\"Херст\";\"other\"\n\"4699608\";\"Hutchins\";\"main\"\n\"4699626\";\"Hutto\";\"main\"\n\"4699938\";\"Indian Hills\";\"main\"\n\"4700024\";\"Inez\";\"main\"\n\"4700033\";\"Ingleside\";\"main\"\n\"4700044\";\"Ingram\";\"main\"\n\"4700122\";\"Iowa Park\";\"main\"\n\"4700168\";\"Irving\";\"main\"\n\"4700168\";\"Ирвинг\";\"other\"\n\"4700234\";\"Italy\";\"main\"\n\"4700235\";\"Itasca\";\"main\"\n\"4700401\";\"Jacinto City\";\"main\"\n\"4700455\";\"Jacksboro\";\"main\"\n\"4700550\";\"Jacksonville\";\"main\"\n\"4700550\";\"Dzheksonvill\";\"other\"\n\"4700550\";\"Джексонвилл\";\"other\"\n\"4700598\";\"Jamaica Beach\";\"main\"\n\"4700718\";\"Jarrell\";\"main\"\n\"4700731\";\"Jasper\";\"main\"\n\"4700817\";\"Jefferson\";\"main\"\n\"4700817\";\"Dzhefferson\";\"other\"\n\"4700817\";\"Джефферсон\";\"other\"\n\"4700967\";\"Jersey Village\";\"main\"\n\"4701346\";\"Johnson City\";\"main\"\n\"4701346\";\"Dzhonson Siti\";\"other\"\n\"4701346\";\"Джонсон Сити\";\"other\"\n\"4701458\";\"Jollyville\";\"main\"\n\"4701510\";\"Jones Creek\";\"main\"\n\"4701592\";\"Jonestown\";\"main\"\n\"4701659\";\"Joshua\";\"main\"\n\"4701686\";\"Jourdanton\";\"main\"\n\"4701791\";\"Junction\";\"main\"\n\"4701814\";\"Justin\";\"main\"\n\"4702664\";\"Karnes City\";\"main\"\n\"4702728\";\"Kaufman\";\"main\"\n\"4702732\";\"Katy\";\"main\"\n\"4702785\";\"Keene\";\"main\"\n\"4702828\";\"Keller\";\"main\"\n\"4702828\";\"Келлер\";\"other\"\n\"4702913\";\"Kemah\";\"main\"\n\"4702914\";\"Kemp\";\"main\"\n\"4702965\";\"Kenedy\";\"main\"\n\"4702986\";\"Kennedale\";\"main\"\n\"4702998\";\"Kempner\";\"main\"\n\"4703063\";\"Kerens\";\"main\"\n\"4703078\";\"Kerrville\";\"main\"\n\"4703199\";\"Kilgore\";\"main\"\n\"4703223\";\"Killeen\";\"main\"\n\"4703372\";\"Kingsland\";\"main\"\n\"4703384\";\"Kingsville\";\"main\"\n\"4703415\";\"Kirby\";\"main\"\n\"4703438\";\"Kirbyville\";\"main\"\n\"4703578\";\"Knox City\";\"main\"\n\"4703726\";\"Kountze\";\"main\"\n\"4703759\";\"Krugerville\";\"main\"\n\"4703760\";\"Krum\";\"main\"\n\"4703811\";\"Kyle\";\"main\"\n\"4703882\";\"La Blanca\";\"main\"\n\"4703925\";\"La Coste\";\"main\"\n\"4703938\";\"La Feria\";\"main\"\n\"4703958\";\"La Grange\";\"main\"\n\"4703965\";\"La Grulla\";\"main\"\n\"4703972\";\"La Homa\";\"main\"\n\"4703997\";\"La Joya\";\"main\"\n\"4704027\";\"La Marque\";\"main\"\n\"4704108\";\"La Porte\";\"main\"\n\"4704131\";\"La Pryor\";\"main\"\n\"4704133\";\"La Puerta\";\"main\"\n\"4704148\";\"La Rosita\";\"main\"\n\"4704180\";\"La Vernia\";\"main\"\n\"4704187\";\"La Victoria\";\"main\"\n\"4704188\";\"La Villa\";\"main\"\n\"4704238\";\"Lacy-Lakeview\";\"main\"\n\"4704276\";\"Lago Vista\";\"main\"\n\"4704298\";\"Laguna Heights\";\"main\"\n\"4704307\";\"Laguna Vista\";\"main\"\n\"4704395\";\"Lake Brownwood\";\"main\"\n\"4704482\";\"Lake Dallas\";\"main\"\n\"4704628\";\"Lake Jackson\";\"main\"\n\"4704655\";\"Lake Kiowa\";\"main\"\n\"4704931\";\"Lake Worth\";\"main\"\n\"4704940\";\"Lakehills\";\"main\"\n\"4704970\";\"Lakeside\";\"main\"\n\"4704979\";\"Lakeside City\";\"main\"\n\"4705041\";\"Lakeway\";\"main\"\n\"4705176\";\"Lampasas\";\"main\"\n\"4705191\";\"Lancaster\";\"main\"\n\"4705191\";\"Lankaster\";\"other\"\n\"4705191\";\"Ланкастер\";\"other\"\n\"4705341\";\"Laredo Ranchettes\";\"main\"\n\"4705349\";\"Laredo\";\"main\"\n\"4705349\";\"Ларедо\";\"other\"\n\"4705417\";\"Las Lomas\";\"main\"\n\"4705494\";\"Lasara\";\"main\"\n\"4705564\";\"Laureles\";\"main\"\n\"4705692\";\"League City\";\"main\"\n\"4705708\";\"Leander\";\"main\"\n\"4705923\";\"Leon Valley\";\"main\"\n\"4705943\";\"Leonard\";\"main\"\n\"4706057\";\"Lewisville\";\"main\"\n\"4706068\";\"Lexington\";\"main\"\n\"4706068\";\"Leksington\";\"other\"\n\"4706068\";\"Лексингтон\";\"other\"\n\"4706088\";\"Liberty\";\"main\"\n\"4706141\";\"Liberty City\";\"main\"\n\"4706161\";\"Liberty Hill\";\"main\"\n\"4706386\";\"Lindale\";\"main\"\n\"4706404\";\"Linden\";\"main\"\n\"4706404\";\"Линден\";\"other\"\n\"4706736\";\"Little Elm\";\"main\"\n\"4706919\";\"Little River-Academy\";\"main\"\n\"4707055\";\"Live Oak\";\"main\"\n\"4707173\";\"Livingston\";\"main\"\n\"4707173\";\"Ливингстон\";\"other\"\n\"4707191\";\"Llano\";\"main\"\n\"4707203\";\"Llano Grande\";\"main\"\n\"4707295\";\"Lockhart\";\"main\"\n\"4707479\";\"Lone Star\";\"main\"\n\"4707814\";\"Longview\";\"main\"\n\"4707859\";\"Lopezville\";\"main\"\n\"4707868\";\"Lorena\";\"main\"\n\"4707889\";\"Los Alvarez\";\"main\"\n\"4707932\";\"Los Fresnos\";\"main\"\n\"4707945\";\"Los Indios\";\"main\"\n\"4707996\";\"Los Villareales\";\"main\"\n\"4708016\";\"Lost Creek\";\"main\"\n\"4708089\";\"Louise\";\"main\"\n\"4708236\";\"Lowry Crossing\";\"main\"\n\"4708255\";\"Lucas\";\"main\"\n\"4708308\";\"Lufkin\";\"main\"\n\"4708320\";\"Luling\";\"main\"\n\"4708328\";\"Lumberton\";\"main\"\n\"4708403\";\"Lyford\";\"main\"\n\"4708477\";\"Lytle\";\"main\"\n\"4708535\";\"Mabank\";\"main\"\n\"4708703\";\"Madisonville\";\"main\"\n\"4708747\";\"Magnolia\";\"main\"\n\"4708877\";\"Malakoff\";\"main\"\n\"4708989\";\"Manor\";\"main\"\n\"4709013\";\"Mansfield\";\"main\"\n\"4709013\";\"Mehnsfild\";\"other\"\n\"4709013\";\"Мэнсфилд\";\"other\"\n\"4709027\";\"Manvel\";\"main\"\n\"4709090\";\"Marble Falls\";\"main\"\n\"4709161\";\"Marion\";\"main\"\n\"4709161\";\"Mehrion\";\"other\"\n\"4709161\";\"Мэрион\";\"other\"\n\"4709193\";\"Markham\";\"main\"\n\"4709215\";\"Marlin\";\"main\"\n\"4709272\";\"Marshall\";\"main\"\n\"4709272\";\"ma xie er\";\"other\"\n\"4709272\";\"marshal\";\"other\"\n\"4709272\";\"masharu\";\"other\"\n\"4709272\";\"Маршалл\";\"other\"\n\"4709272\";\"مارشال\";\"other\"\n\"4709272\";\"マーシャル\";\"other\"\n\"4709272\";\"马歇尔\";\"other\"\n\"4709320\";\"Mart\";\"main\"\n\"4709410\";\"Martindale\";\"main\"\n\"4709501\";\"Mason\";\"main\"\n\"4709501\";\"Mejson\";\"other\"\n\"4709501\";\"Мейсон\";\"other\"\n\"4709615\";\"Mathis\";\"main\"\n\"4709652\";\"Maud\";\"main\"\n\"4709663\";\"Mauriceville\";\"main\"\n\"4709796\";\"McAllen\";\"main\"\n\"4710129\";\"McGregor\";\"main\"\n\"4710178\";\"McKinney\";\"main\"\n\"4710317\";\"McQueeney\";\"main\"\n\"4710414\";\"Meadowlakes\";\"main\"\n\"4710433\";\"Meadows Place\";\"main\"\n\"4710484\";\"Medina\";\"main\"\n\"4710484\";\"Медина\";\"other\"\n\"4710485\";\"Medina\";\"main\"\n\"4710574\";\"Melissa\";\"main\"\n\"4710697\";\"Menard\";\"main\"\n\"4710749\";\"Mercedes\";\"main\"\n\"4710782\";\"Meridian\";\"main\"\n\"4710782\";\"Меридиан\";\"other\"\n\"4710826\";\"Mesquite\";\"main\"\n\"4710963\";\"Mexia\";\"main\"\n\"4711156\";\"Midlothian\";\"main\"\n\"4711212\";\"Midway North\";\"main\"\n\"4711221\";\"Midway South\";\"main\"\n\"4711253\";\"Mila Doce\";\"main\"\n\"4711255\";\"Milam\";\"main\"\n\"4711628\";\"Mineola\";\"main\"\n\"4711647\";\"Mineral Wells\";\"main\"\n\"4711725\";\"Mission\";\"main\"\n\"4711725\";\"Missija\";\"other\"\n\"4711725\";\"Миссия\";\"other\"\n\"4711729\";\"Mission Bend\";\"main\"\n\"4711801\";\"Missouri City\";\"main\"\n\"4711967\";\"Mont Belvieu\";\"main\"\n\"4711991\";\"Monte Alto\";\"main\"\n\"4712097\";\"Moody\";\"main\"\n\"4712319\";\"Morgans Point Resort\";\"main\"\n\"4712933\";\"Mount Pleasant\";\"main\"\n\"4713032\";\"Mount Vernon\";\"main\"\n\"4713351\";\"Muenster\";\"main\"\n\"4713452\";\"Munday\";\"main\"\n\"4713474\";\"Muniz\";\"main\"\n\"4713507\";\"Murphy\";\"main\"\n\"4713735\";\"Nacogdoches\";\"main\"\n\"4713782\";\"Naples\";\"main\"\n\"4713782\";\"Neapol'\";\"other\"\n\"4713782\";\"Неаполь\";\"other\"\n\"4713800\";\"Nash\";\"main\"\n\"4713805\";\"Nash\";\"main\"\n\"4713813\";\"Nassau Bay\";\"main\"\n\"4713866\";\"Navasota\";\"main\"\n\"4713932\";\"Nederland\";\"main\"\n\"4713946\";\"Needville\";\"main\"\n\"4714126\";\"New Boston\";\"main\"\n\"4714131\";\"New Braunfels\";\"main\"\n\"4714570\";\"New Summerfield\";\"main\"\n\"4714582\";\"New Territory\";\"main\"\n\"4714660\";\"Newark\";\"main\"\n\"4714660\";\"N'juark\";\"other\"\n\"4714660\";\"Ньюарк\";\"other\"\n\"4714713\";\"Newton\";\"main\"\n\"4714713\";\"N'juton\";\"other\"\n\"4714713\";\"Ньютон\";\"other\"\n\"4714829\";\"Nixon\";\"main\"\n\"4714865\";\"Nocona\";\"main\"\n\"4714895\";\"Nolanville\";\"main\"\n\"4714990\";\"North Alamo\";\"main\"\n\"4715101\";\"North Escobares\";\"main\"\n\"4715292\";\"North Richland Hills\";\"main\"\n\"4715410\";\"Northcliff\";\"main\"\n\"4715411\";\"Northcrest\";\"main\"\n\"4715447\";\"Northlake\";\"main\"\n\"4715696\";\"Nurillo\";\"main\"\n\"4715915\";\"Oak Leaf\";\"main\"\n\"4715931\";\"Oak Point\";\"main\"\n\"4715944\";\"Oak Ridge North\";\"main\"\n\"4715957\";\"Oak Trail Shores\";\"main\"\n\"4716128\";\"Odem\";\"main\"\n\"4716479\";\"Old River-Winfree\";\"main\"\n\"4716599\";\"Olivarez\";\"main\"\n\"4716655\";\"Olmito\";\"main\"\n\"4716676\";\"Olmos Park\";\"main\"\n\"4716683\";\"Olney\";\"main\"\n\"4716683\";\"Olni\";\"other\"\n\"4716683\";\"Олни\";\"other\"\n\"4716701\";\"Onalaska\";\"main\"\n\"4716734\";\"Onion Creek\";\"main\"\n\"4716805\";\"Orange\";\"main\"\n\"4716812\";\"Orange Grove\";\"main\"\n\"4716833\";\"Ore City\";\"main\"\n\"4716998\";\"Overton\";\"main\"\n\"4717006\";\"Ovilla\";\"main\"\n\"4717084\";\"Oyster Creek\";\"main\"\n\"4717218\";\"Palacios\";\"main\"\n\"4717232\";\"Palestine\";\"main\"\n\"4717275\";\"Palm Valley\";\"main\"\n\"4717283\";\"Palmer\";\"main\"\n\"4717326\";\"Palmhurst\";\"main\"\n\"4717339\";\"Palmview\";\"main\"\n\"4717341\";\"Palmview South\";\"main\"\n\"4717446\";\"Panorama Village\";\"main\"\n\"4717448\";\"Pantego\";\"main\"\n\"4717560\";\"Paris\";\"main\"\n\"4717560\";\"Parizh\";\"other\"\n\"4717560\";\"Париж\";\"other\"\n\"4717624\";\"Parker\";\"main\"\n\"4717624\";\"Паркер\";\"other\"\n\"4717782\";\"Pasadena\";\"main\"\n\"4717782\";\"Пасадена\";\"other\"\n\"4717929\";\"Patton Village\";\"main\"\n\"4718097\";\"Pearland\";\"main\"\n\"4718107\";\"Pearsall\";\"main\"\n\"4718153\";\"Pecan Acres\";\"main\"\n\"4718209\";\"Pecan Grove\";\"main\"\n\"4718236\";\"Pecan Plantation\";\"main\"\n\"4718330\";\"Pelican Bay\";\"main\"\n\"4718381\";\"Penitas\";\"main\"\n\"4718711\";\"Pflugerville\";\"main\"\n\"4718721\";\"Pharr\";\"main\"\n\"4718721\";\"Farra\";\"other\"\n\"4718721\";\"Фарра\";\"other\"\n\"4719021\";\"Pilot Point\";\"main\"\n\"4719246\";\"Pinehurst\";\"main\"\n\"4719247\";\"Pinehurst\";\"main\"\n\"4719261\";\"Pinewood Estates\";\"main\"\n\"4719310\";\"Piney Point Village\";\"main\"\n\"4719416\";\"Pittsburg\";\"main\"\n\"4719416\";\"Pitsburg\";\"other\"\n\"4719416\";\"Питсбург\";\"other\"\n\"4719457\";\"Plano\";\"main\"\n\"4719457\";\"Planom\";\"other\"\n\"4719457\";\"Планом\";\"other\"\n\"4719481\";\"Pleak\";\"main\"\n\"4719720\";\"Pleasanton\";\"main\"\n\"4719720\";\"Plezantun\";\"other\"\n\"4719720\";\"Плезантън\";\"other\"\n\"4719781\";\"Plum Grove\";\"main\"\n\"4719860\";\"Point\";\"main\"\n\"4720036\";\"Port Aransas\";\"main\"\n\"4720039\";\"Port Arthur\";\"main\"\n\"4720039\";\"Port-Artur\";\"other\"\n\"4720039\";\"Порт-Артур\";\"other\"\n\"4720060\";\"Port Isabel\";\"main\"\n\"4720067\";\"Port Lavaca\";\"main\"\n\"4720072\";\"Port Neches\";\"main\"\n\"4720105\";\"Porter Heights\";\"main\"\n\"4720131\";\"Portland\";\"main\"\n\"4720131\";\"Portlend\";\"other\"\n\"4720131\";\"Портленд\";\"other\"\n\"4720270\";\"Poteet\";\"main\"\n\"4720272\";\"Poth\";\"main\"\n\"4720275\";\"Potosi\";\"main\"\n\"4720314\";\"Pottsboro\";\"main\"\n\"4720493\";\"Prairie View\";\"main\"\n\"4720529\";\"Premont\";\"main\"\n\"4720672\";\"Primera\";\"main\"\n\"4720743\";\"Princeton\";\"main\"\n\"4720743\";\"Prinston\";\"other\"\n\"4720743\";\"Принстон\";\"other\"\n\"4720789\";\"Progreso\";\"main\"\n\"4720833\";\"Prosper\";\"main\"\n\"4721023\";\"Quanah\";\"main\"\n\"4721041\";\"Queen City\";\"main\"\n\"4721089\";\"Quinlan\";\"main\"\n\"4721115\";\"Quitman\";\"main\"\n\"4721416\";\"Rancho Alegre\";\"main\"\n\"4721444\";\"Rancho Viejo\";\"main\"\n\"4721504\";\"Ranger\";\"main\"\n\"4721703\";\"Raymondville\";\"main\"\n\"4721921\";\"Red Oak\";\"main\"\n\"4722065\";\"Redwood\";\"main\"\n\"4722145\";\"Refugio\";\"main\"\n\"4722231\";\"Rendon\";\"main\"\n\"4722241\";\"Reno\";\"main\"\n\"4722241\";\"Rino\";\"other\"\n\"4722241\";\"Рино\";\"other\"\n\"4722242\";\"Reno\";\"main\"\n\"4722242\";\"Rino\";\"other\"\n\"4722242\";\"Рино\";\"other\"\n\"4722625\";\"Richardson\";\"main\"\n\"4722625\";\"Ричардсон\";\"other\"\n\"4722668\";\"Richland Hills\";\"main\"\n\"4722684\";\"Richmond\";\"main\"\n\"4722684\";\"Ричмонд\";\"other\"\n\"4722697\";\"Richwood\";\"main\"\n\"4722831\";\"Rio Bravo\";\"main\"\n\"4722837\";\"Rio Grande City\";\"main\"\n\"4722843\";\"Rio Hondo\";\"main\"\n\"4722925\";\"River Oaks\";\"main\"\n\"4723024\";\"Roanoke\";\"main\"\n\"4723165\";\"Robinson\";\"main\"\n\"4723212\";\"Robstown\";\"main\"\n\"4723369\";\"Rockdale\";\"main\"\n\"4723406\";\"Rockwall\";\"main\"\n\"4723422\";\"Rockport\";\"main\"\n\"4723670\";\"Rogers\";\"main\"\n\"4723670\";\"Rodzhers\";\"other\"\n\"4723670\";\"Роджерс\";\"other\"\n\"4723734\";\"Rollingwood\";\"main\"\n\"4723755\";\"Roman Forest\";\"main\"\n\"4723763\";\"Roma-Los Saenz\";\"main\"\n\"4723869\";\"Rosebud\";\"main\"\n\"4723914\";\"Rosenberg\";\"main\"\n\"4723914\";\"Rozenberg\";\"other\"\n\"4723914\";\"Розенберг\";\"other\"\n\"4724129\";\"Round Rock\";\"main\"\n\"4724194\";\"Rowlett\";\"main\"\n\"4724241\";\"Royse City\";\"main\"\n\"4724298\";\"Runaway Bay\";\"main\"\n\"4724309\";\"Runge\";\"main\"\n\"4724359\";\"Rusk\";\"main\"\n\"4724530\";\"Sabinal\";\"main\"\n\"4724564\";\"Sachse\";\"main\"\n\"4724642\";\"Saginaw\";\"main\"\n\"4724892\";\"Saint Hedwig\";\"main\"\n\"4725807\";\"Salado\";\"main\"\n\"4726206\";\"San Antonio\";\"main\"\n\"4726206\";\"Sanctus Antonius\";\"other\"\n\"4726206\";\"san antwnyw\";\"other\"\n\"4726206\";\"san'antonio\";\"other\"\n\"4726206\";\"sheng an dong ni ao\";\"other\"\n\"4726206\";\"Сан Антонио\";\"other\"\n\"4726206\";\"סאן אנטוניו\";\"other\"\n\"4726206\";\"سان أنطونيو\";\"other\"\n\"4726206\";\"サンアントニオ\";\"other\"\n\"4726206\";\"圣安东尼奥\";\"other\"\n\"4726256\";\"San Augustine\";\"main\"\n\"4726290\";\"San Benito\";\"main\"\n\"4726293\";\"San Carlos\";\"main\"\n\"4726293\";\"San - Karlos\";\"other\"\n\"4726293\";\"Сан - Карлос\";\"other\"\n\"4726311\";\"San Diego\";\"main\"\n\"4726311\";\"San-Diego\";\"other\"\n\"4726311\";\"Сан-Диего\";\"other\"\n\"4726440\";\"San Juan\";\"main\"\n\"4726477\";\"San Leon\";\"main\"\n\"4726491\";\"San Marcos\";\"main\"\n\"4726582\";\"San Saba\";\"main\"\n\"4726957\";\"Sanger\";\"main\"\n\"4726971\";\"Sansom Park\";\"main\"\n\"4726982\";\"Santa Anna\";\"main\"\n\"4727022\";\"Santa Fe\";\"main\"\n\"4727022\";\"Santa-Fe\";\"other\"\n\"4727022\";\"Санта-Фе\";\"other\"\n\"4727076\";\"Santa Rosa\";\"main\"\n\"4727076\";\"Santa-Rosa\";\"other\"\n\"4727076\";\"Санта-Роса\";\"other\"\n\"4727290\";\"Scenic Oaks\";\"main\"\n\"4727326\";\"Schertz\";\"main\"\n\"4727417\";\"Schulenburg\";\"main\"\n\"4727466\";\"Scissors\";\"main\"\n\"4727596\";\"Seabrook\";\"main\"\n\"4727602\";\"Seadrift\";\"main\"\n\"4727605\";\"Seagoville\";\"main\"\n\"4727629\";\"Sealy\";\"main\"\n\"4727651\";\"Sebastian\";\"main\"\n\"4727756\";\"Seguin\";\"main\"\n\"4727785\";\"Selma\";\"main\"\n\"4727785\";\"Sel'ma\";\"other\"\n\"4727785\";\"Сельма\";\"other\"\n\"4727831\";\"Serenada\";\"main\"\n\"4727873\";\"Seven Points\";\"main\"\n\"4727948\";\"Seymour\";\"main\"\n\"4728052\";\"Shady Hollow\";\"main\"\n\"4728064\";\"Shady Shores\";\"main\"\n\"4728083\";\"Shamrock\";\"main\"\n\"4728147\";\"Shavano Park\";\"main\"\n\"4728238\";\"Sheldon\";\"main\"\n\"4728287\";\"Shenandoah\";\"main\"\n\"4728298\";\"Shepherd\";\"main\"\n\"4728328\";\"Sherman\";\"main\"\n\"4728328\";\"Шерман\";\"other\"\n\"4728482\";\"Shiner\";\"main\"\n\"4728557\";\"Shoreacres\";\"main\"\n\"4728608\";\"Sienna Plantation\";\"main\"\n\"4728653\";\"Silsbee\";\"main\"\n\"4728826\";\"Sinton\";\"main\"\n\"4728911\";\"Skidmore\";\"main\"\n\"4729284\";\"Smithville\";\"main\"\n\"4732801\";\"Somerset\";\"main\"\n\"4732801\";\"Сомерсет\";\"other\"\n\"4732809\";\"Somerville\";\"main\"\n\"4732862\";\"Sour Lake\";\"main\"\n\"4732870\";\"South Alamo\";\"main\"\n\"4733042\";\"South Houston\";\"main\"\n\"4733103\";\"South Padre Island\";\"main\"\n\"4733129\";\"South Point\";\"main\"\n\"4733313\";\"Southlake\";\"main\"\n\"4733321\";\"Southmayd\";\"main\"\n\"4733362\";\"Southside Place\";\"main\"\n\"4733485\";\"Sparks\";\"main\"\n\"4733593\";\"Splendora\";\"main\"\n\"4733624\";\"Spring\";\"main\"\n\"4733891\";\"Spring Valley\";\"main\"\n\"4733891\";\"Spring-Vehlli\";\"other\"\n\"4733891\";\"Спринг-Вэлли\";\"other\"\n\"4733940\";\"Springtown\";\"main\"\n\"4734005\";\"Stafford\";\"main\"\n\"4734041\";\"Stamford\";\"main\"\n\"4734041\";\"Стамфорд\";\"other\"\n\"4734350\";\"Stephenville\";\"main\"\n\"4734523\";\"Stockdale\";\"main\"\n\"4734646\";\"Stowell\";\"main\"\n\"4734825\";\"Sugar Land\";\"main\"\n\"4734864\";\"Sullivan City\";\"main\"\n\"4734909\";\"Sulphur Springs\";\"main\"\n\"4735013\";\"Sunnyvale\";\"main\"\n\"4735013\";\"Sunivejl\";\"other\"\n\"4735013\";\"Сънивейл\";\"other\"\n\"4735190\";\"Sweeny\";\"main\"\n\"4735458\";\"Taft\";\"main\"\n\"4735467\";\"Taft Southwest  (historical)\";\"main\"\n\"4735524\";\"Talty\";\"main\"\n\"4735674\";\"Tatum\";\"main\"\n\"4735702\";\"Taylor\";\"main\"\n\"4735702\";\"Tejlor\";\"other\"\n\"4735702\";\"Тейлор\";\"other\"\n\"4735771\";\"Taylor Lake Village\";\"main\"\n\"4735813\";\"Teague\";\"main\"\n\"4735964\";\"Tenaha\";\"main\"\n\"4735966\";\"Temple\";\"main\"\n\"4736028\";\"Terrell\";\"main\"\n\"4736043\";\"Terrell Hills\";\"main\"\n\"4736096\";\"Texarkana\";\"main\"\n\"4736134\";\"Texas City\";\"main\"\n\"4736388\";\"The Colony\";\"main\"\n\"4736388\";\"Kolonija\";\"other\"\n\"4736388\";\"Колония\";\"other\"\n\"4736420\";\"The Hills\";\"main\"\n\"4736476\";\"The Woodlands\";\"main\"\n\"4736476\";\"Woodlands\";\"other\"\n\"4736681\";\"Thorndale\";\"main\"\n\"4736721\";\"Three Rivers\";\"main\"\n\"4736922\";\"Timberwood Park\";\"main\"\n\"4736933\";\"Timpson\";\"main\"\n\"4737094\";\"Tomball\";\"main\"\n\"4737151\";\"Tool\";\"main\"\n\"4737501\";\"Trinidad\";\"main\"\n\"4737506\";\"Trinity\";\"main\"\n\"4737676\";\"Trophy Club\";\"main\"\n\"4737691\";\"Troup\";\"main\"\n\"4737704\";\"Troy\";\"main\"\n\"4737704\";\"Troja\";\"other\"\n\"4737704\";\"Троя\";\"other\"\n\"4738207\";\"Tye\";\"main\"\n\"4738214\";\"Tyler\";\"main\"\n\"4738214\";\"Tajler\";\"other\"\n\"4738214\";\"Тайлер\";\"other\"\n\"4738574\";\"Universal City\";\"main\"\n\"4738606\";\"University Park\";\"main\"\n\"4738721\";\"Uvalde\";\"main\"\n\"4738725\";\"Uvalde Estates\";\"main\"\n\"4738825\";\"Valley Mills\";\"main\"\n\"4738883\";\"Van\";\"main\"\n\"4738884\";\"Van Alstyne\";\"main\"\n\"4738908\";\"Van Vleck\";\"main\"\n\"4739052\";\"Venus\";\"main\"\n\"4739078\";\"Vernon\";\"main\"\n\"4739157\";\"Victoria\";\"main\"\n\"4739157\";\"Viktorija\";\"other\"\n\"4739157\";\"Виктория\";\"other\"\n\"4739226\";\"Vidor\";\"main\"\n\"4739526\";\"Waco\";\"main\"\n\"4739526\";\"Vako\";\"other\"\n\"4739526\";\"wei ke\";\"other\"\n\"4739526\";\"Вако\";\"other\"\n\"4739526\";\"韦科\";\"other\"\n\"4739641\";\"Wake Village\";\"main\"\n\"4739799\";\"Waller\";\"main\"\n\"4740200\";\"Waskom\";\"main\"\n\"4740214\";\"Watauga\";\"main\"\n\"4740328\";\"Waxahachie\";\"main\"\n\"4740364\";\"Weatherford\";\"main\"\n\"4740423\";\"Webster\";\"main\"\n\"4740482\";\"Weimar\";\"main\"\n\"4740584\";\"Wells Branch\";\"main\"\n\"4740629\";\"Weslaco\";\"main\"\n\"4740686\";\"West\";\"main\"\n\"4740759\";\"West Columbia\";\"main\"\n\"4740928\";\"West Lake Hills\";\"main\"\n\"4740941\";\"West Livingston\";\"main\"\n\"4740987\";\"West Orange\";\"main\"\n\"4741057\";\"West Sharyland\";\"main\"\n\"4741087\";\"West Tawakoni\";\"main\"\n\"4741100\";\"West University Place\";\"main\"\n\"4741304\";\"Westworth\";\"main\"\n\"4741325\";\"Wharton\";\"main\"\n\"4741501\";\"White Oak\";\"main\"\n\"4741616\";\"White Settlement\";\"main\"\n\"4741641\";\"Whitehouse\";\"main\"\n\"4741677\";\"Whitesboro\";\"main\"\n\"4741691\";\"Whitewright\";\"main\"\n\"4741714\";\"Whitney\";\"main\"\n\"4741714\";\"Uitni\";\"other\"\n\"4741714\";\"Уитни\";\"other\"\n\"4741752\";\"Wichita Falls\";\"main\"\n\"4741838\";\"Wild Peach Village\";\"main\"\n\"4742170\";\"Willis\";\"main\"\n\"4742296\";\"Willow Park\";\"main\"\n\"4742380\";\"Wills Point\";\"main\"\n\"4742385\";\"Wilmer\";\"main\"\n\"4742503\";\"Wimberley\";\"main\"\n\"4742527\";\"Windemere\";\"main\"\n\"4742537\";\"Windcrest\";\"main\"\n\"4742616\";\"Winnie\";\"main\"\n\"4742620\";\"Winnsboro\";\"main\"\n\"4742656\";\"Winters\";\"main\"\n\"4742800\";\"Wolfe City\";\"main\"\n\"4742897\";\"Woodbranch\";\"main\"\n\"4742902\";\"Woodcreek\";\"main\"\n\"4743057\";\"Woodsboro\";\"main\"\n\"4743079\";\"Woodville\";\"main\"\n\"4743105\";\"Woodway\";\"main\"\n\"4743176\";\"Wortham\";\"main\"\n\"4743274\";\"Wyldwood\";\"main\"\n\"4743275\";\"Wylie\";\"main\"\n\"4743432\";\"Yoakum\";\"main\"\n\"4743453\";\"Yorktown\";\"main\"\n\"4743575\";\"Zapata\";\"main\"\n\"4743815\";\"Abingdon\";\"main\"\n\"4743963\";\"Adwolf\";\"main\"\n\"4744091\";\"Alexandria\";\"main\"\n\"4744091\";\"Aleksandrija\";\"other\"\n\"4744091\";\"arekusandoria\";\"other\"\n\"4744091\";\"ya li shan de li ya\";\"other\"\n\"4744091\";\"Александрия\";\"other\"\n\"4744091\";\"アレクサンドリア\";\"other\"\n\"4744091\";\"亚历山德里亚\";\"other\"\n\"4744247\";\"Altavista\";\"main\"\n\"4744326\";\"Amherst\";\"main\"\n\"4744326\";\"Amkherst\";\"other\"\n\"4744326\";\"Амхерст\";\"other\"\n\"4744468\";\"Annandale\";\"main\"\n\"4744575\";\"Appalachia\";\"main\"\n\"4744609\";\"Appomattox\";\"main\"\n\"4744645\";\"Aquia Harbour\";\"main\"\n\"4744709\";\"Arlington\";\"main\"\n\"4744709\";\"a ling dun xian\";\"other\"\n\"4744709\";\"arinton\";\"other\"\n\"4744709\";\"Арлингтон\";\"other\"\n\"4744709\";\"アーリントン\";\"other\"\n\"4744709\";\"阿靈頓縣\";\"other\"\n\"4744905\";\"Ashland\";\"main\"\n\"4744971\";\"Atkins\";\"main\"\n\"4745272\";\"Baileys Crossroads\";\"main\"\n\"4745753\";\"Bassett\";\"main\"\n\"4746265\";\"Bedford\";\"main\"\n\"4746265\";\"Бедфорд\";\"other\"\n\"4746457\";\"Belle Haven\";\"main\"\n\"4746526\";\"Bellwood\";\"main\"\n\"4746664\";\"Bensley\";\"main\"\n\"4746795\";\"Berryville\";\"main\"\n\"4747554\";\"Big Stone Gap\";\"main\"\n\"4747839\";\"Blackstone\";\"main\"\n\"4747845\";\"Blacksburg\";\"main\"\n\"4747845\";\"Blehksburg\";\"other\"\n\"4747845\";\"Блэксбург\";\"other\"\n\"4748050\";\"Blue Ridge\";\"main\"\n\"4748125\";\"Bluefield\";\"main\"\n\"4748305\";\"Bon Air\";\"main\"\n\"4748925\";\"Bridgewater\";\"main\"\n\"4748925\";\"Bridzhuoter\";\"other\"\n\"4748925\";\"Бриджуотер\";\"other\"\n\"4748993\";\"Bristol\";\"main\"\n\"4749117\";\"Broadway\";\"main\"\n\"4749193\";\"Brookneal\";\"main\"\n\"4749523\";\"Buchanan\";\"main\"\n\"4749715\";\"Buena Vista\";\"main\"\n\"4749854\";\"Bull Run\";\"main\"\n\"4749950\";\"Burke\";\"main\"\n\"4749950\";\"Berk\";\"other\"\n\"4749950\";\"Берк\";\"other\"\n\"4750786\";\"Cana\";\"main\"\n\"4750892\";\"Cape Charles\";\"main\"\n\"4751296\";\"Castlewood\";\"main\"\n\"4751421\";\"Cave Spring\";\"main\"\n\"4751445\";\"Cedar Bluff\";\"main\"\n\"4751446\";\"Cedar Bluff\";\"main\"\n\"4751839\";\"Centreville\";\"main\"\n\"4751886\";\"Chamberlayne\";\"main\"\n\"4751935\";\"Chantilly\";\"main\"\n\"4752031\";\"Charlottesville\";\"main\"\n\"4752031\";\"Sharlottsvill'\";\"other\"\n\"4752031\";\"sharottsubiru\";\"other\"\n\"4752031\";\"syalleocheubil\";\"other\"\n\"4752031\";\"Шарлоттсвилль\";\"other\"\n\"4752031\";\"シャーロッツビル\";\"other\"\n\"4752031\";\"샬러츠빌\";\"other\"\n\"4752052\";\"Chase City\";\"main\"\n\"4752060\";\"Chatham\";\"main\"\n\"4752081\";\"Chatmoss\";\"main\"\n\"4752186\";\"Chesapeake\";\"main\"\n\"4752186\";\"Chesapik\";\"other\"\n\"4752186\";\"Чесапик\";\"other\"\n\"4752229\";\"Chester\";\"main\"\n\"4752229\";\"Честер\";\"other\"\n\"4752261\";\"Chesterfield Court House\";\"main\"\n\"4752449\";\"Chilhowie\";\"main\"\n\"4752495\";\"Chincoteague\";\"main\"\n\"4752665\";\"Christiansburg\";\"main\"\n\"4752994\";\"Clarksville\";\"main\"\n\"4753043\";\"Claypool Hill\";\"main\"\n\"4753158\";\"Clifton Forge\";\"main\"\n\"4753218\";\"Clintwood\";\"main\"\n\"4753268\";\"Cloverdale\";\"main\"\n\"4753409\";\"Coeburn\";\"main\"\n\"4753635\";\"Collinsville\";\"main\"\n\"4753635\";\"Kollinsvil'\";\"other\"\n\"4753635\";\"Коллинсвиль\";\"other\"\n\"4753654\";\"Colonial Beach\";\"main\"\n\"4753671\";\"Colonial Heights\";\"main\"\n\"4754296\";\"Courtland\";\"main\"\n\"4754358\";\"Covington\";\"main\"\n\"4754568\";\"Craigsville\";\"main\"\n\"4754686\";\"Crewe\";\"main\"\n\"4754712\";\"Crimora\";\"main\"\n\"4754901\";\"Crozet\";\"main\"\n\"4754966\";\"Culpeper\";\"main\"\n\"4755143\";\"Dahlgren\";\"main\"\n\"4755158\";\"Dale City\";\"main\"\n\"4755173\";\"Daleville\";\"main\"\n\"4755199\";\"Damascus\";\"main\"\n\"4755280\";\"Danville\";\"main\"\n\"4755491\";\"Dayton\";\"main\"\n\"4755491\";\"Dejton\";\"other\"\n\"4755491\";\"Дейтон\";\"other\"\n\"4756211\";\"Dooms\";\"main\"\n\"4756549\";\"Dryden\";\"main\"\n\"4756557\";\"Dublin\";\"main\"\n\"4756557\";\"Дублин\";\"other\"\n\"4756643\";\"Dumfries\";\"main\"\n\"4756653\";\"Dumbarton\";\"main\"\n\"4756736\";\"Dunn Loring\";\"main\"\n\"4756955\";\"East Hampton\";\"main\"\n\"4756972\";\"East Highland Park\";\"main\"\n\"4757467\";\"Elkton\";\"main\"\n\"4757673\";\"Emporia\";\"main\"\n\"4757863\";\"Ettrick\";\"main\"\n\"4757978\";\"Exmore\";\"main\"\n\"4758023\";\"Fairfax\";\"main\"\n\"4758143\";\"Fairlawn\";\"main\"\n\"4758144\";\"Fairlawn\";\"main\"\n\"4758390\";\"Falls Church\";\"main\"\n\"4758426\";\"Falmouth\";\"main\"\n\"4758495\";\"Farmville\";\"main\"\n\"4758671\";\"Ferrum\";\"main\"\n\"4759120\";\"Fishersville\";\"main\"\n\"4759556\";\"Forest\";\"main\"\n\"4759735\";\"Fort Lee\";\"main\"\n\"4759968\";\"Franconia\";\"main\"\n\"4759968\";\"Frankonija\";\"other\"\n\"4759968\";\"Франкония\";\"other\"\n\"4759986\";\"Franklin\";\"main\"\n\"4759986\";\"Франклин\";\"other\"\n\"4760059\";\"Fredericksburg\";\"main\"\n\"4760059\";\"Frederiksburg\";\"other\"\n\"4760059\";\"fu lei de li ke si bao\";\"other\"\n\"4760059\";\"peuledeoligseubeogeu\";\"other\"\n\"4760059\";\"Фредериксбург\";\"other\"\n\"4760059\";\"ფრედერიკსბურგი\";\"other\"\n\"4760059\";\"弗雷德里克斯堡\";\"other\"\n\"4760059\";\"프레더릭스버그\";\"other\"\n\"4760232\";\"Front Royal\";\"main\"\n\"4760363\";\"Gainesville\";\"main\"\n\"4760376\";\"Galax\";\"main\"\n\"4760593\";\"Gate City\";\"main\"\n\"4760971\";\"Glade Spring\";\"main\"\n\"4761008\";\"Glasgow\";\"main\"\n\"4761054\";\"Glen Allen\";\"main\"\n\"4761166\";\"Gloucester Courthouse\";\"main\"\n\"4761171\";\"Gloucester Point\";\"main\"\n\"4761471\";\"Gordonsville\";\"main\"\n\"4761951\";\"Great Falls\";\"main\"\n\"4762356\";\"Gretna\";\"main\"\n\"4762454\";\"Grottoes\";\"main\"\n\"4762493\";\"Groveton\";\"main\"\n\"4762755\";\"Halifax\";\"main\"\n\"4762888\";\"Hampden Sydney\";\"main\"\n\"4762894\";\"Hampton\";\"main\"\n\"4762894\";\"Khehmpton\";\"other\"\n\"4762894\";\"Хэмптон\";\"other\"\n\"4763231\";\"Harrisonburg\";\"main\"\n\"4763452\";\"Haymarket\";\"main\"\n\"4763793\";\"Herndon\";\"main\"\n\"4763793\";\"Kherndon\";\"other\"\n\"4763793\";\"Херндон\";\"other\"\n\"4764127\";\"Highland Springs\";\"main\"\n\"4764251\";\"Hillsville\";\"main\"\n\"4764534\";\"Hollins\";\"main\"\n\"4764826\";\"Hopewell\";\"main\"\n\"4764826\";\"Khopuehlla\";\"other\"\n\"4764826\";\"Хопуэлла\";\"other\"\n\"4764936\";\"Horse Pasture\";\"main\"\n\"4765392\";\"Huntington\";\"main\"\n\"4765392\";\"Khantington\";\"other\"\n\"4765392\";\"Хантингтон\";\"other\"\n\"4765475\";\"Hurt\";\"main\"\n\"4765520\";\"Hybla Valley\";\"main\"\n\"4765553\";\"Idylwood\";\"main\"\n\"4766586\";\"Jefferson\";\"main\"\n\"4766586\";\"Dzhefferson\";\"other\"\n\"4766586\";\"Джефферсон\";\"other\"\n\"4767082\";\"Jolivue\";\"main\"\n\"4767509\";\"Kenbridge\";\"main\"\n\"4767723\";\"Kilmarnock\";\"main\"\n\"4768185\";\"Lake Barcroft\";\"main\"\n\"4768313\";\"Lake Monticello\";\"main\"\n\"4768351\";\"Lake Ridge\";\"main\"\n\"4768423\";\"Lakeside\";\"main\"\n\"4768678\";\"Laurel\";\"main\"\n\"4768900\";\"Lawrenceville\";\"main\"\n\"4768916\";\"Laymantown\";\"main\"\n\"4768972\";\"Lebanon\";\"main\"\n\"4769125\";\"Leesburg\";\"main\"\n\"4769339\";\"Lexington\";\"main\"\n\"4769339\";\"Leksington\";\"other\"\n\"4769339\";\"Лексингтон\";\"other\"\n\"4769608\";\"Lincolnia\";\"main\"\n\"4769667\";\"Linton Hall\";\"main\"\n\"4770288\";\"Loch Lomond\";\"main\"\n\"4770714\";\"Lorton\";\"main\"\n\"4770766\";\"Louisa\";\"main\"\n\"4770817\";\"Lovettsville\";\"main\"\n\"4771014\";\"Luray\";\"main\"\n\"4771075\";\"Lynchburg\";\"main\"\n\"4771100\";\"Lyndhurst\";\"main\"\n\"4771247\";\"Madison Heights\";\"main\"\n\"4771401\";\"Manassas\";\"main\"\n\"4771401\";\"Манассас\";\"other\"\n\"4771414\";\"Manassas Park\";\"main\"\n\"4771494\";\"Mantua\";\"main\"\n\"4771643\";\"Marion\";\"main\"\n\"4771643\";\"Mehrion\";\"other\"\n\"4771643\";\"Мэрион\";\"other\"\n\"4771808\";\"Martinsville\";\"main\"\n\"4771928\";\"Massanutten\";\"main\"\n\"4772009\";\"Matoaca\";\"main\"\n\"4772354\";\"McLean\";\"main\"\n\"4772354\";\"Maklin\";\"other\"\n\"4772354\";\"Маклин\";\"other\"\n\"4772566\";\"Mechanicsville\";\"main\"\n\"4772735\";\"Merrifield\";\"main\"\n\"4772739\";\"Merrimac\";\"main\"\n\"4772740\";\"Merrimac\";\"main\"\n\"4772927\";\"Middletown\";\"main\"\n\"4773677\";\"Montclair\";\"main\"\n\"4773747\";\"Montrose\";\"main\"\n\"4774352\";\"Mount Jackson\";\"main\"\n\"4775438\";\"Narrows\";\"main\"\n\"4775439\";\"Narrows\";\"main\"\n\"4775859\";\"New Market\";\"main\"\n\"4775981\";\"Newington\";\"main\"\n\"4776024\";\"Newport News\";\"main\"\n\"4776024\";\"N'juport-N'jus\";\"other\"\n\"4776024\";\"Ньюпорт-Ньюс\";\"other\"\n\"4776181\";\"Nokesville\";\"main\"\n\"4776222\";\"Norfolk\";\"main\"\n\"4776222\";\"Norfolko\";\"other\"\n\"4776222\";\"nofoku\";\"other\"\n\"4776222\";\"nwrpwq\";\"other\"\n\"4776222\";\"Норфолк\";\"other\"\n\"4776222\";\"נורפוק\";\"other\"\n\"4776222\";\"ノーフォーク\";\"other\"\n\"4776469\";\"North Shore\";\"main\"\n\"4776472\";\"North Springfield\";\"main\"\n\"4776585\";\"Norton\";\"main\"\n\"4776970\";\"Oakton\";\"main\"\n\"4777405\";\"Onancock\";\"main\"\n\"4777454\";\"Orange\";\"main\"\n\"4778128\";\"Patrick Springs\";\"main\"\n\"4778312\";\"Pearisburg\";\"main\"\n\"4778381\";\"Pembroke\";\"main\"\n\"4778452\";\"Pennington Gap\";\"main\"\n\"4778626\";\"Petersburg\";\"main\"\n\"4778626\";\"Peterburg\";\"other\"\n\"4778626\";\"Петербург\";\"other\"\n\"4778945\";\"Pimmit Hills\";\"main\"\n\"4779923\";\"Poquoson\";\"main\"\n\"4779999\";\"Portsmouth\";\"main\"\n\"4779999\";\"Portsmut\";\"other\"\n\"4779999\";\"Портсмут\";\"other\"\n\"4780011\";\"Portsmouth Heights\";\"main\"\n\"4780126\";\"Pound\";\"main\"\n\"4780577\";\"Pulaski\";\"main\"\n\"4780641\";\"Purcellville\";\"main\"\n\"4780837\";\"Radford\";\"main\"\n\"4781113\";\"Raven\";\"main\"\n\"4781530\";\"Reston\";\"main\"\n\"4781530\";\"Рестон\";\"other\"\n\"4781708\";\"Richmond\";\"main\"\n\"4781708\";\"Ричмонд\";\"other\"\n\"4781711\";\"Richlands\";\"main\"\n\"4782167\";\"Roanoke\";\"main\"\n\"4782691\";\"Rocky Mount\";\"main\"\n\"4782864\";\"Rose Hill\";\"main\"\n\"4783233\";\"Rural Retreat\";\"main\"\n\"4783255\";\"Rushmere\";\"main\"\n\"4783303\";\"Rustburg\";\"main\"\n\"4784112\";\"Salem\";\"main\"\n\"4784112\";\"Салем\";\"other\"\n\"4784275\";\"Saltville\";\"main\"\n\"4784902\";\"Seven Corners\";\"main\"\n\"4785167\";\"Shawsville\";\"main\"\n\"4785243\";\"Shenandoah\";\"main\"\n\"4786274\";\"Smithfield\";\"main\"\n\"4786522\";\"South Boston\";\"main\"\n\"4786522\";\"Juzhnaja Boston\";\"other\"\n\"4786522\";\"Южная Бостон\";\"other\"\n\"4786619\";\"South Hill\";\"main\"\n\"4786714\";\"South Suffolk\";\"main\"\n\"4786952\";\"Spotsylvania Courthouse\";\"main\"\n\"4787117\";\"Springfield\";\"main\"\n\"4787117\";\"Springfild\";\"other\"\n\"4787117\";\"Спрингфилд\";\"other\"\n\"4787307\";\"Stanley\";\"main\"\n\"4787327\";\"Stanleytown\";\"main\"\n\"4787440\";\"Staunton\";\"main\"\n\"4787440\";\"Stonton\";\"other\"\n\"4787440\";\"Стонтон\";\"other\"\n\"4787519\";\"Stephens City\";\"main\"\n\"4787534\";\"Sterling\";\"main\"\n\"4787534\";\"Стерлинг\";\"other\"\n\"4787974\";\"Strasburg\";\"main\"\n\"4788070\";\"Stuarts Draft\";\"main\"\n\"4788145\";\"Sudley\";\"main\"\n\"4788158\";\"Suffolk\";\"main\"\n\"4788158\";\"Saffolk\";\"other\"\n\"4788158\";\"Саффолк\";\"other\"\n\"4788822\";\"Tappahannock\";\"main\"\n\"4788966\";\"Tazewell\";\"main\"\n\"4789648\";\"Timberlake\";\"main\"\n\"4789655\";\"Timberville\";\"main\"\n\"4790025\";\"Triangle\";\"main\"\n\"4790207\";\"Tuckahoe\";\"main\"\n\"4790534\";\"Tysons Corner\";\"main\"\n\"4790661\";\"Union Hall\";\"main\"\n\"4791102\";\"Verona\";\"main\"\n\"4791136\";\"Victoria\";\"main\"\n\"4791136\";\"Viktorija\";\"other\"\n\"4791136\";\"Виктория\";\"other\"\n\"4791160\";\"Vienna\";\"main\"\n\"4791237\";\"Vinton\";\"main\"\n\"4791259\";\"Virginia Beach\";\"main\"\n\"4791259\";\"Virdzhinija Bijch\";\"other\"\n\"4791259\";\"bajiniabichi\";\"other\"\n\"4791259\";\"beojiniabichi\";\"other\"\n\"4791259\";\"Вирджиния Бийч\";\"other\"\n\"4791259\";\"バージニアビーチ\";\"other\"\n\"4791259\";\"버지니아비치\";\"other\"\n\"4791861\";\"Wakefield\";\"main\"\n\"4792255\";\"Warrenton\";\"main\"\n\"4792273\";\"Warsaw\";\"main\"\n\"4792494\";\"Waverly\";\"main\"\n\"4792522\";\"Waynesboro\";\"main\"\n\"4792598\";\"Weber City\";\"main\"\n\"4792599\";\"Weber City\";\"main\"\n\"4792829\";\"West Gate\";\"main\"\n\"4792867\";\"West Lynchburg\";\"main\"\n\"4792878\";\"West Point\";\"main\"\n\"4792901\";\"West Springfield\";\"main\"\n\"4793125\";\"Weyers Cave\";\"main\"\n\"4793846\";\"Williamsburg\";\"main\"\n\"4793846\";\"u~iriamuzubagu\";\"other\"\n\"4793846\";\"wei lian si bao\";\"other\"\n\"4793846\";\"ウィリアムズバーグ\";\"other\"\n\"4793846\";\"威廉斯堡\";\"other\"\n\"4794120\";\"Winchester\";\"main\"\n\"4794350\";\"Wolf Trap\";\"main\"\n\"4794457\";\"Woodbridge\";\"main\"\n\"4794529\";\"Woodlawn\";\"main\"\n\"4794641\";\"Woodstock\";\"main\"\n\"4794641\";\"Vudstok\";\"other\"\n\"4794641\";\"Вудсток\";\"other\"\n\"4794814\";\"Wyndham\";\"main\"\n\"4794837\";\"Wytheville\";\"main\"\n\"4794966\";\"Yorkshire\";\"main\"\n\"4797041\";\"Alderson\";\"main\"\n\"4797174\";\"Alum Creek\";\"main\"\n\"4797301\";\"Ansted\";\"main\"\n\"4797549\";\"Athens\";\"main\"\n\"4797880\";\"Barboursville\";\"main\"\n\"4797975\";\"Barrackville\";\"main\"\n\"4798258\";\"Beaver\";\"main\"\n\"4798308\";\"Beckley\";\"main\"\n\"4798532\";\"Belington\";\"main\"\n\"4798559\";\"Belle\";\"main\"\n\"4798588\";\"Belmont\";\"main\"\n\"4798588\";\"Белмонт\";\"other\"\n\"4798838\";\"Bethlehem\";\"main\"\n\"4799532\";\"Blennerhassett\";\"main\"\n\"4799622\";\"Bluefield\";\"main\"\n\"4799715\";\"Boaz\";\"main\"\n\"4799766\";\"Bolivar\";\"main\"\n\"4799944\";\"Bradley\";\"main\"\n\"4800081\";\"Bridgeport\";\"main\"\n\"4800195\";\"Brookhaven\";\"main\"\n\"4800587\";\"Buckhannon\";\"main\"\n\"4800639\";\"Buffalo\";\"main\"\n\"4800639\";\"Буффало\";\"other\"\n\"4801156\";\"Cameron\";\"main\"\n\"4801560\";\"Cassville\";\"main\"\n\"4801769\";\"Ceredo\";\"main\"\n\"4801828\";\"Chapmanville\";\"main\"\n\"4801850\";\"Charles Town\";\"main\"\n\"4801859\";\"Charleston\";\"main\"\n\"4801859\";\"Charlston\";\"other\"\n\"4801859\";\"cha er si dun\";\"other\"\n\"4801859\";\"charusuton\";\"other\"\n\"4801859\";\"Чарлстон\";\"other\"\n\"4801859\";\"チャールストン\";\"other\"\n\"4801859\";\"查尔斯顿\";\"other\"\n\"4801886\";\"Chattaroy\";\"main\"\n\"4801895\";\"Cheat Lake\";\"main\"\n\"4801966\";\"Chesapeake\";\"main\"\n\"4801966\";\"Chesapik\";\"other\"\n\"4801966\";\"Чесапик\";\"other\"\n\"4802316\";\"Clarksburg\";\"main\"\n\"4802417\";\"Clendenin\";\"main\"\n\"4802525\";\"Coal City\";\"main\"\n\"4802527\";\"Coal Fork\";\"main\"\n\"4803150\";\"Crab Orchard\";\"main\"\n\"4803183\";\"Craigsville\";\"main\"\n\"4803372\";\"Cross Lanes\";\"main\"\n\"4803451\";\"Culloden\";\"main\"\n\"4803616\";\"Daniels\";\"main\"\n\"4803960\";\"Despard\";\"main\"\n\"4804563\";\"Dunbar\";\"main\"\n\"4804927\";\"Eleanor\";\"main\"\n\"4805033\";\"Elkins\";\"main\"\n\"4805077\";\"Elkview\";\"main\"\n\"4805403\";\"Fairlea\";\"main\"\n\"4805404\";\"Fairmont\";\"main\"\n\"4805686\";\"Fayetteville\";\"main\"\n\"4806346\";\"Fort Ashby\";\"main\"\n\"4806941\";\"Gilbert Creek\";\"main\"\n\"4807116\";\"Glenville\";\"main\"\n\"4807136\";\"Glendale\";\"main\"\n\"4807310\";\"Grafton\";\"main\"\n\"4807976\";\"Hamlin\";\"main\"\n\"4808281\";\"Harrisville\";\"main\"\n\"4808315\";\"Harts\";\"main\"\n\"4808945\";\"Hinton\";\"main\"\n\"4809052\";\"Holden\";\"main\"\n\"4809537\";\"Huntington\";\"main\"\n\"4809537\";\"Khantington\";\"other\"\n\"4809537\";\"Хантингтон\";\"other\"\n\"4809558\";\"Hurricane\";\"main\"\n\"4809881\";\"Inwood\";\"main\"\n\"4810818\";\"Kenova\";\"main\"\n\"4810884\";\"Keyser\";\"main\"\n\"4811007\";\"Kingwood\";\"main\"\n\"4812015\";\"Lewisburg\";\"main\"\n\"4812867\";\"Logan\";\"main\"\n\"4813389\";\"Lubeck\";\"main\"\n\"4813512\";\"Mabscott\";\"main\"\n\"4813519\";\"MacArthur\";\"main\"\n\"4813565\";\"Madison\";\"main\"\n\"4813565\";\"Мадисон\";\"other\"\n\"4813648\";\"Mallory\";\"main\"\n\"4813666\";\"Mannington\";\"main\"\n\"4813774\";\"Marlinton\";\"main\"\n\"4813783\";\"Marmet\";\"main\"\n\"4813878\";\"Martinsburg\";\"main\"\n\"4813931\";\"Mason\";\"main\"\n\"4813931\";\"Mejson\";\"other\"\n\"4813931\";\"Мейсон\";\"other\"\n\"4814268\";\"McMechen\";\"main\"\n\"4815044\";\"Milton\";\"main\"\n\"4815044\";\"Mil'ton\";\"other\"\n\"4815044\";\"Мильтон\";\"other\"\n\"4815066\";\"Mineralwells\";\"main\"\n\"4815241\";\"Montgomery\";\"main\"\n\"4815241\";\"Montgomeri\";\"other\"\n\"4815241\";\"Монтгомери\";\"other\"\n\"4815286\";\"Moorefield\";\"main\"\n\"4815352\";\"Morgantown\";\"main\"\n\"4815462\";\"Moundsville\";\"main\"\n\"4815582\";\"Mount Hope\";\"main\"\n\"4816186\";\"Mullens\";\"main\"\n\"4816520\";\"New Martinsville\";\"main\"\n\"4816522\";\"New Haven\";\"main\"\n\"4816522\";\"N'ju-Khejven\";\"other\"\n\"4816522\";\"Нью-Хейвен\";\"other\"\n\"4816665\";\"Nitro\";\"main\"\n\"4816898\";\"Nutter Fort\";\"main\"\n\"4816993\";\"Oak Hill\";\"main\"\n\"4817070\";\"Oceana\";\"main\"\n\"4817486\";\"Paden City\";\"main\"\n\"4817641\";\"Parkersburg\";\"main\"\n\"4817641\";\"Parkersberg\";\"other\"\n\"4817641\";\"Паркерсберг\";\"other\"\n\"4817695\";\"Parsons\";\"main\"\n\"4817825\";\"Pea Ridge\";\"main\"\n\"4817911\";\"Pennsboro\";\"main\"\n\"4818030\";\"Petersburg\";\"main\"\n\"4818030\";\"Peterburg\";\"other\"\n\"4818030\";\"Петербург\";\"other\"\n\"4818074\";\"Philippi\";\"main\"\n\"4818123\";\"Piedmont\";\"main\"\n\"4818227\";\"Pinch\";\"main\"\n\"4818383\";\"Piney View\";\"main\"\n\"4818573\";\"Pleasant Valley\";\"main\"\n\"4818689\";\"Poca\";\"main\"\n\"4818750\";\"Point Pleasant\";\"main\"\n\"4818978\";\"Powellton\";\"main\"\n\"4819079\";\"Princeton\";\"main\"\n\"4819079\";\"Prinston\";\"other\"\n\"4819079\";\"Принстон\";\"other\"\n\"4819121\";\"Prosperity\";\"main\"\n\"4819307\";\"Rainelle\";\"main\"\n\"4819389\";\"Ranson\";\"main\"\n\"4819418\";\"Ravenswood\";\"main\"\n\"4819768\";\"Richwood\";\"main\"\n\"4820037\";\"Ripley\";\"main\"\n\"4820597\";\"Romney\";\"main\"\n\"4820608\";\"Ronceverte\";\"main\"\n\"4820938\";\"Saint Albans\";\"main\"\n\"4821087\";\"Saint Marys\";\"main\"\n\"4821203\";\"Salem\";\"main\"\n\"4821203\";\"Sejlem\";\"other\"\n\"4821203\";\"Сейлем\";\"other\"\n\"4821800\";\"Shady Spring\";\"main\"\n\"4821983\";\"Shepherdstown\";\"main\"\n\"4822050\";\"Shinnston\";\"main\"\n\"4822310\";\"Sissonville\";\"main\"\n\"4822313\";\"Sistersville\";\"main\"\n\"4822741\";\"Sophia\";\"main\"\n\"4822764\";\"South Charleston\";\"main\"\n\"4822933\";\"Spencer\";\"main\"\n\"4823285\";\"Stanaford\";\"main\"\n\"4823309\";\"Star City\";\"main\"\n\"4823571\";\"Stonewood\";\"main\"\n\"4824027\";\"Summersville\";\"main\"\n\"4824205\";\"Switzer\";\"main\"\n\"4824469\";\"Teays Valley\";\"main\"\n\"4824515\";\"Terra Alta\";\"main\"\n\"4824889\";\"Upper Falls\";\"main\"\n\"4825976\";\"Vienna\";\"main\"\n\"4826522\";\"Washington\";\"main\"\n\"4826522\";\"Vashington\";\"other\"\n\"4826522\";\"Вашингтон\";\"other\"\n\"4826592\";\"Wayne\";\"main\"\n\"4826648\";\"Webster Springs\";\"main\"\n\"4826660\";\"Welch\";\"main\"\n\"4826882\";\"Weston\";\"main\"\n\"4826882\";\"Uehston\";\"other\"\n\"4826882\";\"Уэстон\";\"other\"\n\"4826895\";\"Westover\";\"main\"\n\"4827104\";\"White Sulphur Springs\";\"main\"\n\"4827255\";\"Wiley Ford\";\"main\"\n\"4827333\";\"Williamson\";\"main\"\n\"4827351\";\"Williamstown\";\"main\"\n\"4827506\";\"Winfield\";\"main\"\n\"4828081\";\"Elba\";\"main\"\n\"4828193\";\"Sherwood\";\"main\"\n\"4828382\";\"Franklin\";\"main\"\n\"4828382\";\"Франклин\";\"other\"\n\"4828384\";\"Newton\";\"main\"\n\"4828384\";\"N'juton\";\"other\"\n\"4828384\";\"Ньютон\";\"other\"\n\"4828677\";\"Linn\";\"main\"\n\"4828696\";\"Villa Ridge\";\"main\"\n\"4828755\";\"Rosedale\";\"main\"\n\"4828766\";\"Shaw\";\"main\"\n\"4828862\";\"Merchantville\";\"main\"\n\"4828875\";\"Oak Valley\";\"main\"\n\"4828883\";\"Bremen\";\"main\"\n\"4828890\";\"Chillicothe\";\"main\"\n\"4828923\";\"Coalgate\";\"main\"\n\"4829206\";\"Dilley\";\"main\"\n\"4829208\";\"Devine\";\"main\"\n\"4829219\";\"Hickory Creek\";\"main\"\n\"4829243\";\"Wallis\";\"main\"\n\"4829307\";\"Bay City\";\"main\"\n\"4829307\";\"Bej-Siti\";\"other\"\n\"4829307\";\"Бей-Сити\";\"other\"\n\"4829341\";\"Wise\";\"main\"\n\"4829449\";\"Abbeville\";\"main\"\n\"4829588\";\"Adamsville\";\"main\"\n\"4829762\";\"Alabaster\";\"main\"\n\"4829762\";\"Alebastr\";\"other\"\n\"4829762\";\"Алебастр\";\"other\"\n\"4829791\";\"Albertville\";\"main\"\n\"4829843\";\"Alexander City\";\"main\"\n\"4829861\";\"Alexandria\";\"main\"\n\"4829861\";\"Aleksandrija\";\"other\"\n\"4829861\";\"Александрия\";\"other\"\n\"4829885\";\"Aliceville\";\"main\"\n\"4830099\";\"Andalusia\";\"main\"\n\"4830198\";\"Anniston\";\"main\"\n\"4830198\";\"Аннистон\";\"other\"\n\"4830455\";\"Arab\";\"main\"\n\"4830478\";\"Argo\";\"main\"\n\"4830504\";\"Ardmore\";\"main\"\n\"4830668\";\"Athens\";\"main\"\n\"4830684\";\"Ashford\";\"main\"\n\"4830687\";\"Ashland\";\"main\"\n\"4830707\";\"Ashville\";\"main\"\n\"4830759\";\"Atmore\";\"main\"\n\"4830768\";\"Attalla\";\"main\"\n\"4830796\";\"Auburn\";\"main\"\n\"4831764\";\"South Coventry\";\"main\"\n\"4831766\";\"Tariffville\";\"main\"\n\"4831842\";\"Gladbrook\";\"main\"\n\"4831990\";\"Canton\";\"main\"\n\"4832014\";\"Deer Park\";\"main\"\n\"4832027\";\"Coventry Lake\";\"main\"\n\"4832038\";\"Glendale Heights\";\"main\"\n\"4832074\";\"Lena\";\"main\"\n\"4832121\";\"Cromwell\";\"main\"\n\"4832176\";\"East Falmouth\";\"main\"\n\"4832225\";\"Crystal Lake\";\"main\"\n\"4832272\";\"North Andover\";\"main\"\n\"4832294\";\"Revere\";\"main\"\n\"4832322\";\"West Barnstable\";\"main\"\n\"4832342\";\"Alfred\";\"main\"\n\"4832353\";\"Danbury\";\"main\"\n\"4832356\";\"Berwick\";\"main\"\n\"4832408\";\"Hope\";\"main\"\n\"4832411\";\"Danielson\";\"main\"\n\"4832425\";\"Darien\";\"main\"\n\"4832458\";\"Rockland\";\"main\"\n\"4832484\";\"Union\";\"main\"\n\"4832554\";\"Inkster\";\"main\"\n\"4832684\";\"Edina\";\"main\"\n\"4832684\";\"Edin\";\"other\"\n\"4832684\";\"Един\";\"other\"\n\"4832745\";\"Derby\";\"main\"\n\"4833098\";\"Camillus\";\"main\"\n\"4833108\";\"Clyde\";\"main\"\n\"4833123\";\"Durham\";\"main\"\n\"4833123\";\"Darem\";\"other\"\n\"4833123\";\"Дарем\";\"other\"\n\"4833272\";\"Wayland\";\"main\"\n\"4833276\";\"Watervliet\";\"main\"\n\"4833279\";\"East Brooklyn\";\"main\"\n\"4833304\";\"Camden\";\"main\"\n\"4833320\";\"Cleveland Heights\";\"main\"\n\"4833348\";\"Genoa\";\"main\"\n\"4833363\";\"East Haddam\";\"main\"\n\"4833387\";\"East Hampton\";\"main\"\n\"4833403\";\"East Hartford\";\"main\"\n\"4833425\";\"East Haven\";\"main\"\n\"4833478\";\"Carnegie\";\"main\"\n\"4833505\";\"East Norwalk\";\"main\"\n\"4833883\";\"Ellington\";\"main\"\n\"4834157\";\"Fairfield\";\"main\"\n\"4834157\";\"Feurfild\";\"other\"\n\"4834157\";\"Феърфилд\";\"other\"\n\"4834272\";\"Farmington\";\"main\"\n\"4834272\";\"Фармингтон\";\"other\"\n\"4834938\";\"Georgetown\";\"main\"\n\"4835003\";\"Glastonbury\";\"main\"\n\"4835003\";\"Glastonberi\";\"other\"\n\"4835003\";\"Гластонбери\";\"other\"\n\"4835004\";\"Glastonbury Center\";\"main\"\n\"4835395\";\"Greenwich\";\"main\"\n\"4835395\";\"Grinvich\";\"other\"\n\"4835395\";\"Гринвич\";\"other\"\n\"4835461\";\"Groton\";\"main\"\n\"4835512\";\"Guilford\";\"main\"\n\"4835512\";\"Gilford\";\"other\"\n\"4835512\";\"Гилфорд\";\"other\"\n\"4835654\";\"Hamden\";\"main\"\n\"4835797\";\"Hartford\";\"main\"\n\"4835797\";\"Khartford\";\"other\"\n\"4835797\";\"ha te fu\";\"other\"\n\"4835797\";\"hatofodo\";\"other\"\n\"4835797\";\"Хартфорд\";\"other\"\n\"4835797\";\"ハートフォード\";\"other\"\n\"4835797\";\"哈特福\";\"other\"\n\"4835946\";\"Hazardville\";\"main\"\n\"4835969\";\"Hebron\";\"main\"\n\"4836026\";\"Heritage Village\";\"main\"\n\"4836058\";\"Higganum\";\"main\"\n\"4836993\";\"Jewett City\";\"main\"\n\"4837222\";\"Kensington\";\"main\"\n\"4837278\";\"Killingly Center\";\"main\"\n\"4837466\";\"Lake Pocotopaug\";\"main\"\n\"4837648\";\"Ledyard Center\";\"main\"\n\"4837798\";\"Lisbon\";\"main\"\n\"4837916\";\"Long Hill\";\"main\"\n\"4838116\";\"Madison\";\"main\"\n\"4838116\";\"Мадисон\";\"other\"\n\"4838174\";\"Manchester\";\"main\"\n\"4838174\";\"Манчестер\";\"other\"\n\"4838203\";\"Mansfield Center\";\"main\"\n\"4838204\";\"Mansfield City\";\"main\"\n\"4838524\";\"Meriden\";\"main\"\n\"4838633\";\"Middletown\";\"main\"\n\"4838652\";\"Milford\";\"main\"\n\"4838652\";\"Милфорд\";\"other\"\n\"4838887\";\"Montville Center\";\"main\"\n\"4838895\";\"Moodus\";\"main\"\n\"4838928\";\"Moosup\";\"main\"\n\"4839141\";\"Mystic\";\"main\"\n\"4839222\";\"Naugatuck\";\"main\"\n\"4839292\";\"New Britain\";\"main\"\n\"4839366\";\"New Haven\";\"main\"\n\"4839366\";\"N'ju-Khejven\";\"other\"\n\"4839366\";\"niu hei wen\";\"other\"\n\"4839366\";\"nyuheibun\";\"other\"\n\"4839366\";\"nyw hyybn\";\"other\"\n\"4839366\";\"Нью-Хейвен\";\"other\"\n\"4839366\";\"ניו הייבן\";\"other\"\n\"4839366\";\"ニューヘイブン\";\"other\"\n\"4839366\";\"纽黑文\";\"other\"\n\"4839416\";\"New London\";\"main\"\n\"4839416\";\"N'ju-London\";\"other\"\n\"4839416\";\"Nova Londres\";\"other\"\n\"4839416\";\"Нью-Лондон\";\"other\"\n\"4839435\";\"New Milford\";\"main\"\n\"4839460\";\"New Preston\";\"main\"\n\"4839497\";\"Newington\";\"main\"\n\"4839521\";\"Niantic\";\"main\"\n\"4839568\";\"Noank\";\"main\"\n\"4839636\";\"North Branford\";\"main\"\n\"4839692\";\"North Granby\";\"main\"\n\"4839697\";\"North Grosvenor Dale\";\"main\"\n\"4839704\";\"North Haven\";\"main\"\n\"4839745\";\"North Stamford\";\"main\"\n\"4839822\";\"Norwalk\";\"main\"\n\"4839843\";\"Norwich\";\"main\"\n\"4839843\";\"Noridzh\";\"other\"\n\"4839843\";\"Норидж\";\"other\"\n\"4839921\";\"Oakville\";\"main\"\n\"4839983\";\"Old Greenwich\";\"main\"\n\"4840015\";\"Old Mystic\";\"main\"\n\"4840035\";\"Old Saybrook\";\"main\"\n\"4840104\";\"Orange\";\"main\"\n\"4840237\";\"Oxford\";\"main\"\n\"4840237\";\"Oksford\";\"other\"\n\"4840237\";\"Оксфорд\";\"other\"\n\"4840426\";\"Pawcatuck\";\"main\"\n\"4840755\";\"Plainfield\";\"main\"\n\"4840767\";\"Plainville\";\"main\"\n\"4840767\";\"Plejnvill'\";\"other\"\n\"4840767\";\"Плейнвилль\";\"other\"\n\"4840844\";\"Plymouth\";\"main\"\n\"4840844\";\"Plimut\";\"other\"\n\"4840844\";\"Плимут\";\"other\"\n\"4840983\";\"Poquonock Bridge\";\"main\"\n\"4841001\";\"Portland\";\"main\"\n\"4841001\";\"Portlend\";\"other\"\n\"4841001\";\"Портленд\";\"other\"\n\"4841089\";\"Prospect\";\"main\"\n\"4841125\";\"Preston City\";\"main\"\n\"4841125\";\"Preston\";\"other\"\n\"4841125\";\"Престон\";\"other\"\n\"4841187\";\"Putnam\";\"main\"\n\"4841217\";\"Quinebaug\";\"main\"\n\"4841463\";\"Ridgefield\";\"main\"\n\"4841628\";\"Rockville\";\"main\"\n\"4841628\";\"Rokvill\";\"other\"\n\"4841628\";\"Роквилл\";\"other\"\n\"4842507\";\"Salmon Brook\";\"main\"\n\"4842642\";\"Saybrook Manor\";\"main\"\n\"4842818\";\"Seymour\";\"main\"\n\"4842898\";\"Shelton\";\"main\"\n\"4842898\";\"Шелтон\";\"other\"\n\"4842958\";\"Sherwood Manor\";\"main\"\n\"4843215\";\"Somers\";\"main\"\n\"4843350\";\"South Windham\";\"main\"\n\"4843353\";\"South Windsor\";\"main\"\n\"4843359\";\"South Woodstock\";\"main\"\n\"4843362\";\"Southbury\";\"main\"\n\"4843411\";\"Southwood Acres\";\"main\"\n\"4843553\";\"Stafford\";\"main\"\n\"4843556\";\"Stafford Springs\";\"main\"\n\"4843564\";\"Stamford\";\"main\"\n\"4843564\";\"sutanfodo\";\"other\"\n\"4843564\";\"Стамфорд\";\"other\"\n\"4843564\";\"スタンフォード\";\"other\"\n\"4843786\";\"Storrs\";\"main\"\n\"4843811\";\"Stratford\";\"main\"\n\"4843811\";\"Стратфорд\";\"other\"\n\"4843878\";\"Suffield Depot\";\"main\"\n\"4844078\";\"Terramuggus\";\"main\"\n\"4844084\";\"Terryville\";\"main\"\n\"4844184\";\"Thompson\";\"main\"\n\"4844200\";\"Thompsonville\";\"main\"\n\"4844273\";\"Tolland\";\"main\"\n\"4844309\";\"Torrington\";\"main\"\n\"4844459\";\"Trumbull\";\"main\"\n\"4844459\";\"Trambal\";\"other\"\n\"4844459\";\"Трамбал\";\"other\"\n\"4845056\";\"Wallingford\";\"main\"\n\"4845193\";\"Waterbury\";\"main\"\n\"4845193\";\"Uot\\\"rb\\\"ri\";\"other\"\n\"4845193\";\"u~otabari\";\"other\"\n\"4845193\";\"u~otaberi\";\"other\"\n\"4845193\";\"Уотърбъри\";\"other\"\n\"4845193\";\"ウォーターバリー\";\"other\"\n\"4845193\";\"ウォーターベリー\";\"other\"\n\"4845245\";\"Watertown\";\"main\"\n\"4845261\";\"Wauregan\";\"main\"\n\"4845277\";\"Weatogue\";\"main\"\n\"4845411\";\"West Hartford\";\"main\"\n\"4845419\";\"West Haven\";\"main\"\n\"4845500\";\"West Simsbury\";\"main\"\n\"4845519\";\"West Torrington\";\"main\"\n\"4845585\";\"Westport\";\"main\"\n\"4845612\";\"Wethersfield\";\"main\"\n\"4845823\";\"Willimantic\";\"main\"\n\"4845889\";\"Winchester Center\";\"main\"\n\"4845898\";\"Windham\";\"main\"\n\"4845926\";\"Windsor Locks\";\"main\"\n\"4845953\";\"Winsted\";\"main\"\n\"4845984\";\"Wolcott\";\"main\"\n\"4846022\";\"Woodbridge\";\"main\"\n\"4846028\";\"Woodbury\";\"main\"\n\"4846028\";\"Vudbari\";\"other\"\n\"4846028\";\"Вудбари\";\"other\"\n\"4846051\";\"Woodmont\";\"main\"\n\"4846317\";\"Ackley\";\"main\"\n\"4846398\";\"Adel\";\"main\"\n\"4846499\";\"Akron\";\"main\"\n\"4846499\";\"Акрон\";\"other\"\n\"4846529\";\"Albia\";\"main\"\n\"4846602\";\"Algona\";\"main\"\n\"4846729\";\"Alta\";\"main\"\n\"4846745\";\"Alton\";\"main\"\n\"4846757\";\"Altoona\";\"main\"\n\"4846757\";\"Altuna\";\"other\"\n\"4846757\";\"Алтуна\";\"other\"\n\"4846834\";\"Ames\";\"main\"\n\"4846834\";\"Ehjmsa\";\"other\"\n\"4846834\";\"ai mu si\";\"other\"\n\"4846834\";\"xem s\";\"other\"\n\"4846834\";\"Эймса\";\"other\"\n\"4846834\";\"เอมส์\";\"other\"\n\"4846834\";\"艾姆斯\";\"other\"\n\"4846880\";\"Anamosa\";\"main\"\n\"4846948\";\"Anita\";\"main\"\n\"4846960\";\"Ankeny\";\"main\"\n\"4847187\";\"Arnolds Park\";\"main\"\n\"4847226\";\"Asbury\";\"main\"\n\"4847375\";\"Atkins\";\"main\"\n\"4847385\";\"Atlantic\";\"main\"\n\"4847421\";\"Audubon\";\"main\"\n\"4847498\";\"Avoca\";\"main\"\n\"4847849\";\"Baxter\";\"main\"\n\"4848022\";\"Bedford\";\"main\"\n\"4848022\";\"Бедфорд\";\"other\"\n\"4848106\";\"Belle Plaine\";\"main\"\n\"4848124\";\"Bellevue\";\"main\"\n\"4848144\";\"Belmond\";\"main\"\n\"4848489\";\"Bettendorf\";\"main\"\n\"4848854\";\"Bloomfield\";\"main\"\n\"4848891\";\"Blue Grass\";\"main\"\n\"4849026\";\"Bondurant\";\"main\"\n\"4849051\";\"Boone\";\"main\"\n\"4849380\";\"Britt\";\"main\"\n\"4849448\";\"Brooklyn\";\"main\"\n\"4849448\";\"Bruklin\";\"other\"\n\"4849448\";\"Бруклин\";\"other\"\n\"4849708\";\"Buffalo (historical)\";\"main\"\n\"4849709\";\"Buffalo\";\"main\"\n\"4849709\";\"Буффало\";\"other\"\n\"4849826\";\"Burlington\";\"main\"\n\"4849826\";\"Berlington\";\"other\"\n\"4849826\";\"Берлингтон\";\"other\"\n\"4850061\";\"Calmar\";\"main\"\n\"4850204\";\"Camanche\";\"main\"\n\"4850411\";\"Carlisle\";\"main\"\n\"4850478\";\"Carroll\";\"main\"\n\"4850531\";\"Carter Lake\";\"main\"\n\"4850549\";\"Cascade\";\"main\"\n\"4850699\";\"Cedar Falls\";\"main\"\n\"4850751\";\"Cedar Rapids\";\"main\"\n\"4850898\";\"Center Point\";\"main\"\n\"4850898\";\"Centr Point\";\"other\"\n\"4850898\";\"Центр Поинт\";\"other\"\n\"4850961\";\"Centerville\";\"main\"\n\"4850962\";\"Centerville\";\"main\"\n\"4850998\";\"Central City\";\"main\"\n\"4851140\";\"Chariton\";\"main\"\n\"4851163\";\"Charles City\";\"main\"\n\"4851247\";\"Cherokee\";\"main\"\n\"4851752\";\"Clarence\";\"main\"\n\"4851762\";\"Clarinda\";\"main\"\n\"4851785\";\"Clarion\";\"main\"\n\"4851846\";\"Clarksville\";\"main\"\n\"4851935\";\"Clear Lake\";\"main\"\n\"4852022\";\"Clinton\";\"main\"\n\"4852022\";\"Klinton\";\"other\"\n\"4852022\";\"Клинтон\";\"other\"\n\"4852052\";\"Clinton Stock Yards\";\"main\"\n\"4852065\";\"Clive\";\"main\"\n\"4852212\";\"Colfax\";\"main\"\n\"4852321\";\"Columbus Junction\";\"main\"\n\"4852519\";\"Conrad\";\"main\"\n\"4852589\";\"Coon Rapids\";\"main\"\n\"4852640\";\"Coralville\";\"main\"\n\"4852711\";\"Corning\";\"main\"\n\"4852755\";\"Corydon\";\"main\"\n\"4852832\";\"Council Bluffs\";\"main\"\n\"4853059\";\"Cresco\";\"main\"\n\"4853078\";\"Creston\";\"main\"\n\"4853325\";\"Dallas Center\";\"main\"\n\"4853423\";\"Davenport\";\"main\"\n\"4853423\";\"Dehvenport\";\"other\"\n\"4853423\";\"Дэвенпорт\";\"other\"\n\"4853537\";\"De Soto\";\"main\"\n\"4853551\";\"De Witt\";\"main\"\n\"4853608\";\"Decorah\";\"main\"\n\"4853757\";\"Denison\";\"main\"\n\"4853757\";\"Денисон\";\"other\"\n\"4853799\";\"Denver\";\"main\"\n\"4853799\";\"Денвер\";\"other\"\n\"4853828\";\"Des Moines\";\"main\"\n\"4853828\";\"De-Mojn\";\"other\"\n\"4853828\";\"de mei yin\";\"other\"\n\"4853828\";\"demoin\";\"other\"\n\"4853828\";\"dh mwyn\";\"other\"\n\"4853828\";\"di mxyn\";\"other\"\n\"4853828\";\"dy mwyn\";\"other\"\n\"4853828\";\"Де-Мойн\";\"other\"\n\"4853828\";\"דה מוין\";\"other\"\n\"4853828\";\"دي موين\";\"other\"\n\"4853828\";\"ดิมอยน์\";\"other\"\n\"4853828\";\"デモイン\";\"other\"\n\"4853828\";\"德梅因\";\"other\"\n\"4854158\";\"Dike\";\"main\"\n\"4854529\";\"Dubuque\";\"main\"\n\"4854644\";\"Dunlap\";\"main\"\n\"4854674\";\"Durant\";\"main\"\n\"4854711\";\"Dyersville\";\"main\"\n\"4854718\";\"Dysart\";\"main\"\n\"4854745\";\"Eagle Grove\";\"main\"\n\"4854792\";\"Earlham\";\"main\"\n\"4855167\";\"Eddyville\";\"main\"\n\"4855218\";\"Eldora\";\"main\"\n\"4855248\";\"Eldridge\";\"main\"\n\"4855333\";\"Elk Run Heights\";\"main\"\n\"4855341\";\"Elkader\";\"main\"\n\"4855521\";\"Ely\";\"main\"\n\"4855595\";\"Emmetsburg\";\"main\"\n\"4855679\";\"Epworth\";\"main\"\n\"4855709\";\"Estherville\";\"main\"\n\"4855806\";\"Evansdale\";\"main\"\n\"4855951\";\"Fairbank\";\"main\"\n\"4855958\";\"Fairfax\";\"main\"\n\"4855967\";\"Fairfield\";\"main\"\n\"4855967\";\"Feurfild\";\"other\"\n\"4855967\";\"Феърфилд\";\"other\"\n\"4856296\";\"Farley\";\"main\"\n\"4856468\";\"Fayette\";\"main\"\n\"4857406\";\"Forest City\";\"main\"\n\"4857486\";\"Fort Dodge\";\"main\"\n\"4857507\";\"Fort Madison\";\"main\"\n\"4858117\";\"Garner\";\"main\"\n\"4858117\";\"Гарнер\";\"other\"\n\"4858239\";\"George\";\"main\"\n\"4858343\";\"Gilbert\";\"main\"\n\"4858343\";\"Гилберт\";\"other\"\n\"4858479\";\"Glenwood\";\"main\"\n\"4858498\";\"Glidden\";\"main\"\n\"4858687\";\"Gowrie\";\"main\"\n\"4859211\";\"Greene\";\"main\"\n\"4859234\";\"Greenfield\";\"main\"\n\"4859234\";\"Grinfild\";\"other\"\n\"4859234\";\"Гринфилд\";\"other\"\n\"4859329\";\"Grimes\";\"main\"\n\"4859343\";\"Grinnell\";\"main\"\n\"4859430\";\"Grundy Center\";\"main\"\n\"4859491\";\"Guthrie Center\";\"main\"\n\"4859514\";\"Guttenberg\";\"main\"\n\"4859603\";\"Hamburg\";\"main\"\n\"4859658\";\"Hampton\";\"main\"\n\"4859658\";\"Khehmpton\";\"other\"\n\"4859658\";\"Хэмптон\";\"other\"\n\"4859802\";\"Harlan\";\"main\"\n\"4859950\";\"Hartley\";\"main\"\n\"4860066\";\"Hawarden\";\"main\"\n\"4860452\";\"Hiawatha\";\"main\"\n\"4860886\";\"Holstein\";\"main\"\n\"4861298\";\"Hudson\";\"main\"\n\"4861298\";\"Gudzon\";\"other\"\n\"4861298\";\"Гудзон\";\"other\"\n\"4861319\";\"Hull\";\"main\"\n\"4861335\";\"Humboldt\";\"main\"\n\"4861422\";\"Huxley\";\"main\"\n\"4861464\";\"Ida Grove\";\"main\"\n\"4861620\";\"Independence\";\"main\"\n\"4861719\";\"Indianola\";\"main\"\n\"4862034\";\"Iowa City\";\"main\"\n\"4862069\";\"Iowa Falls\";\"main\"\n\"4862482\";\"Jefferson\";\"main\"\n\"4862482\";\"Dzhefferson\";\"other\"\n\"4862482\";\"Джефферсон\";\"other\"\n\"4862645\";\"Jesup\";\"main\"\n\"4862659\";\"Jewell\";\"main\"\n\"4862760\";\"Johnston\";\"main\"\n\"4863181\";\"Kalona\";\"main\"\n\"4863349\";\"Keokuk\";\"main\"\n\"4863380\";\"Keosauqua\";\"main\"\n\"4863535\";\"Kingsley\";\"main\"\n\"4863705\";\"Knoxville\";\"main\"\n\"4863705\";\"Noksvill\";\"other\"\n\"4863705\";\"Ноксвилл\";\"other\"\n\"4863820\";\"La Porte City\";\"main\"\n\"4863906\";\"Lake City\";\"main\"\n\"4863966\";\"Lake Mills\";\"main\"\n\"4864012\";\"Lake View\";\"main\"\n\"4864105\";\"Lamoni\";\"main\"\n\"4864265\";\"Laurens\";\"main\"\n\"4864315\";\"Le Claire\";\"main\"\n\"4864315\";\"LeClaire\";\"other\"\n\"4864337\";\"Le Mars\";\"main\"\n\"4864471\";\"Lenox\";\"main\"\n\"4864492\";\"Leon\";\"main\"\n\"4864990\";\"Lisbon\";\"main\"\n\"4865287\";\"Logan\";\"main\"\n\"4865338\";\"Lone Tree\";\"main\"\n\"4865871\";\"Madrid\";\"main\"\n\"4865974\";\"Malvern\";\"main\"\n\"4865996\";\"Manchester\";\"main\"\n\"4865996\";\"Манчестер\";\"other\"\n\"4866032\";\"Manly\";\"main\"\n\"4866048\";\"Manning\";\"main\"\n\"4866066\";\"Manson\";\"main\"\n\"4866151\";\"Mapleton\";\"main\"\n\"4866164\";\"Maquoketa\";\"main\"\n\"4866215\";\"Marcus\";\"main\"\n\"4866236\";\"Marengo\";\"main\"\n\"4866263\";\"Marion\";\"main\"\n\"4866263\";\"Mehrion\";\"other\"\n\"4866263\";\"Мэрион\";\"other\"\n\"4866371\";\"Marshalltown\";\"main\"\n\"4866445\";\"Mason City\";\"main\"\n\"4866445\";\"Mejson-Siti\";\"other\"\n\"4866445\";\"Мейсон-Сити\";\"other\"\n\"4866830\";\"Mechanicsville\";\"main\"\n\"4866845\";\"Mediapolis\";\"main\"\n\"4866897\";\"Melcher-Dallas\";\"main\"\n\"4867373\";\"Milford\";\"main\"\n\"4867373\";\"Милфорд\";\"other\"\n\"4867597\";\"Missouri Valley\";\"main\"\n\"4867632\";\"Mitchellville\";\"main\"\n\"4867700\";\"Monona\";\"main\"\n\"4867721\";\"Monroe\";\"main\"\n\"4867721\";\"Monro\";\"other\"\n\"4867721\";\"Монро\";\"other\"\n\"4867775\";\"Montezuma\";\"main\"\n\"4867801\";\"Monticello\";\"main\"\n\"4868092\";\"Mount Ayr\";\"main\"\n\"4868205\";\"Mount Pleasant\";\"main\"\n\"4868251\";\"Mount Vernon\";\"main\"\n\"4868306\";\"Moville\";\"main\"\n\"4868404\";\"Muscatine\";\"main\"\n\"4868498\";\"Nashua\";\"main\"\n\"4868620\";\"Nevada\";\"main\"\n\"4868620\";\"Невада\";\"other\"\n\"4868686\";\"New Hampton\";\"main\"\n\"4868768\";\"New London\";\"main\"\n\"4868768\";\"N'ju-London\";\"other\"\n\"4868768\";\"Нью-Лондон\";\"other\"\n\"4868809\";\"New Sharon\";\"main\"\n\"4868882\";\"Newhall\";\"main\"\n\"4868907\";\"Newton\";\"main\"\n\"4868907\";\"N'juton\";\"other\"\n\"4868907\";\"Ньютон\";\"other\"\n\"4869045\";\"Nora Springs\";\"main\"\n\"4869136\";\"North English\";\"main\"\n\"4869195\";\"North Liberty\";\"main\"\n\"4869369\";\"Northwood\";\"main\"\n\"4869386\";\"Norwalk\";\"main\"\n\"4869613\";\"Oakland\";\"main\"\n\"4869614\";\"Oakland\";\"main\"\n\"4869614\";\"Oklend\";\"other\"\n\"4869614\";\"Окленд\";\"other\"\n\"4869743\";\"Odebolt\";\"main\"\n\"4869760\";\"Oelwein\";\"main\"\n\"4869780\";\"Ogden\";\"main\"\n\"4869780\";\"Огден\";\"other\"\n\"4870003\";\"Onawa\";\"main\"\n\"4870083\";\"Orange City\";\"main\"\n\"4870184\";\"Osage\";\"main\"\n\"4870211\";\"Osceola\";\"main\"\n\"4870239\";\"Oskaloosa\";\"main\"\n\"4870380\";\"Ottumwa\";\"main\"\n\"4870380\";\"Ottamua\";\"other\"\n\"4870380\";\"Оттамуа\";\"other\"\n\"4870654\";\"Panora\";\"main\"\n\"4870716\";\"Park View\";\"main\"\n\"4870730\";\"Parkersburg\";\"main\"\n\"4870730\";\"Parkersberg\";\"other\"\n\"4870730\";\"Паркерсберг\";\"other\"\n\"4870823\";\"Paullina\";\"main\"\n\"4870915\";\"Pella\";\"main\"\n\"4871019\";\"Perry\";\"main\"\n\"4871472\";\"Pleasant Hill\";\"main\"\n\"4871647\";\"Pleasantville\";\"main\"\n\"4871727\";\"Pocahontas\";\"main\"\n\"4871773\";\"Polk City\";\"main\"\n\"4871875\";\"Postville\";\"main\"\n\"4871942\";\"Prairie City\";\"main\"\n\"4872593\";\"Red Oak\";\"main\"\n\"4872729\";\"Reinbeck\";\"main\"\n\"4872752\";\"Remsen\";\"main\"\n\"4873263\";\"Robins\";\"main\"\n\"4873354\";\"Rock Rapids\";\"main\"\n\"4873371\";\"Rock Valley\";\"main\"\n\"4873426\";\"Rockwell City\";\"main\"\n\"4873496\";\"Roland\";\"main\"\n\"4873884\";\"Sac City\";\"main\"\n\"4874045\";\"Saint Ansgar\";\"main\"\n\"4875489\";\"Sanborn\";\"main\"\n\"4875626\";\"Saylorville\";\"main\"\n\"4875904\";\"Sergeant Bluff\";\"main\"\n\"4876141\";\"Sheldon\";\"main\"\n\"4876161\";\"Shell Rock\";\"main\"\n\"4876190\";\"Shenandoah\";\"main\"\n\"4876353\";\"Sidney\";\"main\"\n\"4876353\";\"Sidnej\";\"other\"\n\"4876353\";\"Сидней\";\"other\"\n\"4876378\";\"Sibley\";\"main\"\n\"4876384\";\"Sigourney\";\"main\"\n\"4876510\";\"Sioux Center\";\"main\"\n\"4876523\";\"Sioux City\";\"main\"\n\"4876661\";\"Slater\";\"main\"\n\"4876686\";\"Sloan\";\"main\"\n\"4876867\";\"Solon\";\"main\"\n\"4876867\";\"Солон\";\"other\"\n\"4877138\";\"Spencer\";\"main\"\n\"4877184\";\"Spirit Lake\";\"main\"\n\"4877352\";\"Springville\";\"main\"\n\"4877466\";\"State Center\";\"main\"\n\"4877655\";\"Storm Lake\";\"main\"\n\"4877676\";\"Story City\";\"main\"\n\"4877729\";\"Strawberry Point\";\"main\"\n\"4877761\";\"Stuart\";\"main\"\n\"4877907\";\"Sumner\";\"main\"\n\"4878229\";\"Tama\";\"main\"\n\"4878585\";\"Tiffin\";\"main\"\n\"4878643\";\"Tipton\";\"main\"\n\"4878703\";\"Toledo\";\"main\"\n\"4878703\";\"Толедо\";\"other\"\n\"4878795\";\"Traer\";\"main\"\n\"4879018\";\"Tripoli\";\"main\"\n\"4879881\";\"Urbana\";\"main\"\n\"4879881\";\"Урбана\";\"other\"\n\"4879890\";\"Urbandale\";\"main\"\n\"4880228\";\"Villisca\";\"main\"\n\"4880268\";\"Vinton\";\"main\"\n\"4880422\";\"Walcott\";\"main\"\n\"4880442\";\"Walford\";\"main\"\n\"4880620\";\"Wapello\";\"main\"\n\"4880731\";\"Washington\";\"main\"\n\"4880731\";\"Vashington\";\"other\"\n\"4880731\";\"Вашингтон\";\"other\"\n\"4880889\";\"Waterloo\";\"main\"\n\"4880889\";\"Vaterlo\";\"other\"\n\"4880889\";\"Ватерло\";\"other\"\n\"4880981\";\"Waukee\";\"main\"\n\"4880997\";\"Waukon\";\"main\"\n\"4881024\";\"Waverly\";\"main\"\n\"4881096\";\"Webster City\";\"main\"\n\"4881149\";\"Wellman\";\"main\"\n\"4881274\";\"West Branch\";\"main\"\n\"4881322\";\"West Burlington\";\"main\"\n\"4881346\";\"West Des Moines\";\"main\"\n\"4881433\";\"West Liberty\";\"main\"\n\"4881551\";\"West Union\";\"main\"\n\"4882007\";\"Williamsburg\";\"main\"\n\"4882164\";\"Wilton\";\"main\"\n\"4882198\";\"Windsor Heights\";\"main\"\n\"4882211\";\"Winfield\";\"main\"\n\"4882259\";\"Winterset\";\"main\"\n\"4882378\";\"Woodbine\";\"main\"\n\"4882453\";\"Woodward\";\"main\"\n\"4882839\";\"Abingdon\";\"main\"\n\"4882920\";\"Addison\";\"main\"\n\"4883053\";\"Aledo\";\"main\"\n\"4883078\";\"Algonquin\";\"main\"\n\"4883207\";\"Alsip\";\"main\"\n\"4883249\";\"Amboy\";\"main\"\n\"4883311\";\"Andalusia\";\"main\"\n\"4883393\";\"Antioch\";\"main\"\n\"4883393\";\"Antiok\";\"other\"\n\"4883393\";\"Антиок\";\"other\"\n\"4883555\";\"Arlington Heights\";\"main\"\n\"4883701\";\"Ashton\";\"main\"\n\"4883749\";\"Astoria\";\"main\"\n\"4883772\";\"Atlanta\";\"main\"\n\"4883772\";\"Атланта\";\"other\"\n\"4883817\";\"Aurora\";\"main\"\n\"4883817\";\"Avrora\";\"other\"\n\"4883817\";\"Аврора\";\"other\"\n\"4884038\";\"Bannockburn\";\"main\"\n\"4884116\";\"Barrington\";\"main\"\n\"4884121\";\"Barrington Hills\";\"main\"\n\"4884141\";\"Bartlett\";\"main\"\n\"4884141\";\"Бартлетт\";\"other\"\n\"4884161\";\"Bartonville\";\"main\"\n\"4884192\";\"Batavia\";\"main\"\n\"4884192\";\"Batavija\";\"other\"\n\"4884192\";\"Батавия\";\"other\"\n\"4884249\";\"Beach Park\";\"main\"\n\"4884282\";\"Beardstown\";\"main\"\n\"4884352\";\"Beecher\";\"main\"\n\"4884416\";\"Bellevue\";\"main\"\n\"4884434\";\"Bellwood\";\"main\"\n\"4884453\";\"Belvidere\";\"main\"\n\"4884453\";\"Bel'vedere\";\"other\"\n\"4884453\";\"Бельведере\";\"other\"\n\"4884509\";\"Bensenville\";\"main\"\n\"4884562\";\"Berkeley\";\"main\"\n\"4884562\";\"Berkli\";\"other\"\n\"4884562\";\"Беркли\";\"other\"\n\"4884597\";\"Berwyn\";\"main\"\n\"4885156\";\"Bloomingdale\";\"main\"\n\"4885164\";\"Bloomington\";\"main\"\n\"4885164\";\"Blumington\";\"other\"\n\"4885164\";\"blumintana\";\"other\"\n\"4885164\";\"Блумингтон\";\"other\"\n\"4885164\";\"ব্লুমিংটন\";\"other\"\n\"4885186\";\"Blue Island\";\"main\"\n\"4885265\";\"Bolingbrook\";\"main\"\n\"4885336\";\"Boulder Hill\";\"main\"\n\"4885342\";\"Bourbonnais\";\"main\"\n\"4885418\";\"Bradley\";\"main\"\n\"4885444\";\"Braidwood\";\"main\"\n\"4885573\";\"Bridgeview\";\"main\"\n\"4885637\";\"Broadview\";\"main\"\n\"4885689\";\"Brookfield\";\"main\"\n\"4885955\";\"Buffalo Grove\";\"main\"\n\"4885983\";\"Burbank\";\"main\"\n\"4885983\";\"Berbank\";\"other\"\n\"4885983\";\"Бербанк\";\"other\"\n\"4886038\";\"Burnham\";\"main\"\n\"4886090\";\"Burr Ridge\";\"main\"\n\"4886117\";\"Bushnell\";\"main\"\n\"4886188\";\"Byron\";\"main\"\n\"4886255\";\"Calumet City\";\"main\"\n\"4886269\";\"Calumet Park\";\"main\"\n\"4886374\";\"Cambridge\";\"main\"\n\"4886374\";\"Kembridzh\";\"other\"\n\"4886374\";\"Кембридж\";\"other\"\n\"4886464\";\"Camp Point\";\"main\"\n\"4886584\";\"Capron\";\"main\"\n\"4886590\";\"Carbon Cliff\";\"main\"\n\"4886662\";\"Carol Stream\";\"main\"\n\"4886676\";\"Carpentersville\";\"main\"\n\"4886716\";\"Carthage\";\"main\"\n\"4886717\";\"Carthage\";\"main\"\n\"4886738\";\"Cary\";\"main\"\n\"4886738\";\"Kehri\";\"other\"\n\"4886738\";\"Кэри\";\"other\"\n\"4886790\";\"Catlin\";\"main\"\n\"4887024\";\"Central City\";\"main\"\n\"4887158\";\"Champaign\";\"main\"\n\"4887158\";\"Shampejn\";\"other\"\n\"4887158\";\"syampe'ina\";\"other\"\n\"4887158\";\"Шампейн\";\"other\"\n\"4887158\";\"শ্যাম্পেইন\";\"other\"\n\"4887198\";\"Channahon\";\"main\"\n\"4887205\";\"Channel Lake\";\"main\"\n\"4887290\";\"Chatsworth\";\"main\"\n\"4887309\";\"Chebanse\";\"main\"\n\"4887330\";\"Chenoa\";\"main\"\n\"4887364\";\"Cherry Valley\";\"main\"\n\"4887398\";\"Chicago\";\"main\"\n\"4887398\";\"CHI\";\"other\"\n\"4887398\";\"Chikago\";\"other\"\n\"4887398\";\"Chykaga\";\"other\"\n\"4887398\";\"Cikaga\";\"other\"\n\"4887398\";\"Cikago\";\"other\"\n\"4887398\";\"Sicagum\";\"other\"\n\"4887398\";\"Sikago\";\"other\"\n\"4887398\";\"chikhako\";\"other\"\n\"4887398\";\"chykagw\";\"other\"\n\"4887398\";\"cikako\";\"other\"\n\"4887398\";\"shikago\";\"other\"\n\"4887398\";\"shykaghw\";\"other\"\n\"4887398\";\"sikago\";\"other\"\n\"4887398\";\"syqgw\";\"other\"\n\"4887398\";\"zhi jia ge\";\"other\"\n\"4887398\";\"Ĉikago\";\"other\"\n\"4887398\";\"Čikaga\";\"other\"\n\"4887398\";\"Čikāga\";\"other\"\n\"4887398\";\"Σικάγο\";\"other\"\n\"4887398\";\"Чикаго\";\"other\"\n\"4887398\";\"Чикаґо\";\"other\"\n\"4887398\";\"Чыкага\";\"other\"\n\"4887398\";\"Чікаґо\";\"other\"\n\"4887398\";\"שיקגו\";\"other\"\n\"4887398\";\"شيكاغو\";\"other\"\n\"4887398\";\"چىكاگو\";\"other\"\n\"4887398\";\"শিকাগো\";\"other\"\n\"4887398\";\"சிகாகோ\";\"other\"\n\"4887398\";\"ชิคาโก\";\"other\"\n\"4887398\";\"ჩიკაგო\";\"other\"\n\"4887398\";\"シカゴ\";\"other\"\n\"4887398\";\"芝加哥\";\"other\"\n\"4887398\";\"시카고\";\"other\"\n\"4887442\";\"Chicago Heights\";\"main\"\n\"4887492\";\"Chicago Ridge\";\"main\"\n\"4887574\";\"Chillicothe\";\"main\"\n\"4888015\";\"Cicero\";\"main\"\n\"4888015\";\"Ciceron\";\"other\"\n\"4888015\";\"Цицерон\";\"other\"\n\"4888080\";\"Clarendon Hills\";\"main\"\n\"4888208\";\"Clifton\";\"main\"\n\"4888208\";\"Klifton\";\"other\"\n\"4888208\";\"Клифтон\";\"other\"\n\"4888217\";\"Clinton\";\"main\"\n\"4888217\";\"Klinton\";\"other\"\n\"4888217\";\"Клинтон\";\"other\"\n\"4888270\";\"Coal City\";\"main\"\n\"4888296\";\"Coal Valley\";\"main\"\n\"4888331\";\"Colchester\";\"main\"\n\"4888432\";\"Colona\";\"main\"\n\"4888810\";\"Cortland\";\"main\"\n\"4888892\";\"Country Club Hills\";\"main\"\n\"4888906\";\"Countryside\";\"main\"\n\"4889107\";\"Crest Hill\";\"main\"\n\"4889113\";\"Crestwood\";\"main\"\n\"4889120\";\"Crete\";\"main\"\n\"4889130\";\"Creve Coeur\";\"main\"\n\"4889229\";\"Crystal Lake\";\"main\"\n\"4889248\";\"Crystal Lawns\";\"main\"\n\"4889255\";\"Cuba\";\"main\"\n\"4889256\";\"Cuba\";\"main\"\n\"4889423\";\"Danvers\";\"main\"\n\"4889423\";\"Denvers\";\"other\"\n\"4889423\";\"Денверс\";\"other\"\n\"4889426\";\"Danville\";\"main\"\n\"4889447\";\"Darien\";\"main\"\n\"4889553\";\"DeKalb\";\"main\"\n\"4889652\";\"Deer Park\";\"main\"\n\"4889668\";\"Deerfield\";\"main\"\n\"4889700\";\"Delavan\";\"main\"\n\"4889761\";\"Depue\";\"main\"\n\"4889772\";\"Des Plaines\";\"main\"\n\"4889835\";\"Diamond\";\"main\"\n\"4889957\";\"Dixmoor\";\"main\"\n\"4889959\";\"Dixon\";\"main\"\n\"4890009\";\"Dolton\";\"main\"\n\"4890119\";\"Downers Grove\";\"main\"\n\"4890327\";\"Durand\";\"main\"\n\"4890359\";\"Dwight\";\"main\"\n\"4890441\";\"Earlville\";\"main\"\n\"4890486\";\"East Dundee\";\"main\"\n\"4890497\";\"East Dubuque\";\"main\"\n\"4890513\";\"East Hazel Crest\";\"main\"\n\"4890536\";\"East Moline\";\"main\"\n\"4890549\";\"East Peoria\";\"main\"\n\"4890813\";\"El Paso\";\"main\"\n\"4890813\";\"Ehl'-Paso\";\"other\"\n\"4890813\";\"Эль-Пасо\";\"other\"\n\"4890835\";\"Elburn\";\"main\"\n\"4890864\";\"Elgin\";\"main\"\n\"4890925\";\"Elk Grove Village\";\"main\"\n\"4891010\";\"Elmhurst\";\"main\"\n\"4891030\";\"Elmwood\";\"main\"\n\"4891051\";\"Elmwood Park\";\"main\"\n\"4891077\";\"Elwood\";\"main\"\n\"4891240\";\"Erie\";\"main\"\n\"4891240\";\"Ehri\";\"other\"\n\"4891240\";\"Эри\";\"other\"\n\"4891310\";\"Eureka\";\"main\"\n\"4891310\";\"Ehvrika\";\"other\"\n\"4891310\";\"Эврика\";\"other\"\n\"4891382\";\"Evanston\";\"main\"\n\"4891431\";\"Evergreen Park\";\"main\"\n\"4891520\";\"Fairbury\";\"main\"\n\"4891534\";\"Fairfield\";\"main\"\n\"4891555\";\"Fairmont\";\"main\"\n\"4891772\";\"Farmer City\";\"main\"\n\"4891784\";\"Farmington\";\"main\"\n\"4891784\";\"Фармингтон\";\"other\"\n\"4891785\";\"Farmington\";\"main\"\n\"4892570\";\"Fisher\";\"main\"\n\"4892637\";\"Flanagan\";\"main\"\n\"4892684\";\"Flossmoor\";\"main\"\n\"4892731\";\"Ford Heights\";\"main\"\n\"4892770\";\"Forest Lake\";\"main\"\n\"4892775\";\"Forest Park\";\"main\"\n\"4892812\";\"Forrest\";\"main\"\n\"4892818\";\"Forreston\";\"main\"\n\"4892950\";\"Fox Lake\";\"main\"\n\"4892953\";\"Fox Lake Hills\";\"main\"\n\"4892971\";\"Fox River Grove\";\"main\"\n\"4893037\";\"Frankfort\";\"main\"\n\"4893037\";\"Frankfurt\";\"other\"\n\"4893037\";\"Франкфурт\";\"other\"\n\"4893043\";\"Frankfort Square\";\"main\"\n\"4893061\";\"Franklin Grove\";\"main\"\n\"4893070\";\"Franklin Park\";\"main\"\n\"4893171\";\"Freeport\";\"main\"\n\"4893309\";\"Fulton\";\"main\"\n\"4893371\";\"Gages Lake\";\"main\"\n\"4893384\";\"Galena\";\"main\"\n\"4893392\";\"Galesburg\";\"main\"\n\"4893424\";\"Galva\";\"main\"\n\"4893472\";\"Gardner\";\"main\"\n\"4893472\";\"Гарднер\";\"other\"\n\"4893581\";\"Geneseo\";\"main\"\n\"4893591\";\"Geneva\";\"main\"\n\"4893591\";\"Zheneva\";\"other\"\n\"4893591\";\"Женева\";\"other\"\n\"4893601\";\"Genoa\";\"main\"\n\"4893637\";\"Georgetown\";\"main\"\n\"4893670\";\"Germantown Hills\";\"main\"\n\"4893700\";\"Gibson City\";\"main\"\n\"4893720\";\"Gifford\";\"main\"\n\"4893731\";\"Gilberts\";\"main\"\n\"4893755\";\"Gilman\";\"main\"\n\"4893811\";\"Glen Ellyn\";\"main\"\n\"4893886\";\"Glenview\";\"main\"\n\"4893896\";\"Glenwood\";\"main\"\n\"4894061\";\"Goodings Grove\";\"main\"\n\"4894078\";\"Glencoe\";\"main\"\n\"4894360\";\"Grandwood Park\";\"main\"\n\"4894387\";\"Grant Park\";\"main\"\n\"4894410\";\"Granville\";\"main\"\n\"4894465\";\"Grayslake\";\"main\"\n\"4894614\";\"Green Oaks\";\"main\"\n\"4894625\";\"Green Rock\";\"main\"\n\"4894753\";\"Gridley\";\"main\"\n\"4894861\";\"Gurnee\";\"main\"\n\"4894921\";\"Hainesville\";\"main\"\n\"4894981\";\"Hamilton\";\"main\"\n\"4894981\";\"Gamil'ton\";\"other\"\n\"4894981\";\"Гамильтон\";\"other\"\n\"4895016\";\"Hampshire\";\"main\"\n\"4895027\";\"Hampton\";\"main\"\n\"4895027\";\"Khehmpton\";\"other\"\n\"4895027\";\"Хэмптон\";\"other\"\n\"4895066\";\"Hanover Park\";\"main\"\n\"4895282\";\"Harvard\";\"main\"\n\"4895298\";\"Harvey\";\"main\"\n\"4895298\";\"Kharvi\";\"other\"\n\"4895298\";\"Харви\";\"other\"\n\"4895308\";\"Harwood Heights\";\"main\"\n\"4895336\";\"Havana\";\"main\"\n\"4895376\";\"Hawthorn Woods\";\"main\"\n\"4895416\";\"Hazel Crest\";\"main\"\n\"4895484\";\"Hebron\";\"main\"\n\"4895593\";\"Henry\";\"main\"\n\"4895688\";\"Herscher\";\"main\"\n\"4895708\";\"Heyworth\";\"main\"\n\"4895767\";\"Hickory Hills\";\"main\"\n\"4895876\";\"Highland Park\";\"main\"\n\"4895918\";\"Highwood\";\"main\"\n\"4895936\";\"Hillcrest\";\"main\"\n\"4895971\";\"Hillside\";\"main\"\n\"4895999\";\"Hinckley\";\"main\"\n\"4896012\";\"Hinsdale\";\"main\"\n\"4896069\";\"Hodgkins\";\"main\"\n\"4896075\";\"Hoffman Estates\";\"main\"\n\"4896333\";\"Homer\";\"main\"\n\"4896348\";\"Hometown\";\"main\"\n\"4896353\";\"Homewood\";\"main\"\n\"4896390\";\"Hoopeston\";\"main\"\n\"4896608\";\"Hudson\";\"main\"\n\"4896608\";\"Gudzon\";\"other\"\n\"4896608\";\"Гудзон\";\"other\"\n\"4896691\";\"Huntley\";\"main\"\n\"4897039\";\"Indian Head Park\";\"main\"\n\"4897105\";\"Ingalls Park\";\"main\"\n\"4897482\";\"Inverness\";\"main\"\n\"4897579\";\"Island Lake\";\"main\"\n\"4897654\";\"Itasca\";\"main\"\n\"4897967\";\"Johnsburg\";\"main\"\n\"4898015\";\"Joliet\";\"main\"\n\"4898152\";\"Justice\";\"main\"\n\"4898182\";\"Kankakee\";\"main\"\n\"4898349\";\"Kenilworth\";\"main\"\n\"4898433\";\"Kewanee\";\"main\"\n\"4898480\";\"Kildeer\";\"main\"\n\"4898630\";\"Kirkland\";\"main\"\n\"4898734\";\"Knoxville\";\"main\"\n\"4898734\";\"Noksvill\";\"other\"\n\"4898734\";\"Ноксвилл\";\"other\"\n\"4898846\";\"La Grange\";\"main\"\n\"4898850\";\"La Grange Park\";\"main\"\n\"4898856\";\"La Harpe\";\"main\"\n\"4898875\";\"La Salle\";\"main\"\n\"4898920\";\"Lacon\";\"main\"\n\"4898927\";\"Ladd\";\"main\"\n\"4898969\";\"Lake Barrington\";\"main\"\n\"4898974\";\"Lake Bluff\";\"main\"\n\"4898990\";\"Lake Catherine\";\"main\"\n\"4899012\";\"Lake Forest\";\"main\"\n\"4899135\";\"Lake Summerset\";\"main\"\n\"4899154\";\"Lake Villa\";\"main\"\n\"4899170\";\"Lake Zurich\";\"main\"\n\"4899184\";\"Lake in the Hills\";\"main\"\n\"4899197\";\"Lake of the Woods\";\"main\"\n\"4899213\";\"Lakemoor\";\"main\"\n\"4899249\";\"Lakewood\";\"main\"\n\"4899249\";\"Lejkvud\";\"other\"\n\"4899249\";\"Лейквуд\";\"other\"\n\"4899258\";\"Lakewood Shores\";\"main\"\n\"4899287\";\"Lanark\";\"main\"\n\"4899340\";\"Lansing\";\"main\"\n\"4899340\";\"Лансинг\";\"other\"\n\"4899471\";\"Le Roy\";\"main\"\n\"4899581\";\"Lemont\";\"main\"\n\"4899665\";\"Lewistown\";\"main\"\n\"4899670\";\"Lexington\";\"main\"\n\"4899670\";\"Leksington\";\"other\"\n\"4899670\";\"Лексингтон\";\"other\"\n\"4899739\";\"Libertyville\";\"main\"\n\"4899822\";\"Lincoln\";\"main\"\n\"4899822\";\"Linkol'n\";\"other\"\n\"4899822\";\"Линкольн\";\"other\"\n\"4899983\";\"Lincolnshire\";\"main\"\n\"4899983\";\"Linkol'nshir\";\"other\"\n\"4899983\";\"Линкольншир\";\"other\"\n\"4899988\";\"Lincolnwood\";\"main\"\n\"4900013\";\"Lindenhurst\";\"main\"\n\"4900080\";\"Lisle\";\"main\"\n\"4900080\";\"Lilu\";\"other\"\n\"4900080\";\"Лилу\";\"other\"\n\"4900292\";\"Lockport\";\"main\"\n\"4900373\";\"Lombard\";\"main\"\n\"4900373\";\"Ломбард\";\"other\"\n\"4900416\";\"Long Grove\";\"main\"\n\"4900430\";\"Long Lake\";\"main\"\n\"4900579\";\"Loves Park\";\"main\"\n\"4900739\";\"Lynwood\";\"main\"\n\"4900739\";\"Linvud\";\"other\"\n\"4900739\";\"Линвуд\";\"other\"\n\"4900740\";\"Lynwood\";\"main\"\n\"4900749\";\"Lyons\";\"main\"\n\"4900801\";\"Machesney Park\";\"main\"\n\"4900808\";\"Mackinaw\";\"main\"\n\"4900817\";\"Macomb\";\"main\"\n\"4900885\";\"Mahomet\";\"main\"\n\"4900961\";\"Manhattan\";\"main\"\n\"4900961\";\"Mankhehtten\";\"other\"\n\"4900961\";\"Манхэттен\";\"other\"\n\"4900970\";\"Manito\";\"main\"\n\"4901015\";\"Manteno\";\"main\"\n\"4901102\";\"Maple Park\";\"main\"\n\"4901164\";\"Marengo\";\"main\"\n\"4901229\";\"Markham\";\"main\"\n\"4901249\";\"Maroa\";\"main\"\n\"4901260\";\"Marquette Heights\";\"main\"\n\"4901279\";\"Marseilles\";\"main\"\n\"4901390\";\"Mason City\";\"main\"\n\"4901390\";\"Mejson-Siti\";\"other\"\n\"4901390\";\"Мейсон-Сити\";\"other\"\n\"4901445\";\"Matteson\";\"main\"\n\"4901514\";\"Maywood\";\"main\"\n\"4901609\";\"McCullom Lake\";\"main\"\n\"4901663\";\"McHenry\";\"main\"\n\"4901868\";\"Melrose Park\";\"main\"\n\"4901944\";\"Mendota\";\"main\"\n\"4902033\";\"Merrionette Park\";\"main\"\n\"4902065\";\"Metamora\";\"main\"\n\"4902181\";\"Midlothian\";\"main\"\n\"4902218\";\"Milan\";\"main\"\n\"4902229\";\"Milford\";\"main\"\n\"4902229\";\"Милфорд\";\"other\"\n\"4902370\";\"Minier\";\"main\"\n\"4902382\";\"Minonk\";\"main\"\n\"4902386\";\"Minooka\";\"main\"\n\"4902475\";\"Mokena\";\"main\"\n\"4902476\";\"Moline\";\"main\"\n\"4902476\";\"Molin\";\"other\"\n\"4902476\";\"Молин\";\"other\"\n\"4902486\";\"Momence\";\"main\"\n\"4902498\";\"Monee\";\"main\"\n\"4902512\";\"Monmouth\";\"main\"\n\"4902559\";\"Montgomery\";\"main\"\n\"4902559\";\"Montgomeri\";\"other\"\n\"4902559\";\"Монтгомери\";\"other\"\n\"4902567\";\"Monticello\";\"main\"\n\"4902706\";\"Morris\";\"main\"\n\"4902724\";\"Morrison\";\"main\"\n\"4902754\";\"Morton\";\"main\"\n\"4902763\";\"Morton Grove\";\"main\"\n\"4902883\";\"Mount Carroll\";\"main\"\n\"4902955\";\"Mount Morris\";\"main\"\n\"4903024\";\"Mount Prospect\";\"main\"\n\"4903032\";\"Mount Pulaski\";\"main\"\n\"4903184\";\"Mundelein\";\"main\"\n\"4903279\";\"Naperville\";\"main\"\n\"4903330\";\"Nauvoo\";\"main\"\n\"4903535\";\"New Lenox\";\"main\"\n\"4903730\";\"Niles\";\"main\"\n\"4903780\";\"Normal\";\"main\"\n\"4903780\";\"Normal'naja\";\"other\"\n\"4903780\";\"Нормальная\";\"other\"\n\"4903803\";\"Norridge\";\"main\"\n\"4903818\";\"North Aurora\";\"main\"\n\"4903830\";\"North Barrington\";\"main\"\n\"4903862\";\"North Chicago\";\"main\"\n\"4903975\";\"North Pekin\";\"main\"\n\"4903976\";\"North Peoria\";\"main\"\n\"4904002\";\"North Riverside\";\"main\"\n\"4904056\";\"Northbrook\";\"main\"\n\"4904094\";\"Northfield\";\"main\"\n\"4904102\";\"Northlake\";\"main\"\n\"4904277\";\"Oak Brook\";\"main\"\n\"4904286\";\"Oak Forest\";\"main\"\n\"4904298\";\"Oak Grove\";\"main\"\n\"4904365\";\"Oak Lawn\";\"main\"\n\"4904381\";\"Oak Park\";\"main\"\n\"4904381\";\"Ouk-Park\";\"other\"\n\"4904381\";\"Оук-Парк\";\"other\"\n\"4904447\";\"Oakbrook Terrace\";\"main\"\n\"4904520\";\"Oakwood\";\"main\"\n\"4904543\";\"Oakwood Hills\";\"main\"\n\"4904574\";\"Odell\";\"main\"\n\"4904605\";\"Oglesby\";\"main\"\n\"4904793\";\"Olympia Fields\";\"main\"\n\"4904809\";\"Onarga\";\"main\"\n\"4904872\";\"Oquawka\";\"main\"\n\"4904898\";\"Oregon\";\"main\"\n\"4904898\";\"Орегон\";\"other\"\n\"4904922\";\"Orion\";\"main\"\n\"4904934\";\"Orland Hills\";\"main\"\n\"4904937\";\"Orland Park\";\"main\"\n\"4904996\";\"Oswego\";\"main\"\n\"4905006\";\"Ottawa\";\"main\"\n\"4905211\";\"Palatine\";\"main\"\n\"4905211\";\"Palatin\";\"other\"\n\"4905211\";\"Палатин\";\"other\"\n\"4905259\";\"Palos Heights\";\"main\"\n\"4905263\";\"Palos Hills\";\"main\"\n\"4905265\";\"Palos Park\";\"main\"\n\"4905334\";\"Park City\";\"main\"\n\"4905337\";\"Park Forest\";\"main\"\n\"4905367\";\"Park Ridge\";\"main\"\n\"4905509\";\"Paxton\";\"main\"\n\"4905572\";\"Pecatonica\";\"main\"\n\"4905599\";\"Pekin\";\"main\"\n\"4905599\";\"Пекин\";\"other\"\n\"4905687\";\"Peoria\";\"main\"\n\"4905687\";\"Peorija\";\"other\"\n\"4905687\";\"pi ao li ya\";\"other\"\n\"4905687\";\"Пеория\";\"other\"\n\"4905687\";\"皮奥里亚\";\"other\"\n\"4905704\";\"Peoria Heights\";\"main\"\n\"4905724\";\"Peotone\";\"main\"\n\"4905770\";\"Peru\";\"main\"\n\"4905791\";\"Petersburg\";\"main\"\n\"4905791\";\"Peterburg\";\"other\"\n\"4905791\";\"Петербург\";\"other\"\n\"4905866\";\"Philo\";\"main\"\n\"4905873\";\"Phoenix\";\"main\"\n\"4905873\";\"Finiks\";\"other\"\n\"4905873\";\"Финикс\";\"other\"\n\"4906087\";\"Pistakee Highlands\";\"main\"\n\"4906125\";\"Plainfield\";\"main\"\n\"4906143\";\"Plano\";\"main\"\n\"4906143\";\"Planom\";\"other\"\n\"4906143\";\"Планом\";\"other\"\n\"4906421\";\"Polo\";\"main\"\n\"4906438\";\"Pontiac\";\"main\"\n\"4906482\";\"Poplar Grove\";\"main\"\n\"4906490\";\"Port Barrington\";\"main\"\n\"4906491\";\"Port Byron\";\"main\"\n\"4906527\";\"Posen\";\"main\"\n\"4906641\";\"Prairie Grove\";\"main\"\n\"4906802\";\"Preston Heights\";\"main\"\n\"4906818\";\"Princeton\";\"main\"\n\"4906818\";\"Prinston\";\"other\"\n\"4906818\";\"Принстон\";\"other\"\n\"4906824\";\"Princeville\";\"main\"\n\"4906868\";\"Prophetstown\";\"main\"\n\"4906882\";\"Prospect Heights\";\"main\"\n\"4907131\";\"Rantoul\";\"main\"\n\"4907504\";\"Richmond\";\"main\"\n\"4907504\";\"Ричмонд\";\"other\"\n\"4907505\";\"Richmond\";\"main\"\n\"4907514\";\"Richton Park\";\"main\"\n\"4907637\";\"River Forest\";\"main\"\n\"4907649\";\"River Grove\";\"main\"\n\"4907683\";\"Riverdale\";\"main\"\n\"4907706\";\"Riverside\";\"main\"\n\"4907706\";\"Riversajd\";\"other\"\n\"4907706\";\"Риверсайд\";\"other\"\n\"4907762\";\"Riverwoods\";\"main\"\n\"4907773\";\"Roanoke\";\"main\"\n\"4907786\";\"Robbins\";\"main\"\n\"4907863\";\"Rochelle\";\"main\"\n\"4907898\";\"Rock Falls\";\"main\"\n\"4907907\";\"Rock Island\";\"main\"\n\"4907907\";\"Rok-Ajlend\";\"other\"\n\"4907907\";\"Рок-Айленд\";\"other\"\n\"4907953\";\"Rockdale\";\"main\"\n\"4907959\";\"Rockford\";\"main\"\n\"4907959\";\"rakaphorda\";\"other\"\n\"4907959\";\"রকফোর্ড\";\"other\"\n\"4907985\";\"Rockton\";\"main\"\n\"4908052\";\"Rolling Meadows\";\"main\"\n\"4908066\";\"Rome\";\"main\"\n\"4908068\";\"Romeoville\";\"main\"\n\"4908126\";\"Roscoe\";\"main\"\n\"4908173\";\"Roselle\";\"main\"\n\"4908179\";\"Rosemont\";\"main\"\n\"4908179\";\"Rozemont\";\"other\"\n\"4908179\";\"Роземонт\";\"other\"\n\"4908189\";\"Roseville\";\"main\"\n\"4908189\";\"Rozvell\";\"other\"\n\"4908189\";\"Розвелл\";\"other\"\n\"4908209\";\"Rossville\";\"main\"\n\"4908236\";\"Round Lake\";\"main\"\n\"4908237\";\"Round Lake Beach\";\"main\"\n\"4908242\";\"Round Lake Heights\";\"main\"\n\"4908243\";\"Round Lake Park\";\"main\"\n\"4908321\";\"Rushville\";\"main\"\n\"4908543\";\"Saint Anne\";\"main\"\n\"4908737\";\"Saint Charles\";\"main\"\n\"4908737\";\"Sent-Charl'z\";\"other\"\n\"4908737\";\"Сент-Чарльз\";\"other\"\n\"4909268\";\"Saint Joseph\";\"main\"\n\"4909268\";\"Sent-Dzhozef\";\"other\"\n\"4909268\";\"Сент-Джозеф\";\"other\"\n\"4910543\";\"Sandwich\";\"main\"\n\"4910543\";\"Sehndvich\";\"other\"\n\"4910543\";\"Сэндвич\";\"other\"\n\"4910634\";\"Sauk Village\";\"main\"\n\"4910652\";\"Savanna\";\"main\"\n\"4910652\";\"Саванна\";\"other\"\n\"4910663\";\"Savoy\";\"main\"\n\"4910713\";\"Schaumburg\";\"main\"\n\"4910713\";\"Shaumburg\";\"other\"\n\"4910713\";\"shainbagu\";\"other\"\n\"4910713\";\"shao mu bao\";\"other\"\n\"4910713\";\"Шаумбург\";\"other\"\n\"4910713\";\"シャインバーグ\";\"other\"\n\"4910713\";\"绍姆堡\";\"other\"\n\"4910743\";\"Schiller Park\";\"main\"\n\"4911059\";\"Seneca\";\"main\"\n\"4911259\";\"Sheldon\";\"main\"\n\"4911289\";\"Sheridan\";\"main\"\n\"4911418\";\"Shorewood\";\"main\"\n\"4911455\";\"Sidney\";\"main\"\n\"4911455\";\"Sidnej\";\"other\"\n\"4911455\";\"Сидней\";\"other\"\n\"4911516\";\"Silvis\";\"main\"\n\"4911600\";\"Skokie\";\"main\"\n\"4911640\";\"Sleepy Hollow\";\"main\"\n\"4911802\";\"Somonauk\";\"main\"\n\"4911825\";\"South Barrington\";\"main\"\n\"4911830\";\"South Beloit\";\"main\"\n\"4911868\";\"South Chicago Heights\";\"main\"\n\"4911893\";\"South Elgin\";\"main\"\n\"4911934\";\"South Holland\";\"main\"\n\"4911982\";\"South Pekin\";\"main\"\n\"4912248\";\"Spring Grove\";\"main\"\n\"4912303\";\"Spring Valley\";\"main\"\n\"4912303\";\"Spring-Vehlli\";\"other\"\n\"4912303\";\"Спринг-Вэлли\";\"other\"\n\"4912474\";\"Steger\";\"main\"\n\"4912499\";\"Sterling\";\"main\"\n\"4912499\";\"Стерлинг\";\"other\"\n\"4912555\";\"Stickney\";\"main\"\n\"4912566\";\"Stillman Valley\";\"main\"\n\"4912583\";\"Stockton\";\"main\"\n\"4912583\";\"Stoktun\";\"other\"\n\"4912583\";\"Стоктън\";\"other\"\n\"4912602\";\"Stone Park\";\"main\"\n\"4912691\";\"Streamwood\";\"main\"\n\"4912698\";\"Streator\";\"main\"\n\"4912783\";\"Sugar Grove\";\"main\"\n\"4912845\";\"Summit\";\"main\"\n\"4913110\";\"Sycamore\";\"main\"\n\"4913515\";\"Third Lake\";\"main\"\n\"4913555\";\"Thomasboro\";\"main\"\n\"4913605\";\"Thornton\";\"main\"\n\"4913605\";\"Tornton\";\"other\"\n\"4913605\";\"Торнтон\";\"other\"\n\"4913666\";\"Tilton\";\"main\"\n\"4913723\";\"Tinley Park\";\"main\"\n\"4913760\";\"Toluca\";\"main\"\n\"4913799\";\"Toulon\";\"main\"\n\"4913816\";\"Tower Lake\";\"main\"\n\"4913892\";\"Tremont\";\"main\"\n\"4914514\";\"University Park\";\"main\"\n\"4914570\";\"Urbana\";\"main\"\n\"4914570\";\"arbana\";\"other\"\n\"4914570\";\"Урбана\";\"other\"\n\"4914570\";\"আর্বানা\";\"other\"\n\"4914704\";\"Venetian Village\";\"main\"\n\"4914738\";\"Vernon Hills\";\"main\"\n\"4914830\";\"Villa Park\";\"main\"\n\"4915294\";\"Wadsworth\";\"main\"\n\"4915397\";\"Walnut\";\"main\"\n\"4915497\";\"Warren\";\"main\"\n\"4915497\";\"Uorren\";\"other\"\n\"4915497\";\"Уоррен\";\"other\"\n\"4915525\";\"Warrenville\";\"main\"\n\"4915533\";\"Warsaw\";\"main\"\n\"4915543\";\"Washburn\";\"main\"\n\"4915545\";\"Washington\";\"main\"\n\"4915545\";\"Vashington\";\"other\"\n\"4915545\";\"Вашингтон\";\"other\"\n\"4915683\";\"Waterman\";\"main\"\n\"4915703\";\"Watseka\";\"main\"\n\"4915725\";\"Wauconda\";\"main\"\n\"4915734\";\"Waukegan\";\"main\"\n\"4915764\";\"Wayne\";\"main\"\n\"4915884\";\"Wenona\";\"main\"\n\"4915963\";\"West Chicago\";\"main\"\n\"4915977\";\"West Dundee\";\"main\"\n\"4916055\";\"West Peoria\";\"main\"\n\"4916140\";\"Westchester\";\"main\"\n\"4916140\";\"Vestchester\";\"other\"\n\"4916140\";\"Вестчестер\";\"other\"\n\"4916161\";\"Western Springs\";\"main\"\n\"4916207\";\"Westmont\";\"main\"\n\"4916252\";\"Westville\";\"main\"\n\"4916288\";\"Wheaton\";\"main\"\n\"4916288\";\"Uiton\";\"other\"\n\"4916288\";\"Уитон\";\"other\"\n\"4916311\";\"Wheeling\";\"main\"\n\"4916698\";\"Willow Springs\";\"main\"\n\"4916709\";\"Willowbrook\";\"main\"\n\"4916710\";\"Willowbrook\";\"main\"\n\"4916732\";\"Wilmette\";\"main\"\n\"4916740\";\"Wilmington\";\"main\"\n\"4916740\";\"Uilmington\";\"other\"\n\"4916740\";\"Уилмингтон\";\"other\"\n\"4916826\";\"Winfield\";\"main\"\n\"4916843\";\"Winnebago\";\"main\"\n\"4916891\";\"Winnetka\";\"main\"\n\"4916894\";\"Winthrop Harbor\";\"main\"\n\"4916973\";\"Wonder Lake\";\"main\"\n\"4916975\";\"Wood Dale\";\"main\"\n\"4917089\";\"Woodridge\";\"main\"\n\"4917123\";\"Woodstock\";\"main\"\n\"4917123\";\"Vudstok\";\"other\"\n\"4917123\";\"Вудсток\";\"other\"\n\"4917171\";\"Worth\";\"main\"\n\"4917218\";\"Wyoming\";\"main\"\n\"4917218\";\"Vajoming\";\"other\"\n\"4917218\";\"Вайоминг\";\"other\"\n\"4917298\";\"Yorkville\";\"main\"\n\"4917358\";\"Zion\";\"main\"\n\"4917358\";\"Sion\";\"other\"\n\"4917358\";\"Сион\";\"other\"\n\"4917517\";\"Akron\";\"main\"\n\"4917517\";\"Акрон\";\"other\"\n\"4917520\";\"Albany\";\"main\"\n\"4917520\";\"Olbani\";\"other\"\n\"4917520\";\"Олбани\";\"other\"\n\"4917523\";\"Albion\";\"main\"\n\"4917537\";\"Alexandria\";\"main\"\n\"4917537\";\"Aleksandrija\";\"other\"\n\"4917537\";\"Александрия\";\"other\"\n\"4917592\";\"Anderson\";\"main\"\n\"4917592\";\"Андерсон\";\"other\"\n\"4917606\";\"Andrews\";\"main\"\n\"4917614\";\"Angola\";\"main\"\n\"4917653\";\"Arcadia\";\"main\"\n\"4917653\";\"Arkadija\";\"other\"\n\"4917653\";\"Аркадия\";\"other\"\n\"4917661\";\"Argos\";\"main\"\n\"4917707\";\"Attica\";\"main\"\n\"4917712\";\"Auburn\";\"main\"\n\"4917727\";\"Avilla\";\"main\"\n\"4917848\";\"Bass Lake\";\"main\"\n\"4917857\";\"Battle Ground\";\"main\"\n\"4918006\";\"Berne\";\"main\"\n\"4918234\";\"Bluffton\";\"main\"\n\"4918309\";\"Bourbon\";\"main\"\n\"4918363\";\"Bremen\";\"main\"\n\"4918393\";\"Bristol\";\"main\"\n\"4918417\";\"Brookston\";\"main\"\n\"4918595\";\"Butler\";\"main\"\n\"4918805\";\"Cedar Lake\";\"main\"\n\"4918949\";\"Chesterfield\";\"main\"\n\"4918962\";\"Chesterton\";\"main\"\n\"4919021\";\"Churubusco\";\"main\"\n\"4919026\";\"Cicero\";\"main\"\n\"4919026\";\"Ciceron\";\"other\"\n\"4919026\";\"Цицерон\";\"other\"\n\"4919203\";\"Columbia City\";\"main\"\n\"4919272\";\"Converse\";\"main\"\n\"4919349\";\"Covington\";\"main\"\n\"4919381\";\"Crawfordsville\";\"main\"\n\"4919451\";\"Crown Point\";\"main\"\n\"4919466\";\"Culver\";\"main\"\n\"4919487\";\"Dale\";\"main\"\n\"4919490\";\"Daleville\";\"main\"\n\"4919553\";\"Dayton\";\"main\"\n\"4919553\";\"Dejton\";\"other\"\n\"4919553\";\"Дейтон\";\"other\"\n\"4919555\";\"DeMotte\";\"main\"\n\"4919564\";\"Decatur\";\"main\"\n\"4919564\";\"Dekejter\";\"other\"\n\"4919564\";\"Декейтер\";\"other\"\n\"4919624\";\"Delphi\";\"main\"\n\"4919797\";\"Dunkirk\";\"main\"\n\"4919798\";\"Dunkirk\";\"main\"\n\"4919820\";\"Dyer\";\"main\"\n\"4919826\";\"Dunlap\";\"main\"\n\"4919857\";\"East Chicago\";\"main\"\n\"4919907\";\"Eaton\";\"main\"\n\"4919937\";\"Edgewood\";\"main\"\n\"4919987\";\"Elkhart\";\"main\"\n\"4919987\";\"Ehlkkhart\";\"other\"\n\"4919987\";\"Элкхарт\";\"other\"\n\"4920041\";\"Elwood\";\"main\"\n\"4920153\";\"Fairmount\";\"main\"\n\"4920199\";\"Farmland\";\"main\"\n\"4920380\";\"Flora\";\"main\"\n\"4920423\";\"Fort Wayne\";\"main\"\n\"4920423\";\"Castrum Vainense\";\"other\"\n\"4920452\";\"Fowler\";\"main\"\n\"4920473\";\"Frankfort\";\"main\"\n\"4920473\";\"Frankfurt\";\"other\"\n\"4920473\";\"Франкфурт\";\"other\"\n\"4920512\";\"Fremont\";\"main\"\n\"4920512\";\"Frimont\";\"other\"\n\"4920512\";\"Фримонт\";\"other\"\n\"4920523\";\"Frankton\";\"main\"\n\"4920577\";\"Galveston\";\"main\"\n\"4920577\";\"Галвестон\";\"other\"\n\"4920600\";\"Garrett\";\"main\"\n\"4920607\";\"Gary\";\"main\"\n\"4920607\";\"geri\";\"other\"\n\"4920607\";\"jia li\";\"other\"\n\"4920607\";\"ゲーリー\";\"other\"\n\"4920607\";\"加里\";\"other\"\n\"4920637\";\"Gas City\";\"main\"\n\"4920664\";\"Geneva\";\"main\"\n\"4920664\";\"Zheneva\";\"other\"\n\"4920664\";\"Женева\";\"other\"\n\"4920681\";\"Georgetown\";\"main\"\n\"4920683\";\"Georgetown\";\"main\"\n\"4920783\";\"Goodland\";\"main\"\n\"4920808\";\"Goshen\";\"main\"\n\"4920808\";\"Гошен\";\"other\"\n\"4920825\";\"Grabill\";\"main\"\n\"4920869\";\"Granger\";\"main\"\n\"4920961\";\"Greentown\";\"main\"\n\"4920986\";\"Griffith\";\"main\"\n\"4921034\";\"Gulivoire Park\";\"main\"\n\"4921100\";\"Hammond\";\"main\"\n\"4921100\";\"Khammond\";\"other\"\n\"4921100\";\"Хаммонд\";\"other\"\n\"4921229\";\"Hartford City\";\"main\"\n\"4921298\";\"Hebron\";\"main\"\n\"4921402\";\"Highland\";\"main\"\n\"4921476\";\"Hobart\";\"main\"\n\"4921476\";\"Khobart\";\"other\"\n\"4921476\";\"Хобарт\";\"other\"\n\"4921722\";\"Huntertown\";\"main\"\n\"4921725\";\"Huntington\";\"main\"\n\"4921725\";\"Khantington\";\"other\"\n\"4921725\";\"Хантингтон\";\"other\"\n\"4921815\";\"Indian Heights\";\"main\"\n\"4922150\";\"Jonesboro\";\"main\"\n\"4922150\";\"Dzhonsboro\";\"other\"\n\"4922150\";\"Джонсборо\";\"other\"\n\"4922252\";\"Kendallville\";\"main\"\n\"4922267\";\"Kentland\";\"main\"\n\"4922329\";\"Kingsford Heights\";\"main\"\n\"4922388\";\"Kokomo\";\"main\"\n\"4922402\";\"Koontz Lake\";\"main\"\n\"4922412\";\"Kouts\";\"main\"\n\"4922418\";\"Knox\";\"main\"\n\"4922459\";\"LaPorte\";\"main\"\n\"4922462\";\"Lafayette\";\"main\"\n\"4922462\";\"Lafajet\";\"other\"\n\"4922462\";\"rafaietto\";\"other\"\n\"4922462\";\"Лафайет\";\"other\"\n\"4922462\";\"ラファイエット\";\"other\"\n\"4922472\";\"Lagrange\";\"main\"\n\"4922501\";\"Lake Dalecarlia\";\"main\"\n\"4922541\";\"Lake Station\";\"main\"\n\"4922562\";\"Lakes of the Four Seasons\";\"main\"\n\"4922624\";\"Lapel\";\"main\"\n\"4922673\";\"Lebanon\";\"main\"\n\"4922721\";\"Leo-Cedarville\";\"main\"\n\"4922776\";\"Ligonier\";\"main\"\n\"4922968\";\"Logansport\";\"main\"\n\"4922979\";\"Long Beach\";\"main\"\n\"4922979\";\"Long-Bich\";\"other\"\n\"4922979\";\"Лонг-Бич\";\"other\"\n\"4923041\";\"Lowell\";\"main\"\n\"4923041\";\"Louel\";\"other\"\n\"4923041\";\"Лоуел\";\"other\"\n\"4923096\";\"Lynn\";\"main\"\n\"4923210\";\"Marion\";\"main\"\n\"4923210\";\"Mehrion\";\"other\"\n\"4923210\";\"Мэрион\";\"other\"\n\"4923226\";\"Markle\";\"main\"\n\"4923482\";\"Merrillville\";\"main\"\n\"4923531\";\"Michigan City\";\"main\"\n\"4923531\";\"Michigan-Siti\";\"other\"\n\"4923531\";\"Мичиган-Сити\";\"other\"\n\"4923554\";\"Middlebury\";\"main\"\n\"4923559\";\"Middletown\";\"main\"\n\"4923570\";\"Milford\";\"main\"\n\"4923570\";\"Милфорд\";\"other\"\n\"4923670\";\"Mishawaka\";\"main\"\n\"4923711\";\"Monon\";\"main\"\n\"4923735\";\"Monroeville\";\"main\"\n\"4923745\";\"Monticello\";\"main\"\n\"4923747\";\"Montpelier\";\"main\"\n\"4923796\";\"Morocco\";\"main\"\n\"4923914\";\"Mount Vernon\";\"main\"\n\"4923997\";\"Mulberry\";\"main\"\n\"4924006\";\"Muncie\";\"main\"\n\"4924006\";\"Mansi\";\"other\"\n\"4924006\";\"Манси\";\"other\"\n\"4924014\";\"Munster\";\"main\"\n\"4924014\";\"Mjunster\";\"other\"\n\"4924014\";\"Мюнстер\";\"other\"\n\"4924077\";\"Nappanee\";\"main\"\n\"4924093\";\"New Carlisle\";\"main\"\n\"4924095\";\"New Chicago\";\"main\"\n\"4924104\";\"New Haven\";\"main\"\n\"4924104\";\"N'ju-Khejven\";\"other\"\n\"4924104\";\"Нью-Хейвен\";\"other\"\n\"4924198\";\"Noblesville\";\"main\"\n\"4924242\";\"North Judson\";\"main\"\n\"4924243\";\"North Liberty\";\"main\"\n\"4924246\";\"North Manchester\";\"main\"\n\"4924273\";\"North Webster\";\"main\"\n\"4924412\";\"Ogden Dunes\";\"main\"\n\"4924538\";\"Osceola\";\"main\"\n\"4924543\";\"Ossian\";\"main\"\n\"4924578\";\"Otterbein\";\"main\"\n\"4924593\";\"Oxford\";\"main\"\n\"4924593\";\"Oksford\";\"other\"\n\"4924593\";\"Оксфорд\";\"other\"\n\"4924636\";\"Parker City\";\"main\"\n\"4924733\";\"Peru\";\"main\"\n\"4924970\";\"Plymouth\";\"main\"\n\"4924970\";\"Plimut\";\"other\"\n\"4924970\";\"Плимут\";\"other\"\n\"4925006\";\"Portage\";\"main\"\n\"4925015\";\"Porter\";\"main\"\n\"4925037\";\"Portland\";\"main\"\n\"4925037\";\"Portlend\";\"other\"\n\"4925037\";\"Портленд\";\"other\"\n\"4925265\";\"Redkey\";\"main\"\n\"4925304\";\"Remington\";\"main\"\n\"4925311\";\"Rensselaer\";\"main\"\n\"4925483\";\"Roanoke\";\"main\"\n\"4925519\";\"Rochester\";\"main\"\n\"4925519\";\"Рочестер\";\"other\"\n\"4925561\";\"Rome City\";\"main\"\n\"4925591\";\"Roselawn\";\"main\"\n\"4925610\";\"Rossville\";\"main\"\n\"4925674\";\"Russiaville\";\"main\"\n\"4925793\";\"Saint John\";\"main\"\n\"4926170\";\"Schererville\";\"main\"\n\"4926280\";\"Shadeland\";\"main\"\n\"4926367\";\"Sheridan\";\"main\"\n\"4926449\";\"Simonton Lake\";\"main\"\n\"4926563\";\"South Bend\";\"main\"\n\"4926563\";\"Flexuvium Australe\";\"other\"\n\"4926563\";\"sausubendo\";\"other\"\n\"4926563\";\"サウスベンド\";\"other\"\n\"4926613\";\"South Haven\";\"main\"\n\"4926629\";\"South Whitley\";\"main\"\n\"4926964\";\"Summitville\";\"main\"\n\"4927042\";\"Syracuse\";\"main\"\n\"4927194\";\"Thorntown\";\"main\"\n\"4927242\";\"Tipton\";\"main\"\n\"4927264\";\"Topeka\";\"main\"\n\"4927264\";\"Topika\";\"other\"\n\"4927264\";\"Топика\";\"other\"\n\"4927291\";\"Trail Creek\";\"main\"\n\"4927309\";\"Tri-Lakes\";\"main\"\n\"4927449\";\"Union City\";\"main\"\n\"4927449\";\"Junion-Siti\";\"other\"\n\"4927449\";\"Юнион-Сити\";\"other\"\n\"4927510\";\"Upland\";\"main\"\n\"4927537\";\"Valparaiso\";\"main\"\n\"4927537\";\"Val'paraiso\";\"other\"\n\"4927537\";\"Вальпараисо\";\"other\"\n\"4927580\";\"Veedersburg\";\"main\"\n\"4927746\";\"Wabash\";\"main\"\n\"4927773\";\"Wakarusa\";\"main\"\n\"4927788\";\"Walkerton\";\"main\"\n\"4927827\";\"Walton\";\"main\"\n\"4927844\";\"Warren\";\"main\"\n\"4927844\";\"Uorren\";\"other\"\n\"4927844\";\"Уоррен\";\"other\"\n\"4927854\";\"Warsaw\";\"main\"\n\"4927928\";\"Waterloo\";\"main\"\n\"4927928\";\"Vaterlo\";\"other\"\n\"4927928\";\"Ватерло\";\"other\"\n\"4928096\";\"West Lafayette\";\"main\"\n\"4928118\";\"Westfield\";\"main\"\n\"4928145\";\"Westville\";\"main\"\n\"4928208\";\"Whiting\";\"main\"\n\"4928274\";\"Williamsport\";\"main\"\n\"4928313\";\"Winamac\";\"main\"\n\"4928318\";\"Winchester\";\"main\"\n\"4928337\";\"Winona Lake\";\"main\"\n\"4928354\";\"Winfield\";\"main\"\n\"4928386\";\"Woodburn\";\"main\"\n\"4928492\";\"Yorktown\";\"main\"\n\"4928662\";\"Abington\";\"main\"\n\"4928703\";\"Acton\";\"main\"\n\"4928703\";\"Ehkton\";\"other\"\n\"4928703\";\"Эктон\";\"other\"\n\"4928720\";\"Acushnet\";\"main\"\n\"4928733\";\"Adams\";\"main\"\n\"4928788\";\"Agawam\";\"main\"\n\"4929004\";\"Amesbury\";\"main\"\n\"4929023\";\"Amherst Center\";\"main\"\n\"4929055\";\"Andover\";\"main\"\n\"4929180\";\"Arlington\";\"main\"\n\"4929180\";\"Арлингтон\";\"other\"\n\"4929256\";\"Ashburnham\";\"main\"\n\"4929262\";\"Ashby\";\"main\"\n\"4929276\";\"Ashfield\";\"main\"\n\"4929283\";\"Ashland\";\"main\"\n\"4929376\";\"Athol\";\"main\"\n\"4929399\";\"Attleboro\";\"main\"\n\"4929417\";\"Auburn\";\"main\"\n\"4929476\";\"Avon\";\"main\"\n\"4929501\";\"Ayer\";\"main\"\n\"4929657\";\"Baldwinville\";\"main\"\n\"4929771\";\"Barnstable\";\"main\"\n\"4929785\";\"Barre\";\"main\"\n\"4930173\";\"Becket\";\"main\"\n\"4930183\";\"Bedford\";\"main\"\n\"4930183\";\"Бедфорд\";\"other\"\n\"4930231\";\"Belchertown\";\"main\"\n\"4930266\";\"Bellingham\";\"main\"\n\"4930282\";\"Belmont\";\"main\"\n\"4930282\";\"Белмонт\";\"other\"\n\"4930385\";\"Berkley\";\"main\"\n\"4930431\";\"Berlin\";\"main\"\n\"4930437\";\"Bernardston\";\"main\"\n\"4930505\";\"Beverly\";\"main\"\n\"4930511\";\"Beverly Cove\";\"main\"\n\"4930577\";\"Billerica\";\"main\"\n\"4930738\";\"Blackstone\";\"main\"\n\"4930780\";\"Blandford\";\"main\"\n\"4930804\";\"Bliss Corner\";\"main\"\n\"4930907\";\"Bolton\";\"main\"\n\"4930921\";\"Bondsville\";\"main\"\n\"4930956\";\"Boston\";\"main\"\n\"4930956\";\"Bostonas\";\"other\"\n\"4930956\";\"Bostone\";\"other\"\n\"4930956\";\"Bostonia\";\"other\"\n\"4930956\";\"Bostono\";\"other\"\n\"4930956\";\"Bostun\";\"other\"\n\"4930956\";\"Bostún\";\"other\"\n\"4930956\";\"Vostoni\";\"other\"\n\"4930956\";\"bo shi dun\";\"other\"\n\"4930956\";\"boseuteon\";\"other\"\n\"4930956\";\"bostana\";\"other\"\n\"4930956\";\"bosuton\";\"other\"\n\"4930956\";\"bwstn\";\"other\"\n\"4930956\";\"bwstwn\";\"other\"\n\"4930956\";\"bxstan\";\"other\"\n\"4930956\";\"Βοστωνη\";\"other\"\n\"4930956\";\"Βοστώνη\";\"other\"\n\"4930956\";\"Бостон\";\"other\"\n\"4930956\";\"Бостън\";\"other\"\n\"4930956\";\"בוסטון\";\"other\"\n\"4930956\";\"بوستون\";\"other\"\n\"4930956\";\"بوسطن\";\"other\"\n\"4930956\";\"بوسٹن\";\"other\"\n\"4930956\";\"बॉस्टन\";\"other\"\n\"4930956\";\"บอสตัน\";\"other\"\n\"4930956\";\"ბოსტონი\";\"other\"\n\"4930956\";\"ボストン\";\"other\"\n\"4930956\";\"波士顿\";\"other\"\n\"4930956\";\"보스턴\";\"other\"\n\"4931050\";\"Bourne\";\"main\"\n\"4931108\";\"Boxford\";\"main\"\n\"4931127\";\"Boylston\";\"main\"\n\"4931181\";\"Braintree\";\"main\"\n\"4931273\";\"Brewster\";\"main\"\n\"4931273\";\"Brjuster\";\"other\"\n\"4931273\";\"Брюстер\";\"other\"\n\"4931303\";\"Bridgewater\";\"main\"\n\"4931303\";\"Bridzhuoter\";\"other\"\n\"4931303\";\"Бриджуотер\";\"other\"\n\"4931363\";\"Brimfield\";\"main\"\n\"4931429\";\"Brockton\";\"main\"\n\"4931469\";\"Brookfield\";\"main\"\n\"4931482\";\"Brookline\";\"main\"\n\"4931482\";\"Bruklin\";\"other\"\n\"4931482\";\"bu lu ke lai en\";\"other\"\n\"4931482\";\"Бруклин\";\"other\"\n\"4931482\";\"布鲁克莱恩\";\"other\"\n\"4931627\";\"Buckland\";\"main\"\n\"4931737\";\"Burlington\";\"main\"\n\"4931737\";\"Berlington\";\"other\"\n\"4931737\";\"Берлингтон\";\"other\"\n\"4931875\";\"Buzzards Bay\";\"main\"\n\"4931972\";\"Cambridge\";\"main\"\n\"4931972\";\"Cantabrigia iuxta Flumen Carolanum\";\"other\"\n\"4931972\";\"Kejmbridzh\";\"other\"\n\"4931972\";\"Kembridzh\";\"other\"\n\"4931972\";\"Kembrigo\";\"other\"\n\"4931972\";\"Kembriĝo\";\"other\"\n\"4931972\";\"jian qiao\";\"other\"\n\"4931972\";\"kambrydj\";\"other\"\n\"4931972\";\"kan bu li qi\";\"other\"\n\"4931972\";\"keimbeuliji\";\"other\"\n\"4931972\";\"kenburijji\";\"other\"\n\"4931972\";\"khem bridc\";\"other\"\n\"4931972\";\"Кеймбридж\";\"other\"\n\"4931972\";\"Кембридж\";\"other\"\n\"4931972\";\"كامبريدج\";\"other\"\n\"4931972\";\"เคมบริดจ์\";\"other\"\n\"4931972\";\"ケンブリッジ\";\"other\"\n\"4931972\";\"剑桥\";\"other\"\n\"4931972\";\"坎布里奇\";\"other\"\n\"4931972\";\"케임브리지\";\"other\"\n\"4932214\";\"Canton\";\"main\"\n\"4932328\";\"Carlisle\";\"main\"\n\"4932388\";\"Carver\";\"main\"\n\"4932587\";\"Centerville\";\"main\"\n\"4932757\";\"Charlemont\";\"main\"\n\"4932823\";\"Charlton\";\"main\"\n\"4932844\";\"Chatham\";\"main\"\n\"4932869\";\"Chelmsford\";\"main\"\n\"4932869\";\"Челмсфорд\";\"other\"\n\"4932879\";\"Chelsea\";\"main\"\n\"4932915\";\"Cheshire\";\"main\"\n\"4932915\";\"Cheshir\";\"other\"\n\"4932915\";\"Чешир\";\"other\"\n\"4932929\";\"Chester\";\"main\"\n\"4932929\";\"Честер\";\"other\"\n\"4932943\";\"Chesterfield\";\"main\"\n\"4933002\";\"Chicopee\";\"main\"\n\"4933426\";\"Clinton\";\"main\"\n\"4933426\";\"Klinton\";\"other\"\n\"4933426\";\"Клинтон\";\"other\"\n\"4933493\";\"Cochituate\";\"main\"\n\"4933533\";\"Cohasset\";\"main\"\n\"4933660\";\"Colrain\";\"main\"\n\"4933743\";\"Concord\";\"main\"\n\"4933743\";\"Konkord\";\"other\"\n\"4933743\";\"Конкорд\";\"other\"\n\"4933841\";\"Conway\";\"main\"\n\"4933841\";\"Konvej\";\"other\"\n\"4933841\";\"Конвей\";\"other\"\n\"4933937\";\"Cordaville\";\"main\"\n\"4933989\";\"Cotuit\";\"main\"\n\"4934429\";\"Dalton\";\"main\"\n\"4934429\";\"Далтон\";\"other\"\n\"4934500\";\"Danvers\";\"main\"\n\"4934500\";\"Denvers\";\"other\"\n\"4934500\";\"Денверс\";\"other\"\n\"4934664\";\"Dedham\";\"main\"\n\"4934711\";\"Deerfield\";\"main\"\n\"4934749\";\"Dennis\";\"main\"\n\"4934749\";\"Деннис\";\"other\"\n\"4934753\";\"Dennis Port\";\"main\"\n\"4934827\";\"Dighton\";\"main\"\n\"4934999\";\"Douglas\";\"main\"\n\"4935010\";\"Dover\";\"main\"\n\"4935010\";\"Довер\";\"other\"\n\"4935038\";\"Dracut\";\"main\"\n\"4935125\";\"Dudley\";\"main\"\n\"4935195\";\"Dunstable\";\"main\"\n\"4935211\";\"Duxbury\";\"main\"\n\"4935330\";\"East Bridgewater\";\"main\"\n\"4935347\";\"East Brookfield\";\"main\"\n\"4935370\";\"East Dennis\";\"main\"\n\"4935372\";\"East Douglas\";\"main\"\n\"4935398\";\"East Harwich\";\"main\"\n\"4935434\";\"East Longmeadow\";\"main\"\n\"4935482\";\"East Pepperell\";\"main\"\n\"4935495\";\"East Sandwich\";\"main\"\n\"4935578\";\"Eastham\";\"main\"\n\"4935582\";\"Easthampton\";\"main\"\n\"4935623\";\"Easton\";\"main\"\n\"4935623\";\"Iston\";\"other\"\n\"4935623\";\"Истон\";\"other\"\n\"4935939\";\"Erving\";\"main\"\n\"4935946\";\"Essex\";\"main\"\n\"4935946\";\"Ehsseks\";\"other\"\n\"4935946\";\"Эссекс\";\"other\"\n\"4936008\";\"Everett\";\"main\"\n\"4936008\";\"Ehverett\";\"other\"\n\"4936008\";\"Эверетт\";\"other\"\n\"4936087\";\"Fairhaven\";\"main\"\n\"4936159\";\"Fall River\";\"main\"\n\"4936174\";\"Falmouth\";\"main\"\n\"4936792\";\"Fiskdale\";\"main\"\n\"4936812\";\"Fitchburg\";\"main\"\n\"4937033\";\"Forestdale\";\"main\"\n\"4937222\";\"Foxborough\";\"main\"\n\"4937222\";\"Foxboro\";\"other\"\n\"4937230\";\"Framingham\";\"main\"\n\"4937232\";\"Framingham Center\";\"main\"\n\"4937276\";\"Franklin\";\"main\"\n\"4937276\";\"Франклин\";\"other\"\n\"4937355\";\"Freetown\";\"main\"\n\"4937557\";\"Gardner\";\"main\"\n\"4937557\";\"Гарднер\";\"other\"\n\"4937751\";\"Gill\";\"main\"\n\"4937829\";\"Gloucester\";\"main\"\n\"4937829\";\"Gloster\";\"other\"\n\"4937829\";\"Глостер\";\"other\"\n\"4938048\";\"Grafton\";\"main\"\n\"4938064\";\"Granby\";\"main\"\n\"4938092\";\"Granville\";\"main\"\n\"4938157\";\"Great Barrington\";\"main\"\n\"4938378\";\"Greenfield\";\"main\"\n\"4938378\";\"Grinfild\";\"other\"\n\"4938378\";\"Гринфилд\";\"other\"\n\"4938501\";\"Groveland\";\"main\"\n\"4938574\";\"Hadley\";\"main\"\n\"4938652\";\"Halifax\";\"main\"\n\"4938697\";\"Hamilton\";\"main\"\n\"4938738\";\"Hampden\";\"main\"\n\"4938829\";\"Hanson\";\"main\"\n\"4938836\";\"Hanover\";\"main\"\n\"4938862\";\"Hardwick\";\"main\"\n\"4938957\";\"Harvard\";\"main\"\n\"4939004\";\"Harwich\";\"main\"\n\"4939008\";\"Harwich Port\";\"main\"\n\"4939048\";\"Hatfield\";\"main\"\n\"4939085\";\"Haverhill\";\"main\"\n\"4939085\";\"Khaverkhill\";\"other\"\n\"4939085\";\"Хаверхилл\";\"other\"\n\"4939191\";\"Head of Westport\";\"main\"\n\"4939549\";\"Hingham\";\"main\"\n\"4939561\";\"Hinsdale\";\"main\"\n\"4939637\";\"Holbrook\";\"main\"\n\"4939637\";\"Kholbruk\";\"other\"\n\"4939637\";\"Холбрук\";\"other\"\n\"4939647\";\"Holden\";\"main\"\n\"4939671\";\"Holland\";\"main\"\n\"4939671\";\"Gollandija\";\"other\"\n\"4939671\";\"Голландия\";\"other\"\n\"4939693\";\"Holliston\";\"main\"\n\"4939783\";\"Holyoke\";\"main\"\n\"4939862\";\"Hopedale\";\"main\"\n\"4939881\";\"Hopkinton\";\"main\"\n\"4939881\";\"Khopkinton\";\"other\"\n\"4939881\";\"Хопкинтон\";\"other\"\n\"4939991\";\"Housatonic\";\"main\"\n\"4940075\";\"Hubbardston\";\"main\"\n\"4940094\";\"Hudson\";\"main\"\n\"4940094\";\"Gudzon\";\"other\"\n\"4940094\";\"Гудзон\";\"other\"\n\"4940134\";\"Hull\";\"main\"\n\"4940157\";\"Huntington\";\"main\"\n\"4940157\";\"Khantington\";\"other\"\n\"4940157\";\"Хантингтон\";\"other\"\n\"4940190\";\"Hyannis\";\"main\"\n\"4940625\";\"Ipswich\";\"main\"\n\"4941383\";\"Kingston\";\"main\"\n\"4941383\";\"Кингстон\";\"other\"\n\"4941635\";\"Lancaster\";\"main\"\n\"4941635\";\"Lankaster\";\"other\"\n\"4941635\";\"Ланкастер\";\"other\"\n\"4941659\";\"Lanesborough\";\"main\"\n\"4941720\";\"Lawrence\";\"main\"\n\"4941720\";\"Lourens\";\"other\"\n\"4941720\";\"Лоуренс\";\"other\"\n\"4941797\";\"Lee\";\"main\"\n\"4941835\";\"Leicester\";\"main\"\n\"4941853\";\"Lenox\";\"main\"\n\"4941873\";\"Leominster\";\"main\"\n\"4941873\";\"Leominstere\";\"other\"\n\"4941873\";\"Леоминстере\";\"other\"\n\"4941899\";\"Leverett\";\"main\"\n\"4941935\";\"Lexington\";\"main\"\n\"4941935\";\"Leksington\";\"other\"\n\"4941935\";\"rekishinton\";\"other\"\n\"4941935\";\"Лексингтон\";\"other\"\n\"4941935\";\"レキシントン\";\"other\"\n\"4942021\";\"Lincoln\";\"main\"\n\"4942021\";\"Linkol'n\";\"other\"\n\"4942021\";\"Линкольн\";\"other\"\n\"4942301\";\"Littleton Common\";\"main\"\n\"4942508\";\"Longmeadow\";\"main\"\n\"4942618\";\"Lowell\";\"main\"\n\"4942618\";\"Loouell\";\"other\"\n\"4942618\";\"Louel\";\"other\"\n\"4942618\";\"Λόουελλ\";\"other\"\n\"4942618\";\"Лоуел\";\"other\"\n\"4942744\";\"Ludlow\";\"main\"\n\"4942767\";\"Lunenburg\";\"main\"\n\"4942807\";\"Lynn\";\"main\"\n\"4942821\";\"Lynnfield\";\"main\"\n\"4942939\";\"Malden\";\"main\"\n\"4943021\";\"Mansfield\";\"main\"\n\"4943021\";\"Mehnsfild\";\"other\"\n\"4943021\";\"Мэнсфилд\";\"other\"\n\"4943097\";\"Marblehead\";\"main\"\n\"4943144\";\"Marion\";\"main\"\n\"4943144\";\"Mehrion\";\"other\"\n\"4943144\";\"Мэрион\";\"other\"\n\"4943170\";\"Marlborough\";\"main\"\n\"4943170\";\"Marlboro\";\"other\"\n\"4943170\";\"Марлборо\";\"other\"\n\"4943204\";\"Marshfield\";\"main\"\n\"4943213\";\"Marshfield Hills\";\"main\"\n\"4943227\";\"Marstons Mills\";\"main\"\n\"4943297\";\"Mashpee\";\"main\"\n\"4943432\";\"Mattapoisett\";\"main\"\n\"4943490\";\"Maynard\";\"main\"\n\"4943616\";\"Medfield\";\"main\"\n\"4943629\";\"Medford\";\"main\"\n\"4943629\";\"Медфорд\";\"other\"\n\"4943648\";\"Medway\";\"main\"\n\"4943677\";\"Melrose\";\"main\"\n\"4943677\";\"Melrouz\";\"other\"\n\"4943677\";\"Мелроуз\";\"other\"\n\"4943746\";\"Mendon\";\"main\"\n\"4943784\";\"Merrimac\";\"main\"\n\"4943828\";\"Methuen\";\"main\"\n\"4943926\";\"Middleton\";\"main\"\n\"4943958\";\"Milford\";\"main\"\n\"4943958\";\"Милфорд\";\"other\"\n\"4944122\";\"Millbury\";\"main\"\n\"4944154\";\"Millers Falls\";\"main\"\n\"4944173\";\"Millis\";\"main\"\n\"4944189\";\"Millville\";\"main\"\n\"4944193\";\"Milton\";\"main\"\n\"4944193\";\"Mil'ton\";\"other\"\n\"4944193\";\"Мильтон\";\"other\"\n\"4944350\";\"Monson\";\"main\"\n\"4944405\";\"Monument Beach\";\"main\"\n\"4944413\";\"Montague\";\"main\"\n\"4944875\";\"Nahant\";\"main\"\n\"4944903\";\"Nantucket\";\"main\"\n\"4944994\";\"Natick\";\"main\"\n\"4945055\";\"Needham\";\"main\"\n\"4945121\";\"New Bedford\";\"main\"\n\"4945121\";\"N'ju-Bedford\";\"other\"\n\"4945121\";\"xin bei de fu de\";\"other\"\n\"4945121\";\"Нью-Бедфорд\";\"other\"\n\"4945121\";\"新贝德福德\";\"other\"\n\"4945217\";\"New Marlborough\";\"main\"\n\"4945256\";\"Newburyport\";\"main\"\n\"4945283\";\"Newton\";\"main\"\n\"4945283\";\"N'juton\";\"other\"\n\"4945283\";\"nyuton\";\"other\"\n\"4945283\";\"Ньютон\";\"other\"\n\"4945283\";\"ニュートン\";\"other\"\n\"4945453\";\"Norfolk\";\"main\"\n\"4945453\";\"Норфолк\";\"other\"\n\"4945486\";\"North Adams\";\"main\"\n\"4945497\";\"North Amherst\";\"main\"\n\"4945548\";\"North Brookfield\";\"main\"\n\"4945588\";\"North Chicopee\";\"main\"\n\"4945608\";\"North Eastham\";\"main\"\n\"4945622\";\"North Falmouth\";\"main\"\n\"4945659\";\"North Lakeville\";\"main\"\n\"4945700\";\"North Pembroke\";\"main\"\n\"4945707\";\"North Plymouth\";\"main\"\n\"4945734\";\"North Reading\";\"main\"\n\"4945764\";\"North Scituate\";\"main\"\n\"4945769\";\"North Seekonk\";\"main\"\n\"4945808\";\"North Westport\";\"main\"\n\"4945819\";\"Northampton\";\"main\"\n\"4945819\";\"Nortkhempton\";\"other\"\n\"4945819\";\"Нортхемптон\";\"other\"\n\"4945840\";\"Northborough\";\"main\"\n\"4945848\";\"Northbridge\";\"main\"\n\"4945878\";\"Northfield\";\"main\"\n\"4945911\";\"Norton\";\"main\"\n\"4945936\";\"Norwell\";\"main\"\n\"4945952\";\"Norwood\";\"main\"\n\"4946056\";\"Oak Bluffs\";\"main\"\n\"4946136\";\"Oakham\";\"main\"\n\"4946160\";\"Ocean Grove\";\"main\"\n\"4946372\";\"Onset\";\"main\"\n\"4946383\";\"Orange\";\"main\"\n\"4946410\";\"Orleans\";\"main\"\n\"4946441\";\"Osterville\";\"main\"\n\"4946445\";\"Otis\";\"main\"\n\"4946546\";\"Oxford\";\"main\"\n\"4946546\";\"Oksford\";\"other\"\n\"4946546\";\"Оксфорд\";\"other\"\n\"4946620\";\"Palmer\";\"main\"\n\"4946853\";\"Paxton\";\"main\"\n\"4946863\";\"Peabody\";\"main\"\n\"4946863\";\"Pibodi\";\"other\"\n\"4946863\";\"Пибоди\";\"other\"\n\"4946938\";\"Pelham\";\"main\"\n\"4946990\";\"Pepperell\";\"main\"\n\"4947085\";\"Petersham\";\"main\"\n\"4947124\";\"Phillipston\";\"main\"\n\"4947397\";\"Pinehurst\";\"main\"\n\"4947459\";\"Pittsfield\";\"main\"\n\"4947490\";\"Plainville\";\"main\"\n\"4947490\";\"Plejnvill'\";\"other\"\n\"4947490\";\"Плейнвилль\";\"other\"\n\"4947597\";\"Plymouth\";\"main\"\n\"4947597\";\"Plimut\";\"other\"\n\"4947597\";\"Плимут\";\"other\"\n\"4947641\";\"Plympton\";\"main\"\n\"4947655\";\"Pocasset\";\"main\"\n\"4947998\";\"Princeton\";\"main\"\n\"4947998\";\"Prinston\";\"other\"\n\"4947998\";\"Принстон\";\"other\"\n\"4948087\";\"Provincetown\";\"main\"\n\"4948247\";\"Quincy\";\"main\"\n\"4948247\";\"Kuinsi\";\"other\"\n\"4948247\";\"Куинси\";\"other\"\n\"4948403\";\"Randolph\";\"main\"\n\"4948403\";\"Randol'f\";\"other\"\n\"4948403\";\"Рандольф\";\"other\"\n\"4948449\";\"Raynham\";\"main\"\n\"4948451\";\"Raynham Center\";\"main\"\n\"4948462\";\"Reading\";\"main\"\n\"4948462\";\"Reding\";\"other\"\n\"4948462\";\"Рединг\";\"other\"\n\"4948545\";\"Rehoboth\";\"main\"\n\"4948667\";\"Richmond\";\"main\"\n\"4948667\";\"Ричмонд\";\"other\"\n\"4948875\";\"Rochester\";\"main\"\n\"4948875\";\"Рочестер\";\"other\"\n\"4948924\";\"Rockland\";\"main\"\n\"4948936\";\"Rockport\";\"main\"\n\"4949144\";\"Rowley\";\"main\"\n\"4949161\";\"Royalston\";\"main\"\n\"4949204\";\"Russell\";\"main\"\n\"4949245\";\"Rutland\";\"main\"\n\"4949245\";\"Ratlend\";\"other\"\n\"4949245\";\"Ратленд\";\"other\"\n\"4949344\";\"Sagamore\";\"main\"\n\"4950065\";\"Salem\";\"main\"\n\"4950065\";\"seiramu\";\"other\"\n\"4950065\";\"Салем\";\"other\"\n\"4950065\";\"セイラム\";\"other\"\n\"4950092\";\"Salisbury\";\"main\"\n\"4950191\";\"Sandwich\";\"main\"\n\"4950191\";\"Sehndvich\";\"other\"\n\"4950191\";\"Сэндвич\";\"other\"\n\"4950267\";\"Saugus\";\"main\"\n\"4950395\";\"Scituate\";\"main\"\n\"4950541\";\"Seekonk\";\"main\"\n\"4950654\";\"Sharon\";\"main\"\n\"4950654\";\"Шарон\";\"other\"\n\"4950747\";\"Shelburne\";\"main\"\n\"4950749\";\"Shelburne Falls\";\"main\"\n\"4950790\";\"Sherborn\";\"main\"\n\"4950848\";\"Shirley\";\"main\"\n\"4950848\";\"Shirli\";\"other\"\n\"4950848\";\"Ширли\";\"other\"\n\"4950898\";\"Shrewsbury\";\"main\"\n\"4950898\";\"Shrusberi\";\"other\"\n\"4950898\";\"Шрусбери\";\"other\"\n\"4950922\";\"Shutesbury\";\"main\"\n\"4951133\";\"Smith Mills\";\"main\"\n\"4951248\";\"Somerset\";\"main\"\n\"4951248\";\"Сомерсет\";\"other\"\n\"4951257\";\"Somerville\";\"main\"\n\"4951281\";\"South Amherst\";\"main\"\n\"4951305\";\"South Boston\";\"main\"\n\"4951357\";\"South Deerfield\";\"main\"\n\"4951359\";\"South Dennis\";\"main\"\n\"4951397\";\"South Hadley\";\"main\"\n\"4951431\";\"South Lancaster\";\"main\"\n\"4951473\";\"South Peabody\";\"main\"\n\"4951579\";\"South Yarmouth\";\"main\"\n\"4951582\";\"Southampton\";\"main\"\n\"4951591\";\"Southborough\";\"main\"\n\"4951594\";\"Southbridge\";\"main\"\n\"4951640\";\"Southwick\";\"main\"\n\"4951699\";\"Spencer\";\"main\"\n\"4951788\";\"Springfield\";\"main\"\n\"4951788\";\"Springfild\";\"other\"\n\"4951788\";\"si pu lin fei er de\";\"other\"\n\"4951788\";\"supuringufirudo\";\"other\"\n\"4951788\";\"Спрингфилд\";\"other\"\n\"4951788\";\"スプリングフィールド\";\"other\"\n\"4951788\";\"斯普林菲尔德\";\"other\"\n\"4952005\";\"Sterling\";\"main\"\n\"4952005\";\"Стерлинг\";\"other\"\n\"4952078\";\"Stockbridge\";\"main\"\n\"4952121\";\"Stoneham\";\"main\"\n\"4952206\";\"Stoughton\";\"main\"\n\"4952217\";\"Stow\";\"main\"\n\"4952217\";\"Stou\";\"other\"\n\"4952217\";\"Стоу\";\"other\"\n\"4952292\";\"Sturbridge\";\"main\"\n\"4952320\";\"Sudbury\";\"main\"\n\"4952388\";\"Sunderland\";\"main\"\n\"4952444\";\"Sutton\";\"main\"\n\"4952468\";\"Swampscott\";\"main\"\n\"4952487\";\"Swansea\";\"main\"\n\"4952629\";\"Taunton\";\"main\"\n\"4952663\";\"Teaticket\";\"main\"\n\"4952731\";\"Templeton\";\"main\"\n\"4952762\";\"Tewksbury\";\"main\"\n\"4953127\";\"Topsfield\";\"main\"\n\"4953221\";\"Townsend\";\"main\"\n\"4953382\";\"Truro\";\"main\"\n\"4953473\";\"Turners Falls\";\"main\"\n\"4953542\";\"Tyngsboro\";\"main\"\n\"4953794\";\"Upton\";\"main\"\n\"4953804\";\"Uxbridge\";\"main\"\n\"4953938\";\"Vineyard Haven\";\"main\"\n\"4954265\";\"Wakefield\";\"main\"\n\"4954292\";\"Wales\";\"main\"\n\"4954364\";\"Walpole\";\"main\"\n\"4954364\";\"Uolpol\";\"other\"\n\"4954364\";\"Уолпол\";\"other\"\n\"4954380\";\"Waltham\";\"main\"\n\"4954477\";\"Ware\";\"main\"\n\"4954486\";\"Wareham Center\";\"main\"\n\"4954511\";\"Warren\";\"main\"\n\"4954511\";\"Uorren\";\"other\"\n\"4954511\";\"Уоррен\";\"other\"\n\"4954611\";\"Watertown\";\"main\"\n\"4954654\";\"Wayland\";\"main\"\n\"4954677\";\"Webster\";\"main\"\n\"4954738\";\"Wellesley\";\"main\"\n\"4954738\";\"Uehlsli\";\"other\"\n\"4954738\";\"Уэлсли\";\"other\"\n\"4954763\";\"Wellfleet\";\"main\"\n\"4954794\";\"Wendell\";\"main\"\n\"4954801\";\"Wenham\";\"main\"\n\"4954850\";\"West Boylston\";\"main\"\n\"4954886\";\"West Bridgewater\";\"main\"\n\"4954912\";\"West Chatham\";\"main\"\n\"4954923\";\"West Concord\";\"main\"\n\"4954927\";\"West Brookfield\";\"main\"\n\"4954931\";\"West Dennis\";\"main\"\n\"4954944\";\"West Falmouth\";\"main\"\n\"4955030\";\"West Newbury\";\"main\"\n\"4955089\";\"West Springfield\";\"main\"\n\"4955098\";\"West Stockbridge\";\"main\"\n\"4955117\";\"West Tisbury\";\"main\"\n\"4955132\";\"West Wareham\";\"main\"\n\"4955143\";\"West Yarmouth\";\"main\"\n\"4955149\";\"Westborough\";\"main\"\n\"4955190\";\"Westfield\";\"main\"\n\"4955219\";\"Westford\";\"main\"\n\"4955236\";\"Westhampton\";\"main\"\n\"4955247\";\"Westminster\";\"main\"\n\"4955259\";\"Weston\";\"main\"\n\"4955259\";\"Uehston\";\"other\"\n\"4955259\";\"Уэстон\";\"other\"\n\"4955317\";\"Westwood\";\"main\"\n\"4955332\";\"Weweantic\";\"main\"\n\"4955336\";\"Weymouth\";\"main\"\n\"4955376\";\"Whately\";\"main\"\n\"4955472\";\"White Island Shores\";\"main\"\n\"4955539\";\"Whitinsville\";\"main\"\n\"4955544\";\"Whitman\";\"main\"\n\"4955635\";\"Wilbraham\";\"main\"\n\"4955778\";\"Williamsburg\";\"main\"\n\"4955786\";\"Williamstown\";\"main\"\n\"4955840\";\"Wilmington\";\"main\"\n\"4955840\";\"Uilmington\";\"other\"\n\"4955840\";\"Уилмингтон\";\"other\"\n\"4955873\";\"Winchendon\";\"main\"\n\"4955884\";\"Winchester\";\"main\"\n\"4955993\";\"Winthrop\";\"main\"\n\"4956032\";\"Woburn\";\"main\"\n\"4956184\";\"Worcester\";\"main\"\n\"4956184\";\"Vuster\";\"other\"\n\"4956184\";\"usuta\";\"other\"\n\"4956184\";\"Вустер\";\"other\"\n\"4956184\";\"ウースター\";\"other\"\n\"4956266\";\"Wrentham\";\"main\"\n\"4956335\";\"Yarmouth\";\"main\"\n\"4956338\";\"Yarmouth Port\";\"main\"\n\"4956462\";\"Acton\";\"main\"\n\"4956462\";\"Ehkton\";\"other\"\n\"4956462\";\"Эктон\";\"other\"\n\"4956485\";\"Addison\";\"main\"\n\"4956545\";\"Albion\";\"main\"\n\"4956815\";\"Appleton\";\"main\"\n\"4956893\";\"Arundel\";\"main\"\n\"4956929\";\"Ashland\";\"main\"\n\"4956976\";\"Auburn\";\"main\"\n\"4957003\";\"Augusta\";\"main\"\n\"4957003\";\"Ogasta\";\"other\"\n\"4957003\";\"ao gu si ta\";\"other\"\n\"4957003\";\"ogasuta\";\"other\"\n\"4957003\";\"Огаста\";\"other\"\n\"4957003\";\"オーガスタ\";\"other\"\n\"4957003\";\"奥古斯塔\";\"other\"\n\"4957280\";\"Bangor\";\"main\"\n\"4957280\";\"Бангор\";\"other\"\n\"4957320\";\"Bar Harbor\";\"main\"\n\"4957570\";\"Bath\";\"main\"\n\"4957956\";\"Belfast\";\"main\"\n\"4957962\";\"Belgrade\";\"main\"\n\"4958037\";\"Benton\";\"main\"\n\"4958037\";\"Бентон\";\"other\"\n\"4958084\";\"Bethel\";\"main\"\n\"4958141\";\"Biddeford\";\"main\"\n\"4958721\";\"Blue Hill\";\"main\"\n\"4958954\";\"Boothbay\";\"main\"\n\"4958958\";\"Boothbay Harbor\";\"main\"\n\"4959024\";\"Bowdoinham\";\"main\"\n\"4959106\";\"Bradford\";\"main\"\n\"4959119\";\"Bradley\";\"main\"\n\"4959233\";\"Brewer\";\"main\"\n\"4959279\";\"Bridgton\";\"main\"\n\"4959312\";\"Bristol\";\"main\"\n\"4959359\";\"Brooks\";\"main\"\n\"4959433\";\"Brownfield\";\"main\"\n\"4959464\";\"Brownville\";\"main\"\n\"4959473\";\"Brunswick\";\"main\"\n\"4959473\";\"Braunshvejg\";\"other\"\n\"4959473\";\"Брауншвейг\";\"other\"\n\"4959521\";\"Buckfield\";\"main\"\n\"4959551\";\"Bucksport\";\"main\"\n\"4959658\";\"Burnham\";\"main\"\n\"4959799\";\"Buxton\";\"main\"\n\"4959834\";\"Calais\";\"main\"\n\"4959908\";\"Camden\";\"main\"\n\"4960036\";\"Canaan\";\"main\"\n\"4960064\";\"Canton\";\"main\"\n\"4960091\";\"Cape Neddick\";\"main\"\n\"4960140\";\"Caribou\";\"main\"\n\"4960358\";\"Casco\";\"main\"\n\"4960381\";\"Castine\";\"main\"\n\"4960682\";\"Charleston\";\"main\"\n\"4960682\";\"Charlston\";\"other\"\n\"4960682\";\"Чарлстон\";\"other\"\n\"4960753\";\"Chelsea\";\"main\"\n\"4960760\";\"Cherryfield\";\"main\"\n\"4960771\";\"Chesterville\";\"main\"\n\"4960817\";\"China\";\"main\"\n\"4960829\";\"Chisholm\";\"main\"\n\"4961093\";\"Clinton\";\"main\"\n\"4961093\";\"Klinton\";\"other\"\n\"4961093\";\"Клинтон\";\"other\"\n\"4961493\";\"Corinna\";\"main\"\n\"4961511\";\"Cornish\";\"main\"\n\"4961518\";\"Cornville\";\"main\"\n\"4961898\";\"Cumberland Center\";\"main\"\n\"4961976\";\"Cushing\";\"main\"\n\"4962066\";\"Damariscotta\";\"main\"\n\"4962317\";\"Dedham\";\"main\"\n\"4962384\";\"Deer Isle\";\"main\"\n\"4962442\";\"Denmark\";\"main\"\n\"4962502\";\"Dexter\";\"main\"\n\"4962589\";\"Dixfield\";\"main\"\n\"4962596\";\"Dixmont\";\"main\"\n\"4962775\";\"Dover-Foxcroft\";\"main\"\n\"4963306\";\"East Machias\";\"main\"\n\"4963318\";\"East Millinocket\";\"main\"\n\"4963478\";\"Easton\";\"main\"\n\"4963478\";\"Iston\";\"other\"\n\"4963478\";\"Истон\";\"other\"\n\"4963486\";\"Eastport\";\"main\"\n\"4963547\";\"Eddington\";\"main\"\n\"4963559\";\"Edgecomb\";\"main\"\n\"4963642\";\"Eliot\";\"main\"\n\"4963692\";\"Ellsworth\";\"main\"\n\"4963801\";\"Enfield\";\"main\"\n\"4963848\";\"Etna\";\"main\"\n\"4963932\";\"Fairfield\";\"main\"\n\"4963932\";\"Feurfild\";\"other\"\n\"4963932\";\"Феърфилд\";\"other\"\n\"4963985\";\"Falmouth\";\"main\"\n\"4963987\";\"Falmouth Foreside\";\"main\"\n\"4964021\";\"Farmingdale\";\"main\"\n\"4964024\";\"Farmington\";\"main\"\n\"4964024\";\"Фармингтон\";\"other\"\n\"4964068\";\"Fayette\";\"main\"\n\"4964605\";\"Fort Fairfield\";\"main\"\n\"4964627\";\"Fort Kent\";\"main\"\n\"4964813\";\"Frankfort\";\"main\"\n\"4964813\";\"Frankfurt\";\"other\"\n\"4964813\";\"Франкфурт\";\"other\"\n\"4964817\";\"Franklin\";\"main\"\n\"4964817\";\"Франклин\";\"other\"\n\"4964867\";\"Freeport\";\"main\"\n\"4964943\";\"Friendship\";\"main\"\n\"4964996\";\"Fryeburg\";\"main\"\n\"4965079\";\"Gardiner\";\"main\"\n\"4965101\";\"Garland\";\"main\"\n\"4965101\";\"Girljanda\";\"other\"\n\"4965101\";\"Гирлянда\";\"other\"\n\"4965481\";\"Gorham\";\"main\"\n\"4965481\";\"Gorkhehm\";\"other\"\n\"4965481\";\"Горхэм\";\"other\"\n\"4965529\";\"Gouldsboro\";\"main\"\n\"4965671\";\"Gray\";\"main\"\n\"4965923\";\"Greenbush\";\"main\"\n\"4965929\";\"Greene\";\"main\"\n\"4965978\";\"Greenville\";\"main\"\n\"4965978\";\"Grinvill\";\"other\"\n\"4965978\";\"Гринвилл\";\"other\"\n\"4966320\";\"Hallowell\";\"main\"\n\"4966371\";\"Hampden\";\"main\"\n\"4966383\";\"Hancock\";\"main\"\n\"4966554\";\"Harpswell Center\";\"main\"\n\"4966598\";\"Harrison\";\"main\"\n\"4966598\";\"Kharrison\";\"other\"\n\"4966598\";\"Харрисон\";\"other\"\n\"4966616\";\"Hartford\";\"main\"\n\"4966616\";\"Khartford\";\"other\"\n\"4966616\";\"Хартфорд\";\"other\"\n\"4966883\";\"Hebron\";\"main\"\n\"4966992\";\"Hermon\";\"main\"\n\"4967237\";\"Hiram\";\"main\"\n\"4967277\";\"Hodgdon\";\"main\"\n\"4967344\";\"Holden\";\"main\"\n\"4967361\";\"Hollis Center\";\"main\"\n\"4967563\";\"Houlton\";\"main\"\n\"4967652\";\"Howland\";\"main\"\n\"4967690\";\"Hudson\";\"main\"\n\"4967690\";\"Gudzon\";\"other\"\n\"4967690\";\"Гудзон\";\"other\"\n\"4968234\";\"Jay\";\"main\"\n\"4968246\";\"Jefferson\";\"main\"\n\"4968246\";\"Dzhefferson\";\"other\"\n\"4968246\";\"Джефферсон\";\"other\"\n\"4968499\";\"Jonesport\";\"main\"\n\"4968688\";\"Kenduskeag\";\"main\"\n\"4968729\";\"Kennebunk\";\"main\"\n\"4968747\";\"Kennebunkport\";\"main\"\n\"4968894\";\"Kingfield\";\"main\"\n\"4968933\";\"Kittery Point\";\"main\"\n\"4968937\";\"Kittery\";\"main\"\n\"4969066\";\"Lake Arrowhead\";\"main\"\n\"4969280\";\"Lebanon\";\"main\"\n\"4969332\";\"Leeds\";\"main\"\n\"4969375\";\"Levant\";\"main\"\n\"4969398\";\"Lewiston\";\"main\"\n\"4969398\";\"L'juiston\";\"other\"\n\"4969398\";\"Льюистон\";\"other\"\n\"4969529\";\"Limerick\";\"main\"\n\"4969532\";\"Limestone\";\"main\"\n\"4969542\";\"Limington\";\"main\"\n\"4969547\";\"Lincoln\";\"main\"\n\"4969547\";\"Linkol'n\";\"other\"\n\"4969547\";\"Линкольн\";\"other\"\n\"4969592\";\"Lincolnville\";\"main\"\n\"4969622\";\"Lisbon\";\"main\"\n\"4969627\";\"Lisbon Falls\";\"main\"\n\"4970214\";\"Livermore\";\"main\"\n\"4970214\";\"Livurmor\";\"other\"\n\"4970214\";\"Ливърмор\";\"other\"\n\"4970215\";\"Livermore Falls\";\"main\"\n\"4970644\";\"Lovell\";\"main\"\n\"4970802\";\"Lubec\";\"main\"\n\"4970888\";\"Machias\";\"main\"\n\"4970903\";\"Machiasport\";\"main\"\n\"4970938\";\"Madawaska\";\"main\"\n\"4970954\";\"Madison\";\"main\"\n\"4970954\";\"Мадисон\";\"other\"\n\"4971094\";\"Manchester\";\"main\"\n\"4971094\";\"Манчестер\";\"other\"\n\"4971187\";\"Mapleton\";\"main\"\n\"4971253\";\"Mars Hill\";\"main\"\n\"4971699\";\"Mechanic Falls\";\"main\"\n\"4971734\";\"Medway\";\"main\"\n\"4971871\";\"Mexico\";\"main\"\n\"4972002\";\"Milbridge\";\"main\"\n\"4972028\";\"Milford\";\"main\"\n\"4972028\";\"Милфорд\";\"other\"\n\"4972220\";\"Millinocket\";\"main\"\n\"4972235\";\"Milo\";\"main\"\n\"4972286\";\"Minot\";\"main\"\n\"4972286\";\"Mina\";\"other\"\n\"4972286\";\"Мина\";\"other\"\n\"4972368\";\"Monmouth\";\"main\"\n\"4972784\";\"Mount Vernon\";\"main\"\n\"4973108\";\"Naples\";\"main\"\n\"4973108\";\"Neapol'\";\"other\"\n\"4973108\";\"Неаполь\";\"other\"\n\"4973259\";\"New Gloucester\";\"main\"\n\"4973288\";\"New Sharon\";\"main\"\n\"4973311\";\"Newcastle\";\"main\"\n\"4973333\";\"Newport\";\"main\"\n\"4973333\";\"N'juport\";\"other\"\n\"4973333\";\"Ньюпорт\";\"other\"\n\"4973346\";\"Newfield\";\"main\"\n\"4973402\";\"Nobleboro\";\"main\"\n\"4973430\";\"Norridgewock\";\"main\"\n\"4973457\";\"North Bath\";\"main\"\n\"4973463\";\"North Berwick\";\"main\"\n\"4973717\";\"North Windham\";\"main\"\n\"4973781\";\"Northport\";\"main\"\n\"4973840\";\"Norway\";\"main\"\n\"4974071\";\"Oakland\";\"main\"\n\"4974071\";\"Oklend\";\"other\"\n\"4974071\";\"Окленд\";\"other\"\n\"4974108\";\"Ogunquit\";\"main\"\n\"4974194\";\"Old Orchard Beach\";\"main\"\n\"4974231\";\"Old Town\";\"main\"\n\"4974306\";\"Orland\";\"main\"\n\"4974313\";\"Orono\";\"main\"\n\"4974328\";\"Orrington\";\"main\"\n\"4974489\";\"Owls Head\";\"main\"\n\"4974537\";\"Oxford\";\"main\"\n\"4974537\";\"Oksford\";\"other\"\n\"4974537\";\"Оксфорд\";\"other\"\n\"4974578\";\"Palermo\";\"main\"\n\"4974597\";\"Palmyra\";\"main\"\n\"4974617\";\"Paris\";\"main\"\n\"4974617\";\"Parizh\";\"other\"\n\"4974617\";\"Париж\";\"other\"\n\"4974703\";\"Parsonsfield\";\"main\"\n\"4974775\";\"Patten\";\"main\"\n\"4974967\";\"Penobscot\";\"main\"\n\"4975080\";\"Peru\";\"main\"\n\"4975157\";\"Phippsburg\";\"main\"\n\"4975446\";\"Pittsfield\";\"main\"\n\"4975451\";\"Pittston\";\"main\"\n\"4975573\";\"Plymouth\";\"main\"\n\"4975573\";\"Plimut\";\"other\"\n\"4975573\";\"Плимут\";\"other\"\n\"4975603\";\"Poland\";\"main\"\n\"4975783\";\"Porter\";\"main\"\n\"4975802\";\"Portland\";\"main\"\n\"4975802\";\"Portlandia\";\"other\"\n\"4975802\";\"Portlend\";\"other\"\n\"4975802\";\"pwrtlnd\";\"other\"\n\"4975802\";\"Портленд\";\"other\"\n\"4975802\";\"פורטלנד\";\"other\"\n\"4975966\";\"Presque Isle\";\"main\"\n\"4976315\";\"Randolph\";\"main\"\n\"4976315\";\"Randol'f\";\"other\"\n\"4976315\";\"Рандольф\";\"other\"\n\"4976361\";\"Raymond\";\"main\"\n\"4976383\";\"Readfield\";\"main\"\n\"4976528\";\"Richmond\";\"main\"\n\"4976528\";\"Ричмонд\";\"other\"\n\"4976817\";\"Rockport\";\"main\"\n\"4976934\";\"Rome\";\"main\"\n\"4977125\";\"Rumford\";\"main\"\n\"4977194\";\"Sabattus\";\"main\"\n\"4977222\";\"Saco\";\"main\"\n\"4977288\";\"Saint Albans\";\"main\"\n\"4977372\";\"Saint George\";\"main\"\n\"4977372\";\"Svjatoj Georgij\";\"other\"\n\"4977372\";\"Святой Георгий\";\"other\"\n\"4977762\";\"Sanford\";\"main\"\n\"4977779\";\"Sangerville\";\"main\"\n\"4977882\";\"Scarborough\";\"main\"\n\"4978095\";\"Searsmont\";\"main\"\n\"4978097\";\"Searsport\";\"main\"\n\"4978242\";\"Sedgwick\";\"main\"\n\"4978367\";\"Shapleigh\";\"main\"\n\"4978585\";\"Sidney\";\"main\"\n\"4978585\";\"Sidnej\";\"other\"\n\"4978585\";\"Сидней\";\"other\"\n\"4978701\";\"Skowhegan\";\"main\"\n\"4979050\";\"South Berwick\";\"main\"\n\"4979158\";\"South Eliot\";\"main\"\n\"4979220\";\"South Paris\";\"main\"\n\"4979244\";\"South Portland\";\"main\"\n\"4979245\";\"South Portland Gardens\";\"main\"\n\"4979261\";\"South Sanford\";\"main\"\n\"4979277\";\"South Thomaston\";\"main\"\n\"4979352\";\"Southwest Harbor\";\"main\"\n\"4979580\";\"Springvale\";\"main\"\n\"4979722\";\"Standish\";\"main\"\n\"4979840\";\"Stetson\";\"main\"\n\"4979854\";\"Steuben\";\"main\"\n\"4979945\";\"Stockton Springs\";\"main\"\n\"4979975\";\"Stonington\";\"main\"\n\"4980051\";\"Strong\";\"main\"\n\"4980155\";\"Sullivan\";\"main\"\n\"4980248\";\"Surry\";\"main\"\n\"4980287\";\"Swanville\";\"main\"\n\"4980629\";\"Thomaston\";\"main\"\n\"4980927\";\"Topsham\";\"main\"\n\"4981071\";\"Tremont\";\"main\"\n\"4981078\";\"Trenton\";\"main\"\n\"4981078\";\"Трентон\";\"other\"\n\"4981180\";\"Troy\";\"main\"\n\"4981180\";\"Troja\";\"other\"\n\"4981180\";\"Троя\";\"other\"\n\"4981250\";\"Turner\";\"main\"\n\"4981710\";\"Van Buren\";\"main\"\n\"4981710\";\"Van Bjuren\";\"other\"\n\"4981710\";\"Ван Бюрен\";\"other\"\n\"4981745\";\"Vassalboro\";\"main\"\n\"4981750\";\"Veazie\";\"main\"\n\"4981804\";\"Vinalhaven\";\"main\"\n\"4982044\";\"Waldoboro\";\"main\"\n\"4982137\";\"Warren\";\"main\"\n\"4982137\";\"Uorren\";\"other\"\n\"4982137\";\"Уоррен\";\"other\"\n\"4982160\";\"Washburn\";\"main\"\n\"4982172\";\"Washington\";\"main\"\n\"4982172\";\"Vashington\";\"other\"\n\"4982172\";\"Вашингтон\";\"other\"\n\"4982218\";\"Waterboro\";\"main\"\n\"4982236\";\"Waterville\";\"main\"\n\"4982265\";\"Wayne\";\"main\"\n\"4982394\";\"Wells Beach Station\";\"main\"\n\"4982671\";\"West Paris\";\"main\"\n\"4982720\";\"West Scarborough\";\"main\"\n\"4982753\";\"Westbrook\";\"main\"\n\"4982975\";\"Whitefield\";\"main\"\n\"4983257\";\"Wilton\";\"main\"\n\"4983283\";\"Windsor\";\"main\"\n\"4983283\";\"Vindzor\";\"other\"\n\"4983283\";\"Виндзор\";\"other\"\n\"4983322\";\"Winslow\";\"main\"\n\"4983348\";\"Winterport\";\"main\"\n\"4983355\";\"Winthrop\";\"main\"\n\"4983359\";\"Wiscasset\";\"main\"\n\"4983369\";\"Winter Harbor\";\"main\"\n\"4983504\";\"Woolwich\";\"main\"\n\"4983572\";\"Yarmouth\";\"main\"\n\"4983625\";\"York Harbor\";\"main\"\n\"4983811\";\"Adrian\";\"main\"\n\"4983811\";\"Адриан\";\"other\"\n\"4983905\";\"Albion\";\"main\"\n\"4983970\";\"Algonac\";\"main\"\n\"4983989\";\"Allegan\";\"main\"\n\"4984016\";\"Allen Park\";\"main\"\n\"4984029\";\"Allendale\";\"main\"\n\"4984049\";\"Alma\";\"main\"\n\"4984067\";\"Almont\";\"main\"\n\"4984075\";\"Alpena\";\"main\"\n\"4984247\";\"Ann Arbor\";\"main\"\n\"4984247\";\"A2\";\"other\"\n\"4984247\";\"Ann-Arbor\";\"other\"\n\"4984247\";\"Arbaro de Ana\";\"other\"\n\"4984247\";\"aina arbara\";\"other\"\n\"4984247\";\"an nuo bao\";\"other\"\n\"4984247\";\"anaba\";\"other\"\n\"4984247\";\"ena arbar\";\"other\"\n\"4984247\";\"Анн-Арбор\";\"other\"\n\"4984247\";\"ऍन आर्बर्\";\"other\"\n\"4984247\";\"ऐन आर्बर\";\"other\"\n\"4984247\";\"アナーバー\";\"other\"\n\"4984247\";\"安娜堡\";\"other\"\n\"4984361\";\"Argentine\";\"main\"\n\"4984379\";\"Armada\";\"main\"\n\"4984489\";\"Athens\";\"main\"\n\"4984533\";\"Au Sable\";\"main\"\n\"4984562\";\"Auburn\";\"main\"\n\"4984565\";\"Auburn Hills\";\"main\"\n\"4984565\";\"Obern-Khills\";\"other\"\n\"4984565\";\"Оберн-Хиллс\";\"other\"\n\"4984692\";\"Bad Axe\";\"main\"\n\"4984802\";\"Baldwin\";\"main\"\n\"4984802\";\"Bolduin\";\"other\"\n\"4984802\";\"Болдуин\";\"other\"\n\"4984863\";\"Bangor\";\"main\"\n\"4984863\";\"Бангор\";\"other\"\n\"4984902\";\"Baraga\";\"main\"\n\"4985153\";\"Battle Creek\";\"main\"\n\"4985180\";\"Bay City\";\"main\"\n\"4985180\";\"Bej-Siti\";\"other\"\n\"4985180\";\"Бей-Сити\";\"other\"\n\"4985465\";\"Beaverton\";\"main\"\n\"4985521\";\"Beecher\";\"main\"\n\"4985530\";\"Beechwood\";\"main\"\n\"4985552\";\"Belding\";\"main\"\n\"4985583\";\"Bellaire\";\"main\"\n\"4985601\";\"Belleville\";\"main\"\n\"4985607\";\"Bellevue\";\"main\"\n\"4985711\";\"Benton Harbor\";\"main\"\n\"4985713\";\"Benton Heights\";\"main\"\n\"4985744\";\"Berkley\";\"main\"\n\"4985761\";\"Berrien Springs\";\"main\"\n\"4985785\";\"Bessemer\";\"main\"\n\"4985891\";\"Beverly Hills\";\"main\"\n\"4985891\";\"Bevurli Khils\";\"other\"\n\"4985891\";\"Бевърли Хилс\";\"other\"\n\"4986020\";\"Big Rapids\";\"main\"\n\"4986099\";\"Bingham Farms\";\"main\"\n\"4986141\";\"Birch Run\";\"main\"\n\"4986172\";\"Birmingham\";\"main\"\n\"4986172\";\"Birmingem\";\"other\"\n\"4986172\";\"Бирмингем\";\"other\"\n\"4986398\";\"Blissfield\";\"main\"\n\"4986429\";\"Bloomfield Hills\";\"main\"\n\"4986759\";\"Boyne City\";\"main\"\n\"4986888\";\"Breckenridge\";\"main\"\n\"4986963\";\"Bridgeport\";\"main\"\n\"4986977\";\"Bridgman\";\"main\"\n\"4986994\";\"Brighton\";\"main\"\n\"4986994\";\"Brajton\";\"other\"\n\"4986994\";\"Брайтон\";\"other\"\n\"4987045\";\"Bronson\";\"main\"\n\"4987064\";\"Brooklyn\";\"main\"\n\"4987064\";\"Bruklin\";\"other\"\n\"4987064\";\"Бруклин\";\"other\"\n\"4987112\";\"Brown City\";\"main\"\n\"4987154\";\"Brownlee Park\";\"main\"\n\"4987238\";\"Buchanan\";\"main\"\n\"4987304\";\"Buena Vista\";\"main\"\n\"4987467\";\"Burt\";\"main\"\n\"4987482\";\"Burton\";\"main\"\n\"4987482\";\"Berton\";\"other\"\n\"4987482\";\"Бертон\";\"other\"\n\"4987587\";\"Byron Center\";\"main\"\n\"4987617\";\"Cadillac\";\"main\"\n\"4987661\";\"Caledonia\";\"main\"\n\"4987661\";\"Kaledonija\";\"other\"\n\"4987661\";\"Каледония\";\"other\"\n\"4987963\";\"Canadian Lakes\";\"main\"\n\"4987990\";\"Canton\";\"main\"\n\"4987996\";\"Capac\";\"main\"\n\"4988024\";\"Carleton\";\"main\"\n\"4988059\";\"Caro\";\"main\"\n\"4988132\";\"Carrollton\";\"main\"\n\"4988138\";\"Carson City\";\"main\"\n\"4988138\";\"Karson-Siti\";\"other\"\n\"4988138\";\"Карсон-Сити\";\"other\"\n\"4988215\";\"Cass City\";\"main\"\n\"4988232\";\"Cassopolis\";\"main\"\n\"4988362\";\"Cedar Springs\";\"main\"\n\"4988400\";\"Center Line\";\"main\"\n\"4988430\";\"Central Lake\";\"main\"\n\"4988455\";\"Centreville\";\"main\"\n\"4988575\";\"Charlevoix\";\"main\"\n\"4988584\";\"Charlotte\";\"main\"\n\"4988584\";\"Sharlott\";\"other\"\n\"4988584\";\"Шарлотт\";\"other\"\n\"4988617\";\"Cheboygan\";\"main\"\n\"4988628\";\"Chelsea\";\"main\"\n\"4988671\";\"Chesaning\";\"main\"\n\"4988933\";\"Clare\";\"main\"\n\"4988997\";\"Clarkston\";\"main\"\n\"4989005\";\"Clawson\";\"main\"\n\"4989132\";\"Clinton\";\"main\"\n\"4989132\";\"Klinton\";\"other\"\n\"4989132\";\"Клинтон\";\"other\"\n\"4989133\";\"Clinton\";\"main\"\n\"4989153\";\"Clio\";\"main\"\n\"4989266\";\"Coldwater\";\"main\"\n\"4989304\";\"Coleman\";\"main\"\n\"4989343\";\"Coloma\";\"main\"\n\"4989347\";\"Colon\";\"main\"\n\"4989432\";\"Comstock Park\";\"main\"\n\"4989442\";\"Concord\";\"main\"\n\"4989442\";\"Konkord\";\"other\"\n\"4989442\";\"Конкорд\";\"other\"\n\"4989486\";\"Constantine\";\"main\"\n\"4989596\";\"Coopersville\";\"main\"\n\"4989686\";\"Corunna\";\"main\"\n\"4990039\";\"Croswell\";\"main\"\n\"4990121\";\"Crystal Falls\";\"main\"\n\"4990242\";\"Cutlerville\";\"main\"\n\"4990400\";\"Davison\";\"main\"\n\"4990469\";\"DeWitt\";\"main\"\n\"4990510\";\"Dearborn\";\"main\"\n\"4990510\";\"di er bo en\";\"other\"\n\"4990510\";\"dyrbwrn\";\"other\"\n\"4990510\";\"ديربورن\";\"other\"\n\"4990510\";\"迪尔伯恩\";\"other\"\n\"4990512\";\"Dearborn Heights\";\"main\"\n\"4990524\";\"Decatur\";\"main\"\n\"4990524\";\"Dekejter\";\"other\"\n\"4990524\";\"Декейтер\";\"other\"\n\"4990729\";\"Detroit\";\"main\"\n\"4990729\";\"DTT\";\"other\"\n\"4990729\";\"Detroitas\";\"other\"\n\"4990729\";\"Detrojt\";\"other\"\n\"4990729\";\"Detrojto\";\"other\"\n\"4990729\";\"Ntetroit\";\"other\"\n\"4990729\";\"detoroito\";\"other\"\n\"4990729\";\"detro'ita\";\"other\"\n\"4990729\";\"di te lu\";\"other\"\n\"4990729\";\"dtrwyt\";\"other\"\n\"4990729\";\"dytrwyt\";\"other\"\n\"4990729\";\"Ντητρόιτ\";\"other\"\n\"4990729\";\"Детроит\";\"other\"\n\"4990729\";\"Детройт\";\"other\"\n\"4990729\";\"דטרויט\";\"other\"\n\"4990729\";\"דעטרויט\";\"other\"\n\"4990729\";\"ديترويت\";\"other\"\n\"4990729\";\"डेट्रॉईट\";\"other\"\n\"4990729\";\"デトロイト\";\"other\"\n\"4990729\";\"底特律\";\"other\"\n\"4990730\";\"Detroit Beach\";\"main\"\n\"4990797\";\"Dexter\";\"main\"\n\"4990875\";\"Dimondale\";\"main\"\n\"4991076\";\"Douglas\";\"main\"\n\"4991111\";\"Dowagiac\";\"main\"\n\"4991330\";\"Dundee\";\"main\"\n\"4991364\";\"Durand\";\"main\"\n\"4991600\";\"East Grand Rapids\";\"main\"\n\"4991613\";\"East Jordan\";\"main\"\n\"4991640\";\"East Lansing\";\"main\"\n\"4991640\";\"Ist-Lansing\";\"other\"\n\"4991640\";\"Ист-Лансинг\";\"other\"\n\"4991692\";\"East Tawas\";\"main\"\n\"4991735\";\"Eastpointe\";\"main\"\n\"4991740\";\"Eastwood\";\"main\"\n\"4991753\";\"Eaton Rapids\";\"main\"\n\"4991791\";\"Ecorse\";\"main\"\n\"4991823\";\"Edgemont Park\";\"main\"\n\"4991857\";\"Edmore\";\"main\"\n\"4991879\";\"Edwardsburg\";\"main\"\n\"4991969\";\"Elk Rapids\";\"main\"\n\"4992232\";\"Escanaba\";\"main\"\n\"4992251\";\"Essexville\";\"main\"\n\"4992304\";\"Evart\";\"main\"\n\"4992394\";\"Fair Plain\";\"main\"\n\"4992519\";\"Farmington\";\"main\"\n\"4992519\";\"Фармингтон\";\"other\"\n\"4992523\";\"Farmington Hills\";\"main\"\n\"4992609\";\"Fennville\";\"main\"\n\"4992612\";\"Fenton\";\"main\"\n\"4992635\";\"Ferndale\";\"main\"\n\"4992659\";\"Ferrysburg\";\"main\"\n\"4992940\";\"Flat Rock\";\"main\"\n\"4992982\";\"Flint\";\"main\"\n\"4992982\";\"furinto\";\"other\"\n\"4992982\";\"Флинт\";\"other\"\n\"4992982\";\"フリント\";\"other\"\n\"4993022\";\"Flushing\";\"main\"\n\"4993125\";\"Forest Hills\";\"main\"\n\"4993267\";\"Fowler\";\"main\"\n\"4993272\";\"Fowlerville\";\"main\"\n\"4993321\";\"Frankenmuth\";\"main\"\n\"4993326\";\"Frankfort\";\"main\"\n\"4993326\";\"Frankfurt\";\"other\"\n\"4993326\";\"Франкфурт\";\"other\"\n\"4993335\";\"Franklin\";\"main\"\n\"4993335\";\"Франклин\";\"other\"\n\"4993369\";\"Fraser\";\"main\"\n\"4993402\";\"Freeland\";\"main\"\n\"4993417\";\"Fremont\";\"main\"\n\"4993417\";\"Frimont\";\"other\"\n\"4993417\";\"Фримонт\";\"other\"\n\"4993519\";\"Fruitport\";\"main\"\n\"4993609\";\"Galesburg\";\"main\"\n\"4993659\";\"Garden City\";\"main\"\n\"4993756\";\"Gaylord\";\"main\"\n\"4993873\";\"Gibraltar\";\"main\"\n\"4993981\";\"Gladstone\";\"main\"\n\"4993981\";\"Gladston\";\"other\"\n\"4993981\";\"Гладстон\";\"other\"\n\"4993985\";\"Gladwin\";\"main\"\n\"4994154\";\"Goodrich\";\"main\"\n\"4994320\";\"Grand Blanc\";\"main\"\n\"4994325\";\"Grand Haven\";\"main\"\n\"4994344\";\"Grand Ledge\";\"main\"\n\"4994358\";\"Grand Rapids\";\"main\"\n\"4994358\";\"Grand-Rapids\";\"other\"\n\"4994358\";\"Гранд-Рапидс\";\"other\"\n\"4994391\";\"Grandville\";\"main\"\n\"4994483\";\"Grass Lake\";\"main\"\n\"4994578\";\"Grayling\";\"main\"\n\"4994763\";\"Greenville\";\"main\"\n\"4994763\";\"Grinvill\";\"other\"\n\"4994763\";\"Гринвилл\";\"other\"\n\"4994793\";\"Greilickville\";\"main\"\n\"4994851\";\"Grosse Ile\";\"main\"\n\"4994862\";\"Grosse Pointe\";\"main\"\n\"4994864\";\"Grosse Pointe Farms\";\"main\"\n\"4994868\";\"Grosse Pointe Park\";\"main\"\n\"4994870\";\"Grosse Pointe Shores\";\"main\"\n\"4994871\";\"Grosse Pointe Woods\";\"main\"\n\"4994999\";\"Gwinn\";\"main\"\n\"4995197\";\"Hamtramck\";\"main\"\n\"4995201\";\"Hancock\";\"main\"\n\"4995269\";\"Harbor Beach\";\"main\"\n\"4995285\";\"Harbor Springs\";\"main\"\n\"4995368\";\"Harper Woods\";\"main\"\n\"4995403\";\"Harrison\";\"main\"\n\"4995403\";\"Kharrison\";\"other\"\n\"4995403\";\"Харрисон\";\"other\"\n\"4995436\";\"Hart\";\"main\"\n\"4995468\";\"Hartford\";\"main\"\n\"4995468\";\"Khartford\";\"other\"\n\"4995468\";\"Хартфорд\";\"other\"\n\"4995489\";\"Harvey\";\"main\"\n\"4995489\";\"Kharvi\";\"other\"\n\"4995489\";\"Харви\";\"other\"\n\"4995514\";\"Haslett\";\"main\"\n\"4995520\";\"Hastings\";\"main\"\n\"4995520\";\"Khejstings\";\"other\"\n\"4995520\";\"Хейстингс\";\"other\"\n\"4995664\";\"Hazel Park\";\"main\"\n\"4995760\";\"Hemlock\";\"main\"\n\"4996017\";\"Highland Park\";\"main\"\n\"4996017\";\"Khajlend Park\";\"other\"\n\"4996017\";\"Хайленд Парк\";\"other\"\n\"4996107\";\"Hillsdale\";\"main\"\n\"4996248\";\"Holland\";\"main\"\n\"4996248\";\"Gollandija\";\"other\"\n\"4996248\";\"Misi-pawastik\";\"other\"\n\"4996248\";\"Misi-páwastik\";\"other\"\n\"4996248\";\"Голландия\";\"other\"\n\"4996274\";\"Holly\";\"main\"\n\"4996306\";\"Holt\";\"main\"\n\"4996369\";\"Homer\";\"main\"\n\"4996572\";\"Houghton\";\"main\"\n\"4996580\";\"Houghton Lake\";\"main\"\n\"4996618\";\"Howard City\";\"main\"\n\"4996655\";\"Howell\";\"main\"\n\"4996696\";\"Hubbell\";\"main\"\n\"4996718\";\"Hudson\";\"main\"\n\"4996718\";\"Gudzon\";\"other\"\n\"4996718\";\"Гудзон\";\"other\"\n\"4996736\";\"Hudsonville\";\"main\"\n\"4996832\";\"Huntington Woods\";\"main\"\n\"4996956\";\"Imlay City\";\"main\"\n\"4997086\";\"Indian River\";\"main\"\n\"4997191\";\"Ionia\";\"main\"\n\"4997232\";\"Iron Mountain\";\"main\"\n\"4997238\";\"Iron River\";\"main\"\n\"4997249\";\"Ironwood\";\"main\"\n\"4997281\";\"Ishpeming\";\"main\"\n\"4997346\";\"Ithaca\";\"main\"\n\"4997346\";\"Itak\";\"other\"\n\"4997346\";\"Итак\";\"other\"\n\"4997384\";\"Jackson\";\"main\"\n\"4997384\";\"Dzhekson\";\"other\"\n\"4997384\";\"Джексон\";\"other\"\n\"4997500\";\"Jenison\";\"main\"\n\"4997698\";\"Jonesville\";\"main\"\n\"4997787\";\"Kalamazoo\";\"main\"\n\"4997787\";\"Kalamazu\";\"other\"\n\"4997787\";\"ka la ma zu\";\"other\"\n\"4997787\";\"Каламазу\";\"other\"\n\"4997787\";\"卡拉马祖\";\"other\"\n\"4997805\";\"Kalkaska\";\"main\"\n\"4997868\";\"Keego Harbor\";\"main\"\n\"4998002\";\"Kent City\";\"main\"\n\"4998018\";\"Kentwood\";\"main\"\n\"4998189\";\"Kingsford\";\"main\"\n\"4998195\";\"Kingsley\";\"main\"\n\"4998431\";\"L'Anse\";\"main\"\n\"4998506\";\"Laingsburg\";\"main\"\n\"4998543\";\"Lake Fenton\";\"main\"\n\"4998569\";\"Lake Linden\";\"main\"\n\"4998574\";\"Lake Michigan Beach\";\"main\"\n\"4998583\";\"Lake Odessa\";\"main\"\n\"4998587\";\"Lake Orion\";\"main\"\n\"4998703\";\"Lakeview\";\"main\"\n\"4998705\";\"Lakeview\";\"main\"\n\"4998745\";\"Lakewood Club\";\"main\"\n\"4998769\";\"Lambertville\";\"main\"\n\"4998830\";\"Lansing\";\"main\"\n\"4998830\";\"Lensing\";\"other\"\n\"4998830\";\"lan xin\";\"other\"\n\"4998830\";\"ranshingu\";\"other\"\n\"4998830\";\"Ленсинг\";\"other\"\n\"4998830\";\"ランシング\";\"other\"\n\"4998830\";\"兰辛\";\"other\"\n\"4998842\";\"Lapeer\";\"main\"\n\"4998900\";\"Lathrup Village\";\"main\"\n\"4998924\";\"Laurium\";\"main\"\n\"4998937\";\"Lawrence\";\"main\"\n\"4998937\";\"Lourens\";\"other\"\n\"4998937\";\"Лоуренс\";\"other\"\n\"4998956\";\"Lawton\";\"main\"\n\"4998956\";\"Louton\";\"other\"\n\"4998956\";\"Лоутон\";\"other\"\n\"4999122\";\"Leslie\";\"main\"\n\"4999167\";\"Lewiston\";\"main\"\n\"4999167\";\"L'juiston\";\"other\"\n\"4999167\";\"Льюистон\";\"other\"\n\"4999171\";\"Lexington\";\"main\"\n\"4999171\";\"Leksington\";\"other\"\n\"4999171\";\"Лексингтон\";\"other\"\n\"4999311\";\"Lincoln Park\";\"main\"\n\"4999360\";\"Linden\";\"main\"\n\"4999360\";\"Линден\";\"other\"\n\"4999410\";\"Litchfield\";\"main\"\n\"4999837\";\"Livonia\";\"main\"\n\"4999837\";\"Livonija\";\"other\"\n\"4999837\";\"Ливония\";\"other\"\n\"5000239\";\"Lowell\";\"main\"\n\"5000239\";\"Louel\";\"other\"\n\"5000239\";\"Лоуел\";\"other\"\n\"5000306\";\"Ludington\";\"main\"\n\"5000334\";\"Luna Pier\";\"main\"\n\"5000500\";\"Madison Heights\";\"main\"\n\"5000598\";\"Manchester\";\"main\"\n\"5000598\";\"Манчестер\";\"other\"\n\"5000611\";\"Manistee\";\"main\"\n\"5000615\";\"Mancelona\";\"main\"\n\"5000625\";\"Manistique\";\"main\"\n\"5000678\";\"Manton\";\"main\"\n\"5000843\";\"Marcellus\";\"main\"\n\"5000873\";\"Marine City\";\"main\"\n\"5000938\";\"Marlette\";\"main\"\n\"5000947\";\"Marquette\";\"main\"\n\"5000947\";\"Markett\";\"other\"\n\"5000947\";\"Маркетт\";\"other\"\n\"5000996\";\"Marshall\";\"main\"\n\"5000996\";\"Маршалл\";\"other\"\n\"5001084\";\"Marysville\";\"main\"\n\"5001093\";\"Mason\";\"main\"\n\"5001093\";\"Mejson\";\"other\"\n\"5001093\";\"Мейсон\";\"other\"\n\"5001159\";\"Mattawan\";\"main\"\n\"5001222\";\"Mayville\";\"main\"\n\"5001634\";\"Melvindale\";\"main\"\n\"5001644\";\"Memphis\";\"main\"\n\"5001644\";\"Memfis\";\"other\"\n\"5001644\";\"Мемфис\";\"other\"\n\"5001669\";\"Menominee\";\"main\"\n\"5001813\";\"Michigan Center\";\"main\"\n\"5001924\";\"Middleville\";\"main\"\n\"5001929\";\"Midland\";\"main\"\n\"5001962\";\"Milan\";\"main\"\n\"5001972\";\"Milford\";\"main\"\n\"5001972\";\"Милфорд\";\"other\"\n\"5002100\";\"Millington\";\"main\"\n\"5002197\";\"Mio\";\"main\"\n\"5002344\";\"Monroe\";\"main\"\n\"5002344\";\"Monro\";\"other\"\n\"5002344\";\"Монро\";\"other\"\n\"5002367\";\"Montague\";\"main\"\n\"5002411\";\"Montrose\";\"main\"\n\"5002495\";\"Morenci\";\"main\"\n\"5002656\";\"Mount Clemens\";\"main\"\n\"5002656\";\"Mt. Clemens\";\"other\"\n\"5002699\";\"Mount Morris\";\"main\"\n\"5002714\";\"Mount Pleasant\";\"main\"\n\"5003065\";\"Munising\";\"main\"\n\"5003132\";\"Muskegon\";\"main\"\n\"5003140\";\"Muskegon Heights\";\"main\"\n\"5003224\";\"Napoleon\";\"main\"\n\"5003243\";\"Nashville\";\"main\"\n\"5003243\";\"Nashvill\";\"other\"\n\"5003243\";\"Нашвилл\";\"other\"\n\"5003294\";\"Negaunee\";\"main\"\n\"5003369\";\"New Baltimore\";\"main\"\n\"5003374\";\"New Buffalo\";\"main\"\n\"5003383\";\"New Haven\";\"main\"\n\"5003383\";\"N'ju-Khejven\";\"other\"\n\"5003383\";\"Нью-Хейвен\";\"other\"\n\"5003384\";\"New Haven\";\"main\"\n\"5003424\";\"Newaygo\";\"main\"\n\"5003435\";\"Newberry\";\"main\"\n\"5003514\";\"Niles\";\"main\"\n\"5003811\";\"North Muskegon\";\"main\"\n\"5003952\";\"Northview\";\"main\"\n\"5003956\";\"Northville\";\"main\"\n\"5004005\";\"Norton Shores\";\"main\"\n\"5004016\";\"Norway\";\"main\"\n\"5004062\";\"Novi\";\"main\"\n\"5004062\";\"Novyj\";\"other\"\n\"5004062\";\"Новый\";\"other\"\n\"5004188\";\"Oak Park\";\"main\"\n\"5004188\";\"Ouk-Park\";\"other\"\n\"5004188\";\"Оук-Парк\";\"other\"\n\"5004359\";\"Okemos\";\"main\"\n\"5004454\";\"Olivet\";\"main\"\n\"5004520\";\"Ontonagon\";\"main\"\n\"5004551\";\"Orchard Lake\";\"main\"\n\"5004593\";\"Ortonville\";\"main\"\n\"5004644\";\"Ossineke\";\"main\"\n\"5004658\";\"Otsego\";\"main\"\n\"5004776\";\"Ovid\";\"main\"\n\"5004792\";\"Owosso\";\"main\"\n\"5004817\";\"Oxford\";\"main\"\n\"5004817\";\"Oksford\";\"other\"\n\"5004817\";\"Оксфорд\";\"other\"\n\"5004961\";\"Parchment\";\"main\"\n\"5005126\";\"Paw Paw\";\"main\"\n\"5005128\";\"Paw Paw Lake\";\"main\"\n\"5005178\";\"Pearl Beach\";\"main\"\n\"5005401\";\"Perry\";\"main\"\n\"5005450\";\"Petersburg\";\"main\"\n\"5005450\";\"Peterburg\";\"other\"\n\"5005450\";\"Петербург\";\"other\"\n\"5005484\";\"Petoskey\";\"main\"\n\"5005642\";\"Pigeon\";\"main\"\n\"5005703\";\"Pinckney\";\"main\"\n\"5005706\";\"Pinconning\";\"main\"\n\"5005954\";\"Plainwell\";\"main\"\n\"5006011\";\"Pleasant Ridge\";\"main\"\n\"5006059\";\"Plymouth\";\"main\"\n\"5006059\";\"Plimut\";\"other\"\n\"5006059\";\"Плимут\";\"other\"\n\"5006166\";\"Pontiac\";\"main\"\n\"5006233\";\"Port Huron\";\"main\"\n\"5006250\";\"Portage\";\"main\"\n\"5006314\";\"Portland\";\"main\"\n\"5006314\";\"Portlend\";\"other\"\n\"5006314\";\"Портленд\";\"other\"\n\"5006376\";\"Potterville\";\"main\"\n\"5006566\";\"Prudenville\";\"main\"\n\"5006647\";\"Quincy\";\"main\"\n\"5006647\";\"Kuinsi\";\"other\"\n\"5006647\";\"Куинси\";\"other\"\n\"5006658\";\"Quinnesec\";\"main\"\n\"5006818\";\"Ravenna\";\"main\"\n\"5006848\";\"Reading\";\"main\"\n\"5006848\";\"Reding\";\"other\"\n\"5006848\";\"Рединг\";\"other\"\n\"5006917\";\"Redford\";\"main\"\n\"5006917\";\"Редфорд\";\"other\"\n\"5006946\";\"Reed City\";\"main\"\n\"5006969\";\"Reese\";\"main\"\n\"5007141\";\"Richmond\";\"main\"\n\"5007141\";\"Ричмонд\";\"other\"\n\"5007247\";\"River Rouge\";\"main\"\n\"5007323\";\"Riverview\";\"main\"\n\"5007400\";\"Rochester\";\"main\"\n\"5007400\";\"Рочестер\";\"other\"\n\"5007402\";\"Rochester Hills\";\"main\"\n\"5007436\";\"Rockford\";\"main\"\n\"5007451\";\"Rockwood\";\"main\"\n\"5007477\";\"Rogers City\";\"main\"\n\"5007525\";\"Romeo\";\"main\"\n\"5007531\";\"Romulus\";\"main\"\n\"5007531\";\"Romul\";\"other\"\n\"5007531\";\"Ромул\";\"other\"\n\"5007548\";\"Roosevelt Park\";\"main\"\n\"5007585\";\"Roscommon\";\"main\"\n\"5007655\";\"Roseville\";\"main\"\n\"5007655\";\"Rozvell\";\"other\"\n\"5007655\";\"Розвелл\";\"other\"\n\"5007804\";\"Royal Oak\";\"main\"\n\"5007989\";\"Saginaw\";\"main\"\n\"5008102\";\"Saint Charles\";\"main\"\n\"5008102\";\"Sent-Charl'z\";\"other\"\n\"5008102\";\"Сент-Чарльз\";\"other\"\n\"5008207\";\"Saint Helen\";\"main\"\n\"5008224\";\"Saint Ignace\";\"main\"\n\"5008278\";\"Saint Johns\";\"main\"\n\"5008327\";\"Saint Joseph\";\"main\"\n\"5008327\";\"Sent-Dzhozef\";\"other\"\n\"5008327\";\"Сент-Джозеф\";\"other\"\n\"5008414\";\"Saint Louis\";\"main\"\n\"5008414\";\"Sent-Luis\";\"other\"\n\"5008414\";\"Сент-Луис\";\"other\"\n\"5008768\";\"Saline\";\"main\"\n\"5008920\";\"Sandusky\";\"main\"\n\"5008971\";\"Saranac\";\"main\"\n\"5008991\";\"Saugatuck\";\"main\"\n\"5009004\";\"Sault Sainte Marie\";\"main\"\n\"5009185\";\"Schoolcraft\";\"main\"\n\"5009277\";\"Scottville\";\"main\"\n\"5009317\";\"Sebewaing\";\"main\"\n\"5009586\";\"Shelby\";\"main\"\n\"5009587\";\"Shelby\";\"main\"\n\"5009625\";\"Shepherd\";\"main\"\n\"5009717\";\"Shields\";\"main\"\n\"5010077\";\"Skidway Lake\";\"main\"\n\"5010512\";\"South Gull Lake\";\"main\"\n\"5010517\";\"South Haven\";\"main\"\n\"5010548\";\"South Lyon\";\"main\"\n\"5010569\";\"South Monroe\";\"main\"\n\"5010595\";\"South Rockwood\";\"main\"\n\"5010636\";\"Southfield\";\"main\"\n\"5010646\";\"Southgate\";\"main\"\n\"5010690\";\"Sparta\";\"main\"\n\"5010780\";\"Spring Arbor\";\"main\"\n\"5010856\";\"Spring Lake\";\"main\"\n\"5010917\";\"Springfield\";\"main\"\n\"5010977\";\"Saint Clair\";\"main\"\n\"5010978\";\"Saint Clair Shores\";\"main\"\n\"5011005\";\"Stambaugh\";\"main\"\n\"5011020\";\"Standish\";\"main\"\n\"5011042\";\"Stanton\";\"main\"\n\"5011042\";\"Stehnton\";\"other\"\n\"5011042\";\"Стэнтон\";\"other\"\n\"5011148\";\"Sterling Heights\";\"main\"\n\"5011183\";\"Stevensville\";\"main\"\n\"5011227\";\"Stockbridge\";\"main\"\n\"5011316\";\"Stony Point\";\"main\"\n\"5011323\";\"Stony Point\";\"main\"\n\"5011428\";\"Sturgis\";\"main\"\n\"5011701\";\"Swartz Creek\";\"main\"\n\"5011761\";\"Sylvan Lake\";\"main\"\n\"5011900\";\"Tawas City\";\"main\"\n\"5011908\";\"Taylor\";\"main\"\n\"5011908\";\"Tejlor\";\"other\"\n\"5011908\";\"Тейлор\";\"other\"\n\"5011973\";\"Tecumseh\";\"main\"\n\"5011989\";\"Temperance\";\"main\"\n\"5012194\";\"Three Rivers\";\"main\"\n\"5012197\";\"Three Oaks\";\"main\"\n\"5012495\";\"Traverse City\";\"main\"\n\"5012521\";\"Trenton\";\"main\"\n\"5012521\";\"Трентон\";\"other\"\n\"5012635\";\"Trowbridge Park\";\"main\"\n\"5012639\";\"Troy\";\"main\"\n\"5012639\";\"Troja\";\"other\"\n\"5012639\";\"Троя\";\"other\"\n\"5012800\";\"Twin Lake\";\"main\"\n\"5012928\";\"Union City\";\"main\"\n\"5012928\";\"Junion-Siti\";\"other\"\n\"5012928\";\"Юнион-Сити\";\"other\"\n\"5013061\";\"Utica\";\"main\"\n\"5013156\";\"Vandercook Lake\";\"main\"\n\"5013174\";\"Vassar\";\"main\"\n\"5013252\";\"Vicksburg\";\"main\"\n\"5013285\";\"Lake Isabella\";\"main\"\n\"5013894\";\"Wakefield\";\"main\"\n\"5013924\";\"Walker\";\"main\"\n\"5013961\";\"Walled Lake\";\"main\"\n\"5014051\";\"Warren\";\"main\"\n\"5014051\";\"Uorren\";\"other\"\n\"5014051\";\"Уоррен\";\"other\"\n\"5014130\";\"Waterford\";\"main\"\n\"5014130\";\"Uoterford\";\"other\"\n\"5014130\";\"Уотерфорд\";\"other\"\n\"5014165\";\"Watervliet\";\"main\"\n\"5014208\";\"Waverly\";\"main\"\n\"5014219\";\"Wayland\";\"main\"\n\"5014224\";\"Wayne\";\"main\"\n\"5014278\";\"Webberville\";\"main\"\n\"5014413\";\"West Branch\";\"main\"\n\"5014567\";\"West Ishpeming\";\"main\"\n\"5014645\";\"West Monroe\";\"main\"\n\"5014681\";\"Westland\";\"main\"\n\"5014706\";\"Westwood\";\"main\"\n\"5014811\";\"White Cloud\";\"main\"\n\"5014852\";\"White Pigeon\";\"main\"\n\"5014913\";\"Whitehall\";\"main\"\n\"5014946\";\"Whitmore Lake\";\"main\"\n\"5015133\";\"Williamston\";\"main\"\n\"5015351\";\"Wixom\";\"main\"\n\"5015397\";\"Wolf Lake\";\"main\"\n\"5015416\";\"Wolverine Lake\";\"main\"\n\"5015456\";\"Woodhaven\";\"main\"\n\"5015464\";\"Woodland Beach\";\"main\"\n\"5015599\";\"Wyandotte\";\"main\"\n\"5015618\";\"Wyoming\";\"main\"\n\"5015627\";\"Yale\";\"main\"\n\"5015688\";\"Ypsilanti\";\"main\"\n\"5015688\";\"Ipsilanti\";\"other\"\n\"5015688\";\"Ипсиланти\";\"other\"\n\"5015701\";\"Zeeland\";\"main\"\n\"5015723\";\"Zilwaukee\";\"main\"\n\"5015844\";\"Ada\";\"main\"\n\"5015882\";\"Adrian\";\"main\"\n\"5015882\";\"Адриан\";\"other\"\n\"5015924\";\"Afton\";\"main\"\n\"5015978\";\"Aitkin\";\"main\"\n\"5016002\";\"Albany\";\"main\"\n\"5016002\";\"Olbani\";\"other\"\n\"5016002\";\"Олбани\";\"other\"\n\"5016024\";\"Albert Lea\";\"main\"\n\"5016051\";\"Albertville\";\"main\"\n\"5016108\";\"Alexandria\";\"main\"\n\"5016108\";\"Aleksandrija\";\"other\"\n\"5016108\";\"Александрия\";\"other\"\n\"5016374\";\"Andover\";\"main\"\n\"5016450\";\"Anoka\";\"main\"\n\"5016490\";\"Annandale\";\"main\"\n\"5016494\";\"Apple Valley\";\"main\"\n\"5016496\";\"Appleton\";\"main\"\n\"5016553\";\"Arden Hills\";\"main\"\n\"5016580\";\"Arlington\";\"main\"\n\"5016580\";\"Арлингтон\";\"other\"\n\"5016617\";\"Arnold\";\"main\"\n\"5016617\";\"Arnol'd\";\"other\"\n\"5016617\";\"Арнольд\";\"other\"\n\"5016813\";\"Atwater\";\"main\"\n\"5016877\";\"Aurora\";\"main\"\n\"5016877\";\"Avrora\";\"other\"\n\"5016877\";\"Аврора\";\"other\"\n\"5016884\";\"Austin\";\"main\"\n\"5016884\";\"Ostin\";\"other\"\n\"5016884\";\"Остин\";\"other\"\n\"5016917\";\"Avon\";\"main\"\n\"5016937\";\"Babbitt\";\"main\"\n\"5016990\";\"Bagley\";\"main\"\n\"5017185\";\"Barnesville\";\"main\"\n\"5017385\";\"Baudette\";\"main\"\n\"5017396\";\"Baxter\";\"main\"\n\"5017416\";\"Bayport\";\"main\"\n\"5017660\";\"Becker\";\"main\"\n\"5017761\";\"Belle Plaine\";\"main\"\n\"5017822\";\"Bemidji\";\"main\"\n\"5017880\";\"Benson\";\"main\"\n\"5018285\";\"Big Lake\";\"main\"\n\"5018508\";\"Birchwood\";\"main\"\n\"5018516\";\"Bird Island\";\"main\"\n\"5018651\";\"Blaine\";\"main\"\n\"5018727\";\"Blooming Prairie\";\"main\"\n\"5018739\";\"Bloomington\";\"main\"\n\"5018751\";\"Blue Earth\";\"main\"\n\"5019105\";\"Braham\";\"main\"\n\"5019116\";\"Brainerd\";\"main\"\n\"5019124\";\"Branch\";\"main\"\n\"5019168\";\"Breckenridge\";\"main\"\n\"5019188\";\"Breezy Point\";\"main\"\n\"5019330\";\"Brooklyn Center\";\"main\"\n\"5019335\";\"Brooklyn Park\";\"main\"\n\"5019588\";\"Buffalo\";\"main\"\n\"5019588\";\"Буффало\";\"other\"\n\"5019767\";\"Burnsville\";\"main\"\n\"5019890\";\"Byron\";\"main\"\n\"5019936\";\"Caledonia\";\"main\"\n\"5019936\";\"Kaledonija\";\"other\"\n\"5019936\";\"Каледония\";\"other\"\n\"5020068\";\"Cambridge\";\"main\"\n\"5020068\";\"Kembridzh\";\"other\"\n\"5020068\";\"Кембридж\";\"other\"\n\"5020238\";\"Canby\";\"main\"\n\"5020281\";\"Cannon Falls\";\"main\"\n\"5020496\";\"Carver\";\"main\"\n\"5020751\";\"Centerville\";\"main\"\n\"5020859\";\"Champlin\";\"main\"\n\"5020881\";\"Chanhassen\";\"main\"\n\"5020938\";\"Chaska\";\"main\"\n\"5020946\";\"Chatfield\";\"main\"\n\"5021063\";\"Chisago City\";\"main\"\n\"5021088\";\"Chisholm\";\"main\"\n\"5021323\";\"Circle Pines\";\"main\"\n\"5021351\";\"Clara City\";\"main\"\n\"5021527\";\"Clearwater\";\"main\"\n\"5021632\";\"Cloquet\";\"main\"\n\"5021723\";\"Cohasset\";\"main\"\n\"5021726\";\"Cokato\";\"main\"\n\"5021769\";\"Coleraine\";\"main\"\n\"5021784\";\"Collegeville\";\"main\"\n\"5021788\";\"Cold Spring\";\"main\"\n\"5021807\";\"Cologne\";\"main\"\n\"5021828\";\"Columbia Heights\";\"main\"\n\"5022025\";\"Coon Rapids\";\"main\"\n\"5022050\";\"Corcoran\";\"main\"\n\"5022050\";\"Korkoran\";\"other\"\n\"5022050\";\"Коркоран\";\"other\"\n\"5022134\";\"Cottage Grove\";\"main\"\n\"5022148\";\"Cottonwood\";\"main\"\n\"5023465\";\"Crookston\";\"main\"\n\"5023472\";\"Crosby\";\"main\"\n\"5023482\";\"Cross Lake\";\"main\"\n\"5023571\";\"Crystal\";\"main\"\n\"5023890\";\"Dassel\";\"main\"\n\"5023932\";\"Dawson\";\"main\"\n\"5023970\";\"Dayton\";\"main\"\n\"5023970\";\"Dejton\";\"other\"\n\"5023970\";\"Дейтон\";\"other\"\n\"5024044\";\"Deephaven\";\"main\"\n\"5024138\";\"Delano\";\"main\"\n\"5024138\";\"Делано\";\"other\"\n\"5024181\";\"Dellwood\";\"main\"\n\"5024237\";\"Detroit Lakes\";\"main\"\n\"5024324\";\"Dilworth\";\"main\"\n\"5024423\";\"Dodge Center\";\"main\"\n\"5024719\";\"Duluth\";\"main\"\n\"5024719\";\"Dulut\";\"other\"\n\"5024719\";\"Дулут\";\"other\"\n\"5024825\";\"Eagan\";\"main\"\n\"5024846\";\"Eagle Lake\";\"main\"\n\"5024937\";\"East Bethel\";\"main\"\n\"5024996\";\"East Grand Forks\";\"main\"\n\"5025001\";\"East Gull Lake\";\"main\"\n\"5025219\";\"Eden Prairie\";\"main\"\n\"5025264\";\"Edina\";\"main\"\n\"5025381\";\"Elbow Lake\";\"main\"\n\"5025471\";\"Elk River\";\"main\"\n\"5025627\";\"Ely\";\"main\"\n\"5025971\";\"Eveleth\";\"main\"\n\"5026042\";\"Excelsior\";\"main\"\n\"5026059\";\"Eyota\";\"main\"\n\"5026094\";\"Fairfax\";\"main\"\n\"5026114\";\"Fairmont\";\"main\"\n\"5026251\";\"Falcon Heights\";\"main\"\n\"5026291\";\"Faribault\";\"main\"\n\"5026321\";\"Farmington\";\"main\"\n\"5026321\";\"Фармингтон\";\"other\"\n\"5026416\";\"Fergus Falls\";\"main\"\n\"5027025\";\"Foley\";\"main\"\n\"5027117\";\"Forest Lake\";\"main\"\n\"5027191\";\"Fosston\";\"main\"\n\"5027366\";\"Frazee\";\"main\"\n\"5027482\";\"Fridley\";\"main\"\n\"5027555\";\"Fulda\";\"main\"\n\"5027765\";\"Gaylord\";\"main\"\n\"5027943\";\"Gilbert\";\"main\"\n\"5027943\";\"Гилберт\";\"other\"\n\"5028042\";\"Glencoe\";\"main\"\n\"5028087\";\"Glenwood\";\"main\"\n\"5028126\";\"Glyndon\";\"main\"\n\"5028163\";\"Golden Valley\";\"main\"\n\"5028259\";\"Goodview\";\"main\"\n\"5028500\";\"Grand Marais\";\"main\"\n\"5028537\";\"Grand Rapids\";\"main\"\n\"5028537\";\"Grand-Rapids\";\"other\"\n\"5028537\";\"Гранд-Рапидс\";\"other\"\n\"5028572\";\"Granite Falls\";\"main\"\n\"5028612\";\"Grant\";\"main\"\n\"5028795\";\"Greenfield\";\"main\"\n\"5028795\";\"Grinfild\";\"other\"\n\"5028795\";\"Гринфилд\";\"other\"\n\"5029154\";\"Hallock\";\"main\"\n\"5029181\";\"Ham Lake\";\"main\"\n\"5029276\";\"Hanover\";\"main\"\n\"5029374\";\"Harmony\";\"main\"\n\"5029405\";\"Harris\";\"main\"\n\"5029500\";\"Hastings\";\"main\"\n\"5029500\";\"Khejstings\";\"other\"\n\"5029500\";\"Хейстингс\";\"other\"\n\"5029570\";\"Hawley\";\"main\"\n\"5029658\";\"Hayfield\";\"main\"\n\"5029756\";\"Hector\";\"main\"\n\"5029952\";\"Hermantown\";\"main\"\n\"5030005\";\"Hibbing\";\"main\"\n\"5030242\";\"Hinckley\";\"main\"\n\"5030670\";\"Hopkins\";\"main\"\n\"5030802\";\"Houston\";\"main\"\n\"5030802\";\"Kh'juston\";\"other\"\n\"5030802\";\"Хьюстон\";\"other\"\n\"5030832\";\"Howard Lake\";\"main\"\n\"5030856\";\"Hoyt Lakes\";\"main\"\n\"5030884\";\"Hugo\";\"main\"\n\"5030977\";\"Hutchinson\";\"main\"\n\"5030977\";\"Khatchinson\";\"other\"\n\"5030977\";\"Хатчинсон\";\"other\"\n\"5031190\";\"Independence\";\"main\"\n\"5031404\";\"International Falls\";\"main\"\n\"5031412\";\"Inver Grove Heights\";\"main\"\n\"5031489\";\"Isanti\";\"main\"\n\"5031678\";\"Jackson\";\"main\"\n\"5031678\";\"Dzhekson\";\"other\"\n\"5031678\";\"Джексон\";\"other\"\n\"5031749\";\"Janesville\";\"main\"\n\"5032106\";\"Jordan\";\"main\"\n\"5032920\";\"Kasson\";\"main\"\n\"5032963\";\"Keewatin\";\"main\"\n\"5033090\";\"Kenyon\";\"main\"\n\"5033580\";\"La Crescent\";\"main\"\n\"5033727\";\"Lake City\";\"main\"\n\"5033740\";\"Lake Crystal\";\"main\"\n\"5033762\";\"Lake Elmo\";\"main\"\n\"5033783\";\"Zimmerman\";\"main\"\n\"5033910\";\"Lake Saint Croix Beach\";\"main\"\n\"5033918\";\"Lake Shore\";\"main\"\n\"5033962\";\"Lakefield\";\"main\"\n\"5033970\";\"Lakeland\";\"main\"\n\"5034059\";\"Lakeville\";\"main\"\n\"5034239\";\"Lauderdale\";\"main\"\n\"5034299\";\"Le Center\";\"main\"\n\"5034325\";\"Le Sueur\";\"main\"\n\"5034516\";\"Lester Prairie\";\"main\"\n\"5034545\";\"Lewiston\";\"main\"\n\"5034545\";\"L'juiston\";\"other\"\n\"5034545\";\"Льюистон\";\"other\"\n\"5034562\";\"Lexington\";\"main\"\n\"5034746\";\"Lindstrom\";\"main\"\n\"5034767\";\"Lino Lakes\";\"main\"\n\"5034813\";\"Litchfield\";\"main\"\n\"5034905\";\"Little Canada\";\"main\"\n\"5034970\";\"Little Falls\";\"main\"\n\"5035199\";\"Little Rock\";\"main\"\n\"5035522\";\"Long Lake\";\"main\"\n\"5035635\";\"Long Prairie\";\"main\"\n\"5035679\";\"Lonsdale\";\"main\"\n\"5036062\";\"Luverne\";\"main\"\n\"5036191\";\"Madelia\";\"main\"\n\"5036210\";\"Madison\";\"main\"\n\"5036210\";\"Мадисон\";\"other\"\n\"5036278\";\"Mahnomen\";\"main\"\n\"5036295\";\"Mahtomedi\";\"main\"\n\"5036420\";\"Mankato\";\"main\"\n\"5036461\";\"Mantorville\";\"main\"\n\"5036493\";\"Maple Grove\";\"main\"\n\"5036534\";\"Maple Lake\";\"main\"\n\"5036557\";\"Maple Plain\";\"main\"\n\"5036571\";\"Mapleton\";\"main\"\n\"5036588\";\"Maplewood\";\"main\"\n\"5036727\";\"Marshall\";\"main\"\n\"5036727\";\"Маршалл\";\"other\"\n\"5037164\";\"Medford\";\"main\"\n\"5037164\";\"Медфорд\";\"other\"\n\"5037186\";\"Medina\";\"main\"\n\"5037186\";\"Медина\";\"other\"\n\"5037241\";\"Melrose\";\"main\"\n\"5037241\";\"Melrouz\";\"other\"\n\"5037241\";\"Мелроуз\";\"other\"\n\"5037275\";\"Menahga\";\"main\"\n\"5037280\";\"Mendota Heights\";\"main\"\n\"5037456\";\"Milaca\";\"main\"\n\"5037649\";\"Minneapolis\";\"main\"\n\"5037649\";\"Mineapolis\";\"other\"\n\"5037649\";\"mineaporisu\";\"other\"\n\"5037649\";\"ming ni a bo li si\";\"other\"\n\"5037649\";\"mini'apolisa\";\"other\"\n\"5037649\";\"Минеаполис\";\"other\"\n\"5037649\";\"Миннеаполис\";\"other\"\n\"5037649\";\"מיניאפוליס\";\"other\"\n\"5037649\";\"मिनीआपोलिस\";\"other\"\n\"5037649\";\"ミネアポリス\";\"other\"\n\"5037649\";\"明尼阿波利斯\";\"other\"\n\"5037680\";\"Minneota\";\"main\"\n\"5037784\";\"Minnetonka\";\"main\"\n\"5037790\";\"Minnetonka Mills\";\"main\"\n\"5037793\";\"Minnetrista\";\"main\"\n\"5038018\";\"Montevideo\";\"main\"\n\"5038035\";\"Montgomery\";\"main\"\n\"5038035\";\"Montgomeri\";\"other\"\n\"5038035\";\"Монтгомери\";\"other\"\n\"5038045\";\"Monticello\";\"main\"\n\"5038062\";\"Montrose\";\"main\"\n\"5038108\";\"Moorhead\";\"main\"\n\"5038132\";\"Moose Lake\";\"main\"\n\"5038195\";\"Mora\";\"main\"\n\"5038252\";\"Morris\";\"main\"\n\"5038282\";\"Morristown\";\"main\"\n\"5038348\";\"Mound\";\"main\"\n\"5038373\";\"Mounds View\";\"main\"\n\"5038433\";\"Mountain Iron\";\"main\"\n\"5038438\";\"Mountain Lake\";\"main\"\n\"5039080\";\"New Brighton\";\"main\"\n\"5039094\";\"New Hope\";\"main\"\n\"5039111\";\"New London\";\"main\"\n\"5039111\";\"N'ju-London\";\"other\"\n\"5039111\";\"Нью-Лондон\";\"other\"\n\"5039133\";\"New Prague\";\"main\"\n\"5039144\";\"New Richland\";\"main\"\n\"5039173\";\"New Ulm\";\"main\"\n\"5039192\";\"New York Mills\";\"main\"\n\"5039211\";\"Newport\";\"main\"\n\"5039211\";\"N'juport\";\"other\"\n\"5039211\";\"Ньюпорт\";\"other\"\n\"5039244\";\"Nicollet\";\"main\"\n\"5039332\";\"Nisswa\";\"main\"\n\"5039421\";\"North Branch\";\"main\"\n\"5039537\";\"North Mankato\";\"main\"\n\"5039554\";\"North Oaks\";\"main\"\n\"5039587\";\"North Saint Paul\";\"main\"\n\"5039675\";\"Northfield\";\"main\"\n\"5039796\";\"Norwood\";\"main\"\n\"5039798\";\"Norwood Young America\";\"main\"\n\"5039857\";\"Oak Grove\";\"main\"\n\"5039949\";\"Oak Park Heights\";\"main\"\n\"5039978\";\"Oakdale\";\"main\"\n\"5040007\";\"Oakport\";\"main\"\n\"5040195\";\"Olivia\";\"main\"\n\"5040332\";\"Orono\";\"main\"\n\"5040365\";\"Ortonville\";\"main\"\n\"5040389\";\"Osakis\";\"main\"\n\"5040439\";\"Osseo\";\"main\"\n\"5040477\";\"Otsego\";\"main\"\n\"5040647\";\"Owatonna\";\"main\"\n\"5040822\";\"Park Rapids\";\"main\"\n\"5040846\";\"Parkers Prairie\";\"main\"\n\"5040936\";\"Paynesville\";\"main\"\n\"5041072\";\"Pelican Rapids\";\"main\"\n\"5041188\";\"Perham\";\"main\"\n\"5041405\";\"Pierz\";\"main\"\n\"5041525\";\"Pine City\";\"main\"\n\"5041581\";\"Pine Island\";\"main\"\n\"5041752\";\"Pipestone\";\"main\"\n\"5041791\";\"Plainview\";\"main\"\n\"5041926\";\"Plymouth\";\"main\"\n\"5042330\";\"Preston\";\"main\"\n\"5042360\";\"Princeton\";\"main\"\n\"5042360\";\"Prinston\";\"other\"\n\"5042360\";\"Принстон\";\"other\"\n\"5042373\";\"Prior Lake\";\"main\"\n\"5042412\";\"Proctor\";\"main\"\n\"5042561\";\"Ramsey\";\"main\"\n\"5042726\";\"Red Lake\";\"main\"\n\"5042731\";\"Red Lake Falls\";\"main\"\n\"5042773\";\"Red Wing\";\"main\"\n\"5042790\";\"Redby\";\"main\"\n\"5042832\";\"Redwood Falls\";\"main\"\n\"5042924\";\"Renville\";\"main\"\n\"5042998\";\"Rice\";\"main\"\n\"5043193\";\"Richfield\";\"main\"\n\"5043204\";\"Richmond\";\"main\"\n\"5043204\";\"Ричмонд\";\"other\"\n\"5043439\";\"Robbinsdale\";\"main\"\n\"5043473\";\"Rochester\";\"main\"\n\"5043473\";\"Рочестер\";\"other\"\n\"5043510\";\"Rock Creek\";\"main\"\n\"5043556\";\"Rockford\";\"main\"\n\"5043571\";\"Rockville\";\"main\"\n\"5043571\";\"Rokvill\";\"other\"\n\"5043571\";\"Роквилл\";\"other\"\n\"5043608\";\"Rogers\";\"main\"\n\"5043608\";\"Rodzhers\";\"other\"\n\"5043608\";\"Роджерс\";\"other\"\n\"5043752\";\"Roseau\";\"main\"\n\"5043779\";\"Rosemount\";\"main\"\n\"5043799\";\"Roseville\";\"main\"\n\"5043799\";\"Rozvell\";\"other\"\n\"5043799\";\"Розвелл\";\"other\"\n\"5044005\";\"Rush City\";\"main\"\n\"5044055\";\"Rushford\";\"main\"\n\"5044290\";\"Saint Anthony\";\"main\"\n\"5044315\";\"Saint Augusta\";\"main\"\n\"5044347\";\"Saint Bonifacius\";\"main\"\n\"5044374\";\"Saint Charles\";\"main\"\n\"5044374\";\"Sent-Charl'z\";\"other\"\n\"5044374\";\"Сент-Чарльз\";\"other\"\n\"5044407\";\"Saint Cloud\";\"main\"\n\"5044485\";\"Saint Francis\";\"main\"\n\"5044563\";\"Saint James\";\"main\"\n\"5044563\";\"Sent-Dzhejms\";\"other\"\n\"5044563\";\"Сент-Джеймс\";\"other\"\n\"5044896\";\"Saint Joseph\";\"main\"\n\"5044896\";\"Sent-Dzhozef\";\"other\"\n\"5044896\";\"Сент-Джозеф\";\"other\"\n\"5045021\";\"Saint Louis Park\";\"main\"\n\"5045258\";\"Saint Michael\";\"main\"\n\"5045360\";\"Saint Paul\";\"main\"\n\"5045360\";\"Sanctus Paulus\";\"other\"\n\"5045360\";\"St. Paul\";\"other\"\n\"5045360\";\"seinteupol\";\"other\"\n\"5045360\";\"sentoporu\";\"other\"\n\"5045360\";\"セントポール\";\"other\"\n\"5045360\";\"세인트폴\";\"other\"\n\"5045403\";\"Saint Paul Park\";\"main\"\n\"5045517\";\"Saint Peter\";\"main\"\n\"5045908\";\"Sandstone\";\"main\"\n\"5046001\";\"Sartell\";\"main\"\n\"5046026\";\"Sauk Centre\";\"main\"\n\"5046038\";\"Sauk Rapids\";\"main\"\n\"5046063\";\"Savage\";\"main\"\n\"5046997\";\"Shakopee\";\"main\"\n\"5046997\";\"Shejkope\";\"other\"\n\"5046997\";\"Шейкопе\";\"other\"\n\"5047109\";\"Sherburn\";\"main\"\n\"5047234\";\"Shoreview\";\"main\"\n\"5047236\";\"Shorewood\";\"main\"\n\"5047308\";\"Silver Bay\";\"main\"\n\"5047587\";\"Slayton\";\"main\"\n\"5047603\";\"Sleepy Eye\";\"main\"\n\"5048033\";\"South Saint Paul\";\"main\"\n\"5048161\";\"Spicer\";\"main\"\n\"5048296\";\"Spring Grove\";\"main\"\n\"5048361\";\"Spring Lake Park\";\"main\"\n\"5048371\";\"Spring Park\";\"main\"\n\"5048378\";\"Spring Valley\";\"main\"\n\"5048378\";\"Spring-Vehlli\";\"other\"\n\"5048378\";\"Спринг-Вэлли\";\"other\"\n\"5048394\";\"Springfield\";\"main\"\n\"5048394\";\"Springfild\";\"other\"\n\"5048394\";\"Спрингфилд\";\"other\"\n\"5048496\";\"Stacy\";\"main\"\n\"5048555\";\"Staples\";\"main\"\n\"5048587\";\"Starbuck\";\"main\"\n\"5048796\";\"Stewartville\";\"main\"\n\"5048814\";\"Stillwater\";\"main\"\n\"5049767\";\"Taylors Falls\";\"main\"\n\"5049970\";\"Thief River Falls\";\"main\"\n\"5050214\";\"Tonka Bay\";\"main\"\n\"5050290\";\"Tracy\";\"main\"\n\"5050290\";\"Trejsi\";\"other\"\n\"5050290\";\"Трейси\";\"other\"\n\"5050603\";\"Truman\";\"main\"\n\"5050817\";\"Two Harbors\";\"main\"\n\"5050847\";\"Tyler\";\"main\"\n\"5050847\";\"Tajler\";\"other\"\n\"5050847\";\"Тайлер\";\"other\"\n\"5051197\";\"Vadnais Heights\";\"main\"\n\"5051387\";\"Victoria\";\"main\"\n\"5051387\";\"Viktorija\";\"other\"\n\"5051387\";\"Виктория\";\"other\"\n\"5051468\";\"Virginia\";\"main\"\n\"5051594\";\"Wabasha\";\"main\"\n\"5051640\";\"Waconia\";\"main\"\n\"5051659\";\"Wadena\";\"main\"\n\"5051694\";\"Waite Park\";\"main\"\n\"5051735\";\"Walker\";\"main\"\n\"5051806\";\"Wanamingo\";\"main\"\n\"5051875\";\"Warren\";\"main\"\n\"5051875\";\"Uorren\";\"other\"\n\"5051875\";\"Уоррен\";\"other\"\n\"5051893\";\"Warroad\";\"main\"\n\"5051902\";\"Waseca\";\"main\"\n\"5052016\";\"Watertown\";\"main\"\n\"5052019\";\"Waterville\";\"main\"\n\"5052132\";\"Wayzata\";\"main\"\n\"5052239\";\"Wells\";\"main\"\n\"5052361\";\"West Coon Rapids\";\"main\"\n\"5052467\";\"West Saint Paul\";\"main\"\n\"5052600\";\"Wheaton\";\"main\"\n\"5052600\";\"Uiton\";\"other\"\n\"5052600\";\"Уитон\";\"other\"\n\"5052658\";\"White Bear Lake\";\"main\"\n\"5052916\";\"Willmar\";\"main\"\n\"5053084\";\"Windom\";\"main\"\n\"5053135\";\"Winnebago\";\"main\"\n\"5053156\";\"Winona\";\"main\"\n\"5053156\";\"Vajnona\";\"other\"\n\"5053156\";\"Вайнона\";\"other\"\n\"5053185\";\"Winsted\";\"main\"\n\"5053204\";\"Winthrop\";\"main\"\n\"5053358\";\"Woodbury\";\"main\"\n\"5053460\";\"Worthington\";\"main\"\n\"5053526\";\"Wyoming\";\"main\"\n\"5053526\";\"Vajoming\";\"other\"\n\"5053526\";\"Вайоминг\";\"other\"\n\"5053593\";\"Young America\";\"main\"\n\"5053812\";\"Zumbrota\";\"main\"\n\"5053875\";\"Albany\";\"main\"\n\"5053875\";\"Olbani\";\"other\"\n\"5053875\";\"Олбани\";\"other\"\n\"5054079\";\"Bethany\";\"main\"\n\"5054390\";\"Canton\";\"main\"\n\"5055742\";\"Kahoka\";\"main\"\n\"5055787\";\"Kirksville\";\"main\"\n\"5055816\";\"La Plata\";\"main\"\n\"5056172\";\"Maryville\";\"main\"\n\"5056241\";\"Memphis\";\"main\"\n\"5056241\";\"Memfis\";\"other\"\n\"5056241\";\"Мемфис\";\"other\"\n\"5056280\";\"Milan\";\"main\"\n\"5056381\";\"Mound City\";\"main\"\n\"5057058\";\"Rock Port\";\"main\"\n\"5057401\";\"Stanberry\";\"main\"\n\"5057486\";\"Tarkio\";\"main\"\n\"5057562\";\"Trenton\";\"main\"\n\"5057562\";\"Трентон\";\"other\"\n\"5057655\";\"Unionville\";\"main\"\n\"5058233\";\"Belcourt\";\"main\"\n\"5058534\";\"Cando\";\"main\"\n\"5058552\";\"Carrington\";\"main\"\n\"5058560\";\"Casselton\";\"main\"\n\"5058568\";\"Cavalier\";\"main\"\n\"5058868\";\"Devils Lake\";\"main\"\n\"5059052\";\"Ellendale\";\"main\"\n\"5059103\";\"Enderlin\";\"main\"\n\"5059163\";\"Fargo\";\"main\"\n\"5059163\";\"fago\";\"other\"\n\"5059163\";\"Фарго\";\"other\"\n\"5059163\";\"ファーゴ\";\"other\"\n\"5059419\";\"Grafton\";\"main\"\n\"5059429\";\"Grand Forks\";\"main\"\n\"5059429\";\"Grand-Forks\";\"other\"\n\"5059429\";\"Гранд-Форкс\";\"other\"\n\"5059576\";\"Harvey\";\"main\"\n\"5059576\";\"Kharvi\";\"other\"\n\"5059576\";\"Харви\";\"other\"\n\"5059660\";\"Hillsboro\";\"main\"\n\"5059660\";\"Khillsboro\";\"other\"\n\"5059660\";\"Хиллсборо\";\"other\"\n\"5059734\";\"Horace\";\"main\"\n\"5059836\";\"Jamestown\";\"main\"\n\"5060071\";\"Langdon\";\"main\"\n\"5060080\";\"Larimore\";\"main\"\n\"5060162\";\"Lisbon\";\"main\"\n\"5060332\";\"Mayville\";\"main\"\n\"5060614\";\"New Rockford\";\"main\"\n\"5060756\";\"Oakes\";\"main\"\n\"5060860\";\"Park River\";\"main\"\n\"5061159\";\"Rolla\";\"main\"\n\"5061221\";\"Rugby\";\"main\"\n\"5062292\";\"Valley City\";\"main\"\n\"5062355\";\"Wahpeton\";\"main\"\n\"5062458\";\"West Fargo\";\"main\"\n\"5062552\";\"Wishek\";\"main\"\n\"5062769\";\"Ainsworth\";\"main\"\n\"5062806\";\"Albion\";\"main\"\n\"5062898\";\"Alma\";\"main\"\n\"5063172\";\"Arlington\";\"main\"\n\"5063172\";\"Арлингтон\";\"other\"\n\"5063229\";\"Ashland\";\"main\"\n\"5063286\";\"Atkinson\";\"main\"\n\"5063318\";\"Auburn\";\"main\"\n\"5063342\";\"Aurora\";\"main\"\n\"5063342\";\"Avrora\";\"other\"\n\"5063342\";\"Аврора\";\"other\"\n\"5063564\";\"Battle Creek\";\"main\"\n\"5063646\";\"Beatrice\";\"main\"\n\"5063805\";\"Bellevue\";\"main\"\n\"5064236\";\"Blair\";\"main\"\n\"5064284\";\"Bloomfield\";\"main\"\n\"5064638\";\"Broken Bow\";\"main\"\n\"5064937\";\"Burwell\";\"main\"\n\"5065429\";\"Central City\";\"main\"\n\"5065495\";\"Chalco\";\"main\"\n\"5066001\";\"Columbus\";\"main\"\n\"5066001\";\"Kolumbus\";\"other\"\n\"5066001\";\"Колумбус\";\"other\"\n\"5066355\";\"Cozad\";\"main\"\n\"5066394\";\"Creighton\";\"main\"\n\"5066435\";\"Crete\";\"main\"\n\"5066637\";\"Dakota City\";\"main\"\n\"5066700\";\"David City\";\"main\"\n\"5067285\";\"Eagle\";\"main\"\n\"5067545\";\"Elkhorn\";\"main\"\n\"5067896\";\"Fairbury\";\"main\"\n\"5068052\";\"Falls City\";\"main\"\n\"5068725\";\"Fremont\";\"main\"\n\"5068725\";\"Frimont\";\"other\"\n\"5068725\";\"Фримонт\";\"other\"\n\"5068780\";\"Friend\";\"main\"\n\"5068818\";\"Fullerton\";\"main\"\n\"5068818\";\"Фуллертон\";\"other\"\n\"5068953\";\"Geneva\";\"main\"\n\"5068953\";\"Zheneva\";\"other\"\n\"5068953\";\"Женева\";\"other\"\n\"5069015\";\"Gibbon\";\"main\"\n\"5069297\";\"Grand Island\";\"main\"\n\"5069480\";\"Gretna\";\"main\"\n\"5069753\";\"Hartington\";\"main\"\n\"5069802\";\"Hastings\";\"main\"\n\"5069802\";\"Khejstings\";\"other\"\n\"5069802\";\"Хейстингс\";\"other\"\n\"5069928\";\"Hebron\";\"main\"\n\"5069971\";\"Henderson\";\"main\"\n\"5069971\";\"Khenderson\";\"other\"\n\"5069971\";\"Хендерсон\";\"other\"\n\"5070048\";\"Hickman\";\"main\"\n\"5070216\";\"Holdrege\";\"main\"\n\"5071348\";\"Kearney\";\"main\"\n\"5071348\";\"Kerni\";\"other\"\n\"5071348\";\"Керни\";\"other\"\n\"5071665\";\"La Vista\";\"main\"\n\"5071934\";\"Lexington\";\"main\"\n\"5071934\";\"Leksington\";\"other\"\n\"5071934\";\"Лексингтон\";\"other\"\n\"5072006\";\"Lincoln\";\"main\"\n\"5072006\";\"Linkol'n\";\"other\"\n\"5072006\";\"Linkolnas\";\"other\"\n\"5072006\";\"rinkan\";\"other\"\n\"5072006\";\"Линкольн\";\"other\"\n\"5072006\";\"リンカーン\";\"other\"\n\"5072362\";\"Louisville\";\"main\"\n\"5072362\";\"Luisvil\";\"other\"\n\"5072362\";\"Луисвил\";\"other\"\n\"5072528\";\"Macy\";\"main\"\n\"5072532\";\"Madison\";\"main\"\n\"5072532\";\"Мадисон\";\"other\"\n\"5073125\";\"Milford\";\"main\"\n\"5073125\";\"Милфорд\";\"other\"\n\"5073225\";\"Minden\";\"main\"\n\"5073661\";\"Nebraska City\";\"main\"\n\"5073735\";\"Neligh\";\"main\"\n\"5073965\";\"Norfolk\";\"main\"\n\"5073965\";\"Норфолк\";\"other\"\n\"5074013\";\"North Bend\";\"main\"\n\"5074259\";\"O'Neill\";\"main\"\n\"5074329\";\"Oakland\";\"main\"\n\"5074329\";\"Oklend\";\"other\"\n\"5074329\";\"Окленд\";\"other\"\n\"5074472\";\"Omaha\";\"main\"\n\"5074472\";\"Omakha\";\"other\"\n\"5074472\";\"ao ma ha\";\"other\"\n\"5074472\";\"omaha\";\"other\"\n\"5074472\";\"Омаха\";\"other\"\n\"5074472\";\"オマハ\";\"other\"\n\"5074472\";\"奥马哈\";\"other\"\n\"5074567\";\"Ord\";\"main\"\n\"5074792\";\"Papillion\";\"main\"\n\"5074969\";\"Pender\";\"main\"\n\"5075148\";\"Pierce\";\"main\"\n\"5075277\";\"Plainview\";\"main\"\n\"5075348\";\"Plattsmouth\";\"main\"\n\"5075615\";\"Ponca\";\"main\"\n\"5075972\";\"Ralston\";\"main\"\n\"5076020\";\"Ravenna\";\"main\"\n\"5076060\";\"Red Cloud\";\"main\"\n\"5077237\";\"Saint Paul\";\"main\"\n\"5078641\";\"Schuyler\";\"main\"\n\"5078792\";\"Seward\";\"main\"\n\"5078878\";\"Shelton\";\"main\"\n\"5078878\";\"Шелтон\";\"other\"\n\"5079250\";\"South Sioux City\";\"main\"\n\"5079488\";\"Springfield\";\"main\"\n\"5079488\";\"Springfild\";\"other\"\n\"5079488\";\"Спрингфилд\";\"other\"\n\"5079541\";\"Stanton\";\"main\"\n\"5079541\";\"Stehnton\";\"other\"\n\"5079541\";\"Стэнтон\";\"other\"\n\"5079732\";\"Stromsburg\";\"main\"\n\"5079887\";\"Superior\";\"main\"\n\"5079910\";\"Sutton\";\"main\"\n\"5079991\";\"Syracuse\";\"main\"\n\"5080098\";\"Tecumseh\";\"main\"\n\"5080113\";\"Tekamah\";\"main\"\n\"5080288\";\"Tilden\";\"main\"\n\"5080995\";\"Valley\";\"main\"\n\"5081245\";\"Wahoo\";\"main\"\n\"5081262\";\"Wakefield\";\"main\"\n\"5081438\";\"Waverly\";\"main\"\n\"5081454\";\"Wayne\";\"main\"\n\"5081518\";\"Weeping Water\";\"main\"\n\"5081666\";\"West Point\";\"main\"\n\"5081848\";\"Wilber\";\"main\"\n\"5082140\";\"Wisner\";\"main\"\n\"5082201\";\"Wood River\";\"main\"\n\"5082292\";\"Wymore\";\"main\"\n\"5082331\";\"York\";\"main\"\n\"5082331\";\"Jork\";\"other\"\n\"5082331\";\"Йорк\";\"other\"\n\"5082363\";\"Yutan\";\"main\"\n\"5082573\";\"Alexandria\";\"main\"\n\"5082590\";\"Allenstown Elementary School\";\"main\"\n\"5082595\";\"Alstead\";\"main\"\n\"5082602\";\"Alton\";\"main\"\n\"5082636\";\"Amherst\";\"main\"\n\"5082636\";\"Amkherst\";\"other\"\n\"5082636\";\"Амхерст\";\"other\"\n\"5082671\";\"Andover\";\"main\"\n\"5082698\";\"Antrim\";\"main\"\n\"5082756\";\"Ashland\";\"main\"\n\"5082790\";\"Atkinson\";\"main\"\n\"5082811\";\"Auburn\";\"main\"\n\"5083007\";\"Barnstead\";\"main\"\n\"5083023\";\"Barrington\";\"main\"\n\"5083033\";\"Bartlett\";\"main\"\n\"5083033\";\"Бартлетт\";\"other\"\n\"5083221\";\"Bedford\";\"main\"\n\"5083221\";\"Бедфорд\";\"other\"\n\"5083288\";\"Belmont\";\"main\"\n\"5083288\";\"Белмонт\";\"other\"\n\"5083316\";\"Bennington\";\"main\"\n\"5083330\";\"Berlin\";\"main\"\n\"5083374\";\"Bethlehem\";\"main\"\n\"5083374\";\"Vifleem\";\"other\"\n\"5083374\";\"Вифлеем\";\"other\"\n\"5083654\";\"Boscawen\";\"main\"\n\"5083673\";\"Bow Bog\";\"main\"\n\"5083731\";\"Bradford\";\"main\"\n\"5083780\";\"Brentwood\";\"main\"\n\"5083803\";\"Bridgewater\";\"main\"\n\"5083812\";\"Bristol\";\"main\"\n\"5083836\";\"Brookline\";\"main\"\n\"5083836\";\"Bruklin\";\"other\"\n\"5083836\";\"Бруклин\";\"other\"\n\"5084151\";\"Canaan\";\"main\"\n\"5084165\";\"Candia\";\"main\"\n\"5084190\";\"Canterbury\";\"main\"\n\"5084376\";\"Center Harbor\";\"main\"\n\"5084457\";\"Charlestown\";\"main\"\n\"5084518\";\"Chester\";\"main\"\n\"5084518\";\"Честер\";\"other\"\n\"5084524\";\"Chesterfield\";\"main\"\n\"5084536\";\"Chichester\";\"main\"\n\"5084633\";\"Claremont\";\"main\"\n\"5084633\";\"Klermont\";\"other\"\n\"5084633\";\"Клермонт\";\"other\"\n\"5084820\";\"Colebrook\";\"main\"\n\"5084868\";\"Concord\";\"main\"\n\"5084868\";\"Kon'kornt Niou Chamsair\";\"other\"\n\"5084868\";\"Konkord\";\"other\"\n\"5084868\";\"konkodo\";\"other\"\n\"5084868\";\"Κόνκορντ Νιού Χάμσαϊρ\";\"other\"\n\"5084868\";\"Конкорд\";\"other\"\n\"5084868\";\"コンコード\";\"other\"\n\"5084917\";\"Contoocook\";\"main\"\n\"5084939\";\"Conway\";\"main\"\n\"5084939\";\"Konvej\";\"other\"\n\"5084939\";\"Конвей\";\"other\"\n\"5085222\";\"Danbury\";\"main\"\n\"5085244\";\"Danville\";\"main\"\n\"5085351\";\"Deering\";\"main\"\n\"5085369\";\"Deerfield\";\"main\"\n\"5085374\";\"Derry\";\"main\"\n\"5085374\";\"Derri\";\"other\"\n\"5085374\";\"Дерри\";\"other\"\n\"5085382\";\"Derry Village\";\"main\"\n\"5085520\";\"Dover\";\"main\"\n\"5085520\";\"Довер\";\"other\"\n\"5085564\";\"Dublin\";\"main\"\n\"5085564\";\"Дублин\";\"other\"\n\"5085618\";\"Durham\";\"main\"\n\"5085618\";\"Darem\";\"other\"\n\"5085618\";\"Дарем\";\"other\"\n\"5085688\";\"East Concord\";\"main\"\n\"5085719\";\"East Kingston\";\"main\"\n\"5085735\";\"East Merrimack\";\"main\"\n\"5085825\";\"Effingham\";\"main\"\n\"5085900\";\"Enfield\";\"main\"\n\"5085913\";\"Epping\";\"main\"\n\"5085918\";\"Epsom\";\"main\"\n\"5085966\";\"Exeter\";\"main\"\n\"5086024\";\"Farmington\";\"main\"\n\"5086024\";\"Фармингтон\";\"other\"\n\"5086182\";\"Fitzwilliam\";\"main\"\n\"5086344\";\"Franklin\";\"main\"\n\"5086344\";\"Франклин\";\"other\"\n\"5086373\";\"Freedom\";\"main\"\n\"5086383\";\"Fremont\";\"main\"\n\"5086383\";\"Frimont\";\"other\"\n\"5086383\";\"Фримонт\";\"other\"\n\"5086544\";\"Gilford\";\"main\"\n\"5086564\";\"Gilmanton\";\"main\"\n\"5086628\";\"Goffstown\";\"main\"\n\"5086700\";\"Gorham\";\"main\"\n\"5086700\";\"Gorkhehm\";\"other\"\n\"5086700\";\"Горхэм\";\"other\"\n\"5086765\";\"Grafton\";\"main\"\n\"5086792\";\"Grantham\";\"main\"\n\"5086911\";\"Greenfield\";\"main\"\n\"5086911\";\"Grinfild\";\"other\"\n\"5086911\";\"Гринфилд\";\"other\"\n\"5086915\";\"Greenland\";\"main\"\n\"5086935\";\"Greenville\";\"main\"\n\"5086935\";\"Grinvill\";\"other\"\n\"5086935\";\"Гринвилл\";\"other\"\n\"5086978\";\"Groveton\";\"main\"\n\"5087105\";\"Hampstead\";\"main\"\n\"5087110\";\"Hampton\";\"main\"\n\"5087110\";\"Khehmpton\";\"other\"\n\"5087110\";\"Хэмптон\";\"other\"\n\"5087122\";\"Hampton Falls\";\"main\"\n\"5087149\";\"Hancock\";\"main\"\n\"5087168\";\"Hanover\";\"main\"\n\"5087227\";\"Harrisville\";\"main\"\n\"5087270\";\"Haverhill\";\"main\"\n\"5087270\";\"Khaverkhill\";\"other\"\n\"5087270\";\"Хаверхилл\";\"other\"\n\"5087365\";\"Henniker\";\"main\"\n\"5087435\";\"Hill\";\"main\"\n\"5087451\";\"Hillsboro\";\"main\"\n\"5087451\";\"Khillsboro\";\"other\"\n\"5087451\";\"Хиллсборо\";\"other\"\n\"5087494\";\"Hinsdale\";\"main\"\n\"5087552\";\"Holderness\";\"main\"\n\"5087559\";\"Hollis\";\"main\"\n\"5087616\";\"Hooksett\";\"main\"\n\"5087639\";\"Hopkinton\";\"main\"\n\"5087639\";\"Khopkinton\";\"other\"\n\"5087639\";\"Хопкинтон\";\"other\"\n\"5087752\";\"Hudson\";\"main\"\n\"5087752\";\"Gudzon\";\"other\"\n\"5087752\";\"Гудзон\";\"other\"\n\"5088061\";\"Jaffrey\";\"main\"\n\"5088090\";\"Jefferson\";\"main\"\n\"5088090\";\"Dzhefferson\";\"other\"\n\"5088090\";\"Джефферсон\";\"other\"\n\"5088262\";\"Keene\";\"main\"\n\"5088311\";\"Kensington\";\"main\"\n\"5088377\";\"Kingston\";\"main\"\n\"5088377\";\"Кингстон\";\"other\"\n\"5088438\";\"Laconia\";\"main\"\n\"5088529\";\"Lancaster\";\"main\"\n\"5088529\";\"Lankaster\";\"other\"\n\"5088529\";\"Ланкастер\";\"other\"\n\"5088597\";\"Lebanon\";\"main\"\n\"5088619\";\"Lee\";\"main\"\n\"5088638\";\"Lempster\";\"main\"\n\"5088693\";\"Lincoln\";\"main\"\n\"5088693\";\"Linkol'n\";\"other\"\n\"5088693\";\"Линкольн\";\"other\"\n\"5088728\";\"Lisbon\";\"main\"\n\"5088753\";\"Litchfield\";\"main\"\n\"5088856\";\"Littleton\";\"main\"\n\"5088856\";\"Littlton\";\"other\"\n\"5088856\";\"Литтлтон\";\"other\"\n\"5088905\";\"Londonderry\";\"main\"\n\"5088905\";\"Londonderri\";\"other\"\n\"5088905\";\"Лондондерри\";\"other\"\n\"5089020\";\"Loudon\";\"main\"\n\"5089108\";\"Lyme\";\"main\"\n\"5089118\";\"Lyndeborough\";\"main\"\n\"5089140\";\"Madbury\";\"main\"\n\"5089144\";\"Madison\";\"main\"\n\"5089144\";\"Мадисон\";\"other\"\n\"5089178\";\"Manchester\";\"main\"\n\"5089178\";\"manchesuta\";\"other\"\n\"5089178\";\"Манчестер\";\"other\"\n\"5089178\";\"マンチェスター\";\"other\"\n\"5089236\";\"Marlborough\";\"main\"\n\"5089236\";\"Marlboro\";\"other\"\n\"5089236\";\"Марлборо\";\"other\"\n\"5089293\";\"Mason\";\"main\"\n\"5089449\";\"Meredith\";\"main\"\n\"5089478\";\"Merrimack\";\"main\"\n\"5089546\";\"Milan\";\"main\"\n\"5089578\";\"Milford\";\"main\"\n\"5089578\";\"Милфорд\";\"other\"\n\"5089648\";\"Milton\";\"main\"\n\"5089648\";\"Mil'ton\";\"other\"\n\"5089648\";\"Мильтон\";\"other\"\n\"5089746\";\"Mont Vernon\";\"main\"\n\"5089850\";\"Moultonborough\";\"main\"\n\"5090046\";\"Nashua\";\"main\"\n\"5090096\";\"New Boston\";\"main\"\n\"5090100\";\"New Castle\";\"main\"\n\"5090111\";\"New Durham\";\"main\"\n\"5090183\";\"New Ipswich\";\"main\"\n\"5090189\";\"New London\";\"main\"\n\"5090189\";\"N'ju-London\";\"other\"\n\"5090189\";\"Нью-Лондон\";\"other\"\n\"5090204\";\"New Hampton\";\"main\"\n\"5090214\";\"Newbury\";\"main\"\n\"5090229\";\"Newfields\";\"main\"\n\"5090246\";\"Newmarket\";\"main\"\n\"5090256\";\"Newport\";\"main\"\n\"5090256\";\"N'juport\";\"other\"\n\"5090256\";\"Ньюпорт\";\"other\"\n\"5090268\";\"Newton\";\"main\"\n\"5090268\";\"N'juton\";\"other\"\n\"5090268\";\"Ньютон\";\"other\"\n\"5090347\";\"North Conway\";\"main\"\n\"5090383\";\"North Hampton\";\"main\"\n\"5090459\";\"Northfield\";\"main\"\n\"5090464\";\"Northumberland\";\"main\"\n\"5090470\";\"Northwood\";\"main\"\n\"5090496\";\"Nottingham\";\"main\"\n\"5090662\";\"Orford\";\"main\"\n\"5090683\";\"Ossipee\";\"main\"\n\"5090910\";\"Pelham\";\"main\"\n\"5090918\";\"Pembroke\";\"main\"\n\"5091002\";\"Peterborough\";\"main\"\n\"5091110\";\"Pinardville\";\"main\"\n\"5091251\";\"Pittsfield\";\"main\"\n\"5091265\";\"Plainfield\";\"main\"\n\"5091273\";\"Plaistow\";\"main\"\n\"5091310\";\"Plymouth\";\"main\"\n\"5091310\";\"Plimut\";\"other\"\n\"5091310\";\"Плимут\";\"other\"\n\"5091383\";\"Portsmouth\";\"main\"\n\"5091383\";\"Portsmut\";\"other\"\n\"5091383\";\"potsumasu\";\"other\"\n\"5091383\";\"Портсмут\";\"other\"\n\"5091383\";\"ポーツマス\";\"other\"\n\"5091636\";\"Raymond\";\"main\"\n\"5091729\";\"Richmond\";\"main\"\n\"5091744\";\"Rindge\";\"main\"\n\"5091872\";\"Rochester\";\"main\"\n\"5091872\";\"Рочестер\";\"other\"\n\"5091916\";\"Rollinsford\";\"main\"\n\"5091981\";\"Rumney\";\"main\"\n\"5092018\";\"Rye\";\"main\"\n\"5092268\";\"Salem\";\"main\"\n\"5092268\";\"Салем\";\"other\"\n\"5092276\";\"Salisbury\";\"main\"\n\"5092338\";\"Sanbornton\";\"main\"\n\"5092364\";\"Sandown\";\"main\"\n\"5092370\";\"Sandwich\";\"main\"\n\"5092485\";\"Seabrook\";\"main\"\n\"5092813\";\"Somersworth\";\"main\"\n\"5092902\";\"South Hooksett\";\"main\"\n\"5093030\";\"Springfield\";\"main\"\n\"5093030\";\"Springfild\";\"other\"\n\"5093030\";\"Спрингфилд\";\"other\"\n\"5093235\";\"Strafford\";\"main\"\n\"5093242\";\"Stratford\";\"main\"\n\"5093259\";\"Stratham Station\";\"main\"\n\"5093347\";\"Sunapee\";\"main\"\n\"5093360\";\"Suncook\";\"main\"\n\"5093410\";\"Sutton\";\"main\"\n\"5093422\";\"Swanzey\";\"main\"\n\"5093469\";\"Tamworth\";\"main\"\n\"5093508\";\"Temple\";\"main\"\n\"5093630\";\"Thornton\";\"main\"\n\"5093669\";\"Tilton\";\"main\"\n\"5093821\";\"Troy\";\"main\"\n\"5093821\";\"Troja\";\"other\"\n\"5093821\";\"Троя\";\"other\"\n\"5093845\";\"Tuftonboro\";\"main\"\n\"5093977\";\"Unity\";\"main\"\n\"5094191\";\"Wakefield\";\"main\"\n\"5094235\";\"Walpole\";\"main\"\n\"5094235\";\"Uolpol\";\"other\"\n\"5094235\";\"Уолпол\";\"other\"\n\"5094261\";\"Warner\";\"main\"\n\"5094329\";\"Weare\";\"main\"\n\"5094342\";\"Webster\";\"main\"\n\"5094538\";\"West Swanzey\";\"main\"\n\"5094550\";\"Westmoreland\";\"main\"\n\"5094647\";\"Whitefield\";\"main\"\n\"5094791\";\"Wilmot\";\"main\"\n\"5094802\";\"Wilton\";\"main\"\n\"5094812\";\"Winchester\";\"main\"\n\"5094817\";\"Windham\";\"main\"\n\"5094877\";\"Wolfeboro\";\"main\"\n\"5094939\";\"Woodstock\";\"main\"\n\"5094939\";\"Vudstok\";\"other\"\n\"5094939\";\"Вудсток\";\"other\"\n\"5094941\";\"Woodsville\";\"main\"\n\"5095124\";\"Allendale\";\"main\"\n\"5095133\";\"Allentown\";\"main\"\n\"5095133\";\"Allentaun\";\"other\"\n\"5095133\";\"Аллентаун\";\"other\"\n\"5095153\";\"Alpine\";\"main\"\n\"5095171\";\"Alpha\";\"main\"\n\"5095211\";\"Annandale\";\"main\"\n\"5095281\";\"Asbury Park\";\"main\"\n\"5095312\";\"Atlantic Highlands\";\"main\"\n\"5095325\";\"Avenel\";\"main\"\n\"5095335\";\"Avon-by-the-Sea\";\"main\"\n\"5095432\";\"Bay Head\";\"main\"\n\"5095445\";\"Bayonne\";\"main\"\n\"5095500\";\"Beattystown\";\"main\"\n\"5095549\";\"Belleville\";\"main\"\n\"5095558\";\"Belford\";\"main\"\n\"5095561\";\"Belmar\";\"main\"\n\"5095571\";\"Belvidere\";\"main\"\n\"5095571\";\"Bel'vedere\";\"other\"\n\"5095571\";\"Бельведере\";\"other\"\n\"5095611\";\"Bergenfield\";\"main\"\n\"5095617\";\"Berkeley Heights\";\"main\"\n\"5095626\";\"Bernardsville\";\"main\"\n\"5095691\";\"Beverly\";\"main\"\n\"5095779\";\"Bloomfield\";\"main\"\n\"5095786\";\"Bloomingdale\";\"main\"\n\"5095787\";\"Bloomingdale\";\"main\"\n\"5095808\";\"Bogota\";\"main\"\n\"5095826\";\"Boonton\";\"main\"\n\"5095847\";\"Bordentown\";\"main\"\n\"5095860\";\"Bound Brook\";\"main\"\n\"5095881\";\"Bradley Beach\";\"main\"\n\"5095920\";\"Brass Castle\";\"main\"\n\"5095960\";\"Brielle\";\"main\"\n\"5096031\";\"Brownville\";\"main\"\n\"5096057\";\"Budd Lake\";\"main\"\n\"5096075\";\"Burlington\";\"main\"\n\"5096075\";\"Berlington\";\"other\"\n\"5096075\";\"Берлингтон\";\"other\"\n\"5096100\";\"Butler\";\"main\"\n\"5096133\";\"Caldwell\";\"main\"\n\"5096133\";\"Kolduehll\";\"other\"\n\"5096133\";\"Колдуэлл\";\"other\"\n\"5096141\";\"Califon\";\"main\"\n\"5096289\";\"Carlstadt\";\"main\"\n\"5096316\";\"Carteret\";\"main\"\n\"5096370\";\"Cedar Glen West\";\"main\"\n\"5096371\";\"Cedar Grove\";\"main\"\n\"5096495\";\"Chatham\";\"main\"\n\"5096523\";\"Chester\";\"main\"\n\"5096523\";\"Честер\";\"other\"\n\"5096655\";\"Clark\";\"main\"\n\"5096671\";\"Clearbrook Park\";\"main\"\n\"5096686\";\"Cliffside Park\";\"main\"\n\"5096693\";\"Cliffwood Beach\";\"main\"\n\"5096699\";\"Clifton\";\"main\"\n\"5096699\";\"Klifton\";\"other\"\n\"5096699\";\"Клифтон\";\"other\"\n\"5096709\";\"Clinton\";\"main\"\n\"5096709\";\"Klinton\";\"other\"\n\"5096709\";\"Клинтон\";\"other\"\n\"5096742\";\"Closter\";\"main\"\n\"5096798\";\"Colonia\";\"main\"\n\"5096867\";\"Concordia\";\"main\"\n\"5097006\";\"Cranbury\";\"main\"\n\"5097014\";\"Crandon Lakes\";\"main\"\n\"5097017\";\"Cranford\";\"main\"\n\"5097017\";\"Krehnford\";\"other\"\n\"5097017\";\"Крэнфорд\";\"other\"\n\"5097035\";\"Cresskill\";\"main\"\n\"5097152\";\"Dayton\";\"main\"\n\"5097152\";\"Dejton\";\"other\"\n\"5097152\";\"Дейтон\";\"other\"\n\"5097167\";\"Deal\";\"main\"\n\"5097206\";\"Delanco\";\"main\"\n\"5097224\";\"Demarest\";\"main\"\n\"5097315\";\"Dover\";\"main\"\n\"5097315\";\"Довер\";\"other\"\n\"5097349\";\"Dunellen\";\"main\"\n\"5097357\";\"Dumont\";\"main\"\n\"5097402\";\"East Brunswick\";\"main\"\n\"5097419\";\"East Freehold\";\"main\"\n\"5097421\";\"East Hanover\";\"main\"\n\"5097438\";\"East Newark\";\"main\"\n\"5097441\";\"East Orange\";\"main\"\n\"5097459\";\"East Rutherford\";\"main\"\n\"5097482\";\"Eatontown\";\"main\"\n\"5097521\";\"Edgewater Park\";\"main\"\n\"5097529\";\"Edison\";\"main\"\n\"5097529\";\"Ehdison\";\"other\"\n\"5097529\";\"Gmina Edison\";\"other\"\n\"5097529\";\"ai di sheng\";\"other\"\n\"5097529\";\"Эдисон\";\"other\"\n\"5097529\";\"爱迪生\";\"other\"\n\"5097575\";\"Edgewater\";\"main\"\n\"5097598\";\"Elizabeth\";\"main\"\n\"5097598\";\"Ehlizabet\";\"other\"\n\"5097598\";\"Элизабет\";\"other\"\n\"5097598\";\"אליזבת\";\"other\"\n\"5097627\";\"Elmwood Park\";\"main\"\n\"5097649\";\"Emerson\";\"main\"\n\"5097672\";\"Englewood\";\"main\"\n\"5097677\";\"Englewood Cliffs\";\"main\"\n\"5097686\";\"Englishtown\";\"main\"\n\"5097718\";\"Essex Fells\";\"main\"\n\"5097751\";\"Ewing\";\"main\"\n\"5097769\";\"Fair Haven\";\"main\"\n\"5097773\";\"Fair Lawn\";\"main\"\n\"5097778\";\"Fairfield\";\"main\"\n\"5097778\";\"Feurfild\";\"other\"\n\"5097778\";\"Феърфилд\";\"other\"\n\"5097801\";\"Fairview\";\"main\"\n\"5097803\";\"Fairview\";\"main\"\n\"5097830\";\"Fanwood\";\"main\"\n\"5097844\";\"Farmingdale\";\"main\"\n\"5098095\";\"Florham Park\";\"main\"\n\"5098109\";\"Fords\";\"main\"\n\"5098124\";\"Flemington\";\"main\"\n\"5098132\";\"Fort Dix\";\"main\"\n\"5098135\";\"Fort Lee\";\"main\"\n\"5098214\";\"Franklin\";\"main\"\n\"5098214\";\"Франклин\";\"other\"\n\"5098242\";\"Franklin Lakes\";\"main\"\n\"5098278\";\"Freehold\";\"main\"\n\"5098303\";\"Frenchtown\";\"main\"\n\"5098343\";\"Garfield\";\"main\"\n\"5098358\";\"Garwood\";\"main\"\n\"5098418\";\"Gladstone\";\"main\"\n\"5098418\";\"Gladston\";\"other\"\n\"5098418\";\"Гладстон\";\"other\"\n\"5098425\";\"Glen Gardner\";\"main\"\n\"5098430\";\"Glen Ridge\";\"main\"\n\"5098436\";\"Glen Rock\";\"main\"\n\"5098698\";\"Guttenberg\";\"main\"\n\"5098706\";\"Hackensack\";\"main\"\n\"5098706\";\"Khakensak\";\"other\"\n\"5098706\";\"Хакенсак\";\"other\"\n\"5098745\";\"Hackettstown\";\"main\"\n\"5098760\";\"Hamburg\";\"main\"\n\"5098787\";\"Hampton\";\"main\"\n\"5098787\";\"Khehmpton\";\"other\"\n\"5098787\";\"Хэмптон\";\"other\"\n\"5098794\";\"Haledon\";\"main\"\n\"5098842\";\"Harrington Park\";\"main\"\n\"5098863\";\"Harrison\";\"main\"\n\"5098863\";\"Kharrison\";\"other\"\n\"5098863\";\"Харрисон\";\"other\"\n\"5098878\";\"Hasbrouck Heights\";\"main\"\n\"5098904\";\"Haworth\";\"main\"\n\"5098909\";\"Hawthorne\";\"main\"\n\"5098945\";\"Heathcote\";\"main\"\n\"5098958\";\"Helmetta\";\"main\"\n\"5099025\";\"High Bridge\";\"main\"\n\"5099052\";\"Highland Lake\";\"main\"\n\"5099057\";\"Highland Park\";\"main\"\n\"5099057\";\"Khajlend Park\";\"other\"\n\"5099057\";\"Хайленд Парк\";\"other\"\n\"5099060\";\"Highlands\";\"main\"\n\"5099067\";\"Hightstown\";\"main\"\n\"5099087\";\"Hillsdale\";\"main\"\n\"5099093\";\"Hillside\";\"main\"\n\"5099129\";\"Ho-Ho-Kus\";\"main\"\n\"5099133\";\"Hoboken\";\"main\"\n\"5099289\";\"Hopatcong\";\"main\"\n\"5099292\";\"Hopatcong Hills\";\"main\"\n\"5099312\";\"Hopewell\";\"main\"\n\"5099312\";\"Khopuehlla\";\"other\"\n\"5099312\";\"Хопуэлла\";\"other\"\n\"5099724\";\"Irvington\";\"main\"\n\"5099738\";\"Iselin\";\"main\"\n\"5099795\";\"Jamesburg\";\"main\"\n\"5099836\";\"Jersey City\";\"main\"\n\"5099836\";\"Dzhersi-Siti\";\"other\"\n\"5099836\";\"Джерси-Сити\";\"other\"\n\"5099961\";\"Keansburg\";\"main\"\n\"5099967\";\"Kearny\";\"main\"\n\"5099967\";\"Kerni\";\"other\"\n\"5099967\";\"Керни\";\"other\"\n\"5099988\";\"Kendall Park\";\"main\"\n\"5100007\";\"Kenilworth\";\"main\"\n\"5100008\";\"Keyport\";\"main\"\n\"5100050\";\"Kingston\";\"main\"\n\"5100050\";\"Кингстон\";\"other\"\n\"5100062\";\"Kinnelon\";\"main\"\n\"5100190\";\"Lake Mohawk\";\"main\"\n\"5100246\";\"Lake Telemark\";\"main\"\n\"5100269\";\"Lakehurst\";\"main\"\n\"5100280\";\"Lakewood\";\"main\"\n\"5100280\";\"Lejkvud\";\"other\"\n\"5100280\";\"Лейквуд\";\"other\"\n\"5100297\";\"Lambertville\";\"main\"\n\"5100340\";\"Laurence Harbor\";\"main\"\n\"5100356\";\"Lawrenceville\";\"main\"\n\"5100362\";\"Lebanon\";\"main\"\n\"5100381\";\"Leisure Knoll\";\"main\"\n\"5100382\";\"Leisure Village\";\"main\"\n\"5100383\";\"Leisure Village East\";\"main\"\n\"5100394\";\"Leonardo\";\"main\"\n\"5100399\";\"Leonia\";\"main\"\n\"5100477\";\"Lincoln Park\";\"main\"\n\"5100498\";\"Lincroft\";\"main\"\n\"5100506\";\"Linden\";\"main\"\n\"5100506\";\"Линден\";\"other\"\n\"5100540\";\"Little Falls\";\"main\"\n\"5100542\";\"Little Ferry\";\"main\"\n\"5100559\";\"Little Silver\";\"main\"\n\"5100572\";\"Livingston\";\"main\"\n\"5100572\";\"Ливингстон\";\"other\"\n\"5100604\";\"Lodi\";\"main\"\n\"5100604\";\"Лоди\";\"other\"\n\"5100619\";\"Long Branch\";\"main\"\n\"5100640\";\"Long Valley\";\"main\"\n\"5100706\";\"Lyndhurst\";\"main\"\n\"5100748\";\"Madison\";\"main\"\n\"5100748\";\"Мадисон\";\"other\"\n\"5100764\";\"Madison Park\";\"main\"\n\"5100809\";\"Manasquan\";\"main\"\n\"5100830\";\"Manville\";\"main\"\n\"5100854\";\"Maplewood\";\"main\"\n\"5100940\";\"Matawan\";\"main\"\n\"5100972\";\"Maywood\";\"main\"\n\"5101073\";\"Mendham\";\"main\"\n\"5101125\";\"Metuchen\";\"main\"\n\"5101159\";\"Middlesex\";\"main\"\n\"5101178\";\"Midland Park\";\"main\"\n\"5101197\";\"Milford\";\"main\"\n\"5101197\";\"Милфорд\";\"other\"\n\"5101244\";\"Milltown\";\"main\"\n\"5101300\";\"Monmouth Beach\";\"main\"\n\"5101312\";\"Monmouth Junction\";\"main\"\n\"5101334\";\"Montclair\";\"main\"\n\"5101361\";\"Montvale\";\"main\"\n\"5101376\";\"Moonachie\";\"main\"\n\"5101393\";\"Morganville\";\"main\"\n\"5101417\";\"Morris Plains\";\"main\"\n\"5101427\";\"Morristown\";\"main\"\n\"5101459\";\"Mount Arlington\";\"main\"\n\"5101585\";\"Mountain Lakes\";\"main\"\n\"5101601\";\"Mountainside\";\"main\"\n\"5101669\";\"Navesink\";\"main\"\n\"5101687\";\"Neptune City\";\"main\"\n\"5101701\";\"Netcong\";\"main\"\n\"5101717\";\"New Brunswick\";\"main\"\n\"5101717\";\"N'ju-Bransuik\";\"other\"\n\"5101717\";\"Нью-Брансуик\";\"other\"\n\"5101737\";\"New Egypt\";\"main\"\n\"5101766\";\"New Milford\";\"main\"\n\"5101766\";\"Novye Milford\";\"other\"\n\"5101766\";\"Новые Милфорд\";\"other\"\n\"5101775\";\"New Providence\";\"main\"\n\"5101775\";\"N'ju-Providens\";\"other\"\n\"5101775\";\"Нью-Провиденс\";\"other\"\n\"5101798\";\"Newark\";\"main\"\n\"5101798\";\"N'juark\";\"other\"\n\"5101798\";\"Njuark\";\"other\"\n\"5101798\";\"niu hua ke\";\"other\"\n\"5101798\";\"nyuaku\";\"other\"\n\"5101798\";\"Ньюарк\";\"other\"\n\"5101798\";\"Нюарк\";\"other\"\n\"5101798\";\"ნიუარკი\";\"other\"\n\"5101798\";\"ニューアーク\";\"other\"\n\"5101798\";\"紐華克\";\"other\"\n\"5101848\";\"Newton\";\"main\"\n\"5101848\";\"N'juton\";\"other\"\n\"5101848\";\"Ньютон\";\"other\"\n\"5101873\";\"North Arlington\";\"main\"\n\"5101879\";\"North Bergen\";\"main\"\n\"5101901\";\"North Caldwell\";\"main\"\n\"5101922\";\"North Haledon\";\"main\"\n\"5101935\";\"North Middletown\";\"main\"\n\"5101938\";\"North Plainfield\";\"main\"\n\"5101962\";\"Northfield\";\"main\"\n\"5101967\";\"Northvale\";\"main\"\n\"5101978\";\"Norwood\";\"main\"\n\"5102076\";\"Nutley\";\"main\"\n\"5102115\";\"Oakhurst\";\"main\"\n\"5102118\";\"Oakland\";\"main\"\n\"5102118\";\"Oklend\";\"other\"\n\"5102118\";\"Окленд\";\"other\"\n\"5102136\";\"Ocean Grove\";\"main\"\n\"5102147\";\"Oceanport\";\"main\"\n\"5102153\";\"Ogdensburg\";\"main\"\n\"5102162\";\"Old Bridge\";\"main\"\n\"5102190\";\"Old Tappan\";\"main\"\n\"5102208\";\"Oradell\";\"main\"\n\"5102213\";\"Orange\";\"main\"\n\"5102339\";\"Oxford\";\"main\"\n\"5102339\";\"Oksford\";\"other\"\n\"5102339\";\"Оксфорд\";\"other\"\n\"5102369\";\"Palisades Park\";\"main\"\n\"5102378\";\"Palmyra\";\"main\"\n\"5102387\";\"Paramus\";\"main\"\n\"5102387\";\"Парамус\";\"other\"\n\"5102400\";\"Park Ridge\";\"main\"\n\"5102427\";\"Parsippany\";\"main\"\n\"5102427\";\"Parsippani\";\"other\"\n\"5102427\";\"Парсиппани\";\"other\"\n\"5102443\";\"Passaic\";\"main\"\n\"5102466\";\"Paterson\";\"main\"\n\"5102466\";\"Патерсон\";\"other\"\n\"5102515\";\"Peapack\";\"main\"\n\"5102535\";\"Pennington\";\"main\"\n\"5102578\";\"Perth Amboy\";\"main\"\n\"5102615\";\"Phillipsburg\";\"main\"\n\"5102720\";\"Plainfield\";\"main\"\n\"5102729\";\"Plainsboro Center\";\"main\"\n\"5102796\";\"Point Pleasant\";\"main\"\n\"5102798\";\"Point Pleasant Beach\";\"main\"\n\"5102825\";\"Pompton Lakes\";\"main\"\n\"5102853\";\"Port Monmouth\";\"main\"\n\"5102863\";\"Port Reading\";\"main\"\n\"5102922\";\"Princeton\";\"main\"\n\"5102922\";\"Principitonia\";\"other\"\n\"5102922\";\"Prinston\";\"other\"\n\"5102922\";\"pu lin si dun\";\"other\"\n\"5102922\";\"purinsuton\";\"other\"\n\"5102922\";\"Принстон\";\"other\"\n\"5102922\";\"プリンストン\";\"other\"\n\"5102922\";\"普林斯顿\";\"other\"\n\"5102940\";\"Princeton Junction\";\"main\"\n\"5102941\";\"Princeton Meadows\";\"main\"\n\"5102970\";\"Prospect Park\";\"main\"\n\"5102973\";\"Prospect Park\";\"main\"\n\"5103055\";\"Rahway\";\"main\"\n\"5103086\";\"Ramsey\";\"main\"\n\"5103086\";\"Rehmsi\";\"other\"\n\"5103086\";\"Рэмси\";\"other\"\n\"5103095\";\"Ramtown\";\"main\"\n\"5103116\";\"Raritan\";\"main\"\n\"5103159\";\"Red Bank\";\"main\"\n\"5103254\";\"Ridgefield\";\"main\"\n\"5103256\";\"Ridgefield Park\";\"main\"\n\"5103269\";\"Ridgewood\";\"main\"\n\"5103286\";\"Ringwood\";\"main\"\n\"5103301\";\"River Edge\";\"main\"\n\"5103310\";\"River Vale\";\"main\"\n\"5103313\";\"Riverdale\";\"main\"\n\"5103335\";\"Riverton\";\"main\"\n\"5103335\";\"Ривертон\";\"other\"\n\"5103384\";\"Rochelle Park\";\"main\"\n\"5103396\";\"Rockaway\";\"main\"\n\"5103497\";\"Roseland\";\"main\"\n\"5103500\";\"Roselle\";\"main\"\n\"5103503\";\"Roselle Park\";\"main\"\n\"5103523\";\"Rossmoor\";\"main\"\n\"5103564\";\"Rumson\";\"main\"\n\"5103580\";\"Rutherford\";\"main\"\n\"5103635\";\"Saddle River\";\"main\"\n\"5103637\";\"Saddle Brook\";\"main\"\n\"5104404\";\"Sayreville\";\"main\"\n\"5104405\";\"Sayreville Junction\";\"main\"\n\"5104473\";\"Scotch Plains\";\"main\"\n\"5104493\";\"Sea Bright\";\"main\"\n\"5104495\";\"Sea Girt\";\"main\"\n\"5104504\";\"Secaucus\";\"main\"\n\"5104552\";\"Sewaren\";\"main\"\n\"5104576\";\"Shark River Hills\";\"main\"\n\"5104638\";\"Shrewsbury\";\"main\"\n\"5104638\";\"Shrusberi\";\"other\"\n\"5104638\";\"Шрусбери\";\"other\"\n\"5104746\";\"Society Hill\";\"main\"\n\"5104755\";\"Somerset\";\"main\"\n\"5104755\";\"Сомерсет\";\"other\"\n\"5104774\";\"Somerville\";\"main\"\n\"5104784\";\"South Amboy\";\"main\"\n\"5104795\";\"South Belmar\";\"main\"\n\"5104798\";\"South Bound Brook\";\"main\"\n\"5104835\";\"South Old Bridge\";\"main\"\n\"5104836\";\"South Orange\";\"main\"\n\"5104844\";\"South Plainfield\";\"main\"\n\"5104853\";\"South River\";\"main\"\n\"5104907\";\"Spotswood\";\"main\"\n\"5104923\";\"Spring Lake\";\"main\"\n\"5104930\";\"Spring Lake Heights\";\"main\"\n\"5104952\";\"Springfield\";\"main\"\n\"5104952\";\"Springfild\";\"other\"\n\"5104952\";\"Спрингфилд\";\"other\"\n\"5104986\";\"Stanhope\";\"main\"\n\"5105095\";\"Strathmore\";\"main\"\n\"5105127\";\"Summit\";\"main\"\n\"5105164\";\"Sussex\";\"main\"\n\"5105262\";\"Teaneck\";\"main\"\n\"5105300\";\"Tenafly\";\"main\"\n\"5105433\";\"Tinton Falls\";\"main\"\n\"5105455\";\"Totowa\";\"main\"\n\"5105496\";\"Trenton\";\"main\"\n\"5105496\";\"torenton\";\"other\"\n\"5105496\";\"trntwn\";\"other\"\n\"5105496\";\"Трентон\";\"other\"\n\"5105496\";\"טרנטון\";\"other\"\n\"5105496\";\"トレントン\";\"other\"\n\"5105594\";\"Twin Rivers\";\"main\"\n\"5105608\";\"Union\";\"main\"\n\"5105615\";\"Union Beach\";\"main\"\n\"5105634\";\"Union City\";\"main\"\n\"5105634\";\"Junion-Siti\";\"other\"\n\"5105634\";\"Юнион-Сити\";\"other\"\n\"5105733\";\"Upper Saddle River\";\"main\"\n\"5105809\";\"Verona\";\"main\"\n\"5105831\";\"Victory Gardens\";\"main\"\n\"5105867\";\"Vernon Valley\";\"main\"\n\"5105957\";\"Waldwick\";\"main\"\n\"5105974\";\"Wallington\";\"main\"\n\"5106014\";\"Wanaque\";\"main\"\n\"5106021\";\"Wanamassa\";\"main\"\n\"5106057\";\"Washington\";\"main\"\n\"5106057\";\"Vashington\";\"other\"\n\"5106057\";\"Вашингтон\";\"other\"\n\"5106129\";\"Watchung\";\"main\"\n\"5106160\";\"Wayne\";\"main\"\n\"5106184\";\"Weehawken\";\"main\"\n\"5106226\";\"West Belmar\";\"main\"\n\"5106238\";\"West Caldwell\";\"main\"\n\"5106262\";\"West Freehold\";\"main\"\n\"5106275\";\"West Long Branch\";\"main\"\n\"5106279\";\"West Milford\";\"main\"\n\"5106292\";\"West New York\";\"main\"\n\"5106298\";\"West Orange\";\"main\"\n\"5106303\";\"Woodland Park\";\"main\"\n\"5106331\";\"Westfield\";\"main\"\n\"5106350\";\"Westville\";\"main\"\n\"5106351\";\"Westwood\";\"main\"\n\"5106361\";\"Wharton\";\"main\"\n\"5106378\";\"White Horse\";\"main\"\n\"5106379\";\"White Meadow Lake\";\"main\"\n\"5106453\";\"Willingboro\";\"main\"\n\"5106520\";\"Wood-Ridge\";\"main\"\n\"5106529\";\"Woodbridge\";\"main\"\n\"5106548\";\"Woodcliff Lake\";\"main\"\n\"5106615\";\"Wyckoff\";\"main\"\n\"5106645\";\"Yorketown\";\"main\"\n\"5106734\";\"Adams\";\"main\"\n\"5106738\";\"Adams Center\";\"main\"\n\"5106756\";\"Addison\";\"main\"\n\"5106817\";\"Airmont\";\"main\"\n\"5106825\";\"Akron\";\"main\"\n\"5106825\";\"Акрон\";\"other\"\n\"5106834\";\"Albany\";\"main\"\n\"5106834\";\"Olbani\";\"other\"\n\"5106834\";\"Olbeni\";\"other\"\n\"5106834\";\"ao er ba ni\";\"other\"\n\"5106834\";\"ao er ba ni shi\";\"other\"\n\"5106834\";\"olbeoni\";\"other\"\n\"5106834\";\"orubani\";\"other\"\n\"5106834\";\"Олбани\";\"other\"\n\"5106834\";\"Олбени\";\"other\"\n\"5106834\";\"אולבני\";\"other\"\n\"5106834\";\"オールバニ\";\"other\"\n\"5106834\";\"奥尔巴尼\";\"other\"\n\"5106834\";\"奥尔巴尼市\";\"other\"\n\"5106834\";\"올버니\";\"other\"\n\"5106857\";\"Albertson\";\"main\"\n\"5106862\";\"Albion\";\"main\"\n\"5106877\";\"Alden\";\"main\"\n\"5106950\";\"Alexandria Bay\";\"main\"\n\"5106955\";\"Alfred\";\"main\"\n\"5106994\";\"Allegany\";\"main\"\n\"5107075\";\"Altamont\";\"main\"\n\"5107082\";\"Altona\";\"main\"\n\"5107091\";\"Amagansett\";\"main\"\n\"5107115\";\"Amenia\";\"main\"\n\"5107140\";\"Amityville\";\"main\"\n\"5107152\";\"Amsterdam\";\"main\"\n\"5107176\";\"Andover\";\"main\"\n\"5107212\";\"Angola on the Lake\";\"main\"\n\"5107227\";\"Angola\";\"main\"\n\"5107257\";\"Apalachin\";\"main\"\n\"5107273\";\"Aquebogue\";\"main\"\n\"5107290\";\"Arcade\";\"main\"\n\"5107311\";\"Ardsley\";\"main\"\n\"5107337\";\"Arlington\";\"main\"\n\"5107337\";\"Арлингтон\";\"other\"\n\"5107346\";\"Armonk\";\"main\"\n\"5107467\";\"Athens\";\"main\"\n\"5107481\";\"Atlantic Beach\";\"main\"\n\"5107486\";\"Attica\";\"main\"\n\"5107505\";\"Auburn\";\"main\"\n\"5107561\";\"Averill Park\";\"main\"\n\"5107571\";\"Avon\";\"main\"\n\"5107612\";\"Babylon\";\"main\"\n\"5107659\";\"Bainbridge\";\"main\"\n\"5107670\";\"Baiting Hollow\";\"main\"\n\"5107760\";\"Baldwin\";\"main\"\n\"5107760\";\"Bolduin\";\"other\"\n\"5107760\";\"Болдуин\";\"other\"\n\"5107771\";\"Baldwin Harbor\";\"main\"\n\"5107785\";\"Baldwinsville\";\"main\"\n\"5107812\";\"Ballston Spa\";\"main\"\n\"5107821\";\"Balmville\";\"main\"\n\"5107893\";\"Bardonia\";\"main\"\n\"5108000\";\"Barnum Island\";\"main\"\n\"5108093\";\"Batavia\";\"main\"\n\"5108093\";\"Batavija\";\"other\"\n\"5108093\";\"Батавия\";\"other\"\n\"5108110\";\"Bath\";\"main\"\n\"5108155\";\"Bay Park\";\"main\"\n\"5108169\";\"Bay Shore\";\"main\"\n\"5108179\";\"Bay Wood\";\"main\"\n\"5108191\";\"Bayport\";\"main\"\n\"5108202\";\"Bayville\";\"main\"\n\"5108219\";\"Beacon\";\"main\"\n\"5108531\";\"Bedford\";\"main\"\n\"5108531\";\"Бедфорд\";\"other\"\n\"5108692\";\"Bellerose\";\"main\"\n\"5108693\";\"Bellerose Terrace\";\"main\"\n\"5108707\";\"Bellmore\";\"main\"\n\"5108714\";\"Bellport\";\"main\"\n\"5108815\";\"Bensonhurst\";\"main\"\n\"5108815\";\"Bensonkherst\";\"other\"\n\"5108815\";\"Бенсонхерст\";\"other\"\n\"5108842\";\"Bergen\";\"main\"\n\"5108955\";\"Bethpage\";\"main\"\n\"5109053\";\"Big Flats\";\"main\"\n\"5109168\";\"Billington Heights\";\"main\"\n\"5109177\";\"Binghamton\";\"main\"\n\"5109177\";\"bin han dun\";\"other\"\n\"5109177\";\"賓罕頓\";\"other\"\n\"5109410\";\"Black River\";\"main\"\n\"5109477\";\"Blasdell\";\"main\"\n\"5109479\";\"Blauvelt\";\"main\"\n\"5109554\";\"Bloomfield\";\"main\"\n\"5109603\";\"Blue Point\";\"main\"\n\"5109694\";\"Bohemia\";\"main\"\n\"5109702\";\"Bolivar\";\"main\"\n\"5109703\";\"Bolivar\";\"main\"\n\"5109757\";\"Boonville\";\"main\"\n\"5110077\";\"Brentwood\";\"main\"\n\"5110090\";\"Brewerton\";\"main\"\n\"5110092\";\"Brewster\";\"main\"\n\"5110092\";\"Brjuster\";\"other\"\n\"5110092\";\"Брюстер\";\"other\"\n\"5110096\";\"Brewster Hill\";\"main\"\n\"5110108\";\"Briarcliff Manor\";\"main\"\n\"5110130\";\"Bridgehampton\";\"main\"\n\"5110132\";\"Bridgeport\";\"main\"\n\"5110133\";\"Bridgeport\";\"main\"\n\"5110159\";\"Brighton\";\"main\"\n\"5110159\";\"Brajton\";\"other\"\n\"5110159\";\"Брайтон\";\"other\"\n\"5110168\";\"Brightwaters\";\"main\"\n\"5110176\";\"Brinckerhoff\";\"main\"\n\"5110211\";\"Broadalbin\";\"main\"\n\"5110227\";\"Brockport\";\"main\"\n\"5110239\";\"Brocton\";\"main\"\n\"5110269\";\"Bronxville\";\"main\"\n\"5110292\";\"Brookhaven\";\"main\"\n\"5110302\";\"Brooklyn\";\"main\"\n\"5110302\";\"Broklino\";\"other\"\n\"5110302\";\"Brooklyn County\";\"other\"\n\"5110302\";\"Bruklin\";\"other\"\n\"5110302\";\"Bruklinas\";\"other\"\n\"5110302\";\"brwklyn\";\"other\"\n\"5110302\";\"brwqlyn\";\"other\"\n\"5110302\";\"bu lu ke lin qu\";\"other\"\n\"5110302\";\"burukkurin de qu\";\"other\"\n\"5110302\";\"kinsa ka'unti\";\"other\"\n\"5110302\";\"Бруклин\";\"other\"\n\"5110302\";\"Бруклін\";\"other\"\n\"5110302\";\"ברוקלין\";\"other\"\n\"5110302\";\"بروکلین\";\"other\"\n\"5110302\";\"কিংস কাউন্টি\";\"other\"\n\"5110302\";\"ბრუკლინი\";\"other\"\n\"5110302\";\"ブルックリン地区\";\"other\"\n\"5110302\";\"布鲁克林区\";\"other\"\n\"5110358\";\"Brookville\";\"main\"\n\"5110449\";\"Brownville\";\"main\"\n\"5110450\";\"Brownville\";\"main\"\n\"5110506\";\"Buchanan\";\"main\"\n\"5110629\";\"Buffalo\";\"main\"\n\"5110629\";\"Bafalo\";\"other\"\n\"5110629\";\"Bufalo\";\"other\"\n\"5110629\";\"baffaro\";\"other\"\n\"5110629\";\"shui niu cheng\";\"other\"\n\"5110629\";\"Бафало\";\"other\"\n\"5110629\";\"Буффало\";\"other\"\n\"5110629\";\"バッファロー\";\"other\"\n\"5110629\";\"水牛城\";\"other\"\n\"5111056\";\"Cairo\";\"main\"\n\"5111065\";\"Calcium\";\"main\"\n\"5111073\";\"Caledonia\";\"main\"\n\"5111073\";\"Kaledonija\";\"other\"\n\"5111073\";\"Каледония\";\"other\"\n\"5111137\";\"Calverton\";\"main\"\n\"5111144\";\"Cambridge\";\"main\"\n\"5111144\";\"Kembridzh\";\"other\"\n\"5111144\";\"Кембридж\";\"other\"\n\"5111148\";\"Camden\";\"main\"\n\"5111398\";\"Canajoharie\";\"main\"\n\"5111405\";\"Canandaigua\";\"main\"\n\"5111427\";\"Canastota\";\"main\"\n\"5111449\";\"Canisteo\";\"main\"\n\"5111484\";\"Canton\";\"main\"\n\"5111533\";\"Carle Place\";\"main\"\n\"5111576\";\"Carmel\";\"main\"\n\"5111576\";\"Karmel'\";\"other\"\n\"5111576\";\"Кармель\";\"other\"\n\"5111656\";\"Carthage\";\"main\"\n\"5111721\";\"Castile\";\"main\"\n\"5111745\";\"Castleton-on-Hudson\";\"main\"\n\"5111833\";\"Catskill\";\"main\"\n\"5111849\";\"Cattaraugus\";\"main\"\n\"5111874\";\"Cayuga Heights\";\"main\"\n\"5111886\";\"Cazenovia\";\"main\"\n\"5111974\";\"Cedarhurst\";\"main\"\n\"5111990\";\"Celoron\";\"main\"\n\"5112020\";\"Center Moriches\";\"main\"\n\"5112035\";\"Centereach\";\"main\"\n\"5112037\";\"Centerport\";\"main\"\n\"5112038\";\"Centerport\";\"main\"\n\"5112078\";\"Central Islip\";\"main\"\n\"5112160\";\"Central Square\";\"main\"\n\"5112162\";\"Central Valley\";\"main\"\n\"5112215\";\"Champlain\";\"main\"\n\"5112259\";\"Chappaqua\";\"main\"\n\"5112335\";\"Chatham\";\"main\"\n\"5112375\";\"Cheektowaga\";\"main\"\n\"5112470\";\"Chester\";\"main\"\n\"5112470\";\"Честер\";\"other\"\n\"5112493\";\"Chestnut Ridge\";\"main\"\n\"5112559\";\"Chittenango\";\"main\"\n\"5112703\";\"Churchville\";\"main\"\n\"5112771\";\"Clarence Center\";\"main\"\n\"5112771\";\"Clarence\";\"other\"\n\"5112812\";\"Clark Mills\";\"main\"\n\"5112870\";\"Clayton\";\"main\"\n\"5112965\";\"Clifton Springs\";\"main\"\n\"5112972\";\"Clinton\";\"main\"\n\"5112972\";\"Klinton\";\"other\"\n\"5112972\";\"Клинтон\";\"other\"\n\"5112995\";\"Clintondale\";\"main\"\n\"5113095\";\"Cobleskill\";\"main\"\n\"5113142\";\"Cohoes\";\"main\"\n\"5113196\";\"Cold Spring\";\"main\"\n\"5113223\";\"Cold Spring Harbor\";\"main\"\n\"5113348\";\"Colonie\";\"main\"\n\"5113412\";\"Commack\";\"main\"\n\"5113481\";\"Coney Island\";\"main\"\n\"5113500\";\"Congers\";\"main\"\n\"5113565\";\"Constantia\";\"main\"\n\"5113664\";\"Cooperstown\";\"main\"\n\"5113683\";\"Copiague\";\"main\"\n\"5113694\";\"Coram\";\"main\"\n\"5113723\";\"Corinth\";\"main\"\n\"5113760\";\"Corning\";\"main\"\n\"5113775\";\"Cornwall-on-Hudson\";\"main\"\n\"5113790\";\"Cortland\";\"main\"\n\"5113850\";\"Country Knolls\";\"main\"\n\"5113933\";\"Coxsackie\";\"main\"\n\"5114128\";\"Crompond\";\"main\"\n\"5114221\";\"Croton-on-Hudson\";\"main\"\n\"5114252\";\"Crown Heights\";\"main\"\n\"5114260\";\"Crugers\";\"main\"\n\"5114325\";\"Cuba\";\"main\"\n\"5114357\";\"Cumberland Head\";\"main\"\n\"5114401\";\"Cutchogue\";\"main\"\n\"5114487\";\"Dannemora\";\"main\"\n\"5114492\";\"Dansville\";\"main\"\n\"5114731\";\"Deer Park\";\"main\"\n\"5114821\";\"Delevan\";\"main\"\n\"5114824\";\"Delhi\";\"main\"\n\"5114831\";\"Delmar\";\"main\"\n\"5114900\";\"Depew\";\"main\"\n\"5114903\";\"Deposit\";\"main\"\n\"5114982\";\"Dexter\";\"main\"\n\"5115107\";\"Dix Hills\";\"main\"\n\"5115123\";\"Dobbs Ferry\";\"main\"\n\"5115177\";\"Dolgeville\";\"main\"\n\"5115261\";\"Dover Plains\";\"main\"\n\"5115374\";\"Dryden\";\"main\"\n\"5115475\";\"Dundee\";\"main\"\n\"5115495\";\"Dunkirk\";\"main\"\n\"5115703\";\"East Atlantic Beach\";\"main\"\n\"5115704\";\"East Aurora\";\"main\"\n\"5115838\";\"East Farmingdale\";\"main\"\n\"5115857\";\"East Glenville\";\"main\"\n\"5115860\";\"East Greenbush\";\"main\"\n\"5115871\";\"East Hampton\";\"main\"\n\"5115904\";\"East Hills\";\"main\"\n\"5115923\";\"East Islip\";\"main\"\n\"5115926\";\"East Ithaca\";\"main\"\n\"5115960\";\"East Meadow\";\"main\"\n\"5115962\";\"East Massapequa\";\"main\"\n\"5115974\";\"East Moriches\";\"main\"\n\"5115985\";\"East New York\";\"main\"\n\"5115985\";\"Starrett City\";\"other\"\n\"5115989\";\"East Northport\";\"main\"\n\"5115990\";\"East Norwich\";\"main\"\n\"5116004\";\"East Patchogue\";\"main\"\n\"5116035\";\"East Quogue\";\"main\"\n\"5116047\";\"East Rochester\";\"main\"\n\"5116049\";\"East Rockaway\";\"main\"\n\"5116060\";\"East Setauket\";\"main\"\n\"5116063\";\"East Shoreham\";\"main\"\n\"5116079\";\"East Syracuse\";\"main\"\n\"5116107\";\"East Williston\";\"main\"\n\"5116119\";\"Eastchester\";\"main\"\n\"5116149\";\"Eastport\";\"main\"\n\"5116169\";\"Eatons Neck\";\"main\"\n\"5116215\";\"Eden\";\"main\"\n\"5116216\";\"Eden\";\"main\"\n\"5116342\";\"Elbridge\";\"main\"\n\"5116408\";\"Ellenville\";\"main\"\n\"5116480\";\"Elma Center\";\"main\"\n\"5116497\";\"Elmira\";\"main\"\n\"5116497\";\"Ehl'mira\";\"other\"\n\"5116497\";\"Эльмира\";\"other\"\n\"5116500\";\"Elmira Heights\";\"main\"\n\"5116508\";\"Elmont\";\"main\"\n\"5116512\";\"Elmsford\";\"main\"\n\"5116550\";\"Elwood\";\"main\"\n\"5116602\";\"Endicott\";\"main\"\n\"5116603\";\"Endwell\";\"main\"\n\"5116811\";\"Fairmount\";\"main\"\n\"5116815\";\"Fairport\";\"main\"\n\"5116819\";\"Fairview\";\"main\"\n\"5116820\";\"Fairview\";\"main\"\n\"5116864\";\"Falconer\";\"main\"\n\"5116931\";\"Farmingdale\";\"main\"\n\"5116937\";\"Farmingville\";\"main\"\n\"5116968\";\"Fayetteville\";\"main\"\n\"5117208\";\"Firthcliffe\";\"main\"\n\"5117274\";\"Fishkill\";\"main\"\n\"5117347\";\"Flanders\";\"main\"\n\"5117438\";\"Floral Park\";\"main\"\n\"5117451\";\"Florida\";\"main\"\n\"5117451\";\"Флорида\";\"other\"\n\"5117458\";\"Flower Hill\";\"main\"\n\"5117657\";\"Fort Edward\";\"main\"\n\"5117685\";\"Fort Montgomery\";\"main\"\n\"5117694\";\"Fort Plain\";\"main\"\n\"5117703\";\"Fort Salonga\";\"main\"\n\"5117856\";\"Frankfort\";\"main\"\n\"5117856\";\"Frankfurt\";\"other\"\n\"5117856\";\"Франкфурт\";\"other\"\n\"5117891\";\"Franklin Square\";\"main\"\n\"5117902\";\"Franklinville\";\"main\"\n\"5117926\";\"Fredonia\";\"main\"\n\"5117949\";\"Freeport\";\"main\"\n\"5118018\";\"Frewsburg\";\"main\"\n\"5118036\";\"Friendship\";\"main\"\n\"5118136\";\"Fulton\";\"main\"\n\"5118185\";\"Galeville\";\"main\"\n\"5118226\";\"Garden City\";\"main\"\n\"5118228\";\"Garden City Park\";\"main\"\n\"5118229\";\"Garden City South\";\"main\"\n\"5118251\";\"Gang Mills\";\"main\"\n\"5118261\";\"Gardnertown\";\"main\"\n\"5118304\";\"Gasport\";\"main\"\n\"5118394\";\"Geneseo\";\"main\"\n\"5118398\";\"Geneva\";\"main\"\n\"5118398\";\"Zheneva\";\"other\"\n\"5118398\";\"Женева\";\"other\"\n\"5118606\";\"Glasco\";\"main\"\n\"5118626\";\"Glen Cove\";\"main\"\n\"5118626\";\"Glen-Kouv\";\"other\"\n\"5118626\";\"Глен-Коув\";\"other\"\n\"5118642\";\"Glen Head\";\"main\"\n\"5118693\";\"Glens Falls\";\"main\"\n\"5118729\";\"Glenwood Landing\";\"main\"\n\"5118743\";\"Gloversville\";\"main\"\n\"5118781\";\"Goldens Bridge\";\"main\"\n\"5118889\";\"Gordon Heights\";\"main\"\n\"5118920\";\"Goshen\";\"main\"\n\"5118920\";\"Гошен\";\"other\"\n\"5118939\";\"Gouverneur\";\"main\"\n\"5118990\";\"Gowanda\";\"main\"\n\"5119076\";\"Granville\";\"main\"\n\"5119218\";\"Great Neck\";\"main\"\n\"5119223\";\"Great Neck Gardens\";\"main\"\n\"5119226\";\"Great Neck Plaza\";\"main\"\n\"5119232\";\"Great River\";\"main\"\n\"5119235\";\"Great Neck Estates\";\"main\"\n\"5119251\";\"Greece\";\"main\"\n\"5119290\";\"Green Island\";\"main\"\n\"5119347\";\"Greenburgh\";\"main\"\n\"5119353\";\"Greene\";\"main\"\n\"5119377\";\"Greenlawn\";\"main\"\n\"5119385\";\"Greenport\";\"main\"\n\"5119398\";\"Greenvale\";\"main\"\n\"5119405\";\"Greenville\";\"main\"\n\"5119416\";\"Greenwich\";\"main\"\n\"5119416\";\"Grinvich\";\"other\"\n\"5119416\";\"Гринвич\";\"other\"\n\"5119432\";\"Greenwood Lake\";\"main\"\n\"5119513\";\"Groton\";\"main\"\n\"5119709\";\"Hagaman\";\"main\"\n\"5119742\";\"Halesite\";\"main\"\n\"5119833\";\"Hamburg\";\"main\"\n\"5119842\";\"Hamilton\";\"main\"\n\"5119842\";\"Gamil'ton\";\"other\"\n\"5119842\";\"Гамильтон\";\"other\"\n\"5119899\";\"Hampton Bays\";\"main\"\n\"5119907\";\"Hampton Manor\";\"main\"\n\"5119916\";\"Hancock\";\"main\"\n\"5119981\";\"Harbor Isle\";\"main\"\n\"5120062\";\"Harriman\";\"main\"\n\"5120074\";\"Harris Hill\";\"main\"\n\"5120095\";\"Harrison\";\"main\"\n\"5120095\";\"Kharrison\";\"other\"\n\"5120095\";\"Харрисон\";\"other\"\n\"5120141\";\"Hartsdale\";\"main\"\n\"5120197\";\"Hastings-on-Hudson\";\"main\"\n\"5120228\";\"Hauppauge\";\"main\"\n\"5120238\";\"Haverstraw\";\"main\"\n\"5120241\";\"Haviland\";\"main\"\n\"5120284\";\"Hawthorne\";\"main\"\n\"5120348\";\"Head of the Harbor\";\"main\"\n\"5120478\";\"Hempstead\";\"main\"\n\"5120478\";\"Khempsted\";\"other\"\n\"5120478\";\"Хемпстед\";\"other\"\n\"5120479\";\"New Hempstead\";\"main\"\n\"5120545\";\"Herkimer\";\"main\"\n\"5120550\";\"Heritage Hills\";\"main\"\n\"5120595\";\"Herricks\";\"main\"\n\"5120598\";\"Hewlett\";\"main\"\n\"5120601\";\"Hewlett Harbor\";\"main\"\n\"5120656\";\"Hicksville\";\"main\"\n\"5120656\";\"Khiksvilla\";\"other\"\n\"5120656\";\"Хиксвилла\";\"other\"\n\"5120741\";\"Highland\";\"main\"\n\"5120752\";\"Highland Falls\";\"main\"\n\"5120759\";\"Highland Mills\";\"main\"\n\"5120797\";\"Hillcrest\";\"main\"\n\"5120851\";\"Hillside Lake\";\"main\"\n\"5120871\";\"Hilton\";\"main\"\n\"5120987\";\"Holbrook\";\"main\"\n\"5120987\";\"Kholbruk\";\"other\"\n\"5120987\";\"Холбрук\";\"other\"\n\"5120990\";\"Holcomb\";\"main\"\n\"5121004\";\"Holland\";\"main\"\n\"5121004\";\"Gollandija\";\"other\"\n\"5121004\";\"Голландия\";\"other\"\n\"5121016\";\"Holley\";\"main\"\n\"5121163\";\"Holtsville\";\"main\"\n\"5121169\";\"Homer\";\"main\"\n\"5121182\";\"Honeoye Falls\";\"main\"\n\"5121230\";\"Hoosick Falls\";\"main\"\n\"5121253\";\"Hopewell Junction\";\"main\"\n\"5121283\";\"Hornell\";\"main\"\n\"5121309\";\"Horseheads\";\"main\"\n\"5121382\";\"Houghton\";\"main\"\n\"5121509\";\"Hudson\";\"main\"\n\"5121509\";\"Gudzon\";\"other\"\n\"5121509\";\"Гудзон\";\"other\"\n\"5121513\";\"Hudson Falls\";\"main\"\n\"5121636\";\"Huntington\";\"main\"\n\"5121636\";\"Khantington\";\"other\"\n\"5121636\";\"Хантингтон\";\"other\"\n\"5121638\";\"Huntington Bay\";\"main\"\n\"5121650\";\"Huntington Station\";\"main\"\n\"5121679\";\"Hurley\";\"main\"\n\"5121765\";\"Ilion\";\"main\"\n\"5122279\";\"Inwood\";\"main\"\n\"5122280\";\"Inwood\";\"main\"\n\"5122331\";\"Irondequoit\";\"main\"\n\"5122365\";\"Irvington\";\"main\"\n\"5122397\";\"Island Park\";\"main\"\n\"5122409\";\"Islandia\";\"main\"\n\"5122413\";\"Islip\";\"main\"\n\"5122417\";\"Islip Terrace\";\"main\"\n\"5122432\";\"Ithaca\";\"main\"\n\"5122432\";\"Itak\";\"other\"\n\"5122432\";\"Итак\";\"other\"\n\"5122533\";\"Jamesport\";\"main\"\n\"5122534\";\"Jamestown\";\"main\"\n\"5122638\";\"Jericho\";\"main\"\n\"5122794\";\"Johnson City\";\"main\"\n\"5122794\";\"Dzhonson Siti\";\"other\"\n\"5122794\";\"Джонсон Сити\";\"other\"\n\"5122833\";\"Johnstown\";\"main\"\n\"5122833\";\"Dzhonstaun\";\"other\"\n\"5122833\";\"Джонстаун\";\"other\"\n\"5122893\";\"Jordan\";\"main\"\n\"5123109\";\"Kaser\";\"main\"\n\"5123173\";\"Keeseville\";\"main\"\n\"5123247\";\"Kenmore\";\"main\"\n\"5123281\";\"Kensington\";\"main\"\n\"5123309\";\"Kerhonkson\";\"main\"\n\"5123400\";\"Kinderhook\";\"main\"\n\"5123456\";\"Kings Park\";\"main\"\n\"5123459\";\"Kings Point\";\"main\"\n\"5123477\";\"Kingston\";\"main\"\n\"5123477\";\"Кингстон\";\"other\"\n\"5123533\";\"Kiryas Joel\";\"main\"\n\"5123718\";\"Lackawanna\";\"main\"\n\"5123777\";\"Lake Carmel\";\"main\"\n\"5123788\";\"Lake Erie Beach\";\"main\"\n\"5123796\";\"Lake Grove\";\"main\"\n\"5123809\";\"Lake Katrine\";\"main\"\n\"5123823\";\"Lake Mohegan\";\"main\"\n\"5123831\";\"Lake Placid\";\"main\"\n\"5123831\";\"rekupurashiddo\";\"other\"\n\"5123831\";\"レークプラシッド\";\"other\"\n\"5123840\";\"Lake Ronkonkoma\";\"main\"\n\"5123853\";\"Lake Success\";\"main\"\n\"5123872\";\"Lakeland\";\"main\"\n\"5123907\";\"Lakeview\";\"main\"\n\"5123908\";\"Lakeview\";\"main\"\n\"5123929\";\"Lakewood\";\"main\"\n\"5123929\";\"Lejkvud\";\"other\"\n\"5123929\";\"Лейквуд\";\"other\"\n\"5123954\";\"Lancaster\";\"main\"\n\"5123954\";\"Lankaster\";\"other\"\n\"5123954\";\"Ланкастер\";\"other\"\n\"5123993\";\"Lansing\";\"main\"\n\"5123993\";\"Лансинг\";\"other\"\n\"5124017\";\"Larchmont\";\"main\"\n\"5124049\";\"Lattingtown\";\"main\"\n\"5124059\";\"Laurel\";\"main\"\n\"5124069\";\"Laurel Hollow\";\"main\"\n\"5124087\";\"Lawrence\";\"main\"\n\"5124087\";\"Lourens\";\"other\"\n\"5124087\";\"Лоуренс\";\"other\"\n\"5124128\";\"Le Roy\";\"main\"\n\"5124276\";\"Levittown\";\"main\"\n\"5124307\";\"Lewiston\";\"main\"\n\"5124307\";\"L'juiston\";\"other\"\n\"5124307\";\"Льюистон\";\"other\"\n\"5124323\";\"Liberty\";\"main\"\n\"5124352\";\"Lido Beach\";\"main\"\n\"5124411\";\"Lima\";\"main\"\n\"5124411\";\"Лима\";\"other\"\n\"5124463\";\"Lincoln Park\";\"main\"\n\"5124482\";\"Lincolndale\";\"main\"\n\"5124497\";\"Lindenhurst\";\"main\"\n\"5124642\";\"Little Falls\";\"main\"\n\"5124889\";\"Little Valley\";\"main\"\n\"5124925\";\"Liverpool\";\"main\"\n\"5124931\";\"Livingston Manor\";\"main\"\n\"5124936\";\"Livonia\";\"main\"\n\"5124936\";\"Livonija\";\"other\"\n\"5124936\";\"Ливония\";\"other\"\n\"5124946\";\"Lloyd Harbor\";\"main\"\n\"5125011\";\"Lockport\";\"main\"\n\"5125041\";\"Locust Valley\";\"main\"\n\"5125086\";\"Long Beach\";\"main\"\n\"5125086\";\"Long-Bich\";\"other\"\n\"5125086\";\"Лонг-Бич\";\"other\"\n\"5125295\";\"Lorenz Park\";\"main\"\n\"5125461\";\"Lowville\";\"main\"\n\"5125523\";\"Lynbrook\";\"main\"\n\"5125529\";\"Lyncourt\";\"main\"\n\"5125554\";\"Lyons\";\"main\"\n\"5125591\";\"Macedon\";\"main\"\n\"5125657\";\"Mahopac\";\"main\"\n\"5125717\";\"Malone\";\"main\"\n\"5125734\";\"Malverne\";\"main\"\n\"5125738\";\"Mamaroneck\";\"main\"\n\"5125757\";\"Manchester\";\"main\"\n\"5125757\";\"Манчестер\";\"other\"\n\"5125766\";\"Manhasset\";\"main\"\n\"5125768\";\"Manhasset Hills\";\"main\"\n\"5125771\";\"Manhattan\";\"main\"\n\"5125790\";\"Manlius\";\"main\"\n\"5125813\";\"Manorhaven\";\"main\"\n\"5125817\";\"Manorville\";\"main\"\n\"5125818\";\"Manorville\";\"main\"\n\"5125954\";\"Marathon\";\"main\"\n\"5125966\";\"Marcellus\";\"main\"\n\"5126055\";\"Marlboro\";\"main\"\n\"5126183\";\"Massapequa\";\"main\"\n\"5126187\";\"Massapequa Park\";\"main\"\n\"5126194\";\"Massena\";\"main\"\n\"5126208\";\"Mastic\";\"main\"\n\"5126209\";\"Mastic Beach\";\"main\"\n\"5126239\";\"Mattituck\";\"main\"\n\"5126246\";\"Mattydale\";\"main\"\n\"5126268\";\"Maybrook\";\"main\"\n\"5126287\";\"Mayville\";\"main\"\n\"5126509\";\"Mechanicstown\";\"main\"\n\"5126510\";\"Mechanicville\";\"main\"\n\"5126518\";\"Medford\";\"main\"\n\"5126518\";\"Медфорд\";\"other\"\n\"5126521\";\"Medina\";\"main\"\n\"5126521\";\"Медина\";\"other\"\n\"5126554\";\"Melrose Park\";\"main\"\n\"5126555\";\"Melville\";\"main\"\n\"5126588\";\"Menands\";\"main\"\n\"5126630\";\"Merrick\";\"main\"\n\"5126630\";\"Merrik\";\"other\"\n\"5126630\";\"Меррик\";\"other\"\n\"5126705\";\"Mexico\";\"main\"\n\"5126787\";\"Middle Island\";\"main\"\n\"5126828\";\"Middleburgh\";\"main\"\n\"5126836\";\"Middleport\";\"main\"\n\"5126837\";\"Middleport\";\"main\"\n\"5126842\";\"Middletown\";\"main\"\n\"5127007\";\"Millbrook\";\"main\"\n\"5127043\";\"Miller Place\";\"main\"\n\"5127098\";\"Milton\";\"main\"\n\"5127098\";\"Mil'ton\";\"other\"\n\"5127098\";\"Мильтон\";\"other\"\n\"5127099\";\"Milton\";\"main\"\n\"5127099\";\"Mil'ton\";\"other\"\n\"5127099\";\"Мильтон\";\"other\"\n\"5127134\";\"Mineola\";\"main\"\n\"5127147\";\"Minetto\";\"main\"\n\"5127179\";\"Minoa\";\"main\"\n\"5127233\";\"Mohawk\";\"main\"\n\"5127302\";\"Monroe\";\"main\"\n\"5127302\";\"Monro\";\"other\"\n\"5127302\";\"Монро\";\"other\"\n\"5127315\";\"Monsey\";\"main\"\n\"5127321\";\"Montauk\";\"main\"\n\"5127335\";\"Montebello\";\"main\"\n\"5127335\";\"Монтебелло\";\"other\"\n\"5127353\";\"Montgomery\";\"main\"\n\"5127353\";\"Montgomeri\";\"other\"\n\"5127353\";\"Монтгомери\";\"other\"\n\"5127359\";\"Monticello\";\"main\"\n\"5127364\";\"Montour Falls\";\"main\"\n\"5127474\";\"Moravia\";\"main\"\n\"5127519\";\"Moriches\";\"main\"\n\"5127555\";\"Morrisonville\";\"main\"\n\"5127561\";\"Morrisville\";\"main\"\n\"5127741\";\"Mount Ivy\";\"main\"\n\"5127744\";\"Mount Kisco\";\"main\"\n\"5127766\";\"Mount Morris\";\"main\"\n\"5127824\";\"Mount Sinai\";\"main\"\n\"5127835\";\"Mount Vernon\";\"main\"\n\"5128156\";\"Munsey Park\";\"main\"\n\"5128163\";\"Munsons Corners\";\"main\"\n\"5128238\";\"Myers Corner\";\"main\"\n\"5128241\";\"Muttontown\";\"main\"\n\"5128266\";\"Nanuet\";\"main\"\n\"5128267\";\"Napanoch\";\"main\"\n\"5128276\";\"Naples\";\"main\"\n\"5128276\";\"Neapol'\";\"other\"\n\"5128276\";\"Неаполь\";\"other\"\n\"5128313\";\"Nassau\";\"main\"\n\"5128368\";\"Nedrow\";\"main\"\n\"5128433\";\"Nesconset\";\"main\"\n\"5128465\";\"New Berlin\";\"main\"\n\"5128465\";\"Novyj Berlin\";\"other\"\n\"5128465\";\"Новый Берлин\";\"other\"\n\"5128478\";\"New Cassel\";\"main\"\n\"5128481\";\"New City\";\"main\"\n\"5128503\";\"New Hartford\";\"main\"\n\"5128514\";\"New Hyde Park\";\"main\"\n\"5128539\";\"New Paltz\";\"main\"\n\"5128549\";\"New Rochelle\";\"main\"\n\"5128549\";\"N'ju-Roshel'\";\"other\"\n\"5128549\";\"Nueva Rochelle\";\"other\"\n\"5128549\";\"Нью-Рошель\";\"other\"\n\"5128568\";\"New Square\";\"main\"\n\"5128577\";\"New Windsor\";\"main\"\n\"5128581\";\"New York City\";\"main\"\n\"5128581\";\"Bandaraya New York\";\"other\"\n\"5128581\";\"Big Apple\";\"other\"\n\"5128581\";\"Cathair Nua Eabhraic\";\"other\"\n\"5128581\";\"Dinas Efrog Newydd\";\"other\"\n\"5128581\";\"Eabhraig Nuadh\";\"other\"\n\"5128581\";\"Evrek Nowydh\";\"other\"\n\"5128581\";\"Lungsod ng New York\";\"other\"\n\"5128581\";\"N'ju-Jork\";\"other\"\n\"5128581\";\"NYC\";\"other\"\n\"5128581\";\"Nea Yorke\";\"other\"\n\"5128581\";\"Nei Yarrick Schtadt\";\"other\"\n\"5128581\";\"New York\";\"other\"\n\"5128581\";\"New York Stad\";\"other\"\n\"5128581\";\"New York borg\";\"other\"\n\"5128581\";\"New York kenti\";\"other\"\n\"5128581\";\"New York-borg\";\"other\"\n\"5128581\";\"Niujorkas\";\"other\"\n\"5128581\";\"Nju Jork\";\"other\"\n\"5128581\";\"Njujork\";\"other\"\n\"5128581\";\"Nouvieau York\";\"other\"\n\"5128581\";\"Nov-Jorko\";\"other\"\n\"5128581\";\"Nova Iorque\";\"other\"\n\"5128581\";\"Nova York\";\"other\"\n\"5128581\";\"Nova-York\";\"other\"\n\"5128581\";\"Novjorko\";\"other\"\n\"5128581\";\"Nowy Jork\";\"other\"\n\"5128581\";\"Nua-Eabhrac\";\"other\"\n\"5128581\";\"Nueba York\";\"other\"\n\"5128581\";\"Nueva York\";\"other\"\n\"5128581\";\"Nujorka\";\"other\"\n\"5128581\";\"Nyja Jorvik\";\"other\"\n\"5128581\";\"Nòva York\";\"other\"\n\"5128581\";\"Nýja Jórvík\";\"other\"\n\"5128581\";\"Thanh pho New York\";\"other\"\n\"5128581\";\"The City of New York\";\"other\"\n\"5128581\";\"Thành phố New York\";\"other\"\n\"5128581\";\"Urbs Novum Eboracum\";\"other\"\n\"5128581\";\"York Berri\";\"other\"\n\"5128581\";\"ni'u iyarka\";\"other\"\n\"5128581\";\"niu yue shi\";\"other\"\n\"5128581\";\"niyuyark\";\"other\"\n\"5128581\";\"nkhr niwyxrk\";\"other\"\n\"5128581\";\"nyuyog\";\"other\"\n\"5128581\";\"nyuyog si\";\"other\"\n\"5128581\";\"nyuyoku\";\"other\"\n\"5128581\";\"nyw ywrq\";\"other\"\n\"5128581\";\"nywywrk\";\"other\"\n\"5128581\";\"Ņujorka\";\"other\"\n\"5128581\";\"Νέα Υόρκη\";\"other\"\n\"5128581\";\"Њу Јорк\";\"other\"\n\"5128581\";\"Њујорк\";\"other\"\n\"5128581\";\"Нью-Ёрк\";\"other\"\n\"5128581\";\"Нью-Йорк\";\"other\"\n\"5128581\";\"Ню Йорк\";\"other\"\n\"5128581\";\"ניו יארק\";\"other\"\n\"5128581\";\"ניו יורק\";\"other\"\n\"5128581\";\"ניו־יאָרק\";\"other\"\n\"5128581\";\"نيويورك\";\"other\"\n\"5128581\";\"نيۇيورك شەھەر\";\"other\"\n\"5128581\";\"نیویارک شہر\";\"other\"\n\"5128581\";\"نیویورک\";\"other\"\n\"5128581\";\"নিউ ইয়র্ক\";\"other\"\n\"5128581\";\"நியூயார்க்\";\"other\"\n\"5128581\";\"นครนิวยอร์ก\";\"other\"\n\"5128581\";\"ნიუ-იორკი\";\"other\"\n\"5128581\";\"ニューヨーク\";\"other\"\n\"5128581\";\"紐約市\";\"other\"\n\"5128581\";\"纽约市\";\"other\"\n\"5128581\";\"뉴욕\";\"other\"\n\"5128581\";\"뉴욕 시\";\"other\"\n\"5128616\";\"New York Mills\";\"main\"\n\"5128639\";\"Newark\";\"main\"\n\"5128639\";\"N'juark\";\"other\"\n\"5128639\";\"Ньюарк\";\"other\"\n\"5128644\";\"Newark Valley\";\"main\"\n\"5128654\";\"Newburgh\";\"main\"\n\"5128654\";\"N'juberg\";\"other\"\n\"5128654\";\"Ньюберг\";\"other\"\n\"5128670\";\"Newfane\";\"main\"\n\"5128723\";\"Niagara Falls\";\"main\"\n\"5128824\";\"Niskayuna\";\"main\"\n\"5128827\";\"Nissequogue\";\"main\"\n\"5128833\";\"Niverville\";\"main\"\n\"5128862\";\"Norfolk\";\"main\"\n\"5128862\";\"Норфолк\";\"other\"\n\"5128884\";\"North Amityville\";\"main\"\n\"5128886\";\"North Babylon\";\"main\"\n\"5128898\";\"North Bay Shore\";\"main\"\n\"5128904\";\"North Bellmore\";\"main\"\n\"5128905\";\"North Bellport\";\"main\"\n\"5128914\";\"North Boston\";\"main\"\n\"5128996\";\"North Collins\";\"main\"\n\"5129050\";\"North Gates\";\"main\"\n\"5129057\";\"North Great River\";\"main\"\n\"5129093\";\"North Hills\";\"main\"\n\"5129125\";\"North Lindenhurst\";\"main\"\n\"5129134\";\"North Massapequa\";\"main\"\n\"5129141\";\"North Merrick\";\"main\"\n\"5129147\";\"North New Hyde Park\";\"main\"\n\"5129157\";\"North Patchogue\";\"main\"\n\"5129210\";\"North Sea\";\"main\"\n\"5129242\";\"North Syracuse\";\"main\"\n\"5129245\";\"North Tonawanda\";\"main\"\n\"5129248\";\"North Valley Stream\";\"main\"\n\"5129254\";\"North Wantagh\";\"main\"\n\"5129290\";\"Northport\";\"main\"\n\"5129313\";\"Northville\";\"main\"\n\"5129325\";\"Northwest Harbor\";\"main\"\n\"5129359\";\"Norwich\";\"main\"\n\"5129359\";\"Noridzh\";\"other\"\n\"5129359\";\"Норидж\";\"other\"\n\"5129364\";\"Norwood\";\"main\"\n\"5129395\";\"Noyack\";\"main\"\n\"5129425\";\"Nunda\";\"main\"\n\"5129433\";\"Nyack\";\"main\"\n\"5129540\";\"Oakdale\";\"main\"\n\"5129541\";\"Oakdale\";\"main\"\n\"5129545\";\"Oakfield\";\"main\"\n\"5129603\";\"Oceanside\";\"main\"\n\"5129626\";\"Ogdensburg\";\"main\"\n\"5129654\";\"Olcott\";\"main\"\n\"5129662\";\"Old Bethpage\";\"main\"\n\"5129665\";\"Old Brookville\";\"main\"\n\"5129690\";\"Old Field\";\"main\"\n\"5129770\";\"Old Westbury\";\"main\"\n\"5129780\";\"Olean\";\"main\"\n\"5129837\";\"Oneida\";\"main\"\n\"5129852\";\"Oneonta\";\"main\"\n\"5129919\";\"Orange Lake\";\"main\"\n\"5129923\";\"Orangeburg\";\"main\"\n\"5129951\";\"Orchard Park\";\"main\"\n\"5129988\";\"Oriskany\";\"main\"\n\"5130045\";\"Ossining\";\"main\"\n\"5130081\";\"Oswego\";\"main\"\n\"5130102\";\"Otisville\";\"main\"\n\"5130273\";\"Owego\";\"main\"\n\"5130319\";\"Oxford\";\"main\"\n\"5130319\";\"Oksford\";\"other\"\n\"5130319\";\"Оксфорд\";\"other\"\n\"5130327\";\"Oyster Bay\";\"main\"\n\"5130328\";\"Oyster Bay Cove\";\"main\"\n\"5130394\";\"Painted Post\";\"main\"\n\"5130402\";\"Palenville\";\"main\"\n\"5130441\";\"Palmyra\";\"main\"\n\"5130672\";\"Patchogue\";\"main\"\n\"5130719\";\"Pawling\";\"main\"\n\"5130748\";\"Peach Lake\";\"main\"\n\"5130780\";\"Pearl River\";\"main\"\n\"5130821\";\"Peconic\";\"main\"\n\"5130831\";\"Peekskill\";\"main\"\n\"5130854\";\"Pelham\";\"main\"\n\"5130862\";\"Pelham Manor\";\"main\"\n\"5130915\";\"Penn Yan\";\"main\"\n\"5130979\";\"Perry\";\"main\"\n\"5131009\";\"Peru\";\"main\"\n\"5131010\";\"Peru\";\"main\"\n\"5131073\";\"Phelps\";\"main\"\n\"5131095\";\"Philadelphia\";\"main\"\n\"5131095\";\"Filadel'fija\";\"other\"\n\"5131095\";\"Филадельфия\";\"other\"\n\"5131121\";\"Philmont\";\"main\"\n\"5131135\";\"Phoenix\";\"main\"\n\"5131135\";\"Finiks\";\"other\"\n\"5131135\";\"Финикс\";\"other\"\n\"5131248\";\"Piermont\";\"main\"\n\"5131321\";\"Pine Bush\";\"main\"\n\"5131457\";\"Pine Plains\";\"main\"\n\"5131614\";\"Pittsford\";\"main\"\n\"5131628\";\"Plainedge\";\"main\"\n\"5131638\";\"Plainview\";\"main\"\n\"5131642\";\"Plandome\";\"main\"\n\"5131671\";\"Plattekill\";\"main\"\n\"5131692\";\"Plattsburgh\";\"main\"\n\"5131725\";\"Pleasant Valley\";\"main\"\n\"5131757\";\"Pleasantville\";\"main\"\n\"5131826\";\"Poestenkill\";\"main\"\n\"5131837\";\"Point Lookout\";\"main\"\n\"5131894\";\"Pomona\";\"main\"\n\"5131894\";\"Помона\";\"other\"\n\"5132001\";\"Port Byron\";\"main\"\n\"5132002\";\"Port Chester\";\"main\"\n\"5132005\";\"Port Dickinson\";\"main\"\n\"5132008\";\"Port Ewen\";\"main\"\n\"5132011\";\"Port Henry\";\"main\"\n\"5132013\";\"Port Jefferson\";\"main\"\n\"5132015\";\"Port Jefferson Station\";\"main\"\n\"5132016\";\"Port Jervis\";\"main\"\n\"5132029\";\"Port Washington\";\"main\"\n\"5132030\";\"Port Washington North\";\"main\"\n\"5132103\";\"Potsdam\";\"main\"\n\"5132143\";\"Poughkeepsie\";\"main\"\n\"5133084\";\"Pulaski\";\"main\"\n\"5133171\";\"Putnam Lake\";\"main\"\n\"5133302\";\"Quogue\";\"main\"\n\"5133416\";\"Randolph\";\"main\"\n\"5133416\";\"Randol'f\";\"other\"\n\"5133416\";\"Рандольф\";\"other\"\n\"5133419\";\"Ransomville\";\"main\"\n\"5133423\";\"Rapids\";\"main\"\n\"5133471\";\"Ravena\";\"main\"\n\"5133545\";\"Red Hook\";\"main\"\n\"5133576\";\"Red Oaks Mill\";\"main\"\n\"5133667\";\"Rensselaer\";\"main\"\n\"5133742\";\"Rhinebeck\";\"main\"\n\"5133795\";\"Richfield Springs\";\"main\"\n\"5133832\";\"Ridge\";\"main\"\n\"5133926\";\"Riverhead\";\"main\"\n\"5133934\";\"Riverside\";\"main\"\n\"5133934\";\"Riversajd\";\"other\"\n\"5133934\";\"Риверсайд\";\"other\"\n\"5134086\";\"Rochester\";\"main\"\n\"5134086\";\"Rocestera\";\"other\"\n\"5134086\";\"Rocestro\";\"other\"\n\"5134086\";\"Rochestur\";\"other\"\n\"5134086\";\"Roĉestro\";\"other\"\n\"5134086\";\"Ročestera\";\"other\"\n\"5134086\";\"luo che si te\";\"other\"\n\"5134086\";\"racestara\";\"other\"\n\"5134086\";\"rochesuta\";\"other\"\n\"5134086\";\"Рочестер\";\"other\"\n\"5134086\";\"Рочестър\";\"other\"\n\"5134086\";\"রচেস্টার\";\"other\"\n\"5134086\";\"ロチェスター\";\"other\"\n\"5134086\";\"羅徹斯特\";\"other\"\n\"5134115\";\"Rock Hill\";\"main\"\n\"5134203\";\"Rockville Centre\";\"main\"\n\"5134203\";\"Rockville Center\";\"other\"\n\"5134235\";\"Rocky Point\";\"main\"\n\"5134295\";\"Rome\";\"main\"\n\"5134295\";\"Rim\";\"other\"\n\"5134295\";\"Рим\";\"other\"\n\"5134316\";\"Ronkonkoma\";\"main\"\n\"5134323\";\"Roosevelt\";\"main\"\n\"5134415\";\"Roslyn\";\"main\"\n\"5134417\";\"Roslyn Estates\";\"main\"\n\"5134419\";\"Roslyn Harbor\";\"main\"\n\"5134420\";\"Roslyn Heights\";\"main\"\n\"5134453\";\"Rotterdam\";\"main\"\n\"5134565\";\"Rouses Point\";\"main\"\n\"5134653\";\"Russell Gardens\";\"main\"\n\"5134693\";\"Rye\";\"main\"\n\"5134696\";\"Rye Brook\";\"main\"\n\"5134736\";\"Sackets Harbor\";\"main\"\n\"5134800\";\"Sag Harbor\";\"main\"\n\"5135192\";\"Saint James\";\"main\"\n\"5135192\";\"Sent-Dzhejms\";\"other\"\n\"5135192\";\"Сент-Джеймс\";\"other\"\n\"5135356\";\"Saint Johnsville\";\"main\"\n\"5136088\";\"Salamanca\";\"main\"\n\"5136107\";\"Salisbury\";\"main\"\n\"5136245\";\"Sands Point\";\"main\"\n\"5136322\";\"Saranac Lake\";\"main\"\n\"5136334\";\"Saratoga Springs\";\"main\"\n\"5136334\";\"Saratoga-Springs\";\"other\"\n\"5136334\";\"Саратога-Спрингс\";\"other\"\n\"5136353\";\"Saugerties\";\"main\"\n\"5136421\";\"Sayville\";\"main\"\n\"5136433\";\"Scarsdale\";\"main\"\n\"5136454\";\"Schenectady\";\"main\"\n\"5136454\";\"Skenektadi\";\"other\"\n\"5136454\";\"sknyktady\";\"other\"\n\"5136454\";\"Скенектади\";\"other\"\n\"5136454\";\"سكنيكتادي\";\"other\"\n\"5136494\";\"Schoharie\";\"main\"\n\"5137380\";\"Schuylerville\";\"main\"\n\"5137421\";\"Scotchtown\";\"main\"\n\"5137423\";\"Scotia\";\"main\"\n\"5137454\";\"Scottsville\";\"main\"\n\"5137484\";\"Sea Cliff\";\"main\"\n\"5137507\";\"Seaford\";\"main\"\n\"5137517\";\"Searingtown\";\"main\"\n\"5137600\";\"Selden\";\"main\"\n\"5137600\";\"Селден\";\"other\"\n\"5137622\";\"Seneca Falls\";\"main\"\n\"5137631\";\"Seneca Knolls\";\"main\"\n\"5137894\";\"Shelter Island\";\"main\"\n\"5137909\";\"Shenorock\";\"main\"\n\"5137925\";\"Sherburne\";\"main\"\n\"5137957\";\"Sherrill\";\"main\"\n\"5138007\";\"Shinnecock Hills\";\"main\"\n\"5138022\";\"Shirley\";\"main\"\n\"5138022\";\"Shirli\";\"other\"\n\"5138022\";\"Ширли\";\"other\"\n\"5138029\";\"Shokan\";\"main\"\n\"5138071\";\"Shortsville\";\"main\"\n\"5138077\";\"Shrub Oak\";\"main\"\n\"5138113\";\"Sidney\";\"main\"\n\"5138113\";\"Sidnej\";\"other\"\n\"5138113\";\"Сидней\";\"other\"\n\"5138151\";\"Silver Creek\";\"main\"\n\"5138286\";\"Skaneateles\";\"main\"\n\"5138371\";\"Sleepy Hollow\";\"main\"\n\"5138409\";\"Sloan\";\"main\"\n\"5138414\";\"Sloatsburg\";\"main\"\n\"5138539\";\"Smithtown\";\"main\"\n\"5138652\";\"Sodus\";\"main\"\n\"5138660\";\"Sodus Point\";\"main\"\n\"5138674\";\"Solvay\";\"main\"\n\"5138704\";\"Sound Beach\";\"main\"\n\"5138811\";\"South Corning\";\"main\"\n\"5138836\";\"South Fallsburg\";\"main\"\n\"5138837\";\"South Farmingdale\";\"main\"\n\"5138840\";\"South Floral Park\";\"main\"\n\"5138847\";\"South Glens Falls\";\"main\"\n\"5138869\";\"South Hempstead\";\"main\"\n\"5138884\";\"South Hill\";\"main\"\n\"5138892\";\"South Huntington\";\"main\"\n\"5138918\";\"South Lockport\";\"main\"\n\"5138940\";\"South Nyack\";\"main\"\n\"5139015\";\"South Valley Stream\";\"main\"\n\"5139030\";\"Southampton\";\"main\"\n\"5139054\";\"Southold\";\"main\"\n\"5139058\";\"Southport\";\"main\"\n\"5139084\";\"Spackenkill\";\"main\"\n\"5139152\";\"Spencerport\";\"main\"\n\"5139294\";\"Springs\";\"main\"\n\"5139298\";\"Springville\";\"main\"\n\"5139301\";\"Spring Valley\";\"main\"\n\"5139301\";\"Spring-Vehlli\";\"other\"\n\"5139301\";\"Спринг-Вэлли\";\"other\"\n\"5139399\";\"Saint Bonaventure\";\"main\"\n\"5139428\";\"Stamford\";\"main\"\n\"5139428\";\"Стамфорд\";\"other\"\n\"5139698\";\"Stewart Manor\";\"main\"\n\"5139732\";\"Stillwater\";\"main\"\n\"5139832\";\"Stone Ridge\";\"main\"\n\"5139865\";\"Stony Brook\";\"main\"\n\"5139927\";\"Stony Point\";\"main\"\n\"5139953\";\"Stottville\";\"main\"\n\"5140072\";\"Suffern\";\"main\"\n\"5140389\";\"Sylvan Beach\";\"main\"\n\"5140390\";\"Sylvan Beach\";\"main\"\n\"5140402\";\"Syosset\";\"main\"\n\"5140405\";\"Syracuse\";\"main\"\n\"5140405\";\"Sirakuso\";\"other\"\n\"5140405\";\"shirakyusu\";\"other\"\n\"5140405\";\"shirakyuzu\";\"other\"\n\"5140405\";\"xue cheng\";\"other\"\n\"5140405\";\"シラキュース\";\"other\"\n\"5140405\";\"シラキューズ\";\"other\"\n\"5140405\";\"雪城\";\"other\"\n\"5140532\";\"Tappan\";\"main\"\n\"5140538\";\"Tarrytown\";\"main\"\n\"5140694\";\"Terryville\";\"main\"\n\"5140789\";\"Thiells\";\"main\"\n\"5140849\";\"Thomaston\";\"main\"\n\"5140895\";\"Thornwood\";\"main\"\n\"5141002\";\"Ticonderoga\";\"main\"\n\"5141025\";\"Tillson\";\"main\"\n\"5141073\";\"Tivoli\";\"main\"\n\"5141175\";\"Tonawanda\";\"main\"\n\"5141246\";\"Town Line\";\"main\"\n\"5141502\";\"Troy\";\"main\"\n\"5141502\";\"Troja\";\"other\"\n\"5141502\";\"Троя\";\"other\"\n\"5141508\";\"Trumansburg\";\"main\"\n\"5141527\";\"Tuckahoe\";\"main\"\n\"5141528\";\"Tuckahoe\";\"main\"\n\"5141580\";\"Tupper Lake\";\"main\"\n\"5141796\";\"Unadilla\";\"main\"\n\"5141912\";\"Union Springs\";\"main\"\n\"5141927\";\"Uniondale\";\"main\"\n\"5141962\";\"University Gardens\";\"main\"\n\"5141980\";\"Upper Brookville\";\"main\"\n\"5142011\";\"Upper Nyack\";\"main\"\n\"5142056\";\"Utica\";\"main\"\n\"5142056\";\"you ti ka\";\"other\"\n\"5142056\";\"由提卡\";\"other\"\n\"5142073\";\"Vails Gate\";\"main\"\n\"5142075\";\"Valatie\";\"main\"\n\"5142090\";\"Valhalla\";\"main\"\n\"5142101\";\"Valley Cottage\";\"main\"\n\"5142109\";\"Valley Stream\";\"main\"\n\"5142269\";\"Vernon\";\"main\"\n\"5142315\";\"Victor\";\"main\"\n\"5142343\";\"Village Green\";\"main\"\n\"5142351\";\"Village of the Branch\";\"main\"\n\"5142362\";\"Viola\";\"main\"\n\"5142415\";\"Voorheesville\";\"main\"\n\"5143022\";\"Wading River\";\"main\"\n\"5143066\";\"Walden\";\"main\"\n\"5143116\";\"Wallkill\";\"main\"\n\"5143156\";\"Walton\";\"main\"\n\"5143168\";\"Walton Park\";\"main\"\n\"5143198\";\"Wantagh\";\"main\"\n\"5143211\";\"Wappingers Falls\";\"main\"\n\"5143279\";\"Warrensburg\";\"main\"\n\"5143282\";\"Warsaw\";\"main\"\n\"5143285\";\"Warwick\";\"main\"\n\"5143308\";\"Washington Heights\";\"main\"\n\"5143344\";\"Washingtonville\";\"main\"\n\"5143370\";\"Waterford\";\"main\"\n\"5143370\";\"Uoterford\";\"other\"\n\"5143370\";\"Уотерфорд\";\"other\"\n\"5143380\";\"Waterloo\";\"main\"\n\"5143380\";\"Vaterlo\";\"other\"\n\"5143380\";\"Ватерло\";\"other\"\n\"5143386\";\"Watermill\";\"main\"\n\"5143396\";\"Watertown\";\"main\"\n\"5143405\";\"Waterville\";\"main\"\n\"5143419\";\"Watkins Glen\";\"main\"\n\"5143435\";\"Waverly\";\"main\"\n\"5143495\";\"Webster\";\"main\"\n\"5143527\";\"Weedsport\";\"main\"\n\"5143586\";\"Wellsville\";\"main\"\n\"5143587\";\"Wellsville\";\"main\"\n\"5143610\";\"Wesley Hills\";\"main\"\n\"5143620\";\"West Albany\";\"main\"\n\"5143630\";\"West Babylon\";\"main\"\n\"5143644\";\"West Bay Shore\";\"main\"\n\"5143737\";\"West Carthage\";\"main\"\n\"5143786\";\"West Elmira\";\"main\"\n\"5143789\";\"West End\";\"main\"\n\"5143817\";\"West Glens Falls\";\"main\"\n\"5143830\";\"West Haverstraw\";\"main\"\n\"5143832\";\"West Hempstead\";\"main\"\n\"5143857\";\"West Hills\";\"main\"\n\"5143862\";\"West Hurley\";\"main\"\n\"5143866\";\"West Islip\";\"main\"\n\"5143946\";\"West Nyack\";\"main\"\n\"5143966\";\"West Point\";\"main\"\n\"5143986\";\"West Sand Lake\";\"main\"\n\"5143988\";\"West Sayville\";\"main\"\n\"5143992\";\"West Seneca\";\"main\"\n\"5144040\";\"Westbury\";\"main\"\n\"5144083\";\"Westfield\";\"main\"\n\"5144089\";\"Westhampton\";\"main\"\n\"5144090\";\"Westhampton Beach\";\"main\"\n\"5144097\";\"Westmere\";\"main\"\n\"5144110\";\"Weston Mills\";\"main\"\n\"5144114\";\"Westons Mills\";\"main\"\n\"5144123\";\"Westvale\";\"main\"\n\"5144182\";\"Wheatley Heights\";\"main\"\n\"5144336\";\"White Plains\";\"main\"\n\"5144336\";\"ホワイト・プレインズ\";\"other\"\n\"5144336\";\"ホワイト・プレインズ_\";\"other\"\n\"5144375\";\"Whitehall\";\"main\"\n\"5144396\";\"Whitesboro\";\"main\"\n\"5144588\";\"Williamsville\";\"main\"\n\"5144606\";\"Williston Park\";\"main\"\n\"5144698\";\"Wilson\";\"main\"\n\"5144698\";\"Uilson\";\"other\"\n\"5144698\";\"Уилсон\";\"other\"\n\"5144861\";\"Wolcott\";\"main\"\n\"5144947\";\"Woodbury\";\"main\"\n\"5144947\";\"Vudbari\";\"other\"\n\"5144947\";\"Вудбари\";\"other\"\n\"5145028\";\"Woodmere\";\"main\"\n\"5145033\";\"Woodridge\";\"main\"\n\"5145072\";\"Woodstock\";\"main\"\n\"5145072\";\"Vudstok\";\"other\"\n\"5145072\";\"Вудсток\";\"other\"\n\"5145131\";\"Wurtsboro\";\"main\"\n\"5145135\";\"Wyandanch\";\"main\"\n\"5145157\";\"Wynantskill\";\"main\"\n\"5145197\";\"Yaphank\";\"main\"\n\"5145215\";\"Yonkers\";\"main\"\n\"5145215\";\"Jonkers\";\"other\"\n\"5145215\";\"Йонкерс\";\"other\"\n\"5145250\";\"Yorkshire\";\"main\"\n\"5145253\";\"Yorktown Heights\";\"main\"\n\"5145257\";\"Yorkville\";\"main\"\n\"5145282\";\"Youngstown\";\"main\"\n\"5145295\";\"Zena\";\"main\"\n\"5145374\";\"Ada\";\"main\"\n\"5145476\";\"Akron\";\"main\"\n\"5145476\";\"aekeuleon\";\"other\"\n\"5145476\";\"akuron\";\"other\"\n\"5145476\";\"Акрон\";\"other\"\n\"5145476\";\"アクロン\";\"other\"\n\"5145476\";\"애크런\";\"other\"\n\"5145607\";\"Alliance\";\"main\"\n\"5145607\";\"Al'jans\";\"other\"\n\"5145607\";\"Альянс\";\"other\"\n\"5145695\";\"Amherst\";\"main\"\n\"5145695\";\"Amkherst\";\"other\"\n\"5145695\";\"Амхерст\";\"other\"\n\"5145770\";\"Andover\";\"main\"\n\"5145788\";\"Anna\";\"main\"\n\"5145808\";\"Ansonia\";\"main\"\n\"5145848\";\"Antwerp\";\"main\"\n\"5145938\";\"Archbold\";\"main\"\n\"5145962\";\"Arlington\";\"main\"\n\"5145962\";\"Арлингтон\";\"other\"\n\"5146055\";\"Ashland\";\"main\"\n\"5146080\";\"Ashley\";\"main\"\n\"5146089\";\"Ashtabula\";\"main\"\n\"5146233\";\"Aurora\";\"main\"\n\"5146233\";\"Avrora\";\"other\"\n\"5146233\";\"Аврора\";\"other\"\n\"5146256\";\"Austintown\";\"main\"\n\"5146277\";\"Avon\";\"main\"\n\"5146282\";\"Avon Center\";\"main\"\n\"5146286\";\"Avon Lake\";\"main\"\n\"5146368\";\"Bainbridge\";\"main\"\n\"5146438\";\"Ballville\";\"main\"\n\"5146491\";\"Barberton\";\"main\"\n\"5146675\";\"Bay Village\";\"main\"\n\"5146697\";\"Beach City\";\"main\"\n\"5146711\";\"Beachwood\";\"main\"\n\"5146831\";\"Bedford\";\"main\"\n\"5146831\";\"Бедфорд\";\"other\"\n\"5146840\";\"Bedford Heights\";\"main\"\n\"5146906\";\"Beechwood Trails\";\"main\"\n\"5146946\";\"Bellaire\";\"main\"\n\"5146965\";\"Bellefontaine\";\"main\"\n\"5146978\";\"Bellevue\";\"main\"\n\"5147057\";\"Bellville\";\"main\"\n\"5147097\";\"Berea\";\"main\"\n\"5147097\";\"Береа\";\"other\"\n\"5147302\";\"Bethesda\";\"main\"\n\"5147766\";\"Bluffton\";\"main\"\n\"5147784\";\"Boardman\";\"main\"\n\"5147784\";\"Bordman\";\"other\"\n\"5147784\";\"Бордман\";\"other\"\n\"5147840\";\"Bolindale\";\"main\"\n\"5147904\";\"Boston Heights\";\"main\"\n\"5147924\";\"Botkins\";\"main\"\n\"5147968\";\"Bowling Green\";\"main\"\n\"5147968\";\"Bouling-Grin\";\"other\"\n\"5147968\";\"Боулинг-Грин\";\"other\"\n\"5148028\";\"Bradford\";\"main\"\n\"5148046\";\"Bradner\";\"main\"\n\"5148101\";\"Bratenahl\";\"main\"\n\"5148115\";\"Brecksville\";\"main\"\n\"5148164\";\"Brewster\";\"main\"\n\"5148164\";\"Brjuster\";\"other\"\n\"5148164\";\"Брюстер\";\"other\"\n\"5148192\";\"Bridgeport\";\"main\"\n\"5148226\";\"Brilliant\";\"main\"\n\"5148230\";\"Brimfield\";\"main\"\n\"5148273\";\"Broadview Heights\";\"main\"\n\"5148326\";\"Brook Park\";\"main\"\n\"5148332\";\"Brookfield Center\";\"main\"\n\"5148346\";\"Brooklyn\";\"main\"\n\"5148346\";\"Bruklin\";\"other\"\n\"5148346\";\"Бруклин\";\"other\"\n\"5148352\";\"Brooklyn Heights\";\"main\"\n\"5148480\";\"Brunswick\";\"main\"\n\"5148480\";\"Braunshvejg\";\"other\"\n\"5148480\";\"Брауншвейг\";\"other\"\n\"5148533\";\"Bryan\";\"main\"\n\"5148635\";\"Bucyrus\";\"main\"\n\"5148745\";\"Burlington\";\"main\"\n\"5148773\";\"Burton\";\"main\"\n\"5148773\";\"Berton\";\"other\"\n\"5148773\";\"Бертон\";\"other\"\n\"5148855\";\"Cadiz\";\"main\"\n\"5148883\";\"Calcutta\";\"main\"\n\"5149007\";\"Cambridge\";\"main\"\n\"5149007\";\"Kembridzh\";\"other\"\n\"5149007\";\"Кембридж\";\"other\"\n\"5149149\";\"Campbell\";\"main\"\n\"5149149\";\"Kehmpbell\";\"other\"\n\"5149149\";\"Кэмпбелл\";\"other\"\n\"5149188\";\"Canal Fulton\";\"main\"\n\"5149205\";\"Canfield\";\"main\"\n\"5149222\";\"Canton\";\"main\"\n\"5149253\";\"Cardington\";\"main\"\n\"5149257\";\"Carey\";\"main\"\n\"5149327\";\"Carrollton\";\"main\"\n\"5149493\";\"Celina\";\"main\"\n\"5149595\";\"Centerburg\";\"main\"\n\"5149720\";\"Chagrin Falls\";\"main\"\n\"5149818\";\"Chardon\";\"main\"\n\"5149937\";\"Chesterland\";\"main\"\n\"5150351\";\"Churchill\";\"main\"\n\"5150529\";\"Cleveland\";\"main\"\n\"5150529\";\"Klevlando\";\"other\"\n\"5150529\";\"Klivland\";\"other\"\n\"5150529\";\"Klivlend\";\"other\"\n\"5150529\";\"Klyvlendas\";\"other\"\n\"5150529\";\"ke li fu lan\";\"other\"\n\"5150529\";\"klyfland\";\"other\"\n\"5150529\";\"kuriburando\";\"other\"\n\"5150529\";\"qlyblnd\";\"other\"\n\"5150529\";\"Кливланд\";\"other\"\n\"5150529\";\"Кливленд\";\"other\"\n\"5150529\";\"קליבלנד\";\"other\"\n\"5150529\";\"كليفلاند\";\"other\"\n\"5150529\";\"クリーブランド\";\"other\"\n\"5150529\";\"克里夫蘭\";\"other\"\n\"5150600\";\"Clinton\";\"main\"\n\"5150600\";\"Klinton\";\"other\"\n\"5150600\";\"Клинтон\";\"other\"\n\"5150651\";\"Clyde\";\"main\"\n\"5150725\";\"Coldwater\";\"main\"\n\"5150851\";\"Columbiana\";\"main\"\n\"5150868\";\"Columbus Grove\";\"main\"\n\"5150986\";\"Conneaut\";\"main\"\n\"5151057\";\"Continental\";\"main\"\n\"5151070\";\"Convoy\";\"main\"\n\"5151174\";\"Cortland\";\"main\"\n\"5151186\";\"Coshocton\";\"main\"\n\"5151278\";\"Covington\";\"main\"\n\"5151317\";\"Craig Beach\";\"main\"\n\"5151406\";\"Crestline\";\"main\"\n\"5151415\";\"Creston\";\"main\"\n\"5151436\";\"Cridersville\";\"main\"\n\"5151613\";\"Cuyahoga Falls\";\"main\"\n\"5151660\";\"Dalton\";\"main\"\n\"5151660\";\"Далтон\";\"other\"\n\"5151688\";\"Danville\";\"main\"\n\"5151775\";\"De Graff\";\"main\"\n\"5151861\";\"Defiance\";\"main\"\n\"5151891\";\"Delaware\";\"main\"\n\"5151891\";\"Delavarskij\";\"other\"\n\"5151891\";\"Делаварский\";\"other\"\n\"5151941\";\"Delphos\";\"main\"\n\"5151948\";\"Delta\";\"main\"\n\"5151993\";\"Dennison\";\"main\"\n\"5152017\";\"Deshler\";\"main\"\n\"5152243\";\"Dover\";\"main\"\n\"5152243\";\"Довер\";\"other\"\n\"5152278\";\"Doylestown\";\"main\"\n\"5152291\";\"Dresden\";\"main\"\n\"5152333\";\"Dublin\";\"main\"\n\"5152333\";\"Дублин\";\"other\"\n\"5152579\";\"East Canton\";\"main\"\n\"5152599\";\"East Cleveland\";\"main\"\n\"5152709\";\"East Liverpool\";\"main\"\n\"5152794\";\"East Palestine\";\"main\"\n\"5152833\";\"Eastlake\";\"main\"\n\"5152868\";\"Eaton Estates\";\"main\"\n\"5152935\";\"Edgerton\";\"main\"\n\"5152947\";\"Edgewood\";\"main\"\n\"5153068\";\"Elida\";\"main\"\n\"5153177\";\"Elmore\";\"main\"\n\"5153207\";\"Elyria\";\"main\"\n\"5153420\";\"Euclid\";\"main\"\n\"5153420\";\"Evklid\";\"other\"\n\"5153420\";\"Евклид\";\"other\"\n\"5153592\";\"Fairlawn\";\"main\"\n\"5153633\";\"Fairport Harbor\";\"main\"\n\"5153676\";\"Fairview Lanes\";\"main\"\n\"5153680\";\"Fairview Park\";\"main\"\n\"5153839\";\"Fayette\";\"main\"\n\"5153924\";\"Findlay\";\"main\"\n\"5153924\";\"Findli\";\"other\"\n\"5153924\";\"Финдли\";\"other\"\n\"5154770\";\"Forest\";\"main\"\n\"5154859\";\"Fort Loramie\";\"main\"\n\"5154873\";\"Fort Recovery\";\"main\"\n\"5154884\";\"Fort Shawnee\";\"main\"\n\"5154905\";\"Fostoria\";\"main\"\n\"5155125\";\"Frazeysburg\";\"main\"\n\"5155139\";\"Fredericktown\";\"main\"\n\"5155207\";\"Fremont\";\"main\"\n\"5155207\";\"Frimont\";\"other\"\n\"5155207\";\"Фримонт\";\"other\"\n\"5155393\";\"Gahanna\";\"main\"\n\"5155414\";\"Galion\";\"main\"\n\"5155438\";\"Gambier\";\"main\"\n\"5155499\";\"Garfield Heights\";\"main\"\n\"5155529\";\"Garrettsville\";\"main\"\n\"5155534\";\"Gates Mills\";\"main\"\n\"5155572\";\"Geneva\";\"main\"\n\"5155572\";\"Zheneva\";\"other\"\n\"5155572\";\"Женева\";\"other\"\n\"5155587\";\"Geneva-on-the-Lake\";\"main\"\n\"5155590\";\"Genoa\";\"main\"\n\"5155710\";\"Gibsonburg\";\"main\"\n\"5155755\";\"Girard\";\"main\"\n\"5155824\";\"Glendale\";\"main\"\n\"5155842\";\"Glenmoor\";\"main\"\n\"5155897\";\"Gnadenhutten\";\"main\"\n\"5156170\";\"Grafton\";\"main\"\n\"5156270\";\"Granville\";\"main\"\n\"5156371\";\"Green\";\"main\"\n\"5156409\";\"Green Springs\";\"main\"\n\"5156478\";\"Greensburg\";\"main\"\n\"5156485\";\"Greentown\";\"main\"\n\"5156493\";\"Greenville\";\"main\"\n\"5156493\";\"Grinvill\";\"other\"\n\"5156493\";\"Гринвилл\";\"other\"\n\"5156513\";\"Greenwich\";\"main\"\n\"5156513\";\"Grinvich\";\"other\"\n\"5156513\";\"Гринвич\";\"other\"\n\"5157064\";\"Hartville\";\"main\"\n\"5157262\";\"Heath\";\"main\"\n\"5157449\";\"Hicksville\";\"main\"\n\"5157449\";\"Khiksvilla\";\"other\"\n\"5157449\";\"Хиксвилла\";\"other\"\n\"5157497\";\"Highland Heights\";\"main\"\n\"5157502\";\"Highland Hills\";\"main\"\n\"5157588\";\"Hilliard\";\"main\"\n\"5157675\";\"Hiram\";\"main\"\n\"5157742\";\"Holgate\";\"main\"\n\"5157759\";\"Holland\";\"main\"\n\"5157759\";\"Gollandija\";\"other\"\n\"5157759\";\"Голландия\";\"other\"\n\"5157984\";\"Hopedale\";\"main\"\n\"5158123\";\"Howland Center\";\"main\"\n\"5158143\";\"Hubbard\";\"main\"\n\"5158156\";\"Huber Ridge\";\"main\"\n\"5158164\";\"Hudson\";\"main\"\n\"5158164\";\"Gudzon\";\"other\"\n\"5158164\";\"Гудзон\";\"other\"\n\"5158298\";\"Huron\";\"main\"\n\"5158404\";\"Independence\";\"main\"\n\"5158960\";\"Jackson Center\";\"main\"\n\"5159071\";\"Jefferson\";\"main\"\n\"5159071\";\"Dzhefferson\";\"other\"\n\"5159071\";\"Джефферсон\";\"other\"\n\"5159309\";\"Johnstown\";\"main\"\n\"5159309\";\"Dzhonstaun\";\"other\"\n\"5159309\";\"Джонстаун\";\"other\"\n\"5159421\";\"Kalida\";\"main\"\n\"5159537\";\"Kent\";\"main\"\n\"5159537\";\"Кент\";\"other\"\n\"5159554\";\"Kenton\";\"main\"\n\"5159809\";\"Kirtland\";\"main\"\n\"5159995\";\"La Croft\";\"main\"\n\"5160041\";\"Lagrange\";\"main\"\n\"5160260\";\"Lakemore\";\"main\"\n\"5160288\";\"Lakeview\";\"main\"\n\"5160315\";\"Lakewood\";\"main\"\n\"5160315\";\"Lejkvud\";\"other\"\n\"5160315\";\"Лейквуд\";\"other\"\n\"5160493\";\"Leavittsburg\";\"main\"\n\"5160548\";\"Leetonia\";\"main\"\n\"5160611\";\"Leipsic\";\"main\"\n\"5160635\";\"Lexington\";\"main\"\n\"5160635\";\"Leksington\";\"other\"\n\"5160635\";\"Лексингтон\";\"other\"\n\"5160667\";\"Liberty Center\";\"main\"\n\"5160783\";\"Lima\";\"main\"\n\"5160783\";\"Лима\";\"other\"\n\"5160854\";\"Lincoln Heights\";\"main\"\n\"5160951\";\"Lisbon\";\"main\"\n\"5161142\";\"Lodi\";\"main\"\n\"5161142\";\"Лоди\";\"other\"\n\"5161262\";\"Lorain\";\"main\"\n\"5161262\";\"Lorejn\";\"other\"\n\"5161262\";\"Лорейн\";\"other\"\n\"5161301\";\"Lordstown\";\"main\"\n\"5161340\";\"Loudonville\";\"main\"\n\"5161347\";\"Louisville\";\"main\"\n\"5161347\";\"Luisvil\";\"other\"\n\"5161347\";\"Луисвил\";\"other\"\n\"5161382\";\"Lowellville\";\"main\"\n\"5161493\";\"Lyndhurst\";\"main\"\n\"5161539\";\"Macedonia\";\"main\"\n\"5161567\";\"Madison\";\"main\"\n\"5161567\";\"Мадисон\";\"other\"\n\"5161684\";\"Malvern\";\"main\"\n\"5161693\";\"Manchester\";\"main\"\n\"5161723\";\"Mansfield\";\"main\"\n\"5161723\";\"Mehnsfild\";\"other\"\n\"5161723\";\"Мэнсфилд\";\"other\"\n\"5161741\";\"Mantua\";\"main\"\n\"5161742\";\"Mantua\";\"main\"\n\"5161803\";\"Maple Heights\";\"main\"\n\"5161902\";\"Marion\";\"main\"\n\"5161902\";\"Mehrion\";\"other\"\n\"5161902\";\"Мэрион\";\"other\"\n\"5162044\";\"Martins Ferry\";\"main\"\n\"5162077\";\"Marysville\";\"main\"\n\"5162097\";\"Massillon\";\"main\"\n\"5162119\";\"Masury\";\"main\"\n\"5162137\";\"Maumee\";\"main\"\n\"5162180\";\"Mayfield\";\"main\"\n\"5162188\";\"Mayfield Heights\";\"main\"\n\"5162260\";\"McComb\";\"main\"\n\"5162297\";\"McDonald\";\"main\"\n\"5162494\";\"Mechanicsburg\";\"main\"\n\"5162512\";\"Medina\";\"main\"\n\"5162512\";\"Медина\";\"other\"\n\"5162645\";\"Mentor\";\"main\"\n\"5162672\";\"Mentor-on-the-Lake\";\"main\"\n\"5162851\";\"Middleburg Heights\";\"main\"\n\"5162859\";\"Middlefield\";\"main\"\n\"5162920\";\"Milan\";\"main\"\n\"5163008\";\"Millbury\";\"main\"\n\"5163076\";\"Millersburg\";\"main\"\n\"5163137\";\"Mineral Ridge\";\"main\"\n\"5163143\";\"Minerva\";\"main\"\n\"5163149\";\"Minerva Park\";\"main\"\n\"5163160\";\"Mingo Junction\";\"main\"\n\"5163176\";\"Minster\";\"main\"\n\"5163244\";\"Mogadore\";\"main\"\n\"5163346\";\"Monroeville\";\"main\"\n\"5163375\";\"Montpelier\";\"main\"\n\"5163448\";\"Moreland Hills\";\"main\"\n\"5163613\";\"Mount Carmel\";\"main\"\n\"5163631\";\"Mount Gilead\";\"main\"\n\"5163799\";\"Mount Vernon\";\"main\"\n\"5163968\";\"Munroe Falls\";\"main\"\n\"5164057\";\"Napoleon\";\"main\"\n\"5164101\";\"Navarre\";\"main\"\n\"5164142\";\"Neffs\";\"main\"\n\"5164202\";\"New Albany\";\"main\"\n\"5164202\";\"N'ju-Albani\";\"other\"\n\"5164202\";\"Нью-Албани\";\"other\"\n\"5164239\";\"New Bremen\";\"main\"\n\"5164274\";\"New Franklin\";\"main\"\n\"5164352\";\"New London\";\"main\"\n\"5164352\";\"N'ju-London\";\"other\"\n\"5164352\";\"Nova Londres\";\"other\"\n\"5164352\";\"Нью-Лондон\";\"other\"\n\"5164371\";\"New Middletown\";\"main\"\n\"5164390\";\"New Philadelphia\";\"main\"\n\"5164449\";\"New Waterford\";\"main\"\n\"5164466\";\"Newark\";\"main\"\n\"5164466\";\"N'juark\";\"other\"\n\"5164466\";\"Ньюарк\";\"other\"\n\"5164488\";\"Newburgh Heights\";\"main\"\n\"5164500\";\"Newcomerstown\";\"main\"\n\"5164541\";\"Newton Falls\";\"main\"\n\"5164582\";\"Niles\";\"main\"\n\"5164653\";\"North Baltimore\";\"main\"\n\"5164706\";\"North Canton\";\"main\"\n\"5164812\";\"North Kingsville\";\"main\"\n\"5164826\";\"North Lewisburg\";\"main\"\n\"5164840\";\"North Madison\";\"main\"\n\"5164862\";\"North Olmsted\";\"main\"\n\"5164903\";\"North Ridgeville\";\"main\"\n\"5164916\";\"North Royalton\";\"main\"\n\"5164998\";\"Northfield\";\"main\"\n\"5165067\";\"Northwood\";\"main\"\n\"5165069\";\"Northwood\";\"main\"\n\"5165087\";\"Norton\";\"main\"\n\"5165101\";\"Norwalk\";\"main\"\n\"5165215\";\"Oak Harbor\";\"main\"\n\"5165223\";\"Oak Hill\";\"main\"\n\"5165311\";\"Oakwood\";\"main\"\n\"5165445\";\"Oberlin\";\"main\"\n\"5165635\";\"Olmsted Falls\";\"main\"\n\"5165664\";\"Ontario\";\"main\"\n\"5165664\";\"Онтарио\";\"other\"\n\"5165695\";\"Orange\";\"main\"\n\"5165734\";\"Oregon\";\"main\"\n\"5165734\";\"Орегон\";\"other\"\n\"5165755\";\"Orrville\";\"main\"\n\"5165763\";\"Orwell\";\"main\"\n\"5165801\";\"Ottawa\";\"main\"\n\"5165812\";\"Ottawa Hills\";\"main\"\n\"5166009\";\"Painesville\";\"main\"\n\"5166061\";\"Pandora\";\"main\"\n\"5166177\";\"Parma\";\"main\"\n\"5166177\";\"brma\";\"other\"\n\"5166177\";\"Парма\";\"other\"\n\"5166177\";\"برما\";\"other\"\n\"5166184\";\"Parma Heights\";\"main\"\n\"5166253\";\"Paulding\";\"main\"\n\"5166334\";\"Payne\";\"main\"\n\"5166372\";\"Pemberville\";\"main\"\n\"5166438\";\"Pepper Pike\";\"main\"\n\"5166468\";\"Perry\";\"main\"\n\"5166482\";\"Perry Heights\";\"main\"\n\"5166516\";\"Perrysburg\";\"main\"\n\"5166791\";\"Pioneer\";\"main\"\n\"5166819\";\"Piqua\";\"main\"\n\"5166865\";\"Plain City\";\"main\"\n\"5166958\";\"Pleasant Hill\";\"main\"\n\"5167166\";\"Plymouth\";\"main\"\n\"5167166\";\"Plimut\";\"other\"\n\"5167166\";\"Плимут\";\"other\"\n\"5167196\";\"Poland\";\"main\"\n\"5167259\";\"Port Clinton\";\"main\"\n\"5167293\";\"Portage Lakes\";\"main\"\n\"5167350\";\"Powell\";\"main\"\n\"5167479\";\"Prospect\";\"main\"\n\"5167737\";\"Ravenna\";\"main\"\n\"5167903\";\"Reminderville\";\"main\"\n\"5168025\";\"Richfield\";\"main\"\n\"5168063\";\"Richmond Heights\";\"main\"\n\"5168085\";\"Richwood\";\"main\"\n\"5168225\";\"Rittman\";\"main\"\n\"5168341\";\"Roaming Shores\";\"main\"\n\"5168450\";\"Rockford\";\"main\"\n\"5168451\";\"Rockford\";\"main\"\n\"5168491\";\"Rocky River\";\"main\"\n\"5168673\";\"Rossford\";\"main\"\n\"5168837\";\"Russells Point\";\"main\"\n\"5169130\";\"Saint Clairsville\";\"main\"\n\"5169242\";\"Saint Henry\";\"main\"\n\"5169796\";\"Saint Marys\";\"main\"\n\"5170013\";\"Saint Paris\";\"main\"\n\"5170511\";\"Salem\";\"main\"\n\"5170511\";\"Sejlem\";\"other\"\n\"5170511\";\"Сейлем\";\"other\"\n\"5170610\";\"Salineville\";\"main\"\n\"5170691\";\"Sandusky\";\"main\"\n\"5171555\";\"Sebring\";\"main\"\n\"5171657\";\"Seven Hills\";\"main\"\n\"5171681\";\"Seville\";\"main\"\n\"5171728\";\"Shaker Heights\";\"main\"\n\"5171854\";\"Sheffield\";\"main\"\n\"5171856\";\"Sheffield Lake\";\"main\"\n\"5171868\";\"Shelby\";\"main\"\n\"5171949\";\"Sherwood\";\"main\"\n\"5172048\";\"Shreve\";\"main\"\n\"5172078\";\"Sidney\";\"main\"\n\"5172078\";\"Sidnej\";\"other\"\n\"5172078\";\"Сидней\";\"other\"\n\"5172120\";\"Silver Lake\";\"main\"\n\"5172321\";\"Smithville\";\"main\"\n\"5172387\";\"Solon\";\"main\"\n\"5172387\";\"Солон\";\"other\"\n\"5172425\";\"South Amherst\";\"main\"\n\"5172460\";\"South Canal\";\"main\"\n\"5172485\";\"South Euclid\";\"main\"\n\"5172589\";\"South Russell\";\"main\"\n\"5172710\";\"Spencerville\";\"main\"\n\"5173048\";\"Steubenville\";\"main\"\n\"5173171\";\"Stow\";\"main\"\n\"5173171\";\"Stou\";\"other\"\n\"5173171\";\"Стоу\";\"other\"\n\"5173189\";\"Strasburg\";\"main\"\n\"5173210\";\"Streetsboro\";\"main\"\n\"5173237\";\"Strongsville\";\"main\"\n\"5173256\";\"Struthers\";\"main\"\n\"5173264\";\"Stryker\";\"main\"\n\"5173354\";\"Sugarcreek\";\"main\"\n\"5173412\";\"Sunbury\";\"main\"\n\"5173514\";\"Swanton\";\"main\"\n\"5173572\";\"Sylvania\";\"main\"\n\"5173623\";\"Tallmadge\";\"main\"\n\"5173930\";\"Tiffin\";\"main\"\n\"5173962\";\"Tiltonsville\";\"main\"\n\"5174035\";\"Toledo\";\"main\"\n\"5174035\";\"toredo\";\"other\"\n\"5174035\";\"tuo lai duo\";\"other\"\n\"5174035\";\"Толедо\";\"other\"\n\"5174035\";\"トレド\";\"other\"\n\"5174035\";\"托莱多\";\"other\"\n\"5174095\";\"Toronto\";\"main\"\n\"5174358\";\"Troy\";\"main\"\n\"5174358\";\"Troja\";\"other\"\n\"5174358\";\"Троя\";\"other\"\n\"5174550\";\"Twinsburg\";\"main\"\n\"5174585\";\"Uhrichsville\";\"main\"\n\"5174660\";\"Union City\";\"main\"\n\"5174660\";\"Junion-Siti\";\"other\"\n\"5174660\";\"Юнион-Сити\";\"other\"\n\"5174747\";\"Uniontown\";\"main\"\n\"5174830\";\"University Heights\";\"main\"\n\"5174870\";\"Upper Sandusky\";\"main\"\n\"5174897\";\"Urbana\";\"main\"\n\"5174897\";\"Урбана\";\"other\"\n\"5174913\";\"Utica\";\"main\"\n\"5174958\";\"Valley View\";\"main\"\n\"5175072\";\"Vermilion\";\"main\"\n\"5175079\";\"Van Wert\";\"main\"\n\"5175080\";\"Vermilion-on-the-Lake\";\"main\"\n\"5175092\";\"Versailles\";\"main\"\n\"5175496\";\"Wadsworth\";\"main\"\n\"5175538\";\"Walbridge\";\"main\"\n\"5175655\";\"Walton Hills\";\"main\"\n\"5175670\";\"Wapakoneta\";\"main\"\n\"5175726\";\"Warrensville Heights\";\"main\"\n\"5175847\";\"Waterville\";\"main\"\n\"5175865\";\"Warren\";\"main\"\n\"5175865\";\"Uorren\";\"other\"\n\"5175865\";\"Уоррен\";\"other\"\n\"5175877\";\"Wauseon\";\"main\"\n\"5175935\";\"Waynesburg\";\"main\"\n\"5176023\";\"Wellington\";\"main\"\n\"5176023\";\"Vellington\";\"other\"\n\"5176023\";\"Веллингтон\";\"other\"\n\"5176047\";\"Wellsville\";\"main\"\n\"5176266\";\"West Hill\";\"main\"\n\"5176283\";\"West Lafayette\";\"main\"\n\"5176283\";\"Zapadnyj Lafajet\";\"other\"\n\"5176283\";\"Западный Лафайет\";\"other\"\n\"5176304\";\"West Liberty\";\"main\"\n\"5176378\";\"West Salem\";\"main\"\n\"5176423\";\"West Unity\";\"main\"\n\"5176472\";\"Westerville\";\"main\"\n\"5176490\";\"Westfield Center\";\"main\"\n\"5176517\";\"Westlake\";\"main\"\n\"5176550\";\"Weston\";\"main\"\n\"5176550\";\"Uehston\";\"other\"\n\"5176550\";\"Уэстон\";\"other\"\n\"5176713\";\"Whitehouse\";\"main\"\n\"5176759\";\"Wickliffe\";\"main\"\n\"5176830\";\"Willard\";\"main\"\n\"5176937\";\"Willoughby\";\"main\"\n\"5176937\";\"Uilloubi\";\"other\"\n\"5176937\";\"Уиллоуби\";\"other\"\n\"5176942\";\"Willoughby Hills\";\"main\"\n\"5177007\";\"Willowick\";\"main\"\n\"5177082\";\"Windham\";\"main\"\n\"5177162\";\"Wintersville\";\"main\"\n\"5177337\";\"Woodville\";\"main\"\n\"5177358\";\"Wooster\";\"main\"\n\"5177358\";\"Vuster\";\"other\"\n\"5177358\";\"Вустер\";\"other\"\n\"5177396\";\"Worthington\";\"main\"\n\"5177557\";\"Yorkville\";\"main\"\n\"5177568\";\"Youngstown\";\"main\"\n\"5177874\";\"Adamstown\";\"main\"\n\"5177922\";\"Akron\";\"main\"\n\"5177922\";\"Акрон\";\"other\"\n\"5177944\";\"Albion\";\"main\"\n\"5177945\";\"Albion\";\"main\"\n\"5177951\";\"Alburtis\";\"main\"\n\"5178027\";\"Aliquippa\";\"main\"\n\"5178127\";\"Allentown\";\"main\"\n\"5178127\";\"Allenschteddel\";\"other\"\n\"5178127\";\"Allentaun\";\"other\"\n\"5178127\";\"Аллентаун\";\"other\"\n\"5178166\";\"Almedia\";\"main\"\n\"5178183\";\"Altamont\";\"main\"\n\"5178195\";\"Altoona\";\"main\"\n\"5178195\";\"Altuna\";\"other\"\n\"5178195\";\"Алтуна\";\"other\"\n\"5178225\";\"Ambler\";\"main\"\n\"5178228\";\"Ambridge\";\"main\"\n\"5178254\";\"Amity Gardens\";\"main\"\n\"5178280\";\"Ancient Oaks\";\"main\"\n\"5178351\";\"Annville\";\"main\"\n\"5178393\";\"Apollo\";\"main\"\n\"5178450\";\"Archbald\";\"main\"\n\"5178481\";\"Ardmore\";\"main\"\n\"5178489\";\"Arlington Heights\";\"main\"\n\"5178527\";\"Arnold\";\"main\"\n\"5178527\";\"Arnol'd\";\"other\"\n\"5178527\";\"Арнольд\";\"other\"\n\"5178597\";\"Ashland\";\"main\"\n\"5178612\";\"Ashley\";\"main\"\n\"5178632\";\"Aspinwall\";\"main\"\n\"5178651\";\"Athens\";\"main\"\n\"5178686\";\"Audubon\";\"main\"\n\"5178724\";\"Avalon\";\"main\"\n\"5178736\";\"Avis\";\"main\"\n\"5178741\";\"Avoca\";\"main\"\n\"5178743\";\"Avon\";\"main\"\n\"5178748\";\"Avonia\";\"main\"\n\"5178800\";\"Back Mountain\";\"main\"\n\"5178806\";\"Baden\";\"main\"\n\"5178824\";\"Baidland\";\"main\"\n\"5178940\";\"Baldwin\";\"main\"\n\"5178975\";\"Bally\";\"main\"\n\"5178996\";\"Bangor\";\"main\"\n\"5178996\";\"Бангор\";\"other\"\n\"5179102\";\"Barnesboro\";\"main\"\n\"5179193\";\"Bath\";\"main\"\n\"5179446\";\"Beaver\";\"main\"\n\"5179478\";\"Beaver Falls\";\"main\"\n\"5179630\";\"Bedford\";\"main\"\n\"5179630\";\"Бедфорд\";\"other\"\n\"5179641\";\"Bedminster\";\"main\"\n\"5179751\";\"Bell Acres\";\"main\"\n\"5179756\";\"Belfast\";\"main\"\n\"5179794\";\"Belle Vernon\";\"main\"\n\"5179799\";\"Bellefonte\";\"main\"\n\"5179809\";\"Belleville\";\"main\"\n\"5179811\";\"Bellevue\";\"main\"\n\"5179845\";\"Bellwood\";\"main\"\n\"5179856\";\"Belmont\";\"main\"\n\"5179856\";\"Белмонт\";\"other\"\n\"5179911\";\"Ben Avon\";\"main\"\n\"5180021\";\"Bentleyville\";\"main\"\n\"5180106\";\"Bessemer\";\"main\"\n\"5180119\";\"Berwick\";\"main\"\n\"5180199\";\"Bethel Park\";\"main\"\n\"5180225\";\"Bethlehem\";\"main\"\n\"5180225\";\"Vifleem\";\"other\"\n\"5180225\";\"Вифлеем\";\"other\"\n\"5180308\";\"Big Beaver\";\"main\"\n\"5180620\";\"Birdsboro\";\"main\"\n\"5180709\";\"Black Lick\";\"main\"\n\"5180834\";\"Blairsville\";\"main\"\n\"5180843\";\"Blakely\";\"main\"\n\"5180876\";\"Blawnox\";\"main\"\n\"5180905\";\"Bloomfield\";\"main\"\n\"5180934\";\"Bloomsburg\";\"main\"\n\"5180948\";\"Blossburg\";\"main\"\n\"5180961\";\"Blue Bell\";\"main\"\n\"5181063\";\"Boalsburg\";\"main\"\n\"5181134\";\"Boiling Springs\";\"main\"\n\"5181248\";\"Boswell\";\"main\"\n\"5181375\";\"Boyertown\";\"main\"\n\"5181390\";\"Brackenridge\";\"main\"\n\"5181396\";\"Braddock\";\"main\"\n\"5181400\";\"Braddock Hills\";\"main\"\n\"5181407\";\"Bradford\";\"main\"\n\"5181428\";\"Bradford Woods\";\"main\"\n\"5181553\";\"Brentwood\";\"main\"\n\"5181605\";\"Brickerville\";\"main\"\n\"5181624\";\"Bridgeport\";\"main\"\n\"5181636\";\"Bridgeville\";\"main\"\n\"5181688\";\"Bristol\";\"main\"\n\"5181752\";\"Brockway\";\"main\"\n\"5181761\";\"Brodheadsville\";\"main\"\n\"5181828\";\"Brookville\";\"main\"\n\"5181946\";\"Brownsville\";\"main\"\n\"5182059\";\"Bryn Athyn\";\"main\"\n\"5182063\";\"Bryn Mawr\";\"main\"\n\"5182064\";\"Bryn Mawr\";\"main\"\n\"5182414\";\"Burgettstown\";\"main\"\n\"5182434\";\"Burnham\";\"main\"\n\"5182534\";\"Butler\";\"main\"\n\"5182733\";\"California\";\"main\"\n\"5182842\";\"Cambridge Springs\";\"main\"\n\"5182928\";\"Camp Hill\";\"main\"\n\"5183096\";\"Campbelltown\";\"main\"\n\"5183161\";\"Canonsburg\";\"main\"\n\"5183169\";\"Canton\";\"main\"\n\"5183204\";\"Carbondale\";\"main\"\n\"5183234\";\"Carlisle\";\"main\"\n\"5183339\";\"Carrolltown\";\"main\"\n\"5183416\";\"Castanea\";\"main\"\n\"5183428\";\"Castle Shannon\";\"main\"\n\"5183438\";\"Catasauqua\";\"main\"\n\"5183443\";\"Catawissa\";\"main\"\n\"5183683\";\"Centerville\";\"main\"\n\"5183709\";\"Central City\";\"main\"\n\"5183766\";\"Centre Hall\";\"main\"\n\"5183803\";\"Chalfont\";\"main\"\n\"5183891\";\"Charleroi\";\"main\"\n\"5184086\";\"Chesterbrook\";\"main\"\n\"5184178\";\"Cheswick\";\"main\"\n\"5184181\";\"Chevy Chase Heights\";\"main\"\n\"5184197\";\"Chicora\";\"main\"\n\"5184346\";\"Churchill\";\"main\"\n\"5184359\";\"Churchville\";\"main\"\n\"5184396\";\"Clairton\";\"main\"\n\"5184422\";\"Clarion\";\"main\"\n\"5184469\";\"Clarks Green\";\"main\"\n\"5184490\";\"Clarks Summit\";\"main\"\n\"5184505\";\"Claysburg\";\"main\"\n\"5184541\";\"Clearfield\";\"main\"\n\"5184584\";\"Cleona\";\"main\"\n\"5184686\";\"Clymer\";\"main\"\n\"5184748\";\"Coaldale\";\"main\"\n\"5184806\";\"Cochranton\";\"main\"\n\"5184966\";\"Collegeville\";\"main\"\n\"5185006\";\"Colonial Park\";\"main\"\n\"5185029\";\"Columbia\";\"main\"\n\"5185029\";\"Kolumbija\";\"other\"\n\"5185029\";\"Колумбия\";\"other\"\n\"5185052\";\"Colver\";\"main\"\n\"5185128\";\"Conemaugh\";\"main\"\n\"5185237\";\"Connellsville\";\"main\"\n\"5185267\";\"Conshohocken\";\"main\"\n\"5185284\";\"Conway\";\"main\"\n\"5185284\";\"Konvej\";\"other\"\n\"5185284\";\"Конвей\";\"other\"\n\"5185289\";\"Conyngham\";\"main\"\n\"5185380\";\"Coopersburg\";\"main\"\n\"5185397\";\"Coplay\";\"main\"\n\"5185408\";\"Coraopolis\";\"main\"\n\"5185465\";\"Cornwall\";\"main\"\n\"5185490\";\"Corry\";\"main\"\n\"5185531\";\"Coudersport\";\"main\"\n\"5185721\";\"Crafton\";\"main\"\n\"5185861\";\"Cresson\";\"main\"\n\"5185866\";\"Cressona\";\"main\"\n\"5186053\";\"Croydon\";\"main\"\n\"5186171\";\"Curtisville\";\"main\"\n\"5186172\";\"Curwensville\";\"main\"\n\"5186244\";\"Dale\";\"main\"\n\"5186266\";\"Dallas\";\"main\"\n\"5186266\";\"Даллас\";\"other\"\n\"5186267\";\"Dalton\";\"main\"\n\"5186267\";\"Далтон\";\"other\"\n\"5186327\";\"Danville\";\"main\"\n\"5186420\";\"Davidsville\";\"main\"\n\"5186717\";\"Delmont\";\"main\"\n\"5186775\";\"Derry\";\"main\"\n\"5186775\";\"Derri\";\"other\"\n\"5186775\";\"Дерри\";\"other\"\n\"5186794\";\"Denver\";\"main\"\n\"5186794\";\"Денвер\";\"other\"\n\"5186924\";\"Dickson City\";\"main\"\n\"5186962\";\"Dillsburg\";\"main\"\n\"5187134\";\"Donora\";\"main\"\n\"5187150\";\"Dormont\";\"main\"\n\"5187215\";\"Dover\";\"main\"\n\"5187215\";\"Довер\";\"other\"\n\"5187232\";\"Downingtown\";\"main\"\n\"5187247\";\"Doylestown\";\"main\"\n\"5187248\";\"Doylestown\";\"main\"\n\"5187286\";\"Dravosburg\";\"main\"\n\"5187432\";\"Du Bois\";\"main\"\n\"5187443\";\"Dublin\";\"main\"\n\"5187443\";\"Дублин\";\"other\"\n\"5187453\";\"Duboistown\";\"main\"\n\"5187506\";\"Duncannon\";\"main\"\n\"5187508\";\"Duncansville\";\"main\"\n\"5187542\";\"Dunmore\";\"main\"\n\"5187573\";\"Dunnstown\";\"main\"\n\"5187577\";\"Dupont\";\"main\"\n\"5187580\";\"Duquesne\";\"main\"\n\"5187611\";\"Duryea\";\"main\"\n\"5187727\";\"Eagleville\";\"main\"\n\"5187767\";\"East Berwick\";\"main\"\n\"5187772\";\"East Brady\";\"main\"\n\"5187874\";\"East Conemaugh\";\"main\"\n\"5187925\";\"East Greenville\";\"main\"\n\"5187987\";\"East McKeesport\";\"main\"\n\"5188004\";\"East Norriton\";\"main\"\n\"5188022\";\"East Petersburg\";\"main\"\n\"5188029\";\"East Pittsburgh\";\"main\"\n\"5188075\";\"East Stroudsburg\";\"main\"\n\"5188105\";\"East Washington\";\"main\"\n\"5188133\";\"Eastlawn Gardens\";\"main\"\n\"5188140\";\"Easton\";\"main\"\n\"5188140\";\"Iston\";\"other\"\n\"5188140\";\"Истон\";\"other\"\n\"5188193\";\"Ebensburg\";\"main\"\n\"5188236\";\"Economy\";\"main\"\n\"5188284\";\"Edgewood\";\"main\"\n\"5188287\";\"Edgewood\";\"main\"\n\"5188302\";\"Edgeworth\";\"main\"\n\"5188306\";\"Edinboro\";\"main\"\n\"5188347\";\"Edwardsville\";\"main\"\n\"5188465\";\"Elizabeth\";\"main\"\n\"5188465\";\"Ehlizabet\";\"other\"\n\"5188465\";\"Элизабет\";\"other\"\n\"5188469\";\"Elim\";\"main\"\n\"5188474\";\"Elizabethtown\";\"main\"\n\"5188474\";\"Ehlizabettaun\";\"other\"\n\"5188474\";\"Элизабеттаун\";\"other\"\n\"5188482\";\"Elizabethville\";\"main\"\n\"5188549\";\"Elkland\";\"main\"\n\"5188602\";\"Ellsworth\";\"main\"\n\"5188607\";\"Ellport\";\"main\"\n\"5188609\";\"Ellwood City\";\"main\"\n\"5188659\";\"Elverson\";\"main\"\n\"5188667\";\"Elysburg\";\"main\"\n\"5188708\";\"Emigsville\";\"main\"\n\"5188726\";\"Emmaus\";\"main\"\n\"5188737\";\"Emporium\";\"main\"\n\"5188743\";\"Emsworth\";\"main\"\n\"5188793\";\"Enola\";\"main\"\n\"5188815\";\"Ephrata\";\"main\"\n\"5188843\";\"Erie\";\"main\"\n\"5188843\";\"Ehri\";\"other\"\n\"5188843\";\"yi li\";\"other\"\n\"5188843\";\"Érié\";\"other\"\n\"5188843\";\"Эри\";\"other\"\n\"5188843\";\"伊利\";\"other\"\n\"5188890\";\"Espy\";\"main\"\n\"5188904\";\"Etna\";\"main\"\n\"5188935\";\"Evans City\";\"main\"\n\"5188948\";\"Evansburg\";\"main\"\n\"5188960\";\"Everett\";\"main\"\n\"5188960\";\"Ehverett\";\"other\"\n\"5188960\";\"Эверетт\";\"other\"\n\"5189004\";\"Exeter\";\"main\"\n\"5189022\";\"Exton\";\"main\"\n\"5189041\";\"Factoryville\";\"main\"\n\"5189042\";\"Factoryville\";\"main\"\n\"5189091\";\"Fairless Hills\";\"main\"\n\"5189124\";\"Fairview\";\"main\"\n\"5189377\";\"Farrell\";\"main\"\n\"5189482\";\"Ferndale\";\"main\"\n\"5189493\";\"Fernway\";\"main\"\n\"5189828\";\"Fleetwood\";\"main\"\n\"5189839\";\"Flemington\";\"main\"\n\"5189872\";\"Flourtown\";\"main\"\n\"5189888\";\"Flying Hills\";\"main\"\n\"5189947\";\"Ford City\";\"main\"\n\"5189963\";\"Forest City\";\"main\"\n\"5189981\";\"Forest Hills\";\"main\"\n\"5190089\";\"Fort Washington\";\"main\"\n\"5190089\";\"Fort Vashington\";\"other\"\n\"5190089\";\"Форт Вашингтон\";\"other\"\n\"5190115\";\"Forty Fort\";\"main\"\n\"5190150\";\"Fountain Hill\";\"main\"\n\"5190213\";\"Fox Chapel\";\"main\"\n\"5190247\";\"Fox Run\";\"main\"\n\"5190282\";\"Frackville\";\"main\"\n\"5190323\";\"Franklin\";\"main\"\n\"5190323\";\"Франклин\";\"other\"\n\"5190360\";\"Franklin Park\";\"main\"\n\"5190437\";\"Fredericksburg\";\"main\"\n\"5190437\";\"Frederiksburg\";\"other\"\n\"5190437\";\"Фредериксбург\";\"other\"\n\"5190462\";\"Freedom\";\"main\"\n\"5190469\";\"Freeland\";\"main\"\n\"5190486\";\"Freeport\";\"main\"\n\"5190503\";\"Freemansburg\";\"main\"\n\"5190547\";\"Friedens\";\"main\"\n\"5190679\";\"Fullerton\";\"main\"\n\"5190679\";\"Фуллертон\";\"other\"\n\"5190743\";\"Galeton\";\"main\"\n\"5190769\";\"Gallitzin\";\"main\"\n\"5190808\";\"Garden View\";\"main\"\n\"5190870\";\"Gastonville\";\"main\"\n\"5190928\";\"Geistown\";\"main\"\n\"5191093\";\"Gilbertsville\";\"main\"\n\"5191161\";\"Girard\";\"main\"\n\"5191169\";\"Girardville\";\"main\"\n\"5191236\";\"Glassport\";\"main\"\n\"5191279\";\"Glen Lyon\";\"main\"\n\"5191291\";\"Glenburn\";\"main\"\n\"5191327\";\"Glenside\";\"main\"\n\"5191925\";\"Green Tree\";\"main\"\n\"5192019\";\"Greenville\";\"main\"\n\"5192019\";\"Grinvill\";\"other\"\n\"5192019\";\"Гринвилл\";\"other\"\n\"5192029\";\"Greensburg\";\"main\"\n\"5192184\";\"Grove City\";\"main\"\n\"5192391\";\"Halfway House\";\"main\"\n\"5192413\";\"Hallam\";\"main\"\n\"5192431\";\"Hallstead\";\"main\"\n\"5192444\";\"Hamburg\";\"main\"\n\"5192662\";\"Harleysville\";\"main\"\n\"5192726\";\"Harrisburg\";\"main\"\n\"5192726\";\"Harrisbarrig\";\"other\"\n\"5192726\";\"Kharisburg\";\"other\"\n\"5192726\";\"ha li si bao\";\"other\"\n\"5192726\";\"harisubagu\";\"other\"\n\"5192726\";\"Харисбърг\";\"other\"\n\"5192726\";\"ハリスバーグ\";\"other\"\n\"5192726\";\"哈里斯堡\";\"other\"\n\"5192840\";\"Harveys Lake\";\"main\"\n\"5192858\";\"Hastings\";\"main\"\n\"5192858\";\"Khejstings\";\"other\"\n\"5192858\";\"Хейстингс\";\"other\"\n\"5192861\";\"Hasson Heights\";\"main\"\n\"5192863\";\"Hatboro\";\"main\"\n\"5192878\";\"Hatfield\";\"main\"\n\"5192925\";\"Hawley\";\"main\"\n\"5193011\";\"Hazleton\";\"main\"\n\"5193133\";\"Heidelberg\";\"main\"\n\"5193149\";\"Hellertown\";\"main\"\n\"5193309\";\"Hermitage\";\"main\"\n\"5193342\";\"Hershey\";\"main\"\n\"5193599\";\"Highland Park\";\"main\"\n\"5193599\";\"Khajlend Park\";\"other\"\n\"5193599\";\"Хайленд Парк\";\"other\"\n\"5193622\";\"Highspire\";\"main\"\n\"5193684\";\"Hiller\";\"main\"\n\"5193863\";\"Hokendauqua\";\"main\"\n\"5193920\";\"Hollidaysburg\";\"main\"\n\"5194057\";\"Homer City\";\"main\"\n\"5194067\";\"Homestead\";\"main\"\n\"5194076\";\"Hometown\";\"main\"\n\"5194099\";\"Honesdale\";\"main\"\n\"5194100\";\"Honey Brook\";\"main\"\n\"5194302\";\"Horsham\";\"main\"\n\"5194366\";\"Houserville\";\"main\"\n\"5194369\";\"Houston\";\"main\"\n\"5194369\";\"Kh'juston\";\"other\"\n\"5194369\";\"Хьюстон\";\"other\"\n\"5194479\";\"Hughestown\";\"main\"\n\"5194481\";\"Hughesville\";\"main\"\n\"5194513\";\"Hummelstown\";\"main\"\n\"5194590\";\"Huntingdon\";\"main\"\n\"5194656\";\"Hyde\";\"main\"\n\"5194868\";\"Indiana\";\"main\"\n\"5194868\";\"Индиана\";\"other\"\n\"5194892\";\"Industry\";\"main\"\n\"5194912\";\"Ingram\";\"main\"\n\"5194914\";\"Industry\";\"main\"\n\"5195024\";\"Irwin\";\"main\"\n\"5195283\";\"Jeannette\";\"main\"\n\"5195297\";\"Jefferson Hills\";\"main\"\n\"5195363\";\"Jenkintown\";\"main\"\n\"5195399\";\"Jermyn\";\"main\"\n\"5195405\";\"Jerome\";\"main\"\n\"5195416\";\"Jersey Shore\";\"main\"\n\"5195437\";\"Jessup\";\"main\"\n\"5195460\";\"Jim Thorpe\";\"main\"\n\"5195549\";\"Johnsonburg\";\"main\"\n\"5195550\";\"Johnsonburg\";\"main\"\n\"5195561\";\"Johnstown\";\"main\"\n\"5195561\";\"Dzhonstaun\";\"other\"\n\"5195561\";\"Джонстаун\";\"other\"\n\"5195606\";\"Jonestown\";\"main\"\n\"5195728\";\"Kane\";\"main\"\n\"5195978\";\"Kenhorst\";\"main\"\n\"5195980\";\"Kenilworth\";\"main\"\n\"5196220\";\"King of Prussia\";\"main\"\n\"5196245\";\"Kingston\";\"main\"\n\"5196245\";\"Кингстон\";\"other\"\n\"5196357\";\"Kittanning\";\"main\"\n\"5196465\";\"Knox\";\"main\"\n\"5196601\";\"Kulpmont\";\"main\"\n\"5196605\";\"Kulpsville\";\"main\"\n\"5196621\";\"Kutztown\";\"main\"\n\"5196713\";\"Laflin\";\"main\"\n\"5196767\";\"Lake City\";\"main\"\n\"5196977\";\"Lake Wynonah\";\"main\"\n\"5197079\";\"Lancaster\";\"main\"\n\"5197079\";\"Lankast\\\"r\";\"other\"\n\"5197079\";\"Lankaster\";\"other\"\n\"5197079\";\"Lengeschder\";\"other\"\n\"5197079\";\"Ланкастер\";\"other\"\n\"5197079\";\"Ланкастър\";\"other\"\n\"5197140\";\"Langhorne\";\"main\"\n\"5197159\";\"Lansdale\";\"main\"\n\"5197163\";\"Lansford\";\"main\"\n\"5197190\";\"Larksville\";\"main\"\n\"5197227\";\"Latrobe\";\"main\"\n\"5197398\";\"Laureldale\";\"main\"\n\"5197435\";\"Lawnton\";\"main\"\n\"5197445\";\"Lawrence Park\";\"main\"\n\"5197446\";\"Lawrence Park\";\"main\"\n\"5197463\";\"Lawson Heights\";\"main\"\n\"5197517\";\"Lebanon\";\"main\"\n\"5197568\";\"Leechburg\";\"main\"\n\"5197590\";\"Leesport\";\"main\"\n\"5197594\";\"Leetsdale\";\"main\"\n\"5197673\";\"Lehighton\";\"main\"\n\"5197723\";\"Lemont\";\"main\"\n\"5197725\";\"Lemoyne\";\"main\"\n\"5197732\";\"Lenape Heights\";\"main\"\n\"5197796\";\"Levittown\";\"main\"\n\"5197842\";\"Lewisburg\";\"main\"\n\"5197850\";\"Lewistown\";\"main\"\n\"5197865\";\"Liberty\";\"main\"\n\"5197989\";\"Ligonier\";\"main\"\n\"5198062\";\"Lincoln\";\"main\"\n\"5198062\";\"Linkol'n\";\"other\"\n\"5198062\";\"Линкольн\";\"other\"\n\"5198166\";\"Linesville\";\"main\"\n\"5198180\";\"Linglestown\";\"main\"\n\"5198192\";\"Linntown\";\"main\"\n\"5198218\";\"Lititz\";\"main\"\n\"5198635\";\"Lock Haven\";\"main\"\n\"5198980\";\"Lorane\";\"main\"\n\"5198988\";\"Loretto\";\"main\"\n\"5199075\";\"Lower Allen\";\"main\"\n\"5199087\";\"Lower Burrell\";\"main\"\n\"5199308\";\"Luzerne\";\"main\"\n\"5199324\";\"Lykens\";\"main\"\n\"5199439\";\"Macungie\";\"main\"\n\"5199494\";\"Mahanoy City\";\"main\"\n\"5199600\";\"Malvern\";\"main\"\n\"5199634\";\"Manchester\";\"main\"\n\"5199634\";\"Манчестер\";\"other\"\n\"5199648\";\"Manheim\";\"main\"\n\"5199677\";\"Manor\";\"main\"\n\"5199710\";\"Mansfield\";\"main\"\n\"5199710\";\"Mehnsfild\";\"other\"\n\"5199710\";\"Мэнсфилд\";\"other\"\n\"5199740\";\"Maple Glen\";\"main\"\n\"5199781\";\"Maple Glen\";\"main\"\n\"5199879\";\"Marietta\";\"main\"\n\"5199879\";\"Мариетта\";\"other\"\n\"5199944\";\"Mars\";\"main\"\n\"5199994\";\"Marshallton\";\"main\"\n\"5200055\";\"Martinsburg\";\"main\"\n\"5200081\";\"Marysville\";\"main\"\n\"5200122\";\"Matamoras\";\"main\"\n\"5200123\";\"Matamoras\";\"main\"\n\"5200194\";\"Mayfield\";\"main\"\n\"5200195\";\"Mayfield\";\"main\"\n\"5200208\";\"Maytown\";\"main\"\n\"5200220\";\"McAdoo\";\"main\"\n\"5200371\";\"McDonald\";\"main\"\n\"5200422\";\"McGovern\";\"main\"\n\"5200474\";\"McKees Rocks\";\"main\"\n\"5200499\";\"McKeesport\";\"main\"\n\"5200544\";\"McMurray\";\"main\"\n\"5200639\";\"Meadowood\";\"main\"\n\"5200644\";\"Meadville\";\"main\"\n\"5200657\";\"Mechanicsburg\";\"main\"\n\"5200669\";\"Mechanicsville\";\"main\"\n\"5200798\";\"Mercer\";\"main\"\n\"5200837\";\"Meridian\";\"main\"\n\"5200837\";\"Меридиан\";\"other\"\n\"5201006\";\"Middleburg\";\"main\"\n\"5201027\";\"Middletown\";\"main\"\n\"5201031\";\"Middletown\";\"main\"\n\"5201045\";\"Midland\";\"main\"\n\"5201046\";\"Midland\";\"main\"\n\"5201080\";\"Mifflinburg\";\"main\"\n\"5201088\";\"Mifflinville\";\"main\"\n\"5201115\";\"Milesburg\";\"main\"\n\"5201117\";\"Milford\";\"main\"\n\"5201117\";\"Милфорд\";\"other\"\n\"5201245\";\"Mill Hall\";\"main\"\n\"5201405\";\"Millersburg\";\"main\"\n\"5201452\";\"Millvale\";\"main\"\n\"5201468\";\"Milroy\";\"main\"\n\"5201470\";\"Milton\";\"main\"\n\"5201470\";\"Mil'ton\";\"other\"\n\"5201470\";\"Мильтон\";\"other\"\n\"5201518\";\"Minersville\";\"main\"\n\"5201641\";\"Mohnton\";\"main\"\n\"5201658\";\"Monaca\";\"main\"\n\"5201665\";\"Monessen\";\"main\"\n\"5201688\";\"Monongahela\";\"main\"\n\"5201734\";\"Monroeville\";\"main\"\n\"5201752\";\"Montgomery\";\"main\"\n\"5201752\";\"Montgomeri\";\"other\"\n\"5201752\";\"Монтгомери\";\"other\"\n\"5201776\";\"Montgomeryville\";\"main\"\n\"5201801\";\"Montoursville\";\"main\"\n\"5201804\";\"Montrose\";\"main\"\n\"5201805\";\"Montrose\";\"main\"\n\"5201901\";\"Moosic\";\"main\"\n\"5201996\";\"Morrisville\";\"main\"\n\"5202009\";\"Moscow\";\"main\"\n\"5202009\";\"Gorod Moskva\";\"other\"\n\"5202009\";\"Город Москва\";\"other\"\n\"5202114\";\"Mount Carmel\";\"main\"\n\"5202114\";\"Karmel'\";\"other\"\n\"5202114\";\"Кармель\";\"other\"\n\"5202141\";\"Mount Cobb\";\"main\"\n\"5202164\";\"Mount Holly Springs\";\"main\"\n\"5202198\";\"Mount Jewett\";\"main\"\n\"5202202\";\"Mount Joy\";\"main\"\n\"5202215\";\"Mount Lebanon\";\"main\"\n\"5202251\";\"Mount Oliver\";\"main\"\n\"5202264\";\"Mount Penn\";\"main\"\n\"5202286\";\"Mount Pleasant\";\"main\"\n\"5202340\";\"Mount Pocono\";\"main\"\n\"5202382\";\"Mount Union\";\"main\"\n\"5202421\";\"Mount Wolf\";\"main\"\n\"5202534\";\"Mountain Top\";\"main\"\n\"5202535\";\"Mountain Top\";\"main\"\n\"5202551\";\"Mountainhome\";\"main\"\n\"5202566\";\"Mountville\";\"main\"\n\"5202715\";\"Muncy\";\"main\"\n\"5202734\";\"Munhall\";\"main\"\n\"5202765\";\"Murrysville\";\"main\"\n\"5202820\";\"Myerstown\";\"main\"\n\"5202855\";\"Nanticoke\";\"main\"\n\"5202860\";\"Nanty Glo\";\"main\"\n\"5202869\";\"Narberth\";\"main\"\n\"5202938\";\"Nazareth\";\"main\"\n\"5203030\";\"Nescopeck\";\"main\"\n\"5203071\";\"Nesquehoning\";\"main\"\n\"5203099\";\"New Beaver\";\"main\"\n\"5203112\";\"New Bloomfield\";\"main\"\n\"5203116\";\"New Brighton\";\"main\"\n\"5203116\";\"Novyj Brajton\";\"other\"\n\"5203116\";\"Новый Брайтон\";\"other\"\n\"5203118\";\"New Britain\";\"main\"\n\"5203127\";\"New Castle\";\"main\"\n\"5203155\";\"New Eagle\";\"main\"\n\"5203164\";\"New Cumberland\";\"main\"\n\"5203197\";\"New Hope\";\"main\"\n\"5203211\";\"New Kensington\";\"main\"\n\"5203221\";\"New Holland\";\"main\"\n\"5203246\";\"New Philadelphia\";\"main\"\n\"5203263\";\"New Stanton\";\"main\"\n\"5203277\";\"New Wilmington\";\"main\"\n\"5203311\";\"Newmanstown\";\"main\"\n\"5203317\";\"Newport\";\"main\"\n\"5203317\";\"N'juport\";\"other\"\n\"5203317\";\"Ньюпорт\";\"other\"\n\"5203354\";\"Newtown\";\"main\"\n\"5203369\";\"Newtown Grant\";\"main\"\n\"5203377\";\"Newville\";\"main\"\n\"5203468\";\"Nixon\";\"main\"\n\"5203506\";\"Norristown\";\"main\"\n\"5203519\";\"North Apollo\";\"main\"\n\"5203529\";\"North Belle Vernon\";\"main\"\n\"5203537\";\"North Braddock\";\"main\"\n\"5203609\";\"North Charleroi\";\"main\"\n\"5203618\";\"North Catasauqua\";\"main\"\n\"5203634\";\"North East\";\"main\"\n\"5203785\";\"North Versailles\";\"main\"\n\"5203788\";\"North Wales\";\"main\"\n\"5203804\";\"Northampton\";\"main\"\n\"5203804\";\"Nortkhempton\";\"other\"\n\"5203804\";\"Нортхемптон\";\"other\"\n\"5203837\";\"Northern Cambria\";\"main\"\n\"5203859\";\"Northumberland\";\"main\"\n\"5203859\";\"Nortumberlend\";\"other\"\n\"5203859\";\"Нортумберленд\";\"other\"\n\"5204107\";\"Oak Hills\";\"main\"\n\"5204143\";\"Oakdale\";\"main\"\n\"5204144\";\"Oakdale\";\"main\"\n\"5204168\";\"Oakland\";\"main\"\n\"5204168\";\"Oklend\";\"other\"\n\"5204168\";\"Окленд\";\"other\"\n\"5204203\";\"Oakmont\";\"main\"\n\"5204220\";\"Oakwood\";\"main\"\n\"5204273\";\"Ohioville\";\"main\"\n\"5204278\";\"Oil City\";\"main\"\n\"5204331\";\"Old Forge\";\"main\"\n\"5204368\";\"Old Orchard\";\"main\"\n\"5204476\";\"Olyphant\";\"main\"\n\"5204552\";\"Orchard Hills\";\"main\"\n\"5204575\";\"Oreland\";\"main\"\n\"5204608\";\"Orwigsburg\";\"main\"\n\"5204622\";\"Osceola Mills\";\"main\"\n\"5204895\";\"Paint\";\"main\"\n\"5204947\";\"Palmer Heights\";\"main\"\n\"5204957\";\"Palmerton\";\"main\"\n\"5204964\";\"Palmyra\";\"main\"\n\"5204971\";\"Palo Alto\";\"main\"\n\"5204971\";\"Palo Al'to\";\"other\"\n\"5204971\";\"Пало Альто\";\"other\"\n\"5205037\";\"Paoli\";\"main\"\n\"5205052\";\"Paradise\";\"main\"\n\"5205094\";\"Park Forest Village\";\"main\"\n\"5205152\";\"Parkside\";\"main\"\n\"5205215\";\"Patton\";\"main\"\n\"5205249\";\"Paxtang\";\"main\"\n\"5205267\";\"Paxtonia\";\"main\"\n\"5205339\";\"Pen Argyl\";\"main\"\n\"5205343\";\"Penbrook\";\"main\"\n\"5205377\";\"Penn Hills\";\"main\"\n\"5205451\";\"Penndel\";\"main\"\n\"5205484\";\"Pennsburg\";\"main\"\n\"5205638\";\"Perkasie\";\"main\"\n\"5205704\";\"Perryopolis\";\"main\"\n\"5205806\";\"Philipsburg\";\"main\"\n\"5205849\";\"Phoenixville\";\"main\"\n\"5206038\";\"Pine Grove\";\"main\"\n\"5206070\";\"Pine Grove Mills\";\"main\"\n\"5206361\";\"Pitcairn\";\"main\"\n\"5206379\";\"Pittsburgh\";\"main\"\n\"5206379\";\"Pitsb\\\"rg\";\"other\"\n\"5206379\";\"Pitsburg\";\"other\"\n\"5206379\";\"Pitsburgas\";\"other\"\n\"5206379\";\"Pittsbarig\";\"other\"\n\"5206379\";\"Pittsburgum\";\"other\"\n\"5206379\";\"pi zi bao\";\"other\"\n\"5206379\";\"pittsubagu\";\"other\"\n\"5206379\";\"pytsbwrg\";\"other\"\n\"5206379\";\"Питсбург\";\"other\"\n\"5206379\";\"Питсбърг\";\"other\"\n\"5206379\";\"פיטסבורג\";\"other\"\n\"5206379\";\"ピッツバーグ\";\"other\"\n\"5206379\";\"匹兹堡\";\"other\"\n\"5206397\";\"Pittston\";\"main\"\n\"5206463\";\"Pleasant Gap\";\"main\"\n\"5206487\";\"Pleasant Hill\";\"main\"\n\"5206510\";\"Pleasant Hills\";\"main\"\n\"5206606\";\"Plum\";\"main\"\n\"5206659\";\"Plymouth\";\"main\"\n\"5206659\";\"Plimut\";\"other\"\n\"5206659\";\"Плимут\";\"other\"\n\"5206666\";\"Plymouth Meeting\";\"main\"\n\"5206674\";\"Plymptonville\";\"main\"\n\"5206718\";\"Pocono Pines\";\"main\"\n\"5206800\";\"Polk\";\"main\"\n\"5206933\";\"Port Carbon\";\"main\"\n\"5206956\";\"Port Allegany\";\"main\"\n\"5206958\";\"Port Vue\";\"main\"\n\"5206961\";\"Portage\";\"main\"\n\"5207065\";\"Pottsgrove\";\"main\"\n\"5207069\";\"Pottstown\";\"main\"\n\"5207080\";\"Pottsville\";\"main\"\n\"5207214\";\"Progress\";\"main\"\n\"5207263\";\"Prospect\";\"main\"\n\"5207307\";\"Punxsutawney\";\"main\"\n\"5207381\";\"Quakertown\";\"main\"\n\"5207490\";\"Radnor\";\"main\"\n\"5207539\";\"Ramblewood\";\"main\"\n\"5207581\";\"Rankin\";\"main\"\n\"5207728\";\"Reading\";\"main\"\n\"5207728\";\"Reddin\";\"other\"\n\"5207728\";\"Reding\";\"other\"\n\"5207728\";\"Рединг\";\"other\"\n\"5207745\";\"Reamstown\";\"main\"\n\"5207780\";\"Red Hill\";\"main\"\n\"5207794\";\"Red Lion\";\"main\"\n\"5207976\";\"Reiffton\";\"main\"\n\"5208028\";\"Renovo\";\"main\"\n\"5208111\";\"Reynoldsville\";\"main\"\n\"5208119\";\"Rheems\";\"main\"\n\"5208166\";\"Richboro\";\"main\"\n\"5208177\";\"Richland\";\"main\"\n\"5208177\";\"Richlend\";\"other\"\n\"5208177\";\"Ричленд\";\"other\"\n\"5208198\";\"Richlandtown\";\"main\"\n\"5208292\";\"Ridgway\";\"main\"\n\"5208462\";\"Riverside\";\"main\"\n\"5208462\";\"Riversajd\";\"other\"\n\"5208462\";\"Риверсайд\";\"other\"\n\"5208552\";\"Roaring Spring\";\"main\"\n\"5208600\";\"Robesonia\";\"main\"\n\"5208641\";\"Rochester\";\"main\"\n\"5208641\";\"Рочестер\";\"other\"\n\"5208767\";\"Rockledge\";\"main\"\n\"5209036\";\"Roseto\";\"main\"\n\"5209110\";\"Rothsville\";\"main\"\n\"5209240\";\"Royersford\";\"main\"\n\"5209347\";\"Russellton\";\"main\"\n\"5209362\";\"Rutherford\";\"main\"\n\"5209445\";\"Saegertown\";\"main\"\n\"5209621\";\"Saint Clair\";\"main\"\n\"5210029\";\"Saint Lawrence\";\"main\"\n\"5210117\";\"Saint Marys\";\"main\"\n\"5210764\";\"Sanatoga\";\"main\"\n\"5210779\";\"Sand Hill\";\"main\"\n\"5210847\";\"Sandy\";\"main\"\n\"5211020\";\"Saxonburg\";\"main\"\n\"5211037\";\"Sayre\";\"main\"\n\"5211113\";\"Schlusser\";\"main\"\n\"5211128\";\"Schnecksville\";\"main\"\n\"5211212\";\"Schuylkill Haven\";\"main\"\n\"5211230\";\"Schwenksville\";\"main\"\n\"5211279\";\"Scottdale\";\"main\"\n\"5211303\";\"Scranton\";\"main\"\n\"5211303\";\"Skrenton\";\"other\"\n\"5211303\";\"Скрентон\";\"other\"\n\"5211411\";\"Selinsgrove\";\"main\"\n\"5211420\";\"Sellersville\";\"main\"\n\"5211465\";\"Seven Fields\";\"main\"\n\"5211506\";\"Sewickley\";\"main\"\n\"5211622\";\"Shamokin\";\"main\"\n\"5211637\";\"Shamokin Dam\";\"main\"\n\"5211683\";\"Sharon\";\"main\"\n\"5211683\";\"Шарон\";\"other\"\n\"5211708\";\"Sharpsburg\";\"main\"\n\"5211712\";\"Sharpsville\";\"main\"\n\"5211804\";\"Sheffield\";\"main\"\n\"5211846\";\"Shenandoah\";\"main\"\n\"5211850\";\"Shenandoah Heights\";\"main\"\n\"5211953\";\"Shillington\";\"main\"\n\"5211957\";\"Shiloh\";\"main\"\n\"5212002\";\"Shinglehouse\";\"main\"\n\"5212033\";\"Shiremanstown\";\"main\"\n\"5212038\";\"Shippensburg\";\"main\"\n\"5212072\";\"Shoemakersville\";\"main\"\n\"5212342\";\"Sinking Spring\";\"main\"\n\"5212412\";\"Skippack\";\"main\"\n\"5212430\";\"Skyline View\";\"main\"\n\"5212477\";\"Slatington\";\"main\"\n\"5212532\";\"Slippery Rock\";\"main\"\n\"5212582\";\"Smethport\";\"main\"\n\"5212853\";\"Somerset\";\"main\"\n\"5212853\";\"Сомерсет\";\"other\"\n\"5212897\";\"Souderton\";\"main\"\n\"5213001\";\"South Fork\";\"main\"\n\"5213024\";\"South Greensburg\";\"main\"\n\"5213096\";\"South Pottstown\";\"main\"\n\"5213130\";\"South Williamsport\";\"main\"\n\"5213155\";\"Southmont\";\"main\"\n\"5213167\";\"Southwest Greensburg\";\"main\"\n\"5213188\";\"Spangler\";\"main\"\n\"5213220\";\"Speers\";\"main\"\n\"5213317\";\"Spring City\";\"main\"\n\"5213370\";\"Spring House\";\"main\"\n\"5213393\";\"Spring Mount\";\"main\"\n\"5213447\";\"Springdale\";\"main\"\n\"5213681\";\"State College\";\"main\"\n\"5214040\";\"Steelton\";\"main\"\n\"5214311\";\"Stoneboro\";\"main\"\n\"5214416\";\"Stormstown\";\"main\"\n\"5214449\";\"Stowe\";\"main\"\n\"5214543\";\"Stroudsburg\";\"main\"\n\"5214696\";\"Sugarcreek\";\"main\"\n\"5214775\";\"Summit Hill\";\"main\"\n\"5214814\";\"Sunbury\";\"main\"\n\"5214936\";\"Susquehanna\";\"main\"\n\"5215064\";\"Swissvale\";\"main\"\n\"5215076\";\"Swoyersville\";\"main\"\n\"5215087\";\"Sykesville\";\"main\"\n\"5215142\";\"Tamaqua\";\"main\"\n\"5215215\";\"Tarentum\";\"main\"\n\"5215235\";\"Tatamy\";\"main\"\n\"5215247\";\"Taylor\";\"main\"\n\"5215247\";\"Tejlor\";\"other\"\n\"5215247\";\"Тейлор\";\"other\"\n\"5215317\";\"Telford\";\"main\"\n\"5215325\";\"Temple\";\"main\"\n\"5215373\";\"Terre Hill\";\"main\"\n\"5215541\";\"Thompsonville\";\"main\"\n\"5215611\";\"Throop\";\"main\"\n\"5215664\";\"Tinicum\";\"main\"\n\"5215715\";\"Tipton\";\"main\"\n\"5215726\";\"Titusville\";\"main\"\n\"5215726\";\"Titusvill'\";\"other\"\n\"5215726\";\"Титусвилль\";\"other\"\n\"5215826\";\"Topton\";\"main\"\n\"5215859\";\"Towanda\";\"main\"\n\"5215886\";\"Tower City\";\"main\"\n\"5215921\";\"Trafford\";\"main\"\n\"5215947\";\"Trappe\";\"main\"\n\"5215968\";\"Treasure Lake\";\"main\"\n\"5215983\";\"Tremont\";\"main\"\n\"5215995\";\"Trevorton\";\"main\"\n\"5216092\";\"Trooper\";\"main\"\n\"5216182\";\"Troy\";\"main\"\n\"5216182\";\"Troja\";\"other\"\n\"5216182\";\"Троя\";\"other\"\n\"5216183\";\"Troy\";\"main\"\n\"5216206\";\"Trumbauersville\";\"main\"\n\"5216241\";\"Tullytown\";\"main\"\n\"5216260\";\"Tunkhannock\";\"main\"\n\"5216343\";\"Turtle Creek\";\"main\"\n\"5216514\";\"Tyrone\";\"main\"\n\"5216639\";\"Union City\";\"main\"\n\"5216639\";\"Junion-Siti\";\"other\"\n\"5216639\";\"Юнион-Сити\";\"other\"\n\"5216895\";\"Upper Saint Clair\";\"main\"\n\"5217005\";\"Valley Green\";\"main\"\n\"5217039\";\"Valley View\";\"main\"\n\"5217103\";\"Vandergrift\";\"main\"\n\"5217179\";\"Verona\";\"main\"\n\"5217183\";\"Versailles\";\"main\"\n\"5217238\";\"Village Shires\";\"main\"\n\"5217260\";\"Vinco\";\"main\"\n\"5217887\";\"Walnutport\";\"main\"\n\"5217970\";\"Warminster Heights\";\"main\"\n\"5218023\";\"Warren\";\"main\"\n\"5218023\";\"Uorren\";\"other\"\n\"5218023\";\"Уоррен\";\"other\"\n\"5218069\";\"Washington\";\"main\"\n\"5218069\";\"Vashington\";\"other\"\n\"5218069\";\"Вашингтон\";\"other\"\n\"5218198\";\"Waterford\";\"main\"\n\"5218198\";\"Uoterford\";\"other\"\n\"5218198\";\"Уотерфорд\";\"other\"\n\"5218199\";\"Waterford\";\"main\"\n\"5218246\";\"Watsontown\";\"main\"\n\"5218268\";\"Waymart\";\"main\"\n\"5218305\";\"Weatherly\";\"main\"\n\"5218450\";\"Wellsboro\";\"main\"\n\"5218485\";\"Wernersville\";\"main\"\n\"5218531\";\"Wesleyville\";\"main\"\n\"5218633\";\"West Brownsville\";\"main\"\n\"5218652\";\"West Conshohocken\";\"main\"\n\"5218678\";\"West Easton\";\"main\"\n\"5218702\";\"West Fairview\";\"main\"\n\"5218730\";\"West Hazleton\";\"main\"\n\"5218745\";\"West Hills\";\"main\"\n\"5218750\";\"West Homestead\";\"main\"\n\"5218758\";\"West Kittanning\";\"main\"\n\"5218765\";\"West Lawn\";\"main\"\n\"5218773\";\"West Leechburg\";\"main\"\n\"5218793\";\"West Mayfield\";\"main\"\n\"5218802\";\"West Mifflin\";\"main\"\n\"5218822\";\"West Newton\";\"main\"\n\"5218827\";\"West Norriton\";\"main\"\n\"5218853\";\"West Pittston\";\"main\"\n\"5218867\";\"West Reading\";\"main\"\n\"5218918\";\"West View\";\"main\"\n\"5218938\";\"West Wyoming\";\"main\"\n\"5218940\";\"West Wyomissing\";\"main\"\n\"5218969\";\"Westfield\";\"main\"\n\"5219003\";\"Westmont\";\"main\"\n\"5219140\";\"Whitaker\";\"main\"\n\"5219189\";\"White Haven\";\"main\"\n\"5219216\";\"White Oak\";\"main\"\n\"5219271\";\"Whitehall\";\"main\"\n\"5219287\";\"Whitehall Township\";\"main\"\n\"5219287\";\"Township of Whitehall\";\"other\"\n\"5219287\";\"Whitehall\";\"other\"\n\"5219331\";\"Whitfield\";\"main\"\n\"5219488\";\"Wilkes-Barre\";\"main\"\n\"5219488\";\"Uilks-Barre\";\"other\"\n\"5219488\";\"Wilkes Barre\";\"other\"\n\"5219488\";\"Уилкс-Барре\";\"other\"\n\"5219501\";\"Wilkinsburg\";\"main\"\n\"5219574\";\"Williamsburg\";\"main\"\n\"5219585\";\"Williamsport\";\"main\"\n\"5219592\";\"Williamstown\";\"main\"\n\"5219619\";\"Willow Grove\";\"main\"\n\"5219653\";\"Wilmerding\";\"main\"\n\"5219667\";\"Wilson\";\"main\"\n\"5219668\";\"Wilson\";\"main\"\n\"5219668\";\"Uilson\";\"other\"\n\"5219668\";\"Уилсон\";\"other\"\n\"5219720\";\"Wind Gap\";\"main\"\n\"5219722\";\"Windber\";\"main\"\n\"5219949\";\"Wolfdale\";\"main\"\n\"5219972\";\"Womelsdorf\";\"main\"\n\"5219994\";\"Woodbourne\";\"main\"\n\"5220040\";\"Woodland Heights\";\"main\"\n\"5220093\";\"Woodside\";\"main\"\n\"5220137\";\"Wormleysburg\";\"main\"\n\"5220180\";\"Wrightsville\";\"main\"\n\"5220217\";\"Wyncote\";\"main\"\n\"5220221\";\"Wyndmoor\";\"main\"\n\"5220236\";\"Wyoming\";\"main\"\n\"5220236\";\"Vajoming\";\"other\"\n\"5220236\";\"Вайоминг\";\"other\"\n\"5220248\";\"Wyomissing\";\"main\"\n\"5220276\";\"Wyomissing Hills\";\"main\"\n\"5220281\";\"Yardley\";\"main\"\n\"5220400\";\"Youngsville\";\"main\"\n\"5220401\";\"Youngsville\";\"main\"\n\"5220405\";\"Youngwood\";\"main\"\n\"5220432\";\"Zelienople\";\"main\"\n\"5220463\";\"Zion\";\"main\"\n\"5220463\";\"Sion\";\"other\"\n\"5220463\";\"Сион\";\"other\"\n\"5220705\";\"Ashaway\";\"main\"\n\"5220798\";\"Barrington\";\"main\"\n\"5221030\";\"Bradford\";\"main\"\n\"5221077\";\"Bristol\";\"main\"\n\"5221341\";\"Central Falls\";\"main\"\n\"5221384\";\"Charlestown\";\"main\"\n\"5221637\";\"Coventry\";\"main\"\n\"5221637\";\"Koventri\";\"other\"\n\"5221637\";\"Ковентри\";\"other\"\n\"5221659\";\"Cranston\";\"main\"\n\"5221659\";\"Krehnston\";\"other\"\n\"5221659\";\"Крэнстон\";\"other\"\n\"5221703\";\"Cumberland\";\"main\"\n\"5221703\";\"Kamberlend\";\"other\"\n\"5221703\";\"Камберленд\";\"other\"\n\"5221705\";\"Cumberland Hill\";\"main\"\n\"5221875\";\"East Greenwich\";\"main\"\n\"5221931\";\"East Providence\";\"main\"\n\"5222019\";\"Exeter\";\"main\"\n\"5222169\";\"Foster\";\"main\"\n\"5222476\";\"Greenville\";\"main\"\n\"5222476\";\"Grinvill\";\"other\"\n\"5222476\";\"Гринвилл\";\"other\"\n\"5222569\";\"Harrisville\";\"main\"\n\"5222665\";\"Hope Valley\";\"main\"\n\"5222680\";\"Hopkinton\";\"main\"\n\"5222680\";\"Khopkinton\";\"other\"\n\"5222680\";\"Хопкинтон\";\"other\"\n\"5222866\";\"Jamestown\";\"main\"\n\"5223006\";\"Kingston\";\"main\"\n\"5223006\";\"Кингстон\";\"other\"\n\"5223324\";\"Melville\";\"main\"\n\"5223358\";\"Middletown\";\"main\"\n\"5223525\";\"Narragansett Pier\";\"main\"\n\"5223593\";\"Newport\";\"main\"\n\"5223593\";\"N'juport\";\"other\"\n\"5223593\";\"nyupoto\";\"other\"\n\"5223593\";\"nywpwrt\";\"other\"\n\"5223593\";\"Ньюпорт\";\"other\"\n\"5223593\";\"ניופורט\";\"other\"\n\"5223593\";\"ニューポート\";\"other\"\n\"5223672\";\"North Kingstown\";\"main\"\n\"5223681\";\"North Providence\";\"main\"\n\"5223685\";\"North Scituate\";\"main\"\n\"5223687\";\"North Smithfield\";\"main\"\n\"5223854\";\"Pascoag\";\"main\"\n\"5223869\";\"Pawtucket\";\"main\"\n\"5224082\";\"Portsmouth\";\"main\"\n\"5224082\";\"Portsmut\";\"other\"\n\"5224082\";\"Портсмут\";\"other\"\n\"5224151\";\"Providence\";\"main\"\n\"5224151\";\"Provid\\\"ns\";\"other\"\n\"5224151\";\"Providensa\";\"other\"\n\"5224151\";\"Providentia\";\"other\"\n\"5224151\";\"prwbydns\";\"other\"\n\"5224151\";\"pu luo wei dun si\";\"other\"\n\"5224151\";\"purobidensu\";\"other\"\n\"5224151\";\"purovu~idensu\";\"other\"\n\"5224151\";\"Провидънс\";\"other\"\n\"5224151\";\"פרובידנס\";\"other\"\n\"5224151\";\"پروویڈنس، رہوڈ آئی لینڈ\";\"other\"\n\"5224151\";\"プロビデンス\";\"other\"\n\"5224151\";\"プロヴィデンス\";\"other\"\n\"5224151\";\"普洛威頓斯\";\"other\"\n\"5224949\";\"Smithfield\";\"main\"\n\"5225245\";\"Tiverton\";\"main\"\n\"5225388\";\"Valley Falls\";\"main\"\n\"5225502\";\"Warren\";\"main\"\n\"5225502\";\"Uorren\";\"other\"\n\"5225502\";\"Уоррен\";\"other\"\n\"5225507\";\"Warwick\";\"main\"\n\"5225627\";\"West Warwick\";\"main\"\n\"5225631\";\"Westerly\";\"main\"\n\"5225809\";\"Woonsocket\";\"main\"\n\"5225857\";\"Aberdeen\";\"main\"\n\"5225857\";\"Aberdin\";\"other\"\n\"5225857\";\"Абердин\";\"other\"\n\"5226250\";\"Beresford\";\"main\"\n\"5226489\";\"Brandon\";\"main\"\n\"5226489\";\"Brehndon\";\"other\"\n\"5226489\";\"Брэндон\";\"other\"\n\"5226523\";\"Britton\";\"main\"\n\"5226534\";\"Brookings\";\"main\"\n\"5226716\";\"Canton\";\"main\"\n\"5226824\";\"Chamberlain\";\"main\"\n\"5226901\";\"Clark\";\"main\"\n\"5226932\";\"Clear Lake\";\"main\"\n\"5227129\";\"Crooks\";\"main\"\n\"5227237\";\"De Smet\";\"main\"\n\"5227270\";\"Dell Rapids\";\"main\"\n\"5227567\";\"Elk Point\";\"main\"\n\"5227802\";\"Flandreau\";\"main\"\n\"5227856\";\"Fort Thompson\";\"main\"\n\"5227913\";\"Freeman\";\"main\"\n\"5227996\";\"Garretson\";\"main\"\n\"5228053\";\"Gettysburg\";\"main\"\n\"5228222\";\"Gregory\";\"main\"\n\"5228242\";\"Groton\";\"main\"\n\"5228340\";\"Harrisburg\";\"main\"\n\"5228340\";\"Garrisberg\";\"other\"\n\"5228340\";\"Гаррисберг\";\"other\"\n\"5228353\";\"Hartford\";\"main\"\n\"5228353\";\"Khartford\";\"other\"\n\"5228353\";\"Хартфорд\";\"other\"\n\"5228673\";\"Huron\";\"main\"\n\"5229271\";\"Lennox\";\"main\"\n\"5229271\";\"Lennoks\";\"other\"\n\"5229271\";\"Леннокс\";\"other\"\n\"5229526\";\"Madison\";\"main\"\n\"5229526\";\"Мадисон\";\"other\"\n\"5229737\";\"Milbank\";\"main\"\n\"5229751\";\"Miller\";\"main\"\n\"5229794\";\"Mitchell\";\"main\"\n\"5230076\";\"North Sioux City\";\"main\"\n\"5230313\";\"Parkston\";\"main\"\n\"5230472\";\"Platte\";\"main\"\n\"5230743\";\"Redfield\";\"main\"\n\"5231228\";\"Salem\";\"main\"\n\"5231228\";\"Sejlem\";\"other\"\n\"5231228\";\"Сейлем\";\"other\"\n\"5231851\";\"Sioux Falls\";\"main\"\n\"5231851\";\"Su-Fols\";\"other\"\n\"5231851\";\"suforuzu\";\"other\"\n\"5231851\";\"Су-Фолс\";\"other\"\n\"5231851\";\"スーフォールズ\";\"other\"\n\"5231863\";\"Sisseton\";\"main\"\n\"5232316\";\"Tea\";\"main\"\n\"5232489\";\"Tyndall\";\"main\"\n\"5232592\";\"Vermillion\";\"main\"\n\"5232637\";\"Volga\";\"main\"\n\"5232661\";\"Wagner\";\"main\"\n\"5232741\";\"Watertown\";\"main\"\n\"5232764\";\"Webster\";\"main\"\n\"5232994\";\"Winner\";\"main\"\n\"5233053\";\"Yankton\";\"main\"\n\"5233315\";\"Arlington\";\"main\"\n\"5233315\";\"Арлингтон\";\"other\"\n\"5233500\";\"Barre\";\"main\"\n\"5233738\";\"Bellows Falls\";\"main\"\n\"5233742\";\"Bennington\";\"main\"\n\"5233794\";\"Bethel\";\"main\"\n\"5234101\";\"Brandon\";\"main\"\n\"5234101\";\"Brehndon\";\"other\"\n\"5234101\";\"Брэндон\";\"other\"\n\"5234141\";\"Brattleboro\";\"main\"\n\"5234183\";\"Bristol\";\"main\"\n\"5234372\";\"Burlington\";\"main\"\n\"5234372\";\"Berlington\";\"other\"\n\"5234372\";\"barinton\";\"other\"\n\"5234372\";\"bo ling dun\";\"other\"\n\"5234372\";\"Берлингтон\";\"other\"\n\"5234372\";\"バーリントン\";\"other\"\n\"5234372\";\"伯靈頓\";\"other\"\n\"5235024\";\"Colchester\";\"main\"\n\"5235519\";\"Dover\";\"main\"\n\"5235519\";\"Довер\";\"other\"\n\"5235919\";\"Enosburg Falls\";\"main\"\n\"5235952\";\"Essex Junction\";\"main\"\n\"5236019\";\"Fair Haven\";\"main\"\n\"5236559\";\"Graniteville\";\"main\"\n\"5237056\";\"Hinesburg\";\"main\"\n\"5237476\";\"Jericho\";\"main\"\n\"5237538\";\"Johnson\";\"main\"\n\"5238190\";\"Lyndon\";\"main\"\n\"5238203\";\"Lyndonville\";\"main\"\n\"5238267\";\"Manchester\";\"main\"\n\"5238267\";\"Манчестер\";\"other\"\n\"5238499\";\"Middlebury\";\"main\"\n\"5238609\";\"Milton\";\"main\"\n\"5238609\";\"Mil'ton\";\"other\"\n\"5238609\";\"Мильтон\";\"other\"\n\"5238685\";\"Montpelier\";\"main\"\n\"5238685\";\"montopiria\";\"other\"\n\"5238685\";\"モントピリア\";\"other\"\n\"5238755\";\"Morristown\";\"main\"\n\"5238763\";\"Morrisville\";\"main\"\n\"5239058\";\"Newport\";\"main\"\n\"5239058\";\"N'juport\";\"other\"\n\"5239058\";\"Ньюпорт\";\"other\"\n\"5239101\";\"North Bennington\";\"main\"\n\"5239281\";\"Northfield\";\"main\"\n\"5239982\";\"Poultney\";\"main\"\n\"5240140\";\"Randolph\";\"main\"\n\"5240140\";\"Randol'f\";\"other\"\n\"5240140\";\"Рандольф\";\"other\"\n\"5240267\";\"Richford\";\"main\"\n\"5240399\";\"Rockingham\";\"main\"\n\"5240509\";\"Rutland\";\"main\"\n\"5240509\";\"Ratlend\";\"other\"\n\"5240509\";\"Ратленд\";\"other\"\n\"5240569\";\"Saint Albans\";\"main\"\n\"5240656\";\"Saint Johnsbury\";\"main\"\n\"5241006\";\"Shelburne\";\"main\"\n\"5241223\";\"South Barre\";\"main\"\n\"5241248\";\"South Burlington\";\"main\"\n\"5241423\";\"Springfield\";\"main\"\n\"5241423\";\"Springfild\";\"other\"\n\"5241423\";\"Спрингфилд\";\"other\"\n\"5241770\";\"Swanton\";\"main\"\n\"5242224\";\"Vergennes\";\"main\"\n\"5242657\";\"West Brattleboro\";\"main\"\n\"5242764\";\"West Rutland\";\"main\"\n\"5242889\";\"White River Junction\";\"main\"\n\"5242952\";\"Wilder\";\"main\"\n\"5243008\";\"Williston\";\"main\"\n\"5243081\";\"Winooski\";\"main\"\n\"5243517\";\"Abbotsford\";\"main\"\n\"5243553\";\"Adams\";\"main\"\n\"5243653\";\"Albany\";\"main\"\n\"5243653\";\"Olbani\";\"other\"\n\"5243653\";\"Олбани\";\"other\"\n\"5243712\";\"Algoma\";\"main\"\n\"5243770\";\"Allouez\";\"main\"\n\"5243819\";\"Altoona\";\"main\"\n\"5243819\";\"Altuna\";\"other\"\n\"5243819\";\"Алтуна\";\"other\"\n\"5243872\";\"Amery\";\"main\"\n\"5244010\";\"Antigo\";\"main\"\n\"5244080\";\"Appleton\";\"main\"\n\"5244080\";\"appuruton\";\"other\"\n\"5244080\";\"アップルトン\";\"other\"\n\"5244109\";\"Arcadia\";\"main\"\n\"5244109\";\"Arkadija\";\"other\"\n\"5244109\";\"Аркадия\";\"other\"\n\"5244247\";\"Ashland\";\"main\"\n\"5244267\";\"Ashwaubenon\";\"main\"\n\"5244312\";\"Athens\";\"main\"\n\"5244365\";\"Augusta\";\"main\"\n\"5244365\";\"Ogasta\";\"other\"\n\"5244365\";\"Огаста\";\"other\"\n\"5244570\";\"Baldwin\";\"main\"\n\"5244570\";\"Bolduin\";\"other\"\n\"5244570\";\"Болдуин\";\"other\"\n\"5244626\";\"Bangor\";\"main\"\n\"5244626\";\"Бангор\";\"other\"\n\"5244638\";\"Baraboo\";\"main\"\n\"5244703\";\"Barneveld\";\"main\"\n\"5244738\";\"Barron\";\"main\"\n\"5244980\";\"Bayside\";\"main\"\n\"5245193\";\"Beaver Dam\";\"main\"\n\"5245314\";\"Belgium\";\"main\"\n\"5245354\";\"Belleville\";\"main\"\n\"5245359\";\"Bellevue\";\"main\"\n\"5245387\";\"Beloit\";\"main\"\n\"5245461\";\"Benton\";\"main\"\n\"5245461\";\"Бентон\";\"other\"\n\"5245497\";\"Berlin\";\"main\"\n\"5245729\";\"Big Bend\";\"main\"\n\"5246049\";\"Black Creek\";\"main\"\n\"5246060\";\"Black Earth\";\"main\"\n\"5246105\";\"Black River Falls\";\"main\"\n\"5246172\";\"Blair\";\"main\"\n\"5246228\";\"Bloomer\";\"main\"\n\"5246401\";\"Bohners Lake\";\"main\"\n\"5246437\";\"Bonduel\";\"main\"\n\"5246509\";\"Boscobel\";\"main\"\n\"5246565\";\"Boyceville\";\"main\"\n\"5246709\";\"Brice Prairie\";\"main\"\n\"5246766\";\"Brillion\";\"main\"\n\"5246832\";\"Brodhead\";\"main\"\n\"5246835\";\"Brookfield\";\"main\"\n\"5246849\";\"Brooklyn\";\"main\"\n\"5246849\";\"Bruklin\";\"other\"\n\"5246849\";\"Бруклин\";\"other\"\n\"5246917\";\"Brown Deer\";\"main\"\n\"5246937\";\"Browns Lake\";\"main\"\n\"5247107\";\"Buffalo City\";\"main\"\n\"5247214\";\"Burlington\";\"main\"\n\"5247214\";\"Berlington\";\"other\"\n\"5247214\";\"Берлингтон\";\"other\"\n\"5247307\";\"Butler\";\"main\"\n\"5247387\";\"Cadott\";\"main\"\n\"5247415\";\"Caledonia\";\"main\"\n\"5247415\";\"Kaledonija\";\"other\"\n\"5247415\";\"Каледония\";\"other\"\n\"5247533\";\"Cambridge\";\"main\"\n\"5247533\";\"Kembridzh\";\"other\"\n\"5247533\";\"Кембридж\";\"other\"\n\"5247547\";\"Cameron\";\"main\"\n\"5247648\";\"Camp Lake\";\"main\"\n\"5247758\";\"Campbellsport\";\"main\"\n\"5247945\";\"Cashton\";\"main\"\n\"5247970\";\"Cassville\";\"main\"\n\"5248102\";\"Cedar Grove\";\"main\"\n\"5248171\";\"Cedarburg\";\"main\"\n\"5248263\";\"Centuria\";\"main\"\n\"5248417\";\"Chetek\";\"main\"\n\"5248469\";\"Chilton\";\"main\"\n\"5248511\";\"Chippewa Falls\";\"main\"\n\"5248897\";\"Clear Lake\";\"main\"\n\"5248933\";\"Cleveland\";\"main\"\n\"5248933\";\"Klivlend\";\"other\"\n\"5248933\";\"Кливленд\";\"other\"\n\"5248969\";\"Clinton\";\"main\"\n\"5248969\";\"Klinton\";\"other\"\n\"5248969\";\"Клинтон\";\"other\"\n\"5248985\";\"Clintonville\";\"main\"\n\"5249095\";\"Colby\";\"main\"\n\"5249152\";\"Colfax\";\"main\"\n\"5249205\";\"Columbus\";\"main\"\n\"5249205\";\"Kolumbus\";\"other\"\n\"5249205\";\"Колумбус\";\"other\"\n\"5249224\";\"Combined Locks\";\"main\"\n\"5249259\";\"Como\";\"main\"\n\"5249461\";\"Cornell\";\"main\"\n\"5249503\";\"Cottage Grove\";\"main\"\n\"5249670\";\"Crandon\";\"main\"\n\"5249741\";\"Crivitz\";\"main\"\n\"5249778\";\"Cross Plains\";\"main\"\n\"5249868\";\"Cuba City\";\"main\"\n\"5249871\";\"Cudahy\";\"main\"\n\"5249896\";\"Cumberland\";\"main\"\n\"5249896\";\"Kamberlend\";\"other\"\n\"5249896\";\"Камберленд\";\"other\"\n\"5250104\";\"Darien\";\"main\"\n\"5250121\";\"Darlington\";\"main\"\n\"5250188\";\"De Forest\";\"main\"\n\"5250201\";\"De Pere\";\"main\"\n\"5250201\";\"Depere\";\"other\"\n\"5250368\";\"Deerfield\";\"main\"\n\"5250393\";\"Delafield\";\"main\"\n\"5250399\";\"Delavan\";\"main\"\n\"5250402\";\"Delavan Lake\";\"main\"\n\"5250470\";\"Denmark\";\"main\"\n\"5250593\";\"Dickeyville\";\"main\"\n\"5250703\";\"Dodgeville\";\"main\"\n\"5250847\";\"Dousman\";\"main\"\n\"5251056\";\"Durand\";\"main\"\n\"5251122\";\"Eagle\";\"main\"\n\"5251145\";\"Eagle Lake\";\"main\"\n\"5251171\";\"Eagle River\";\"main\"\n\"5251390\";\"East Troy\";\"main\"\n\"5251436\";\"Eau Claire\";\"main\"\n\"5251521\";\"Edgar\";\"main\"\n\"5251524\";\"Edgerton\";\"main\"\n\"5251723\";\"Elkhart Lake\";\"main\"\n\"5251729\";\"Elkhorn\";\"main\"\n\"5251764\";\"Ellsworth\";\"main\"\n\"5251784\";\"Elm Grove\";\"main\"\n\"5251866\";\"Elroy\";\"main\"\n\"5252182\";\"Evansville\";\"main\"\n\"5252182\";\"Ehvansvill\";\"other\"\n\"5252182\";\"Эвансвилл\";\"other\"\n\"5252203\";\"Evergreen\";\"main\"\n\"5252463\";\"Fall Creek\";\"main\"\n\"5252474\";\"Fall River\";\"main\"\n\"5252610\";\"Fennimore\";\"main\"\n\"5253219\";\"Fitchburg\";\"main\"\n\"5253352\";\"Fond du Lac\";\"main\"\n\"5253352\";\"Fon-dju-Lak\";\"other\"\n\"5253352\";\"Фон-дю-Лак\";\"other\"\n\"5253369\";\"Fontana\";\"main\"\n\"5253369\";\"Фонтана\";\"other\"\n\"5253498\";\"Fort Atkinson\";\"main\"\n\"5253638\";\"Fox Lake\";\"main\"\n\"5253662\";\"Fox Point\";\"main\"\n\"5253710\";\"Franklin\";\"main\"\n\"5253710\";\"Франклин\";\"other\"\n\"5253762\";\"Franksville\";\"main\"\n\"5253772\";\"Frederic\";\"main\"\n\"5253778\";\"Fredonia\";\"main\"\n\"5253845\";\"French Island\";\"main\"\n\"5253998\";\"Galesville\";\"main\"\n\"5254150\";\"Genoa City\";\"main\"\n\"5254218\";\"Germantown\";\"main\"\n\"5254298\";\"Gillett\";\"main\"\n\"5254404\";\"Glendale\";\"main\"\n\"5254404\";\"Glendejl\";\"other\"\n\"5254404\";\"Глендейл\";\"other\"\n\"5254435\";\"Glenwood City\";\"main\"\n\"5254739\";\"Grafton\";\"main\"\n\"5254880\";\"Grantsburg\";\"main\"\n\"5254962\";\"Green Bay\";\"main\"\n\"5254962\";\"ge lin bei\";\"other\"\n\"5254962\";\"gurinbei\";\"other\"\n\"5254962\";\"kri nbey\";\"other\"\n\"5254962\";\"กรีนเบย์\";\"other\"\n\"5254962\";\"グリーンベイ\";\"other\"\n\"5254962\";\"格林贝\";\"other\"\n\"5255004\";\"Green Lake\";\"main\"\n\"5255057\";\"Greendale\";\"main\"\n\"5255068\";\"Greenfield\";\"main\"\n\"5255068\";\"Grinfild\";\"other\"\n\"5255068\";\"Гринфилд\";\"other\"\n\"5255102\";\"Greenwood\";\"main\"\n\"5255320\";\"Hales Corners\";\"main\"\n\"5255427\";\"Hammond\";\"main\"\n\"5255427\";\"Khammond\";\"other\"\n\"5255427\";\"Хаммонд\";\"other\"\n\"5255628\";\"Hartford\";\"main\"\n\"5255628\";\"Khartford\";\"other\"\n\"5255628\";\"Хартфорд\";\"other\"\n\"5255640\";\"Hartland\";\"main\"\n\"5255882\";\"Hayward\";\"main\"\n\"5255882\";\"Khejuurd\";\"other\"\n\"5255882\";\"Хейуърд\";\"other\"\n\"5255902\";\"Hazel Green\";\"main\"\n\"5256281\";\"Hilbert\";\"main\"\n\"5256376\";\"Hillsboro\";\"main\"\n\"5256376\";\"Khillsboro\";\"other\"\n\"5256376\";\"Хиллсборо\";\"other\"\n\"5256613\";\"Holmen\";\"main\"\n\"5256908\";\"Horicon\";\"main\"\n\"5257002\";\"Hortonville\";\"main\"\n\"5257029\";\"Howard\";\"main\"\n\"5257064\";\"Howards Grove\";\"main\"\n\"5257080\";\"Hudson\";\"main\"\n\"5257080\";\"Gudzon\";\"other\"\n\"5257080\";\"Гудзон\";\"other\"\n\"5257163\";\"Hurley\";\"main\"\n\"5257183\";\"Hustisford\";\"main\"\n\"5257353\";\"Independence\";\"main\"\n\"5257499\";\"Iola\";\"main\"\n\"5257669\";\"Jackson\";\"main\"\n\"5257669\";\"Dzhekson\";\"other\"\n\"5257669\";\"Джексон\";\"other\"\n\"5257754\";\"Janesville\";\"main\"\n\"5257784\";\"Jefferson\";\"main\"\n\"5257784\";\"Dzhefferson\";\"other\"\n\"5257784\";\"Джефферсон\";\"other\"\n\"5257996\";\"Johnson Creek\";\"main\"\n\"5258190\";\"Juneau\";\"main\"\n\"5258190\";\"Dzhuno\";\"other\"\n\"5258190\";\"Джуно\";\"other\"\n\"5258296\";\"Kaukauna\";\"main\"\n\"5258393\";\"Kenosha\";\"main\"\n\"5258393\";\"Chiave per bussole\";\"other\"\n\"5258448\";\"Keshena\";\"main\"\n\"5258480\";\"Kewaskum\";\"main\"\n\"5258490\";\"Kewaunee\";\"main\"\n\"5258525\";\"Kiel\";\"main\"\n\"5258575\";\"Kimberly\";\"main\"\n\"5258824\";\"Kohler\";\"main\"\n\"5258957\";\"La Crosse\";\"main\"\n\"5258957\";\"La-Kross\";\"other\"\n\"5258957\";\"Ла-Кросс\";\"other\"\n\"5259036\";\"Lac du Flambeau\";\"main\"\n\"5259048\";\"Ladysmith\";\"main\"\n\"5259140\";\"Lake Delton\";\"main\"\n\"5259169\";\"Lake Geneva\";\"main\"\n\"5259196\";\"Lake Koshkonong\";\"main\"\n\"5259218\";\"Lake Mills\";\"main\"\n\"5259229\";\"Lake Nebagamon\";\"main\"\n\"5259260\";\"Lake Ripley\";\"main\"\n\"5259304\";\"Lake Wazeecha\";\"main\"\n\"5259313\";\"Lake Wisconsin\";\"main\"\n\"5259317\";\"Lake Wissota\";\"main\"\n\"5259448\";\"Lancaster\";\"main\"\n\"5259448\";\"Lankaster\";\"other\"\n\"5259448\";\"Ланкастер\";\"other\"\n\"5259502\";\"Lannon\";\"main\"\n\"5260262\";\"Little Chute\";\"main\"\n\"5260694\";\"Lodi\";\"main\"\n\"5260694\";\"Лоди\";\"other\"\n\"5260732\";\"Lomira\";\"main\"\n\"5261218\";\"Loyal\";\"main\"\n\"5261245\";\"Luck\";\"main\"\n\"5261340\";\"Luxemburg\";\"main\"\n\"5261457\";\"Madison\";\"main\"\n\"5261457\";\"Madisonas\";\"other\"\n\"5261457\";\"Madisonia\";\"other\"\n\"5261457\";\"Medisun\";\"other\"\n\"5261457\";\"madison\";\"other\"\n\"5261457\";\"mai di xun\";\"other\"\n\"5261457\";\"maidisana\";\"other\"\n\"5261457\";\"mdyswn\";\"other\"\n\"5261457\";\"Медисън\";\"other\"\n\"5261457\";\"מדיסון\";\"other\"\n\"5261457\";\"مدیسون\";\"other\"\n\"5261457\";\"मैडिसन\";\"other\"\n\"5261457\";\"マディソン\";\"other\"\n\"5261457\";\"麦迪逊\";\"other\"\n\"5261556\";\"Manawa\";\"main\"\n\"5261585\";\"Manitowoc\";\"main\"\n\"5261638\";\"Maple Bluff\";\"main\"\n\"5261788\";\"Marathon\";\"main\"\n\"5261852\";\"Marinette\";\"main\"\n\"5261872\";\"Marion\";\"main\"\n\"5261872\";\"Mehrion\";\"other\"\n\"5261872\";\"Мэрион\";\"other\"\n\"5261891\";\"Markesan\";\"main\"\n\"5261952\";\"Marshall\";\"main\"\n\"5261952\";\"Маршалл\";\"other\"\n\"5261969\";\"Marshfield\";\"main\"\n\"5262113\";\"Mauston\";\"main\"\n\"5262137\";\"Mayville\";\"main\"\n\"5262150\";\"Mazomanie\";\"main\"\n\"5262262\";\"McFarland\";\"main\"\n\"5262475\";\"Medford\";\"main\"\n\"5262475\";\"Медфорд\";\"other\"\n\"5262596\";\"Menasha\";\"main\"\n\"5262630\";\"Menomonee Falls\";\"main\"\n\"5262634\";\"Menominee\";\"main\"\n\"5262649\";\"Mequon\";\"main\"\n\"5262680\";\"Merrill\";\"main\"\n\"5262708\";\"Merton\";\"main\"\n\"5262838\";\"Middleton\";\"main\"\n\"5263023\";\"Milton\";\"main\"\n\"5263023\";\"Mil'ton\";\"other\"\n\"5263023\";\"Мильтон\";\"other\"\n\"5263045\";\"Milwaukee\";\"main\"\n\"5263045\";\"Miluoki\";\"other\"\n\"5263045\";\"Milvauchia\";\"other\"\n\"5263045\";\"Milvokis\";\"other\"\n\"5263045\";\"mi er wo ji\";\"other\"\n\"5263045\";\"miruu~oki\";\"other\"\n\"5263045\";\"mylwwqy\";\"other\"\n\"5263045\";\"Милуоки\";\"other\"\n\"5263045\";\"מילווקי\";\"other\"\n\"5263045\";\"ミルウォーキー\";\"other\"\n\"5263045\";\"密尔沃基\";\"other\"\n\"5263113\";\"Mineral Point\";\"main\"\n\"5263207\";\"Mishicot\";\"main\"\n\"5263301\";\"Mondovi\";\"main\"\n\"5263323\";\"Monona\";\"main\"\n\"5263331\";\"Monroe\";\"main\"\n\"5263331\";\"Monro\";\"other\"\n\"5263331\";\"Монро\";\"other\"\n\"5263366\";\"Montello\";\"main\"\n\"5263389\";\"Monticello\";\"main\"\n\"5263580\";\"Mosinee\";\"main\"\n\"5263667\";\"Mount Horeb\";\"main\"\n\"5263965\";\"Mukwonago\";\"main\"\n\"5264038\";\"Muscoda\";\"main\"\n\"5264049\";\"Muskego\";\"main\"\n\"5264158\";\"Nashotah\";\"main\"\n\"5264223\";\"Neenah\";\"main\"\n\"5264241\";\"Neillsville\";\"main\"\n\"5264253\";\"Nekoosa\";\"main\"\n\"5264381\";\"New Berlin\";\"main\"\n\"5264412\";\"New Glarus\";\"main\"\n\"5264423\";\"New Holstein\";\"main\"\n\"5264447\";\"New Lisbon\";\"main\"\n\"5264455\";\"New London\";\"main\"\n\"5264455\";\"N'ju-London\";\"other\"\n\"5264455\";\"Нью-Лондон\";\"other\"\n\"5264475\";\"New Richmond\";\"main\"\n\"5264522\";\"Newburg\";\"main\"\n\"5264569\";\"Niagara\";\"main\"\n\"5264814\";\"North Fond du Lac\";\"main\"\n\"5264862\";\"North Hudson\";\"main\"\n\"5264870\";\"North La Crosse\";\"main\"\n\"5264924\";\"North Prairie\";\"main\"\n\"5265228\";\"Oak Creek\";\"main\"\n\"5265404\";\"Oakfield\";\"main\"\n\"5265499\";\"Oconomowoc\";\"main\"\n\"5265515\";\"Oconto\";\"main\"\n\"5265522\";\"Oconto Falls\";\"main\"\n\"5265585\";\"Okauchee Lake\";\"main\"\n\"5265692\";\"Omro\";\"main\"\n\"5265702\";\"Onalaska\";\"main\"\n\"5265724\";\"Oneida\";\"main\"\n\"5265752\";\"Oostburg\";\"main\"\n\"5265785\";\"Oregon\";\"main\"\n\"5265785\";\"Орегон\";\"other\"\n\"5265792\";\"Orfordville\";\"main\"\n\"5265824\";\"Osceola\";\"main\"\n\"5265838\";\"Oshkosh\";\"main\"\n\"5265857\";\"Osseo\";\"main\"\n\"5266129\";\"Paddock Lake\";\"main\"\n\"5266156\";\"Palmyra\";\"main\"\n\"5266199\";\"Pardeeville\";\"main\"\n\"5266230\";\"Park Falls\";\"main\"\n\"5266483\";\"Pell Lake\";\"main\"\n\"5266653\";\"Peshtigo\";\"main\"\n\"5266731\";\"Pewaukee\";\"main\"\n\"5266764\";\"Phillips\";\"main\"\n\"5267332\";\"Platteville\";\"main\"\n\"5267403\";\"Pleasant Prairie\";\"main\"\n\"5267537\";\"Plover\";\"main\"\n\"5267585\";\"Plymouth\";\"main\"\n\"5267585\";\"Plimut\";\"other\"\n\"5267585\";\"Плимут\";\"other\"\n\"5267769\";\"Port Edwards\";\"main\"\n\"5267776\";\"Port Washington\";\"main\"\n\"5267785\";\"Portage\";\"main\"\n\"5267881\";\"Potter Lake\";\"main\"\n\"5267912\";\"Powers Lake\";\"main\"\n\"5267923\";\"Poynette\";\"main\"\n\"5268002\";\"Prairie du Chien\";\"main\"\n\"5268010\";\"Prairie du Sac\";\"main\"\n\"5268045\";\"Prescott\";\"main\"\n\"5268096\";\"Princeton\";\"main\"\n\"5268096\";\"Prinston\";\"other\"\n\"5268096\";\"Принстон\";\"other\"\n\"5268148\";\"Pulaski\";\"main\"\n\"5268249\";\"Racine\";\"main\"\n\"5268249\";\"Rasijn\";\"other\"\n\"5268249\";\"Rasin\";\"other\"\n\"5268249\";\"Расийн\";\"other\"\n\"5268249\";\"Расин\";\"other\"\n\"5268354\";\"Randolph\";\"main\"\n\"5268354\";\"Randol'f\";\"other\"\n\"5268354\";\"Рандольф\";\"other\"\n\"5268368\";\"Random Lake\";\"main\"\n\"5268544\";\"Redgranite\";\"main\"\n\"5268570\";\"Reedsburg\";\"main\"\n\"5268583\";\"Reedsville\";\"main\"\n\"5268720\";\"Rhinelander\";\"main\"\n\"5268742\";\"Rib Mountain\";\"main\"\n\"5268798\";\"Rice Lake\";\"main\"\n\"5268838\";\"Richfield\";\"main\"\n\"5268850\";\"Richland Center\";\"main\"\n\"5268955\";\"Ripon\";\"main\"\n\"5268986\";\"River Falls\";\"main\"\n\"5269003\";\"River Hills\";\"main\"\n\"5269165\";\"Roberts\";\"main\"\n\"5269196\";\"Rochester\";\"main\"\n\"5269196\";\"Рочестер\";\"other\"\n\"5269583\";\"Rothschild\";\"main\"\n\"5270204\";\"Saint Croix Falls\";\"main\"\n\"5270249\";\"Saint Francis\";\"main\"\n\"5271991\";\"Salem\";\"main\"\n\"5271991\";\"Sejlem\";\"other\"\n\"5271991\";\"Сейлем\";\"other\"\n\"5272227\";\"Sauk City\";\"main\"\n\"5272249\";\"Saukville\";\"main\"\n\"5272378\";\"Schofield\";\"main\"\n\"5272775\";\"Seymour\";\"main\"\n\"5272776\";\"Seymour\";\"main\"\n\"5272851\";\"Sharon\";\"main\"\n\"5272851\";\"Шарон\";\"other\"\n\"5272873\";\"Shawano\";\"main\"\n\"5272893\";\"Sheboygan\";\"main\"\n\"5272893\";\"Shebojgan\";\"other\"\n\"5272893\";\"Шебойган\";\"other\"\n\"5272907\";\"Sheboygan Falls\";\"main\"\n\"5272949\";\"Shell Lake\";\"main\"\n\"5273018\";\"Sherwood\";\"main\"\n\"5273084\";\"Shorewood\";\"main\"\n\"5273087\";\"Shorewood Hills\";\"main\"\n\"5273110\";\"Shullsburg\";\"main\"\n\"5273204\";\"Silver Lake\";\"main\"\n\"5273224\";\"Silver Lake\";\"main\"\n\"5273324\";\"Siren\";\"main\"\n\"5273439\";\"Slinger\";\"main\"\n\"5273614\";\"Somers\";\"main\"\n\"5273620\";\"Somerset\";\"main\"\n\"5273620\";\"Сомерсет\";\"other\"\n\"5273812\";\"South Milwaukee\";\"main\"\n\"5273927\";\"Sparta\";\"main\"\n\"5273956\";\"Spencer\";\"main\"\n\"5274034\";\"Spooner\";\"main\"\n\"5274183\";\"Spring Green\";\"main\"\n\"5274288\";\"Spring Valley\";\"main\"\n\"5274288\";\"Spring-Vehlli\";\"other\"\n\"5274288\";\"Спринг-Вэлли\";\"other\"\n\"5274473\";\"Stanley\";\"main\"\n\"5274644\";\"Stevens Point\";\"main\"\n\"5274787\";\"Stoughton\";\"main\"\n\"5274807\";\"Stratford\";\"main\"\n\"5274807\";\"Стратфорд\";\"other\"\n\"5274867\";\"Sturgeon Bay\";\"main\"\n\"5274885\";\"Sturtevant\";\"main\"\n\"5274887\";\"Suamico\";\"main\"\n\"5275020\";\"Sun Prairie\";\"main\"\n\"5275191\";\"Superior\";\"main\"\n\"5275222\";\"Sussex\";\"main\"\n\"5275391\";\"Tainter Lake\";\"main\"\n\"5275589\";\"Theresa\";\"main\"\n\"5275601\";\"Thiensville\";\"main\"\n\"5275704\";\"Thorp\";\"main\"\n\"5275871\";\"Tomah\";\"main\"\n\"5275884\";\"Tomahawk\";\"main\"\n\"5276084\";\"Trempealeau\";\"main\"\n\"5276542\";\"Twin Lakes\";\"main\"\n\"5276609\";\"Two Rivers\";\"main\"\n\"5276720\";\"Union Grove\";\"main\"\n\"5277002\";\"Valders\";\"main\"\n\"5277142\";\"Verona\";\"main\"\n\"5277276\";\"Viroqua\";\"main\"\n\"5277716\";\"Wales\";\"main\"\n\"5277801\";\"Walworth\";\"main\"\n\"5277856\";\"Washburn\";\"main\"\n\"5277989\";\"Waterloo\";\"main\"\n\"5277989\";\"Vaterlo\";\"other\"\n\"5277989\";\"Ватерло\";\"other\"\n\"5278003\";\"Waterford\";\"main\"\n\"5278003\";\"Uoterford\";\"other\"\n\"5278003\";\"Уотерфорд\";\"other\"\n\"5278005\";\"Watertown\";\"main\"\n\"5278052\";\"Waukesha\";\"main\"\n\"5278073\";\"Waunakee\";\"main\"\n\"5278083\";\"Waupaca\";\"main\"\n\"5278106\";\"Waupun\";\"main\"\n\"5278120\";\"Wausau\";\"main\"\n\"5278148\";\"Wautoma\";\"main\"\n\"5278159\";\"Wauwatosa\";\"main\"\n\"5278411\";\"West Baraboo\";\"main\"\n\"5278420\";\"West Allis\";\"main\"\n\"5278422\";\"West Bend\";\"main\"\n\"5278580\";\"West Milwaukee\";\"main\"\n\"5278608\";\"West Salem\";\"main\"\n\"5278652\";\"Westby\";\"main\"\n\"5278669\";\"Westfield\";\"main\"\n\"5278693\";\"Weston\";\"main\"\n\"5278723\";\"Weyauwega\";\"main\"\n\"5278897\";\"Whitefish Bay\";\"main\"\n\"5278914\";\"Whitehall\";\"main\"\n\"5278931\";\"Whitewater\";\"main\"\n\"5278948\";\"Whiting\";\"main\"\n\"5279098\";\"Williams Bay\";\"main\"\n\"5279285\";\"Wind Lake\";\"main\"\n\"5279291\";\"Wind Point\";\"main\"\n\"5279311\";\"Windsor\";\"main\"\n\"5279311\";\"Vindzor\";\"other\"\n\"5279311\";\"Виндзор\";\"other\"\n\"5279356\";\"Winneconne\";\"main\"\n\"5279422\";\"Wisconsin Dells\";\"main\"\n\"5279436\";\"Wisconsin Rapids\";\"main\"\n\"5279483\";\"Wittenberg\";\"main\"\n\"5279715\";\"Woodville\";\"main\"\n\"5279757\";\"Wrightstown\";\"main\"\n\"5280076\";\"Benwood\";\"main\"\n\"5280087\";\"Bethlehem\";\"main\"\n\"5280087\";\"Vifleem\";\"other\"\n\"5280087\";\"Вифлеем\";\"other\"\n\"5280161\";\"Chester\";\"main\"\n\"5280161\";\"Честер\";\"other\"\n\"5280285\";\"Follansbee\";\"main\"\n\"5280378\";\"Hooverson Heights\";\"main\"\n\"5280523\";\"New Cumberland\";\"main\"\n\"5280534\";\"Newell\";\"main\"\n\"5280814\";\"Weirton\";\"main\"\n\"5280822\";\"Weirton Heights\";\"main\"\n\"5280835\";\"Wellsburg\";\"main\"\n\"5280846\";\"West Liberty\";\"main\"\n\"5280854\";\"Wheeling\";\"main\"\n\"5280935\";\"Newtown\";\"main\"\n\"5280975\";\"Three Rivers\";\"main\"\n\"5281007\";\"South Duxbury\";\"main\"\n\"5281020\";\"Groton\";\"main\"\n\"5281031\";\"Sheffield\";\"main\"\n\"5281055\";\"Carmel\";\"main\"\n\"5281055\";\"Karmel'\";\"other\"\n\"5281055\";\"Кармель\";\"other\"\n\"5281077\";\"Phillips\";\"main\"\n\"5281340\";\"Kohler\";\"main\"\n\"5281551\";\"Ansonia\";\"main\"\n\"5282297\";\"Bethel\";\"main\"\n\"5282550\";\"Blue Hills\";\"main\"\n\"5282804\";\"Bridgeport\";\"main\"\n\"5282804\";\"burijjipoto\";\"other\"\n\"5282804\";\"ブリッジポート\";\"other\"\n\"5282835\";\"Bristol\";\"main\"\n\"5282868\";\"Broad Brook\";\"main\"\n\"5283054\";\"Branford\";\"main\"\n\"5283386\";\"Canaan\";\"main\"\n\"5283461\";\"Canton Valley\";\"main\"\n\"5283837\";\"Cheshire\";\"main\"\n\"5283837\";\"Cheshir\";\"other\"\n\"5283837\";\"Чешир\";\"other\"\n\"5284202\";\"Clinton\";\"main\"\n\"5284202\";\"Klinton\";\"other\"\n\"5284202\";\"Клинтон\";\"other\"\n\"5284283\";\"Colchester\";\"main\"\n\"5284335\";\"Collinsville\";\"main\"\n\"5284335\";\"Kollinsvil'\";\"other\"\n\"5284335\";\"Коллинсвиль\";\"other\"\n\"5284580\";\"Holbrook\";\"main\"\n\"5284580\";\"Kholbruk\";\"other\"\n\"5284580\";\"Холбрук\";\"other\"\n\"5284756\";\"Fillmore\";\"main\"\n\"5284905\";\"Bisbee\";\"main\"\n\"5285018\";\"Middletown\";\"main\"\n\"5285131\";\"Black Canyon City\";\"main\"\n\"5285182\";\"South Taft\";\"main\"\n\"5285214\";\"Vine Hill\";\"main\"\n\"5285480\";\"Dighton\";\"main\"\n\"5286072\";\"Mona\";\"main\"\n\"5287262\";\"Buckeye\";\"main\"\n\"5287565\";\"Bullhead City\";\"main\"\n\"5287938\";\"Bylas\";\"main\"\n\"5288193\";\"Cameron\";\"main\"\n\"5288261\";\"Camp Verde\";\"main\"\n\"5288439\";\"Canyon Day\";\"main\"\n\"5288523\";\"Carefree\";\"main\"\n\"5288636\";\"Casa Grande\";\"main\"\n\"5288661\";\"Casas Adobes\";\"main\"\n\"5288784\";\"Catalina\";\"main\"\n\"5288786\";\"Catalina Foothills\";\"main\"\n\"5288856\";\"Cave Creek\";\"main\"\n\"5289282\";\"Chandler\";\"main\"\n\"5289282\";\"chandora\";\"other\"\n\"5289282\";\"Чандлер\";\"other\"\n\"5289282\";\"チャンドラー\";\"other\"\n\"5289626\";\"Chinle\";\"main\"\n\"5289658\";\"Chino Valley\";\"main\"\n\"5289812\";\"Cibecue\";\"main\"\n\"5290007\";\"Clarkdale\";\"main\"\n\"5290051\";\"Claypool\";\"main\"\n\"5290124\";\"Clifton\";\"main\"\n\"5290124\";\"Klifton\";\"other\"\n\"5290124\";\"Клифтон\";\"other\"\n\"5290463\";\"Colorado City\";\"main\"\n\"5290559\";\"Congress\";\"main\"\n\"5290663\";\"Coolidge\";\"main\"\n\"5290834\";\"Cordes Lakes\";\"main\"\n\"5290912\";\"Cornville\";\"main\"\n\"5291033\";\"Cottonwood\";\"main\"\n\"5292505\";\"Desert Hills\";\"main\"\n\"5292715\";\"Dilkon\";\"main\"\n\"5292912\";\"Dolan Springs\";\"main\"\n\"5293083\";\"Douglas\";\"main\"\n\"5293183\";\"Drexel Heights\";\"main\"\n\"5293390\";\"Dudleyville\";\"main\"\n\"5293569\";\"Eagar\";\"main\"\n\"5293796\";\"East Sahuarita\";\"main\"\n\"5293951\";\"Ehrenberg\";\"main\"\n\"5293996\";\"El Mirage\";\"main\"\n\"5294167\";\"Eloy\";\"main\"\n\"5294698\";\"First Mesa\";\"main\"\n\"5294810\";\"Flagstaff\";\"main\"\n\"5294810\";\"Flagshtok\";\"other\"\n\"5294810\";\"flgstf\";\"other\"\n\"5294810\";\"furaggusutaffu\";\"other\"\n\"5294810\";\"Флагшток\";\"other\"\n\"5294810\";\"فلگستف\";\"other\"\n\"5294810\";\"ፍላግስታፍ፥ አሪዞና\";\"other\"\n\"5294810\";\"フラッグスタッフ\";\"other\"\n\"5294902\";\"Florence\";\"main\"\n\"5294902\";\"Florencija\";\"other\"\n\"5294902\";\"Флоренция\";\"other\"\n\"5294937\";\"Flowing Wells\";\"main\"\n\"5295093\";\"Fort Defiance\";\"main\"\n\"5295143\";\"Fortuna Foothills\";\"main\"\n\"5295177\";\"Fountain Hills\";\"main\"\n\"5295349\";\"Fredonia\";\"main\"\n\"5295585\";\"Ganado\";\"main\"\n\"5295860\";\"Gila Bend\";\"main\"\n\"5295903\";\"Gilbert\";\"main\"\n\"5295903\";\"Гилберт\";\"other\"\n\"5295985\";\"Glendale\";\"main\"\n\"5295985\";\"Glendejl\";\"other\"\n\"5295985\";\"Глендейл\";\"other\"\n\"5296013\";\"Globe\";\"main\"\n\"5296106\";\"Gold Camp\";\"main\"\n\"5296189\";\"Golden Valley\";\"main\"\n\"5296266\";\"Goodyear\";\"main\"\n\"5296409\";\"Grand Canyon Village\";\"main\"\n\"5296802\";\"Green Valley\";\"main\"\n\"5296962\";\"Guadalupe\";\"main\"\n\"5298887\";\"Houck\";\"main\"\n\"5298978\";\"Huachuca City\";\"main\"\n\"5300735\";\"Kachina Village\";\"main\"\n\"5300756\";\"Kaibito\";\"main\"\n\"5300830\";\"Kayenta\";\"main\"\n\"5300854\";\"Kearny\";\"main\"\n\"5300854\";\"Kerni\";\"other\"\n\"5300854\";\"Керни\";\"other\"\n\"5301067\";\"Kingman\";\"main\"\n\"5301067\";\"Kingmen\";\"other\"\n\"5301067\";\"Кингмен\";\"other\"\n\"5301388\";\"Lake Havasu City\";\"main\"\n\"5301407\";\"Lake Montezuma\";\"main\"\n\"5301692\";\"LeChee\";\"main\"\n\"5301819\";\"Leupp\";\"main\"\n\"5302053\";\"Litchfield Park\";\"main\"\n\"5302479\";\"Littletown\";\"main\"\n\"5303304\";\"Lukachukai\";\"main\"\n\"5303587\";\"Mammoth\";\"main\"\n\"5303643\";\"Many Farms\";\"main\"\n\"5303705\";\"Marana\";\"main\"\n\"5303752\";\"Maricopa\";\"main\"\n\"5304060\";\"Mayer\";\"main\"\n\"5304391\";\"Mesa\";\"main\"\n\"5304391\";\"mesa\";\"other\"\n\"5304391\";\"Меса\";\"other\"\n\"5304391\";\"メサ\";\"other\"\n\"5304640\";\"Miami\";\"main\"\n\"5304640\";\"Majami\";\"other\"\n\"5304640\";\"Майами\";\"other\"\n\"5305230\";\"Mohave Valley\";\"main\"\n\"5305503\";\"Morenci\";\"main\"\n\"5305714\";\"Mountainaire\";\"main\"\n\"5305996\";\"Munds Park\";\"main\"\n\"5306523\";\"New River\";\"main\"\n\"5306611\";\"Nogales\";\"main\"\n\"5306611\";\"Ногалес\";\"other\"\n\"5307460\";\"Oracle\";\"main\"\n\"5307540\";\"Oro Valley\";\"main\"\n\"5307778\";\"Page\";\"main\"\n\"5308049\";\"Paradise Valley\";\"main\"\n\"5308116\";\"Parker\";\"main\"\n\"5308116\";\"Паркер\";\"other\"\n\"5308164\";\"Parks\";\"main\"\n\"5308281\";\"Paulden\";\"main\"\n\"5308305\";\"Payson\";\"main\"\n\"5308480\";\"Peoria\";\"main\"\n\"5308480\";\"Peorija\";\"other\"\n\"5308480\";\"Пеория\";\"other\"\n\"5308497\";\"Peridot\";\"main\"\n\"5308655\";\"Phoenix\";\"main\"\n\"5308655\";\"Fenikso\";\"other\"\n\"5308655\";\"Finiks\";\"other\"\n\"5308655\";\"Peniki\";\"other\"\n\"5308655\";\"Pēniki\";\"other\"\n\"5308655\";\"feng huang cheng\";\"other\"\n\"5308655\";\"fenikkusu\";\"other\"\n\"5308655\";\"fwnyks\";\"other\"\n\"5308655\";\"fynyks\";\"other\"\n\"5308655\";\"pnyqs\";\"other\"\n\"5308655\";\"pynyqs\";\"other\"\n\"5308655\";\"Финикс\";\"other\"\n\"5308655\";\"פיניקס\";\"other\"\n\"5308655\";\"פניקס\";\"other\"\n\"5308655\";\"فونیکس\";\"other\"\n\"5308655\";\"فينيكس\";\"other\"\n\"5308655\";\"フェニックス\";\"other\"\n\"5308655\";\"凤凰城\";\"other\"\n\"5308655\";\"鳳凰城\";\"other\"\n\"5308778\";\"Picture Rocks\";\"main\"\n\"5308867\";\"Pima\";\"main\"\n\"5308938\";\"Pine\";\"main\"\n\"5309135\";\"Pinetop-Lakeside\";\"main\"\n\"5309205\";\"Pinon\";\"main\"\n\"5309291\";\"Pirtleville\";\"main\"\n\"5309842\";\"Prescott\";\"main\"\n\"5309858\";\"Prescott Valley\";\"main\"\n\"5310183\";\"Quartzsite\";\"main\"\n\"5310193\";\"Queen Creek\";\"main\"\n\"5311414\";\"Rio Verde\";\"main\"\n\"5312393\";\"Sacaton\";\"main\"\n\"5312476\";\"Safford\";\"main\"\n\"5312544\";\"Sahuarita\";\"main\"\n\"5312572\";\"Saint David\";\"main\"\n\"5312595\";\"Saint Johns\";\"main\"\n\"5312634\";\"Saint Michaels\";\"main\"\n\"5312677\";\"Salome\";\"main\"\n\"5312844\";\"San Carlos\";\"main\"\n\"5312844\";\"San - Karlos\";\"other\"\n\"5312844\";\"Сан - Карлос\";\"other\"\n\"5312845\";\"San Carlos\";\"main\"\n\"5312913\";\"San Luis\";\"main\"\n\"5312933\";\"San Manuel\";\"main\"\n\"5313457\";\"Scottsdale\";\"main\"\n\"5313457\";\"si ke ci dai er\";\"other\"\n\"5313457\";\"sukottsuderu\";\"other\"\n\"5313457\";\"スコッツデール\";\"other\"\n\"5313457\";\"斯科茨代爾\";\"other\"\n\"5313667\";\"Sedona\";\"main\"\n\"5313719\";\"Sehili\";\"main\"\n\"5313737\";\"Sells\";\"main\"\n\"5314245\";\"Show Low\";\"main\"\n\"5314328\";\"Sierra Vista\";\"main\"\n\"5314943\";\"Snowflake\";\"main\"\n\"5315062\";\"Somerton\";\"main\"\n\"5315313\";\"South Tucson\";\"main\"\n\"5315517\";\"Spring Valley\";\"main\"\n\"5315517\";\"Spring-Vehlli\";\"other\"\n\"5315517\";\"Спринг-Вэлли\";\"other\"\n\"5315525\";\"Springerville\";\"main\"\n\"5316028\";\"Strawberry\";\"main\"\n\"5316172\";\"Summit\";\"main\"\n\"5316201\";\"Sun City\";\"main\"\n\"5316205\";\"Sun City West\";\"main\"\n\"5316209\";\"Sun Lakes\";\"main\"\n\"5316215\";\"Sun Valley\";\"main\"\n\"5316405\";\"Superior\";\"main\"\n\"5316428\";\"Surprise\";\"main\"\n\"5316428\";\"Sjurpriz\";\"other\"\n\"5316428\";\"Сюрприз\";\"other\"\n\"5316540\";\"Swift Trail Junction\";\"main\"\n\"5316890\";\"Tanque Verde\";\"main\"\n\"5316960\";\"Taylor\";\"main\"\n\"5316960\";\"Tejlor\";\"other\"\n\"5316960\";\"Тейлор\";\"other\"\n\"5317014\";\"Teec Nos Pos\";\"main\"\n\"5317058\";\"Tempe\";\"main\"\n\"5317058\";\"Темпе\";\"other\"\n\"5317071\";\"Tempe Junction\";\"main\"\n\"5317170\";\"Thatcher\";\"main\"\n\"5317377\";\"Three Points\";\"main\"\n\"5317663\";\"Tolleson\";\"main\"\n\"5317714\";\"Tombstone\";\"main\"\n\"5317714\";\"to~umusuton\";\"other\"\n\"5317714\";\"トゥームストーン\";\"other\"\n\"5317867\";\"Tortolita\";\"main\"\n\"5318279\";\"Tuba City\";\"main\"\n\"5318288\";\"Tubac\";\"main\"\n\"5318313\";\"Tucson\";\"main\"\n\"5318313\";\"Tjuson\";\"other\"\n\"5318313\";\"tsuson\";\"other\"\n\"5318313\";\"tu sen\";\"other\"\n\"5318313\";\"twswn\";\"other\"\n\"5318313\";\"Тюсон\";\"other\"\n\"5318313\";\"טוסון\";\"other\"\n\"5318313\";\"ツーソン\";\"other\"\n\"5318313\";\"图森\";\"other\"\n\"5318320\";\"Tucson Estates\";\"main\"\n\"5319311\";\"Vail\";\"main\"\n\"5320160\";\"Wellton\";\"main\"\n\"5320513\";\"Whetstone\";\"main\"\n\"5320800\";\"Whiteriver\";\"main\"\n\"5320871\";\"Wickenburg\";\"main\"\n\"5321088\";\"Willcox\";\"main\"\n\"5321098\";\"Williams\";\"main\"\n\"5321135\";\"Williamson\";\"main\"\n\"5321390\";\"Window Rock\";\"main\"\n\"5321473\";\"Winslow\";\"main\"\n\"5322027\";\"Youngtown\";\"main\"\n\"5322053\";\"Yuma\";\"main\"\n\"5322053\";\"Juma\";\"other\"\n\"5322053\";\"Юма\";\"other\"\n\"5322317\";\"Acton\";\"main\"\n\"5322317\";\"Ehkton\";\"other\"\n\"5322317\";\"Эктон\";\"other\"\n\"5322400\";\"Adelanto\";\"main\"\n\"5322551\";\"Agoura\";\"main\"\n\"5322553\";\"Agoura Hills\";\"main\"\n\"5322737\";\"Alameda\";\"main\"\n\"5322737\";\"Аламеда\";\"other\"\n\"5322794\";\"Alamo\";\"main\"\n\"5322850\";\"Albany\";\"main\"\n\"5322850\";\"Olbani\";\"other\"\n\"5322850\";\"Олбани\";\"other\"\n\"5323060\";\"Alhambra\";\"main\"\n\"5323060\";\"Al'gambra\";\"other\"\n\"5323060\";\"Альгамбра\";\"other\"\n\"5323163\";\"Aliso Viejo\";\"main\"\n\"5323371\";\"Alondra Park\";\"main\"\n\"5323401\";\"Alpine\";\"main\"\n\"5323499\";\"Alta Sierra\";\"main\"\n\"5323500\";\"Alta Sierra\";\"main\"\n\"5323525\";\"Altadena\";\"main\"\n\"5323566\";\"Alum Rock\";\"main\"\n\"5323694\";\"American Canyon\";\"main\"\n\"5323781\";\"Amesti\";\"main\"\n\"5323810\";\"Anaheim\";\"main\"\n\"5323810\";\"Anakhajm\";\"other\"\n\"5323810\";\"an na han\";\"other\"\n\"5323810\";\"anahaimu\";\"other\"\n\"5323810\";\"Анахайм\";\"other\"\n\"5323810\";\"אנהיים\";\"other\"\n\"5323810\";\"アナハイム\";\"other\"\n\"5323810\";\"安那罕\";\"other\"\n\"5323810\";\"安那翰\";\"other\"\n\"5324004\";\"Angels Camp\";\"main\"\n\"5324040\";\"Angwin\";\"main\"\n\"5324200\";\"Antioch\";\"main\"\n\"5324200\";\"Antiok\";\"other\"\n\"5324200\";\"Антиок\";\"other\"\n\"5324200\";\"Антиоч\";\"other\"\n\"5324363\";\"Apple Valley\";\"main\"\n\"5324400\";\"Aptos\";\"main\"\n\"5324457\";\"Arbuckle\";\"main\"\n\"5324477\";\"Arcadia\";\"main\"\n\"5324477\";\"Arkadija\";\"other\"\n\"5324477\";\"Аркадия\";\"other\"\n\"5324666\";\"Armona\";\"main\"\n\"5324698\";\"Arnold\";\"main\"\n\"5324698\";\"Arnol'd\";\"other\"\n\"5324698\";\"Арнольд\";\"other\"\n\"5324722\";\"Aromas\";\"main\"\n\"5324802\";\"Arroyo Grande\";\"main\"\n\"5324862\";\"Artesia\";\"main\"\n\"5324903\";\"Arvin\";\"main\"\n\"5325011\";\"Ashland\";\"main\"\n\"5325111\";\"Atascadero\";\"main\"\n\"5325147\";\"Atherton\";\"main\"\n\"5325187\";\"Atwater\";\"main\"\n\"5325211\";\"Auberry\";\"main\"\n\"5325223\";\"Auburn\";\"main\"\n\"5325256\";\"August\";\"main\"\n\"5325305\";\"Avalon\";\"main\"\n\"5325327\";\"Avenal\";\"main\"\n\"5325372\";\"Avocado Heights\";\"main\"\n\"5325423\";\"Azusa\";\"main\"\n\"5325738\";\"Bakersfield\";\"main\"\n\"5325738\";\"Bejkursfild\";\"other\"\n\"5325738\";\"bekazufirudo\";\"other\"\n\"5325738\";\"Бейкърсфилд\";\"other\"\n\"5325738\";\"ベーカーズフィールド\";\"other\"\n\"5325866\";\"Baldwin Park\";\"main\"\n\"5326032\";\"Banning\";\"main\"\n\"5326297\";\"Barstow\";\"main\"\n\"5326297\";\"Barstou\";\"other\"\n\"5326297\";\"Барстоу\";\"other\"\n\"5326305\";\"Barstow Heights\";\"main\"\n\"5326561\";\"Bay Point\";\"main\"\n\"5327003\";\"Bear Valley Springs\";\"main\"\n\"5327098\";\"Beaumont\";\"main\"\n\"5327298\";\"Bell\";\"main\"\n\"5327298\";\"Bella\";\"other\"\n\"5327298\";\"Белла\";\"other\"\n\"5327319\";\"Bell Gardens\";\"main\"\n\"5327422\";\"Bellflower\";\"main\"\n\"5327455\";\"Belmont\";\"main\"\n\"5327455\";\"Белмонт\";\"other\"\n\"5327489\";\"Belvedere\";\"main\"\n\"5327490\";\"Belvedere\";\"main\"\n\"5327522\";\"Ben Lomond\";\"main\"\n\"5327550\";\"Benicia\";\"main\"\n\"5327684\";\"Berkeley\";\"main\"\n\"5327684\";\"Berkli\";\"other\"\n\"5327684\";\"Burkli\";\"other\"\n\"5327684\";\"bakure\";\"other\"\n\"5327684\";\"bakuri\";\"other\"\n\"5327684\";\"beokeulli\";\"other\"\n\"5327684\";\"bo ke li\";\"other\"\n\"5327684\";\"Беркли\";\"other\"\n\"5327684\";\"Бъркли\";\"other\"\n\"5327684\";\"バークリー\";\"other\"\n\"5327684\";\"バークレー\";\"other\"\n\"5327684\";\"伯克利\";\"other\"\n\"5327684\";\"버클리\";\"other\"\n\"5327717\";\"Bermuda Dunes\";\"main\"\n\"5327951\";\"Bethel Island\";\"main\"\n\"5328041\";\"Beverly Hills\";\"main\"\n\"5328041\";\"Bev\\\"rli Khils\";\"other\"\n\"5328041\";\"beverli hilsi\";\"other\"\n\"5328041\";\"bibarihiruzu\";\"other\"\n\"5328041\";\"bwrly hylz\";\"other\"\n\"5328041\";\"bwwrly hyls\";\"other\"\n\"5328041\";\"Бевърли Хилс\";\"other\"\n\"5328041\";\"בוורלי הילס\";\"other\"\n\"5328041\";\"بورلی هیلز\";\"other\"\n\"5328041\";\"ბევერლი ჰილსი\";\"other\"\n\"5328041\";\"ビバリーヒルズ\";\"other\"\n\"5328152\";\"Big Bear City\";\"main\"\n\"5328163\";\"Big Bear Lake\";\"main\"\n\"5328426\";\"Big Pine\";\"main\"\n\"5328486\";\"Big River\";\"main\"\n\"5328629\";\"Biggs\";\"main\"\n\"5328724\";\"Biola\";\"main\"\n\"5328808\";\"Bishop\";\"main\"\n\"5329408\";\"Bloomington\";\"main\"\n\"5329408\";\"Blumington\";\"other\"\n\"5329408\";\"Блумингтон\";\"other\"\n\"5329649\";\"Blythe\";\"main\"\n\"5329649\";\"Blajt\";\"other\"\n\"5329649\";\"Блайт\";\"other\"\n\"5329735\";\"Bodega Bay\";\"main\"\n\"5329754\";\"Bodfish\";\"main\"\n\"5329830\";\"Bolinas\";\"main\"\n\"5329954\";\"Bonita\";\"main\"\n\"5330008\";\"Bonsall\";\"main\"\n\"5330056\";\"Bootjack\";\"main\"\n\"5330106\";\"Boron\";\"main\"\n\"5330118\";\"Boronda\";\"main\"\n\"5330143\";\"Borrego Springs\";\"main\"\n\"5330167\";\"Bostonia\";\"main\"\n\"5330222\";\"Boulder Creek\";\"main\"\n\"5330427\";\"Boyes Hot Springs\";\"main\"\n\"5330443\";\"Bradbury\";\"main\"\n\"5330567\";\"Brawley\";\"main\"\n\"5330582\";\"Brea\";\"main\"\n\"5330642\";\"Brentwood\";\"main\"\n\"5330810\";\"Brisbane\";\"main\"\n\"5330854\";\"Broadmoor\";\"main\"\n\"5331568\";\"Buellton\";\"main\"\n\"5331575\";\"Buena Park\";\"main\"\n\"5331587\";\"Buena Vista\";\"main\"\n\"5331835\";\"Burbank\";\"main\"\n\"5331835\";\"B\\\"rbank\";\"other\"\n\"5331835\";\"Berbank\";\"other\"\n\"5331835\";\"Los Angeles County\";\"other\"\n\"5331835\";\"bo ban ke\";\"other\"\n\"5331835\";\"Бербанк\";\"other\"\n\"5331835\";\"Бърбанк\";\"other\"\n\"5331835\";\"伯班克\";\"other\"\n\"5331836\";\"Burbank\";\"main\"\n\"5331836\";\"Berbank\";\"other\"\n\"5331836\";\"Бербанк\";\"other\"\n\"5331920\";\"Burlingame\";\"main\"\n\"5331920\";\"Berlingem\";\"other\"\n\"5331920\";\"Берлингем\";\"other\"\n\"5332251\";\"Buttonwillow\";\"main\"\n\"5332318\";\"Bystrom\";\"main\"\n\"5332374\";\"Cabazon\";\"main\"\n\"5332593\";\"Calabasas\";\"main\"\n\"5332698\";\"Calexico\";\"main\"\n\"5332748\";\"California City\";\"main\"\n\"5332929\";\"Calipatria\";\"main\"\n\"5332937\";\"Calistoga\";\"main\"\n\"5332957\";\"Calimesa\";\"main\"\n\"5333180\";\"Camarillo\";\"main\"\n\"5333207\";\"Cambria\";\"main\"\n\"5333219\";\"Cambrian Park\";\"main\"\n\"5333282\";\"Cameron Park\";\"main\"\n\"5333689\";\"Campbell\";\"main\"\n\"5333689\";\"Kehmpbell\";\"other\"\n\"5333689\";\"Кэмпбелл\";\"other\"\n\"5333976\";\"Canyon Lake\";\"main\"\n\"5334096\";\"Capitola\";\"main\"\n\"5334223\";\"Carlsbad\";\"main\"\n\"5334312\";\"Carmel Valley Village\";\"main\"\n\"5334320\";\"Carmel-by-the-Sea\";\"main\"\n\"5334320\";\"Carmel\";\"other\"\n\"5334320\";\"Carmel by the Sea\";\"other\"\n\"5334336\";\"Carmichael\";\"main\"\n\"5334336\";\"Karmajkl\";\"other\"\n\"5334336\";\"Кармайкл\";\"other\"\n\"5334423\";\"Carpinteria\";\"main\"\n\"5334519\";\"Carson\";\"main\"\n\"5334519\";\"Karson\";\"other\"\n\"5334519\";\"Карсон\";\"other\"\n\"5334575\";\"Caruthers\";\"main\"\n\"5334619\";\"Casa Conejo\";\"main\"\n\"5334928\";\"Castro Valley\";\"main\"\n\"5334928\";\"Kastro Vali\";\"other\"\n\"5334928\";\"Кастро Вали\";\"other\"\n\"5334937\";\"Castroville\";\"main\"\n\"5335006\";\"Cathedral City\";\"main\"\n\"5335131\";\"Cayucos\";\"main\"\n\"5335650\";\"Ceres\";\"main\"\n\"5335650\";\"Cerera\";\"other\"\n\"5335650\";\"Церера\";\"other\"\n\"5335663\";\"Cerritos\";\"main\"\n\"5335663\";\"Serritos\";\"other\"\n\"5335663\";\"Серритос\";\"other\"\n\"5335846\";\"Channel Islands Beach\";\"main\"\n\"5336017\";\"Charter Oak\";\"main\"\n\"5336185\";\"Cherry Valley\";\"main\"\n\"5336190\";\"Cherryland\";\"main\"\n\"5336269\";\"Chico\";\"main\"\n\"5336269\";\"Chiko\";\"other\"\n\"5336269\";\"Чико\";\"other\"\n\"5336457\";\"China Lake Acres\";\"main\"\n\"5336537\";\"Chino\";\"main\"\n\"5336545\";\"Chino Hills\";\"main\"\n\"5336667\";\"Chowchilla\";\"main\"\n\"5336873\";\"Chualar\";\"main\"\n\"5336899\";\"Chula Vista\";\"main\"\n\"5337551\";\"Citrus\";\"main\"\n\"5337561\";\"Citrus Heights\";\"main\"\n\"5337696\";\"Claremont\";\"main\"\n\"5337696\";\"Klermont\";\"other\"\n\"5337696\";\"Клермонт\";\"other\"\n\"5337841\";\"Clayton\";\"main\"\n\"5337908\";\"Clearlake\";\"main\"\n\"5337912\";\"Clearlake Oaks\";\"main\"\n\"5338104\";\"Cloverdale\";\"main\"\n\"5338122\";\"Clovis\";\"main\"\n\"5338122\";\"Klovis\";\"other\"\n\"5338122\";\"Кловис\";\"other\"\n\"5338166\";\"Coachella\";\"main\"\n\"5338196\";\"Coalinga\";\"main\"\n\"5338258\";\"Cobb\";\"main\"\n\"5338567\";\"Colfax\";\"main\"\n\"5338703\";\"Colma\";\"main\"\n\"5338783\";\"Colton\";\"main\"\n\"5338783\";\"Kolton\";\"other\"\n\"5338783\";\"Колтон\";\"other\"\n\"5338800\";\"Columbia\";\"main\"\n\"5338800\";\"Kolumbija\";\"other\"\n\"5338800\";\"Колумбия\";\"other\"\n\"5338866\";\"Colusa\";\"main\"\n\"5338929\";\"Commerce\";\"main\"\n\"5339066\";\"Compton\";\"main\"\n\"5339066\";\"Kompton\";\"other\"\n\"5339066\";\"Комптон\";\"other\"\n\"5339108\";\"Concow\";\"main\"\n\"5339111\";\"Concord\";\"main\"\n\"5339111\";\"Konkord\";\"other\"\n\"5339111\";\"Конкорд\";\"other\"\n\"5339498\";\"Copperopolis\";\"main\"\n\"5339539\";\"Corcoran\";\"main\"\n\"5339539\";\"Korkoran\";\"other\"\n\"5339539\";\"Коркоран\";\"other\"\n\"5339614\";\"Corning\";\"main\"\n\"5339631\";\"Corona\";\"main\"\n\"5339663\";\"Coronado\";\"main\"\n\"5339663\";\"Koronado\";\"other\"\n\"5339663\";\"Коронадо\";\"other\"\n\"5339749\";\"Corralitos\";\"main\"\n\"5339766\";\"Corte Madera\";\"main\"\n\"5339840\";\"Costa Mesa\";\"main\"\n\"5339840\";\"Kosta-Mesa\";\"other\"\n\"5339840\";\"Коста-Меса\";\"other\"\n\"5339865\";\"Cotati\";\"main\"\n\"5339873\";\"Coto De Caza\";\"main\"\n\"5339928\";\"Cottonwood\";\"main\"\n\"5340066\";\"Country Club\";\"main\"\n\"5340160\";\"Covelo\";\"main\"\n\"5340175\";\"Covina\";\"main\"\n\"5340655\";\"Crest\";\"main\"\n\"5340674\";\"Crestline\";\"main\"\n\"5340758\";\"Crockett\";\"main\"\n\"5341051\";\"Cudahy\";\"main\"\n\"5341114\";\"Culver City\";\"main\"\n\"5341114\";\"Kalver-Siti\";\"other\"\n\"5341114\";\"Калвер-Сити\";\"other\"\n\"5341145\";\"Cupertino\";\"main\"\n\"5341145\";\"Kupertino\";\"other\"\n\"5341145\";\"kupachino\";\"other\"\n\"5341145\";\"kupeotino\";\"other\"\n\"5341145\";\"qwprtynw\";\"other\"\n\"5341145\";\"Купертино\";\"other\"\n\"5341145\";\"קופרטינו\";\"other\"\n\"5341145\";\"クパチーノ\";\"other\"\n\"5341145\";\"쿠퍼티노\";\"other\"\n\"5341210\";\"Cutler\";\"main\"\n\"5341256\";\"Cypress\";\"main\"\n\"5341430\";\"Daly City\";\"main\"\n\"5341430\";\"Dejli Siti\";\"other\"\n\"5341430\";\"Дейли Сити\";\"other\"\n\"5341483\";\"Dana Point\";\"main\"\n\"5341531\";\"Danville\";\"main\"\n\"5341704\";\"Davis\";\"main\"\n\"5341704\";\"Dejvis\";\"other\"\n\"5341704\";\"Дейвис\";\"other\"\n\"5341789\";\"Day Valley\";\"main\"\n\"5342252\";\"Deer Park\";\"main\"\n\"5342254\";\"Deer Park\";\"main\"\n\"5342353\";\"Del Mar\";\"main\"\n\"5342381\";\"Del Monte Forest\";\"main\"\n\"5342425\";\"Del Aire\";\"main\"\n\"5342441\";\"Del Rey Oaks\";\"main\"\n\"5342449\";\"Del Rio\";\"main\"\n\"5342485\";\"Delano\";\"main\"\n\"5342485\";\"Делано\";\"other\"\n\"5342522\";\"Delhi\";\"main\"\n\"5342586\";\"Denair\";\"main\"\n\"5342710\";\"Desert Hot Springs\";\"main\"\n\"5342750\";\"Desert View Highlands\";\"main\"\n\"5342970\";\"Diablo\";\"main\"\n\"5342992\";\"Diamond Bar\";\"main\"\n\"5343038\";\"Diamond Springs\";\"main\"\n\"5343171\";\"Dinuba\";\"main\"\n\"5343202\";\"Discovery Bay\";\"main\"\n\"5343303\";\"Dixon\";\"main\"\n\"5343475\";\"Dollar Point\";\"main\"\n\"5343728\";\"Dos Palos\";\"main\"\n\"5343858\";\"Downey\";\"main\"\n\"5343858\";\"Dauni\";\"other\"\n\"5343858\";\"Дауни\";\"other\"\n\"5344147\";\"Duarte\";\"main\"\n\"5344147\";\"Дуарте\";\"other\"\n\"5344157\";\"Dublin\";\"main\"\n\"5344157\";\"Дублин\";\"other\"\n\"5344359\";\"Durham\";\"main\"\n\"5344359\";\"Darem\";\"other\"\n\"5344359\";\"Дарем\";\"other\"\n\"5344702\";\"Earlimart\";\"main\"\n\"5344817\";\"East Compton\";\"main\"\n\"5344844\";\"East Foothills\";\"main\"\n\"5344942\";\"East Hemet\";\"main\"\n\"5344987\";\"East La Mirada\";\"main\"\n\"5344994\";\"East Los Angeles\";\"main\"\n\"5345025\";\"East Oakdale\";\"main\"\n\"5345032\";\"East Palo Alto\";\"main\"\n\"5345038\";\"East Pasadena\";\"main\"\n\"5345049\";\"East Porterville\";\"main\"\n\"5345053\";\"East Quincy\";\"main\"\n\"5345063\";\"East Richmond Heights\";\"main\"\n\"5345071\";\"East San Gabriel\";\"main\"\n\"5345098\";\"East Sonora\";\"main\"\n\"5345171\";\"Easton\";\"main\"\n\"5345171\";\"Iston\";\"other\"\n\"5345171\";\"Истон\";\"other\"\n\"5345529\";\"El Cajon\";\"main\"\n\"5345609\";\"El Centro\";\"main\"\n\"5345623\";\"El Cerrito\";\"main\"\n\"5345624\";\"El Cerrito\";\"main\"\n\"5345679\";\"El Dorado Hills\";\"main\"\n\"5345716\";\"El Granada\";\"main\"\n\"5345743\";\"El Monte\";\"main\"\n\"5345743\";\"Ehl'-Monte\";\"other\"\n\"5345743\";\"Эль-Монте\";\"other\"\n\"5345844\";\"El Rio\";\"main\"\n\"5345860\";\"El Segundo\";\"main\"\n\"5345888\";\"El Sobrante\";\"main\"\n\"5345916\";\"El Verano\";\"main\"\n\"5345990\";\"Eldridge\";\"main\"\n\"5346111\";\"Elk Grove\";\"main\"\n\"5346162\";\"Elkhorn\";\"main\"\n\"5346413\";\"Emerald Lake Hills\";\"main\"\n\"5346462\";\"Emeryville\";\"main\"\n\"5346551\";\"Empire\";\"main\"\n\"5346646\";\"Encinitas\";\"main\"\n\"5346811\";\"Escalon\";\"main\"\n\"5346827\";\"Escondido\";\"main\"\n\"5346871\";\"Esparto\";\"main\"\n\"5347239\";\"Exeter\";\"main\"\n\"5347287\";\"Fair Oaks\";\"main\"\n\"5347322\";\"Fairfax\";\"main\"\n\"5347335\";\"Fairfield\";\"main\"\n\"5347335\";\"Feurfild\";\"other\"\n\"5347335\";\"Феърфилд\";\"other\"\n\"5347397\";\"Fairview\";\"main\"\n\"5347578\";\"Fallbrook\";\"main\"\n\"5347742\";\"Farmersville\";\"main\"\n\"5347903\";\"Felton\";\"main\"\n\"5348299\";\"Firebaugh\";\"main\"\n\"5349613\";\"Florin\";\"main\"\n\"5349613\";\"Флорин\";\"other\"\n\"5349705\";\"Folsom\";\"main\"\n\"5349755\";\"Fontana\";\"main\"\n\"5349755\";\"Фонтана\";\"other\"\n\"5349803\";\"Foothill Farms\";\"main\"\n\"5349828\";\"Foothill Ranch\";\"main\"\n\"5349876\";\"Ford City\";\"main\"\n\"5349949\";\"Forest Meadows\";\"main\"\n\"5349975\";\"Foresthill\";\"main\"\n\"5349984\";\"Forestville\";\"main\"\n\"5350039\";\"Fort Bragg\";\"main\"\n\"5350159\";\"Foster City\";\"main\"\n\"5350207\";\"Fountain Valley\";\"main\"\n\"5350351\";\"Fowler\";\"main\"\n\"5350605\";\"Frazier Park\";\"main\"\n\"5350678\";\"Freedom\";\"main\"\n\"5350734\";\"Fremont\";\"main\"\n\"5350734\";\"Frimont\";\"other\"\n\"5350734\";\"fei li meng\";\"other\"\n\"5350734\";\"Фримонт\";\"other\"\n\"5350734\";\"費利蒙\";\"other\"\n\"5350821\";\"French Camp\";\"main\"\n\"5350937\";\"Fresno\";\"main\"\n\"5350937\";\"Fraxinus\";\"other\"\n\"5350937\";\"furezuno\";\"other\"\n\"5350937\";\"Фресно\";\"other\"\n\"5350937\";\"フレズノ\";\"other\"\n\"5351247\";\"Fullerton\";\"main\"\n\"5351247\";\"Фуллертон\";\"other\"\n\"5351428\";\"Galt\";\"main\"\n\"5351428\";\"Галт\";\"other\"\n\"5351496\";\"Garden Acres\";\"main\"\n\"5351515\";\"Garden Grove\";\"main\"\n\"5351549\";\"Gardena\";\"main\"\n\"5351983\";\"Georgetown\";\"main\"\n\"5352214\";\"Gilroy\";\"main\"\n\"5352350\";\"Glen Avon\";\"main\"\n\"5352423\";\"Glendale\";\"main\"\n\"5352423\";\"Glendejl\";\"other\"\n\"5352423\";\"geullendeil\";\"other\"\n\"5352423\";\"Глендейл\";\"other\"\n\"5352423\";\"글렌데일\";\"other\"\n\"5352439\";\"Glendora\";\"main\"\n\"5352771\";\"Gold River\";\"main\"\n\"5352875\";\"Golden Hills\";\"main\"\n\"5352963\";\"Goleta\";\"main\"\n\"5352963\";\"Goelette\";\"other\"\n\"5352963\";\"Golita\";\"other\"\n\"5352963\";\"Goélette\";\"other\"\n\"5352963\";\"Kuunari\";\"other\"\n\"5352963\";\"Schoener\";\"other\"\n\"5352963\";\"Schoner\";\"other\"\n\"5352963\";\"Schooner\";\"other\"\n\"5352963\";\"Shkhuna\";\"other\"\n\"5352963\";\"Skonert\";\"other\"\n\"5352963\";\"Skonnert\";\"other\"\n\"5352963\";\"Skonnorta\";\"other\"\n\"5352963\";\"Skuna\";\"other\"\n\"5352963\";\"Skuner\";\"other\"\n\"5352963\";\"Szkuner\";\"other\"\n\"5352963\";\"sukuna\";\"other\"\n\"5352963\";\"Škuna\";\"other\"\n\"5352963\";\"Škuner\";\"other\"\n\"5352963\";\"Голита\";\"other\"\n\"5352963\";\"Шхуна\";\"other\"\n\"5352963\";\"スクーナ\";\"other\"\n\"5352997\";\"Gonzales\";\"main\"\n\"5353181\";\"Goshen\";\"main\"\n\"5353181\";\"Гошен\";\"other\"\n\"5353484\";\"Grand Terrace\";\"main\"\n\"5353530\";\"Granite Bay\";\"main\"\n\"5353559\";\"Granite Hills\";\"main\"\n\"5353775\";\"Grass Valley\";\"main\"\n\"5353815\";\"Graton\";\"main\"\n\"5353910\";\"Grayson\";\"main\"\n\"5354114\";\"Green Valley\";\"main\"\n\"5354172\";\"Greenfield\";\"main\"\n\"5354172\";\"Grinfild\";\"other\"\n\"5354172\";\"Гринфилд\";\"other\"\n\"5354307\";\"Gridley\";\"main\"\n\"5354552\";\"Grover Beach\";\"main\"\n\"5354591\";\"Guadalupe\";\"main\"\n\"5354655\";\"Guerneville\";\"main\"\n\"5354747\";\"Gustine\";\"main\"\n\"5354819\";\"Hacienda Heights\";\"main\"\n\"5354943\";\"Half Moon Bay\";\"main\"\n\"5355074\";\"Hamilton City\";\"main\"\n\"5355180\";\"Hanford\";\"main\"\n\"5355180\";\"Khehnford\";\"other\"\n\"5355180\";\"Хэнфорд\";\"other\"\n\"5355318\";\"Harbison Canyon\";\"main\"\n\"5355782\";\"Hawaiian Gardens\";\"main\"\n\"5355828\";\"Hawthorne\";\"main\"\n\"5355933\";\"Hayward\";\"main\"\n\"5355933\";\"Kheju\\\"rd\";\"other\"\n\"5355933\";\"hai wo de\";\"other\"\n\"5355933\";\"heiwado\";\"other\"\n\"5355933\";\"Хейуърд\";\"other\"\n\"5355933\";\"ヘイワード\";\"other\"\n\"5355933\";\"海沃德\";\"other\"\n\"5356012\";\"Healdsburg\";\"main\"\n\"5356096\";\"Heber\";\"main\"\n\"5356277\";\"Hemet\";\"main\"\n\"5356451\";\"Hercules\";\"main\"\n\"5356451\";\"Gerkules\";\"other\"\n\"5356451\";\"Геркулес\";\"other\"\n\"5356521\";\"Hermosa Beach\";\"main\"\n\"5356576\";\"Hesperia\";\"main\"\n\"5356700\";\"Hidden Hills\";\"main\"\n\"5356722\";\"Hidden Meadows\";\"main\"\n\"5356767\";\"Hidden Valley Lake\";\"main\"\n\"5356864\";\"Highgrove\";\"main\"\n\"5356868\";\"Highland\";\"main\"\n\"5357155\";\"Hillsborough\";\"main\"\n\"5357499\";\"Hollister\";\"main\"\n\"5357527\";\"Hollywood\";\"main\"\n\"5357527\";\"Gollivud\";\"other\"\n\"5357527\";\"Holivudas\";\"other\"\n\"5357527\";\"Holivudo\";\"other\"\n\"5357527\";\"Kholivud\";\"other\"\n\"5357527\";\"hali'uda\";\"other\"\n\"5357527\";\"hao lai wu\";\"other\"\n\"5357527\";\"hariuddo\";\"other\"\n\"5357527\";\"holivuda\";\"other\"\n\"5357527\";\"hwlywwd\";\"other\"\n\"5357527\";\"Голливуд\";\"other\"\n\"5357527\";\"Холивуд\";\"other\"\n\"5357527\";\"הוליווד\";\"other\"\n\"5357527\";\"हॉलिवुड\";\"other\"\n\"5357527\";\"হলিউড\";\"other\"\n\"5357527\";\"ハリウッド\";\"other\"\n\"5357527\";\"好莱坞\";\"other\"\n\"5357598\";\"Holtville\";\"main\"\n\"5357730\";\"Home Garden\";\"main\"\n\"5357731\";\"Home Gardens\";\"main\"\n\"5357755\";\"Homeland\";\"main\"\n\"5358539\";\"Hughson\";\"main\"\n\"5358705\";\"Huntington Beach\";\"main\"\n\"5358705\";\"Kh\\\"ntingt\\\"n Bijch\";\"other\"\n\"5358705\";\"Хънтингтън Бийч\";\"other\"\n\"5358736\";\"Huntington Park\";\"main\"\n\"5358769\";\"Huron\";\"main\"\n\"5358901\";\"Idyllwild\";\"main\"\n\"5358901\";\"Ajdilvajld\";\"other\"\n\"5358901\";\"Айдилвайлд\";\"other\"\n\"5359052\";\"Imperial\";\"main\"\n\"5359054\";\"Imperial Beach\";\"main\"\n\"5359426\";\"Indian Wells\";\"main\"\n\"5359446\";\"Indio\";\"main\"\n\"5359446\";\"indio\";\"other\"\n\"5359446\";\"インディオ\";\"other\"\n\"5359488\";\"Inglewood\";\"main\"\n\"5359577\";\"Interlaken\";\"main\"\n\"5359595\";\"Inverness\";\"main\"\n\"5359623\";\"Inyokern\";\"main\"\n\"5359634\";\"Ione\";\"main\"\n\"5359777\";\"Irvine\";\"main\"\n\"5359777\";\"\\\"rvajn\";\"other\"\n\"5359777\";\"Irvajn\";\"other\"\n\"5359777\";\"Irvin\";\"other\"\n\"5359777\";\"abain\";\"other\"\n\"5359777\";\"Ирвайн\";\"other\"\n\"5359777\";\"Ирвин\";\"other\"\n\"5359777\";\"Ървайн\";\"other\"\n\"5359777\";\"アーバイン\";\"other\"\n\"5359817\";\"Irwindale\";\"main\"\n\"5359864\";\"Isla Vista\";\"main\"\n\"5359959\";\"Ivanhoe\";\"main\"\n\"5360160\";\"Jackson\";\"main\"\n\"5360160\";\"Dzhekson\";\"other\"\n\"5360160\";\"Джексон\";\"other\"\n\"5360382\";\"Jamestown\";\"main\"\n\"5360403\";\"Jamul\";\"main\"\n\"5361298\";\"Joshua Tree\";\"main\"\n\"5361384\";\"Julian\";\"main\"\n\"5362725\";\"Kelseyville\";\"main\"\n\"5362776\";\"Kennedy\";\"main\"\n\"5362849\";\"Kensington\";\"main\"\n\"5362864\";\"Kentfield\";\"main\"\n\"5362909\";\"Kerman\";\"main\"\n\"5362994\";\"Kernville\";\"main\"\n\"5363042\";\"Kettleman City\";\"main\"\n\"5363058\";\"Keyes\";\"main\"\n\"5363208\";\"King City\";\"main\"\n\"5363364\";\"Kings Beach\";\"main\"\n\"5363429\";\"Kingsburg\";\"main\"\n\"5363859\";\"La Cañada Flintridge\";\"main\"\n\"5363859\";\"La Canada Flintridge\";\"ascii\"\n\"5363922\";\"La Habra\";\"main\"\n\"5363925\";\"La Habra Heights\";\"main\"\n\"5363990\";\"La Mesa\";\"main\"\n\"5364007\";\"La Mirada\";\"main\"\n\"5364022\";\"La Palma\";\"main\"\n\"5364059\";\"La Presa\";\"main\"\n\"5364066\";\"La Puente\";\"main\"\n\"5364079\";\"La Quinta\";\"main\"\n\"5364095\";\"La Riviera\";\"main\"\n\"5364134\";\"La Verne\";\"main\"\n\"5364195\";\"Ladera Heights\";\"main\"\n\"5364226\";\"Lafayette\";\"main\"\n\"5364226\";\"Lafajet\";\"other\"\n\"5364226\";\"Лафайет\";\"other\"\n\"5364271\";\"Laguna\";\"main\"\n\"5364275\";\"Laguna Beach\";\"main\"\n\"5364306\";\"Laguna Hills\";\"main\"\n\"5364329\";\"Laguna Niguel\";\"main\"\n\"5364369\";\"Laguna Woods\";\"main\"\n\"5364414\";\"Lake Arrowhead\";\"main\"\n\"5364499\";\"Lake Elsinore\";\"main\"\n\"5364514\";\"Lake Forest\";\"main\"\n\"5364554\";\"Lake Isabella\";\"main\"\n\"5364571\";\"Lake Los Angeles\";\"main\"\n\"5364615\";\"Lake Nacimiento\";\"main\"\n\"5364663\";\"Lake San Marcos\";\"main\"\n\"5364729\";\"Lake Wildwood\";\"main\"\n\"5364741\";\"Lake of the Pines\";\"main\"\n\"5364750\";\"Lakeland Village\";\"main\"\n\"5364753\";\"Lakeport\";\"main\"\n\"5364782\";\"Lakeside\";\"main\"\n\"5364826\";\"Lakeview\";\"main\"\n\"5364855\";\"Lakewood\";\"main\"\n\"5364855\";\"Lejkvud\";\"other\"\n\"5364855\";\"Лейквуд\";\"other\"\n\"5364916\";\"Lamont\";\"main\"\n\"5364940\";\"Lancaster\";\"main\"\n\"5364940\";\"Lankaster\";\"other\"\n\"5364940\";\"Ланкастер\";\"other\"\n\"5365113\";\"Larkspur\";\"main\"\n\"5365171\";\"Las Flores\";\"main\"\n\"5365172\";\"Las Flores\";\"main\"\n\"5365203\";\"Las Lomas\";\"main\"\n\"5365425\";\"Lathrop\";\"main\"\n\"5365442\";\"Laton\";\"main\"\n\"5365603\";\"Lawndale\";\"main\"\n\"5365660\";\"Laytonville\";\"main\"\n\"5365687\";\"Le Grand\";\"main\"\n\"5365741\";\"Lebec\";\"main\"\n\"5365893\";\"Lemon Grove\";\"main\"\n\"5365918\";\"Lemoore\";\"main\"\n\"5365937\";\"Lennox\";\"main\"\n\"5365937\";\"Lennoks\";\"other\"\n\"5365937\";\"Леннокс\";\"other\"\n\"5365945\";\"Lenwood\";\"main\"\n\"5366107\";\"Lexington Hills\";\"main\"\n\"5366375\";\"Lincoln\";\"main\"\n\"5366375\";\"Linkoln\";\"other\"\n\"5366375\";\"Линколн\";\"other\"\n\"5366524\";\"Lincoln Village\";\"main\"\n\"5366531\";\"Linda\";\"main\"\n\"5366582\";\"Linden\";\"main\"\n\"5366582\";\"Линден\";\"other\"\n\"5366604\";\"Lindsay\";\"main\"\n\"5367308\";\"Littlerock\";\"main\"\n\"5367314\";\"Live Oak\";\"main\"\n\"5367315\";\"Live Oak\";\"main\"\n\"5367427\";\"Livingston\";\"main\"\n\"5367427\";\"Ливингстон\";\"other\"\n\"5367440\";\"Livermore\";\"main\"\n\"5367440\";\"Liv\\\"rmor\";\"other\"\n\"5367440\";\"ribamoa\";\"other\"\n\"5367440\";\"Ливърмор\";\"other\"\n\"5367440\";\"リバモア\";\"other\"\n\"5367523\";\"Lockeford\";\"main\"\n\"5367565\";\"Lodi\";\"main\"\n\"5367565\";\"Лоди\";\"other\"\n\"5367696\";\"Loma Linda\";\"main\"\n\"5367721\";\"Loma Rica\";\"main\"\n\"5367767\";\"Lomita\";\"main\"\n\"5367788\";\"Lompoc\";\"main\"\n\"5367815\";\"London\";\"main\"\n\"5367815\";\"Londres\";\"other\"\n\"5367846\";\"Lone Pine\";\"main\"\n\"5367929\";\"Long Beach\";\"main\"\n\"5367929\";\"Litus Longum\";\"other\"\n\"5367929\";\"Long Bich\";\"other\"\n\"5367929\";\"Long Bijch\";\"other\"\n\"5367929\";\"Long Bycas\";\"other\"\n\"5367929\";\"Long Byčas\";\"other\"\n\"5367929\";\"Long-Bich\";\"other\"\n\"5367929\";\"lwng byz'\";\"other\"\n\"5367929\";\"rongubichi\";\"other\"\n\"5367929\";\"Лонг Бийч\";\"other\"\n\"5367929\";\"Лонг Бич\";\"other\"\n\"5367929\";\"Лонг-Бич\";\"other\"\n\"5367929\";\"לונג ביץ'\";\"other\"\n\"5367929\";\"ロングビーチ\";\"other\"\n\"5368233\";\"Loomis\";\"main\"\n\"5368304\";\"Los Alamitos\";\"main\"\n\"5368321\";\"Los Alamos\";\"main\"\n\"5368321\";\"Los-Alamos\";\"other\"\n\"5368321\";\"Лос-Аламос\";\"other\"\n\"5368335\";\"Los Altos\";\"main\"\n\"5368335\";\"luo si la tu si\";\"other\"\n\"5368335\";\"lws altws\";\"other\"\n\"5368335\";\"rosuarutosu\";\"other\"\n\"5368335\";\"Лос Алтос\";\"other\"\n\"5368335\";\"לוס אלטוס\";\"other\"\n\"5368335\";\"لوس ألتوس\";\"other\"\n\"5368335\";\"ロスアルトス\";\"other\"\n\"5368335\";\"洛斯拉图斯\";\"other\"\n\"5368335\";\"洛斯拉圖斯\";\"other\"\n\"5368346\";\"Los Altos Hills\";\"main\"\n\"5368361\";\"Los Angeles\";\"main\"\n\"5368361\";\"Angelopolis\";\"other\"\n\"5368361\";\"El Pueblo de Nuestra Senora de los Angeles de Porciuncula\";\"other\"\n\"5368361\";\"El Pueblo de Nuestra Señora de los Ángeles de Porciúncula\";\"other\"\n\"5368361\";\"L.A.\";\"other\"\n\"5368361\";\"LA\";\"other\"\n\"5368361\";\"Los Andzelas\";\"other\"\n\"5368361\";\"Los Andzeles\";\"other\"\n\"5368361\";\"Los Andzhelis\";\"other\"\n\"5368361\";\"Los Andželas\";\"other\"\n\"5368361\";\"Los Antzeles\";\"other\"\n\"5368361\";\"Los Anxhelos\";\"other\"\n\"5368361\";\"Los Anxhelosi\";\"other\"\n\"5368361\";\"Los Anzeles\";\"other\"\n\"5368361\";\"Los Ángeles\";\"other\"\n\"5368361\";\"Los-Andzhehles\";\"other\"\n\"5368361\";\"Los-Andzheles\";\"other\"\n\"5368361\";\"Los-Angeleso\";\"other\"\n\"5368361\";\"Los-Anĝeleso\";\"other\"\n\"5368361\";\"Losandzelosa\";\"other\"\n\"5368361\";\"Losandželosa\";\"other\"\n\"5368361\";\"Lungsod ng Los Angeles\";\"other\"\n\"5368361\";\"Os Anxeles - Los Angeles\";\"other\"\n\"5368361\";\"Os Ánxeles - Los Angeles\";\"other\"\n\"5368361\";\"las encalas\";\"other\"\n\"5368361\";\"los-anjelesi\";\"other\"\n\"5368361\";\"loseuaenjelleseu\";\"other\"\n\"5368361\";\"ls anjls\";\"other\"\n\"5368361\";\"luo shan ji\";\"other\"\n\"5368361\";\"lws anjls\";\"other\"\n\"5368361\";\"rosanzerusu\";\"other\"\n\"5368361\";\"Λος Άντζελες\";\"other\"\n\"5368361\";\"Лос Анджелис\";\"other\"\n\"5368361\";\"Лос Анђелес\";\"other\"\n\"5368361\";\"Лос Анџелес\";\"other\"\n\"5368361\";\"Лос Анҷелес\";\"other\"\n\"5368361\";\"Лос Анӂелес\";\"other\"\n\"5368361\";\"Лос-Анджелес\";\"other\"\n\"5368361\";\"Лос-Анджэлес\";\"other\"\n\"5368361\";\"לוס אנג'לס\";\"other\"\n\"5368361\";\"لس آنجلس\";\"other\"\n\"5368361\";\"لس‌آنجلس\";\"other\"\n\"5368361\";\"لوس آنجلس\";\"other\"\n\"5368361\";\"لوس أنجلس\";\"other\"\n\"5368361\";\"لوس ئانجېلېس\";\"other\"\n\"5368361\";\"لوس ئانجەلەس\";\"other\"\n\"5368361\";\"லாஸ் ஏஞ்சலஸ்\";\"other\"\n\"5368361\";\"ลอสแองเจลีส\";\"other\"\n\"5368361\";\"ლოს-ანჯელესი\";\"other\"\n\"5368361\";\"ロサンゼルス\";\"other\"\n\"5368361\";\"洛杉矶\";\"other\"\n\"5368361\";\"로스앤젤레스\";\"other\"\n\"5368453\";\"Los Banos\";\"main\"\n\"5368453\";\"Los-Ban'os\";\"other\"\n\"5368453\";\"Лос-Баньос\";\"other\"\n\"5368518\";\"Los Gatos\";\"main\"\n\"5368618\";\"Los Serranos\";\"main\"\n\"5368676\";\"Lost Hills\";\"main\"\n\"5368980\";\"Lower Lake\";\"main\"\n\"5369114\";\"Loyola\";\"main\"\n\"5369143\";\"Lucerne\";\"main\"\n\"5369144\";\"Lucerne\";\"main\"\n\"5369367\";\"Lynwood\";\"main\"\n\"5369367\";\"Linvud\";\"other\"\n\"5369367\";\"Линвуд\";\"other\"\n\"5369568\";\"Madera\";\"main\"\n\"5369568\";\"Мадера\";\"other\"\n\"5369569\";\"Madera Acres\";\"main\"\n\"5369690\";\"Magalia\";\"main\"\n\"5369906\";\"Malibu\";\"main\"\n\"5369909\";\"Malibu Beach\";\"main\"\n\"5370006\";\"Mammoth Lakes\";\"main\"\n\"5370082\";\"Manhattan Beach\";\"main\"\n\"5370164\";\"Manteca\";\"main\"\n\"5370440\";\"Maricopa\";\"main\"\n\"5370493\";\"Marina\";\"main\"\n\"5370542\";\"Marina del Rey\";\"main\"\n\"5370590\";\"Mariposa\";\"main\"\n\"5370868\";\"Martinez\";\"main\"\n\"5370868\";\"Martines\";\"other\"\n\"5370868\";\"Мартинес\";\"other\"\n\"5370984\";\"Marysville\";\"main\"\n\"5371243\";\"Mayflower Village\";\"main\"\n\"5371261\";\"Maywood\";\"main\"\n\"5371530\";\"McFarland\";\"main\"\n\"5371905\";\"Meadow Vista\";\"main\"\n\"5371965\";\"Mecca\";\"main\"\n\"5372024\";\"Meiners Oaks\";\"main\"\n\"5372190\";\"Mendota\";\"main\"\n\"5372223\";\"Menlo Park\";\"main\"\n\"5372223\";\"men luo pa ke\";\"other\"\n\"5372223\";\"Менло Парк\";\"other\"\n\"5372223\";\"门洛帕克\";\"other\"\n\"5372242\";\"Mentone\";\"main\"\n\"5372253\";\"Merced\";\"main\"\n\"5372253\";\"Mersed\";\"other\"\n\"5372253\";\"Мерсед\";\"other\"\n\"5372626\";\"Mi-Wuk Village\";\"main\"\n\"5373121\";\"Mill Valley\";\"main\"\n\"5373129\";\"Millbrae\";\"main\"\n\"5373327\";\"Milpitas\";\"main\"\n\"5373327\";\"Милпитас\";\"other\"\n\"5373492\";\"Mira Loma\";\"main\"\n\"5373504\";\"Mira Monte\";\"main\"\n\"5373614\";\"Mission Canyon\";\"main\"\n\"5373650\";\"Mission Hills\";\"main\"\n\"5373763\";\"Mission Viejo\";\"main\"\n\"5373900\";\"Modesto\";\"main\"\n\"5373900\";\"mwdstw\";\"other\"\n\"5373900\";\"Модесто\";\"other\"\n\"5373900\";\"מודסטו\";\"other\"\n\"5373965\";\"Mojave\";\"main\"\n\"5374128\";\"Mono Vista\";\"main\"\n\"5374175\";\"Monrovia\";\"main\"\n\"5374175\";\"Monrovija\";\"other\"\n\"5374175\";\"Монровия\";\"other\"\n\"5374222\";\"Montara\";\"main\"\n\"5374232\";\"Montclair\";\"main\"\n\"5374275\";\"Monte Rio\";\"main\"\n\"5374283\";\"Monte Sereno\";\"main\"\n\"5374322\";\"Montebello\";\"main\"\n\"5374322\";\"Монтебелло\";\"other\"\n\"5374340\";\"Montecito\";\"main\"\n\"5374361\";\"Monterey\";\"main\"\n\"5374361\";\"Monterej\";\"other\"\n\"5374361\";\"montore\";\"other\"\n\"5374361\";\"Монтерей\";\"other\"\n\"5374361\";\"モントレー\";\"other\"\n\"5374406\";\"Monterey Park\";\"main\"\n\"5374648\";\"Moorpark\";\"main\"\n\"5374669\";\"Morada\";\"main\"\n\"5374671\";\"Moraga\";\"main\"\n\"5374732\";\"Moreno Valley\";\"main\"\n\"5374764\";\"Morgan Hill\";\"main\"\n\"5374871\";\"Morongo Valley\";\"main\"\n\"5374920\";\"Morro Bay\";\"main\"\n\"5375034\";\"Moss Beach\";\"main\"\n\"5375439\";\"Mountain Ranch\";\"main\"\n\"5375478\";\"Mountain View\";\"main\"\n\"5375480\";\"Mountain View\";\"main\"\n\"5375480\";\"Mauntin Vju\";\"other\"\n\"5375480\";\"Mauntin-V'ju\";\"other\"\n\"5375480\";\"mang ting wei you\";\"other\"\n\"5375480\";\"Маунтин Вю\";\"other\"\n\"5375480\";\"Маунтин-Вью\";\"other\"\n\"5375480\";\"芒廷维尤\";\"other\"\n\"5375482\";\"Mountain View Acres\";\"main\"\n\"5375883\";\"Murphys\";\"main\"\n\"5375911\";\"Murrieta\";\"main\"\n\"5375916\";\"Murrieta Hot Springs\";\"main\"\n\"5375938\";\"Muscoy\";\"main\"\n\"5376095\";\"Napa\";\"main\"\n\"5376095\";\"napa\";\"other\"\n\"5376095\";\"Напа\";\"other\"\n\"5376095\";\"ナパ\";\"other\"\n\"5376200\";\"National City\";\"main\"\n\"5376358\";\"Needles\";\"main\"\n\"5376502\";\"Nevada City\";\"main\"\n\"5376803\";\"Newark\";\"main\"\n\"5376803\";\"N'juark\";\"other\"\n\"5376803\";\"Ньюарк\";\"other\"\n\"5376870\";\"Newman\";\"main\"\n\"5376890\";\"Newport Beach\";\"main\"\n\"5376959\";\"Nice\";\"main\"\n\"5377032\";\"Niland\";\"main\"\n\"5377100\";\"Nipomo\";\"main\"\n\"5377199\";\"Norco\";\"main\"\n\"5377266\";\"North Auburn\";\"main\"\n\"5377380\";\"North Edwards\";\"main\"\n\"5377381\";\"North El Monte\";\"main\"\n\"5377389\";\"North Fair Oaks\";\"main\"\n\"5377613\";\"North Glendale\";\"main\"\n\"5377640\";\"North Highlands\";\"main\"\n\"5377995\";\"Norwalk\";\"main\"\n\"5378044\";\"Novato\";\"main\"\n\"5378087\";\"Nuevo\";\"main\"\n\"5378408\";\"Oak Park\";\"main\"\n\"5378408\";\"Ouk-Park\";\"other\"\n\"5378408\";\"Оук-Парк\";\"other\"\n\"5378481\";\"Oak View\";\"main\"\n\"5378500\";\"Oakdale\";\"main\"\n\"5378529\";\"Oakhurst\";\"main\"\n\"5378538\";\"Oakland\";\"main\"\n\"5378538\";\"Okland\";\"other\"\n\"5378538\";\"Oklend\";\"other\"\n\"5378538\";\"Oukland\";\"other\"\n\"5378538\";\"ao ke lan\";\"other\"\n\"5378538\";\"okurando\";\"other\"\n\"5378538\";\"Окланд\";\"other\"\n\"5378538\";\"Окленд\";\"other\"\n\"5378538\";\"Оукланд\";\"other\"\n\"5378538\";\"אוקלנד\";\"other\"\n\"5378538\";\"オークランド\";\"other\"\n\"5378538\";\"奥克兰\";\"other\"\n\"5378566\";\"Oakley\";\"main\"\n\"5378692\";\"Occidental\";\"main\"\n\"5378763\";\"Oceano\";\"main\"\n\"5378771\";\"Oceanside\";\"main\"\n\"5378870\";\"Oildale\";\"main\"\n\"5378880\";\"Ojai\";\"main\"\n\"5379264\";\"Olivehurst\";\"main\"\n\"5379439\";\"Ontario\";\"main\"\n\"5379439\";\"Онтарио\";\"other\"\n\"5379475\";\"Opal Cliffs\";\"main\"\n\"5379513\";\"Orange\";\"main\"\n\"5379533\";\"Orange Cove\";\"main\"\n\"5379566\";\"Orangevale\";\"main\"\n\"5379609\";\"Orcutt\";\"main\"\n\"5379678\";\"Orinda\";\"main\"\n\"5379698\";\"Orland\";\"main\"\n\"5379755\";\"Orosi\";\"main\"\n\"5379759\";\"Oroville\";\"main\"\n\"5380184\";\"Oxnard\";\"main\"\n\"5380184\";\"Oksnard\";\"other\"\n\"5380184\";\"Окснард\";\"other\"\n\"5380202\";\"Oxnard Shores\";\"main\"\n\"5380256\";\"Pacheco\";\"main\"\n\"5380420\";\"Pacifica\";\"main\"\n\"5380437\";\"Pacific Grove\";\"main\"\n\"5380537\";\"Pajaro\";\"main\"\n\"5380571\";\"Palermo\";\"main\"\n\"5380626\";\"Palm Desert\";\"main\"\n\"5380668\";\"Palm Springs\";\"main\"\n\"5380668\";\"pamusupuringusu\";\"other\"\n\"5380668\";\"Палм Спрингс\";\"other\"\n\"5380668\";\"パームスプリングス\";\"other\"\n\"5380698\";\"Palmdale\";\"main\"\n\"5380698\";\"Palmdejl\";\"other\"\n\"5380698\";\"Палмдейл\";\"other\"\n\"5380748\";\"Palo Alto\";\"main\"\n\"5380748\";\"Palo Al'to\";\"other\"\n\"5380748\";\"pa luo ao duo\";\"other\"\n\"5380748\";\"paroaruto\";\"other\"\n\"5380748\";\"Пало Алто\";\"other\"\n\"5380748\";\"Пало Альто\";\"other\"\n\"5380748\";\"פאלו אלטו\";\"other\"\n\"5380748\";\"パロアルト\";\"other\"\n\"5380748\";\"帕羅奧多\";\"other\"\n\"5380883\";\"Palos Verdes Estates\";\"main\"\n\"5381002\";\"Paradise\";\"main\"\n\"5381110\";\"Paramount\";\"main\"\n\"5381276\";\"Parksdale\";\"main\"\n\"5381320\";\"Parkwood\";\"main\"\n\"5381325\";\"Parlier\";\"main\"\n\"5381396\";\"Pasadena\";\"main\"\n\"5381396\";\"Pasadina\";\"other\"\n\"5381396\";\"paeseodineo\";\"other\"\n\"5381396\";\"pasadena\";\"other\"\n\"5381396\";\"Пасадина\";\"other\"\n\"5381396\";\"パサデナ\";\"other\"\n\"5381396\";\"패서디너\";\"other\"\n\"5381438\";\"Paso Robles\";\"main\"\n\"5381515\";\"Patterson\";\"main\"\n\"5381796\";\"Pedley\";\"main\"\n\"5381928\";\"Penn Valley\";\"main\"\n\"5382146\";\"Perris\";\"main\"\n\"5382232\";\"Petaluma\";\"main\"\n\"5382232\";\"Петалума\";\"other\"\n\"5382496\";\"Pico Rivera\";\"main\"\n\"5382514\";\"Piedmont\";\"main\"\n\"5382990\";\"Pine Mountain Club\";\"main\"\n\"5383075\";\"Pine Valley\";\"main\"\n\"5383187\";\"Pinole\";\"main\"\n\"5383413\";\"Piru\";\"main\"\n\"5383431\";\"Pismo Beach\";\"main\"\n\"5383465\";\"Pittsburg\";\"main\"\n\"5383465\";\"Pitsb\\\"rg\";\"other\"\n\"5383465\";\"Питсбърг\";\"other\"\n\"5383518\";\"Pixley\";\"main\"\n\"5383527\";\"Placentia\";\"main\"\n\"5383559\";\"Placerville\";\"main\"\n\"5383600\";\"Planada\";\"main\"\n\"5383720\";\"Pleasant Hill\";\"main\"\n\"5383777\";\"Pleasanton\";\"main\"\n\"5383777\";\"Plezant\\\"n\";\"other\"\n\"5383777\";\"Плезантън\";\"other\"\n\"5383872\";\"Plymouth\";\"main\"\n\"5383872\";\"Plimut\";\"other\"\n\"5383872\";\"Плимут\";\"other\"\n\"5384133\";\"Pollock Pines\";\"main\"\n\"5384170\";\"Pomona\";\"main\"\n\"5384170\";\"Помона\";\"other\"\n\"5384339\";\"Port Hueneme\";\"main\"\n\"5384438\";\"Portola\";\"main\"\n\"5384452\";\"Portola Hills\";\"main\"\n\"5384471\";\"Porterville\";\"main\"\n\"5384478\";\"Portola Valley\";\"main\"\n\"5384690\";\"Poway\";\"main\"\n\"5385082\";\"Prunedale\";\"main\"\n\"5385346\";\"Quail Valley\";\"main\"\n\"5385393\";\"Quartz Hill\";\"main\"\n\"5385487\";\"Quincy\";\"main\"\n\"5385487\";\"Kuinsi\";\"other\"\n\"5385487\";\"Куинси\";\"other\"\n\"5385662\";\"Rainbow\";\"main\"\n\"5385793\";\"Ramona\";\"main\"\n\"5385925\";\"Rancho Calaveras\";\"main\"\n\"5385941\";\"Rancho Cordova\";\"main\"\n\"5385955\";\"Rancho Cucamonga\";\"main\"\n\"5386015\";\"Rancho Mirage\";\"main\"\n\"5386027\";\"Rancho Murieta\";\"main\"\n\"5386035\";\"Rancho Palos Verdes\";\"main\"\n\"5386053\";\"Rancho San Diego\";\"main\"\n\"5386073\";\"Rancho Santa Fe\";\"main\"\n\"5386082\";\"Rancho Santa Margarita\";\"main\"\n\"5386754\";\"Redlands\";\"main\"\n\"5386754\";\"ledeullaenjeu\";\"other\"\n\"5386754\";\"reddoranzu\";\"other\"\n\"5386754\";\"レッドランズ\";\"other\"\n\"5386754\";\"레들랜즈\";\"other\"\n\"5386785\";\"Redondo Beach\";\"main\"\n\"5386834\";\"Redwood City\";\"main\"\n\"5386984\";\"Reedley\";\"main\"\n\"5387288\";\"Rialto\";\"main\"\n\"5387288\";\"Rial'to\";\"other\"\n\"5387288\";\"Риальто\";\"other\"\n\"5387411\";\"Richgrove\";\"main\"\n\"5387428\";\"Richmond\";\"main\"\n\"5387428\";\"Richmund\";\"other\"\n\"5387428\";\"Ричмънд\";\"other\"\n\"5387494\";\"Ridgecrest\";\"main\"\n\"5387509\";\"Ridgemark\";\"main\"\n\"5387673\";\"Rio Del Mar\";\"main\"\n\"5387687\";\"Rio Linda\";\"main\"\n\"5387716\";\"Rio Vista\";\"main\"\n\"5387749\";\"Ripon\";\"main\"\n\"5387844\";\"Riverbank\";\"main\"\n\"5387854\";\"Riverdale\";\"main\"\n\"5387865\";\"Riverdale Park\";\"main\"\n\"5387877\";\"Riverside\";\"main\"\n\"5387877\";\"Rivursajd\";\"other\"\n\"5387877\";\"Ривърсайд\";\"other\"\n\"5388319\";\"Rocklin\";\"main\"\n\"5388467\";\"Rodeo\";\"main\"\n\"5388564\";\"Rohnert Park\";\"main\"\n\"5388593\";\"Rolling Hills\";\"main\"\n\"5388601\";\"Rolling Hills Estates\";\"main\"\n\"5388611\";\"Rollingwood\";\"main\"\n\"5388644\";\"Romoland\";\"main\"\n\"5388735\";\"Rosamond\";\"main\"\n\"5388843\";\"Rosedale\";\"main\"\n\"5388858\";\"Roseland\";\"main\"\n\"5388867\";\"Rosemead\";\"main\"\n\"5388873\";\"Rosemont\";\"main\"\n\"5388873\";\"Rozemont\";\"other\"\n\"5388873\";\"Роземонт\";\"other\"\n\"5388881\";\"Roseville\";\"main\"\n\"5388881\";\"Rozvell\";\"other\"\n\"5388881\";\"Розвелл\";\"other\"\n\"5388907\";\"Ross\";\"main\"\n\"5388953\";\"Rossmoor\";\"main\"\n\"5389126\";\"Rowland Heights\";\"main\"\n\"5389213\";\"Rubidoux\";\"main\"\n\"5389288\";\"Running Springs\";\"main\"\n\"5389489\";\"Sacramento\";\"main\"\n\"5389489\";\"Sakramentas\";\"other\"\n\"5389489\";\"Sakramento\";\"other\"\n\"5389489\";\"sakuramento\";\"other\"\n\"5389489\";\"sha jia mian du\";\"other\"\n\"5389489\";\"sqrmntw\";\"other\"\n\"5389489\";\"Сакраменто\";\"other\"\n\"5389489\";\"סקרמנטו\";\"other\"\n\"5389489\";\"サクラメント\";\"other\"\n\"5389489\";\"沙加緬度\";\"other\"\n\"5390267\";\"Saint Helena\";\"main\"\n\"5391291\";\"Salida\";\"main\"\n\"5391295\";\"Salinas\";\"main\"\n\"5391295\";\"Салинас\";\"other\"\n\"5391503\";\"Salton City\";\"main\"\n\"5391597\";\"San Andreas\";\"main\"\n\"5391615\";\"San Anselmo\";\"main\"\n\"5391648\";\"San Antonio Heights\";\"main\"\n\"5391710\";\"San Bernardino\";\"main\"\n\"5391710\";\"saenbeoneodino\";\"other\"\n\"5391710\";\"sanbanadino\";\"other\"\n\"5391710\";\"sanbanadino_\";\"other\"\n\"5391710\";\"Сан Бернардино\";\"other\"\n\"5391710\";\"サンバーナーディーノ\";\"other\"\n\"5391710\";\"サンバーナーディーノ_\";\"other\"\n\"5391710\";\"샌버너디노\";\"other\"\n\"5391749\";\"San Bruno\";\"main\"\n\"5391760\";\"San Carlos\";\"main\"\n\"5391791\";\"San Clemente\";\"main\"\n\"5391811\";\"San Diego\";\"main\"\n\"5391811\";\"Didacopolis\";\"other\"\n\"5391811\";\"Lungsod ng San Diego\";\"other\"\n\"5391811\";\"San Diegas\";\"other\"\n\"5391811\";\"San-Diego\";\"other\"\n\"5391811\";\"saendieigo\";\"other\"\n\"5391811\";\"san dyyghw\";\"other\"\n\"5391811\";\"sandiego\";\"other\"\n\"5391811\";\"sheng de ya ge\";\"other\"\n\"5391811\";\"sn dyygw\";\"other\"\n\"5391811\";\"Сан Диего\";\"other\"\n\"5391811\";\"Сан-Диего\";\"other\"\n\"5391811\";\"Сан-Дієго\";\"other\"\n\"5391811\";\"סן דייגו\";\"other\"\n\"5391811\";\"سان دييغو\";\"other\"\n\"5391811\";\"サンディエゴ\";\"other\"\n\"5391811\";\"聖地牙哥\";\"other\"\n\"5391811\";\"샌디에이고\";\"other\"\n\"5391831\";\"San Diego Country Estates\";\"main\"\n\"5391891\";\"San Dimas\";\"main\"\n\"5391945\";\"San Fernando\";\"main\"\n\"5391959\";\"San Francisco\";\"main\"\n\"5391959\";\"Frisco\";\"other\"\n\"5391959\";\"Kapalakiko\";\"other\"\n\"5391959\";\"Lungsod ng San Francisco\";\"other\"\n\"5391959\";\"San Franciscu\";\"other\"\n\"5391959\";\"San Franciskas\";\"other\"\n\"5391959\";\"San Francisko\";\"other\"\n\"5391959\";\"San Fransisco\";\"other\"\n\"5391959\";\"San Frantzisko\";\"other\"\n\"5391959\";\"San Phransisko\";\"other\"\n\"5391959\";\"San-Francisko\";\"other\"\n\"5391959\";\"Sanctus Franciscus\";\"other\"\n\"5391959\";\"Sanfrancisko\";\"other\"\n\"5391959\";\"jiu jin shan\";\"other\"\n\"5391959\";\"saenpeulansiseuko\";\"other\"\n\"5391959\";\"san f ran si s ko\";\"other\"\n\"5391959\";\"san fransyskw\";\"other\"\n\"5391959\";\"sanfuranshisuko\";\"other\"\n\"5391959\";\"sn prnsysqw\";\"other\"\n\"5391959\";\"Σαν Φρανσίσκο\";\"other\"\n\"5391959\";\"Сан Франциско\";\"other\"\n\"5391959\";\"Сан-Франциско\";\"other\"\n\"5391959\";\"Сан-Франціско\";\"other\"\n\"5391959\";\"סן פרנסיסקו\";\"other\"\n\"5391959\";\"سان فرانسىسكو\";\"other\"\n\"5391959\";\"سان فرانسيسكو\";\"other\"\n\"5391959\";\"سان‌فرانسیسکو\";\"other\"\n\"5391959\";\"ซานฟรานซิสโก\";\"other\"\n\"5391959\";\"სან-ფრანცისკო\";\"other\"\n\"5391959\";\"サンフランシスコ\";\"other\"\n\"5391959\";\"旧金山\";\"other\"\n\"5391959\";\"샌프란시스코\";\"other\"\n\"5392034\";\"San Gabriel\";\"main\"\n\"5392090\";\"San Jacinto\";\"main\"\n\"5392114\";\"San Joaquin\";\"main\"\n\"5392148\";\"San Joaquin Hills\";\"main\"\n\"5392171\";\"San Jose\";\"main\"\n\"5392171\";\"San Chose\";\"other\"\n\"5392171\";\"San Chosė\";\"other\"\n\"5392171\";\"San José\";\"other\"\n\"5392171\";\"San Khose\";\"other\"\n\"5392171\";\"San-Joseo\";\"other\"\n\"5392171\";\"San-Khose\";\"other\"\n\"5392171\";\"Sanctus Iosephus\";\"other\"\n\"5392171\";\"san'noze\";\"other\"\n\"5392171\";\"sheng he xi\";\"other\"\n\"5392171\";\"sn hwzh\";\"other\"\n\"5392171\";\"Сан Хосе\";\"other\"\n\"5392171\";\"Сан-Хосе\";\"other\"\n\"5392171\";\"סן חוזה\";\"other\"\n\"5392171\";\"サンノゼ\";\"other\"\n\"5392171\";\"聖荷西\";\"other\"\n\"5392215\";\"San Juan Bautista\";\"main\"\n\"5392229\";\"San Juan Capistrano\";\"main\"\n\"5392263\";\"San Leandro\";\"main\"\n\"5392281\";\"San Lorenzo\";\"main\"\n\"5392323\";\"San Luis Obispo\";\"main\"\n\"5392368\";\"San Marcos\";\"main\"\n\"5392400\";\"San Marino\";\"main\"\n\"5392408\";\"San Martin\";\"main\"\n\"5392423\";\"San Mateo\";\"main\"\n\"5392423\";\"Сан Матео\";\"other\"\n\"5392448\";\"San Miguel\";\"main\"\n\"5392508\";\"San Pablo\";\"main\"\n\"5392567\";\"San Rafael\";\"main\"\n\"5392593\";\"San Ramon\";\"main\"\n\"5392868\";\"Sanger\";\"main\"\n\"5392900\";\"Santa Ana\";\"main\"\n\"5392900\";\"santaana\";\"other\"\n\"5392900\";\"Санта Ана\";\"other\"\n\"5392900\";\"サンタアナ\";\"other\"\n\"5392952\";\"Santa Barbara\";\"main\"\n\"5392952\";\"Sancta Barbara\";\"other\"\n\"5392952\";\"santababara\";\"other\"\n\"5392952\";\"sheng ba ba la\";\"other\"\n\"5392952\";\"Санта Барбара\";\"other\"\n\"5392952\";\"サンタバーバラ\";\"other\"\n\"5392952\";\"圣巴巴拉\";\"other\"\n\"5393015\";\"Santa Clara\";\"main\"\n\"5393015\";\"Santa Klara\";\"other\"\n\"5393015\";\"santakurara\";\"other\"\n\"5393015\";\"sheng ke la la\";\"other\"\n\"5393015\";\"Санта Клара\";\"other\"\n\"5393015\";\"サンタクララ\";\"other\"\n\"5393015\";\"圣克拉拉\";\"other\"\n\"5393049\";\"Santa Clarita\";\"main\"\n\"5393049\";\"Santa Klarita\";\"other\"\n\"5393049\";\"Санта Кларита\";\"other\"\n\"5393052\";\"Santa Cruz\";\"main\"\n\"5393052\";\"Santa Kruz\";\"other\"\n\"5393052\";\"Санта Круз\";\"other\"\n\"5393128\";\"Santa Fe Springs\";\"main\"\n\"5393180\";\"Santa Maria\";\"main\"\n\"5393180\";\"Santa Marija\";\"other\"\n\"5393180\";\"Санта Мария\";\"other\"\n\"5393212\";\"Santa Monica\";\"main\"\n\"5393212\";\"Sancta Monica\";\"other\"\n\"5393212\";\"Santa Monika\";\"other\"\n\"5393212\";\"Santa Mônica\";\"other\"\n\"5393212\";\"santa mwnyka\";\"other\"\n\"5393212\";\"santamonika\";\"other\"\n\"5393212\";\"Санта Моника\";\"other\"\n\"5393212\";\"سانتا مونيكا\";\"other\"\n\"5393212\";\"サンタモニカ\";\"other\"\n\"5393245\";\"Santa Paula\";\"main\"\n\"5393245\";\"Santa-Paula\";\"other\"\n\"5393245\";\"Санта-Паула\";\"other\"\n\"5393287\";\"Santa Rosa\";\"main\"\n\"5393287\";\"Santa Roza\";\"other\"\n\"5393287\";\"Санта Роза\";\"other\"\n\"5393384\";\"Santa Venetia\";\"main\"\n\"5393388\";\"Santa Ynez\";\"main\"\n\"5393429\";\"Santee\";\"main\"\n\"5393429\";\"Santi\";\"other\"\n\"5393429\";\"Санти\";\"other\"\n\"5393485\";\"Saratoga\";\"main\"\n\"5393611\";\"Sausalito\";\"main\"\n\"5393611\";\"sausarito\";\"other\"\n\"5393611\";\"Саусалито\";\"other\"\n\"5393611\";\"サウサリート\";\"other\"\n\"5393971\";\"Scotts Valley\";\"main\"\n\"5394086\";\"Seal Beach\";\"main\"\n\"5394124\";\"Searles Valley\";\"main\"\n\"5394136\";\"Seaside\";\"main\"\n\"5394136\";\"Sisajd\";\"other\"\n\"5394136\";\"Сисайд\";\"other\"\n\"5394165\";\"Sebastopol\";\"main\"\n\"5394273\";\"Sedco Hills\";\"main\"\n\"5394279\";\"Seeley\";\"main\"\n\"5394329\";\"Selma\";\"main\"\n\"5394329\";\"Sel'ma\";\"other\"\n\"5394329\";\"Сельма\";\"other\"\n\"5394588\";\"Seven Trees\";\"main\"\n\"5394774\";\"Shackelford\";\"main\"\n\"5394842\";\"Shafter\";\"main\"\n\"5394892\";\"Shandon\";\"main\"\n\"5395351\";\"Shingle Springs\";\"main\"\n\"5395622\";\"Sierra Madre\";\"main\"\n\"5395754\";\"Signal Hill\";\"main\"\n\"5396003\";\"Simi Valley\";\"main\"\n\"5396974\";\"Solana Beach\";\"main\"\n\"5397018\";\"Soledad\";\"main\"\n\"5397018\";\"Соледад\";\"other\"\n\"5397059\";\"Solvang\";\"main\"\n\"5397095\";\"Sonoma\";\"main\"\n\"5397165\";\"Sonora\";\"main\"\n\"5397166\";\"Soquel\";\"main\"\n\"5397227\";\"Soulsbyville\";\"main\"\n\"5397374\";\"South Dos Palos\";\"main\"\n\"5397376\";\"South El Monte\";\"main\"\n\"5397603\";\"South Gate\";\"main\"\n\"5397664\";\"South Lake Tahoe\";\"main\"\n\"5397700\";\"South Oroville\";\"main\"\n\"5397717\";\"South Pasadena\";\"main\"\n\"5397765\";\"South San Francisco\";\"main\"\n\"5397771\";\"South San Gabriel\";\"main\"\n\"5397777\";\"South San Jose Hills\";\"main\"\n\"5397841\";\"South Whittier\";\"main\"\n\"5397851\";\"South Yuba City\";\"main\"\n\"5398277\";\"Spring Valley\";\"main\"\n\"5398277\";\"Spring-Vehlli\";\"other\"\n\"5398277\";\"Спринг-Вэлли\";\"other\"\n\"5398318\";\"Springville\";\"main\"\n\"5398440\";\"Squaw Valley\";\"main\"\n\"5398521\";\"Stallion Springs\";\"main\"\n\"5398563\";\"Stanford\";\"main\"\n\"5398563\";\"si tan fu\";\"other\"\n\"5398563\";\"Станфорд\";\"other\"\n\"5398563\";\"斯坦福\";\"other\"\n\"5398630\";\"Stanton\";\"main\"\n\"5398630\";\"Stehnton\";\"other\"\n\"5398630\";\"Стэнтон\";\"other\"\n\"5399020\";\"Stockton\";\"main\"\n\"5399020\";\"Stokt\\\"n\";\"other\"\n\"5399020\";\"sutokkuton\";\"other\"\n\"5399020\";\"Стоктън\";\"other\"\n\"5399020\";\"ストックトン\";\"other\"\n\"5399292\";\"Stratford\";\"main\"\n\"5399292\";\"Стратфорд\";\"other\"\n\"5399305\";\"Strathmore\";\"main\"\n\"5399319\";\"Strawberry\";\"main\"\n\"5399320\";\"Strawberry\";\"main\"\n\"5399629\";\"Suisun\";\"main\"\n\"5399786\";\"Summerland\";\"main\"\n\"5399901\";\"Sun City\";\"main\"\n\"5400065\";\"Sunnyslope\";\"main\"\n\"5400075\";\"Sunnyvale\";\"main\"\n\"5400075\";\"S\\\"nivejl\";\"other\"\n\"5400075\";\"sen ni wei er\";\"other\"\n\"5400075\";\"Сънивейл\";\"other\"\n\"5400075\";\"森尼韦尔\";\"other\"\n\"5400093\";\"Sunol\";\"main\"\n\"5400376\";\"Sutter\";\"main\"\n\"5400400\";\"Sutter Creek\";\"main\"\n\"5400877\";\"Taft\";\"main\"\n\"5400890\";\"Taft Heights\";\"main\"\n\"5400943\";\"Tahoe Vista\";\"main\"\n\"5400996\";\"Talmage\";\"main\"\n\"5401121\";\"Tara Hills\";\"main\"\n\"5401297\";\"Tehachapi\";\"main\"\n\"5401395\";\"Temecula\";\"main\"\n\"5401395\";\"Temekula\";\"other\"\n\"5401395\";\"Темекула\";\"other\"\n\"5401408\";\"Temelec\";\"main\"\n\"5401469\";\"Temple City\";\"main\"\n\"5401516\";\"Templeton\";\"main\"\n\"5401670\";\"Terra Bella\";\"main\"\n\"5402159\";\"Thermalito\";\"main\"\n\"5402405\";\"Thousand Oaks\";\"main\"\n\"5402415\";\"Thousand Palms\";\"main\"\n\"5402535\";\"Tiburon\";\"main\"\n\"5402570\";\"Tierra Buena\";\"main\"\n\"5402740\";\"Tipton\";\"main\"\n\"5403000\";\"Toro Canyon\";\"main\"\n\"5403022\";\"Torrance\";\"main\"\n\"5403022\";\"Torrans\";\"other\"\n\"5403022\";\"Торранс\";\"other\"\n\"5403172\";\"Trabuco Canyon\";\"main\"\n\"5403191\";\"Tracy\";\"main\"\n\"5403191\";\"Trejsi\";\"other\"\n\"5403191\";\"Трейси\";\"other\"\n\"5403676\";\"Truckee\";\"main\"\n\"5403783\";\"Tulare\";\"main\"\n\"5403783\";\"Tular\";\"other\"\n\"5403783\";\"Тулар\";\"other\"\n\"5403971\";\"Tuolumne City\";\"main\"\n\"5404024\";\"Turlock\";\"main\"\n\"5404119\";\"Tustin\";\"main\"\n\"5404122\";\"North Tustin\";\"main\"\n\"5404141\";\"Twain Harte\";\"main\"\n\"5404198\";\"Twentynine Palms\";\"main\"\n\"5404274\";\"Twin Lakes\";\"main\"\n\"5404476\";\"Ukiah\";\"main\"\n\"5404554\";\"Union City\";\"main\"\n\"5404554\";\"Junion-Siti\";\"other\"\n\"5404554\";\"Юнион-Сити\";\"other\"\n\"5404555\";\"Union City\";\"main\"\n\"5404555\";\"Juni\\\"n Siti\";\"other\"\n\"5404555\";\"Юниън Сити\";\"other\"\n\"5404794\";\"Universal City\";\"main\"\n\"5404794\";\"Juniversal-Siti\";\"other\"\n\"5404794\";\"Юниверсал-Сити\";\"other\"\n\"5404915\";\"Upland\";\"main\"\n\"5405038\";\"Upper Lake\";\"main\"\n\"5405228\";\"Vacaville\";\"main\"\n\"5405228\";\"Vakavil\";\"other\"\n\"5405228\";\"Вакавил\";\"other\"\n\"5405279\";\"Val Verde\";\"main\"\n\"5405326\";\"Valinda\";\"main\"\n\"5405346\";\"Valle Vista\";\"main\"\n\"5405380\";\"Vallejo\";\"main\"\n\"5405380\";\"Valekho\";\"other\"\n\"5405380\";\"Валехо\";\"other\"\n\"5405430\";\"Valley Center\";\"main\"\n\"5405554\";\"Valley Springs\";\"main\"\n\"5405737\";\"Vandenberg Village\";\"main\"\n\"5405878\";\"Ventura\";\"main\"\n\"5406222\";\"Victorville\";\"main\"\n\"5406337\";\"Villa Park\";\"main\"\n\"5406337\";\"Вилла Парк\";\"other\"\n\"5406421\";\"Vincent\";\"main\"\n\"5406567\";\"Visalia\";\"main\"\n\"5406602\";\"Vista\";\"main\"\n\"5406879\";\"Waldon\";\"main\"\n\"5406976\";\"Walnut\";\"main\"\n\"5406990\";\"Walnut Creek\";\"main\"\n\"5406990\";\"Uoln\\\"t Krijk\";\"other\"\n\"5406990\";\"Уолнът Крийк\";\"other\"\n\"5407030\";\"Walnut Park\";\"main\"\n\"5407463\";\"Waterford\";\"main\"\n\"5407463\";\"Uoterford\";\"other\"\n\"5407463\";\"Уотерфорд\";\"other\"\n\"5407529\";\"Watsonville\";\"main\"\n\"5407744\";\"Weldon\";\"main\"\n\"5407841\";\"West Athens\";\"main\"\n\"5407908\";\"West Carson\";\"main\"\n\"5407927\";\"West Compton\";\"main\"\n\"5407933\";\"West Covina\";\"main\"\n\"5407933\";\"Zapadna Kovina\";\"other\"\n\"5407933\";\"Zapadnaja Kovina\";\"other\"\n\"5407933\";\"Западна Ковина\";\"other\"\n\"5407933\";\"Западная Ковина\";\"other\"\n\"5408076\";\"West Hollywood\";\"main\"\n\"5408132\";\"West Menlo Park\";\"main\"\n\"5408191\";\"West Puente Valley\";\"main\"\n\"5408211\";\"West Sacramento\";\"main\"\n\"5408395\";\"Westlake Village\";\"main\"\n\"5408406\";\"Westminster\";\"main\"\n\"5408431\";\"Westmont\";\"main\"\n\"5408445\";\"Westmorland\";\"main\"\n\"5408522\";\"Westwood\";\"main\"\n\"5408617\";\"Wheatland\";\"main\"\n\"5409059\";\"Whittier\";\"main\"\n\"5409260\";\"Wildomar\";\"main\"\n\"5409417\";\"Williams\";\"main\"\n\"5409500\";\"Willits\";\"main\"\n\"5409768\";\"Willowbrook\";\"main\"\n\"5409777\";\"Willows\";\"main\"\n\"5409941\";\"Wilton\";\"main\"\n\"5409959\";\"Winchester\";\"main\"\n\"5410004\";\"Windsor\";\"main\"\n\"5410004\";\"Vindzor\";\"other\"\n\"5410004\";\"Виндзор\";\"other\"\n\"5410125\";\"Winters\";\"main\"\n\"5410129\";\"Winter Gardens\";\"main\"\n\"5410144\";\"Winton\";\"main\"\n\"5410227\";\"Wofford Heights\";\"main\"\n\"5410338\";\"Woodacre\";\"main\"\n\"5410382\";\"Woodcrest\";\"main\"\n\"5410416\";\"Woodlake\";\"main\"\n\"5410430\";\"Woodland\";\"main\"\n\"5410535\";\"Woodside\";\"main\"\n\"5410569\";\"Woodville\";\"main\"\n\"5410682\";\"Wrightwood\";\"main\"\n\"5410902\";\"Yorba Linda\";\"main\"\n\"5410943\";\"Yosemite Lakes\";\"main\"\n\"5410999\";\"Yountville\";\"main\"\n\"5411015\";\"Yuba City\";\"main\"\n\"5411046\";\"Yucaipa\";\"main\"\n\"5411079\";\"Yucca Valley\";\"main\"\n\"5411358\";\"Acres Green\";\"main\"\n\"5411479\";\"Alamosa\";\"main\"\n\"5412030\";\"Applewood\";\"main\"\n\"5412199\";\"Arvada\";\"main\"\n\"5412230\";\"Aspen\";\"main\"\n\"5412347\";\"Aurora\";\"main\"\n\"5412347\";\"Avrora\";\"other\"\n\"5412347\";\"Аврора\";\"other\"\n\"5412396\";\"Avon\";\"main\"\n\"5412822\";\"Basalt\";\"main\"\n\"5412887\";\"Battlement Mesa\";\"main\"\n\"5412939\";\"Bayfield\";\"main\"\n\"5413465\";\"Bennett\";\"main\"\n\"5413519\";\"Berkley\";\"main\"\n\"5413597\";\"Beulah Valley\";\"main\"\n\"5414069\";\"Black Forest\";\"main\"\n\"5414872\";\"Breckenridge\";\"main\"\n\"5414941\";\"Brighton\";\"main\"\n\"5414941\";\"Brajton\";\"other\"\n\"5414941\";\"Брайтон\";\"other\"\n\"5415035\";\"Broomfield\";\"main\"\n\"5415306\";\"Buena Vista\";\"main\"\n\"5415502\";\"Burlington\";\"main\"\n\"5415502\";\"Berlington\";\"other\"\n\"5415502\";\"Берлингтон\";\"other\"\n\"5415685\";\"Byers\";\"main\"\n\"5416005\";\"Cañon City\";\"main\"\n\"5416005\";\"Canon City\";\"ascii\"\n\"5416113\";\"Carbondale\";\"main\"\n\"5416200\";\"Carriage Club\";\"main\"\n\"5416322\";\"Castle Pines\";\"main\"\n\"5416329\";\"Castle Rock\";\"main\"\n\"5416357\";\"Castlewood\";\"main\"\n\"5416516\";\"Cedaredge\";\"main\"\n\"5416541\";\"Centennial\";\"main\"\n\"5416565\";\"Center\";\"main\"\n\"5416824\";\"Cherry Hills Village\";\"main\"\n\"5417041\";\"Cimarron Hills\";\"main\"\n\"5417258\";\"Clifton\";\"main\"\n\"5417258\";\"Klifton\";\"other\"\n\"5417258\";\"Клифтон\";\"other\"\n\"5417342\";\"Coal Creek\";\"main\"\n\"5417561\";\"Colorado City\";\"main\"\n\"5417598\";\"Colorado Springs\";\"main\"\n\"5417598\";\"Kolorado Springs\";\"other\"\n\"5417598\";\"ke luo la duo si pu lin si\";\"other\"\n\"5417598\";\"Колорадо Спрингс\";\"other\"\n\"5417598\";\"コロラド・スプリングス\";\"other\"\n\"5417598\";\"科罗拉多斯普林斯\";\"other\"\n\"5417657\";\"Columbine\";\"main\"\n\"5417657\";\"Kolombina\";\"other\"\n\"5417657\";\"Коломбина\";\"other\"\n\"5417702\";\"Columbine Valley\";\"main\"\n\"5417737\";\"Commerce City\";\"main\"\n\"5418104\";\"Cortez\";\"main\"\n\"5418523\";\"Crested Butte\";\"main\"\n\"5418552\";\"Cripple Creek\";\"main\"\n\"5419302\";\"Del Norte\";\"main\"\n\"5419334\";\"Delta\";\"main\"\n\"5419384\";\"Denver\";\"main\"\n\"5419384\";\"Denv\\\"r\";\"other\"\n\"5419384\";\"Denvero\";\"other\"\n\"5419384\";\"dan fu\";\"other\"\n\"5419384\";\"denba\";\"other\"\n\"5419384\";\"denbeo\";\"other\"\n\"5419384\";\"denwexr\";\"other\"\n\"5419384\";\"dnwwr\";\"other\"\n\"5419384\";\"Денвер\";\"other\"\n\"5419384\";\"Денвър\";\"other\"\n\"5419384\";\"דנוור\";\"other\"\n\"5419384\";\"เดนเวอร์\";\"other\"\n\"5419384\";\"デンバー\";\"other\"\n\"5419384\";\"丹佛\";\"other\"\n\"5419384\";\"덴버\";\"other\"\n\"5419431\";\"Derby\";\"main\"\n\"5420241\";\"Durango\";\"main\"\n\"5420328\";\"Eagle\";\"main\"\n\"5420859\";\"Edgewater\";\"main\"\n\"5420885\";\"Edwards\";\"main\"\n\"5420923\";\"El Jebel\";\"main\"\n\"5421001\";\"Elizabeth\";\"main\"\n\"5421001\";\"Ehlizabet\";\"other\"\n\"5421001\";\"Элизабет\";\"other\"\n\"5421250\";\"Englewood\";\"main\"\n\"5421418\";\"Evergreen\";\"main\"\n\"5421709\";\"Federal Heights\";\"main\"\n\"5422018\";\"Florence\";\"main\"\n\"5422018\";\"Florencija\";\"other\"\n\"5422018\";\"Флоренция\";\"other\"\n\"5422140\";\"Fort Carson\";\"main\"\n\"5422191\";\"Fountain\";\"main\"\n\"5422254\";\"Fowler\";\"main\"\n\"5422503\";\"Frisco\";\"main\"\n\"5422534\";\"Fruita\";\"main\"\n\"5422557\";\"Fruitvale\";\"main\"\n\"5422853\";\"Genesee\";\"main\"\n\"5422889\";\"Georgetown\";\"main\"\n\"5423075\";\"Glendale\";\"main\"\n\"5423075\";\"Glendejl\";\"other\"\n\"5423075\";\"Глендейл\";\"other\"\n\"5423078\";\"Gleneagle\";\"main\"\n\"5423092\";\"Glenwood Springs\";\"main\"\n\"5423294\";\"Golden\";\"main\"\n\"5423573\";\"Grand Junction\";\"main\"\n\"5423908\";\"Greenwood Village\";\"main\"\n\"5424099\";\"Gunnison\";\"main\"\n\"5424152\";\"Gypsum\";\"main\"\n\"5425043\";\"Highlands Ranch\";\"main\"\n\"5425247\";\"Holly\";\"main\"\n\"5425619\";\"Hotchkiss\";\"main\"\n\"5425911\";\"Idaho Springs\";\"main\"\n\"5426044\";\"Indian Hills\";\"main\"\n\"5427207\";\"Ken Caryl\";\"main\"\n\"5427540\";\"Kittredge\";\"main\"\n\"5427705\";\"La Junta\";\"main\"\n\"5427771\";\"Lafayette\";\"main\"\n\"5427771\";\"Lafajet\";\"other\"\n\"5427771\";\"Лафайет\";\"other\"\n\"5427946\";\"Lakewood\";\"main\"\n\"5427946\";\"Lejkvud\";\"other\"\n\"5427946\";\"Лейквуд\";\"other\"\n\"5427957\";\"Lamar\";\"main\"\n\"5428055\";\"Las Animas\";\"main\"\n\"5428184\";\"Leadville\";\"main\"\n\"5428504\";\"Limon\";\"main\"\n\"5428534\";\"Lincoln Park\";\"main\"\n\"5429032\";\"Littleton\";\"main\"\n\"5429032\";\"Littlton\";\"other\"\n\"5429032\";\"Литтлтон\";\"other\"\n\"5429208\";\"Lone Tree\";\"main\"\n\"5429522\";\"Louisville\";\"main\"\n\"5429522\";\"Luisvil\";\"other\"\n\"5429522\";\"Луисвил\";\"other\"\n\"5429982\";\"Mancos\";\"main\"\n\"5430023\";\"Manitou Springs\";\"main\"\n\"5431423\";\"Minturn\";\"main\"\n\"5431661\";\"Monte Vista\";\"main\"\n\"5431710\";\"Montrose\";\"main\"\n\"5431740\";\"Monument\";\"main\"\n\"5432105\";\"Mountain Village\";\"main\"\n\"5432410\";\"Nederland\";\"main\"\n\"5432549\";\"New Castle\";\"main\"\n\"5433124\";\"Northglenn\";\"main\"\n\"5433349\";\"Olathe\";\"main\"\n\"5433549\";\"Orchard Mesa\";\"main\"\n\"5433559\";\"Orchard City\";\"main\"\n\"5433564\";\"Ordway\";\"main\"\n\"5433784\";\"Pagosa Springs\";\"main\"\n\"5433806\";\"Palisade\";\"main\"\n\"5433828\";\"Palmer Lake\";\"main\"\n\"5433904\";\"Parachute\";\"main\"\n\"5434006\";\"Parker\";\"main\"\n\"5434006\";\"Паркер\";\"other\"\n\"5434318\";\"Penrose\";\"main\"\n\"5434370\";\"Perry Park\";\"main\"\n\"5435059\";\"Ponderosa Park\";\"main\"\n\"5435464\";\"Pueblo\";\"main\"\n\"5435464\";\"Puehblo\";\"other\"\n\"5435464\";\"Пуэбло\";\"other\"\n\"5435477\";\"Pueblo West\";\"main\"\n\"5436099\";\"Redlands\";\"main\"\n\"5436363\";\"Rifle\";\"main\"\n\"5436808\";\"Rocky Ford\";\"main\"\n\"5437081\";\"Roxborough Park\";\"main\"\n\"5437555\";\"Salida\";\"main\"\n\"5438542\";\"Sheridan\";\"main\"\n\"5438567\";\"Sherrelwood\";\"main\"\n\"5438708\";\"Silt\";\"main\"\n\"5438878\";\"Silverthorne\";\"main\"\n\"5439284\";\"Snowmass Village\";\"main\"\n\"5439752\";\"Southglenn\";\"main\"\n\"5440032\";\"Springfield\";\"main\"\n\"5440032\";\"Springfild\";\"other\"\n\"5440032\";\"Спрингфилд\";\"other\"\n\"5440437\";\"Stonegate\";\"main\"\n\"5440516\";\"Strasburg\";\"main\"\n\"5440520\";\"Stratmoor\";\"main\"\n\"5440838\";\"Superior\";\"main\"\n\"5441199\";\"Telluride\";\"main\"\n\"5441384\";\"The Pinery\";\"main\"\n\"5441492\";\"Thornton\";\"main\"\n\"5441492\";\"Tornton\";\"other\"\n\"5441492\";\"Торнтон\";\"other\"\n\"5441653\";\"Todd Creek\";\"main\"\n\"5441792\";\"Towaoc\";\"main\"\n\"5442007\";\"Trinidad\";\"main\"\n\"5442271\";\"Twin Lakes\";\"main\"\n\"5442727\";\"Vail\";\"main\"\n\"5442727\";\"wel\";\"other\"\n\"5442727\";\"wyyl\";\"other\"\n\"5442727\";\"וייל\";\"other\"\n\"5442727\";\"เวล\";\"other\"\n\"5443206\";\"Walsenburg\";\"main\"\n\"5443482\";\"Welby\";\"main\"\n\"5443910\";\"Westminster\";\"main\"\n\"5443948\";\"Wheat Ridge\";\"main\"\n\"5444689\";\"Woodland Park\";\"main\"\n\"5444707\";\"Woodmoor\";\"main\"\n\"5444997\";\"Atwood\";\"main\"\n\"5445194\";\"Colby\";\"main\"\n\"5445298\";\"Dodge City\";\"main\"\n\"5445298\";\"Dodzh-siti\";\"other\"\n\"5445298\";\"Додж-сити\";\"other\"\n\"5445338\";\"Elkhart\";\"main\"\n\"5445338\";\"Ehlkkhart\";\"other\"\n\"5445338\";\"Элкхарт\";\"other\"\n\"5445439\";\"Garden City\";\"main\"\n\"5445479\";\"Goodland\";\"main\"\n\"5445612\";\"Holcomb\";\"main\"\n\"5445627\";\"Hoxie\";\"main\"\n\"5445636\";\"Hugoton\";\"main\"\n\"5445688\";\"Johnson\";\"main\"\n\"5445780\";\"Lakin\";\"main\"\n\"5445813\";\"Leoti\";\"main\"\n\"5445820\";\"Liberal\";\"main\"\n\"5445820\";\"Liberal'naja\";\"other\"\n\"5445820\";\"Либеральная\";\"other\"\n\"5445952\";\"Meade\";\"main\"\n\"5446091\";\"Oakley\";\"main\"\n\"5446098\";\"Oberlin\";\"main\"\n\"5446185\";\"Plains\";\"main\"\n\"5446345\";\"Saint Francis\";\"main\"\n\"5446410\";\"Satanta\";\"main\"\n\"5446450\";\"Scott City\";\"main\"\n\"5446613\";\"Syracuse\";\"main\"\n\"5446617\";\"Sublette\";\"main\"\n\"5446683\";\"Ulysses\";\"main\"\n\"5454355\";\"Agua Fria\";\"main\"\n\"5454546\";\"Alamo\";\"main\"\n\"5454627\";\"Alamogordo\";\"main\"\n\"5454627\";\"Аламогордо\";\"other\"\n\"5454711\";\"Albuquerque\";\"main\"\n\"5454711\";\"Al'bukerke\";\"other\"\n\"5454711\";\"Albak\\\"rki\";\"other\"\n\"5454711\";\"Alburquerque\";\"other\"\n\"5454711\";\"Duke City\";\"other\"\n\"5454711\";\"The Duke City\";\"other\"\n\"5454711\";\"arubakaki\";\"other\"\n\"5454711\";\"Албакърки\";\"other\"\n\"5454711\";\"Альбукерке\";\"other\"\n\"5454711\";\"אלבקרקי\";\"other\"\n\"5454711\";\"アルバカーキ\";\"other\"\n\"5455381\";\"Anthony\";\"main\"\n\"5455796\";\"Artesia\";\"main\"\n\"5456049\";\"Aztec\";\"main\"\n\"5456682\";\"Bayard\";\"main\"\n\"5456975\";\"Belen\";\"main\"\n\"5457198\";\"Bernalillo\";\"main\"\n\"5457860\";\"Black Rock\";\"main\"\n\"5458067\";\"Bloomfield\";\"main\"\n\"5458319\";\"Boles Acres\";\"main\"\n\"5458548\";\"Bosque Farms\";\"main\"\n\"5460322\";\"Capitan\";\"main\"\n\"5460459\";\"Carlsbad\";\"main\"\n\"5460567\";\"Carrizozo\";\"main\"\n\"5460905\";\"Cedar Crest\";\"main\"\n\"5461240\";\"Chama\";\"main\"\n\"5461645\";\"Chimayo\";\"main\"\n\"5461879\";\"Church Rock\";\"main\"\n\"5462269\";\"Clayton\";\"main\"\n\"5462393\";\"Clovis\";\"main\"\n\"5462393\";\"Klovis\";\"other\"\n\"5462393\";\"Кловис\";\"other\"\n\"5462683\";\"Columbus\";\"main\"\n\"5462683\";\"Kolumbus\";\"other\"\n\"5462683\";\"Колумбус\";\"other\"\n\"5463237\";\"Corrales\";\"main\"\n\"5463890\";\"Crownpoint\";\"main\"\n\"5464806\";\"Deming\";\"main\"\n\"5464936\";\"Dexter\";\"main\"\n\"5465262\";\"Doña Ana\";\"main\"\n\"5465262\";\"Dona Ana\";\"ascii\"\n\"5465650\";\"Dulce\";\"main\"\n\"5466336\";\"Edgewood\";\"main\"\n\"5466567\";\"El Valle de Arroyo Seco\";\"main\"\n\"5466585\";\"Eldorado at Santa Fe\";\"main\"\n\"5466605\";\"Elephant Butte\";\"main\"\n\"5467024\";\"Espanola\";\"main\"\n\"5467102\";\"Estancia\";\"main\"\n\"5467187\";\"Eunice\";\"main\"\n\"5467328\";\"Farmington\";\"main\"\n\"5467328\";\"Фармингтон\";\"other\"\n\"5467905\";\"Flora Vista\";\"main\"\n\"5468133\";\"Fort Sumner\";\"main\"\n\"5468773\";\"Gallup\";\"main\"\n\"5469841\";\"Grants\";\"main\"\n\"5470519\";\"Hagerman\";\"main\"\n\"5470850\";\"Hatch\";\"main\"\n\"5471578\";\"Hobbs\";\"main\"\n\"5471578\";\"Khobbs\";\"other\"\n\"5471578\";\"Хоббс\";\"other\"\n\"5472433\";\"Hurley\";\"main\"\n\"5473083\";\"Jal\";\"main\"\n\"5473163\";\"Jarales\";\"main\"\n\"5473297\";\"Jemez Pueblo\";\"main\"\n\"5474539\";\"Kirtland\";\"main\"\n\"5474794\";\"La Cienega\";\"main\"\n\"5474895\";\"La Luz\";\"main\"\n\"5474960\";\"La Puebla\";\"main\"\n\"5475352\";\"Las Cruces\";\"main\"\n\"5475352\";\"Las-Kruses\";\"other\"\n\"5475352\";\"Лас-Крусес\";\"other\"\n\"5475433\";\"Las Vegas\";\"main\"\n\"5475433\";\"Las-Vegas\";\"other\"\n\"5475433\";\"Лас-Вегас\";\"other\"\n\"5476526\";\"Logan\";\"main\"\n\"5476799\";\"Lordsburg\";\"main\"\n\"5476825\";\"Los Alamos\";\"main\"\n\"5476825\";\"Los-Alamos\";\"other\"\n\"5476825\";\"rosuaramosu\";\"other\"\n\"5476825\";\"Лос-Аламос\";\"other\"\n\"5476825\";\"ロスアラモス\";\"other\"\n\"5476881\";\"Los Chaves\";\"main\"\n\"5476913\";\"Los Lunas\";\"main\"\n\"5476960\";\"Los Ranchos de Albuquerque\";\"main\"\n\"5477080\";\"Loving\";\"main\"\n\"5477090\";\"Lovington\";\"main\"\n\"5478673\";\"Meadow Lake\";\"main\"\n\"5478949\";\"Mescalero\";\"main\"\n\"5478971\";\"Mesilla\";\"main\"\n\"5479418\";\"Milan\";\"main\"\n\"5480181\";\"Moriarty\";\"main\"\n\"5480395\";\"Mountainair\";\"main\"\n\"5480831\";\"Navajo\";\"main\"\n\"5480832\";\"Navajo\";\"main\"\n\"5481793\";\"North Valley\";\"main\"\n\"5483680\";\"Pecos\";\"main\"\n\"5483884\";\"Peralta\";\"main\"\n\"5484613\";\"Placitas\";\"main\"\n\"5484874\";\"Portales\";\"main\"\n\"5485658\";\"Questa\";\"main\"\n\"5486551\";\"Radium Springs\";\"main\"\n\"5486761\";\"Ranchos de Taos\";\"main\"\n\"5486795\";\"Raton\";\"main\"\n\"5487811\";\"Rio Rancho\";\"main\"\n\"5487811\";\"Rio-Rancho\";\"other\"\n\"5487811\";\"Рио-Ранчо\";\"other\"\n\"5488441\";\"Roswell\";\"main\"\n\"5488598\";\"Ruidoso\";\"main\"\n\"5488600\";\"Ruidoso Downs\";\"main\"\n\"5489545\";\"San Felipe Pueblo\";\"main\"\n\"5490223\";\"Santa Clara\";\"main\"\n\"5490223\";\"Santa Klara\";\"other\"\n\"5490223\";\"Санта Клара\";\"other\"\n\"5490263\";\"Santa Fe\";\"main\"\n\"5490263\";\"Santa Fé\";\"other\"\n\"5490263\";\"Santa Fė\";\"other\"\n\"5490263\";\"Santa-Fe\";\"other\"\n\"5490263\";\"Yooto\";\"other\"\n\"5490263\";\"Yootó\";\"other\"\n\"5490263\";\"santafe\";\"other\"\n\"5490263\";\"sheng da fei\";\"other\"\n\"5490263\";\"snth ph\";\"other\"\n\"5490263\";\"Санта Фе\";\"other\"\n\"5490263\";\"Санта-Фе\";\"other\"\n\"5490263\";\"סנטה פה\";\"other\"\n\"5490263\";\"サンタフェ\";\"other\"\n\"5490263\";\"聖大非\";\"other\"\n\"5490338\";\"Santa Rosa\";\"main\"\n\"5490338\";\"Santa-Rosa\";\"other\"\n\"5490338\";\"Санта-Роса\";\"other\"\n\"5490359\";\"Santa Teresa\";\"main\"\n\"5490374\";\"Santa Teresa\";\"main\"\n\"5490385\";\"Santo Domingo Pueblo\";\"main\"\n\"5491288\";\"Shiprock\";\"main\"\n\"5491487\";\"Silver City\";\"main\"\n\"5491999\";\"Socorro\";\"main\"\n\"5491999\";\"Sokorro\";\"other\"\n\"5491999\";\"Сокорро\";\"other\"\n\"5492450\";\"South Valley\";\"main\"\n\"5492762\";\"Springer\";\"main\"\n\"5493403\";\"Sunland Park\";\"main\"\n\"5493798\";\"Taos Pueblo\";\"main\"\n\"5493811\";\"Taos\";\"main\"\n\"5494197\";\"Texico\";\"main\"\n\"5494395\";\"Thoreau\";\"main\"\n\"5494714\";\"Tohatchi\";\"main\"\n\"5495292\";\"Truth or Consequences\";\"main\"\n\"5495360\";\"Tucumcari\";\"main\"\n\"5495380\";\"Tularosa\";\"main\"\n\"5495659\";\"Twin Lakes\";\"main\"\n\"5495937\";\"University Park\";\"main\"\n\"5496046\";\"Upper Fruitland\";\"main\"\n\"5496286\";\"Vado\";\"main\"\n\"5496315\";\"Valencia\";\"main\"\n\"5497876\";\"White Rock\";\"main\"\n\"5497914\";\"White Sands\";\"main\"\n\"5499004\";\"Zuni Pueblo\";\"main\"\n\"5500539\";\"Boulder City\";\"main\"\n\"5500539\";\"Boulder\";\"other\"\n\"5500539\";\"Боулдер\";\"other\"\n\"5500947\";\"Bunkerville\";\"main\"\n\"5501155\";\"Caliente\";\"main\"\n\"5501344\";\"Carson City\";\"main\"\n\"5501344\";\"Carson city\";\"other\"\n\"5501344\";\"Karson-Siti\";\"other\"\n\"5501344\";\"Karsun Siti\";\"other\"\n\"5501344\";\"ka sen cheng\";\"other\"\n\"5501344\";\"karsana siti\";\"other\"\n\"5501344\";\"karsn syty\";\"other\"\n\"5501344\";\"kasonshiti\";\"other\"\n\"5501344\";\"qrswn syty\";\"other\"\n\"5501344\";\"Карсон-Сити\";\"other\"\n\"5501344\";\"Карсън Сити\";\"other\"\n\"5501344\";\"קרסון סיטי\";\"other\"\n\"5501344\";\"كارسن سيتي\";\"other\"\n\"5501344\";\"কার্সন সিটি\";\"other\"\n\"5501344\";\"カーソンシティ\";\"other\"\n\"5501344\";\"卡森城\";\"other\"\n\"5502015\";\"Cold Springs\";\"main\"\n\"5502732\";\"Dayton\";\"main\"\n\"5502732\";\"Dejton\";\"other\"\n\"5502732\";\"Дейтон\";\"other\"\n\"5503694\";\"Ely\";\"main\"\n\"5503766\";\"Enterprise\";\"main\"\n\"5503914\";\"Fallon\";\"main\"\n\"5504003\";\"Fernley\";\"main\"\n\"5504468\";\"Gardnerville\";\"main\"\n\"5504473\";\"Gardnerville Ranchos\";\"main\"\n\"5505321\";\"Hawthorne\";\"main\"\n\"5505411\";\"Henderson\";\"main\"\n\"5505411\";\"Khenderson\";\"other\"\n\"5505411\";\"Хендерсон\";\"other\"\n\"5506040\";\"Indian Springs\";\"main\"\n\"5506353\";\"Johnson Lane\";\"main\"\n\"5506726\";\"Kingsbury\";\"main\"\n\"5506956\";\"Las Vegas\";\"main\"\n\"5506956\";\"Las-Vegas\";\"other\"\n\"5506956\";\"Lungsod ng Las Vegas\";\"other\"\n\"5506956\";\"la si wei jia si\";\"other\"\n\"5506956\";\"las fyghas\";\"other\"\n\"5506956\";\"las weka s\";\"other\"\n\"5506956\";\"lasa bhegasa\";\"other\"\n\"5506956\";\"laseubeigeoseu\";\"other\"\n\"5506956\";\"rasubegasu\";\"other\"\n\"5506956\";\"Лас Вегас\";\"other\"\n\"5506956\";\"Лас-Вегас\";\"other\"\n\"5506956\";\"לאס וגאס\";\"other\"\n\"5506956\";\"لاس فيغاس\";\"other\"\n\"5506956\";\"লাস ভেগাস\";\"other\"\n\"5506956\";\"ลาสเวกัส\";\"other\"\n\"5506956\";\"ラスベガス\";\"other\"\n\"5506956\";\"拉斯维加斯\";\"other\"\n\"5506956\";\"라스베이거스\";\"other\"\n\"5507016\";\"Laughlin\";\"main\"\n\"5508030\";\"McGill\";\"main\"\n\"5508180\";\"Mesquite\";\"main\"\n\"5508379\";\"Minden\";\"main\"\n\"5508470\";\"Moapa Town\";\"main\"\n\"5508473\";\"Moapa Valley\";\"main\"\n\"5509403\";\"North Las Vegas\";\"main\"\n\"5509851\";\"Pahrump\";\"main\"\n\"5509952\";\"Paradise\";\"main\"\n\"5511077\";\"Reno\";\"main\"\n\"5511077\";\"Rino\";\"other\"\n\"5511077\";\"lei nuo\";\"other\"\n\"5511077\";\"rino\";\"other\"\n\"5511077\";\"rynw\";\"other\"\n\"5511077\";\"Рино\";\"other\"\n\"5511077\";\"רינו\";\"other\"\n\"5511077\";\"رينو\";\"other\"\n\"5511077\";\"リノ\";\"other\"\n\"5511077\";\"雷諾\";\"other\"\n\"5511806\";\"Sandy Valley\";\"main\"\n\"5512373\";\"Silver Springs\";\"main\"\n\"5512520\";\"Smith\";\"main\"\n\"5512827\";\"Spanish Springs\";\"main\"\n\"5512862\";\"Sparks\";\"main\"\n\"5512862\";\"Спаркс\";\"other\"\n\"5512909\";\"Spring Valley\";\"main\"\n\"5512909\";\"Spring-Vehlli\";\"other\"\n\"5512909\";\"Спринг-Вэлли\";\"other\"\n\"5512994\";\"Stateline\";\"main\"\n\"5513307\";\"Sun Valley\";\"main\"\n\"5513343\";\"Sunrise Manor\";\"main\"\n\"5513795\";\"Tonopah\";\"main\"\n\"5515110\";\"Whitney\";\"main\"\n\"5515110\";\"Uitni\";\"other\"\n\"5515110\";\"Уитни\";\"other\"\n\"5515345\";\"Winchester\";\"main\"\n\"5515507\";\"Yerington\";\"main\"\n\"5515591\";\"Beaver\";\"main\"\n\"5515613\";\"Boise City\";\"main\"\n\"5515734\";\"Goodwell\";\"main\"\n\"5515743\";\"Guymon\";\"main\"\n\"5515773\";\"Hooker\";\"main\"\n\"5516008\";\"Abernathy\";\"main\"\n\"5516203\";\"Alpine\";\"main\"\n\"5516233\";\"Amarillo\";\"main\"\n\"5516233\";\"amariro\";\"other\"\n\"5516233\";\"Амарилло\";\"other\"\n\"5516233\";\"アマリロ\";\"other\"\n\"5516288\";\"Andrews\";\"main\"\n\"5516368\";\"Anthony\";\"main\"\n\"5517030\";\"Big Lake\";\"main\"\n\"5517061\";\"Big Spring\";\"main\"\n\"5517424\";\"Booker\";\"main\"\n\"5517469\";\"Borger\";\"main\"\n\"5517500\";\"Bovina\";\"main\"\n\"5517550\";\"Brackettville\";\"main\"\n\"5517675\";\"Brownfield\";\"main\"\n\"5518011\";\"Bushland\";\"main\"\n\"5518084\";\"Cactus\";\"main\"\n\"5518214\";\"Canadian\";\"main\"\n\"5518232\";\"Canutillo\";\"main\"\n\"5518239\";\"Canyon\";\"main\"\n\"5518758\";\"Childress\";\"main\"\n\"5518982\";\"Cienegas Terrace\";\"main\"\n\"5519031\";\"Clarendon\";\"main\"\n\"5519055\";\"Claude\";\"main\"\n\"5519254\";\"Colorado City\";\"main\"\n\"5519648\";\"Crane\";\"main\"\n\"5519719\";\"Crosbyton\";\"main\"\n\"5519862\";\"Dalhart\";\"main\"\n\"5520076\";\"Del Rio\";\"main\"\n\"5520110\";\"Denver City\";\"main\"\n\"5520201\";\"Dimmitt\";\"main\"\n\"5520552\";\"Dumas\";\"main\"\n\"5520677\";\"Eagle Pass\";\"main\"\n\"5520687\";\"Earth, TX\";\"main\"\n\"5520687\";\"Earth\";\"other\"\n\"5520953\";\"Eidson Road\";\"main\"\n\"5520993\";\"El Paso\";\"main\"\n\"5520993\";\"El Pasas\";\"other\"\n\"5520993\";\"Ел Пасо\";\"other\"\n\"5520993\";\"エル・パソ\";\"other\"\n\"5521036\";\"Eldorado\";\"main\"\n\"5521075\";\"Elm Creek\";\"main\"\n\"5521233\";\"Fabens\";\"main\"\n\"5521353\";\"Farwell\";\"main\"\n\"5521646\";\"Floydada\";\"main\"\n\"5521715\";\"Fort Davis\";\"main\"\n\"5521724\";\"Fort Hancock\";\"main\"\n\"5521746\";\"Fort Stockton\";\"main\"\n\"5521905\";\"Friona\";\"main\"\n\"5521912\";\"Fritch\";\"main\"\n\"5522019\";\"Gardendale\";\"main\"\n\"5522392\";\"Grape Creek\";\"main\"\n\"5522714\";\"Hale Center\";\"main\"\n\"5522769\";\"Hamlin\";\"main\"\n\"5522876\";\"Hart\";\"main\"\n\"5523074\";\"Hereford\";\"main\"\n\"5523335\";\"Homestead Meadows North\";\"main\"\n\"5523336\";\"Homestead Meadows South\";\"main\"\n\"5523369\";\"Horizon City\";\"main\"\n\"5523659\";\"Idalou\";\"main\"\n\"5523798\";\"Iraan\";\"main\"\n\"5524527\";\"Kermit\";\"main\"\n\"5524849\";\"Lamesa\";\"main\"\n\"5524912\";\"Las Quintas Fronterizas\";\"main\"\n\"5525042\";\"Levelland\";\"main\"\n\"5525295\";\"Littlefield\";\"main\"\n\"5525346\";\"Lockney\";\"main\"\n\"5525455\";\"Lorenzo\";\"main\"\n\"5525577\";\"Lubbock\";\"main\"\n\"5525577\";\"rabokku\";\"other\"\n\"5525577\";\"ラボック\";\"other\"\n\"5525775\";\"Marfa\";\"main\"\n\"5525938\";\"McCamey\";\"main\"\n\"5526145\";\"Memphis\";\"main\"\n\"5526145\";\"Memfis\";\"other\"\n\"5526145\";\"Мемфис\";\"other\"\n\"5526164\";\"Merkel\";\"main\"\n\"5526337\";\"Midland\";\"main\"\n\"5526514\";\"Monahans\";\"main\"\n\"5526657\";\"Morton\";\"main\"\n\"5526805\";\"Muleshoe\";\"main\"\n\"5527503\";\"O'Donnell\";\"main\"\n\"5527554\";\"Odessa\";\"main\"\n\"5527554\";\"Odesa\";\"other\"\n\"5527554\";\"Одеса\";\"other\"\n\"5527554\";\"Одесса\";\"other\"\n\"5527759\";\"Olton\";\"main\"\n\"5527870\";\"Ozona\";\"main\"\n\"5527891\";\"Paducah\";\"main\"\n\"5527953\";\"Pampa\";\"main\"\n\"5527980\";\"Panhandle\";\"main\"\n\"5528182\";\"Pecos\";\"main\"\n\"5528274\";\"Perryton\";\"main\"\n\"5528302\";\"Petersburg\";\"main\"\n\"5528302\";\"Peterburg\";\"other\"\n\"5528302\";\"Петербург\";\"other\"\n\"5528440\";\"Plains\";\"main\"\n\"5528450\";\"Plainview\";\"main\"\n\"5528596\";\"Post\";\"main\"\n\"5528669\";\"Presidio\";\"main\"\n\"5528928\";\"Ransom Canyon\";\"main\"\n\"5529397\";\"Robert Lee\";\"main\"\n\"5529514\";\"Rocksprings\";\"main\"\n\"5529571\";\"Roscoe\";\"main\"\n\"5529592\";\"Rosita North\";\"main\"\n\"5529595\";\"Rosita South\";\"main\"\n\"5529609\";\"Rotan\";\"main\"\n\"5530022\";\"San Angelo\";\"main\"\n\"5530058\";\"San Elizario\";\"main\"\n\"5530403\";\"Seagraves\";\"main\"\n\"5530452\";\"Seminole\";\"main\"\n\"5530469\";\"Seth Ward\";\"main\"\n\"5530549\";\"Shallowater\";\"main\"\n\"5530555\";\"Shamrock\";\"main\"\n\"5530825\";\"Slaton\";\"main\"\n\"5530921\";\"Snyder\";\"main\"\n\"5530932\";\"Socorro\";\"main\"\n\"5530932\";\"Sokorro\";\"other\"\n\"5530932\";\"Сокорро\";\"other\"\n\"5530937\";\"Socorro Mission Number 1 Colonia\";\"main\"\n\"5531255\";\"Sonora\";\"main\"\n\"5531548\";\"Sparks\";\"main\"\n\"5531548\";\"Спаркс\";\"other\"\n\"5531553\";\"Spearman\";\"main\"\n\"5531683\";\"Stanton\";\"main\"\n\"5531683\";\"Stehnton\";\"other\"\n\"5531683\";\"Стэнтон\";\"other\"\n\"5531747\";\"Sterling City\";\"main\"\n\"5531793\";\"Stinnett\";\"main\"\n\"5531815\";\"Stratford\";\"main\"\n\"5531815\";\"Стратфорд\";\"other\"\n\"5531850\";\"Sudan\";\"main\"\n\"5531919\";\"Sundown\";\"main\"\n\"5531929\";\"Sunray\";\"main\"\n\"5531968\";\"Sweetwater\";\"main\"\n\"5532037\";\"Tahoka\";\"main\"\n\"5532423\";\"Tornillo\";\"main\"\n\"5532610\";\"Tulia\";\"main\"\n\"5532893\";\"Val Verde Park\";\"main\"\n\"5532924\";\"Van Horn\";\"main\"\n\"5532993\";\"Vinton\";\"main\"\n\"5533240\";\"Wellington\";\"main\"\n\"5533240\";\"Vellington\";\"other\"\n\"5533240\";\"Веллингтон\";\"other\"\n\"5533366\";\"West Odessa\";\"main\"\n\"5533510\";\"Westway\";\"main\"\n\"5533560\";\"Wheeler\";\"main\"\n\"5533571\";\"White Deer\";\"main\"\n\"5534109\";\"Wolfforth\";\"main\"\n\"5534882\";\"Beaver\";\"main\"\n\"5535484\";\"Blanding\";\"main\"\n\"5536511\";\"Castle Dale\";\"main\"\n\"5536630\";\"Cedar City\";\"main\"\n\"5538080\";\"Delta\";\"main\"\n\"5538668\";\"East Carbon City\";\"main\"\n\"5538914\";\"Enoch\";\"main\"\n\"5538927\";\"Ephraim\";\"main\"\n\"5538929\";\"Enterprise\";\"main\"\n\"5539005\";\"Fairview\";\"main\"\n\"5539059\";\"Ferron\";\"main\"\n\"5539097\";\"Fillmore\";\"main\"\n\"5540026\";\"Gunnison\";\"main\"\n\"5540351\";\"Helper\";\"main\"\n\"5540444\";\"Hildale\";\"main\"\n\"5540810\";\"Huntington\";\"main\"\n\"5540810\";\"Khantington\";\"other\"\n\"5540810\";\"Хантингтон\";\"other\"\n\"5540831\";\"Hurricane\";\"main\"\n\"5541061\";\"Ivins\";\"main\"\n\"5541458\";\"Kanab\";\"main\"\n\"5541693\";\"LaVerkin\";\"main\"\n\"5542758\";\"Manti\";\"main\"\n\"5543146\";\"Milford\";\"main\"\n\"5543146\";\"Милфорд\";\"other\"\n\"5543307\";\"Moab\";\"main\"\n\"5543360\";\"Monroe\";\"main\"\n\"5543360\";\"Monro\";\"other\"\n\"5543360\";\"Монро\";\"other\"\n\"5543377\";\"Monticello\";\"main\"\n\"5543462\";\"Moroni\";\"main\"\n\"5543514\";\"Mount Pleasant\";\"main\"\n\"5543853\";\"Nephi\";\"main\"\n\"5544402\";\"Orangeville\";\"main\"\n\"5544525\";\"Panguitch\";\"main\"\n\"5544619\";\"Parowan\";\"main\"\n\"5545269\";\"Price\";\"main\"\n\"5545710\";\"Richfield\";\"main\"\n\"5546220\";\"Saint George\";\"main\"\n\"5546253\";\"Salina\";\"main\"\n\"5546253\";\"Салина\";\"other\"\n\"5546441\";\"Santa Clara\";\"main\"\n\"5546441\";\"Santa Klara\";\"other\"\n\"5546441\";\"Санта Клара\";\"other\"\n\"5546452\";\"Santaquin\";\"main\"\n\"5548621\";\"Toquerville\";\"main\"\n\"5549222\";\"Washington\";\"main\"\n\"5549222\";\"Vashington\";\"other\"\n\"5549222\";\"Вашингтон\";\"other\"\n\"5549349\";\"Wellington\";\"main\"\n\"5549349\";\"Vellington\";\"other\"\n\"5549349\";\"Веллингтон\";\"other\"\n\"5550161\";\"Gadsden\";\"main\"\n\"5550192\";\"West Sedona\";\"main\"\n\"5550366\";\"Three Rivers\";\"main\"\n\"5550368\";\"Wasco\";\"main\"\n\"5550372\";\"West Bishop\";\"main\"\n\"5550409\";\"Paonia\";\"main\"\n\"5550452\";\"Cimarron\";\"main\"\n\"5550529\";\"Pojoaque\";\"main\"\n\"5550561\";\"Beatty\";\"main\"\n\"5550579\";\"Indian Hills\";\"main\"\n\"5550611\";\"Anton\";\"main\"\n\"5550634\";\"Gruver\";\"main\"\n\"5550669\";\"Ralls\";\"main\"\n\"5550683\";\"Spur\";\"main\"\n\"5550722\";\"Centerfield\";\"main\"\n\"5550996\";\"Ajo\";\"main\"\n\"5551535\";\"Apache Junction\";\"main\"\n\"5551665\";\"Arizona City\";\"main\"\n\"5552301\";\"Avondale\";\"main\"\n\"5552301\";\"Ejvondejl\";\"other\"\n\"5552301\";\"Ейвондейл\";\"other\"\n\"5552323\";\"Avra Valley\";\"main\"\n\"5552575\";\"Bagdad\";\"main\"\n\"5553284\";\"Benson\";\"main\"\n\"5553533\";\"Big Park\";\"main\"\n\"5553755\";\"Wray\";\"main\"\n\"5553955\";\"Rathdrum\";\"main\"\n\"5554072\";\"Juneau\";\"main\"\n\"5554072\";\"Dzhuno\";\"other\"\n\"5554072\";\"Dzuno\";\"other\"\n\"5554072\";\"Džūno\";\"other\"\n\"5554072\";\"Iunellum\";\"other\"\n\"5554072\";\"Juneau City and Borough\";\"other\"\n\"5554072\";\"juno\";\"other\"\n\"5554072\";\"jwnyaw\";\"other\"\n\"5554072\";\"alaska\";\"other\"\n\"5554072\";\"zhu nuo\";\"other\"\n\"5554072\";\"Џуно\";\"other\"\n\"5554072\";\"Джуно\";\"other\"\n\"5554072\";\"جونیاؤ، الاسکا\";\"other\"\n\"5554072\";\"جونیا‌ؤ\";\"other\"\n\"5554072\";\"ジュノー\";\"other\"\n\"5554072\";\"朱諾\";\"other\"\n\"5554419\";\"Beach\";\"main\"\n\"5554428\";\"Ketchikan\";\"main\"\n\"5554428\";\"kechikan\";\"other\"\n\"5554428\";\"Кетчикан\";\"other\"\n\"5554428\";\"ケチカン\";\"other\"\n\"5555083\";\"Little Cottonwood Creek Valley\";\"main\"\n\"5555097\";\"Salem\";\"main\"\n\"5555097\";\"Sejlem\";\"other\"\n\"5555097\";\"Сейлем\";\"other\"\n\"5555129\";\"Wellsville\";\"main\"\n\"5555235\";\"Lea Hill\";\"main\"\n\"5555695\";\"Metlakatla\";\"main\"\n\"5556338\";\"Petersburg\";\"main\"\n\"5556338\";\"Peterburg\";\"other\"\n\"5556338\";\"Петербург\";\"other\"\n\"5557293\";\"Sitka\";\"main\"\n\"5557293\";\"Ситка\";\"other\"\n\"5558586\";\"Wrangell\";\"main\"\n\"5558829\";\"Alturas\";\"main\"\n\"5558857\";\"Anderson\";\"main\"\n\"5558857\";\"Андерсон\";\"other\"\n\"5558953\";\"Arcata\";\"main\"\n\"5559320\";\"Bayside\";\"main\"\n\"5559327\";\"Bayview\";\"main\"\n\"5560020\";\"Blue Lake\";\"main\"\n\"5560655\";\"Burney\";\"main\"\n\"5561194\";\"Central Valley (historical)\";\"main\"\n\"5561279\";\"Chester\";\"main\"\n\"5561279\";\"Честер\";\"other\"\n\"5561894\";\"Cottonwood\";\"main\"\n\"5562087\";\"Crescent City\";\"main\"\n\"5562199\";\"Cutten\";\"main\"\n\"5562961\";\"Dunsmuir\";\"main\"\n\"5563397\";\"Eureka\";\"main\"\n\"5563397\";\"Ehvrika\";\"other\"\n\"5563397\";\"Эврика\";\"other\"\n\"5563573\";\"Ferndale\";\"main\"\n\"5563839\";\"Fortuna\";\"main\"\n\"5564488\";\"Greenville\";\"main\"\n\"5564488\";\"Grinvill\";\"other\"\n\"5564488\";\"Гринвилл\";\"other\"\n\"5564893\";\"Hayfork\";\"main\"\n\"5565511\";\"Humboldt Hill\";\"main\"\n\"5565589\";\"Hydesville\";\"main\"\n\"5566668\";\"Lewiston\";\"main\"\n\"5566668\";\"L'juiston\";\"other\"\n\"5566668\";\"Льюистон\";\"other\"\n\"5567220\";\"Los Molinos\";\"main\"\n\"5567687\";\"McCloud\";\"main\"\n\"5567770\";\"McKinleyville\";\"main\"\n\"5568152\";\"Montague\";\"main\"\n\"5568295\";\"Mount Shasta\";\"main\"\n\"5568514\";\"Myrtletown\";\"main\"\n\"5569157\";\"Palo Cedro\";\"main\"\n\"5569523\";\"Pine Hills\";\"main\"\n\"5570065\";\"Red Bluff\";\"main\"\n\"5570160\";\"Redding\";\"main\"\n\"5570171\";\"Redway\";\"main\"\n\"5570299\";\"Rio Dell\";\"main\"\n\"5571109\";\"Shasta Lake\";\"main\"\n\"5571109\";\"Lake Shasta\";\"other\"\n\"5571232\";\"Shingletown\";\"main\"\n\"5572400\";\"Susanville\";\"main\"\n\"5572979\";\"Tulelake\";\"main\"\n\"5573443\";\"Weaverville\";\"main\"\n\"5573449\";\"Weed\";\"main\"\n\"5573576\";\"Westwood\";\"main\"\n\"5573817\";\"Willow Creek\";\"main\"\n\"5574093\";\"Yreka\";\"main\"\n\"5574199\";\"Akron\";\"main\"\n\"5574199\";\"Акрон\";\"other\"\n\"5574368\";\"Aristocrat Ranchettes\";\"main\"\n\"5574410\";\"Ault\";\"main\"\n\"5574704\";\"Berthoud\";\"main\"\n\"5574991\";\"Boulder\";\"main\"\n\"5574991\";\"bolde xr\";\"other\"\n\"5574991\";\"boruda\";\"other\"\n\"5574991\";\"Боулдер\";\"other\"\n\"5574991\";\"โบลเดอร์\";\"other\"\n\"5574991\";\"ボルダー\";\"other\"\n\"5575194\";\"Brush\";\"main\"\n\"5575478\";\"Campion\";\"main\"\n\"5576064\";\"Craig\";\"main\"\n\"5576177\";\"Dacono\";\"main\"\n\"5576690\";\"Eaton\";\"main\"\n\"5576859\";\"Erie\";\"main\"\n\"5576859\";\"Ehri\";\"other\"\n\"5576859\";\"Эри\";\"other\"\n\"5576882\";\"Estes Park\";\"main\"\n\"5576909\";\"Evans\";\"main\"\n\"5577008\";\"Firestone\";\"main\"\n\"5577147\";\"Fort Collins\";\"main\"\n\"5577147\";\"フォート・コリンズ\";\"other\"\n\"5577153\";\"Fort Lupton\";\"main\"\n\"5577158\";\"Fort Morgan\";\"main\"\n\"5577217\";\"Frederick\";\"main\"\n\"5577217\";\"Frederik\";\"other\"\n\"5577217\";\"Фредерик\";\"other\"\n\"5577350\";\"Gilcrest\";\"main\"\n\"5577516\";\"Granby\";\"main\"\n\"5577592\";\"Greeley\";\"main\"\n\"5577864\";\"Hayden\";\"main\"\n\"5578099\";\"Holyoke\";\"main\"\n\"5578235\";\"Hudson\";\"main\"\n\"5578235\";\"Gudzon\";\"other\"\n\"5578235\";\"Гудзон\";\"other\"\n\"5578536\";\"Johnstown\";\"main\"\n\"5578536\";\"Dzhonstaun\";\"other\"\n\"5578536\";\"Джонстаун\";\"other\"\n\"5578567\";\"Julesburg\";\"main\"\n\"5578653\";\"Keenesburg\";\"main\"\n\"5578683\";\"Kersey\";\"main\"\n\"5578775\";\"Kremmling\";\"main\"\n\"5578793\";\"La Salle\";\"main\"\n\"5578877\";\"Laporte\";\"main\"\n\"5579170\";\"Lochbuie\";\"main\"\n\"5579198\";\"Log Lane Village\";\"main\"\n\"5579276\";\"Longmont\";\"main\"\n\"5579368\";\"Loveland\";\"main\"\n\"5579453\";\"Lyons\";\"main\"\n\"5579737\";\"Mead\";\"main\"\n\"5579761\";\"Meeker\";\"main\"\n\"5579899\";\"Milliken\";\"main\"\n\"5580305\";\"Niwot\";\"main\"\n\"5580947\";\"Platteville\";\"main\"\n\"5581213\";\"Rangely\";\"main\"\n\"5581845\";\"Severance\";\"main\"\n\"5582371\";\"Steamboat Springs\";\"main\"\n\"5582392\";\"Sterling\";\"main\"\n\"5582392\";\"Стерлинг\";\"other\"\n\"5583250\";\"Wellington\";\"main\"\n\"5583250\";\"Vellington\";\"other\"\n\"5583250\";\"Веллингтон\";\"other\"\n\"5583509\";\"Windsor\";\"main\"\n\"5583509\";\"Vindzor\";\"other\"\n\"5583509\";\"Виндзор\";\"other\"\n\"5583657\";\"Yuma\";\"main\"\n\"5583657\";\"Juma\";\"other\"\n\"5583657\";\"Юма\";\"other\"\n\"5583714\";\"Aberdeen\";\"main\"\n\"5583714\";\"Aberdin\";\"other\"\n\"5583714\";\"Абердин\";\"other\"\n\"5583981\";\"American Falls\";\"main\"\n\"5583997\";\"Ammon\";\"main\"\n\"5584200\";\"Arco\";\"main\"\n\"5584299\";\"Ashton\";\"main\"\n\"5585265\";\"Bellevue\";\"main\"\n\"5586093\";\"Blackfoot\";\"main\"\n\"5586437\";\"Boise\";\"main\"\n\"5586437\";\"Boisė\";\"other\"\n\"5586437\";\"Boizis\";\"other\"\n\"5586437\";\"Bojse\";\"other\"\n\"5586437\";\"bo yi xi\";\"other\"\n\"5586437\";\"boishi\";\"other\"\n\"5586437\";\"bwyysy\";\"other\"\n\"5586437\";\"Бойсе\";\"other\"\n\"5586437\";\"בוייסי\";\"other\"\n\"5586437\";\"ボイシ\";\"other\"\n\"5586437\";\"博伊西\";\"other\"\n\"5586496\";\"Bonners Ferry\";\"main\"\n\"5587232\";\"Buhl\";\"main\"\n\"5587385\";\"Burley\";\"main\"\n\"5587698\";\"Caldwell\";\"main\"\n\"5587698\";\"Kolduehll\";\"other\"\n\"5587698\";\"Колдуэлл\";\"other\"\n\"5588842\";\"Chubbuck\";\"main\"\n\"5589173\";\"Coeur d'Alene\";\"main\"\n\"5589704\";\"Cottonwood\";\"main\"\n\"5590453\";\"Dalton Gardens\";\"main\"\n\"5591399\";\"Driggs\";\"main\"\n\"5591778\";\"Eagle\";\"main\"\n\"5592562\";\"Emmett\";\"main\"\n\"5592973\";\"Filer\";\"main\"\n\"5593399\";\"Fort Hall\";\"main\"\n\"5593708\";\"Fruitland\";\"main\"\n\"5593814\";\"Garden City\";\"main\"\n\"5593814\";\"Garden Siti\";\"other\"\n\"5593814\";\"Гарден Сити\";\"other\"\n\"5594092\";\"Glenns Ferry\";\"main\"\n\"5594307\";\"Gooding\";\"main\"\n\"5594474\";\"Grangeville\";\"main\"\n\"5594956\";\"Hailey\";\"main\"\n\"5595320\";\"Hayden\";\"main\"\n\"5595591\";\"Heyburn\";\"main\"\n\"5595881\";\"Homedale\";\"main\"\n\"5596475\";\"Idaho Falls\";\"main\"\n\"5596475\";\"Ajdakho-Fols\";\"other\"\n\"5596475\";\"Айдахо-Фолс\";\"other\"\n\"5596741\";\"Iona\";\"main\"\n\"5597034\";\"Jerome\";\"main\"\n\"5597538\";\"Kamiah\";\"main\"\n\"5597606\";\"Kellogg\";\"main\"\n\"5597711\";\"Ketchum\";\"main\"\n\"5597783\";\"Kimberly\";\"main\"\n\"5597955\";\"Kuna\";\"main\"\n\"5598185\";\"Lapwai\";\"main\"\n\"5598538\";\"Lewiston\";\"main\"\n\"5598538\";\"L'juiston\";\"other\"\n\"5598538\";\"Льюистон\";\"other\"\n\"5598542\";\"Lewiston Orchards\";\"main\"\n\"5600035\";\"Malad City\";\"main\"\n\"5600229\";\"Marsing\";\"main\"\n\"5600363\";\"McCall\";\"main\"\n\"5600685\";\"Meridian\";\"main\"\n\"5600685\";\"Меридиан\";\"other\"\n\"5600890\";\"Middleton\";\"main\"\n\"5601299\";\"Montpelier\";\"main\"\n\"5601538\";\"Moscow\";\"main\"\n\"5601538\";\"Moskva\";\"other\"\n\"5601538\";\"Москва\";\"other\"\n\"5601615\";\"Mountain Home\";\"main\"\n\"5601933\";\"Nampa\";\"main\"\n\"5602080\";\"New Plymouth\";\"main\"\n\"5602909\";\"Orofino\";\"main\"\n\"5602934\";\"Osburn\";\"main\"\n\"5603310\";\"Parma\";\"main\"\n\"5603310\";\"Парма\";\"other\"\n\"5603393\";\"Payette\";\"main\"\n\"5603860\";\"Pinehurst\";\"main\"\n\"5604045\";\"Pocatello\";\"main\"\n\"5604353\";\"Post Falls\";\"main\"\n\"5604473\";\"Preston\";\"main\"\n\"5604510\";\"Priest River\";\"main\"\n\"5605242\";\"Rexburg\";\"main\"\n\"5605321\";\"Rigby\";\"main\"\n\"5606000\";\"Rupert\";\"main\"\n\"5606187\";\"Saint Anthony\";\"main\"\n\"5606232\";\"Saint Maries\";\"main\"\n\"5606275\";\"Salmon\";\"main\"\n\"5606401\";\"Sandpoint\";\"main\"\n\"5607051\";\"Shelley\";\"main\"\n\"5607205\";\"Shoshone\";\"main\"\n\"5607916\";\"Soda Springs\";\"main\"\n\"5608388\";\"Spirit Lake\";\"main\"\n\"5608754\";\"Star\";\"main\"\n\"5609169\";\"Sugar City\";\"main\"\n\"5609286\";\"Sun Valley\";\"main\"\n\"5610810\";\"Twin Falls\";\"main\"\n\"5611251\";\"Victor\";\"main\"\n\"5611730\";\"Weiser\";\"main\"\n\"5611758\";\"Wendell\";\"main\"\n\"5612431\";\"Wilder\";\"main\"\n\"5636523\";\"Absarokee\";\"main\"\n\"5637146\";\"Anaconda\";\"main\"\n\"5638252\";\"Baker\";\"main\"\n\"5639364\";\"Belgrade\";\"main\"\n\"5640193\";\"Big Sky\";\"main\"\n\"5640214\";\"Big Timber\";\"main\"\n\"5640284\";\"Bigfork\";\"main\"\n\"5640350\";\"Billings\";\"main\"\n\"5640350\";\"Belinum\";\"other\"\n\"5640350\";\"biringusu\";\"other\"\n\"5640350\";\"Биллингс\";\"other\"\n\"5640350\";\"ビリングス\";\"other\"\n\"5641473\";\"Boulder\";\"main\"\n\"5641473\";\"Боулдер\";\"other\"\n\"5641727\";\"Bozeman\";\"main\"\n\"5641727\";\"Bozmana\";\"other\"\n\"5641727\";\"Бозмана\";\"other\"\n\"5642247\";\"Browning\";\"main\"\n\"5642934\";\"Butte\";\"main\"\n\"5644801\";\"Chinook\";\"main\"\n\"5644844\";\"Choteau\";\"main\"\n\"5645169\";\"Clancy\";\"main\"\n\"5645832\";\"Colstrip\";\"main\"\n\"5645859\";\"Columbia Falls\";\"main\"\n\"5645893\";\"Columbus\";\"main\"\n\"5645893\";\"Kolumbus\";\"other\"\n\"5645893\";\"Колумбус\";\"other\"\n\"5646101\";\"Conrad\";\"main\"\n\"5647159\";\"Crow Agency\";\"main\"\n\"5647469\";\"Cut Bank\";\"main\"\n\"5648267\";\"Deer Lodge\";\"main\"\n\"5648657\";\"Dillon\";\"main\"\n\"5650245\";\"East Helena\";\"main\"\n\"5650270\";\"East Missoula\";\"main\"\n\"5651208\";\"Eureka\";\"main\"\n\"5651208\";\"Ehvrika\";\"other\"\n\"5651208\";\"Эврика\";\"other\"\n\"5651289\";\"Evergreen\";\"main\"\n\"5652699\";\"Forsyth\";\"main\"\n\"5652721\";\"Fort Belknap Agency\";\"main\"\n\"5652763\";\"Fort Benton\";\"main\"\n\"5653014\";\"Four Corners\";\"main\"\n\"5654320\";\"Glasgow\";\"main\"\n\"5654391\";\"Glendive\";\"main\"\n\"5655240\";\"Great Falls\";\"main\"\n\"5655959\";\"Hamilton\";\"main\"\n\"5655959\";\"Gamil'ton\";\"other\"\n\"5655959\";\"Гамильтон\";\"other\"\n\"5656170\";\"Hardin\";\"main\"\n\"5656497\";\"Havre\";\"main\"\n\"5656882\";\"Helena\";\"main\"\n\"5656882\";\"Helenopolis\";\"other\"\n\"5656882\";\"Khelena\";\"other\"\n\"5656882\";\"herena\";\"other\"\n\"5656882\";\"hlnh\";\"other\"\n\"5656882\";\"Хелена\";\"other\"\n\"5656882\";\"הלנה\";\"other\"\n\"5656882\";\"ヘレナ\";\"other\"\n\"5660340\";\"Kalispell\";\"main\"\n\"5661473\";\"Lakeside\";\"main\"\n\"5661538\";\"Lame Deer\";\"main\"\n\"5661766\";\"Laurel\";\"main\"\n\"5662162\";\"Lewistown\";\"main\"\n\"5662190\";\"Libby\";\"main\"\n\"5662396\";\"Lincoln\";\"main\"\n\"5662396\";\"Linkol'n\";\"other\"\n\"5662396\";\"Линкольн\";\"other\"\n\"5663049\";\"Livingston\";\"main\"\n\"5663049\";\"Ливингстон\";\"other\"\n\"5663135\";\"Lockwood\";\"main\"\n\"5663257\";\"Lolo\";\"main\"\n\"5664486\";\"Malta\";\"main\"\n\"5664535\";\"Manhattan\";\"main\"\n\"5664535\";\"Mankhehtten\";\"other\"\n\"5664535\";\"Манхэттен\";\"other\"\n\"5666176\";\"Miles City\";\"main\"\n\"5666639\";\"Missoula\";\"main\"\n\"5666921\";\"Montana City\";\"main\"\n\"5668939\";\"North Browning\";\"main\"\n\"5670128\";\"Orchard Homes\";\"main\"\n\"5670441\";\"Pablo\";\"main\"\n\"5671710\";\"Plains\";\"main\"\n\"5671807\";\"Plentywood\";\"main\"\n\"5671996\";\"Polson\";\"main\"\n\"5673390\";\"Red Lodge\";\"main\"\n\"5674601\";\"Ronan\";\"main\"\n\"5674878\";\"Roundup\";\"main\"\n\"5676740\";\"Scobey\";\"main\"\n\"5676910\";\"Seeley Lake\";\"main\"\n\"5677433\";\"Shelby\";\"main\"\n\"5677735\";\"Sidney\";\"main\"\n\"5677735\";\"Sidnej\";\"other\"\n\"5677735\";\"Сидней\";\"other\"\n\"5678917\";\"South Browning\";\"main\"\n\"5680485\";\"Stevensville\";\"main\"\n\"5681020\";\"Sun Prairie\";\"main\"\n\"5682278\";\"Thompson Falls\";\"main\"\n\"5682364\";\"Three Forks\";\"main\"\n\"5682902\";\"Townsend\";\"main\"\n\"5685656\";\"West Glendive\";\"main\"\n\"5685767\";\"West Yellowstone\";\"main\"\n\"5686092\";\"White Sulphur Springs\";\"main\"\n\"5686121\";\"Whitefish\";\"main\"\n\"5686153\";\"Whitehall\";\"main\"\n\"5687028\";\"Wolf Point\";\"main\"\n\"5688003\";\"Beulah\";\"main\"\n\"5688025\";\"Bismarck\";\"main\"\n\"5688025\";\"Bismarck i Nord-Dakota\";\"other\"\n\"5688025\";\"Bismark\";\"other\"\n\"5688025\";\"Bizmark\";\"other\"\n\"5688025\";\"bisumaku\";\"other\"\n\"5688025\";\"bysmrq\";\"other\"\n\"5688025\";\"Бизмарк\";\"other\"\n\"5688025\";\"Бисмарк\";\"other\"\n\"5688025\";\"ביסמרק\";\"other\"\n\"5688025\";\"ビスマーク\";\"other\"\n\"5688106\";\"Bottineau\";\"main\"\n\"5688127\";\"Bowman\";\"main\"\n\"5688259\";\"Burlington\";\"main\"\n\"5688259\";\"Berlington\";\"other\"\n\"5688259\";\"Берлингтон\";\"other\"\n\"5688604\";\"Crosby\";\"main\"\n\"5688789\";\"Dickinson\";\"main\"\n\"5689239\";\"Garrison\";\"main\"\n\"5689557\";\"Hazen\";\"main\"\n\"5689618\";\"Hettinger\";\"main\"\n\"5689936\";\"Kenmare\";\"main\"\n\"5690162\";\"Lincoln\";\"main\"\n\"5690162\";\"Linkol'n\";\"other\"\n\"5690162\";\"Линкольн\";\"other\"\n\"5690186\";\"Linton\";\"main\"\n\"5690366\";\"Mandan\";\"main\"\n\"5690532\";\"Minot\";\"main\"\n\"5690532\";\"Mina\";\"other\"\n\"5690532\";\"Мина\";\"other\"\n\"5690711\";\"New Town\";\"main\"\n\"5690958\";\"Parshall\";\"main\"\n\"5692337\";\"Stanley\";\"main\"\n\"5692590\";\"Tioga\";\"main\"\n\"5692806\";\"Washburn\";\"main\"\n\"5692814\";\"Watford City\";\"main\"\n\"5692947\";\"Williston\";\"main\"\n\"5693164\";\"Alliance\";\"main\"\n\"5693164\";\"Al'jans\";\"other\"\n\"5693164\";\"Альянс\";\"other\"\n\"5693459\";\"Bayard\";\"main\"\n\"5693833\";\"Bridgeport\";\"main\"\n\"5694163\";\"Chadron\";\"main\"\n\"5694579\";\"Crawford\";\"main\"\n\"5695604\";\"Gering\";\"main\"\n\"5695713\";\"Gordon\";\"main\"\n\"5695743\";\"Gothenburg\";\"main\"\n\"5695792\";\"Grant\";\"main\"\n\"5696354\";\"Imperial\";\"main\"\n\"5696715\";\"Kimball\";\"main\"\n\"5697383\";\"McCook\";\"main\"\n\"5697633\";\"Mitchell\";\"main\"\n\"5697939\";\"North Platte\";\"main\"\n\"5698040\";\"Ogallala\";\"main\"\n\"5699404\";\"Scottsbluff\";\"main\"\n\"5699552\";\"Sidney\";\"main\"\n\"5699552\";\"Sidnej\";\"other\"\n\"5699552\";\"Сидней\";\"other\"\n\"5699979\";\"Sutherland\";\"main\"\n\"5700344\";\"Valentine\";\"main\"\n\"5701361\";\"Battle Mountain\";\"main\"\n\"5702255\";\"Carlin\";\"main\"\n\"5703670\";\"Elko\";\"main\"\n\"5705957\";\"Lovelock\";\"main\"\n\"5707081\";\"Owyhee\";\"main\"\n\"5708894\";\"Spring Creek\";\"main\"\n\"5709967\";\"Wells\";\"main\"\n\"5710035\";\"West Wendover\";\"main\"\n\"5710360\";\"Winnemucca\";\"main\"\n\"5710756\";\"Albany\";\"main\"\n\"5710756\";\"Olbani\";\"other\"\n\"5710756\";\"Олбани\";\"other\"\n\"5711099\";\"Aloha\";\"main\"\n\"5711149\";\"Altamont\";\"main\"\n\"5711224\";\"Amity\";\"main\"\n\"5711789\";\"Ashland\";\"main\"\n\"5711847\";\"Astoria\";\"main\"\n\"5711861\";\"Athena\";\"main\"\n\"5711918\";\"Aumsville\";\"main\"\n\"5712169\";\"Baker City\";\"main\"\n\"5712417\";\"Bandon\";\"main\"\n\"5712430\";\"Banks\";\"main\"\n\"5712657\";\"Barview\";\"main\"\n\"5712837\";\"Bay City\";\"main\"\n\"5712837\";\"Bej-Siti\";\"other\"\n\"5712837\";\"Бей-Сити\";\"other\"\n\"5713376\";\"Beaverton\";\"main\"\n\"5713587\";\"Bend\";\"main\"\n\"5713587\";\"Бенд\";\"other\"\n\"5714964\";\"Boardman\";\"main\"\n\"5714964\";\"Bordman\";\"other\"\n\"5714964\";\"Бордман\";\"other\"\n\"5715905\";\"Brookings\";\"main\"\n\"5716061\";\"Brownsville\";\"main\"\n\"5716744\";\"Bunker Hill\";\"main\"\n\"5716833\";\"Burns\";\"main\"\n\"5717758\";\"Canby\";\"main\"\n\"5717789\";\"Cannon Beach\";\"main\"\n\"5717887\";\"Canyonville\";\"main\"\n\"5717982\";\"Carlton\";\"main\"\n\"5718132\";\"Cascade Locks\";\"main\"\n\"5718340\";\"Cave Junction\";\"main\"\n\"5718480\";\"Cedar Hills\";\"main\"\n\"5718492\";\"Cedar Mill\";\"main\"\n\"5718601\";\"Central Point\";\"main\"\n\"5718830\";\"Chenoweth\";\"main\"\n\"5719308\";\"Clackamas\";\"main\"\n\"5719397\";\"Clatskanie\";\"main\"\n\"5720167\";\"Columbia City\";\"main\"\n\"5720495\";\"Coos Bay\";\"main\"\n\"5720575\";\"Coquille\";\"main\"\n\"5720639\";\"Cornelius\";\"main\"\n\"5720639\";\"Kornelius\";\"other\"\n\"5720639\";\"Корнелиус\";\"other\"\n\"5720727\";\"Corvallis\";\"main\"\n\"5720727\";\"Korvalis\";\"other\"\n\"5720727\";\"ke wa li si\";\"other\"\n\"5720727\";\"kobarisu\";\"other\"\n\"5720727\";\"Корвалис\";\"other\"\n\"5720727\";\"コーバリス\";\"other\"\n\"5720727\";\"科瓦利斯\";\"other\"\n\"5720755\";\"Cottage Grove\";\"main\"\n\"5721551\";\"Creswell\";\"main\"\n\"5722064\";\"Dallas\";\"main\"\n\"5722064\";\"Даллас\";\"other\"\n\"5722326\";\"Dayton\";\"main\"\n\"5722326\";\"Dejton\";\"other\"\n\"5722326\";\"Дейтон\";\"other\"\n\"5722917\";\"Depoe Bay\";\"main\"\n\"5722960\";\"Deschutes River Woods\";\"main\"\n\"5723833\";\"Drain\";\"main\"\n\"5724352\";\"Dundee\";\"main\"\n\"5724361\";\"Dunes City\";\"main\"\n\"5724406\";\"Durham\";\"main\"\n\"5724406\";\"Darem\";\"other\"\n\"5724406\";\"Дарем\";\"other\"\n\"5724581\";\"Eagle Point\";\"main\"\n\"5725293\";\"Elgin\";\"main\"\n\"5725721\";\"Enterprise\";\"main\"\n\"5725801\";\"Estacada\";\"main\"\n\"5725846\";\"Eugene\";\"main\"\n\"5725846\";\"Judzhin\";\"other\"\n\"5725846\";\"yujin\";\"other\"\n\"5725846\";\"Юджин\";\"other\"\n\"5725846\";\"ユージン\";\"other\"\n\"5725846\";\"ユージーン\";\"other\"\n\"5726018\";\"Fairview\";\"main\"\n\"5726184\";\"Falls City\";\"main\"\n\"5727032\";\"Florence\";\"main\"\n\"5727032\";\"Florencija\";\"other\"\n\"5727032\";\"Флоренция\";\"other\"\n\"5727190\";\"Forest Grove\";\"main\"\n\"5727382\";\"Four Corners\";\"main\"\n\"5728264\";\"Gervais\";\"main\"\n\"5728429\";\"Gladstone\";\"main\"\n\"5728429\";\"Gladston\";\"other\"\n\"5728429\";\"Гладстон\";\"other\"\n\"5728531\";\"Glide\";\"main\"\n\"5728665\";\"Gold Hill\";\"main\"\n\"5729080\";\"Grants Pass\";\"main\"\n\"5729293\";\"Green\";\"main\"\n\"5729485\";\"Gresham\";\"main\"\n\"5730183\";\"Happy Valley\";\"main\"\n\"5730199\";\"Harbor\";\"main\"\n\"5730389\";\"Harrisburg\";\"main\"\n\"5730389\";\"Garrisberg\";\"other\"\n\"5730389\";\"Гаррисберг\";\"other\"\n\"5730675\";\"Hayesville\";\"main\"\n\"5731035\";\"Heppner\";\"main\"\n\"5731070\";\"Hermiston\";\"main\"\n\"5731371\";\"Hillsboro\";\"main\"\n\"5731371\";\"Khillsboro\";\"other\"\n\"5731371\";\"Хиллсборо\";\"other\"\n\"5731397\";\"Hines\";\"main\"\n\"5731777\";\"Hood River\";\"main\"\n\"5732311\";\"Hubbard\";\"main\"\n\"5732763\";\"Independence\";\"main\"\n\"5733120\";\"Irrigon\";\"main\"\n\"5733409\";\"Jacksonville\";\"main\"\n\"5733409\";\"Dzheksonvill\";\"other\"\n\"5733409\";\"Джексонвилл\";\"other\"\n\"5733532\";\"Jefferson\";\"main\"\n\"5733532\";\"Dzhefferson\";\"other\"\n\"5733532\";\"Джефферсон\";\"other\"\n\"5733582\";\"Jennings Lodge\";\"main\"\n\"5733770\";\"John Day\";\"main\"\n\"5734198\";\"Junction City\";\"main\"\n\"5734711\";\"Keizer\";\"main\"\n\"5734711\";\"Kejzer\";\"other\"\n\"5734711\";\"Кейзер\";\"other\"\n\"5735043\";\"King City\";\"main\"\n\"5735238\";\"Klamath Falls\";\"main\"\n\"5735537\";\"La Grande\";\"main\"\n\"5735549\";\"La Pine\";\"main\"\n\"5735609\";\"Lafayette\";\"main\"\n\"5735609\";\"Lafajet\";\"other\"\n\"5735609\";\"Лафайет\";\"other\"\n\"5735724\";\"Lake Oswego\";\"main\"\n\"5735782\";\"Lakeside\";\"main\"\n\"5735792\";\"Lakeview\";\"main\"\n\"5736218\";\"Lebanon\";\"main\"\n\"5736634\";\"Lincoln Beach\";\"main\"\n\"5736645\";\"Lincoln City\";\"main\"\n\"5738587\";\"Lyons\";\"main\"\n\"5738690\";\"Madras\";\"main\"\n\"5739936\";\"McMinnville\";\"main\"\n\"5740099\";\"Medford\";\"main\"\n\"5740099\";\"Медфорд\";\"other\"\n\"5740325\";\"Metzger\";\"main\"\n\"5740602\";\"Mill City\";\"main\"\n\"5740898\";\"Milton-Freewater\";\"main\"\n\"5740900\";\"Milwaukie\";\"main\"\n\"5740900\";\"Miluoki\";\"other\"\n\"5740900\";\"Милуоки\";\"other\"\n\"5741069\";\"Mission\";\"main\"\n\"5741069\";\"Missija\";\"other\"\n\"5741069\";\"Миссия\";\"other\"\n\"5741182\";\"Molalla\";\"main\"\n\"5741227\";\"Monmouth\";\"main\"\n\"5741646\";\"Mount Angel\";\"main\"\n\"5741683\";\"Mount Hood Village\";\"main\"\n\"5742332\";\"Myrtle Creek\";\"main\"\n\"5742346\";\"Myrtle Point\";\"main\"\n\"5742726\";\"Newberg\";\"main\"\n\"5742726\";\"N'juberg\";\"other\"\n\"5742726\";\"Ньюберг\";\"other\"\n\"5742750\";\"Newport\";\"main\"\n\"5742750\";\"N'juport\";\"other\"\n\"5742750\";\"Ньюпорт\";\"other\"\n\"5742974\";\"North Bend\";\"main\"\n\"5743413\";\"North Plains\";\"main\"\n\"5743612\";\"Nyssa\";\"main\"\n\"5743731\";\"Oak Grove\";\"main\"\n\"5743753\";\"Oak Hills\";\"main\"\n\"5743796\";\"Oakridge\";\"main\"\n\"5743896\";\"Odell\";\"main\"\n\"5744166\";\"Ontario\";\"main\"\n\"5744166\";\"Онтарио\";\"other\"\n\"5744253\";\"Oregon City\";\"main\"\n\"5744635\";\"Pacific City\";\"main\"\n\"5745380\";\"Pendleton\";\"main\"\n\"5745647\";\"Philomath\";\"main\"\n\"5745656\";\"Phoenix\";\"main\"\n\"5745656\";\"Finiks\";\"other\"\n\"5745656\";\"Финикс\";\"other\"\n\"5745782\";\"Pilot Rock\";\"main\"\n\"5746486\";\"Port Orford\";\"main\"\n\"5746545\";\"Portland\";\"main\"\n\"5746545\";\"Portland i Oregon\";\"other\"\n\"5746545\";\"Portlandia\";\"other\"\n\"5746545\";\"Portlend\";\"other\"\n\"5746545\";\"bo te lan\";\"other\"\n\"5746545\";\"poteullaendeu\";\"other\"\n\"5746545\";\"potorando\";\"other\"\n\"5746545\";\"pwrtlnd\";\"other\"\n\"5746545\";\"Портланд\";\"other\"\n\"5746545\";\"Портленд\";\"other\"\n\"5746545\";\"פורטלנד\";\"other\"\n\"5746545\";\"ポートランド\";\"other\"\n\"5746545\";\"波特蘭\";\"other\"\n\"5746545\";\"포틀랜드\";\"other\"\n\"5746901\";\"Prineville\";\"main\"\n\"5747402\";\"Rainier\";\"main\"\n\"5747420\";\"Raleigh Hills\";\"main\"\n\"5747882\";\"Redmond\";\"main\"\n\"5747882\";\"Редмонд\";\"other\"\n\"5747900\";\"Redwood\";\"main\"\n\"5747941\";\"Reedsport\";\"main\"\n\"5748229\";\"Riddle\";\"main\"\n\"5749017\";\"Rockcreek\";\"main\"\n\"5749022\";\"Rockaway Beach\";\"main\"\n\"5749213\";\"Rogue River\";\"main\"\n\"5749333\";\"Rose Lodge\";\"main\"\n\"5749352\";\"Roseburg\";\"main\"\n\"5750041\";\"Saint Helens\";\"main\"\n\"5750162\";\"Salem\";\"main\"\n\"5750162\";\"seiramu\";\"other\"\n\"5750162\";\"Салем\";\"other\"\n\"5750162\";\"סאלם\";\"other\"\n\"5750162\";\"セイラム\";\"other\"\n\"5750477\";\"Sandy\";\"main\"\n\"5750663\";\"Scappoose\";\"main\"\n\"5750984\";\"Seaside\";\"main\"\n\"5750984\";\"Sisajd\";\"other\"\n\"5750984\";\"Сисайд\";\"other\"\n\"5751253\";\"Shady Cove\";\"main\"\n\"5751600\";\"Sheridan\";\"main\"\n\"5751632\";\"Sherwood\";\"main\"\n\"5751919\";\"Siletz\";\"main\"\n\"5752024\";\"Silverton\";\"main\"\n\"5752129\";\"Sisters\";\"main\"\n\"5753466\";\"South Lebanon\";\"main\"\n\"5754005\";\"Springfield\";\"main\"\n\"5754005\";\"Springfild\";\"other\"\n\"5754005\";\"Спрингфилд\";\"other\"\n\"5754308\";\"Stanfield\";\"main\"\n\"5754464\";\"Stayton\";\"main\"\n\"5754988\";\"Sublimity\";\"main\"\n\"5755307\";\"Sunnyside\";\"main\"\n\"5755474\";\"Sutherlin\";\"main\"\n\"5755674\";\"Sweet Home\";\"main\"\n\"5755890\";\"Talent\";\"main\"\n\"5756260\";\"Terrebonne\";\"main\"\n\"5756304\";\"The Dalles\";\"main\"\n\"5756628\";\"Three Rivers\";\"main\"\n\"5756758\";\"Tigard\";\"main\"\n\"5756777\";\"Tillamook\";\"main\"\n\"5757007\";\"Toledo\";\"main\"\n\"5757007\";\"Толедо\";\"other\"\n\"5757355\";\"Tri-City\";\"main\"\n\"5757477\";\"Troutdale\";\"main\"\n\"5757506\";\"Tualatin\";\"main\"\n\"5757706\";\"Turner\";\"main\"\n\"5758052\";\"Umatilla\";\"main\"\n\"5758113\";\"Union\";\"main\"\n\"5758413\";\"Vale\";\"main\"\n\"5758566\";\"Veneta\";\"main\"\n\"5758599\";\"Vernonia\";\"main\"\n\"5758901\";\"Waldport\";\"main\"\n\"5759199\";\"Warm Springs\";\"main\"\n\"5759289\";\"Warrenton\";\"main\"\n\"5759989\";\"West Haven\";\"main\"\n\"5760009\";\"West Linn\";\"main\"\n\"5760068\";\"West Slope\";\"main\"\n\"5760396\";\"White City\";\"main\"\n\"5760923\";\"Willamina\";\"main\"\n\"5761287\";\"Wilsonville\";\"main\"\n\"5761481\";\"Winston\";\"main\"\n\"5761705\";\"Wood Village\";\"main\"\n\"5761708\";\"Woodburn\";\"main\"\n\"5762118\";\"Yoncalla\";\"main\"\n\"5762718\";\"Belle Fourche\";\"main\"\n\"5762897\";\"Blackhawk\";\"main\"\n\"5763011\";\"Box Elder\";\"main\"\n\"5763699\";\"Colonial Pine Hills\";\"main\"\n\"5763910\";\"Custer\";\"main\"\n\"5764048\";\"Deadwood\";\"main\"\n\"5764864\";\"Fort Pierre\";\"main\"\n\"5765751\";\"Hot Springs\";\"main\"\n\"5765751\";\"Khot-Springs\";\"other\"\n\"5765751\";\"Хот-Спрингс\";\"other\"\n\"5766425\";\"Lead\";\"main\"\n\"5766453\";\"Lemmon\";\"main\"\n\"5766888\";\"Martin\";\"main\"\n\"5767189\";\"Mobridge\";\"main\"\n\"5767488\";\"North Eagle Butte\";\"main\"\n\"5767532\";\"North Spearfish\";\"main\"\n\"5767610\";\"Oglala\";\"main\"\n\"5767918\";\"Pierre\";\"main\"\n\"5767918\";\"pia\";\"other\"\n\"5767918\";\"pyyr\";\"other\"\n\"5767918\";\"פייר\";\"other\"\n\"5767918\";\"ピア\";\"other\"\n\"5767939\";\"Pine Ridge\";\"main\"\n\"5768233\";\"Rapid City\";\"main\"\n\"5768233\";\"Rapid-Siti\";\"other\"\n\"5768233\";\"Рапид-Сити\";\"other\"\n\"5768244\";\"Rapid Valley\";\"main\"\n\"5768556\";\"Rosebud\";\"main\"\n\"5769288\";\"Spearfish\";\"main\"\n\"5769489\";\"Sturgis\";\"main\"\n\"5770732\";\"Alpine\";\"main\"\n\"5771312\";\"Benjamin\";\"main\"\n\"5771337\";\"Benson\";\"main\"\n\"5771716\";\"Bluffdale\";\"main\"\n\"5771826\";\"Bountiful\";\"main\"\n\"5771960\";\"Brigham City\";\"main\"\n\"5772418\";\"Canyon Rim\";\"main\"\n\"5772581\";\"Cedar Hills\";\"main\"\n\"5772653\";\"Centerfield\";\"main\"\n\"5772654\";\"Centerville\";\"main\"\n\"5772959\";\"Clearfield\";\"main\"\n\"5773001\";\"Clinton\";\"main\"\n\"5773001\";\"Klinton\";\"other\"\n\"5773001\";\"Клинтон\";\"other\"\n\"5773066\";\"Coalville\";\"main\"\n\"5773304\";\"Cottonwood Heights\";\"main\"\n\"5774001\";\"Draper\";\"main\"\n\"5774135\";\"Duchesne\";\"main\"\n\"5774159\";\"Dugway\";\"main\"\n\"5774215\";\"Eagle Mountain\";\"main\"\n\"5774301\";\"East Millcreek\";\"main\"\n\"5774456\";\"Elk Ridge\";\"main\"\n\"5774535\";\"Enterprise\";\"main\"\n\"5774546\";\"Erda\";\"main\"\n\"5774662\";\"Farmington\";\"main\"\n\"5774662\";\"Фармингтон\";\"other\"\n\"5774685\";\"Farr West\";\"main\"\n\"5775035\";\"Fruit Heights\";\"main\"\n\"5775081\";\"Garland\";\"main\"\n\"5775081\";\"Girljanda\";\"other\"\n\"5775081\";\"Гирлянда\";\"other\"\n\"5775320\";\"Granite\";\"main\"\n\"5775346\";\"Grantsville\";\"main\"\n\"5775615\";\"Harrisville\";\"main\"\n\"5775699\";\"Heber\";\"main\"\n\"5775782\";\"Herriman\";\"main\"\n\"5775863\";\"Highland\";\"main\"\n\"5776008\";\"Holladay\";\"main\"\n\"5776087\";\"Honeyville\";\"main\"\n\"5776092\";\"Hooper\";\"main\"\n\"5776221\";\"Hyde Park\";\"main\"\n\"5776228\";\"Hyrum\";\"main\"\n\"5776692\";\"Kamas\";\"main\"\n\"5776715\";\"Kaysville\";\"main\"\n\"5776727\";\"Kearns\";\"main\"\n\"5776727\";\"Kerns\";\"other\"\n\"5776727\";\"Кернс\";\"other\"\n\"5777107\";\"Layton\";\"main\"\n\"5777107\";\"Lejton\";\"other\"\n\"5777107\";\"Лейтон\";\"other\"\n\"5777224\";\"Lehi\";\"main\"\n\"5777224\";\"Lekhe\";\"other\"\n\"5777224\";\"Лехе\";\"other\"\n\"5777244\";\"Lewiston\";\"main\"\n\"5777244\";\"L'juiston\";\"other\"\n\"5777244\";\"Льюистон\";\"other\"\n\"5777332\";\"Lindon\";\"main\"\n\"5777544\";\"Logan\";\"main\"\n\"5777780\";\"Maeser\";\"main\"\n\"5777793\";\"Magna\";\"main\"\n\"5777915\";\"Mapleton\";\"main\"\n\"5777956\";\"Marriott-Slaterville\";\"main\"\n\"5778154\";\"Mendon\";\"main\"\n\"5778244\";\"Midvale\";\"main\"\n\"5778261\";\"Midway\";\"main\"\n\"5778352\";\"Millcreek\";\"main\"\n\"5778379\";\"Millville\";\"main\"\n\"5778518\";\"Morgan\";\"main\"\n\"5778601\";\"Mount Olympus\";\"main\"\n\"5778755\";\"Murray\";\"main\"\n\"5778755\";\"Mjurrej\";\"other\"\n\"5778755\";\"Мюррей\";\"other\"\n\"5778807\";\"Naples\";\"main\"\n\"5778807\";\"Neapol'\";\"other\"\n\"5778807\";\"Неаполь\";\"other\"\n\"5778898\";\"Nibley\";\"main\"\n\"5779025\";\"North Logan\";\"main\"\n\"5779036\";\"North Ogden\";\"main\"\n\"5779068\";\"North Salt Lake\";\"main\"\n\"5779170\";\"Oakley\";\"main\"\n\"5779206\";\"Ogden\";\"main\"\n\"5779206\";\"Огден\";\"other\"\n\"5779333\";\"Oquirrh\";\"main\"\n\"5779334\";\"Orem\";\"main\"\n\"5779451\";\"Park City\";\"main\"\n\"5779451\";\"pakushiti\";\"other\"\n\"5779451\";\"パークシティ\";\"other\"\n\"5779548\";\"Payson\";\"main\"\n\"5779613\";\"Perry\";\"main\"\n\"5779798\";\"Plain City\";\"main\"\n\"5779816\";\"Pleasant Grove\";\"main\"\n\"5779833\";\"Pleasant View\";\"main\"\n\"5780020\";\"Providence\";\"main\"\n\"5780020\";\"Providens\";\"other\"\n\"5780020\";\"Провиденс\";\"other\"\n\"5780026\";\"Provo\";\"main\"\n\"5780026\";\"pu ruo fu\";\"other\"\n\"5780026\";\"purobo\";\"other\"\n\"5780026\";\"Прово\";\"other\"\n\"5780026\";\"プロボ\";\"other\"\n\"5780026\";\"普若佛\";\"other\"\n\"5780388\";\"Richmond\";\"main\"\n\"5780388\";\"Ричмонд\";\"other\"\n\"5780517\";\"River Heights\";\"main\"\n\"5780531\";\"Riverdale\";\"main\"\n\"5780557\";\"Riverton\";\"main\"\n\"5780557\";\"Ривертон\";\"other\"\n\"5780699\";\"Roosevelt\";\"main\"\n\"5780802\";\"Roy\";\"main\"\n\"5780802\";\"Roj\";\"other\"\n\"5780802\";\"Рой\";\"other\"\n\"5780993\";\"Salt Lake City\";\"main\"\n\"5780993\";\"Sallagurbo\";\"other\"\n\"5780993\";\"Solt Leik Sitis\";\"other\"\n\"5780993\";\"Solt Lejk Siti\";\"other\"\n\"5780993\";\"Solt-Lejk-Siti\";\"other\"\n\"5780993\";\"solteuleikeu si\";\"other\"\n\"5780993\";\"sorutoreikushiti\";\"other\"\n\"5780993\";\"swlt lyyq syty\";\"other\"\n\"5780993\";\"yan hu cheng\";\"other\"\n\"5780993\";\"Солт Лейк Сити\";\"other\"\n\"5780993\";\"Солт Лејк Сити\";\"other\"\n\"5780993\";\"Солт-Лейк-Сити\";\"other\"\n\"5780993\";\"סולט לייק סיטי\";\"other\"\n\"5780993\";\"سالٹ لیک سٹی، یوٹاہ\";\"other\"\n\"5780993\";\"ソルトレイクシティ\";\"other\"\n\"5780993\";\"盐湖城\";\"other\"\n\"5780993\";\"솔트레이크 시\";\"other\"\n\"5781061\";\"Sandy City\";\"main\"\n\"5781070\";\"Sandy Hills\";\"main\"\n\"5781087\";\"Saratoga Springs\";\"main\"\n\"5781087\";\"Saratoga-Springs\";\"other\"\n\"5781087\";\"Саратога-Спрингс\";\"other\"\n\"5781551\";\"Smithfield\";\"main\"\n\"5781765\";\"South Jordan Heights\";\"main\"\n\"5781770\";\"South Jordan\";\"main\"\n\"5781783\";\"South Ogden\";\"main\"\n\"5781794\";\"South Salt Lake\";\"main\"\n\"5781809\";\"South Weber\";\"main\"\n\"5781860\";\"Spanish Fork\";\"main\"\n\"5781993\";\"Springville\";\"main\"\n\"5782055\";\"Stansbury park\";\"main\"\n\"5782272\";\"Summit Park\";\"main\"\n\"5782320\";\"Sunset\";\"main\"\n\"5782391\";\"Syracuse\";\"main\"\n\"5782476\";\"Taylorsville\";\"main\"\n\"5783695\";\"Tooele\";\"main\"\n\"5783768\";\"Tremonton\";\"main\"\n\"5783914\";\"Uintah\";\"main\"\n\"5784154\";\"Vernal\";\"main\"\n\"5784384\";\"Washington Terrace\";\"main\"\n\"5784492\";\"Wendover\";\"main\"\n\"5784504\";\"West Bountiful\";\"main\"\n\"5784540\";\"West Haven\";\"main\"\n\"5784549\";\"West Jordan\";\"main\"\n\"5784580\";\"West Point\";\"main\"\n\"5784607\";\"West Valley City\";\"main\"\n\"5784607\";\"West Valley\";\"other\"\n\"5784731\";\"White City\";\"main\"\n\"5784852\";\"Willard\";\"main\"\n\"5784853\";\"Willard\";\"main\"\n\"5785084\";\"Woodland Hills\";\"main\"\n\"5785116\";\"Woods Cross\";\"main\"\n\"5785243\";\"Aberdeen\";\"main\"\n\"5785243\";\"Aburdijn\";\"other\"\n\"5785243\";\"Абърдийн\";\"other\"\n\"5785243\";\"אברדין\";\"other\"\n\"5785359\";\"Ahtanum\";\"main\"\n\"5785378\";\"Airway Heights\";\"main\"\n\"5785453\";\"Alderwood Manor\";\"main\"\n\"5785484\";\"Algona\";\"main\"\n\"5785614\";\"Amboy\";\"main\"\n\"5785640\";\"Ames Lake\";\"main\"\n\"5785657\";\"Anacortes\";\"main\"\n\"5785858\";\"Arlington Heights\";\"main\"\n\"5785868\";\"Arlington\";\"main\"\n\"5785868\";\"Арлингтон\";\"other\"\n\"5785909\";\"Artondale\";\"main\"\n\"5785933\";\"Asotin\";\"main\"\n\"5785965\";\"Auburn\";\"main\"\n\"5786322\";\"Barberton\";\"main\"\n\"5786429\";\"Basin City\";\"main\"\n\"5786485\";\"Battle Ground\";\"main\"\n\"5786882\";\"Bellevue\";\"main\"\n\"5786899\";\"Bellingham\";\"main\"\n\"5786990\";\"Benton City\";\"main\"\n\"5787215\";\"Big Lake\";\"main\"\n\"5787316\";\"Birch Bay\";\"main\"\n\"5787423\";\"Black Diamond\";\"main\"\n\"5787475\";\"Blaine\";\"main\"\n\"5787776\";\"Bonney Lake\";\"main\"\n\"5787829\";\"Bothell\";\"main\"\n\"5788054\";\"Bremerton\";\"main\"\n\"5788054\";\"Бремертон\";\"other\"\n\"5788077\";\"Brewster\";\"main\"\n\"5788077\";\"Brjuster\";\"other\"\n\"5788077\";\"Брюстер\";\"other\"\n\"5788111\";\"Bridgeport\";\"main\"\n\"5788125\";\"Brier\";\"main\"\n\"5788290\";\"Brush Prairie\";\"main\"\n\"5788409\";\"Buckley\";\"main\"\n\"5788497\";\"Burbank\";\"main\"\n\"5788497\";\"Berbank\";\"other\"\n\"5788497\";\"Бербанк\";\"other\"\n\"5788516\";\"Burien\";\"main\"\n\"5788539\";\"Burlington\";\"main\"\n\"5788539\";\"Berlington\";\"other\"\n\"5788539\";\"Берлингтон\";\"other\"\n\"5788816\";\"Camano\";\"main\"\n\"5788822\";\"Camas\";\"main\"\n\"5789198\";\"Carnation\";\"main\"\n\"5789324\";\"Cascade Valley\";\"main\"\n\"5789342\";\"Cashmere\";\"main\"\n\"5789381\";\"Castle Rock\";\"main\"\n\"5789425\";\"Cathcart\";\"main\"\n\"5789668\";\"Central Park\";\"main\"\n\"5789683\";\"Centralia\";\"main\"\n\"5789817\";\"Chehalis\";\"main\"\n\"5789826\";\"Chelan\";\"main\"\n\"5789856\";\"Cheney\";\"main\"\n\"5789920\";\"Chewelah\";\"main\"\n\"5790218\";\"Clarkston\";\"main\"\n\"5790229\";\"Cle Elum\";\"main\"\n\"5790270\";\"Clear Lake\";\"main\"\n\"5790385\";\"Clyde Hill\";\"main\"\n\"5790554\";\"Colfax\";\"main\"\n\"5790562\";\"College Place\";\"main\"\n\"5790660\";\"Colville\";\"main\"\n\"5790756\";\"Connell\";\"main\"\n\"5790966\";\"Cosmopolis\";\"main\"\n\"5790971\";\"Cottage Lake\";\"main\"\n\"5791102\";\"Coulee Dam\";\"main\"\n\"5791127\";\"Country Homes\";\"main\"\n\"5791132\";\"Coupeville\";\"main\"\n\"5791159\";\"Covington\";\"main\"\n\"5791724\";\"Dallesport\";\"main\"\n\"5791791\";\"Darrington\";\"main\"\n\"5791805\";\"Davenport\";\"main\"\n\"5791805\";\"Dehvenport\";\"other\"\n\"5791805\";\"Дэвенпорт\";\"other\"\n\"5791896\";\"Dayton\";\"main\"\n\"5791896\";\"Dejton\";\"other\"\n\"5791896\";\"Дейтон\";\"other\"\n\"5792143\";\"Deer Park\";\"main\"\n\"5792244\";\"Des Moines\";\"main\"\n\"5792244\";\"De-Mojn\";\"other\"\n\"5792244\";\"DesMoines\";\"other\"\n\"5792244\";\"Де-Мойн\";\"other\"\n\"5792262\";\"Desert Aire\";\"main\"\n\"5792474\";\"Dishman\";\"main\"\n\"5792563\";\"Dollar Corner\";\"main\"\n\"5792869\";\"DuPont\";\"main\"\n\"5792990\";\"Duvall\";\"main\"\n\"5793237\";\"East Port Orchard\";\"main\"\n\"5793242\";\"East Renton Highlands\";\"main\"\n\"5793271\";\"East Wenatchee\";\"main\"\n\"5793272\";\"East Wenatchee Bench\";\"main\"\n\"5793278\";\"Eastgate\";\"main\"\n\"5793321\";\"Eatonville\";\"main\"\n\"5793406\";\"Edgewood\";\"main\"\n\"5793427\";\"Edmonds\";\"main\"\n\"5793427\";\"Ehdmonds\";\"other\"\n\"5793427\";\"Эдмондс\";\"other\"\n\"5793609\";\"Elk Plain\";\"main\"\n\"5793639\";\"Ellensburg\";\"main\"\n\"5793687\";\"Elma\";\"main\"\n\"5793817\";\"Entiat\";\"main\"\n\"5793822\";\"Enumclaw\";\"main\"\n\"5793832\";\"Ephrata\";\"main\"\n\"5793876\";\"Esperance\";\"main\"\n\"5793933\";\"Everett\";\"main\"\n\"5793933\";\"Ehverett\";\"other\"\n\"5793933\";\"Эверетт\";\"other\"\n\"5794011\";\"Everson\";\"main\"\n\"5794098\";\"Fairwood\";\"main\"\n\"5794114\";\"Fall City\";\"main\"\n\"5794242\";\"Felida\";\"main\"\n\"5794245\";\"Federal Way\";\"main\"\n\"5794276\";\"Ferndale\";\"main\"\n\"5794328\";\"Fife\";\"main\"\n\"5794369\";\"Finley\";\"main\"\n\"5794416\";\"Fircrest\";\"main\"\n\"5794559\";\"Five Corners\";\"main\"\n\"5794716\";\"Fords Prairie\";\"main\"\n\"5794761\";\"Forks\";\"main\"\n\"5794761\";\"Форкс\";\"other\"\n\"5794940\";\"Fox Island\";\"main\"\n\"5795011\";\"Frederickson\";\"main\"\n\"5795025\";\"Freeland\";\"main\"\n\"5795104\";\"Friday Harbor\";\"main\"\n\"5795292\";\"Garrett\";\"main\"\n\"5795348\";\"Geneva\";\"main\"\n\"5795348\";\"Zheneva\";\"other\"\n\"5795348\";\"Женева\";\"other\"\n\"5795440\";\"Gig Harbor\";\"main\"\n\"5795542\";\"Gleed\";\"main\"\n\"5795678\";\"Gold Bar\";\"main\"\n\"5795741\";\"Goldendale\";\"main\"\n\"5795906\";\"Graham\";\"main\"\n\"5795933\";\"Grand Mound\";\"main\"\n\"5795969\";\"Grandview\";\"main\"\n\"5795972\";\"Granger\";\"main\"\n\"5795988\";\"Granite Falls\";\"main\"\n\"5795991\";\"Granite Falls\";\"main\"\n\"5796112\";\"Grayland\";\"main\"\n\"5797300\";\"Highland\";\"main\"\n\"5797430\";\"Hobart\";\"main\"\n\"5797430\";\"Khobart\";\"other\"\n\"5797430\";\"Хобарт\";\"other\"\n\"5797435\";\"Hockinson\";\"main\"\n\"5797693\";\"Hoquiam\";\"main\"\n\"5798318\";\"Indianola\";\"main\"\n\"5798487\";\"Issaquah\";\"main\"\n\"5799410\";\"Kalama\";\"main\"\n\"5799571\";\"Kelso\";\"main\"\n\"5799587\";\"Kenmore\";\"main\"\n\"5799610\";\"Kennewick\";\"main\"\n\"5799625\";\"Kent\";\"main\"\n\"5799625\";\"98032\";\"other\"\n\"5799625\";\"Кент\";\"other\"\n\"5799687\";\"Kettle Falls\";\"main\"\n\"5799815\";\"Kingston\";\"main\"\n\"5799815\";\"Кингстон\";\"other\"\n\"5799819\";\"Kingsgate\";\"main\"\n\"5799841\";\"Kirkland\";\"main\"\n\"5799869\";\"Kittitas\";\"main\"\n\"5800069\";\"La Center\";\"main\"\n\"5800112\";\"Lacey\";\"main\"\n\"5800112\";\"Lejsi\";\"other\"\n\"5800112\";\"Лейси\";\"other\"\n\"5800227\";\"Lake Forest Park\";\"main\"\n\"5800235\";\"Lake Goodwin\";\"main\"\n\"5800255\";\"Lake Ketchum\";\"main\"\n\"5800314\";\"Lake Shore\";\"main\"\n\"5800317\";\"Lake Stevens\";\"main\"\n\"5800420\";\"Lakewood\";\"main\"\n\"5800420\";\"Lejkvud\";\"other\"\n\"5800420\";\"Лейквуд\";\"other\"\n\"5800475\";\"Langley\";\"main\"\n\"5800683\";\"Leavenworth\";\"main\"\n\"5800683\";\"Livenvors\";\"other\"\n\"5800683\";\"Ливенворс\";\"other\"\n\"5800840\";\"Lewisville\";\"main\"\n\"5800870\";\"Liberty Lake\";\"main\"\n\"5801412\";\"Lochsloy\";\"main\"\n\"5801520\";\"Long Beach\";\"main\"\n\"5801520\";\"Long-Bich\";\"other\"\n\"5801520\";\"Лонг-Бич\";\"other\"\n\"5801617\";\"Longview\";\"main\"\n\"5801621\";\"Longview Heights\";\"main\"\n\"5802035\";\"Lynden\";\"main\"\n\"5802049\";\"Lynnwood\";\"main\"\n\"5802049\";\"Linvud\";\"other\"\n\"5802049\";\"Линвуд\";\"other\"\n\"5802087\";\"Mabton\";\"main\"\n\"5802098\";\"Machias\";\"main\"\n\"5802236\";\"Maltby\";\"main\"\n\"5802247\";\"Manchester\";\"main\"\n\"5802247\";\"Манчестер\";\"other\"\n\"5802340\";\"Maple Valley\";\"main\"\n\"5802418\";\"Marietta\";\"main\"\n\"5802493\";\"Martha Lake\";\"main\"\n\"5802570\";\"Marysville\";\"main\"\n\"5802636\";\"Mattawa\";\"main\"\n\"5802666\";\"May Creek\";\"main\"\n\"5802758\";\"McCleary\";\"main\"\n\"5803025\";\"Meadow Glade\";\"main\"\n\"5803066\";\"Medical Lake\";\"main\"\n\"5803092\";\"Medina\";\"main\"\n\"5803092\";\"Медина\";\"other\"\n\"5803139\";\"Mercer Island\";\"main\"\n\"5803357\";\"Midland\";\"main\"\n\"5803457\";\"Mill Creek\";\"main\"\n\"5803482\";\"Mill Plain\";\"main\"\n\"5803545\";\"Millwood\";\"main\"\n\"5803556\";\"Milton\";\"main\"\n\"5803556\";\"Mil'ton\";\"other\"\n\"5803556\";\"Мильтон\";\"other\"\n\"5803622\";\"Minnehaha\";\"main\"\n\"5803666\";\"Mirrormont\";\"main\"\n\"5803786\";\"Monroe\";\"main\"\n\"5803786\";\"Monro\";\"other\"\n\"5803786\";\"Монро\";\"other\"\n\"5803818\";\"Montesano\";\"main\"\n\"5803964\";\"Morton\";\"main\"\n\"5803990\";\"Moses Lake\";\"main\"\n\"5804127\";\"Mount Vernon\";\"main\"\n\"5804135\";\"Mount Vista\";\"main\"\n\"5804191\";\"Mountlake Terrace\";\"main\"\n\"5804306\";\"Mukilteo\";\"main\"\n\"5804467\";\"Napavine\";\"main\"\n\"5804540\";\"Navy Yard City\";\"main\"\n\"5804676\";\"Newcastle\";\"main\"\n\"5804693\";\"Newport\";\"main\"\n\"5804694\";\"Newport\";\"main\"\n\"5804694\";\"N'juport\";\"other\"\n\"5804694\";\"Ньюпорт\";\"other\"\n\"5804885\";\"Normandy Park\";\"main\"\n\"5804915\";\"North Bend\";\"main\"\n\"5804953\";\"North Creek\";\"main\"\n\"5805218\";\"North Marysville\";\"main\"\n\"5805317\";\"North Yelm\";\"main\"\n\"5805441\";\"Oak Harbor\";\"main\"\n\"5805503\";\"Ocean Park\";\"main\"\n\"5805505\";\"Ocean Shores\";\"main\"\n\"5805550\";\"Okanogan\";\"main\"\n\"5805687\";\"Olympia\";\"main\"\n\"5805687\";\"Olimpija\";\"other\"\n\"5805687\";\"ao lin pi ya\";\"other\"\n\"5805687\";\"orinpia\";\"other\"\n\"5805687\";\"Олимпия\";\"other\"\n\"5805687\";\"اولمپیا، واشنگٹن\";\"other\"\n\"5805687\";\"オリンピア\";\"other\"\n\"5805687\";\"奧林匹亞\";\"other\"\n\"5805734\";\"Omak\";\"main\"\n\"5805782\";\"Opportunity\";\"main\"\n\"5805815\";\"Orchards\";\"main\"\n\"5805838\";\"Oroville\";\"main\"\n\"5805849\";\"Orting\";\"main\"\n\"5805879\";\"Othello\";\"main\"\n\"5806017\";\"Pacific\";\"main\"\n\"5806253\";\"Parkland\";\"main\"\n\"5806274\";\"Parkwood\";\"main\"\n\"5806298\";\"Pasco\";\"main\"\n\"5806298\";\"Pasko\";\"other\"\n\"5806298\";\"Паско\";\"other\"\n\"5807169\";\"Pomeroy\";\"main\"\n\"5807212\";\"Port Angeles\";\"main\"\n\"5807228\";\"Port Ludlow\";\"main\"\n\"5807236\";\"Port Orchard\";\"main\"\n\"5807239\";\"Port Townsend\";\"main\"\n\"5807337\";\"Poulsbo\";\"main\"\n\"5807367\";\"Prairie Ridge\";\"main\"\n\"5807487\";\"Prosser\";\"main\"\n\"5807540\";\"Pullman\";\"main\"\n\"5807575\";\"Puyallup\";\"main\"\n\"5807713\";\"Quincy\";\"main\"\n\"5807713\";\"Kuinsi\";\"other\"\n\"5807713\";\"Куинси\";\"other\"\n\"5807825\";\"Rainier\";\"main\"\n\"5807986\";\"Raymond\";\"main\"\n\"5808079\";\"Redmond\";\"main\"\n\"5808079\";\"lei de meng de\";\"other\"\n\"5808079\";\"redomondo\";\"other\"\n\"5808079\";\"Редмонд\";\"other\"\n\"5808079\";\"レドモンド\";\"other\"\n\"5808079\";\"雷德蒙德\";\"other\"\n\"5808189\";\"Renton\";\"main\"\n\"5808276\";\"Richland\";\"main\"\n\"5808276\";\"Richlend\";\"other\"\n\"5808276\";\"Ричленд\";\"other\"\n\"5808311\";\"Ridgefield\";\"main\"\n\"5808402\";\"Riverbend\";\"main\"\n\"5808453\";\"Ritzville\";\"main\"\n\"5808524\";\"Rochester\";\"main\"\n\"5808524\";\"Рочестер\";\"other\"\n\"5808931\";\"Roy\";\"main\"\n\"5808931\";\"Roj\";\"other\"\n\"5808931\";\"Рой\";\"other\"\n\"5808939\";\"Royal City\";\"main\"\n\"5809333\";\"Salmon Creek\";\"main\"\n\"5809402\";\"Sammamish\";\"main\"\n\"5809805\";\"SeaTac\";\"main\"\n\"5809844\";\"Seattle\";\"main\"\n\"5809844\";\"Seattlum\";\"other\"\n\"5809844\";\"Siatul\";\"other\"\n\"5809844\";\"Siehtl\";\"other\"\n\"5809844\";\"Sietlas\";\"other\"\n\"5809844\";\"Sijetl\";\"other\"\n\"5809844\";\"shiatoru\";\"other\"\n\"5809844\";\"si'aitala\";\"other\"\n\"5809844\";\"siaeteul\";\"other\"\n\"5809844\";\"syatl\";\"other\"\n\"5809844\";\"xi ya tu\";\"other\"\n\"5809844\";\"Сиатъл\";\"other\"\n\"5809844\";\"Сиэтл\";\"other\"\n\"5809844\";\"Сијетл\";\"other\"\n\"5809844\";\"סיאטל\";\"other\"\n\"5809844\";\"סיעטל\";\"other\"\n\"5809844\";\"سياتل\";\"other\"\n\"5809844\";\"سیاتل\";\"other\"\n\"5809844\";\"सीऐटल\";\"other\"\n\"5809844\";\"シアトル\";\"other\"\n\"5809844\";\"西雅圖\";\"other\"\n\"5809844\";\"시애틀\";\"other\"\n\"5809902\";\"Sedro-Woolley\";\"main\"\n\"5809928\";\"Selah\";\"main\"\n\"5809983\";\"Sequim\";\"main\"\n\"5810176\";\"Shelton\";\"main\"\n\"5810176\";\"Шелтон\";\"other\"\n\"5810301\";\"Shoreline\";\"main\"\n\"5810490\";\"Silverdale\";\"main\"\n\"5810915\";\"Smokey Point\";\"main\"\n\"5810988\";\"Snohomish\";\"main\"\n\"5810995\";\"Snoqualmie\";\"main\"\n\"5811089\";\"Soap Lake\";\"main\"\n\"5811211\";\"South Bend\";\"main\"\n\"5811456\";\"South Hill\";\"main\"\n\"5811581\";\"Spanaway\";\"main\"\n\"5811696\";\"Spokane\";\"main\"\n\"5811696\";\"supoken\";\"other\"\n\"5811696\";\"スポケーン\";\"other\"\n\"5811696\";\"スポーケン\";\"other\"\n\"5811995\";\"Stanwood\";\"main\"\n\"5812092\";\"Steilacoom\";\"main\"\n\"5812177\";\"Stevenson\";\"main\"\n\"5812434\";\"Sudden Valley\";\"main\"\n\"5812483\";\"Sultan\";\"main\"\n\"5812494\";\"Sumas\";\"main\"\n\"5812505\";\"Summit\";\"main\"\n\"5812543\";\"Sumner\";\"main\"\n\"5812604\";\"Sunnyside\";\"main\"\n\"5812626\";\"Sunnyslope\";\"main\"\n\"5812723\";\"Suquamish\";\"main\"\n\"5812944\";\"Tacoma\";\"main\"\n\"5812944\";\"takoma\";\"other\"\n\"5812944\";\"タコマ\";\"other\"\n\"5813063\";\"Tanner\";\"main\"\n\"5813207\";\"Tenino\";\"main\"\n\"5813249\";\"Terrace Heights\";\"main\"\n\"5813459\";\"Three Lakes\";\"main\"\n\"5813532\";\"Tieton\";\"main\"\n\"5813747\";\"Toppenish\";\"main\"\n\"5813814\";\"Town and Country\";\"main\"\n\"5813832\";\"Tracyton\";\"main\"\n\"5813889\";\"Trentwood\";\"main\"\n\"5814043\";\"Tukwila\";\"main\"\n\"5814048\";\"Tulalip Bay\";\"main\"\n\"5814095\";\"Tumwater\";\"main\"\n\"5814419\";\"Union Gap\";\"main\"\n\"5814450\";\"University Place\";\"main\"\n\"5814616\";\"Vancouver\";\"main\"\n\"5814616\";\"Predloga:Zascitenovand\";\"other\"\n\"5814616\";\"Predloga:Zaščitenovand\";\"other\"\n\"5814616\";\"Template:Vandalism\";\"other\"\n\"5814616\";\"Vankuver\";\"other\"\n\"5814616\";\"Ванкувер\";\"other\"\n\"5814647\";\"Vashon\";\"main\"\n\"5814686\";\"Veradale\";\"main\"\n\"5814695\";\"Venersborg\";\"main\"\n\"5814871\";\"Waitsburg\";\"main\"\n\"5814916\";\"Walla Walla\";\"main\"\n\"5814941\";\"Waller\";\"main\"\n\"5814950\";\"Walnut Grove\";\"main\"\n\"5814992\";\"Wapato\";\"main\"\n\"5815020\";\"Warden\";\"main\"\n\"5815033\";\"Warm Beach\";\"main\"\n\"5815136\";\"Washougal\";\"main\"\n\"5815184\";\"Waterville\";\"main\"\n\"5815342\";\"Wenatchee\";\"main\"\n\"5815538\";\"West Lake Sammamish\";\"main\"\n\"5815539\";\"West Lake Stevens\";\"main\"\n\"5815544\";\"West Longview\";\"main\"\n\"5815550\";\"West Pasco\";\"main\"\n\"5815599\";\"West Richland\";\"main\"\n\"5815605\";\"West Valley\";\"main\"\n\"5815609\";\"West Wenatchee\";\"main\"\n\"5815665\";\"Westport\";\"main\"\n\"5815759\";\"White Center\";\"main\"\n\"5815842\";\"White Salmon\";\"main\"\n\"5815850\";\"White Swan\";\"main\"\n\"5816314\";\"Winlock\";\"main\"\n\"5816320\";\"Bainbridge Island\";\"main\"\n\"5816449\";\"Woodinville\";\"main\"\n\"5816457\";\"Woodland\";\"main\"\n\"5816494\";\"Woods Creek\";\"main\"\n\"5816508\";\"Woodway\";\"main\"\n\"5816582\";\"Yacolt\";\"main\"\n\"5816605\";\"Yakima\";\"main\"\n\"5816605\";\"Jakima\";\"other\"\n\"5816605\";\"Якима\";\"other\"\n\"5816656\";\"Yelm\";\"main\"\n\"5816719\";\"Zillah\";\"main\"\n\"5816861\";\"Afton\";\"main\"\n\"5817340\";\"Arapahoe\";\"main\"\n\"5817809\";\"Bar Nunn\";\"main\"\n\"5817923\";\"Basin\";\"main\"\n\"5819881\";\"Buffalo\";\"main\"\n\"5819881\";\"Буффало\";\"other\"\n\"5820705\";\"Casper\";\"main\"\n\"5820705\";\"Kasper\";\"other\"\n\"5820705\";\"Каспер\";\"other\"\n\"5821086\";\"Cheyenne\";\"main\"\n\"5821086\";\"Cheyenna\";\"other\"\n\"5821086\";\"Shajenn\";\"other\"\n\"5821086\";\"shaian\";\"other\"\n\"5821086\";\"shayan\";\"other\"\n\"5821086\";\"xia yan\";\"other\"\n\"5821086\";\"Шайенн\";\"other\"\n\"5821086\";\"شايان\";\"other\"\n\"5821086\";\"シャイアン\";\"other\"\n\"5821086\";\"夏延\";\"other\"\n\"5821593\";\"Cody\";\"main\"\n\"5823516\";\"Douglas\";\"main\"\n\"5824773\";\"Ethete\";\"main\"\n\"5824805\";\"Evanston\";\"main\"\n\"5824810\";\"Evansville\";\"main\"\n\"5824810\";\"Ehvansvill\";\"other\"\n\"5824810\";\"Эвансвилл\";\"other\"\n\"5825424\";\"Fort Washakie\";\"main\"\n\"5826027\";\"Gillette\";\"main\"\n\"5826088\";\"Glenrock\";\"main\"\n\"5826559\";\"Green River\";\"main\"\n\"5826603\";\"Greybull\";\"main\"\n\"5826723\";\"Guernsey\";\"main\"\n\"5827703\";\"Hoback\";\"main\"\n\"5828648\";\"Jackson\";\"main\"\n\"5828648\";\"Dzhekson\";\"other\"\n\"5828648\";\"Джексон\";\"other\"\n\"5829425\";\"Kemmerer\";\"main\"\n\"5830007\";\"Lander\";\"main\"\n\"5830062\";\"Laramie\";\"main\"\n\"5830062\";\"Larami\";\"other\"\n\"5830062\";\"Ларами\";\"other\"\n\"5831176\";\"Lovell\";\"main\"\n\"5831333\";\"Lusk\";\"main\"\n\"5831346\";\"Lyman\";\"main\"\n\"5832481\";\"Mills\";\"main\"\n\"5832759\";\"Moose Wilson Road\";\"main\"\n\"5832901\";\"Mountain View\";\"main\"\n\"5832901\";\"Mauntin-V'ju\";\"other\"\n\"5832901\";\"Маунтин-Вью\";\"other\"\n\"5833349\";\"Newcastle\";\"main\"\n\"5833892\";\"North Rock Springs\";\"main\"\n\"5835069\";\"Pine Bluffs\";\"main\"\n\"5835178\";\"Pinedale\";\"main\"\n\"5835606\";\"Powell\";\"main\"\n\"5835865\";\"Rafter J Ranch\";\"main\"\n\"5835956\";\"Ranchettes\";\"main\"\n\"5836068\";\"Rawlins\";\"main\"\n\"5836665\";\"Riverton\";\"main\"\n\"5836665\";\"Ривертон\";\"other\"\n\"5836898\";\"Rock Springs\";\"main\"\n\"5837593\";\"Saratoga\";\"main\"\n\"5838198\";\"Sheridan\";\"main\"\n\"5838617\";\"Sleepy Hollow\";\"main\"\n\"5839233\";\"South Greeley\";\"main\"\n\"5840284\";\"Sundance\";\"main\"\n\"5840846\";\"Thermopolis\";\"main\"\n\"5841207\";\"Torrington\";\"main\"\n\"5842753\";\"Wheatland\";\"main\"\n\"5843239\";\"Wilson\";\"main\"\n\"5843239\";\"Uilson\";\"other\"\n\"5843239\";\"Уилсон\";\"other\"\n\"5843495\";\"Worland\";\"main\"\n\"5843515\";\"Wright\";\"main\"\n\"5843515\";\"Rajt\";\"other\"\n\"5843515\";\"Райт\";\"other\"\n\"5843997\";\"Gold Beach\";\"main\"\n\"5844096\";\"American Fork\";\"main\"\n\"5845544\";\"Craig\";\"main\"\n\"5846901\";\"Haines\";\"main\"\n\"5847207\";\"Kahalu‘u\";\"main\"\n\"5847207\";\"Kahalu'u\";\"ascii\"\n\"5847207\";\"Kahaluu\";\"other\"\n\"5847387\";\"Kahuku\";\"main\"\n\"5847411\";\"Kahului\";\"main\"\n\"5847486\";\"Kailua\";\"main\"\n\"5847504\";\"Kailua-Kona\";\"main\"\n\"5847504\";\"Kailua Kona\";\"other\"\n\"5847504\";\"Kailua-kona\";\"other\"\n\"5847662\";\"Kalaheo\";\"main\"\n\"5847746\";\"Kalaoa\";\"main\"\n\"5848189\";\"Kāne‘ohe\";\"main\"\n\"5848189\";\"Kane'ohe\";\"ascii\"\n\"5848189\";\"Kaneohe\";\"other\"\n\"5848280\";\"Kapaa\";\"main\"\n\"5848308\";\"Kapaau\";\"main\"\n\"5848652\";\"Kaunakakai\";\"main\"\n\"5848891\";\"Kea‘au\";\"main\"\n\"5848891\";\"Kea'au\";\"ascii\"\n\"5848891\";\"Keaau\";\"other\"\n\"5848956\";\"Kealakekua\";\"main\"\n\"5849164\";\"Kekaha\";\"main\"\n\"5849297\";\"Kīhei\";\"main\"\n\"5849297\";\"Kihei\";\"ascii\"\n\"5849346\";\"Kilauea\";\"main\"\n\"5849616\";\"Koloa\";\"main\"\n\"5849718\";\"Kualapu‘u\";\"main\"\n\"5849718\";\"Kualapu'u\";\"ascii\"\n\"5849718\";\"Kualapuu\";\"other\"\n\"5849961\";\"Kurtistown\";\"main\"\n\"5849996\";\"Lahaina\";\"main\"\n\"5850027\";\"Lā‘ie\";\"main\"\n\"5850027\";\"La'ie\";\"ascii\"\n\"5850027\";\"Laie\";\"other\"\n\"5850059\";\"Lāna‘i City\";\"main\"\n\"5850059\";\"Lana'i City\";\"ascii\"\n\"5850059\";\"Lanai\";\"other\"\n\"5850059\";\"Lanai City\";\"other\"\n\"5850181\";\"Lawai\";\"main\"\n\"5850212\";\"Leilani Estates\";\"main\"\n\"5850248\";\"Lihue\";\"main\"\n\"5850492\";\"Mā‘ili\";\"main\"\n\"5850492\";\"Ma'ili\";\"ascii\"\n\"5850492\";\"Maili\";\"other\"\n\"5850511\";\"Mākaha\";\"main\"\n\"5850511\";\"Makaha\";\"ascii\"\n\"5850522\";\"Mākaha Valley\";\"main\"\n\"5850522\";\"Makaha Valley\";\"ascii\"\n\"5850554\";\"Makakilo City\";\"main\"\n\"5850616\";\"Makawao\";\"main\"\n\"5850966\";\"Maunawili\";\"main\"\n\"5851030\";\"Mililani Town\";\"main\"\n\"5851030\";\"Mililani\";\"other\"\n\"5851156\";\"Mokuleia\";\"main\"\n\"5851253\";\"Mountain View\";\"main\"\n\"5851253\";\"Mauntin-V'ju\";\"other\"\n\"5851253\";\"Маунтин-Вью\";\"other\"\n\"5851349\";\"Nānākuli\";\"main\"\n\"5851349\";\"Nanakuli\";\"ascii\"\n\"5851364\";\"Nanawale Estates\";\"main\"\n\"5851719\";\"Omao\";\"main\"\n\"5851821\";\"Orchidlands Estates\";\"main\"\n\"5851902\";\"Pāhala\";\"main\"\n\"5851902\";\"Pahala\";\"ascii\"\n\"5851942\";\"Paia\";\"main\"\n\"5852140\";\"Pāpa‘ikou\";\"main\"\n\"5852140\";\"Papa'ikou\";\"ascii\"\n\"5852140\";\"Papaikou\";\"other\"\n\"5852275\";\"Pearl City\";\"main\"\n\"5852322\";\"Pepeekeo\";\"main\"\n\"5852508\";\"Poipu\";\"main\"\n\"5852602\";\"Princeville\";\"main\"\n\"5852676\";\"Puhi\";\"main\"\n\"5852697\";\"Pukalani\";\"main\"\n\"5852774\";\"Punaluu\";\"main\"\n\"5852824\";\"Pūpūkea\";\"main\"\n\"5852824\";\"Pupukea\";\"ascii\"\n\"5853965\";\"Village Park\";\"main\"\n\"5853971\";\"Volcano\";\"main\"\n\"5853992\";\"Wahiawā\";\"main\"\n\"5853992\";\"Wahiawa\";\"ascii\"\n\"5854171\";\"Waialua\";\"main\"\n\"5854173\";\"Waialua\";\"main\"\n\"5854189\";\"Wai‘anae\";\"main\"\n\"5854189\";\"Wai'anae\";\"ascii\"\n\"5854189\";\"Waianae\";\"other\"\n\"5854354\";\"Waikapu\";\"main\"\n\"5854421\";\"Waikoloa Village\";\"main\"\n\"5854469\";\"Wailua\";\"main\"\n\"5854471\";\"Wailua\";\"main\"\n\"5854496\";\"Wailuku\";\"main\"\n\"5854530\";\"Waimalu\";\"main\"\n\"5854532\";\"Waimānalo\";\"main\"\n\"5854532\";\"Waimanalo\";\"ascii\"\n\"5854535\";\"Waimānalo Beach\";\"main\"\n\"5854535\";\"Waimanalo Beach\";\"ascii\"\n\"5854564\";\"Waimea\";\"main\"\n\"5854571\";\"Waimea\";\"main\"\n\"5854599\";\"Wainaku\";\"main\"\n\"5854686\";\"Waipahu\";\"main\"\n\"5854717\";\"Waipi‘o\";\"main\"\n\"5854717\";\"Waipi'o\";\"ascii\"\n\"5854717\";\"Waipio\";\"other\"\n\"5854718\";\"Waipi‘o Acres\";\"main\"\n\"5854718\";\"Waipi'o Acres\";\"ascii\"\n\"5854718\";\"Waipio Acres\";\"other\"\n\"5854857\";\"Whitmore Village\";\"main\"\n\"5855028\";\"Eleele\";\"main\"\n\"5855051\";\"‘Ewa Beach\";\"main\"\n\"5855051\";\"'Ewa Beach\";\"ascii\"\n\"5855051\";\"Ewa Beach\";\"other\"\n\"5855070\";\"‘Ewa Gentry\";\"main\"\n\"5855070\";\"'Ewa Gentry\";\"ascii\"\n\"5855070\";\"Ewa Gentry\";\"other\"\n\"5855073\";\"‘Ewa Villages\";\"main\"\n\"5855073\";\"'Ewa Villages\";\"ascii\"\n\"5855073\";\"Ewa Villages\";\"other\"\n\"5855319\";\"Hālawa\";\"main\"\n\"5855319\";\"Halawa\";\"ascii\"\n\"5855327\";\"Hālawa Heights\";\"main\"\n\"5855327\";\"Halawa Heights\";\"ascii\"\n\"5855420\";\"Hale‘iwa\";\"main\"\n\"5855420\";\"Hale'iwa\";\"ascii\"\n\"5855420\";\"Haleiwa\";\"other\"\n\"5855629\";\"Hanamaulu\";\"main\"\n\"5855631\";\"Hanapēpē\";\"main\"\n\"5855631\";\"Hanapepe\";\"ascii\"\n\"5855644\";\"Hanapepe Heights\";\"main\"\n\"5855741\";\"Hau‘ula\";\"main\"\n\"5855741\";\"Hau'ula\";\"ascii\"\n\"5855741\";\"Hauula\";\"other\"\n\"5855802\";\"Hawaiian Beaches\";\"main\"\n\"5855803\";\"Hawaiian Acres\";\"main\"\n\"5855809\";\"Hawaiian Paradise Park\";\"main\"\n\"5855815\";\"Hawaiian Ocean View\";\"main\"\n\"5855847\";\"He‘eia\";\"main\"\n\"5855847\";\"He'eia\";\"ascii\"\n\"5855847\";\"Heeia\";\"other\"\n\"5855927\";\"Hilo\";\"main\"\n\"5855927\";\"Baie de Hilo\";\"other\"\n\"5855927\";\"Khilo\";\"other\"\n\"5855927\";\"hiro\";\"other\"\n\"5855927\";\"Хило\";\"other\"\n\"5855927\";\"ヒロ\";\"other\"\n\"5856050\";\"Hōlualoa\";\"main\"\n\"5856050\";\"Holualoa\";\"ascii\"\n\"5856094\";\"Honalo\";\"main\"\n\"5856111\";\"Honoka‘a\";\"main\"\n\"5856111\";\"Honoka'a\";\"ascii\"\n\"5856111\";\"Honokaa\";\"other\"\n\"5856195\";\"Honolulu\";\"main\"\n\"5856195\";\"Gonolulu\";\"other\"\n\"5856195\";\"Honolulú\";\"other\"\n\"5856195\";\"Khonolulu\";\"other\"\n\"5856195\";\"honollullu\";\"other\"\n\"5856195\";\"honoruru\";\"other\"\n\"5856195\";\"hwnwlwlw\";\"other\"\n\"5856195\";\"tan xiang shan\";\"other\"\n\"5856195\";\"Гонолулу\";\"other\"\n\"5856195\";\"Хонолулу\";\"other\"\n\"5856195\";\"הונולולו\";\"other\"\n\"5856195\";\"هونولولو\";\"other\"\n\"5856195\";\"ホノルル\";\"other\"\n\"5856195\";\"檀香山\";\"other\"\n\"5856195\";\"호놀룰루\";\"other\"\n\"5856430\";\"‘Aiea\";\"main\"\n\"5856430\";\"'Aiea\";\"ascii\"\n\"5856430\";\"Aiea\";\"other\"\n\"5856516\";\"‘Āhuimanu\";\"main\"\n\"5856516\";\"'Ahuimanu\";\"ascii\"\n\"5856516\";\"Ahuimanu\";\"other\"\n\"5856563\";\"Iroquois Point\";\"main\"\n\"5856759\";\"Kaaawa\";\"main\"\n\"5856844\";\"Kā‘anapali\";\"main\"\n\"5856844\";\"Ka'anapali\";\"ascii\"\n\"5856844\";\"Kaanapali\";\"other\"\n\"5856852\";\"Kaanapali Landing\";\"main\"\n\"5857040\";\"Ainaloa\";\"main\"\n\"5857121\";\"Anahola\";\"main\"\n\"5857264\";\"Captain Cook\";\"main\"\n\"5858289\";\"Butte\";\"main\"\n\"5859679\";\"Cohoe\";\"main\"\n\"5859699\";\"College\";\"main\"\n\"5859888\";\"Cordova\";\"main\"\n\"5860661\";\"Diamond Ridge\";\"main\"\n\"5860695\";\"Dillingham\";\"main\"\n\"5861769\";\"Ester\";\"main\"\n\"5861897\";\"Fairbanks\";\"main\"\n\"5861897\";\"Fehrbenks\";\"other\"\n\"5861897\";\"feabankusu\";\"other\"\n\"5861897\";\"peeobaengkeuseu\";\"other\"\n\"5861897\";\"Фэрбенкс\";\"other\"\n\"5861897\";\"フェアバンクス\";\"other\"\n\"5861897\";\"페어뱅크스\";\"other\"\n\"5862590\";\"Fritz Creek\";\"main\"\n\"5862727\";\"Gateway\";\"main\"\n\"5863850\";\"Healy\";\"main\"\n\"5864145\";\"Homer\";\"main\"\n\"5864197\";\"Hooper Bay\";\"main\"\n\"5864312\";\"Houston\";\"main\"\n\"5864312\";\"Kh'juston\";\"other\"\n\"5864312\";\"Хьюстон\";\"other\"\n\"5865702\";\"Kalifornsky\";\"main\"\n\"5866063\";\"Kenai\";\"main\"\n\"5866583\";\"Kodiak\";\"main\"\n\"5866583\";\"Kad'jak\";\"other\"\n\"5866583\";\"Кадьяк\";\"other\"\n\"5866726\";\"Kotzebue\";\"main\"\n\"5867241\";\"Lazy Mountain\";\"main\"\n\"5868651\";\"Meadow Lakes\";\"main\"\n\"5869956\";\"Nikiski\";\"main\"\n\"5870133\";\"Nome\";\"main\"\n\"5870133\";\"nom\";\"other\"\n\"5870133\";\"Ном\";\"other\"\n\"5870294\";\"North Pole\";\"main\"\n\"5871146\";\"Palmer\";\"main\"\n\"5872730\";\"Ridgeway\";\"main\"\n\"5873776\";\"Seward\";\"main\"\n\"5874678\";\"Soldotna\";\"main\"\n\"5875173\";\"Sterling\";\"main\"\n\"5875173\";\"Стерлинг\";\"other\"\n\"5875745\";\"Talkeetna\";\"main\"\n\"5875796\";\"Tanaina\";\"main\"\n\"5876363\";\"Tok\";\"main\"\n\"5877208\";\"Unalaska\";\"main\"\n\"5877208\";\"Isola di Unalaska\";\"other\"\n\"5877208\";\"eoneollaeseuka seom\";\"other\"\n\"5877208\";\"unalashka\";\"other\"\n\"5877208\";\"unarasuka\";\"other\"\n\"5877208\";\"Уналашка\";\"other\"\n\"5877208\";\"ウナラスカ\";\"other\"\n\"5877208\";\"어널래스카 섬\";\"other\"\n\"5877389\";\"Valdez\";\"main\"\n\"5877641\";\"Wasilla\";\"main\"\n\"5878102\";\"Willow\";\"main\"\n\"5879400\";\"Anchorage\";\"main\"\n\"5879400\";\"Ankoridz\";\"other\"\n\"5879400\";\"Ankoridzas\";\"other\"\n\"5879400\";\"Ankoridzh\";\"other\"\n\"5879400\";\"Ankoridžas\";\"other\"\n\"5879400\";\"aengkeoliji\";\"other\"\n\"5879400\";\"an ke la zhi\";\"other\"\n\"5879400\";\"ancorage byuro\";\"other\"\n\"5879400\";\"ankarejji\";\"other\"\n\"5879400\";\"Анкоридж\";\"other\"\n\"5879400\";\"Анкорідж\";\"other\"\n\"5879400\";\"আন্চোরগে ব্যুরো\";\"other\"\n\"5879400\";\"アンカレッジ\";\"other\"\n\"5879400\";\"安克拉治\";\"other\"\n\"5879400\";\"앵커리지\";\"other\"\n\"5879403\";\"Anchor Point\";\"main\"\n\"5880054\";\"Barrow\";\"main\"\n\"5880054\";\"Barrou\";\"other\"\n\"5880054\";\"baro\";\"other\"\n\"5880054\";\"Барроу\";\"other\"\n\"5880054\";\"バロー\";\"other\"\n\"5880147\";\"Bear Creek\";\"main\"\n\"5880568\";\"Bethel\";\"main\"\n\"5880661\";\"Big Lake\";\"main\"\n\"6424355\";\"St Johnsbury\";\"main\"\n\"6545140\";\"Dayton\";\"main\"\n\"6930979\";\"Village of Campton Hills\";\"main\"\n\"6941080\";\"Fort Bragg\";\"main\"\n\"6943007\";\"Baywood\";\"main\"\n\"7257909\";\"Fort Meade\";\"main\"\n\"7257909\";\"Fort George Meade\";\"other\"\n\"7506758\";\"BloomingtonMn\";\"main\"\n\"3439525\";\"Young\";\"main\"\n\"3439590\";\"Villa Sara\";\"main\"\n\"3439598\";\"Villa del Carmen\";\"main\"\n\"3439598\";\"Carmen\";\"other\"\n\"3439598\";\"Carmen del Durazno\";\"other\"\n\"3439598\";\"Pueblo de Nuestra Senora del Carmen\";\"other\"\n\"3439598\";\"Pueblo de Nuestra Señora del Carmen\";\"other\"\n\"3439598\";\"Pueblo del Carmen\";\"other\"\n\"3439619\";\"Vichadero\";\"main\"\n\"3439619\";\"Poblado Vichadero\";\"other\"\n\"3439619\";\"Vicheadero\";\"other\"\n\"3439622\";\"Vergara\";\"main\"\n\"3439652\";\"Velázquez\";\"main\"\n\"3439652\";\"Velazquez\";\"ascii\"\n\"3439652\";\"Pueblo Velazquez\";\"other\"\n\"3439652\";\"Pueblo Velázquez\";\"other\"\n\"3439652\";\"Velasquez\";\"other\"\n\"3439659\";\"Veinticinco de Mayo\";\"main\"\n\"3439659\";\"25 de Mayo\";\"other\"\n\"3439659\";\"Isla Mala\";\"other\"\n\"3439661\";\"Veinticinco de Agosto\";\"main\"\n\"3439661\";\"25 de Agosto\";\"other\"\n\"3439725\";\"Tupambaé\";\"main\"\n\"3439725\";\"Tupambae\";\"ascii\"\n\"3439749\";\"Trinidad\";\"main\"\n\"3439781\";\"Treinta y Tres\";\"main\"\n\"3439781\";\"Villa de Treinta y Tres\";\"other\"\n\"3439787\";\"Tranqueras\";\"main\"\n\"3439787\";\"Paso Tranqueras\";\"other\"\n\"3439831\";\"Tomás Gomensoro\";\"main\"\n\"3439831\";\"Tomas Gomensoro\";\"ascii\"\n\"3439838\";\"Toledo\";\"main\"\n\"3439902\";\"Tarariras\";\"main\"\n\"3439902\";\"J. Suarez\";\"other\"\n\"3439902\";\"J. Suárez\";\"other\"\n\"3439902\";\"Joaquin Suarez\";\"other\"\n\"3439902\";\"Joaquín Suárez\";\"other\"\n\"3439902\";\"Suarez\";\"other\"\n\"3439902\";\"Suárez\";\"other\"\n\"3440021\";\"Tala\";\"main\"\n\"3440034\";\"Tacuarembó\";\"main\"\n\"3440034\";\"Tacuarembo\";\"ascii\"\n\"3440034\";\"San Fructuoso\";\"other\"\n\"3440034\";\"Takuarembo\";\"other\"\n\"3440034\";\"Villa de San Fructuoso\";\"other\"\n\"3440034\";\"Villa de Tacuarembo\";\"other\"\n\"3440034\";\"Такуарембо\";\"other\"\n\"3440055\";\"Soriano\";\"main\"\n\"3440055\";\"Santo Domingo de Soriano\";\"other\"\n\"3440055\";\"Villa de Soriano\";\"other\"\n\"3440063\";\"Solís de Mataojo\";\"main\"\n\"3440063\";\"Solis de Mataojo\";\"ascii\"\n\"3440063\";\"Solis\";\"other\"\n\"3440063\";\"Solis Grande\";\"other\"\n\"3440063\";\"Solís\";\"other\"\n\"3440063\";\"Solís Grande\";\"other\"\n\"3440076\";\"Soca\";\"main\"\n\"3440076\";\"Doctor Francisco Soca\";\"other\"\n\"3440076\";\"Doctor Soca\";\"other\"\n\"3440076\";\"Francisco Soca\";\"other\"\n\"3440076\";\"Mosquitos\";\"other\"\n\"3440379\";\"Sauce\";\"main\"\n\"3440394\";\"Sarandí Grande\";\"main\"\n\"3440394\";\"Sarandi Grande\";\"ascii\"\n\"3440394\";\"Sarandi\";\"other\"\n\"3440394\";\"Sarandí\";\"other\"\n\"3440394\";\"Villa Sarandi\";\"other\"\n\"3440394\";\"Villa Sarandí\";\"other\"\n\"3440400\";\"Sarandí del Yi\";\"main\"\n\"3440400\";\"Sarandi del Yi\";\"ascii\"\n\"3440541\";\"Santiago Vázquez\";\"main\"\n\"3440541\";\"Santiago Vazquez\";\"ascii\"\n\"3440541\";\"Santiago\";\"other\"\n\"3440554\";\"Santa Rosa\";\"main\"\n\"3440571\";\"Santa Lucía\";\"main\"\n\"3440571\";\"Santa Lucia\";\"ascii\"\n\"3440571\";\"San Juan Bautista\";\"other\"\n\"3440577\";\"Santa Clara de Olimar\";\"main\"\n\"3440577\";\"Olimar Santa Clara\";\"other\"\n\"3440577\";\"Pueblo Olimar\";\"other\"\n\"3440577\";\"Santa Clara\";\"other\"\n\"3440577\";\"Santa Clara del Olimar\";\"other\"\n\"3440580\";\"Santa Catalina\";\"main\"\n\"3440581\";\"Santa Bernardina\";\"main\"\n\"3440596\";\"San Ramón\";\"main\"\n\"3440596\";\"San Ramon\";\"ascii\"\n\"3440639\";\"San José de Mayo\";\"main\"\n\"3440639\";\"San Jose de Mayo\";\"ascii\"\n\"3440639\";\"Ciudad de San Jose\";\"other\"\n\"3440639\";\"Ciudad de San José\";\"other\"\n\"3440639\";\"San Jose\";\"other\"\n\"3440639\";\"San José\";\"other\"\n\"3440653\";\"San Javier\";\"main\"\n\"3440653\";\"Colonia San Javier\";\"other\"\n\"3440653\";\"San Khav'er\";\"other\"\n\"3440653\";\"Сан Хавьер\";\"other\"\n\"3440654\";\"San Jacinto\";\"main\"\n\"3440684\";\"San Félix\";\"main\"\n\"3440684\";\"San Felix\";\"ascii\"\n\"3440696\";\"San Carlos\";\"main\"\n\"3440696\";\"Villa de San Carlos\";\"other\"\n\"3440698\";\"San Bautista\";\"main\"\n\"3440705\";\"San Antonio\";\"main\"\n\"3440714\";\"Salto\";\"main\"\n\"3440714\";\"Ciudad del Salto\";\"other\"\n\"3440714\";\"Sal'to\";\"other\"\n\"3440714\";\"Salta\";\"other\"\n\"3440714\";\"Сальто\";\"other\"\n\"3440747\";\"Rosario\";\"main\"\n\"3440747\";\"Villa del Rosario\";\"other\"\n\"3440762\";\"Rodríguez\";\"main\"\n\"3440762\";\"Rodriguez\";\"ascii\"\n\"3440762\";\"Concordia\";\"other\"\n\"3440777\";\"Rocha\";\"main\"\n\"3440777\";\"Ciudad de Rocha\";\"other\"\n\"3440777\";\"Роча\";\"other\"\n\"3440781\";\"Rivera\";\"main\"\n\"3440781\";\"Villa de Rivera\";\"other\"\n\"3440781\";\"li wei la\";\"other\"\n\"3440781\";\"Ривера\";\"other\"\n\"3440781\";\"里韦拉\";\"other\"\n\"3440791\";\"Río Branco\";\"main\"\n\"3440791\";\"Rio Branco\";\"ascii\"\n\"3440791\";\"Artigas\";\"other\"\n\"3440791\";\"La Cuchilla\";\"other\"\n\"3440879\";\"Rafael Perazza\";\"main\"\n\"3440925\";\"Quebracho\";\"main\"\n\"3440939\";\"Punta del Este\";\"main\"\n\"3440963\";\"Progreso\";\"main\"\n\"3440963\";\"Ingeniero Eduardo Garcia de Zuniga\";\"other\"\n\"3440963\";\"Ingeniero Eduardo García de Zúñiga\";\"other\"\n\"3440985\";\"Porvenir\";\"main\"\n\"3440985\";\"Estacion Porvenir\";\"other\"\n\"3440985\";\"Estación Porvenir\";\"other\"\n\"3441074\";\"Piriápolis\";\"main\"\n\"3441074\";\"Piriapolis\";\"ascii\"\n\"3441074\";\"Puerto del Ingles\";\"other\"\n\"3441074\";\"Puerto del Inglés\";\"other\"\n\"3441114\";\"Piedras Coloradas\";\"main\"\n\"3441243\";\"Paysandú\";\"main\"\n\"3441243\";\"Paysandu\";\"ascii\"\n\"3441243\";\"Ciudad de Paysandu\";\"other\"\n\"3441243\";\"Ciudad de Paysandú\";\"other\"\n\"3441243\";\"Pajsandu\";\"other\"\n\"3441243\";\"Пайсанду\";\"other\"\n\"3441273\";\"Paso de los Toros\";\"main\"\n\"3441273\";\"Santa Isabel\";\"other\"\n\"3441292\";\"Paso de Carrasco\";\"main\"\n\"3441354\";\"Pando\";\"main\"\n\"3441354\";\"Villa de Pando\";\"other\"\n\"3441354\";\"Пандо\";\"other\"\n\"3441358\";\"Pan de Azúcar\";\"main\"\n\"3441358\";\"Pan de Azucar\";\"ascii\"\n\"3441377\";\"Palmitas\";\"main\"\n\"3441442\";\"Ombúes de Lavalle\";\"main\"\n\"3441442\";\"Ombues de Lavalle\";\"ascii\"\n\"3441442\";\"Colonia Ombues de Lavalle\";\"other\"\n\"3441442\";\"Colonia Ombúes de Lavalle\";\"other\"\n\"3441476\";\"Nuevo Berlín\";\"main\"\n\"3441476\";\"Nuevo Berlin\";\"ascii\"\n\"3441481\";\"Nueva Palmira\";\"main\"\n\"3441483\";\"Nueva Helvecia\";\"main\"\n\"3441575\";\"Montevideo\";\"main\"\n\"3441575\";\"Ciudad de Montevideo\";\"other\"\n\"3441575\";\"Montebideo\";\"other\"\n\"3441575\";\"Montevidejas\";\"other\"\n\"3441575\";\"Montevideu\";\"other\"\n\"3441575\";\"Montevidéu\";\"other\"\n\"3441575\";\"Montevidėjas\";\"other\"\n\"3441575\";\"Muntivideu\";\"other\"\n\"3441575\";\"Muntividèu\";\"other\"\n\"3441575\";\"meng de wei de ya\";\"other\"\n\"3441575\";\"meng te wei duo\";\"other\"\n\"3441575\";\"montebide-o\";\"other\"\n\"3441575\";\"montebideo\";\"other\"\n\"3441575\";\"mwntyfydyw\";\"other\"\n\"3441575\";\"mxn te wi de xo\";\"other\"\n\"3441575\";\"Μοντεβιδέο\";\"other\"\n\"3441575\";\"Монтевидео\";\"other\"\n\"3441575\";\"מונטווידיאו\";\"other\"\n\"3441575\";\"مونته‌ویدئ\";\"other\"\n\"3441575\";\"مونته‌ویدئو\";\"other\"\n\"3441575\";\"مونتيفيديو\";\"other\"\n\"3441575\";\"มอนเตวิเดโอ\";\"other\"\n\"3441575\";\"მონტევიდეო\";\"other\"\n\"3441575\";\"ሞንቴቪዴዎ\";\"other\"\n\"3441575\";\"モンテビデオ\";\"other\"\n\"3441575\";\"蒙得维的亚\";\"other\"\n\"3441575\";\"蒙特維多\";\"other\"\n\"3441575\";\"몬테비데오\";\"other\"\n\"3441577\";\"Montes\";\"main\"\n\"3441659\";\"Minas de Corrales\";\"main\"\n\"3441659\";\"Corrales\";\"other\"\n\"3441665\";\"Minas\";\"main\"\n\"3441665\";\"Ciudad de Minas\";\"other\"\n\"3441665\";\"Lavalleja\";\"other\"\n\"3441665\";\"Минас\";\"other\"\n\"3441674\";\"Migues\";\"main\"\n\"3441674\";\"Miguez\";\"other\"\n\"3441684\";\"Mercedes\";\"main\"\n\"3441684\";\"Ciudad de Mercedes\";\"other\"\n\"3441702\";\"Melo\";\"main\"\n\"3441702\";\"Ciudad de Melo\";\"other\"\n\"3441702\";\"Mel\";\"other\"\n\"3441702\";\"Melas\";\"other\"\n\"3441702\";\"mei luo\";\"other\"\n\"3441702\";\"Мел\";\"other\"\n\"3441702\";\"梅洛\";\"other\"\n\"3441803\";\"Mariscala\";\"main\"\n\"3441803\";\"La Mariscala\";\"other\"\n\"3441894\";\"Maldonado\";\"main\"\n\"3441894\";\"Mal'donado\";\"other\"\n\"3441894\";\"San Fernando de Maldonado\";\"other\"\n\"3441894\";\"Мальдонадо\";\"other\"\n\"3441954\";\"Los Cerrillos\";\"main\"\n\"3441954\";\"Cerrillos\";\"other\"\n\"3441988\";\"Libertad\";\"main\"\n\"3441988\";\"Liberfad\";\"other\"\n\"3442050\";\"Las Toscas\";\"main\"\n\"3442057\";\"Las Piedras\";\"main\"\n\"3442057\";\"Las-P'edras\";\"other\"\n\"3442057\";\"Piedras\";\"other\"\n\"3442057\";\"San Isidrio\";\"other\"\n\"3442057\";\"Villa de las Piedras\";\"other\"\n\"3442057\";\"Лас-Пьедрас\";\"other\"\n\"3442058\";\"Las Piedras\";\"main\"\n\"3442071\";\"Lascano\";\"main\"\n\"3442071\";\"Lazcano\";\"other\"\n\"3442098\";\"La Paz\";\"main\"\n\"3442105\";\"La Paloma\";\"main\"\n\"3442105\";\"Puerto de la Paloma\";\"other\"\n\"3442106\";\"La Paloma\";\"main\"\n\"3442138\";\"La Floresta\";\"main\"\n\"3442138\";\"Floresta\";\"other\"\n\"3442206\";\"Juan L. Lacaze\";\"main\"\n\"3442206\";\"J.L. Lacaze\";\"other\"\n\"3442206\";\"Juan Lacaze\";\"other\"\n\"3442206\";\"Pueblo Juan L. Lacaze\";\"other\"\n\"3442221\";\"José Pedro Varela\";\"main\"\n\"3442221\";\"Jose Pedro Varela\";\"ascii\"\n\"3442221\";\"J.P. Varela\";\"other\"\n\"3442221\";\"Jose P. Varela\";\"other\"\n\"3442221\";\"José P. Varela\";\"other\"\n\"3442231\";\"José Enrique Rodó\";\"main\"\n\"3442231\";\"Jose Enrique Rodo\";\"ascii\"\n\"3442231\";\"Drabble\";\"other\"\n\"3442231\";\"Drable\";\"other\"\n\"3442231\";\"E. Robo\";\"other\"\n\"3442231\";\"J.E. Rodo\";\"other\"\n\"3442231\";\"Rodo\";\"other\"\n\"3442233\";\"José Batlle y Ordóñez\";\"main\"\n\"3442233\";\"Jose Batlle y Ordonez\";\"ascii\"\n\"3442233\";\"Batlle y Ordonez\";\"other\"\n\"3442233\";\"Batlle y Ordoñez\";\"other\"\n\"3442236\";\"Joaquín Suárez\";\"main\"\n\"3442236\";\"Joaquin Suarez\";\"ascii\"\n\"3442236\";\"J. Suarez\";\"other\"\n\"3442236\";\"Pueblo Joaquin Suarez\";\"other\"\n\"3442236\";\"Pueblo Joaquín Suárez\";\"other\"\n\"3442236\";\"Suarez\";\"other\"\n\"3442236\";\"Suárez\";\"other\"\n\"3442238\";\"Joanicó\";\"main\"\n\"3442238\";\"Joanico\";\"ascii\"\n\"3442299\";\"Isidoro Noblía\";\"main\"\n\"3442299\";\"Isidoro Noblia\";\"ascii\"\n\"3442398\";\"Guichón\";\"main\"\n\"3442398\";\"Guichon\";\"ascii\"\n\"3442568\";\"Fray Bentos\";\"main\"\n\"3442568\";\"Fraj-Bentos\";\"other\"\n\"3442568\";\"Independencia\";\"other\"\n\"3442568\";\"Villa Fray Bentos\";\"other\"\n\"3442568\";\"Villa Independencia\";\"other\"\n\"3442568\";\"Villa de Fray Bentos\";\"other\"\n\"3442568\";\"Фрай-Бентос\";\"other\"\n\"3442585\";\"Florida\";\"main\"\n\"3442585\";\"Ciudad de la Florida\";\"other\"\n\"3442585\";\"Флорида\";\"other\"\n\"3442597\";\"Florencio Sánchez\";\"main\"\n\"3442597\";\"Florencio Sanchez\";\"ascii\"\n\"3442683\";\"Empalme Olmos\";\"main\"\n\"3442683\";\"Estacion Olmos\";\"other\"\n\"3442683\";\"Estación Olmos\";\"other\"\n\"3442683\";\"Olmos\";\"other\"\n\"3442716\";\"Ecilda Paullier\";\"main\"\n\"3442716\";\"Santa Ecilda\";\"other\"\n\"3442727\";\"Durazno\";\"main\"\n\"3442727\";\"Duranzo\";\"other\"\n\"3442750\";\"Dolores\";\"main\"\n\"3442766\";\"Dieciocho de Julio\";\"main\"\n\"3442766\";\"18 de Julio\";\"other\"\n\"3442766\";\"Diez y Ocho de Julio\";\"other\"\n\"3442766\";\"Pueblo 18 de Julia\";\"other\"\n\"3442778\";\"Delta del Tigre\";\"main\"\n\"3442803\";\"Curtina\";\"main\"\n\"3442803\";\"San Maximo\";\"other\"\n\"3442803\";\"San Máximo\";\"other\"\n\"3442939\";\"Constitución\";\"main\"\n\"3442939\";\"Constitucion\";\"ascii\"\n\"3442939\";\"Constitution\";\"other\"\n\"3442939\";\"Pueblo Constitucion\";\"other\"\n\"3442939\";\"Pueblo Constitución\";\"other\"\n\"3443013\";\"Colonia del Sacramento\";\"main\"\n\"3443013\";\"Ciudad de la Colonia del Sacramento\";\"other\"\n\"3443013\";\"Colonia\";\"other\"\n\"3443013\";\"Colonia do Sacramento\";\"other\"\n\"3443013\";\"Colônia do Sacramento\";\"other\"\n\"3443013\";\"Kolonija\";\"other\"\n\"3443013\";\"Kolonija del Sakramentas\";\"other\"\n\"3443013\";\"Kolonija-del'-Sakramento\";\"other\"\n\"3443013\";\"La Ciudad de Colonia\";\"other\"\n\"3443013\";\"Sacramento\";\"other\"\n\"3443013\";\"Колония-дель-Сакраменто\";\"other\"\n\"3443061\";\"Chuy\";\"main\"\n\"3443183\";\"Cerro Colorado\";\"main\"\n\"3443256\";\"Cebollatí\";\"main\"\n\"3443256\";\"Cebollati\";\"ascii\"\n\"3443256\";\"Pueblo Cebollati\";\"other\"\n\"3443256\";\"Pueblo Cebollatí\";\"other\"\n\"3443280\";\"Casupá\";\"main\"\n\"3443280\";\"Casupa\";\"ascii\"\n\"3443280\";\"Estacion Casupa\";\"other\"\n\"3443280\";\"Estación Casupá\";\"other\"\n\"3443289\";\"Castillos\";\"main\"\n\"3443289\";\"Pueblo de San Vicente de Castillos\";\"other\"\n\"3443289\";\"San Vicente de Castillos\";\"other\"\n\"3443341\";\"Carmelo\";\"main\"\n\"3443341\";\"Las Viboras\";\"other\"\n\"3443341\";\"Las Víboras\";\"other\"\n\"3443342\";\"Carlos Reyles\";\"main\"\n\"3443352\";\"Cardona\";\"main\"\n\"3443356\";\"Cardal\";\"main\"\n\"3443413\";\"Canelones\";\"main\"\n\"3443413\";\"Guadalupe\";\"other\"\n\"3443413\";\"Villa de Canelones\";\"other\"\n\"3443588\";\"Blanquillo\";\"main\"\n\"3443631\";\"Bella Unión\";\"main\"\n\"3443631\";\"Bella Union\";\"ascii\"\n\"3443631\";\"Santa Rosa\";\"other\"\n\"3443631\";\"Santa Rosa del Cuareim\";\"other\"\n\"3443644\";\"Belén\";\"main\"\n\"3443644\";\"Belen\";\"ascii\"\n\"3443697\";\"Baltasar Brum\";\"main\"\n\"3443697\";\"Cabellos\";\"other\"\n\"3443697\";\"Estacion Isla Cabello\";\"other\"\n\"3443697\";\"Estacion Isla de Cabello\";\"other\"\n\"3443697\";\"Estación Isla Cabello\";\"other\"\n\"3443697\";\"Estación Isla de Cabello\";\"other\"\n\"3443697\";\"Isla Cabello\";\"other\"\n\"3443697\";\"Isla Cabellos\";\"other\"\n\"3443697\";\"Isla de Cabellos\";\"other\"\n\"3443697\";\"Pueblo Isla Cabellos\";\"other\"\n\"3443737\";\"Atlántida\";\"main\"\n\"3443737\";\"Atlantida\";\"ascii\"\n\"3443737\";\"Playa Atlantida\";\"other\"\n\"3443737\";\"Playa Atlántida\";\"other\"\n\"3443758\";\"Artigas\";\"main\"\n\"3443758\";\"San Eugenio\";\"other\"\n\"3443758\";\"Артигас\";\"other\"\n\"3443909\";\"Aiguá\";\"main\"\n\"3443909\";\"Aigua\";\"ascii\"\n\"3443909\";\"Pueblo de Aigua\";\"other\"\n\"3443909\";\"Pueblo de Aiguá\";\"other\"\n\"3443928\";\"Aguas Corrientes\";\"main\"\n\"3443952\";\"Aceguá\";\"main\"\n\"3443952\";\"Acegua\";\"ascii\"\n\"3480812\";\"Puntas de Valdez\";\"main\"\n\"3480820\";\"Colonia Nicolich\";\"main\"\n\"3480822\";\"Barra de Carrasco\";\"main\"\n\"3480825\";\"Pajas Blancas\";\"main\"\n\"601294\";\"Nukus\";\"main\"\n\"601294\";\"Nukusas\";\"other\"\n\"601294\";\"nukuseu\";\"other\"\n\"601294\";\"nukusu\";\"other\"\n\"601294\";\"nwkws\";\"other\"\n\"601294\";\"Нукус\";\"other\"\n\"601294\";\"نوکوس\";\"other\"\n\"601294\";\"ヌクス\";\"other\"\n\"601294\";\"누쿠스\";\"other\"\n\"601299\";\"Mŭynoq\";\"main\"\n\"601299\";\"Muynoq\";\"ascii\"\n\"601299\";\"Muinak\";\"other\"\n\"601299\";\"Mujnak\";\"other\"\n\"601299\";\"Muynak\";\"other\"\n\"601299\";\"Муйнак\";\"other\"\n\"601339\";\"Khŭjayli\";\"main\"\n\"601339\";\"Khujayli\";\"ascii\"\n\"601339\";\"Khodzheili\";\"other\"\n\"601339\";\"Khodzhejli\";\"other\"\n\"601339\";\"Khodzheyli\";\"other\"\n\"601339\";\"Khojeili\";\"other\"\n\"601339\";\"Ходжейли\";\"other\"\n\"601349\";\"Kegayli\";\"main\"\n\"601349\";\"Kegeyli\";\"other\"\n\"601395\";\"Chimboy\";\"main\"\n\"601395\";\"Chimbai\";\"other\"\n\"601395\";\"Chimbay\";\"other\"\n\"601395\";\"Chimboj\";\"other\"\n\"601395\";\"Чимбой\";\"other\"\n\"601417\";\"Oltinkŭl\";\"main\"\n\"601417\";\"Oltinkul\";\"ascii\"\n\"601417\";\"Altynkul'\";\"other\"\n\"601417\";\"Altynkul’\";\"other\"\n\"1215694\";\"Zomin\";\"main\"\n\"1215694\";\"Saamin\";\"other\"\n\"1215694\";\"Zaamin\";\"other\"\n\"1215694\";\"Зомин\";\"other\"\n\"1215736\";\"Yangi-Nishon\";\"main\"\n\"1215736\";\"Yangi-Nishan\";\"other\"\n\"1215839\";\"Urgut\";\"main\"\n\"1215839\";\"Ургут\";\"other\"\n\"1215957\";\"Termiz\";\"main\"\n\"1215957\";\"Termez\";\"other\"\n\"1215957\";\"tai er mei zi\";\"other\"\n\"1215957\";\"trmdh\";\"other\"\n\"1215957\";\"trmz\";\"other\"\n\"1215957\";\"Термез\";\"other\"\n\"1215957\";\"טרמז\";\"other\"\n\"1215957\";\"ترمذ\";\"other\"\n\"1215957\";\"泰尔梅兹\";\"other\"\n\"1216115\";\"Sho’rchi\";\"main\"\n\"1216115\";\"Sho'rchi\";\"ascii\"\n\"1216115\";\"Chourtchi\";\"other\"\n\"1216115\";\"Dzhalair\";\"other\"\n\"1216115\";\"Kul'-Tepe\";\"other\"\n\"1216115\";\"Kul’-Tepe\";\"other\"\n\"1216115\";\"Shurchi\";\"other\"\n\"1216115\";\"Shŭrchi\";\"other\"\n\"1216187\";\"Shahrisabz\";\"main\"\n\"1216187\";\"Schachrissjabs\";\"other\"\n\"1216187\";\"Shahri-i-Sabz\";\"other\"\n\"1216187\";\"Shakhrisabz\";\"other\"\n\"1216187\";\"Shakhrisabzs\";\"other\"\n\"1216187\";\"Shakhrisyabz\";\"other\"\n\"1216187\";\"Шахрисабз\";\"other\"\n\"1216189\";\"Shohimardon\";\"main\"\n\"1216189\";\"Shakhimardan\";\"other\"\n\"1216189\";\"Shakimardan\";\"other\"\n\"1216189\";\"Шахимардан\";\"other\"\n\"1216265\";\"Samarqand\";\"main\"\n\"1216265\";\"Samarcanda\";\"other\"\n\"1216265\";\"Samarcande\";\"other\"\n\"1216265\";\"Samarkand\";\"other\"\n\"1216265\";\"Samarkanda\";\"other\"\n\"1216265\";\"Samarkandas\";\"other\"\n\"1216265\";\"Samarkando\";\"other\"\n\"1216265\";\"Semerkand\";\"other\"\n\"1216265\";\"sa ma er han\";\"other\"\n\"1216265\";\"samaleukanteu\";\"other\"\n\"1216265\";\"samarukando\";\"other\"\n\"1216265\";\"smrqnd\";\"other\"\n\"1216265\";\"Самарканд\";\"other\"\n\"1216265\";\"סמרקנד\";\"other\"\n\"1216265\";\"سمرقند\";\"other\"\n\"1216265\";\"سەمەرقەند\";\"other\"\n\"1216265\";\"サマルカンド\";\"other\"\n\"1216265\";\"撒馬爾罕\";\"other\"\n\"1216265\";\"撒马尔罕\";\"other\"\n\"1216265\";\"사마르칸트\";\"other\"\n\"1216290\";\"Romiton\";\"main\"\n\"1216290\";\"Kal'ty-Mauri\";\"other\"\n\"1216290\";\"Kal’ty-Mauri\";\"other\"\n\"1216290\";\"Ramitan\";\"other\"\n\"1216290\";\"Rometan\";\"other\"\n\"1216290\";\"Romitan\";\"other\"\n\"1216311\";\"Qarshi\";\"main\"\n\"1216311\";\"Bek Budi\";\"other\"\n\"1216311\";\"Karaki\";\"other\"\n\"1216311\";\"Karshi\";\"other\"\n\"1216311\";\"Karsi\";\"other\"\n\"1216311\";\"Qarsi\";\"other\"\n\"1216311\";\"Qarši\";\"other\"\n\"1216311\";\"nkhshb\";\"other\"\n\"1216311\";\"Карши\";\"other\"\n\"1216311\";\"Карші\";\"other\"\n\"1216311\";\"نخشب\";\"other\"\n\"1216475\";\"Muborak\";\"main\"\n\"1216475\";\"Maburek\";\"other\"\n\"1216475\";\"Mubarek\";\"other\"\n\"1216475\";\"Муборак\";\"other\"\n\"1216787\";\"Kitob\";\"main\"\n\"1216787\";\"Kitab\";\"other\"\n\"1216787\";\"Китоб\";\"other\"\n\"1216982\";\"Kattaqo’rg’on\";\"main\"\n\"1216982\";\"Kattaqo'rg'on\";\"ascii\"\n\"1216982\";\"Kattakurgan\";\"other\"\n\"1216982\";\"Kattaqurghon\";\"other\"\n\"1216982\";\"Kattaqŭrghon\";\"other\"\n\"1217007\";\"Koson\";\"main\"\n\"1217007\";\"Kasan\";\"other\"\n\"1217007\";\"Kassan\";\"other\"\n\"1217007\";\"Косон\";\"other\"\n\"1217035\";\"Qorovulbozor\";\"main\"\n\"1217035\";\"Karaulbazar\";\"other\"\n\"1217035\";\"Qorowulbozor\";\"other\"\n\"1217084\";\"Karakul’\";\"main\"\n\"1217084\";\"Karakul'\";\"ascii\"\n\"1217084\";\"Kara Kal\";\"other\"\n\"1217084\";\"Qorakul\";\"other\"\n\"1217084\";\"Qorakŭl\";\"other\"\n\"1217084\";\"Каракуль\";\"other\"\n\"1217145\";\"Qamashi\";\"main\"\n\"1217145\";\"Kamashi\";\"other\"\n\"1217145\";\"Kamyshi\";\"other\"\n\"1217180\";\"Kogon\";\"main\"\n\"1217180\";\"Kagan\";\"other\"\n\"1217180\";\"Novaya Bukhara\";\"other\"\n\"1217180\";\"Каган\";\"other\"\n\"1217215\";\"Ishtixon\";\"main\"\n\"1217215\";\"Ishtihon\";\"other\"\n\"1217215\";\"Ishtikhon\";\"other\"\n\"1217215\";\"Ishtykhan\";\"other\"\n\"1217262\";\"G’uzor\";\"main\"\n\"1217262\";\"G'uzor\";\"ascii\"\n\"1217262\";\"Ghuzor\";\"other\"\n\"1217262\";\"Gusar\";\"other\"\n\"1217262\";\"Guzar\";\"other\"\n\"1217340\";\"Galaosiyo\";\"main\"\n\"1217340\";\"Galaasiya\";\"other\"\n\"1217340\";\"Galaassiya\";\"other\"\n\"1217340\";\"Gallya-Asiya\";\"other\"\n\"1217340\";\"Gallya-Assiya\";\"other\"\n\"1217362\";\"Juma\";\"main\"\n\"1217362\";\"Dzhuma\";\"other\"\n\"1217414\";\"Jomboy\";\"main\"\n\"1217414\";\"Dzhambay\";\"other\"\n\"1217414\";\"Khashdala\";\"other\"\n\"1217414\";\"Khoshdala\";\"other\"\n\"1217474\";\"Denov\";\"main\"\n\"1217474\";\"Dehnan\";\"other\"\n\"1217474\";\"Denan\";\"other\"\n\"1217474\";\"Denau\";\"other\"\n\"1217474\";\"Denow\";\"other\"\n\"1217474\";\"Deynau\";\"other\"\n\"1217474\";\"Денов\";\"other\"\n\"1217512\";\"Daxbet\";\"main\"\n\"1217512\";\"Dagbid\";\"other\"\n\"1217512\";\"Dagbit\";\"other\"\n\"1217512\";\"Dakhbed\";\"other\"\n\"1217512\";\"Dakhbet\";\"other\"\n\"1217540\";\"Chiroqchi\";\"main\"\n\"1217540\";\"Chirakchi\";\"other\"\n\"1217540\";\"Chirakchya\";\"other\"\n\"1217569\";\"Chelak\";\"main\"\n\"1217569\";\"Chelek\";\"other\"\n\"1217569\";\"Payaryk\";\"other\"\n\"1217595\";\"Charxin\";\"main\"\n\"1217595\";\"Charkhin\";\"other\"\n\"1217658\";\"Bulung’ur\";\"main\"\n\"1217658\";\"Bulung'ur\";\"ascii\"\n\"1217658\";\"Bulunghur\";\"other\"\n\"1217658\";\"Krasnogvardeiskoye\";\"other\"\n\"1217658\";\"Krasnogvardeysk\";\"other\"\n\"1217658\";\"Krasnogvardeyskaya\";\"other\"\n\"1217658\";\"Krasnogvardeyskoye\";\"other\"\n\"1217658\";\"Krasnogvardskiy\";\"other\"\n\"1217658\";\"Rostovtsevo\";\"other\"\n\"1217662\";\"Buxoro\";\"main\"\n\"1217662\";\"Alt-Buchara\";\"other\"\n\"1217662\";\"Bokhara\";\"other\"\n\"1217662\";\"Boukhara\";\"other\"\n\"1217662\";\"Bucara\";\"other\"\n\"1217662\";\"Buchara\";\"other\"\n\"1217662\";\"Buhara\";\"other\"\n\"1217662\";\"Bujara\";\"other\"\n\"1217662\";\"Bukhara\";\"other\"\n\"1217662\";\"Bukharà\";\"other\"\n\"1217662\";\"Bukhoro\";\"other\"\n\"1217662\";\"Staraya Bukhara\";\"other\"\n\"1217662\";\"bkhara\";\"other\"\n\"1217662\";\"bkhary\";\"other\"\n\"1217662\";\"bu ha la\";\"other\"\n\"1217662\";\"buhala\";\"other\"\n\"1217662\";\"buhara\";\"other\"\n\"1217662\";\"bukhara\";\"other\"\n\"1217662\";\"bwkrh\";\"other\"\n\"1217662\";\"Бухара\";\"other\"\n\"1217662\";\"Бухоро\";\"other\"\n\"1217662\";\"בוכרה\";\"other\"\n\"1217662\";\"بخارا\";\"other\"\n\"1217662\";\"بخارى\";\"other\"\n\"1217662\";\"बुखारा\";\"other\"\n\"1217662\";\"ბუხარა\";\"other\"\n\"1217662\";\"ブハラ\";\"other\"\n\"1217662\";\"布哈拉\";\"other\"\n\"1217662\";\"부하라\";\"other\"\n\"1217703\";\"Beshkent\";\"main\"\n\"1217703\";\"Bish-Kent\";\"other\"\n\"1217703\";\"Бешкент\";\"other\"\n\"1217734\";\"Boysun\";\"main\"\n\"1217734\";\"Baisuk\";\"other\"\n\"1217734\";\"Baisun\";\"other\"\n\"1217734\";\"Baysun\";\"other\"\n\"1217734\";\"Bojsun\";\"other\"\n\"1217734\";\"Бойсун\";\"other\"\n\"1217907\";\"Olot\";\"main\"\n\"1217907\";\"Alat\";\"other\"\n\"1217907\";\"Alata\";\"other\"\n\"1217926\";\"Oqtosh\";\"main\"\n\"1217926\";\"Aktash\";\"other\"\n\"1512281\";\"Zarafshon\";\"main\"\n\"1512281\";\"Sugrali\";\"other\"\n\"1512281\";\"Sugraly\";\"other\"\n\"1512281\";\"Zarafshan\";\"other\"\n\"1512281\";\"Зарафшан\";\"other\"\n\"1512287\";\"Zafar\";\"main\"\n\"1512287\";\"Almazar\";\"other\"\n\"1512287\";\"Olmazor\";\"other\"\n\"1512287\";\"Vrevskiy\";\"other\"\n\"1512287\";\"Зафар\";\"other\"\n\"1512320\";\"Yaypan\";\"main\"\n\"1512320\";\"Bazar-Yaypan\";\"other\"\n\"1512320\";\"Jajpan\";\"other\"\n\"1512320\";\"Yaipan\";\"other\"\n\"1512320\";\"Яйпан\";\"other\"\n\"1512339\";\"Yangiyŭl\";\"main\"\n\"1512339\";\"Yangiyul\";\"ascii\"\n\"1512339\";\"Jangijul'\";\"other\"\n\"1512339\";\"Kaunchi\";\"other\"\n\"1512339\";\"Янгиюль\";\"other\"\n\"1512342\";\"Yangiyer\";\"main\"\n\"1512342\";\"Jangier\";\"other\"\n\"1512342\";\"Ungi-Yere\";\"other\"\n\"1512342\";\"Yangier\";\"other\"\n\"1512342\";\"Янгиер\";\"other\"\n\"1512348\";\"Yangirabod\";\"main\"\n\"1512348\";\"Yangirabad\";\"other\"\n\"1512350\";\"Yangiqŭrghon\";\"main\"\n\"1512350\";\"Yangiqurghon\";\"ascii\"\n\"1512350\";\"Yangikurgan\";\"other\"\n\"1512372\";\"Yangiobod\";\"main\"\n\"1512372\";\"Jangiabad\";\"other\"\n\"1512372\";\"Yangiabad\";\"other\"\n\"1512372\";\"Янгиабад\";\"other\"\n\"1512423\";\"Wobkent\";\"main\"\n\"1512423\";\"Vabkend\";\"other\"\n\"1512423\";\"Vabkent\";\"other\"\n\"1512449\";\"Uychi\";\"main\"\n\"1512449\";\"Uichi\";\"other\"\n\"1512449\";\"Ujchi\";\"other\"\n\"1512449\";\"Уйчи\";\"other\"\n\"1512464\";\"Ŭrtaowul\";\"main\"\n\"1512464\";\"Urtaowul\";\"ascii\"\n\"1512464\";\"Urtaaul\";\"other\"\n\"1512473\";\"Urganch\";\"main\"\n\"1512473\";\"Novo-Urgench\";\"other\"\n\"1512473\";\"Ourguentch\";\"other\"\n\"1512473\";\"Urgench\";\"other\"\n\"1512473\";\"Urgentj\";\"other\"\n\"1512473\";\"Yrgench\";\"other\"\n\"1512473\";\"uleugenchi\";\"other\"\n\"1512473\";\"urugenchi\";\"other\"\n\"1512473\";\"Ургенч\";\"other\"\n\"1512473\";\"ウルゲンチ\";\"other\"\n\"1512473\";\"우르겐치\";\"other\"\n\"1512480\";\"Dashtobod\";\"main\"\n\"1512480\";\"Ul'yanovo\";\"other\"\n\"1512480\";\"Ul’yanovo\";\"other\"\n\"1512501\";\"Uchqŭrghon\";\"main\"\n\"1512501\";\"Uchqurghon\";\"ascii\"\n\"1512501\";\"Uchkurgan\";\"other\"\n\"1512549\";\"Tŭragŭrghon\";\"main\"\n\"1512549\";\"Turagurghon\";\"ascii\"\n\"1512549\";\"Turakurgan\";\"other\"\n\"1512549\";\"Tyurya-Kurgan\";\"other\"\n\"1512568\";\"Toshloq\";\"main\"\n\"1512568\";\"Tashlak\";\"other\"\n\"1512569\";\"Tashkent\";\"main\"\n\"1512569\";\"Ta.kent\";\"other\"\n\"1512569\";\"Tachkent\";\"other\"\n\"1512569\";\"Taschkent\";\"other\"\n\"1512569\";\"Tashken\";\"other\"\n\"1512569\";\"Tashkend\";\"other\"\n\"1512569\";\"Tasjkent\";\"other\"\n\"1512569\";\"Taskende\";\"other\"\n\"1512569\";\"Taskent\";\"other\"\n\"1512569\";\"Taskentas\";\"other\"\n\"1512569\";\"Taskento\";\"other\"\n\"1512569\";\"Taszkent\";\"other\"\n\"1512569\";\"Taŝkento\";\"other\"\n\"1512569\";\"Taşkent\";\"other\"\n\"1512569\";\"Taškent\";\"other\"\n\"1512569\";\"Taškentas\";\"other\"\n\"1512569\";\"Toshkand\";\"other\"\n\"1512569\";\"Toshkent\";\"other\"\n\"1512569\";\"Toshkent shahri\";\"other\"\n\"1512569\";\"ta shen gan\";\"other\"\n\"1512569\";\"tashknd\";\"other\"\n\"1512569\";\"tashukento\";\"other\"\n\"1512569\";\"tasyukenteu\";\"other\"\n\"1512569\";\"thach khen t\";\"other\"\n\"1512569\";\"tshqnd\";\"other\"\n\"1512569\";\"tsqnt\";\"other\"\n\"1512569\";\"Τασκένδη\";\"other\"\n\"1512569\";\"Ташкен\";\"other\"\n\"1512569\";\"Ташкент\";\"other\"\n\"1512569\";\"Тошканд\";\"other\"\n\"1512569\";\"טשקנט\";\"other\"\n\"1512569\";\"تاشكەنت\";\"other\"\n\"1512569\";\"تاشکند\";\"other\"\n\"1512569\";\"طشقند\";\"other\"\n\"1512569\";\"ทาชเคนต์\";\"other\"\n\"1512569\";\"ტაშკენტი\";\"other\"\n\"1512569\";\"ታሽኬንት\";\"other\"\n\"1512569\";\"タシュケント\";\"other\"\n\"1512569\";\"塔什干\";\"other\"\n\"1512569\";\"타슈켄트\";\"other\"\n\"1512658\";\"Toshbuloq\";\"main\"\n\"1512658\";\"Tashbulak\";\"other\"\n\"1512770\";\"Sirdaryo\";\"main\"\n\"1512770\";\"Sidare\";\"other\"\n\"1512770\";\"Ssyr-Darja\";\"other\"\n\"1512770\";\"Syr-Dar'inskiy\";\"other\"\n\"1512770\";\"Syr-Darjinskaja\";\"other\"\n\"1512770\";\"Syr-Dar’inskiy\";\"other\"\n\"1512770\";\"Syr-Novorossiyskiy\";\"other\"\n\"1512770\";\"Syr-Novorossliski\";\"other\"\n\"1512770\";\"Syrdar'inskaja\";\"other\"\n\"1512770\";\"Syrdar'ya\";\"other\"\n\"1512770\";\"Syrdar’ya\";\"other\"\n\"1512770\";\"Сырдарьинская\";\"other\"\n\"1512790\";\"Showot\";\"main\"\n\"1512790\";\"Shakh-abad\";\"other\"\n\"1512790\";\"Shavat\";\"other\"\n\"1512790\";\"Shovot\";\"other\"\n\"1512838\";\"Shofirkon\";\"main\"\n\"1512838\";\"Baumana\";\"other\"\n\"1512838\";\"Khodzha-arif\";\"other\"\n\"1512838\";\"Shafirkan\";\"other\"\n\"1512838\";\"Shafrikan\";\"other\"\n\"1512838\";\"Shafrikent\";\"other\"\n\"1512934\";\"Salor\";\"main\"\n\"1512934\";\"Chirchik\";\"other\"\n\"1512934\";\"Salar\";\"other\"\n\"1512978\";\"Qŭshkŭpir\";\"main\"\n\"1512978\";\"Qushkupir\";\"ascii\"\n\"1512978\";\"Kosh Kunir\";\"other\"\n\"1512978\";\"Koshkupyr\";\"other\"\n\"1512979\";\"Qo‘qon\";\"main\"\n\"1512979\";\"Qo`qon\";\"ascii\"\n\"1512979\";\"Kokand\";\"other\"\n\"1512979\";\"Kokandas\";\"other\"\n\"1512979\";\"Qo'qon\";\"other\"\n\"1512979\";\"Quqon\";\"other\"\n\"1512979\";\"Qŭqon\";\"other\"\n\"1512979\";\"kokando\";\"other\"\n\"1512979\";\"kokanteu\";\"other\"\n\"1512979\";\"Коканд\";\"other\"\n\"1512979\";\"コーカンド\";\"other\"\n\"1512979\";\"코칸트\";\"other\"\n\"1512986\";\"Piskent\";\"main\"\n\"1512986\";\"Pskent\";\"other\"\n\"1513011\";\"Payshanba\";\"main\"\n\"1513011\";\"Pajshanba\";\"other\"\n\"1513011\";\"Payshmba\";\"other\"\n\"1513011\";\"Пайшанба\";\"other\"\n\"1513017\";\"Parkent\";\"main\"\n\"1513023\";\"Pop\";\"main\"\n\"1513023\";\"Pap\";\"other\"\n\"1513023\";\"Поп\";\"other\"\n\"1513038\";\"Paxtakor\";\"main\"\n\"1513038\";\"Pakhtakor\";\"other\"\n\"1513064\";\"Olmaliq\";\"main\"\n\"1513064\";\"Almalyk\";\"other\"\n\"1513064\";\"Ałmałyk\";\"other\"\n\"1513064\";\"Алмалык\";\"other\"\n\"1513072\";\"Ohangaron\";\"main\"\n\"1513072\";\"Akhangaran\";\"other\"\n\"1513072\";\"Akhangaron\";\"other\"\n\"1513072\";\"Kurama\";\"other\"\n\"1513072\";\"Okhangaron\";\"other\"\n\"1513087\";\"Nurota\";\"main\"\n\"1513087\";\"Nurata\";\"other\"\n\"1513087\";\"Нурота\";\"other\"\n\"1513092\";\"Novyy Turtkul’\";\"main\"\n\"1513092\";\"Novyy Turtkul'\";\"ascii\"\n\"1513131\";\"Navoiy\";\"main\"\n\"1513131\";\"Kermene\";\"other\"\n\"1513131\";\"Kermine\";\"other\"\n\"1513131\";\"Nava\";\"other\"\n\"1513131\";\"Navoi\";\"other\"\n\"1513131\";\"Navoy\";\"other\"\n\"1513131\";\"Navoï\";\"other\"\n\"1513131\";\"Nawoiy\";\"other\"\n\"1513131\";\"Nazoy\";\"other\"\n\"1513131\";\"Навои\";\"other\"\n\"1513157\";\"Namangan\";\"main\"\n\"1513157\";\"Наманган\";\"other\"\n\"1513242\";\"Marhamat\";\"main\"\n\"1513242\";\"Markhamat\";\"other\"\n\"1513242\";\"Markhamat Pervyy\";\"other\"\n\"1513242\";\"Мархамат\";\"other\"\n\"1513243\";\"Marg‘ilon\";\"main\"\n\"1513243\";\"Marg`ilon\";\"ascii\"\n\"1513243\";\"Margelan\";\"other\"\n\"1513243\";\"Marghilon\";\"other\"\n\"1513243\";\"Margilan\";\"other\"\n\"1513243\";\"Маргилан\";\"other\"\n\"1513245\";\"Manghit\";\"main\"\n\"1513245\";\"Manga\";\"other\"\n\"1513245\";\"Mangit\";\"other\"\n\"1513245\";\"Mangyt\";\"other\"\n\"1513271\";\"Asaka\";\"main\"\n\"1513271\";\"Assake\";\"other\"\n\"1513271\";\"Leninsk\";\"other\"\n\"1513271\";\"Zelensk\";\"other\"\n\"1513271\";\"Асака\";\"other\"\n\"1513288\";\"Qiziltepa\";\"main\"\n\"1513288\";\"Kizil-Tepe\";\"other\"\n\"1513288\";\"Kyzyl Tepe\";\"other\"\n\"1513288\";\"Kyzyltepa\";\"other\"\n\"1513331\";\"Quvasoy\";\"main\"\n\"1513331\";\"Kubasay\";\"other\"\n\"1513331\";\"Kuvasa\";\"other\"\n\"1513331\";\"Kuvasay\";\"other\"\n\"1513331\";\"Kuwassai\";\"other\"\n\"1513331\";\"Quwasoy\";\"other\"\n\"1513364\";\"Qŭrghontepa\";\"main\"\n\"1513364\";\"Qurghontepa\";\"ascii\"\n\"1513364\";\"Kurgan Tyube\";\"other\"\n\"1513364\";\"Kurgan-Tepe\";\"other\"\n\"1513364\";\"Kurgantepa\";\"other\"\n\"1513364\";\"Kyzyl-Tepa\";\"other\"\n\"1513491\";\"Komsomol’skiy\";\"main\"\n\"1513491\";\"Komsomol'skiy\";\"ascii\"\n\"1513491\";\"Gorchakovo\";\"other\"\n\"1513491\";\"Stantsiya Gorchakovo\";\"other\"\n\"1513555\";\"Kirgili\";\"main\"\n\"1513567\";\"Qibray\";\"main\"\n\"1513567\";\"Kibrai\";\"other\"\n\"1513567\";\"Kibray\";\"other\"\n\"1513600\";\"Khŭjaobod\";\"main\"\n\"1513600\";\"Khujaobod\";\"ascii\"\n\"1513600\";\"Khodzhaabad\";\"other\"\n\"1513600\";\"Khodzhavat\";\"other\"\n\"1513600\";\"Khodzhiabad\";\"other\"\n\"1513600\";\"Khoji-Abad\";\"other\"\n\"1513604\";\"Khiwa\";\"main\"\n\"1513604\";\"Chiva\";\"other\"\n\"1513604\";\"Chiwa\";\"other\"\n\"1513604\";\"Hiva\";\"other\"\n\"1513604\";\"Horezm\";\"other\"\n\"1513604\";\"Jiva\";\"other\"\n\"1513604\";\"Khiva\";\"other\"\n\"1513604\";\"Khivà\";\"other\"\n\"1513604\";\"Khorezm\";\"other\"\n\"1513604\";\"Xiva\";\"other\"\n\"1513604\";\"khwarzm\";\"other\"\n\"1513604\";\"khywa\";\"other\"\n\"1513604\";\"khywh\";\"other\"\n\"1513604\";\"Ĥiva\";\"other\"\n\"1513604\";\"Хива\";\"other\"\n\"1513604\";\"خوارزم\";\"other\"\n\"1513604\";\"خیوا\";\"other\"\n\"1513604\";\"خیوه\";\"other\"\n\"1513650\";\"Hamza\";\"main\"\n\"1513650\";\"Imeni Khamzy Khakimzade\";\"other\"\n\"1513650\";\"Khamza\";\"other\"\n\"1513650\";\"Khamza Khakimzada\";\"other\"\n\"1513650\";\"Khamzy Khakimzade\";\"other\"\n\"1513650\";\"Vannovskiy\";\"other\"\n\"1513655\";\"Haqqulobod\";\"main\"\n\"1513655\";\"Khakkulabad\";\"other\"\n\"1513655\";\"Khakulabad\";\"other\"\n\"1513655\";\"Naron\";\"other\"\n\"1513655\";\"Naryn\";\"other\"\n\"1513714\";\"Kosonsoy\";\"main\"\n\"1513714\";\"Kasansay\";\"other\"\n\"1513714\";\"Kassan-Sai\";\"other\"\n\"1513714\";\"Kassansay\";\"other\"\n\"1513886\";\"Jizzax\";\"main\"\n\"1513886\";\"Dishsak\";\"other\"\n\"1513886\";\"Djizak\";\"other\"\n\"1513886\";\"Dzhizak\";\"other\"\n\"1513886\";\"Jizak\";\"other\"\n\"1513886\";\"Jizzakh\";\"other\"\n\"1513886\";\"jyzk\";\"other\"\n\"1513886\";\"Джизак\";\"other\"\n\"1513886\";\"جیزک\";\"other\"\n\"1513900\";\"Iskandar\";\"main\"\n\"1513900\";\"Iskander\";\"other\"\n\"1513900\";\"Искандар\";\"other\"\n\"1513957\";\"Hazorasp\";\"main\"\n\"1513957\";\"Khazarasp\";\"other\"\n\"1513962\";\"Gurlan\";\"main\"\n\"1513962\";\"Gurlek\";\"other\"\n\"1513962\";\"Gurlen\";\"other\"\n\"1513962\";\"Гурлан\";\"other\"\n\"1513966\";\"Guliston\";\"main\"\n\"1513966\";\"Golodnaya Step'\";\"other\"\n\"1513966\";\"Golodnaya Step’\";\"other\"\n\"1513966\";\"Gulistan\";\"other\"\n\"1513966\";\"Mirzachul'\";\"other\"\n\"1513966\";\"Mirzachul’\";\"other\"\n\"1513966\";\"Гулистан\";\"other\"\n\"1513983\";\"Ghijduwon\";\"main\"\n\"1513983\";\"Akmal'-Abad\";\"other\"\n\"1513983\";\"Akmal’-Abad\";\"other\"\n\"1513983\";\"Gidzhduvan\";\"other\"\n\"1513983\";\"Gizhduvan\";\"other\"\n\"1513983\";\"Gydzh-Duvan\";\"other\"\n\"1513983\";\"Gydzha-Dovan\";\"other\"\n\"1513990\";\"Gazli\";\"main\"\n\"1513996\";\"G‘azalkent\";\"main\"\n\"1513996\";\"G'azalkent\";\"ascii\"\n\"1513996\";\"G`azalkent\";\"other\"\n\"1513996\";\"Gazalkent\";\"other\"\n\"1513996\";\"Ghazalkent\";\"other\"\n\"1513996\";\"Газалкент\";\"other\"\n\"1514011\";\"Gagarin\";\"main\"\n\"1514011\";\"Erjar\";\"other\"\n\"1514011\";\"Yerzhar\";\"other\"\n\"1514011\";\"Гагарин\";\"other\"\n\"1514019\";\"Farg`ona\";\"main\"\n\"1514019\";\"Farghona\";\"other\"\n\"1514019\";\"Fergana\";\"other\"\n\"1514019\";\"Novyy Margelan\";\"other\"\n\"1514019\";\"Skobelev\";\"other\"\n\"1514019\";\"Skobelevo\";\"other\"\n\"1514019\";\"Фергана\";\"other\"\n\"1514125\";\"Dŭstlik\";\"main\"\n\"1514125\";\"Dustlik\";\"ascii\"\n\"1514192\";\"Chust Shahri\";\"main\"\n\"1514192\";\"Chust\";\"other\"\n\"1514192\";\"Tschust\";\"other\"\n\"1514192\";\"Чуст\";\"other\"\n\"1514210\";\"Chirchiq\";\"main\"\n\"1514210\";\"Chirchik\";\"other\"\n\"1514210\";\"Tschirtschik\";\"other\"\n\"1514210\";\"Чирчик\";\"other\"\n\"1514215\";\"Chinoz\";\"main\"\n\"1514215\";\"Chinaz\";\"other\"\n\"1514215\";\"Cinaz\";\"other\"\n\"1514215\";\"Tschin\";\"other\"\n\"1514215\";\"Чиноз\";\"other\"\n\"1514225\";\"Kyzyldzhar\";\"main\"\n\"1514225\";\"Chimgan\";\"other\"\n\"1514225\";\"Shimgan\";\"other\"\n\"1514225\";\"Чимган\";\"other\"\n\"1514258\";\"Chortoq\";\"main\"\n\"1514258\";\"Chartak\";\"other\"\n\"1514258\";\"Chertak\";\"other\"\n\"1514330\";\"Bŭka\";\"main\"\n\"1514330\";\"Buka\";\"ascii\"\n\"1514382\";\"Beshariq\";\"main\"\n\"1514382\";\"Besharyk\";\"other\"\n\"1514382\";\"Besharykskogo\";\"other\"\n\"1514382\";\"Imeni Kirova\";\"other\"\n\"1514382\";\"Kirovo\";\"other\"\n\"1514382\";\"Kirowo\";\"other\"\n\"1514382\";\"Бешарыкского\";\"other\"\n\"1514387\";\"Beruniy\";\"main\"\n\"1514387\";\"Beruni\";\"other\"\n\"1514387\";\"Berunij\";\"other\"\n\"1514387\";\"Biruni\";\"other\"\n\"1514387\";\"Biruniy\";\"other\"\n\"1514387\";\"Shabbaz\";\"other\"\n\"1514387\";\"Shchabbaz\";\"other\"\n\"1514387\";\"Sheikh Abaz Vali\";\"other\"\n\"1514387\";\"Беруний\";\"other\"\n\"1514396\";\"Bektemir\";\"main\"\n\"1514396\";\"Kolkhoz Imeni Akhunbabayeva\";\"other\"\n\"1514396\";\"Бектемир\";\"other\"\n\"1514402\";\"Bekobod\";\"main\"\n\"1514402\";\"Bagevat\";\"other\"\n\"1514402\";\"Begovat\";\"other\"\n\"1514402\";\"Begowat\";\"other\"\n\"1514402\";\"Bekabad\";\"other\"\n\"1514402\";\"Bigovat\";\"other\"\n\"1514402\";\"Bïgovat\";\"other\"\n\"1514581\";\"Angren\";\"main\"\n\"1514581\";\"Angrenshakhtstroy\";\"other\"\n\"1514581\";\"Turk\";\"other\"\n\"1514581\";\"Turn\";\"other\"\n\"1514581\";\"Ангрен\";\"other\"\n\"1514588\";\"Andijon\";\"main\"\n\"1514588\";\"Andican\";\"other\"\n\"1514588\";\"Andidzhan\";\"other\"\n\"1514588\";\"Andijan\";\"other\"\n\"1514588\";\"Andiján\";\"other\"\n\"1514588\";\"Andisjan\";\"other\"\n\"1514588\";\"Andizan\";\"other\"\n\"1514588\";\"Andizhan\";\"other\"\n\"1514588\";\"Andizhan - Andijon\";\"other\"\n\"1514588\";\"Andizjan\";\"other\"\n\"1514588\";\"Andiżan\";\"other\"\n\"1514588\";\"Andižan\";\"other\"\n\"1514588\";\"an ji yan\";\"other\"\n\"1514588\";\"andijan\";\"other\"\n\"1514588\";\"ztnjan\";\"other\"\n\"1514588\";\"Андижан\";\"other\"\n\"1514588\";\"ظةنجان\";\"other\"\n\"1514588\";\"アンディジャン\";\"other\"\n\"1514588\";\"安集延\";\"other\"\n\"1514588\";\"안디잔\";\"other\"\n\"1514615\";\"Oltiariq\";\"main\"\n\"1514615\";\"Altyaryk\";\"other\"\n\"1526979\";\"Quva\";\"main\"\n\"1526979\";\"Kuva\";\"other\"\n\"1526979\";\"Quwa\";\"other\"\n\"1526979\";\"Кува\";\"other\"\n\"1538273\";\"Namangan Shahri\";\"main\"\n\"1538273\";\"Gorod Namangan\";\"other\"\n\"1538275\";\"Uchqŭrghon Shahri\";\"main\"\n\"1538275\";\"Uchqurghon Shahri\";\"ascii\"\n\"1538275\";\"Gorod Uchkurgan\";\"other\"\n\"1538276\";\"Chortoq Shahri\";\"main\"\n\"1538276\";\"Gorod Chartak\";\"other\"\n\"1538278\";\"Haqqulobod Shahri\";\"main\"\n\"1538278\";\"Gorod Khakkulabad\";\"other\"\n\"1538279\";\"Pop Shahri\";\"main\"\n\"1538279\";\"Gorod Pap\";\"other\"\n\"1538280\";\"Tŭragŭrghon Shahri\";\"main\"\n\"1538280\";\"Turagurghon Shahri\";\"ascii\"\n\"1538280\";\"Gorod Turakurgan\";\"other\"\n\"6691831\";\"Vatican City\";\"main\"\n\"6691831\";\"Citta del Vaticano\";\"other\"\n\"6691831\";\"Città del Vaticano\";\"other\"\n\"6691831\";\"Ciudad del Vaticano\";\"other\"\n\"6691831\";\"Vatican\";\"other\"\n\"6691831\";\"Vaticano\";\"other\"\n\"6691831\";\"Vatikan\";\"other\"\n\"6691831\";\"Vatikanstaden\";\"other\"\n\"6691831\";\"Ватикан\";\"other\"\n\"3577887\";\"Kingstown\";\"main\"\n\"3577887\";\"Kin'nkstaoun\";\"other\"\n\"3577887\";\"Kingstaun\";\"other\"\n\"3577887\";\"Kingstaunas\";\"other\"\n\"3577887\";\"kingseutaun\";\"other\"\n\"3577887\";\"kingusutaun\";\"other\"\n\"3577887\";\"kynghstawn\";\"other\"\n\"3577887\";\"Κινγκστάουν\";\"other\"\n\"3577887\";\"Кингстаун\";\"other\"\n\"3577887\";\"קינגסטאון\";\"other\"\n\"3577887\";\"كينغستاون\";\"other\"\n\"3577887\";\"ኪንግስታውን\";\"other\"\n\"3577887\";\"キングスタウン\";\"other\"\n\"3577887\";\"킹스타운\";\"other\"\n\"3577900\";\"Georgetown\";\"main\"\n\"3577944\";\"Byera Village\";\"main\"\n\"3577955\";\"Biabou\";\"main\"\n\"3577955\";\"Baiabu\";\"other\"\n\"3748726\";\"Kingstown Park\";\"main\"\n\"3480908\";\"La Asunción\";\"main\"\n\"3480908\";\"La Asuncion\";\"ascii\"\n\"3480908\";\"La-Asuns'on\";\"other\"\n\"3480908\";\"Ла-Асунсьон\";\"other\"\n\"3486270\";\"Anaco\";\"main\"\n\"3487903\";\"Alto Barinas\";\"main\"\n\"3625066\";\"Zaraza\";\"main\"\n\"3625066\";\"Зараза\";\"other\"\n\"3625207\";\"Yaritagua\";\"main\"\n\"3625341\";\"Villa de Cura\";\"main\"\n\"3625346\";\"Villa Bruzual\";\"main\"\n\"3625346\";\"Turen\";\"other\"\n\"3625346\";\"Turén\";\"other\"\n\"3625515\";\"Valle de La Pascua\";\"main\"\n\"3625515\";\"Val'e-de-La-Paskua\";\"other\"\n\"3625515\";\"Valle de Pascua\";\"other\"\n\"3625515\";\"Валье-де-Ла-Паскуа\";\"other\"\n\"3625542\";\"Valera\";\"main\"\n\"3625542\";\"Валера\";\"other\"\n\"3625549\";\"Valencia\";\"main\"\n\"3625549\";\"Balenzia\";\"other\"\n\"3625549\";\"Valencio\";\"other\"\n\"3625549\";\"Valensija\";\"other\"\n\"3625549\";\"Valência\";\"other\"\n\"3625549\";\"ba lun xi ya\";\"other\"\n\"3625549\";\"barenshia\";\"other\"\n\"3625549\";\"Валенсия\";\"other\"\n\"3625549\";\"バレンシア\";\"other\"\n\"3625549\";\"巴伦西亚\";\"other\"\n\"3625710\";\"Upata\";\"main\"\n\"3625829\";\"Turmero\";\"main\"\n\"3625929\";\"Tucupita\";\"main\"\n\"3625929\";\"Tukupita\";\"other\"\n\"3625929\";\"Тукупита\";\"other\"\n\"3625965\";\"Tucacas\";\"main\"\n\"3625979\";\"Trujillo\";\"main\"\n\"3626219\";\"Tinaquillo\";\"main\"\n\"3626402\";\"Táriba\";\"main\"\n\"3626402\";\"Tariba\";\"ascii\"\n\"3627047\";\"Santa Teresa\";\"main\"\n\"3627186\";\"Santa Rita\";\"main\"\n\"3627968\";\"San Mateo\";\"main\"\n\"3628053\";\"San Juan de los Morros\";\"main\"\n\"3628053\";\"San Juan de Los Morros\";\"other\"\n\"3628053\";\"San Juan de los Moros\";\"other\"\n\"3628060\";\"San Juan de Colón\";\"main\"\n\"3628060\";\"San Juan de Colon\";\"ascii\"\n\"3628060\";\"Colon\";\"other\"\n\"3628060\";\"Colón\";\"other\"\n\"3628142\";\"San José de Guanipa\";\"main\"\n\"3628142\";\"San Jose de Guanipa\";\"ascii\"\n\"3628142\";\"El Tigrito\";\"other\"\n\"3628267\";\"San Joaquín\";\"main\"\n\"3628267\";\"San Joaquin\";\"ascii\"\n\"3628423\";\"San Felipe\";\"main\"\n\"3628473\";\"San Cristóbal\";\"main\"\n\"3628473\";\"San Cristobal\";\"ascii\"\n\"3628489\";\"San Carlos del Zulia\";\"main\"\n\"3628489\";\"Del Zulia\";\"other\"\n\"3628489\";\"San Carlos\";\"other\"\n\"3628503\";\"San Carlos\";\"main\"\n\"3628549\";\"San Antonio del Táchira\";\"main\"\n\"3628549\";\"San Antonio del Tachira\";\"ascii\"\n\"3628549\";\"San Antonio\";\"other\"\n\"3628549\";\"San Antonio de Tachira\";\"other\"\n\"3628549\";\"San Antonio de Táchira\";\"other\"\n\"3628550\";\"San Antonio de Los Altos\";\"main\"\n\"3628952\";\"Rubio\";\"main\"\n\"3628952\";\"Рубио\";\"other\"\n\"3628966\";\"Rosario\";\"main\"\n\"3628966\";\"La Villa del Rosario\";\"other\"\n\"3628966\";\"Villa del Rosario\";\"other\"\n\"3628966\";\"Росарио\";\"other\"\n\"3629419\";\"Quíbor\";\"main\"\n\"3629419\";\"Quibor\";\"ascii\"\n\"3629576\";\"Punto Fijo\";\"main\"\n\"3629614\";\"Punta Cardón\";\"main\"\n\"3629614\";\"Punta Cardon\";\"ascii\"\n\"3629614\";\"Cardon\";\"other\"\n\"3629614\";\"Cordon\";\"other\"\n\"3629614\";\"El Cardon\";\"other\"\n\"3629614\";\"El Cardón\";\"other\"\n\"3629614\";\"Puerto Cardon\";\"other\"\n\"3629614\";\"Punta-Kardon\";\"other\"\n\"3629614\";\"Пунта-Кардон\";\"other\"\n\"3629672\";\"Puerto La Cruz\";\"main\"\n\"3629672\";\"Puehrto La Kruz\";\"other\"\n\"3629672\";\"Puerto de La Cruz\";\"other\"\n\"3629672\";\"Пуэрто Ла Круз\";\"other\"\n\"3629706\";\"Puerto Cabello\";\"main\"\n\"3629706\";\"Puerto Kabello\";\"other\"\n\"3629706\";\"Пуерто Кабелло\";\"other\"\n\"3629710\";\"Puerto Ayacucho\";\"main\"\n\"3629965\";\"Porlamar\";\"main\"\n\"3629965\";\"Порламар\";\"other\"\n\"3630297\";\"Petare\";\"main\"\n\"3630297\";\"petare qu\";\"other\"\n\"3630297\";\"Петаре\";\"other\"\n\"3630297\";\"ペタレ区\";\"other\"\n\"3630932\";\"Palo Negro\";\"main\"\n\"3631412\";\"Ocumare del Tuy\";\"main\"\n\"3631412\";\"Ocumare\";\"other\"\n\"3631507\";\"Nirgua\";\"main\"\n\"3631741\";\"Mucumpiz\";\"main\"\n\"3631878\";\"Morón\";\"main\"\n\"3631878\";\"Moron\";\"ascii\"\n\"3632308\";\"Mérida\";\"main\"\n\"3632308\";\"Merida\";\"ascii\"\n\"3632308\";\"merida\";\"other\"\n\"3632308\";\"mrydh\";\"other\"\n\"3632308\";\"Мерида\";\"other\"\n\"3632308\";\"מרידה\";\"other\"\n\"3632929\";\"Mariara\";\"main\"\n\"3632998\";\"Maracay\";\"main\"\n\"3633009\";\"Maracaibo\";\"main\"\n\"3633009\";\"Marakaibo\";\"other\"\n\"3633009\";\"Marakajbo\";\"other\"\n\"3633009\";\"marakaibo\";\"other\"\n\"3633009\";\"Маракаибо\";\"other\"\n\"3633009\";\"マラカイボ\";\"other\"\n\"3633341\";\"Maiquetía\";\"main\"\n\"3633341\";\"Maiquetia\";\"ascii\"\n\"3633444\";\"Machiques\";\"main\"\n\"3633677\";\"Los Rastrojos\";\"main\"\n\"3633677\";\"Rastrojo\";\"other\"\n\"3633677\";\"Rastrojos\";\"other\"\n\"3634184\";\"Los Dos Caminos\";\"main\"\n\"3634184\";\"Dos Caminos\";\"other\"\n\"3634922\";\"La Victoria\";\"main\"\n\"3635325\";\"Las Tejerías\";\"main\"\n\"3635325\";\"Las Tejerias\";\"ascii\"\n\"3635325\";\"Tejerias\";\"other\"\n\"3637623\";\"Lagunillas\";\"main\"\n\"3637721\";\"La Guaira\";\"main\"\n\"3637721\";\"La Guayra\";\"other\"\n\"3637721\";\"raguaira\";\"other\"\n\"3637721\";\"ラグアイラ\";\"other\"\n\"3639107\";\"Juan Griego\";\"main\"\n\"3639747\";\"Güigüe\";\"main\"\n\"3639747\";\"Guigue\";\"ascii\"\n\"3639898\";\"Guatire\";\"main\"\n\"3640049\";\"Guarenas\";\"main\"\n\"3640226\";\"Guanare\";\"main\"\n\"3640465\";\"Guacara\";\"main\"\n\"3641099\";\"El Vigía\";\"main\"\n\"3641099\";\"El Vigia\";\"ascii\"\n\"3641275\";\"El Tocuyo\";\"main\"\n\"3641275\";\"Tocuyo\";\"other\"\n\"3641351\";\"El Tigre\";\"main\"\n\"3642833\";\"El Limón\";\"main\"\n\"3642833\";\"El Limon\";\"ascii\"\n\"3643031\";\"El Hatillo\";\"main\"\n\"3644417\";\"Ejido\";\"main\"\n\"3644417\";\"Egido\";\"other\"\n\"3644417\";\"Ehkhido\";\"other\"\n\"3644417\";\"Эхидо\";\"other\"\n\"3644768\";\"Cumaná\";\"main\"\n\"3644768\";\"Cumana\";\"ascii\"\n\"3644768\";\"Kumana\";\"other\"\n\"3644768\";\"Кумана\";\"other\"\n\"3644918\";\"Cúa\";\"main\"\n\"3644918\";\"Cua\";\"ascii\"\n\"3644918\";\"Kua\";\"other\"\n\"3644918\";\"Куа\";\"other\"\n\"3645213\";\"Coro\";\"main\"\n\"3645213\";\"Koro\";\"other\"\n\"3645213\";\"Santa Ana de Coro\";\"other\"\n\"3645213\";\"korotosono gang\";\"other\"\n\"3645213\";\"Коро\";\"other\"\n\"3645213\";\"コロとその港\";\"other\"\n\"3645528\";\"Ciudad Guayana\";\"main\"\n\"3645528\";\"Ciudad Guiana\";\"other\"\n\"3645528\";\"Guayana\";\"other\"\n\"3645528\";\"Guayana City\";\"other\"\n\"3645528\";\"S'judad-Guajana\";\"other\"\n\"3645528\";\"San Felix de Guayana\";\"other\"\n\"3645528\";\"San Félix de Guayana\";\"other\"\n\"3645528\";\"San Tome\";\"other\"\n\"3645528\";\"San Tome de Guayana\";\"other\"\n\"3645528\";\"San Tomé\";\"other\"\n\"3645528\";\"San Tomé de Guayana\";\"other\"\n\"3645528\";\"Santo Tome de Guayana\";\"other\"\n\"3645528\";\"Santo Tomo\";\"other\"\n\"3645528\";\"Santo Tomé de Guayana\";\"other\"\n\"3645528\";\"Сьюдад-Гуаяна\";\"other\"\n\"3645532\";\"Ciudad Bolívar\";\"main\"\n\"3645532\";\"Ciudad Bolivar\";\"ascii\"\n\"3645532\";\"Angostura\";\"other\"\n\"3645532\";\"Bolivar\";\"other\"\n\"3645532\";\"Bolívar\";\"other\"\n\"3645532\";\"S'judad-Bolivar\";\"other\"\n\"3645532\";\"Ziuda Bolivar\";\"other\"\n\"3645532\";\"Ziudá Bolívar\";\"other\"\n\"3645532\";\"bo li wa er cheng\";\"other\"\n\"3645532\";\"Сьюдад-Боливар\";\"other\"\n\"3645532\";\"シウダ・ボリバル\";\"other\"\n\"3645532\";\"玻利瓦尔城\";\"other\"\n\"3645671\";\"Chivacoa\";\"main\"\n\"3645806\";\"Chichiriviche\";\"main\"\n\"3645854\";\"Charallave\";\"main\"\n\"3645981\";\"Chacao\";\"main\"\n\"3646062\";\"Tacarigua\";\"main\"\n\"3646062\";\"Central Tacarigua\";\"other\"\n\"3646062\";\"Central Tacariqua\";\"other\"\n\"3646169\";\"Caucagüito\";\"main\"\n\"3646169\";\"Caucaguito\";\"ascii\"\n\"3646169\";\"Caucaguita\";\"other\"\n\"3646190\";\"Catia La Mar\";\"main\"\n\"3646190\";\"Catia de la Mar\";\"other\"\n\"3646382\";\"Carúpano\";\"main\"\n\"3646382\";\"Carupano\";\"ascii\"\n\"3646451\";\"Carrizal\";\"main\"\n\"3646451\";\"Carrizales\";\"other\"\n\"3646451\";\"Karrisal'\";\"other\"\n\"3646451\";\"Каррисаль\";\"other\"\n\"3646487\";\"Carora\";\"main\"\n\"3646738\";\"Caracas\";\"main\"\n\"3646738\";\"Caracae\";\"other\"\n\"3646738\";\"Karakas\";\"other\"\n\"3646738\";\"Karakasa\";\"other\"\n\"3646738\";\"Karakasas\";\"other\"\n\"3646738\";\"Karakaso\";\"other\"\n\"3646738\";\"ka la ka si\";\"other\"\n\"3646738\";\"ka raka s\";\"other\"\n\"3646738\";\"kalakaseu\";\"other\"\n\"3646738\";\"karakas\";\"other\"\n\"3646738\";\"karakasa\";\"other\"\n\"3646738\";\"karakasu\";\"other\"\n\"3646738\";\"krakas\";\"other\"\n\"3646738\";\"Καράκας\";\"other\"\n\"3646738\";\"Каракас\";\"other\"\n\"3646738\";\"קראקס\";\"other\"\n\"3646738\";\"كاراكاس\";\"other\"\n\"3646738\";\"كراكاس\";\"other\"\n\"3646738\";\"کاراکاس\";\"other\"\n\"3646738\";\"কারাকাস\";\"other\"\n\"3646738\";\"ಕರಾಕಸ್\";\"other\"\n\"3646738\";\"การากัส\";\"other\"\n\"3646738\";\"ཁ་ར་ཁ་སི\";\"other\"\n\"3646738\";\"ካራካስ\";\"other\"\n\"3646738\";\"カラカス\";\"other\"\n\"3646738\";\"卡拉卡斯\";\"other\"\n\"3646738\";\"카라카스\";\"other\"\n\"3646767\";\"Caraballeda\";\"main\"\n\"3646869\";\"Cantaura\";\"main\"\n\"3646869\";\"Cantura\";\"other\"\n\"3647444\";\"Calabozo\";\"main\"\n\"3647549\";\"Cagua\";\"main\"\n\"3647651\";\"Cabimas\";\"main\"\n\"3647651\";\"Caramas\";\"other\"\n\"3647651\";\"Kabimas\";\"other\"\n\"3647651\";\"Кабимас\";\"other\"\n\"3648439\";\"Baruta\";\"main\"\n\"3648522\";\"Barquisimeto\";\"main\"\n\"3648522\";\"Barkisimeto\";\"other\"\n\"3648522\";\"Barquisimito\";\"other\"\n\"3648522\";\"Баркисимето\";\"other\"\n\"3648540\";\"Barinitas\";\"main\"\n\"3648559\";\"Barcelona\";\"main\"\n\"3648559\";\"Barselona\";\"other\"\n\"3648559\";\"Барселона\";\"other\"\n\"3649017\";\"Araure\";\"main\"\n\"3649408\";\"Altagracia de Orituco\";\"main\"\n\"3649833\";\"Acarigua\";\"main\"\n\"3778045\";\"Maturín\";\"main\"\n\"3778045\";\"Maturin\";\"ascii\"\n\"3778045\";\"Матурин\";\"other\"\n\"3795152\";\"La Fría\";\"main\"\n\"3795152\";\"La Fria\";\"ascii\"\n\"3803449\";\"El Cafetal\";\"main\"\n\"3803515\";\"Caucaguita\";\"main\"\n\"3803651\";\"La Dolorita\";\"main\"\n\"3804949\";\"Guasdalito\";\"main\"\n\"3804949\";\"Guasdualito\";\"other\"\n\"3805673\";\"San Fernando Apure\";\"main\"\n\"3805673\";\"San Fernando de Apure\";\"other\"\n\"3577430\";\"Road Town\";\"main\"\n\"3577430\";\"rodotaun\";\"other\"\n\"3577430\";\"רואוד טאון\";\"other\"\n\"3577430\";\"ロードタウン\";\"other\"\n\"4795467\";\"Charlotte Amalie\";\"main\"\n\"4795467\";\"Sharlota Amalija\";\"other\"\n\"4795467\";\"Шарлота Амалия\";\"other\"\n\"4795467\";\"Шарлота Амалија\";\"other\"\n\"4795467\";\"שארלוט אמאלי\";\"other\"\n\"4795467\";\"シャーロット・アマリー\";\"other\"\n\"1560037\";\"Yên Vinh\";\"main\"\n\"1560037\";\"Yen Vinh\";\"ascii\"\n\"1560349\";\"Yên Bái\";\"main\"\n\"1560349\";\"Yen Bai\";\"ascii\"\n\"1560349\";\"Jenbaj\";\"other\"\n\"1560349\";\"Yen Bay\";\"other\"\n\"1560349\";\"Йенбай\";\"other\"\n\"1562414\";\"Vũng Tàu\";\"main\"\n\"1562414\";\"Vung Tau\";\"ascii\"\n\"1562414\";\"Cap-Saint-Jacques\";\"other\"\n\"1562414\";\"Saint James\";\"other\"\n\"1562414\";\"Ville du Cap\";\"other\"\n\"1562414\";\"Xa Vung Tau\";\"other\"\n\"1562414\";\"tou dun shi\";\"other\"\n\"1562414\";\"頭 頓市\";\"other\"\n\"1562548\";\"Vĩnh Yên\";\"main\"\n\"1562548\";\"Vinh Yen\";\"ascii\"\n\"1562548\";\"Vieh Yen\";\"other\"\n\"1562548\";\"Yen\";\"other\"\n\"1562693\";\"Vĩnh Long\";\"main\"\n\"1562693\";\"Vinh Long\";\"ascii\"\n\"1562798\";\"Vinh\";\"main\"\n\"1562798\";\"Vin\";\"other\"\n\"1562820\";\"Việt Trì\";\"main\"\n\"1562820\";\"Viet Tri\";\"ascii\"\n\"1562820\";\"Vietri\";\"other\"\n\"1563241\";\"Uông Bí\";\"main\"\n\"1563241\";\"Uong Bi\";\"ascii\"\n\"1563281\";\"Tuy Hòa\";\"main\"\n\"1563281\";\"Tuy Hoa\";\"ascii\"\n\"1563281\";\"Chau Thanh\";\"other\"\n\"1563281\";\"Thuy Hoa\";\"other\"\n\"1563281\";\"Toy Hoa\";\"other\"\n\"1563287\";\"Tuyên Quang\";\"main\"\n\"1563287\";\"Tuyen Quang\";\"ascii\"\n\"1563287\";\"Tuyen Kang\";\"other\"\n\"1563287\";\"Tuyen Kwang\";\"other\"\n\"1563926\";\"Trà Vinh\";\"main\"\n\"1563926\";\"Tra Vinh\";\"ascii\"\n\"1563926\";\"Phu Vinh\";\"other\"\n\"1563926\";\"Phú Vinh\";\"other\"\n\"1563926\";\"Tra Vin\\\"\";\"other\"\n\"1563926\";\"Tra Vin”\";\"other\"\n\"1565022\";\"Thủ Dầu Một\";\"main\"\n\"1565022\";\"Thu Dau Mot\";\"ascii\"\n\"1565022\";\"Phu Cuong\";\"other\"\n\"1565022\";\"Phú Cường\";\"other\"\n\"1566083\";\"Thành phố Hồ Chí Minh\";\"main\"\n\"1566083\";\"Thanh pho Ho Chi Minh\";\"ascii\"\n\"1566083\";\"Cathair Ho Chi Minh\";\"other\"\n\"1566083\";\"Cidade de Ho Chi Minh\";\"other\"\n\"1566083\";\"Ciudad Ho Chi Minh\";\"other\"\n\"1566083\";\"HCMC\";\"other\"\n\"1566083\";\"HCMV\";\"other\"\n\"1566083\";\"Ho Chi Minh\";\"other\"\n\"1566083\";\"Ho Chi Minh City\";\"other\"\n\"1566083\";\"Ho Chi Minh Ville\";\"other\"\n\"1566083\";\"Ho Chi Minh borg\";\"other\"\n\"1566083\";\"Ho Chi Minh-byen\";\"other\"\n\"1566083\";\"Ho Chi Minhin kaupunki\";\"other\"\n\"1566083\";\"Ho Chi Minhstad\";\"other\"\n\"1566083\";\"Ho Si Minh-varos\";\"other\"\n\"1566083\";\"Ho Si Minh-város\";\"other\"\n\"1566083\";\"Ho-Chi-Minh-Stadt\";\"other\"\n\"1566083\";\"Ho-Chi-Minh-Ville\";\"other\"\n\"1566083\";\"Ho-Ci-Min-Urbo\";\"other\"\n\"1566083\";\"Ho-Ĉi-Min-Urbo\";\"other\"\n\"1566083\";\"Hociminovo Mesto\";\"other\"\n\"1566083\";\"Hosimina\";\"other\"\n\"1566083\";\"Hosiminh\";\"other\"\n\"1566083\";\"Hočiminovo Mesto\";\"other\"\n\"1566083\";\"Hošimina\";\"other\"\n\"1566083\";\"Hošiminh\";\"other\"\n\"1566083\";\"Hô Chi Minh Ville\";\"other\"\n\"1566083\";\"Hô-Chi-Minh-Ville\";\"other\"\n\"1566083\";\"Kho Shi Min\";\"other\"\n\"1566083\";\"Khoshimin\";\"other\"\n\"1566083\";\"Kota Ho Chi Minh\";\"other\"\n\"1566083\";\"Sai Gon\";\"other\"\n\"1566083\";\"Saigon\";\"other\"\n\"1566083\";\"Saïgon\";\"other\"\n\"1566083\";\"Sài Gòn\";\"other\"\n\"1566083\";\"TPHCM\";\"other\"\n\"1566083\";\"hochimin\";\"other\"\n\"1566083\";\"hochimin shi\";\"other\"\n\"1566083\";\"hojjimin si\";\"other\"\n\"1566083\";\"hu zhi ming shi\";\"other\"\n\"1566083\";\"hw z'y myn syty\";\"other\"\n\"1566083\";\"mdynt hwshy mnh\";\"other\"\n\"1566083\";\"saigon\";\"other\"\n\"1566083\";\"saygwn\";\"other\"\n\"1566083\";\"Хо Ши Мин\";\"other\"\n\"1566083\";\"Хошимин\";\"other\"\n\"1566083\";\"הו צ'י מין סיטי\";\"other\"\n\"1566083\";\"سايگون\";\"other\"\n\"1566083\";\"مدينة هوشي منه\";\"other\"\n\"1566083\";\"サイゴン\";\"other\"\n\"1566083\";\"ホーチミン\";\"other\"\n\"1566083\";\"ホーチミン市\";\"other\"\n\"1566083\";\"胡志明市\";\"other\"\n\"1566083\";\"호찌민 시\";\"other\"\n\"1566166\";\"Thanh Hóa\";\"main\"\n\"1566166\";\"Thanh Hoa\";\"ascii\"\n\"1566166\";\"Than\\\" Hoa\";\"other\"\n\"1566166\";\"Than” Hoa\";\"other\"\n\"1566319\";\"Thái Nguyên\";\"main\"\n\"1566319\";\"Thai Nguyen\";\"ascii\"\n\"1566319\";\"Taj-Nguen\";\"other\"\n\"1566319\";\"Тай-Нгуен\";\"other\"\n\"1566346\";\"Thái Bình\";\"main\"\n\"1566346\";\"Thai Binh\";\"ascii\"\n\"1566346\";\"Kua Loc\";\"other\"\n\"1566346\";\"Taibinh\";\"other\"\n\"1566346\";\"Thai Bin\\\"\";\"other\"\n\"1566346\";\"Thai Bin”\";\"other\"\n\"1566559\";\"Tây Ninh\";\"main\"\n\"1566559\";\"Tay Ninh\";\"ascii\"\n\"1566559\";\"Tai nin\";\"other\"\n\"1566559\";\"Tei Nin\";\"other\"\n\"1567069\";\"Tân An\";\"main\"\n\"1567069\";\"Tan An\";\"ascii\"\n\"1567069\";\"Tan\";\"other\"\n\"1567069\";\"Tan Am\";\"other\"\n\"1567069\";\"Тан\";\"other\"\n\"1567148\";\"Tam Kỳ\";\"main\"\n\"1567148\";\"Tam Ky\";\"ascii\"\n\"1567148\";\"Tanky\";\"other\"\n\"1567621\";\"Sơn Tây\";\"main\"\n\"1567621\";\"Son Tay\";\"ascii\"\n\"1567621\";\"Son-Taj\";\"other\"\n\"1567621\";\"Sontai\";\"other\"\n\"1567621\";\"Сон-Тай\";\"other\"\n\"1567681\";\"Sơn La\";\"main\"\n\"1567681\";\"Son La\";\"ascii\"\n\"1567681\";\"Son La Chau\";\"other\"\n\"1567681\";\"Son Lu\";\"other\"\n\"1567681\";\"Son-La\";\"other\"\n\"1567681\";\"Сон-Ла\";\"other\"\n\"1567723\";\"Sông Cầu\";\"main\"\n\"1567723\";\"Song Cau\";\"ascii\"\n\"1567723\";\"Bong Cau\";\"other\"\n\"1567723\";\"Bông Cầu\";\"other\"\n\"1567723\";\"Song Ka\";\"other\"\n\"1567723\";\"Song Ko\";\"other\"\n\"1567723\";\"Songkau\";\"other\"\n\"1567788\";\"Sóc Trăng\";\"main\"\n\"1567788\";\"Soc Trang\";\"ascii\"\n\"1567788\";\"Khanh Hong\";\"other\"\n\"1567788\";\"Khanh Hung\";\"other\"\n\"1567788\";\"Khánh Hưng\";\"other\"\n\"1567788\";\"Shokchang\";\"other\"\n\"1567788\";\"Sok Trang\";\"other\"\n\"1567788\";\"Шокчанг\";\"other\"\n\"1568043\";\"Sa Pá\";\"main\"\n\"1568043\";\"Sa Pa\";\"ascii\"\n\"1568043\";\"Chapa\";\"other\"\n\"1568043\";\"Shapa\";\"other\"\n\"1568043\";\"Шапа\";\"other\"\n\"1568212\";\"Sa Ðéc\";\"main\"\n\"1568212\";\"Sa Dec\";\"ascii\"\n\"1568212\";\"Sadek\";\"other\"\n\"1568510\";\"Rạch Giá\";\"main\"\n\"1568510\";\"Rach Gia\";\"ascii\"\n\"1568510\";\"Rach Zhia\";\"other\"\n\"1568574\";\"Quy Nhơn\";\"main\"\n\"1568574\";\"Quy Nhon\";\"ascii\"\n\"1568574\";\"Ki N'on\";\"other\"\n\"1568574\";\"Ki N’on\";\"other\"\n\"1568574\";\"Kin-hon\";\"other\"\n\"1568574\";\"Kwinhon\";\"other\"\n\"1568574\";\"Qui Nhan\";\"other\"\n\"1568574\";\"Qui Nhon\";\"other\"\n\"1568574\";\"Qui Nhơn\";\"other\"\n\"1568574\";\"Quinn Yan\";\"other\"\n\"1568574\";\"Quinton\";\"other\"\n\"1568574\";\"Xa Qui Nhon\";\"other\"\n\"1568574\";\"Xã Qui Nhôn\";\"other\"\n\"1568770\";\"Quảng Ngãi\";\"main\"\n\"1568770\";\"Quang Ngai\";\"ascii\"\n\"1568770\";\"Kang Ngei\";\"other\"\n\"1568770\";\"Kuangngaj\";\"other\"\n\"1568770\";\"Kwang Ngai\";\"other\"\n\"1568770\";\"Thanh pho Quang Ngai\";\"other\"\n\"1568770\";\"Thành phố Quảng Ngãi\";\"other\"\n\"1568770\";\"Куангнгай\";\"other\"\n\"1569684\";\"Pleiku\";\"main\"\n\"1569684\";\"Gia Lai\";\"other\"\n\"1569684\";\"Play Cu\";\"other\"\n\"1569684\";\"Play Ku\";\"other\"\n\"1569684\";\"Plei Cu\";\"other\"\n\"1569684\";\"Plejku\";\"other\"\n\"1569684\";\"Plây Cu\";\"other\"\n\"1569684\";\"Plây Ku\";\"other\"\n\"1569684\";\"Tinh Pleiku\";\"other\"\n\"1569684\";\"Tỉnh Pleiku\";\"other\"\n\"1569684\";\"Плейку\";\"other\"\n\"1569973\";\"Dương Đông\";\"main\"\n\"1569973\";\"Duong GJong\";\"ascii\"\n\"1569973\";\"Duong Dong\";\"other\"\n\"1569973\";\"Duong-Dong\";\"other\"\n\"1569973\";\"Dương Dông\";\"other\"\n\"1569973\";\"Xom Duong Dong\";\"other\"\n\"1569973\";\"Дуонг-Донг\";\"other\"\n\"1570449\";\"Phủ Lý\";\"main\"\n\"1570449\";\"Phu Ly\";\"ascii\"\n\"1570449\";\"Fu Li\";\"other\"\n\"1570449\";\"Ha-Nam\";\"other\"\n\"1570449\";\"Phu-li\";\"other\"\n\"1570549\";\"Phú Khương\";\"main\"\n\"1570549\";\"Phu Khuong\";\"ascii\"\n\"1570815\";\"Phong Thổ\";\"main\"\n\"1570815\";\"Phong Tho\";\"ascii\"\n\"1570815\";\"Muong So\";\"other\"\n\"1571058\";\"Phan Thiết\";\"main\"\n\"1571058\";\"Phan Thiet\";\"ascii\"\n\"1571058\";\"Fan Thiet\";\"other\"\n\"1571058\";\"Fant'et\";\"other\"\n\"1571058\";\"Fanthit\";\"other\"\n\"1571058\";\"Fantiet\";\"other\"\n\"1571058\";\"Phan Tiet\";\"other\"\n\"1571058\";\"Xa Phan Thiet\";\"other\"\n\"1571058\";\"pan qie\";\"other\"\n\"1571058\";\"Фантьет\";\"other\"\n\"1571058\";\"潘切\";\"other\"\n\"1571067\";\"Phan Rang-Tháp Chàm\";\"main\"\n\"1571067\";\"Phan Rang-Thap Cham\";\"ascii\"\n\"1571067\";\"Phan Rang\";\"other\"\n\"1571067\";\"Phan Rang- Thap Cham\";\"other\"\n\"1571067\";\"Phan Ranh\";\"other\"\n\"1571968\";\"Ninh Bình\";\"main\"\n\"1571968\";\"Ninh Binh\";\"ascii\"\n\"1571968\";\"Nin Bin\\\"\";\"other\"\n\"1571968\";\"Nin Bin”\";\"other\"\n\"1571968\";\"Ninbinh\";\"other\"\n\"1572151\";\"Nha Trang\";\"main\"\n\"1572151\";\"Kanh-Hoa\";\"other\"\n\"1572151\";\"Njachang\";\"other\"\n\"1572151\";\"nyachan\";\"other\"\n\"1572151\";\"Нячанг\";\"other\"\n\"1572151\";\"ニャチャン\";\"other\"\n\"1573517\";\"Nam Ðịnh\";\"main\"\n\"1573517\";\"Nam Dinh\";\"ascii\"\n\"1573517\";\"Nam Din\\\"\";\"other\"\n\"1573517\";\"Nam Din”\";\"other\"\n\"1573517\";\"Namdin'\";\"other\"\n\"1573517\";\"Намдинь\";\"other\"\n\"1574023\";\"Mỹ Tho\";\"main\"\n\"1574023\";\"My Tho\";\"ascii\"\n\"1574023\";\"Mitho\";\"other\"\n\"1575627\";\"Long Xuyên\";\"main\"\n\"1575627\";\"Long Xuyen\";\"ascii\"\n\"1575627\";\"Cholong Xuyen\";\"other\"\n\"1575627\";\"Chơlong Xuyen\";\"other\"\n\"1575627\";\"Long Swiyen\";\"other\"\n\"1575627\";\"Long-Shuyen\";\"other\"\n\"1576303\";\"Lào Cai\";\"main\"\n\"1576303\";\"Lao Cai\";\"ascii\"\n\"1576303\";\"Lao Kay\";\"other\"\n\"1576303\";\"Laokai\";\"other\"\n\"1576303\";\"Laokaj\";\"other\"\n\"1576303\";\"Лаокай\";\"other\"\n\"1576633\";\"Lạng Sơn\";\"main\"\n\"1576633\";\"Lang Son\";\"ascii\"\n\"1578500\";\"Kon Tum\";\"main\"\n\"1578500\";\"Cong Tum\";\"other\"\n\"1578500\";\"Công Tum\";\"other\"\n\"1578500\";\"Tinh Kontum\";\"other\"\n\"1578500\";\"Tỉnh Kontum\";\"other\"\n\"1580142\";\"Hưng Yên\";\"main\"\n\"1580142\";\"Hung Yen\";\"ascii\"\n\"1580142\";\"Hong-Yen\";\"other\"\n\"1580240\";\"Huế\";\"main\"\n\"1580240\";\"Hue\";\"ascii\"\n\"1580240\";\"Hué\";\"other\"\n\"1580240\";\"Khjue\";\"other\"\n\"1580240\";\"Khue\";\"other\"\n\"1580240\";\"fue\";\"other\"\n\"1580240\";\"shun hua\";\"other\"\n\"1580240\";\"Хуе\";\"other\"\n\"1580240\";\"Хюе\";\"other\"\n\"1580240\";\"フエ\";\"other\"\n\"1580240\";\"順化\";\"other\"\n\"1580240\";\"顺化\";\"other\"\n\"1580410\";\"Hạ Long\";\"main\"\n\"1580410\";\"Ha Long\";\"ascii\"\n\"1580410\";\"Hon Cay\";\"other\"\n\"1580410\";\"Hon Gai\";\"other\"\n\"1580410\";\"Hon Gay\";\"other\"\n\"1580410\";\"Hon Goi\";\"other\"\n\"1580410\";\"Hong Gai\";\"other\"\n\"1580410\";\"Honggay\";\"other\"\n\"1580410\";\"Hồng Gai\";\"other\"\n\"1580410\";\"Khalong\";\"other\"\n\"1580410\";\"xia long shi\";\"other\"\n\"1580410\";\"Халонг\";\"other\"\n\"1580410\";\"下龙市\";\"other\"\n\"1580541\";\"Hội An\";\"main\"\n\"1580541\";\"Hoi An\";\"ascii\"\n\"1580541\";\"Faifo\";\"other\"\n\"1580541\";\"Faifoh\";\"other\"\n\"1580541\";\"Faifoo\";\"other\"\n\"1580541\";\"Feifu\";\"other\"\n\"1580541\";\"Hôi An\";\"other\"\n\"1580541\";\"Khoj\";\"other\"\n\"1580541\";\"hoian\";\"other\"\n\"1580541\";\"Хой\";\"other\"\n\"1580541\";\"ホイアン\";\"other\"\n\"1580830\";\"Hòa Bình\";\"main\"\n\"1580830\";\"Hoa Binh\";\"ascii\"\n\"1580830\";\"Hao Binh\";\"other\"\n\"1580830\";\"Hoa Bin\";\"other\"\n\"1581047\";\"Hà Tĩnh\";\"main\"\n\"1581047\";\"Ha Tinh\";\"ascii\"\n\"1581047\";\"Ha Tin'\";\"other\"\n\"1581047\";\"Ha Tin’\";\"other\"\n\"1581047\";\"Khatin'\";\"other\"\n\"1581047\";\"Хатинь\";\"other\"\n\"1581052\";\"Hà Tiên\";\"main\"\n\"1581052\";\"Ha Tien\";\"ascii\"\n\"1581052\";\"Khat'en\";\"other\"\n\"1581052\";\"Хатьен\";\"other\"\n\"1581130\";\"Hà Nội\";\"main\"\n\"1581130\";\"Ha Noi\";\"ascii\"\n\"1581130\";\"Anoi\";\"other\"\n\"1581130\";\"Hanoi\";\"other\"\n\"1581130\";\"Hanoj\";\"other\"\n\"1581130\";\"Hanojus\";\"other\"\n\"1581130\";\"Hanoï\";\"other\"\n\"1581130\";\"Hanói\";\"other\"\n\"1581130\";\"Keicho\";\"other\"\n\"1581130\";\"Khanoj\";\"other\"\n\"1581130\";\"hanoi\";\"other\"\n\"1581130\";\"hanwy\";\"other\"\n\"1581130\";\"hanxy\";\"other\"\n\"1581130\";\"he nei\";\"other\"\n\"1581130\";\"Ανόι\";\"other\"\n\"1581130\";\"Ханой\";\"other\"\n\"1581130\";\"האנוי\";\"other\"\n\"1581130\";\"هانوي\";\"other\"\n\"1581130\";\"هانوی\";\"other\"\n\"1581130\";\"ฮานอย\";\"other\"\n\"1581130\";\"ሀኖይ\";\"other\"\n\"1581130\";\"ハノイ\";\"other\"\n\"1581130\";\"河內\";\"other\"\n\"1581130\";\"하노이\";\"other\"\n\"1581298\";\"Haiphong\";\"main\"\n\"1581298\";\"Hai Phong\";\"other\"\n\"1581298\";\"Hajfong\";\"other\"\n\"1581298\";\"Hải Phòng\";\"other\"\n\"1581298\";\"Khajfon\";\"other\"\n\"1581298\";\"hai fang shi\";\"other\"\n\"1581298\";\"haifon\";\"other\"\n\"1581298\";\"hayfwngh\";\"other\"\n\"1581298\";\"hi fxng\";\"other\"\n\"1581298\";\"Хайфон\";\"other\"\n\"1581298\";\"هايفونغ\";\"other\"\n\"1581298\";\"ไฮฟอง\";\"other\"\n\"1581298\";\"ハイフォン\";\"other\"\n\"1581298\";\"海防市\";\"other\"\n\"1581326\";\"Hải Dương\";\"main\"\n\"1581326\";\"Hai Duong\";\"ascii\"\n\"1581326\";\"Hai Doong\";\"other\"\n\"1581326\";\"Hai dzung\";\"other\"\n\"1581326\";\"Hai-Doung\";\"other\"\n\"1581326\";\"Haidong\";\"other\"\n\"1581326\";\"Haidöng\";\"other\"\n\"1581326\";\"Khajzyong\";\"other\"\n\"1581326\";\"Хайзыонг\";\"other\"\n\"1581349\";\"Hà Giang\";\"main\"\n\"1581349\";\"Ha Giang\";\"ascii\"\n\"1581364\";\"Hà Ðông\";\"main\"\n\"1581364\";\"Ha Dong\";\"ascii\"\n\"1582436\";\"Dồng Xoài\";\"main\"\n\"1582436\";\"Dong Xoai\";\"ascii\"\n\"1582436\";\"Ap Dong Xoai\";\"other\"\n\"1582436\";\"Don Luan\";\"other\"\n\"1582436\";\"Dong Xoa\";\"other\"\n\"1582436\";\"Dong Xoi\";\"other\"\n\"1582436\";\"Ấp Ðồng Xoài\";\"other\"\n\"1582886\";\"Ðồng Hới\";\"main\"\n\"1582886\";\"Dong Hoi\";\"ascii\"\n\"1582886\";\"Kwang Binh\";\"other\"\n\"1582886\";\"tong hai shi\";\"other\"\n\"1582886\";\"Đồng Hới\";\"other\"\n\"1582886\";\"同 海 市\";\"other\"\n\"1582926\";\"Ðông Hà\";\"main\"\n\"1582926\";\"Dong Ha\";\"ascii\"\n\"1582926\";\"Dong Na\";\"other\"\n\"1582926\";\"Thi Xa Dong Ha\";\"other\"\n\"1582926\";\"Thi Xã Ðòng Hà\";\"other\"\n\"1583477\";\"Diện Biên Phủ\";\"main\"\n\"1583477\";\"Dien Bien Phu\";\"ascii\"\n\"1583477\";\"D'en B'en Fu\";\"other\"\n\"1583477\";\"Dien Bien\";\"other\"\n\"1583477\";\"Diên Biên Phu\";\"other\"\n\"1583477\";\"Opsada Điện Biên Phủa\";\"other\"\n\"1583477\";\"dian bian fu\";\"other\"\n\"1583477\";\"dienbienfu\";\"other\"\n\"1583477\";\"dienbienpu\";\"other\"\n\"1583477\";\"Ðiện Biên\";\"other\"\n\"1583477\";\"Ðiện Biên Phủ\";\"other\"\n\"1583477\";\"Điện Biên Phủ\";\"other\"\n\"1583477\";\"Дьен Бьен Фу\";\"other\"\n\"1583477\";\"ディエンビエンフー\";\"other\"\n\"1583477\";\"奠邊府\";\"other\"\n\"1583477\";\"디엔비엔푸\";\"other\"\n\"1583992\";\"Ðà Nẵng\";\"main\"\n\"1583992\";\"Da Nang\";\"ascii\"\n\"1583992\";\"Danang\";\"other\"\n\"1583992\";\"Tourane\";\"other\"\n\"1583992\";\"Turan\";\"other\"\n\"1583992\";\"danan\";\"other\"\n\"1583992\";\"xian gang\";\"other\"\n\"1583992\";\"Đà Nẵng\";\"other\"\n\"1583992\";\"Да Нанг\";\"other\"\n\"1583992\";\"ダナン\";\"other\"\n\"1583992\";\"岘港\";\"other\"\n\"1583992\";\"峴港\";\"other\"\n\"1584071\";\"Ðà Lạt\";\"main\"\n\"1584071\";\"Da Lat\";\"ascii\"\n\"1584071\";\"Da lat\";\"other\"\n\"1584661\";\"Củ Chi\";\"main\"\n\"1584661\";\"Cu Chi\";\"ascii\"\n\"1584661\";\"Ku-Chi\";\"other\"\n\"1584661\";\"Ку-Чи\";\"other\"\n\"1584807\";\"Côn Sơn\";\"main\"\n\"1584807\";\"Con Son\";\"ascii\"\n\"1584807\";\"Con Son City\";\"other\"\n\"1584807\";\"Grande Village de Poulo Condore\";\"other\"\n\"1584807\";\"Kon-Shon\";\"other\"\n\"1584807\";\"Phu Hai City\";\"other\"\n\"1584807\";\"Poulo Condore\";\"other\"\n\"1584807\";\"Pulo Condore\";\"other\"\n\"1584807\";\"Thi-xa Con-son\";\"other\"\n\"1584807\";\"Thị-xã Côn-sơn\";\"other\"\n\"1584807\";\"Кон-Шон\";\"other\"\n\"1585660\";\"Châu Ðốc\";\"main\"\n\"1585660\";\"Chau Doc\";\"ascii\"\n\"1585660\";\"Angiang\";\"other\"\n\"1585660\";\"Chau Phu\";\"other\"\n\"1585660\";\"Chau Phú\";\"other\"\n\"1585660\";\"Chaudok\";\"other\"\n\"1585660\";\"Cho Dok\";\"other\"\n\"1586151\";\"Cao Lãnh\";\"main\"\n\"1586151\";\"Cao Lanh\";\"ascii\"\n\"1586151\";\"Phong Thanh\";\"other\"\n\"1586185\";\"Cao Bằng\";\"main\"\n\"1586185\";\"Cao Bang\";\"ascii\"\n\"1586185\";\"Cao Pang\";\"other\"\n\"1586185\";\"Kao Bang\";\"other\"\n\"1586185\";\"Kao banh\";\"other\"\n\"1586185\";\"Kaobang\";\"other\"\n\"1586185\";\"Каобанг\";\"other\"\n\"1586203\";\"Cần Thơ\";\"main\"\n\"1586203\";\"Can Tho\";\"ascii\"\n\"1586203\";\"Kan Tho\";\"other\"\n\"1586203\";\"kanto\";\"other\"\n\"1586203\";\"qin ju shi\";\"other\"\n\"1586203\";\"カントー\";\"other\"\n\"1586203\";\"芹苴市\";\"other\"\n\"1586288\";\"Cần Giờ\";\"main\"\n\"1586288\";\"Can Gio\";\"ascii\"\n\"1586296\";\"Cần Duộc\";\"main\"\n\"1586296\";\"Can Duoc\";\"ascii\"\n\"1586296\";\"Can Gioc\";\"other\"\n\"1586296\";\"Can Giuoc\";\"other\"\n\"1586296\";\"Cần Giuộc\";\"other\"\n\"1586350\";\"Cam Ranh\";\"main\"\n\"1586350\";\"Cam Linh\";\"other\"\n\"1586350\";\"Cam Ranh Port\";\"other\"\n\"1586350\";\"Kamran'\";\"other\"\n\"1586350\";\"Thon Cam Ranh\";\"other\"\n\"1586350\";\"Thôn Cam Ranh\";\"other\"\n\"1586350\";\"Камрань\";\"other\"\n\"1586357\";\"Cẩm Phả Mines\";\"main\"\n\"1586357\";\"Cam Pha Mines\";\"ascii\"\n\"1586443\";\"Cà Mau\";\"main\"\n\"1586443\";\"Ca Mau\";\"ascii\"\n\"1586443\";\"Camo\";\"other\"\n\"1586443\";\"Cu Mau\";\"other\"\n\"1586443\";\"Kamao\";\"other\"\n\"1586443\";\"Kamau\";\"other\"\n\"1586443\";\"Quan Long\";\"other\"\n\"1586443\";\"Quang Long\";\"other\"\n\"1586443\";\"Song Kualon\";\"other\"\n\"1586443\";\"Камау\";\"other\"\n\"1586896\";\"Buôn Ma Thuột\";\"main\"\n\"1586896\";\"Buon Ma Thuot\";\"ascii\"\n\"1586896\";\"Ban Me Thaut\";\"other\"\n\"1586896\";\"Ban Me Thnot\";\"other\"\n\"1586896\";\"Ban Me Thot\";\"other\"\n\"1586896\";\"Ban Me Thout\";\"other\"\n\"1586896\";\"Ban Me Thuot\";\"other\"\n\"1586896\";\"Ban Mê Thuột\";\"other\"\n\"1586896\";\"Ban-me-Thurt\";\"other\"\n\"1586896\";\"Benmethout\";\"other\"\n\"1586896\";\"Buon Me Thuot\";\"other\"\n\"1586896\";\"Buôn Mê Thuột\";\"other\"\n\"1586896\";\"Lac Giao\";\"other\"\n\"1586896\";\"Lạc Giao\";\"other\"\n\"1586896\";\"Me Thuot\";\"other\"\n\"1587919\";\"Bỉm Sơn\";\"main\"\n\"1587919\";\"Bim Son\";\"ascii\"\n\"1587919\";\"Bien Son\";\"other\"\n\"1587919\";\"Biên Sơn\";\"other\"\n\"1587923\";\"Biên Hòa\";\"main\"\n\"1587923\";\"Bien Hoa\";\"ascii\"\n\"1587923\";\"Bia Hoa\";\"other\"\n\"1587976\";\"Bến Tre\";\"main\"\n\"1587976\";\"Ben Tre\";\"ascii\"\n\"1587976\";\"Truc Giang\";\"other\"\n\"1587976\";\"Trúc Giang\";\"other\"\n\"1591449\";\"Bắc Ninh\";\"main\"\n\"1591449\";\"Bac Ninh\";\"ascii\"\n\"1591449\";\"Bacht Ninh\";\"other\"\n\"1591449\";\"Bak Nin\";\"other\"\n\"1591449\";\"Bak Ninh\";\"other\"\n\"1591474\";\"Bạc Liêu\";\"main\"\n\"1591474\";\"Bac Lieu\";\"ascii\"\n\"1591474\";\"Bac-Lien\";\"other\"\n\"1591474\";\"Bach Lieu\";\"other\"\n\"1591474\";\"Bak Lieu\";\"other\"\n\"1591474\";\"Vinh Loi\";\"other\"\n\"1591474\";\"Vĩnh Lợi\";\"other\"\n\"1591527\";\"Bắc Giang\";\"main\"\n\"1591527\";\"Bac Giang\";\"ascii\"\n\"1591527\";\"Phu Lang Thong\";\"other\"\n\"1591527\";\"Phu Lang Thuong\";\"other\"\n\"1591527\";\"Phu Long Thuong\";\"other\"\n\"1591527\";\"Thuong\";\"other\"\n\"1591538\";\"Bắc Kạn\";\"main\"\n\"1591538\";\"Bac Kan\";\"ascii\"\n\"1591538\";\"Bac Can\";\"other\"\n\"1591538\";\"Bak Kan\";\"other\"\n\"1591538\";\"Bắc Cạn\";\"other\"\n\"6951115\";\"Da Lat\";\"main\"\n\"6951115\";\"Dalat\";\"other\"\n\"6951115\";\"Далат\";\"other\"\n\"2134814\";\"Sola\";\"main\"\n\"2135171\";\"Port-Vila\";\"main\"\n\"2135171\";\"Bila\";\"other\"\n\"2135171\";\"Fila\";\"other\"\n\"2135171\";\"Port Fila\";\"other\"\n\"2135171\";\"Port Vila\";\"other\"\n\"2135171\";\"Vila\";\"other\"\n\"2135171\";\"poteubilla\";\"other\"\n\"2135171\";\"potobira\";\"other\"\n\"2135171\";\"pwrt wylh\";\"other\"\n\"2135171\";\"wei la gang\";\"other\"\n\"2135171\";\"Βίλα\";\"other\"\n\"2135171\";\"Порт Вила\";\"other\"\n\"2135171\";\"Порт-Вила\";\"other\"\n\"2135171\";\"פורט וילה\";\"other\"\n\"2135171\";\"ፖርት ቪላ\";\"other\"\n\"2135171\";\"ポートビラ\";\"other\"\n\"2135171\";\"維拉港\";\"other\"\n\"2135171\";\"포트빌라\";\"other\"\n\"2135175\";\"Port-Olry\";\"main\"\n\"2135517\";\"Norsup\";\"main\"\n\"2135517\";\"Norsoup\";\"other\"\n\"2136150\";\"Luganville\";\"main\"\n\"2136150\";\"Louganville\";\"other\"\n\"2136150\";\"Luganville Bay\";\"other\"\n\"2136150\";\"Santo\";\"other\"\n\"2136825\";\"Isangel\";\"main\"\n\"2136825\";\"Исангел\";\"other\"\n\"4034821\";\"Matâ'utu\";\"main\"\n\"4034821\";\"Mata'utu\";\"ascii\"\n\"4034821\";\"Regina Spit\";\"other\"\n\"4034903\";\"Vaiusu\";\"main\"\n\"4034903\";\"Vaiasa\";\"other\"\n\"4034908\";\"Vaitele\";\"main\"\n\"4034908\";\"Vaitele Plantation\";\"other\"\n\"4035013\";\"Solosolo\";\"main\"\n\"4035019\";\"Siusega\";\"main\"\n\"4035059\";\"Satapuala\";\"main\"\n\"4035118\";\"Safotu\";\"main\"\n\"4035174\";\"Nofoali‘i\";\"main\"\n\"4035174\";\"Nofoali`i\";\"ascii\"\n\"4035209\";\"Matavai\";\"main\"\n\"4035236\";\"Malie\";\"main\"\n\"4035249\";\"Lufilufi\";\"main\"\n\"4035252\";\"Lotofagā\";\"main\"\n\"4035252\";\"Lotofaga\";\"ascii\"\n\"4035252\";\"Lotofanga\";\"other\"\n\"4035260\";\"Leulumoega\";\"main\"\n\"4035260\";\"Leulumoenga\";\"other\"\n\"4035310\";\"Gataivai\";\"main\"\n\"4035310\";\"Gaitavai\";\"other\"\n\"4035335\";\"Fasito‘outa\";\"main\"\n\"4035335\";\"Fasito`outa\";\"ascii\"\n\"4035335\";\"Fasitouta\";\"other\"\n\"4035345\";\"Faleula\";\"main\"\n\"4035345\";\"Falula\";\"other\"\n\"4035358\";\"Falefa\";\"main\"\n\"4035358\";\"Falifa\";\"other\"\n\"4035358\";\"Naneivi\";\"other\"\n\"4035358\";\"Sagapolu\";\"other\"\n\"4035358\";\"Sanonu\";\"other\"\n\"4035413\";\"Apia\";\"main\"\n\"4035413\";\"΄Aπια\";\"other\"\n\"4035413\";\"Апиа\";\"other\"\n\"4035432\";\"Afenga\";\"main\"\n\"4035432\";\"Afega\";\"other\"\n\"783770\";\"Zvečan\";\"main\"\n\"783770\";\"Zvecan\";\"ascii\"\n\"783770\";\"Zaccan\";\"other\"\n\"783770\";\"Zvechan\";\"other\"\n\"783770\";\"Zveçan\";\"other\"\n\"783770\";\"Звечан\";\"other\"\n\"783802\";\"Zubin Potok\";\"main\"\n\"783802\";\"Zubinpotok\";\"other\"\n\"783802\";\"Зубин Поток\";\"other\"\n\"784097\";\"Vučitrn\";\"main\"\n\"784097\";\"Vucitrn\";\"ascii\"\n\"784097\";\"Vuchitrn\";\"other\"\n\"784097\";\"Vuciterne\";\"other\"\n\"784097\";\"Vushtrri\";\"other\"\n\"784097\";\"Vuçitërnë\";\"other\"\n\"784097\";\"Вучитрн\";\"other\"\n\"784372\";\"Vitina\";\"main\"\n\"784372\";\"Viti\";\"other\"\n\"784372\";\"Витина\";\"other\"\n\"784759\";\"Uroševac\";\"main\"\n\"784759\";\"Urosevac\";\"ascii\"\n\"784759\";\"Ferezaj\";\"other\"\n\"784759\";\"Ferizaj\";\"other\"\n\"784759\";\"Ferizovik\";\"other\"\n\"784759\";\"Uroshevac\";\"other\"\n\"784759\";\"Урошевац\";\"other\"\n\"785238\";\"Thëranda\";\"main\"\n\"785238\";\"Theranda\";\"ascii\"\n\"785238\";\"Lumthate\";\"other\"\n\"785238\";\"Lumthatë\";\"other\"\n\"785238\";\"Suha Reka\";\"other\"\n\"785238\";\"Suhareke\";\"other\"\n\"785238\";\"Suharekë\";\"other\"\n\"785238\";\"Suharjeka\";\"other\"\n\"785238\";\"Sukareke\";\"other\"\n\"785238\";\"Sukarekë\";\"other\"\n\"785388\";\"Štrpce\";\"main\"\n\"785388\";\"Strpce\";\"ascii\"\n\"785388\";\"Shterpce\";\"other\"\n\"785388\";\"Shtrpce\";\"other\"\n\"785388\";\"Shtërpcë\";\"other\"\n\"785388\";\"Strice\";\"other\"\n\"785388\";\"Štrice\";\"other\"\n\"785388\";\"Штрпце\";\"other\"\n\"785485\";\"Shtime\";\"main\"\n\"785642\";\"Srbica\";\"main\"\n\"785642\";\"Skenderaj\";\"other\"\n\"785642\";\"Skënderaj\";\"other\"\n\"785642\";\"Србица\";\"other\"\n\"786156\";\"Irzniq\";\"main\"\n\"786156\";\"Irzniqi\";\"other\"\n\"786156\";\"Rrezar\";\"other\"\n\"786156\";\"Rrezari\";\"other\"\n\"786156\";\"Rrezniq\";\"other\"\n\"786156\";\"Rrznic\";\"other\"\n\"786156\";\"Rrznić\";\"other\"\n\"786156\";\"Rrëzniq\";\"other\"\n\"786156\";\"Rznic\";\"other\"\n\"786156\";\"Rznić\";\"other\"\n\"786156\";\"Рзнић\";\"other\"\n\"786712\";\"Prizren\";\"main\"\n\"786712\";\"Perzeren\";\"other\"\n\"786712\";\"Perzerin\";\"other\"\n\"786712\";\"Prizrena\";\"other\"\n\"786712\";\"Prizrenas\";\"other\"\n\"786712\";\"Prizreni\";\"other\"\n\"786712\";\"Përzeren\";\"other\"\n\"786712\";\"bryzrn\";\"other\"\n\"786712\";\"Призрен\";\"other\"\n\"786712\";\"بريزرن\";\"other\"\n\"786714\";\"Pristina\";\"main\"\n\"786714\";\"Prishhina\";\"other\"\n\"786714\";\"Prishtina\";\"other\"\n\"786714\";\"Prishtine\";\"other\"\n\"786714\";\"Prishtinë\";\"other\"\n\"786714\";\"Prisjtina\";\"other\"\n\"786714\";\"Prisztina\";\"other\"\n\"786714\";\"Priština\";\"other\"\n\"786714\";\"pu li shi ti na\";\"other\"\n\"786714\";\"purishutina\";\"other\"\n\"786714\";\"Приштина\";\"other\"\n\"786714\";\"Прищина\";\"other\"\n\"786714\";\"プリシュティナ\";\"other\"\n\"786714\";\"普里士提納\";\"other\"\n\"786734\";\"Prilep\";\"main\"\n\"786734\";\"Arrnjet\";\"other\"\n\"786734\";\"Arrnjeti\";\"other\"\n\"786734\";\"Perlep\";\"other\"\n\"786734\";\"Prejlep\";\"other\"\n\"786734\";\"Prejlepi\";\"other\"\n\"786734\";\"Prelep\";\"other\"\n\"786734\";\"Prilip\";\"other\"\n\"786734\";\"Përlep\";\"other\"\n\"786734\";\"Прилеп\";\"other\"\n\"786950\";\"Podujeva\";\"main\"\n\"786950\";\"Besiana\";\"other\"\n\"786950\";\"Besiane\";\"other\"\n\"786950\";\"Besianë\";\"other\"\n\"786950\";\"Podjeve\";\"other\"\n\"786950\";\"Podjevë\";\"other\"\n\"786950\";\"Podujeve\";\"other\"\n\"786950\";\"Podujevo\";\"other\"\n\"786950\";\"Podujevë\";\"other\"\n\"786950\";\"Podujevó\";\"other\"\n\"787155\";\"Pećane\";\"main\"\n\"787155\";\"Pecane\";\"ascii\"\n\"787155\";\"Peqan\";\"other\"\n\"787155\";\"Recan\";\"other\"\n\"787155\";\"Reçan\";\"other\"\n\"787155\";\"Пећане\";\"other\"\n\"787157\";\"Pejë\";\"main\"\n\"787157\";\"Peje\";\"ascii\"\n\"787157\";\"Ipek\";\"other\"\n\"787157\";\"Peja\";\"other\"\n\"787268\";\"Pagaruša\";\"main\"\n\"787268\";\"Pagarusa\";\"ascii\"\n\"787268\";\"Pagarusha\";\"other\"\n\"787268\";\"Pagarushe\";\"other\"\n\"787268\";\"Pagarushë\";\"other\"\n\"787268\";\"Пагаруша\";\"other\"\n\"787456\";\"Orahovac\";\"main\"\n\"787456\";\"Orakhovac\";\"other\"\n\"787456\";\"Rahavec\";\"other\"\n\"787456\";\"Rahovec\";\"other\"\n\"787456\";\"Ораховац\";\"other\"\n\"787534\";\"Obilić\";\"main\"\n\"787534\";\"Obilic\";\"ascii\"\n\"787534\";\"Gllaboder\";\"other\"\n\"787534\";\"Kastriot\";\"other\"\n\"787534\";\"Obiliq\";\"other\"\n\"787534\";\"Обилић\";\"other\"\n\"787650\";\"Nišor\";\"main\"\n\"787650\";\"Nisor\";\"ascii\"\n\"787650\";\"Nishor\";\"other\"\n\"787650\";\"Нишор\";\"other\"\n\"788239\";\"Mališevo\";\"main\"\n\"788239\";\"Malisevo\";\"ascii\"\n\"788239\";\"Malisheve\";\"other\"\n\"788239\";\"Malishevo\";\"other\"\n\"788239\";\"Malishevë\";\"other\"\n\"788239\";\"Малишево\";\"other\"\n\"788470\";\"Llazicë\";\"main\"\n\"788470\";\"Llazice\";\"ascii\"\n\"788470\";\"Llozice\";\"other\"\n\"788470\";\"Llozicë\";\"other\"\n\"788470\";\"Lozica\";\"other\"\n\"788536\";\"Lumbardhi\";\"main\"\n\"788536\";\"Ljumbardh\";\"other\"\n\"788536\";\"Lumbarda\";\"other\"\n\"788536\";\"Lumbardh\";\"other\"\n\"788536\";\"Lumbardhe\";\"other\"\n\"788536\";\"Lumbardhë\";\"other\"\n\"788536\";\"Лумбарда\";\"other\"\n\"788543\";\"Ljubuša\";\"main\"\n\"788543\";\"Ljubusa\";\"ascii\"\n\"788543\";\"Lebusha\";\"other\"\n\"788543\";\"Lebushe\";\"other\"\n\"788543\";\"Ljebuse\";\"other\"\n\"788543\";\"Ljebuše\";\"other\"\n\"788543\";\"Ljubusha\";\"other\"\n\"788543\";\"Lpushe\";\"other\"\n\"788543\";\"Lpushë\";\"other\"\n\"788543\";\"Lubushe\";\"other\"\n\"788543\";\"Lubushë\";\"other\"\n\"788543\";\"Lëbusha\";\"other\"\n\"788543\";\"Lëbushë\";\"other\"\n\"788543\";\"Љубуша\";\"other\"\n\"788652\";\"Lipljan\";\"main\"\n\"788652\";\"Lipjan\";\"other\"\n\"788652\";\"Liplan\";\"other\"\n\"788652\";\"Lipljane\";\"other\"\n\"788652\";\"Липљан\";\"other\"\n\"788726\";\"Lešane\";\"main\"\n\"788726\";\"Lesane\";\"ascii\"\n\"788726\";\"Leshan\";\"other\"\n\"788726\";\"Leshane\";\"other\"\n\"788726\";\"Leshtane\";\"other\"\n\"788726\";\"Лешане\";\"other\"\n\"788731\";\"Leposavić\";\"main\"\n\"788731\";\"Leposavic\";\"ascii\"\n\"788731\";\"Leposavici\";\"other\"\n\"788731\";\"Leposaviq\";\"other\"\n\"788731\";\"Leposavići\";\"other\"\n\"789199\";\"Kosuriq\";\"main\"\n\"789225\";\"Mitrovicë\";\"main\"\n\"789225\";\"Mitrovice\";\"ascii\"\n\"789225\";\"Kosovska Mitrovica\";\"other\"\n\"789225\";\"Mitrovica\";\"other\"\n\"789225\";\"Косовска Митровица\";\"other\"\n\"789227\";\"Kamenica\";\"main\"\n\"789227\";\"Dardana\";\"other\"\n\"789227\";\"Dardane\";\"other\"\n\"789227\";\"Dardanë\";\"other\"\n\"789227\";\"Gurash\";\"other\"\n\"789227\";\"Kamenice\";\"other\"\n\"789227\";\"Kamenicë\";\"other\"\n\"789227\";\"Kosovska Kamenica\";\"other\"\n\"789227\";\"Каменица\";\"other\"\n\"789228\";\"Kosovo Polje\";\"main\"\n\"789228\";\"Fushe Kosove\";\"other\"\n\"789228\";\"Fushe-Kosova\";\"other\"\n\"789228\";\"Fushë Kosovë\";\"other\"\n\"789228\";\"Fushë-Kosova\";\"other\"\n\"789228\";\"Kosovo\";\"other\"\n\"789228\";\"Kosovo Pole\";\"other\"\n\"789228\";\"Косово Поље\";\"other\"\n\"789455\";\"Klina\";\"main\"\n\"789455\";\"Kliha\";\"other\"\n\"789455\";\"Kline\";\"other\"\n\"789455\";\"Klinë\";\"other\"\n\"789455\";\"Клина\";\"other\"\n\"789721\";\"Kačanik\";\"main\"\n\"789721\";\"Kacanik\";\"ascii\"\n\"789721\";\"Kachanik\";\"other\"\n\"789721\";\"Kaçanik\";\"other\"\n\"789721\";\"Orhanye\";\"other\"\n\"789721\";\"Качаник\";\"other\"\n\"789996\";\"Istok\";\"main\"\n\"789996\";\"Burim\";\"other\"\n\"789996\";\"Burimi\";\"other\"\n\"789996\";\"Istog\";\"other\"\n\"789996\";\"Istogu\";\"other\"\n\"789996\";\"Исток\";\"other\"\n\"790002\";\"Isniq\";\"main\"\n\"790002\";\"Isniqi\";\"other\"\n\"790002\";\"Rrezari\";\"other\"\n\"790354\";\"Strellc i Epërm\";\"main\"\n\"790354\";\"Strellc i Eperm\";\"ascii\"\n\"790354\";\"Strallc i Eperm\";\"other\"\n\"790354\";\"Strallc i Epërm\";\"other\"\n\"790486\";\"Lluka e Eperme\";\"main\"\n\"790486\";\"Lluka e Epërme\";\"other\"\n\"790486\";\"Lluke e Eperme\";\"other\"\n\"790486\";\"Llukë e Epërme\";\"other\"\n\"790486\";\"Luka\";\"other\"\n\"790486\";\"Luka e Eperme\";\"other\"\n\"790486\";\"Luka e Epërme\";\"other\"\n\"790674\";\"Gjilan\";\"main\"\n\"790674\";\"Gilan\";\"other\"\n\"790674\";\"Gjilani\";\"other\"\n\"790674\";\"Gnilane\";\"other\"\n\"790674\";\"Gniljane\";\"other\"\n\"790674\";\"Gnjilane\";\"other\"\n\"790674\";\"Gnjilanė\";\"other\"\n\"790674\";\"Komuna e Gjilanit\";\"other\"\n\"790674\";\"Гњилане\";\"other\"\n\"790701\";\"Glogovac\";\"main\"\n\"790701\";\"Drenas\";\"other\"\n\"790701\";\"Drenasi\";\"other\"\n\"790701\";\"Gllogoc\";\"other\"\n\"790701\";\"Gllogoci\";\"other\"\n\"790701\";\"Gllogofc\";\"other\"\n\"790701\";\"Gllogovc\";\"other\"\n\"790701\";\"Glogovce\";\"other\"\n\"790701\";\"Глоговац\";\"other\"\n\"790704\";\"Gllogjan\";\"main\"\n\"790704\";\"Fortesa\";\"other\"\n\"790704\";\"Glacani\";\"other\"\n\"790704\";\"Gladane\";\"other\"\n\"790704\";\"Glaçani\";\"other\"\n\"790704\";\"Glađane\";\"other\"\n\"790704\";\"Gllogjani\";\"other\"\n\"790704\";\"Glodani\";\"other\"\n\"790704\";\"Glodjane\";\"other\"\n\"790704\";\"Glogjan\";\"other\"\n\"790704\";\"Glođani\";\"other\"\n\"790704\";\"Глођане\";\"other\"\n\"790977\";\"Dubovo\";\"main\"\n\"790977\";\"Driloni\";\"other\"\n\"790977\";\"Dubova\";\"other\"\n\"790977\";\"Dubove\";\"other\"\n\"790977\";\"Dubovë\";\"other\"\n\"790977\";\"Дубово\";\"other\"\n\"791043\";\"Dranoc\";\"main\"\n\"791043\";\"Drenoc\";\"other\"\n\"791043\";\"Drenoci\";\"other\"\n\"791043\";\"Drenovac\";\"other\"\n\"791043\";\"Дреновац\";\"other\"\n\"791122\";\"Dragaš\";\"main\"\n\"791122\";\"Dragas\";\"ascii\"\n\"791122\";\"Dagash\";\"other\"\n\"791122\";\"Dragash\";\"other\"\n\"791122\";\"Dragashi\";\"other\"\n\"791122\";\"Sharr\";\"other\"\n\"791122\";\"Sharri\";\"other\"\n\"791122\";\"Драгаш\";\"other\"\n\"791161\";\"Strellc i Ulët\";\"main\"\n\"791161\";\"Strellc i Ulet\";\"ascii\"\n\"791161\";\"Strellc i Poshtem\";\"other\"\n\"791161\";\"Strellc i Poshtëm\";\"other\"\n\"791483\";\"Gjinoc\";\"main\"\n\"791483\";\"Dinovce\";\"other\"\n\"791483\";\"Dzinovce\";\"other\"\n\"791483\";\"Džinovce\";\"other\"\n\"791483\";\"Gjinofc\";\"other\"\n\"791483\";\"Gjinovc\";\"other\"\n\"791483\";\"Ðinovce\";\"other\"\n\"791483\";\"Ђиновце\";\"other\"\n\"791580\";\"Deçan\";\"main\"\n\"791580\";\"Decan\";\"ascii\"\n\"791580\";\"Decani\";\"other\"\n\"791580\";\"Dekan\";\"other\"\n\"791580\";\"Deçani\";\"other\"\n\"791580\";\"Декан\";\"other\"\n\"792185\";\"Budakovo\";\"main\"\n\"792185\";\"Budakove\";\"other\"\n\"792185\";\"Budakovë\";\"other\"\n\"792185\";\"Butakove\";\"other\"\n\"792185\";\"Butakovë\";\"other\"\n\"792185\";\"Будаково\";\"other\"\n\"792409\";\"Bostane\";\"main\"\n\"792409\";\"Bostan\";\"other\"\n\"792409\";\"Bostani\";\"other\"\n\"792409\";\"Bostoni\";\"other\"\n\"792409\";\"Бостане\";\"other\"\n\"793226\";\"Papraqan\";\"main\"\n\"793226\";\"Papracane\";\"other\"\n\"793226\";\"Papraćane\";\"other\"\n\"793226\";\"Papračane\";\"other\"\n\"793226\";\"Prapacan\";\"other\"\n\"793226\";\"Prapacane\";\"other\"\n\"793226\";\"Prapacani\";\"other\"\n\"793226\";\"Prapaqan\";\"other\"\n\"793226\";\"Prapaqani\";\"other\"\n\"793226\";\"Prapaçan\";\"other\"\n\"793226\";\"Prapaçani\";\"other\"\n\"793226\";\"Prapaćan\";\"other\"\n\"793226\";\"Prapaćane\";\"other\"\n\"793226\";\"Папраћане\";\"other\"\n\"793226\";\"Прапаћане\";\"other\"\n\"830410\";\"Lloqan\";\"main\"\n\"830410\";\"Llocan\";\"other\"\n\"830410\";\"Llocani\";\"other\"\n\"830410\";\"Lloqani\";\"other\"\n\"830410\";\"Lloçan\";\"other\"\n\"830410\";\"Lloçani\";\"other\"\n\"830410\";\"Locan\";\"other\"\n\"830410\";\"Locane\";\"other\"\n\"830410\";\"Loçan\";\"other\"\n\"830410\";\"Лоћане\";\"other\"\n\"30789\";\"Al Jabīn\";\"main\"\n\"30789\";\"Al Jabin\";\"ascii\"\n\"30789\";\"Al Jabi\";\"other\"\n\"30789\";\"Al Jaby\";\"other\"\n\"30789\";\"Al Jabī\";\"other\"\n\"30789\";\"الجبين\";\"other\"\n\"69426\";\"Zinjibār\";\"main\"\n\"69426\";\"Zinjibar\";\"ascii\"\n\"69426\";\"Az Zanjabar\";\"other\"\n\"69426\";\"Az Zanjabār\";\"other\"\n\"69426\";\"Zanjibar\";\"other\"\n\"69426\";\"Zmjibar\";\"other\"\n\"69426\";\"زنجبار\";\"other\"\n\"69500\";\"Zabīd\";\"main\"\n\"69500\";\"Zabid\";\"ascii\"\n\"69500\";\"Zebid\";\"other\"\n\"69500\";\"Забид\";\"other\"\n\"69559\";\"Yarīm\";\"main\"\n\"69559\";\"Yarim\";\"ascii\"\n\"69559\";\"Jarim\";\"other\"\n\"69559\";\"Yerim\";\"other\"\n\"69559\";\"Ярим\";\"other\"\n\"70225\";\"Ta‘izz\";\"main\"\n\"70225\";\"Ta`izz\";\"ascii\"\n\"70225\";\"Ta'izz\";\"other\"\n\"70225\";\"Taiz\";\"other\"\n\"70225\";\"Taizz\";\"other\"\n\"70225\";\"Таиз\";\"other\"\n\"70225\";\"تعز\";\"other\"\n\"70979\";\"Sayyān\";\"main\"\n\"70979\";\"Sayyan\";\"ascii\"\n\"70979\";\"Saiyan\";\"other\"\n\"70979\";\"Saiyān\";\"other\"\n\"70979\";\"Seijan\";\"other\"\n\"70979\";\"Seijân\";\"other\"\n\"70979\";\"Sian\";\"other\"\n\"70979\";\"Siryan\";\"other\"\n\"70979\";\"Siryān\";\"other\"\n\"71137\";\"Sanaa\";\"main\"\n\"71137\";\"San\\\"o\";\"other\"\n\"71137\";\"San'a\";\"other\"\n\"71137\";\"San'a'\";\"other\"\n\"71137\";\"San'ah\";\"other\"\n\"71137\";\"San`a'\";\"other\"\n\"71137\";\"Sana\";\"other\"\n\"71137\";\"Sana'a\";\"other\"\n\"71137\";\"Sanaà\";\"other\"\n\"71137\";\"Sanaá\";\"other\"\n\"71137\";\"Saná\";\"other\"\n\"71137\";\"San‘a’\";\"other\"\n\"71137\";\"San’ah\";\"other\"\n\"71137\";\"sa na\";\"other\"\n\"71137\";\"sana\";\"other\"\n\"71137\";\"sanua\";\"other\"\n\"71137\";\"Şan‘ā'\";\"other\"\n\"71137\";\"Şan‘ā’\";\"other\"\n\"71137\";\"Σάνα\";\"other\"\n\"71137\";\"Сана\";\"other\"\n\"71137\";\"Санъо\";\"other\"\n\"71137\";\"צנעא\";\"other\"\n\"71137\";\"صنعاء\";\"other\"\n\"71137\";\"ሳና\";\"other\"\n\"71137\";\"サヌア\";\"other\"\n\"71137\";\"萨那\";\"other\"\n\"71137\";\"사나\";\"other\"\n\"71273\";\"Saḩar\";\"main\"\n\"71273\";\"Sahar\";\"ascii\"\n\"71334\";\"Şa‘dah\";\"main\"\n\"71334\";\"Sa`dah\";\"ascii\"\n\"71334\";\"Sa`da\";\"other\"\n\"71334\";\"Saada\";\"other\"\n\"71334\";\"Sa‘da\";\"other\"\n\"71334\";\"صعده\";\"other\"\n\"73560\";\"Laḩij\";\"main\"\n\"73560\";\"Lahij\";\"ascii\"\n\"73560\";\"Al Hawtah\";\"other\"\n\"73560\";\"Al Ḩawţah\";\"other\"\n\"73560\";\"Lahaj\";\"other\"\n\"73560\";\"Lahej\";\"other\"\n\"73560\";\"Lahj\";\"other\"\n\"73560\";\"Lakhydzh\";\"other\"\n\"73560\";\"Лахыдж\";\"other\"\n\"73560\";\"لحج\";\"other\"\n\"74219\";\"Jawf al Maqbābah\";\"main\"\n\"74219\";\"Jawf al Maqbabah\";\"ascii\"\n\"74219\";\"Al Jawf\";\"other\"\n\"74219\";\"Al Jouf\";\"other\"\n\"74219\";\"Al-Jauf\";\"other\"\n\"74219\";\"Jawf\";\"other\"\n\"74219\";\"Jawf Umm Maqbabah\";\"other\"\n\"74219\";\"Jawf Umm Maqbābah\";\"other\"\n\"74219\";\"Jawf am Maqbabah\";\"other\"\n\"74219\";\"Jawf am Maqbābah\";\"other\"\n\"74477\";\"Ibb\";\"main\"\n\"75337\";\"Ḩajjah\";\"main\"\n\"75337\";\"Hajjah\";\"ascii\"\n\"75337\";\"Hage\";\"other\"\n\"75337\";\"Haggah\";\"other\"\n\"75337\";\"Haggiah\";\"other\"\n\"75337\";\"Hajja\";\"other\"\n\"75337\";\"Hajje\";\"other\"\n\"75337\";\"Khadzh\";\"other\"\n\"75337\";\"Хадж\";\"other\"\n\"75337\";\"حجة\";\"other\"\n\"75337\";\"Ḥage\";\"other\"\n\"75337\";\"Ḥaggah\";\"other\"\n\"75337\";\"Ḥaggiah\";\"other\"\n\"75427\";\"Hadīboh\";\"main\"\n\"75427\";\"Hadiboh\";\"ascii\"\n\"75427\";\"Bilad-as-Sulyan\";\"other\"\n\"75427\";\"Hadibo\";\"other\"\n\"75427\";\"Hadibu\";\"other\"\n\"75427\";\"Hudaybu\";\"other\"\n\"75427\";\"Khadibo\";\"other\"\n\"75427\";\"Tamarida\";\"other\"\n\"75427\";\"Tamaridah\";\"other\"\n\"75427\";\"Tamarīdah\";\"other\"\n\"75427\";\"Tamrida\";\"other\"\n\"75427\";\"Хадибо\";\"other\"\n\"75427\";\"Ḩadībū\";\"other\"\n\"75427\";\"Ḩudaybū\";\"other\"\n\"76154\";\"Dhī Sufāl\";\"main\"\n\"76154\";\"Dhi Sufal\";\"ascii\"\n\"76154\";\"Dhi Sifal\";\"other\"\n\"76154\";\"Dhi as Sufal\";\"other\"\n\"76154\";\"Dhi es-Sifal\";\"other\"\n\"76154\";\"Dhī Sifal\";\"other\"\n\"76154\";\"Dhī as Sufāl\";\"other\"\n\"76154\";\"Dhī es-Sifāl\";\"other\"\n\"76184\";\"Dhamār\";\"main\"\n\"76184\";\"Dhamar\";\"ascii\"\n\"76184\";\"Damar\";\"other\"\n\"76184\";\"ذمار\";\"other\"\n\"76991\";\"Bayt al Faqīh\";\"main\"\n\"76991\";\"Bayt al Faqih\";\"ascii\"\n\"76991\";\"Bait al Faqih\";\"other\"\n\"76991\";\"Bait al Faqīh\";\"other\"\n\"76991\";\"Bayt al Fakih Ibn `Udjayl\";\"other\"\n\"76991\";\"Bayt al Fakih al-Saghir\";\"other\"\n\"76991\";\"Bayt al Fakīh Ibn ‘Udjayl\";\"other\"\n\"76991\";\"Bayt al Fakīh al-Saghīr\";\"other\"\n\"76991\";\"Bayt al-Fakih\";\"other\"\n\"76991\";\"Bayt al-Fakīh\";\"other\"\n\"76991\";\"Beit Faqih\";\"other\"\n\"76991\";\"Beit el-Faqih\";\"other\"\n\"76991\";\"Beit el-Faqīh\";\"other\"\n\"76991\";\"Beit-el-Fakih\";\"other\"\n\"77408\";\"Bājil\";\"main\"\n\"77408\";\"Bajil\";\"ascii\"\n\"77408\";\"Badjil\";\"other\"\n\"77408\";\"Bagil\";\"other\"\n\"77408\";\"Bâdjil\";\"other\"\n\"77408\";\"Bāgil\";\"other\"\n\"77726\";\"‘Ataq\";\"main\"\n\"77726\";\"`Ataq\";\"ascii\"\n\"77726\";\"Attak\";\"other\"\n\"77726\";\"عتق\";\"other\"\n\"77726\";\"‘Atāq\";\"other\"\n\"78428\";\"‘Amrān\";\"main\"\n\"78428\";\"`Amran\";\"ascii\"\n\"78428\";\"`Umran\";\"other\"\n\"78428\";\"عمران\";\"other\"\n\"78428\";\"‘Umrān\";\"other\"\n\"78751\";\"Mocha\";\"main\"\n\"78751\";\"Al Mukha\";\"other\"\n\"78751\";\"Al Mukhā\";\"other\"\n\"78751\";\"Moca\";\"other\"\n\"78751\";\"Mokha\";\"other\"\n\"78751\";\"Mokka\";\"other\"\n\"78751\";\"Mukha\";\"other\"\n\"78754\";\"Al Mukallā\";\"main\"\n\"78754\";\"Al Mukalla\";\"ascii\"\n\"78754\";\"Al'-Mukalla\";\"other\"\n\"78754\";\"Al-Mukalla\";\"other\"\n\"78754\";\"Mukalla\";\"other\"\n\"78754\";\"Аль-Мукалла\";\"other\"\n\"78754\";\"المكلا\";\"other\"\n\"78977\";\"Al Maḩwīt\";\"main\"\n\"78977\";\"Al Mahwit\";\"ascii\"\n\"78977\";\"El-Mahwit\";\"other\"\n\"78977\";\"El-Maḩwīt\";\"other\"\n\"78977\";\"Mahwait\";\"other\"\n\"78977\";\"Mahweit\";\"other\"\n\"78977\";\"Mahwit\";\"other\"\n\"78977\";\"Maḩwīt\";\"other\"\n\"78977\";\"المحويت\";\"other\"\n\"79415\";\"Al Ḩudaydah\";\"main\"\n\"79415\";\"Al Hudaydah\";\"ascii\"\n\"79415\";\"El-Hodeidah\";\"other\"\n\"79415\";\"El-Ḥodeidah\";\"other\"\n\"79415\";\"Hodaidah\";\"other\"\n\"79415\";\"Hodeida\";\"other\"\n\"79415\";\"Hudaida\";\"other\"\n\"79415\";\"Hudaydah\";\"other\"\n\"79415\";\"hdydh\";\"other\"\n\"79415\";\"الحديدة\";\"other\"\n\"79415\";\"حدیده\";\"other\"\n\"79415\";\"Ḩudaydah\";\"other\"\n\"79455\";\"Al Ḩazm\";\"main\"\n\"79455\";\"Al Hazm\";\"ascii\"\n\"79455\";\"El-Hazm\";\"other\"\n\"79455\";\"El-Ḥazm\";\"other\"\n\"79455\";\"Hazm\";\"other\"\n\"79455\";\"الحزم\";\"other\"\n\"79700\";\"Al Ghayḑah\";\"main\"\n\"79700\";\"Al Ghaydah\";\"ascii\"\n\"79700\";\"Ghaidha\";\"other\"\n\"79700\";\"الغيضة\";\"other\"\n\"79836\";\"Al Bayḑā’\";\"main\"\n\"79836\";\"Al Bayda'\";\"ascii\"\n\"79836\";\"Al Beidha\";\"other\"\n\"79836\";\"Al-Baida\";\"other\"\n\"79836\";\"Al-Baidhah\";\"other\"\n\"79836\";\"Al-Baidā\";\"other\"\n\"79836\";\"Beida\";\"other\"\n\"79836\";\"Beidha\";\"other\"\n\"79836\";\"البيضاء\";\"other\"\n\"80384\";\"Aḑ Ḑāl‘a\";\"main\"\n\"80384\";\"Ad Dal`a\";\"ascii\"\n\"80384\";\"Adh Dhala`\";\"other\"\n\"80384\";\"Adh Dhāla‘\";\"other\"\n\"80384\";\"Dali`\";\"other\"\n\"80384\";\"Dhala\";\"other\"\n\"80384\";\"Dhalie\";\"other\"\n\"80384\";\"الضالع\";\"other\"\n\"80384\";\"Ḑāli‘\";\"other\"\n\"415189\";\"‘Adan\";\"main\"\n\"415189\";\"`Adan\";\"ascii\"\n\"415189\";\"Adem\";\"other\"\n\"415189\";\"Aden\";\"other\"\n\"415189\";\"Adeno\";\"other\"\n\"415189\";\"Adén\";\"other\"\n\"415189\";\"Adén - عدن\";\"other\"\n\"415189\";\"aden\";\"other\"\n\"415189\";\"ya ding\";\"other\"\n\"415189\";\"Áden\";\"other\"\n\"415189\";\"Аден\";\"other\"\n\"415189\";\"עדן\";\"other\"\n\"415189\";\"عدن\";\"other\"\n\"415189\";\"アデン\";\"other\"\n\"415189\";\"亚丁\";\"other\"\n\"415189\";\"아덴\";\"other\"\n\"921815\";\"Mamoudzou\";\"main\"\n\"921815\";\"Mambutzou\";\"other\"\n\"921815\";\"Mamoutzou\";\"other\"\n\"921815\";\"Mamudzu\";\"other\"\n\"921815\";\"Mamutzu\";\"other\"\n\"921815\";\"Мамудзу\";\"other\"\n\"1090119\";\"Bandraboua\";\"main\"\n\"1090119\";\"M'Gombani\";\"other\"\n\"1090126\";\"Mtsamboro\";\"main\"\n\"1090126\";\"M'Zamboro\";\"other\"\n\"1090126\";\"M’Zamboro\";\"other\"\n\"1090140\";\"Acoua\";\"main\"\n\"1090140\";\"Accua\";\"other\"\n\"1090177\";\"Tsingoni\";\"main\"\n\"1090225\";\"Koungou\";\"main\"\n\"1090225\";\"Kongo\";\"other\"\n\"1090272\";\"Dzaoudzi\";\"main\"\n\"1090283\";\"Pamandzi\";\"main\"\n\"1090311\";\"Ouangani\";\"main\"\n\"1090322\";\"Chiconi\";\"main\"\n\"1090340\";\"Sada\";\"main\"\n\"1090397\";\"Bandrélé\";\"main\"\n\"1090397\";\"Bandrele\";\"ascii\"\n\"1090415\";\"Chirongui\";\"main\"\n\"1090467\";\"Bouéni\";\"main\"\n\"1090467\";\"Boueni\";\"ascii\"\n\"1090476\";\"Kani Kéli\";\"main\"\n\"1090476\";\"Kani Keli\";\"ascii\"\n\"936374\";\"Roodepoort\";\"main\"\n\"936374\";\"Roodeport-Maraisburg\";\"other\"\n\"937136\";\"Zeerust\";\"main\"\n\"937246\";\"Zastron\";\"main\"\n\"938457\";\"Wolmaransstad\";\"main\"\n\"938457\";\"Wolmaranstad\";\"other\"\n\"938694\";\"White River\";\"main\"\n\"938694\";\"Witrivier\";\"other\"\n\"939270\";\"Witbank\";\"main\"\n\"939608\";\"Winburg\";\"main\"\n\"939676\";\"Willowmore\";\"main\"\n\"940186\";\"Whittlesea\";\"main\"\n\"940316\";\"Westonaria\";\"main\"\n\"940316\";\"Vestonarija\";\"other\"\n\"940316\";\"Вестонария\";\"other\"\n\"940424\";\"Wesselsbron\";\"main\"\n\"940909\";\"Welkom\";\"main\"\n\"941931\";\"Warrenton\";\"main\"\n\"941966\";\"Warmbaths\";\"main\"\n\"941966\";\"Warmbad\";\"other\"\n\"942470\";\"Vryheid\";\"main\"\n\"942511\";\"Vryburg\";\"main\"\n\"942511\";\"Frejburga\";\"other\"\n\"942511\";\"Фрейбурга\";\"other\"\n\"942683\";\"Vredefort\";\"main\"\n\"942701\";\"Vrede\";\"main\"\n\"943032\";\"Volksrust\";\"main\"\n\"943032\";\"Volkrust\";\"other\"\n\"943882\";\"Virginia\";\"main\"\n\"943882\";\"Virdzhinija\";\"other\"\n\"943882\";\"Вирджиния\";\"other\"\n\"943937\";\"Villiers\";\"main\"\n\"943960\";\"Viljoenskroon\";\"main\"\n\"944385\";\"Vereeniging\";\"main\"\n\"944385\";\"Ferinikhing\";\"other\"\n\"944385\";\"Феринихинг\";\"other\"\n\"944540\";\"Ventersburg\";\"main\"\n\"944986\";\"Vanderbijlpark\";\"main\"\n\"945813\";\"Utrecht\";\"main\"\n\"945945\";\"Upington\";\"main\"\n\"946058\";\"Umtata\";\"main\"\n\"946058\";\"Умтата\";\"other\"\n\"946128\";\"Umkomaas\";\"main\"\n\"946257\";\"Ulundi\";\"main\"\n\"946257\";\"Улунди\";\"other\"\n\"946877\";\"Uitenhage\";\"main\"\n\"946973\";\"Tzaneen\";\"main\"\n\"949026\";\"Thulamahashi\";\"main\"\n\"949224\";\"Thohoyandou\";\"main\"\n\"949282\";\"Theunissen\";\"main\"\n\"949282\";\"Tenissen\";\"other\"\n\"949282\";\"Тениссен\";\"other\"\n\"949683\";\"Thabazimbi\";\"main\"\n\"949703\";\"Thaba Nchu\";\"main\"\n\"949703\";\"Thabantsjoe\";\"other\"\n\"949880\";\"Tembisa\";\"main\"\n\"950709\";\"Swellendam\";\"main\"\n\"951441\";\"Sundumbili\";\"main\"\n\"951650\";\"Stutterheim\";\"main\"\n\"952192\";\"Stilfontein\";\"main\"\n\"952734\";\"Stanger\";\"main\"\n\"952734\";\"KwaDukuza\";\"other\"\n\"952734\";\"Stanger Station\";\"other\"\n\"952747\";\"Standerton\";\"main\"\n\"952747\";\"Standerston\";\"other\"\n\"952865\";\"Springs\";\"main\"\n\"953781\";\"Soweto\";\"main\"\n\"953781\";\"Mpanzaville\";\"other\"\n\"953781\";\"Souehto\";\"other\"\n\"953781\";\"Sovetas\";\"other\"\n\"953781\";\"swwtw\";\"other\"\n\"953781\";\"Соуэто\";\"other\"\n\"953781\";\"סווטו\";\"other\"\n\"954161\";\"Somerset East\";\"main\"\n\"954161\";\"Somerset-Oos\";\"other\"\n\"955313\";\"Siyabuswa\";\"main\"\n\"956507\";\"Senekal\";\"main\"\n\"956767\";\"Secunda\";\"main\"\n\"956767\";\"Sekunda\";\"other\"\n\"956767\";\"Секунда\";\"other\"\n\"956878\";\"Scottburgh\";\"main\"\n\"956878\";\"Scottburg\";\"other\"\n\"956878\";\"Scottsburgh\";\"other\"\n\"956907\";\"Schweizer-Reineke\";\"main\"\n\"956907\";\"Schweizer-Reneke\";\"other\"\n\"957487\";\"Sasolburg\";\"main\"\n\"957655\";\"Sandton\";\"main\"\n\"957655\";\"Sendton\";\"other\"\n\"957655\";\"Сендтон\";\"other\"\n\"958724\";\"Rustenburg\";\"main\"\n\"958724\";\"Рустенбург\";\"other\"\n\"961226\";\"Ritchie\";\"main\"\n\"962330\";\"Richmond\";\"main\"\n\"962367\";\"Richards Bay\";\"main\"\n\"962367\";\"Richardsbaai\";\"other\"\n\"962847\";\"Reitz\";\"main\"\n\"963230\";\"Randfontein\";\"main\"\n\"963516\";\"Queenstown\";\"main\"\n\"963516\";\"Kvinstaun\";\"other\"\n\"963516\";\"Квинстаун\";\"other\"\n\"963525\";\"Queensdale\";\"main\"\n\"964090\";\"Prieska\";\"main\"\n\"964137\";\"Pretoria\";\"main\"\n\"964137\";\"Cvaneo\";\"other\"\n\"964137\";\"Pretoria/Pole tou Akroteriou\";\"other\"\n\"964137\";\"Pretorija\";\"other\"\n\"964137\";\"Pretòria\";\"other\"\n\"964137\";\"Pretória\";\"other\"\n\"964137\";\"Pta\";\"other\"\n\"964137\";\"Tshwane\";\"other\"\n\"964137\";\"brytwrya\";\"other\"\n\"964137\";\"peulitolia\";\"other\"\n\"964137\";\"phri thx reiy\";\"other\"\n\"964137\";\"prtwryh\";\"other\"\n\"964137\";\"puretoria\";\"other\"\n\"964137\";\"Ĉvaneo\";\"other\"\n\"964137\";\"Πρετόρια/Πόλη του Ακρωτηρίου\";\"other\"\n\"964137\";\"Претория\";\"other\"\n\"964137\";\"Преторија\";\"other\"\n\"964137\";\"פרטוריה\";\"other\"\n\"964137\";\"بريتوريا\";\"other\"\n\"964137\";\"پرېتورىيە\";\"other\"\n\"964137\";\"พริทอเรีย\";\"other\"\n\"964137\";\"ፕሪቶሪያ\";\"other\"\n\"964137\";\"プレトリア\";\"other\"\n\"964137\";\"프리토리아\";\"other\"\n\"964315\";\"Potgietersrus\";\"main\"\n\"964315\";\"Potgietersrust\";\"other\"\n\"964315\";\"Potgitersrus\";\"other\"\n\"964315\";\"Потгитерсрус\";\"other\"\n\"964349\";\"Potchefstroom\";\"main\"\n\"964349\";\"Pochefstrum\";\"other\"\n\"964349\";\"Почефструм\";\"other\"\n\"964406\";\"Port Shepstone\";\"main\"\n\"964408\";\"Port Saint John’s\";\"main\"\n\"964408\";\"Port Saint John's\";\"ascii\"\n\"964408\";\"Umzimvubu\";\"other\"\n\"964420\";\"Port Elizabeth\";\"main\"\n\"964420\";\"Port Elizabet\";\"other\"\n\"964420\";\"Port Elizabetas\";\"other\"\n\"964420\";\"Порт Елизабет\";\"other\"\n\"964432\";\"Port Alfred\";\"main\"\n\"964432\";\"Kowie\";\"other\"\n\"964432\";\"The Kowie\";\"other\"\n\"964712\";\"Plettenberg Bay\";\"main\"\n\"964712\";\"Formosa\";\"other\"\n\"964712\";\"Plettenberg\";\"other\"\n\"964712\";\"Plettenbergbaai\";\"other\"\n\"965241\";\"Piet Retief\";\"main\"\n\"965289\";\"Polokwane\";\"main\"\n\"965289\";\"Pietersburg\";\"other\"\n\"965289\";\"Polokvane\";\"other\"\n\"965289\";\"Polokvanė\";\"other\"\n\"965289\";\"Полокване\";\"other\"\n\"965301\";\"Pietermaritzburg\";\"main\"\n\"965301\";\"Maritzburg\";\"other\"\n\"965301\";\"Pietermaritsburg\";\"other\"\n\"965301\";\"Pitermaricburg\";\"other\"\n\"965301\";\"Pitermaricburgas\";\"other\"\n\"965301\";\"Питермарицбург\";\"other\"\n\"965401\";\"Phuthaditjhaba\";\"main\"\n\"965401\";\"Phutaditjhaba\";\"other\"\n\"965528\";\"Phalaborwa\";\"main\"\n\"965528\";\"Palabora\";\"other\"\n\"965528\";\"Palaborva\";\"other\"\n\"965528\";\"Палаборва\";\"other\"\n\"966166\";\"Parys\";\"main\"\n\"966166\";\"Paris\";\"other\"\n\"966166\";\"Парис\";\"other\"\n\"966380\";\"Pampierstad\";\"main\"\n\"966380\";\"Pampierstat\";\"other\"\n\"967106\";\"Oudtshoorn\";\"main\"\n\"967476\";\"Orkney\";\"main\"\n\"967476\";\"Eastleigh\";\"other\"\n\"967476\";\"Orknejskie\";\"other\"\n\"967476\";\"Оркнейские\";\"other\"\n\"967580\";\"Orange Farm\";\"main\"\n\"968665\";\"Nylstroom\";\"main\"\n\"970341\";\"Nkowakowa\";\"main\"\n\"970566\";\"Nigel\";\"main\"\n\"970566\";\"Najdzhel\";\"other\"\n\"970566\";\"Найджел\";\"other\"\n\"971421\";\"Newcastle\";\"main\"\n\"971534\";\"Nelspruit\";\"main\"\n\"971534\";\"Nelsprutas\";\"other\"\n\"971534\";\"nerusupuroito\";\"other\"\n\"971534\";\"Нелспруит\";\"other\"\n\"971534\";\"ネルスプロイト\";\"other\"\n\"972673\";\"Muldersdriseloop\";\"main\"\n\"973111\";\"Mpumalanga\";\"main\"\n\"973139\";\"Mpophomeni\";\"main\"\n\"974222\";\"Mooirivier\";\"main\"\n\"974222\";\"Mooi River\";\"other\"\n\"974670\";\"Mondlo\";\"main\"\n\"974719\";\"Molteno\";\"main\"\n\"975144\";\"Modderfontein\";\"main\"\n\"975436\";\"Mmabatho\";\"main\"\n\"975436\";\"Mabatho\";\"other\"\n\"975436\";\"Mbabatho\";\"other\"\n\"976358\";\"Middelburg\";\"main\"\n\"976361\";\"Middelburg\";\"main\"\n\"976361\";\"Middelberg\";\"other\"\n\"976885\";\"Messina\";\"main\"\n\"978677\";\"Marquard\";\"main\"\n\"978895\";\"Margate\";\"main\"\n\"978895\";\"Berkleys\";\"other\"\n\"978895\";\"Margate No. 4\";\"other\"\n\"979365\";\"Mankoeng\";\"main\"\n\"980921\";\"Mabopane\";\"main\"\n\"981158\";\"Lydenburg\";\"main\"\n\"981827\";\"Louis Trichardt\";\"main\"\n\"982899\";\"Lichtenburg\";\"main\"\n\"982899\";\"Likhtenburge\";\"other\"\n\"982899\";\"Лихтенбурге\";\"other\"\n\"984087\";\"Lebowakgomo\";\"main\"\n\"985011\";\"Lady Frere\";\"main\"\n\"985015\";\"Ladybrand\";\"main\"\n\"986083\";\"Kutloanong\";\"main\"\n\"986134\";\"Kuruman\";\"main\"\n\"986717\";\"Kruisfontein\";\"main\"\n\"986822\";\"Krugersdorp\";\"main\"\n\"986822\";\"Krjugersdorpa\";\"other\"\n\"986822\";\"Krugersdorpas\";\"other\"\n\"986822\";\"Крюгерсдорпа\";\"other\"\n\"986846\";\"Kroonstad\";\"main\"\n\"987202\";\"Kriel\";\"main\"\n\"987648\";\"Koster\";\"main\"\n\"987875\";\"Koppies\";\"main\"\n\"987875\";\"Kopjes\";\"other\"\n\"988290\";\"Komatipoort\";\"main\"\n\"988356\";\"Kokstad\";\"main\"\n\"988698\";\"Knysna\";\"main\"\n\"988698\";\"De Nysna\";\"other\"\n\"989921\";\"Klerksdorp\";\"main\"\n\"989921\";\"Клерксдорп\";\"other\"\n\"990802\";\"Kirkwood\";\"main\"\n\"990930\";\"Kimberley\";\"main\"\n\"990930\";\"Kimberli\";\"other\"\n\"990930\";\"Kimberlis\";\"other\"\n\"990930\";\"kimbeolli\";\"other\"\n\"990930\";\"Кимберли\";\"other\"\n\"990930\";\"킴벌리\";\"other\"\n\"991664\";\"Kathu\";\"main\"\n\"993800\";\"Johannesburg\";\"main\"\n\"993800\";\"EGoli\";\"other\"\n\"993800\";\"IGoli\";\"other\"\n\"993800\";\"Jo'anna\";\"other\"\n\"993800\";\"Joanesburgo\";\"other\"\n\"993800\";\"Joburg\";\"other\"\n\"993800\";\"Johanesburgas\";\"other\"\n\"993800\";\"Johanesburgo\";\"other\"\n\"993800\";\"Johannesarborg\";\"other\"\n\"993800\";\"Johannesbourg\";\"other\"\n\"993800\";\"Johannesburgo\";\"other\"\n\"993800\";\"Jokhanesburg\";\"other\"\n\"993800\";\"Jokhanezburg\";\"other\"\n\"993800\";\"Jokhannesburg\";\"other\"\n\"993800\";\"J·ohanesbôrg\";\"other\"\n\"993800\";\"Jóhannesarborg\";\"other\"\n\"993800\";\"jwhansbrgh\";\"other\"\n\"993800\";\"yohaneseubeogeu\";\"other\"\n\"993800\";\"yohanesuburugu\";\"other\"\n\"993800\";\"yue han nei si bao\";\"other\"\n\"993800\";\"ywhnsbwrg\";\"other\"\n\"993800\";\"zhwhansbwrg\";\"other\"\n\"993800\";\"Јоханезбург\";\"other\"\n\"993800\";\"Јоханесбург\";\"other\"\n\"993800\";\"Йоханесбург\";\"other\"\n\"993800\";\"Йоханнесбург\";\"other\"\n\"993800\";\"יוהנסבורג\";\"other\"\n\"993800\";\"جوهانسبرغ\";\"other\"\n\"993800\";\"يوھاننېسبۇرگ\";\"other\"\n\"993800\";\"ژوهانسبورگ\";\"other\"\n\"993800\";\"ヨハネスブルグ\";\"other\"\n\"993800\";\"约翰内斯堡\";\"other\"\n\"993800\";\"요하네스버그\";\"other\"\n\"993911\";\"Jeffrey’s Bay\";\"main\"\n\"993911\";\"Jeffrey's Bay\";\"ascii\"\n\"993911\";\"Jeffreysbaai\";\"other\"\n\"994023\";\"Jan Kempdorp\";\"main\"\n\"994023\";\"Andalusia\";\"other\"\n\"994023\";\"Jan Kemp\";\"other\"\n\"994939\";\"Ilinge\";\"main\"\n\"995202\";\"Howick\";\"main\"\n\"995573\";\"Hoopstad\";\"main\"\n\"996918\";\"Hennenman\";\"main\"\n\"996930\";\"Hendrina\";\"main\"\n\"997140\";\"Heilbron\";\"main\"\n\"997151\";\"Heidelberg\";\"main\"\n\"997151\";\"Gejdel'berg\";\"other\"\n\"997151\";\"Heidelburg\";\"other\"\n\"997151\";\"Гейдельберг\";\"other\"\n\"997751\";\"Harrismith\";\"main\"\n\"1000006\";\"Greytown\";\"main\"\n\"1000501\";\"Grahamstown\";\"main\"\n\"1000501\";\"Grahamstad\";\"other\"\n\"1000543\";\"Graaff-Reinet\";\"main\"\n\"1000543\";\"Graaf Reinet\";\"other\"\n\"1000543\";\"Graaff Reinet\";\"other\"\n\"1001736\";\"Glencoe\";\"main\"\n\"1001860\";\"Giyani\";\"main\"\n\"1001860\";\"Giyane\";\"other\"\n\"1002145\";\"George\";\"main\"\n\"1002145\";\"Dzhordzh\";\"other\"\n\"1002145\";\"Джордж\";\"other\"\n\"1002851\";\"Ga-Rankuwa\";\"main\"\n\"1003462\";\"GAKGAPANE\";\"main\"\n\"1003462\";\"Ga-Kgapane\";\"other\"\n\"1003764\";\"Frankfort\";\"main\"\n\"1003953\";\"Fort Beaufort\";\"main\"\n\"1004109\";\"Fochville\";\"main\"\n\"1005029\";\"eSikhawini\";\"main\"\n\"1005029\";\"Esikhawini Township\";\"other\"\n\"1005040\";\"Eshowe\";\"main\"\n\"1005125\";\"Ermelo\";\"main\"\n\"1005125\";\"Ehrmelo\";\"other\"\n\"1005125\";\"Эрмело\";\"other\"\n\"1005544\";\"Empangeni\";\"main\"\n\"1005646\";\"eMbalenhle\";\"main\"\n\"1005768\";\"Ellisras\";\"main\"\n\"1005781\";\"Elliot\";\"main\"\n\"1006420\";\"Ekuvukeni\";\"main\"\n\"1006984\";\"East London\";\"main\"\n\"1006984\";\"Buffalo City\";\"other\"\n\"1006984\";\"Oos Londen\";\"other\"\n\"1006984\";\"Oost-Londen\";\"other\"\n\"1006984\";\"Yst Londonas\";\"other\"\n\"1007311\";\"Durban\";\"main\"\n\"1007311\";\"Durbanas\";\"other\"\n\"1007311\";\"IThekwini\";\"other\"\n\"1007311\";\"Port Natal\";\"other\"\n\"1007311\";\"daban\";\"other\"\n\"1007311\";\"de ban\";\"other\"\n\"1007311\";\"Дурбан\";\"other\"\n\"1007311\";\"ڈربن\";\"other\"\n\"1007311\";\"ダーバン\";\"other\"\n\"1007311\";\"德班\";\"other\"\n\"1007400\";\"Dundee\";\"main\"\n\"1007400\";\"Dandi\";\"other\"\n\"1007400\";\"Данди\";\"other\"\n\"1007514\";\"Duiwelskloof\";\"main\"\n\"1007514\";\"Duivelskloof\";\"other\"\n\"1007514\";\"Duweiskloof\";\"other\"\n\"1008261\";\"Driefontein\";\"main\"\n\"1008858\";\"Dordrecht\";\"main\"\n\"1010962\";\"Deneysville\";\"main\"\n\"1010962\";\"Denysville\";\"other\"\n\"1011031\";\"Delmas\";\"main\"\n\"1011031\";\"Del'mas\";\"other\"\n\"1011031\";\"Дельмас\";\"other\"\n\"1011632\";\"De Aar\";\"main\"\n\"1011918\";\"Daniëlskuil\";\"main\"\n\"1011918\";\"Danielskuil\";\"ascii\"\n\"1012413\";\"Cullinan\";\"main\"\n\"1012413\";\"Kullinan\";\"other\"\n\"1012413\";\"Куллинан\";\"other\"\n\"1012600\";\"Cradock\";\"main\"\n\"1013076\";\"Colesberg\";\"main\"\n\"1013076\";\"Colesberg Dorp\";\"other\"\n\"1013076\";\"Colesberg Town\";\"other\"\n\"1013266\";\"Clocolan\";\"main\"\n\"1013550\";\"Christiana\";\"main\"\n\"1014034\";\"Carnarvon\";\"main\"\n\"1014073\";\"Carletonville\";\"main\"\n\"1014489\";\"Butterworth\";\"main\"\n\"1014489\";\"Battervorta\";\"other\"\n\"1014489\";\"Gcuwa\";\"other\"\n\"1014489\";\"Баттерворта\";\"other\"\n\"1014653\";\"Burgersdorp\";\"main\"\n\"1014653\";\"Burgersdorf\";\"other\"\n\"1014653\";\"Burghersdorp\";\"other\"\n\"1015504\";\"Bronkhorstspruit\";\"main\"\n\"1015504\";\"Erasmus\";\"other\"\n\"1015621\";\"Brits\";\"main\"\n\"1015621\";\"Britancy\";\"other\"\n\"1015621\";\"Британцы\";\"other\"\n\"1015694\";\"Breyten\";\"main\"\n\"1015694\";\"Breyton\";\"other\"\n\"1015776\";\"Bredasdorp\";\"main\"\n\"1015969\";\"Brandfort\";\"main\"\n\"1016181\";\"Brakpan\";\"main\"\n\"1016670\";\"Botshabelo\";\"main\"\n\"1016698\";\"Bothaville\";\"main\"\n\"1016698\";\"Botavill'\";\"other\"\n\"1016698\";\"Ботавилль\";\"other\"\n\"1017780\";\"Boksburg\";\"main\"\n\"1018673\";\"Bloemhof\";\"main\"\n\"1018725\";\"Bloemfontein\";\"main\"\n\"1018725\";\"Blumfonteinas\";\"other\"\n\"1018725\";\"Blumfontejn\";\"other\"\n\"1018725\";\"Mploumphontein\";\"other\"\n\"1018725\";\"blwmpwntyyn\";\"other\"\n\"1018725\";\"bu long fang dan\";\"other\"\n\"1018725\";\"burumufonten\";\"other\"\n\"1018725\";\"Μπλουμφοντέιν\";\"other\"\n\"1018725\";\"Блумфонтейн\";\"other\"\n\"1018725\";\"Блумфонтејн\";\"other\"\n\"1018725\";\"בלומפונטיין\";\"other\"\n\"1018725\";\"ブルームフォンテーン\";\"other\"\n\"1018725\";\"布隆方丹\";\"other\"\n\"1019330\";\"Bhisho\";\"main\"\n\"1019330\";\"Bisho\";\"other\"\n\"1019330\";\"Biso\";\"other\"\n\"1019330\";\"Bišo\";\"other\"\n\"1019330\";\"Бишо\";\"other\"\n\"1019704\";\"Bethlehem\";\"main\"\n\"1019704\";\"Vifleem\";\"other\"\n\"1019704\";\"Вифлеем\";\"other\"\n\"1019760\";\"Bethal\";\"main\"\n\"1020066\";\"Berea\";\"main\"\n\"1020098\";\"Benoni\";\"main\"\n\"1020340\";\"Belfast\";\"main\"\n\"1020641\";\"Beaufort West\";\"main\"\n\"1020641\";\"Beaufort-Wes\";\"other\"\n\"1021040\";\"Barkly West\";\"main\"\n\"1021040\";\"Barkly-Wes\";\"other\"\n\"1021086\";\"Barberton\";\"main\"\n\"1021360\";\"Ballitoville\";\"main\"\n\"1021396\";\"Balfour\";\"main\"\n\"1021396\";\"Bal'fur\";\"other\"\n\"1021396\";\"Бальфур\";\"other\"\n\"1023287\";\"Allanridge\";\"main\"\n\"1023309\";\"Aliwal North\";\"main\"\n\"1023309\";\"Aliwal-Noord\";\"other\"\n\"1023332\";\"Alice\";\"main\"\n\"1023656\";\"Adelaide\";\"main\"\n\"1105726\";\"Ekangala\";\"main\"\n\"1105776\";\"Midrand\";\"main\"\n\"1105776\";\"Мидранд\";\"other\"\n\"1105777\";\"Centurion\";\"main\"\n\"1105777\";\"Verwoerdburg\";\"other\"\n\"1105777\";\"centurion\";\"other\"\n\"1105777\";\"Центурион\";\"other\"\n\"3359041\";\"Worcester\";\"main\"\n\"3359041\";\"Vuster\";\"other\"\n\"3359041\";\"Вустер\";\"other\"\n\"3359736\";\"Vredendal\";\"main\"\n\"3361025\";\"Stellenbosch\";\"main\"\n\"3361025\";\"Stellenbos\";\"other\"\n\"3361025\";\"Стелленбос\";\"other\"\n\"3361142\";\"Springbok\";\"main\"\n\"3361142\";\"Springbok Fontein\";\"other\"\n\"3361934\";\"Saldanha\";\"main\"\n\"3361934\";\"Hoedjes Bay\";\"other\"\n\"3361934\";\"Hoedjesbaai\";\"other\"\n\"3361934\";\"Hoetjes Bay\";\"other\"\n\"3361934\";\"Saldana\";\"other\"\n\"3361934\";\"Салдана\";\"other\"\n\"3362024\";\"Rosebank\";\"main\"\n\"3363613\";\"Noorder-Paarl\";\"main\"\n\"3364346\";\"Malmesbury\";\"main\"\n\"3366880\";\"Hermanus\";\"main\"\n\"3366880\";\"Mpumalanga\";\"other\"\n\"3366880\";\"Мпумаланга\";\"other\"\n\"3367513\";\"Grabouw\";\"main\"\n\"3369056\";\"Constantia\";\"main\"\n\"3369098\";\"Claremont\";\"main\"\n\"3369129\";\"Ceres\";\"main\"\n\"3369129\";\"Cerera\";\"other\"\n\"3369129\";\"Церера\";\"other\"\n\"3369157\";\"Cape Town\";\"main\"\n\"3369157\";\"Cidade do Cabo\";\"other\"\n\"3369157\";\"Cidade do Cabo - Cape Town\";\"other\"\n\"3369157\";\"Citta del Capo\";\"other\"\n\"3369157\";\"Città del Capo\";\"other\"\n\"3369157\";\"Ciuda del Cabu\";\"other\"\n\"3369157\";\"Ciudad del Cabo\";\"other\"\n\"3369157\";\"Ciudá del Cabu\";\"other\"\n\"3369157\";\"Ciutat del Cap\";\"other\"\n\"3369157\";\"El Cabo\";\"other\"\n\"3369157\";\"Fokvaros\";\"other\"\n\"3369157\";\"Fokváros\";\"other\"\n\"3369157\";\"Hoefdaborg\";\"other\"\n\"3369157\";\"Höfðaborg\";\"other\"\n\"3369157\";\"IKapa\";\"other\"\n\"3369157\";\"Kaapstad\";\"other\"\n\"3369157\";\"Kaburbo\";\"other\"\n\"3369157\";\"Kapkaupunki\";\"other\"\n\"3369157\";\"Kaplinn\";\"other\"\n\"3369157\";\"Kapske Mesto\";\"other\"\n\"3369157\";\"Kapské Mesto\";\"other\"\n\"3369157\";\"Kapské Město\";\"other\"\n\"3369157\";\"Kapstad\";\"other\"\n\"3369157\";\"Kapstaden\";\"other\"\n\"3369157\";\"Kapstadt\";\"other\"\n\"3369157\";\"Kapsztad\";\"other\"\n\"3369157\";\"Keiptauna\";\"other\"\n\"3369157\";\"Keiptaunas\";\"other\"\n\"3369157\";\"Kejptaun\";\"other\"\n\"3369157\";\"Le Cap\";\"other\"\n\"3369157\";\"Lo Cap\";\"other\"\n\"3369157\";\"Lurmutur Hiria\";\"other\"\n\"3369157\";\"Lé Cap\";\"other\"\n\"3369157\";\"Tref y Penrhyn\";\"other\"\n\"3369157\";\"iKapa\";\"other\"\n\"3369157\";\"kai pu dun\";\"other\"\n\"3369157\";\"keipeutaun\";\"other\"\n\"3369157\";\"keputaun\";\"other\"\n\"3369157\";\"kyb tawn\";\"other\"\n\"3369157\";\"Кейптаун\";\"other\"\n\"3369157\";\"Кејптаун\";\"other\"\n\"3369157\";\"קייפטאון\";\"other\"\n\"3369157\";\"كاپېتوۋن\";\"other\"\n\"3369157\";\"كيب تاون\";\"other\"\n\"3369157\";\"ケープタウン\";\"other\"\n\"3369157\";\"開普敦\";\"other\"\n\"3369157\";\"케이프타운\";\"other\"\n\"3369174\";\"Calvinia\";\"main\"\n\"3369179\";\"Caledon\";\"main\"\n\"3370352\";\"Atlantis\";\"main\"\n\"3370352\";\"Atlantida\";\"other\"\n\"3370352\";\"Атлантида\";\"other\"\n\"6942529\";\"Sunset Beach\";\"main\"\n\"175499\";\"Nchelenge\";\"main\"\n\"175499\";\"Нчеленге\";\"other\"\n\"175555\";\"Nakonde\";\"main\"\n\"175961\";\"Mpulungu\";\"main\"\n\"175961\";\"Mpolungu\";\"other\"\n\"175967\";\"Mporokoso\";\"main\"\n\"175967\";\"Mpolokoso\";\"other\"\n\"176146\";\"Mbala\";\"main\"\n\"176146\";\"Abercorn\";\"other\"\n\"176146\";\"Мбала\";\"other\"\n\"176555\";\"Kawambwa\";\"main\"\n\"176555\";\"Kawamowa\";\"other\"\n\"176758\";\"Kaputa\";\"main\"\n\"895953\";\"Zambezi\";\"main\"\n\"895953\";\"Balovale\";\"other\"\n\"895953\";\"Rio Zambeze\";\"other\"\n\"895953\";\"Sambesi\";\"other\"\n\"895953\";\"Sambesí\";\"other\"\n\"895953\";\"Zambesi\";\"other\"\n\"895953\";\"Zambeze\";\"other\"\n\"895953\";\"Zambezė\";\"other\"\n\"895953\";\"Zambèze\";\"other\"\n\"895953\";\"Zambézi\";\"other\"\n\"895953\";\"zan bi xi he\";\"other\"\n\"895953\";\"zanbeji chuan\";\"other\"\n\"895953\";\"zmbzy\";\"other\"\n\"895953\";\"Замбези\";\"other\"\n\"895953\";\"Замбезі\";\"other\"\n\"895953\";\"זמבזי\";\"other\"\n\"895953\";\"ザンベジ川\";\"other\"\n\"895953\";\"赞比西河\";\"other\"\n\"897045\";\"Solwezi\";\"main\"\n\"897456\";\"Sinazongwe\";\"main\"\n\"897456\";\"Sinasongwe\";\"other\"\n\"898188\";\"Siavonga\";\"main\"\n\"898188\";\"Chapvonga\";\"other\"\n\"898905\";\"Sesheke\";\"main\"\n\"898905\";\"Shesheke\";\"other\"\n\"898905\";\"Sisheke\";\"other\"\n\"898905\";\"Шешеке\";\"other\"\n\"898912\";\"Serenje\";\"main\"\n\"898947\";\"Senanga\";\"main\"\n\"898947\";\"Sinanga\";\"other\"\n\"899274\";\"Samfya\";\"main\"\n\"899825\";\"Petauke\";\"main\"\n\"900056\";\"Nyimba\";\"main\"\n\"901344\";\"Ndola\";\"main\"\n\"901344\";\"Ндола\";\"other\"\n\"901766\";\"Namwala\";\"main\"\n\"902344\";\"Nakambala\";\"main\"\n\"902620\";\"Mwinilunga\";\"main\"\n\"902620\";\"Wwinilunga\";\"other\"\n\"902721\";\"Mwense\";\"main\"\n\"904241\";\"Mungwi\";\"main\"\n\"904422\";\"Mumbwa\";\"main\"\n\"905382\";\"Mufumbwe\";\"main\"\n\"905395\";\"Mufulira\";\"main\"\n\"905395\";\"Mufulire\";\"other\"\n\"905395\";\"Муфулире\";\"other\"\n\"905789\";\"Mpongwe\";\"main\"\n\"905846\";\"Mpika\";\"main\"\n\"906044\";\"Monze\";\"main\"\n\"906054\";\"Mongu\";\"main\"\n\"906054\";\"Mungu\";\"other\"\n\"906054\";\"Монгу\";\"other\"\n\"906221\";\"Mkushi\";\"main\"\n\"907111\";\"Mazabuka\";\"main\"\n\"907111\";\"Мазабука\";\"other\"\n\"907770\";\"Mansa\";\"main\"\n\"907770\";\"Fort Rosebery\";\"other\"\n\"907770\";\"Mbila\";\"other\"\n\"907770\";\"Roseberry\";\"other\"\n\"907770\";\"Манса\";\"other\"\n\"908718\";\"Maamba\";\"main\"\n\"908913\";\"Luwingu\";\"main\"\n\"908913\";\"Luingu\";\"other\"\n\"908913\";\"Luwingo\";\"other\"\n\"909137\";\"Lusaka\";\"main\"\n\"909137\";\"Lousaka\";\"other\"\n\"909137\";\"Lusako\";\"other\"\n\"909137\";\"Lúsaka\";\"other\"\n\"909137\";\"lu sha ka\";\"other\"\n\"909137\";\"lusaka\";\"other\"\n\"909137\";\"lwsaka\";\"other\"\n\"909137\";\"lwsqh\";\"other\"\n\"909137\";\"rusaka\";\"other\"\n\"909137\";\"Λουσάκα\";\"other\"\n\"909137\";\"Лусака\";\"other\"\n\"909137\";\"לוסקה\";\"other\"\n\"909137\";\"لوساکا\";\"other\"\n\"909137\";\"ሉሳካ\";\"other\"\n\"909137\";\"ルサカ\";\"other\"\n\"909137\";\"路沙卡\";\"other\"\n\"909137\";\"루사카\";\"other\"\n\"909299\";\"Lundazi\";\"main\"\n\"909488\";\"Lukulu\";\"main\"\n\"909863\";\"Luanshya\";\"main\"\n\"909863\";\"Luanshyo\";\"other\"\n\"909887\";\"Luangwa\";\"main\"\n\"909887\";\"Feira\";\"other\"\n\"910111\";\"Livingstone\";\"main\"\n\"910111\";\"Livingston\";\"other\"\n\"910111\";\"Livingstore\";\"other\"\n\"910111\";\"Maramba\";\"other\"\n\"910111\";\"Ливингстон\";\"other\"\n\"910361\";\"Limulunga\";\"main\"\n\"911148\";\"Kitwe\";\"main\"\n\"911148\";\"Kitve\";\"other\"\n\"911148\";\"Kitwe Nkana\";\"other\"\n\"911148\";\"Nkana-Kitwe\";\"other\"\n\"911148\";\"kitou~e\";\"other\"\n\"911148\";\"Китве\";\"other\"\n\"911148\";\"キトウェ\";\"other\"\n\"912628\";\"Kasempa\";\"main\"\n\"912628\";\"Kasama\";\"other\"\n\"912764\";\"Kasama\";\"main\"\n\"912764\";\"Arcidiocesi di Kasama\";\"other\"\n\"912764\";\"Касама\";\"other\"\n\"913029\";\"Kapiri Mposhi\";\"main\"\n\"913029\";\"Kapiri Imposhi\";\"other\"\n\"913323\";\"Kaoma\";\"main\"\n\"913323\";\"Mankoya\";\"other\"\n\"913323\";\"Mankoye\";\"other\"\n\"913323\";\"Nankoya\";\"other\"\n\"913323\";\"Nunkoya\";\"other\"\n\"913613\";\"Kansanshi\";\"main\"\n\"913613\";\"Kansanshi Mine\";\"other\"\n\"913613\";\"Kansenshi\";\"other\"\n\"914959\";\"Kalulushi\";\"main\"\n\"914959\";\"Kalulshi\";\"other\"\n\"915285\";\"Kalengwa\";\"main\"\n\"915471\";\"Kalabo\";\"main\"\n\"915883\";\"Kafue\";\"main\"\n\"915883\";\"Kafe\";\"other\"\n\"915883\";\"Кафе\";\"other\"\n\"916095\";\"Kabwe\";\"main\"\n\"916095\";\"Broken Hill\";\"other\"\n\"916095\";\"Kabve\";\"other\"\n\"916095\";\"Кабве\";\"other\"\n\"916246\";\"Kabompo\";\"main\"\n\"916668\";\"Isoka\";\"main\"\n\"917011\";\"Gwembe\";\"main\"\n\"917688\";\"Chongwe\";\"main\"\n\"917748\";\"Choma\";\"main\"\n\"918702\";\"Chipata\";\"main\"\n\"918702\";\"Fort Jameson\";\"other\"\n\"918702\";\"Чипата\";\"other\"\n\"918905\";\"Chinsali\";\"main\"\n\"918905\";\"Chinsala\";\"other\"\n\"919009\";\"Chingola\";\"main\"\n\"919009\";\"Чингола\";\"other\"\n\"919544\";\"Chililabombwe\";\"main\"\n\"919544\";\"Bancroft\";\"other\"\n\"919544\";\"Chilabombwe\";\"other\"\n\"919544\";\"Chiliabombwe\";\"other\"\n\"919544\";\"Chiliadomewe\";\"other\"\n\"920233\";\"Chibombo\";\"main\"\n\"920820\";\"Chambishi\";\"main\"\n\"920820\";\"Chambezi\";\"other\"\n\"920901\";\"Chama\";\"main\"\n\"921028\";\"Chadiza\";\"main\"\n\"878549\";\"Zvishavane\";\"main\"\n\"878549\";\"Shabani\";\"other\"\n\"878549\";\"Shavani\";\"other\"\n\"879431\";\"Victoria Falls\";\"main\"\n\"881164\";\"Shurugwi\";\"main\"\n\"881164\";\"Churugwi\";\"other\"\n\"881164\";\"Salukwe\";\"other\"\n\"881164\";\"Selukwe\";\"other\"\n\"881331\";\"Shangani\";\"main\"\n\"881345\";\"Shamva\";\"main\"\n\"881345\";\"Tsambvi\";\"other\"\n\"881345\";\"Tsamvi\";\"other\"\n\"882100\";\"Rusape\";\"main\"\n\"882100\";\"Rusapi\";\"other\"\n\"882599\";\"Redcliff\";\"main\"\n\"882599\";\"Redcliffe\";\"other\"\n\"882599\";\"Rehdkliff\";\"other\"\n\"882599\";\"Рэдклифф\";\"other\"\n\"882722\";\"Raffingora\";\"main\"\n\"882859\";\"Plumtree\";\"main\"\n\"882955\";\"Penhalonga\";\"main\"\n\"883183\";\"Odzi\";\"main\"\n\"883258\";\"Nyazura\";\"main\"\n\"883258\";\"Inyazura\";\"other\"\n\"883258\";\"Nyazure\";\"other\"\n\"883481\";\"Nyanga\";\"main\"\n\"884141\";\"Norton\";\"main\"\n\"884141\";\"Нортон\";\"other\"\n\"884798\";\"Mvurwi\";\"main\"\n\"884798\";\"Dawsons\";\"other\"\n\"884798\";\"Umvukwes\";\"other\"\n\"884814\";\"Mvuma\";\"main\"\n\"884814\";\"Muvumi\";\"other\"\n\"884814\";\"Umvuma\";\"other\"\n\"884927\";\"Mutoko\";\"main\"\n\"884927\";\"Mtoko\";\"other\"\n\"884979\";\"Mutare\";\"main\"\n\"884979\";\"Nyautare\";\"other\"\n\"884979\";\"Umtali\";\"other\"\n\"884979\";\"Мутаре\";\"other\"\n\"885159\";\"Murehwa\";\"main\"\n\"885159\";\"Mrewa\";\"other\"\n\"885159\";\"Murewa\";\"other\"\n\"885800\";\"Mount Darwin\";\"main\"\n\"885800\";\"Darwin\";\"other\"\n\"885800\";\"Fura\";\"other\"\n\"885800\";\"Mount Fura\";\"other\"\n\"886146\";\"Mhangura\";\"main\"\n\"886146\";\"Mangula\";\"other\"\n\"886384\";\"Mazoe\";\"main\"\n\"886384\";\"Mazowe\";\"other\"\n\"886763\";\"Masvingo\";\"main\"\n\"886763\";\"Fort Victoria\";\"other\"\n\"886763\";\"Mashvingo\";\"other\"\n\"886763\";\"Nyanda\";\"other\"\n\"886763\";\"Машвинго\";\"other\"\n\"886864\";\"Mashava\";\"main\"\n\"886864\";\"Mashaba\";\"other\"\n\"886990\";\"Marondera\";\"main\"\n\"886990\";\"Marandellas\";\"other\"\n\"888089\";\"Macheke\";\"main\"\n\"888089\";\"Mucheki\";\"other\"\n\"888225\";\"Lupane\";\"main\"\n\"888225\";\"Lupani\";\"other\"\n\"888667\";\"Lalapanzi\";\"main\"\n\"888667\";\"Lalapansi\";\"other\"\n\"888710\";\"Kwekwe\";\"main\"\n\"888710\";\"Hwe Hwe\";\"other\"\n\"888710\";\"Que Que\";\"other\"\n\"889191\";\"Karoi\";\"main\"\n\"889191\";\"Karoyi\";\"other\"\n\"889215\";\"Kariba\";\"main\"\n\"889215\";\"Кариба\";\"other\"\n\"889390\";\"Kamativi Mine\";\"main\"\n\"889390\";\"Kamativi\";\"other\"\n\"889390\";\"Kamitivi\";\"other\"\n\"889453\";\"Kadoma\";\"main\"\n\"889453\";\"Gatooma\";\"other\"\n\"889453\";\"Kadome\";\"other\"\n\"889453\";\"Katoma\";\"other\"\n\"889453\";\"Кадоме\";\"other\"\n\"889723\";\"Inyathi\";\"main\"\n\"889723\";\"Inyati\";\"other\"\n\"889795\";\"Insiza\";\"main\"\n\"889942\";\"Hwange\";\"main\"\n\"889942\";\"Khvange\";\"other\"\n\"889942\";\"Wange\";\"other\"\n\"889942\";\"Wankie\";\"other\"\n\"889942\";\"Хванге\";\"other\"\n\"890242\";\"Headlands\";\"main\"\n\"890299\";\"Harare\";\"main\"\n\"890299\";\"Charare\";\"other\"\n\"890299\";\"Harare fi\";\"other\"\n\"890299\";\"Harare it\";\"other\"\n\"890299\";\"Harare sv\";\"other\"\n\"890299\";\"Harareen\";\"other\"\n\"890299\";\"Kharare\";\"other\"\n\"890299\";\"Salisbury\";\"other\"\n\"890299\";\"Χαράρε\";\"other\"\n\"890299\";\"Хараре\";\"other\"\n\"890422\";\"Gweru\";\"main\"\n\"890422\";\"Gveru\";\"other\"\n\"890422\";\"Gwelo\";\"other\"\n\"890422\";\"Гверу\";\"other\"\n\"890516\";\"Gwanda\";\"main\"\n\"890516\";\"Jawunda\";\"other\"\n\"890983\";\"Gokwe\";\"main\"\n\"891099\";\"Glendale\";\"main\"\n\"891515\";\"Filabusi\";\"main\"\n\"891515\";\"Emfelabuso\";\"other\"\n\"891699\";\"Esigodini\";\"main\"\n\"891699\";\"Essexvale\";\"other\"\n\"892156\";\"Dorowa Mining Lease\";\"main\"\n\"892156\";\"Dorowa\";\"other\"\n\"892156\";\"Dorowa Claims\";\"other\"\n\"892440\";\"Dete\";\"main\"\n\"892440\";\"Dett\";\"other\"\n\"892876\";\"Concession\";\"main\"\n\"893172\";\"Chivhu\";\"main\"\n\"893172\";\"Enkeldoorn\";\"other\"\n\"893397\";\"Chirundu\";\"main\"\n\"893397\";\"Chirunda\";\"other\"\n\"893397\";\"Chirundo\";\"other\"\n\"893397\";\"Chirundu Township\";\"other\"\n\"893397\";\"Otto Beit Bridge\";\"other\"\n\"893485\";\"Chiredzi\";\"main\"\n\"893549\";\"Chipinge\";\"main\"\n\"893549\";\"Chipinga\";\"other\"\n\"893697\";\"Chinhoyi\";\"main\"\n\"893697\";\"Chinoyi\";\"other\"\n\"893697\";\"Sinoia\";\"other\"\n\"893813\";\"Chimanimani\";\"main\"\n\"893813\";\"Mandidzudzure\";\"other\"\n\"893813\";\"Melsetter\";\"other\"\n\"894239\";\"Chegutu\";\"main\"\n\"894239\";\"Cheguto\";\"other\"\n\"894239\";\"Hartley\";\"other\"\n\"894239\";\"New Hartley\";\"other\"\n\"894413\";\"Chakari\";\"main\"\n\"894413\";\"Shagari\";\"other\"\n\"894460\";\"Centenary\";\"main\"\n\"894701\";\"Bulawayo\";\"main\"\n\"894701\";\"Bulavajo\";\"other\"\n\"894701\";\"Булавайо\";\"other\"\n\"894701\";\"Булавајо\";\"other\"\n\"895057\";\"Binga\";\"main\"\n\"895061\";\"Bindura\";\"main\"\n\"895061\";\"Bindura Town\";\"other\"\n\"895061\";\"Kimberley Reefs\";\"other\"\n\"895061\";\"Биндура\";\"other\"\n\"895269\";\"Beitbridge\";\"main\"\n\"895308\";\"Beatrice\";\"main\"\n\"895417\";\"Banket\";\"main\"\n\"895417\";\"Banket Junction\";\"other\"\n\"1085510\";\"Epworth\";\"main\"\n\"1106542\";\"Chitungwiza\";\"main\"\n"
  },
  {
    "path": "newscoop/install/Resources/sql/campsite_core.sql",
    "content": "-- MySQL dump 10.13  Distrib 5.1.54, for debian-linux-gnu (i686)\n--\n-- Host: localhost    Database: newscoop-devel\n-- ------------------------------------------------------\n-- Server version 5.1.54-1ubuntu4\n\n/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;\n/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;\n/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;\n/*!40101 SET NAMES utf8 */;\n/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;\n/*!40103 SET TIME_ZONE='+00:00' */;\n/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;\n/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;\n/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;\n/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;\n\nSET @@global.sql_mode= '';\n\n--\n-- Table structure for table `Aliases`\n--\n\n\nDROP TABLE IF EXISTS `Aliases`;\n\nCREATE TABLE IF NOT EXISTS `Aliases` (\n  `Id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `Name` char(128) NOT NULL DEFAULT '',\n  `IdPublication` int(10) unsigned DEFAULT NULL,\n  PRIMARY KEY (`Id`),\n  UNIQUE KEY `Name` (`Name`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n\n--\n-- Table structure for table `ArticleAttachments`\n--\n\nDROP TABLE IF EXISTS `ArticleAttachments`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `ArticleAttachments` (\n  `fk_article_number` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_attachment_id` int(10) unsigned NOT NULL DEFAULT '0',\n  UNIQUE KEY `article_attachment_index` (`fk_article_number`,`fk_attachment_id`),\n  KEY `fk_article_number` (`fk_article_number`),\n  KEY `fk_attachment_id` (`fk_attachment_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `ArticleAttachments`\n--\n\nLOCK TABLES `ArticleAttachments` WRITE;\n/*!40000 ALTER TABLE `ArticleAttachments` DISABLE KEYS */;\n/*!40000 ALTER TABLE `ArticleAttachments` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `ArticleAuthors`\n--\n\nDROP TABLE IF EXISTS `ArticleAuthors`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `ArticleAuthors` (\n  `fk_article_number` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_language_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_author_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_type_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `order` int(2) unsigned,\n  PRIMARY KEY (`fk_article_number`,`fk_language_id`,`fk_author_id`,`fk_type_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `ArticleAuthors`\n--\n\nLOCK TABLES `ArticleAuthors` WRITE;\n/*!40000 ALTER TABLE `ArticleAuthors` DISABLE KEYS */;\n/*!40000 ALTER TABLE `ArticleAuthors` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `ArticleImageCaptions`\n--\n\nDROP TABLE IF EXISTS `ArticleImageCaptions`;\n\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `ArticleImageCaptions` (\n  `id` int(11) NOT NULL AUTO_INCREMENT,\n  `IdLanguage` int(11) NOT NULL,\n  `IdImage` int(11) NOT NULL,\n  `NrArticle` int(11) NOT NULL,\n  `caption` TEXT DEFAULT NULL,\n  `articleImage_id` int(11) NOT NULL,\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `imageId` (`IdImage`,`NrArticle`,`IdLanguage`),\n  KEY `IDX_1E9BFCA410F3034D6CB384EF` (`IdImage`,`NrArticle`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `ArticleImageCaptions`\n--\n\nLOCK TABLES `ArticleImageCaptions` WRITE;\n/*!40000 ALTER TABLE `ArticleImageCaptions` DISABLE KEYS */;\n/*!40000 ALTER TABLE `ArticleImageCaptions` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `ArticleImages`\n--\n\nDROP TABLE IF EXISTS `ArticleImages`;\n\nCREATE TABLE ArticleImages (\n  id INT AUTO_INCREMENT NOT NULL,\n  NrArticle INT NOT NULL,\n  Number INT DEFAULT NULL,\n  is_default TINYINT(1) DEFAULT NULL,\n  IdImage INT DEFAULT NULL,\n  INDEX IDX_A9426E241D447EDE (IdImage),\n  PRIMARY KEY(id)\n) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\n--\n-- Dumping data for table `ArticleImages`\n--\n\nLOCK TABLES `ArticleImages` WRITE;\n/*!40000 ALTER TABLE `ArticleImages` DISABLE KEYS */;\n/*!40000 ALTER TABLE `ArticleImages` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `ArticleIndex`\n--\n\nDROP TABLE IF EXISTS `ArticleIndex`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `ArticleIndex` (\n  `IdPublication` int(10) unsigned NOT NULL DEFAULT '0',\n  `IdLanguage` int(10) unsigned NOT NULL DEFAULT '0',\n  `IdKeyword` int(10) unsigned NOT NULL DEFAULT '0',\n  `NrIssue` int(10) unsigned NOT NULL DEFAULT '0',\n  `NrSection` int(10) unsigned NOT NULL DEFAULT '0',\n  `NrArticle` int(10) unsigned NOT NULL DEFAULT '0',\n  PRIMARY KEY (`IdPublication`,`IdLanguage`,`IdKeyword`,`NrIssue`,`NrSection`,`NrArticle`),\n  UNIQUE KEY `article_keyword_idx` (`NrArticle`,`IdLanguage`,`IdKeyword`),\n  KEY `keyword_idx` (`IdKeyword`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `ArticleIndex`\n--\n\nLOCK TABLES `ArticleIndex` WRITE;\n/*!40000 ALTER TABLE `ArticleIndex` DISABLE KEYS */;\n/*!40000 ALTER TABLE `ArticleIndex` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `ArticlePublish`\n--\n\nDROP TABLE IF EXISTS `ArticlePublish`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `ArticlePublish` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `fk_article_number` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_language_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `time_action` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',\n  `publish_action` enum('P','U') DEFAULT NULL,\n  `publish_on_front_page` enum('S','R') DEFAULT NULL,\n  `publish_on_section_page` enum('S','R') DEFAULT NULL,\n  `is_completed` enum('N','Y') NOT NULL DEFAULT 'N',\n  PRIMARY KEY (`id`),\n  KEY `article_index` (`fk_article_number`,`fk_language_id`),\n  KEY `event_time_index` (`time_action`,`is_completed`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `ArticlePublish`\n--\n\nLOCK TABLES `ArticlePublish` WRITE;\n/*!40000 ALTER TABLE `ArticlePublish` DISABLE KEYS */;\n/*!40000 ALTER TABLE `ArticlePublish` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `ArticleTopics`\n--\n\nDROP TABLE IF EXISTS `ArticleTopics`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `ArticleTopics` (\n  `NrArticle` int(10) unsigned NOT NULL DEFAULT '0',\n  `TopicId` int(10) unsigned NOT NULL DEFAULT '0',\n  PRIMARY KEY (`NrArticle`,`TopicId`),\n  KEY `article_topics_nrarticle_idx` (`NrArticle`),\n  KEY `article_topics_topicid_idx` (`TopicId`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `ArticleTopics`\n--\n\nLOCK TABLES `ArticleTopics` WRITE;\n/*!40000 ALTER TABLE `ArticleTopics` DISABLE KEYS */;\n/*!40000 ALTER TABLE `ArticleTopics` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `ArticleTypeMetadata`\n--\n\nDROP TABLE IF EXISTS `ArticleTypeMetadata`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `ArticleTypeMetadata` (\n  `type_name` varchar(166) NOT NULL DEFAULT '',\n  `field_name` varchar(166) NOT NULL DEFAULT 'NULL',\n  `field_weight` int(11) DEFAULT NULL,\n  `is_hidden` tinyint(1) NOT NULL DEFAULT '0',\n  `comments_enabled` tinyint(1) NOT NULL DEFAULT '0',\n  `fk_phrase_id` int(10) unsigned DEFAULT NULL,\n  `field_type` varchar(255) DEFAULT NULL,\n  `field_type_param` varchar(255) DEFAULT NULL,\n  `is_content_field` tinyint(1) NOT NULL DEFAULT '0',\n  `max_size` int(10) unsigned DEFAULT NULL,\n  `show_in_editor` int(1) NOT NULL DEFAULT '1',\n  PRIMARY KEY (`type_name`,`field_name`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `ArticleTypeMetadata`\n--\n\nLOCK TABLES `ArticleTypeMetadata` WRITE;\n/*!40000 ALTER TABLE `ArticleTypeMetadata` DISABLE KEYS */;\n/*!40000 ALTER TABLE `ArticleTypeMetadata` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Articles`\n--\n\nDROP TABLE IF EXISTS `Articles`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Articles` (\n  `IdPublication` int(10) unsigned NOT NULL DEFAULT '0',\n  `NrIssue` int(10) unsigned NOT NULL DEFAULT '0',\n  `NrSection` int(10) unsigned NOT NULL DEFAULT '0',\n  `Number` int(10) unsigned NOT NULL DEFAULT '0',\n  `IdLanguage` int(10) unsigned NOT NULL DEFAULT '0',\n  `Name` varchar(140) NOT NULL DEFAULT '',\n  `Type` varchar(70) NOT NULL DEFAULT '',\n  `IdUser` int(10) unsigned NOT NULL DEFAULT '0',\n  `OnFrontPage` enum('N','Y') NOT NULL DEFAULT 'N',\n  `OnSection` enum('N','Y') NOT NULL DEFAULT 'N',\n  `Published` enum('N','S','M','Y') NOT NULL DEFAULT 'N',\n  `PublishDate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',\n  `UploadDate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',\n  `Keywords` varchar(255) NOT NULL DEFAULT '',\n  `Public` enum('N','Y') NOT NULL DEFAULT 'N',\n  `IsIndexed` enum('N','Y') NOT NULL DEFAULT 'N',\n  `LockUser` int(10) unsigned DEFAULT NULL,\n  `LockTime` datetime DEFAULT NULL,\n  `ShortName` varchar(32) NOT NULL DEFAULT '',\n  `ArticleOrder` int(10) unsigned NOT NULL DEFAULT '0',\n  `comments_enabled` tinyint(1) NOT NULL DEFAULT '0',\n  `comments_locked` tinyint(1) NOT NULL DEFAULT '0',\n  `time_updated` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',\n  `object_id` int(11) DEFAULT NULL,\n  `webcode` varchar(10) DEFAULT NULL,\n  `indexed` timestamp NULL DEFAULT NULL,\n  `rating_enabled` tinyint(1) DEFAULT '1',\n  `issue_id` INT DEFAULT NULL,\n  `section_id` INT DEFAULT NULL,\n  PRIMARY KEY (`IdPublication`,`NrIssue`,`NrSection`,`Number`,`IdLanguage`),\n  UNIQUE KEY `IdPublication` (`IdPublication`,`NrIssue`,`NrSection`,`IdLanguage`,`Name`),\n  UNIQUE KEY `Number` (`Number`,`IdLanguage`),\n  UNIQUE KEY `ShortName` (`IdPublication`,`NrIssue`,`NrSection`,`IdLanguage`,`ShortName`),\n  KEY `Type` (`Type`),\n  KEY `ArticleOrderIdx` (`ArticleOrder`),\n  FULLTEXT KEY `articles_name_skey` (`Name`),\n  INDEX IDX_46AB533E5E7AA58C (issue_id),\n  INDEX IDX_46AB533ED823E37A (section_id)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `Articles`\n--\n\nLOCK TABLES `Articles` WRITE;\n/*!40000 ALTER TABLE `Articles` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Articles` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Attachments`\n--\n\nDROP TABLE IF EXISTS `Attachments`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Attachments` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `fk_language_id` int(10) unsigned DEFAULT NULL,\n  `file_name` varchar(255) DEFAULT NULL,\n  `extension` varchar(50) DEFAULT NULL,\n  `mime_type` varchar(255) DEFAULT NULL,\n  `content_disposition` enum('attachment') DEFAULT NULL,\n  `http_charset` varchar(50) DEFAULT NULL,\n  `size_in_bytes` bigint(20) unsigned DEFAULT NULL,\n  `fk_description_id` int(11) DEFAULT NULL,\n  `fk_user_id` int(10) unsigned DEFAULT NULL,\n  `last_modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,\n  `time_created` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',\n  `Source` enum('local','feedback') not null default 'local',\n  `Status` enum('unapproved','approved') not null default 'approved',\n  PRIMARY KEY (`id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `Attachments`\n--\n\nLOCK TABLES `Attachments` WRITE;\n/*!40000 ALTER TABLE `Attachments` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Attachments` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `AuthorAliases`\n--\n\nDROP TABLE IF EXISTS `AuthorAliases`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `AuthorAliases` (\n  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,\n  `fk_author_id` int(11) unsigned NOT NULL,\n  `alias` varchar(255) NOT NULL,\n  PRIMARY KEY (`id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `AuthorAliases`\n--\n\nLOCK TABLES `AuthorAliases` WRITE;\n/*!40000 ALTER TABLE `AuthorAliases` DISABLE KEYS */;\n/*!40000 ALTER TABLE `AuthorAliases` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `AuthorAssignedTypes`\n--\n\nDROP TABLE IF EXISTS `AuthorAssignedTypes`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `AuthorAssignedTypes` (\n  `fk_author_id` int(11) unsigned NOT NULL DEFAULT '0',\n  `fk_type_id` int(11) unsigned NOT NULL DEFAULT '0',\n  PRIMARY KEY (`fk_author_id`,`fk_type_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `AuthorAssignedTypes`\n--\n\nLOCK TABLES `AuthorAssignedTypes` WRITE;\n/*!40000 ALTER TABLE `AuthorAssignedTypes` DISABLE KEYS */;\n/*!40000 ALTER TABLE `AuthorAssignedTypes` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `AuthorBiographies`\n--\n\nDROP TABLE IF EXISTS `AuthorBiographies`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `AuthorBiographies` (\n  `fk_author_id` int(11) unsigned NOT NULL DEFAULT '0',\n  `fk_language_id` int(11) unsigned NOT NULL DEFAULT '0',\n  `biography` text NOT NULL,\n  `first_name` varchar(255) DEFAULT NULL,\n  `last_name` varchar(255) DEFAULT NULL,\n  PRIMARY KEY (`fk_author_id`,`fk_language_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `AuthorBiographies`\n--\n\nLOCK TABLES `AuthorBiographies` WRITE;\n/*!40000 ALTER TABLE `AuthorBiographies` DISABLE KEYS */;\n/*!40000 ALTER TABLE `AuthorBiographies` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `AuthorTypes`\n--\n\nDROP TABLE IF EXISTS `AuthorTypes`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `AuthorTypes` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `type` varchar(255) DEFAULT NULL,\n  PRIMARY KEY (`id`)\n) ENGINE=MyISAM AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `AuthorTypes`\n--\n\nLOCK TABLES `AuthorTypes` WRITE;\n/*!40000 ALTER TABLE `AuthorTypes` DISABLE KEYS */;\nINSERT INTO `AuthorTypes` VALUES (1,'Author'),(2,'Writer'),(3,'Photographer'),(4,'Editor'),(5,'Columnist');\n/*!40000 ALTER TABLE `AuthorTypes` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Authors`\n--\n\nDROP TABLE IF EXISTS `Authors`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Authors` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `first_name` varchar(100) NOT NULL DEFAULT '',\n  `last_name` varchar(100) NOT NULL DEFAULT '',\n  `email` varchar(255) DEFAULT NULL,\n  `type` int(10) unsigned DEFAULT NULL,\n  `skype` varchar(255) DEFAULT NULL,\n  `jabber` varchar(255) DEFAULT NULL,\n  `aim` varchar(255) DEFAULT NULL,\n  `biography` text,\n  `image` int(11) DEFAULT NULL,\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `authors_name_ukey` (`first_name`,`last_name`),\n  FULLTEXT KEY `authors_name_skey` (`first_name`,`last_name`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `Authors`\n--\n\nLOCK TABLES `Authors` WRITE;\n/*!40000 ALTER TABLE `Authors` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Authors` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `AutoId`\n--\n\nDROP TABLE IF EXISTS `AutoId`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `AutoId` (\n  `ArticleId` int(10) unsigned NOT NULL DEFAULT '0',\n  `LogTStamp` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',\n  `TopicId` int(10) unsigned NOT NULL DEFAULT '0',\n  `translation_phrase_id` int(10) unsigned NOT NULL DEFAULT '0'\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `AutoId`\n--\n\nLOCK TABLES `AutoId` WRITE;\n/*!40000 ALTER TABLE `AutoId` DISABLE KEYS */;\nINSERT INTO `AutoId` VALUES (0,'0000-00-00 00:00:00',0,1);\n/*!40000 ALTER TABLE `AutoId` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Cache`\n--\n\nDROP TABLE IF EXISTS `Cache`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Cache` (\n  `language` int(11) unsigned DEFAULT NULL,\n  `publication` int(11) unsigned DEFAULT NULL,\n  `issue` int(11) unsigned DEFAULT NULL,\n  `section` int(11) unsigned DEFAULT NULL,\n  `article` int(11) unsigned DEFAULT NULL,\n  `params` varchar(128) DEFAULT NULL,\n  `template` varchar(128) NOT NULL,\n  `expired` int(11) NOT NULL,\n  `content` mediumtext,\n  `status` char(1) DEFAULT NULL,\n  UNIQUE KEY `index` (`language`,`publication`,`issue`,`section`,`article`,`params`,`template`),\n  KEY `expired` (`expired`),\n  KEY `template` (`template`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `Cache`\n--\n\nLOCK TABLES `Cache` WRITE;\n/*!40000 ALTER TABLE `Cache` DISABLE KEYS */;\nALTER TABLE `Cache` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;\nALTER TABLE `Cache` CHANGE  `content`  `content` MEDIUMTEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL;\n/*!40000 ALTER TABLE `Cache` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `CityLocations`\n--\n\nDROP TABLE IF EXISTS `CityLocations`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `CityLocations` (\n  `id` int(10) unsigned NOT NULL,\n  `city_type` varchar(10) DEFAULT NULL,\n  `population` int(10) unsigned NOT NULL,\n  `position` point NOT NULL,\n  `elevation` int(11) DEFAULT NULL,\n  `country_code` char(2) NOT NULL,\n  `time_zone` varchar(1023) NOT NULL,\n  PRIMARY KEY (`id`),\n  SPATIAL KEY `position` (`position`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `CityLocations`\n--\n\nLOCK TABLES `CityLocations` WRITE;\n/*!40000 ALTER TABLE `CityLocations` DISABLE KEYS */;\n/*!40000 ALTER TABLE `CityLocations` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `CityNames`\n--\n\nDROP TABLE IF EXISTS `CityNames`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `CityNames` (\n  `fk_citylocations_id` int(10) NOT NULL,\n  `city_name` varchar(1024) NOT NULL,\n  `name_type` varchar(10) NOT NULL,\n  KEY `fk_citylocations_id` (`fk_citylocations_id`),\n  KEY `city_name` (`city_name`(32))\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `CityNames`\n--\n\nLOCK TABLES `CityNames` WRITE;\n/*!40000 ALTER TABLE `CityNames` DISABLE KEYS */;\n/*!40000 ALTER TABLE `CityNames` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Classes`\n--\n\nDROP TABLE IF EXISTS `Classes`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Classes` (\n  `Id` int(10) unsigned NOT NULL DEFAULT '0',\n  `IdLanguage` int(10) unsigned NOT NULL DEFAULT '0',\n  `Name` varchar(140) NOT NULL DEFAULT '',\n  PRIMARY KEY (`Id`,`IdLanguage`),\n  UNIQUE KEY `IdLanguage` (`IdLanguage`,`Name`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `Classes`\n--\n\nLOCK TABLES `Classes` WRITE;\n/*!40000 ALTER TABLE `Classes` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Classes` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Countries`\n--\n\nDROP TABLE IF EXISTS `Countries`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Countries` (\n  `Code` varchar(2) NOT NULL DEFAULT '',\n  `IdLanguage` int(10) unsigned NOT NULL DEFAULT '0',\n  `Name` varchar(140) NOT NULL DEFAULT '',\n  PRIMARY KEY (`Code`,`IdLanguage`),\n  UNIQUE KEY `IdLanguage` (`IdLanguage`,`Name`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `Countries`\n--\n\nLOCK TABLES `Countries` WRITE;\n/*!40000 ALTER TABLE `Countries` DISABLE KEYS */;\nINSERT INTO `Countries` VALUES ('AR',1,'Argentina'),('AG',1,'Antigua and Barbuda'),('AQ',1,'Antarctica'),('AI',1,'Anguilla'),('AO',1,'Angola'),('AD',1,'Andorra'),('AS',1,'American Samoa'),('DZ',1,'Algeria'),('AL',1,'Albania'),('AF',1,'Afghanistan'),('AM',1,'Armenia'),('AW',1,'Aruba'),('AU',1,'Australia'),('AT',1,'Austria'),('AZ',1,'Azerbaijan'),('BS',1,'Bahamas'),('BH',1,'Bahrain'),('BD',1,'Bangladesh'),('BB',1,'Barbados'),('BY',1,'Belarus'),('BE',1,'Belgium'),('BZ',1,'Belize'),('BJ',1,'Benin'),('BM',1,'Bermuda'),('BT',1,'Bhutan'),('BO',1,'Bolivia'),('BA',1,'Bosnia and Herzegovina'),('BW',1,'Botswana'),('BV',1,'Bouvet Island'),('BR',1,'Brazil'),('IO',1,'British Indian Ocean Territory'),('BN',1,'Brunei Darussalam'),('BG',1,'Bulgaria'),('BF',1,'Burkina Faso'),('BI',1,'Burundi'),('KH',1,'Cambodia'),('CM',1,'Cameroon'),('CA',1,'Canada'),('CV',1,'Cape Verde'),('KY',1,'Cayman Islands'),('CF',1,'Central African Republic'),('TD',1,'Chad'),('CL',1,'Chile'),('CN',1,'China'),('CX',1,'Christmas Island'),('CC',1,'Cocos (Keeling) Islands'),('CO',1,'Colombia'),('KM',1,'Comoros'),('CG',1,'Congo'),('CD',1,'Congo, The Democratic Republic Of The'),('CK',1,'Cook Islands'),('CR',1,'Costa Rica'),('CI',1,'Côte d\\'Ivoire'),('HR',1,'Croatia'),('CU',1,'Cuba'),('CY',1,'Cyprus'),('CZ',1,'Czech Republic'),('DK',1,'Denmark'),('DJ',1,'Djibouti'),('DM',1,'Dominica'),('DO',1,'Dominican Republic'),('TP',1,'Timor-Leste'),('EC',1,'Ecuador'),('EG',1,'Egypt'),('SV',1,'El Salvador'),('GQ',1,'Equatorial Guinea'),('ER',1,'Eritrea'),('EE',1,'Estonia'),('ET',1,'Ethiopia'),('FK',1,'Falkland Islands (Malvinas)'),('FO',1,'Faroe Islands'),('FJ',1,'Fiji'),('FI',1,'Finland'),('FR',1,'France'),('FX',1,'France, Metropolitan'),('GF',1,'French Guiana'),('PF',1,'French Polynesia'),('TF',1,'French Southern Territories'),('GA',1,'Gabon'),('GM',1,'Gambia'),('GE',1,'Georgia'),('DE',1,'Germany'),('GH',1,'Ghana'),('GI',1,'Gibraltar'),('GR',1,'Greece'),('GL',1,'Greenland'),('GD',1,'Grenada'),('GP',1,'Guadeloupe'),('GU',1,'Guam'),('GT',1,'Guatemala'),('GN',1,'Guinea'),('GW',1,'Guinea-bissau'),('GY',1,'Guyana'),('HT',1,'Haiti'),('HM',1,'Heard Island and Mcdonald Islands'),('VA',1,'Holy See (Vatican City State)'),('HN',1,'Honduras'),('HK',1,'Hong Kong'),('HU',1,'Hungary'),('IS',1,'Iceland'),('IN',1,'India'),('ID',1,'Indonesia'),('IR',1,'Iran, Islamic Republic of'),('IQ',1,'Iraq'),('IE',1,'Ireland'),('IL',1,'Israel'),('IT',1,'Italy'),('JM',1,'Jamaica'),('JP',1,'Japan'),('JO',1,'Jordan'),('KZ',1,'Kazakstan'),('KE',1,'Kenya'),('KI',1,'Kiribati'),('KP',1,'Korea, Democratic Peoples Republic of'),('KR',1,'Korea, Republic of'),('KW',1,'Kuwait'),('KG',1,'Kyrgyzstan'),('LA',1,'Lao People\\'s Democratic Republic'),('LV',1,'Latvia'),('LB',1,'Lebanon'),('LS',1,'Lesotho'),('LR',1,'Liberia'),('LY',1,'Libyan Arab Jamahiriya'),('LI',1,'Liechtenstein'),('LT',1,'Lithuania'),('LU',1,'Luxembourg'),('MO',1,'Macau'),('MK',1,'Macedonia, The Former Yugoslav Republic of'),('MG',1,'Madagascar'),('MW',1,'Malawi'),('MY',1,'Malaysia'),('MV',1,'Maldives'),('ML',1,'Mali'),('MT',1,'Malta'),('MH',1,'Marshall Islands'),('MQ',1,'Martinique'),('MR',1,'Mauritania'),('MU',1,'Mauritius'),('YT',1,'Mayotte'),('MX',1,'Mexico'),('FM',1,'Micronesia, Federated States of'),('MD',1,'Moldova, Republic of'),('MC',1,'Monaco'),('MN',1,'Mongolia'),('MS',1,'Montserrat'),('MA',1,'Morocco'),('MZ',1,'Mozambique'),('MM',1,'Myanmar'),('NA',1,'Namibia'),('NR',1,'Nauru'),('NP',1,'Nepal'),('NL',1,'Netherlands'),('AN',1,'Netherlands Antilles'),('NC',1,'New Caledonia'),('NZ',1,'New Zealand'),('NI',1,'Nicaragua'),('NE',1,'Niger'),('NG',1,'Nigeria'),('NU',1,'Niue'),('NF',1,'Norfolk Island'),('MP',1,'Northern Mariana Islands'),('NO',1,'Norway'),('OM',1,'Oman'),('PK',1,'Pakistan'),('PW',1,'Palau'),('PS',1,'Palestinian Territory, Occupied'),('PA',1,'Panama'),('PG',1,'Papua New Guinea'),('PY',1,'Paraguay'),('PE',1,'Peru'),('PH',1,'Philippines'),('PN',1,'Pitcairn'),('PL',1,'Poland'),('PT',1,'Portugal'),('PR',1,'Puerto Rico'),('QA',1,'Qatar'),('RE',1,'Réunion'),('RO',1,'Romania'),('RU',1,'Russian Federation'),('RW',1,'Rwanda'),('SH',1,'Saint Helena'),('KN',1,'Saint Kitts and Nevis'),('LC',1,'Saint Lucia'),('PM',1,'Saint Pierre and Miquelon'),('VC',1,'Saint Vincent and The Grenadines'),('WS',1,'Samoa'),('SM',1,'San Marino'),('ST',1,'Sao Tome and Principe'),('SA',1,'Saudi Arabia'),('SN',1,'Senegal'),('SX',1,'Serbia'),('MB',1,'Montenegro'),('SC',1,'Seychelles'),('SL',1,'Sierra Leone'),('SG',1,'Singapore'),('SK',1,'Slovakia'),('SI',1,'Slovenia'),('SB',1,'Solomon Islands'),('SO',1,'Somalia'),('ZA',1,'South Africa'),('GS',1,'South Georgia and The South Sandwich Islands'),('ES',1,'Spain'),('LK',1,'Sri Lanka'),('SD',1,'Sudan'),('SR',1,'Suriname'),('SJ',1,'Svalbard and Jan Mayen'),('SZ',1,'Swaziland'),('SE',1,'Sweden'),('CH',1,'Switzerland'),('SY',1,'Syrian Arab Republic'),('TW',1,'Taiwan, Province Of China'),('TJ',1,'Tajikistan'),('TZ',1,'Tanzania, United Republic of'),('TH',1,'Thailand'),('TG',1,'Togo'),('TK',1,'Tokelau'),('TO',1,'Tonga'),('TT',1,'Trinidad and Tobago'),('TN',1,'Tunisia'),('TR',1,'Turkey'),('TM',1,'Turkmenistan'),('TC',1,'Turks and Caicos Islands'),('TV',1,'Tuvalu'),('UG',1,'Uganda'),('UA',1,'Ukraine'),('AE',1,'United Arab Emirates'),('GB',1,'United Kingdom'),('US',1,'United States'),('UM',1,'United States Minor Outlying Islands'),('UY',1,'Uruguay'),('UZ',1,'Uzbekistan'),('VU',1,'Vanuatu'),('VE',1,'Venezuela'),('VN',1,'Vietnam'),('VG',1,'Virgin Islands, British'),('VI',1,'Virgin Islands, U.S.'),('WF',1,'Wallis And Futuna'),('EH',1,'Western Sahara'),('YE',1,'Yemen'),('ZM',1,'Zambia'),('ZW',1,'Zimbabwe'),('AX',1,'Åland Islands');\n/*!40000 ALTER TABLE `Countries` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Dictionary`\n--\n\nDROP TABLE IF EXISTS `Dictionary`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Dictionary` (\n  `Id` int(10) unsigned NOT NULL DEFAULT '0',\n  `IdLanguage` int(10) unsigned NOT NULL DEFAULT '0',\n  `Keyword` varchar(140) NOT NULL DEFAULT '',\n  PRIMARY KEY (`IdLanguage`,`Keyword`),\n  UNIQUE KEY `Id` (`Id`,`IdLanguage`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `Dictionary`\n--\n\nLOCK TABLES `Dictionary` WRITE;\n/*!40000 ALTER TABLE `Dictionary` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Dictionary` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `EnumerationElements`\n--\n\nDROP TABLE IF EXISTS `EnumerationElements`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `EnumerationElements` (\n  `fk_enumeration_id` int(10) unsigned NOT NULL,\n  `element_id` int(10) unsigned NOT NULL,\n  `fk_phrase_id` int(10) unsigned NOT NULL,\n  PRIMARY KEY (`fk_enumeration_id`,`element_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `EnumerationElements`\n--\n\nLOCK TABLES `EnumerationElements` WRITE;\n/*!40000 ALTER TABLE `EnumerationElements` DISABLE KEYS */;\n/*!40000 ALTER TABLE `EnumerationElements` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Enumerations`\n--\n\nDROP TABLE IF EXISTS `Enumerations`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Enumerations` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `name` char(128) NOT NULL DEFAULT '',\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `name` (`name`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `Enumerations`\n--\n\nLOCK TABLES `Enumerations` WRITE;\n/*!40000 ALTER TABLE `Enumerations` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Enumerations` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Errors`\n--\n\nDROP TABLE IF EXISTS `Errors`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Errors` (\n  `Number` int(10) unsigned NOT NULL DEFAULT '0',\n  `IdLanguage` int(10) unsigned NOT NULL DEFAULT '0',\n  `Message` char(255) NOT NULL DEFAULT '',\n  PRIMARY KEY (`Number`,`IdLanguage`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `Errors`\n--\n\nLOCK TABLES `Errors` WRITE;\n/*!40000 ALTER TABLE `Errors` DISABLE KEYS */;\nINSERT INTO `Errors` VALUES (4000,1,'Internal error.'),(4001,1,'Username not specified.'),(4002,1,'Invalid username.'),(4003,1,'Password not specified.'),(4004,1,'Invalid password.'),(2000,1,'Internal error'),(2001,1,'Username is not specified. Please fill out login name field.'),(2002,1,'You are not a reader.'),(2003,1,'Publication not specified.'),(2004,1,'There are other subscriptions not payed.'),(2005,1,'Time unit not specified.'),(3000,1,'Internal error.'),(3001,1,'Username already exists.'),(3002,1,'Name is not specified. Please fill out name field.'),(3003,1,'Username is not specified. Please fill out login name field.'),(3004,1,'Password is not specified. Please fill out password field.'),(3005,1,'EMail is not specified. Please fill out EMail field.'),(3006,1,'EMail address already exists. Please try to login with your old account.'),(3007,1,'Invalid user identifier'),(3008,1,'No country specified. Please select a country.'),(3009,1,'Password (again) is not specified. Please fill out password (again) field.'),(3010,1,'Passwords do not match. Please fill out the same password to both password fields.'),(3011,1,'Password is too simple. Please choose a better password (at least 6 characters).'),(5009,1,'The code you entered is not the same with the one shown in the image.'),(5008,1,'Please enter the code shown in the image.'),(5007,1,'EMail field is empty. You must fill in your EMail address.'),(5006,1,'The comment was rejected by the spam filters.'),(5005,1,'You are banned from submitting comments.'),(5004,1,'Comments are not enabled for this publication/article.'),(5003,1,'The article was not selected. You must view an article in order to post comments.'),(5002,1,'The comment content was empty.'),(5001,1,'You must be a registered user in order to submit a comment. Please subscribe or log in if you already have a subscription.'),(5000,1,'There was an internal error when submitting the comment.');\n/*!40000 ALTER TABLE `Errors` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Events`\n--\n\nDROP TABLE IF EXISTS `Events`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Events` (\n  `Id` int(10) unsigned NOT NULL DEFAULT '0',\n  `Name` varchar(140) NOT NULL DEFAULT '',\n  `Notify` enum('N','Y') NOT NULL DEFAULT 'N',\n  `IdLanguage` int(10) unsigned NOT NULL DEFAULT '0',\n  PRIMARY KEY (`Id`,`IdLanguage`),\n  UNIQUE KEY `Name` (`Name`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `Events`\n--\n\nLOCK TABLES `Events` WRITE;\n/*!40000 ALTER TABLE `Events` DISABLE KEYS */;\nINSERT INTO `Events` VALUES (1,'Add Publication','N',1),(2,'Delete Publication','N',1),(11,'Add Issue','N',1),(12,'Delete Issue','N',1),(13,'Change Issue Template','N',1),(14,'Change issue status','N',1),(15,'Add Issue Translation','N',1),(21,'Add Section','N',1),(22,'Delete section','N',1),(31,'Add Article','Y',1),(32,'Delete article','N',1),(33,'Change article field','N',1),(34,'Change article properties','N',1),(35,'Change article status','Y',1),(41,'Add Image','Y',1),(42,'Delete image','N',1),(43,'Change image properties','N',1),(51,'Add User','N',1),(52,'Delete User','N',1),(53,'Changes Own Password','N',1),(54,'Change User Password','N',1),(55,'Change User Permissions','N',1),(56,'Change user information','N',1),(61,'Add article type','N',1),(62,'Delete article type','N',1),(71,'Add article type field','N',1),(72,'Delete article type field','N',1),(81,'Add dictionary class','N',1),(82,'Delete dictionary class','N',1),(91,'Add dictionary keyword','N',1),(92,'Delete dictionary keyword','N',1),(101,'Add language','N',1),(102,'Delete language','N',1),(103,'Modify language','N',1),(112,'Delete templates','N',1),(111,'Add templates','N',1),(121,'Add user type','N',1),(122,'Delete user type','N',1),(123,'Change user type','N',1),(3,'Change publication information','N',1),(36,'Change article template','N',1),(57,'Add IP Group','N',1),(58,'Delete IP Group','N',1),(131,'Add country','N',1),(132,'Add country translation','N',1),(133,'Change country name','N',1),(134,'Delete country','N',1),(4,'Add default subscription time','N',1),(5,'Delete default subscription time','N',1),(6,'Change default subscription time','N',1),(113,'Edit template','N',1),(114,'Create template','N',1),(115,'Duplicate template','N',1),(141,'Add topic','N',1),(142,'Delete topic','N',1),(143,'Update topic','N',1),(144,'Add topic to article','N',1),(145,'Delete topic from article','N',1),(151,'Add alias','N',1),(152,'Delete alias','N',1),(153,'Update alias','N',1),(154,'Duplicate section','N',1),(155,'Duplicate article','N',1),(161,'Sync campsite and phorum users','N',1),(171,'Change system preferences','N',1),(116,'Rename Template','N',1),(117,'Move Template','N',1),(37,'Edit article content','N',1),(38,'Add file to article','N',1),(39,'Delete file from article','N',1),(172,'Add Author','N',1),(173,'Edit Author','N',1),(174,'Delete Author','N',1),(175,'Add author type','N',1),(176,'Delete author type','N',1);\n/*!40000 ALTER TABLE `Events` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `FailedLoginAttempts`\n--\n\nDROP TABLE IF EXISTS `FailedLoginAttempts`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `FailedLoginAttempts` (\n  `ip_address` varchar(40) NOT NULL DEFAULT '',\n  `time_of_attempt` bigint(20) NOT NULL DEFAULT '0',\n  KEY `ip_address` (`ip_address`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `FailedLoginAttempts`\n--\n\nLOCK TABLES `FailedLoginAttempts` WRITE;\n/*!40000 ALTER TABLE `FailedLoginAttempts` DISABLE KEYS */;\n/*!40000 ALTER TABLE `FailedLoginAttempts` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Images`\n--\n\nDROP TABLE IF EXISTS `Images`;\n\nCREATE TABLE Images (\n  Id INT AUTO_INCREMENT NOT NULL,\n  Location VARCHAR(255) NOT NULL,\n  ImageFileName VARCHAR(80) DEFAULT NULL,\n  ThumbnailFileName VARCHAR(80) DEFAULT NULL,\n  TimeCreated DATETIME DEFAULT NULL,\n  LastModified DATETIME DEFAULT NULL,\n  URL VARCHAR(255) DEFAULT NULL,\n  Description TEXT DEFAULT NULL,\n  width INT DEFAULT NULL,\n  height INT DEFAULT NULL,\n  Photographer VARCHAR(255) DEFAULT NULL,\n  photographer_url VARCHAR(255) DEFAULT NULL,\n  Place VARCHAR(255) DEFAULT NULL,\n  Date VARCHAR(255) DEFAULT NULL,\n  ContentType VARCHAR(255) NOT NULL,\n  is_updated_storage INT NOT NULL,\n  Source VARCHAR(255) DEFAULT NULL,\n  Status VARCHAR(255) NOT NULL,\n  UploadedByUser INT DEFAULT NULL,\n  INDEX IDX_E7B3BB5C447C15B9 (UploadedByUser),\n  INDEX is_updated_storage (is_updated_storage),\n  INDEX Description (Description (100)),\n  INDEX Photographer (Photographer),\n  INDEX Place (Place),\n  PRIMARY KEY(Id)\n) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\n--\n-- Dumping data for table `Images`\n--\n\nLOCK TABLES `Images` WRITE;\n/*!40000 ALTER TABLE `Images` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Images` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `IssuePublish`\n--\n\nDROP TABLE IF EXISTS `IssuePublish`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `IssuePublish` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `fk_publication_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_issue_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_language_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `time_action` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',\n  `publish_action` enum('P','U') NOT NULL DEFAULT 'P',\n  `do_publish_articles` enum('N','Y') NOT NULL DEFAULT 'Y',\n  `is_completed` enum('N','Y') NOT NULL DEFAULT 'N',\n  PRIMARY KEY (`id`),\n  KEY `issue_index` (`fk_publication_id`,`fk_issue_id`,`fk_language_id`),\n  KEY `action_time_index` (`time_action`,`is_completed`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `IssuePublish`\n--\n\nLOCK TABLES `IssuePublish` WRITE;\n/*!40000 ALTER TABLE `IssuePublish` DISABLE KEYS */;\n/*!40000 ALTER TABLE `IssuePublish` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Issues`\n--\n\nDROP TABLE IF EXISTS `Issues`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Issues` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `IdPublication` int(10) unsigned NOT NULL DEFAULT '0',\n  `Number` int(10) unsigned NOT NULL DEFAULT '0',\n  `IdLanguage` int(10) unsigned NOT NULL DEFAULT '0',\n  `Name` varchar(140) NOT NULL DEFAULT '',\n  `PublicationDate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',\n  `Published` enum('N','Y') NOT NULL DEFAULT 'N',\n  `IssueTplId` int(10) unsigned DEFAULT NULL,\n  `SectionTplId` int(10) unsigned DEFAULT NULL,\n  `ArticleTplId` int(10) unsigned DEFAULT NULL,\n  `ShortName` varchar(32) NOT NULL DEFAULT '',\n  PRIMARY KEY (`id`) USING BTREE,\n  UNIQUE KEY `ShortName` (`IdPublication`,`IdLanguage`,`ShortName`),\n  UNIQUE KEY `issue_unique` (`IdPublication`,`Number`,`IdLanguage`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `Issues`\n--\n\nLOCK TABLES `Issues` WRITE;\n/*!40000 ALTER TABLE `Issues` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Issues` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `KeywordClasses`\n--\n\nDROP TABLE IF EXISTS `KeywordClasses`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `KeywordClasses` (\n  `IdDictionary` int(10) unsigned NOT NULL DEFAULT '0',\n  `IdClasses` int(10) unsigned NOT NULL DEFAULT '0',\n  `IdLanguage` int(10) unsigned NOT NULL DEFAULT '0',\n  `Definition` mediumblob NOT NULL,\n  PRIMARY KEY (`IdDictionary`,`IdClasses`,`IdLanguage`),\n  KEY `IdClasses` (`IdClasses`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `KeywordClasses`\n--\n\nLOCK TABLES `KeywordClasses` WRITE;\n/*!40000 ALTER TABLE `KeywordClasses` DISABLE KEYS */;\n/*!40000 ALTER TABLE `KeywordClasses` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `KeywordIndex`\n--\n\nDROP TABLE IF EXISTS `KeywordIndex`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `KeywordIndex` (\n  `Keyword` varchar(70) NOT NULL DEFAULT '',\n  `Id` int(10) unsigned NOT NULL DEFAULT '0',\n  PRIMARY KEY (`Keyword`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `KeywordIndex`\n--\n\nLOCK TABLES `KeywordIndex` WRITE;\n/*!40000 ALTER TABLE `KeywordIndex` DISABLE KEYS */;\n/*!40000 ALTER TABLE `KeywordIndex` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Languages`\n--\n\nDROP TABLE IF EXISTS `Languages`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Languages` (\n  `Id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `Name` varchar(140) NOT NULL DEFAULT '',\n  `CodePage` varchar(140) NOT NULL DEFAULT '',\n  `OrigName` varchar(140) NOT NULL DEFAULT '',\n  `Code` varchar(21) NOT NULL DEFAULT '',\n  `RFC3066bis` varchar(255) NOT NULL DEFAULT '',\n  `Month1` varchar(140) NOT NULL DEFAULT '',\n  `Month2` varchar(140) NOT NULL DEFAULT '',\n  `Month3` varchar(140) NOT NULL DEFAULT '',\n  `Month4` varchar(140) NOT NULL DEFAULT '',\n  `Month5` varchar(140) NOT NULL DEFAULT '',\n  `Month6` varchar(140) NOT NULL DEFAULT '',\n  `Month7` varchar(140) NOT NULL DEFAULT '',\n  `Month8` varchar(140) NOT NULL DEFAULT '',\n  `Month9` varchar(140) NOT NULL DEFAULT '',\n  `Month10` varchar(140) NOT NULL DEFAULT '',\n  `Month11` varchar(140) NOT NULL DEFAULT '',\n  `Month12` varchar(140) NOT NULL DEFAULT '',\n  `WDay1` varchar(140) NOT NULL DEFAULT '',\n  `WDay2` varchar(140) NOT NULL DEFAULT '',\n  `WDay3` varchar(140) NOT NULL DEFAULT '',\n  `WDay4` varchar(140) NOT NULL DEFAULT '',\n  `WDay5` varchar(140) NOT NULL DEFAULT '',\n  `WDay6` varchar(140) NOT NULL DEFAULT '',\n  `WDay7` varchar(140) NOT NULL DEFAULT '',\n  `ShortMonth1` varchar(20) DEFAULT NULL,\n  `ShortMonth2` varchar(20) DEFAULT NULL,\n  `ShortMonth3` varchar(20) DEFAULT NULL,\n  `ShortMonth4` varchar(20) DEFAULT NULL,\n  `ShortMonth5` varchar(20) DEFAULT NULL,\n  `ShortMonth6` varchar(20) DEFAULT NULL,\n  `ShortMonth7` varchar(20) DEFAULT NULL,\n  `ShortMonth8` varchar(20) DEFAULT NULL,\n  `ShortMonth9` varchar(20) DEFAULT NULL,\n  `ShortMonth10` varchar(20) DEFAULT NULL,\n  `ShortMonth11` varchar(20) DEFAULT NULL,\n  `ShortMonth12` varchar(20) DEFAULT NULL,\n  `ShortWDay1` varchar(20) DEFAULT NULL,\n  `ShortWDay2` varchar(20) DEFAULT NULL,\n  `ShortWDay3` varchar(20) DEFAULT NULL,\n  `ShortWDay4` varchar(20) DEFAULT NULL,\n  `ShortWDay5` varchar(20) DEFAULT NULL,\n  `ShortWDay6` varchar(20) DEFAULT NULL,\n  `ShortWDay7` varchar(20) DEFAULT NULL,\n  PRIMARY KEY (`Id`),\n  UNIQUE KEY `Name` (`Name`)\n) ENGINE=MyISAM AUTO_INCREMENT=27 DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `Languages`\n--\n\nLOCK TABLES `Languages` WRITE;\n/*!40000 ALTER TABLE `Languages` DISABLE KEYS */;\nINSERT INTO `Languages` (`Id`, `Name`, `CodePage`, `OrigName`, `Code`, `RFC3066bis`, `Month1`, `Month2`, `Month3`, `Month4`, `Month5`, `Month6`, `Month7`, `Month8`, `Month9`, `Month10`, `Month11`, `Month12`, `WDay1`, `WDay2`, `WDay3`, `WDay4`, `WDay5`, `WDay6`, `WDay7`, `ShortMonth1`, `ShortMonth2`, `ShortMonth3`, `ShortMonth4`, `ShortMonth5`, `ShortMonth6`, `ShortMonth7`, `ShortMonth8`, `ShortMonth9`, `ShortMonth10`, `ShortMonth11`, `ShortMonth12`, `ShortWDay1`, `ShortWDay2`, `ShortWDay3`, `ShortWDay4`, `ShortWDay5`, `ShortWDay6`, `ShortWDay7`) VALUES\n(1, 'English', 'ISO_8859-1', 'English', 'en', 'en-US', 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December', 'Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec', 'Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'),\n(5, 'German', 'ISO_8859-1', 'Deutsch', 'de', 'de-DE', 'Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember', 'Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag', 'Jan', 'Feb', 'Mär', 'Apr', 'Mai', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dez', 'So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'),\n(9, 'Portuguese (Portugal)', 'ISO_8859-1', 'Português', 'pt', 'pt-PT', 'Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro', 'Domingo', 'Segunda-feira', 'Terça-feira', 'Quarta-feira', 'Quinta-feira', 'Sexta-feira', 'Sábado', 'Jan', 'Fev', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Set', 'Out', 'Nov', 'Dez', 'Dom', 'Seg', 'Ter', 'Qua', 'Qui', 'Sex', 'Sáb'),\n(12, 'French', 'ISO_8859-1', 'Français', 'fr', 'fr-FR', 'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juli', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre', 'Dimanche', 'Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi', 'Jan', 'Fév', 'Mar', 'Avr', 'Mai', 'Juin', 'Juil', 'Août', 'Sept', 'Oct', 'Nov', 'Déc', 'Dim', 'Lun', 'Mar', 'Mer', 'Jeu', 'Ven', 'Sam'),\n(13, 'Spanish', 'ISO_8859-1', 'Español', 'es', 'es-ES', 'Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Septiembre', 'Octubre', 'Noviembre', 'Diciembre', 'Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado', 'Ene', 'Feb', 'Mar', 'Abr', 'May', 'Jun', 'Jul', 'Ago', 'Sep', 'Oct', 'Nov', 'Dic', 'Do', 'Lu', 'Ma', 'Mi', 'Ju', 'Vi', 'Sa'),\n(2, 'Romanian', 'ISO_8859-2', 'Română', 'ro', 'ro-RO', 'Ianuarie', 'Februarie', 'Martie', 'Aprilie', 'Mai', 'Iunie', 'Iulie', 'August', 'Septembrie', 'Octombrie', 'Noiembrie', 'Decembrie', 'Duminică', 'Luni', 'Marţi', 'Miercuri', 'Joi', 'Vineri', 'Sâmbătă', 'Ian', 'Febr', 'Mart', 'Apr', 'Mai', 'Iun', 'Iul', 'Aug', 'Sept', 'Oct', 'Nov', 'Dec', 'Dum', 'Lun', 'Mar', 'Mie', 'Joi', 'Vin', 'Sâm'),\n(7, 'Croatian', 'ISO_8859-2', 'Hrvatski', 'hr', 'hr-HR', 'Siječanj', 'Veljača', 'Ožujak', 'Travanj', 'Svibanj', 'Lipanj', 'Srpanj', 'Kolovoz', 'Rujan', 'Listopad', 'Studeni', 'Prosinac', 'Nedjelja', 'Ponedjeljak', 'Utorak', 'Srijeda', 'Četvrtak', 'Petak', 'Subota', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),\n(29, 'Czech', 'ISO_8859-2', 'Česky', 'cs', 'cs-CZ', 'Leden', 'Únor', 'Březen', 'Duben', 'Květen', 'Červen', 'Červenec', 'Srpen', 'Září', 'Říjen', 'Listopad', 'Prosinec', 'Led', 'Úno', 'Bře', 'Dub', 'Květen', 'Čvn', 'Čvc', 'Srp', 'Zář', 'Říj', 'Lis', 'Pro', 'Neděle', 'Pondělí', 'Úterý', 'Středa', 'Čtvrtek', 'Pátek', 'Sobota', 'Ne', 'Po', 'Út', 'St', 'Čt', 'Pá', 'So'),\n(30, 'Italian', 'ISO_8859-1', 'Italiano', 'it', 'it-IT', 'gennaio', 'febbraio', 'marzo', 'aprile', 'maggio', 'giugno', 'luglio', 'agosto', 'settembre', 'ottobre', 'novembre', 'dicembre', 'Domenica', 'Lunedì', 'Martedì', 'Mercoledì', 'Giovedì', 'Venerdì', 'Sabato', 'gen', 'feb', 'mar', 'apr', 'mag', 'giu', 'lug', 'ago', 'set', 'ott', 'nov', 'dic', 'Do', 'Lu', 'Ma', 'Me', 'Gi', 'Ve', 'Sa'),\n(11, 'Serbian (Latin)', 'ISO_8859-2', 'Srpskohrvatski', 'sh', 'sr-Latn-RS', 'januar', 'februar', 'mart', 'april', 'maj', 'jun', 'jul', 'avgust', 'septembar', 'oktobar', 'novembar', 'decembar', 'nedelja', 'ponedeljak', 'utorak', 'sreda', 'četvrtak', 'petak', 'subota', 'jan', 'feb', 'mar', 'apr', 'maj', 'jun', 'jul', 'avg', 'sep', 'okt', 'nov', 'dec', 'ned', 'pon', 'uto', 'sre', 'čet', 'pet', 'sub'),\n(10, 'Serbian (Cyrillic)', 'ISO_8859-5', 'Српски (Ћирилица)', 'sr', 'sr-Cyrl-RS', 'јануар', 'фебруар', 'март', 'април', 'мај', 'јун', 'јул', 'август', 'септембар', 'октобар', 'новембар', 'децембар', 'недеља', 'понедељак', 'уторак', 'среда', 'четвртак', 'петак', 'субота', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),\n(15, 'Russian', 'ISO_8859-5', 'Русский', 'ru', 'ru-RU', 'январь', 'февраль', 'март', 'апрель', 'май', 'июнь', 'июль', 'август', 'сентябрь', 'октябрь', 'ноябрь', 'декабрь', 'воскресенье', 'понедельник', 'вторник', 'среда', 'четверг', 'пятница', 'суббота', 'янв', 'фев', 'мрт', 'апр', 'май', 'июн', 'июл', 'авг', 'снт', 'окт', 'нояб', 'дек', 'вск', 'пнд', 'втр', 'срд', 'чтв', 'птн', 'суб'),\n(18, 'Swedish', 'ISO_8859-1', 'Svenska', 'sv', 'sv-SE', 'januari', 'februari', 'mars', 'april', 'maj', 'juni', 'juli', 'augusti', 'september', 'oktober', 'november', 'december', 'söndag', 'måndag', 'tisdag', 'onsdag', 'torsdag', 'fredag', 'lördag', 'jan', 'feb', 'mar', 'apr', 'maj', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'dec', 'sön', 'mån', 'tis', 'ons', 'tor', 'fre', 'lör'),\n(16, 'Chinese (Simplified)', 'UTF-8', '中文', 'zh', 'zh-Hans', '一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月', '星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六', '一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月', '周日', '周一', '周二', '周三', '周四', '周五', '周六'),\n(17, 'Arabic', 'UTF-8', 'عربي', 'ar', 'ar-YE', 'كانون الثاني', 'شباط', 'آذار', 'نيسان', 'آيار', 'حزيران', 'تموز', 'آب', 'أيلول', 'تشرين أول', 'تشرين الثاني', 'كانون أول', 'الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),\n(19, 'Korean', 'UTF-8', '한국어', 'ko', 'ko-KR', '1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월', '일요일', '월요일', '화요일', '수요일', '목요일', '금요일', '토요일', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),\n(20, 'Dutch', 'ISO_8859-1', 'Nederlands', 'nl', 'nl-NL', 'januari', 'februari', 'maart', 'april', 'mei', 'juni', 'juli', 'augustus', 'september', 'oktober', 'november', 'december', 'zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag', 'jan', 'feb', 'maart', 'apr', 'mei', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'dec', 'zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'),\n(22, 'Belarus', 'ISO_8859-5', 'Беларуская', 'be', 'be-BY', 'студзеня', 'лютага', 'сакавiка', 'красавiка', 'мая', 'чэрвеня', 'лiпеня', 'жніўня', 'верасьня', 'кастрычнiка', 'сьнежня', 'студзеня', 'нядзеля', 'панядзелак', 'аўторак', 'серада', 'чацверг', 'пятнiца', 'субота', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),\n(23, 'Georgian', 'GEORGIAN-ACADEMY', 'ქართული', 'ka', 'ka-GE', 'იანვარი', 'თებერვალი', 'მარტი', 'აპრილი', 'მაისი', 'ივნისი', 'ივლისი', 'აგვისტო', 'სექტემბერი', 'ოქტომბერი', 'ნოემბერი', 'დეკემბერი', 'კვირა', 'ორშაბათი', 'სამშაბათი', 'ოთხშაბათი', 'ხუთშაბათი', 'პარასკევი', 'შაბათი', 'იან', 'თებ', 'მარ', 'აპრ', 'მაი', 'ივნ', 'ივლ', 'აგვ', 'სექ', 'ოქტ', 'ნოე', 'დეკ', 'კვ', 'ორშ', 'სამშ', 'ოთხშ', 'ხუთშ', 'პარ', 'შაბ'),\n(24, 'Chinese (Traditional)', 'UTF-8', '繁體中文', 'zh_TW', 'zh-Hant', '一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月', '星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六', '一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月', '星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'),\n(25, 'Polish', 'ISO_8859-2', 'Polski', 'pl', 'pl-PL', 'Styczeń', 'Luty', 'Marzec', 'Kwiecień', 'Maj', 'Czerwiec', 'Lipiec', 'Sierpień', 'Wrzesień', 'Październik', 'Listopad', 'Grudzień', 'Niedziela:', 'Poniedziałek', 'Wtorek:', 'Środa', 'Czwartek', 'Piątek', 'Sobota', 'Sty:', 'Lt:', 'Mar:', 'Kw:', 'Ma:', 'Cz:', 'Lip:', 'Sier:', 'Wrz:', 'Paź:', 'Lis:', 'Gru:', 'Nd:', 'Pon:', 'Wt:', 'Śr:', 'Czw:', 'Pt:', 'Sob:'),\n(26, 'Greek', 'ISO_8859-7', 'Ελληνικά', 'el', 'el-GR', 'Ιανουάριος', 'Φεβρουάριος', 'Μάρτιος', 'Απρίλιος', 'Μάιος', 'Ιούνιος', 'Ιούλιος', 'Αύγουστος', 'Σεπτέμβριος', 'Οκτώβριος', 'Νοέμβριος', 'Δεκέμβριος', 'Κυριακή', 'Δευτέρα', 'Τρίτη', 'Τετάρτη', 'Πέπμτη', 'Παρασκευή', 'Σάββατο', 'Ιαν', 'Φεβ', 'Μαρ', 'Απρ', 'Μαϊ', 'Ιουν', 'Ιουλ', 'Αυγ', 'Σεπ', 'Οκτ', 'Νοε', 'Δεκ', 'Κυ', 'Δε', 'Τρ', 'Τε', 'Πε', 'Παρ', 'Σα:'),\n(27, 'Hebrew', 'ISO_8859-8', 'עברית', 'he', 'he-IL', 'ינואר', 'פברואר', 'מרץ', 'אפריל', 'מאי', 'יוני', 'יולי', 'אוגוסט', 'ספטמבר', 'אוקטובר', 'נובמבר', 'דצמבר', 'ראשון', 'שני', 'שלישי', 'רביעי', 'חמישי', 'שישי', 'שבת', '''ינו', '''פבר', 'מרץ', '''אפר', 'מאי', 'יוני', 'יולי', '''אוג', '''ספט', '''אוק', '''נוב', '''דצמ', '''ר', 'שני', '''של', '''רב', '''חמ', '''שי', '''שב'),\n(28, 'Bangla', 'UTF-8', 'বাংলা', 'bn', 'bn-BD', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),\n(31, 'Portuguese (Brazil)', 'ISO_8859-1', 'Português (Brasil)', 'pt_BR', 'pt-BR', 'Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro', 'Domingo', 'Segunda-feira', 'Terça-feira', 'Quarta-feira', 'Quinta-feira', 'Sexta-feira', 'Sábado', 'Jan', 'Fev', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Set', 'Out', 'Nov', 'Dez', 'Dom', 'Seg', 'Ter', 'Qua', 'Qui', 'Sex', 'Sáb'),\n(32, 'Albanian', 'UTF-8', 'Gjuha shqipe', 'sq', 'sq-AL', 'Janar', 'Shkurt', 'Mars', 'Prill', 'Maj', 'Qershor', 'Korrik', 'Gusht', 'Shtator', 'Tetor', 'Nëntor', 'Dhjetor', 'E Djelë', 'E Hënë', 'E Matrë', 'E Mërkurë', 'E Enjte', 'E Premte', 'E Shtunë', 'Jan', 'Shk', 'Mar', 'Pri', 'Maj', 'Qer', 'Korr', 'Gush', 'Sht', 'Tet', 'Nënt', 'Dhje', 'Dje', 'Hen', 'Mar', 'Merk', 'Enj', 'Pre', 'Shtu'),\n(33, 'Turkish', 'ISO_8859-9', 'Türkçe', 'tr', 'tr-TR', 'Ocak', 'Şubat', 'Mart', 'Nisan', 'Mayıs', 'Haziran', 'Temmuz', 'Ağustos', 'Eylül', 'Ekim', 'Kasım', 'Aralık', 'Pazar', 'Pazartesi', 'Salı', 'Çarsamba', 'Persembe', 'Cuma', 'Cumartesi', 'Oca', 'Sub', 'Mar', 'Nis', 'May', 'Haz', 'Tem', 'Aðu', 'Eyl', 'Eki', 'Kas', 'Ara', 'Paz', 'Pzt', 'Sal', 'Çar', 'Per', 'Cum', 'Cts'),\n(34, 'Ukrainian', 'UTF-8', 'Українська', 'uk', 'uk-UA', 'Січень', 'Лютий', 'Березень', 'Квітень', 'Травень', 'Червень', 'Липень', 'Серпень', 'Вересень', 'Жовтень', 'Листопад', 'Грудень', 'Неділя', 'Понеділок', 'Вівторок', 'Середа', 'Четвер', 'П’ятниця', 'Субота', 'Січ', 'Лют', 'Бер', 'Кві', 'Тра', 'Чер', 'Лип', 'Сер', 'Вер', 'Жов', 'Лис', 'Гру', 'Нд', 'Пн', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб'),\n(35, 'English (Britain)', 'ISO_8859-1', 'English (Britain)', 'en_GB', 'en-GB', 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December', 'Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec', 'Sun', 'Mon', 'Tues', 'Weds', 'Thurs', 'Fri', 'Sat'),\n(36, 'Kurdish', 'UTF-8', 'کوردی', 'ku', 'ku-TR', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),\n(37, 'German (Austria)', 'ISO_8859-1', 'Deutsch (Österreich)', 'de_AT', 'de-AT', 'Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember', 'Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag', 'Jan', 'Feb', 'Mär', 'Apr', 'Mai', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dez', 'So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'),\n(38, 'Hungarian', 'ISO_8859-2', 'Magyar', 'hu', 'hu-HU', 'Január', 'Február', 'Március', 'Április', 'Május', 'Június', 'Július', 'Augusztus', 'Szeptember', 'Október', 'November', 'December', 'Vasárnap', 'Hétfő', 'Kedd', 'Szerda', 'Csütörtök', 'Péntek', 'Szombat', 'Jan', 'Feb', 'Már', 'Ápr', 'Május', 'Jún', 'Júl', 'Aug', 'Szep', 'Okt', 'Nov', 'Dec', 'Va', 'Hé', 'Ke', 'Sze', 'Cs', 'Pé', 'Szu'),\n(39, 'Azerbaijani', 'ISO_8859-9', 'Azərbaycanca', 'az', 'az-AZ', 'Yanvar', 'Fevral', 'Mart', 'Aprel', 'May', 'İyun', 'İyul', 'Avqust', 'Sentyabr', 'Oktyabr', 'Noyabr', 'Dekabr', 'Bazar', 'Bazar ertəsi', 'Çərşənbə axşamı', 'Çərşənbə', 'Cümə axşamı', 'Cümə', 'Şənbə', 'Yanvar', 'Fevral', 'Mart', 'Aprel', 'May', 'İyun', 'İyul', 'Avqust', 'Sentyabr', 'Oktyabr', 'Noyabr', 'Dekabr', 'B', 'B.e', 'Ç.a', 'Ç', 'Ca', 'C', 'Ş'),\n(40, 'Danish', 'ISO_8859-1', 'Dansk', 'da', 'da-DK', 'Januar', 'Februar', 'Marts', 'April', 'Maj', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'December', 'Søndag', 'Mandag', 'Tirsdag', 'Onsdag', 'Torsdag', 'Fredag', 'Lørdag', 'Jan', 'Feb', 'Mar', 'Apr', 'Maj', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dec', 'Søn', 'Man', 'Tir', 'Ons', 'Tor', 'Fre', 'Lør'),\n(41, 'Armenian', 'UTF-8', 'Հայերեն', 'hy_AM', 'hy-AM', 'Հունվար', 'Փետրվար', 'Մարտ', 'Ապրիլ', 'Մայիս', 'Հունիս', 'Հուլիս', 'Օգոստոս', 'Սեպտեմբեր', 'Հոկտեմբեր', 'Նոյեմբեր', 'Դեկտեմբեր', 'Կիրակի', 'Երկուշաբթի', 'Երեքշաբթի', 'Չորեքշաբթի', 'Հինգշաբթի', 'ՈՒրբաթ', 'Շաբաթ', 'Հունվ', 'Փետր', 'Մարտ', 'Ապր', 'Մայ', 'Հուն', 'Հուլ', 'Օգոս', 'Սեպ', 'Հոկտ', 'Նոյ', 'Դեկ', 'Կիր', 'Երկ', 'Երք', 'Չոր', 'Հնգ', 'ՈՒր', 'Շաբ');\n/*!40000 ALTER TABLE `Languages` ENABLE KEYS */;\nUNLOCK TABLES;\n--\n-- Table structure for table `LocationContents`\n--\n\nDROP TABLE IF EXISTS `LocationContents`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `LocationContents` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `poi_name` varchar(1023) NOT NULL,\n  `poi_link` varchar(1023) NOT NULL DEFAULT '',\n  `poi_perex` varchar(15100) NOT NULL DEFAULT '',\n  `poi_content_type` tinyint(4) NOT NULL DEFAULT '0',\n  `poi_content` text NOT NULL,\n  `poi_text` text NOT NULL,\n  `IdUser` int(10) unsigned NOT NULL DEFAULT '0',\n  `time_updated` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,\n  PRIMARY KEY (`id`),\n  KEY `location_contents_poi_name` (`poi_name`(64))\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `LocationContents`\n--\n\nLOCK TABLES `LocationContents` WRITE;\n/*!40000 ALTER TABLE `LocationContents` DISABLE KEYS */;\n/*!40000 ALTER TABLE `LocationContents` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Locations`\n--\n\nDROP TABLE IF EXISTS `Locations`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Locations` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `poi_location` geometry NOT NULL,\n  `poi_type` varchar(40) NOT NULL,\n  `poi_type_style` int(11) NOT NULL DEFAULT '0',\n  `poi_center` point NOT NULL,\n  `poi_radius` double NOT NULL DEFAULT '0',\n  `IdUser` int(10) unsigned NOT NULL DEFAULT '0',\n  `time_updated` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,\n  PRIMARY KEY (`id`),\n  SPATIAL KEY `locations_poi_location` (`poi_location`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `Locations`\n--\n\nLOCK TABLES `Locations` WRITE;\n/*!40000 ALTER TABLE `Locations` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Locations` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Log`\n--\n\nDROP TABLE IF EXISTS `Log`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Log` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `time_created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',\n  `fk_event_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_user_id` int(10) unsigned DEFAULT NULL,\n  `text` varchar(255) NOT NULL DEFAULT '',\n  `user_ip` varchar(39) NOT NULL DEFAULT '',\n  `priority` smallint(1) unsigned NOT NULL DEFAULT '6',\n  PRIMARY KEY (`id`),\n  KEY `priority` (`priority`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `Log`\n--\n\nLOCK TABLES `Log` WRITE;\n/*!40000 ALTER TABLE `Log` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Log` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `MapLocationLanguages`\n--\n\nDROP TABLE IF EXISTS `MapLocationLanguages`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `MapLocationLanguages` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `fk_maplocation_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_language_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_content_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `poi_display` tinyint(4) NOT NULL DEFAULT '1',\n  PRIMARY KEY (`id`),\n  KEY `map_location_languages_maplocation_id` (`fk_maplocation_id`),\n  KEY `map_location_languages_content_id` (`fk_content_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `MapLocationLanguages`\n--\n\nLOCK TABLES `MapLocationLanguages` WRITE;\n/*!40000 ALTER TABLE `MapLocationLanguages` DISABLE KEYS */;\n/*!40000 ALTER TABLE `MapLocationLanguages` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `MapLocationMultimedia`\n--\n\nDROP TABLE IF EXISTS `MapLocationMultimedia`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `MapLocationMultimedia` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `fk_maplocation_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_multimedia_id` int(10) unsigned NOT NULL DEFAULT '0',\n  PRIMARY KEY (`id`),\n  KEY `maplocationmultimedia_maplocation_id` (`fk_maplocation_id`),\n  KEY `maplocationmultimedia_multimedia_id` (`fk_multimedia_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `MapLocationMultimedia`\n--\n\nLOCK TABLES `MapLocationMultimedia` WRITE;\n/*!40000 ALTER TABLE `MapLocationMultimedia` DISABLE KEYS */;\n/*!40000 ALTER TABLE `MapLocationMultimedia` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `MapLocations`\n--\n\nDROP TABLE IF EXISTS `MapLocations`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `MapLocations` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `fk_map_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_location_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `poi_style` varchar(1023) NOT NULL,\n  `rank` int(11) NOT NULL,\n  PRIMARY KEY (`id`),\n  KEY `map_locations_point_id` (`fk_location_id`),\n  KEY `map_locations_map_id` (`fk_map_id`),\n  KEY `map_locations_poi_style_idx` (`poi_style`(64))\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `MapLocations`\n--\n\nLOCK TABLES `MapLocations` WRITE;\n/*!40000 ALTER TABLE `MapLocations` DISABLE KEYS */;\n/*!40000 ALTER TABLE `MapLocations` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Maps`\n--\n\nDROP TABLE IF EXISTS `Maps`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Maps` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `fk_article_number` int(10) unsigned NOT NULL DEFAULT '0',\n  `MapRank` int(10) unsigned NOT NULL DEFAULT '1',\n  `MapUsage` tinyint(4) NOT NULL DEFAULT '1',\n  `MapCenterLongitude` double NOT NULL DEFAULT '0',\n  `MapCenterLatitude` double NOT NULL DEFAULT '0',\n  `MapDisplayResolution` smallint(6) NOT NULL DEFAULT '0',\n  `MapProvider` varchar(255) NOT NULL DEFAULT '',\n  `MapWidth` int(11) NOT NULL DEFAULT '0',\n  `MapHeight` int(11) NOT NULL DEFAULT '0',\n  `MapName` varchar(1023) NOT NULL,\n  `IdUser` int(10) unsigned NOT NULL DEFAULT '0',\n  `time_updated` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,\n  PRIMARY KEY (`id`),\n  KEY `maps_article_number` (`fk_article_number`),\n  KEY `maps_map_name` (`MapName`(64))\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `Maps`\n--\n\nLOCK TABLES `Maps` WRITE;\n/*!40000 ALTER TABLE `Maps` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Maps` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Multimedia`\n--\n\nDROP TABLE IF EXISTS `Multimedia`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Multimedia` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `media_type` varchar(255) NOT NULL DEFAULT '',\n  `media_spec` varchar(255) NOT NULL DEFAULT '',\n  `media_src` varchar(1023) NOT NULL DEFAULT '',\n  `media_height` int(11) NOT NULL DEFAULT '0',\n  `media_width` int(11) NOT NULL DEFAULT '0',\n  `options` varchar(1023) NOT NULL DEFAULT '',\n  `IdUser` int(10) unsigned NOT NULL DEFAULT '0',\n  `time_updated` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,\n  PRIMARY KEY (`id`),\n  KEY `multimedia_media_type` (`media_type`(32)),\n  KEY `multimedia_media_src` (`media_src`(64))\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `Multimedia`\n--\n\nLOCK TABLES `Multimedia` WRITE;\n/*!40000 ALTER TABLE `Multimedia` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Multimedia` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `ObjectTypes`\n--\n\nDROP TABLE IF EXISTS `ObjectTypes`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `ObjectTypes` (\n  `id` int(11) NOT NULL AUTO_INCREMENT,\n  `name` varchar(255) NOT NULL DEFAULT '',\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `OBJECTTYPES_NAME` (`name`)\n) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `ObjectTypes`\n--\n\nLOCK TABLES `ObjectTypes` WRITE;\n/*!40000 ALTER TABLE `ObjectTypes` DISABLE KEYS */;\nINSERT INTO `ObjectTypes` VALUES (1,'article');\n/*!40000 ALTER TABLE `ObjectTypes` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Plugins`\n--\n\nDROP TABLE IF EXISTS `Plugins`;\n\nCREATE TABLE Plugins (\n  Id INT AUTO_INCREMENT NOT NULL,\n  Name VARCHAR(256) NOT NULL,\n  Details LONGTEXT NOT NULL,\n  type INT NOT NULL,\n  installed_with INT NOT NULL,\n  Description LONGTEXT NOT NULL,\n  Version VARCHAR(256) NOT NULL,\n  author VARCHAR(256) NOT NULL,\n  license VARCHAR(256) NOT NULL,\n  Enabled TINYINT(1) NOT NULL,\n  installed_at DATETIME NOT NULL,\n  updated_at DATETIME DEFAULT NULL,\n  PRIMARY KEY(Id)\n) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\n--\n-- Table structure for table `Publications`\n--\n\nDROP TABLE IF EXISTS `Publications`;\nCREATE TABLE Publications (\n  Id INT AUTO_INCREMENT NOT NULL,\n  Name VARCHAR(255) NOT NULL,\n  comments_public_enabled VARCHAR(255) DEFAULT NULL,\n  comments_moderator_to VARCHAR(255) DEFAULT NULL,\n  comments_moderator_from VARCHAR(255) DEFAULT NULL,\n  IdDefaultAlias INT DEFAULT NULL,\n  IdURLType INT DEFAULT NULL,\n  fk_forum_id INT DEFAULT NULL,\n  comments_enabled TINYINT(1) DEFAULT NULL,\n  comments_article_default_enabled TINYINT(1) DEFAULT NULL,\n  comments_subscribers_moderated TINYINT(1) DEFAULT NULL,\n  comments_public_moderated TINYINT(1) DEFAULT NULL,\n  comments_captcha_enabled TINYINT(1) DEFAULT NULL,\n  comments_spam_blocking_enabled TINYINT(1) DEFAULT NULL,\n  url_error_tpl_id INT DEFAULT NULL,\n  seo VARCHAR(255) DEFAULT NULL,\n  IdDefaultLanguage int(10),\n  meta_title VARCHAR(255) DEFAULT NULL,\n  meta_keywords VARCHAR(255) DEFAULT NULL,\n  meta_description VARCHAR(255) DEFAULT NULL,\n  INDEX IDX_2A49E10CEC194F36 (IdDefaultLanguage),\n  INDEX IDX_2A49E10CAB83D3A4 (IdDefaultAlias),\n  INDEX Name (Name), PRIMARY KEY(Id)\n) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\n--\n-- Dumping data for table `Publications`\n--\n\nLOCK TABLES `Publications` WRITE;\n/*!40000 ALTER TABLE `Publications` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Publications` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `rating`\n--\n\nDROP TABLE IF EXISTS `rating`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `rating` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `article_number` int(10) unsigned NOT NULL,\n  `user_id` int(10) unsigned NOT NULL,\n  `rating_score` int(10) NOT NULL DEFAULT 0,\n  `time_created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',\n  `time_updated` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',\n  PRIMARY KEY (`id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `rating`\n--\n\nLOCK TABLES `rating` WRITE;\n/*!40000 ALTER TABLE `rating` DISABLE KEYS */;\n/*!40000 ALTER TABLE `rating` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `RequestObjects`\n--\n\nDROP TABLE IF EXISTS `RequestObjects`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `RequestObjects` (\n  `object_id` int(11) NOT NULL AUTO_INCREMENT,\n  `object_type_id` int(11) NOT NULL DEFAULT '0',\n  `request_count` int(11) NOT NULL DEFAULT '0',\n  `last_update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,\n  PRIMARY KEY (`object_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `RequestObjects`\n--\n\nLOCK TABLES `RequestObjects` WRITE;\n/*!40000 ALTER TABLE `RequestObjects` DISABLE KEYS */;\n/*!40000 ALTER TABLE `RequestObjects` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `RequestStats`\n--\n\nDROP TABLE IF EXISTS `RequestStats`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `RequestStats` (\n  `object_id` int(11) NOT NULL,\n  `date` date NOT NULL,\n  `hour` int(11) NOT NULL,\n  `request_count` int(11) NOT NULL DEFAULT '0',\n  PRIMARY KEY (`object_id`,`date`,`hour`),\n  KEY `stats_object_idx` (`object_id`),\n  KEY `stats_object_date_idx` (`object_id`,`date`),\n  KEY `stats_object_hour_idx` (`object_id`,`hour`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `RequestStats`\n--\n\nLOCK TABLES `RequestStats` WRITE;\n/*!40000 ALTER TABLE `RequestStats` DISABLE KEYS */;\n/*!40000 ALTER TABLE `RequestStats` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Requests`\n--\n\nDROP TABLE IF EXISTS `Requests`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Requests` (\n  `session_id` varchar(255) NOT NULL,\n  `object_id` int(11) NOT NULL,\n  `last_stats_update` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',\n  PRIMARY KEY (`session_id`,`object_id`),\n  KEY `requests_session_idx` (`session_id`),\n  KEY `requests_object_idx` (`object_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `Requests`\n--\n\nLOCK TABLES `Requests` WRITE;\n/*!40000 ALTER TABLE `Requests` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Requests` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Sections`\n--\n\nDROP TABLE IF EXISTS `Sections`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Sections` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `fk_issue_id` int(10) unsigned NOT NULL,\n  `IdPublication` int(10) unsigned NOT NULL DEFAULT '0',\n  `NrIssue` int(10) unsigned NOT NULL DEFAULT '0',\n  `IdLanguage` int(10) unsigned NOT NULL DEFAULT '0',\n  `Number` int(10) unsigned NOT NULL DEFAULT '0',\n  `Name` varchar(255) NOT NULL DEFAULT '',\n  `ShortName` varchar(32) NOT NULL DEFAULT '',\n  `Description` blob,\n  `SectionTplId` int(10) unsigned DEFAULT NULL,\n  `ArticleTplId` int(10) unsigned DEFAULT NULL,\n  PRIMARY KEY (`id`) USING BTREE,\n  UNIQUE KEY `IdPublication` (`IdPublication`,`NrIssue`,`IdLanguage`,`Name`),\n  UNIQUE KEY `ShortName` (`IdPublication`,`NrIssue`,`IdLanguage`,`ShortName`),\n  UNIQUE KEY `section_unique` (`IdPublication`,`NrIssue`,`IdLanguage`,`Number`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `Sections`\n--\n\nLOCK TABLES `Sections` WRITE;\n/*!40000 ALTER TABLE `Sections` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Sections` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Sessions`\n--\n\nDROP TABLE IF EXISTS `Sessions`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Sessions` (\n  `id` varchar(255) NOT NULL,\n  `start_time` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',\n  `user_id` int(11) DEFAULT NULL,\n  PRIMARY KEY (`id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `Sessions`\n--\n\nLOCK TABLES `Sessions` WRITE;\n/*!40000 ALTER TABLE `Sessions` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Sessions` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `SubsByIP`\n--\n\nDROP TABLE IF EXISTS `SubsByIP`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `SubsByIP` (\n  `IdUser` int(10) unsigned NOT NULL DEFAULT '0',\n  `StartIP` int(10) unsigned NOT NULL DEFAULT '0',\n  `Addresses` int(10) unsigned NOT NULL DEFAULT '0',\n  PRIMARY KEY (`IdUser`,`StartIP`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `SubsByIP`\n--\n\nLOCK TABLES `SubsByIP` WRITE;\n/*!40000 ALTER TABLE `SubsByIP` DISABLE KEYS */;\n/*!40000 ALTER TABLE `SubsByIP` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `SubsDefTime`\n--\n\nDROP TABLE IF EXISTS `SubsDefTime`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `SubsDefTime` (\n  `CountryCode` char(21) NOT NULL DEFAULT '',\n  `IdPublication` int(10) unsigned NOT NULL DEFAULT '0',\n  `TrialTime` int(10) unsigned NOT NULL DEFAULT '0',\n  `PaidTime` int(10) unsigned NOT NULL DEFAULT '0',\n  PRIMARY KEY (`CountryCode`,`IdPublication`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `SubsDefTime`\n--\n\nLOCK TABLES `SubsDefTime` WRITE;\n/*!40000 ALTER TABLE `SubsDefTime` DISABLE KEYS */;\n/*!40000 ALTER TABLE `SubsDefTime` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `SubsSections`\n--\n\nDROP TABLE IF EXISTS `SubsSections`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `SubsSections` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `IdSubscription` int(10) unsigned NOT NULL DEFAULT '0',\n  `SectionNumber` int(10) unsigned NOT NULL DEFAULT '0',\n  `IdLanguage` int(10) unsigned DEFAULT NULL,\n  `StartDate` date NOT NULL DEFAULT '0000-00-00',\n  `Days` int(10) unsigned NOT NULL DEFAULT '0',\n  `PaidDays` int(10) unsigned NOT NULL DEFAULT '0',\n  `NoticeSent` enum('N','Y') NOT NULL DEFAULT 'N',\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `IdSubscription` (`IdSubscription`,`SectionNumber`,`IdLanguage`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `SubsSections`\n--\n\nLOCK TABLES `SubsSections` WRITE;\n/*!40000 ALTER TABLE `SubsSections` DISABLE KEYS */;\n/*!40000 ALTER TABLE `SubsSections` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Subscriptions`\n--\n\nDROP TABLE IF EXISTS `Subscriptions`;\n\nCREATE TABLE Subscriptions (\n  Id INT AUTO_INCREMENT NOT NULL,\n  ToPay NUMERIC(10, 0) NOT NULL,\n  Type VARCHAR(255) NOT NULL,\n  Currency VARCHAR(255) NOT NULL,\n  Active VARCHAR(255) NOT NULL,\n  IdUser INT DEFAULT NULL,\n  IdSubscription INT DEFAULT NULL,\n  IdPublication INT DEFAULT NULL,\n  INDEX IDX_B709C1F4F9C28DE1 (IdUser),\n  INDEX IDX_B709C1F4303CB8FA (IdSubscription),\n  INDEX IDX_B709C1F45C1FD3F4 (IdPublication),\n  PRIMARY KEY(Id)\n) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\n--\n-- Dumping data for table `Subscriptions`\n--\n\nLOCK TABLES `Subscriptions` WRITE;\n/*!40000 ALTER TABLE `Subscriptions` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Subscriptions` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `SystemPreferences`\n--\n\nDROP TABLE IF EXISTS `SystemPreferences`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `SystemPreferences` (\n  `id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,\n  `varname` varchar(100) NOT NULL DEFAULT '',\n  `value` varchar(100) DEFAULT NULL,\n  `last_modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `varname` (`varname`)\n) ENGINE=MyISAM AUTO_INCREMENT=66 DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `SystemPreferences`\n--\n\nLOCK TABLES `SystemPreferences` WRITE;\n/*!40000 ALTER TABLE `SystemPreferences` DISABLE KEYS */;\nINSERT INTO `SystemPreferences` VALUES (1,'ExternalSubscriptionManagement','N','2007-03-07 07:15:36'),(2,'KeywordSeparator',',','2007-03-07 07:15:36'),(3,'LoginFailedAttemptsNum','3','2007-06-16 04:52:31'),(4,'MaxUploadFileSize','2M','2007-10-04 22:16:54'),(5,'UseDBReplication','N','2007-03-07 07:15:36'),(6,'DBReplicationHost','','2007-03-07 07:15:36'),(7,'DBReplicationUser','','2007-03-07 07:15:36'),(8,'DBReplicationPass','','2007-03-07 07:15:36'),(9,'DBReplicationPort','3306','2007-03-07 07:15:36'),(65,'CollectStatistics','Y','2011-06-13 09:19:05'),(15,'SiteOnline','Y','2007-10-07 01:49:11'),(16,'SiteCharset','utf-8','2007-07-26 04:49:32'),(17,'SiteLocale','en-US','2007-07-26 04:49:56'),(18,'SiteCacheEnabled','Y','2010-07-28 16:17:03'),(22,'SiteMetaKeywords','Newscoop, Sourcefabric, enterprise content management, open source, media, journalism','2011-01-17 12:29:43'),(19,'SiteSecretKey','4b506c2968184be185f6282f5dcac832','2007-10-04 20:51:41'),(20,'SiteSessionLifeTime','1400','2007-10-04 20:51:51'),(21,'SiteTitle','Newscoop','2011-01-17 12:27:00'),(23,'SiteMetaDescription','Newscoop - The open content management system for professional journalists.','2011-01-17 12:29:43'),(24,'SMTPHost','localhost','2007-10-26 01:30:45'),(25,'SMTPPort','25','2007-10-26 01:30:45'),(26,'DBCacheEngine',NULL,'2011-01-17 12:28:20'),(27,'EditorImageRatio','100','2009-06-15 17:21:08'),(28,'TemplateFilter','.*, CVS','2009-06-15 17:21:08'),(29,'ImagecacheLifetime','86400','2009-06-22 11:54:19'),(30,'EditorImageResizeWidth','','2010-06-29 20:31:14'),(31,'EditorImageResizeHeight','','2010-06-29 20:31:14'),(32,'EditorImageZoom','N','2010-06-29 20:31:14'),(33,'TimeZone',NULL,'2010-06-29 20:31:14'),(35,'TemplateCacheHandler',NULL,'2011-01-17 12:28:20'),(36,'PasswordRecovery','Y','2011-01-17 12:28:20'),(37,'MapCenterLongitudeDefault','14.424133','2011-01-17 12:28:20'),(38,'MapCenterLatitudeDefault','50.089926','2011-01-17 12:28:20'),(39,'MapDisplayResolutionDefault','4','2011-01-17 12:28:20'),(40,'MapViewWidthDefault','600','2011-01-17 12:28:20'),(41,'MapViewHeightDefault','400','2011-01-17 12:28:20'),(42,'MapProviderAvailableGoogleV3','1','2011-01-17 12:28:20'),(43,'MapProviderAvailableMapQuest','1','2011-01-17 12:28:20'),(44,'MapProviderAvailableOSM','1','2011-01-17 12:28:20'),(45,'MapProviderDefault','GoogleV3','2011-01-17 12:28:20'),(46,'MapMarkerDirectory','/js/geocoding/markers/','2011-06-13 09:19:05'),(47,'MapMarkerSourceDefault','marker-gold.png','2011-01-17 12:28:20'),(48,'MapPopupWidthMin','200','2011-06-13 09:19:05'),(49,'MapPopupHeightMin','150','2011-06-13 09:19:05'),(50,'MapVideoWidthYouTube','320','2011-06-13 09:19:05'),(51,'MapVideoHeightYouTube','240','2011-06-13 09:19:05'),(52,'MapVideoWidthVimeo','320','2011-06-13 09:19:05'),(53,'MapVideoHeightVimeo','180','2011-06-13 09:19:05'),(54,'MapVideoWidthFlash','320','2011-06-13 09:19:05'),(55,'MapVideoHeightFlash','240','2011-06-13 09:19:05'),(56,'MapVideoWidthFlv','320','2011-06-13 09:19:05'),(57,'MapVideoHeightFlv','240','2011-06-13 09:19:05'),(58,'FlashServer','','2011-01-17 12:28:20'),(59,'FlashDirectory','videos/','2011-01-17 12:28:20'),(61,'MapAutoFocusDefault','1','2011-06-13 09:19:05'),(62,'MapAutoFocusMaxZoom','10','2011-06-13 09:19:05'),(63,'MapAutoFocusBorder','50','2011-06-13 09:19:05'),(64,'MapAutoCSSFile','/js/geocoding/styles/map-info.css','2011-06-13 09:19:05'),(79,'GeoSearchLocalGeonames','1','2013-02-06 14:00:00'),(80,'GeoSearchMapquestNominatim','1','2013-02-06 14:00:00'), (81, 'EmailFromAddress', null, '2013-02-06 14:00:00'), (82, 'EmailContact', null, '2013-02-06 14:00:00'), (83, 'SmartyUseProtocol', 'Y', null), (84, 'MediaRichTextCaptions', 'N', null), (85, 'MediaCaptionLength', 255, null);\n/*!40000 ALTER TABLE `SystemPreferences` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `TemplateTypes`\n--\n\nDROP TABLE IF EXISTS `TemplateTypes`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `TemplateTypes` (\n  `Id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `Name` char(20) NOT NULL DEFAULT '',\n  PRIMARY KEY (`Id`),\n  UNIQUE KEY `Name` (`Name`)\n) ENGINE=MyISAM AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `TemplateTypes`\n--\n\nLOCK TABLES `TemplateTypes` WRITE;\n/*!40000 ALTER TABLE `TemplateTypes` DISABLE KEYS */;\nINSERT INTO `TemplateTypes` VALUES (1,'default'),(2,'issue'),(3,'section'),(4,'article'),(5,'nontpl');\n/*!40000 ALTER TABLE `TemplateTypes` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Templates`\n--\n\nDROP TABLE IF EXISTS `Templates`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Templates` (\n  `Id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `Name` char(255) NOT NULL DEFAULT '',\n  `Type` int(10) unsigned NOT NULL DEFAULT '1',\n  `Level` int(10) unsigned NOT NULL DEFAULT '0',\n  `CacheLifetime` int(11) DEFAULT '0',\n  PRIMARY KEY (`Id`),\n  UNIQUE KEY `Name` (`Name`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `Templates`\n--\n\nLOCK TABLES `Templates` WRITE;\n/*!40000 ALTER TABLE `Templates` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Templates` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `TimeUnits`\n--\n\nDROP TABLE IF EXISTS `TimeUnits`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `TimeUnits` (\n  `Unit` char(1) NOT NULL DEFAULT '',\n  `IdLanguage` int(10) unsigned NOT NULL DEFAULT '0',\n  `Name` varchar(70) NOT NULL DEFAULT '',\n  PRIMARY KEY (`Unit`,`IdLanguage`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `TimeUnits`\n--\n\nLOCK TABLES `TimeUnits` WRITE;\n/*!40000 ALTER TABLE `TimeUnits` DISABLE KEYS */;\nINSERT INTO `TimeUnits` VALUES ('D',1,'days'),('W',1,'weeks'),('M',1,'months'),('Y',1,'years'),('D',18,'dagar'),('W',18,'veckor'),('M',18,'månader'),('Y',18,'år'),('D',13,'días'),('W',13,'semanas'),('M',13,'meses'),('Y',13,'años'),('D',12,'days'),('W',12,'weeks'),('M',12,'months'),('Y',12,'years');\n/*!40000 ALTER TABLE `TimeUnits` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `TopicFields`\n--\n\nDROP TABLE IF EXISTS `TopicFields`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `TopicFields` (\n  `ArticleType` varchar(166) NOT NULL DEFAULT '',\n  `FieldName` varchar(166) NOT NULL DEFAULT '',\n  `RootTopicId` int(11) NOT NULL DEFAULT '0',\n  PRIMARY KEY (`ArticleType`,`FieldName`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `TopicFields`\n--\n\nLOCK TABLES `TopicFields` WRITE;\n/*!40000 ALTER TABLE `TopicFields` DISABLE KEYS */;\n/*!40000 ALTER TABLE `TopicFields` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `main_topics`\n--\n\nDROP TABLE IF EXISTS `main_topics`;\n\nCREATE TABLE `main_topics` (\n  `id` int(11) NOT NULL AUTO_INCREMENT,\n  `parent_id` int(11) DEFAULT NULL,\n  `title` varchar(64) COLLATE utf8_unicode_ci NOT NULL,\n  `lft` int(11) NOT NULL,\n  `rgt` int(11) NOT NULL,\n  `root` int(11) DEFAULT NULL,\n  `lvl` int(11) NOT NULL,\n  `description` longtext COLLATE utf8_unicode_ci,\n  `created` datetime NOT NULL,\n  `updated` datetime NOT NULL,\n  `topicOrder` int(11) DEFAULT NULL,\n  PRIMARY KEY (`id`),\n  KEY `IDX_EEAFE2F727ACA70` (`parent_id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1 ;\n\nALTER TABLE `main_topics` ADD CONSTRAINT `FK_EEAFE2F727ACA70` FOREIGN KEY (`parent_id`) REFERENCES `main_topics` (`id`) ON DELETE SET NULL;\n\n--\n-- Table structure for table `topic_translations`\n--\n\nDROP TABLE IF EXISTS `topic_translations`;\n\nCREATE TABLE `topic_translations` (\n  `id` int(11) NOT NULL AUTO_INCREMENT,\n  `object_id` int(11) DEFAULT NULL,\n  `locale` varchar(8) COLLATE utf8_unicode_ci NOT NULL,\n  `field` varchar(32) COLLATE utf8_unicode_ci NOT NULL,\n  `content` longtext COLLATE utf8_unicode_ci,\n  `isDefault` int(1) NULL DEFAULT NULL,\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `lookup_unique_idx` (`locale`,`object_id`,`field`),\n  KEY `IDX_98B25D13232D562B` (`object_id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1 ;\n\nALTER TABLE `topic_translations` ADD CONSTRAINT `FK_98B25D13232D562B` FOREIGN KEY (`object_id`) REFERENCES `main_topics` (`id`) ON DELETE CASCADE;\n\n--\n-- Table structure for table `Translations`\n--\n\nDROP TABLE IF EXISTS `Translations`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Translations` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `phrase_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_language_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `translation_text` text,\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `phrase_language_index` (`phrase_id`,`fk_language_id`),\n  KEY `phrase_id` (`phrase_id`)\n) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `Translations`\n--\n\nLOCK TABLES `Translations` WRITE;\n/*!40000 ALTER TABLE `Translations` DISABLE KEYS */;\nINSERT INTO `Translations` VALUES (1,1,1,'article');\n/*!40000 ALTER TABLE `Translations` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `URLTypes`\n--\n\nDROP TABLE IF EXISTS `URLTypes`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `URLTypes` (\n  `Id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `Name` varchar(15) NOT NULL DEFAULT '',\n  `Description` mediumblob,\n  PRIMARY KEY (`Id`),\n  UNIQUE KEY `Name` (`Name`)\n) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `URLTypes`\n--\n\nLOCK TABLES `URLTypes` WRITE;\n/*!40000 ALTER TABLE `URLTypes` DISABLE KEYS */;\nINSERT INTO `URLTypes` VALUES (1,'template path',''),(2,'short names','');\n/*!40000 ALTER TABLE `URLTypes` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Versions`\n--\n\nDROP TABLE IF EXISTS `Versions`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Versions` (\n    `id` integer unsigned NOT NULL auto_increment,\n    `ver_name` varchar(255) NOT NULL,\n    `ver_value` varchar(255) NOT NULL default '',\n    `last_modified` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,\n    PRIMARY KEY (`id`),\n    UNIQUE KEY `ver_name` (`ver_name`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Table structure for table `Widget`\n--\n\nDROP TABLE IF EXISTS `Widget`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Widget` (\n  `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,\n  `path` varchar(255) NOT NULL DEFAULT '',\n  `class` varchar(78) NOT NULL DEFAULT '',\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `path` (`path`,`class`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `Widget`\n--\n\nLOCK TABLES `Widget` WRITE;\n/*!40000 ALTER TABLE `Widget` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Widget` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `WidgetContext`\n--\n\nDROP TABLE IF EXISTS `WidgetContext`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `WidgetContext` (\n  `id` smallint(3) unsigned NOT NULL AUTO_INCREMENT,\n  `name` varchar(80) NOT NULL DEFAULT '',\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `name` (`name`)\n) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `WidgetContext`\n--\n\nLOCK TABLES `WidgetContext` WRITE;\n/*!40000 ALTER TABLE `WidgetContext` DISABLE KEYS */;\n/*!40000 ALTER TABLE `WidgetContext` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `WidgetContext_Widget`\n--\n\nDROP TABLE IF EXISTS `WidgetContext_Widget`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `WidgetContext_Widget` (\n  `id` varchar(13) NOT NULL,\n  `fk_widgetcontext_id` smallint(3) unsigned NOT NULL,\n  `fk_widget_id` mediumint(8) unsigned NOT NULL,\n  `fk_user_id` int(10) unsigned NOT NULL,\n  `order` tinyint(2) NOT NULL DEFAULT '0',\n  `settings` text NOT NULL,\n  PRIMARY KEY (`id`,`fk_user_id`),\n  KEY `fk_user_id` (`fk_user_id`,`fk_widgetcontext_id`,`order`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `WidgetContext_Widget`\n--\n\nLOCK TABLES `WidgetContext_Widget` WRITE;\n/*!40000 ALTER TABLE `WidgetContext_Widget` DISABLE KEYS */;\n/*!40000 ALTER TABLE `WidgetContext_Widget` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `Xnews`\n--\n\nDROP TABLE IF EXISTS `Xnews`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `Xnews` (\n  `NrArticle` int(11) NOT NULL,\n  `IdLanguage` int(11) NOT NULL,\n  `Flead` mediumblob,\n  `Fcontent` mediumblob,\n  PRIMARY KEY (`NrArticle`,`IdLanguage`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Table structure for table `acl_role`\n--\n\nDROP TABLE IF EXISTS `acl_role`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `acl_role` (\n  `id` int(10) NOT NULL AUTO_INCREMENT,\n  PRIMARY KEY (`id`)\n) ENGINE=MyISAM AUTO_INCREMENT=7 DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `acl_role`\n--\n\nLOCK TABLES `acl_role` WRITE;\n/*!40000 ALTER TABLE `acl_role` DISABLE KEYS */;\nINSERT INTO `acl_role` VALUES (1),(2),(3),(4),(5),(6);\n/*!40000 ALTER TABLE `acl_role` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `acl_rule`\n--\n\nDROP TABLE IF EXISTS `acl_rule`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `acl_rule` (\n  `id` int(10) NOT NULL AUTO_INCREMENT,\n  `type` enum('allow','deny') NOT NULL DEFAULT 'allow',\n  `role_id` int(10) NOT NULL,\n  `resource` varchar(80) NOT NULL DEFAULT '',\n  `action` varchar(80) NOT NULL DEFAULT '',\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `role_id` (`role_id`,`resource`,`action`)\n) ENGINE=MyISAM AUTO_INCREMENT=190 DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `acl_rule`\n--\n\nLOCK TABLES `acl_rule` WRITE;\n/*!40000 ALTER TABLE `acl_rule` DISABLE KEYS */;\nINSERT INTO `acl_rule` VALUES (null,'allow',1,'article','add'),(null,'allow',1,'article','edit'),(null,'allow',1,'article','delete'),(null,'allow',1,'article','move'), (null,'allow',1,'article','publish'),(null,'allow',1,'article','translate'),(null,'allow',1,'image','add'),(null,'allow',1,'image','attach'),(null,'allow',1,'image','edit'),(null,'allow',1,'image','delete'),(null,'allow',1,'comment','enable'),(null,'allow',1,'comment','moderate'),(null,'allow',1,'comment','edit'),(null,'allow',1,'file','add'),(null,'allow',1,'file','edit'),(null,'allow',1,'file','delete'),(null,'allow',1,'editor','bold'),(null,'allow',1,'editor','charactermap'),(null,'allow',1,'editor','copycutpaste'),(null,'allow',1,'editor','enlarge'),(null,'allow',1,'editor','findreplace'),(null,'allow',1,'editor','fontcolor'),(null,'allow',1,'editor','fontface'),(null,'allow',1,'editor','fontsize'),(null,'allow',1,'editor','horizontalrule'),(null,'allow',1,'editor','image'),(null,'allow',1,'editor','indent'),(null,'allow',1,'editor','italic'),(null,'allow',1,'editor','link'),(null,'allow',1,'editor','listbullet'),(null,'allow',1,'editor','listnumber'),(null,'allow',1,'editor','sourceview'),(null,'allow',1,'editor','spellcheckerenabled'),(null,'allow',1,'editor','statusbar'),(null,'allow',1,'editor','strikethrough'),(null,'allow',1,'editor','subhead'),(null,'allow',1,'editor','subscript'),(null,'allow',1,'editor','superscript'),(null,'allow',1,'editor','table'),(null,'allow',1,'editor','textalignment'),(null,'allow',1,'editor','textdirection'),(null,'allow',1,'editor','underline'),(null,'allow',1,'editor','undoredo'),(null, 'allow', 1, 'theme', 'manage'),(null,'allow',1,'template','delete'),(null,'allow',1,'template','manage'),(null,'allow',1,'article-type','delete'),(null,'allow',1,'article-type','manage'),(null,'allow',1,'system-preferences','edit'),(null,'allow',1,'indexer','manage'),(null,'allow',1,'country','delete'),(null,'allow',1,'country','manage'),(null,'allow',1,'log','view'),(null,'allow',1,'localizer','manage'),(null,'allow',1,'backup','manage'),(null,'allow',1,'cache','clear'),(null,'allow',1,'notification','get'),(null,'allow',1,'notification','moderate-comment'),(null,'allow',1,'publication','delete'),(null,'allow',1,'publication','manage'),(null,'allow',1,'issue','delete'),(null,'allow',1,'issue','manage'),(null,'allow',1,'section','delete'),(null,'allow',1,'section','manage'),(null,'allow',1,'topic','attach'),(null,'allow',1,'topic','manage'),(null,'allow',1,'language','delete'),(null,'allow',1,'language','manage'),(null,'allow',1,'user-group','manage'),(null,'allow',1,'user','delete'),(null,'allow',1,'user','manage'),(null,'allow',1,'author','edit'),(null,'allow',1,'subscriber','manage'),(null,'allow',1,'subscription','manage'),(null,'allow',1,'plugin','manage'),(null,'allow',1,'plugin-blog','moderator'),(null,'allow',1,'plugin-blog','admin'),(null,'allow',1,'pluginpoll','enable'),(null,'allow',2,'article','add'),(null,'allow',2,'article','edit'),(null,'allow',2,'article','delete'),(null,'allow',2,'article','move'), (null,'allow',2,'article','publish'),(null,'allow',2,'article','translate'),(null,'allow',2,'image','add'),(null,'allow',2,'image','attach'),(null,'allow',2,'image','edit'),(null,'allow',2,'image','delete'),(null,'allow',2,'comment','enable'),(null,'allow',2,'comment','moderate'),(null,'allow',2,'comment','edit'),(null,'allow',2,'file','add'),(null,'allow',2,'file','edit'),(null,'allow',2,'file','delete'),(null,'allow',2,'editor','bold'),(null,'allow',2,'editor','copycutpaste'),(null,'allow',2,'editor','enlarge'),(null,'allow',2,'editor','findreplace'),(null,'allow',2,'editor','image'),(null,'allow',2,'editor','indent'),(null,'allow',2,'editor','italic'),(null,'allow',2,'editor','link'),(null,'allow',2,'editor','listbullet'),(null,'allow',2,'editor','listnumber'),(null,'allow',2,'editor','sourceview'),(null,'allow',2,'editor','spellcheckerenabled'),(null,'allow',2,'editor','strikethrough'),(null,'allow',2,'editor','subhead'),(null,'allow',2,'editor','table'),(null,'allow',2,'editor','textalignment'),(null,'allow',2,'editor','textdirection'),(null,'allow',2,'editor','underline'),(null,'allow',2,'editor','undoredo'),(null, 'allow',2, 'theme', 'manage'),(null,'allow',2,'log','view'),(null,'allow',2,'cache','clear'),(null,'allow',2,'notification','get'),(null,'allow',2,'notification','moderate-comment'),(null,'allow',2,'issue','delete'),(null,'allow',2,'issue','manage'),(null,'allow',2,'section','delete'),(null,'allow',2,'section','manage'),(null,'allow',2,'topic','attach'),(null,'allow',2,'topic','manage'),(null,'allow',2,'author','edit'),(null,'allow',2,'plugin','manage'),(null,'allow',2,'plugin-blog','moderator'),(null,'allow',2,'pluginpoll','enable'),(null,'allow',3,'article','add'),(null,'allow',3,'article','edit'),(null,'allow',3,'article','delete'),(null,'allow',3,'article','move'), (null,'allow',3,'article','publish'),(null,'allow',3,'article','translate'),(null,'allow',3,'image','add'),(null,'allow',3,'image','attach'),(null,'allow',3,'image','edit'),(null,'allow',3,'image','delete'),(null,'allow',3,'comment','enable'),(null,'allow',3,'comment','moderate'),(null,'allow',3,'comment','edit'),(null,'allow',3,'file','add'),(null,'allow',3,'file','edit'),(null,'allow',3,'file','delete'),(null,'allow',3,'editor','bold'),(null,'allow',3,'editor','copycutpaste'),(null,'allow',3,'editor','findreplace'),(null,'allow',3,'editor','image'),(null,'allow',3,'editor','indent'),(null,'allow',3,'editor','italic'),(null,'allow',3,'editor','link'),(null,'allow',3,'editor','sourceview'),(null,'allow',3,'editor','spellcheckerenabled'),(null,'allow',3,'editor','subhead'),(null,'allow',3,'editor','table'),(null,'allow',3,'editor','undoredo'),(null,'allow',3,'cache','clear'),(null,'allow',3,'notification','get'),(null,'allow',3,'notification','moderate-comment'),(null,'allow',3,'topic','attach'),(null,'allow',3,'topic','manage'),(null,'allow',3,'author','edit'),(null,'allow',3,'plugin','manage'),(null,'allow',3,'pluginpoll','enable'),(null,'allow',4,'article','add'),(null,'allow',4,'article','edit'),(null,'allow',4,'article','delete'),(null,'allow',4,'article','move'), (null,'allow',4,'article','translate'),(null,'allow',4,'image','add'),(null,'allow',4,'image','attach'),(null,'allow',4,'image','edit'),(null,'allow',4,'comment','enable'),(null,'allow',4,'comment','moderate'),(null,'allow',4,'comment','edit'),(null,'allow',4,'file','add'),(null,'allow',4,'file','edit'),(null,'allow',4,'editor','bold'),(null,'allow',4,'editor','copycutpaste'),(null,'allow',4,'editor','findreplace'),(null,'allow',4,'editor','image'),(null,'allow',4,'editor','indent'),(null,'allow',4,'editor','italic'),(null,'allow',4,'editor','link'),(null,'allow',4,'editor','spellcheckerenabled'),(null,'allow',4,'editor','subhead'),(null,'allow',4,'editor','undoredo'),(null,'allow',4,'notification','get'),(null,'allow',4,'notification','moderate-comment'),(null,'allow',4,'topic','attach'),(null,'allow',4,'plugin','manage'),(null,'allow',5,'subscriber','manage'),(null,'allow',5,'subscription','manage'),(null,'allow',1,'feedback','manage'),(null,'allow',2,'feedback','manage'),(null,'allow',1,'ingest','manage'),(null,'allow',2,'ingest','manage'),(null,'allow',1,'plugin-recaptcha','admin'),(null,'allow',1,'playlist','manage');\n/*!40000 ALTER TABLE `acl_rule` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `feedback`\n--\nDROP TABLE IF EXISTS `feedback`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `feedback` (\n   `id` int(11) not null auto_increment,\n   `user_id` int(11),\n   `section_id` int(11),\n   `publication_id` int(11),\n   `article_language` int(11),\n   `article_number` int(11),\n   `subject` varchar(128),\n   `message` varchar(2048) not null,\n   `status` tinyint(1) unsigned not null,\n   `url` varchar(128) not null,\n   `time_created` datetime not null,\n   `time_updated` datetime not null,\n   `attachment_type` int(1),\n   `attachment_id` int(11),\n   PRIMARY KEY (`id`),\n   KEY `user` (`user_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `feedback`\n--\n\nLOCK TABLES `feedback` WRITE;\n/*!40000 ALTER TABLE `feedback` DISABLE KEYS */;\n/*!40000 ALTER TABLE `feedback` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `user_subscription`\n--\nDROP TABLE IF EXISTS `user_subscription`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `user_subscription` (\n   `id` int(11) unsigned not null auto_increment,\n   `user_id` int(11) unsigned,\n   `subscription_type` int(1),\n   `time_begin` datetime,\n   `time_end` datetime,\n   `subscription` int(11),\n   PRIMARY KEY (`id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `user_subscription`\n--\n\nLOCK TABLES `user_subscription` WRITE;\n/*!40000 ALTER TABLE `user_subscription` DISABLE KEYS */;\n/*!40000 ALTER TABLE `user_subscription` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `user_topic`\n--\nDROP TABLE IF EXISTS `user_topic`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `user_topic` (\n  `id` int(10) NOT NULL AUTO_INCREMENT,\n  `user_id` int(11) unsigned NOT NULL,\n  `topic_id` int(11) unsigned NOT NULL,\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `user_topic` (`user_id`,`topic_id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `user_topic`\n--\n\nLOCK TABLES `user_topic` WRITE;\n/*!40000 ALTER TABLE `user_topic` DISABLE KEYS */;\n/*!40000 ALTER TABLE `user_topic` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `comment`\n--\n\nDROP TABLE IF EXISTS `comment`;\n\nCREATE TABLE comment (\n  id INT AUTO_INCREMENT NOT NULL,\n  fk_parent_id INT DEFAULT NULL,\n  fk_thread_id INT NOT NULL,\n  subject VARCHAR(140) NOT NULL,\n  message VARCHAR(255) NOT NULL,\n  thread_level INT NOT NULL,\n  thread_order INT NOT NULL,\n  status INT NOT NULL,\n  ip VARCHAR(39) NOT NULL,\n  time_created DATETIME NOT NULL,\n  time_updated DATETIME NOT NULL,\n  likes INT NOT NULL,\n  dislikes INT NOT NULL,\n  recommended INT NOT NULL,\n  indexed DATETIME DEFAULT NULL,\n  source VARCHAR(60) NULL DEFAULT NULL,\n  fk_comment_commenter_id INT DEFAULT NULL,\n  fk_forum_id INT DEFAULT NULL,\n  fk_language_id INT DEFAULT NULL,\n  INDEX IDX_9474526C8A5657F3 (fk_comment_commenter_id),\n  INDEX IDX_9474526C1BE4F90E (fk_forum_id),\n  INDEX IDX_9474526C13231DE0 (fk_parent_id),\n  INDEX IDX_9474526C83C99789 (fk_thread_id),\n  INDEX IDX_9474526CEB0716C0 (fk_language_id),\n  PRIMARY KEY(id)\n) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\n--\n-- Dumping data for table `comment`\n--\n\nLOCK TABLES `comment` WRITE;\n/*!40000 ALTER TABLE `comment` DISABLE KEYS */;\n/*!40000 ALTER TABLE `comment` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `comment_acceptance`\n--\n\nDROP TABLE IF EXISTS `comment_acceptance`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `comment_acceptance` (\n  `id` int(10) NOT NULL AUTO_INCREMENT,\n  `fk_forum_id` int(10) DEFAULT '0',\n  `for_column` tinyint(4) NOT NULL DEFAULT '0',\n  `type` tinyint(4) NOT NULL DEFAULT '0',\n  `search_type` tinyint(4) NOT NULL DEFAULT '0',\n  `search` varchar(255) NOT NULL DEFAULT '',\n  PRIMARY KEY (`id`),\n  KEY `fk_forum_id` (`fk_forum_id`)\n) ENGINE=MyISAM AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `comment_acceptance`\n--\n\nLOCK TABLES `comment_acceptance` WRITE;\n/*!40000 ALTER TABLE `comment_acceptance` DISABLE KEYS */;\n/*!40000 ALTER TABLE `comment_acceptance` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `comment_commenter`\n--\n\nDROP TABLE IF EXISTS `comment_commenter`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `comment_commenter` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `fk_user_id` int(10) unsigned DEFAULT NULL,\n  `email` varchar(100) NOT NULL DEFAULT '',\n  `url` varchar(255) NOT NULL DEFAULT '',\n  `name` varchar(100) NOT NULL DEFAULT '',\n  `ip` varchar(39) NOT NULL DEFAULT '',\n  `time_created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',\n  `time_updated` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',\n  PRIMARY KEY (`id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `comment_commenter`\n--\n\nLOCK TABLES `comment_commenter` WRITE;\n/*!40000 ALTER TABLE `comment_commenter` DISABLE KEYS */;\n/*!40000 ALTER TABLE `comment_commenter` ENABLE KEYS */;\nUNLOCK TABLES;\n\nDROP TABLE IF EXISTS `context_articles`;\n\nCREATE TABLE context_articles (\n  Id INT AUTO_INCREMENT NOT NULL,\n  fk_context_id INT NOT NULL,\n  fk_article_no INT NOT NULL,\n  `order_number` INT NOT NULL DEFAULT '0',\n  INDEX article_number (fk_article_no),\n  PRIMARY KEY(Id)\n) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\nDROP TABLE IF EXISTS `context_boxes`;\n\nCREATE TABLE IF NOT EXISTS `context_boxes` (\n  `id` int(10) NOT NULL AUTO_INCREMENT,\n  `fk_article_no` int(10) NOT NULL,\n  PRIMARY KEY (`id`)\n) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=21 ;\n\n\n--\n-- Table structure for table `liveuser_applications`\n--\n\nDROP TABLE IF EXISTS `liveuser_applications`;\n\n--\n-- Table structure for table `liveuser_applications_application_id_seq`\n--\n\nDROP TABLE IF EXISTS `liveuser_applications_application_id_seq`;\n\n--\n-- Table structure for table `liveuser_applications_seq`\n--\n\nDROP TABLE IF EXISTS `liveuser_applications_seq`;\n\n--\n-- Table structure for table `liveuser_area_admin_areas`\n--\n\nDROP TABLE IF EXISTS `liveuser_area_admin_areas`;\n\n--\n-- Table structure for table `liveuser_areas`\n--\n\nDROP TABLE IF EXISTS `liveuser_areas`;\n\n--\n-- Table structure for table `liveuser_areas_seq`\n--\n\nDROP TABLE IF EXISTS `liveuser_areas_seq`;\n\n--\n-- Table structure for table `liveuser_group_subgroups`\n--\n\nDROP TABLE IF EXISTS `liveuser_group_subgroups`;\n\n--\n-- Table structure for table `liveuser_grouprights`\n--\n\nDROP TABLE IF EXISTS `liveuser_grouprights`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `liveuser_grouprights` (\n  `group_id` int(11) NOT NULL DEFAULT '0',\n  `right_id` int(11) NOT NULL DEFAULT '0',\n  `right_level` int(11) NOT NULL DEFAULT '3',\n  UNIQUE KEY `grouprights_id_i_idx` (`group_id`,`right_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `liveuser_grouprights`\n--\n\nLOCK TABLES `liveuser_grouprights` WRITE;\n/*!40000 ALTER TABLE `liveuser_grouprights` DISABLE KEYS */;\nINSERT INTO `liveuser_grouprights` VALUES (1,1,3),(1,2,3),(1,3,3),(1,4,3),(1,5,3),(1,6,3),(1,7,3),(1,8,3),(1,9,3),(1,10,3),(1,11,3),(1,12,3),(1,13,3),(1,14,3),(1,15,3),(1,16,3),(1,17,3),(1,18,3),(1,19,3),(1,20,3),(1,21,3),(1,22,3),(1,23,3),(1,24,3),(1,25,3),(1,26,3),(1,27,3),(1,28,3),(1,29,3),(1,30,3),(1,31,3),(1,32,3),(1,33,3),(1,34,3),(1,35,3),(1,36,3),(1,37,3),(1,38,3),(1,39,3),(1,40,3),(1,41,3),(1,42,3),(1,43,3),(1,44,3),(1,45,3),(1,46,3),(1,47,3),(1,48,3),(1,49,3),(1,50,3),(1,51,3),(1,53,3),(1,56,3),(1,57,3),(1,58,3),(1,59,3),(1,60,3),(1,61,3),(1,62,3),(1,63,3),(1,65,3),(1,64,3),(1,66,3),(1,67,3),(1,68,3),(1,69,3),(1,70,3),(1,73,3),(2,1,3),(2,2,3),(2,3,3),(2,4,3),(2,5,3),(2,6,3),(2,7,3),(2,8,3),(2,9,3),(2,10,3),(2,12,3),(2,13,3),(2,14,3),(2,15,3),(2,17,3),(2,18,3),(2,19,3),(2,22,3),(2,24,3),(2,25,3),(2,26,3),(2,27,3),(2,28,3),(2,29,3),(2,30,3),(2,34,3),(2,35,3),(2,36,3),(2,37,3),(2,38,3),(2,39,3),(2,41,3),(2,42,3),(2,43,3),(2,44,3),(2,45,3),(2,47,3),(2,48,3),(2,49,3),(2,55,3),(2,57,3),(2,59,3),(2,60,3),(2,63,3),(2,65,3),(2,66,3),(2,67,3),(2,68,3),(2,69,3),(2,73,3),(3,1,3),(3,2,3),(3,3,3),(3,4,3),(3,5,3),(3,6,3),(3,7,3),(3,8,3),(3,9,3),(3,10,3),(3,14,3),(3,17,3),(3,18,3),(3,25,3),(3,26,3),(3,27,3),(3,28,3),(3,29,3),(3,34,3),(3,35,3),(3,36,3),(3,37,3),(3,38,3),(3,39,3),(3,42,3),(3,45,3),(3,46,3),(3,47,3),(3,48,3),(3,49,3),(3,66,3),(3,68,3),(3,73,3),(4,1,3),(4,2,3),(4,3,3),(4,4,3),(4,5,3),(4,6,3),(4,7,3),(4,9,3),(4,10,3),(4,26,3),(4,27,3),(4,28,3),(4,29,3),(4,34,3),(4,36,3),(4,37,3),(4,38,3),(4,39,3),(4,42,3),(4,48,3),(4,49,3),(4,68,3),(4,73,3),(5,59,3),(5,61,3),(1,54,3),(1,74,3),(1,72,3),(1,92,3),(1,91,3),(2,91,3),(1,97,3),(1,98,3),(2,98,3),(1,101,3),(2,101,3),(3,101,3),(1,103,3);\n/*!40000 ALTER TABLE `liveuser_grouprights` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `liveuser_groups`\n--\n\nDROP TABLE IF EXISTS `liveuser_groups`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `liveuser_groups` (\n  `group_id` int(11) NOT NULL AUTO_INCREMENT,\n  `group_type` int(11) NOT NULL DEFAULT '0',\n  `group_define_name` varchar(32) NOT NULL DEFAULT '',\n  `role_id` int(10) DEFAULT NULL,\n  PRIMARY KEY (`group_id`),\n  UNIQUE KEY `groups_define_name_i_idx` (`group_define_name`)\n) ENGINE=MyISAM AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `liveuser_groups`\n--\n\nLOCK TABLES `liveuser_groups` WRITE;\n/*!40000 ALTER TABLE `liveuser_groups` DISABLE KEYS */;\nINSERT INTO `liveuser_groups` VALUES (1,0,'Administrator',1),(2,0,'Chief Editor',2),(3,0,'Editor',3),(4,0,'Journalist',4),(5,0,'Subscription manager',5);\n/*!40000 ALTER TABLE `liveuser_groups` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `liveuser_groups_group_id_seq`\n--\n\nDROP TABLE IF EXISTS `liveuser_groups_group_id_seq`;\n\n--\n-- Table structure for table `liveuser_groups_seq`\n--\n\nDROP TABLE IF EXISTS `liveuser_groups_seq`;\n\n--\n-- Table structure for table `liveuser_groupusers`\n--\n\nDROP TABLE IF EXISTS `liveuser_groupusers`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `liveuser_groupusers` (\n  `perm_user_id` int(11) NOT NULL DEFAULT '0',\n  `group_id` int(11) NOT NULL DEFAULT '0',\n  UNIQUE KEY `groupusers_id_i_idx` (`perm_user_id`,`group_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `liveuser_groupusers`\n--\n\nLOCK TABLES `liveuser_groupusers` WRITE;\n/*!40000 ALTER TABLE `liveuser_groupusers` DISABLE KEYS */;\nINSERT INTO `liveuser_groupusers` VALUES (1,1);\n/*!40000 ALTER TABLE `liveuser_groupusers` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `liveuser_perm_users`\n--\n\nDROP TABLE IF EXISTS `liveuser_perm_users`;\n\n--\n-- Table structure for table `liveuser_perm_users_perm_user_id_seq`\n--\n\nDROP TABLE IF EXISTS `liveuser_perm_users_perm_user_id_seq`;\n\n--\n-- Table structure for table `liveuser_perm_users_seq`\n--\n\nDROP TABLE IF EXISTS `liveuser_perm_users_seq`;\n\n--\n-- Table structure for table `liveuser_right_implied`\n--\n\nDROP TABLE IF EXISTS `liveuser_right_implied`;\n\n--\n-- Table structure for table `liveuser_rights`\n--\n\nDROP TABLE IF EXISTS `liveuser_rights`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `liveuser_rights` (\n  `right_id` int(11) NOT NULL DEFAULT '0',\n  `area_id` int(11) NOT NULL DEFAULT '0',\n  `right_define_name` varchar(32) NOT NULL DEFAULT '',\n  `has_implied` tinyint(1) DEFAULT '1',\n  PRIMARY KEY (`right_id`),\n  UNIQUE KEY `rights_define_name_i_idx` (`area_id`,`right_define_name`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `liveuser_rights`\n--\n\nLOCK TABLES `liveuser_rights` WRITE;\n/*!40000 ALTER TABLE `liveuser_rights` DISABLE KEYS */;\nINSERT INTO `liveuser_rights` VALUES (1,0,'AddArticle',1),(3,0,'AddFile',1),(4,0,'AddImage',1),(6,0,'AttachImageToArticle',1),(7,0,'AttachTopicToArticle',1),(8,0,'ChangeArticle',1),(9,0,'ChangeFile',1),(10,0,'ChangeImage',1),(11,0,'ChangeSystemPreferences',1),(12,0,'ClearCache',1),(13,0,'CommentEnable',1),(14,0,'CommentModerate',1),(15,0,'DeleteArticle',1),(16,0,'DeleteArticleTypes',1),(17,0,'DeleteCountries',1),(18,0,'DeleteFile',1),(19,0,'DeleteImage',1),(20,0,'DeleteIssue',1),(21,0,'DeleteLanguages',1),(22,0,'DeletePub',1),(23,0,'DeleteSection',1),(24,0,'DeleteTempl',1),(25,0,'DeleteUsers',1),(26,0,'EditorBold',1),(27,0,'EditorCharacterMap',1),(28,0,'EditorCopyCutPaste',1),(29,0,'EditorEnlarge',1),(30,0,'EditorFindReplace',1),(31,0,'EditorFontColor',1),(32,0,'EditorFontFace',1),(33,0,'EditorFontSize',1),(34,0,'EditorHorizontalRule',1),(35,0,'EditorImage',1),(36,0,'EditorIndent',1),(37,0,'EditorItalic',1),(38,0,'EditorLink',1),(39,0,'EditorListBullet',1),(40,0,'EditorListNumber',1),(41,0,'EditorSourceView',1),(42,0,'EditorStrikethrough',1),(43,0,'EditorSubhead',1),(44,0,'EditorSubscript',1),(45,0,'EditorSuperscript',1),(46,0,'EditorTable',1),(47,0,'EditorTextAlignment',1),(48,0,'EditorTextDirection',1),(49,0,'EditorUnderline',1),(50,0,'EditorUndoRedo',1),(51,0,'plugin_manager',1),(52,0,'MailNotify',1),(53,0,'ManageArticleTypes',1),(54,0,'ManageCountries',1),(55,0,'ManageIndexer',1),(56,0,'ManageIssue',1),(57,0,'ManageLanguages',1),(58,0,'ManageLocalizer',1),(59,0,'ManagePub',1),(60,0,'ManageReaders',1),(61,0,'ManageSection',1),(62,0,'ManageSubscriptions',1),(63,0,'ManageTempl',1),(64,0,'ManageTopics',1),(65,0,'ManageUserTypes',1),(66,0,'ManageUsers',1),(67,0,'MoveArticle',1),(68,0,'Publish',1),(69,0,'TranslateArticle',1),(70,0,'ViewLogs',1),(72,0,'EditorStatusBar',1),(73,0,'EditorSpellcheckerEnabled',1),(74,0,'ManageBackup',1),(97,0,'plugin_blog_admin',1),(98,0,'plugin_blog_moderator',1),(101,0,'plugin_poll',1),(103,0,'EditAuthors',1),(104,0,'plugin_recaptcha_admin',1);\n/*!40000 ALTER TABLE `liveuser_rights` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `liveuser_rights_right_id_seq`\n--\n\nDROP TABLE IF EXISTS `liveuser_rights_right_id_seq`;\n\n--\n-- Table structure for table `liveuser_rights_seq`\n--\n\nDROP TABLE IF EXISTS `liveuser_rights_seq`;\n\n--\n-- Table structure for table `liveuser_translations`\n--\n\nDROP TABLE IF EXISTS `liveuser_translations`;\n\n--\n-- Table structure for table `liveuser_translations_seq`\n--\n\nDROP TABLE IF EXISTS `liveuser_translations_seq`;\n\n--\n-- Table structure for table `liveuser_userrights`\n--\n\nDROP TABLE IF EXISTS `liveuser_userrights`;\n\n--\n-- Table structure for table `liveuser_users`\n--\n\nDROP TABLE IF EXISTS `liveuser_users`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `liveuser_users` (\n  `Id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `KeyId` int(10) unsigned DEFAULT NULL,\n  `Name` varchar(255) DEFAULT NULL,\n  `UName` varchar(70) DEFAULT NULL,\n  `Password` varchar(64) DEFAULT NULL,\n  `EMail` varchar(255) NOT NULL,\n  `Reader` enum('Y','N') NOT NULL DEFAULT 'Y',\n  `fk_user_type` int(10) unsigned DEFAULT NULL,\n  `City` varchar(100) DEFAULT NULL,\n  `StrAddress` varchar(255) DEFAULT NULL,\n  `State` varchar(32) DEFAULT NULL,\n  `CountryCode` varchar(21) DEFAULT NULL,\n  `Phone` varchar(20) DEFAULT NULL,\n  `Fax` varchar(20) DEFAULT NULL,\n  `Contact` varchar(64) DEFAULT NULL,\n  `Phone2` varchar(20) DEFAULT NULL,\n  `Title` enum('Mr.','Mrs.','Ms.','Dr.') NOT NULL DEFAULT 'Mr.',\n  `Gender` enum('M','F') DEFAULT NULL,\n  `Age` enum('0-17','18-24','25-39','40-49','50-65','65-') NOT NULL DEFAULT '0-17',\n  `PostalCode` varchar(70) DEFAULT NULL,\n  `Employer` varchar(140) DEFAULT NULL,\n  `EmployerType` varchar(140) DEFAULT NULL,\n  `Position` varchar(70) DEFAULT NULL,\n  `Interests` mediumblob,\n  `How` varchar(255) DEFAULT NULL,\n  `Languages` varchar(100) DEFAULT NULL,\n  `Improvements` mediumblob,\n  `Pref1` enum('N','Y') NOT NULL DEFAULT 'N',\n  `Pref2` enum('N','Y') NOT NULL DEFAULT 'N',\n  `Pref3` enum('N','Y') NOT NULL DEFAULT 'N',\n  `Pref4` enum('N','Y') NOT NULL DEFAULT 'N',\n  `Field1` varchar(150) DEFAULT NULL,\n  `Field2` varchar(150) DEFAULT NULL,\n  `Field3` varchar(150) DEFAULT NULL,\n  `Field4` varchar(150) DEFAULT NULL,\n  `Field5` varchar(150) DEFAULT NULL,\n  `Text1` mediumblob,\n  `Text2` mediumblob,\n  `Text3` mediumblob,\n  `time_updated` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,\n  `time_created` datetime DEFAULT NULL,\n  `lastLogin` datetime DEFAULT NULL,\n  `isActive` tinyint(1) DEFAULT '1',\n  `password_reset_token` varchar(85) DEFAULT NULL,\n  `role_id` int(10) DEFAULT NULL,\n  `last_name` varchar(80) DEFAULT NULL,\n  `status` tinyint(1) NOT NULL DEFAULT '0',\n  `is_admin` tinyint(1) NOT NULL DEFAULT '0',\n  `is_public` tinyint(1) NOT NULL DEFAULT '0',\n  `points` int(10) DEFAULT '0',\n  `image` varchar(255) DEFAULT NULL,\n  `subscriber` int(10) DEFAULT NULL,\n  `author_id` int(10) unsigned DEFAULT NULL,\n  `indexed` datetime DEFAULT NULL,\n  `registered_with_publication` int(11) DEFAULT NULL,\n  PRIMARY KEY (`Id`),\n  UNIQUE KEY `UName` (`UName`),\n  KEY `author_id` (`author_id`),\n  KEY `indexed` (`indexed`)\n) ENGINE=MyISAM AUTO_INCREMENT=9 DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n\n--\n-- Dumping data for table `liveuser_users`\n--\n\nLOCK TABLES `liveuser_users` WRITE;\n/*!40000 ALTER TABLE `liveuser_users` DISABLE KEYS */;\nINSERT INTO `liveuser_users` (`Id`, `Name`, `UName`, `Password`, `EMail`, `status`, `is_admin`, `role_id`) VALUES\n(1, 'Administrator', 'admin', 'd033e22ae348aeb5660fc2140aec35850c4da997', 'admin@email.addr', '1', '1', 6);\n/*!40000 ALTER TABLE `liveuser_users` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `liveuser_users_auth_user_id_seq`\n--\n\nDROP TABLE IF EXISTS `liveuser_users_auth_user_id_seq`;\n\n--\n-- Table structure for table `output`\n--\n\nDROP TABLE IF EXISTS `output`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `output` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `name` varchar(50) NOT NULL,\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `name` (`name`)\n) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `output`\n--\n\nLOCK TABLES `output` WRITE;\n/*!40000 ALTER TABLE `output` DISABLE KEYS */;\nINSERT INTO `output` VALUES (1,'Web');\n/*!40000 ALTER TABLE `output` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table output_publication\n--\n\nDROP TABLE IF EXISTS `output_publication`;\nCREATE TABLE `output_publication` (\n  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,\n  `fk_publication_id` int(11) unsigned NOT NULL,\n  `fk_language_id` int(11) unsigned NOT NULL,\n  `theme_path` varchar(255) NOT NULL,\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `publication_language` (`fk_publication_id`,`fk_language_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n\n--\n-- Table structure for table `output_issue`\n--\n\nDROP TABLE IF EXISTS `output_issue`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `output_issue` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `fk_output_id` int(10) unsigned NOT NULL,\n  `fk_issue_id` int(10) unsigned NOT NULL,\n  `fk_theme_path_id` int(10) unsigned NOT NULL,\n  `fk_front_page_id` int(10) unsigned DEFAULT NULL,\n  `fk_section_page_id` int(10) unsigned DEFAULT NULL,\n  `fk_article_page_id` int(10) unsigned DEFAULT NULL,\n  `fk_error_page_id` int(10) unsigned DEFAULT NULL,\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `fk_output_id` (`fk_output_id`,`fk_issue_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `output_issue`\n--\n\nLOCK TABLES `output_issue` WRITE;\n/*!40000 ALTER TABLE `output_issue` DISABLE KEYS */;\n/*!40000 ALTER TABLE `output_issue` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `output_section`\n--\n\nDROP TABLE IF EXISTS `output_section`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `output_section` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `fk_output_id` int(10) unsigned NOT NULL,\n  `fk_section_id` int(10) unsigned NOT NULL,\n  `fk_front_page_id` int(10) unsigned DEFAULT NULL,\n  `fk_section_page_id` int(10) unsigned DEFAULT NULL,\n  `fk_article_page_id` int(10) unsigned DEFAULT NULL,\n  `fk_error_page_id` int(10) unsigned DEFAULT NULL,\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `fk_output_id` (`fk_output_id`,`fk_section_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `output_section`\n--\n\nLOCK TABLES `output_section` WRITE;\n/*!40000 ALTER TABLE `output_section` DISABLE KEYS */;\n/*!40000 ALTER TABLE `output_section` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `output_theme`\n--\n\nDROP TABLE IF EXISTS `output_theme`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `output_theme` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `fk_output_id` int(10) unsigned NOT NULL,\n  `fk_publication_id` int(10) unsigned NOT NULL,\n  `fk_theme_path_id` int(10) unsigned NOT NULL,\n  `fk_front_page_id` int(10) unsigned NOT NULL,\n  `fk_section_page_id` int(10) unsigned NOT NULL,\n  `fk_article_page_id` int(10) unsigned NOT NULL,\n  `fk_error_page_id` int(10) unsigned NOT NULL,\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `fk_output_id` (`fk_output_id`,`fk_publication_id`,`fk_theme_path_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `output_theme`\n--\n\nLOCK TABLES `output_theme` WRITE;\n/*!40000 ALTER TABLE `output_theme` DISABLE KEYS */;\n/*!40000 ALTER TABLE `output_theme` ENABLE KEYS */;\nUNLOCK TABLES;\n\nDROP TABLE IF EXISTS `playlist`;\nCREATE TABLE playlist (\n  id_playlist INT AUTO_INCREMENT NOT NULL,\n  name VARCHAR(256) NOT NULL,\n  notes VARCHAR(1024) DEFAULT NULL,\n  max_items INT DEFAULT NULL,\n  modification_time DATETIME DEFAULT NULL,\n  themes text DEFAULT NULL,\n  PRIMARY KEY(id_playlist)\n) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\nDROP TABLE IF EXISTS `playlist_article`;\nCREATE TABLE `playlist_article` (\n  `id_playlist_article` int(11) AUTO_INCREMENT NOT NULL,\n  `id_playlist` int(11) NOT NULL,\n  `article_no` int(11) NOT NULL,\n  `article_language` int(11) NOT NULL,\n  `order_number` int(11) NOT NULL,\n  PRIMARY KEY(id_playlist_article)\n) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\nALTER TABLE `playlist_article`\n ADD KEY `IDX_BD05197C8759FDB8` (`id_playlist`), ADD KEY `IDX_BD05197CAA07C9D3813385DE` (`article_no`,`article_language`);\n\n--\n-- Table structure for table `plugin_blog_blog`\n--\n\nDROP TABLE IF EXISTS `plugin_blog_blog`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `plugin_blog_blog` (\n  `blog_id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `fk_language_id` int(10) unsigned NOT NULL,\n  `fk_user_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `title` varchar(255) NOT NULL,\n  `date` datetime NOT NULL,\n  `info` text NOT NULL,\n  `admin_remark` text NOT NULL,\n  `request_text` text NOT NULL,\n  `status` enum('online','offline','moderated') NOT NULL DEFAULT 'online',\n  `admin_status` enum('online','offline','moderated','readonly','pending') NOT NULL DEFAULT 'pending',\n  `entries_online` int(10) unsigned NOT NULL DEFAULT '0',\n  `entries_offline` int(10) unsigned NOT NULL DEFAULT '0',\n  `comments_online` int(10) unsigned NOT NULL,\n  `comments_offline` int(10) unsigned NOT NULL,\n  `feature` varchar(255) NOT NULL,\n  `last_modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,\n  PRIMARY KEY (`blog_id`)\n) ENGINE=MyISAM AUTO_INCREMENT=8 DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `plugin_blog_blog`\n--\n\nLOCK TABLES `plugin_blog_blog` WRITE;\n/*!40000 ALTER TABLE `plugin_blog_blog` DISABLE KEYS */;\n/*!40000 ALTER TABLE `plugin_blog_blog` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `plugin_blog_comment`\n--\n\nDROP TABLE IF EXISTS `plugin_blog_comment`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `plugin_blog_comment` (\n  `comment_id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `fk_entry_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_blog_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_language_id` int(10) unsigned NOT NULL,\n  `fk_user_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `user_name` varchar(255) NOT NULL,\n  `user_email` varchar(255) NOT NULL,\n  `date` datetime NOT NULL,\n  `title` varchar(255) NOT NULL,\n  `content` text NOT NULL,\n  `fk_mood_id` varchar(255) NOT NULL,\n  `status` enum('online','offline','pending') NOT NULL DEFAULT 'pending',\n  `admin_status` enum('online','offline','pending') NOT NULL DEFAULT 'pending',\n  `feature` varchar(255) NOT NULL,\n  `last_modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,\n  PRIMARY KEY (`comment_id`)\n) ENGINE=MyISAM AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `plugin_blog_comment`\n--\n\nLOCK TABLES `plugin_blog_comment` WRITE;\n/*!40000 ALTER TABLE `plugin_blog_comment` DISABLE KEYS */;\n/*!40000 ALTER TABLE `plugin_blog_comment` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `plugin_blog_entry`\n--\n\nDROP TABLE IF EXISTS `plugin_blog_entry`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `plugin_blog_entry` (\n  `entry_id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `fk_blog_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_language_id` int(10) unsigned NOT NULL,\n  `fk_user_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `date` datetime NOT NULL,\n  `released` datetime NOT NULL,\n  `title` varchar(255) NOT NULL,\n  `content` text NOT NULL,\n  `fk_mood_id` int(10) unsigned NOT NULL,\n  `status` enum('online','offline') NOT NULL DEFAULT 'online',\n  `admin_status` enum('online','offline','pending') NOT NULL DEFAULT 'pending',\n  `comments_online` int(10) unsigned NOT NULL DEFAULT '0',\n  `comments_offline` int(10) unsigned NOT NULL DEFAULT '0',\n  `feature` varchar(255) NOT NULL,\n  `last_modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,\n  PRIMARY KEY (`entry_id`)\n) ENGINE=MyISAM AUTO_INCREMENT=15 DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `plugin_blog_entry`\n--\n\nLOCK TABLES `plugin_blog_entry` WRITE;\n/*!40000 ALTER TABLE `plugin_blog_entry` DISABLE KEYS */;\n/*!40000 ALTER TABLE `plugin_blog_entry` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `plugin_blog_entry_topic`\n--\n\nDROP TABLE IF EXISTS `plugin_blog_entry_topic`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `plugin_blog_entry_topic` (\n  `fk_entry_id` int(10) unsigned NOT NULL,\n  `fk_topic_id` int(10) unsigned NOT NULL,\n  PRIMARY KEY (`fk_entry_id`,`fk_topic_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `plugin_blog_entry_topic`\n--\n\nLOCK TABLES `plugin_blog_entry_topic` WRITE;\n/*!40000 ALTER TABLE `plugin_blog_entry_topic` DISABLE KEYS */;\n/*!40000 ALTER TABLE `plugin_blog_entry_topic` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `plugin_blog_topic`\n--\n\nDROP TABLE IF EXISTS `plugin_blog_topic`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `plugin_blog_topic` (\n  `fk_blog_id` int(10) unsigned NOT NULL,\n  `fk_topic_id` int(10) unsigned NOT NULL,\n  PRIMARY KEY (`fk_blog_id`,`fk_topic_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `plugin_blog_topic`\n--\n\nLOCK TABLES `plugin_blog_topic` WRITE;\n/*!40000 ALTER TABLE `plugin_blog_topic` DISABLE KEYS */;\n/*!40000 ALTER TABLE `plugin_blog_topic` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `plugin_poll`\n--\n\nDROP TABLE IF EXISTS `plugin_poll`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `plugin_poll` (\n  `poll_nr` int(10) unsigned NOT NULL,\n  `fk_language_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `parent_poll_nr` int(11) NOT NULL,\n  `is_extended` tinyint(4) NOT NULL,\n  `title` varchar(255) NOT NULL,\n  `question` varchar(255) NOT NULL,\n  `date_begin` date NOT NULL DEFAULT '0000-00-00',\n  `date_end` date NOT NULL DEFAULT '0000-00-00',\n  `nr_of_answers` tinyint(3) unsigned NOT NULL DEFAULT '0',\n  `votes_per_user` tinyint(3) unsigned NOT NULL DEFAULT '1',\n  `nr_of_votes` int(10) unsigned NOT NULL,\n  `nr_of_votes_overall` int(10) unsigned NOT NULL,\n  `percentage_of_votes_overall` float unsigned NOT NULL,\n  `last_modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,\n  PRIMARY KEY (`poll_nr`,`fk_language_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `plugin_poll`\n--\n\nLOCK TABLES `plugin_poll` WRITE;\n/*!40000 ALTER TABLE `plugin_poll` DISABLE KEYS */;\n/*!40000 ALTER TABLE `plugin_poll` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `plugin_poll_answer`\n--\n\nDROP TABLE IF EXISTS `plugin_poll_answer`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `plugin_poll_answer` (\n  `fk_poll_nr` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_language_id` int(10) unsigned NOT NULL DEFAULT '0',\n  `nr_answer` tinyint(3) unsigned NOT NULL DEFAULT '0',\n  `answer` varchar(255) NOT NULL,\n  `nr_of_votes` int(10) unsigned NOT NULL DEFAULT '0',\n  `percentage` float unsigned NOT NULL,\n  `percentage_overall` float unsigned NOT NULL,\n  `value` int(11) NOT NULL,\n  `average_value` float NOT NULL,\n  `on_hitlist` tinyint(4) NOT NULL,\n  `last_modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,\n  UNIQUE KEY `NrPoll` (`fk_poll_nr`,`fk_language_id`,`nr_answer`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `plugin_poll_answer`\n--\n\nLOCK TABLES `plugin_poll_answer` WRITE;\n/*!40000 ALTER TABLE `plugin_poll_answer` DISABLE KEYS */;\n/*!40000 ALTER TABLE `plugin_poll_answer` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `plugin_poll_article`\n--\n\nDROP TABLE IF EXISTS `plugin_poll_article`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `plugin_poll_article` (\n  `fk_poll_nr` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_article_nr` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_article_language_id` int(10) unsigned NOT NULL,\n  PRIMARY KEY (`fk_poll_nr`,`fk_article_nr`,`fk_article_language_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `plugin_poll_article`\n--\n\nLOCK TABLES `plugin_poll_article` WRITE;\n/*!40000 ALTER TABLE `plugin_poll_article` DISABLE KEYS */;\n/*!40000 ALTER TABLE `plugin_poll_article` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `plugin_poll_issue`\n--\n\nDROP TABLE IF EXISTS `plugin_poll_issue`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `plugin_poll_issue` (\n  `fk_poll_nr` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_issue_nr` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_issue_language_id` int(10) unsigned NOT NULL,\n  `fk_publication_id` int(10) unsigned NOT NULL DEFAULT '0',\n  PRIMARY KEY (`fk_poll_nr`,`fk_issue_nr`,`fk_issue_language_id`,`fk_publication_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `plugin_poll_issue`\n--\n\nLOCK TABLES `plugin_poll_issue` WRITE;\n/*!40000 ALTER TABLE `plugin_poll_issue` DISABLE KEYS */;\n/*!40000 ALTER TABLE `plugin_poll_issue` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `plugin_poll_publication`\n--\n\nDROP TABLE IF EXISTS `plugin_poll_publication`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `plugin_poll_publication` (\n  `fk_poll_nr` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_publication_id` int(10) unsigned NOT NULL DEFAULT '0',\n  PRIMARY KEY (`fk_poll_nr`,`fk_publication_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `plugin_poll_publication`\n--\n\nLOCK TABLES `plugin_poll_publication` WRITE;\n/*!40000 ALTER TABLE `plugin_poll_publication` DISABLE KEYS */;\n/*!40000 ALTER TABLE `plugin_poll_publication` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `plugin_poll_section`\n--\n\nDROP TABLE IF EXISTS `plugin_poll_section`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `plugin_poll_section` (\n  `fk_poll_nr` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_section_nr` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_section_language_id` int(10) unsigned NOT NULL,\n  `fk_issue_nr` int(10) unsigned NOT NULL DEFAULT '0',\n  `fk_publication_id` int(10) unsigned NOT NULL DEFAULT '0',\n  PRIMARY KEY (`fk_poll_nr`,`fk_section_nr`,`fk_section_language_id`,`fk_issue_nr`,`fk_publication_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `plugin_poll_section`\n--\n\nLOCK TABLES `plugin_poll_section` WRITE;\n/*!40000 ALTER TABLE `plugin_poll_section` DISABLE KEYS */;\n/*!40000 ALTER TABLE `plugin_poll_section` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `plugin_pollanswer_attachment`\n--\n\nDROP TABLE IF EXISTS `plugin_pollanswer_attachment`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `plugin_pollanswer_attachment` (\n  `fk_poll_nr` int(11) NOT NULL,\n  `fk_pollanswer_nr` int(11) NOT NULL,\n  `fk_attachment_id` int(11) NOT NULL,\n  PRIMARY KEY (`fk_poll_nr`,`fk_pollanswer_nr`,`fk_attachment_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `plugin_pollanswer_attachment`\n--\n\nLOCK TABLES `plugin_pollanswer_attachment` WRITE;\n/*!40000 ALTER TABLE `plugin_pollanswer_attachment` DISABLE KEYS */;\n/*!40000 ALTER TABLE `plugin_pollanswer_attachment` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Table structure for table `resource`\n--\n\nDROP TABLE IF EXISTS `resource`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `resource` (\n  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `name` varchar(50) NOT NULL,\n  `path` varchar(200) NOT NULL,\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `path` (`path`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Dumping data for table `resource`\n--\n\nLOCK TABLES `resource` WRITE;\n/*!40000 ALTER TABLE `resource` DISABLE KEYS */;\n/*!40000 ALTER TABLE `resource` ENABLE KEYS */;\nUNLOCK TABLES;\n/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;\n\nDROP TABLE IF EXISTS `audit_event`;\n\nCREATE TABLE IF NOT EXISTS `audit_event` (\n  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,\n  `user_id` int(11) unsigned DEFAULT NULL,\n  `resource_type` varchar(80) NOT NULL,\n  `resource_id` varchar(255) DEFAULT NULL,\n  `resource_title` varchar(255) DEFAULT NULL,\n  `resource_diff` longtext,\n  `action` varchar(80) NOT NULL,\n  `created` datetime NOT NULL,\n  `is_public` tinyint(1) NOT NULL,\n  PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8;\n\nDROP TABLE IF EXISTS `user_attribute`;\n\nCREATE TABLE IF NOT EXISTS `user_attribute` (\n  `user_id` int(11) unsigned NOT NULL,\n  `attribute` varchar(255) NOT NULL,\n  `value` varchar(255) DEFAULT NULL,\n  PRIMARY KEY (`user_id`,`attribute`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8;\n\nDROP TABLE IF EXISTS `user_points_index`;\n\nCREATE TABLE IF NOT EXISTS `user_points_index` (\n  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,\n  `action` varchar(255) NOT NULL,\n  `name` varchar(255) NOT NULL DEFAULT '',\n  `points` int(10) NOT NULL DEFAULT '0',\n  `enabled` tinyint(1) NOT NULL DEFAULT '1',\n  PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8;\n\nDROP TABLE IF EXISTS `user_token`;\n\nCREATE TABLE IF NOT EXISTS `user_token` (\n  `user_id` int(11) unsigned NOT NULL,\n  `action` varchar(40) NOT NULL,\n  `token` varchar(40) NOT NULL,\n  `created` datetime NOT NULL,\n  PRIMARY KEY (`user_id`,`action`,`token`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8;\n\nDROP TABLE IF EXISTS `ingest_feed`;\n\nCREATE TABLE IF NOT EXISTS `ingest_feed` (\n  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,\n  `title` varchar(255) NOT NULL,\n  `mode` varchar(25) DEFAULT 'manual',\n  `updated` datetime DEFAULT NULL,\n  PRIMARY KEY (`id`)\n) ENGINE=InnoDB  DEFAULT CHARSET=utf8;\n\nDROP TABLE IF EXISTS `ingest_feed_entry`;\n\nCREATE TABLE IF NOT EXISTS `ingest_feed_entry` (\n  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,\n  `feed_id` int(11) unsigned NOT NULL,\n  `date_id` varchar(20) DEFAULT NULL,\n  `news_item_id` varchar(255) DEFAULT NULL,\n  `title` varchar(255) NOT NULL,\n  `updated` datetime NOT NULL,\n  `author` varchar(255) DEFAULT NULL,\n  `content` text NOT NULL,\n  `summary` text,\n  `category` varchar(255) DEFAULT NULL,\n  `created` datetime DEFAULT NULL,\n  `published` datetime DEFAULT NULL,\n  `embargoed` datetime DEFAULT NULL,\n  `priority` tinyint(4) DEFAULT NULL,\n  `status` varchar(20) DEFAULT NULL,\n  `attributes` text,\n  PRIMARY KEY (`id`),\n  UNIQUE (`date_id`, `news_item_id`),\n  KEY (`status`, `updated`)\n) ENGINE=InnoDB  DEFAULT CHARSET=utf8;\n\nDROP TABLE IF EXISTS `user_identity`;\n\nCREATE TABLE IF NOT EXISTS `user_identity` (\n  `provider` varchar(80) NOT NULL,\n  `provider_user_id` varchar(255) NOT NULL,\n  `user_id` int(11) unsigned NOT NULL,\n  PRIMARY KEY (`provider`, `provider_user_id`)\n) ENGINE=InnoDB  DEFAULT CHARSET=utf8;\n\n\nDROP TABLE IF EXISTS `article_datetimes`;\n\nCREATE TABLE `article_datetimes` (\n  `id_article_datetime` int(10) unsigned NOT NULL AUTO_INCREMENT,\n  `start_time` time DEFAULT NULL COMMENT 'NULL = 00:00',\n  `end_time` time DEFAULT NULL COMMENT 'NULL = 24:00',\n  `start_date` date NOT NULL,\n  `end_date` date DEFAULT NULL COMMENT 'NULL = no end',\n  `recurring` enum('daily','weekly','monthly','yearly') DEFAULT NULL,\n  `article_id` int(10) unsigned NOT NULL,\n  `article_type` varchar(166) NOT NULL,\n  `field_name` varchar(166) NOT NULL,\n  `event_comment` TEXT,\n  PRIMARY KEY (`id_article_datetime`),\n  KEY `article_id` (`article_id`),\n  KEY `start_time` (`start_time`),\n  KEY `end_time` (`end_time`),\n  KEY `start_date` (`start_date`),\n  KEY `end_date` (`end_date`),\n  KEY `article_type` (`article_type`),\n  KEY `field_name` (`field_name`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8;\n\n-- --------------------------------------------------------\n\nDROP TABLE IF EXISTS `ArticleRendition`;\n\nCREATE TABLE IF NOT EXISTS `ArticleRendition` (\n  `image_id` int(11) NOT NULL,\n  `rendition_id` varchar(255) NOT NULL,\n  `articleNumber` int(11) NOT NULL,\n  `imageSpecs` varchar(255) DEFAULT NULL,\n  PRIMARY KEY (`articleNumber`,`image_id`,`rendition_id`),\n  KEY `IDX_794B8A6C3DA5256D` (`image_id`),\n  KEY `IDX_794B8A6CFD656AA1` (`rendition_id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8;\n\n-- --------------------------------------------------------\n\nDROP TABLE IF EXISTS `package`;\n\nCREATE TABLE IF NOT EXISTS `package` (\n  `id` int(11) NOT NULL AUTO_INCREMENT,\n  `rendition_id` varchar(255) DEFAULT NULL,\n  `headline` varchar(255) NOT NULL,\n  `description` longtext,\n  `slug` varchar(255) DEFAULT NULL,\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `UNIQ_DE686795989D9B62` (`slug`),\n  KEY `IDX_DE686795FD656AA1` (`rendition_id`)\n) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;\n\n-- --------------------------------------------------------\n\nDROP TABLE IF EXISTS `package_article`;\n\nCREATE TABLE IF NOT EXISTS `package_article` (\n  `id` int(11) NOT NULL,\n  PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8;\n\n-- --------------------------------------------------------\n\nDROP TABLE IF EXISTS `package_article_package`;\n\nCREATE TABLE IF NOT EXISTS `package_article_package` (\n  `article_id` int(11) NOT NULL,\n  `package_id` int(11) NOT NULL,\n  PRIMARY KEY (`article_id`,`package_id`),\n  KEY `IDX_BB5F0F827294869C` (`article_id`),\n  KEY `IDX_BB5F0F82F44CABFF` (`package_id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8;\n\n-- --------------------------------------------------------\n\nDROP TABLE IF EXISTS `package_item`;\n\nCREATE TABLE IF NOT EXISTS `package_item` (\n  `id` int(11) NOT NULL AUTO_INCREMENT,\n  `package_id` int(11) DEFAULT NULL,\n  `image_id` int(11) DEFAULT NULL,\n  `offset` int(11) NOT NULL,\n  `caption` text DEFAULT NULL,\n  `coords` varchar(255) DEFAULT NULL,\n  `video_url` varchar(255) DEFAULT NULL,\n  PRIMARY KEY (`id`),\n  KEY `IDX_A45640D6F44CABFF` (`package_id`),\n  KEY `IDX_A45640D63DA5256D` (`image_id`)\n) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=6 ;\n\n-- --------------------------------------------------------\n\nDROP TABLE IF EXISTS `rendition`;\n\nCREATE TABLE IF NOT EXISTS `rendition` (\n  `name` varchar(255) NOT NULL,\n  `width` int(11) NOT NULL,\n  `height` int(11) NOT NULL,\n  `specs` varchar(255) NOT NULL,\n  `offset` int(11) DEFAULT NULL,\n  `label` varchar(80) DEFAULT NULL,\n  PRIMARY KEY (`name`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8;\n\n\n--\n-- Omezení pro tabulku `package_article_package`\n--\nALTER TABLE `package_article_package`\n  ADD CONSTRAINT `package_article_package_ibfk_1` FOREIGN KEY (`article_id`) REFERENCES `package_article` (`id`) ON DELETE CASCADE,\n  ADD CONSTRAINT `package_article_package_ibfk_2` FOREIGN KEY (`package_id`) REFERENCES `package` (`id`) ON DELETE CASCADE;\n\nDROP TABLE IF EXISTS `webcode`;\n\nCREATE TABLE IF NOT EXISTS `webcode` (\n  `webcode` varchar(10) NOT NULL,\n  `article_number` int(10) unsigned NOT NULL,\n  `language_id` int(10) unsigned NOT NULL,\n  PRIMARY KEY (`webcode`),\n  UNIQUE KEY `article_language` (`article_number`,`language_id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8;\n\n--\n-- Table structure for table `OAuthClient`\n--\n\nDROP TABLE IF EXISTS `OAuthClient`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `OAuthClient` (\n  `id` int(11) NOT NULL AUTO_INCREMENT,\n  `random_id` varchar(255) COLLATE utf8_unicode_ci NOT NULL,\n  `redirect_uris` longtext COLLATE utf8_unicode_ci NOT NULL COMMENT '(DC2Type:array)',\n  `secret` varchar(255) COLLATE utf8_unicode_ci NOT NULL,\n  `allowed_grant_types` longtext COLLATE utf8_unicode_ci NOT NULL COMMENT '(DC2Type:array)',\n  `name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,\n  `IdPublication` int(11) DEFAULT NULL,\n  `trusted` TINYINT(1) NOT NULL,\n  PRIMARY KEY (`id`),\n  KEY `IDX_4128BE95C1FD3F4` (`IdPublication`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\nDROP TABLE IF EXISTS `OAuthAccessToken`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `OAuthAccessToken` (\n  `id` int(11) NOT NULL AUTO_INCREMENT,\n  `client_id` int(11) NOT NULL,\n  `token` varchar(255) COLLATE utf8_unicode_ci NOT NULL,\n  `expires_at` int(11) DEFAULT NULL,\n  `scope` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,\n  `IdPublication` int(11) DEFAULT NULL,\n  `user_id` int(11) DEFAULT NULL,\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `UNIQ_DDE10DD55F37A13B` (`token`),\n  KEY `IDX_DDE10DD519EB6921` (`client_id`),\n  KEY `IDX_DDE10DD55C1FD3F4` (`IdPublication`),\n  KEY `IDX_DDE10DD5A76ED395` (`user_id`),\n  CONSTRAINT `FK_DDE10DD519EB6921` FOREIGN KEY (`client_id`) REFERENCES `OAuthClient` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Table structure for table `OAuthAuthCode`\n--\n\nDROP TABLE IF EXISTS `OAuthAuthCode`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `OAuthAuthCode` (\n  `id` int(11) NOT NULL AUTO_INCREMENT,\n  `client_id` int(11) NOT NULL,\n  `token` varchar(255) COLLATE utf8_unicode_ci NOT NULL,\n  `redirect_uri` longtext COLLATE utf8_unicode_ci NOT NULL,\n  `expires_at` int(11) DEFAULT NULL,\n  `scope` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,\n  `IdPublication` int(11) DEFAULT NULL,\n  `user_id` int(11) DEFAULT NULL,\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `UNIQ_3DD60F725F37A13B` (`token`),\n  KEY `IDX_3DD60F7219EB6921` (`client_id`),\n  KEY `IDX_3DD60F725C1FD3F4` (`IdPublication`),\n  KEY `IDX_3DD60F72A76ED395` (`user_id`),\n  CONSTRAINT `FK_3DD60F7219EB6921` FOREIGN KEY (`client_id`) REFERENCES `OAuthClient` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n--\n-- Table structure for table `OAuthRefreshToken`\n--\n\nDROP TABLE IF EXISTS `OAuthRefreshToken`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `OAuthRefreshToken` (\n  `id` int(11) NOT NULL AUTO_INCREMENT,\n  `client_id` int(11) NOT NULL,\n  `token` varchar(255) COLLATE utf8_unicode_ci NOT NULL,\n  `expires_at` int(11) DEFAULT NULL,\n  `scope` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,\n  `IdPublication` int(11) DEFAULT NULL,\n  `user_id` int(11) DEFAULT NULL,\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `UNIQ_4A42604C5F37A13B` (`token`),\n  KEY `IDX_4A42604C19EB6921` (`client_id`),\n  KEY `IDX_4A42604C5C1FD3F4` (`IdPublication`),\n  KEY `IDX_4A42604CA76ED395` (`user_id`),\n  CONSTRAINT `FK_4A42604C19EB6921` FOREIGN KEY (`client_id`) REFERENCES `OAuthClient` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\n\n--\n-- Table structure for table `OAuthPublicApiResources`\n--\n\nDROP TABLE IF EXISTS `OAuthPublicApiResources`;\n/*!40101 SET @saved_cs_client     = @@character_set_client */;\n/*!40101 SET character_set_client = utf8 */;\nCREATE TABLE `OAuthPublicApiResources` (\n  `id` int(11) NOT NULL AUTO_INCREMENT,\n  `resource` varchar(255) COLLATE utf8_unicode_ci NOT NULL,\n  PRIMARY KEY (`id`)\n) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;\n/*!40101 SET character_set_client = @saved_cs_client */;\n\nDROP TABLE IF EXISTS `Snippets`;\n\nCREATE TABLE Snippets (\n  `Id` int AUTO_INCREMENT NOT NULL,\n  `Name` varchar(255) NOT NULL,\n  `Enabled` tinyint(1) NOT NULL,\n  `Created` datetime NOT NULL,\n  `Modified` datetime NOT NULL,\n  `TemplateId` int DEFAULT NULL,\n  INDEX IDX_1457978AF846113F (TemplateId),\n  PRIMARY KEY(Id)\n) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\nDROP TABLE IF EXISTS `SnippetTemplates`;\n\nCREATE TABLE SnippetTemplates (\n  `Id` int(11) NOT NULL AUTO_INCREMENT,\n  `Name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,\n  `Controller` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,\n  `TemplateCode` longtext COLLATE utf8_unicode_ci NOT NULL,\n  `Favourite` tinyint(1) DEFAULT NULL,\n  `Enabled` tinyint(1) NOT NULL,\n  `IconInactive` longtext COLLATE utf8_unicode_ci,\n  `IconActive` longtext COLLATE utf8_unicode_ci,\n  `Created` datetime NOT NULL,\n  `Modified` datetime NOT NULL,\n  PRIMARY KEY (`Id`)\n) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;\n\nALTER TABLE Snippets ADD CONSTRAINT SnippetTemplate FOREIGN KEY (TemplateId) REFERENCES SnippetTemplates (Id);\n\nLOCK TABLES `SnippetTemplates` WRITE;\nINSERT INTO `SnippetTemplates` (`Id`, `Name`, `Controller`, `TemplateCode`, `Favourite`, `Enabled`, `IconInactive`, `IconActive`, `Created`, `Modified`)\nVALUES\n\t(1, 'Embed.ly', 'Newscoop\\\\NewscoopBundle\\\\Controller\\\\EmbedlyController', '<a class=\\\"embedly-card\\\" href=\\\"{{ URL }}\\\">{{ title }}</a><script>!function(a){var b=\\\"embedly-platform\\\",c=\\\"script\\\";if(!a.getElementById(b)){var d=a.createElement(c);d.id=b,d.src=(\\\"https:\\\"===document.location.protocol?\\\"https\\\":\\\"http\\\")+\\\"://cdn.embedly.com/widgets/platform.js\\\";var e=document.getElementsByTagName(c)[0];e.parentNode.insertBefore(d,e)}}(document);</script>', 0, 1, NULL, NULL, '2014-05-12 13:19:43', '2014-05-12 13:19:43'),\n\t(2, 'Youtube', NULL, '<iframe width=\\\"{{ width }}\\\" height=\\\"{{ height }}\\\" src=\\\"//www.youtube.com/embed/{{ ID }}\\\" frameborder=\\\"0\\\" allowfullscreen></iframe>', 1, 1, NULL, NULL, '0000-00-00 00:00:00', '0000-00-00 00:00:00'),\n\t(3, 'Vimeo', NULL, '<iframe src=\\\"//player.vimeo.com/video/{{ ID }}\\\" width=\\\"{{ width }}\\\" height=\\\"{{ height }}\\\" frameborder=\\\"0\\\" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>', 1, 1, NULL, NULL, '0000-00-00 00:00:00', '0000-00-00 00:00:00'),\n\t(4, 'Generic', NULL, '{{Generic | raw}}', 0, 1, NULL, NULL, '2014-06-10 14:15:49', '2014-06-10 14:15:49');\n\nUNLOCK TABLES;\n\nDROP TABLE IF EXISTS `SnippetTemplateField`;\n\nCREATE TABLE SnippetTemplateField (\n  `Id` int AUTO_INCREMENT NOT NULL,\n  `Name` varchar(255) NOT NULL,\n  `Type` VARCHAR(255) NOT NULL,\n  `Scope` varchar(255) NOT NULL,\n  `Required` tinyint(1) NOT NULL,\n  `TemplateId` int NOT NULL,\n  INDEX IDX_2060662F846113F (TemplateId),\n  PRIMARY KEY(Id)\n) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\nALTER TABLE SnippetTemplateField ADD CONSTRAINT FK_2060662F846113F FOREIGN KEY (TemplateId) REFERENCES SnippetTemplates (Id);\n\nLOCK TABLES `SnippetTemplateField` WRITE;\nINSERT INTO `SnippetTemplateField` (`Id`, `Name`, `Type`, `Scope`, `Required`, `TemplateId`)\nVALUES\n    (1, 'URL', 'url', 'frontend', 1, 1),\n    (2, 'Endpoint', 'text', 'frontend', 0, 1),\n    (3, 'maxwidth', 'integer', 'frontend', 0, 1),\n    (4, 'provider_url', 'url', 'backend', 0, 1),\n    (5, 'description', 'textarea', 'backend', 0, 1),\n    (6, 'title', 'text', 'backend', 0, 1),\n    (7, 'type', 'text', 'backend', 0, 1),\n    (8, 'thumbnail_width', 'integer', 'backend', 0, 1),\n    (9, 'height', 'integer', 'backend', 0, 1),\n    (10, 'width', 'integer', 'backend', 0, 1),\n    (11, 'html', 'textarea', 'backend', 0, 1),\n    (12, 'author_name', 'text', 'backend', 0, 1),\n    (13, 'version', 'text', 'backend', 0, 1),\n    (14, 'provider_name', 'text', 'backend', 0, 1),\n    (15, 'thumbnail_url', 'url', 'backend', 0, 1),\n    (16, 'thumbnail_height', 'integer', 'backend', 0, 1),\n    (17, 'author_url', 'url', 'backend', 0, 1),\n    (18, 'ID', 'text', 'frontend', 1, 2),\n    (19, 'width', 'integer', 'frontend', 1, 2),\n    (20, 'height', 'integer', 'frontend', 1, 2),\n    (21, 'ID', 'text', 'frontend', 1, 3),\n    (22, 'width', 'integer', 'frontend', 1, 3),\n    (23, 'height', 'integer', 'frontend', 1, 3),\n    (24, 'Generic', 'textarea', 'frontend', 1, 4);\nUNLOCK TABLES;\n\nDROP TABLE IF EXISTS `SnippetFields`;\n\nCREATE TABLE SnippetFields (\n  `Id` int AUTO_INCREMENT NOT NULL,\n  `Data` longtext DEFAULT NULL,\n  `Name` varchar(255) NOT NULL,\n  `SnippetId` int NOT NULL,\n  `TemplateFieldId` int NOT NULL,\n  INDEX IDX_1F835121B00DA91C (SnippetId),\n  INDEX IDX_1F835121EBCA9337 (TemplateFieldId),\n  PRIMARY KEY(Id)\n) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\nALTER TABLE SnippetFields ADD CONSTRAINT FK_1F835121B00DA91C FOREIGN KEY (SnippetId) REFERENCES Snippets (Id);\nALTER TABLE SnippetFields ADD CONSTRAINT FK_1F835121EBCA9337 FOREIGN KEY (TemplateFieldId) REFERENCES SnippetTemplateField (Id);\n\nLOCK TABLES `SnippetFields` WRITE;\nINSERT INTO `SnippetFields` (`Id`, `Data`, `SnippetId`, `TemplateFieldId`, `Name`)\nVALUES\n    (1, 'https://www.youtube.com/watch?v=AYVUPem_jaM', 1, 1, 'URL'),\n    (2, NULL, 1, 2, 'Endpoint'),\n    (3, '0', 1, 3, 'maxwidth'),\n    (4, 'http://www.youtube.com/', 1, 4, 'provider_url'),\n    (5, 'Sourcefabric builds open source software to support independent media worldwide. On February 14th, we\\'ll announce our tool to help people and organisations write and publish great multi-platform books. Write and publish great books ready for iPad, Kindle, Nook or print within minutes.', 1, 5, 'description'),\n    (6, 'The future of the book is in your hands', 1, 6, 'title'),\n    (7, 'video', 1, 7, 'type'),\n    (8, '480', 1, 8, 'thumbnail_width'),\n    (9, '309', 1, 9, 'height'),\n    (10, '550', 1, 10, 'width'),\n    (11, '<iframe class=\\\"embedly-embed\\\" src=\\\"//cdn.embedly.com/widgets/media.html?url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DAYVUPem_jaM&src=http%3A%2F%2Fwww.youtube.com%2Fembed%2FAYVUPem_jaM%3Ffeature%3Doembed&image=http%3A%2F%2Fi1.ytimg.com%2Fvi%2FAYVUPem_jaM%2Fhqdefault.jpg&type=text%2Fhtml&schema=youtube\\\" width=\\\"550\\\" height=\\\"309\\\" scrolling=\\\"no\\\" frameborder=\\\"0\\\" allowfullscreen></iframe>', 1, 11, 'html'),\n    (12, 'Sourcefabric', 1, 12, 'author_name'),\n    (13, '1.0', 1, 13, 'version'),\n    (14, 'YouTube', 1, 14, 'provider_name'),\n    (15, 'http://i1.ytimg.com/vi/AYVUPem_jaM/hqdefault.jpg', 1, 15, 'thumbnail_url'),\n    (16, '360', 1, 16, 'thumbnail_height'),\n    (17, 'http://www.youtube.com/user/Sourcefabric', 1, 17, 'author_url');\nUNLOCK TABLES;\n\nDROP TABLE IF EXISTS `ArticleSnippets`;\n\nCREATE TABLE ArticleSnippets (\n  ArticleNr int(11) NOT NULL,\n  SnippetId int(11) NOT NULL,\n  INDEX IDX_5080CDE7C53224D (ArticleNr),\n  INDEX IDX_5080CDEB00DA91C (SnippetId),\n  PRIMARY KEY(ArticleNr, SnippetId)\n) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\nDROP TABLE IF EXISTS `user_oauth_clients`;\n\nCREATE TABLE user_oauth_clients (\n  user_id INT NOT NULL,\n  client_id INT NOT NULL,\n  INDEX IDX_FD402C51A76ED395 (user_id),\n  INDEX IDX_FD402C5119EB6921 (client_id),\n  PRIMARY KEY(user_id, client_id)\n) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\nDROP TABLE IF EXISTS `cron_jobs`;\n\nCREATE TABLE `cron_jobs` (\n  `id` int AUTO_INCREMENT NOT NULL,\n  `name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,\n  `command` varchar(255) COLLATE utf8_unicode_ci NOT NULL,\n  `schedule` varchar(255) COLLATE utf8_unicode_ci NOT NULL,\n  `is_debug` tinyint(1) DEFAULT NULL,\n  `dateFormat` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,\n  `output` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,\n  `runOnHost` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,\n  `environment` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,\n  `runAs` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,\n  `is_active` tinyint(1) NOT NULL,\n  `sendMail` tinyint(1) NOT NULL,\n  `detailsUrl` TEXT NULL,\n  `created_at` datetime NOT NULL,\n  PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;\n\n\nDROP TABLE IF EXISTS `community_ticker_event`;\n\nCREATE TABLE `community_ticker_event` (\n  `id` int(11) NOT NULL AUTO_INCREMENT,\n  `event` varchar(80) COLLATE utf8_unicode_ci NOT NULL,\n  `params` longtext COLLATE utf8_unicode_ci,\n  `created` datetime NOT NULL,\n  `is_active` tinyint(1) NOT NULL,\n  `user_id` int(11) DEFAULT NULL,\n  PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;\n\nDROP TABLE IF EXISTS `editorial_comments`;\n\nCREATE TABLE `editorial_comments` (\n  `id` int(11) NOT NULL AUTO_INCREMENT,\n  `fk_article_number` int(11) NOT NULL,\n  `fk_language_id` int(11) NOT NULL,\n  `comment` text COLLATE utf8_unicode_ci NOT NULL,\n  `resolved` int(1) NOT NULL DEFAULT '0',\n  `fk_parent_id` int(11) DEFAULT NULL,\n  `user_id` int(11) NOT NULL,\n  `created_at` datetime NOT NULL,\n  `is_active` int(1) NOT NULL DEFAULT '1',\n  PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;\n"
  },
  {
    "path": "newscoop/install/Resources/sql/campsite_demo_data.sql",
    "content": "-- MySQL dump 10.13  Distrib 5.5.35, for debian-linux-gnu (x86_64)\n--\n-- Host: localhost    Database: newscoop43demo\n-- ------------------------------------------------------\n-- Server version   5.5.35-0ubuntu0.12.04.2\n\n/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;\n/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;\n/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;\n/*!40101 SET NAMES utf8 */;\n/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;\n/*!40103 SET TIME_ZONE='+00:00' */;\n/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;\n/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;\n/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;\n/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;\n\n--\n-- Dumping data for table `ArticleAttachments`\n--\n\nLOCK TABLES `ArticleAttachments` WRITE;\n/*!40000 ALTER TABLE `ArticleAttachments` DISABLE KEYS */;\nINSERT INTO `ArticleAttachments` VALUES (17,1),(17,2),(24,1),(27,3),(28,2),(28,3),(40,1),(40,2),(47,1),(47,2),(48,1),(48,2),(55,1),(55,2),(56,1),(56,2);\n/*!40000 ALTER TABLE `ArticleAttachments` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `ArticleAuthors`\n--\n\nLOCK TABLES `ArticleAuthors` WRITE;\n/*!40000 ALTER TABLE `ArticleAuthors` DISABLE KEYS */;\nINSERT INTO `ArticleAuthors` VALUES (2,1,6,1,1),(2,1,7,1,2),(3,1,9,1,1),(4,1,8,1,1),(4,1,3,1,2),(5,1,3,1,1),(6,1,9,1,1),(7,1,9,1,1),(7,1,3,3,2),(8,1,5,1,1),(8,1,3,1,2),(9,1,6,1,1),(9,1,7,1,2),(10,1,9,1,1),(11,1,4,3,2),(11,1,2,1,1),(12,1,5,1,1),(13,1,3,1,1),(13,1,9,1,2),(14,1,5,1,1),(14,1,8,1,2),(14,1,4,3,3),(15,1,6,1,1),(15,1,9,1,2),(15,1,3,1,3),(16,1,3,1,1),(16,1,4,1,2),(17,1,3,1,1),(17,1,9,1,2),(18,1,5,1,1),(18,1,2,1,2),(19,1,3,1,1),(20,1,5,1,1),(20,1,8,1,2),(21,1,8,1,1),(22,1,9,1,1),(22,1,4,3,2),(23,1,5,1,1),(23,1,3,1,2),(24,1,6,1,1),(24,1,9,1,2),(25,1,3,1,1),(26,1,3,1,1),(27,1,8,1,1),(27,1,4,3,2),(28,1,5,1,1),(29,1,2,1,1),(29,1,3,1,2),(30,1,8,1,1),(30,1,2,1,2),(31,1,2,1,1),(32,1,10,1,1),(33,1,10,1,1),(34,1,10,1,1),(35,1,10,1,1),(36,1,10,1,1),(37,1,10,1,1),(38,1,10,1,1),(39,1,10,1,1);\n/*!40000 ALTER TABLE `ArticleAuthors` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `ArticleImageCaptions`\n--\n\nLOCK TABLES `ArticleImageCaptions` WRITE;\n/*!40000 ALTER TABLE `ArticleImageCaptions` DISABLE KEYS */;\n/*!40000 ALTER TABLE `ArticleImageCaptions` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `ArticleImages`\n--\n\nLOCK TABLES `ArticleImages` WRITE;\n/*!40000 ALTER TABLE `ArticleImages` DISABLE KEYS */;\nINSERT INTO `ArticleImages` VALUES (1,2,1,1,30),(2,3,1,1,29),(3,4,1,1,22),(4,5,1,1,27),(5,6,1,1,21),(6,7,1,1,27),(7,8,1,1,23),(8,9,1,1,28),(9,10,1,1,25),(10,11,1,1,31),(11,12,1,1,20),(12,14,1,1,28),(13,15,1,1,20),(14,16,1,1,24),(15,17,1,1,19),(16,18,1,1,33),(17,19,1,1,32),(18,20,1,1,31),(19,21,1,1,23),(20,22,1,1,27),(21,23,1,1,26),(22,24,1,1,29),(23,25,1,1,33),(24,26,1,1,30),(25,27,1,1,21),(26,28,1,1,26),(27,29,1,1,34),(28,1,1,1,3),(29,40,1,1,19),(30,41,1,1,24),(31,42,1,1,20),(32,43,1,1,28),(33,44,1,1,28),(34,45,1,1,20),(35,46,1,1,24),(36,47,1,1,19),(37,48,1,1,19),(38,49,1,1,24),(40,51,1,1,28),(43,54,1,1,24),(44,55,1,1,19),(45,56,1,1,19),(46,57,1,1,24),(47,58,1,1,20),(48,59,1,1,28),(49,60,1,1,28),(50,61,1,1,20);\n/*!40000 ALTER TABLE `ArticleImages` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `ArticleIndex`\n--\n\nLOCK TABLES `ArticleIndex` WRITE;\n/*!40000 ALTER TABLE `ArticleIndex` DISABLE KEYS */;\nINSERT INTO `ArticleIndex` VALUES (1,1,1,1,5,1),(1,1,2,1,5,32),(1,1,2,1,5,33),(1,1,2,1,5,34),(1,1,2,1,15,35),(1,1,2,1,15,36),(1,1,2,1,15,37),(1,1,2,1,15,38),(1,1,2,1,15,39),(1,1,3,1,5,32),(1,1,3,1,5,33),(1,1,3,1,5,34),(1,1,3,1,15,35),(1,1,3,1,15,36),(1,1,3,1,15,37),(1,1,3,1,15,38),(1,1,3,1,15,39),(1,1,4,1,5,32),(1,1,4,1,5,33),(1,1,4,1,5,34),(1,1,4,1,15,35),(1,1,4,1,15,36),(1,1,4,1,15,37),(1,1,4,1,15,38),(1,1,4,1,15,39),(1,1,5,1,5,32),(1,1,5,1,5,33),(1,1,5,1,5,34),(1,1,5,1,15,35),(1,1,5,1,15,36),(1,1,5,1,15,37),(1,1,5,1,15,38),(1,1,5,1,15,39),(1,1,6,10,10,2),(1,1,6,10,10,3),(1,1,6,10,50,11),(1,1,6,10,100,13),(1,1,6,11,10,17),(1,1,6,11,10,40),(1,1,6,11,10,47),(1,1,6,11,10,48),(1,1,6,11,10,55),(1,1,6,11,10,56),(1,1,6,11,30,22),(1,1,6,11,40,26),(1,1,6,11,60,29),(1,1,7,10,10,2),(1,1,8,10,10,2),(1,1,9,10,10,2),(1,1,9,11,10,17),(1,1,9,11,10,40),(1,1,9,11,10,47),(1,1,9,11,10,48),(1,1,9,11,10,55),(1,1,9,11,10,56),(1,1,10,10,10,2),(1,1,11,10,10,2),(1,1,12,10,10,2),(1,1,12,10,40,9),(1,1,12,11,10,15),(1,1,12,11,40,24),(1,1,13,10,10,2),(1,1,13,10,40,9),(1,1,13,11,10,15),(1,1,13,11,40,24),(1,1,14,10,10,2),(1,1,14,10,40,9),(1,1,15,10,10,2),(1,1,15,10,40,9),(1,1,16,10,10,2),(1,1,16,10,100,13),(1,1,16,11,10,16),(1,1,16,11,10,41),(1,1,16,11,10,46),(1,1,16,11,10,49),(1,1,16,11,10,54),(1,1,16,11,10,57),(1,1,16,11,100,30),(1,1,17,10,10,2),(1,1,17,10,40,9),(1,1,17,10,60,12),(1,1,17,11,60,28),(1,1,17,11,60,29),(1,1,18,1,5,1),(1,1,18,1,5,32),(1,1,18,1,5,34),(1,1,18,10,10,2),(1,1,18,10,20,5),(1,1,18,10,40,8),(1,1,18,10,50,10),(1,1,18,10,50,11),(1,1,18,10,60,12),(1,1,18,10,100,13),(1,1,18,11,10,14),(1,1,18,11,10,15),(1,1,18,11,10,16),(1,1,18,11,10,41),(1,1,18,11,10,42),(1,1,18,11,10,43),(1,1,18,11,10,44),(1,1,18,11,10,45),(1,1,18,11,10,46),(1,1,18,11,10,49),(1,1,18,11,10,51),(1,1,18,11,10,54),(1,1,18,11,10,57),(1,1,18,11,10,58),(1,1,18,11,10,59),(1,1,18,11,10,60),(1,1,18,11,10,61),(1,1,18,11,20,18),(1,1,18,11,40,25),(1,1,18,11,40,26),(1,1,18,11,50,27),(1,1,18,11,60,28),(1,1,18,11,60,29),(1,1,18,11,100,30),(1,1,19,1,5,1),(1,1,19,1,5,32),(1,1,19,1,5,34),(1,1,19,10,10,2),(1,1,19,10,10,3),(1,1,19,10,50,11),(1,1,19,10,100,13),(1,1,19,11,10,16),(1,1,19,11,10,41),(1,1,19,11,10,46),(1,1,19,11,10,49),(1,1,19,11,10,54),(1,1,19,11,10,57),(1,1,19,11,30,22),(1,1,19,11,40,25),(1,1,19,11,50,27),(1,1,19,11,100,30),(1,1,20,1,5,1),(1,1,20,1,5,32),(1,1,20,1,5,34),(1,1,20,10,10,2),(1,1,20,10,20,5),(1,1,20,10,30,6),(1,1,20,10,60,12),(1,1,20,10,100,13),(1,1,20,11,10,16),(1,1,20,11,10,41),(1,1,20,11,10,46),(1,1,20,11,10,49),(1,1,20,11,10,54),(1,1,20,11,10,57),(1,1,20,11,20,19),(1,1,20,11,30,21),(1,1,20,11,50,27),(1,1,20,11,100,30),(1,1,21,1,5,1),(1,1,21,1,5,32),(1,1,21,1,5,34),(1,1,21,10,10,2),(1,1,21,10,60,12),(1,1,21,10,100,13),(1,1,21,11,10,16),(1,1,21,11,10,41),(1,1,21,11,10,46),(1,1,21,11,10,49),(1,1,21,11,10,54),(1,1,21,11,10,57),(1,1,21,11,20,18),(1,1,21,11,100,30),(1,1,22,10,10,2),(1,1,22,10,10,3),(1,1,22,10,20,4),(1,1,22,10,20,5),(1,1,22,10,30,6),(1,1,22,10,30,7),(1,1,22,10,40,8),(1,1,22,10,40,9),(1,1,22,10,50,10),(1,1,22,10,50,11),(1,1,22,10,60,12),(1,1,22,10,100,13),(1,1,22,11,10,14),(1,1,22,11,10,15),(1,1,22,11,10,17),(1,1,22,11,10,40),(1,1,22,11,10,42),(1,1,22,11,10,43),(1,1,22,11,10,44),(1,1,22,11,10,45),(1,1,22,11,10,47),(1,1,22,11,10,48),(1,1,22,11,10,51),(1,1,22,11,10,55),(1,1,22,11,10,56),(1,1,22,11,10,58),(1,1,22,11,10,59),(1,1,22,11,10,60),(1,1,22,11,10,61),(1,1,22,11,20,18),(1,1,22,11,20,19),(1,1,22,11,20,20),(1,1,22,11,30,21),(1,1,22,11,30,22),(1,1,22,11,30,23),(1,1,22,11,40,24),(1,1,22,11,40,25),(1,1,22,11,40,26),(1,1,22,11,50,27),(1,1,22,11,60,28),(1,1,22,11,60,29),(1,1,23,1,5,1),(1,1,23,1,5,32),(1,1,23,1,5,34),(1,1,23,10,10,2),(1,1,23,11,10,16),(1,1,23,11,10,41),(1,1,23,11,10,46),(1,1,23,11,10,49),(1,1,23,11,10,54),(1,1,23,11,10,57),(1,1,23,11,20,18),(1,1,24,10,10,2),(1,1,24,11,10,16),(1,1,24,11,10,41),(1,1,24,11,10,46),(1,1,24,11,10,49),(1,1,24,11,10,54),(1,1,24,11,10,57),(1,1,25,10,10,2),(1,1,25,11,30,22),(1,1,25,11,40,25),(1,1,25,11,100,30),(1,1,26,10,10,2),(1,1,26,11,10,16),(1,1,26,11,10,41),(1,1,26,11,10,46),(1,1,26,11,10,49),(1,1,26,11,10,54),(1,1,26,11,10,57),(1,1,27,1,5,1),(1,1,27,1,5,32),(1,1,27,1,5,34),(1,1,27,10,10,2),(1,1,27,11,10,16),(1,1,27,11,10,41),(1,1,27,11,10,46),(1,1,27,11,10,49),(1,1,27,11,10,54),(1,1,27,11,10,57),(1,1,27,11,100,30),(1,1,28,1,5,1),(1,1,28,1,5,32),(1,1,28,1,5,34),(1,1,28,10,10,2),(1,1,28,10,60,12),(1,1,28,10,100,13),(1,1,28,11,10,16),(1,1,28,11,10,41),(1,1,28,11,10,46),(1,1,28,11,10,49),(1,1,28,11,10,54),(1,1,28,11,10,57),(1,1,28,11,60,28),(1,1,28,11,60,29),(1,1,28,11,100,30),(1,1,29,1,5,1),(1,1,29,1,5,32),(1,1,29,1,5,34),(1,1,29,10,10,2),(1,1,29,10,10,3),(1,1,29,10,20,4),(1,1,29,10,20,5),(1,1,29,10,30,6),(1,1,29,10,30,7),(1,1,29,10,40,8),(1,1,29,10,40,9),(1,1,29,10,50,10),(1,1,29,10,50,11),(1,1,29,10,60,12),(1,1,29,10,100,13),(1,1,29,11,10,14),(1,1,29,11,10,15),(1,1,29,11,10,16),(1,1,29,11,10,17),(1,1,29,11,10,40),(1,1,29,11,10,41),(1,1,29,11,10,42),(1,1,29,11,10,43),(1,1,29,11,10,44),(1,1,29,11,10,45),(1,1,29,11,10,46),(1,1,29,11,10,47),(1,1,29,11,10,48),(1,1,29,11,10,49),(1,1,29,11,10,51),(1,1,29,11,10,54),(1,1,29,11,10,55),(1,1,29,11,10,56),(1,1,29,11,10,57),(1,1,29,11,10,58),(1,1,29,11,10,59),(1,1,29,11,10,60),(1,1,29,11,10,61),(1,1,29,11,20,18),(1,1,29,11,20,19),(1,1,29,11,20,20),(1,1,29,11,30,21),(1,1,29,11,30,22),(1,1,29,11,30,23),(1,1,29,11,40,24),(1,1,29,11,40,25),(1,1,29,11,40,26),(1,1,29,11,50,27),(1,1,29,11,60,28),(1,1,29,11,60,29),(1,1,29,11,100,30),(1,1,30,1,5,1),(1,1,30,1,5,32),(1,1,30,1,5,34),(1,1,30,10,10,2),(1,1,30,10,10,3),(1,1,30,10,20,4),(1,1,30,10,20,5),(1,1,30,10,30,7),(1,1,30,10,40,9),(1,1,30,10,50,10),(1,1,30,10,50,11),(1,1,30,10,100,13),(1,1,30,11,10,15),(1,1,30,11,10,16),(1,1,30,11,10,41),(1,1,30,11,10,42),(1,1,30,11,10,45),(1,1,30,11,10,46),(1,1,30,11,10,49),(1,1,30,11,10,54),(1,1,30,11,10,57),(1,1,30,11,10,58),(1,1,30,11,10,61),(1,1,30,11,30,23),(1,1,30,11,40,25),(1,1,30,11,40,26),(1,1,30,11,50,27),(1,1,30,11,100,30),(1,1,31,10,10,2),(1,1,31,10,20,5),(1,1,31,10,40,8),(1,1,31,10,100,13),(1,1,31,11,40,26),(1,1,32,10,10,2),(1,1,32,10,60,12),(1,1,32,11,30,22),(1,1,32,11,100,30),(1,1,33,10,10,2),(1,1,33,10,100,13),(1,1,33,11,10,16),(1,1,33,11,10,41),(1,1,33,11,10,46),(1,1,33,11,10,49),(1,1,33,11,10,54),(1,1,33,11,10,57),(1,1,34,10,10,2),(1,1,34,10,40,9),(1,1,34,10,60,12),(1,1,34,11,10,16),(1,1,34,11,10,41),(1,1,34,11,10,46),(1,1,34,11,10,49),(1,1,34,11,10,54),(1,1,34,11,10,57),(1,1,34,11,60,28),(1,1,34,11,60,29),(1,1,35,1,5,1),(1,1,35,1,5,32),(1,1,35,1,5,34),(1,1,35,10,10,2),(1,1,35,10,30,6),(1,1,35,10,50,11),(1,1,35,10,100,13),(1,1,35,11,10,14),(1,1,35,11,10,15),(1,1,35,11,10,16),(1,1,35,11,10,41),(1,1,35,11,10,42),(1,1,35,11,10,43),(1,1,35,11,10,44),(1,1,35,11,10,45),(1,1,35,11,10,46),(1,1,35,11,10,49),(1,1,35,11,10,51),(1,1,35,11,10,54),(1,1,35,11,10,57),(1,1,35,11,10,58),(1,1,35,11,10,59),(1,1,35,11,10,60),(1,1,35,11,10,61),(1,1,35,11,50,27),(1,1,35,11,100,30),(1,1,36,1,5,1),(1,1,36,1,5,32),(1,1,36,1,5,34),(1,1,36,10,10,2),(1,1,36,10,10,3),(1,1,36,10,20,4),(1,1,36,10,20,5),(1,1,36,10,30,6),(1,1,36,10,30,7),(1,1,36,10,40,8),(1,1,36,10,40,9),(1,1,36,10,50,10),(1,1,36,10,50,11),(1,1,36,10,60,12),(1,1,36,10,100,13),(1,1,36,11,10,14),(1,1,36,11,10,15),(1,1,36,11,10,17),(1,1,36,11,10,40),(1,1,36,11,10,42),(1,1,36,11,10,43),(1,1,36,11,10,44),(1,1,36,11,10,45),(1,1,36,11,10,47),(1,1,36,11,10,48),(1,1,36,11,10,51),(1,1,36,11,10,55),(1,1,36,11,10,56),(1,1,36,11,10,58),(1,1,36,11,10,59),(1,1,36,11,10,60),(1,1,36,11,10,61),(1,1,36,11,20,18),(1,1,36,11,20,19),(1,1,36,11,20,20),(1,1,36,11,30,21),(1,1,36,11,30,22),(1,1,36,11,30,23),(1,1,36,11,40,24),(1,1,36,11,40,25),(1,1,36,11,40,26),(1,1,36,11,50,27),(1,1,36,11,60,28),(1,1,36,11,60,29),(1,1,36,11,100,30),(1,1,37,1,5,1),(1,1,37,1,5,32),(1,1,37,1,5,34),(1,1,37,10,10,2),(1,1,37,10,20,5),(1,1,37,10,30,6),(1,1,37,10,60,12),(1,1,37,10,100,13),(1,1,37,11,10,16),(1,1,37,11,10,41),(1,1,37,11,10,46),(1,1,37,11,10,49),(1,1,37,11,10,54),(1,1,37,11,10,57),(1,1,37,11,30,21),(1,1,37,11,30,22),(1,1,37,11,40,24),(1,1,37,11,60,28),(1,1,37,11,60,29),(1,1,37,11,100,30),(1,1,38,10,10,2),(1,1,39,1,5,1),(1,1,39,1,5,32),(1,1,39,1,5,34),(1,1,39,10,10,2),(1,1,39,11,10,16),(1,1,39,11,10,41),(1,1,39,11,10,46),(1,1,39,11,10,49),(1,1,39,11,10,54),(1,1,39,11,10,57),(1,1,39,11,100,30),(1,1,40,10,10,2),(1,1,40,10,10,3),(1,1,40,10,20,4),(1,1,40,10,20,5),(1,1,40,10,30,6),(1,1,40,10,30,7),(1,1,40,10,40,8),(1,1,40,10,40,9),(1,1,40,10,50,10),(1,1,40,10,50,11),(1,1,40,10,60,12),(1,1,40,10,100,13),(1,1,40,11,10,14),(1,1,40,11,10,15),(1,1,40,11,10,17),(1,1,40,11,10,40),(1,1,40,11,10,42),(1,1,40,11,10,43),(1,1,40,11,10,44),(1,1,40,11,10,45),(1,1,40,11,10,47),(1,1,40,11,10,48),(1,1,40,11,10,51),(1,1,40,11,10,55),(1,1,40,11,10,56),(1,1,40,11,10,58),(1,1,40,11,10,59),(1,1,40,11,10,60),(1,1,40,11,10,61),(1,1,40,11,20,18),(1,1,40,11,20,19),(1,1,40,11,20,20),(1,1,40,11,30,21),(1,1,40,11,30,22),(1,1,40,11,30,23),(1,1,40,11,40,24),(1,1,40,11,40,25),(1,1,40,11,40,26),(1,1,40,11,50,27),(1,1,40,11,60,28),(1,1,40,11,60,29),(1,1,41,10,10,2),(1,1,41,10,10,3),(1,1,41,10,20,4),(1,1,41,10,20,5),(1,1,41,10,30,6),(1,1,41,10,30,7),(1,1,41,10,40,8),(1,1,41,10,40,9),(1,1,41,10,50,10),(1,1,41,10,50,11),(1,1,41,10,60,12),(1,1,41,11,10,14),(1,1,41,11,10,15),(1,1,41,11,10,17),(1,1,41,11,10,40),(1,1,41,11,10,42),(1,1,41,11,10,43),(1,1,41,11,10,44),(1,1,41,11,10,45),(1,1,41,11,10,47),(1,1,41,11,10,48),(1,1,41,11,10,51),(1,1,41,11,10,55),(1,1,41,11,10,56),(1,1,41,11,10,58),(1,1,41,11,10,59),(1,1,41,11,10,60),(1,1,41,11,10,61),(1,1,41,11,20,18),(1,1,41,11,20,19),(1,1,41,11,20,20),(1,1,41,11,30,21),(1,1,41,11,30,22),(1,1,41,11,30,23),(1,1,41,11,40,24),(1,1,41,11,40,25),(1,1,41,11,40,26),(1,1,41,11,50,27),(1,1,41,11,60,28),(1,1,41,11,60,29),(1,1,42,10,10,2),(1,1,42,10,10,3),(1,1,42,10,20,4),(1,1,42,10,20,5),(1,1,42,10,30,6),(1,1,42,10,30,7),(1,1,42,10,40,8),(1,1,42,10,40,9),(1,1,42,10,50,10),(1,1,42,10,50,11),(1,1,42,10,60,12),(1,1,42,11,10,14),(1,1,42,11,10,15),(1,1,42,11,10,17),(1,1,42,11,10,40),(1,1,42,11,10,42),(1,1,42,11,10,43),(1,1,42,11,10,44),(1,1,42,11,10,45),(1,1,42,11,10,47),(1,1,42,11,10,48),(1,1,42,11,10,51),(1,1,42,11,10,55),(1,1,42,11,10,56),(1,1,42,11,10,58),(1,1,42,11,10,59),(1,1,42,11,10,60),(1,1,42,11,10,61),(1,1,42,11,20,18),(1,1,42,11,20,19),(1,1,42,11,20,20),(1,1,42,11,30,21),(1,1,42,11,30,22),(1,1,42,11,30,23),(1,1,42,11,40,24),(1,1,42,11,40,25),(1,1,42,11,40,26),(1,1,42,11,50,27),(1,1,42,11,60,28),(1,1,42,11,60,29),(1,1,43,10,10,2),(1,1,43,10,10,3),(1,1,43,10,20,4),(1,1,43,10,20,5),(1,1,43,10,30,6),(1,1,43,10,30,7),(1,1,43,10,40,8),(1,1,43,10,40,9),(1,1,43,10,50,10),(1,1,43,10,50,11),(1,1,43,10,60,12),(1,1,43,11,10,14),(1,1,43,11,10,15),(1,1,43,11,10,17),(1,1,43,11,10,40),(1,1,43,11,10,42),(1,1,43,11,10,43),(1,1,43,11,10,44),(1,1,43,11,10,45),(1,1,43,11,10,47),(1,1,43,11,10,48),(1,1,43,11,10,51),(1,1,43,11,10,55),(1,1,43,11,10,56),(1,1,43,11,10,58),(1,1,43,11,10,59),(1,1,43,11,10,60),(1,1,43,11,10,61),(1,1,43,11,20,18),(1,1,43,11,20,19),(1,1,43,11,20,20),(1,1,43,11,30,21),(1,1,43,11,30,22),(1,1,43,11,30,23),(1,1,43,11,40,24),(1,1,43,11,40,25),(1,1,43,11,40,26),(1,1,43,11,50,27),(1,1,43,11,60,28),(1,1,43,11,60,29),(1,1,44,10,10,2),(1,1,44,10,10,3),(1,1,44,10,20,4),(1,1,44,10,20,5),(1,1,44,10,30,6),(1,1,44,10,30,7),(1,1,44,10,40,8),(1,1,44,10,40,9),(1,1,44,10,50,10),(1,1,44,10,50,11),(1,1,44,10,60,12),(1,1,44,11,10,14),(1,1,44,11,10,15),(1,1,44,11,10,17),(1,1,44,11,10,40),(1,1,44,11,10,42),(1,1,44,11,10,43),(1,1,44,11,10,44),(1,1,44,11,10,45),(1,1,44,11,10,47),(1,1,44,11,10,48),(1,1,44,11,10,51),(1,1,44,11,10,55),(1,1,44,11,10,56),(1,1,44,11,10,58),(1,1,44,11,10,59),(1,1,44,11,10,60),(1,1,44,11,10,61),(1,1,44,11,20,18),(1,1,44,11,20,19),(1,1,44,11,20,20),(1,1,44,11,30,21),(1,1,44,11,30,22),(1,1,44,11,30,23),(1,1,44,11,40,24),(1,1,44,11,40,25),(1,1,44,11,40,26),(1,1,44,11,50,27),(1,1,44,11,60,28),(1,1,44,11,60,29),(1,1,45,10,10,2),(1,1,45,10,10,3),(1,1,45,10,20,4),(1,1,45,10,20,5),(1,1,45,10,30,6),(1,1,45,10,30,7),(1,1,45,10,40,8),(1,1,45,10,40,9),(1,1,45,10,50,10),(1,1,45,10,50,11),(1,1,45,10,60,12),(1,1,45,11,10,14),(1,1,45,11,10,15),(1,1,45,11,10,17),(1,1,45,11,10,40),(1,1,45,11,10,42),(1,1,45,11,10,43),(1,1,45,11,10,44),(1,1,45,11,10,45),(1,1,45,11,10,47),(1,1,45,11,10,48),(1,1,45,11,10,51),(1,1,45,11,10,55),(1,1,45,11,10,56),(1,1,45,11,10,58),(1,1,45,11,10,59),(1,1,45,11,10,60),(1,1,45,11,10,61),(1,1,45,11,20,18),(1,1,45,11,20,19),(1,1,45,11,20,20),(1,1,45,11,30,21),(1,1,45,11,30,22),(1,1,45,11,30,23),(1,1,45,11,40,24),(1,1,45,11,40,25),(1,1,45,11,40,26),(1,1,45,11,50,27),(1,1,45,11,60,28),(1,1,45,11,60,29),(1,1,46,10,10,2),(1,1,46,10,10,3),(1,1,46,10,20,4),(1,1,46,10,20,5),(1,1,46,10,30,6),(1,1,46,10,30,7),(1,1,46,10,40,8),(1,1,46,10,40,9),(1,1,46,10,50,10),(1,1,46,10,50,11),(1,1,46,10,60,12),(1,1,46,11,10,14),(1,1,46,11,10,15),(1,1,46,11,10,17),(1,1,46,11,10,40),(1,1,46,11,10,42),(1,1,46,11,10,43),(1,1,46,11,10,44),(1,1,46,11,10,45),(1,1,46,11,10,47),(1,1,46,11,10,48),(1,1,46,11,10,51),(1,1,46,11,10,55),(1,1,46,11,10,56),(1,1,46,11,10,58),(1,1,46,11,10,59),(1,1,46,11,10,60),(1,1,46,11,10,61),(1,1,46,11,20,18),(1,1,46,11,20,19),(1,1,46,11,20,20),(1,1,46,11,30,21),(1,1,46,11,30,22),(1,1,46,11,30,23),(1,1,46,11,40,24),(1,1,46,11,40,25),(1,1,46,11,40,26),(1,1,46,11,50,27),(1,1,46,11,60,28),(1,1,46,11,60,29),(1,1,47,10,10,2),(1,1,47,10,10,3),(1,1,47,10,20,4),(1,1,47,10,20,5),(1,1,47,10,30,6),(1,1,47,10,30,7),(1,1,47,10,40,8),(1,1,47,10,40,9),(1,1,47,10,50,10),(1,1,47,10,50,11),(1,1,47,10,60,12),(1,1,47,11,10,14),(1,1,47,11,10,15),(1,1,47,11,10,17),(1,1,47,11,10,40),(1,1,47,11,10,42),(1,1,47,11,10,43),(1,1,47,11,10,44),(1,1,47,11,10,45),(1,1,47,11,10,47),(1,1,47,11,10,48),(1,1,47,11,10,51),(1,1,47,11,10,55),(1,1,47,11,10,56),(1,1,47,11,10,58),(1,1,47,11,10,59),(1,1,47,11,10,60),(1,1,47,11,10,61),(1,1,47,11,20,18),(1,1,47,11,20,19),(1,1,47,11,20,20),(1,1,47,11,30,21),(1,1,47,11,30,22),(1,1,47,11,30,23),(1,1,47,11,40,24),(1,1,47,11,40,25),(1,1,47,11,40,26),(1,1,47,11,50,27),(1,1,47,11,60,28),(1,1,47,11,60,29),(1,1,48,10,10,2),(1,1,48,10,10,3),(1,1,48,10,20,4),(1,1,48,10,20,5),(1,1,48,10,30,6),(1,1,48,10,30,7),(1,1,48,10,40,8),(1,1,48,10,40,9),(1,1,48,10,50,10),(1,1,48,10,50,11),(1,1,48,10,60,12),(1,1,48,11,10,14),(1,1,48,11,10,15),(1,1,48,11,10,17),(1,1,48,11,10,40),(1,1,48,11,10,42),(1,1,48,11,10,43),(1,1,48,11,10,44),(1,1,48,11,10,45),(1,1,48,11,10,47),(1,1,48,11,10,48),(1,1,48,11,10,51),(1,1,48,11,10,55),(1,1,48,11,10,56),(1,1,48,11,10,58),(1,1,48,11,10,59),(1,1,48,11,10,60),(1,1,48,11,10,61),(1,1,48,11,20,18),(1,1,48,11,20,19),(1,1,48,11,20,20),(1,1,48,11,30,21),(1,1,48,11,30,22),(1,1,48,11,30,23),(1,1,48,11,40,24),(1,1,48,11,40,25),(1,1,48,11,40,26),(1,1,48,11,50,27),(1,1,48,11,60,28),(1,1,48,11,60,29),(1,1,49,10,10,2),(1,1,49,10,10,3),(1,1,49,10,20,4),(1,1,49,10,20,5),(1,1,49,10,30,6),(1,1,49,10,30,7),(1,1,49,10,40,8),(1,1,49,10,40,9),(1,1,49,10,50,10),(1,1,49,10,50,11),(1,1,49,10,60,12),(1,1,49,11,10,14),(1,1,49,11,10,15),(1,1,49,11,10,17),(1,1,49,11,10,40),(1,1,49,11,10,42),(1,1,49,11,10,43),(1,1,49,11,10,44),(1,1,49,11,10,45),(1,1,49,11,10,47),(1,1,49,11,10,48),(1,1,49,11,10,51),(1,1,49,11,10,55),(1,1,49,11,10,56),(1,1,49,11,10,58),(1,1,49,11,10,59),(1,1,49,11,10,60),(1,1,49,11,10,61),(1,1,49,11,20,18),(1,1,49,11,20,19),(1,1,49,11,20,20),(1,1,49,11,30,21),(1,1,49,11,30,22),(1,1,49,11,30,23),(1,1,49,11,40,24),(1,1,49,11,40,25),(1,1,49,11,40,26),(1,1,49,11,50,27),(1,1,49,11,60,28),(1,1,49,11,60,29),(1,1,50,10,10,2),(1,1,50,10,10,3),(1,1,50,10,20,4),(1,1,50,10,20,5),(1,1,50,10,30,6),(1,1,50,10,30,7),(1,1,50,10,40,8),(1,1,50,10,40,9),(1,1,50,10,50,10),(1,1,50,10,50,11),(1,1,50,10,60,12),(1,1,50,11,10,14),(1,1,50,11,10,15),(1,1,50,11,10,17),(1,1,50,11,10,40),(1,1,50,11,10,42),(1,1,50,11,10,43),(1,1,50,11,10,44),(1,1,50,11,10,45),(1,1,50,11,10,47),(1,1,50,11,10,48),(1,1,50,11,10,51),(1,1,50,11,10,55),(1,1,50,11,10,56),(1,1,50,11,10,58),(1,1,50,11,10,59),(1,1,50,11,10,60),(1,1,50,11,10,61),(1,1,50,11,20,18),(1,1,50,11,20,19),(1,1,50,11,20,20),(1,1,50,11,30,21),(1,1,50,11,30,22),(1,1,50,11,30,23),(1,1,50,11,40,24),(1,1,50,11,40,25),(1,1,50,11,40,26),(1,1,50,11,50,27),(1,1,50,11,60,28),(1,1,50,11,60,29),(1,1,51,10,10,2),(1,1,51,10,10,3),(1,1,51,10,20,4),(1,1,51,10,20,5),(1,1,51,10,30,6),(1,1,51,10,30,7),(1,1,51,10,40,8),(1,1,51,10,40,9),(1,1,51,10,50,10),(1,1,51,10,50,11),(1,1,51,10,60,12),(1,1,51,11,10,14),(1,1,51,11,10,15),(1,1,51,11,10,17),(1,1,51,11,10,40),(1,1,51,11,10,42),(1,1,51,11,10,43),(1,1,51,11,10,44),(1,1,51,11,10,45),(1,1,51,11,10,47),(1,1,51,11,10,48),(1,1,51,11,10,51),(1,1,51,11,10,55),(1,1,51,11,10,56),(1,1,51,11,10,58),(1,1,51,11,10,59),(1,1,51,11,10,60),(1,1,51,11,10,61),(1,1,51,11,20,18),(1,1,51,11,20,19),(1,1,51,11,20,20),(1,1,51,11,30,21),(1,1,51,11,30,22),(1,1,51,11,30,23),(1,1,51,11,40,24),(1,1,51,11,40,25),(1,1,51,11,40,26),(1,1,51,11,50,27),(1,1,51,11,60,28),(1,1,51,11,60,29),(1,1,52,10,10,2),(1,1,52,10,10,3),(1,1,52,10,20,4),(1,1,52,10,20,5),(1,1,52,10,30,6),(1,1,52,10,30,7),(1,1,52,10,40,8),(1,1,52,10,40,9),(1,1,52,10,50,10),(1,1,52,10,50,11),(1,1,52,10,60,12),(1,1,52,11,10,14),(1,1,52,11,10,15),(1,1,52,11,10,17),(1,1,52,11,10,40),(1,1,52,11,10,42),(1,1,52,11,10,43),(1,1,52,11,10,44),(1,1,52,11,10,45),(1,1,52,11,10,47),(1,1,52,11,10,48),(1,1,52,11,10,51),(1,1,52,11,10,55),(1,1,52,11,10,56),(1,1,52,11,10,58),(1,1,52,11,10,59),(1,1,52,11,10,60),(1,1,52,11,10,61),(1,1,52,11,20,18),(1,1,52,11,20,19),(1,1,52,11,20,20),(1,1,52,11,30,21),(1,1,52,11,30,22),(1,1,52,11,30,23),(1,1,52,11,40,24),(1,1,52,11,40,25),(1,1,52,11,40,26),(1,1,52,11,50,27),(1,1,52,11,60,28),(1,1,52,11,60,29),(1,1,53,10,10,2),(1,1,53,10,10,3),(1,1,53,10,20,4),(1,1,53,10,20,5),(1,1,53,10,30,6),(1,1,53,10,30,7),(1,1,53,10,40,8),(1,1,53,10,40,9),(1,1,53,10,50,10),(1,1,53,10,50,11),(1,1,53,10,60,12),(1,1,53,11,10,14),(1,1,53,11,10,15),(1,1,53,11,10,17),(1,1,53,11,10,40),(1,1,53,11,10,42),(1,1,53,11,10,43),(1,1,53,11,10,44),(1,1,53,11,10,45),(1,1,53,11,10,47),(1,1,53,11,10,48),(1,1,53,11,10,51),(1,1,53,11,10,55),(1,1,53,11,10,56),(1,1,53,11,10,58),(1,1,53,11,10,59),(1,1,53,11,10,60),(1,1,53,11,10,61),(1,1,53,11,20,18),(1,1,53,11,20,19),(1,1,53,11,20,20),(1,1,53,11,30,21),(1,1,53,11,30,22),(1,1,53,11,30,23),(1,1,53,11,40,24),(1,1,53,11,40,25),(1,1,53,11,40,26),(1,1,53,11,50,27),(1,1,53,11,60,28),(1,1,53,11,60,29),(1,1,54,10,10,2),(1,1,54,10,10,3),(1,1,54,10,20,4),(1,1,54,10,20,5),(1,1,54,10,30,6),(1,1,54,10,30,7),(1,1,54,10,40,8),(1,1,54,10,40,9),(1,1,54,10,50,10),(1,1,54,10,50,11),(1,1,54,10,60,12),(1,1,54,11,10,14),(1,1,54,11,10,15),(1,1,54,11,10,17),(1,1,54,11,10,40),(1,1,54,11,10,42),(1,1,54,11,10,43),(1,1,54,11,10,44),(1,1,54,11,10,45),(1,1,54,11,10,47),(1,1,54,11,10,48),(1,1,54,11,10,51),(1,1,54,11,10,55),(1,1,54,11,10,56),(1,1,54,11,10,58),(1,1,54,11,10,59),(1,1,54,11,10,60),(1,1,54,11,10,61),(1,1,54,11,20,18),(1,1,54,11,20,19),(1,1,54,11,20,20),(1,1,54,11,30,21),(1,1,54,11,30,22),(1,1,54,11,30,23),(1,1,54,11,40,24),(1,1,54,11,40,25),(1,1,54,11,40,26),(1,1,54,11,50,27),(1,1,54,11,60,28),(1,1,54,11,60,29),(1,1,55,10,10,2),(1,1,55,10,10,3),(1,1,55,10,20,4),(1,1,55,10,20,5),(1,1,55,10,30,6),(1,1,55,10,30,7),(1,1,55,10,40,8),(1,1,55,10,40,9),(1,1,55,10,50,10),(1,1,55,10,50,11),(1,1,55,10,60,12),(1,1,55,11,10,14),(1,1,55,11,10,15),(1,1,55,11,10,17),(1,1,55,11,10,40),(1,1,55,11,10,42),(1,1,55,11,10,43),(1,1,55,11,10,44),(1,1,55,11,10,45),(1,1,55,11,10,47),(1,1,55,11,10,48),(1,1,55,11,10,51),(1,1,55,11,10,55),(1,1,55,11,10,56),(1,1,55,11,10,58),(1,1,55,11,10,59),(1,1,55,11,10,60),(1,1,55,11,10,61),(1,1,55,11,20,18),(1,1,55,11,20,19),(1,1,55,11,20,20),(1,1,55,11,30,21),(1,1,55,11,30,22),(1,1,55,11,30,23),(1,1,55,11,40,24),(1,1,55,11,40,25),(1,1,55,11,40,26),(1,1,55,11,50,27),(1,1,55,11,60,28),(1,1,55,11,60,29),(1,1,56,10,10,2),(1,1,56,10,10,3),(1,1,56,10,20,4),(1,1,56,10,20,5),(1,1,56,10,30,6),(1,1,56,10,30,7),(1,1,56,10,40,8),(1,1,56,10,40,9),(1,1,56,10,50,10),(1,1,56,10,50,11),(1,1,56,10,60,12),(1,1,56,11,10,14),(1,1,56,11,10,15),(1,1,56,11,10,17),(1,1,56,11,10,40),(1,1,56,11,10,42),(1,1,56,11,10,43),(1,1,56,11,10,44),(1,1,56,11,10,45),(1,1,56,11,10,47),(1,1,56,11,10,48),(1,1,56,11,10,51),(1,1,56,11,10,55),(1,1,56,11,10,56),(1,1,56,11,10,58),(1,1,56,11,10,59),(1,1,56,11,10,60),(1,1,56,11,10,61),(1,1,56,11,20,18),(1,1,56,11,20,19),(1,1,56,11,20,20),(1,1,56,11,30,21),(1,1,56,11,30,22),(1,1,56,11,30,23),(1,1,56,11,40,24),(1,1,56,11,40,25),(1,1,56,11,40,26),(1,1,56,11,50,27),(1,1,56,11,60,28),(1,1,56,11,60,29),(1,1,57,10,10,2),(1,1,57,10,10,3),(1,1,57,10,20,4),(1,1,57,10,20,5),(1,1,57,10,30,6),(1,1,57,10,30,7),(1,1,57,10,40,8),(1,1,57,10,40,9),(1,1,57,10,50,10),(1,1,57,10,50,11),(1,1,57,10,60,12),(1,1,57,11,10,14),(1,1,57,11,10,15),(1,1,57,11,10,17),(1,1,57,11,10,40),(1,1,57,11,10,42),(1,1,57,11,10,43),(1,1,57,11,10,44),(1,1,57,11,10,45),(1,1,57,11,10,47),(1,1,57,11,10,48),(1,1,57,11,10,51),(1,1,57,11,10,55),(1,1,57,11,10,56),(1,1,57,11,10,58),(1,1,57,11,10,59),(1,1,57,11,10,60),(1,1,57,11,10,61),(1,1,57,11,20,18),(1,1,57,11,20,19),(1,1,57,11,20,20),(1,1,57,11,30,21),(1,1,57,11,30,22),(1,1,57,11,30,23),(1,1,57,11,40,24),(1,1,57,11,40,25),(1,1,57,11,40,26),(1,1,57,11,50,27),(1,1,57,11,60,28),(1,1,57,11,60,29),(1,1,58,10,10,2),(1,1,58,10,10,3),(1,1,58,10,20,4),(1,1,58,10,20,5),(1,1,58,10,30,6),(1,1,58,10,30,7),(1,1,58,10,40,8),(1,1,58,10,40,9),(1,1,58,10,50,10),(1,1,58,10,50,11),(1,1,58,10,60,12),(1,1,58,11,10,14),(1,1,58,11,10,15),(1,1,58,11,10,17),(1,1,58,11,10,40),(1,1,58,11,10,42),(1,1,58,11,10,43),(1,1,58,11,10,44),(1,1,58,11,10,45),(1,1,58,11,10,47),(1,1,58,11,10,48),(1,1,58,11,10,51),(1,1,58,11,10,55),(1,1,58,11,10,56),(1,1,58,11,10,58),(1,1,58,11,10,59),(1,1,58,11,10,60),(1,1,58,11,10,61),(1,1,58,11,20,18),(1,1,58,11,20,19),(1,1,58,11,20,20),(1,1,58,11,30,21),(1,1,58,11,30,22),(1,1,58,11,30,23),(1,1,58,11,40,24),(1,1,58,11,40,25),(1,1,58,11,40,26),(1,1,58,11,50,27),(1,1,58,11,60,28),(1,1,58,11,60,29),(1,1,59,10,10,2),(1,1,59,10,10,3),(1,1,59,10,20,4),(1,1,59,10,20,5),(1,1,59,10,30,6),(1,1,59,10,30,7),(1,1,59,10,40,8),(1,1,59,10,40,9),(1,1,59,10,50,10),(1,1,59,10,50,11),(1,1,59,10,60,12),(1,1,59,11,10,14),(1,1,59,11,10,15),(1,1,59,11,10,17),(1,1,59,11,10,40),(1,1,59,11,10,42),(1,1,59,11,10,43),(1,1,59,11,10,44),(1,1,59,11,10,45),(1,1,59,11,10,47),(1,1,59,11,10,48),(1,1,59,11,10,51),(1,1,59,11,10,55),(1,1,59,11,10,56),(1,1,59,11,10,58),(1,1,59,11,10,59),(1,1,59,11,10,60),(1,1,59,11,10,61),(1,1,59,11,20,18),(1,1,59,11,20,19),(1,1,59,11,20,20),(1,1,59,11,30,21),(1,1,59,11,30,22),(1,1,59,11,30,23),(1,1,59,11,40,24),(1,1,59,11,40,25),(1,1,59,11,40,26),(1,1,59,11,50,27),(1,1,59,11,60,28),(1,1,59,11,60,29),(1,1,60,10,10,2),(1,1,60,10,10,3),(1,1,60,10,20,4),(1,1,60,10,20,5),(1,1,60,10,30,6),(1,1,60,10,30,7),(1,1,60,10,40,8),(1,1,60,10,40,9),(1,1,60,10,50,10),(1,1,60,10,50,11),(1,1,60,10,60,12),(1,1,60,11,10,14),(1,1,60,11,10,15),(1,1,60,11,10,17),(1,1,60,11,10,40),(1,1,60,11,10,42),(1,1,60,11,10,43),(1,1,60,11,10,44),(1,1,60,11,10,45),(1,1,60,11,10,47),(1,1,60,11,10,48),(1,1,60,11,10,51),(1,1,60,11,10,55),(1,1,60,11,10,56),(1,1,60,11,10,58),(1,1,60,11,10,59),(1,1,60,11,10,60),(1,1,60,11,10,61),(1,1,60,11,20,18),(1,1,60,11,20,19),(1,1,60,11,20,20),(1,1,60,11,30,21),(1,1,60,11,30,22),(1,1,60,11,30,23),(1,1,60,11,40,24),(1,1,60,11,40,25),(1,1,60,11,40,26),(1,1,60,11,50,27),(1,1,60,11,60,28),(1,1,60,11,60,29),(1,1,61,10,10,2),(1,1,61,10,10,3),(1,1,61,10,20,4),(1,1,61,10,20,5),(1,1,61,10,30,6),(1,1,61,10,30,7),(1,1,61,10,40,8),(1,1,61,10,40,9),(1,1,61,10,50,10),(1,1,61,10,50,11),(1,1,61,10,60,12),(1,1,61,11,10,14),(1,1,61,11,10,15),(1,1,61,11,10,17),(1,1,61,11,10,40),(1,1,61,11,10,42),(1,1,61,11,10,43),(1,1,61,11,10,44),(1,1,61,11,10,45),(1,1,61,11,10,47),(1,1,61,11,10,48),(1,1,61,11,10,51),(1,1,61,11,10,55),(1,1,61,11,10,56),(1,1,61,11,10,58),(1,1,61,11,10,59),(1,1,61,11,10,60),(1,1,61,11,10,61),(1,1,61,11,20,18),(1,1,61,11,20,19),(1,1,61,11,20,20),(1,1,61,11,30,21),(1,1,61,11,30,22),(1,1,61,11,30,23),(1,1,61,11,40,24),(1,1,61,11,40,25),(1,1,61,11,40,26),(1,1,61,11,50,27),(1,1,61,11,60,28),(1,1,61,11,60,29),(1,1,62,10,10,2),(1,1,62,10,10,3),(1,1,62,10,20,4),(1,1,62,10,20,5),(1,1,62,10,30,6),(1,1,62,10,30,7),(1,1,62,10,40,8),(1,1,62,10,40,9),(1,1,62,10,50,10),(1,1,62,10,50,11),(1,1,62,10,60,12),(1,1,62,11,10,14),(1,1,62,11,10,15),(1,1,62,11,10,17),(1,1,62,11,10,40),(1,1,62,11,10,42),(1,1,62,11,10,43),(1,1,62,11,10,44),(1,1,62,11,10,45),(1,1,62,11,10,47),(1,1,62,11,10,48),(1,1,62,11,10,51),(1,1,62,11,10,55),(1,1,62,11,10,56),(1,1,62,11,10,58),(1,1,62,11,10,59),(1,1,62,11,10,60),(1,1,62,11,10,61),(1,1,62,11,20,18),(1,1,62,11,20,19),(1,1,62,11,20,20),(1,1,62,11,30,21),(1,1,62,11,30,22),(1,1,62,11,30,23),(1,1,62,11,40,24),(1,1,62,11,40,25),(1,1,62,11,40,26),(1,1,62,11,50,27),(1,1,62,11,60,28),(1,1,62,11,60,29),(1,1,63,10,10,2),(1,1,63,10,10,3),(1,1,63,10,20,4),(1,1,63,10,20,5),(1,1,63,10,30,6),(1,1,63,10,30,7),(1,1,63,10,40,8),(1,1,63,10,40,9),(1,1,63,10,50,10),(1,1,63,10,50,11),(1,1,63,10,60,12),(1,1,63,11,10,14),(1,1,63,11,10,15),(1,1,63,11,10,17),(1,1,63,11,10,40),(1,1,63,11,10,42),(1,1,63,11,10,43),(1,1,63,11,10,44),(1,1,63,11,10,45),(1,1,63,11,10,47),(1,1,63,11,10,48),(1,1,63,11,10,51),(1,1,63,11,10,55),(1,1,63,11,10,56),(1,1,63,11,10,58),(1,1,63,11,10,59),(1,1,63,11,10,60),(1,1,63,11,10,61),(1,1,63,11,20,18),(1,1,63,11,20,19),(1,1,63,11,20,20),(1,1,63,11,30,21),(1,1,63,11,30,22),(1,1,63,11,30,23),(1,1,63,11,40,24),(1,1,63,11,40,25),(1,1,63,11,40,26),(1,1,63,11,50,27),(1,1,63,11,60,28),(1,1,63,11,60,29),(1,1,64,10,10,2),(1,1,64,10,10,3),(1,1,64,10,20,4),(1,1,64,10,20,5),(1,1,64,10,30,6),(1,1,64,10,30,7),(1,1,64,10,40,8),(1,1,64,10,40,9),(1,1,64,10,50,10),(1,1,64,10,50,11),(1,1,64,10,60,12),(1,1,64,11,10,14),(1,1,64,11,10,15),(1,1,64,11,10,17),(1,1,64,11,10,40),(1,1,64,11,10,42),(1,1,64,11,10,43),(1,1,64,11,10,44),(1,1,64,11,10,45),(1,1,64,11,10,47),(1,1,64,11,10,48),(1,1,64,11,10,51),(1,1,64,11,10,55),(1,1,64,11,10,56),(1,1,64,11,10,58),(1,1,64,11,10,59),(1,1,64,11,10,60),(1,1,64,11,10,61),(1,1,64,11,20,18),(1,1,64,11,20,19),(1,1,64,11,20,20),(1,1,64,11,30,21),(1,1,64,11,30,22),(1,1,64,11,30,23),(1,1,64,11,40,24),(1,1,64,11,40,25),(1,1,64,11,40,26),(1,1,64,11,50,27),(1,1,64,11,60,28),(1,1,64,11,60,29),(1,1,65,10,10,2),(1,1,65,10,10,3),(1,1,65,10,20,4),(1,1,65,10,20,5),(1,1,65,10,30,6),(1,1,65,10,30,7),(1,1,65,10,40,8),(1,1,65,10,40,9),(1,1,65,10,50,10),(1,1,65,10,50,11),(1,1,65,10,60,12),(1,1,65,11,10,14),(1,1,65,11,10,15),(1,1,65,11,10,17),(1,1,65,11,10,40),(1,1,65,11,10,42),(1,1,65,11,10,43),(1,1,65,11,10,44),(1,1,65,11,10,45),(1,1,65,11,10,47),(1,1,65,11,10,48),(1,1,65,11,10,51),(1,1,65,11,10,55),(1,1,65,11,10,56),(1,1,65,11,10,58),(1,1,65,11,10,59),(1,1,65,11,10,60),(1,1,65,11,10,61),(1,1,65,11,20,18),(1,1,65,11,20,19),(1,1,65,11,20,20),(1,1,65,11,30,21),(1,1,65,11,30,22),(1,1,65,11,30,23),(1,1,65,11,40,24),(1,1,65,11,40,25),(1,1,65,11,40,26),(1,1,65,11,50,27),(1,1,65,11,60,28),(1,1,65,11,60,29),(1,1,66,10,10,2),(1,1,66,10,10,3),(1,1,66,10,20,4),(1,1,66,10,20,5),(1,1,66,10,30,6),(1,1,66,10,30,7),(1,1,66,10,40,8),(1,1,66,10,40,9),(1,1,66,10,50,10),(1,1,66,10,50,11),(1,1,66,10,60,12),(1,1,66,11,10,14),(1,1,66,11,10,15),(1,1,66,11,10,17),(1,1,66,11,10,40),(1,1,66,11,10,42),(1,1,66,11,10,43),(1,1,66,11,10,44),(1,1,66,11,10,45),(1,1,66,11,10,47),(1,1,66,11,10,48),(1,1,66,11,10,51),(1,1,66,11,10,55),(1,1,66,11,10,56),(1,1,66,11,10,58),(1,1,66,11,10,59),(1,1,66,11,10,60),(1,1,66,11,10,61),(1,1,66,11,20,18),(1,1,66,11,20,19),(1,1,66,11,20,20),(1,1,66,11,30,21),(1,1,66,11,30,22),(1,1,66,11,30,23),(1,1,66,11,40,24),(1,1,66,11,40,25),(1,1,66,11,40,26),(1,1,66,11,50,27),(1,1,66,11,60,28),(1,1,66,11,60,29),(1,1,67,10,10,2),(1,1,67,10,10,3),(1,1,67,10,20,4),(1,1,67,10,20,5),(1,1,67,10,30,6),(1,1,67,10,30,7),(1,1,67,10,40,8),(1,1,67,10,40,9),(1,1,67,10,50,10),(1,1,67,10,50,11),(1,1,67,10,60,12),(1,1,67,11,10,14),(1,1,67,11,10,15),(1,1,67,11,10,17),(1,1,67,11,10,40),(1,1,67,11,10,42),(1,1,67,11,10,43),(1,1,67,11,10,44),(1,1,67,11,10,45),(1,1,67,11,10,47),(1,1,67,11,10,48),(1,1,67,11,10,51),(1,1,67,11,10,55),(1,1,67,11,10,56),(1,1,67,11,10,58),(1,1,67,11,10,59),(1,1,67,11,10,60),(1,1,67,11,10,61),(1,1,67,11,20,18),(1,1,67,11,20,19),(1,1,67,11,20,20),(1,1,67,11,30,21),(1,1,67,11,30,22),(1,1,67,11,30,23),(1,1,67,11,40,24),(1,1,67,11,40,25),(1,1,67,11,40,26),(1,1,67,11,50,27),(1,1,67,11,60,28),(1,1,67,11,60,29),(1,1,68,10,10,2),(1,1,68,10,10,3),(1,1,68,10,20,4),(1,1,68,10,20,5),(1,1,68,10,30,6),(1,1,68,10,30,7),(1,1,68,10,40,8),(1,1,68,10,40,9),(1,1,68,10,50,10),(1,1,68,10,50,11),(1,1,68,10,60,12),(1,1,68,11,10,14),(1,1,68,11,10,15),(1,1,68,11,10,17),(1,1,68,11,10,40),(1,1,68,11,10,42),(1,1,68,11,10,43),(1,1,68,11,10,44),(1,1,68,11,10,45),(1,1,68,11,10,47),(1,1,68,11,10,48),(1,1,68,11,10,51),(1,1,68,11,10,55),(1,1,68,11,10,56),(1,1,68,11,10,58),(1,1,68,11,10,59),(1,1,68,11,10,60),(1,1,68,11,10,61),(1,1,68,11,20,18),(1,1,68,11,20,19),(1,1,68,11,20,20),(1,1,68,11,30,21),(1,1,68,11,30,22),(1,1,68,11,30,23),(1,1,68,11,40,24),(1,1,68,11,40,25),(1,1,68,11,40,26),(1,1,68,11,50,27),(1,1,68,11,60,28),(1,1,68,11,60,29),(1,1,69,10,10,2),(1,1,69,10,10,3),(1,1,69,10,20,4),(1,1,69,10,20,5),(1,1,69,10,30,6),(1,1,69,10,30,7),(1,1,69,10,40,8),(1,1,69,10,40,9),(1,1,69,10,50,10),(1,1,69,10,50,11),(1,1,69,10,60,12),(1,1,69,11,10,14),(1,1,69,11,10,15),(1,1,69,11,10,17),(1,1,69,11,10,40),(1,1,69,11,10,42),(1,1,69,11,10,43),(1,1,69,11,10,44),(1,1,69,11,10,45),(1,1,69,11,10,47),(1,1,69,11,10,48),(1,1,69,11,10,51),(1,1,69,11,10,55),(1,1,69,11,10,56),(1,1,69,11,10,58),(1,1,69,11,10,59),(1,1,69,11,10,60),(1,1,69,11,10,61),(1,1,69,11,20,18),(1,1,69,11,20,19),(1,1,69,11,20,20),(1,1,69,11,30,21),(1,1,69,11,30,22),(1,1,69,11,30,23),(1,1,69,11,40,24),(1,1,69,11,40,25),(1,1,69,11,40,26),(1,1,69,11,50,27),(1,1,69,11,60,28),(1,1,69,11,60,29),(1,1,70,1,5,1),(1,1,70,1,5,32),(1,1,70,1,5,34),(1,1,70,10,10,2),(1,1,70,10,10,3),(1,1,70,10,20,4),(1,1,70,10,20,5),(1,1,70,10,30,6),(1,1,70,10,30,7),(1,1,70,10,40,8),(1,1,70,10,40,9),(1,1,70,10,50,10),(1,1,70,10,50,11),(1,1,70,10,60,12),(1,1,70,10,100,13),(1,1,70,11,10,14),(1,1,70,11,10,15),(1,1,70,11,10,16),(1,1,70,11,10,17),(1,1,70,11,10,40),(1,1,70,11,10,41),(1,1,70,11,10,42),(1,1,70,11,10,43),(1,1,70,11,10,44),(1,1,70,11,10,45),(1,1,70,11,10,46),(1,1,70,11,10,47),(1,1,70,11,10,48),(1,1,70,11,10,49),(1,1,70,11,10,51),(1,1,70,11,10,54),(1,1,70,11,10,55),(1,1,70,11,10,56),(1,1,70,11,10,57),(1,1,70,11,10,58),(1,1,70,11,10,59),(1,1,70,11,10,60),(1,1,70,11,10,61),(1,1,70,11,20,18),(1,1,70,11,20,19),(1,1,70,11,20,20),(1,1,70,11,30,21),(1,1,70,11,30,22),(1,1,70,11,30,23),(1,1,70,11,40,24),(1,1,70,11,40,25),(1,1,70,11,40,26),(1,1,70,11,50,27),(1,1,70,11,60,28),(1,1,70,11,60,29),(1,1,70,11,100,30),(1,1,71,10,10,2),(1,1,71,10,10,3),(1,1,71,10,20,4),(1,1,71,10,20,5),(1,1,71,10,30,6),(1,1,71,10,30,7),(1,1,71,10,40,8),(1,1,71,10,40,9),(1,1,71,10,50,10),(1,1,71,10,50,11),(1,1,71,10,60,12),(1,1,71,11,10,14),(1,1,71,11,10,15),(1,1,71,11,10,17),(1,1,71,11,10,40),(1,1,71,11,10,42),(1,1,71,11,10,43),(1,1,71,11,10,44),(1,1,71,11,10,45),(1,1,71,11,10,47),(1,1,71,11,10,48),(1,1,71,11,10,51),(1,1,71,11,10,55),(1,1,71,11,10,56),(1,1,71,11,10,58),(1,1,71,11,10,59),(1,1,71,11,10,60),(1,1,71,11,10,61),(1,1,71,11,20,18),(1,1,71,11,20,19),(1,1,71,11,20,20),(1,1,71,11,30,21),(1,1,71,11,30,22),(1,1,71,11,30,23),(1,1,71,11,40,24),(1,1,71,11,40,25),(1,1,71,11,40,26),(1,1,71,11,50,27),(1,1,71,11,60,28),(1,1,71,11,60,29),(1,1,72,10,10,2),(1,1,72,10,10,3),(1,1,72,10,20,4),(1,1,72,10,20,5),(1,1,72,10,30,6),(1,1,72,10,30,7),(1,1,72,10,40,8),(1,1,72,10,40,9),(1,1,72,10,50,10),(1,1,72,10,50,11),(1,1,72,10,60,12),(1,1,72,11,10,14),(1,1,72,11,10,15),(1,1,72,11,10,17),(1,1,72,11,10,40),(1,1,72,11,10,42),(1,1,72,11,10,43),(1,1,72,11,10,44),(1,1,72,11,10,45),(1,1,72,11,10,47),(1,1,72,11,10,48),(1,1,72,11,10,51),(1,1,72,11,10,55),(1,1,72,11,10,56),(1,1,72,11,10,58),(1,1,72,11,10,59),(1,1,72,11,10,60),(1,1,72,11,10,61),(1,1,72,11,20,18),(1,1,72,11,20,19),(1,1,72,11,20,20),(1,1,72,11,30,21),(1,1,72,11,30,22),(1,1,72,11,30,23),(1,1,72,11,40,24),(1,1,72,11,40,25),(1,1,72,11,40,26),(1,1,72,11,50,27),(1,1,72,11,60,28),(1,1,72,11,60,29),(1,1,73,10,10,2),(1,1,73,10,10,3),(1,1,73,10,20,4),(1,1,73,10,20,5),(1,1,73,10,30,6),(1,1,73,10,30,7),(1,1,73,10,40,8),(1,1,73,10,40,9),(1,1,73,10,50,10),(1,1,73,10,50,11),(1,1,73,10,60,12),(1,1,73,11,10,14),(1,1,73,11,10,15),(1,1,73,11,10,17),(1,1,73,11,10,40),(1,1,73,11,10,42),(1,1,73,11,10,43),(1,1,73,11,10,44),(1,1,73,11,10,45),(1,1,73,11,10,47),(1,1,73,11,10,48),(1,1,73,11,10,51),(1,1,73,11,10,55),(1,1,73,11,10,56),(1,1,73,11,10,58),(1,1,73,11,10,59),(1,1,73,11,10,60),(1,1,73,11,10,61),(1,1,73,11,20,18),(1,1,73,11,20,19),(1,1,73,11,20,20),(1,1,73,11,30,21),(1,1,73,11,30,22),(1,1,73,11,30,23),(1,1,73,11,40,24),(1,1,73,11,40,25),(1,1,73,11,40,26),(1,1,73,11,50,27),(1,1,73,11,60,28),(1,1,73,11,60,29),(1,1,74,10,10,2),(1,1,74,10,10,3),(1,1,74,10,20,4),(1,1,74,10,20,5),(1,1,74,10,30,6),(1,1,74,10,30,7),(1,1,74,10,40,8),(1,1,74,10,40,9),(1,1,74,10,50,10),(1,1,74,10,50,11),(1,1,74,10,60,12),(1,1,74,11,10,14),(1,1,74,11,10,15),(1,1,74,11,10,17),(1,1,74,11,10,40),(1,1,74,11,10,42),(1,1,74,11,10,43),(1,1,74,11,10,44),(1,1,74,11,10,45),(1,1,74,11,10,47),(1,1,74,11,10,48),(1,1,74,11,10,51),(1,1,74,11,10,55),(1,1,74,11,10,56),(1,1,74,11,10,58),(1,1,74,11,10,59),(1,1,74,11,10,60),(1,1,74,11,10,61),(1,1,74,11,20,18),(1,1,74,11,20,19),(1,1,74,11,20,20),(1,1,74,11,30,21),(1,1,74,11,30,22),(1,1,74,11,30,23),(1,1,74,11,40,24),(1,1,74,11,40,25),(1,1,74,11,40,26),(1,1,74,11,50,27),(1,1,74,11,60,28),(1,1,74,11,60,29),(1,1,75,1,5,33),(1,1,75,10,10,2),(1,1,75,10,10,3),(1,1,75,10,20,4),(1,1,75,10,20,5),(1,1,75,10,30,6),(1,1,75,10,30,7),(1,1,75,10,40,8),(1,1,75,10,40,9),(1,1,75,10,50,10),(1,1,75,10,50,11),(1,1,75,10,60,12),(1,1,75,11,10,14),(1,1,75,11,10,15),(1,1,75,11,10,17),(1,1,75,11,10,40),(1,1,75,11,10,42),(1,1,75,11,10,43),(1,1,75,11,10,44),(1,1,75,11,10,45),(1,1,75,11,10,47),(1,1,75,11,10,48),(1,1,75,11,10,51),(1,1,75,11,10,55),(1,1,75,11,10,56),(1,1,75,11,10,58),(1,1,75,11,10,59),(1,1,75,11,10,60),(1,1,75,11,10,61),(1,1,75,11,20,18),(1,1,75,11,20,19),(1,1,75,11,20,20),(1,1,75,11,30,21),(1,1,75,11,30,22),(1,1,75,11,30,23),(1,1,75,11,40,24),(1,1,75,11,40,25),(1,1,75,11,40,26),(1,1,75,11,50,27),(1,1,75,11,60,28),(1,1,75,11,60,29),(1,1,76,10,10,2),(1,1,76,10,10,3),(1,1,76,10,20,4),(1,1,76,10,20,5),(1,1,76,10,30,6),(1,1,76,10,30,7),(1,1,76,10,40,8),(1,1,76,10,40,9),(1,1,76,10,50,10),(1,1,76,10,50,11),(1,1,76,10,60,12),(1,1,76,11,10,14),(1,1,76,11,10,15),(1,1,76,11,10,17),(1,1,76,11,10,40),(1,1,76,11,10,42),(1,1,76,11,10,43),(1,1,76,11,10,44),(1,1,76,11,10,45),(1,1,76,11,10,47),(1,1,76,11,10,48),(1,1,76,11,10,51),(1,1,76,11,10,55),(1,1,76,11,10,56),(1,1,76,11,10,58),(1,1,76,11,10,59),(1,1,76,11,10,60),(1,1,76,11,10,61),(1,1,76,11,20,18),(1,1,76,11,20,19),(1,1,76,11,20,20),(1,1,76,11,30,21),(1,1,76,11,30,22),(1,1,76,11,30,23),(1,1,76,11,40,24),(1,1,76,11,40,25),(1,1,76,11,40,26),(1,1,76,11,50,27),(1,1,76,11,60,28),(1,1,76,11,60,29),(1,1,77,10,10,2),(1,1,77,10,10,3),(1,1,77,10,20,4),(1,1,77,10,20,5),(1,1,77,10,30,6),(1,1,77,10,30,7),(1,1,77,10,40,8),(1,1,77,10,40,9),(1,1,77,10,50,10),(1,1,77,10,50,11),(1,1,77,10,60,12),(1,1,77,11,10,14),(1,1,77,11,10,15),(1,1,77,11,10,17),(1,1,77,11,10,40),(1,1,77,11,10,42),(1,1,77,11,10,43),(1,1,77,11,10,44),(1,1,77,11,10,45),(1,1,77,11,10,47),(1,1,77,11,10,48),(1,1,77,11,10,51),(1,1,77,11,10,55),(1,1,77,11,10,56),(1,1,77,11,10,58),(1,1,77,11,10,59),(1,1,77,11,10,60),(1,1,77,11,10,61),(1,1,77,11,20,18),(1,1,77,11,20,19),(1,1,77,11,20,20),(1,1,77,11,30,21),(1,1,77,11,30,22),(1,1,77,11,30,23),(1,1,77,11,40,24),(1,1,77,11,40,25),(1,1,77,11,40,26),(1,1,77,11,50,27),(1,1,77,11,60,28),(1,1,77,11,60,29),(1,1,78,10,10,2),(1,1,78,10,10,3),(1,1,78,10,20,4),(1,1,78,10,20,5),(1,1,78,10,30,6),(1,1,78,10,30,7),(1,1,78,10,40,8),(1,1,78,10,40,9),(1,1,78,10,50,10),(1,1,78,10,50,11),(1,1,78,10,60,12),(1,1,78,11,10,14),(1,1,78,11,10,15),(1,1,78,11,10,17),(1,1,78,11,10,40),(1,1,78,11,10,42),(1,1,78,11,10,43),(1,1,78,11,10,44),(1,1,78,11,10,45),(1,1,78,11,10,47),(1,1,78,11,10,48),(1,1,78,11,10,51),(1,1,78,11,10,55),(1,1,78,11,10,56),(1,1,78,11,10,58),(1,1,78,11,10,59),(1,1,78,11,10,60),(1,1,78,11,10,61),(1,1,78,11,20,18),(1,1,78,11,20,19),(1,1,78,11,20,20),(1,1,78,11,30,21),(1,1,78,11,30,22),(1,1,78,11,30,23),(1,1,78,11,40,24),(1,1,78,11,40,25),(1,1,78,11,40,26),(1,1,78,11,50,27),(1,1,78,11,60,28),(1,1,78,11,60,29),(1,1,79,10,10,2),(1,1,79,10,10,3),(1,1,79,10,20,4),(1,1,79,10,20,5),(1,1,79,10,30,6),(1,1,79,10,30,7),(1,1,79,10,40,8),(1,1,79,10,40,9),(1,1,79,10,50,10),(1,1,79,10,50,11),(1,1,79,10,60,12),(1,1,79,11,10,14),(1,1,79,11,10,15),(1,1,79,11,10,17),(1,1,79,11,10,40),(1,1,79,11,10,42),(1,1,79,11,10,43),(1,1,79,11,10,44),(1,1,79,11,10,45),(1,1,79,11,10,47),(1,1,79,11,10,48),(1,1,79,11,10,51),(1,1,79,11,10,55),(1,1,79,11,10,56),(1,1,79,11,10,58),(1,1,79,11,10,59),(1,1,79,11,10,60),(1,1,79,11,10,61),(1,1,79,11,20,18),(1,1,79,11,20,19),(1,1,79,11,20,20),(1,1,79,11,30,21),(1,1,79,11,30,22),(1,1,79,11,30,23),(1,1,79,11,40,24),(1,1,79,11,40,25),(1,1,79,11,40,26),(1,1,79,11,50,27),(1,1,79,11,60,28),(1,1,79,11,60,29),(1,1,80,10,10,2),(1,1,80,10,10,3),(1,1,80,10,20,4),(1,1,80,10,20,5),(1,1,80,10,30,6),(1,1,80,10,30,7),(1,1,80,10,40,8),(1,1,80,10,40,9),(1,1,80,10,50,10),(1,1,80,10,50,11),(1,1,80,10,60,12),(1,1,80,11,10,14),(1,1,80,11,10,15),(1,1,80,11,10,17),(1,1,80,11,10,40),(1,1,80,11,10,42),(1,1,80,11,10,43),(1,1,80,11,10,44),(1,1,80,11,10,45),(1,1,80,11,10,47),(1,1,80,11,10,48),(1,1,80,11,10,51),(1,1,80,11,10,55),(1,1,80,11,10,56),(1,1,80,11,10,58),(1,1,80,11,10,59),(1,1,80,11,10,60),(1,1,80,11,10,61),(1,1,80,11,20,18),(1,1,80,11,20,19),(1,1,80,11,20,20),(1,1,80,11,30,21),(1,1,80,11,30,22),(1,1,80,11,30,23),(1,1,80,11,40,24),(1,1,80,11,40,25),(1,1,80,11,40,26),(1,1,80,11,50,27),(1,1,80,11,60,28),(1,1,80,11,60,29),(1,1,81,10,10,2),(1,1,81,10,10,3),(1,1,81,10,20,4),(1,1,81,10,20,5),(1,1,81,10,30,6),(1,1,81,10,30,7),(1,1,81,10,40,8),(1,1,81,10,40,9),(1,1,81,10,50,10),(1,1,81,10,50,11),(1,1,81,10,60,12),(1,1,81,11,10,14),(1,1,81,11,10,15),(1,1,81,11,10,17),(1,1,81,11,10,40),(1,1,81,11,10,42),(1,1,81,11,10,43),(1,1,81,11,10,44),(1,1,81,11,10,45),(1,1,81,11,10,47),(1,1,81,11,10,48),(1,1,81,11,10,51),(1,1,81,11,10,55),(1,1,81,11,10,56),(1,1,81,11,10,58),(1,1,81,11,10,59),(1,1,81,11,10,60),(1,1,81,11,10,61),(1,1,81,11,20,18),(1,1,81,11,20,19),(1,1,81,11,20,20),(1,1,81,11,30,21),(1,1,81,11,30,22),(1,1,81,11,30,23),(1,1,81,11,40,24),(1,1,81,11,40,25),(1,1,81,11,40,26),(1,1,81,11,50,27),(1,1,81,11,60,28),(1,1,81,11,60,29),(1,1,82,10,10,2),(1,1,82,10,10,3),(1,1,82,10,20,4),(1,1,82,10,20,5),(1,1,82,10,30,6),(1,1,82,10,30,7),(1,1,82,10,40,8),(1,1,82,10,40,9),(1,1,82,10,50,10),(1,1,82,10,50,11),(1,1,82,10,60,12),(1,1,82,11,10,14),(1,1,82,11,10,15),(1,1,82,11,10,17),(1,1,82,11,10,40),(1,1,82,11,10,42),(1,1,82,11,10,43),(1,1,82,11,10,44),(1,1,82,11,10,45),(1,1,82,11,10,47),(1,1,82,11,10,48),(1,1,82,11,10,51),(1,1,82,11,10,55),(1,1,82,11,10,56),(1,1,82,11,10,58),(1,1,82,11,10,59),(1,1,82,11,10,60),(1,1,82,11,10,61),(1,1,82,11,20,18),(1,1,82,11,20,19),(1,1,82,11,20,20),(1,1,82,11,30,21),(1,1,82,11,30,22),(1,1,82,11,30,23),(1,1,82,11,40,24),(1,1,82,11,40,25),(1,1,82,11,40,26),(1,1,82,11,50,27),(1,1,82,11,60,28),(1,1,82,11,60,29),(1,1,83,10,10,2),(1,1,83,10,10,3),(1,1,83,10,20,4),(1,1,83,10,20,5),(1,1,83,10,30,6),(1,1,83,10,30,7),(1,1,83,10,40,8),(1,1,83,10,40,9),(1,1,83,10,50,10),(1,1,83,10,50,11),(1,1,83,10,60,12),(1,1,83,11,10,14),(1,1,83,11,10,15),(1,1,83,11,10,17),(1,1,83,11,10,40),(1,1,83,11,10,42),(1,1,83,11,10,43),(1,1,83,11,10,44),(1,1,83,11,10,45),(1,1,83,11,10,47),(1,1,83,11,10,48),(1,1,83,11,10,51),(1,1,83,11,10,55),(1,1,83,11,10,56),(1,1,83,11,10,58),(1,1,83,11,10,59),(1,1,83,11,10,60),(1,1,83,11,10,61),(1,1,83,11,20,18),(1,1,83,11,20,19),(1,1,83,11,20,20),(1,1,83,11,30,21),(1,1,83,11,30,22),(1,1,83,11,30,23),(1,1,83,11,40,24),(1,1,83,11,40,25),(1,1,83,11,40,26),(1,1,83,11,50,27),(1,1,83,11,60,28),(1,1,83,11,60,29),(1,1,84,10,10,2),(1,1,84,10,10,3),(1,1,84,10,20,4),(1,1,84,10,20,5),(1,1,84,10,30,6),(1,1,84,10,30,7),(1,1,84,10,40,8),(1,1,84,10,40,9),(1,1,84,10,50,10),(1,1,84,10,50,11),(1,1,84,10,60,12),(1,1,84,11,10,14),(1,1,84,11,10,15),(1,1,84,11,10,17),(1,1,84,11,10,40),(1,1,84,11,10,42),(1,1,84,11,10,43),(1,1,84,11,10,44),(1,1,84,11,10,45),(1,1,84,11,10,47),(1,1,84,11,10,48),(1,1,84,11,10,51),(1,1,84,11,10,55),(1,1,84,11,10,56),(1,1,84,11,10,58),(1,1,84,11,10,59),(1,1,84,11,10,60),(1,1,84,11,10,61),(1,1,84,11,20,18),(1,1,84,11,20,19),(1,1,84,11,20,20),(1,1,84,11,30,21),(1,1,84,11,30,22),(1,1,84,11,30,23),(1,1,84,11,40,24),(1,1,84,11,40,25),(1,1,84,11,40,26),(1,1,84,11,50,27),(1,1,84,11,60,28),(1,1,84,11,60,29),(1,1,85,10,10,2),(1,1,85,10,10,3),(1,1,85,10,20,4),(1,1,85,10,20,5),(1,1,85,10,30,6),(1,1,85,10,30,7),(1,1,85,10,40,8),(1,1,85,10,40,9),(1,1,85,10,50,10),(1,1,85,10,50,11),(1,1,85,10,60,12),(1,1,85,11,10,14),(1,1,85,11,10,15),(1,1,85,11,10,17),(1,1,85,11,10,40),(1,1,85,11,10,42),(1,1,85,11,10,43),(1,1,85,11,10,44),(1,1,85,11,10,45),(1,1,85,11,10,47),(1,1,85,11,10,48),(1,1,85,11,10,51),(1,1,85,11,10,55),(1,1,85,11,10,56),(1,1,85,11,10,58),(1,1,85,11,10,59),(1,1,85,11,10,60),(1,1,85,11,10,61),(1,1,85,11,20,18),(1,1,85,11,20,19),(1,1,85,11,20,20),(1,1,85,11,30,21),(1,1,85,11,30,22),(1,1,85,11,30,23),(1,1,85,11,40,24),(1,1,85,11,40,25),(1,1,85,11,40,26),(1,1,85,11,50,27),(1,1,85,11,60,28),(1,1,85,11,60,29),(1,1,86,10,10,2),(1,1,86,10,10,3),(1,1,86,10,20,4),(1,1,86,10,20,5),(1,1,86,10,30,6),(1,1,86,10,30,7),(1,1,86,10,40,8),(1,1,86,10,40,9),(1,1,86,10,50,10),(1,1,86,10,50,11),(1,1,86,10,60,12),(1,1,86,11,10,14),(1,1,86,11,10,15),(1,1,86,11,10,17),(1,1,86,11,10,40),(1,1,86,11,10,42),(1,1,86,11,10,43),(1,1,86,11,10,44),(1,1,86,11,10,45),(1,1,86,11,10,47),(1,1,86,11,10,48),(1,1,86,11,10,51),(1,1,86,11,10,55),(1,1,86,11,10,56),(1,1,86,11,10,58),(1,1,86,11,10,59),(1,1,86,11,10,60),(1,1,86,11,10,61),(1,1,86,11,20,18),(1,1,86,11,20,19),(1,1,86,11,20,20),(1,1,86,11,30,21),(1,1,86,11,30,22),(1,1,86,11,30,23),(1,1,86,11,40,24),(1,1,86,11,40,25),(1,1,86,11,40,26),(1,1,86,11,50,27),(1,1,86,11,60,28),(1,1,86,11,60,29),(1,1,87,10,10,2),(1,1,87,10,10,3),(1,1,87,10,20,4),(1,1,87,10,20,5),(1,1,87,10,30,6),(1,1,87,10,30,7),(1,1,87,10,40,8),(1,1,87,10,40,9),(1,1,87,10,50,10),(1,1,87,10,50,11),(1,1,87,10,60,12),(1,1,87,11,10,14),(1,1,87,11,10,15),(1,1,87,11,10,17),(1,1,87,11,10,40),(1,1,87,11,10,42),(1,1,87,11,10,43),(1,1,87,11,10,44),(1,1,87,11,10,45),(1,1,87,11,10,47),(1,1,87,11,10,48),(1,1,87,11,10,51),(1,1,87,11,10,55),(1,1,87,11,10,56),(1,1,87,11,10,58),(1,1,87,11,10,59),(1,1,87,11,10,60),(1,1,87,11,10,61),(1,1,87,11,20,18),(1,1,87,11,20,19),(1,1,87,11,20,20),(1,1,87,11,30,21),(1,1,87,11,30,22),(1,1,87,11,30,23),(1,1,87,11,40,24),(1,1,87,11,40,25),(1,1,87,11,40,26),(1,1,87,11,50,27),(1,1,87,11,60,28),(1,1,87,11,60,29),(1,1,88,10,10,2),(1,1,88,10,10,3),(1,1,88,10,20,4),(1,1,88,10,20,5),(1,1,88,10,30,6),(1,1,88,10,30,7),(1,1,88,10,40,8),(1,1,88,10,40,9),(1,1,88,10,50,10),(1,1,88,10,50,11),(1,1,88,10,60,12),(1,1,88,11,10,14),(1,1,88,11,10,15),(1,1,88,11,10,17),(1,1,88,11,10,40),(1,1,88,11,10,42),(1,1,88,11,10,43),(1,1,88,11,10,44),(1,1,88,11,10,45),(1,1,88,11,10,47),(1,1,88,11,10,48),(1,1,88,11,10,51),(1,1,88,11,10,55),(1,1,88,11,10,56),(1,1,88,11,10,58),(1,1,88,11,10,59),(1,1,88,11,10,60),(1,1,88,11,10,61),(1,1,88,11,20,18),(1,1,88,11,20,19),(1,1,88,11,20,20),(1,1,88,11,30,21),(1,1,88,11,30,22),(1,1,88,11,30,23),(1,1,88,11,40,24),(1,1,88,11,40,25),(1,1,88,11,40,26),(1,1,88,11,50,27),(1,1,88,11,60,28),(1,1,88,11,60,29),(1,1,89,10,10,2),(1,1,89,10,10,3),(1,1,89,10,20,4),(1,1,89,10,20,5),(1,1,89,10,30,6),(1,1,89,10,30,7),(1,1,89,10,40,8),(1,1,89,10,40,9),(1,1,89,10,50,10),(1,1,89,10,50,11),(1,1,89,10,60,12),(1,1,89,11,10,14),(1,1,89,11,10,15),(1,1,89,11,10,17),(1,1,89,11,10,40),(1,1,89,11,10,42),(1,1,89,11,10,43),(1,1,89,11,10,44),(1,1,89,11,10,45),(1,1,89,11,10,47),(1,1,89,11,10,48),(1,1,89,11,10,51),(1,1,89,11,10,55),(1,1,89,11,10,56),(1,1,89,11,10,58),(1,1,89,11,10,59),(1,1,89,11,10,60),(1,1,89,11,10,61),(1,1,89,11,20,18),(1,1,89,11,20,19),(1,1,89,11,20,20),(1,1,89,11,30,21),(1,1,89,11,30,22),(1,1,89,11,30,23),(1,1,89,11,40,24),(1,1,89,11,40,25),(1,1,89,11,40,26),(1,1,89,11,50,27),(1,1,89,11,60,28),(1,1,89,11,60,29),(1,1,90,10,10,2),(1,1,90,10,10,3),(1,1,90,10,20,4),(1,1,90,10,20,5),(1,1,90,10,30,6),(1,1,90,10,30,7),(1,1,90,10,40,8),(1,1,90,10,40,9),(1,1,90,10,50,10),(1,1,90,10,50,11),(1,1,90,10,60,12),(1,1,90,11,10,14),(1,1,90,11,10,15),(1,1,90,11,10,17),(1,1,90,11,10,40),(1,1,90,11,10,42),(1,1,90,11,10,43),(1,1,90,11,10,44),(1,1,90,11,10,45),(1,1,90,11,10,47),(1,1,90,11,10,48),(1,1,90,11,10,51),(1,1,90,11,10,55),(1,1,90,11,10,56),(1,1,90,11,10,58),(1,1,90,11,10,59),(1,1,90,11,10,60),(1,1,90,11,10,61),(1,1,90,11,20,18),(1,1,90,11,20,19),(1,1,90,11,20,20),(1,1,90,11,30,21),(1,1,90,11,30,22),(1,1,90,11,30,23),(1,1,90,11,40,24),(1,1,90,11,40,25),(1,1,90,11,40,26),(1,1,90,11,50,27),(1,1,90,11,60,28),(1,1,90,11,60,29),(1,1,91,10,10,2),(1,1,91,10,10,3),(1,1,91,10,20,4),(1,1,91,10,20,5),(1,1,91,10,30,6),(1,1,91,10,30,7),(1,1,91,10,40,8),(1,1,91,10,40,9),(1,1,91,10,50,10),(1,1,91,10,50,11),(1,1,91,10,60,12),(1,1,91,11,10,14),(1,1,91,11,10,15),(1,1,91,11,10,17),(1,1,91,11,10,40),(1,1,91,11,10,42),(1,1,91,11,10,43),(1,1,91,11,10,44),(1,1,91,11,10,45),(1,1,91,11,10,47),(1,1,91,11,10,48),(1,1,91,11,10,51),(1,1,91,11,10,55),(1,1,91,11,10,56),(1,1,91,11,10,58),(1,1,91,11,10,59),(1,1,91,11,10,60),(1,1,91,11,10,61),(1,1,91,11,20,18),(1,1,91,11,20,19),(1,1,91,11,20,20),(1,1,91,11,30,21),(1,1,91,11,30,22),(1,1,91,11,30,23),(1,1,91,11,40,24),(1,1,91,11,40,25),(1,1,91,11,40,26),(1,1,91,11,50,27),(1,1,91,11,60,28),(1,1,91,11,60,29),(1,1,92,1,5,1),(1,1,92,1,5,32),(1,1,92,1,5,34),(1,1,92,10,10,2),(1,1,92,10,10,3),(1,1,92,10,20,4),(1,1,92,10,20,5),(1,1,92,10,30,6),(1,1,92,10,30,7),(1,1,92,10,40,8),(1,1,92,10,40,9),(1,1,92,10,50,10),(1,1,92,10,50,11),(1,1,92,10,60,12),(1,1,92,10,100,13),(1,1,92,11,10,14),(1,1,92,11,10,15),(1,1,92,11,10,16),(1,1,92,11,10,17),(1,1,92,11,10,40),(1,1,92,11,10,41),(1,1,92,11,10,42),(1,1,92,11,10,43),(1,1,92,11,10,44),(1,1,92,11,10,45),(1,1,92,11,10,46),(1,1,92,11,10,47),(1,1,92,11,10,48),(1,1,92,11,10,49),(1,1,92,11,10,51),(1,1,92,11,10,54),(1,1,92,11,10,55),(1,1,92,11,10,56),(1,1,92,11,10,57),(1,1,92,11,10,58),(1,1,92,11,10,59),(1,1,92,11,10,60),(1,1,92,11,10,61),(1,1,92,11,20,18),(1,1,92,11,20,19),(1,1,92,11,20,20),(1,1,92,11,30,21),(1,1,92,11,30,22),(1,1,92,11,30,23),(1,1,92,11,40,24),(1,1,92,11,40,25),(1,1,92,11,40,26),(1,1,92,11,50,27),(1,1,92,11,60,28),(1,1,92,11,60,29),(1,1,92,11,100,30),(1,1,93,10,10,2),(1,1,93,10,10,3),(1,1,93,10,20,4),(1,1,93,10,20,5),(1,1,93,10,30,6),(1,1,93,10,30,7),(1,1,93,10,40,8),(1,1,93,10,40,9),(1,1,93,10,50,10),(1,1,93,10,50,11),(1,1,93,10,60,12),(1,1,93,11,10,14),(1,1,93,11,10,15),(1,1,93,11,10,17),(1,1,93,11,10,40),(1,1,93,11,10,42),(1,1,93,11,10,43),(1,1,93,11,10,44),(1,1,93,11,10,45),(1,1,93,11,10,47),(1,1,93,11,10,48),(1,1,93,11,10,51),(1,1,93,11,10,55),(1,1,93,11,10,56),(1,1,93,11,10,58),(1,1,93,11,10,59),(1,1,93,11,10,60),(1,1,93,11,10,61),(1,1,93,11,20,18),(1,1,93,11,20,19),(1,1,93,11,20,20),(1,1,93,11,30,21),(1,1,93,11,30,22),(1,1,93,11,30,23),(1,1,93,11,40,24),(1,1,93,11,40,25),(1,1,93,11,40,26),(1,1,93,11,50,27),(1,1,93,11,60,28),(1,1,93,11,60,29),(1,1,94,10,10,2),(1,1,94,10,10,3),(1,1,94,10,20,4),(1,1,94,10,20,5),(1,1,94,10,30,6),(1,1,94,10,30,7),(1,1,94,10,40,8),(1,1,94,10,40,9),(1,1,94,10,50,10),(1,1,94,10,50,11),(1,1,94,10,60,12),(1,1,94,11,10,14),(1,1,94,11,10,15),(1,1,94,11,10,17),(1,1,94,11,10,40),(1,1,94,11,10,42),(1,1,94,11,10,43),(1,1,94,11,10,44),(1,1,94,11,10,45),(1,1,94,11,10,47),(1,1,94,11,10,48),(1,1,94,11,10,51),(1,1,94,11,10,55),(1,1,94,11,10,56),(1,1,94,11,10,58),(1,1,94,11,10,59),(1,1,94,11,10,60),(1,1,94,11,10,61),(1,1,94,11,20,18),(1,1,94,11,20,19),(1,1,94,11,20,20),(1,1,94,11,30,21),(1,1,94,11,30,22),(1,1,94,11,30,23),(1,1,94,11,40,24),(1,1,94,11,40,25),(1,1,94,11,40,26),(1,1,94,11,50,27),(1,1,94,11,60,28),(1,1,94,11,60,29),(1,1,95,10,10,2),(1,1,95,10,10,3),(1,1,95,10,20,4),(1,1,95,10,20,5),(1,1,95,10,30,6),(1,1,95,10,30,7),(1,1,95,10,40,8),(1,1,95,10,40,9),(1,1,95,10,50,10),(1,1,95,10,50,11),(1,1,95,10,60,12),(1,1,95,11,10,14),(1,1,95,11,10,15),(1,1,95,11,10,17),(1,1,95,11,10,40),(1,1,95,11,10,42),(1,1,95,11,10,43),(1,1,95,11,10,44),(1,1,95,11,10,45),(1,1,95,11,10,47),(1,1,95,11,10,48),(1,1,95,11,10,51),(1,1,95,11,10,55),(1,1,95,11,10,56),(1,1,95,11,10,58),(1,1,95,11,10,59),(1,1,95,11,10,60),(1,1,95,11,10,61),(1,1,95,11,20,18),(1,1,95,11,20,19),(1,1,95,11,20,20),(1,1,95,11,30,21),(1,1,95,11,30,22),(1,1,95,11,30,23),(1,1,95,11,40,24),(1,1,95,11,40,25),(1,1,95,11,40,26),(1,1,95,11,50,27),(1,1,95,11,60,28),(1,1,95,11,60,29),(1,1,96,10,10,2),(1,1,96,10,10,3),(1,1,96,10,20,4),(1,1,96,10,20,5),(1,1,96,10,30,6),(1,1,96,10,30,7),(1,1,96,10,40,8),(1,1,96,10,40,9),(1,1,96,10,50,10),(1,1,96,10,50,11),(1,1,96,10,60,12),(1,1,96,11,10,14),(1,1,96,11,10,15),(1,1,96,11,10,17),(1,1,96,11,10,40),(1,1,96,11,10,42),(1,1,96,11,10,43),(1,1,96,11,10,44),(1,1,96,11,10,45),(1,1,96,11,10,47),(1,1,96,11,10,48),(1,1,96,11,10,51),(1,1,96,11,10,55),(1,1,96,11,10,56),(1,1,96,11,10,58),(1,1,96,11,10,59),(1,1,96,11,10,60),(1,1,96,11,10,61),(1,1,96,11,20,18),(1,1,96,11,20,19),(1,1,96,11,20,20),(1,1,96,11,30,21),(1,1,96,11,30,22),(1,1,96,11,30,23),(1,1,96,11,40,24),(1,1,96,11,40,25),(1,1,96,11,40,26),(1,1,96,11,50,27),(1,1,96,11,60,28),(1,1,96,11,60,29),(1,1,97,10,10,2),(1,1,97,10,10,3),(1,1,97,10,20,4),(1,1,97,10,20,5),(1,1,97,10,30,6),(1,1,97,10,30,7),(1,1,97,10,40,8),(1,1,97,10,40,9),(1,1,97,10,50,10),(1,1,97,10,50,11),(1,1,97,10,60,12),(1,1,97,11,10,14),(1,1,97,11,10,15),(1,1,97,11,10,17),(1,1,97,11,10,40),(1,1,97,11,10,42),(1,1,97,11,10,43),(1,1,97,11,10,44),(1,1,97,11,10,45),(1,1,97,11,10,47),(1,1,97,11,10,48),(1,1,97,11,10,51),(1,1,97,11,10,55),(1,1,97,11,10,56),(1,1,97,11,10,58),(1,1,97,11,10,59),(1,1,97,11,10,60),(1,1,97,11,10,61),(1,1,97,11,20,18),(1,1,97,11,20,19),(1,1,97,11,20,20),(1,1,97,11,30,21),(1,1,97,11,30,22),(1,1,97,11,30,23),(1,1,97,11,40,24),(1,1,97,11,40,25),(1,1,97,11,40,26),(1,1,97,11,50,27),(1,1,97,11,60,28),(1,1,97,11,60,29),(1,1,98,10,10,2),(1,1,98,10,10,3),(1,1,98,10,20,4),(1,1,98,10,20,5),(1,1,98,10,30,6),(1,1,98,10,30,7),(1,1,98,10,40,8),(1,1,98,10,40,9),(1,1,98,10,50,10),(1,1,98,10,50,11),(1,1,98,10,60,12),(1,1,98,11,10,14),(1,1,98,11,10,15),(1,1,98,11,10,17),(1,1,98,11,10,40),(1,1,98,11,10,42),(1,1,98,11,10,43),(1,1,98,11,10,44),(1,1,98,11,10,45),(1,1,98,11,10,47),(1,1,98,11,10,48),(1,1,98,11,10,51),(1,1,98,11,10,55),(1,1,98,11,10,56),(1,1,98,11,10,58),(1,1,98,11,10,59),(1,1,98,11,10,60),(1,1,98,11,10,61),(1,1,98,11,20,18),(1,1,98,11,20,19),(1,1,98,11,20,20),(1,1,98,11,30,21),(1,1,98,11,30,22),(1,1,98,11,30,23),(1,1,98,11,40,24),(1,1,98,11,40,25),(1,1,98,11,40,26),(1,1,98,11,50,27),(1,1,98,11,60,28),(1,1,98,11,60,29),(1,1,99,10,10,2),(1,1,99,10,10,3),(1,1,99,10,20,4),(1,1,99,10,20,5),(1,1,99,10,30,6),(1,1,99,10,30,7),(1,1,99,10,40,8),(1,1,99,10,40,9),(1,1,99,10,50,10),(1,1,99,10,50,11),(1,1,99,10,60,12),(1,1,99,11,10,14),(1,1,99,11,10,15),(1,1,99,11,10,17),(1,1,99,11,10,40),(1,1,99,11,10,42),(1,1,99,11,10,43),(1,1,99,11,10,44),(1,1,99,11,10,45),(1,1,99,11,10,47),(1,1,99,11,10,48),(1,1,99,11,10,51),(1,1,99,11,10,55),(1,1,99,11,10,56),(1,1,99,11,10,58),(1,1,99,11,10,59),(1,1,99,11,10,60),(1,1,99,11,10,61),(1,1,99,11,20,18),(1,1,99,11,20,19),(1,1,99,11,20,20),(1,1,99,11,30,21),(1,1,99,11,30,22),(1,1,99,11,30,23),(1,1,99,11,40,24),(1,1,99,11,40,25),(1,1,99,11,40,26),(1,1,99,11,50,27),(1,1,99,11,60,28),(1,1,99,11,60,29),(1,1,100,10,10,2),(1,1,100,10,10,3),(1,1,100,10,20,4),(1,1,100,10,20,5),(1,1,100,10,30,6),(1,1,100,10,30,7),(1,1,100,10,40,8),(1,1,100,10,40,9),(1,1,100,10,50,10),(1,1,100,10,50,11),(1,1,100,10,60,12),(1,1,100,11,10,14),(1,1,100,11,10,15),(1,1,100,11,10,17),(1,1,100,11,10,40),(1,1,100,11,10,42),(1,1,100,11,10,43),(1,1,100,11,10,44),(1,1,100,11,10,45),(1,1,100,11,10,47),(1,1,100,11,10,48),(1,1,100,11,10,51),(1,1,100,11,10,55),(1,1,100,11,10,56),(1,1,100,11,10,58),(1,1,100,11,10,59),(1,1,100,11,10,60),(1,1,100,11,10,61),(1,1,100,11,20,18),(1,1,100,11,20,19),(1,1,100,11,20,20),(1,1,100,11,30,21),(1,1,100,11,30,22),(1,1,100,11,30,23),(1,1,100,11,40,24),(1,1,100,11,40,25),(1,1,100,11,40,26),(1,1,100,11,50,27),(1,1,100,11,60,28),(1,1,100,11,60,29),(1,1,101,10,10,2),(1,1,101,10,10,3),(1,1,101,10,20,4),(1,1,101,10,20,5),(1,1,101,10,30,6),(1,1,101,10,30,7),(1,1,101,10,40,8),(1,1,101,10,40,9),(1,1,101,10,50,10),(1,1,101,10,50,11),(1,1,101,10,60,12),(1,1,101,11,10,14),(1,1,101,11,10,15),(1,1,101,11,10,17),(1,1,101,11,10,40),(1,1,101,11,10,42),(1,1,101,11,10,43),(1,1,101,11,10,44),(1,1,101,11,10,45),(1,1,101,11,10,47),(1,1,101,11,10,48),(1,1,101,11,10,51),(1,1,101,11,10,55),(1,1,101,11,10,56),(1,1,101,11,10,58),(1,1,101,11,10,59),(1,1,101,11,10,60),(1,1,101,11,10,61),(1,1,101,11,20,18),(1,1,101,11,20,19),(1,1,101,11,20,20),(1,1,101,11,30,21),(1,1,101,11,30,22),(1,1,101,11,30,23),(1,1,101,11,40,24),(1,1,101,11,40,25),(1,1,101,11,40,26),(1,1,101,11,50,27),(1,1,101,11,60,28),(1,1,101,11,60,29),(1,1,102,10,10,2),(1,1,102,10,10,3),(1,1,102,10,20,4),(1,1,102,10,20,5),(1,1,102,10,30,6),(1,1,102,10,30,7),(1,1,102,10,40,8),(1,1,102,10,40,9),(1,1,102,10,50,10),(1,1,102,10,50,11),(1,1,102,10,60,12),(1,1,102,11,10,14),(1,1,102,11,10,15),(1,1,102,11,10,17),(1,1,102,11,10,40),(1,1,102,11,10,42),(1,1,102,11,10,43),(1,1,102,11,10,44),(1,1,102,11,10,45),(1,1,102,11,10,47),(1,1,102,11,10,48),(1,1,102,11,10,51),(1,1,102,11,10,55),(1,1,102,11,10,56),(1,1,102,11,10,58),(1,1,102,11,10,59),(1,1,102,11,10,60),(1,1,102,11,10,61),(1,1,102,11,20,18),(1,1,102,11,20,19),(1,1,102,11,20,20),(1,1,102,11,30,21),(1,1,102,11,30,22),(1,1,102,11,30,23),(1,1,102,11,40,24),(1,1,102,11,40,25),(1,1,102,11,40,26),(1,1,102,11,50,27),(1,1,102,11,60,28),(1,1,102,11,60,29),(1,1,103,10,10,2),(1,1,103,10,10,3),(1,1,103,10,20,4),(1,1,103,10,20,5),(1,1,103,10,30,6),(1,1,103,10,30,7),(1,1,103,10,40,8),(1,1,103,10,40,9),(1,1,103,10,50,10),(1,1,103,10,50,11),(1,1,103,10,60,12),(1,1,103,11,10,14),(1,1,103,11,10,15),(1,1,103,11,10,17),(1,1,103,11,10,40),(1,1,103,11,10,42),(1,1,103,11,10,43),(1,1,103,11,10,44),(1,1,103,11,10,45),(1,1,103,11,10,47),(1,1,103,11,10,48),(1,1,103,11,10,51),(1,1,103,11,10,55),(1,1,103,11,10,56),(1,1,103,11,10,58),(1,1,103,11,10,59),(1,1,103,11,10,60),(1,1,103,11,10,61),(1,1,103,11,20,18),(1,1,103,11,20,19),(1,1,103,11,20,20),(1,1,103,11,30,21),(1,1,103,11,30,22),(1,1,103,11,30,23),(1,1,103,11,40,24),(1,1,103,11,40,25),(1,1,103,11,40,26),(1,1,103,11,50,27),(1,1,103,11,60,28),(1,1,103,11,60,29),(1,1,104,10,10,2),(1,1,104,10,10,3),(1,1,104,10,20,4),(1,1,104,10,20,5),(1,1,104,10,30,6),(1,1,104,10,30,7),(1,1,104,10,40,8),(1,1,104,10,40,9),(1,1,104,10,50,10),(1,1,104,10,50,11),(1,1,104,10,60,12),(1,1,104,11,10,14),(1,1,104,11,10,15),(1,1,104,11,10,17),(1,1,104,11,10,40),(1,1,104,11,10,42),(1,1,104,11,10,43),(1,1,104,11,10,44),(1,1,104,11,10,45),(1,1,104,11,10,47),(1,1,104,11,10,48),(1,1,104,11,10,51),(1,1,104,11,10,55),(1,1,104,11,10,56),(1,1,104,11,10,58),(1,1,104,11,10,59),(1,1,104,11,10,60),(1,1,104,11,10,61),(1,1,104,11,20,18),(1,1,104,11,20,19),(1,1,104,11,20,20),(1,1,104,11,30,21),(1,1,104,11,30,22),(1,1,104,11,30,23),(1,1,104,11,40,24),(1,1,104,11,40,25),(1,1,104,11,40,26),(1,1,104,11,50,27),(1,1,104,11,60,28),(1,1,104,11,60,29),(1,1,105,10,10,2),(1,1,105,10,10,3),(1,1,105,10,20,4),(1,1,105,10,20,5),(1,1,105,10,30,6),(1,1,105,10,30,7),(1,1,105,10,40,8),(1,1,105,10,40,9),(1,1,105,10,50,10),(1,1,105,10,50,11),(1,1,105,10,60,12),(1,1,105,11,10,14),(1,1,105,11,10,15),(1,1,105,11,10,17),(1,1,105,11,10,40),(1,1,105,11,10,42),(1,1,105,11,10,43),(1,1,105,11,10,44),(1,1,105,11,10,45),(1,1,105,11,10,47),(1,1,105,11,10,48),(1,1,105,11,10,51),(1,1,105,11,10,55),(1,1,105,11,10,56),(1,1,105,11,10,58),(1,1,105,11,10,59),(1,1,105,11,10,60),(1,1,105,11,10,61),(1,1,105,11,20,18),(1,1,105,11,20,19),(1,1,105,11,20,20),(1,1,105,11,30,21),(1,1,105,11,30,22),(1,1,105,11,30,23),(1,1,105,11,40,24),(1,1,105,11,40,25),(1,1,105,11,40,26),(1,1,105,11,50,27),(1,1,105,11,60,28),(1,1,105,11,60,29),(1,1,106,10,10,2),(1,1,106,10,10,3),(1,1,106,10,20,4),(1,1,106,10,20,5),(1,1,106,10,30,6),(1,1,106,10,30,7),(1,1,106,10,40,8),(1,1,106,10,40,9),(1,1,106,10,50,10),(1,1,106,10,50,11),(1,1,106,10,60,12),(1,1,106,11,10,14),(1,1,106,11,10,15),(1,1,106,11,10,17),(1,1,106,11,10,40),(1,1,106,11,10,42),(1,1,106,11,10,43),(1,1,106,11,10,44),(1,1,106,11,10,45),(1,1,106,11,10,47),(1,1,106,11,10,48),(1,1,106,11,10,51),(1,1,106,11,10,55),(1,1,106,11,10,56),(1,1,106,11,10,58),(1,1,106,11,10,59),(1,1,106,11,10,60),(1,1,106,11,10,61),(1,1,106,11,20,18),(1,1,106,11,20,19),(1,1,106,11,20,20),(1,1,106,11,30,21),(1,1,106,11,30,22),(1,1,106,11,30,23),(1,1,106,11,40,24),(1,1,106,11,40,25),(1,1,106,11,40,26),(1,1,106,11,50,27),(1,1,106,11,60,28),(1,1,106,11,60,29),(1,1,107,10,10,2),(1,1,107,10,10,3),(1,1,107,10,20,4),(1,1,107,10,20,5),(1,1,107,10,30,6),(1,1,107,10,30,7),(1,1,107,10,40,8),(1,1,107,10,40,9),(1,1,107,10,50,10),(1,1,107,10,50,11),(1,1,107,10,60,12),(1,1,107,11,10,14),(1,1,107,11,10,15),(1,1,107,11,10,17),(1,1,107,11,10,40),(1,1,107,11,10,42),(1,1,107,11,10,43),(1,1,107,11,10,44),(1,1,107,11,10,45),(1,1,107,11,10,47),(1,1,107,11,10,48),(1,1,107,11,10,51),(1,1,107,11,10,55),(1,1,107,11,10,56),(1,1,107,11,10,58),(1,1,107,11,10,59),(1,1,107,11,10,60),(1,1,107,11,10,61),(1,1,107,11,20,18),(1,1,107,11,20,19),(1,1,107,11,20,20),(1,1,107,11,30,21),(1,1,107,11,30,22),(1,1,107,11,30,23),(1,1,107,11,40,24),(1,1,107,11,40,25),(1,1,107,11,40,26),(1,1,107,11,50,27),(1,1,107,11,60,28),(1,1,107,11,60,29),(1,1,108,10,10,2),(1,1,108,10,10,3),(1,1,108,10,20,4),(1,1,108,10,20,5),(1,1,108,10,30,6),(1,1,108,10,30,7),(1,1,108,10,40,8),(1,1,108,10,40,9),(1,1,108,10,50,10),(1,1,108,10,50,11),(1,1,108,10,60,12),(1,1,108,11,10,14),(1,1,108,11,10,15),(1,1,108,11,10,17),(1,1,108,11,10,40),(1,1,108,11,10,42),(1,1,108,11,10,43),(1,1,108,11,10,44),(1,1,108,11,10,45),(1,1,108,11,10,47),(1,1,108,11,10,48),(1,1,108,11,10,51),(1,1,108,11,10,55),(1,1,108,11,10,56),(1,1,108,11,10,58),(1,1,108,11,10,59),(1,1,108,11,10,60),(1,1,108,11,10,61),(1,1,108,11,20,18),(1,1,108,11,20,19),(1,1,108,11,20,20),(1,1,108,11,30,21),(1,1,108,11,30,22),(1,1,108,11,30,23),(1,1,108,11,40,24),(1,1,108,11,40,25),(1,1,108,11,40,26),(1,1,108,11,50,27),(1,1,108,11,60,28),(1,1,108,11,60,29),(1,1,109,10,10,2),(1,1,109,10,10,3),(1,1,109,10,20,4),(1,1,109,10,20,5),(1,1,109,10,30,6),(1,1,109,10,30,7),(1,1,109,10,40,8),(1,1,109,10,40,9),(1,1,109,10,50,10),(1,1,109,10,50,11),(1,1,109,10,60,12),(1,1,109,11,10,14),(1,1,109,11,10,15),(1,1,109,11,10,17),(1,1,109,11,10,40),(1,1,109,11,10,42),(1,1,109,11,10,43),(1,1,109,11,10,44),(1,1,109,11,10,45),(1,1,109,11,10,47),(1,1,109,11,10,48),(1,1,109,11,10,51),(1,1,109,11,10,55),(1,1,109,11,10,56),(1,1,109,11,10,58),(1,1,109,11,10,59),(1,1,109,11,10,60),(1,1,109,11,10,61),(1,1,109,11,20,18),(1,1,109,11,20,19),(1,1,109,11,20,20),(1,1,109,11,30,21),(1,1,109,11,30,22),(1,1,109,11,30,23),(1,1,109,11,40,24),(1,1,109,11,40,25),(1,1,109,11,40,26),(1,1,109,11,50,27),(1,1,109,11,60,28),(1,1,109,11,60,29),(1,1,110,10,10,2),(1,1,110,10,10,3),(1,1,110,10,20,4),(1,1,110,10,20,5),(1,1,110,10,30,6),(1,1,110,10,30,7),(1,1,110,10,40,8),(1,1,110,10,40,9),(1,1,110,10,50,10),(1,1,110,10,50,11),(1,1,110,10,60,12),(1,1,110,11,10,14),(1,1,110,11,10,15),(1,1,110,11,10,17),(1,1,110,11,10,40),(1,1,110,11,10,42),(1,1,110,11,10,43),(1,1,110,11,10,44),(1,1,110,11,10,45),(1,1,110,11,10,47),(1,1,110,11,10,48),(1,1,110,11,10,51),(1,1,110,11,10,55),(1,1,110,11,10,56),(1,1,110,11,10,58),(1,1,110,11,10,59),(1,1,110,11,10,60),(1,1,110,11,10,61),(1,1,110,11,20,18),(1,1,110,11,20,19),(1,1,110,11,20,20),(1,1,110,11,30,21),(1,1,110,11,30,22),(1,1,110,11,30,23),(1,1,110,11,40,24),(1,1,110,11,40,25),(1,1,110,11,40,26),(1,1,110,11,50,27),(1,1,110,11,60,28),(1,1,110,11,60,29),(1,1,111,10,10,2),(1,1,111,10,10,3),(1,1,111,10,20,4),(1,1,111,10,20,5),(1,1,111,10,30,6),(1,1,111,10,30,7),(1,1,111,10,40,8),(1,1,111,10,40,9),(1,1,111,10,50,10),(1,1,111,10,50,11),(1,1,111,10,60,12),(1,1,111,11,10,14),(1,1,111,11,10,15),(1,1,111,11,10,17),(1,1,111,11,10,40),(1,1,111,11,10,42),(1,1,111,11,10,43),(1,1,111,11,10,44),(1,1,111,11,10,45),(1,1,111,11,10,47),(1,1,111,11,10,48),(1,1,111,11,10,51),(1,1,111,11,10,55),(1,1,111,11,10,56),(1,1,111,11,10,58),(1,1,111,11,10,59),(1,1,111,11,10,60),(1,1,111,11,10,61),(1,1,111,11,20,18),(1,1,111,11,20,19),(1,1,111,11,20,20),(1,1,111,11,30,21),(1,1,111,11,30,22),(1,1,111,11,30,23),(1,1,111,11,40,24),(1,1,111,11,40,25),(1,1,111,11,40,26),(1,1,111,11,50,27),(1,1,111,11,60,28),(1,1,111,11,60,29),(1,1,112,10,10,2),(1,1,112,10,10,3),(1,1,112,10,20,4),(1,1,112,10,20,5),(1,1,112,10,30,6),(1,1,112,10,30,7),(1,1,112,10,40,8),(1,1,112,10,40,9),(1,1,112,10,50,10),(1,1,112,10,50,11),(1,1,112,10,60,12),(1,1,112,11,10,14),(1,1,112,11,10,15),(1,1,112,11,10,17),(1,1,112,11,10,40),(1,1,112,11,10,42),(1,1,112,11,10,43),(1,1,112,11,10,44),(1,1,112,11,10,45),(1,1,112,11,10,47),(1,1,112,11,10,48),(1,1,112,11,10,51),(1,1,112,11,10,55),(1,1,112,11,10,56),(1,1,112,11,10,58),(1,1,112,11,10,59),(1,1,112,11,10,60),(1,1,112,11,10,61),(1,1,112,11,20,18),(1,1,112,11,20,19),(1,1,112,11,20,20),(1,1,112,11,30,21),(1,1,112,11,30,22),(1,1,112,11,30,23),(1,1,112,11,40,24),(1,1,112,11,40,25),(1,1,112,11,40,26),(1,1,112,11,50,27),(1,1,112,11,60,28),(1,1,112,11,60,29),(1,1,113,10,10,2),(1,1,113,10,10,3),(1,1,113,10,20,4),(1,1,113,10,20,5),(1,1,113,10,30,6),(1,1,113,10,30,7),(1,1,113,10,40,8),(1,1,113,10,40,9),(1,1,113,10,50,10),(1,1,113,10,50,11),(1,1,113,10,60,12),(1,1,113,11,10,14),(1,1,113,11,10,15),(1,1,113,11,10,17),(1,1,113,11,10,40),(1,1,113,11,10,42),(1,1,113,11,10,43),(1,1,113,11,10,44),(1,1,113,11,10,45),(1,1,113,11,10,47),(1,1,113,11,10,48),(1,1,113,11,10,51),(1,1,113,11,10,55),(1,1,113,11,10,56),(1,1,113,11,10,58),(1,1,113,11,10,59),(1,1,113,11,10,60),(1,1,113,11,10,61),(1,1,113,11,20,18),(1,1,113,11,20,19),(1,1,113,11,20,20),(1,1,113,11,30,21),(1,1,113,11,30,22),(1,1,113,11,30,23),(1,1,113,11,40,24),(1,1,113,11,40,25),(1,1,113,11,40,26),(1,1,113,11,50,27),(1,1,113,11,60,28),(1,1,113,11,60,29),(1,1,114,1,5,33),(1,1,114,1,5,34),(1,1,114,10,10,2),(1,1,114,10,10,3),(1,1,114,10,20,4),(1,1,114,10,20,5),(1,1,114,10,30,6),(1,1,114,10,30,7),(1,1,114,10,40,8),(1,1,114,10,40,9),(1,1,114,10,50,10),(1,1,114,10,50,11),(1,1,114,10,60,12),(1,1,114,11,10,14),(1,1,114,11,10,15),(1,1,114,11,10,17),(1,1,114,11,10,40),(1,1,114,11,10,42),(1,1,114,11,10,43),(1,1,114,11,10,44),(1,1,114,11,10,45),(1,1,114,11,10,47),(1,1,114,11,10,48),(1,1,114,11,10,51),(1,1,114,11,10,55),(1,1,114,11,10,56),(1,1,114,11,10,58),(1,1,114,11,10,59),(1,1,114,11,10,60),(1,1,114,11,10,61),(1,1,114,11,20,18),(1,1,114,11,20,19),(1,1,114,11,20,20),(1,1,114,11,30,21),(1,1,114,11,30,22),(1,1,114,11,30,23),(1,1,114,11,40,24),(1,1,114,11,40,25),(1,1,114,11,40,26),(1,1,114,11,50,27),(1,1,114,11,60,28),(1,1,114,11,60,29),(1,1,115,10,10,2),(1,1,115,10,10,3),(1,1,115,10,20,4),(1,1,115,10,20,5),(1,1,115,10,30,6),(1,1,115,10,30,7),(1,1,115,10,40,8),(1,1,115,10,40,9),(1,1,115,10,50,10),(1,1,115,10,50,11),(1,1,115,10,60,12),(1,1,115,11,10,14),(1,1,115,11,10,15),(1,1,115,11,10,17),(1,1,115,11,10,40),(1,1,115,11,10,42),(1,1,115,11,10,43),(1,1,115,11,10,44),(1,1,115,11,10,45),(1,1,115,11,10,47),(1,1,115,11,10,48),(1,1,115,11,10,51),(1,1,115,11,10,55),(1,1,115,11,10,56),(1,1,115,11,10,58),(1,1,115,11,10,59),(1,1,115,11,10,60),(1,1,115,11,10,61),(1,1,115,11,20,18),(1,1,115,11,20,19),(1,1,115,11,20,20),(1,1,115,11,30,21),(1,1,115,11,30,22),(1,1,115,11,30,23),(1,1,115,11,40,24),(1,1,115,11,40,25),(1,1,115,11,40,26),(1,1,115,11,50,27),(1,1,115,11,60,28),(1,1,115,11,60,29),(1,1,116,10,10,2),(1,1,116,10,10,3),(1,1,116,10,20,4),(1,1,116,10,20,5),(1,1,116,10,30,6),(1,1,116,10,30,7),(1,1,116,10,40,8),(1,1,116,10,40,9),(1,1,116,10,50,10),(1,1,116,10,50,11),(1,1,116,10,60,12),(1,1,116,11,10,14),(1,1,116,11,10,15),(1,1,116,11,10,17),(1,1,116,11,10,40),(1,1,116,11,10,42),(1,1,116,11,10,43),(1,1,116,11,10,44),(1,1,116,11,10,45),(1,1,116,11,10,47),(1,1,116,11,10,48),(1,1,116,11,10,51),(1,1,116,11,10,55),(1,1,116,11,10,56),(1,1,116,11,10,58),(1,1,116,11,10,59),(1,1,116,11,10,60),(1,1,116,11,10,61),(1,1,116,11,20,18),(1,1,116,11,20,19),(1,1,116,11,20,20),(1,1,116,11,30,21),(1,1,116,11,30,22),(1,1,116,11,30,23),(1,1,116,11,40,24),(1,1,116,11,40,25),(1,1,116,11,40,26),(1,1,116,11,50,27),(1,1,116,11,60,28),(1,1,116,11,60,29),(1,1,117,10,10,2),(1,1,117,10,10,3),(1,1,117,10,20,4),(1,1,117,10,20,5),(1,1,117,10,30,6),(1,1,117,10,30,7),(1,1,117,10,40,8),(1,1,117,10,40,9),(1,1,117,10,50,10),(1,1,117,10,50,11),(1,1,117,10,60,12),(1,1,117,11,10,14),(1,1,117,11,10,15),(1,1,117,11,10,17),(1,1,117,11,10,40),(1,1,117,11,10,42),(1,1,117,11,10,43),(1,1,117,11,10,44),(1,1,117,11,10,45),(1,1,117,11,10,47),(1,1,117,11,10,48),(1,1,117,11,10,51),(1,1,117,11,10,55),(1,1,117,11,10,56),(1,1,117,11,10,58),(1,1,117,11,10,59),(1,1,117,11,10,60),(1,1,117,11,10,61),(1,1,117,11,20,18),(1,1,117,11,20,19),(1,1,117,11,20,20),(1,1,117,11,30,21),(1,1,117,11,30,22),(1,1,117,11,30,23),(1,1,117,11,40,24),(1,1,117,11,40,25),(1,1,117,11,40,26),(1,1,117,11,50,27),(1,1,117,11,60,28),(1,1,117,11,60,29),(1,1,118,10,10,2),(1,1,118,10,10,3),(1,1,118,10,20,4),(1,1,118,10,20,5),(1,1,118,10,30,6),(1,1,118,10,30,7),(1,1,118,10,40,8),(1,1,118,10,40,9),(1,1,118,10,50,10),(1,1,118,10,50,11),(1,1,118,10,60,12),(1,1,118,11,10,14),(1,1,118,11,10,15),(1,1,118,11,10,17),(1,1,118,11,10,40),(1,1,118,11,10,42),(1,1,118,11,10,43),(1,1,118,11,10,44),(1,1,118,11,10,45),(1,1,118,11,10,47),(1,1,118,11,10,48),(1,1,118,11,10,51),(1,1,118,11,10,55),(1,1,118,11,10,56),(1,1,118,11,10,58),(1,1,118,11,10,59),(1,1,118,11,10,60),(1,1,118,11,10,61),(1,1,118,11,20,18),(1,1,118,11,20,19),(1,1,118,11,20,20),(1,1,118,11,30,21),(1,1,118,11,30,22),(1,1,118,11,30,23),(1,1,118,11,40,24),(1,1,118,11,40,25),(1,1,118,11,40,26),(1,1,118,11,50,27),(1,1,118,11,60,28),(1,1,118,11,60,29),(1,1,119,10,10,2),(1,1,119,10,10,3),(1,1,119,10,20,4),(1,1,119,10,20,5),(1,1,119,10,30,6),(1,1,119,10,30,7),(1,1,119,10,40,8),(1,1,119,10,40,9),(1,1,119,10,50,10),(1,1,119,10,50,11),(1,1,119,10,60,12),(1,1,119,11,10,14),(1,1,119,11,10,15),(1,1,119,11,10,17),(1,1,119,11,10,40),(1,1,119,11,10,42),(1,1,119,11,10,43),(1,1,119,11,10,44),(1,1,119,11,10,45),(1,1,119,11,10,47),(1,1,119,11,10,48),(1,1,119,11,10,51),(1,1,119,11,10,55),(1,1,119,11,10,56),(1,1,119,11,10,58),(1,1,119,11,10,59),(1,1,119,11,10,60),(1,1,119,11,10,61),(1,1,119,11,20,18),(1,1,119,11,20,19),(1,1,119,11,20,20),(1,1,119,11,30,21),(1,1,119,11,30,22),(1,1,119,11,30,23),(1,1,119,11,40,24),(1,1,119,11,40,25),(1,1,119,11,40,26),(1,1,119,11,50,27),(1,1,119,11,60,28),(1,1,119,11,60,29),(1,1,120,10,10,2),(1,1,120,10,10,3),(1,1,120,10,20,4),(1,1,120,10,20,5),(1,1,120,10,30,6),(1,1,120,10,30,7),(1,1,120,10,40,8),(1,1,120,10,40,9),(1,1,120,10,50,10),(1,1,120,10,50,11),(1,1,120,10,60,12),(1,1,120,11,10,14),(1,1,120,11,10,15),(1,1,120,11,10,17),(1,1,120,11,10,40),(1,1,120,11,10,42),(1,1,120,11,10,43),(1,1,120,11,10,44),(1,1,120,11,10,45),(1,1,120,11,10,47),(1,1,120,11,10,48),(1,1,120,11,10,51),(1,1,120,11,10,55),(1,1,120,11,10,56),(1,1,120,11,10,58),(1,1,120,11,10,59),(1,1,120,11,10,60),(1,1,120,11,10,61),(1,1,120,11,20,18),(1,1,120,11,20,19),(1,1,120,11,20,20),(1,1,120,11,30,21),(1,1,120,11,30,22),(1,1,120,11,30,23),(1,1,120,11,40,24),(1,1,120,11,40,25),(1,1,120,11,40,26),(1,1,120,11,50,27),(1,1,120,11,60,28),(1,1,120,11,60,29),(1,1,121,10,10,2),(1,1,121,10,10,3),(1,1,121,10,20,4),(1,1,121,10,20,5),(1,1,121,10,30,6),(1,1,121,10,30,7),(1,1,121,10,40,8),(1,1,121,10,40,9),(1,1,121,10,50,10),(1,1,121,10,50,11),(1,1,121,10,60,12),(1,1,121,11,10,14),(1,1,121,11,10,15),(1,1,121,11,10,17),(1,1,121,11,10,40),(1,1,121,11,10,42),(1,1,121,11,10,43),(1,1,121,11,10,44),(1,1,121,11,10,45),(1,1,121,11,10,47),(1,1,121,11,10,48),(1,1,121,11,10,51),(1,1,121,11,10,55),(1,1,121,11,10,56),(1,1,121,11,10,58),(1,1,121,11,10,59),(1,1,121,11,10,60),(1,1,121,11,10,61),(1,1,121,11,20,18),(1,1,121,11,20,19),(1,1,121,11,20,20),(1,1,121,11,30,21),(1,1,121,11,30,22),(1,1,121,11,30,23),(1,1,121,11,40,24),(1,1,121,11,40,25),(1,1,121,11,40,26),(1,1,121,11,50,27),(1,1,121,11,60,28),(1,1,121,11,60,29),(1,1,122,10,10,2),(1,1,122,10,10,3),(1,1,122,10,20,4),(1,1,122,10,20,5),(1,1,122,10,30,6),(1,1,122,10,30,7),(1,1,122,10,40,8),(1,1,122,10,40,9),(1,1,122,10,50,10),(1,1,122,10,50,11),(1,1,122,10,60,12),(1,1,122,11,10,14),(1,1,122,11,10,15),(1,1,122,11,10,17),(1,1,122,11,10,40),(1,1,122,11,10,42),(1,1,122,11,10,43),(1,1,122,11,10,44),(1,1,122,11,10,45),(1,1,122,11,10,47),(1,1,122,11,10,48),(1,1,122,11,10,51),(1,1,122,11,10,55),(1,1,122,11,10,56),(1,1,122,11,10,58),(1,1,122,11,10,59),(1,1,122,11,10,60),(1,1,122,11,10,61),(1,1,122,11,20,18),(1,1,122,11,20,19),(1,1,122,11,20,20),(1,1,122,11,30,21),(1,1,122,11,30,22),(1,1,122,11,30,23),(1,1,122,11,40,24),(1,1,122,11,40,25),(1,1,122,11,40,26),(1,1,122,11,50,27),(1,1,122,11,60,28),(1,1,122,11,60,29),(1,1,123,1,5,1),(1,1,123,1,5,32),(1,1,123,1,5,34),(1,1,123,10,10,2),(1,1,123,10,10,3),(1,1,123,10,20,4),(1,1,123,10,20,5),(1,1,123,10,30,6),(1,1,123,10,30,7),(1,1,123,10,40,8),(1,1,123,10,40,9),(1,1,123,10,50,10),(1,1,123,10,50,11),(1,1,123,10,60,12),(1,1,123,10,100,13),(1,1,123,11,10,14),(1,1,123,11,10,15),(1,1,123,11,10,16),(1,1,123,11,10,17),(1,1,123,11,10,40),(1,1,123,11,10,41),(1,1,123,11,10,42),(1,1,123,11,10,43),(1,1,123,11,10,44),(1,1,123,11,10,45),(1,1,123,11,10,46),(1,1,123,11,10,47),(1,1,123,11,10,48),(1,1,123,11,10,49),(1,1,123,11,10,51),(1,1,123,11,10,54),(1,1,123,11,10,55),(1,1,123,11,10,56),(1,1,123,11,10,57),(1,1,123,11,10,58),(1,1,123,11,10,59),(1,1,123,11,10,60),(1,1,123,11,10,61),(1,1,123,11,20,18),(1,1,123,11,20,19),(1,1,123,11,20,20),(1,1,123,11,30,21),(1,1,123,11,30,22),(1,1,123,11,30,23),(1,1,123,11,40,24),(1,1,123,11,40,25),(1,1,123,11,40,26),(1,1,123,11,50,27),(1,1,123,11,60,28),(1,1,123,11,60,29),(1,1,123,11,100,30),(1,1,124,10,10,2),(1,1,124,10,10,3),(1,1,124,10,20,4),(1,1,124,10,20,5),(1,1,124,10,30,6),(1,1,124,10,30,7),(1,1,124,10,40,8),(1,1,124,10,40,9),(1,1,124,10,50,10),(1,1,124,10,50,11),(1,1,124,10,60,12),(1,1,124,11,10,14),(1,1,124,11,10,15),(1,1,124,11,10,17),(1,1,124,11,10,40),(1,1,124,11,10,42),(1,1,124,11,10,43),(1,1,124,11,10,44),(1,1,124,11,10,45),(1,1,124,11,10,47),(1,1,124,11,10,48),(1,1,124,11,10,51),(1,1,124,11,10,55),(1,1,124,11,10,56),(1,1,124,11,10,58),(1,1,124,11,10,59),(1,1,124,11,10,60),(1,1,124,11,10,61),(1,1,124,11,20,18),(1,1,124,11,20,19),(1,1,124,11,20,20),(1,1,124,11,30,21),(1,1,124,11,30,22),(1,1,124,11,30,23),(1,1,124,11,40,24),(1,1,124,11,40,25),(1,1,124,11,40,26),(1,1,124,11,50,27),(1,1,124,11,60,28),(1,1,124,11,60,29),(1,1,125,10,10,2),(1,1,125,10,10,3),(1,1,125,10,20,4),(1,1,125,10,20,5),(1,1,125,10,30,6),(1,1,125,10,30,7),(1,1,125,10,40,8),(1,1,125,10,40,9),(1,1,125,10,50,10),(1,1,125,10,50,11),(1,1,125,10,60,12),(1,1,125,11,10,14),(1,1,125,11,10,15),(1,1,125,11,10,17),(1,1,125,11,10,40),(1,1,125,11,10,42),(1,1,125,11,10,43),(1,1,125,11,10,44),(1,1,125,11,10,45),(1,1,125,11,10,47),(1,1,125,11,10,48),(1,1,125,11,10,51),(1,1,125,11,10,55),(1,1,125,11,10,56),(1,1,125,11,10,58),(1,1,125,11,10,59),(1,1,125,11,10,60),(1,1,125,11,10,61),(1,1,125,11,20,18),(1,1,125,11,20,19),(1,1,125,11,20,20),(1,1,125,11,30,21),(1,1,125,11,30,22),(1,1,125,11,30,23),(1,1,125,11,40,24),(1,1,125,11,40,25),(1,1,125,11,40,26),(1,1,125,11,50,27),(1,1,125,11,60,28),(1,1,125,11,60,29),(1,1,126,10,10,2),(1,1,126,10,10,3),(1,1,126,10,20,4),(1,1,126,10,20,5),(1,1,126,10,30,6),(1,1,126,10,30,7),(1,1,126,10,40,8),(1,1,126,10,40,9),(1,1,126,10,50,10),(1,1,126,10,50,11),(1,1,126,10,60,12),(1,1,126,11,10,14),(1,1,126,11,10,15),(1,1,126,11,10,17),(1,1,126,11,10,40),(1,1,126,11,10,42),(1,1,126,11,10,43),(1,1,126,11,10,44),(1,1,126,11,10,45),(1,1,126,11,10,47),(1,1,126,11,10,48),(1,1,126,11,10,51),(1,1,126,11,10,55),(1,1,126,11,10,56),(1,1,126,11,10,58),(1,1,126,11,10,59),(1,1,126,11,10,60),(1,1,126,11,10,61),(1,1,126,11,20,18),(1,1,126,11,20,19),(1,1,126,11,20,20),(1,1,126,11,30,21),(1,1,126,11,30,22),(1,1,126,11,30,23),(1,1,126,11,40,24),(1,1,126,11,40,25),(1,1,126,11,40,26),(1,1,126,11,50,27),(1,1,126,11,60,28),(1,1,126,11,60,29),(1,1,127,10,10,2),(1,1,127,10,10,3),(1,1,127,10,20,4),(1,1,127,10,20,5),(1,1,127,10,30,6),(1,1,127,10,30,7),(1,1,127,10,40,8),(1,1,127,10,40,9),(1,1,127,10,50,10),(1,1,127,10,50,11),(1,1,127,10,60,12),(1,1,127,11,10,14),(1,1,127,11,10,15),(1,1,127,11,10,17),(1,1,127,11,10,40),(1,1,127,11,10,42),(1,1,127,11,10,43),(1,1,127,11,10,44),(1,1,127,11,10,45),(1,1,127,11,10,47),(1,1,127,11,10,48),(1,1,127,11,10,51),(1,1,127,11,10,55),(1,1,127,11,10,56),(1,1,127,11,10,58),(1,1,127,11,10,59),(1,1,127,11,10,60),(1,1,127,11,10,61),(1,1,127,11,20,18),(1,1,127,11,20,19),(1,1,127,11,20,20),(1,1,127,11,30,21),(1,1,127,11,30,22),(1,1,127,11,30,23),(1,1,127,11,40,24),(1,1,127,11,40,25),(1,1,127,11,40,26),(1,1,127,11,50,27),(1,1,127,11,60,28),(1,1,127,11,60,29),(1,1,128,10,10,2),(1,1,128,10,10,3),(1,1,128,10,20,4),(1,1,128,10,20,5),(1,1,128,10,30,6),(1,1,128,10,30,7),(1,1,128,10,40,8),(1,1,128,10,40,9),(1,1,128,10,50,10),(1,1,128,10,50,11),(1,1,128,10,60,12),(1,1,128,11,10,14),(1,1,128,11,10,15),(1,1,128,11,10,17),(1,1,128,11,10,40),(1,1,128,11,10,42),(1,1,128,11,10,43),(1,1,128,11,10,44),(1,1,128,11,10,45),(1,1,128,11,10,47),(1,1,128,11,10,48),(1,1,128,11,10,51),(1,1,128,11,10,55),(1,1,128,11,10,56),(1,1,128,11,10,58),(1,1,128,11,10,59),(1,1,128,11,10,60),(1,1,128,11,10,61),(1,1,128,11,20,18),(1,1,128,11,20,19),(1,1,128,11,20,20),(1,1,128,11,30,21),(1,1,128,11,30,22),(1,1,128,11,30,23),(1,1,128,11,40,24),(1,1,128,11,40,25),(1,1,128,11,40,26),(1,1,128,11,50,27),(1,1,128,11,60,28),(1,1,128,11,60,29),(1,1,129,10,10,2),(1,1,129,10,10,3),(1,1,129,10,20,4),(1,1,129,10,20,5),(1,1,129,10,30,6),(1,1,129,10,30,7),(1,1,129,10,40,8),(1,1,129,10,40,9),(1,1,129,10,50,10),(1,1,129,10,50,11),(1,1,129,10,60,12),(1,1,129,11,10,14),(1,1,129,11,10,15),(1,1,129,11,10,17),(1,1,129,11,10,40),(1,1,129,11,10,42),(1,1,129,11,10,43),(1,1,129,11,10,44),(1,1,129,11,10,45),(1,1,129,11,10,47),(1,1,129,11,10,48),(1,1,129,11,10,51),(1,1,129,11,10,55),(1,1,129,11,10,56),(1,1,129,11,10,58),(1,1,129,11,10,59),(1,1,129,11,10,60),(1,1,129,11,10,61),(1,1,129,11,20,18),(1,1,129,11,20,19),(1,1,129,11,20,20),(1,1,129,11,30,21),(1,1,129,11,30,22),(1,1,129,11,30,23),(1,1,129,11,40,24),(1,1,129,11,40,25),(1,1,129,11,40,26),(1,1,129,11,50,27),(1,1,129,11,60,28),(1,1,129,11,60,29),(1,1,130,10,10,2),(1,1,130,10,10,3),(1,1,130,10,20,4),(1,1,130,10,20,5),(1,1,130,10,30,6),(1,1,130,10,30,7),(1,1,130,10,40,8),(1,1,130,10,40,9),(1,1,130,10,50,10),(1,1,130,10,50,11),(1,1,130,10,60,12),(1,1,130,11,10,14),(1,1,130,11,10,15),(1,1,130,11,10,17),(1,1,130,11,10,40),(1,1,130,11,10,42),(1,1,130,11,10,43),(1,1,130,11,10,44),(1,1,130,11,10,45),(1,1,130,11,10,47),(1,1,130,11,10,48),(1,1,130,11,10,51),(1,1,130,11,10,55),(1,1,130,11,10,56),(1,1,130,11,10,58),(1,1,130,11,10,59),(1,1,130,11,10,60),(1,1,130,11,10,61),(1,1,130,11,20,18),(1,1,130,11,20,19),(1,1,130,11,20,20),(1,1,130,11,30,21),(1,1,130,11,30,22),(1,1,130,11,30,23),(1,1,130,11,40,24),(1,1,130,11,40,25),(1,1,130,11,40,26),(1,1,130,11,50,27),(1,1,130,11,60,28),(1,1,130,11,60,29),(1,1,131,10,10,2),(1,1,131,10,10,3),(1,1,131,10,20,4),(1,1,131,10,20,5),(1,1,131,10,30,6),(1,1,131,10,30,7),(1,1,131,10,40,8),(1,1,131,10,40,9),(1,1,131,10,50,10),(1,1,131,10,50,11),(1,1,131,10,60,12),(1,1,131,11,10,14),(1,1,131,11,10,15),(1,1,131,11,10,17),(1,1,131,11,10,40),(1,1,131,11,10,42),(1,1,131,11,10,43),(1,1,131,11,10,44),(1,1,131,11,10,45),(1,1,131,11,10,47),(1,1,131,11,10,48),(1,1,131,11,10,51),(1,1,131,11,10,55),(1,1,131,11,10,56),(1,1,131,11,10,58),(1,1,131,11,10,59),(1,1,131,11,10,60),(1,1,131,11,10,61),(1,1,131,11,20,18),(1,1,131,11,20,19),(1,1,131,11,20,20),(1,1,131,11,30,21),(1,1,131,11,30,22),(1,1,131,11,30,23),(1,1,131,11,40,24),(1,1,131,11,40,25),(1,1,131,11,40,26),(1,1,131,11,50,27),(1,1,131,11,60,28),(1,1,131,11,60,29),(1,1,132,10,10,2),(1,1,132,10,10,3),(1,1,132,10,20,4),(1,1,132,10,20,5),(1,1,132,10,30,6),(1,1,132,10,30,7),(1,1,132,10,40,8),(1,1,132,10,40,9),(1,1,132,10,50,10),(1,1,132,10,50,11),(1,1,132,10,60,12),(1,1,132,11,10,14),(1,1,132,11,10,15),(1,1,132,11,10,17),(1,1,132,11,10,40),(1,1,132,11,10,42),(1,1,132,11,10,43),(1,1,132,11,10,44),(1,1,132,11,10,45),(1,1,132,11,10,47),(1,1,132,11,10,48),(1,1,132,11,10,51),(1,1,132,11,10,55),(1,1,132,11,10,56),(1,1,132,11,10,58),(1,1,132,11,10,59),(1,1,132,11,10,60),(1,1,132,11,10,61),(1,1,132,11,20,18),(1,1,132,11,20,19),(1,1,132,11,20,20),(1,1,132,11,30,21),(1,1,132,11,30,22),(1,1,132,11,30,23),(1,1,132,11,40,24),(1,1,132,11,40,25),(1,1,132,11,40,26),(1,1,132,11,50,27),(1,1,132,11,60,28),(1,1,132,11,60,29),(1,1,133,10,10,2),(1,1,133,10,10,3),(1,1,133,10,20,4),(1,1,133,10,20,5),(1,1,133,10,30,6),(1,1,133,10,30,7),(1,1,133,10,40,8),(1,1,133,10,40,9),(1,1,133,10,50,10),(1,1,133,10,50,11),(1,1,133,10,60,12),(1,1,133,11,10,14),(1,1,133,11,10,15),(1,1,133,11,10,17),(1,1,133,11,10,40),(1,1,133,11,10,42),(1,1,133,11,10,43),(1,1,133,11,10,44),(1,1,133,11,10,45),(1,1,133,11,10,47),(1,1,133,11,10,48),(1,1,133,11,10,51),(1,1,133,11,10,55),(1,1,133,11,10,56),(1,1,133,11,10,58),(1,1,133,11,10,59),(1,1,133,11,10,60),(1,1,133,11,10,61),(1,1,133,11,20,18),(1,1,133,11,20,19),(1,1,133,11,20,20),(1,1,133,11,30,21),(1,1,133,11,30,22),(1,1,133,11,30,23),(1,1,133,11,40,24),(1,1,133,11,40,25),(1,1,133,11,40,26),(1,1,133,11,50,27),(1,1,133,11,60,28),(1,1,133,11,60,29),(1,1,134,10,10,2),(1,1,134,10,10,3),(1,1,134,10,20,4),(1,1,134,10,20,5),(1,1,134,10,30,6),(1,1,134,10,30,7),(1,1,134,10,40,8),(1,1,134,10,40,9),(1,1,134,10,50,10),(1,1,134,10,50,11),(1,1,134,10,60,12),(1,1,134,11,10,14),(1,1,134,11,10,15),(1,1,134,11,10,17),(1,1,134,11,10,40),(1,1,134,11,10,42),(1,1,134,11,10,43),(1,1,134,11,10,44),(1,1,134,11,10,45),(1,1,134,11,10,47),(1,1,134,11,10,48),(1,1,134,11,10,51),(1,1,134,11,10,55),(1,1,134,11,10,56),(1,1,134,11,10,58),(1,1,134,11,10,59),(1,1,134,11,10,60),(1,1,134,11,10,61),(1,1,134,11,20,18),(1,1,134,11,20,19),(1,1,134,11,20,20),(1,1,134,11,30,21),(1,1,134,11,30,22),(1,1,134,11,30,23),(1,1,134,11,40,24),(1,1,134,11,40,25),(1,1,134,11,40,26),(1,1,134,11,50,27),(1,1,134,11,60,28),(1,1,134,11,60,29),(1,1,135,10,10,2),(1,1,135,10,10,3),(1,1,135,10,20,4),(1,1,135,10,20,5),(1,1,135,10,30,6),(1,1,135,10,30,7),(1,1,135,10,40,8),(1,1,135,10,40,9),(1,1,135,10,50,10),(1,1,135,10,50,11),(1,1,135,10,60,12),(1,1,135,11,10,14),(1,1,135,11,10,15),(1,1,135,11,10,17),(1,1,135,11,10,40),(1,1,135,11,10,42),(1,1,135,11,10,43),(1,1,135,11,10,44),(1,1,135,11,10,45),(1,1,135,11,10,47),(1,1,135,11,10,48),(1,1,135,11,10,51),(1,1,135,11,10,55),(1,1,135,11,10,56),(1,1,135,11,10,58),(1,1,135,11,10,59),(1,1,135,11,10,60),(1,1,135,11,10,61),(1,1,135,11,20,18),(1,1,135,11,20,19),(1,1,135,11,20,20),(1,1,135,11,30,21),(1,1,135,11,30,22),(1,1,135,11,30,23),(1,1,135,11,40,24),(1,1,135,11,40,25),(1,1,135,11,40,26),(1,1,135,11,50,27),(1,1,135,11,60,28),(1,1,135,11,60,29),(1,1,136,10,10,2),(1,1,136,10,10,3),(1,1,136,10,20,4),(1,1,136,10,20,5),(1,1,136,10,30,6),(1,1,136,10,30,7),(1,1,136,10,40,8),(1,1,136,10,40,9),(1,1,136,10,50,10),(1,1,136,10,50,11),(1,1,136,10,60,12),(1,1,136,11,10,14),(1,1,136,11,10,15),(1,1,136,11,10,17),(1,1,136,11,10,40),(1,1,136,11,10,42),(1,1,136,11,10,43),(1,1,136,11,10,44),(1,1,136,11,10,45),(1,1,136,11,10,47),(1,1,136,11,10,48),(1,1,136,11,10,51),(1,1,136,11,10,55),(1,1,136,11,10,56),(1,1,136,11,10,58),(1,1,136,11,10,59),(1,1,136,11,10,60),(1,1,136,11,10,61),(1,1,136,11,20,18),(1,1,136,11,20,19),(1,1,136,11,20,20),(1,1,136,11,30,21),(1,1,136,11,30,22),(1,1,136,11,30,23),(1,1,136,11,40,24),(1,1,136,11,40,25),(1,1,136,11,40,26),(1,1,136,11,50,27),(1,1,136,11,60,28),(1,1,136,11,60,29),(1,1,137,10,10,2),(1,1,137,10,10,3),(1,1,137,10,20,4),(1,1,137,10,20,5),(1,1,137,10,30,6),(1,1,137,10,30,7),(1,1,137,10,40,8),(1,1,137,10,40,9),(1,1,137,10,50,10),(1,1,137,10,50,11),(1,1,137,10,60,12),(1,1,137,11,10,14),(1,1,137,11,10,15),(1,1,137,11,10,17),(1,1,137,11,10,40),(1,1,137,11,10,42),(1,1,137,11,10,43),(1,1,137,11,10,44),(1,1,137,11,10,45),(1,1,137,11,10,47),(1,1,137,11,10,48),(1,1,137,11,10,51),(1,1,137,11,10,55),(1,1,137,11,10,56),(1,1,137,11,10,58),(1,1,137,11,10,59),(1,1,137,11,10,60),(1,1,137,11,10,61),(1,1,137,11,20,18),(1,1,137,11,20,19),(1,1,137,11,20,20),(1,1,137,11,30,21),(1,1,137,11,30,22),(1,1,137,11,30,23),(1,1,137,11,40,24),(1,1,137,11,40,25),(1,1,137,11,40,26),(1,1,137,11,50,27),(1,1,137,11,60,28),(1,1,137,11,60,29),(1,1,138,10,10,2),(1,1,138,10,10,3),(1,1,138,10,20,4),(1,1,138,10,20,5),(1,1,138,10,30,6),(1,1,138,10,30,7),(1,1,138,10,40,8),(1,1,138,10,40,9),(1,1,138,10,50,10),(1,1,138,10,50,11),(1,1,138,10,60,12),(1,1,138,11,10,14),(1,1,138,11,10,15),(1,1,138,11,10,17),(1,1,138,11,10,40),(1,1,138,11,10,42),(1,1,138,11,10,43),(1,1,138,11,10,44),(1,1,138,11,10,45),(1,1,138,11,10,47),(1,1,138,11,10,48),(1,1,138,11,10,51),(1,1,138,11,10,55),(1,1,138,11,10,56),(1,1,138,11,10,58),(1,1,138,11,10,59),(1,1,138,11,10,60),(1,1,138,11,10,61),(1,1,138,11,20,18),(1,1,138,11,20,19),(1,1,138,11,20,20),(1,1,138,11,30,21),(1,1,138,11,30,22),(1,1,138,11,30,23),(1,1,138,11,40,24),(1,1,138,11,40,25),(1,1,138,11,40,26),(1,1,138,11,50,27),(1,1,138,11,60,28),(1,1,138,11,60,29),(1,1,139,10,10,2),(1,1,139,10,10,3),(1,1,139,10,20,4),(1,1,139,10,20,5),(1,1,139,10,30,6),(1,1,139,10,30,7),(1,1,139,10,40,8),(1,1,139,10,40,9),(1,1,139,10,50,10),(1,1,139,10,50,11),(1,1,139,10,60,12),(1,1,139,11,10,14),(1,1,139,11,10,15),(1,1,139,11,10,17),(1,1,139,11,10,40),(1,1,139,11,10,42),(1,1,139,11,10,43),(1,1,139,11,10,44),(1,1,139,11,10,45),(1,1,139,11,10,47),(1,1,139,11,10,48),(1,1,139,11,10,51),(1,1,139,11,10,55),(1,1,139,11,10,56),(1,1,139,11,10,58),(1,1,139,11,10,59),(1,1,139,11,10,60),(1,1,139,11,10,61),(1,1,139,11,20,18),(1,1,139,11,20,19),(1,1,139,11,20,20),(1,1,139,11,30,21),(1,1,139,11,30,22),(1,1,139,11,30,23),(1,1,139,11,40,24),(1,1,139,11,40,25),(1,1,139,11,40,26),(1,1,139,11,50,27),(1,1,139,11,60,28),(1,1,139,11,60,29),(1,1,140,10,10,2),(1,1,140,10,10,3),(1,1,140,10,20,4),(1,1,140,10,20,5),(1,1,140,10,30,6),(1,1,140,10,30,7),(1,1,140,10,40,8),(1,1,140,10,40,9),(1,1,140,10,50,10),(1,1,140,10,50,11),(1,1,140,10,60,12),(1,1,140,11,10,14),(1,1,140,11,10,15),(1,1,140,11,10,17),(1,1,140,11,10,40),(1,1,140,11,10,42),(1,1,140,11,10,43),(1,1,140,11,10,44),(1,1,140,11,10,45),(1,1,140,11,10,47),(1,1,140,11,10,48),(1,1,140,11,10,51),(1,1,140,11,10,55),(1,1,140,11,10,56),(1,1,140,11,10,58),(1,1,140,11,10,59),(1,1,140,11,10,60),(1,1,140,11,10,61),(1,1,140,11,20,18),(1,1,140,11,20,19),(1,1,140,11,20,20),(1,1,140,11,30,21),(1,1,140,11,30,22),(1,1,140,11,30,23),(1,1,140,11,40,24),(1,1,140,11,40,25),(1,1,140,11,40,26),(1,1,140,11,50,27),(1,1,140,11,60,28),(1,1,140,11,60,29),(1,1,141,10,10,2),(1,1,141,10,10,3),(1,1,141,10,20,4),(1,1,141,10,20,5),(1,1,141,10,30,6),(1,1,141,10,30,7),(1,1,141,10,40,8),(1,1,141,10,40,9),(1,1,141,10,50,10),(1,1,141,10,50,11),(1,1,141,10,60,12),(1,1,141,11,10,14),(1,1,141,11,10,15),(1,1,141,11,10,17),(1,1,141,11,10,40),(1,1,141,11,10,42),(1,1,141,11,10,43),(1,1,141,11,10,44),(1,1,141,11,10,45),(1,1,141,11,10,47),(1,1,141,11,10,48),(1,1,141,11,10,51),(1,1,141,11,10,55),(1,1,141,11,10,56),(1,1,141,11,10,58),(1,1,141,11,10,59),(1,1,141,11,10,60),(1,1,141,11,10,61),(1,1,141,11,20,18),(1,1,141,11,20,19),(1,1,141,11,20,20),(1,1,141,11,30,21),(1,1,141,11,30,22),(1,1,141,11,30,23),(1,1,141,11,40,24),(1,1,141,11,40,25),(1,1,141,11,40,26),(1,1,141,11,50,27),(1,1,141,11,60,28),(1,1,141,11,60,29),(1,1,142,10,10,2),(1,1,142,10,10,3),(1,1,142,10,20,4),(1,1,142,10,20,5),(1,1,142,10,30,6),(1,1,142,10,30,7),(1,1,142,10,40,8),(1,1,142,10,40,9),(1,1,142,10,50,10),(1,1,142,10,50,11),(1,1,142,10,60,12),(1,1,142,11,10,14),(1,1,142,11,10,15),(1,1,142,11,10,17),(1,1,142,11,10,40),(1,1,142,11,10,42),(1,1,142,11,10,43),(1,1,142,11,10,44),(1,1,142,11,10,45),(1,1,142,11,10,47),(1,1,142,11,10,48),(1,1,142,11,10,51),(1,1,142,11,10,55),(1,1,142,11,10,56),(1,1,142,11,10,58),(1,1,142,11,10,59),(1,1,142,11,10,60),(1,1,142,11,10,61),(1,1,142,11,20,18),(1,1,142,11,20,19),(1,1,142,11,20,20),(1,1,142,11,30,21),(1,1,142,11,30,22),(1,1,142,11,30,23),(1,1,142,11,40,24),(1,1,142,11,40,25),(1,1,142,11,40,26),(1,1,142,11,50,27),(1,1,142,11,60,28),(1,1,142,11,60,29),(1,1,143,10,10,2),(1,1,143,10,10,3),(1,1,143,10,20,4),(1,1,143,10,20,5),(1,1,143,10,30,6),(1,1,143,10,30,7),(1,1,143,10,40,8),(1,1,143,10,40,9),(1,1,143,10,50,10),(1,1,143,10,50,11),(1,1,143,10,60,12),(1,1,143,11,10,14),(1,1,143,11,10,15),(1,1,143,11,10,17),(1,1,143,11,10,40),(1,1,143,11,10,42),(1,1,143,11,10,43),(1,1,143,11,10,44),(1,1,143,11,10,45),(1,1,143,11,10,47),(1,1,143,11,10,48),(1,1,143,11,10,51),(1,1,143,11,10,55),(1,1,143,11,10,56),(1,1,143,11,10,58),(1,1,143,11,10,59),(1,1,143,11,10,60),(1,1,143,11,10,61),(1,1,143,11,20,18),(1,1,143,11,20,19),(1,1,143,11,20,20),(1,1,143,11,30,21),(1,1,143,11,30,22),(1,1,143,11,30,23),(1,1,143,11,40,24),(1,1,143,11,40,25),(1,1,143,11,40,26),(1,1,143,11,50,27),(1,1,143,11,60,28),(1,1,143,11,60,29),(1,1,144,10,10,2),(1,1,144,10,10,3),(1,1,144,10,20,4),(1,1,144,10,20,5),(1,1,144,10,30,6),(1,1,144,10,30,7),(1,1,144,10,40,8),(1,1,144,10,40,9),(1,1,144,10,50,10),(1,1,144,10,50,11),(1,1,144,10,60,12),(1,1,144,11,10,14),(1,1,144,11,10,15),(1,1,144,11,10,17),(1,1,144,11,10,40),(1,1,144,11,10,42),(1,1,144,11,10,43),(1,1,144,11,10,44),(1,1,144,11,10,45),(1,1,144,11,10,47),(1,1,144,11,10,48),(1,1,144,11,10,51),(1,1,144,11,10,55),(1,1,144,11,10,56),(1,1,144,11,10,58),(1,1,144,11,10,59),(1,1,144,11,10,60),(1,1,144,11,10,61),(1,1,144,11,20,18),(1,1,144,11,20,19),(1,1,144,11,20,20),(1,1,144,11,30,21),(1,1,144,11,30,22),(1,1,144,11,30,23),(1,1,144,11,40,24),(1,1,144,11,40,25),(1,1,144,11,40,26),(1,1,144,11,50,27),(1,1,144,11,60,28),(1,1,144,11,60,29),(1,1,145,10,10,2),(1,1,145,10,10,3),(1,1,145,10,20,4),(1,1,145,10,20,5),(1,1,145,10,30,6),(1,1,145,10,30,7),(1,1,145,10,40,8),(1,1,145,10,40,9),(1,1,145,10,50,10),(1,1,145,10,50,11),(1,1,145,10,60,12),(1,1,145,11,10,14),(1,1,145,11,10,15),(1,1,145,11,10,17),(1,1,145,11,10,40),(1,1,145,11,10,42),(1,1,145,11,10,43),(1,1,145,11,10,44),(1,1,145,11,10,45),(1,1,145,11,10,47),(1,1,145,11,10,48),(1,1,145,11,10,51),(1,1,145,11,10,55),(1,1,145,11,10,56),(1,1,145,11,10,58),(1,1,145,11,10,59),(1,1,145,11,10,60),(1,1,145,11,10,61),(1,1,145,11,20,18),(1,1,145,11,20,19),(1,1,145,11,20,20),(1,1,145,11,30,21),(1,1,145,11,30,22),(1,1,145,11,30,23),(1,1,145,11,40,24),(1,1,145,11,40,25),(1,1,145,11,40,26),(1,1,145,11,50,27),(1,1,145,11,60,28),(1,1,145,11,60,29),(1,1,146,10,10,2),(1,1,146,10,10,3),(1,1,146,10,20,4),(1,1,146,10,20,5),(1,1,146,10,30,6),(1,1,146,10,30,7),(1,1,146,10,40,8),(1,1,146,10,40,9),(1,1,146,10,50,10),(1,1,146,10,50,11),(1,1,146,10,60,12),(1,1,146,11,10,14),(1,1,146,11,10,15),(1,1,146,11,10,17),(1,1,146,11,10,40),(1,1,146,11,10,42),(1,1,146,11,10,43),(1,1,146,11,10,44),(1,1,146,11,10,45),(1,1,146,11,10,47),(1,1,146,11,10,48),(1,1,146,11,10,51),(1,1,146,11,10,55),(1,1,146,11,10,56),(1,1,146,11,10,58),(1,1,146,11,10,59),(1,1,146,11,10,60),(1,1,146,11,10,61),(1,1,146,11,20,18),(1,1,146,11,20,19),(1,1,146,11,20,20),(1,1,146,11,30,21),(1,1,146,11,30,22),(1,1,146,11,30,23),(1,1,146,11,40,24),(1,1,146,11,40,25),(1,1,146,11,40,26),(1,1,146,11,50,27),(1,1,146,11,60,28),(1,1,146,11,60,29),(1,1,147,10,10,2),(1,1,147,10,10,3),(1,1,147,10,20,4),(1,1,147,10,20,5),(1,1,147,10,30,6),(1,1,147,10,30,7),(1,1,147,10,40,8),(1,1,147,10,40,9),(1,1,147,10,50,10),(1,1,147,10,50,11),(1,1,147,10,60,12),(1,1,147,11,10,14),(1,1,147,11,10,15),(1,1,147,11,10,17),(1,1,147,11,10,40),(1,1,147,11,10,42),(1,1,147,11,10,43),(1,1,147,11,10,44),(1,1,147,11,10,45),(1,1,147,11,10,47),(1,1,147,11,10,48),(1,1,147,11,10,51),(1,1,147,11,10,55),(1,1,147,11,10,56),(1,1,147,11,10,58),(1,1,147,11,10,59),(1,1,147,11,10,60),(1,1,147,11,10,61),(1,1,147,11,20,18),(1,1,147,11,20,19),(1,1,147,11,20,20),(1,1,147,11,30,21),(1,1,147,11,30,22),(1,1,147,11,30,23),(1,1,147,11,40,24),(1,1,147,11,40,25),(1,1,147,11,40,26),(1,1,147,11,50,27),(1,1,147,11,60,28),(1,1,147,11,60,29),(1,1,148,10,10,2),(1,1,148,10,10,3),(1,1,148,10,20,4),(1,1,148,10,20,5),(1,1,148,10,30,6),(1,1,148,10,30,7),(1,1,148,10,40,8),(1,1,148,10,40,9),(1,1,148,10,50,10),(1,1,148,10,50,11),(1,1,148,10,60,12),(1,1,148,11,10,14),(1,1,148,11,10,15),(1,1,148,11,10,17),(1,1,148,11,10,40),(1,1,148,11,10,42),(1,1,148,11,10,43),(1,1,148,11,10,44),(1,1,148,11,10,45),(1,1,148,11,10,47),(1,1,148,11,10,48),(1,1,148,11,10,51),(1,1,148,11,10,55),(1,1,148,11,10,56),(1,1,148,11,10,58),(1,1,148,11,10,59),(1,1,148,11,10,60),(1,1,148,11,10,61),(1,1,148,11,20,18),(1,1,148,11,20,19),(1,1,148,11,20,20),(1,1,148,11,30,21),(1,1,148,11,30,22),(1,1,148,11,30,23),(1,1,148,11,40,24),(1,1,148,11,40,25),(1,1,148,11,40,26),(1,1,148,11,50,27),(1,1,148,11,60,28),(1,1,148,11,60,29),(1,1,149,10,10,2),(1,1,149,10,10,3),(1,1,149,10,20,4),(1,1,149,10,20,5),(1,1,149,10,30,6),(1,1,149,10,30,7),(1,1,149,10,40,8),(1,1,149,10,40,9),(1,1,149,10,50,10),(1,1,149,10,50,11),(1,1,149,10,60,12),(1,1,149,11,10,14),(1,1,149,11,10,15),(1,1,149,11,10,17),(1,1,149,11,10,40),(1,1,149,11,10,42),(1,1,149,11,10,43),(1,1,149,11,10,44),(1,1,149,11,10,45),(1,1,149,11,10,47),(1,1,149,11,10,48),(1,1,149,11,10,51),(1,1,149,11,10,55),(1,1,149,11,10,56),(1,1,149,11,10,58),(1,1,149,11,10,59),(1,1,149,11,10,60),(1,1,149,11,10,61),(1,1,149,11,20,18),(1,1,149,11,20,19),(1,1,149,11,20,20),(1,1,149,11,30,21),(1,1,149,11,30,22),(1,1,149,11,30,23),(1,1,149,11,40,24),(1,1,149,11,40,25),(1,1,149,11,40,26),(1,1,149,11,50,27),(1,1,149,11,60,28),(1,1,149,11,60,29),(1,1,150,10,10,2),(1,1,150,10,10,3),(1,1,150,10,20,4),(1,1,150,10,20,5),(1,1,150,10,30,6),(1,1,150,10,30,7),(1,1,150,10,40,8),(1,1,150,10,40,9),(1,1,150,10,50,10),(1,1,150,10,50,11),(1,1,150,10,60,12),(1,1,150,11,10,14),(1,1,150,11,10,15),(1,1,150,11,10,17),(1,1,150,11,10,40),(1,1,150,11,10,42),(1,1,150,11,10,43),(1,1,150,11,10,44),(1,1,150,11,10,45),(1,1,150,11,10,47),(1,1,150,11,10,48),(1,1,150,11,10,51),(1,1,150,11,10,55),(1,1,150,11,10,56),(1,1,150,11,10,58),(1,1,150,11,10,59),(1,1,150,11,10,60),(1,1,150,11,10,61),(1,1,150,11,20,18),(1,1,150,11,20,19),(1,1,150,11,20,20),(1,1,150,11,30,21),(1,1,150,11,30,22),(1,1,150,11,30,23),(1,1,150,11,40,24),(1,1,150,11,40,25),(1,1,150,11,40,26),(1,1,150,11,50,27),(1,1,150,11,60,28),(1,1,150,11,60,29),(1,1,151,10,10,2),(1,1,151,10,10,3),(1,1,151,10,20,4),(1,1,151,10,20,5),(1,1,151,10,30,6),(1,1,151,10,30,7),(1,1,151,10,40,8),(1,1,151,10,40,9),(1,1,151,10,50,10),(1,1,151,10,50,11),(1,1,151,10,60,12),(1,1,151,11,10,14),(1,1,151,11,10,15),(1,1,151,11,10,17),(1,1,151,11,10,40),(1,1,151,11,10,42),(1,1,151,11,10,43),(1,1,151,11,10,44),(1,1,151,11,10,45),(1,1,151,11,10,47),(1,1,151,11,10,48),(1,1,151,11,10,51),(1,1,151,11,10,55),(1,1,151,11,10,56),(1,1,151,11,10,58),(1,1,151,11,10,59),(1,1,151,11,10,60),(1,1,151,11,10,61),(1,1,151,11,20,18),(1,1,151,11,20,19),(1,1,151,11,20,20),(1,1,151,11,30,21),(1,1,151,11,30,22),(1,1,151,11,30,23),(1,1,151,11,40,24),(1,1,151,11,40,25),(1,1,151,11,40,26),(1,1,151,11,50,27),(1,1,151,11,60,28),(1,1,151,11,60,29),(1,1,152,10,10,2),(1,1,152,10,10,3),(1,1,152,10,20,4),(1,1,152,10,20,5),(1,1,152,10,30,6),(1,1,152,10,30,7),(1,1,152,10,40,8),(1,1,152,10,40,9),(1,1,152,10,50,10),(1,1,152,10,50,11),(1,1,152,10,60,12),(1,1,152,11,10,14),(1,1,152,11,10,15),(1,1,152,11,10,17),(1,1,152,11,10,40),(1,1,152,11,10,42),(1,1,152,11,10,43),(1,1,152,11,10,44),(1,1,152,11,10,45),(1,1,152,11,10,47),(1,1,152,11,10,48),(1,1,152,11,10,51),(1,1,152,11,10,55),(1,1,152,11,10,56),(1,1,152,11,10,58),(1,1,152,11,10,59),(1,1,152,11,10,60),(1,1,152,11,10,61),(1,1,152,11,20,18),(1,1,152,11,20,19),(1,1,152,11,20,20),(1,1,152,11,30,21),(1,1,152,11,30,22),(1,1,152,11,30,23),(1,1,152,11,40,24),(1,1,152,11,40,25),(1,1,152,11,40,26),(1,1,152,11,50,27),(1,1,152,11,60,28),(1,1,152,11,60,29),(1,1,153,10,10,2),(1,1,153,10,10,3),(1,1,153,10,20,4),(1,1,153,10,20,5),(1,1,153,10,30,6),(1,1,153,10,30,7),(1,1,153,10,40,8),(1,1,153,10,40,9),(1,1,153,10,50,10),(1,1,153,10,50,11),(1,1,153,10,60,12),(1,1,153,11,10,14),(1,1,153,11,10,15),(1,1,153,11,10,17),(1,1,153,11,10,40),(1,1,153,11,10,42),(1,1,153,11,10,43),(1,1,153,11,10,44),(1,1,153,11,10,45),(1,1,153,11,10,47),(1,1,153,11,10,48),(1,1,153,11,10,51),(1,1,153,11,10,55),(1,1,153,11,10,56),(1,1,153,11,10,58),(1,1,153,11,10,59),(1,1,153,11,10,60),(1,1,153,11,10,61),(1,1,153,11,20,18),(1,1,153,11,20,19),(1,1,153,11,20,20),(1,1,153,11,30,21),(1,1,153,11,30,22),(1,1,153,11,30,23),(1,1,153,11,40,24),(1,1,153,11,40,25),(1,1,153,11,40,26),(1,1,153,11,50,27),(1,1,153,11,60,28),(1,1,153,11,60,29),(1,1,154,10,10,2),(1,1,154,10,10,3),(1,1,154,10,20,4),(1,1,154,10,20,5),(1,1,154,10,30,6),(1,1,154,10,30,7),(1,1,154,10,40,8),(1,1,154,10,40,9),(1,1,154,10,50,10),(1,1,154,10,50,11),(1,1,154,10,60,12),(1,1,154,11,10,14),(1,1,154,11,10,15),(1,1,154,11,10,17),(1,1,154,11,10,40),(1,1,154,11,10,42),(1,1,154,11,10,43),(1,1,154,11,10,44),(1,1,154,11,10,45),(1,1,154,11,10,47),(1,1,154,11,10,48),(1,1,154,11,10,51),(1,1,154,11,10,55),(1,1,154,11,10,56),(1,1,154,11,10,58),(1,1,154,11,10,59),(1,1,154,11,10,60),(1,1,154,11,10,61),(1,1,154,11,20,18),(1,1,154,11,20,19),(1,1,154,11,20,20),(1,1,154,11,30,21),(1,1,154,11,30,22),(1,1,154,11,30,23),(1,1,154,11,40,24),(1,1,154,11,40,25),(1,1,154,11,40,26),(1,1,154,11,50,27),(1,1,154,11,60,28),(1,1,154,11,60,29),(1,1,155,10,10,2),(1,1,155,10,10,3),(1,1,155,10,20,4),(1,1,155,10,20,5),(1,1,155,10,30,6),(1,1,155,10,30,7),(1,1,155,10,40,8),(1,1,155,10,40,9),(1,1,155,10,50,10),(1,1,155,10,50,11),(1,1,155,10,60,12),(1,1,155,11,10,14),(1,1,155,11,10,15),(1,1,155,11,10,17),(1,1,155,11,10,40),(1,1,155,11,10,42),(1,1,155,11,10,43),(1,1,155,11,10,44),(1,1,155,11,10,45),(1,1,155,11,10,47),(1,1,155,11,10,48),(1,1,155,11,10,51),(1,1,155,11,10,55),(1,1,155,11,10,56),(1,1,155,11,10,58),(1,1,155,11,10,59),(1,1,155,11,10,60),(1,1,155,11,10,61),(1,1,155,11,20,18),(1,1,155,11,20,19),(1,1,155,11,20,20),(1,1,155,11,30,21),(1,1,155,11,30,22),(1,1,155,11,30,23),(1,1,155,11,40,24),(1,1,155,11,40,25),(1,1,155,11,40,26),(1,1,155,11,50,27),(1,1,155,11,60,28),(1,1,155,11,60,29),(1,1,156,10,10,2),(1,1,156,10,10,3),(1,1,156,10,20,4),(1,1,156,10,20,5),(1,1,156,10,30,6),(1,1,156,10,30,7),(1,1,156,10,40,8),(1,1,156,10,40,9),(1,1,156,10,50,10),(1,1,156,10,50,11),(1,1,156,10,60,12),(1,1,156,11,10,14),(1,1,156,11,10,15),(1,1,156,11,10,17),(1,1,156,11,10,40),(1,1,156,11,10,42),(1,1,156,11,10,43),(1,1,156,11,10,44),(1,1,156,11,10,45),(1,1,156,11,10,47),(1,1,156,11,10,48),(1,1,156,11,10,51),(1,1,156,11,10,55),(1,1,156,11,10,56),(1,1,156,11,10,58),(1,1,156,11,10,59),(1,1,156,11,10,60),(1,1,156,11,10,61),(1,1,156,11,20,18),(1,1,156,11,20,19),(1,1,156,11,20,20),(1,1,156,11,30,21),(1,1,156,11,30,22),(1,1,156,11,30,23),(1,1,156,11,40,24),(1,1,156,11,40,25),(1,1,156,11,40,26),(1,1,156,11,50,27),(1,1,156,11,60,28),(1,1,156,11,60,29),(1,1,157,10,10,2),(1,1,157,10,10,3),(1,1,157,10,20,4),(1,1,157,10,20,5),(1,1,157,10,30,6),(1,1,157,10,30,7),(1,1,157,10,40,8),(1,1,157,10,40,9),(1,1,157,10,50,10),(1,1,157,10,50,11),(1,1,157,10,60,12),(1,1,157,11,10,14),(1,1,157,11,10,15),(1,1,157,11,10,17),(1,1,157,11,10,40),(1,1,157,11,10,42),(1,1,157,11,10,43),(1,1,157,11,10,44),(1,1,157,11,10,45),(1,1,157,11,10,47),(1,1,157,11,10,48),(1,1,157,11,10,51),(1,1,157,11,10,55),(1,1,157,11,10,56),(1,1,157,11,10,58),(1,1,157,11,10,59),(1,1,157,11,10,60),(1,1,157,11,10,61),(1,1,157,11,20,18),(1,1,157,11,20,19),(1,1,157,11,20,20),(1,1,157,11,30,21),(1,1,157,11,30,22),(1,1,157,11,30,23),(1,1,157,11,40,24),(1,1,157,11,40,25),(1,1,157,11,40,26),(1,1,157,11,50,27),(1,1,157,11,60,28),(1,1,157,11,60,29),(1,1,158,10,10,2),(1,1,158,10,10,3),(1,1,158,10,20,4),(1,1,158,10,20,5),(1,1,158,10,30,6),(1,1,158,10,30,7),(1,1,158,10,40,8),(1,1,158,10,40,9),(1,1,158,10,50,10),(1,1,158,10,50,11),(1,1,158,10,60,12),(1,1,158,11,10,14),(1,1,158,11,10,15),(1,1,158,11,10,17),(1,1,158,11,10,40),(1,1,158,11,10,42),(1,1,158,11,10,43),(1,1,158,11,10,44),(1,1,158,11,10,45),(1,1,158,11,10,47),(1,1,158,11,10,48),(1,1,158,11,10,51),(1,1,158,11,10,55),(1,1,158,11,10,56),(1,1,158,11,10,58),(1,1,158,11,10,59),(1,1,158,11,10,60),(1,1,158,11,10,61),(1,1,158,11,20,18),(1,1,158,11,20,19),(1,1,158,11,20,20),(1,1,158,11,30,21),(1,1,158,11,30,22),(1,1,158,11,30,23),(1,1,158,11,40,24),(1,1,158,11,40,25),(1,1,158,11,40,26),(1,1,158,11,50,27),(1,1,158,11,60,28),(1,1,158,11,60,29),(1,1,159,10,10,2),(1,1,159,10,10,3),(1,1,159,10,20,4),(1,1,159,10,20,5),(1,1,159,10,30,6),(1,1,159,10,30,7),(1,1,159,10,40,8),(1,1,159,10,40,9),(1,1,159,10,50,10),(1,1,159,10,50,11),(1,1,159,10,60,12),(1,1,159,11,10,14),(1,1,159,11,10,15),(1,1,159,11,10,17),(1,1,159,11,10,40),(1,1,159,11,10,42),(1,1,159,11,10,43),(1,1,159,11,10,44),(1,1,159,11,10,45),(1,1,159,11,10,47),(1,1,159,11,10,48),(1,1,159,11,10,51),(1,1,159,11,10,55),(1,1,159,11,10,56),(1,1,159,11,10,58),(1,1,159,11,10,59),(1,1,159,11,10,60),(1,1,159,11,10,61),(1,1,159,11,20,18),(1,1,159,11,20,19),(1,1,159,11,20,20),(1,1,159,11,30,21),(1,1,159,11,30,22),(1,1,159,11,30,23),(1,1,159,11,40,24),(1,1,159,11,40,25),(1,1,159,11,40,26),(1,1,159,11,50,27),(1,1,159,11,60,28),(1,1,159,11,60,29),(1,1,160,10,10,2),(1,1,160,10,10,3),(1,1,160,10,20,4),(1,1,160,10,20,5),(1,1,160,10,30,6),(1,1,160,10,30,7),(1,1,160,10,40,8),(1,1,160,10,40,9),(1,1,160,10,50,10),(1,1,160,10,50,11),(1,1,160,10,60,12),(1,1,160,11,10,14),(1,1,160,11,10,15),(1,1,160,11,10,17),(1,1,160,11,10,40),(1,1,160,11,10,42),(1,1,160,11,10,43),(1,1,160,11,10,44),(1,1,160,11,10,45),(1,1,160,11,10,47),(1,1,160,11,10,48),(1,1,160,11,10,51),(1,1,160,11,10,55),(1,1,160,11,10,56),(1,1,160,11,10,58),(1,1,160,11,10,59),(1,1,160,11,10,60),(1,1,160,11,10,61),(1,1,160,11,20,18),(1,1,160,11,20,19),(1,1,160,11,20,20),(1,1,160,11,30,21),(1,1,160,11,30,22),(1,1,160,11,30,23),(1,1,160,11,40,24),(1,1,160,11,40,25),(1,1,160,11,40,26),(1,1,160,11,50,27),(1,1,160,11,60,28),(1,1,160,11,60,29),(1,1,161,10,10,2),(1,1,161,10,10,3),(1,1,161,10,20,4),(1,1,161,10,20,5),(1,1,161,10,30,6),(1,1,161,10,30,7),(1,1,161,10,40,8),(1,1,161,10,40,9),(1,1,161,10,50,10),(1,1,161,10,50,11),(1,1,161,10,60,12),(1,1,161,11,10,14),(1,1,161,11,10,15),(1,1,161,11,10,17),(1,1,161,11,10,40),(1,1,161,11,10,42),(1,1,161,11,10,43),(1,1,161,11,10,44),(1,1,161,11,10,45),(1,1,161,11,10,47),(1,1,161,11,10,48),(1,1,161,11,10,51),(1,1,161,11,10,55),(1,1,161,11,10,56),(1,1,161,11,10,58),(1,1,161,11,10,59),(1,1,161,11,10,60),(1,1,161,11,10,61),(1,1,161,11,20,18),(1,1,161,11,20,19),(1,1,161,11,20,20),(1,1,161,11,30,21),(1,1,161,11,30,22),(1,1,161,11,30,23),(1,1,161,11,40,24),(1,1,161,11,40,25),(1,1,161,11,40,26),(1,1,161,11,50,27),(1,1,161,11,60,28),(1,1,161,11,60,29),(1,1,162,10,10,2),(1,1,162,10,10,3),(1,1,162,10,20,4),(1,1,162,10,20,5),(1,1,162,10,30,6),(1,1,162,10,30,7),(1,1,162,10,40,8),(1,1,162,10,40,9),(1,1,162,10,50,10),(1,1,162,10,50,11),(1,1,162,10,60,12),(1,1,162,11,10,14),(1,1,162,11,10,15),(1,1,162,11,10,17),(1,1,162,11,10,40),(1,1,162,11,10,42),(1,1,162,11,10,43),(1,1,162,11,10,44),(1,1,162,11,10,45),(1,1,162,11,10,47),(1,1,162,11,10,48),(1,1,162,11,10,51),(1,1,162,11,10,55),(1,1,162,11,10,56),(1,1,162,11,10,58),(1,1,162,11,10,59),(1,1,162,11,10,60),(1,1,162,11,10,61),(1,1,162,11,20,18),(1,1,162,11,20,19),(1,1,162,11,20,20),(1,1,162,11,30,21),(1,1,162,11,30,22),(1,1,162,11,30,23),(1,1,162,11,40,24),(1,1,162,11,40,25),(1,1,162,11,40,26),(1,1,162,11,50,27),(1,1,162,11,60,28),(1,1,162,11,60,29),(1,1,163,1,5,33),(1,1,163,10,10,2),(1,1,163,10,10,3),(1,1,163,10,20,4),(1,1,163,10,20,5),(1,1,163,10,30,6),(1,1,163,10,30,7),(1,1,163,10,40,8),(1,1,163,10,40,9),(1,1,163,10,50,10),(1,1,163,10,50,11),(1,1,163,10,60,12),(1,1,163,11,10,14),(1,1,163,11,10,15),(1,1,163,11,10,17),(1,1,163,11,10,40),(1,1,163,11,10,42),(1,1,163,11,10,43),(1,1,163,11,10,44),(1,1,163,11,10,45),(1,1,163,11,10,47),(1,1,163,11,10,48),(1,1,163,11,10,51),(1,1,163,11,10,55),(1,1,163,11,10,56),(1,1,163,11,10,58),(1,1,163,11,10,59),(1,1,163,11,10,60),(1,1,163,11,10,61),(1,1,163,11,20,18),(1,1,163,11,20,19),(1,1,163,11,20,20),(1,1,163,11,30,21),(1,1,163,11,30,22),(1,1,163,11,30,23),(1,1,163,11,40,24),(1,1,163,11,40,25),(1,1,163,11,40,26),(1,1,163,11,50,27),(1,1,163,11,60,28),(1,1,163,11,60,29),(1,1,164,10,10,2),(1,1,164,10,10,3),(1,1,164,10,20,4),(1,1,164,10,20,5),(1,1,164,10,30,6),(1,1,164,10,30,7),(1,1,164,10,40,8),(1,1,164,10,40,9),(1,1,164,10,50,10),(1,1,164,10,50,11),(1,1,164,10,60,12),(1,1,164,11,10,14),(1,1,164,11,10,15),(1,1,164,11,10,17),(1,1,164,11,10,40),(1,1,164,11,10,42),(1,1,164,11,10,43),(1,1,164,11,10,44),(1,1,164,11,10,45),(1,1,164,11,10,47),(1,1,164,11,10,48),(1,1,164,11,10,51),(1,1,164,11,10,55),(1,1,164,11,10,56),(1,1,164,11,10,58),(1,1,164,11,10,59),(1,1,164,11,10,60),(1,1,164,11,10,61),(1,1,164,11,20,18),(1,1,164,11,20,19),(1,1,164,11,20,20),(1,1,164,11,30,21),(1,1,164,11,30,22),(1,1,164,11,30,23),(1,1,164,11,40,24),(1,1,164,11,40,25),(1,1,164,11,40,26),(1,1,164,11,50,27),(1,1,164,11,60,28),(1,1,164,11,60,29),(1,1,165,10,10,2),(1,1,165,10,10,3),(1,1,165,10,20,4),(1,1,165,10,20,5),(1,1,165,10,30,6),(1,1,165,10,30,7),(1,1,165,10,40,8),(1,1,165,10,40,9),(1,1,165,10,50,10),(1,1,165,10,50,11),(1,1,165,10,60,12),(1,1,165,11,10,14),(1,1,165,11,10,15),(1,1,165,11,10,17),(1,1,165,11,10,40),(1,1,165,11,10,42),(1,1,165,11,10,43),(1,1,165,11,10,44),(1,1,165,11,10,45),(1,1,165,11,10,47),(1,1,165,11,10,48),(1,1,165,11,10,51),(1,1,165,11,10,55),(1,1,165,11,10,56),(1,1,165,11,10,58),(1,1,165,11,10,59),(1,1,165,11,10,60),(1,1,165,11,10,61),(1,1,165,11,20,18),(1,1,165,11,20,19),(1,1,165,11,20,20),(1,1,165,11,30,21),(1,1,165,11,30,22),(1,1,165,11,30,23),(1,1,165,11,40,24),(1,1,165,11,40,25),(1,1,165,11,40,26),(1,1,165,11,50,27),(1,1,165,11,60,28),(1,1,165,11,60,29),(1,1,166,10,10,2),(1,1,166,10,10,3),(1,1,166,10,20,4),(1,1,166,10,20,5),(1,1,166,10,30,6),(1,1,166,10,30,7),(1,1,166,10,40,8),(1,1,166,10,40,9),(1,1,166,10,50,10),(1,1,166,10,50,11),(1,1,166,10,60,12),(1,1,166,11,10,14),(1,1,166,11,10,15),(1,1,166,11,10,17),(1,1,166,11,10,40),(1,1,166,11,10,42),(1,1,166,11,10,43),(1,1,166,11,10,44),(1,1,166,11,10,45),(1,1,166,11,10,47),(1,1,166,11,10,48),(1,1,166,11,10,51),(1,1,166,11,10,55),(1,1,166,11,10,56),(1,1,166,11,10,58),(1,1,166,11,10,59),(1,1,166,11,10,60),(1,1,166,11,10,61),(1,1,166,11,20,18),(1,1,166,11,20,19),(1,1,166,11,20,20),(1,1,166,11,30,21),(1,1,166,11,30,22),(1,1,166,11,30,23),(1,1,166,11,40,24),(1,1,166,11,40,25),(1,1,166,11,40,26),(1,1,166,11,50,27),(1,1,166,11,60,28),(1,1,166,11,60,29),(1,1,167,10,10,2),(1,1,167,10,10,3),(1,1,167,10,20,4),(1,1,167,10,20,5),(1,1,167,10,30,6),(1,1,167,10,30,7),(1,1,167,10,40,8),(1,1,167,10,40,9),(1,1,167,10,50,10),(1,1,167,10,50,11),(1,1,167,10,60,12),(1,1,167,11,10,14),(1,1,167,11,10,15),(1,1,167,11,10,17),(1,1,167,11,10,40),(1,1,167,11,10,42),(1,1,167,11,10,43),(1,1,167,11,10,44),(1,1,167,11,10,45),(1,1,167,11,10,47),(1,1,167,11,10,48),(1,1,167,11,10,51),(1,1,167,11,10,55),(1,1,167,11,10,56),(1,1,167,11,10,58),(1,1,167,11,10,59),(1,1,167,11,10,60),(1,1,167,11,10,61),(1,1,167,11,20,18),(1,1,167,11,20,19),(1,1,167,11,20,20),(1,1,167,11,30,21),(1,1,167,11,30,22),(1,1,167,11,30,23),(1,1,167,11,40,24),(1,1,167,11,40,25),(1,1,167,11,40,26),(1,1,167,11,50,27),(1,1,167,11,60,28),(1,1,167,11,60,29),(1,1,168,10,10,2),(1,1,168,10,10,3),(1,1,168,10,20,4),(1,1,168,10,20,5),(1,1,168,10,30,6),(1,1,168,10,30,7),(1,1,168,10,40,8),(1,1,168,10,40,9),(1,1,168,10,50,10),(1,1,168,10,50,11),(1,1,168,10,60,12),(1,1,168,11,10,14),(1,1,168,11,10,15),(1,1,168,11,10,17),(1,1,168,11,10,40),(1,1,168,11,10,42),(1,1,168,11,10,43),(1,1,168,11,10,44),(1,1,168,11,10,45),(1,1,168,11,10,47),(1,1,168,11,10,48),(1,1,168,11,10,51),(1,1,168,11,10,55),(1,1,168,11,10,56),(1,1,168,11,10,58),(1,1,168,11,10,59),(1,1,168,11,10,60),(1,1,168,11,10,61),(1,1,168,11,20,18),(1,1,168,11,20,19),(1,1,168,11,20,20),(1,1,168,11,30,21),(1,1,168,11,30,22),(1,1,168,11,30,23),(1,1,168,11,40,24),(1,1,168,11,40,25),(1,1,168,11,40,26),(1,1,168,11,50,27),(1,1,168,11,60,28),(1,1,168,11,60,29),(1,1,169,10,10,2),(1,1,169,10,10,3),(1,1,169,10,20,4),(1,1,169,10,20,5),(1,1,169,10,30,6),(1,1,169,10,30,7),(1,1,169,10,40,8),(1,1,169,10,40,9),(1,1,169,10,50,10),(1,1,169,10,50,11),(1,1,169,10,60,12),(1,1,169,11,10,14),(1,1,169,11,10,15),(1,1,169,11,10,17),(1,1,169,11,10,40),(1,1,169,11,10,42),(1,1,169,11,10,43),(1,1,169,11,10,44),(1,1,169,11,10,45),(1,1,169,11,10,47),(1,1,169,11,10,48),(1,1,169,11,10,51),(1,1,169,11,10,55),(1,1,169,11,10,56),(1,1,169,11,10,58),(1,1,169,11,10,59),(1,1,169,11,10,60),(1,1,169,11,10,61),(1,1,169,11,20,18),(1,1,169,11,20,19),(1,1,169,11,20,20),(1,1,169,11,30,21),(1,1,169,11,30,22),(1,1,169,11,30,23),(1,1,169,11,40,24),(1,1,169,11,40,25),(1,1,169,11,40,26),(1,1,169,11,50,27),(1,1,169,11,60,28),(1,1,169,11,60,29),(1,1,170,10,10,2),(1,1,170,10,10,3),(1,1,170,10,20,4),(1,1,170,10,20,5),(1,1,170,10,30,6),(1,1,170,10,30,7),(1,1,170,10,40,8),(1,1,170,10,40,9),(1,1,170,10,50,10),(1,1,170,10,50,11),(1,1,170,10,60,12),(1,1,170,11,10,14),(1,1,170,11,10,15),(1,1,170,11,10,17),(1,1,170,11,10,40),(1,1,170,11,10,42),(1,1,170,11,10,43),(1,1,170,11,10,44),(1,1,170,11,10,45),(1,1,170,11,10,47),(1,1,170,11,10,48),(1,1,170,11,10,51),(1,1,170,11,10,55),(1,1,170,11,10,56),(1,1,170,11,10,58),(1,1,170,11,10,59),(1,1,170,11,10,60),(1,1,170,11,10,61),(1,1,170,11,20,18),(1,1,170,11,20,19),(1,1,170,11,20,20),(1,1,170,11,30,21),(1,1,170,11,30,22),(1,1,170,11,30,23),(1,1,170,11,40,24),(1,1,170,11,40,25),(1,1,170,11,40,26),(1,1,170,11,50,27),(1,1,170,11,60,28),(1,1,170,11,60,29),(1,1,171,10,10,2),(1,1,171,10,10,3),(1,1,171,10,20,4),(1,1,171,10,20,5),(1,1,171,10,30,6),(1,1,171,10,30,7),(1,1,171,10,40,8),(1,1,171,10,40,9),(1,1,171,10,50,10),(1,1,171,10,50,11),(1,1,171,10,60,12),(1,1,171,11,10,14),(1,1,171,11,10,15),(1,1,171,11,10,17),(1,1,171,11,10,40),(1,1,171,11,10,42),(1,1,171,11,10,43),(1,1,171,11,10,44),(1,1,171,11,10,45),(1,1,171,11,10,47),(1,1,171,11,10,48),(1,1,171,11,10,51),(1,1,171,11,10,55),(1,1,171,11,10,56),(1,1,171,11,10,58),(1,1,171,11,10,59),(1,1,171,11,10,60),(1,1,171,11,10,61),(1,1,171,11,20,18),(1,1,171,11,20,19),(1,1,171,11,20,20),(1,1,171,11,30,21),(1,1,171,11,30,22),(1,1,171,11,30,23),(1,1,171,11,40,24),(1,1,171,11,40,25),(1,1,171,11,40,26),(1,1,171,11,50,27),(1,1,171,11,60,28),(1,1,171,11,60,29),(1,1,172,10,10,2),(1,1,172,10,10,3),(1,1,172,10,20,4),(1,1,172,10,20,5),(1,1,172,10,30,6),(1,1,172,10,30,7),(1,1,172,10,40,8),(1,1,172,10,40,9),(1,1,172,10,50,10),(1,1,172,10,50,11),(1,1,172,10,60,12),(1,1,172,11,10,14),(1,1,172,11,10,15),(1,1,172,11,10,17),(1,1,172,11,10,40),(1,1,172,11,10,42),(1,1,172,11,10,43),(1,1,172,11,10,44),(1,1,172,11,10,45),(1,1,172,11,10,47),(1,1,172,11,10,48),(1,1,172,11,10,51),(1,1,172,11,10,55),(1,1,172,11,10,56),(1,1,172,11,10,58),(1,1,172,11,10,59),(1,1,172,11,10,60),(1,1,172,11,10,61),(1,1,172,11,20,18),(1,1,172,11,20,19),(1,1,172,11,20,20),(1,1,172,11,30,21),(1,1,172,11,30,22),(1,1,172,11,30,23),(1,1,172,11,40,24),(1,1,172,11,40,25),(1,1,172,11,40,26),(1,1,172,11,50,27),(1,1,172,11,60,28),(1,1,172,11,60,29),(1,1,173,10,10,2),(1,1,173,10,10,3),(1,1,173,10,20,4),(1,1,173,10,20,5),(1,1,173,10,30,6),(1,1,173,10,30,7),(1,1,173,10,40,8),(1,1,173,10,40,9),(1,1,173,10,50,10),(1,1,173,10,50,11),(1,1,173,10,60,12),(1,1,173,11,10,14),(1,1,173,11,10,15),(1,1,173,11,10,17),(1,1,173,11,10,40),(1,1,173,11,10,42),(1,1,173,11,10,43),(1,1,173,11,10,44),(1,1,173,11,10,45),(1,1,173,11,10,47),(1,1,173,11,10,48),(1,1,173,11,10,51),(1,1,173,11,10,55),(1,1,173,11,10,56),(1,1,173,11,10,58),(1,1,173,11,10,59),(1,1,173,11,10,60),(1,1,173,11,10,61),(1,1,173,11,20,18),(1,1,173,11,20,19),(1,1,173,11,20,20),(1,1,173,11,30,21),(1,1,173,11,30,22),(1,1,173,11,30,23),(1,1,173,11,40,24),(1,1,173,11,40,25),(1,1,173,11,40,26),(1,1,173,11,50,27),(1,1,173,11,60,28),(1,1,173,11,60,29),(1,1,174,10,10,2),(1,1,174,10,10,3),(1,1,174,10,20,4),(1,1,174,10,20,5),(1,1,174,10,30,6),(1,1,174,10,30,7),(1,1,174,10,40,8),(1,1,174,10,40,9),(1,1,174,10,50,10),(1,1,174,10,50,11),(1,1,174,10,60,12),(1,1,174,11,10,14),(1,1,174,11,10,15),(1,1,174,11,10,17),(1,1,174,11,10,40),(1,1,174,11,10,42),(1,1,174,11,10,43),(1,1,174,11,10,44),(1,1,174,11,10,45),(1,1,174,11,10,47),(1,1,174,11,10,48),(1,1,174,11,10,51),(1,1,174,11,10,55),(1,1,174,11,10,56),(1,1,174,11,10,58),(1,1,174,11,10,59),(1,1,174,11,10,60),(1,1,174,11,10,61),(1,1,174,11,20,18),(1,1,174,11,20,19),(1,1,174,11,20,20),(1,1,174,11,30,21),(1,1,174,11,30,22),(1,1,174,11,30,23),(1,1,174,11,40,24),(1,1,174,11,40,25),(1,1,174,11,40,26),(1,1,174,11,50,27),(1,1,174,11,60,28),(1,1,174,11,60,29),(1,1,175,10,10,2),(1,1,175,10,10,3),(1,1,175,10,20,4),(1,1,175,10,20,5),(1,1,175,10,30,6),(1,1,175,10,30,7),(1,1,175,10,40,8),(1,1,175,10,40,9),(1,1,175,10,50,10),(1,1,175,10,50,11),(1,1,175,10,60,12),(1,1,175,11,10,14),(1,1,175,11,10,15),(1,1,175,11,10,17),(1,1,175,11,10,40),(1,1,175,11,10,42),(1,1,175,11,10,43),(1,1,175,11,10,44),(1,1,175,11,10,45),(1,1,175,11,10,47),(1,1,175,11,10,48),(1,1,175,11,10,51),(1,1,175,11,10,55),(1,1,175,11,10,56),(1,1,175,11,10,58),(1,1,175,11,10,59),(1,1,175,11,10,60),(1,1,175,11,10,61),(1,1,175,11,20,18),(1,1,175,11,20,19),(1,1,175,11,20,20),(1,1,175,11,30,21),(1,1,175,11,30,22),(1,1,175,11,30,23),(1,1,175,11,40,24),(1,1,175,11,40,25),(1,1,175,11,40,26),(1,1,175,11,50,27),(1,1,175,11,60,28),(1,1,175,11,60,29),(1,1,176,10,10,2),(1,1,176,10,10,3),(1,1,176,10,20,4),(1,1,176,10,20,5),(1,1,176,10,30,6),(1,1,176,10,30,7),(1,1,176,10,40,8),(1,1,176,10,40,9),(1,1,176,10,50,10),(1,1,176,10,50,11),(1,1,176,10,60,12),(1,1,176,11,10,14),(1,1,176,11,10,15),(1,1,176,11,10,17),(1,1,176,11,10,40),(1,1,176,11,10,42),(1,1,176,11,10,43),(1,1,176,11,10,44),(1,1,176,11,10,45),(1,1,176,11,10,47),(1,1,176,11,10,48),(1,1,176,11,10,51),(1,1,176,11,10,55),(1,1,176,11,10,56),(1,1,176,11,10,58),(1,1,176,11,10,59),(1,1,176,11,10,60),(1,1,176,11,10,61),(1,1,176,11,20,18),(1,1,176,11,20,19),(1,1,176,11,20,20),(1,1,176,11,30,21),(1,1,176,11,30,22),(1,1,176,11,30,23),(1,1,176,11,40,24),(1,1,176,11,40,25),(1,1,176,11,40,26),(1,1,176,11,50,27),(1,1,176,11,60,28),(1,1,176,11,60,29),(1,1,177,10,10,2),(1,1,177,10,10,3),(1,1,177,10,20,4),(1,1,177,10,20,5),(1,1,177,10,30,6),(1,1,177,10,30,7),(1,1,177,10,40,8),(1,1,177,10,40,9),(1,1,177,10,50,10),(1,1,177,10,50,11),(1,1,177,10,60,12),(1,1,177,11,10,14),(1,1,177,11,10,15),(1,1,177,11,10,17),(1,1,177,11,10,40),(1,1,177,11,10,42),(1,1,177,11,10,43),(1,1,177,11,10,44),(1,1,177,11,10,45),(1,1,177,11,10,47),(1,1,177,11,10,48),(1,1,177,11,10,51),(1,1,177,11,10,55),(1,1,177,11,10,56),(1,1,177,11,10,58),(1,1,177,11,10,59),(1,1,177,11,10,60),(1,1,177,11,10,61),(1,1,177,11,20,18),(1,1,177,11,20,19),(1,1,177,11,20,20),(1,1,177,11,30,21),(1,1,177,11,30,22),(1,1,177,11,30,23),(1,1,177,11,40,24),(1,1,177,11,40,25),(1,1,177,11,40,26),(1,1,177,11,50,27),(1,1,177,11,60,28),(1,1,177,11,60,29),(1,1,178,10,10,2),(1,1,178,10,10,3),(1,1,178,10,20,4),(1,1,178,10,20,5),(1,1,178,10,30,6),(1,1,178,10,30,7),(1,1,178,10,40,8),(1,1,178,10,40,9),(1,1,178,10,50,10),(1,1,178,10,50,11),(1,1,178,10,60,12),(1,1,178,11,10,14),(1,1,178,11,10,15),(1,1,178,11,10,17),(1,1,178,11,10,40),(1,1,178,11,10,42),(1,1,178,11,10,43),(1,1,178,11,10,44),(1,1,178,11,10,45),(1,1,178,11,10,47),(1,1,178,11,10,48),(1,1,178,11,10,51),(1,1,178,11,10,55),(1,1,178,11,10,56),(1,1,178,11,10,58),(1,1,178,11,10,59),(1,1,178,11,10,60),(1,1,178,11,10,61),(1,1,178,11,20,18),(1,1,178,11,20,19),(1,1,178,11,20,20),(1,1,178,11,30,21),(1,1,178,11,30,22),(1,1,178,11,30,23),(1,1,178,11,40,24),(1,1,178,11,40,25),(1,1,178,11,40,26),(1,1,178,11,50,27),(1,1,178,11,60,28),(1,1,178,11,60,29),(1,1,179,10,10,2),(1,1,179,10,10,3),(1,1,179,10,20,4),(1,1,179,10,20,5),(1,1,179,10,30,6),(1,1,179,10,30,7),(1,1,179,10,40,8),(1,1,179,10,40,9),(1,1,179,10,50,10),(1,1,179,10,50,11),(1,1,179,10,60,12),(1,1,179,11,10,14),(1,1,179,11,10,15),(1,1,179,11,10,17),(1,1,179,11,10,40),(1,1,179,11,10,42),(1,1,179,11,10,43),(1,1,179,11,10,44),(1,1,179,11,10,45),(1,1,179,11,10,47),(1,1,179,11,10,48),(1,1,179,11,10,51),(1,1,179,11,10,55),(1,1,179,11,10,56),(1,1,179,11,10,58),(1,1,179,11,10,59),(1,1,179,11,10,60),(1,1,179,11,10,61),(1,1,179,11,20,18),(1,1,179,11,20,19),(1,1,179,11,20,20),(1,1,179,11,30,21),(1,1,179,11,30,22),(1,1,179,11,30,23),(1,1,179,11,40,24),(1,1,179,11,40,25),(1,1,179,11,40,26),(1,1,179,11,50,27),(1,1,179,11,60,28),(1,1,179,11,60,29),(1,1,180,10,10,2),(1,1,180,10,10,3),(1,1,180,10,20,4),(1,1,180,10,20,5),(1,1,180,10,30,6),(1,1,180,10,30,7),(1,1,180,10,40,8),(1,1,180,10,40,9),(1,1,180,10,50,10),(1,1,180,10,50,11),(1,1,180,10,60,12),(1,1,180,11,10,14),(1,1,180,11,10,15),(1,1,180,11,10,17),(1,1,180,11,10,40),(1,1,180,11,10,42),(1,1,180,11,10,43),(1,1,180,11,10,44),(1,1,180,11,10,45),(1,1,180,11,10,47),(1,1,180,11,10,48),(1,1,180,11,10,51),(1,1,180,11,10,55),(1,1,180,11,10,56),(1,1,180,11,10,58),(1,1,180,11,10,59),(1,1,180,11,10,60),(1,1,180,11,10,61),(1,1,180,11,20,18),(1,1,180,11,20,19),(1,1,180,11,20,20),(1,1,180,11,30,21),(1,1,180,11,30,22),(1,1,180,11,30,23),(1,1,180,11,40,24),(1,1,180,11,40,25),(1,1,180,11,40,26),(1,1,180,11,50,27),(1,1,180,11,60,28),(1,1,180,11,60,29),(1,1,181,10,10,2),(1,1,181,10,10,3),(1,1,181,10,20,4),(1,1,181,10,20,5),(1,1,181,10,30,6),(1,1,181,10,30,7),(1,1,181,10,40,8),(1,1,181,10,40,9),(1,1,181,10,50,10),(1,1,181,10,50,11),(1,1,181,10,60,12),(1,1,181,11,10,14),(1,1,181,11,10,15),(1,1,181,11,10,17),(1,1,181,11,10,40),(1,1,181,11,10,42),(1,1,181,11,10,43),(1,1,181,11,10,44),(1,1,181,11,10,45),(1,1,181,11,10,47),(1,1,181,11,10,48),(1,1,181,11,10,51),(1,1,181,11,10,55),(1,1,181,11,10,56),(1,1,181,11,10,58),(1,1,181,11,10,59),(1,1,181,11,10,60),(1,1,181,11,10,61),(1,1,181,11,20,18),(1,1,181,11,20,19),(1,1,181,11,20,20),(1,1,181,11,30,21),(1,1,181,11,30,22),(1,1,181,11,30,23),(1,1,181,11,40,24),(1,1,181,11,40,25),(1,1,181,11,40,26),(1,1,181,11,50,27),(1,1,181,11,60,28),(1,1,181,11,60,29),(1,1,182,1,5,1),(1,1,182,1,5,32),(1,1,182,1,5,34),(1,1,182,10,10,2),(1,1,182,10,10,3),(1,1,182,10,20,4),(1,1,182,10,20,5),(1,1,182,10,30,6),(1,1,182,10,30,7),(1,1,182,10,40,8),(1,1,182,10,40,9),(1,1,182,10,50,10),(1,1,182,10,50,11),(1,1,182,10,60,12),(1,1,182,10,100,13),(1,1,182,11,10,14),(1,1,182,11,10,15),(1,1,182,11,10,16),(1,1,182,11,10,17),(1,1,182,11,10,40),(1,1,182,11,10,41),(1,1,182,11,10,42),(1,1,182,11,10,43),(1,1,182,11,10,44),(1,1,182,11,10,45),(1,1,182,11,10,46),(1,1,182,11,10,47),(1,1,182,11,10,48),(1,1,182,11,10,49),(1,1,182,11,10,51),(1,1,182,11,10,54),(1,1,182,11,10,55),(1,1,182,11,10,56),(1,1,182,11,10,57),(1,1,182,11,10,58),(1,1,182,11,10,59),(1,1,182,11,10,60),(1,1,182,11,10,61),(1,1,182,11,20,18),(1,1,182,11,20,19),(1,1,182,11,20,20),(1,1,182,11,30,21),(1,1,182,11,30,22),(1,1,182,11,30,23),(1,1,182,11,40,24),(1,1,182,11,40,25),(1,1,182,11,40,26),(1,1,182,11,50,27),(1,1,182,11,60,28),(1,1,182,11,60,29),(1,1,182,11,100,30),(1,1,183,10,10,2),(1,1,183,10,10,3),(1,1,183,10,20,4),(1,1,183,10,20,5),(1,1,183,10,30,6),(1,1,183,10,30,7),(1,1,183,10,40,8),(1,1,183,10,40,9),(1,1,183,10,50,10),(1,1,183,10,50,11),(1,1,183,10,60,12),(1,1,183,11,10,14),(1,1,183,11,10,15),(1,1,183,11,10,17),(1,1,183,11,10,40),(1,1,183,11,10,42),(1,1,183,11,10,43),(1,1,183,11,10,44),(1,1,183,11,10,45),(1,1,183,11,10,47),(1,1,183,11,10,48),(1,1,183,11,10,51),(1,1,183,11,10,55),(1,1,183,11,10,56),(1,1,183,11,10,58),(1,1,183,11,10,59),(1,1,183,11,10,60),(1,1,183,11,10,61),(1,1,183,11,20,18),(1,1,183,11,20,19),(1,1,183,11,20,20),(1,1,183,11,30,21),(1,1,183,11,30,22),(1,1,183,11,30,23),(1,1,183,11,40,24),(1,1,183,11,40,25),(1,1,183,11,40,26),(1,1,183,11,50,27),(1,1,183,11,60,28),(1,1,183,11,60,29),(1,1,184,10,10,2),(1,1,184,10,10,3),(1,1,184,10,20,4),(1,1,184,10,20,5),(1,1,184,10,30,6),(1,1,184,10,30,7),(1,1,184,10,40,8),(1,1,184,10,40,9),(1,1,184,10,50,10),(1,1,184,10,50,11),(1,1,184,10,60,12),(1,1,184,11,10,14),(1,1,184,11,10,15),(1,1,184,11,10,17),(1,1,184,11,10,40),(1,1,184,11,10,42),(1,1,184,11,10,43),(1,1,184,11,10,44),(1,1,184,11,10,45),(1,1,184,11,10,47),(1,1,184,11,10,48),(1,1,184,11,10,51),(1,1,184,11,10,55),(1,1,184,11,10,56),(1,1,184,11,10,58),(1,1,184,11,10,59),(1,1,184,11,10,60),(1,1,184,11,10,61),(1,1,184,11,20,18),(1,1,184,11,20,19),(1,1,184,11,20,20),(1,1,184,11,30,21),(1,1,184,11,30,22),(1,1,184,11,30,23),(1,1,184,11,40,24),(1,1,184,11,40,25),(1,1,184,11,40,26),(1,1,184,11,50,27),(1,1,184,11,60,28),(1,1,184,11,60,29),(1,1,185,10,10,2),(1,1,185,10,10,3),(1,1,185,10,20,4),(1,1,185,10,20,5),(1,1,185,10,30,6),(1,1,185,10,30,7),(1,1,185,10,40,8),(1,1,185,10,40,9),(1,1,185,10,50,10),(1,1,185,10,50,11),(1,1,185,10,60,12),(1,1,185,11,10,14),(1,1,185,11,10,15),(1,1,185,11,10,17),(1,1,185,11,10,40),(1,1,185,11,10,42),(1,1,185,11,10,43),(1,1,185,11,10,44),(1,1,185,11,10,45),(1,1,185,11,10,47),(1,1,185,11,10,48),(1,1,185,11,10,51),(1,1,185,11,10,55),(1,1,185,11,10,56),(1,1,185,11,10,58),(1,1,185,11,10,59),(1,1,185,11,10,60),(1,1,185,11,10,61),(1,1,185,11,20,18),(1,1,185,11,20,19),(1,1,185,11,20,20),(1,1,185,11,30,21),(1,1,185,11,30,22),(1,1,185,11,30,23),(1,1,185,11,40,24),(1,1,185,11,40,25),(1,1,185,11,40,26),(1,1,185,11,50,27),(1,1,185,11,60,28),(1,1,185,11,60,29),(1,1,186,10,10,2),(1,1,186,10,10,3),(1,1,186,10,20,4),(1,1,186,10,20,5),(1,1,186,10,30,6),(1,1,186,10,30,7),(1,1,186,10,40,8),(1,1,186,10,40,9),(1,1,186,10,50,10),(1,1,186,10,50,11),(1,1,186,10,60,12),(1,1,186,11,10,14),(1,1,186,11,10,15),(1,1,186,11,10,17),(1,1,186,11,10,40),(1,1,186,11,10,42),(1,1,186,11,10,43),(1,1,186,11,10,44),(1,1,186,11,10,45),(1,1,186,11,10,47),(1,1,186,11,10,48),(1,1,186,11,10,51),(1,1,186,11,10,55),(1,1,186,11,10,56),(1,1,186,11,10,58),(1,1,186,11,10,59),(1,1,186,11,10,60),(1,1,186,11,10,61),(1,1,186,11,20,18),(1,1,186,11,20,19),(1,1,186,11,20,20),(1,1,186,11,30,21),(1,1,186,11,30,22),(1,1,186,11,30,23),(1,1,186,11,40,24),(1,1,186,11,40,25),(1,1,186,11,40,26),(1,1,186,11,50,27),(1,1,186,11,60,28),(1,1,186,11,60,29),(1,1,187,10,10,2),(1,1,187,10,10,3),(1,1,187,10,20,4),(1,1,187,10,20,5),(1,1,187,10,30,6),(1,1,187,10,30,7),(1,1,187,10,40,8),(1,1,187,10,40,9),(1,1,187,10,50,10),(1,1,187,10,50,11),(1,1,187,10,60,12),(1,1,187,11,10,14),(1,1,187,11,10,15),(1,1,187,11,10,17),(1,1,187,11,10,40),(1,1,187,11,10,42),(1,1,187,11,10,43),(1,1,187,11,10,44),(1,1,187,11,10,45),(1,1,187,11,10,47),(1,1,187,11,10,48),(1,1,187,11,10,51),(1,1,187,11,10,55),(1,1,187,11,10,56),(1,1,187,11,10,58),(1,1,187,11,10,59),(1,1,187,11,10,60),(1,1,187,11,10,61),(1,1,187,11,20,18),(1,1,187,11,20,19),(1,1,187,11,20,20),(1,1,187,11,30,21),(1,1,187,11,30,22),(1,1,187,11,30,23),(1,1,187,11,40,24),(1,1,187,11,40,25),(1,1,187,11,40,26),(1,1,187,11,50,27),(1,1,187,11,60,28),(1,1,187,11,60,29),(1,1,188,10,10,2),(1,1,188,10,10,3),(1,1,188,10,20,4),(1,1,188,10,20,5),(1,1,188,10,30,6),(1,1,188,10,30,7),(1,1,188,10,40,8),(1,1,188,10,40,9),(1,1,188,10,50,10),(1,1,188,10,50,11),(1,1,188,10,60,12),(1,1,188,11,10,14),(1,1,188,11,10,15),(1,1,188,11,10,17),(1,1,188,11,10,40),(1,1,188,11,10,42),(1,1,188,11,10,43),(1,1,188,11,10,44),(1,1,188,11,10,45),(1,1,188,11,10,47),(1,1,188,11,10,48),(1,1,188,11,10,51),(1,1,188,11,10,55),(1,1,188,11,10,56),(1,1,188,11,10,58),(1,1,188,11,10,59),(1,1,188,11,10,60),(1,1,188,11,10,61),(1,1,188,11,20,18),(1,1,188,11,20,19),(1,1,188,11,20,20),(1,1,188,11,30,21),(1,1,188,11,30,22),(1,1,188,11,30,23),(1,1,188,11,40,24),(1,1,188,11,40,25),(1,1,188,11,40,26),(1,1,188,11,50,27),(1,1,188,11,60,28),(1,1,188,11,60,29),(1,1,189,10,10,2),(1,1,189,10,10,3),(1,1,189,10,20,4),(1,1,189,10,20,5),(1,1,189,10,30,6),(1,1,189,10,30,7),(1,1,189,10,40,8),(1,1,189,10,40,9),(1,1,189,10,50,10),(1,1,189,10,50,11),(1,1,189,10,60,12),(1,1,189,11,10,14),(1,1,189,11,10,15),(1,1,189,11,10,17),(1,1,189,11,10,40),(1,1,189,11,10,42),(1,1,189,11,10,43),(1,1,189,11,10,44),(1,1,189,11,10,45),(1,1,189,11,10,47),(1,1,189,11,10,48),(1,1,189,11,10,51),(1,1,189,11,10,55),(1,1,189,11,10,56),(1,1,189,11,10,58),(1,1,189,11,10,59),(1,1,189,11,10,60),(1,1,189,11,10,61),(1,1,189,11,20,18),(1,1,189,11,20,19),(1,1,189,11,20,20),(1,1,189,11,30,21),(1,1,189,11,30,22),(1,1,189,11,30,23),(1,1,189,11,40,24),(1,1,189,11,40,25),(1,1,189,11,40,26),(1,1,189,11,50,27),(1,1,189,11,60,28),(1,1,189,11,60,29),(1,1,190,10,10,2),(1,1,190,10,10,3),(1,1,190,10,20,4),(1,1,190,10,20,5),(1,1,190,10,30,6),(1,1,190,10,30,7),(1,1,190,10,40,8),(1,1,190,10,40,9),(1,1,190,10,50,10),(1,1,190,10,50,11),(1,1,190,10,60,12),(1,1,190,11,10,14),(1,1,190,11,10,15),(1,1,190,11,10,17),(1,1,190,11,10,40),(1,1,190,11,10,42),(1,1,190,11,10,43),(1,1,190,11,10,44),(1,1,190,11,10,45),(1,1,190,11,10,47),(1,1,190,11,10,48),(1,1,190,11,10,51),(1,1,190,11,10,55),(1,1,190,11,10,56),(1,1,190,11,10,58),(1,1,190,11,10,59),(1,1,190,11,10,60),(1,1,190,11,10,61),(1,1,190,11,20,18),(1,1,190,11,20,19),(1,1,190,11,20,20),(1,1,190,11,30,21),(1,1,190,11,30,22),(1,1,190,11,30,23),(1,1,190,11,40,24),(1,1,190,11,40,25),(1,1,190,11,40,26),(1,1,190,11,50,27),(1,1,190,11,60,28),(1,1,190,11,60,29),(1,1,191,10,10,2),(1,1,191,10,10,3),(1,1,191,10,20,4),(1,1,191,10,20,5),(1,1,191,10,30,6),(1,1,191,10,30,7),(1,1,191,10,40,8),(1,1,191,10,40,9),(1,1,191,10,50,10),(1,1,191,10,50,11),(1,1,191,10,60,12),(1,1,191,11,10,14),(1,1,191,11,10,15),(1,1,191,11,10,17),(1,1,191,11,10,40),(1,1,191,11,10,42),(1,1,191,11,10,43),(1,1,191,11,10,44),(1,1,191,11,10,45),(1,1,191,11,10,47),(1,1,191,11,10,48),(1,1,191,11,10,51),(1,1,191,11,10,55),(1,1,191,11,10,56),(1,1,191,11,10,58),(1,1,191,11,10,59),(1,1,191,11,10,60),(1,1,191,11,10,61),(1,1,191,11,20,18),(1,1,191,11,20,19),(1,1,191,11,20,20),(1,1,191,11,30,21),(1,1,191,11,30,22),(1,1,191,11,30,23),(1,1,191,11,40,24),(1,1,191,11,40,25),(1,1,191,11,40,26),(1,1,191,11,50,27),(1,1,191,11,60,28),(1,1,191,11,60,29),(1,1,192,10,10,2),(1,1,192,10,10,3),(1,1,192,10,20,4),(1,1,192,10,20,5),(1,1,192,10,30,6),(1,1,192,10,30,7),(1,1,192,10,40,8),(1,1,192,10,40,9),(1,1,192,10,50,10),(1,1,192,10,50,11),(1,1,192,10,60,12),(1,1,192,11,10,14),(1,1,192,11,10,15),(1,1,192,11,10,17),(1,1,192,11,10,40),(1,1,192,11,10,42),(1,1,192,11,10,43),(1,1,192,11,10,44),(1,1,192,11,10,45),(1,1,192,11,10,47),(1,1,192,11,10,48),(1,1,192,11,10,51),(1,1,192,11,10,55),(1,1,192,11,10,56),(1,1,192,11,10,58),(1,1,192,11,10,59),(1,1,192,11,10,60),(1,1,192,11,10,61),(1,1,192,11,20,18),(1,1,192,11,20,19),(1,1,192,11,20,20),(1,1,192,11,30,21),(1,1,192,11,30,22),(1,1,192,11,30,23),(1,1,192,11,40,24),(1,1,192,11,40,25),(1,1,192,11,40,26),(1,1,192,11,50,27),(1,1,192,11,60,28),(1,1,192,11,60,29),(1,1,193,10,10,2),(1,1,193,10,10,3),(1,1,193,10,20,4),(1,1,193,10,20,5),(1,1,193,10,30,6),(1,1,193,10,30,7),(1,1,193,10,40,8),(1,1,193,10,40,9),(1,1,193,10,50,10),(1,1,193,10,50,11),(1,1,193,10,60,12),(1,1,193,11,10,14),(1,1,193,11,10,15),(1,1,193,11,10,17),(1,1,193,11,10,40),(1,1,193,11,10,42),(1,1,193,11,10,43),(1,1,193,11,10,44),(1,1,193,11,10,45),(1,1,193,11,10,47),(1,1,193,11,10,48),(1,1,193,11,10,51),(1,1,193,11,10,55),(1,1,193,11,10,56),(1,1,193,11,10,58),(1,1,193,11,10,59),(1,1,193,11,10,60),(1,1,193,11,10,61),(1,1,193,11,20,18),(1,1,193,11,20,19),(1,1,193,11,20,20),(1,1,193,11,30,21),(1,1,193,11,30,22),(1,1,193,11,30,23),(1,1,193,11,40,24),(1,1,193,11,40,25),(1,1,193,11,40,26),(1,1,193,11,50,27),(1,1,193,11,60,28),(1,1,193,11,60,29),(1,1,194,10,10,2),(1,1,194,10,10,3),(1,1,194,10,20,4),(1,1,194,10,20,5),(1,1,194,10,30,6),(1,1,194,10,30,7),(1,1,194,10,40,8),(1,1,194,10,40,9),(1,1,194,10,50,10),(1,1,194,10,50,11),(1,1,194,10,60,12),(1,1,194,11,10,14),(1,1,194,11,10,15),(1,1,194,11,10,17),(1,1,194,11,10,40),(1,1,194,11,10,42),(1,1,194,11,10,43),(1,1,194,11,10,44),(1,1,194,11,10,45),(1,1,194,11,10,47),(1,1,194,11,10,48),(1,1,194,11,10,51),(1,1,194,11,10,55),(1,1,194,11,10,56),(1,1,194,11,10,58),(1,1,194,11,10,59),(1,1,194,11,10,60),(1,1,194,11,10,61),(1,1,194,11,20,18),(1,1,194,11,20,19),(1,1,194,11,20,20),(1,1,194,11,30,21),(1,1,194,11,30,22),(1,1,194,11,30,23),(1,1,194,11,40,24),(1,1,194,11,40,25),(1,1,194,11,40,26),(1,1,194,11,50,27),(1,1,194,11,60,28),(1,1,194,11,60,29),(1,1,195,10,10,2),(1,1,195,10,10,3),(1,1,195,10,20,4),(1,1,195,10,20,5),(1,1,195,10,30,6),(1,1,195,10,30,7),(1,1,195,10,40,8),(1,1,195,10,40,9),(1,1,195,10,50,10),(1,1,195,10,50,11),(1,1,195,10,60,12),(1,1,195,11,10,14),(1,1,195,11,10,15),(1,1,195,11,10,17),(1,1,195,11,10,40),(1,1,195,11,10,42),(1,1,195,11,10,43),(1,1,195,11,10,44),(1,1,195,11,10,45),(1,1,195,11,10,47),(1,1,195,11,10,48),(1,1,195,11,10,51),(1,1,195,11,10,55),(1,1,195,11,10,56),(1,1,195,11,10,58),(1,1,195,11,10,59),(1,1,195,11,10,60),(1,1,195,11,10,61),(1,1,195,11,20,18),(1,1,195,11,20,19),(1,1,195,11,20,20),(1,1,195,11,30,21),(1,1,195,11,30,22),(1,1,195,11,30,23),(1,1,195,11,40,24),(1,1,195,11,40,25),(1,1,195,11,40,26),(1,1,195,11,50,27),(1,1,195,11,60,28),(1,1,195,11,60,29),(1,1,196,10,10,2),(1,1,196,10,10,3),(1,1,196,10,20,4),(1,1,196,10,20,5),(1,1,196,10,30,6),(1,1,196,10,30,7),(1,1,196,10,40,8),(1,1,196,10,40,9),(1,1,196,10,50,10),(1,1,196,10,50,11),(1,1,196,10,60,12),(1,1,196,11,10,14),(1,1,196,11,10,15),(1,1,196,11,10,17),(1,1,196,11,10,40),(1,1,196,11,10,42),(1,1,196,11,10,43),(1,1,196,11,10,44),(1,1,196,11,10,45),(1,1,196,11,10,47),(1,1,196,11,10,48),(1,1,196,11,10,51),(1,1,196,11,10,55),(1,1,196,11,10,56),(1,1,196,11,10,58),(1,1,196,11,10,59),(1,1,196,11,10,60),(1,1,196,11,10,61),(1,1,196,11,20,18),(1,1,196,11,20,19),(1,1,196,11,20,20),(1,1,196,11,30,21),(1,1,196,11,30,22),(1,1,196,11,30,23),(1,1,196,11,40,24),(1,1,196,11,40,25),(1,1,196,11,40,26),(1,1,196,11,50,27),(1,1,196,11,60,28),(1,1,196,11,60,29),(1,1,197,10,10,2),(1,1,197,10,10,3),(1,1,197,10,20,4),(1,1,197,10,20,5),(1,1,197,10,30,6),(1,1,197,10,30,7),(1,1,197,10,40,8),(1,1,197,10,40,9),(1,1,197,10,50,10),(1,1,197,10,50,11),(1,1,197,10,60,12),(1,1,197,11,10,14),(1,1,197,11,10,15),(1,1,197,11,10,17),(1,1,197,11,10,40),(1,1,197,11,10,42),(1,1,197,11,10,43),(1,1,197,11,10,44),(1,1,197,11,10,45),(1,1,197,11,10,47),(1,1,197,11,10,48),(1,1,197,11,10,51),(1,1,197,11,10,55),(1,1,197,11,10,56),(1,1,197,11,10,58),(1,1,197,11,10,59),(1,1,197,11,10,60),(1,1,197,11,10,61),(1,1,197,11,20,18),(1,1,197,11,20,19),(1,1,197,11,20,20),(1,1,197,11,30,21),(1,1,197,11,30,22),(1,1,197,11,30,23),(1,1,197,11,40,24),(1,1,197,11,40,25),(1,1,197,11,40,26),(1,1,197,11,50,27),(1,1,197,11,60,28),(1,1,197,11,60,29),(1,1,198,10,10,2),(1,1,198,10,10,3),(1,1,198,10,20,4),(1,1,198,10,20,5),(1,1,198,10,30,6),(1,1,198,10,30,7),(1,1,198,10,40,8),(1,1,198,10,40,9),(1,1,198,10,50,10),(1,1,198,10,50,11),(1,1,198,10,60,12),(1,1,198,11,10,14),(1,1,198,11,10,15),(1,1,198,11,10,17),(1,1,198,11,10,40),(1,1,198,11,10,42),(1,1,198,11,10,43),(1,1,198,11,10,44),(1,1,198,11,10,45),(1,1,198,11,10,47),(1,1,198,11,10,48),(1,1,198,11,10,51),(1,1,198,11,10,55),(1,1,198,11,10,56),(1,1,198,11,10,58),(1,1,198,11,10,59),(1,1,198,11,10,60),(1,1,198,11,10,61),(1,1,198,11,20,18),(1,1,198,11,20,19),(1,1,198,11,20,20),(1,1,198,11,30,21),(1,1,198,11,30,22),(1,1,198,11,30,23),(1,1,198,11,40,24),(1,1,198,11,40,25),(1,1,198,11,40,26),(1,1,198,11,50,27),(1,1,198,11,60,28),(1,1,198,11,60,29),(1,1,199,10,10,2),(1,1,199,10,10,3),(1,1,199,10,20,4),(1,1,199,10,20,5),(1,1,199,10,30,6),(1,1,199,10,30,7),(1,1,199,10,40,8),(1,1,199,10,40,9),(1,1,199,10,50,10),(1,1,199,10,50,11),(1,1,199,10,60,12),(1,1,199,11,10,14),(1,1,199,11,10,15),(1,1,199,11,10,17),(1,1,199,11,10,40),(1,1,199,11,10,42),(1,1,199,11,10,43),(1,1,199,11,10,44),(1,1,199,11,10,45),(1,1,199,11,10,47),(1,1,199,11,10,48),(1,1,199,11,10,51),(1,1,199,11,10,55),(1,1,199,11,10,56),(1,1,199,11,10,58),(1,1,199,11,10,59),(1,1,199,11,10,60),(1,1,199,11,10,61),(1,1,199,11,20,18),(1,1,199,11,20,19),(1,1,199,11,20,20),(1,1,199,11,30,21),(1,1,199,11,30,22),(1,1,199,11,30,23),(1,1,199,11,40,24),(1,1,199,11,40,25),(1,1,199,11,40,26),(1,1,199,11,50,27),(1,1,199,11,60,28),(1,1,199,11,60,29),(1,1,200,10,10,2),(1,1,200,10,10,3),(1,1,200,10,20,4),(1,1,200,10,20,5),(1,1,200,10,30,6),(1,1,200,10,30,7),(1,1,200,10,40,8),(1,1,200,10,40,9),(1,1,200,10,50,10),(1,1,200,10,50,11),(1,1,200,10,60,12),(1,1,200,11,10,14),(1,1,200,11,10,15),(1,1,200,11,10,17),(1,1,200,11,10,40),(1,1,200,11,10,42),(1,1,200,11,10,43),(1,1,200,11,10,44),(1,1,200,11,10,45),(1,1,200,11,10,47),(1,1,200,11,10,48),(1,1,200,11,10,51),(1,1,200,11,10,55),(1,1,200,11,10,56),(1,1,200,11,10,58),(1,1,200,11,10,59),(1,1,200,11,10,60),(1,1,200,11,10,61),(1,1,200,11,20,18),(1,1,200,11,20,19),(1,1,200,11,20,20),(1,1,200,11,30,21),(1,1,200,11,30,22),(1,1,200,11,30,23),(1,1,200,11,40,24),(1,1,200,11,40,25),(1,1,200,11,40,26),(1,1,200,11,50,27),(1,1,200,11,60,28),(1,1,200,11,60,29),(1,1,201,10,10,2),(1,1,201,10,10,3),(1,1,201,10,20,4),(1,1,201,10,20,5),(1,1,201,10,30,6),(1,1,201,10,30,7),(1,1,201,10,40,8),(1,1,201,10,40,9),(1,1,201,10,50,10),(1,1,201,10,50,11),(1,1,201,10,60,12),(1,1,201,11,10,14),(1,1,201,11,10,15),(1,1,201,11,10,17),(1,1,201,11,10,40),(1,1,201,11,10,42),(1,1,201,11,10,43),(1,1,201,11,10,44),(1,1,201,11,10,45),(1,1,201,11,10,47),(1,1,201,11,10,48),(1,1,201,11,10,51),(1,1,201,11,10,55),(1,1,201,11,10,56),(1,1,201,11,10,58),(1,1,201,11,10,59),(1,1,201,11,10,60),(1,1,201,11,10,61),(1,1,201,11,20,18),(1,1,201,11,20,19),(1,1,201,11,20,20),(1,1,201,11,30,21),(1,1,201,11,30,22),(1,1,201,11,30,23),(1,1,201,11,40,24),(1,1,201,11,40,25),(1,1,201,11,40,26),(1,1,201,11,50,27),(1,1,201,11,60,28),(1,1,201,11,60,29),(1,1,202,10,10,2),(1,1,202,10,10,3),(1,1,202,10,20,4),(1,1,202,10,20,5),(1,1,202,10,30,6),(1,1,202,10,30,7),(1,1,202,10,40,8),(1,1,202,10,40,9),(1,1,202,10,50,10),(1,1,202,10,50,11),(1,1,202,10,60,12),(1,1,202,11,10,14),(1,1,202,11,10,15),(1,1,202,11,10,17),(1,1,202,11,10,40),(1,1,202,11,10,42),(1,1,202,11,10,43),(1,1,202,11,10,44),(1,1,202,11,10,45),(1,1,202,11,10,47),(1,1,202,11,10,48),(1,1,202,11,10,51),(1,1,202,11,10,55),(1,1,202,11,10,56),(1,1,202,11,10,58),(1,1,202,11,10,59),(1,1,202,11,10,60),(1,1,202,11,10,61),(1,1,202,11,20,18),(1,1,202,11,20,19),(1,1,202,11,20,20),(1,1,202,11,30,21),(1,1,202,11,30,22),(1,1,202,11,30,23),(1,1,202,11,40,24),(1,1,202,11,40,25),(1,1,202,11,40,26),(1,1,202,11,50,27),(1,1,202,11,60,28),(1,1,202,11,60,29),(1,1,203,10,10,2),(1,1,203,10,10,3),(1,1,203,10,20,4),(1,1,203,10,20,5),(1,1,203,10,30,6),(1,1,203,10,30,7),(1,1,203,10,40,8),(1,1,203,10,40,9),(1,1,203,10,50,10),(1,1,203,10,50,11),(1,1,203,10,60,12),(1,1,203,11,10,14),(1,1,203,11,10,15),(1,1,203,11,10,17),(1,1,203,11,10,40),(1,1,203,11,10,42),(1,1,203,11,10,43),(1,1,203,11,10,44),(1,1,203,11,10,45),(1,1,203,11,10,47),(1,1,203,11,10,48),(1,1,203,11,10,51),(1,1,203,11,10,55),(1,1,203,11,10,56),(1,1,203,11,10,58),(1,1,203,11,10,59),(1,1,203,11,10,60),(1,1,203,11,10,61),(1,1,203,11,20,18),(1,1,203,11,20,19),(1,1,203,11,20,20),(1,1,203,11,30,21),(1,1,203,11,30,22),(1,1,203,11,30,23),(1,1,203,11,40,24),(1,1,203,11,40,25),(1,1,203,11,40,26),(1,1,203,11,50,27),(1,1,203,11,60,28),(1,1,203,11,60,29),(1,1,204,10,10,2),(1,1,204,10,10,3),(1,1,204,10,20,4),(1,1,204,10,20,5),(1,1,204,10,30,6),(1,1,204,10,30,7),(1,1,204,10,40,8),(1,1,204,10,40,9),(1,1,204,10,50,10),(1,1,204,10,50,11),(1,1,204,10,60,12),(1,1,204,11,10,14),(1,1,204,11,10,15),(1,1,204,11,10,17),(1,1,204,11,10,40),(1,1,204,11,10,42),(1,1,204,11,10,43),(1,1,204,11,10,44),(1,1,204,11,10,45),(1,1,204,11,10,47),(1,1,204,11,10,48),(1,1,204,11,10,51),(1,1,204,11,10,55),(1,1,204,11,10,56),(1,1,204,11,10,58),(1,1,204,11,10,59),(1,1,204,11,10,60),(1,1,204,11,10,61),(1,1,204,11,20,18),(1,1,204,11,20,19),(1,1,204,11,20,20),(1,1,204,11,30,21),(1,1,204,11,30,22),(1,1,204,11,30,23),(1,1,204,11,40,24),(1,1,204,11,40,25),(1,1,204,11,40,26),(1,1,204,11,50,27),(1,1,204,11,60,28),(1,1,204,11,60,29),(1,1,205,10,10,2),(1,1,205,10,10,3),(1,1,205,10,20,4),(1,1,205,10,20,5),(1,1,205,10,30,6),(1,1,205,10,30,7),(1,1,205,10,40,8),(1,1,205,10,40,9),(1,1,205,10,50,10),(1,1,205,10,50,11),(1,1,205,10,60,12),(1,1,205,11,10,14),(1,1,205,11,10,15),(1,1,205,11,10,17),(1,1,205,11,10,40),(1,1,205,11,10,42),(1,1,205,11,10,43),(1,1,205,11,10,44),(1,1,205,11,10,45),(1,1,205,11,10,47),(1,1,205,11,10,48),(1,1,205,11,10,51),(1,1,205,11,10,55),(1,1,205,11,10,56),(1,1,205,11,10,58),(1,1,205,11,10,59),(1,1,205,11,10,60),(1,1,205,11,10,61),(1,1,205,11,20,18),(1,1,205,11,20,19),(1,1,205,11,20,20),(1,1,205,11,30,21),(1,1,205,11,30,22),(1,1,205,11,30,23),(1,1,205,11,40,24),(1,1,205,11,40,25),(1,1,205,11,40,26),(1,1,205,11,50,27),(1,1,205,11,60,28),(1,1,205,11,60,29),(1,1,206,10,10,2),(1,1,206,10,10,3),(1,1,206,10,20,4),(1,1,206,10,20,5),(1,1,206,10,30,6),(1,1,206,10,30,7),(1,1,206,10,40,8),(1,1,206,10,40,9),(1,1,206,10,50,10),(1,1,206,10,50,11),(1,1,206,10,60,12),(1,1,206,11,10,14),(1,1,206,11,10,15),(1,1,206,11,10,17),(1,1,206,11,10,40),(1,1,206,11,10,42),(1,1,206,11,10,43),(1,1,206,11,10,44),(1,1,206,11,10,45),(1,1,206,11,10,47),(1,1,206,11,10,48),(1,1,206,11,10,51),(1,1,206,11,10,55),(1,1,206,11,10,56),(1,1,206,11,10,58),(1,1,206,11,10,59),(1,1,206,11,10,60),(1,1,206,11,10,61),(1,1,206,11,20,18),(1,1,206,11,20,19),(1,1,206,11,20,20),(1,1,206,11,30,21),(1,1,206,11,30,22),(1,1,206,11,30,23),(1,1,206,11,40,24),(1,1,206,11,40,25),(1,1,206,11,40,26),(1,1,206,11,50,27),(1,1,206,11,60,28),(1,1,206,11,60,29),(1,1,207,10,10,2),(1,1,207,10,10,3),(1,1,207,10,20,4),(1,1,207,10,20,5),(1,1,207,10,30,6),(1,1,207,10,30,7),(1,1,207,10,40,8),(1,1,207,10,40,9),(1,1,207,10,50,10),(1,1,207,10,50,11),(1,1,207,10,60,12),(1,1,207,11,10,14),(1,1,207,11,10,15),(1,1,207,11,10,17),(1,1,207,11,10,40),(1,1,207,11,10,42),(1,1,207,11,10,43),(1,1,207,11,10,44),(1,1,207,11,10,45),(1,1,207,11,10,47),(1,1,207,11,10,48),(1,1,207,11,10,51),(1,1,207,11,10,55),(1,1,207,11,10,56),(1,1,207,11,10,58),(1,1,207,11,10,59),(1,1,207,11,10,60),(1,1,207,11,10,61),(1,1,207,11,20,18),(1,1,207,11,20,19),(1,1,207,11,20,20),(1,1,207,11,30,21),(1,1,207,11,30,22),(1,1,207,11,30,23),(1,1,207,11,40,24),(1,1,207,11,40,25),(1,1,207,11,40,26),(1,1,207,11,50,27),(1,1,207,11,60,28),(1,1,207,11,60,29),(1,1,208,10,10,2),(1,1,208,10,10,3),(1,1,208,10,20,4),(1,1,208,10,20,5),(1,1,208,10,30,6),(1,1,208,10,30,7),(1,1,208,10,40,8),(1,1,208,10,40,9),(1,1,208,10,50,10),(1,1,208,10,50,11),(1,1,208,10,60,12),(1,1,208,11,10,14),(1,1,208,11,10,15),(1,1,208,11,10,17),(1,1,208,11,10,40),(1,1,208,11,10,42),(1,1,208,11,10,43),(1,1,208,11,10,44),(1,1,208,11,10,45),(1,1,208,11,10,47),(1,1,208,11,10,48),(1,1,208,11,10,51),(1,1,208,11,10,55),(1,1,208,11,10,56),(1,1,208,11,10,58),(1,1,208,11,10,59),(1,1,208,11,10,60),(1,1,208,11,10,61),(1,1,208,11,20,18),(1,1,208,11,20,19),(1,1,208,11,20,20),(1,1,208,11,30,21),(1,1,208,11,30,22),(1,1,208,11,30,23),(1,1,208,11,40,24),(1,1,208,11,40,25),(1,1,208,11,40,26),(1,1,208,11,50,27),(1,1,208,11,60,28),(1,1,208,11,60,29),(1,1,209,10,10,2),(1,1,209,10,10,3),(1,1,209,10,20,4),(1,1,209,10,20,5),(1,1,209,10,30,6),(1,1,209,10,30,7),(1,1,209,10,40,8),(1,1,209,10,40,9),(1,1,209,10,50,10),(1,1,209,10,50,11),(1,1,209,10,60,12),(1,1,209,11,10,14),(1,1,209,11,10,15),(1,1,209,11,10,17),(1,1,209,11,10,40),(1,1,209,11,10,42),(1,1,209,11,10,43),(1,1,209,11,10,44),(1,1,209,11,10,45),(1,1,209,11,10,47),(1,1,209,11,10,48),(1,1,209,11,10,51),(1,1,209,11,10,55),(1,1,209,11,10,56),(1,1,209,11,10,58),(1,1,209,11,10,59),(1,1,209,11,10,60),(1,1,209,11,10,61),(1,1,209,11,20,18),(1,1,209,11,20,19),(1,1,209,11,20,20),(1,1,209,11,30,21),(1,1,209,11,30,22),(1,1,209,11,30,23),(1,1,209,11,40,24),(1,1,209,11,40,25),(1,1,209,11,40,26),(1,1,209,11,50,27),(1,1,209,11,60,28),(1,1,209,11,60,29),(1,1,210,10,10,2),(1,1,210,10,10,3),(1,1,210,10,20,4),(1,1,210,10,20,5),(1,1,210,10,30,6),(1,1,210,10,30,7),(1,1,210,10,40,8),(1,1,210,10,40,9),(1,1,210,10,50,10),(1,1,210,10,50,11),(1,1,210,10,60,12),(1,1,210,11,10,14),(1,1,210,11,10,15),(1,1,210,11,10,17),(1,1,210,11,10,40),(1,1,210,11,10,42),(1,1,210,11,10,43),(1,1,210,11,10,44),(1,1,210,11,10,45),(1,1,210,11,10,47),(1,1,210,11,10,48),(1,1,210,11,10,51),(1,1,210,11,10,55),(1,1,210,11,10,56),(1,1,210,11,10,58),(1,1,210,11,10,59),(1,1,210,11,10,60),(1,1,210,11,10,61),(1,1,210,11,20,18),(1,1,210,11,20,19),(1,1,210,11,20,20),(1,1,210,11,30,21),(1,1,210,11,30,22),(1,1,210,11,30,23),(1,1,210,11,40,24),(1,1,210,11,40,25),(1,1,210,11,40,26),(1,1,210,11,50,27),(1,1,210,11,60,28),(1,1,210,11,60,29),(1,1,211,10,10,2),(1,1,211,10,10,3),(1,1,211,10,20,4),(1,1,211,10,20,5),(1,1,211,10,30,6),(1,1,211,10,30,7),(1,1,211,10,40,8),(1,1,211,10,40,9),(1,1,211,10,50,10),(1,1,211,10,50,11),(1,1,211,10,60,12),(1,1,211,11,10,14),(1,1,211,11,10,15),(1,1,211,11,10,17),(1,1,211,11,10,40),(1,1,211,11,10,42),(1,1,211,11,10,43),(1,1,211,11,10,44),(1,1,211,11,10,45),(1,1,211,11,10,47),(1,1,211,11,10,48),(1,1,211,11,10,51),(1,1,211,11,10,55),(1,1,211,11,10,56),(1,1,211,11,10,58),(1,1,211,11,10,59),(1,1,211,11,10,60),(1,1,211,11,10,61),(1,1,211,11,20,18),(1,1,211,11,20,19),(1,1,211,11,20,20),(1,1,211,11,30,21),(1,1,211,11,30,22),(1,1,211,11,30,23),(1,1,211,11,40,24),(1,1,211,11,40,25),(1,1,211,11,40,26),(1,1,211,11,50,27),(1,1,211,11,60,28),(1,1,211,11,60,29),(1,1,212,10,10,2),(1,1,212,10,10,3),(1,1,212,10,20,4),(1,1,212,10,20,5),(1,1,212,10,30,6),(1,1,212,10,30,7),(1,1,212,10,40,8),(1,1,212,10,40,9),(1,1,212,10,50,10),(1,1,212,10,50,11),(1,1,212,10,60,12),(1,1,212,11,10,14),(1,1,212,11,10,15),(1,1,212,11,10,17),(1,1,212,11,10,40),(1,1,212,11,10,42),(1,1,212,11,10,43),(1,1,212,11,10,44),(1,1,212,11,10,45),(1,1,212,11,10,47),(1,1,212,11,10,48),(1,1,212,11,10,51),(1,1,212,11,10,55),(1,1,212,11,10,56),(1,1,212,11,10,58),(1,1,212,11,10,59),(1,1,212,11,10,60),(1,1,212,11,10,61),(1,1,212,11,20,18),(1,1,212,11,20,19),(1,1,212,11,20,20),(1,1,212,11,30,21),(1,1,212,11,30,22),(1,1,212,11,30,23),(1,1,212,11,40,24),(1,1,212,11,40,25),(1,1,212,11,40,26),(1,1,212,11,50,27),(1,1,212,11,60,28),(1,1,212,11,60,29),(1,1,213,1,5,33),(1,1,213,10,10,2),(1,1,213,10,10,3),(1,1,213,10,20,4),(1,1,213,10,20,5),(1,1,213,10,30,6),(1,1,213,10,30,7),(1,1,213,10,40,8),(1,1,213,10,40,9),(1,1,213,10,50,10),(1,1,213,10,50,11),(1,1,213,10,60,12),(1,1,213,11,10,14),(1,1,213,11,10,15),(1,1,213,11,10,17),(1,1,213,11,10,40),(1,1,213,11,10,42),(1,1,213,11,10,43),(1,1,213,11,10,44),(1,1,213,11,10,45),(1,1,213,11,10,47),(1,1,213,11,10,48),(1,1,213,11,10,51),(1,1,213,11,10,55),(1,1,213,11,10,56),(1,1,213,11,10,58),(1,1,213,11,10,59),(1,1,213,11,10,60),(1,1,213,11,10,61),(1,1,213,11,20,18),(1,1,213,11,20,19),(1,1,213,11,20,20),(1,1,213,11,30,21),(1,1,213,11,30,22),(1,1,213,11,30,23),(1,1,213,11,40,24),(1,1,213,11,40,25),(1,1,213,11,40,26),(1,1,213,11,50,27),(1,1,213,11,60,28),(1,1,213,11,60,29),(1,1,214,10,10,2),(1,1,214,10,10,3),(1,1,214,10,20,4),(1,1,214,10,20,5),(1,1,214,10,30,6),(1,1,214,10,30,7),(1,1,214,10,40,8),(1,1,214,10,40,9),(1,1,214,10,50,10),(1,1,214,10,50,11),(1,1,214,10,60,12),(1,1,214,11,10,14),(1,1,214,11,10,15),(1,1,214,11,10,17),(1,1,214,11,10,40),(1,1,214,11,10,42),(1,1,214,11,10,43),(1,1,214,11,10,44),(1,1,214,11,10,45),(1,1,214,11,10,47),(1,1,214,11,10,48),(1,1,214,11,10,51),(1,1,214,11,10,55),(1,1,214,11,10,56),(1,1,214,11,10,58),(1,1,214,11,10,59),(1,1,214,11,10,60),(1,1,214,11,10,61),(1,1,214,11,20,18),(1,1,214,11,20,19),(1,1,214,11,20,20),(1,1,214,11,30,21),(1,1,214,11,30,22),(1,1,214,11,30,23),(1,1,214,11,40,24),(1,1,214,11,40,25),(1,1,214,11,40,26),(1,1,214,11,50,27),(1,1,214,11,60,28),(1,1,214,11,60,29),(1,1,215,10,10,2),(1,1,215,10,10,3),(1,1,215,10,20,4),(1,1,215,10,20,5),(1,1,215,10,30,6),(1,1,215,10,30,7),(1,1,215,10,40,8),(1,1,215,10,40,9),(1,1,215,10,50,10),(1,1,215,10,50,11),(1,1,215,10,60,12),(1,1,215,11,10,14),(1,1,215,11,10,15),(1,1,215,11,10,17),(1,1,215,11,10,40),(1,1,215,11,10,42),(1,1,215,11,10,43),(1,1,215,11,10,44),(1,1,215,11,10,45),(1,1,215,11,10,47),(1,1,215,11,10,48),(1,1,215,11,10,51),(1,1,215,11,10,55),(1,1,215,11,10,56),(1,1,215,11,10,58),(1,1,215,11,10,59),(1,1,215,11,10,60),(1,1,215,11,10,61),(1,1,215,11,20,18),(1,1,215,11,20,19),(1,1,215,11,20,20),(1,1,215,11,30,21),(1,1,215,11,30,22),(1,1,215,11,30,23),(1,1,215,11,40,24),(1,1,215,11,40,25),(1,1,215,11,40,26),(1,1,215,11,50,27),(1,1,215,11,60,28),(1,1,215,11,60,29),(1,1,216,10,10,2),(1,1,216,10,10,3),(1,1,216,10,20,4),(1,1,216,10,20,5),(1,1,216,10,30,6),(1,1,216,10,30,7),(1,1,216,10,40,8),(1,1,216,10,40,9),(1,1,216,10,50,10),(1,1,216,10,50,11),(1,1,216,10,60,12),(1,1,216,11,10,14),(1,1,216,11,10,15),(1,1,216,11,10,17),(1,1,216,11,10,40),(1,1,216,11,10,42),(1,1,216,11,10,43),(1,1,216,11,10,44),(1,1,216,11,10,45),(1,1,216,11,10,47),(1,1,216,11,10,48),(1,1,216,11,10,51),(1,1,216,11,10,55),(1,1,216,11,10,56),(1,1,216,11,10,58),(1,1,216,11,10,59),(1,1,216,11,10,60),(1,1,216,11,10,61),(1,1,216,11,20,18),(1,1,216,11,20,19),(1,1,216,11,20,20),(1,1,216,11,30,21),(1,1,216,11,30,22),(1,1,216,11,30,23),(1,1,216,11,40,24),(1,1,216,11,40,25),(1,1,216,11,40,26),(1,1,216,11,50,27),(1,1,216,11,60,28),(1,1,216,11,60,29),(1,1,217,10,10,2),(1,1,217,10,10,3),(1,1,217,10,20,4),(1,1,217,10,20,5),(1,1,217,10,30,6),(1,1,217,10,30,7),(1,1,217,10,40,8),(1,1,217,10,40,9),(1,1,217,10,50,10),(1,1,217,10,50,11),(1,1,217,10,60,12),(1,1,217,11,10,14),(1,1,217,11,10,15),(1,1,217,11,10,17),(1,1,217,11,10,40),(1,1,217,11,10,42),(1,1,217,11,10,43),(1,1,217,11,10,44),(1,1,217,11,10,45),(1,1,217,11,10,47),(1,1,217,11,10,48),(1,1,217,11,10,51),(1,1,217,11,10,55),(1,1,217,11,10,56),(1,1,217,11,10,58),(1,1,217,11,10,59),(1,1,217,11,10,60),(1,1,217,11,10,61),(1,1,217,11,20,18),(1,1,217,11,20,19),(1,1,217,11,20,20),(1,1,217,11,30,21),(1,1,217,11,30,22),(1,1,217,11,30,23),(1,1,217,11,40,24),(1,1,217,11,40,25),(1,1,217,11,40,26),(1,1,217,11,50,27),(1,1,217,11,60,28),(1,1,217,11,60,29),(1,1,218,10,10,2),(1,1,218,10,10,3),(1,1,218,10,20,4),(1,1,218,10,20,5),(1,1,218,10,30,6),(1,1,218,10,30,7),(1,1,218,10,40,8),(1,1,218,10,40,9),(1,1,218,10,50,10),(1,1,218,10,50,11),(1,1,218,10,60,12),(1,1,218,10,100,13),(1,1,218,11,10,14),(1,1,218,11,10,15),(1,1,218,11,10,17),(1,1,218,11,10,40),(1,1,218,11,10,42),(1,1,218,11,10,43),(1,1,218,11,10,44),(1,1,218,11,10,45),(1,1,218,11,10,47),(1,1,218,11,10,48),(1,1,218,11,10,51),(1,1,218,11,10,55),(1,1,218,11,10,56),(1,1,218,11,10,58),(1,1,218,11,10,59),(1,1,218,11,10,60),(1,1,218,11,10,61),(1,1,218,11,20,18),(1,1,218,11,20,19),(1,1,218,11,20,20),(1,1,218,11,30,21),(1,1,218,11,30,22),(1,1,218,11,30,23),(1,1,218,11,40,24),(1,1,218,11,40,25),(1,1,218,11,40,26),(1,1,218,11,50,27),(1,1,218,11,60,28),(1,1,218,11,60,29),(1,1,218,11,100,30),(1,1,219,10,10,2),(1,1,219,10,10,3),(1,1,219,10,20,4),(1,1,219,10,20,5),(1,1,219,10,30,6),(1,1,219,10,30,7),(1,1,219,10,40,8),(1,1,219,10,40,9),(1,1,219,10,50,10),(1,1,219,10,50,11),(1,1,219,10,60,12),(1,1,219,11,10,14),(1,1,219,11,10,15),(1,1,219,11,10,17),(1,1,219,11,10,40),(1,1,219,11,10,42),(1,1,219,11,10,43),(1,1,219,11,10,44),(1,1,219,11,10,45),(1,1,219,11,10,47),(1,1,219,11,10,48),(1,1,219,11,10,51),(1,1,219,11,10,55),(1,1,219,11,10,56),(1,1,219,11,10,58),(1,1,219,11,10,59),(1,1,219,11,10,60),(1,1,219,11,10,61),(1,1,219,11,20,18),(1,1,219,11,20,19),(1,1,219,11,20,20),(1,1,219,11,30,21),(1,1,219,11,30,22),(1,1,219,11,30,23),(1,1,219,11,40,24),(1,1,219,11,40,25),(1,1,219,11,40,26),(1,1,219,11,50,27),(1,1,219,11,60,28),(1,1,219,11,60,29),(1,1,220,10,10,2),(1,1,220,10,10,3),(1,1,220,10,20,4),(1,1,220,10,20,5),(1,1,220,10,30,6),(1,1,220,10,30,7),(1,1,220,10,40,8),(1,1,220,10,40,9),(1,1,220,10,50,10),(1,1,220,10,50,11),(1,1,220,10,60,12),(1,1,220,11,10,14),(1,1,220,11,10,15),(1,1,220,11,10,17),(1,1,220,11,10,40),(1,1,220,11,10,42),(1,1,220,11,10,43),(1,1,220,11,10,44),(1,1,220,11,10,45),(1,1,220,11,10,47),(1,1,220,11,10,48),(1,1,220,11,10,51),(1,1,220,11,10,55),(1,1,220,11,10,56),(1,1,220,11,10,58),(1,1,220,11,10,59),(1,1,220,11,10,60),(1,1,220,11,10,61),(1,1,220,11,20,18),(1,1,220,11,20,19),(1,1,220,11,20,20),(1,1,220,11,30,21),(1,1,220,11,30,22),(1,1,220,11,30,23),(1,1,220,11,40,24),(1,1,220,11,40,25),(1,1,220,11,40,26),(1,1,220,11,50,27),(1,1,220,11,60,28),(1,1,220,11,60,29),(1,1,221,10,10,2),(1,1,221,10,10,3),(1,1,221,10,20,4),(1,1,221,10,20,5),(1,1,221,10,30,6),(1,1,221,10,30,7),(1,1,221,10,40,8),(1,1,221,10,40,9),(1,1,221,10,50,10),(1,1,221,10,50,11),(1,1,221,10,60,12),(1,1,221,11,10,14),(1,1,221,11,10,15),(1,1,221,11,10,17),(1,1,221,11,10,40),(1,1,221,11,10,42),(1,1,221,11,10,43),(1,1,221,11,10,44),(1,1,221,11,10,45),(1,1,221,11,10,47),(1,1,221,11,10,48),(1,1,221,11,10,51),(1,1,221,11,10,55),(1,1,221,11,10,56),(1,1,221,11,10,58),(1,1,221,11,10,59),(1,1,221,11,10,60),(1,1,221,11,10,61),(1,1,221,11,20,18),(1,1,221,11,20,19),(1,1,221,11,20,20),(1,1,221,11,30,21),(1,1,221,11,30,22),(1,1,221,11,30,23),(1,1,221,11,40,24),(1,1,221,11,40,25),(1,1,221,11,40,26),(1,1,221,11,50,27),(1,1,221,11,60,28),(1,1,221,11,60,29),(1,1,222,10,10,2),(1,1,222,10,10,3),(1,1,222,10,20,4),(1,1,222,10,20,5),(1,1,222,10,30,6),(1,1,222,10,30,7),(1,1,222,10,40,8),(1,1,222,10,40,9),(1,1,222,10,50,10),(1,1,222,10,50,11),(1,1,222,10,60,12),(1,1,222,11,10,14),(1,1,222,11,10,15),(1,1,222,11,10,17),(1,1,222,11,10,40),(1,1,222,11,10,42),(1,1,222,11,10,43),(1,1,222,11,10,44),(1,1,222,11,10,45),(1,1,222,11,10,47),(1,1,222,11,10,48),(1,1,222,11,10,51),(1,1,222,11,10,55),(1,1,222,11,10,56),(1,1,222,11,10,58),(1,1,222,11,10,59),(1,1,222,11,10,60),(1,1,222,11,10,61),(1,1,222,11,20,18),(1,1,222,11,20,19),(1,1,222,11,20,20),(1,1,222,11,30,21),(1,1,222,11,30,22),(1,1,222,11,30,23),(1,1,222,11,40,24),(1,1,222,11,40,25),(1,1,222,11,40,26),(1,1,222,11,50,27),(1,1,222,11,60,28),(1,1,222,11,60,29),(1,1,223,10,10,2),(1,1,223,10,10,3),(1,1,223,10,20,4),(1,1,223,10,20,5),(1,1,223,10,30,6),(1,1,223,10,30,7),(1,1,223,10,40,8),(1,1,223,10,40,9),(1,1,223,10,50,10),(1,1,223,10,50,11),(1,1,223,10,60,12),(1,1,223,11,10,14),(1,1,223,11,10,15),(1,1,223,11,10,17),(1,1,223,11,10,40),(1,1,223,11,10,42),(1,1,223,11,10,43),(1,1,223,11,10,44),(1,1,223,11,10,45),(1,1,223,11,10,47),(1,1,223,11,10,48),(1,1,223,11,10,51),(1,1,223,11,10,55),(1,1,223,11,10,56),(1,1,223,11,10,58),(1,1,223,11,10,59),(1,1,223,11,10,60),(1,1,223,11,10,61),(1,1,223,11,20,18),(1,1,223,11,20,19),(1,1,223,11,20,20),(1,1,223,11,30,21),(1,1,223,11,30,22),(1,1,223,11,30,23),(1,1,223,11,40,24),(1,1,223,11,40,25),(1,1,223,11,40,26),(1,1,223,11,50,27),(1,1,223,11,60,28),(1,1,223,11,60,29),(1,1,224,10,10,2),(1,1,224,10,10,3),(1,1,224,10,20,4),(1,1,224,10,20,5),(1,1,224,10,30,6),(1,1,224,10,30,7),(1,1,224,10,40,8),(1,1,224,10,40,9),(1,1,224,10,50,10),(1,1,224,10,50,11),(1,1,224,10,60,12),(1,1,224,11,10,14),(1,1,224,11,10,15),(1,1,224,11,10,17),(1,1,224,11,10,40),(1,1,224,11,10,42),(1,1,224,11,10,43),(1,1,224,11,10,44),(1,1,224,11,10,45),(1,1,224,11,10,47),(1,1,224,11,10,48),(1,1,224,11,10,51),(1,1,224,11,10,55),(1,1,224,11,10,56),(1,1,224,11,10,58),(1,1,224,11,10,59),(1,1,224,11,10,60),(1,1,224,11,10,61),(1,1,224,11,20,18),(1,1,224,11,20,19),(1,1,224,11,20,20),(1,1,224,11,30,21),(1,1,224,11,30,22),(1,1,224,11,30,23),(1,1,224,11,40,24),(1,1,224,11,40,25),(1,1,224,11,40,26),(1,1,224,11,50,27),(1,1,224,11,60,28),(1,1,224,11,60,29),(1,1,225,10,10,2),(1,1,225,10,10,3),(1,1,225,10,20,4),(1,1,225,10,20,5),(1,1,225,10,30,6),(1,1,225,10,30,7),(1,1,225,10,40,8),(1,1,225,10,40,9),(1,1,225,10,50,10),(1,1,225,10,50,11),(1,1,225,10,60,12),(1,1,225,11,10,14),(1,1,225,11,10,15),(1,1,225,11,10,17),(1,1,225,11,10,40),(1,1,225,11,10,42),(1,1,225,11,10,43),(1,1,225,11,10,44),(1,1,225,11,10,45),(1,1,225,11,10,47),(1,1,225,11,10,48),(1,1,225,11,10,51),(1,1,225,11,10,55),(1,1,225,11,10,56),(1,1,225,11,10,58),(1,1,225,11,10,59),(1,1,225,11,10,60),(1,1,225,11,10,61),(1,1,225,11,20,18),(1,1,225,11,20,19),(1,1,225,11,20,20),(1,1,225,11,30,21),(1,1,225,11,30,22),(1,1,225,11,30,23),(1,1,225,11,40,24),(1,1,225,11,40,25),(1,1,225,11,40,26),(1,1,225,11,50,27),(1,1,225,11,60,28),(1,1,225,11,60,29),(1,1,226,10,10,2),(1,1,226,10,10,3),(1,1,226,10,20,4),(1,1,226,10,20,5),(1,1,226,10,30,6),(1,1,226,10,30,7),(1,1,226,10,40,8),(1,1,226,10,40,9),(1,1,226,10,50,10),(1,1,226,10,50,11),(1,1,226,10,60,12),(1,1,226,11,10,14),(1,1,226,11,10,15),(1,1,226,11,10,17),(1,1,226,11,10,40),(1,1,226,11,10,42),(1,1,226,11,10,43),(1,1,226,11,10,44),(1,1,226,11,10,45),(1,1,226,11,10,47),(1,1,226,11,10,48),(1,1,226,11,10,51),(1,1,226,11,10,55),(1,1,226,11,10,56),(1,1,226,11,10,58),(1,1,226,11,10,59),(1,1,226,11,10,60),(1,1,226,11,10,61),(1,1,226,11,20,18),(1,1,226,11,20,19),(1,1,226,11,20,20),(1,1,226,11,30,21),(1,1,226,11,30,22),(1,1,226,11,30,23),(1,1,226,11,40,24),(1,1,226,11,40,25),(1,1,226,11,40,26),(1,1,226,11,50,27),(1,1,226,11,60,28),(1,1,226,11,60,29),(1,1,227,10,10,2),(1,1,227,10,10,3),(1,1,227,10,20,4),(1,1,227,10,20,5),(1,1,227,10,30,6),(1,1,227,10,30,7),(1,1,227,10,40,8),(1,1,227,10,40,9),(1,1,227,10,50,10),(1,1,227,10,50,11),(1,1,227,10,60,12),(1,1,227,11,10,14),(1,1,227,11,10,15),(1,1,227,11,10,17),(1,1,227,11,10,40),(1,1,227,11,10,42),(1,1,227,11,10,43),(1,1,227,11,10,44),(1,1,227,11,10,45),(1,1,227,11,10,47),(1,1,227,11,10,48),(1,1,227,11,10,51),(1,1,227,11,10,55),(1,1,227,11,10,56),(1,1,227,11,10,58),(1,1,227,11,10,59),(1,1,227,11,10,60),(1,1,227,11,10,61),(1,1,227,11,20,18),(1,1,227,11,20,19),(1,1,227,11,20,20),(1,1,227,11,30,21),(1,1,227,11,30,22),(1,1,227,11,30,23),(1,1,227,11,40,24),(1,1,227,11,40,25),(1,1,227,11,40,26),(1,1,227,11,50,27),(1,1,227,11,60,28),(1,1,227,11,60,29),(1,1,228,10,10,2),(1,1,228,10,10,3),(1,1,228,10,20,4),(1,1,228,10,20,5),(1,1,228,10,30,6),(1,1,228,10,30,7),(1,1,228,10,40,8),(1,1,228,10,40,9),(1,1,228,10,50,10),(1,1,228,10,50,11),(1,1,228,10,60,12),(1,1,228,11,10,14),(1,1,228,11,10,15),(1,1,228,11,10,17),(1,1,228,11,10,40),(1,1,228,11,10,42),(1,1,228,11,10,43),(1,1,228,11,10,44),(1,1,228,11,10,45),(1,1,228,11,10,47),(1,1,228,11,10,48),(1,1,228,11,10,51),(1,1,228,11,10,55),(1,1,228,11,10,56),(1,1,228,11,10,58),(1,1,228,11,10,59),(1,1,228,11,10,60),(1,1,228,11,10,61),(1,1,228,11,20,18),(1,1,228,11,20,19),(1,1,228,11,20,20),(1,1,228,11,30,21),(1,1,228,11,30,22),(1,1,228,11,30,23),(1,1,228,11,40,24),(1,1,228,11,40,25),(1,1,228,11,40,26),(1,1,228,11,50,27),(1,1,228,11,60,28),(1,1,228,11,60,29),(1,1,229,10,10,2),(1,1,229,10,10,3),(1,1,229,10,20,4),(1,1,229,10,20,5),(1,1,229,10,30,6),(1,1,229,10,30,7),(1,1,229,10,40,8),(1,1,229,10,40,9),(1,1,229,10,50,10),(1,1,229,10,50,11),(1,1,229,10,60,12),(1,1,229,11,10,14),(1,1,229,11,10,15),(1,1,229,11,10,17),(1,1,229,11,10,40),(1,1,229,11,10,42),(1,1,229,11,10,43),(1,1,229,11,10,44),(1,1,229,11,10,45),(1,1,229,11,10,47),(1,1,229,11,10,48),(1,1,229,11,10,51),(1,1,229,11,10,55),(1,1,229,11,10,56),(1,1,229,11,10,58),(1,1,229,11,10,59),(1,1,229,11,10,60),(1,1,229,11,10,61),(1,1,229,11,20,18),(1,1,229,11,20,19),(1,1,229,11,20,20),(1,1,229,11,30,21),(1,1,229,11,30,22),(1,1,229,11,30,23),(1,1,229,11,40,24),(1,1,229,11,40,25),(1,1,229,11,40,26),(1,1,229,11,50,27),(1,1,229,11,60,28),(1,1,229,11,60,29),(1,1,230,10,10,2),(1,1,230,10,10,3),(1,1,230,10,20,4),(1,1,230,10,20,5),(1,1,230,10,30,6),(1,1,230,10,30,7),(1,1,230,10,40,8),(1,1,230,10,40,9),(1,1,230,10,50,10),(1,1,230,10,50,11),(1,1,230,10,60,12),(1,1,230,11,10,14),(1,1,230,11,10,15),(1,1,230,11,10,17),(1,1,230,11,10,40),(1,1,230,11,10,42),(1,1,230,11,10,43),(1,1,230,11,10,44),(1,1,230,11,10,45),(1,1,230,11,10,47),(1,1,230,11,10,48),(1,1,230,11,10,51),(1,1,230,11,10,55),(1,1,230,11,10,56),(1,1,230,11,10,58),(1,1,230,11,10,59),(1,1,230,11,10,60),(1,1,230,11,10,61),(1,1,230,11,20,18),(1,1,230,11,20,19),(1,1,230,11,20,20),(1,1,230,11,30,21),(1,1,230,11,30,22),(1,1,230,11,30,23),(1,1,230,11,40,24),(1,1,230,11,40,25),(1,1,230,11,40,26),(1,1,230,11,50,27),(1,1,230,11,60,28),(1,1,230,11,60,29),(1,1,231,10,10,2),(1,1,231,10,10,3),(1,1,231,10,20,4),(1,1,231,10,20,5),(1,1,231,10,30,6),(1,1,231,10,30,7),(1,1,231,10,40,8),(1,1,231,10,40,9),(1,1,231,10,50,10),(1,1,231,10,50,11),(1,1,231,10,60,12),(1,1,231,11,10,14),(1,1,231,11,10,15),(1,1,231,11,10,17),(1,1,231,11,10,40),(1,1,231,11,10,42),(1,1,231,11,10,43),(1,1,231,11,10,44),(1,1,231,11,10,45),(1,1,231,11,10,47),(1,1,231,11,10,48),(1,1,231,11,10,51),(1,1,231,11,10,55),(1,1,231,11,10,56),(1,1,231,11,10,58),(1,1,231,11,10,59),(1,1,231,11,10,60),(1,1,231,11,10,61),(1,1,231,11,20,18),(1,1,231,11,20,19),(1,1,231,11,20,20),(1,1,231,11,30,21),(1,1,231,11,30,22),(1,1,231,11,30,23),(1,1,231,11,40,24),(1,1,231,11,40,25),(1,1,231,11,40,26),(1,1,231,11,50,27),(1,1,231,11,60,28),(1,1,231,11,60,29),(1,1,232,10,10,2),(1,1,232,10,10,3),(1,1,232,10,20,4),(1,1,232,10,20,5),(1,1,232,10,30,6),(1,1,232,10,30,7),(1,1,232,10,40,8),(1,1,232,10,40,9),(1,1,232,10,50,10),(1,1,232,10,50,11),(1,1,232,10,60,12),(1,1,232,11,10,14),(1,1,232,11,10,15),(1,1,232,11,10,17),(1,1,232,11,10,40),(1,1,232,11,10,42),(1,1,232,11,10,43),(1,1,232,11,10,44),(1,1,232,11,10,45),(1,1,232,11,10,47),(1,1,232,11,10,48),(1,1,232,11,10,51),(1,1,232,11,10,55),(1,1,232,11,10,56),(1,1,232,11,10,58),(1,1,232,11,10,59),(1,1,232,11,10,60),(1,1,232,11,10,61),(1,1,232,11,20,18),(1,1,232,11,20,19),(1,1,232,11,20,20),(1,1,232,11,30,21),(1,1,232,11,30,22),(1,1,232,11,30,23),(1,1,232,11,40,24),(1,1,232,11,40,25),(1,1,232,11,40,26),(1,1,232,11,50,27),(1,1,232,11,60,28),(1,1,232,11,60,29),(1,1,233,10,10,2),(1,1,233,10,10,3),(1,1,233,10,20,4),(1,1,233,10,20,5),(1,1,233,10,30,6),(1,1,233,10,30,7),(1,1,233,10,40,8),(1,1,233,10,40,9),(1,1,233,10,50,10),(1,1,233,10,50,11),(1,1,233,10,60,12),(1,1,233,11,10,14),(1,1,233,11,10,15),(1,1,233,11,10,17),(1,1,233,11,10,40),(1,1,233,11,10,42),(1,1,233,11,10,43),(1,1,233,11,10,44),(1,1,233,11,10,45),(1,1,233,11,10,47),(1,1,233,11,10,48),(1,1,233,11,10,51),(1,1,233,11,10,55),(1,1,233,11,10,56),(1,1,233,11,10,58),(1,1,233,11,10,59),(1,1,233,11,10,60),(1,1,233,11,10,61),(1,1,233,11,20,18),(1,1,233,11,20,19),(1,1,233,11,20,20),(1,1,233,11,30,21),(1,1,233,11,30,22),(1,1,233,11,30,23),(1,1,233,11,40,24),(1,1,233,11,40,25),(1,1,233,11,40,26),(1,1,233,11,50,27),(1,1,233,11,60,28),(1,1,233,11,60,29),(1,1,234,10,10,2),(1,1,234,10,10,3),(1,1,234,10,20,4),(1,1,234,10,20,5),(1,1,234,10,30,6),(1,1,234,10,30,7),(1,1,234,10,40,8),(1,1,234,10,40,9),(1,1,234,10,50,10),(1,1,234,10,50,11),(1,1,234,10,60,12),(1,1,234,11,10,14),(1,1,234,11,10,15),(1,1,234,11,10,17),(1,1,234,11,10,40),(1,1,234,11,10,42),(1,1,234,11,10,43),(1,1,234,11,10,44),(1,1,234,11,10,45),(1,1,234,11,10,47),(1,1,234,11,10,48),(1,1,234,11,10,51),(1,1,234,11,10,55),(1,1,234,11,10,56),(1,1,234,11,10,58),(1,1,234,11,10,59),(1,1,234,11,10,60),(1,1,234,11,10,61),(1,1,234,11,20,18),(1,1,234,11,20,19),(1,1,234,11,20,20),(1,1,234,11,30,21),(1,1,234,11,30,22),(1,1,234,11,30,23),(1,1,234,11,40,24),(1,1,234,11,40,25),(1,1,234,11,40,26),(1,1,234,11,50,27),(1,1,234,11,60,28),(1,1,234,11,60,29),(1,1,235,10,10,2),(1,1,235,10,10,3),(1,1,235,10,20,4),(1,1,235,10,20,5),(1,1,235,10,30,6),(1,1,235,10,30,7),(1,1,235,10,40,8),(1,1,235,10,40,9),(1,1,235,10,50,10),(1,1,235,10,50,11),(1,1,235,10,60,12),(1,1,235,11,10,14),(1,1,235,11,10,15),(1,1,235,11,10,17),(1,1,235,11,10,40),(1,1,235,11,10,42),(1,1,235,11,10,43),(1,1,235,11,10,44),(1,1,235,11,10,45),(1,1,235,11,10,47),(1,1,235,11,10,48),(1,1,235,11,10,51),(1,1,235,11,10,55),(1,1,235,11,10,56),(1,1,235,11,10,58),(1,1,235,11,10,59),(1,1,235,11,10,60),(1,1,235,11,10,61),(1,1,235,11,20,18),(1,1,235,11,20,19),(1,1,235,11,20,20),(1,1,235,11,30,21),(1,1,235,11,30,22),(1,1,235,11,30,23),(1,1,235,11,40,24),(1,1,235,11,40,25),(1,1,235,11,40,26),(1,1,235,11,50,27),(1,1,235,11,60,28),(1,1,235,11,60,29),(1,1,236,10,10,2),(1,1,236,10,10,3),(1,1,236,10,20,4),(1,1,236,10,20,5),(1,1,236,10,30,6),(1,1,236,10,30,7),(1,1,236,10,40,8),(1,1,236,10,40,9),(1,1,236,10,50,10),(1,1,236,10,50,11),(1,1,236,10,60,12),(1,1,236,11,10,14),(1,1,236,11,10,15),(1,1,236,11,10,17),(1,1,236,11,10,40),(1,1,236,11,10,42),(1,1,236,11,10,43),(1,1,236,11,10,44),(1,1,236,11,10,45),(1,1,236,11,10,47),(1,1,236,11,10,48),(1,1,236,11,10,51),(1,1,236,11,10,55),(1,1,236,11,10,56),(1,1,236,11,10,58),(1,1,236,11,10,59),(1,1,236,11,10,60),(1,1,236,11,10,61),(1,1,236,11,20,18),(1,1,236,11,20,19),(1,1,236,11,20,20),(1,1,236,11,30,21),(1,1,236,11,30,22),(1,1,236,11,30,23),(1,1,236,11,40,24),(1,1,236,11,40,25),(1,1,236,11,40,26),(1,1,236,11,50,27),(1,1,236,11,60,28),(1,1,236,11,60,29),(1,1,237,10,10,2),(1,1,237,10,10,3),(1,1,237,10,20,4),(1,1,237,10,20,5),(1,1,237,10,30,6),(1,1,237,10,30,7),(1,1,237,10,40,8),(1,1,237,10,40,9),(1,1,237,10,50,10),(1,1,237,10,50,11),(1,1,237,10,60,12),(1,1,237,11,10,14),(1,1,237,11,10,15),(1,1,237,11,10,17),(1,1,237,11,10,40),(1,1,237,11,10,42),(1,1,237,11,10,43),(1,1,237,11,10,44),(1,1,237,11,10,45),(1,1,237,11,10,47),(1,1,237,11,10,48),(1,1,237,11,10,51),(1,1,237,11,10,55),(1,1,237,11,10,56),(1,1,237,11,10,58),(1,1,237,11,10,59),(1,1,237,11,10,60),(1,1,237,11,10,61),(1,1,237,11,20,18),(1,1,237,11,20,19),(1,1,237,11,20,20),(1,1,237,11,30,21),(1,1,237,11,30,22),(1,1,237,11,30,23),(1,1,237,11,40,24),(1,1,237,11,40,25),(1,1,237,11,40,26),(1,1,237,11,50,27),(1,1,237,11,60,28),(1,1,237,11,60,29),(1,1,238,10,10,2),(1,1,238,10,10,3),(1,1,238,10,20,4),(1,1,238,10,20,5),(1,1,238,10,30,6),(1,1,238,10,30,7),(1,1,238,10,40,8),(1,1,238,10,40,9),(1,1,238,10,50,10),(1,1,238,10,50,11),(1,1,238,10,60,12),(1,1,238,11,10,14),(1,1,238,11,10,15),(1,1,238,11,10,17),(1,1,238,11,10,40),(1,1,238,11,10,42),(1,1,238,11,10,43),(1,1,238,11,10,44),(1,1,238,11,10,45),(1,1,238,11,10,47),(1,1,238,11,10,48),(1,1,238,11,10,51),(1,1,238,11,10,55),(1,1,238,11,10,56),(1,1,238,11,10,58),(1,1,238,11,10,59),(1,1,238,11,10,60),(1,1,238,11,10,61),(1,1,238,11,20,18),(1,1,238,11,20,19),(1,1,238,11,20,20),(1,1,238,11,30,21),(1,1,238,11,30,22),(1,1,238,11,30,23),(1,1,238,11,40,24),(1,1,238,11,40,25),(1,1,238,11,40,26),(1,1,238,11,50,27),(1,1,238,11,60,28),(1,1,238,11,60,29),(1,1,239,10,10,2),(1,1,239,10,10,3),(1,1,239,10,20,4),(1,1,239,10,20,5),(1,1,239,10,30,6),(1,1,239,10,30,7),(1,1,239,10,40,8),(1,1,239,10,40,9),(1,1,239,10,50,10),(1,1,239,10,50,11),(1,1,239,10,60,12),(1,1,239,11,10,14),(1,1,239,11,10,15),(1,1,239,11,10,17),(1,1,239,11,10,40),(1,1,239,11,10,42),(1,1,239,11,10,43),(1,1,239,11,10,44),(1,1,239,11,10,45),(1,1,239,11,10,47),(1,1,239,11,10,48),(1,1,239,11,10,51),(1,1,239,11,10,55),(1,1,239,11,10,56),(1,1,239,11,10,58),(1,1,239,11,10,59),(1,1,239,11,10,60),(1,1,239,11,10,61),(1,1,239,11,20,18),(1,1,239,11,20,19),(1,1,239,11,20,20),(1,1,239,11,30,21),(1,1,239,11,30,22),(1,1,239,11,30,23),(1,1,239,11,40,24),(1,1,239,11,40,25),(1,1,239,11,40,26),(1,1,239,11,50,27),(1,1,239,11,60,28),(1,1,239,11,60,29),(1,1,240,10,10,2),(1,1,240,10,10,3),(1,1,240,10,20,4),(1,1,240,10,20,5),(1,1,240,10,30,6),(1,1,240,10,30,7),(1,1,240,10,40,8),(1,1,240,10,40,9),(1,1,240,10,50,10),(1,1,240,10,50,11),(1,1,240,10,60,12),(1,1,240,11,10,14),(1,1,240,11,10,15),(1,1,240,11,10,17),(1,1,240,11,10,40),(1,1,240,11,10,42),(1,1,240,11,10,43),(1,1,240,11,10,44),(1,1,240,11,10,45),(1,1,240,11,10,47),(1,1,240,11,10,48),(1,1,240,11,10,51),(1,1,240,11,10,55),(1,1,240,11,10,56),(1,1,240,11,10,58),(1,1,240,11,10,59),(1,1,240,11,10,60),(1,1,240,11,10,61),(1,1,240,11,20,18),(1,1,240,11,20,19),(1,1,240,11,20,20),(1,1,240,11,30,21),(1,1,240,11,30,22),(1,1,240,11,30,23),(1,1,240,11,40,24),(1,1,240,11,40,25),(1,1,240,11,40,26),(1,1,240,11,50,27),(1,1,240,11,60,28),(1,1,240,11,60,29),(1,1,241,10,10,2),(1,1,241,10,10,3),(1,1,241,10,20,4),(1,1,241,10,20,5),(1,1,241,10,30,6),(1,1,241,10,30,7),(1,1,241,10,40,8),(1,1,241,10,40,9),(1,1,241,10,50,10),(1,1,241,10,50,11),(1,1,241,10,60,12),(1,1,241,11,10,14),(1,1,241,11,10,15),(1,1,241,11,10,17),(1,1,241,11,10,40),(1,1,241,11,10,42),(1,1,241,11,10,43),(1,1,241,11,10,44),(1,1,241,11,10,45),(1,1,241,11,10,47),(1,1,241,11,10,48),(1,1,241,11,10,51),(1,1,241,11,10,55),(1,1,241,11,10,56),(1,1,241,11,10,58),(1,1,241,11,10,59),(1,1,241,11,10,60),(1,1,241,11,10,61),(1,1,241,11,20,18),(1,1,241,11,20,19),(1,1,241,11,20,20),(1,1,241,11,30,21),(1,1,241,11,30,22),(1,1,241,11,30,23),(1,1,241,11,40,24),(1,1,241,11,40,25),(1,1,241,11,40,26),(1,1,241,11,50,27),(1,1,241,11,60,28),(1,1,241,11,60,29),(1,1,242,10,10,2),(1,1,242,10,10,3),(1,1,242,10,20,4),(1,1,242,10,20,5),(1,1,242,10,30,6),(1,1,242,10,30,7),(1,1,242,10,40,8),(1,1,242,10,40,9),(1,1,242,10,50,10),(1,1,242,10,50,11),(1,1,242,10,60,12),(1,1,242,11,10,14),(1,1,242,11,10,15),(1,1,242,11,10,17),(1,1,242,11,10,40),(1,1,242,11,10,42),(1,1,242,11,10,43),(1,1,242,11,10,44),(1,1,242,11,10,45),(1,1,242,11,10,47),(1,1,242,11,10,48),(1,1,242,11,10,51),(1,1,242,11,10,55),(1,1,242,11,10,56),(1,1,242,11,10,58),(1,1,242,11,10,59),(1,1,242,11,10,60),(1,1,242,11,10,61),(1,1,242,11,20,18),(1,1,242,11,20,19),(1,1,242,11,20,20),(1,1,242,11,30,21),(1,1,242,11,30,22),(1,1,242,11,30,23),(1,1,242,11,40,24),(1,1,242,11,40,25),(1,1,242,11,40,26),(1,1,242,11,50,27),(1,1,242,11,60,28),(1,1,242,11,60,29),(1,1,243,10,10,2),(1,1,243,10,10,3),(1,1,243,10,20,4),(1,1,243,10,20,5),(1,1,243,10,30,6),(1,1,243,10,30,7),(1,1,243,10,40,8),(1,1,243,10,40,9),(1,1,243,10,50,10),(1,1,243,10,50,11),(1,1,243,10,60,12),(1,1,243,11,10,14),(1,1,243,11,10,15),(1,1,243,11,10,17),(1,1,243,11,10,40),(1,1,243,11,10,42),(1,1,243,11,10,43),(1,1,243,11,10,44),(1,1,243,11,10,45),(1,1,243,11,10,47),(1,1,243,11,10,48),(1,1,243,11,10,51),(1,1,243,11,10,55),(1,1,243,11,10,56),(1,1,243,11,10,58),(1,1,243,11,10,59),(1,1,243,11,10,60),(1,1,243,11,10,61),(1,1,243,11,20,18),(1,1,243,11,20,19),(1,1,243,11,20,20),(1,1,243,11,30,21),(1,1,243,11,30,22),(1,1,243,11,30,23),(1,1,243,11,40,24),(1,1,243,11,40,25),(1,1,243,11,40,26),(1,1,243,11,50,27),(1,1,243,11,60,28),(1,1,243,11,60,29),(1,1,244,10,10,2),(1,1,244,10,10,3),(1,1,244,10,20,4),(1,1,244,10,20,5),(1,1,244,10,30,6),(1,1,244,10,30,7),(1,1,244,10,40,8),(1,1,244,10,40,9),(1,1,244,10,50,10),(1,1,244,10,50,11),(1,1,244,10,60,12),(1,1,244,11,10,14),(1,1,244,11,10,15),(1,1,244,11,10,17),(1,1,244,11,10,40),(1,1,244,11,10,42),(1,1,244,11,10,43),(1,1,244,11,10,44),(1,1,244,11,10,45),(1,1,244,11,10,47),(1,1,244,11,10,48),(1,1,244,11,10,51),(1,1,244,11,10,55),(1,1,244,11,10,56),(1,1,244,11,10,58),(1,1,244,11,10,59),(1,1,244,11,10,60),(1,1,244,11,10,61),(1,1,244,11,20,18),(1,1,244,11,20,19),(1,1,244,11,20,20),(1,1,244,11,30,21),(1,1,244,11,30,22),(1,1,244,11,30,23),(1,1,244,11,40,24),(1,1,244,11,40,25),(1,1,244,11,40,26),(1,1,244,11,50,27),(1,1,244,11,60,28),(1,1,244,11,60,29),(1,1,245,10,10,2),(1,1,245,10,10,3),(1,1,245,10,20,4),(1,1,245,10,20,5),(1,1,245,10,30,6),(1,1,245,10,30,7),(1,1,245,10,40,8),(1,1,245,10,40,9),(1,1,245,10,50,10),(1,1,245,10,50,11),(1,1,245,10,60,12),(1,1,245,11,10,14),(1,1,245,11,10,15),(1,1,245,11,10,17),(1,1,245,11,10,40),(1,1,245,11,10,42),(1,1,245,11,10,43),(1,1,245,11,10,44),(1,1,245,11,10,45),(1,1,245,11,10,47),(1,1,245,11,10,48),(1,1,245,11,10,51),(1,1,245,11,10,55),(1,1,245,11,10,56),(1,1,245,11,10,58),(1,1,245,11,10,59),(1,1,245,11,10,60),(1,1,245,11,10,61),(1,1,245,11,20,18),(1,1,245,11,20,19),(1,1,245,11,20,20),(1,1,245,11,30,21),(1,1,245,11,30,22),(1,1,245,11,30,23),(1,1,245,11,40,24),(1,1,245,11,40,25),(1,1,245,11,40,26),(1,1,245,11,50,27),(1,1,245,11,60,28),(1,1,245,11,60,29),(1,1,246,10,10,2),(1,1,246,10,10,3),(1,1,246,10,20,4),(1,1,246,10,20,5),(1,1,246,10,30,6),(1,1,246,10,30,7),(1,1,246,10,40,8),(1,1,246,10,40,9),(1,1,246,10,50,10),(1,1,246,10,50,11),(1,1,246,10,60,12),(1,1,246,11,10,14),(1,1,246,11,10,15),(1,1,246,11,10,17),(1,1,246,11,10,40),(1,1,246,11,10,42),(1,1,246,11,10,43),(1,1,246,11,10,44),(1,1,246,11,10,45),(1,1,246,11,10,47),(1,1,246,11,10,48),(1,1,246,11,10,51),(1,1,246,11,10,55),(1,1,246,11,10,56),(1,1,246,11,10,58),(1,1,246,11,10,59),(1,1,246,11,10,60),(1,1,246,11,10,61),(1,1,246,11,20,18),(1,1,246,11,20,19),(1,1,246,11,20,20),(1,1,246,11,30,21),(1,1,246,11,30,22),(1,1,246,11,30,23),(1,1,246,11,40,24),(1,1,246,11,40,25),(1,1,246,11,40,26),(1,1,246,11,50,27),(1,1,246,11,60,28),(1,1,246,11,60,29),(1,1,247,10,10,2),(1,1,247,10,10,3),(1,1,247,10,20,4),(1,1,247,10,20,5),(1,1,247,10,30,6),(1,1,247,10,30,7),(1,1,247,10,40,8),(1,1,247,10,40,9),(1,1,247,10,50,10),(1,1,247,10,50,11),(1,1,247,10,60,12),(1,1,247,11,10,14),(1,1,247,11,10,15),(1,1,247,11,10,17),(1,1,247,11,10,40),(1,1,247,11,10,42),(1,1,247,11,10,43),(1,1,247,11,10,44),(1,1,247,11,10,45),(1,1,247,11,10,47),(1,1,247,11,10,48),(1,1,247,11,10,51),(1,1,247,11,10,55),(1,1,247,11,10,56),(1,1,247,11,10,58),(1,1,247,11,10,59),(1,1,247,11,10,60),(1,1,247,11,10,61),(1,1,247,11,20,18),(1,1,247,11,20,19),(1,1,247,11,20,20),(1,1,247,11,30,21),(1,1,247,11,30,22),(1,1,247,11,30,23),(1,1,247,11,40,24),(1,1,247,11,40,25),(1,1,247,11,40,26),(1,1,247,11,50,27),(1,1,247,11,60,28),(1,1,247,11,60,29),(1,1,248,10,10,2),(1,1,248,10,10,3),(1,1,248,10,20,4),(1,1,248,10,20,5),(1,1,248,10,30,6),(1,1,248,10,30,7),(1,1,248,10,40,8),(1,1,248,10,40,9),(1,1,248,10,50,10),(1,1,248,10,50,11),(1,1,248,10,60,12),(1,1,248,11,10,14),(1,1,248,11,10,15),(1,1,248,11,10,17),(1,1,248,11,10,40),(1,1,248,11,10,42),(1,1,248,11,10,43),(1,1,248,11,10,44),(1,1,248,11,10,45),(1,1,248,11,10,47),(1,1,248,11,10,48),(1,1,248,11,10,51),(1,1,248,11,10,55),(1,1,248,11,10,56),(1,1,248,11,10,58),(1,1,248,11,10,59),(1,1,248,11,10,60),(1,1,248,11,10,61),(1,1,248,11,20,18),(1,1,248,11,20,19),(1,1,248,11,20,20),(1,1,248,11,30,21),(1,1,248,11,30,22),(1,1,248,11,30,23),(1,1,248,11,40,24),(1,1,248,11,40,25),(1,1,248,11,40,26),(1,1,248,11,50,27),(1,1,248,11,60,28),(1,1,248,11,60,29),(1,1,249,10,10,2),(1,1,249,10,10,3),(1,1,249,10,20,4),(1,1,249,10,20,5),(1,1,249,10,30,6),(1,1,249,10,30,7),(1,1,249,10,40,8),(1,1,249,10,40,9),(1,1,249,10,50,10),(1,1,249,10,50,11),(1,1,249,10,60,12),(1,1,249,11,10,14),(1,1,249,11,10,15),(1,1,249,11,10,17),(1,1,249,11,10,40),(1,1,249,11,10,42),(1,1,249,11,10,43),(1,1,249,11,10,44),(1,1,249,11,10,45),(1,1,249,11,10,47),(1,1,249,11,10,48),(1,1,249,11,10,51),(1,1,249,11,10,55),(1,1,249,11,10,56),(1,1,249,11,10,58),(1,1,249,11,10,59),(1,1,249,11,10,60),(1,1,249,11,10,61),(1,1,249,11,20,18),(1,1,249,11,20,19),(1,1,249,11,20,20),(1,1,249,11,30,21),(1,1,249,11,30,22),(1,1,249,11,30,23),(1,1,249,11,40,24),(1,1,249,11,40,25),(1,1,249,11,40,26),(1,1,249,11,50,27),(1,1,249,11,60,28),(1,1,249,11,60,29),(1,1,250,10,10,2),(1,1,250,10,10,3),(1,1,250,10,20,4),(1,1,250,10,20,5),(1,1,250,10,30,6),(1,1,250,10,30,7),(1,1,250,10,40,8),(1,1,250,10,40,9),(1,1,250,10,50,10),(1,1,250,10,50,11),(1,1,250,10,60,12),(1,1,250,11,10,14),(1,1,250,11,10,15),(1,1,250,11,10,17),(1,1,250,11,10,40),(1,1,250,11,10,42),(1,1,250,11,10,43),(1,1,250,11,10,44),(1,1,250,11,10,45),(1,1,250,11,10,47),(1,1,250,11,10,48),(1,1,250,11,10,51),(1,1,250,11,10,55),(1,1,250,11,10,56),(1,1,250,11,10,58),(1,1,250,11,10,59),(1,1,250,11,10,60),(1,1,250,11,10,61),(1,1,250,11,20,18),(1,1,250,11,20,19),(1,1,250,11,20,20),(1,1,250,11,30,21),(1,1,250,11,30,22),(1,1,250,11,30,23),(1,1,250,11,40,24),(1,1,250,11,40,25),(1,1,250,11,40,26),(1,1,250,11,50,27),(1,1,250,11,60,28),(1,1,250,11,60,29),(1,1,251,10,10,2),(1,1,251,10,10,3),(1,1,251,10,20,4),(1,1,251,10,20,5),(1,1,251,10,30,6),(1,1,251,10,30,7),(1,1,251,10,40,8),(1,1,251,10,40,9),(1,1,251,10,50,10),(1,1,251,10,50,11),(1,1,251,10,60,12),(1,1,251,11,10,14),(1,1,251,11,10,15),(1,1,251,11,10,17),(1,1,251,11,10,40),(1,1,251,11,10,42),(1,1,251,11,10,43),(1,1,251,11,10,44),(1,1,251,11,10,45),(1,1,251,11,10,47),(1,1,251,11,10,48),(1,1,251,11,10,51),(1,1,251,11,10,55),(1,1,251,11,10,56),(1,1,251,11,10,58),(1,1,251,11,10,59),(1,1,251,11,10,60),(1,1,251,11,10,61),(1,1,251,11,20,18),(1,1,251,11,20,19),(1,1,251,11,20,20),(1,1,251,11,30,21),(1,1,251,11,30,22),(1,1,251,11,30,23),(1,1,251,11,40,24),(1,1,251,11,40,25),(1,1,251,11,40,26),(1,1,251,11,50,27),(1,1,251,11,60,28),(1,1,251,11,60,29),(1,1,252,10,10,2),(1,1,252,10,10,3),(1,1,252,10,20,4),(1,1,252,10,20,5),(1,1,252,10,30,6),(1,1,252,10,30,7),(1,1,252,10,40,8),(1,1,252,10,40,9),(1,1,252,10,50,10),(1,1,252,10,50,11),(1,1,252,10,60,12),(1,1,252,11,10,14),(1,1,252,11,10,15),(1,1,252,11,10,17),(1,1,252,11,10,40),(1,1,252,11,10,42),(1,1,252,11,10,43),(1,1,252,11,10,44),(1,1,252,11,10,45),(1,1,252,11,10,47),(1,1,252,11,10,48),(1,1,252,11,10,51),(1,1,252,11,10,55),(1,1,252,11,10,56),(1,1,252,11,10,58),(1,1,252,11,10,59),(1,1,252,11,10,60),(1,1,252,11,10,61),(1,1,252,11,20,18),(1,1,252,11,20,19),(1,1,252,11,20,20),(1,1,252,11,30,21),(1,1,252,11,30,22),(1,1,252,11,30,23),(1,1,252,11,40,24),(1,1,252,11,40,25),(1,1,252,11,40,26),(1,1,252,11,50,27),(1,1,252,11,60,28),(1,1,252,11,60,29),(1,1,253,10,10,2),(1,1,253,10,10,3),(1,1,253,10,20,4),(1,1,253,10,20,5),(1,1,253,10,30,6),(1,1,253,10,30,7),(1,1,253,10,40,8),(1,1,253,10,40,9),(1,1,253,10,50,10),(1,1,253,10,50,11),(1,1,253,10,60,12),(1,1,253,11,10,14),(1,1,253,11,10,15),(1,1,253,11,10,17),(1,1,253,11,10,40),(1,1,253,11,10,42),(1,1,253,11,10,43),(1,1,253,11,10,44),(1,1,253,11,10,45),(1,1,253,11,10,47),(1,1,253,11,10,48),(1,1,253,11,10,51),(1,1,253,11,10,55),(1,1,253,11,10,56),(1,1,253,11,10,58),(1,1,253,11,10,59),(1,1,253,11,10,60),(1,1,253,11,10,61),(1,1,253,11,20,18),(1,1,253,11,20,19),(1,1,253,11,20,20),(1,1,253,11,30,21),(1,1,253,11,30,22),(1,1,253,11,30,23),(1,1,253,11,40,24),(1,1,253,11,40,25),(1,1,253,11,40,26),(1,1,253,11,50,27),(1,1,253,11,60,28),(1,1,253,11,60,29),(1,1,254,10,10,2),(1,1,254,10,10,3),(1,1,254,10,20,4),(1,1,254,10,20,5),(1,1,254,10,30,6),(1,1,254,10,30,7),(1,1,254,10,40,8),(1,1,254,10,40,9),(1,1,254,10,50,10),(1,1,254,10,50,11),(1,1,254,10,60,12),(1,1,254,11,10,14),(1,1,254,11,10,15),(1,1,254,11,10,17),(1,1,254,11,10,40),(1,1,254,11,10,42),(1,1,254,11,10,43),(1,1,254,11,10,44),(1,1,254,11,10,45),(1,1,254,11,10,47),(1,1,254,11,10,48),(1,1,254,11,10,51),(1,1,254,11,10,55),(1,1,254,11,10,56),(1,1,254,11,10,58),(1,1,254,11,10,59),(1,1,254,11,10,60),(1,1,254,11,10,61),(1,1,254,11,20,18),(1,1,254,11,20,19),(1,1,254,11,20,20),(1,1,254,11,30,21),(1,1,254,11,30,22),(1,1,254,11,30,23),(1,1,254,11,40,24),(1,1,254,11,40,25),(1,1,254,11,40,26),(1,1,254,11,50,27),(1,1,254,11,60,28),(1,1,254,11,60,29),(1,1,255,10,10,2),(1,1,255,10,10,3),(1,1,255,10,20,4),(1,1,255,10,20,5),(1,1,255,10,30,6),(1,1,255,10,30,7),(1,1,255,10,40,8),(1,1,255,10,40,9),(1,1,255,10,50,10),(1,1,255,10,50,11),(1,1,255,10,60,12),(1,1,255,11,10,14),(1,1,255,11,10,15),(1,1,255,11,10,17),(1,1,255,11,10,40),(1,1,255,11,10,42),(1,1,255,11,10,43),(1,1,255,11,10,44),(1,1,255,11,10,45),(1,1,255,11,10,47),(1,1,255,11,10,48),(1,1,255,11,10,51),(1,1,255,11,10,55),(1,1,255,11,10,56),(1,1,255,11,10,58),(1,1,255,11,10,59),(1,1,255,11,10,60),(1,1,255,11,10,61),(1,1,255,11,20,18),(1,1,255,11,20,19),(1,1,255,11,20,20),(1,1,255,11,30,21),(1,1,255,11,30,22),(1,1,255,11,30,23),(1,1,255,11,40,24),(1,1,255,11,40,25),(1,1,255,11,40,26),(1,1,255,11,50,27),(1,1,255,11,60,28),(1,1,255,11,60,29),(1,1,256,10,10,2),(1,1,256,10,10,3),(1,1,256,10,20,4),(1,1,256,10,20,5),(1,1,256,10,30,6),(1,1,256,10,30,7),(1,1,256,10,40,8),(1,1,256,10,40,9),(1,1,256,10,50,10),(1,1,256,10,50,11),(1,1,256,10,60,12),(1,1,256,11,10,14),(1,1,256,11,10,15),(1,1,256,11,10,17),(1,1,256,11,10,40),(1,1,256,11,10,42),(1,1,256,11,10,43),(1,1,256,11,10,44),(1,1,256,11,10,45),(1,1,256,11,10,47),(1,1,256,11,10,48),(1,1,256,11,10,51),(1,1,256,11,10,55),(1,1,256,11,10,56),(1,1,256,11,10,58),(1,1,256,11,10,59),(1,1,256,11,10,60),(1,1,256,11,10,61),(1,1,256,11,20,18),(1,1,256,11,20,19),(1,1,256,11,20,20),(1,1,256,11,30,21),(1,1,256,11,30,22),(1,1,256,11,30,23),(1,1,256,11,40,24),(1,1,256,11,40,25),(1,1,256,11,40,26),(1,1,256,11,50,27),(1,1,256,11,60,28),(1,1,256,11,60,29),(1,1,257,10,10,2),(1,1,257,10,10,3),(1,1,257,10,20,4),(1,1,257,10,20,5),(1,1,257,10,30,6),(1,1,257,10,30,7),(1,1,257,10,40,8),(1,1,257,10,40,9),(1,1,257,10,50,10),(1,1,257,10,50,11),(1,1,257,10,60,12),(1,1,257,11,10,14),(1,1,257,11,10,15),(1,1,257,11,10,17),(1,1,257,11,10,40),(1,1,257,11,10,42),(1,1,257,11,10,43),(1,1,257,11,10,44),(1,1,257,11,10,45),(1,1,257,11,10,47),(1,1,257,11,10,48),(1,1,257,11,10,51),(1,1,257,11,10,55),(1,1,257,11,10,56),(1,1,257,11,10,58),(1,1,257,11,10,59),(1,1,257,11,10,60),(1,1,257,11,10,61),(1,1,257,11,20,18),(1,1,257,11,20,19),(1,1,257,11,20,20),(1,1,257,11,30,21),(1,1,257,11,30,22),(1,1,257,11,30,23),(1,1,257,11,40,24),(1,1,257,11,40,25),(1,1,257,11,40,26),(1,1,257,11,50,27),(1,1,257,11,60,28),(1,1,257,11,60,29),(1,1,258,10,10,2),(1,1,258,10,10,3),(1,1,258,10,20,4),(1,1,258,10,20,5),(1,1,258,10,30,6),(1,1,258,10,30,7),(1,1,258,10,40,8),(1,1,258,10,40,9),(1,1,258,10,50,10),(1,1,258,10,50,11),(1,1,258,10,60,12),(1,1,258,11,10,14),(1,1,258,11,10,15),(1,1,258,11,10,17),(1,1,258,11,10,40),(1,1,258,11,10,42),(1,1,258,11,10,43),(1,1,258,11,10,44),(1,1,258,11,10,45),(1,1,258,11,10,47),(1,1,258,11,10,48),(1,1,258,11,10,51),(1,1,258,11,10,55),(1,1,258,11,10,56),(1,1,258,11,10,58),(1,1,258,11,10,59),(1,1,258,11,10,60),(1,1,258,11,10,61),(1,1,258,11,20,18),(1,1,258,11,20,19),(1,1,258,11,20,20),(1,1,258,11,30,21),(1,1,258,11,30,22),(1,1,258,11,30,23),(1,1,258,11,40,24),(1,1,258,11,40,25),(1,1,258,11,40,26),(1,1,258,11,50,27),(1,1,258,11,60,28),(1,1,258,11,60,29),(1,1,259,10,10,2),(1,1,259,10,10,3),(1,1,259,10,20,4),(1,1,259,10,20,5),(1,1,259,10,30,6),(1,1,259,10,30,7),(1,1,259,10,40,8),(1,1,259,10,40,9),(1,1,259,10,50,10),(1,1,259,10,50,11),(1,1,259,10,60,12),(1,1,259,11,10,14),(1,1,259,11,10,15),(1,1,259,11,10,17),(1,1,259,11,10,40),(1,1,259,11,10,42),(1,1,259,11,10,43),(1,1,259,11,10,44),(1,1,259,11,10,45),(1,1,259,11,10,47),(1,1,259,11,10,48),(1,1,259,11,10,51),(1,1,259,11,10,55),(1,1,259,11,10,56),(1,1,259,11,10,58),(1,1,259,11,10,59),(1,1,259,11,10,60),(1,1,259,11,10,61),(1,1,259,11,20,18),(1,1,259,11,20,19),(1,1,259,11,20,20),(1,1,259,11,30,21),(1,1,259,11,30,22),(1,1,259,11,30,23),(1,1,259,11,40,24),(1,1,259,11,40,25),(1,1,259,11,40,26),(1,1,259,11,50,27),(1,1,259,11,60,28),(1,1,259,11,60,29),(1,1,260,10,10,2),(1,1,260,10,10,3),(1,1,260,10,20,4),(1,1,260,10,20,5),(1,1,260,10,30,6),(1,1,260,10,30,7),(1,1,260,10,40,8),(1,1,260,10,40,9),(1,1,260,10,50,10),(1,1,260,10,50,11),(1,1,260,10,60,12),(1,1,260,11,10,14),(1,1,260,11,10,15),(1,1,260,11,10,17),(1,1,260,11,10,40),(1,1,260,11,10,42),(1,1,260,11,10,43),(1,1,260,11,10,44),(1,1,260,11,10,45),(1,1,260,11,10,47),(1,1,260,11,10,48),(1,1,260,11,10,51),(1,1,260,11,10,55),(1,1,260,11,10,56),(1,1,260,11,10,58),(1,1,260,11,10,59),(1,1,260,11,10,60),(1,1,260,11,10,61),(1,1,260,11,20,18),(1,1,260,11,20,19),(1,1,260,11,20,20),(1,1,260,11,30,21),(1,1,260,11,30,22),(1,1,260,11,30,23),(1,1,260,11,40,24),(1,1,260,11,40,25),(1,1,260,11,40,26),(1,1,260,11,50,27),(1,1,260,11,60,28),(1,1,260,11,60,29),(1,1,261,10,10,2),(1,1,261,10,10,3),(1,1,261,10,20,4),(1,1,261,10,20,5),(1,1,261,10,30,6),(1,1,261,10,30,7),(1,1,261,10,40,8),(1,1,261,10,40,9),(1,1,261,10,50,10),(1,1,261,10,50,11),(1,1,261,10,60,12),(1,1,261,11,10,14),(1,1,261,11,10,15),(1,1,261,11,10,17),(1,1,261,11,10,40),(1,1,261,11,10,42),(1,1,261,11,10,43),(1,1,261,11,10,44),(1,1,261,11,10,45),(1,1,261,11,10,47),(1,1,261,11,10,48),(1,1,261,11,10,51),(1,1,261,11,10,55),(1,1,261,11,10,56),(1,1,261,11,10,58),(1,1,261,11,10,59),(1,1,261,11,10,60),(1,1,261,11,10,61),(1,1,261,11,20,18),(1,1,261,11,20,19),(1,1,261,11,20,20),(1,1,261,11,30,21),(1,1,261,11,30,22),(1,1,261,11,30,23),(1,1,261,11,40,24),(1,1,261,11,40,25),(1,1,261,11,40,26),(1,1,261,11,50,27),(1,1,261,11,60,28),(1,1,261,11,60,29),(1,1,262,10,10,2),(1,1,262,10,10,3),(1,1,262,10,20,4),(1,1,262,10,20,5),(1,1,262,10,30,6),(1,1,262,10,30,7),(1,1,262,10,40,8),(1,1,262,10,40,9),(1,1,262,10,50,10),(1,1,262,10,50,11),(1,1,262,10,60,12),(1,1,262,11,10,14),(1,1,262,11,10,15),(1,1,262,11,10,17),(1,1,262,11,10,40),(1,1,262,11,10,42),(1,1,262,11,10,43),(1,1,262,11,10,44),(1,1,262,11,10,45),(1,1,262,11,10,47),(1,1,262,11,10,48),(1,1,262,11,10,51),(1,1,262,11,10,55),(1,1,262,11,10,56),(1,1,262,11,10,58),(1,1,262,11,10,59),(1,1,262,11,10,60),(1,1,262,11,10,61),(1,1,262,11,20,18),(1,1,262,11,20,19),(1,1,262,11,20,20),(1,1,262,11,30,21),(1,1,262,11,30,22),(1,1,262,11,30,23),(1,1,262,11,40,24),(1,1,262,11,40,25),(1,1,262,11,40,26),(1,1,262,11,50,27),(1,1,262,11,60,28),(1,1,262,11,60,29),(1,1,263,10,10,2),(1,1,263,10,10,3),(1,1,263,10,20,4),(1,1,263,10,20,5),(1,1,263,10,30,6),(1,1,263,10,30,7),(1,1,263,10,40,8),(1,1,263,10,40,9),(1,1,263,10,50,10),(1,1,263,10,50,11),(1,1,263,10,60,12),(1,1,263,11,10,14),(1,1,263,11,10,15),(1,1,263,11,10,17),(1,1,263,11,10,40),(1,1,263,11,10,42),(1,1,263,11,10,43),(1,1,263,11,10,44),(1,1,263,11,10,45),(1,1,263,11,10,47),(1,1,263,11,10,48),(1,1,263,11,10,51),(1,1,263,11,10,55),(1,1,263,11,10,56),(1,1,263,11,10,58),(1,1,263,11,10,59),(1,1,263,11,10,60),(1,1,263,11,10,61),(1,1,263,11,20,18),(1,1,263,11,20,19),(1,1,263,11,20,20),(1,1,263,11,30,21),(1,1,263,11,30,22),(1,1,263,11,30,23),(1,1,263,11,40,24),(1,1,263,11,40,25),(1,1,263,11,40,26),(1,1,263,11,50,27),(1,1,263,11,60,28),(1,1,263,11,60,29),(1,1,264,10,10,2),(1,1,264,10,10,3),(1,1,264,10,20,4),(1,1,264,10,20,5),(1,1,264,10,30,6),(1,1,264,10,30,7),(1,1,264,10,40,8),(1,1,264,10,40,9),(1,1,264,10,50,10),(1,1,264,10,50,11),(1,1,264,10,60,12),(1,1,264,11,10,14),(1,1,264,11,10,15),(1,1,264,11,10,17),(1,1,264,11,10,40),(1,1,264,11,10,42),(1,1,264,11,10,43),(1,1,264,11,10,44),(1,1,264,11,10,45),(1,1,264,11,10,47),(1,1,264,11,10,48),(1,1,264,11,10,51),(1,1,264,11,10,55),(1,1,264,11,10,56),(1,1,264,11,10,58),(1,1,264,11,10,59),(1,1,264,11,10,60),(1,1,264,11,10,61),(1,1,264,11,20,18),(1,1,264,11,20,19),(1,1,264,11,20,20),(1,1,264,11,30,21),(1,1,264,11,30,22),(1,1,264,11,30,23),(1,1,264,11,40,24),(1,1,264,11,40,25),(1,1,264,11,40,26),(1,1,264,11,50,27),(1,1,264,11,60,28),(1,1,264,11,60,29),(1,1,265,10,10,2),(1,1,265,10,10,3),(1,1,265,10,20,4),(1,1,265,10,20,5),(1,1,265,10,30,6),(1,1,265,10,30,7),(1,1,265,10,40,8),(1,1,265,10,40,9),(1,1,265,10,50,10),(1,1,265,10,50,11),(1,1,265,10,60,12),(1,1,265,11,10,14),(1,1,265,11,10,15),(1,1,265,11,10,17),(1,1,265,11,10,40),(1,1,265,11,10,42),(1,1,265,11,10,43),(1,1,265,11,10,44),(1,1,265,11,10,45),(1,1,265,11,10,47),(1,1,265,11,10,48),(1,1,265,11,10,51),(1,1,265,11,10,55),(1,1,265,11,10,56),(1,1,265,11,10,58),(1,1,265,11,10,59),(1,1,265,11,10,60),(1,1,265,11,10,61),(1,1,265,11,20,18),(1,1,265,11,20,19),(1,1,265,11,20,20),(1,1,265,11,30,21),(1,1,265,11,30,22),(1,1,265,11,30,23),(1,1,265,11,40,24),(1,1,265,11,40,25),(1,1,265,11,40,26),(1,1,265,11,50,27),(1,1,265,11,60,28),(1,1,265,11,60,29),(1,1,266,10,10,2),(1,1,266,10,10,3),(1,1,266,10,20,4),(1,1,266,10,20,5),(1,1,266,10,30,6),(1,1,266,10,30,7),(1,1,266,10,40,8),(1,1,266,10,40,9),(1,1,266,10,50,10),(1,1,266,10,50,11),(1,1,266,10,60,12),(1,1,266,11,10,14),(1,1,266,11,10,15),(1,1,266,11,10,17),(1,1,266,11,10,40),(1,1,266,11,10,42),(1,1,266,11,10,43),(1,1,266,11,10,44),(1,1,266,11,10,45),(1,1,266,11,10,47),(1,1,266,11,10,48),(1,1,266,11,10,51),(1,1,266,11,10,55),(1,1,266,11,10,56),(1,1,266,11,10,58),(1,1,266,11,10,59),(1,1,266,11,10,60),(1,1,266,11,10,61),(1,1,266,11,20,18),(1,1,266,11,20,19),(1,1,266,11,20,20),(1,1,266,11,30,21),(1,1,266,11,30,22),(1,1,266,11,30,23),(1,1,266,11,40,24),(1,1,266,11,40,25),(1,1,266,11,40,26),(1,1,266,11,50,27),(1,1,266,11,60,28),(1,1,266,11,60,29),(1,1,267,10,10,2),(1,1,267,10,10,3),(1,1,267,10,20,4),(1,1,267,10,20,5),(1,1,267,10,30,6),(1,1,267,10,30,7),(1,1,267,10,40,8),(1,1,267,10,40,9),(1,1,267,10,50,10),(1,1,267,10,50,11),(1,1,267,10,60,12),(1,1,267,11,10,14),(1,1,267,11,10,15),(1,1,267,11,10,17),(1,1,267,11,10,40),(1,1,267,11,10,42),(1,1,267,11,10,43),(1,1,267,11,10,44),(1,1,267,11,10,45),(1,1,267,11,10,47),(1,1,267,11,10,48),(1,1,267,11,10,51),(1,1,267,11,10,55),(1,1,267,11,10,56),(1,1,267,11,10,58),(1,1,267,11,10,59),(1,1,267,11,10,60),(1,1,267,11,10,61),(1,1,267,11,20,18),(1,1,267,11,20,19),(1,1,267,11,20,20),(1,1,267,11,30,21),(1,1,267,11,30,22),(1,1,267,11,30,23),(1,1,267,11,40,24),(1,1,267,11,40,25),(1,1,267,11,40,26),(1,1,267,11,50,27),(1,1,267,11,60,28),(1,1,267,11,60,29),(1,1,268,10,10,2),(1,1,268,10,10,3),(1,1,268,10,20,4),(1,1,268,10,20,5),(1,1,268,10,30,6),(1,1,268,10,30,7),(1,1,268,10,40,8),(1,1,268,10,40,9),(1,1,268,10,50,10),(1,1,268,10,50,11),(1,1,268,10,60,12),(1,1,268,11,10,14),(1,1,268,11,10,15),(1,1,268,11,10,17),(1,1,268,11,10,40),(1,1,268,11,10,42),(1,1,268,11,10,43),(1,1,268,11,10,44),(1,1,268,11,10,45),(1,1,268,11,10,47),(1,1,268,11,10,48),(1,1,268,11,10,51),(1,1,268,11,10,55),(1,1,268,11,10,56),(1,1,268,11,10,58),(1,1,268,11,10,59),(1,1,268,11,10,60),(1,1,268,11,10,61),(1,1,268,11,20,18),(1,1,268,11,20,19),(1,1,268,11,20,20),(1,1,268,11,30,21),(1,1,268,11,30,22),(1,1,268,11,30,23),(1,1,268,11,40,24),(1,1,268,11,40,25),(1,1,268,11,40,26),(1,1,268,11,50,27),(1,1,268,11,60,28),(1,1,268,11,60,29),(1,1,269,10,10,2),(1,1,269,10,10,3),(1,1,269,10,20,4),(1,1,269,10,20,5),(1,1,269,10,30,6),(1,1,269,10,30,7),(1,1,269,10,40,8),(1,1,269,10,40,9),(1,1,269,10,50,10),(1,1,269,10,50,11),(1,1,269,10,60,12),(1,1,269,11,10,14),(1,1,269,11,10,15),(1,1,269,11,10,17),(1,1,269,11,10,40),(1,1,269,11,10,42),(1,1,269,11,10,43),(1,1,269,11,10,44),(1,1,269,11,10,45),(1,1,269,11,10,47),(1,1,269,11,10,48),(1,1,269,11,10,51),(1,1,269,11,10,55),(1,1,269,11,10,56),(1,1,269,11,10,58),(1,1,269,11,10,59),(1,1,269,11,10,60),(1,1,269,11,10,61),(1,1,269,11,20,18),(1,1,269,11,20,19),(1,1,269,11,20,20),(1,1,269,11,30,21),(1,1,269,11,30,22),(1,1,269,11,30,23),(1,1,269,11,40,24),(1,1,269,11,40,25),(1,1,269,11,40,26),(1,1,269,11,50,27),(1,1,269,11,60,28),(1,1,269,11,60,29),(1,1,270,10,10,2),(1,1,270,10,10,3),(1,1,270,10,20,4),(1,1,270,10,20,5),(1,1,270,10,30,6),(1,1,270,10,30,7),(1,1,270,10,40,8),(1,1,270,10,40,9),(1,1,270,10,50,10),(1,1,270,10,50,11),(1,1,270,10,60,12),(1,1,270,11,10,14),(1,1,270,11,10,15),(1,1,270,11,10,17),(1,1,270,11,10,40),(1,1,270,11,10,42),(1,1,270,11,10,43),(1,1,270,11,10,44),(1,1,270,11,10,45),(1,1,270,11,10,47),(1,1,270,11,10,48),(1,1,270,11,10,51),(1,1,270,11,10,55),(1,1,270,11,10,56),(1,1,270,11,10,58),(1,1,270,11,10,59),(1,1,270,11,10,60),(1,1,270,11,10,61),(1,1,270,11,20,18),(1,1,270,11,20,19),(1,1,270,11,20,20),(1,1,270,11,30,21),(1,1,270,11,30,22),(1,1,270,11,30,23),(1,1,270,11,40,24),(1,1,270,11,40,25),(1,1,270,11,40,26),(1,1,270,11,50,27),(1,1,270,11,60,28),(1,1,270,11,60,29),(1,1,271,10,10,2),(1,1,271,10,10,3),(1,1,271,10,20,4),(1,1,271,10,20,5),(1,1,271,10,30,6),(1,1,271,10,30,7),(1,1,271,10,40,8),(1,1,271,10,40,9),(1,1,271,10,50,10),(1,1,271,10,50,11),(1,1,271,10,60,12),(1,1,271,11,10,14),(1,1,271,11,10,15),(1,1,271,11,10,17),(1,1,271,11,10,40),(1,1,271,11,10,42),(1,1,271,11,10,43),(1,1,271,11,10,44),(1,1,271,11,10,45),(1,1,271,11,10,47),(1,1,271,11,10,48),(1,1,271,11,10,51),(1,1,271,11,10,55),(1,1,271,11,10,56),(1,1,271,11,10,58),(1,1,271,11,10,59),(1,1,271,11,10,60),(1,1,271,11,10,61),(1,1,271,11,20,18),(1,1,271,11,20,19),(1,1,271,11,20,20),(1,1,271,11,30,21),(1,1,271,11,30,22),(1,1,271,11,30,23),(1,1,271,11,40,24),(1,1,271,11,40,25),(1,1,271,11,40,26),(1,1,271,11,50,27),(1,1,271,11,60,28),(1,1,271,11,60,29),(1,1,272,10,10,2),(1,1,272,10,10,3),(1,1,272,10,20,4),(1,1,272,10,20,5),(1,1,272,10,30,6),(1,1,272,10,30,7),(1,1,272,10,40,8),(1,1,272,10,40,9),(1,1,272,10,50,10),(1,1,272,10,50,11),(1,1,272,10,60,12),(1,1,272,11,10,14),(1,1,272,11,10,15),(1,1,272,11,10,17),(1,1,272,11,10,40),(1,1,272,11,10,42),(1,1,272,11,10,43),(1,1,272,11,10,44),(1,1,272,11,10,45),(1,1,272,11,10,47),(1,1,272,11,10,48),(1,1,272,11,10,51),(1,1,272,11,10,55),(1,1,272,11,10,56),(1,1,272,11,10,58),(1,1,272,11,10,59),(1,1,272,11,10,60),(1,1,272,11,10,61),(1,1,272,11,20,18),(1,1,272,11,20,19),(1,1,272,11,20,20),(1,1,272,11,30,21),(1,1,272,11,30,22),(1,1,272,11,30,23),(1,1,272,11,40,24),(1,1,272,11,40,25),(1,1,272,11,40,26),(1,1,272,11,50,27),(1,1,272,11,60,28),(1,1,272,11,60,29),(1,1,273,10,10,2),(1,1,273,10,10,3),(1,1,273,10,20,4),(1,1,273,10,20,5),(1,1,273,10,30,6),(1,1,273,10,30,7),(1,1,273,10,40,8),(1,1,273,10,40,9),(1,1,273,10,50,10),(1,1,273,10,50,11),(1,1,273,10,60,12),(1,1,273,11,10,14),(1,1,273,11,10,15),(1,1,273,11,10,17),(1,1,273,11,10,40),(1,1,273,11,10,42),(1,1,273,11,10,43),(1,1,273,11,10,44),(1,1,273,11,10,45),(1,1,273,11,10,47),(1,1,273,11,10,48),(1,1,273,11,10,51),(1,1,273,11,10,55),(1,1,273,11,10,56),(1,1,273,11,10,58),(1,1,273,11,10,59),(1,1,273,11,10,60),(1,1,273,11,10,61),(1,1,273,11,20,18),(1,1,273,11,20,19),(1,1,273,11,20,20),(1,1,273,11,30,21),(1,1,273,11,30,22),(1,1,273,11,30,23),(1,1,273,11,40,24),(1,1,273,11,40,25),(1,1,273,11,40,26),(1,1,273,11,50,27),(1,1,273,11,60,28),(1,1,273,11,60,29),(1,1,274,10,10,2),(1,1,274,10,10,3),(1,1,274,10,20,4),(1,1,274,10,20,5),(1,1,274,10,30,6),(1,1,274,10,30,7),(1,1,274,10,40,8),(1,1,274,10,40,9),(1,1,274,10,50,10),(1,1,274,10,50,11),(1,1,274,10,60,12),(1,1,274,11,10,14),(1,1,274,11,10,15),(1,1,274,11,10,17),(1,1,274,11,10,40),(1,1,274,11,10,42),(1,1,274,11,10,43),(1,1,274,11,10,44),(1,1,274,11,10,45),(1,1,274,11,10,47),(1,1,274,11,10,48),(1,1,274,11,10,51),(1,1,274,11,10,55),(1,1,274,11,10,56),(1,1,274,11,10,58),(1,1,274,11,10,59),(1,1,274,11,10,60),(1,1,274,11,10,61),(1,1,274,11,20,18),(1,1,274,11,20,19),(1,1,274,11,20,20),(1,1,274,11,30,21),(1,1,274,11,30,22),(1,1,274,11,30,23),(1,1,274,11,40,24),(1,1,274,11,40,25),(1,1,274,11,40,26),(1,1,274,11,50,27),(1,1,274,11,60,28),(1,1,274,11,60,29),(1,1,275,10,10,2),(1,1,275,10,10,3),(1,1,275,10,20,4),(1,1,275,10,20,5),(1,1,275,10,30,6),(1,1,275,10,30,7),(1,1,275,10,40,8),(1,1,275,10,40,9),(1,1,275,10,50,10),(1,1,275,10,50,11),(1,1,275,10,60,12),(1,1,275,11,10,14),(1,1,275,11,10,15),(1,1,275,11,10,17),(1,1,275,11,10,40),(1,1,275,11,10,42),(1,1,275,11,10,43),(1,1,275,11,10,44),(1,1,275,11,10,45),(1,1,275,11,10,47),(1,1,275,11,10,48),(1,1,275,11,10,51),(1,1,275,11,10,55),(1,1,275,11,10,56),(1,1,275,11,10,58),(1,1,275,11,10,59),(1,1,275,11,10,60),(1,1,275,11,10,61),(1,1,275,11,20,18),(1,1,275,11,20,19),(1,1,275,11,20,20),(1,1,275,11,30,21),(1,1,275,11,30,22),(1,1,275,11,30,23),(1,1,275,11,40,24),(1,1,275,11,40,25),(1,1,275,11,40,26),(1,1,275,11,50,27),(1,1,275,11,60,28),(1,1,275,11,60,29),(1,1,276,10,10,2),(1,1,276,10,10,3),(1,1,276,10,20,4),(1,1,276,10,20,5),(1,1,276,10,30,6),(1,1,276,10,30,7),(1,1,276,10,40,8),(1,1,276,10,40,9),(1,1,276,10,50,10),(1,1,276,10,50,11),(1,1,276,10,60,12),(1,1,276,11,10,14),(1,1,276,11,10,15),(1,1,276,11,10,17),(1,1,276,11,10,40),(1,1,276,11,10,42),(1,1,276,11,10,43),(1,1,276,11,10,44),(1,1,276,11,10,45),(1,1,276,11,10,47),(1,1,276,11,10,48),(1,1,276,11,10,51),(1,1,276,11,10,55),(1,1,276,11,10,56),(1,1,276,11,10,58),(1,1,276,11,10,59),(1,1,276,11,10,60),(1,1,276,11,10,61),(1,1,276,11,20,18),(1,1,276,11,20,19),(1,1,276,11,20,20),(1,1,276,11,30,21),(1,1,276,11,30,22),(1,1,276,11,30,23),(1,1,276,11,40,24),(1,1,276,11,40,25),(1,1,276,11,40,26),(1,1,276,11,50,27),(1,1,276,11,60,28),(1,1,276,11,60,29),(1,1,277,10,10,2),(1,1,277,10,10,3),(1,1,277,10,20,4),(1,1,277,10,20,5),(1,1,277,10,30,6),(1,1,277,10,30,7),(1,1,277,10,40,8),(1,1,277,10,40,9),(1,1,277,10,50,10),(1,1,277,10,50,11),(1,1,277,10,60,12),(1,1,277,11,10,14),(1,1,277,11,10,15),(1,1,277,11,10,17),(1,1,277,11,10,40),(1,1,277,11,10,42),(1,1,277,11,10,43),(1,1,277,11,10,44),(1,1,277,11,10,45),(1,1,277,11,10,47),(1,1,277,11,10,48),(1,1,277,11,10,51),(1,1,277,11,10,55),(1,1,277,11,10,56),(1,1,277,11,10,58),(1,1,277,11,10,59),(1,1,277,11,10,60),(1,1,277,11,10,61),(1,1,277,11,20,18),(1,1,277,11,20,19),(1,1,277,11,20,20),(1,1,277,11,30,21),(1,1,277,11,30,22),(1,1,277,11,30,23),(1,1,277,11,40,24),(1,1,277,11,40,25),(1,1,277,11,40,26),(1,1,277,11,50,27),(1,1,277,11,60,28),(1,1,277,11,60,29),(1,1,278,10,10,2),(1,1,278,10,10,3),(1,1,278,10,20,4),(1,1,278,10,20,5),(1,1,278,10,30,6),(1,1,278,10,30,7),(1,1,278,10,40,8),(1,1,278,10,40,9),(1,1,278,10,50,10),(1,1,278,10,50,11),(1,1,278,10,60,12),(1,1,278,11,10,14),(1,1,278,11,10,15),(1,1,278,11,10,17),(1,1,278,11,10,40),(1,1,278,11,10,42),(1,1,278,11,10,43),(1,1,278,11,10,44),(1,1,278,11,10,45),(1,1,278,11,10,47),(1,1,278,11,10,48),(1,1,278,11,10,51),(1,1,278,11,10,55),(1,1,278,11,10,56),(1,1,278,11,10,58),(1,1,278,11,10,59),(1,1,278,11,10,60),(1,1,278,11,10,61),(1,1,278,11,20,18),(1,1,278,11,20,19),(1,1,278,11,20,20),(1,1,278,11,30,21),(1,1,278,11,30,22),(1,1,278,11,30,23),(1,1,278,11,40,24),(1,1,278,11,40,25),(1,1,278,11,40,26),(1,1,278,11,50,27),(1,1,278,11,60,28),(1,1,278,11,60,29),(1,1,279,10,10,2),(1,1,279,10,10,3),(1,1,279,10,20,4),(1,1,279,10,20,5),(1,1,279,10,30,6),(1,1,279,10,30,7),(1,1,279,10,40,8),(1,1,279,10,40,9),(1,1,279,10,50,10),(1,1,279,10,50,11),(1,1,279,10,60,12),(1,1,279,11,10,14),(1,1,279,11,10,15),(1,1,279,11,10,17),(1,1,279,11,10,40),(1,1,279,11,10,42),(1,1,279,11,10,43),(1,1,279,11,10,44),(1,1,279,11,10,45),(1,1,279,11,10,47),(1,1,279,11,10,48),(1,1,279,11,10,51),(1,1,279,11,10,55),(1,1,279,11,10,56),(1,1,279,11,10,58),(1,1,279,11,10,59),(1,1,279,11,10,60),(1,1,279,11,10,61),(1,1,279,11,20,18),(1,1,279,11,20,19),(1,1,279,11,20,20),(1,1,279,11,30,21),(1,1,279,11,30,22),(1,1,279,11,30,23),(1,1,279,11,40,24),(1,1,279,11,40,25),(1,1,279,11,40,26),(1,1,279,11,50,27),(1,1,279,11,60,28),(1,1,279,11,60,29),(1,1,280,10,10,2),(1,1,280,10,10,3),(1,1,280,10,20,4),(1,1,280,10,20,5),(1,1,280,10,30,6),(1,1,280,10,30,7),(1,1,280,10,40,8),(1,1,280,10,40,9),(1,1,280,10,50,10),(1,1,280,10,50,11),(1,1,280,10,60,12),(1,1,280,11,10,14),(1,1,280,11,10,15),(1,1,280,11,10,17),(1,1,280,11,10,40),(1,1,280,11,10,42),(1,1,280,11,10,43),(1,1,280,11,10,44),(1,1,280,11,10,45),(1,1,280,11,10,47),(1,1,280,11,10,48),(1,1,280,11,10,51),(1,1,280,11,10,55),(1,1,280,11,10,56),(1,1,280,11,10,58),(1,1,280,11,10,59),(1,1,280,11,10,60),(1,1,280,11,10,61),(1,1,280,11,20,18),(1,1,280,11,20,19),(1,1,280,11,20,20),(1,1,280,11,30,21),(1,1,280,11,30,22),(1,1,280,11,30,23),(1,1,280,11,40,24),(1,1,280,11,40,25),(1,1,280,11,40,26),(1,1,280,11,50,27),(1,1,280,11,60,28),(1,1,280,11,60,29),(1,1,281,10,10,2),(1,1,281,10,10,3),(1,1,281,10,20,4),(1,1,281,10,20,5),(1,1,281,10,30,6),(1,1,281,10,30,7),(1,1,281,10,40,8),(1,1,281,10,40,9),(1,1,281,10,50,10),(1,1,281,10,50,11),(1,1,281,10,60,12),(1,1,281,11,10,14),(1,1,281,11,10,15),(1,1,281,11,10,17),(1,1,281,11,10,40),(1,1,281,11,10,42),(1,1,281,11,10,43),(1,1,281,11,10,44),(1,1,281,11,10,45),(1,1,281,11,10,47),(1,1,281,11,10,48),(1,1,281,11,10,51),(1,1,281,11,10,55),(1,1,281,11,10,56),(1,1,281,11,10,58),(1,1,281,11,10,59),(1,1,281,11,10,60),(1,1,281,11,10,61),(1,1,281,11,20,18),(1,1,281,11,20,19),(1,1,281,11,20,20),(1,1,281,11,30,21),(1,1,281,11,30,22),(1,1,281,11,30,23),(1,1,281,11,40,24),(1,1,281,11,40,25),(1,1,281,11,40,26),(1,1,281,11,50,27),(1,1,281,11,60,28),(1,1,281,11,60,29),(1,1,282,10,10,2),(1,1,282,10,10,3),(1,1,282,10,20,4),(1,1,282,10,20,5),(1,1,282,10,30,6),(1,1,282,10,30,7),(1,1,282,10,40,8),(1,1,282,10,40,9),(1,1,282,10,50,10),(1,1,282,10,50,11),(1,1,282,10,60,12),(1,1,282,11,10,14),(1,1,282,11,10,15),(1,1,282,11,10,17),(1,1,282,11,10,40),(1,1,282,11,10,42),(1,1,282,11,10,43),(1,1,282,11,10,44),(1,1,282,11,10,45),(1,1,282,11,10,47),(1,1,282,11,10,48),(1,1,282,11,10,51),(1,1,282,11,10,55),(1,1,282,11,10,56),(1,1,282,11,10,58),(1,1,282,11,10,59),(1,1,282,11,10,60),(1,1,282,11,10,61),(1,1,282,11,20,18),(1,1,282,11,20,19),(1,1,282,11,20,20),(1,1,282,11,30,21),(1,1,282,11,30,22),(1,1,282,11,30,23),(1,1,282,11,40,24),(1,1,282,11,40,25),(1,1,282,11,40,26),(1,1,282,11,50,27),(1,1,282,11,60,28),(1,1,282,11,60,29),(1,1,283,10,10,2),(1,1,283,10,10,3),(1,1,283,10,20,4),(1,1,283,10,20,5),(1,1,283,10,30,6),(1,1,283,10,30,7),(1,1,283,10,40,8),(1,1,283,10,40,9),(1,1,283,10,50,10),(1,1,283,10,50,11),(1,1,283,10,60,12),(1,1,283,11,10,14),(1,1,283,11,10,15),(1,1,283,11,10,17),(1,1,283,11,10,40),(1,1,283,11,10,42),(1,1,283,11,10,43),(1,1,283,11,10,44),(1,1,283,11,10,45),(1,1,283,11,10,47),(1,1,283,11,10,48),(1,1,283,11,10,51),(1,1,283,11,10,55),(1,1,283,11,10,56),(1,1,283,11,10,58),(1,1,283,11,10,59),(1,1,283,11,10,60),(1,1,283,11,10,61),(1,1,283,11,20,18),(1,1,283,11,20,19),(1,1,283,11,20,20),(1,1,283,11,30,21),(1,1,283,11,30,22),(1,1,283,11,30,23),(1,1,283,11,40,24),(1,1,283,11,40,25),(1,1,283,11,40,26),(1,1,283,11,50,27),(1,1,283,11,60,28),(1,1,283,11,60,29),(1,1,284,10,10,2),(1,1,284,10,10,3),(1,1,284,10,20,4),(1,1,284,10,20,5),(1,1,284,10,30,6),(1,1,284,10,30,7),(1,1,284,10,40,8),(1,1,284,10,40,9),(1,1,284,10,50,10),(1,1,284,10,50,11),(1,1,284,10,60,12),(1,1,284,11,10,14),(1,1,284,11,10,15),(1,1,284,11,10,17),(1,1,284,11,10,40),(1,1,284,11,10,42),(1,1,284,11,10,43),(1,1,284,11,10,44),(1,1,284,11,10,45),(1,1,284,11,10,47),(1,1,284,11,10,48),(1,1,284,11,10,51),(1,1,284,11,10,55),(1,1,284,11,10,56),(1,1,284,11,10,58),(1,1,284,11,10,59),(1,1,284,11,10,60),(1,1,284,11,10,61),(1,1,284,11,20,18),(1,1,284,11,20,19),(1,1,284,11,20,20),(1,1,284,11,30,21),(1,1,284,11,30,22),(1,1,284,11,30,23),(1,1,284,11,40,24),(1,1,284,11,40,25),(1,1,284,11,40,26),(1,1,284,11,50,27),(1,1,284,11,60,28),(1,1,284,11,60,29),(1,1,285,10,10,2),(1,1,285,10,10,3),(1,1,285,10,20,4),(1,1,285,10,20,5),(1,1,285,10,30,6),(1,1,285,10,30,7),(1,1,285,10,40,8),(1,1,285,10,40,9),(1,1,285,10,50,10),(1,1,285,10,50,11),(1,1,285,10,60,12),(1,1,285,11,10,14),(1,1,285,11,10,15),(1,1,285,11,10,17),(1,1,285,11,10,40),(1,1,285,11,10,42),(1,1,285,11,10,43),(1,1,285,11,10,44),(1,1,285,11,10,45),(1,1,285,11,10,47),(1,1,285,11,10,48),(1,1,285,11,10,51),(1,1,285,11,10,55),(1,1,285,11,10,56),(1,1,285,11,10,58),(1,1,285,11,10,59),(1,1,285,11,10,60),(1,1,285,11,10,61),(1,1,285,11,20,18),(1,1,285,11,20,19),(1,1,285,11,20,20),(1,1,285,11,30,21),(1,1,285,11,30,22),(1,1,285,11,30,23),(1,1,285,11,40,24),(1,1,285,11,40,25),(1,1,285,11,40,26),(1,1,285,11,50,27),(1,1,285,11,60,28),(1,1,285,11,60,29),(1,1,286,10,10,2),(1,1,286,10,10,3),(1,1,286,10,20,4),(1,1,286,10,20,5),(1,1,286,10,30,6),(1,1,286,10,30,7),(1,1,286,10,40,8),(1,1,286,10,40,9),(1,1,286,10,50,10),(1,1,286,10,50,11),(1,1,286,10,60,12),(1,1,286,11,10,14),(1,1,286,11,10,15),(1,1,286,11,10,17),(1,1,286,11,10,40),(1,1,286,11,10,42),(1,1,286,11,10,43),(1,1,286,11,10,44),(1,1,286,11,10,45),(1,1,286,11,10,47),(1,1,286,11,10,48),(1,1,286,11,10,51),(1,1,286,11,10,55),(1,1,286,11,10,56),(1,1,286,11,10,58),(1,1,286,11,10,59),(1,1,286,11,10,60),(1,1,286,11,10,61),(1,1,286,11,20,18),(1,1,286,11,20,19),(1,1,286,11,20,20),(1,1,286,11,30,21),(1,1,286,11,30,22),(1,1,286,11,30,23),(1,1,286,11,40,24),(1,1,286,11,40,25),(1,1,286,11,40,26),(1,1,286,11,50,27),(1,1,286,11,60,28),(1,1,286,11,60,29),(1,1,287,10,10,2),(1,1,287,10,10,3),(1,1,287,10,20,4),(1,1,287,10,20,5),(1,1,287,10,30,6),(1,1,287,10,30,7),(1,1,287,10,40,8),(1,1,287,10,40,9),(1,1,287,10,50,10),(1,1,287,10,50,11),(1,1,287,10,60,12),(1,1,287,11,10,14),(1,1,287,11,10,15),(1,1,287,11,10,17),(1,1,287,11,10,40),(1,1,287,11,10,42),(1,1,287,11,10,43),(1,1,287,11,10,44),(1,1,287,11,10,45),(1,1,287,11,10,47),(1,1,287,11,10,48),(1,1,287,11,10,51),(1,1,287,11,10,55),(1,1,287,11,10,56),(1,1,287,11,10,58),(1,1,287,11,10,59),(1,1,287,11,10,60),(1,1,287,11,10,61),(1,1,287,11,20,18),(1,1,287,11,20,19),(1,1,287,11,20,20),(1,1,287,11,30,21),(1,1,287,11,30,22),(1,1,287,11,30,23),(1,1,287,11,40,24),(1,1,287,11,40,25),(1,1,287,11,40,26),(1,1,287,11,50,27),(1,1,287,11,60,28),(1,1,287,11,60,29),(1,1,288,10,10,2),(1,1,288,10,10,3),(1,1,288,10,20,4),(1,1,288,10,20,5),(1,1,288,10,30,6),(1,1,288,10,30,7),(1,1,288,10,40,8),(1,1,288,10,40,9),(1,1,288,10,50,10),(1,1,288,10,50,11),(1,1,288,10,60,12),(1,1,288,11,10,14),(1,1,288,11,10,15),(1,1,288,11,10,17),(1,1,288,11,10,40),(1,1,288,11,10,42),(1,1,288,11,10,43),(1,1,288,11,10,44),(1,1,288,11,10,45),(1,1,288,11,10,47),(1,1,288,11,10,48),(1,1,288,11,10,51),(1,1,288,11,10,55),(1,1,288,11,10,56),(1,1,288,11,10,58),(1,1,288,11,10,59),(1,1,288,11,10,60),(1,1,288,11,10,61),(1,1,288,11,20,18),(1,1,288,11,20,19),(1,1,288,11,20,20),(1,1,288,11,30,21),(1,1,288,11,30,22),(1,1,288,11,30,23),(1,1,288,11,40,24),(1,1,288,11,40,25),(1,1,288,11,40,26),(1,1,288,11,50,27),(1,1,288,11,60,28),(1,1,288,11,60,29),(1,1,289,10,10,2),(1,1,289,10,10,3),(1,1,289,10,20,4),(1,1,289,10,20,5),(1,1,289,10,30,6),(1,1,289,10,30,7),(1,1,289,10,40,8),(1,1,289,10,40,9),(1,1,289,10,50,10),(1,1,289,10,50,11),(1,1,289,10,60,12),(1,1,289,11,10,14),(1,1,289,11,10,15),(1,1,289,11,10,17),(1,1,289,11,10,40),(1,1,289,11,10,42),(1,1,289,11,10,43),(1,1,289,11,10,44),(1,1,289,11,10,45),(1,1,289,11,10,47),(1,1,289,11,10,48),(1,1,289,11,10,51),(1,1,289,11,10,55),(1,1,289,11,10,56),(1,1,289,11,10,58),(1,1,289,11,10,59),(1,1,289,11,10,60),(1,1,289,11,10,61),(1,1,289,11,20,18),(1,1,289,11,20,19),(1,1,289,11,20,20),(1,1,289,11,30,21),(1,1,289,11,30,22),(1,1,289,11,30,23),(1,1,289,11,40,24),(1,1,289,11,40,25),(1,1,289,11,40,26),(1,1,289,11,50,27),(1,1,289,11,60,28),(1,1,289,11,60,29),(1,1,290,10,10,2),(1,1,290,10,10,3),(1,1,290,10,20,4),(1,1,290,10,20,5),(1,1,290,10,30,6),(1,1,290,10,30,7),(1,1,290,10,40,8),(1,1,290,10,40,9),(1,1,290,10,50,10),(1,1,290,10,50,11),(1,1,290,10,60,12),(1,1,290,11,10,14),(1,1,290,11,10,15),(1,1,290,11,10,17),(1,1,290,11,10,40),(1,1,290,11,10,42),(1,1,290,11,10,43),(1,1,290,11,10,44),(1,1,290,11,10,45),(1,1,290,11,10,47),(1,1,290,11,10,48),(1,1,290,11,10,51),(1,1,290,11,10,55),(1,1,290,11,10,56),(1,1,290,11,10,58),(1,1,290,11,10,59),(1,1,290,11,10,60),(1,1,290,11,10,61),(1,1,290,11,20,18),(1,1,290,11,20,19),(1,1,290,11,20,20),(1,1,290,11,30,21),(1,1,290,11,30,22),(1,1,290,11,30,23),(1,1,290,11,40,24),(1,1,290,11,40,25),(1,1,290,11,40,26),(1,1,290,11,50,27),(1,1,290,11,60,28),(1,1,290,11,60,29),(1,1,291,10,10,2),(1,1,291,10,10,3),(1,1,291,10,20,4),(1,1,291,10,20,5),(1,1,291,10,30,6),(1,1,291,10,30,7),(1,1,291,10,40,8),(1,1,291,10,40,9),(1,1,291,10,50,10),(1,1,291,10,50,11),(1,1,291,10,60,12),(1,1,291,11,10,14),(1,1,291,11,10,15),(1,1,291,11,10,17),(1,1,291,11,10,40),(1,1,291,11,10,42),(1,1,291,11,10,43),(1,1,291,11,10,44),(1,1,291,11,10,45),(1,1,291,11,10,47),(1,1,291,11,10,48),(1,1,291,11,10,51),(1,1,291,11,10,55),(1,1,291,11,10,56),(1,1,291,11,10,58),(1,1,291,11,10,59),(1,1,291,11,10,60),(1,1,291,11,10,61),(1,1,291,11,20,18),(1,1,291,11,20,19),(1,1,291,11,20,20),(1,1,291,11,30,21),(1,1,291,11,30,22),(1,1,291,11,30,23),(1,1,291,11,40,24),(1,1,291,11,40,25),(1,1,291,11,40,26),(1,1,291,11,50,27),(1,1,291,11,60,28),(1,1,291,11,60,29),(1,1,292,10,10,2),(1,1,292,10,10,3),(1,1,292,10,20,4),(1,1,292,10,20,5),(1,1,292,10,30,6),(1,1,292,10,30,7),(1,1,292,10,40,8),(1,1,292,10,40,9),(1,1,292,10,50,10),(1,1,292,10,50,11),(1,1,292,10,60,12),(1,1,292,11,10,14),(1,1,292,11,10,15),(1,1,292,11,10,17),(1,1,292,11,10,40),(1,1,292,11,10,42),(1,1,292,11,10,43),(1,1,292,11,10,44),(1,1,292,11,10,45),(1,1,292,11,10,47),(1,1,292,11,10,48),(1,1,292,11,10,51),(1,1,292,11,10,55),(1,1,292,11,10,56),(1,1,292,11,10,58),(1,1,292,11,10,59),(1,1,292,11,10,60),(1,1,292,11,10,61),(1,1,292,11,20,18),(1,1,292,11,20,19),(1,1,292,11,20,20),(1,1,292,11,30,21),(1,1,292,11,30,22),(1,1,292,11,30,23),(1,1,292,11,40,24),(1,1,292,11,40,25),(1,1,292,11,40,26),(1,1,292,11,50,27),(1,1,292,11,60,28),(1,1,292,11,60,29),(1,1,293,10,10,2),(1,1,293,10,10,3),(1,1,293,10,20,4),(1,1,293,10,20,5),(1,1,293,10,30,6),(1,1,293,10,30,7),(1,1,293,10,40,8),(1,1,293,10,40,9),(1,1,293,10,50,10),(1,1,293,10,50,11),(1,1,293,10,60,12),(1,1,293,11,10,14),(1,1,293,11,10,15),(1,1,293,11,10,17),(1,1,293,11,10,40),(1,1,293,11,10,42),(1,1,293,11,10,43),(1,1,293,11,10,44),(1,1,293,11,10,45),(1,1,293,11,10,47),(1,1,293,11,10,48),(1,1,293,11,10,51),(1,1,293,11,10,55),(1,1,293,11,10,56),(1,1,293,11,10,58),(1,1,293,11,10,59),(1,1,293,11,10,60),(1,1,293,11,10,61),(1,1,293,11,20,18),(1,1,293,11,20,19),(1,1,293,11,20,20),(1,1,293,11,30,21),(1,1,293,11,30,22),(1,1,293,11,30,23),(1,1,293,11,40,24),(1,1,293,11,40,25),(1,1,293,11,40,26),(1,1,293,11,50,27),(1,1,293,11,60,28),(1,1,293,11,60,29),(1,1,294,10,10,2),(1,1,294,10,10,3),(1,1,294,10,20,4),(1,1,294,10,20,5),(1,1,294,10,30,6),(1,1,294,10,30,7),(1,1,294,10,40,8),(1,1,294,10,40,9),(1,1,294,10,50,10),(1,1,294,10,50,11),(1,1,294,10,60,12),(1,1,294,11,10,14),(1,1,294,11,10,15),(1,1,294,11,10,17),(1,1,294,11,10,40),(1,1,294,11,10,42),(1,1,294,11,10,43),(1,1,294,11,10,44),(1,1,294,11,10,45),(1,1,294,11,10,47),(1,1,294,11,10,48),(1,1,294,11,10,51),(1,1,294,11,10,55),(1,1,294,11,10,56),(1,1,294,11,10,58),(1,1,294,11,10,59),(1,1,294,11,10,60),(1,1,294,11,10,61),(1,1,294,11,20,18),(1,1,294,11,20,19),(1,1,294,11,20,20),(1,1,294,11,30,21),(1,1,294,11,30,22),(1,1,294,11,30,23),(1,1,294,11,40,24),(1,1,294,11,40,25),(1,1,294,11,40,26),(1,1,294,11,50,27),(1,1,294,11,60,28),(1,1,294,11,60,29),(1,1,295,10,10,2),(1,1,295,10,10,3),(1,1,295,10,20,4),(1,1,295,10,20,5),(1,1,295,10,30,6),(1,1,295,10,30,7),(1,1,295,10,40,8),(1,1,295,10,40,9),(1,1,295,10,50,10),(1,1,295,10,50,11),(1,1,295,10,60,12),(1,1,295,11,10,14),(1,1,295,11,10,15),(1,1,295,11,10,17),(1,1,295,11,10,40),(1,1,295,11,10,42),(1,1,295,11,10,43),(1,1,295,11,10,44),(1,1,295,11,10,45),(1,1,295,11,10,47),(1,1,295,11,10,48),(1,1,295,11,10,51),(1,1,295,11,10,55),(1,1,295,11,10,56),(1,1,295,11,10,58),(1,1,295,11,10,59),(1,1,295,11,10,60),(1,1,295,11,10,61),(1,1,295,11,20,18),(1,1,295,11,20,19),(1,1,295,11,20,20),(1,1,295,11,30,21),(1,1,295,11,30,22),(1,1,295,11,30,23),(1,1,295,11,40,24),(1,1,295,11,40,25),(1,1,295,11,40,26),(1,1,295,11,50,27),(1,1,295,11,60,28),(1,1,295,11,60,29),(1,1,296,10,10,2),(1,1,296,10,10,3),(1,1,296,10,20,4),(1,1,296,10,20,5),(1,1,296,10,30,6),(1,1,296,10,30,7),(1,1,296,10,40,8),(1,1,296,10,40,9),(1,1,296,10,50,10),(1,1,296,10,50,11),(1,1,296,10,60,12),(1,1,296,11,10,14),(1,1,296,11,10,15),(1,1,296,11,10,17),(1,1,296,11,10,40),(1,1,296,11,10,42),(1,1,296,11,10,43),(1,1,296,11,10,44),(1,1,296,11,10,45),(1,1,296,11,10,47),(1,1,296,11,10,48),(1,1,296,11,10,51),(1,1,296,11,10,55),(1,1,296,11,10,56),(1,1,296,11,10,58),(1,1,296,11,10,59),(1,1,296,11,10,60),(1,1,296,11,10,61),(1,1,296,11,20,18),(1,1,296,11,20,19),(1,1,296,11,20,20),(1,1,296,11,30,21),(1,1,296,11,30,22),(1,1,296,11,30,23),(1,1,296,11,40,24),(1,1,296,11,40,25),(1,1,296,11,40,26),(1,1,296,11,50,27),(1,1,296,11,60,28),(1,1,296,11,60,29),(1,1,297,10,10,2),(1,1,297,10,10,3),(1,1,297,10,20,4),(1,1,297,10,20,5),(1,1,297,10,30,6),(1,1,297,10,30,7),(1,1,297,10,40,8),(1,1,297,10,40,9),(1,1,297,10,50,10),(1,1,297,10,50,11),(1,1,297,10,60,12),(1,1,297,11,10,14),(1,1,297,11,10,15),(1,1,297,11,10,17),(1,1,297,11,10,40),(1,1,297,11,10,42),(1,1,297,11,10,43),(1,1,297,11,10,44),(1,1,297,11,10,45),(1,1,297,11,10,47),(1,1,297,11,10,48),(1,1,297,11,10,51),(1,1,297,11,10,55),(1,1,297,11,10,56),(1,1,297,11,10,58),(1,1,297,11,10,59),(1,1,297,11,10,60),(1,1,297,11,10,61),(1,1,297,11,20,18),(1,1,297,11,20,19),(1,1,297,11,20,20),(1,1,297,11,30,21),(1,1,297,11,30,22),(1,1,297,11,30,23),(1,1,297,11,40,24),(1,1,297,11,40,25),(1,1,297,11,40,26),(1,1,297,11,50,27),(1,1,297,11,60,28),(1,1,297,11,60,29),(1,1,298,10,10,2),(1,1,298,10,10,3),(1,1,298,10,20,4),(1,1,298,10,20,5),(1,1,298,10,30,6),(1,1,298,10,30,7),(1,1,298,10,40,8),(1,1,298,10,40,9),(1,1,298,10,50,10),(1,1,298,10,50,11),(1,1,298,10,60,12),(1,1,298,11,10,14),(1,1,298,11,10,15),(1,1,298,11,10,17),(1,1,298,11,10,40),(1,1,298,11,10,42),(1,1,298,11,10,43),(1,1,298,11,10,44),(1,1,298,11,10,45),(1,1,298,11,10,47),(1,1,298,11,10,48),(1,1,298,11,10,51),(1,1,298,11,10,55),(1,1,298,11,10,56),(1,1,298,11,10,58),(1,1,298,11,10,59),(1,1,298,11,10,60),(1,1,298,11,10,61),(1,1,298,11,20,18),(1,1,298,11,20,19),(1,1,298,11,20,20),(1,1,298,11,30,21),(1,1,298,11,30,22),(1,1,298,11,30,23),(1,1,298,11,40,24),(1,1,298,11,40,25),(1,1,298,11,40,26),(1,1,298,11,50,27),(1,1,298,11,60,28),(1,1,298,11,60,29),(1,1,299,10,10,2),(1,1,299,10,10,3),(1,1,299,10,20,4),(1,1,299,10,20,5),(1,1,299,10,30,6),(1,1,299,10,30,7),(1,1,299,10,40,8),(1,1,299,10,40,9),(1,1,299,10,50,10),(1,1,299,10,50,11),(1,1,299,10,60,12),(1,1,299,11,10,14),(1,1,299,11,10,15),(1,1,299,11,10,17),(1,1,299,11,10,40),(1,1,299,11,10,42),(1,1,299,11,10,43),(1,1,299,11,10,44),(1,1,299,11,10,45),(1,1,299,11,10,47),(1,1,299,11,10,48),(1,1,299,11,10,51),(1,1,299,11,10,55),(1,1,299,11,10,56),(1,1,299,11,10,58),(1,1,299,11,10,59),(1,1,299,11,10,60),(1,1,299,11,10,61),(1,1,299,11,20,18),(1,1,299,11,20,19),(1,1,299,11,20,20),(1,1,299,11,30,21),(1,1,299,11,30,22),(1,1,299,11,30,23),(1,1,299,11,40,24),(1,1,299,11,40,25),(1,1,299,11,40,26),(1,1,299,11,50,27),(1,1,299,11,60,28),(1,1,299,11,60,29),(1,1,300,10,10,2),(1,1,300,10,10,3),(1,1,300,10,20,4),(1,1,300,10,20,5),(1,1,300,10,30,6),(1,1,300,10,30,7),(1,1,300,10,40,8),(1,1,300,10,40,9),(1,1,300,10,50,10),(1,1,300,10,50,11),(1,1,300,10,60,12),(1,1,300,11,10,14),(1,1,300,11,10,15),(1,1,300,11,10,17),(1,1,300,11,10,40),(1,1,300,11,10,42),(1,1,300,11,10,43),(1,1,300,11,10,44),(1,1,300,11,10,45),(1,1,300,11,10,47),(1,1,300,11,10,48),(1,1,300,11,10,51),(1,1,300,11,10,55),(1,1,300,11,10,56),(1,1,300,11,10,58),(1,1,300,11,10,59),(1,1,300,11,10,60),(1,1,300,11,10,61),(1,1,300,11,20,18),(1,1,300,11,20,19),(1,1,300,11,20,20),(1,1,300,11,30,21),(1,1,300,11,30,22),(1,1,300,11,30,23),(1,1,300,11,40,24),(1,1,300,11,40,25),(1,1,300,11,40,26),(1,1,300,11,50,27),(1,1,300,11,60,28),(1,1,300,11,60,29),(1,1,301,10,10,2),(1,1,301,10,10,3),(1,1,301,10,20,4),(1,1,301,10,20,5),(1,1,301,10,30,6),(1,1,301,10,30,7),(1,1,301,10,40,8),(1,1,301,10,40,9),(1,1,301,10,50,10),(1,1,301,10,50,11),(1,1,301,10,60,12),(1,1,301,11,10,14),(1,1,301,11,10,15),(1,1,301,11,10,17),(1,1,301,11,10,40),(1,1,301,11,10,42),(1,1,301,11,10,43),(1,1,301,11,10,44),(1,1,301,11,10,45),(1,1,301,11,10,47),(1,1,301,11,10,48),(1,1,301,11,10,51),(1,1,301,11,10,55),(1,1,301,11,10,56),(1,1,301,11,10,58),(1,1,301,11,10,59),(1,1,301,11,10,60),(1,1,301,11,10,61),(1,1,301,11,20,18),(1,1,301,11,20,19),(1,1,301,11,20,20),(1,1,301,11,30,21),(1,1,301,11,30,22),(1,1,301,11,30,23),(1,1,301,11,40,24),(1,1,301,11,40,25),(1,1,301,11,40,26),(1,1,301,11,50,27),(1,1,301,11,60,28),(1,1,301,11,60,29),(1,1,302,10,10,2),(1,1,302,10,10,3),(1,1,302,10,20,4),(1,1,302,10,20,5),(1,1,302,10,30,6),(1,1,302,10,30,7),(1,1,302,10,40,8),(1,1,302,10,40,9),(1,1,302,10,50,10),(1,1,302,10,50,11),(1,1,302,10,60,12),(1,1,302,11,10,14),(1,1,302,11,10,15),(1,1,302,11,10,17),(1,1,302,11,10,40),(1,1,302,11,10,42),(1,1,302,11,10,43),(1,1,302,11,10,44),(1,1,302,11,10,45),(1,1,302,11,10,47),(1,1,302,11,10,48),(1,1,302,11,10,51),(1,1,302,11,10,55),(1,1,302,11,10,56),(1,1,302,11,10,58),(1,1,302,11,10,59),(1,1,302,11,10,60),(1,1,302,11,10,61),(1,1,302,11,20,18),(1,1,302,11,20,19),(1,1,302,11,20,20),(1,1,302,11,30,21),(1,1,302,11,30,22),(1,1,302,11,30,23),(1,1,302,11,40,24),(1,1,302,11,40,25),(1,1,302,11,40,26),(1,1,302,11,50,27),(1,1,302,11,60,28),(1,1,302,11,60,29),(1,1,303,10,10,2),(1,1,303,10,10,3),(1,1,303,10,20,4),(1,1,303,10,20,5),(1,1,303,10,30,6),(1,1,303,10,30,7),(1,1,303,10,40,8),(1,1,303,10,40,9),(1,1,303,10,50,10),(1,1,303,10,50,11),(1,1,303,10,60,12),(1,1,303,11,10,14),(1,1,303,11,10,15),(1,1,303,11,10,17),(1,1,303,11,10,40),(1,1,303,11,10,42),(1,1,303,11,10,43),(1,1,303,11,10,44),(1,1,303,11,10,45),(1,1,303,11,10,47),(1,1,303,11,10,48),(1,1,303,11,10,51),(1,1,303,11,10,55),(1,1,303,11,10,56),(1,1,303,11,10,58),(1,1,303,11,10,59),(1,1,303,11,10,60),(1,1,303,11,10,61),(1,1,303,11,20,18),(1,1,303,11,20,19),(1,1,303,11,20,20),(1,1,303,11,30,21),(1,1,303,11,30,22),(1,1,303,11,30,23),(1,1,303,11,40,24),(1,1,303,11,40,25),(1,1,303,11,40,26),(1,1,303,11,50,27),(1,1,303,11,60,28),(1,1,303,11,60,29),(1,1,304,10,10,2),(1,1,304,10,10,3),(1,1,304,10,20,4),(1,1,304,10,20,5),(1,1,304,10,30,6),(1,1,304,10,30,7),(1,1,304,10,40,8),(1,1,304,10,40,9),(1,1,304,10,50,10),(1,1,304,10,50,11),(1,1,304,10,60,12),(1,1,304,11,10,14),(1,1,304,11,10,15),(1,1,304,11,10,17),(1,1,304,11,10,40),(1,1,304,11,10,42),(1,1,304,11,10,43),(1,1,304,11,10,44),(1,1,304,11,10,45),(1,1,304,11,10,47),(1,1,304,11,10,48),(1,1,304,11,10,51),(1,1,304,11,10,55),(1,1,304,11,10,56),(1,1,304,11,10,58),(1,1,304,11,10,59),(1,1,304,11,10,60),(1,1,304,11,10,61),(1,1,304,11,20,18),(1,1,304,11,20,19),(1,1,304,11,20,20),(1,1,304,11,30,21),(1,1,304,11,30,22),(1,1,304,11,30,23),(1,1,304,11,40,24),(1,1,304,11,40,25),(1,1,304,11,40,26),(1,1,304,11,50,27),(1,1,304,11,60,28),(1,1,304,11,60,29),(1,1,305,10,10,2),(1,1,305,10,10,3),(1,1,305,10,20,4),(1,1,305,10,20,5),(1,1,305,10,30,6),(1,1,305,10,30,7),(1,1,305,10,40,8),(1,1,305,10,40,9),(1,1,305,10,50,10),(1,1,305,10,50,11),(1,1,305,10,60,12),(1,1,305,11,10,14),(1,1,305,11,10,15),(1,1,305,11,10,17),(1,1,305,11,10,40),(1,1,305,11,10,42),(1,1,305,11,10,43),(1,1,305,11,10,44),(1,1,305,11,10,45),(1,1,305,11,10,47),(1,1,305,11,10,48),(1,1,305,11,10,51),(1,1,305,11,10,55),(1,1,305,11,10,56),(1,1,305,11,10,58),(1,1,305,11,10,59),(1,1,305,11,10,60),(1,1,305,11,10,61),(1,1,305,11,20,18),(1,1,305,11,20,19),(1,1,305,11,20,20),(1,1,305,11,30,21),(1,1,305,11,30,22),(1,1,305,11,30,23),(1,1,305,11,40,24),(1,1,305,11,40,25),(1,1,305,11,40,26),(1,1,305,11,50,27),(1,1,305,11,60,28),(1,1,305,11,60,29),(1,1,306,10,10,2),(1,1,306,10,10,3),(1,1,306,10,20,4),(1,1,306,10,20,5),(1,1,306,10,30,6),(1,1,306,10,30,7),(1,1,306,10,40,8),(1,1,306,10,40,9),(1,1,306,10,50,10),(1,1,306,10,50,11),(1,1,306,10,60,12),(1,1,306,11,10,14),(1,1,306,11,10,15),(1,1,306,11,10,17),(1,1,306,11,10,40),(1,1,306,11,10,42),(1,1,306,11,10,43),(1,1,306,11,10,44),(1,1,306,11,10,45),(1,1,306,11,10,47),(1,1,306,11,10,48),(1,1,306,11,10,51),(1,1,306,11,10,55),(1,1,306,11,10,56),(1,1,306,11,10,58),(1,1,306,11,10,59),(1,1,306,11,10,60),(1,1,306,11,10,61),(1,1,306,11,20,18),(1,1,306,11,20,19),(1,1,306,11,20,20),(1,1,306,11,30,21),(1,1,306,11,30,22),(1,1,306,11,30,23),(1,1,306,11,40,24),(1,1,306,11,40,25),(1,1,306,11,40,26),(1,1,306,11,50,27),(1,1,306,11,60,28),(1,1,306,11,60,29),(1,1,307,10,10,2),(1,1,307,10,10,3),(1,1,307,10,20,4),(1,1,307,10,20,5),(1,1,307,10,30,6),(1,1,307,10,30,7),(1,1,307,10,40,8),(1,1,307,10,40,9),(1,1,307,10,50,10),(1,1,307,10,50,11),(1,1,307,10,60,12),(1,1,307,11,10,14),(1,1,307,11,10,15),(1,1,307,11,10,17),(1,1,307,11,10,40),(1,1,307,11,10,42),(1,1,307,11,10,43),(1,1,307,11,10,44),(1,1,307,11,10,45),(1,1,307,11,10,47),(1,1,307,11,10,48),(1,1,307,11,10,51),(1,1,307,11,10,55),(1,1,307,11,10,56),(1,1,307,11,10,58),(1,1,307,11,10,59),(1,1,307,11,10,60),(1,1,307,11,10,61),(1,1,307,11,20,18),(1,1,307,11,20,19),(1,1,307,11,20,20),(1,1,307,11,30,21),(1,1,307,11,30,22),(1,1,307,11,30,23),(1,1,307,11,40,24),(1,1,307,11,40,25),(1,1,307,11,40,26),(1,1,307,11,50,27),(1,1,307,11,60,28),(1,1,307,11,60,29),(1,1,308,10,10,2),(1,1,308,10,10,3),(1,1,308,10,20,4),(1,1,308,10,20,5),(1,1,308,10,30,6),(1,1,308,10,30,7),(1,1,308,10,40,8),(1,1,308,10,40,9),(1,1,308,10,50,10),(1,1,308,10,50,11),(1,1,308,10,60,12),(1,1,308,11,10,14),(1,1,308,11,10,15),(1,1,308,11,10,17),(1,1,308,11,10,40),(1,1,308,11,10,42),(1,1,308,11,10,43),(1,1,308,11,10,44),(1,1,308,11,10,45),(1,1,308,11,10,47),(1,1,308,11,10,48),(1,1,308,11,10,51),(1,1,308,11,10,55),(1,1,308,11,10,56),(1,1,308,11,10,58),(1,1,308,11,10,59),(1,1,308,11,10,60),(1,1,308,11,10,61),(1,1,308,11,20,18),(1,1,308,11,20,19),(1,1,308,11,20,20),(1,1,308,11,30,21),(1,1,308,11,30,22),(1,1,308,11,30,23),(1,1,308,11,40,24),(1,1,308,11,40,25),(1,1,308,11,40,26),(1,1,308,11,50,27),(1,1,308,11,60,28),(1,1,308,11,60,29),(1,1,309,10,10,2),(1,1,309,10,10,3),(1,1,309,10,20,4),(1,1,309,10,20,5),(1,1,309,10,30,6),(1,1,309,10,30,7),(1,1,309,10,40,8),(1,1,309,10,40,9),(1,1,309,10,50,10),(1,1,309,10,50,11),(1,1,309,10,60,12),(1,1,309,11,10,14),(1,1,309,11,10,15),(1,1,309,11,10,17),(1,1,309,11,10,40),(1,1,309,11,10,42),(1,1,309,11,10,43),(1,1,309,11,10,44),(1,1,309,11,10,45),(1,1,309,11,10,47),(1,1,309,11,10,48),(1,1,309,11,10,51),(1,1,309,11,10,55),(1,1,309,11,10,56),(1,1,309,11,10,58),(1,1,309,11,10,59),(1,1,309,11,10,60),(1,1,309,11,10,61),(1,1,309,11,20,18),(1,1,309,11,20,19),(1,1,309,11,20,20),(1,1,309,11,30,21),(1,1,309,11,30,22),(1,1,309,11,30,23),(1,1,309,11,40,24),(1,1,309,11,40,25),(1,1,309,11,40,26),(1,1,309,11,50,27),(1,1,309,11,60,28),(1,1,309,11,60,29),(1,1,310,10,10,2),(1,1,310,10,10,3),(1,1,310,10,20,4),(1,1,310,10,20,5),(1,1,310,10,30,6),(1,1,310,10,30,7),(1,1,310,10,40,8),(1,1,310,10,40,9),(1,1,310,10,50,10),(1,1,310,10,50,11),(1,1,310,10,60,12),(1,1,310,11,10,14),(1,1,310,11,10,15),(1,1,310,11,10,17),(1,1,310,11,10,40),(1,1,310,11,10,42),(1,1,310,11,10,43),(1,1,310,11,10,44),(1,1,310,11,10,45),(1,1,310,11,10,47),(1,1,310,11,10,48),(1,1,310,11,10,51),(1,1,310,11,10,55),(1,1,310,11,10,56),(1,1,310,11,10,58),(1,1,310,11,10,59),(1,1,310,11,10,60),(1,1,310,11,10,61),(1,1,310,11,20,18),(1,1,310,11,20,19),(1,1,310,11,20,20),(1,1,310,11,30,21),(1,1,310,11,30,22),(1,1,310,11,30,23),(1,1,310,11,40,24),(1,1,310,11,40,25),(1,1,310,11,40,26),(1,1,310,11,50,27),(1,1,310,11,60,28),(1,1,310,11,60,29),(1,1,311,10,10,2),(1,1,311,10,10,3),(1,1,311,10,20,4),(1,1,311,10,20,5),(1,1,311,10,30,6),(1,1,311,10,30,7),(1,1,311,10,40,8),(1,1,311,10,40,9),(1,1,311,10,50,10),(1,1,311,10,50,11),(1,1,311,10,60,12),(1,1,311,10,100,13),(1,1,311,11,10,14),(1,1,311,11,10,15),(1,1,311,11,10,16),(1,1,311,11,10,17),(1,1,311,11,10,40),(1,1,311,11,10,41),(1,1,311,11,10,42),(1,1,311,11,10,43),(1,1,311,11,10,44),(1,1,311,11,10,45),(1,1,311,11,10,46),(1,1,311,11,10,47),(1,1,311,11,10,48),(1,1,311,11,10,49),(1,1,311,11,10,51),(1,1,311,11,10,54),(1,1,311,11,10,55),(1,1,311,11,10,56),(1,1,311,11,10,57),(1,1,311,11,10,58),(1,1,311,11,10,59),(1,1,311,11,10,60),(1,1,311,11,10,61),(1,1,311,11,20,18),(1,1,311,11,20,19),(1,1,311,11,20,20),(1,1,311,11,30,21),(1,1,311,11,30,22),(1,1,311,11,30,23),(1,1,311,11,40,24),(1,1,311,11,40,25),(1,1,311,11,40,26),(1,1,311,11,50,27),(1,1,311,11,60,28),(1,1,311,11,60,29),(1,1,311,11,100,30),(1,1,312,10,10,2),(1,1,312,10,10,3),(1,1,312,10,20,4),(1,1,312,10,20,5),(1,1,312,10,30,6),(1,1,312,10,30,7),(1,1,312,10,40,8),(1,1,312,10,40,9),(1,1,312,10,50,10),(1,1,312,10,50,11),(1,1,312,10,60,12),(1,1,312,11,10,14),(1,1,312,11,10,15),(1,1,312,11,10,17),(1,1,312,11,10,40),(1,1,312,11,10,42),(1,1,312,11,10,43),(1,1,312,11,10,44),(1,1,312,11,10,45),(1,1,312,11,10,47),(1,1,312,11,10,48),(1,1,312,11,10,51),(1,1,312,11,10,55),(1,1,312,11,10,56),(1,1,312,11,10,58),(1,1,312,11,10,59),(1,1,312,11,10,60),(1,1,312,11,10,61),(1,1,312,11,20,18),(1,1,312,11,20,19),(1,1,312,11,20,20),(1,1,312,11,30,21),(1,1,312,11,30,22),(1,1,312,11,30,23),(1,1,312,11,40,24),(1,1,312,11,40,25),(1,1,312,11,40,26),(1,1,312,11,50,27),(1,1,312,11,60,28),(1,1,312,11,60,29),(1,1,313,10,10,2),(1,1,313,10,10,3),(1,1,313,10,20,4),(1,1,313,10,20,5),(1,1,313,10,30,6),(1,1,313,10,30,7),(1,1,313,10,40,8),(1,1,313,10,40,9),(1,1,313,10,50,10),(1,1,313,10,50,11),(1,1,313,10,60,12),(1,1,313,11,10,14),(1,1,313,11,10,15),(1,1,313,11,10,17),(1,1,313,11,10,40),(1,1,313,11,10,42),(1,1,313,11,10,43),(1,1,313,11,10,44),(1,1,313,11,10,45),(1,1,313,11,10,47),(1,1,313,11,10,48),(1,1,313,11,10,51),(1,1,313,11,10,55),(1,1,313,11,10,56),(1,1,313,11,10,58),(1,1,313,11,10,59),(1,1,313,11,10,60),(1,1,313,11,10,61),(1,1,313,11,20,18),(1,1,313,11,20,19),(1,1,313,11,20,20),(1,1,313,11,30,21),(1,1,313,11,30,22),(1,1,313,11,30,23),(1,1,313,11,40,24),(1,1,313,11,40,25),(1,1,313,11,40,26),(1,1,313,11,50,27),(1,1,313,11,60,28),(1,1,313,11,60,29),(1,1,314,10,10,2),(1,1,314,10,10,3),(1,1,314,10,20,4),(1,1,314,10,20,5),(1,1,314,10,30,6),(1,1,314,10,30,7),(1,1,314,10,40,8),(1,1,314,10,40,9),(1,1,314,10,50,10),(1,1,314,10,50,11),(1,1,314,10,60,12),(1,1,314,11,10,14),(1,1,314,11,10,15),(1,1,314,11,10,17),(1,1,314,11,10,40),(1,1,314,11,10,42),(1,1,314,11,10,43),(1,1,314,11,10,44),(1,1,314,11,10,45),(1,1,314,11,10,47),(1,1,314,11,10,48),(1,1,314,11,10,51),(1,1,314,11,10,55),(1,1,314,11,10,56),(1,1,314,11,10,58),(1,1,314,11,10,59),(1,1,314,11,10,60),(1,1,314,11,10,61),(1,1,314,11,20,18),(1,1,314,11,20,19),(1,1,314,11,20,20),(1,1,314,11,30,21),(1,1,314,11,30,22),(1,1,314,11,30,23),(1,1,314,11,40,24),(1,1,314,11,40,25),(1,1,314,11,40,26),(1,1,314,11,50,27),(1,1,314,11,60,28),(1,1,314,11,60,29),(1,1,315,10,10,2),(1,1,315,10,10,3),(1,1,315,10,20,4),(1,1,315,10,20,5),(1,1,315,10,30,6),(1,1,315,10,30,7),(1,1,315,10,40,8),(1,1,315,10,40,9),(1,1,315,10,50,10),(1,1,315,10,50,11),(1,1,315,10,60,12),(1,1,315,10,100,13),(1,1,315,11,10,14),(1,1,315,11,10,15),(1,1,315,11,10,16),(1,1,315,11,10,17),(1,1,315,11,10,40),(1,1,315,11,10,41),(1,1,315,11,10,42),(1,1,315,11,10,43),(1,1,315,11,10,44),(1,1,315,11,10,45),(1,1,315,11,10,46),(1,1,315,11,10,47),(1,1,315,11,10,48),(1,1,315,11,10,49),(1,1,315,11,10,51),(1,1,315,11,10,54),(1,1,315,11,10,55),(1,1,315,11,10,56),(1,1,315,11,10,57),(1,1,315,11,10,58),(1,1,315,11,10,59),(1,1,315,11,10,60),(1,1,315,11,10,61),(1,1,315,11,20,18),(1,1,315,11,20,19),(1,1,315,11,20,20),(1,1,315,11,30,21),(1,1,315,11,30,22),(1,1,315,11,30,23),(1,1,315,11,40,24),(1,1,315,11,40,25),(1,1,315,11,40,26),(1,1,315,11,50,27),(1,1,315,11,60,28),(1,1,315,11,60,29),(1,1,315,11,100,30),(1,1,316,1,5,1),(1,1,316,1,5,32),(1,1,316,1,5,34),(1,1,316,10,10,2),(1,1,316,10,10,3),(1,1,316,10,20,4),(1,1,316,10,20,5),(1,1,316,10,30,6),(1,1,316,10,30,7),(1,1,316,10,40,8),(1,1,316,10,40,9),(1,1,316,10,50,10),(1,1,316,10,50,11),(1,1,316,10,60,12),(1,1,316,10,100,13),(1,1,316,11,10,14),(1,1,316,11,10,15),(1,1,316,11,10,16),(1,1,316,11,10,17),(1,1,316,11,10,40),(1,1,316,11,10,41),(1,1,316,11,10,42),(1,1,316,11,10,43),(1,1,316,11,10,44),(1,1,316,11,10,45),(1,1,316,11,10,46),(1,1,316,11,10,47),(1,1,316,11,10,48),(1,1,316,11,10,49),(1,1,316,11,10,51),(1,1,316,11,10,54),(1,1,316,11,10,55),(1,1,316,11,10,56),(1,1,316,11,10,57),(1,1,316,11,10,58),(1,1,316,11,10,59),(1,1,316,11,10,60),(1,1,316,11,10,61),(1,1,316,11,20,18),(1,1,316,11,20,19),(1,1,316,11,20,20),(1,1,316,11,30,21),(1,1,316,11,30,22),(1,1,316,11,30,23),(1,1,316,11,40,24),(1,1,316,11,40,25),(1,1,316,11,40,26),(1,1,316,11,50,27),(1,1,316,11,60,28),(1,1,316,11,60,29),(1,1,316,11,100,30),(1,1,317,10,10,2),(1,1,317,10,10,3),(1,1,317,10,20,4),(1,1,317,10,20,5),(1,1,317,10,30,6),(1,1,317,10,30,7),(1,1,317,10,40,8),(1,1,317,10,40,9),(1,1,317,10,50,10),(1,1,317,10,50,11),(1,1,317,10,60,12),(1,1,317,11,10,14),(1,1,317,11,10,15),(1,1,317,11,10,17),(1,1,317,11,10,40),(1,1,317,11,10,42),(1,1,317,11,10,43),(1,1,317,11,10,44),(1,1,317,11,10,45),(1,1,317,11,10,47),(1,1,317,11,10,48),(1,1,317,11,10,51),(1,1,317,11,10,55),(1,1,317,11,10,56),(1,1,317,11,10,58),(1,1,317,11,10,59),(1,1,317,11,10,60),(1,1,317,11,10,61),(1,1,317,11,20,18),(1,1,317,11,20,19),(1,1,317,11,20,20),(1,1,317,11,30,21),(1,1,317,11,30,22),(1,1,317,11,30,23),(1,1,317,11,40,24),(1,1,317,11,40,25),(1,1,317,11,40,26),(1,1,317,11,50,27),(1,1,317,11,60,28),(1,1,317,11,60,29),(1,1,318,10,10,2),(1,1,318,10,10,3),(1,1,318,10,20,4),(1,1,318,10,20,5),(1,1,318,10,30,6),(1,1,318,10,30,7),(1,1,318,10,40,8),(1,1,318,10,40,9),(1,1,318,10,50,10),(1,1,318,10,50,11),(1,1,318,10,60,12),(1,1,318,11,10,14),(1,1,318,11,10,15),(1,1,318,11,10,17),(1,1,318,11,10,40),(1,1,318,11,10,42),(1,1,318,11,10,43),(1,1,318,11,10,44),(1,1,318,11,10,45),(1,1,318,11,10,47),(1,1,318,11,10,48),(1,1,318,11,10,51),(1,1,318,11,10,55),(1,1,318,11,10,56),(1,1,318,11,10,58),(1,1,318,11,10,59),(1,1,318,11,10,60),(1,1,318,11,10,61),(1,1,318,11,20,18),(1,1,318,11,20,19),(1,1,318,11,20,20),(1,1,318,11,30,21),(1,1,318,11,30,22),(1,1,318,11,30,23),(1,1,318,11,40,24),(1,1,318,11,40,25),(1,1,318,11,40,26),(1,1,318,11,50,27),(1,1,318,11,60,28),(1,1,318,11,60,29),(1,1,319,10,10,2),(1,1,319,10,10,3),(1,1,319,10,20,4),(1,1,319,10,20,5),(1,1,319,10,30,6),(1,1,319,10,30,7),(1,1,319,10,40,8),(1,1,319,10,40,9),(1,1,319,10,50,10),(1,1,319,10,50,11),(1,1,319,10,60,12),(1,1,319,11,10,14),(1,1,319,11,10,15),(1,1,319,11,10,17),(1,1,319,11,10,40),(1,1,319,11,10,42),(1,1,319,11,10,43),(1,1,319,11,10,44),(1,1,319,11,10,45),(1,1,319,11,10,47),(1,1,319,11,10,48),(1,1,319,11,10,51),(1,1,319,11,10,55),(1,1,319,11,10,56),(1,1,319,11,10,58),(1,1,319,11,10,59),(1,1,319,11,10,60),(1,1,319,11,10,61),(1,1,319,11,20,18),(1,1,319,11,20,19),(1,1,319,11,20,20),(1,1,319,11,30,21),(1,1,319,11,30,22),(1,1,319,11,30,23),(1,1,319,11,40,24),(1,1,319,11,40,25),(1,1,319,11,40,26),(1,1,319,11,50,27),(1,1,319,11,60,28),(1,1,319,11,60,29),(1,1,320,10,10,2),(1,1,320,10,10,3),(1,1,320,10,20,4),(1,1,320,10,20,5),(1,1,320,10,30,6),(1,1,320,10,30,7),(1,1,320,10,40,8),(1,1,320,10,40,9),(1,1,320,10,50,10),(1,1,320,10,50,11),(1,1,320,10,60,12),(1,1,320,11,10,14),(1,1,320,11,10,15),(1,1,320,11,10,17),(1,1,320,11,10,40),(1,1,320,11,10,42),(1,1,320,11,10,43),(1,1,320,11,10,44),(1,1,320,11,10,45),(1,1,320,11,10,47),(1,1,320,11,10,48),(1,1,320,11,10,51),(1,1,320,11,10,55),(1,1,320,11,10,56),(1,1,320,11,10,58),(1,1,320,11,10,59),(1,1,320,11,10,60),(1,1,320,11,10,61),(1,1,320,11,20,18),(1,1,320,11,20,19),(1,1,320,11,20,20),(1,1,320,11,30,21),(1,1,320,11,30,22),(1,1,320,11,30,23),(1,1,320,11,40,24),(1,1,320,11,40,25),(1,1,320,11,40,26),(1,1,320,11,50,27),(1,1,320,11,60,28),(1,1,320,11,60,29),(1,1,321,10,10,2),(1,1,321,10,10,3),(1,1,321,10,20,4),(1,1,321,10,20,5),(1,1,321,10,30,6),(1,1,321,10,30,7),(1,1,321,10,40,8),(1,1,321,10,40,9),(1,1,321,10,50,10),(1,1,321,10,50,11),(1,1,321,10,60,12),(1,1,321,11,10,14),(1,1,321,11,10,15),(1,1,321,11,10,17),(1,1,321,11,10,40),(1,1,321,11,10,42),(1,1,321,11,10,43),(1,1,321,11,10,44),(1,1,321,11,10,45),(1,1,321,11,10,47),(1,1,321,11,10,48),(1,1,321,11,10,51),(1,1,321,11,10,55),(1,1,321,11,10,56),(1,1,321,11,10,58),(1,1,321,11,10,59),(1,1,321,11,10,60),(1,1,321,11,10,61),(1,1,321,11,20,18),(1,1,321,11,20,19),(1,1,321,11,20,20),(1,1,321,11,30,21),(1,1,321,11,30,22),(1,1,321,11,30,23),(1,1,321,11,40,24),(1,1,321,11,40,25),(1,1,321,11,40,26),(1,1,321,11,50,27),(1,1,321,11,60,28),(1,1,321,11,60,29),(1,1,322,10,10,2),(1,1,322,10,10,3),(1,1,322,10,20,4),(1,1,322,10,20,5),(1,1,322,10,30,6),(1,1,322,10,30,7),(1,1,322,10,40,8),(1,1,322,10,40,9),(1,1,322,10,50,10),(1,1,322,10,50,11),(1,1,322,10,60,12),(1,1,322,11,10,14),(1,1,322,11,10,15),(1,1,322,11,10,17),(1,1,322,11,10,40),(1,1,322,11,10,42),(1,1,322,11,10,43),(1,1,322,11,10,44),(1,1,322,11,10,45),(1,1,322,11,10,47),(1,1,322,11,10,48),(1,1,322,11,10,51),(1,1,322,11,10,55),(1,1,322,11,10,56),(1,1,322,11,10,58),(1,1,322,11,10,59),(1,1,322,11,10,60),(1,1,322,11,10,61),(1,1,322,11,20,18),(1,1,322,11,20,19),(1,1,322,11,20,20),(1,1,322,11,30,21),(1,1,322,11,30,22),(1,1,322,11,30,23),(1,1,322,11,40,24),(1,1,322,11,40,25),(1,1,322,11,40,26),(1,1,322,11,50,27),(1,1,322,11,60,28),(1,1,322,11,60,29),(1,1,323,10,10,3),(1,1,324,10,10,3),(1,1,325,10,10,3),(1,1,326,1,5,33),(1,1,326,10,10,3),(1,1,326,10,30,7),(1,1,326,11,10,14),(1,1,326,11,10,17),(1,1,326,11,10,40),(1,1,326,11,10,43),(1,1,326,11,10,44),(1,1,326,11,10,47),(1,1,326,11,10,48),(1,1,326,11,10,51),(1,1,326,11,10,55),(1,1,326,11,10,56),(1,1,326,11,10,59),(1,1,326,11,10,60),(1,1,326,11,20,18),(1,1,327,10,10,3),(1,1,328,10,10,3),(1,1,328,10,30,6),(1,1,328,10,30,7),(1,1,328,10,50,10),(1,1,328,10,100,13),(1,1,328,11,10,15),(1,1,328,11,10,17),(1,1,328,11,30,22),(1,1,328,11,40,24),(1,1,329,10,10,3),(1,1,329,10,30,6),(1,1,329,10,30,7),(1,1,329,10,50,10),(1,1,329,10,100,13),(1,1,329,11,10,15),(1,1,329,11,10,17),(1,1,329,11,30,22),(1,1,329,11,40,24),(1,1,330,10,10,3),(1,1,330,10,100,13),(1,1,330,11,50,27),(1,1,330,11,100,30),(1,1,331,10,10,3),(1,1,332,1,5,1),(1,1,332,1,5,32),(1,1,332,1,5,34),(1,1,332,10,10,3),(1,1,332,10,20,4),(1,1,332,10,20,5),(1,1,332,10,100,13),(1,1,332,11,10,15),(1,1,332,11,10,16),(1,1,332,11,10,41),(1,1,332,11,10,42),(1,1,332,11,10,45),(1,1,332,11,10,46),(1,1,332,11,10,49),(1,1,332,11,10,54),(1,1,332,11,10,57),(1,1,332,11,10,58),(1,1,332,11,10,61),(1,1,332,11,20,19),(1,1,332,11,20,20),(1,1,332,11,30,22),(1,1,332,11,40,26),(1,1,332,11,50,27),(1,1,332,11,100,30),(1,1,333,10,10,3),(1,1,333,11,10,15),(1,1,333,11,10,16),(1,1,333,11,10,41),(1,1,333,11,10,42),(1,1,333,11,10,45),(1,1,333,11,10,46),(1,1,333,11,10,49),(1,1,333,11,10,54),(1,1,333,11,10,57),(1,1,333,11,10,58),(1,1,333,11,10,61),(1,1,334,10,10,3),(1,1,334,10,100,13),(1,1,334,11,10,16),(1,1,334,11,10,41),(1,1,334,11,10,46),(1,1,334,11,10,49),(1,1,334,11,10,54),(1,1,334,11,10,57),(1,1,335,1,5,1),(1,1,335,1,5,32),(1,1,335,1,5,34),(1,1,335,10,10,3),(1,1,335,10,20,5),(1,1,335,10,50,10),(1,1,335,10,50,11),(1,1,335,10,100,13),(1,1,335,11,10,16),(1,1,335,11,10,41),(1,1,335,11,10,46),(1,1,335,11,10,49),(1,1,335,11,10,54),(1,1,335,11,10,57),(1,1,335,11,30,21),(1,1,335,11,100,30),(1,1,336,10,10,3),(1,1,336,11,100,30),(1,1,337,10,10,3),(1,1,338,10,10,3),(1,1,338,10,100,13),(1,1,338,11,10,16),(1,1,338,11,10,41),(1,1,338,11,10,46),(1,1,338,11,10,49),(1,1,338,11,10,54),(1,1,338,11,10,57),(1,1,339,1,5,1),(1,1,339,1,5,32),(1,1,339,1,5,34),(1,1,339,10,10,3),(1,1,339,10,20,4),(1,1,339,10,30,6),(1,1,339,10,40,9),(1,1,339,10,100,13),(1,1,339,11,10,16),(1,1,339,11,10,41),(1,1,339,11,10,46),(1,1,339,11,10,49),(1,1,339,11,10,54),(1,1,339,11,10,57),(1,1,339,11,100,30),(1,1,340,10,10,3),(1,1,340,10,30,6),(1,1,340,10,40,9),(1,1,340,10,50,10),(1,1,340,10,50,11),(1,1,340,10,100,13),(1,1,340,11,10,16),(1,1,340,11,10,41),(1,1,340,11,10,46),(1,1,340,11,10,49),(1,1,340,11,10,54),(1,1,340,11,10,57),(1,1,340,11,20,20),(1,1,340,11,30,23),(1,1,340,11,100,30),(1,1,341,10,10,3),(1,1,341,10,100,13),(1,1,341,11,10,16),(1,1,341,11,10,41),(1,1,341,11,10,46),(1,1,341,11,10,49),(1,1,341,11,10,54),(1,1,341,11,10,57),(1,1,342,10,10,3),(1,1,342,10,100,13),(1,1,342,11,10,16),(1,1,342,11,10,41),(1,1,342,11,10,46),(1,1,342,11,10,49),(1,1,342,11,10,54),(1,1,342,11,10,57),(1,1,342,11,100,30),(1,1,343,10,10,3),(1,1,344,1,5,1),(1,1,344,1,5,32),(1,1,344,1,5,34),(1,1,344,10,10,3),(1,1,344,10,20,4),(1,1,344,10,30,6),(1,1,344,10,40,8),(1,1,344,10,50,10),(1,1,344,10,100,13),(1,1,344,11,10,16),(1,1,344,11,10,41),(1,1,344,11,10,46),(1,1,344,11,10,49),(1,1,344,11,10,54),(1,1,344,11,10,57),(1,1,344,11,30,23),(1,1,344,11,40,24),(1,1,344,11,40,26),(1,1,344,11,100,30),(1,1,345,10,10,3),(1,1,345,11,10,16),(1,1,345,11,10,41),(1,1,345,11,10,46),(1,1,345,11,10,49),(1,1,345,11,10,54),(1,1,345,11,10,57),(1,1,346,1,5,1),(1,1,346,1,5,32),(1,1,346,1,5,34),(1,1,346,10,10,3),(1,1,346,10,100,13),(1,1,346,11,100,30),(1,1,347,1,5,1),(1,1,347,1,5,32),(1,1,347,1,5,34),(1,1,347,10,10,3),(1,1,347,10,40,9),(1,1,347,11,100,30),(1,1,348,10,10,3),(1,1,348,11,10,16),(1,1,348,11,10,41),(1,1,348,11,10,46),(1,1,348,11,10,49),(1,1,348,11,10,54),(1,1,348,11,10,57),(1,1,348,11,50,27),(1,1,348,11,100,30),(1,1,349,1,5,1),(1,1,349,1,5,32),(1,1,349,1,5,34),(1,1,349,10,10,3),(1,1,349,10,50,10),(1,1,349,10,50,11),(1,1,349,10,100,13),(1,1,349,11,10,14),(1,1,349,11,10,15),(1,1,349,11,10,16),(1,1,349,11,10,41),(1,1,349,11,10,42),(1,1,349,11,10,43),(1,1,349,11,10,44),(1,1,349,11,10,45),(1,1,349,11,10,46),(1,1,349,11,10,49),(1,1,349,11,10,51),(1,1,349,11,10,54),(1,1,349,11,10,57),(1,1,349,11,10,58),(1,1,349,11,10,59),(1,1,349,11,10,60),(1,1,349,11,10,61),(1,1,349,11,20,20),(1,1,349,11,30,21),(1,1,349,11,30,23),(1,1,349,11,40,24),(1,1,349,11,100,30),(1,1,350,10,20,4),(1,1,351,10,20,4),(1,1,352,1,5,33),(1,1,352,10,20,4),(1,1,352,11,30,21),(1,1,353,10,20,4),(1,1,354,10,20,4),(1,1,354,10,20,5),(1,1,354,10,30,7),(1,1,354,10,40,8),(1,1,354,10,100,13),(1,1,354,11,10,15),(1,1,354,11,10,16),(1,1,354,11,10,17),(1,1,354,11,20,19),(1,1,354,11,30,23),(1,1,354,11,40,25),(1,1,354,11,40,26),(1,1,354,11,60,29),(1,1,355,10,20,4),(1,1,355,10,20,5),(1,1,355,10,30,7),(1,1,355,10,40,8),(1,1,355,10,100,13),(1,1,355,11,10,15),(1,1,355,11,10,16),(1,1,355,11,10,17),(1,1,355,11,20,19),(1,1,355,11,30,23),(1,1,355,11,40,25),(1,1,355,11,40,26),(1,1,355,11,60,29),(1,1,356,10,20,4),(1,1,356,11,10,14),(1,1,356,11,20,20),(1,1,356,11,30,21),(1,1,356,11,50,27),(1,1,356,11,100,30),(1,1,357,10,20,4),(1,1,357,11,10,14),(1,1,357,11,20,20),(1,1,357,11,30,21),(1,1,357,11,50,27),(1,1,357,11,100,30),(1,1,358,1,5,1),(1,1,358,1,5,32),(1,1,358,1,5,34),(1,1,358,10,20,4),(1,1,358,10,100,13),(1,1,359,10,20,4),(1,1,359,10,30,6),(1,1,359,10,100,13),(1,1,359,11,100,30),(1,1,360,1,5,1),(1,1,360,1,5,32),(1,1,360,1,5,34),(1,1,360,10,20,4),(1,1,360,10,30,7),(1,1,360,10,60,12),(1,1,360,10,100,13),(1,1,360,11,10,16),(1,1,360,11,10,41),(1,1,360,11,10,46),(1,1,360,11,10,49),(1,1,360,11,10,54),(1,1,360,11,10,57),(1,1,360,11,20,20),(1,1,360,11,30,23),(1,1,360,11,40,25),(1,1,360,11,40,26),(1,1,360,11,100,30),(1,1,361,10,20,4),(1,1,361,10,100,13),(1,1,361,11,10,16),(1,1,361,11,10,41),(1,1,361,11,10,46),(1,1,361,11,10,49),(1,1,361,11,10,54),(1,1,361,11,10,57),(1,1,362,10,20,4),(1,1,363,10,20,4),(1,1,363,10,100,13),(1,1,363,11,10,16),(1,1,363,11,10,41),(1,1,363,11,10,46),(1,1,363,11,10,49),(1,1,363,11,10,54),(1,1,363,11,10,57),(1,1,363,11,100,30),(1,1,364,10,20,4),(1,1,364,11,10,16),(1,1,364,11,10,41),(1,1,364,11,10,46),(1,1,364,11,10,49),(1,1,364,11,10,54),(1,1,364,11,10,57),(1,1,364,11,50,27),(1,1,364,11,100,30),(1,1,365,1,5,1),(1,1,365,1,5,32),(1,1,365,1,5,34),(1,1,365,10,20,4),(1,1,365,10,60,12),(1,1,365,11,60,28),(1,1,365,11,60,29),(1,1,366,10,20,4),(1,1,366,10,30,6),(1,1,366,11,100,30),(1,1,367,10,20,4),(1,1,367,11,100,30),(1,1,368,10,20,4),(1,1,368,11,100,30),(1,1,369,10,20,4),(1,1,369,11,20,18),(1,1,369,11,30,23),(1,1,369,11,100,30),(1,1,370,10,20,5),(1,1,371,10,20,5),(1,1,372,10,20,5),(1,1,373,10,20,5),(1,1,374,10,20,5),(1,1,375,10,20,5),(1,1,375,10,30,6),(1,1,375,10,60,12),(1,1,375,10,100,13),(1,1,375,11,10,16),(1,1,375,11,10,41),(1,1,375,11,10,46),(1,1,375,11,10,49),(1,1,375,11,10,54),(1,1,375,11,10,57),(1,1,375,11,60,28),(1,1,375,11,60,29),(1,1,375,11,100,30),(1,1,376,10,20,5),(1,1,376,10,100,13),(1,1,376,11,10,16),(1,1,376,11,10,41),(1,1,376,11,10,46),(1,1,376,11,10,49),(1,1,376,11,10,54),(1,1,376,11,10,57),(1,1,376,11,60,28),(1,1,376,11,60,29),(1,1,377,10,20,5),(1,1,377,10,100,13),(1,1,378,1,5,1),(1,1,378,1,5,32),(1,1,378,1,5,34),(1,1,378,10,20,5),(1,1,378,10,30,7),(1,1,378,10,40,8),(1,1,378,10,100,13),(1,1,378,11,10,16),(1,1,378,11,10,41),(1,1,378,11,10,46),(1,1,378,11,10,49),(1,1,378,11,10,54),(1,1,378,11,10,57),(1,1,378,11,20,18),(1,1,378,11,20,20),(1,1,378,11,30,22),(1,1,378,11,40,24),(1,1,378,11,40,26),(1,1,378,11,100,30),(1,1,379,1,5,1),(1,1,379,1,5,32),(1,1,379,1,5,34),(1,1,379,10,20,5),(1,1,379,10,100,13),(1,1,379,11,10,16),(1,1,379,11,10,41),(1,1,379,11,10,46),(1,1,379,11,10,49),(1,1,379,11,10,54),(1,1,379,11,10,57),(1,1,380,10,20,5),(1,1,381,10,20,5),(1,1,381,10,30,7),(1,1,381,10,40,8),(1,1,381,10,100,13),(1,1,381,11,10,16),(1,1,381,11,10,41),(1,1,381,11,10,46),(1,1,381,11,10,49),(1,1,381,11,10,54),(1,1,381,11,10,57),(1,1,381,11,30,23),(1,1,381,11,40,25),(1,1,381,11,40,26),(1,1,381,11,60,28),(1,1,381,11,60,29),(1,1,381,11,100,30),(1,1,382,10,20,5),(1,1,382,11,10,16),(1,1,382,11,10,41),(1,1,382,11,10,46),(1,1,382,11,10,49),(1,1,382,11,10,54),(1,1,382,11,10,57),(1,1,382,11,100,30),(1,1,383,10,20,5),(1,1,384,10,20,5),(1,1,384,10,100,13),(1,1,384,11,30,21),(1,1,385,10,20,5),(1,1,386,10,20,5),(1,1,386,11,20,20),(1,1,386,11,30,22),(1,1,386,11,100,30),(1,1,387,10,20,5),(1,1,387,10,40,8),(1,1,387,10,100,13),(1,1,387,11,30,21),(1,1,388,1,5,1),(1,1,388,1,5,32),(1,1,388,1,5,34),(1,1,388,10,20,5),(1,1,388,11,20,20),(1,1,388,11,30,22),(1,1,389,10,20,5),(1,1,389,11,100,30),(1,1,390,10,20,5),(1,1,390,10,100,13),(1,1,390,11,40,25),(1,1,390,11,100,30),(1,1,391,10,20,5),(1,1,391,11,20,19),(1,1,391,11,30,22),(1,1,391,11,30,23),(1,1,392,1,5,1),(1,1,392,1,5,32),(1,1,392,1,5,34),(1,1,392,10,20,5),(1,1,392,10,100,13),(1,1,392,11,10,16),(1,1,392,11,10,41),(1,1,392,11,10,46),(1,1,392,11,10,49),(1,1,392,11,10,54),(1,1,392,11,10,57),(1,1,392,11,20,20),(1,1,392,11,100,30),(1,1,393,10,20,5),(1,1,393,10,40,8),(1,1,393,11,40,26),(1,1,394,10,20,5),(1,1,394,10,100,13),(1,1,395,10,30,6),(1,1,396,10,30,6),(1,1,397,10,30,6),(1,1,398,1,5,1),(1,1,398,1,5,32),(1,1,398,1,5,34),(1,1,398,10,30,6),(1,1,399,10,30,6),(1,1,399,11,40,24),(1,1,400,10,30,6),(1,1,401,1,5,1),(1,1,401,1,5,32),(1,1,401,1,5,34),(1,1,401,10,30,6),(1,1,401,10,40,8),(1,1,401,10,40,9),(1,1,401,10,60,12),(1,1,401,10,100,13),(1,1,401,11,10,14),(1,1,401,11,10,43),(1,1,401,11,10,44),(1,1,401,11,10,51),(1,1,401,11,10,59),(1,1,401,11,10,60),(1,1,401,11,20,18),(1,1,401,11,30,21),(1,1,401,11,30,22),(1,1,401,11,30,23),(1,1,401,11,40,24),(1,1,401,11,40,25),(1,1,401,11,40,26),(1,1,401,11,100,30),(1,1,402,10,30,6),(1,1,402,10,60,12),(1,1,402,10,100,13),(1,1,403,10,30,6),(1,1,403,10,100,13),(1,1,403,11,40,24),(1,1,404,10,30,6),(1,1,405,10,30,6),(1,1,405,10,100,13),(1,1,406,10,30,6),(1,1,406,10,100,13),(1,1,406,11,40,24),(1,1,407,10,30,6),(1,1,407,11,10,16),(1,1,407,11,10,41),(1,1,407,11,10,46),(1,1,407,11,10,49),(1,1,407,11,10,54),(1,1,407,11,10,57),(1,1,407,11,40,24),(1,1,408,10,30,6),(1,1,408,11,10,15),(1,1,408,11,10,16),(1,1,408,11,10,41),(1,1,408,11,10,42),(1,1,408,11,10,45),(1,1,408,11,10,46),(1,1,408,11,10,49),(1,1,408,11,10,54),(1,1,408,11,10,57),(1,1,408,11,10,58),(1,1,408,11,10,61),(1,1,409,10,30,6),(1,1,409,10,50,10),(1,1,409,10,50,11),(1,1,409,11,10,15),(1,1,409,11,10,42),(1,1,409,11,10,45),(1,1,409,11,10,58),(1,1,409,11,10,61),(1,1,409,11,20,19),(1,1,410,1,5,1),(1,1,410,1,5,32),(1,1,410,1,5,34),(1,1,410,10,30,6),(1,1,410,10,40,8),(1,1,410,11,40,26),(1,1,410,11,100,30),(1,1,411,10,30,7),(1,1,412,10,30,7),(1,1,413,1,5,1),(1,1,413,1,5,32),(1,1,413,1,5,34),(1,1,413,10,30,7),(1,1,413,10,100,13),(1,1,413,11,10,14),(1,1,413,11,10,16),(1,1,413,11,10,41),(1,1,413,11,10,43),(1,1,413,11,10,44),(1,1,413,11,10,46),(1,1,413,11,10,49),(1,1,413,11,10,51),(1,1,413,11,10,54),(1,1,413,11,10,57),(1,1,413,11,10,59),(1,1,413,11,10,60),(1,1,413,11,20,18),(1,1,413,11,40,25),(1,1,413,11,100,30),(1,1,414,10,30,7),(1,1,414,10,40,8),(1,1,414,10,100,13),(1,1,415,10,30,7),(1,1,415,11,10,16),(1,1,415,11,10,41),(1,1,415,11,10,46),(1,1,415,11,10,49),(1,1,415,11,10,54),(1,1,415,11,10,57),(1,1,415,11,40,25),(1,1,415,11,100,30),(1,1,416,10,30,7),(1,1,416,11,20,18),(1,1,416,11,100,30),(1,1,417,1,5,1),(1,1,417,1,5,32),(1,1,417,1,5,34),(1,1,417,10,30,7),(1,1,417,10,40,8),(1,1,417,10,50,11),(1,1,417,10,60,12),(1,1,417,10,100,13),(1,1,417,11,10,14),(1,1,417,11,10,16),(1,1,417,11,10,41),(1,1,417,11,10,43),(1,1,417,11,10,44),(1,1,417,11,10,46),(1,1,417,11,10,49),(1,1,417,11,10,51),(1,1,417,11,10,54),(1,1,417,11,10,57),(1,1,417,11,10,59),(1,1,417,11,10,60),(1,1,417,11,30,22),(1,1,417,11,40,26),(1,1,417,11,100,30),(1,1,418,10,30,7),(1,1,418,10,100,13),(1,1,418,11,10,14),(1,1,418,11,10,16),(1,1,418,11,10,41),(1,1,418,11,10,43),(1,1,418,11,10,44),(1,1,418,11,10,46),(1,1,418,11,10,49),(1,1,418,11,10,51),(1,1,418,11,10,54),(1,1,418,11,10,57),(1,1,418,11,10,59),(1,1,418,11,10,60),(1,1,418,11,20,20),(1,1,418,11,50,27),(1,1,418,11,100,30),(1,1,419,10,30,7),(1,1,419,10,100,13),(1,1,419,11,100,30),(1,1,420,10,30,7),(1,1,421,10,30,7),(1,1,421,10,100,13),(1,1,421,11,20,20),(1,1,421,11,100,30),(1,1,422,1,5,1),(1,1,422,1,5,32),(1,1,422,1,5,34),(1,1,422,10,30,7),(1,1,422,10,40,9),(1,1,422,10,100,13),(1,1,422,11,10,15),(1,1,422,11,10,16),(1,1,422,11,10,41),(1,1,422,11,10,42),(1,1,422,11,10,45),(1,1,422,11,10,46),(1,1,422,11,10,49),(1,1,422,11,10,54),(1,1,422,11,10,57),(1,1,422,11,10,58),(1,1,422,11,10,61),(1,1,422,11,100,30),(1,1,423,10,30,7),(1,1,423,10,100,13),(1,1,423,11,100,30),(1,1,424,10,30,7),(1,1,424,11,100,30),(1,1,425,1,5,1),(1,1,425,1,5,32),(1,1,425,1,5,34),(1,1,425,10,30,7),(1,1,425,11,10,16),(1,1,425,11,10,41),(1,1,425,11,10,46),(1,1,425,11,10,49),(1,1,425,11,10,54),(1,1,425,11,10,57),(1,1,426,1,5,1),(1,1,426,1,5,32),(1,1,426,1,5,34),(1,1,426,10,30,7),(1,1,426,11,10,16),(1,1,426,11,10,41),(1,1,426,11,10,46),(1,1,426,11,10,49),(1,1,426,11,10,54),(1,1,426,11,10,57),(1,1,426,11,40,26),(1,1,427,1,5,1),(1,1,427,1,5,32),(1,1,427,1,5,34),(1,1,427,10,30,7),(1,1,427,10,50,10),(1,1,427,10,100,13),(1,1,427,11,10,16),(1,1,427,11,10,41),(1,1,427,11,10,46),(1,1,427,11,10,49),(1,1,427,11,10,54),(1,1,427,11,10,57),(1,1,427,11,20,19),(1,1,427,11,30,23),(1,1,427,11,100,30),(1,1,428,10,30,7),(1,1,429,10,30,7),(1,1,429,10,40,8),(1,1,429,10,100,13),(1,1,429,11,40,26),(1,1,429,11,100,30),(1,1,430,10,30,7),(1,1,430,11,10,16),(1,1,430,11,10,41),(1,1,430,11,10,46),(1,1,430,11,10,49),(1,1,430,11,10,54),(1,1,430,11,10,57),(1,1,431,10,30,7),(1,1,431,11,10,16),(1,1,431,11,10,41),(1,1,431,11,10,46),(1,1,431,11,10,49),(1,1,431,11,10,54),(1,1,431,11,10,57),(1,1,431,11,30,21),(1,1,431,11,100,30),(1,1,432,1,5,1),(1,1,432,1,5,32),(1,1,432,1,5,34),(1,1,432,10,30,7),(1,1,432,10,100,13),(1,1,433,10,30,7),(1,1,433,10,100,13),(1,1,434,1,5,1),(1,1,434,1,5,32),(1,1,434,1,5,34),(1,1,434,10,30,7),(1,1,434,11,10,16),(1,1,434,11,10,41),(1,1,434,11,10,46),(1,1,434,11,10,49),(1,1,434,11,10,54),(1,1,434,11,10,57),(1,1,434,11,30,23),(1,1,435,10,40,8),(1,1,436,10,40,8),(1,1,437,10,40,8),(1,1,438,10,40,8),(1,1,438,10,50,11),(1,1,438,10,100,13),(1,1,438,11,10,16),(1,1,438,11,10,17),(1,1,438,11,10,40),(1,1,438,11,10,41),(1,1,438,11,10,46),(1,1,438,11,10,47),(1,1,438,11,10,48),(1,1,438,11,10,49),(1,1,438,11,10,54),(1,1,438,11,10,55),(1,1,438,11,10,56),(1,1,438,11,10,57),(1,1,438,11,50,27),(1,1,439,10,40,8),(1,1,440,10,40,8),(1,1,441,10,40,8),(1,1,441,10,60,12),(1,1,441,11,10,14),(1,1,441,11,20,18),(1,1,441,11,20,20),(1,1,441,11,30,23),(1,1,441,11,60,28),(1,1,442,10,40,8),(1,1,442,10,60,12),(1,1,442,11,10,14),(1,1,442,11,20,18),(1,1,442,11,20,20),(1,1,442,11,30,23),(1,1,442,11,60,28),(1,1,443,1,5,1),(1,1,443,1,5,32),(1,1,443,1,5,34),(1,1,443,10,40,8),(1,1,443,11,10,16),(1,1,443,11,10,41),(1,1,443,11,10,46),(1,1,443,11,10,49),(1,1,443,11,10,54),(1,1,443,11,10,57),(1,1,444,10,40,8),(1,1,445,1,5,1),(1,1,445,1,5,32),(1,1,445,1,5,34),(1,1,445,10,40,8),(1,1,445,10,40,9),(1,1,445,10,60,12),(1,1,445,10,100,13),(1,1,445,11,10,15),(1,1,445,11,10,16),(1,1,445,11,10,41),(1,1,445,11,10,42),(1,1,445,11,10,45),(1,1,445,11,10,46),(1,1,445,11,10,49),(1,1,445,11,10,54),(1,1,445,11,10,57),(1,1,445,11,10,58),(1,1,445,11,10,61),(1,1,445,11,30,21),(1,1,445,11,30,22),(1,1,445,11,40,24),(1,1,445,11,40,26),(1,1,445,11,60,28),(1,1,445,11,60,29),(1,1,445,11,100,30),(1,1,446,10,40,8),(1,1,446,11,40,26),(1,1,447,10,40,8),(1,1,447,10,100,13),(1,1,447,11,40,26),(1,1,448,10,40,8),(1,1,448,11,40,26),(1,1,449,10,40,8),(1,1,449,11,10,15),(1,1,449,11,10,42),(1,1,449,11,10,45),(1,1,449,11,10,58),(1,1,449,11,10,61),(1,1,449,11,40,26),(1,1,449,11,100,30),(1,1,450,10,40,8),(1,1,450,11,10,16),(1,1,450,11,10,41),(1,1,450,11,10,46),(1,1,450,11,10,49),(1,1,450,11,10,54),(1,1,450,11,10,57),(1,1,450,11,40,26),(1,1,451,10,40,8),(1,1,451,10,100,13),(1,1,451,11,10,16),(1,1,451,11,10,41),(1,1,451,11,10,46),(1,1,451,11,10,49),(1,1,451,11,10,54),(1,1,451,11,10,57),(1,1,451,11,40,26),(1,1,452,10,40,8),(1,1,452,10,100,13),(1,1,452,11,10,16),(1,1,452,11,10,41),(1,1,452,11,10,46),(1,1,452,11,10,49),(1,1,452,11,10,54),(1,1,452,11,10,57),(1,1,452,11,30,22),(1,1,452,11,30,23),(1,1,452,11,40,26),(1,1,452,11,100,30),(1,1,453,10,40,8),(1,1,453,11,20,18),(1,1,453,11,40,26),(1,1,454,10,40,8),(1,1,454,11,40,26),(1,1,454,11,100,30),(1,1,455,10,40,8),(1,1,455,11,40,26),(1,1,456,10,40,9),(1,1,457,10,40,9),(1,1,458,1,5,33),(1,1,458,10,40,9),(1,1,458,11,10,17),(1,1,458,11,10,40),(1,1,458,11,10,47),(1,1,458,11,10,48),(1,1,458,11,10,55),(1,1,458,11,10,56),(1,1,458,11,30,22),(1,1,458,11,40,26),(1,1,459,10,40,9),(1,1,459,11,20,18),(1,1,460,10,40,9),(1,1,461,10,40,9),(1,1,462,10,40,9),(1,1,462,11,100,30),(1,1,463,10,40,9),(1,1,463,11,10,16),(1,1,463,11,10,41),(1,1,463,11,10,46),(1,1,463,11,10,49),(1,1,463,11,10,54),(1,1,463,11,10,57),(1,1,463,11,100,30),(1,1,464,1,5,1),(1,1,464,1,5,32),(1,1,464,1,5,34),(1,1,464,10,40,9),(1,1,464,10,100,13),(1,1,464,11,10,16),(1,1,464,11,10,41),(1,1,464,11,10,46),(1,1,464,11,10,49),(1,1,464,11,10,54),(1,1,464,11,10,57),(1,1,464,11,50,27),(1,1,464,11,60,28),(1,1,464,11,60,29),(1,1,464,11,100,30),(1,1,465,1,5,1),(1,1,465,1,5,32),(1,1,465,1,5,34),(1,1,465,10,40,9),(1,1,465,10,60,12),(1,1,466,10,40,9),(1,1,466,11,10,16),(1,1,466,11,10,41),(1,1,466,11,10,46),(1,1,466,11,10,49),(1,1,466,11,10,54),(1,1,466,11,10,57),(1,1,466,11,100,30),(1,1,467,10,40,9),(1,1,468,10,40,9),(1,1,469,10,40,9),(1,1,469,11,100,30),(1,1,470,1,5,1),(1,1,470,1,5,32),(1,1,470,1,5,34),(1,1,470,10,40,9),(1,1,470,10,100,13),(1,1,470,11,10,15),(1,1,470,11,10,16),(1,1,470,11,10,41),(1,1,470,11,10,42),(1,1,470,11,10,45),(1,1,470,11,10,46),(1,1,470,11,10,49),(1,1,470,11,10,54),(1,1,470,11,10,57),(1,1,470,11,10,58),(1,1,470,11,10,61),(1,1,470,11,20,19),(1,1,470,11,20,20),(1,1,470,11,30,21),(1,1,470,11,30,22),(1,1,470,11,40,24),(1,1,470,11,40,26),(1,1,470,11,100,30),(1,1,471,10,40,9),(1,1,471,10,100,13),(1,1,471,11,100,30),(1,1,472,10,40,9),(1,1,472,10,100,13),(1,1,473,10,40,9),(1,1,474,10,40,9),(1,1,474,11,100,30),(1,1,475,10,40,9),(1,1,475,10,100,13),(1,1,475,11,20,20),(1,1,476,10,40,9),(1,1,477,1,5,1),(1,1,477,1,5,32),(1,1,477,1,5,34),(1,1,477,10,40,9),(1,1,477,10,60,12),(1,1,477,10,100,13),(1,1,477,11,10,16),(1,1,477,11,10,41),(1,1,477,11,10,46),(1,1,477,11,10,49),(1,1,477,11,10,54),(1,1,477,11,10,57),(1,1,477,11,100,30),(1,1,478,10,40,9),(1,1,478,11,10,16),(1,1,478,11,10,41),(1,1,478,11,10,46),(1,1,478,11,10,49),(1,1,478,11,10,54),(1,1,478,11,10,57),(1,1,478,11,100,30),(1,1,479,10,40,9),(1,1,479,10,100,13),(1,1,480,10,50,10),(1,1,481,10,50,10),(1,1,482,10,50,10),(1,1,483,10,50,10),(1,1,484,10,50,10),(1,1,485,10,50,10),(1,1,486,10,50,10),(1,1,487,10,50,10),(1,1,487,11,20,18),(1,1,488,10,50,10),(1,1,489,1,5,1),(1,1,489,1,5,32),(1,1,489,1,5,34),(1,1,489,10,50,10),(1,1,489,11,10,15),(1,1,489,11,10,42),(1,1,489,11,10,45),(1,1,489,11,10,58),(1,1,489,11,10,61),(1,1,490,10,50,10),(1,1,490,11,10,14),(1,1,490,11,10,43),(1,1,490,11,10,44),(1,1,490,11,10,51),(1,1,490,11,10,59),(1,1,490,11,10,60),(1,1,490,11,50,27),(1,1,491,10,50,10),(1,1,491,10,100,13),(1,1,491,11,30,22),(1,1,491,11,100,30),(1,1,492,10,50,10),(1,1,492,11,100,30),(1,1,493,10,50,10),(1,1,493,10,50,11),(1,1,493,10,100,13),(1,1,493,11,100,30),(1,1,494,10,50,10),(1,1,494,10,50,11),(1,1,495,1,5,1),(1,1,495,1,5,32),(1,1,495,1,5,34),(1,1,495,10,50,10),(1,1,495,10,50,11),(1,1,495,10,100,13),(1,1,495,11,10,16),(1,1,495,11,10,41),(1,1,495,11,10,46),(1,1,495,11,10,49),(1,1,495,11,10,54),(1,1,495,11,10,57),(1,1,496,10,50,10),(1,1,496,10,50,11),(1,1,496,11,10,16),(1,1,496,11,10,41),(1,1,496,11,10,46),(1,1,496,11,10,49),(1,1,496,11,10,54),(1,1,496,11,10,57),(1,1,496,11,100,30),(1,1,497,10,50,10),(1,1,497,10,50,11),(1,1,497,10,100,13),(1,1,497,11,10,16),(1,1,497,11,10,41),(1,1,497,11,10,46),(1,1,497,11,10,49),(1,1,497,11,10,54),(1,1,497,11,10,57),(1,1,497,11,20,20),(1,1,497,11,30,22),(1,1,497,11,30,23),(1,1,497,11,40,24),(1,1,497,11,100,30),(1,1,498,10,50,10),(1,1,498,10,50,11),(1,1,498,10,100,13),(1,1,498,11,20,20),(1,1,498,11,100,30),(1,1,499,10,50,10),(1,1,499,10,50,11),(1,1,499,10,100,13),(1,1,500,10,50,10),(1,1,500,10,50,11),(1,1,500,11,100,30),(1,1,501,10,50,10),(1,1,501,10,50,11),(1,1,502,1,5,1),(1,1,502,1,5,32),(1,1,502,1,5,34),(1,1,502,10,50,10),(1,1,502,10,50,11),(1,1,502,10,100,13),(1,1,502,11,10,14),(1,1,502,11,10,16),(1,1,502,11,10,41),(1,1,502,11,10,43),(1,1,502,11,10,44),(1,1,502,11,10,46),(1,1,502,11,10,49),(1,1,502,11,10,51),(1,1,502,11,10,54),(1,1,502,11,10,57),(1,1,502,11,10,59),(1,1,502,11,10,60),(1,1,502,11,50,27),(1,1,502,11,100,30),(1,1,503,10,50,10),(1,1,503,10,50,11),(1,1,503,11,10,16),(1,1,503,11,10,41),(1,1,503,11,10,46),(1,1,503,11,10,49),(1,1,503,11,10,54),(1,1,503,11,10,57),(1,1,504,10,50,10),(1,1,504,10,50,11),(1,1,504,11,100,30),(1,1,505,10,50,11),(1,1,506,10,50,11),(1,1,507,10,50,11),(1,1,508,10,50,11),(1,1,509,10,50,11),(1,1,509,11,20,18),(1,1,509,11,60,29),(1,1,509,11,100,30),(1,1,509,11,100,31),(1,1,510,10,50,11),(1,1,510,11,20,18),(1,1,510,11,60,29),(1,1,510,11,100,30),(1,1,510,11,100,31),(1,1,511,10,50,11),(1,1,511,11,10,14),(1,1,511,11,10,16),(1,1,511,11,30,22),(1,1,511,11,50,27),(1,1,512,10,50,11),(1,1,512,11,10,14),(1,1,512,11,10,16),(1,1,512,11,30,22),(1,1,512,11,50,27),(1,1,513,10,50,11),(1,1,513,11,40,26),(1,1,513,11,100,30),(1,1,514,1,5,1),(1,1,514,1,5,32),(1,1,514,1,5,34),(1,1,514,10,50,11),(1,1,514,11,10,14),(1,1,514,11,10,16),(1,1,514,11,10,41),(1,1,514,11,10,43),(1,1,514,11,10,44),(1,1,514,11,10,46),(1,1,514,11,10,49),(1,1,514,11,10,51),(1,1,514,11,10,54),(1,1,514,11,10,57),(1,1,514,11,10,59),(1,1,514,11,10,60),(1,1,515,10,50,11),(1,1,515,11,10,14),(1,1,515,11,10,16),(1,1,515,11,10,41),(1,1,515,11,10,43),(1,1,515,11,10,44),(1,1,515,11,10,46),(1,1,515,11,10,49),(1,1,515,11,10,51),(1,1,515,11,10,54),(1,1,515,11,10,57),(1,1,515,11,10,59),(1,1,515,11,10,60),(1,1,515,11,100,30),(1,1,516,10,50,11),(1,1,516,11,10,14),(1,1,516,11,10,43),(1,1,516,11,10,44),(1,1,516,11,10,51),(1,1,516,11,10,59),(1,1,516,11,10,60),(1,1,517,10,50,11),(1,1,517,11,10,14),(1,1,517,11,10,43),(1,1,517,11,10,44),(1,1,517,11,10,51),(1,1,517,11,10,59),(1,1,517,11,10,60),(1,1,518,10,50,11),(1,1,518,11,10,14),(1,1,518,11,10,43),(1,1,518,11,10,44),(1,1,518,11,10,51),(1,1,518,11,10,59),(1,1,518,11,10,60),(1,1,518,11,100,30),(1,1,519,10,60,12),(1,1,520,10,60,12),(1,1,521,10,60,12),(1,1,521,11,50,27),(1,1,522,10,60,12),(1,1,523,10,60,12),(1,1,523,10,100,13),(1,1,523,11,30,22),(1,1,523,11,50,27),(1,1,523,11,60,28),(1,1,524,10,60,12),(1,1,525,10,60,12),(1,1,525,11,50,27),(1,1,525,11,100,30),(1,1,526,10,60,12),(1,1,526,11,10,16),(1,1,526,11,10,41),(1,1,526,11,10,46),(1,1,526,11,10,49),(1,1,526,11,10,54),(1,1,526,11,10,57),(1,1,526,11,100,30),(1,1,527,1,5,1),(1,1,527,1,5,32),(1,1,527,1,5,34),(1,1,527,10,60,12),(1,1,528,10,60,12),(1,1,528,11,60,28),(1,1,528,11,60,29),(1,1,529,1,5,1),(1,1,529,1,5,32),(1,1,529,1,5,34),(1,1,529,10,60,12),(1,1,529,10,100,13),(1,1,529,11,10,16),(1,1,529,11,10,41),(1,1,529,11,10,46),(1,1,529,11,10,49),(1,1,529,11,10,54),(1,1,529,11,10,57),(1,1,529,11,60,28),(1,1,529,11,60,29),(1,1,530,10,60,12),(1,1,530,11,60,28),(1,1,530,11,60,29),(1,1,530,11,100,30),(1,1,531,10,60,12),(1,1,531,10,100,13),(1,1,531,11,10,16),(1,1,531,11,10,41),(1,1,531,11,10,46),(1,1,531,11,10,49),(1,1,531,11,10,54),(1,1,531,11,10,57),(1,1,531,11,60,28),(1,1,531,11,60,29),(1,1,531,11,100,30),(1,1,532,10,60,12),(1,1,532,10,100,13),(1,1,532,11,60,28),(1,1,532,11,60,29),(1,1,532,11,100,30),(1,1,533,10,60,12),(1,1,533,11,60,28),(1,1,533,11,60,29),(1,1,534,1,5,1),(1,1,534,1,5,32),(1,1,534,1,5,34),(1,1,534,10,60,12),(1,1,534,10,100,13),(1,1,534,11,60,28),(1,1,534,11,60,29),(1,1,534,11,100,30),(1,1,535,10,100,13),(1,1,536,1,5,33),(1,1,536,10,100,13),(1,1,537,10,100,13),(1,1,538,10,100,13),(1,1,539,10,100,13),(1,1,540,10,100,13),(1,1,540,11,100,30),(1,1,541,10,100,13),(1,1,541,11,100,30),(1,1,542,1,5,1),(1,1,542,1,5,32),(1,1,542,1,5,34),(1,1,542,10,100,13),(1,1,542,11,100,30),(1,1,543,10,100,13),(1,1,543,11,100,30),(1,1,544,10,100,13),(1,1,544,11,10,16),(1,1,544,11,10,41),(1,1,544,11,10,46),(1,1,544,11,10,49),(1,1,544,11,10,54),(1,1,544,11,10,57),(1,1,545,10,100,13),(1,1,545,11,50,27),(1,1,546,10,100,13),(1,1,547,10,100,13),(1,1,547,11,10,16),(1,1,547,11,10,41),(1,1,547,11,10,46),(1,1,547,11,10,49),(1,1,547,11,10,54),(1,1,547,11,10,57),(1,1,547,11,100,30),(1,1,548,10,100,13),(1,1,548,11,30,22),(1,1,548,11,100,30),(1,1,549,10,100,13),(1,1,550,10,100,13),(1,1,550,11,40,24),(1,1,550,11,100,30),(1,1,551,10,100,13),(1,1,551,11,100,30),(1,1,552,10,100,13),(1,1,553,10,100,13),(1,1,554,1,5,1),(1,1,554,1,5,32),(1,1,554,1,5,34),(1,1,554,10,100,13),(1,1,554,11,30,22),(1,1,554,11,100,30),(1,1,555,10,100,13),(1,1,556,10,100,13),(1,1,557,10,100,13),(1,1,558,10,100,13),(1,1,559,1,5,1),(1,1,559,1,5,32),(1,1,559,1,5,34),(1,1,559,10,100,13),(1,1,559,11,100,30),(1,1,560,10,100,13),(1,1,561,10,100,13),(1,1,561,11,20,20),(1,1,562,1,5,1),(1,1,562,1,5,32),(1,1,562,1,5,34),(1,1,562,10,100,13),(1,1,563,10,100,13),(1,1,563,11,30,22),(1,1,564,10,100,13),(1,1,564,11,10,16),(1,1,564,11,10,41),(1,1,564,11,10,46),(1,1,564,11,10,49),(1,1,564,11,10,54),(1,1,564,11,10,57),(1,1,564,11,100,30),(1,1,565,10,100,13),(1,1,565,11,10,16),(1,1,565,11,10,41),(1,1,565,11,10,46),(1,1,565,11,10,49),(1,1,565,11,10,54),(1,1,565,11,10,57),(1,1,565,11,60,28),(1,1,565,11,60,29),(1,1,565,11,100,30),(1,1,566,10,100,13),(1,1,567,1,5,1),(1,1,567,1,5,32),(1,1,567,1,5,34),(1,1,567,10,100,13),(1,1,567,11,10,16),(1,1,567,11,10,41),(1,1,567,11,10,46),(1,1,567,11,10,49),(1,1,567,11,10,54),(1,1,567,11,10,57),(1,1,568,10,100,13),(1,1,569,10,100,13),(1,1,569,11,100,30),(1,1,570,1,5,1),(1,1,570,1,5,32),(1,1,570,1,5,34),(1,1,570,10,100,13),(1,1,570,11,100,30),(1,1,571,10,100,13),(1,1,571,11,10,16),(1,1,571,11,10,41),(1,1,571,11,10,46),(1,1,571,11,10,49),(1,1,571,11,10,54),(1,1,571,11,10,57),(1,1,571,11,20,20),(1,1,571,11,50,27),(1,1,572,10,100,13),(1,1,572,11,10,16),(1,1,572,11,10,41),(1,1,572,11,10,46),(1,1,572,11,10,49),(1,1,572,11,10,54),(1,1,572,11,10,57),(1,1,572,11,100,30),(1,1,573,10,100,13),(1,1,573,11,20,18),(1,1,573,11,20,20),(1,1,574,1,5,1),(1,1,574,1,5,32),(1,1,574,1,5,34),(1,1,574,10,100,13),(1,1,574,11,50,27),(1,1,574,11,100,30),(1,1,575,10,100,13),(1,1,575,11,10,16),(1,1,575,11,10,41),(1,1,575,11,10,46),(1,1,575,11,10,49),(1,1,575,11,10,54),(1,1,575,11,10,57),(1,1,575,11,100,30),(1,1,576,10,100,13),(1,1,576,11,10,16),(1,1,576,11,10,41),(1,1,576,11,10,46),(1,1,576,11,10,49),(1,1,576,11,10,54),(1,1,576,11,10,57),(1,1,576,11,60,28),(1,1,576,11,60,29),(1,1,577,10,100,13),(1,1,578,10,100,13),(1,1,578,11,40,24),(1,1,578,11,40,25),(1,1,579,10,100,13),(1,1,579,11,100,30),(1,1,580,10,100,13),(1,1,580,11,30,21),(1,1,580,11,100,30),(1,1,581,10,100,13),(1,1,582,10,100,13),(1,1,582,11,50,27),(1,1,583,10,100,13),(1,1,584,10,100,13),(1,1,585,1,5,1),(1,1,585,1,5,32),(1,1,585,1,5,34),(1,1,585,10,100,13),(1,1,586,10,100,13),(1,1,586,11,100,30),(1,1,587,10,100,13),(1,1,587,11,10,16),(1,1,587,11,10,41),(1,1,587,11,10,46),(1,1,587,11,10,49),(1,1,587,11,10,54),(1,1,587,11,10,57),(1,1,587,11,100,30),(1,1,588,10,100,13),(1,1,588,11,10,16),(1,1,588,11,10,41),(1,1,588,11,10,46),(1,1,588,11,10,49),(1,1,588,11,10,54),(1,1,588,11,10,57),(1,1,588,11,100,30),(1,1,589,10,100,13),(1,1,589,11,100,30),(1,1,590,10,100,13),(1,1,591,10,100,13),(1,1,591,11,10,15),(1,1,591,11,10,16),(1,1,591,11,10,41),(1,1,591,11,10,42),(1,1,591,11,10,45),(1,1,591,11,10,46),(1,1,591,11,10,49),(1,1,591,11,10,54),(1,1,591,11,10,57),(1,1,591,11,10,58),(1,1,591,11,10,61),(1,1,591,11,100,30),(1,1,592,1,5,1),(1,1,592,1,5,32),(1,1,592,1,5,34),(1,1,592,10,100,13),(1,1,592,11,10,16),(1,1,592,11,10,41),(1,1,592,11,10,46),(1,1,592,11,10,49),(1,1,592,11,10,54),(1,1,592,11,10,57),(1,1,592,11,100,30),(1,1,593,1,5,1),(1,1,593,1,5,32),(1,1,593,1,5,34),(1,1,593,10,100,13),(1,1,593,11,30,23),(1,1,593,11,100,30),(1,1,594,10,100,13),(1,1,594,11,100,30),(1,1,595,10,100,13),(1,1,595,11,30,23),(1,1,596,10,100,13),(1,1,596,11,10,16),(1,1,596,11,10,41),(1,1,596,11,10,46),(1,1,596,11,10,49),(1,1,596,11,10,54),(1,1,596,11,10,57),(1,1,596,11,100,30),(1,1,597,10,100,13),(1,1,598,10,100,13),(1,1,599,10,100,13),(1,1,599,11,100,30),(1,1,600,10,100,13),(1,1,601,10,100,13),(1,1,601,11,10,16),(1,1,601,11,10,41),(1,1,601,11,10,46),(1,1,601,11,10,49),(1,1,601,11,10,54),(1,1,601,11,10,57),(1,1,601,11,100,30),(1,1,602,1,5,1),(1,1,602,1,5,32),(1,1,602,1,5,34),(1,1,602,10,100,13),(1,1,602,11,20,20),(1,1,603,10,100,13),(1,1,603,11,100,30),(1,1,604,10,100,13),(1,1,604,11,10,16),(1,1,604,11,10,41),(1,1,604,11,10,46),(1,1,604,11,10,49),(1,1,604,11,10,54),(1,1,604,11,10,57),(1,1,604,11,40,24),(1,1,605,1,5,1),(1,1,605,1,5,32),(1,1,605,1,5,34),(1,1,605,10,100,13),(1,1,605,11,10,16),(1,1,605,11,10,41),(1,1,605,11,10,46),(1,1,605,11,10,49),(1,1,605,11,10,54),(1,1,605,11,10,57),(1,1,605,11,20,20),(1,1,606,10,100,13),(1,1,607,10,100,13),(1,1,608,10,100,13),(1,1,608,11,30,22),(1,1,608,11,100,30),(1,1,609,10,100,13),(1,1,610,10,100,13),(1,1,611,10,100,13),(1,1,611,11,40,24),(1,1,612,10,100,13),(1,1,612,11,10,16),(1,1,612,11,10,41),(1,1,612,11,10,46),(1,1,612,11,10,49),(1,1,612,11,10,54),(1,1,612,11,10,57),(1,1,612,11,30,21),(1,1,612,11,100,30),(1,1,613,10,100,13),(1,1,613,11,10,16),(1,1,613,11,10,41),(1,1,613,11,10,46),(1,1,613,11,10,49),(1,1,613,11,10,54),(1,1,613,11,10,57),(1,1,613,11,20,19),(1,1,613,11,30,22),(1,1,614,10,100,13),(1,1,614,11,10,15),(1,1,614,11,10,42),(1,1,614,11,10,45),(1,1,614,11,10,58),(1,1,614,11,10,61),(1,1,614,11,30,23),(1,1,615,10,100,13),(1,1,615,11,10,16),(1,1,615,11,10,41),(1,1,615,11,10,46),(1,1,615,11,10,49),(1,1,615,11,10,54),(1,1,615,11,10,57),(1,1,616,10,100,13),(1,1,616,11,10,16),(1,1,616,11,10,41),(1,1,616,11,10,46),(1,1,616,11,10,49),(1,1,616,11,10,54),(1,1,616,11,10,57),(1,1,617,10,100,13),(1,1,617,11,100,30),(1,1,618,10,100,13),(1,1,618,11,30,21),(1,1,619,10,100,13),(1,1,620,1,5,1),(1,1,620,1,5,32),(1,1,620,1,5,34),(1,1,620,10,100,13),(1,1,620,11,100,30),(1,1,621,1,5,1),(1,1,621,1,5,32),(1,1,621,1,5,34),(1,1,621,10,100,13),(1,1,621,11,10,16),(1,1,621,11,10,41),(1,1,621,11,10,46),(1,1,621,11,10,49),(1,1,621,11,10,54),(1,1,621,11,10,57),(1,1,621,11,20,18),(1,1,621,11,100,30),(1,1,622,1,5,1),(1,1,622,1,5,32),(1,1,622,1,5,34),(1,1,622,10,100,13),(1,1,622,11,10,16),(1,1,622,11,10,41),(1,1,622,11,10,46),(1,1,622,11,10,49),(1,1,622,11,10,54),(1,1,622,11,10,57),(1,1,622,11,40,24),(1,1,623,10,100,13),(1,1,623,11,10,16),(1,1,623,11,10,41),(1,1,623,11,10,46),(1,1,623,11,10,49),(1,1,623,11,10,54),(1,1,623,11,10,57),(1,1,624,10,100,13),(1,1,625,10,100,13),(1,1,625,11,20,18),(1,1,625,11,100,30),(1,1,626,10,100,13),(1,1,626,11,20,20),(1,1,626,11,30,23),(1,1,626,11,40,26),(1,1,627,10,100,13),(1,1,627,11,100,30),(1,1,628,1,5,1),(1,1,628,1,5,32),(1,1,628,1,5,34),(1,1,628,10,100,13),(1,1,628,11,40,25),(1,1,629,10,100,13),(1,1,629,11,10,16),(1,1,629,11,10,41),(1,1,629,11,10,46),(1,1,629,11,10,49),(1,1,629,11,10,54),(1,1,629,11,10,57),(1,1,630,10,100,13),(1,1,630,11,10,16),(1,1,630,11,10,41),(1,1,630,11,10,46),(1,1,630,11,10,49),(1,1,630,11,10,54),(1,1,630,11,10,57),(1,1,631,10,100,13),(1,1,631,11,100,30),(1,1,632,10,100,13),(1,1,633,10,100,13),(1,1,634,10,100,13),(1,1,635,1,5,1),(1,1,635,1,5,32),(1,1,635,1,5,34),(1,1,635,10,100,13),(1,1,635,11,10,16),(1,1,635,11,10,41),(1,1,635,11,10,46),(1,1,635,11,10,49),(1,1,635,11,10,54),(1,1,635,11,10,57),(1,1,636,10,100,13),(1,1,636,11,30,22),(1,1,636,11,100,30),(1,1,637,10,100,13),(1,1,637,11,40,24),(1,1,637,11,100,30),(1,1,638,10,100,13),(1,1,638,11,60,28),(1,1,638,11,60,29),(1,1,639,10,100,13),(1,1,640,10,100,13),(1,1,640,11,100,30),(1,1,641,10,100,13),(1,1,641,11,100,30),(1,1,642,10,100,13),(1,1,643,10,100,13),(1,1,643,11,10,16),(1,1,643,11,10,41),(1,1,643,11,10,46),(1,1,643,11,10,49),(1,1,643,11,10,54),(1,1,643,11,10,57),(1,1,644,10,100,13),(1,1,644,11,100,30),(1,1,645,10,100,13),(1,1,645,11,100,30),(1,1,646,11,10,14),(1,1,646,11,10,43),(1,1,646,11,10,44),(1,1,646,11,10,51),(1,1,646,11,10,59),(1,1,646,11,10,60),(1,1,647,11,10,14),(1,1,647,11,10,43),(1,1,647,11,10,44),(1,1,647,11,10,51),(1,1,647,11,10,59),(1,1,647,11,10,60),(1,1,648,11,10,14),(1,1,648,11,10,43),(1,1,648,11,10,44),(1,1,648,11,10,51),(1,1,648,11,10,59),(1,1,648,11,10,60),(1,1,649,11,10,14),(1,1,649,11,10,17),(1,1,649,11,10,40),(1,1,649,11,10,43),(1,1,649,11,10,44),(1,1,649,11,10,47),(1,1,649,11,10,48),(1,1,649,11,10,51),(1,1,649,11,10,55),(1,1,649,11,10,56),(1,1,649,11,10,59),(1,1,649,11,10,60),(1,1,650,11,10,14),(1,1,650,11,10,43),(1,1,650,11,10,44),(1,1,650,11,10,51),(1,1,650,11,10,59),(1,1,650,11,10,60),(1,1,651,11,10,14),(1,1,651,11,10,16),(1,1,651,11,10,41),(1,1,651,11,10,43),(1,1,651,11,10,44),(1,1,651,11,10,46),(1,1,651,11,10,49),(1,1,651,11,10,51),(1,1,651,11,10,54),(1,1,651,11,10,57),(1,1,651,11,10,59),(1,1,651,11,10,60),(1,1,652,1,5,1),(1,1,652,1,5,32),(1,1,652,1,5,34),(1,1,652,11,10,14),(1,1,652,11,10,16),(1,1,652,11,10,41),(1,1,652,11,10,43),(1,1,652,11,10,44),(1,1,652,11,10,46),(1,1,652,11,10,49),(1,1,652,11,10,51),(1,1,652,11,10,54),(1,1,652,11,10,57),(1,1,652,11,10,59),(1,1,652,11,10,60),(1,1,653,11,10,14),(1,1,653,11,10,43),(1,1,653,11,10,44),(1,1,653,11,10,51),(1,1,653,11,10,59),(1,1,653,11,10,60),(1,1,654,11,10,14),(1,1,654,11,10,16),(1,1,654,11,10,41),(1,1,654,11,10,43),(1,1,654,11,10,44),(1,1,654,11,10,46),(1,1,654,11,10,49),(1,1,654,11,10,51),(1,1,654,11,10,54),(1,1,654,11,10,57),(1,1,654,11,10,59),(1,1,654,11,10,60),(1,1,655,11,10,14),(1,1,655,11,10,16),(1,1,655,11,10,41),(1,1,655,11,10,43),(1,1,655,11,10,44),(1,1,655,11,10,46),(1,1,655,11,10,49),(1,1,655,11,10,51),(1,1,655,11,10,54),(1,1,655,11,10,57),(1,1,655,11,10,59),(1,1,655,11,10,60),(1,1,656,11,10,14),(1,1,656,11,10,43),(1,1,656,11,10,44),(1,1,656,11,10,51),(1,1,656,11,10,59),(1,1,656,11,10,60),(1,1,656,11,100,30),(1,1,657,11,10,14),(1,1,657,11,10,43),(1,1,657,11,10,44),(1,1,657,11,10,51),(1,1,657,11,10,59),(1,1,657,11,10,60),(1,1,658,11,10,14),(1,1,658,11,10,43),(1,1,658,11,10,44),(1,1,658,11,10,51),(1,1,658,11,10,59),(1,1,658,11,10,60),(1,1,658,11,30,23),(1,1,658,11,40,25),(1,1,658,11,100,30),(1,1,659,11,10,15),(1,1,659,11,10,42),(1,1,659,11,10,45),(1,1,659,11,10,58),(1,1,659,11,10,61),(1,1,660,11,10,15),(1,1,660,11,10,42),(1,1,660,11,10,45),(1,1,660,11,10,58),(1,1,660,11,10,61),(1,1,661,11,10,15),(1,1,661,11,10,42),(1,1,661,11,10,45),(1,1,661,11,10,58),(1,1,661,11,10,61),(1,1,662,11,10,15),(1,1,662,11,10,42),(1,1,662,11,10,45),(1,1,662,11,10,58),(1,1,662,11,10,61),(1,1,663,11,10,15),(1,1,663,11,10,42),(1,1,663,11,10,45),(1,1,663,11,10,58),(1,1,663,11,10,61),(1,1,664,11,10,15),(1,1,664,11,10,16),(1,1,664,11,10,41),(1,1,664,11,10,42),(1,1,664,11,10,45),(1,1,664,11,10,46),(1,1,664,11,10,49),(1,1,664,11,10,54),(1,1,664,11,10,57),(1,1,664,11,10,58),(1,1,664,11,10,61),(1,1,664,11,100,30),(1,1,665,11,10,15),(1,1,665,11,10,42),(1,1,665,11,10,45),(1,1,665,11,10,58),(1,1,665,11,10,61),(1,1,665,11,100,30),(1,1,666,11,10,15),(1,1,666,11,10,16),(1,1,666,11,10,41),(1,1,666,11,10,42),(1,1,666,11,10,45),(1,1,666,11,10,46),(1,1,666,11,10,49),(1,1,666,11,10,54),(1,1,666,11,10,57),(1,1,666,11,10,58),(1,1,666,11,10,61),(1,1,667,11,10,15),(1,1,667,11,10,42),(1,1,667,11,10,45),(1,1,667,11,10,58),(1,1,667,11,10,61),(1,1,667,11,100,30),(1,1,668,11,10,15),(1,1,668,11,10,16),(1,1,668,11,10,41),(1,1,668,11,10,42),(1,1,668,11,10,45),(1,1,668,11,10,46),(1,1,668,11,10,49),(1,1,668,11,10,54),(1,1,668,11,10,57),(1,1,668,11,10,58),(1,1,668,11,10,61),(1,1,669,1,5,1),(1,1,669,1,5,32),(1,1,669,1,5,34),(1,1,669,11,10,15),(1,1,669,11,10,42),(1,1,669,11,10,45),(1,1,669,11,10,58),(1,1,669,11,10,61),(1,1,670,11,10,16),(1,1,670,11,10,41),(1,1,670,11,10,46),(1,1,670,11,10,49),(1,1,670,11,10,54),(1,1,670,11,10,57),(1,1,671,1,5,33),(1,1,671,11,10,16),(1,1,671,11,10,41),(1,1,671,11,10,46),(1,1,671,11,10,49),(1,1,671,11,10,54),(1,1,671,11,10,57),(1,1,671,11,40,24),(1,1,672,11,10,16),(1,1,672,11,10,41),(1,1,672,11,10,46),(1,1,672,11,10,49),(1,1,672,11,10,54),(1,1,672,11,10,57),(1,1,673,11,10,16),(1,1,673,11,10,41),(1,1,673,11,10,46),(1,1,673,11,10,49),(1,1,673,11,10,54),(1,1,673,11,10,57),(1,1,674,11,10,16),(1,1,674,11,10,41),(1,1,674,11,10,46),(1,1,674,11,10,49),(1,1,674,11,10,54),(1,1,674,11,10,57),(1,1,675,11,10,16),(1,1,675,11,10,41),(1,1,675,11,10,46),(1,1,675,11,10,49),(1,1,675,11,10,54),(1,1,675,11,10,57),(1,1,676,11,10,16),(1,1,676,11,10,41),(1,1,676,11,10,46),(1,1,676,11,10,49),(1,1,676,11,10,54),(1,1,676,11,10,57),(1,1,676,11,100,30),(1,1,677,11,10,16),(1,1,677,11,10,41),(1,1,677,11,10,46),(1,1,677,11,10,49),(1,1,677,11,10,54),(1,1,677,11,10,57),(1,1,678,11,10,16),(1,1,678,11,10,41),(1,1,678,11,10,46),(1,1,678,11,10,49),(1,1,678,11,10,54),(1,1,678,11,10,57),(1,1,679,1,5,1),(1,1,679,1,5,32),(1,1,679,1,5,34),(1,1,679,11,10,16),(1,1,679,11,10,41),(1,1,679,11,10,46),(1,1,679,11,10,49),(1,1,679,11,10,54),(1,1,679,11,10,57),(1,1,679,11,40,25),(1,1,679,11,100,30),(1,1,680,1,5,1),(1,1,680,1,5,32),(1,1,680,1,5,34),(1,1,680,11,10,16),(1,1,680,11,10,41),(1,1,680,11,10,46),(1,1,680,11,10,49),(1,1,680,11,10,54),(1,1,680,11,10,57),(1,1,680,11,20,18),(1,1,680,11,40,25),(1,1,681,11,10,16),(1,1,681,11,10,41),(1,1,681,11,10,46),(1,1,681,11,10,49),(1,1,681,11,10,54),(1,1,681,11,10,57),(1,1,682,11,10,16),(1,1,682,11,10,41),(1,1,682,11,10,46),(1,1,682,11,10,49),(1,1,682,11,10,54),(1,1,682,11,10,57),(1,1,682,11,100,30),(1,1,683,11,10,16),(1,1,683,11,10,41),(1,1,683,11,10,46),(1,1,683,11,10,49),(1,1,683,11,10,54),(1,1,683,11,10,57),(1,1,684,11,10,16),(1,1,684,11,10,41),(1,1,684,11,10,46),(1,1,684,11,10,49),(1,1,684,11,10,54),(1,1,684,11,10,57),(1,1,685,11,10,16),(1,1,685,11,10,41),(1,1,685,11,10,46),(1,1,685,11,10,49),(1,1,685,11,10,54),(1,1,685,11,10,57),(1,1,686,11,10,16),(1,1,686,11,10,41),(1,1,686,11,10,46),(1,1,686,11,10,49),(1,1,686,11,10,54),(1,1,686,11,10,57),(1,1,687,11,10,16),(1,1,687,11,10,41),(1,1,687,11,10,46),(1,1,687,11,10,49),(1,1,687,11,10,54),(1,1,687,11,10,57),(1,1,688,1,5,1),(1,1,688,1,5,32),(1,1,688,1,5,34),(1,1,688,11,10,16),(1,1,688,11,10,41),(1,1,688,11,10,46),(1,1,688,11,10,49),(1,1,688,11,10,54),(1,1,688,11,10,57),(1,1,688,11,50,27),(1,1,689,1,5,1),(1,1,689,1,5,32),(1,1,689,1,5,34),(1,1,689,11,10,16),(1,1,689,11,10,41),(1,1,689,11,10,46),(1,1,689,11,10,49),(1,1,689,11,10,54),(1,1,689,11,10,57),(1,1,690,11,10,16),(1,1,690,11,10,41),(1,1,690,11,10,46),(1,1,690,11,10,49),(1,1,690,11,10,54),(1,1,690,11,10,57),(1,1,691,11,10,16),(1,1,691,11,10,41),(1,1,691,11,10,46),(1,1,691,11,10,49),(1,1,691,11,10,54),(1,1,691,11,10,57),(1,1,692,11,10,16),(1,1,692,11,10,41),(1,1,692,11,10,46),(1,1,692,11,10,49),(1,1,692,11,10,54),(1,1,692,11,10,57),(1,1,693,11,10,16),(1,1,693,11,10,41),(1,1,693,11,10,46),(1,1,693,11,10,49),(1,1,693,11,10,54),(1,1,693,11,10,57),(1,1,694,1,5,1),(1,1,694,1,5,32),(1,1,694,1,5,34),(1,1,694,11,10,16),(1,1,694,11,10,41),(1,1,694,11,10,46),(1,1,694,11,10,49),(1,1,694,11,10,54),(1,1,694,11,10,57),(1,1,695,11,10,16),(1,1,695,11,10,41),(1,1,695,11,10,46),(1,1,695,11,10,49),(1,1,695,11,10,54),(1,1,695,11,10,57),(1,1,695,11,100,30),(1,1,696,11,10,16),(1,1,696,11,10,41),(1,1,696,11,10,46),(1,1,696,11,10,49),(1,1,696,11,10,54),(1,1,696,11,10,57),(1,1,696,11,100,30),(1,1,697,11,10,16),(1,1,697,11,10,41),(1,1,697,11,10,46),(1,1,697,11,10,49),(1,1,697,11,10,54),(1,1,697,11,10,57),(1,1,698,11,10,16),(1,1,698,11,10,41),(1,1,698,11,10,46),(1,1,698,11,10,49),(1,1,698,11,10,54),(1,1,698,11,10,57),(1,1,699,11,10,16),(1,1,699,11,10,41),(1,1,699,11,10,46),(1,1,699,11,10,49),(1,1,699,11,10,54),(1,1,699,11,10,57),(1,1,700,11,10,16),(1,1,700,11,10,41),(1,1,700,11,10,46),(1,1,700,11,10,49),(1,1,700,11,10,54),(1,1,700,11,10,57),(1,1,700,11,20,18),(1,1,700,11,40,25),(1,1,701,11,10,16),(1,1,701,11,10,41),(1,1,701,11,10,46),(1,1,701,11,10,49),(1,1,701,11,10,54),(1,1,701,11,10,57),(1,1,702,11,10,16),(1,1,702,11,10,41),(1,1,702,11,10,46),(1,1,702,11,10,49),(1,1,702,11,10,54),(1,1,702,11,10,57),(1,1,703,11,10,16),(1,1,703,11,10,41),(1,1,703,11,10,46),(1,1,703,11,10,49),(1,1,703,11,10,54),(1,1,703,11,10,57),(1,1,704,11,10,16),(1,1,704,11,10,41),(1,1,704,11,10,46),(1,1,704,11,10,49),(1,1,704,11,10,54),(1,1,704,11,10,57),(1,1,704,11,40,24),(1,1,705,11,10,16),(1,1,705,11,10,41),(1,1,705,11,10,46),(1,1,705,11,10,49),(1,1,705,11,10,54),(1,1,705,11,10,57),(1,1,706,11,10,16),(1,1,706,11,10,41),(1,1,706,11,10,46),(1,1,706,11,10,49),(1,1,706,11,10,54),(1,1,706,11,10,57),(1,1,707,11,10,16),(1,1,707,11,10,41),(1,1,707,11,10,46),(1,1,707,11,10,49),(1,1,707,11,10,54),(1,1,707,11,10,57),(1,1,708,11,10,16),(1,1,708,11,10,41),(1,1,708,11,10,46),(1,1,708,11,10,49),(1,1,708,11,10,54),(1,1,708,11,10,57),(1,1,709,11,10,16),(1,1,709,11,10,41),(1,1,709,11,10,46),(1,1,709,11,10,49),(1,1,709,11,10,54),(1,1,709,11,10,57),(1,1,709,11,100,30),(1,1,710,11,10,16),(1,1,710,11,10,41),(1,1,710,11,10,46),(1,1,710,11,10,49),(1,1,710,11,10,54),(1,1,710,11,10,57),(1,1,711,11,10,16),(1,1,711,11,10,41),(1,1,711,11,10,46),(1,1,711,11,10,49),(1,1,711,11,10,54),(1,1,711,11,10,57),(1,1,712,11,10,16),(1,1,712,11,10,41),(1,1,712,11,10,46),(1,1,712,11,10,49),(1,1,712,11,10,54),(1,1,712,11,10,57),(1,1,712,11,100,30),(1,1,713,11,10,16),(1,1,713,11,10,41),(1,1,713,11,10,46),(1,1,713,11,10,49),(1,1,713,11,10,54),(1,1,713,11,10,57),(1,1,714,11,10,16),(1,1,714,11,10,41),(1,1,714,11,10,46),(1,1,714,11,10,49),(1,1,714,11,10,54),(1,1,714,11,10,57),(1,1,715,11,10,16),(1,1,715,11,10,41),(1,1,715,11,10,46),(1,1,715,11,10,49),(1,1,715,11,10,54),(1,1,715,11,10,57),(1,1,715,11,100,30),(1,1,716,11,10,16),(1,1,716,11,10,41),(1,1,716,11,10,46),(1,1,716,11,10,49),(1,1,716,11,10,54),(1,1,716,11,10,57),(1,1,717,11,10,16),(1,1,717,11,10,41),(1,1,717,11,10,46),(1,1,717,11,10,49),(1,1,717,11,10,54),(1,1,717,11,10,57),(1,1,717,11,100,30),(1,1,718,11,10,16),(1,1,718,11,10,41),(1,1,718,11,10,46),(1,1,718,11,10,49),(1,1,718,11,10,54),(1,1,718,11,10,57),(1,1,718,11,30,22),(1,1,719,11,10,16),(1,1,719,11,10,41),(1,1,719,11,10,46),(1,1,719,11,10,49),(1,1,719,11,10,54),(1,1,719,11,10,57),(1,1,720,11,10,16),(1,1,720,11,10,41),(1,1,720,11,10,46),(1,1,720,11,10,49),(1,1,720,11,10,54),(1,1,720,11,10,57),(1,1,721,11,10,16),(1,1,721,11,10,41),(1,1,721,11,10,46),(1,1,721,11,10,49),(1,1,721,11,10,54),(1,1,721,11,10,57),(1,1,722,11,10,16),(1,1,722,11,10,41),(1,1,722,11,10,46),(1,1,722,11,10,49),(1,1,722,11,10,54),(1,1,722,11,10,57),(1,1,723,1,5,1),(1,1,723,1,5,32),(1,1,723,1,5,34),(1,1,723,11,10,16),(1,1,723,11,10,41),(1,1,723,11,10,46),(1,1,723,11,10,49),(1,1,723,11,10,54),(1,1,723,11,10,57),(1,1,723,11,20,20),(1,1,723,11,100,30),(1,1,724,11,10,16),(1,1,724,11,10,41),(1,1,724,11,10,46),(1,1,724,11,10,49),(1,1,724,11,10,54),(1,1,724,11,10,57),(1,1,725,11,10,16),(1,1,725,11,10,41),(1,1,725,11,10,46),(1,1,725,11,10,49),(1,1,725,11,10,54),(1,1,725,11,10,57),(1,1,726,11,10,16),(1,1,726,11,10,41),(1,1,726,11,10,46),(1,1,726,11,10,49),(1,1,726,11,10,54),(1,1,726,11,10,57),(1,1,727,11,10,16),(1,1,727,11,10,41),(1,1,727,11,10,46),(1,1,727,11,10,49),(1,1,727,11,10,54),(1,1,727,11,10,57),(1,1,727,11,20,18),(1,1,727,11,30,21),(1,1,728,11,10,16),(1,1,728,11,10,41),(1,1,728,11,10,46),(1,1,728,11,10,49),(1,1,728,11,10,54),(1,1,728,11,10,57),(1,1,728,11,100,30),(1,1,729,1,5,1),(1,1,729,1,5,32),(1,1,729,1,5,34),(1,1,729,11,10,16),(1,1,729,11,10,41),(1,1,729,11,10,46),(1,1,729,11,10,49),(1,1,729,11,10,54),(1,1,729,11,10,57),(1,1,729,11,20,18),(1,1,729,11,100,30),(1,1,730,11,10,16),(1,1,730,11,10,41),(1,1,730,11,10,46),(1,1,730,11,10,49),(1,1,730,11,10,54),(1,1,730,11,10,57),(1,1,731,11,10,16),(1,1,731,11,10,41),(1,1,731,11,10,46),(1,1,731,11,10,49),(1,1,731,11,10,54),(1,1,731,11,10,57),(1,1,731,11,40,25),(1,1,732,1,5,1),(1,1,732,1,5,32),(1,1,732,1,5,34),(1,1,732,11,10,16),(1,1,732,11,10,41),(1,1,732,11,10,46),(1,1,732,11,10,49),(1,1,732,11,10,54),(1,1,732,11,10,57),(1,1,732,11,50,27),(1,1,733,11,10,16),(1,1,733,11,10,41),(1,1,733,11,10,46),(1,1,733,11,10,49),(1,1,733,11,10,54),(1,1,733,11,10,57),(1,1,734,11,10,16),(1,1,734,11,10,41),(1,1,734,11,10,46),(1,1,734,11,10,49),(1,1,734,11,10,54),(1,1,734,11,10,57),(1,1,734,11,30,22),(1,1,734,11,100,30),(1,1,735,11,10,16),(1,1,735,11,10,41),(1,1,735,11,10,46),(1,1,735,11,10,49),(1,1,735,11,10,54),(1,1,735,11,10,57),(1,1,736,11,10,16),(1,1,736,11,10,41),(1,1,736,11,10,46),(1,1,736,11,10,49),(1,1,736,11,10,54),(1,1,736,11,10,57),(1,1,736,11,100,30),(1,1,737,11,10,16),(1,1,737,11,10,41),(1,1,737,11,10,46),(1,1,737,11,10,49),(1,1,737,11,10,54),(1,1,737,11,10,57),(1,1,738,11,10,16),(1,1,738,11,10,41),(1,1,738,11,10,46),(1,1,738,11,10,49),(1,1,738,11,10,54),(1,1,738,11,10,57),(1,1,738,11,100,30),(1,1,739,11,10,16),(1,1,739,11,10,41),(1,1,739,11,10,46),(1,1,739,11,10,49),(1,1,739,11,10,54),(1,1,739,11,10,57),(1,1,740,11,10,16),(1,1,740,11,10,41),(1,1,740,11,10,46),(1,1,740,11,10,49),(1,1,740,11,10,54),(1,1,740,11,10,57),(1,1,741,1,5,1),(1,1,741,1,5,32),(1,1,741,1,5,34),(1,1,741,11,10,16),(1,1,741,11,10,41),(1,1,741,11,10,46),(1,1,741,11,10,49),(1,1,741,11,10,54),(1,1,741,11,10,57),(1,1,741,11,30,22),(1,1,742,11,10,16),(1,1,742,11,10,41),(1,1,742,11,10,46),(1,1,742,11,10,49),(1,1,742,11,10,54),(1,1,742,11,10,57),(1,1,742,11,100,30),(1,1,743,11,10,16),(1,1,743,11,10,41),(1,1,743,11,10,46),(1,1,743,11,10,49),(1,1,743,11,10,54),(1,1,743,11,10,57),(1,1,744,11,10,16),(1,1,744,11,10,41),(1,1,744,11,10,46),(1,1,744,11,10,49),(1,1,744,11,10,54),(1,1,744,11,10,57),(1,1,744,11,20,20),(1,1,744,11,40,25),(1,1,745,11,10,16),(1,1,745,11,10,41),(1,1,745,11,10,46),(1,1,745,11,10,49),(1,1,745,11,10,54),(1,1,745,11,10,57),(1,1,746,11,10,16),(1,1,746,11,10,41),(1,1,746,11,10,46),(1,1,746,11,10,49),(1,1,746,11,10,54),(1,1,746,11,10,57),(1,1,746,11,20,19),(1,1,747,1,5,1),(1,1,747,1,5,32),(1,1,747,1,5,34),(1,1,747,11,10,16),(1,1,747,11,10,41),(1,1,747,11,10,46),(1,1,747,11,10,49),(1,1,747,11,10,54),(1,1,747,11,10,57),(1,1,747,11,20,20),(1,1,747,11,100,30),(1,1,748,11,10,16),(1,1,748,11,10,41),(1,1,748,11,10,46),(1,1,748,11,10,49),(1,1,748,11,10,54),(1,1,748,11,10,57),(1,1,749,11,10,16),(1,1,749,11,10,41),(1,1,749,11,10,46),(1,1,749,11,10,49),(1,1,749,11,10,54),(1,1,749,11,10,57),(1,1,749,11,100,30),(1,1,750,1,5,1),(1,1,750,1,5,32),(1,1,750,1,5,34),(1,1,750,11,10,16),(1,1,750,11,10,41),(1,1,750,11,10,46),(1,1,750,11,10,49),(1,1,750,11,10,54),(1,1,750,11,10,57),(1,1,750,11,100,30),(1,1,751,11,10,16),(1,1,751,11,10,41),(1,1,751,11,10,46),(1,1,751,11,10,49),(1,1,751,11,10,54),(1,1,751,11,10,57),(1,1,752,11,10,16),(1,1,752,11,10,41),(1,1,752,11,10,46),(1,1,752,11,10,49),(1,1,752,11,10,54),(1,1,752,11,10,57),(1,1,753,11,10,16),(1,1,753,11,10,41),(1,1,753,11,10,46),(1,1,753,11,10,49),(1,1,753,11,10,54),(1,1,753,11,10,57),(1,1,754,11,10,16),(1,1,754,11,10,41),(1,1,754,11,10,46),(1,1,754,11,10,49),(1,1,754,11,10,54),(1,1,754,11,10,57),(1,1,755,11,10,16),(1,1,755,11,10,41),(1,1,755,11,10,46),(1,1,755,11,10,49),(1,1,755,11,10,54),(1,1,755,11,10,57),(1,1,755,11,100,30),(1,1,756,11,10,16),(1,1,756,11,10,41),(1,1,756,11,10,46),(1,1,756,11,10,49),(1,1,756,11,10,54),(1,1,756,11,10,57),(1,1,756,11,60,28),(1,1,756,11,60,29),(1,1,757,11,10,16),(1,1,757,11,10,41),(1,1,757,11,10,46),(1,1,757,11,10,49),(1,1,757,11,10,54),(1,1,757,11,10,57),(1,1,758,11,10,16),(1,1,758,11,10,41),(1,1,758,11,10,46),(1,1,758,11,10,49),(1,1,758,11,10,54),(1,1,758,11,10,57),(1,1,759,11,10,16),(1,1,759,11,10,41),(1,1,759,11,10,46),(1,1,759,11,10,49),(1,1,759,11,10,54),(1,1,759,11,10,57),(1,1,760,11,10,16),(1,1,760,11,10,41),(1,1,760,11,10,46),(1,1,760,11,10,49),(1,1,760,11,10,54),(1,1,760,11,10,57),(1,1,760,11,100,30),(1,1,761,11,10,16),(1,1,761,11,10,41),(1,1,761,11,10,46),(1,1,761,11,10,49),(1,1,761,11,10,54),(1,1,761,11,10,57),(1,1,762,11,10,16),(1,1,762,11,10,41),(1,1,762,11,10,46),(1,1,762,11,10,49),(1,1,762,11,10,54),(1,1,762,11,10,57),(1,1,762,11,100,30),(1,1,763,11,10,16),(1,1,763,11,10,41),(1,1,763,11,10,46),(1,1,763,11,10,49),(1,1,763,11,10,54),(1,1,763,11,10,57),(1,1,763,11,40,26),(1,1,763,11,100,30),(1,1,764,11,10,17),(1,1,764,11,10,40),(1,1,764,11,10,47),(1,1,764,11,10,48),(1,1,764,11,10,55),(1,1,764,11,10,56),(1,1,765,11,10,17),(1,1,765,11,10,40),(1,1,765,11,10,47),(1,1,765,11,10,48),(1,1,765,11,10,55),(1,1,765,11,10,56),(1,1,766,11,10,17),(1,1,766,11,10,40),(1,1,766,11,10,47),(1,1,766,11,10,48),(1,1,766,11,10,55),(1,1,766,11,10,56),(1,1,766,11,40,25),(1,1,767,11,10,17),(1,1,767,11,10,40),(1,1,767,11,10,47),(1,1,767,11,10,48),(1,1,767,11,10,55),(1,1,767,11,10,56),(1,1,768,11,10,17),(1,1,768,11,10,40),(1,1,768,11,10,47),(1,1,768,11,10,48),(1,1,768,11,10,55),(1,1,768,11,10,56),(1,1,769,11,10,17),(1,1,769,11,10,40),(1,1,769,11,10,47),(1,1,769,11,10,48),(1,1,769,11,10,55),(1,1,769,11,10,56),(1,1,769,11,60,28),(1,1,770,11,10,17),(1,1,770,11,10,40),(1,1,770,11,10,47),(1,1,770,11,10,48),(1,1,770,11,10,55),(1,1,770,11,10,56),(1,1,770,11,20,19),(1,1,771,11,10,17),(1,1,771,11,10,40),(1,1,771,11,10,47),(1,1,771,11,10,48),(1,1,771,11,10,55),(1,1,771,11,10,56),(1,1,772,11,10,17),(1,1,772,11,10,40),(1,1,772,11,10,47),(1,1,772,11,10,48),(1,1,772,11,10,55),(1,1,772,11,10,56),(1,1,773,11,10,17),(1,1,773,11,10,40),(1,1,773,11,10,47),(1,1,773,11,10,48),(1,1,773,11,10,55),(1,1,773,11,10,56),(1,1,774,11,10,17),(1,1,774,11,10,40),(1,1,774,11,10,47),(1,1,774,11,10,48),(1,1,774,11,10,55),(1,1,774,11,10,56),(1,1,775,11,10,17),(1,1,775,11,10,40),(1,1,775,11,10,47),(1,1,775,11,10,48),(1,1,775,11,10,55),(1,1,775,11,10,56),(1,1,776,11,10,17),(1,1,776,11,10,40),(1,1,776,11,10,47),(1,1,776,11,10,48),(1,1,776,11,10,55),(1,1,776,11,10,56),(1,1,777,11,20,18),(1,1,778,11,20,18),(1,1,779,11,20,18),(1,1,780,11,20,18),(1,1,781,11,20,18),(1,1,782,11,20,18),(1,1,783,11,20,18),(1,1,784,1,5,1),(1,1,784,1,5,32),(1,1,784,1,5,34),(1,1,784,11,20,18),(1,1,785,11,20,19),(1,1,786,11,20,19),(1,1,787,11,20,19),(1,1,788,11,20,19),(1,1,789,11,20,19),(1,1,790,11,20,19),(1,1,791,11,20,19),(1,1,791,11,20,20),(1,1,791,11,30,23),(1,1,791,11,100,30),(1,1,792,11,20,19),(1,1,792,11,100,30),(1,1,793,11,20,19),(1,1,793,11,40,24),(1,1,794,11,20,19),(1,1,794,11,20,20),(1,1,795,11,20,20),(1,1,796,11,20,20),(1,1,797,11,20,20),(1,1,798,11,20,20),(1,1,799,11,20,20),(1,1,799,11,30,23),(1,1,800,11,20,20),(1,1,800,11,100,30),(1,1,801,11,20,20),(1,1,802,11,30,21),(1,1,803,11,30,21),(1,1,804,11,30,21),(1,1,805,11,30,21),(1,1,805,11,100,30),(1,1,806,11,30,21),(1,1,806,11,100,30),(1,1,807,11,30,21),(1,1,808,11,30,22),(1,1,809,11,30,22),(1,1,810,11,30,22),(1,1,810,11,100,30),(1,1,811,11,30,22),(1,1,812,11,30,23),(1,1,813,11,30,23),(1,1,814,11,30,23),(1,1,815,11,30,23),(1,1,816,11,30,23),(1,1,817,11,30,23),(1,1,818,11,30,23),(1,1,818,11,100,30),(1,1,819,11,30,23),(1,1,820,1,5,1),(1,1,820,1,5,32),(1,1,820,1,5,34),(1,1,820,11,30,23),(1,1,821,11,30,23),(1,1,821,11,100,30),(1,1,822,11,30,23),(1,1,823,11,30,23),(1,1,824,11,30,23),(1,1,824,11,100,30),(1,1,825,11,40,24),(1,1,826,11,40,24),(1,1,827,11,40,24),(1,1,828,11,40,24),(1,1,829,11,40,24),(1,1,830,1,5,1),(1,1,830,1,5,32),(1,1,830,1,5,34),(1,1,830,11,40,24),(1,1,830,11,100,30),(1,1,831,11,40,25),(1,1,832,11,40,25),(1,1,833,11,40,25),(1,1,834,11,40,25),(1,1,835,11,40,25),(1,1,836,11,40,25),(1,1,837,1,5,1),(1,1,837,1,5,32),(1,1,837,1,5,34),(1,1,837,11,40,25),(1,1,838,11,40,25),(1,1,839,11,40,25),(1,1,839,11,100,30),(1,1,840,11,40,26),(1,1,841,11,40,26),(1,1,842,11,40,26),(1,1,843,1,5,1),(1,1,843,1,5,32),(1,1,843,1,5,34),(1,1,843,11,40,26),(1,1,844,11,50,27),(1,1,845,11,50,27),(1,1,846,11,50,27),(1,1,847,11,50,27),(1,1,847,11,100,30),(1,1,848,11,50,27),(1,1,848,11,100,30),(1,1,849,11,50,27),(1,1,849,11,100,30),(1,1,850,11,50,27),(1,1,851,11,50,27),(1,1,851,11,100,30),(1,1,852,11,50,27),(1,1,852,11,100,30),(1,1,853,11,60,28),(1,1,854,11,60,28),(1,1,855,11,60,28),(1,1,855,11,60,29),(1,1,856,11,60,28),(1,1,857,11,60,29),(1,1,858,11,60,29),(1,1,859,11,60,29),(1,1,860,11,60,29),(1,1,861,11,60,29),(1,1,862,11,60,29),(1,1,863,11,60,29),(1,1,864,11,60,29),(1,1,865,11,60,29),(1,1,866,11,100,30),(1,1,867,11,100,30),(1,1,868,11,100,30),(1,1,869,11,100,30),(1,1,870,11,100,30),(1,1,871,1,5,33),(1,1,871,11,100,30),(1,1,872,11,100,30),(1,1,873,11,100,30),(1,1,874,11,100,30),(1,1,875,11,100,30),(1,1,876,11,100,30),(1,1,877,11,100,30),(1,1,878,11,100,30),(1,1,879,11,100,30),(1,1,880,11,100,30),(1,1,881,11,100,30),(1,1,882,11,100,30),(1,1,883,11,100,30),(1,1,884,1,5,1),(1,1,884,1,5,32),(1,1,884,1,5,34),(1,1,884,11,100,30),(1,1,885,11,100,30),(1,1,886,11,100,30),(1,1,887,1,5,1),(1,1,887,1,5,32),(1,1,887,1,5,34),(1,1,887,11,100,30),(1,1,888,11,100,30),(1,1,889,11,100,30),(1,1,890,11,100,30),(1,1,891,11,100,30),(1,1,892,11,100,30),(1,1,893,1,5,1),(1,1,893,1,5,32),(1,1,893,1,5,34),(1,1,893,11,100,30),(1,1,894,11,100,30),(1,1,895,11,100,30),(1,1,896,11,100,30),(1,1,897,11,100,30),(1,1,898,11,100,30),(1,1,899,11,100,30),(1,1,900,11,100,30),(1,1,901,11,100,30),(1,1,902,11,100,30),(1,1,903,11,100,30),(1,1,904,11,100,30),(1,1,905,11,100,30),(1,1,906,1,5,1),(1,1,906,1,5,32),(1,1,906,1,5,34),(1,1,906,11,100,30),(1,1,907,11,100,30),(1,1,908,1,5,1),(1,1,908,1,5,32),(1,1,908,1,5,34),(1,1,908,11,100,30),(1,1,909,11,100,30),(1,1,910,11,100,30),(1,1,911,11,100,30),(1,1,912,11,100,30),(1,1,913,11,100,30),(1,1,914,1,5,1),(1,1,914,1,5,32),(1,1,914,1,5,34),(1,1,914,11,100,30),(1,1,915,11,100,30),(1,1,916,11,100,30),(1,1,917,11,100,30),(1,1,918,11,100,31),(1,1,919,11,100,31),(1,1,920,1,5,1),(1,1,920,1,5,32),(1,1,920,1,5,34),(1,1,921,1,5,1),(1,1,921,1,5,32),(1,1,921,1,5,34),(1,1,922,1,5,1),(1,1,922,1,5,32),(1,1,922,1,5,34),(1,1,923,1,5,1),(1,1,923,1,5,32),(1,1,923,1,5,34),(1,1,924,1,5,1),(1,1,924,1,5,32),(1,1,924,1,5,34),(1,1,925,1,5,1),(1,1,925,1,5,32),(1,1,925,1,5,34),(1,1,926,1,5,1),(1,1,926,1,5,32),(1,1,926,1,5,34),(1,1,927,1,5,1),(1,1,927,1,5,32),(1,1,927,1,5,34),(1,1,928,1,5,1),(1,1,928,1,5,32),(1,1,928,1,5,34),(1,1,929,1,5,1),(1,1,929,1,5,32),(1,1,929,1,5,34),(1,1,930,1,5,32),(1,1,931,1,5,33),(1,1,932,1,5,33),(1,1,933,1,5,33),(1,1,934,1,5,33),(1,1,935,1,5,33),(1,1,936,1,5,33),(1,1,937,1,5,33),(1,1,938,1,5,33),(1,1,939,1,5,33),(1,1,940,1,5,33),(1,1,941,1,5,33),(1,1,942,1,5,33),(1,1,943,1,5,33),(1,1,944,1,5,33),(1,1,944,1,15,35),(1,1,944,1,15,36),(1,1,944,1,15,37),(1,1,944,1,15,38),(1,1,944,1,15,39),(1,1,945,1,5,33),(1,1,945,1,15,35),(1,1,945,1,15,36),(1,1,945,1,15,37),(1,1,945,1,15,38),(1,1,945,1,15,39),(1,1,946,1,5,33),(1,1,947,1,5,33),(1,1,948,1,5,33),(1,1,949,1,5,33),(1,1,950,1,5,33),(1,1,951,1,5,33),(1,1,952,1,5,33),(1,1,953,1,5,33),(1,1,954,1,5,33),(1,1,955,1,5,33),(1,1,956,1,5,33),(1,1,957,1,5,33),(1,1,958,1,5,33),(1,1,959,1,5,33),(1,1,960,1,5,33),(1,1,961,1,5,33),(1,1,962,1,5,33),(1,1,963,1,5,33),(1,1,964,1,5,33),(1,1,965,1,5,33),(1,1,966,1,5,33),(1,1,967,1,5,33),(1,1,968,1,5,33),(1,1,969,1,5,33),(1,1,970,1,5,33),(1,1,971,1,5,33),(1,1,972,1,5,33),(1,1,973,1,5,33),(1,1,974,1,5,33),(1,1,975,1,5,33),(1,1,976,1,5,33),(1,1,977,1,5,33),(1,1,978,1,5,33),(1,1,979,1,5,33),(1,1,980,1,5,33),(1,1,981,1,5,33),(1,1,982,1,5,33),(1,1,983,1,5,33),(1,1,984,1,5,33),(1,1,985,1,5,33),(1,1,986,1,5,33),(1,1,987,1,5,33),(1,1,988,1,5,33),(1,1,989,1,5,33),(1,1,990,1,5,33),(1,1,991,1,5,33),(1,1,992,1,5,33),(1,1,993,1,5,33),(1,1,994,1,5,33),(1,1,995,1,5,33),(1,1,996,1,5,33),(1,1,997,1,5,33),(1,1,998,1,5,33),(1,1,999,1,5,33),(1,1,1000,1,5,33),(1,1,1001,1,5,33),(1,1,1002,1,5,33),(1,1,1003,1,5,33),(1,1,1004,1,5,33),(1,1,1005,1,5,33),(1,1,1006,1,5,33),(1,1,1007,1,5,33),(1,1,1008,1,5,33),(1,1,1009,1,5,33),(1,1,1010,1,5,34),(1,1,1011,1,15,35),(1,1,1011,1,15,36),(1,1,1011,1,15,37),(1,1,1011,1,15,38),(1,1,1011,1,15,39),(1,1,1012,1,15,35),(1,1,1012,1,15,38),(1,1,1012,1,15,39),(1,1,1013,1,15,36),(1,1,1014,1,15,37),(1,1,1015,1,15,38),(1,1,1016,1,15,38),(1,1,1016,1,15,39),(1,1,1017,1,15,39),(1,1,1018,1,15,39),(1,1,1019,1,15,39),(1,1,1020,11,10,40),(1,1,1020,11,10,41),(1,1,1020,11,10,42),(1,1,1020,11,10,43),(1,1,1020,11,10,44),(1,1,1020,11,10,45),(1,1,1020,11,10,46),(1,1,1020,11,10,47),(1,1,1020,11,10,48),(1,1,1020,11,10,49),(1,1,1020,11,10,51),(1,1,1020,11,10,54),(1,1,1020,11,10,55),(1,1,1020,11,10,56),(1,1,1020,11,10,57),(1,1,1020,11,10,58),(1,1,1020,11,10,59),(1,1,1020,11,10,60),(1,1,1020,11,10,61);\n/*!40000 ALTER TABLE `ArticleIndex` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `ArticlePublish`\n--\n\nLOCK TABLES `ArticlePublish` WRITE;\n/*!40000 ALTER TABLE `ArticlePublish` DISABLE KEYS */;\n/*!40000 ALTER TABLE `ArticlePublish` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `ArticleRendition`\n--\n\nLOCK TABLES `ArticleRendition` WRITE;\n/*!40000 ALTER TABLE `ArticleRendition` DISABLE KEYS */;\nINSERT INTO `ArticleRendition` VALUES (29,'article',3,'0_17_1552_1056'),(29,'front_big',3,'0_40_1552_1086'),(29,'front_medium',3,'0_4_1552_1044'),(29,'front_small',3,'0_0_1552_1059'),(29,'slideshow',3,'0_0_1552_1034'),(29,'article',24,'0_7_1499_1011'),(29,'front_big',24,'0_0_1552_1046'),(29,'front_medium',24,'0_0_1552_1040'),(29,'front_small',24,'0_0_1552_1059'),(29,'slideshow',24,'0_0_1552_1034');\n/*!40000 ALTER TABLE `ArticleRendition` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `ArticleSnippets`\n--\n\nLOCK TABLES `ArticleSnippets` WRITE;\n/*!40000 ALTER TABLE `ArticleSnippets` DISABLE KEYS */;\n/*!40000 ALTER TABLE `ArticleSnippets` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `ArticleTopics`\n--\n\nLOCK TABLES `ArticleTopics` WRITE;\n/*!40000 ALTER TABLE `ArticleTopics` DISABLE KEYS */;\nINSERT INTO `ArticleTopics` VALUES (3,1),(3,2),(3,3),(5,2),(5,7),(8,2),(8,3),(8,7),(9,3),(12,1),(12,3),(14,2),(14,3),(14,7),(15,1),(15,2),(15,3),(15,7),(16,2),(16,7),(17,2),(17,3),(17,7),(20,2),(20,3),(20,7),(24,3),(24,6),(24,7),(26,3),(26,7),(29,1),(29,3),(40,2),(40,3),(40,7),(41,2),(41,7),(42,1),(42,2),(42,3),(42,7),(43,2),(43,3),(43,7),(44,2),(44,3),(44,7),(45,1),(45,2),(45,3),(45,7),(46,2),(46,7),(47,2),(47,3),(47,7),(48,2),(48,3),(48,7),(49,2),(49,7),(51,2),(51,3),(51,7),(54,2),(54,7),(55,2),(55,3),(55,7),(56,2),(56,3),(56,7),(57,2),(57,7),(58,1),(58,2),(58,3),(58,7),(59,2),(59,3),(59,7),(60,2),(60,3),(60,7),(61,1),(61,2),(61,3),(61,7);\n/*!40000 ALTER TABLE `ArticleTopics` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `ArticleTypeMetadata`\n--\n\nLOCK TABLES `ArticleTypeMetadata` WRITE;\n/*!40000 ALTER TABLE `ArticleTypeMetadata` DISABLE KEYS */;\nINSERT INTO `ArticleTypeMetadata` VALUES ('debate','NULL',NULL,0,1,NULL,NULL,NULL,0,NULL),('debate','teaser',1,0,0,NULL,'body','editor_size=250',1,NULL),('debate','pro_title',2,0,0,NULL,'text',NULL,0,0),('debate','pro_text',3,0,0,NULL,'body','editor_size=500',1,NULL),('debate','contra_title',4,0,0,NULL,'text',NULL,0,0),('debate','contra_text',5,0,0,NULL,'body','editor_size=500',1,NULL),('link','NULL',NULL,0,0,NULL,NULL,NULL,0,NULL),('link','url_address',1,0,0,NULL,'text',NULL,0,0),('news','NULL',NULL,0,1,NULL,NULL,NULL,0,NULL),('news','highlight',1,0,0,NULL,'switch',NULL,0,NULL),('news','deck',2,0,0,NULL,'longtext',NULL,0,NULL),('news','full_text',3,0,0,NULL,'body','editor_size=750',1,NULL),('page','NULL',NULL,0,0,NULL,NULL,NULL,0,NULL),('page','full_text',1,0,0,NULL,'body','editor_size=750',1,NULL),('poll','NULL',NULL,0,0,NULL,NULL,NULL,0,NULL);\n/*!40000 ALTER TABLE `ArticleTypeMetadata` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Articles`\n--\n\nLOCK TABLES `Articles` WRITE;\n/*!40000 ALTER TABLE `Articles` DISABLE KEYS */;\nINSERT INTO `Articles` VALUES (1,1,5,1,1,'Credits','page',1,'N','N','Y','2014-02-27 13:28:37','2014-02-20 13:12:39','','Y','Y',NULL,NULL,'1',1,1,0,'2014-03-10 02:08:46',31,'c1q43',NULL,1),(1,10,10,2,1,'The truth behind the European housing market','news',1,'N','N','Y','2014-02-21 13:25:35','2014-02-21 13:17:43','','Y','Y',NULL,NULL,'2',3,1,0,'2014-02-21 13:28:29',1,'isl6s',NULL,1),(1,10,30,6,1,'10 amazing geolocation apps','news',1,'N','N','Y','2014-02-25 15:17:37','2014-02-25 15:15:48','','Y','Y',NULL,NULL,'6',7,1,0,'2014-03-03 10:14:40',16,'3suzm',NULL,1),(1,10,10,3,1,'Mayoral race looks to the future','news',1,'N','N','Y','2014-02-21 13:32:07','2014-02-21 13:28:29','','Y','Y',NULL,NULL,'3',1,1,0,'2014-03-03 12:24:44',24,'1lfde',NULL,1),(1,10,20,4,1,'Advertisers target online demographic','news',1,'N','N','Y','2014-02-21 13:41:27','2014-02-21 13:33:57','','Y','Y',NULL,NULL,'4',5,1,0,'2014-03-03 10:14:33',12,'zxmbd',NULL,1),(1,10,20,5,1,'Car industry resurgence boosts economy','news',1,'N','N','Y','2014-02-21 13:45:49','2014-02-21 13:42:54','','Y','Y',NULL,NULL,'5',1,1,0,'2014-03-03 10:14:33',11,'q84uk',NULL,1),(1,10,30,7,1,'5 alternatives to Delicious','news',1,'N','N','Y','2014-02-25 15:21:34','2014-02-25 15:17:57','','Y','Y'NULL,NULL,'7',1,1,0,'2014-03-03 10:14:40',15,'ykwvh',NULL,1),(1,10,40,8,1,'Hayfever remedy a breath of fresh air','news',1,'N','N','Y','2014-02-25 15:33:05','2014-02-25 15:27:44','','Y','Y'NULL,NULL,'8',9,1,0,'2014-03-03 14:01:34',25,'1fmjo',NULL,1),(1,10,40,9,1,'Healthy options for your sweet tooth','news',1,'N','N','Y','2014-02-25 15:42:53','2014-02-25 15:37:08','','Y','Y'NULL,NULL,'9',1,1,0,'2014-03-15 18:47:01',53,'w7er3',NULL,1),(1,10,50,10,1,'Sarajevo Film Festival unveils 2013 line-up','news',1,'N','N','Y','2014-02-25 15:53:50','2014-02-25 15:44:09','','Y','Y'NULL,NULL,'10',11,1,0,'2014-03-17 07:53:56',54,'cebaa',NULL,1),(1,10,50,11,1,'Hidden cultural delights of the Adriatic','news',1,'N','N','Y','2014-02-25 15:56:14','2014-02-25 15:54:22','','Y','Y'NULL,NULL,'11',1,1,0,'2014-03-12 18:02:19',44,'goylg',NULL,1),(1,10,60,12,1,'Grand Slam winner sets new record','news',1,'N','N','Y','2014-02-25 15:58:40','2014-02-25 15:56:45','','Y','Y'NULL,NULL,'12',12,1,0,'2014-03-10 05:36:35',34,'qq1hd',NULL,1),(1,10,100,13,1,'Preserving Berlin Wall vs new developments','debate',1,'N','N','Y','2014-02-26 13:55:03','2014-02-25 15:59:12','','Y','Y'NULL,NULL,'13',13,1,0,'2014-03-03 11:39:16',22,'gtm3j',NULL,1),(1,11,10,14,1,'Food export duties set to rise','news',1,'N','N','Y','2014-02-26 14:00:31','2014-02-26 13:56:46','','Y','Y'NULL,NULL,'14',39,1,0,'2014-03-04 13:49:31',23,'2bct0',NULL,1),(1,11,10,15,1,'Wintry conditions sweep across China','news',1,'N','N','Y','2014-02-26 14:03:48','2014-02-26 14:01:01','','Y','Y'NULL,NULL,'15',25,1,0,'2014-03-04 13:49:31',17,'jpcdw',NULL,1),(1,11,10,16,1,'News on general theory of relativity','news',1,'N','N','Y','2014-02-26 14:06:56','2014-02-26 14:04:13','','Y','Y'NULL,NULL,'16',24,1,0,'2014-03-04 13:49:31',3,'v8o79',NULL,1),(1,11,10,17,1,'European Council candidates set to be named','news',1,'Y','N','Y','2014-02-26 14:12:52','2014-02-26 14:07:20','','Y','Y'NULL,NULL,'17',23,1,0,'2014-03-04 13:49:31',2,'ng6z0',NULL,1),(1,11,20,18,1,'Where to locate your internet start-up','news',1,'N','N','Y','2014-02-26 14:34:56','2014-02-26 14:32:50','','Y','Y'NULL,NULL,'18',20,1,0,'2014-03-03 10:14:33',10,'7ith9',NULL,1),(1,11,20,19,1,'Tax and trade bureau considers alcohol labeling','news',1,'N','N','Y','2014-02-26 14:37:30','2014-02-26 14:35:25','','Y','Y'NULL,NULL,'19',2,1,0,'2014-03-03 10:14:33',9,'a7mql',NULL,1),(1,11,20,20,1,'Private aviation companies take flight','news',1,'N','N','Y','2014-02-26 14:42:17','2014-02-26 14:37:55','','Y','Y'NULL,NULL,'20',1,1,0,'2014-03-03 10:14:33',8,'zxggi',NULL,1),(1,11,30,21,1,'Online security risks exposed','news',1,'N','N','Y','2014-02-27 12:53:36','2014-02-27 12:51:02','','Y','Y'NULL,NULL,'21',23,1,0,'2014-03-03 10:14:40',14,'jsrve',NULL,1),(1,11,30,22,1,'New horizons for the browser','news',1,'N','N','Y','2014-02-27 12:57:25','2014-02-27 12:54:02','','Y','Y'NULL,NULL,'22',2,1,0,'2014-03-03 10:14:40',13,'q3jv7',NULL,1),(1,11,30,23,1,'Commercial space flight becomes a reality','news',1,'N','N','Y','2014-02-27 12:59:42','2014-02-27 12:57:44','','N','Y'NULL,NULL,'23',1,1,0,'2014-03-03 10:14:20',6,'d5mwf',NULL,1),(1,11,40,24,1,'Luxury health breaks on offer','news',1,'N','N','Y','2014-02-27 13:04:25','2014-02-27 13:00:10','','Y','Y'NULL,NULL,'24',26,1,0,'2014-03-03 10:14:51',19,'dib75',NULL,1),(1,11,40,25,1,'City life may be beneficial say doctors','news',1,'N','N','Y','2014-02-27 13:09:41','2014-02-27 13:04:58','','Y','Y'NULL,NULL,'25',2,1,0,'2014-03-03 10:14:51',18,'qm26m',NULL,1),(1,11,40,26,1,'Sightseeing is good for the heart','news',1,'N','N','Y','2014-02-27 13:13:50','2014-02-27 13:10:12','','N','Y'NULL,NULL,'26',1,1,0,'2014-03-03 10:14:20',7,'05psn',NULL,1),(1,11,50,27,1,'New Cannes winner a taste of paradise','news',1,'N','N','Y','2014-02-27 13:17:59','2014-02-27 13:14:22','','Y','Y'NULL,NULL,'27',27,1,0,'2014-03-03 10:14:18',5,'x51rv',NULL,1),(1,11,60,28,1,'Italian football reaches new world audience','news',1,'N','N','Y','2014-02-27 13:20:44','2014-02-27 13:18:35','','Y','Y'NULL,NULL,'28',29,1,0,'2014-03-03 10:14:18',4,'fdweg',NULL,1),(1,11,60,29,1,'Lionel Messi: the Argentinean who makes children dream all over the world','news',1,'N','N','Y','2014-02-27 13:22:49','2014-02-27 13:21:05','','Y','Y'NULL,NULL,'29',1,1,0,'2014-03-03 10:14:51',20,'f5rkl',NULL,1),(1,11,100,30,1,'UEFA Champions league Enlargement: yes or no?','debate',1,'N','N','Y','2014-02-27 13:25:11','2014-02-27 13:23:20','','Y','Y'NULL,NULL,'30',31,1,0,'2014-03-03 11:39:16',21,'pwqhd',NULL,1),(1,11,100,31,1,'Favorite sport','poll',1,'N','N','Y','2014-02-27 13:26:17','2014-02-27 13:26:05','','Y','Y'NULL,NULL,'31',1,1,0,'2014-02-27 13:26:17',0,'0hmsc',NULL,1),(1,1,5,32,1,'Marketing','page',1,'N','N','Y','2014-02-27 13:36:02','2014-02-27 13:34:45','','Y','Y'NULL,NULL,'32',2,1,0,'2014-03-10 02:15:03',32,'p5e8a',NULL,1),(1,1,5,33,1,'Contact','page',1,'N','N','Y','2014-02-27 13:37:01','2014-02-27 13:36:48','','Y','Y'NULL,NULL,'33',3,1,0,'2014-03-10 03:23:10',33,'d7e71',NULL,1),(1,1,5,34,1,'About Us','page',1,'N','N','Y','2014-02-27 13:38:24','2014-02-27 13:37:35','','Y','Y'NULL,NULL,'34',4,1,0,'2014-03-03 14:51:37',26,'fc6h2',NULL,1),(1,1,15,35,1,'Sourcefabric','link',1,'N','N','Y','2014-02-27 13:39:25','2014-02-27 13:39:15','','Y','Y'NULL,NULL,'35',39,1,0,'2014-02-27 13:41:44',0,'75zd4',NULL,1),(1,1,15,36,1,'Newscoop','link',1,'N','N','Y','2014-02-27 13:39:56','2014-02-27 13:39:49','','Y','Y'NULL,NULL,'36',4,1,0,'2014-02-27 13:41:44',0,'tuorf',NULL,1),(1,1,15,37,1,'Airtime','link',1,'N','N','Y','2014-02-27 13:40:29','2014-02-27 13:40:20','','Y','Y'NULL,NULL,'37',3,1,0,'2014-02-27 13:41:44',0,'0a8w4',NULL,1),(1,1,15,38,1,'Sourcefabric Services','link',1,'N','N','Y','2014-02-27 13:41:12','2014-02-27 13:41:01','','Y','Y'NULL,NULL,'38',2,1,0,'2014-02-27 13:41:44',0,'fekaa',NULL,1),(1,1,15,39,1,'Join Sourcefabric','link',1,'N','N','Y','2014-02-27 13:41:51','2014-02-27 13:41:44','','Y','Y'NULL,NULL,'39',1,1,0,'2014-02-27 13:41:51',0,'odmcz',NULL,1);\n/*!40000 ALTER TABLE `Articles` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Attachments`\n--\n\nLOCK TABLES `Attachments` WRITE;\n/*!40000 ALTER TABLE `Attachments` DISABLE KEYS */;\nINSERT INTO `Attachments` VALUES (1,NULL,'sourcefabric-jingle.mp3','mp3','audio/mp3','attachment',NULL,128522,2,1,'2014-02-26 14:11:44','2014-02-26 14:11:44','local','approved'),(2,NULL,'sourcefabric_jingle.oga','oga','audio/ogg','attachment',NULL,149501,2,1,'2014-02-26 14:12:23','2014-02-26 14:12:23','local','approved'),(3,NULL,'sourcefabric-video.ogv','ogv','video/ogg','attachment',NULL,318290,2,1,'2014-02-27 13:17:18','2014-02-27 13:17:18','local','approved');\n/*!40000 ALTER TABLE `Attachments` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `AuthorAssignedTypes`\n--\n\nLOCK TABLES `AuthorAssignedTypes` WRITE;\n/*!40000 ALTER TABLE `AuthorAssignedTypes` DISABLE KEYS */;\nINSERT INTO `AuthorAssignedTypes` VALUES (0,1),(2,1),(3,1),(3,3),(4,1),(4,3),(5,1),(6,1),(6,2),(6,3),(7,1),(8,1),(8,3),(9,1),(9,3),(10,1);\n/*!40000 ALTER TABLE `AuthorAssignedTypes` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `AuthorBiographies`\n--\n\nLOCK TABLES `AuthorBiographies` WRITE;\n/*!40000 ALTER TABLE `AuthorBiographies` DISABLE KEYS */;\nINSERT INTO `AuthorBiographies` VALUES (2,1,'Lorem ipsum quis sonet eloquentiam ei eum. Ad sea laoreet admodum fuisset, at graece impetus nec. Exerci aeterno ex sea, an eum rebum debet graecis. Quem legendos rationibus nec ex, duis explicari definitiones et mei. Sed accumsan adversarium at.','Amerigo','Vespucci'),(3,1,'Offendit lobortis te quo, et cum tation scribentur. His amet doctus percipit cu. Nam ut sale omnis elitr. Ut aeterno offendit vix, ei vim fugit deleniti, per an dolore principes definitionem. Mei te forensibus mnesarchum, no pri menandri pertinacia.','Frank N.','Stein'),(4,1,'Eum semper persius graecis an, eos causae qualisque an, no sit congue eleifend. Eruditi impedit postulant ad vim, mel id congue iracundia, iracundia evertitur mel in. His ipsum accusata splendide te, ea eum paulo suscipit.','Haralampius','Bah'),(5,1,'Sed eripuit bonorum dolores at.Â <strong>Aeque utinam regione ne pro</strong>, an mel utinam veritus deserunt. Et ubique habemus probatus mei, an eruditi assueverit disputando mea. Sea option maiestatis at, est possit labitur abhorreant id, probo oblique molestiae has no.Â <em>Alia aeterno posidonium per ei, sea habeo idque commune ad</em>.','James Q.','Reporter'),(6,1,'Ne eripuit signiferumque usu, cum accusam honestatis deterruisset et, nec ut quando laboramus. Nec id odio facilisi persecuti. Nec adipisci sensibus ne. Cu nam tibique eligendi.','Jane','Stockwriter'),(7,1,'','John','Smith'),(8,1,'Vim tale evertitur no, ex vel laudem equidem. At per numquam euismod iracundia. Verear vivendo intellegam vel eu, ut nec delectus corrumpit, mei in mundi deleniti. Vix ut falli aliquam atomorum, ne mea perpetua patrioque.','Sarah','Staffwriter'),(9,1,'Nec ne euismod utroque. Mei audire officiis constituam ex, ad per ornatus oportere. Quot congue ponderum at qui. Vis ne solet constituto, mea labores corrumpit constituam eu. Inermis gubergren in quo, per evertitur accommodare no, paulo comprehensam eu duo.','Test','Persona'),(10,1,'','Administrator (don\\'t','delete)');\n/*!40000 ALTER TABLE `AuthorBiographies` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `AuthorTypes`\n--\n\nLOCK TABLES `AuthorTypes` WRITE;\n/*!40000 ALTER TABLE `AuthorTypes` DISABLE KEYS */;\nINSERT INTO `AuthorTypes` VALUES (1,'Author'),(2,'Writer'),(3,'Photographer'),(4,'Editor'),(5,'Columnist');\n/*!40000 ALTER TABLE `AuthorTypes` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Authors`\n--\n\nLOCK TABLES `Authors` WRITE;\n/*!40000 ALTER TABLE `Authors` DISABLE KEYS */;\nINSERT INTO `Authors` VALUES (2,'Amerigo','Vespucci','amerigo.vespucci@thejournal.com',NULL,'','','',NULL,1),(3,'Frank N.','Stein','',NULL,'','','',NULL,2),(4,'Haralampius','Bah','haralampius@gmail.com',NULL,'hara_lamp','','',NULL,3),(5,'James Q.','Reporter','',NULL,'','','',NULL,4),(6,'Jane','Stockwriter','',NULL,'','','',NULL,5),(7,'John','Smith','',NULL,'','','',NULL,0),(8,'Sarah','Staffwriter','',NULL,'','','',NULL,6),(9,'Test','Persona','',NULL,'','','',NULL,7),(10,'Administrator (don\\'t','delete)','admin@admin.com',NULL,'','','',NULL,35);\n/*!40000 ALTER TABLE `Authors` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `AutoId`\n--\n\nLOCK TABLES `AutoId` WRITE;\n/*!40000 ALTER TABLE `AutoId` DISABLE KEYS */;\nINSERT INTO `AutoId` VALUES (61,'2014-03-04 13:49:42',0,1);\n/*!40000 ALTER TABLE `AutoId` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Cache`\n--\n\nLOCK TABLES `Cache` WRITE;\n/*!40000 ALTER TABLE `Cache` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Cache` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `CityLocations`\n--\n\nLOCK TABLES `CityLocations` WRITE;\n/*!40000 ALTER TABLE `CityLocations` DISABLE KEYS */;\n/*!40000 ALTER TABLE `CityLocations` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `CityNames`\n--\n\nLOCK TABLES `CityNames` WRITE;\n/*!40000 ALTER TABLE `CityNames` DISABLE KEYS */;\n/*!40000 ALTER TABLE `CityNames` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Classes`\n--\n\nLOCK TABLES `Classes` WRITE;\n/*!40000 ALTER TABLE `Classes` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Classes` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Countries`\n--\n\nLOCK TABLES `Countries` WRITE;\n/*!40000 ALTER TABLE `Countries` DISABLE KEYS */;\nINSERT INTO `Countries` VALUES ('AR',1,'Argentina'),('AG',1,'Antigua and Barbuda'),('AQ',1,'Antarctica'),('AI',1,'Anguilla'),('AO',1,'Angola'),('AD',1,'Andorra'),('AS',1,'American Samoa'),('DZ',1,'Algeria'),('AL',1,'Albania'),('AF',1,'Afghanistan'),('AM',1,'Armenia'),('AW',1,'Aruba'),('AU',1,'Australia'),('AT',1,'Austria'),('AZ',1,'Azerbaijan'),('BS',1,'Bahamas'),('BH',1,'Bahrain'),('BD',1,'Bangladesh'),('BB',1,'Barbados'),('BY',1,'Belarus'),('BE',1,'Belgium'),('BZ',1,'Belize'),('BJ',1,'Benin'),('BM',1,'Bermuda'),('BT',1,'Bhutan'),('BO',1,'Bolivia'),('BA',1,'Bosnia and Herzegovina'),('BW',1,'Botswana'),('BV',1,'Bouvet Island'),('BR',1,'Brazil'),('IO',1,'British Indian Ocean Territory'),('BN',1,'Brunei Darussalam'),('BG',1,'Bulgaria'),('BF',1,'Burkina Faso'),('BI',1,'Burundi'),('KH',1,'Cambodia'),('CM',1,'Cameroon'),('CA',1,'Canada'),('CV',1,'Cape Verde'),('KY',1,'Cayman Islands'),('CF',1,'Central African Republic'),('TD',1,'Chad'),('CL',1,'Chile'),('CN',1,'China'),('CX',1,'Christmas Island'),('CC',1,'Cocos (Keeling) Islands'),('CO',1,'Colombia'),('KM',1,'Comoros'),('CG',1,'Congo'),('CD',1,'Congo, The Democratic Republic Of The'),('CK',1,'Cook Islands'),('CR',1,'Costa Rica'),('CI',1,'Côte d\\'Ivoire'),('HR',1,'Croatia'),('CU',1,'Cuba'),('CY',1,'Cyprus'),('CZ',1,'Czech Republic'),('DK',1,'Denmark'),('DJ',1,'Djibouti'),('DM',1,'Dominica'),('DO',1,'Dominican Republic'),('TP',1,'Timor-Leste'),('EC',1,'Ecuador'),('EG',1,'Egypt'),('SV',1,'El Salvador'),('GQ',1,'Equatorial Guinea'),('ER',1,'Eritrea'),('EE',1,'Estonia'),('ET',1,'Ethiopia'),('FK',1,'Falkland Islands (Malvinas)'),('FO',1,'Faroe Islands'),('FJ',1,'Fiji'),('FI',1,'Finland'),('FR',1,'France'),('FX',1,'France, Metropolitan'),('GF',1,'French Guiana'),('PF',1,'French Polynesia'),('TF',1,'French Southern Territories'),('GA',1,'Gabon'),('GM',1,'Gambia'),('GE',1,'Georgia'),('DE',1,'Germany'),('GH',1,'Ghana'),('GI',1,'Gibraltar'),('GR',1,'Greece'),('GL',1,'Greenland'),('GD',1,'Grenada'),('GP',1,'Guadeloupe'),('GU',1,'Guam'),('GT',1,'Guatemala'),('GN',1,'Guinea'),('GW',1,'Guinea-bissau'),('GY',1,'Guyana'),('HT',1,'Haiti'),('HM',1,'Heard Island and Mcdonald Islands'),('VA',1,'Holy See (Vatican City State)'),('HN',1,'Honduras'),('HK',1,'Hong Kong'),('HU',1,'Hungary'),('IS',1,'Iceland'),('IN',1,'India'),('ID',1,'Indonesia'),('IR',1,'Iran, Islamic Republic of'),('IQ',1,'Iraq'),('IE',1,'Ireland'),('IL',1,'Israel'),('IT',1,'Italy'),('JM',1,'Jamaica'),('JP',1,'Japan'),('JO',1,'Jordan'),('KZ',1,'Kazakstan'),('KE',1,'Kenya'),('KI',1,'Kiribati'),('KP',1,'Korea, Democratic Peoples Republic of'),('KR',1,'Korea, Republic of'),('KW',1,'Kuwait'),('KG',1,'Kyrgyzstan'),('LA',1,'Lao People\\'s Democratic Republic'),('LV',1,'Latvia'),('LB',1,'Lebanon'),('LS',1,'Lesotho'),('LR',1,'Liberia'),('LY',1,'Libyan Arab Jamahiriya'),('LI',1,'Liechtenstein'),('LT',1,'Lithuania'),('LU',1,'Luxembourg'),('MO',1,'Macau'),('MK',1,'Macedonia, The Former Yugoslav Republic of'),('MG',1,'Madagascar'),('MW',1,'Malawi'),('MY',1,'Malaysia'),('MV',1,'Maldives'),('ML',1,'Mali'),('MT',1,'Malta'),('MH',1,'Marshall Islands'),('MQ',1,'Martinique'),('MR',1,'Mauritania'),('MU',1,'Mauritius'),('YT',1,'Mayotte'),('MX',1,'Mexico'),('FM',1,'Micronesia, Federated States of'),('MD',1,'Moldova, Republic of'),('MC',1,'Monaco'),('MN',1,'Mongolia'),('MS',1,'Montserrat'),('MA',1,'Morocco'),('MZ',1,'Mozambique'),('MM',1,'Myanmar'),('NA',1,'Namibia'),('NR',1,'Nauru'),('NP',1,'Nepal'),('NL',1,'Netherlands'),('AN',1,'Netherlands Antilles'),('NC',1,'New Caledonia'),('NZ',1,'New Zealand'),('NI',1,'Nicaragua'),('NE',1,'Niger'),('NG',1,'Nigeria'),('NU',1,'Niue'),('NF',1,'Norfolk Island'),('MP',1,'Northern Mariana Islands'),('NO',1,'Norway'),('OM',1,'Oman'),('PK',1,'Pakistan'),('PW',1,'Palau'),('PS',1,'Palestinian Territory, Occupied'),('PA',1,'Panama'),('PG',1,'Papua New Guinea'),('PY',1,'Paraguay'),('PE',1,'Peru'),('PH',1,'Philippines'),('PN',1,'Pitcairn'),('PL',1,'Poland'),('PT',1,'Portugal'),('PR',1,'Puerto Rico'),('QA',1,'Qatar'),('RE',1,'Réunion'),('RO',1,'Romania'),('RU',1,'Russian Federation'),('RW',1,'Rwanda'),('SH',1,'Saint Helena'),('KN',1,'Saint Kitts and Nevis'),('LC',1,'Saint Lucia'),('PM',1,'Saint Pierre and Miquelon'),('VC',1,'Saint Vincent and The Grenadines'),('WS',1,'Samoa'),('SM',1,'San Marino'),('ST',1,'Sao Tome and Principe'),('SA',1,'Saudi Arabia'),('SN',1,'Senegal'),('SX',1,'Serbia'),('MB',1,'Montenegro'),('SC',1,'Seychelles'),('SL',1,'Sierra Leone'),('SG',1,'Singapore'),('SK',1,'Slovakia'),('SI',1,'Slovenia'),('SB',1,'Solomon Islands'),('SO',1,'Somalia'),('ZA',1,'South Africa'),('GS',1,'South Georgia and The South Sandwich Islands'),('ES',1,'Spain'),('LK',1,'Sri Lanka'),('SD',1,'Sudan'),('SR',1,'Suriname'),('SJ',1,'Svalbard and Jan Mayen'),('SZ',1,'Swaziland'),('SE',1,'Sweden'),('CH',1,'Switzerland'),('SY',1,'Syrian Arab Republic'),('TW',1,'Taiwan, Province Of China'),('TJ',1,'Tajikistan'),('TZ',1,'Tanzania, United Republic of'),('TH',1,'Thailand'),('TG',1,'Togo'),('TK',1,'Tokelau'),('TO',1,'Tonga'),('TT',1,'Trinidad and Tobago'),('TN',1,'Tunisia'),('TR',1,'Turkey'),('TM',1,'Turkmenistan'),('TC',1,'Turks and Caicos Islands'),('TV',1,'Tuvalu'),('UG',1,'Uganda'),('UA',1,'Ukraine'),('AE',1,'United Arab Emirates'),('GB',1,'United Kingdom'),('US',1,'United States'),('UM',1,'United States Minor Outlying Islands'),('UY',1,'Uruguay'),('UZ',1,'Uzbekistan'),('VU',1,'Vanuatu'),('VE',1,'Venezuela'),('VN',1,'Vietnam'),('VG',1,'Virgin Islands, British'),('VI',1,'Virgin Islands, U.S.'),('WF',1,'Wallis And Futuna'),('EH',1,'Western Sahara'),('YE',1,'Yemen'),('ZM',1,'Zambia'),('ZW',1,'Zimbabwe'),('AX',1,'Åland Islands');\n/*!40000 ALTER TABLE `Countries` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Dictionary`\n--\n\nLOCK TABLES `Dictionary` WRITE;\n/*!40000 ALTER TABLE `Dictionary` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Dictionary` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `EnumerationElements`\n--\n\nLOCK TABLES `EnumerationElements` WRITE;\n/*!40000 ALTER TABLE `EnumerationElements` DISABLE KEYS */;\n/*!40000 ALTER TABLE `EnumerationElements` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Enumerations`\n--\n\nLOCK TABLES `Enumerations` WRITE;\n/*!40000 ALTER TABLE `Enumerations` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Enumerations` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Errors`\n--\n\nLOCK TABLES `Errors` WRITE;\n/*!40000 ALTER TABLE `Errors` DISABLE KEYS */;\nINSERT INTO `Errors` VALUES (4000,1,'Internal error.'),(4001,1,'Username not specified.'),(4002,1,'Invalid username.'),(4003,1,'Password not specified.'),(4004,1,'Invalid password.'),(2000,1,'Internal error'),(2001,1,'Username is not specified. Please fill out login name field.'),(2002,1,'You are not a reader.'),(2003,1,'Publication not specified.'),(2004,1,'There are other subscriptions not payed.'),(2005,1,'Time unit not specified.'),(3000,1,'Internal error.'),(3001,1,'Username already exists.'),(3002,1,'Name is not specified. Please fill out name field.'),(3003,1,'Username is not specified. Please fill out login name field.'),(3004,1,'Password is not specified. Please fill out password field.'),(3005,1,'EMail is not specified. Please fill out EMail field.'),(3006,1,'EMail address already exists. Please try to login with your old account.'),(3007,1,'Invalid user identifier'),(3008,1,'No country specified. Please select a country.'),(3009,1,'Password (again) is not specified. Please fill out password (again) field.'),(3010,1,'Passwords do not match. Please fill out the same password to both password fields.'),(3011,1,'Password is too simple. Please choose a better password (at least 6 characters).'),(5009,1,'The code you entered is not the same with the one shown in the image.'),(5008,1,'Please enter the code shown in the image.'),(5007,1,'EMail field is empty. You must fill in your EMail address.'),(5006,1,'The comment was rejected by the spam filters.'),(5005,1,'You are banned from submitting comments.'),(5004,1,'Comments are not enabled for this publication/article.'),(5003,1,'The article was not selected. You must view an article in order to post comments.'),(5002,1,'The comment content was empty.'),(5001,1,'You must be a registered user in order to submit a comment. Please subscribe or log in if you already have a subscription.'),(5000,1,'There was an internal error when submitting the comment.');\n/*!40000 ALTER TABLE `Errors` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Events`\n--\n\nLOCK TABLES `Events` WRITE;\n/*!40000 ALTER TABLE `Events` DISABLE KEYS */;\nINSERT INTO `Events` VALUES (1,'Add Publication','N',1),(2,'Delete Publication','N',1),(11,'Add Issue','N',1),(12,'Delete Issue','N',1),(13,'Change Issue Template','N',1),(14,'Change issue status','N',1),(15,'Add Issue Translation','N',1),(21,'Add Section','N',1),(22,'Delete section','N',1),(31,'Add Article','Y',1),(32,'Delete article','N',1),(33,'Change article field','N',1),(34,'Change article properties','N',1),(35,'Change article status','Y',1),(41,'Add Image','Y',1),(42,'Delete image','N',1),(43,'Change image properties','N',1),(51,'Add User','N',1),(52,'Delete User','N',1),(53,'Changes Own Password','N',1),(54,'Change User Password','N',1),(55,'Change User Permissions','N',1),(56,'Change user information','N',1),(61,'Add article type','N',1),(62,'Delete article type','N',1),(71,'Add article type field','N',1),(72,'Delete article type field','N',1),(81,'Add dictionary class','N',1),(82,'Delete dictionary class','N',1),(91,'Add dictionary keyword','N',1),(92,'Delete dictionary keyword','N',1),(101,'Add language','N',1),(102,'Delete language','N',1),(103,'Modify language','N',1),(112,'Delete templates','N',1),(111,'Add templates','N',1),(121,'Add user type','N',1),(122,'Delete user type','N',1),(123,'Change user type','N',1),(3,'Change publication information','N',1),(36,'Change article template','N',1),(57,'Add IP Group','N',1),(58,'Delete IP Group','N',1),(131,'Add country','N',1),(132,'Add country translation','N',1),(133,'Change country name','N',1),(134,'Delete country','N',1),(4,'Add default subscription time','N',1),(5,'Delete default subscription time','N',1),(6,'Change default subscription time','N',1),(113,'Edit template','N',1),(114,'Create template','N',1),(115,'Duplicate template','N',1),(141,'Add topic','N',1),(142,'Delete topic','N',1),(143,'Update topic','N',1),(144,'Add topic to article','N',1),(145,'Delete topic from article','N',1),(151,'Add alias','N',1),(152,'Delete alias','N',1),(153,'Update alias','N',1),(154,'Duplicate section','N',1),(155,'Duplicate article','N',1),(161,'Sync campsite and phorum users','N',1),(171,'Change system preferences','N',1),(116,'Rename Template','N',1),(117,'Move Template','N',1),(37,'Edit article content','N',1),(38,'Add file to article','N',1),(39,'Delete file from article','N',1),(172,'Add Author','N',1),(173,'Edit Author','N',1),(174,'Delete Author','N',1),(175,'Add author type','N',1),(176,'Delete author type','N',1);\n/*!40000 ALTER TABLE `Events` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `FailedLoginAttempts`\n--\n\nLOCK TABLES `FailedLoginAttempts` WRITE;\n/*!40000 ALTER TABLE `FailedLoginAttempts` DISABLE KEYS */;\n/*!40000 ALTER TABLE `FailedLoginAttempts` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Images`\n--\n\nLOCK TABLES `Images` WRITE;\n/*!40000 ALTER TABLE `Images` DISABLE KEYS */;\nINSERT INTO `Images` VALUES (1,'local','cms-image-000000001.jpg','cms-thumb-000000001.jpg',NULL,NULL,'','',267,400,'',NULL,'','2014-02-20 13:21:21','image/jpeg',0,'local','approved',0),(2,'local','cms-image-000000002.jpg','cms-thumb-000000002.jpg',NULL,NULL,'','',292,400,'',NULL,'','2014-02-20 13:24:25','image/jpeg',0,'local','approved',0),(3,'local','cms-image-000000003.jpg','cms-thumb-000000003.jpg',NULL,NULL,'','',923,620,'',NULL,'','2014-02-20 13:25:52','image/jpeg',0,'local','approved',0),(4,'local','cms-image-000000004.jpg','cms-thumb-000000004.jpg',NULL,NULL,'','',311,400,'',NULL,'','2014-02-20 13:27:13','image/jpeg',0,'local','approved',0),(5,'local','cms-image-000000005.jpg','cms-thumb-000000005.jpg',NULL,NULL,'','',326,400,'',NULL,'','2014-02-20 13:28:24','image/jpeg',0,'local','approved',0),(6,'local','cms-image-000000006.jpg','cms-thumb-000000006.jpg',NULL,NULL,'','',307,400,'',NULL,'','2014-02-20 13:30:13','image/jpeg',0,'local','approved',0),(7,'local','cms-image-000000007.jpg','cms-thumb-000000007.jpg',NULL,NULL,'','',322,400,'',NULL,'','2014-02-20 13:31:23','image/jpeg',0,'local','approved',0),(8,'local','cms-image-000000008.jpg','cms-thumb-000000008.jpg',NULL,NULL,'','',640,428,'',NULL,'','','image/jpeg',0,'local','approved',1),(9,'local','cms-image-000000009.jpg','cms-thumb-000000009.jpg',NULL,NULL,'','',428,640,'',NULL,'','','image/jpeg',0,'local','approved',1),(10,'local','cms-image-000000010.jpg','cms-thumb-000000010.jpg',NULL,NULL,'','',640,428,'',NULL,'','','image/jpeg',0,'local','approved',1),(11,'local','cms-image-000000011.jpg','cms-thumb-000000011.jpg',NULL,NULL,'','',640,428,'',NULL,'','','image/jpeg',0,'local','approved',1),(12,'local','cms-image-000000012.jpg','cms-thumb-000000012.jpg',NULL,NULL,'','',640,428,'',NULL,'','','image/jpeg',0,'local','approved',1),(13,'local','cms-image-000000013.jpg','cms-thumb-000000013.jpg',NULL,NULL,'','',428,640,'',NULL,'','','image/jpeg',0,'local','approved',1),(14,'local','cms-image-000000014.jpg','cms-thumb-000000014.jpg',NULL,NULL,'','',640,428,'',NULL,'','','image/jpeg',0,'local','approved',1),(15,'local','cms-image-000000015.jpg','cms-thumb-000000015.jpg',NULL,NULL,'','',640,428,'',NULL,'','','image/jpeg',0,'local','approved',1),(16,'local','cms-image-000000016.jpg','cms-thumb-000000016.jpg',NULL,NULL,'','',428,640,'',NULL,'','','image/jpeg',0,'local','approved',1),(17,'local','cms-image-000000017.jpg','cms-thumb-000000017.jpg',NULL,NULL,'','',200,150,'',NULL,'','','image/jpeg',0,'local','approved',1),(18,'local','cms-image-000000018.jpg','cms-thumb-000000018.jpg',NULL,NULL,'','',923,620,'',NULL,'','','image/jpeg',0,'local','approved',1),(19,'local','cms-image-000000019.jpg','cms-thumb-000000019.jpg',NULL,NULL,'','',3456,2304,'',NULL,'','','image/jpeg',0,'local','approved',1),(20,'local','cms-image-000000020.jpg','cms-thumb-000000020.jpg',NULL,NULL,'','',2592,1552,'',NULL,'','','image/jpeg',0,'local','approved',1),(21,'local','cms-image-000000021.jpg','cms-thumb-000000021.jpg',NULL,NULL,'','',3456,2304,'',NULL,'','','image/jpeg',0,'local','approved',1),(22,'local','cms-image-000000022.jpg','cms-thumb-000000022.jpg',NULL,NULL,'','',3456,2304,'',NULL,'','','image/jpeg',0,'local','approved',1),(23,'local','cms-image-000000023.jpg','cms-thumb-000000023.jpg',NULL,NULL,'','',2303,1783,'',NULL,'','','image/jpeg',0,'local','approved',1),(24,'local','cms-image-000000024.jpg','cms-thumb-000000024.jpg',NULL,NULL,'','',2484,1704,'',NULL,'','','image/jpeg',0,'local','approved',1),(25,'local','cms-image-000000025.jpg','cms-thumb-000000025.jpg',NULL,NULL,'','',2915,1936,'',NULL,'','','image/jpeg',0,'local','approved',1),(26,'local','cms-image-000000026.jpg','cms-thumb-000000026.jpg',NULL,NULL,'','',3401,2267,'',NULL,'','','image/jpeg',0,'local','approved',1),(27,'local','cms-image-000000027.jpg','cms-thumb-000000027.jpg',NULL,NULL,'','',5202,3465,'',NULL,'','','image/jpeg',0,'local','approved',1),(28,'local','cms-image-000000028.jpg','cms-thumb-000000028.jpg',NULL,NULL,'','',2682,1851,'',NULL,'','','image/jpeg',0,'local','approved',1),(29,'local','cms-image-000000029.jpg','cms-thumb-000000029.jpg',NULL,NULL,'','',1552,2592,'',NULL,'','','image/jpeg',0,'local','approved',1),(30,'local','cms-image-000000030.jpg','cms-thumb-000000030.jpg',NULL,NULL,'','',5202,3465,'',NULL,'','','image/jpeg',0,'local','approved',1),(31,'local','cms-image-000000031.jpg','cms-thumb-000000031.jpg',NULL,NULL,'','',1971,1423,'',NULL,'','','image/jpeg',0,'local','approved',1),(32,'local','cms-image-000000032.jpg','cms-thumb-000000032.jpg',NULL,NULL,'','',3456,2304,'',NULL,'','','image/jpeg',0,'local','approved',1),(33,'local','cms-image-000000033.jpg','cms-thumb-000000033.jpg',NULL,NULL,'','',1637,1156,'',NULL,'','','image/jpeg',0,'local','approved',1),(34,'local','cms-image-000000034.jpg','cms-thumb-000000034.jpg',NULL,NULL,'','',3173,2115,'',NULL,'','','image/jpeg',0,'local','approved',1),(35,'local','cms-image-000000035.jpg','cms-thumb-000000035.jpg',NULL,NULL,'','',NULL,NULL,'','','','2014-03-28 14:19:11','image/jpeg',0,'local','approved',0);\n/*!40000 ALTER TABLE `Images` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `IssuePublish`\n--\n\nLOCK TABLES `IssuePublish` WRITE;\n/*!40000 ALTER TABLE `IssuePublish` DISABLE KEYS */;\n/*!40000 ALTER TABLE `IssuePublish` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Issues`\n--\n\nLOCK TABLES `Issues` WRITE;\n/*!40000 ALTER TABLE `Issues` DISABLE KEYS */;\nINSERT INTO `Issues` VALUES (1,1,1,1,'static','2014-02-20 12:16:11','Y',0,0,0,'static'),(2,1,10,1,'March 2014','2014-02-21 13:16:52','Y',0,0,0,'mar2014'),(3,1,11,1,'May 2014','2014-02-26 13:56:08','Y',0,0,0,'may2014');\n/*!40000 ALTER TABLE `Issues` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `KeywordClasses`\n--\n\nLOCK TABLES `KeywordClasses` WRITE;\n/*!40000 ALTER TABLE `KeywordClasses` DISABLE KEYS */;\n/*!40000 ALTER TABLE `KeywordClasses` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `KeywordIndex`\n--\n\nLOCK TABLES `KeywordIndex` WRITE;\n/*!40000 ALTER TABLE `KeywordIndex` DISABLE KEYS */;\nINSERT INTO `KeywordIndex` VALUES ('Credits',1),('Administrator',2),('don\\'t',3),('don',4),('delete',5),('The',6),('truth',7),('behind',8),('European',9),('housing',10),('market',11),('Jane',12),('Stockwriter',13),('John',14),('Smith',15),('Cibo',16),('nostro',17),('et',18),('sea',19),('eu',20),('mei',21),('alia',22),('decore',23),('electram',24),('adhuc',25),('option',26),('corpora',27),('vim',28),('ad',29),('an',30),('eripuit',31),('quas',32),('iuvaret',33),('maiestatis',34),('sit',35),('duo',36),('ei',37),('velit',38),('necessitatibus',39),('It',40),('plu',41),('plia',42),('olda',43),('nula',44),('lo',45),('ekoo',46),('interjekcio',47),('aÅ­',48),('Iom',49),('inkluzive',50),('dividostreko',51),('sh',52),('subtraho',53),('praantaÅ­hieraÅ­',54),('bio',55),('fo',56),('San',57),('go',58),('povi',59),('triliono',60),('kunmetita',61),('anstataÅ­',62),('supersigno',63),('mallongigita',64),('kz',65),('Tiel',66),('ofon',67),('iometo',68),('dio',69),('at',70),('vir',71),('alikvante',72),('montrovorto',73),('prirespondi',74),('re',75),('sis',76),('tiam',77),('reen',78),('frazparto',79),('jh',80),('Pov',81),('mi',82),('pobo',83),('infra',84),('alternativo',85),('nenio',86),('geedzo',87),('alimaniere',88),('sor',89),('um',90),('Tek',91),('in',92),('dekoj',93),('komplika',94),('kernovorto',95),('dekuma',96),('disskribado',97),('je',98),('end',99),('Vendo',100),('posttagmezo',101),('esk',102),('ki',103),('nedifina',104),('personalo',105),('unt',106),('Sen',107),('tiele',108),('aligi',109),('resti',110),('Diesa',111),('alikaÅ­ze',112),('enz',113),('us',114),('cii',115),('gardi',116),('duobla',117),('vi',118),('ajna',119),('ceceo',120),('nelimigita',121),('oid',122),('no',123),('Oho',124),('negi',125),('antaÅ­parto',126),('alternativdemando',127),('si',128),('adjektivo',129),('multiplikite',130),('bv',131),('ism',132),('ind',133),('prepozitivo',134),('antaÅ­elemento',135),('He',136),('ano',137),('orda',138),('nekutima',139),('mil',140),('fi',141),('patro',142),('solstariva',143),('Tia',144),('zepto',145),('rolvorteto',146),('du',147),('Ar',148),('frota',149),('sepen',150),('dikfingro',151),('Des',152),('vavo',153),('senforte',154),('ed',155),('Mano',156),('halt\\'',157),('halt',158),('onklo',159),('sur',160),('nv',161),('aliu',162),('help',163),('transigi',164),('ian',165),('amen',166),('multe',167),('kompreneble',168),('ena',169),('er',170),('Nul',171),('tiuj',172),('fora',173),('nano',174),('jo',175),('Kuo',176),('op',177),('posta',178),('Kazablanko',179),('subpropozicio',180),('mal',181),('ne',182),('sori',183),('otek',184),('finitivo',185),('okulvitroj',186),('egalo',187),('latina',188),('ge',189),('Pra',190),('ho',191),('filo',192),('troa',193),('mf',194),('apud',195),('aliel',196),('fin',197),('fratineto',198),('sekstiliono',199),('as',200),('devus',201),('video',202),('kelka',203),('mia',204),('sia',205),('mili',206),('fini',207),('Sin',208),('usono',209),('kunmetaÄµo',210),('ik',211),('tiea',212),('post',213),('gibi',214),('sob',215),('brosi',216),('substantiva',217),('is',218),('Jam',219),('unun',220),('participo',221),('Nea',222),('mo',223),('ioma',224),('identiga',225),('edzo',226),('ekde',227),('frikativo',228),('milo',229),('tohuo',230),('iufoje',231),('tc',232),('tet',233),('krom',234),('prezoinda',235),('tempopunkto',236),('hago',237),('dank\\'',238),('dank',239),('esperantigita',240),('ok',241),('kie',242),('helpverbo',243),('ko',244),('mis',245),('poa',246),('ci',247),('dura',248),('eÄ¥o',249),('komparado',250),('Pli',251),('persa',252),('deziri',253),('ju',254),('falsa',255),('ekesti',256),('definitive',257),('jes',258),('aj',259),('Tro',260),('iu',261),('hodiaÅ­a',262),('infinitivo',263),('eca',264),('malpli',265),('Ke',266),('ato',267),('armo',268),('postpriskribo',269),('Mem',270),('al',271),('miriametro',272),('spite',273),('vortfarado',274),('iel',275),('Oj',276),('ruli',277),('okej',278),('vatto',279),('Jota',280),('tiama',281),('tagnokto',282),('nu',283),('ili',284),('Nei',285),('kian',286),('nenia',287),('reciprokeco',288),('ajn',289),('vo',290),('Hot',291),('jena',292),('respondeci',293),('uj',294),('Fri',295),('longa',296),('senobjekta',297),('postmorgaÅ­',298),('deci',299),('ina',300),('el',301),('ve',302),('dato',303),('hekto',304),('speco',305),('anstataÅ­i',306),('sat',307),('ses',308),('mono',309),('literaturo',310),('Per',311),('dume',312),('fundamenta',313),('siatempe',314),('id',315),('Pri',316),('fontoj',317),('Kab\\'o',318),('Kab',319),('difina',320),('laÅ­longe',321),('aÄ¥',322),('Mayoral',323),('race',324),('looks',325),('to',326),('future',327),('Test',328),('Persona',329),('voluptua',330),('consetetur',331),('te',332),('minimum',333),('nominati',334),('vix',335),('modo',336),('tempor',337),('constituto',338),('cum',339),('Eam',340),('laudem',341),('mentitum',342),('definitiones',343),('Mel',344),('ludus',345),('tritani',346),('elaboraret',347),('praesent',348),('cu',349),('Advertisers',350),('target',351),('online',352),('demographic',353),('Frank',354),('Stein',355),('Sarah',356),('Staffwriter',357),('Putant',358),('conceptam',359),('vis',360),('fuisset',361),('invidunt',362),('viderer',363),('sale',364),('malorum',365),('sadipscing',366),('saepe',367),('graeco',368),('accusata',369),('Car',370),('industry',371),('resurgence',372),('boosts',373),('economy',374),('vel',375),('laoreet',376),('molestiae',377),('Est',378),('nobis',379),('probatus',380),('his',381),('illum',382),('dicant',383),('dicit',384),('verterem',385),('assueverit',386),('audire',387),('latine',388),('virtute',389),('quod',390),('nonummy',391),('nam',392),('graece',393),('vituperata',394),('amazing',395),('geolocation',396),('apps',397),('ponderum',398),('puto',399),('iusto',400),('ea',401),('melius',402),('mandamus',403),('kasd',404),('definitionem',405),('repudiandae',406),('instructior',407),('fabulas',408),('ornatus',409),('meliore',410),('alternatives',411),('Delicious',412),('Qui',413),('utinam',414),('aperiri',415),('scribentur',416),('ex',417),('eum',418),('doming',419),('veritus',420),('omnesque',421),('Pro',422),('impedit',423),('molestie',424),('oratio',425),('alterum',426),('nec',427),('Vivendum',428),('pertinacia',429),('mucius',430),('euismod',431),('splendide',432),('assum',433),('appareat',434),('Hayfever',435),('remedy',436),('breath',437),('of',438),('fresh',439),('air',440),('James',441),('Reporter',442),('habeo',443),('aliquyam',444),('ius',445),('iudico',446),('nostrud',447),('Impetus',448),('dicunt',449),('luptatum',450),('detraxit',451),('sed',452),('dissentias',453),('inciderint',454),('voluptatum',455),('Healthy',456),('options',457),('for',458),('your',459),('sweet',460),('tooth',461),('Euripidis',462),('conclusionemque',463),('ut',464),('exerci',465),('docendi',466),('nemore',467),('pericula',468),('consequuntur',469),('has',470),('reque',471),('errem',472),('populo',473),('vero',474),('veri',475),('nulla',476),('eos',477),('liber',478),('affert',479),('Sarajevo',480),('Film',481),('Festival',482),('unveils',483),('2013',484),('line-up',485),('line',486),('up',487),('justo',488),('ridens',489),('vulputate',490),('labores',491),('mnesarchum',492),('unum',493),('albucius',494),('nusquam',495),('singulis',496),('quo',497),('ullum',498),('ocurreret',499),('Commodo',500),('constituam',501),('usu',502),('aliquam',503),('eloquentiam',504),('Hidden',505),('cultural',506),('delights',507),('Adriatic',508),('Amerigo',509),('Vespucci',510),('Haralampius',511),('Bah',512),('theophrastus',513),('Vidit',514),('ferri',515),('debitis',516),('copiosae',517),('legendos',518),('Grand',519),('Slam',520),('winner',521),('sets',522),('new',523),('record',524),('tibique',525),('assentior',526),('soleat',527),('prompta',528),('movet',529),('cotidieque',530),('Erroribus',531),('torquatos',532),('causae',533),('gubergren',534),('Preserving',535),('Berlin',536),('Wall',537),('vs',538),('developments',539),('eius',540),('corrumpit',541),('alii',542),('scripta',543),('etiam',544),('quando',545),('explicari',546),('repudiare',547),('eirmod',548),('aeque',549),('suscipit',550),('saperet',551),('indoctum',552),('nullam',553),('postulant',554),('part',555),('our',556),('history',557),('idque',558),('Magna',559),('stet',560),('augue',561),('omittam',562),('ipsum',563),('delectus',564),('recteque',565),('modus',566),('perfecto',567),('maluisset',568),('illud',569),('interpretaris',570),('argumentum',571),('intellegam',572),('evertitur',573),('possim',574),('invenire',575),('phaedrum',576),('oportere',577),('consul',578),('amet',579),('dicat',580),('clita',581),('munere',582),('viris',583),('voluptatibus',584),('dico',585),('homero',586),('quem',587),('referrentur',588),('mediocrem',589),('abhorreant',590),('noluisse',591),('apeirian',592),('Mutat',593),('deterruisset',594),('periculis',595),('autem',596),('Sint',597),('Solum',598),('ceteros',599),('utamur',600),('nominavi',601),('Everti',602),('platonem',603),('honestatis',604),('consulatu',605),('shame',606),('ruin',607),('erat',608),('patrioque',609),('Minim',610),('senserit',611),('moderatius',612),('rebum',613),('postea',614),('regione',615),('Probo',616),('delicata',617),('expetendis',618),('nostrum',619),('sanctus',620),('mea',621),('nihil',622),('Enim',623),('salutandi',624),('adversarium',625),('dicta',626),('primis',627),('efficiendi',628),('Verear',629),('feugait',630),('persius',631),('odio',632),('choro',633),('urbanitas',634),('disputationi',635),('fastidii',636),('delenit',637),('lucilius',638),('mollis',639),('scriptorem',640),('vocibus',641),('appellantur',642),('delicatissimi',643),('blandit',644),('recusabo',645),('Food',646),('export',647),('duties',648),('set',649),('rise',650),('tota',651),('atomorum',652),('philosophia',653),('expetenda',654),('persecuti',655),('erant',656),('menandri',657),('scripserit',658),('Wintry',659),('conditions',660),('sweep',661),('across',662),('China',663),('quaestio',664),('consectetuer',665),('elit',666),('dictas',667),('insolens',668),('sensibus',669),('News',670),('on',671),('general',672),('theory',673),('relativity',674),('libris',675),('facete',676),('Ã¥ccusam',677),('meÃ¦',678),('alienum',679),('rÃ¥tionibus',680),('nÃ¦m',681),('Dicam',682),('oratiÃ¸',683),('Ã¦t',684),('PrÃ¸',685),('nÃ¸',686),('cÃ¸mprehensÃ¥m',687),('sapientem',688),('dolorum',689),('expetendÃ¦',690),('iudicabit',691),('cÃ¸tidieque',692),('corporÃ¦',693),('complectitur',694),('porro',695),('aeterno',696),('prima',697),('nemÃ¸re',698),('Paulo',699),('dolor',700),('Ã¸fficiis',701),('decÃ¸re',702),('liberÃ¦visse',703),('oblique',704),('antiopÃ¥m',705),('summo',706),('mÃ¸deratius',707),('sonet',708),('novum',709),('sÃ¦nctus',710),('temporibus',711),('percipit',712),('sÃ¸let',713),('deserunt',714),('malis',715),('diceret',716),('Falli',717),('legimus',718),('sÃ¸leÃ¥t',719),('fÃ¥cilis',720),('Ã†n',721),('brute',722),('forensibus',723),('UtinÃ¦m',724),('adolescens',725),('eÃ¦m',726),('quaerendum',727),('aliquip',728),('bonorum',729),('Meis',730),('gloriatur',731),('nisl',732),('essent',733),('dissentiunt',734),('intellegÃ¦m',735),('ullamcorper',736),('cÃ¸mmune',737),('civibus',738),('sumo',739),('definitiÃ¸nes',740),('offendit',741),('suÃ¥vitÃ¥te',742),('nominÃ¦vi',743),('definiebÃ¥s',744),('pÃ¦ulo',745),('convenire',746),('inÃ¥ni',747),('Ã¦ccusÃ¥mus',748),('aliquid',749),('integre',750),('posidÃ¸nium',751),('porrÃ¸',752),('veniam',753),('tacimÃ¦tes',754),('qualisque',755),('cetero',756),('Vocent',757),('utroque',758),('equidem',759),('wisi',760),('habemus',761),('case',762),('lorem',763),('Council',764),('candidates',765),('be',766),('named',767),('BRUSSELS',768),('Italian',769),('and',770),('Greek',771),('nominated',772),('President',773),('CouncilÂ in',774),('secret',775),('ballot',776),('Where',777),('locate',778),('internet',779),('start-up',780),('start',781),('graeci',782),('efficiantur',783),('tantas',784),('Tax',785),('trade',786),('bureau',787),('considers',788),('alcohol',789),('labeling',790),('labitur',791),('principes',792),('agam',793),('discere',794),('Private',795),('aviation',796),('companies',797),('take',798),('flight',799),('harum',800),('Fugit',801),('security',802),('risks',803),('exposed',804),('scaevola',805),('vitae',806),('epicurei',807),('horizons',808),('browser',809),('diam',810),('intellegat',811),('Commercial',812),('space',813),('becomes',814),('reality',815),('Omnis',816),('noster',817),('sententiae',818),('detracto',819),('accommodare',820),('nibh',821),('mundi',822),('fierent',823),('volutpat',824),('Luxury',825),('health',826),('breaks',827),('offer',828),('quot',829),('quidam',830),('City',831),('life',832),('may',833),('beneficial',834),('say',835),('doctors',836),('esse',837),('vide',838),('tractatos',839),('Sightseeing',840),('good',841),('heart',842),('nonumy',843),('Cannes',844),('taste',845),('paradise',846),('epicuri',847),('inimicus',848),('maiorum',849),('deleniti',850),('eleifend',851),('laboramus',852),('football',853),('reaches',854),('world',855),('audience',856),('Lionel',857),('Messi',858),('Argentinean',859),('who',860),('makes',861),('children',862),('dream',863),('all',864),('over',865),('UEFA',866),('Champions',867),('league',868),('Enlargement',869),('yes',870),('or',871),('dolores',872),('soluta',873),('admodum',874),('vidisse',875),('neglegentur',876),('More',877),('teams',878),('better',879),('competition',880),('natum',881),('tale',882),('reprimique',883),('Error',884),('quis',885),('omittantur',886),('duis',887),('feugiat',888),('quodsi',889),('timeam',890),('Congue',891),('imperdiet',892),('hendrerit',893),('eligendi',894),('eruditi',895),('volumus',896),('simul',897),('already',898),('too',899),('big',900),('reprehendunt',901),('audiam',902),('appetere',903),('interesset',904),('similique',905),('fabellas',906),('ubique',907),('adipisci',908),('signiferumque',909),('putent',910),('democritum',911),('mazim',912),('consequat',913),('voluptaria',914),('purto',915),('propriae',916),('oporteat',917),('Favorite',918),('sport',919),('mediocritatem',920),('hinc',921),('officiis',922),('dolorem',923),('vituperatoribus',924),('tollit',925),('posse',926),('percipitur',927),('deseruisse',928),('suscipiantur',929),('Marketing',930),('Contact',931),('We\\'re',932),('We',933),('always',934),('happy',935),('hear',936),('from',937),('you',938),('can',939),('via',940),('email',941),('atÂ ',942),('contact@sourcefabric',943),('sourcefabric',944),('org',945),('Postal',946),('Address',947),('SalvÃ¡torskÃ¡',948),('110',949),('Praha',950),('Czech',951),('Republic',952),('phone',953),('420',954),('222',955),('362',956),('540',957),('Toronto',958),('office',959),('Centre',960),('Social',961),('Innovation',962),('720',963),('Bathurst',964),('St',965),('Suite',966),('203',967),('Ontario',968),('M5S',969),('2R4',970),('Canada',971),('PrinzessinnenstraÃŸe',972),('Aufgang',973),('10969',974),('Germany',975),('44044999',976),('If',977),('need',978),('technical',979),('support',980),('please',981),('visit',982),('ourÂ ',983),('Get',984),('Â pages',985),('also',986),('frequent',987),('forums',988),('Â on',989),('very',990),('regular',991),('basis',992),('there',993),('will',994),('quick',995),('answer',996),('Follow',997),('these',998),('networks',999),('Facebook',1000),('Twitter',1001),('FriendFeed',1002),('identi',1003),('ca',1004),('Koornk',1005),('Tumblr',1006),('YouTube',1007),('Â andÂ ',1008),('Vimeo',1009),('About',1010),('http',1011),('www',1012),('Newscoop',1013),('Airtime',1014),('Services',1015),('en',1016),('Join',1017),('community',1018),('joinus',1019),('Duplicate',1020);\n/*!40000 ALTER TABLE `KeywordIndex` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Languages`\n--\n\nLOCK TABLES `Languages` WRITE;\n/*!40000 ALTER TABLE `Languages` DISABLE KEYS */;\nINSERT INTO `Languages` (`Id`, `Name`, `CodePage`, `OrigName`, `Code`, `RFC3066bis`, `Month1`, `Month2`, `Month3`, `Month4`, `Month5`, `Month6`, `Month7`, `Month8`, `Month9`, `Month10`, `Month11`, `Month12`, `WDay1`, `WDay2`, `WDay3`, `WDay4`, `WDay5`, `WDay6`, `WDay7`, `ShortMonth1`, `ShortMonth2`, `ShortMonth3`, `ShortMonth4`, `ShortMonth5`, `ShortMonth6`, `ShortMonth7`, `ShortMonth8`, `ShortMonth9`, `ShortMonth10`, `ShortMonth11`, `ShortMonth12`, `ShortWDay1`, `ShortWDay2`, `ShortWDay3`, `ShortWDay4`, `ShortWDay5`, `ShortWDay6`, `ShortWDay7`) VALUES\n(1, 'English', 'ISO_8859-1', 'English', 'en', 'en-US', 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December', 'Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec', 'Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'),\n(5, 'German', 'ISO_8859-1', 'Deutsch', 'de', 'de-DE', 'Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember', 'Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag', 'Jan', 'Feb', 'Mär', 'Apr', 'Mai', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dez', 'So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'),\n(9, 'Portuguese (Portugal)', 'ISO_8859-1', 'Português', 'pt', 'pt-PT', 'Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro', 'Domingo', 'Segunda-feira', 'Terça-feira', 'Quarta-feira', 'Quinta-feira', 'Sexta-feira', 'Sábado', 'Jan', 'Fev', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Set', 'Out', 'Nov', 'Dez', 'Dom', 'Seg', 'Ter', 'Qua', 'Qui', 'Sex', 'Sáb'),\n(12, 'French', 'ISO_8859-1', 'Français', 'fr', 'fr-FR', 'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin', 'Juli', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre', 'Dimanche', 'Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi', 'Jan', 'Fév', 'Mar', 'Avr', 'Mai', 'Juin', 'Juil', 'Août', 'Sept', 'Oct', 'Nov', 'Déc', 'Dim', 'Lun', 'Mar', 'Mer', 'Jeu', 'Ven', 'Sam'),\n(13, 'Spanish', 'ISO_8859-1', 'Español', 'es', 'es-ES', 'Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Septiembre', 'Octubre', 'Noviembre', 'Diciembre', 'Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado', 'Ene', 'Feb', 'Mar', 'Abr', 'May', 'Jun', 'Jul', 'Ago', 'Sep', 'Oct', 'Nov', 'Dic', 'Do', 'Lu', 'Ma', 'Mi', 'Ju', 'Vi', 'Sa'),\n(2, 'Romanian', 'ISO_8859-2', 'Română', 'ro', 'ro-RO', 'Ianuarie', 'Februarie', 'Martie', 'Aprilie', 'Mai', 'Iunie', 'Iulie', 'August', 'Septembrie', 'Octombrie', 'Noiembrie', 'Decembrie', 'Duminică', 'Luni', 'Marţi', 'Miercuri', 'Joi', 'Vineri', 'Sâmbătă', 'Ian', 'Febr', 'Mart', 'Apr', 'Mai', 'Iun', 'Iul', 'Aug', 'Sept', 'Oct', 'Nov', 'Dec', 'Dum', 'Lun', 'Mar', 'Mie', 'Joi', 'Vin', 'Sâm'),\n(7, 'Croatian', 'ISO_8859-2', 'Hrvatski', 'hr', 'hr-HR', 'Siječanj', 'Veljača', 'Ožujak', 'Travanj', 'Svibanj', 'Lipanj', 'Srpanj', 'Kolovoz', 'Rujan', 'Listopad', 'Studeni', 'Prosinac', 'Nedjelja', 'Ponedjeljak', 'Utorak', 'Srijeda', 'Četvrtak', 'Petak', 'Subota', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),\n(29, 'Czech', 'ISO_8859-2', 'Česky', 'cs', 'cs-CZ', 'Leden', 'Únor', 'Březen', 'Duben', 'Květen', 'Červen', 'Červenec', 'Srpen', 'Září', 'Říjen', 'Listopad', 'Prosinec', 'Led', 'Úno', 'Bře', 'Dub', 'Květen', 'Čvn', 'Čvc', 'Srp', 'Zář', 'Říj', 'Lis', 'Pro', 'Neděle', 'Pondělí', 'Úterý', 'Středa', 'Čtvrtek', 'Pátek', 'Sobota', 'Ne', 'Po', 'Út', 'St', 'Čt', 'Pá', 'So'),\n(30, 'Italian', 'ISO_8859-1', 'Italiano', 'it', 'it-IT', 'gennaio', 'febbraio', 'marzo', 'aprile', 'maggio', 'giugno', 'luglio', 'agosto', 'settembre', 'ottobre', 'novembre', 'dicembre', 'Domenica', 'Lunedì', 'Martedì', 'Mercoledì', 'Giovedì', 'Venerdì', 'Sabato', 'gen', 'feb', 'mar', 'apr', 'mag', 'giu', 'lug', 'ago', 'set', 'ott', 'nov', 'dic', 'Do', 'Lu', 'Ma', 'Me', 'Gi', 'Ve', 'Sa'),\n(11, 'Serbian (Latin)', 'ISO_8859-2', 'Srpskohrvatski', 'sh', 'sr-Latn-RS', 'januar', 'februar', 'mart', 'april', 'maj', 'jun', 'jul', 'avgust', 'septembar', 'oktobar', 'novembar', 'decembar', 'nedelja', 'ponedeljak', 'utorak', 'sreda', 'četvrtak', 'petak', 'subota', 'jan', 'feb', 'mar', 'apr', 'maj', 'jun', 'jul', 'avg', 'sep', 'okt', 'nov', 'dec', 'ned', 'pon', 'uto', 'sre', 'čet', 'pet', 'sub'),\n(10, 'Serbian (Cyrillic)', 'ISO_8859-5', 'Српски (Ћирилица)', 'sr', 'sr-Cyrl-RS', 'јануар', 'фебруар', 'март', 'април', 'мај', 'јун', 'јул', 'август', 'септембар', 'октобар', 'новембар', 'децембар', 'недеља', 'понедељак', 'уторак', 'среда', 'четвртак', 'петак', 'субота', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),\n(15, 'Russian', 'ISO_8859-5', 'Русский', 'ru', 'ru-RU', 'январь', 'февраль', 'март', 'апрель', 'май', 'июнь', 'июль', 'август', 'сентябрь', 'октябрь', 'ноябрь', 'декабрь', 'воскресенье', 'понедельник', 'вторник', 'среда', 'четверг', 'пятница', 'суббота', 'янв', 'фев', 'мрт', 'апр', 'май', 'июн', 'июл', 'авг', 'снт', 'окт', 'нояб', 'дек', 'вск', 'пнд', 'втр', 'срд', 'чтв', 'птн', 'суб'),\n(18, 'Swedish', 'ISO_8859-1', 'Svenska', 'sv', 'sv-SE', 'januari', 'februari', 'mars', 'april', 'maj', 'juni', 'juli', 'augusti', 'september', 'oktober', 'november', 'december', 'söndag', 'måndag', 'tisdag', 'onsdag', 'torsdag', 'fredag', 'lördag', 'jan', 'feb', 'mar', 'apr', 'maj', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'dec', 'sön', 'mån', 'tis', 'ons', 'tor', 'fre', 'lör'),\n(16, 'Chinese (Simplified)', 'UTF-8', '中文', 'zh', 'zh-Hans', '一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月', '星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六', '一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月', '周日', '周一', '周二', '周三', '周四', '周五', '周六'),\n(17, 'Arabic', 'UTF-8', 'عربي', 'ar', 'ar-YE', 'كانون الثاني', 'شباط', 'آذار', 'نيسان', 'آيار', 'حزيران', 'تموز', 'آب', 'أيلول', 'تشرين أول', 'تشرين الثاني', 'كانون أول', 'الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),\n(19, 'Korean', 'UTF-8', '한국어', 'ko', 'ko-KR', '1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월', '일요일', '월요일', '화요일', '수요일', '목요일', '금요일', '토요일', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),\n(20, 'Dutch', 'ISO_8859-1', 'Nederlands', 'nl', 'nl-NL', 'januari', 'februari', 'maart', 'april', 'mei', 'juni', 'juli', 'augustus', 'september', 'oktober', 'november', 'december', 'zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag', 'jan', 'feb', 'maart', 'apr', 'mei', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'dec', 'zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'),\n(22, 'Belarus', 'ISO_8859-5', 'Беларуская', 'be', 'be-BY', 'студзеня', 'лютага', 'сакавiка', 'красавiка', 'мая', 'чэрвеня', 'лiпеня', 'жніўня', 'верасьня', 'кастрычнiка', 'сьнежня', 'студзеня', 'нядзеля', 'панядзелак', 'аўторак', 'серада', 'чацверг', 'пятнiца', 'субота', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),\n(23, 'Georgian', 'GEORGIAN-ACADEMY', 'ქართული', 'ka', 'ka-GE', 'იანვარი', 'თებერვალი', 'მარტი', 'აპრილი', 'მაისი', 'ივნისი', 'ივლისი', 'აგვისტო', 'სექტემბერი', 'ოქტომბერი', 'ნოემბერი', 'დეკემბერი', 'კვირა', 'ორშაბათი', 'სამშაბათი', 'ოთხშაბათი', 'ხუთშაბათი', 'პარასკევი', 'შაბათი', 'იან', 'თებ', 'მარ', 'აპრ', 'მაი', 'ივნ', 'ივლ', 'აგვ', 'სექ', 'ოქტ', 'ნოე', 'დეკ', 'კვ', 'ორშ', 'სამშ', 'ოთხშ', 'ხუთშ', 'პარ', 'შაბ'),\n(24, 'Chinese (Traditional)', 'UTF-8', '繁體中文', 'zh_TW', 'zh-Hant', '一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月', '星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六', '一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月', '星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'),\n(25, 'Polish', 'ISO_8859-2', 'Polski', 'pl', 'pl-PL', 'Styczeń', 'Luty', 'Marzec', 'Kwiecień', 'Maj', 'Czerwiec', 'Lipiec', 'Sierpień', 'Wrzesień', 'Październik', 'Listopad', 'Grudzień', 'Niedziela:', 'Poniedziałek', 'Wtorek:', 'Środa', 'Czwartek', 'Piątek', 'Sobota', 'Sty:', 'Lt:', 'Mar:', 'Kw:', 'Ma:', 'Cz:', 'Lip:', 'Sier:', 'Wrz:', 'Paź:', 'Lis:', 'Gru:', 'Nd:', 'Pon:', 'Wt:', 'Śr:', 'Czw:', 'Pt:', 'Sob:'),\n(26, 'Greek', 'ISO_8859-7', 'Ελληνικά', 'el', 'el-GR', 'Ιανουάριος', 'Φεβρουάριος', 'Μάρτιος', 'Απρίλιος', 'Μάιος', 'Ιούνιος', 'Ιούλιος', 'Αύγουστος', 'Σεπτέμβριος', 'Οκτώβριος', 'Νοέμβριος', 'Δεκέμβριος', 'Κυριακή', 'Δευτέρα', 'Τρίτη', 'Τετάρτη', 'Πέπμτη', 'Παρασκευή', 'Σάββατο', 'Ιαν', 'Φεβ', 'Μαρ', 'Απρ', 'Μαϊ', 'Ιουν', 'Ιουλ', 'Αυγ', 'Σεπ', 'Οκτ', 'Νοε', 'Δεκ', 'Κυ', 'Δε', 'Τρ', 'Τε', 'Πε', 'Παρ', 'Σα:'),\n(27, 'Hebrew', 'ISO_8859-8', 'עברית', 'he', 'he-IL', 'ינואר', 'פברואר', 'מרץ', 'אפריל', 'מאי', 'יוני', 'יולי', 'אוגוסט', 'ספטמבר', 'אוקטובר', 'נובמבר', 'דצמבר', 'ראשון', 'שני', 'שלישי', 'רביעי', 'חמישי', 'שישי', 'שבת', '''ינו', '''פבר', 'מרץ', '''אפר', 'מאי', 'יוני', 'יולי', '''אוג', '''ספט', '''אוק', '''נוב', '''דצמ', '''ר', 'שני', '''של', '''רב', '''חמ', '''שי', '''שב'),\n(28, 'Bangla', 'UTF-8', 'বাংলা', 'bn', 'bn-BD', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),\n(31, 'Portuguese (Brazil)', 'ISO_8859-1', 'Português (Brasil)', 'pt_BR', 'pt-BR', 'Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro', 'Domingo', 'Segunda-feira', 'Terça-feira', 'Quarta-feira', 'Quinta-feira', 'Sexta-feira', 'Sábado', 'Jan', 'Fev', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Set', 'Out', 'Nov', 'Dez', 'Dom', 'Seg', 'Ter', 'Qua', 'Qui', 'Sex', 'Sáb'),\n(32, 'Albanian', 'UTF-8', 'Gjuha shqipe', 'sq', 'sq-AL', 'Janar', 'Shkurt', 'Mars', 'Prill', 'Maj', 'Qershor', 'Korrik', 'Gusht', 'Shtator', 'Tetor', 'Nëntor', 'Dhjetor', 'E Djelë', 'E Hënë', 'E Matrë', 'E Mërkurë', 'E Enjte', 'E Premte', 'E Shtunë', 'Jan', 'Shk', 'Mar', 'Pri', 'Maj', 'Qer', 'Korr', 'Gush', 'Sht', 'Tet', 'Nënt', 'Dhje', 'Dje', 'Hen', 'Mar', 'Merk', 'Enj', 'Pre', 'Shtu'),\n(33, 'Turkish', 'ISO_8859-9', 'Türkçe', 'tr', 'tr-TR', 'Ocak', 'Şubat', 'Mart', 'Nisan', 'Mayıs', 'Haziran', 'Temmuz', 'Ağustos', 'Eylül', 'Ekim', 'Kasım', 'Aralık', 'Pazar', 'Pazartesi', 'Salı', 'Çarsamba', 'Persembe', 'Cuma', 'Cumartesi', 'Oca', 'Sub', 'Mar', 'Nis', 'May', 'Haz', 'Tem', 'Aðu', 'Eyl', 'Eki', 'Kas', 'Ara', 'Paz', 'Pzt', 'Sal', 'Çar', 'Per', 'Cum', 'Cts'),\n(34, 'Ukrainian', 'UTF-8', 'Українська', 'uk', 'uk-UA', 'Січень', 'Лютий', 'Березень', 'Квітень', 'Травень', 'Червень', 'Липень', 'Серпень', 'Вересень', 'Жовтень', 'Листопад', 'Грудень', 'Неділя', 'Понеділок', 'Вівторок', 'Середа', 'Четвер', 'П’ятниця', 'Субота', 'Січ', 'Лют', 'Бер', 'Кві', 'Тра', 'Чер', 'Лип', 'Сер', 'Вер', 'Жов', 'Лис', 'Гру', 'Нд', 'Пн', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб'),\n(35, 'English (Britain)', 'ISO_8859-1', 'English (Britain)', 'en_GB', 'en-GB', 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December', 'Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec', 'Sun', 'Mon', 'Tues', 'Weds', 'Thurs', 'Fri', 'Sat'),\n(36, 'Kurdish', 'UTF-8', 'کوردی', 'ku', 'ku-TR', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ''),\n(37, 'German (Austria)', 'ISO_8859-1', 'Deutsch (Österreich)', 'de_AT', 'de-AT', 'Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember', 'Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag', 'Jan', 'Feb', 'Mär', 'Apr', 'Mai', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dez', 'So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'),\n(38, 'Hungarian', 'ISO_8859-2', 'Magyar', 'hu', 'hu-HU', 'Január', 'Február', 'Március', 'Április', 'Május', 'Június', 'Július', 'Augusztus', 'Szeptember', 'Október', 'November', 'December', 'Vasárnap', 'Hétfő', 'Kedd', 'Szerda', 'Csütörtök', 'Péntek', 'Szombat', 'Jan', 'Feb', 'Már', 'Ápr', 'Május', 'Jún', 'Júl', 'Aug', 'Szep', 'Okt', 'Nov', 'Dec', 'Va', 'Hé', 'Ke', 'Sze', 'Cs', 'Pé', 'Szu'),\n(39, 'Azerbaijani', 'ISO_8859-9', 'Azərbaycanca', 'az', 'az', 'Yanvar', 'Fevral', 'Mart', 'Aprel', 'May', 'İyun', 'İyul', 'Avqust', 'Sentyabr', 'Oktyabr', 'Noyabr', 'Dekabr', 'Bazar', 'Bazar ertəsi', 'Çərşənbə axşamı', 'Çərşənbə', 'Cümə axşamı', 'Cümə', 'Şənbə', 'Yanvar', 'Fevral', 'Mart', 'Aprel', 'May', 'İyun', 'İyul', 'Avqust', 'Sentyabr', 'Oktyabr', 'Noyabr', 'Dekabr', 'B', 'B.e', 'Ç.a', 'Ç', 'Ca', 'C', 'Ş'),\n(40, 'Danish', 'ISO_8859-1', 'Dansk', 'da', 'da', 'Januar', 'Februar', 'Marts', 'April', 'Maj', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'December', 'Søndag', 'Mandag', 'Tirsdag', 'Onsdag', 'Torsdag', 'Fredag', 'Lørdag', 'Jan', 'Feb', 'Mar', 'Apr', 'Maj', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dec', 'Søn', 'Man', 'Tir', 'Ons', 'Tor', 'Fre', 'Lør'),\n(41, 'Armenian', 'UTF-8', 'Հայերեն', 'hy_AM', 'hy-AM', 'Հունվար', 'Փետրվար', 'Մարտ', 'Ապրիլ', 'Մայիս', 'Հունիս', 'Հուլիս', 'Օգոստոս', 'Սեպտեմբեր', 'Հոկտեմբեր', 'Նոյեմբեր', 'Դեկտեմբեր', 'Կիրակի', 'Երկուշաբթի', 'Երեքշաբթի', 'Չորեքշաբթի', 'Հինգշաբթի', 'ՈՒրբաթ', 'Շաբաթ', 'Հունվ', 'Փետր', 'Մարտ', 'Ապր', 'Մայ', 'Հուն', 'Հուլ', 'Օգոս', 'Սեպ', 'Հոկտ', 'Նոյ', 'Դեկ', 'Կիր', 'Երկ', 'Երք', 'Չոր', 'Հնգ', 'ՈՒր', 'Շաբ');\n/*!40000 ALTER TABLE `Languages` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `LocationContents`\n--\n\nLOCK TABLES `LocationContents` WRITE;\n/*!40000 ALTER TABLE `LocationContents` DISABLE KEYS */;\nINSERT INTO `LocationContents` VALUES (1,'Berlin','','',1,'','',1,'2014-02-21 13:20:58'),(2,'London','','',1,'','',1,'2014-02-21 13:30:20'),(3,'Zagreb','','',1,'','',1,'2014-02-21 13:30:20'),(4,'Minsk','','',1,'','',1,'2014-02-21 13:30:20'),(5,'Athens','','',1,'','',1,'2014-02-21 13:44:06'),(6,'Warsaw','','',1,'','',1,'2014-02-25 15:19:47'),(7,'Strommen','','',1,'','',1,'2014-02-25 15:30:07'),(8,'Belgrade','','',1,'','',1,'2014-02-25 15:38:56'),(9,'Novi Sad','','',1,'','',1,'2014-02-25 15:38:56'),(10,'Sarajevo','','',1,'','',1,'2014-02-25 15:53:44'),(11,'Grill Place','','',1,'','',1,'2014-02-26 13:58:44'),(12,'Charles Bridge','','',1,'','',1,'2014-02-26 14:02:19'),(13,'National Library','','',1,'','',1,'2014-02-26 14:05:54'),(14,'Prague','','',1,'','',1,'2014-02-26 14:09:20'),(15,'Toronto','','',1,'','',1,'2014-02-26 14:09:20'),(16,'Betahaus','','',1,'','',1,'2014-02-26 14:34:21'),(17,'Ulaanbaatar','','',1,'','',1,'2014-02-26 14:36:31'),(18,'Tbilisi','','',1,'','',1,'2014-02-26 14:40:31'),(19,'Poti','','',1,'','',1,'2014-02-26 14:40:31'),(20,'Canal in Copenhagen','','',1,'','',1,'2014-02-27 12:52:25'),(21,'Golden Gate','','',1,'','',1,'2014-02-27 12:55:10'),(22,'Novi Pazar','','',1,'','',1,'2014-02-27 12:58:47'),(23,'Mpwapwa','','',1,'','',1,'2014-02-27 13:01:39'),(24,'Århus','','',1,'','',1,'2014-02-27 13:07:24'),(25,'Nove Mesto','','',1,'','',1,'2014-02-27 13:12:14'),(26,'Cannes','','',1,'','',1,'2014-02-27 13:15:59'),(27,'Milan','','',1,'','',1,'2014-02-27 13:19:41'),(28,'Buenos Aires','','',1,'','',1,'2014-02-27 13:22:03');\n/*!40000 ALTER TABLE `LocationContents` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Locations`\n--\n\nLOCK TABLES `Locations` WRITE;\n/*!40000 ALTER TABLE `Locations` DISABLE KEYS */;\nINSERT INTO `Locations` VALUES (1,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0n½]å]CJ@9z\u0012¥¸Ì*@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0n½]å]CJ@9z\u0012¥¸Ì*@',0,1,'2014-02-21 13:20:58'),(2,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0é¿³`~ÀI@ª2B.\\'WÀ¿','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0é¿³`~ÀI@ª2B.\\'WÀ¿',0,1,'2014-02-21 13:30:20'),(3,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\01\fXr\u0015èF@kpü?Íë/@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\01\fXr\u0015èF@kpü?Íë/@',0,1,'2014-02-21 13:30:20'),(4,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0Xiúø\u0012óJ@¨Õé@>‘;@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0Xiúø\u0012óJ@¨Õé@>‘;@',0,1,'2014-02-21 13:30:20'),(5,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0Q|Ý\f\u0012ýB@iØ-k»7@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0Q|Ý\f\u0012ýB@iØ-k»7@',0,1,'2014-02-21 13:44:06'),(6,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0*´\u0007¢ö\u001bJ@ ‚ñÓ(\\n5@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0*´\u0007¢ö\u001bJ@   ‚ñÓ(\\n5@',0,1,'2014-02-25 15:19:47'),(7,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0ˆè¾Á\u0004‘K@H®ÏÉ,\u0017!@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0ˆè¾Á\u0004‘K@H®ÏÉ,\u0017!@',0,1,'2014-02-25 15:30:07'),(8,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0Nð\u0014cxhF@\u0004\u0005–mYv4@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0Nð\u0014cxhF@\u0004\u0005–mYv4@',0,1,'2014-02-25 15:38:56'),(9,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0ËQŸ\u0005…¡F@šyy:8Ù3@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0ËQŸ\u0005…¡F@šyy:8Ù3@',0,1,'2014-02-25 15:38:56'),(10,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0\\r–# íE@ÇÈóª_i2@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0\\r–# íE@ÇÈóª_i2@',0,1,'2014-02-25 15:53:44'),(11,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0öÍÎÔþâJ@j’\u000e3Rpø¿','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0öÍÎÔþâJ@j’\u000e3Rpø¿',0,1,'2014-02-26 13:58:44'),(12,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0Ûûõ¤\u0013\u000bI@“Os\u0002}Ò,@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0Ûûõ¤\u0013\u000bI@“Os\u0002}Ò,@',0,1,'2014-02-26 14:02:19'),(13,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0\u001b\u0014ÍcàÂô?|ÙÃ\u0018¬öY@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0\u001b\u0014ÍcàÂô?|ÙÃ\u0018¬öY@',0,1,'2014-02-26 14:05:54'),(14,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0G¡ìïc I@us\\n\u0003là,@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0G¡ìïc   I@us\\n\u0003là,@',0,1,'2014-02-26 14:09:20'),(15,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0N+…@.BJ@àp\u0012¥ Î*@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0N+…@.BJ@àp\u0012¥ Î*@',0,1,'2014-02-26 14:09:20'),(16,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0ú \u0004v³ÓE@-\\r÷¶\u0004ØSÀ','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0ú \u0004v³ÓE@-\\r÷¶\u0004ØSÀ',0,1,'2014-02-26 14:09:20'),(17,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0€\u001eÿ3Y@J@ô+ƒs!Ó*@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0€\u001eÿ3Y@J@ô+ƒs!Ó*@',0,1,'2014-02-26 14:34:21'),(18,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0c¦ÃÑçÚG@¦>ÖVÕ¸Z@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0c¦ÃÑçÚG@¦>ÖVÕ¸Z@',0,1,'2014-02-26 14:36:31'),(19,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0\u001d\u0002D€™ÚD@¤e‘/eF@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0\u001d\u0002D€™ÚD@¤e‘/eF@',0,1,'2014-02-26 14:40:31'),(20,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0nÖßÊ°\u0013E@¾l)Ö¹ÖD@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0nÖßÊ°\u0013E@¾l)Ö¹ÖD@',0,1,'2014-02-26 14:40:31'),(21,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0V\u0018š÷‹ÕK@‹µ”\u0007Ç&)@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0V\u0018š÷‹ÕK@‹µ”\u0007Ç&)@',0,1,'2014-02-27 12:52:25'),(22,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0Jÿ=ë’èB@\u0014S\u0003’ž^À','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0Jÿ=ë’èB@\u0014S\u0003’ž^À',0,1,'2014-02-27 12:55:10'),(23,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0GC@$Ÿ‘E@!J\\\"ûˆ„4@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0GC@$Ÿ‘E@!J\\\"ûˆ„4@',0,1,'2014-02-27 12:58:47'),(24,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\07\\\"^Ò0n\u0019À£YÌ7¹<B@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\07\\\"^Ò0n\u0019À£YÌ7¹<B@',0,1,'2014-02-27 13:01:39'),(25,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0ö\\'”¦+áI@ŠO\\nNau3@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0ö\\'”¦+áI@ŠO\\nNau3@',0,1,'2014-02-27 13:07:24'),(26,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0û.m‡\u000b\u0015H@DS\u0019\u00103\u001f1@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0û.m‡\u000b\u0015H@DS\u0019\u00103\u001f1@',0,1,'2014-02-27 13:12:14'),(27,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0#C)ä¾ÆE@ïV/PÕ\u0011\u001c@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0#C)ä¾ÆE@ïV/PÕ\u0011\u001c@',0,1,'2014-02-27 13:15:59'),(28,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0Ô9©7Á¹F@$¾8g\\\"@','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0Ô9©7Á¹F@$¾8g\\\"@',0,1,'2014-02-27 13:19:41'),(29,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0RÄ‹ãò`AÀ“\u001c+ÖÕ-MÀ','point',0,'\\0\\0\\0\\0\u0001\u0001\\0\\0\\0RÄ‹ãò`AÀ“\u001c+ÖÕ-MÀ',0,1,'2014-02-27 13:22:03');\n/*!40000 ALTER TABLE `Locations` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Log`\n--\n\nLOCK TABLES `Log` WRITE;\n/*!40000 ALTER TABLE `Log` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Log` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `MapLocationLanguages`\n--\n\nLOCK TABLES `MapLocationLanguages` WRITE;\n/*!40000 ALTER TABLE `MapLocationLanguages` DISABLE KEYS */;\nINSERT INTO `MapLocationLanguages` VALUES (1,1,1,1,1),(2,2,1,2,1),(3,3,1,3,1),(4,4,1,4,1),(5,5,1,5,1),(6,6,1,6,1),(7,7,1,7,1),(8,8,1,8,1),(9,9,1,9,1),(10,10,1,10,1),(11,11,1,11,1),(12,12,1,12,1),(13,13,1,13,1),(14,14,1,14,1),(15,15,1,1,1),(16,16,1,15,1),(17,17,1,16,1),(18,18,1,17,1),(19,19,1,18,1),(20,20,1,19,1),(21,21,1,20,1),(22,22,1,21,1),(23,23,1,22,1),(24,24,1,23,1),(25,25,1,24,1),(26,26,1,25,1),(27,27,1,26,1),(28,28,1,27,1),(29,29,1,28,1),(30,30,1,14,1),(31,31,1,1,1),(32,32,1,15,1),(33,33,1,13,1),(34,34,1,12,1),(35,35,1,11,1),(36,36,1,11,1),(37,37,1,12,1),(38,38,1,13,1),(39,39,1,14,1),(40,40,1,1,1),(41,41,1,15,1),(42,42,1,14,1),(43,43,1,1,1),(44,44,1,15,1),(45,45,1,13,1),(46,46,1,12,1),(47,47,1,11,1),(48,48,1,11,1),(49,49,1,12,1),(50,50,1,13,1),(51,51,1,14,1),(52,52,1,1,1),(53,53,1,15,1),(54,54,1,14,1),(55,55,1,1,1),(56,56,1,15,1),(57,57,1,13,1),(58,58,1,12,1),(59,59,1,11,1),(60,60,1,11,1),(61,61,1,12,1);\n/*!40000 ALTER TABLE `MapLocationLanguages` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `MapLocationMultimedia`\n--\n\nLOCK TABLES `MapLocationMultimedia` WRITE;\n/*!40000 ALTER TABLE `MapLocationMultimedia` DISABLE KEYS */;\n/*!40000 ALTER TABLE `MapLocationMultimedia` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `MapLocations`\n--\n\nLOCK TABLES `MapLocations` WRITE;\n/*!40000 ALTER TABLE `MapLocations` DISABLE KEYS */;\nINSERT INTO `MapLocations` VALUES (1,1,1,'marker-gold.png',1),(2,2,2,'marker-gold.png',1),(3,2,3,'marker-gold.png',2),(4,2,4,'marker-gold.png',3),(5,3,5,'marker-gold.png',1),(6,4,6,'marker-gold.png',1),(7,5,7,'marker-gold.png',1),(8,6,8,'marker-gold.png',1),(9,6,9,'marker-gold.png',2),(10,7,10,'marker-gold.png',1),(11,8,11,'marker-gold.png',1),(12,9,12,'marker-gold.png',1),(13,10,13,'marker-gold.png',1),(14,11,14,'marker-gold.png',1),(15,11,15,'marker-gold.png',2),(16,11,16,'marker-gold.png',3),(17,12,17,'marker-gold.png',1),(18,13,18,'marker-gold.png',1),(19,14,19,'marker-gold.png',1),(20,14,20,'marker-gold.png',2),(21,15,21,'marker-gold.png',1),(22,16,22,'marker-gold.png',1),(23,17,23,'marker-gold.png',1),(24,18,24,'marker-gold.png',1),(25,19,25,'marker-gold.png',1),(26,20,26,'marker-gold.png',1),(27,21,27,'marker-gold.png',1),(28,22,28,'marker-gold.png',1),(29,23,29,'marker-gold.png',1),(30,24,14,'marker-gold.png',1),(31,24,15,'marker-gold.png',2),(32,24,16,'marker-gold.png',3),(33,25,13,'marker-gold.png',1),(34,26,12,'marker-gold.png',1),(35,27,11,'marker-gold.png',1),(36,28,11,'marker-gold.png',1),(37,29,12,'marker-gold.png',1),(38,30,13,'marker-gold.png',1),(39,31,14,'marker-gold.png',1),(40,31,15,'marker-gold.png',2),(41,31,16,'marker-gold.png',3),(42,32,14,'marker-gold.png',1),(43,32,15,'marker-gold.png',2),(44,32,16,'marker-gold.png',3),(45,33,13,'marker-gold.png',1),(46,34,12,'marker-gold.png',1),(47,35,11,'marker-gold.png',1),(48,36,11,'marker-gold.png',1),(49,37,12,'marker-gold.png',1),(50,38,13,'marker-gold.png',1),(51,39,14,'marker-gold.png',1),(52,39,15,'marker-gold.png',2),(53,39,16,'marker-gold.png',3),(54,40,14,'marker-gold.png',1),(55,40,15,'marker-gold.png',2),(56,40,16,'marker-gold.png',3),(57,41,13,'marker-gold.png',1),(58,42,12,'marker-gold.png',1),(59,43,11,'marker-gold.png',1),(60,44,11,'marker-gold.png',1),(61,45,12,'marker-gold.png',1);\n/*!40000 ALTER TABLE `MapLocations` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Maps`\n--\n\nLOCK TABLES `Maps` WRITE;\n/*!40000 ALTER TABLE `Maps` DISABLE KEYS */;\nINSERT INTO `Maps` VALUES (1,2,1,1,13.476750525,52.548020770935,9,'googlev3',600,400,'',1,'2014-02-21 13:20:58'),(2,3,1,1,27.561863,53.902253,8,'googlev3',600,400,'',1,'2014-02-21 13:30:20'),(3,5,1,1,23.7279843,37.9841493,11,'googlev3',600,400,'',1,'2014-02-21 13:44:06'),(4,7,1,1,21.0067265,52.2319237,7,'googlev3',600,410,'',1,'2014-02-25 15:19:47'),(5,8,1,1,8.5453816,55.1329638,17,'googlev3',600,400,'',1,'2014-02-25 15:30:07'),(6,9,1,1,20.199390082024,45.071129507337,9,'googlev3',600,400,'',1,'2014-02-25 15:39:04'),(7,10,1,1,18.3886134,43.8514981,12,'googlev3',600,400,'',1,'2014-02-25 15:53:44'),(8,14,1,1,-1.5269500727092,53.773541324939,17,'googlev3',600,400,'',1,'2014-02-26 13:58:44'),(9,15,1,1,14.412376,50.0863649,17,'googlev3',600,400,'',1,'2014-02-26 14:02:19'),(10,16,1,1,103.85422712923,1.29756655,17,'googlev3',600,400,'',1,'2014-02-26 14:05:54'),(11,17,1,1,-32.275525801884,49.789200806126,3,'googlev3',600,400,'',1,'2014-02-26 14:09:20'),(12,18,1,1,13.412107095491,52.50248715,18,'googlev3',600,400,'',1,'2014-02-26 14:34:21'),(13,19,1,1,106.97591181681,47.9462225,4,'googlev3',600,400,'',1,'2014-02-26 14:36:31'),(14,20,1,1,43.641352434281,42.031544891553,7,'googlev3',600,400,'',1,'2014-02-26 14:40:31'),(15,21,1,1,12.586895214941,55.673367964878,13,'googlev3',600,400,'',1,'2014-02-27 12:52:25'),(16,22,1,1,-122.4793973,37.8190177,13,'googlev3',600,400,'',1,'2014-02-27 12:55:10'),(17,23,1,1,20.512222,43.136667,7,'googlev3',600,400,'',1,'2014-02-27 12:59:02'),(18,24,1,1,35.845435118487,-6.499532307517,8,'googlev3',600,400,'',1,'2014-02-27 13:01:39'),(19,25,1,1,19.466755750196,51.764244469683,11,'googlev3',600,400,'',1,'2014-02-27 13:07:24'),(20,26,1,1,17.1383524,48.1671622,10,'googlev3',600,400,'',1,'2014-02-27 13:12:14'),(21,27,1,1,7.0187456635366,43.552202896631,15,'googlev3',600,400,'',1,'2014-02-27 13:15:59'),(22,28,1,1,9.1906166000001,45.4666211,7,'googlev3',600,400,'',1,'2014-02-27 13:19:41'),(23,29,1,1,-58.4459789,-34.612869,4,'googlev3',600,400,'',1,'2014-02-27 13:22:03'),(24,40,1,1,-32.275525801884,49.789200806126,3,'googlev3',600,400,'',1,'2014-03-04 13:49:13'),(25,41,1,1,103.85422712923,1.29756655,17,'googlev3',600,400,'',1,'2014-03-04 13:49:14'),(26,42,1,1,14.412376,50.0863649,17,'googlev3',600,400,'',1,'2014-03-04 13:49:14'),(27,43,1,1,-1.5269500727092,53.773541324939,17,'googlev3',600,400,'',1,'2014-03-04 13:49:14'),(28,44,1,1,-1.5269500727092,53.773541324939,17,'googlev3',600,400,'',1,'2014-03-04 13:49:19'),(29,45,1,1,14.412376,50.0863649,17,'googlev3',600,400,'',1,'2014-03-04 13:49:19'),(30,46,1,1,103.85422712923,1.29756655,17,'googlev3',600,400,'',1,'2014-03-04 13:49:19'),(31,47,1,1,-32.275525801884,49.789200806126,3,'googlev3',600,400,'',1,'2014-03-04 13:49:20'),(32,48,1,1,-32.275525801884,49.789200806126,3,'googlev3',600,400,'',1,'2014-03-04 13:49:20'),(33,49,1,1,103.85422712923,1.29756655,17,'googlev3',600,400,'',1,'2014-03-04 13:49:20'),(34,0,1,1,14.412376,50.0863649,17,'googlev3',600,400,'',1,'2014-05-07 09:41:52'),(35,51,1,1,-1.5269500727092,53.773541324939,17,'googlev3',600,400,'',1,'2014-03-04 13:49:20'),(36,0,1,1,-1.5269500727092,53.773541324939,17,'googlev3',600,400,'',1,'2014-05-07 09:40:56'),(37,0,1,1,14.412376,50.0863649,17,'googlev3',600,400,'',1,'2014-05-07 09:40:56'),(38,54,1,1,103.85422712923,1.29756655,17,'googlev3',600,400,'',1,'2014-03-04 13:49:30'),(39,55,1,1,-32.275525801884,49.789200806126,3,'googlev3',600,400,'',1,'2014-03-04 13:49:30'),(40,56,1,1,-32.275525801884,49.789200806126,3,'googlev3',600,400,'',1,'2014-03-04 13:49:30'),(41,57,1,1,103.85422712923,1.29756655,17,'googlev3',600,400,'',1,'2014-03-04 13:49:31'),(42,58,1,1,14.412376,50.0863649,17,'googlev3',600,400,'',1,'2014-03-04 13:49:31'),(43,59,1,1,-1.5269500727092,53.773541324939,17,'googlev3',600,400,'',1,'2014-03-04 13:49:31'),(44,60,1,1,-1.5269500727092,53.773541324939,17,'googlev3',600,400,'',1,'2014-03-04 13:49:31'),(45,61,1,1,14.412376,50.0863649,17,'googlev3',600,400,'',1,'2014-03-04 13:49:31');\n/*!40000 ALTER TABLE `Maps` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Multimedia`\n--\n\nLOCK TABLES `Multimedia` WRITE;\n/*!40000 ALTER TABLE `Multimedia` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Multimedia` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `OAuthAccessToken`\n--\n\nLOCK TABLES `OAuthAccessToken` WRITE;\n/*!40000 ALTER TABLE `OAuthAccessToken` DISABLE KEYS */;\n/*!40000 ALTER TABLE `OAuthAccessToken` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `OAuthAuthCode`\n--\n\nLOCK TABLES `OAuthAuthCode` WRITE;\n/*!40000 ALTER TABLE `OAuthAuthCode` DISABLE KEYS */;\n/*!40000 ALTER TABLE `OAuthAuthCode` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `OAuthClient`\n--\n\nLOCK TABLES `OAuthClient` WRITE;\n/*!40000 ALTER TABLE `OAuthClient` DISABLE KEYS */;\n/*!40000 ALTER TABLE `OAuthClient` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `OAuthPublicApiResources`\n--\n\nLOCK TABLES `OAuthPublicApiResources` WRITE;\n/*!40000 ALTER TABLE `OAuthPublicApiResources` DISABLE KEYS */;\n/*!40000 ALTER TABLE `OAuthPublicApiResources` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `OAuthRefreshToken`\n--\n\nLOCK TABLES `OAuthRefreshToken` WRITE;\n/*!40000 ALTER TABLE `OAuthRefreshToken` DISABLE KEYS */;\n/*!40000 ALTER TABLE `OAuthRefreshToken` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `ObjectTypes`\n--\n\nLOCK TABLES `ObjectTypes` WRITE;\n/*!40000 ALTER TABLE `ObjectTypes` DISABLE KEYS */;\nINSERT INTO `ObjectTypes` VALUES (1,'article');\n/*!40000 ALTER TABLE `ObjectTypes` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Plugins`\n--\n\nLOCK TABLES `Plugins` WRITE;\n/*!40000 ALTER TABLE `Plugins` DISABLE KEYS */;\nINSERT INTO `Plugins` VALUES (7,'poll','',0,0,'','0.3.1','','',1,'0000-00-00 00:00:00',NULL),(8,'recaptcha','',0,0,'','0.1.0','','',1,'0000-00-00 00:00:00',NULL),(9,'soundcloud','',0,0,'','0.1.0','','',1,'0000-00-00 00:00:00',NULL),(10,'debate','',0,0,'','0.0.1','','',1,'0000-00-00 00:00:00',NULL);\n/*!40000 ALTER TABLE `Plugins` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `RequestObjects`\n--\n\nLOCK TABLES `RequestObjects` WRITE;\n/*!40000 ALTER TABLE `RequestObjects` DISABLE KEYS */;\nINSERT INTO `RequestObjects` VALUES (1,1,0,'2014-02-21 13:25:45'),(2,1,40,'2014-05-05 17:06:55'),(3,1,0,'2014-02-27 15:47:41'),(4,1,4,'2014-05-05 12:51:28'),(5,1,0,'2014-03-03 10:14:18'),(6,1,0,'2014-03-03 10:14:20'),(7,1,4,'2014-03-27 16:39:28'),(8,1,8,'2014-04-08 11:10:59'),(9,1,2,'2014-03-25 15:03:30'),(10,1,1,'2014-03-25 12:17:28'),(11,1,3,'2014-04-08 12:16:26'),(12,1,0,'2014-03-03 10:14:33'),(13,1,2,'2014-04-08 14:14:20'),(14,1,0,'2014-03-03 10:14:40'),(15,1,0,'2014-03-03 10:14:40'),(16,1,2,'2014-03-25 12:23:02'),(17,1,3,'2014-04-15 13:13:43'),(18,1,8,'2014-05-02 14:40:49'),(19,1,0,'2014-03-03 10:14:51'),(20,1,1,'2014-04-01 10:58:23'),(21,1,7,'2014-05-05 07:51:20'),(22,1,4,'2014-05-05 07:51:21'),(23,1,1,'2014-03-27 11:06:24'),(24,1,2,'2014-03-25 21:05:26'),(25,1,1,'2014-03-03 14:01:35'),(26,1,4,'2014-03-28 14:24:44'),(27,1,8,'2014-03-27 14:56:28'),(28,1,1,'2014-03-04 15:11:36'),(29,1,10,'2014-04-01 10:51:51'),(30,1,1,'2014-03-05 16:22:54'),(31,1,2,'2014-03-28 14:24:37'),(32,1,3,'2014-03-27 14:55:34'),(33,1,4,'2014-05-05 12:45:02'),(34,1,0,'2014-03-10 05:36:35'),(35,1,1,'2014-03-17 08:56:27'),(36,1,0,'2014-03-11 11:31:06'),(37,1,0,'2014-03-11 14:03:36'),(38,1,0,'2014-03-11 17:50:42'),(39,1,1,'2014-03-25 20:46:23'),(40,1,0,'2014-03-11 22:35:26'),(41,1,1,'2014-03-17 15:51:29'),(42,1,1,'2014-03-25 20:44:34'),(43,1,1,'2014-03-12 14:51:09'),(44,1,1,'2014-03-20 14:22:32'),(45,1,0,'2014-03-12 18:09:09'),(46,1,0,'2014-03-12 22:32:29'),(47,1,0,'2014-03-12 23:33:44'),(48,1,0,'2014-03-13 13:26:02'),(49,1,1,'2014-04-08 12:28:01'),(50,1,0,'2014-03-14 19:16:15'),(51,1,0,'2014-03-14 21:31:39'),(52,1,0,'2014-03-14 22:25:57'),(53,1,1,'2014-03-26 12:49:29'),(54,1,1,'2014-03-17 15:52:20'),(55,1,2,'2014-03-27 14:55:47');\n/*!40000 ALTER TABLE `RequestObjects` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `RequestStats`\n--\n\nLOCK TABLES `RequestStats` WRITE;\n/*!40000 ALTER TABLE `RequestStats` DISABLE KEYS */;\nINSERT INTO `RequestStats` VALUES (2,'2014-02-27',15,1),(2,'2014-03-03',11,2),(2,'2014-03-03',12,2),(21,'2014-03-03',12,1),(22,'2014-03-03',12,1),(4,'2014-03-03',13,1),(2,'2014-03-03',13,1),(2,'2014-03-03',14,1),(7,'2014-03-03',14,1),(18,'2014-03-03',14,1),(25,'2014-03-03',15,1),(26,'2014-03-03',15,1),(18,'2014-03-04',15,1),(7,'2014-03-04',15,1),(2,'2014-03-04',15,1),(27,'2014-03-04',15,1),(27,'2014-03-04',16,1),(28,'2014-03-04',16,1),(2,'2014-03-04',16,1),(29,'2014-03-05',12,1),(2,'2014-03-05',12,1),(2,'2014-03-05',14,1),(29,'2014-03-05',17,1),(27,'2014-03-05',17,1),(30,'2014-03-05',17,1),(2,'2014-03-06',15,3),(2,'2014-03-06',21,1),(2,'2014-03-07',9,1),(2,'2014-03-07',10,1),(18,'2014-03-07',12,1),(2,'2014-03-07',13,1),(2,'2014-03-07',15,1),(2,'2014-03-07',20,1),(29,'2014-03-10',11,1),(27,'2014-03-10',11,1),(26,'2014-03-10',11,1),(33,'2014-03-10',11,1),(32,'2014-03-10',11,1),(31,'2014-03-10',11,1),(2,'2014-03-10',13,2),(2,'2014-03-10',21,1),(43,'2014-03-12',15,1),(2,'2014-03-12',15,1),(27,'2014-03-12',15,1),(11,'2014-03-12',15,1),(2,'2014-03-12',23,1),(35,'2014-03-17',9,1),(55,'2014-03-17',13,1),(2,'2014-03-17',14,1),(41,'2014-03-17',16,1),(54,'2014-03-17',16,1),(2,'2014-03-18',14,1),(18,'2014-03-18',14,1),(16,'2014-03-19',11,1),(24,'2014-03-19',11,1),(29,'2014-03-20',15,1),(44,'2014-03-20',15,1),(26,'2014-03-20',15,1),(29,'2014-03-21',11,2),(18,'2014-03-25',12,1),(2,'2014-03-25',12,1),(2,'2014-03-25',13,3),(8,'2014-03-25',13,1),(9,'2014-03-25',13,1),(10,'2014-03-25',13,1),(7,'2014-03-25',13,1),(18,'2014-03-25',13,1),(29,'2014-03-25',13,1),(16,'2014-03-25',13,1),(27,'2014-03-25',13,1),(29,'2014-03-25',16,1),(9,'2014-03-25',16,1),(2,'2014-03-25',16,1),(17,'2014-03-25',16,1),(27,'2014-03-25',16,1),(42,'2014-03-25',21,1),(39,'2014-03-25',21,1),(4,'2014-03-25',21,1),(33,'2014-03-25',21,1),(32,'2014-03-25',21,1),(17,'2014-03-25',22,1),(24,'2014-03-25',22,1),(29,'2014-03-26',13,1),(53,'2014-03-26',13,1),(8,'2014-03-26',15,1),(23,'2014-03-27',12,1),(32,'2014-03-27',15,1),(55,'2014-03-27',15,1),(2,'2014-03-27',15,1),(27,'2014-03-27',15,1),(18,'2014-03-27',15,1),(4,'2014-03-27',15,1),(21,'2014-03-27',17,1),(7,'2014-03-27',17,1),(21,'2014-03-28',14,1),(22,'2014-03-28',14,1),(22,'2014-03-28',15,1),(21,'2014-03-28',15,2),(2,'2014-03-28',15,1),(31,'2014-03-28',15,1),(33,'2014-03-28',15,1),(26,'2014-03-28',15,1),(2,'2014-03-31',16,1),(29,'2014-04-01',12,1),(20,'2014-04-01',12,1),(2,'2014-04-02',18,1),(11,'2014-04-03',23,1),(8,'2014-04-08',13,6),(11,'2014-04-08',14,1),(49,'2014-04-08',14,1),(13,'2014-04-08',14,1),(13,'2014-04-08',16,1),(2,'2014-04-08',16,1),(21,'2014-04-11',13,1),(17,'2014-04-15',15,1),(2,'2014-04-17',10,1),(2,'2014-04-29',8,1),(18,'2014-05-02',16,1),(21,'2014-05-05',9,1),(22,'2014-05-05',9,1),(33,'2014-05-05',14,1),(4,'2014-05-05',14,1),(2,'2014-05-05',19,1);\n/*!40000 ALTER TABLE `RequestStats` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Requests`\n--\n\nLOCK TABLES `Requests` WRITE;\n/*!40000 ALTER TABLE `Requests` DISABLE KEYS */;\nINSERT INTO `Requests` VALUES ('cs24eblnl55mghcefjuibabq21',21,'2014-05-05 09:51:20'),('cs24eblnl55mghcefjuibabq21',22,'2014-05-05 09:51:21'),('u6v99443iorbjivhm34v4hrap2',33,'2014-05-05 14:45:02'),('dfdj4jgr4u6jc2mq6jmuadg8p1',4,'2014-05-05 14:51:28'),('lovhm3vl4ij5c683i1c837l0b0',2,'2014-05-05 19:06:55');\n/*!40000 ALTER TABLE `Requests` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Sections`\n--\n\nLOCK TABLES `Sections` WRITE;\n/*!40000 ALTER TABLE `Sections` DISABLE KEYS */;\nINSERT INTO `Sections` VALUES (1,1,1,1,1,5,'Pages','pages','',NULL,NULL),(2,2,1,10,1,10,'Politics','politics','',NULL,NULL),(3,2,1,10,1,20,'Business','business','',NULL,NULL),(4,2,1,10,1,30,'Sci/Tech','tech','',NULL,NULL),(5,2,1,10,1,40,'Health','health','',NULL,NULL),(6,2,1,10,1,50,'Entertainment','entertainment','',NULL,NULL),(7,2,1,10,1,60,'Sports','sports','',NULL,NULL),(12,3,1,11,1,20,'Business','business',NULL,0,0),(9,2,1,10,1,100,'Dialogue','dialogue','',NULL,NULL),(10,1,1,1,1,15,'Blogroll','blogroll','',NULL,NULL),(11,1,1,1,1,50,'RSS placeholder','rss','',NULL,NULL),(13,3,1,11,1,100,'Dialogue','dialogue',NULL,0,0),(14,3,1,11,1,50,'Entertainment','entertainment',NULL,0,0),(15,3,1,11,1,40,'Health','health',NULL,0,0),(16,3,1,11,1,10,'Politics','politics',NULL,0,0),(17,3,1,11,1,30,'Sci/Tech','tech',NULL,0,0),(18,3,1,11,1,60,'Sports','sports',NULL,0,0);\n/*!40000 ALTER TABLE `Sections` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Sessions`\n--\n\nLOCK TABLES `Sessions` WRITE;\n/*!40000 ALTER TABLE `Sessions` DISABLE KEYS */;\nINSERT INTO `Sessions` VALUES ('cs24eblnl55mghcefjuibabq21','2014-05-05 09:51:20',NULL),('u6v99443iorbjivhm34v4hrap2','2014-05-05 14:45:02',NULL),('dfdj4jgr4u6jc2mq6jmuadg8p1','2014-05-05 14:51:28',NULL),('lovhm3vl4ij5c683i1c837l0b0','2014-05-05 19:06:55',NULL);\n/*!40000 ALTER TABLE `Sessions` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `SnippetTemplates`\n--\n\nLOCK TABLES `SnippetTemplates` WRITE;\n/*!40000 ALTER TABLE `SnippetTemplates` DISABLE KEYS */;\nINSERT INTO `SnippetTemplates` (`Id`, `Name`, `Controller`, `TemplateCode`, `Favourite`, `Enabled`, `IconInactive`, `IconActive`, `Created`, `Modified`)\nVALUES \n    (1, 'Embed.ly', 'Newscoop\\\\NewscoopBundle\\\\Controller\\\\EmbedlyController', '<a class=\\\"embedly-card\\\" href=\\\"{{ URL }}\\\">{{ title }}</a><script>!function(a){var b=\\\"embedly-platform\\\",c=\\\"script\\\";if(!a.getElementById(b)){var d=a.createElement(c);d.id=b,d.src=(\\\"https:\\\"===document.location.protocol?\\\"https\\\":\\\"http\\\")+\\\"://cdn.embedly.com/widgets/platform.js\\\";var e=document.getElementsByTagName(c)[0];e.parentNode.insertBefore(d,e)}}(document);</script>', 0, 1, NULL, NULL, '2014-05-12 13:19:43', '2014-05-12 13:19:43');\n\nINSERT INTO `SnippetTemplateField` (`Id`, `Name`, `Type`, `Scope`, `Required`, `TemplateId`)\nVALUES\n    (1, 'URL', 'url', 'frontend', 1, 1),\n    (2, 'maxwidth', 'integer', 'frontend', 0, 1),\n    (3, 'provider_url', 'url', 'backend', 0, 1),\n    (4, 'description', 'textarea', 'backend', 0, 1),\n    (5, 'title', 'text', 'backend', 0, 1),\n    (6, 'type', 'text', 'backend', 0, 1),\n    (7, 'thumbnail_width', 'integer', 'backend', 0, 1),\n    (8, 'height', 'integer', 'backend', 0, 1),\n    (9, 'width', 'integer', 'backend', 0, 1),\n    (10, 'html', 'textarea', 'backend', 0, 1),\n    (11, 'author_name', 'text', 'backend', 0, 1),\n    (12, 'version', 'text', 'backend', 0, 1),\n    (13, 'provider_name', 'text', 'backend', 0, 1),\n    (14, 'thumbnail_url', 'url', 'backend', 0, 1),\n    (15, 'thumbnail_height', 'integer', 'backend', 0, 1),\n    (16, 'author_url', 'url', 'backend', 0, 1);\nINSERT INTO `SnippetTemplates` (`Id`, `Name`, `Controller`, `TemplateCode`, `Favourite`, `Enabled`, `IconInactive`, `IconActive`, `Created`, `Modified`)\nVALUES\n    (2, 'Youtube', NULL, '<iframe width=\\\"{{ width }}\\\" height=\\\"{{ height }}\\\" src=\\\"//www.youtube.com/embed/{{ ID }}\\\" frameborder=\\\"0\\\" allowfullscreen></iframe>', 1, 1, NULL, NULL, '0000-00-00 00:00:00', '0000-00-00 00:00:00');\n\nINSERT INTO `SnippetTemplateField` (`Id`, `Name`, `Type`, `Scope`, `TemplateId`, `Required`)\nVALUES\n    (18, 'ID', 'text', 'frontend', 2, 1),\n    (19, 'width', 'integer', 'frontend', 2, 0),\n    (20, 'height', 'integer', 'frontend', 2, 0);\nINSERT INTO `SnippetTemplates` (`Id`, `Name`, `Controller`, `TemplateCode`, `Favourite`, `Enabled`, `IconInactive`, `IconActive`, `Created`, `Modified`)\nVALUES\n    (3, 'Vimeo', NULL, '<iframe src=\\\"//player.vimeo.com/video/{{ ID }}\\\" width=\\\"{{ width }}\\\" height=\\\"{{ height }}\\\" frameborder=\\\"0\\\" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>', 1, 1, NULL, NULL, '0000-00-00 00:00:00', '0000-00-00 00:00:00');\n\nINSERT INTO `SnippetTemplateField` (`Id`, `Name`, `Type`, `Scope`, `TemplateId`, `Required`)\nVALUES\n    (21, 'ID', 'text', 'frontend', 3, 1),\n    (22, 'width', 'integer', 'frontend', 3, 0),\n    (23, 'height', 'integer', 'frontend', 3, 0);\nINSERT INTO `SnippetTemplates` (`Id`, `Name`, `Controller`, `TemplateCode`, `Favourite`, `Enabled`, `IconInactive`, `IconActive`, `Created`, `Modified`)\nVALUES\n    (4, 'Generic', NULL, '{{Generic | raw}}', 0, 1, NULL, NULL, '2014-06-10 14:15:49', '2014-06-10 14:15:49');\n\nINSERT INTO `SnippetTemplateField` (`Id`, `Name`, `Type`, `Scope`, `TemplateId`, `Required`)\nVALUES\n    (24, 'Generic', 'textarea', 'frontend', 4, 1);\nINSERT INTO `Snippets` (`Id`, `Name`, `Enabled`, `Created`, `Modified`, `TemplateId`)\nVALUES\n    (1, 'Youtube Sourcefabric Booktype Video', 1, '2014-06-10 13:15:10', '2014-06-10 13:15:12', 1);\n\nINSERT INTO `SnippetFields` (`Id`, `Data`, `SnippetId`, `TemplateFieldId`, `Name`)\nVALUES\n    (1, 'https://www.youtube.com/watch?v=AYVUPem_jaM', 1, 1, 'URL'),\n    (2, NULL, 1, 2, 'Endpoint'),\n    (3, '0', 1, 3, 'maxwidth'),\n    (4, 'http://www.youtube.com/', 1, 4, 'provider_url'),\n    (5, 'Sourcefabric builds open source software to support independent media worldwide. On February 14th, we\\'ll announce our tool to help people and organisations write and publish great multi-platform books. Write and publish great books ready for iPad, Kindle, Nook or print within minutes.', 1, 5, 'description'),\n    (6, 'The future of the book is in your hands', 1, 6, 'title'),\n    (7, 'video', 1, 7, 'type'),\n    (8, '480', 1, 8, 'thumbnail_width'),\n    (9, '309', 1, 9, 'height'),\n    (10, '550', 1, 10, 'width'),\n    (11, '<iframe class=\\\"embedly-embed\\\" src=\\\"//cdn.embedly.com/widgets/media.html?url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DAYVUPem_jaM&src=http%3A%2F%2Fwww.youtube.com%2Fembed%2FAYVUPem_jaM%3Ffeature%3Doembed&image=http%3A%2F%2Fi1.ytimg.com%2Fvi%2FAYVUPem_jaM%2Fhqdefault.jpg&type=text%2Fhtml&schema=youtube\\\" width=\\\"550\\\" height=\\\"309\\\" scrolling=\\\"no\\\" frameborder=\\\"0\\\" allowfullscreen></iframe>', 1, 11, 'html'),\n    (12, 'Sourcefabric', 1, 12, 'author_name'),\n    (13, '1.0', 1, 13, 'version'),\n    (14, 'YouTube', 1, 14, 'provider_name'),\n    (15, 'http://i1.ytimg.com/vi/AYVUPem_jaM/hqdefault.jpg', 1, 15, 'thumbnail_url'),\n    (16, '360', 1, 16, 'thumbnail_height'),\n    (17, 'http://www.youtube.com/user/Sourcefabric', 1, 17, 'author_url');\n/*!40000 ALTER TABLE `SnippetTemplates` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Snippets`\n--\n\nLOCK TABLES `Snippets` WRITE;\n/*!40000 ALTER TABLE `Snippets` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Snippets` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `SubsByIP`\n--\n\nLOCK TABLES `SubsByIP` WRITE;\n/*!40000 ALTER TABLE `SubsByIP` DISABLE KEYS */;\n/*!40000 ALTER TABLE `SubsByIP` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `SubsDefTime`\n--\n\nLOCK TABLES `SubsDefTime` WRITE;\n/*!40000 ALTER TABLE `SubsDefTime` DISABLE KEYS */;\n/*!40000 ALTER TABLE `SubsDefTime` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `SubsSections`\n--\n\nLOCK TABLES `SubsSections` WRITE;\n/*!40000 ALTER TABLE `SubsSections` DISABLE KEYS */;\n/*!40000 ALTER TABLE `SubsSections` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Subscriptions`\n--\n\nLOCK TABLES `Subscriptions` WRITE;\n/*!40000 ALTER TABLE `Subscriptions` DISABLE KEYS */;\n/*!40000 ALTER TABLE `Subscriptions` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `SystemPreferences`\n--\n\nLOCK TABLES `SystemPreferences` WRITE;\n/*!40000 ALTER TABLE `SystemPreferences` DISABLE KEYS */;\nINSERT INTO `SystemPreferences` VALUES (1,'ExternalSubscriptionManagement','N','2007-03-07 07:15:36'),(2,'KeywordSeparator',',','2014-03-25 13:19:43'),(3,'LoginFailedAttemptsNum','3','2014-03-25 13:19:43'),(4,'MaxUploadFileSize','200M','2014-03-25 13:19:43'),(5,'UseDBReplication','N','2014-03-25 13:19:43'),(6,'DBReplicationHost','','2007-03-07 07:15:36'),(7,'DBReplicationUser','','2007-03-07 07:15:36'),(8,'DBReplicationPass','','2007-03-07 07:15:36'),(9,'DBReplicationPort','3306','2007-03-07 07:15:36'),(65,'CollectStatistics','Y','2014-03-25 13:19:43'),(15,'SiteOnline','Y','2014-03-25 13:19:43'),(16,'SiteCharset','utf-8','2007-07-26 04:49:32'),(17,'SiteLocale','en-US','2007-07-26 04:49:56'),(18,'SiteCacheEnabled','Y','2010-07-28 16:17:03'),(22,'SiteMetaKeywords','Newscoop, Sourcefabric, enterprise content management, open source, media, journalism','2014-03-25 13:19:43'),(19,'SiteSecretKey',NULL,NOW()),(20,'SiteSessionLifeTime','1400','2014-03-25 13:19:43'),(21,'SiteTitle','Newscoop','2014-03-25 13:19:43'),(23,'SiteMetaDescription','Newscoop - The open content management system for professional journalists.','2014-03-25 13:19:43'),(24,'SMTPHost','localhost','2014-03-25 13:19:43'),(25,'SMTPPort','25','2014-03-25 13:19:43'),(26,'DBCacheEngine',NULL,'2014-03-25 13:19:43'),(27,'EditorImageRatio','100','2014-03-25 13:19:43'),(28,'TemplateFilter','.*, CVS','2014-03-25 13:19:43'),(29,'ImagecacheLifetime','86400','2014-03-25 13:19:43'),(30,'EditorImageResizeWidth','0','2014-03-25 13:19:43'),(31,'EditorImageResizeHeight','0','2014-03-25 13:19:43'),(32,'EditorImageZoom','N','2014-03-25 13:19:43'),(33,'TimeZone','','2014-03-25 13:19:43'),(35,'TemplateCacheHandler','DB','2014-03-25 13:19:43'),(36,'PasswordRecovery','Y','2014-03-25 13:19:43'),(37,'MapCenterLongitudeDefault','14.424133','2014-03-25 13:19:43'),(38,'MapCenterLatitudeDefault','50.089926','2014-03-25 13:19:43'),(39,'MapDisplayResolutionDefault','4','2014-03-25 13:19:43'),(40,'MapViewWidthDefault','600','2014-03-25 13:19:43'),(41,'MapViewHeightDefault','400','2014-03-25 13:19:43'),(42,'MapProviderAvailableGoogleV3','1','2014-03-25 13:19:43'),(43,'MapProviderAvailableMapQuest','1','2014-03-25 13:19:43'),(44,'MapProviderAvailableOSM','1','2014-03-25 13:19:43'),(45,'MapProviderDefault','GoogleV3','2014-03-25 13:19:43'),(46,'MapMarkerDirectory','/js/geocoding/markers/','2014-03-25 13:19:43'),(47,'MapMarkerSourceDefault','marker-gold.png','2014-03-25 13:19:43'),(48,'MapPopupWidthMin','200','2014-03-25 13:19:43'),(49,'MapPopupHeightMin','150','2014-03-25 13:19:43'),(50,'MapVideoWidthYouTube','320','2014-03-25 13:19:43'),(51,'MapVideoHeightYouTube','240','2014-03-25 13:19:43'),(52,'MapVideoWidthVimeo','320','2014-03-25 13:19:43'),(53,'MapVideoHeightVimeo','180','2014-03-25 13:19:43'),(54,'MapVideoWidthFlash','320','2014-03-25 13:19:43'),(55,'MapVideoHeightFlash','240','2014-03-25 13:19:43'),(56,'MapVideoWidthFlv','320','2011-06-13 09:19:05'),(57,'MapVideoHeightFlv','240','2011-06-13 09:19:05'),(58,'FlashServer','','2014-03-25 13:19:43'),(59,'FlashDirectory','videos/','2014-03-25 13:19:43'),(61,'MapAutoFocusDefault','1','2014-03-25 13:19:43'),(62,'MapAutoFocusMaxZoom','10','2014-03-25 13:19:43'),(63,'MapAutoFocusBorder','50','2014-03-25 13:19:43'),(64,'MapAutoCSSFile','/js/geocoding/styles/map-info.css','2014-03-25 13:19:43'),(79,'GeoSearchLocalGeonames','1','2014-03-25 13:19:43'),(80,'GeoSearchMapquestNominatim','1','2014-03-25 13:19:43'),(81,'EmailFromAddress','no-reply@sourcefabric.org','2014-03-25 13:19:43'),(82,'EmailContact',NULL,'2013-02-06 14:00:00'),(83,'WidgetsInstalled','1392897307','2014-02-20 12:55:07'),(90,'Map','600','2014-03-25 13:19:43'),(91,'MapDisplay','4','2014-03-25 13:19:43'),(92,'MapDisplayResolution','4','2014-03-25 13:19:43'),(93,'MapView','400','2014-03-25 13:19:43'),(94,'MapViewWidth','600','2014-03-25 13:19:43'),(95,'MapViewHeight','400','2014-03-25 13:19:43'),(96,'MapAuto','1','2014-03-25 13:19:43'),(97,'MapAutoCSS','/js/geocoding/styles/map-info.css','2014-03-25 13:19:43'),(98,'MapAutoFocus','10','2014-03-25 13:19:43'),(99,'MapAutoFocusMax','10','2014-03-25 13:19:43'),(100,'MapProvider','1','2014-03-25 13:19:43'),(101,'MapProviderAvailable','1','2014-03-25 13:19:43'),(102,'MapProviderAvailableGoogle','1','2014-03-25 13:19:43'),(103,'MapProviderAvailableMap','1','2014-03-25 13:19:43'),(104,'Geo','1','2014-03-25 13:19:43'),(105,'GeoSearch','1','2014-03-25 13:19:43'),(106,'GeoSearchLocal','1','2014-03-25 13:19:43'),(107,'GeoSearchMapquest','1','2014-03-25 13:19:43'),(108,'GeoSearchPreferred','en','2014-03-25 13:19:43'),(109,'GeoSearchPreferredLanguage','en','2014-03-25 13:19:43'),(110,'MapMarker','marker-gold.png','2014-03-25 13:19:43'),(111,'MapMarkerSource','marker-gold.png','2014-03-25 13:19:43'),(112,'MapPopup','150','2014-03-25 13:19:43'),(113,'MapPopupWidth','200','2014-03-25 13:19:43'),(114,'MapPopupHeight','150','2014-03-25 13:19:43'),(115,'MapVideo','240','2014-03-25 13:19:43'),(116,'MapVideoWidth','320','2014-03-25 13:19:43'),(117,'MapVideoWidthYou','320','2014-03-25 13:19:43'),(118,'MapVideoHeight','180','2014-03-25 13:19:43'),(119,'MapVideoHeightYou','240','2014-03-25 13:19:43'),(120,'Flash','videos/','2014-03-25 13:19:43'),(121,'DBCacheEngineHost',NULL,'2014-03-25 13:19:43'),(122,'DBCacheEnginePort',NULL,'2014-03-25 13:19:43'),(123,'facebook_appid','','2014-03-25 13:19:43'),(124,'facebook_appsecret','','2014-03-25 13:19:43'),(125,'RecaptchaPublicKey','','2014-03-25 13:19:43'),(126,'RecaptchaPrivateKey','','2014-03-25 13:19:43'),(127,'RecaptchaSecure','N','2014-03-25 13:19:43'),(128, 'SmartyUseProtocol', 'Y', '2014-06-10 00:00:00');\n/*!40000 ALTER TABLE `SystemPreferences` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `TemplateTypes`\n--\n\nLOCK TABLES `TemplateTypes` WRITE;\n/*!40000 ALTER TABLE `TemplateTypes` DISABLE KEYS */;\nINSERT INTO `TemplateTypes` VALUES (1,'default'),(2,'issue'),(3,'section'),(4,'article'),(5,'nontpl');\n/*!40000 ALTER TABLE `TemplateTypes` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Templates`\n--\n\nLOCK TABLES `Templates` WRITE;\n/*!40000 ALTER TABLE `Templates` DISABLE KEYS */;\nINSERT INTO `Templates` VALUES (1,'publication_1/theme_1/404.tpl',1,0,0),(2,'publication_1/theme_1/archive.tpl',1,0,NULL),(3,'publication_1/theme_1/article-debate.tpl',1,0,NULL),(4,'publication_1/theme_1/article.tpl',1,0,NULL),(5,'publication_1/theme_1/auth_index.tpl',1,0,NULL),(6,'publication_1/theme_1/auth_password-restore-after.tpl',1,0,NULL),(7,'publication_1/theme_1/auth_password-restore-finish.tpl',1,0,NULL),(8,'publication_1/theme_1/auth_password-restore.tpl',1,0,NULL),(9,'publication_1/theme_1/dashboard_index.tpl',1,0,NULL),(10,'publication_1/theme_1/email_confirm.tpl',1,0,NULL),(11,'publication_1/theme_1/email_password-restore.tpl',1,0,NULL),(12,'publication_1/theme_1/front.tpl',1,0,NULL),(13,'publication_1/theme_1/issue.tpl',1,0,NULL),(14,'publication_1/theme_1/layout.tpl',1,0,NULL),(15,'publication_1/theme_1/newscoop_paywall_cancel.tpl',1,0,NULL),(16,'publication_1/theme_1/newscoop_paywall_error.tpl',1,0,NULL),(17,'publication_1/theme_1/newscoop_paywall_get.tpl',1,0,NULL),(18,'publication_1/theme_1/newscoop_paywall_success.tpl',1,0,NULL),(19,'publication_1/theme_1/page.tpl',1,0,NULL),(20,'publication_1/theme_1/register_after.tpl',1,0,NULL),(21,'publication_1/theme_1/register_confirm.tpl',1,0,NULL),(22,'publication_1/theme_1/register_index.tpl',1,0,NULL),(23,'publication_1/theme_1/register_pending.tpl',1,0,NULL),(24,'publication_1/theme_1/register_social.tpl',1,0,NULL),(25,'publication_1/theme_1/rss.tpl',1,0,NULL),(26,'publication_1/theme_1/search.tpl',1,0,NULL),(27,'publication_1/theme_1/section-columnists.tpl',1,0,NULL),(28,'publication_1/theme_1/section.tpl',1,0,NULL),(29,'publication_1/theme_1/section_standard_pagination.tpl',1,0,NULL),(30,'publication_1/theme_1/topic.tpl',1,0,NULL),(31,'publication_1/theme_1/user_index.tpl',1,0,NULL),(32,'publication_1/theme_1/user_profile.tpl',1,0,NULL),(33,'publication_1/theme_1/_edit-article.tpl',1,0,NULL),(34,'publication_1/theme_1/_html-foot.tpl',1,0,NULL),(35,'publication_1/theme_1/_html-head.tpl',1,0,NULL),(36,'publication_1/theme_1/article-comments-form.tpl',1,0,NULL),(37,'publication_1/theme_1/article-comments-li.tpl',1,0,NULL),(38,'publication_1/theme_1/article-comments.tpl',1,0,NULL),(39,'publication_1/theme_1/article-cont.tpl',1,0,NULL),(40,'publication_1/theme_1/article-rating.tpl',1,0,NULL),(41,'publication_1/theme_1/article-slideshow.tpl',1,0,NULL),(42,'publication_1/theme_1/article_icons.tpl',1,0,NULL),(43,'publication_1/theme_1/box-most_tabs.tpl',1,0,NULL),(44,'publication_1/theme_1/community-feed.tpl',1,0,NULL),(45,'publication_1/theme_1/debate-answers.tpl',1,0,NULL),(46,'publication_1/theme_1/debate-deadline.tpl',1,0,NULL),(47,'publication_1/theme_1/debate-votes-total.tpl',1,0,NULL),(48,'publication_1/theme_1/debate-voting.tpl',1,0,NULL),(49,'publication_1/theme_1/footer.tpl',1,0,NULL),(50,'publication_1/theme_1/front-columnists.tpl',1,0,NULL),(51,'publication_1/theme_1/front-poll.tpl',1,0,NULL),(52,'publication_1/theme_1/front_article_cont.tpl',1,0,NULL),(53,'publication_1/theme_1/header.tpl',1,0,NULL),(54,'publication_1/theme_1/pagination-search.tpl',1,0,NULL),(55,'publication_1/theme_1/pagination.tpl',1,0,NULL),(56,'publication_1/theme_1/paginator-control.tpl',1,0,NULL),(57,'publication_1/theme_1/relative_date.tpl',1,0,NULL),(58,'publication_1/theme_1/section_columnist_cont.tpl',1,0,NULL),(59,'publication_1/theme_1/section_cont.tpl',1,0,NULL),(60,'publication_1/theme_1/section_standard_cont.tpl',1,0,NULL),(61,'publication_1/theme_1/topic_cont.tpl',1,0,NULL),(62,'publication_1/theme_1/user-content.tpl',1,0,NULL),(63,'publication_1/theme_1/user-image.tpl',1,0,NULL),(64,'publication_1/theme_1/user-name.tpl',1,0,NULL),(65,'publication_1/theme_1/_tpl/_edit-article.tpl',1,0,NULL),(66,'publication_1/theme_1/_tpl/_html-foot.tpl',1,0,NULL),(67,'publication_1/theme_1/_tpl/_html-head.tpl',1,0,NULL),(68,'publication_1/theme_1/_tpl/article-comments-form.tpl',1,0,NULL),(69,'publication_1/theme_1/_tpl/article-comments-li.tpl',1,0,NULL),(70,'publication_1/theme_1/_tpl/article-comments.tpl',1,0,NULL),(71,'publication_1/theme_1/_tpl/article-cont.tpl',1,0,NULL),(72,'publication_1/theme_1/_tpl/article-rating.tpl',1,0,NULL),(73,'publication_1/theme_1/_tpl/article-slideshow.tpl',1,0,NULL),(74,'publication_1/theme_1/_tpl/article_icons.tpl',1,0,NULL),(75,'publication_1/theme_1/_tpl/box-most_tabs.tpl',1,0,NULL),(76,'publication_1/theme_1/_tpl/community-feed.tpl',1,0,NULL),(77,'publication_1/theme_1/_tpl/debate-answers.tpl',1,0,NULL),(78,'publication_1/theme_1/_tpl/debate-deadline.tpl',1,0,NULL),(79,'publication_1/theme_1/_tpl/debate-votes-total.tpl',1,0,NULL),(80,'publication_1/theme_1/_tpl/debate-voting.tpl',1,0,NULL),(81,'publication_1/theme_1/_tpl/footer.tpl',1,0,NULL),(82,'publication_1/theme_1/_tpl/front-columnists.tpl',1,0,NULL),(83,'publication_1/theme_1/_tpl/front-poll.tpl',1,0,NULL),(84,'publication_1/theme_1/_tpl/front_article_cont.tpl',1,0,NULL),(85,'publication_1/theme_1/_tpl/header.tpl',1,0,NULL),(86,'publication_1/theme_1/_tpl/pagination-search.tpl',1,0,NULL),(87,'publication_1/theme_1/_tpl/pagination.tpl',1,0,NULL),(88,'publication_1/theme_1/_tpl/paginator-control.tpl',1,0,NULL),(89,'publication_1/theme_1/_tpl/relative_date.tpl',1,0,NULL),(90,'publication_1/theme_1/_tpl/section_columnist_cont.tpl',1,0,NULL),(91,'publication_1/theme_1/_tpl/section_cont.tpl',1,0,NULL),(92,'publication_1/theme_1/_tpl/section_standard_cont.tpl',1,0,NULL),(93,'publication_1/theme_1/_tpl/topic_cont.tpl',1,0,NULL),(94,'publication_1/theme_1/_tpl/user-content.tpl',1,0,NULL),(95,'publication_1/theme_1/_tpl/user-image.tpl',1,0,NULL),(96,'publication_1/theme_1/_tpl/user-name.tpl',1,0,NULL);\n/*!40000 ALTER TABLE `Templates` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `TimeUnits`\n--\n\nLOCK TABLES `TimeUnits` WRITE;\n/*!40000 ALTER TABLE `TimeUnits` DISABLE KEYS */;\nINSERT INTO `TimeUnits` VALUES ('D',1,'days'),('W',1,'weeks'),('M',1,'months'),('Y',1,'years'),('D',18,'dagar'),('W',18,'veckor'),('M',18,'mÃ¥nader'),('Y',18,'Ã¥r'),('D',13,'dÃ­as'),('W',13,'semanas'),('M',13,'meses'),('Y',13,'aÃ±os'),('D',12,'days'),('W',12,'weeks'),('M',12,'months'),('Y',12,'years');\n/*!40000 ALTER TABLE `TimeUnits` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `TopicFields`\n--\n\nLOCK TABLES `TopicFields` WRITE;\n/*!40000 ALTER TABLE `TopicFields` DISABLE KEYS */;\n/*!40000 ALTER TABLE `TopicFields` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `TopicNames`\n--\n\nLOCK TABLES `TopicNames` WRITE;\n/*!40000 ALTER TABLE `TopicNames` DISABLE KEYS */;\nINSERT INTO `TopicNames` VALUES (1,1,'Breaking News'),(2,1,'Local News'),(3,1,'People'),(4,1,'Accidents'),(5,1,'Highway Accidents'),(6,1,'Airplane Accidents'),(7,1,'Geography');\n/*!40000 ALTER TABLE `TopicNames` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Topics`\n--\n\nLOCK TABLES `Topics` WRITE;\n/*!40000 ALTER TABLE `Topics` DISABLE KEYS */;\nINSERT INTO `Topics` VALUES (1,13,14),(2,11,12),(3,9,10),(4,3,8),(5,6,7),(6,4,5),(7,1,2);\n/*!40000 ALTER TABLE `Topics` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Translations`\n--\n\nLOCK TABLES `Translations` WRITE;\n/*!40000 ALTER TABLE `Translations` DISABLE KEYS */;\nINSERT INTO `Translations` VALUES (1,1,1,'article'),(2,2,0,'Sourcefabric Jingle');\n/*!40000 ALTER TABLE `Translations` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `URLTypes`\n--\n\nLOCK TABLES `URLTypes` WRITE;\n/*!40000 ALTER TABLE `URLTypes` DISABLE KEYS */;\nINSERT INTO `URLTypes` VALUES (1,'template path',''),(2,'short names','');\n/*!40000 ALTER TABLE `URLTypes` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Versions`\n--\n\nLOCK TABLES `Versions` WRITE;\n/*!40000 ALTER TABLE `Versions` DISABLE KEYS */;\nINSERT INTO `Versions` VALUES (1,'last_db_version','4.3.x','2014-01-14 16:34:35'),(2,'last_db_roll','2014.04.11','2014-05-07 07:51:33');\n/*!40000 ALTER TABLE `Versions` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Widget`\n--\n\nLOCK TABLES `Widget` WRITE;\n/*!40000 ALTER TABLE `Widget` DISABLE KEYS */;\nINSERT INTO `Widget` VALUES (1,'article-lists/ArticleDiagramsWidget.php','ArticleDiagramsWidget'),(2,'article-lists/MostPopularArticlesWidget.php','MostPopularArticlesWidget'),(3,'article-lists/PendingArticlesWidget.php','PendingArticlesWidget'),(4,'article-lists/RecentlyModifiedArticlesWidget.php','RecentlyModifiedArticlesWidget'),(5,'article-lists/RecentlyPublishedArticlesWidget.php','RecentlyPublishedArticlesWidget'),(6,'article-lists/SubmittedArticlesWidget.php','SubmittedArticlesWidget'),(7,'article-lists/YourArticlesWidget.php','YourArticlesWidget'),(8,'feed-reader/FeedReader.php','FeedReader'),(9,'google-gadgets/GoogleGadget.php','GoogleGadget'),(10,'google-gadgets/MapsGoogleGadget.php','MapsGoogleGadget'),(11,'hello-world/HelloWorld.php','HelloWorld'),(12,'media-archive/ImageListWidget.php','ImageListWidget'),(13,'media-archive/MediaListWidget.php','MediaListWidget'),(14,'sourcefabric/SourcefabricDevFeed.php','SourcefabricDevFeed'),(15,'sourcefabric/SourcefabricFeed.php','SourcefabricFeed'),(16,'sourcefabric/SourcefabricNewsletter.php','SourcefabricNewsletter'),(17,'wikipedia/SearchWikipedia.php','SearchWikipedia');\n/*!40000 ALTER TABLE `Widget` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `WidgetContext`\n--\n\nLOCK TABLES `WidgetContext` WRITE;\n/*!40000 ALTER TABLE `WidgetContext` DISABLE KEYS */;\nINSERT INTO `WidgetContext` VALUES (3,'dashboard1'),(4,'dashboard2');\n/*!40000 ALTER TABLE `WidgetContext` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `WidgetContext_Widget`\n--\n\nLOCK TABLES `WidgetContext_Widget` WRITE;\n/*!40000 ALTER TABLE `WidgetContext_Widget` DISABLE KEYS */;\nINSERT INTO `WidgetContext_Widget` VALUES ('w07a1a233d1da',3,2,1,8,''),('w45fc000d1adf',3,3,1,10,''),('we7cbcde0dfba',3,4,1,2,''),('wc38cea14283a',3,5,1,6,''),('w7a4f5d45d47e',3,6,1,4,''),('w3e394fe8a1af',3,7,1,0,''),('w41b45fbaf7c4',4,10,1,5,''),('wba2cb28fdf55',4,14,1,9,''),('w6dca4571d6ae',4,15,1,1,''),('w39e2d614f7ae',4,16,1,3,''),('wda2855162ae8',4,17,1,7,'');\n/*!40000 ALTER TABLE `WidgetContext_Widget` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Xdebate`\n--\n\nLOCK TABLES `Xdebate` WRITE;\n/*!40000 ALTER TABLE `Xdebate` DISABLE KEYS */;\nINSERT INTO `Xdebate` VALUES (13,1,'<p>In vix eius errem mandamus, vel ea ocurreret corrumpit vituperata, alii ocurreret cum id. Est ei scripta erroribus, et cum etiam quando explicari. At nam assum erroribus constituto. Vim ea cibo repudiare, id ius unum eirmod. Id eos dicit definitionem. His ei aeque suscipit, cu saperet indoctum vel, in nullam doming postulant vim.</p>','Preserving part of our history','<p>Ex idque conceptam sed. Magna quando at eam. Has an stet augue omittam. Vix ea ipsum voluptua, cu vix delectus recteque repudiandae. Id modus perfecto maluisset mei, nec et illud laudem interpretaris. Mentitum argumentum intellegam nam ea, ex iuvaret torquatos his, his te iuvaret evertitur.</p>\\r\\n<p>Pro ut ullum affert possim, eos laoreet fuisset invenire ad, phaedrum oportere nam ut. Pro id veri consul nostrud. Eam ea audire molestiae, te cum viderer labores. Ne amet dicat clita mel. Mei id reque munere interpretaris, quod viris per ne, et magna voluptatibus ius. No dico homero nam.</p>\\r\\n<p>Has no quem referrentur, sit mediocrem abhorreant ne. Sed noluisse apeirian cu. Mutat deterruisset est et. Quem periculis constituto in vis. Qui at autem omnesque ocurreret.</p>\\r\\n<p>Sint impedit perfecto an vix. Solum ceteros mel et, illud utamur has id. Ad affert nominavi vituperata vis. Everti platonem honestatis cu sea, ad noluisse gubergren nec. Nominati ocurreret consulatu vis ea.</p>','Wall is the shame, ruin it','<p>Mentitum argumentum intellegam nam ea, ex iuvaret torquatos his, his te iuvaret evertitur.</p>\\r\\n<p>Pro ut ullum affert possim, eos laoreet fuisset invenire ad, phaedrum oportere nam ut. Pro id veri consul nostrud. Eam ea audire molestiae, te cum viderer labores. Ne amet dicat clita mel. Mei id reque munere interpretaris, quod viris per ne, et magna voluptatibus ius. No dico homero nam.</p>\\r\\n<p>Has no quem referrentur, sit mediocrem abhorreant ne. Sed noluisse apeirian cu. Mutat deterruisset est et. Quem periculis constituto in vis. Qui at autem omnesque ocurreret.</p>\\r\\n<p>Sint impedit perfecto an vix. Solum ceteros mel et, illud utamur has id. Ad affert nominavi vituperata vis. Everti platonem honestatis cu sea, ad noluisse gubergren nec. Nominati ocurreret consulatu vis ea.</p>\\r\\n<p>Duo alia erat patrioque no, et voluptua indoctum eam. Minim senserit moderatius quo ei, pro rebum errem explicari ex, has ne postea regione perfecto. Probo delicata expetendis pri an. Ea tritani nostrum est, eius sanctus ea pri. Ei mea aeque nihil maluisset.</p>\\r\\n<p>Eam id nobis audire detraxit. Enim salutandi sit cu. Vix nusquam adversarium id, dicta primis efficiendi his in. Verear eripuit ei vel, usu et feugait periculis. Eum cu alia persius.</p>\\r\\n<p>Ad mei odio choro urbanitas, ad pertinacia disputationi his. Eam movet fastidii splendide et, ei alii primis delenit mei. Usu ne putant lucilius. Dicta utinam mollis nec ad. Melius scriptorem eu duo, mea id vocibus appellantur delicatissimi. Duo blandit recusabo in.</p>'),(30,1,'<p>Sea te facete dolores erroribus, est id primis fastidii mnesarchum, sit sale inimicus mediocrem cu. Ut sit viderer volutpat, no his eius erroribus. Ex erat eloquentiam sea. Ad soluta admodum eam, aperiri euripidis inciderint duo ad, vix possim commodo no. Falli eirmod scribentur cum ad, vidisse neglegentur eum at.</p>','More teams, better competition','<p>Sit ex dicunt blandit conclusionemque, est vocibus elaboraret no. Eu natum scripserit theophrastus duo, tale illud reprimique duo id, ad vix ferri dissentiunt necessitatibus. Cibo recusabo eum an.</p>\\r\\n<p>Sea te facete dolores erroribus, est id primis fastidii mnesarchum, sit sale inimicus mediocrem cu. Ut sit viderer volutpat, no his eius erroribus. Ex erat eloquentiam sea. Ad soluta admodum eam, aperiri euripidis inciderint duo ad, vix possim commodo no. Falli eirmod scribentur cum ad, vidisse neglegentur eum at.</p>\\r\\n<p>Adhuc fastidii mea id. Error mentitum pro ei, mel quis viderer gubergren cu, id cum dicam sententiae omittantur. His erat ceteros eloquentiam et, eu duis feugiat praesent eos. Cu lorem vitae assentior has, cibo quodsi sanctus has ne, homero timeam eum et.</p>\\r\\n<p>Sed autem recusabo et. Te per integre epicuri. Congue accusata ut est. Mea quas malis cu. Te pro adhuc imperdiet, aeterno maiorum euripidis pro id.</p>\\r\\n<p>Quem eloquentiam eos id, eu wisi persius invenire sea. Vis legendos suavitate et, ius ullum tibique hendrerit id, duo tale eligendi in. Liber aeterno eruditi pro ex. Quod volumus principes vim ea, in vix simul nominavi. Per te graeco aliquip, ut cum alii illum. Vix ex quod ullamcorper. Ullum harum accusata eos ut, cu vix ullum cotidieque.</p>','League is already too big','<p>Aliquid adversarium reprehendunt pri cu, sea an aperiri labores imperdiet, sea corpora quaestio conceptam an! Dicat corrumpit scriptorem per et, postulant pertinacia ex sed, duo saperet singulis repudiare ne? Ea his doming percipit, per admodum conceptam consequuntur ex. Eum admodum civibus referrentur te, eius audiam ei duo? Vero porro gubergren vel no.</p>\\r\\n<p>Ut apeirian praesent quo! Usu te molestie intellegam, id mea unum appetere, in vix modo homero? Et sit magna saepe, inani tibique vim ne. Id sit amet scripta scripserit, mutat bonorum usu cu. Id his interesset eloquentiam interpretaris, impedit mentitum similique sed in. Qui labitur fabellas moderatius id, mel platonem forensibus ut? Cu reque ubique omnesque cum?</p>\\r\\n<p>In vero adipisci consectetuer sea, ex qualisque reprimique vis, vix ea persius blandit signiferumque? At nibh docendi adversarium per, mei case noluisse ad, ex qui putent torquatos. Ne illud legendos democritum eum, id usu mazim conclusionemque. Pro timeam vidisse an, dictas voluptua sit eu? An sea harum platonem, erant alienum mei et. Eleifend sadipscing eam ea, voluptua deterruisset has id, nam novum simul hendrerit te! Nec sale persius ei, vim ei euismod assueverit omittantur.</p>\\r\\n<p>Ea usu doming meliore laboramus, in nec quidam tritani eruditi. Eam congue fastidii id, vim recteque consequat voluptaria ut. Cum purto delenit omittantur id, mazim propriae mea an! Diam oporteat ut est, suscipit delicata ei qui? Est virtute tractatos te, delectus scaevola cu duo.</p>');\n/*!40000 ALTER TABLE `Xdebate` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Xlink`\n--\n\nLOCK TABLES `Xlink` WRITE;\n/*!40000 ALTER TABLE `Xlink` DISABLE KEYS */;\nINSERT INTO `Xlink` VALUES (35,1,'http://www.sourcefabric.org'),(36,1,'http://newscoop.sourcefabric.org'),(37,1,'http://airtime.sourcefabric.org'),(38,1,'http://www.sourcefabric.org/en/services/'),(39,1,'http://www.sourcefabric.org/en/community/joinus/');\n/*!40000 ALTER TABLE `Xlink` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Xnews`\n--\n\nLOCK TABLES `Xnews` WRITE;\n/*!40000 ALTER TABLE `Xnews` DISABLE KEYS */;\nINSERT INTO `Xnews` VALUES (2,1,0,'Cibo nostro et sea, eu mei alia decore electram, adhuc option corpora vim ad. Sea an eripuit corpora, quas iuvaret maiestatis ad sit, duo ei velit necessitatibus.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(3,1,0,'Duo voluptua consetetur te, an minimum nominati vix, modo tempor constituto id cum. Eam laudem mentitum definitiones ad. Mel ludus tritani elaboraret ne, voluptua praesent cu sea.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(4,1,1,'Putant conceptam id pri, at vis fuisset invidunt. Alia viderer te mel. An per sale malorum sadipscing, saepe graeco accusata in cum.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(5,1,1,'An vel laoreet molestiae. Est nobis eripuit probatus an, te his illum dicant. Eu dicit verterem assueverit duo. Vix ei audire latine virtute, quod nonummy nam et, ad per graece vituperata.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(6,1,1,'No ponderum conceptam sadipscing sit, puto iusto ea mel. Vel eu melius mandamus, kasd definitionem ne sit. Cum ei repudiandae instructior, eam id fabulas ornatus meliore.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(7,1,0,'Qui utinam aperiri scribentur ex, eum an doming veritus omnesque. Pro ne impedit molestie, oratio alterum ex nec. Vivendum pertinacia ne his, est in mucius euismod splendide, id assum appareat vis.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(8,1,0,'Est et utinam audire, habeo aliquyam his ne, ex ius iudico nostrud eripuit. Impetus eripuit pertinacia et mel, dicunt luptatum detraxit ne his. Ea sed dissentias inciderint, ea est graece meliore voluptatum.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(9,1,0,'Euripidis elaboraret conclusionemque cum an, pro ut exerci docendi. An ius nemore pericula consequuntur, in has reque errem populo. Ut pri nostro maiestatis, ne vero veri nulla eam, eos ea liber affert.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(10,1,0,'Nec ne justo ridens vulputate, mel labores vulputate mnesarchum at. Cu unum ornatus albucius eam, nusquam singulis ne quo, et vix ullum ocurreret. Commodo constituam an usu, aliquam eloquentiam','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(11,1,1,'Cu unum ornatus albucius eam, nusquam singulis ne quo, et vix ullum ocurreret. Commodo constituam an usu, aliquam eloquentiam theophrastus et sea. Vidit ferri ex sit. Et debitis copiosae legendos duo','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(12,1,0,'Vis eu melius tibique, ex quas assentior eos, exerci soleat ea mei. Malorum prompta maiestatis ius at, vim movet cotidieque ei. Erroribus torquatos vel et, pri nostro causae gubergren id.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(14,1,0,'Vidit ferri ex sit. Et debitis copiosae legendos duo, usu ea tota atomorum philosophia. Eum expetenda vulputate persecuti ad, cu erant menandri scripserit qui','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(15,1,1,'Pro ne fabulas quaestio, sit ridens consectetuer et, te has dicunt ornatus minimum. Ius elit ornatus an. Has in dictas noluisse insolens, has cu postea sensibus','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(16,1,1,'Ei libris facete Ã¥ccusam eum. Etiam viderer in meÃ¦, vel alienum rÃ¥tionibus in. Laudem maiestatis et nÃ¦m. Dicam oratiÃ¸ has Ã¦t. Nobis invenire an cum, usu Ã¥n delectus electram moderatius. Aperiri repudiare meÃ¦ Ã¥t, ex nec enim repudiare Ã¥ssentior.','<p>PrÃ¸ sale option te, nec nÃ¸ cibo cÃ¸mprehensÃ¥m. Qui aperiri sapientem in, vix eu dolorum disputÃ¥tioni. Eos in Ã¥ppareÃ¥t expetendÃ¦ iudicabit. Ad ius elit honestatis cÃ¸tidieque, in euismod fuisset corporÃ¦ usu. Ludus expetenda conclusionemque te qui, autem mucius complectitur ut per. Sed te porro recteque intellegam.</p>\\r\\n<p>Vim id aeterno fabulas, pro ex prima nemÃ¸re mentitum. Paulo dolor ei mea. No iuvaret aliquam eam. Eu illum Ã¸fficiis nominÃ¥ti vim. Vim ei decÃ¸re liberÃ¦visse, ei eos nihil perfecto, cu habeo oblique antiopÃ¥m pro.</p>\\r\\n<p>Vel summo mÃ¸deratius ei, ex pri sonet Ã¥lienum praesent. Eu est consulatu instructior, id novum sÃ¦nctus temporibus has. Corpora percipit his ut. Sed in probo primÃ¥, pro sÃ¸let verear deserunt et. Ei quem malis usu, diceret delectus apeiriÃ¥n nÃ¸ vis. Falli legimus instructior est te, et sÃ¸leÃ¥t perfecto eam, laoreet fÃ¥cilis ne meÃ¦.</p>\\r\\n<p>Ã†n vel brute forensibus. UtinÃ¦m consulatu an nec, cu quo regione feugait phaedrum. Id sit alterum adolescens instructior. Decore viderer eÃ¦m an. TotÃ¥ quaerendum at eum, mei aliquip bonorum percipit ei. Meis gloriatur vis cu, nisl ferri illum Ã¦t mei. Cu pri essent dissentiunt.</p>\\r\\n<p>NÃ¦m an constituto intellegÃ¦m ullamcorper, meÃ¥ aliquip cÃ¸mmune in. Nominavi quaerendum sea id, te sit elit civibus delicatissimi, eu est sumo vidit docendi. Ex rebum liber nam, in est atomorum definitiÃ¸nes. Ã†t ius offendit quÃ¥estio suÃ¥vitÃ¥te, nominÃ¦vi detrÃ¥xit ut seÃ¥. Minimum definiebÃ¥s cu vix, ad eos pÃ¦ulo convenire, sea inÃ¥ni Ã¦ccusÃ¥mus ei. Eos ex aliquid accusÃ¥m luptatum, ad ius integre argumentum, movet erroribus posidÃ¸nium id has.</p>\\r\\n<p>Cum ei porrÃ¸ veniam delectus, meÃ¦ ad noluisse persecuti. Eu pÃ¦ulo oratio diceret pri. HÃ¥s nusquÃ¥m tacimÃ¦tes ei, te meÃ¥ nobis qualisque, et cetero phaedrum antiopam mea. Vocent utroque mei no, equidem insolens recteque ad sit, ne wisi singulis necessitatibus vel. Mel ad ferri referrentur. Nec habemus docendi in, mea case lorem essent ei.</p>'),(17,1,0,'BRUSSELS - Italian and Greek candidates nominated for President of the European CouncilÂ in secret ballot.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(18,1,0,'Est dolor dissentias quaerendum ne, per bonorum accusata at. Et mea graeci rationibus, in qui scribentur adversarium efficiantur. Ea tantas decore evertitur mei.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(19,1,0,'Pri rebum labitur principes at, te nec agam discere ornatus. Nonummy convenire has eu.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(20,1,0,'Id dicta harum nam, ne latine labitur eam, inani evertitur forensibus in eum. Cu quo augue consulatu argumentum. Est everti discere definiebas ne, vis in veri ullum. Fugit omnesque assueverit te has.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(21,1,0,'Has scaevola moderatius ei, cu vitae expetendis quaerendum vix. Eu ius dicat euismod, ea vix dicit audire epicurei.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(22,1,0,'Quo id offendit postulant, erat nonummy fastidii ea sea, has te adhuc ipsum. Ius diam rebum eirmod ea. Ne latine labores quo, est quas dissentiunt ex, ei sed legimus intellegat assueverit','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(23,1,1,'Cu mutat nonummy accusata vis. Omnis labitur nec ea, ea quo noster periculis sententiae, detracto appareat eam an. Sed cu dicta accommodare. Id nibh mundi fierent his, id postea volutpat scripserit mel','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(24,1,0,'Cu mel quot instructior, cu has consul delenit senserit. Ei duo nihil oblique mandamus. Est ad agam puto, ea quo suscipit honestatis, quidam repudiandae ius in.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(25,1,0,'Ea gloriatur rationibus efficiendi vis, his an esse adhuc dolor. Sea aperiri alienum definiebas ad. Sea id quod vide consul, et qui tractatos scripserit.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(26,1,0,'Ex ius iudico nostrud eripuit. Impetus eripuit pertinacia et mel, dicunt luptatum detraxit ne his. Ea sed dissentias inciderint, ea est graece meliore voluptatum. Vis an dicta alterum theophrastus, lorem nonumy te has','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(27,1,0,'Usu an sale epicuri, sit voluptua inimicus argumentum ne. Sit te possim tibique, eum an quando tibique praesent, munere maiorum deleniti sea eu. Ut duo nisl sale eleifend, et eum sapientem laboramus vulputate.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(28,1,0,'Malorum prompta maiestatis ius at, vim movet cotidieque ei. Erroribus torquatos vel et, pri nostro causae gubergren id. Per ut cetero laoreet recteque, cetero lucilius phaedrum his at.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(29,1,0,'Malorum prompta maiestatis ius at, vim movet cotidieque ei. Erroribus torquatos vel et, pri nostro causae gubergren id. Per ut cetero laoreet recteque, cetero lucilius phaedrum his at','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(40,1,0,'BRUSSELS - Italian and Greek candidates nominated for President of the European CouncilÂ in secret ballot.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(41,1,1,'Ei libris facete Ã¥ccusam eum. Etiam viderer in meÃ¦, vel alienum rÃ¥tionibus in. Laudem maiestatis et nÃ¦m. Dicam oratiÃ¸ has Ã¦t. Nobis invenire an cum, usu Ã¥n delectus electram moderatius. Aperiri repudiare meÃ¦ Ã¥t, ex nec enim repudiare Ã¥ssentior.','<p>PrÃ¸ sale option te, nec nÃ¸ cibo cÃ¸mprehensÃ¥m. Qui aperiri sapientem in, vix eu dolorum disputÃ¥tioni. Eos in Ã¥ppareÃ¥t expetendÃ¦ iudicabit. Ad ius elit honestatis cÃ¸tidieque, in euismod fuisset corporÃ¦ usu. Ludus expetenda conclusionemque te qui, autem mucius complectitur ut per. Sed te porro recteque intellegam.</p>\\r\\n<p>Vim id aeterno fabulas, pro ex prima nemÃ¸re mentitum. Paulo dolor ei mea. No iuvaret aliquam eam. Eu illum Ã¸fficiis nominÃ¥ti vim. Vim ei decÃ¸re liberÃ¦visse, ei eos nihil perfecto, cu habeo oblique antiopÃ¥m pro.</p>\\r\\n<p>Vel summo mÃ¸deratius ei, ex pri sonet Ã¥lienum praesent. Eu est consulatu instructior, id novum sÃ¦nctus temporibus has. Corpora percipit his ut. Sed in probo primÃ¥, pro sÃ¸let verear deserunt et. Ei quem malis usu, diceret delectus apeiriÃ¥n nÃ¸ vis. Falli legimus instructior est te, et sÃ¸leÃ¥t perfecto eam, laoreet fÃ¥cilis ne meÃ¦.</p>\\r\\n<p>Ã†n vel brute forensibus. UtinÃ¦m consulatu an nec, cu quo regione feugait phaedrum. Id sit alterum adolescens instructior. Decore viderer eÃ¦m an. TotÃ¥ quaerendum at eum, mei aliquip bonorum percipit ei. Meis gloriatur vis cu, nisl ferri illum Ã¦t mei. Cu pri essent dissentiunt.</p>\\r\\n<p>NÃ¦m an constituto intellegÃ¦m ullamcorper, meÃ¥ aliquip cÃ¸mmune in. Nominavi quaerendum sea id, te sit elit civibus delicatissimi, eu est sumo vidit docendi. Ex rebum liber nam, in est atomorum definitiÃ¸nes. Ã†t ius offendit quÃ¥estio suÃ¥vitÃ¥te, nominÃ¦vi detrÃ¥xit ut seÃ¥. Minimum definiebÃ¥s cu vix, ad eos pÃ¦ulo convenire, sea inÃ¥ni Ã¦ccusÃ¥mus ei. Eos ex aliquid accusÃ¥m luptatum, ad ius integre argumentum, movet erroribus posidÃ¸nium id has.</p>\\r\\n<p>Cum ei porrÃ¸ veniam delectus, meÃ¦ ad noluisse persecuti. Eu pÃ¦ulo oratio diceret pri. HÃ¥s nusquÃ¥m tacimÃ¦tes ei, te meÃ¥ nobis qualisque, et cetero phaedrum antiopam mea. Vocent utroque mei no, equidem insolens recteque ad sit, ne wisi singulis necessitatibus vel. Mel ad ferri referrentur. Nec habemus docendi in, mea case lorem essent ei.</p>'),(42,1,1,'Pro ne fabulas quaestio, sit ridens consectetuer et, te has dicunt ornatus minimum. Ius elit ornatus an. Has in dictas noluisse insolens, has cu postea sensibus','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(43,1,0,'Vidit ferri ex sit. Et debitis copiosae legendos duo, usu ea tota atomorum philosophia. Eum expetenda vulputate persecuti ad, cu erant menandri scripserit qui','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(44,1,0,'Vidit ferri ex sit. Et debitis copiosae legendos duo, usu ea tota atomorum philosophia. Eum expetenda vulputate persecuti ad, cu erant menandri scripserit qui','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(45,1,1,'Pro ne fabulas quaestio, sit ridens consectetuer et, te has dicunt ornatus minimum. Ius elit ornatus an. Has in dictas noluisse insolens, has cu postea sensibus','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(46,1,1,'Ei libris facete Ã¥ccusam eum. Etiam viderer in meÃ¦, vel alienum rÃ¥tionibus in. Laudem maiestatis et nÃ¦m. Dicam oratiÃ¸ has Ã¦t. Nobis invenire an cum, usu Ã¥n delectus electram moderatius. Aperiri repudiare meÃ¦ Ã¥t, ex nec enim repudiare Ã¥ssentior.','<p>PrÃ¸ sale option te, nec nÃ¸ cibo cÃ¸mprehensÃ¥m. Qui aperiri sapientem in, vix eu dolorum disputÃ¥tioni. Eos in Ã¥ppareÃ¥t expetendÃ¦ iudicabit. Ad ius elit honestatis cÃ¸tidieque, in euismod fuisset corporÃ¦ usu. Ludus expetenda conclusionemque te qui, autem mucius complectitur ut per. Sed te porro recteque intellegam.</p>\\r\\n<p>Vim id aeterno fabulas, pro ex prima nemÃ¸re mentitum. Paulo dolor ei mea. No iuvaret aliquam eam. Eu illum Ã¸fficiis nominÃ¥ti vim. Vim ei decÃ¸re liberÃ¦visse, ei eos nihil perfecto, cu habeo oblique antiopÃ¥m pro.</p>\\r\\n<p>Vel summo mÃ¸deratius ei, ex pri sonet Ã¥lienum praesent. Eu est consulatu instructior, id novum sÃ¦nctus temporibus has. Corpora percipit his ut. Sed in probo primÃ¥, pro sÃ¸let verear deserunt et. Ei quem malis usu, diceret delectus apeiriÃ¥n nÃ¸ vis. Falli legimus instructior est te, et sÃ¸leÃ¥t perfecto eam, laoreet fÃ¥cilis ne meÃ¦.</p>\\r\\n<p>Ã†n vel brute forensibus. UtinÃ¦m consulatu an nec, cu quo regione feugait phaedrum. Id sit alterum adolescens instructior. Decore viderer eÃ¦m an. TotÃ¥ quaerendum at eum, mei aliquip bonorum percipit ei. Meis gloriatur vis cu, nisl ferri illum Ã¦t mei. Cu pri essent dissentiunt.</p>\\r\\n<p>NÃ¦m an constituto intellegÃ¦m ullamcorper, meÃ¥ aliquip cÃ¸mmune in. Nominavi quaerendum sea id, te sit elit civibus delicatissimi, eu est sumo vidit docendi. Ex rebum liber nam, in est atomorum definitiÃ¸nes. Ã†t ius offendit quÃ¥estio suÃ¥vitÃ¥te, nominÃ¦vi detrÃ¥xit ut seÃ¥. Minimum definiebÃ¥s cu vix, ad eos pÃ¦ulo convenire, sea inÃ¥ni Ã¦ccusÃ¥mus ei. Eos ex aliquid accusÃ¥m luptatum, ad ius integre argumentum, movet erroribus posidÃ¸nium id has.</p>\\r\\n<p>Cum ei porrÃ¸ veniam delectus, meÃ¦ ad noluisse persecuti. Eu pÃ¦ulo oratio diceret pri. HÃ¥s nusquÃ¥m tacimÃ¦tes ei, te meÃ¥ nobis qualisque, et cetero phaedrum antiopam mea. Vocent utroque mei no, equidem insolens recteque ad sit, ne wisi singulis necessitatibus vel. Mel ad ferri referrentur. Nec habemus docendi in, mea case lorem essent ei.</p>'),(47,1,0,'BRUSSELS - Italian and Greek candidates nominated for President of the European CouncilÂ in secret ballot.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(48,1,0,'BRUSSELS - Italian and Greek candidates nominated for President of the European CouncilÂ in secret ballot.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(49,1,1,'Ei libris facete Ã¥ccusam eum. Etiam viderer in meÃ¦, vel alienum rÃ¥tionibus in. Laudem maiestatis et nÃ¦m. Dicam oratiÃ¸ has Ã¦t. Nobis invenire an cum, usu Ã¥n delectus electram moderatius. Aperiri repudiare meÃ¦ Ã¥t, ex nec enim repudiare Ã¥ssentior.','<p>PrÃ¸ sale option te, nec nÃ¸ cibo cÃ¸mprehensÃ¥m. Qui aperiri sapientem in, vix eu dolorum disputÃ¥tioni. Eos in Ã¥ppareÃ¥t expetendÃ¦ iudicabit. Ad ius elit honestatis cÃ¸tidieque, in euismod fuisset corporÃ¦ usu. Ludus expetenda conclusionemque te qui, autem mucius complectitur ut per. Sed te porro recteque intellegam.</p>\\r\\n<p>Vim id aeterno fabulas, pro ex prima nemÃ¸re mentitum. Paulo dolor ei mea. No iuvaret aliquam eam. Eu illum Ã¸fficiis nominÃ¥ti vim. Vim ei decÃ¸re liberÃ¦visse, ei eos nihil perfecto, cu habeo oblique antiopÃ¥m pro.</p>\\r\\n<p>Vel summo mÃ¸deratius ei, ex pri sonet Ã¥lienum praesent. Eu est consulatu instructior, id novum sÃ¦nctus temporibus has. Corpora percipit his ut. Sed in probo primÃ¥, pro sÃ¸let verear deserunt et. Ei quem malis usu, diceret delectus apeiriÃ¥n nÃ¸ vis. Falli legimus instructior est te, et sÃ¸leÃ¥t perfecto eam, laoreet fÃ¥cilis ne meÃ¦.</p>\\r\\n<p>Ã†n vel brute forensibus. UtinÃ¦m consulatu an nec, cu quo regione feugait phaedrum. Id sit alterum adolescens instructior. Decore viderer eÃ¦m an. TotÃ¥ quaerendum at eum, mei aliquip bonorum percipit ei. Meis gloriatur vis cu, nisl ferri illum Ã¦t mei. Cu pri essent dissentiunt.</p>\\r\\n<p>NÃ¦m an constituto intellegÃ¦m ullamcorper, meÃ¥ aliquip cÃ¸mmune in. Nominavi quaerendum sea id, te sit elit civibus delicatissimi, eu est sumo vidit docendi. Ex rebum liber nam, in est atomorum definitiÃ¸nes. Ã†t ius offendit quÃ¥estio suÃ¥vitÃ¥te, nominÃ¦vi detrÃ¥xit ut seÃ¥. Minimum definiebÃ¥s cu vix, ad eos pÃ¦ulo convenire, sea inÃ¥ni Ã¦ccusÃ¥mus ei. Eos ex aliquid accusÃ¥m luptatum, ad ius integre argumentum, movet erroribus posidÃ¸nium id has.</p>\\r\\n<p>Cum ei porrÃ¸ veniam delectus, meÃ¦ ad noluisse persecuti. Eu pÃ¦ulo oratio diceret pri. HÃ¥s nusquÃ¥m tacimÃ¦tes ei, te meÃ¥ nobis qualisque, et cetero phaedrum antiopam mea. Vocent utroque mei no, equidem insolens recteque ad sit, ne wisi singulis necessitatibus vel. Mel ad ferri referrentur. Nec habemus docendi in, mea case lorem essent ei.</p>'),(51,1,0,'Vidit ferri ex sit. Et debitis copiosae legendos duo, usu ea tota atomorum philosophia. Eum expetenda vulputate persecuti ad, cu erant menandri scripserit qui','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(54,1,1,'Ei libris facete Ã¥ccusam eum. Etiam viderer in meÃ¦, vel alienum rÃ¥tionibus in. Laudem maiestatis et nÃ¦m. Dicam oratiÃ¸ has Ã¦t. Nobis invenire an cum, usu Ã¥n delectus electram moderatius. Aperiri repudiare meÃ¦ Ã¥t, ex nec enim repudiare Ã¥ssentior.','<p>PrÃ¸ sale option te, nec nÃ¸ cibo cÃ¸mprehensÃ¥m. Qui aperiri sapientem in, vix eu dolorum disputÃ¥tioni. Eos in Ã¥ppareÃ¥t expetendÃ¦ iudicabit. Ad ius elit honestatis cÃ¸tidieque, in euismod fuisset corporÃ¦ usu. Ludus expetenda conclusionemque te qui, autem mucius complectitur ut per. Sed te porro recteque intellegam.</p>\\r\\n<p>Vim id aeterno fabulas, pro ex prima nemÃ¸re mentitum. Paulo dolor ei mea. No iuvaret aliquam eam. Eu illum Ã¸fficiis nominÃ¥ti vim. Vim ei decÃ¸re liberÃ¦visse, ei eos nihil perfecto, cu habeo oblique antiopÃ¥m pro.</p>\\r\\n<p>Vel summo mÃ¸deratius ei, ex pri sonet Ã¥lienum praesent. Eu est consulatu instructior, id novum sÃ¦nctus temporibus has. Corpora percipit his ut. Sed in probo primÃ¥, pro sÃ¸let verear deserunt et. Ei quem malis usu, diceret delectus apeiriÃ¥n nÃ¸ vis. Falli legimus instructior est te, et sÃ¸leÃ¥t perfecto eam, laoreet fÃ¥cilis ne meÃ¦.</p>\\r\\n<p>Ã†n vel brute forensibus. UtinÃ¦m consulatu an nec, cu quo regione feugait phaedrum. Id sit alterum adolescens instructior. Decore viderer eÃ¦m an. TotÃ¥ quaerendum at eum, mei aliquip bonorum percipit ei. Meis gloriatur vis cu, nisl ferri illum Ã¦t mei. Cu pri essent dissentiunt.</p>\\r\\n<p>NÃ¦m an constituto intellegÃ¦m ullamcorper, meÃ¥ aliquip cÃ¸mmune in. Nominavi quaerendum sea id, te sit elit civibus delicatissimi, eu est sumo vidit docendi. Ex rebum liber nam, in est atomorum definitiÃ¸nes. Ã†t ius offendit quÃ¥estio suÃ¥vitÃ¥te, nominÃ¦vi detrÃ¥xit ut seÃ¥. Minimum definiebÃ¥s cu vix, ad eos pÃ¦ulo convenire, sea inÃ¥ni Ã¦ccusÃ¥mus ei. Eos ex aliquid accusÃ¥m luptatum, ad ius integre argumentum, movet erroribus posidÃ¸nium id has.</p>\\r\\n<p>Cum ei porrÃ¸ veniam delectus, meÃ¦ ad noluisse persecuti. Eu pÃ¦ulo oratio diceret pri. HÃ¥s nusquÃ¥m tacimÃ¦tes ei, te meÃ¥ nobis qualisque, et cetero phaedrum antiopam mea. Vocent utroque mei no, equidem insolens recteque ad sit, ne wisi singulis necessitatibus vel. Mel ad ferri referrentur. Nec habemus docendi in, mea case lorem essent ei.</p>'),(55,1,0,'BRUSSELS - Italian and Greek candidates nominated for President of the European CouncilÂ in secret ballot.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(56,1,0,'BRUSSELS - Italian and Greek candidates nominated for President of the European CouncilÂ in secret ballot.','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(57,1,1,'Ei libris facete Ã¥ccusam eum. Etiam viderer in meÃ¦, vel alienum rÃ¥tionibus in. Laudem maiestatis et nÃ¦m. Dicam oratiÃ¸ has Ã¦t. Nobis invenire an cum, usu Ã¥n delectus electram moderatius. Aperiri repudiare meÃ¦ Ã¥t, ex nec enim repudiare Ã¥ssentior.','<p>PrÃ¸ sale option te, nec nÃ¸ cibo cÃ¸mprehensÃ¥m. Qui aperiri sapientem in, vix eu dolorum disputÃ¥tioni. Eos in Ã¥ppareÃ¥t expetendÃ¦ iudicabit. Ad ius elit honestatis cÃ¸tidieque, in euismod fuisset corporÃ¦ usu. Ludus expetenda conclusionemque te qui, autem mucius complectitur ut per. Sed te porro recteque intellegam.</p>\\r\\n<p>Vim id aeterno fabulas, pro ex prima nemÃ¸re mentitum. Paulo dolor ei mea. No iuvaret aliquam eam. Eu illum Ã¸fficiis nominÃ¥ti vim. Vim ei decÃ¸re liberÃ¦visse, ei eos nihil perfecto, cu habeo oblique antiopÃ¥m pro.</p>\\r\\n<p>Vel summo mÃ¸deratius ei, ex pri sonet Ã¥lienum praesent. Eu est consulatu instructior, id novum sÃ¦nctus temporibus has. Corpora percipit his ut. Sed in probo primÃ¥, pro sÃ¸let verear deserunt et. Ei quem malis usu, diceret delectus apeiriÃ¥n nÃ¸ vis. Falli legimus instructior est te, et sÃ¸leÃ¥t perfecto eam, laoreet fÃ¥cilis ne meÃ¦.</p>\\r\\n<p>Ã†n vel brute forensibus. UtinÃ¦m consulatu an nec, cu quo regione feugait phaedrum. Id sit alterum adolescens instructior. Decore viderer eÃ¦m an. TotÃ¥ quaerendum at eum, mei aliquip bonorum percipit ei. Meis gloriatur vis cu, nisl ferri illum Ã¦t mei. Cu pri essent dissentiunt.</p>\\r\\n<p>NÃ¦m an constituto intellegÃ¦m ullamcorper, meÃ¥ aliquip cÃ¸mmune in. Nominavi quaerendum sea id, te sit elit civibus delicatissimi, eu est sumo vidit docendi. Ex rebum liber nam, in est atomorum definitiÃ¸nes. Ã†t ius offendit quÃ¥estio suÃ¥vitÃ¥te, nominÃ¦vi detrÃ¥xit ut seÃ¥. Minimum definiebÃ¥s cu vix, ad eos pÃ¦ulo convenire, sea inÃ¥ni Ã¦ccusÃ¥mus ei. Eos ex aliquid accusÃ¥m luptatum, ad ius integre argumentum, movet erroribus posidÃ¸nium id has.</p>\\r\\n<p>Cum ei porrÃ¸ veniam delectus, meÃ¦ ad noluisse persecuti. Eu pÃ¦ulo oratio diceret pri. HÃ¥s nusquÃ¥m tacimÃ¦tes ei, te meÃ¥ nobis qualisque, et cetero phaedrum antiopam mea. Vocent utroque mei no, equidem insolens recteque ad sit, ne wisi singulis necessitatibus vel. Mel ad ferri referrentur. Nec habemus docendi in, mea case lorem essent ei.</p>'),(58,1,1,'Pro ne fabulas quaestio, sit ridens consectetuer et, te has dicunt ornatus minimum. Ius elit ornatus an. Has in dictas noluisse insolens, has cu postea sensibus','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(59,1,0,'Vidit ferri ex sit. Et debitis copiosae legendos duo, usu ea tota atomorum philosophia. Eum expetenda vulputate persecuti ad, cu erant menandri scripserit qui','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(60,1,0,'Vidit ferri ex sit. Et debitis copiosae legendos duo, usu ea tota atomorum philosophia. Eum expetenda vulputate persecuti ad, cu erant menandri scripserit qui','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>'),(61,1,1,'Pro ne fabulas quaestio, sit ridens consectetuer et, te has dicunt ornatus minimum. Ius elit ornatus an. Has in dictas noluisse insolens, has cu postea sensibus','<p>It plu plia olda nula, lo ekoo interjekcio aÅ­. Iom inkluzive dividostreko sh, subtraho praantaÅ­hieraÅ­ bio fo. San go povi triliono kunmetita, anstataÅ­ supersigno mallongigita iom kz. Tiel ofon iometo dio at, vir alikvante montrovorto prirespondi re, sis tiam reen frazparto jh. Pov mi pobo infra alternativo, nenio geedzo alimaniere sor um.</p>\\r\\n<p>Tek in dekoj komplika kernovorto, dekuma disskribado je end. Vendo posttagmezo um esk, ki nedifina personalo, unt. Sen ki tiele aligi resti. Diesa resti alikaÅ­ze enz us, cii gardi duobla vi, ajna ceceo nelimigita oid no. Oho negi antaÅ­parto alternativdemando si, adjektivo multiplikite bv ism, ind jh prepozitivo antaÅ­elemento. He ano orda nekutima, mil fi alia patro solstariva.</p>\\r\\n<p>Tia zepto rolvorteto du. Ar duo frota sepen dikfingro. Des vavo senforte ed. Mano halt\\' onklo sur nv, aliu help transigi ian o, amen multe kompreneble ena er. Nul tiuj fora nano jo.</p>\\r\\n<p>Kuo op negi posta. Kazablanko subpropozicio mal ne. End ad ekoo sori, in sor otek finitivo okulvitroj, egalo latina iom ge. Pra ho filo troa, mf esk apud aliel geedzo, fin duobla fratineto sekstiliono as. Lo devus video kelka mia, sia ed mili fini. Sin nula usono kunmetaÄµo ik, cii op tiea post gibi, sob brosi substantiva is.</p>\\r\\n<p>Jam unun participo sh. Nea mo ioma identiga, mi edzo ekde frikativo dio. Cii milo tohuo iufoje tc, mo tet krom prezoinda tempopunkto, hago dank\\' esperantigita ok kie. Iufoje helpverbo ko mis, poa ci dura eÄ¥o komparado. Pli persa deziri ju, falsa ekesti definitive jes aj. Tro iu hodiaÅ­a infinitivo, e eca malpli kernovorto.</p>\\r\\n<p>Ke ato armo postpriskribo. Mem al triliono frikativo miriametro, spite vortfarado fo iel. Oj iom ruli okej vatto. Jota tiama tagnokto nu ili. Nei kian spite ki, nenia reciprokeco ajn vo. Hot jena respondeci uj.</p>\\r\\n<p>Fri go longa senobjekta postmorgaÅ­, deci praantaÅ­hieraÅ­ ina el, nea ve dato hekto. Ci speco anstataÅ­i sat, ses mono literaturo ko. Per vi dume falsa fundamenta, amen siatempe kuo id. Pri vi eÄ¥o fontoj frazparto. Kab\\'o difina laÅ­longe ne aÄ¥.</p>');\n/*!40000 ALTER TABLE `Xnews` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Xpage`\n--\n\nLOCK TABLES `Xpage` WRITE;\n/*!40000 ALTER TABLE `Xpage` DISABLE KEYS */;\nINSERT INTO `Xpage` VALUES (1,1,'<p>Â </p>\\r\\n<p>Et integre nusquam mediocritatem has, usu hinc magna mutat eu. Qui ea hinc postulant, tritani fabellas eos ad, eu vim error putant. Habeo corpora mea te. Usu nihil bonorum apeirian cu. Error decore officiis cum cu. An duo alii dico, in nisl meliore nec, ei soleat dolorem sensibus sea.</p>\\r\\n<p>Cu pri alterum omittam disputationi, pri ad possim ponderum vituperatoribus. Cu tollit interpretaris mel. No posse perfecto vis, ex vix sanctus percipitur. Nihil oratio appareat et sit. Nam dolorum accommodare ei, nonumy quidam splendide at sit, vim nobis deseruisse efficiendi no. Adipisci elaboraret accommodare mea at, in tantas everti forensibus pro.</p>\\r\\n<p>At est esse vidit latine, malorum gubergren voluptaria ne mei. Ut duo duis sapientem rationibus. Movet oratio mel no, nam ut exerci necessitatibus. Mel inani oratio complectitur no, no atomorum consulatu hendrerit ius. An sit ridens sanctus suscipiantur. Ad nam alienum offendit.</p>\\r\\n<p>Et integre nusquam mediocritatem has, usu hinc magna mutat eu. Qui ea hinc postulant, tritani fabellas eos ad, eu vim error putant. Habeo corpora mea te. Usu nihil bonorum apeirian cu. Error decore officiis cum cu. An duo alii dico, in nisl meliore nec, ei soleat dolorem sensibus sea.</p>\\r\\n<p>Cu pri alterum omittam disputationi, pri ad possim ponderum vituperatoribus. Cu tollit interpretaris mel. No posse perfecto vis, ex vix sanctus percipitur. Nihil oratio appareat et sit. Nam dolorum accommodare ei, nonumy quidam splendide at sit, vim nobis deseruisse efficiendi no. Adipisci elaboraret accommodare mea at, in tantas everti forensibus pro.At est esse vidit latine, malorum gubergren voluptaria ne mei. Ut duo duis sapientem rationibus. Movet oratio mel no, nam ut exerci necessitatibus. Mel inani oratio complectitur no, no atomorum consulatu hendrerit ius. An sit ridens sanctus suscipiantur. Ad nam alienum offendit.</p>'),(32,1,'<p>Â </p>\\r\\n<p>Et integre nusquam mediocritatem has, usu hinc magna mutat eu. Qui ea hinc postulant, tritani fabellas eos ad, eu vim error putant. Habeo corpora mea te. Usu nihil bonorum apeirian cu. Error decore officiis cum cu. An duo alii dico, in nisl meliore nec, ei soleat dolorem sensibus sea.</p>\\r\\n<p>Cu pri alterum omittam disputationi, pri ad possim ponderum vituperatoribus. Cu tollit interpretaris mel. No posse perfecto vis, ex vix sanctus percipitur. Nihil oratio appareat et sit. Nam dolorum accommodare ei, nonumy quidam splendide at sit, vim nobis deseruisse efficiendi no. Adipisci elaboraret accommodare mea at, in tantas everti forensibus pro.</p>\\r\\n<p>At est esse vidit latine, malorum gubergren voluptaria ne mei. Ut duo duis sapientem rationibus. Movet oratio mel no, nam ut exerci necessitatibus. Mel inani oratio complectitur no, no atomorum consulatu hendrerit ius. An sit ridens sanctus suscipiantur. Ad nam alienum offendit.</p>\\r\\n<p>Et integre nusquam mediocritatem has, usu hinc magna mutat eu. Qui ea hinc postulant, tritani fabellas eos ad, eu vim error putant. Habeo corpora mea te. Usu nihil bonorum apeirian cu. Error decore officiis cum cu. An duo alii dico, in nisl meliore nec, ei soleat dolorem sensibus sea.</p>\\r\\n<p>Cu pri alterum omittam disputationi, pri ad possim ponderum vituperatoribus. Cu tollit interpretaris mel. No posse perfecto vis, ex vix sanctus percipitur. Nihil oratio appareat et sit. Nam dolorum accommodare ei, nonumy quidam splendide at sit, vim nobis deseruisse efficiendi no. Adipisci elaboraret accommodare mea at, in tantas everti forensibus pro.At est esse vidit latine, malorum gubergren voluptaria ne mei. Ut duo duis sapientem rationibus. Movet oratio mel no, nam ut exerci necessitatibus. Mel inani oratio complectitur no, no atomorum consulatu hendrerit ius. An sit ridens sanctus suscipiantur. Ad nam alienum offendit.</p>'),(33,1,'<p>Â </p>\\r\\n<p>We\\'re always happy to hear from you. You can contact us via email atÂ <a href=\\\"mailto:contact@sourcefabric.org\\\">contact@sourcefabric.org</a></p>\\r\\n<p><strong>Postal Address:</strong></p>\\r\\n<p>Sourcefabric o.p.s.<br />SalvÃ¡torskÃ¡ 10<br />110 00 Praha 1<br />Czech Republic</p>\\r\\n<p>phone: +420 222 362 540</p>\\r\\n<p><strong>Toronto office:</strong></p>\\r\\n<p>Sourcefabric<br />Centre for Social Innovation<br />720 Bathurst St. Suite 203<br />Toronto, Ontario<br />M5S 2R4<br />Canada</p>\\r\\n<p><strong>Berlin office:</strong></p>\\r\\n<p>Sourcefabric<br />PrinzessinnenstraÃŸe 20<br />Aufgang A<br />10969 Berlin<br />Germany</p>\\r\\n<p>+49 (0)30 44044999</p>\\r\\n<p>If you need technical support, please visit ourÂ <a href=\\\"/en/home/support/13/?tpl=15\\\">Get Help</a>Â pages. We also frequent ourÂ <a href=\\\"http://forum.sourcefabric.org\\\">forums</a>Â on a very regular basis; a post there will get a quick answer!</p>\\r\\n<p>Follow us or contact us on these online social networks also:Â <a href=\\\"http://www.facebook.com/pages/Sourcefabric/10150120691955646\\\" target=\\\"_blank\\\">Facebook</a>,Â <a href=\\\"http://twitter.com/Sourcefabric\\\" target=\\\"_blank\\\">Twitter</a>,Â <a href=\\\"http://friendfeed.com/sourcefabric\\\" target=\\\"_blank\\\">FriendFeed</a>,Â <a href=\\\"http://identi.ca/sourcefabric\\\" target=\\\"_blank\\\">identi.ca</a>,Â <a href=\\\"http://www.koornk.com/user/Sourcefabric/\\\" target=\\\"_blank\\\">Koornk</a>,Â <a href=\\\"http://sourcefabric.tumblr.com/\\\" target=\\\"_blank\\\">Tumblr</a>,Â <a href=\\\"http://www.youtube.com/user/Sourcefabric\\\" target=\\\"_blank\\\">YouTube</a>Â andÂ <a href=\\\"http://vimeo.com/user3337341\\\" target=\\\"_blank\\\">Vimeo</a>.<strong>Â <br /></strong></p>'),(34,1,'<p>Et integre nusquam mediocritatem has, usu hinc magna mutat eu. Qui ea hinc postulant, tritani fabellas eos ad, eu vim error putant. Habeo corpora mea te. Usu nihil bonorum apeirian cu. Error decore officiis cum cu. An duo alii dico, in nisl meliore nec, ei soleat dolorem sensibus sea.</p>\\r\\n<p>Cu pri alterum omittam disputationi, pri ad possim ponderum vituperatoribus. Cu tollit interpretaris mel. No posse perfecto vis, ex vix sanctus percipitur. Nihil oratio appareat et sit. Nam dolorum accommodare ei, nonumy quidam splendide at sit, vim nobis deseruisse efficiendi no. Adipisci elaboraret accommodare mea at, in tantas everti forensibus pro.</p>\\r\\n<p>At est esse vidit latine, malorum gubergren voluptaria ne mei. Ut duo duis sapientem rationibus. Movet oratio mel no, nam ut exerci necessitatibus. Mel inani oratio complectitur no, no atomorum consulatu hendrerit ius. An sit ridens sanctus suscipiantur. Ad nam alienum offendit.</p>\\r\\n<p>Et integre nusquam mediocritatem has, usu hinc magna mutat eu. Qui ea hinc postulant, tritani fabellas eos ad, eu vim error putant. Habeo corpora mea te. Usu nihil bonorum apeirian cu. Error decore officiis cum cu. An duo alii dico, in nisl meliore nec, ei soleat dolorem sensibus sea.</p>\\r\\n<p>Cu pri alterum omittam disputationi, pri ad possim ponderum vituperatoribus. Cu tollit interpretaris mel. No posse perfecto vis, ex vix sanctus percipitur. Nihil oratio appareat et sit. Nam dolorum accommodare ei, nonumy quidam splendide at sit, vim nobis deseruisse efficiendi no. Adipisci elaboraret accommodare mea at, in tantas everti forensibus pro.At est esse vidit latine, malorum gubergren voluptaria ne mei. Ut duo duis sapientem rationibus. Movet oratio mel no, nam ut exerci necessitatibus. Mel inani oratio complectitur no, no atomorum consulatu hendrerit ius. An sit ridens sanctus suscipiantur. Ad nam alienum offendit.</p>');\n/*!40000 ALTER TABLE `Xpage` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `Xpoll`\n--\n\nLOCK TABLES `Xpoll` WRITE;\n/*!40000 ALTER TABLE `Xpoll` DISABLE KEYS */;\nINSERT INTO `Xpoll` VALUES (31,1);\n/*!40000 ALTER TABLE `Xpoll` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `acl_role`\n--\n\nLOCK TABLES `acl_role` WRITE;\n/*!40000 ALTER TABLE `acl_role` DISABLE KEYS */;\nINSERT INTO `acl_role` VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(11),(12),(13);\n/*!40000 ALTER TABLE `acl_role` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `acl_rule`\n--\n\nLOCK TABLES `acl_rule` WRITE;\n/*!40000 ALTER TABLE `acl_rule` DISABLE KEYS */;\nINSERT INTO `acl_rule` VALUES (190,'allow',1,'article','add'),(191,'allow',1,'article','edit'),(192,'allow',1,'article','delete'),(193,'allow',1,'article','move'),(194,'allow',1,'article','publish'),(195,'allow',1,'article','translate'),(196,'allow',1,'image','add'),(197,'allow',1,'image','attach'),(198,'allow',1,'image','edit'),(199,'allow',1,'image','delete'),(200,'allow',1,'comment','enable'),(201,'allow',1,'comment','moderate'),(202,'allow',1,'comment','edit'),(203,'allow',1,'file','add'),(204,'allow',1,'file','edit'),(205,'allow',1,'file','delete'),(206,'allow',1,'editor','bold'),(207,'allow',1,'editor','charactermap'),(208,'allow',1,'editor','copycutpaste'),(209,'allow',1,'editor','enlarge'),(210,'allow',1,'editor','findreplace'),(211,'allow',1,'editor','fontcolor'),(212,'allow',1,'editor','fontface'),(213,'allow',1,'editor','fontsize'),(214,'allow',1,'editor','horizontalrule'),(215,'allow',1,'editor','image'),(216,'allow',1,'editor','indent'),(217,'allow',1,'editor','italic'),(218,'allow',1,'editor','link'),(219,'allow',1,'editor','listbullet'),(220,'allow',1,'editor','listnumber'),(221,'allow',1,'editor','sourceview'),(222,'allow',1,'editor','spellcheckerenabled'),(223,'allow',1,'editor','statusbar'),(224,'allow',1,'editor','strikethrough'),(225,'allow',1,'editor','subhead'),(226,'allow',1,'editor','subscript'),(227,'allow',1,'editor','superscript'),(228,'allow',1,'editor','table'),(229,'allow',1,'editor','textalignment'),(230,'allow',1,'editor','textdirection'),(231,'allow',1,'editor','underline'),(232,'allow',1,'editor','undoredo'),(233,'allow',1,'theme','manage'),(234,'allow',1,'template','delete'),(235,'allow',1,'template','manage'),(236,'allow',1,'article-type','delete'),(237,'allow',1,'article-type','manage'),(238,'allow',1,'system-preferences','edit'),(239,'allow',1,'indexer','manage'),(240,'allow',1,'country','delete'),(241,'allow',1,'country','manage'),(242,'allow',1,'log','view'),(243,'allow',1,'localizer','manage'),(244,'allow',1,'backup','manage'),(245,'allow',1,'cache','clear'),(246,'allow',1,'notification','get'),(247,'allow',1,'notification','moderate-comment'),(248,'allow',1,'publication','delete'),(249,'allow',1,'publication','manage'),(250,'allow',1,'issue','delete'),(251,'allow',1,'issue','manage'),(252,'allow',1,'section','delete'),(253,'allow',1,'section','manage'),(254,'allow',1,'topic','attach'),(255,'allow',1,'topic','manage'),(256,'allow',1,'language','delete'),(257,'allow',1,'language','manage'),(258,'allow',1,'user-group','manage'),(259,'allow',1,'user','delete'),(260,'allow',1,'user','manage'),(261,'allow',1,'author','edit'),(262,'allow',1,'subscriber','manage'),(263,'allow',1,'subscription','manage'),(264,'allow',1,'plugin','manage'),(265,'allow',1,'plugin-blog','moderator'),(266,'allow',1,'plugin-blog','admin'),(267,'allow',1,'pluginpoll','enable'),(268,'allow',2,'article','add'),(269,'allow',2,'article','edit'),(270,'allow',2,'article','delete'),(271,'allow',2,'article','move'),(272,'allow',2,'article','publish'),(273,'allow',2,'article','translate'),(274,'allow',2,'image','add'),(275,'allow',2,'image','attach'),(276,'allow',2,'image','edit'),(277,'allow',2,'image','delete'),(278,'allow',2,'comment','enable'),(279,'allow',2,'comment','moderate'),(280,'allow',2,'comment','edit'),(281,'allow',2,'file','add'),(282,'allow',2,'file','edit'),(283,'allow',2,'file','delete'),(284,'allow',2,'editor','bold'),(285,'allow',2,'editor','copycutpaste'),(286,'allow',2,'editor','enlarge'),(287,'allow',2,'editor','findreplace'),(288,'allow',2,'editor','image'),(289,'allow',2,'editor','indent'),(290,'allow',2,'editor','italic'),(291,'allow',2,'editor','link'),(292,'allow',2,'editor','listbullet'),(293,'allow',2,'editor','listnumber'),(294,'allow',2,'editor','sourceview'),(295,'allow',2,'editor','spellcheckerenabled'),(296,'allow',2,'editor','strikethrough'),(297,'allow',2,'editor','subhead'),(298,'allow',2,'editor','table'),(299,'allow',2,'editor','textalignment'),(300,'allow',2,'editor','textdirection'),(301,'allow',2,'editor','underline'),(302,'allow',2,'editor','undoredo'),(303,'allow',2,'theme','manage'),(304,'allow',2,'log','view'),(305,'allow',2,'cache','clear'),(306,'allow',2,'notification','get'),(307,'allow',2,'notification','moderate-comment'),(308,'allow',2,'issue','delete'),(309,'allow',2,'issue','manage'),(310,'allow',2,'section','delete'),(311,'allow',2,'section','manage'),(312,'allow',2,'topic','attach'),(313,'allow',2,'topic','manage'),(314,'allow',2,'author','edit'),(315,'allow',2,'plugin','manage'),(316,'allow',2,'plugin-blog','moderator'),(317,'allow',2,'pluginpoll','enable'),(318,'allow',3,'article','add'),(319,'allow',3,'article','edit'),(320,'allow',3,'article','delete'),(321,'allow',3,'article','move'),(322,'allow',3,'article','publish'),(323,'allow',3,'article','translate'),(324,'allow',3,'image','add'),(325,'allow',3,'image','attach'),(326,'allow',3,'image','edit'),(327,'allow',3,'image','delete'),(328,'allow',3,'comment','enable'),(329,'allow',3,'comment','moderate'),(330,'allow',3,'comment','edit'),(331,'allow',3,'file','add'),(332,'allow',3,'file','edit'),(333,'allow',3,'file','delete'),(334,'allow',3,'editor','bold'),(335,'allow',3,'editor','copycutpaste'),(336,'allow',3,'editor','findreplace'),(337,'allow',3,'editor','image'),(338,'allow',3,'editor','indent'),(339,'allow',3,'editor','italic'),(340,'allow',3,'editor','link'),(341,'allow',3,'editor','sourceview'),(342,'allow',3,'editor','spellcheckerenabled'),(343,'allow',3,'editor','subhead'),(344,'allow',3,'editor','table'),(345,'allow',3,'editor','undoredo'),(346,'allow',3,'cache','clear'),(347,'allow',3,'notification','get'),(348,'allow',3,'notification','moderate-comment'),(349,'allow',3,'topic','attach'),(350,'allow',3,'topic','manage'),(351,'allow',3,'author','edit'),(352,'allow',3,'plugin','manage'),(353,'allow',3,'pluginpoll','enable'),(354,'allow',4,'article','add'),(355,'allow',4,'article','edit'),(356,'allow',4,'article','delete'),(357,'allow',4,'article','move'),(358,'allow',4,'article','translate'),(359,'allow',4,'image','add'),(360,'allow',4,'image','attach'),(361,'allow',4,'image','edit'),(362,'allow',4,'comment','enable'),(363,'allow',4,'comment','moderate'),(364,'allow',4,'comment','edit'),(365,'allow',4,'file','add'),(366,'allow',4,'file','edit'),(367,'allow',4,'editor','bold'),(368,'allow',4,'editor','copycutpaste'),(369,'allow',4,'editor','findreplace'),(370,'allow',4,'editor','image'),(371,'allow',4,'editor','indent'),(372,'allow',4,'editor','italic'),(373,'allow',4,'editor','link'),(374,'allow',4,'editor','spellcheckerenabled'),(375,'allow',4,'editor','subhead'),(376,'allow',4,'editor','undoredo'),(377,'allow',4,'notification','get'),(378,'allow',4,'notification','moderate-comment'),(379,'allow',4,'topic','attach'),(380,'allow',4,'plugin','manage'),(381,'allow',5,'subscriber','manage'),(382,'allow',5,'subscription','manage'),(383,'allow',1,'feedback','manage'),(384,'allow',2,'feedback','manage'),(385,'allow',1,'ingest','manage'),(386,'allow',2,'ingest','manage'),(387,'allow',1,'plugin-recaptcha','admin'),(388,'allow',1,'playlist','manage'),(389,'allow',1,'plugin-debate','admin'),(390,'allow',1,'plugin-soundcloud','preferences'),(391,'allow',1,'plugin-soundcloud','browser'),(392,'allow',1,'plugin-soundcloud','upload'),(393,'allow',1,'plugin-soundcloud','update'),(394,'allow',1,'plugin-soundcloud','delete');\n/*!40000 ALTER TABLE `acl_rule` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `article_datetimes`\n--\n\nLOCK TABLES `article_datetimes` WRITE;\n/*!40000 ALTER TABLE `article_datetimes` DISABLE KEYS */;\n/*!40000 ALTER TABLE `article_datetimes` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `audit_event`\n--\n\nLOCK TABLES `audit_event` WRITE;\n/*!40000 ALTER TABLE `audit_event` DISABLE KEYS */;\n/*!40000 ALTER TABLE `audit_event` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `comment`\n--\n\nLOCK TABLES `comment` WRITE;\n/*!40000 ALTER TABLE `comment` DISABLE KEYS */;\nINSERT INTO `comment` VALUES (1,NULL,17,'','Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit','0','1','0','91.205.72.175','2014-03-03 12:36:07','2014-03-03 12:36:07','0','0','1',NULL,NULL,1,1,1),(2,NULL,17,'','Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam auctor, eros sit amet ornare scelerisque, lectus ligula dignissim justo, quis semper metus metus vitae lectus. Etiam tristique, nulla quis adipiscing cursus, diam purus lobortis dui, quis ele','0','2','0','91.205.72.175','2014-03-03 12:37:20','2014-03-03 12:37:20','0','0','1',NULL,NULL,2,1,1),(3,NULL,13,'','I agree.','0','1','0','91.205.72.175','2014-03-03 12:39:45','2014-03-03 12:39:45','0','0','1',NULL,NULL,3,1,1),(4,NULL,17,'','Neque porro quisquam est qui dolorem ipsum quia dolor sit amet','0','3','0','193.227.116.125','2014-03-03 14:44:20','2014-03-03 14:44:20','0','0','1',NULL,NULL,4,1,1),(6,NULL,26,'','Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae fringilla nibh. Morbi imperdiet lorem non leo posuere varius. Praesent id dapibus nulla. Donec tempor fringilla felis, et auctor mi. Maecenas ac lorem blandit lectus ornare luctus v','0','1','0','193.227.116.125','2014-03-03 14:58:20','2014-03-03 14:58:20','0','0','0',NULL,NULL,4,1,1),(7,NULL,26,'',' Phasellus sit amet commodo lacus. Maecenas aliquam mattis eros, eget iaculis tellus porta ut. Praesent tempor sollicitudin ullamcorper. Proin nec nulla eros. Cras ac hendrerit lacus, non interdum sem. Ut risus est, accumsan non interdum a, ultrices sit a','0','2','0','193.227.116.125','2014-03-03 14:59:02','2014-03-03 14:59:02','0','0','1',NULL,NULL,2,1,1),(8,NULL,26,'','Nulla aliquam venenatis nulla, sit amet laoreet nunc suscipit id. Aliquam ligula neque, suscipit et purus a, varius ullamcorper velit. Proin tempor molestie mollis. Sed a congue dui, sed vulputate diam. Quisque ut odio ligula. Nullam dolor lorem, malesuad','0','3','0','193.227.116.125','2014-03-03 14:59:29','2014-03-03 14:59:29','0','0','0',NULL,NULL,5,1,1),(9,NULL,25,'','orbi sed ultrices risus. Integer mi purus, gravida vel turpis euismod, blandit auctor sem. Curabitur rhoncus lacus nec quam mollis mattis. Duis vestibulum lorem eget felis mattis bibendum. Nam ultricies sapien eget lacus tincidunt vulputate. Fusce element','0','1','0','193.227.116.125','2014-03-03 15:00:03','2014-03-03 15:00:03','0','0','1',NULL,NULL,6,1,1),(10,NULL,25,'','Vivamus suscipit iaculis dui, et condimentum purus consequat porta. Etiam eget libero sed nisi facilisis sagittis at eget massa. Duis lorem metus, imperdiet sit amet laoreet non, auctor nec nisi. Aenean eleifend eu eros a mollis. Nullam a viverra nisi. Su','0','2','0','193.227.116.125','2014-03-03 15:00:46','2014-03-03 15:00:46','0','0','0',NULL,NULL,7,1,1),(11,NULL,25,'','Praesent id dui hendrerit, mattis sem eu, malesuada tellus. Maecenas pulvinar euismod risus, in hendrerit lacus mollis eget. Nulla malesuada vel libero ac egestas. Vivamus tristique libero at gravida pulvinar. Nullam pharetra ornare lectus at euismod. Nul','0','3','0','193.227.116.125','2014-03-03 15:01:21','2014-03-03 15:01:21','0','0','1',NULL,NULL,2,1,1),(12,NULL,8,'','Praesent id dui hendrerit, mattis sem eu, malesuada tellus. Maecenas pulvinar euismod risus, in hendrerit lacus mollis eget. Nulla malesuada vel libero ac egestas. Vivamus tristique libero at gravida pulvinar. Nullam pharetra ornare lectus at euismod. Nul','0','1','0','193.227.116.125','2014-03-03 15:01:54','2014-03-03 15:01:54','0','0','0',NULL,NULL,8,1,1),(13,NULL,23,'','Nunc ultrices, diam ut scelerisque aliquam, tellus nisi blandit dui, pellentesque varius nibh nisi in urna. Integer tempor urna orci, at faucibus tellus viverra eu. Nunc ut dolor ut justo condimentum ultricies. Maecenas sed dolor nibh. Etiam lorem metus, ','0','1','0','193.227.116.125','2014-03-03 15:06:12','2014-03-03 15:06:12','0','0','1',NULL,NULL,9,1,1),(14,NULL,23,'','ed malesuada erat in nisi blandit, sed bibendum ante sodales. Nulla ipsum mi, faucibus et scelerisque eu, viverra et sapien. Fusce scelerisque ipsum nunc, ut euismod justo auctor quis. Praesent imperdiet nulla sed magna faucibus tincidunt. Mauris ullamcor','0','2','0','193.227.116.125','2014-03-03 15:07:08','2014-03-03 15:07:08','0','0','0',NULL,NULL,2,1,1);\n/*!40000 ALTER TABLE `comment` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `comment_acceptance`\n--\n\nLOCK TABLES `comment_acceptance` WRITE;\n/*!40000 ALTER TABLE `comment_acceptance` DISABLE KEYS */;\n/*!40000 ALTER TABLE `comment_acceptance` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `comment_commenter`\n--\n\nLOCK TABLES `comment_commenter` WRITE;\n/*!40000 ALTER TABLE `comment_commenter` DISABLE KEYS */;\nINSERT INTO `comment_commenter` VALUES (1,1,'admin@admin.com','','Reader','91.205.72.175','2014-03-03 12:36:07','0000-00-00 00:00:00'),(2,NULL,'reader@samplemail.com','','Reader','193.227.116.125','2014-03-03 15:07:08','0000-00-00 00:00:00'),(3,NULL,'guest@samplemail.com','','Guest','91.205.72.175','2014-03-03 12:39:45','0000-00-00 00:00:00'),(4,1,'admin@admin.com','','Administrator (don\\'t delete)','82.160.137.252','2014-03-25 13:20:35','0000-00-00 00:00:00'),(5,NULL,'journalist@samplemail.com','','Journalist','193.227.116.125','2014-03-03 14:59:29','0000-00-00 00:00:00'),(6,NULL,'user@sampleemail.com','','User','193.227.116.125','2014-03-03 15:00:03','0000-00-00 00:00:00'),(7,NULL,'anonym@samplemail.com','','Reader','193.227.116.125','2014-03-03 15:00:46','0000-00-00 00:00:00'),(8,NULL,'mail@usersample.com','','User','193.227.116.125','2014-03-03 15:01:54','0000-00-00 00:00:00'),(9,NULL,'john@samplemail.com','','John','193.227.116.125','2014-03-03 15:06:12','0000-00-00 00:00:00');\n/*!40000 ALTER TABLE `comment_commenter` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `context_articles`\n--\n\nLOCK TABLES `context_articles` WRITE;\n/*!40000 ALTER TABLE `context_articles` DISABLE KEYS */;\nINSERT INTO `context_articles` VALUES (1,24,3),(2,24,2),(3,26,3),(4,26,5),(5,31,6),(6,31,10),(7,35,3),(8,35,14),(9,37,15),(10,37,13),(11,37,16),(12,39,5),(13,39,17),(14,41,6),(15,41,7),(16,44,20),(17,44,23),(18,44,22),(19,46,25),(20,46,8),(21,46,10),(22,46,20),(23,47,2),(24,47,4),(25,60,15),(26,60,13),(27,60,16),(28,62,3),(29,62,14),(30,65,3),(31,65,14),(32,67,15),(33,67,13),(34,67,16),(35,68,15),(36,68,13),(37,68,16),(42,75,15),(43,75,13),(44,75,16),(45,76,15),(46,76,13),(47,76,16),(48,78,3),(49,78,14),(50,81,3),(51,81,14);\n/*!40000 ALTER TABLE `context_articles` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `context_boxes`\n--\n\nLOCK TABLES `context_boxes` WRITE;\n/*!40000 ALTER TABLE `context_boxes` DISABLE KEYS */;\nINSERT INTO `context_boxes` VALUES (21,1),(22,2),(23,3),(24,4),(25,5),(26,6),(27,7),(28,8),(29,9),(30,10),(31,11),(32,12),(33,13),(34,14),(35,15),(36,16),(37,17),(38,18),(39,19),(40,20),(41,21),(42,22),(43,23),(44,24),(45,25),(46,26),(47,27),(48,28),(49,29),(50,30),(51,31),(52,32),(53,33),(54,34),(55,35),(56,36),(57,37),(58,38),(59,39),(60,40),(61,41),(62,42),(63,43),(64,44),(65,45),(66,46),(67,47),(68,48),(69,49),(71,51),(74,54),(75,55),(76,56),(77,57),(78,58),(79,59),(80,60),(81,61);\n/*!40000 ALTER TABLE `context_boxes` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `feedback`\n--\n\nLOCK TABLES `feedback` WRITE;\n/*!40000 ALTER TABLE `feedback` DISABLE KEYS */;\n/*!40000 ALTER TABLE `feedback` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `ingest_feed`\n--\n\nLOCK TABLES `ingest_feed` WRITE;\n/*!40000 ALTER TABLE `ingest_feed` DISABLE KEYS */;\n/*!40000 ALTER TABLE `ingest_feed` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `ingest_feed_entry`\n--\n\nLOCK TABLES `ingest_feed_entry` WRITE;\n/*!40000 ALTER TABLE `ingest_feed_entry` DISABLE KEYS */;\n/*!40000 ALTER TABLE `ingest_feed_entry` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `liveuser_grouprights`\n--\n\nLOCK TABLES `liveuser_grouprights` WRITE;\n/*!40000 ALTER TABLE `liveuser_grouprights` DISABLE KEYS */;\nINSERT INTO `liveuser_grouprights` VALUES (1,1,3),(1,2,3),(1,3,3),(1,4,3),(1,5,3),(1,6,3),(1,7,3),(1,8,3),(1,9,3),(1,10,3),(1,11,3),(1,12,3),(1,13,3),(1,14,3),(1,15,3),(1,16,3),(1,17,3),(1,18,3),(1,19,3),(1,20,3),(1,21,3),(1,22,3),(1,23,3),(1,24,3),(1,25,3),(1,26,3),(1,27,3),(1,28,3),(1,29,3),(1,30,3),(1,31,3),(1,32,3),(1,33,3),(1,34,3),(1,35,3),(1,36,3),(1,37,3),(1,38,3),(1,39,3),(1,40,3),(1,41,3),(1,42,3),(1,43,3),(1,44,3),(1,45,3),(1,46,3),(1,47,3),(1,48,3),(1,49,3),(1,50,3),(1,51,3),(1,53,3),(1,56,3),(1,57,3),(1,58,3),(1,59,3),(1,60,3),(1,61,3),(1,62,3),(1,63,3),(1,65,3),(1,64,3),(1,66,3),(1,67,3),(1,68,3),(1,69,3),(1,70,3),(1,73,3),(2,1,3),(2,2,3),(2,3,3),(2,4,3),(2,5,3),(2,6,3),(2,7,3),(2,8,3),(2,9,3),(2,10,3),(2,12,3),(2,13,3),(2,14,3),(2,15,3),(2,17,3),(2,18,3),(2,19,3),(2,22,3),(2,24,3),(2,25,3),(2,26,3),(2,27,3),(2,28,3),(2,29,3),(2,30,3),(2,34,3),(2,35,3),(2,36,3),(2,37,3),(2,38,3),(2,39,3),(2,41,3),(2,42,3),(2,43,3),(2,44,3),(2,45,3),(2,47,3),(2,48,3),(2,49,3),(2,55,3),(2,57,3),(2,59,3),(2,60,3),(2,63,3),(2,65,3),(2,66,3),(2,67,3),(2,68,3),(2,69,3),(2,73,3),(3,1,3),(3,2,3),(3,3,3),(3,4,3),(3,5,3),(3,6,3),(3,7,3),(3,8,3),(3,9,3),(3,10,3),(3,14,3),(3,17,3),(3,18,3),(3,25,3),(3,26,3),(3,27,3),(3,28,3),(3,29,3),(3,34,3),(3,35,3),(3,36,3),(3,37,3),(3,38,3),(3,39,3),(3,42,3),(3,45,3),(3,46,3),(3,47,3),(3,48,3),(3,49,3),(3,66,3),(3,68,3),(3,73,3),(4,1,3),(4,2,3),(4,3,3),(4,4,3),(4,5,3),(4,6,3),(4,7,3),(4,9,3),(4,10,3),(4,26,3),(4,27,3),(4,28,3),(4,29,3),(4,34,3),(4,36,3),(4,37,3),(4,38,3),(4,39,3),(4,42,3),(4,48,3),(4,49,3),(4,68,3),(4,73,3),(5,59,3),(5,61,3),(1,54,3),(1,74,3),(1,72,3),(1,92,3),(1,91,3),(2,91,3),(1,97,3),(1,98,3),(2,98,3),(1,101,3),(2,101,3),(3,101,3),(1,103,3);\n/*!40000 ALTER TABLE `liveuser_grouprights` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `liveuser_groups`\n--\n\nLOCK TABLES `liveuser_groups` WRITE;\n/*!40000 ALTER TABLE `liveuser_groups` DISABLE KEYS */;\nINSERT INTO `liveuser_groups` VALUES (1,0,'Administrator',1),(2,0,'Chief Editor',2),(3,0,'Editor',3),(4,0,'Journalist',4),(5,0,'Subscription manager',5);\n/*!40000 ALTER TABLE `liveuser_groups` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `liveuser_groupusers`\n--\n\nLOCK TABLES `liveuser_groupusers` WRITE;\n/*!40000 ALTER TABLE `liveuser_groupusers` DISABLE KEYS */;\nINSERT INTO `liveuser_groupusers` VALUES (1,1),(2,3),(3,3),(4,3),(5,3),(6,3),(7,3),(8,3);\n/*!40000 ALTER TABLE `liveuser_groupusers` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `liveuser_rights`\n--\n\nLOCK TABLES `liveuser_rights` WRITE;\n/*!40000 ALTER TABLE `liveuser_rights` DISABLE KEYS */;\nINSERT INTO `liveuser_rights` VALUES (1,0,'AddArticle',1),(3,0,'AddFile',1),(4,0,'AddImage',1),(6,0,'AttachImageToArticle',1),(7,0,'AttachTopicToArticle',1),(8,0,'ChangeArticle',1),(9,0,'ChangeFile',1),(10,0,'ChangeImage',1),(11,0,'ChangeSystemPreferences',1),(12,0,'ClearCache',1),(13,0,'CommentEnable',1),(14,0,'CommentModerate',1),(15,0,'DeleteArticle',1),(16,0,'DeleteArticleTypes',1),(17,0,'DeleteCountries',1),(18,0,'DeleteFile',1),(19,0,'DeleteImage',1),(20,0,'DeleteIssue',1),(21,0,'DeleteLanguages',1),(22,0,'DeletePub',1),(23,0,'DeleteSection',1),(24,0,'DeleteTempl',1),(25,0,'DeleteUsers',1),(26,0,'EditorBold',1),(27,0,'EditorCharacterMap',1),(28,0,'EditorCopyCutPaste',1),(29,0,'EditorEnlarge',1),(30,0,'EditorFindReplace',1),(31,0,'EditorFontColor',1),(32,0,'EditorFontFace',1),(33,0,'EditorFontSize',1),(34,0,'EditorHorizontalRule',1),(35,0,'EditorImage',1),(36,0,'EditorIndent',1),(37,0,'EditorItalic',1),(38,0,'EditorLink',1),(39,0,'EditorListBullet',1),(40,0,'EditorListNumber',1),(41,0,'EditorSourceView',1),(42,0,'EditorStrikethrough',1),(43,0,'EditorSubhead',1),(44,0,'EditorSubscript',1),(45,0,'EditorSuperscript',1),(46,0,'EditorTable',1),(47,0,'EditorTextAlignment',1),(48,0,'EditorTextDirection',1),(49,0,'EditorUnderline',1),(50,0,'EditorUndoRedo',1),(51,0,'plugin_manager',1),(52,0,'MailNotify',1),(53,0,'ManageArticleTypes',1),(54,0,'ManageCountries',1),(55,0,'ManageIndexer',1),(56,0,'ManageIssue',1),(57,0,'ManageLanguages',1),(58,0,'ManageLocalizer',1),(59,0,'ManagePub',1),(60,0,'ManageReaders',1),(61,0,'ManageSection',1),(62,0,'ManageSubscriptions',1),(63,0,'ManageTempl',1),(64,0,'ManageTopics',1),(65,0,'ManageUserTypes',1),(66,0,'ManageUsers',1),(67,0,'MoveArticle',1),(68,0,'Publish',1),(69,0,'TranslateArticle',1),(70,0,'ViewLogs',1),(72,0,'EditorStatusBar',1),(73,0,'EditorSpellcheckerEnabled',1),(74,0,'ManageBackup',1),(97,0,'plugin_blog_admin',1),(98,0,'plugin_blog_moderator',1),(101,0,'plugin_poll',1),(103,0,'EditAuthors',1),(104,0,'plugin_recaptcha_admin',1),(105,0,'plugin_debate_admin',1),(106,0,'plugin_soundcloud_preferences',1),(107,0,'plugin_soundcloud_browser',1),(108,0,'plugin_soundcloud_upload',1),(109,0,'plugin_soundcloud_update',1),(110,0,'plugin_soundcloud_delete',1);\n/*!40000 ALTER TABLE `liveuser_rights` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `liveuser_users`\n--\n\nLOCK TABLES `liveuser_users` WRITE;\n/*!40000 ALTER TABLE `liveuser_users` DISABLE KEYS */;\nINSERT INTO `liveuser_users` VALUES (1,NULL,'Administrator (don\\'t delete)','admin','sha1$2lUvd7x2NakO$d033e22ae348aeb5660fc2140aec35850c4da997','admin@admin.com','N',1,'','','','AD','','','','','Mr.','M','0-17','','','Corporate','','','','','','N','N','N','N','','','','','','','','','2014-05-07 09:52:30','0000-00-00 00:00:00','2014-05-07 11:40:31',1,NULL,6,'',1,1,0,14,'7a5a53fbf907cb078151a890a2ad20e9d4011bd0.jpg',NULL,NULL,'2014-02-19 09:00:49',NULL),(2,NULL,'Amerigo','amerigo','sha1$MZ3OUQsLaK6z$2b4c38815ce599c001e7c41121b40b8d7614f693','amerigo.vespucci@thejournal.com','Y',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'Mr.',NULL,'0-17',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'N','N','N','N',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'2014-03-28 15:18:49','2014-02-20 14:33:55',NULL,1,NULL,7,'Vespucci',1,1,1,0,'4dbcd74c2292cfd3ee10fb58b716578cf0671513.jpg',NULL,2,NULL,NULL),(3,NULL,'Frank N.','frankenstein','sha1$YRTLX8iJ9c5A$5e7412741ccb6a474e45e48d23a4bb60d854c756','frank.n.stein@free.fr','Y',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'Mr.',NULL,'0-17',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'N','N','N','N',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'2014-03-28 15:20:12','2014-02-20 15:25:41',NULL,1,NULL,8,'Stein',1,1,1,0,'4dbcd74c2292cfd3ee10fb58b716578cf0671513.jpg',NULL,3,NULL,NULL),(4,NULL,'James Q.','jamesq','sha1$Xd0TfC2CqGJa$480a1c64bf4dae3205e6c38bb092e53a9ae8dfb8','jamezdin@gmail.com','Y',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'Mr.',NULL,'0-17',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'N','N','N','N',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'2014-03-28 15:20:45','2014-02-20 15:26:33',NULL,1,NULL,9,'Reporter',1,1,1,0,'527c5fb02d3e69f520e7d82eac69e3b74587e51b.jpg',NULL,5,NULL,NULL),(5,NULL,'Jane','janestock','sha1$ijRYAoD67DEC$2776c1942da8c36cb7267786e580d405f205897b','jane.s@thecanonical.com','Y',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'Mr.',NULL,'0-17',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'N','N','N','N',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'2014-03-28 15:21:18','2014-02-20 15:27:21',NULL,1,NULL,10,'Stockwriter',1,1,1,0,'3f9dc7e8277147719964f7bcd41a586f203b2a1e.jpg',NULL,6,NULL,NULL),(6,NULL,'John','johnsmith','sha1$Nd2dT6e7ub5Y$3a522e4c33dae80dd050c62adea872d562e78cd8','labudovo.jezero@gmail.com','Y',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'Mr.',NULL,'0-17',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'N','N','N','N',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'2014-03-28 15:21:47','2014-02-20 15:28:08',NULL,1,NULL,11,'Smith',1,1,1,0,'dc1989572b1a6a68f1981597d0a79eadd2df98df.jpg',NULL,7,NULL,NULL),(7,NULL,'Sarah','ssarah','sha1$bzYr4GWneZL3$238a0a8aa3c2d099250a1caf781ce8e69502a0e9','sarah@thecanonical.com','Y',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'Mr.',NULL,'0-17',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'N','N','N','N',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'2014-03-28 15:22:10','2014-02-20 15:28:57',NULL,1,NULL,12,'Staffwriter',1,1,1,0,'e7b816f7d39bb6cbd151089baeeb542d9856bf21.jpg',NULL,8,NULL,NULL),(8,NULL,'Test','testpersona','sha1$Gguo48KNKMEo$82554303666e855014690ec245e4de4632127e0a','test.persona@test.com','Y',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'Mr.',NULL,'0-17',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'N','N','N','N',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'2014-03-28 15:22:40','2014-02-20 15:30:14',NULL,1,NULL,13,'Persona',1,1,1,0,'7a5a53fbf907cb078151a890a2ad20e9d4011bd0.jpg',NULL,9,NULL,NULL);\n/*!40000 ALTER TABLE `liveuser_users` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `output`\n--\n\nLOCK TABLES `output` WRITE;\n/*!40000 ALTER TABLE `output` DISABLE KEYS */;\nINSERT INTO `output` VALUES (1,'Web');\n/*!40000 ALTER TABLE `output` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `output_issue`\n--\n\nLOCK TABLES `output_issue` WRITE;\n/*!40000 ALTER TABLE `output_issue` DISABLE KEYS */;\nINSERT INTO `output_issue` VALUES (1,1,1,1,NULL,NULL,NULL,NULL),(2,1,2,1,NULL,NULL,NULL,NULL),(3,1,3,1,NULL,NULL,NULL,NULL);\n/*!40000 ALTER TABLE `output_issue` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `output_section`\n--\n\nLOCK TABLES `output_section` WRITE;\n/*!40000 ALTER TABLE `output_section` DISABLE KEYS */;\nINSERT INTO `output_section` VALUES (1,1,4,NULL,NULL,NULL,NULL),(4,1,16,NULL,NULL,NULL,NULL),(3,1,11,NULL,70,NULL,NULL),(5,1,13,NULL,NULL,NULL,NULL);\n/*!40000 ALTER TABLE `output_section` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `output_theme`\n--\n\nLOCK TABLES `output_theme` WRITE;\n/*!40000 ALTER TABLE `output_theme` DISABLE KEYS */;\nINSERT INTO `output_theme` VALUES (1,1,1,1,2,3,4,5),(2,1,1,11,12,13,14,15),(3,1,1,16,17,18,19,20),(4,1,1,21,22,23,24,23),(5,1,1,25,26,27,28,29),(6,1,1,30,31,32,33,32),(7,1,1,34,35,36,37,38),(8,1,1,39,40,41,42,43),(9,1,1,58,59,60,61,62),(10,1,1,65,66,67,68,69),(11,1,1,74,75,76,77,76),(12,1,1,80,81,82,83,84);\n/*!40000 ALTER TABLE `output_theme` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `package`\n--\n\nLOCK TABLES `package` WRITE;\n/*!40000 ALTER TABLE `package` DISABLE KEYS */;\nINSERT INTO `package` VALUES (4,'slideshow','Places',NULL,NULL),(5,'slideshow','Happy Holidays',NULL,NULL);\n/*!40000 ALTER TABLE `package` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `package_article`\n--\n\nLOCK TABLES `package_article` WRITE;\n/*!40000 ALTER TABLE `package_article` DISABLE KEYS */;\nINSERT INTO `package_article` VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(11),(12),(13),(14),(15),(16),(17),(18),(19),(20),(21),(22),(23),(24),(25),(26),(27),(28),(29),(30),(31),(32),(33),(34),(35),(36),(37),(38),(39),(40),(41),(42),(43),(44),(45),(46),(47),(48),(49),(50),(51),(52),(53),(54),(55),(56),(57),(58),(59),(60),(61);\n/*!40000 ALTER TABLE `package_article` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `package_article_package`\n--\n\nLOCK TABLES `package_article_package` WRITE;\n/*!40000 ALTER TABLE `package_article_package` DISABLE KEYS */;\nINSERT INTO `package_article_package` VALUES (5,5),(11,5),(14,4),(17,4);\n/*!40000 ALTER TABLE `package_article_package` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `package_item`\n--\n\nLOCK TABLES `package_item` WRITE;\n/*!40000 ALTER TABLE `package_item` DISABLE KEYS */;\nINSERT INTO `package_item` VALUES (10,5,31,0,'Sea','0_53_1971_1371',NULL),(11,5,30,1,'Waterfall','13_0_5195_3465',NULL),(12,5,27,2,'',NULL,NULL),(13,5,34,3,'',NULL,NULL),(14,4,25,0,'Summer City','11_0_2907_1936',NULL),(15,4,31,1,'Plane over sea','0_53_1971_1371',NULL),(16,4,23,2,'Venice','0_122_2303_1663',NULL),(17,4,30,3,'Waterfall','13_0_5195_3465',NULL);\n/*!40000 ALTER TABLE `package_item` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `rating`\n--\n\nLOCK TABLES `rating` WRITE;\n/*!40000 ALTER TABLE `rating` DISABLE KEYS */;\nINSERT INTO `rating` VALUES (1,17,1,3,'2014-03-05 13:01:06','2014-03-05 13:01:06');\n/*!40000 ALTER TABLE `rating` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `rendition`\n--\n\nLOCK TABLES `rendition` WRITE;\n/*!40000 ALTER TABLE `rendition` DISABLE KEYS */;\nINSERT INTO `rendition` VALUES ('article',770,515,'crop',0,NULL),('articlesquare',300,300,'crop',0,NULL),('asidethumb',130,98,'crop',0,NULL),('big',600,400,'crop',0,NULL),('cinemabig',500,281,'crop',0,NULL),('cinemamedium',435,245,'crop',0,NULL),('cinemasmall',275,155,'crop',0,NULL),('front',610,372,'crop',0,NULL),('front_big',570,384,'crop',0,NULL),('front_medium',478,320,'crop',0,NULL),('front_small',478,326,'crop',0,NULL),('issuethumb',130,70,'crop',0,NULL),('morenewsthumb',70,45,'crop',0,NULL),('multimedia',235,220,'crop',0,NULL),('onehalf',450,295,'crop',0,NULL),('onethird',290,190,'crop',0,NULL),('rectanglebig',500,400,'crop',0,NULL),('rectanglemedium',435,326,'crop',0,NULL),('rectanglesmall',275,206,'crop',0,NULL),('section',496,334,'crop',0,NULL),('sectionbig',950,480,'crop',0,NULL),('sectiontablet',225,150,'crop',0,NULL),('sectiontop',330,215,'crop',0,NULL),('show',930,260,'crop',0,NULL),('slider',950,500,'crop',0,NULL),('sliderfeatured',68,45,'crop',0,NULL),('slidermostpopular',72,46,'crop',0,NULL),('slideshow',770,515,'crop',0,NULL),('square',150,150,'crop',0,NULL),('square large',290,290,'crop',0,NULL),('thumb',150,100,'crop',0,NULL);\n/*!40000 ALTER TABLE `rendition` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `resource`\n--\n\nLOCK TABLES `resource` WRITE;\n/*!40000 ALTER TABLE `resource` DISABLE KEYS */;\nINSERT INTO `resource` VALUES (1,'buildPage','publication_1/theme_1/'),(2,'buildPage','publication_1/theme_1/front.tpl'),(3,'buildPage','publication_1/theme_1/section.tpl'),(4,'buildPage','publication_1/theme_1/article.tpl'),(5,'buildPage','publication_1/theme_1/404.tpl'),(6,'buildPage','publication_1/theme_1/search.tpl'),(7,'buildPage','publication_1/theme_1/archive.tpl'),(8,'buildPage','publication_1/theme_1/rss.tpl'),(9,'buildPage','publication_1/theme_1/issue.tpl'),(10,'buildPage','publication_1/theme_1/topic.tpl'),(68,'buildPage','publication_1/theme_3/article.tpl'),(67,'buildPage','publication_1/theme_3/section.tpl'),(66,'buildPage','publication_1/theme_3/front.tpl'),(65,'buildPage','publication_1/theme_3/'),(64,'buildPage','publication_1/theme_2/topic.tpl'),(74,'buildPage','publication_1/theme_4/'),(73,'buildPage','publication_1/theme_3/issue.tpl'),(72,'buildPage','publication_1/theme_3/archive.tpl'),(69,'buildPage','publication_1/theme_3/404.tpl'),(70,'buildPage','publication_1/theme_3/rss.tpl'),(71,'buildPage','publication_1/theme_3/search.tpl'),(79,'buildPage','publication_1/theme_4/topic.tpl'),(78,'buildPage','publication_1/theme_4/search.tpl'),(77,'buildPage','publication_1/theme_4/article.tpl'),(76,'buildPage','publication_1/theme_4/section.tpl'),(85,'buildPage','publication_1/theme_1/_tpl/front-poll.tpl'),(84,'buildPage','publication_1/theme_5/404.tpl'),(83,'buildPage','publication_1/theme_5/article.tpl'),(80,'buildPage','publication_1/theme_5/'),(81,'buildPage','publication_1/theme_5/front.tpl'),(82,'buildPage','publication_1/theme_5/section.tpl'),(75,'buildPage','publication_1/theme_4/front.tpl'),(63,'buildPage','publication_1/theme_2/rss.tpl'),(62,'buildPage','publication_1/theme_2/404.tpl'),(61,'buildPage','publication_1/theme_2/article.tpl'),(57,'buildPage','publication_1/theme_1/section_standard_pagination.tpl'),(58,'buildPage','publication_1/theme_2/'),(59,'buildPage','publication_1/theme_2/front.tpl'),(60,'buildPage','publication_1/theme_2/section.tpl');\n/*!40000 ALTER TABLE `resource` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `user_attribute`\n--\n\nLOCK TABLES `user_attribute` WRITE;\n/*!40000 ALTER TABLE `user_attribute` DISABLE KEYS */;\nINSERT INTO `user_attribute` VALUES (1,'comment_deleted','6'),(1,'comment_delivered','9'),(1,'comment_recommended','3'),(1,'image_published','49'),(2,'is_verified','0'),(3,'is_verified','0'),(4,'is_verified','0'),(5,'is_verified','0'),(6,'is_verified','0'),(7,'is_verified','0'),(8,'is_verified','0');\n/*!40000 ALTER TABLE `user_attribute` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `user_identity`\n--\n\nLOCK TABLES `user_identity` WRITE;\n/*!40000 ALTER TABLE `user_identity` DISABLE KEYS */;\n/*!40000 ALTER TABLE `user_identity` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `user_points_index`\n--\n\nLOCK TABLES `user_points_index` WRITE;\n/*!40000 ALTER TABLE `user_points_index` DISABLE KEYS */;\n/*!40000 ALTER TABLE `user_points_index` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `user_subscription`\n--\n\nLOCK TABLES `user_subscription` WRITE;\n/*!40000 ALTER TABLE `user_subscription` DISABLE KEYS */;\n/*!40000 ALTER TABLE `user_subscription` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `user_token`\n--\n\nLOCK TABLES `user_token` WRITE;\n/*!40000 ALTER TABLE `user_token` DISABLE KEYS */;\n/*!40000 ALTER TABLE `user_token` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `user_topic`\n--\n\nLOCK TABLES `user_topic` WRITE;\n/*!40000 ALTER TABLE `user_topic` DISABLE KEYS */;\n/*!40000 ALTER TABLE `user_topic` ENABLE KEYS */;\nUNLOCK TABLES;\n\n--\n-- Dumping data for table `webcode`\n--\n\nLOCK TABLES `webcode` WRITE;\n/*!40000 ALTER TABLE `webcode` DISABLE KEYS */;\nINSERT INTO `webcode` VALUES ('c1q43',1,1),('isl6s',2,1),('1lfde',3,1),('zxmbd',4,1),('q84uk',5,1),('3suzm',6,1),('ykwvh',7,1),('1fmjo',8,1),('w7er3',9,1),('cebaa',10,1),('goylg',11,1),('qq1hd',12,1),('gtm3j',13,1),('2bct0',14,1),('jpcdw',15,1),('v8o79',16,1),('ng6z0',17,1),('7ith9',18,1),('a7mql',19,1),('zxggi',20,1),('jsrve',21,1),('q3jv7',22,1),('d5mwf',23,1),('dib75',24,1),('qm26m',25,1),('05psn',26,1),('x51rv',27,1),('fdweg',28,1),('f5rkl',29,1),('pwqhd',30,1),('0hmsc',31,1),('p5e8a',32,1),('d7e71',33,1),('fc6h2',34,1),('75zd4',35,1),('tuorf',36,1),('0a8w4',37,1),('fekaa',38,1),('odmcz',39,1);\n/*!40000 ALTER TABLE `webcode` ENABLE KEYS */;\nUNLOCK TABLES;\n/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;\n\n/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;\n/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;\n/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;\n/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;\n/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;\n/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;\n/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;\n\n-- Dump completed on 2014-05-07 10:22:52\n"
  },
  {
    "path": "newscoop/install/Resources/sql/geonames.sql",
    "content": "set names utf8;\n\nTRUNCATE CityLocations;\nALTER TABLE CityLocations DISABLE KEYS;\nLOAD DATA LOCAL INFILE 'CityLocations.csv' INTO TABLE CityLocations FIELDS\nTERMINATED BY ';' ENCLOSED BY '\"';\nALTER TABLE CityLocations ENABLE KEYS;\n\nTRUNCATE CityNames;\nALTER TABLE CityNames DISABLE KEYS;\nLOAD DATA LOCAL INFILE 'CityNames.csv' INTO TABLE CityNames FIELDS\nTERMINATED BY ';' ENCLOSED BY '\"';\nALTER TABLE CityNames ENABLE KEYS;\n\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.2.x/2013-02-19/tables.sql",
    "content": "DROP INDEX IdUser ON Subscriptions;\nCREATE TABLE SubscriptionArticle (id INT AUTO_INCREMENT NOT NULL, article_number INT NOT NULL, language_id INT DEFAULT NULL, StartDate DATE NOT NULL, Days INT NOT NULL, PaidDays INT NOT NULL, NoticeSent VARCHAR(255) NOT NULL, IdSubscription INT DEFAULT NULL, INDEX IDX_DBC6BEEA303CB8FA (IdSubscription), INDEX IDX_DBC6BEEAFC5788D482F1BAF4 (article_number, language_id), INDEX IDX_DBC6BEEA82F1BAF4 (language_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\nCREATE TABLE SubscriptionIssue (id INT AUTO_INCREMENT NOT NULL, issue_number INT NOT NULL, language_id INT DEFAULT NULL, StartDate DATE NOT NULL, Days INT NOT NULL, PaidDays INT NOT NULL, NoticeSent VARCHAR(255) NOT NULL, IdSubscription INT DEFAULT NULL, INDEX IDX_DBC6BGGA303CB8FA (IdSubscription), INDEX IDX_DBC6BGGAFC5788D482F1BAF4 (issue_number, language_id), INDEX IDX_DBC6BGGA82F1BAF4 (language_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.2.x/2013.03.06/tables.sql",
    "content": "ALTER TABLE `Plugins` DROP PRIMARY KEY;\nALTER TABLE `Plugins` ADD `Id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , ADD `Description` TEXT NOT NULL ;\n\nUPDATE `SystemPreferences` SET `value` = 'public/videos/' WHERE `varname` = 'FlashDirectory';"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.2.x/2013.05.06/tables.sql",
    "content": "ALTER TABLE `ArticleRendition` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;\nALTER TABLE `ArticleRendition` CHANGE `image_id` `image_id` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL NOT NULL;\nALTER TABLE `ArticleRendition` CHANGE `rendition_id` `rendition_id` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL NOT NULL;\nALTER TABLE `ArticleRendition` CHANGE `articleNumber` `articleNumber` INT( 11 ) NOT NULL;\nALTER TABLE `ArticleRendition` CHANGE `imageSpecs` `imageSpecs` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL;\n\nALTER TABLE `package_item` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;\nALTER TABLE `package_item` CHANGE `id` `id` INT( 11 ) NOT NULL AUTO_INCREMENT;\nALTER TABLE `package_item` CHANGE `package_id` `package_id` INT( 11 ) DEFAULT NULL;\nALTER TABLE `package_item` CHANGE `image_id` `image_id` INT( 11 ) DEFAULT NULL;\nALTER TABLE `package_item` CHANGE `offset` `offset` INT( 11 ) NOT NULL;\nALTER TABLE `package_item` CHANGE `caption` `caption` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL;\nALTER TABLE `package_item` CHANGE `coords` `coords` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL;\nALTER TABLE `package_item` CHANGE `video_url` `video_url` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL;\n\nALTER TABLE `plugin_debate_vote` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;\nALTER TABLE `plugin_debate_vote` CHANGE `id_vote` `id_vote` INT( 11 ) NOT NULL;\nALTER TABLE `plugin_debate_vote` CHANGE `fk_debate_nr` `fk_debate_nr` INT( 11 ) NOT NULL;\nALTER TABLE `plugin_debate_vote` CHANGE `fk_answer_nr` `fk_answer_nr` INT( 11 ) NOT NULL;\nALTER TABLE `plugin_debate_vote` CHANGE `fk_user_id` `fk_user_id` INT( 11 ) NOT NULL;\n\nALTER TABLE `rendition` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;\nALTER TABLE `rendition` CHANGE `name` `name` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL NOT NULL;\nALTER TABLE `rendition` CHANGE `width` `width` INT( 11 ) NOT NULL;\nALTER TABLE `rendition` CHANGE `height` `height` INT( 11 ) NOT NULL;\nALTER TABLE `rendition` CHANGE `specs` `specs` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL NOT NULL;\nALTER TABLE `rendition` CHANGE `offset` `offset` INT( 11 ) NOT NULL;\nALTER TABLE `rendition` CHANGE `label` `label` VARCHAR( 80 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL NOT NULL;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.2.x/2013.05.28/move_files.php",
    "content": "<?php\n\n//move all files from /files to /public/files\n$newscoop_dir = __DIR__ . '/../../../../..';\n\n$files = array(\n\t'/application/configs/application.ini-dist',\n\t'/library/Newscoop/Services/EventDispatcherService.php',\n\t'/library/Newscoop/DoctrineEventDispatcherProxy.php',\n\t'/library/Newscoop/Entity/Repository/User/SubscriberRepository.php',\n\t'/library/Resource/Doctrine.php',\n\t'/application/modules/admin/controllers/TestController.php',\n\t'/application/controllers/ArticleofthedayController.php',\n\t'/library/Newscoop/Entity/User/Subscriber.php',\n\t'/library/Newscoop/Entity/Entity.php',\n\t'/.disable_upgrade',\n\t'/README.txt',\n\t'/.travis.yml',\n\t'/UPGRADE.txt'\n);\n\n$dirs = array(\n\t'/library/Newscoop/Entity/Proxy',\n\t'/library/fabpot-dependency-injection-07ff9ba',\n\t'/library/fabpot-event-dispatcher-782a5ef',\n\t'/library/smarty3',\n\t'/docs',\n\t'/files',\n\t'/videos',\n);\n\nrmove($newscoop_dir . '/files', $newscoop_dir . '/public/files');\nrmove($newscoop_dir . '/videos', $newscoop_dir . '/public/videos');\n\n$fail = false;\n$required_commands = array();\n\nforeach($files as $file) {\n\tif (file_exists($newscoop_dir . $file)) {\n\t\tif(unlink(realpath($newscoop_dir . $file)) !== true) {\n\t\t\techo 'Please remove file \"'.realpath($newscoop_dir . $file).'\"'.\"\\n\";\n\t\t\t$required_commands[] = 'sudo rm '.realpath($newscoop_dir . $file);\n\t\t\t$fail = true;\n\t\t};\n\t}\n}\n\nforeach($dirs as $dir) {\n\tif (file_exists($newscoop_dir . $dir)) {\n\t\tif(rrmdir(realpath($newscoop_dir . $dir)) !== true) {\n\t\t\techo 'Please remove directory rm -R \"'.realpath($newscoop_dir . $dir).'\"'.\"\\n\";\n\t\t\t$required_commands[] = 'sudo rm -R '.realpath($newscoop_dir . $dir);\n\t\t\t$fail = true;\n\t\t};\n\t}\n}\n\nif ($fail) {\n\techo 'Some files or directories needs your attention in order to continue. Please remove them manualy: ';\n\techo 'In linux it will be: <pre>';\n\tforeach($required_commands as $command) {\n\t\techo $command;\n\t}\n\techo '</pre>';\n\tdie;\n}\n\n/**\n * Recursively move files from one directory to another\n *\n * @param String $src - Source of files being moved\n * @param String $dest - Destination of files being moved\n */\nfunction rmove($src, $dest)\n{\n\t// If source is not a directory stop processing\n\tif(!is_dir($src)) return false;\n\t \n\t// If the destination directory does not exist create it\n\tif(!is_dir($dest)) {\n\t\tif(!mkdir($dest)) {\n\t\t\t// If the destination directory could not be created stop processing\n\t\t\treturn false;\n\t\t}\n\t}\n \n\t// Open the source directory to read in files\n\t$i = new DirectoryIterator($src);\n\tforeach($i as $f) {\n\t\tif($f->isFile()) {\n\t\t\trename($f->getRealPath(), \"$dest/\" . $f->getFilename());\n\t\t} else if(!$f->isDot() && $f->isDir()) {\n\t\t\trmove($f->getRealPath(), \"$dest/$f\");\n\t\t\t@unlink($f->getRealPath());\n\t\t}\n\t}\n\t@unlink($src);\n}\n\n// When the directory is not empty:\nfunction rrmdir($dir) {\n   \tif (is_dir($dir)) {\n     \t$objects = scandir($dir);\n    \tforeach ($objects as $object) {\n       \t\tif ($object != \".\" && $object != \"..\") {\n         \t\tif (filetype($dir.\"/\".$object) == \"dir\") rrmdir($dir.\"/\".$object); else unlink($dir.\"/\".$object);\n       \t\t}\n     \t}\n    \treset($objects);\n    \t\n    \treturn rmdir($dir);\n   }\n}"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.2.x/2013.05.28/tables.sql",
    "content": "system php ./move_files.php"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.2.x/2013.05.29/tables.sql",
    "content": "ALTER TABLE `rendition` CHANGE `offset` `offset` INT( 11 ) NULL , CHANGE `label` `label` VARCHAR( 80 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.2.x/2013.06.13/tables.sql",
    "content": "ALTER TABLE `package_item` CHANGE `id` `id` INT( 11 ) NOT NULL AUTO_INCREMENT;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2013.08.20/tables.sql",
    "content": "ALTER TABLE Plugins ADD Details LONGTEXT NOT NULL, ADD type INT NOT NULL, ADD installed_with INT NOT NULL, ADD author VARCHAR(256) NOT NULL, ADD license VARCHAR(256) NOT NULL, ADD installed_at DATETIME NOT NULL, ADD updated_at DATETIME DEFAULT NULL, CHANGE Name Name VARCHAR(256) NOT NULL, CHANGE Version Version VARCHAR(256) NOT NULL, CHANGE Enabled Enabled TINYINT(1) NOT NULL;\nALTER TABLE Subscriptions ADD IdSubscription INT DEFAULT NULL, CHANGE Id Id INT AUTO_INCREMENT NOT NULL, CHANGE IdUser IdUser INT DEFAULT NULL, CHANGE IdPublication IdPublication INT DEFAULT NULL, CHANGE Active Active VARCHAR(255) NOT NULL, CHANGE ToPay ToPay NUMERIC(10, 0) NOT NULL, CHANGE Currency Currency VARCHAR(255) NOT NULL, CHANGE Type Type VARCHAR(255) NOT NULL;\nCREATE INDEX IDX_B709C1F4F9C28DE1 ON Subscriptions (IdUser);\nCREATE INDEX IDX_B709C1F4303CB8FA ON Subscriptions (IdSubscription);\nCREATE INDEX IDX_B709C1F45C1FD3F4 ON Subscriptions (IdPublication);"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2013.11.21/data-required.sql",
    "content": "UPDATE `Languages` SET `RFC3066bis` = \"en-US\" WHERE `Code` = \"en\";\nUPDATE `Languages` SET `RFC3066bis` = \"de-DE\" WHERE `Code` = \"de\";\nUPDATE `Languages` SET `RFC3066bis` = \"pt-PT\" WHERE `Code` = \"pt\";\nUPDATE `Languages` SET `RFC3066bis` = \"fr-FR\" WHERE `Code` = \"fr\";\nUPDATE `Languages` SET `RFC3066bis` = \"es-ES\" WHERE `Code` = \"es\";\nUPDATE `Languages` SET `RFC3066bis` = \"ro-RO\" WHERE `Code` = \"ro\";\nUPDATE `Languages` SET `RFC3066bis` = \"hr-HR\" WHERE `Code` = \"hr\";\nUPDATE `Languages` SET `RFC3066bis` = \"cs-CZ\" WHERE `Code` = \"cs\";\nUPDATE `Languages` SET `RFC3066bis` = \"it-IT\" WHERE `Code` = \"it\";\nUPDATE `Languages` SET `RFC3066bis` = \"sr-Latn-SR\" WHERE `Code` = \"sh\";\nUPDATE `Languages` SET `RFC3066bis` = \"sr-Cyrl-SR\" WHERE `Code` = \"sr\";\nUPDATE `Languages` SET `RFC3066bis` = \"ru-RU\" WHERE `Code` = \"ru\";\nUPDATE `Languages` SET `RFC3066bis` = \"sv-SE\" WHERE `Code` = \"sv\";\nUPDATE `Languages` SET `RFC3066bis` = \"zh-Hans\" WHERE `Code` = \"zh\";\nUPDATE `Languages` SET `RFC3066bis` = \"ar-YE\" WHERE `Code` = \"ar\";\nUPDATE `Languages` SET `RFC3066bis` = \"ko-KR\" WHERE `Code` = \"ko\";\nUPDATE `Languages` SET `RFC3066bis` = \"nl-NL\" WHERE `Code` = \"nl\";\nUPDATE `Languages` SET `RFC3066bis` = \"be-BY\" WHERE `Code` = \"be\";\nUPDATE `Languages` SET `RFC3066bis` = \"ka-GE\" WHERE `Code` = \"ka\";\nUPDATE `Languages` SET `RFC3066bis` = \"zh-Hant\" WHERE `Code` = \"zh_TW\";\nUPDATE `Languages` SET `RFC3066bis` = \"pl-PL\" WHERE `Code` = \"pl\";\nUPDATE `Languages` SET `RFC3066bis` = \"el-GR\" WHERE `Code` = \"el\";\nUPDATE `Languages` SET `RFC3066bis` = \"he-IL\" WHERE `Code` = \"he\";\nUPDATE `Languages` SET `RFC3066bis` = \"bn-BD\" WHERE `Code` = \"bn\";\nUPDATE `Languages` SET `RFC3066bis` = \"pt-BR\" WHERE `Code` = \"pt_BR\";\nUPDATE `Languages` SET `RFC3066bis` = \"sq-AL\" WHERE `Code` = \"sq\";\nUPDATE `Languages` SET `RFC3066bis` = \"tr-TR\" WHERE `Code` = \"tr\";\nUPDATE `Languages` SET `RFC3066bis` = \"uk-UA\" WHERE `Code` = \"uk\";\nUPDATE `Languages` SET `RFC3066bis` = \"en-GB\" WHERE `Code` = \"en_GB\";\nUPDATE `Languages` SET `RFC3066bis` = \"ku-TR\" WHERE `Code` = \"ku\";\nUPDATE `Languages` SET `RFC3066bis` = \"de-AT\" WHERE `Code` = \"de_AT\";\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2013.11.21/tables.sql",
    "content": "ALTER TABLE `Languages` ADD `RFC3066bis` varchar(255) COLLATE 'utf8_general_ci' NOT NULL DEFAULT '' AFTER `Code`;\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2013.12.16/tables.sql",
    "content": "# Port some schema chnages from tageswoche to newscoop\nALTER TABLE `ArticleImages` DROP PRIMARY KEY;\nALTER TABLE `ArticleImages` ADD `id` int(11) NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST;\nALTER TABLE `ArticleImages` ADD UNIQUE (`NrArticle`, `IdImage`);\nALTER TABLE `Articles` CHANGE `indexed` `indexed` DATETIME NULL DEFAULT NULL;\nALTER TABLE `Articles` ADD INDEX `indexed` ( `indexed` );\nALTER TABLE `Authors` ADD `user_id` INT NOT NULL;\nALTER TABLE `Images` ADD `photographer_url` VARCHAR( 255 ) NOT NULL;\nALTER TABLE `MapLocations` ADD INDEX `rank` ( `rank`,`id` );\nALTER TABLE `audit_event` CHANGE `resource_id` `resource_id` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ;\nALTER TABLE `comment` CHANGE `recommended` `recommended` TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT '0';\nALTER TABLE `comment` ADD `indexed` DATETIME NULL;\nALTER TABLE `comment` ADD INDEX `indexed` ( `indexed` );\nALTER TABLE `liveuser_users` ADD `indexed` DATETIME NULL ;\nALTER TABLE `liveuser_users` ADD INDEX `indexed` ( `indexed` ) ;\nALTER TABLE `playlist_article` CHANGE `id_playlist_article` `id_playlist_article` INT( 11 ) UNSIGNED NOT NULL AUTO_INCREMENT ;\nALTER TABLE `user_attribute` CHANGE `value` `value` VARCHAR( 300 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ;\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.01.11/tables.sql",
    "content": "DROP TABLE IF EXISTS OAuthAccessToken;\nCREATE TABLE OAuthAccessToken (\n  id INT AUTO_INCREMENT NOT NULL,\n  client_id INT NOT NULL,\n  token VARCHAR(255) NOT NULL,\n  expires_at INT DEFAULT NULL,\n  scope VARCHAR(255) DEFAULT NULL,\n  IdPublication INT DEFAULT NULL,\n  UNIQUE INDEX UNIQ_DDE10DD55F37A13B (token),\n  INDEX IDX_DDE10DD519EB6921 (client_id),\n  INDEX IDX_DDE10DD55C1FD3F4 (IdPublication),\n  PRIMARY KEY(id)\n) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\nDROP TABLE IF EXISTS OAuthAuthCode;\nCREATE TABLE OAuthAuthCode (\n  id INT AUTO_INCREMENT NOT NULL,\n  client_id INT NOT NULL,\n  token VARCHAR(255) NOT NULL,\n  redirect_uri LONGTEXT NOT NULL,\n  expires_at INT DEFAULT NULL,\n  scope VARCHAR(255) DEFAULT NULL,\n  IdPublication INT DEFAULT NULL,\n  UNIQUE INDEX UNIQ_3DD60F725F37A13B (token),\n  INDEX IDX_3DD60F7219EB6921 (client_id),\n  INDEX IDX_3DD60F725C1FD3F4 (IdPublication),\n  PRIMARY KEY(id)\n) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\nDROP TABLE IF EXISTS OAuthRefreshToken;\nCREATE TABLE OAuthRefreshToken (\n  id INT AUTO_INCREMENT NOT NULL,\n  client_id INT NOT NULL,\n  token VARCHAR(255) NOT NULL,\n  expires_at INT DEFAULT NULL,\n  scope VARCHAR(255) DEFAULT NULL,\n  IdPublication INT DEFAULT NULL,\n  UNIQUE INDEX UNIQ_4A42604C5F37A13B (token),\n  INDEX IDX_4A42604C19EB6921 (client_id),\n  INDEX IDX_4A42604C5C1FD3F4 (IdPublication),\n  PRIMARY KEY(id)\n) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\nDROP TABLE IF EXISTS OAuthPublicApiResources;\nCREATE TABLE OAuthPublicApiResources (\n  id INT AUTO_INCREMENT NOT NULL,\n  resource VARCHAR(255) NOT NULL,\n  PRIMARY KEY(id)\n) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\nDROP TABLE IF EXISTS OAuthClient;\nCREATE TABLE OAuthClient (\n  id INT AUTO_INCREMENT NOT NULL,\n  random_id VARCHAR(255) NOT NULL,\n  redirect_uris LONGTEXT NOT NULL COMMENT '(DC2Type:array)',\n  secret VARCHAR(255) NOT NULL,\n  allowed_grant_types LONGTEXT NOT NULL COMMENT '(DC2Type:array)',\n  name VARCHAR(255) NOT NULL,\n  IdPublication INT DEFAULT NULL,\n  INDEX IDX_4128BE95C1FD3F4 (IdPublication),\n  PRIMARY KEY(id)\n) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\nALTER TABLE OAuthAccessToken ADD CONSTRAINT FK_DDE10DD519EB6921 FOREIGN KEY (client_id) REFERENCES OAuthClient (id);\nALTER TABLE OAuthAuthCode ADD CONSTRAINT FK_3DD60F7219EB6921 FOREIGN KEY (client_id) REFERENCES OAuthClient (id);\nALTER TABLE OAuthRefreshToken ADD CONSTRAINT FK_4A42604C19EB6921 FOREIGN KEY (client_id) REFERENCES OAuthClient (id);"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.01.13/tables.sql",
    "content": "DROP TABLE IF EXISTS `Snippets`;\nCREATE TABLE IF NOT EXISTS `Snippets` (\n  `Id` int(11) NOT NULL AUTO_INCREMENT,\n  `Name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,\n  `Enabled` tinyint(1) NOT NULL,\n  `Created` datetime NOT NULL,\n  `Modified` datetime NOT NULL,\n  `TemplateId` int(11) DEFAULT NULL,\n  PRIMARY KEY (`Id`),\n  KEY `IDX_1457978AF846113F` (`TemplateId`)\n) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;\nDROP TABLE IF EXISTS `SnippetTemplates`;\nCREATE TABLE IF NOT EXISTS SnippetTemplates (\n  `Id` int(11) NOT NULL AUTO_INCREMENT,\n  `Name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,\n  `Controller` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,\n  `TemplateCode` longtext COLLATE utf8_unicode_ci NOT NULL,\n  `Favourite` tinyint(1) DEFAULT NULL,\n  `Enabled` tinyint(1) NOT NULL,\n  `IconInactive` longtext COLLATE utf8_unicode_ci,\n  `IconActive` longtext COLLATE utf8_unicode_ci,\n  `Created` datetime NOT NULL,\n  `Modified` datetime NOT NULL,\n  PRIMARY KEY (`Id`)\n) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;\nALTER TABLE Snippets ADD CONSTRAINT SnippetTemplate FOREIGN KEY (TemplateId) REFERENCES SnippetTemplates (Id);\nDROP TABLE IF EXISTS `ArticleSnippets`;\nCREATE TABLE ArticleSnippets (\n  ArticleId INT NOT NULL,\n  SnippetId INT NOT NULL,\n  INDEX IDX_5080CDE7C53224D (ArticleId),\n  INDEX IDX_5080CDEB00DA91C (SnippetId),\n  PRIMARY KEY(ArticleId, SnippetId)\n) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.01.14/tables.sql",
    "content": "ALTER TABLE  `Images` DROP  `Caption` ;\nDROP INDEX is_updated_storage ON Images;\nALTER TABLE\n    Images CHANGE Id Id INT AUTO_INCREMENT NOT NULL,\n    CHANGE Photographer Photographer VARCHAR(255) DEFAULT NULL,\n    CHANGE Place Place VARCHAR(255) DEFAULT NULL,\n    CHANGE Date Date VARCHAR(255) DEFAULT NULL,\n    CHANGE ContentType ContentType VARCHAR(255) NOT NULL,\n    CHANGE Location Location VARCHAR(255) NOT NULL,\n    CHANGE URL URL VARCHAR(255) DEFAULT NULL,\n    CHANGE ThumbnailFileName ThumbnailFileName VARCHAR(80) DEFAULT NULL,\n    CHANGE ImageFileName ImageFileName VARCHAR(80) DEFAULT NULL,\n    CHANGE LastModified LastModified DATETIME DEFAULT NULL,\n    CHANGE TimeCreated TimeCreated DATETIME DEFAULT NULL,\n    CHANGE Source Source VARCHAR(255) DEFAULT NULL,\n    CHANGE Status Status VARCHAR(255) NOT NULL,\n    CHANGE is_updated_storage is_updated_storage INT NOT NULL,\n    CHANGE photographer_url photographer_url VARCHAR(255) DEFAULT NULL\n;\nCREATE INDEX IDX_E7B3BB5C447C15B9 ON Images (UploadedByUser);\nCREATE INDEX is_updated_storage ON Images (is_updated_storage);\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.01.21/tables.sql",
    "content": "ALTER TABLE Attachments CHANGE\n    id Id INT AUTO_INCREMENT NOT NULL,\n    CHANGE fk_language_id fk_language_id INT DEFAULT NULL,\n    CHANGE size_in_bytes size_in_bytes BIGINT DEFAULT NULL,\n    CHANGE fk_user_id fk_user_id INT DEFAULT NULL,\n    CHANGE last_modified last_modified DATETIME NOT NULL,\n    CHANGE time_created time_created DATETIME NOT NULL,\n    CHANGE Source Source VARCHAR(255) NOT NULL,\n    CHANGE Status Status VARCHAR(255) NOT NULL\n;\nALTER TABLE Attachments ADD CONSTRAINT FK_C158750178917F82 FOREIGN KEY (fk_description_id) REFERENCES Translations (id);\nCREATE INDEX IDX_C1587501EB0716C0 ON Attachments (fk_language_id);\nCREATE UNIQUE INDEX UNIQ_C158750178917F82 ON Attachments (fk_description_id);\n\nALTER TABLE ArticleAttachments DROP INDEX article_attachment_index;\nALTER TABLE ArticleAttachments ADD PRIMARY KEY (fk_article_number, fk_attachment_id);\nALTER TABLE ArticleAttachments CHANGE fk_article_number fk_article_number INT NOT NULL, CHANGE fk_attachment_id fk_attachment_id INT NOT NULL;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.01.24/tables.sql",
    "content": "ALTER TABLE  `comment` ADD  `source` VARCHAR(60) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL AFTER  `indexed` ;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.02.07/tables.sql",
    "content": "ALTER TABLE OAuthAccessToken ADD user_id INT DEFAULT NULL;\nCREATE INDEX IDX_DDE10DD5A76ED395 ON OAuthAccessToken (user_id);\nALTER TABLE OAuthAuthCode ADD user_id INT DEFAULT NULL;\nCREATE INDEX IDX_3DD60F72A76ED395 ON OAuthAuthCode (user_id);\nALTER TABLE OAuthRefreshToken ADD user_id INT DEFAULT NULL;\nCREATE INDEX IDX_4A42604CA76ED395 ON OAuthRefreshToken (user_id);"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.02.11/tables.sql",
    "content": "ALTER TABLE  `liveuser_users` CHANGE  `indexed`  `indexed` DATETIME NULL;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.03.04/tables.sql",
    "content": "ALTER TABLE `context_articles` ADD INDEX `article_number` ( `fk_article_no` );\nALTER TABLE `context_boxes` ADD INDEX `article_number` ( `fk_article_no` );"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.03.10/tables.sql",
    "content": "ALTER TABLE `webcode` ADD UNIQUE `article_language` (`article_number`, `language_id`);\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.03.12/tables.sql",
    "content": "CREATE TABLE IF NOT EXISTS `ArticleImageCaptions` (\n  `id` int(11) NOT NULL AUTO_INCREMENT,\n  `IdLanguage` int(11) NOT NULL,\n  `IdImage` int(11) NOT NULL,\n  `NrArticle` int(11) NOT NULL,\n  `caption` varchar(255) NOT NULL,\n  `articleImage_id` int(11) NOT NULL,\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `imageId` (`IdImage`,`NrArticle`,`IdLanguage`),\n  KEY `IDX_1E9BFCA410F3034D6CB384EF` (`IdImage`,`NrArticle`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=10 ;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.04.11/tables.sql",
    "content": "ALTER TABLE  `liveuser_users` ADD  `registered_with_publication` INT NULL DEFAULT NULL ;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.05.09/data-required.sql",
    "content": "INSERT IGNORE INTO `Languages`(`Name`, `CodePage`, `OrigName`, `Code`, `RFC3066bis`, `Month1`, `Month2`, `Month3`, `Month4`, `Month5`, `Month6`, `Month7`, `Month8`, `Month9`, `Month10`, `Month11`, `Month12`, `WDay1`, `WDay2`, `WDay3`, `WDay4`, `WDay5`, `WDay6`, `WDay7`, `ShortMonth1`, `ShortMonth2`, `ShortMonth3`, `ShortMonth4`, `ShortMonth5`, `ShortMonth6`, `ShortMonth7`, `ShortMonth8`, `ShortMonth9`, `ShortMonth10`, `ShortMonth11`, `ShortMonth12`, `ShortWDay1`, `ShortWDay2`, `ShortWDay3`, `ShortWDay4`, `ShortWDay5`, `ShortWDay6`, `ShortWDay7`) VALUES ('Hungarian', 'ISO_8859-2', 'Magyar', 'hu', 'hu-HU', 'Január', 'Február', 'Március', 'Április', 'Május', 'Június', 'Július', 'Augusztus', 'Szeptember', 'Október', 'November', 'December', 'Vasárnap', 'Hétfő', 'Kedd', 'Szerda', 'Csütörtök', 'Péntek', 'Szombat', 'Jan', 'Feb', 'Már', 'Ápr', 'Május', 'Jún', 'Júl', 'Aug', 'Szep', 'Okt', 'Nov', 'Dec', 'Va', 'Hé', 'Ke', 'Sze', 'Cs', 'Pé', 'Szu');\nINSERT IGNORE INTO `Languages`(`Name`, `CodePage`, `OrigName`, `Code`, `RFC3066bis`, `Month1`, `Month2`, `Month3`, `Month4`, `Month5`, `Month6`, `Month7`, `Month8`, `Month9`, `Month10`, `Month11`, `Month12`, `WDay1`, `WDay2`, `WDay3`, `WDay4`, `WDay5`, `WDay6`, `WDay7`, `ShortMonth1`, `ShortMonth2`, `ShortMonth3`, `ShortMonth4`, `ShortMonth5`, `ShortMonth6`, `ShortMonth7`, `ShortMonth8`, `ShortMonth9`, `ShortMonth10`, `ShortMonth11`, `ShortMonth12`, `ShortWDay1`, `ShortWDay2`, `ShortWDay3`, `ShortWDay4`, `ShortWDay5`, `ShortWDay6`, `ShortWDay7`) VALUES ('Azerbaijani', 'ISO_8859-9', 'Azərbaycanca', 'az', 'az-AZ', 'Yanvar', 'Fevral', 'Mart', 'Aprel', 'May', 'İyun', 'İyul', 'Avqust', 'Sentyabr', 'Oktyabr', 'Noyabr', 'Dekabr', 'Bazar', 'Bazar ertəsi', 'Çərşənbə axşamı', 'Çərşənbə', 'Cümə axşamı', 'Cümə', 'Şənbə', 'Yanvar', 'Fevral', 'Mart', 'Aprel', 'May', 'İyun', 'İyul', 'Avqust', 'Sentyabr', 'Oktyabr', 'Noyabr', 'Dekabr', 'B', 'B.e', 'Ç.a', 'Ç', 'Ca', 'C', 'Ş');\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.05.13/tables.sql",
    "content": "CREATE TABLE user_oauth_clients (user_id INT NOT NULL, client_id INT NOT NULL, INDEX IDX_FD402C51A76ED395 (user_id), INDEX IDX_FD402C5119EB6921 (client_id), PRIMARY KEY(user_id, client_id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.05.21/tables.sql",
    "content": "ALTER TABLE  `OAuthClient` ADD  `trusted` TINYINT(1) NOT NULL;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.06.06/tables.sql",
    "content": "ALTER TABLE `liveuser_rights` CHANGE `right_define_name` `right_define_name` VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '';"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.06.10/data-required.sql",
    "content": "INSERT INTO `SystemPreferences` (`varname`, `value`, `last_modified`) VALUES ('SmartyUseProtocol', 'Y', NULL);\nINSERT INTO `SnippetTemplates` (`Id`, `Name`, `Controller`, `TemplateCode`, `Favourite`, `Enabled`, `IconInactive`, `IconActive`, `Created`, `Modified`)\nVALUES \n\t(1, 'Embed.ly', 'Newscoop\\\\NewscoopBundle\\\\Controller\\\\EmbedlyController', '<a class=\\\"embedly-card\\\" href=\\\"{{ URL }}\\\">{{ title }}</a><script>!function(a){var b=\\\"embedly-platform\\\",c=\\\"script\\\";if(!a.getElementById(b)){var d=a.createElement(c);d.id=b,d.src=(\\\"https:\\\"===document.location.protocol?\\\"https\\\":\\\"http\\\")+\\\"://cdn.embedly.com/widgets/platform.js\\\";var e=document.getElementsByTagName(c)[0];e.parentNode.insertBefore(d,e)}}(document);</script>', 0, 1, NULL, NULL, '2014-05-12 13:19:43', '2014-05-12 13:19:43');\n\nINSERT INTO `SnippetTemplateField` (`Id`, `Name`, `Type`, `Scope`, `Required`, `TemplateId`)\nVALUES\n\t(1, 'URL', 'url', 'frontend', 1, 1),\n\t(2, 'maxwidth', 'integer', 'frontend', 0, 1),\n\t(3, 'provider_url', 'url', 'backend', 0, 1),\n\t(4, 'description', 'textarea', 'backend', 0, 1),\n\t(5, 'title', 'text', 'backend', 0, 1),\n\t(6, 'type', 'text', 'backend', 0, 1),\n\t(7, 'thumbnail_width', 'integer', 'backend', 0, 1),\n\t(8, 'height', 'integer', 'backend', 0, 1),\n\t(9, 'width', 'integer', 'backend', 0, 1),\n\t(10, 'html', 'textarea', 'backend', 0, 1),\n\t(11, 'author_name', 'text', 'backend', 0, 1),\n\t(12, 'version', 'text', 'backend', 0, 1),\n\t(13, 'provider_name', 'text', 'backend', 0, 1),\n\t(14, 'thumbnail_url', 'url', 'backend', 0, 1),\n\t(15, 'thumbnail_height', 'integer', 'backend', 0, 1),\n\t(16, 'author_url', 'url', 'backend', 0, 1);\nINSERT INTO `SnippetTemplates` (`Id`, `Name`, `Controller`, `TemplateCode`, `Favourite`, `Enabled`, `IconInactive`, `IconActive`, `Created`, `Modified`)\nVALUES\n\t(2, 'Youtube', NULL, '<iframe width=\\\"{{ width }}\\\" height=\\\"{{ height }}\\\" src=\\\"//www.youtube.com/embed/{{ ID }}\\\" frameborder=\\\"0\\\" allowfullscreen></iframe>', 1, 1, NULL, NULL, '0000-00-00 00:00:00', '0000-00-00 00:00:00');\n\nINSERT INTO `SnippetTemplateField` (`Id`, `Name`, `Type`, `Scope`, `TemplateId`, `Required`)\nVALUES\n\t(18, 'ID', 'text', 'frontend', 2, 1),\n\t(19, 'width', 'integer', 'frontend', 2, 0),\n\t(20, 'height', 'integer', 'frontend', 2, 0);\nINSERT INTO `SnippetTemplates` (`Id`, `Name`, `Controller`, `TemplateCode`, `Favourite`, `Enabled`, `IconInactive`, `IconActive`, `Created`, `Modified`)\nVALUES\n\t(3, 'Vimeo', NULL, '<iframe src=\\\"//player.vimeo.com/video/{{ ID }}\\\" width=\\\"{{ width }}\\\" height=\\\"{{ height }}\\\" frameborder=\\\"0\\\" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>', 1, 1, NULL, NULL, '0000-00-00 00:00:00', '0000-00-00 00:00:00');\n\nINSERT INTO `SnippetTemplateField` (`Id`, `Name`, `Type`, `Scope`, `TemplateId`, `Required`)\nVALUES\n\t(21, 'ID', 'text', 'frontend', 3, 1),\n\t(22, 'width', 'integer', 'frontend', 3, 0),\n\t(23, 'height', 'integer', 'frontend', 3, 0);\nINSERT INTO `SnippetTemplates` (`Id`, `Name`, `Controller`, `TemplateCode`, `Favourite`, `Enabled`, `IconInactive`, `IconActive`, `Created`, `Modified`)\nVALUES\n\t(4, 'Generic', NULL, '{{Generic | raw}}', 0, 1, NULL, NULL, '2014-06-10 14:15:49', '2014-06-10 14:15:49');\n\nINSERT INTO `SnippetTemplateField` (`Id`, `Name`, `Type`, `Scope`, `TemplateId`, `Required`)\nVALUES\n\t(24, 'Generic', 'textarea', 'frontend', 4, 1);\nINSERT INTO `Snippets` (`Id`, `Name`, `Enabled`, `Created`, `Modified`, `TemplateId`)\nVALUES\n\t(1, 'Youtube Sourcefabric Booktype Video', 1, '2014-06-10 13:15:10', '2014-06-10 13:15:12', 1);\n\nINSERT INTO `SnippetFields` (`Id`, `Data`, `SnippetId`, `TemplateFieldId`, `Name`)\nVALUES\n\t(1, 'https://www.youtube.com/watch?v=AYVUPem_jaM', 1, 1, 'URL'),,\n\t(2, '0', 1, 3, 'maxwidth'),\n\t(3, 'http://www.youtube.com/', 1, 4, 'provider_url'),\n\t(4, 'Sourcefabric builds open source software to support independent media worldwide. On February 14th, we\\'ll announce our tool to help people and organisations write and publish great multi-platform books. Write and publish great books ready for iPad, Kindle, Nook or print within minutes.', 1, 5, 'description'),\n\t(5, 'The future of the book is in your hands', 1, 6, 'title'),\n\t(6, 'video', 1, 7, 'type'),\n\t(7, '480', 1, 8, 'thumbnail_width'),\n\t(8, '309', 1, 9, 'height'),\n\t(9, '550', 1, 10, 'width'),\n\t(10, '<iframe class=\\\"embedly-embed\\\" src=\\\"//cdn.embedly.com/widgets/media.html?url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DAYVUPem_jaM&src=http%3A%2F%2Fwww.youtube.com%2Fembed%2FAYVUPem_jaM%3Ffeature%3Doembed&image=http%3A%2F%2Fi1.ytimg.com%2Fvi%2FAYVUPem_jaM%2Fhqdefault.jpg&type=text%2Fhtml&schema=youtube\\\" width=\\\"550\\\" height=\\\"309\\\" scrolling=\\\"no\\\" frameborder=\\\"0\\\" allowfullscreen></iframe>', 1, 11, 'html'),\n\t(11, 'Sourcefabric', 1, 12, 'author_name'),\n\t(12, '1.0', 1, 13, 'version'),\n\t(13, 'YouTube', 1, 14, 'provider_name'),\n\t(14, 'http://i1.ytimg.com/vi/AYVUPem_jaM/hqdefault.jpg', 1, 15, 'thumbnail_url'),\n\t(15, '360', 1, 16, 'thumbnail_height'),\n\t(16, 'http://www.youtube.com/user/Sourcefabric', 1, 17, 'author_url');\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.06.10/tables.sql",
    "content": "CREATE TABLE IF NOT EXISTS SnippetTemplates (Id INT AUTO_INCREMENT NOT NULL, Name VARCHAR(255) NOT NULL, Controller VARCHAR(255) DEFAULT NULL, TemplateCode LONGTEXT NOT NULL, Favourite TINYINT(1) DEFAULT NULL, Enabled TINYINT(1) NOT NULL, IconInactive LONGTEXT DEFAULT NULL, IconActive LONGTEXT DEFAULT NULL, Created DATETIME NOT NULL, Modified DATETIME NOT NULL, PRIMARY KEY(Id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\nCREATE TABLE IF NOT EXISTS SnippetTemplateField (Id INT AUTO_INCREMENT NOT NULL, Name VARCHAR(255) NOT NULL, Type VARCHAR(255) NOT NULL, Scope VARCHAR(255) NOT NULL, Required TINYINT(1) NOT NULL, TemplateId INT NOT NULL, INDEX IDX_2060662F846113F (TemplateId), PRIMARY KEY(Id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\nCREATE TABLE IF NOT EXISTS SnippetFields (Id INT AUTO_INCREMENT NOT NULL, Data LONGTEXT DEFAULT NULL, Name VARCHAR(255) NOT NULL, SnippetId INT NOT NULL, TemplateFieldId INT NOT NULL, INDEX IDX_1F835121B00DA91C (SnippetId), INDEX IDX_1F835121EBCA9337 (TemplateFieldId), PRIMARY KEY(Id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\nCREATE TABLE IF NOT EXISTS Snippets (Id INT AUTO_INCREMENT NOT NULL, Name VARCHAR(255) NOT NULL, Enabled TINYINT(1) NOT NULL, Created DATETIME NOT NULL, Modified DATETIME NOT NULL, TemplateId INT DEFAULT NULL, INDEX IDX_1457978AF846113F (TemplateId), PRIMARY KEY(Id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\nCREATE TABLE IF NOT EXISTS `ArticleSnippets` (`ArticleNr` int(11) NOT NULL, `SnippetId` int(11) NOT NULL, KEY `FK_5080CDEB00DA91C` (`SnippetId`), CONSTRAINT `FK_5080CDEB00DA91C` FOREIGN KEY (`SnippetId`) REFERENCES `Snippets` (`Id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;\nALTER TABLE SnippetTemplateField ADD CONSTRAINT FK_2060662F846113F FOREIGN KEY (TemplateId) REFERENCES SnippetTemplates (Id);\nALTER TABLE SnippetFields ADD CONSTRAINT FK_1F835121B00DA91C FOREIGN KEY (SnippetId) REFERENCES Snippets (Id);\nALTER TABLE SnippetFields ADD CONSTRAINT FK_1F835121EBCA9337 FOREIGN KEY (TemplateFieldId) REFERENCES SnippetTemplateField (Id);\nALTER TABLE Snippets ADD CONSTRAINT FK_1457978AF846113F FOREIGN KEY (TemplateId) REFERENCES SnippetTemplates (Id);"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.06.11/tables.sql",
    "content": "ALTER TABLE `KeywordIndex` ADD INDEX `Id` (`Id`);\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.06.12/tables.sql",
    "content": "ALTER TABLE  `Articles` ADD INDEX  `articles_pub_issue_section_type` (  `IdPublication` ,  `IdLanguage` ,  `Published` ,  `NrIssue` ,  `NrSection` ,  `Type` );\nALTER TABLE  `ArticleAuthors` ADD INDEX `fk_article_number` (  `fk_article_number` );"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.07.21/tables.sql",
    "content": "ALTER TABLE `ArticleTypeMetadata` ADD COLUMN `show_in_editor` int(1) NOT NULL DEFAULT '1';\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.07.28/data-required.sql",
    "content": "INSERT IGNORE INTO `Languages` (`Name`, `CodePage`, `OrigName`, `Code`, `RFC3066bis`, `Month1`, `Month2`, `Month3`, `Month4`, `Month5`, `Month6`, `Month7`, `Month8`, `Month9`, `Month10`, `Month11`, `Month12`, `WDay1`, `WDay2`, `WDay3`, `WDay4`, `WDay5`, `WDay6`, `WDay7`, `ShortMonth1`, `ShortMonth2`, `ShortMonth3`, `ShortMonth4`, `ShortMonth5`, `ShortMonth6`, `ShortMonth7`, `ShortMonth8`, `ShortMonth9`, `ShortMonth10`, `ShortMonth11`, `ShortMonth12`, `ShortWDay1`, `ShortWDay2`, `ShortWDay3`, `ShortWDay4`, `ShortWDay5`, `ShortWDay6`, `ShortWDay7`) VALUES ('Danish', 'ISO_8859-1', 'Dansk', 'da', 'da-DK', 'Januar', 'Februar', 'Marts', 'April', 'Maj', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'December', 'Søndag', 'Mandag', 'Tirsdag', 'Onsdag', 'Torsdag', 'Fredag', 'Lørdag', 'Jan', 'Feb', 'Mar', 'Apr', 'Maj', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dec', 'Søn', 'Man', 'Tir', 'Ons', 'Tor', 'Fre', 'Lør');\nINSERT IGNORE INTO `Languages` (`Name`, `CodePage`, `OrigName`, `Code`, `RFC3066bis`, `Month1`, `Month2`, `Month3`, `Month4`, `Month5`, `Month6`, `Month7`, `Month8`, `Month9`, `Month10`, `Month11`, `Month12`, `WDay1`, `WDay2`, `WDay3`, `WDay4`, `WDay5`, `WDay6`, `WDay7`, `ShortMonth1`, `ShortMonth2`, `ShortMonth3`, `ShortMonth4`, `ShortMonth5`, `ShortMonth6`, `ShortMonth7`, `ShortMonth8`, `ShortMonth9`, `ShortMonth10`, `ShortMonth11`, `ShortMonth12`, `ShortWDay1`, `ShortWDay2`, `ShortWDay3`, `ShortWDay4`, `ShortWDay5`, `ShortWDay6`, `ShortWDay7`) VALUES ('Armenian', 'UTF-8', 'Հայերեն', 'hy_AM', 'hy-AM', 'Հունվար', 'Փետրվար', 'Մարտ', 'Ապրիլ', 'Մայիս', 'Հունիս', 'Հուլիս', 'Օգոստոս', 'Սեպտեմբեր', 'Հոկտեմբեր', 'Նոյեմբեր', 'Դեկտեմբեր', 'Կիրակի', 'Երկուշաբթի', 'Երեքշաբթի', 'Չորեքշաբթի', 'Հինգշաբթի', 'ՈՒրբաթ', 'Շաբաթ', 'Հունվ', 'Փետր', 'Մարտ', 'Ապր', 'Մայ', 'Հուն', 'Հուլ', 'Օգոս', 'Սեպ', 'Հոկտ', 'Նոյ', 'Դեկ', 'Կիր', 'Երկ', 'Երք', 'Չոր', 'Հնգ', 'ՈՒր', 'Շաբ');\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.07.29/tables.sql",
    "content": "ALTER TABLE  `ArticleImageCaptions` CHANGE  `caption`  `caption` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;\n\nCREATE TABLE IF NOT EXISTS `cron_jobs` (\n  `id` int AUTO_INCREMENT NOT NULL,\n  `name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,\n  `command` varchar(255) COLLATE utf8_unicode_ci NOT NULL,\n  `schedule` varchar(255) COLLATE utf8_unicode_ci NOT NULL,\n  `is_debug` tinyint(1) DEFAULT NULL,\n  `dateFormat` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,\n  `output` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,\n  `runOnHost` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,\n  `environment` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,\n  `runAs` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,\n  `is_active` tinyint(1) NOT NULL,\n  `sendMail` tinyint(1) NOT NULL,\n  `detailsUrl` TEXT NULL,\n  `created_at` datetime NOT NULL,\n  PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.07.30/cronjobs.php",
    "content": "<?php\n\nrequire_once __DIR__ . '/../../../../../../conf/database_conf.php';\n\nglobal $Campsite;\n\n$newscoopDir = dirname(__FILE__).'/../../../../../../';\nrequire_once $newscoopDir . 'vendor/yzalis/crontab/src/Crontab/Crontab.php';\nrequire_once $newscoopDir . 'vendor/yzalis/crontab/src/Crontab/BaseJob.php';\nrequire_once $newscoopDir . 'vendor/yzalis/crontab/src/Crontab/Job.php';\nrequire_once $newscoopDir . 'vendor/yzalis/crontab/src/Crontab/CrontabFileHandler.php';\nrequire_once $newscoopDir . 'vendor/symfony/symfony/src/Symfony/Component/Process/Process.php';\nrequire_once $newscoopDir . 'vendor/symfony/symfony/src/Symfony/Component/Process/ProcessPipes.php';\n\nuse Crontab\\Crontab;\nuse Crontab\\Job;\n\n$crontab = new Crontab();\n\n$newscoopRealPath = realpath($newscoopDir);\n$newscoopJobs = array(\n    $newscoopRealPath . '/application/console user:garbage',\n    $newscoopRealPath . '/bin/newscoop-autopublish',\n    $newscoopRealPath . '/bin/newscoop-indexer',\n    $newscoopRealPath . '/bin/subscription-notifier',\n    $newscoopRealPath . '/bin/events-notifier',\n    $newscoopRealPath . '/bin/newscoop-statistics',\n    $newscoopRealPath . '/bin/newscoop-stats',\n    $newscoopRealPath . '/scripts/newscoop.php',\n    $newscoopRealPath . '/application/console log:maintenance',\n);\n\n$connection = mysqli_connect($Campsite['db']['host'], $Campsite['db']['user'], $Campsite['db']['pass'], $Campsite['db']['name']);\nif (mysqli_connect_errno()) {\n    echo \"Failed to connect to MySQL: \" . mysqli_connect_error();\n}\n\nforeach ($crontab->getJobs() as $key => $job) {\n    foreach ($newscoopJobs as $key => $value) {\n        if (strpos($job->getCommand(), $value) !== false) {\n            $crontab->removeJob($job);\n        }\n    }\n}\n\n$job = new Job();\n$job->setMinute('*')->setHour('*')->setDayOfMonth('*')->setMonth('*')->setDayOfWeek('*')\n    ->setCommand('php '.$newscoopRealPath . '/application/console scheduler:run');\n$crontab->addJob($job);\n\nmysqli_query($connection, \"INSERT INTO `cron_jobs`(`name`, `command`, `schedule`, `is_active`, `created_at`, `sendMail`) VALUES ('Remove obsolete pending users data','\" . $newscoopRealPath . \"/application/console user:garbage','30 0 * * *', 1, NOW(), 0)\");\nmysqli_query($connection, \"INSERT INTO `cron_jobs`(`name`, `command`, `schedule`, `is_active`, `created_at`, `sendMail`) VALUES ('Autopublish pending issues and articles','\" . $newscoopRealPath . \"/bin/newscoop-autopublish','* * * * *', 1, NOW(), 0)\");\nmysqli_query($connection, \"INSERT INTO `cron_jobs`(`name`, `command`, `schedule`, `is_active`, `created_at`, `sendMail`) VALUES ('Runs Newscoop Indexer - articles indexing','\" . $newscoopRealPath . \"/bin/newscoop-indexer','0 */4 * * *', 1, NOW(), 0)\");\nmysqli_query($connection, \"INSERT INTO `cron_jobs`(`name`, `command`, `schedule`, `is_active`, `created_at`, `sendMail`) VALUES ('Send Newscoop subscriptions notifications','\" . $newscoopRealPath . \"/bin/subscription-notifier','0 */8 * * *', 1, NOW(), 0)\");\nmysqli_query($connection, \"INSERT INTO `cron_jobs`(`name`, `command`, `schedule`, `is_active`, `created_at`, `sendMail`) VALUES ('Send Newscoop events notifications','\" . $newscoopRealPath . \"/bin/events-notifier','*/2 * * * *', 1, NOW(), 0)\");\nmysqli_query($connection, \"INSERT INTO `cron_jobs`(`name`, `command`, `schedule`, `is_active`, `created_at`, `sendMail`) VALUES ('Remove old statistics from Newscoop database','\" . $newscoopRealPath . \"/bin/newscoop-statistics','0 */4 * * *', 1, NOW(), 0)\");\nmysqli_query($connection, \"INSERT INTO `cron_jobs`(`name`, `command`, `schedule`, `is_active`, `created_at`, `sendMail`) VALUES ('Send Newscoop stats to Sourcefabric','\" . $newscoopRealPath . \"/bin/newscoop-stats','0 5 * * *', 1, NOW(), 0)\");\nmysqli_query($connection, \"INSERT INTO `cron_jobs`(`name`, `command`, `schedule`, `is_active`, `created_at`, `sendMail`, `detailsUrl`) VALUES ('Display the last 7 days logged actions when going to Configure -> Logs. All the rest are stored in newscoop-audit.log.','\".$newscoopRealPath . \"/application/console log:maintenance','30 1 * * *', 0, NOW(), 0, 'http://sourcefabric.booktype.pro/newscoop-42-for-journalists-and-editors/log-file-maintenance/')\");\n\n$crontab->write();\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.07.30/tables.sql",
    "content": "system php ./cronjobs.php"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.08.11/data-required.sql",
    "content": "INSERT IGNORE INTO `SystemPreferences` (`varname`, `value`, `last_modified`) VALUES ('MediaRichTextCaptions', 'Y', NOW());\n\nINSERT IGNORE INTO `SystemPreferences` (`varname`, `value`, `last_modified`) VALUES ('MediaCaptionLength', '255', NOW());\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.08.11/tables.sql",
    "content": "ALTER TABLE `ArticleImageCaptions` CHANGE `caption` `caption` text COLLATE 'utf8_general_ci' NOT NULL;\nALTER TABLE `Images` DROP INDEX `Description`;\nALTER TABLE `Images` CHANGE `Description` `Description` text COLLATE 'utf8_general_ci' NOT NULL;\nALTER TABLE `Images` ADD INDEX `Description` (`Description`(100));\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.09.22/auto_delete_diff.txt",
    "content": "newscoop/CREDITS.txt\nnewscoop/INSTALL.txt\nnewscoop/README.md\nnewscoop/admin-files/articles/images/do_edit.php\nnewscoop/admin-files/articles/images/edit.php\nnewscoop/admin-files/do_login.php\nnewscoop/admin-files/init_content.php\nnewscoop/admin-files/localizer/LanguageMetadata.php\nnewscoop/admin-files/localizer/Localizer.php\nnewscoop/admin-files/localizer/LocalizerConfig.php\nnewscoop/admin-files/localizer/LocalizerFileFormat.php\nnewscoop/admin-files/localizer/LocalizerLanguage.php\nnewscoop/admin-files/localizer/README\nnewscoop/admin-files/localizer/do_add_missing_strings.php\nnewscoop/admin-files/localizer/do_delete_string.php\nnewscoop/admin-files/localizer/do_delete_unused_strings.php\nnewscoop/admin-files/localizer/do_reorder_string.php\nnewscoop/admin-files/localizer/do_save.php\nnewscoop/admin-files/localizer/do_string_switch_file.php\nnewscoop/admin-files/localizer/index.php\nnewscoop/admin-files/localizer/langCodex.xml\nnewscoop/admin-files/localizer/langConv.php\nnewscoop/admin-files/localizer/languages.txt\nnewscoop/admin-files/localizer/languages.xml\nnewscoop/admin-files/localizer/locals.en_English.xml\nnewscoop/admin-files/localizer/test_localizer.php\nnewscoop/admin-files/localizer/translate.php\nnewscoop/admin-files/login.php\nnewscoop/admin-files/logout.php\nnewscoop/admin-files/password_check_token.php\nnewscoop/admin-files/password_recovery.php\nnewscoop/admin-files/system_pref/do_edit.php\nnewscoop/admin-files/system_pref/index.php\nnewscoop/application/configs/services/community_feed.yml\nnewscoop/application/controllers/CommentController.php\nnewscoop/application/languages/DE.php\nnewscoop/application/modules/admin/controllers/NotificationController.php\nnewscoop/application/modules/admin/views/scripts/comment/table.phtml\nnewscoop/application/views/scripts/articleoftheday_index.tpl\nnewscoop/attachment.php\nnewscoop/classes/Cron.php\nnewscoop/classes/SystemPref.php\nnewscoop/conf/installation.php\nnewscoop/conf/upgrading.php\nnewscoop/example/solr/en/conf/admin-extra.html\nnewscoop/example/solr/en/conf/admin-extra.menu-bottom.html\nnewscoop/example/solr/en/conf/admin-extra.menu-top.html\nnewscoop/example/solr/en/conf/elevate.xml\nnewscoop/example/solr/en/conf/mapping-FoldToASCII.txt\nnewscoop/example/solr/en/conf/mapping-ISOLatin1Accent.txt\nnewscoop/example/solr/en/conf/protwords.txt\nnewscoop/example/solr/en/conf/schema.xml\nnewscoop/example/solr/en/conf/schema.xml.old\nnewscoop/example/solr/en/conf/scripts.conf\nnewscoop/example/solr/en/conf/solrconfig.xml\nnewscoop/example/solr/en/conf/spellings.txt\nnewscoop/example/solr/en/conf/stopwords.txt\nnewscoop/example/solr/en/conf/synonyms.txt\nnewscoop/example/solr/en/conf/update-script.js\nnewscoop/example/solr/solr.xml\nnewscoop/extensions/google-gadgets/GoogleGadget.php\nnewscoop/extensions/google-gadgets/MapsGoogleGadget.php\nnewscoop/extensions/google-gadgets/google-gadgets.ini\nnewscoop/favicon.ico\nnewscoop/get_img.php\nnewscoop/htaccess\nnewscoop/include/get_ip.php\nnewscoop/include/var_hook.php\nnewscoop/include/smarty/campsite_plugins/block.list_community_feeds.php\nnewscoop/install/classes/CampInstallation.php\nnewscoop/install/classes/CampInstallationBase.php\nnewscoop/install/classes/CampInstallationView.php\nnewscoop/install/classes/CampTemplate.php\nnewscoop/install/css/lightbox.css\nnewscoop/install/css/style.css\nnewscoop/install/img/admin.png\nnewscoop/install/img/campsite_demo.png\nnewscoop/install/img/checked.png\nnewscoop/install/img/close.gif\nnewscoop/install/img/closelabel.gif\nnewscoop/install/img/installation-progress.png\nnewscoop/install/img/loading.gif\nnewscoop/install/img/logo.png\nnewscoop/install/img/welcome.png\nnewscoop/install/include/gpl.txt\nnewscoop/install/include/js/fValidate/fValidate.basic.js\nnewscoop/install/include/js/fValidate/fValidate.config.js\nnewscoop/install/include/js/fValidate/fValidate.controls.js\nnewscoop/install/include/js/fValidate/fValidate.core.js\nnewscoop/install/include/js/fValidate/fValidate.datetime.js\nnewscoop/install/include/js/fValidate/fValidate.ecommerce.js\nnewscoop/install/include/js/fValidate/fValidate.extended.js\nnewscoop/install/include/js/fValidate/fValidate.international.js\nnewscoop/install/include/js/fValidate/fValidate.lang-enUS.js\nnewscoop/install/include/js/fValidate/fValidate.logical.js\nnewscoop/install/include/js/fValidate/fValidate.numbers.js\nnewscoop/install/include/js/fValidate/fValidate.special.js\nnewscoop/install/include/js/fValidate/fValidate.validators.js\nnewscoop/install/include/js/fValidate/fValidate.web.js\nnewscoop/install/include/js/fValidate/readme.txt\nnewscoop/install/include/js/install.js\nnewscoop/install/sample_data/files/0000/0000/000000005.mp3\nnewscoop/install/sample_data/files/0000/0000/000000007.oga\nnewscoop/install/sample_data/files/0000/0000/000000008.flv\nnewscoop/install/sample_data/files/0000/0000/000000008.mp3\nnewscoop/install/sample_data/files/0000/0000/000000009.flv\nnewscoop/install/sample_data/files/0000/0000/000000010.ogv\nnewscoop/install/sample_data/files/placeholder\nnewscoop/install/sample_data/images/0a925766b335ce7cf5b631f867761771bab0a15e.jpeg\nnewscoop/install/sample_data/images/3f9dc7e8277147719964f7bcd41a586f203b2a1e.jpg\nnewscoop/install/sample_data/images/44fc9b94c5d172cf44382d1cf027e554506c3f9c.jpg\nnewscoop/install/sample_data/images/4dbcd74c2292cfd3ee10fb58b716578cf0671513.jpg\nnewscoop/install/sample_data/images/527c5fb02d3e69f520e7d82eac69e3b74587e51b.jpg\nnewscoop/install/sample_data/images/7a5a53fbf907cb078151a890a2ad20e9d4011bd0.jpg\nnewscoop/install/sample_data/images/9b045682b265533e8526ab230b1cd62d0e72e63b.jpg\nnewscoop/install/sample_data/images/9ec91c423809989ed9e5a3fb298042cbf938ec21.jpg\nnewscoop/install/sample_data/images/cms-image-000000008.jpg\nnewscoop/install/sample_data/images/cms-image-000000047.jpg\nnewscoop/install/sample_data/images/cms-image-000000048.jpg\nnewscoop/install/sample_data/images/cms-image-000000049.jpg\nnewscoop/install/sample_data/images/cms-image-000000050.jpg\nnewscoop/install/sample_data/images/cms-image-000000051.jpg\nnewscoop/install/sample_data/images/cms-image-000000053.jpg\nnewscoop/install/sample_data/images/cms-image-000000054.jpg\nnewscoop/install/sample_data/images/cms-image-000000055.jpg\nnewscoop/install/sample_data/images/cms-image-000000056.jpg\nnewscoop/install/sample_data/images/cms-image-000000057.jpg\nnewscoop/install/sample_data/images/cms-image-000000058.jpg\nnewscoop/install/sample_data/images/cms-image-000000059.jpg\nnewscoop/install/sample_data/images/cms-image-000000060.jpg\nnewscoop/install/sample_data/images/cms-image-000000061.jpg\nnewscoop/install/sample_data/images/cms-image-000000068.jpg\nnewscoop/install/sample_data/images/cms-image-000000069.jpg\nnewscoop/install/sample_data/images/cms-image-000000070.jpg\nnewscoop/install/sample_data/images/cms-image-000000071.jpg\nnewscoop/install/sample_data/images/cms-image-000000072.jpg\nnewscoop/install/sample_data/images/cms-image-000000073.jpg\nnewscoop/install/sample_data/images/cms-image-000000074.jpg\nnewscoop/install/sample_data/images/cms-image-000000075.jpg\nnewscoop/install/sample_data/images/cms-image-000000076.jpg\nnewscoop/install/sample_data/images/cms-image-000000077.jpg\nnewscoop/install/sample_data/images/cms-image-000000078.jpg\nnewscoop/install/sample_data/images/cms-image-000000079.jpg\nnewscoop/install/sample_data/images/cms-image-000000080.jpg\nnewscoop/install/sample_data/images/cms-image-000000081.jpg\nnewscoop/install/sample_data/images/cms-image-000000082.jpg\nnewscoop/install/sample_data/images/cms-image-000000083.jpg\nnewscoop/install/sample_data/images/cms-image-000000084.jpg\nnewscoop/install/sample_data/images/cms-image-000000085.jpg\nnewscoop/install/sample_data/images/cms-image-000000086.jpg\nnewscoop/install/sample_data/images/cms-image-000000087.jpg\nnewscoop/install/sample_data/images/cms-image-000000088.jpg\nnewscoop/install/sample_data/images/cms-image-000000095.jpg\nnewscoop/install/sample_data/images/cms-image-000000096.jpg\nnewscoop/install/sample_data/images/cms-image-000000099.jpg\nnewscoop/install/sample_data/images/cms-image-000000100.jpg\nnewscoop/install/sample_data/images/cms-image-000000101.jpg\nnewscoop/install/sample_data/images/cms-image-000000102.jpg\nnewscoop/install/sample_data/images/cms-image-000000103.jpg\nnewscoop/install/sample_data/images/cms-image-000000104.jpg\nnewscoop/install/sample_data/images/cms-image-000000105.jpg\nnewscoop/install/sample_data/images/cms-image-000000106.jpg\nnewscoop/install/sample_data/images/cms-image-000000107.jpg\nnewscoop/install/sample_data/images/cms-image-000000108.jpg\nnewscoop/install/sample_data/images/cms-image-000000109.jpg\nnewscoop/install/sample_data/images/cms-image-000000110.jpg\nnewscoop/install/sample_data/images/cms-image-000000111.jpg\nnewscoop/install/sample_data/images/cms-image-000000112.jpg\nnewscoop/install/sample_data/images/cms-image-000000113.jpg\nnewscoop/install/sample_data/images/cms-image-000000114.jpg\nnewscoop/install/sample_data/images/cms-image-000000115.jpg\nnewscoop/install/sample_data/images/cms-image-000000116.jpg\nnewscoop/install/sample_data/images/cms-image-000000117.jpg\nnewscoop/install/sample_data/images/cms-image-000000118.jpg\nnewscoop/install/sample_data/images/cms-image-000000119.jpg\nnewscoop/install/sample_data/images/cms-image-000000120.jpg\nnewscoop/install/sample_data/images/cms-image-000000121.jpg\nnewscoop/install/sample_data/images/cms-image-000000122.jpg\nnewscoop/install/sample_data/images/cms-image-000000123.jpg\nnewscoop/install/sample_data/images/cms-image-000000124.jpg\nnewscoop/install/sample_data/images/cms-image-000000125.jpg\nnewscoop/install/sample_data/images/cms-image-000000126.jpg\nnewscoop/install/sample_data/images/dc1989572b1a6a68f1981597d0a79eadd2df98df.jpg\nnewscoop/install/sample_data/images/de5b4b8faa473a93c0398c786ac39486d009fe21.jpg\nnewscoop/install/sample_data/images/e7b816f7d39bb6cbd151089baeeb542d9856bf21.jpg\nnewscoop/install/sample_data/images/image_broken.png\nnewscoop/install/sample_templates/quetzal/description.txt\nnewscoop/install/sample_templates/quetzal/name.txt\nnewscoop/install/sample_templates/quetzal/screenshot.jpg\nnewscoop/install/sample_templates/quetzal/screenshot_large.jpg\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/404.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/README.md\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_conf/English.conf\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_conf/Spanish.conf\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/1140.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/bootstrap.min.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/colors.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/datepicker.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/blank.gif\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_close.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_loading.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_nav_left.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_nav_right.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_shadow_e.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_shadow_n.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_shadow_ne.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_shadow_nw.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_shadow_s.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_shadow_se.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_shadow_sw.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_shadow_w.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_title_left.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_title_main.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_title_over.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_title_right.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancybox-x.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancybox-y.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancybox.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/jquery.fancybox-1.3.4.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/black.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/black@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/black_rtl.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/black_rtl@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/play_black.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/play_black@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/play_black_rtl.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/play_black_rtl@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/play_white.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/play_white@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/play_white_rtl.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/play_white_rtl@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/playful_black.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/playful_black@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/playful_black_rtl.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/playful_black_rtl@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/playful_white.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/playful_white@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/playful_white_rtl.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/playful_white_rtl@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/white.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/white@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/white_rtl.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/white_rtl@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/minimalist.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/handheld.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/main.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/mixins.less\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/quetzal.ie.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/quetzal.layout.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/quetzal.layout.less\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/quetzal.responsive.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/quetzal.responsive.less\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/quetzal.skin.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/quetzal.skin.less\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/reset.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/style.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-icons_222222_256x240.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-icons_228ef1_256x240.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-icons_ef8c08_256x240.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-icons_ffd27a_256x240.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-icons_ffffff_256x240.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/jquery-ui.custom.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/video-js.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/apple-touch-icon-114x114-precomposed.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/apple-touch-icon-144x144-precomposed.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/apple-touch-icon-57x57-precomposed.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/apple-touch-icon-72x72-precomposed.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/apple-touch-icon-precomposed.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/apple-touch-icon.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/archive-icon.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/archive.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/arrow-bullet.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/arrow-down.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/black-dot.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/body-back.jpg\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/body-bgr-test.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/calendar-icon.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/center-map.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/comment-icon.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/community_icons.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/dot.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/fb.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/footer-back.jpg\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/glyphicons-halflings-white.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/glyphicons-halflings.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/header-back.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/icon_nav-button.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/icon_open-close.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/icon_search_white.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/icons/audio.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/icons/locked.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/icons/photo.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/icons/video.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/internal-header.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/logo.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/logo_red.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/map-badges.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/menu-separator.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/nav-arrows-disabled.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/nav-arrows.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/nav-tabs.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/newscoop-quetzal-logo-footer.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/noavatar.jpg\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/player.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/popular_news_background.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/post-icon.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/rating/star_empty.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/rating/star_full.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/rating/star_highlight.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/rss.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/slider-default.jpg\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/sourcefabric-336x280.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/tab-active.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/tabcontent.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/tabs-back.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/topnav-back.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/tw.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/user-icon.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/user_blank_140x210.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/user_blank_175x210.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/user_blank_50x50.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/user_blank_60x60.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/user_inactive_140x210.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/user_inactive_175x210.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/user_inactive_50x50.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/user_inactive_60x60.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/video-js.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/article-rating.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/libs/bootstrap-collapse.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/libs/bootstrap-transition.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/libs/dd_belatedpng.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/libs/jquery.min.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/libs/modernizr-1.7.min.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/matchmedia.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/newscoop.quetzal.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/picturefill.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/plugins.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/script.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/audiojs/audio.min.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/audiojs/audiojs.swf\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/audiojs/player-graphics.gif\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/bootstrap-datepicker.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/bootstrap.min.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/flowplayer/flowplayer.min.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/flowplayer/flowplayer.swf\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/flowplayer/video-js.swf\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/galleria/galleria-1.2.9.min.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/galleria/themes/classic/classic-loader.gif\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/galleria/themes/classic/classic-map.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/galleria/themes/classic/galleria.classic.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/galleria/themes/classic/galleria.classic.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/galleria/themes/classic/galleria.classic.min.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/html5shiv.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/jquery-1.9.1.min.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/jquery.cycle2.loader.min.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/jquery.cycle2.min.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/jquery.timeago.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/video.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/video.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/_banner-sidebar.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/_edit-article.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/_html-foot.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/_html-head.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/archive-cont.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/archive-header.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/article-aside.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/article-attachments.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/article-comments.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/article-cont.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/article-debate.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/article-header.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/article-icons.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/article-rating.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/article-slideshows.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/dashboard-header.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/debate-answers.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/debate-deadline.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/debate-voting.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/debate_votes_total.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/footer.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/front-dynamicmap.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/front-highlights.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/front-morenews.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/front-morestories.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/front-slider.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/front-stories.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/front-topstory.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/header.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_130x70.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_130x98.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_150x100.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_150x150.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_202x152.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_225x150.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_235x220.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_250x167.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_300x300.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_330x215.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_500x333.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_600x400.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_68x45.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_70x45.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_72x46.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_960x300.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_picturefill.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/issue-cont.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/issue-header.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/map.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/more-news-block.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/multimedia.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/paginator_control.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/relative_date.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/search-cont.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/search-header.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/section-cont.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/section-header.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/sidebar-community-feed.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/sidebar-loginbox.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/sidebar-most.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/sidebar-poll.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/sidebar-poll.tpl~\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/sidebar.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/sidebar_poll.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/tablet-more-tabs.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/topic-cont.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/topic-header.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/user-articles.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/user-comments.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/user-cont.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/user-content.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/user-header.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/user-image.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/user-sidebar.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/user_profile-cont.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/archive.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/article.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/auth_index.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/auth_password-restore-after.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/auth_password-restore-finish.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/auth_password-restore.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/dashboard_index.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/email_confirm.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/email_confirm.tpl~\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/front.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/issue.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/layout.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/register_after.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/register_confirm.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/register_index.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/register_pending.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/register_social.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/rss.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/search.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/section.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/theme.xml\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/themethumbs/article.jpg\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/themethumbs/front.jpg\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/themethumbs/section.jpg\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/topic.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/user_index.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/user_profile.tpl\nnewscoop/install/sample_templates/quetzal/templates/system_templates/_campsite_error.tpl\nnewscoop/install/sample_templates/quetzal/templates/system_templates/_campsite_message.tpl\nnewscoop/install/sample_templates/quetzal/templates/system_templates/_campsite_offline.tpl\nnewscoop/install/sample_templates/quetzal/templates/system_templates/_events_notifier.tpl\nnewscoop/install/sample_templates/quetzal/templates/system_templates/_subscription_notifier.tpl\nnewscoop/install/sample_templates/quetzal/templates/system_templates/css/_style_offline.css\nnewscoop/install/sample_templates/quetzal/templates/system_templates/img/newscoop_logo_big.png\nnewscoop/install/sample_templates/rockstar/description.txt\nnewscoop/install/sample_templates/rockstar/name.txt\nnewscoop/install/sample_templates/rockstar/screenshot.jpg\nnewscoop/install/sample_templates/rockstar/screenshot_large.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/README.md\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_conf/English.conf\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/_edit-article.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/_html-foot.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/_html-head.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/all-sections.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/article-aside.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/article-author-info.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/article-comments.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/article-cont.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/article-debate.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/article-rating.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/debate-answers.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/debate-deadline.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/debate-voting.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/debate_votes_total.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/footer.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/front-about-us.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/front-dynamicmap.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/front-playlist-articles.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/front-poll.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/front-three-blocks.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/header.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/img/img_big.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/img/img_onehalf.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/img/img_onethird.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/img/img_square.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/paginator_control.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/relative_date.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/search-cont.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/section-cont.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/section-two-blocks.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/topic-cont.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/user-content.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/user-image.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/archive.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/article.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/.DS_Store\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/.DS_Store\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/blank.gif\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_close.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_loading.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_nav_left.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_nav_right.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_shadow_e.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_shadow_n.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_shadow_ne.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_shadow_nw.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_shadow_s.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_shadow_se.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_shadow_sw.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_shadow_w.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_title_left.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_title_main.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_title_over.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_title_right.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancybox-x.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancybox-y.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancybox.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/jquery.fancybox-1.3.4.css\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/handheld.css\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/main.css\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/map-info.css\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/reset.css\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/skin.css\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/fonts/.DS_Store\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/bullet-1.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/bullet-2.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/bullet-3.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/feed-icons.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/icon-search.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/icons-top.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/logo.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/rating/star_empty.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/rating/star_full.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/rating/star_highlight.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/slider-arrows.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/small-slider-arrows.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/top-background.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/js/article-rating.js\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/js/init.js\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/js/libs/.DS_Store\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/js/libs/jquery.jcarousel.min.js\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/js/libs/jquery.min.js\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/js/libs/modernizr-2.0.6.js\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/js/libs/selectivizr-min.js\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/js/plugins.js\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/js/script.js\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/less/main.less\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/auth_index.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/auth_password-restore-after.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/auth_password-restore-finish.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/auth_password-restore.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/dashboard_index.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/email_confirm.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/front.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/issue.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/page.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/.DS_Store\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-1.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-2-2.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-2.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-3-2.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-3-3.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-3-4.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-3-5.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-3-6.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-3.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-6-2.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-6-3.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-6-4.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-6-5.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-6-6.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-6.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/author-img.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/comment-avatar.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/map-sample-small.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/map-sample.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/thumb-1.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/thumb-2.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/thumb-3.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/register_after.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/register_confirm.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/register_index.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/register_pending.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/search.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/section.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/theme.xml\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/themethumbs/article.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/themethumbs/front.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/themethumbs/section.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/topic.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/user_index.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/user_profile.tpl\nnewscoop/install/sample_templates/rockstar/templates/system_templates/_campsite_error.tpl\nnewscoop/install/sample_templates/rockstar/templates/system_templates/_campsite_message.tpl\nnewscoop/install/sample_templates/rockstar/templates/system_templates/_campsite_offline.tpl\nnewscoop/install/sample_templates/rockstar/templates/system_templates/_events_notifier.tpl\nnewscoop/install/sample_templates/rockstar/templates/system_templates/_subscription_notifier.tpl\nnewscoop/install/sample_templates/rockstar/templates/system_templates/css/_style_offline.css\nnewscoop/install/sample_templates/rockstar/templates/system_templates/img/newscoop_logo_big.png\nnewscoop/install/sample_templates/the_new_custodian/description.txt\nnewscoop/install/sample_templates/the_new_custodian/name.txt\nnewscoop/install/sample_templates/the_new_custodian/screenshot.jpg\nnewscoop/install/sample_templates/the_new_custodian/screenshot_large.jpg\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/404.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/README.md\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_conf/English.conf\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/1140.css\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/colors.css\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/blank.gif\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_close.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_loading.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_nav_left.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_nav_right.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_shadow_e.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_shadow_n.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_shadow_ne.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_shadow_nw.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_shadow_s.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_shadow_se.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_shadow_sw.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_shadow_w.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_title_left.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_title_main.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_title_over.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_title_right.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancybox-x.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancybox-y.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancybox.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/jquery.fancybox-1.3.4.css\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/handheld.css\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/main.css\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/reset.css\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/style.css\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-icons_222222_256x240.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-icons_228ef1_256x240.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-icons_ef8c08_256x240.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-icons_ffd27a_256x240.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-icons_ffffff_256x240.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/jquery-ui.custom.css\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/video-js.css\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/arrow-bullet.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/body-bgr-test.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/community_icons.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/icon_nav-button.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/icon_open-close.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/icon_search_white.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/icons/audio.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/icons/locked.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/icons/photo.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/icons/video.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/logo.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/logo_red.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/nav-arrows-disabled.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/nav-arrows.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/rating/star_empty.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/rating/star_full.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/rating/star_highlight.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_js/article-rating.js\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_js/libs/bootstrap-collapse.js\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_js/libs/bootstrap-transition.js\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_js/libs/dd_belatedpng.js\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_js/libs/jquery.min.js\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_js/libs/modernizr-1.7.min.js\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_js/matchmedia.js\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_js/picturefill.js\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_js/plugins.js\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_js/script.js\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_js/video.js\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/_banner-sidebar.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/_edit-article.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/_html-foot.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/_html-head.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/archive-cont.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/article-aside.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/article-comments.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/article-cont.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/article-debate.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/article-icons.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/article-rating.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/debate-answers.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/debate-deadline.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/debate-voting.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/debate_votes_total.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/footer.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/front-dynamicmap.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/front-highlights.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/front-morenews.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/front-morestories.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/front-topstory.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/header.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/img/img_150x100.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/img/img_150x150.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/img/img_250x167.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/img/img_500x333.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/img/img_600x400.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/img/img_picturefill.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/issue-cont.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/paginator_control.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/relative_date.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/search-cont.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/section-cont.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/sidebar-community-feed.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/sidebar-loginbox.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/sidebar-most.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/sidebar-poll.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/sidebar-poll.tpl~\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/topic-cont.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/user-content.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/user-image.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/archive.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/article.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/auth_index.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/auth_password-restore-after.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/auth_password-restore-finish.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/auth_password-restore.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/dashboard_index.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/email_confirm.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/front.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/issue.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/layout.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/register_after.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/register_confirm.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/register_index.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/register_pending.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/register_social.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/rss.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/search.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/section.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/theme.xml\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/themethumbs/article.jpg\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/themethumbs/front.jpg\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/themethumbs/section.jpg\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/topic.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/user_index.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/user_profile.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/system_templates/_campsite_error.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/system_templates/_campsite_message.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/system_templates/_campsite_offline.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/system_templates/_events_notifier.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/system_templates/_subscription_notifier.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/system_templates/css/_style_offline.css\nnewscoop/install/sample_templates/the_new_custodian/templates/system_templates/img/newscoop_logo_big.png\nnewscoop/install/scripts/SQLImporting.php\nnewscoop/install/scripts/index-debug.php\nnewscoop/install/sql/CityLocations.csv\nnewscoop/install/sql/CityNames.csv\nnewscoop/install/sql/campsite_core.sql\nnewscoop/install/sql/campsite_demo_data.sql\nnewscoop/install/sql/campsite_demo_prepare.sql\nnewscoop/install/sql/campsite_demo_tables.sql\nnewscoop/install/sql/checkpp.sql\nnewscoop/install/sql/create_demo_scripts\nnewscoop/install/sql/geonames.sql\nnewscoop/install/sql/manual-update-fixes.sql\nnewscoop/install/sql/upgrade/2.0.x/data-optional.sql\nnewscoop/install/sql/upgrade/2.0.x/data-required.sql\nnewscoop/install/sql/upgrade/2.0.x/tables.sql\nnewscoop/install/sql/upgrade/2.1.x/data-required.sql\nnewscoop/install/sql/upgrade/2.1.x/tables.sql\nnewscoop/install/sql/upgrade/2.1.x/transfer_images.php\nnewscoop/install/sql/upgrade/2.1.x/transfer_templates.php\nnewscoop/install/sql/upgrade/2.2.x/data-required.sql\nnewscoop/install/sql/upgrade/2.2.x/tables.sql\nnewscoop/install/sql/upgrade/2.2.x/update_article_types.php\nnewscoop/install/sql/upgrade/2.3.x/tables.sql\nnewscoop/install/sql/upgrade/2.3.x/upgrade_user_perms.php\nnewscoop/install/sql/upgrade/2.4.x/create_idimage_index.php\nnewscoop/install/sql/upgrade/2.4.x/tables.sql\nnewscoop/install/sql/upgrade/2.4.x/upgrade_user_perms.php\nnewscoop/install/sql/upgrade/2.5.x/data-required.sql\nnewscoop/install/sql/upgrade/2.5.x/init_user_types.php\nnewscoop/install/sql/upgrade/2.5.x/tables.sql\nnewscoop/install/sql/upgrade/2.5.x/upgrade_article_types.php\nnewscoop/install/sql/upgrade/2.5.x/upgrade_user_perms.php\nnewscoop/install/sql/upgrade/2.6.0/data-required.sql\nnewscoop/install/sql/upgrade/2.6.0/tables.sql\nnewscoop/install/sql/upgrade/2.6.1/data-required.sql\nnewscoop/install/sql/upgrade/2.6.1/tables.sql\nnewscoop/install/sql/upgrade/2.6.1/upgrade_phorum_users.php\nnewscoop/install/sql/upgrade/2.6.2/data-required.sql\nnewscoop/install/sql/upgrade/2.6.2/upgrade_phorum_users.php\nnewscoop/install/sql/upgrade/2.6.3/data-required.sql\nnewscoop/install/sql/upgrade/2.6.4/data-required.sql\nnewscoop/install/sql/upgrade/2.6.4/sync_phorum_users.php\nnewscoop/install/sql/upgrade/2.6.4/upgrade_user_perms.php\nnewscoop/install/sql/upgrade/2.6.x/data-required.sql\nnewscoop/install/sql/upgrade/2.6.x/tables.sql\nnewscoop/install/sql/upgrade/2.6.x/upgrade_liveuser.php\nnewscoop/install/sql/upgrade/2.6.x/upgrade_system_pref.php\nnewscoop/install/sql/upgrade/2.6.x/upgrade_user_perms.php\nnewscoop/install/sql/upgrade/2.7.x/data-required.sql\nnewscoop/install/sql/upgrade/2.7.x/tables.sql\nnewscoop/install/sql/upgrade/2.7.x/upgrade_group_rights.php\nnewscoop/install/sql/upgrade/2.7.x/upgrade_liveuser.php\nnewscoop/install/sql/upgrade/3.0.x/create_object_types_description.php\nnewscoop/install/sql/upgrade/3.0.x/data-required.sql\nnewscoop/install/sql/upgrade/3.0.x/tables.sql\nnewscoop/install/sql/upgrade/3.0.x/upgrade_liveuser_rights.php\nnewscoop/install/sql/upgrade/3.1.0/tables.sql\nnewscoop/install/sql/upgrade/3.1.x/data-required.sql\nnewscoop/install/sql/upgrade/3.1.x/tables.sql\nnewscoop/install/sql/upgrade/3.1.x/update_article_authors.php\nnewscoop/install/sql/upgrade/3.2.x/data-required.sql\nnewscoop/install/sql/upgrade/3.2.x/tables.sql\nnewscoop/install/sql/upgrade/3.3.x/data-required.sql\nnewscoop/install/sql/upgrade/3.3.x/tables.sql\nnewscoop/install/sql/upgrade/3.3.x/update_rights.php\nnewscoop/install/sql/upgrade/3.4.x/data-required.sql\nnewscoop/install/sql/upgrade/3.4.x/load_geonames_data.php\nnewscoop/install/sql/upgrade/3.4.x/tables.sql\nnewscoop/install/sql/upgrade/3.4.x/transfer_topics.php\nnewscoop/install/sql/upgrade/3.4.x/update_rights.php\nnewscoop/install/sql/upgrade/3.5.x/2012-03-12/data-required.sql\nnewscoop/install/sql/upgrade/3.5.x/2012-03-12/tables.sql\nnewscoop/install/sql/upgrade/3.5.x/2012-05-16/tables.sql\nnewscoop/install/sql/upgrade/3.5.x/Readme.txt\nnewscoop/install/sql/upgrade/3.5.x/ThemeUpgrade.php\nnewscoop/install/sql/upgrade/3.5.x/acl.php\nnewscoop/install/sql/upgrade/3.5.x/checkpp.php\nnewscoop/install/sql/upgrade/3.5.x/create_themes.php\nnewscoop/install/sql/upgrade/3.5.x/data-required.sql\nnewscoop/install/sql/upgrade/3.5.x/javascript_js_cleanup.php\nnewscoop/install/sql/upgrade/3.5.x/tables-post.sql\nnewscoop/install/sql/upgrade/3.5.x/tables.sql\nnewscoop/install/sql/upgrade/3.5.x/theme.xml\nnewscoop/install/sql/upgrade/3.5.x/transfer_phorum.php\nnewscoop/install/sql/upgrade/4.0.x/2012-05-23/assure_article_authors.php\nnewscoop/install/sql/upgrade/4.0.x/2012-05-23/tables.sql\nnewscoop/install/sql/upgrade/4.0.x/2012-06-05/populate_webcodes.php\nnewscoop/install/sql/upgrade/4.0.x/2012-06-05/tables.sql\nnewscoop/install/sql/upgrade/4.0.x/2012-06-29/tables.sql\nnewscoop/install/sql/upgrade/4.0.x/2012-09-10/tables.sql\nnewscoop/install/sql/upgrade/4.0.x/2012-09-20/tables.sql\nnewscoop/install/sql/upgrade/4.0.x/2012-11-23/tables.sql\nnewscoop/install/sql/upgrade/4.0.x/2012-12-18/tables.sql\nnewscoop/install/sql/upgrade/4.0.x/2012-12-28/migrate.php\nnewscoop/install/sql/upgrade/4.0.x/2012-12-28/tables.sql\nnewscoop/install/sql/upgrade/4.1.x/2013-01-14/tables.sql\nnewscoop/install/sql/upgrade/4.1.x/2013-01-23/tables.sql\nnewscoop/install/sql/upgrade/4.1.x/2013-02-06/data-required.sql\nnewscoop/install/sql/upgrade/4.1.x/2013-04-12/data-required.sql\nnewscoop/install/sql/upgrade/4.1.x/2013-04-22/tables.sql\nnewscoop/install/sql/upgrade/4.2.x/2013-02-19/tables.sql\nnewscoop/install/sql/upgrade/4.2.x/2013.03.06/tables.sql\nnewscoop/install/sql/upgrade/4.2.x/2013.05.06/tables.sql\nnewscoop/install/sql/upgrade/4.2.x/2013.05.28/move_files.php\nnewscoop/install/sql/upgrade/4.2.x/2013.05.28/tables.sql\nnewscoop/install/sql/upgrade/4.2.x/2013.05.29/tables.sql\nnewscoop/install/sql/upgrade/4.2.x/2013.06.13/tables.sql\nnewscoop/install/sql/upgrade/4.2.x/2013.10.24/data-required.sql\nnewscoop/install/sql/upgrade/4.2.x/2013.10.24/tables.sql\nnewscoop/install/sql/upgrade/4.2.x/2014.04.24/data-required.sql\nnewscoop/install/sql/upgrade/4.2.x/2014.05.06/move_files.php\nnewscoop/install/sql/upgrade/4.2.x/2014.05.06/tables.sql\nnewscoop/install/templates/_configuration.tpl\nnewscoop/install/templates/_database_conf.tpl\nnewscoop/install/templates/_newscoop_autopublish.tpl\nnewscoop/install/templates/_newscoop_indexer.tpl\nnewscoop/install/templates/_newscoop_notifyendsubs.tpl\nnewscoop/install/templates/_newscoop_notifyevents.tpl\nnewscoop/install/templates/_newscoop_statistics.tpl\nnewscoop/install/templates/_newscoop_stats.tpl\nnewscoop/install/templates/cronjobs.tpl\nnewscoop/install/templates/database.tpl\nnewscoop/install/templates/finish.tpl\nnewscoop/install/templates/html_footer.tpl\nnewscoop/install/templates/html_header.tpl\nnewscoop/install/templates/license.tpl\nnewscoop/install/templates/loaddemo.tpl\nnewscoop/install/templates/mainconfig.tpl\nnewscoop/install/templates/precheck.tpl\nnewscoop/js/jquery/comment.js\nnewscoop/library/Newscoop/Entity/Events/CommunityTickerEvent.php\nnewscoop/library/Newscoop/Entity/Repository/Events/CommunityTickerEventRepository.php\nnewscoop/library/Newscoop/Gimme/PublicationService.php\nnewscoop/library/Newscoop/MailChimp/ApiFactory.php\nnewscoop/library/Newscoop/MailChimp/ListApi.php\nnewscoop/library/Newscoop/MailChimp/ListView.php\nnewscoop/library/Newscoop/MailChimp/MemberView.php\nnewscoop/library/Newscoop/Search/AbstractCommand.php\nnewscoop/library/Newscoop/Search/AddCommand.php\nnewscoop/library/Newscoop/Search/ArticleIndexer.php\nnewscoop/library/Newscoop/Search/DeleteCommand.php\nnewscoop/library/Newscoop/Search/Index.php\nnewscoop/library/Newscoop/Search/Query.php\nnewscoop/library/Newscoop/Search/SolrException.php\nnewscoop/library/Newscoop/Search/SolrIndex.php\nnewscoop/library/Newscoop/Services/CommunityFeedService.php\nnewscoop/library/Newscoop/Services/FooService.php\nnewscoop/library/Newscoop/Services/PluginsManagerService.php\nnewscoop/library/Newscoop/Services/StringTransformer.php\nnewscoop/library/Newscoop/Tools/Console/Command/ResetIndexCommand.php\nnewscoop/library/Newscoop/Webcode.php\nnewscoop/library/Newscoop/Webcode/Manager.php\nnewscoop/library/Newscoop/Webcode/Mapper.php\nnewscoop/src/Newscoop/GimmeBundle/EventListener/PublicationListener.php\nnewscoop/src/Newscoop/GimmeBundle/Serializer/Author/ImageUriHandler.php\nnewscoop/template_engine/classes/CommunityFeedsList.php\nnewscoop/template_engine/metaclasses/MetaCommunityFeed.php\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.09.22/delete_diff.txt",
    "content": "Capfile\nPLUGINS.md\nVagrantfile\nconfig/deploy.rb\ncookbooks/newscoop/README.md\ncookbooks/newscoop/metadata.rb\ncookbooks/newscoop/recipes/default.rb\ncookbooks/newscoop/templates/default/default-site.erb\ndependencies/include/Archive/Tar.php\ndependencies/include/Console/Getopt.php\ndependencies/include/Date.php\ndependencies/include/Date/Calc.php\ndependencies/include/Date/Human.php\ndependencies/include/Date/Span.php\ndependencies/include/Date/TimeZone.php\ndependencies/include/Event/Dispatcher.php\ndependencies/include/Event/Notification.php\ndependencies/include/File.php\ndependencies/include/File/CSV.php\ndependencies/include/File/Find.php\ndependencies/include/File/Util.php\ndependencies/include/HTML/Common.php\ndependencies/include/HTML/QuickForm.php\ndependencies/include/HTML/QuickForm/Renderer.php\ndependencies/include/HTML/QuickForm/Renderer/Array.php\ndependencies/include/HTML/QuickForm/Renderer/ArraySmarty.php\ndependencies/include/HTML/QuickForm/Renderer/Default.php\ndependencies/include/HTML/QuickForm/Renderer/ITDynamic.php\ndependencies/include/HTML/QuickForm/Renderer/ITStatic.php\ndependencies/include/HTML/QuickForm/Renderer/Object.php\ndependencies/include/HTML/QuickForm/Renderer/ObjectFlexy.php\ndependencies/include/HTML/QuickForm/Renderer/QuickHtml.php\ndependencies/include/HTML/QuickForm/Rule.php\ndependencies/include/HTML/QuickForm/Rule/Callback.php\ndependencies/include/HTML/QuickForm/Rule/Compare.php\ndependencies/include/HTML/QuickForm/Rule/Email.php\ndependencies/include/HTML/QuickForm/Rule/Range.php\ndependencies/include/HTML/QuickForm/Rule/Regex.php\ndependencies/include/HTML/QuickForm/Rule/Required.php\ndependencies/include/HTML/QuickForm/RuleRegistry.php\ndependencies/include/HTML/QuickForm/advcheckbox.php\ndependencies/include/HTML/QuickForm/autocomplete.php\ndependencies/include/HTML/QuickForm/button.php\ndependencies/include/HTML/QuickForm/checkbox.php\ndependencies/include/HTML/QuickForm/date.php\ndependencies/include/HTML/QuickForm/element.php\ndependencies/include/HTML/QuickForm/file.php\ndependencies/include/HTML/QuickForm/group.php\ndependencies/include/HTML/QuickForm/header.php\ndependencies/include/HTML/QuickForm/hidden.php\ndependencies/include/HTML/QuickForm/hiddenselect.php\ndependencies/include/HTML/QuickForm/hierselect.php\ndependencies/include/HTML/QuickForm/html.php\ndependencies/include/HTML/QuickForm/image.php\ndependencies/include/HTML/QuickForm/input.php\ndependencies/include/HTML/QuickForm/link.php\ndependencies/include/HTML/QuickForm/password.php\ndependencies/include/HTML/QuickForm/radio.php\ndependencies/include/HTML/QuickForm/reset.php\ndependencies/include/HTML/QuickForm/select.php\ndependencies/include/HTML/QuickForm/static.php\ndependencies/include/HTML/QuickForm/submit.php\ndependencies/include/HTML/QuickForm/text.php\ndependencies/include/HTML/QuickForm/textarea.php\ndependencies/include/HTML/QuickForm/xbutton.php\ndependencies/include/Mail.php\ndependencies/include/Mail/RFC822.php\ndependencies/include/Mail/mail.php\ndependencies/include/Mail/mime.php\ndependencies/include/Mail/mimeDecode.php\ndependencies/include/Mail/mimePart.php\ndependencies/include/Mail/mock.php\ndependencies/include/Mail/null.php\ndependencies/include/Mail/sendmail.php\ndependencies/include/Mail/smtp.php\ndependencies/include/Mail/smtpmx.php\ndependencies/include/Net/SMTP.php\ndependencies/include/Net/Socket.php\ndependencies/include/Net/URL.php\ndependencies/include/OS/Guess.php\ndependencies/include/PEAR.php\ndependencies/include/PEAR/Autoloader.php\ndependencies/include/PEAR/Builder.php\ndependencies/include/PEAR/ChannelFile.php\ndependencies/include/PEAR/ChannelFile/Parser.php\ndependencies/include/PEAR/Command.php\ndependencies/include/PEAR/Command/Auth.php\ndependencies/include/PEAR/Command/Auth.xml\ndependencies/include/PEAR/Command/Build.php\ndependencies/include/PEAR/Command/Build.xml\ndependencies/include/PEAR/Command/Channels.php\ndependencies/include/PEAR/Command/Channels.xml\ndependencies/include/PEAR/Command/Common.php\ndependencies/include/PEAR/Command/Config.php\ndependencies/include/PEAR/Command/Config.xml\ndependencies/include/PEAR/Command/Install.php\ndependencies/include/PEAR/Command/Install.xml\ndependencies/include/PEAR/Command/Mirror.php\ndependencies/include/PEAR/Command/Mirror.xml\ndependencies/include/PEAR/Command/Package.php\ndependencies/include/PEAR/Command/Package.xml\ndependencies/include/PEAR/Command/Pickle.php\ndependencies/include/PEAR/Command/Pickle.xml\ndependencies/include/PEAR/Command/Registry.php\ndependencies/include/PEAR/Command/Registry.xml\ndependencies/include/PEAR/Command/Remote.php\ndependencies/include/PEAR/Command/Remote.xml\ndependencies/include/PEAR/Command/Test.php\ndependencies/include/PEAR/Command/Test.xml\ndependencies/include/PEAR/Common.php\ndependencies/include/PEAR/Config.php\ndependencies/include/PEAR/Dependency2.php\ndependencies/include/PEAR/DependencyDB.php\ndependencies/include/PEAR/Downloader.php\ndependencies/include/PEAR/Downloader/Package.php\ndependencies/include/PEAR/ErrorStack.php\ndependencies/include/PEAR/Exception.php\ndependencies/include/PEAR/FixPHP5PEARWarnings.php\ndependencies/include/PEAR/Frontend.php\ndependencies/include/PEAR/Frontend/CLI.php\ndependencies/include/PEAR/Installer.php\ndependencies/include/PEAR/Installer/Role.php\ndependencies/include/PEAR/Installer/Role/Cfg.php\ndependencies/include/PEAR/Installer/Role/Cfg.xml\ndependencies/include/PEAR/Installer/Role/Common.php\ndependencies/include/PEAR/Installer/Role/Data.php\ndependencies/include/PEAR/Installer/Role/Data.xml\ndependencies/include/PEAR/Installer/Role/Doc.php\ndependencies/include/PEAR/Installer/Role/Doc.xml\ndependencies/include/PEAR/Installer/Role/Ext.php\ndependencies/include/PEAR/Installer/Role/Ext.xml\ndependencies/include/PEAR/Installer/Role/Php.php\ndependencies/include/PEAR/Installer/Role/Php.xml\ndependencies/include/PEAR/Installer/Role/Script.php\ndependencies/include/PEAR/Installer/Role/Script.xml\ndependencies/include/PEAR/Installer/Role/Src.php\ndependencies/include/PEAR/Installer/Role/Src.xml\ndependencies/include/PEAR/Installer/Role/Test.php\ndependencies/include/PEAR/Installer/Role/Test.xml\ndependencies/include/PEAR/Installer/Role/Www.php\ndependencies/include/PEAR/Installer/Role/Www.xml\ndependencies/include/PEAR/PackageFile.php\ndependencies/include/PEAR/PackageFile/Generator/v1.php\ndependencies/include/PEAR/PackageFile/Generator/v2.php\ndependencies/include/PEAR/PackageFile/Parser/v1.php\ndependencies/include/PEAR/PackageFile/Parser/v2.php\ndependencies/include/PEAR/PackageFile/v1.php\ndependencies/include/PEAR/PackageFile/v2.php\ndependencies/include/PEAR/PackageFile/v2/Validator.php\ndependencies/include/PEAR/PackageFile/v2/rw.php\ndependencies/include/PEAR/Packager.php\ndependencies/include/PEAR/REST.php\ndependencies/include/PEAR/REST/10.php\ndependencies/include/PEAR/REST/11.php\ndependencies/include/PEAR/REST/13.php\ndependencies/include/PEAR/Registry.php\ndependencies/include/PEAR/RunTest.php\ndependencies/include/PEAR/Task/Common.php\ndependencies/include/PEAR/Task/Postinstallscript.php\ndependencies/include/PEAR/Task/Postinstallscript/rw.php\ndependencies/include/PEAR/Task/Replace.php\ndependencies/include/PEAR/Task/Replace/rw.php\ndependencies/include/PEAR/Task/Unixeol.php\ndependencies/include/PEAR/Task/Unixeol/rw.php\ndependencies/include/PEAR/Task/Windowseol.php\ndependencies/include/PEAR/Task/Windowseol/rw.php\ndependencies/include/PEAR/Validate.php\ndependencies/include/PEAR/Validator/PECL.php\ndependencies/include/PEAR/XMLParser.php\ndependencies/include/PEAR5.php\ndependencies/include/System.php\ndependencies/include/XML/Parser.php\ndependencies/include/XML/Parser/Simple.php\ndependencies/include/XML/Serializer.php\ndependencies/include/XML/Unserializer.php\ndependencies/include/XML/Util.php\ndependencies/include/data/Mail_Mime/xmail.dtd\ndependencies/include/data/Mail_Mime/xmail.xsl\ndependencies/include/data/PEAR/package.dtd\ndependencies/include/data/PEAR/template.spec\ndependencies/include/data/XML_Serializer/doc/todo.txt\ndependencies/include/pearcmd.php\ndependencies/include/peclcmd.php\ndependencies/include/versions.txt\nnewscoop/CREDITS.txt\nnewscoop/INSTALL.txt\nnewscoop/README.md\nnewscoop/admin-files/articles/images/do_edit.php\nnewscoop/admin-files/articles/images/edit.php\nnewscoop/admin-files/do_login.php\nnewscoop/admin-files/init_content.php\nnewscoop/admin-files/lang/ar/api.php\nnewscoop/admin-files/lang/ar/article_comments.php\nnewscoop/admin-files/lang/ar/article_files.php\nnewscoop/admin-files/lang/ar/article_images.php\nnewscoop/admin-files/lang/ar/article_topics.php\nnewscoop/admin-files/lang/ar/article_type_fields.php\nnewscoop/admin-files/lang/ar/article_types.php\nnewscoop/admin-files/lang/ar/articles.php\nnewscoop/admin-files/lang/ar/authors.php\nnewscoop/admin-files/lang/ar/bug_reporting.php\nnewscoop/admin-files/lang/ar/comments.php\nnewscoop/admin-files/lang/ar/country.php\nnewscoop/admin-files/lang/ar/extensions.php\nnewscoop/admin-files/lang/ar/feedback.php\nnewscoop/admin-files/lang/ar/geolocation.php\nnewscoop/admin-files/lang/ar/globals.php\nnewscoop/admin-files/lang/ar/help.php\nnewscoop/admin-files/lang/ar/home.php\nnewscoop/admin-files/lang/ar/issues.php\nnewscoop/admin-files/lang/ar/languages.php\nnewscoop/admin-files/lang/ar/library.php\nnewscoop/admin-files/lang/ar/localizer.php\nnewscoop/admin-files/lang/ar/logs.php\nnewscoop/admin-files/lang/ar/media_archive.php\nnewscoop/admin-files/lang/ar/plugins.php\nnewscoop/admin-files/lang/ar/preview.php\nnewscoop/admin-files/lang/ar/pub.php\nnewscoop/admin-files/lang/ar/sections.php\nnewscoop/admin-files/lang/ar/support.php\nnewscoop/admin-files/lang/ar/system_pref.php\nnewscoop/admin-files/lang/ar/templates.php\nnewscoop/admin-files/lang/ar/themes.php\nnewscoop/admin-files/lang/ar/tiny_media_plugin.php\nnewscoop/admin-files/lang/ar/topics.php\nnewscoop/admin-files/lang/ar/universal_list.php\nnewscoop/admin-files/lang/ar/user_subscription_sections.php\nnewscoop/admin-files/lang/ar/user_subscriptions.php\nnewscoop/admin-files/lang/ar/user_types.php\nnewscoop/admin-files/lang/ar/users.php\nnewscoop/admin-files/lang/at/api.php\nnewscoop/admin-files/lang/at/article_comments.php\nnewscoop/admin-files/lang/at/article_files.php\nnewscoop/admin-files/lang/at/article_images.php\nnewscoop/admin-files/lang/at/article_topics.php\nnewscoop/admin-files/lang/at/article_type_fields.php\nnewscoop/admin-files/lang/at/article_types.php\nnewscoop/admin-files/lang/at/articles.php\nnewscoop/admin-files/lang/at/authors.php\nnewscoop/admin-files/lang/at/bug_reporting.php\nnewscoop/admin-files/lang/at/comments.php\nnewscoop/admin-files/lang/at/country.php\nnewscoop/admin-files/lang/at/extensions.php\nnewscoop/admin-files/lang/at/feedback.php\nnewscoop/admin-files/lang/at/geolocation.php\nnewscoop/admin-files/lang/at/globals.php\nnewscoop/admin-files/lang/at/help.php\nnewscoop/admin-files/lang/at/home.php\nnewscoop/admin-files/lang/at/issues.php\nnewscoop/admin-files/lang/at/languages.php\nnewscoop/admin-files/lang/at/library.php\nnewscoop/admin-files/lang/at/localizer.php\nnewscoop/admin-files/lang/at/logs.php\nnewscoop/admin-files/lang/at/media_archive.php\nnewscoop/admin-files/lang/at/plugins.php\nnewscoop/admin-files/lang/at/preview.php\nnewscoop/admin-files/lang/at/pub.php\nnewscoop/admin-files/lang/at/sections.php\nnewscoop/admin-files/lang/at/support.php\nnewscoop/admin-files/lang/at/system_pref.php\nnewscoop/admin-files/lang/at/templates.php\nnewscoop/admin-files/lang/at/themes.php\nnewscoop/admin-files/lang/at/tiny_media_plugin.php\nnewscoop/admin-files/lang/at/topics.php\nnewscoop/admin-files/lang/at/universal_list.php\nnewscoop/admin-files/lang/at/user_subscription_sections.php\nnewscoop/admin-files/lang/at/user_subscriptions.php\nnewscoop/admin-files/lang/at/user_types.php\nnewscoop/admin-files/lang/at/users.php\nnewscoop/admin-files/lang/az/api.php\nnewscoop/admin-files/lang/az/article_comments.php\nnewscoop/admin-files/lang/az/article_files.php\nnewscoop/admin-files/lang/az/article_images.php\nnewscoop/admin-files/lang/az/article_topics.php\nnewscoop/admin-files/lang/az/article_type_fields.php\nnewscoop/admin-files/lang/az/article_types.php\nnewscoop/admin-files/lang/az/articles.php\nnewscoop/admin-files/lang/az/authors.php\nnewscoop/admin-files/lang/az/bug_reporting.php\nnewscoop/admin-files/lang/az/comments.php\nnewscoop/admin-files/lang/az/country.php\nnewscoop/admin-files/lang/az/extensions.php\nnewscoop/admin-files/lang/az/feedback.php\nnewscoop/admin-files/lang/az/geolocation.php\nnewscoop/admin-files/lang/az/globals.php\nnewscoop/admin-files/lang/az/help.php\nnewscoop/admin-files/lang/az/home.php\nnewscoop/admin-files/lang/az/issues.php\nnewscoop/admin-files/lang/az/languages.php\nnewscoop/admin-files/lang/az/library.php\nnewscoop/admin-files/lang/az/localizer.php\nnewscoop/admin-files/lang/az/logs.php\nnewscoop/admin-files/lang/az/media_archive.php\nnewscoop/admin-files/lang/az/plugins.php\nnewscoop/admin-files/lang/az/preview.php\nnewscoop/admin-files/lang/az/pub.php\nnewscoop/admin-files/lang/az/sections.php\nnewscoop/admin-files/lang/az/support.php\nnewscoop/admin-files/lang/az/system_pref.php\nnewscoop/admin-files/lang/az/themes.php\nnewscoop/admin-files/lang/az/tiny_media_plugin.php\nnewscoop/admin-files/lang/az/topics.php\nnewscoop/admin-files/lang/az/user_subscription_sections.php\nnewscoop/admin-files/lang/az/user_subscriptions.php\nnewscoop/admin-files/lang/az/user_types.php\nnewscoop/admin-files/lang/az/users.php\nnewscoop/admin-files/lang/be/api.php\nnewscoop/admin-files/lang/be/article_comments.php\nnewscoop/admin-files/lang/be/article_files.php\nnewscoop/admin-files/lang/be/article_images.php\nnewscoop/admin-files/lang/be/article_topics.php\nnewscoop/admin-files/lang/be/article_type_fields.php\nnewscoop/admin-files/lang/be/article_types.php\nnewscoop/admin-files/lang/be/articles.php\nnewscoop/admin-files/lang/be/authors.php\nnewscoop/admin-files/lang/be/bug_reporting.php\nnewscoop/admin-files/lang/be/comments.php\nnewscoop/admin-files/lang/be/country.php\nnewscoop/admin-files/lang/be/extensions.php\nnewscoop/admin-files/lang/be/feedback.php\nnewscoop/admin-files/lang/be/geolocation.php\nnewscoop/admin-files/lang/be/globals.php\nnewscoop/admin-files/lang/be/help.php\nnewscoop/admin-files/lang/be/home.php\nnewscoop/admin-files/lang/be/issues.php\nnewscoop/admin-files/lang/be/languages.php\nnewscoop/admin-files/lang/be/library.php\nnewscoop/admin-files/lang/be/localizer.php\nnewscoop/admin-files/lang/be/logs.php\nnewscoop/admin-files/lang/be/media_archive.php\nnewscoop/admin-files/lang/be/plugins.php\nnewscoop/admin-files/lang/be/preview.php\nnewscoop/admin-files/lang/be/pub.php\nnewscoop/admin-files/lang/be/sections.php\nnewscoop/admin-files/lang/be/support.php\nnewscoop/admin-files/lang/be/system_pref.php\nnewscoop/admin-files/lang/be/templates.php\nnewscoop/admin-files/lang/be/themes.php\nnewscoop/admin-files/lang/be/tiny_media_plugin.php\nnewscoop/admin-files/lang/be/topics.php\nnewscoop/admin-files/lang/be/universal_list.php\nnewscoop/admin-files/lang/be/user_subscription_sections.php\nnewscoop/admin-files/lang/be/user_subscriptions.php\nnewscoop/admin-files/lang/be/user_types.php\nnewscoop/admin-files/lang/be/users.php\nnewscoop/admin-files/lang/bn/api.php\nnewscoop/admin-files/lang/bn/article_comments.php\nnewscoop/admin-files/lang/bn/article_files.php\nnewscoop/admin-files/lang/bn/article_images.php\nnewscoop/admin-files/lang/bn/article_topics.php\nnewscoop/admin-files/lang/bn/article_type_fields.php\nnewscoop/admin-files/lang/bn/article_types.php\nnewscoop/admin-files/lang/bn/articles.php\nnewscoop/admin-files/lang/bn/authors.php\nnewscoop/admin-files/lang/bn/bug_reporting.php\nnewscoop/admin-files/lang/bn/comments.php\nnewscoop/admin-files/lang/bn/country.php\nnewscoop/admin-files/lang/bn/extensions.php\nnewscoop/admin-files/lang/bn/feedback.php\nnewscoop/admin-files/lang/bn/geolocation.php\nnewscoop/admin-files/lang/bn/globals.php\nnewscoop/admin-files/lang/bn/help.php\nnewscoop/admin-files/lang/bn/home.php\nnewscoop/admin-files/lang/bn/issues.php\nnewscoop/admin-files/lang/bn/languages.php\nnewscoop/admin-files/lang/bn/library.php\nnewscoop/admin-files/lang/bn/localizer.php\nnewscoop/admin-files/lang/bn/logs.php\nnewscoop/admin-files/lang/bn/media_archive.php\nnewscoop/admin-files/lang/bn/plugins.php\nnewscoop/admin-files/lang/bn/preview.php\nnewscoop/admin-files/lang/bn/pub.php\nnewscoop/admin-files/lang/bn/sections.php\nnewscoop/admin-files/lang/bn/support.php\nnewscoop/admin-files/lang/bn/system_pref.php\nnewscoop/admin-files/lang/bn/themes.php\nnewscoop/admin-files/lang/bn/tiny_media_plugin.php\nnewscoop/admin-files/lang/bn/topics.php\nnewscoop/admin-files/lang/bn/user_subscription_sections.php\nnewscoop/admin-files/lang/bn/user_subscriptions.php\nnewscoop/admin-files/lang/bn/user_types.php\nnewscoop/admin-files/lang/bn/users.php\nnewscoop/admin-files/lang/by\nnewscoop/admin-files/lang/cs/api.php\nnewscoop/admin-files/lang/cs/article_comments.php\nnewscoop/admin-files/lang/cs/article_files.php\nnewscoop/admin-files/lang/cs/article_images.php\nnewscoop/admin-files/lang/cs/article_topics.php\nnewscoop/admin-files/lang/cs/article_type_fields.php\nnewscoop/admin-files/lang/cs/article_types.php\nnewscoop/admin-files/lang/cs/articles.php\nnewscoop/admin-files/lang/cs/authors.php\nnewscoop/admin-files/lang/cs/bug_reporting.php\nnewscoop/admin-files/lang/cs/comments.php\nnewscoop/admin-files/lang/cs/country.php\nnewscoop/admin-files/lang/cs/extensions.php\nnewscoop/admin-files/lang/cs/feedback.php\nnewscoop/admin-files/lang/cs/geolocation.php\nnewscoop/admin-files/lang/cs/globals.php\nnewscoop/admin-files/lang/cs/help.php\nnewscoop/admin-files/lang/cs/home.php\nnewscoop/admin-files/lang/cs/issues.php\nnewscoop/admin-files/lang/cs/languages.php\nnewscoop/admin-files/lang/cs/library.php\nnewscoop/admin-files/lang/cs/localizer.php\nnewscoop/admin-files/lang/cs/logs.php\nnewscoop/admin-files/lang/cs/media_archive.php\nnewscoop/admin-files/lang/cs/plugins.php\nnewscoop/admin-files/lang/cs/preview.php\nnewscoop/admin-files/lang/cs/pub.php\nnewscoop/admin-files/lang/cs/sections.php\nnewscoop/admin-files/lang/cs/support.php\nnewscoop/admin-files/lang/cs/system_pref.php\nnewscoop/admin-files/lang/cs/templates.php\nnewscoop/admin-files/lang/cs/themes.php\nnewscoop/admin-files/lang/cs/tiny_media_plugin.php\nnewscoop/admin-files/lang/cs/topics.php\nnewscoop/admin-files/lang/cs/universal_list.php\nnewscoop/admin-files/lang/cs/user_subscription_sections.php\nnewscoop/admin-files/lang/cs/user_subscriptions.php\nnewscoop/admin-files/lang/cs/user_types.php\nnewscoop/admin-files/lang/cs/users.php\nnewscoop/admin-files/lang/cz\nnewscoop/admin-files/lang/da/api.php\nnewscoop/admin-files/lang/da/article_comments.php\nnewscoop/admin-files/lang/da/article_files.php\nnewscoop/admin-files/lang/da/article_images.php\nnewscoop/admin-files/lang/da/article_topics.php\nnewscoop/admin-files/lang/da/article_type_fields.php\nnewscoop/admin-files/lang/da/article_types.php\nnewscoop/admin-files/lang/da/articles.php\nnewscoop/admin-files/lang/da/authors.php\nnewscoop/admin-files/lang/da/bug_reporting.php\nnewscoop/admin-files/lang/da/comments.php\nnewscoop/admin-files/lang/da/country.php\nnewscoop/admin-files/lang/da/extensions.php\nnewscoop/admin-files/lang/da/feedback.php\nnewscoop/admin-files/lang/da/geolocation.php\nnewscoop/admin-files/lang/da/globals.php\nnewscoop/admin-files/lang/da/help.php\nnewscoop/admin-files/lang/da/home.php\nnewscoop/admin-files/lang/da/issues.php\nnewscoop/admin-files/lang/da/languages.php\nnewscoop/admin-files/lang/da/library.php\nnewscoop/admin-files/lang/da/logs.php\nnewscoop/admin-files/lang/da/media_archive.php\nnewscoop/admin-files/lang/da/plugins.php\nnewscoop/admin-files/lang/da/preview.php\nnewscoop/admin-files/lang/da/pub.php\nnewscoop/admin-files/lang/da/sections.php\nnewscoop/admin-files/lang/da/support.php\nnewscoop/admin-files/lang/da/system_pref.php\nnewscoop/admin-files/lang/da/themes.php\nnewscoop/admin-files/lang/da/tiny_media_plugin.php\nnewscoop/admin-files/lang/da/topics.php\nnewscoop/admin-files/lang/da/user_subscription_sections.php\nnewscoop/admin-files/lang/da/user_subscriptions.php\nnewscoop/admin-files/lang/da/user_types.php\nnewscoop/admin-files/lang/da/users.php\nnewscoop/admin-files/lang/de/api.php\nnewscoop/admin-files/lang/de/article_comments.php\nnewscoop/admin-files/lang/de/article_files.php\nnewscoop/admin-files/lang/de/article_images.php\nnewscoop/admin-files/lang/de/article_topics.php\nnewscoop/admin-files/lang/de/article_type_fields.php\nnewscoop/admin-files/lang/de/article_types.php\nnewscoop/admin-files/lang/de/articles.php\nnewscoop/admin-files/lang/de/authors.php\nnewscoop/admin-files/lang/de/bug_reporting.php\nnewscoop/admin-files/lang/de/comments.php\nnewscoop/admin-files/lang/de/country.php\nnewscoop/admin-files/lang/de/extensions.php\nnewscoop/admin-files/lang/de/feedback.php\nnewscoop/admin-files/lang/de/geolocation.php\nnewscoop/admin-files/lang/de/globals.php\nnewscoop/admin-files/lang/de/help.php\nnewscoop/admin-files/lang/de/home.php\nnewscoop/admin-files/lang/de/issues.php\nnewscoop/admin-files/lang/de/languages.php\nnewscoop/admin-files/lang/de/library.php\nnewscoop/admin-files/lang/de/localizer.php\nnewscoop/admin-files/lang/de/logs.php\nnewscoop/admin-files/lang/de/media_archive.php\nnewscoop/admin-files/lang/de/plugins.php\nnewscoop/admin-files/lang/de/preview.php\nnewscoop/admin-files/lang/de/pub.php\nnewscoop/admin-files/lang/de/sections.php\nnewscoop/admin-files/lang/de/support.php\nnewscoop/admin-files/lang/de/system_pref.php\nnewscoop/admin-files/lang/de/templates.php\nnewscoop/admin-files/lang/de/themes.php\nnewscoop/admin-files/lang/de/tiny_media_plugin.php\nnewscoop/admin-files/lang/de/topics.php\nnewscoop/admin-files/lang/de/universal_list.php\nnewscoop/admin-files/lang/de/user_subscription_sections.php\nnewscoop/admin-files/lang/de/user_subscriptions.php\nnewscoop/admin-files/lang/de/user_types.php\nnewscoop/admin-files/lang/de/users.php\nnewscoop/admin-files/lang/de_AT/api.php\nnewscoop/admin-files/lang/de_AT/article_comments.php\nnewscoop/admin-files/lang/de_AT/article_files.php\nnewscoop/admin-files/lang/de_AT/article_images.php\nnewscoop/admin-files/lang/de_AT/article_topics.php\nnewscoop/admin-files/lang/de_AT/article_type_fields.php\nnewscoop/admin-files/lang/de_AT/article_types.php\nnewscoop/admin-files/lang/de_AT/articles.php\nnewscoop/admin-files/lang/de_AT/authors.php\nnewscoop/admin-files/lang/de_AT/bug_reporting.php\nnewscoop/admin-files/lang/de_AT/comments.php\nnewscoop/admin-files/lang/de_AT/country.php\nnewscoop/admin-files/lang/de_AT/extensions.php\nnewscoop/admin-files/lang/de_AT/feedback.php\nnewscoop/admin-files/lang/de_AT/geolocation.php\nnewscoop/admin-files/lang/de_AT/globals.php\nnewscoop/admin-files/lang/de_AT/help.php\nnewscoop/admin-files/lang/de_AT/home.php\nnewscoop/admin-files/lang/de_AT/issues.php\nnewscoop/admin-files/lang/de_AT/languages.php\nnewscoop/admin-files/lang/de_AT/library.php\nnewscoop/admin-files/lang/de_AT/localizer.php\nnewscoop/admin-files/lang/de_AT/logs.php\nnewscoop/admin-files/lang/de_AT/media_archive.php\nnewscoop/admin-files/lang/de_AT/plugins.php\nnewscoop/admin-files/lang/de_AT/preview.php\nnewscoop/admin-files/lang/de_AT/pub.php\nnewscoop/admin-files/lang/de_AT/sections.php\nnewscoop/admin-files/lang/de_AT/support.php\nnewscoop/admin-files/lang/de_AT/system_pref.php\nnewscoop/admin-files/lang/de_AT/templates.php\nnewscoop/admin-files/lang/de_AT/themes.php\nnewscoop/admin-files/lang/de_AT/tiny_media_plugin.php\nnewscoop/admin-files/lang/de_AT/topics.php\nnewscoop/admin-files/lang/de_AT/universal_list.php\nnewscoop/admin-files/lang/de_AT/user_subscription_sections.php\nnewscoop/admin-files/lang/de_AT/user_subscriptions.php\nnewscoop/admin-files/lang/de_AT/user_types.php\nnewscoop/admin-files/lang/de_AT/users.php\nnewscoop/admin-files/lang/el/api.php\nnewscoop/admin-files/lang/el/article_comments.php\nnewscoop/admin-files/lang/el/article_files.php\nnewscoop/admin-files/lang/el/article_images.php\nnewscoop/admin-files/lang/el/article_topics.php\nnewscoop/admin-files/lang/el/article_type_fields.php\nnewscoop/admin-files/lang/el/article_types.php\nnewscoop/admin-files/lang/el/articles.php\nnewscoop/admin-files/lang/el/authors.php\nnewscoop/admin-files/lang/el/bug_reporting.php\nnewscoop/admin-files/lang/el/comments.php\nnewscoop/admin-files/lang/el/country.php\nnewscoop/admin-files/lang/el/extensions.php\nnewscoop/admin-files/lang/el/feedback.php\nnewscoop/admin-files/lang/el/geolocation.php\nnewscoop/admin-files/lang/el/globals.php\nnewscoop/admin-files/lang/el/help.php\nnewscoop/admin-files/lang/el/home.php\nnewscoop/admin-files/lang/el/issues.php\nnewscoop/admin-files/lang/el/languages.php\nnewscoop/admin-files/lang/el/library.php\nnewscoop/admin-files/lang/el/localizer.php\nnewscoop/admin-files/lang/el/logs.php\nnewscoop/admin-files/lang/el/media_archive.php\nnewscoop/admin-files/lang/el/plugins.php\nnewscoop/admin-files/lang/el/preview.php\nnewscoop/admin-files/lang/el/pub.php\nnewscoop/admin-files/lang/el/sections.php\nnewscoop/admin-files/lang/el/support.php\nnewscoop/admin-files/lang/el/system_pref.php\nnewscoop/admin-files/lang/el/templates.php\nnewscoop/admin-files/lang/el/themes.php\nnewscoop/admin-files/lang/el/tiny_media_plugin.php\nnewscoop/admin-files/lang/el/topics.php\nnewscoop/admin-files/lang/el/universal_list.php\nnewscoop/admin-files/lang/el/user_subscription_sections.php\nnewscoop/admin-files/lang/el/user_subscriptions.php\nnewscoop/admin-files/lang/el/user_types.php\nnewscoop/admin-files/lang/el/users.php\nnewscoop/admin-files/lang/en/api.php\nnewscoop/admin-files/lang/en/article_comments.php\nnewscoop/admin-files/lang/en/article_files.php\nnewscoop/admin-files/lang/en/article_images.php\nnewscoop/admin-files/lang/en/article_topics.php\nnewscoop/admin-files/lang/en/article_type_fields.php\nnewscoop/admin-files/lang/en/article_types.php\nnewscoop/admin-files/lang/en/articles.php\nnewscoop/admin-files/lang/en/authors.php\nnewscoop/admin-files/lang/en/bug_reporting.php\nnewscoop/admin-files/lang/en/comments.php\nnewscoop/admin-files/lang/en/country.php\nnewscoop/admin-files/lang/en/extensions.php\nnewscoop/admin-files/lang/en/feedback.php\nnewscoop/admin-files/lang/en/geolocation.php\nnewscoop/admin-files/lang/en/globals.php\nnewscoop/admin-files/lang/en/help.php\nnewscoop/admin-files/lang/en/home.php\nnewscoop/admin-files/lang/en/issues.php\nnewscoop/admin-files/lang/en/languages.php\nnewscoop/admin-files/lang/en/library.php\nnewscoop/admin-files/lang/en/localizer.php\nnewscoop/admin-files/lang/en/logs.php\nnewscoop/admin-files/lang/en/media_archive.php\nnewscoop/admin-files/lang/en/plugins.php\nnewscoop/admin-files/lang/en/preview.php\nnewscoop/admin-files/lang/en/pub.php\nnewscoop/admin-files/lang/en/sections.php\nnewscoop/admin-files/lang/en/support.php\nnewscoop/admin-files/lang/en/system_pref.php\nnewscoop/admin-files/lang/en/templates.php\nnewscoop/admin-files/lang/en/themes.php\nnewscoop/admin-files/lang/en/tiny_media_plugin.php\nnewscoop/admin-files/lang/en/topics.php\nnewscoop/admin-files/lang/en/universal_list.php\nnewscoop/admin-files/lang/en/user_subscription_sections.php\nnewscoop/admin-files/lang/en/user_subscriptions.php\nnewscoop/admin-files/lang/en/user_types.php\nnewscoop/admin-files/lang/en/users.php\nnewscoop/admin-files/lang/en_GB/api.php\nnewscoop/admin-files/lang/en_GB/article_comments.php\nnewscoop/admin-files/lang/en_GB/article_files.php\nnewscoop/admin-files/lang/en_GB/article_images.php\nnewscoop/admin-files/lang/en_GB/article_topics.php\nnewscoop/admin-files/lang/en_GB/article_type_fields.php\nnewscoop/admin-files/lang/en_GB/article_types.php\nnewscoop/admin-files/lang/en_GB/articles.php\nnewscoop/admin-files/lang/en_GB/authors.php\nnewscoop/admin-files/lang/en_GB/bug_reporting.php\nnewscoop/admin-files/lang/en_GB/comments.php\nnewscoop/admin-files/lang/en_GB/country.php\nnewscoop/admin-files/lang/en_GB/extensions.php\nnewscoop/admin-files/lang/en_GB/feedback.php\nnewscoop/admin-files/lang/en_GB/geolocation.php\nnewscoop/admin-files/lang/en_GB/globals.php\nnewscoop/admin-files/lang/en_GB/help.php\nnewscoop/admin-files/lang/en_GB/home.php\nnewscoop/admin-files/lang/en_GB/issues.php\nnewscoop/admin-files/lang/en_GB/languages.php\nnewscoop/admin-files/lang/en_GB/library.php\nnewscoop/admin-files/lang/en_GB/localizer.php\nnewscoop/admin-files/lang/en_GB/logs.php\nnewscoop/admin-files/lang/en_GB/media_archive.php\nnewscoop/admin-files/lang/en_GB/plugins.php\nnewscoop/admin-files/lang/en_GB/preview.php\nnewscoop/admin-files/lang/en_GB/pub.php\nnewscoop/admin-files/lang/en_GB/sections.php\nnewscoop/admin-files/lang/en_GB/support.php\nnewscoop/admin-files/lang/en_GB/system_pref.php\nnewscoop/admin-files/lang/en_GB/templates.php\nnewscoop/admin-files/lang/en_GB/themes.php\nnewscoop/admin-files/lang/en_GB/tiny_media_plugin.php\nnewscoop/admin-files/lang/en_GB/topics.php\nnewscoop/admin-files/lang/en_GB/universal_list.php\nnewscoop/admin-files/lang/en_GB/user_subscription_sections.php\nnewscoop/admin-files/lang/en_GB/user_subscriptions.php\nnewscoop/admin-files/lang/en_GB/user_types.php\nnewscoop/admin-files/lang/en_GB/users.php\nnewscoop/admin-files/lang/es/api.php\nnewscoop/admin-files/lang/es/article_comments.php\nnewscoop/admin-files/lang/es/article_files.php\nnewscoop/admin-files/lang/es/article_images.php\nnewscoop/admin-files/lang/es/article_topics.php\nnewscoop/admin-files/lang/es/article_type_fields.php\nnewscoop/admin-files/lang/es/article_types.php\nnewscoop/admin-files/lang/es/articles.php\nnewscoop/admin-files/lang/es/authors.php\nnewscoop/admin-files/lang/es/bug_reporting.php\nnewscoop/admin-files/lang/es/comments.php\nnewscoop/admin-files/lang/es/country.php\nnewscoop/admin-files/lang/es/extensions.php\nnewscoop/admin-files/lang/es/feedback.php\nnewscoop/admin-files/lang/es/geolocation.php\nnewscoop/admin-files/lang/es/globals.php\nnewscoop/admin-files/lang/es/help.php\nnewscoop/admin-files/lang/es/home.php\nnewscoop/admin-files/lang/es/issues.php\nnewscoop/admin-files/lang/es/languages.php\nnewscoop/admin-files/lang/es/library.php\nnewscoop/admin-files/lang/es/localizer.php\nnewscoop/admin-files/lang/es/logs.php\nnewscoop/admin-files/lang/es/media_archive.php\nnewscoop/admin-files/lang/es/plugins.php\nnewscoop/admin-files/lang/es/preview.php\nnewscoop/admin-files/lang/es/pub.php\nnewscoop/admin-files/lang/es/sections.php\nnewscoop/admin-files/lang/es/support.php\nnewscoop/admin-files/lang/es/system_pref.php\nnewscoop/admin-files/lang/es/templates.php\nnewscoop/admin-files/lang/es/themes.php\nnewscoop/admin-files/lang/es/tiny_media_plugin.php\nnewscoop/admin-files/lang/es/topics.php\nnewscoop/admin-files/lang/es/universal_list.php\nnewscoop/admin-files/lang/es/user_subscription_sections.php\nnewscoop/admin-files/lang/es/user_subscriptions.php\nnewscoop/admin-files/lang/es/user_types.php\nnewscoop/admin-files/lang/es/users.php\nnewscoop/admin-files/lang/fr/api.php\nnewscoop/admin-files/lang/fr/article_comments.php\nnewscoop/admin-files/lang/fr/article_files.php\nnewscoop/admin-files/lang/fr/article_images.php\nnewscoop/admin-files/lang/fr/article_topics.php\nnewscoop/admin-files/lang/fr/article_type_fields.php\nnewscoop/admin-files/lang/fr/article_types.php\nnewscoop/admin-files/lang/fr/articles.php\nnewscoop/admin-files/lang/fr/authors.php\nnewscoop/admin-files/lang/fr/bug_reporting.php\nnewscoop/admin-files/lang/fr/comments.php\nnewscoop/admin-files/lang/fr/country.php\nnewscoop/admin-files/lang/fr/extensions.php\nnewscoop/admin-files/lang/fr/feedback.php\nnewscoop/admin-files/lang/fr/geolocation.php\nnewscoop/admin-files/lang/fr/globals.php\nnewscoop/admin-files/lang/fr/help.php\nnewscoop/admin-files/lang/fr/home.php\nnewscoop/admin-files/lang/fr/issues.php\nnewscoop/admin-files/lang/fr/languages.php\nnewscoop/admin-files/lang/fr/library.php\nnewscoop/admin-files/lang/fr/localizer.php\nnewscoop/admin-files/lang/fr/logs.php\nnewscoop/admin-files/lang/fr/media_archive.php\nnewscoop/admin-files/lang/fr/plugins.php\nnewscoop/admin-files/lang/fr/preview.php\nnewscoop/admin-files/lang/fr/pub.php\nnewscoop/admin-files/lang/fr/sections.php\nnewscoop/admin-files/lang/fr/support.php\nnewscoop/admin-files/lang/fr/system_pref.php\nnewscoop/admin-files/lang/fr/templates.php\nnewscoop/admin-files/lang/fr/themes.php\nnewscoop/admin-files/lang/fr/tiny_media_plugin.php\nnewscoop/admin-files/lang/fr/topics.php\nnewscoop/admin-files/lang/fr/universal_list.php\nnewscoop/admin-files/lang/fr/user_subscription_sections.php\nnewscoop/admin-files/lang/fr/user_subscriptions.php\nnewscoop/admin-files/lang/fr/user_types.php\nnewscoop/admin-files/lang/fr/users.php\nnewscoop/admin-files/lang/ge\nnewscoop/admin-files/lang/he/api.php\nnewscoop/admin-files/lang/he/article_comments.php\nnewscoop/admin-files/lang/he/article_images.php\nnewscoop/admin-files/lang/he/article_topics.php\nnewscoop/admin-files/lang/he/article_type_fields.php\nnewscoop/admin-files/lang/he/article_types.php\nnewscoop/admin-files/lang/he/articles.php\nnewscoop/admin-files/lang/he/comments.php\nnewscoop/admin-files/lang/he/extensions.php\nnewscoop/admin-files/lang/he/feedback.php\nnewscoop/admin-files/lang/he/geolocation.php\nnewscoop/admin-files/lang/he/globals.php\nnewscoop/admin-files/lang/he/help.php\nnewscoop/admin-files/lang/he/home.php\nnewscoop/admin-files/lang/he/issues.php\nnewscoop/admin-files/lang/he/languages.php\nnewscoop/admin-files/lang/he/library.php\nnewscoop/admin-files/lang/he/localizer.php\nnewscoop/admin-files/lang/he/logs.php\nnewscoop/admin-files/lang/he/media_archive.php\nnewscoop/admin-files/lang/he/pub.php\nnewscoop/admin-files/lang/he/sections.php\nnewscoop/admin-files/lang/he/support.php\nnewscoop/admin-files/lang/he/system_pref.php\nnewscoop/admin-files/lang/he/themes.php\nnewscoop/admin-files/lang/he/topics.php\nnewscoop/admin-files/lang/he/user_subscriptions.php\nnewscoop/admin-files/lang/he/user_types.php\nnewscoop/admin-files/lang/he/users.php\nnewscoop/admin-files/lang/hr/api.php\nnewscoop/admin-files/lang/hr/article_comments.php\nnewscoop/admin-files/lang/hr/article_files.php\nnewscoop/admin-files/lang/hr/article_images.php\nnewscoop/admin-files/lang/hr/article_topics.php\nnewscoop/admin-files/lang/hr/article_type_fields.php\nnewscoop/admin-files/lang/hr/article_types.php\nnewscoop/admin-files/lang/hr/articles.php\nnewscoop/admin-files/lang/hr/authors.php\nnewscoop/admin-files/lang/hr/bug_reporting.php\nnewscoop/admin-files/lang/hr/comments.php\nnewscoop/admin-files/lang/hr/country.php\nnewscoop/admin-files/lang/hr/extensions.php\nnewscoop/admin-files/lang/hr/feedback.php\nnewscoop/admin-files/lang/hr/geolocation.php\nnewscoop/admin-files/lang/hr/globals.php\nnewscoop/admin-files/lang/hr/help.php\nnewscoop/admin-files/lang/hr/home.php\nnewscoop/admin-files/lang/hr/issues.php\nnewscoop/admin-files/lang/hr/languages.php\nnewscoop/admin-files/lang/hr/library.php\nnewscoop/admin-files/lang/hr/localizer.php\nnewscoop/admin-files/lang/hr/logs.php\nnewscoop/admin-files/lang/hr/media_archive.php\nnewscoop/admin-files/lang/hr/plugins.php\nnewscoop/admin-files/lang/hr/preview.php\nnewscoop/admin-files/lang/hr/pub.php\nnewscoop/admin-files/lang/hr/sections.php\nnewscoop/admin-files/lang/hr/support.php\nnewscoop/admin-files/lang/hr/system_pref.php\nnewscoop/admin-files/lang/hr/templates.php\nnewscoop/admin-files/lang/hr/themes.php\nnewscoop/admin-files/lang/hr/tiny_media_plugin.php\nnewscoop/admin-files/lang/hr/topics.php\nnewscoop/admin-files/lang/hr/universal_list.php\nnewscoop/admin-files/lang/hr/user_subscription_sections.php\nnewscoop/admin-files/lang/hr/user_subscriptions.php\nnewscoop/admin-files/lang/hr/user_types.php\nnewscoop/admin-files/lang/hr/users.php\nnewscoop/admin-files/lang/hu/api.php\nnewscoop/admin-files/lang/hu/article_comments.php\nnewscoop/admin-files/lang/hu/article_files.php\nnewscoop/admin-files/lang/hu/article_images.php\nnewscoop/admin-files/lang/hu/article_topics.php\nnewscoop/admin-files/lang/hu/article_type_fields.php\nnewscoop/admin-files/lang/hu/article_types.php\nnewscoop/admin-files/lang/hu/articles.php\nnewscoop/admin-files/lang/hu/authors.php\nnewscoop/admin-files/lang/hu/bug_reporting.php\nnewscoop/admin-files/lang/hu/comments.php\nnewscoop/admin-files/lang/hu/country.php\nnewscoop/admin-files/lang/hu/extensions.php\nnewscoop/admin-files/lang/hu/feedback.php\nnewscoop/admin-files/lang/hu/geolocation.php\nnewscoop/admin-files/lang/hu/globals.php\nnewscoop/admin-files/lang/hu/help.php\nnewscoop/admin-files/lang/hu/home.php\nnewscoop/admin-files/lang/hu/issues.php\nnewscoop/admin-files/lang/hu/languages.php\nnewscoop/admin-files/lang/hu/library.php\nnewscoop/admin-files/lang/hu/localizer.php\nnewscoop/admin-files/lang/hu/logs.php\nnewscoop/admin-files/lang/hu/media_archive.php\nnewscoop/admin-files/lang/hu/plugins.php\nnewscoop/admin-files/lang/hu/preview.php\nnewscoop/admin-files/lang/hu/pub.php\nnewscoop/admin-files/lang/hu/sections.php\nnewscoop/admin-files/lang/hu/support.php\nnewscoop/admin-files/lang/hu/system_pref.php\nnewscoop/admin-files/lang/hu/themes.php\nnewscoop/admin-files/lang/hu/tiny_media_plugin.php\nnewscoop/admin-files/lang/hu/topics.php\nnewscoop/admin-files/lang/hu/user_subscription_sections.php\nnewscoop/admin-files/lang/hu/user_subscriptions.php\nnewscoop/admin-files/lang/hu/user_types.php\nnewscoop/admin-files/lang/hu/users.php\nnewscoop/admin-files/lang/it/api.php\nnewscoop/admin-files/lang/it/article_comments.php\nnewscoop/admin-files/lang/it/article_files.php\nnewscoop/admin-files/lang/it/article_images.php\nnewscoop/admin-files/lang/it/article_topics.php\nnewscoop/admin-files/lang/it/article_type_fields.php\nnewscoop/admin-files/lang/it/article_types.php\nnewscoop/admin-files/lang/it/articles.php\nnewscoop/admin-files/lang/it/authors.php\nnewscoop/admin-files/lang/it/bug_reporting.php\nnewscoop/admin-files/lang/it/comments.php\nnewscoop/admin-files/lang/it/country.php\nnewscoop/admin-files/lang/it/extensions.php\nnewscoop/admin-files/lang/it/feedback.php\nnewscoop/admin-files/lang/it/geolocation.php\nnewscoop/admin-files/lang/it/globals.php\nnewscoop/admin-files/lang/it/help.php\nnewscoop/admin-files/lang/it/home.php\nnewscoop/admin-files/lang/it/issues.php\nnewscoop/admin-files/lang/it/languages.php\nnewscoop/admin-files/lang/it/library.php\nnewscoop/admin-files/lang/it/localizer.php\nnewscoop/admin-files/lang/it/logs.php\nnewscoop/admin-files/lang/it/media_archive.php\nnewscoop/admin-files/lang/it/plugins.php\nnewscoop/admin-files/lang/it/preview.php\nnewscoop/admin-files/lang/it/pub.php\nnewscoop/admin-files/lang/it/sections.php\nnewscoop/admin-files/lang/it/support.php\nnewscoop/admin-files/lang/it/system_pref.php\nnewscoop/admin-files/lang/it/templates.php\nnewscoop/admin-files/lang/it/themes.php\nnewscoop/admin-files/lang/it/tiny_media_plugin.php\nnewscoop/admin-files/lang/it/topics.php\nnewscoop/admin-files/lang/it/user_subscription_sections.php\nnewscoop/admin-files/lang/it/user_subscriptions.php\nnewscoop/admin-files/lang/it/user_types.php\nnewscoop/admin-files/lang/it/users.php\nnewscoop/admin-files/lang/ka/api.php\nnewscoop/admin-files/lang/ka/article_comments.php\nnewscoop/admin-files/lang/ka/article_files.php\nnewscoop/admin-files/lang/ka/article_images.php\nnewscoop/admin-files/lang/ka/article_topics.php\nnewscoop/admin-files/lang/ka/article_type_fields.php\nnewscoop/admin-files/lang/ka/article_types.php\nnewscoop/admin-files/lang/ka/articles.php\nnewscoop/admin-files/lang/ka/authors.php\nnewscoop/admin-files/lang/ka/bug_reporting.php\nnewscoop/admin-files/lang/ka/comments.php\nnewscoop/admin-files/lang/ka/country.php\nnewscoop/admin-files/lang/ka/extensions.php\nnewscoop/admin-files/lang/ka/feedback.php\nnewscoop/admin-files/lang/ka/geolocation.php\nnewscoop/admin-files/lang/ka/globals.php\nnewscoop/admin-files/lang/ka/help.php\nnewscoop/admin-files/lang/ka/home.php\nnewscoop/admin-files/lang/ka/issues.php\nnewscoop/admin-files/lang/ka/languages.php\nnewscoop/admin-files/lang/ka/library.php\nnewscoop/admin-files/lang/ka/localizer.php\nnewscoop/admin-files/lang/ka/logs.php\nnewscoop/admin-files/lang/ka/media_archive.php\nnewscoop/admin-files/lang/ka/plugins.php\nnewscoop/admin-files/lang/ka/preview.php\nnewscoop/admin-files/lang/ka/pub.php\nnewscoop/admin-files/lang/ka/sections.php\nnewscoop/admin-files/lang/ka/support.php\nnewscoop/admin-files/lang/ka/system_pref.php\nnewscoop/admin-files/lang/ka/templates.php\nnewscoop/admin-files/lang/ka/themes.php\nnewscoop/admin-files/lang/ka/tiny_media_plugin.php\nnewscoop/admin-files/lang/ka/topics.php\nnewscoop/admin-files/lang/ka/universal_list.php\nnewscoop/admin-files/lang/ka/user_subscription_sections.php\nnewscoop/admin-files/lang/ka/user_subscriptions.php\nnewscoop/admin-files/lang/ka/user_types.php\nnewscoop/admin-files/lang/ka/users.php\nnewscoop/admin-files/lang/ko/api.php\nnewscoop/admin-files/lang/ko/article_comments.php\nnewscoop/admin-files/lang/ko/article_files.php\nnewscoop/admin-files/lang/ko/article_images.php\nnewscoop/admin-files/lang/ko/article_topics.php\nnewscoop/admin-files/lang/ko/article_type_fields.php\nnewscoop/admin-files/lang/ko/article_types.php\nnewscoop/admin-files/lang/ko/articles.php\nnewscoop/admin-files/lang/ko/authors.php\nnewscoop/admin-files/lang/ko/bug_reporting.php\nnewscoop/admin-files/lang/ko/comments.php\nnewscoop/admin-files/lang/ko/country.php\nnewscoop/admin-files/lang/ko/extensions.php\nnewscoop/admin-files/lang/ko/feedback.php\nnewscoop/admin-files/lang/ko/geolocation.php\nnewscoop/admin-files/lang/ko/globals.php\nnewscoop/admin-files/lang/ko/help.php\nnewscoop/admin-files/lang/ko/home.php\nnewscoop/admin-files/lang/ko/issues.php\nnewscoop/admin-files/lang/ko/languages.php\nnewscoop/admin-files/lang/ko/library.php\nnewscoop/admin-files/lang/ko/localizer.php\nnewscoop/admin-files/lang/ko/logs.php\nnewscoop/admin-files/lang/ko/media_archive.php\nnewscoop/admin-files/lang/ko/plugins.php\nnewscoop/admin-files/lang/ko/preview.php\nnewscoop/admin-files/lang/ko/pub.php\nnewscoop/admin-files/lang/ko/sections.php\nnewscoop/admin-files/lang/ko/support.php\nnewscoop/admin-files/lang/ko/system_pref.php\nnewscoop/admin-files/lang/ko/templates.php\nnewscoop/admin-files/lang/ko/themes.php\nnewscoop/admin-files/lang/ko/tiny_media_plugin.php\nnewscoop/admin-files/lang/ko/topics.php\nnewscoop/admin-files/lang/ko/universal_list.php\nnewscoop/admin-files/lang/ko/user_subscription_sections.php\nnewscoop/admin-files/lang/ko/user_subscriptions.php\nnewscoop/admin-files/lang/ko/user_types.php\nnewscoop/admin-files/lang/ko/users.php\nnewscoop/admin-files/lang/kr\nnewscoop/admin-files/lang/ku/api.php\nnewscoop/admin-files/lang/ku/article_comments.php\nnewscoop/admin-files/lang/ku/article_files.php\nnewscoop/admin-files/lang/ku/article_images.php\nnewscoop/admin-files/lang/ku/article_topics.php\nnewscoop/admin-files/lang/ku/article_type_fields.php\nnewscoop/admin-files/lang/ku/article_types.php\nnewscoop/admin-files/lang/ku/articles.php\nnewscoop/admin-files/lang/ku/authors.php\nnewscoop/admin-files/lang/ku/bug_reporting.php\nnewscoop/admin-files/lang/ku/comments.php\nnewscoop/admin-files/lang/ku/country.php\nnewscoop/admin-files/lang/ku/extensions.php\nnewscoop/admin-files/lang/ku/feedback.php\nnewscoop/admin-files/lang/ku/geolocation.php\nnewscoop/admin-files/lang/ku/globals.php\nnewscoop/admin-files/lang/ku/help.php\nnewscoop/admin-files/lang/ku/home.php\nnewscoop/admin-files/lang/ku/issues.php\nnewscoop/admin-files/lang/ku/languages.php\nnewscoop/admin-files/lang/ku/library.php\nnewscoop/admin-files/lang/ku/localizer.php\nnewscoop/admin-files/lang/ku/logs.php\nnewscoop/admin-files/lang/ku/media_archive.php\nnewscoop/admin-files/lang/ku/plugins.php\nnewscoop/admin-files/lang/ku/pub.php\nnewscoop/admin-files/lang/ku/sections.php\nnewscoop/admin-files/lang/ku/support.php\nnewscoop/admin-files/lang/ku/system_pref.php\nnewscoop/admin-files/lang/ku/templates.php\nnewscoop/admin-files/lang/ku/themes.php\nnewscoop/admin-files/lang/ku/tiny_media_plugin.php\nnewscoop/admin-files/lang/ku/topics.php\nnewscoop/admin-files/lang/ku/universal_list.php\nnewscoop/admin-files/lang/ku/user_subscription_sections.php\nnewscoop/admin-files/lang/ku/user_subscriptions.php\nnewscoop/admin-files/lang/ku/user_types.php\nnewscoop/admin-files/lang/ku/users.php\nnewscoop/admin-files/lang/nl/api.php\nnewscoop/admin-files/lang/nl/article_comments.php\nnewscoop/admin-files/lang/nl/article_files.php\nnewscoop/admin-files/lang/nl/article_images.php\nnewscoop/admin-files/lang/nl/article_topics.php\nnewscoop/admin-files/lang/nl/article_type_fields.php\nnewscoop/admin-files/lang/nl/article_types.php\nnewscoop/admin-files/lang/nl/articles.php\nnewscoop/admin-files/lang/nl/authors.php\nnewscoop/admin-files/lang/nl/bug_reporting.php\nnewscoop/admin-files/lang/nl/comments.php\nnewscoop/admin-files/lang/nl/country.php\nnewscoop/admin-files/lang/nl/extensions.php\nnewscoop/admin-files/lang/nl/feedback.php\nnewscoop/admin-files/lang/nl/geolocation.php\nnewscoop/admin-files/lang/nl/globals.php\nnewscoop/admin-files/lang/nl/help.php\nnewscoop/admin-files/lang/nl/home.php\nnewscoop/admin-files/lang/nl/issues.php\nnewscoop/admin-files/lang/nl/languages.php\nnewscoop/admin-files/lang/nl/library.php\nnewscoop/admin-files/lang/nl/localizer.php\nnewscoop/admin-files/lang/nl/logs.php\nnewscoop/admin-files/lang/nl/media_archive.php\nnewscoop/admin-files/lang/nl/plugins.php\nnewscoop/admin-files/lang/nl/preview.php\nnewscoop/admin-files/lang/nl/pub.php\nnewscoop/admin-files/lang/nl/sections.php\nnewscoop/admin-files/lang/nl/support.php\nnewscoop/admin-files/lang/nl/system_pref.php\nnewscoop/admin-files/lang/nl/templates.php\nnewscoop/admin-files/lang/nl/themes.php\nnewscoop/admin-files/lang/nl/tiny_media_plugin.php\nnewscoop/admin-files/lang/nl/topics.php\nnewscoop/admin-files/lang/nl/universal_list.php\nnewscoop/admin-files/lang/nl/user_subscription_sections.php\nnewscoop/admin-files/lang/nl/user_subscriptions.php\nnewscoop/admin-files/lang/nl/user_types.php\nnewscoop/admin-files/lang/nl/users.php\nnewscoop/admin-files/lang/pl/api.php\nnewscoop/admin-files/lang/pl/article_comments.php\nnewscoop/admin-files/lang/pl/article_files.php\nnewscoop/admin-files/lang/pl/article_images.php\nnewscoop/admin-files/lang/pl/article_topics.php\nnewscoop/admin-files/lang/pl/article_type_fields.php\nnewscoop/admin-files/lang/pl/article_types.php\nnewscoop/admin-files/lang/pl/articles.php\nnewscoop/admin-files/lang/pl/authors.php\nnewscoop/admin-files/lang/pl/bug_reporting.php\nnewscoop/admin-files/lang/pl/comments.php\nnewscoop/admin-files/lang/pl/country.php\nnewscoop/admin-files/lang/pl/extensions.php\nnewscoop/admin-files/lang/pl/feedback.php\nnewscoop/admin-files/lang/pl/geolocation.php\nnewscoop/admin-files/lang/pl/globals.php\nnewscoop/admin-files/lang/pl/help.php\nnewscoop/admin-files/lang/pl/home.php\nnewscoop/admin-files/lang/pl/issues.php\nnewscoop/admin-files/lang/pl/languages.php\nnewscoop/admin-files/lang/pl/library.php\nnewscoop/admin-files/lang/pl/localizer.php\nnewscoop/admin-files/lang/pl/logs.php\nnewscoop/admin-files/lang/pl/media_archive.php\nnewscoop/admin-files/lang/pl/plugins.php\nnewscoop/admin-files/lang/pl/preview.php\nnewscoop/admin-files/lang/pl/pub.php\nnewscoop/admin-files/lang/pl/sections.php\nnewscoop/admin-files/lang/pl/support.php\nnewscoop/admin-files/lang/pl/system_pref.php\nnewscoop/admin-files/lang/pl/templates.php\nnewscoop/admin-files/lang/pl/themes.php\nnewscoop/admin-files/lang/pl/tiny_media_plugin.php\nnewscoop/admin-files/lang/pl/topics.php\nnewscoop/admin-files/lang/pl/universal_list.php\nnewscoop/admin-files/lang/pl/user_subscription_sections.php\nnewscoop/admin-files/lang/pl/user_subscriptions.php\nnewscoop/admin-files/lang/pl/user_types.php\nnewscoop/admin-files/lang/pl/users.php\nnewscoop/admin-files/lang/pt/api.php\nnewscoop/admin-files/lang/pt/article_comments.php\nnewscoop/admin-files/lang/pt/article_files.php\nnewscoop/admin-files/lang/pt/article_images.php\nnewscoop/admin-files/lang/pt/article_topics.php\nnewscoop/admin-files/lang/pt/article_type_fields.php\nnewscoop/admin-files/lang/pt/article_types.php\nnewscoop/admin-files/lang/pt/articles.php\nnewscoop/admin-files/lang/pt/authors.php\nnewscoop/admin-files/lang/pt/bug_reporting.php\nnewscoop/admin-files/lang/pt/comments.php\nnewscoop/admin-files/lang/pt/country.php\nnewscoop/admin-files/lang/pt/extensions.php\nnewscoop/admin-files/lang/pt/feedback.php\nnewscoop/admin-files/lang/pt/geolocation.php\nnewscoop/admin-files/lang/pt/globals.php\nnewscoop/admin-files/lang/pt/help.php\nnewscoop/admin-files/lang/pt/home.php\nnewscoop/admin-files/lang/pt/issues.php\nnewscoop/admin-files/lang/pt/languages.php\nnewscoop/admin-files/lang/pt/library.php\nnewscoop/admin-files/lang/pt/localizer.php\nnewscoop/admin-files/lang/pt/logs.php\nnewscoop/admin-files/lang/pt/media_archive.php\nnewscoop/admin-files/lang/pt/plugins.php\nnewscoop/admin-files/lang/pt/preview.php\nnewscoop/admin-files/lang/pt/pub.php\nnewscoop/admin-files/lang/pt/sections.php\nnewscoop/admin-files/lang/pt/support.php\nnewscoop/admin-files/lang/pt/system_pref.php\nnewscoop/admin-files/lang/pt/templates.php\nnewscoop/admin-files/lang/pt/themes.php\nnewscoop/admin-files/lang/pt/tiny_media_plugin.php\nnewscoop/admin-files/lang/pt/topics.php\nnewscoop/admin-files/lang/pt/universal_list.php\nnewscoop/admin-files/lang/pt/user_subscription_sections.php\nnewscoop/admin-files/lang/pt/user_subscriptions.php\nnewscoop/admin-files/lang/pt/user_types.php\nnewscoop/admin-files/lang/pt/users.php\nnewscoop/admin-files/lang/pt_BR/api.php\nnewscoop/admin-files/lang/pt_BR/article_comments.php\nnewscoop/admin-files/lang/pt_BR/article_files.php\nnewscoop/admin-files/lang/pt_BR/article_images.php\nnewscoop/admin-files/lang/pt_BR/article_topics.php\nnewscoop/admin-files/lang/pt_BR/article_type_fields.php\nnewscoop/admin-files/lang/pt_BR/article_types.php\nnewscoop/admin-files/lang/pt_BR/articles.php\nnewscoop/admin-files/lang/pt_BR/authors.php\nnewscoop/admin-files/lang/pt_BR/bug_reporting.php\nnewscoop/admin-files/lang/pt_BR/comments.php\nnewscoop/admin-files/lang/pt_BR/country.php\nnewscoop/admin-files/lang/pt_BR/extensions.php\nnewscoop/admin-files/lang/pt_BR/feedback.php\nnewscoop/admin-files/lang/pt_BR/geolocation.php\nnewscoop/admin-files/lang/pt_BR/globals.php\nnewscoop/admin-files/lang/pt_BR/help.php\nnewscoop/admin-files/lang/pt_BR/home.php\nnewscoop/admin-files/lang/pt_BR/issues.php\nnewscoop/admin-files/lang/pt_BR/languages.php\nnewscoop/admin-files/lang/pt_BR/library.php\nnewscoop/admin-files/lang/pt_BR/localizer.php\nnewscoop/admin-files/lang/pt_BR/logs.php\nnewscoop/admin-files/lang/pt_BR/media_archive.php\nnewscoop/admin-files/lang/pt_BR/plugins.php\nnewscoop/admin-files/lang/pt_BR/preview.php\nnewscoop/admin-files/lang/pt_BR/pub.php\nnewscoop/admin-files/lang/pt_BR/sections.php\nnewscoop/admin-files/lang/pt_BR/support.php\nnewscoop/admin-files/lang/pt_BR/system_pref.php\nnewscoop/admin-files/lang/pt_BR/templates.php\nnewscoop/admin-files/lang/pt_BR/themes.php\nnewscoop/admin-files/lang/pt_BR/tiny_media_plugin.php\nnewscoop/admin-files/lang/pt_BR/topics.php\nnewscoop/admin-files/lang/pt_BR/universal_list.php\nnewscoop/admin-files/lang/pt_BR/user_subscription_sections.php\nnewscoop/admin-files/lang/pt_BR/user_subscriptions.php\nnewscoop/admin-files/lang/pt_BR/user_types.php\nnewscoop/admin-files/lang/pt_BR/users.php\nnewscoop/admin-files/lang/ro/api.php\nnewscoop/admin-files/lang/ro/article_comments.php\nnewscoop/admin-files/lang/ro/article_files.php\nnewscoop/admin-files/lang/ro/article_images.php\nnewscoop/admin-files/lang/ro/article_topics.php\nnewscoop/admin-files/lang/ro/article_type_fields.php\nnewscoop/admin-files/lang/ro/article_types.php\nnewscoop/admin-files/lang/ro/articles.php\nnewscoop/admin-files/lang/ro/authors.php\nnewscoop/admin-files/lang/ro/bug_reporting.php\nnewscoop/admin-files/lang/ro/comments.php\nnewscoop/admin-files/lang/ro/country.php\nnewscoop/admin-files/lang/ro/extensions.php\nnewscoop/admin-files/lang/ro/feedback.php\nnewscoop/admin-files/lang/ro/geolocation.php\nnewscoop/admin-files/lang/ro/globals.php\nnewscoop/admin-files/lang/ro/help.php\nnewscoop/admin-files/lang/ro/home.php\nnewscoop/admin-files/lang/ro/issues.php\nnewscoop/admin-files/lang/ro/languages.php\nnewscoop/admin-files/lang/ro/library.php\nnewscoop/admin-files/lang/ro/localizer.php\nnewscoop/admin-files/lang/ro/logs.php\nnewscoop/admin-files/lang/ro/media_archive.php\nnewscoop/admin-files/lang/ro/plugins.php\nnewscoop/admin-files/lang/ro/preview.php\nnewscoop/admin-files/lang/ro/pub.php\nnewscoop/admin-files/lang/ro/sections.php\nnewscoop/admin-files/lang/ro/support.php\nnewscoop/admin-files/lang/ro/system_pref.php\nnewscoop/admin-files/lang/ro/templates.php\nnewscoop/admin-files/lang/ro/themes.php\nnewscoop/admin-files/lang/ro/tiny_media_plugin.php\nnewscoop/admin-files/lang/ro/topics.php\nnewscoop/admin-files/lang/ro/universal_list.php\nnewscoop/admin-files/lang/ro/user_subscription_sections.php\nnewscoop/admin-files/lang/ro/user_subscriptions.php\nnewscoop/admin-files/lang/ro/user_types.php\nnewscoop/admin-files/lang/ro/users.php\nnewscoop/admin-files/lang/ru/api.php\nnewscoop/admin-files/lang/ru/article_comments.php\nnewscoop/admin-files/lang/ru/article_files.php\nnewscoop/admin-files/lang/ru/article_images.php\nnewscoop/admin-files/lang/ru/article_topics.php\nnewscoop/admin-files/lang/ru/article_type_fields.php\nnewscoop/admin-files/lang/ru/article_types.php\nnewscoop/admin-files/lang/ru/articles.php\nnewscoop/admin-files/lang/ru/authors.php\nnewscoop/admin-files/lang/ru/bug_reporting.php\nnewscoop/admin-files/lang/ru/comments.php\nnewscoop/admin-files/lang/ru/country.php\nnewscoop/admin-files/lang/ru/extensions.php\nnewscoop/admin-files/lang/ru/feedback.php\nnewscoop/admin-files/lang/ru/geolocation.php\nnewscoop/admin-files/lang/ru/globals.php\nnewscoop/admin-files/lang/ru/help.php\nnewscoop/admin-files/lang/ru/home.php\nnewscoop/admin-files/lang/ru/issues.php\nnewscoop/admin-files/lang/ru/languages.php\nnewscoop/admin-files/lang/ru/library.php\nnewscoop/admin-files/lang/ru/localizer.php\nnewscoop/admin-files/lang/ru/logs.php\nnewscoop/admin-files/lang/ru/media_archive.php\nnewscoop/admin-files/lang/ru/plugins.php\nnewscoop/admin-files/lang/ru/preview.php\nnewscoop/admin-files/lang/ru/pub.php\nnewscoop/admin-files/lang/ru/sections.php\nnewscoop/admin-files/lang/ru/support.php\nnewscoop/admin-files/lang/ru/system_pref.php\nnewscoop/admin-files/lang/ru/templates.php\nnewscoop/admin-files/lang/ru/themes.php\nnewscoop/admin-files/lang/ru/tiny_media_plugin.php\nnewscoop/admin-files/lang/ru/topics.php\nnewscoop/admin-files/lang/ru/universal_list.php\nnewscoop/admin-files/lang/ru/user_subscription_sections.php\nnewscoop/admin-files/lang/ru/user_subscriptions.php\nnewscoop/admin-files/lang/ru/user_types.php\nnewscoop/admin-files/lang/ru/users.php\nnewscoop/admin-files/lang/sh/api.php\nnewscoop/admin-files/lang/sh/article_comments.php\nnewscoop/admin-files/lang/sh/article_files.php\nnewscoop/admin-files/lang/sh/article_images.php\nnewscoop/admin-files/lang/sh/article_topics.php\nnewscoop/admin-files/lang/sh/article_type_fields.php\nnewscoop/admin-files/lang/sh/article_types.php\nnewscoop/admin-files/lang/sh/articles.php\nnewscoop/admin-files/lang/sh/authors.php\nnewscoop/admin-files/lang/sh/bug_reporting.php\nnewscoop/admin-files/lang/sh/comments.php\nnewscoop/admin-files/lang/sh/country.php\nnewscoop/admin-files/lang/sh/extensions.php\nnewscoop/admin-files/lang/sh/feedback.php\nnewscoop/admin-files/lang/sh/geolocation.php\nnewscoop/admin-files/lang/sh/globals.php\nnewscoop/admin-files/lang/sh/help.php\nnewscoop/admin-files/lang/sh/home.php\nnewscoop/admin-files/lang/sh/issues.php\nnewscoop/admin-files/lang/sh/languages.php\nnewscoop/admin-files/lang/sh/library.php\nnewscoop/admin-files/lang/sh/localizer.php\nnewscoop/admin-files/lang/sh/logs.php\nnewscoop/admin-files/lang/sh/media_archive.php\nnewscoop/admin-files/lang/sh/plugins.php\nnewscoop/admin-files/lang/sh/preview.php\nnewscoop/admin-files/lang/sh/pub.php\nnewscoop/admin-files/lang/sh/sections.php\nnewscoop/admin-files/lang/sh/support.php\nnewscoop/admin-files/lang/sh/system_pref.php\nnewscoop/admin-files/lang/sh/templates.php\nnewscoop/admin-files/lang/sh/themes.php\nnewscoop/admin-files/lang/sh/tiny_media_plugin.php\nnewscoop/admin-files/lang/sh/topics.php\nnewscoop/admin-files/lang/sh/universal_list.php\nnewscoop/admin-files/lang/sh/user_subscription_sections.php\nnewscoop/admin-files/lang/sh/user_subscriptions.php\nnewscoop/admin-files/lang/sh/user_types.php\nnewscoop/admin-files/lang/sh/users.php\nnewscoop/admin-files/lang/sq/api.php\nnewscoop/admin-files/lang/sq/article_comments.php\nnewscoop/admin-files/lang/sq/article_images.php\nnewscoop/admin-files/lang/sq/article_type_fields.php\nnewscoop/admin-files/lang/sq/article_types.php\nnewscoop/admin-files/lang/sq/articles.php\nnewscoop/admin-files/lang/sq/comments.php\nnewscoop/admin-files/lang/sq/extensions.php\nnewscoop/admin-files/lang/sq/feedback.php\nnewscoop/admin-files/lang/sq/geolocation.php\nnewscoop/admin-files/lang/sq/globals.php\nnewscoop/admin-files/lang/sq/help.php\nnewscoop/admin-files/lang/sq/home.php\nnewscoop/admin-files/lang/sq/issues.php\nnewscoop/admin-files/lang/sq/languages.php\nnewscoop/admin-files/lang/sq/library.php\nnewscoop/admin-files/lang/sq/localizer.php\nnewscoop/admin-files/lang/sq/media_archive.php\nnewscoop/admin-files/lang/sq/support.php\nnewscoop/admin-files/lang/sq/system_pref.php\nnewscoop/admin-files/lang/sq/themes.php\nnewscoop/admin-files/lang/sq/user_subscriptions.php\nnewscoop/admin-files/lang/sq/user_types.php\nnewscoop/admin-files/lang/sq/users.php\nnewscoop/admin-files/lang/sr/api.php\nnewscoop/admin-files/lang/sr/article_comments.php\nnewscoop/admin-files/lang/sr/article_files.php\nnewscoop/admin-files/lang/sr/article_images.php\nnewscoop/admin-files/lang/sr/article_topics.php\nnewscoop/admin-files/lang/sr/article_type_fields.php\nnewscoop/admin-files/lang/sr/article_types.php\nnewscoop/admin-files/lang/sr/articles.php\nnewscoop/admin-files/lang/sr/authors.php\nnewscoop/admin-files/lang/sr/bug_reporting.php\nnewscoop/admin-files/lang/sr/comments.php\nnewscoop/admin-files/lang/sr/country.php\nnewscoop/admin-files/lang/sr/extensions.php\nnewscoop/admin-files/lang/sr/feedback.php\nnewscoop/admin-files/lang/sr/geolocation.php\nnewscoop/admin-files/lang/sr/globals.php\nnewscoop/admin-files/lang/sr/help.php\nnewscoop/admin-files/lang/sr/home.php\nnewscoop/admin-files/lang/sr/issues.php\nnewscoop/admin-files/lang/sr/languages.php\nnewscoop/admin-files/lang/sr/library.php\nnewscoop/admin-files/lang/sr/localizer.php\nnewscoop/admin-files/lang/sr/logs.php\nnewscoop/admin-files/lang/sr/media_archive.php\nnewscoop/admin-files/lang/sr/plugins.php\nnewscoop/admin-files/lang/sr/preview.php\nnewscoop/admin-files/lang/sr/pub.php\nnewscoop/admin-files/lang/sr/sections.php\nnewscoop/admin-files/lang/sr/support.php\nnewscoop/admin-files/lang/sr/system_pref.php\nnewscoop/admin-files/lang/sr/templates.php\nnewscoop/admin-files/lang/sr/themes.php\nnewscoop/admin-files/lang/sr/tiny_media_plugin.php\nnewscoop/admin-files/lang/sr/topics.php\nnewscoop/admin-files/lang/sr/universal_list.php\nnewscoop/admin-files/lang/sr/user_subscription_sections.php\nnewscoop/admin-files/lang/sr/user_subscriptions.php\nnewscoop/admin-files/lang/sr/user_types.php\nnewscoop/admin-files/lang/sr/users.php\nnewscoop/admin-files/lang/sv/api.php\nnewscoop/admin-files/lang/sv/article_comments.php\nnewscoop/admin-files/lang/sv/article_files.php\nnewscoop/admin-files/lang/sv/article_images.php\nnewscoop/admin-files/lang/sv/article_topics.php\nnewscoop/admin-files/lang/sv/article_type_fields.php\nnewscoop/admin-files/lang/sv/article_types.php\nnewscoop/admin-files/lang/sv/articles.php\nnewscoop/admin-files/lang/sv/authors.php\nnewscoop/admin-files/lang/sv/bug_reporting.php\nnewscoop/admin-files/lang/sv/comments.php\nnewscoop/admin-files/lang/sv/country.php\nnewscoop/admin-files/lang/sv/extensions.php\nnewscoop/admin-files/lang/sv/feedback.php\nnewscoop/admin-files/lang/sv/geolocation.php\nnewscoop/admin-files/lang/sv/globals.php\nnewscoop/admin-files/lang/sv/help.php\nnewscoop/admin-files/lang/sv/home.php\nnewscoop/admin-files/lang/sv/issues.php\nnewscoop/admin-files/lang/sv/languages.php\nnewscoop/admin-files/lang/sv/library.php\nnewscoop/admin-files/lang/sv/localizer.php\nnewscoop/admin-files/lang/sv/logs.php\nnewscoop/admin-files/lang/sv/media_archive.php\nnewscoop/admin-files/lang/sv/plugins.php\nnewscoop/admin-files/lang/sv/preview.php\nnewscoop/admin-files/lang/sv/pub.php\nnewscoop/admin-files/lang/sv/sections.php\nnewscoop/admin-files/lang/sv/support.php\nnewscoop/admin-files/lang/sv/system_pref.php\nnewscoop/admin-files/lang/sv/templates.php\nnewscoop/admin-files/lang/sv/themes.php\nnewscoop/admin-files/lang/sv/tiny_media_plugin.php\nnewscoop/admin-files/lang/sv/topics.php\nnewscoop/admin-files/lang/sv/universal_list.php\nnewscoop/admin-files/lang/sv/user_subscription_sections.php\nnewscoop/admin-files/lang/sv/user_subscriptions.php\nnewscoop/admin-files/lang/sv/user_types.php\nnewscoop/admin-files/lang/sv/users.php\nnewscoop/admin-files/lang/tr/api.php\nnewscoop/admin-files/lang/tr/article_comments.php\nnewscoop/admin-files/lang/tr/article_files.php\nnewscoop/admin-files/lang/tr/article_images.php\nnewscoop/admin-files/lang/tr/article_topics.php\nnewscoop/admin-files/lang/tr/article_type_fields.php\nnewscoop/admin-files/lang/tr/article_types.php\nnewscoop/admin-files/lang/tr/articles.php\nnewscoop/admin-files/lang/tr/comments.php\nnewscoop/admin-files/lang/tr/extensions.php\nnewscoop/admin-files/lang/tr/feedback.php\nnewscoop/admin-files/lang/tr/geolocation.php\nnewscoop/admin-files/lang/tr/globals.php\nnewscoop/admin-files/lang/tr/help.php\nnewscoop/admin-files/lang/tr/home.php\nnewscoop/admin-files/lang/tr/issues.php\nnewscoop/admin-files/lang/tr/languages.php\nnewscoop/admin-files/lang/tr/library.php\nnewscoop/admin-files/lang/tr/localizer.php\nnewscoop/admin-files/lang/tr/media_archive.php\nnewscoop/admin-files/lang/tr/pub.php\nnewscoop/admin-files/lang/tr/sections.php\nnewscoop/admin-files/lang/tr/support.php\nnewscoop/admin-files/lang/tr/system_pref.php\nnewscoop/admin-files/lang/tr/themes.php\nnewscoop/admin-files/lang/tr/topics.php\nnewscoop/admin-files/lang/tr/user_subscriptions.php\nnewscoop/admin-files/lang/tr/user_types.php\nnewscoop/admin-files/lang/tr/users.php\nnewscoop/admin-files/lang/uk/api.php\nnewscoop/admin-files/lang/uk/article_comments.php\nnewscoop/admin-files/lang/uk/article_files.php\nnewscoop/admin-files/lang/uk/article_images.php\nnewscoop/admin-files/lang/uk/article_topics.php\nnewscoop/admin-files/lang/uk/article_type_fields.php\nnewscoop/admin-files/lang/uk/article_types.php\nnewscoop/admin-files/lang/uk/articles.php\nnewscoop/admin-files/lang/uk/authors.php\nnewscoop/admin-files/lang/uk/bug_reporting.php\nnewscoop/admin-files/lang/uk/comments.php\nnewscoop/admin-files/lang/uk/country.php\nnewscoop/admin-files/lang/uk/extensions.php\nnewscoop/admin-files/lang/uk/feedback.php\nnewscoop/admin-files/lang/uk/geolocation.php\nnewscoop/admin-files/lang/uk/globals.php\nnewscoop/admin-files/lang/uk/help.php\nnewscoop/admin-files/lang/uk/home.php\nnewscoop/admin-files/lang/uk/issues.php\nnewscoop/admin-files/lang/uk/languages.php\nnewscoop/admin-files/lang/uk/library.php\nnewscoop/admin-files/lang/uk/localizer.php\nnewscoop/admin-files/lang/uk/logs.php\nnewscoop/admin-files/lang/uk/media_archive.php\nnewscoop/admin-files/lang/uk/plugins.php\nnewscoop/admin-files/lang/uk/preview.php\nnewscoop/admin-files/lang/uk/pub.php\nnewscoop/admin-files/lang/uk/sections.php\nnewscoop/admin-files/lang/uk/support.php\nnewscoop/admin-files/lang/uk/system_pref.php\nnewscoop/admin-files/lang/uk/themes.php\nnewscoop/admin-files/lang/uk/tiny_media_plugin.php\nnewscoop/admin-files/lang/uk/topics.php\nnewscoop/admin-files/lang/uk/user_subscription_sections.php\nnewscoop/admin-files/lang/uk/user_subscriptions.php\nnewscoop/admin-files/lang/uk/user_types.php\nnewscoop/admin-files/lang/uk/users.php\nnewscoop/admin-files/lang/zh/api.php\nnewscoop/admin-files/lang/zh/article_comments.php\nnewscoop/admin-files/lang/zh/article_files.php\nnewscoop/admin-files/lang/zh/article_images.php\nnewscoop/admin-files/lang/zh/article_topics.php\nnewscoop/admin-files/lang/zh/article_type_fields.php\nnewscoop/admin-files/lang/zh/article_types.php\nnewscoop/admin-files/lang/zh/articles.php\nnewscoop/admin-files/lang/zh/authors.php\nnewscoop/admin-files/lang/zh/bug_reporting.php\nnewscoop/admin-files/lang/zh/comments.php\nnewscoop/admin-files/lang/zh/country.php\nnewscoop/admin-files/lang/zh/extensions.php\nnewscoop/admin-files/lang/zh/feedback.php\nnewscoop/admin-files/lang/zh/geolocation.php\nnewscoop/admin-files/lang/zh/globals.php\nnewscoop/admin-files/lang/zh/help.php\nnewscoop/admin-files/lang/zh/home.php\nnewscoop/admin-files/lang/zh/issues.php\nnewscoop/admin-files/lang/zh/languages.php\nnewscoop/admin-files/lang/zh/library.php\nnewscoop/admin-files/lang/zh/localizer.php\nnewscoop/admin-files/lang/zh/logs.php\nnewscoop/admin-files/lang/zh/media_archive.php\nnewscoop/admin-files/lang/zh/plugins.php\nnewscoop/admin-files/lang/zh/preview.php\nnewscoop/admin-files/lang/zh/pub.php\nnewscoop/admin-files/lang/zh/sections.php\nnewscoop/admin-files/lang/zh/support.php\nnewscoop/admin-files/lang/zh/system_pref.php\nnewscoop/admin-files/lang/zh/templates.php\nnewscoop/admin-files/lang/zh/themes.php\nnewscoop/admin-files/lang/zh/tiny_media_plugin.php\nnewscoop/admin-files/lang/zh/topics.php\nnewscoop/admin-files/lang/zh/universal_list.php\nnewscoop/admin-files/lang/zh/user_subscription_sections.php\nnewscoop/admin-files/lang/zh/user_subscriptions.php\nnewscoop/admin-files/lang/zh/user_types.php\nnewscoop/admin-files/lang/zh/users.php\nnewscoop/admin-files/lang/zh_TW/api.php\nnewscoop/admin-files/lang/zh_TW/article_comments.php\nnewscoop/admin-files/lang/zh_TW/article_files.php\nnewscoop/admin-files/lang/zh_TW/article_images.php\nnewscoop/admin-files/lang/zh_TW/article_topics.php\nnewscoop/admin-files/lang/zh_TW/article_type_fields.php\nnewscoop/admin-files/lang/zh_TW/article_types.php\nnewscoop/admin-files/lang/zh_TW/articles.php\nnewscoop/admin-files/lang/zh_TW/authors.php\nnewscoop/admin-files/lang/zh_TW/bug_reporting.php\nnewscoop/admin-files/lang/zh_TW/comments.php\nnewscoop/admin-files/lang/zh_TW/country.php\nnewscoop/admin-files/lang/zh_TW/extensions.php\nnewscoop/admin-files/lang/zh_TW/feedback.php\nnewscoop/admin-files/lang/zh_TW/geolocation.php\nnewscoop/admin-files/lang/zh_TW/globals.php\nnewscoop/admin-files/lang/zh_TW/help.php\nnewscoop/admin-files/lang/zh_TW/home.php\nnewscoop/admin-files/lang/zh_TW/issues.php\nnewscoop/admin-files/lang/zh_TW/languages.php\nnewscoop/admin-files/lang/zh_TW/library.php\nnewscoop/admin-files/lang/zh_TW/localizer.php\nnewscoop/admin-files/lang/zh_TW/logs.php\nnewscoop/admin-files/lang/zh_TW/media_archive.php\nnewscoop/admin-files/lang/zh_TW/plugins.php\nnewscoop/admin-files/lang/zh_TW/pub.php\nnewscoop/admin-files/lang/zh_TW/sections.php\nnewscoop/admin-files/lang/zh_TW/support.php\nnewscoop/admin-files/lang/zh_TW/system_pref.php\nnewscoop/admin-files/lang/zh_TW/templates.php\nnewscoop/admin-files/lang/zh_TW/themes.php\nnewscoop/admin-files/lang/zh_TW/topics.php\nnewscoop/admin-files/lang/zh_TW/universal_list.php\nnewscoop/admin-files/lang/zh_TW/user_subscription_sections.php\nnewscoop/admin-files/lang/zh_TW/user_subscriptions.php\nnewscoop/admin-files/lang/zh_TW/user_types.php\nnewscoop/admin-files/lang/zh_TW/users.php\nnewscoop/admin-files/localizer/LanguageMetadata.php\nnewscoop/admin-files/localizer/Localizer.php\nnewscoop/admin-files/localizer/LocalizerConfig.php\nnewscoop/admin-files/localizer/LocalizerFileFormat.php\nnewscoop/admin-files/localizer/LocalizerLanguage.php\nnewscoop/admin-files/localizer/README\nnewscoop/admin-files/localizer/do_add_missing_strings.php\nnewscoop/admin-files/localizer/do_delete_string.php\nnewscoop/admin-files/localizer/do_delete_unused_strings.php\nnewscoop/admin-files/localizer/do_reorder_string.php\nnewscoop/admin-files/localizer/do_save.php\nnewscoop/admin-files/localizer/do_string_switch_file.php\nnewscoop/admin-files/localizer/index.php\nnewscoop/admin-files/localizer/langCodex.xml\nnewscoop/admin-files/localizer/langConv.php\nnewscoop/admin-files/localizer/languages.txt\nnewscoop/admin-files/localizer/languages.xml\nnewscoop/admin-files/localizer/locals.en_English.xml\nnewscoop/admin-files/localizer/test_localizer.php\nnewscoop/admin-files/localizer/translate.php\nnewscoop/admin-files/login.php\nnewscoop/admin-files/logout.php\nnewscoop/admin-files/password_check_token.php\nnewscoop/admin-files/password_recovery.php\nnewscoop/admin-files/system_pref/do_edit.php\nnewscoop/admin-files/system_pref/index.php\nnewscoop/application/configs/services/community_feed.yml\nnewscoop/application/controllers/CommentController.php\nnewscoop/application/languages/DE.php\nnewscoop/application/modules/admin/controllers/NotificationController.php\nnewscoop/application/modules/admin/views/scripts/comment/table.phtml\nnewscoop/application/views/scripts/articleoftheday_index.tpl\nnewscoop/attachment.php\nnewscoop/classes/Cron.php\nnewscoop/classes/SystemPref.php\nnewscoop/conf/installation.php\nnewscoop/conf/upgrading.php\nnewscoop/example/solr/en/conf/admin-extra.html\nnewscoop/example/solr/en/conf/admin-extra.menu-bottom.html\nnewscoop/example/solr/en/conf/admin-extra.menu-top.html\nnewscoop/example/solr/en/conf/elevate.xml\nnewscoop/example/solr/en/conf/mapping-FoldToASCII.txt\nnewscoop/example/solr/en/conf/mapping-ISOLatin1Accent.txt\nnewscoop/example/solr/en/conf/protwords.txt\nnewscoop/example/solr/en/conf/schema.xml\nnewscoop/example/solr/en/conf/schema.xml.old\nnewscoop/example/solr/en/conf/scripts.conf\nnewscoop/example/solr/en/conf/solrconfig.xml\nnewscoop/example/solr/en/conf/spellings.txt\nnewscoop/example/solr/en/conf/stopwords.txt\nnewscoop/example/solr/en/conf/synonyms.txt\nnewscoop/example/solr/en/conf/update-script.js\nnewscoop/example/solr/solr.xml\nnewscoop/extensions/google-gadgets/GoogleGadget.php\nnewscoop/extensions/google-gadgets/MapsGoogleGadget.php\nnewscoop/extensions/google-gadgets/google-gadgets.ini\nnewscoop/favicon.ico\nnewscoop/get_img.php\nnewscoop/htaccess\nnewscoop/include/get_ip.php\nnewscoop/include/var_hook.php\nnewscoop/include/smarty/campsite_plugins/block.list_community_feeds.php\nnewscoop/install/classes/CampInstallation.php\nnewscoop/install/classes/CampInstallationBase.php\nnewscoop/install/classes/CampInstallationView.php\nnewscoop/install/classes/CampTemplate.php\nnewscoop/install/css/lightbox.css\nnewscoop/install/css/style.css\nnewscoop/install/img/admin.png\nnewscoop/install/img/campsite_demo.png\nnewscoop/install/img/checked.png\nnewscoop/install/img/close.gif\nnewscoop/install/img/closelabel.gif\nnewscoop/install/img/installation-progress.png\nnewscoop/install/img/loading.gif\nnewscoop/install/img/logo.png\nnewscoop/install/img/welcome.png\nnewscoop/install/include/gpl.txt\nnewscoop/install/include/js/fValidate/fValidate.basic.js\nnewscoop/install/include/js/fValidate/fValidate.config.js\nnewscoop/install/include/js/fValidate/fValidate.controls.js\nnewscoop/install/include/js/fValidate/fValidate.core.js\nnewscoop/install/include/js/fValidate/fValidate.datetime.js\nnewscoop/install/include/js/fValidate/fValidate.ecommerce.js\nnewscoop/install/include/js/fValidate/fValidate.extended.js\nnewscoop/install/include/js/fValidate/fValidate.international.js\nnewscoop/install/include/js/fValidate/fValidate.lang-enUS.js\nnewscoop/install/include/js/fValidate/fValidate.logical.js\nnewscoop/install/include/js/fValidate/fValidate.numbers.js\nnewscoop/install/include/js/fValidate/fValidate.special.js\nnewscoop/install/include/js/fValidate/fValidate.validators.js\nnewscoop/install/include/js/fValidate/fValidate.web.js\nnewscoop/install/include/js/fValidate/readme.txt\nnewscoop/install/include/js/install.js\nnewscoop/install/sample_data/files/0000/0000/000000005.mp3\nnewscoop/install/sample_data/files/0000/0000/000000007.oga\nnewscoop/install/sample_data/files/0000/0000/000000008.flv\nnewscoop/install/sample_data/files/0000/0000/000000008.mp3\nnewscoop/install/sample_data/files/0000/0000/000000009.flv\nnewscoop/install/sample_data/files/0000/0000/000000010.ogv\nnewscoop/install/sample_data/files/placeholder\nnewscoop/install/sample_data/images/0a925766b335ce7cf5b631f867761771bab0a15e.jpeg\nnewscoop/install/sample_data/images/3f9dc7e8277147719964f7bcd41a586f203b2a1e.jpg\nnewscoop/install/sample_data/images/44fc9b94c5d172cf44382d1cf027e554506c3f9c.jpg\nnewscoop/install/sample_data/images/4dbcd74c2292cfd3ee10fb58b716578cf0671513.jpg\nnewscoop/install/sample_data/images/527c5fb02d3e69f520e7d82eac69e3b74587e51b.jpg\nnewscoop/install/sample_data/images/7a5a53fbf907cb078151a890a2ad20e9d4011bd0.jpg\nnewscoop/install/sample_data/images/9b045682b265533e8526ab230b1cd62d0e72e63b.jpg\nnewscoop/install/sample_data/images/9ec91c423809989ed9e5a3fb298042cbf938ec21.jpg\nnewscoop/install/sample_data/images/cms-image-000000008.jpg\nnewscoop/install/sample_data/images/cms-image-000000047.jpg\nnewscoop/install/sample_data/images/cms-image-000000048.jpg\nnewscoop/install/sample_data/images/cms-image-000000049.jpg\nnewscoop/install/sample_data/images/cms-image-000000050.jpg\nnewscoop/install/sample_data/images/cms-image-000000051.jpg\nnewscoop/install/sample_data/images/cms-image-000000053.jpg\nnewscoop/install/sample_data/images/cms-image-000000054.jpg\nnewscoop/install/sample_data/images/cms-image-000000055.jpg\nnewscoop/install/sample_data/images/cms-image-000000056.jpg\nnewscoop/install/sample_data/images/cms-image-000000057.jpg\nnewscoop/install/sample_data/images/cms-image-000000058.jpg\nnewscoop/install/sample_data/images/cms-image-000000059.jpg\nnewscoop/install/sample_data/images/cms-image-000000060.jpg\nnewscoop/install/sample_data/images/cms-image-000000061.jpg\nnewscoop/install/sample_data/images/cms-image-000000068.jpg\nnewscoop/install/sample_data/images/cms-image-000000069.jpg\nnewscoop/install/sample_data/images/cms-image-000000070.jpg\nnewscoop/install/sample_data/images/cms-image-000000071.jpg\nnewscoop/install/sample_data/images/cms-image-000000072.jpg\nnewscoop/install/sample_data/images/cms-image-000000073.jpg\nnewscoop/install/sample_data/images/cms-image-000000074.jpg\nnewscoop/install/sample_data/images/cms-image-000000075.jpg\nnewscoop/install/sample_data/images/cms-image-000000076.jpg\nnewscoop/install/sample_data/images/cms-image-000000077.jpg\nnewscoop/install/sample_data/images/cms-image-000000078.jpg\nnewscoop/install/sample_data/images/cms-image-000000079.jpg\nnewscoop/install/sample_data/images/cms-image-000000080.jpg\nnewscoop/install/sample_data/images/cms-image-000000081.jpg\nnewscoop/install/sample_data/images/cms-image-000000082.jpg\nnewscoop/install/sample_data/images/cms-image-000000083.jpg\nnewscoop/install/sample_data/images/cms-image-000000084.jpg\nnewscoop/install/sample_data/images/cms-image-000000085.jpg\nnewscoop/install/sample_data/images/cms-image-000000086.jpg\nnewscoop/install/sample_data/images/cms-image-000000087.jpg\nnewscoop/install/sample_data/images/cms-image-000000088.jpg\nnewscoop/install/sample_data/images/cms-image-000000095.jpg\nnewscoop/install/sample_data/images/cms-image-000000096.jpg\nnewscoop/install/sample_data/images/cms-image-000000099.jpg\nnewscoop/install/sample_data/images/cms-image-000000100.jpg\nnewscoop/install/sample_data/images/cms-image-000000101.jpg\nnewscoop/install/sample_data/images/cms-image-000000102.jpg\nnewscoop/install/sample_data/images/cms-image-000000103.jpg\nnewscoop/install/sample_data/images/cms-image-000000104.jpg\nnewscoop/install/sample_data/images/cms-image-000000105.jpg\nnewscoop/install/sample_data/images/cms-image-000000106.jpg\nnewscoop/install/sample_data/images/cms-image-000000107.jpg\nnewscoop/install/sample_data/images/cms-image-000000108.jpg\nnewscoop/install/sample_data/images/cms-image-000000109.jpg\nnewscoop/install/sample_data/images/cms-image-000000110.jpg\nnewscoop/install/sample_data/images/cms-image-000000111.jpg\nnewscoop/install/sample_data/images/cms-image-000000112.jpg\nnewscoop/install/sample_data/images/cms-image-000000113.jpg\nnewscoop/install/sample_data/images/cms-image-000000114.jpg\nnewscoop/install/sample_data/images/cms-image-000000115.jpg\nnewscoop/install/sample_data/images/cms-image-000000116.jpg\nnewscoop/install/sample_data/images/cms-image-000000117.jpg\nnewscoop/install/sample_data/images/cms-image-000000118.jpg\nnewscoop/install/sample_data/images/cms-image-000000119.jpg\nnewscoop/install/sample_data/images/cms-image-000000120.jpg\nnewscoop/install/sample_data/images/cms-image-000000121.jpg\nnewscoop/install/sample_data/images/cms-image-000000122.jpg\nnewscoop/install/sample_data/images/cms-image-000000123.jpg\nnewscoop/install/sample_data/images/cms-image-000000124.jpg\nnewscoop/install/sample_data/images/cms-image-000000125.jpg\nnewscoop/install/sample_data/images/cms-image-000000126.jpg\nnewscoop/install/sample_data/images/dc1989572b1a6a68f1981597d0a79eadd2df98df.jpg\nnewscoop/install/sample_data/images/de5b4b8faa473a93c0398c786ac39486d009fe21.jpg\nnewscoop/install/sample_data/images/e7b816f7d39bb6cbd151089baeeb542d9856bf21.jpg\nnewscoop/install/sample_data/images/image_broken.png\nnewscoop/install/sample_templates/quetzal/description.txt\nnewscoop/install/sample_templates/quetzal/name.txt\nnewscoop/install/sample_templates/quetzal/screenshot.jpg\nnewscoop/install/sample_templates/quetzal/screenshot_large.jpg\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/404.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/README.md\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_conf/English.conf\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_conf/Spanish.conf\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/1140.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/bootstrap.min.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/colors.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/datepicker.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/blank.gif\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_close.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_loading.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_nav_left.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_nav_right.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_shadow_e.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_shadow_n.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_shadow_ne.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_shadow_nw.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_shadow_s.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_shadow_se.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_shadow_sw.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_shadow_w.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_title_left.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_title_main.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_title_over.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancy_title_right.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancybox-x.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancybox-y.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/fancybox.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/fancybox/jquery.fancybox-1.3.4.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/black.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/black@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/black_rtl.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/black_rtl@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/play_black.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/play_black@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/play_black_rtl.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/play_black_rtl@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/play_white.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/play_white@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/play_white_rtl.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/play_white_rtl@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/playful_black.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/playful_black@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/playful_black_rtl.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/playful_black_rtl@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/playful_white.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/playful_white@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/playful_white_rtl.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/playful_white_rtl@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/white.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/white@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/white_rtl.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/img/white_rtl@x2.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/flowplayer_skin/minimalist.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/handheld.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/main.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/mixins.less\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/quetzal.ie.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/quetzal.layout.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/quetzal.layout.less\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/quetzal.responsive.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/quetzal.responsive.less\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/quetzal.skin.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/quetzal.skin.less\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/reset.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/style.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-icons_222222_256x240.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-icons_228ef1_256x240.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-icons_ef8c08_256x240.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-icons_ffd27a_256x240.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/images/ui-icons_ffffff_256x240.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/ui-lightness/jquery-ui.custom.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_css/video-js.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/apple-touch-icon-114x114-precomposed.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/apple-touch-icon-144x144-precomposed.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/apple-touch-icon-57x57-precomposed.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/apple-touch-icon-72x72-precomposed.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/apple-touch-icon-precomposed.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/apple-touch-icon.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/archive-icon.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/archive.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/arrow-bullet.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/arrow-down.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/black-dot.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/body-back.jpg\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/body-bgr-test.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/calendar-icon.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/center-map.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/comment-icon.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/community_icons.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/dot.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/fb.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/footer-back.jpg\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/glyphicons-halflings-white.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/glyphicons-halflings.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/header-back.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/icon_nav-button.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/icon_open-close.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/icon_search_white.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/icons/audio.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/icons/locked.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/icons/photo.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/icons/video.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/internal-header.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/logo.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/logo_red.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/map-badges.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/menu-separator.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/nav-arrows-disabled.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/nav-arrows.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/nav-tabs.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/newscoop-quetzal-logo-footer.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/noavatar.jpg\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/player.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/popular_news_background.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/post-icon.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/rating/star_empty.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/rating/star_full.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/rating/star_highlight.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/rss.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/slider-default.jpg\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/sourcefabric-336x280.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/tab-active.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/tabcontent.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/tabs-back.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/topnav-back.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/tw.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/user-icon.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/user_blank_140x210.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/user_blank_175x210.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/user_blank_50x50.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/user_blank_60x60.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/user_inactive_140x210.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/user_inactive_175x210.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/user_inactive_50x50.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/user_inactive_60x60.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_img/video-js.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/article-rating.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/libs/bootstrap-collapse.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/libs/bootstrap-transition.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/libs/dd_belatedpng.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/libs/jquery.min.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/libs/modernizr-1.7.min.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/matchmedia.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/newscoop.quetzal.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/picturefill.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/plugins.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/script.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/audiojs/audio.min.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/audiojs/audiojs.swf\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/audiojs/player-graphics.gif\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/bootstrap-datepicker.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/bootstrap.min.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/flowplayer/flowplayer.min.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/flowplayer/flowplayer.swf\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/flowplayer/video-js.swf\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/galleria/galleria-1.2.9.min.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/galleria/themes/classic/classic-loader.gif\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/galleria/themes/classic/classic-map.png\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/galleria/themes/classic/galleria.classic.css\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/galleria/themes/classic/galleria.classic.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/galleria/themes/classic/galleria.classic.min.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/html5shiv.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/jquery-1.9.1.min.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/jquery.cycle2.loader.min.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/jquery.cycle2.min.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/jquery.timeago.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/vendor/video.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_js/video.js\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/_banner-sidebar.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/_edit-article.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/_html-foot.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/_html-head.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/archive-cont.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/archive-header.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/article-aside.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/article-attachments.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/article-comments.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/article-cont.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/article-debate.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/article-header.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/article-icons.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/article-rating.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/article-slideshows.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/dashboard-header.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/debate-answers.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/debate-deadline.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/debate-voting.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/debate_votes_total.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/footer.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/front-dynamicmap.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/front-highlights.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/front-morenews.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/front-morestories.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/front-slider.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/front-stories.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/front-topstory.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/header.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_130x70.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_130x98.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_150x100.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_150x150.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_202x152.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_225x150.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_235x220.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_250x167.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_300x300.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_330x215.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_500x333.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_600x400.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_68x45.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_70x45.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_72x46.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_960x300.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/img/img_picturefill.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/issue-cont.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/issue-header.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/map.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/more-news-block.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/multimedia.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/paginator_control.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/relative_date.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/search-cont.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/search-header.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/section-cont.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/section-header.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/sidebar-community-feed.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/sidebar-loginbox.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/sidebar-most.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/sidebar-poll.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/sidebar-poll.tpl~\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/sidebar.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/sidebar_poll.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/tablet-more-tabs.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/topic-cont.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/topic-header.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/user-articles.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/user-comments.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/user-cont.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/user-content.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/user-header.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/user-image.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/user-sidebar.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/_tpl/user_profile-cont.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/archive.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/article.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/auth_index.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/auth_password-restore-after.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/auth_password-restore-finish.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/auth_password-restore.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/dashboard_index.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/email_confirm.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/email_confirm.tpl~\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/front.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/issue.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/layout.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/register_after.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/register_confirm.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/register_index.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/register_pending.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/register_social.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/rss.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/search.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/section.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/theme.xml\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/themethumbs/article.jpg\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/themethumbs/front.jpg\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/themethumbs/section.jpg\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/topic.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/user_index.tpl\nnewscoop/install/sample_templates/quetzal/templates/set_quetzal/user_profile.tpl\nnewscoop/install/sample_templates/quetzal/templates/system_templates/_campsite_error.tpl\nnewscoop/install/sample_templates/quetzal/templates/system_templates/_campsite_message.tpl\nnewscoop/install/sample_templates/quetzal/templates/system_templates/_campsite_offline.tpl\nnewscoop/install/sample_templates/quetzal/templates/system_templates/_events_notifier.tpl\nnewscoop/install/sample_templates/quetzal/templates/system_templates/_subscription_notifier.tpl\nnewscoop/install/sample_templates/quetzal/templates/system_templates/css/_style_offline.css\nnewscoop/install/sample_templates/quetzal/templates/system_templates/img/newscoop_logo_big.png\nnewscoop/install/sample_templates/rockstar/description.txt\nnewscoop/install/sample_templates/rockstar/name.txt\nnewscoop/install/sample_templates/rockstar/screenshot.jpg\nnewscoop/install/sample_templates/rockstar/screenshot_large.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/README.md\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_conf/English.conf\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/_edit-article.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/_html-foot.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/_html-head.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/all-sections.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/article-aside.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/article-author-info.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/article-comments.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/article-cont.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/article-debate.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/article-rating.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/debate-answers.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/debate-deadline.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/debate-voting.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/debate_votes_total.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/footer.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/front-about-us.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/front-dynamicmap.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/front-playlist-articles.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/front-poll.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/front-three-blocks.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/header.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/img/img_big.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/img/img_onehalf.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/img/img_onethird.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/img/img_square.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/paginator_control.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/relative_date.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/search-cont.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/section-cont.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/section-two-blocks.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/topic-cont.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/user-content.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/_tpl/user-image.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/archive.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/article.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/.DS_Store\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/.DS_Store\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/blank.gif\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_close.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_loading.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_nav_left.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_nav_right.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_shadow_e.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_shadow_n.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_shadow_ne.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_shadow_nw.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_shadow_s.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_shadow_se.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_shadow_sw.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_shadow_w.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_title_left.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_title_main.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_title_over.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancy_title_right.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancybox-x.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancybox-y.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/fancybox.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/fancybox/jquery.fancybox-1.3.4.css\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/handheld.css\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/main.css\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/map-info.css\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/reset.css\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/css/skin.css\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/fonts/.DS_Store\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/bullet-1.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/bullet-2.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/bullet-3.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/feed-icons.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/icon-search.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/icons-top.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/logo.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/rating/star_empty.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/rating/star_full.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/rating/star_highlight.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/slider-arrows.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/small-slider-arrows.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/img/top-background.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/js/article-rating.js\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/js/init.js\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/js/libs/.DS_Store\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/js/libs/jquery.jcarousel.min.js\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/js/libs/jquery.min.js\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/js/libs/modernizr-2.0.6.js\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/js/libs/selectivizr-min.js\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/js/plugins.js\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/js/script.js\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/assets/less/main.less\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/auth_index.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/auth_password-restore-after.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/auth_password-restore-finish.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/auth_password-restore.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/dashboard_index.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/email_confirm.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/front.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/issue.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/page.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/.DS_Store\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-1.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-2-2.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-2.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-3-2.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-3-3.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-3-4.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-3-5.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-3-6.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-3.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-6-2.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-6-3.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-6-4.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-6-5.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-6-6.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/article-img-grid-6.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/author-img.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/comment-avatar.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/map-sample-small.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/map-sample.png\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/thumb-1.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/thumb-2.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/pictures/thumb-3.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/register_after.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/register_confirm.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/register_index.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/register_pending.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/search.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/section.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/theme.xml\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/themethumbs/article.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/themethumbs/front.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/themethumbs/section.jpg\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/topic.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/user_index.tpl\nnewscoop/install/sample_templates/rockstar/templates/set_rockstar/user_profile.tpl\nnewscoop/install/sample_templates/rockstar/templates/system_templates/_campsite_error.tpl\nnewscoop/install/sample_templates/rockstar/templates/system_templates/_campsite_message.tpl\nnewscoop/install/sample_templates/rockstar/templates/system_templates/_campsite_offline.tpl\nnewscoop/install/sample_templates/rockstar/templates/system_templates/_events_notifier.tpl\nnewscoop/install/sample_templates/rockstar/templates/system_templates/_subscription_notifier.tpl\nnewscoop/install/sample_templates/rockstar/templates/system_templates/css/_style_offline.css\nnewscoop/install/sample_templates/rockstar/templates/system_templates/img/newscoop_logo_big.png\nnewscoop/install/sample_templates/the_new_custodian/description.txt\nnewscoop/install/sample_templates/the_new_custodian/name.txt\nnewscoop/install/sample_templates/the_new_custodian/screenshot.jpg\nnewscoop/install/sample_templates/the_new_custodian/screenshot_large.jpg\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/404.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/README.md\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_conf/English.conf\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/1140.css\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/colors.css\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/blank.gif\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_close.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_loading.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_nav_left.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_nav_right.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_shadow_e.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_shadow_n.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_shadow_ne.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_shadow_nw.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_shadow_s.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_shadow_se.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_shadow_sw.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_shadow_w.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_title_left.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_title_main.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_title_over.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancy_title_right.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancybox-x.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancybox-y.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/fancybox.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/fancybox/jquery.fancybox-1.3.4.css\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/handheld.css\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/main.css\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/reset.css\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/style.css\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-icons_222222_256x240.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-icons_228ef1_256x240.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-icons_ef8c08_256x240.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-icons_ffd27a_256x240.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/images/ui-icons_ffffff_256x240.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/ui-lightness/jquery-ui.custom.css\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_css/video-js.css\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/arrow-bullet.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/body-bgr-test.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/community_icons.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/icon_nav-button.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/icon_open-close.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/icon_search_white.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/icons/audio.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/icons/locked.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/icons/photo.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/icons/video.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/logo.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/logo_red.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/nav-arrows-disabled.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/nav-arrows.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/rating/star_empty.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/rating/star_full.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_img/rating/star_highlight.png\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_js/article-rating.js\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_js/libs/bootstrap-collapse.js\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_js/libs/bootstrap-transition.js\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_js/libs/dd_belatedpng.js\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_js/libs/jquery.min.js\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_js/libs/modernizr-1.7.min.js\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_js/matchmedia.js\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_js/picturefill.js\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_js/plugins.js\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_js/script.js\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_js/video.js\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/_banner-sidebar.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/_edit-article.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/_html-foot.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/_html-head.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/archive-cont.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/article-aside.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/article-comments.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/article-cont.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/article-debate.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/article-icons.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/article-rating.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/debate-answers.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/debate-deadline.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/debate-voting.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/debate_votes_total.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/footer.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/front-dynamicmap.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/front-highlights.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/front-morenews.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/front-morestories.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/front-topstory.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/header.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/img/img_150x100.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/img/img_150x150.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/img/img_250x167.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/img/img_500x333.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/img/img_600x400.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/img/img_picturefill.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/issue-cont.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/paginator_control.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/relative_date.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/search-cont.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/section-cont.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/sidebar-community-feed.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/sidebar-loginbox.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/sidebar-most.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/sidebar-poll.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/sidebar-poll.tpl~\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/topic-cont.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/user-content.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/_tpl/user-image.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/archive.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/article.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/auth_index.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/auth_password-restore-after.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/auth_password-restore-finish.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/auth_password-restore.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/dashboard_index.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/email_confirm.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/front.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/issue.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/layout.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/register_after.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/register_confirm.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/register_index.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/register_pending.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/register_social.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/rss.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/search.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/section.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/theme.xml\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/themethumbs/article.jpg\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/themethumbs/front.jpg\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/themethumbs/section.jpg\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/topic.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/user_index.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/set_the_new_custodian/user_profile.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/system_templates/_campsite_error.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/system_templates/_campsite_message.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/system_templates/_campsite_offline.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/system_templates/_events_notifier.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/system_templates/_subscription_notifier.tpl\nnewscoop/install/sample_templates/the_new_custodian/templates/system_templates/css/_style_offline.css\nnewscoop/install/sample_templates/the_new_custodian/templates/system_templates/img/newscoop_logo_big.png\nnewscoop/install/scripts/SQLImporting.php\nnewscoop/install/scripts/index-debug.php\nnewscoop/install/sql/CityLocations.csv\nnewscoop/install/sql/CityNames.csv\nnewscoop/install/sql/campsite_core.sql\nnewscoop/install/sql/campsite_demo_data.sql\nnewscoop/install/sql/campsite_demo_prepare.sql\nnewscoop/install/sql/campsite_demo_tables.sql\nnewscoop/install/sql/checkpp.sql\nnewscoop/install/sql/create_demo_scripts\nnewscoop/install/sql/geonames.sql\nnewscoop/install/sql/manual-update-fixes.sql\nnewscoop/install/sql/upgrade/2.0.x/data-optional.sql\nnewscoop/install/sql/upgrade/2.0.x/data-required.sql\nnewscoop/install/sql/upgrade/2.0.x/tables.sql\nnewscoop/install/sql/upgrade/2.1.x/data-required.sql\nnewscoop/install/sql/upgrade/2.1.x/tables.sql\nnewscoop/install/sql/upgrade/2.1.x/transfer_images.php\nnewscoop/install/sql/upgrade/2.1.x/transfer_templates.php\nnewscoop/install/sql/upgrade/2.2.x/data-required.sql\nnewscoop/install/sql/upgrade/2.2.x/tables.sql\nnewscoop/install/sql/upgrade/2.2.x/update_article_types.php\nnewscoop/install/sql/upgrade/2.3.x/tables.sql\nnewscoop/install/sql/upgrade/2.3.x/upgrade_user_perms.php\nnewscoop/install/sql/upgrade/2.4.x/create_idimage_index.php\nnewscoop/install/sql/upgrade/2.4.x/tables.sql\nnewscoop/install/sql/upgrade/2.4.x/upgrade_user_perms.php\nnewscoop/install/sql/upgrade/2.5.x/data-required.sql\nnewscoop/install/sql/upgrade/2.5.x/init_user_types.php\nnewscoop/install/sql/upgrade/2.5.x/tables.sql\nnewscoop/install/sql/upgrade/2.5.x/upgrade_article_types.php\nnewscoop/install/sql/upgrade/2.5.x/upgrade_user_perms.php\nnewscoop/install/sql/upgrade/2.6.0/data-required.sql\nnewscoop/install/sql/upgrade/2.6.0/tables.sql\nnewscoop/install/sql/upgrade/2.6.1/data-required.sql\nnewscoop/install/sql/upgrade/2.6.1/tables.sql\nnewscoop/install/sql/upgrade/2.6.1/upgrade_phorum_users.php\nnewscoop/install/sql/upgrade/2.6.2/data-required.sql\nnewscoop/install/sql/upgrade/2.6.2/upgrade_phorum_users.php\nnewscoop/install/sql/upgrade/2.6.3/data-required.sql\nnewscoop/install/sql/upgrade/2.6.4/data-required.sql\nnewscoop/install/sql/upgrade/2.6.4/sync_phorum_users.php\nnewscoop/install/sql/upgrade/2.6.4/upgrade_user_perms.php\nnewscoop/install/sql/upgrade/2.6.x/data-required.sql\nnewscoop/install/sql/upgrade/2.6.x/tables.sql\nnewscoop/install/sql/upgrade/2.6.x/upgrade_liveuser.php\nnewscoop/install/sql/upgrade/2.6.x/upgrade_system_pref.php\nnewscoop/install/sql/upgrade/2.6.x/upgrade_user_perms.php\nnewscoop/install/sql/upgrade/2.7.x/data-required.sql\nnewscoop/install/sql/upgrade/2.7.x/tables.sql\nnewscoop/install/sql/upgrade/2.7.x/upgrade_group_rights.php\nnewscoop/install/sql/upgrade/2.7.x/upgrade_liveuser.php\nnewscoop/install/sql/upgrade/3.0.x/create_object_types_description.php\nnewscoop/install/sql/upgrade/3.0.x/data-required.sql\nnewscoop/install/sql/upgrade/3.0.x/tables.sql\nnewscoop/install/sql/upgrade/3.0.x/upgrade_liveuser_rights.php\nnewscoop/install/sql/upgrade/3.1.0/tables.sql\nnewscoop/install/sql/upgrade/3.1.x/data-required.sql\nnewscoop/install/sql/upgrade/3.1.x/tables.sql\nnewscoop/install/sql/upgrade/3.1.x/update_article_authors.php\nnewscoop/install/sql/upgrade/3.2.x/data-required.sql\nnewscoop/install/sql/upgrade/3.2.x/tables.sql\nnewscoop/install/sql/upgrade/3.3.x/data-required.sql\nnewscoop/install/sql/upgrade/3.3.x/tables.sql\nnewscoop/install/sql/upgrade/3.3.x/update_rights.php\nnewscoop/install/sql/upgrade/3.4.x/data-required.sql\nnewscoop/install/sql/upgrade/3.4.x/load_geonames_data.php\nnewscoop/install/sql/upgrade/3.4.x/tables.sql\nnewscoop/install/sql/upgrade/3.4.x/transfer_topics.php\nnewscoop/install/sql/upgrade/3.4.x/update_rights.php\nnewscoop/install/sql/upgrade/3.5.x/2012-03-12/data-required.sql\nnewscoop/install/sql/upgrade/3.5.x/2012-03-12/tables.sql\nnewscoop/install/sql/upgrade/3.5.x/2012-05-16/tables.sql\nnewscoop/install/sql/upgrade/3.5.x/Readme.txt\nnewscoop/install/sql/upgrade/3.5.x/ThemeUpgrade.php\nnewscoop/install/sql/upgrade/3.5.x/acl.php\nnewscoop/install/sql/upgrade/3.5.x/checkpp.php\nnewscoop/install/sql/upgrade/3.5.x/create_themes.php\nnewscoop/install/sql/upgrade/3.5.x/data-required.sql\nnewscoop/install/sql/upgrade/3.5.x/javascript_js_cleanup.php\nnewscoop/install/sql/upgrade/3.5.x/tables-post.sql\nnewscoop/install/sql/upgrade/3.5.x/tables.sql\nnewscoop/install/sql/upgrade/3.5.x/theme.xml\nnewscoop/install/sql/upgrade/3.5.x/transfer_phorum.php\nnewscoop/install/sql/upgrade/4.0.x/2012-05-23/assure_article_authors.php\nnewscoop/install/sql/upgrade/4.0.x/2012-05-23/tables.sql\nnewscoop/install/sql/upgrade/4.0.x/2012-06-05/populate_webcodes.php\nnewscoop/install/sql/upgrade/4.0.x/2012-06-05/tables.sql\nnewscoop/install/sql/upgrade/4.0.x/2012-06-29/tables.sql\nnewscoop/install/sql/upgrade/4.0.x/2012-09-10/tables.sql\nnewscoop/install/sql/upgrade/4.0.x/2012-09-20/tables.sql\nnewscoop/install/sql/upgrade/4.0.x/2012-11-23/tables.sql\nnewscoop/install/sql/upgrade/4.0.x/2012-12-18/tables.sql\nnewscoop/install/sql/upgrade/4.0.x/2012-12-28/migrate.php\nnewscoop/install/sql/upgrade/4.0.x/2012-12-28/tables.sql\nnewscoop/install/sql/upgrade/4.1.x/2013-01-14/tables.sql\nnewscoop/install/sql/upgrade/4.1.x/2013-01-23/tables.sql\nnewscoop/install/sql/upgrade/4.1.x/2013-02-06/data-required.sql\nnewscoop/install/sql/upgrade/4.1.x/2013-04-12/data-required.sql\nnewscoop/install/sql/upgrade/4.1.x/2013-04-22/tables.sql\nnewscoop/install/sql/upgrade/4.2.x/2013-02-19/tables.sql\nnewscoop/install/sql/upgrade/4.2.x/2013.03.06/tables.sql\nnewscoop/install/sql/upgrade/4.2.x/2013.05.06/tables.sql\nnewscoop/install/sql/upgrade/4.2.x/2013.05.28/move_files.php\nnewscoop/install/sql/upgrade/4.2.x/2013.05.28/tables.sql\nnewscoop/install/sql/upgrade/4.2.x/2013.05.29/tables.sql\nnewscoop/install/sql/upgrade/4.2.x/2013.06.13/tables.sql\nnewscoop/install/sql/upgrade/4.2.x/2013.10.24/data-required.sql\nnewscoop/install/sql/upgrade/4.2.x/2013.10.24/tables.sql\nnewscoop/install/sql/upgrade/4.2.x/2014.04.24/data-required.sql\nnewscoop/install/sql/upgrade/4.2.x/2014.05.06/move_files.php\nnewscoop/install/sql/upgrade/4.2.x/2014.05.06/tables.sql\nnewscoop/install/templates/_configuration.tpl\nnewscoop/install/templates/_database_conf.tpl\nnewscoop/install/templates/_newscoop_autopublish.tpl\nnewscoop/install/templates/_newscoop_indexer.tpl\nnewscoop/install/templates/_newscoop_notifyendsubs.tpl\nnewscoop/install/templates/_newscoop_notifyevents.tpl\nnewscoop/install/templates/_newscoop_statistics.tpl\nnewscoop/install/templates/_newscoop_stats.tpl\nnewscoop/install/templates/cronjobs.tpl\nnewscoop/install/templates/database.tpl\nnewscoop/install/templates/finish.tpl\nnewscoop/install/templates/html_footer.tpl\nnewscoop/install/templates/html_header.tpl\nnewscoop/install/templates/license.tpl\nnewscoop/install/templates/loaddemo.tpl\nnewscoop/install/templates/mainconfig.tpl\nnewscoop/install/templates/precheck.tpl\nnewscoop/js/jquery/comment.js\nnewscoop/library/Newscoop/Entity/Events/CommunityTickerEvent.php\nnewscoop/library/Newscoop/Entity/Repository/Events/CommunityTickerEventRepository.php\nnewscoop/library/Newscoop/Gimme/PublicationService.php\nnewscoop/library/Newscoop/MailChimp/ApiFactory.php\nnewscoop/library/Newscoop/MailChimp/ListApi.php\nnewscoop/library/Newscoop/MailChimp/ListView.php\nnewscoop/library/Newscoop/MailChimp/MemberView.php\nnewscoop/library/Newscoop/Search/AbstractCommand.php\nnewscoop/library/Newscoop/Search/AddCommand.php\nnewscoop/library/Newscoop/Search/ArticleIndexer.php\nnewscoop/library/Newscoop/Search/DeleteCommand.php\nnewscoop/library/Newscoop/Search/Index.php\nnewscoop/library/Newscoop/Search/Query.php\nnewscoop/library/Newscoop/Search/SolrException.php\nnewscoop/library/Newscoop/Search/SolrIndex.php\nnewscoop/library/Newscoop/Services/CommunityFeedService.php\nnewscoop/library/Newscoop/Services/FooService.php\nnewscoop/library/Newscoop/Services/PluginsManagerService.php\nnewscoop/library/Newscoop/Services/StringTransformer.php\nnewscoop/library/Newscoop/Tools/Console/Command/ResetIndexCommand.php\nnewscoop/library/Newscoop/Webcode.php\nnewscoop/library/Newscoop/Webcode/Manager.php\nnewscoop/library/Newscoop/Webcode/Mapper.php\nnewscoop/src/Newscoop/GimmeBundle/EventListener/PublicationListener.php\nnewscoop/src/Newscoop/GimmeBundle/Serializer/Author/ImageUriHandler.php\nnewscoop/template_engine/classes/CommunityFeedsList.php\nnewscoop/template_engine/metaclasses/MetaCommunityFeed.php\npackaging/debian/README.Debian\npackaging/debian/changelog\npackaging/debian/compat\npackaging/debian/config\npackaging/debian/control\npackaging/debian/copyright\npackaging/debian/docs\npackaging/debian/etc/apache.conf\npackaging/debian/etc/apache.vhost.tpl\npackaging/debian/etc/newscoop.cron.tpl\npackaging/debian/etc/newscoop.ini\npackaging/debian/gbp.conf\npackaging/debian/install\npackaging/debian/po/POTFILES.in\npackaging/debian/po/templates.pot\npackaging/debian/postinst\npackaging/debian/postrm\npackaging/debian/rules\npackaging/debian/source/format\npackaging/debian/templates\npackaging/debian/usr/newscoop\npackaging/debian/watch\npackaging/gen-debian-package.sh\npackaging/gen-rpm.sh\npackaging/newscoop-easy-setup/DEBIAN/changelog\npackaging/newscoop-easy-setup/DEBIAN/control\npackaging/newscoop-easy-setup/DEBIAN/copyright\npackaging/newscoop-easy-setup/DEBIAN/postinst\npackaging/newscoop-easy-setup/etc/apt/sources.list.d/newscoop.list\npackaging/newscoop-easy-setup/usr/share/keyrings/newscoop-easy-setup-key\npackaging/newscoop-easy-setup/usr/share/newscoop/debconf-selections\npackaging/newscoop-easy-setup_4.0.2-1_all.deb\npackaging/rpm/apache.conf\npackaging/rpm/newscoop.ini\npackaging/rpm/newscoop.spec\npackaging/src/newscoop-make-package-git\npackaging/src/newscoop-make-tarball-package-git\npackaging/src/newscoop-make-zip-package-git\nscripts/localization/generate-php-files.sh\nscripts/localization/generate-po-files.sh\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.09.22/tables.sql",
    "content": "system php ./upgrade.php\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.09.22/upgrade.php",
    "content": "<?php\n\n$newscoopDir = realpath(dirname(__FILE__).'/../../../../../../').'/';\n$rootDir = realpath($newscoopDir.'../').'/';\n$currentDir = dirname(__FILE__) .'/';\n$diffFile = 'auto_delete_diff.txt';\n$upgradeErrors = array();\n\nrequire_once $newscoopDir.'vendor/autoload.php';\n\nuse Symfony\\Component\\Finder\\Finder;\nuse Symfony\\Component\\Filesystem\\Filesystem;\nuse Symfony\\Component\\Filesystem\\Exception\\IOException;\nuse Monolog\\Logger;\nuse Newscoop\\Installer\\Services\\DatabaseService;\n\n$app = new Silex\\Application();\n$app->register(new Silex\\Provider\\MonologServiceProvider(), array(\n    'monolog.logfile' => $newscoopDir.'log/upgrade.log',\n    'monolog.level' => Logger::NOTICE,\n    'monolog.name' => 'upgrade'\n));\n\n$logger = $app['monolog'];\n\n// Remove files\n$finder = new Finder();\n$filesystem = new Filesystem();\n$finder->files()->in($currentDir)->name($diffFile);\n\n$contents = null;\nforeach ($finder as $file) {\n    $contents = $file->getContents();\n}\n\n$filesToBeDeleted =  array_filter(preg_split('/\\r\\n|\\n|\\r/', $contents));\n$folderToBeChecked = array();\n\nif (count($filesToBeDeleted) > 0) {\n\n    foreach ($filesToBeDeleted as $file) {\n\n        if (strpos($file, 'newscoop/') === false) {\n            continue;\n        }\n\n        $fullPath = $newscoopDir.substr($file, 9);\n\n        if (is_file($fullPath) && is_readable($fullPath)) {\n\n            try {\n                $filesystem->remove(array($fullPath));\n            } catch (IOException $e) {\n                $msg = 'Could not remove file '.str_replace($newscoopDir, '', $fullPath).', please remove it manually.';\n                $logger->addError($msg);\n                $upgradeErrors[] = $msg;\n            } catch (\\Exception $e) {\n                $msg = 'Could not remove file '.str_replace($newscoopDir, '', $fullPath).', please remove it manually.';\n                $logger->addError($msg);\n                $upgradeErrors[] = $msg;\n            }\n        }\n\n        if (strpos($file, '/') !== false && strpos($file, 'newscoop/admin-files/lang') === false) {\n            $folderToBeChecked[] = dirname($fullPath);\n        }\n    }\n}\n\n$folderToBeChecked = array_unique($folderToBeChecked);\narsort($folderToBeChecked);\n\n// Add extra directories to remove recusively\n$folderToBeChecked[] = $newscoopDir .'example';\n$folderToBeChecked[] = $newscoopDir .'extensions/google-gadgets';\n$folderToBeChecked[] = $newscoopDir .'install/cron_jobs';\n$folderToBeChecked[] = $newscoopDir .'install/sample_data';\n\nforeach ($folderToBeChecked as $folder) {\n\n    if (is_dir($folder)) {\n\n        $finder = new Finder();\n        $finder->in($folder);\n\n         if (iterator_count($finder->files()) == 0) {\n\n            try {\n                // Remove subdirectories\n                foreach ($finder->directories()->sortByName() as $subFolder) {\n                    if (is_dir($subFolder)) {\n                        $filesystem->remove(array($subFolder));\n                    }\n                }\n            } catch (\\Exception $e) {\n                $msg = 'Could not remove or check subdirectories of '.str_replace($newscoopDir, '', $fullPath).'. Please see newscoop/install/Resources/sql/upgrade/4.3.x/2014.09.22/delete_diff.txt and remove the empty directories manually.';\n                $logger->addError($msg);\n                $upgradeErrors[] = $msg;\n            }\n\n            try {\n                // Remove parent directory\n                $filesystem->remove(array($folder));\n            } catch (\\Exception $e) {\n                $msg = 'Could not remove folder '.str_replace($newscoopDir, '', $folder).', please remove it manually.';\n                $logger->addError($msg);\n                $upgradeErrors[] = $msg;\n            }\n        }\n    }\n}\n\n$foldersToBeRemovedCompletely = array(\n    $newscoopDir .'admin-files/lang'\n);\n\nforeach ($foldersToBeRemovedCompletely as $folder) {\n\n    if (is_dir($folder)) {\n\n        try {\n            // Remove parent directory\n            $filesystem->remove(array($folder));\n        } catch (\\Exception $e) {\n            $msg = 'Could not remove folder '.str_replace($newscoopDir, '', $folder).', please remove it and it\\'s contents manually.';\n            $logger->addError($msg);\n            $upgradeErrors[] = $msg;\n        }\n    }\n}\n\ntry {\n    $configFile = realpath(__DIR__ . '/../../../../../../conf/configuration.php');\n    $databaseService = new DatabaseService($logger);\n    $databaseService->renderFile('_configuration.twig', $configFile, array());\n} catch (\\Exception $e) {\n    $msg = \"Could not update '\" . $configFile . \"', please update it manually.\"\n    . \" Copy content of '\" . realpath(__DIR__ . '/../../../../../Resources/templates/_configuration.twig') . \"' file to '\" . $configFile . \"' and save.\\n\";\n    $logger->addError($msg);\n    array_splice($upgradeErrors, 0, 0, array($msg));\n}\n\nif (count($upgradeErrors) > 0) {\n    $msg = \"Some files or directories could not automatically be removed. This is \"\n        . \"most likely caused by permissions. \\n\"\n        . \"You can either remove the files manually (see ${newscoopDir}install/Resources/sql/upgrade/4.3.x/2014.09.22/delete_diff.txt) \"\n        . \"or execute this file with root permissions, e.g.: \\n\"\n        . \"sudo php ${newscoopDir}install/Resources/sql/upgrade/4.3.x/2014.09.22/upgrade.php\";\n    $logger->addError($msg);\n    array_splice($upgradeErrors, 0, 0, array($msg));\n}\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.09.23/tables.sql",
    "content": "ALTER TABLE `community_ticker_event` ADD `is_active` TINYINT(1) NOT NULL DEFAULT '1';\nUPDATE `SystemPreferences` SET `value` = 'public/videos/' WHERE `varname` = 'FlashDirectory';"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.09.24/plugins.php",
    "content": "<?php\n\n$newscoopDir = realpath(dirname(__FILE__).'/../../../../../../').'/';\n\nrequire_once $newscoopDir.'vendor/autoload.php';\nrequire $newscoopDir.'conf/database_conf.php';\n\nuse Monolog\\Logger;\n\n$upgradeErrors = array();\n$app = new Silex\\Application();\n$app->register(new Silex\\Provider\\MonologServiceProvider(), array(\n    'monolog.logfile' => $newscoopDir.'log/upgrade.log',\n    'monolog.level' => Logger::NOTICE,\n    'monolog.name' => 'upgrade'\n));\n\n$logger = $app['monolog'];\n\n$app->register(new Silex\\Provider\\DoctrineServiceProvider(), array(\n    'db.options' => array(\n        'driver'    => 'pdo_mysql',\n        'host'      => $Campsite['db']['host'],\n        'dbname'    => $Campsite['db']['name'],\n        'user'      => $Campsite['db']['user'],\n        'password'  => $Campsite['db']['pass'],\n        'port'      => $Campsite['db']['port'],\n        'charset'   => 'utf8',\n    )\n));\n\ntry {\n    $app['db']->query('ALTER TABLE `Plugins` DROP PRIMARY KEY');\n} catch (\\Exception $e) {\n    if ($app['db']->errorCode() !== '42000') {\n        $upgradeErrors[] = $e->getMessage();\n        $logger->addError($e->getMessage());\n    }\n}\n\ntry {\n    $app['db']->query('ALTER TABLE `Plugins` ADD `Id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST, ADD `Description` TEXT NOT NULL');\n} catch (\\Exception $e) {\n    if ($app['db']->errorCode() !== '42S21' && $app['db']->errorCode() !== '42000') {\n        $upgradeErrors[] = $e->getMessage();\n        $logger->addError($e->getMessage());\n    }\n}\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.09.24/tables.sql",
    "content": "system php ./plugins.php"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.09.25/tables.sql",
    "content": "ALTER TABLE `audit_event` CHANGE `resource_id` `resource_id` VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL;\nCREATE TABLE IF NOT EXISTS `editorial_comments` (\n  `id` int(11) NOT NULL AUTO_INCREMENT,\n  `fk_article_number` int(11) NOT NULL,\n  `fk_language_id` int(11) NOT NULL,\n  `comment` text NOT NULL,\n  `resolved` int(1) NOT NULL DEFAULT '0',\n  `fk_parent_id` int(11) DEFAULT NULL,\n  `user_id` int(11) NOT NULL,\n  `created_at` datetime NOT NULL,\n  `is_active` int(1) NOT NULL DEFAULT '1',\n  PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1;\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.10.14/htaccess.php",
    "content": "<?php\n\n$newscoopDir = realpath(dirname(__FILE__).'/../../../../../../').'/';\n\nrequire_once $newscoopDir.'vendor/autoload.php';\n\nuse Newscoop\\Installer\\Services\\FinishService;\n\n$upgradeErrors =array();\n$finishService = new FinishService();\n$result = $finishService->setupHtaccess();\nif (!empty($result)) {\n    $msg = implode(\" \", $result) . \" Most likely it's caused by wrong permissions. Make a backup of .htaccess manually.\\nThen copy \" . $newscoopDir .\"htaccess.dist to \" . $newscoopDir . \".htaccess\";\n    $logger->addError($msg);\n    $upgradeErrors[] = $msg;\n}\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.10.14/tables.sql",
    "content": "system php ./htaccess.php\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.10.16/data-required.sql",
    "content": "UPDATE `Languages` SET Code=\"sh\" WHERE Code=\"sr@latin\";"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2014.12.01/tables.sql",
    "content": "ALTER TABLE `package_item` CHANGE `caption` `caption` text COLLATE 'utf8_general_ci' NULL AFTER `offset`;\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2015.01.21/tables.sql",
    "content": "ALTER TABLE `Images` DROP INDEX `Description`;\nALTER TABLE `Images` CHANGE `Description` `Description` text COLLATE 'utf8_general_ci' NULL;\nALTER TABLE `Images` ADD INDEX `Description` (`Description`(100));\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.3.x/2015.03.23/data-required.sql",
    "content": "DELETE FROM `acl_rule` WHERE resource = 'ingest';\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2014.11.05/tables.sql",
    "content": "ALTER TABLE Publications DROP INDEX Alias, ADD INDEX IDX_2A49E10CAB83D3A4 (IdDefaultAlias);\nDROP INDEX Name ON Publications;\nALTER TABLE Publications \nADD meta_title VARCHAR(255) DEFAULT NULL,\nADD meta_keywords VARCHAR(255) DEFAULT NULL,\nADD meta_description VARCHAR(255) DEFAULT NULL,\nDROP TimeUnit, DROP UnitCost,\nDROP UnitCostAllLang, DROP Currency,\nDROP TrialTime, DROP PaidTime,\nCHANGE Id Id INT AUTO_INCREMENT NOT NULL,\nCHANGE Name Name VARCHAR(255) NOT NULL,\nCHANGE IdDefaultLanguage IdDefaultLanguage int(10),\nCHANGE IdDefaultAlias IdDefaultAlias INT DEFAULT NULL,\nCHANGE IdURLType IdURLType INT DEFAULT NULL,\nCHANGE comments_enabled comments_enabled TINYINT(1) DEFAULT NULL,\nCHANGE comments_article_default_enabled comments_article_default_enabled TINYINT(1) DEFAULT NULL,\nCHANGE comments_subscribers_moderated comments_subscribers_moderated TINYINT(1) DEFAULT NULL,\nCHANGE comments_public_moderated comments_public_moderated TINYINT(1) DEFAULT NULL,\nCHANGE comments_public_enabled comments_public_enabled VARCHAR(255) DEFAULT NULL,\nCHANGE comments_captcha_enabled comments_captcha_enabled TINYINT(1) DEFAULT NULL,\nCHANGE comments_spam_blocking_enabled comments_spam_blocking_enabled TINYINT(1) DEFAULT NULL,\nCHANGE comments_moderator_to comments_moderator_to VARCHAR(255) DEFAULT NULL,\nCHANGE comments_moderator_from comments_moderator_from VARCHAR(255) DEFAULT NULL,\nCHANGE url_error_tpl_id url_error_tpl_id INT DEFAULT NULL,\nCHANGE seo seo VARCHAR(255) DEFAULT NULL;\nCREATE INDEX IDX_2A49E10CEC194F36 ON Publications (IdDefaultLanguage);\nCREATE INDEX Name ON Publications (Name);"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2014.11.17/data-required.sql",
    "content": "UPDATE `Articles` SET `LockUser` = NULL, `LockTime`= NULL;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2014.11.17/tables.sql",
    "content": "ALTER TABLE `Articles` CHANGE `LockUser` `LockUser` INT(10) UNSIGNED NULL DEFAULT NULL;\nALTER TABLE `Articles` CHANGE `LockTime` `LockTime` DATETIME NULL DEFAULT NULL;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2014.11.22/tables.sql",
    "content": "ALTER TABLE Articles ADD issue_id INT DEFAULT NULL, ADD section_id INT DEFAULT NULL;\nUPDATE `Articles` AS a LEFT JOIN Issues AS i ON a.`NrIssue`= i.Number  SET `issue_id`= i.id;\nUPDATE `Articles` AS a LEFT JOIN Sections AS s ON a.`NrSection` = s.Number SET `section_id` = s.id;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2014.12.02/tables.sql",
    "content": "DROP TABLE IF EXISTS `topic_translations`;\nDROP TABLE IF EXISTS `main_topics`;\nCREATE TABLE `main_topics` (\n  `id` int(11) NOT NULL AUTO_INCREMENT,\n  `parent_id` int(11) DEFAULT NULL,\n  `title` varchar(64) COLLATE utf8_unicode_ci NOT NULL,\n  `lft` int(11) NOT NULL,\n  `rgt` int(11) NOT NULL,\n  `root` int(11) DEFAULT NULL,\n  `lvl` int(11) NOT NULL,\n  `description` longtext COLLATE utf8_unicode_ci,\n  `created` datetime NOT NULL,\n  `updated` datetime NOT NULL,\n  `topicOrder` int(11) DEFAULT NULL,\n  PRIMARY KEY (`id`),\n  KEY `IDX_EEAFE2F727ACA70` (`parent_id`),\n  CONSTRAINT `FK_EEAFE2F727ACA70` FOREIGN KEY (`parent_id`) REFERENCES `main_topics` (`id`) ON DELETE SET NULL\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1;\nCREATE TABLE `topic_translations` (\n  `id` int(11) NOT NULL AUTO_INCREMENT,\n  `object_id` int(11) DEFAULT NULL,\n  `locale` varchar(8) COLLATE utf8_unicode_ci NOT NULL,\n  `field` varchar(32) COLLATE utf8_unicode_ci NOT NULL,\n  `content` longtext COLLATE utf8_unicode_ci,\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `lookup_unique_idx` (`locale`,`object_id`,`field`),\n  KEY `IDX_98B25D13232D562B` (`object_id`),\n  CONSTRAINT `FK_98B25D13232D562B` FOREIGN KEY (`object_id`) REFERENCES `main_topics` (`id`) ON DELETE CASCADE\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2014.12.17/tables.sql",
    "content": "ALTER TABLE context_articles ADD `order_number` INT NOT NULL;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.02.12/tables.sql",
    "content": "ALTER TABLE `user_topic` DROP `topic_language`;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.02.19/tables.sql",
    "content": "ALTER TABLE `Articles` CHANGE `Keywords` `Keywords` VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '';\nALTER TABLE playlist_article ADD `order_number` INT NOT NULL;\nALTER TABLE `playlist` ADD `max_items` INT NULL DEFAULT NULL ;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.02.24/add_client.php",
    "content": "<?php\n\n$newscoopDir = realpath(dirname(__FILE__).'/../../../../../../');\n\nrequire_once $newscoopDir.'/vendor/autoload.php';\nrequire $newscoopDir.'/conf/database_conf.php';\n\nuse Monolog\\Logger;\nuse Newscoop\\Installer\\Services;\nuse Newscoop\\NewscoopBundle\\Services\\SystemPreferencesService;\nuse Dflydev\\Silex\\Provider\\DoctrineOrm\\DoctrineOrmServiceProvider;\nuse Newscoop\\GimmeBundle\\Entity\\Client;\nuse FOS\\OAuthServerBundle\\Util\\Random;\n\n$upgradeErrors = array();\n$app = new Silex\\Application();\n$app->register(new Silex\\Provider\\MonologServiceProvider(), array(\n    'monolog.logfile' => $newscoopDir.'/log/upgrade.log',\n    'monolog.level' => Logger::NOTICE,\n    'monolog.name' => 'upgrade',\n));\n\n$app->register(new Silex\\Provider\\DoctrineServiceProvider(), array(\n    'db.options' => array(\n        'driver'    => 'pdo_mysql',\n        'host'      => $Campsite['db']['host'],\n        'dbname'    => $Campsite['db']['name'],\n        'user'      => $Campsite['db']['user'],\n        'password'  => $Campsite['db']['pass'],\n        'port'      => $Campsite['db']['port'],\n        'charset'   => 'utf8',\n    ),\n));\n\n$app->register(new DoctrineOrmServiceProvider(), array(\n    \"orm.proxies_dir\" => $newscoopDir.\"/library/Proxy\",\n    \"orm.auto_generate_proxies\" => true,\n    \"orm.proxies_namespace\" => \"Proxy\",\n    \"orm.em.options\" => array(\n        \"mappings\" => array(\n            array(\n                \"type\" => \"annotation\",\n                \"namespace\" => \"Newscoop\\Entity\",\n                \"path\" => $newscoopDir.\"/library/Newscoop/Entity\",\n                \"use_simple_annotation_reader\" => false,\n                ),\n            array(\n                \"type\" => \"annotation\",\n                \"namespace\" => \"Newscoop\\NewscoopBundle\\Entity\",\n                \"path\" => $newscoopDir.\"/src/Newscoop/NewscoopBundle/Entity\",\n                \"use_simple_annotation_reader\" => false,\n                ),\n            array(\n                \"type\" => \"annotation\",\n                \"namespace\" => \"Newscoop\\GimmeBundle\\Entity\",\n                \"path\" => $newscoopDir.\"/src/Newscoop/GimmeBundle/Entity\",\n                \"use_simple_annotation_reader\" => false,\n                ),\n            ),\n        ),\n    ));\n\n$app['upgrade_service'] = $app->share(function () use ($app) {\n    return new Services\\UpgradeService($app['db'], $app['monolog']);\n});\n\n$app['preferences'] = $app->share(function () use ($app) {\n    return new SystemPreferencesService($app['orm.em']);\n});\n\n$defaultClientName = 'newscoop_'.$app['preferences']->SiteSecretKey;\n$client = $app['orm.em']->getRepository('Newscoop\\GimmeBundle\\Entity\\Client')->findOneByName($defaultClientName);\nif ($client) {\n    return;\n}\n\n$logger = $app['monolog'];\n\ntry {\n    $alias = $app['upgrade_service']->getDefaultAlias();\n    if (!$alias) {\n        $msg = \"Could not find default alias! Aborting...\";\n        $upgradeErrors[] = $msg;\n        $logger->addError($msg);\n    } else {\n        $publication = $app['orm.em']->getRepository('\\Newscoop\\Entity\\Aliases')\n            ->findOneByName($alias)\n            ->getPublication();\n\n        $conn = $app['orm.em']->getConnection();\n        $stmt = $conn->prepare('INSERT INTO OAuthClient(random_id, redirect_uris, secret, allowed_grant_types, name, IdPublication, trusted)\n        \tVALUES (?, ?, ?, ?, ?, ?, ?)');\n        $stmt->bindValue(1, Random::generateToken());\n        $stmt->bindValue(2, serialize(array('http://'.$alias.'/oauth/authentication/result')));\n        $stmt->bindValue(3, Random::generateToken());\n        $stmt->bindValue(4, serialize(array('token', 'authorization_code', 'client_credentials', 'password')));\n        $stmt->bindValue(5, $defaultClientName);\n        $stmt->bindValue(6, $publication->getId());\n        $stmt->bindValue(7, true);\n        $stmt->execute();\n    }\n} catch (\\Exception $e) {\n    $msg = $e->getMessage();\n    $upgradeErrors[] = $msg;\n    $logger->addError($msg);\n    array_splice($upgradeErrors, 0, 0, array($msg));\n}\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.02.24/tables.sql",
    "content": "system php ./add_client.php"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.03.02/tables.sql",
    "content": "ALTER TABLE playlist ADD modification_time DATETIME DEFAULT NULL;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.03.11/data-required.sql",
    "content": "ALTER TABLE `ArticleTypeMetadata` ADD COLUMN `show_in_editor` int(1) NOT NULL DEFAULT '1';"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.03.11/tables.sql",
    "content": "system php ./topics.php\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.03.11/topics.php",
    "content": "<?php\n\n$newscoopDir = realpath(dirname(__FILE__).'/../../../../../../').'/';\n$upgradeErrors = array();\n\nrequire $newscoopDir.'conf/database_conf.php';\n$loader = require $newscoopDir.'/vendor/autoload.php';\n\\Doctrine\\Common\\Annotations\\AnnotationRegistry::registerLoader(array($loader, 'loadClass'));\n\nuse Monolog\\Logger;\nuse Newscoop\\NewscoopBundle\\Entity\\Topic;\nuse Newscoop\\NewscoopBundle\\Entity\\TopicTranslation;\nuse Dflydev\\Silex\\Provider\\DoctrineOrm\\DoctrineOrmServiceProvider;\nuse Newscoop\\Exception\\ResourcesConflictException;\nuse Doctrine\\ORM\\EntityNotFoundException;\n\n$app = new Silex\\Application();\n$app->register(new Silex\\Provider\\MonologServiceProvider(), array(\n    'monolog.logfile' => $newscoopDir.'log/upgrade.log',\n    'monolog.level' => Logger::NOTICE,\n    'monolog.name' => 'upgrade',\n));\n\n$logger = $app['monolog'];\n$app['debug'] = true;\n$app->register(new Silex\\Provider\\DoctrineServiceProvider(), array(\n    'db.options' => array(\n        'driver' => 'pdo_mysql',\n        'host' => $Campsite['db']['host'],\n        'dbname' => $Campsite['db']['name'],\n        'user' => $Campsite['db']['user'],\n        'password' => $Campsite['db']['pass'],\n        'port' => $Campsite['db']['port'],\n        'charset' => 'utf8',\n        ),\n    ));\n\n$app->register(new DoctrineOrmServiceProvider(), array(\n    'orm.proxies_dir' => $newscoopDir.'/library/Proxy',\n    'orm.auto_generate_proxies' => true,\n    'orm.proxies_namespace' => 'Proxy',\n    'orm.em.options' => array(\n        'mappings' => array(\n            array(\n                'type' => 'annotation',\n                'namespace' => \"Newscoop\\Entity\",\n                'path' => $newscoopDir.'library/Newscoop/Entity',\n                'use_simple_annotation_reader' => false,\n                ),\n            array(\n                'type' => 'annotation',\n                'namespace' => \"Newscoop\\NewscoopBundle\\Entity\",\n                'path' => $newscoopDir.'src/Newscoop/NewscoopBundle/Entity',\n                'use_simple_annotation_reader' => false,\n                ),\n            ),\n        ),\n    ));\n\n$app['topics_service'] = $app->share(function () use ($app) {\n    return new Newscoop\\NewscoopBundle\\Services\\TopicService($app['orm.em'], $app['dispatcher']);\n});\n\ntry {\n    $app['db']->query('ALTER TABLE `topic_translations` ADD `isDefault` INT( 1 ) NULL DEFAULT NULL');\n} catch (\\Exception $e) {\n    if ($app['db']->errorCode() !== '42S21') {\n        $logger->addWarning($e->getMessage());\n    }\n}\n\ntry {\n    // add TreeListener and TranslatableListener to EventManager,\n    // so the left, right, level and translations can be saved properly\n    $treeListener = new \\Gedmo\\Tree\\TreeListener();\n    $translatableListener = new \\Gedmo\\Translatable\\TranslatableListener();\n    $app['orm.em']->getEventManager()->addEventSubscriber($treeListener);\n    $app['orm.em']->getEventManager()->addEventSubscriber($translatableListener);\n\n    try {\n        $tablesCount = 'SELECT COUNT(*) AS count FROM Topics';\n        $app['db']->fetchAll($tablesCount);\n    } catch (\\Exception $e) {\n        return;\n    }\n\n    $sqlTopics = 'SELECT node.id, (COUNT( parent.id) -1) AS depth\n    FROM Topics AS node, Topics AS parent\n    WHERE node.node_left\n    BETWEEN parent.node_left\n    AND parent.node_right\n    GROUP BY node.id\n    ORDER BY node.node_left';\n\n    $rows = $app['db']->fetchAll($sqlTopics);\n\n    $tree = array();\n    $startDepth = 0;\n    $currentPath = array();\n    foreach ($rows as $row) {\n        $topicId = $row['id'];\n        $depth = $row['depth'] - (int) $startDepth;\n        if (is_null($startDepth)) {\n            $startDepth = $depth;\n            $depth = 0;\n            $currentPath[] = $topicId;\n        } elseif ($depth > count($currentPath)) {\n            $currentPath[] = $topicId;\n        } elseif ($depth == 0) {\n            $currentPath = array($topicId);\n        } else {\n            while ($depth < count($currentPath)) {\n                array_pop($currentPath);\n            }\n            $currentPath[] = $topicId;\n        }\n\n        $tree[] = $currentPath;\n    }\n\n    $topicSql = 'SELECT `fk_topic_id` as id, `fk_language_id` as languageId, `name` FROM `TopicNames` WHERE `fk_topic_id` = ?';\n\n    foreach ($tree as $key => $row) {\n        // if root\n        if (count($row) === 1) {\n            $topicDetails = array();\n            $topicDetails = $app['db']->fetchAll($topicSql, array($row[0]));\n            // if the tree is broken and have some left, right nodes only without names, skip it\n            if (empty($topicDetails)) {\n                continue;\n            }\n\n            try {\n                //create root Topic object\n                $topic = new Topic();\n                $topic->setId($topicDetails[0]['id']);\n                $topic->setTitle($topicDetails[0]['name']);\n                $language = $app['orm.em']->getReference(\"Newscoop\\Entity\\Language\", $topicDetails[0]['languageId']);\n                $locale = $language->getCode();\n\n                $app['topics_service']->saveNewTopic($topic, $locale, true);\n                // loop for each translations and add not added translations\n                // if topic has more translations\n                if (count($topicDetails) > 1) {\n                    unset($topicDetails[0]);\n                    foreach ($topicDetails as $key => $translation) {\n                        $locale = $app['orm.em']->getReference(\"Newscoop\\Entity\\Language\", $translation['languageId'])->getCode();\n                        $topicTranslation = new TopicTranslation($locale, 'title', $translation['name']);\n                        $topic->addTranslation($topicTranslation);\n                    }\n\n                    $app['orm.em']->flush();\n                }\n\n                continue;\n            } catch (ResourcesConflictException $e) {\n                //topic already exists or language can not be found\n                continue;\n            } catch (EntityNotFoundException $e) {\n                //Language can not be found\n                continue;\n            }\n        }\n\n            // if child\n        if (count($row) > 1) {\n            try {\n                $topicToInsert = end($row);\n                $topicToInsertDetails = $app['db']->fetchAll($topicSql, array($topicToInsert));\n                $parentTopic = prev($row);\n\n                $parentTopicDetails = $app['db']->fetchAll($topicSql, array($parentTopic));\n\n                if (empty($parentTopicDetails) || empty($topicToInsertDetails)) {\n                    continue;\n                }\n\n                $params = array(\n                    'parent' => $parentTopic,\n                    'last' => true,\n                );\n\n                try {\n                    $locale = $app['orm.em']->getReference(\"Newscoop\\Entity\\Language\", $topicToInsertDetails[0]['languageId'])->getCode();\n                    $topic = new Topic();\n                    $topic->setId($topicToInsertDetails[0]['id']);\n                    $topic->setTitle($topicToInsertDetails[0]['name']);\n                    $topic->setTranslatableLocale($locale);\n\n                    $app['topics_service']->saveTopicPosition($topic, $params);\n                } catch (\\Exception $e) {\n                    //topic already exists or language can not be found\n                    continue;\n                }\n\n                if (count($topicToInsertDetails) > 1) {\n                    unset($topicToInsertDetails[0]);\n                    foreach ($topicToInsertDetails as $key => $translation) {\n                        $locale = $app['orm.em']->getReference(\"Newscoop\\Entity\\Language\", $translation['languageId'])->getCode();\n                        $topicTranslation = new TopicTranslation($locale, 'title', $translation['name']);\n                        $topic->addTranslation($topicTranslation);\n                    }\n\n                    $app['orm.em']->flush();\n                }\n            } catch (EntityNotFoundException $e) {\n                //Language can not be found\n                continue;\n            }\n        }\n    }\n} catch (\\Exception $e) {\n    $msg = $e->getMessage();\n    $logger->addError($msg);\n    $upgradeErrors[] = $msg;\n}\n\nif (count($upgradeErrors) > 0) {\n    $msg = \"Script which converts topics to a new format, failed. \\n\"\n    .\"You can execute this script manually via CLI with root permissions, e.g.: \\n\"\n    .\"sudo php ${newscoopDir}install/Resources/sql/upgrade/4.4.x/2015.03.11/topics.php \\n\"\n    .\"You could also check 'log/upgrade.log' file for more details.\";\n    $logger->addError($msg);\n    array_splice($upgradeErrors, 0, 0, array($msg));\n\n    return;\n}\n\ntry {\n    $connection = $app['orm.em']->getConnection();\n    $stmt = $connection->prepare('DROP TABLE Topics; DROP TABLE TopicNames;');\n    $stmt->execute();\n} catch (\\Exception $e) {\n    $msg = \"Script could not drop old topics tables. \\n\"\n    .\"You can execute SQL command manually in your database: \\n\"\n    .'DROP TABLE Topics; DROP TABLE TopicNames;';\n    $logger->addError($msg);\n}\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.03.12/authors.php",
    "content": "<?php\n\n$newscoopDir = realpath(dirname(__FILE__).'/../../../../../../').'/';\n\nrequire_once $newscoopDir.'vendor/autoload.php';\nrequire $newscoopDir.'conf/database_conf.php';\n\nuse Monolog\\Logger;\n\n$upgradeErrors = array();\n$app = new Silex\\Application();\n$app->register(new Silex\\Provider\\MonologServiceProvider(), array(\n    'monolog.logfile' => $newscoopDir.'log/upgrade.log',\n    'monolog.level' => Logger::NOTICE,\n    'monolog.name' => 'upgrade',\n));\n\n$logger = $app['monolog'];\n\n$app->register(new Silex\\Provider\\DoctrineServiceProvider(), array(\n    'db.options' => array(\n        'driver'    => 'pdo_mysql',\n        'host'      => $Campsite['db']['host'],\n        'dbname'    => $Campsite['db']['name'],\n        'user'      => $Campsite['db']['user'],\n        'password'  => $Campsite['db']['pass'],\n        'port'      => $Campsite['db']['port'],\n        'charset'   => 'utf8',\n    ),\n));\n\ntry {\n    $app['db']->query('ALTER TABLE `Authors` DROP user_id');\n} catch (\\Exception $e) {\n    if ($app['db']->errorCode() !== '42000') {\n        $upgradeErrors[] = $e->getMessage();\n        $logger->addError($e->getMessage());\n    }\n}\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.03.12/tables.sql",
    "content": "system php ./authors.php\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.03.13/tables.sql",
    "content": "CREATE TABLE IF NOT EXISTS `editorial_comments` (\n  `id` int(11) NOT NULL AUTO_INCREMENT,\n  `fk_article_number` int(11) NOT NULL,\n  `fk_language_id` int(11) NOT NULL,\n  `comment` text NOT NULL,\n  `resolved` int(1) NOT NULL DEFAULT '0',\n  `fk_parent_id` int(11) DEFAULT NULL,\n  `user_id` int(11) NOT NULL,\n  `created_at` datetime NOT NULL,\n  `is_active` int(1) NOT NULL DEFAULT '1',\n  PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1;\nALTER TABLE  `editorial_comments` CHANGE  `comment`  `comment` TEXT CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.03.14/delete.php",
    "content": "<?php\n\n$newscoopDir = realpath(dirname(__FILE__).'/../../../../../../').'/';\n$currentDir = dirname(__FILE__).'/';\n$diffFile = 'diff.txt';\n$upgradeErrors = array();\n\nrequire_once $newscoopDir.'vendor/autoload.php';\n\nuse Symfony\\Component\\Finder\\Finder;\nuse Symfony\\Component\\Filesystem\\Filesystem;\nuse Symfony\\Component\\Filesystem\\Exception\\IOException;\nuse Monolog\\Logger;\n\n$app = new Silex\\Application();\n$app->register(new Silex\\Provider\\MonologServiceProvider(), array(\n    'monolog.logfile' => $newscoopDir.'log/upgrade.log',\n    'monolog.level' => Logger::NOTICE,\n    'monolog.name' => 'upgrade',\n));\n\n$logger = $app['monolog'];\n\n// Remove files\n$finder = new Finder();\n$filesystem = new Filesystem();\n$finder->files()->in($currentDir)->name($diffFile);\n\n$contents = null;\nforeach ($finder as $file) {\n    $contents = $file->getContents();\n}\n\n$filesToBeDeleted =  array_filter(preg_split('/\\r\\n|\\n|\\r/', $contents));\n$folderToBeChecked = array();\nif (count($filesToBeDeleted) > 0) {\n    foreach ($filesToBeDeleted as $file) {\n        if (strpos($file, 'newscoop/') === false) {\n            continue;\n        }\n\n        $fullPath = $newscoopDir.substr($file, 9);\n\n        if (is_file($fullPath) && is_readable($fullPath)) {\n            try {\n                $filesystem->remove(array($fullPath));\n            } catch (IOException $e) {\n                $msg = 'Could not remove file '.str_replace($newscoopDir, '', $fullPath).', please remove it manually.';\n                $logger->addError($msg);\n                $upgradeErrors[] = $msg;\n            } catch (\\Exception $e) {\n                $msg = 'Could not remove file '.str_replace($newscoopDir, '', $fullPath).', please remove it manually.';\n                $logger->addError($msg);\n                $upgradeErrors[] = $msg;\n            }\n        }\n\n        if (strpos($file, '/') !== false) {\n            $folderToBeChecked[] = dirname($fullPath);\n        }\n    }\n}\n\n$folderToBeChecked = array_unique($folderToBeChecked);\narsort($folderToBeChecked);\n\nforeach ($folderToBeChecked as $folder) {\n    if (is_dir($folder)) {\n        $finder = new Finder();\n        $finder->in($folder);\n\n        if (iterator_count($finder->files()) == 0) {\n            try {\n                // Remove subdirectories\n                foreach ($finder->directories()->sortByName() as $subFolder) {\n                    if (is_dir($subFolder)) {\n                        $filesystem->remove(array($subFolder));\n                    }\n                }\n            } catch (\\Exception $e) {\n                $msg = 'Could not remove or check subdirectories of '.str_replace($newscoopDir, '', $fullPath).'. Please see newscoop/install/Resources/sql/upgrade/4.4.x/2015.03.14/diff.txt and remove the empty directories manually.';\n                $logger->addError($msg);\n                $upgradeErrors[] = $msg;\n            }\n\n            try {\n                // Remove parent directory\n                $filesystem->remove(array($folder));\n            } catch (\\Exception $e) {\n                $msg = 'Could not remove folder '.str_replace($newscoopDir, '', $folder).', please remove it manually.';\n                $logger->addError($msg);\n                $upgradeErrors[] = $msg;\n            }\n        }\n    }\n}\n\nif (count($upgradeErrors) > 0) {\n    $msg = \"Some files or directories could not automatically be removed. This is \"\n        .\"most likely caused by permissions. \\n\"\n        .\"You can either remove the files manually (see ${newscoopDir}install/Resources/sql/upgrade/4.4.x/2015.03.14/diff.txt) \"\n        .\"or execute this file with root permissions, e.g.: \\n\"\n        .\"sudo php ${newscoopDir}install/Resources/sql/upgrade/4.4.x/2015.03.14/delete.php\";\n    $logger->addError($msg);\n    array_splice($upgradeErrors, 0, 0, array($msg));\n}\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.03.14/diff.txt",
    "content": "newscoop/COPYING.txt\nnewscoop/ChangeLog.txt\nnewscoop/admin-files/articles/images/do_add.php\nnewscoop/admin-files/articles/topics/do_del.php\nnewscoop/admin-files/articles/topics/do_edit.php\nnewscoop/admin-files/articles/topics/popup.php\nnewscoop/admin-files/articles/topics/topic_common.php\nnewscoop/admin-files/media-archive/do_add.php\nnewscoop/admin-files/pub/add.php\nnewscoop/admin-files/pub/countryadd.php\nnewscoop/admin-files/pub/deftime.php\nnewscoop/admin-files/pub/do_add.php\nnewscoop/admin-files/pub/do_countryadd.php\nnewscoop/admin-files/pub/do_del.php\nnewscoop/admin-files/pub/do_deldeftime.php\nnewscoop/admin-files/pub/do_edit.php\nnewscoop/admin-files/pub/do_editdeftime.php\nnewscoop/admin-files/pub/edit.php\nnewscoop/admin-files/pub/editdeftime.php\nnewscoop/admin-files/pub/index.php\nnewscoop/admin-files/pub/pub_form.php\nnewscoop/admin-files/topics/do_add.php\nnewscoop/admin-files/topics/do_del.php\nnewscoop/admin-files/topics/do_edit.php\nnewscoop/admin-files/topics/do_order.php\nnewscoop/admin-files/topics/index.php\nnewscoop/admin-files/topics/topics_common.php\nnewscoop/application/modules/admin/controllers/PlaylistController.php\nnewscoop/application/modules/admin/controllers/SubscriberController.php\nnewscoop/application/modules/admin/controllers/SubscriptionController.php\nnewscoop/application/modules/admin/controllers/SubscriptionIpController.php\nnewscoop/application/modules/admin/controllers/SubscriptionIpRestController.php\nnewscoop/application/modules/admin/controllers/SubscriptionRestController.php\nnewscoop/application/modules/admin/controllers/SubscriptionSectionController.php\nnewscoop/application/modules/admin/controllers/SubscriptionSectionRestController.php\nnewscoop/application/modules/admin/forms/Subscriber.php\nnewscoop/application/modules/admin/forms/Subscription.php\nnewscoop/application/modules/admin/forms/Subscription/SectionAddForm.php\nnewscoop/application/modules/admin/forms/Subscription/SectionEditForm.php\nnewscoop/application/modules/admin/views/helpers/SubscriptionIpJson.php\nnewscoop/application/modules/admin/views/helpers/SubscriptionJson.php\nnewscoop/application/modules/admin/views/helpers/SubscriptionSectionJson.php\nnewscoop/application/modules/admin/views/scripts/playlist/article.phtml\nnewscoop/application/modules/admin/views/scripts/playlist/index.phtml\nnewscoop/application/modules/admin/views/scripts/playlist/popup.phtml\nnewscoop/application/modules/admin/views/scripts/subscriber/add.phtml\nnewscoop/application/modules/admin/views/scripts/subscriber/edit.phtml\nnewscoop/application/modules/admin/views/scripts/subscriber/table.phtml\nnewscoop/application/modules/admin/views/scripts/subscription-ip/add.phtml\nnewscoop/application/modules/admin/views/scripts/subscription-ip/index.phtml\nnewscoop/application/modules/admin/views/scripts/subscription-section/add.phtml\nnewscoop/application/modules/admin/views/scripts/subscription-section/edit-all.phtml\nnewscoop/application/modules/admin/views/scripts/subscription-section/edit.phtml\nnewscoop/application/modules/admin/views/scripts/subscription-section/index.phtml\nnewscoop/application/modules/admin/views/scripts/subscription/add.phtml\nnewscoop/application/modules/admin/views/scripts/subscription/edit.phtml\nnewscoop/application/modules/admin/views/scripts/subscription/index.phtml\nnewscoop/classes/FormProcessor.php\nnewscoop/classes/Topic.php\nnewscoop/classes/TopicName.php\nnewscoop/include/HTML/Common.php\nnewscoop/include/HTML/QuickForm.php\nnewscoop/include/HTML/QuickForm/Renderer.php\nnewscoop/include/HTML/QuickForm/Renderer/Array.php\nnewscoop/include/HTML/QuickForm/Renderer/ArraySmarty.php\nnewscoop/include/HTML/QuickForm/Renderer/Default.php\nnewscoop/include/HTML/QuickForm/Renderer/ITDynamic.php\nnewscoop/include/HTML/QuickForm/Renderer/ITStatic.php\nnewscoop/include/HTML/QuickForm/Renderer/Object.php\nnewscoop/include/HTML/QuickForm/Renderer/ObjectFlexy.php\nnewscoop/include/HTML/QuickForm/Renderer/QuickHtml.php\nnewscoop/include/HTML/QuickForm/Rule.php\nnewscoop/include/HTML/QuickForm/Rule/Callback.php\nnewscoop/include/HTML/QuickForm/Rule/Compare.php\nnewscoop/include/HTML/QuickForm/Rule/Email.php\nnewscoop/include/HTML/QuickForm/Rule/Range.php\nnewscoop/include/HTML/QuickForm/Rule/Regex.php\nnewscoop/include/HTML/QuickForm/Rule/Required.php\nnewscoop/include/HTML/QuickForm/RuleRegistry.php\nnewscoop/include/HTML/QuickForm/advcheckbox.php\nnewscoop/include/HTML/QuickForm/autocomplete.php\nnewscoop/include/HTML/QuickForm/button.php\nnewscoop/include/HTML/QuickForm/checkbox.php\nnewscoop/include/HTML/QuickForm/date.php\nnewscoop/include/HTML/QuickForm/element.php\nnewscoop/include/HTML/QuickForm/file.php\nnewscoop/include/HTML/QuickForm/group.php\nnewscoop/include/HTML/QuickForm/header.php\nnewscoop/include/HTML/QuickForm/hidden.php\nnewscoop/include/HTML/QuickForm/hiddenselect.php\nnewscoop/include/HTML/QuickForm/hierselect.php\nnewscoop/include/HTML/QuickForm/html.php\nnewscoop/include/HTML/QuickForm/image.php\nnewscoop/include/HTML/QuickForm/input.php\nnewscoop/include/HTML/QuickForm/link.php\nnewscoop/include/HTML/QuickForm/password.php\nnewscoop/include/HTML/QuickForm/radio.php\nnewscoop/include/HTML/QuickForm/reset.php\nnewscoop/include/HTML/QuickForm/select.php\nnewscoop/include/HTML/QuickForm/static.php\nnewscoop/include/HTML/QuickForm/submit.php\nnewscoop/include/HTML/QuickForm/text.php\nnewscoop/include/HTML/QuickForm/textarea.php\nnewscoop/include/HTML/QuickForm/xbutton.php\nnewscoop/include/smarty/campsite_plugins/block.form_search_solr.php\nnewscoop/include/smarty/campsite_plugins/block.list_search_results_solr.php\nnewscoop/include/smarty/campsite_plugins/function.build_solr_fq.php\nnewscoop/install/Resources/sql/campsite_demo_tables.sql\nnewscoop/library/Nette/Image.php\nnewscoop/library/Nette/Object.php\nnewscoop/library/Nette/ObjectMixin.php\nnewscoop/library/Nette/Reflection/Annotation.php\nnewscoop/library/Nette/Reflection/AnnotationsParser.php\nnewscoop/library/Nette/Reflection/ClassType.php\nnewscoop/library/Nette/Reflection/Extension.php\nnewscoop/library/Nette/Reflection/GlobalFunction.php\nnewscoop/library/Nette/Reflection/IAnnotation.php\nnewscoop/library/Nette/Reflection/Method.php\nnewscoop/library/Nette/Reflection/Parameter.php\nnewscoop/library/Nette/Reflection/Property.php\nnewscoop/library/Nette/Utils/MimeTypeDetector.php\nnewscoop/library/Nette/exceptions.php\nnewscoop/library/Nette/license.txt\nnewscoop/library/Nette/version.txt\nnewscoop/library/Newscoop/Entity/Repository/TopicRepository.php\nnewscoop/library/Newscoop/Entity/Snippet/Template.php\nnewscoop/library/Newscoop/Entity/Topic.php\nnewscoop/library/Newscoop/Entity/TopicNodes.php\nnewscoop/library/Newscoop/Http/Client.php\nnewscoop/library/Newscoop/Http/ClientFactory.php\nnewscoop/library/Newscoop/Search/QueryInterface.php\nnewscoop/library/Newscoop/Smarty/SmartyEngine.php\nnewscoop/library/Newscoop/Topic/TopicService.php\nnewscoop/phpunit.xml\nnewscoop/src/Newscoop/GimmeBundle/EventListener/OverrideMethodListener.php\nnewscoop/src/Newscoop/GimmeBundle/Tests/ContainerAwareUnitTestCase.php\nnewscoop/src/Newscoop/GimmeBundle/Tests/Newscoop/Gimme/PaginationTest.php\nnewscoop/src/Newscoop/GimmeBundle/Tests/Newscoop/Gimme/PaginatorServiceTest.php\nnewscoop/src/Newscoop/GimmeBundle/Tests/Serializer/Article/AuthorHandlerTest.php\nnewscoop/src/Newscoop/GimmeBundle/Tests/Serializer/Article/CommentsLinkHandlerTest.php\nnewscoop/src/Newscoop/NewscoopBundle/EventListener/CommentListener.php\nnewscoop/src/Newscoop/NewscoopBundle/Extension/AsseticExtension.php\nnewscoop/src/Newscoop/NewscoopBundle/Extension/DynamicAsseticExtension.php\nnewscoop/src/Newscoop/NewscoopBundle/Extension/RoutingExtension.php\nnewscoop/src/Newscoop/NewscoopBundle/Extension/StaticAsseticExtension.php\nnewscoop/template_engine/metaclasses/MetaActionEdit_Subscription.php\nnewscoop/tests/AdminControllerTestCase.php\nnewscoop/tests/AdoDbDoctrineAdapter.php\nnewscoop/tests/RepositoryTestCase.php\nnewscoop/tests/TestCase.php\nnewscoop/tests/application/bootstrap.php\nnewscoop/tests/application/controllers/CommentAcceptanceControllerTest.php\nnewscoop/tests/application/controllers/CommentsControllerTest.php\nnewscoop/tests/application/controllers/ErrorControllerTest.php\nnewscoop/tests/application/controllers/LogsControllerTest.php\nnewscoop/tests/application/controllers/UserGroupsControllerTest.php\nnewscoop/tests/application/modules/admin/controllers/FileManagerControllerTest.php\nnewscoop/tests/application/modules/admin/controllers/SubscriptionControllerTest.php\nnewscoop/tests/application/modules/admin/controllers/ThemesControllerTest.php\nnewscoop/tests/fixtures/packageItem.xml\nnewscoop/tests/fixtures/picture.jpg\nnewscoop/tests/fixtures/pictureNewsItem.xml\nnewscoop/tests/fixtures/picture_landscape.jpg\nnewscoop/tests/fixtures/picture_mona_lisa.jpg\nnewscoop/tests/fixtures/picture_portrait.jpg\nnewscoop/tests/fixtures/tag:examle.com,0000:newsml_TRE7B30AO.xml\nnewscoop/tests/fixtures/tag:reuters.com,0000:newsml_TRE7BB014.xml\nnewscoop/tests/fixtures/themes/publication_1/theme_2/theme.xml\nnewscoop/tests/fixtures/themes/publication_1/theme_3/theme.xml\nnewscoop/tests/fixtures/themes/publication_2/theme_1/theme.xml\nnewscoop/tests/fixtures/updatedPackageItem.xml\nnewscoop/tests/fixtures/updatedTextNewsItem.xml\nnewscoop/tests/ingest/20110825222727131194158159039_phd9030.xml\nnewscoop/tests/ingest/20110825222727235.jpg\nnewscoop/tests/ingest/20110827160012860172019048163_brd054.xml\nnewscoop/tests/ingest/20110827160247870172019048163_brd055.xml\nnewscoop/tests/ingest/20110830161423403194158159039_brz011.xml\nnewscoop/tests/ingest/20110830161622512194158159039_brz011.xml\nnewscoop/tests/ingest/20110831140908090172019060015_rdn207.xml\nnewscoop/tests/ingest/20110831170232442194158159039_brz012.xml\nnewscoop/tests/ingest/20110831181622404194158159039_brz012.xml\nnewscoop/tests/ingest/20110831182107488194158159039_brz012.xml\nnewscoop/tests/ingest/20110831202458399194158159039_brz012.xml\nnewscoop/tests/ingest/newsml1.xml\nnewscoop/tests/ingest/newsml2.xml\nnewscoop/tests/ingest/nitf-3-0.dtd\nnewscoop/tests/ingest/nitf-3-1.dtd\nnewscoop/tests/ingest/test.xml\nnewscoop/tests/ingest/test_updated.xml\nnewscoop/tests/ingest/wochenprogramm_rdn201.xml\nnewscoop/tests/library/Newscoop/Acl/StorageTest.php\nnewscoop/tests/library/Newscoop/DoctrineEventDispatcherProxyTest.php\nnewscoop/tests/library/Newscoop/Entity/ArticleTest.php\nnewscoop/tests/library/Newscoop/Entity/AuditTest.php\nnewscoop/tests/library/Newscoop/Entity/CommentTest.php\nnewscoop/tests/library/Newscoop/Entity/Events/CommunityTickerEventTest.php\nnewscoop/tests/library/Newscoop/Entity/Ingest/Feed/EntryTest.php\nnewscoop/tests/library/Newscoop/Entity/Ingest/FeedTest.php\nnewscoop/tests/library/Newscoop/Entity/Repository/TemplateRepositoryIsUsedTest.php\nnewscoop/tests/library/Newscoop/Entity/Repository/TemplateRepositoryTest.php\nnewscoop/tests/library/Newscoop/Entity/TemplateTest.php\nnewscoop/tests/library/Newscoop/Entity/UserTest.php\nnewscoop/tests/library/Newscoop/Entity/UserTokenTest.php\nnewscoop/tests/library/Newscoop/Image/ArticleImageTest.php\nnewscoop/tests/library/Newscoop/Image/ArticleRenditionCollectionTest.php\nnewscoop/tests/library/Newscoop/Image/ImageSearchServiceTest.php\nnewscoop/tests/library/Newscoop/Image/ImageServiceTest.php\nnewscoop/tests/library/Newscoop/Image/ImageUpdateStorageServiceTest.php\nnewscoop/tests/library/Newscoop/Image/LocalImageTest.php\nnewscoop/tests/library/Newscoop/Image/RenditionServiceTest.php\nnewscoop/tests/library/Newscoop/Image/RenditionTest.php\nnewscoop/tests/library/Newscoop/Ingest/Parser/NewsMlParserTest.php\nnewscoop/tests/library/Newscoop/MailChimp/ListApiTest.php\nnewscoop/tests/library/Newscoop/Package/ItemTest.php\nnewscoop/tests/library/Newscoop/Package/PackageServiceTest.php\nnewscoop/tests/library/Newscoop/Package/PackageTest.php\nnewscoop/tests/library/Newscoop/RandomTest.php\nnewscoop/tests/library/Newscoop/Search/ArticleIndexerTest.php\nnewscoop/tests/library/Newscoop/Search/SolrIndexTest.php\nnewscoop/tests/library/Newscoop/Service/TemplateTest.php\nnewscoop/tests/library/Newscoop/Services/AuditServiceTest.php\nnewscoop/tests/library/Newscoop/Services/Auth/DoctrineAuthServiceTest.php\nnewscoop/tests/library/Newscoop/Services/Auth/SocialAuthServiceTest.php\nnewscoop/tests/library/Newscoop/Services/BlogServiceTest.php\nnewscoop/tests/library/Newscoop/Services/CommunityFeedServiceTest.php\nnewscoop/tests/library/Newscoop/Services/EmailServiceTest.php\nnewscoop/tests/library/Newscoop/Services/Ingest/PublisherServiceTest.php\nnewscoop/tests/library/Newscoop/Services/IngestServiceTest.php\nnewscoop/tests/library/Newscoop/Services/ListUserServiceTest.php\nnewscoop/tests/library/Newscoop/Services/UserSearchServiceTest.php\nnewscoop/tests/library/Newscoop/Services/UserServiceTest.php\nnewscoop/tests/library/Newscoop/Services/UserTokenServiceTest.php\nnewscoop/tests/library/Newscoop/Services/UserTopicServiceTest.php\nnewscoop/tests/library/Newscoop/Storage/ItemTest.php\nnewscoop/tests/library/Newscoop/Storage/StorageServiceTest.php\nnewscoop/tests/library/Newscoop/StorageTest.php\nnewscoop/tests/library/Newscoop/Subscription/IpFacadeTest.php\nnewscoop/tests/library/Newscoop/Subscription/SectionFacadeTest.php\nnewscoop/tests/library/Newscoop/Subscription/SubscriptionFacadeSectionsTest.php\nnewscoop/tests/library/Newscoop/Subscription/SubscriptionFacadeTest.php\nnewscoop/tests/library/Newscoop/VersionTest.php\nnewscoop/tests/library/Newscoop/WebcodeFacadeTest.php\nnewscoop/tests/report/.gitignore"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.03.14/tables.sql",
    "content": "system php ./delete.php\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.03.18/data-required.sql",
    "content": "ALTER TABLE playlist ADD themes VARCHAR(255) DEFAULT NULL;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.03.19/init_order_in_playlists.php",
    "content": "<?php\n\n$newscoopDir = realpath(dirname(__FILE__).'/../../../../../../');\n\nrequire $newscoopDir.'/conf/database_conf.php';\n$loader = require $newscoopDir.'/vendor/autoload.php';\n\\Doctrine\\Common\\Annotations\\AnnotationRegistry::registerLoader(array($loader, 'loadClass'));\n\nuse Monolog\\Logger;\nuse Dflydev\\Silex\\Provider\\DoctrineOrm\\DoctrineOrmServiceProvider;\n\n$upgradeErrors = array();\n$app = new Silex\\Application();\n$app->register(new Silex\\Provider\\MonologServiceProvider(), array(\n    'monolog.logfile' => $newscoopDir.'/log/upgrade.log',\n    'monolog.level' => Logger::NOTICE,\n    'monolog.name' => 'upgrade',\n));\n\n$app->register(new Silex\\Provider\\DoctrineServiceProvider(), array(\n    'db.options' => array(\n        'driver' => 'pdo_mysql',\n        'host' => $Campsite['db']['host'],\n        'dbname' => $Campsite['db']['name'],\n        'user' => $Campsite['db']['user'],\n        'password' => $Campsite['db']['pass'],\n        'port' => $Campsite['db']['port'],\n        'charset' => 'utf8',\n    ),\n));\n\n$app->register(new DoctrineOrmServiceProvider(), array(\n    'orm.proxies_dir' => $newscoopDir.'/library/Proxy',\n    'orm.auto_generate_proxies' => true,\n    'orm.proxies_namespace' => 'Proxy',\n    'orm.em.options' => array(\n        'mappings' => array(\n            array(\n                'type' => 'annotation',\n                'namespace' => \"Newscoop\\Entity\",\n                'path' => $newscoopDir.'/library/Newscoop/Entity',\n                'use_simple_annotation_reader' => false,\n            ),\n            array(\n                'type' => 'annotation',\n                'namespace' => \"Newscoop\\NewscoopBundle\\Entity\",\n                'path' => $newscoopDir.'/src/Newscoop/NewscoopBundle/Entity',\n                'use_simple_annotation_reader' => false,\n            ),\n            array(\n                'type' => 'annotation',\n                'namespace' => \"Newscoop\\Package\",\n                'path' => $newscoopDir.'/library/Newscoop/Package',\n                'use_simple_annotation_reader' => false,\n            ),\n            array(\n                'type' => 'annotation',\n                'namespace' => \"Newscoop\\Image\",\n                'path' => $newscoopDir.'/library/Newscoop/Image',\n                'use_simple_annotation_reader' => false,\n            ),\n        ),\n        'types' => array(\n            'utcdatetime' => 'Newscoop\\NewscoopBundle\\ORM\\UTCDateTimeType',\n        ),\n    ),\n));\n\n$logger = $app['monolog'];\n\ntry {\n    $app['db']->query('ALTER TABLE playlist_article DROP INDEX id_playlist');\n    $app['db']->query('ALTER TABLE `playlist_article` ADD `article_language` INT(11) NOT NULL');\n    $app['db']->query('ALTER TABLE `playlist_article` ADD KEY `IDX_BD05197C8759FDB8` (`id_playlist`), ADD KEY `IDX_BD05197CAA07C9D3813385DE` (`article_no`,`article_language`)');\n    $app['db']->query('UPDATE `playlist_article` AS pa LEFT JOIN Articles AS a ON pa.`article_no` = a.`Number` SET pa.`article_language` = a.`IdLanguage`');\n} catch (\\Exception $e) {\n    // ignore when already exist\n}\n\ntry {\n    $playlists = $app['orm.em']->getRepository('\\Newscoop\\Entity\\Playlist')\n        ->findAll();\n\n    foreach ($playlists as $playlist) {\n        $playlistArticles = $app['orm.em']->getRepository('Newscoop\\Entity\\Playlist')\n            ->articles($playlist, array(), true, null, null, false, true, 'id')\n            ->getResult();\n\n        $index = 0;\n        foreach ($playlistArticles as $article) {\n            if ($article instanceof \\Newscoop\\Entity\\PlaylistArticle) {\n                $index++;\n                $article->setOrder($index);\n            }\n        }\n        $app['orm.em']->flush();\n    }\n} catch (\\Exception $e) {\n    $msg = $e->getMessage();\n    $upgradeErrors[] = $msg;\n    $logger->addError($msg);\n    array_splice($upgradeErrors, 0, 0, array($msg));\n}\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.03.19/tables.sql",
    "content": "system php ./init_order_in_playlists.php"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.04.13/tables.sql",
    "content": "UPDATE `Articles` AS a LEFT JOIN Issues AS i ON a.`NrIssue`= i.Number  SET `issue_id`= i.id;\nUPDATE `Articles` AS a LEFT JOIN Sections AS s ON a.`NrSection` = s.Number SET `section_id` = s.id;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.04.15/tables.sql",
    "content": "ALTER TABLE `context_articles` CHANGE `order_number` `order_number` INT(11) NOT NULL DEFAULT '0';"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.04.16/data-required.sql",
    "content": "ALTER TABLE  `playlist` CHANGE  `notes` `notes` VARCHAR( 1024 ) CHARACTER SET utf8 COLLATE utf8_unicode_ci NULL DEFAULT NULL;\nALTER TABLE  `playlist` CHANGE  `max_items` `max_items` INT( 11 ) NULL;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.04.16/playlist.php",
    "content": "<?php\n\n$newscoopDir = realpath(dirname(__FILE__).'/../../../../../../').'/';\n\nrequire_once $newscoopDir.'vendor/autoload.php';\nrequire $newscoopDir.'conf/database_conf.php';\n\nuse Monolog\\Logger;\n\n$upgradeErrors = array();\n$app = new Silex\\Application();\n$app->register(new Silex\\Provider\\MonologServiceProvider(), array(\n    'monolog.logfile' => $newscoopDir.'log/upgrade.log',\n    'monolog.level' => Logger::NOTICE,\n    'monolog.name' => 'upgrade',\n));\n\n$logger = $app['monolog'];\n\n$app->register(new Silex\\Provider\\DoctrineServiceProvider(), array(\n    'db.options' => array(\n        'driver'    => 'pdo_mysql',\n        'host'      => $Campsite['db']['host'],\n        'dbname'    => $Campsite['db']['name'],\n        'user'      => $Campsite['db']['user'],\n        'password'  => $Campsite['db']['pass'],\n        'port'      => $Campsite['db']['port'],\n        'charset'   => 'utf8',\n    ),\n));\n\ntry {\n    $app['db']->query('ALTER TABLE playlist ADD themes VARCHAR(255) DEFAULT NULL');\n} catch (\\Exception $e) {\n}\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.04.16/tables.sql",
    "content": "system php ./playlist.php"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.04.21/delete.php",
    "content": "<?php\n\n$newscoopDir = realpath(dirname(__FILE__).'/../../../../../../').'/';\n$currentDir = dirname(__FILE__).'/';\n$diffFile = 'diff.txt';\n$upgradeErrors = array();\n\nrequire_once $newscoopDir.'vendor/autoload.php';\n\nuse Symfony\\Component\\Finder\\Finder;\nuse Symfony\\Component\\Filesystem\\Filesystem;\nuse Symfony\\Component\\Filesystem\\Exception\\IOException;\nuse Monolog\\Logger;\n\n$app = new Silex\\Application();\n$app->register(new Silex\\Provider\\MonologServiceProvider(), array(\n    'monolog.logfile' => $newscoopDir.'log/upgrade.log',\n    'monolog.level' => Logger::NOTICE,\n    'monolog.name' => 'upgrade',\n));\n\n$logger = $app['monolog'];\n\n// Remove files\n$finder = new Finder();\n$filesystem = new Filesystem();\n$finder->files()->in($currentDir)->name($diffFile);\n\n$contents = null;\nforeach ($finder as $file) {\n    $contents = $file->getContents();\n}\n\n$filesToBeDeleted =  array_filter(preg_split('/\\r\\n|\\n|\\r/', $contents));\n$folderToBeChecked = array();\nif (count($filesToBeDeleted) > 0) {\n    foreach ($filesToBeDeleted as $file) {\n        if (strpos($file, 'newscoop/') === false) {\n            continue;\n        }\n\n        $fullPath = $newscoopDir.substr($file, 9);\n\n        if (is_file($fullPath) && is_readable($fullPath)) {\n            try {\n                $filesystem->remove(array($fullPath));\n            } catch (IOException $e) {\n                $msg = 'Could not remove file '.str_replace($newscoopDir, '', $fullPath).', please remove it manually.';\n                $logger->addError($msg);\n                $upgradeErrors[] = $msg;\n            } catch (\\Exception $e) {\n                $msg = 'Could not remove file '.str_replace($newscoopDir, '', $fullPath).', please remove it manually.';\n                $logger->addError($msg);\n                $upgradeErrors[] = $msg;\n            }\n        }\n\n        if (strpos($file, '/') !== false) {\n            $folderToBeChecked[] = dirname($fullPath);\n        }\n    }\n}\n\n$folderToBeChecked = array_unique($folderToBeChecked);\narsort($folderToBeChecked);\n\nforeach ($folderToBeChecked as $folder) {\n    if (is_dir($folder)) {\n        $finder = new Finder();\n        $finder->in($folder);\n\n        if (iterator_count($finder->files()) == 0) {\n            try {\n                // Remove subdirectories\n                foreach ($finder->directories()->sortByName() as $subFolder) {\n                    if (is_dir($subFolder)) {\n                        $filesystem->remove(array($subFolder));\n                    }\n                }\n            } catch (\\Exception $e) {\n                $msg = 'Could not remove or check subdirectories of '.str_replace($newscoopDir, '', $fullPath).'. Please see newscoop/install/Resources/sql/upgrade/4.4.x/2015.04.21/diff.txt and remove the empty directories manually.';\n                $logger->addError($msg);\n                $upgradeErrors[] = $msg;\n            }\n\n            try {\n                // Remove parent directory\n                $filesystem->remove(array($folder));\n            } catch (\\Exception $e) {\n                $msg = 'Could not remove folder '.str_replace($newscoopDir, '', $folder).', please remove it manually.';\n                $logger->addError($msg);\n                $upgradeErrors[] = $msg;\n            }\n        }\n    }\n}\n\nif (count($upgradeErrors) > 0) {\n    $msg = \"Some files or directories could not automatically be removed. This is \"\n        .\"most likely caused by permissions. \\n\"\n        .\"You can either remove the files manually (see ${newscoopDir}install/Resources/sql/upgrade/4.4.x/2015.04.21/diff.txt) \"\n        .\"or execute this file with root permissions, e.g.: \\n\"\n        .\"sudo php ${newscoopDir}install/Resources/sql/upgrade/4.4.x/2015.04.21/delete.php\";\n    $logger->addError($msg);\n    array_splice($upgradeErrors, 0, 0, array($msg));\n}\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.04.21/diff.txt",
    "content": "newscoop/admin-style/content_ingest.css\nnewscoop/application/modules/admin/controllers/IngestController.php\nnewscoop/application/modules/admin/forms/Ingest.php\nnewscoop/application/modules/admin/forms/IngestSettings.php\nnewscoop/application/modules/admin/views/scripts/ingest/add-feed.phtml\nnewscoop/application/modules/admin/views/scripts/ingest/create-filter.phtml\nnewscoop/application/modules/admin/views/scripts/ingest/create-publisher.phtml\nnewscoop/application/modules/admin/views/scripts/ingest/detail.phtml\nnewscoop/application/modules/admin/views/scripts/ingest/index.phtml\nnewscoop/application/modules/admin/views/scripts/ingest/list-filters.phtml\nnewscoop/application/modules/admin/views/scripts/ingest/publish.phtml\nnewscoop/application/modules/admin/views/scripts/ingest/settings.phtml\nnewscoop/application/modules/admin/views/scripts/ingest/widget.phtml\nnewscoop/library/Newscoop/Entity/Ingest/Feed.php\nnewscoop/library/Newscoop/Entity/Ingest/Feed/Entry.php\nnewscoop/library/Newscoop/Entity/Repository/Ingest/Feed/EntryRepository.php\nnewscoop/library/Newscoop/Ingest/Parser.php\nnewscoop/library/Newscoop/Ingest/Parser/NewsMlParser.php\nnewscoop/library/Newscoop/Ingest/Parser/SwissinfoParser.php\nnewscoop/library/Newscoop/Ingest/Parser/SwisstxtParser.php\nnewscoop/library/Newscoop/Ingest/Publisher.php\nnewscoop/library/Newscoop/Services/Ingest/PublisherService.php\nnewscoop/library/Newscoop/Services/IngestService.php\nnewscoop/library/Newscoop/Tools/Console/Command/UpdateIngestCommand.php\nnewscoop/src/Newscoop/GimmeBundle/Controller/DefaultController.php\nnewscoop/src/Newscoop/NewscoopBundle/EventListener/AuthenticationListener.php"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.04.21/tables.sql",
    "content": "system php ./delete.php\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.05.07/client.php",
    "content": "<?php\n\n$newscoopDir = realpath(dirname(__FILE__).'/../../../../../../');\n\nrequire_once $newscoopDir.'/vendor/autoload.php';\nrequire $newscoopDir.'/conf/database_conf.php';\n\nuse Monolog\\Logger;\nuse Newscoop\\Installer\\Services;\nuse Newscoop\\NewscoopBundle\\Services\\SystemPreferencesService;\nuse Dflydev\\Silex\\Provider\\DoctrineOrm\\DoctrineOrmServiceProvider;\nuse Newscoop\\GimmeBundle\\Entity\\Client;\n\n$upgradeErrors = array();\n$app = new Silex\\Application();\n$app->register(new Silex\\Provider\\MonologServiceProvider(), array(\n    'monolog.logfile' => $newscoopDir.'/log/upgrade.log',\n    'monolog.level' => Logger::NOTICE,\n    'monolog.name' => 'upgrade',\n));\n\n$app->register(new Silex\\Provider\\DoctrineServiceProvider(), array(\n    'db.options' => array(\n        'driver'    => 'pdo_mysql',\n        'host'      => $Campsite['db']['host'],\n        'dbname'    => $Campsite['db']['name'],\n        'user'      => $Campsite['db']['user'],\n        'password'  => $Campsite['db']['pass'],\n        'port'      => $Campsite['db']['port'],\n        'charset'   => 'utf8',\n    ),\n));\n\n$app->register(new DoctrineOrmServiceProvider(), array(\n    \"orm.proxies_dir\" => $newscoopDir.\"/library/Proxy\",\n    \"orm.auto_generate_proxies\" => true,\n    \"orm.proxies_namespace\" => \"Proxy\",\n    \"orm.em.options\" => array(\n        \"mappings\" => array(\n            array(\n                \"type\" => \"annotation\",\n                \"namespace\" => \"Newscoop\\Entity\",\n                \"path\" => $newscoopDir.\"/library/Newscoop/Entity\",\n                \"use_simple_annotation_reader\" => false,\n                ),\n            array(\n                \"type\" => \"annotation\",\n                \"namespace\" => \"Newscoop\\NewscoopBundle\\Entity\",\n                \"path\" => $newscoopDir.\"/src/Newscoop/NewscoopBundle/Entity\",\n                \"use_simple_annotation_reader\" => false,\n                ),\n            array(\n                \"type\" => \"annotation\",\n                \"namespace\" => \"Newscoop\\GimmeBundle\\Entity\",\n                \"path\" => $newscoopDir.\"/src/Newscoop/GimmeBundle/Entity\",\n                \"use_simple_annotation_reader\" => false,\n                ),\n            ),\n        ),\n    ));\n\n$app['upgrade_service'] = $app->share(function () use ($app) {\n    return new Services\\UpgradeService($app['db'], $app['monolog']);\n});\n\n$app['preferences'] = $app->share(function () use ($app) {\n    return new SystemPreferencesService($app['orm.em']);\n});\n\n$logger = $app['monolog'];\n$defaultClientName = 'newscoop_'.$app['preferences']->SiteSecretKey;\n$client = $app['orm.em']->getRepository('Newscoop\\GimmeBundle\\Entity\\Client')->findOneByName($defaultClientName);\n\ntry {\n    if ($client) {\n        $alias = $app['upgrade_service']->getDefaultAlias();\n        if (!$alias) {\n            $msg = \"Could not find default alias! Aborting...\";\n            $upgradeErrors[] = $msg;\n            $logger->addError($msg);\n        } else {\n            $conn = $app['orm.em']->getConnection();\n            $conn->executeUpdate(\"UPDATE OAuthClient SET redirect_uris = ? WHERE name = ?\", array(\n                serialize(array('/oauth/authentication/result')),\n                $defaultClientName,\n            ));\n        }\n    }\n} catch (\\Exception $e) {\n    $msg = $e->getMessage();\n    $upgradeErrors[] = $msg;\n    $logger->addError($msg);\n    array_splice($upgradeErrors, 0, 0, array($msg));\n}\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.05.07/tables.sql",
    "content": "system php ./client.php"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.05.15/data-required.sql",
    "content": "UPDATE `SystemPreferences` SET value = \"Europe/London\" WHERE varname = \"TimeZone\" AND value = \"0\";\nUPDATE `SystemPreferences` SET value = \"Europe/Brussels\" WHERE varname = \"TimeZone\" AND (value = \"1\" OR value = \"+1\");\nUPDATE `SystemPreferences` SET value = \"Europe/Athens\" WHERE varname = \"TimeZone\" AND (value = \"2\" OR value = \"+2\");\nUPDATE `SystemPreferences` SET value = \"Asia/Baghdad\" WHERE varname = \"TimeZone\" AND (value = \"3\" OR value = \"+3\");\nUPDATE `SystemPreferences` SET value = \"Asia/Muscat\" WHERE varname = \"TimeZone\" AND (value = \"4\" OR value = \"+4\");\nUPDATE `SystemPreferences` SET value = \"Asia/Yekaterinburg\" WHERE varname = \"TimeZone\" AND (value = \"5\" OR value = \"+5\");\nUPDATE `SystemPreferences` SET value = \"Asia/Almaty\" WHERE varname = \"TimeZone\" AND (value = \"6\" OR value = \"+6\");\nUPDATE `SystemPreferences` SET value = \"Asia/Bangkok\" WHERE varname = \"TimeZone\" AND (value = \"7\" OR value = \"+7\");\nUPDATE `SystemPreferences` SET value = \"Asia/Singapore\" WHERE varname = \"TimeZone\" AND (value = \"8\" OR value = \"+8\");\nUPDATE `SystemPreferences` SET value = \"Asia/Tokyo\" WHERE varname = \"TimeZone\" AND (value = \"9\" OR value = \"+9\");\nUPDATE `SystemPreferences` SET value = \"Asia/Vladivostok\" WHERE varname = \"TimeZone\" AND (value = \"10\" OR value = \"+10\");\nUPDATE `SystemPreferences` SET value = \"Asia/Magadan\" WHERE varname = \"TimeZone\" AND (value = \"11\" OR value = \"+11\");\nUPDATE `SystemPreferences` SET value = \"Asia/Kamchatka\" WHERE varname = \"TimeZone\" AND (value = \"12\" OR value = \"+12\");\nUPDATE `SystemPreferences` SET value = \"Atlantic/Azores\" WHERE varname = \"TimeZone\" AND value = \"-1\";\nUPDATE `SystemPreferences` SET value = \"America/Noronha\" WHERE varname = \"TimeZone\" AND value = \"-2\";\nUPDATE `SystemPreferences` SET value = \"America/Argentina/Buenos_Aires\" WHERE varname = \"TimeZone\" AND value = \"-3\";\nUPDATE `SystemPreferences` SET value = \"America/La_Paz\" WHERE varname = \"TimeZone\" AND value = \"-4\";\nUPDATE `SystemPreferences` SET value = \"America/Bogota\" WHERE varname = \"TimeZone\" AND value = \"-5\";\nUPDATE `SystemPreferences` SET value = \"America/Mexico_City\" WHERE varname = \"TimeZone\" AND value = \"-6\";\nUPDATE `SystemPreferences` SET value = \"America/Phoenix\" WHERE varname = \"TimeZone\" AND value = \"-7\";\nUPDATE `SystemPreferences` SET value = \"America/Metlakatla\" WHERE varname = \"TimeZone\" AND value = \"-8\";\nUPDATE `SystemPreferences` SET value = \"Pacific/Gambier\" WHERE varname = \"TimeZone\" AND value = \"-9\";\nUPDATE `SystemPreferences` SET value = \"Pacific/Honolulu\" WHERE varname = \"TimeZone\" AND value = \"-10\";\nUPDATE `SystemPreferences` SET value = \"Pacific/Midway\" WHERE varname = \"TimeZone\" AND value = \"-11\";\nUPDATE `SystemPreferences` SET value = \"Pacific/Kwajalein\" WHERE varname = \"TimeZone\" AND value = \"-12\";\nUPDATE `SystemPreferences` SET value = \"\" WHERE varname = \"TimeZone\" AND value NOT IN (\"\", \"Europe/London\", \"Europe/Brussels\", \"Europe/Athens\", \"Asia/Baghdad\", \"Asia/Muscat\", \"Asia/Yekaterinburg\", \"Asia/Almaty\", \"Asia/Bangkok\", \"Asia/Singapore\", \"Asia/Tokyo\", \"Asia/Vladivostok\", \"Asia/Magadan\", \"Asia/Kamchatka\", \"Atlantic/Azores\", \"America/Noronha\", \"America/Argentina\", \"America/La_Paz\", \"America/Bogota\", \"America/Mexico_City\", \"America/Phoenix\", \"America/Metlakatla\", \"Pacific/Gambier\", \"Pacific/Honolulu\", \"Pacific/Midway\", \"Pacific/Kwajalein\");\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.05.16/tables.sql",
    "content": "UPDATE `Articles` AS a LEFT JOIN Issues AS i ON a.`NrIssue`= i.Number  SET `issue_id`= i.id;\nUPDATE `Articles` AS a LEFT JOIN Sections AS s ON a.`NrSection` = s.Number AND a.issue_id = s.fk_issue_id SET `section_id` = s.id;\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.05.28/tables.sql",
    "content": "CREATE TABLE IF NOT EXISTS `TopicFields` (\n  `ArticleType` varchar(166) NOT NULL DEFAULT '',\n  `FieldName` varchar(166) NOT NULL DEFAULT '',\n  `RootTopicId` int(11) NOT NULL DEFAULT '0',\n  PRIMARY KEY (`ArticleType`,`FieldName`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.06.03/playlist_article.php",
    "content": "<?php\n\n$newscoopDir = realpath(dirname(__FILE__).'/../../../../../../').'/';\n\nrequire_once $newscoopDir.'vendor/autoload.php';\nrequire $newscoopDir.'conf/database_conf.php';\n\n$app = new Silex\\Application();\n\n$app->register(new Silex\\Provider\\DoctrineServiceProvider(), array(\n    'db.options' => array(\n        'driver' => 'pdo_mysql',\n        'host' => $Campsite['db']['host'],\n        'dbname' => $Campsite['db']['name'],\n        'user' => $Campsite['db']['user'],\n        'password' => $Campsite['db']['pass'],\n        'port' => $Campsite['db']['port'],\n        'charset' => 'utf8',\n    ),\n));\n\ntry {\n    $app['db']->query('ALTER TABLE playlist_article DROP INDEX id_playlist');\n    $app['db']->query('ALTER TABLE `playlist_article` ADD `article_language` INT(11) NOT NULL');\n    $app['db']->query('ALTER TABLE `playlist_article` ADD KEY `IDX_BD05197C8759FDB8` (`id_playlist`), ADD KEY `IDX_BD05197CAA07C9D3813385DE` (`article_no`,`article_language`)');\n    $app['db']->query('UPDATE `playlist_article` AS pa LEFT JOIN Articles AS a ON pa.`article_no` = a.`Number` SET pa.`article_language` = a.`IdLanguage`');\n} catch (\\Exception $e) {\n    // ignore when already exist\n}\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.06.03/tables.sql",
    "content": "system php ./playlist_article.php\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.06.08/tables.sql",
    "content": "UPDATE `Articles` AS a LEFT JOIN Sections AS s ON a.`NrSection` = s.Number AND a.issue_id = s.fk_issue_id SET `section_id` = s.id;\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.06.09/remove_index.php",
    "content": "<?php\n\n$newscoopDir = realpath(dirname(__FILE__).'/../../../../../../').'/';\n\nrequire_once $newscoopDir.'vendor/autoload.php';\nrequire $newscoopDir.'conf/database_conf.php';\n\n$app = new Silex\\Application();\n\n$app->register(new Silex\\Provider\\DoctrineServiceProvider(), array(\n    'db.options' => array(\n        'driver' => 'pdo_mysql',\n        'host' => $Campsite['db']['host'],\n        'dbname' => $Campsite['db']['name'],\n        'user' => $Campsite['db']['user'],\n        'password' => $Campsite['db']['pass'],\n        'port' => $Campsite['db']['port'],\n        'charset' => 'utf8',\n    ),\n));\n\ntry {\n    $app['db']->query('ALTER TABLE playlist_article DROP INDEX playlist_article');\n} catch (\\Exception $e) {\n    // ignore when index doesn't exist\n}\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.06.09/tables.sql",
    "content": "system php ./remove_index.php\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.06.15/tables.sql",
    "content": "ALTER TABLE  `Aliases` CHANGE  `IdPublication`  `IdPublication` INT( 10 ) UNSIGNED NULL DEFAULT  NULL"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.06.16/data-required.sql",
    "content": "INSERT INTO `SnippetTemplates` (`Id`, `Name`, `Controller`, `TemplateCode`, `Favourite`, `Enabled`, `IconInactive`, `IconActive`, `Created`, `Modified`)\nVALUES \n\t(1, 'Embed.ly', 'Newscoop\\\\NewscoopBundle\\\\Controller\\\\EmbedlyController', '<a class=\\\"embedly-card\\\" href=\\\"{{ URL }}\\\">{{ title }}</a><script>!function(a){var b=\\\"embedly-platform\\\",c=\\\"script\\\";if(!a.getElementById(b)){var d=a.createElement(c);d.id=b,d.src=(\\\"https:\\\"===document.location.protocol?\\\"https\\\":\\\"http\\\")+\\\"://cdn.embedly.com/widgets/platform.js\\\";var e=document.getElementsByTagName(c)[0];e.parentNode.insertBefore(d,e)}}(document);</script>', 0, 1, NULL, NULL, '2014-05-12 13:19:43', '2014-05-12 13:19:43');\n\nINSERT INTO `SnippetTemplateField` (`Id`, `Name`, `Type`, `Scope`, `Required`, `TemplateId`)\nVALUES\n    (1, 'URL', 'url', 'frontend', 1, 1),\n    (2, 'Endpoint', 'text', 'frontend', 0, 1),\n    (3, 'maxwidth', 'integer', 'frontend', 0, 1),\n    (4, 'provider_url', 'url', 'backend', 0, 1),\n    (5, 'description', 'textarea', 'backend', 0, 1),\n    (6, 'title', 'text', 'backend', 0, 1),\n    (7, 'type', 'text', 'backend', 0, 1),\n    (8, 'thumbnail_width', 'integer', 'backend', 0, 1),\n    (9, 'height', 'integer', 'backend', 0, 1),\n    (10, 'width', 'integer', 'backend', 0, 1),\n    (11, 'html', 'textarea', 'backend', 0, 1),\n    (12, 'author_name', 'text', 'backend', 0, 1),\n    (13, 'version', 'text', 'backend', 0, 1),\n    (14, 'provider_name', 'text', 'backend', 0, 1),\n    (15, 'thumbnail_url', 'url', 'backend', 0, 1),\n    (16, 'thumbnail_height', 'integer', 'backend', 0, 1),\n    (17, 'author_url', 'url', 'backend', 0, 1);\nINSERT INTO `SnippetTemplates` (`Id`, `Name`, `Controller`, `TemplateCode`, `Favourite`, `Enabled`, `IconInactive`, `IconActive`, `Created`, `Modified`)\nVALUES\n\t(2, 'Youtube', NULL, '<iframe width=\\\"{{ width }}\\\" height=\\\"{{ height }}\\\" src=\\\"//www.youtube.com/embed/{{ ID }}\\\" frameborder=\\\"0\\\" allowfullscreen></iframe>', 1, 1, NULL, NULL, '0000-00-00 00:00:00', '0000-00-00 00:00:00');\n\nINSERT INTO `SnippetTemplateField` (`Id`, `Name`, `Type`, `Scope`, `TemplateId`, `Required`)\nVALUES\n\t(18, 'ID', 'text', 'frontend', 2, 1),\n\t(19, 'width', 'integer', 'frontend', 2, 0),\n\t(20, 'height', 'integer', 'frontend', 2, 0);\nINSERT INTO `SnippetTemplates` (`Id`, `Name`, `Controller`, `TemplateCode`, `Favourite`, `Enabled`, `IconInactive`, `IconActive`, `Created`, `Modified`)\nVALUES\n\t(3, 'Vimeo', NULL, '<iframe src=\\\"//player.vimeo.com/video/{{ ID }}\\\" width=\\\"{{ width }}\\\" height=\\\"{{ height }}\\\" frameborder=\\\"0\\\" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>', 1, 1, NULL, NULL, '0000-00-00 00:00:00', '0000-00-00 00:00:00');\n\nINSERT INTO `SnippetTemplateField` (`Id`, `Name`, `Type`, `Scope`, `TemplateId`, `Required`)\nVALUES\n\t(21, 'ID', 'text', 'frontend', 3, 1),\n\t(22, 'width', 'integer', 'frontend', 3, 0),\n\t(23, 'height', 'integer', 'frontend', 3, 0);\nINSERT INTO `SnippetTemplates` (`Id`, `Name`, `Controller`, `TemplateCode`, `Favourite`, `Enabled`, `IconInactive`, `IconActive`, `Created`, `Modified`)\nVALUES\n\t(4, 'Generic', NULL, '{{Generic | raw}}', 0, 1, NULL, NULL, '2014-06-10 14:15:49', '2014-06-10 14:15:49');\n\nINSERT INTO `SnippetTemplateField` (`Id`, `Name`, `Type`, `Scope`, `TemplateId`, `Required`)\nVALUES\n\t(24, 'Generic', 'textarea', 'frontend', 4, 1);\nINSERT INTO `Snippets` (`Id`, `Name`, `Enabled`, `Created`, `Modified`, `TemplateId`)\nVALUES\n\t(1, 'Youtube Sourcefabric Booktype Video', 1, '2014-06-10 13:15:10', '2014-06-10 13:15:12', 1);\n\nINSERT INTO `SnippetFields` (`Id`, `Data`, `SnippetId`, `TemplateFieldId`, `Name`)\nVALUES\n\t(1, 'https://www.youtube.com/watch?v=AYVUPem_jaM', 1, 1, 'URL'),\n    (2, NULL, 1, 2, 'Endpoint'),\n\t(3, '0', 1, 3, 'maxwidth'),\n\t(4, 'http://www.youtube.com/', 1, 4, 'provider_url'),\n\t(5, 'Sourcefabric builds open source software to support independent media worldwide. On February 14th, we\\'ll announce our tool to help people and organisations write and publish great multi-platform books. Write and publish great books ready for iPad, Kindle, Nook or print within minutes.', 1, 5, 'description'),\n\t(6, 'The future of the book is in your hands', 1, 6, 'title'),\n\t(7, 'video', 1, 7, 'type'),\n\t(8, '480', 1, 8, 'thumbnail_width'),\n\t(9, '309', 1, 9, 'height'),\n\t(10, '550', 1, 10, 'width'),\n\t(11, '<iframe class=\\\"embedly-embed\\\" src=\\\"//cdn.embedly.com/widgets/media.html?url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DAYVUPem_jaM&src=http%3A%2F%2Fwww.youtube.com%2Fembed%2FAYVUPem_jaM%3Ffeature%3Doembed&image=http%3A%2F%2Fi1.ytimg.com%2Fvi%2FAYVUPem_jaM%2Fhqdefault.jpg&type=text%2Fhtml&schema=youtube\\\" width=\\\"550\\\" height=\\\"309\\\" scrolling=\\\"no\\\" frameborder=\\\"0\\\" allowfullscreen></iframe>', 1, 11, 'html'),\n\t(12, 'Sourcefabric', 1, 12, 'author_name'),\n\t(13, '1.0', 1, 13, 'version'),\n\t(14, 'YouTube', 1, 14, 'provider_name'),\n\t(15, 'http://i1.ytimg.com/vi/AYVUPem_jaM/hqdefault.jpg', 1, 15, 'thumbnail_url'),\n\t(16, '360', 1, 16, 'thumbnail_height'),\n\t(17, 'http://www.youtube.com/user/Sourcefabric', 1, 17, 'author_url');\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.06.16/tables.sql",
    "content": "SET FOREIGN_KEY_CHECKS=0;\n\nDROP TABLE IF EXISTS `ArticleSnippets`;\nCREATE TABLE `ArticleSnippets` (`ArticleNr` int(11) NOT NULL, `SnippetId` int(11) NOT NULL, KEY `FK_5080CDEB00DA91C` (`SnippetId`), CONSTRAINT `FK_5080CDEB00DA91C` FOREIGN KEY (`SnippetId`) REFERENCES `Snippets` (`Id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;\n\nDROP TABLE IF EXISTS `Snippets`;\nCREATE TABLE `Snippets` (Id INT AUTO_INCREMENT NOT NULL, Name VARCHAR(255) NOT NULL, Enabled TINYINT(1) NOT NULL, Created DATETIME NOT NULL, Modified DATETIME NOT NULL, TemplateId INT DEFAULT NULL, INDEX IDX_1457978AF846113F (TemplateId), PRIMARY KEY(Id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\nDROP TABLE IF EXISTS `SnippetTemplates`;\nCREATE TABLE `SnippetTemplates` (Id INT AUTO_INCREMENT NOT NULL, Name VARCHAR(255) NOT NULL, Controller VARCHAR(255) DEFAULT NULL, TemplateCode LONGTEXT NOT NULL, Favourite TINYINT(1) DEFAULT NULL, Enabled TINYINT(1) NOT NULL, IconInactive LONGTEXT DEFAULT NULL, IconActive LONGTEXT DEFAULT NULL, Created DATETIME NOT NULL, Modified DATETIME NOT NULL, PRIMARY KEY(Id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\nDROP TABLE IF EXISTS `SnippetTemplateField`;\nCREATE TABLE `SnippetTemplateField` (Id INT AUTO_INCREMENT NOT NULL, Name VARCHAR(255) NOT NULL, Type VARCHAR(255) NOT NULL, Scope VARCHAR(255) NOT NULL, Required TINYINT(1) NOT NULL, TemplateId INT NOT NULL, INDEX IDX_2060662F846113F (TemplateId), PRIMARY KEY(Id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\nDROP TABLE IF EXISTS `SnippetFields`;\nCREATE TABLE `SnippetFields` (Id INT AUTO_INCREMENT NOT NULL, Data LONGTEXT DEFAULT NULL, Name VARCHAR(255) NOT NULL, SnippetId INT NOT NULL, TemplateFieldId INT NOT NULL, INDEX IDX_1F835121B00DA91C (SnippetId), INDEX IDX_1F835121EBCA9337 (TemplateFieldId), PRIMARY KEY(Id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\nALTER TABLE SnippetTemplateField ADD CONSTRAINT FK_2060662F846113F FOREIGN KEY (TemplateId) REFERENCES SnippetTemplates (Id);\nALTER TABLE SnippetFields ADD CONSTRAINT FK_1F835121B00DA91C FOREIGN KEY (SnippetId) REFERENCES Snippets (Id);\nALTER TABLE SnippetFields ADD CONSTRAINT FK_1F835121EBCA9337 FOREIGN KEY (TemplateFieldId) REFERENCES SnippetTemplateField (Id);\nALTER TABLE Snippets ADD CONSTRAINT FK_1457978AF846113F FOREIGN KEY (TemplateId) REFERENCES SnippetTemplates (Id);\n\nSET FOREIGN_KEY_CHECKS=1;\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.06.24/data-required.sql",
    "content": "INSERT INTO `SnippetTemplates` (`Id`, `Name`, `Controller`, `TemplateCode`, `Favourite`, `Enabled`, `IconInactive`, `IconActive`, `Created`, `Modified`)\nVALUES \n\t(1, 'Embed.ly', 'Newscoop\\\\NewscoopBundle\\\\Controller\\\\EmbedlyController', '<a class=\\\"embedly-card\\\" href=\\\"{{ URL }}\\\">{{ title }}</a><script>!function(a){var b=\\\"embedly-platform\\\",c=\\\"script\\\";if(!a.getElementById(b)){var d=a.createElement(c);d.id=b,d.src=(\\\"https:\\\"===document.location.protocol?\\\"https\\\":\\\"http\\\")+\\\"://cdn.embedly.com/widgets/platform.js\\\";var e=document.getElementsByTagName(c)[0];e.parentNode.insertBefore(d,e)}}(document);</script>', 0, 1, NULL, NULL, '2014-05-12 13:19:43', '2014-05-12 13:19:43');\n\nINSERT INTO `SnippetTemplateField` (`Id`, `Name`, `Type`, `Scope`, `Required`, `TemplateId`)\nVALUES\n    (1, 'URL', 'url', 'frontend', 1, 1),\n    (2, 'Endpoint', 'text', 'frontend', 0, 1),\n    (3, 'maxwidth', 'integer', 'frontend', 0, 1),\n    (4, 'provider_url', 'url', 'backend', 0, 1),\n    (5, 'description', 'textarea', 'backend', 0, 1),\n    (6, 'title', 'text', 'backend', 0, 1),\n    (7, 'type', 'text', 'backend', 0, 1),\n    (8, 'thumbnail_width', 'integer', 'backend', 0, 1),\n    (9, 'height', 'integer', 'backend', 0, 1),\n    (10, 'width', 'integer', 'backend', 0, 1),\n    (11, 'html', 'textarea', 'backend', 0, 1),\n    (12, 'author_name', 'text', 'backend', 0, 1),\n    (13, 'version', 'text', 'backend', 0, 1),\n    (14, 'provider_name', 'text', 'backend', 0, 1),\n    (15, 'thumbnail_url', 'url', 'backend', 0, 1),\n    (16, 'thumbnail_height', 'integer', 'backend', 0, 1),\n    (17, 'author_url', 'url', 'backend', 0, 1);\nINSERT INTO `SnippetTemplates` (`Id`, `Name`, `Controller`, `TemplateCode`, `Favourite`, `Enabled`, `IconInactive`, `IconActive`, `Created`, `Modified`)\nVALUES\n\t(2, 'Youtube', NULL, '<iframe width=\\\"{{ width }}\\\" height=\\\"{{ height }}\\\" src=\\\"//www.youtube.com/embed/{{ ID }}\\\" frameborder=\\\"0\\\" allowfullscreen></iframe>', 1, 1, NULL, NULL, '0000-00-00 00:00:00', '0000-00-00 00:00:00');\n\nINSERT INTO `SnippetTemplateField` (`Id`, `Name`, `Type`, `Scope`, `TemplateId`, `Required`)\nVALUES\n\t(18, 'ID', 'text', 'frontend', 2, 1),\n\t(19, 'width', 'integer', 'frontend', 2, 1),\n\t(20, 'height', 'integer', 'frontend', 2, 1);\nINSERT INTO `SnippetTemplates` (`Id`, `Name`, `Controller`, `TemplateCode`, `Favourite`, `Enabled`, `IconInactive`, `IconActive`, `Created`, `Modified`)\nVALUES\n\t(3, 'Vimeo', NULL, '<iframe src=\\\"//player.vimeo.com/video/{{ ID }}\\\" width=\\\"{{ width }}\\\" height=\\\"{{ height }}\\\" frameborder=\\\"0\\\" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>', 1, 1, NULL, NULL, '0000-00-00 00:00:00', '0000-00-00 00:00:00');\n\nINSERT INTO `SnippetTemplateField` (`Id`, `Name`, `Type`, `Scope`, `TemplateId`, `Required`)\nVALUES\n\t(21, 'ID', 'text', 'frontend', 3, 1),\n\t(22, 'width', 'integer', 'frontend', 3, 1),\n\t(23, 'height', 'integer', 'frontend', 3, 1);\nINSERT INTO `SnippetTemplates` (`Id`, `Name`, `Controller`, `TemplateCode`, `Favourite`, `Enabled`, `IconInactive`, `IconActive`, `Created`, `Modified`)\nVALUES\n\t(4, 'Generic', NULL, '{{Generic | raw}}', 0, 1, NULL, NULL, '2014-06-10 14:15:49', '2014-06-10 14:15:49');\n\nINSERT INTO `SnippetTemplateField` (`Id`, `Name`, `Type`, `Scope`, `TemplateId`, `Required`)\nVALUES\n\t(24, 'Generic', 'textarea', 'frontend', 4, 1);\nINSERT INTO `Snippets` (`Id`, `Name`, `Enabled`, `Created`, `Modified`, `TemplateId`)\nVALUES\n\t(1, 'Youtube Sourcefabric Booktype Video', 1, '2014-06-10 13:15:10', '2014-06-10 13:15:12', 1);\n\nINSERT INTO `SnippetFields` (`Id`, `Data`, `SnippetId`, `TemplateFieldId`, `Name`)\nVALUES\n\t(1, 'https://www.youtube.com/watch?v=AYVUPem_jaM', 1, 1, 'URL'),\n    (2, NULL, 1, 2, 'Endpoint'),\n\t(3, '0', 1, 3, 'maxwidth'),\n\t(4, 'http://www.youtube.com/', 1, 4, 'provider_url'),\n\t(5, 'Sourcefabric builds open source software to support independent media worldwide. On February 14th, we\\'ll announce our tool to help people and organisations write and publish great multi-platform books. Write and publish great books ready for iPad, Kindle, Nook or print within minutes.', 1, 5, 'description'),\n\t(6, 'The future of the book is in your hands', 1, 6, 'title'),\n\t(7, 'video', 1, 7, 'type'),\n\t(8, '480', 1, 8, 'thumbnail_width'),\n\t(9, '309', 1, 9, 'height'),\n\t(10, '550', 1, 10, 'width'),\n\t(11, '<iframe class=\\\"embedly-embed\\\" src=\\\"//cdn.embedly.com/widgets/media.html?url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DAYVUPem_jaM&src=http%3A%2F%2Fwww.youtube.com%2Fembed%2FAYVUPem_jaM%3Ffeature%3Doembed&image=http%3A%2F%2Fi1.ytimg.com%2Fvi%2FAYVUPem_jaM%2Fhqdefault.jpg&type=text%2Fhtml&schema=youtube\\\" width=\\\"550\\\" height=\\\"309\\\" scrolling=\\\"no\\\" frameborder=\\\"0\\\" allowfullscreen></iframe>', 1, 11, 'html'),\n\t(12, 'Sourcefabric', 1, 12, 'author_name'),\n\t(13, '1.0', 1, 13, 'version'),\n\t(14, 'YouTube', 1, 14, 'provider_name'),\n\t(15, 'http://i1.ytimg.com/vi/AYVUPem_jaM/hqdefault.jpg', 1, 15, 'thumbnail_url'),\n\t(16, '360', 1, 16, 'thumbnail_height'),\n\t(17, 'http://www.youtube.com/user/Sourcefabric', 1, 17, 'author_url');\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.06.24/tables.sql",
    "content": "SET FOREIGN_KEY_CHECKS=0;\n\nDROP TABLE IF EXISTS `ArticleSnippets`;\nCREATE TABLE `ArticleSnippets` (`ArticleNr` int(11) NOT NULL, `SnippetId` int(11) NOT NULL, KEY `FK_5080CDEB00DA91C` (`SnippetId`), CONSTRAINT `FK_5080CDEB00DA91C` FOREIGN KEY (`SnippetId`) REFERENCES `Snippets` (`Id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;\n\nDROP TABLE IF EXISTS `Snippets`;\nCREATE TABLE `Snippets` (Id INT AUTO_INCREMENT NOT NULL, Name VARCHAR(255) NOT NULL, Enabled TINYINT(1) NOT NULL, Created DATETIME NOT NULL, Modified DATETIME NOT NULL, TemplateId INT DEFAULT NULL, INDEX IDX_1457978AF846113F (TemplateId), PRIMARY KEY(Id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\nDROP TABLE IF EXISTS `SnippetTemplates`;\nCREATE TABLE `SnippetTemplates` (Id INT AUTO_INCREMENT NOT NULL, Name VARCHAR(255) NOT NULL, Controller VARCHAR(255) DEFAULT NULL, TemplateCode LONGTEXT NOT NULL, Favourite TINYINT(1) DEFAULT NULL, Enabled TINYINT(1) NOT NULL, IconInactive LONGTEXT DEFAULT NULL, IconActive LONGTEXT DEFAULT NULL, Created DATETIME NOT NULL, Modified DATETIME NOT NULL, PRIMARY KEY(Id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\nDROP TABLE IF EXISTS `SnippetTemplateField`;\nCREATE TABLE `SnippetTemplateField` (Id INT AUTO_INCREMENT NOT NULL, Name VARCHAR(255) NOT NULL, Type VARCHAR(255) NOT NULL, Scope VARCHAR(255) NOT NULL, Required TINYINT(1) NOT NULL, TemplateId INT NOT NULL, INDEX IDX_2060662F846113F (TemplateId), PRIMARY KEY(Id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\nDROP TABLE IF EXISTS `SnippetFields`;\nCREATE TABLE `SnippetFields` (Id INT AUTO_INCREMENT NOT NULL, Data LONGTEXT DEFAULT NULL, Name VARCHAR(255) NOT NULL, SnippetId INT NOT NULL, TemplateFieldId INT NOT NULL, INDEX IDX_1F835121B00DA91C (SnippetId), INDEX IDX_1F835121EBCA9337 (TemplateFieldId), PRIMARY KEY(Id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;\n\nALTER TABLE SnippetTemplateField ADD CONSTRAINT FK_2060662F846113F FOREIGN KEY (TemplateId) REFERENCES SnippetTemplates (Id);\nALTER TABLE SnippetFields ADD CONSTRAINT FK_1F835121B00DA91C FOREIGN KEY (SnippetId) REFERENCES Snippets (Id);\nALTER TABLE SnippetFields ADD CONSTRAINT FK_1F835121EBCA9337 FOREIGN KEY (TemplateFieldId) REFERENCES SnippetTemplateField (Id);\nALTER TABLE Snippets ADD CONSTRAINT FK_1457978AF846113F FOREIGN KEY (TemplateId) REFERENCES SnippetTemplates (Id);\n\nSET FOREIGN_KEY_CHECKS=1;\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.06.30/tables.sql",
    "content": "ALTER TABLE `Articles` CHANGE `time_updated` `time_updated` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00';\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.08.10/tables.sql",
    "content": "ALTER TABLE `playlist_article` CHANGE `id_playlist_article` `id_playlist_article` INT( 11 ) UNSIGNED NOT NULL AUTO_INCREMENT ;\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.08.24/tables.sql",
    "content": "ALTER TABLE `playlist` CHANGE `themes` `themes` text COLLATE 'utf8_general_ci' NULL;\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.09.11/data-required.sql",
    "content": "UPDATE `Languages` SET `RFC3066bis` = \"az-AZ\" WHERE `Code` = \"az\";\nUPDATE `Languages` SET `RFC3066bis` = \"da-DK\" WHERE `Code` = \"da\";\nUPDATE `Languages` SET `RFC3066bis` = \"hu-HU\" WHERE `Code` = \"hu\";\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.09.15/data-required.sql",
    "content": "UPDATE Authors SET first_name=TRIM(first_name), last_name=TRIM(last_name);\nUPDATE Authors SET first_name=replace(replace(replace(first_name,'  ',' __|__'),'__|__ ',''),'__|__','') WHERE 0 < LOCATE('  ', first_name);\nUPDATE Authors SET last_name=replace(replace(replace(last_name,'  ',' __|__'),'__|__ ',''),'__|__','') WHERE 0 < LOCATE('  ', last_name);\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.10.15/data-required.sql",
    "content": "UPDATE topic_translations as tt INNER JOIN main_topics AS t ON tt.object_id = t.id SET tt.isDefault = 1 WHERE t.title = tt.content;\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.10.15/tables.sql",
    "content": "system php ./topic_translations.php\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.10.15/topic_translations.php",
    "content": "<?php\n\n$newscoopDir = realpath(dirname(__FILE__).'/../../../../../../').'/';\n\nrequire_once $newscoopDir.'vendor/autoload.php';\nrequire $newscoopDir.'conf/database_conf.php';\n\nuse Monolog\\Logger;\n\n$upgradeErrors = array();\n$app = new Silex\\Application();\n$app->register(new Silex\\Provider\\MonologServiceProvider(), array(\n    'monolog.logfile' => $newscoopDir.'log/upgrade.log',\n    'monolog.level' => Logger::NOTICE,\n    'monolog.name' => 'upgrade',\n));\n\n$logger = $app['monolog'];\n\n$app->register(new Silex\\Provider\\DoctrineServiceProvider(), array(\n    'db.options' => array(\n        'driver' => 'pdo_mysql',\n        'host' => $Campsite['db']['host'],\n        'dbname' => $Campsite['db']['name'],\n        'user' => $Campsite['db']['user'],\n        'password' => $Campsite['db']['pass'],\n        'port' => $Campsite['db']['port'],\n        'charset' => 'utf8',\n    ),\n));\n\ntry {\n    $app['db']->query('ALTER TABLE `topic_translations` ADD `isDefault` INT( 1 ) NULL DEFAULT NULL');\n} catch (\\Exception $e) {\n    if ($app['db']->errorCode() !== '42S21') {\n        $upgradeErrors[] = $e->getMessage();\n        $logger->addError($e->getMessage());\n    }\n}\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2015.10.29/tables.sql",
    "content": "CREATE TABLE IF NOT EXISTS `output_publication` (\n  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,\n  `fk_output_id` int(11) unsigned NOT NULL,\n  `fk_publication_id` int(11) unsigned NOT NULL,\n  `fk_language_id` int(11) unsigned NOT NULL,\n  `fk_theme_path_id` int(11) unsigned DEFAULT NULL,\n  PRIMARY KEY (`id`),\n  UNIQUE KEY `publication_language` (`fk_publication_id`,`fk_language_id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8;\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2016.03.30/tables.sql",
    "content": "DROP INDEX other_key ON Articles;\n"
  },
  {
    "path": "newscoop/install/Resources/sql/upgrade/4.4.x/2016.05.04/tables.sql",
    "content": "TRUNCATE TABLE  `Cache`;\nALTER TABLE `Cache` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;\nALTER TABLE `Cache` CHANGE  `content`  `content` MEDIUMTEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL;\n"
  },
  {
    "path": "newscoop/install/Resources/templates/_configuration.twig",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Holman Romero <holman.romero@gmail.com>\n * @copyright 2009 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\n\nglobal $Campsite, $ADMIN_DIR;\n\n$GLOBALS['g_campsiteDir'] =  __DIR__ . '/../';\n\nrequire_once($GLOBALS['g_campsiteDir'].'/include/campsite_constants.php');\n// sets the PEAR local directory\nset_include_path(CS_PATH_SITE.'/library'.PATH_SEPARATOR.CS_PATH_PEAR_LOCAL.PATH_SEPARATOR.get_include_path());\n\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/classes/CampSession.php');\n\n\n/** System settings **/\n$preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n$Campsite['campsite']['url_default_type'] = 2;\n$Campsite['campsite']['secret_key'] = $preferencesService->SiteSecretKey;\n$Campsite['campsite']['session_lifetime'] = $preferencesService->SiteSessionLifeTime;\n\n/** General settings **/\n$Campsite['site']['online'] = $preferencesService->SiteOnline;\n$Campsite['site']['title'] = $preferencesService->SiteTitle;\n$Campsite['site']['keywords'] = $preferencesService->SiteMetaKeywords;\n$Campsite['site']['description'] = $preferencesService->SiteMetaDescription;\n$Campsite['site']['charset'] = 'utf-8';\n$Campsite['site']['help_url'] = 'https://www.sourcefabric.org/en/newscoop/help/';\n$Campsite['site']['about_url'] = 'https://www.sourcefabric.org/en/newscoop/';\n$Campsite['site']['email'] = 'newscoop-bug@sourcefabric.org';\n\n$Campsite['sourcefabric']['url'] = 'http://www.sourcefabric.org';\n\n/** Locale settings **/\n$Campsite['locale']['lang_id'] = 1;\n$Campsite['locale']['lang_iso'] = 'en-US';\n$Campsite['locale']['lang_code'] = 'en';\n$Campsite['locale']['lang_name'] = 'english';\n\n/** Cache settings **/\n$Campsite['cache']['enabled'] = true;\n$Campsite['cache']['expiration_time'] = 900;\n$Campsite['cache']['path'] = null;\n\n/** Smarty settings **/\n$Campsite['smarty']['debugging'] = false;\n$Campsite['smarty']['force_compile'] = false;\n$Campsite['smarty']['compile_check'] = true;\n$Campsite['smarty']['use_subdirs'] = false;\n$Campsite['smarty']['left_delimeter'] = '#{#{';\n$Campsite['smarty']['right_delimeter'] = '#}#}';\n\n/** File Archive Storage Server settings **/\n$Campsite['xmlrpc_storage']['path'] = '/mma/xmlrpc/';\n$Campsite['xmlrpc_storage']['file'] = 'xrLocStor.php';\n\n/** Mailer settings **/\n$Campsite['smtp']['host'] = $preferencesService->SMTPHost;\n$Campsite['smtp']['port'] = $preferencesService->SMTPPort;\n$Campsite['smtp']['default_host'] = 'localhost';\n$Campsite['smtp']['default_port'] = 25;\n\n/** Backward compatibility **/\n$ADMIN_DIR = \"admin-files\";\n\nrequire_once($GLOBALS['g_campsiteDir'].'/conf/database_conf.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/conf/install_conf.php');\n\n\n/**\n * Try to autoload class definitions before failing.\n * This makes the Campsite class definition file inclusion optional.\n *\n * @param string $p_className\n */\nfunction __autoload($p_className)\n{\n    global $ADMIN, $ADMIN_DIR;\n    require_once($GLOBALS['g_campsiteDir'].'/classes/CampPlugin.php');\n\n    static $classDirectories = array('classes',\n                              'classes/Extension',\n                              'template_engine/classes',\n                              'template_engine/metaclasses');\n\n    if (!is_string($p_className)) {\n        return;\n    }\n\n    foreach ($classDirectories as $dirName) {\n        $fileName = $GLOBALS['g_campsiteDir'].\"/$dirName/$p_className.php\";\n        if (file_exists($fileName)) {\n            require_once($fileName);\n            return;\n        }\n    }\n\n    $basePaths = array();\n    foreach (CampPlugin::GetEnabled() as $CampPlugin) {\n        $basePaths[] = $CampPlugin->getBasePath();\n    }\n    foreach ($basePaths as $basePath) {\n        foreach ($classDirectories as $dirName) {\n            $fileName = $GLOBALS['g_campsiteDir'].\"/$basePath/$dirName/$p_className.php\";\n            if (file_exists($fileName)) {\n                require_once($fileName);\n                return;\n            }\n        }\n    }\n}\n\n?>\n"
  },
  {
    "path": "newscoop/install/Resources/templates/_database_conf.twig",
    "content": "<?php\nglobal $Campsite;\n\n$Campsite['DATABASE_NAME'] = '{{ database_name }}';\n$Campsite['DATABASE_SERVER_ADDRESS'] = '{{ database_server_host }}';\n$Campsite['DATABASE_SERVER_PORT'] = '{{ database_server_port }}';\n$Campsite['DATABASE_USER'] = '{{ database_user }}';\n$Campsite['DATABASE_PASSWORD'] = '{{ database_password }}';\n\n/** Database settings **/\n$Campsite['db']['type'] = 'mysql';\n$Campsite['db']['host'] = $Campsite['DATABASE_SERVER_ADDRESS'];\n$Campsite['db']['port'] = $Campsite['DATABASE_SERVER_PORT'];\n$Campsite['db']['name'] = $Campsite['DATABASE_NAME'];\n$Campsite['db']['user'] = $Campsite['DATABASE_USER'];\n$Campsite['db']['pass'] = $Campsite['DATABASE_PASSWORD'];\n"
  },
  {
    "path": "newscoop/install/Resources/views/botstrap_errors.twig",
    "content": "{% for dir in directories %}\n\t{{ dir }} <br />\n{% endfor %}"
  },
  {
    "path": "newscoop/install/Resources/views/demo.twig",
    "content": "{% extends \"layout.twig\" %}\n\n{% block content %}\ndemo sites\n\n{% for key, message in app.session.getFlashBag() %}\n\t<div class=\"alert alert-{{ key }}\">{{ message.0|raw }}</div>\n{% endfor %}\n\n<form role=\"form\" action=\"#\" method=\"post\">\n    {{ form_widget(form) }}\n\n    <input type=\"submit\" name=\"submit\" />\n</form>\n\n{% endblock %}"
  },
  {
    "path": "newscoop/install/Resources/views/index.twig",
    "content": "{% extends \"layout.twig\" %}\n\n{% block header %}System compatibility{% endblock %}\n{% block content %}\n<div class=\"middle\">\n\t\t\t\t<h3>Requirements</h3>\n\t\t\t\t<ul>\n\t\t\t\t\t{% for req in requirements %}\n\t\t\t\t\t\t<li class=\"{% if req.isFulfilled() %}{% else %}\n\t\t\t\t\t\t\t{% if req.isOptional() %}\n\t\t\t\t\t\t\t\t\talert\n\t\t\t\t\t\t\t\t{% else %}\n\t\t\t\t\t\t\t\t\tfail\n\t\t\t\t\t\t\t\t{% endif %}\n\t\t\t\t\t\t\t{% endif %}\">{{ req.getTestMessage() }}\n\t\t\t\t\t\t</li>\n\t\t\t\t\t{% endfor %}\n\t\t\t\t</ul>\n\n\t\t\t\t<h3>Recommendations</h3>\n\t\t\t\t<ul>\n\t\t\t\t\t{% for req in recommendations %}\n\t\t\t\t\t\t<li class=\"{% if req.isFulfilled() %}{% else %}\n\t\t\t\t\t\t\t{% if req.isOptional() %}\n\t\t\t\t\t\t\t\t\talert\n\t\t\t\t\t\t\t\t{% else %}\n\t\t\t\t\t\t\t\t\tfail\n\t\t\t\t\t\t\t\t{% endif %}\n\t\t\t\t\t\t\t{% endif %}\">{{ req.getTestMessage() }}\n\t\t\t\t\t\t</li>\n\t\t\t\t\t{% endfor %}\n\t\t\t\t</ul>\n\n\t\t\t</div>\n\n\t\t\t<div class=\"bottom notification {% if checkPassed == false %}fail{% else %}{% if warning %}alert{% endif %}{% endif %}\">\n\t\t\t{% if checkPassed %}\n\t\t\t\t<span>All is well! {% if warning %}There are some warnings but you can continue installation.{% endif %}</span>\n\t\t\t\t<a href=\"{{ url('license') }}\" class=\"btn btn-blue\">Next</a>\n\t\t\t{% else %}<span>Your configuration is not compatible. Please make required changes.</span>{% endif %}\n\t\t\t\t<a href=\"{{ url('index') }}\" class=\"btn btn-white\">Refresh</a>\n\t\t\t</div>\n{% endblock %}"
  },
  {
    "path": "newscoop/install/Resources/views/layout.twig",
    "content": "<!DOCTYPE html>\n<html lang=\"en\" dir=\"ltr\">\n<head>\n  <title>Newscoop Installer</title>\n  <link rel=\"shortcut icon\" href=\"../admin-style/images/7773658c3ccbf03954b4dacb029b2229.ico\" />\n  <link rel=\"stylesheet\" type=\"text/css\" media=\"screen\" href=\"../install/Resources/assets/css/main.css\" />\n</head>\n<body>\n  <div class=\"wrapper\">\n    <img class=\"logo\" src=\"../install/Resources/assets/css/logo.png\">\n    <div class=\"main_box {% block fixed %}fixed{% endblock %}\">\n      <div class=\"top\">\n        <h2>{% block header %}{% endblock %}</h2>\n      </div>\n       {% block content %}{% endblock %}\n      <p class=\"version_num\">\n          <a href=\"http://newscoop.sourcefabric.org/\" target=\"_blank\">{{ NewscoopVersion.getPackage() }}</a>, the open content management system for professional journalists.\n          <br />\n          &copy; {{ NewscoopVersion.getCopyrightYear() }}\n          <a href=\"{{ NewscoopVersion.getWebURL() }}\" target=\"_blank\">{{ NewscoopVersion.getOrganization() }}</a> {{ NewscoopVersion.getPackage() }} is distributed under {{ NewscoopVersion.getLicense() }}\n      </p>\n    </div>\n  </div>\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/install/Resources/views/license.twig",
    "content": "{% extends \"layout.twig\" %}\n\n{% block header %}License Agreement{% endblock %}\n{% block content %}\n<div class=\"middle\" style=\"left:15px; right: 10px;\">\n<pre>\nGNU GENERAL PUBLIC LICENSE\n                       Version 3, 29 June 2007\n\nCopyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>\nEveryone is permitted to copy and distribute verbatim copies\nof this license document, but changing it is not allowed.\n\n                            Preamble\n\n  The GNU General Public License is a free, copyleft license for\nsoftware and other kinds of works.\n\n  The licenses for most software and other practical works are designed\nto take away your freedom to share and change the works.  By contrast,\nthe GNU General Public License is intended to guarantee your freedom to\nshare and change all versions of a program--to make sure it remains free\nsoftware for all its users.  We, the Free Software Foundation, use the\nGNU General Public License for most of our software; it applies also to\nany other work released this way by its authors.  You can apply it to\nyour programs, too.\n\n  When we speak of free software, we are referring to freedom, not\nprice.  Our General Public Licenses are designed to make sure that you\nhave the freedom to distribute copies of free software (and charge for\nthem if you wish), that you receive source code or can get it if you\nwant it, that you can change the software or use pieces of it in new\nfree programs, and that you know you can do these things.\n\n  To protect your rights, we need to prevent others from denying you\nthese rights or asking you to surrender the rights.  Therefore, you have\ncertain responsibilities if you distribute copies of the software, or if\nyou modify it: responsibilities to respect the freedom of others.\n\n  For example, if you distribute copies of such a program, whether\ngratis or for a fee, you must pass on to the recipients the same\nfreedoms that you received.  You must make sure that they, too, receive\nor can get the source code.  And you must show them these terms so they\nknow their rights.\n\n  Developers that use the GNU GPL protect your rights with two steps:\n(1) assert copyright on the software, and (2) offer you this License\ngiving you legal permission to copy, distribute and/or modify it.\n\n  For the developers' and authors' protection, the GPL clearly explains\nthat there is no warranty for this free software.  For both users' and\nauthors' sake, the GPL requires that modified versions be marked as\nchanged, so that their problems will not be attributed erroneously to\nauthors of previous versions.\n\n  Some devices are designed to deny users access to install or run\nmodified versions of the software inside them, although the manufacturer\ncan do so.  This is fundamentally incompatible with the aim of\nprotecting users' freedom to change the software.  The systematic\npattern of such abuse occurs in the area of products for individuals to\nuse, which is precisely where it is most unacceptable.  Therefore, we\nhave designed this version of the GPL to prohibit the practice for those\nproducts.  If such problems arise substantially in other domains, we\nstand ready to extend this provision to those domains in future versions\nof the GPL, as needed to protect the freedom of users.\n\n  Finally, every program is threatened constantly by software patents.\nStates should not allow patents to restrict development and use of\nsoftware on general-purpose computers, but in those that do, we wish to\navoid the special danger that patents applied to a free program could\nmake it effectively proprietary.  To prevent this, the GPL assures that\npatents cannot be used to render the program non-free.\n\n  The precise terms and conditions for copying, distribution and\nmodification follow.\n\n                       TERMS AND CONDITIONS\n\n  0. Definitions.\n\n  \"This License\" refers to version 3 of the GNU General Public License.\n\n  \"Copyright\" also means copyright-like laws that apply to other kinds of\nworks, such as semiconductor masks.\n\n  \"The Program\" refers to any copyrightable work licensed under this\nLicense.  Each licensee is addressed as \"you\".  \"Licensees\" and\n\"recipients\" may be individuals or organizations.\n\n  To \"modify\" a work means to copy from or adapt all or part of the work\nin a fashion requiring copyright permission, other than the making of an\nexact copy.  The resulting work is called a \"modified version\" of the\nearlier work or a work \"based on\" the earlier work.\n\n  A \"covered work\" means either the unmodified Program or a work based\non the Program.\n\n  To \"propagate\" a work means to do anything with it that, without\npermission, would make you directly or secondarily liable for\ninfringement under applicable copyright law, except executing it on a\ncomputer or modifying a private copy.  Propagation includes copying,\ndistribution (with or without modification), making available to the\npublic, and in some countries other activities as well.\n\n  To \"convey\" a work means any kind of propagation that enables other\nparties to make or receive copies.  Mere interaction with a user through\na computer network, with no transfer of a copy, is not conveying.\n\n  An interactive user interface displays \"Appropriate Legal Notices\"\nto the extent that it includes a convenient and prominently visible\nfeature that (1) displays an appropriate copyright notice, and (2)\ntells the user that there is no warranty for the work (except to the\nextent that warranties are provided), that licensees may convey the\nwork under this License, and how to view a copy of this License.  If\nthe interface presents a list of user commands or options, such as a\nmenu, a prominent item in the list meets this criterion.\n\n  1. Source Code.\n\n  The \"source code\" for a work means the preferred form of the work\nfor making modifications to it.  \"Object code\" means any non-source\nform of a work.\n\n  A \"Standard Interface\" means an interface that either is an official\nstandard defined by a recognized standards body, or, in the case of\ninterfaces specified for a particular programming language, one that\nis widely used among developers working in that language.\n\n  The \"System Libraries\" of an executable work include anything, other\nthan the work as a whole, that (a) is included in the normal form of\npackaging a Major Component, but which is not part of that Major\nComponent, and (b) serves only to enable use of the work with that\nMajor Component, or to implement a Standard Interface for which an\nimplementation is available to the public in source code form.  A\n\"Major Component\", in this context, means a major essential component\n(kernel, window system, and so on) of the specific operating system\n(if any) on which the executable work runs, or a compiler used to\nproduce the work, or an object code interpreter used to run it.\n\n  The \"Corresponding Source\" for a work in object code form means all\nthe source code needed to generate, install, and (for an executable\nwork) run the object code and to modify the work, including scripts to\ncontrol those activities.  However, it does not include the work's\nSystem Libraries, or general-purpose tools or generally available free\nprograms which are used unmodified in performing those activities but\nwhich are not part of the work.  For example, Corresponding Source\nincludes interface definition files associated with source files for\nthe work, and the source code for shared libraries and dynamically\nlinked subprograms that the work is specifically designed to require,\nsuch as by intimate data communication or control flow between those\nsubprograms and other parts of the work.\n\n  The Corresponding Source need not include anything that users\ncan regenerate automatically from other parts of the Corresponding\nSource.\n\n  The Corresponding Source for a work in source code form is that\nsame work.\n\n  2. Basic Permissions.\n\n  All rights granted under this License are granted for the term of\ncopyright on the Program, and are irrevocable provided the stated\nconditions are met.  This License explicitly affirms your unlimited\npermission to run the unmodified Program.  The output from running a\ncovered work is covered by this License only if the output, given its\ncontent, constitutes a covered work.  This License acknowledges your\nrights of fair use or other equivalent, as provided by copyright law.\n\n  You may make, run and propagate covered works that you do not\nconvey, without conditions so long as your license otherwise remains\nin force.  You may convey covered works to others for the sole purpose\nof having them make modifications exclusively for you, or provide you\nwith facilities for running those works, provided that you comply with\nthe terms of this License in conveying all material for which you do\nnot control copyright.  Those thus making or running the covered works\nfor you must do so exclusively on your behalf, under your direction\nand control, on terms that prohibit them from making any copies of\nyour copyrighted material outside their relationship with you.\n\n  Conveying under any other circumstances is permitted solely under\nthe conditions stated below.  Sublicensing is not allowed; section 10\nmakes it unnecessary.\n\n  3. Protecting Users' Legal Rights From Anti-Circumvention Law.\n\n  No covered work shall be deemed part of an effective technological\nmeasure under any applicable law fulfilling obligations under article\n11 of the WIPO copyright treaty adopted on 20 December 1996, or\nsimilar laws prohibiting or restricting circumvention of such\nmeasures.\n\n  When you convey a covered work, you waive any legal power to forbid\ncircumvention of technological measures to the extent such circumvention\nis effected by exercising rights under this License with respect to\nthe covered work, and you disclaim any intention to limit operation or\nmodification of the work as a means of enforcing, against the work's\nusers, your or third parties' legal rights to forbid circumvention of\ntechnological measures.\n\n  4. Conveying Verbatim Copies.\n\n  You may convey verbatim copies of the Program's source code as you\nreceive it, in any medium, provided that you conspicuously and\nappropriately publish on each copy an appropriate copyright notice;\nkeep intact all notices stating that this License and any\nnon-permissive terms added in accord with section 7 apply to the code;\nkeep intact all notices of the absence of any warranty; and give all\nrecipients a copy of this License along with the Program.\n\n  You may charge any price or no price for each copy that you convey,\nand you may offer support or warranty protection for a fee.\n\n  5. Conveying Modified Source Versions.\n\n  You may convey a work based on the Program, or the modifications to\nproduce it from the Program, in the form of source code under the\nterms of section 4, provided that you also meet all of these conditions:\n\n    a) The work must carry prominent notices stating that you modified\n    it, and giving a relevant date.\n\n    b) The work must carry prominent notices stating that it is\n    released under this License and any conditions added under section\n    7.  This requirement modifies the requirement in section 4 to\n    \"keep intact all notices\".\n\n    c) You must license the entire work, as a whole, under this\n    License to anyone who comes into possession of a copy.  This\n    License will therefore apply, along with any applicable section 7\n    additional terms, to the whole of the work, and all its parts,\n    regardless of how they are packaged.  This License gives no\n    permission to license the work in any other way, but it does not\n    invalidate such permission if you have separately received it.\n\n    d) If the work has interactive user interfaces, each must display\n    Appropriate Legal Notices; however, if the Program has interactive\n    interfaces that do not display Appropriate Legal Notices, your\n    work need not make them do so.\n\n  A compilation of a covered work with other separate and independent\nworks, which are not by their nature extensions of the covered work,\nand which are not combined with it such as to form a larger program,\nin or on a volume of a storage or distribution medium, is called an\n\"aggregate\" if the compilation and its resulting copyright are not\nused to limit the access or legal rights of the compilation's users\nbeyond what the individual works permit.  Inclusion of a covered work\nin an aggregate does not cause this License to apply to the other\nparts of the aggregate.\n\n  6. Conveying Non-Source Forms.\n\n  You may convey a covered work in object code form under the terms\nof sections 4 and 5, provided that you also convey the\nmachine-readable Corresponding Source under the terms of this License,\nin one of these ways:\n\n    a) Convey the object code in, or embodied in, a physical product\n    (including a physical distribution medium), accompanied by the\n    Corresponding Source fixed on a durable physical medium\n    customarily used for software interchange.\n\n    b) Convey the object code in, or embodied in, a physical product\n    (including a physical distribution medium), accompanied by a\n    written offer, valid for at least three years and valid for as\n    long as you offer spare parts or customer support for that product\n    model, to give anyone who possesses the object code either (1) a\n    copy of the Corresponding Source for all the software in the\n    product that is covered by this License, on a durable physical\n    medium customarily used for software interchange, for a price no\n    more than your reasonable cost of physically performing this\n    conveying of source, or (2) access to copy the\n    Corresponding Source from a network server at no charge.\n\n    c) Convey individual copies of the object code with a copy of the\n    written offer to provide the Corresponding Source.  This\n    alternative is allowed only occasionally and noncommercially, and\n    only if you received the object code with such an offer, in accord\n    with subsection 6b.\n\n    d) Convey the object code by offering access from a designated\n    place (gratis or for a charge), and offer equivalent access to the\n    Corresponding Source in the same way through the same place at no\n    further charge.  You need not require recipients to copy the\n    Corresponding Source along with the object code.  If the place to\n    copy the object code is a network server, the Corresponding Source\n    may be on a different server (operated by you or a third party)\n    that supports equivalent copying facilities, provided you maintain\n    clear directions next to the object code saying where to find the\n    Corresponding Source.  Regardless of what server hosts the\n    Corresponding Source, you remain obligated to ensure that it is\n    available for as long as needed to satisfy these requirements.\n\n    e) Convey the object code using peer-to-peer transmission, provided\n    you inform other peers where the object code and Corresponding\n    Source of the work are being offered to the general public at no\n    charge under subsection 6d.\n\n  A separable portion of the object code, whose source code is excluded\nfrom the Corresponding Source as a System Library, need not be\nincluded in conveying the object code work.\n\n  A \"User Product\" is either (1) a \"consumer product\", which means any\ntangible personal property which is normally used for personal, family,\nor household purposes, or (2) anything designed or sold for incorporation\ninto a dwelling.  In determining whether a product is a consumer product,\ndoubtful cases shall be resolved in favor of coverage.  For a particular\nproduct received by a particular user, \"normally used\" refers to a\ntypical or common use of that class of product, regardless of the status\nof the particular user or of the way in which the particular user\nactually uses, or expects or is expected to use, the product.  A product\nis a consumer product regardless of whether the product has substantial\ncommercial, industrial or non-consumer uses, unless such uses represent\nthe only significant mode of use of the product.\n\n  \"Installation Information\" for a User Product means any methods,\nprocedures, authorization keys, or other information required to install\nand execute modified versions of a covered work in that User Product from\na modified version of its Corresponding Source.  The information must\nsuffice to ensure that the continued functioning of the modified object\ncode is in no case prevented or interfered with solely because\nmodification has been made.\n\n  If you convey an object code work under this section in, or with, or\nspecifically for use in, a User Product, and the conveying occurs as\npart of a transaction in which the right of possession and use of the\nUser Product is transferred to the recipient in perpetuity or for a\nfixed term (regardless of how the transaction is characterized), the\nCorresponding Source conveyed under this section must be accompanied\nby the Installation Information.  But this requirement does not apply\nif neither you nor any third party retains the ability to install\nmodified object code on the User Product (for example, the work has\nbeen installed in ROM).\n\n  The requirement to provide Installation Information does not include a\nrequirement to continue to provide support service, warranty, or updates\nfor a work that has been modified or installed by the recipient, or for\nthe User Product in which it has been modified or installed.  Access to a\nnetwork may be denied when the modification itself materially and\nadversely affects the operation of the network or violates the rules and\nprotocols for communication across the network.\n\n  Corresponding Source conveyed, and Installation Information provided,\nin accord with this section must be in a format that is publicly\ndocumented (and with an implementation available to the public in\nsource code form), and must require no special password or key for\nunpacking, reading or copying.\n\n  7. Additional Terms.\n\n  \"Additional permissions\" are terms that supplement the terms of this\nLicense by making exceptions from one or more of its conditions.\nAdditional permissions that are applicable to the entire Program shall\nbe treated as though they were included in this License, to the extent\nthat they are valid under applicable law.  If additional permissions\napply only to part of the Program, that part may be used separately\nunder those permissions, but the entire Program remains governed by\nthis License without regard to the additional permissions.\n\n  When you convey a copy of a covered work, you may at your option\nremove any additional permissions from that copy, or from any part of\nit.  (Additional permissions may be written to require their own\nremoval in certain cases when you modify the work.)  You may place\nadditional permissions on material, added by you to a covered work,\nfor which you have or can give appropriate copyright permission.\n\n  Notwithstanding any other provision of this License, for material you\nadd to a covered work, you may (if authorized by the copyright holders of\nthat material) supplement the terms of this License with terms:\n\n    a) Disclaiming warranty or limiting liability differently from the\n    terms of sections 15 and 16 of this License; or\n\n    b) Requiring preservation of specified reasonable legal notices or\n    author attributions in that material or in the Appropriate Legal\n    Notices displayed by works containing it; or\n\n    c) Prohibiting misrepresentation of the origin of that material, or\n    requiring that modified versions of such material be marked in\n    reasonable ways as different from the original version; or\n\n    d) Limiting the use for publicity purposes of names of licensors or\n    authors of the material; or\n\n    e) Declining to grant rights under trademark law for use of some\n    trade names, trademarks, or service marks; or\n\n    f) Requiring indemnification of licensors and authors of that\n    material by anyone who conveys the material (or modified versions of\n    it) with contractual assumptions of liability to the recipient, for\n    any liability that these contractual assumptions directly impose on\n    those licensors and authors.\n\n  All other non-permissive additional terms are considered \"further\nrestrictions\" within the meaning of section 10.  If the Program as you\nreceived it, or any part of it, contains a notice stating that it is\ngoverned by this License along with a term that is a further\nrestriction, you may remove that term.  If a license document contains\na further restriction but permits relicensing or conveying under this\nLicense, you may add to a covered work material governed by the terms\nof that license document, provided that the further restriction does\nnot survive such relicensing or conveying.\n\n  If you add terms to a covered work in accord with this section, you\nmust place, in the relevant source files, a statement of the\nadditional terms that apply to those files, or a notice indicating\nwhere to find the applicable terms.\n\n  Additional terms, permissive or non-permissive, may be stated in the\nform of a separately written license, or stated as exceptions;\nthe above requirements apply either way.\n\n  8. Termination.\n\n  You may not propagate or modify a covered work except as expressly\nprovided under this License.  Any attempt otherwise to propagate or\nmodify it is void, and will automatically terminate your rights under\nthis License (including any patent licenses granted under the third\nparagraph of section 11).\n\n  However, if you cease all violation of this License, then your\nlicense from a particular copyright holder is reinstated (a)\nprovisionally, unless and until the copyright holder explicitly and\nfinally terminates your license, and (b) permanently, if the copyright\nholder fails to notify you of the violation by some reasonable means\nprior to 60 days after the cessation.\n\n  Moreover, your license from a particular copyright holder is\nreinstated permanently if the copyright holder notifies you of the\nviolation by some reasonable means, this is the first time you have\nreceived notice of violation of this License (for any work) from that\ncopyright holder, and you cure the violation prior to 30 days after\nyour receipt of the notice.\n\n  Termination of your rights under this section does not terminate the\nlicenses of parties who have received copies or rights from you under\nthis License.  If your rights have been terminated and not permanently\nreinstated, you do not qualify to receive new licenses for the same\nmaterial under section 10.\n\n  9. Acceptance Not Required for Having Copies.\n\n  You are not required to accept this License in order to receive or\nrun a copy of the Program.  Ancillary propagation of a covered work\noccurring solely as a consequence of using peer-to-peer transmission\nto receive a copy likewise does not require acceptance.  However,\nnothing other than this License grants you permission to propagate or\nmodify any covered work.  These actions infringe copyright if you do\nnot accept this License.  Therefore, by modifying or propagating a\ncovered work, you indicate your acceptance of this License to do so.\n\n  10. Automatic Licensing of Downstream Recipients.\n\n  Each time you convey a covered work, the recipient automatically\nreceives a license from the original licensors, to run, modify and\npropagate that work, subject to this License.  You are not responsible\nfor enforcing compliance by third parties with this License.\n\n  An \"entity transaction\" is a transaction transferring control of an\norganization, or substantially all assets of one, or subdividing an\norganization, or merging organizations.  If propagation of a covered\nwork results from an entity transaction, each party to that\ntransaction who receives a copy of the work also receives whatever\nlicenses to the work the party's predecessor in interest had or could\ngive under the previous paragraph, plus a right to possession of the\nCorresponding Source of the work from the predecessor in interest, if\nthe predecessor has it or can get it with reasonable efforts.\n\n  You may not impose any further restrictions on the exercise of the\nrights granted or affirmed under this License.  For example, you may\nnot impose a license fee, royalty, or other charge for exercise of\nrights granted under this License, and you may not initiate litigation\n(including a cross-claim or counterclaim in a lawsuit) alleging that\nany patent claim is infringed by making, using, selling, offering for\nsale, or importing the Program or any portion of it.\n\n  11. Patents.\n\n  A \"contributor\" is a copyright holder who authorizes use under this\nLicense of the Program or a work on which the Program is based.  The\nwork thus licensed is called the contributor's \"contributor version\".\n\n  A contributor's \"essential patent claims\" are all patent claims\nowned or controlled by the contributor, whether already acquired or\nhereafter acquired, that would be infringed by some manner, permitted\nby this License, of making, using, or selling its contributor version,\nbut do not include claims that would be infringed only as a\nconsequence of further modification of the contributor version.  For\npurposes of this definition, \"control\" includes the right to grant\npatent sublicenses in a manner consistent with the requirements of\nthis License.\n\n  Each contributor grants you a non-exclusive, worldwide, royalty-free\npatent license under the contributor's essential patent claims, to\nmake, use, sell, offer for sale, import and otherwise run, modify and\npropagate the contents of its contributor version.\n\n  In the following three paragraphs, a \"patent license\" is any express\nagreement or commitment, however denominated, not to enforce a patent\n(such as an express permission to practice a patent or covenant not to\nsue for patent infringement).  To \"grant\" such a patent license to a\nparty means to make such an agreement or commitment not to enforce a\npatent against the party.\n\n  If you convey a covered work, knowingly relying on a patent license,\nand the Corresponding Source of the work is not available for anyone\nto copy, free of charge and under the terms of this License, through a\npublicly available network server or other readily accessible means,\nthen you must either (1) cause the Corresponding Source to be so\navailable, or (2) arrange to deprive yourself of the benefit of the\npatent license for this particular work, or (3) arrange, in a manner\nconsistent with the requirements of this License, to extend the patent\nlicense to downstream recipients.  \"Knowingly relying\" means you have\nactual knowledge that, but for the patent license, your conveying the\ncovered work in a country, or your recipient's use of the covered work\nin a country, would infringe one or more identifiable patents in that\ncountry that you have reason to believe are valid.\n\n  If, pursuant to or in connection with a single transaction or\narrangement, you convey, or propagate by procuring conveyance of, a\ncovered work, and grant a patent license to some of the parties\nreceiving the covered work authorizing them to use, propagate, modify\nor convey a specific copy of the covered work, then the patent license\nyou grant is automatically extended to all recipients of the covered\nwork and works based on it.\n\n  A patent license is \"discriminatory\" if it does not include within\nthe scope of its coverage, prohibits the exercise of, or is\nconditioned on the non-exercise of one or more of the rights that are\nspecifically granted under this License.  You may not convey a covered\nwork if you are a party to an arrangement with a third party that is\nin the business of distributing software, under which you make payment\nto the third party based on the extent of your activity of conveying\nthe work, and under which the third party grants, to any of the\nparties who would receive the covered work from you, a discriminatory\npatent license (a) in connection with copies of the covered work\nconveyed by you (or copies made from those copies), or (b) primarily\nfor and in connection with specific products or compilations that\ncontain the covered work, unless you entered into that arrangement,\nor that patent license was granted, prior to 28 March 2007.\n\n  Nothing in this License shall be construed as excluding or limiting\nany implied license or other defenses to infringement that may\notherwise be available to you under applicable patent law.\n\n  12. No Surrender of Others' Freedom.\n\n  If conditions are imposed on you (whether by court order, agreement or\notherwise) that contradict the conditions of this License, they do not\nexcuse you from the conditions of this License.  If you cannot convey a\ncovered work so as to satisfy simultaneously your obligations under this\nLicense and any other pertinent obligations, then as a consequence you may\nnot convey it at all.  For example, if you agree to terms that obligate you\nto collect a royalty for further conveying from those to whom you convey\nthe Program, the only way you could satisfy both those terms and this\nLicense would be to refrain entirely from conveying the Program.\n\n  13. Use with the GNU Affero General Public License.\n\n  Notwithstanding any other provision of this License, you have\npermission to link or combine any covered work with a work licensed\nunder version 3 of the GNU Affero General Public License into a single\ncombined work, and to convey the resulting work.  The terms of this\nLicense will continue to apply to the part which is the covered work,\nbut the special requirements of the GNU Affero General Public License,\nsection 13, concerning interaction through a network will apply to the\ncombination as such.\n\n  14. Revised Versions of this License.\n\n  The Free Software Foundation may publish revised and/or new versions of\nthe GNU General Public License from time to time.  Such new versions will\nbe similar in spirit to the present version, but may differ in detail to\naddress new problems or concerns.\n\n  Each version is given a distinguishing version number.  If the\nProgram specifies that a certain numbered version of the GNU General\nPublic License \"or any later version\" applies to it, you have the\noption of following the terms and conditions either of that numbered\nversion or of any later version published by the Free Software\nFoundation.  If the Program does not specify a version number of the\nGNU General Public License, you may choose any version ever published\nby the Free Software Foundation.\n\n  If the Program specifies that a proxy can decide which future\nversions of the GNU General Public License can be used, that proxy's\npublic statement of acceptance of a version permanently authorizes you\nto choose that version for the Program.\n\n  Later license versions may give you additional or different\npermissions.  However, no additional obligations are imposed on any\nauthor or copyright holder as a result of your choosing to follow a\nlater version.\n\n  15. Disclaimer of Warranty.\n\n  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY\nAPPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT\nHOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY\nOF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,\nTHE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\nPURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM\nIS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF\nALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n\n  16. Limitation of Liability.\n\n  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\nWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS\nTHE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY\nGENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE\nUSE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF\nDATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD\nPARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),\nEVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF\nSUCH DAMAGES.\n\n  17. Interpretation of Sections 15 and 16.\n\n  If the disclaimer of warranty and limitation of liability provided\nabove cannot be given local legal effect according to their terms,\nreviewing courts shall apply local law that most closely approximates\nan absolute waiver of all civil liability in connection with the\nProgram, unless a warranty or assumption of liability accompanies a\ncopy of the Program in return for a fee.\n\n                     END OF TERMS AND CONDITIONS\n\n            How to Apply These Terms to Your New Programs\n\n  If you develop a new program, and you want it to be of the greatest\npossible use to the public, the best way to achieve this is to make it\nfree software which everyone can redistribute and change under these terms.\n\n  To do so, attach the following notices to the program.  It is safest\nto attach them to the start of each source file to most effectively\nstate the exclusion of warranty; and each file should have at least\nthe \"copyright\" line and a pointer to where the full notice is found.\n\n    {one line to give the program's name and a brief idea of what it does.}\n    Copyright (C) {year}  {name of author}\n\n    This program is free software: you can redistribute it and/or modify\n    it under the terms of the GNU General Public License as published by\n    the Free Software Foundation, either version 3 of the License, or\n    (at your option) any later version.\n\n    This program is distributed in the hope that it will be useful,\n    but WITHOUT ANY WARRANTY; without even the implied warranty of\n    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n    GNU General Public License for more details.\n\n    You should have received a copy of the GNU General Public License\n    along with this program.  If not, see <http://www.gnu.org/licenses/>.\n\nAlso add information on how to contact you by electronic and paper mail.\n\n  If the program does terminal interaction, make it output a short\nnotice like this when it starts in an interactive mode:\n\n    {project}  Copyright (C) {year}  {fullname}\n    This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.\n    This is free software, and you are welcome to redistribute it\n    under certain conditions; type `show c' for details.\n\nThe hypothetical commands `show w' and `show c' should show the appropriate\nparts of the General Public License.  Of course, your program's commands\nmight be different; for a GUI interface, you would use an \"about box\".\n\n  You should also get your employer (if you work as a programmer) or school,\nif any, to sign a \"copyright disclaimer\" for the program, if necessary.\nFor more information on this, and how to apply and follow the GNU GPL, see\n<http://www.gnu.org/licenses/>.\n\n  The GNU General Public License does not permit incorporating your program\ninto proprietary programs.  If your program is a subroutine library, you\nmay consider it more useful to permit linking proprietary applications with\nthe library.  If this is what you want to do, use the GNU Lesser General\nPublic License instead of this License.  But first, please read\n<http://www.gnu.org/philosophy/why-not-lgpl.html>.\n</pre>\n</div>\n{{ form_start(form) }}\n\t{% set messages = app.session.flashbag.get('danger') %}\n\t<div class=\"bottom {% if messages %}notification fail{% endif %}\">\n\t\t{{ form_widget(form.accept_terms) }}{{ form_label(form.accept_terms) }}\n\t\t{{ form_widget(form.submit, {'attr': {'class': 'btn btn-blue'}}) }}\n    \t{% for key, message in messages %}\n    \t\t<span>{{ message|raw }}</span><br>\n\t\t{% endfor %}\n\t</div>\n{{ form_end(form) }}\n{% endblock %}\n"
  },
  {
    "path": "newscoop/install/Resources/views/post-process.twig",
    "content": "{% extends \"layout.twig\" %}\n\n{% block header %}Newscoop has been successfully installed!{% endblock %}\n{% block content %}\n<div class=\"middle\">\n<div class=\"text_links\">\n\t<p>\n\t\t<strong>Find out more</strong> <br>\n\t\t\tPlease read the <em>Newscoop for Journalists and Editors</em> manual, which covers everything required to begin publishing news.\n\t</p>\n\t\t<a href=\"http://sourcefabric.booktype.pro/newscoop-44-for-journalists-and-editors/getting-started/\" target=\"_blank\" class=\"btn btn-white\">Read manual</a>\n\n\t<p>\n\t\t<strong>The administration interface</strong> <br>\n\t\t\tYou can start creating and editing content right now, using Newscoop's special interface for the staff of your publication.\n\t</p>\n\t\t<a href=\"/admin\" target=\"_blank\" class=\"btn btn-blue\">Admin interface</a>\n</div>\n\n<br>\n\t<p><strong>Cron jobs</strong> <br>\n\t<em>Newscoop</em> needs some tasks to be run automatically, in order to keep specific content up to date. At this step, we will install them for you.</p>\n\n\t<p>These tasks will run as cron jobs on your system, so you will be able to edit and customize them to meet your publication's requirements.</p>\n\n\t<p><strong>Autopublish:</strong> <br>\n\tModifies the status of issues and articles scheduled for certain actions.</p>\n\n\t<p><strong>Events Notifier:</strong> <br>\n\tSends emails to administrative users containing the latest events that took place in Newscoop.</p>\n\n\t<p><strong>Indexer:</strong> <br>\n\tIndexes the article content (updates the search engine database).</p>\n\n\t<p><strong>Statistics:</strong> <br>\n\tUpdates Web site statistics for your publication.</p>\n\n\t<p><strong>Subscriptions Notifier:</strong> <br>\n\tSends emails to subscribers alerting them when their subscription ends.</p>\n\n</div>\n{% endblock %}\n"
  },
  {
    "path": "newscoop/install/Resources/views/prepare.twig",
    "content": "{% extends \"layout.twig\" %}\n\n{% block fixed %}{% endblock %}\n{% block header %}Database Configuration{% endblock %}\n{% block content %}\n<form role=\"form\" action=\"#\" method=\"post\">\n    {{ form_row(form.server_name) }}\n    {{ form_row(form.server_port) }}\n    {{ form_row(form.user_name) }}\n    {{ form_row(form.user_password) }}\n    {{ form_row(form.database_name) }}\n    {{ form_row(form.override_database) }}\n    {{ form_widget(form._token) }}\n    {% set messages = app.session.flashbag.get('danger') %}\n    <div class=\"bottom{% if messages %} notification fail{% endif %}\">\n    \t{% for key, message in messages %}\n    \t\t<span>{{ message|raw }}</span>{% if messages|length > 1 %}<br>{% endif %}\n\t\t{% endfor %}\n\t\t<input class=\"btn btn-blue\" type=\"submit\" value=\"Next\">\n\t\t<input class=\"btn btn-white\" type=\"reset\" value=\"Reset\">\n\t</div>\n</form>\n{% endblock %}"
  },
  {
    "path": "newscoop/install/Resources/views/process.twig",
    "content": "{% extends \"layout.twig\" %}\n\n{% block fixed %}{% endblock %}\n{% block header %}Main settings{% endblock %}\n{% block content %}\n<form role=\"form\" action=\"#\" method=\"post\">\n    {{ form_row(form.site_title) }}\n    {{ form_row(form.recheck_user_password) }}\n    {{ form_row(form.user_email) }}\n    {{ form_widget(form._token) }}\n    {% set messages = app.session.flashbag.get('danger') %}\n\t<div class=\"bottom {% if messages %}notification fail{% endif %}\">\n    \t{% for key, message in messages %}\n    \t\t<span>{{ message|raw }}</span>{% if messages|length > 1 %}<br>{% endif %}\n\t\t{% endfor %}\n\t\t<input class=\"btn btn-blue\" type=\"submit\" value=\"Finish\">\n\t\t<input class=\"btn btn-white\" type=\"reset\" value=\"Reset\">\n\t</div>\n</form>\n{% endblock %}"
  },
  {
    "path": "newscoop/install/Resources/views/upgrade/errors.twig",
    "content": "{% extends \"upgrade_layout.twig\" %}\n\n{% block content %}\n\t<p>Your Newscoop instance is upgraded from <span style=\"font-weight: bold; font-style: italic;\">{{ oldVersions.dbInfo }}</span> to <span style=\"font-weight: bold; font-style: italic;\">{{ newVersions.dbInfo }}</span> but <span style=\"font-weight: bold; font-style: italic;\">with some errors.</span></p>\n\t<p>We skiped those errors, upgrade process finished, but please contact with you system administrator to check what is the issue. You can find whole upgrade log inside <span style=\"font-weight: bold; font-style: italic;\">log/upgrade.log</span> file.</p>\n\n\t<h2>Errors in upgrade process.</h2>\n\n\t<pre style=\"border: 1px solid black;padding: 5px;background-color: #000;color: #FFF;\">\n{% for error in errors %}\n{{ error }} <br />\n{% endfor %}\n\t</pre>\n{% endblock %}"
  },
  {
    "path": "newscoop/install/Resources/views/upgrade/success.twig",
    "content": "{% extends \"upgrade_layout.twig\" %}\n\n{% block content %}\n\t<p>Your Newscoop instance is upgraded from <span style=\"font-weight: bold; font-style: italic;\">{{ oldVersions.dbInfo }}</span> to <span style=\"font-weight: bold; font-style: italic;\">{{ newVersions.dbInfo }}</span> without errors.</span></p>\n\t<p style=\"text-align:center\"><a href=\"/admin\">Continue</a></p>\n{% endblock %}"
  },
  {
    "path": "newscoop/install/Resources/views/upgrade_layout.twig",
    "content": "<!doctype html>\n<html lang=\"en\">\n<head>\n    <meta charset=\"UTF-8\">\n    <title>Newscoop - upgrade message</title>\n    <style type=\"text/css\">body{background-color:#fafafa;color:#696969;font:12px/20px Arial, Helvetica, sans-serif;padding-top:70px}\n.pageWrapper{margin:0 auto;overflow:hidden;padding:15px;width:960px}\n.content{background:linear-gradient(#f8f8f80%,#f2f2f2100%);border:1px solid #e4e4e4;padding:16px}\n.footer{clear:both;color:#666;font-size:11px;line-height:16px;margin-top:4px;padding:5px 0 0;text-align:center}\n.logo{margin:10px 0 30px;text-align:center}\na{color:#007fb3;text-decoration:none}\na:hover{text-decoration:underline}\nh2{-moz-box-shadow:0 2px 2px rgba(0,0,0,.10);-webkit-box-shadow:0 2px 2px rgba(0,0,0,.10);background:linear-gradient(#fafafa0%,#f6f6f6100%);border:1px solid #afafaf;border-left-color:#e5e5e5;border-right-color:#e5e5e5;border-top-color:#FFF;box-shadow:0 2px 2px rgba(0,0,0,.10);color:#444;font-size:15px;margin:0 0 10px;padding:8px 10px;text-align:left}\np{margin:0 0 10px; font-size: 15px;}\npre{white-space: pre-wrap; /* CSS3 */white-space: -moz-pre-wrap; /* Mozilla, post millennium */white-space: -pre-wrap; /* Opera 4-6 */white-space: -o-pre-wrap; /* Opera 7 */word-wrap: break-word; /* Internet Explorer 5.5+ */}</style>\n</head>\n<body>  \n<div class=\"pageWrapper\">\n    <div class=\"content\">\n        <div class=\"logo\"><img src=\"data:image/gif;base64,R0lGODlh6gBEAMQQAAB/sz2dxHq61LjX5Obu8Q+Gt5nJ3B+Ou9bm7cff6S6Vv1yrzKjQ4E2kyInB2Gyz0P///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4wLWMwNjAgNjEuMTM0Nzc3LCAyMDEwLzAyLzEyLTE3OjMyOjAwICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IFdpbmRvd3MiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MTA1ODM0QzIxRkRDMTFFMEIzRjE5NEE2RUM3QkJEN0EiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MTA1ODM0QzMxRkRDMTFFMEIzRjE5NEE2RUM3QkJEN0EiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoxMDU4MzRDMDFGREMxMUUwQjNGMTk0QTZFQzdCQkQ3QSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDoxMDU4MzRDMTFGREMxMUUwQjNGMTk0QTZFQzdCQkQ3QSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PgH//v38+/r5+Pf29fTz8vHw7+7t7Ovq6ejn5uXk4+Lh4N/e3dzb2tnY19bV1NPS0dDPzs3My8rJyMfGxcTDwsHAv769vLu6ubi3trW0s7KxsK+urayrqqmop6alpKOioaCfnp2cm5qZmJeWlZSTkpGQj46NjIuKiYiHhoWEg4KBgH9+fXx7enl4d3Z1dHNycXBvbm1sa2ppaGdmZWRjYmFgX15dXFtaWVhXVlVUU1JRUE9OTUxLSklIR0ZFRENCQUA/Pj08Ozo5ODc2NTQzMjEwLy4tLCsqKSgnJiUkIyIhIB8eHRwbGhkYFxYVFBMSERAPDg0MCwoJCAcGBQQDAgEAACH5BAEAABAALAAAAADqAEQAAAX/ICSOZGmeaKqubOu+cCzPMTHQeK7vfO//LYKhAQAUFgmgcslsOp1CYnFaPDgQz6x2y20ypNTwtGHoms/o9IixKIjf4WNSTa/baWw3fC+2Yu+AgYFtfIV7ZASCiotdBA4KhpFiRzeMlpdLCQ8Hkp1FC5ihojxsnpGVo6mqMEKQpm8Bq7KzLQibr1SotLu8JKWvsb3Cw62eusPIu7Z6fMErAtDRcykG0dDJ2E7Me8cofSsBYdnjQAaGBy5vAirhVOTvPGB7ZS1vBX8n7VPw/DQI5y/ggEKhr0i/gzAcGKJXD043EQUBIJzIghMfdAHhKCAojqJHEwkWwuDDkETEjyhH/ywohDEjnAKJSpxUkaCaAAPTuCBgAM3BQxQDHEBjgI9F0KFFV+zs+XPFAKY/tr0p2XDPAxMzTRAQIBXAAQYlQlLJCSGMA5lUro5IELFIg6YIVvahWiLuGwV0SxiwSOVIUhECqMTiGmfdDnMXZYQJwLdI0qwkEjQWsyCmiMYlB4QZOCIMWBGIrVoeYaArFQWjSZsek1oEgbZ96QaeosDV3dYx5E1VLJjBYrTuwq6m0oCE3E8kZk9pCUEzlZjOC6EmEZrPdOqRNpYgYJtkCeXZc/xLzHtKrIifIXYcQWDygQABpJ4FfZqEbgCWwWuHEFFBgO4AVDYCAsP9tlYnao3wgP8k9yRnimEzKLRHAemNJBgE4y1nGWQQgAfAfBAQcJwRMWVYhGVdpSePYSYCMM0AFiUogm4BJCGEVKhE1ICNDkiFT3RFFGBAImxt5uBinzEQEUw0TEbFAn+lcyEEC1IBIYeNQThCQSA2VolYYUC4TSVAOuMaXnUZuNY29LRoJgS+PalSGMdEhI+HnI2gG4gwgLkYWTEYSMA2DfK3XnNhtBZnEc6MaJiEBvopkQhAMrkCpEV0o5AV+YUBaEEFjLBNcSUA+eEIHp4waH0yjFhFhTSoWR0ApEKmn6rrLQpAMK7uA0F1zrR4QF72UcFcZFgZewKmLiJKRV6jonqocdO6QKj/ljmoCQGAN0AmTwHwhRvuegT0dRkcSThKgpMFPADouea9EK0Jpt4w67sF7ZfqCbM2hUJ1D+AW65SUhrERZLAVgkp3CZg44lmN5aRrGMOaEKZLRWArQovr7GtClb52WG3BucTQTgBRZkuwCK46gPArqIAMgAHVDcBMA+VOEapeF+V0sZRTaCzCxR5/t17RJJjKJwv/KOAvDtpiSCiAJsG8xpMyEwDGV8SdMACAnnVmJcYACF3W2EhLG5zIa5f6swsMEMtD1GzvUXW8gdJm20aYyrN00vcFGdPbLBA+INEjU3l04qbKfQbdEDjZtjzHtpDwVZKOtYIjYM/X2JsqzOs2/xVgMYsvq3UbxC+dgUA+8aEeppyCh1N8ZtrOLTAwb0GVU5pavst66uwUeTVGauqTmuCq7I+vfPcbSRvuGrGmThFT4HmyJ2AJugZjugkEFqBl7MnqLPYU2UMgKYhph7hN72pAjqHdJBCaFHcAKPDuGy0xWwRdNstfasq0sajh71UikNTxSIa+OWnueY5RG/GUFwYZ2UF+ioPekXRGjxulJTX34Uz1AJAUmTmNPd3hjI7+wAAAXSkMDfhDacLwozi0STcLpF2NEngf5jUPb6oyzXYKZDAT+K8k3wDOaR7QAKkwJHN72I/6EFSCwMGhKLQrhAUv6LwS+C95IxihPf6Suf+iRCR9B5QOzwxRALLMSiOpSaN3NpgdgcWviyUA2wl0V4gACOx9RiOdqhJGm9a8MQ7vOuRpcCPH3QQSfVG04x2BCBQxoMAud3GcPBY4vBNRA2xGEIDAEhC4dtmRlPxzXIckF8MTpGovhUkJAXgSDaKYAQE2EYBPgkBLaDxtQL10wLtQkAChDMWOHnvKUFLCTC60r5nQzMIzo0nNJUyzmtjswTWzyU0cbLOb4ITBN8NJzmckrpzoTKc618nOdsJjAEQowI5IEBdOKECUCYSPSXbIFnEhwRfhkOcc+imuHRqgoAGgh5ICoKWDiusB+HhAQZ8In2koyQjzdGcKqvclqWj/xzkkyFQng/QHZjVohDegnWGkwBzaWaotanFOJWbVRo2iYCXFwd9AwnGAG0ioDCAV2w2Cysd1rKoyAbyKc3wygKYmIjBOa+oA/sCMaQTGe0X4TDjWYZedydR9tCKAZAJk0xOsRAFYIMAfcsYQIhQnqEMDwFBVZ6irIAY6BsDCV40GOs3I81SA2ZVrsqoewwT1q3H6wwDyWlZ6jQEVzukUOuB6trnKdbFuOMtVvfYJaDAkMAeIxh8W1ACFOAO00IDESwPU1ICSLKVeaSwLGMAXPzoLOxKhrEirN53NOpZgHqoEJITpSeQBIEFtocdXfSvbFVxUsJQNTKh0K1dnMYZE3IEFnbOYatX8STUR4zGAcz4D1abOhh48bQeIlivY5qZgGhKaHwDSs5JYOGetuzVIeEWgENzZ4LUmYC5/KZPdLZWtsBBYSUsQW9z/ulc9A4mTCCAxHbHMJ2MDxs9tExxb+Z7lNbHdq4PeRIT3/KfDvm3PgQ21DucoV6Q5U0s8H/yrIvgHOXAKkisOEJMqHcAiAwnqfjN4AD2ABaUiexNh5ZuELFZiq+rByF59rIe/NZa26LMMlt1SlAfowZQkM3BLvFyFF4sBtmaK7Ag4oVkkGdiw/3MWKgjjFSubIQQAOw==\" border=\"0\" alt=\"Newscoop logo\">\n        </div>\n        <h2>Upgrade is finished</h2>\n        {% block content %}{% endblock %}\n        <p style=\"font-size:12px;\">You can remove this file (upgrade.php), it will be provided again with next release.</p>\n    </div>\n    <div class=\"footer\">\n        <a href=\"http://newscoop.sourcefabric.org/\" target=\"_blank\">\n            Newscoop</a>, the open content management system for professional journalists.\n         <br>\n            ©&nbsp;{{ \"now\"|date(\"Y\") }}&nbsp;<a href=\"http://www.sourcefabric.org\" target=\"_blank\">Sourcefabric z.ú.</a>&nbsp;Newscoop is distributed under GNU GPL v.3    \n    </div>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/install/SymfonyRequirements.php",
    "content": "<?php\n\n/*\n * This file is part of the Symfony package.\n *\n * (c) Fabien Potencier <fabien@symfony.com>\n *\n * For the full copyright and license information, please view the LICENSE\n * file that was distributed with this source code.\n */\n\n/*\n * Users of PHP 5.2 should be able to run the requirements checks.\n * This is why the file and all classes must be compatible with PHP 5.2+\n * (e.g. not using namespaces and closures).\n *\n * ************** CAUTION **************\n *\n * DO NOT EDIT THIS FILE as it will be overridden by Composer as part of\n * the installation/update process. The original file resides in the\n * SensioDistributionBundle.\n *\n * ************** CAUTION **************\n */\n\n/**\n * Represents a single PHP requirement, e.g. an installed extension.\n * It can be a mandatory requirement or an optional recommendation.\n * There is a special subclass, named PhpIniRequirement, to check a php.ini configuration.\n *\n * @author Tobias Schultze <http://tobion.de>\n */\nclass Requirement\n{\n    private $fulfilled;\n    private $testMessage;\n    private $helpText;\n    private $helpHtml;\n    private $optional;\n\n    /**\n     * Constructor that initializes the requirement.\n     *\n     * @param Boolean     $fulfilled   Whether the requirement is fulfilled\n     * @param string      $testMessage The message for testing the requirement\n     * @param string      $helpHtml    The help text formatted in HTML for resolving the problem\n     * @param string|null $helpText    The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags)\n     * @param Boolean     $optional    Whether this is only an optional recommendation not a mandatory requirement\n     */\n    public function __construct($fulfilled, $testMessage, $helpHtml, $helpText = null, $optional = false)\n    {\n        $this->fulfilled = (Boolean) $fulfilled;\n        $this->testMessage = (string) $testMessage;\n        $this->helpHtml = (string) $helpHtml;\n        $this->helpText = null === $helpText ? strip_tags($this->helpHtml) : (string) $helpText;\n        $this->optional = (Boolean) $optional;\n    }\n\n    /**\n     * Returns whether the requirement is fulfilled.\n     *\n     * @return Boolean true if fulfilled, otherwise false\n     */\n    public function isFulfilled()\n    {\n        return $this->fulfilled;\n    }\n\n    /**\n     * Returns the message for testing the requirement.\n     *\n     * @return string The test message\n     */\n    public function getTestMessage()\n    {\n        return $this->testMessage;\n    }\n\n    /**\n     * Returns the help text for resolving the problem\n     *\n     * @return string The help text\n     */\n    public function getHelpText()\n    {\n        return $this->helpText;\n    }\n\n    /**\n     * Returns the help text formatted in HTML.\n     *\n     * @return string The HTML help\n     */\n    public function getHelpHtml()\n    {\n        return $this->helpHtml;\n    }\n\n    /**\n     * Returns whether this is only an optional recommendation and not a mandatory requirement.\n     *\n     * @return Boolean true if optional, false if mandatory\n     */\n    public function isOptional()\n    {\n        return $this->optional;\n    }\n}\n\n/**\n * Represents a PHP requirement in form of a php.ini configuration.\n *\n * @author Tobias Schultze <http://tobion.de>\n */\nclass PhpIniRequirement extends Requirement\n{\n    /**\n     * Constructor that initializes the requirement.\n     *\n     * @param string           $cfgName    The configuration name used for ini_get()\n     * @param Boolean|callback $evaluation Either a Boolean indicating whether the configuration should evaluate to true or false,\n                                                    or a callback function receiving the configuration value as parameter to determine the fulfillment of the requirement\n     * @param Boolean $approveCfgAbsence If true the Requirement will be fulfilled even if the configuration option does not exist, i.e. ini_get() returns false.\n                                                    This is helpful for abandoned configs in later PHP versions or configs of an optional extension, like Suhosin.\n                                                    Example: You require a config to be true but PHP later removes this config and defaults it to true internally.\n     * @param string|null $testMessage The message for testing the requirement (when null and $evaluation is a Boolean a default message is derived)\n     * @param string|null $helpHtml    The help text formatted in HTML for resolving the problem (when null and $evaluation is a Boolean a default help is derived)\n     * @param string|null $helpText    The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags)\n     * @param Boolean     $optional    Whether this is only an optional recommendation not a mandatory requirement\n     */\n    public function __construct($cfgName, $evaluation, $approveCfgAbsence = false, $testMessage = null, $helpHtml = null, $helpText = null, $optional = false)\n    {\n        $cfgValue = ini_get($cfgName);\n\n        if (is_callable($evaluation)) {\n            if (null === $testMessage || null === $helpHtml) {\n                throw new InvalidArgumentException('You must provide the parameters testMessage and helpHtml for a callback evaluation.');\n            }\n\n            $fulfilled = call_user_func($evaluation, $cfgValue);\n        } else {\n            if (null === $testMessage) {\n                $testMessage = sprintf('%s %s be %s in php.ini',\n                    $cfgName,\n                    $optional ? 'should' : 'must',\n                    $evaluation ? 'enabled' : 'disabled'\n                );\n            }\n\n            if (null === $helpHtml) {\n                $helpHtml = sprintf('Set <strong>%s</strong> to <strong>%s</strong> in php.ini<a href=\"#phpini\">*</a>.',\n                    $cfgName,\n                    $evaluation ? 'on' : 'off'\n                );\n            }\n\n            $fulfilled = $evaluation == $cfgValue;\n        }\n\n        parent::__construct($fulfilled || ($approveCfgAbsence && false === $cfgValue), $testMessage, $helpHtml, $helpText, $optional);\n    }\n}\n\n/**\n * A RequirementCollection represents a set of Requirement instances.\n *\n * @author Tobias Schultze <http://tobion.de>\n */\nclass RequirementCollection implements IteratorAggregate\n{\n    private $requirements = array();\n\n    /**\n     * Gets the current RequirementCollection as an Iterator.\n     *\n     * @return Traversable A Traversable interface\n     */\n    public function getIterator()\n    {\n        return new ArrayIterator($this->requirements);\n    }\n\n    /**\n     * Adds a Requirement.\n     *\n     * @param Requirement $requirement A Requirement instance\n     */\n    public function add(Requirement $requirement)\n    {\n        $this->requirements[] = $requirement;\n    }\n\n    /**\n     * Adds a mandatory requirement.\n     *\n     * @param Boolean     $fulfilled   Whether the requirement is fulfilled\n     * @param string      $testMessage The message for testing the requirement\n     * @param string      $helpHtml    The help text formatted in HTML for resolving the problem\n     * @param string|null $helpText    The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags)\n     */\n    public function addRequirement($fulfilled, $testMessage, $helpHtml, $helpText = null)\n    {\n        $this->add(new Requirement($fulfilled, $testMessage, $helpHtml, $helpText, false));\n    }\n\n    /**\n     * Adds an optional recommendation.\n     *\n     * @param Boolean     $fulfilled   Whether the recommendation is fulfilled\n     * @param string      $testMessage The message for testing the recommendation\n     * @param string      $helpHtml    The help text formatted in HTML for resolving the problem\n     * @param string|null $helpText    The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags)\n     */\n    public function addRecommendation($fulfilled, $testMessage, $helpHtml, $helpText = null)\n    {\n        $this->add(new Requirement($fulfilled, $testMessage, $helpHtml, $helpText, true));\n    }\n\n    /**\n     * Adds a mandatory requirement in form of a php.ini configuration.\n     *\n     * @param string           $cfgName    The configuration name used for ini_get()\n     * @param Boolean|callback $evaluation Either a Boolean indicating whether the configuration should evaluate to true or false,\n                                                    or a callback function receiving the configuration value as parameter to determine the fulfillment of the requirement\n     * @param Boolean $approveCfgAbsence If true the Requirement will be fulfilled even if the configuration option does not exist, i.e. ini_get() returns false.\n                                                    This is helpful for abandoned configs in later PHP versions or configs of an optional extension, like Suhosin.\n                                                    Example: You require a config to be true but PHP later removes this config and defaults it to true internally.\n     * @param string      $testMessage The message for testing the requirement (when null and $evaluation is a Boolean a default message is derived)\n     * @param string      $helpHtml    The help text formatted in HTML for resolving the problem (when null and $evaluation is a Boolean a default help is derived)\n     * @param string|null $helpText    The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags)\n     */\n    public function addPhpIniRequirement($cfgName, $evaluation, $approveCfgAbsence = false, $testMessage = null, $helpHtml = null, $helpText = null)\n    {\n        $this->add(new PhpIniRequirement($cfgName, $evaluation, $approveCfgAbsence, $testMessage, $helpHtml, $helpText, false));\n    }\n\n    /**\n     * Adds an optional recommendation in form of a php.ini configuration.\n     *\n     * @param string           $cfgName    The configuration name used for ini_get()\n     * @param Boolean|callback $evaluation Either a Boolean indicating whether the configuration should evaluate to true or false,\n                                                    or a callback function receiving the configuration value as parameter to determine the fulfillment of the requirement\n     * @param Boolean $approveCfgAbsence If true the Requirement will be fulfilled even if the configuration option does not exist, i.e. ini_get() returns false.\n                                                    This is helpful for abandoned configs in later PHP versions or configs of an optional extension, like Suhosin.\n                                                    Example: You require a config to be true but PHP later removes this config and defaults it to true internally.\n     * @param string      $testMessage The message for testing the requirement (when null and $evaluation is a Boolean a default message is derived)\n     * @param string      $helpHtml    The help text formatted in HTML for resolving the problem (when null and $evaluation is a Boolean a default help is derived)\n     * @param string|null $helpText    The help text (when null, it will be inferred from $helpHtml, i.e. stripped from HTML tags)\n     */\n    public function addPhpIniRecommendation($cfgName, $evaluation, $approveCfgAbsence = false, $testMessage = null, $helpHtml = null, $helpText = null)\n    {\n        $this->add(new PhpIniRequirement($cfgName, $evaluation, $approveCfgAbsence, $testMessage, $helpHtml, $helpText, true));\n    }\n\n    /**\n     * Adds a requirement collection to the current set of requirements.\n     *\n     * @param RequirementCollection $collection A RequirementCollection instance\n     */\n    public function addCollection(RequirementCollection $collection)\n    {\n        $this->requirements = array_merge($this->requirements, $collection->all());\n    }\n\n    /**\n     * Returns both requirements and recommendations.\n     *\n     * @return array Array of Requirement instances\n     */\n    public function all()\n    {\n        return $this->requirements;\n    }\n\n    /**\n     * Returns all mandatory requirements.\n     *\n     * @return array Array of Requirement instances\n     */\n    public function getRequirements()\n    {\n        $array = array();\n        foreach ($this->requirements as $req) {\n            if (!$req->isOptional()) {\n                $array[] = $req;\n            }\n        }\n\n        return $array;\n    }\n\n    /**\n     * Returns the mandatory requirements that were not met.\n     *\n     * @return array Array of Requirement instances\n     */\n    public function getFailedRequirements()\n    {\n        $array = array();\n        foreach ($this->requirements as $req) {\n            if (!$req->isFulfilled() && !$req->isOptional()) {\n                $array[] = $req;\n            }\n        }\n\n        return $array;\n    }\n\n    /**\n     * Returns all optional recommendations.\n     *\n     * @return array Array of Requirement instances\n     */\n    public function getRecommendations()\n    {\n        $array = array();\n        foreach ($this->requirements as $req) {\n            if ($req->isOptional()) {\n                $array[] = $req;\n            }\n        }\n\n        return $array;\n    }\n\n    /**\n     * Returns the recommendations that were not met.\n     *\n     * @return array Array of Requirement instances\n     */\n    public function getFailedRecommendations()\n    {\n        $array = array();\n        foreach ($this->requirements as $req) {\n            if (!$req->isFulfilled() && $req->isOptional()) {\n                $array[] = $req;\n            }\n        }\n\n        return $array;\n    }\n\n    /**\n     * Returns whether a php.ini configuration is not correct.\n     *\n     * @return Boolean php.ini configuration problem?\n     */\n    public function hasPhpIniConfigIssue()\n    {\n        foreach ($this->requirements as $req) {\n            if (!$req->isFulfilled() && $req instanceof PhpIniRequirement) {\n                return true;\n            }\n        }\n\n        return false;\n    }\n\n    /**\n     * Returns the PHP configuration file (php.ini) path.\n     *\n     * @return string|false php.ini file path\n     */\n    public function getPhpIniConfigPath()\n    {\n        return get_cfg_var('cfg_file_path');\n    }\n}\n\n/**\n * This class specifies all requirements and optional recommendations that\n * are necessary to run the Symfony Standard Edition.\n *\n * @author Tobias Schultze <http://tobion.de>\n * @author Fabien Potencier <fabien@symfony.com>\n */\nclass SymfonyRequirements extends RequirementCollection\n{\n    const REQUIRED_PHP_VERSION = '5.3.3';\n\n    /**\n     * Constructor that initializes the requirements.\n     */\n    public function __construct()\n    {\n        /* mandatory requirements follow */\n\n        $installedPhpVersion = phpversion();\n\n        $this->addRequirement(\n            version_compare($installedPhpVersion, self::REQUIRED_PHP_VERSION, '>='),\n            sprintf('PHP version must be at least %s (%s installed)', self::REQUIRED_PHP_VERSION, $installedPhpVersion),\n            sprintf('You are running PHP version \"<strong>%s</strong>\", but Symfony needs at least PHP \"<strong>%s</strong>\" to run.\n                Before using Symfony, upgrade your PHP installation, preferably to the latest version.',\n                $installedPhpVersion, self::REQUIRED_PHP_VERSION),\n            sprintf('Install PHP %s or newer (installed version is %s)', self::REQUIRED_PHP_VERSION, $installedPhpVersion)\n        );\n\n        $this->addRequirement(\n            version_compare($installedPhpVersion, '5.3.16', '!='),\n            'PHP version must not be 5.3.16 as Symfony won\\'t work properly with it',\n            'Install PHP 5.3.17 or newer (or downgrade to an earlier PHP version)'\n        );\n\n        $this->addRequirement(\n            is_dir(__DIR__.'/../vendor/composer'),\n            'Vendor libraries must be installed',\n            'Vendor libraries are missing. Install composer following instructions from <a href=\"http://getcomposer.org/\">http://getcomposer.org/</a>. ' .\n                'Then run \"<strong>php composer.phar install</strong>\" to install them.'\n        );\n\n        $baseDir = realpath(__DIR__.'/../');\n\n        $this->addRequirement(\n            is_writable(__DIR__.'/../cache'),\n            \"cache/ directory must be writable\",\n            \"Change the permissions of the \\\"<strong>$baseDir/cache/</strong>\\\" directory so that the web server can write into it.\"\n        );\n\n        $this->addRequirement(\n            is_writable(__DIR__.'/../log'),\n            \"log/ directory must be writable\",\n            \"Change the permissions of the \\\"<strong>$baseDir/log/</strong>\\\" directory so that the web server can write into it.\"\n        );\n\n        $this->addRequirement(\n            is_writable(__DIR__.'/../conf/'),\n            \"conf/ directory must be writable\",\n            \"Change the permissions of the \\\"<strong>$baseDir/conf/</strong>\\\" directory so that the web server can write into it.\"\n        );\n\n        $this->addRequirement(\n            is_writable(__DIR__.'/../library/Proxy'),\n            \"library/Proxy/ directory must be writable\",\n            \"Change the permissions of the \\\"<strong>$baseDir/library/Proxy/</strong>\\\" directory so that the web server can write into it.\"\n        );\n\n        $this->addRequirement(\n            is_writable(__DIR__.'/../themes'),\n            \"themes/ directory must be writable\",\n            \"Change the permissions of the \\\"<strong>$baseDir/themes/</strong>\\\" directory so that the web server can write into it.\"\n        );\n\n        $this->addRequirement(\n            is_writable(__DIR__.'/../plugins'),\n            \"plugins/ directory must be writable\",\n            \"Change the permissions of the \\\"<strong>$baseDir/plugins/</strong>\\\" directory so that the web server can write into it.\"\n        );\n\n        $this->addRequirement(\n            is_writable(__DIR__.'/../public/'),\n            \"public/ directory must be writable\",\n            \"Change the permissions of the \\\"<strong>$baseDir/public/</strong>\\\" directory so that the web server can write into it.\"\n        );\n\n        $this->addRequirement(\n            is_writable(__DIR__.'/../images/'),\n            \"images/ directory must be writable\",\n            \"Change the permissions of the \\\"<strong>$baseDir/images/</strong>\\\" directory so that the web server can write into it.\"\n        );\n\n        $this->addRecommendation(\n            function_exists('mail'),\n            \"sendmail should be installed\",\n            \"Install 'sendmail' package so that the Newscoop can send mails.\"\n        );\n\n        $this->addPhpIniRequirement(\n            'date.timezone', true, false,\n            'date.timezone setting must be set',\n            'Set the \"<strong>date.timezone</strong>\" setting in php.ini<a href=\"#phpini\">*</a> (like Europe/Paris).'\n        );\n\n        if (version_compare($installedPhpVersion, self::REQUIRED_PHP_VERSION, '>=')) {\n            $timezones = array();\n            foreach (DateTimeZone::listAbbreviations() as $abbreviations) {\n                foreach ($abbreviations as $abbreviation) {\n                    $timezones[$abbreviation['timezone_id']] = true;\n                }\n            }\n\n            $this->addRequirement(\n                isset($timezones[date_default_timezone_get()]),\n                sprintf('Configured default timezone \"%s\" must be supported by your installation of PHP', date_default_timezone_get()),\n                'Your default timezone is not supported by PHP. Check for typos in your <strong>php.ini</strong> file and have a look at the list of deprecated timezones at <a href=\"http://php.net/manual/en/timezones.others.php\">http://php.net/manual/en/timezones.others.php</a>.'\n            );\n        }\n\n        $this->addRequirement(\n            function_exists('json_encode'),\n            'json_encode() must be available',\n            'Install and enable the <strong>JSON</strong> extension.'\n        );\n\n        $this->addRequirement(\n            function_exists('session_start'),\n            'session_start() must be available',\n            'Install and enable the <strong>session</strong> extension.'\n        );\n\n        $this->addRequirement(\n            function_exists('ctype_alpha'),\n            'ctype_alpha() must be available',\n            'Install and enable the <strong>ctype</strong> extension.'\n        );\n\n        $this->addRequirement(\n            function_exists('token_get_all'),\n            'token_get_all() must be available',\n            'Install and enable the <strong>Tokenizer</strong> extension.'\n        );\n\n        $this->addRequirement(\n            function_exists('simplexml_import_dom'),\n            'simplexml_import_dom() must be available',\n            'Install and enable the <strong>SimpleXML</strong> extension.'\n        );\n\n        if (function_exists('apc_store') && ini_get('apc.enabled')) {\n            if (version_compare($installedPhpVersion, '5.4.0', '>=')) {\n                $this->addRequirement(\n                    version_compare(phpversion('apc'), '3.1.13', '>='),\n                    'APC version must be at least 3.1.13 when using PHP 5.4',\n                    'Upgrade your <strong>APC</strong> extension (3.1.13+).'\n                );\n            } else {\n                $this->addRequirement(\n                    version_compare(phpversion('apc'), '3.0.17', '>='),\n                    'APC version must be at least 3.0.17',\n                    'Upgrade your <strong>APC</strong> extension (3.0.17+).'\n                );\n            }\n        }\n\n        $this->addPhpIniRequirement('detect_unicode', false);\n\n        if (extension_loaded('suhosin')) {\n            $this->addPhpIniRequirement(\n                'suhosin.executor.include.whitelist',\n                create_function('$cfgValue', 'return false !== stripos($cfgValue, \"phar\");'),\n                false,\n                'suhosin.executor.include.whitelist must be configured correctly in php.ini',\n                'Add \"<strong>phar</strong>\" to <strong>suhosin.executor.include.whitelist</strong> in php.ini<a href=\"#phpini\">*</a>.'\n            );\n        }\n\n        if (extension_loaded('xdebug')) {\n            $this->addPhpIniRequirement(\n                'xdebug.show_exception_trace', false, true\n            );\n\n            $this->addPhpIniRequirement(\n                'xdebug.scream', false, true\n            );\n\n            $this->addPhpIniRecommendation(\n                'xdebug.max_nesting_level',\n                create_function('$cfgValue', 'return $cfgValue > 100;'),\n                true,\n                'xdebug.max_nesting_level should be above 100 in php.ini',\n                'Set \"<strong>xdebug.max_nesting_level</strong>\" to e.g. \"<strong>250</strong>\" in php.ini<a href=\"#phpini\">*</a> to stop Xdebug\\'s infinite recursion protection erroneously throwing a fatal error in your project.'\n            );\n        }\n\n        $pcreVersion = defined('PCRE_VERSION') ? (float) PCRE_VERSION : null;\n\n        $this->addRequirement(\n            null !== $pcreVersion,\n            'PCRE extension must be available',\n            'Install the <strong>PCRE</strong> extension (version 8.0+).'\n        );\n\n        /* optional recommendations follow */\n\n        $this->addRecommendation(\n            version_compare($installedPhpVersion, '5.3.4', '>='),\n            'You should use at least PHP 5.3.4 due to PHP bug #52083 in earlier versions',\n            'Your project might malfunction randomly due to PHP bug #52083 (\"Notice: Trying to get property of non-object\"). Install PHP 5.3.4 or newer.'\n        );\n\n        $this->addRecommendation(\n            version_compare($installedPhpVersion, '5.3.8', '>='),\n            'When using annotations you should have at least PHP 5.3.8 due to PHP bug #55156',\n            'Install PHP 5.3.8 or newer if your project uses annotations.'\n        );\n\n        $this->addRecommendation(\n            version_compare($installedPhpVersion, '5.4.0', '!='),\n            'You should not use PHP 5.4.0 due to the PHP bug #61453',\n            'Your project might not work properly due to the PHP bug #61453 (\"Cannot dump definitions which have method calls\"). Install PHP 5.4.1 or newer.'\n        );\n\n        $this->addRecommendation(\n            (version_compare($installedPhpVersion, '5.3.18', '>=') && version_compare($installedPhpVersion, '5.4.0', '<'))\n            ||\n            version_compare($installedPhpVersion, '5.4.8', '>='),\n            'You should use PHP 5.3.18+ or PHP 5.4.8+ to always get nice error messages for fatal errors in the development environment due to PHP bug #61767/#60909',\n            'Install PHP 5.3.18+ or PHP 5.4.8+ if you want nice error messages for all fatal errors in the development environment.'\n        );\n\n        if (null !== $pcreVersion) {\n            $this->addRecommendation(\n                $pcreVersion >= 8.0,\n                sprintf('PCRE extension should be at least version 8.0 (%s installed)', $pcreVersion),\n                '<strong>PCRE 8.0+</strong> is preconfigured in PHP since 5.3.2 but you are using an outdated version of it. Symfony probably works anyway but it is recommended to upgrade your PCRE extension.'\n            );\n        }\n\n        $this->addRecommendation(\n            class_exists('DomDocument'),\n            'PHP-XML module should be installed',\n            'Install and enable the <strong>PHP-XML</strong> module.'\n        );\n\n        $this->addRecommendation(\n            function_exists('mb_strlen'),\n            'mb_strlen() should be available',\n            'Install and enable the <strong>mbstring</strong> extension.'\n        );\n\n        $this->addRecommendation(\n            function_exists('iconv'),\n            'iconv() should be available',\n            'Install and enable the <strong>iconv</strong> extension.'\n        );\n\n        $this->addRecommendation(\n            function_exists('utf8_decode'),\n            'utf8_decode() should be available',\n            'Install and enable the <strong>XML</strong> extension.'\n        );\n\n        if (!defined('PHP_WINDOWS_VERSION_BUILD')) {\n            $this->addRecommendation(\n                function_exists('posix_isatty'),\n                'posix_isatty() should be available',\n                'Install and enable the <strong>php_posix</strong> extension (used to colorize the CLI output).'\n            );\n        }\n\n        $this->addRecommendation(\n            class_exists('Locale'),\n            'intl extension should be available',\n            'Install and enable the <strong>intl</strong> extension (used for validators).'\n        );\n\n        if (class_exists('Collator')) {\n            $this->addRecommendation(\n                null !== new Collator('fr_FR'),\n                'intl extension should be correctly configured',\n                'The intl extension does not behave properly. This problem is typical on PHP 5.3.X x64 WIN builds.'\n            );\n        }\n\n        if (class_exists('Locale')) {\n            if (defined('INTL_ICU_VERSION')) {\n                $version = INTL_ICU_VERSION;\n            } else {\n                $reflector = new ReflectionExtension('intl');\n\n                ob_start();\n                $reflector->info();\n                $output = strip_tags(ob_get_clean());\n\n                preg_match('/^ICU version +(?:=> )?(.*)$/m', $output, $matches);\n                $version = $matches[1];\n            }\n\n            $this->addRecommendation(\n                version_compare($version, '4.0', '>='),\n                'intl ICU version should be at least 4+',\n                'Upgrade your <strong>intl</strong> extension with a newer ICU version (4+).'\n            );\n        }\n\n        $accelerator =\n            (extension_loaded('eaccelerator') && ini_get('eaccelerator.enable'))\n            ||\n            (extension_loaded('apc') && ini_get('apc.enabled'))\n            ||\n            (extension_loaded('Zend OPcache') && ini_get('opcache.enable'))\n            ||\n            (extension_loaded('xcache') && ini_get('xcache.cacher'))\n            ||\n            (extension_loaded('wincache') && ini_get('wincache.ocenabled'))\n        ;\n\n        $this->addRecommendation(\n            $accelerator,\n            'a PHP accelerator should be installed',\n            'Install and enable a <strong>PHP accelerator</strong> like APC (highly recommended).'\n        );\n\n        $this->addPhpIniRecommendation('short_open_tag', false);\n\n        $this->addPhpIniRecommendation('magic_quotes_gpc', false, true);\n\n        $this->addPhpIniRecommendation('register_globals', false, true);\n\n        $this->addPhpIniRecommendation('session.auto_start', false);\n\n        $this->addRecommendation(\n            class_exists('PDO'),\n            'PDO should be installed',\n            'Install <strong>PDO</strong> (mandatory for Doctrine).'\n        );\n\n        if (class_exists('PDO')) {\n            $drivers = PDO::getAvailableDrivers();\n            $this->addRecommendation(\n                count($drivers),\n                sprintf('PDO should have some drivers installed (currently available: %s)', count($drivers) ? implode(', ', $drivers) : 'none'),\n                'Install <strong>PDO drivers</strong> (mandatory for Doctrine).'\n            );\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/install/index.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nif (!file_exists(__DIR__ . '/../vendor') && !file_exists(__DIR__.'/../vendor/autoload.php')) {\n    echo \"Welcome to Newscoop Installer!<br/><br/>\";\n    echo \"It doesn't look like you've installed vendors yet. Please install all dependencies using Composer.\";\n    echo \"<pre>curl -s https://getcomposer.org/installer | php <br/>php composer.phar install --no-dev</pre>\";\n    echo \"When it's done, please refresh this page. Thanks!\";\n    die;\n}\n\nrequire_once __DIR__.'/../vendor/autoload.php';\nrequire_once dirname(__FILE__).'/SymfonyRequirements.php';\n\n$symfonyRequirements = new SymfonyRequirements();\n$requirements = $symfonyRequirements->getRequirements();\n\n$missingReq = array();\nforeach ($requirements as $req) {\n    if (!$req->isFulfilled()) {\n        $missingReq[] = $req->getTestMessage().'<br />      '.$req->getHelpText().'<br />';\n    }\n}\n\nif (count($missingReq) > 0) {\n    echo \"Welcome to Newscoop Installer!<br/><br/>\";\n    echo \"Before we will show You a real installer we need to fix some requirements first.<br />Please read all messages and try to fix them:<br />\";\n    echo \"<pre>\";\n    foreach ($missingReq as $value) {\n        echo $value.' <br />';\n    }\n    echo \"</pre>\";\n    $phpFile = php_ini_loaded_file() ?: \"File couldn't be found.\";\n    echo \"Your php.ini config file path: <strong>\" . $phpFile . \"</strong><br/><br/>\";\n    echo \"You can try to fix common problems by running our fixer.php script: <br/>\";\n    echo \"<pre>sudo php \". realpath(__DIR__.\"/../scripts/fixer.php\").\"</pre>\";\n\n    echo \"When it's done, please refresh this page. Thanks!\";\n    die;\n}\n\nuse Silex\\Provider\\FormServiceProvider;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Newscoop\\Installer\\Services;\nuse Symfony\\Component\\Validator\\Constraints as Assert;\nuse Dflydev\\Silex\\Provider\\DoctrineOrm\\DoctrineOrmServiceProvider;\n\n$app = new Silex\\Application();\n$app->register(new Silex\\Provider\\SessionServiceProvider());\n$app->register(new Silex\\Provider\\UrlGeneratorServiceProvider());\n$app->register(new Silex\\Provider\\ValidatorServiceProvider());\n$app->register(new FormServiceProvider());\n$app->register(new Silex\\Provider\\MonologServiceProvider(), array(\n    'monolog.logfile' => __DIR__.'/../log/install.log',\n));\n$app->register(new Silex\\Provider\\TwigServiceProvider(), array(\n    'twig.path' => __DIR__.'/Resources/views',\n));\n$app->register(new Silex\\Provider\\TranslationServiceProvider(), array(\n    'locale_fallbacks' => array('en'),\n));\n\n$app['debug'] = true;\n\n$app['bootstrap_service'] = $app->share(function () use ($app) {\n    return new Services\\BootstrapService($app['monolog']);\n});\n$app['database_service'] = $app->share(function () use ($app) {\n    return new Services\\DatabaseService($app['monolog']);\n});\n$app['demosite_service'] = $app->share(function () use ($app) {\n    return new Services\\DemositeService($app['monolog']);\n});\n$app['finish_service'] = $app->share(function () use ($app) {\n    return new Services\\FinishService();\n});\n\n$app->before(function (Request $request) use ($app) {\n    if ($request->request->has('db_config') || $app['session']->has('db_data')) {\n        $requestDbConfig = $request->request->get('db_config');\n        $sessionDbData = $app['session']->get('db_data');\n        $app->register(new Silex\\Provider\\DoctrineServiceProvider(), array(\n            'dbs.options' => array (\n                'default' => array(\n                    'driver'    => 'pdo_mysql',\n                    'host'      => $requestDbConfig['server_name'] ? : $sessionDbData['server_name'],\n                    'dbname'    => $requestDbConfig['database_name'] ? : $sessionDbData['database_name'],\n                    'user'      => $requestDbConfig['user_name'] ? : $sessionDbData['user_name'],\n                    'password'  => $requestDbConfig['user_password'] ? : $sessionDbData['user_password'],\n                    'port'      => $requestDbConfig['server_port'] ? : $sessionDbData['server_port'],\n                    'charset'   => 'utf8',\n                )\n            ),\n        ));\n\n        $app->register(new DoctrineOrmServiceProvider, array(\n            \"orm.proxies_dir\" => __DIR__.\"/../library/Proxy\",\n            \"orm.em.options\" => array(\n                \"mappings\" => array(\n                    array(\n                        \"type\" => \"annotation\",\n                        \"namespace\" => \"Newscoop\\Entity\",\n                        \"path\" => __DIR__.\"/../library/Newscoop/Entity\",\n                        \"use_simple_annotation_reader\" => false\n                    ),\n                ),\n            ),\n        ));\n\n        // call scheduler service only when database info is in session or request\n        $app['scheduler_service'] = $app->share(function () use ($app) {\n            return new Newscoop\\Services\\SchedulerService($app['orm.em']);\n        });\n    }\n}, Silex\\Application::EARLY_EVENT);\n\n$app->get('/', function (Silex\\Application $app) use ($symfonyRequirements, $requirements) {\n    $app['bootstrap_service']->makeDirectoriesWritable();\n    $directories = $app['bootstrap_service']->checkDirectories();\n    if ($directories !== true) {\n        return $app['twig']->render('botstrap_errors.twig', array('directories' => $directories));\n    }\n\n    $checkPassed = true;\n    foreach ($requirements as $req) {\n        if (!$req->isFulfilled()) {\n            $checkPassed = false;\n        }\n    }\n\n    $warning = false;\n    foreach ($symfonyRequirements->getRecommendations() as $req) {\n        if (!$req->isFulfilled()) {\n            if ($req->isOptional()) {\n                $warning = true;\n            }\n        }\n    }\n\n    return $app['twig']->render('index.twig', array(\n        'requirements' => $requirements,\n        'recommendations' => $symfonyRequirements->getRecommendations(),\n        'checkPassed' => $checkPassed,\n        'NewscoopVersion' => new \\CampVersion(),\n        'warning' => $warning\n    ));\n})\n->assert('_method', 'GET')\n->bind('index');\n\n$app->get('/license', function (Request $request) use ($app) {\n    $form = $app['form.factory']->createNamedBuilder('license', 'form', array())\n        ->setAction($app['url_generator']->generate('license'))\n        ->add('accept_terms', 'checkbox', array(\n            'label'     => 'I accept the license terms',\n            'required' => true,\n            'constraints' => array(new Assert\\NotBlank()),\n            'error_bubbling' => true\n        ))\n        ->add('submit', 'submit', array(\n            'label' => \"Next\",\n        ))\n        ->getForm();\n\n    if ('POST' == $request->getMethod()) {\n        $form->bind($request);\n        if ($form->isValid()) {\n            return $app->redirect($app['url_generator']->generate('prepare'));\n        } else {\n            foreach ($form->getErrors() as $error) {\n                $app['session']->getFlashBag()->add('danger', $error->getMessage());\n            }\n        }\n    }\n\n    return $app['twig']->render('license.twig', array(\n        'form' => $form->createView(),\n        'NewscoopVersion' => new \\CampVersion(),\n    ));\n})\n->assert('_method', 'POST|GET')\n->bind('license');\n\n$app->get('/prepare', function (Request $request) use ($app) {\n    $form = $app['form.factory']->createNamedBuilder('db_config', 'form', array(\n            'server_name' => 'localhost',\n            'database_name' => 'newscoop',\n            'server_port' => '3306'\n        ))\n        ->add('server_name', null, array(\n            'constraints' => array(new Assert\\NotBlank(array('message' => 'Server name value should not be blank.'))),\n            'required' => true,\n            'label' => \"Server name:\",\n            'error_bubbling' => true,\n        ))\n        ->add('server_port', null, array(\n            'required' => false,\n            'label' => \"Server port:\"\n        ))\n        ->add('user_name', null, array(\n            'constraints' => array(new Assert\\NotBlank(array('message' => 'User name value should not be blank.'))),\n            'required' => true,\n            'label' => \"User name:\",\n            'error_bubbling' => true,\n        ))\n        ->add('user_password', 'password', array(\n            'required' => false,\n            'label' => \"Password:\",\n            'error_bubbling' => true,\n        ))\n        ->add('database_name', null, array(\n            'constraints' => array(new Assert\\NotBlank(array('message' => 'Database name value should not be blank.'))),\n            'required' => true,\n            'label' => \"Database name:\",\n            'error_bubbling' => true,\n        ))\n        ->add('override_database', 'checkbox', array(\n            'label' => 'Overwrite existing database?',\n            'required' => false,\n        ))\n        ->getForm();\n\n    if ('POST' == $request->getMethod()) {\n        $form->bind($request);\n\n        if ($form->isValid()) {\n            $data = $form->getData();\n\n            try {\n                $app['db']->connect();\n            } catch (\\Exception $e) {\n                if ($e->getCode() == '1049') {\n                    $app['database_service']->createNewscoopDatabase($app['db']);\n                }\n\n                if ($e->getCode() == '1045' || $e->getCode() == '1044') {\n                    $app['session']->getFlashBag()->set('danger', 'Invalid database parameters. Could not connect to database server.');\n\n                    return $app['twig']->render('prepare.twig', array(\n                        'form' => $form->createView(),\n                        'NewscoopVersion' => new \\CampVersion(),\n                    ));\n                }\n            }\n\n            $tables = $app['db']->fetchAll('SHOW TABLES', array());\n            if (count($tables) == 0 || $data['override_database']) {\n                $app['database_service']->fillNewscoopDatabase($app['db']);\n                $app['database_service']->loadGeoData($app['db']);\n                $app['database_service']->saveDatabaseConfiguration($app['db']);\n\n            } else {\n                $app['session']->getFlashBag()->add('danger', 'Database <i>' . $app['db']->getDatabase() . '</i> already exists. Change name or overwrite it.');\n\n                return $app['twig']->render('prepare.twig', array(\n                    'form' => $form->createView(),\n                    'NewscoopVersion' => new \\CampVersion(),\n                ));\n            }\n\n            // redirect somewhere\n            $app['session']->set('db_data', $data);\n\n            return $app->redirect($app['url_generator']->generate('process'));\n        } else {\n            foreach ($form->getErrors() as $error) {\n                $app['session']->getFlashBag()->add('danger', $error->getMessage());\n            }\n        }\n    }\n\n    return $app['twig']->render('prepare.twig', array(\n        'form' => $form->createView(),\n        'NewscoopVersion' => new \\CampVersion(),\n    ));\n})\n->assert('_method', 'POST|GET')\n->bind('prepare');\n\n$app->get('/process', function (Request $request) use ($app) {\n    $form = $app['form.factory']->createNamedBuilder('main_config', 'form', array())\n        ->add('site_title', null, array(\n            'constraints' => array(new Assert\\NotBlank(array('message' => 'Site title value should not be blank.'))),\n            'required' => true,\n            'error_bubbling' => true\n        ))\n        ->add(\n            'recheck_user_password',\n            'repeated',\n            array(\n                'type' => 'password',\n                'invalid_message' => 'The password fields must match.',\n                'options' => array('attr' => array('class' => 'password-field')),\n                'required' => true,\n                'first_options'  => array('label' => 'Password'),\n                'second_options' => array('label' => 'Repeat Password'),\n                'constraints' => array(new Assert\\NotBlank(array('message' => 'Password value should not be blank.'))),\n                'required' => true,\n                'error_bubbling' => true\n            )\n        )\n        ->add('user_email', 'email', array(\n            'constraints' => array(\n                new Assert\\Email(array('message' => 'Email value is not a valid email address.')),\n                new Assert\\NotBlank(array('message' => 'Email value should not be blank.'))),\n            'required' => true,\n            'error_bubbling' => true\n        ))\n        ->getForm();\n\n    if ('POST' == $request->getMethod()) {\n        $form->bind($request);\n\n        if ($form->isValid()) {\n            $data = $form->getData();\n            $app['session']->set('main_config', $data);\n            $app['database_service']->installDatabaseSchema($app['db'], $request->server->get('HTTP_HOST'), $data['site_title']);\n            $app['demosite_service']->installEmptyTheme();\n\n            return $app->redirect($app['url_generator']->generate('post-process'));\n        } else {\n            foreach ($form->getErrors() as $error) {\n                $app['session']->getFlashBag()->add('danger', $error->getMessage());\n            }\n        }\n    }\n\n    return $app['twig']->render('process.twig', array(\n        'form' => $form->createView(),\n        'NewscoopVersion' => new \\CampVersion(),\n    ));\n})\n->assert('_method', 'POST|GET')\n->bind('process');\n\n$app->get('/post-process', function (Request $request) use ($app) {\n    $app['finish_service']->saveCronjobs($app['scheduler_service']);\n    $app['finish_service']->generateProxies();\n    $app['finish_service']->installAssets();\n    $app['finish_service']->saveInstanceConfig($app['session']->get('main_config'), $app['db']);\n    $app['finish_service']->createDefaultOauthClient($request->server->get('HTTP_HOST'));\n\n    return $app['twig']->render('post-process.twig', array('NewscoopVersion' => new \\CampVersion(),));\n})\n->assert('_method', 'POST|GET')\n->bind('post-process');\n\n$app->run();\n"
  },
  {
    "path": "newscoop/js/admin.js",
    "content": "var terms = [];\n\n$(function() {\n\t$('.flash ui-state-error').click(function(){ $(this).hide(); })\n    // main menu\n    $('.main-menu-bar ul.navigation > li > a').each(function(i) {\n        var menu = $(this);\n\n        if (i > 0 && !(menu.parent().data('menu') == 'not-menu')) {\n            $('<span />').addClass('fg-button-ui-icon fg-button-ui-icon-triangle-1-s').prependTo(menu);\n\n            menu.topmenu({\n                content: '<ul>' + menu.next('ul').html() + '</ul>',\n                flyOut: true,\n                showSpeed: 150\n            });\n        }\n\n        // add css/attributes to main links\n        menu.attr('tabindex', i)\n            .hover(function() {\n                $(this).removeClass('fg-button-ui-state-default')\n                    .addClass('fg-button-ui-state-focus');\n            }, function() {\n                $(this).removeClass('fg-button-ui-state-focus')\n                    .addClass('fg-button-ui-state-default');\n            });\n    });\n\n    // sticky buttons\n    var sticky_limit = 0;\n    $(window).scroll(function() {\n        if ($('.sticky').size() == 0) {\n            return false; // no sticky\n        }\n\n        var windowTop = $(window).scrollTop();\n        var stickyTop = $('.sticky').offset().top;\n        if (windowTop > stickyTop && sticky_limit == 0) {\n            $('.sticky').css('width', '100%').css('position', 'fixed').css('top', '0');\n            sticky_limit = stickyTop;\n        }\n        if (sticky_limit > 0 && windowTop < sticky_limit) {\n            $('.sticky').css('position', 'relative');\n            sticky_limit = 0;\n        }\n    });\n\n    // topics search autocomplete\n    $('input[name=search].topics').each(function() {\n        var input = $(this);\n        input.autocomplete({\n            minLength: 3,\n            source: function(request, response) {\n                if (terms.length == 0) { // populate terms\n                    $('ul.tree.sortable strong').each(function() {\n                        terms.push($(this).text());\n                    });\n                }\n                if (terms.length == 0) { // still needs to populate\n                    $('ul.tree label').each(function() {\n                        terms.push($(this).text());\n                    });\n                }\n\n                var match = [];\n                var re = new RegExp(request.term, \"i\");\n                for (i = 0; i < terms.length; i++) {\n                    if (terms[i].search(re) >= 0) {\n                        match.push(terms[i]);\n                    }\n                }\n\n                if (match.length == 0) {\n                    $('form#topicsForm').keypress(function(event) { return event.keyCode != 13; });\n                } else {\n                    $('form#topicsForm').unbind(\"keypress\");\n                }\n\n                response(match);\n            },\n            close: function(event, ui) {\n                input.change(); // trigger search\n            }\n        });\n    }).change(function() {\n        // reset\n        $('ul.tree *').removeClass('match');\n        $('ul.tree li, ul.tree ul').show();\n        $('ul.tree.sortable').sortable('option', 'disabled', true);\n        $('span.open', $('ul.tree')).each(function() {\n            $(this).removeClass('opened');\n            if ($('ul', $(this).closest('li')).size()) {\n                $(this).addClass('closed');\n            }\n        });\n        $('> a', 'ul.tree li').text('+');\n\n        if ($(this).val() == '') {\n            $('ul.tree.sortable').sortable('option', 'disabled', false);\n            $('ul.tree ul').hide();\n            return;\n        }\n\n        // search targets\n        var elem = 'label';\n        var elemParent = 'li';\n        if ($('ul.tree').hasClass('sortable')) {\n            elem = 'strong';\n            elemParent = '.item';\n        }\n\n        // search\n        var re = new RegExp($(this).val(), \"i\");\n        var value = $(this).val();\n        $('ul.tree > li').each(function() {\n            var li = $(this);\n            $(elem, li).each(function() {\n                if ($(this).text().search(re) >= 0) {\n                    li.addClass('match');\n                    $(this).addClass('match');\n                    $(this).parentsUntil('ul.tree').addClass('match');\n                    // only check if topic text matches value exactly\n                    if ($(this).text() == value) {\n                        $('#' + $(this).attr('for')).attr('checked', 'checked');\n                    }\n                }\n            });\n        });\n\n        // hide non matching\n        $('ul.tree > li').not('.match').hide();\n        $('ul.tree li.match > ul').show();\n        $('span.open', $('ul.tree li.match')).each(function() {\n            $(this).removeClass('closed');\n            if ($('ul', $(this).closest('li')).size()) {\n                $(this).addClass('opened');\n            }\n        });\n        $('> a', 'ul.tree li.match').text('-');\n    });\n    \n    //show all topics \n    $('#show_all_topics').click(function(){\n    \t$('input[name=search].topics').val('');\n    \t$('input[name=search].topics').change();\n    });\n\n    // set date pickers\n    $('input.date, input.datetime').each(function() {\n        // common settings\n        var settings = {\n            dateFormat: 'yy-mm-dd',\n            timeFormat: 'hh:mm:ss',\n            showSeconds: true,\n            showOn: 'both',\n            buttonImage: g_admin_img + '/calendar_big.png',\n            buttonImageOnly: true\n        };\n\n        // update settings by classes\n        var classes = $(this).attr('class').split(' ');\n        for (var i = classes.length; i > 0; i--) {\n            var class_ary = classes[i-1].split('_');\n            if (class_ary.length == 2) {\n                settings[class_ary[0]] = class_ary[1];\n            }\n        }\n\n        if ($(this).hasClass('date')) {\n            $(this).datepicker(settings);\n        } else {\n            $(this).datetimepicker(settings);\n        }\n    });\n\n    // display flash messages\n    try {\n        if (user_msgs != '') {\n            flashMessage(user_msgs);\n        }\n    } catch (e) {};\n\n    // rise limit for google gadget setting\n    $('input#googlegadget-code').each(function() {\n            $(this).attr('maxlength', '500');\n        });\n\n    // zebra\n    $('.content table, .sidebar table').each(function() {\n        $('tr:odd', $(this)).addClass('odd');\n    });\n\n    // confirmations\n    $('.confirm[title]').click(function() {\n        var title = $(this).attr('title');\n\n        // first letter to lowercase\n        title = title.charAt(0).toLowerCase() + title.slice(1);\n\n        return confirm(localizer.confirm + ' ' + title + '?');\n    });\n\n    $('a.delete.icon').each(function() {\n        $(this).html('');\n        $('<span />')\n            .addClass('ui-icon ui-icon-closethick')\n            .prependTo($(this));\n    });\n\n    // zend_form utils\n    $('dl.zend_form').each(function() {\n        var emptyRegExp = /\\S/;\n        var form = $(this);\n        // hide hidden fields\n        $('input:hidden', form).each(function() {\n            if ($(this).next('input:checkbox').size()) {\n        \t\treturn;\n            }\n\n            if ($(this).attr('name') == 'MAX_FILE_SIZE') {\n                return;\n            }\n\n            var dd = $(this).closest('dd');\n            var dt = dd.prev('dt');\n            var errors = $('ul.errors', dd);\n\n            if (emptyRegExp.test(dt.html())) { // remove if empty\n                dt.hide().detach().appendTo(form);\n            }\n\n            if (errors.length > 0) { // keep dd for errors\n                return;\n            }\n\n            if ($('*', dd).size() == $('input:hidden', dd).size()) { // if contains only hiddens\n                dd.hide().detach().appendTo(form);\n            }\n        });\n\n        // hide fieldsets dt\n        $('fieldset', form).each(function() {\n            $(this).closest('dd').prev('dt').hide();\n        });\n\n        // hide submit dt\n        $('input:submit', form).each(function() {\n            $(this).closest('dd').addClass('buttons').prev('dt').hide();\n        });\n\n        // toogle fieldsets\n        $('fieldset.toggle legend', form).click(function() {\n            $(this).closest('fieldset').toggleClass('closed');\n            $('+ dl', $(this)).toggle();\n        }).each(function() {\n            $(this).css('cursor', 'pointer');\n            $('<span />').addClass('ui-icon ui-icon-triangle-2-n-s').prependTo($(this));\n\n            // toggle on load if not contain errors\n            if (!$('ul.errors', $(this).closest('fieldset')).size()) {\n                $(this).click();\n            }\n        });\n\n        // acl rule type colours switch\n        $('input:radio.acl.type', form).change(function() {\n            if ($(this).attr('checked')) {\n                $(this).closest('label').addClass('checked').siblings('label').removeClass('checked');\n            }\n        }).change();\n    });\n});\n\n/**\n * Displays flash message.\n *\n * @param string message\n * @param string type\n * @return object\n */\nfunction flashMessage(message, type, fixed)\n{\n    if (type) {\n        messageClass = type;\n    } else { // default is info\n        messageClass = 'highlight';\n    }\n\n    // replace + to spaces\n    message = message.replace(/\\+/g, \" \");\n\n    var flash = $('<div class=\"flash ui-state-' + messageClass + '\">' + message + '</div>')\n        .appendTo('body')\n        .css('z-index', '100000')\n        .css('position', 'fixed')\n        .css('top', '13px')\n        .css('left', '33%')\n        .css('width', '33%')\n        .css('padding', '8px')\n        .css('font-size', '1.3em')\n        .click(function() {\n            $(this).remove();\n        });\n\n    if (!fixed) {\n        flash.delay(3000).fadeOut('slow',function(){$(this).remove()});\n    }\n\n    return flash;\n}\n\nvar queue = [];\n$(document.body).data('loginDialog',false)\n/**\n * Call server function\n * @param {array} p_callback\n * @param {object} p_args\n * @param {callback} p_handle\n * @return bool\n */\nfunction callServer(p_callback, p_args, p_handle, p_direct, p_custom_url)\n{\n    if (!p_args) {\n        p_args = [];\n    }\n\tif (undefined === p_direct) {\n\t\tp_direct = false;\n\t}\n    if (undefined === p_custom_url) {\n        p_custom_url = false;\n    }\n\n    var use_method = 'POST';\n\n\tvar use_url = (p_direct) ? (p_callback) : (g_admin_url + '/json.php');\n\n    if (p_custom_url) {\n        use_url = p_custom_url;\n    }\n\n    if(typeof(use_url) == 'object') {\n        if (typeof use_url['method'] != 'undefined') {\n            use_method = use_url['method'];\n        }\n        use_url = use_url['url'];\n    }\n\n\tvar default_data = {\n            'callback': p_callback,\n            'args': p_args\n\t}\n\tvar use_data = (p_direct) ? p_args : default_data;\n    use_data['security_token'] = g_security_token;\n\n    var flash = flashMessage(localizer.processing, null, true);\n    $.ajax({\n        'url': use_url,\n        'type': use_method,\n\t\t'data': use_data,\n        'dataType': 'json',\n        'success': function(json) {\n\t\t\twindow.ajax_had_problems = false;\n            flash.fadeOut();\n\n            if (json != undefined && json.error_code != undefined) {\n                flashMessage(json.error_message, 'error', true);\n                return;\n            }\n\n            if (p_handle) {\n                p_handle(json);\n            }\n        },\n        'error': function(xhr, textStatus, errorThrown) {\n\t\t\twindow.ajax_had_problems = true;\n        \tif(xhr.status == '401')\n        \t{\n        \t\tflash.hide();\n        \t\tif (!$(document.body).data('loginDialog')) {\n        \t\t\tloginIframe = $('<iframe />')\n        \t\t\t\t.attr( 'src', g_admin_url+'/login?ajax=true' )\n        \t\t\t\t.attr( 'frameborder', 0 )\n        \t\t\t\t.attr( 'width', 500 )\n        \t\t\t\t.attr( 'height', 400 )\n        \t\t\t\t.css({ width: 500, height: 400, padding: 0 });\n        \t\t\t$(document.body).data( \n        \t\t\t\t'loginDialog',\n        \t\t\t\tloginIframe.dialog\n        \t\t\t\t({ \n        \t\t\t\t\ttitle: localizer.session_expired + ' ' + localizer.please + ' ' + localizer.login,\n        \t\t\t\t\twidth: 500, \n        \t\t\t\t\theight: 400, \n        \t\t\t\t\tmodal: true,\n        \t\t\t\t\tresizable: false,\n        \t\t\t\t\topen: function(evt, ui) {\n        \t\t\t\t\t\t$(this).width(500);\n        \t\t\t\t\t\tvar parentDiv = $(this).parents('.ui-dialog').eq(0)\n        \t\t\t\t\t\tparentDiv.css('z-index', parseInt( parentDiv.siblings('.ui-widget-overlay').css('z-index'))+100)\n        \t\t\t\t\t},\n        \t\t\t\t\tclose: function(evt, ui) {\n        \t\t\t\t\t\t$(document.body).removeData('loginDialog')\n        \t\t\t\t\t}\n        \t\t\t\t})\n        \t\t\t);\n        \t\t}\n\n                popupFlash = flashMessage(localizer.session_expired + ' ' + localizer.please + ' <a href=\"'+g_admin_url + '/login.php\" target=\"_blank\">' + localizer.login + '</a>.', 'error', false);\n        \t} else {\n        \t\tpopupFlash = flashMessage(localizer.connection_interrupted + '! ' + localizer.please + ' ' + localizer.try_again_later + '!', 'highlight', false);\n        \t}\n            \n            // store request\n            queue.push({\n                callback: p_callback,\n                args: p_args,\n                handle: p_handle,\n\t\t\t\tdirect: p_direct\n            });\n        }\n    });\n}\n\n/**\n * Set security token\n * @param string security_token\n * @return void\n */\nfunction setSecurityToken(security_token)\n{\n    g_security_token = security_token;\n    $('input[name=security_token]').val(security_token);\n\n    if (popupFlash) {\n        popupFlash.hide();\n    }\n\n    // restore request\n    for (var i = 0; i < queue.length; i++) {\n        var request = queue[i];\n        callServer(request.callback, request.args, request.handle, request.direct);\n    }\n}\n"
  },
  {
    "path": "newscoop/js/app/.htaccess",
    "content": "RewriteEngine On\nRewriteCond %{REQUEST_FILENAME} !-f\nRewriteCond %{REQUEST_FILENAME} !-d\nRewriteRule . 404.js [L]\n\n# ErrorDocument 404 \"void(0)\""
  },
  {
    "path": "newscoop/js/app/404.js",
    "content": "void(0);"
  },
  {
    "path": "newscoop/js/app/admin/_shared.js",
    "content": "$(function()\n{\n\tString.prototype.capitalize = function()\n\t{\n\t\treturn this.replace( /(^|\\s)([a-z])/g , function( m, p1, p2 ){ return p1+p2.toUpperCase(); } );\n\t};\n\t/**\n\t * @todo should have this inside the view helper\n\t */\n\tjQuery.registry = \n\t{\n\t\t_ns \t: \"customRegistry\"\n\t,\tget\t\t: function( arg )\n\t\t{\n\t\t\treturn jQuery.data( document.body, this._ns+\".\"+arg );\n\t\t}\n\t,\tset\t\t: function( arg, val )\n\t\t{\n\t\t\tjQuery.data( document.body, this._ns+\".\"+arg, val );\n\t\t}\t\n\t,\tunset \t: function( arg )\n\t\t{\n\t\t\tjQuery.removeData( document.body, this._ns+\".\"+arg );\n\t\t}\n\t,\tsetNs \t: function( name )\n\t\t{\n\t\t\tconsole.log( jQuery.data( document.body ) )\n\t\t}\n\t}\n\n});\n\n"
  },
  {
    "path": "newscoop/js/app/admin/themes/advanced-theme-settings.js",
    "content": "jQuery( function()\n{\n\t$('.themeSettingsTabsNav li a').click( function()\n\t{\n\t\tvar thisA = $(this);\n\t\t$.ajax\n\t\t({ \n\t\t\turl : $.registry\n\t\t\t\t\t.get( 'load-output-settings-url' )\n\t\t\t\t\t.replace( '$1', thisA.attr( 'theme-id' ) )\n\t\t\t\t\t.replace( '$2', thisA.attr( 'output-id' ) ),\n\t\t\tsuccess : function(data)\n\t\t\t{\n\t\t\t\t$('#themeSettingsTab .form-container').html(data);\n\t\t\t}\n\t\t});\n\t})\n\t.eq(0).click();\n\t\n\t/**\n\t * add ajax to form submits\n\t */\n\t$('.templateSettings form, .articleTypes form, .versionHolder form').live( 'submit', function( evt )\n\t{\n\t\tvar thisForm = $(this)\n\t\t$.ajax\n\t\t({\n\t\t\turl : thisForm.attr( 'action' ) + '?format=json',\n\t\t\ttype : thisForm.attr( 'method' ),\n\t\t\tdata : thisForm.serialize(),\n\t\t\tdataType : 'json',\n\t\t\tsuccess : function( data )\n\t\t\t{\n\t\t\t\t$('#submit-settings-ctrl').trigger( 'form-submitted.newscoop' );\n\t\t\t}\n\t\t})\n\t\tevt.preventDefault();\n\t})\n\t$('.articleTypes form').submit( function()\n\t{\n\t\t$(this).find('select').removeAttr( 'disabled' ); \n\t});\n\t\n\t$('#submit-settings-ctrl').click( function()\n\t{\n\t\t$('.templateSettings form, .versionHolder form, .articleTypes form').trigger('submit');\n\t\t$(this).val( $(this).attr( 'alt' ) );\n\t\t// set reload on all ajax completed\n\t\t$(this).data( 'form-submitted', 2 );\n\t\t$(this).bind( 'form-submitted.newscoop', function()\n\t\t{ \n\t\t\tvar frmSub = $(this).data( 'form-submitted' );\n\t\t\tif( frmSub == 1 ) {\n\t\t\t\tlocation.reload();\n\t\t\t}\n\t\t\t$(this).data( 'form-submitted', frmSub-1 );\n\t\t} )\n\t});\n\t\n\t/**\n\t * change article type select's handler\n\t */\n\t$('select.articleType').change( function()\n\t{\n\t\tvar fieldsSelect = $(this).siblings( 'ul' ).find( 'select' ).html( '' );\n\t\tvar articleTypes = $.registry.get( 'articleTypes' )[$(this).val()];\n\t\tvar themeArticleTypes = $.registry.get( 'themeArticleTypes' );\n\t\t\n\t\tvar typeIndex = $(this).parents('li:eq(0)').index(  );\n\n\t\tvar i = 0, found = 0;\n\t\tvar foundFields = [];\n\t\tfor( k in themeArticleTypes ) // find matching fields\n\t\t{\n\t\t\tif( i++ == typeIndex ) \n\t\t\t{\n\t\t\t\tfound = themeArticleTypes[k];\n\t\t\t\tfor( j in found )\n\t\t\t\t\tfoundFields.push(j)\n\t\t\t}\n\t\t}\n\t\tfieldsSelect.each( function( fieldsIdx )\n\t\t{\n\t\t\tvar selectedVal = 0;\n\t\t\tfor( i in  articleTypes )  // put options on the selects\n\t\t\t{\n\t\t\t\tvar opt = $( '<option />' )\n\t\t\t\t\t.val( articleTypes[i] )\n\t\t\t\t\t.text( articleTypes[i].replace( '_', ' ' ).capitalize() );\n\t\t\t\tif( articleTypes[i] == foundFields[fieldsIdx] )\t{\n\t\t\t\t\tselectedVal = articleTypes[i];\n\t\t\t\t}\n\t\t\t\t$(this).append( opt );\n\t\t\t}\n\t\t\t$(this).val( selectedVal )\n\t\t})\n\t\t\n\t}).trigger( 'change' );\n\t\n\t// Tabs\n\t$('.tabs, .themeSettingsTabs').tabs({ cookie: { expires: 30 }});\n    // BUTTONS\n    $('.fg-button').hover\n   \t(\n    \tfunction(){ $(this).removeClass('ui-state-default').addClass('ui-state-focus'); },\n    \tfunction(){ $(this).removeClass('ui-state-focus').addClass('ui-state-default'); }\n\t);\n\t$('.icon-button').hover\n\t(\n\t\tfunction() { $(this).addClass('ui-state-hover'); }, \n\t\tfunction() { $(this).removeClass('ui-state-hover'); }\n\t);\n\t$('.text-button').hover\n\t(\n\t\tfunction() { $(this).addClass('ui-state-hover'); }, \n\t\tfunction() { $(this).removeClass('ui-state-hover'); }\n\t);\n\t$(\".actionDropDown li\").hover(function()\n\t{\n\t\t$(this).children(\"ul\").css(\"display\",\"block\");\n\t\t$(this).children(\"a\").addClass(\"active\");\n\t}, function() \n\t{\n\t\t$(this).children(\"ul\").css(\"display\",\"none\");\n\t\t$(this).children(\"a\").removeClass(\"active\");\n\t});\n\t$(\".actionDropDown li ul li\").hover(function()\n\t{\n\t\t$(this).children(\"ul\").css(\"display\",\"block\");\n\t}, function() \n\t{\n\t\t$(this).childer(\"ul\").css(\"display\",\"none\");\n\t});\n\t\t\n\t$('.matchWithExisting ul li div input').click( function()\n\t{\n\t\tvar parentLi  = $(this).parents( 'li:eq(0)' );\n\t\tvar parentDiv = $(this).parent(); \n\t\tparentLi.find( 'div' ).removeClass( 'active' );\n\t\tif( $(this).attr( 'checked' ) ) \n\t\t{\n\t\t\tparentDiv.addClass( 'active' );\n\t\t\tparentDiv.nextAll( 'select' ).attr( 'disabled', 'disabled' );\n\t\t\tparentDiv.siblings( 'div' ).find( 'input' ).removeAttr( 'checked' );\n\t\t} \n\t\telse \n\t\t{\n\t\t\tparentDiv.removeClass( 'active' );\n\t\t\t$(this).removeAttr( 'checked' );\n\t\t\tparentDiv.nextAll( 'select' ).removeAttr( 'disabled' );\n\t\t}\n\t});\n\t\n\t$('.toggle-button').click(function() \n\t{\n\t\t$('.closeable').toggle('fast');\n\t\t$(this).toggleClass(\"closed\");\n\t\treturn false;\n\t}).next().hide();\n\t$('.toggle-link').click(function() \n\t{\n\t\t$('.more-options').toggle('fast');\n\t\t$(this).toggleClass(\"opened\");\n\t\treturn false;\n\t}).next().hide();\n\t\n});\n"
  },
  {
    "path": "newscoop/js/app/admin/themes/index.js",
    "content": "newscoopDatatables =\n{\n\tcallbackServerData : function ( sSource, aoData, fnCallback ) \n\t{\n\t\t$.ajax\n\t\t({\n\t\t\tdataType : 'json',\n\t\t\ttype : \"POST\",\n\t\t\turl : sSource,\n\t\t\tdata : aoData,\n\t\t\tsuccess : fnCallback,\n\t\t\terror : function(xhr, textStatus, errorThrown)\n\t\t\t{\n\t\t\t\tif (xhr.getResponseHeader('Not-Logged-In')) {\n\t\t\t\t\tlocation.reload();\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t},\n\tcallbackRow : function( row, data, displayIndex, displayIndexFull )\n\t{\n\t\t$(row).children().each( function( idx )\n\t\t{\n\t\t\ttry\n\t\t\t{\n\t\t\t\t$( this ).tmpl( '#datatableTmpl_'+idx, data );\n\t\t\t}\n\t\t\tcatch( e ){ if( typeof console != 'undefined' ) console.log( e ); }\n\t\t});\n\t\t\n\t\t$('.themesListTabs .imageItem', row ).each( function( i, e )\n\t\t{\n            // copy href from image to link\n\t\t\t$( '.imageCtrls a', row ).eq(i).attr( 'href', $(e).find('a').attr('href') );\n\n            // copy title from link to image\n            $(e).find('a').attr('title', $('.imageCtrls a', row).eq(i).attr('title'));\n\t\t});\n\n\t\t$( '.imageCtrls a', row ).fancybox\n\t\t({\n\t\t\t'transitionIn'\t:\t'elastic',\n\t\t\t'transitionOut'\t:\t'elastic',\n            'titlePosition': 'inside',\n\t\t\t'speedIn'\t\t:\t600, \n\t\t\t'speedOut'\t\t:\t200\n\t\t}) \n\n\t\treturn row;\n\t},\n\tcallbackDraw : function()\n\t{\n\t\t$('.themesListTabs li a').mouseover( function()\n\t\t{\n\t\t\tvar parentLi = $(this).parent( 'li' );\n\t\t\tparentLi.siblings().removeClass( 'ui-tabs-selected ui-state-active' );\n\t\t\tparentLi.addClass( 'ui-tabs-selected ui-state-active' );\n\n\t\t\tvar idx = parentLi.parent('ul').find( 'li' ).index( parentLi );\n\t\t\tvar imgs = $(this).parents( 'td' ).eq(0).prev().find( 'li' );\n\t\t\timgs.addClass( 'ui-tabs-hide' ).eq( idx ).removeClass( 'ui-tabs-hide' );\n\t\t});\n\n\t\t$(\".themesListTabs a\").fancybox({\n\t\t\t'transitionIn'\t:\t'elastic',\n\t\t\t'transitionOut'\t:\t'elastic',\n            'titlePosition': 'inside',\n\t\t\t'speedIn'\t\t:\t600, \n\t\t\t'speedOut'\t\t:\t200\n        });\n\n\t\t$(\".actionDropDown li\").hover(function()\n\t\t{\n\t\t\t$(this).children(\"ul\").css(\"display\",\"block\");\n\t\t\t$(this).children(\"a\").addClass(\"active\");\n\t\t}, function()\n\t\t{\n\t\t\t$(this).children(\"ul\").css(\"display\",\"none\");\n\t\t\t$(this).children(\"a\").removeClass(\"active\");\n\t\t});\n\t\t$(\".actionDropDown li ul li\").hover(function()\n\t\t{\n\t\t\t$(this).children(\"ul\").css(\"display\",\"block\");\n\t\t}, function()\n\t\t{\n\t\t\t$(this).children(\"ul\").css(\"display\",\"none\");\n\t\t});\n\n\t\ttry\n\t\t{\n\t\t\t$( document.body ).data( 'newscoop.themesDatatable.oneFilterCallback' ).apply( this );\n\t\t\t$( document.body ).removeData( 'newscoop.themesDatatable.oneFilterCallback' );\n\t\t}\n\t\tcatch( e ){}\n\t}\n}\n$( function()\n{\n\t// tabs functionallity\n\t$('.themesListHolder .themesListTabsBtns li a').click( function()\n\t{\n\t\tvar parentLi = $(this).parent();\n\t\tparentLi.siblings().removeClass( 'ui-tabs-selected ui-state-active' );\n\t\tparentLi.addClass('ui-tabs-selected ui-state-active');\n\n\t\tvar datatable = $( document.body ).data( 'newscoop.themesDatatable' );\n\t\tvar pubId \t  = $(this).attr( 'pub-id' );\n\t\tif( pubId ) // publication tab\n\t\t{\n\t\t\tdatatable.fnFilter( pubId, 0 ); // FILTERING PUBLICATION\n\t\t\t$( document.body ).data( 'newscoop.themesDatatable.oneFilterCallback', function()\n\t\t\t{\n\t\t\t\t$('.copy-to-avail-themes').show();\n\t\t\t\t$('.actionDropDown .edit:parent').show();\n\t\t\t\t$('.actionDropDown .unassign:parent').show();\n\t\t\t\t$('.actionDropDown .download:parent').show();\n\t\t\t\t$('.actionDropDown .delete:parent').hide();\n\t\t\t\t$('.actions-publications li a[pub-id='+pubId+']:parent').hide();\n\t\t\t});\n\t\t}\n\t\telse\n\t\t{\n\t\t\tdatatable.fnSettings().aoPreSearchCols[0].sSearch = \"\"; // hacked, RESETTING PUBLICATION FILTER\n\t\t\tdatatable.fnFilter( \"\" );\n\t\t\t$( document.body ).data( 'newscoop.themesDatatable.oneFilterCallback', function()\n\t\t\t{\n\t\t\t\t$('.actions-publications li a[pub-id]:parent').show()\n\t\t\t\t$('.copy-to-avail-themes').hide();\n\t\t\t\t$('.actionDropDown .unassign:parent').hide();\n\t\t\t\t$('.actionDropDown .download:parent').show();\n\t\t\t\t$('.actionDropDown .delete:parent').show();\n\t\t\t\t$('.actionDropDown .edit:parent').show();\n\t\t\t});\n\t\t}\n\t});\n\t// binding for assign and copy controls\n\t$('.assign-ctrl,.copy-to-avail-themes a').live( 'click', function( evt )\n\t{\n\t\tvar thisA = $(this);\n\t\t$.ajax\n\t\t({\n\t\t\turl : thisA.attr('href')+'/format/json',\n\t\t\tdataType : \"json\",\n\t\t\tsuccess : function( data ) {\n\t\t\t\tvar msgCon = thisA.parents('ul.actionDropDown').prev('div')\n\t\t\t\t\t\t\t\t.fadeTo( 'fast', 1 )\n\t\t\t\t\t\t\t\t.text( ( data.exception ? data.exception.message : data.response ) );\n\t\t\t\tmsgCon.delay(3000).fadeTo( 'fast', 0.01, function(){ $(this).html( '' ); })\n\t\t\t}\n\t\t})\n\t\tevt.preventDefault()\n\t});\n\t\n\tvar confirmUnassignDialog = $('<div />')\n\t.tmpl( '#confirmUnassignTmpl', {} )\n\t.dialog\n\t({\n\t\tautoOpen: false,\n\t\twidth: 460,\n\t\tresizable: false,\n\t\tmodal: true,\n\t\tposition:'center',\n\t\ttitle: $('#confirmUnassignTmpl').attr( 'title' )\n\t});\n\t\n\t\n\t$('.actionDropDown .unassign').live( 'click', function( evt )\n\t\t\t{\n\t\t\t\tvar thisA = $(this)\n\t\t\t\tconfirmUnassignDialog.dialog( 'option', 'buttons', \n\t\t\t\t{\n\t\t\t\t\t\"Unassign\" : function()\n\t\t\t\t\t{\n\t\t\t\t\t\t$.ajax\n\t\t\t\t\t\t({\n\t\t\t\t\t\t\turl : thisA.attr('href')+'/format/json',\n\t\t\t\t\t\t\tdataType : \"json\",\n\t\t\t\t\t\t\tsuccess : function( data ) \n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tif( data.response ) \n\t\t\t\t\t\t\t\t{\n                                    var oldtext = confirmUnassignDialog.find('.message-holder').text();\n\t\t\t\t\t\t\t\t\tconfirmUnassignDialog.find( '.message-holder' ).html('<span class=\"' + data.status + '\">' + data.response + '</span>')\n\t\t\t\t\t\t\t\t\t\t.show().delay(data.status ? 1000 : 3000).fadeOut('fast', function() {\n                                            confirmUnassignDialog.find('.message-holder').text(oldtext);\n\t\t\t\t\t\t\t\t\t\t\tconfirmUnassignDialog.dialog( 'close' ); \n                                            confirmUnassignDialog.find('.message-holder').show();\n\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tif( data.status ) {\n\t\t\t\t\t\t\t\t\t\t// TODO bad way to refresh datagrid\n\t\t\t\t\t\t\t\t\t\t$('.themesListHolder .themesListTabsBtns li a').parent( '.ui-state-active' ).find( 'a' ).click()\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\t\t\t\t\t},\n\t\t\t\t\t\"Cancel\" : function(){ $(this).dialog(\"close\"); } \n\t\t\t\t}).dialog( 'open' );\n\t\t\t\t\t\t\n\t\t\t\t\n\t\t\t\tevt.preventDefault()\n\t\t\t});\n\t\n\t\n\tvar confirmDeleteDialog = $('<div />')\n\t\t.tmpl( '#confirmDeleteTmpl', {} )\n\t\t.dialog\n\t\t({\n\t\t\tautoOpen: false,\n\t\t\twidth: 460,\n\t\t\tresizable: false,\n\t\t\tmodal: true,\n\t\t\tposition:'center',\n\t\t\ttitle: $('#confirmDeleteTmpl').attr( 'title' )\n\t\t});\n\t\n\t\t\n\t$('.actionDropDown .delete').live( 'click', function( evt )\n\t{\n\t\tvar thisA = $(this)\n\t\tconfirmDeleteDialog.dialog( 'option', 'buttons', \n\t\t{\n\t\t\t\"Delete\" : function()\n\t\t\t{\n\t\t\t\t$.ajax\n\t\t\t\t({\n\t\t\t\t\turl : thisA.attr('href')+'/format/json',\n\t\t\t\t\tdataType : \"json\",\n\t\t\t\t\tsuccess : function( data ) \n\t\t\t\t\t{\n\t\t\t\t\t\tif( data.response ) \n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconfirmDeleteDialog.find( '.delete-message' ).text( data.response )\n\t\t\t\t\t\t\t\t.show().delay(data.status ? 1000 : 3000).fadeOut( 'fast', function()\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tconfirmDeleteDialog.find( '.delete-message' ).text( '' );\n\t\t\t\t\t\t\t\t\tconfirmDeleteDialog.dialog( 'close' ); \n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tif( data.status ) {\n\t\t\t\t\t\t\t\t// TODO bad way to refresh datagrid\n\t\t\t\t\t\t\t\t$('.themesListHolder .themesListTabsBtns li a').parent( '.ui-state-active' ).find( 'a' ).click()\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t},\n\t\t\t\"Cancel\" : function(){ $(this).dialog(\"close\"); } \n\t\t}).dialog( 'open' );\n\t\t\t\t\n\t\t\n\t\tevt.preventDefault()\n\t});\n\t\n\t$('.actions .navigation .upload').click( function()\n\t{\n\t\tvar uploadDiv = $('<div />') // gonna remake this so we have a fresh iframe and form input without any stuff left over. u never know\n\t\t\t.tmpl( '#popupTmpl', {} )\n\t\t\t.dialog\n\t\t\t({\n\t\t\t\tautoOpen: true,\n\t\t\t\twidth: 460,\n\t\t\t\tresizable: false,\n\t\t\t\tmodal: true,\n\t\t\t\tposition:'center',\n\t\t\t\ttitle: $('#popupTmpl').attr( 'title' ),\n\t\t\t\tbuttons: \n\t\t\t\t{\n\t\t\t\t\t\"Import\" : function() \n\t\t\t\t\t{ \n\t\t\t\t\t\tuploadDiv.find( 'form' ).trigger( 'submit' );\n\t\t\t\t\t\tuploadDiv.find( 'iframe' ).load( function()\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tvar data = $(this).contents().find('body').text();\n\t\t\t\t\t\t\tif( $.trim( data ) != \"\" )\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\teval( \"data = \" + data );\n\t\t\t\t\t\t\t\tif( data.response )\t{\n\t\t\t\t\t\t\t\t\tuploadDiv.find( '.upload-success' )\n\t\t\t\t\t\t\t\t\t\t.show().delay(3000).fadeOut( 'fast', function(){ uploadDiv.dialog( 'close' ); } );\n\t\t\t\t\t\t\t\t\t// TODO bad way to refresh datagrid\n\t\t\t\t\t\t\t\t\t$('.themesListHolder .themesListTabsBtns li a').parent( '.ui-state-active' ).find( 'a' ).click()\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\t\tuploadDiv.find( '.upload-error' )\n\t\t\t\t\t\t\t\t\t\t.show().delay(3000).fadeOut( 'fast' );;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}, \n\t\t\t\t\t\"Cancel\" : function() \n\t\t\t\t\t{ \n\t\t\t\t\t\t$(this).dialog(\"close\"); \n\t\t\t\t\t} \n\t\t\t\t},\n\t\t\t\tclose : function()\n\t\t\t\t{\n\t\t\t\t\tuploadDiv.dialog( 'destroy' ).remove();\t\n\t\t\t\t}\n\t\t\t})\n\t\t\t.dialog( 'open' );\n\t\t\n\t})\n});\n"
  },
  {
    "path": "newscoop/js/apps/users.js",
    "content": "/**\n */\nvar User = Backbone.Model.extend({\n\n    /**\n     * Get link for given action\n     *\n     * @param {string} action\n     * @return {string}\n     */\n    getLink: function(action) {\n        for (var i = 0; i < this.get('links').length; i++) {\n            if (this.get('links')[i].rel === action) {\n                return this.get('links')[i].href;\n            }\n        }\n    },\n\n    /**\n     * Get class name for user status\n     *\n     * @return {string}\n     */\n    getStatusClass: function() {\n        switch (this.get('status')) {\n            case 1:\n                return 'active';\n                break;\n\n            case 3:\n                return 'deleted';\n                break;\n\n            default:\n                return 'inactive';\n                break;\n        }\n    }\n});\n\n/**\n */\nvar UserCollection = Backbone.Collection.extend({\n    model: User,\n\n    parse: function(response) {\n        this.pagination = response.pagination;\n        this.criteria = response.criteria;\n        return response.users;\n    }\n});\n\n/**\n */\nvar UserView = Backbone.View.extend({\n    tagName: 'li',\n\n    events: {\n        'click a.delete': 'delete',\n        'click a.token': 'token'\n    },\n\n    initialize: function() {\n        this.template = _.template($('#user-' + this.model.getStatusClass() + '-template').html());\n    },\n\n    render: function() {\n        $(this.el).html(this.template({user: this.model})).addClass(this.model.getStatusClass());\n        return this;\n    },\n\n    delete: function(e) {\n        if (this.confirm(e.target)) {\n            var model = this.model;\n            $.getJSON(this.model.getLink('delete'), {'format': 'json'}, function(data, textStatus, jqXHR) {\n                if (data.message) {\n                    flashMessage(data.message, 'error');\n                    return false;\n                }\n\n                model.collection.remove(model);\n                flashMessage(window.translate['User was deleted.']);\n            });\n        }\n\n        return false;\n    },\n\n    token: function(e) {\n        if (this.confirm(e.target)) {\n            $.getJSON(this.model.getLink('token'), {'format': 'json'}, function(data, textStatus, jqXHR) {\n                flashMessage(window.translate['New confirmation email was sent to user.']);\n            });\n        }\n\n        return false;\n    },\n\n    'confirm': function(target) {\n        return confirm(window.translate['Are you sure you want to {action}?'].replace('{action}', $(target).attr('title')));\n    }\n});\n\n/**\n */\nvar UserListView = Backbone.View.extend({\n    initialize: function() {\n        this.collection.bind('reset', this.render, this);\n        this.collection.bind('remove', this.render, this);\n    },\n\n    render: function() {\n        var list = $(this.el).empty();\n        this.collection.each(function(user) {\n            var view = new UserView({model: user});\n            list.append(view.render().el);\n        });\n\n        if (this.collection.length === 0) {\n            list.append($('<li />').text(window.translate['No users found.']));\n        }\n\n        return this;\n    }\n});\n\nvar StatusFilterView = Backbone.View.extend({\n    activeClass: 'active',\n\n    events: {\n        'click a': 'filter'\n    },\n\n    initialize: function() {\n        this.collection.bind('reset', this.render, this);\n    },\n\n    render: function() {\n        if ('status' in this.collection.criteria) {\n            $(this.el).find('a[href=\"#' + this.collection.criteria.status + '\"]').addClass(this.activeClass);\n        }\n    },\n\n    filter: function(e) {\n        e.preventDefault();\n        var data = this.collection.criteria;\n        data['status'] = e.currentTarget.hash.substring(1);\n        this.collection.fetch({'data': data});\n        $(this.el).find('a').removeClass(this.activeClass);\n        $(e.currentTarget).addClass(this.activeClass);\n    }\n});\n\nvar PaginationView = Backbone.View.extend({\n    events: {\n        'click a': 'goto'\n    },\n\n    initialize: function() {\n        this.collection.bind('reset', this.render, this);\n    },\n\n    render: function() {\n        $(this.el).empty();\n\n        var pagination = this.collection.pagination;\n        if (pagination.prevPageOffset !== null) {\n            $(this.el).append($('<a>&lt;</a>').attr('href', '#' + pagination.prevPageOffset));\n        } else {\n            $(this.el).append($('<span>&lt;</span>'));\n        }\n\n        if (pagination.nextPageOffset !== null) {\n            $(this.el).append($('<a>&gt;</a>').attr('href', '#' + pagination.nextPageOffset));\n        } else {\n            $(this.el).append($('<span>&gt;</span>'));\n        }\n\n        return this;\n    },\n\n    'goto': function(e) {\n        var data = this.collection.criteria;\n        data['start'] = e.target.hash.substring(1);\n        this.collection.fetch({'data': data});\n    }\n});\n\nvar SelectFilterView = Backbone.View.extend({\n    events: {\n        'change': 'filter'\n    },\n\n    filter: function(e) {\n        console.log(e);\n        var data = this.collection.criteria;\n        data['groups'] = e.target.value;\n        this.collection.fetch({'data': data});\n    }\n});\n\nvar SearchView = Backbone.View.extend({\n    events: {\n        'blur input': 'search',\n        'change input': 'search'\n    },\n\n    'search': function(e) {\n        var criteria = this.collection.criteria;\n        criteria['q'] = $(this.el).find('input').val();\n        this.collection.fetch({data: criteria});\n    }\n});\n"
  },
  {
    "path": "newscoop/js/backbone.js",
    "content": "//     Backbone.js 0.9.2\n\n//     (c) 2010-2012 Jeremy Ashkenas, DocumentCloud Inc.\n//     Backbone may be freely distributed under the MIT license.\n//     For all details and documentation:\n//     http://backbonejs.org\n\n(function(){\n\n  // Initial Setup\n  // -------------\n\n  // Save a reference to the global object (`window` in the browser, `global`\n  // on the server).\n  var root = this;\n\n  // Save the previous value of the `Backbone` variable, so that it can be\n  // restored later on, if `noConflict` is used.\n  var previousBackbone = root.Backbone;\n\n  // Create a local reference to slice/splice.\n  var slice = Array.prototype.slice;\n  var splice = Array.prototype.splice;\n\n  // The top-level namespace. All public Backbone classes and modules will\n  // be attached to this. Exported for both CommonJS and the browser.\n  var Backbone;\n  if (typeof exports !== 'undefined') {\n    Backbone = exports;\n  } else {\n    Backbone = root.Backbone = {};\n  }\n\n  // Current version of the library. Keep in sync with `package.json`.\n  Backbone.VERSION = '0.9.2';\n\n  // Require Underscore, if we're on the server, and it's not already present.\n  var _ = root._;\n  if (!_ && (typeof require !== 'undefined')) _ = require('underscore');\n\n  // For Backbone's purposes, jQuery, Zepto, or Ender owns the `$` variable.\n  var $ = root.jQuery || root.Zepto || root.ender;\n\n  // Set the JavaScript library that will be used for DOM manipulation and\n  // Ajax calls (a.k.a. the `$` variable). By default Backbone will use: jQuery,\n  // Zepto, or Ender; but the `setDomLibrary()` method lets you inject an\n  // alternate JavaScript library (or a mock library for testing your views\n  // outside of a browser).\n  Backbone.setDomLibrary = function(lib) {\n    $ = lib;\n  };\n\n  // Runs Backbone.js in *noConflict* mode, returning the `Backbone` variable\n  // to its previous owner. Returns a reference to this Backbone object.\n  Backbone.noConflict = function() {\n    root.Backbone = previousBackbone;\n    return this;\n  };\n\n  // Turn on `emulateHTTP` to support legacy HTTP servers. Setting this option\n  // will fake `\"PUT\"` and `\"DELETE\"` requests via the `_method` parameter and\n  // set a `X-Http-Method-Override` header.\n  Backbone.emulateHTTP = false;\n\n  // Turn on `emulateJSON` to support legacy servers that can't deal with direct\n  // `application/json` requests ... will encode the body as\n  // `application/x-www-form-urlencoded` instead and will send the model in a\n  // form param named `model`.\n  Backbone.emulateJSON = false;\n\n  // Backbone.Events\n  // -----------------\n\n  // Regular expression used to split event strings\n  var eventSplitter = /\\s+/;\n\n  // A module that can be mixed in to *any object* in order to provide it with\n  // custom events. You may bind with `on` or remove with `off` callback functions\n  // to an event; trigger`-ing an event fires all callbacks in succession.\n  //\n  //     var object = {};\n  //     _.extend(object, Backbone.Events);\n  //     object.on('expand', function(){ alert('expanded'); });\n  //     object.trigger('expand');\n  //\n  var Events = Backbone.Events = {\n\n    // Bind one or more space separated events, `events`, to a `callback`\n    // function. Passing `\"all\"` will bind the callback to all events fired.\n    on: function(events, callback, context) {\n\n      var calls, event, node, tail, list;\n      if (!callback) return this;\n      events = events.split(eventSplitter);\n      calls = this._callbacks || (this._callbacks = {});\n\n      // Create an immutable callback list, allowing traversal during\n      // modification.  The tail is an empty object that will always be used\n      // as the next node.\n      while (event = events.shift()) {\n        list = calls[event];\n        node = list ? list.tail : {};\n        node.next = tail = {};\n        node.context = context;\n        node.callback = callback;\n        calls[event] = {tail: tail, next: list ? list.next : node};\n      }\n\n      return this;\n    },\n\n    // Remove one or many callbacks. If `context` is null, removes all callbacks\n    // with that function. If `callback` is null, removes all callbacks for the\n    // event. If `events` is null, removes all bound callbacks for all events.\n    off: function(events, callback, context) {\n      var event, calls, node, tail, cb, ctx;\n\n      // No events, or removing *all* events.\n      if (!(calls = this._callbacks)) return;\n      if (!(events || callback || context)) {\n        delete this._callbacks;\n        return this;\n      }\n\n      // Loop through the listed events and contexts, splicing them out of the\n      // linked list of callbacks if appropriate.\n      events = events ? events.split(eventSplitter) : _.keys(calls);\n      while (event = events.shift()) {\n        node = calls[event];\n        delete calls[event];\n        if (!node || !(callback || context)) continue;\n        // Create a new list, omitting the indicated callbacks.\n        tail = node.tail;\n        while ((node = node.next) !== tail) {\n          cb = node.callback;\n          ctx = node.context;\n          if ((callback && cb !== callback) || (context && ctx !== context)) {\n            this.on(event, cb, ctx);\n          }\n        }\n      }\n\n      return this;\n    },\n\n    // Trigger one or many events, firing all bound callbacks. Callbacks are\n    // passed the same arguments as `trigger` is, apart from the event name\n    // (unless you're listening on `\"all\"`, which will cause your callback to\n    // receive the true name of the event as the first argument).\n    trigger: function(events) {\n      var event, node, calls, tail, args, all, rest;\n      if (!(calls = this._callbacks)) return this;\n      all = calls.all;\n      events = events.split(eventSplitter);\n      rest = slice.call(arguments, 1);\n\n      // For each event, walk through the linked list of callbacks twice,\n      // first to trigger the event, then to trigger any `\"all\"` callbacks.\n      while (event = events.shift()) {\n        if (node = calls[event]) {\n          tail = node.tail;\n          while ((node = node.next) !== tail) {\n            node.callback.apply(node.context || this, rest);\n          }\n        }\n        if (node = all) {\n          tail = node.tail;\n          args = [event].concat(rest);\n          while ((node = node.next) !== tail) {\n            node.callback.apply(node.context || this, args);\n          }\n        }\n      }\n\n      return this;\n    }\n\n  };\n\n  // Aliases for backwards compatibility.\n  Events.bind   = Events.on;\n  Events.unbind = Events.off;\n\n  // Backbone.Model\n  // --------------\n\n  // Create a new model, with defined attributes. A client id (`cid`)\n  // is automatically generated and assigned for you.\n  var Model = Backbone.Model = function(attributes, options) {\n    var defaults;\n    attributes || (attributes = {});\n    if (options && options.parse) attributes = this.parse(attributes);\n    if (defaults = getValue(this, 'defaults')) {\n      attributes = _.extend({}, defaults, attributes);\n    }\n    if (options && options.collection) this.collection = options.collection;\n    this.attributes = {};\n    this._escapedAttributes = {};\n    this.cid = _.uniqueId('c');\n    this.changed = {};\n    this._silent = {};\n    this._pending = {};\n    this.set(attributes, {silent: true});\n    // Reset change tracking.\n    this.changed = {};\n    this._silent = {};\n    this._pending = {};\n    this._previousAttributes = _.clone(this.attributes);\n    this.initialize.apply(this, arguments);\n  };\n\n  // Attach all inheritable methods to the Model prototype.\n  _.extend(Model.prototype, Events, {\n\n    // A hash of attributes whose current and previous value differ.\n    changed: null,\n\n    // A hash of attributes that have silently changed since the last time\n    // `change` was called.  Will become pending attributes on the next call.\n    _silent: null,\n\n    // A hash of attributes that have changed since the last `'change'` event\n    // began.\n    _pending: null,\n\n    // The default name for the JSON `id` attribute is `\"id\"`. MongoDB and\n    // CouchDB users may want to set this to `\"_id\"`.\n    idAttribute: 'id',\n\n    // Initialize is an empty function by default. Override it with your own\n    // initialization logic.\n    initialize: function(){},\n\n    // Return a copy of the model's `attributes` object.\n    toJSON: function(options) {\n      return _.clone(this.attributes);\n    },\n\n    // Get the value of an attribute.\n    get: function(attr) {\n      return this.attributes[attr];\n    },\n\n    // Get the HTML-escaped value of an attribute.\n    escape: function(attr) {\n      var html;\n      if (html = this._escapedAttributes[attr]) return html;\n      var val = this.get(attr);\n      return this._escapedAttributes[attr] = _.escape(val == null ? '' : '' + val);\n    },\n\n    // Returns `true` if the attribute contains a value that is not null\n    // or undefined.\n    has: function(attr) {\n      return this.get(attr) != null;\n    },\n\n    // Set a hash of model attributes on the object, firing `\"change\"` unless\n    // you choose to silence it.\n    set: function(key, value, options) {\n      var attrs, attr, val;\n\n      // Handle both `\"key\", value` and `{key: value}` -style arguments.\n      if (_.isObject(key) || key == null) {\n        attrs = key;\n        options = value;\n      } else {\n        attrs = {};\n        attrs[key] = value;\n      }\n\n      // Extract attributes and options.\n      options || (options = {});\n      if (!attrs) return this;\n      if (attrs instanceof Model) attrs = attrs.attributes;\n      if (options.unset) for (attr in attrs) attrs[attr] = void 0;\n\n      // Run validation.\n      if (!this._validate(attrs, options)) return false;\n\n      // Check for changes of `id`.\n      if (this.idAttribute in attrs) this.id = attrs[this.idAttribute];\n\n      var changes = options.changes = {};\n      var now = this.attributes;\n      var escaped = this._escapedAttributes;\n      var prev = this._previousAttributes || {};\n\n      // For each `set` attribute...\n      for (attr in attrs) {\n        val = attrs[attr];\n\n        // If the new and current value differ, record the change.\n        if (!_.isEqual(now[attr], val) || (options.unset && _.has(now, attr))) {\n          delete escaped[attr];\n          (options.silent ? this._silent : changes)[attr] = true;\n        }\n\n        // Update or delete the current value.\n        options.unset ? delete now[attr] : now[attr] = val;\n\n        // If the new and previous value differ, record the change.  If not,\n        // then remove changes for this attribute.\n        if (!_.isEqual(prev[attr], val) || (_.has(now, attr) != _.has(prev, attr))) {\n          this.changed[attr] = val;\n          if (!options.silent) this._pending[attr] = true;\n        } else {\n          delete this.changed[attr];\n          delete this._pending[attr];\n        }\n      }\n\n      // Fire the `\"change\"` events.\n      if (!options.silent) this.change(options);\n      return this;\n    },\n\n    // Remove an attribute from the model, firing `\"change\"` unless you choose\n    // to silence it. `unset` is a noop if the attribute doesn't exist.\n    unset: function(attr, options) {\n      (options || (options = {})).unset = true;\n      return this.set(attr, null, options);\n    },\n\n    // Clear all attributes on the model, firing `\"change\"` unless you choose\n    // to silence it.\n    clear: function(options) {\n      (options || (options = {})).unset = true;\n      return this.set(_.clone(this.attributes), options);\n    },\n\n    // Fetch the model from the server. If the server's representation of the\n    // model differs from its current attributes, they will be overriden,\n    // triggering a `\"change\"` event.\n    fetch: function(options) {\n      options = options ? _.clone(options) : {};\n      var model = this;\n      var success = options.success;\n      options.success = function(resp, status, xhr) {\n        if (!model.set(model.parse(resp, xhr), options)) return false;\n        if (success) success(model, resp);\n      };\n      options.error = Backbone.wrapError(options.error, model, options);\n      return (this.sync || Backbone.sync).call(this, 'read', this, options);\n    },\n\n    // Set a hash of model attributes, and sync the model to the server.\n    // If the server returns an attributes hash that differs, the model's\n    // state will be `set` again.\n    save: function(key, value, options) {\n      var attrs, current;\n\n      // Handle both `(\"key\", value)` and `({key: value})` -style calls.\n      if (_.isObject(key) || key == null) {\n        attrs = key;\n        options = value;\n      } else {\n        attrs = {};\n        attrs[key] = value;\n      }\n      options = options ? _.clone(options) : {};\n\n      // If we're \"wait\"-ing to set changed attributes, validate early.\n      if (options.wait) {\n        if (!this._validate(attrs, options)) return false;\n        current = _.clone(this.attributes);\n      }\n\n      // Regular saves `set` attributes before persisting to the server.\n      var silentOptions = _.extend({}, options, {silent: true});\n      if (attrs && !this.set(attrs, options.wait ? silentOptions : options)) {\n        return false;\n      }\n\n      // After a successful server-side save, the client is (optionally)\n      // updated with the server-side state.\n      var model = this;\n      var success = options.success;\n      options.success = function(resp, status, xhr) {\n        var serverAttrs = model.parse(resp, xhr);\n        if (options.wait) {\n          delete options.wait;\n          serverAttrs = _.extend(attrs || {}, serverAttrs);\n        }\n        if (!model.set(serverAttrs, options)) return false;\n        if (success) {\n          success(model, resp);\n        } else {\n          model.trigger('sync', model, resp, options);\n        }\n      };\n\n      // Finish configuring and sending the Ajax request.\n      options.error = Backbone.wrapError(options.error, model, options);\n      var method = this.isNew() ? 'create' : 'update';\n      var xhr = (this.sync || Backbone.sync).call(this, method, this, options);\n      if (options.wait) this.set(current, silentOptions);\n      return xhr;\n    },\n\n    // Destroy this model on the server if it was already persisted.\n    // Optimistically removes the model from its collection, if it has one.\n    // If `wait: true` is passed, waits for the server to respond before removal.\n    destroy: function(options) {\n      options = options ? _.clone(options) : {};\n      var model = this;\n      var success = options.success;\n\n      var triggerDestroy = function() {\n        model.trigger('destroy', model, model.collection, options);\n      };\n\n      if (this.isNew()) {\n        triggerDestroy();\n        return false;\n      }\n\n      options.success = function(resp) {\n        if (options.wait) triggerDestroy();\n        if (success) {\n          success(model, resp);\n        } else {\n          model.trigger('sync', model, resp, options);\n        }\n      };\n\n      options.error = Backbone.wrapError(options.error, model, options);\n      var xhr = (this.sync || Backbone.sync).call(this, 'delete', this, options);\n      if (!options.wait) triggerDestroy();\n      return xhr;\n    },\n\n    // Default URL for the model's representation on the server -- if you're\n    // using Backbone's restful methods, override this to change the endpoint\n    // that will be called.\n    url: function() {\n      var base = getValue(this, 'urlRoot') || getValue(this.collection, 'url') || urlError();\n      if (this.isNew()) return base;\n      return base + (base.charAt(base.length - 1) == '/' ? '' : '/') + encodeURIComponent(this.id);\n    },\n\n    // **parse** converts a response into the hash of attributes to be `set` on\n    // the model. The default implementation is just to pass the response along.\n    parse: function(resp, xhr) {\n      return resp;\n    },\n\n    // Create a new model with identical attributes to this one.\n    clone: function() {\n      return new this.constructor(this.attributes);\n    },\n\n    // A model is new if it has never been saved to the server, and lacks an id.\n    isNew: function() {\n      return this.id == null;\n    },\n\n    // Call this method to manually fire a `\"change\"` event for this model and\n    // a `\"change:attribute\"` event for each changed attribute.\n    // Calling this will cause all objects observing the model to update.\n    change: function(options) {\n      options || (options = {});\n      var changing = this._changing;\n      this._changing = true;\n\n      // Silent changes become pending changes.\n      for (var attr in this._silent) this._pending[attr] = true;\n\n      // Silent changes are triggered.\n      var changes = _.extend({}, options.changes, this._silent);\n      this._silent = {};\n      for (var attr in changes) {\n        this.trigger('change:' + attr, this, this.get(attr), options);\n      }\n      if (changing) return this;\n\n      // Continue firing `\"change\"` events while there are pending changes.\n      while (!_.isEmpty(this._pending)) {\n        this._pending = {};\n        this.trigger('change', this, options);\n        // Pending and silent changes still remain.\n        for (var attr in this.changed) {\n          if (this._pending[attr] || this._silent[attr]) continue;\n          delete this.changed[attr];\n        }\n        this._previousAttributes = _.clone(this.attributes);\n      }\n\n      this._changing = false;\n      return this;\n    },\n\n    // Determine if the model has changed since the last `\"change\"` event.\n    // If you specify an attribute name, determine if that attribute has changed.\n    hasChanged: function(attr) {\n      if (!arguments.length) return !_.isEmpty(this.changed);\n      return _.has(this.changed, attr);\n    },\n\n    // Return an object containing all the attributes that have changed, or\n    // false if there are no changed attributes. Useful for determining what\n    // parts of a view need to be updated and/or what attributes need to be\n    // persisted to the server. Unset attributes will be set to undefined.\n    // You can also pass an attributes object to diff against the model,\n    // determining if there *would be* a change.\n    changedAttributes: function(diff) {\n      if (!diff) return this.hasChanged() ? _.clone(this.changed) : false;\n      var val, changed = false, old = this._previousAttributes;\n      for (var attr in diff) {\n        if (_.isEqual(old[attr], (val = diff[attr]))) continue;\n        (changed || (changed = {}))[attr] = val;\n      }\n      return changed;\n    },\n\n    // Get the previous value of an attribute, recorded at the time the last\n    // `\"change\"` event was fired.\n    previous: function(attr) {\n      if (!arguments.length || !this._previousAttributes) return null;\n      return this._previousAttributes[attr];\n    },\n\n    // Get all of the attributes of the model at the time of the previous\n    // `\"change\"` event.\n    previousAttributes: function() {\n      return _.clone(this._previousAttributes);\n    },\n\n    // Check if the model is currently in a valid state. It's only possible to\n    // get into an *invalid* state if you're using silent changes.\n    isValid: function() {\n      return !this.validate(this.attributes);\n    },\n\n    // Run validation against the next complete set of model attributes,\n    // returning `true` if all is well. If a specific `error` callback has\n    // been passed, call that instead of firing the general `\"error\"` event.\n    _validate: function(attrs, options) {\n      if (options.silent || !this.validate) return true;\n      attrs = _.extend({}, this.attributes, attrs);\n      var error = this.validate(attrs, options);\n      if (!error) return true;\n      if (options && options.error) {\n        options.error(this, error, options);\n      } else {\n        this.trigger('error', this, error, options);\n      }\n      return false;\n    }\n\n  });\n\n  // Backbone.Collection\n  // -------------------\n\n  // Provides a standard collection class for our sets of models, ordered\n  // or unordered. If a `comparator` is specified, the Collection will maintain\n  // its models in sort order, as they're added and removed.\n  var Collection = Backbone.Collection = function(models, options) {\n    options || (options = {});\n    if (options.model) this.model = options.model;\n    if (options.comparator) this.comparator = options.comparator;\n    this._reset();\n    this.initialize.apply(this, arguments);\n    if (models) this.reset(models, {silent: true, parse: options.parse});\n  };\n\n  // Define the Collection's inheritable methods.\n  _.extend(Collection.prototype, Events, {\n\n    // The default model for a collection is just a **Backbone.Model**.\n    // This should be overridden in most cases.\n    model: Model,\n\n    // Initialize is an empty function by default. Override it with your own\n    // initialization logic.\n    initialize: function(){},\n\n    // The JSON representation of a Collection is an array of the\n    // models' attributes.\n    toJSON: function(options) {\n      return this.map(function(model){ return model.toJSON(options); });\n    },\n\n    // Add a model, or list of models to the set. Pass **silent** to avoid\n    // firing the `add` event for every new model.\n    add: function(models, options) {\n      var i, index, length, model, cid, id, cids = {}, ids = {}, dups = [];\n      options || (options = {});\n      models = _.isArray(models) ? models.slice() : [models];\n\n      // Begin by turning bare objects into model references, and preventing\n      // invalid models or duplicate models from being added.\n      for (i = 0, length = models.length; i < length; i++) {\n        if (!(model = models[i] = this._prepareModel(models[i], options))) {\n          throw new Error(\"Can't add an invalid model to a collection\");\n        }\n        cid = model.cid;\n        id = model.id;\n        if (cids[cid] || this._byCid[cid] || ((id != null) && (ids[id] || this._byId[id]))) {\n          dups.push(i);\n          continue;\n        }\n        cids[cid] = ids[id] = model;\n      }\n\n      // Remove duplicates.\n      i = dups.length;\n      while (i--) {\n        models.splice(dups[i], 1);\n      }\n\n      // Listen to added models' events, and index models for lookup by\n      // `id` and by `cid`.\n      for (i = 0, length = models.length; i < length; i++) {\n        (model = models[i]).on('all', this._onModelEvent, this);\n        this._byCid[model.cid] = model;\n        if (model.id != null) this._byId[model.id] = model;\n      }\n\n      // Insert models into the collection, re-sorting if needed, and triggering\n      // `add` events unless silenced.\n      this.length += length;\n      index = options.at != null ? options.at : this.models.length;\n      splice.apply(this.models, [index, 0].concat(models));\n      if (this.comparator) this.sort({silent: true});\n      if (options.silent) return this;\n      for (i = 0, length = this.models.length; i < length; i++) {\n        if (!cids[(model = this.models[i]).cid]) continue;\n        options.index = i;\n        model.trigger('add', model, this, options);\n      }\n      return this;\n    },\n\n    // Remove a model, or a list of models from the set. Pass silent to avoid\n    // firing the `remove` event for every model removed.\n    remove: function(models, options) {\n      var i, l, index, model;\n      options || (options = {});\n      models = _.isArray(models) ? models.slice() : [models];\n      for (i = 0, l = models.length; i < l; i++) {\n        model = this.getByCid(models[i]) || this.get(models[i]);\n        if (!model) continue;\n        delete this._byId[model.id];\n        delete this._byCid[model.cid];\n        index = this.indexOf(model);\n        this.models.splice(index, 1);\n        this.length--;\n        if (!options.silent) {\n          options.index = index;\n          model.trigger('remove', model, this, options);\n        }\n        this._removeReference(model);\n      }\n      return this;\n    },\n\n    // Add a model to the end of the collection.\n    push: function(model, options) {\n      model = this._prepareModel(model, options);\n      this.add(model, options);\n      return model;\n    },\n\n    // Remove a model from the end of the collection.\n    pop: function(options) {\n      var model = this.at(this.length - 1);\n      this.remove(model, options);\n      return model;\n    },\n\n    // Add a model to the beginning of the collection.\n    unshift: function(model, options) {\n      model = this._prepareModel(model, options);\n      this.add(model, _.extend({at: 0}, options));\n      return model;\n    },\n\n    // Remove a model from the beginning of the collection.\n    shift: function(options) {\n      var model = this.at(0);\n      this.remove(model, options);\n      return model;\n    },\n\n    // Get a model from the set by id.\n    get: function(id) {\n      if (id == null) return void 0;\n      return this._byId[id.id != null ? id.id : id];\n    },\n\n    // Get a model from the set by client id.\n    getByCid: function(cid) {\n      return cid && this._byCid[cid.cid || cid];\n    },\n\n    // Get the model at the given index.\n    at: function(index) {\n      return this.models[index];\n    },\n\n    // Return models with matching attributes. Useful for simple cases of `filter`.\n    where: function(attrs) {\n      if (_.isEmpty(attrs)) return [];\n      return this.filter(function(model) {\n        for (var key in attrs) {\n          if (attrs[key] !== model.get(key)) return false;\n        }\n        return true;\n      });\n    },\n\n    // Force the collection to re-sort itself. You don't need to call this under\n    // normal circumstances, as the set will maintain sort order as each item\n    // is added.\n    sort: function(options) {\n      options || (options = {});\n      if (!this.comparator) throw new Error('Cannot sort a set without a comparator');\n      var boundComparator = _.bind(this.comparator, this);\n      if (this.comparator.length == 1) {\n        this.models = this.sortBy(boundComparator);\n      } else {\n        this.models.sort(boundComparator);\n      }\n      if (!options.silent) this.trigger('reset', this, options);\n      return this;\n    },\n\n    // Pluck an attribute from each model in the collection.\n    pluck: function(attr) {\n      return _.map(this.models, function(model){ return model.get(attr); });\n    },\n\n    // When you have more items than you want to add or remove individually,\n    // you can reset the entire set with a new list of models, without firing\n    // any `add` or `remove` events. Fires `reset` when finished.\n    reset: function(models, options) {\n      models  || (models = []);\n      options || (options = {});\n      for (var i = 0, l = this.models.length; i < l; i++) {\n        this._removeReference(this.models[i]);\n      }\n      this._reset();\n      this.add(models, _.extend({silent: true}, options));\n      if (!options.silent) this.trigger('reset', this, options);\n      return this;\n    },\n\n    // Fetch the default set of models for this collection, resetting the\n    // collection when they arrive. If `add: true` is passed, appends the\n    // models to the collection instead of resetting.\n    fetch: function(options) {\n      options = options ? _.clone(options) : {};\n      if (options.parse === undefined) options.parse = true;\n      var collection = this;\n      var success = options.success;\n      options.success = function(resp, status, xhr) {\n        collection[options.add ? 'add' : 'reset'](collection.parse(resp, xhr), options);\n        if (success) success(collection, resp);\n      };\n      options.error = Backbone.wrapError(options.error, collection, options);\n      return (this.sync || Backbone.sync).call(this, 'read', this, options);\n    },\n\n    // Create a new instance of a model in this collection. Add the model to the\n    // collection immediately, unless `wait: true` is passed, in which case we\n    // wait for the server to agree.\n    create: function(model, options) {\n      var coll = this;\n      options = options ? _.clone(options) : {};\n      model = this._prepareModel(model, options);\n      if (!model) return false;\n      if (!options.wait) coll.add(model, options);\n      var success = options.success;\n      options.success = function(nextModel, resp, xhr) {\n        if (options.wait) coll.add(nextModel, options);\n        if (success) {\n          success(nextModel, resp);\n        } else {\n          nextModel.trigger('sync', model, resp, options);\n        }\n      };\n      model.save(null, options);\n      return model;\n    },\n\n    // **parse** converts a response into a list of models to be added to the\n    // collection. The default implementation is just to pass it through.\n    parse: function(resp, xhr) {\n      return resp;\n    },\n\n    // Proxy to _'s chain. Can't be proxied the same way the rest of the\n    // underscore methods are proxied because it relies on the underscore\n    // constructor.\n    chain: function () {\n      return _(this.models).chain();\n    },\n\n    // Reset all internal state. Called when the collection is reset.\n    _reset: function(options) {\n      this.length = 0;\n      this.models = [];\n      this._byId  = {};\n      this._byCid = {};\n    },\n\n    // Prepare a model or hash of attributes to be added to this collection.\n    _prepareModel: function(model, options) {\n      options || (options = {});\n      if (!(model instanceof Model)) {\n        var attrs = model;\n        options.collection = this;\n        model = new this.model(attrs, options);\n        if (!model._validate(model.attributes, options)) model = false;\n      } else if (!model.collection) {\n        model.collection = this;\n      }\n      return model;\n    },\n\n    // Internal method to remove a model's ties to a collection.\n    _removeReference: function(model) {\n      if (this == model.collection) {\n        delete model.collection;\n      }\n      model.off('all', this._onModelEvent, this);\n    },\n\n    // Internal method called every time a model in the set fires an event.\n    // Sets need to update their indexes when models change ids. All other\n    // events simply proxy through. \"add\" and \"remove\" events that originate\n    // in other collections are ignored.\n    _onModelEvent: function(event, model, collection, options) {\n      if ((event == 'add' || event == 'remove') && collection != this) return;\n      if (event == 'destroy') {\n        this.remove(model, options);\n      }\n      if (model && event === 'change:' + model.idAttribute) {\n        delete this._byId[model.previous(model.idAttribute)];\n        this._byId[model.id] = model;\n      }\n      this.trigger.apply(this, arguments);\n    }\n\n  });\n\n  // Underscore methods that we want to implement on the Collection.\n  var methods = ['forEach', 'each', 'map', 'reduce', 'reduceRight', 'find',\n    'detect', 'filter', 'select', 'reject', 'every', 'all', 'some', 'any',\n    'include', 'contains', 'invoke', 'max', 'min', 'sortBy', 'sortedIndex',\n    'toArray', 'size', 'first', 'initial', 'rest', 'last', 'without', 'indexOf',\n    'shuffle', 'lastIndexOf', 'isEmpty', 'groupBy'];\n\n  // Mix in each Underscore method as a proxy to `Collection#models`.\n  _.each(methods, function(method) {\n    Collection.prototype[method] = function() {\n      return _[method].apply(_, [this.models].concat(_.toArray(arguments)));\n    };\n  });\n\n  // Backbone.Router\n  // -------------------\n\n  // Routers map faux-URLs to actions, and fire events when routes are\n  // matched. Creating a new one sets its `routes` hash, if not set statically.\n  var Router = Backbone.Router = function(options) {\n    options || (options = {});\n    if (options.routes) this.routes = options.routes;\n    this._bindRoutes();\n    this.initialize.apply(this, arguments);\n  };\n\n  // Cached regular expressions for matching named param parts and splatted\n  // parts of route strings.\n  var namedParam    = /:\\w+/g;\n  var splatParam    = /\\*\\w+/g;\n  var escapeRegExp  = /[-[\\]{}()+?.,\\\\^$|#\\s]/g;\n\n  // Set up all inheritable **Backbone.Router** properties and methods.\n  _.extend(Router.prototype, Events, {\n\n    // Initialize is an empty function by default. Override it with your own\n    // initialization logic.\n    initialize: function(){},\n\n    // Manually bind a single named route to a callback. For example:\n    //\n    //     this.route('search/:query/p:num', 'search', function(query, num) {\n    //       ...\n    //     });\n    //\n    route: function(route, name, callback) {\n      Backbone.history || (Backbone.history = new History);\n      if (!_.isRegExp(route)) route = this._routeToRegExp(route);\n      if (!callback) callback = this[name];\n      Backbone.history.route(route, _.bind(function(fragment) {\n        var args = this._extractParameters(route, fragment);\n        callback && callback.apply(this, args);\n        this.trigger.apply(this, ['route:' + name].concat(args));\n        Backbone.history.trigger('route', this, name, args);\n      }, this));\n      return this;\n    },\n\n    // Simple proxy to `Backbone.history` to save a fragment into the history.\n    navigate: function(fragment, options) {\n      Backbone.history.navigate(fragment, options);\n    },\n\n    // Bind all defined routes to `Backbone.history`. We have to reverse the\n    // order of the routes here to support behavior where the most general\n    // routes can be defined at the bottom of the route map.\n    _bindRoutes: function() {\n      if (!this.routes) return;\n      var routes = [];\n      for (var route in this.routes) {\n        routes.unshift([route, this.routes[route]]);\n      }\n      for (var i = 0, l = routes.length; i < l; i++) {\n        this.route(routes[i][0], routes[i][1], this[routes[i][1]]);\n      }\n    },\n\n    // Convert a route string into a regular expression, suitable for matching\n    // against the current location hash.\n    _routeToRegExp: function(route) {\n      route = route.replace(escapeRegExp, '\\\\$&')\n                   .replace(namedParam, '([^\\/]+)')\n                   .replace(splatParam, '(.*?)');\n      return new RegExp('^' + route + '$');\n    },\n\n    // Given a route, and a URL fragment that it matches, return the array of\n    // extracted parameters.\n    _extractParameters: function(route, fragment) {\n      return route.exec(fragment).slice(1);\n    }\n\n  });\n\n  // Backbone.History\n  // ----------------\n\n  // Handles cross-browser history management, based on URL fragments. If the\n  // browser does not support `onhashchange`, falls back to polling.\n  var History = Backbone.History = function() {\n    this.handlers = [];\n    _.bindAll(this, 'checkUrl');\n  };\n\n  // Cached regex for cleaning leading hashes and slashes .\n  var routeStripper = /^[#\\/]/;\n\n  // Cached regex for detecting MSIE.\n  var isExplorer = /msie [\\w.]+/;\n\n  // Has the history handling already been started?\n  History.started = false;\n\n  // Set up all inheritable **Backbone.History** properties and methods.\n  _.extend(History.prototype, Events, {\n\n    // The default interval to poll for hash changes, if necessary, is\n    // twenty times a second.\n    interval: 50,\n\n    // Gets the true hash value. Cannot use location.hash directly due to bug\n    // in Firefox where location.hash will always be decoded.\n    getHash: function(windowOverride) {\n      var loc = windowOverride ? windowOverride.location : window.location;\n      var match = loc.href.match(/#(.*)$/);\n      return match ? match[1] : '';\n    },\n\n    // Get the cross-browser normalized URL fragment, either from the URL,\n    // the hash, or the override.\n    getFragment: function(fragment, forcePushState) {\n      if (fragment == null) {\n        if (this._hasPushState || forcePushState) {\n          fragment = window.location.pathname;\n          var search = window.location.search;\n          if (search) fragment += search;\n        } else {\n          fragment = this.getHash();\n        }\n      }\n      if (!fragment.indexOf(this.options.root)) fragment = fragment.substr(this.options.root.length);\n      return fragment.replace(routeStripper, '');\n    },\n\n    // Start the hash change handling, returning `true` if the current URL matches\n    // an existing route, and `false` otherwise.\n    start: function(options) {\n      if (History.started) throw new Error(\"Backbone.history has already been started\");\n      History.started = true;\n\n      // Figure out the initial configuration. Do we need an iframe?\n      // Is pushState desired ... is it available?\n      this.options          = _.extend({}, {root: '/'}, this.options, options);\n      this._wantsHashChange = this.options.hashChange !== false;\n      this._wantsPushState  = !!this.options.pushState;\n      this._hasPushState    = !!(this.options.pushState && window.history && window.history.pushState);\n      var fragment          = this.getFragment();\n      var docMode           = document.documentMode;\n      var oldIE             = (isExplorer.exec(navigator.userAgent.toLowerCase()) && (!docMode || docMode <= 7));\n\n      if (oldIE) {\n        this.iframe = $('<iframe src=\"javascript:0\" tabindex=\"-1\" />').hide().appendTo('body')[0].contentWindow;\n        this.navigate(fragment);\n      }\n\n      // Depending on whether we're using pushState or hashes, and whether\n      // 'onhashchange' is supported, determine how we check the URL state.\n      if (this._hasPushState) {\n        $(window).bind('popstate', this.checkUrl);\n      } else if (this._wantsHashChange && ('onhashchange' in window) && !oldIE) {\n        $(window).bind('hashchange', this.checkUrl);\n      } else if (this._wantsHashChange) {\n        this._checkUrlInterval = setInterval(this.checkUrl, this.interval);\n      }\n\n      // Determine if we need to change the base url, for a pushState link\n      // opened by a non-pushState browser.\n      this.fragment = fragment;\n      var loc = window.location;\n      var atRoot  = loc.pathname == this.options.root;\n\n      // If we've started off with a route from a `pushState`-enabled browser,\n      // but we're currently in a browser that doesn't support it...\n      if (this._wantsHashChange && this._wantsPushState && !this._hasPushState && !atRoot) {\n        this.fragment = this.getFragment(null, true);\n        window.location.replace(this.options.root + '#' + this.fragment);\n        // Return immediately as browser will do redirect to new url\n        return true;\n\n      // Or if we've started out with a hash-based route, but we're currently\n      // in a browser where it could be `pushState`-based instead...\n      } else if (this._wantsPushState && this._hasPushState && atRoot && loc.hash) {\n        this.fragment = this.getHash().replace(routeStripper, '');\n        window.history.replaceState({}, document.title, loc.protocol + '//' + loc.host + this.options.root + this.fragment);\n      }\n\n      if (!this.options.silent) {\n        return this.loadUrl();\n      }\n    },\n\n    // Disable Backbone.history, perhaps temporarily. Not useful in a real app,\n    // but possibly useful for unit testing Routers.\n    stop: function() {\n      $(window).unbind('popstate', this.checkUrl).unbind('hashchange', this.checkUrl);\n      clearInterval(this._checkUrlInterval);\n      History.started = false;\n    },\n\n    // Add a route to be tested when the fragment changes. Routes added later\n    // may override previous routes.\n    route: function(route, callback) {\n      this.handlers.unshift({route: route, callback: callback});\n    },\n\n    // Checks the current URL to see if it has changed, and if it has,\n    // calls `loadUrl`, normalizing across the hidden iframe.\n    checkUrl: function(e) {\n      var current = this.getFragment();\n      if (current == this.fragment && this.iframe) current = this.getFragment(this.getHash(this.iframe));\n      if (current == this.fragment) return false;\n      if (this.iframe) this.navigate(current);\n      this.loadUrl() || this.loadUrl(this.getHash());\n    },\n\n    // Attempt to load the current URL fragment. If a route succeeds with a\n    // match, returns `true`. If no defined routes matches the fragment,\n    // returns `false`.\n    loadUrl: function(fragmentOverride) {\n      var fragment = this.fragment = this.getFragment(fragmentOverride);\n      var matched = _.any(this.handlers, function(handler) {\n        if (handler.route.test(fragment)) {\n          handler.callback(fragment);\n          return true;\n        }\n      });\n      return matched;\n    },\n\n    // Save a fragment into the hash history, or replace the URL state if the\n    // 'replace' option is passed. You are responsible for properly URL-encoding\n    // the fragment in advance.\n    //\n    // The options object can contain `trigger: true` if you wish to have the\n    // route callback be fired (not usually desirable), or `replace: true`, if\n    // you wish to modify the current URL without adding an entry to the history.\n    navigate: function(fragment, options) {\n      if (!History.started) return false;\n      if (!options || options === true) options = {trigger: options};\n      var frag = (fragment || '').replace(routeStripper, '');\n      if (this.fragment == frag) return;\n\n      // If pushState is available, we use it to set the fragment as a real URL.\n      if (this._hasPushState) {\n        if (frag.indexOf(this.options.root) != 0) frag = this.options.root + frag;\n        this.fragment = frag;\n        window.history[options.replace ? 'replaceState' : 'pushState']({}, document.title, frag);\n\n      // If hash changes haven't been explicitly disabled, update the hash\n      // fragment to store history.\n      } else if (this._wantsHashChange) {\n        this.fragment = frag;\n        this._updateHash(window.location, frag, options.replace);\n        if (this.iframe && (frag != this.getFragment(this.getHash(this.iframe)))) {\n          // Opening and closing the iframe tricks IE7 and earlier to push a history entry on hash-tag change.\n          // When replace is true, we don't want this.\n          if(!options.replace) this.iframe.document.open().close();\n          this._updateHash(this.iframe.location, frag, options.replace);\n        }\n\n      // If you've told us that you explicitly don't want fallback hashchange-\n      // based history, then `navigate` becomes a page refresh.\n      } else {\n        window.location.assign(this.options.root + fragment);\n      }\n      if (options.trigger) this.loadUrl(fragment);\n    },\n\n    // Update the hash location, either replacing the current entry, or adding\n    // a new one to the browser history.\n    _updateHash: function(location, fragment, replace) {\n      if (replace) {\n        location.replace(location.toString().replace(/(javascript:|#).*$/, '') + '#' + fragment);\n      } else {\n        location.hash = fragment;\n      }\n    }\n  });\n\n  // Backbone.View\n  // -------------\n\n  // Creating a Backbone.View creates its initial element outside of the DOM,\n  // if an existing element is not provided...\n  var View = Backbone.View = function(options) {\n    this.cid = _.uniqueId('view');\n    this._configure(options || {});\n    this._ensureElement();\n    this.initialize.apply(this, arguments);\n    this.delegateEvents();\n  };\n\n  // Cached regex to split keys for `delegate`.\n  var delegateEventSplitter = /^(\\S+)\\s*(.*)$/;\n\n  // List of view options to be merged as properties.\n  var viewOptions = ['model', 'collection', 'el', 'id', 'attributes', 'className', 'tagName'];\n\n  // Set up all inheritable **Backbone.View** properties and methods.\n  _.extend(View.prototype, Events, {\n\n    // The default `tagName` of a View's element is `\"div\"`.\n    tagName: 'div',\n\n    // jQuery delegate for element lookup, scoped to DOM elements within the\n    // current view. This should be prefered to global lookups where possible.\n    $: function(selector) {\n      return this.$el.find(selector);\n    },\n\n    // Initialize is an empty function by default. Override it with your own\n    // initialization logic.\n    initialize: function(){},\n\n    // **render** is the core function that your view should override, in order\n    // to populate its element (`this.el`), with the appropriate HTML. The\n    // convention is for **render** to always return `this`.\n    render: function() {\n      return this;\n    },\n\n    // Remove this view from the DOM. Note that the view isn't present in the\n    // DOM by default, so calling this method may be a no-op.\n    remove: function() {\n      this.$el.remove();\n      return this;\n    },\n\n    // For small amounts of DOM Elements, where a full-blown template isn't\n    // needed, use **make** to manufacture elements, one at a time.\n    //\n    //     var el = this.make('li', {'class': 'row'}, this.model.escape('title'));\n    //\n    make: function(tagName, attributes, content) {\n      var el = document.createElement(tagName);\n      if (attributes) $(el).attr(attributes);\n      if (content) $(el).html(content);\n      return el;\n    },\n\n    // Change the view's element (`this.el` property), including event\n    // re-delegation.\n    setElement: function(element, delegate) {\n      if (this.$el) this.undelegateEvents();\n      this.$el = (element instanceof $) ? element : $(element);\n      this.el = this.$el[0];\n      if (delegate !== false) this.delegateEvents();\n      return this;\n    },\n\n    // Set callbacks, where `this.events` is a hash of\n    //\n    // *{\"event selector\": \"callback\"}*\n    //\n    //     {\n    //       'mousedown .title':  'edit',\n    //       'click .button':     'save'\n    //       'click .open':       function(e) { ... }\n    //     }\n    //\n    // pairs. Callbacks will be bound to the view, with `this` set properly.\n    // Uses event delegation for efficiency.\n    // Omitting the selector binds the event to `this.el`.\n    // This only works for delegate-able events: not `focus`, `blur`, and\n    // not `change`, `submit`, and `reset` in Internet Explorer.\n    delegateEvents: function(events) {\n      if (!(events || (events = getValue(this, 'events')))) return;\n      this.undelegateEvents();\n      for (var key in events) {\n        var method = events[key];\n        if (!_.isFunction(method)) method = this[events[key]];\n        if (!method) throw new Error('Method \"' + events[key] + '\" does not exist');\n        var match = key.match(delegateEventSplitter);\n        var eventName = match[1], selector = match[2];\n        method = _.bind(method, this);\n        eventName += '.delegateEvents' + this.cid;\n        if (selector === '') {\n          this.$el.bind(eventName, method);\n        } else {\n          this.$el.delegate(selector, eventName, method);\n        }\n      }\n    },\n\n    // Clears all callbacks previously bound to the view with `delegateEvents`.\n    // You usually don't need to use this, but may wish to if you have multiple\n    // Backbone views attached to the same DOM element.\n    undelegateEvents: function() {\n      this.$el.unbind('.delegateEvents' + this.cid);\n    },\n\n    // Performs the initial configuration of a View with a set of options.\n    // Keys with special meaning *(model, collection, id, className)*, are\n    // attached directly to the view.\n    _configure: function(options) {\n      if (this.options) options = _.extend({}, this.options, options);\n      for (var i = 0, l = viewOptions.length; i < l; i++) {\n        var attr = viewOptions[i];\n        if (options[attr]) this[attr] = options[attr];\n      }\n      this.options = options;\n    },\n\n    // Ensure that the View has a DOM element to render into.\n    // If `this.el` is a string, pass it through `$()`, take the first\n    // matching element, and re-assign it to `el`. Otherwise, create\n    // an element from the `id`, `className` and `tagName` properties.\n    _ensureElement: function() {\n      if (!this.el) {\n        var attrs = getValue(this, 'attributes') || {};\n        if (this.id) attrs.id = this.id;\n        if (this.className) attrs['class'] = this.className;\n        this.setElement(this.make(this.tagName, attrs), false);\n      } else {\n        this.setElement(this.el, false);\n      }\n    }\n\n  });\n\n  // The self-propagating extend function that Backbone classes use.\n  var extend = function (protoProps, classProps) {\n    var child = inherits(this, protoProps, classProps);\n    child.extend = this.extend;\n    return child;\n  };\n\n  // Set up inheritance for the model, collection, and view.\n  Model.extend = Collection.extend = Router.extend = View.extend = extend;\n\n  // Backbone.sync\n  // -------------\n\n  // Map from CRUD to HTTP for our default `Backbone.sync` implementation.\n  var methodMap = {\n    'create': 'POST',\n    'update': 'PUT',\n    'delete': 'DELETE',\n    'read':   'GET'\n  };\n\n  // Override this function to change the manner in which Backbone persists\n  // models to the server. You will be passed the type of request, and the\n  // model in question. By default, makes a RESTful Ajax request\n  // to the model's `url()`. Some possible customizations could be:\n  //\n  // * Use `setTimeout` to batch rapid-fire updates into a single request.\n  // * Send up the models as XML instead of JSON.\n  // * Persist models via WebSockets instead of Ajax.\n  //\n  // Turn on `Backbone.emulateHTTP` in order to send `PUT` and `DELETE` requests\n  // as `POST`, with a `_method` parameter containing the true HTTP method,\n  // as well as all requests with the body as `application/x-www-form-urlencoded`\n  // instead of `application/json` with the model in a param named `model`.\n  // Useful when interfacing with server-side languages like **PHP** that make\n  // it difficult to read the body of `PUT` requests.\n  Backbone.sync = function(method, model, options) {\n    var type = methodMap[method];\n\n    // Default options, unless specified.\n    options || (options = {});\n\n    // Default JSON-request options.\n    var params = {type: type, dataType: 'json'};\n\n    // Ensure that we have a URL.\n    if (!options.url) {\n      params.url = getValue(model, 'url') || urlError();\n    }\n\n    // Ensure that we have the appropriate request data.\n    if (!options.data && model && (method == 'create' || method == 'update')) {\n      params.contentType = 'application/json';\n      params.data = JSON.stringify(model.toJSON());\n    }\n\n    // For older servers, emulate JSON by encoding the request into an HTML-form.\n    if (Backbone.emulateJSON) {\n      params.contentType = 'application/x-www-form-urlencoded';\n      params.data = params.data ? {model: params.data} : {};\n    }\n\n    // For older servers, emulate HTTP by mimicking the HTTP method with `_method`\n    // And an `X-HTTP-Method-Override` header.\n    if (Backbone.emulateHTTP) {\n      if (type === 'PUT' || type === 'DELETE') {\n        if (Backbone.emulateJSON) params.data._method = type;\n        params.type = 'POST';\n        params.beforeSend = function(xhr) {\n          xhr.setRequestHeader('X-HTTP-Method-Override', type);\n        };\n      }\n    }\n\n    // Don't process data on a non-GET request.\n    if (params.type !== 'GET' && !Backbone.emulateJSON) {\n      params.processData = false;\n    }\n\n    // Make the request, allowing the user to override any Ajax options.\n    return $.ajax(_.extend(params, options));\n  };\n\n  // Wrap an optional error callback with a fallback error event.\n  Backbone.wrapError = function(onError, originalModel, options) {\n    return function(model, resp) {\n      resp = model === originalModel ? resp : model;\n      if (onError) {\n        onError(originalModel, resp, options);\n      } else {\n        originalModel.trigger('error', originalModel, resp, options);\n      }\n    };\n  };\n\n  // Helpers\n  // -------\n\n  // Shared empty constructor function to aid in prototype-chain creation.\n  var ctor = function(){};\n\n  // Helper function to correctly set up the prototype chain, for subclasses.\n  // Similar to `goog.inherits`, but uses a hash of prototype properties and\n  // class properties to be extended.\n  var inherits = function(parent, protoProps, staticProps) {\n    var child;\n\n    // The constructor function for the new subclass is either defined by you\n    // (the \"constructor\" property in your `extend` definition), or defaulted\n    // by us to simply call the parent's constructor.\n    if (protoProps && protoProps.hasOwnProperty('constructor')) {\n      child = protoProps.constructor;\n    } else {\n      child = function(){ parent.apply(this, arguments); };\n    }\n\n    // Inherit class (static) properties from parent.\n    _.extend(child, parent);\n\n    // Set the prototype chain to inherit from `parent`, without calling\n    // `parent`'s constructor function.\n    ctor.prototype = parent.prototype;\n    child.prototype = new ctor();\n\n    // Add prototype properties (instance properties) to the subclass,\n    // if supplied.\n    if (protoProps) _.extend(child.prototype, protoProps);\n\n    // Add static properties to the constructor function, if supplied.\n    if (staticProps) _.extend(child, staticProps);\n\n    // Correctly set child's `prototype.constructor`.\n    child.prototype.constructor = child;\n\n    // Set a convenience property in case the parent's prototype is needed later.\n    child.__super__ = parent.prototype;\n\n    return child;\n  };\n\n  // Helper function to get a value from a Backbone object as a property\n  // or as a function.\n  var getValue = function(object, prop) {\n    if (!(object && object[prop])) return null;\n    return _.isFunction(object[prop]) ? object[prop]() : object[prop];\n  };\n\n  // Throw an error when a URL is needed, and none is supplied.\n  var urlError = function() {\n    throw new Error('A \"url\" property or function must be specified');\n  };\n\n}).call(this);\n"
  },
  {
    "path": "newscoop/js/base64.js",
    "content": "/**\n*\n*  Base64 encode / decode\n*  http://www.webtoolkit.info/\n*\n**/\n \nvar Base64 = {\n \n\t// private property\n\t_keyStr : \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\",\n \n\t// public method for encoding\n\tencode : function (input) {\n\t\tvar output = \"\";\n\t\tvar chr1, chr2, chr3, enc1, enc2, enc3, enc4;\n\t\tvar i = 0;\n \n\t\tinput = Base64._utf8_encode(input);\n \n\t\twhile (i < input.length) {\n \n\t\t\tchr1 = input.charCodeAt(i++);\n\t\t\tchr2 = input.charCodeAt(i++);\n\t\t\tchr3 = input.charCodeAt(i++);\n \n\t\t\tenc1 = chr1 >> 2;\n\t\t\tenc2 = ((chr1 & 3) << 4) | (chr2 >> 4);\n\t\t\tenc3 = ((chr2 & 15) << 2) | (chr3 >> 6);\n\t\t\tenc4 = chr3 & 63;\n \n\t\t\tif (isNaN(chr2)) {\n\t\t\t\tenc3 = enc4 = 64;\n\t\t\t} else if (isNaN(chr3)) {\n\t\t\t\tenc4 = 64;\n\t\t\t}\n \n\t\t\toutput = output +\n\t\t\tthis._keyStr.charAt(enc1) + this._keyStr.charAt(enc2) +\n\t\t\tthis._keyStr.charAt(enc3) + this._keyStr.charAt(enc4);\n \n\t\t}\n \n\t\treturn output;\n\t},\n \n\t// public method for decoding\n\tdecode : function (input) {\n\t\tvar output = \"\";\n\t\tvar chr1, chr2, chr3;\n\t\tvar enc1, enc2, enc3, enc4;\n\t\tvar i = 0;\n \n\t\tinput = input.replace(/[^A-Za-z0-9\\+\\/\\=]/g, \"\");\n \n\t\twhile (i < input.length) {\n \n\t\t\tenc1 = this._keyStr.indexOf(input.charAt(i++));\n\t\t\tenc2 = this._keyStr.indexOf(input.charAt(i++));\n\t\t\tenc3 = this._keyStr.indexOf(input.charAt(i++));\n\t\t\tenc4 = this._keyStr.indexOf(input.charAt(i++));\n \n\t\t\tchr1 = (enc1 << 2) | (enc2 >> 4);\n\t\t\tchr2 = ((enc2 & 15) << 4) | (enc3 >> 2);\n\t\t\tchr3 = ((enc3 & 3) << 6) | enc4;\n \n\t\t\toutput = output + String.fromCharCode(chr1);\n \n\t\t\tif (enc3 != 64) {\n\t\t\t\toutput = output + String.fromCharCode(chr2);\n\t\t\t}\n\t\t\tif (enc4 != 64) {\n\t\t\t\toutput = output + String.fromCharCode(chr3);\n\t\t\t}\n \n\t\t}\n \n\t\toutput = Base64._utf8_decode(output);\n \n\t\treturn output;\n \n\t},\n \n\t// private method for UTF-8 encoding\n\t_utf8_encode : function (string) {\n\t\tstring = string.replace(/\\r\\n/g,\"\\n\");\n\t\tvar utftext = \"\";\n \n\t\tfor (var n = 0; n < string.length; n++) {\n \n\t\t\tvar c = string.charCodeAt(n);\n \n\t\t\tif (c < 128) {\n\t\t\t\tutftext += String.fromCharCode(c);\n\t\t\t}\n\t\t\telse if((c > 127) && (c < 2048)) {\n\t\t\t\tutftext += String.fromCharCode((c >> 6) | 192);\n\t\t\t\tutftext += String.fromCharCode((c & 63) | 128);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tutftext += String.fromCharCode((c >> 12) | 224);\n\t\t\t\tutftext += String.fromCharCode(((c >> 6) & 63) | 128);\n\t\t\t\tutftext += String.fromCharCode((c & 63) | 128);\n\t\t\t}\n \n\t\t}\n \n\t\treturn utftext;\n\t},\n \n\t// private method for UTF-8 decoding\n\t_utf8_decode : function (utftext) {\n\t\tvar string = \"\";\n\t\tvar i = 0;\n\t\tvar c = c1 = c2 = 0;\n \n\t\twhile ( i < utftext.length ) {\n \n\t\t\tc = utftext.charCodeAt(i);\n \n\t\t\tif (c < 128) {\n\t\t\t\tstring += String.fromCharCode(c);\n\t\t\t\ti++;\n\t\t\t}\n\t\t\telse if((c > 191) && (c < 224)) {\n\t\t\t\tc2 = utftext.charCodeAt(i+1);\n\t\t\t\tstring += String.fromCharCode(((c & 31) << 6) | (c2 & 63));\n\t\t\t\ti += 2;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tc2 = utftext.charCodeAt(i+1);\n\t\t\t\tc3 = utftext.charCodeAt(i+2);\n\t\t\t\tstring += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));\n\t\t\t\ti += 3;\n\t\t\t}\n \n\t\t}\n \n\t\treturn string;\n\t}\n \n}\n\n"
  },
  {
    "path": "newscoop/js/bootstrap.js",
    "content": "/*!\n * Bootstrap v3.0.2 by @fat and @mdo\n * Copyright 2013 Twitter, Inc.\n * Licensed under http://www.apache.org/licenses/LICENSE-2.0\n *\n * Designed and built with all the love in the world by @mdo and @fat.\n */\n\nif (typeof jQuery === \"undefined\") { throw new Error(\"Bootstrap requires jQuery\") }\n\n/* ========================================================================\n * Bootstrap: transition.js v3.0.2\n * http://getbootstrap.com/javascript/#transitions\n * ========================================================================\n * Copyright 2013 Twitter, Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * ======================================================================== */\n\n\n+function ($) { \"use strict\";\n\n  // CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/)\n  // ============================================================\n\n  function transitionEnd() {\n    var el = document.createElement('bootstrap')\n\n    var transEndEventNames = {\n      'WebkitTransition' : 'webkitTransitionEnd'\n    , 'MozTransition'    : 'transitionend'\n    , 'OTransition'      : 'oTransitionEnd otransitionend'\n    , 'transition'       : 'transitionend'\n    }\n\n    for (var name in transEndEventNames) {\n      if (el.style[name] !== undefined) {\n        return { end: transEndEventNames[name] }\n      }\n    }\n  }\n\n  // http://blog.alexmaccaw.com/css-transitions\n  $.fn.emulateTransitionEnd = function (duration) {\n    var called = false, $el = this\n    $(this).one($.support.transition.end, function () { called = true })\n    var callback = function () { if (!called) $($el).trigger($.support.transition.end) }\n    setTimeout(callback, duration)\n    return this\n  }\n\n  $(function () {\n    $.support.transition = transitionEnd()\n  })\n\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: alert.js v3.0.2\n * http://getbootstrap.com/javascript/#alerts\n * ========================================================================\n * Copyright 2013 Twitter, Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * ======================================================================== */\n\n\n+function ($) { \"use strict\";\n\n  // ALERT CLASS DEFINITION\n  // ======================\n\n  var dismiss = '[data-dismiss=\"alert\"]'\n  var Alert   = function (el) {\n    $(el).on('click', dismiss, this.close)\n  }\n\n  Alert.prototype.close = function (e) {\n    var $this    = $(this)\n    var selector = $this.attr('data-target')\n\n    if (!selector) {\n      selector = $this.attr('href')\n      selector = selector && selector.replace(/.*(?=#[^\\s]*$)/, '') // strip for ie7\n    }\n\n    var $parent = $(selector)\n\n    if (e) e.preventDefault()\n\n    if (!$parent.length) {\n      $parent = $this.hasClass('alert') ? $this : $this.parent()\n    }\n\n    $parent.trigger(e = $.Event('close.bs.alert'))\n\n    if (e.isDefaultPrevented()) return\n\n    $parent.removeClass('in')\n\n    function removeElement() {\n      $parent.trigger('closed.bs.alert').remove()\n    }\n\n    $.support.transition && $parent.hasClass('fade') ?\n      $parent\n        .one($.support.transition.end, removeElement)\n        .emulateTransitionEnd(150) :\n      removeElement()\n  }\n\n\n  // ALERT PLUGIN DEFINITION\n  // =======================\n\n  var old = $.fn.alert\n\n  $.fn.alert = function (option) {\n    return this.each(function () {\n      var $this = $(this)\n      var data  = $this.data('bs.alert')\n\n      if (!data) $this.data('bs.alert', (data = new Alert(this)))\n      if (typeof option == 'string') data[option].call($this)\n    })\n  }\n\n  $.fn.alert.Constructor = Alert\n\n\n  // ALERT NO CONFLICT\n  // =================\n\n  $.fn.alert.noConflict = function () {\n    $.fn.alert = old\n    return this\n  }\n\n\n  // ALERT DATA-API\n  // ==============\n\n  $(document).on('click.bs.alert.data-api', dismiss, Alert.prototype.close)\n\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: button.js v3.0.2\n * http://getbootstrap.com/javascript/#buttons\n * ========================================================================\n * Copyright 2013 Twitter, Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * ======================================================================== */\n\n\n+function ($) { \"use strict\";\n\n  // BUTTON PUBLIC CLASS DEFINITION\n  // ==============================\n\n  var Button = function (element, options) {\n    this.$element = $(element)\n    this.options  = $.extend({}, Button.DEFAULTS, options)\n  }\n\n  Button.DEFAULTS = {\n    loadingText: 'loading...'\n  }\n\n  Button.prototype.setState = function (state) {\n    var d    = 'disabled'\n    var $el  = this.$element\n    var val  = $el.is('input') ? 'val' : 'html'\n    var data = $el.data()\n\n    state = state + 'Text'\n\n    if (!data.resetText) $el.data('resetText', $el[val]())\n\n    $el[val](data[state] || this.options[state])\n\n    // push to event loop to allow forms to submit\n    setTimeout(function () {\n      state == 'loadingText' ?\n        $el.addClass(d).attr(d, d) :\n        $el.removeClass(d).removeAttr(d);\n    }, 0)\n  }\n\n  Button.prototype.toggle = function () {\n    var $parent = this.$element.closest('[data-toggle=\"buttons\"]')\n\n    if ($parent.length) {\n      var $input = this.$element.find('input')\n        .prop('checked', !this.$element.hasClass('active'))\n        .trigger('change')\n      if ($input.prop('type') === 'radio') $parent.find('.active').removeClass('active')\n    }\n\n    this.$element.toggleClass('active')\n  }\n\n\n  // BUTTON PLUGIN DEFINITION\n  // ========================\n\n  var old = $.fn.button\n\n  $.fn.button = function (option) {\n    return this.each(function () {\n      var $this   = $(this)\n      var data    = $this.data('bs.button')\n      var options = typeof option == 'object' && option\n\n      if (!data) $this.data('bs.button', (data = new Button(this, options)))\n\n      if (option == 'toggle') data.toggle()\n      else if (option) data.setState(option)\n    })\n  }\n\n  $.fn.button.Constructor = Button\n\n\n  // BUTTON NO CONFLICT\n  // ==================\n\n  $.fn.button.noConflict = function () {\n    $.fn.button = old\n    return this\n  }\n\n\n  // BUTTON DATA-API\n  // ===============\n\n  $(document).on('click.bs.button.data-api', '[data-toggle^=button]', function (e) {\n    var $btn = $(e.target)\n    if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')\n    $btn.button('toggle')\n    e.preventDefault()\n  })\n\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: carousel.js v3.0.2\n * http://getbootstrap.com/javascript/#carousel\n * ========================================================================\n * Copyright 2013 Twitter, Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * ======================================================================== */\n\n\n+function ($) { \"use strict\";\n\n  // CAROUSEL CLASS DEFINITION\n  // =========================\n\n  var Carousel = function (element, options) {\n    this.$element    = $(element)\n    this.$indicators = this.$element.find('.carousel-indicators')\n    this.options     = options\n    this.paused      =\n    this.sliding     =\n    this.interval    =\n    this.$active     =\n    this.$items      = null\n\n    this.options.pause == 'hover' && this.$element\n      .on('mouseenter', $.proxy(this.pause, this))\n      .on('mouseleave', $.proxy(this.cycle, this))\n  }\n\n  Carousel.DEFAULTS = {\n    interval: 5000\n  , pause: 'hover'\n  , wrap: true\n  }\n\n  Carousel.prototype.cycle =  function (e) {\n    e || (this.paused = false)\n\n    this.interval && clearInterval(this.interval)\n\n    this.options.interval\n      && !this.paused\n      && (this.interval = setInterval($.proxy(this.next, this), this.options.interval))\n\n    return this\n  }\n\n  Carousel.prototype.getActiveIndex = function () {\n    this.$active = this.$element.find('.item.active')\n    this.$items  = this.$active.parent().children()\n\n    return this.$items.index(this.$active)\n  }\n\n  Carousel.prototype.to = function (pos) {\n    var that        = this\n    var activeIndex = this.getActiveIndex()\n\n    if (pos > (this.$items.length - 1) || pos < 0) return\n\n    if (this.sliding)       return this.$element.one('slid', function () { that.to(pos) })\n    if (activeIndex == pos) return this.pause().cycle()\n\n    return this.slide(pos > activeIndex ? 'next' : 'prev', $(this.$items[pos]))\n  }\n\n  Carousel.prototype.pause = function (e) {\n    e || (this.paused = true)\n\n    if (this.$element.find('.next, .prev').length && $.support.transition.end) {\n      this.$element.trigger($.support.transition.end)\n      this.cycle(true)\n    }\n\n    this.interval = clearInterval(this.interval)\n\n    return this\n  }\n\n  Carousel.prototype.next = function () {\n    if (this.sliding) return\n    return this.slide('next')\n  }\n\n  Carousel.prototype.prev = function () {\n    if (this.sliding) return\n    return this.slide('prev')\n  }\n\n  Carousel.prototype.slide = function (type, next) {\n    var $active   = this.$element.find('.item.active')\n    var $next     = next || $active[type]()\n    var isCycling = this.interval\n    var direction = type == 'next' ? 'left' : 'right'\n    var fallback  = type == 'next' ? 'first' : 'last'\n    var that      = this\n\n    if (!$next.length) {\n      if (!this.options.wrap) return\n      $next = this.$element.find('.item')[fallback]()\n    }\n\n    this.sliding = true\n\n    isCycling && this.pause()\n\n    var e = $.Event('slide.bs.carousel', { relatedTarget: $next[0], direction: direction })\n\n    if ($next.hasClass('active')) return\n\n    if (this.$indicators.length) {\n      this.$indicators.find('.active').removeClass('active')\n      this.$element.one('slid', function () {\n        var $nextIndicator = $(that.$indicators.children()[that.getActiveIndex()])\n        $nextIndicator && $nextIndicator.addClass('active')\n      })\n    }\n\n    if ($.support.transition && this.$element.hasClass('slide')) {\n      this.$element.trigger(e)\n      if (e.isDefaultPrevented()) return\n      $next.addClass(type)\n      $next[0].offsetWidth // force reflow\n      $active.addClass(direction)\n      $next.addClass(direction)\n      $active\n        .one($.support.transition.end, function () {\n          $next.removeClass([type, direction].join(' ')).addClass('active')\n          $active.removeClass(['active', direction].join(' '))\n          that.sliding = false\n          setTimeout(function () { that.$element.trigger('slid') }, 0)\n        })\n        .emulateTransitionEnd(600)\n    } else {\n      this.$element.trigger(e)\n      if (e.isDefaultPrevented()) return\n      $active.removeClass('active')\n      $next.addClass('active')\n      this.sliding = false\n      this.$element.trigger('slid')\n    }\n\n    isCycling && this.cycle()\n\n    return this\n  }\n\n\n  // CAROUSEL PLUGIN DEFINITION\n  // ==========================\n\n  var old = $.fn.carousel\n\n  $.fn.carousel = function (option) {\n    return this.each(function () {\n      var $this   = $(this)\n      var data    = $this.data('bs.carousel')\n      var options = $.extend({}, Carousel.DEFAULTS, $this.data(), typeof option == 'object' && option)\n      var action  = typeof option == 'string' ? option : options.slide\n\n      if (!data) $this.data('bs.carousel', (data = new Carousel(this, options)))\n      if (typeof option == 'number') data.to(option)\n      else if (action) data[action]()\n      else if (options.interval) data.pause().cycle()\n    })\n  }\n\n  $.fn.carousel.Constructor = Carousel\n\n\n  // CAROUSEL NO CONFLICT\n  // ====================\n\n  $.fn.carousel.noConflict = function () {\n    $.fn.carousel = old\n    return this\n  }\n\n\n  // CAROUSEL DATA-API\n  // =================\n\n  $(document).on('click.bs.carousel.data-api', '[data-slide], [data-slide-to]', function (e) {\n    var $this   = $(this), href\n    var $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\\s]+$)/, '')) //strip for ie7\n    var options = $.extend({}, $target.data(), $this.data())\n    var slideIndex = $this.attr('data-slide-to')\n    if (slideIndex) options.interval = false\n\n    $target.carousel(options)\n\n    if (slideIndex = $this.attr('data-slide-to')) {\n      $target.data('bs.carousel').to(slideIndex)\n    }\n\n    e.preventDefault()\n  })\n\n  $(window).on('load', function () {\n    $('[data-ride=\"carousel\"]').each(function () {\n      var $carousel = $(this)\n      $carousel.carousel($carousel.data())\n    })\n  })\n\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: collapse.js v3.0.2\n * http://getbootstrap.com/javascript/#collapse\n * ========================================================================\n * Copyright 2013 Twitter, Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * ======================================================================== */\n\n\n+function ($) { \"use strict\";\n\n  // COLLAPSE PUBLIC CLASS DEFINITION\n  // ================================\n\n  var Collapse = function (element, options) {\n    this.$element      = $(element)\n    this.options       = $.extend({}, Collapse.DEFAULTS, options)\n    this.transitioning = null\n\n    if (this.options.parent) this.$parent = $(this.options.parent)\n    if (this.options.toggle) this.toggle()\n  }\n\n  Collapse.DEFAULTS = {\n    toggle: true\n  }\n\n  Collapse.prototype.dimension = function () {\n    var hasWidth = this.$element.hasClass('width')\n    return hasWidth ? 'width' : 'height'\n  }\n\n  Collapse.prototype.show = function () {\n    if (this.transitioning || this.$element.hasClass('in')) return\n\n    var startEvent = $.Event('show.bs.collapse')\n    this.$element.trigger(startEvent)\n    if (startEvent.isDefaultPrevented()) return\n\n    var actives = this.$parent && this.$parent.find('> .panel > .in')\n\n    if (actives && actives.length) {\n      var hasData = actives.data('bs.collapse')\n      if (hasData && hasData.transitioning) return\n      actives.collapse('hide')\n      hasData || actives.data('bs.collapse', null)\n    }\n\n    var dimension = this.dimension()\n\n    this.$element\n      .removeClass('collapse')\n      .addClass('collapsing')\n      [dimension](0)\n\n    this.transitioning = 1\n\n    var complete = function () {\n      this.$element\n        .removeClass('collapsing')\n        .addClass('in')\n        [dimension]('auto')\n      this.transitioning = 0\n      this.$element.trigger('shown.bs.collapse')\n    }\n\n    if (!$.support.transition) return complete.call(this)\n\n    var scrollSize = $.camelCase(['scroll', dimension].join('-'))\n\n    this.$element\n      .one($.support.transition.end, $.proxy(complete, this))\n      .emulateTransitionEnd(350)\n      [dimension](this.$element[0][scrollSize])\n  }\n\n  Collapse.prototype.hide = function () {\n    if (this.transitioning || !this.$element.hasClass('in')) return\n\n    var startEvent = $.Event('hide.bs.collapse')\n    this.$element.trigger(startEvent)\n    if (startEvent.isDefaultPrevented()) return\n\n    var dimension = this.dimension()\n\n    this.$element\n      [dimension](this.$element[dimension]())\n      [0].offsetHeight\n\n    this.$element\n      .addClass('collapsing')\n      .removeClass('collapse')\n      .removeClass('in')\n\n    this.transitioning = 1\n\n    var complete = function () {\n      this.transitioning = 0\n      this.$element\n        .trigger('hidden.bs.collapse')\n        .removeClass('collapsing')\n        .addClass('collapse')\n    }\n\n    if (!$.support.transition) return complete.call(this)\n\n    this.$element\n      [dimension](0)\n      .one($.support.transition.end, $.proxy(complete, this))\n      .emulateTransitionEnd(350)\n  }\n\n  Collapse.prototype.toggle = function () {\n    this[this.$element.hasClass('in') ? 'hide' : 'show']()\n  }\n\n\n  // COLLAPSE PLUGIN DEFINITION\n  // ==========================\n\n  var old = $.fn.collapse\n\n  $.fn.collapse = function (option) {\n    return this.each(function () {\n      var $this   = $(this)\n      var data    = $this.data('bs.collapse')\n      var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option)\n\n      if (!data) $this.data('bs.collapse', (data = new Collapse(this, options)))\n      if (typeof option == 'string') data[option]()\n    })\n  }\n\n  $.fn.collapse.Constructor = Collapse\n\n\n  // COLLAPSE NO CONFLICT\n  // ====================\n\n  $.fn.collapse.noConflict = function () {\n    $.fn.collapse = old\n    return this\n  }\n\n\n  // COLLAPSE DATA-API\n  // =================\n\n  $(document).on('click.bs.collapse.data-api', '[data-toggle=collapse]', function (e) {\n    var $this   = $(this), href\n    var target  = $this.attr('data-target')\n        || e.preventDefault()\n        || (href = $this.attr('href')) && href.replace(/.*(?=#[^\\s]+$)/, '') //strip for ie7\n    var $target = $(target)\n    var data    = $target.data('bs.collapse')\n    var option  = data ? 'toggle' : $this.data()\n    var parent  = $this.attr('data-parent')\n    var $parent = parent && $(parent)\n\n    if (!data || !data.transitioning) {\n      if ($parent) $parent.find('[data-toggle=collapse][data-parent=\"' + parent + '\"]').not($this).addClass('collapsed')\n      $this[$target.hasClass('in') ? 'addClass' : 'removeClass']('collapsed')\n    }\n\n    $target.collapse(option)\n  })\n\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: dropdown.js v3.0.2\n * http://getbootstrap.com/javascript/#dropdowns\n * ========================================================================\n * Copyright 2013 Twitter, Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * ======================================================================== */\n\n\n+function ($) { \"use strict\";\n\n  // DROPDOWN CLASS DEFINITION\n  // =========================\n\n  var backdrop = '.dropdown-backdrop'\n  var toggle   = '[data-toggle=dropdown]'\n  var Dropdown = function (element) {\n    var $el = $(element).on('click.bs.dropdown', this.toggle)\n  }\n\n  Dropdown.prototype.toggle = function (e) {\n    var $this = $(this)\n\n    if ($this.is('.disabled, :disabled')) return\n\n    var $parent  = getParent($this)\n    var isActive = $parent.hasClass('open')\n\n    clearMenus()\n\n    if (!isActive) {\n      if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) {\n        // if mobile we we use a backdrop because click events don't delegate\n        $('<div class=\"dropdown-backdrop\"/>').insertAfter($(this)).on('click', clearMenus)\n      }\n\n      $parent.trigger(e = $.Event('show.bs.dropdown'))\n\n      if (e.isDefaultPrevented()) return\n\n      $parent\n        .toggleClass('open')\n        .trigger('shown.bs.dropdown')\n\n      $this.focus()\n    }\n\n    return false\n  }\n\n  Dropdown.prototype.keydown = function (e) {\n    if (!/(38|40|27)/.test(e.keyCode)) return\n\n    var $this = $(this)\n\n    e.preventDefault()\n    e.stopPropagation()\n\n    if ($this.is('.disabled, :disabled')) return\n\n    var $parent  = getParent($this)\n    var isActive = $parent.hasClass('open')\n\n    if (!isActive || (isActive && e.keyCode == 27)) {\n      if (e.which == 27) $parent.find(toggle).focus()\n      return $this.click()\n    }\n\n    var $items = $('[role=menu] li:not(.divider):visible a', $parent)\n\n    if (!$items.length) return\n\n    var index = $items.index($items.filter(':focus'))\n\n    if (e.keyCode == 38 && index > 0)                 index--                        // up\n    if (e.keyCode == 40 && index < $items.length - 1) index++                        // down\n    if (!~index)                                      index=0\n\n    $items.eq(index).focus()\n  }\n\n  function clearMenus() {\n    $(backdrop).remove()\n    $(toggle).each(function (e) {\n      var $parent = getParent($(this))\n      if (!$parent.hasClass('open')) return\n      $parent.trigger(e = $.Event('hide.bs.dropdown'))\n      if (e.isDefaultPrevented()) return\n      $parent.removeClass('open').trigger('hidden.bs.dropdown')\n    })\n  }\n\n  function getParent($this) {\n    var selector = $this.attr('data-target')\n\n    if (!selector) {\n      selector = $this.attr('href')\n      selector = selector && /#/.test(selector) && selector.replace(/.*(?=#[^\\s]*$)/, '') //strip for ie7\n    }\n\n    var $parent = selector && $(selector)\n\n    return $parent && $parent.length ? $parent : $this.parent()\n  }\n\n\n  // DROPDOWN PLUGIN DEFINITION\n  // ==========================\n\n  var old = $.fn.dropdown\n\n  $.fn.dropdown = function (option) {\n    return this.each(function () {\n      var $this = $(this)\n      var data  = $this.data('dropdown')\n\n      if (!data) $this.data('dropdown', (data = new Dropdown(this)))\n      if (typeof option == 'string') data[option].call($this)\n    })\n  }\n\n  $.fn.dropdown.Constructor = Dropdown\n\n\n  // DROPDOWN NO CONFLICT\n  // ====================\n\n  $.fn.dropdown.noConflict = function () {\n    $.fn.dropdown = old\n    return this\n  }\n\n\n  // APPLY TO STANDARD DROPDOWN ELEMENTS\n  // ===================================\n\n  $(document)\n    .on('click.bs.dropdown.data-api', clearMenus)\n    .on('click.bs.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })\n    .on('click.bs.dropdown.data-api'  , toggle, Dropdown.prototype.toggle)\n    .on('keydown.bs.dropdown.data-api', toggle + ', [role=menu]' , Dropdown.prototype.keydown)\n\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: modal.js v3.0.2\n * http://getbootstrap.com/javascript/#modals\n * ========================================================================\n * Copyright 2013 Twitter, Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * ======================================================================== */\n\n\n+function ($) { \"use strict\";\n\n  // MODAL CLASS DEFINITION\n  // ======================\n\n  var Modal = function (element, options) {\n    this.options   = options\n    this.$element  = $(element)\n    this.$backdrop =\n    this.isShown   = null\n\n    if (this.options.remote) this.$element.load(this.options.remote)\n  }\n\n  Modal.DEFAULTS = {\n      backdrop: true\n    , keyboard: true\n    , show: true\n  }\n\n  Modal.prototype.toggle = function (_relatedTarget) {\n    return this[!this.isShown ? 'show' : 'hide'](_relatedTarget)\n  }\n\n  Modal.prototype.show = function (_relatedTarget) {\n    var that = this\n    var e    = $.Event('show.bs.modal', { relatedTarget: _relatedTarget })\n\n    this.$element.trigger(e)\n\n    if (this.isShown || e.isDefaultPrevented()) return\n\n    this.isShown = true\n\n    this.escape()\n\n    this.$element.on('click.dismiss.modal', '[data-dismiss=\"modal\"]', $.proxy(this.hide, this))\n\n    this.backdrop(function () {\n      var transition = $.support.transition && that.$element.hasClass('fade')\n\n      if (!that.$element.parent().length) {\n        that.$element.appendTo(document.body) // don't move modals dom position\n      }\n\n      that.$element.show()\n\n      if (transition) {\n        that.$element[0].offsetWidth // force reflow\n      }\n\n      that.$element\n        .addClass('in')\n        .attr('aria-hidden', false)\n\n      that.enforceFocus()\n\n      var e = $.Event('shown.bs.modal', { relatedTarget: _relatedTarget })\n\n      transition ?\n        that.$element.find('.modal-dialog') // wait for modal to slide in\n          .one($.support.transition.end, function () {\n            that.$element.focus().trigger(e)\n          })\n          .emulateTransitionEnd(300) :\n        that.$element.focus().trigger(e)\n    })\n  }\n\n  Modal.prototype.hide = function (e) {\n    if (e) e.preventDefault()\n\n    e = $.Event('hide.bs.modal')\n\n    this.$element.trigger(e)\n\n    if (!this.isShown || e.isDefaultPrevented()) return\n\n    this.isShown = false\n\n    this.escape()\n\n    $(document).off('focusin.bs.modal')\n\n    this.$element\n      .removeClass('in')\n      .attr('aria-hidden', true)\n      .off('click.dismiss.modal')\n\n    $.support.transition && this.$element.hasClass('fade') ?\n      this.$element\n        .one($.support.transition.end, $.proxy(this.hideModal, this))\n        .emulateTransitionEnd(300) :\n      this.hideModal()\n  }\n\n  Modal.prototype.enforceFocus = function () {\n    $(document)\n      .off('focusin.bs.modal') // guard against infinite focus loop\n      .on('focusin.bs.modal', $.proxy(function (e) {\n        if (this.$element[0] !== e.target && !this.$element.has(e.target).length) {\n          this.$element.focus()\n        }\n      }, this))\n  }\n\n  Modal.prototype.escape = function () {\n    if (this.isShown && this.options.keyboard) {\n      this.$element.on('keyup.dismiss.bs.modal', $.proxy(function (e) {\n        e.which == 27 && this.hide()\n      }, this))\n    } else if (!this.isShown) {\n      this.$element.off('keyup.dismiss.bs.modal')\n    }\n  }\n\n  Modal.prototype.hideModal = function () {\n    var that = this\n    this.$element.hide()\n    this.backdrop(function () {\n      that.removeBackdrop()\n      that.$element.trigger('hidden.bs.modal')\n    })\n  }\n\n  Modal.prototype.removeBackdrop = function () {\n    this.$backdrop && this.$backdrop.remove()\n    this.$backdrop = null\n  }\n\n  Modal.prototype.backdrop = function (callback) {\n    var that    = this\n    var animate = this.$element.hasClass('fade') ? 'fade' : ''\n\n    if (this.isShown && this.options.backdrop) {\n      var doAnimate = $.support.transition && animate\n\n      this.$backdrop = $('<div class=\"modal-backdrop ' + animate + '\" />')\n        .appendTo(document.body)\n\n      this.$element.on('click.dismiss.modal', $.proxy(function (e) {\n        if (e.target !== e.currentTarget) return\n        this.options.backdrop == 'static'\n          ? this.$element[0].focus.call(this.$element[0])\n          : this.hide.call(this)\n      }, this))\n\n      if (doAnimate) this.$backdrop[0].offsetWidth // force reflow\n\n      this.$backdrop.addClass('in')\n\n      if (!callback) return\n\n      doAnimate ?\n        this.$backdrop\n          .one($.support.transition.end, callback)\n          .emulateTransitionEnd(150) :\n        callback()\n\n    } else if (!this.isShown && this.$backdrop) {\n      this.$backdrop.removeClass('in')\n\n      $.support.transition && this.$element.hasClass('fade')?\n        this.$backdrop\n          .one($.support.transition.end, callback)\n          .emulateTransitionEnd(150) :\n        callback()\n\n    } else if (callback) {\n      callback()\n    }\n  }\n\n\n  // MODAL PLUGIN DEFINITION\n  // =======================\n\n  var old = $.fn.modal\n\n  $.fn.modal = function (option, _relatedTarget) {\n    return this.each(function () {\n      var $this   = $(this)\n      var data    = $this.data('bs.modal')\n      var options = $.extend({}, Modal.DEFAULTS, $this.data(), typeof option == 'object' && option)\n\n      if (!data) $this.data('bs.modal', (data = new Modal(this, options)))\n      if (typeof option == 'string') data[option](_relatedTarget)\n      else if (options.show) data.show(_relatedTarget)\n    })\n  }\n\n  $.fn.modal.Constructor = Modal\n\n\n  // MODAL NO CONFLICT\n  // =================\n\n  $.fn.modal.noConflict = function () {\n    $.fn.modal = old\n    return this\n  }\n\n\n  // MODAL DATA-API\n  // ==============\n\n  $(document).on('click.bs.modal.data-api', '[data-toggle=\"modal\"]', function (e) {\n    var $this   = $(this)\n    var href    = $this.attr('href')\n    var $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\\s]+$)/, ''))) //strip for ie7\n    var option  = $target.data('modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data())\n\n    e.preventDefault()\n\n    $target\n      .modal(option, this)\n      .one('hide', function () {\n        $this.is(':visible') && $this.focus()\n      })\n  })\n\n  $(document)\n    .on('show.bs.modal',  '.modal', function () { $(document.body).addClass('modal-open') })\n    .on('hidden.bs.modal', '.modal', function () { $(document.body).removeClass('modal-open') })\n\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: tooltip.js v3.0.2\n * http://getbootstrap.com/javascript/#tooltip\n * Inspired by the original jQuery.tipsy by Jason Frame\n * ========================================================================\n * Copyright 2013 Twitter, Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * ======================================================================== */\n\n\n+function ($) { \"use strict\";\n\n  // TOOLTIP PUBLIC CLASS DEFINITION\n  // ===============================\n\n  var Tooltip = function (element, options) {\n    this.type       =\n    this.options    =\n    this.enabled    =\n    this.timeout    =\n    this.hoverState =\n    this.$element   = null\n\n    this.init('tooltip', element, options)\n  }\n\n  Tooltip.DEFAULTS = {\n    animation: true\n  , placement: 'top'\n  , selector: false\n  , template: '<div class=\"tooltip\"><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>'\n  , trigger: 'hover focus'\n  , title: ''\n  , delay: 0\n  , html: false\n  , container: false\n  }\n\n  Tooltip.prototype.init = function (type, element, options) {\n    this.enabled  = true\n    this.type     = type\n    this.$element = $(element)\n    this.options  = this.getOptions(options)\n\n    var triggers = this.options.trigger.split(' ')\n\n    for (var i = triggers.length; i--;) {\n      var trigger = triggers[i]\n\n      if (trigger == 'click') {\n        this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this))\n      } else if (trigger != 'manual') {\n        var eventIn  = trigger == 'hover' ? 'mouseenter' : 'focus'\n        var eventOut = trigger == 'hover' ? 'mouseleave' : 'blur'\n\n        this.$element.on(eventIn  + '.' + this.type, this.options.selector, $.proxy(this.enter, this))\n        this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this))\n      }\n    }\n\n    this.options.selector ?\n      (this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) :\n      this.fixTitle()\n  }\n\n  Tooltip.prototype.getDefaults = function () {\n    return Tooltip.DEFAULTS\n  }\n\n  Tooltip.prototype.getOptions = function (options) {\n    options = $.extend({}, this.getDefaults(), this.$element.data(), options)\n\n    if (options.delay && typeof options.delay == 'number') {\n      options.delay = {\n        show: options.delay\n      , hide: options.delay\n      }\n    }\n\n    return options\n  }\n\n  Tooltip.prototype.getDelegateOptions = function () {\n    var options  = {}\n    var defaults = this.getDefaults()\n\n    this._options && $.each(this._options, function (key, value) {\n      if (defaults[key] != value) options[key] = value\n    })\n\n    return options\n  }\n\n  Tooltip.prototype.enter = function (obj) {\n    var self = obj instanceof this.constructor ?\n      obj : $(obj.currentTarget)[this.type](this.getDelegateOptions()).data('bs.' + this.type)\n\n    clearTimeout(self.timeout)\n\n    self.hoverState = 'in'\n\n    if (!self.options.delay || !self.options.delay.show) return self.show()\n\n    self.timeout = setTimeout(function () {\n      if (self.hoverState == 'in') self.show()\n    }, self.options.delay.show)\n  }\n\n  Tooltip.prototype.leave = function (obj) {\n    var self = obj instanceof this.constructor ?\n      obj : $(obj.currentTarget)[this.type](this.getDelegateOptions()).data('bs.' + this.type)\n\n    clearTimeout(self.timeout)\n\n    self.hoverState = 'out'\n\n    if (!self.options.delay || !self.options.delay.hide) return self.hide()\n\n    self.timeout = setTimeout(function () {\n      if (self.hoverState == 'out') self.hide()\n    }, self.options.delay.hide)\n  }\n\n  Tooltip.prototype.show = function () {\n    var e = $.Event('show.bs.'+ this.type)\n\n    if (this.hasContent() && this.enabled) {\n      this.$element.trigger(e)\n\n      if (e.isDefaultPrevented()) return\n\n      var $tip = this.tip()\n\n      this.setContent()\n\n      if (this.options.animation) $tip.addClass('fade')\n\n      var placement = typeof this.options.placement == 'function' ?\n        this.options.placement.call(this, $tip[0], this.$element[0]) :\n        this.options.placement\n\n      var autoToken = /\\s?auto?\\s?/i\n      var autoPlace = autoToken.test(placement)\n      if (autoPlace) placement = placement.replace(autoToken, '') || 'top'\n\n      $tip\n        .detach()\n        .css({ top: 0, left: 0, display: 'block' })\n        .addClass(placement)\n\n      this.options.container ? $tip.appendTo(this.options.container) : $tip.insertAfter(this.$element)\n\n      var pos          = this.getPosition()\n      var actualWidth  = $tip[0].offsetWidth\n      var actualHeight = $tip[0].offsetHeight\n\n      if (autoPlace) {\n        var $parent = this.$element.parent()\n\n        var orgPlacement = placement\n        var docScroll    = document.documentElement.scrollTop || document.body.scrollTop\n        var parentWidth  = this.options.container == 'body' ? window.innerWidth  : $parent.outerWidth()\n        var parentHeight = this.options.container == 'body' ? window.innerHeight : $parent.outerHeight()\n        var parentLeft   = this.options.container == 'body' ? 0 : $parent.offset().left\n\n        placement = placement == 'bottom' && pos.top   + pos.height  + actualHeight - docScroll > parentHeight  ? 'top'    :\n                    placement == 'top'    && pos.top   - docScroll   - actualHeight < 0                         ? 'bottom' :\n                    placement == 'right'  && pos.right + actualWidth > parentWidth                              ? 'left'   :\n                    placement == 'left'   && pos.left  - actualWidth < parentLeft                               ? 'right'  :\n                    placement\n\n        $tip\n          .removeClass(orgPlacement)\n          .addClass(placement)\n      }\n\n      var calculatedOffset = this.getCalculatedOffset(placement, pos, actualWidth, actualHeight)\n\n      this.applyPlacement(calculatedOffset, placement)\n      this.$element.trigger('shown.bs.' + this.type)\n    }\n  }\n\n  Tooltip.prototype.applyPlacement = function(offset, placement) {\n    var replace\n    var $tip   = this.tip()\n    var width  = $tip[0].offsetWidth\n    var height = $tip[0].offsetHeight\n\n    // manually read margins because getBoundingClientRect includes difference\n    var marginTop = parseInt($tip.css('margin-top'), 10)\n    var marginLeft = parseInt($tip.css('margin-left'), 10)\n\n    // we must check for NaN for ie 8/9\n    if (isNaN(marginTop))  marginTop  = 0\n    if (isNaN(marginLeft)) marginLeft = 0\n\n    offset.top  = offset.top  + marginTop\n    offset.left = offset.left + marginLeft\n\n    $tip\n      .offset(offset)\n      .addClass('in')\n\n    // check to see if placing tip in new offset caused the tip to resize itself\n    var actualWidth  = $tip[0].offsetWidth\n    var actualHeight = $tip[0].offsetHeight\n\n    if (placement == 'top' && actualHeight != height) {\n      replace = true\n      offset.top = offset.top + height - actualHeight\n    }\n\n    if (/bottom|top/.test(placement)) {\n      var delta = 0\n\n      if (offset.left < 0) {\n        delta       = offset.left * -2\n        offset.left = 0\n\n        $tip.offset(offset)\n\n        actualWidth  = $tip[0].offsetWidth\n        actualHeight = $tip[0].offsetHeight\n      }\n\n      this.replaceArrow(delta - width + actualWidth, actualWidth, 'left')\n    } else {\n      this.replaceArrow(actualHeight - height, actualHeight, 'top')\n    }\n\n    if (replace) $tip.offset(offset)\n  }\n\n  Tooltip.prototype.replaceArrow = function(delta, dimension, position) {\n    this.arrow().css(position, delta ? (50 * (1 - delta / dimension) + \"%\") : '')\n  }\n\n  Tooltip.prototype.setContent = function () {\n    var $tip  = this.tip()\n    var title = this.getTitle()\n\n    $tip.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](title)\n    $tip.removeClass('fade in top bottom left right')\n  }\n\n  Tooltip.prototype.hide = function () {\n    var that = this\n    var $tip = this.tip()\n    var e    = $.Event('hide.bs.' + this.type)\n\n    function complete() {\n      if (that.hoverState != 'in') $tip.detach()\n    }\n\n    this.$element.trigger(e)\n\n    if (e.isDefaultPrevented()) return\n\n    $tip.removeClass('in')\n\n    $.support.transition && this.$tip.hasClass('fade') ?\n      $tip\n        .one($.support.transition.end, complete)\n        .emulateTransitionEnd(150) :\n      complete()\n\n    this.$element.trigger('hidden.bs.' + this.type)\n\n    return this\n  }\n\n  Tooltip.prototype.fixTitle = function () {\n    var $e = this.$element\n    if ($e.attr('title') || typeof($e.attr('data-original-title')) != 'string') {\n      $e.attr('data-original-title', $e.attr('title') || '').attr('title', '')\n    }\n  }\n\n  Tooltip.prototype.hasContent = function () {\n    return this.getTitle()\n  }\n\n  Tooltip.prototype.getPosition = function () {\n    var el = this.$element[0]\n    return $.extend({}, (typeof el.getBoundingClientRect == 'function') ? el.getBoundingClientRect() : {\n      width: el.offsetWidth\n    , height: el.offsetHeight\n    }, this.$element.offset())\n  }\n\n  Tooltip.prototype.getCalculatedOffset = function (placement, pos, actualWidth, actualHeight) {\n    return placement == 'bottom' ? { top: pos.top + pos.height,   left: pos.left + pos.width / 2 - actualWidth / 2  } :\n           placement == 'top'    ? { top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2  } :\n           placement == 'left'   ? { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth } :\n        /* placement == 'right' */ { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width   }\n  }\n\n  Tooltip.prototype.getTitle = function () {\n    var title\n    var $e = this.$element\n    var o  = this.options\n\n    title = $e.attr('data-original-title')\n      || (typeof o.title == 'function' ? o.title.call($e[0]) :  o.title)\n\n    return title\n  }\n\n  Tooltip.prototype.tip = function () {\n    return this.$tip = this.$tip || $(this.options.template)\n  }\n\n  Tooltip.prototype.arrow = function () {\n    return this.$arrow = this.$arrow || this.tip().find('.tooltip-arrow')\n  }\n\n  Tooltip.prototype.validate = function () {\n    if (!this.$element[0].parentNode) {\n      this.hide()\n      this.$element = null\n      this.options  = null\n    }\n  }\n\n  Tooltip.prototype.enable = function () {\n    this.enabled = true\n  }\n\n  Tooltip.prototype.disable = function () {\n    this.enabled = false\n  }\n\n  Tooltip.prototype.toggleEnabled = function () {\n    this.enabled = !this.enabled\n  }\n\n  Tooltip.prototype.toggle = function (e) {\n    var self = e ? $(e.currentTarget)[this.type](this.getDelegateOptions()).data('bs.' + this.type) : this\n    self.tip().hasClass('in') ? self.leave(self) : self.enter(self)\n  }\n\n  Tooltip.prototype.destroy = function () {\n    this.hide().$element.off('.' + this.type).removeData('bs.' + this.type)\n  }\n\n\n  // TOOLTIP PLUGIN DEFINITION\n  // =========================\n\n  var old = $.fn.tooltip\n\n  $.fn.tooltip = function (option) {\n    return this.each(function () {\n      var $this   = $(this)\n      var data    = $this.data('bs.tooltip')\n      var options = typeof option == 'object' && option\n\n      if (!data) $this.data('bs.tooltip', (data = new Tooltip(this, options)))\n      if (typeof option == 'string') data[option]()\n    })\n  }\n\n  $.fn.tooltip.Constructor = Tooltip\n\n\n  // TOOLTIP NO CONFLICT\n  // ===================\n\n  $.fn.tooltip.noConflict = function () {\n    $.fn.tooltip = old\n    return this\n  }\n\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: popover.js v3.0.2\n * http://getbootstrap.com/javascript/#popovers\n * ========================================================================\n * Copyright 2013 Twitter, Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * ======================================================================== */\n\n\n+function ($) { \"use strict\";\n\n  // POPOVER PUBLIC CLASS DEFINITION\n  // ===============================\n\n  var Popover = function (element, options) {\n    this.init('popover', element, options)\n  }\n\n  if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js')\n\n  Popover.DEFAULTS = $.extend({} , $.fn.tooltip.Constructor.DEFAULTS, {\n    placement: 'right'\n  , trigger: 'click'\n  , content: ''\n  , template: '<div class=\"popover\"><div class=\"arrow\"></div><h3 class=\"popover-title\"></h3><div class=\"popover-content\"></div></div>'\n  })\n\n\n  // NOTE: POPOVER EXTENDS tooltip.js\n  // ================================\n\n  Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype)\n\n  Popover.prototype.constructor = Popover\n\n  Popover.prototype.getDefaults = function () {\n    return Popover.DEFAULTS\n  }\n\n  Popover.prototype.setContent = function () {\n    var $tip    = this.tip()\n    var title   = this.getTitle()\n    var content = this.getContent()\n\n    $tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title)\n    $tip.find('.popover-content')[this.options.html ? 'html' : 'text'](content)\n\n    $tip.removeClass('fade top bottom left right in')\n\n    // IE8 doesn't accept hiding via the `:empty` pseudo selector, we have to do\n    // this manually by checking the contents.\n    if (!$tip.find('.popover-title').html()) $tip.find('.popover-title').hide()\n  }\n\n  Popover.prototype.hasContent = function () {\n    return this.getTitle() || this.getContent()\n  }\n\n  Popover.prototype.getContent = function () {\n    var $e = this.$element\n    var o  = this.options\n\n    return $e.attr('data-content')\n      || (typeof o.content == 'function' ?\n            o.content.call($e[0]) :\n            o.content)\n  }\n\n  Popover.prototype.arrow = function () {\n    return this.$arrow = this.$arrow || this.tip().find('.arrow')\n  }\n\n  Popover.prototype.tip = function () {\n    if (!this.$tip) this.$tip = $(this.options.template)\n    return this.$tip\n  }\n\n\n  // POPOVER PLUGIN DEFINITION\n  // =========================\n\n  var old = $.fn.popover\n\n  $.fn.popover = function (option) {\n    return this.each(function () {\n      var $this   = $(this)\n      var data    = $this.data('bs.popover')\n      var options = typeof option == 'object' && option\n\n      if (!data) $this.data('bs.popover', (data = new Popover(this, options)))\n      if (typeof option == 'string') data[option]()\n    })\n  }\n\n  $.fn.popover.Constructor = Popover\n\n\n  // POPOVER NO CONFLICT\n  // ===================\n\n  $.fn.popover.noConflict = function () {\n    $.fn.popover = old\n    return this\n  }\n\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: scrollspy.js v3.0.2\n * http://getbootstrap.com/javascript/#scrollspy\n * ========================================================================\n * Copyright 2013 Twitter, Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * ======================================================================== */\n\n\n+function ($) { \"use strict\";\n\n  // SCROLLSPY CLASS DEFINITION\n  // ==========================\n\n  function ScrollSpy(element, options) {\n    var href\n    var process  = $.proxy(this.process, this)\n\n    this.$element       = $(element).is('body') ? $(window) : $(element)\n    this.$body          = $('body')\n    this.$scrollElement = this.$element.on('scroll.bs.scroll-spy.data-api', process)\n    this.options        = $.extend({}, ScrollSpy.DEFAULTS, options)\n    this.selector       = (this.options.target\n      || ((href = $(element).attr('href')) && href.replace(/.*(?=#[^\\s]+$)/, '')) //strip for ie7\n      || '') + ' .nav li > a'\n    this.offsets        = $([])\n    this.targets        = $([])\n    this.activeTarget   = null\n\n    this.refresh()\n    this.process()\n  }\n\n  ScrollSpy.DEFAULTS = {\n    offset: 10\n  }\n\n  ScrollSpy.prototype.refresh = function () {\n    var offsetMethod = this.$element[0] == window ? 'offset' : 'position'\n\n    this.offsets = $([])\n    this.targets = $([])\n\n    var self     = this\n    var $targets = this.$body\n      .find(this.selector)\n      .map(function () {\n        var $el   = $(this)\n        var href  = $el.data('target') || $el.attr('href')\n        var $href = /^#\\w/.test(href) && $(href)\n\n        return ($href\n          && $href.length\n          && [[ $href[offsetMethod]().top + (!$.isWindow(self.$scrollElement.get(0)) && self.$scrollElement.scrollTop()), href ]]) || null\n      })\n      .sort(function (a, b) { return a[0] - b[0] })\n      .each(function () {\n        self.offsets.push(this[0])\n        self.targets.push(this[1])\n      })\n  }\n\n  ScrollSpy.prototype.process = function () {\n    var scrollTop    = this.$scrollElement.scrollTop() + this.options.offset\n    var scrollHeight = this.$scrollElement[0].scrollHeight || this.$body[0].scrollHeight\n    var maxScroll    = scrollHeight - this.$scrollElement.height()\n    var offsets      = this.offsets\n    var targets      = this.targets\n    var activeTarget = this.activeTarget\n    var i\n\n    if (scrollTop >= maxScroll) {\n      return activeTarget != (i = targets.last()[0]) && this.activate(i)\n    }\n\n    for (i = offsets.length; i--;) {\n      activeTarget != targets[i]\n        && scrollTop >= offsets[i]\n        && (!offsets[i + 1] || scrollTop <= offsets[i + 1])\n        && this.activate( targets[i] )\n    }\n  }\n\n  ScrollSpy.prototype.activate = function (target) {\n    this.activeTarget = target\n\n    $(this.selector)\n      .parents('.active')\n      .removeClass('active')\n\n    var selector = this.selector\n      + '[data-target=\"' + target + '\"],'\n      + this.selector + '[href=\"' + target + '\"]'\n\n    var active = $(selector)\n      .parents('li')\n      .addClass('active')\n\n    if (active.parent('.dropdown-menu').length)  {\n      active = active\n        .closest('li.dropdown')\n        .addClass('active')\n    }\n\n    active.trigger('activate')\n  }\n\n\n  // SCROLLSPY PLUGIN DEFINITION\n  // ===========================\n\n  var old = $.fn.scrollspy\n\n  $.fn.scrollspy = function (option) {\n    return this.each(function () {\n      var $this   = $(this)\n      var data    = $this.data('bs.scrollspy')\n      var options = typeof option == 'object' && option\n\n      if (!data) $this.data('bs.scrollspy', (data = new ScrollSpy(this, options)))\n      if (typeof option == 'string') data[option]()\n    })\n  }\n\n  $.fn.scrollspy.Constructor = ScrollSpy\n\n\n  // SCROLLSPY NO CONFLICT\n  // =====================\n\n  $.fn.scrollspy.noConflict = function () {\n    $.fn.scrollspy = old\n    return this\n  }\n\n\n  // SCROLLSPY DATA-API\n  // ==================\n\n  $(window).on('load', function () {\n    $('[data-spy=\"scroll\"]').each(function () {\n      var $spy = $(this)\n      $spy.scrollspy($spy.data())\n    })\n  })\n\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: tab.js v3.0.2\n * http://getbootstrap.com/javascript/#tabs\n * ========================================================================\n * Copyright 2013 Twitter, Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * ======================================================================== */\n\n\n+function ($) { \"use strict\";\n\n  // TAB CLASS DEFINITION\n  // ====================\n\n  var Tab = function (element) {\n    this.element = $(element)\n  }\n\n  Tab.prototype.show = function () {\n    var $this    = this.element\n    var $ul      = $this.closest('ul:not(.dropdown-menu)')\n    var selector = $this.data('target')\n\n    if (!selector) {\n      selector = $this.attr('href')\n      selector = selector && selector.replace(/.*(?=#[^\\s]*$)/, '') //strip for ie7\n    }\n\n    if ($this.parent('li').hasClass('active')) return\n\n    var previous = $ul.find('.active:last a')[0]\n    var e        = $.Event('show.bs.tab', {\n      relatedTarget: previous\n    })\n\n    $this.trigger(e)\n\n    if (e.isDefaultPrevented()) return\n\n    var $target = $(selector)\n\n    this.activate($this.parent('li'), $ul)\n    this.activate($target, $target.parent(), function () {\n      $this.trigger({\n        type: 'shown.bs.tab'\n      , relatedTarget: previous\n      })\n    })\n  }\n\n  Tab.prototype.activate = function (element, container, callback) {\n    var $active    = container.find('> .active')\n    var transition = callback\n      && $.support.transition\n      && $active.hasClass('fade')\n\n    function next() {\n      $active\n        .removeClass('active')\n        .find('> .dropdown-menu > .active')\n        .removeClass('active')\n\n      element.addClass('active')\n\n      if (transition) {\n        element[0].offsetWidth // reflow for transition\n        element.addClass('in')\n      } else {\n        element.removeClass('fade')\n      }\n\n      if (element.parent('.dropdown-menu')) {\n        element.closest('li.dropdown').addClass('active')\n      }\n\n      callback && callback()\n    }\n\n    transition ?\n      $active\n        .one($.support.transition.end, next)\n        .emulateTransitionEnd(150) :\n      next()\n\n    $active.removeClass('in')\n  }\n\n\n  // TAB PLUGIN DEFINITION\n  // =====================\n\n  var old = $.fn.tab\n\n  $.fn.tab = function ( option ) {\n    return this.each(function () {\n      var $this = $(this)\n      var data  = $this.data('bs.tab')\n\n      if (!data) $this.data('bs.tab', (data = new Tab(this)))\n      if (typeof option == 'string') data[option]()\n    })\n  }\n\n  $.fn.tab.Constructor = Tab\n\n\n  // TAB NO CONFLICT\n  // ===============\n\n  $.fn.tab.noConflict = function () {\n    $.fn.tab = old\n    return this\n  }\n\n\n  // TAB DATA-API\n  // ============\n\n  $(document).on('click.bs.tab.data-api', '[data-toggle=\"tab\"], [data-toggle=\"pill\"]', function (e) {\n    e.preventDefault()\n    $(this).tab('show')\n  })\n\n}(jQuery);\n\n/* ========================================================================\n * Bootstrap: affix.js v3.0.2\n * http://getbootstrap.com/javascript/#affix\n * ========================================================================\n * Copyright 2013 Twitter, Inc.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n * ======================================================================== */\n\n\n+function ($) { \"use strict\";\n\n  // AFFIX CLASS DEFINITION\n  // ======================\n\n  var Affix = function (element, options) {\n    this.options = $.extend({}, Affix.DEFAULTS, options)\n    this.$window = $(window)\n      .on('scroll.bs.affix.data-api', $.proxy(this.checkPosition, this))\n      .on('click.bs.affix.data-api',  $.proxy(this.checkPositionWithEventLoop, this))\n\n    this.$element = $(element)\n    this.affixed  =\n    this.unpin    = null\n\n    this.checkPosition()\n  }\n\n  Affix.RESET = 'affix affix-top affix-bottom'\n\n  Affix.DEFAULTS = {\n    offset: 0\n  }\n\n  Affix.prototype.checkPositionWithEventLoop = function () {\n    setTimeout($.proxy(this.checkPosition, this), 1)\n  }\n\n  Affix.prototype.checkPosition = function () {\n    if (!this.$element.is(':visible')) return\n\n    var scrollHeight = $(document).height()\n    var scrollTop    = this.$window.scrollTop()\n    var position     = this.$element.offset()\n    var offset       = this.options.offset\n    var offsetTop    = offset.top\n    var offsetBottom = offset.bottom\n\n    if (typeof offset != 'object')         offsetBottom = offsetTop = offset\n    if (typeof offsetTop == 'function')    offsetTop    = offset.top()\n    if (typeof offsetBottom == 'function') offsetBottom = offset.bottom()\n\n    var affix = this.unpin   != null && (scrollTop + this.unpin <= position.top) ? false :\n                offsetBottom != null && (position.top + this.$element.height() >= scrollHeight - offsetBottom) ? 'bottom' :\n                offsetTop    != null && (scrollTop <= offsetTop) ? 'top' : false\n\n    if (this.affixed === affix) return\n    if (this.unpin) this.$element.css('top', '')\n\n    this.affixed = affix\n    this.unpin   = affix == 'bottom' ? position.top - scrollTop : null\n\n    this.$element.removeClass(Affix.RESET).addClass('affix' + (affix ? '-' + affix : ''))\n\n    if (affix == 'bottom') {\n      this.$element.offset({ top: document.body.offsetHeight - offsetBottom - this.$element.height() })\n    }\n  }\n\n\n  // AFFIX PLUGIN DEFINITION\n  // =======================\n\n  var old = $.fn.affix\n\n  $.fn.affix = function (option) {\n    return this.each(function () {\n      var $this   = $(this)\n      var data    = $this.data('bs.affix')\n      var options = typeof option == 'object' && option\n\n      if (!data) $this.data('bs.affix', (data = new Affix(this, options)))\n      if (typeof option == 'string') data[option]()\n    })\n  }\n\n  $.fn.affix.Constructor = Affix\n\n\n  // AFFIX NO CONFLICT\n  // =================\n\n  $.fn.affix.noConflict = function () {\n    $.fn.affix = old\n    return this\n  }\n\n\n  // AFFIX DATA-API\n  // ==============\n\n  $(window).on('load', function () {\n    $('[data-spy=\"affix\"]').each(function () {\n      var $spy = $(this)\n      var data = $spy.data()\n\n      data.offset = data.offset || {}\n\n      if (data.offsetBottom) data.offset.bottom = data.offsetBottom\n      if (data.offsetTop)    data.offset.top    = data.offsetTop\n\n      $spy.affix(data)\n    })\n  })\n\n}(jQuery);\n"
  },
  {
    "path": "newscoop/js/campsite-audiosearch.js",
    "content": "function SearchForm_displayRow(row)\n{\n    document.getElementById('searchRow_' + row).style.display = 'inline';\n    document.forms['search'].elements['row_' + Number(row) + '[active]'].value = 1\n}\n\nfunction SearchForm_addRow(errorMessage)\n{\n    if (document.forms['search'].elements['counter'].value < document.forms['search'].elements['max_rows'].value) {\n        document.forms['search'].elements['counter'].value++;\n        SearchForm_displayRow(document.forms['search'].elements['counter'].value);\n        return true;\n    } else {\n        alert(errorMessage);\n        return false;\n    }\n}\n\nfunction SearchForm_hideRow(row)\n{\n    document.getElementById('searchRow_' + row).style.display = 'none';\n    document.forms['search'].elements['row_' + Number(row) + '[0]'].options[0].selected = true;\n    document.forms['search'].elements['row_' + Number(row) + '[1]'].options[0].selected = true;\n    document.forms['search'].elements['row_' + Number(row) + '[2]'].value = '';\n    document.forms['search'].elements['row_' + Number(row) + '[active]'].value = 0\n}\n\nfunction SearchForm_dropRow(row)\n{\n    if (document.forms['search'].elements['counter'].value <= 1)\n        return false;\n    var n;\n    for (n = row; n < document.forms['search'].elements['counter'].value; n++) {\n        document.forms['search'].elements['row_' + Number(n) + '[0]'].value = document.forms['search'].elements['row_' + (Number(n)+1) + '[0]'].value;\n        document.forms['search'].elements['row_' + Number(n) + '[1]'].value = document.forms['search'].elements['row_' + (Number(n)+1) + '[1]'].value;\n        document.forms['search'].elements['row_' + Number(n) + '[2]'].value = document.forms['search'].elements['row_' + (Number(n)+1) + '[2]'].value;\n    }\n    document.forms['search'].elements['counter'].value--;\n    SearchForm_hideRow(Number(n));\n\n}\n\nfunction _hs_findOptions(ary, keys)\n{\n    var key = keys.shift();\n    if (!key in ary) {\n        return {};\n    } else if (0 == keys.length) {\n        return ary[key];\n    } else {\n        return _hs_findOptions(ary[key], keys);\n    }\n}\n\nfunction _hs_findSelect(form, groupName, selectIndex)\n{\n    if (groupName+'['+ selectIndex +']' in form) {\n        return form[groupName+'['+ selectIndex +']']; \n    } else {\n        return form[groupName+'['+ selectIndex +'][]']; \n    }\n}\n\nfunction _hs_replaceOptions(ctl, optionList)\n{\n    var j = 0;\n    ctl.options.length = 0;\n    for (i in optionList) {\n        ctl.options[j++] = new Option(optionList[i], i, false, false);\n    }\n}\n\nfunction _hs_setValue(ctl, value)\n{\n    var testValue = {};\n    if (value instanceof Array) {\n        for (var i = 0; i < value.length; i++) {\n            testValue[value[i]] = true;\n        }\n    } else {\n        testValue[value] = true;\n    }\n    for (var i = 0; i < ctl.options.length; i++) {\n        if (ctl.options[i].value in testValue) {\n            ctl.options[i].selected = true;\n        }\n    }\n}\n\nfunction _hs_swapOptions(form, groupName, selectIndex)\n{\n    var hsValue = [];\n    for (var i = 0; i <= selectIndex; i++) {\n        hsValue[i] = _hs_findSelect(form, groupName, i).value;\n    }\n\n    _hs_replaceOptions(_hs_findSelect(form, groupName, selectIndex + 1), \n                       _hs_findOptions(_hs_options[groupName][selectIndex], hsValue));\n    if (selectIndex + 1 < _hs_options[groupName].length) {\n        _hs_swapOptions(form, groupName, selectIndex + 1);\n    }\n}\n\nfunction _hs_onReset(form, groupNames)\n{\n    for (var i = 0; i < groupNames.length; i++) {\n        try {\n            for (var j = 0; j <= _hs_options[groupNames[i]].length; j++) {\n                _hs_setValue(_hs_findSelect(form, groupNames[i], j), _hs_defaults[groupNames[i]][j]);\n                if (j < _hs_options[groupNames[i]].length) {\n                    _hs_replaceOptions(_hs_findSelect(form, groupNames[i], j + 1), \n                                       _hs_findOptions(_hs_options[groupNames[i]][j], _hs_defaults[groupNames[i]].slice(0, j + 1)));\n                }\n            }\n        } catch (e) {\n            if (!(e instanceof TypeError)) {\n                throw e;\n            }\n        }\n    }\n}\n\nfunction _hs_setupOnReset(form, groupNames)\n{\n    setTimeout(function() { _hs_onReset(form, groupNames); }, 25);\n}\n\nfunction _hs_onReload()\n{\n    var ctl;\n    for (var i = 0; i < document.forms.length; i++) {\n        for (var j in _hs_defaults) {\n            if (ctl = _hs_findSelect(document.forms[i], j, 0)) {\n                for (var k = 0; k < _hs_defaults[j].length; k++) {\n                    _hs_setValue(_hs_findSelect(document.forms[i], j, k), _hs_defaults[j][k]);\n                }\n            }\n        }\n    }\n\n    if (_hs_prevOnload) {\n        _hs_prevOnload();\n    }\n}\n\nvar _hs_prevOnload = null;\nif (window.onload) {\n    _hs_prevOnload = window.onload;\n}\nwindow.onload = _hs_onReload;\n\nvar _hs_options = {};\nvar _hs_defaults = {};\n"
  },
  {
    "path": "newscoop/js/campsite-checkbox.js",
    "content": "/**\n * This array is used to remember mark status of rows in browse mode\n */\nvar marked_row = new Array;\nvar default_class = new Array;\nvar defaultRowPrefix = \"row_\";\nvar defaultCheckboxPrefix = \"checkbox_\";\n\nfunction checkAll(numItems, rowPrefix, checkboxPrefix)\n{\n\tif (rowPrefix == null) {\n\t\trowPrefix = defaultRowPrefix;\n\t}\n\tif (checkboxPrefix == null) {\n\t\tcheckboxPrefix = defaultCheckboxPrefix;\n\t}\n\tfor (i = 0; i < numItems; i++) {\n\t\tdocument.getElementById(rowPrefix+i).className = 'list_row_click';\n\t\tdocument.getElementById(checkboxPrefix+i).checked = true;\n                marked_row[i] = true;\n\t}\n} // fn checkAll\n\n\nfunction uncheckAll(numItems, rowPrefix, checkboxPrefix)\n{\n\tif (rowPrefix == null) {\n\t\trowPrefix = defaultRowPrefix;\n\t}\n\tif (checkboxPrefix == null) {\n\t\tcheckboxPrefix = defaultCheckboxPrefix;\n\t}\n\tfor (i = 0; i < numItems; i++) {\n\t\tdocument.getElementById(rowPrefix+i).className = default_class[i];\n\t\tdocument.getElementById(checkboxPrefix+i).checked = false;\n                marked_row[i] = false;\n\t}\n} // fn uncheckAll\n\n\nfunction checkRestore(numItems, checkedItems, rowPrefix, checkboxPrefix)\n{\n    if (rowPrefix == null) {\n        rowPrefix = defaultRowPrefix;\n    }\n    if (checkboxPrefix == null) {\n        checkboxPrefix = defaultCheckboxPrefix;\n    }\n\n    for (i = 0; i < numItems; i++) {\n       if (checkedItems.indexOf(checkboxPrefix+i) >= 0) {\n           document.getElementById(rowPrefix+i).className = 'list_row_click';\n           document.getElementById(checkboxPrefix+i).checked = true;\n           marked_row[i] = true;\n       } else {\n           document.getElementById(rowPrefix+i).className = default_class[i];\n           document.getElementById(checkboxPrefix+i).checked = false;\n           marked_row[i] = false;\n\t}\n    }\n} // fn checkRestore\n\n/**\n * Sets/unsets the pointer and marker in browse mode\n *\n * @param   object    the table row\n * @param   integer  the row number\n * @param   string    the action calling this script (over, out or click)\n * @param   string    the default class\n *\n * @return  boolean  whether pointer is set or not\n */\nfunction setPointer(theRow, theRowNum, theAction)\n{\n\tnewClass = null;\n    // 4. Defines the new class\n    // 4.1 Current class is the default one\n    if (theRow.className == default_class[theRowNum]) {\n        if (theAction == 'over') {\n            newClass = 'list_row_hover';\n        }\n    }\n    // 4.1.2 Current color is the hover one\n    else if (theRow.className == 'list_row_hover'\n             && (typeof(marked_row[theRowNum]) == 'undefined' || !marked_row[theRowNum])) {\n        if (theAction == 'out') {\n            newClass = default_class[theRowNum];\n        }\n    }\n\n    if (newClass != null) {\n    \ttheRow.className = newClass;\n    }\n    return true;\n} // end of the 'setPointer()' function\n\n/**\n * Change the color of the row when the checkbox is selected.\n *\n * @param object  The checkbox object.\n * @param int     The row number.\n */\nfunction checkboxClick(theCheckbox, theRowNum, rowPrefix)\n{\n\tif (rowPrefix == null) {\n\t\trowPrefix = defaultRowPrefix;\n\t}\n\tif (theCheckbox.checked) {\n        newClass = 'list_row_click';\n        marked_row[theRowNum] = (typeof(marked_row[theRowNum]) == 'undefined' || !marked_row[theRowNum])\n                              ? true\n                              : null;\n\t} else {\n        newClass = 'list_row_hover';\n        marked_row[theRowNum] = false;\n\t}\n   \trow = document.getElementById(rowPrefix+theRowNum);\n   \trow.className = newClass;\n} // fn checkboxClick\n\n/**\n * Returns true if at least minChecked and at most maxChecked checkboxes were checked,\n * otherwise returns false. You may pass the wildcard * for maxChecked\n *\n * @param string formName      The name of the form containing the checkboxes\n * @param string fieldName     The name of the checkbox field\n * @param int minChecked       The minimum number of checkboxes that must be checked\n * @param int maxChecked       The maximum number of checkboxes that must be checked\n * @param string errorMessage  The error message to be displayed if the checkbox \n *                             selection was not valid\n */\nfunction validateCheckboxes(formName, fieldName, minChecked, maxChecked, errorMessage)\n{\n    // Verify that at least one checkbox has been selected.\n    checkboxes = document.forms[formName][fieldName];\n    if (checkboxes) {\n        isValid = false;\n        numCheckboxesChecked = 0;\n        // Special case for single checkbox\n        // (when there is only one article in the section).\n        if (!checkboxes.length) {\n            numCheckboxesChecked = checkboxes.checked ? 1 : 0;\n        } else {\n            // Multiple checkboxes\n            for (var index = 0; index < checkboxes.length; index++) {\n                if (checkboxes[index].checked) {\n                    numCheckboxesChecked++;\n                }\n            }\n        }\n        isValid = numCheckboxesChecked >= minChecked;\n        if (maxChecked != \"*\") {\n        \tisValid = isValid && numCheckboxesChecked <= maxChecked;\n        }\n        if (!isValid) {\n            alert(errorMessage);\n        }\n        return isValid;\n    } else {\n        return true;\n    }\n} // fn validateCheckboxes\n"
  },
  {
    "path": "newscoop/js/campsite.js",
    "content": "/**\n * Given the ID of an HTML element, toggle its visibility.\n * @param string id\n */\nfunction ToggleRowVisibility(id) {\n\telement = document.getElementById(id);\n\tif (element) {\n\t\tif (element.style.display == \"none\") {\n\t\t\tif (document.all) {\n\t\t\t\telement.style.display = \"block\";\n\t\t\t} else {\n\t\t\t\telement.style.display = \"\";\n\t\t\t}\n\t\t} else {\n\t\t\telement.style.display = \"none\";\n\t\t}\n\t}\n\treturn true;\n}\n\n\nfunction ToggleBoolValue(element_id) {\n\telement = document.getElementById(element_id);\n\tif (element) {\n\t    if (element.value == \"false\") {\n\t\t\telement.value = \"true\";\n\t    } else {\n\t\t   element.value = \"false\";\n\t    }\n\t}\n}\n\n\n/**\n * Given the ID of an HTML element, make it visible.\n */\nfunction ShowElement(id)\n{\n\telement = document.getElementById(id);\n\tif (element) {\n\t\tif (document.all) {\n\t\t\telement.style.display = \"block\";\n\t\t} else {\n\t\t\telement.style.display = \"\";\n\t\t}\n\t}\n\treturn true;\n}\n\n\n/**\n * Given the ID of an HTML element, make it invisible.\n */\nfunction HideElement(id)\n{\n\telement = document.getElementById(id);\n\tif (element) {\n\t\telement.style.display = \"none\";\n\t}\n\treturn true;\n}\n\n\n/**\n * Given an array of element IDs, make all of the\n * elements invisible.\n *\n * @param array p_array\n */\nfunction HideAll(p_array)\n{\n\tfor (i = 0; i < p_array.length; i++) {\n\t\telement = document.getElementById(p_array[i]);\n\t\tif (element) {\n\t\t\telement.style.display = \"none\";\n\t\t}\n\t}\n\treturn true;\n}\n\n\n/**\n * Given an array of element IDs, make all of the\n * elements visible.\n *\n * @param array p_array\n */\nfunction ShowAll(p_array)\n{\n\tfor (i = 0; i < p_array.length; i++) {\n\t\telement = document.getElementById(p_array[i]);\n\t\tif (element) {\n\t\t\telement.style.display = \"\";\n\t\t}\n\t}\n\treturn true;\n}\n\n/**\n * Clear all the tabs and set the appropiate css classes.\n *\n * @param int p_elements\n *      the total number of tabs\n */\nfunction clearAllTabs(p_elements) {\n\tfor(k = 1; k <= p_elements; k++) {\n\t\tdocument.getElementById('link' + k).className='tab_normal';\n\t\tdocument.getElementById('tab' + k).style.display='none';\n\t}\n}\n\n/**\n * Set the selected tab.\n *\n * @param int p_id\n *      the Id of the HTML element\n * @param int p_elements\n *      the total number of tabs\n */\nfunction selectTab(p_id, p_elements) {\n\tclearAllTabs(p_elements);\n\tdocument.getElementById('link' + p_id).className='tab_current';\n\tdocument.getElementById('tab' + p_id).style.display='';\n}\n\n/**\n * Fade an element by adjusting its opacity.\n *\n * @param string element_id\n * \t\tID of the HTML element.\n *\n * @param int milliseconds_between_changes\n *\t\tHow fast between each transition change.  For smooth transitions\n *\t\tYou want to use a value under 100.\n *\n * @param int maxFade\n *\t\tThe min opacity to fade to, this can be between 0 and 10.\n *\n * @param boolean disappear\n *\t\tWhether to make the element disappear when it becomes completely\n *\t\ttransparent.\n *\n * @param int delay_in_milliseconds\n *\t\tTime to wait before the fade begins.\n */\nfunction fade(element_id, milliseconds_between_changes, maxFade, disappear, delay_in_milliseconds)\n{\n\tsetTimeout('do_fade(\\''+element_id+'\\', '+milliseconds_between_changes+', '+maxFade+', '+disappear+');',\n\t\t\t   delay_in_milliseconds);\n}\n\n/**\n * Slightly modified form of the function found here:\n * http://www.bigbold.com/snippets/posts/show/1843\n */\nfunction do_fade(element_id, milliseconds_between_changes, maxFade, disappear)\n{\n\tvar opacs = [\"0\",\".1\",\".2\",\".3\",\".4\",\".5\",\".6\",\".7\",\".8\",\".9\",\"1\"];\n\telement = document.getElementById(element_id);\n\tif (element) {\n\t\tif (element.style.display == 'none') {\n\t\t\telement.style.opacity = '0';\n\t\t\telement.style.display = 'block';\n\t\t\tfor (var i = 0; i < maxFade; i++) {\n\t\t\t\tsetTimeout('document.getElementById(\\''+element_id+'\\').style.opacity = \"'+opacs[i]+'\";', i * milliseconds_between_changes);\n\t\t\t}\n\t\t} else {\n\t\t\topacs.reverse();\n\t\t\tfor (var i = 0; i < maxFade; i++) {\n\t\t\t    setTimeout('document.getElementById(\\''+element_id+'\\').style.opacity = \"'+opacs[i]+'\";', i * milliseconds_between_changes);\n\t\t\t}\n\t\t\tif (disappear) {\n\t\t\t\tsetTimeout('document.getElementById(\\''+element_id+'\\').style.display = \"none\";', i * milliseconds_between_changes);\n\t\t\t}\n\t\t}\n\t}\n}\n\n/**\n * Returns true if the given object had the given property.\n */\nfunction element_exists(object, property) {\n\tfor (i in object) {\n\t\tif (object[i].name == property) {\n\t\t\treturn true\n\t\t}\n\t}\n\treturn false\n}\n\n/**\n * Used in subscription form; computes the subscription cost and updates\n * the corresponding field in the form.\n */\nfunction update_subscription_payment() {\n\tvar sum = 0\n\tvar i\n\tvar my_form = document.forms[\"subscription_form\"]\n\tvar subs_all_lang = false\n\tvar unitcost = my_form.unitcost.value\n\tvar lang_count = 1\n\tif (element_exists(my_form.elements, \"subs_all_languages\")\n\t\t&& my_form.subs_all_languages.checked) {\n\t\tunitcost = my_form.unitcostalllang.value\n\t} else if (element_exists(my_form.elements, \"subscription_language[]\")) {\n\t\tlang_count = 0\n\t\tfor (i=0; i<my_form[\"subscription_language[]\"].options.length; i++) {\n\t\t\tif (my_form[\"subscription_language[]\"].options[i].selected) {\n\t\t\t\tlang_count++\n\t\t\t}\n\t\t}\n\t}\n\tfor (i = 0; i < my_form.nos.value; i++) {\n\t\tif (element_exists(my_form.elements, \"by\")\n\t\t\t&& my_form.by.value == \"publication\") {\n\t\t\tsum = parseInt(sum) + parseInt(my_form[\"tx_subs\"].value)\n\t\t\tcontinue\n\t\t}\n\t\tif (!my_form[\"cb_subs[]\"][i].checked) {\n\t\t\tcontinue\n\t\t}\n\t\tvar section = my_form[\"cb_subs[]\"][i].value\n\t\tvar time_var_name = \"tx_subs\" + section\n\t\tif (element_exists(my_form.elements, time_var_name)) {\n\t\t\tsum = parseInt(sum) + parseInt(my_form[time_var_name].value)\n\t\t} else if (element_exists(my_form.elements, \"tx_subs\")) {\n\t\t\tsum = parseInt(sum) + parseInt(my_form[\"tx_subs\"].value)\n\t\t}\n\t}\n\tmy_form.suma.value = Math.round(100 * sum * unitcost * lang_count) / 100\n}\n\n/**\n * @param area\n * @param field\n * @param value\n * @param style\n */\nfunction addInputTextField(area, field, value) {\n    if (!document.getElementById) return;\n\n    var field_area = document.getElementById(area);\n    var all_inputs = field_area.getElementsByTagName('input');\n\n    if (document.createElement) {\n\tvar tr = document.createElement('tr');\n\tvar td = document.createElement('td');\n\tvar input = document.createElement('input');\n\n\ttd = document.createElement('td');\n\ttd.style.textAlign = 'right';\n\ttd.appendChild(document.createTextNode(field+': '));\n\ttr.appendChild(td);\n\tinput.id = field;\n\tinput.name = field;\n\tinput.type = 'text';\n\tinput.size = '50';\n\tinput.value = (value != undefined) ? value : '';\n\ttd = document.createElement('td');\n\ttd.appendChild(input);\n\ttr.appendChild(td);\n\tfield_area.appendChild(tr);\n    } else {\n\tfield_area.innerHTML += '<tr><td align=\"right\">'+field+': '+'</td><td><input name=\"'+field+'\" id=\"'+field+'\" type=\"text\" class=\"input_text\" /></td></tr>';\n    }\n}\n\n/**\n * @param number\n * @param decimals\n * @param dec_point\n * @param thousands_sep\n */\nfunction number_format(number, decimals, dec_point, thousands_sep) {\n    var n = number, c = isNaN(decimals = Math.abs(decimals)) ? 2 : decimals;\n    var d = dec_point == undefined ? \",\" : dec_point;\n    var t = thousands_sep == undefined ? \".\" : thousands_sep, s = n < 0 ? \"-\" : \"\";\n    var i = parseInt(n = Math.abs(+n || 0).toFixed(c)) + \"\", j = (j = i.length) > 3 ? j % 3 : 0;\n\n    return s + (j ? i.substr(0, j) + t : \"\") + i.substr(j).replace(/(\\d{3})(?=\\d)/g, \"$1\" + t) + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : \"\");\n}\n\n/**\n *\n *\n * @param int p_size\n *      the total number of tabs\n */\nfunction formatBytes(p_size) {\n    if (p_size >= 1073741824) {\n\tp_size = number_format(p_size / 1073741824, 2, '.', '') + ' GB';\n    } else if (p_size >= 1048576) {\n\tp_size = number_format(p_size / 1048576, 2, '.', '') + ' MB';\n    } else if (p_size >= 1024) {\n\tp_size = number_format(p_size / 1024, 0) + ' KB';\n    } else {\n\tp_size = number_format(p_size, 0) + ' bytes';\n    }\n    return p_size;\n}"
  },
  {
    "path": "newscoop/js/crypt.js",
    "content": "b64s='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_\"'\n\nfunction textToBase64(t) {\n  var r=''; var m=0; var a=0; var tl=t.length-1; var c\n  for(n=0; n<=tl; n++) {\n    c=t.charCodeAt(n)\n    r+=b64s.charAt((c << m | a) & 63)\n    a = c >> (6-m)\n    m+=2\n    if(m==6 || n==tl) {\n      r+=b64s.charAt(a)\n      if((n%45)==44) {r+=\"\\n\"}\n      m=0\n      a=0\n    }\n  }\n  return r\n} // textToBase64\n\nfunction rc4(key, text) {\n  var i, x, y, t, x2, kl=key.length;\n  s=[];\n\n  for (i=0; i<256; i++) s[i]=i\n  y=0\n  for(j=0; j<2; j++) {\n    for(x=0; x<256; x++) {\n      y=(key.charCodeAt(x%kl) + s[x] + y) % 256\n      t=s[x]; s[x]=s[y]; s[y]=t\n    }\n  }\n  var z=\"\"\n  for (x=0; x<text.length; x++) {\n    x2=x & 255\n    y=( s[x2] + y) & 255\n    t=s[x2]; s[x2]=s[y]; s[y]=t\n    z+= String.fromCharCode((text.charCodeAt(x) ^ s[(s[x2] + s[y]) % 256]))\n  }\n  return z\n} // rc4\n\nfunction rc4encrypt(k,p) {\n  return textToBase64(rc4(k,p))\n} // rc4encrypt\n"
  },
  {
    "path": "newscoop/js/domTT/.ant-targets-build.xml",
    "content": "freshmeat-release\npackage\nprepare-releasenotes\npublish\n"
  },
  {
    "path": "newscoop/js/domTT/AUTHORS",
    "content": "DOM Tooltip Library 0.70\n\nMaintainer: Dan Allen <dan.allen@mojavelinux.com>\nContributors:\n\tJosh Gross <josh@jportalhome.com>\n\tJason Rust <jason@rustyparts.com>\n\tVic Mackey <shield24@gmail.com>\n"
  },
  {
    "path": "newscoop/js/domTT/LICENSE",
    "content": "\n                                 Apache License\n                           Version 2.0, January 2004\n                        http://www.apache.org/licenses/\n\n   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\n   1. Definitions.\n\n      \"License\" shall mean the terms and conditions for use, reproduction,\n      and distribution as defined by Sections 1 through 9 of this document.\n\n      \"Licensor\" shall mean the copyright owner or entity authorized by\n      the copyright owner that is granting the License.\n\n      \"Legal Entity\" shall mean the union of the acting entity and all\n      other entities that control, are controlled by, or are under common\n      control with that entity. For the purposes of this definition,\n      \"control\" means (i) the power, direct or indirect, to cause the\n      direction or management of such entity, whether by contract or\n      otherwise, or (ii) ownership of fifty percent (50%) or more of the\n      outstanding shares, or (iii) beneficial ownership of such entity.\n\n      \"You\" (or \"Your\") shall mean an individual or Legal Entity\n      exercising permissions granted by this License.\n\n      \"Source\" form shall mean the preferred form for making modifications,\n      including but not limited to software source code, documentation\n      source, and configuration files.\n\n      \"Object\" form shall mean any form resulting from mechanical\n      transformation or translation of a Source form, including but\n      not limited to compiled object code, generated documentation,\n      and conversions to other media types.\n\n      \"Work\" shall mean the work of authorship, whether in Source or\n      Object form, made available under the License, as indicated by a\n      copyright notice that is included in or attached to the work\n      (an example is provided in the Appendix below).\n\n      \"Derivative Works\" shall mean any work, whether in Source or Object\n      form, that is based on (or derived from) the Work and for which the\n      editorial revisions, annotations, elaborations, or other modifications\n      represent, as a whole, an original work of authorship. For the purposes\n      of this License, Derivative Works shall not include works that remain\n      separable from, or merely link (or bind by name) to the interfaces of,\n      the Work and Derivative Works thereof.\n\n      \"Contribution\" shall mean any work of authorship, including\n      the original version of the Work and any modifications or additions\n      to that Work or Derivative Works thereof, that is intentionally\n      submitted to Licensor for inclusion in the Work by the copyright owner\n      or by an individual or Legal Entity authorized to submit on behalf of\n      the copyright owner. For the purposes of this definition, \"submitted\"\n      means any form of electronic, verbal, or written communication sent\n      to the Licensor or its representatives, including but not limited to\n      communication on electronic mailing lists, source code control systems,\n      and issue tracking systems that are managed by, or on behalf of, the\n      Licensor for the purpose of discussing and improving the Work, but\n      excluding communication that is conspicuously marked or otherwise\n      designated in writing by the copyright owner as \"Not a Contribution.\"\n\n      \"Contributor\" shall mean Licensor and any individual or Legal Entity\n      on behalf of whom a Contribution has been received by Licensor and\n      subsequently incorporated within the Work.\n\n   2. Grant of Copyright License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      copyright license to reproduce, prepare Derivative Works of,\n      publicly display, publicly perform, sublicense, and distribute the\n      Work and such Derivative Works in Source or Object form.\n\n   3. Grant of Patent License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      (except as stated in this section) patent license to make, have made,\n      use, offer to sell, sell, import, and otherwise transfer the Work,\n      where such license applies only to those patent claims licensable\n      by such Contributor that are necessarily infringed by their\n      Contribution(s) alone or by combination of their Contribution(s)\n      with the Work to which such Contribution(s) was submitted. If You\n      institute patent litigation against any entity (including a\n      cross-claim or counterclaim in a lawsuit) alleging that the Work\n      or a Contribution incorporated within the Work constitutes direct\n      or contributory patent infringement, then any patent licenses\n      granted to You under this License for that Work shall terminate\n      as of the date such litigation is filed.\n\n   4. Redistribution. You may reproduce and distribute copies of the\n      Work or Derivative Works thereof in any medium, with or without\n      modifications, and in Source or Object form, provided that You\n      meet the following conditions:\n\n      (a) You must give any other recipients of the Work or\n          Derivative Works a copy of this License; and\n\n      (b) You must cause any modified files to carry prominent notices\n          stating that You changed the files; and\n\n      (c) You must retain, in the Source form of any Derivative Works\n          that You distribute, all copyright, patent, trademark, and\n          attribution notices from the Source form of the Work,\n          excluding those notices that do not pertain to any part of\n          the Derivative Works; and\n\n      (d) If the Work includes a \"NOTICE\" text file as part of its\n          distribution, then any Derivative Works that You distribute must\n          include a readable copy of the attribution notices contained\n          within such NOTICE file, excluding those notices that do not\n          pertain to any part of the Derivative Works, in at least one\n          of the following places: within a NOTICE text file distributed\n          as part of the Derivative Works; within the Source form or\n          documentation, if provided along with the Derivative Works; or,\n          within a display generated by the Derivative Works, if and\n          wherever such third-party notices normally appear. The contents\n          of the NOTICE file are for informational purposes only and\n          do not modify the License. You may add Your own attribution\n          notices within Derivative Works that You distribute, alongside\n          or as an addendum to the NOTICE text from the Work, provided\n          that such additional attribution notices cannot be construed\n          as modifying the License.\n\n      You may add Your own copyright statement to Your modifications and\n      may provide additional or different license terms and conditions\n      for use, reproduction, or distribution of Your modifications, or\n      for any such Derivative Works as a whole, provided Your use,\n      reproduction, and distribution of the Work otherwise complies with\n      the conditions stated in this License.\n\n   5. Submission of Contributions. Unless You explicitly state otherwise,\n      any Contribution intentionally submitted for inclusion in the Work\n      by You to the Licensor shall be under the terms and conditions of\n      this License, without any additional terms or conditions.\n      Notwithstanding the above, nothing herein shall supersede or modify\n      the terms of any separate license agreement you may have executed\n      with Licensor regarding such Contributions.\n\n   6. Trademarks. This License does not grant permission to use the trade\n      names, trademarks, service marks, or product names of the Licensor,\n      except as required for reasonable and customary use in describing the\n      origin of the Work and reproducing the content of the NOTICE file.\n\n   7. Disclaimer of Warranty. Unless required by applicable law or\n      agreed to in writing, Licensor provides the Work (and each\n      Contributor provides its Contributions) on an \"AS IS\" BASIS,\n      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n      implied, including, without limitation, any warranties or conditions\n      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n      PARTICULAR PURPOSE. You are solely responsible for determining the\n      appropriateness of using or redistributing the Work and assume any\n      risks associated with Your exercise of permissions under this License.\n\n   8. Limitation of Liability. In no event and under no legal theory,\n      whether in tort (including negligence), contract, or otherwise,\n      unless required by applicable law (such as deliberate and grossly\n      negligent acts) or agreed to in writing, shall any Contributor be\n      liable to You for damages, including any direct, indirect, special,\n      incidental, or consequential damages of any character arising as a\n      result of this License or out of the use or inability to use the\n      Work (including but not limited to damages for loss of goodwill,\n      work stoppage, computer failure or malfunction, or any and all\n      other commercial damages or losses), even if such Contributor\n      has been advised of the possibility of such damages.\n\n   9. Accepting Warranty or Additional Liability. While redistributing\n      the Work or Derivative Works thereof, You may choose to offer,\n      and charge a fee for, acceptance of support, warranty, indemnity,\n      or other liability obligations and/or rights consistent with this\n      License. However, in accepting such obligations, You may act only\n      on Your own behalf and on Your sole responsibility, not on behalf\n      of any other Contributor, and only if You agree to indemnify,\n      defend, and hold each Contributor harmless for any liability\n      incurred by, or claims asserted against, such Contributor by reason\n      of your accepting any such warranty or additional liability.\n\n   END OF TERMS AND CONDITIONS\n\n   APPENDIX: How to apply the Apache License to your work.\n\n      To apply the Apache License to your work, attach the following\n      boilerplate notice, with the fields enclosed by brackets \"[]\"\n      replaced with your own identifying information. (Don't include\n      the brackets!)  The text should be enclosed in the appropriate\n      comment syntax for the file format. We also recommend that a\n      file or class name and description of purpose be included on the\n      same \"printed page\" as the copyright notice for easier\n      identification within third-party archives.\n\n   Copyright [yyyy] [name of copyright owner]\n\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use this file except in compliance with the License.\n   You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n"
  },
  {
    "path": "newscoop/js/domTT/alphaAPI.js",
    "content": "/** $Id: alphaAPI.js 1940 2005-07-16 23:23:54Z dallen $ */\r\n// {{{ license\r\n\r\n/*\r\n * Copyright 2002-2005 Dan Allen, Mojavelinux.com (dan.allen@mojavelinux.com)\r\n *\r\n * Licensed under the Apache License, Version 2.0 (the \"License\");\r\n * you may not use this file except in compliance with the License.\r\n * You may obtain a copy of the License at\r\n *\r\n *      http://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Unless required by applicable law or agreed to in writing, software\r\n * distributed under the License is distributed on an \"AS IS\" BASIS,\r\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n * See the License for the specific language governing permissions and\r\n * limitations under the License.\r\n */\r\n\r\n// }}}\r\n// {{{ intro\r\n\r\n/**\r\n * Title: alphaAPI\r\n * Original Author: chrisken\r\n * Original Url: http://www.cs.utexas.edu/users/chrisken/alphaapi.html\r\n *\r\n * Modified by Dan Allen <dan.allen@mojavelinux.com>\r\n * Note: When the stopAlpha is reached and it is equal to 0, the element's\r\n * style is set to display: none to fix a bug in domTT\r\n */\r\n\r\n// }}}\r\nfunction alphaAPI(element, fadeInDelay, fadeOutDelay, startAlpha, stopAlpha, offsetTime, deltaAlpha)\r\n{\r\n\t// {{{ properties\r\n\r\n\tthis.element = typeof(element) == 'object' ? element : document.getElementById(element);\r\n\tthis.fadeInDelay = fadeInDelay || 40;\r\n\tthis.fadeOutDelay = fadeOutDelay || this.fadeInDelay;\r\n\tthis.startAlpha = startAlpha;\r\n\tthis.stopAlpha = stopAlpha;\r\n\t// make sure a filter exists so an error is not thrown\r\n\tif (typeof(this.element.filters) == 'object')\r\n\t{\r\n\t\tif (typeof(this.element.filters.alpha) == 'undefined')\r\n\t\t{\r\n\t\t\tthis.element.style.filter += 'alpha(opacity=100)';\r\n\t\t}\r\n\t}\r\n\r\n\tthis.offsetTime = (offsetTime || 0) * 1000;\r\n\tthis.deltaAlpha = deltaAlpha || 10;\r\n\tthis.timer = null;\r\n\tthis.paused = false;\r\n\tthis.started = false;\r\n\tthis.cycle = false;\r\n\tthis.command = function() {};\r\n    return this;\r\n\r\n\t// }}}\r\n}\r\n\r\n// use prototype methods to save memory\r\n// {{{ repeat()\r\n\r\nalphaAPI.prototype.repeat = function(repeat)\r\n{\r\n    this.cycle = repeat ? true : false;\r\n}\r\n\r\n// }}}\r\n// {{{ setAlphaBy()\r\n\r\nalphaAPI.prototype.setAlphaBy = function(deltaAlpha)\r\n{\r\n    this.setAlpha(this.getAlpha() + deltaAlpha);\r\n}\r\n\r\n// }}}\r\n// {{{ toggle()\r\n\r\nalphaAPI.prototype.toggle = function()\r\n{\r\n    if (!this.started)\r\n    {\r\n        this.start();\r\n    }\r\n    else if (this.paused)\r\n    {\r\n        this.unpause();\r\n    }\r\n    else\r\n    {\r\n        this.pause();\r\n    }\r\n}\r\n\r\n// }}}\r\n// {{{ timeout()\r\n\r\nalphaAPI.prototype.timeout = function(command, delay)\r\n{\r\n    this.command = command;\r\n    this.timer = setTimeout(command, delay);\r\n}\r\n\r\n// }}}\r\n// {{{ setAlpha()\r\n\r\nalphaAPI.prototype.setAlpha = function(opacity)\r\n{\r\n    if (typeof(this.element.filters) == 'object')\r\n    {\r\n        this.element.filters.alpha.opacity = opacity;\r\n    }\r\n    else if (this.element.style.setProperty)\r\n    {\r\n        this.element.style.setProperty('opacity', opacity / 100, '');\r\n\t\t// handle the case of mozilla < 1.7\r\n        this.element.style.setProperty('-moz-opacity', opacity / 100, '');\r\n\t\t// handle the case of old kthml\r\n        this.element.style.setProperty('-khtml-opacity', opacity / 100, '');\r\n    }\r\n}\t\r\n\r\n// }}}\r\n// {{{ getAlpha()\r\n\r\nalphaAPI.prototype.getAlpha = function()\r\n{\r\n    if (typeof(this.element.filters) == 'object')\r\n    {\r\n        return this.element.filters.alpha.opacity;\r\n    }\r\n    else if (this.element.style.getPropertyValue)\r\n    {\r\n\t\tvar opacityValue = this.element.style.getPropertyValue('opacity');\r\n\t\t// handle the case of mozilla < 1.7\r\n\t\tif (opacityValue == '')\r\n\t\t{\r\n\t\t\topacityValue = this.element.style.getPropertyValue('-moz-opacity');\r\n\t\t}\r\n\r\n\t\t// handle the case of old khtml\r\n\t\tif (opacityValue == '')\r\n\t\t{\r\n\t\t\topacityValue = this.element.style.getPropertyValue('-khtml-opacity');\r\n\t\t}\r\n\r\n        return opacityValue * 100;\r\n    }\r\n\r\n    return 100;\r\n}\r\n\r\n// }}}\r\n// {{{ start()\r\n\r\nalphaAPI.prototype.start = function()\r\n{\r\n    this.started = true;\r\n    this.setAlpha(this.startAlpha);\r\n    // determine direction\r\n    if (this.startAlpha > this.stopAlpha)\r\n    {\r\n        var instance = this;\r\n        this.timeout(function() { instance.fadeOut(); }, this.offsetTime);\r\n    }\r\n    else\r\n    {\r\n        var instance = this;\r\n        this.timeout(function() { instance.fadeIn(); }, this.offsetTime);\r\n    }\r\n}\r\n\r\n// }}}\r\n// {{{ stop()\r\n\r\nalphaAPI.prototype.stop = function()\r\n{\r\n    this.started = false;\r\n    this.setAlpha(this.stopAlpha);\r\n\tif (this.stopAlpha == 0)\r\n\t{\r\n\t\tthis.element.style.display = 'none';\r\n\t}\r\n\r\n    this.stopTimer();\r\n    this.command = function() {};\r\n}\r\n\r\n// }}}\r\n// {{{ reset()\r\n\r\nalphaAPI.prototype.reset = function()\r\n{\r\n    this.started = false;\r\n    this.setAlpha(this.startAlpha);\r\n    this.stopTimer();\r\n    this.command = function() {};\r\n}\r\n\r\n// }}}\r\n// {{{ pause()\r\n\r\nalphaAPI.prototype.pause = function()\r\n{\r\n    this.paused = true;\r\n    this.stopTimer();\r\n}\r\n\r\n// }}}\r\n// {{{ unpause()\r\n\r\nalphaAPI.prototype.unpause = function()\r\n{\r\n    this.paused = false;\r\n    if (!this.started)\r\n    { \r\n        this.start();\r\n    }\r\n    else\r\n    {\r\n        this.command(); \r\n    }\r\n}\r\n\r\n// }}}\r\n// {{{ stopTimer()\r\n\r\nalphaAPI.prototype.stopTimer = function()\r\n{\r\n    clearTimeout(this.timer);\r\n    this.timer = null;\r\n}\r\n\r\n// }}}\r\n// {{{ fadeOut()\r\n\r\nalphaAPI.prototype.fadeOut = function()\r\n{\r\n    this.stopTimer();\r\n    if (this.getAlpha() > this.stopAlpha)\r\n    {\r\n        this.setAlphaBy(-1 * this.deltaAlpha);\r\n        var instance = this;\r\n        this.timeout(function() { instance.fadeOut(); }, this.fadeOutDelay);\r\n    }\r\n    else\r\n    {\r\n        if (this.cycle)\r\n        {\r\n            var instance = this;\r\n            this.timeout(function() { instance.fadeIn(); }, this.fadeInDelay);\r\n        }\r\n        else\r\n        {\r\n\t\t\tif (this.stopAlpha == 0)\r\n\t\t\t{\r\n\t\t\t\tthis.element.style.display = 'none';\r\n\t\t\t}\r\n            this.started = false;\r\n        }\r\n    }\r\n}\r\n\r\n// }}}\r\n// {{{ fadeIn()\r\n\r\nalphaAPI.prototype.fadeIn = function()\r\n{\r\n    this.stopTimer();\r\n    if (this.getAlpha() < this.startAlpha)\r\n    {\r\n        this.setAlphaBy(this.deltaAlpha);\r\n        var instance = this;\r\n        this.timeout(function() { instance.fadeIn(); }, this.fadeInDelay);\r\n    }\r\n    else\r\n    {\r\n        if (this.cycle)\r\n        {\r\n            var instance = this;\r\n            this.timeout(function() { instance.fadeOut(); }, this.fadeOutDelay);\r\n        }\r\n        else\r\n        {\r\n            this.started = false;\r\n        }\r\n    }\r\n}\r\n\r\n// }}}\r\n"
  },
  {
    "path": "newscoop/js/domTT/domLib.js",
    "content": "/** $Id: domLib.js 2321 2006-06-12 06:45:41Z dallen $ */\n// {{{ license\n\n/*\n * Copyright 2002-2005 Dan Allen, Mojavelinux.com (dan.allen@mojavelinux.com)\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n// }}}\n// {{{ intro\n\n/**\n * Title: DOM Library Core\n * Version: 0.70\n *\n * Summary:\n * A set of commonly used functions that make it easier to create javascript\n * applications that rely on the DOM.\n *\n * Updated: 2005/05/17\n *\n * Maintainer: Dan Allen <dan.allen@mojavelinux.com>\n * Maintainer: Jason Rust <jrust@rustyparts.com>\n *\n * License: Apache 2.0\n */\n\n// }}}\n// {{{ global constants (DO NOT EDIT)\n\n// -- Browser Detection --\nvar domLib_userAgent = navigator.userAgent.toLowerCase();\nvar domLib_isMac = navigator.appVersion.indexOf('Mac') != -1;\nvar domLib_isWin = domLib_userAgent.indexOf('windows') != -1;\n// NOTE: could use window.opera for detecting Opera\nvar domLib_isOpera = domLib_userAgent.indexOf('opera') != -1;\nvar domLib_isOpera7up = domLib_userAgent.match(/opera.(7|8)/i);\nvar domLib_isSafari = domLib_userAgent.indexOf('safari') != -1;\nvar domLib_isKonq = domLib_userAgent.indexOf('konqueror') != -1;\n// Both konqueror and safari use the khtml rendering engine\nvar domLib_isKHTML = (domLib_isKonq || domLib_isSafari || domLib_userAgent.indexOf('khtml') != -1);\nvar domLib_isIE = (!domLib_isKHTML && !domLib_isOpera && (domLib_userAgent.indexOf('msie 5') != -1 || domLib_userAgent.indexOf('msie 6') != -1 || domLib_userAgent.indexOf('msie 7') != -1));\nvar domLib_isIE5up = domLib_isIE;\nvar domLib_isIE50 = (domLib_isIE && domLib_userAgent.indexOf('msie 5.0') != -1);\nvar domLib_isIE55 = (domLib_isIE && domLib_userAgent.indexOf('msie 5.5') != -1);\nvar domLib_isIE5 = (domLib_isIE50 || domLib_isIE55);\n// safari and konq may use string \"khtml, like gecko\", so check for destinctive /\nvar domLib_isGecko = domLib_userAgent.indexOf('gecko/') != -1;\nvar domLib_isMacIE = (domLib_isIE && domLib_isMac);\nvar domLib_isIE55up = domLib_isIE5up && !domLib_isIE50 && !domLib_isMacIE;\nvar domLib_isIE6up = domLib_isIE55up && !domLib_isIE55;\n\n// -- Browser Abilities --\nvar domLib_standardsMode = (document.compatMode && document.compatMode == 'CSS1Compat');\nvar domLib_useLibrary = (domLib_isOpera7up || domLib_isKHTML || domLib_isIE5up || domLib_isGecko || domLib_isMacIE || document.defaultView);\n// fixed in Konq3.2\nvar domLib_hasBrokenTimeout = (domLib_isMacIE || (domLib_isKonq && domLib_userAgent.match(/konqueror\\/3.([2-9])/) == null));\nvar domLib_canFade = (domLib_isGecko || domLib_isIE || domLib_isSafari || domLib_isOpera);\nvar domLib_canDrawOverSelect = (domLib_isMac || domLib_isOpera || domLib_isGecko);\nvar domLib_canDrawOverFlash = (domLib_isMac || domLib_isWin);\n\n// -- Event Variables --\nvar domLib_eventTarget = domLib_isIE ? 'srcElement' : 'currentTarget';\nvar domLib_eventButton = domLib_isIE ? 'button' : 'which';\nvar domLib_eventTo = domLib_isIE ? 'toElement' : 'relatedTarget';\nvar domLib_stylePointer = domLib_isIE ? 'hand' : 'pointer';\n// NOTE: a bug exists in Opera that prevents maxWidth from being set to 'none', so we make it huge\nvar domLib_styleNoMaxWidth = domLib_isOpera ? '10000px' : 'none';\nvar domLib_hidePosition = '-1000px';\nvar domLib_scrollbarWidth = 14;\nvar domLib_autoId = 1;\nvar domLib_zIndex = 100;\n\n// -- Detection --\nvar domLib_collisionElements;\nvar domLib_collisionsCached = false;\n\nvar domLib_timeoutStateId = 0;\nvar domLib_timeoutStates = new Hash();\n\n// }}}\n// {{{ DOM enhancements\n\nif (!document.ELEMENT_NODE)\n{\n\tdocument.ELEMENT_NODE = 1;\n\tdocument.ATTRIBUTE_NODE = 2;\n\tdocument.TEXT_NODE = 3;\n\tdocument.DOCUMENT_NODE = 9;\n\tdocument.DOCUMENT_FRAGMENT_NODE = 11;\n}\n\nfunction domLib_clone(obj)\n{\n\tvar copy = {};\n\tfor (var i in obj)\n\t{\n\t\tvar value = obj[i];\n\t\ttry\n\t\t{\n\t\t\tif (value != null && typeof(value) == 'object' && value != window && !value.nodeType)\n\t\t\t{\n\t\t\t\tcopy[i] = domLib_clone(value);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tcopy[i] = value;\n\t\t\t}\n\t\t}\n\t\tcatch(e)\n\t\t{\n\t\t\tcopy[i] = value;\n\t\t}\n\t}\n\n\treturn copy;\n}\n\n// }}}\n// {{{ class Hash()\n\nfunction Hash()\n{\n\tthis.length = 0;\n\tthis.numericLength = 0; \n\tthis.elementData = [];\n\tfor (var i = 0; i < arguments.length; i += 2)\n\t{\n\t\tif (typeof(arguments[i + 1]) != 'undefined')\n\t\t{\n\t\t\tthis.elementData[arguments[i]] = arguments[i + 1];\n\t\t\tthis.length++;\n\t\t\tif (arguments[i] == parseInt(arguments[i])) \n\t\t\t{\n\t\t\t\tthis.numericLength++;\n\t\t\t}\n\t\t}\n\t}\n}\n\n// using prototype as opposed to inner functions saves on memory \nHash.prototype.get = function(in_key)\n{\n\tif (typeof(this.elementData[in_key]) != 'undefined') {\n\t\treturn this.elementData[in_key];\n\t}\n\n\treturn null;\n}\n\nHash.prototype.set = function(in_key, in_value)\n{\n\tif (typeof(in_value) != 'undefined')\n\t{\n\t\tif (typeof(this.elementData[in_key]) == 'undefined')\n\t\t{\n\t\t\tthis.length++;\n\t\t\tif (in_key == parseInt(in_key)) \n\t\t\t{\n\t\t\t\tthis.numericLength++;\n\t\t\t}\n\t\t}\n\n\t\treturn this.elementData[in_key] = in_value;\n\t}\n\n\treturn false;\n}\n\nHash.prototype.remove = function(in_key)\n{\n\tvar tmp_value;\n\tif (typeof(this.elementData[in_key]) != 'undefined')\n\t{\n\t\tthis.length--;\n\t\tif (in_key == parseInt(in_key)) \n\t\t{\n\t\t\tthis.numericLength--;\n\t\t}\n\n\t\ttmp_value = this.elementData[in_key];\n\t\tdelete this.elementData[in_key];\n\t}\n\n\treturn tmp_value;\n}\n\nHash.prototype.size = function()\n{\n\treturn this.length;\n}\n\nHash.prototype.has = function(in_key)\n{\n\treturn typeof(this.elementData[in_key]) != 'undefined';\n}\n\nHash.prototype.find = function(in_obj)\n{\n\tfor (var tmp_key in this.elementData) \n\t{\n\t\tif (this.elementData[tmp_key] == in_obj) \n\t\t{\n\t\t\treturn tmp_key;\n\t\t}\n\t}\n\n\treturn null;\n}\n\nHash.prototype.merge = function(in_hash)\n{\n\tfor (var tmp_key in in_hash.elementData) \n\t{\n\t\tif (typeof(this.elementData[tmp_key]) == 'undefined') \n\t\t{\n\t\t\tthis.length++;\n\t\t\tif (tmp_key == parseInt(tmp_key)) \n\t\t\t{\n\t\t\t\tthis.numericLength++;\n\t\t\t}\n\t\t}\n\n\t\tthis.elementData[tmp_key] = in_hash.elementData[tmp_key];\n\t}\n}\n\nHash.prototype.compare = function(in_hash)\n{\n\tif (this.length != in_hash.length) \n\t{\n\t\treturn false;\n\t}\n\n\tfor (var tmp_key in this.elementData) \n\t{\n\t\tif (this.elementData[tmp_key] != in_hash.elementData[tmp_key]) \n\t\t{\n\t\t\treturn false;\n\t\t}\n\t}\n\t\n\treturn true;\n}\n\n// }}}\n// {{{ domLib_isDescendantOf()\n\nfunction domLib_isDescendantOf(in_object, in_ancestor, in_bannedTags)\n{\n\tif (in_object == null)\n\t{\n\t\treturn false;\n\t}\n\n\tif (in_object == in_ancestor)\n\t{\n\t\treturn true;\n\t}\n\n\tif (typeof(in_bannedTags) != 'undefined' &&\n\t\t(',' + in_bannedTags.join(',') + ',').indexOf(',' + in_object.tagName + ',') != -1)\n\t{\n\t\treturn false;\n\t}\n\n\twhile (in_object != document.documentElement)\n\t{\n\t\ttry\n\t\t{\n\t\t\tif ((tmp_object = in_object.offsetParent) && tmp_object == in_ancestor)\n\t\t\t{\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\telse if ((tmp_object = in_object.parentNode) == in_ancestor)\n\t\t\t{\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tin_object = tmp_object;\n\t\t\t}\n\t\t}\n\t\t// in case we get some wierd error, assume we left the building\n\t\tcatch(e)\n\t\t{\n\t\t\treturn false;\n\t\t}\n\t}\n\n\treturn false;\n}\n\n// }}}\n// {{{ domLib_detectCollisions()\n\n/**\n * For any given target element, determine if elements on the page\n * are colliding with it that do not obey the rules of z-index.\n */\nfunction domLib_detectCollisions(in_object, in_recover, in_useCache)\n{\n\t// the reason for the cache is that if the root menu is built before\n\t// the page is done loading, then it might not find all the elements.\n\t// so really the only time you don't use cache is when building the\n\t// menu as part of the page load\n\tif (!domLib_collisionsCached)\n\t{\n\t\tvar tags = [];\n\n\t\tif (!domLib_canDrawOverFlash)\n\t\t{\n\t\t\ttags[tags.length] = 'object';\n\t\t}\n\n\t\tif (!domLib_canDrawOverSelect)\n\t\t{\n\t\t\ttags[tags.length] = 'select';\n\t\t}\n\n\t\tdomLib_collisionElements = domLib_getElementsByTagNames(tags, true);\n\t\tdomLib_collisionsCached = in_useCache;\n\t}\n\n\t// if we don't have a tip, then unhide selects\n\tif (in_recover)\n\t{\n\t\tfor (var cnt = 0; cnt < domLib_collisionElements.length; cnt++)\n\t\t{\n\t\t\tvar thisElement = domLib_collisionElements[cnt];\n\n\t\t\tif (!thisElement.hideList)\n\t\t\t{\n\t\t\t\tthisElement.hideList = new Hash();\n\t\t\t}\n\n\t\t\tthisElement.hideList.remove(in_object.id);\n\t\t\tif (!thisElement.hideList.length)\n\t\t\t{\n\t\t\t\tdomLib_collisionElements[cnt].style.visibility = 'visible';\n\t\t\t\tif (domLib_isKonq)\n\t\t\t\t{\n\t\t\t\t\tdomLib_collisionElements[cnt].style.display = '';\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn;\n\t}\n\telse if (domLib_collisionElements.length == 0)\n\t{\n\t\treturn;\n\t}\n\n\t// okay, we have a tip, so hunt and destroy\n\tvar objectOffsets = domLib_getOffsets(in_object);\n\n\tfor (var cnt = 0; cnt < domLib_collisionElements.length; cnt++)\n\t{\n\t\tvar thisElement = domLib_collisionElements[cnt];\n\n\t\t// if collision element is in active element, move on\n\t\t// WARNING: is this too costly?\n\t\tif (domLib_isDescendantOf(thisElement, in_object))\n\t\t{\n\t\t\tcontinue;\n\t\t}\n\n\t\t// konqueror only has trouble with multirow selects\n\t\tif (domLib_isKonq &&\n\t\t\tthisElement.tagName == 'SELECT' &&\n\t\t\t(thisElement.size <= 1 && !thisElement.multiple))\n\t\t{\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (!thisElement.hideList)\n\t\t{\n\t\t\tthisElement.hideList = new Hash();\n\t\t}\n\n\t\tvar selectOffsets = domLib_getOffsets(thisElement); \n\t\tvar center2centerDistance = Math.sqrt(Math.pow(selectOffsets.get('leftCenter') - objectOffsets.get('leftCenter'), 2) + Math.pow(selectOffsets.get('topCenter') - objectOffsets.get('topCenter'), 2));\n\t\tvar radiusSum = selectOffsets.get('radius') + objectOffsets.get('radius');\n\t\t// the encompassing circles are overlapping, get in for a closer look\n\t\tif (center2centerDistance < radiusSum)\n\t\t{\n\t\t\t// tip is left of select\n\t\t\tif ((objectOffsets.get('leftCenter') <= selectOffsets.get('leftCenter') && objectOffsets.get('right') < selectOffsets.get('left')) ||\n\t\t\t// tip is right of select\n\t\t\t\t(objectOffsets.get('leftCenter') > selectOffsets.get('leftCenter') && objectOffsets.get('left') > selectOffsets.get('right')) ||\n\t\t\t// tip is above select\n\t\t\t\t(objectOffsets.get('topCenter') <= selectOffsets.get('topCenter') && objectOffsets.get('bottom') < selectOffsets.get('top')) ||\n\t\t\t// tip is below select\n\t\t\t\t(objectOffsets.get('topCenter') > selectOffsets.get('topCenter') && objectOffsets.get('top') > selectOffsets.get('bottom')))\n\t\t\t{\n\t\t\t\tthisElement.hideList.remove(in_object.id);\n\t\t\t\tif (!thisElement.hideList.length)\n\t\t\t\t{\n\t\t\t\t\tthisElement.style.visibility = 'visible';\n\t\t\t\t\tif (domLib_isKonq)\n\t\t\t\t\t{\n\t\t\t\t\t\tthisElement.style.display = '';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tthisElement.hideList.set(in_object.id, true);\n\t\t\t\tthisElement.style.visibility = 'hidden';\n\t\t\t\tif (domLib_isKonq)\n\t\t\t\t{\n\t\t\t\t\tthisElement.style.display = 'none';\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\n// }}}\n// {{{ domLib_getOffsets()\n\nfunction domLib_getOffsets(in_object, in_preserveScroll)\n{\n\tif (typeof(in_preserveScroll) == 'undefined') {\n\t\tin_preserveScroll = false;\n\t}\n\n\tvar originalObject = in_object;\n\tvar originalWidth = in_object.offsetWidth;\n\tvar originalHeight = in_object.offsetHeight;\n\tvar offsetLeft = 0;\n\tvar offsetTop = 0;\n\n\twhile (in_object)\n\t{\n\t\toffsetLeft += in_object.offsetLeft;\n\t\toffsetTop += in_object.offsetTop;\n\t\tin_object = in_object.offsetParent;\n\t\t// consider scroll offset of parent elements\n\t\tif (in_object && !in_preserveScroll)\n\t\t{\n\t\t\toffsetLeft -= in_object.scrollLeft;\n\t\t\toffsetTop -= in_object.scrollTop;\n\t\t}\n\t}\n\n\t// MacIE misreports the offsets (even with margin: 0 in body{}), still not perfect\n\tif (domLib_isMacIE) {\n\t\toffsetLeft += 10;\n\t\toffsetTop += 10;\n\t}\n\n\treturn new Hash(\n\t\t'left',\t\toffsetLeft,\n\t\t'top',\t\toffsetTop,\n\t\t'right',\toffsetLeft + originalWidth,\n\t\t'bottom',\toffsetTop + originalHeight,\n\t\t'leftCenter',\toffsetLeft + originalWidth/2,\n\t\t'topCenter',\toffsetTop + originalHeight/2,\n\t\t'radius',\tMath.max(originalWidth, originalHeight) \n\t);\n}\n\n// }}}\n// {{{ domLib_setTimeout()\n\nfunction domLib_setTimeout(in_function, in_timeout, in_args)\n{\n\tif (typeof(in_args) == 'undefined')\n\t{\n\t\tin_args = [];\n\t}\n\n\tif (in_timeout == -1)\n\t{\n\t\t// timeout event is disabled\n\t\treturn 0;\n\t}\n\telse if (in_timeout == 0)\n\t{\n\t\tin_function(in_args);\n\t\treturn 0;\n\t}\n\n\t// must make a copy of the arguments so that we release the reference\n\tvar args = domLib_clone(in_args);\n\n\tif (!domLib_hasBrokenTimeout)\n\t{\n\t\treturn setTimeout(function() { in_function(args); }, in_timeout);\n\t}\n\telse\n\t{\n\t\tvar id = domLib_timeoutStateId++;\n\t\tvar data = new Hash();\n\t\tdata.set('function', in_function);\n\t\tdata.set('args', args);\n\t\tdomLib_timeoutStates.set(id, data);\n\n\t\tdata.set('timeoutId', setTimeout('domLib_timeoutStates.get(' + id + ').get(\\'function\\')(domLib_timeoutStates.get(' + id + ').get(\\'args\\')); domLib_timeoutStates.remove(' + id + ');', in_timeout));\n\t\treturn id;\n\t}\n}\n\n// }}}\n// {{{ domLib_clearTimeout()\n\nfunction domLib_clearTimeout(in_id)\n{\n\tif (!domLib_hasBrokenTimeout)\n\t{\n\t\tif (in_id > 0) {\n\t\t\tclearTimeout(in_id);\n\t\t}\n\t}\n\telse\n\t{\n\t\tif (domLib_timeoutStates.has(in_id))\n\t\t{\n\t\t\tclearTimeout(domLib_timeoutStates.get(in_id).get('timeoutId'))\n\t\t\tdomLib_timeoutStates.remove(in_id);\n\t\t}\n\t}\n}\n\n// }}}\n// {{{ domLib_getEventPosition()\n\nfunction domLib_getEventPosition(in_eventObj)\n{\n\tvar eventPosition = new Hash('x', 0, 'y', 0, 'scrollX', 0, 'scrollY', 0);\n\n\t// IE varies depending on standard compliance mode\n\tif (domLib_isIE)\n\t{\n\t\tvar doc = (domLib_standardsMode ? document.documentElement : document.body);\n\t\t// NOTE: events may fire before the body has been loaded\n\t\tif (doc)\n\t\t{\n\t\t\teventPosition.set('x', in_eventObj.clientX + doc.scrollLeft);\n\t\t\teventPosition.set('y', in_eventObj.clientY + doc.scrollTop);\n\t\t\teventPosition.set('scrollX', doc.scrollLeft);\n\t\t\teventPosition.set('scrollY', doc.scrollTop);\n\t\t}\n\t}\n\telse\n\t{\n\t\teventPosition.set('x', in_eventObj.pageX);\n\t\teventPosition.set('y', in_eventObj.pageY);\n\t\teventPosition.set('scrollX', in_eventObj.pageX - in_eventObj.clientX);\n\t\teventPosition.set('scrollY', in_eventObj.pageY - in_eventObj.clientY);\n\t}\n\n\treturn eventPosition;\n}\n\n// }}}\n// {{{ domLib_cancelBubble()\n\nfunction domLib_cancelBubble(in_event)\n{\n\tvar eventObj = in_event ? in_event : window.event;\n\teventObj.cancelBubble = true;\n}\n\n// }}}\n// {{{ domLib_getIFrameReference()\n\nfunction domLib_getIFrameReference(in_frame)\n{\n\tif (domLib_isGecko || domLib_isIE)\n\t{\n\t\treturn in_frame.frameElement;\n\t}\n\telse\n\t{\n\t\t// we could either do it this way or require an id on the frame\n\t\t// equivalent to the name\n\t\tvar name = in_frame.name;\n\t\tif (!name || !in_frame.parent)\n\t\t{\n\t\t\treturn null;\n\t\t}\n\n\t\tvar candidates = in_frame.parent.document.getElementsByTagName('iframe');\n\t\tfor (var i = 0; i < candidates.length; i++)\n\t\t{\n\t\t\tif (candidates[i].name == name)\n\t\t\t{\n\t\t\t\treturn candidates[i];\n\t\t\t}\n\t\t}\n\n\t\treturn null;\n\t}\n}\n\n// }}}\n// {{{ domLib_getElementsByClass()\n\nfunction domLib_getElementsByClass(in_class)\n{\n\tvar elements = domLib_isIE5 ? document.all : document.getElementsByTagName('*');\t\n\tvar matches = [];\t\n\tvar cnt = 0;\n\tfor (var i = 0; i < elements.length; i++)\n\t{\n\t\tif ((\" \" + elements[i].className + \" \").indexOf(\" \" + in_class + \" \") != -1)\n\t\t{\n\t\t\tmatches[cnt++] = elements[i];\n\t\t}\n\t}\n\n\treturn matches;\n}\n\n// }}}\n// {{{ domLib_getElementsByTagNames()\n\nfunction domLib_getElementsByTagNames(in_list, in_excludeHidden)\n{\n\tvar elements = [];\n\tfor (var i = 0; i < in_list.length; i++)\n\t{\n\t\tvar matches = document.getElementsByTagName(in_list[i]);\n\t\tfor (var j = 0; j < matches.length; j++)\n\t\t{\n\t\t\t// skip objects that have nested embeds, or else we get \"flashing\"\n\t\t\tif (matches[j].tagName == 'OBJECT' && domLib_isGecko)\n\t\t\t{\n\t\t\t\tvar kids = matches[j].childNodes;\n\t\t\t\tvar skip = false;\n\t\t\t\tfor (var k = 0; k < kids.length; k++)\n\t\t\t\t{\n\t\t\t\t\tif (kids[k].tagName == 'EMBED')\n\t\t\t\t\t{\n\t\t\t\t\t\tskip = true;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (skip) continue;\n\t\t\t}\n\n\t\t\tif (in_excludeHidden && domLib_getComputedStyle(matches[j], 'visibility') == 'hidden')\n\t\t\t{\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\telements[elements.length] = matches[j];\t\n\t\t}\n\t}\n\n\treturn elements;\n}\n\n// }}}\n// {{{ domLib_getComputedStyle()\n\nfunction domLib_getComputedStyle(in_obj, in_property)\n{\n\tif (domLib_isIE)\n\t{\n\t\tvar humpBackProp = in_property.replace(/-(.)/, function (a, b) { return b.toUpperCase(); });\n\t\treturn eval('in_obj.currentStyle.' + humpBackProp);\n\t}\n\t// getComputedStyle() is broken in konqueror, so let's go for the style object\n\telse if (domLib_isKonq)\n\t{\n\t\t//var humpBackProp = in_property.replace(/-(.)/, function (a, b) { return b.toUpperCase(); });\n\t\treturn eval('in_obj.style.' + in_property);\n\t}\n\telse\n\t{\n\t\treturn document.defaultView.getComputedStyle(in_obj, null).getPropertyValue(in_property);\n\t}\n}\n\n// }}}\n// {{{ makeTrue()\n\nfunction makeTrue()\n{\n\treturn true;\n}\n\n// }}}\n// {{{ makeFalse()\n\nfunction makeFalse()\n{\n\treturn false;\n}\n\n// }}}\n"
  },
  {
    "path": "newscoop/js/domTT/domTT.js",
    "content": "/** $Id: domTT.js 2324 2006-06-12 07:06:39Z dallen $ */\n// {{{ license\n\n/*\n * Copyright 2002-2005 Dan Allen, Mojavelinux.com (dan.allen@mojavelinux.com)\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n// }}}\n// {{{ intro\n\n/**\n * Title: DOM Tooltip Library\n * Version: 0.7.3\n *\n * Summary:\n * Allows developers to add custom tooltips to the webpages.  Tooltips are\n * generated using the domTT_activate() function and customized by setting\n * a handful of options.\n *\n * Maintainer: Dan Allen <dan.allen@mojavelinux.com>\n * Contributors:\n * \t\tJosh Gross <josh@jportalhome.com>\n *\t\tJason Rust <jason@rustyparts.com>\n *\n * License: Apache 2.0\n * However, if you use this library, you earn the position of official bug\n * reporter :) Please post questions or problem reports to the newsgroup:\n *\n *   http://groups-beta.google.com/group/dom-tooltip\n *\n * If you are doing this for commercial work, perhaps you could send me a few\n * Starbucks Coffee gift dollars or PayPal bucks to encourage future\n * developement (NOT REQUIRED).  E-mail me for my snail mail address.\n\n *\n * Homepage: http://www.mojavelinux.com/projects/domtooltip/\n *\n * Newsgroup: http://groups-beta.google.com/group/dom-tooltip\n *\n * Freshmeat Project: http://freshmeat.net/projects/domtt/?topic_id=92\n *\n * Updated: 2005/07/16\n *\n * Supported Browsers:\n * Mozilla (Gecko), IE 5.5+, IE on Mac, Safari, Konqueror, Opera 7\n *\n * Usage:\n * Please see the HOWTO documentation.\n**/\n\n// }}}\n// {{{ settings (editable)\n\n// IE mouse events seem to be off by 2 pixels\nvar domTT_offsetX = (domLib_isIE ? -2 : 0);\nvar domTT_offsetY = (domLib_isIE ? 4 : 2);\nvar domTT_direction = 'southeast';\nvar domTT_mouseHeight = domLib_isIE ? 13 : 19;\nvar domTT_closeLink = 'X';\nvar domTT_closeAction = 'hide';\nvar domTT_activateDelay = 500;\nvar domTT_maxWidth = false;\nvar domTT_styleClass = 'domTT';\nvar domTT_fade = 'neither';\nvar domTT_lifetime = 0;\nvar domTT_grid = 0;\nvar domTT_trailDelay = 200;\nvar domTT_useGlobalMousePosition = true;\nvar domTT_postponeActivation = false;\nvar domTT_tooltipIdPrefix = '[domTT]';\nvar domTT_screenEdgeDetection = true;\nvar domTT_screenEdgePadding = 4;\nvar domTT_oneOnly = false;\nvar domTT_cloneNodes = false;\nvar domTT_detectCollisions = true;\nvar domTT_bannedTags = ['OPTION'];\nvar domTT_draggable = false;\nif (typeof(domTT_dragEnabled) == 'undefined')\n{\n\tdomTT_dragEnabled = false;\n}\n\n// }}}\n// {{{ globals (DO NOT EDIT)\n\nvar domTT_predefined = new Hash();\n// tooltips are keyed on both the tip id and the owner id,\n// since events can originate on either object\nvar domTT_tooltips = new Hash();\nvar domTT_lastOpened = 0;\nvar domTT_documentLoaded = false;\nvar domTT_mousePosition = null;\n\n// }}}\n// {{{ document.onmousemove\n\nif (domLib_useLibrary && domTT_useGlobalMousePosition)\n{\n\tdocument.onmousemove = function(in_event)\n\t{\n\t\tif (typeof(in_event) == 'undefined') { in_event = window.event; }\n\n\t\tdomTT_mousePosition = domLib_getEventPosition(in_event);\n\t\tif (domTT_dragEnabled && domTT_dragMouseDown)\n\t\t{\n\t\t\tdomTT_dragUpdate(in_event);\n\t\t}\n\t}\n}\n\n// }}}\n// {{{ domTT_activate()\n\nfunction domTT_activate(in_this, in_event)\n{\n\tif (!domLib_useLibrary || (domTT_postponeActivation && !domTT_documentLoaded)) { return false; }\n\n\t// make sure in_event is set (for IE, some cases we have to use window.event)\n\tif (typeof(in_event) == 'undefined') { in_event = window.event;\t}\n\n\t// don't allow tooltips on banned tags (such as OPTION)\n\tif (in_event != null) {\n\t\tvar target = in_event.srcElement ? in_event.srcElement : in_event.target;\n\t\tif (target != null && (',' + domTT_bannedTags.join(',') + ',').indexOf(',' + target.tagName + ',') != -1)\n\t\t{\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tvar owner = document.body;\n\t// we have an active event so get the owner\n\tif (in_event != null && in_event.type.match(/key|mouse|click|contextmenu/i))\n\t{\n\t\t// make sure we have nothing higher than the body element\n\t\tif (in_this.nodeType && in_this.nodeType != document.DOCUMENT_NODE)\n\t\t{\n\t\t\towner = in_this;\n\t\t}\n\t}\n\t// non active event (make sure we were passed a string id)\n\telse\n\t{\n\t\tif (typeof(in_this) != 'object' && !(owner = domTT_tooltips.get(in_this)))\n\t\t{\n\t\t\t// NOTE: two steps to avoid \"flashing\" in gecko\n\t\t\tvar embryo = document.createElement('div');\n\t\t\towner = document.body.appendChild(embryo);\n\t\t\towner.style.display = 'none';\n\t\t\towner.id = in_this;\n\t\t}\n\t}\n\n\t// make sure the owner has a unique id\n\tif (!owner.id)\n\t{\n\t\towner.id = '__autoId' + domLib_autoId++;\n\t}\n\n\t// see if we should only be opening one tip at a time\n\t// NOTE: this is not \"perfect\" yet since it really steps on any other\n\t// tip working on fade out or delayed close, but it get's the job done\n\tif (domTT_oneOnly && domTT_lastOpened)\n\t{\n\t\tdomTT_deactivate(domTT_lastOpened);\n\t}\n\n\tdomTT_lastOpened = owner.id;\n\n\tvar tooltip = domTT_tooltips.get(owner.id);\n\tif (tooltip)\n\t{\n\t\tif (tooltip.get('eventType') != in_event.type)\n\t\t{\n\t\t\tif (tooltip.get('type') == 'greasy')\n\t\t\t{\n\t\t\t\ttooltip.set('closeAction', 'destroy');\n\t\t\t\tdomTT_deactivate(owner.id);\n\t\t\t}\n\t\t\telse if (tooltip.get('status') != 'inactive')\n\t\t\t{\n\t\t\t\treturn owner.id;\n\t\t\t}\n\t\t}\n\t\telse\n\t\t{\n\t\t\tif (tooltip.get('status') == 'inactive')\n\t\t\t{\n\t\t\t\ttooltip.set('status', 'pending');\n\t\t\t\ttooltip.set('activateTimeout', domLib_setTimeout(domTT_runShow, tooltip.get('delay'), [owner.id, in_event]));\n\n\t\t\t\treturn owner.id;\n\t\t\t}\n\t\t\t// either pending or active, let it be\n\t\t\telse\n\t\t\t{\n\t\t\t\treturn owner.id;\n\t\t\t}\n\t\t}\n\t}\n\n\t// setup the default options hash\n\tvar options = new Hash(\n\t\t'caption',\t\t'',\n\t\t'content',\t\t'',\n\t\t'clearMouse',\ttrue,\n\t\t'closeAction',\tdomTT_closeAction,\n\t\t'closeLink',\tdomTT_closeLink,\n\t\t'delay',\t\tdomTT_activateDelay,\n\t\t'direction',\tdomTT_direction,\n\t\t'draggable',\tdomTT_draggable,\n\t\t'fade',\t\t\tdomTT_fade,\n\t\t'fadeMax',\t\t100,\n\t\t'grid',\t\t\tdomTT_grid,\n\t\t'id',\t\t\tdomTT_tooltipIdPrefix + owner.id,\n\t\t'inframe',\t\tfalse,\n\t\t'lifetime',\t\tdomTT_lifetime,\n\t\t'offsetX',\t\tdomTT_offsetX,\n\t\t'offsetY',\t\tdomTT_offsetY,\n\t\t'parent',\t\tdocument.body,\n\t\t'position',\t\t'absolute',\n\t\t'styleClass',\tdomTT_styleClass,\n\t\t'type',\t\t\t'greasy',\n\t\t'trail',\t\tfalse,\n\t\t'lazy',\t\t\tfalse\n\t);\n\n\t// load in the options from the function call\n\tfor (var i = 2; i < arguments.length; i += 2)\n\t{\n\t\t// load in predefined\n\t\tif (arguments[i] == 'predefined')\n\t\t{\n\t\t\tvar predefinedOptions = domTT_predefined.get(arguments[i + 1]);\n\t\t\tfor (var j in predefinedOptions.elementData)\n\t\t\t{\n\t\t\t\toptions.set(j, predefinedOptions.get(j));\n\t\t\t}\n\t\t}\n\t\t// set option\n\t\telse\n\t\t{\n\t\t\toptions.set(arguments[i], arguments[i + 1]);\n\t\t}\n\t}\n\n\toptions.set('eventType', in_event != null ? in_event.type : null);\n\n\t// immediately set the status text if provided\n\tif (options.has('statusText'))\n\t{\n\t\ttry { window.status = options.get('statusText'); } catch(e) {}\n\t}\n\n\t// if we didn't give content...assume we just wanted to change the status and return\n\tif (!options.has('content') || options.get('content') == '' || options.get('content') == null)\n\t{\n\t\tif (typeof(owner.onmouseout) != 'function')\n\t\t{\n\t\t\towner.onmouseout = function(in_event) { domTT_mouseout(this, in_event); };\n\t\t}\n\n\t\treturn owner.id;\n\t}\n\n\toptions.set('owner', owner);\n\n\tdomTT_create(options);\n\n\t// determine the show delay\n\toptions.set('delay', (in_event != null && in_event.type.match(/click|mousedown|contextmenu/i)) ? 0 : parseInt(options.get('delay')));\n\tdomTT_tooltips.set(owner.id, options);\n\tdomTT_tooltips.set(options.get('id'), options);\n\toptions.set('status', 'pending');\n\toptions.set('activateTimeout', domLib_setTimeout(domTT_runShow, options.get('delay'), [owner.id, in_event]));\n\n\treturn owner.id;\n}\n\n// }}}\n// {{{ domTT_create()\n\nfunction domTT_create(in_options)\n{\n\tvar tipOwner = in_options.get('owner');\n\tvar parentObj = in_options.get('parent');\n\tvar parentDoc = parentObj.ownerDocument || parentObj.document;\n\n\t// create the tooltip and hide it\n\t// NOTE: two steps to avoid \"flashing\" in gecko\n\tvar embryo = parentDoc.createElement('div');\n\tvar tipObj = parentObj.appendChild(embryo);\n\ttipObj.style.position = 'absolute';\n\ttipObj.style.left = '0px';\n\ttipObj.style.top = '0px';\n\ttipObj.style.visibility = 'hidden';\n\ttipObj.id = in_options.get('id');\n\ttipObj.className = in_options.get('styleClass');\n\n\tvar contentBlock;\n\tvar tableLayout = false;\n\n\tif (in_options.get('caption') || (in_options.get('type') == 'sticky' && in_options.get('caption') !== false))\n\t{\n\t\ttableLayout = true;\n\t\t// layout the tip with a hidden formatting table\n\t\tvar tipLayoutTable = tipObj.appendChild(parentDoc.createElement('table'));\n\t\ttipLayoutTable.style.borderCollapse = 'collapse';\n\t\tif (domLib_isKHTML)\n\t\t{\n\t\t\ttipLayoutTable.cellSpacing = 0;\n\t\t}\n\n\t\tvar tipLayoutTbody = tipLayoutTable.appendChild(parentDoc.createElement('tbody'));\n\n\t\tvar numCaptionCells = 0;\n\t\tvar captionRow = tipLayoutTbody.appendChild(parentDoc.createElement('tr'));\n\t\tvar captionCell = captionRow.appendChild(parentDoc.createElement('td'));\n\t\tcaptionCell.style.padding = '0px';\n\t\tvar caption = captionCell.appendChild(parentDoc.createElement('div'));\n\t\tcaption.className = 'caption';\n\t\tif (domLib_isIE50)\n\t\t{\n\t\t\tcaption.style.height = '100%';\n\t\t}\n\n\t\tif (in_options.get('caption').nodeType)\n\t\t{\n\t\t\tcaption.appendChild(domTT_cloneNodes ? in_options.get('caption').cloneNode(1) : in_options.get('caption'));\n\t\t}\n\t\telse\n\t\t{\n\t\t\tcaption.innerHTML = in_options.get('caption');\n\t\t}\n\n\t\tif (in_options.get('type') == 'sticky')\n\t\t{\n\t\t\tvar numCaptionCells = 2;\n\t\t\tvar closeLinkCell = captionRow.appendChild(parentDoc.createElement('td'));\n\t\t\tcloseLinkCell.style.padding = '0px';\n\t\t\tvar closeLink = closeLinkCell.appendChild(parentDoc.createElement('div'));\n\t\t\tcloseLink.className = 'caption';\n\t\t\tif (domLib_isIE50)\n\t\t\t{\n\t\t\t\tcloseLink.style.height = '100%';\n\t\t\t}\n\n\t\t\tcloseLink.style.textAlign = 'right';\n\t\t\tcloseLink.style.cursor = domLib_stylePointer;\n\t\t\t// merge the styles of the two cells\n\t\t\tcloseLink.style.borderLeftWidth = caption.style.borderRightWidth = '0px';\n\t\t\tcloseLink.style.paddingLeft = caption.style.paddingRight = '0px';\n\t\t\tcloseLink.style.marginLeft = caption.style.marginRight = '0px';\n\t\t\tif (in_options.get('closeLink').nodeType)\n\t\t\t{\n\t\t\t\tcloseLink.appendChild(in_options.get('closeLink').cloneNode(1));\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tcloseLink.innerHTML = in_options.get('closeLink');\n\t\t\t}\n\n\t\t\tcloseLink.onclick = function()\n\t\t\t{\n\t\t\t\tdomTT_deactivate(tipOwner.id);\n\t\t\t};\n\t\t\tcloseLink.onmousedown = function(in_event)\n\t\t\t{\n\t\t\t\tif (typeof(in_event) == 'undefined') { in_event = window.event; }\n\t\t\t\tin_event.cancelBubble = true;\n\t\t\t};\n\t\t\t// MacIE has to have a newline at the end and must be made with createTextNode()\n\t\t\tif (domLib_isMacIE)\n\t\t\t{\n\t\t\t\tcloseLinkCell.appendChild(parentDoc.createTextNode(\"\\n\"));\n\t\t\t}\n\t\t}\n\n\t\t// MacIE has to have a newline at the end and must be made with createTextNode()\n\t\tif (domLib_isMacIE)\n\t\t{\n\t\t\tcaptionCell.appendChild(parentDoc.createTextNode(\"\\n\"));\n\t\t}\n\n\t\tvar contentRow = tipLayoutTbody.appendChild(parentDoc.createElement('tr'));\n\t\tvar contentCell = contentRow.appendChild(parentDoc.createElement('td'));\n\t\tcontentCell.style.padding = '0px';\n\t\tif (numCaptionCells)\n\t\t{\n\t\t\tif (domLib_isIE || domLib_isOpera)\n\t\t\t{\n\t\t\t\tcontentCell.colSpan = numCaptionCells;\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tcontentCell.setAttribute('colspan', numCaptionCells);\n\t\t\t}\n\t\t}\n\n\t\tcontentBlock = contentCell.appendChild(parentDoc.createElement('div'));\n\t\tif (domLib_isIE50)\n\t\t{\n\t\t\tcontentBlock.style.height = '100%';\n\t\t}\n\t}\n\telse\n\t{\n\t\tcontentBlock = tipObj.appendChild(parentDoc.createElement('div'));\n\t}\n\n\tcontentBlock.className = 'contents';\n\n\tvar content = in_options.get('content');\n\t// allow content has a function to return the actual content\n\tif (typeof(content) == 'function') {\n\t\tcontent = content(in_options.get('id'));\n\t}\n\n\tif (content != null && content.nodeType)\n\t{\n\t\tcontentBlock.appendChild(domTT_cloneNodes ? content.cloneNode(1) : content);\n\t}\n\telse\n\t{\n\t\tcontentBlock.innerHTML = content;\n\t}\n\n\t// adjust the width if specified\n\tif (in_options.has('width'))\n\t{\n\t\ttipObj.style.width = parseInt(in_options.get('width')) + 'px';\n\t}\n\n\t// check if we are overridding the maxWidth\n\t// if the browser supports maxWidth, the global setting will be ignored (assume stylesheet)\n\tvar maxWidth = domTT_maxWidth;\n\tif (in_options.has('maxWidth'))\n\t{\n\t\tif ((maxWidth = in_options.get('maxWidth')) === false)\n\t\t{\n\t\t\ttipObj.style.maxWidth = domLib_styleNoMaxWidth;\n\t\t}\n\t\telse\n\t\t{\n\t\t\tmaxWidth = parseInt(in_options.get('maxWidth'));\n\t\t\ttipObj.style.maxWidth = maxWidth + 'px';\n\t\t}\n\t}\n\n\t// HACK: fix lack of maxWidth in CSS for KHTML and IE\n\tif (maxWidth !== false && (domLib_isIE || domLib_isKHTML) && tipObj.offsetWidth > maxWidth)\n\t{\n\t\ttipObj.style.width = maxWidth + 'px';\n\t}\n\n\tin_options.set('offsetWidth', tipObj.offsetWidth);\n\tin_options.set('offsetHeight', tipObj.offsetHeight);\n\n\t// konqueror miscalcuates the width of the containing div when using the layout table based on the\n\t// border size of the containing div\n\tif (domLib_isKonq && tableLayout && !tipObj.style.width)\n\t{\n\t\tvar left = document.defaultView.getComputedStyle(tipObj, '').getPropertyValue('border-left-width');\n\t\tvar right = document.defaultView.getComputedStyle(tipObj, '').getPropertyValue('border-right-width');\n\t\t\n\t\tleft = left.substring(left.indexOf(':') + 2, left.indexOf(';'));\n\t\tright = right.substring(right.indexOf(':') + 2, right.indexOf(';'));\n\t\tvar correction = 2 * ((left ? parseInt(left) : 0) + (right ? parseInt(right) : 0));\n\t\ttipObj.style.width = (tipObj.offsetWidth - correction) + 'px';\n\t}\n\n\t// if a width is not set on an absolutely positioned object, both IE and Opera\n\t// will attempt to wrap when it spills outside of body...we cannot have that\n\tif (domLib_isIE || domLib_isOpera)\n\t{\n\t\tif (!tipObj.style.width)\n\t\t{\n\t\t\t// HACK: the correction here is for a border\n\t\t\ttipObj.style.width = (tipObj.offsetWidth - 2) + 'px';\n\t\t}\n\n\t\t// HACK: the correction here is for a border\n\t\ttipObj.style.height = (tipObj.offsetHeight - 2) + 'px';\n\t}\n\n\t// store placement offsets from event position\n\tvar offsetX, offsetY;\n\n\t// tooltip floats\n\tif (in_options.get('position') == 'absolute' && !(in_options.has('x') && in_options.has('y')))\n\t{\n\t\t// determine the offset relative to the pointer\n\t\tswitch (in_options.get('direction'))\n\t\t{\n\t\t\tcase 'northeast':\n\t\t\t\toffsetX = in_options.get('offsetX');\n\t\t\t\toffsetY = 0 - tipObj.offsetHeight - in_options.get('offsetY');\n\t\t\tbreak;\n\t\t\tcase 'northwest':\n\t\t\t\toffsetX = 0 - tipObj.offsetWidth - in_options.get('offsetX');\n\t\t\t\toffsetY = 0 - tipObj.offsetHeight - in_options.get('offsetY');\n\t\t\tbreak;\n\t\t\tcase 'north':\n\t\t\t\toffsetX = 0 - parseInt(tipObj.offsetWidth/2);\n\t\t\t\toffsetY = 0 - tipObj.offsetHeight - in_options.get('offsetY');\n\t\t\tbreak;\n\t\t\tcase 'southwest':\n\t\t\t\toffsetX = 0 - tipObj.offsetWidth - in_options.get('offsetX');\n\t\t\t\toffsetY = in_options.get('offsetY');\n\t\t\tbreak;\n\t\t\tcase 'southeast':\n\t\t\t\toffsetX = in_options.get('offsetX');\n\t\t\t\toffsetY = in_options.get('offsetY');\n\t\t\tbreak;\n\t\t\tcase 'south':\n\t\t\t\toffsetX = 0 - parseInt(tipObj.offsetWidth/2);\n\t\t\t\toffsetY = in_options.get('offsetY');\n\t\t\tbreak;\n\t\t}\n\n\t\t// if we are in an iframe, get the offsets of the iframe in the parent document\n\t\tif (in_options.get('inframe'))\n\t\t{\n\t\t\tvar iframeObj = domLib_getIFrameReference(window);\n\t\t\tif (iframeObj)\n\t\t\t{\n\t\t\t\tvar frameOffsets = domLib_getOffsets(iframeObj);\n\t\t\t\toffsetX += frameOffsets.get('left');\n\t\t\t\toffsetY += frameOffsets.get('top');\n\t\t\t}\n\t\t}\n\t}\n\t// tooltip is fixed\n\telse\n\t{\n\t\toffsetX = 0;\n\t\toffsetY = 0;\n\t\tin_options.set('trail', false);\n\t}\n\n\t// set the direction-specific offsetX/Y\n\tin_options.set('offsetX', offsetX);\n\tin_options.set('offsetY', offsetY);\n\tif (in_options.get('clearMouse') && in_options.get('direction').indexOf('south') != -1)\n\t{\n\t\tin_options.set('mouseOffset', domTT_mouseHeight);\n\t}\n\telse\n\t{\n\t\tin_options.set('mouseOffset', 0);\n\t}\n\n\tif (domLib_canFade && typeof(Fadomatic) == 'function')\n\t{\n\t\tif (in_options.get('fade') != 'neither')\n\t\t{\n\t\t\tvar fadeHandler = new Fadomatic(tipObj, 10, 0, 0, in_options.get('fadeMax'));\n\t\t\tin_options.set('fadeHandler', fadeHandler);\n\t\t}\n\t}\n\telse\n\t{\n\t\tin_options.set('fade', 'neither');\n\t}\n\n\t// setup mouse events\n\tif (in_options.get('trail') && typeof(tipOwner.onmousemove) != 'function')\n\t{\n\t\ttipOwner.onmousemove = function(in_event) { domTT_mousemove(this, in_event); };\n\t}\n\n\tif (typeof(tipOwner.onmouseout) != 'function')\n\t{\n\t\ttipOwner.onmouseout = function(in_event) { domTT_mouseout(this, in_event); };\n\t}\n\n\tif (in_options.get('type') == 'sticky')\n\t{\n\t\tif (in_options.get('position') == 'absolute' && domTT_dragEnabled && in_options.get('draggable'))\n\t\t{\n\t\t\tif (domLib_isIE)\n\t\t\t{\n\t\t\t\tcaptionRow.onselectstart = function() { return false; };\n\t\t\t}\n\n\t\t\t// setup drag\n\t\t\tcaptionRow.onmousedown = function(in_event) { domTT_dragStart(tipObj, in_event);  };\n\t\t\tcaptionRow.onmousemove = function(in_event) { domTT_dragUpdate(in_event); };\n\t\t\tcaptionRow.onmouseup = function() { domTT_dragStop(); };\n\t\t}\n\t}\n\telse if (in_options.get('type') == 'velcro')\n\t{\n\t\t/* can use once we have deactivateDelay\n\t\ttipObj.onmouseover = function(in_event)\n\t\t{\n\t\t\tif (typeof(in_event) == 'undefined') { in_event = window.event; }\n\t\t\tvar tooltip = domTT_tooltips.get(tipObj.id);\n\t\t\tif (in_options.get('lifetime')) {\n\t\t\t\tdomLib_clearTimeout(in_options.get('lifetimeTimeout');\n\t\t\t}\n\t\t};\n\t\t*/\n\t\ttipObj.onmouseout = function(in_event)\n\t\t{\n\t\t\tif (typeof(in_event) == 'undefined') { in_event = window.event; }\n\t\t\tif (!domLib_isDescendantOf(in_event[domLib_eventTo], tipObj, domTT_bannedTags)) {\n\t\t\t\tdomTT_deactivate(tipOwner.id);\n\t\t\t}\n\t\t};\n\t\t// NOTE: this might interfere with links in the tip\n\t\ttipObj.onclick = function(in_event)\n\t\t{\n\t\t\tdomTT_deactivate(tipOwner.id);\n\t\t};\n\t}\n\n\tif (in_options.get('position') == 'relative')\n\t{\n\t\ttipObj.style.position = 'relative';\n\t}\n\n\tin_options.set('node', tipObj);\n\tin_options.set('status', 'inactive');\n}\n\n// }}}\n// {{{ domTT_show()\n\n// in_id is either tip id or the owner id\nfunction domTT_show(in_id, in_event)\n{\n\n\t// should always find one since this call would be cancelled if tip was killed\n\tvar tooltip = domTT_tooltips.get(in_id);\n\tvar status = tooltip.get('status');\n\tvar tipObj = tooltip.get('node');\n\n\tif (tooltip.get('position') == 'absolute')\n\t{\n\t\tvar mouseX, mouseY;\n\n\t\tif (tooltip.has('x') && tooltip.has('y'))\n\t\t{\n\t\t\tmouseX = tooltip.get('x');\n\t\t\tmouseY = tooltip.get('y');\n\t\t}\n\t\telse if (!domTT_useGlobalMousePosition || domTT_mousePosition == null || status == 'active' || tooltip.get('delay') == 0)\n\t\t{\n\t\t\tvar eventPosition = domLib_getEventPosition(in_event);\n\t\t\tvar eventX = eventPosition.get('x');\n\t\t\tvar eventY = eventPosition.get('y');\n\t\t\tif (tooltip.get('inframe'))\n\t\t\t{\n\t\t\t\teventX -= eventPosition.get('scrollX');\n\t\t\t\teventY -= eventPosition.get('scrollY');\n\t\t\t}\n\n\t\t\t// only move tip along requested trail axis when updating position\n\t\t\tif (status == 'active' && tooltip.get('trail') !== true)\n\t\t\t{\n\t\t\t\tvar trail = tooltip.get('trail');\n\t\t\t\tif (trail == 'x')\n\t\t\t\t{\n\t\t\t\t\tmouseX = eventX;\n\t\t\t\t\tmouseY = tooltip.get('mouseY');\n\t\t\t\t}\n\t\t\t\telse if (trail == 'y')\n\t\t\t\t{\n\t\t\t\t\tmouseX = tooltip.get('mouseX');\n\t\t\t\t\tmouseY = eventY;\n\t\t\t\t}\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tmouseX = eventX;\n\t\t\t\tmouseY = eventY;\n\t\t\t}\n\t\t}\n\t\telse\n\t\t{\n\t\t\tmouseX = domTT_mousePosition.get('x');\n\t\t\tmouseY = domTT_mousePosition.get('y');\n\t\t\tif (tooltip.get('inframe'))\n\t\t\t{\n\t\t\t\tmouseX -= domTT_mousePosition.get('scrollX');\n\t\t\t\tmouseY -= domTT_mousePosition.get('scrollY');\n\t\t\t}\n\t\t}\n\n\t\t// we are using a grid for updates\n\t\tif (tooltip.get('grid'))\n\t\t{\n\t\t\t// if this is not a mousemove event or it is a mousemove event on an active tip and\n\t\t\t// the movement is bigger than the grid\n\t\t\tif (in_event.type != 'mousemove' || (status == 'active' && (Math.abs(tooltip.get('lastX') - mouseX) > tooltip.get('grid') || Math.abs(tooltip.get('lastY') - mouseY) > tooltip.get('grid'))))\n\t\t\t{\n\t\t\t\ttooltip.set('lastX', mouseX);\n\t\t\t\ttooltip.set('lastY', mouseY);\n\t\t\t}\n\t\t\t// did not satisfy the grid movement requirement\n\t\t\telse\n\t\t\t{\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\t// mouseX and mouseY store the last acknowleged mouse position,\n\t\t// good for trailing on one axis\n\t\ttooltip.set('mouseX', mouseX);\n\t\ttooltip.set('mouseY', mouseY);\n\n\t\tvar coordinates;\n\t\tif (domTT_screenEdgeDetection)\n\t\t{\n\t\t\tcoordinates = domTT_correctEdgeBleed(\n\t\t\t\ttooltip.get('offsetWidth'),\n\t\t\t\ttooltip.get('offsetHeight'),\n\t\t\t\tmouseX,\n\t\t\t\tmouseY,\n\t\t\t\ttooltip.get('offsetX'),\n\t\t\t\ttooltip.get('offsetY'),\n\t\t\t\ttooltip.get('mouseOffset'),\n\t\t\t\ttooltip.get('inframe') ? window.parent : window\n\t\t\t);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tcoordinates = {\n\t\t\t\t'x' : mouseX + tooltip.get('offsetX'),\n\t\t\t\t'y' : mouseY + tooltip.get('offsetY') + tooltip.get('mouseOffset')\n\t\t\t};\n\t\t}\n\n\t\t// update the position\n\t\ttipObj.style.left = coordinates.x + 'px';\n\t\ttipObj.style.top = coordinates.y + 'px';\n\n\t\t// increase the tip zIndex so it goes over previously shown tips\n\t\ttipObj.style.zIndex = domLib_zIndex++;\n\t}\n\n\t// if tip is not active, active it now and check for a fade in\n\tif (status == 'pending')\n\t{\n\t\t// unhide the tooltip\n\t\ttooltip.set('status', 'active');\n\t\ttipObj.style.display = '';\n\t\ttipObj.style.visibility = 'visible';\n\n\t\tvar fade = tooltip.get('fade');\n\t\tif (fade != 'neither')\n\t\t{\n\t\t\tvar fadeHandler = tooltip.get('fadeHandler');\n\t\t\tif (fade == 'out' || fade == 'both')\n\t\t\t{\n\t\t\t\tfadeHandler.haltFade();\n\t\t\t\tif (fade == 'out')\n\t\t\t\t{\n\t\t\t\t\tfadeHandler.halt();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (fade == 'in' || fade == 'both')\n\t\t\t{\n\t\t\t\tfadeHandler.fadeIn();\n\t\t\t}\n\t\t}\n\n\t\tif (tooltip.get('type') == 'greasy' && tooltip.get('lifetime') != 0)\n\t\t{\n\t\t\ttooltip.set('lifetimeTimeout', domLib_setTimeout(domTT_runDeactivate, tooltip.get('lifetime'), [tipObj.id]));\n\t\t}\n\t}\n\n\tif (tooltip.get('position') == 'absolute' && domTT_detectCollisions)\n\t{\n\t\t// utilize original collision element cache\n\t\tdomLib_detectCollisions(tipObj, false, true);\n\t}\n}\n\n// }}}\n// {{{ domTT_close()\n\n// in_handle can either be an child object of the tip, the tip id or the owner id\nfunction domTT_close(in_handle)\n{\n\tvar id;\n\tif (typeof(in_handle) == 'object' && in_handle.nodeType)\n\t{\n\t\tvar obj = in_handle;\n\t\twhile (!obj.id || !domTT_tooltips.get(obj.id))\n\t\t{\n\t\t\tobj = obj.parentNode;\n\t\n\t\t\tif (obj.nodeType != document.ELEMENT_NODE) { return; }\n\t\t}\n\n\t\tid = obj.id;\n\t}\n\telse\n\t{\n\t\tid = in_handle;\n\t}\n\n\tdomTT_deactivate(id);\n}\n\n// }}}\n// {{{ domTT_closeAll()\n\n// run through the tooltips and close them all\nfunction domTT_closeAll()\n{\n\t// NOTE: this will iterate 2x # of tooltips\n\tfor (var id in domTT_tooltips.elementData) {\n\t\tdomTT_close(id);\n\t}\n}\n\n// }}}\n// {{{ domTT_deactivate()\n\n// in_id is either the tip id or the owner id\nfunction domTT_deactivate(in_id)\n{\n\tvar tooltip = domTT_tooltips.get(in_id);\n\tif (tooltip)\n\t{\n\t\tvar status = tooltip.get('status');\n\t\tif (status == 'pending')\n\t\t{\n\t\t\t// cancel the creation of this tip if it is still pending\n\t\t\tdomLib_clearTimeout(tooltip.get('activateTimeout'));\n\t\t\ttooltip.set('status', 'inactive');\n\t\t}\n\t\telse if (status == 'active')\n\t\t{\n\t\t\tif (tooltip.get('lifetime'))\n\t\t\t{\n\t\t\t\tdomLib_clearTimeout(tooltip.get('lifetimeTimeout'));\n\t\t\t}\n\n\t\t\tvar tipObj = tooltip.get('node');\n\t\t\tif (tooltip.get('closeAction') == 'hide')\n\t\t\t{\n\t\t\t\tvar fade = tooltip.get('fade');\n\t\t\t\tif (fade != 'neither')\n\t\t\t\t{\n\t\t\t\t\tvar fadeHandler = tooltip.get('fadeHandler');\n\t\t\t\t\tif (fade == 'out' || fade == 'both')\n\t\t\t\t\t{\n\t\t\t\t\t\tfadeHandler.fadeOut();\n\t\t\t\t\t}\n\t\t\t\t\telse\n\t\t\t\t\t{\n\t\t\t\t\t\tfadeHandler.hide();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\ttipObj.style.display = 'none';\n\t\t\t\t}\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\ttooltip.get('parent').removeChild(tipObj);\n\t\t\t\tdomTT_tooltips.remove(tooltip.get('owner').id);\n\t\t\t\tdomTT_tooltips.remove(tooltip.get('id'));\n\t\t\t}\n\n\t\t\ttooltip.set('status', 'inactive');\n\t\t\tif (domTT_detectCollisions) {\n\t\t\t\t// unhide all of the selects that are owned by this object\n\t\t\t\t// utilize original collision element cache\n\t\t\t\tdomLib_detectCollisions(tipObj, true, true); \n\t\t\t}\n\t\t}\n\t}\n}\n\n// }}}\n// {{{ domTT_mouseout()\n\nfunction domTT_mouseout(in_owner, in_event)\n{\n\tif (!domLib_useLibrary) { return false; }\n\n\tif (typeof(in_event) == 'undefined') { in_event = window.event;\t}\n\n\tvar toChild = domLib_isDescendantOf(in_event[domLib_eventTo], in_owner, domTT_bannedTags);\n\tvar tooltip = domTT_tooltips.get(in_owner.id);\n\tif (tooltip && (tooltip.get('type') == 'greasy' || tooltip.get('status') != 'active'))\n\t{\n\t\t// deactivate tip if exists and we moved away from the owner\n\t\tif (!toChild)\n\t\t{\n\t\t\tdomTT_deactivate(in_owner.id);\n\t\t\ttry { window.status = window.defaultStatus; } catch(e) {}\n\t\t}\n\t}\n\telse if (!toChild)\n\t{\n\t\ttry { window.status = window.defaultStatus; } catch(e) {}\n\t}\n}\n\n// }}}\n// {{{ domTT_mousemove()\n\nfunction domTT_mousemove(in_owner, in_event)\n{\n\tif (!domLib_useLibrary) { return false; }\n\n\tif (typeof(in_event) == 'undefined') { in_event = window.event;\t}\n\n\tvar tooltip = domTT_tooltips.get(in_owner.id);\n\tif (tooltip && tooltip.get('trail') && tooltip.get('status') == 'active')\n\t{\n\t\t// see if we are trailing lazy\n\t\tif (tooltip.get('lazy'))\n\t\t{\n\t\t\tdomLib_setTimeout(domTT_runShow, domTT_trailDelay, [in_owner.id, in_event]);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tdomTT_show(in_owner.id, in_event);\n\t\t}\n\t}\n}\n\n// }}}\n// {{{ domTT_addPredefined()\n\nfunction domTT_addPredefined(in_id)\n{\n\tvar options = new Hash();\n\tfor (var i = 1; i < arguments.length; i += 2)\n\t{\n\t\toptions.set(arguments[i], arguments[i + 1]);\n\t}\n\n\tdomTT_predefined.set(in_id, options);\n}\n\n// }}}\n// {{{ domTT_correctEdgeBleed()\n\nfunction domTT_correctEdgeBleed(in_width, in_height, in_x, in_y, in_offsetX, in_offsetY, in_mouseOffset, in_window)\n{\n\tvar win, doc;\n\tvar bleedRight, bleedBottom;\n\tvar pageHeight, pageWidth, pageYOffset, pageXOffset;\n\n\tvar x = in_x + in_offsetX;\n\tvar y = in_y + in_offsetY + in_mouseOffset;\n\n\twin = (typeof(in_window) == 'undefined' ? window : in_window);\n\n\t// Gecko and IE swaps values of clientHeight, clientWidth properties when\n\t// in standards compliance mode from documentElement to document.body\n\tdoc = ((domLib_standardsMode && (domLib_isIE || domLib_isGecko)) ? win.document.documentElement : win.document.body);\n\n\t// for IE in compliance mode\n\tif (domLib_isIE)\n\t{\n\t\tpageHeight = doc.clientHeight;\n\t\tpageWidth = doc.clientWidth;\n\t\tpageYOffset = doc.scrollTop;\n\t\tpageXOffset = doc.scrollLeft;\n\t}\n\telse\n\t{\n\t\tpageHeight = doc.clientHeight;\n\t\tpageWidth = doc.clientWidth;\n\n\t\tif (domLib_isKHTML)\n\t\t{\n\t\t\tpageHeight = win.innerHeight;\n\t\t}\n\n\t\tpageYOffset = win.pageYOffset;\n\t\tpageXOffset = win.pageXOffset;\n\t}\n\n\t// we are bleeding off the right, move tip over to stay on page\n\t// logic: take x position, add width and subtract from effective page width\n\tif ((bleedRight = (x - pageXOffset) + in_width - (pageWidth - domTT_screenEdgePadding)) > 0)\n\t{\n\t\tx -= bleedRight;\n\t}\n\n\t// we are bleeding to the left, move tip over to stay on page\n\t// if tip doesn't fit, we will go back to bleeding off the right\n\t// logic: take x position and check if less than edge padding\n\tif ((x - pageXOffset) < domTT_screenEdgePadding)\n\t{\n\t\tx = domTT_screenEdgePadding + pageXOffset;\n\t}\n\n\t// if we are bleeding off the bottom, flip to north\n\t// logic: take y position, add height and subtract from effective page height\n\tif ((bleedBottom = (y - pageYOffset) + in_height - (pageHeight - domTT_screenEdgePadding)) > 0)\n\t{\n\t\ty = in_y - in_height - in_offsetY;\n\t}\n\n\t// if we are bleeding off the top, flip to south\n\t// if tip doesn't fit, we will go back to bleeding off the bottom\n\t// logic: take y position and check if less than edge padding\n\tif ((y - pageYOffset) < domTT_screenEdgePadding)\n\t{\n\t\ty = in_y + domTT_mouseHeight + in_offsetY;\n\t}\n\n\treturn {'x' : x, 'y' : y};\n}\n\n// }}}\n// {{{ domTT_isActive()\n\n// in_id is either the tip id or the owner id\nfunction domTT_isActive(in_id)\n{\n\tvar tooltip = domTT_tooltips.get(in_id);\n\tif (!tooltip || tooltip.get('status') != 'active')\n\t{\n\t\treturn false;\n\t}\n\telse\n\t{\n\t\treturn true;\n\t}\n}\n\n// }}}\n// {{{ domTT_runXXX()\n\n// All of these domMenu_runXXX() methods are used by the event handling sections to\n// avoid the circular memory leaks caused by inner functions\nfunction domTT_runDeactivate(args) { domTT_deactivate(args[0]); }\nfunction domTT_runShow(args) { domTT_show(args[0], args[1]); }\n\n// }}}\n// {{{ domTT_replaceTitles()\n\nfunction domTT_replaceTitles(in_decorator)\n{\n\tvar elements = domLib_getElementsByClass('tooltip');\n\tfor (var i = 0; i < elements.length; i++)\n\t{\n\t\tif (elements[i].title)\n\t\t{\n\t\t\tvar content;\n\t\t\tif (typeof(in_decorator) == 'function')\n\t\t\t{\n\t\t\t\tcontent = in_decorator(elements[i]);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tcontent = elements[i].title;\n\t\t\t}\n\n\t\t\tcontent = content.replace(new RegExp('\\'', 'g'), '\\\\\\'');\n\t\t\telements[i].onmouseover = new Function('in_event', \"domTT_activate(this, in_event, 'content', '\" + content + \"')\");\n\t\t\telements[i].title = '';\n\t\t}\n\t}\n}\n\n// }}}\n// {{{ domTT_update()\n\n// Allow authors to update the contents of existing tips using the DOM\n// Unfortunately, the tip must already exist, or else no work is done.\n// TODO: make getting at content or caption cleaner\nfunction domTT_update(handle, content, type)\n{\n\t// type defaults to 'content', can also be 'caption'\n\tif (typeof(type) == 'undefined')\n\t{\n\t\ttype = 'content';\n\t}\n\n\tvar tip = domTT_tooltips.get(handle);\n\tif (!tip)\n\t{\n\t\treturn;\n\t}\n\n\tvar tipObj = tip.get('node');\n\tvar updateNode;\n\tif (type == 'content')\n\t{\n\t\t// <div class=\"contents\">...\n\t\tupdateNode = tipObj.firstChild;\n\t\tif (updateNode.className != 'contents')\n\t\t{\n\t\t\t// <table><tbody><tr>...</tr><tr><td><div class=\"contents\">...\n\t\t\tupdateNode = updateNode.firstChild.firstChild.nextSibling.firstChild.firstChild;\n\t\t}\n\t}\n\telse\n\t{\n\t\tupdateNode = tipObj.firstChild;\n\t\tif (updateNode.className == 'contents')\n\t\t{\n\t\t\t// missing caption\n\t\t\treturn;\n\t\t}\n\n\t\t// <table><tbody><tr><td><div class=\"caption\">...\n\t\tupdateNode = updateNode.firstChild.firstChild.firstChild.firstChild;\n\t}\n\n\t// TODO: allow for a DOM node as content\n\tupdateNode.innerHTML = content;\n}\n\n// }}}\n"
  },
  {
    "path": "newscoop/js/domTT/domTT_drag.js",
    "content": "/** $Id: domTT_drag.js 2315 2006-06-12 05:45:36Z dallen $ */\n// {{{ license\n\n/*\n * Copyright 2002-2005 Dan Allen, Mojavelinux.com (dan.allen@mojavelinux.com)\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n// }}}\n// {{{ globals (DO NOT EDIT)\n\nvar domTT_dragEnabled = true;\nvar domTT_currentDragTarget;\nvar domTT_dragMouseDown;\nvar domTT_dragOffsetLeft;\nvar domTT_dragOffsetTop;\n\n// }}}\n// {{{ domTT_dragStart()\n\nfunction domTT_dragStart(in_this, in_event)\n{\n\tif (typeof(in_event) == 'undefined') { in_event = window.event; }\n\n\tvar eventButton = in_event[domLib_eventButton];\n\tif (eventButton != 1 && !domLib_isKHTML)\n\t{\n\t\treturn;\n\t}\n\n\tdomTT_currentDragTarget = in_this;\n\tin_this.style.cursor = 'move';\n\n\t// upgrade our z-index\n\tin_this.style.zIndex = ++domLib_zIndex;\n\n\tvar eventPosition = domLib_getEventPosition(in_event);\n\n\tvar targetPosition = domLib_getOffsets(in_this);\n\tdomTT_dragOffsetLeft = eventPosition.get('x') - targetPosition.get('left');\n\tdomTT_dragOffsetTop = eventPosition.get('y') - targetPosition.get('top');\n\tdomTT_dragMouseDown = true;\n}\n\n// }}}\n// {{{ domTT_dragUpdate()\n\nfunction domTT_dragUpdate(in_event)\n{\n\tif (domTT_dragMouseDown)\n\t{\n\t\tif (domLib_isGecko)\n\t\t{\n\t\t\twindow.getSelection().removeAllRanges()\n\t\t}\n\n\t\tif (domTT_useGlobalMousePosition && domTT_mousePosition != null)\n\t\t{\n\t\t\tvar eventPosition = domTT_mousePosition;\n\t\t}\n\t\telse\n\t\t{\n\t\t\tif (typeof(in_event) == 'undefined') { in_event = window.event; }\n\t\t\tvar eventPosition = domLib_getEventPosition(in_event);\n\t\t}\n\n\t\tdomTT_currentDragTarget.style.left = (eventPosition.get('x') - domTT_dragOffsetLeft) + 'px';\n\t\tdomTT_currentDragTarget.style.top = (eventPosition.get('y') - domTT_dragOffsetTop) + 'px';\n\n\t\t// update the collision detection\n\t\tdomLib_detectCollisions(domTT_currentDragTarget);\n\t}\n}\n\n// }}}\n// {{{ domTT_dragStop()\n\nfunction domTT_dragStop()\n{\n\tif (domTT_dragMouseDown) {\n\t\tdomTT_dragMouseDown = false; \n\t\tdomTT_currentDragTarget.style.cursor = 'default';\n\t\tdomTT_currentDragTarget = null;\n\t\tif (domLib_isGecko)\n\t\t{\n\t\t\twindow.getSelection().removeAllRanges()\n\t\t}\n\t}\n}\n\n// }}}\n"
  },
  {
    "path": "newscoop/js/domTT/fadomatic.js",
    "content": "/** $Id$ */\n// Title: Fadomatic\n// Version: 1.2\n// Homepage: http://chimpen.com/fadomatic\n// Author: Philip McCarthy <fadomatic@chimpen.com>\n\n// Fade interval in milliseconds\n// Make this larger if you experience performance issues\nFadomatic.INTERVAL_MILLIS = 50;\n\n// Creates a fader\n// element - The element to fade\n// speed - The speed to fade at, from 0.0 to 100.0\n// initialOpacity (optional, default 100) - element's starting opacity, 0 to 100\n// minOpacity (optional, default 0) - element's minimum opacity, 0 to 100\n// maxOpacity (optional, default 0) - element's minimum opacity, 0 to 100\nfunction Fadomatic (element, rate, initialOpacity, minOpacity, maxOpacity) {\n  this._element = element;\n  this._intervalId = null;\n  this._rate = rate;\n  this._isFadeOut = true;\n\n  // Set initial opacity and bounds\n  // NB use 99 instead of 100 to avoid flicker at start of fade\n  this._minOpacity = 0;\n  this._maxOpacity = 99;\n  this._opacity = 99;\n\n  if (typeof minOpacity != 'undefined') {\n    if (minOpacity < 0) {\n      this._minOpacity = 0;\n    } else if (minOpacity > 99) {\n      this._minOpacity = 99;\n    } else {\n      this._minOpacity = minOpacity;\n    }\n  }\n\n  if (typeof maxOpacity != 'undefined') {\n    if (maxOpacity < 0) {\n      this._maxOpacity = 0;\n    } else if (maxOpacity > 99) {\n      this._maxOpacity = 99;\n    } else {\n      this._maxOpacity = maxOpacity;\n    }\n\n    if (this._maxOpacity < this._minOpacity) {\n      this._maxOpacity = this._minOpacity;\n    }\n  }\n  \n  if (typeof initialOpacity != 'undefined') {\n    if (initialOpacity > this._maxOpacity) {\n      this._opacity = this._maxOpacity;\n    } else if (initialOpacity < this._minOpacity) {\n      this._opacity = this._minOpacity;\n    } else {\n      this._opacity = initialOpacity;\n    }\n  }\n\n  // See if we're using W3C opacity, MSIE filter, or just\n  // toggling visiblity\n  if(typeof element.style.opacity != 'undefined') {\n\n    this._updateOpacity = this._updateOpacityW3c;\n\n  } else if(typeof element.style.filter != 'undefined') {\n\n    // If there's not an alpha filter on the element already,\n    // add one\n    if (element.style.filter.indexOf(\"alpha\") == -1) {\n\n      // Attempt to preserve existing filters\n      var existingFilters=\"\";\n      if (element.style.filter) {\n        existingFilters = element.style.filter+\" \";\n      }\n      element.style.filter = existingFilters+\"alpha(opacity=\"+this._opacity+\")\";\n    }\n\n    this._updateOpacity = this._updateOpacityMSIE;\n    \n  } else {\n\n    this._updateOpacity = this._updateVisibility;\n  }\n\n  this._updateOpacity();\n}\n\n// Initiates a fade out\nFadomatic.prototype.fadeOut = function () {\n  this._isFadeOut = true;\n  this._beginFade();\n}\n\n// Initiates a fade in\nFadomatic.prototype.fadeIn = function () {\n  this._isFadeOut = false;\n  this._beginFade();\n}\n\n// Makes the element completely opaque, stops any fade in progress\nFadomatic.prototype.show = function () {\n  this.haltFade();\n  this._opacity = this._maxOpacity;\n  this._updateOpacity();\n}\n\n// Makes the element completely transparent, stops any fade in progress\nFadomatic.prototype.hide = function () {\n  this.haltFade();\n  this._opacity = 0;\n  this._updateOpacity();\n}\n\n// Halts any fade in progress\nFadomatic.prototype.haltFade = function () {\n\n  clearInterval(this._intervalId);\n}\n\n// Resumes a fade where it was halted\nFadomatic.prototype.resumeFade = function () {\n\n  this._beginFade();\n}\n\n// Pseudo-private members\n\nFadomatic.prototype._beginFade = function () {\n\n  this.haltFade();\n  var objref = this;\n  this._intervalId = setInterval(function() { objref._tickFade(); },Fadomatic.INTERVAL_MILLIS);\n}\n\nFadomatic.prototype._tickFade = function () {\n\n  if (this._isFadeOut) {\n    this._opacity -= this._rate;\n    if (this._opacity < this._minOpacity) {\n      this._opacity = this._minOpacity;\n      this.haltFade();\n    }\n  } else {\n    this._opacity += this._rate;\n    if (this._opacity > this._maxOpacity ) {\n      this._opacity = this._maxOpacity;\n      this.haltFade();\n    }\n  }\n\n  this._updateOpacity();\n}\n\nFadomatic.prototype._updateVisibility = function () {\n  \n  if (this._opacity > 0) {\n    this._element.style.visibility = 'visible';\n  } else {\n    this._element.style.visibility = 'hidden';\n  }\n}\n\nFadomatic.prototype._updateOpacityW3c = function () {\n  \n  this._element.style.opacity = this._opacity/100;\n  this._updateVisibility();\n}\n\nFadomatic.prototype._updateOpacityMSIE = function () {\n  \n  this._element.filters.alpha.opacity = this._opacity;\n  this._updateVisibility();\n}\n\nFadomatic.prototype._updateOpacity = null;\n"
  },
  {
    "path": "newscoop/js/editarea/change_log.txt",
    "content": "**** v 0.8.2 ****\r\n- Change back to remove the speed optimization for highlight process introduced in 0.8.1 that has too much bugs\r\n- Syntax name are no more stored in language files but in syntax files. Thoses display names will be used only if the compressor tools is used, otherwise syntax code is displayed\r\n- Activate word-wrap feature for opera > 9.6 \r\n- Bug fix: Selection wasn't corretcly remembered between file tabs\r\n- Bug fix: [2886499] Page up and page Down action are no more executed if Alt touch is pressed\r\n- Bug fix: [2887118] UTF-8 encoded URLs return wrong base URL\r\n- Bug fix: [2851936] Unresolved reference to isIE in elements_functions.js \r\n- Bug fix: [2886836] get_IE_selection bug when closed...\r\n- bug fix: JavaScript error when switching to fullscreen (https://sourceforge.net/projects/editarea/forums/forum/556921/topic/3388824)\r\n- Bug fix (but not applicable due to change back) : [2854519, 2854642, 2792217, 2834579 ] Desynchronisation occcured with <, > and & characters\r\n\r\n**** v 0.8.1.1 ****\r\n- Fix bug of frequent syntax desynchronisation when the first character of the textarea was highlighted\r\n- In unload now check that parent.editareaLoader still exists before calling it\r\n- Now consider that gecko and webkit based browser are valid browsers (but I won't test them all)\r\n\r\n**** v 0.8.1 ****\r\n- Improved speed of text highlighting process for huge file. Now we try to only insert or delete the changed caracters inside DOM text node instead of refreshing the whole area. (3 time faster in firefox)\r\n- Greatly improved speed of line-height management in word-wrap context \r\n- Add java syntax (thanks to Dawson Goodell)\r\n- Use faster regexp for matching quoted strings\r\n- Bug fix: if a highlighted quote or comment string contains cariage return, editing text on one of the lines was causin a highlight desynchronisation\r\n- Bug fix: text war blur on Safari 3.2 (thanks to spellcoder)\r\n- Bug fix: there had several mistake with non-monospace font (thanks to spellcoder)\r\n- Bug fix: if show_line_colors was disabled and word wrap enable, highlighted text wasn't refreshed if a new line appears\r\n- Bug fix: in multi file edition, closing the last tab was throwing an error in Firefox and let the content of the textarea displayed\r\n- Browser bug detection: when using non-monospace font Firefox will sometime have strange behavior on text-width (the highlighted text-width in the background may change fron textarea one and simply can change after beeing updated); look likes a browser rendering bug\r\n\r\n**** v 0.8 ****\r\n- Word-wrap is now supported (except for opera...). The new init() option is 'word_wrap' to set to 'true' (default is false). A new button appears in the default toolbar (button_code: 'word_wrap' )\r\n- We can now clearly see the selected text\r\n- Add Internet explorer 8 support (but sadly I must use IE7 emulate mode in iframe due to a bug with tabulation width not beeing resized in IE's textarea) \r\n- Add Safari 4 support\r\n- Add Chrome 2 support\r\n- Better support of Opera 9.6\r\n- Add Simplified Chinese translation \"zh\" (thanks to Abentian)\r\n- Add Bulgarian translation \"bg\" (thanks to Valentin Hristov)\r\n- Rename internal function $() by _$()\r\n- Delete EditArea.add_event() method (duplicate af editAreaLoader.add_event() method)\r\n- Do some code cleanup-up\r\n- Bug fix: highlight optimisation process was not working under IE (don't known how long it remain broken but must be since a long time)\r\n- Bug fix: EditArea.update_size sometimes uses undefined variable (fix this possibility and cleanup events)\r\n- Bug fix: Template.html was not valid XHTML\r\n- Bug fix: The checked attribute of the toogle button was not defined in xhtml syntax\r\n- Bug fix: If the editArea was loaded on a page related to a domain which was itself an iframe comming from another domain a JS error was thrown on load\r\n- Bug fix: When EditArea is used to replace a textarea which has style=\"visibility:hidden;\", switching off EditArea would throw an error under IE \r\n\r\n**** v 0.7.3 ****\r\n- Add Finnish transaltion (thanks to Janne Mäntyharju)\r\n- Add 'cursor_position' init() option for defining where the cursor should be when the editor is show on the first time ('auto' or 'begin'). This was like 'auto' before now this is like 'begin' by default\r\n- better add_style method (faster than old one) thanks to Spellcoder\r\n- Bug fix: fix bug with mootools 1.2\r\n- Bug fix: if page had no stylesheets when editarea load, it would generate an error\r\n\r\n**** v 0.7.2.3 ****\r\n- it's now released under both LGPL, Apache, BSD license (you can use the one you prefer)\r\n- add support for bonEcho browser\r\n\r\n**** v 0.7.2.2 ****\r\n- Fix bug regression introduced in 0.7.2 that make IE7 not working \r\n- add Esperento translation (thanks to Olivier)  \r\n- add Coldfusion syntax (thanks to Max Leynov) \r\n\r\n**** v 0.7.2.1 ****\r\n- fix bug for firefox rendering of highlighted lines that doesn't begin with a tab\r\n- support for browser with grandParadisio agent instead of firefox\r\n\r\n**** v 0.7.2 ****\r\n- add Chrome support\r\n- add show_line_colors init() option for enabling syntax color display and update on the currently edited line (disable the blue bar) (default to false)\r\n- Add Perl syntax definition file (thanks to Christoph Pinkel)\r\n- Bug fix: there allways was an horizontal scrollbar even if the content fit in the area.\r\n\r\n**** v 0.7.1.3 ****\r\n- Fix a bug introduced in Firefox 3.0.1 => the browser is no more able to render properly \"pre\" element with left padding...\r\n- Add Robots.txt (thanks to Pavle Ggardijan) and T-SQL syntax definition files (thanks to Miladin Joksic)\r\n\r\n**** v 0.7.1.2 ****\r\n- Fix a  bug on the full screen mode (regression added on 0.7.1.1)\r\n\r\n**** v 0.7.1.1 ****\r\n- Firefox 3 RC1 compatibility\r\n- Code size reduction: 120Ko => 107Ko for edit_area_full.js\r\n\r\n**** v 0.7.1 ****\r\n- released under both LGPL and Apache license (you can use the one you prefer)\r\n- it's now possible to get a readonly mode: \r\n\t* new EditAreaLoader.init()'s option: \"is_editable\": true/false\r\n\t* Possibility to switch edition mode by using the execCommand function: editAreaLoader.execCommand('editor_id', 'set_editable', !editAreaLoader.execCommand('editor_id', 'is_editable'));\r\n- Added Ruby syntax (thanks to Patrice De Saint Steban)\r\n- Fix a bug where the textarea lose the focus under firefox for Mac\r\n- Minor other bug fixes\r\n\r\n**** v 0.7.0.2 ****\r\n- Fixed a bug with translation files containing non-latin caracters. Translations files must be in UTF-8.\r\n- Added Czech, Macedionian and Russian translations\r\n\r\n\r\n**** v 0.7.0.1 ****\r\n- in multiple file mode, it's now possible to cancel the 'EA_file_close_callback' function. if the callback return false, the edited file won't be closed \r\n- bug fix: if no syntax was defined in the main init() function in multifile mode, the first time the text was not highlighted\r\n\r\n\r\n**** v 0.7 ****\r\n- it's now possible to edit multiple files into one instance of EditArea. This (sponsored by Jupiter) feature comes with: \r\n\t* new EditAreaLoader.init()'s option: \"is_multi_files\": true\r\n\t* new editAreaLoader's functions: editAreaLoader.getCurrentFile(editArea_id), editAreaLoader.getFile(editArea_id, file_id), editAreaLoader.getAllFiles(editArea_id), editAreaLoader.openFile(editArea_id, file_infos), editAreaLoader.closeFile(editArea_id, file_id), editAreaLoader.setFileEditedMode(editArea_id, file_id, edited_mode)\r\n\t* new callabacks: EA_file_switch_on_callback, EA_file_switch_off_callback, EA_file_close_callback\r\n- look likes Safari 3 is working with EditArea\r\n- add spanish translation (thanks Garito)\r\n- add slovak translation (thanks Gabriel Schwardy)\r\n- add SQL syntax definition file (thanks to Philippe Lewicki)\r\n- the syntax selection plugin has been integrated to editarea core and load only needed files (the plugins was loading all the possible syntax files...). Toolbar button name: \"syntax_selection\", comma separated available syntax list: \"syntax_selection_allow\"\r\n- add a 'compression' option in edit_area_compressor.php that allow to set where the code should be compressed or just packed (simple packed mode usefull for debugging)\r\n- the yellow area that indicate the current edited line is now blue\r\n- bug fix: parenthesis matching was not working correctly if there where an \"<\" between parenthesis\r\n\r\n**** v 0.6.7 ****\r\n- add a new plugin that allow the user to change the syntax definition in use. It adds a select in the toolbar. - plugin name to add to the plugin list: \"syntax_selection\". - plugin name to add to the toolbar list: \"syntax_selection\". - possible parameter to add to EditAreaLoader.init(): \r\n\"syntax_selection_allow\": (String) define a list separated by \",\" of possible language syntax to use (eg: \"php,js,python,html\")\r\n- add Croatian translation (HR) (thanks to Ivan Vucica and Davor Cihlar)\r\n- add BASIC, Brainf*ck, C, C++ and Pascal syntax definition files (thanks to Ivan Vucica and Davor Cihlar)\r\n- add Iceweasel as a known working navigator (its a clone of Firefox)\r\n- improved the php syntax by highlighting the variables ($...)\r\n- reactivate gzip compression for IE7 (was desactivate for IE as it sometimes failed). (Let me know if you see that the load fails under IE7)\r\n- pressing \"enter\" while being in the search box now perform a search.\r\n- add Camino as a supported browser\r\n- bug fix: when clicking between the bottom toolbar and the textarea (when there is only few lines of text), the textarea didn't get the focus\r\n- bug fix: under IE the delete_instance() method was throwing an error\r\n- bug fix: if the textarea to convert in an EditArea was in a frame (or iframe) getting back from fullscreen to normal display was not restoring the correct settings to the frame containing the textarea.\r\n- bug fix (at least I hope): in IE if the textarea to convert in an EditArea was in a frame, resizing the frame was not correctly resizing the editor if it was in fullscreen.\r\n- bug fix: in Opera the selectionned line was not rendered correctly if containing \\t caracters (bug introduced in one of the latest version...)\r\n- bug fix: \"altgr+f\" was openning the searchbox and avoid to write \"[\" and \"]\" in croatian keyboards.\r\n- bug fix: in Firefox \"ctrl+tab\" was inserting a tabulation while switching active tab (window)\r\n\r\nNote: v 0.6.5 and v 0.6.6 have been private release (change log is regrouped in v 0.6.7)\r\n\r\n**** v 0.6.4 ****\r\n- add replace_tab_by_spaces init() option which allow to replace all tabulation caracters typped in the text by a given number of spaces\r\n- add min_width and min_height init() option for the minimum size in pixel for the editor\r\n- add dutch translation files (NL) (thanks to Bart Bosma)\r\n- pressing Shift+Tab when no text is selected now delete the tabulation before the cursor (if a tabulation is present directly behing the cursor)\r\n- improve Python syntax (thanks to Andre Roberge)\r\n- bug fix: the fullpage plugin was not working correctly when the Editor was placed inside several divs that have positioning of there own\r\n- bug fix: one regexp used in edit_area_compressor.php was not compatible with latest PCRE version\r\n\r\n- fix the my_load and my_save functions of the 'exemple_full.html' page\r\n\r\n**** v 0.6.3.1 ****\r\n- regression: restore monospace as default font\r\n- add little improvements to the PHP compressor: allow to win 7 Ko on edit_area_full.js\r\n- add the version number in the about popup\r\n- bug fix: fix a regexp that was not compliant with newer version of PCRE\r\n- bug fix: fix some bug with the fullscreen mode (still not perfect in Opera)\r\n- bug fix: the close button of the help popup was not correctly translated\r\n- bug fix: when deleting an instance of editArea toggle_off was called even if the editArea was not displayed\r\n\r\n\r\n**** v 0.6.3 ****\r\n- allow to use non monospace font using the font_family init option. Firefox get smaller tabulation with non monospace fonts. IE doesn't change the tabulation width and Opera doesn't take this option into account... new default font-familly: 'verdana,monospace'\r\n- add fullscreen option in the toolbar and as an init() option. \r\n- if the based textarea has a width (or height) in '%', EditArea will get the same '%' width (or  height), allowing EditArea to be resized in the same time than the window.\r\n- add many callback possibility: submit_callback, EA_load_callback, EA_unload_callback, EA_init_callback, EA_toggle_on_callback, EA_toggle_off_callback, EA_delete_callback (see documentation for more information)\r\n- bug fix: when toggling from textarea to editarea, IE was almost of the time not keeping the selection\r\n- bug fix: the brackets where still highlighted in red when being deleted\r\n- bug fix: brackets where not placed correctly when the line contains html entitites (&amp; &quot; etc....)\r\n\r\n\r\n**** v 0.6.2 ****\r\nWARNING => POSSIBLE BREAK COMPATIBILITY:\r\n- the load_callback now receive the 'id' of the textarea and no more a reference to the textarea. Developpers should use editAreaLoder methods rather than modfying directly the textarea.\r\n- the save_callback now receive the 'id' of the textarea as first argument, and it's content in the second argument.\r\n\r\n- EditArea is now compatible with javascript libraries like \"prototype\" (1.5) and \"mootools\" (release 83)\r\n- add two function to EditAreaLoader: hide(id) and show(id), that will allow to completly hide/restore both EditArea and normal textarea (usefull when EditArea is included in tabs).\r\n- it's no more possible to move the search window out of the frame.\r\n- gecko_spellcheck option is now set to false by default.\r\n- add a onchange_callback option (cf doc)\r\n- bug fix: in IE when syntax highlight was on, clicking on the textarea outside the range of the text, the click wasn't taking into account.\r\n- bug fix: references to the orginal textarea could be lost while using EditArea.\r\n- bug fix: using insertTags, getSelectionRange when editArea was not focused, IE failed\r\n- bug fix: main script could fail to load additionnal files in certain specific cases\r\n\r\n**** v 0.6.1 ****\r\n- compatiblity with Firefox 2 checked (was already compatible before).\r\n- compatiblity with IE7 checked (was already compatible before).\r\n- added possibility to call the editAreaLoader.init() function at any moment (no more limited to window load). Allow to replace an EditArea instance by a new one with other options.\r\n- added new gecko_spellcheck option, this enables you to disable/enable the FF 2.0 spellchecker.\r\n- added editAreaLoader.delete_instance(id) to allow to delete an EditArea instance\r\n- Fix a bug where \"Ctrl+G\" wasn't openning anymore the go to line prompt box.\r\n\r\n\r\n**** v 0.6.0.1 ****\r\n- add italian translation (thanks to Luciano Vernaschi)\r\n- add polish translation (thanks to Piotr Furman)\r\n- improve deutsh translation (thanks to Felix Riesterer)\r\n- add a little style improvement for buttons in search popup. they can't be splited in two line anymore\r\n- change color for tags in html and xml syntax due to visibility problems\r\n\r\n\r\n**** v 0.6 ****\r\n- add plugins possibilies\r\n- add editAreaLoader.insertTags function to allow easy tags insertion.\r\n- improve undo & redo functionnality\r\n- improve php compression: \"edit_area_full.js\" is 9 Ko smaller\r\n- improve syntax highlight regexp for quotted string. \\\\\" or \\\\' (or \\\\\\\\\", etc...) will now effectively close quotted string\r\n- add scrollbars to the popups when the popup's height is smaller than the editor's height\r\n- add japanese translation file (thanks to ISHITOYA Kentaro)\r\n- add possibility to add line-break in toolbar (\"*\")\r\n- disable gzip compression for IE (see: http://support.microsoft.com/default.aspx?scid=kb;en-us;Q312496)\r\n- bug fix: when submitting form while editarea toggled off, the post value was equals to the old content of editarea and not the visible textarea\r\n- bug fix: under IE the editor was scrolling when pressing enter\r\n- bug fix: when insterting text on first line there was an highlight desynchronization\r\n\r\n\r\n\r\n**** v 0.5.3 ****\r\nWARNING => POSSIBLE BREAK COMPATIBILITY:\r\n- correct a spelling error: \"toogle\" become \"toggle\" in the whole code. This can perturb the initialization with the \"allow_toggle\" init parameters\r\n\r\n- add a case sensitive option in syntax definition files\r\n- improve html syntax definition file\r\n- add xml syntax definition file\r\n- add vb syntax definition file (thanks to Martin Gottlieb)\r\n- add some function that will allow dynamic EditArea content management, taking into account if the editor is displayed or toggled off (editAreaLodaer.getValue(), editAreaLoader.setValue(), editAreaLoader.getSelectedText(), editAreaLoader.setSelectedText(), editAreaLoader.getSelectionRange and editAreaLoader.setSelectionRange()). See \"javascript functions\" documentation for more informations\r\n- add a generic function (editaAreaLoader.execCommand) to allow to access EditArea's functions and datas\r\n- add portuguese translation file (thanks to Leonardo Sapucaia)\r\n- add compatibility to IE7 RC1\r\n\r\n\r\n**** v 0.5.2 ****\r\n- Opera improvement: text indentation is now working, and \"go to line\" is now working as in other browsers\r\n- Bug fix: It was still possible to select text in search popup\r\n- Bug fix: the \"go to line\" popup wasn't displaying anymore\r\n- There was still some hard codded word in the search field => added them to translation files\r\n- Bug fix: when multiple languages were used in the same page, there could have translation exchange between the different editors\r\n\r\n\r\n**** v 0.5.1 ****\r\n- Bug fix: the highlighted bracket was displayed on line 1 when it should be in line 2\r\n- Bug fix: the highlighted bracket were bad displayed in IE\r\n- Bug fix: their was some error in the optimisation process of the highlight mode\r\n- Bug fix: their was a bug when moving the search popup on IE\r\n\r\n**** v 0.5 ****\r\n- Now released under LGPL\r\n- Rewrite nearly from scratch\r\n- Added Danish translation file (thanks to Peter Klein)\r\n- Add python syntax\r\n\r\n\r\nWARNING => BREAK COMPATIBILITY:\r\n- the whole loading process (javascript include and init function call) is changed (but it's similar to the old version)\r\n- the languages translation files are not stored in the same variable\r\n\r\n\r\nIMPROVEMENTS:\r\n- The whole code is more stable\r\n- Allow several instance on the same page\r\n- Faster to load\r\n- The highlight process is more stable and there is nearly no more to use the \"re sync\" button\r\n- Add support of Opera 9 (even if its still not perfect)\r\n- Add the possibility to load a new compressed script of only 20Ko for the whole core script even if PHP is not installed\r\n- The textarea can be toggled to an EditArea on window load or later\r\n- The EditArea is loaded in a iframe => there is no more interaction with user css\r\n- Support the reset action of a form\r\n- Add support for \"page up\" & \"page down\" button\r\n- There is now a waiting screen when toggling on the highlight syntax (but it can't be an animated one, even gif are not animated due to CPU load)\r\n- All supported browsers can now change font-size\r\n\r\nBUG FIXES: \r\n- Sometimes while using the \"toggle editor\" button to turn of the editor, the standard textarea was expanded to the full size of the textarea content.\r\n- When resizing the area the selection was lost\r\n- Allow translation for some forgotten hard-coded word (the \"move\" button for search popup, and \"font size\", and keys word in help panel).\r\n- It was possible to \"drag\" the buttons from the Search/Replace popup into the content of the textarea.\r\n- On first display (when the files are not in cache) or with xhtml doctype there is a display bug (the content of the textarea exceed of 4px)\r\n- when the cursor was at the beginning of the 1st line of the textarea, the caracter position was set to 0 instead of 1\r\n\r\n\r\n\r\n***v 0.4****\r\n- Increases syntax highlight proccess speed by 5 => allow a better live editing mode with syntax highlight.\r\n- Now syntax highlight has a real language syntax. Text is parsing with rules depending of the language definition file. (limitation: there is only one language on the same time > doesn't allow to parse html and php on the same page).\r\n- Syntax highlight can be easily extended with new code languages (there is currently: php, css, js, html).\r\n- Add german language file (thanks to Olaf Brambrink).\r\n- Fix some little bugs.\r\n\r\n\r\n\r\n\r\n***v0.33***\r\n- First release.\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/autocompletion.js",
    "content": "/**\r\n * Autocompletion class\r\n * \r\n * An auto completion box appear while you're writing. It's possible to force it to appear with Ctrl+Space short cut\r\n * \r\n * Loaded as a plugin inside editArea (everything made here could have been made in the plugin directory)\r\n * But is definitly linked to syntax selection (no need to do 2 different files for color and auto complete for each syntax language)\r\n * and add a too important feature that many people would miss if included as a plugin\r\n * \r\n * - init param: autocompletion_start\r\n * - Button name: \"autocompletion\"\r\n */  \r\n\r\nvar EditArea_autocompletion= {\r\n\t\r\n\t/**\r\n\t * Get called once this file is loaded (editArea still not initialized)\r\n\t *\r\n\t * @return nothing\t \r\n\t */\t \t \t\r\n\tinit: function(){\t\r\n\t\t//\talert(\"test init: \"+ this._someInternalFunction(2, 3));\r\n\t\t\r\n\t\tif(editArea.settings[\"autocompletion\"])\r\n\t\t\tthis.enabled= true;\r\n\t\telse\r\n\t\t\tthis.enabled= false;\r\n\t\tthis.current_word\t\t= false;\r\n\t\tthis.shown\t\t\t\t= false;\r\n\t\tthis.selectIndex\t\t= -1;\r\n\t\tthis.forceDisplay\t\t= false;\r\n\t\tthis.isInMiddleWord\t\t= false;\r\n\t\tthis.autoSelectIfOneResult\t= false;\r\n\t\tthis.delayBeforeDisplay\t= 100;\r\n\t\tthis.checkDelayTimer\t= false;\r\n\t\tthis.curr_syntax_str\t= '';\r\n\t\t\r\n\t\tthis.file_syntax_datas\t= {};\r\n\t}\r\n\t/**\r\n\t * Returns the HTML code for a specific control string or false if this plugin doesn't have that control.\r\n\t * A control can be a button, select list or any other HTML item to present in the EditArea user interface.\r\n\t * Language variables such as {$lang_somekey} will also be replaced with contents from\r\n\t * the language packs.\r\n\t * \r\n\t * @param {string} ctrl_name: the name of the control to add\t  \r\n\t * @return HTML code for a specific control or false.\r\n\t * @type string\tor boolean\r\n\t */\t\r\n\t/*,get_control_html: function(ctrl_name){\r\n\t\tswitch( ctrl_name ){\r\n\t\t\tcase 'autocompletion':\r\n\t\t\t\t// Control id, button img, command\r\n\t\t\t\treturn parent.editAreaLoader.get_button_html('autocompletion_but', 'autocompletion.gif', 'toggle_autocompletion', false, this.baseURL);\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t\treturn false;\r\n\t}*/\r\n\t/**\r\n\t * Get called once EditArea is fully loaded and initialised\r\n\t *\t \r\n\t * @return nothing\r\n\t */\t \t \t\r\n\t,onload: function(){ \r\n\t\tif(this.enabled)\r\n\t\t{\r\n\t\t\tvar icon= document.getElementById(\"autocompletion\");\r\n\t\t\tif(icon)\r\n\t\t\t\teditArea.switchClassSticky(icon, 'editAreaButtonSelected', true);\r\n\t\t}\r\n\t\t\r\n\t\tthis.container\t= document.createElement('div');\r\n\t\tthis.container.id\t= \"auto_completion_area\";\r\n\t\teditArea.container.insertBefore( this.container, editArea.container.firstChild );\r\n\t\t\r\n\t\t// add event detection for hiding suggestion box\r\n\t\tparent.editAreaLoader.add_event( document, \"click\", function(){ editArea.plugins['autocompletion']._hide();} );\r\n\t\tparent.editAreaLoader.add_event( editArea.textarea, \"blur\", function(){ editArea.plugins['autocompletion']._hide();} );\r\n\t\t\r\n\t}\r\n\t\r\n\t/**\r\n\t * Is called each time the user touch a keyboard key.\r\n\t *\t \r\n\t * @param (event) e: the keydown event\r\n\t * @return true - pass to next handler in chain, false - stop chain execution\r\n\t * @type boolean\t \r\n\t */\r\n\t,onkeydown: function(e){\r\n\t\tif(!this.enabled)\r\n\t\t\treturn true;\r\n\t\t\t\r\n\t\tif (EA_keys[e.keyCode])\r\n\t\t\tletter=EA_keys[e.keyCode];\r\n\t\telse\r\n\t\t\tletter=String.fromCharCode(e.keyCode);\t\r\n\t\t// shown\r\n\t\tif( this._isShown() )\r\n\t\t{\t\r\n\t\t\t// if escape, hide the box\r\n\t\t\tif(letter==\"Esc\")\r\n\t\t\t{\r\n\t\t\t\tthis._hide();\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\t// Enter\r\n\t\t\telse if( letter==\"Entrer\")\r\n\t\t\t{\r\n\t\t\t\tvar as\t= this.container.getElementsByTagName('A');\r\n\t\t\t\t// select a suggested entry\r\n\t\t\t\tif( this.selectIndex >= 0 && this.selectIndex < as.length )\r\n\t\t\t\t{\r\n\t\t\t\t\tas[ this.selectIndex ].onmousedown();\r\n\t\t\t\t\treturn false\r\n\t\t\t\t}\r\n\t\t\t\t// simply add an enter in the code\r\n\t\t\t\telse\r\n\t\t\t\t{\r\n\t\t\t\t\tthis._hide();\r\n\t\t\t\t\treturn true;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\telse if( letter==\"Tab\" || letter==\"Down\")\r\n\t\t\t{\r\n\t\t\t\tthis._selectNext();\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\telse if( letter==\"Up\")\r\n\t\t\t{\r\n\t\t\t\tthis._selectBefore();\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t}\r\n\t\t// hidden\r\n\t\telse\r\n\t\t{\r\n\t\t\t\r\n\t\t}\r\n\t\t\r\n\t\t// show current suggestion list and do autoSelect if possible (no matter it's shown or hidden)\r\n\t\tif( letter==\"Space\" && CtrlPressed(e) )\r\n\t\t{\r\n\t\t\t//parent.console.log('SHOW SUGGEST');\r\n\t\t\tthis.forceDisplay \t\t\t= true;\r\n\t\t\tthis.autoSelectIfOneResult\t= true;\r\n\t\t\tthis._checkLetter();\r\n\t\t\treturn false;\r\n\t\t}\r\n\t\t\r\n\t\t// wait a short period for check that the cursor isn't moving\r\n\t\tsetTimeout(\"editArea.plugins['autocompletion']._checkDelayAndCursorBeforeDisplay();\", editArea.check_line_selection_timer +5 );\r\n\t\tthis.checkDelayTimer = false;\r\n\t\treturn true;\r\n\t}\t\r\n\t/**\r\n\t * Executes a specific command, this function handles plugin commands.\r\n\t *\r\n\t * @param {string} cmd: the name of the command being executed\r\n\t * @param {unknown} param: the parameter of the command\t \r\n\t * @return true - pass to next handler in chain, false - stop chain execution\r\n\t * @type boolean\t\r\n\t */\r\n\t,execCommand: function(cmd, param){\r\n\t\tswitch( cmd ){\r\n\t\t\tcase 'toggle_autocompletion':\r\n\t\t\t\tvar icon= document.getElementById(\"autocompletion\");\r\n\t\t\t\tif(!this.enabled)\r\n\t\t\t\t{\r\n\t\t\t\t\tif(icon != null){\r\n\t\t\t\t\t\teditArea.restoreClass(icon);\r\n\t\t\t\t\t\teditArea.switchClassSticky(icon, 'editAreaButtonSelected', true);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tthis.enabled= true;\r\n\t\t\t\t}\r\n\t\t\t\telse\r\n\t\t\t\t{\r\n\t\t\t\t\tthis.enabled= false;\r\n\t\t\t\t\tif(icon != null)\r\n\t\t\t\t\t\teditArea.switchClassSticky(icon, 'editAreaButtonNormal', false);\r\n\t\t\t\t}\r\n\t\t\t\treturn true;\r\n\t\t}\r\n\t\treturn true;\r\n\t}\r\n\t,_checkDelayAndCursorBeforeDisplay: function()\r\n\t{\r\n\t\tthis.checkDelayTimer = setTimeout(\"if(editArea.textarea.selectionStart == \"+ editArea.textarea.selectionStart +\") EditArea_autocompletion._checkLetter();\",  this.delayBeforeDisplay - editArea.check_line_selection_timer - 5 );\r\n\t}\r\n\t// hide the suggested box\r\n\t,_hide: function(){\r\n\t\tthis.container.style.display=\"none\";\r\n\t\tthis.selectIndex\t= -1;\r\n\t\tthis.shown\t= false;\r\n\t\tthis.forceDisplay\t= false;\r\n\t\tthis.autoSelectIfOneResult = false;\r\n\t}\r\n\t// display the suggested box\r\n\t,_show: function(){\r\n\t\tif( !this._isShown() )\r\n\t\t{\r\n\t\t\tthis.container.style.display=\"block\";\r\n\t\t\tthis.selectIndex\t= -1;\r\n\t\t\tthis.shown\t= true;\r\n\t\t}\r\n\t}\r\n\t// is the suggested box displayed?\r\n\t,_isShown: function(){\r\n\t\treturn this.shown;\r\n\t}\r\n\t// setter and getter\r\n\t,_isInMiddleWord: function( new_value ){\r\n\t\tif( typeof( new_value ) == \"undefined\" )\r\n\t\t\treturn this.isInMiddleWord;\r\n\t\telse\r\n\t\t\tthis.isInMiddleWord\t= new_value;\r\n\t}\r\n\t// select the next element in the suggested box\r\n\t,_selectNext: function()\r\n\t{\r\n\t\tvar as\t= this.container.getElementsByTagName('A');\r\n\t\t\r\n\t\t// clean existing elements\r\n\t\tfor( var i=0; i<as.length; i++ )\r\n\t\t{\r\n\t\t\tif( as[i].className )\r\n\t\t\t\tas[i].className\t= as[i].className.replace(/ focus/g, '');\r\n\t\t}\r\n\t\t\r\n\t\tthis.selectIndex++;\t\r\n\t\tthis.selectIndex\t= ( this.selectIndex >= as.length || this.selectIndex < 0 ) ? 0 : this.selectIndex;\r\n\t\tas[ this.selectIndex ].className\t+= \" focus\";\r\n\t}\r\n\t// select the previous element in the suggested box\r\n\t,_selectBefore: function()\r\n\t{\r\n\t\tvar as\t= this.container.getElementsByTagName('A');\r\n\t\t\r\n\t\t// clean existing elements\r\n\t\tfor( var i=0; i<as.length; i++ )\r\n\t\t{\r\n\t\t\tif( as[i].className )\r\n\t\t\t\tas[i].className\t= as[ i ].className.replace(/ focus/g, '');\r\n\t\t}\r\n\t\t\r\n\t\tthis.selectIndex--;\r\n\t\t\r\n\t\tthis.selectIndex\t= ( this.selectIndex >= as.length || this.selectIndex < 0 ) ? as.length-1 : this.selectIndex;\r\n\t\tas[ this.selectIndex ].className\t+= \" focus\";\r\n\t}\r\n\t,_select: function( content )\r\n\t{\r\n\t\tcursor_forced_position\t= content.indexOf( '{@}' );\r\n\t\tcontent\t= content.replace(/{@}/g, '' );\r\n\t\teditArea.getIESelection();\r\n\t\t\r\n\t\t// retrive the number of matching characters\r\n\t\tvar start_index\t= Math.max( 0, editArea.textarea.selectionEnd - content.length );\r\n\t\t\r\n\t\tline_string\t= \teditArea.textarea.value.substring( start_index, editArea.textarea.selectionEnd + 1);\r\n\t\tlimit\t= line_string.length -1;\r\n\t\tnbMatch\t= 0;\r\n\t\tfor( i =0; i<limit ; i++ )\r\n\t\t{\r\n\t\t\tif( line_string.substring( limit - i - 1, limit ) == content.substring( 0, i + 1 ) )\r\n\t\t\t\tnbMatch = i + 1;\r\n\t\t}\r\n\t\t// if characters match, we should include them in the selection that will be replaced\r\n\t\tif( nbMatch > 0 )\r\n\t\t\tparent.editAreaLoader.setSelectionRange(editArea.id, editArea.textarea.selectionStart - nbMatch , editArea.textarea.selectionEnd);\r\n\t\t\r\n\t\tparent.editAreaLoader.setSelectedText(editArea.id, content );\r\n\t\trange= parent.editAreaLoader.getSelectionRange(editArea.id);\r\n\t\t\r\n\t\tif( cursor_forced_position != -1 )\r\n\t\t\tnew_pos\t= range[\"end\"] - ( content.length-cursor_forced_position );\r\n\t\telse\r\n\t\t\tnew_pos\t= range[\"end\"];\t\r\n\t\tparent.editAreaLoader.setSelectionRange(editArea.id, new_pos, new_pos);\r\n\t\tthis._hide();\r\n\t}\r\n\t\r\n\t\r\n\t/**\r\n\t * Parse the AUTO_COMPLETION part of syntax definition files\r\n\t */\r\n\t,_parseSyntaxAutoCompletionDatas: function(){\r\n\t\t//foreach syntax loaded\r\n\t\tfor(var lang in parent.editAreaLoader.load_syntax)\r\n\t\t{\r\n\t\t\tif(!parent.editAreaLoader.syntax[lang]['autocompletion'])\t// init the regexp if not already initialized\r\n\t\t\t{\r\n\t\t\t\tparent.editAreaLoader.syntax[lang]['autocompletion']= {};\r\n\t\t\t\t// the file has auto completion datas\r\n\t\t\t\tif(parent.editAreaLoader.load_syntax[lang]['AUTO_COMPLETION'])\r\n\t\t\t\t{\r\n\t\t\t\t\t// parse them\r\n\t\t\t\t\tfor(var i in parent.editAreaLoader.load_syntax[lang]['AUTO_COMPLETION'])\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tdatas\t= parent.editAreaLoader.load_syntax[lang]['AUTO_COMPLETION'][i];\r\n\t\t\t\t\t\ttmp\t= {};\r\n\t\t\t\t\t\tif(datas[\"CASE_SENSITIVE\"]!=\"undefined\" && datas[\"CASE_SENSITIVE\"]==false)\r\n\t\t\t\t\t\t\ttmp[\"modifiers\"]=\"i\";\r\n\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\ttmp[\"modifiers\"]=\"\";\r\n\t\t\t\t\t\ttmp[\"prefix_separator\"]= datas[\"REGEXP\"][\"prefix_separator\"];\r\n\t\t\t\t\t\ttmp[\"match_prefix_separator\"]= new RegExp( datas[\"REGEXP\"][\"prefix_separator\"] +\"$\", tmp[\"modifiers\"]);\r\n\t\t\t\t\t\ttmp[\"match_word\"]= new RegExp(\"(?:\"+ datas[\"REGEXP\"][\"before_word\"] +\")(\"+ datas[\"REGEXP\"][\"possible_words_letters\"] +\")$\", tmp[\"modifiers\"]);\r\n\t\t\t\t\t\ttmp[\"match_next_letter\"]= new RegExp(\"^(\"+ datas[\"REGEXP\"][\"letter_after_word_must_match\"] +\")$\", tmp[\"modifiers\"]);\r\n\t\t\t\t\t\ttmp[\"keywords\"]= {};\r\n\t\t\t\t\t\t//console.log( datas[\"KEYWORDS\"] );\r\n\t\t\t\t\t\tfor( var prefix in datas[\"KEYWORDS\"] )\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\ttmp[\"keywords\"][prefix]= {\r\n\t\t\t\t\t\t\t\tprefix: prefix,\r\n\t\t\t\t\t\t\t\tprefix_name: prefix,\r\n\t\t\t\t\t\t\t\tprefix_reg: new RegExp(\"(?:\"+ parent.editAreaLoader.get_escaped_regexp( prefix ) +\")(?:\"+ tmp[\"prefix_separator\"] +\")$\", tmp[\"modifiers\"] ),\r\n\t\t\t\t\t\t\t\tdatas: []\r\n\t\t\t\t\t\t\t};\r\n\t\t\t\t\t\t\tfor( var j=0; j<datas[\"KEYWORDS\"][prefix].length; j++ )\r\n\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\ttmp[\"keywords\"][prefix]['datas'][j]= {\r\n\t\t\t\t\t\t\t\t\tis_typing: datas[\"KEYWORDS\"][prefix][j][0],\r\n\t\t\t\t\t\t\t\t\t// if replace with is empty, replace with the is_typing value\r\n\t\t\t\t\t\t\t\t\treplace_with: datas[\"KEYWORDS\"][prefix][j][1] ? datas[\"KEYWORDS\"][prefix][j][1].replace('', datas[\"KEYWORDS\"][prefix][j][0] ) : '',\r\n\t\t\t\t\t\t\t\t\tcomment: datas[\"KEYWORDS\"][prefix][j][2] ? datas[\"KEYWORDS\"][prefix][j][2] : '' \r\n\t\t\t\t\t\t\t\t};\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t// the replace with shouldn't be empty\r\n\t\t\t\t\t\t\t\tif( tmp[\"keywords\"][prefix]['datas'][j]['replace_with'].length == 0 )\r\n\t\t\t\t\t\t\t\t\ttmp[\"keywords\"][prefix]['datas'][j]['replace_with'] = tmp[\"keywords\"][prefix]['datas'][j]['is_typing'];\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t// if the comment is empty, display the replace_with value\r\n\t\t\t\t\t\t\t\tif( tmp[\"keywords\"][prefix]['datas'][j]['comment'].length == 0 )\r\n\t\t\t\t\t\t\t\t\t tmp[\"keywords\"][prefix]['datas'][j]['comment'] = tmp[\"keywords\"][prefix]['datas'][j]['replace_with'].replace(/{@}/g, '' );\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\ttmp[\"max_text_length\"]= datas[\"MAX_TEXT_LENGTH\"];\r\n\t\t\t\t\t\tparent.editAreaLoader.syntax[lang]['autocompletion'][i]\t= tmp;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\t\r\n\t,_checkLetter: function(){\r\n\t\t// check that syntax hasn't changed\r\n\t\tif( this.curr_syntax_str != editArea.settings['syntax'] )\r\n\t\t{\r\n\t\t\tif( !parent.editAreaLoader.syntax[editArea.settings['syntax']]['autocompletion'] )\r\n\t\t\t\tthis._parseSyntaxAutoCompletionDatas();\r\n\t\t\tthis.curr_syntax= parent.editAreaLoader.syntax[editArea.settings['syntax']]['autocompletion'];\r\n\t\t\tthis.curr_syntax_str = editArea.settings['syntax'];\r\n\t\t\t//console.log( this.curr_syntax );\r\n\t\t}\r\n\t\t\r\n\t\tif( editArea.is_editable )\r\n\t\t{\r\n\t\t\ttime=new Date;\r\n\t\t\tt1= time.getTime();\r\n\t\t\teditArea.getIESelection();\r\n\t\t\tthis.selectIndex\t= -1;\r\n\t\t\tstart=editArea.textarea.selectionStart;\r\n\t\t\tvar str\t= editArea.textarea.value;\r\n\t\t\tvar results= [];\r\n\t\t\t\r\n\t\t\t\r\n\t\t\tfor(var i in this.curr_syntax)\r\n\t\t\t{\r\n\t\t\t\tvar last_chars\t= str.substring(Math.max(0, start-this.curr_syntax[i][\"max_text_length\"]), start);\r\n\t\t\t\tvar matchNextletter\t= str.substring(start, start+1).match( this.curr_syntax[i][\"match_next_letter\"]);\r\n\t\t\t\t// if not writting in the middle of a word or if forcing display\r\n\t\t\t\tif( matchNextletter || this.forceDisplay )\r\n\t\t\t\t{\r\n\t\t\t\t\t// check if the last chars match a separator\r\n\t\t\t\t\tvar match_prefix_separator = last_chars.match(this.curr_syntax[i][\"match_prefix_separator\"]);\r\n\t\t\t\r\n\t\t\t\t\t// check if it match a possible word\r\n\t\t\t\t\tvar match_word= last_chars.match(this.curr_syntax[i][\"match_word\"]);\r\n\t\t\t\t\t\r\n\t\t\t\t\t//console.log( match_word );\r\n\t\t\t\t\tif( match_word )\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tvar begin_word= match_word[1];\r\n\t\t\t\t\t\tvar match_curr_word= new RegExp(\"^\"+ parent.editAreaLoader.get_escaped_regexp( begin_word ), this.curr_syntax[i][\"modifiers\"]);\r\n\t\t\t\t\t\t//console.log( match_curr_word );\r\n\t\t\t\t\t\tfor(var prefix in this.curr_syntax[i][\"keywords\"])\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t//\tparent.console.log( this.curr_syntax[i][\"keywords\"][prefix] );\r\n\t\t\t\t\t\t\tfor(var j=0; j<this.curr_syntax[i][\"keywords\"][prefix]['datas'].length; j++)\r\n\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t//\t\tparent.console.log( this.curr_syntax[i][\"keywords\"][prefix]['datas'][j]['is_typing'] );\r\n\t\t\t\t\t\t\t\t// the key word match or force display \r\n\t\t\t\t\t\t\t\tif( this.curr_syntax[i][\"keywords\"][prefix]['datas'][j]['is_typing'].match(match_curr_word) )\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t//\t\tparent.console.log('match');\r\n\t\t\t\t\t\t\t\t\thasMatch = false;\r\n\t\t\t\t\t\t\t\t\tvar before = last_chars.substr( 0, last_chars.length - begin_word.length );\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t// no prefix to match => it's valid\r\n\t\t\t\t\t\t\t\t\tif( !match_prefix_separator && this.curr_syntax[i][\"keywords\"][prefix]['prefix'].length == 0 )\r\n\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\tif( ! before.match( this.curr_syntax[i][\"keywords\"][prefix]['prefix_reg'] ) )\r\n\t\t\t\t\t\t\t\t\t\t\thasMatch = true;\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t// we still need to check the prefix if there is one\r\n\t\t\t\t\t\t\t\t\telse if( this.curr_syntax[i][\"keywords\"][prefix]['prefix'].length > 0 )\r\n\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\tif( before.match( this.curr_syntax[i][\"keywords\"][prefix]['prefix_reg'] ) )\r\n\t\t\t\t\t\t\t\t\t\t\thasMatch = true;\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tif( hasMatch )\r\n\t\t\t\t\t\t\t\t\t\tresults[results.length]= [ this.curr_syntax[i][\"keywords\"][prefix], this.curr_syntax[i][\"keywords\"][prefix]['datas'][j] ];\r\n\t\t\t\t\t\t\t\t}\t\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// it doesn't match any possible word but we want to display something\r\n\t\t\t\t\t// we'll display to list of all available words\r\n\t\t\t\t\telse if( this.forceDisplay || match_prefix_separator )\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tfor(var prefix in this.curr_syntax[i][\"keywords\"])\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tfor(var j=0; j<this.curr_syntax[i][\"keywords\"][prefix]['datas'].length; j++)\r\n\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\thasMatch = false;\r\n\t\t\t\t\t\t\t\t// no prefix to match => it's valid\r\n\t\t\t\t\t\t\t\tif( !match_prefix_separator && this.curr_syntax[i][\"keywords\"][prefix]['prefix'].length == 0 )\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\thasMatch\t= true;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t// we still need to check the prefix if there is one\r\n\t\t\t\t\t\t\t\telse if( match_prefix_separator && this.curr_syntax[i][\"keywords\"][prefix]['prefix'].length > 0 )\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tvar before = last_chars; //.substr( 0, last_chars.length );\r\n\t\t\t\t\t\t\t\t\tif( before.match( this.curr_syntax[i][\"keywords\"][prefix]['prefix_reg'] ) )\r\n\t\t\t\t\t\t\t\t\t\thasMatch = true;\r\n\t\t\t\t\t\t\t\t}\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tif( hasMatch )\r\n\t\t\t\t\t\t\t\t\tresults[results.length]= [ this.curr_syntax[i][\"keywords\"][prefix], this.curr_syntax[i][\"keywords\"][prefix]['datas'][j] ];\t\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t// there is only one result, and we can select it automatically\r\n\t\t\tif( results.length == 1 && this.autoSelectIfOneResult )\r\n\t\t\t{\r\n\t\t\t//\tconsole.log( results );\r\n\t\t\t\tthis._select( results[0][1]['replace_with'] );\r\n\t\t\t}\r\n\t\t\telse if( results.length == 0 )\r\n\t\t\t{\r\n\t\t\t\tthis._hide();\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\t// build the suggestion box content\r\n\t\t\t\tvar lines=[];\r\n\t\t\t\tfor(var i=0; i<results.length; i++)\r\n\t\t\t\t{\r\n\t\t\t\t\tvar line= \"<li><a href=\\\"#\\\" class=\\\"entry\\\" onmousedown=\\\"EditArea_autocompletion._select('\"+ results[i][1]['replace_with'].replace(new RegExp('\"', \"g\"), \"&quot;\") +\"');return false;\\\">\"+ results[i][1]['comment'];\r\n\t\t\t\t\tif(results[i][0]['prefix_name'].length>0)\r\n\t\t\t\t\t\tline+='<span class=\"prefix\">'+ results[i][0]['prefix_name'] +'</span>';\r\n\t\t\t\t\tline+='</a></li>';\r\n\t\t\t\t\tlines[lines.length]=line;\r\n\t\t\t\t}\r\n\t\t\t\t// sort results\r\n\t\t\t\tthis.container.innerHTML\t\t= '<ul>'+ lines.sort().join('') +'</ul>';\r\n\t\t\t\t\r\n\t\t\t\tvar cursor\t= _$(\"cursor_pos\");\r\n\t\t\t\tthis.container.style.top\t\t= ( cursor.cursor_top + editArea.lineHeight ) +\"px\";\r\n\t\t\t\tthis.container.style.left\t\t= ( cursor.cursor_left + 8 ) +\"px\";\r\n\t\t\t\tthis._show();\r\n\t\t\t}\r\n\t\t\t\t\r\n\t\t\tthis.autoSelectIfOneResult = false;\r\n\t\t\ttime=new Date;\r\n\t\t\tt2= time.getTime();\r\n\t\t\r\n\t\t\t//parent.console.log( begin_word +\"\\n\"+ (t2-t1) +\"\\n\"+ html );\r\n\t\t}\r\n\t}\r\n};\r\n\r\n// Load as a plugin\r\neditArea.settings['plugins'][ editArea.settings['plugins'].length ] = 'autocompletion';\r\neditArea.add_plugin('autocompletion', EditArea_autocompletion);"
  },
  {
    "path": "newscoop/js/editarea/edit_area/edit_area.css",
    "content": "body, html{\r\n\tmargin: 0; \r\n\tpadding: 0;\r\n\theight: 100%;\r\n\tborder: none;\r\n\toverflow: hidden;\r\n\tbackground-color: #FFF;\r\n}\r\n\r\nbody, html, table, form, textarea{\r\n\tfont: 12px monospace, sans-serif;\r\n}\r\n\r\n#editor{\r\n\tborder: solid #888 1px;\r\n\toverflow: hidden;\r\n}\r\n\r\n#result{\r\n\tz-index: 4; \r\n\toverflow-x: auto;\r\n\toverflow-y: scroll;\r\n\tborder-top: solid #888 1px;\r\n\tborder-bottom: solid #888 1px;\r\n\tposition: relative;\r\n\tclear: both;\r\n}\r\n\r\n#result.empty{\r\n\toverflow: hidden;\r\n}\r\n\r\n#container{\r\n\toverflow: hidden;\r\n\tborder: solid blue 0;\r\n\tposition: relative; \r\n\tz-index: 10;\r\n\tpadding: 0 5px 0 45px;\r\n\t/*padding-right: 5px;*/ \r\n}\r\n\r\n#textarea{\r\n\tposition: relative; \r\n\ttop: 0; \r\n\tleft: 0;\r\n\tmargin: 0;\r\n\tpadding: 0;\r\n\twidth: 100%;\r\n\theight: 100%; \r\n\toverflow: hidden;  \r\n\tz-index: 7; \r\n\tborder-width: 0;\r\n\tbackground-color: transparent;\r\n\tresize: none;\r\n}\r\n\r\n#textarea, #textarea:hover{\r\n\toutline: none;\t/* safari outline fix */\r\n}\r\n\r\n#content_highlight{\r\n\twhite-space: pre;\r\n\tmargin: 0;\r\n\tpadding: 0;\r\n\tposition : absolute; \r\n\tz-index: 4; \r\n\toverflow: visible;\r\n}\r\n\r\n\r\n#selection_field, #selection_field_text{\r\n\tmargin: 0; \r\n\tbackground-color: #E1F2F9; \r\n/*\theight: 1px; */  \r\n\tposition: absolute;\r\n\tz-index: 5;\r\n\ttop: -100px;\r\n\tpadding: 0;\r\n\twhite-space: pre;\r\n\toverflow: hidden;\r\n}\r\n\r\n#selection_field.show_colors {\r\n\tz-index: 3;\r\n\tbackground-color:#EDF9FC;\r\n\t\r\n}\r\n\r\n#selection_field strong{\r\n\tfont-weight:normal;\r\n}\r\n\r\n#selection_field.show_colors *, #selection_field_text * {\r\n\tvisibility: hidden;\r\n}\r\n\r\n#selection_field_text{\r\n\tbackground-color:transparent;\r\n}\r\n\r\n#selection_field_text strong{\r\n\tfont-weight:normal;\r\n\tbackground-color:#3399FE;\r\n\tcolor: #FFF;\r\n\tvisibility:visible;\r\n}\r\n\r\n#container.word_wrap #content_highlight,\r\n#container.word_wrap #selection_field,\r\n#container.word_wrap #selection_field_text,\r\n#container.word_wrap #test_font_size{\r\n\twhite-space: pre-wrap;       /* css-3 */\r\n\twhite-space: -moz-pre-wrap !important;  /* Mozilla, since 1999 */\r\n\twhite-space: -pre-wrap;      /* Opera 4-6 */\r\n\twhite-space: -o-pre-wrap;    /* Opera 7 */\r\n\tword-wrap: break-word;       /* Internet Explorer 5.5+ */\r\n\twidth: 99%;\r\n}\r\n\r\n#line_number{\r\n\tposition: absolute;\r\n\toverflow: hidden;\r\n\tborder-right: solid black 1px;\r\n\tz-index:8;\r\n\twidth: 38px;\r\n\tpadding: 0 5px 0 0;\r\n\tmargin: 0 0 0 -45px;\r\n\ttext-align: right;\r\n\tcolor: #AAAAAA;\r\n}\r\n\r\n#test_font_size{\r\n\tpadding: 0; \r\n\tmargin: 0; \r\n\tvisibility: hidden;\r\n\tposition: absolute;\r\n\twhite-space: pre;\r\n}\r\n\r\npre{\r\n\tmargin: 0;\r\n\tpadding: 0;\r\n}\r\n\r\n.hidden{\r\n\topacity: 0.2; \r\n\tfilter:alpha(opacity=20);\r\n}\r\n\r\n#result .edit_area_cursor{\r\n\tposition: absolute; \r\n\tz-index:6; \r\n\tbackground-color: #FF6633;\r\n\ttop: -100px;\r\n\tmargin: 0;\r\n}\r\n\r\n#result .edit_area_selection_field .overline{\r\n\tbackground-color: #996600;\r\n}\r\n\r\n\r\n/* area popup */\r\n.editarea_popup{\r\n\tborder: solid 1px #888888;\r\n\tbackground-color: #ECE9D8; \r\n\twidth: 250px; \r\n\tpadding: 4px; \r\n\tposition: absolute;\r\n\tvisibility: hidden; \r\n\tz-index: 15;\r\n\ttop: -500px;\r\n}\r\n\r\n.editarea_popup, .editarea_popup table{\r\n\tfont-family: sans-serif;\r\n\tfont-size: 10pt;\r\n}\r\n\r\n.editarea_popup img{\r\n\tborder: 0;\r\n}\r\n\r\n.editarea_popup .close_popup{\r\n\tfloat: right; \r\n\tline-height: 16px; \r\n\tborder: 0; \r\n\tpadding: 0;\r\n}\r\n\r\n.editarea_popup h1,.editarea_popup h2,.editarea_popup h3,.editarea_popup h4,.editarea_popup h5,.editarea_popup h6{\r\n\tmargin: 0;\r\n\tpadding: 0;\r\n}\r\n\r\n.editarea_popup .copyright{\r\n\ttext-align: right;\r\n}\t\r\n\r\n/* Area_search */\r\ndiv#area_search_replace{\r\n\t/*width: 250px;*/\r\n}\r\n\r\ndiv#area_search_replace img{\r\n\tborder: 0;\r\n}\r\n\r\ndiv#area_search_replace div.button{\r\n\ttext-align: center;\r\n\tline-height: 1.7em;\r\n}\r\n\r\ndiv#area_search_replace .button a{\r\n\tcursor: pointer;\r\n\tborder: solid 1px #888888;\r\n\tbackground-color: #DEDEDE;\r\n\ttext-decoration: none;\r\n\tpadding: 0 2px;\r\n\tcolor: #000000;\t\r\n\twhite-space: nowrap;\r\n}\r\n\r\ndiv#area_search_replace a:hover{\t\r\n\t/*border: solid 1px #888888;*/\r\n\tbackground-color: #EDEDED;\r\n}\r\n\r\ndiv#area_search_replace  #move_area_search_replace{\r\n\tcursor: move; \r\n\tborder: solid 1px #888;\r\n}\r\n\r\ndiv#area_search_replace  #close_area_search_replace{\r\n\ttext-align: right; \r\n\tvertical-align: top; \r\n\twhite-space: nowrap;\r\n}\r\n\r\ndiv#area_search_replace  #area_search_msg{\r\n\theight: 18px; \r\n\toverflow: hidden; \r\n\tborder-top: solid 1px #888; \r\n\tmargin-top: 3px;\r\n}\r\n\r\n/* area help */\r\n#edit_area_help{\r\n\twidth: 350px;\r\n}\r\n\r\n#edit_area_help div.close_popup{\r\n\tfloat: right;\r\n}\r\n\r\n/* area_toolbar */\r\n.area_toolbar{\r\n\t/*font: 11px sans-serif;*/\r\n\twidth: 100%; \r\n\t/*height: 21px; */\r\n\tmargin: 0; \r\n\tpadding: 0;\r\n\tbackground-color: #ECE9D8;\r\n\ttext-align: center;\r\n}\r\n\r\n.area_toolbar, .area_toolbar table{\r\n\tfont: 11px sans-serif;\r\n}\r\n\r\n.area_toolbar img{\r\n\tborder: 0;\r\n\tvertical-align: middle;\r\n}\r\n\r\n.area_toolbar input{\r\n\tmargin: 0;\r\n\tpadding: 0;\r\n}\r\n\r\n.area_toolbar select{\r\n    font-family: 'MS Sans Serif',sans-serif,Verdana,Arial;\r\n    font-size: 7pt;\r\n    font-weight: normal;\r\n    margin: 2px 0 0 0 ;\r\n    padding: 0;\r\n    vertical-align: top;\r\n    background-color: #F0F0EE;\r\n}\r\n\r\ntable.statusbar{\r\n\twidth: 100%;\r\n}\r\n\r\n.area_toolbar td.infos{\r\n\ttext-align: center;\r\n\twidth: 130px;\r\n\tborder-right: solid 1px #888;\r\n\tborder-width: 0 1px 0 0;\r\n\tpadding: 0;\r\n}\r\n\r\n.area_toolbar td.total{\r\n\ttext-align: right;\r\n\twidth: 50px;\r\n\tpadding: 0;\r\n}\r\n\r\n.area_toolbar td.resize{\r\n\ttext-align: right;\r\n}\r\n/*\r\n.area_toolbar span{\r\n\tline-height: 1px;\r\n\tpadding: 0;\r\n\tmargin: 0;\r\n}*/\r\n\r\n.area_toolbar span#resize_area{\r\n\tcursor: nw-resize;\r\n\tvisibility: hidden;\r\n}\r\n\r\n/* toolbar buttons */\r\n.editAreaButtonNormal, .editAreaButtonOver, .editAreaButtonDown, .editAreaSeparator, .editAreaSeparatorLine, .editAreaButtonDisabled, .editAreaButtonSelected {\r\n\tborder: 0; margin: 0; padding: 0; background: transparent;\r\n\tmargin-top: 0;\r\n\tmargin-left: 1px;\r\n\tpadding: 0;\r\n}\r\n\r\n.editAreaButtonNormal {\r\n\tborder: 1px solid #ECE9D8 !important;\r\n\tcursor: pointer;\r\n}\r\n\r\n.editAreaButtonOver {\r\n\tborder: 1px solid #0A246A !important;\r\n\tcursor: pointer;\r\n\tbackground-color: #B6BDD2;\r\n}\r\n\r\n.editAreaButtonDown {\r\n\tcursor: pointer;\r\n\tborder: 1px solid #0A246A !important;\r\n\tbackground-color: #8592B5;\r\n}\r\n\r\n.editAreaButtonSelected {\r\n\tborder: 1px solid #C0C0BB !important;\r\n\tcursor: pointer;\r\n\tbackground-color: #F4F2E8;\r\n}\r\n\r\n.editAreaButtonDisabled {\r\n\tfilter:progid:DXImageTransform.Microsoft.Alpha(opacity=30);\r\n\t-moz-opacity:0.3;\r\n\topacity: 0.3;\r\n\tborder: 1px solid #F0F0EE !important;\r\n\tcursor: pointer;\r\n}\r\n\r\n.editAreaSeparatorLine {\r\n\tmargin: 1px 2px;\r\n\tbackground-color: #C0C0BB;\r\n\twidth: 2px;\r\n\theight: 18px;\r\n}\r\n\r\n/* waiting screen */\r\n#processing{\r\n\tdisplay: none; \r\n\tbackground-color:#ECE9D8; \r\n\tborder: solid #888 1px;\r\n\tposition: absolute; \r\n\ttop: 0; \r\n\tleft: 0;\r\n\twidth: 100%; \r\n\theight: 100%; \r\n\tz-index: 100; \r\n\ttext-align: center;\r\n}\r\n\r\n#processing_text{\r\n\tposition:absolute;\r\n\tleft: 50%;\r\n\ttop: 50%;\r\n\twidth: 200px;\r\n\theight: 20px; \r\n\tmargin-left: -100px;\r\n\tmargin-top: -10px;\r\n\ttext-align: center;\r\n}\r\n/* end */\r\n\r\n\r\n/**** tab browsing area ****/\r\n#tab_browsing_area{\r\n\tdisplay: none;\r\n\tbackground-color: #CCC9A8;\r\n\tborder-top: 1px solid #888;\r\n\ttext-align: left;\r\n\tmargin: 0;\r\n}\r\n\r\n#tab_browsing_list {\r\n\tpadding: 0; \r\n\tmargin: 0; \r\n\tlist-style-type: none;\r\n\twhite-space: nowrap;\r\n}\r\n#tab_browsing_list li {\r\n\tfloat: left;\r\n\tmargin: -1px;\r\n}\r\n#tab_browsing_list a {\r\n\tposition: relative;\r\n\tdisplay: block; \r\n\ttext-decoration: none; \r\n\tfloat: left; \r\n\tcursor: pointer;\r\n\tline-height:14px;\r\n}\r\n\r\n#tab_browsing_list a span {\r\n\tdisplay: block; \r\n\tcolor: #000; \r\n\tbackground: #ECE9D8; \r\n\tborder:\t1px solid #888; \r\n\tborder-width: 1px 1px 0; \r\n\ttext-align: center; \r\n\tpadding: 2px 2px 1px 4px; \r\n\tposition: relative;\t/*IE 6 hack */\r\n}\r\n\r\n#tab_browsing_list a b {\r\n\tdisplay: block; \r\n\tborder-bottom: 2px solid #617994;\r\n}\r\n\r\n#tab_browsing_list a .edited {\r\n\tdisplay: none;\r\n}\r\n\r\n#tab_browsing_list a.edited .edited {\r\n\tdisplay: inline;\r\n}\r\n\r\n#tab_browsing_list a img{\r\n\tmargin-left: 7px;\r\n}\r\n\r\n#tab_browsing_list a.edited img{\r\n\tmargin-left: 3px;\r\n}\r\n\r\n#tab_browsing_list a:hover span {\r\n\tbackground: #F4F2E8;\r\n\tborder-color: #0A246A;\r\n}\r\n\r\n#tab_browsing_list .selected a span{\r\n\tbackground: #046380;\r\n\tcolor: #FFF;\r\n}\r\n\r\n\r\n#no_file_selected{\r\n\theight: 100%;\r\n\twidth: 150%; /* Opera need more than 100% */\r\n\tbackground: #CCC;\r\n\tdisplay: none;\r\n\tz-index: 20;\r\n\tposition: absolute;\r\n}\r\n\r\n\r\n/*** Non-editable mode ***/\r\n.non_editable #editor\r\n{\r\n\tborder-width: 0 1px;\r\n}\r\n\r\n.non_editable .area_toolbar\r\n{\r\n\tdisplay: none;\r\n}\r\n\r\n/*** Auto completion ***/\r\n#auto_completion_area\r\n{\r\n\tbackground:\t#FFF;\r\n\tborder:\t\tsolid 1px #888;\r\n\tposition:\tabsolute;\r\n\tz-index:\t15;\r\n\twidth:\t280px;\r\n\theight:\t180px;\r\n\toverflow: auto;\r\n\tdisplay:none;\r\n}\r\n\r\n#auto_completion_area a, #auto_completion_area a:visited\r\n{\r\n\tdisplay:\tblock;\r\n\tpadding:\t0 2px 1px;\r\n\tcolor:\t\t#000;\r\n\ttext-decoration:none;\r\n}\r\n\r\n#auto_completion_area a:hover, #auto_completion_area a:focus, #auto_completion_area a.focus\r\n{\r\n\tbackground:\t#D6E1FE;\r\n\ttext-decoration:none;\r\n}\r\n\r\n#auto_completion_area ul\r\n{\r\n\tmargin:\t0;\r\n\tpadding: 0;\r\n\tlist-style: none inside;\r\n}\r\n#auto_completion_area li\r\n{\r\n\tpadding:\t0;\r\n}\r\n#auto_completion_area .prefix\r\n{\r\n\tfont-style: italic;\r\n\tpadding: 0 3px;\r\n}"
  },
  {
    "path": "newscoop/js/editarea/edit_area/edit_area.js",
    "content": "/******\r\n *\r\n *\tEditArea \r\n * \tDevelopped by Christophe Dolivet\r\n *\tReleased under LGPL, Apache and BSD licenses (use the one you want)\r\n *\r\n******/\r\n\r\n\tfunction EditArea(){\r\n\t\tvar t=this;\r\n\t\tt.error= false;\t// to know if load is interrrupt\r\n\t\t\r\n\t\tt.inlinePopup= [{popup_id: \"area_search_replace\", icon_id: \"search\"},\r\n\t\t\t\t\t\t\t\t\t{popup_id: \"edit_area_help\", icon_id: \"help\"}];\r\n\t\tt.plugins= {};\r\n\t\r\n\t\tt.line_number=0;\r\n\t\t\r\n\t\tparent.editAreaLoader.set_browser_infos(t); \t// navigator identification\r\n\t\t// fix IE8 detection as we run in IE7 emulate mode through X-UA <meta> tag\r\n\t\tif( t.isIE >= 8 )\r\n\t\t\tt.isIE\t= 7;\r\n\t\t\r\n\t\tt.last_selection={};\t\t\r\n\t\tt.last_text_to_highlight=\"\";\r\n\t\tt.last_hightlighted_text= \"\";\r\n\t\tt.syntax_list= [];\r\n\t\tt.allready_used_syntax= {};\r\n\t\tt.check_line_selection_timer= 50;\t// the timer delay for modification and/or selection change detection\r\n\t\t\r\n\t\tt.textareaFocused= false;\r\n\t\tt.highlight_selection_line= null;\r\n\t\tt.previous= [];\r\n\t\tt.next= [];\r\n\t\tt.last_undo=\"\";\r\n\t\tt.files= {};\r\n\t\tt.filesIdAssoc= {};\r\n\t\tt.curr_file= '';\r\n\t\t//t.loaded= false;\r\n\t\tt.assocBracket={};\r\n\t\tt.revertAssocBracket= {};\t\t\r\n\t\t// bracket selection init \r\n\t\tt.assocBracket[\"(\"]=\")\";\r\n\t\tt.assocBracket[\"{\"]=\"}\";\r\n\t\tt.assocBracket[\"[\"]=\"]\";\t\t\r\n\t\tfor(var index in t.assocBracket){\r\n\t\t\tt.revertAssocBracket[t.assocBracket[index]]=index;\r\n\t\t}\r\n\t\tt.is_editable= true;\r\n\t\t\r\n\t\t\r\n\t\t/*t.textarea=\"\";\t\r\n\t\t\r\n\t\tt.state=\"declare\";\r\n\t\tt.code = []; // store highlight syntax for languagues*/\r\n\t\t// font datas\r\n\t\tt.lineHeight= 16;\r\n\t\t/*t.default_font_family= \"monospace\";\r\n\t\tt.default_font_size= 10;*/\r\n\t\tt.tab_nb_char= 8;\t//nb of white spaces corresponding to a tabulation\r\n\t\tif(t.isOpera)\r\n\t\t\tt.tab_nb_char= 6;\r\n\r\n\t\tt.is_tabbing= false;\r\n\t\t\r\n\t\tt.fullscreen= {'isFull': false};\r\n\t\t\r\n\t\tt.isResizing=false;\t// resize var\r\n\t\t\r\n\t\t// init with settings and ID (area_id is a global var defined by editAreaLoader on iframe creation\r\n\t\tt.id= area_id;\r\n\t\tt.settings= editAreas[t.id][\"settings\"];\r\n\t\t\r\n\t\tif((\"\"+t.settings['replace_tab_by_spaces']).match(/^[0-9]+$/))\r\n\t\t{\r\n\t\t\tt.tab_nb_char= t.settings['replace_tab_by_spaces'];\r\n\t\t\tt.tabulation=\"\";\r\n\t\t\tfor(var i=0; i<t.tab_nb_char; i++)\r\n\t\t\t\tt.tabulation+=\" \";\r\n\t\t}else{\r\n\t\t\tt.tabulation=\"\\t\";\r\n\t\t}\r\n\t\t\t\r\n\t\t// retrieve the init parameter for syntax\r\n\t\tif(t.settings[\"syntax_selection_allow\"] && t.settings[\"syntax_selection_allow\"].length>0)\r\n\t\t\tt.syntax_list= t.settings[\"syntax_selection_allow\"].replace(/ /g,\"\").split(\",\");\r\n\t\t\r\n\t\tif(t.settings['syntax'])\r\n\t\t\tt.allready_used_syntax[t.settings['syntax']]=true;\r\n\t\t\r\n\t\t\r\n\t};\r\n\tEditArea.prototype.init= function(){\r\n\t\tvar t=this, a, s=t.settings;\r\n\t\tt.textarea\t\t\t= _$(\"textarea\");\r\n\t\tt.container\t\t\t= _$(\"container\");\r\n\t\tt.result\t\t\t= _$(\"result\");\r\n\t\tt.content_highlight\t= _$(\"content_highlight\");\r\n\t\tt.selection_field\t= _$(\"selection_field\");\r\n\t\tt.selection_field_text= _$(\"selection_field_text\");\r\n\t\tt.processing_screen\t= _$(\"processing\");\r\n\t\tt.editor_area\t\t= _$(\"editor\");\r\n\t\tt.tab_browsing_area\t= _$(\"tab_browsing_area\");\r\n\t\tt.test_font_size\t= _$(\"test_font_size\");\r\n\t\ta = t.textarea;\r\n\t\t\r\n\t\tif(!s['is_editable'])\r\n\t\t\tt.set_editable(false);\r\n\t\t\r\n\t\tt.set_show_line_colors( s['show_line_colors'] );\r\n\t\t\r\n\t\tif(syntax_selec= _$(\"syntax_selection\"))\r\n\t\t{\r\n\t\t\t// set up syntax selection lsit in the toolbar\r\n\t\t\tfor(var i=0; i<t.syntax_list.length; i++) {\r\n\t\t\t\tvar syntax= t.syntax_list[i];\r\n\t\t\t\tvar option= document.createElement(\"option\");\r\n\t\t\t\toption.value= syntax;\r\n\t\t\t\tif(syntax==s['syntax'])\r\n\t\t\t\t\toption.selected= \"selected\";\r\n\t\t\t\tdispSyntax\t= parent.editAreaLoader.syntax_display_name[ syntax ];\r\n\t\t\t\toption.innerHTML= typeof( dispSyntax ) == 'undefined' ? syntax.substring( 0, 1 ).toUpperCase() + syntax.substring( 1 ) : dispSyntax;//t.get_translation(\"syntax_\" + syntax, \"word\");\r\n\t\t\t\tsyntax_selec.appendChild(option);\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\t// add plugins buttons in the toolbar\r\n\t\tspans= parent.getChildren(_$(\"toolbar_1\"), \"span\", \"\", \"\", \"all\", -1);\r\n\t\t\r\n\t\tfor(var i=0; i<spans.length; i++){\r\n\t\t\r\n\t\t\tid=spans[i].id.replace(/tmp_tool_(.*)/, \"$1\");\r\n\t\t\tif(id!= spans[i].id){\r\n\t\t\t\tfor(var j in t.plugins){\r\n\t\t\t\t\tif(typeof(t.plugins[j].get_control_html)==\"function\" ){\r\n\t\t\t\t\t\thtml=t.plugins[j].get_control_html(id);\r\n\t\t\t\t\t\tif(html!=false){\r\n\t\t\t\t\t\t\thtml= t.get_translation(html, \"template\");\r\n\t\t\t\t\t\t\tvar new_span= document.createElement(\"span\");\r\n\t\t\t\t\t\t\tnew_span.innerHTML= html;\t\t\t\t\r\n\t\t\t\t\t\t\tvar father= spans[i].parentNode;\r\n\t\t\t\t\t\t\tspans[i].parentNode.replaceChild(new_span, spans[i]);\t\r\n\t\t\t\t\t\t\tbreak; // exit the for loop\t\t\t\t\t\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\t// init datas\r\n\t\t//a.value\t= 'a';//editAreas[t.id][\"textarea\"].value;\r\n\t\r\n\t\tif(s[\"debug\"])\r\n\t\t{\r\n\t\t\tt.debug=parent.document.getElementById(\"edit_area_debug_\"+t.id);\r\n\t\t}\r\n\t\t// init size\t\t\r\n\t\t//this.update_size();\r\n\t\t\r\n\t\tif(_$(\"redo\") != null)\r\n\t\t\tt.switchClassSticky(_$(\"redo\"), 'editAreaButtonDisabled', true);\r\n\t\t\r\n\t\t// insert css rules for highlight mode\t\t\r\n\t\tif(typeof(parent.editAreaLoader.syntax[s[\"syntax\"]])!=\"undefined\"){\r\n\t\t\tfor(var i in parent.editAreaLoader.syntax){\r\n\t\t\t\tif (typeof(parent.editAreaLoader.syntax[i][\"styles\"]) != \"undefined\"){\r\n\t\t\t\t\tt.add_style(parent.editAreaLoader.syntax[i][\"styles\"]);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t\r\n\t\t// init key events\r\n\t\tif(t.isOpera)\r\n\t\t\t_$(\"editor\").onkeypress\t= keyDown;\r\n\t\telse\r\n\t\t\t_$(\"editor\").onkeydown\t= keyDown;\r\n\r\n\t\tfor(var i=0; i<t.inlinePopup.length; i++){\r\n\t\t\tif(t.isOpera)\r\n\t\t\t\t_$(t.inlinePopup[i][\"popup_id\"]).onkeypress\t= keyDown;\r\n\t\t\telse\r\n\t\t\t\t_$(t.inlinePopup[i][\"popup_id\"]).onkeydown\t= keyDown;\r\n\t\t}\r\n\t\t\r\n\t\tif(s[\"allow_resize\"]==\"both\" || s[\"allow_resize\"]==\"x\" || s[\"allow_resize\"]==\"y\")\r\n\t\t\tt.allow_resize(true);\r\n\t\t\r\n\t\tparent.editAreaLoader.toggle(t.id, \"on\");\r\n\t\t//a.focus();\r\n\t\t// line selection init\r\n\t\tt.change_smooth_selection_mode(editArea.smooth_selection);\r\n\t\t// highlight\r\n\t\tt.execCommand(\"change_highlight\", s[\"start_highlight\"]);\r\n\t\r\n\t\t// get font size datas\t\t\r\n\t\tt.set_font(editArea.settings[\"font_family\"], editArea.settings[\"font_size\"]);\r\n\t\t\r\n\t\t// set unselectable text\r\n\t\tchildren= parent.getChildren(document.body, \"\", \"selec\", \"none\", \"all\", -1);\r\n\t\tfor(var i=0; i<children.length; i++){\r\n\t\t\tif(t.isIE)\r\n\t\t\t\tchildren[i].unselectable = true; // IE\r\n\t\t\telse\r\n\t\t\t\tchildren[i].onmousedown= function(){return false};\r\n\t\t/*\tchildren[i].style.MozUserSelect = \"none\"; // Moz\r\n\t\t\tchildren[i].style.KhtmlUserSelect = \"none\";  // Konqueror/Safari*/\r\n\t\t}\r\n\t\t\r\n\t\ta.spellcheck= s[\"gecko_spellcheck\"];\r\n\t\r\n\t\t/** Browser specific style fixes **/\r\n\t\t\r\n\t\t// fix rendering bug for highlighted lines beginning with no tabs\r\n\t\tif( t.isFirefox >= '3' ) {\r\n\t\t\tt.content_highlight.style.paddingLeft= \"1px\";\r\n\t\t\tt.selection_field.style.paddingLeft= \"1px\";\r\n\t\t\tt.selection_field_text.style.paddingLeft= \"1px\";\r\n\t\t}\r\n\t\t\r\n\t\tif(t.isIE && t.isIE < 8 ){\r\n\t\t\ta.style.marginTop= \"-1px\";\r\n\t\t}\r\n\t\t/*\r\n\t\tif(t.isOpera){\r\n\t\t\tt.editor_area.style.position= \"absolute\";\r\n\t\t}*/\r\n\t\t\r\n\t\tif( t.isSafari ){\r\n\t\t\tt.editor_area.style.position\t= \"absolute\";\r\n\t\t\ta.style.marginLeft\t\t=\"-3px\";\r\n\t\t\tif( t.isSafari < 3.2 ) // Safari 3.0 (3.1?)\r\n\t\t\t\ta.style.marginTop\t=\"1px\";\r\n\t\t}\r\n\t\t\r\n\t\t// si le textarea n'est pas grand, un click sous le textarea doit provoquer un focus sur le textarea\r\n\t\tparent.editAreaLoader.add_event(t.result, \"click\", function(e){ if((e.target || e.srcElement)==editArea.result) { editArea.area_select(editArea.textarea.value.length, 0);}  });\r\n\t\t\r\n\t\tif(s['is_multi_files']!=false)\r\n\t\t\tt.open_file({'id': t.curr_file, 'text': ''});\r\n\t\r\n\t\tt.set_word_wrap( s['word_wrap'] );\r\n\t\t\r\n\t\tsetTimeout(\"editArea.focus();editArea.manage_size();editArea.execCommand('EA_load');\", 10);\t\t\r\n\t\t//start checkup routine\r\n\t\tt.check_undo();\r\n\t\tt.check_line_selection(true);\r\n\t\tt.scroll_to_view();\r\n\t\t\r\n\t\tfor(var i in t.plugins){\r\n\t\t\tif(typeof(t.plugins[i].onload)==\"function\")\r\n\t\t\t\tt.plugins[i].onload();\r\n\t\t}\r\n\t\tif(s['fullscreen']==true)\r\n\t\t\tt.toggle_full_screen(true);\r\n\t\r\n\t\tparent.editAreaLoader.add_event(window, \"resize\", editArea.update_size);\r\n\t\tparent.editAreaLoader.add_event(parent.window, \"resize\", editArea.update_size);\r\n\t\tparent.editAreaLoader.add_event(top.window, \"resize\", editArea.update_size);\r\n\t\tparent.editAreaLoader.add_event(window, \"unload\", function(){\r\n\t\t\t// in case where editAreaLoader have been already cleaned\r\n\t\t\tif( parent.editAreaLoader )\r\n\t\t\t{\r\n\t\t\t\tparent.editAreaLoader.remove_event(parent.window, \"resize\", editArea.update_size);\r\n\t\t  \t\tparent.editAreaLoader.remove_event(top.window, \"resize\", editArea.update_size);\r\n\t\t\t}\r\n\t\t\tif(editAreas[editArea.id] && editAreas[editArea.id][\"displayed\"]){\r\n\t\t\t\teditArea.execCommand(\"EA_unload\");\r\n\t\t\t}\r\n\t\t});\r\n\t\t\r\n\t\t\r\n\t\t/*date= new Date();\r\n\t\talert(date.getTime()- parent.editAreaLoader.start_time);*/\r\n\t};\r\n\t\r\n\t\r\n\t\r\n\t//called by the toggle_on\r\n\tEditArea.prototype.update_size= function(){\r\n\t\tvar d=document,pd=parent.document,height,width,popup,maxLeft,maxTop;\r\n\t\t\r\n\t\tif( typeof editAreas != 'undefined' && editAreas[editArea.id] && editAreas[editArea.id][\"displayed\"]==true){\r\n\t\t\tif(editArea.fullscreen['isFull']){\t\r\n\t\t\t\tpd.getElementById(\"frame_\"+editArea.id).style.width\t\t= pd.getElementsByTagName(\"html\")[0].clientWidth + \"px\";\r\n\t\t\t\tpd.getElementById(\"frame_\"+editArea.id).style.height\t= pd.getElementsByTagName(\"html\")[0].clientHeight + \"px\";\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\tif(editArea.tab_browsing_area.style.display=='block' && ( !editArea.isIE || editArea.isIE >= 8 ) )\r\n\t\t\t{\r\n\t\t\t\teditArea.tab_browsing_area.style.height\t= \"0px\";\r\n\t\t\t\teditArea.tab_browsing_area.style.height\t= (editArea.result.offsetTop - editArea.tab_browsing_area.offsetTop -1)+\"px\";\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\theight\t= d.body.offsetHeight - editArea.get_all_toolbar_height() - 4;\r\n\t\t\teditArea.result.style.height\t= height +\"px\";\r\n\t\t\t\r\n\t\t\twidth\t= d.body.offsetWidth -2;\r\n\t\t\teditArea.result.style.width\t\t= width+\"px\";\r\n\t\t\t//alert(\"result h: \"+ height+\" w: \"+width+\"\\ntoolbar h: \"+this.get_all_toolbar_height()+\"\\nbody_h: \"+document.body.offsetHeight);\r\n\t\t\t\r\n\t\t\t// check that the popups don't get out of the screen\r\n\t\t\tfor( i=0; i < editArea.inlinePopup.length; i++ )\r\n\t\t\t{\r\n\t\t\t\tpopup\t= _$(editArea.inlinePopup[i][\"popup_id\"]);\r\n\t\t\t\tmaxLeft\t= d.body.offsetWidth - popup.offsetWidth;\r\n\t\t\t\tmaxTop\t= d.body.offsetHeight - popup.offsetHeight;\r\n\t\t\t\tif( popup.offsetTop > maxTop )\r\n\t\t\t\t\tpopup.style.top\t\t= maxTop+\"px\";\r\n\t\t\t\tif( popup.offsetLeft > maxLeft )\r\n\t\t\t\t\tpopup.style.left\t= maxLeft+\"px\";\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\teditArea.manage_size( true );\r\n\t\t\teditArea.fixLinesHeight( editArea.textarea.value, 0,-1);\r\n\t\t}\t\t\r\n\t};\r\n\t\r\n\t\r\n\tEditArea.prototype.manage_size= function(onlyOneTime){\r\n\t\tif(!editAreas[this.id])\r\n\t\t\treturn false;\r\n\t\t\t\r\n\t\tif(editAreas[this.id][\"displayed\"]==true && this.textareaFocused)\r\n\t\t{\r\n\t\t\tvar area_height,resized= false;\r\n\t\t\t\r\n\t\t\t//1) Manage display width\r\n\t\t\t//1.1) Calc the new width to use for display\r\n\t\t\tif( !this.settings['word_wrap'] )\r\n\t\t\t{\r\n\t\t\t\tvar area_width= this.textarea.scrollWidth;\r\n\t\t\t\tarea_height= this.textarea.scrollHeight;\r\n\t\t\t\t// bug on old opera versions\r\n\t\t\t\tif(this.isOpera && this.isOpera < 9.6 ){\r\n\t\t\t\t\tarea_width=10000; \t\t\t\t\t\t\t\t\r\n\t\t\t\t}\r\n\t\t\t\t//1.2) the width is not the same, we must resize elements\r\n\t\t\t\tif(this.textarea.previous_scrollWidth!=area_width)\r\n\t\t\t\t{\t\r\n\t\t\t\t\tthis.container.style.width= area_width+\"px\";\r\n\t\t\t\t\tthis.textarea.style.width= area_width+\"px\";\r\n\t\t\t\t\tthis.content_highlight.style.width= area_width+\"px\";\t\r\n\t\t\t\t\tthis.textarea.previous_scrollWidth=area_width;\r\n\t\t\t\t\tresized=true;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\t// manage wrap width\r\n\t\t\tif( this.settings['word_wrap'] )\r\n\t\t\t{\r\n\t\t\t\tnewW=this.textarea.offsetWidth;\r\n\t\t\t\tif( this.isFirefox || this.isIE )\r\n\t\t\t\t\tnewW-=2;\r\n\t\t\t\tif( this.isSafari )\r\n\t\t\t\t\tnewW-=6;\r\n\t\t\t\tthis.content_highlight.style.width=this.selection_field_text.style.width=this.selection_field.style.width=this.test_font_size.style.width=newW+\"px\";\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t//2) Manage display height\r\n\t\t\t//2.1) Calc the new height to use for display\r\n\t\t\tif( this.isOpera || this.isFirefox || this.isSafari ) { \r\n\t\t\t\tarea_height= this.getLinePosTop( this.last_selection[\"nb_line\"] + 1 );\r\n\t\t\t} else {\r\n\t\t\t\tarea_height = this.textarea.scrollHeight;\r\n\t\t\t}\t\r\n\t\t\t//2.2) the width is not the same, we must resize elements \r\n\t\t\tif(this.textarea.previous_scrollHeight!=area_height)\t\r\n\t\t\t{\t\r\n\t\t\t\tthis.container.style.height= (area_height+2)+\"px\";\r\n\t\t\t\tthis.textarea.style.height= area_height+\"px\";\r\n\t\t\t\tthis.content_highlight.style.height= area_height+\"px\";\t\r\n\t\t\t\tthis.textarea.previous_scrollHeight= area_height;\r\n\t\t\t\tresized=true;\r\n\t\t\t}\r\n\t\t\r\n\t\t\t//3) if there is new lines, we add new line numbers in the line numeration area\r\n\t\t\tif(this.last_selection[\"nb_line\"] >= this.line_number)\r\n\t\t\t{\r\n\t\t\t\tvar newLines= '', destDiv=_$(\"line_number\"), start=this.line_number, end=this.last_selection[\"nb_line\"]+100;\r\n\t\t\t\tfor( i = start+1; i < end; i++ )\r\n\t\t\t\t{\r\n\t\t\t\t\tnewLines+='<div id=\"line_'+ i +'\">'+i+\"</div>\";\r\n\t\t\t\t\tthis.line_number++;\r\n\t\t\t\t}\r\n\t\t\t\tdestDiv.innerHTML= destDiv.innerHTML + newLines;\r\n\t\t\t\tif(this.settings['word_wrap']){\r\n\t\t\t\t\tthis.fixLinesHeight( this.textarea.value, start, -1 );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\r\n\t\t\t//4) be sure the text is well displayed\r\n\t\t\tthis.textarea.scrollTop=\"0px\";\r\n\t\t\tthis.textarea.scrollLeft=\"0px\";\r\n\t\t\tif(resized==true){\r\n\t\t\t\tthis.scroll_to_view();\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\tif(!onlyOneTime)\r\n\t\t\tsetTimeout(\"editArea.manage_size();\", 100);\r\n\t};\r\n\t\r\n\tEditArea.prototype.execCommand= function(cmd, param){\r\n\t\t\r\n\t\tfor(var i in this.plugins){\r\n\t\t\tif(typeof(this.plugins[i].execCommand)==\"function\"){\r\n\t\t\t\tif(!this.plugins[i].execCommand(cmd, param))\r\n\t\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}\r\n\t\tswitch(cmd){\r\n\t\t\tcase \"save\":\r\n\t\t\t\tif(this.settings[\"save_callback\"].length>0)\r\n\t\t\t\t\teval(\"parent.\"+this.settings[\"save_callback\"]+\"('\"+ this.id +\"', editArea.textarea.value);\");\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"load\":\r\n\t\t\t\tif(this.settings[\"load_callback\"].length>0)\r\n\t\t\t\t\teval(\"parent.\"+this.settings[\"load_callback\"]+\"('\"+ this.id +\"');\");\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"onchange\":\r\n\t\t\t\tif(this.settings[\"change_callback\"].length>0)\r\n\t\t\t\t\teval(\"parent.\"+this.settings[\"change_callback\"]+\"('\"+ this.id +\"');\");\r\n\t\t\t\tbreak;\t\t\r\n\t\t\tcase \"EA_load\":\r\n\t\t\t\tif(this.settings[\"EA_load_callback\"].length>0)\r\n\t\t\t\t\teval(\"parent.\"+this.settings[\"EA_load_callback\"]+\"('\"+ this.id +\"');\");\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"EA_unload\":\r\n\t\t\t\tif(this.settings[\"EA_unload_callback\"].length>0)\r\n\t\t\t\t\teval(\"parent.\"+this.settings[\"EA_unload_callback\"]+\"('\"+ this.id +\"');\");\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"toggle_on\":\r\n\t\t\t\tif(this.settings[\"EA_toggle_on_callback\"].length>0)\r\n\t\t\t\t\teval(\"parent.\"+this.settings[\"EA_toggle_on_callback\"]+\"('\"+ this.id +\"');\");\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"toggle_off\":\r\n\t\t\t\tif(this.settings[\"EA_toggle_off_callback\"].length>0)\r\n\t\t\t\t\teval(\"parent.\"+this.settings[\"EA_toggle_off_callback\"]+\"('\"+ this.id +\"');\");\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"re_sync\":\r\n\t\t\t\tif(!this.do_highlight)\r\n\t\t\t\t\tbreak;\r\n\t\t\tcase \"file_switch_on\":\r\n\t\t\t\tif(this.settings[\"EA_file_switch_on_callback\"].length>0)\r\n\t\t\t\t\teval(\"parent.\"+this.settings[\"EA_file_switch_on_callback\"]+\"(param);\");\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"file_switch_off\":\r\n\t\t\t\tif(this.settings[\"EA_file_switch_off_callback\"].length>0)\r\n\t\t\t\t\teval(\"parent.\"+this.settings[\"EA_file_switch_off_callback\"]+\"(param);\");\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"file_close\":\r\n\t\t\t\tif(this.settings[\"EA_file_close_callback\"].length>0)\r\n\t\t\t\t\treturn eval(\"parent.\"+this.settings[\"EA_file_close_callback\"]+\"(param);\");\r\n\t\t\t\tbreak;\r\n\t\t\t\r\n\t\t\tdefault:\r\n\t\t\t\tif(typeof(eval(\"editArea.\"+cmd))==\"function\")\r\n\t\t\t\t{\r\n\t\t\t\t\tif(this.settings[\"debug\"])\r\n\t\t\t\t\t\teval(\"editArea.\"+ cmd +\"(param);\");\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\ttry{eval(\"editArea.\"+ cmd +\"(param);\");}catch(e){};\r\n\t\t\t\t}\r\n\t\t}\r\n\t};\r\n\t\r\n\tEditArea.prototype.get_translation= function(word, mode){\r\n\t\tif(mode==\"template\")\r\n\t\t\treturn parent.editAreaLoader.translate(word, this.settings[\"language\"], mode);\r\n\t\telse\r\n\t\t\treturn parent.editAreaLoader.get_word_translation(word, this.settings[\"language\"]);\r\n\t};\r\n\t\r\n\tEditArea.prototype.add_plugin= function(plug_name, plug_obj){\r\n\t\tfor(var i=0; i<this.settings[\"plugins\"].length; i++){\r\n\t\t\tif(this.settings[\"plugins\"][i]==plug_name){\r\n\t\t\t\tthis.plugins[plug_name]=plug_obj;\r\n\t\t\t\tplug_obj.baseURL=parent.editAreaLoader.baseURL + \"plugins/\" + plug_name + \"/\";\r\n\t\t\t\tif( typeof(plug_obj.init)==\"function\" )\r\n\t\t\t\t\tplug_obj.init();\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\t\r\n\tEditArea.prototype.load_css= function(url){\r\n\t\ttry{\r\n\t\t\tlink = document.createElement(\"link\");\r\n\t\t\tlink.type = \"text/css\";\r\n\t\t\tlink.rel= \"stylesheet\";\r\n\t\t\tlink.media=\"all\";\r\n\t\t\tlink.href = url;\r\n\t\t\thead = document.getElementsByTagName(\"head\");\r\n\t\t\thead[0].appendChild(link);\r\n\t\t}catch(e){\r\n\t\t\tdocument.write(\"<link href='\"+ url +\"' rel='stylesheet' type='text/css' />\");\r\n\t\t}\r\n\t};\r\n\t\r\n\tEditArea.prototype.load_script= function(url){\r\n\t\ttry{\r\n\t\t\tscript = document.createElement(\"script\");\r\n\t\t\tscript.type = \"text/javascript\";\r\n\t\t\tscript.src  = url;\r\n\t\t\tscript.charset= \"UTF-8\";\r\n\t\t\thead = document.getElementsByTagName(\"head\");\r\n\t\t\thead[0].appendChild(script);\r\n\t\t}catch(e){\r\n\t\t\tdocument.write(\"<script type='text/javascript' src='\" + url + \"' charset=\\\"UTF-8\\\"><\"+\"/script>\");\r\n\t\t}\r\n\t};\r\n\t\r\n\t// add plugin translation to language translation array\r\n\tEditArea.prototype.add_lang= function(language, values){\r\n\t\tif(!parent.editAreaLoader.lang[language])\r\n\t\t\tparent.editAreaLoader.lang[language]={};\r\n\t\tfor(var i in values)\r\n\t\t\tparent.editAreaLoader.lang[language][i]= values[i];\r\n\t};\r\n\t\r\n\t// short cut for document.getElementById()\r\n\tfunction _$(id){return document.getElementById( id );};\r\n\r\n\tvar editArea = new EditArea();\t\r\n\tparent.editAreaLoader.add_event(window, \"load\", init);\r\n\t\r\n\tfunction init(){\t\t\r\n\t\tsetTimeout(\"editArea.init();  \", 10);\r\n\t};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/edit_area_compressor.php",
    "content": "<?php\r\n\t/******\r\n\t *\r\n\t *\tEditArea PHP compressor\r\n\t * \tDevelopped by Christophe Dolivet\r\n\t *\tReleased under LGPL, Apache and BSD licenses\r\n\t *\tv1.1.3 (2007/01/18)\t \r\n\t *\r\n\t******/\r\n\t\r\n\t// CONFIG\r\n\t$param['cache_duration']= 3600 * 24 * 10;\t\t// 10 days util client cache expires\r\n\t$param['compress'] = true;\t\t\t\t\t\t// enable the code compression, should be activated but it can be usefull to desactivate it for easier error retrieving (true or false)\r\n\t$param['debug'] = false;\t\t\t\t\t\t// Enable this option if you need debuging info\r\n\t$param['use_disk_cache']= true;\t\t\t\t\t// If you enable this option gzip files will be cached on disk.\r\n\t$param['use_gzip']= true;\t\t\t\t\t\t// Enable gzip compression\r\n\t// END CONFIG\r\n\t\r\n\t$compressor= new Compressor($param);\r\n\t\r\n\tclass Compressor{\r\n\t\r\n\t\t\r\n\t\tfunction compressor($param)\r\n\t\t{\r\n\t\t\t$this->__construct($param);\r\n\t\t}\r\n\t\t\r\n\t\tfunction __construct($param)\r\n\t\t{\r\n\t\t\t$this->start_time= $this->get_microtime();\r\n\t\t\t$this->file_loaded_size=0;\r\n\t\t\t$this->param= $param;\r\n\t\t\t$this->script_list=\"\";\r\n\t\t\t$this->path= dirname(__FILE__).\"/\";\r\n\t\t\tif(isset($_GET['plugins'])){\r\n\t\t\t\t$this->load_all_plugins= true;\r\n\t\t\t\t$this->full_cache_file= $this->path.\"edit_area_full_with_plugins.js\";\r\n\t\t\t\t$this->gzip_cache_file= $this->path.\"edit_area_full_with_plugins.gz\";\r\n\t\t\t}else{\r\n\t\t\t\t$this->load_all_plugins= false;\r\n\t\t\t\t$this->full_cache_file= $this->path.\"edit_area_full.js\";\r\n\t\t\t\t$this->gzip_cache_file= $this->path.\"edit_area_full.gz\";\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t$this->check_gzip_use();\r\n\t\t\t$this->send_headers();\r\n\t\t\t$this->check_cache();\r\n\t\t\t$this->load_files();\r\n\t\t\t$this->send_datas();\r\n\t\t}\r\n\t\t\r\n\t\tfunction send_headers()\r\n\t\t{\r\n\t\t\theader(\"Content-type: text/javascript; charset: UTF-8\");\r\n\t\t\theader(\"Vary: Accept-Encoding\"); // Handle proxies\r\n\t\t\theader(sprintf(\"Expires: %s GMT\", gmdate(\"D, d M Y H:i:s\", time() + $this->param['cache_duration'])) );\r\n\t\t\tif($this->use_gzip)\r\n\t\t\t\theader(\"Content-Encoding: \".$this->gzip_enc_header);\r\n\t\t}\r\n\t\t\r\n\t\tfunction check_gzip_use()\r\n\t\t{\r\n\t\t\t$encodings = array();\r\n\t\t\t$desactivate_gzip=false;\r\n\t\t\t\t\t\r\n\t\t\tif (isset($_SERVER['HTTP_ACCEPT_ENCODING']))\r\n\t\t\t\t$encodings = explode(',', strtolower(preg_replace(\"/\\s+/\", \"\", $_SERVER['HTTP_ACCEPT_ENCODING'])));\r\n\t\t\t\r\n\t\t\t// desactivate gzip for IE version < 7\r\n\t\t\tif(preg_match(\"/(?:msie )([0-9.]+)/i\", $_SERVER['HTTP_USER_AGENT'], $ie))\r\n\t\t\t{\r\n\t\t\t\tif($ie[1]<7)\r\n\t\t\t\t\t$desactivate_gzip=true;\t\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t// Check for gzip header or northon internet securities\r\n\t\t\tif (!$desactivate_gzip && $this->param['use_gzip'] && (in_array('gzip', $encodings) || in_array('x-gzip', $encodings) || isset($_SERVER['---------------'])) && function_exists('ob_gzhandler') && !ini_get('zlib.output_compression')) {\r\n\t\t\t\t$this->gzip_enc_header= in_array('x-gzip', $encodings) ? \"x-gzip\" : \"gzip\";\r\n\t\t\t\t$this->use_gzip=true;\r\n\t\t\t\t$this->cache_file=$this->gzip_cache_file;\r\n\t\t\t}else{\r\n\t\t\t\t$this->use_gzip=false;\r\n\t\t\t\t$this->cache_file=$this->full_cache_file;\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\tfunction check_cache()\r\n\t\t{\r\n\t\t\t// Only gzip the contents if clients and server support it\r\n\t\t\tif (file_exists($this->cache_file)) {\r\n\t\t\t\t// check if cache file must be updated\r\n\t\t\t\t$cache_date=0;\t\t\t\t\r\n\t\t\t\tif ($dir = opendir($this->path)) {\r\n\t\t\t\t\twhile (($file = readdir($dir)) !== false) {\r\n\t\t\t\t\t\tif(is_file($this->path.$file) && $file!=\".\" && $file!=\"..\")\r\n\t\t\t\t\t\t\t$cache_date= max($cache_date, filemtime($this->path.$file));\r\n\t\t\t\t\t}\r\n\t\t\t\t\tclosedir($dir);\r\n\t\t\t\t}\r\n\t\t\t\tif($this->load_all_plugins){\r\n\t\t\t\t\t$plug_path= $this->path.\"plugins/\";\r\n\t\t\t\t\tif (($dir = @opendir($plug_path)) !== false)\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\twhile (($file = readdir($dir)) !== false)\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tif ($file !== \".\" && $file !== \"..\")\r\n\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\tif(is_dir($plug_path.$file) && file_exists($plug_path.$file.\"/\".$file.\".js\"))\r\n\t\t\t\t\t\t\t\t\t$cache_date= max($cache_date, filemtime(\"plugins/\".$file.\"/\".$file.\".js\"));\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tclosedir($dir);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif(filemtime($this->cache_file) >= $cache_date){\r\n\t\t\t\t\t// if cache file is up to date\r\n\t\t\t\t\t$last_modified = gmdate(\"D, d M Y H:i:s\",filemtime($this->cache_file)).\" GMT\";\r\n\t\t\t\t\tif (isset($_SERVER[\"HTTP_IF_MODIFIED_SINCE\"]) && strcasecmp($_SERVER[\"HTTP_IF_MODIFIED_SINCE\"], $last_modified) === 0)\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\theader(\"HTTP/1.1 304 Not Modified\");\r\n\t\t\t\t\t\theader(\"Last-modified: \".$last_modified);\r\n\t\t\t\t\t\theader(\"Cache-Control: Public\"); // Tells HTTP 1.1 clients to cache\r\n\t\t\t\t\t\theader(\"Pragma:\"); // Tells HTTP 1.0 clients to cache\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\theader(\"Last-modified: \".$last_modified);\r\n\t\t\t\t\t\theader(\"Cache-Control: Public\"); // Tells HTTP 1.1 clients to cache\r\n\t\t\t\t\t\theader(\"Pragma:\"); // Tells HTTP 1.0 clients to cache\r\n\t\t\t\t\t\theader('Content-Length: '.filesize($this->cache_file));\r\n\t\t\t\t\t\techo file_get_contents($this->cache_file);\r\n\t\t\t\t\t}\t\t\t\t\r\n\t\t\t\t\tdie;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\treturn false;\r\n\t\t}\r\n\t\t\r\n\t\tfunction load_files()\r\n\t\t{\r\n\t\t\t$loader= $this->get_content(\"edit_area_loader.js\").\"\\n\";\r\n\t\t\t\r\n\t\t\t// get the list of other files to load\r\n\t    \t$loader= preg_replace(\"/(t\\.scripts_to_load=\\s*)\\[([^\\]]*)\\];/e\"\r\n\t\t\t\t\t\t, \"\\$this->replace_scripts('script_list', '\\\\1', '\\\\2')\"\r\n\t\t\t\t\t\t, $loader);\r\n\t\t\r\n\t\t\t$loader= preg_replace(\"/(t\\.sub_scripts_to_load=\\s*)\\[([^\\]]*)\\];/e\"\r\n\t\t\t\t\t\t, \"\\$this->replace_scripts('sub_script_list', '\\\\1', '\\\\2')\"\r\n\t\t\t\t\t\t, $loader);\r\n\r\n\t\t\t// replace languages names\r\n\t\t\t$reg_path= $this->path.\"reg_syntax/\";\r\n\t\t\t$a_displayName\t= array();\r\n\t\t\tif (($dir = @opendir($reg_path)) !== false)\r\n\t\t\t{\r\n\t\t\t\twhile (($file = readdir($dir)) !== false)\r\n\t\t\t\t{\r\n\t\t\t\t\tif( $file !== \".\" && $file !== \"..\" && ( $pos = strpos( $file, '.js' ) ) !== false )\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t$jsContent\t= $this->file_get_contents( $reg_path.$file );\r\n\t\t\t\t\t\tif( preg_match( '@(\\'|\")DISPLAY_NAME\\1\\s*:\\s*(\\'|\")(.*)\\2@', $jsContent, $match ) )\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t$a_displayName[] = \"'\". substr( $file, 0, $pos ) .\"':'\". htmlspecialchars( $match[3], ENT_QUOTES ) .\"'\";\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tclosedir($dir);\r\n\t\t\t}\r\n\t\t\t$loader\t= str_replace( '/*syntax_display_name_AUTO-FILL-BY-COMPRESSOR*/', implode( \",\", $a_displayName ), $loader );\r\n\t\t\t\t\t\t\r\n\t\t\t$this->datas= $loader;\r\n\t\t\t$this->compress_javascript($this->datas);\r\n\t\t\t\r\n\t\t\t// load other scripts needed for the loader\r\n\t\t\tpreg_match_all('/\"([^\"]*)\"/', $this->script_list, $match);\r\n\t\t\tforeach($match[1] as $key => $value)\r\n\t\t\t{\r\n\t\t\t\t$content= $this->get_content(preg_replace(\"/\\\\|\\//i\", \"\", $value).\".js\");\r\n\t\t\t\t$this->compress_javascript($content);\r\n\t\t\t\t$this->datas.= $content.\"\\n\";\r\n\t\t\t}\r\n\t\t\t//$this->datas);\r\n\t\t\t//$this->datas= preg_replace('/(( |\\t|\\r)*\\n( |\\t)*)+/s', \"\", $this->datas);\r\n\t\t\t\r\n\t\t\t// improved compression step 1/2\t\r\n\t\t\t$this->datas= preg_replace(array(\"/(\\b)EditAreaLoader(\\b)/\", \"/(\\b)editAreaLoader(\\b)/\", \"/(\\b)editAreas(\\b)/\"), array(\"EAL\", \"eAL\", \"eAs\"), $this->datas);\r\n\t\t\t//$this->datas= str_replace(array(\"EditAreaLoader\", \"editAreaLoader\", \"editAreas\"), array(\"EAL\", \"eAL\", \"eAs\"), $this->datas);\r\n\t\t\t$this->datas.= \"var editAreaLoader= eAL;var editAreas=eAs;EditAreaLoader=EAL;\";\r\n\t\t\r\n\t\t\t// load sub scripts\r\n\t\t\t$sub_scripts=\"\";\r\n\t\t\t$sub_scripts_list= array();\r\n\t\t\tpreg_match_all('/\"([^\"]*)\"/', $this->sub_script_list, $match);\r\n\t\t\tforeach($match[1] as $value){\r\n\t\t\t\t$sub_scripts_list[]= preg_replace(\"/\\\\|\\//i\", \"\", $value).\".js\";\r\n\t\t\t}\r\n\t\t\r\n\t\t\tif($this->load_all_plugins){\r\n\t\t\t\t// load plugins scripts\r\n\t\t\t\t$plug_path= $this->path.\"plugins/\";\r\n\t\t\t\tif (($dir = @opendir($plug_path)) !== false)\r\n\t\t\t\t{\r\n\t\t\t\t\twhile (($file = readdir($dir)) !== false)\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tif ($file !== \".\" && $file !== \"..\")\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tif(is_dir($plug_path.$file) && file_exists($plug_path.$file.\"/\".$file.\".js\"))\r\n\t\t\t\t\t\t\t\t$sub_scripts_list[]= \"plugins/\".$file.\"/\".$file.\".js\";\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tclosedir($dir);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\t\t\t\t\t\r\n\t\t\tforeach($sub_scripts_list as $value){\r\n\t\t\t\t$sub_scripts.= $this->get_javascript_content($value);\r\n\t\t\t}\r\n\t\t\t// improved compression step 2/2\t\r\n\t\t\t$sub_scripts= preg_replace(array(\"/(\\b)editAreaLoader(\\b)/\", \"/(\\b)editAreas(\\b)/\", \"/(\\b)editArea(\\b)/\", \"/(\\b)EditArea(\\b)/\"), array(\"eAL\", \"eAs\", \"eA\", \"EA\"), $sub_scripts);\r\n\t\t//\t$sub_scripts= str_replace(array(\"editAreaLoader\", \"editAreas\", \"editArea\", \"EditArea\"), array(\"eAL\", \"eAs\", \"eA\", \"EA\"), $sub_scripts);\r\n\t\t\t$sub_scripts.= \"var editArea= eA;EditArea=EA;\";\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t// add the scripts\r\n\t\t//\t$this->datas.= sprintf(\"editAreaLoader.iframe_script= \\\"<script type='text/javascript'>%s</script>\\\";\\n\", $sub_scripts);\r\n\t\t\r\n\t\t\r\n\t\t\t// add the script and use a last compression \r\n\t\t\tif( $this->param['compress'] )\r\n\t\t\t{\r\n\t\t\t\t$last_comp\t= array( 'Á' => 'this',\r\n\t\t\t\t\t\t\t\t 'Â' => 'textarea',\r\n\t\t\t\t\t\t\t\t 'Ã' => 'function',\r\n\t\t\t\t\t\t\t\t 'Ä' => 'prototype',\r\n\t\t\t\t\t\t\t\t 'Å' => 'settings',\r\n\t\t\t\t\t\t\t\t 'Æ' => 'length',\r\n\t\t\t\t\t\t\t\t 'Ç' => 'style',\r\n\t\t\t\t\t\t\t\t 'È' => 'parent',\r\n\t\t\t\t\t\t\t\t 'É' => 'last_selection',\r\n\t\t\t\t\t\t\t\t 'Ê' => 'value',\r\n\t\t\t\t\t\t\t\t 'Ë' => 'true',\r\n\t\t\t\t\t\t\t\t 'Ì' => 'false'\r\n\t\t\t\t\t\t\t\t /*,\r\n\t\t\t\t\t\t\t\t\t'Î' => '\"',\r\n\t\t\t\t\t\t\t\t 'Ï' => \"\\n\",\r\n\t\t\t\t\t\t\t\t 'À' => \"\\r\"*/);\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\t$last_comp\t= array();\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t$js_replace= '';\r\n\t\t\tforeach( $last_comp as $key => $val )\r\n\t\t\t\t$js_replace .= \".replace(/\". $key .\"/g,'\". str_replace( array(\"\\n\", \"\\r\"), array('\\n','\\r'), $val ) .\"')\";\r\n\t\t\t\r\n\t\t\t$this->datas.= sprintf(\"editAreaLoader.iframe_script= \\\"<script type='text/javascript'>%s</script>\\\"%s;\\n\",\r\n\t\t\t\t\t\t\t\tstr_replace( array_values($last_comp), array_keys($last_comp), $sub_scripts ), \r\n\t\t\t\t\t\t\t\t$js_replace);\r\n\t\t\t\r\n\t\t\tif($this->load_all_plugins)\r\n\t\t\t\t$this->datas.=\"editAreaLoader.all_plugins_loaded=true;\\n\";\r\n\t\t\r\n\t\t\t\r\n\t\t\t// load the template\r\n\t\t\t$this->datas.= sprintf(\"editAreaLoader.template= \\\"%s\\\";\\n\", $this->get_html_content(\"template.html\"));\r\n\t\t\t// load the css\r\n\t\t\t$this->datas.= sprintf(\"editAreaLoader.iframe_css= \\\"<style>%s</style>\\\";\\n\", $this->get_css_content(\"edit_area.css\"));\r\n\t\t\t\t\t\r\n\t\t//\t$this->datas= \"function editArea(){};editArea.prototype.loader= function(){alert('bouhbouh');} var a= new editArea();a.loader();\";\r\n\t\t\t\t\t\r\n\t\t}\r\n\t\t\r\n\t\tfunction send_datas()\r\n\t\t{\r\n\t\t\tif($this->param['debug']){\r\n\t\t\t\t$header=sprintf(\"/* USE PHP COMPRESSION\\n\");\r\n\t\t\t\t$header.=sprintf(\"javascript size: based files: %s => PHP COMPRESSION => %s \", $this->file_loaded_size, strlen($this->datas));\r\n\t\t\t\tif($this->use_gzip){\r\n\t\t\t\t\t$gzip_datas=  gzencode($this->datas, 9, FORCE_GZIP);\t\t\t\t\r\n\t\t\t\t\t$header.=sprintf(\"=> GZIP COMPRESSION => %s\", strlen($gzip_datas));\r\n\t\t\t\t\t$ratio = round(100 - strlen($gzip_datas) / $this->file_loaded_size * 100.0);\t\t\t\r\n\t\t\t\t}else{\r\n\t\t\t\t\t$ratio = round(100 - strlen($this->datas) / $this->file_loaded_size * 100.0);\r\n\t\t\t\t}\r\n\t\t\t\t$header.=sprintf(\", reduced by %s%%\\n\", $ratio);\r\n\t\t\t\t$header.=sprintf(\"compression time: %s\\n\", $this->get_microtime()-$this->start_time); \r\n\t\t\t\t$header.=sprintf(\"%s\\n\", implode(\"\\n\", $this->infos));\r\n\t\t\t\t$header.=sprintf(\"*/\\n\");\r\n\t\t\t\t$this->datas= $header.$this->datas;\t\r\n\t\t\t}\r\n\t\t\t$mtime= time(); // ensure that the 2 disk files will have the same update time\r\n\t\t\t// generate gzip file and cahce it if using disk cache\r\n\t\t\tif($this->use_gzip){\r\n\t\t\t\t$this->gzip_datas= gzencode($this->datas, 9, FORCE_GZIP);\r\n\t\t\t\tif($this->param['use_disk_cache'])\r\n\t\t\t\t\t$this->file_put_contents($this->gzip_cache_file, $this->gzip_datas, $mtime);\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t// generate full js file and cache it if using disk cache\t\t\t\r\n\t\t\tif($this->param['use_disk_cache'])\r\n\t\t\t\t$this->file_put_contents($this->full_cache_file, $this->datas, $mtime);\r\n\t\t\t\r\n\t\t\t// generate output\r\n\t\t\tif($this->use_gzip)\r\n\t\t\t\techo $this->gzip_datas;\r\n\t\t\telse\r\n\t\t\t\techo $this->datas;\r\n\t\t\t\t\r\n//\t\t\tdie;\r\n\t\t}\r\n\t\t\t\t\r\n\t\t\r\n\t\tfunction get_content($end_uri)\r\n\t\t{\r\n\t\t\t$end_uri=preg_replace(\"/\\.\\./\", \"\", $end_uri); // Remove any .. (security)\r\n\t\t\t$file= $this->path.$end_uri;\r\n\t\t\tif(file_exists($file)){\r\n\t\t\t\t$this->infos[]=sprintf(\"'%s' loaded\", $end_uri);\r\n\t\t\t\t/*$fd = fopen($file, 'rb');\r\n\t\t\t\t$content = fread($fd, filesize($file));\r\n\t\t\t\tfclose($fd);\r\n\t\t\t\treturn $content;*/\r\n\t\t\t\treturn $this->file_get_contents($file);\r\n\t\t\t}else{\r\n\t\t\t\t$this->infos[]=sprintf(\"'%s' not loaded\", $end_uri);\r\n\t\t\t\treturn \"\";\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\tfunction get_javascript_content($end_uri)\r\n\t\t{\r\n\t\t\t$val=$this->get_content($end_uri);\r\n\t\r\n\t\t\t$this->compress_javascript($val);\r\n\t\t\t$this->prepare_string_for_quotes($val);\r\n\t\t\treturn $val;\r\n\t\t}\r\n\t\t\r\n\t\tfunction compress_javascript(&$code)\r\n\t\t{\r\n\t\t\tif($this->param['compress'])\r\n\t\t\t{\r\n\t\t\t\t// remove all comments\r\n\t\t\t\t//\t(\\\"(?:[^\\\"\\\\]*(?:\\\\\\\\)*(?:\\\\\\\"?)?)*(?:\\\"|$))|(\\'(?:[^\\'\\\\]*(?:\\\\\\\\)*(?:\\\\'?)?)*(?:\\'|$))|(?:\\/\\/(?:.|\\r|\\t)*?(\\n|$))|(?:\\/\\*(?:.|\\n|\\r|\\t)*?(?:\\*\\/|$))\r\n\t\t\t\t$code= preg_replace(\"/(\\\"(?:[^\\\"\\\\\\\\]*(?:\\\\\\\\\\\\\\\\)*(?:\\\\\\\\\\\"?)?)*(?:\\\"|$))|(\\'(?:[^\\'\\\\\\\\]*(?:\\\\\\\\\\\\\\\\)*(?:\\\\\\\\\\'?)?)*(?:\\'|$))|(?:\\/\\/(?:.|\\r|\\t)*?(\\n|$))|(?:\\/\\*(?:.|\\n|\\r|\\t)*?(?:\\*\\/|$))/s\", \"$1$2$3\", $code);\r\n\t\t\t\t// remove line return, empty line and tabulation\r\n\t\t\t\t$code= preg_replace('/(( |\\t|\\r)*\\n( |\\t)*)+/s', \" \", $code);\r\n\t\t\t\t// add line break before \"else\" otherwise navigators can't manage to parse the file\r\n\t\t\t\t$code= preg_replace('/(\\b(else)\\b)/', \"\\n$1\", $code);\r\n\t\t\t\t// remove unnecessary spaces\r\n\t\t\t\t$code= preg_replace('/( |\\t|\\r)*(;|\\{|\\}|=|==|\\-|\\+|,|\\(|\\)|\\|\\||&\\&|\\:)( |\\t|\\r)*/', \"$2\", $code);\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\tfunction get_css_content($end_uri){\r\n\t\t\t$code=$this->get_content($end_uri);\r\n\t\t\t// remove comments\r\n\t\t\t$code= preg_replace(\"/(?:\\/\\*(?:.|\\n|\\r|\\t)*?(?:\\*\\/|$))/s\", \"\", $code);\r\n\t\t\t// remove spaces\r\n\t\t\t$code= preg_replace('/(( |\\t|\\r)*\\n( |\\t)*)+/s', \"\", $code);\r\n\t\t\t// remove spaces\r\n\t\t\t$code= preg_replace('/( |\\t|\\r)?(\\:|,|\\{|\\})( |\\t|\\r)+/', \"$2\", $code);\r\n\t\t\r\n\t\t\t$this->prepare_string_for_quotes($code);\r\n\t\t\treturn $code;\r\n\t\t}\r\n\t\t\r\n\t\tfunction get_html_content($end_uri){\r\n\t\t\t$code=$this->get_content($end_uri);\r\n\t\t\t//$code= preg_replace('/(\\\"(?:\\\\\\\"|[^\\\"])*(?:\\\"|$))|' . \"(\\'(?:\\\\\\'|[^\\'])*(?:\\'|$))|(?:\\/\\/(?:.|\\r|\\t)*?(\\n|$))|(?:\\/\\*(?:.|\\n|\\r|\\t)*?(?:\\*\\/|$))/s\", \"$1$2$3\", $code);\r\n\t\t\t$code= preg_replace('/(( |\\t|\\r)*\\n( |\\t)*)+/s', \" \", $code);\r\n\t\t\t$this->prepare_string_for_quotes($code);\r\n\t\t\treturn $code;\r\n\t\t}\r\n\t\t\r\n\t\tfunction prepare_string_for_quotes(&$str){\r\n\t\t\t// prepare the code to be putted into quotes \r\n\t\t\t/*$pattern= array(\"/(\\\\\\\\)?\\\"/\", '/\\\\\\n/'\t, '/\\\\\\r/'\t, \"/(\\r?\\n)/\");\r\n\t\t\t$replace= array('$1$1\\\\\"', '\\\\\\\\\\\\n', '\\\\\\\\\\\\r'\t, '\\\\\\n\"$1+\"');*/\r\n\t\t\t$pattern= array(\"/(\\\\\\\\)?\\\"/\", '/\\\\\\n/'\t, '/\\\\\\r/'\t, \"/(\\r?\\n)/\");\r\n\t\t\tif($this->param['compress'])\r\n\t\t\t\t$replace= array('$1$1\\\\\"', '\\\\\\\\\\\\n', '\\\\\\\\\\\\r'\t, '\\n');\r\n\t\t\telse\r\n\t\t\t\t$replace= array('$1$1\\\\\"', '\\\\\\\\\\\\n', '\\\\\\\\\\\\r'\t, \"\\\\n\\\"\\n+\\\"\");\r\n\t\t\t$str= preg_replace($pattern, $replace, $str);\r\n\t\t}\r\n\t\t\r\n\t\tfunction replace_scripts($var, $param1, $param2)\r\n\t\t{\r\n\t\t\t$this->$var=stripslashes($param2);\r\n\t        return $param1.\"[];\";\r\n\t\t}\r\n\r\n\t\t/* for php version that have not thoses functions */\r\n\t\tfunction file_get_contents($file)\r\n\t\t{\r\n\t\t\t$fd = fopen($file, 'rb');\r\n\t\t\t$content = fread($fd, filesize($file));\r\n\t\t\tfclose($fd);\r\n\t\t\t$this->file_loaded_size+= strlen($content);\r\n\t\t\treturn $content;\t\t\t\t\r\n\t\t}\r\n\t\t\r\n\t\tfunction file_put_contents($file, &$content, $mtime=-1)\r\n\t\t{\r\n\t\t\tif($mtime==-1)\r\n\t\t\t\t$mtime=time();\r\n\t\t\t$fp = @fopen($file, \"wb\");\r\n\t\t\tif ($fp) {\r\n\t\t\t\tfwrite($fp, $content);\r\n\t\t\t\tfclose($fp);\r\n\t\t\t\ttouch($file, $mtime);\r\n\t\t\t\treturn true;\r\n\t\t\t}\r\n\t\t\treturn false;\r\n\t\t}\r\n\t\t\r\n\t\tfunction get_microtime()\r\n\t\t{\r\n\t\t   list($usec, $sec) = explode(\" \", microtime());\r\n\t\t   return ((float)$usec + (float)$sec);\r\n\t\t}\r\n\t}\t\r\n?>\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/edit_area_full.js",
    "content": " function EAL(){var t=this;t.version=\"0.8.2\";date=new Date();t.start_time=date.getTime();t.win=\"loading\";t.error=false;t.baseURL=\"\";t.template=\"\";t.lang={};t.load_syntax={};t.syntax={};t.loadedFiles=[];t.waiting_loading={};t.scripts_to_load=[];t.sub_scripts_to_load=[];t.syntax_display_name={'basic':'Basic','brainfuck':'Brainfuck','c':'C','coldfusion':'Coldfusion','cpp':'CPP','css':'CSS','html':'HTML','java':'Java','js':'Javascript','pas':'Pascal','perl':'Perl','php':'Php','python':'Python','robotstxt':'Robots txt','ruby':'Ruby','sql':'SQL','tsql':'T-SQL','vb':'Visual Basic','xml':'XML'};t.resize=[];t.hidden={};t.default_settings={debug:false,smooth_selection:true,font_size:\"10\",font_family:\"monospace\",start_highlight:false,toolbar:\"search,go_to_line,fullscreen,|,undo,redo,|,select_font,|,change_smooth_selection,highlight,reset_highlight,word_wrap,|,help\",begin_toolbar:\"\",end_toolbar:\"\",is_multi_files:false,allow_resize:\"both\",show_line_colors:false,min_width:400,min_height:125,replace_tab_by_spaces:false,allow_toggle:true,language:\"en\",syntax:\"\",syntax_selection_allow:\"basic,brainfuck,c,coldfusion,cpp,css,html,java,js,pas,perl,php,python,ruby,robotstxt,sql,tsql,vb,xml\",display:\"onload\",max_undo:30,browsers:\"known\",plugins:\"\",gecko_spellcheck:false,fullscreen:false,is_editable:true,cursor_position:\"begin\",word_wrap:false,autocompletion:false,load_callback:\"\",save_callback:\"\",change_callback:\"\",submit_callback:\"\",EA_init_callback:\"\",EA_delete_callback:\"\",EA_load_callback:\"\",EA_unload_callback:\"\",EA_toggle_on_callback:\"\",EA_toggle_off_callback:\"\",EA_file_switch_on_callback:\"\",EA_file_switch_off_callback:\"\",EA_file_close_callback:\"\"};t.advanced_buttons=[ ['new_document','newdocument.gif','new_document',false],['search','search.gif','show_search',false],['go_to_line','go_to_line.gif','go_to_line',false],['undo','undo.gif','undo',true],['redo','redo.gif','redo',true],['change_smooth_selection','smooth_selection.gif','change_smooth_selection_mode',true],['reset_highlight','reset_highlight.gif','resync_highlight',true],['highlight','highlight.gif','change_highlight',true],['help','help.gif','show_help',false],['save','save.gif','save',false],['load','load.gif','load',false],['fullscreen','fullscreen.gif','toggle_full_screen',false],['word_wrap','word_wrap.gif','toggle_word_wrap',true],['autocompletion','autocompletion.gif','toggle_autocompletion',true] ];t.set_browser_infos(t);if(t.isIE>=6||t.isGecko||(t.isWebKit&&!t.isSafari<3)||t.isOpera>=9||t.isCamino)t.isValidBrowser=true;\nelse t.isValidBrowser=false;t.set_base_url();for(var i=0;i<t.scripts_to_load.length;i++){setTimeout(\"eAL.load_script('\"+t.baseURL+t.scripts_to_load[i]+\".js');\",1);t.waiting_loading[t.scripts_to_load[i]+\".js\"]=false;}t.add_event(window,\"load\",EAL.prototype.window_loaded);};EAL.prototype={has_error:function(){this.error=true;for(var i in EAL.prototype){EAL.prototype[i]=function(){};}},set_browser_infos:function(o){ua=navigator.userAgent;o.isWebKit=/WebKit/.test(ua);o.isGecko=!o.isWebKit&&/Gecko/.test(ua);o.isMac=/Mac/.test(ua);o.isIE=(navigator.appName==\"Microsoft Internet Explorer\");if(o.isIE){o.isIE=ua.replace(/^.*?MSIE\\s+([0-9\\.]+).*$/,\"$1\");if(o.isIE<6)o.has_error();}if(o.isOpera=(ua.indexOf('Opera')!=-1)){o.isOpera=ua.replace(/^.*?Opera.*?([0-9\\.]+).*$/i,\"$1\");if(o.isOpera<9)o.has_error();o.isIE=false;}if(o.isFirefox=(ua.indexOf('Firefox')!=-1))o.isFirefox=ua.replace(/^.*?Firefox.*?([0-9\\.]+).*$/i,\"$1\");if(ua.indexOf('Iceweasel')!=-1)o.isFirefox=ua.replace(/^.*?Iceweasel.*?([0-9\\.]+).*$/i,\"$1\");if(ua.indexOf('GranParadiso')!=-1)o.isFirefox=ua.replace(/^.*?GranParadiso.*?([0-9\\.]+).*$/i,\"$1\");if(ua.indexOf('BonEcho')!=-1)o.isFirefox=ua.replace(/^.*?BonEcho.*?([0-9\\.]+).*$/i,\"$1\");if(ua.indexOf('SeaMonkey')!=-1)o.isFirefox=(ua.replace(/^.*?SeaMonkey.*?([0-9\\.]+).*$/i,\"$1\"))+1;if(o.isCamino=(ua.indexOf('Camino')!=-1))o.isCamino=ua.replace(/^.*?Camino.*?([0-9\\.]+).*$/i,\"$1\");if(o.isSafari=(ua.indexOf('Safari')!=-1))o.isSafari=ua.replace(/^.*?Version\\/([0-9]+\\.[0-9]+).*$/i,\"$1\");if(o.isChrome=(ua.indexOf('Chrome')!=-1)){o.isChrome=ua.replace(/^.*?Chrome.*?([0-9\\.]+).*$/i,\"$1\");o.isSafari=false;}},window_loaded:function(){eAL.win=\"loaded\";if(document.forms){for(var i=0;i<document.forms.length;i++){var form=document.forms[i];form.edit_area_replaced_submit=null;try{form.edit_area_replaced_submit=form.onsubmit;form.onsubmit=\"\";}catch(e){}eAL.add_event(form,\"submit\",EAL.prototype.submit);eAL.add_event(form,\"reset\",EAL.prototype.reset);}}eAL.add_event(window,\"unload\",function(){for(var i in eAs){eAL.delete_instance(i);}});},init_ie_textarea:function(id){var a=document.getElementById(id);try{if(a&&typeof(a.focused)==\"undefined\"){a.focus();a.focused=true;a.selectionStart=a.selectionEnd=0;get_IE_selection(a);eAL.add_event(a,\"focus\",IE_textarea_focus);eAL.add_event(a,\"blur\",IE_textarea_blur);}}catch(ex){}},init:function(settings){var t=this,s=settings,i;if(!s[\"id\"])t.has_error();if(t.error)return;if(eAs[s[\"id\"]])t.delete_instance(s[\"id\"]);for(i in t.default_settings){if(typeof(s[i])==\"undefined\")s[i]=t.default_settings[i];}if(s[\"browsers\"]==\"known\"&&t.isValidBrowser==false){return;}if(s[\"begin_toolbar\"].length>0)s[\"toolbar\"]=s[\"begin_toolbar\"]+\",\"+s[\"toolbar\"];if(s[\"end_toolbar\"].length>0)s[\"toolbar\"]=s[\"toolbar\"]+\",\"+s[\"end_toolbar\"];s[\"tab_toolbar\"]=s[\"toolbar\"].replace(/ /g,\"\").split(\",\");s[\"plugins\"]=s[\"plugins\"].replace(/ /g,\"\").split(\",\");for(i=0;i<s[\"plugins\"].length;i++){if(s[\"plugins\"][i].length==0)s[\"plugins\"].splice(i,1);}t.get_template();t.load_script(t.baseURL+\"langs/\"+s[\"language\"]+\".js\");if(s[\"syntax\"].length>0){s[\"syntax\"]=s[\"syntax\"].toLowerCase();t.load_script(t.baseURL+\"reg_syntax/\"+s[\"syntax\"]+\".js\");}eAs[s[\"id\"]]={\"settings\":s};eAs[s[\"id\"]][\"displayed\"]=false;eAs[s[\"id\"]][\"hidden\"]=false;t.start(s[\"id\"]);},delete_instance:function(id){var d=document,fs=window.frames,span,iframe;eAL.execCommand(id,\"EA_delete\");if(fs[\"frame_\"+id]&&fs[\"frame_\"+id].editArea){if(eAs[id][\"displayed\"])eAL.toggle(id,\"off\");fs[\"frame_\"+id].editArea.execCommand(\"EA_unload\");}span=d.getElementById(\"EditAreaArroundInfos_\"+id);if(span)span.parentNode.removeChild(span);iframe=d.getElementById(\"frame_\"+id);if(iframe){iframe.parentNode.removeChild(iframe);try{delete fs[\"frame_\"+id];}catch(e){}}delete eAs[id];},start:function(id){var t=this,d=document,f,span,father,next,html='',html_toolbar_content='',template,content,i;if(t.win!=\"loaded\"){setTimeout(\"eAL.start('\"+id+\"');\",50);return;}for(i in t.waiting_loading){if(t.waiting_loading[i]!=\"loaded\"&&typeof(t.waiting_loading[i])!=\"function\"){setTimeout(\"eAL.start('\"+id+\"');\",50);return;}}if(!t.lang[eAs[id][\"settings\"][\"language\"]]||(eAs[id][\"settings\"][\"syntax\"].length>0&&!t.load_syntax[eAs[id][\"settings\"][\"syntax\"]])){setTimeout(\"eAL.start('\"+id+\"');\",50);return;}if(eAs[id][\"settings\"][\"syntax\"].length>0)t.init_syntax_regexp();if(!d.getElementById(\"EditAreaArroundInfos_\"+id)&&(eAs[id][\"settings\"][\"debug\"]||eAs[id][\"settings\"][\"allow_toggle\"])){span=d.createElement(\"span\");span.id=\"EditAreaArroundInfos_\"+id;if(eAs[id][\"settings\"][\"allow_toggle\"]){checked=(eAs[id][\"settings\"][\"display\"]==\"onload\")?\"checked='checked'\":\"\";html+=\"<div id='edit_area_toggle_\"+i+\"'>\";html+=\"<input id='edit_area_toggle_checkbox_\"+id+\"' class='toggle_\"+id+\"' type='checkbox' onclick='eAL.toggle(\\\"\"+id+\"\\\");' accesskey='e' \"+checked+\" />\";html+=\"<label for='edit_area_toggle_checkbox_\"+id+\"'>{$toggle}</label></div>\";}if(eAs[id][\"settings\"][\"debug\"])html+=\"<textarea id='edit_area_debug_\"+id+\"' spellcheck='off' style='z-index:20;width:100%;height:120px;overflow:auto;border:solid black 1px;'></textarea><br />\";html=t.translate(html,eAs[id][\"settings\"][\"language\"]);span.innerHTML=html;father=d.getElementById(id).parentNode;next=d.getElementById(id).nextSibling;if(next==null)father.appendChild(span);\nelse father.insertBefore(span,next);}if(!eAs[id][\"initialized\"]){t.execCommand(id,\"EA_init\");if(eAs[id][\"settings\"][\"display\"]==\"later\"){eAs[id][\"initialized\"]=true;return;}}if(t.isIE){t.init_ie_textarea(id);}var area=eAs[id];for(i=0;i<area[\"settings\"][\"tab_toolbar\"].length;i++){html_toolbar_content+=t.get_control_html(area[\"settings\"][\"tab_toolbar\"][i],area[\"settings\"][\"language\"]);}html_toolbar_content=t.translate(html_toolbar_content,area[\"settings\"][\"language\"],\"template\");if(!t.iframe_script){t.iframe_script=\"\";for(i=0;i<t.sub_scripts_to_load.length;i++)t.iframe_script+='<script language=\"javascript\" type=\"text/javascript\" src=\"'+t.baseURL+t.sub_scripts_to_load[i]+'.js\"></script>';}for(i=0;i<area[\"settings\"][\"plugins\"].length;i++){if(!t.all_plugins_loaded)t.iframe_script+='<script language=\"javascript\" type=\"text/javascript\" src=\"'+t.baseURL+'plugins/'+area[\"settings\"][\"plugins\"][i]+'/'+area[\"settings\"][\"plugins\"][i]+'.js\"></script>';t.iframe_script+='<script language=\"javascript\" type=\"text/javascript\" src=\"'+t.baseURL+'plugins/'+area[\"settings\"][\"plugins\"][i]+'/langs/'+area[\"settings\"][\"language\"]+'.js\"></script>';}if(!t.iframe_css){t.iframe_css=\"<link href='\"+t.baseURL+\"edit_area.css' rel='stylesheet' type='text/css' />\";}template=t.template.replace(/\\[__BASEURL__\\]/g,t.baseURL);template=template.replace(\"[__TOOLBAR__]\",html_toolbar_content);template=t.translate(template,area[\"settings\"][\"language\"],\"template\");template=template.replace(\"[__CSSRULES__]\",t.iframe_css);template=template.replace(\"[__JSCODE__]\",t.iframe_script);template=template.replace(\"[__EA_VERSION__]\",t.version);area.textarea=d.getElementById(area[\"settings\"][\"id\"]);eAs[area[\"settings\"][\"id\"]][\"textarea\"]=area.textarea;if(typeof(window.frames[\"frame_\"+area[\"settings\"][\"id\"]])!='undefined')delete window.frames[\"frame_\"+area[\"settings\"][\"id\"]];father=area.textarea.parentNode;content=d.createElement(\"iframe\");content.name=\"frame_\"+area[\"settings\"][\"id\"];content.id=\"frame_\"+area[\"settings\"][\"id\"];content.style.borderWidth=\"0px\";setAttribute(content,\"frameBorder\",\"0\");content.style.overflow=\"hidden\";content.style.display=\"none\";next=area.textarea.nextSibling;if(next==null)father.appendChild(content);\nelse father.insertBefore(content,next);f=window.frames[\"frame_\"+area[\"settings\"][\"id\"]];f.document.open();f.eAs=eAs;f.area_id=area[\"settings\"][\"id\"];f.document.area_id=area[\"settings\"][\"id\"];f.document.write(template);f.document.close();},toggle:function(id,toggle_to){if(!toggle_to)toggle_to=(eAs[id][\"displayed\"]==true)?\"off\":\"on\";if(eAs[id][\"displayed\"]==true&&toggle_to==\"off\"){this.toggle_off(id);}\nelse if(eAs[id][\"displayed\"]==false&&toggle_to==\"on\"){this.toggle_on(id);}return false;},toggle_off:function(id){var fs=window.frames,f,t,parNod,nxtSib,selStart,selEnd,scrollTop,scrollLeft;if(fs[\"frame_\"+id]){f=fs[\"frame_\"+id];t=eAs[id][\"textarea\"];if(f.editArea.fullscreen['isFull'])f.editArea.toggle_full_screen(false);eAs[id][\"displayed\"]=false;t.wrap=\"off\";setAttribute(t,\"wrap\",\"off\");parNod=t.parentNode;nxtSib=t.nextSibling;parNod.removeChild(t);parNod.insertBefore(t,nxtSib);t.value=f.editArea.textarea.value;selStart=f.editArea.last_selection[\"selectionStart\"];selEnd=f.editArea.last_selection[\"selectionEnd\"];scrollTop=f.document.getElementById(\"result\").scrollTop;scrollLeft=f.document.getElementById(\"result\").scrollLeft;document.getElementById(\"frame_\"+id).style.display='none';t.style.display=\"inline\";try{t.focus();}catch(e){};if(this.isIE){t.selectionStart=selStart;t.selectionEnd=selEnd;t.focused=true;set_IE_selection(t);}\nelse{if(this.isOpera&&this.isOpera < 9.6){t.setSelectionRange(0,0);}try{t.setSelectionRange(selStart,selEnd);}catch(e){};}t.scrollTop=scrollTop;t.scrollLeft=scrollLeft;f.editArea.execCommand(\"toggle_off\");}},toggle_on:function(id){var fs=window.frames,f,t,selStart=0,selEnd=0,scrollTop=0,scrollLeft=0,curPos,elem;if(fs[\"frame_\"+id]){f=fs[\"frame_\"+id];t=eAs[id][\"textarea\"];area=f.editArea;area.textarea.value=t.value;curPos=eAs[id][\"settings\"][\"cursor_position\"];if(t.use_last==true){selStart=t.last_selectionStart;selEnd=t.last_selectionEnd;scrollTop=t.last_scrollTop;scrollLeft=t.last_scrollLeft;t.use_last=false;}\nelse if(curPos==\"auto\"){try{selStart=t.selectionStart;selEnd=t.selectionEnd;scrollTop=t.scrollTop;scrollLeft=t.scrollLeft;}catch(ex){}}this.set_editarea_size_from_textarea(id,document.getElementById(\"frame_\"+id));t.style.display=\"none\";document.getElementById(\"frame_\"+id).style.display=\"inline\";area.execCommand(\"focus\");eAs[id][\"displayed\"]=true;area.execCommand(\"update_size\");f.document.getElementById(\"result\").scrollTop=scrollTop;f.document.getElementById(\"result\").scrollLeft=scrollLeft;area.area_select(selStart,selEnd-selStart);area.execCommand(\"toggle_on\");}\nelse{elem=document.getElementById(id);elem.last_selectionStart=elem.selectionStart;elem.last_selectionEnd=elem.selectionEnd;elem.last_scrollTop=elem.scrollTop;elem.last_scrollLeft=elem.scrollLeft;elem.use_last=true;eAL.start(id);}},set_editarea_size_from_textarea:function(id,frame){var elem,width,height;elem=document.getElementById(id);width=Math.max(eAs[id][\"settings\"][\"min_width\"],elem.offsetWidth)+\"px\";height=Math.max(eAs[id][\"settings\"][\"min_height\"],elem.offsetHeight)+\"px\";if(elem.style.width.indexOf(\"%\")!=-1)width=elem.style.width;if(elem.style.height.indexOf(\"%\")!=-1)height=elem.style.height;frame.style.width=width;frame.style.height=height;},set_base_url:function(){var t=this,elems,i,docBasePath;if(!this.baseURL){elems=document.getElementsByTagName('script');for(i=0;i<elems.length;i++){if(elems[i].src&&elems[i].src.match(/edit_area_[^\\\\\\/]*$/i)){var src=unescape(elems[i].src);src=src.substring(0,src.lastIndexOf('/'));this.baseURL=src;this.file_name=elems[i].src.substr(elems[i].src.lastIndexOf(\"/\")+1);break;}}}docBasePath=document.location.href;if(docBasePath.indexOf('?')!=-1)docBasePath=docBasePath.substring(0,docBasePath.indexOf('?'));docBasePath=docBasePath.substring(0,docBasePath.lastIndexOf('/'));if(t.baseURL.indexOf('://')==-1&&t.baseURL.charAt(0)!='/'){t.baseURL=docBasePath+\"/\"+t.baseURL;}t.baseURL+=\"/\";},get_button_html:function(id,img,exec,isFileSpecific,baseURL){var cmd,html;if(!baseURL)baseURL=this.baseURL;cmd='editArea.execCommand(\\''+exec+'\\')';html='<a id=\"a_'+id+'\" href=\"javascript:'+cmd+'\" onclick=\"'+cmd+';return false;\" onmousedown=\"return false;\" target=\"_self\" fileSpecific=\"'+(isFileSpecific?'yes':'no')+'\">';html+='<img id=\"'+id+'\" src=\"'+baseURL+'images/'+img+'\" title=\"{$'+id+'}\" width=\"20\" height=\"20\" class=\"editAreaButtonNormal\" onmouseover=\"editArea.switchClass(this,\\'editAreaButtonOver\\');\" onmouseout=\"editArea.restoreClass(this);\" onmousedown=\"editArea.restoreAndSwitchClass(this,\\'editAreaButtonDown\\');\" /></a>';return html;},get_control_html:function(button_name,lang){var t=this,i,but,html,si;for(i=0;i<t.advanced_buttons.length;i++){but=t.advanced_buttons[i];if(but[0]==button_name){return t.get_button_html(but[0],but[1],but[2],but[3]);}}switch(button_name){case \"*\":case \"return\":return \"<br />\";case \"|\":case \"separator\":return '<img src=\"'+t.baseURL+'images/spacer.gif\" width=\"1\" height=\"15\" class=\"editAreaSeparatorLine\">';case \"select_font\":html=\"<select id='area_font_size' onchange='javascript:editArea.execCommand(\\\"change_font_size\\\")' fileSpecific='yes'>\";html+=\"<option value='-1'>{$font_size}</option>\";si=[8,9,10,11,12,14];for(i=0;i<si.length;i++){html+=\"<option value='\"+si[i]+\"'>\"+si[i]+\" pt</option>\";}html+=\"</select>\";return html;case \"syntax_selection\":html=\"<select id='syntax_selection' onchange='javascript:editArea.execCommand(\\\"change_syntax\\\",this.value)' fileSpecific='yes'>\";html+=\"<option value='-1'>{$syntax_selection}</option>\";html+=\"</select>\";return html;}return \"<span id='tmp_tool_\"+button_name+\"'>[\"+button_name+\"]</span>\";},get_template:function(){if(this.template==\"\"){var xhr_object=null;if(window.XMLHttpRequest)xhr_object=new XMLHttpRequest();\nelse if(window.ActiveXObject)xhr_object=new ActiveXObject(\"Microsoft.XMLHTTP\");\nelse{alert(\"XMLHTTPRequest not supported. EditArea not loaded\");return;}xhr_object.open(\"GET\",this.baseURL+\"template.html\",false);xhr_object.send(null);if(xhr_object.readyState==4)this.template=xhr_object.responseText;\nelse this.has_error();}},translate:function(text,lang,mode){if(mode==\"word\")text=eAL.get_word_translation(text,lang);\nelse if(mode=\"template\"){eAL.current_language=lang;text=text.replace(/\\{\\$([^\\}]+)\\}/gm,eAL.translate_template);}return text;},translate_template:function(){return eAL.get_word_translation(EAL.prototype.translate_template.arguments[1],eAL.current_language);},get_word_translation:function(val,lang){var i;for(i in eAL.lang[lang]){if(i==val)return eAL.lang[lang][i];}return \"_\"+val;},load_script:function(url){var t=this,d=document,script,head;if(t.loadedFiles[url])return;try{script=d.createElement(\"script\");script.type=\"text/javascript\";script.src=url;script.charset=\"UTF-8\";d.getElementsByTagName(\"head\")[0].appendChild(script);}catch(e){d.write('<sc'+'ript language=\"javascript\" type=\"text/javascript\" src=\"'+url+'\" charset=\"UTF-8\"></sc'+'ript>');}t.loadedFiles[url]=true;},add_event:function(obj,name,handler){try{if(obj.attachEvent){obj.attachEvent(\"on\"+name,handler);}\nelse{obj.addEventListener(name,handler,false);}}catch(e){}},remove_event:function(obj,name,handler){try{if(obj.detachEvent)obj.detachEvent(\"on\"+name,handler);\nelse obj.removeEventListener(name,handler,false);}catch(e){}},reset:function(e){var formObj,is_child,i,x;formObj=eAL.isIE ? window.event.srcElement:e.target;if(formObj.tagName!='FORM')formObj=formObj.form;for(i in eAs){is_child=false;for(x=0;x<formObj.elements.length;x++){if(formObj.elements[x].id==i)is_child=true;}if(window.frames[\"frame_\"+i]&&is_child&&eAs[i][\"displayed\"]==true){var exec='window.frames[\"frame_'+i+'\"].editArea.textarea.value=document.getElementById(\"'+i+'\").value;';exec+='window.frames[\"frame_'+i+'\"].editArea.execCommand(\"focus\");';exec+='window.frames[\"frame_'+i+'\"].editArea.check_line_selection();';exec+='window.frames[\"frame_'+i+'\"].editArea.execCommand(\"reset\");';window.setTimeout(exec,10);}}return;},submit:function(e){var formObj,is_child,fs=window.frames,i,x;formObj=eAL.isIE ? window.event.srcElement:e.target;if(formObj.tagName!='FORM')formObj=formObj.form;for(i in eAs){is_child=false;for(x=0;x<formObj.elements.length;x++){if(formObj.elements[x].id==i)is_child=true;}if(is_child){if(fs[\"frame_\"+i]&&eAs[i][\"displayed\"]==true)document.getElementById(i).value=fs[\"frame_\"+i].editArea.textarea.value;eAL.execCommand(i,\"EA_submit\");}}if(typeof(formObj.edit_area_replaced_submit)==\"function\"){res=formObj.edit_area_replaced_submit();if(res==false){if(eAL.isIE)return false;\nelse e.preventDefault();}}return;},getValue:function(id){if(window.frames[\"frame_\"+id]&&eAs[id][\"displayed\"]==true){return window.frames[\"frame_\"+id].editArea.textarea.value;}\nelse if(elem=document.getElementById(id)){return elem.value;}return false;},setValue:function(id,new_val){var fs=window.frames;if((f=fs[\"frame_\"+id])&&eAs[id][\"displayed\"]==true){f.editArea.textarea.value=new_val;f.editArea.execCommand(\"focus\");f.editArea.check_line_selection(false);f.editArea.execCommand(\"onchange\");}\nelse if(elem=document.getElementById(id)){elem.value=new_val;}},getSelectionRange:function(id){var sel,eA,fs=window.frames;sel={\"start\":0,\"end\":0};if(fs[\"frame_\"+id]&&eAs[id][\"displayed\"]==true){eA=fs[\"frame_\"+id].editArea;sel[\"start\"]=eA.textarea.selectionStart;sel[\"end\"]=eA.textarea.selectionEnd;}\nelse if(elem=document.getElementById(id)){sel=getSelectionRange(elem);}return sel;},setSelectionRange:function(id,new_start,new_end){var fs=window.frames;if(fs[\"frame_\"+id]&&eAs[id][\"displayed\"]==true){fs[\"frame_\"+id].editArea.area_select(new_start,new_end-new_start);if(!this.isIE){fs[\"frame_\"+id].editArea.check_line_selection(false);fs[\"frame_\"+id].editArea.scroll_to_view();}}\nelse if(elem=document.getElementById(id)){setSelectionRange(elem,new_start,new_end);}},getSelectedText:function(id){var sel=this.getSelectionRange(id);return this.getValue(id).substring(sel[\"start\"],sel[\"end\"]);},setSelectedText:function(id,new_val){var fs=window.frames,d=document,sel,text,scrollTop,scrollLeft,new_sel_end;new_val=new_val.replace(/\\r/g,\"\");sel=this.getSelectionRange(id);text=this.getValue(id);if(fs[\"frame_\"+id]&&eAs[id][\"displayed\"]==true){scrollTop=fs[\"frame_\"+id].document.getElementById(\"result\").scrollTop;scrollLeft=fs[\"frame_\"+id].document.getElementById(\"result\").scrollLeft;}\nelse{scrollTop=d.getElementById(id).scrollTop;scrollLeft=d.getElementById(id).scrollLeft;}text=text.substring(0,sel[\"start\"])+new_val+text.substring(sel[\"end\"]);this.setValue(id,text);new_sel_end=sel[\"start\"]+new_val.length;this.setSelectionRange(id,sel[\"start\"],new_sel_end);if(new_val !=this.getSelectedText(id).replace(/\\r/g,\"\")){this.setSelectionRange(id,sel[\"start\"],new_sel_end+new_val.split(\"\\n\").length-1);}if(fs[\"frame_\"+id]&&eAs[id][\"displayed\"]==true){fs[\"frame_\"+id].document.getElementById(\"result\").scrollTop=scrollTop;fs[\"frame_\"+id].document.getElementById(\"result\").scrollLeft=scrollLeft;fs[\"frame_\"+id].editArea.execCommand(\"onchange\");}\nelse{d.getElementById(id).scrollTop=scrollTop;d.getElementById(id).scrollLeft=scrollLeft;}},insertTags:function(id,open_tag,close_tag){var old_sel,new_sel;old_sel=this.getSelectionRange(id);text=open_tag+this.getSelectedText(id)+close_tag;eAL.setSelectedText(id,text);new_sel=this.getSelectionRange(id);if(old_sel[\"end\"] > old_sel[\"start\"])this.setSelectionRange(id,new_sel[\"end\"],new_sel[\"end\"]);\nelse this.setSelectionRange(id,old_sel[\"start\"]+open_tag.length,old_sel[\"start\"]+open_tag.length);},hide:function(id){var fs=window.frames,d=document,t=this,scrollTop,scrollLeft,span;if(d.getElementById(id)&&!t.hidden[id]){t.hidden[id]={};t.hidden[id][\"selectionRange\"]=t.getSelectionRange(id);if(d.getElementById(id).style.display!=\"none\"){t.hidden[id][\"scrollTop\"]=d.getElementById(id).scrollTop;t.hidden[id][\"scrollLeft\"]=d.getElementById(id).scrollLeft;}if(fs[\"frame_\"+id]){t.hidden[id][\"toggle\"]=eAs[id][\"displayed\"];if(fs[\"frame_\"+id]&&eAs[id][\"displayed\"]==true){scrollTop=fs[\"frame_\"+id].document.getElementById(\"result\").scrollTop;scrollLeft=fs[\"frame_\"+id].document.getElementById(\"result\").scrollLeft;}\nelse{scrollTop=d.getElementById(id).scrollTop;scrollLeft=d.getElementById(id).scrollLeft;}t.hidden[id][\"scrollTop\"]=scrollTop;t.hidden[id][\"scrollLeft\"]=scrollLeft;if(eAs[id][\"displayed\"]==true)eAL.toggle_off(id);}span=d.getElementById(\"EditAreaArroundInfos_\"+id);if(span){span.style.display='none';}d.getElementById(id).style.display=\"none\";}},show:function(id){var fs=window.frames,d=document,t=this,span;if((elem=d.getElementById(id))&&t.hidden[id]){elem.style.display=\"inline\";elem.scrollTop=t.hidden[id][\"scrollTop\"];elem.scrollLeft=t.hidden[id][\"scrollLeft\"];span=d.getElementById(\"EditAreaArroundInfos_\"+id);if(span){span.style.display='inline';}if(fs[\"frame_\"+id]){elem.style.display=\"inline\";if(t.hidden[id][\"toggle\"]==true)eAL.toggle_on(id);scrollTop=t.hidden[id][\"scrollTop\"];scrollLeft=t.hidden[id][\"scrollLeft\"];if(fs[\"frame_\"+id]&&eAs[id][\"displayed\"]==true){fs[\"frame_\"+id].document.getElementById(\"result\").scrollTop=scrollTop;fs[\"frame_\"+id].document.getElementById(\"result\").scrollLeft=scrollLeft;}\nelse{elem.scrollTop=scrollTop;elem.scrollLeft=scrollLeft;}}sel=t.hidden[id][\"selectionRange\"];t.setSelectionRange(id,sel[\"start\"],sel[\"end\"]);delete t.hidden[id];}},getCurrentFile:function(id){return this.execCommand(id,'get_file',this.execCommand(id,'curr_file'));},getFile:function(id,file_id){return this.execCommand(id,'get_file',file_id);},getAllFiles:function(id){return this.execCommand(id,'get_all_files()');},openFile:function(id,file_infos){return this.execCommand(id,'open_file',file_infos);},closeFile:function(id,file_id){return this.execCommand(id,'close_file',file_id);},setFileEditedMode:function(id,file_id,to){var reg1,reg2;reg1=new RegExp('\\\\\\\\','g');reg2=new RegExp('\"','g');return this.execCommand(id,'set_file_edited_mode(\"'+file_id.replace(reg1,'\\\\\\\\').replace(reg2,'\\\\\"')+'\",'+to+')');},execCommand:function(id,cmd,fct_param){switch(cmd){case \"EA_init\":if(eAs[id]['settings'][\"EA_init_callback\"].length>0)eval(eAs[id]['settings'][\"EA_init_callback\"]+\"('\"+id+\"');\");break;case \"EA_delete\":if(eAs[id]['settings'][\"EA_delete_callback\"].length>0)eval(eAs[id]['settings'][\"EA_delete_callback\"]+\"('\"+id+\"');\");break;case \"EA_submit\":if(eAs[id]['settings'][\"submit_callback\"].length>0)eval(eAs[id]['settings'][\"submit_callback\"]+\"('\"+id+\"');\");break;}if(window.frames[\"frame_\"+id]&&window.frames[\"frame_\"+id].editArea){if(fct_param!=undefined)return eval('window.frames[\"frame_'+id+'\"].editArea.'+cmd+'(fct_param);');\nelse return eval('window.frames[\"frame_'+id+'\"].editArea.'+cmd+';');}return false;}};var eAL=new EAL();var eAs={}; function getAttribute(elm,aName){var aValue,taName,i;try{aValue=elm.getAttribute(aName);}catch(exept){}if(! aValue){for(i=0;i < elm.attributes.length;i++){taName=elm.attributes[i] .name.toLowerCase();if(taName==aName){aValue=elm.attributes[i] .value;return aValue;}}}return aValue;};function setAttribute(elm,attr,val){if(attr==\"class\"){elm.setAttribute(\"className\",val);elm.setAttribute(\"class\",val);}\nelse{elm.setAttribute(attr,val);}};function getChildren(elem,elem_type,elem_attribute,elem_attribute_match,option,depth){if(!option)var option=\"single\";if(!depth)var depth=-1;if(elem){var children=elem.childNodes;var result=null;var results=[];for(var x=0;x<children.length;x++){strTagName=new String(children[x].tagName);children_class=\"?\";if(strTagName!=\"undefined\"){child_attribute=getAttribute(children[x],elem_attribute);if((strTagName.toLowerCase()==elem_type.toLowerCase()||elem_type==\"\")&&(elem_attribute==\"\"||child_attribute==elem_attribute_match)){if(option==\"all\"){results.push(children[x]);}\nelse{return children[x];}}if(depth!=0){result=getChildren(children[x],elem_type,elem_attribute,elem_attribute_match,option,depth-1);if(option==\"all\"){if(result.length>0){results=results.concat(result);}}\nelse if(result!=null){return result;}}}}if(option==\"all\")return results;}return null;};function isChildOf(elem,parent){if(elem){if(elem==parent)return true;while(elem.parentNode !='undefined'){return isChildOf(elem.parentNode,parent);}}return false;};function getMouseX(e){if(e!=null&&typeof(e.pageX)!=\"undefined\"){return e.pageX;}\nelse{return(e!=null?e.x:event.x)+document.documentElement.scrollLeft;}};function getMouseY(e){if(e!=null&&typeof(e.pageY)!=\"undefined\"){return e.pageY;}\nelse{return(e!=null?e.y:event.y)+document.documentElement.scrollTop;}};function calculeOffsetLeft(r){return calculeOffset(r,\"offsetLeft\")};function calculeOffsetTop(r){return calculeOffset(r,\"offsetTop\")};function calculeOffset(element,attr){var offset=0;while(element){offset+=element[attr];element=element.offsetParent}return offset;};function get_css_property(elem,prop){if(document.defaultView){return document.defaultView.getComputedStyle(elem,null).getPropertyValue(prop);}\nelse if(elem.currentStyle){var prop=prop.replace(/-\\D/gi,function(sMatch){return sMatch.charAt(sMatch.length-1).toUpperCase();});return elem.currentStyle[prop];}\nelse return null;}var _mCE;function start_move_element(e,id,frame){var elem_id=(e.target||e.srcElement).id;if(id)elem_id=id;if(!frame)frame=window;if(frame.event)e=frame.event;_mCE=frame.document.getElementById(elem_id);_mCE.frame=frame;frame.document.onmousemove=move_element;frame.document.onmouseup=end_move_element;mouse_x=getMouseX(e);mouse_y=getMouseY(e);_mCE.start_pos_x=mouse_x-(_mCE.style.left.replace(\"px\",\"\")||calculeOffsetLeft(_mCE));_mCE.start_pos_y=mouse_y-(_mCE.style.top.replace(\"px\",\"\")||calculeOffsetTop(_mCE));return false;};function end_move_element(e){_mCE.frame.document.onmousemove=\"\";_mCE.frame.document.onmouseup=\"\";_mCE=null;};function move_element(e){var newTop,newLeft,maxLeft;if(_mCE.frame&&_mCE.frame.event)e=_mCE.frame.event;newTop=getMouseY(e)-_mCE.start_pos_y;newLeft=getMouseX(e)-_mCE.start_pos_x;maxLeft=_mCE.frame.document.body.offsetWidth-_mCE.offsetWidth;max_top=_mCE.frame.document.body.offsetHeight-_mCE.offsetHeight;newTop=Math.min(Math.max(0,newTop),max_top);newLeft=Math.min(Math.max(0,newLeft),maxLeft);_mCE.style.top=newTop+\"px\";_mCE.style.left=newLeft+\"px\";return false;};var nav=eAL.nav;function getSelectionRange(textarea){return{\"start\":textarea.selectionStart,\"end\":textarea.selectionEnd};};function setSelectionRange(t,start,end){t.focus();start=Math.max(0,Math.min(t.value.length,start));end=Math.max(start,Math.min(t.value.length,end));if(nav.isOpera&&nav.isOpera < 9.6){t.selectionEnd=1;t.selectionStart=0;t.selectionEnd=1;t.selectionStart=0;}t.selectionStart=start;t.selectionEnd=end;if(nav.isIE)set_IE_selection(t);};function get_IE_selection(t){var d=document,div,range,stored_range,elem,scrollTop,relative_top,line_start,line_nb,range_start,range_end,tab;if(t&&t.focused){if(!t.ea_line_height){div=d.createElement(\"div\");div.style.fontFamily=get_css_property(t,\"font-family\");div.style.fontSize=get_css_property(t,\"font-size\");div.style.visibility=\"hidden\";div.innerHTML=\"0\";d.body.appendChild(div);t.ea_line_height=div.offsetHeight;d.body.removeChild(div);}range=d.selection.createRange();try{stored_range=range.duplicate();stored_range.moveToElementText(t);stored_range.setEndPoint('EndToEnd',range);if(stored_range.parentElement()==t){elem=t;scrollTop=0;while(elem.parentNode){scrollTop+=elem.scrollTop;elem=elem.parentNode;}relative_top=range.offsetTop-calculeOffsetTop(t)+scrollTop;line_start=Math.round((relative_top / t.ea_line_height)+1);line_nb=Math.round(range.boundingHeight / t.ea_line_height);range_start=stored_range.text.length-range.text.length;tab=t.value.substr(0,range_start).split(\"\\n\");range_start+=(line_start-tab.length)*2;t.selectionStart=range_start;range_end=t.selectionStart+range.text.length;tab=t.value.substr(0,range_start+range.text.length).split(\"\\n\");range_end+=(line_start+line_nb-1-tab.length)*2;t.selectionEnd=range_end;}}catch(e){}}if(t&&t.id){setTimeout(\"get_IE_selection(document.getElementById('\"+t.id+\"'));\",50);}};function IE_textarea_focus(){event.srcElement.focused=true;}function IE_textarea_blur(){event.srcElement.focused=false;}function set_IE_selection(t){var nbLineStart,nbLineStart,nbLineEnd,range;if(!window.closed){nbLineStart=t.value.substr(0,t.selectionStart).split(\"\\n\").length-1;nbLineEnd=t.value.substr(0,t.selectionEnd).split(\"\\n\").length-1;try{range=document.selection.createRange();range.moveToElementText(t);range.setEndPoint('EndToStart',range);range.moveStart('character',t.selectionStart-nbLineStart);range.moveEnd('character',t.selectionEnd-nbLineEnd-(t.selectionStart-nbLineStart));range.select();}catch(e){}}};eAL.waiting_loading[\"elements_functions.js\"]=\"loaded\";\n EAL.prototype.start_resize_area=function(){var d=document,a,div,width,height,father;d.onmouseup=eAL.end_resize_area;d.onmousemove=eAL.resize_area;eAL.toggle(eAL.resize[\"id\"]);a=eAs[eAL.resize[\"id\"]][\"textarea\"];div=d.getElementById(\"edit_area_resize\");if(!div){div=d.createElement(\"div\");div.id=\"edit_area_resize\";div.style.border=\"dashed #888888 1px\";}width=a.offsetWidth-2;height=a.offsetHeight-2;div.style.display=\"block\";div.style.width=width+\"px\";div.style.height=height+\"px\";father=a.parentNode;father.insertBefore(div,a);a.style.display=\"none\";eAL.resize[\"start_top\"]=calculeOffsetTop(div);eAL.resize[\"start_left\"]=calculeOffsetLeft(div);};EAL.prototype.end_resize_area=function(e){var d=document,div,a,width,height;d.onmouseup=\"\";d.onmousemove=\"\";div=d.getElementById(\"edit_area_resize\");a=eAs[eAL.resize[\"id\"]][\"textarea\"];width=Math.max(eAs[eAL.resize[\"id\"]][\"settings\"][\"min_width\"],div.offsetWidth-4);height=Math.max(eAs[eAL.resize[\"id\"]][\"settings\"][\"min_height\"],div.offsetHeight-4);if(eAL.isIE==6){width-=2;height-=2;}a.style.width=width+\"px\";a.style.height=height+\"px\";div.style.display=\"none\";a.style.display=\"inline\";a.selectionStart=eAL.resize[\"selectionStart\"];a.selectionEnd=eAL.resize[\"selectionEnd\"];eAL.toggle(eAL.resize[\"id\"]);return false;};EAL.prototype.resize_area=function(e){var allow,newHeight,newWidth;allow=eAs[eAL.resize[\"id\"]][\"settings\"][\"allow_resize\"];if(allow==\"both\"||allow==\"y\"){newHeight=Math.max(20,getMouseY(e)-eAL.resize[\"start_top\"]);document.getElementById(\"edit_area_resize\").style.height=newHeight+\"px\";}if(allow==\"both\"||allow==\"x\"){newWidth=Math.max(20,getMouseX(e)-eAL.resize[\"start_left\"]);document.getElementById(\"edit_area_resize\").style.width=newWidth+\"px\";}return false;};eAL.waiting_loading[\"resize_area.js\"]=\"loaded\";\n\tEAL.prototype.get_regexp=function(text_array){res=\"(\\\\b)(\";for(i=0;i<text_array.length;i++){if(i>0)res+=\"|\";res+=this.get_escaped_regexp(text_array[i]);}res+=\")(\\\\b)\";reg=new RegExp(res);return res;};EAL.prototype.get_escaped_regexp=function(str){return str.toString().replace(/(\\.|\\?|\\*|\\+|\\\\|\\(|\\)|\\[|\\]|\\}|\\{|\\$|\\^|\\|)/g,\"\\\\$1\");};EAL.prototype.init_syntax_regexp=function(){var lang_style={};for(var lang in this.load_syntax){if(!this.syntax[lang]){this.syntax[lang]={};this.syntax[lang][\"keywords_reg_exp\"]={};this.keywords_reg_exp_nb=0;if(this.load_syntax[lang]['KEYWORDS']){param=\"g\";if(this.load_syntax[lang]['KEYWORD_CASE_SENSITIVE']===false)param+=\"i\";for(var i in this.load_syntax[lang]['KEYWORDS']){if(typeof(this.load_syntax[lang]['KEYWORDS'][i])==\"function\")continue;this.syntax[lang][\"keywords_reg_exp\"][i]=new RegExp(this.get_regexp(this.load_syntax[lang]['KEYWORDS'][i]),param);this.keywords_reg_exp_nb++;}}if(this.load_syntax[lang]['OPERATORS']){var str=\"\";var nb=0;for(var i in this.load_syntax[lang]['OPERATORS']){if(typeof(this.load_syntax[lang]['OPERATORS'][i])==\"function\")continue;if(nb>0)str+=\"|\";str+=this.get_escaped_regexp(this.load_syntax[lang]['OPERATORS'][i]);nb++;}if(str.length>0)this.syntax[lang][\"operators_reg_exp\"]=new RegExp(\"(\"+str+\")\",\"g\");}if(this.load_syntax[lang]['DELIMITERS']){var str=\"\";var nb=0;for(var i in this.load_syntax[lang]['DELIMITERS']){if(typeof(this.load_syntax[lang]['DELIMITERS'][i])==\"function\")continue;if(nb>0)str+=\"|\";str+=this.get_escaped_regexp(this.load_syntax[lang]['DELIMITERS'][i]);nb++;}if(str.length>0)this.syntax[lang][\"delimiters_reg_exp\"]=new RegExp(\"(\"+str+\")\",\"g\");}var syntax_trace=[];this.syntax[lang][\"quotes\"]={};var quote_tab=[];if(this.load_syntax[lang]['QUOTEMARKS']){for(var i in this.load_syntax[lang]['QUOTEMARKS']){if(typeof(this.load_syntax[lang]['QUOTEMARKS'][i])==\"function\")continue;var x=this.get_escaped_regexp(this.load_syntax[lang]['QUOTEMARKS'][i]);this.syntax[lang][\"quotes\"][x]=x;quote_tab[quote_tab.length]=\"(\"+x+\"(\\\\\\\\.|[^\"+x+\"])*(?:\"+x+\"|$))\";syntax_trace.push(x);}}this.syntax[lang][\"comments\"]={};if(this.load_syntax[lang]['COMMENT_SINGLE']){for(var i in this.load_syntax[lang]['COMMENT_SINGLE']){if(typeof(this.load_syntax[lang]['COMMENT_SINGLE'][i])==\"function\")continue;var x=this.get_escaped_regexp(this.load_syntax[lang]['COMMENT_SINGLE'][i]);quote_tab[quote_tab.length]=\"(\"+x+\"(.|\\\\r|\\\\t)*(\\\\n|$))\";syntax_trace.push(x);this.syntax[lang][\"comments\"][x]=\"\\n\";}}if(this.load_syntax[lang]['COMMENT_MULTI']){for(var i in this.load_syntax[lang]['COMMENT_MULTI']){if(typeof(this.load_syntax[lang]['COMMENT_MULTI'][i])==\"function\")continue;var start=this.get_escaped_regexp(i);var end=this.get_escaped_regexp(this.load_syntax[lang]['COMMENT_MULTI'][i]);quote_tab[quote_tab.length]=\"(\"+start+\"(.|\\\\n|\\\\r)*?(\"+end+\"|$))\";syntax_trace.push(start);syntax_trace.push(end);this.syntax[lang][\"comments\"][i]=this.load_syntax[lang]['COMMENT_MULTI'][i];}}if(quote_tab.length>0)this.syntax[lang][\"comment_or_quote_reg_exp\"]=new RegExp(\"(\"+quote_tab.join(\"|\")+\")\",\"gi\");if(syntax_trace.length>0)this.syntax[lang][\"syntax_trace_regexp\"]=new RegExp(\"((.|\\n)*?)(\\\\\\\\*(\"+syntax_trace.join(\"|\")+\"|$))\",\"gmi\");if(this.load_syntax[lang]['SCRIPT_DELIMITERS']){this.syntax[lang][\"script_delimiters\"]={};for(var i in this.load_syntax[lang]['SCRIPT_DELIMITERS']){if(typeof(this.load_syntax[lang]['SCRIPT_DELIMITERS'][i])==\"function\")continue;this.syntax[lang][\"script_delimiters\"][i]=this.load_syntax[lang]['SCRIPT_DELIMITERS'];}}this.syntax[lang][\"custom_regexp\"]={};if(this.load_syntax[lang]['REGEXPS']){for(var i in this.load_syntax[lang]['REGEXPS']){if(typeof(this.load_syntax[lang]['REGEXPS'][i])==\"function\")continue;var val=this.load_syntax[lang]['REGEXPS'][i];if(!this.syntax[lang][\"custom_regexp\"][val['execute']])this.syntax[lang][\"custom_regexp\"][val['execute']]={};this.syntax[lang][\"custom_regexp\"][val['execute']][i]={'regexp':new RegExp(val['search'],val['modifiers']),'class':val['class']};}}if(this.load_syntax[lang]['STYLES']){lang_style[lang]={};for(var i in this.load_syntax[lang]['STYLES']){if(typeof(this.load_syntax[lang]['STYLES'][i])==\"function\")continue;if(typeof(this.load_syntax[lang]['STYLES'][i])!=\"string\"){for(var j in this.load_syntax[lang]['STYLES'][i]){lang_style[lang][j]=this.load_syntax[lang]['STYLES'][i][j];}}\nelse{lang_style[lang][i]=this.load_syntax[lang]['STYLES'][i];}}}var style=\"\";for(var i in lang_style[lang]){if(lang_style[lang][i].length>0){style+=\".\"+lang+\" .\"+i.toLowerCase()+\" span{\"+lang_style[lang][i]+\"}\\n\";style+=\".\"+lang+\" .\"+i.toLowerCase()+\"{\"+lang_style[lang][i]+\"}\\n\";}}this.syntax[lang][\"styles\"]=style;}}};eAL.waiting_loading[\"reg_syntax.js\"]=\"loaded\";\nvar editAreaLoader= eAL;var editAreas=eAs;EditAreaLoader=EAL;editAreaLoader.iframe_script= \"<script type='text/javascript'> Ã EA(){var t=Á;t.error=Ì;t.inlinePopup=[{popup_id:\\\"area_search_replace\\\",icon_id:\\\"search\\\"},{popup_id:\\\"edit_area_help\\\",icon_id:\\\"help\\\"}];t.plugins={};t.line_number=0;È.eAL.set_browser_infos(t);if(t.isIE >=8)t.isIE=7;t.É={};t.last_text_to_highlight=\\\"\\\";t.last_hightlighted_text=\\\"\\\";t.syntax_list=[];t.allready_used_syntax={};t.check_line_selection_timer=50;t.ÂFocused=Ì;t.highlight_selection_line=null;t.previous=[];t.next=[];t.last_undo=\\\"\\\";t.files={};t.filesIdAssoc={};t.curr_file='';t.assocBracket={};t.revertAssocBracket={};t.assocBracket[\\\"(\\\"]=\\\")\\\";t.assocBracket[\\\"{\\\"]=\\\"}\\\";t.assocBracket[\\\"[\\\"]=\\\"]\\\";for(var index in t.assocBracket){t.revertAssocBracket[t.assocBracket[index]]=index;}t.is_editable=Ë;t.lineHeight=16;t.tab_nb_char=8;if(t.isOpera)t.tab_nb_char=6;t.is_tabbing=Ì;t.fullscreen={'isFull':Ì};t.isResizing=Ì;t.id=area_id;t.Å=eAs[t.id][\\\"Å\\\"];if((\\\"\\\"+t.Å['replace_tab_by_spaces']).match(/^[0-9]+$/)){t.tab_nb_char=t.Å['replace_tab_by_spaces'];t.tabulation=\\\"\\\";for(var i=0;i<t.tab_nb_char;i++)t.tabulation+=\\\" \\\";}\\nelse{t.tabulation=\\\"\\t\\\";}if(t.Å[\\\"syntax_selection_allow\\\"]&&t.Å[\\\"syntax_selection_allow\\\"].Æ>0)t.syntax_list=t.Å[\\\"syntax_selection_allow\\\"].replace(/ /g,\\\"\\\").split(\\\",\\\");if(t.Å['syntax'])t.allready_used_syntax[t.Å['syntax']]=Ë;};EA.Ä.init=Ã(){var t=Á,a,s=t.Å;t.Â=_$(\\\"Â\\\");t.container=_$(\\\"container\\\");t.result=_$(\\\"result\\\");t.content_highlight=_$(\\\"content_highlight\\\");t.selection_field=_$(\\\"selection_field\\\");t.selection_field_text=_$(\\\"selection_field_text\\\");t.processing_screen=_$(\\\"processing\\\");t.editor_area=_$(\\\"editor\\\");t.tab_browsing_area=_$(\\\"tab_browsing_area\\\");t.test_font_size=_$(\\\"test_font_size\\\");a=t.Â;if(!s['is_editable'])t.set_editable(Ì);t.set_show_line_colors(s['show_line_colors']);if(syntax_selec=_$(\\\"syntax_selection\\\")){for(var i=0;i<t.syntax_list.Æ;i++){var syntax=t.syntax_list[i];var option=document.createElement(\\\"option\\\");option.Ê=syntax;if(syntax==s['syntax'])option.selected=\\\"selected\\\";dispSyntax=È.eAL.syntax_display_name[ syntax ];option.innerHTML=typeof(dispSyntax)=='undefined' ? syntax.substring(0,1).toUpperCase()+syntax.substring(1):dispSyntax;syntax_selec.appendChild(option);}}spans=È.getChildren(_$(\\\"toolbar_1\\\"),\\\"span\\\",\\\"\\\",\\\"\\\",\\\"all\\\",-1);for(var i=0;i<spans.Æ;i++){id=spans[i].id.replace(/tmp_tool_(.*)/,\\\"$1\\\");if(id!=spans[i].id){for(var j in t.plugins){if(typeof(t.plugins[j].get_control_html)==\\\"Ã\\\"){html=t.plugins[j].get_control_html(id);if(html!=Ì){html=t.get_translation(html,\\\"template\\\");var new_span=document.createElement(\\\"span\\\");new_span.innerHTML=html;var father=spans[i].ÈNode;spans[i].ÈNode.replaceChild(new_span,spans[i]);break;}}}}}if(s[\\\"debug\\\"]){t.debug=È.document.getElementById(\\\"edit_area_debug_\\\"+t.id);}if(_$(\\\"redo\\\")!=null)t.switchClassSticky(_$(\\\"redo\\\"),'editAreaButtonDisabled',Ë);if(typeof(È.eAL.syntax[s[\\\"syntax\\\"]])!=\\\"undefined\\\"){for(var i in È.eAL.syntax){if(typeof(È.eAL.syntax[i][\\\"Çs\\\"])!=\\\"undefined\\\"){t.add_Ç(È.eAL.syntax[i][\\\"Çs\\\"]);}}}if(t.isOpera)_$(\\\"editor\\\").onkeypress=keyDown;\\nelse _$(\\\"editor\\\").onkeydown=keyDown;for(var i=0;i<t.inlinePopup.Æ;i++){if(t.isOpera)_$(t.inlinePopup[i][\\\"popup_id\\\"]).onkeypress=keyDown;\\nelse _$(t.inlinePopup[i][\\\"popup_id\\\"]).onkeydown=keyDown;}if(s[\\\"allow_resize\\\"]==\\\"both\\\"||s[\\\"allow_resize\\\"]==\\\"x\\\"||s[\\\"allow_resize\\\"]==\\\"y\\\")t.allow_resize(Ë);È.eAL.toggle(t.id,\\\"on\\\");t.change_smooth_selection_mode(eA.smooth_selection);t.execCommand(\\\"change_highlight\\\",s[\\\"start_highlight\\\"]);t.set_font(eA.Å[\\\"font_family\\\"],eA.Å[\\\"font_size\\\"]);children=È.getChildren(document.body,\\\"\\\",\\\"selec\\\",\\\"none\\\",\\\"all\\\",-1);for(var i=0;i<children.Æ;i++){if(t.isIE)children[i].unselectable=Ë;\\nelse children[i].onmousedown=Ã(){return Ì};}a.spellcheck=s[\\\"gecko_spellcheck\\\"];if(t.isFirefox >='3'){t.content_highlight.Ç.paddingLeft=\\\"1px\\\";t.selection_field.Ç.paddingLeft=\\\"1px\\\";t.selection_field_text.Ç.paddingLeft=\\\"1px\\\";}if(t.isIE&&t.isIE < 8){a.Ç.marginTop=\\\"-1px\\\";}if(t.isSafari){t.editor_area.Ç.position=\\\"absolute\\\";a.Ç.marginLeft=\\\"-3px\\\";if(t.isSafari < 3.2)a.Ç.marginTop=\\\"1px\\\";}È.eAL.add_event(t.result,\\\"click\\\",Ã(e){if((e.target||e.srcElement)==eA.result){eA.area_select(eA.Â.Ê.Æ,0);}});if(s['is_multi_files']!=Ì)t.open_file({'id':t.curr_file,'text':''});t.set_word_wrap(s['word_wrap']);setTimeout(\\\"eA.focus();eA.manage_size();eA.execCommand('EA_load');\\\",10);t.check_undo();t.check_line_selection(Ë);t.scroll_to_view();for(var i in t.plugins){if(typeof(t.plugins[i].onload)==\\\"Ã\\\")t.plugins[i].onload();}if(s['fullscreen']==Ë)t.toggle_full_screen(Ë);È.eAL.add_event(window,\\\"resize\\\",eA.update_size);È.eAL.add_event(È.window,\\\"resize\\\",eA.update_size);È.eAL.add_event(top.window,\\\"resize\\\",eA.update_size);È.eAL.add_event(window,\\\"unload\\\",Ã(){if(È.eAL){È.eAL.remove_event(È.window,\\\"resize\\\",eA.update_size);È.eAL.remove_event(top.window,\\\"resize\\\",eA.update_size);}if(eAs[eA.id]&&eAs[eA.id][\\\"displayed\\\"]){eA.execCommand(\\\"EA_unload\\\");}});};EA.Ä.update_size=Ã(){var d=document,pd=È.document,height,width,popup,maxLeft,maxTop;if(typeof eAs !='undefined'&&eAs[eA.id]&&eAs[eA.id][\\\"displayed\\\"]==Ë){if(eA.fullscreen['isFull']){pd.getElementById(\\\"frame_\\\"+eA.id).Ç.width=pd.getElementsByTagName(\\\"html\\\")[0].clientWidth+\\\"px\\\";pd.getElementById(\\\"frame_\\\"+eA.id).Ç.height=pd.getElementsByTagName(\\\"html\\\")[0].clientHeight+\\\"px\\\";}if(eA.tab_browsing_area.Ç.display=='block'&&(!eA.isIE||eA.isIE >=8)){eA.tab_browsing_area.Ç.height=\\\"0px\\\";eA.tab_browsing_area.Ç.height=(eA.result.offsetTop-eA.tab_browsing_area.offsetTop-1)+\\\"px\\\";}height=d.body.offsetHeight-eA.get_all_toolbar_height()-4;eA.result.Ç.height=height+\\\"px\\\";width=d.body.offsetWidth-2;eA.result.Ç.width=width+\\\"px\\\";for(i=0;i < eA.inlinePopup.Æ;i++){popup=_$(eA.inlinePopup[i][\\\"popup_id\\\"]);maxLeft=d.body.offsetWidth-popup.offsetWidth;maxTop=d.body.offsetHeight-popup.offsetHeight;if(popup.offsetTop > maxTop)popup.Ç.top=maxTop+\\\"px\\\";if(popup.offsetLeft > maxLeft)popup.Ç.left=maxLeft+\\\"px\\\";}eA.manage_size(Ë);eA.fixLinesHeight(eA.Â.Ê,0,-1);}};EA.Ä.manage_size=Ã(onlyOneTime){if(!eAs[Á.id])return Ì;if(eAs[Á.id][\\\"displayed\\\"]==Ë&&Á.ÂFocused){var area_height,resized=Ì;if(!Á.Å['word_wrap']){var area_width=Á.Â.scrollWidth;area_height=Á.Â.scrollHeight;if(Á.isOpera&&Á.isOpera < 9.6){area_width=10000;}if(Á.Â.previous_scrollWidth!=area_width){Á.container.Ç.width=area_width+\\\"px\\\";Á.Â.Ç.width=area_width+\\\"px\\\";Á.content_highlight.Ç.width=area_width+\\\"px\\\";Á.Â.previous_scrollWidth=area_width;resized=Ë;}}if(Á.Å['word_wrap']){newW=Á.Â.offsetWidth;if(Á.isFirefox||Á.isIE)newW-=2;if(Á.isSafari)newW-=6;Á.content_highlight.Ç.width=Á.selection_field_text.Ç.width=Á.selection_field.Ç.width=Á.test_font_size.Ç.width=newW+\\\"px\\\";}if(Á.isOpera||Á.isFirefox||Á.isSafari){area_height=Á.getLinePosTop(Á.É[\\\"nb_line\\\"]+1);}\\nelse{area_height=Á.Â.scrollHeight;}if(Á.Â.previous_scrollHeight!=area_height){Á.container.Ç.height=(area_height+2)+\\\"px\\\";Á.Â.Ç.height=area_height+\\\"px\\\";Á.content_highlight.Ç.height=area_height+\\\"px\\\";Á.Â.previous_scrollHeight=area_height;resized=Ë;}if(Á.É[\\\"nb_line\\\"] >=Á.line_number){var newLines='',destDiv=_$(\\\"line_number\\\"),start=Á.line_number,end=Á.É[\\\"nb_line\\\"]+100;for(i=start+1;i < end;i++){newLines+='<div id=\\\"line_'+i+'\\\">'+i+\\\"</div>\\\";Á.line_number++;}destDiv.innerHTML=destDiv.innerHTML+newLines;if(Á.Å['word_wrap']){Á.fixLinesHeight(Á.Â.Ê,start,-1);}}Á.Â.scrollTop=\\\"0px\\\";Á.Â.scrollLeft=\\\"0px\\\";if(resized==Ë){Á.scroll_to_view();}}if(!onlyOneTime)setTimeout(\\\"eA.manage_size();\\\",100);};EA.Ä.execCommand=Ã(cmd,param){for(var i in Á.plugins){if(typeof(Á.plugins[i].execCommand)==\\\"Ã\\\"){if(!Á.plugins[i].execCommand(cmd,param))return;}}switch(cmd){case \\\"save\\\":if(Á.Å[\\\"save_callback\\\"].Æ>0)eval(\\\"È.\\\"+Á.Å[\\\"save_callback\\\"]+\\\"('\\\"+Á.id+\\\"',eA.Â.Ê);\\\");break;case \\\"load\\\":if(Á.Å[\\\"load_callback\\\"].Æ>0)eval(\\\"È.\\\"+Á.Å[\\\"load_callback\\\"]+\\\"('\\\"+Á.id+\\\"');\\\");break;case \\\"onchange\\\":if(Á.Å[\\\"change_callback\\\"].Æ>0)eval(\\\"È.\\\"+Á.Å[\\\"change_callback\\\"]+\\\"('\\\"+Á.id+\\\"');\\\");break;case \\\"EA_load\\\":if(Á.Å[\\\"EA_load_callback\\\"].Æ>0)eval(\\\"È.\\\"+Á.Å[\\\"EA_load_callback\\\"]+\\\"('\\\"+Á.id+\\\"');\\\");break;case \\\"EA_unload\\\":if(Á.Å[\\\"EA_unload_callback\\\"].Æ>0)eval(\\\"È.\\\"+Á.Å[\\\"EA_unload_callback\\\"]+\\\"('\\\"+Á.id+\\\"');\\\");break;case \\\"toggle_on\\\":if(Á.Å[\\\"EA_toggle_on_callback\\\"].Æ>0)eval(\\\"È.\\\"+Á.Å[\\\"EA_toggle_on_callback\\\"]+\\\"('\\\"+Á.id+\\\"');\\\");break;case \\\"toggle_off\\\":if(Á.Å[\\\"EA_toggle_off_callback\\\"].Æ>0)eval(\\\"È.\\\"+Á.Å[\\\"EA_toggle_off_callback\\\"]+\\\"('\\\"+Á.id+\\\"');\\\");break;case \\\"re_sync\\\":if(!Á.do_highlight)break;case \\\"file_switch_on\\\":if(Á.Å[\\\"EA_file_switch_on_callback\\\"].Æ>0)eval(\\\"È.\\\"+Á.Å[\\\"EA_file_switch_on_callback\\\"]+\\\"(param);\\\");break;case \\\"file_switch_off\\\":if(Á.Å[\\\"EA_file_switch_off_callback\\\"].Æ>0)eval(\\\"È.\\\"+Á.Å[\\\"EA_file_switch_off_callback\\\"]+\\\"(param);\\\");break;case \\\"file_close\\\":if(Á.Å[\\\"EA_file_close_callback\\\"].Æ>0)return eval(\\\"È.\\\"+Á.Å[\\\"EA_file_close_callback\\\"]+\\\"(param);\\\");break;default:if(typeof(eval(\\\"eA.\\\"+cmd))==\\\"Ã\\\"){if(Á.Å[\\\"debug\\\"])eval(\\\"eA.\\\"+cmd+\\\"(param);\\\");\\nelse try{eval(\\\"eA.\\\"+cmd+\\\"(param);\\\");}catch(e){};}}};EA.Ä.get_translation=Ã(word,mode){if(mode==\\\"template\\\")return È.eAL.translate(word,Á.Å[\\\"language\\\"],mode);\\nelse return È.eAL.get_word_translation(word,Á.Å[\\\"language\\\"]);};EA.Ä.add_plugin=Ã(plug_name,plug_obj){for(var i=0;i<Á.Å[\\\"plugins\\\"].Æ;i++){if(Á.Å[\\\"plugins\\\"][i]==plug_name){Á.plugins[plug_name]=plug_obj;plug_obj.baseURL=È.eAL.baseURL+\\\"plugins/\\\"+plug_name+\\\"/\\\";if(typeof(plug_obj.init)==\\\"Ã\\\")plug_obj.init();}}};EA.Ä.load_css=Ã(url){try{link=document.createElement(\\\"link\\\");link.type=\\\"text/css\\\";link.rel=\\\"Çsheet\\\";link.media=\\\"all\\\";link.href=url;head=document.getElementsByTagName(\\\"head\\\");head[0].appendChild(link);}catch(e){document.write(\\\"<link href='\\\"+url+\\\"' rel='Çsheet' type='text/css' />\\\");}};EA.Ä.load_script=Ã(url){try{script=document.createElement(\\\"script\\\");script.type=\\\"text/javascript\\\";script.src=url;script.charset=\\\"UTF-8\\\";head=document.getElementsByTagName(\\\"head\\\");head[0].appendChild(script);}catch(e){document.write(\\\"<script type='text/javascript' src='\\\"+url+\\\"' charset=\\\\\\\"UTF-8\\\\\\\"><\\\"+\\\"/script>\\\");}};EA.Ä.add_lang=Ã(language,Ês){if(!È.eAL.lang[language])È.eAL.lang[language]={};for(var i in Ês)È.eAL.lang[language][i]=Ês[i];};Ã _$(id){return document.getElementById(id);};var eA=new EA();È.eAL.add_event(window,\\\"load\\\",init);Ã init(){setTimeout(\\\"eA.init();\\\",10);};\tEA.Ä.focus=Ã(){Á.Â.focus();Á.ÂFocused=Ë;};EA.Ä.check_line_selection=Ã(timer_checkup){var changes,infos,new_top,new_width,i;var t1=t2=t2_1=t3=tLines=tend=new Date().getTime();if(!eAs[Á.id])return Ì;if(!Á.smooth_selection&&!Á.do_highlight){}\\nelse if(Á.ÂFocused&&eAs[Á.id][\\\"displayed\\\"]==Ë&&Á.isResizing==Ì){infos=Á.get_selection_infos();changes=Á.checkTextEvolution(typeof(Á.É['full_text'])=='undefined' ? '':Á.É['full_text'],infos['full_text']);t2=new Date().getTime();if(Á.É[\\\"line_start\\\"] !=infos[\\\"line_start\\\"]||Á.É[\\\"line_nb\\\"] !=infos[\\\"line_nb\\\"]||infos[\\\"full_text\\\"] !=Á.É[\\\"full_text\\\"]||Á.reload_highlight||Á.É[\\\"selectionStart\\\"] !=infos[\\\"selectionStart\\\"]||Á.É[\\\"selectionEnd\\\"] !=infos[\\\"selectionEnd\\\"]||!timer_checkup){new_top=Á.getLinePosTop(infos[\\\"line_start\\\"]);new_width=Math.max(Á.Â.scrollWidth,Á.container.clientWidth-50);Á.selection_field.Ç.top=Á.selection_field_text.Ç.top=new_top+\\\"px\\\";if(!Á.Å['word_wrap']){Á.selection_field.Ç.width=Á.selection_field_text.Ç.width=Á.test_font_size.Ç.width=new_width+\\\"px\\\";}if(Á.do_highlight==Ë){var curr_text=infos[\\\"full_text\\\"].split(\\\"\\\\n\\\");var content=\\\"\\\";var start=Math.max(0,infos[\\\"line_start\\\"]-1);var end=Math.min(curr_text.Æ,infos[\\\"line_start\\\"]+infos[\\\"line_nb\\\"]-1);for(i=start;i< end;i++){content+=curr_text[i]+\\\"\\\\n\\\";}selLength=infos['selectionEnd']-infos['selectionStart'];content=content.substr(0,infos[\\\"curr_pos\\\"]-1)+\\\"\\\\r\\\\r\\\"+content.substr(infos[\\\"curr_pos\\\"]-1,selLength)+\\\"\\\\r\\\\r\\\"+content.substr(infos[\\\"curr_pos\\\"]-1+selLength);content='<span>'+content.replace(/&/g,\\\"&amp;\\\").replace(/</g,\\\"&lt;\\\").replace(/>/g,\\\"&gt;\\\").replace(\\\"\\\\r\\\\r\\\",'</span><strong>').replace(\\\"\\\\r\\\\r\\\",'</strong><span>')+'</span>';if(Á.isIE||(Á.isOpera&&Á.isOpera < 9.6)){Á.selection_field.innerHTML=\\\"<pre>\\\"+content.replace(/^\\\\r?\\\\n/,\\\"<br>\\\")+\\\"</pre>\\\";}\\nelse{Á.selection_field.innerHTML=content;}Á.selection_field_text.innerHTML=Á.selection_field.innerHTML;t2_1=new Date().getTime();if(Á.reload_highlight||(infos[\\\"full_text\\\"] !=Á.last_text_to_highlight&&(Á.É[\\\"line_start\\\"]!=infos[\\\"line_start\\\"]||Á.show_line_colors||Á.Å['word_wrap']||Á.É[\\\"line_nb\\\"]!=infos[\\\"line_nb\\\"]||Á.É[\\\"nb_line\\\"]!=infos[\\\"nb_line\\\"]))){Á.maj_highlight(infos);}}}t3=new Date().getTime();if(Á.Å['word_wrap']&&infos[\\\"full_text\\\"] !=Á.É[\\\"full_text\\\"]){if(changes.newText.split(\\\"\\\\n\\\").Æ==1&&Á.É['nb_line']&&infos['nb_line']==Á.É['nb_line']){Á.fixLinesHeight(infos['full_text'],changes.lineStart,changes.lineStart);}\\nelse{Á.fixLinesHeight(infos['full_text'],changes.lineStart,-1);}}tLines=new Date().getTime();if(infos[\\\"line_start\\\"] !=Á.É[\\\"line_start\\\"]||infos[\\\"curr_pos\\\"] !=Á.É[\\\"curr_pos\\\"]||infos[\\\"full_text\\\"].Æ!=Á.É[\\\"full_text\\\"].Æ||Á.reload_highlight||!timer_checkup){var selec_char=infos[\\\"curr_line\\\"].charAt(infos[\\\"curr_pos\\\"]-1);var no_real_move=Ë;if(infos[\\\"line_nb\\\"]==1&&(Á.assocBracket[selec_char]||Á.revertAssocBracket[selec_char])){no_real_move=Ì;if(Á.findEndBracket(infos,selec_char)===Ë){_$(\\\"end_bracket\\\").Ç.visibility=\\\"visible\\\";_$(\\\"cursor_pos\\\").Ç.visibility=\\\"visible\\\";_$(\\\"cursor_pos\\\").innerHTML=selec_char;_$(\\\"end_bracket\\\").innerHTML=(Á.assocBracket[selec_char]||Á.revertAssocBracket[selec_char]);}\\nelse{_$(\\\"end_bracket\\\").Ç.visibility=\\\"hidden\\\";_$(\\\"cursor_pos\\\").Ç.visibility=\\\"hidden\\\";}}\\nelse{_$(\\\"cursor_pos\\\").Ç.visibility=\\\"hidden\\\";_$(\\\"end_bracket\\\").Ç.visibility=\\\"hidden\\\";}Á.displayToCursorPosition(\\\"cursor_pos\\\",infos[\\\"line_start\\\"],infos[\\\"curr_pos\\\"]-1,infos[\\\"curr_line\\\"],no_real_move);if(infos[\\\"line_nb\\\"]==1&&infos[\\\"line_start\\\"]!=Á.É[\\\"line_start\\\"])Á.scroll_to_view();}Á.É=infos;}tend=new Date().getTime();if(timer_checkup){setTimeout(\\\"eA.check_line_selection(Ë)\\\",Á.check_line_selection_timer);}};EA.Ä.get_selection_infos=Ã(){var sel={},start,end,len,str;Á.getIESelection();start=Á.Â.selectionStart;end=Á.Â.selectionEnd;if(Á.É[\\\"selectionStart\\\"]==start&&Á.É[\\\"selectionEnd\\\"]==end&&Á.É[\\\"full_text\\\"]==Á.Â.Ê){return Á.É;}if(Á.tabulation!=\\\"\\t\\\"&&Á.Â.Ê.indexOf(\\\"\\t\\\")!=-1){len=Á.Â.Ê.Æ;Á.Â.Ê=Á.replace_tab(Á.Â.Ê);start=end=start+(Á.Â.Ê.Æ-len);Á.area_select(start,0);}sel[\\\"selectionStart\\\"]=start;sel[\\\"selectionEnd\\\"]=end;sel[\\\"full_text\\\"]=Á.Â.Ê;sel[\\\"line_start\\\"]=1;sel[\\\"line_nb\\\"]=1;sel[\\\"curr_pos\\\"]=0;sel[\\\"curr_line\\\"]=\\\"\\\";sel[\\\"indexOfCursor\\\"]=0;sel[\\\"selec_direction\\\"]=Á.É[\\\"selec_direction\\\"];var splitTab=sel[\\\"full_text\\\"].split(\\\"\\\\n\\\");var nbLine=Math.max(0,splitTab.Æ);var nbChar=Math.max(0,sel[\\\"full_text\\\"].Æ-(nbLine-1));if(sel[\\\"full_text\\\"].indexOf(\\\"\\\\r\\\")!=-1)nbChar=nbChar-(nbLine-1);sel[\\\"nb_line\\\"]=nbLine;sel[\\\"nb_char\\\"]=nbChar;if(start>0){str=sel[\\\"full_text\\\"].substr(0,start);sel[\\\"curr_pos\\\"]=start-str.lastIndexOf(\\\"\\\\n\\\");sel[\\\"line_start\\\"]=Math.max(1,str.split(\\\"\\\\n\\\").Æ);}\\nelse{sel[\\\"curr_pos\\\"]=1;}if(end>start){sel[\\\"line_nb\\\"]=sel[\\\"full_text\\\"].substring(start,end).split(\\\"\\\\n\\\").Æ;}sel[\\\"indexOfCursor\\\"]=start;sel[\\\"curr_line\\\"]=splitTab[Math.max(0,sel[\\\"line_start\\\"]-1)];if(sel[\\\"selectionStart\\\"]==Á.É[\\\"selectionStart\\\"]){if(sel[\\\"selectionEnd\\\"]>Á.É[\\\"selectionEnd\\\"])sel[\\\"selec_direction\\\"]=\\\"down\\\";\\nelse if(sel[\\\"selectionEnd\\\"]==Á.É[\\\"selectionStart\\\"])sel[\\\"selec_direction\\\"]=Á.É[\\\"selec_direction\\\"];}\\nelse if(sel[\\\"selectionStart\\\"]==Á.É[\\\"selectionEnd\\\"]&&sel[\\\"selectionEnd\\\"]>Á.É[\\\"selectionEnd\\\"]){sel[\\\"selec_direction\\\"]=\\\"down\\\";}\\nelse{sel[\\\"selec_direction\\\"]=\\\"up\\\";}_$(\\\"nbLine\\\").innerHTML=nbLine;_$(\\\"nbChar\\\").innerHTML=nbChar;_$(\\\"linePos\\\").innerHTML=sel[\\\"line_start\\\"];_$(\\\"currPos\\\").innerHTML=sel[\\\"curr_pos\\\"];return sel;};EA.Ä.getIESelection=Ã(){var selectionStart,selectionEnd,range,stored_range;if(!Á.isIE)return Ì;if(Á.Å['word_wrap'])Á.Â.wrap='off';try{range=document.selection.createRange();stored_range=range.duplicate();stored_range.moveToElementText(Á.Â);stored_range.setEndPoint('EndToEnd',range);if(stored_range.ÈElement()!=Á.Â)throw \\\"invalid focus\\\";var scrollTop=Á.result.scrollTop+document.body.scrollTop;var relative_top=range.offsetTop-È.calculeOffsetTop(Á.Â)+scrollTop;var line_start=Math.round((relative_top / Á.lineHeight)+1);var line_nb=Math.round(range.boundingHeight / Á.lineHeight);selectionStart=stored_range.text.Æ-range.text.Æ;selectionStart+=(line_start-Á.Â.Ê.substr(0,selectionStart).split(\\\"\\\\n\\\").Æ)*2;selectionStart-=(line_start-Á.Â.Ê.substr(0,selectionStart).split(\\\"\\\\n\\\").Æ)* 2;selectionEnd=selectionStart+range.text.Æ;selectionEnd+=(line_start+line_nb-1-Á.Â.Ê.substr(0,selectionEnd).split(\\\"\\\\n\\\").Æ)*2;Á.Â.selectionStart=selectionStart;Á.Â.selectionEnd=selectionEnd;}catch(e){}if(Á.Å['word_wrap'])Á.Â.wrap='soft';};EA.Ä.setIESelection=Ã(){var a=Á.Â,nbLineStart,nbLineEnd,range;if(!Á.isIE)return Ì;nbLineStart=a.Ê.substr(0,a.selectionStart).split(\\\"\\\\n\\\").Æ-1;nbLineEnd=a.Ê.substr(0,a.selectionEnd).split(\\\"\\\\n\\\").Æ-1;range=document.selection.createRange();range.moveToElementText(a);range.setEndPoint('EndToStart',range);range.moveStart('character',a.selectionStart-nbLineStart);range.moveEnd('character',a.selectionEnd-nbLineEnd-(a.selectionStart-nbLineStart));range.select();};EA.Ä.checkTextEvolution=Ã(lastText,newText){var ch={},baseStep=200,cpt=0,end,step,tStart=new Date().getTime();end=Math.min(newText.Æ,lastText.Æ);step=baseStep;while(cpt<end&&step>=1){if(lastText.substr(cpt,step)==newText.substr(cpt,step)){cpt+=step;}\\nelse{step=Math.floor(step/2);}}ch.posStart=cpt;ch.lineStart=newText.substr(0,ch.posStart).split(\\\"\\\\n\\\").Æ-1;cpt_last=lastText.Æ;cpt=newText.Æ;step=baseStep;while(cpt>=0&&cpt_last>=0&&step>=1){if(lastText.substr(cpt_last-step,step)==newText.substr(cpt-step,step)){cpt-=step;cpt_last-=step;}\\nelse{step=Math.floor(step/2);}}ch.posNewEnd=cpt;ch.posLastEnd=cpt_last;if(ch.posNewEnd<=ch.posStart){if(lastText.Æ < newText.Æ){ch.posNewEnd=ch.posStart+newText.Æ-lastText.Æ;ch.posLastEnd=ch.posStart;}\\nelse{ch.posLastEnd=ch.posStart+lastText.Æ-newText.Æ;ch.posNewEnd=ch.posStart;}}ch.newText=newText.substring(ch.posStart,ch.posNewEnd);ch.lastText=lastText.substring(ch.posStart,ch.posLastEnd);ch.lineNewEnd=newText.substr(0,ch.posNewEnd).split(\\\"\\\\n\\\").Æ-1;ch.lineLastEnd=lastText.substr(0,ch.posLastEnd).split(\\\"\\\\n\\\").Æ-1;ch.newTextLine=newText.split(\\\"\\\\n\\\").slice(ch.lineStart,ch.lineNewEnd+1).join(\\\"\\\\n\\\");ch.lastTextLine=lastText.split(\\\"\\\\n\\\").slice(ch.lineStart,ch.lineLastEnd+1).join(\\\"\\\\n\\\");return ch;};EA.Ä.tab_selection=Ã(){if(Á.is_tabbing)return;Á.is_tabbing=Ë;Á.getIESelection();var start=Á.Â.selectionStart;var end=Á.Â.selectionEnd;var insText=Á.Â.Ê.substring(start,end);var pos_start=start;var pos_end=end;if(insText.Æ==0){Á.Â.Ê=Á.Â.Ê.substr(0,start)+Á.tabulation+Á.Â.Ê.substr(end);pos_start=start+Á.tabulation.Æ;pos_end=pos_start;}\\nelse{start=Math.max(0,Á.Â.Ê.substr(0,start).lastIndexOf(\\\"\\\\n\\\")+1);endText=Á.Â.Ê.substr(end);startText=Á.Â.Ê.substr(0,start);tmp=Á.Â.Ê.substring(start,end).split(\\\"\\\\n\\\");insText=Á.tabulation+tmp.join(\\\"\\\\n\\\"+Á.tabulation);Á.Â.Ê=startText+insText+endText;pos_start=start;pos_end=Á.Â.Ê.indexOf(\\\"\\\\n\\\",startText.Æ+insText.Æ);if(pos_end==-1)pos_end=Á.Â.Ê.Æ;}Á.Â.selectionStart=pos_start;Á.Â.selectionEnd=pos_end;if(Á.isIE){Á.setIESelection();setTimeout(\\\"eA.is_tabbing=Ì;\\\",100);}\\nelse{Á.is_tabbing=Ì;}};EA.Ä.invert_tab_selection=Ã(){var t=Á,a=Á.Â;if(t.is_tabbing)return;t.is_tabbing=Ë;t.getIESelection();var start=a.selectionStart;var end=a.selectionEnd;var insText=a.Ê.substring(start,end);var pos_start=start;var pos_end=end;if(insText.Æ==0){if(a.Ê.substring(start-t.tabulation.Æ,start)==t.tabulation){a.Ê=a.Ê.substr(0,start-t.tabulation.Æ)+a.Ê.substr(end);pos_start=Math.max(0,start-t.tabulation.Æ);pos_end=pos_start;}}\\nelse{start=a.Ê.substr(0,start).lastIndexOf(\\\"\\\\n\\\")+1;endText=a.Ê.substr(end);startText=a.Ê.substr(0,start);tmp=a.Ê.substring(start,end).split(\\\"\\\\n\\\");insText=\\\"\\\";for(i=0;i<tmp.Æ;i++){for(j=0;j<t.tab_nb_char;j++){if(tmp[i].charAt(0)==\\\"\\t\\\"){tmp[i]=tmp[i].substr(1);j=t.tab_nb_char;}\\nelse if(tmp[i].charAt(0)==\\\" \\\")tmp[i]=tmp[i].substr(1);}insText+=tmp[i];if(i<tmp.Æ-1)insText+=\\\"\\\\n\\\";}a.Ê=startText+insText+endText;pos_start=start;pos_end=a.Ê.indexOf(\\\"\\\\n\\\",startText.Æ+insText.Æ);if(pos_end==-1)pos_end=a.Ê.Æ;}a.selectionStart=pos_start;a.selectionEnd=pos_end;if(t.isIE){t.setIESelection();setTimeout(\\\"eA.is_tabbing=Ì;\\\",100);}\\nelse t.is_tabbing=Ì;};EA.Ä.press_enter=Ã(){if(!Á.smooth_selection)return Ì;Á.getIESelection();var scrollTop=Á.result.scrollTop;var scrollLeft=Á.result.scrollLeft;var start=Á.Â.selectionStart;var end=Á.Â.selectionEnd;var start_last_line=Math.max(0,Á.Â.Ê.substring(0,start).lastIndexOf(\\\"\\\\n\\\")+1);var begin_line=Á.Â.Ê.substring(start_last_line,start).replace(/^([ \\t]*).*/gm,\\\"$1\\\");var lineStart=Á.Â.Ê.substring(0,start).split(\\\"\\\\n\\\").Æ;if(begin_line==\\\"\\\\n\\\"||begin_line==\\\"\\\\r\\\"||begin_line.Æ==0){return Ì;}if(Á.isIE||(Á.isOpera&&Á.isOpera < 9.6)){begin_line=\\\"\\\\r\\\\n\\\"+begin_line;}\\nelse{begin_line=\\\"\\\\n\\\"+begin_line;}Á.Â.Ê=Á.Â.Ê.substring(0,start)+begin_line+Á.Â.Ê.substring(end);Á.area_select(start+begin_line.Æ,0);if(Á.isIE){Á.result.scrollTop=scrollTop;Á.result.scrollLeft=scrollLeft;}return Ë;};EA.Ä.findEndBracket=Ã(infos,bracket){var start=infos[\\\"indexOfCursor\\\"];var normal_order=Ë;if(Á.assocBracket[bracket])endBracket=Á.assocBracket[bracket];\\nelse if(Á.revertAssocBracket[bracket]){endBracket=Á.revertAssocBracket[bracket];normal_order=Ì;}var end=-1;var nbBracketOpen=0;for(var i=start;i<infos[\\\"full_text\\\"].Æ&&i>=0;){if(infos[\\\"full_text\\\"].charAt(i)==endBracket){nbBracketOpen--;if(nbBracketOpen<=0){end=i;break;}}\\nelse if(infos[\\\"full_text\\\"].charAt(i)==bracket)nbBracketOpen++;if(normal_order)i++;\\nelse i--;}if(end==-1)return Ì;var endLastLine=infos[\\\"full_text\\\"].substr(0,end).lastIndexOf(\\\"\\\\n\\\");if(endLastLine==-1)line=1;\\nelse line=infos[\\\"full_text\\\"].substr(0,endLastLine).split(\\\"\\\\n\\\").Æ+1;var curPos=end-endLastLine-1;var endLineLength=infos[\\\"full_text\\\"].substring(end).split(\\\"\\\\n\\\")[0].Æ;Á.displayToCursorPosition(\\\"end_bracket\\\",line,curPos,infos[\\\"full_text\\\"].substring(endLastLine+1,end+endLineLength));return Ë;};EA.Ä.displayToCursorPosition=Ã(id,start_line,cur_pos,lineContent,no_real_move){var elem,dest,content,posLeft=0,posTop,fixPadding,topOffset,endElem;elem=Á.test_font_size;dest=_$(id);content=\\\"<span id='test_font_size_inner'>\\\"+lineContent.substr(0,cur_pos).replace(/&/g,\\\"&amp;\\\").replace(/</g,\\\"&lt;\\\")+\\\"</span><span id='endTestFont'>\\\"+lineContent.substr(cur_pos).replace(/&/g,\\\"&amp;\\\").replace(/</g,\\\"&lt;\\\")+\\\"</span>\\\";if(Á.isIE||(Á.isOpera&&Á.isOpera < 9.6)){elem.innerHTML=\\\"<pre>\\\"+content.replace(/^\\\\r?\\\\n/,\\\"<br>\\\")+\\\"</pre>\\\";}\\nelse{elem.innerHTML=content;}endElem=_$('endTestFont');topOffset=endElem.offsetTop;fixPadding=parseInt(Á.content_highlight.Ç.paddingLeft.replace(\\\"px\\\",\\\"\\\"));posLeft=45+endElem.offsetLeft+(!isNaN(fixPadding)&&topOffset > 0 ? fixPadding:0);posTop=Á.getLinePosTop(start_line)+topOffset;if(Á.isIE&&cur_pos > 0&&endElem.offsetLeft==0){posTop+=Á.lineHeight;}if(no_real_move!=Ë){dest.Ç.top=posTop+\\\"px\\\";dest.Ç.left=posLeft+\\\"px\\\";}dest.cursor_top=posTop;dest.cursor_left=posLeft;};EA.Ä.getLinePosTop=Ã(start_line){var elem=_$('line_'+start_line),posTop=0;if(elem)posTop=elem.offsetTop;\\nelse posTop=Á.lineHeight *(start_line-1);return posTop;};EA.Ä.getTextHeight=Ã(text){var t=Á,elem,height;elem=t.test_font_size;content=text.replace(/&/g,\\\"&amp;\\\").replace(/</g,\\\"&lt;\\\");if(t.isIE||(Á.isOpera&&Á.isOpera < 9.6)){elem.innerHTML=\\\"<pre>\\\"+content.replace(/^\\\\r?\\\\n/,\\\"<br>\\\")+\\\"</pre>\\\";}\\nelse{elem.innerHTML=content;}height=elem.offsetHeight;height=Math.max(1,Math.floor(elem.offsetHeight / Á.lineHeight))* Á.lineHeight;return height;};EA.Ä.fixLinesHeight=Ã(textValue,lineStart,lineEnd){var aText=textValue.split(\\\"\\\\n\\\");if(lineEnd==-1)lineEnd=aText.Æ-1;for(var i=Math.max(0,lineStart);i <=lineEnd;i++){if(elem=_$('line_'+(i+1))){elem.Ç.height=typeof(aText[i])!=\\\"undefined\\\" ? Á.getTextHeight(aText[i])+\\\"px\\\":Á.lineHeight;}}};EA.Ä.area_select=Ã(start,Æ){Á.Â.focus();start=Math.max(0,Math.min(Á.Â.Ê.Æ,start));end=Math.max(start,Math.min(Á.Â.Ê.Æ,start+Æ));if(Á.isIE){Á.Â.selectionStart=start;Á.Â.selectionEnd=end;Á.setIESelection();}\\nelse{if(Á.isOpera&&Á.isOpera < 9.6){Á.Â.setSelectionRange(0,0);}Á.Â.setSelectionRange(start,end);}Á.check_line_selection();};EA.Ä.area_get_selection=Ã(){var text=\\\"\\\";if(document.selection){var range=document.selection.createRange();text=range.text;}\\nelse{text=Á.Â.Ê.substring(Á.Â.selectionStart,Á.Â.selectionEnd);}return text;}; EA.Ä.replace_tab=Ã(text){return text.replace(/((\\\\n?)([^\\t\\\\n]*)\\t)/gi,eA.smartTab);};EA.Ä.smartTab=Ã(){val=\\\"                   \\\";return EA.Ä.smartTab.arguments[2]+EA.Ä.smartTab.arguments[3]+val.substr(0,eA.tab_nb_char-(EA.Ä.smartTab.arguments[3].Æ)%eA.tab_nb_char);};EA.Ä.show_waiting_screen=Ã(){width=Á.editor_area.offsetWidth;height=Á.editor_area.offsetHeight;if(!(Á.isIE&&Á.isIE<6)){width-=2;height-=2;}Á.processing_screen.Ç.display=\\\"block\\\";Á.processing_screen.Ç.width=width+\\\"px\\\";Á.processing_screen.Ç.height=height+\\\"px\\\";Á.waiting_screen_displayed=Ë;};EA.Ä.hide_waiting_screen=Ã(){Á.processing_screen.Ç.display=\\\"none\\\";Á.waiting_screen_displayed=Ì;};EA.Ä.add_Ç=Ã(Çs){if(Çs.Æ>0){newcss=document.createElement(\\\"Ç\\\");newcss.type=\\\"text/css\\\";newcss.media=\\\"all\\\";if(newcss.ÇSheet){newcss.ÇSheet.cssText=Çs;}\\nelse{newcss.appendChild(document.createTextNode(Çs));}document.getElementsByTagName(\\\"head\\\")[0].appendChild(newcss);}};EA.Ä.set_font=Ã(family,size){var t=Á,a=Á.Â,s=Á.Å,elem_font,i,elem;var elems=[\\\"Â\\\",\\\"content_highlight\\\",\\\"cursor_pos\\\",\\\"end_bracket\\\",\\\"selection_field\\\",\\\"selection_field_text\\\",\\\"line_number\\\"];if(family&&family!=\\\"\\\")s[\\\"font_family\\\"]=family;if(size&&size>0)s[\\\"font_size\\\"]=size;if(t.isOpera&&t.isOpera < 9.6)s['font_family']=\\\"monospace\\\";if(elem_font=_$(\\\"area_font_size\\\")){for(i=0;i < elem_font.Æ;i++){if(elem_font.options[i].Ê&&elem_font.options[i].Ê==s[\\\"font_size\\\"])elem_font.options[i].selected=Ë;}}if(t.isFirefox){var nbTry=3;do{var div1=document.createElement('div'),text1=document.createElement('Â');var Çs={width:'40px',overflow:'scroll',zIndex:50,visibility:'hidden',fontFamily:s[\\\"font_family\\\"],fontSize:s[\\\"font_size\\\"]+\\\"pt\\\",lineHeight:t.lineHeight+\\\"px\\\",padding:'0',margin:'0',border:'none',whiteSpace:'nowrap'};var diff,changed=Ì;for(i in Çs){div1.Ç[ i ]=Çs[i];text1.Ç[ i ]=Çs[i];}text1.wrap='off';text1.setAttribute('wrap','off');t.container.appendChild(div1);t.container.appendChild(text1);div1.innerHTML=text1.Ê='azertyuiopqsdfghjklm';div1.innerHTML=text1.Ê=text1.Ê+'wxcvbn^p*ù$!:;,,';diff=text1.scrollWidth-div1.scrollWidth;if(Math.abs(diff)>=2){s[\\\"font_size\\\"]++;changed=Ë;}t.container.removeChild(div1);t.container.removeChild(text1);nbTry--;}while(changed&&nbTry > 0);}elem=t.test_font_size;elem.Ç.fontFamily=\\\"\\\"+s[\\\"font_family\\\"];elem.Ç.fontSize=s[\\\"font_size\\\"]+\\\"pt\\\";elem.innerHTML=\\\"0\\\";t.lineHeight=elem.offsetHeight;for(i=0;i<elems.Æ;i++){elem=_$(elems[i]);elem.Ç.fontFamily=s[\\\"font_family\\\"];elem.Ç.fontSize=s[\\\"font_size\\\"]+\\\"pt\\\";elem.Ç.lineHeight=t.lineHeight+\\\"px\\\";}t.add_Ç(\\\"pre{font-family:\\\"+s[\\\"font_family\\\"]+\\\"}\\\");if((t.isOpera&&t.isOpera < 9.6)||t.isIE >=8){var parNod=a.ÈNode,nxtSib=a.nextSibling,start=a.selectionStart,end=a.selectionEnd;parNod.removeChild(a);parNod.insertBefore(a,nxtSib);t.area_select(start,end-start);}Á.focus();Á.update_size();Á.check_line_selection();};EA.Ä.change_font_size=Ã(){var size=_$(\\\"area_font_size\\\").Ê;if(size>0)Á.set_font(\\\"\\\",size);};EA.Ä.open_inline_popup=Ã(popup_id){Á.close_all_inline_popup();var popup=_$(popup_id);var editor=_$(\\\"editor\\\");for(var i=0;i<Á.inlinePopup.Æ;i++){if(Á.inlinePopup[i][\\\"popup_id\\\"]==popup_id){var icon=_$(Á.inlinePopup[i][\\\"icon_id\\\"]);if(icon){Á.switchClassSticky(icon,'editAreaButtonSelected',Ë);break;}}}popup.Ç.height=\\\"auto\\\";popup.Ç.overflow=\\\"visible\\\";if(document.body.offsetHeight< popup.offsetHeight){popup.Ç.height=(document.body.offsetHeight-10)+\\\"px\\\";popup.Ç.overflow=\\\"auto\\\";}if(!popup.positionned){var new_left=editor.offsetWidth /2-popup.offsetWidth /2;var new_top=editor.offsetHeight /2-popup.offsetHeight /2;popup.Ç.left=new_left+\\\"px\\\";popup.Ç.top=new_top+\\\"px\\\";popup.positionned=Ë;}popup.Ç.visibility=\\\"visible\\\";};EA.Ä.close_inline_popup=Ã(popup_id){var popup=_$(popup_id);for(var i=0;i<Á.inlinePopup.Æ;i++){if(Á.inlinePopup[i][\\\"popup_id\\\"]==popup_id){var icon=_$(Á.inlinePopup[i][\\\"icon_id\\\"]);if(icon){Á.switchClassSticky(icon,'editAreaButtonNormal',Ì);break;}}}popup.Ç.visibility=\\\"hidden\\\";};EA.Ä.close_all_inline_popup=Ã(e){for(var i=0;i<Á.inlinePopup.Æ;i++){Á.close_inline_popup(Á.inlinePopup[i][\\\"popup_id\\\"]);}Á.Â.focus();};EA.Ä.show_help=Ã(){Á.open_inline_popup(\\\"edit_area_help\\\");};EA.Ä.new_document=Ã(){Á.Â.Ê=\\\"\\\";Á.area_select(0,0);};EA.Ä.get_all_toolbar_height=Ã(){var area=_$(\\\"editor\\\");var results=È.getChildren(area,\\\"div\\\",\\\"class\\\",\\\"area_toolbar\\\",\\\"all\\\",\\\"0\\\");var height=0;for(var i=0;i<results.Æ;i++){height+=results[i].offsetHeight;}return height;};EA.Ä.go_to_line=Ã(line){if(!line){var icon=_$(\\\"go_to_line\\\");if(icon !=null){Á.restoreClass(icon);Á.switchClassSticky(icon,'editAreaButtonSelected',Ë);}line=prompt(Á.get_translation(\\\"go_to_line_prompt\\\"));if(icon !=null)Á.switchClassSticky(icon,'editAreaButtonNormal',Ì);}if(line&&line!=null&&line.search(/^[0-9]+$/)!=-1){var start=0;var lines=Á.Â.Ê.split(\\\"\\\\n\\\");if(line > lines.Æ)start=Á.Â.Ê.Æ;\\nelse{for(var i=0;i<Math.min(line-1,lines.Æ);i++)start+=lines[i].Æ+1;}Á.area_select(start,0);}};EA.Ä.change_smooth_selection_mode=Ã(setTo){if(Á.do_highlight)return;if(setTo !=null){if(setTo===Ì)Á.smooth_selection=Ë;\\nelse Á.smooth_selection=Ì;}var icon=_$(\\\"change_smooth_selection\\\");Á.Â.focus();if(Á.smooth_selection===Ë){Á.switchClassSticky(icon,'editAreaButtonNormal',Ì);Á.smooth_selection=Ì;Á.selection_field.Ç.display=\\\"none\\\";_$(\\\"cursor_pos\\\").Ç.display=\\\"none\\\";_$(\\\"end_bracket\\\").Ç.display=\\\"none\\\";}\\nelse{Á.switchClassSticky(icon,'editAreaButtonSelected',Ì);Á.smooth_selection=Ë;Á.selection_field.Ç.display=\\\"block\\\";_$(\\\"cursor_pos\\\").Ç.display=\\\"block\\\";_$(\\\"end_bracket\\\").Ç.display=\\\"block\\\";}};EA.Ä.scroll_to_view=Ã(show){var zone,lineElem;if(!Á.smooth_selection)return;zone=_$(\\\"result\\\");var cursor_pos_top=_$(\\\"cursor_pos\\\").cursor_top;if(show==\\\"bottom\\\"){cursor_pos_top+=Á.getLinePosTop(Á.É['line_start']+Á.É['line_nb']-1);}var max_height_visible=zone.clientHeight+zone.scrollTop;var miss_top=cursor_pos_top+Á.lineHeight-max_height_visible;if(miss_top>0){zone.scrollTop=zone.scrollTop+miss_top;}\\nelse if(zone.scrollTop > cursor_pos_top){zone.scrollTop=cursor_pos_top;}var cursor_pos_left=_$(\\\"cursor_pos\\\").cursor_left;var max_width_visible=zone.clientWidth+zone.scrollLeft;var miss_left=cursor_pos_left+10-max_width_visible;if(miss_left>0){zone.scrollLeft=zone.scrollLeft+miss_left+50;}\\nelse if(zone.scrollLeft > cursor_pos_left){zone.scrollLeft=cursor_pos_left;}\\nelse if(zone.scrollLeft==45){zone.scrollLeft=0;}};EA.Ä.check_undo=Ã(only_once){if(!eAs[Á.id])return Ì;if(Á.ÂFocused&&eAs[Á.id][\\\"displayed\\\"]==Ë){var text=Á.Â.Ê;if(Á.previous.Æ<=1)Á.switchClassSticky(_$(\\\"undo\\\"),'editAreaButtonDisabled',Ë);if(!Á.previous[Á.previous.Æ-1]||Á.previous[Á.previous.Æ-1][\\\"text\\\"] !=text){Á.previous.push({\\\"text\\\":text,\\\"selStart\\\":Á.Â.selectionStart,\\\"selEnd\\\":Á.Â.selectionEnd});if(Á.previous.Æ > Á.Å[\\\"max_undo\\\"]+1)Á.previous.shift();}if(Á.previous.Æ >=2)Á.switchClassSticky(_$(\\\"undo\\\"),'editAreaButtonNormal',Ì);}if(!only_once)setTimeout(\\\"eA.check_undo()\\\",3000);};EA.Ä.undo=Ã(){if(Á.previous.Æ > 0){Á.getIESelection();Á.next.push({\\\"text\\\":Á.Â.Ê,\\\"selStart\\\":Á.Â.selectionStart,\\\"selEnd\\\":Á.Â.selectionEnd});var prev=Á.previous.pop();if(prev[\\\"text\\\"]==Á.Â.Ê&&Á.previous.Æ > 0)prev=Á.previous.pop();Á.Â.Ê=prev[\\\"text\\\"];Á.last_undo=prev[\\\"text\\\"];Á.area_select(prev[\\\"selStart\\\"],prev[\\\"selEnd\\\"]-prev[\\\"selStart\\\"]);Á.switchClassSticky(_$(\\\"redo\\\"),'editAreaButtonNormal',Ì);Á.resync_highlight(Ë);Á.check_file_changes();}};EA.Ä.redo=Ã(){if(Á.next.Æ > 0){var next=Á.next.pop();Á.previous.push(next);Á.Â.Ê=next[\\\"text\\\"];Á.last_undo=next[\\\"text\\\"];Á.area_select(next[\\\"selStart\\\"],next[\\\"selEnd\\\"]-next[\\\"selStart\\\"]);Á.switchClassSticky(_$(\\\"undo\\\"),'editAreaButtonNormal',Ì);Á.resync_highlight(Ë);Á.check_file_changes();}if(Á.next.Æ==0)Á.switchClassSticky(_$(\\\"redo\\\"),'editAreaButtonDisabled',Ë);};EA.Ä.check_redo=Ã(){if(eA.next.Æ==0||eA.Â.Ê!=eA.last_undo){eA.next=[];eA.switchClassSticky(_$(\\\"redo\\\"),'editAreaButtonDisabled',Ë);}\\nelse{Á.switchClassSticky(_$(\\\"redo\\\"),'editAreaButtonNormal',Ì);}};EA.Ä.switchClass=Ã(element,class_name,lock_state){var lockChanged=Ì;if(typeof(lock_state)!=\\\"undefined\\\"&&element !=null){element.classLock=lock_state;lockChanged=Ë;}if(element !=null&&(lockChanged||!element.classLock)){element.oldClassName=element.className;element.className=class_name;}};EA.Ä.restoreAndSwitchClass=Ã(element,class_name){if(element !=null&&!element.classLock){Á.restoreClass(element);Á.switchClass(element,class_name);}};EA.Ä.restoreClass=Ã(element){if(element !=null&&element.oldClassName&&!element.classLock){element.className=element.oldClassName;element.oldClassName=null;}};EA.Ä.setClassLock=Ã(element,lock_state){if(element !=null)element.classLock=lock_state;};EA.Ä.switchClassSticky=Ã(element,class_name,lock_state){var lockChanged=Ì;if(typeof(lock_state)!=\\\"undefined\\\"&&element !=null){element.classLock=lock_state;lockChanged=Ë;}if(element !=null&&(lockChanged||!element.classLock)){element.className=class_name;element.oldClassName=class_name;}};EA.Ä.scroll_page=Ã(params){var dir=params[\\\"dir\\\"],shift_pressed=params[\\\"shift\\\"];var lines=Á.Â.Ê.split(\\\"\\\\n\\\");var new_pos=0,Æ=0,char_left=0,line_nb=0,curLine=0;var toScrollAmount=_$(\\\"result\\\").clientHeight-30;var nbLineToScroll=0,diff=0;if(dir==\\\"up\\\"){nbLineToScroll=Math.ceil(toScrollAmount / Á.lineHeight);for(i=Á.É[\\\"line_start\\\"];i-diff > Á.É[\\\"line_start\\\"]-nbLineToScroll;i--){if(elem=_$('line_'+i)){diff+=Math.floor((elem.offsetHeight-1)/ Á.lineHeight);}}nbLineToScroll-=diff;if(Á.É[\\\"selec_direction\\\"]==\\\"up\\\"){for(line_nb=0;line_nb< Math.min(Á.É[\\\"line_start\\\"]-nbLineToScroll,lines.Æ);line_nb++){new_pos+=lines[line_nb].Æ+1;}char_left=Math.min(lines[Math.min(lines.Æ-1,line_nb)].Æ,Á.É[\\\"curr_pos\\\"]-1);if(shift_pressed)Æ=Á.É[\\\"selectionEnd\\\"]-new_pos-char_left;Á.area_select(new_pos+char_left,Æ);view=\\\"top\\\";}\\nelse{view=\\\"bottom\\\";for(line_nb=0;line_nb< Math.min(Á.É[\\\"line_start\\\"]+Á.É[\\\"line_nb\\\"]-1-nbLineToScroll,lines.Æ);line_nb++){new_pos+=lines[line_nb].Æ+1;}char_left=Math.min(lines[Math.min(lines.Æ-1,line_nb)].Æ,Á.É[\\\"curr_pos\\\"]-1);if(shift_pressed){start=Math.min(Á.É[\\\"selectionStart\\\"],new_pos+char_left);Æ=Math.max(new_pos+char_left,Á.É[\\\"selectionStart\\\"])-start;if(new_pos+char_left < Á.É[\\\"selectionStart\\\"])view=\\\"top\\\";}\\nelse start=new_pos+char_left;Á.area_select(start,Æ);}}\\nelse{var nbLineToScroll=Math.floor(toScrollAmount / Á.lineHeight);for(i=Á.É[\\\"line_start\\\"];i+diff < Á.É[\\\"line_start\\\"]+nbLineToScroll;i++){if(elem=_$('line_'+i)){diff+=Math.floor((elem.offsetHeight-1)/ Á.lineHeight);}}nbLineToScroll-=diff;if(Á.É[\\\"selec_direction\\\"]==\\\"down\\\"){view=\\\"bottom\\\";for(line_nb=0;line_nb< Math.min(Á.É[\\\"line_start\\\"]+Á.É[\\\"line_nb\\\"]-2+nbLineToScroll,lines.Æ);line_nb++){if(line_nb==Á.É[\\\"line_start\\\"]-1)char_left=Á.É[\\\"selectionStart\\\"]-new_pos;new_pos+=lines[line_nb].Æ+1;}if(shift_pressed){Æ=Math.abs(Á.É[\\\"selectionStart\\\"]-new_pos);Æ+=Math.min(lines[Math.min(lines.Æ-1,line_nb)].Æ,Á.É[\\\"curr_pos\\\"]);Á.area_select(Math.min(Á.É[\\\"selectionStart\\\"],new_pos),Æ);}\\nelse{Á.area_select(new_pos+char_left,0);}}\\nelse{view=\\\"top\\\";for(line_nb=0;line_nb< Math.min(Á.É[\\\"line_start\\\"]+nbLineToScroll-1,lines.Æ,lines.Æ);line_nb++){if(line_nb==Á.É[\\\"line_start\\\"]-1)char_left=Á.É[\\\"selectionStart\\\"]-new_pos;new_pos+=lines[line_nb].Æ+1;}if(shift_pressed){Æ=Math.abs(Á.É[\\\"selectionEnd\\\"]-new_pos-char_left);Æ+=Math.min(lines[Math.min(lines.Æ-1,line_nb)].Æ,Á.É[\\\"curr_pos\\\"])-char_left-1;Á.area_select(Math.min(Á.É[\\\"selectionEnd\\\"],new_pos+char_left),Æ);if(new_pos+char_left > Á.É[\\\"selectionEnd\\\"])view=\\\"bottom\\\";}\\nelse{Á.area_select(new_pos+char_left,0);}}}Á.check_line_selection();Á.scroll_to_view(view);};EA.Ä.start_resize=Ã(e){È.eAL.resize[\\\"id\\\"]=eA.id;È.eAL.resize[\\\"start_x\\\"]=(e)? e.pageX:event.x+document.body.scrollLeft;È.eAL.resize[\\\"start_y\\\"]=(e)? e.pageY:event.y+document.body.scrollTop;if(eA.isIE){eA.Â.focus();eA.getIESelection();}È.eAL.resize[\\\"selectionStart\\\"]=eA.Â.selectionStart;È.eAL.resize[\\\"selectionEnd\\\"]=eA.Â.selectionEnd;È.eAL.start_resize_area();};EA.Ä.toggle_full_screen=Ã(to){var t=Á,p=È,a=t.Â,html,frame,selStart,selEnd,old,icon;if(typeof(to)==\\\"undefined\\\")to=!t.fullscreen['isFull'];old=t.fullscreen['isFull'];t.fullscreen['isFull']=to;icon=_$(\\\"fullscreen\\\");selStart=t.Â.selectionStart;selEnd=t.Â.selectionEnd;html=p.document.getElementsByTagName(\\\"html\\\")[0];frame=p.document.getElementById(\\\"frame_\\\"+t.id);if(to&&to!=old){t.fullscreen['old_overflow']=p.get_css_property(html,\\\"overflow\\\");t.fullscreen['old_height']=p.get_css_property(html,\\\"height\\\");t.fullscreen['old_width']=p.get_css_property(html,\\\"width\\\");t.fullscreen['old_scrollTop']=html.scrollTop;t.fullscreen['old_scrollLeft']=html.scrollLeft;t.fullscreen['old_zIndex']=p.get_css_property(frame,\\\"z-index\\\");if(t.isOpera){html.Ç.height=\\\"100%\\\";html.Ç.width=\\\"100%\\\";}html.Ç.overflow=\\\"hidden\\\";html.scrollTop=0;html.scrollLeft=0;frame.Ç.position=\\\"absolute\\\";frame.Ç.width=html.clientWidth+\\\"px\\\";frame.Ç.height=html.clientHeight+\\\"px\\\";frame.Ç.display=\\\"block\\\";frame.Ç.zIndex=\\\"999999\\\";frame.Ç.top=\\\"0px\\\";frame.Ç.left=\\\"0px\\\";frame.Ç.top=\\\"-\\\"+p.calculeOffsetTop(frame)+\\\"px\\\";frame.Ç.left=\\\"-\\\"+p.calculeOffsetLeft(frame)+\\\"px\\\";t.switchClassSticky(icon,'editAreaButtonSelected',Ì);t.fullscreen['allow_resize']=t.resize_allowed;t.allow_resize(Ì);if(t.isFirefox){p.eAL.execCommand(t.id,\\\"update_size();\\\");t.area_select(selStart,selEnd-selStart);t.scroll_to_view();t.focus();}\\nelse{setTimeout(\\\"È.eAL.execCommand('\\\"+t.id+\\\"','update_size();');eA.focus();\\\",10);}}\\nelse if(to!=old){frame.Ç.position=\\\"static\\\";frame.Ç.zIndex=t.fullscreen['old_zIndex'];if(t.isOpera){html.Ç.height=\\\"auto\\\";html.Ç.width=\\\"auto\\\";html.Ç.overflow=\\\"auto\\\";}\\nelse if(t.isIE&&p!=top){html.Ç.overflow=\\\"auto\\\";}\\nelse{html.Ç.overflow=t.fullscreen['old_overflow'];}html.scrollTop=t.fullscreen['old_scrollTop'];html.scrollLeft=t.fullscreen['old_scrollLeft'];p.eAL.hide(t.id);p.eAL.show(t.id);t.switchClassSticky(icon,'editAreaButtonNormal',Ì);if(t.fullscreen['allow_resize'])t.allow_resize(t.fullscreen['allow_resize']);if(t.isFirefox){t.area_select(selStart,selEnd-selStart);setTimeout(\\\"eA.scroll_to_view();\\\",10);}}};EA.Ä.allow_resize=Ã(allow){var resize=_$(\\\"resize_area\\\");if(allow){resize.Ç.visibility=\\\"visible\\\";È.eAL.add_event(resize,\\\"mouseup\\\",eA.start_resize);}\\nelse{resize.Ç.visibility=\\\"hidden\\\";È.eAL.remove_event(resize,\\\"mouseup\\\",eA.start_resize);}Á.resize_allowed=allow;};EA.Ä.change_syntax=Ã(new_syntax,is_waiting){if(new_syntax==Á.Å['syntax'])return Ë;var founded=Ì;for(var i=0;i<Á.syntax_list.Æ;i++){if(Á.syntax_list[i]==new_syntax)founded=Ë;}if(founded==Ë){if(!È.eAL.load_syntax[new_syntax]){if(!is_waiting)È.eAL.load_script(È.eAL.baseURL+\\\"reg_syntax/\\\"+new_syntax+\\\".js\\\");setTimeout(\\\"eA.change_syntax('\\\"+new_syntax+\\\"',Ë);\\\",100);Á.show_waiting_screen();}\\nelse{if(!Á.allready_used_syntax[new_syntax]){È.eAL.init_syntax_regexp();Á.add_Ç(È.eAL.syntax[new_syntax][\\\"Çs\\\"]);Á.allready_used_syntax[new_syntax]=Ë;}var sel=_$(\\\"syntax_selection\\\");if(sel&&sel.Ê!=new_syntax){for(var i=0;i<sel.Æ;i++){if(sel.options[i].Ê&&sel.options[i].Ê==new_syntax)sel.options[i].selected=Ë;}}Á.Å['syntax']=new_syntax;Á.resync_highlight(Ë);Á.hide_waiting_screen();return Ë;}}return Ì;};EA.Ä.set_editable=Ã(is_editable){if(is_editable){document.body.className=\\\"\\\";Á.Â.readOnly=Ì;Á.is_editable=Ë;}\\nelse{document.body.className=\\\"non_editable\\\";Á.Â.readOnly=Ë;Á.is_editable=Ì;}if(eAs[Á.id][\\\"displayed\\\"]==Ë)Á.update_size();};EA.Ä.toggle_word_wrap=Ã(){Á.set_word_wrap(!Á.Å['word_wrap']);};EA.Ä.set_word_wrap=Ã(to){var t=Á,a=t.Â;if(t.isOpera&&t.isOpera < 9.8){Á.Å['word_wrap']=Ì;t.switchClassSticky(_$(\\\"word_wrap\\\"),'editAreaButtonDisabled',Ë);return Ì;}if(to){wrap_mode='soft';Á.container.className+=' word_wrap';Á.container.Ç.width=\\\"\\\";Á.content_highlight.Ç.width=\\\"\\\";a.Ç.width=\\\"100%\\\";if(t.isIE&&t.isIE < 7){a.Ç.width=(a.offsetWidth-5)+\\\"px\\\";}t.switchClassSticky(_$(\\\"word_wrap\\\"),'editAreaButtonSelected',Ì);}\\nelse{wrap_mode='off';Á.container.className=Á.container.className.replace(/word_wrap/g,'');t.switchClassSticky(_$(\\\"word_wrap\\\"),'editAreaButtonNormal',Ë);}Á.Â.previous_scrollWidth='';Á.Â.previous_scrollHeight='';a.wrap=wrap_mode;a.setAttribute('wrap',wrap_mode);if(!Á.isIE){var start=a.selectionStart,end=a.selectionEnd;var parNod=a.ÈNode,nxtSib=a.nextSibling;parNod.removeChild(a);parNod.insertBefore(a,nxtSib);Á.area_select(start,end-start);}Á.Å['word_wrap']=to;Á.focus();Á.update_size();Á.check_line_selection();};EA.Ä.open_file=Ã(Å){if(Å['id']!=\\\"undefined\\\"){var id=Å['id'];var new_file={};new_file['id']=id;new_file['title']=id;new_file['text']=\\\"\\\";new_file['É']=\\\"\\\";new_file['last_text_to_highlight']=\\\"\\\";new_file['last_hightlighted_text']=\\\"\\\";new_file['previous']=[];new_file['next']=[];new_file['last_undo']=\\\"\\\";new_file['smooth_selection']=Á.Å['smooth_selection'];new_file['do_highlight']=Á.Å['start_highlight'];new_file['syntax']=Á.Å['syntax'];new_file['scroll_top']=0;new_file['scroll_left']=0;new_file['selection_start']=0;new_file['selection_end']=0;new_file['edited']=Ì;new_file['font_size']=Á.Å[\\\"font_size\\\"];new_file['font_family']=Á.Å[\\\"font_family\\\"];new_file['word_wrap']=Á.Å[\\\"word_wrap\\\"];new_file['toolbar']={'links':{},'selects':{}};new_file['compare_edited_text']=new_file['text'];Á.files[id]=new_file;Á.update_file(id,Å);Á.files[id]['compare_edited_text']=Á.files[id]['text'];var html_id='tab_file_'+encodeURIComponent(id);Á.filesIdAssoc[html_id]=id;Á.files[id]['html_id']=html_id;if(!_$(Á.files[id]['html_id'])&&id!=\\\"\\\"){Á.tab_browsing_area.Ç.display=\\\"block\\\";var elem=document.createElement('li');elem.id=Á.files[id]['html_id'];var close=\\\"<img src=\\\\\\\"\\\"+È.eAL.baseURL+\\\"images/close.gif\\\\\\\" title=\\\\\\\"\\\"+Á.get_translation('close_tab','word')+\\\"\\\\\\\" onclick=\\\\\\\"eA.execCommand('close_file',eA.filesIdAssoc['\\\"+html_id+\\\"']);return Ì;\\\\\\\" class=\\\\\\\"hidden\\\\\\\" onmouseover=\\\\\\\"Á.className=''\\\\\\\" onmouseout=\\\\\\\"Á.className='hidden'\\\\\\\" />\\\";elem.innerHTML=\\\"<a onclick=\\\\\\\"javascript:eA.execCommand('switch_to_file',eA.filesIdAssoc['\\\"+html_id+\\\"']);\\\\\\\" selec=\\\\\\\"none\\\\\\\"><b><span><strong class=\\\\\\\"edited\\\\\\\">*</strong>\\\"+Á.files[id]['title']+close+\\\"</span></b></a>\\\";_$('tab_browsing_list').appendChild(elem);var elem=document.createElement('text');Á.update_size();}if(id!=\\\"\\\")Á.execCommand('file_open',Á.files[id]);Á.switch_to_file(id,Ë);return Ë;}\\nelse return Ì;};EA.Ä.close_file=Ã(id){if(Á.files[id]){Á.save_file(id);if(Á.execCommand('file_close',Á.files[id])!==Ì){var li=_$(Á.files[id]['html_id']);li.ÈNode.removeChild(li);if(id==Á.curr_file){var next_file=\\\"\\\";var is_next=Ì;for(var i in Á.files){if(is_next){next_file=i;break;}\\nelse if(i==id)is_next=Ë;\\nelse next_file=i;}Á.switch_to_file(next_file);}delete(Á.files[id]);Á.update_size();}}};EA.Ä.save_file=Ã(id){var t=Á,save,a_links,a_selects,save_butt,img,i;if(t.files[id]){var save=t.files[id];save['É']=t.É;save['last_text_to_highlight']=t.last_text_to_highlight;save['last_hightlighted_text']=t.last_hightlighted_text;save['previous']=t.previous;save['next']=t.next;save['last_undo']=t.last_undo;save['smooth_selection']=t.smooth_selection;save['do_highlight']=t.do_highlight;save['syntax']=t.Å['syntax'];save['text']=t.Â.Ê;save['scroll_top']=t.result.scrollTop;save['scroll_left']=t.result.scrollLeft;save['selection_start']=t.É[\\\"selectionStart\\\"];save['selection_end']=t.É[\\\"selectionEnd\\\"];save['font_size']=t.Å[\\\"font_size\\\"];save['font_family']=t.Å[\\\"font_family\\\"];save['word_wrap']=t.Å[\\\"word_wrap\\\"];save['toolbar']={'links':{},'selects':{}};a_links=_$(\\\"toolbar_1\\\").getElementsByTagName(\\\"a\\\");for(i=0;i<a_links.Æ;i++){if(a_links[i].getAttribute('fileSpecific')=='yes'){save_butt={};img=a_links[i].getElementsByTagName('img')[0];save_butt['classLock']=img.classLock;save_butt['className']=img.className;save_butt['oldClassName']=img.oldClassName;save['toolbar']['links'][a_links[i].id]=save_butt;}}a_selects=_$(\\\"toolbar_1\\\").getElementsByTagName(\\\"select\\\");for(i=0;i<a_selects.Æ;i++){if(a_selects[i].getAttribute('fileSpecific')=='yes'){save['toolbar']['selects'][a_selects[i].id]=a_selects[i].Ê;}}t.files[id]=save;return save;}return Ì;};EA.Ä.update_file=Ã(id,new_Ês){for(var i in new_Ês){Á.files[id][i]=new_Ês[i];}};EA.Ä.display_file=Ã(id){var t=Á,a=t.Â,new_file,a_lis,a_selects,a_links,a_options,i,j;if(id==''){a.readOnly=Ë;t.tab_browsing_area.Ç.display=\\\"none\\\";_$(\\\"no_file_selected\\\").Ç.display=\\\"block\\\";t.result.className=\\\"empty\\\";if(!t.files['']){t.open_file({id:''});}}\\nelse if(typeof(t.files[id])=='undefined'){return Ì;}\\nelse{t.result.className=\\\"\\\";a.readOnly=!t.is_editable;_$(\\\"no_file_selected\\\").Ç.display=\\\"none\\\";t.tab_browsing_area.Ç.display=\\\"block\\\";}t.check_redo(Ë);t.check_undo(Ë);t.curr_file=id;a_lis=t.tab_browsing_area.getElementsByTagName('li');for(i=0;i<a_lis.Æ;i++){if(a_lis[i].id==t.files[id]['html_id'])a_lis[i].className='selected';\\nelse a_lis[i].className='';}new_file=t.files[id];a.Ê=new_file['text'];t.set_font(new_file['font_family'],new_file['font_size']);t.area_select(new_file['selection_start'],new_file['selection_end']-new_file['selection_start']);t.manage_size(Ë);t.result.scrollTop=new_file['scroll_top'];t.result.scrollLeft=new_file['scroll_left'];t.previous=new_file['previous'];t.next=new_file['next'];t.last_undo=new_file['last_undo'];t.check_redo(Ë);t.check_undo(Ë);t.execCommand(\\\"change_highlight\\\",new_file['do_highlight']);t.execCommand(\\\"change_syntax\\\",new_file['syntax']);t.execCommand(\\\"change_smooth_selection_mode\\\",new_file['smooth_selection']);t.execCommand(\\\"set_word_wrap\\\",new_file['word_wrap']);a_links=new_file['toolbar']['links'];for(i in a_links){if(img=_$(i).getElementsByTagName('img')[0]){img.classLock=a_links[i]['classLock'];img.className=a_links[i]['className'];img.oldClassName=a_links[i]['oldClassName'];}}a_selects=new_file['toolbar']['selects'];for(i in a_selects){a_options=_$(i).options;for(j=0;j<a_options.Æ;j++){if(a_options[j].Ê==a_selects[i])_$(i).options[j].selected=Ë;}}};EA.Ä.switch_to_file=Ã(file_to_show,force_refresh){if(file_to_show!=Á.curr_file||force_refresh){Á.save_file(Á.curr_file);if(Á.curr_file!='')Á.execCommand('file_switch_off',Á.files[Á.curr_file]);Á.display_file(file_to_show);if(file_to_show!='')Á.execCommand('file_switch_on',Á.files[file_to_show]);}};EA.Ä.get_file=Ã(id){if(id==Á.curr_file)Á.save_file(id);return Á.files[id];};EA.Ä.get_all_files=Ã(){tmp_files=Á.files;Á.save_file(Á.curr_file);if(tmp_files[''])delete(Á.files['']);return tmp_files;};EA.Ä.check_file_changes=Ã(){var id=Á.curr_file;if(Á.files[id]&&Á.files[id]['compare_edited_text']!=undefined){if(Á.files[id]['compare_edited_text'].Æ==Á.Â.Ê.Æ&&Á.files[id]['compare_edited_text']==Á.Â.Ê){if(Á.files[id]['edited']!=Ì)Á.set_file_edited_mode(id,Ì);}\\nelse{if(Á.files[id]['edited']!=Ë)Á.set_file_edited_mode(id,Ë);}}};EA.Ä.set_file_edited_mode=Ã(id,to){if(Á.files[id]&&_$(Á.files[id]['html_id'])){var link=_$(Á.files[id]['html_id']).getElementsByTagName('a')[0];if(to==Ë){link.className='edited';}\\nelse{link.className='';if(id==Á.curr_file)text=Á.Â.Ê;\\nelse text=Á.files[id]['text'];Á.files[id]['compare_edited_text']=text;}Á.files[id]['edited']=to;}};EA.Ä.set_show_line_colors=Ã(new_Ê){Á.show_line_colors=new_Ê;if(new_Ê)Á.selection_field.className+=' show_colors';\\nelse Á.selection_field.className=Á.selection_field.className.replace(/ show_colors/g,'');};var EA_keys={8:\\\"Retour arriere\\\",9:\\\"Tabulation\\\",12:\\\"Milieu(pave numerique)\\\",13:\\\"Entrer\\\",16:\\\"Shift\\\",17:\\\"Ctrl\\\",18:\\\"Alt\\\",19:\\\"Pause\\\",20:\\\"Verr Maj\\\",27:\\\"Esc\\\",32:\\\"Space\\\",33:\\\"Page up\\\",34:\\\"Page down\\\",35:\\\"End\\\",36:\\\"Begin\\\",37:\\\"Left\\\",38:\\\"Up\\\",39:\\\"Right\\\",40:\\\"Down\\\",44:\\\"Impr ecran\\\",45:\\\"Inser\\\",46:\\\"Suppr\\\",91:\\\"Menu Demarrer Windows / touche pomme Mac\\\",92:\\\"Menu Demarrer Windows\\\",93:\\\"Menu contextuel Windows\\\",112:\\\"F1\\\",113:\\\"F2\\\",114:\\\"F3\\\",115:\\\"F4\\\",116:\\\"F5\\\",117:\\\"F6\\\",118:\\\"F7\\\",119:\\\"F8\\\",120:\\\"F9\\\",121:\\\"F10\\\",122:\\\"F11\\\",123:\\\"F12\\\",144:\\\"Verr Num\\\",145:\\\"Arret defil\\\"};Ã keyDown(e){if(!e){e=event;}for(var i in eA.plugins){if(typeof(eA.plugins[i].onkeydown)==\\\"Ã\\\"){if(eA.plugins[i].onkeydown(e)===Ì){if(eA.isIE)e.keyCode=0;return Ì;}}}var target_id=(e.target||e.srcElement).id;var use=Ì;if(EA_keys[e.keyCode])letter=EA_keys[e.keyCode];\\nelse letter=String.fromCharCode(e.keyCode);var low_letter=letter.toLowerCase();if(letter==\\\"Page up\\\"&&!AltPressed(e)&&!eA.isOpera){eA.execCommand(\\\"scroll_page\\\",{\\\"dir\\\":\\\"up\\\",\\\"shift\\\":ShiftPressed(e)});use=Ë;}\\nelse if(letter==\\\"Page down\\\"&&!AltPressed(e)&&!eA.isOpera){eA.execCommand(\\\"scroll_page\\\",{\\\"dir\\\":\\\"down\\\",\\\"shift\\\":ShiftPressed(e)});use=Ë;}\\nelse if(eA.is_editable==Ì){return Ë;}\\nelse if(letter==\\\"Tabulation\\\"&&target_id==\\\"Â\\\"&&!CtrlPressed(e)&&!AltPressed(e)){if(ShiftPressed(e))eA.execCommand(\\\"invert_tab_selection\\\");\\nelse eA.execCommand(\\\"tab_selection\\\");use=Ë;if(eA.isOpera||(eA.isFirefox&&eA.isMac))setTimeout(\\\"eA.execCommand('focus');\\\",1);}\\nelse if(letter==\\\"Entrer\\\"&&target_id==\\\"Â\\\"){if(eA.press_enter())use=Ë;}\\nelse if(letter==\\\"Entrer\\\"&&target_id==\\\"area_search\\\"){eA.execCommand(\\\"area_search\\\");use=Ë;}\\nelse  if(letter==\\\"Esc\\\"){eA.execCommand(\\\"close_all_inline_popup\\\",e);use=Ë;}\\nelse if(CtrlPressed(e)&&!AltPressed(e)&&!ShiftPressed(e)){switch(low_letter){case \\\"f\\\":eA.execCommand(\\\"area_search\\\");use=Ë;break;case \\\"r\\\":eA.execCommand(\\\"area_replace\\\");use=Ë;break;case \\\"q\\\":eA.execCommand(\\\"close_all_inline_popup\\\",e);use=Ë;break;case \\\"h\\\":eA.execCommand(\\\"change_highlight\\\");use=Ë;break;case \\\"g\\\":setTimeout(\\\"eA.execCommand('go_to_line');\\\",5);use=Ë;break;case \\\"e\\\":eA.execCommand(\\\"show_help\\\");use=Ë;break;case \\\"z\\\":use=Ë;eA.execCommand(\\\"undo\\\");break;case \\\"y\\\":use=Ë;eA.execCommand(\\\"redo\\\");break;default:break;}}if(eA.next.Æ > 0){setTimeout(\\\"eA.check_redo();\\\",10);}setTimeout(\\\"eA.check_file_changes();\\\",10);if(use){if(eA.isIE)e.keyCode=0;return Ì;}return Ë;};Ã AltPressed(e){if(window.event){return(window.event.altKey);}\\nelse{if(e.modifiers)return(e.altKey||(e.modifiers % 2));\\nelse return e.altKey;}};Ã CtrlPressed(e){if(window.event){return(window.event.ctrlKey);}\\nelse{return(e.ctrlKey||(e.modifiers==2)||(e.modifiers==3)||(e.modifiers>5));}};Ã ShiftPressed(e){if(window.event){return(window.event.shiftKey);}\\nelse{return(e.shiftKey||(e.modifiers>3));}};\tEA.Ä.show_search=Ã(){if(_$(\\\"area_search_replace\\\").Ç.visibility==\\\"visible\\\"){Á.hidden_search();}\\nelse{Á.open_inline_popup(\\\"area_search_replace\\\");var text=Á.area_get_selection();var search=text.split(\\\"\\\\n\\\")[0];_$(\\\"area_search\\\").Ê=search;_$(\\\"area_search\\\").focus();}};EA.Ä.hidden_search=Ã(){Á.close_inline_popup(\\\"area_search_replace\\\");};EA.Ä.area_search=Ã(mode){if(!mode)mode=\\\"search\\\";_$(\\\"area_search_msg\\\").innerHTML=\\\"\\\";var search=_$(\\\"area_search\\\").Ê;Á.Â.focus();Á.Â.ÂFocused=Ë;var infos=Á.get_selection_infos();var start=infos[\\\"selectionStart\\\"];var pos=-1;var pos_begin=-1;var Æ=search.Æ;if(_$(\\\"area_search_replace\\\").Ç.visibility!=\\\"visible\\\"){Á.show_search();return;}if(search.Æ==0){_$(\\\"area_search_msg\\\").innerHTML=Á.get_translation(\\\"search_field_empty\\\");return;}if(mode!=\\\"replace\\\"){if(_$(\\\"area_search_reg_exp\\\").checked)start++;\\nelse start+=search.Æ;}if(_$(\\\"area_search_reg_exp\\\").checked){var opt=\\\"m\\\";if(!_$(\\\"area_search_match_case\\\").checked)opt+=\\\"i\\\";var reg=new RegExp(search,opt);pos=infos[\\\"full_text\\\"].substr(start).search(reg);pos_begin=infos[\\\"full_text\\\"].search(reg);if(pos!=-1){pos+=start;Æ=infos[\\\"full_text\\\"].substr(start).match(reg)[0].Æ;}\\nelse if(pos_begin!=-1){Æ=infos[\\\"full_text\\\"].match(reg)[0].Æ;}}\\nelse{if(_$(\\\"area_search_match_case\\\").checked){pos=infos[\\\"full_text\\\"].indexOf(search,start);pos_begin=infos[\\\"full_text\\\"].indexOf(search);}\\nelse{pos=infos[\\\"full_text\\\"].toLowerCase().indexOf(search.toLowerCase(),start);pos_begin=infos[\\\"full_text\\\"].toLowerCase().indexOf(search.toLowerCase());}}if(pos==-1&&pos_begin==-1){_$(\\\"area_search_msg\\\").innerHTML=\\\"<strong>\\\"+search+\\\"</strong> \\\"+Á.get_translation(\\\"not_found\\\");return;}\\nelse if(pos==-1&&pos_begin !=-1){begin=pos_begin;_$(\\\"area_search_msg\\\").innerHTML=Á.get_translation(\\\"restart_search_at_begin\\\");}\\nelse begin=pos;if(mode==\\\"replace\\\"&&pos==infos[\\\"indexOfCursor\\\"]){var replace=_$(\\\"area_replace\\\").Ê;var new_text=\\\"\\\";if(_$(\\\"area_search_reg_exp\\\").checked){var opt=\\\"m\\\";if(!_$(\\\"area_search_match_case\\\").checked)opt+=\\\"i\\\";var reg=new RegExp(search,opt);new_text=infos[\\\"full_text\\\"].substr(0,begin)+infos[\\\"full_text\\\"].substr(start).replace(reg,replace);}\\nelse{new_text=infos[\\\"full_text\\\"].substr(0,begin)+replace+infos[\\\"full_text\\\"].substr(begin+Æ);}Á.Â.Ê=new_text;Á.area_select(begin,Æ);Á.area_search();}\\nelse Á.area_select(begin,Æ);};EA.Ä.area_replace=Ã(){Á.area_search(\\\"replace\\\");};EA.Ä.area_replace_all=Ã(){var base_text=Á.Â.Ê;var search=_$(\\\"area_search\\\").Ê;var replace=_$(\\\"area_replace\\\").Ê;if(search.Æ==0){_$(\\\"area_search_msg\\\").innerHTML=Á.get_translation(\\\"search_field_empty\\\");return;}var new_text=\\\"\\\";var nb_change=0;if(_$(\\\"area_search_reg_exp\\\").checked){var opt=\\\"mg\\\";if(!_$(\\\"area_search_match_case\\\").checked)opt+=\\\"i\\\";var reg=new RegExp(search,opt);nb_change=infos[\\\"full_text\\\"].match(reg).Æ;new_text=infos[\\\"full_text\\\"].replace(reg,replace);}\\nelse{if(_$(\\\"area_search_match_case\\\").checked){var tmp_tab=base_text.split(search);nb_change=tmp_tab.Æ-1;new_text=tmp_tab.join(replace);}\\nelse{var lower_Ê=base_text.toLowerCase();var lower_search=search.toLowerCase();var start=0;var pos=lower_Ê.indexOf(lower_search);while(pos!=-1){nb_change++;new_text+=Á.Â.Ê.substring(start,pos)+replace;start=pos+search.Æ;pos=lower_Ê.indexOf(lower_search,pos+1);}new_text+=Á.Â.Ê.substring(start);}}if(new_text==base_text){_$(\\\"area_search_msg\\\").innerHTML=\\\"<strong>\\\"+search+\\\"</strong> \\\"+Á.get_translation(\\\"not_found\\\");}\\nelse{Á.Â.Ê=new_text;_$(\\\"area_search_msg\\\").innerHTML=\\\"<strong>\\\"+nb_change+\\\"</strong> \\\"+Á.get_translation(\\\"occurrence_replaced\\\");setTimeout(\\\"eA.Â.focus();eA.Â.ÂFocused=Ë;\\\",100);}}; EA.Ä.change_highlight=Ã(change_to){if(Á.Å[\\\"syntax\\\"].Æ==0&&change_to==Ì){Á.switchClassSticky(_$(\\\"highlight\\\"),'editAreaButtonDisabled',Ë);Á.switchClassSticky(_$(\\\"reset_highlight\\\"),'editAreaButtonDisabled',Ë);return Ì;}if(Á.do_highlight==change_to)return Ì;Á.getIESelection();var pos_start=Á.Â.selectionStart;var pos_end=Á.Â.selectionEnd;if(Á.do_highlight===Ë||change_to==Ì)Á.disable_highlight();\\nelse Á.enable_highlight();Á.Â.focus();Á.Â.selectionStart=pos_start;Á.Â.selectionEnd=pos_end;Á.setIESelection();};EA.Ä.disable_highlight=Ã(displayOnly){var t=Á,a=t.Â,new_Obj,old_class,new_class;t.selection_field.innerHTML=\\\"\\\";t.selection_field_text.innerHTML=\\\"\\\";t.content_highlight.Ç.visibility=\\\"hidden\\\";new_Obj=t.content_highlight.cloneNode(Ì);new_Obj.innerHTML=\\\"\\\";t.content_highlight.ÈNode.insertBefore(new_Obj,t.content_highlight);t.content_highlight.ÈNode.removeChild(t.content_highlight);t.content_highlight=new_Obj;old_class=È.getAttribute(a,\\\"class\\\");if(old_class){new_class=old_class.replace(\\\"hidden\\\",\\\"\\\");È.setAttribute(a,\\\"class\\\",new_class);}a.Ç.backgroundColor=\\\"transÈ\\\";t.switchClassSticky(_$(\\\"highlight\\\"),'editAreaButtonNormal',Ë);t.switchClassSticky(_$(\\\"reset_highlight\\\"),'editAreaButtonDisabled',Ë);t.do_highlight=Ì;t.switchClassSticky(_$(\\\"change_smooth_selection\\\"),'editAreaButtonSelected',Ë);if(typeof(t.smooth_selection_before_highlight)!=\\\"undefined\\\"&&t.smooth_selection_before_highlight===Ì){t.change_smooth_selection_mode(Ì);}};EA.Ä.enable_highlight=Ã(){var t=Á,a=t.Â,new_class;t.show_waiting_screen();t.content_highlight.Ç.visibility=\\\"visible\\\";new_class=È.getAttribute(a,\\\"class\\\")+\\\" hidden\\\";È.setAttribute(a,\\\"class\\\",new_class);if(t.isIE)a.Ç.backgroundColor=\\\"#FFFFFF\\\";t.switchClassSticky(_$(\\\"highlight\\\"),'editAreaButtonSelected',Ì);t.switchClassSticky(_$(\\\"reset_highlight\\\"),'editAreaButtonNormal',Ì);t.smooth_selection_before_highlight=t.smooth_selection;if(!t.smooth_selection)t.change_smooth_selection_mode(Ë);t.switchClassSticky(_$(\\\"change_smooth_selection\\\"),'editAreaButtonDisabled',Ë);t.do_highlight=Ë;t.resync_highlight();t.hide_waiting_screen();};EA.Ä.maj_highlight=Ã(infos){var debug_opti=\\\"\\\",tps_start=new Date().getTime(),tps_middle_opti=new Date().getTime();var t=Á,hightlighted_text,updated_highlight;var textToHighlight=infos[\\\"full_text\\\"],doSyntaxOpti=Ì,doHtmlOpti=Ì,stay_begin=\\\"\\\",stay_end=\\\"\\\",trace_new,trace_last;if(t.last_text_to_highlight==infos[\\\"full_text\\\"]&&t.resync_highlight!==Ë)return;if(t.reload_highlight===Ë){t.reload_highlight=Ì;}\\nelse if(textToHighlight.Æ==0){textToHighlight=\\\"\\\\n \\\";}\\nelse{changes=t.checkTextEvolution(t.last_text_to_highlight,textToHighlight);trace_new=t.get_syntax_trace(changes.newTextLine).replace(/\\\\r/g,'');trace_last=t.get_syntax_trace(changes.lastTextLine).replace(/\\\\r/g,'');doSyntaxOpti=(trace_new==trace_last);if(!doSyntaxOpti&&trace_new==\\\"\\\\n\\\"+trace_last&&/^[ \\t\\s]*\\\\n[ \\t\\s]*$/.test(changes.newText.replace(/\\\\r/g,''))&&changes.lastText==\\\"\\\"){doSyntaxOpti=Ë;}if(doSyntaxOpti){tps_middle_opti=new Date().getTime();stay_begin=t.last_hightlighted_text.split(\\\"\\\\n\\\").slice(0,changes.lineStart).join(\\\"\\\\n\\\");if(changes.lineStart>0)stay_begin+=\\\"\\\\n\\\";stay_end=t.last_hightlighted_text.split(\\\"\\\\n\\\").slice(changes.lineLastEnd+1).join(\\\"\\\\n\\\");if(stay_end.Æ>0)stay_end=\\\"\\\\n\\\"+stay_end;if(stay_begin.split('<span').Æ !=stay_begin.split('</span').Æ||stay_end.split('<span').Æ !=stay_end.split('</span').Æ){doSyntaxOpti=Ì;stay_end='';stay_begin='';}\\nelse{if(stay_begin.Æ==0&&changes.posLastEnd==-1)changes.newTextLine+=\\\"\\\\n\\\";textToHighlight=changes.newTextLine;}}if(t.Å[\\\"debug\\\"]){var ch=changes;debug_opti=(doSyntaxOpti?\\\"Optimisation\\\":\\\"No optimisation\\\")+\\\" start:\\\"+ch.posStart+\\\"(\\\"+ch.lineStart+\\\")\\\"+\\\" end_new:\\\"+ch.posNewEnd+\\\"(\\\"+ch.lineNewEnd+\\\")\\\"+\\\" end_last:\\\"+ch.posLastEnd+\\\"(\\\"+ch.lineLastEnd+\\\")\\\"+\\\"\\\\nchanged_text:\\\"+ch.newText+\\\"=> trace:\\\"+trace_new+\\\"\\\\nchanged_last_text:\\\"+ch.lastText+\\\"=> trace:\\\"+trace_last+\\\"\\\\nchanged_line:\\\"+ch.newTextLine+\\\"\\\\nlast_changed_line:\\\"+ch.lastTextLine+\\\"\\\\nstay_begin:\\\"+stay_begin.slice(-100)+\\\"\\\\nstay_end:\\\"+stay_end.substr(0,100);+\\\"\\\\n\\\";}}tps_end_opti=new Date().getTime();updated_highlight=t.colorize_text(textToHighlight);tpsAfterReg=new Date().getTime();doSyntaxOpti=doHtmlOpti=Ì;if(doSyntaxOpti){try{var replacedBloc,i,nbStart='',nbEnd='',newHtml,ÆOld,ÆNew;replacedBloc=t.last_hightlighted_text.substring(stay_begin.Æ,t.last_hightlighted_text.Æ-stay_end.Æ);ÆOld=replacedBloc.Æ;ÆNew=updated_highlight.Æ;for(i=0;i < ÆOld&&i < ÆNew&&replacedBloc.charAt(i)==updated_highlight.charAt(i);i++){}nbStart=i;for(i=0;i+nbStart < ÆOld&&i+nbStart < ÆNew&&replacedBloc.charAt(ÆOld-i-1)==updated_highlight.charAt(ÆNew-i-1);i++){}nbEnd=i;lastHtml=replacedBloc.substring(nbStart,ÆOld-nbEnd);newHtml=updated_highlight.substring(nbStart,ÆNew-nbEnd);if(newHtml.indexOf('<span')==-1&&newHtml.indexOf('</span')==-1&&lastHtml.indexOf('<span')==-1&&lastHtml.indexOf('</span')==-1){var beginStr,nbOpendedSpan,nbClosedSpan,nbUnchangedChars,span,textNode;doHtmlOpti=Ë;beginStr=t.last_hightlighted_text.substr(0,stay_begin.Æ+nbStart);newHtml=newHtml.replace(/&lt;/g,'<').replace(/&gt;/g,'>').replace(/&amp;/g,'&');nbOpendedSpan=beginStr.split('<span').Æ-1;nbClosedSpan=beginStr.split('</span').Æ-1;span=t.content_highlight.getElementsByTagName('span')[ nbOpendedSpan ];ÈSpan=span;maxStartOffset=maxEndOffset=0;if(nbOpendedSpan==nbClosedSpan){while(ÈSpan.ÈNode !=t.content_highlight&&ÈSpan.ÈNode.tagName !='PRE'){ÈSpan=ÈSpan.ÈNode;}}\\nelse{maxStartOffset=maxEndOffset=beginStr.Æ+1;nbClosed=beginStr.substr(Math.max(0,beginStr.lastIndexOf('<span',maxStartOffset-1))).split('</span').Æ-1;while(nbClosed > 0){nbClosed--;ÈSpan=ÈSpan.ÈNode;}while(ÈSpan.ÈNode !=t.content_highlight&&ÈSpan.ÈNode.tagName !='PRE'&&(tmpMaxStartOffset=Math.max(0,beginStr.lastIndexOf('<span',maxStartOffset-1)))<(tmpMaxEndOffset=Math.max(0,beginStr.lastIndexOf('</span',maxEndOffset-1)))){maxStartOffset=tmpMaxStartOffset;maxEndOffset=tmpMaxEndOffset;}}if(ÈSpan.ÈNode==t.content_highlight||ÈSpan.ÈNode.tagName=='PRE'){maxStartOffset=Math.max(0,beginStr.indexOf('<span'));}if(maxStartOffset==beginStr.Æ){nbSubSpanBefore=0;}\\nelse{lastEndPos=Math.max(0,beginStr.lastIndexOf('>',maxStartOffset));nbSubSpanBefore=beginStr.substr(lastEndPos).split('<span').Æ-1;}if(nbSubSpanBefore==0){textNode=ÈSpan.firstChild;}\\nelse{lastSubSpan=ÈSpan.getElementsByTagName('span')[ nbSubSpanBefore-1 ];while(lastSubSpan.ÈNode !=ÈSpan){lastSubSpan=lastSubSpan.ÈNode;}if(lastSubSpan.nextSibling==null||lastSubSpan.nextSibling.nodeType !=3){textNode=document.createTextNode('');lastSubSpan.ÈNode.insertBefore(textNode,lastSubSpan.nextSibling);}\\nelse{textNode=lastSubSpan.nextSibling;}}if((lastIndex=beginStr.lastIndexOf('>'))==-1){nbUnchangedChars=beginStr.Æ;}\\nelse{nbUnchangedChars=beginStr.substr(lastIndex+1).replace(/&lt;/g,'<').replace(/&gt;/g,'>').replace(/&amp;/g,'&').Æ;}if(t.isIE){nbUnchangedChars-=(beginStr.substr(beginStr.Æ-nbUnchangedChars).split(\\\"\\\\n\\\").Æ-1);textNode.replaceData(nbUnchangedChars,lastHtml.replace(/\\\\n/g,'').Æ,newHtml.replace(/\\\\n/g,''));}\\nelse{textNode.replaceData(nbUnchangedChars,lastHtml.Æ,newHtml);}}}catch(e){doHtmlOpti=Ì;}}tpsAfterOpti2=new Date().getTime();hightlighted_text=stay_begin+updated_highlight+stay_end;if(!doHtmlOpti){var new_Obj=t.content_highlight.cloneNode(Ì);if((t.isIE&&t.isIE < 8)||(t.isOpera&&t.isOpera < 9.6))new_Obj.innerHTML=\\\"<pre><span class='\\\"+t.Å[\\\"syntax\\\"]+\\\"'>\\\"+hightlighted_text+\\\"</span></pre>\\\";\\nelse new_Obj.innerHTML=\\\"<span class='\\\"+t.Å[\\\"syntax\\\"]+\\\"'>\\\"+hightlighted_text+\\\"</span>\\\";t.content_highlight.ÈNode.replaceChild(new_Obj,t.content_highlight);t.content_highlight=new_Obj;}t.last_text_to_highlight=infos[\\\"full_text\\\"];t.last_hightlighted_text=hightlighted_text;tps3=new Date().getTime();if(t.Å[\\\"debug\\\"]){t.debug.Ê=\\\"Tps optimisation \\\"+(tps_end_opti-tps_start)+\\\" | tps reg exp:\\\"+(tpsAfterReg-tps_end_opti)+\\\" | tps opti HTML:\\\"+(tpsAfterOpti2-tpsAfterReg)+' '+(doHtmlOpti ? 'yes':'no')+\\\" | tps update highlight content:\\\"+(tps3-tpsAfterOpti2)+\\\" | tpsTotal:\\\"+(tps3-tps_start)+\\\"(\\\"+tps3+\\\")\\\\n\\\"+debug_opti;}};EA.Ä.resync_highlight=Ã(reload_now){Á.reload_highlight=Ë;Á.last_text_to_highlight=\\\"\\\";Á.focus();if(reload_now)Á.check_line_selection(Ì);}; EA.Ä.comment_or_quote=Ã(){var new_class=\\\"\\\",close_tag=\\\"\\\",sy,arg,i;sy=È.eAL.syntax[eA.current_code_lang];arg=EA.Ä.comment_or_quote.arguments[0];for(i in sy[\\\"quotes\\\"]){if(arg.indexOf(i)==0){new_class=\\\"quotesmarks\\\";close_tag=sy[\\\"quotes\\\"][i];}}if(new_class.Æ==0){for(var i in sy[\\\"comments\\\"]){if(arg.indexOf(i)==0){new_class=\\\"comments\\\";close_tag=sy[\\\"comments\\\"][i];}}}if(close_tag==\\\"\\\\n\\\"){return \\\"µ__\\\"+new_class+\\\"__µ\\\"+arg.replace(/(\\\\r?\\\\n)?$/m,\\\"µ_END_µ$1\\\");}\\nelse{reg=new RegExp(È.eAL.get_escaped_regexp(close_tag)+\\\"$\\\",\\\"m\\\");if(arg.search(reg)!=-1)return \\\"µ__\\\"+new_class+\\\"__µ\\\"+arg+\\\"µ_END_µ\\\";\\nelse return \\\"µ__\\\"+new_class+\\\"__µ\\\"+arg;}};EA.Ä.get_syntax_trace=Ã(text){if(Á.Å[\\\"syntax\\\"].Æ>0&&È.eAL.syntax[Á.Å[\\\"syntax\\\"]][\\\"syntax_trace_regexp\\\"])return text.replace(È.eAL.syntax[Á.Å[\\\"syntax\\\"]][\\\"syntax_trace_regexp\\\"],\\\"$3\\\");};EA.Ä.colorize_text=Ã(text){text=\\\" \\\"+text;if(Á.Å[\\\"syntax\\\"].Æ>0)text=Á.apply_syntax(text,Á.Å[\\\"syntax\\\"]);return text.substr(1).replace(/&/g,\\\"&amp;\\\").replace(/</g,\\\"&lt;\\\").replace(/>/g,\\\"&gt;\\\").replace(/µ_END_µ/g,\\\"</span>\\\").replace(/µ__([a-zA-Z0-9]+)__µ/g,\\\"<span class='$1'>\\\");};EA.Ä.apply_syntax=Ã(text,lang){var sy;Á.current_code_lang=lang;if(!È.eAL.syntax[lang])return text;sy=È.eAL.syntax[lang];if(sy[\\\"custom_regexp\\\"]['before']){for(var i in sy[\\\"custom_regexp\\\"]['before']){var convert=\\\"$1µ__\\\"+sy[\\\"custom_regexp\\\"]['before'][i]['class']+\\\"__µ$2µ_END_µ$3\\\";text=text.replace(sy[\\\"custom_regexp\\\"]['before'][i]['regexp'],convert);}}if(sy[\\\"comment_or_quote_reg_exp\\\"]){text=text.replace(sy[\\\"comment_or_quote_reg_exp\\\"],Á.comment_or_quote);}if(sy[\\\"keywords_reg_exp\\\"]){for(var i in sy[\\\"keywords_reg_exp\\\"]){text=text.replace(sy[\\\"keywords_reg_exp\\\"][i],'µ__'+i+'__µ$2µ_END_µ');}}if(sy[\\\"delimiters_reg_exp\\\"]){text=text.replace(sy[\\\"delimiters_reg_exp\\\"],'µ__delimiters__µ$1µ_END_µ');}if(sy[\\\"operators_reg_exp\\\"]){text=text.replace(sy[\\\"operators_reg_exp\\\"],'µ__operators__µ$1µ_END_µ');}if(sy[\\\"custom_regexp\\\"]['after']){for(var i in sy[\\\"custom_regexp\\\"]['after']){var convert=\\\"$1µ__\\\"+sy[\\\"custom_regexp\\\"]['after'][i]['class']+\\\"__µ$2µ_END_µ$3\\\";text=text.replace(sy[\\\"custom_regexp\\\"]['after'][i]['regexp'],convert);}}return text;};var editArea= eA;EditArea=EA;</script>\".replace(/Á/g,'this').replace(/Â/g,'textarea').replace(/Ã/g,'function').replace(/Ä/g,'prototype').replace(/Å/g,'settings').replace(/Æ/g,'length').replace(/Ç/g,'style').replace(/È/g,'parent').replace(/É/g,'last_selection').replace(/Ê/g,'value').replace(/Ë/g,'true').replace(/Ì/g,'false');\neditAreaLoader.template= \"<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?> <!DOCTYPE html PUBLIC \\\"-//W3C//DTD XHTML 1.1//EN\\\" \\\"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd\\\"> <html xmlns=\\\"http://www.w3.org/1999/xhtml\\\" xml:lang=\\\"en\\\" > <head> <title>EditArea</title> <meta http-equiv=\\\"Content-Type\\\" content=\\\"text/html; charset=utf-8\\\" /> <meta http-equiv=\\\"X-UA-Compatible\\\" content=\\\"IE=EmulateIE7\\\"/> [__CSSRULES__] [__JSCODE__] </head> <body> <div id='editor'> <div class='area_toolbar' id='toolbar_1'>[__TOOLBAR__]</div> <div class='area_toolbar' id='tab_browsing_area'><ul id='tab_browsing_list' class='menu'> <li> </li> </ul></div> <div id='result'> <div id='no_file_selected'></div> <div id='container'> <div id='cursor_pos' class='edit_area_cursor'>&nbsp;</div> <div id='end_bracket' class='edit_area_cursor'>&nbsp;</div> <div id='selection_field'></div> <div id='line_number' selec='none'></div> <div id='content_highlight'></div> <div id='test_font_size'></div> <div id='selection_field_text'></div> <textarea id='textarea' wrap='off' onchange='editArea.execCommand(\\\"onchange\\\");' onfocus='javascript:editArea.textareaFocused=true;' onblur='javascript:editArea.textareaFocused=false;'> </textarea> </div> </div> <div class='area_toolbar' id='toolbar_2'> <table class='statusbar' cellspacing='0' cellpadding='0'> <tr> <td class='total' selec='none'>{$position}:</td> <td class='infos' selec='none'> {$line_abbr} <span  id='linePos'>0</span>, {$char_abbr} <span id='currPos'>0</span> </td> <td class='total' selec='none'>{$total}:</td> <td class='infos' selec='none'> {$line_abbr} <span id='nbLine'>0</span>, {$char_abbr} <span id='nbChar'>0</span> </td> <td class='resize'> <span id='resize_area'><img src='[__BASEURL__]images/statusbar_resize.gif' alt='resize' selec='none'></span> </td> </tr> </table> </div> </div> <div id='processing'> <div id='processing_text'> {$processing} </div> </div> <div id='area_search_replace' class='editarea_popup'> <table cellspacing='2' cellpadding='0' style='width: 100%'> <tr> <td selec='none'>{$search}</td> <td><input type='text' id='area_search' /></td> <td id='close_area_search_replace'> <a onclick='Javascript:editArea.execCommand(\\\"hidden_search\\\")'><img selec='none' src='[__BASEURL__]images/close.gif' alt='{$close_popup}' title='{$close_popup}' /></a><br /> </tr><tr> <td selec='none'>{$replace}</td> <td><input type='text' id='area_replace' /></td> <td><img id='move_area_search_replace' onmousedown='return parent.start_move_element(event,\\\"area_search_replace\\\", parent.frames[\\\"frame_\\\"+editArea.id]);'  src='[__BASEURL__]images/move.gif' alt='{$move_popup}' title='{$move_popup}' /></td> </tr> </table> <div class='button'> <input type='checkbox' id='area_search_match_case' /><label for='area_search_match_case' selec='none'>{$match_case}</label> <input type='checkbox' id='area_search_reg_exp' /><label for='area_search_reg_exp' selec='none'>{$reg_exp}</label> <br /> <a onclick='Javascript:editArea.execCommand(\\\"area_search\\\")' selec='none'>{$find_next}</a> <a onclick='Javascript:editArea.execCommand(\\\"area_replace\\\")' selec='none'>{$replace}</a> <a onclick='Javascript:editArea.execCommand(\\\"area_replace_all\\\")' selec='none'>{$replace_all}</a><br /> </div> <div id='area_search_msg' selec='none'></div> </div> <div id='edit_area_help' class='editarea_popup'> <div class='close_popup'> <a onclick='Javascript:editArea.execCommand(\\\"close_all_inline_popup\\\")'><img src='[__BASEURL__]images/close.gif' alt='{$close_popup}' title='{$close_popup}' /></a> </div> <div><h2>Editarea [__EA_VERSION__]</h2><br /> <h3>{$shortcuts}:</h3> {$tab}: {$add_tab}<br /> {$shift}+{$tab}: {$remove_tab}<br /> {$ctrl}+f: {$search_command}<br /> {$ctrl}+r: {$replace_command}<br /> {$ctrl}+h: {$highlight}<br /> {$ctrl}+g: {$go_to_line}<br /> {$ctrl}+z: {$undo}<br /> {$ctrl}+y: {$redo}<br /> {$ctrl}+e: {$help}<br /> {$ctrl}+q, {$esc}: {$close_popup}<br /> {$accesskey} E: {$toggle}<br /> <br /> <em>{$about_notice}</em> <br /><div class='copyright'>&copy; Christophe Dolivet 2007-2010</div> </div> </div> </body> </html> \";\neditAreaLoader.iframe_css= \"<style>body,html{margin:0;padding:0;height:100%;border:none;overflow:hidden;background-color:#FFF;}body,html,table,form,textarea{font:12px monospace,sans-serif;}#editor{border:solid #888 1px;overflow:hidden;}#result{z-index:4;overflow-x:auto;overflow-y:scroll;border-top:solid #888 1px;border-bottom:solid #888 1px;position:relative;clear:both;}#result.empty{overflow:hidden;}#container{overflow:hidden;border:solid blue 0;position:relative;z-index:10;padding:0 5px 0 45px;}#textarea{position:relative;top:0;left:0;margin:0;padding:0;width:100%;height:100%;overflow:hidden;z-index:7;border-width:0;background-color:transparent;resize:none;}#textarea,#textarea:hover{outline:none;}#content_highlight{white-space:pre;margin:0;padding:0;position:absolute;z-index:4;overflow:visible;}#selection_field,#selection_field_text{margin:0;background-color:#E1F2F9;position:absolute;z-index:5;top:-100px;padding:0;white-space:pre;overflow:hidden;}#selection_field.show_colors {z-index:3;background-color:#EDF9FC;}#selection_field strong{font-weight:normal;}#selection_field.show_colors *,#selection_field_text * {visibility:hidden;}#selection_field_text{background-color:transparent;}#selection_field_text strong{font-weight:normal;background-color:#3399FE;color:#FFF;visibility:visible;}#container.word_wrap #content_highlight,#container.word_wrap #selection_field,#container.word_wrap #selection_field_text,#container.word_wrap #test_font_size{white-space:pre-wrap;white-space:-moz-pre-wrap !important;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word;width:99%;}#line_number{position:absolute;overflow:hidden;border-right:solid black 1px;z-index:8;width:38px;padding:0 5px 0 0;margin:0 0 0 -45px;text-align:right;color:#AAAAAA;}#test_font_size{padding:0;margin:0;visibility:hidden;position:absolute;white-space:pre;}pre{margin:0;padding:0;}.hidden{opacity:0.2;filter:alpha(opacity=20);}#result .edit_area_cursor{position:absolute;z-index:6;background-color:#FF6633;top:-100px;margin:0;}#result .edit_area_selection_field .overline{background-color:#996600;}.editarea_popup{border:solid 1px #888888;background-color:#ECE9D8;width:250px;padding:4px;position:absolute;visibility:hidden;z-index:15;top:-500px;}.editarea_popup,.editarea_popup table{font-family:sans-serif;font-size:10pt;}.editarea_popup img{border:0;}.editarea_popup .close_popup{float:right;line-height:16px;border:0;padding:0;}.editarea_popup h1,.editarea_popup h2,.editarea_popup h3,.editarea_popup h4,.editarea_popup h5,.editarea_popup h6{margin:0;padding:0;}.editarea_popup .copyright{text-align:right;}div#area_search_replace{}div#area_search_replace img{border:0;}div#area_search_replace div.button{text-align:center;line-height:1.7em;}div#area_search_replace .button a{cursor:pointer;border:solid 1px #888888;background-color:#DEDEDE;text-decoration:none;padding:0 2px;color:#000000;white-space:nowrap;}div#area_search_replace a:hover{background-color:#EDEDED;}div#area_search_replace  #move_area_search_replace{cursor:move;border:solid 1px #888;}div#area_search_replace  #close_area_search_replace{text-align:right;vertical-align:top;white-space:nowrap;}div#area_search_replace  #area_search_msg{height:18px;overflow:hidden;border-top:solid 1px #888;margin-top:3px;}#edit_area_help{width:350px;}#edit_area_help div.close_popup{float:right;}.area_toolbar{width:100%;margin:0;padding:0;background-color:#ECE9D8;text-align:center;}.area_toolbar,.area_toolbar table{font:11px sans-serif;}.area_toolbar img{border:0;vertical-align:middle;}.area_toolbar input{margin:0;padding:0;}.area_toolbar select{font-family:'MS Sans Serif',sans-serif,Verdana,Arial;font-size:7pt;font-weight:normal;margin:2px 0 0 0 ;padding:0;vertical-align:top;background-color:#F0F0EE;}table.statusbar{width:100%;}.area_toolbar td.infos{text-align:center;width:130px;border-right:solid 1px #888;border-width:0 1px 0 0;padding:0;}.area_toolbar td.total{text-align:right;width:50px;padding:0;}.area_toolbar td.resize{text-align:right;}.area_toolbar span#resize_area{cursor:nw-resize;visibility:hidden;}.editAreaButtonNormal,.editAreaButtonOver,.editAreaButtonDown,.editAreaSeparator,.editAreaSeparatorLine,.editAreaButtonDisabled,.editAreaButtonSelected {border:0; margin:0; padding:0; background:transparent;margin-top:0;margin-left:1px;padding:0;}.editAreaButtonNormal {border:1px solid #ECE9D8 !important;cursor:pointer;}.editAreaButtonOver {border:1px solid #0A246A !important;cursor:pointer;background-color:#B6BDD2;}.editAreaButtonDown {cursor:pointer;border:1px solid #0A246A !important;background-color:#8592B5;}.editAreaButtonSelected {border:1px solid #C0C0BB !important;cursor:pointer;background-color:#F4F2E8;}.editAreaButtonDisabled {filter:progid:DXImageTransform.Microsoft.Alpha(opacity=30);-moz-opacity:0.3;opacity:0.3;border:1px solid #F0F0EE !important;cursor:pointer;}.editAreaSeparatorLine {margin:1px 2px;background-color:#C0C0BB;width:2px;height:18px;}#processing{display:none;background-color:#ECE9D8;border:solid #888 1px;position:absolute;top:0;left:0;width:100%;height:100%;z-index:100;text-align:center;}#processing_text{position:absolute;left:50%;top:50%;width:200px;height:20px;margin-left:-100px;margin-top:-10px;text-align:center;}#tab_browsing_area{display:none;background-color:#CCC9A8;border-top:1px solid #888;text-align:left;margin:0;}#tab_browsing_list {padding:0;margin:0;list-style-type:none;white-space:nowrap;}#tab_browsing_list li {float:left;margin:-1px;}#tab_browsing_list a {position:relative;display:block;text-decoration:none;float:left;cursor:pointer;line-height:14px;}#tab_browsing_list a span {display:block;color:#000;background:#ECE9D8;border:1px solid #888;border-width:1px 1px 0;text-align:center;padding:2px 2px 1px 4px;position:relative;}#tab_browsing_list a b {display:block;border-bottom:2px solid #617994;}#tab_browsing_list a .edited {display:none;}#tab_browsing_list a.edited .edited {display:inline;}#tab_browsing_list a img{margin-left:7px;}#tab_browsing_list a.edited img{margin-left:3px;}#tab_browsing_list a:hover span {background:#F4F2E8;border-color:#0A246A;}#tab_browsing_list .selected a span{background:#046380;color:#FFF;}#no_file_selected{height:100%;width:150%;background:#CCC;display:none;z-index:20;position:absolute;}.non_editable #editor{border-width:0 1px;}.non_editable .area_toolbar{display:none;}#auto_completion_area{background:#FFF;border:solid 1px #888;position:absolute;z-index:15;width:280px;height:180px;overflow:auto;display:none;}#auto_completion_area a,#auto_completion_area a:visited{display:block;padding:0 2px 1px;color:#000;text-decoration:none;}#auto_completion_area a:hover,#auto_completion_area a:focus,#auto_completion_area a.focus{background:#D6E1FE;text-decoration:none;}#auto_completion_area ul{margin:0;padding:0;list-style:none inside;}#auto_completion_area li{padding:0;}#auto_completion_area .prefix{font-style:italic;padding:0 3px;}</style>\";\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/edit_area_functions.js",
    "content": "\t//replace tabulation by the good number of white spaces\r\n\tEditArea.prototype.replace_tab= function(text){\r\n\t\treturn text.replace(/((\\n?)([^\\t\\n]*)\\t)/gi, editArea.smartTab);\t\t// slower than simple replace...\t\r\n\t};\r\n\t\r\n\t// call by the replace_tab function\r\n\tEditArea.prototype.smartTab= function(){\r\n\t\tval=\"                   \";\r\n\t\treturn EditArea.prototype.smartTab.arguments[2] + EditArea.prototype.smartTab.arguments[3] + val.substr(0, editArea.tab_nb_char - (EditArea.prototype.smartTab.arguments[3].length)%editArea.tab_nb_char);\r\n\t};\r\n\t\r\n\tEditArea.prototype.show_waiting_screen= function(){\r\n\t\twidth\t= this.editor_area.offsetWidth;\r\n\t\theight\t= this.editor_area.offsetHeight;\r\n\t\tif( !(this.isIE && this.isIE<6) )\r\n\t\t{\r\n\t\t\twidth\t-= 2;\r\n\t\t\theight\t-= 2;\r\n\t\t}\r\n\t\tthis.processing_screen.style.display= \"block\";\r\n\t\tthis.processing_screen.style.width\t= width+\"px\";\r\n\t\tthis.processing_screen.style.height\t= height+\"px\";\r\n\t\tthis.waiting_screen_displayed\t\t= true;\r\n\t};\r\n\t\r\n\tEditArea.prototype.hide_waiting_screen= function(){\r\n\t\tthis.processing_screen.style.display=\"none\";\r\n\t\tthis.waiting_screen_displayed= false;\r\n\t};\r\n\t\r\n\tEditArea.prototype.add_style= function(styles){\r\n\t\tif(styles.length>0){\r\n\t\t\tnewcss = document.createElement(\"style\");\r\n\t\t\tnewcss.type=\"text/css\";\r\n\t\t\tnewcss.media=\"all\";\r\n\t\t\tif(newcss.styleSheet){ // IE\r\n\t\t\t\tnewcss.styleSheet.cssText = styles;\r\n\t\t\t} else { // W3C\r\n\t\t\t\tnewcss.appendChild(document.createTextNode(styles));\r\n\t\t\t}\r\n\t\t\tdocument.getElementsByTagName(\"head\")[0].appendChild(newcss);\r\n\t\t}\r\n\t};\r\n\t\r\n\tEditArea.prototype.set_font= function(family, size){\r\n\t\tvar t=this, a=this.textarea, s=this.settings, elem_font, i, elem;\r\n\t\t// list all elements concerned by font changes\r\n\t\tvar elems= [\"textarea\", \"content_highlight\", \"cursor_pos\", \"end_bracket\", \"selection_field\", \"selection_field_text\", \"line_number\"];\r\n\t\t\r\n\t\tif(family && family!=\"\")\r\n\t\t\ts[\"font_family\"]= family;\r\n\t\tif(size && size>0)\r\n\t\t\ts[\"font_size\"]\t= size;\r\n\t\tif( t.isOpera && t.isOpera < 9.6 )\t// opera<9.6 can't manage non monospace font\r\n\t\t\ts['font_family']=\"monospace\";\r\n\t\t\t\r\n\t\t// update the select tag\r\n\t\tif( elem_font = _$(\"area_font_size\") )\r\n\t\t{\t\r\n\t\t\tfor( i = 0; i < elem_font.length; i++ )\r\n\t\t\t{\r\n\t\t\t\tif( elem_font.options[i].value && elem_font.options[i].value == s[\"font_size\"] )\r\n\t\t\t\t\telem_font.options[i].selected=true;\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\t/*\r\n\t\t * somethimes firefox has rendering mistake with non-monospace font for text width in textarea vs in div for changing font size (eg: verdana change between 11pt to 12pt)\r\n\t\t * => looks like a browser internal random bug as text width can change while content_highlight is updated\r\n\t\t * we'll check if the font-size produce the same text width inside textarea and div and if not, we'll increment the font-size\r\n\t\t * \r\n\t\t * This is an ugly fix \r\n\t\t */ \r\n\t\tif( t.isFirefox )\r\n\t\t{\r\n\t\t\tvar nbTry = 3;\r\n\t\t\tdo {\r\n\t\t\t\tvar div1 = document.createElement( 'div' ), text1 = document.createElement( 'textarea' );\r\n\t\t\t\tvar styles = {\r\n\t\t\t\t\twidth:\t\t'40px',\r\n\t\t\t\t\toverflow:\t'scroll',\r\n\t\t\t\t\tzIndex: \t50,\r\n\t\t\t\t\tvisibility:\t'hidden',\r\n\t\t\t\t\tfontFamily:\ts[\"font_family\"],\r\n\t\t\t\t\tfontSize:\ts[\"font_size\"]+\"pt\",\r\n\t\t\t\t\tlineHeight:\tt.lineHeight+\"px\",\r\n\t\t\t\t\tpadding:\t'0',\r\n\t\t\t\t\tmargin:\t\t'0',\r\n\t\t\t\t\tborder:\t\t'none',\r\n\t\t\t\t\twhiteSpace:\t'nowrap'\r\n\t\t\t\t};\r\n\t\t\t\tvar diff, changed = false;\r\n\t\t\t\tfor( i in styles )\r\n\t\t\t\t{\r\n\t\t\t\t\tdiv1.style[ i ]\t\t= styles[i];\r\n\t\t\t\t\ttext1.style[ i ]\t= styles[i];\r\n\t\t\t\t}\r\n\t\t\t\t// no wrap for this text\r\n\t\t\t\ttext1.wrap = 'off';\r\n\t\t\t\ttext1.setAttribute('wrap', 'off');\r\n\t\t\t\tt.container.appendChild( div1 );\r\n\t\t\t\tt.container.appendChild( text1 );\r\n\t\t\t\t// try to make FF to bug\r\n\t\t\t\tdiv1.innerHTML \t\t= text1.value\t= 'azertyuiopqsdfghjklm';\r\n\t\t\t\tdiv1.innerHTML \t\t= text1.value\t= text1.value+'wxcvbn^p*ù$!:;,,';\r\n\t\t\t\tdiff\t=  text1.scrollWidth - div1.scrollWidth;\n\t\t\t\t\r\n\t\t\t\t// firefox return here a diff of 1 px between equals scrollWidth (can't explain)\r\n\t\t\t\tif( Math.abs( diff ) >= 2 )\r\n\t\t\t\t{\r\n\t\t\t\t\ts[\"font_size\"]++;\r\n\t\t\t\t\tchanged\t= true;\r\n\t\t\t\t}\r\n\t\t\t\tt.container.removeChild( div1 );\r\n\t\t\t\tt.container.removeChild( text1 );\r\n\t\t\t\tnbTry--;\r\n\t\t\t}while( changed && nbTry > 0 );\r\n\t\t}\r\n\t\t\r\n\t\t\r\n\t\t// calc line height\r\n\t\telem\t\t\t\t\t= t.test_font_size;\r\n\t\telem.style.fontFamily\t= \"\"+s[\"font_family\"];\r\n\t\telem.style.fontSize\t\t= s[\"font_size\"]+\"pt\";\t\t\t\t\r\n\t\telem.innerHTML\t\t\t= \"0\";\t\t\r\n\t\tt.lineHeight\t\t\t= elem.offsetHeight;\r\n\r\n\t\t// update font for all concerned elements\r\n\t\tfor( i=0; i<elems.length; i++)\r\n\t\t{\r\n\t\t\telem\t= _$(elems[i]);\t\r\n\t\t\telem.style.fontFamily\t= s[\"font_family\"];\r\n\t\t\telem.style.fontSize\t\t= s[\"font_size\"]+\"pt\";\r\n\t\t\telem.style.lineHeight\t= t.lineHeight+\"px\";\r\n\t\t}\r\n\t\t// define a css for <pre> tags\r\n\t\tt.add_style(\"pre{font-family:\"+s[\"font_family\"]+\"}\");\r\n\t\t\r\n\t\t// old opera and IE>=8 doesn't update font changes to the textarea\r\n\t\tif( ( t.isOpera && t.isOpera < 9.6 ) || t.isIE >= 8 )\r\n\t\t{\r\n\t\t\tvar parNod = a.parentNode, nxtSib = a.nextSibling, start= a.selectionStart, end= a.selectionEnd;\r\n\t\t\tparNod.removeChild(a);\r\n\t\t\tparNod.insertBefore(a, nxtSib);\r\n\t\t\tt.area_select(start, end-start);\r\n\t\t}\r\n\t\t\r\n\t\t// force update of selection field\r\n\t\tthis.focus();\r\n\t\tthis.update_size();\r\n\t\tthis.check_line_selection();\r\n\t};\r\n\t\r\n\tEditArea.prototype.change_font_size= function(){\r\n\t\tvar size=_$(\"area_font_size\").value;\r\n\t\tif(size>0)\r\n\t\t\tthis.set_font(\"\", size);\t\t\t\r\n\t};\r\n\t\r\n\t\r\n\tEditArea.prototype.open_inline_popup= function(popup_id){\r\n\t\tthis.close_all_inline_popup();\r\n\t\tvar popup= _$(popup_id);\t\t\r\n\t\tvar editor= _$(\"editor\");\r\n\t\t\r\n\t\t// search matching icon\r\n\t\tfor(var i=0; i<this.inlinePopup.length; i++){\r\n\t\t\tif(this.inlinePopup[i][\"popup_id\"]==popup_id){\r\n\t\t\t\tvar icon= _$(this.inlinePopup[i][\"icon_id\"]);\r\n\t\t\t\tif(icon){\r\n\t\t\t\t\tthis.switchClassSticky(icon, 'editAreaButtonSelected', true);\t\t\t\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t\t// check size\r\n\t\tpopup.style.height=\"auto\";\r\n\t\tpopup.style.overflow= \"visible\";\r\n\t\t\t\r\n\t\tif(document.body.offsetHeight< popup.offsetHeight){\r\n\t\t\tpopup.style.height= (document.body.offsetHeight-10)+\"px\";\r\n\t\t\tpopup.style.overflow= \"auto\";\r\n\t\t}\r\n\t\t\r\n\t\tif(!popup.positionned){\r\n\t\t\tvar new_left= editor.offsetWidth /2 - popup.offsetWidth /2;\r\n\t\t\tvar new_top= editor.offsetHeight /2 - popup.offsetHeight /2;\r\n\t\t\t//var new_top= area.offsetHeight /2 - popup.offsetHeight /2;\r\n\t\t\t//var new_left= area.offsetWidth /2 - popup.offsetWidth /2;\r\n\t\t\t//alert(\"new_top: (\"+new_top+\") = calculeOffsetTop(area) (\"+calculeOffsetTop(area)+\") + area.offsetHeight /2(\"+ area.offsetHeight /2+\") - popup.offsetHeight /2(\"+popup.offsetHeight /2+\") - scrollTop: \"+document.body.scrollTop);\r\n\t\t\tpopup.style.left= new_left+\"px\";\r\n\t\t\tpopup.style.top= new_top+\"px\";\r\n\t\t\tpopup.positionned=true;\r\n\t\t}\r\n\t\tpopup.style.visibility=\"visible\";\r\n\t\t\r\n\t\t//popup.style.display=\"block\";\r\n\t};\r\n\r\n\tEditArea.prototype.close_inline_popup= function(popup_id){\r\n\t\tvar popup= _$(popup_id);\t\t\r\n\t\t// search matching icon\r\n\t\tfor(var i=0; i<this.inlinePopup.length; i++){\r\n\t\t\tif(this.inlinePopup[i][\"popup_id\"]==popup_id){\r\n\t\t\t\tvar icon= _$(this.inlinePopup[i][\"icon_id\"]);\r\n\t\t\t\tif(icon){\r\n\t\t\t\t\tthis.switchClassSticky(icon, 'editAreaButtonNormal', false);\t\t\t\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\tpopup.style.visibility=\"hidden\";\t\r\n\t};\r\n\t\r\n\tEditArea.prototype.close_all_inline_popup= function(e){\r\n\t\tfor(var i=0; i<this.inlinePopup.length; i++){\r\n\t\t\tthis.close_inline_popup(this.inlinePopup[i][\"popup_id\"]);\t\t\r\n\t\t}\r\n\t\tthis.textarea.focus();\r\n\t};\r\n\t\r\n\tEditArea.prototype.show_help= function(){\r\n\t\t\r\n\t\tthis.open_inline_popup(\"edit_area_help\");\r\n\t\t\r\n\t};\r\n\t\t\t\r\n\tEditArea.prototype.new_document= function(){\r\n\t\tthis.textarea.value=\"\";\r\n\t\tthis.area_select(0,0);\r\n\t};\r\n\t\r\n\tEditArea.prototype.get_all_toolbar_height= function(){\r\n\t\tvar area= _$(\"editor\");\r\n\t\tvar results= parent.getChildren(area, \"div\", \"class\", \"area_toolbar\", \"all\", \"0\");\t// search only direct children\r\n\t\t//results= results.concat(getChildren(area, \"table\", \"class\", \"area_toolbar\", \"all\", \"0\"));\r\n\t\tvar height=0;\r\n\t\tfor(var i=0; i<results.length; i++){\t\t\t\r\n\t\t\theight+= results[i].offsetHeight;\r\n\t\t}\r\n\t\t//alert(\"toolbar height: \"+height);\r\n\t\treturn height;\r\n\t};\r\n\t\r\n\tEditArea.prototype.go_to_line= function(line){\t\r\n\t\tif(!line)\r\n\t\t{\t\r\n\t\t\tvar icon= _$(\"go_to_line\");\r\n\t\t\tif(icon != null){\r\n\t\t\t\tthis.restoreClass(icon);\r\n\t\t\t\tthis.switchClassSticky(icon, 'editAreaButtonSelected', true);\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\tline= prompt(this.get_translation(\"go_to_line_prompt\"));\r\n\t\t\tif(icon != null)\r\n\t\t\t\tthis.switchClassSticky(icon, 'editAreaButtonNormal', false);\r\n\t\t}\r\n\t\tif(line && line!=null && line.search(/^[0-9]+$/)!=-1){\r\n\t\t\tvar start=0;\r\n\t\t\tvar lines= this.textarea.value.split(\"\\n\");\r\n\t\t\tif(line > lines.length)\r\n\t\t\t\tstart= this.textarea.value.length;\r\n\t\t\telse{\r\n\t\t\t\tfor(var i=0; i<Math.min(line-1, lines.length); i++)\r\n\t\t\t\t\tstart+= lines[i].length + 1;\r\n\t\t\t}\r\n\t\t\tthis.area_select(start, 0);\r\n\t\t}\r\n\t\t\r\n\t\t\r\n\t};\r\n\t\r\n\t\r\n\tEditArea.prototype.change_smooth_selection_mode= function(setTo){\r\n\t\t//alert(\"setTo: \"+setTo);\r\n\t\tif(this.do_highlight)\r\n\t\t\treturn;\r\n\t\t\t\r\n\t\tif(setTo != null){\r\n\t\t\tif(setTo === false)\r\n\t\t\t\tthis.smooth_selection=true;\r\n\t\t\telse\r\n\t\t\t\tthis.smooth_selection=false;\r\n\t\t}\r\n\t\tvar icon= _$(\"change_smooth_selection\");\r\n\t\tthis.textarea.focus();\r\n\t\tif(this.smooth_selection===true){\r\n\t\t\t//setAttribute(icon, \"class\", getAttribute(icon, \"class\").replace(/ selected/g, \"\") );\r\n\t\t\t/*setAttribute(icon, \"oldClassName\", \"editAreaButtonNormal\" );\r\n\t\t\tsetAttribute(icon, \"className\", \"editAreaButtonNormal\" );*/\r\n\t\t\t//this.restoreClass(icon);\r\n\t\t\t//this.restoreAndSwitchClass(icon,'editAreaButtonNormal');\r\n\t\t\tthis.switchClassSticky(icon, 'editAreaButtonNormal', false);\r\n\t\t\t\r\n\t\t\tthis.smooth_selection=false;\r\n\t\t\tthis.selection_field.style.display= \"none\";\r\n\t\t\t_$(\"cursor_pos\").style.display= \"none\";\r\n\t\t\t_$(\"end_bracket\").style.display= \"none\";\r\n\t\t}else{\r\n\t\t\t//setAttribute(icon, \"class\", getAttribute(icon, \"class\") + \" selected\");\r\n\t\t\t//this.switchClass(icon,'editAreaButtonSelected');\r\n\t\t\tthis.switchClassSticky(icon, 'editAreaButtonSelected', false);\r\n\t\t\tthis.smooth_selection=true;\r\n\t\t\tthis.selection_field.style.display= \"block\";\r\n\t\t\t_$(\"cursor_pos\").style.display= \"block\";\r\n\t\t\t_$(\"end_bracket\").style.display= \"block\";\r\n\t\t}\t\r\n\t};\r\n\t\r\n\t// the auto scroll of the textarea has some lacks when it have to show cursor in the visible area when the textarea size change\r\n\t// show specifiy whereas it is the \"top\" or \"bottom\" of the selection that is showned\r\n\tEditArea.prototype.scroll_to_view= function(show){\r\n\t\tvar zone, lineElem;\r\n\t\tif(!this.smooth_selection)\r\n\t\t\treturn;\r\n\t\tzone= _$(\"result\");\r\n\t\t\r\n\t\t// manage height scroll\r\n\t\tvar cursor_pos_top= _$(\"cursor_pos\").cursor_top;\r\n\t\tif(show==\"bottom\")\r\n\t\t{\r\n\t\t\t//cursor_pos_top+=  (this.last_selection[\"line_nb\"]-1)* this.lineHeight;\r\n\t\t\tcursor_pos_top+= this.getLinePosTop( this.last_selection['line_start'] + this.last_selection['line_nb'] - 1 );\r\n\t\t}\r\n\t\t\t\r\n\t\tvar max_height_visible= zone.clientHeight + zone.scrollTop;\r\n\t\tvar miss_top\t= cursor_pos_top + this.lineHeight - max_height_visible;\r\n\t\tif(miss_top>0){\r\n\t\t\t//alert(miss_top);\r\n\t\t\tzone.scrollTop=  zone.scrollTop + miss_top;\r\n\t\t}else if( zone.scrollTop > cursor_pos_top){\r\n\t\t\t// when erase all the content -> does'nt scroll back to the top\r\n\t\t\t//alert(\"else: \"+cursor_pos_top);\r\n\t\t\tzone.scrollTop= cursor_pos_top;\t \r\n\t\t}\r\n\t\t\r\n\t\t// manage left scroll\r\n\t\t//var cursor_pos_left= parseInt(_$(\"cursor_pos\").style.left.replace(\"px\",\"\"));\r\n\t\tvar cursor_pos_left= _$(\"cursor_pos\").cursor_left;\r\n\t\tvar max_width_visible= zone.clientWidth + zone.scrollLeft;\r\n\t\tvar miss_left= cursor_pos_left + 10 - max_width_visible;\r\n\t\tif(miss_left>0){\t\t\t\r\n\t\t\tzone.scrollLeft= zone.scrollLeft + miss_left + 50;\r\n\t\t}else if( zone.scrollLeft > cursor_pos_left){\r\n\t\t\tzone.scrollLeft= cursor_pos_left ;\r\n\t\t}else if( zone.scrollLeft == 45){\r\n\t\t\t// show the line numbers if textarea align to it's left\r\n\t\t\tzone.scrollLeft=0;\r\n\t\t}\r\n\t};\r\n\t\r\n\tEditArea.prototype.check_undo= function(only_once){\r\n\t\tif(!editAreas[this.id])\r\n\t\t\treturn false;\r\n\t\tif(this.textareaFocused && editAreas[this.id][\"displayed\"]==true){\r\n\t\t\tvar text=this.textarea.value;\r\n\t\t\tif(this.previous.length<=1)\r\n\t\t\t\tthis.switchClassSticky(_$(\"undo\"), 'editAreaButtonDisabled', true);\r\n\t\t\r\n\t\t\tif(!this.previous[this.previous.length-1] || this.previous[this.previous.length-1][\"text\"] != text){\r\n\t\t\t\tthis.previous.push({\"text\": text, \"selStart\": this.textarea.selectionStart, \"selEnd\": this.textarea.selectionEnd});\r\n\t\t\t\tif(this.previous.length > this.settings[\"max_undo\"]+1)\r\n\t\t\t\t\tthis.previous.shift();\r\n\t\t\t\t\r\n\t\t\t}\r\n\t\t\tif(this.previous.length >= 2)\r\n\t\t\t\tthis.switchClassSticky(_$(\"undo\"), 'editAreaButtonNormal', false);\t\t\r\n\t\t}\r\n\r\n\t\tif(!only_once)\r\n\t\t\tsetTimeout(\"editArea.check_undo()\", 3000);\r\n\t};\r\n\t\r\n\tEditArea.prototype.undo= function(){\r\n\t\t//alert(\"undo\"+this.previous.length);\r\n\t\tif(this.previous.length > 0)\r\n\t\t{\r\n\t\t\tthis.getIESelection();\r\n\t\t//\tvar pos_cursor=this.textarea.selectionStart;\r\n\t\t\tthis.next.push( { \"text\": this.textarea.value, \"selStart\": this.textarea.selectionStart, \"selEnd\": this.textarea.selectionEnd } );\r\n\t\t\tvar prev= this.previous.pop();\r\n\t\t\tif( prev[\"text\"] == this.textarea.value && this.previous.length > 0 )\r\n\t\t\t\tprev\t=this.previous.pop();\t\t\t\t\t\t\r\n\t\t\tthis.textarea.value\t= prev[\"text\"];\r\n\t\t\tthis.last_undo\t\t= prev[\"text\"];\r\n\t\t\tthis.area_select(prev[\"selStart\"], prev[\"selEnd\"]-prev[\"selStart\"]);\r\n\t\t\tthis.switchClassSticky(_$(\"redo\"), 'editAreaButtonNormal', false);\r\n\t\t\tthis.resync_highlight(true);\r\n\t\t\t//alert(\"undo\"+this.previous.length);\r\n\t\t\tthis.check_file_changes();\r\n\t\t}\r\n\t};\r\n\t\r\n\tEditArea.prototype.redo= function(){\r\n\t\tif(this.next.length > 0)\r\n\t\t{\r\n\t\t\t/*this.getIESelection();*/\r\n\t\t\t//var pos_cursor=this.textarea.selectionStart;\r\n\t\t\tvar next= this.next.pop();\r\n\t\t\tthis.previous.push(next);\r\n\t\t\tthis.textarea.value= next[\"text\"];\r\n\t\t\tthis.last_undo= next[\"text\"];\r\n\t\t\tthis.area_select(next[\"selStart\"], next[\"selEnd\"]-next[\"selStart\"]);\r\n\t\t\tthis.switchClassSticky(_$(\"undo\"), 'editAreaButtonNormal', false);\r\n\t\t\tthis.resync_highlight(true);\r\n\t\t\tthis.check_file_changes();\r\n\t\t}\r\n\t\tif(\tthis.next.length == 0)\r\n\t\t\tthis.switchClassSticky(_$(\"redo\"), 'editAreaButtonDisabled', true);\r\n\t};\r\n\t\r\n\tEditArea.prototype.check_redo= function(){\r\n\t\tif(editArea.next.length == 0 || editArea.textarea.value!=editArea.last_undo){\r\n\t\t\teditArea.next= [];\t// undo the ability to use \"redo\" button\r\n\t\t\teditArea.switchClassSticky(_$(\"redo\"), 'editAreaButtonDisabled', true);\r\n\t\t}\r\n\t\telse\r\n\t\t{\r\n\t\t\tthis.switchClassSticky(_$(\"redo\"), 'editAreaButtonNormal', false);\r\n\t\t}\r\n\t};\r\n\t\r\n\t\r\n\t// functions that manage icons roll over, disabled, etc...\r\n\tEditArea.prototype.switchClass = function(element, class_name, lock_state) {\r\n\t\tvar lockChanged = false;\r\n\t\r\n\t\tif (typeof(lock_state) != \"undefined\" && element != null) {\r\n\t\t\telement.classLock = lock_state;\r\n\t\t\tlockChanged = true;\r\n\t\t}\r\n\t\r\n\t\tif (element != null && (lockChanged || !element.classLock)) {\r\n\t\t\telement.oldClassName = element.className;\r\n\t\t\telement.className = class_name;\r\n\t\t}\r\n\t};\r\n\t\r\n\tEditArea.prototype.restoreAndSwitchClass = function(element, class_name) {\r\n\t\tif (element != null && !element.classLock) {\r\n\t\t\tthis.restoreClass(element);\r\n\t\t\tthis.switchClass(element, class_name);\r\n\t\t}\r\n\t};\r\n\t\r\n\tEditArea.prototype.restoreClass = function(element) {\r\n\t\tif (element != null && element.oldClassName && !element.classLock) {\r\n\t\t\telement.className = element.oldClassName;\r\n\t\t\telement.oldClassName = null;\r\n\t\t}\r\n\t};\r\n\t\r\n\tEditArea.prototype.setClassLock = function(element, lock_state) {\r\n\t\tif (element != null)\r\n\t\t\telement.classLock = lock_state;\r\n\t};\r\n\t\r\n\tEditArea.prototype.switchClassSticky = function(element, class_name, lock_state) {\r\n\t\tvar lockChanged = false;\r\n\t\tif (typeof(lock_state) != \"undefined\" && element != null) {\r\n\t\t\telement.classLock = lock_state;\r\n\t\t\tlockChanged = true;\r\n\t\t}\r\n\t\r\n\t\tif (element != null && (lockChanged || !element.classLock)) {\r\n\t\t\telement.className = class_name;\r\n\t\t\telement.oldClassName = class_name;\r\n\t\t}\r\n\t};\r\n\t\r\n\t//make the \"page up\" and \"page down\" buttons works correctly\r\n\tEditArea.prototype.scroll_page= function(params){\r\n\t\tvar dir= params[\"dir\"], shift_pressed= params[\"shift\"];\r\n\t\tvar lines= this.textarea.value.split(\"\\n\");\t\t\r\n\t\tvar new_pos=0, length=0, char_left=0, line_nb=0, curLine=0;\r\n\t\tvar toScrollAmount\t= _$(\"result\").clientHeight -30;\r\n\t\tvar nbLineToScroll\t= 0, diff= 0;\r\n\t\t\r\n\t\tif(dir==\"up\"){\r\n\t\t\tnbLineToScroll\t= Math.ceil( toScrollAmount / this.lineHeight );\r\n\t\t\t\r\n\t\t\t// fix number of line to scroll\r\n\t\t\tfor( i = this.last_selection[\"line_start\"]; i - diff > this.last_selection[\"line_start\"] - nbLineToScroll ; i-- )\r\n\t\t\t{\r\n\t\t\t\tif( elem = _$('line_'+ i) )\r\n\t\t\t\t{\r\n\t\t\t\t\tdiff +=  Math.floor( ( elem.offsetHeight - 1 ) / this.lineHeight );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tnbLineToScroll\t-= diff;\r\n\t\t\t\r\n\t\t\tif(this.last_selection[\"selec_direction\"]==\"up\"){\r\n\t\t\t\tfor(line_nb=0; line_nb< Math.min(this.last_selection[\"line_start\"]-nbLineToScroll, lines.length); line_nb++){\r\n\t\t\t\t\tnew_pos+= lines[line_nb].length + 1;\r\n\t\t\t\t}\r\n\t\t\t\tchar_left=Math.min(lines[Math.min(lines.length-1, line_nb)].length, this.last_selection[\"curr_pos\"]-1);\r\n\t\t\t\tif(shift_pressed)\r\n\t\t\t\t\tlength=this.last_selection[\"selectionEnd\"]-new_pos-char_left;\t\r\n\t\t\t\tthis.area_select(new_pos+char_left, length);\r\n\t\t\t\tview=\"top\";\r\n\t\t\t}else{\t\t\t\r\n\t\t\t\tview=\"bottom\";\r\n\t\t\t\tfor(line_nb=0; line_nb< Math.min(this.last_selection[\"line_start\"]+this.last_selection[\"line_nb\"]-1-nbLineToScroll, lines.length); line_nb++){\r\n\t\t\t\t\tnew_pos+= lines[line_nb].length + 1;\r\n\t\t\t\t}\r\n\t\t\t\tchar_left=Math.min(lines[Math.min(lines.length-1, line_nb)].length, this.last_selection[\"curr_pos\"]-1);\r\n\t\t\t\tif(shift_pressed){\r\n\t\t\t\t\t//length=this.last_selection[\"selectionEnd\"]-new_pos-char_left;\t\r\n\t\t\t\t\tstart= Math.min(this.last_selection[\"selectionStart\"], new_pos+char_left);\r\n\t\t\t\t\tlength= Math.max(new_pos+char_left, this.last_selection[\"selectionStart\"] )- start ;\r\n\t\t\t\t\tif(new_pos+char_left < this.last_selection[\"selectionStart\"])\r\n\t\t\t\t\t\tview=\"top\";\r\n\t\t\t\t}else\r\n\t\t\t\t\tstart=new_pos+char_left;\r\n\t\t\t\tthis.area_select(start, length);\r\n\t\t\t\t\r\n\t\t\t}\r\n\t\t}\r\n\t\telse\r\n\t\t{\r\n\t\t\tvar nbLineToScroll= Math.floor( toScrollAmount / this.lineHeight );\r\n\t\t\t// fix number of line to scroll\r\n\t\t\tfor( i = this.last_selection[\"line_start\"]; i + diff < this.last_selection[\"line_start\"] + nbLineToScroll ; i++ )\r\n\t\t\t{\r\n\t\t\t\tif( elem = _$('line_'+ i) )\r\n\t\t\t\t{\r\n\t\t\t\t\tdiff +=  Math.floor( ( elem.offsetHeight - 1 ) / this.lineHeight );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tnbLineToScroll\t-= diff;\r\n\t\t\t\t\r\n\t\t\tif(this.last_selection[\"selec_direction\"]==\"down\"){\r\n\t\t\t\tview=\"bottom\";\r\n\t\t\t\tfor(line_nb=0; line_nb< Math.min(this.last_selection[\"line_start\"]+this.last_selection[\"line_nb\"]-2+nbLineToScroll, lines.length); line_nb++){\r\n\t\t\t\t\tif(line_nb==this.last_selection[\"line_start\"]-1)\r\n\t\t\t\t\t\tchar_left= this.last_selection[\"selectionStart\"] -new_pos;\r\n\t\t\t\t\tnew_pos+= lines[line_nb].length + 1;\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t}\r\n\t\t\t\tif(shift_pressed){\r\n\t\t\t\t\tlength=Math.abs(this.last_selection[\"selectionStart\"]-new_pos);\t\r\n\t\t\t\t\tlength+=Math.min(lines[Math.min(lines.length-1, line_nb)].length, this.last_selection[\"curr_pos\"]);\r\n\t\t\t\t\t//length+=Math.min(lines[Math.min(lines.length-1, line_nb)].length, char_left);\r\n\t\t\t\t\tthis.area_select(Math.min(this.last_selection[\"selectionStart\"], new_pos), length);\r\n\t\t\t\t}else{\r\n\t\t\t\t\tthis.area_select(new_pos+char_left, 0);\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t}else{\r\n\t\t\t\tview=\"top\";\r\n\t\t\t\tfor(line_nb=0; line_nb< Math.min(this.last_selection[\"line_start\"]+nbLineToScroll-1, lines.length, lines.length); line_nb++){\r\n\t\t\t\t\tif(line_nb==this.last_selection[\"line_start\"]-1)\r\n\t\t\t\t\t\tchar_left= this.last_selection[\"selectionStart\"] -new_pos;\r\n\t\t\t\t\tnew_pos+= lines[line_nb].length + 1;\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t}\r\n\t\t\t\tif(shift_pressed){\r\n\t\t\t\t\tlength=Math.abs(this.last_selection[\"selectionEnd\"]-new_pos-char_left);\t\r\n\t\t\t\t\tlength+=Math.min(lines[Math.min(lines.length-1, line_nb)].length, this.last_selection[\"curr_pos\"])- char_left-1;\r\n\t\t\t\t\t//length+=Math.min(lines[Math.min(lines.length-1, line_nb)].length, char_left);\r\n\t\t\t\t\tthis.area_select(Math.min(this.last_selection[\"selectionEnd\"], new_pos+char_left), length);\r\n\t\t\t\t\tif(new_pos+char_left > this.last_selection[\"selectionEnd\"])\r\n\t\t\t\t\t\tview=\"bottom\";\r\n\t\t\t\t}else{\r\n\t\t\t\t\tthis.area_select(new_pos+char_left, 0);\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t}\r\n\t\t}\r\n\t\t//console.log( new_pos, char_left, length, nbLineToScroll, toScrollAmount, _$(\"result\").clientHeigh );\r\n\t\tthis.check_line_selection();\r\n\t\tthis.scroll_to_view(view);\r\n\t};\r\n\t\r\n\tEditArea.prototype.start_resize= function(e){\r\n\t\tparent.editAreaLoader.resize[\"id\"]\t\t= editArea.id;\t\t\r\n\t\tparent.editAreaLoader.resize[\"start_x\"]\t= (e)? e.pageX : event.x + document.body.scrollLeft;\t\t\r\n\t\tparent.editAreaLoader.resize[\"start_y\"]\t= (e)? e.pageY : event.y + document.body.scrollTop;\r\n\t\tif(editArea.isIE)\r\n\t\t{\r\n\t\t\teditArea.textarea.focus();\r\n\t\t\teditArea.getIESelection();\r\n\t\t}\r\n\t\tparent.editAreaLoader.resize[\"selectionStart\"]\t= editArea.textarea.selectionStart;\r\n\t\tparent.editAreaLoader.resize[\"selectionEnd\"]\t= editArea.textarea.selectionEnd;\r\n\t\tparent.editAreaLoader.start_resize_area();\r\n\t};\r\n\t\r\n\tEditArea.prototype.toggle_full_screen= function(to){\r\n\t\tvar t=this, p=parent, a=t.textarea, html, frame, selStart, selEnd, old, icon;\r\n\t\tif(typeof(to)==\"undefined\")\r\n\t\t\tto= !t.fullscreen['isFull'];\r\n\t\told\t\t\t= t.fullscreen['isFull'];\r\n\t\tt.fullscreen['isFull']= to;\r\n\t\ticon\t\t= _$(\"fullscreen\");\r\n\t\tselStart\t= t.textarea.selectionStart;\r\n\t\tselEnd\t\t= t.textarea.selectionEnd;\r\n\t\thtml\t\t= p.document.getElementsByTagName(\"html\")[0];\r\n\t\tframe\t\t= p.document.getElementById(\"frame_\"+t.id);\r\n\t\t\r\n\t\tif(to && to!=old)\r\n\t\t{\t// toogle on fullscreen\t\t\r\n\t\t\t\r\n\t\t\tt.fullscreen['old_overflow']\t= p.get_css_property(html, \"overflow\");\r\n\t\t\tt.fullscreen['old_height']\t\t= p.get_css_property(html, \"height\");\r\n\t\t\tt.fullscreen['old_width']\t\t= p.get_css_property(html, \"width\");\r\n\t\t\tt.fullscreen['old_scrollTop']\t= html.scrollTop;\r\n\t\t\tt.fullscreen['old_scrollLeft']\t= html.scrollLeft;\r\n\t\t\tt.fullscreen['old_zIndex']\t\t= p.get_css_property(frame, \"z-index\");\r\n\t\t\tif(t.isOpera){\r\n\t\t\t\thtml.style.height\t= \"100%\";\r\n\t\t\t\thtml.style.width\t= \"100%\";\t\r\n\t\t\t}\r\n\t\t\thtml.style.overflow\t= \"hidden\";\r\n\t\t\thtml.scrollTop\t\t= 0;\r\n\t\t\thtml.scrollLeft\t\t= 0;\r\n\t\t\t\r\n\t\t\tframe.style.position\t= \"absolute\";\r\n\t\t\tframe.style.width\t\t= html.clientWidth+\"px\";\r\n\t\t\tframe.style.height\t\t= html.clientHeight+\"px\";\r\n\t\t\tframe.style.display\t\t= \"block\";\r\n\t\t\tframe.style.zIndex\t\t= \"999999\";\r\n\t\t\tframe.style.top\t\t\t= \"0px\";\r\n\t\t\tframe.style.left\t\t= \"0px\";\r\n\t\t\t\r\n\t\t\t// if the iframe was in a div with position absolute, the top and left are the one of the div, \r\n\t\t\t// so I fix it by seeing at witch position the iframe start and correcting it\r\n\t\t\tframe.style.top\t\t\t= \"-\"+p.calculeOffsetTop(frame)+\"px\";\r\n\t\t\tframe.style.left\t\t= \"-\"+p.calculeOffsetLeft(frame)+\"px\";\r\n\t\t\t\r\n\t\t//\tparent.editAreaLoader.execCommand(t.id, \"update_size();\");\r\n\t\t//\tvar body=parent.document.getElementsByTagName(\"body\")[0];\r\n\t\t//\tbody.appendChild(frame);\r\n\t\t\t\r\n\t\t\tt.switchClassSticky(icon, 'editAreaButtonSelected', false);\r\n\t\t\tt.fullscreen['allow_resize']= t.resize_allowed;\r\n\t\t\tt.allow_resize(false);\r\n\t\r\n\t\t\t//t.area_select(selStart, selEnd-selStart);\r\n\t\t\t\r\n\t\t\r\n\t\t\t// opera can't manage to do a direct size update\r\n\t\t\tif(t.isFirefox){\r\n\t\t\t\tp.editAreaLoader.execCommand(t.id, \"update_size();\");\r\n\t\t\t\tt.area_select(selStart, selEnd-selStart);\r\n\t\t\t\tt.scroll_to_view();\r\n\t\t\t\tt.focus();\r\n\t\t\t}else{\r\n\t\t\t\tsetTimeout(\"parent.editAreaLoader.execCommand('\"+ t.id +\"', 'update_size();');editArea.focus();\", 10);\r\n\t\t\t}\t\r\n\t\t\t\r\n\t\r\n\t\t}\r\n\t\telse if(to!=old)\r\n\t\t{\t// toogle off fullscreen\r\n\t\t\tframe.style.position=\"static\";\r\n\t\t\tframe.style.zIndex= t.fullscreen['old_zIndex'];\r\n\t\t\r\n\t\t\tif(t.isOpera)\r\n\t\t\t{\r\n\t\t\t\thtml.style.height\t= \"auto\"; \r\n\t\t\t\thtml.style.width\t= \"auto\";\r\n\t\t\t\thtml.style.overflow\t= \"auto\";\r\n\t\t\t}\r\n\t\t\telse if(t.isIE && p!=top)\r\n\t\t\t{\t// IE doesn't manage html overflow in frames like in normal page... \r\n\t\t\t\thtml.style.overflow\t= \"auto\";\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\thtml.style.overflow\t= t.fullscreen['old_overflow'];\r\n\t\t\t}\r\n\t\t\thtml.scrollTop\t= t.fullscreen['old_scrollTop'];\r\n\t\t\thtml.scrollLeft\t= t.fullscreen['old_scrollLeft'];\r\n\t\t\r\n\t\t\tp.editAreaLoader.hide(t.id);\r\n\t\t\tp.editAreaLoader.show(t.id);\r\n\t\t\t\r\n\t\t\tt.switchClassSticky(icon, 'editAreaButtonNormal', false);\r\n\t\t\tif(t.fullscreen['allow_resize'])\r\n\t\t\t\tt.allow_resize(t.fullscreen['allow_resize']);\r\n\t\t\tif(t.isFirefox){\r\n\t\t\t\tt.area_select(selStart, selEnd-selStart);\r\n\t\t\t\tsetTimeout(\"editArea.scroll_to_view();\", 10);\r\n\t\t\t}\t\t\t\r\n\t\t\t\r\n\t\t\t//p.editAreaLoader.remove_event(p.window, \"resize\", editArea.update_size);\r\n\t\t}\r\n\t\t\r\n\t};\r\n\t\r\n\tEditArea.prototype.allow_resize= function(allow){\r\n\t\tvar resize= _$(\"resize_area\");\r\n\t\tif(allow){\r\n\t\t\t\r\n\t\t\tresize.style.visibility=\"visible\";\r\n\t\t\tparent.editAreaLoader.add_event(resize, \"mouseup\", editArea.start_resize);\r\n\t\t}else{\r\n\t\t\tresize.style.visibility=\"hidden\";\r\n\t\t\tparent.editAreaLoader.remove_event(resize, \"mouseup\", editArea.start_resize);\r\n\t\t}\r\n\t\tthis.resize_allowed= allow;\r\n\t};\r\n\t\r\n\t\r\n\tEditArea.prototype.change_syntax= function(new_syntax, is_waiting){\r\n\t//\talert(\"cahnge to \"+new_syntax);\r\n\t\t// the syntax is the same\r\n\t\tif(new_syntax==this.settings['syntax'])\r\n\t\t\treturn true;\r\n\t\t\r\n\t\t// check that the syntax is one allowed\r\n\t\tvar founded= false;\r\n\t\tfor(var i=0; i<this.syntax_list.length; i++)\r\n\t\t{\r\n\t\t\tif(this.syntax_list[i]==new_syntax)\r\n\t\t\t\tfounded= true;\r\n\t\t}\r\n\t\t\r\n\t\tif(founded==true)\r\n\t\t{\r\n\t\t\t// the reg syntax file is not loaded\r\n\t\t\tif(!parent.editAreaLoader.load_syntax[new_syntax])\r\n\t\t\t{\r\n\t\t\t\t// load the syntax file and wait for file loading\r\n\t\t\t\tif(!is_waiting)\r\n\t\t\t\t\tparent.editAreaLoader.load_script(parent.editAreaLoader.baseURL + \"reg_syntax/\" + new_syntax + \".js\");\r\n\t\t\t\tsetTimeout(\"editArea.change_syntax('\"+ new_syntax +\"', true);\", 100);\r\n\t\t\t\tthis.show_waiting_screen();\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\tif(!this.allready_used_syntax[new_syntax])\r\n\t\t\t\t{\t// the syntax has still not been used\r\n\t\t\t\t\t// rebuild syntax definition for new languages\r\n\t\t\t\t\tparent.editAreaLoader.init_syntax_regexp();\r\n\t\t\t\t\t// add style to the new list\r\n\t\t\t\t\tthis.add_style(parent.editAreaLoader.syntax[new_syntax][\"styles\"]);\r\n\t\t\t\t\tthis.allready_used_syntax[new_syntax]=true;\r\n\t\t\t\t}\r\n\t\t\t\t// be sure that the select option is correctly updated\r\n\t\t\t\tvar sel= _$(\"syntax_selection\");\r\n\t\t\t\tif(sel && sel.value!=new_syntax)\r\n\t\t\t\t{\r\n\t\t\t\t\tfor(var i=0; i<sel.length; i++){\r\n\t\t\t\t\t\tif(sel.options[i].value && sel.options[i].value == new_syntax)\r\n\t\t\t\t\t\t\tsel.options[i].selected=true;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t/*\tif(this.settings['syntax'].length==0)\r\n\t\t\t\t{\r\n\t\t\t\t\tthis.switchClassSticky(_$(\"highlight\"), 'editAreaButtonNormal', false);\r\n\t\t\t\t\tthis.switchClassSticky(_$(\"reset_highlight\"), 'editAreaButtonNormal', false);\r\n\t\t\t\t\tthis.change_highlight(true);\r\n\t\t\t\t}\r\n\t\t\t\t*/\r\n\t\t\t\tthis.settings['syntax']= new_syntax;\r\n\t\t\t\tthis.resync_highlight(true);\r\n\t\t\t\tthis.hide_waiting_screen();\r\n\t\t\t\treturn true;\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn false;\r\n\t};\r\n\t\r\n\t\r\n\t// check if the file has changed\r\n\tEditArea.prototype.set_editable= function(is_editable){\r\n\t\tif(is_editable)\r\n\t\t{\r\n\t\t\tdocument.body.className= \"\";\r\n\t\t\tthis.textarea.readOnly= false;\r\n\t\t\tthis.is_editable= true;\r\n\t\t}\r\n\t\telse\r\n\t\t{\r\n\t\t\tdocument.body.className= \"non_editable\";\r\n\t\t\tthis.textarea.readOnly= true;\r\n\t\t\tthis.is_editable= false;\r\n\t\t}\r\n\t\t\r\n\t\tif(editAreas[this.id][\"displayed\"]==true)\r\n\t\t\tthis.update_size();\r\n\t};\r\n\t\r\n\t/***** Wrap mode *****/\r\n\t\r\n\t// toggling function for set_wrap_mode\r\n\tEditArea.prototype.toggle_word_wrap= function(){\r\n\t\tthis.set_word_wrap( !this.settings['word_wrap'] );\r\n\t};\r\n\t\r\n\t\r\n\t// open a new tab for the given file\r\n\tEditArea.prototype.set_word_wrap= function(to){\r\n\t\tvar t=this, a= t.textarea;\r\n\t\tif( t.isOpera && t.isOpera < 9.8 )\r\n\t\t{\r\n\t\t\tthis.settings['word_wrap']= false;\r\n\t\t\tt.switchClassSticky( _$(\"word_wrap\"), 'editAreaButtonDisabled', true );\r\n\t\t\treturn false;\r\n\t\t}\r\n\t\t\r\n\t\tif( to )\r\n\t\t{\r\n\t\t\twrap_mode = 'soft';\r\n\t\t\tthis.container.className+= ' word_wrap';\r\n\t\t\tthis.container.style.width=\"\";\r\n\t\t\tthis.content_highlight.style.width=\"\";\r\n\t\t\ta.style.width=\"100%\";\r\n\t\t\tif( t.isIE && t.isIE < 7 )\t// IE 6 count 50 px too much\r\n\t\t\t{\r\n\t\t\t\ta.style.width\t= ( a.offsetWidth-5 )+\"px\";\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\tt.switchClassSticky( _$(\"word_wrap\"), 'editAreaButtonSelected', false );\r\n\t\t}\r\n\t\telse\r\n\t\t{\r\n\t\t\twrap_mode = 'off';\r\n\t\t\tthis.container.className\t= this.container.className.replace(/word_wrap/g, '');\r\n\t\t\tt.switchClassSticky( _$(\"word_wrap\"), 'editAreaButtonNormal', true );\r\n\t\t}\r\n\t\tthis.textarea.previous_scrollWidth = '';\r\n\t\tthis.textarea.previous_scrollHeight = '';\r\n\t\t\r\n\t\ta.wrap= wrap_mode;\r\n\t\ta.setAttribute('wrap', wrap_mode);\r\n\t\t// only IE can change wrap mode on the fly without element reloading\r\n\t\tif(!this.isIE)\r\n\t\t{\r\n\t\t\tvar start=a.selectionStart, end= a.selectionEnd;\r\n\t\t\tvar parNod = a.parentNode, nxtSib = a.nextSibling;\r\n\t\t\tparNod.removeChild(a);\r\n\t\t\tparNod.insertBefore(a, nxtSib);\r\n\t\t\tthis.area_select(start, end-start);\r\n\t\t}\r\n\t\t// reset some optimisation\r\n\t\tthis.settings['word_wrap']\t= to;\r\n\t\tthis.focus();\r\n\t\tthis.update_size();\r\n\t\tthis.check_line_selection();\r\n\t};\t\r\n\t/***** tabbed files managing functions *****/\r\n\t\r\n\t// open a new tab for the given file\r\n\tEditArea.prototype.open_file= function(settings){\r\n\t\t\r\n\t\tif(settings['id']!=\"undefined\")\r\n\t\t{\r\n\t\t\tvar id= settings['id'];\r\n\t\t\t// create a new file object with defautl values\r\n\t\t\tvar new_file= {};\r\n\t\t\tnew_file['id']\t\t\t= id;\r\n\t\t\tnew_file['title']\t\t= id;\r\n\t\t\tnew_file['text']\t\t= \"\";\r\n\t\t\tnew_file['last_selection']\t= \"\";\t\t\r\n\t\t\tnew_file['last_text_to_highlight']\t= \"\";\r\n\t\t\tnew_file['last_hightlighted_text']\t= \"\";\r\n\t\t\tnew_file['previous']\t= [];\r\n\t\t\tnew_file['next']\t\t= [];\r\n\t\t\tnew_file['last_undo']\t= \"\";\r\n\t\t\tnew_file['smooth_selection']\t= this.settings['smooth_selection'];\r\n\t\t\tnew_file['do_highlight']= this.settings['start_highlight'];\r\n\t\t\tnew_file['syntax']\t\t= this.settings['syntax'];\r\n\t\t\tnew_file['scroll_top']\t= 0;\r\n\t\t\tnew_file['scroll_left']\t= 0;\r\n\t\t\tnew_file['selection_start']= 0;\r\n\t\t\tnew_file['selection_end']= 0;\r\n\t\t\tnew_file['edited']\t\t= false;\r\n\t\t\tnew_file['font_size']\t= this.settings[\"font_size\"];\r\n\t\t\tnew_file['font_family']\t= this.settings[\"font_family\"];\r\n\t\t\tnew_file['word_wrap']\t= this.settings[\"word_wrap\"];\r\n\t\t\tnew_file['toolbar']\t\t= {'links':{}, 'selects': {}};\r\n\t\t\tnew_file['compare_edited_text']= new_file['text'];\r\n\t\t\t\r\n\t\t\t\r\n\t\t\tthis.files[id]= new_file;\r\n\t\t\tthis.update_file(id, settings);\r\n\t\t\tthis.files[id]['compare_edited_text']= this.files[id]['text'];\r\n\t\t\t\r\n\t\t\t\r\n\t\t\tvar html_id= 'tab_file_'+encodeURIComponent(id);\r\n\t\t\tthis.filesIdAssoc[html_id]= id;\r\n\t\t\tthis.files[id]['html_id']= html_id;\r\n\t\t\r\n\t\t\tif(!_$(this.files[id]['html_id']) && id!=\"\")\r\n\t\t\t{\r\n\t\t\t\t// be sure the tab browsing area is displayed\r\n\t\t\t\tthis.tab_browsing_area.style.display= \"block\";\r\n\t\t\t\tvar elem= document.createElement('li');\r\n\t\t\t\telem.id= this.files[id]['html_id'];\r\n\t\t\t\tvar close= \"<img src=\\\"\"+ parent.editAreaLoader.baseURL +\"images/close.gif\\\" title=\\\"\"+ this.get_translation('close_tab', 'word') +\"\\\" onclick=\\\"editArea.execCommand('close_file', editArea.filesIdAssoc['\"+ html_id +\"']);return false;\\\" class=\\\"hidden\\\" onmouseover=\\\"this.className=''\\\" onmouseout=\\\"this.className='hidden'\\\" />\";\r\n\t\t\t\telem.innerHTML= \"<a onclick=\\\"javascript:editArea.execCommand('switch_to_file', editArea.filesIdAssoc['\"+ html_id +\"']);\\\" selec=\\\"none\\\"><b><span><strong class=\\\"edited\\\">*</strong>\"+ this.files[id]['title'] + close +\"</span></b></a>\";\r\n\t\t\t\t_$('tab_browsing_list').appendChild(elem);\r\n\t\t\t\tvar elem= document.createElement('text');\r\n\t\t\t\tthis.update_size();\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t// open file callback (for plugin)\r\n\t\t\tif(id!=\"\")\r\n\t\t\t\tthis.execCommand('file_open', this.files[id]);\r\n\t\t\t\r\n\t\t\tthis.switch_to_file(id, true);\r\n\t\t\treturn true;\r\n\t\t}\r\n\t\telse\r\n\t\t\treturn false;\r\n\t};\r\n\t\r\n\t// close the given file\r\n\tEditArea.prototype.close_file= function(id){\r\n\t\tif(this.files[id])\r\n\t\t{\r\n\t\t\tthis.save_file(id);\r\n\t\t\t\r\n\t\t\t// close file callback\r\n\t\t\tif(this.execCommand('file_close', this.files[id])!==false)\r\n\t\t\t{\r\n\t\t\t\t// remove the tab in the toolbar\r\n\t\t\t\tvar li= _$(this.files[id]['html_id']);\r\n\t\t\t\tli.parentNode.removeChild(li);\r\n\t\t\t\t// select a new file\r\n\t\t\t\tif(id== this.curr_file)\r\n\t\t\t\t{\r\n\t\t\t\t\tvar next_file= \"\";\r\n\t\t\t\t\tvar is_next= false;\r\n\t\t\t\t\tfor(var i in this.files)\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tif( is_next )\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tnext_file\t= i;\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\telse if( i == id )\r\n\t\t\t\t\t\t\tis_next\t\t= true;\r\n\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\tnext_file\t= i;\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// display the next file\r\n\t\t\t\t\tthis.switch_to_file(next_file);\r\n\t\t\t\t}\r\n\t\t\t\t// clear datas\r\n\t\t\t\tdelete (this.files[id]);\r\n\t\t\t\tthis.update_size();\r\n\t\t\t}\t\r\n\t\t}\r\n\t};\r\n\t\r\n\t// backup current file datas\r\n\tEditArea.prototype.save_file= function(id){\r\n\t\tvar t= this, save, a_links, a_selects, save_butt, img, i;\r\n\t\tif(t.files[id])\r\n\t\t{\r\n\t\t\tvar save= t.files[id];\r\n\t\t\tsave['last_selection']\t\t\t= t.last_selection;\t\t\r\n\t\t\tsave['last_text_to_highlight']\t= t.last_text_to_highlight;\r\n\t\t\tsave['last_hightlighted_text']\t= t.last_hightlighted_text;\r\n\t\t\tsave['previous']\t\t\t\t= t.previous;\r\n\t\t\tsave['next']\t\t\t\t\t= t.next;\r\n\t\t\tsave['last_undo']\t\t\t\t= t.last_undo;\r\n\t\t\tsave['smooth_selection']\t\t= t.smooth_selection;\r\n\t\t\tsave['do_highlight']\t\t\t= t.do_highlight;\r\n\t\t\tsave['syntax']\t\t\t\t\t= t.settings['syntax'];\r\n\t\t\tsave['text']\t\t\t\t\t= t.textarea.value;\r\n\t\t\tsave['scroll_top']\t\t\t\t= t.result.scrollTop;\r\n\t\t\tsave['scroll_left']\t\t\t\t= t.result.scrollLeft;\r\n\t\t\tsave['selection_start']\t\t\t= t.last_selection[\"selectionStart\"];\r\n\t\t\tsave['selection_end']\t\t\t= t.last_selection[\"selectionEnd\"];\r\n\t\t\tsave['font_size']\t\t\t\t= t.settings[\"font_size\"];\r\n\t\t\tsave['font_family']\t\t\t\t= t.settings[\"font_family\"];\r\n\t\t\tsave['word_wrap']\t\t\t\t= t.settings[\"word_wrap\"];\r\n\t\t\tsave['toolbar']\t\t\t\t\t= {'links':{}, 'selects': {}};\r\n\t\t\t\r\n\t\t\t// save toolbar buttons state for fileSpecific buttons\r\n\t\t\ta_links= _$(\"toolbar_1\").getElementsByTagName(\"a\");\r\n\t\t\tfor( i=0; i<a_links.length; i++ )\r\n\t\t\t{\r\n\t\t\t\tif( a_links[i].getAttribute('fileSpecific') == 'yes' )\r\n\t\t\t\t{\r\n\t\t\t\t\tsave_butt\t= {};\r\n\t\t\t\t\timg\t\t\t= a_links[i].getElementsByTagName('img')[0];\r\n\t\t\t\t\tsave_butt['classLock']\t\t= img.classLock;\r\n\t\t\t\t\tsave_butt['className']\t\t= img.className;\r\n\t\t\t\t\tsave_butt['oldClassName']\t= img.oldClassName;\r\n\t\t\t\t\t\r\n\t\t\t\t\tsave['toolbar']['links'][a_links[i].id]= save_butt;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t// save toolbar select state for fileSpecific buttons\r\n\t\t\ta_selects= _$(\"toolbar_1\").getElementsByTagName(\"select\");\r\n\t\t\tfor( i=0; i<a_selects.length; i++)\r\n\t\t\t{\r\n\t\t\t\tif(a_selects[i].getAttribute('fileSpecific')=='yes')\r\n\t\t\t\t{\r\n\t\t\t\t\tsave['toolbar']['selects'][a_selects[i].id]= a_selects[i].value;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\t\t\r\n\t\t\tt.files[id]= save;\r\n\t\t\t\r\n\t\t\treturn save;\r\n\t\t}\r\n\t\t\r\n\t\treturn false;\r\n\t};\r\n\t\r\n\t// update file_datas\r\n\tEditArea.prototype.update_file= function(id, new_values){\r\n\t\tfor(var i in new_values)\r\n\t\t{\r\n\t\t\tthis.files[id][i]= new_values[i];\r\n\t\t}\r\n\t};\r\n\t\r\n\t// display file datas\r\n\tEditArea.prototype.display_file= function(id){\r\n\t\tvar t = this, a= t.textarea, new_file, a_lis, a_selects, a_links, a_options, i, j;\r\n\t\t\r\n\t\t// we're showing the empty file\r\n\t\tif(id=='')\r\n\t\t{\r\n\t\t\ta.readOnly= true;\r\n\t\t\tt.tab_browsing_area.style.display= \"none\";\r\n\t\t\t_$(\"no_file_selected\").style.display= \"block\";\r\n\t\t\tt.result.className= \"empty\";\r\n\t\t\t// clear current datas\r\n\t\t\tif(!t.files[''])\r\n\t\t\t{\r\n\t\t\t\tt.open_file({id: ''});\r\n\t\t\t}\r\n\t\t}\r\n\t\t// we try to show a non existent file, so we left\r\n\t\telse if( typeof( t.files[id] ) == 'undefined' )\r\n\t\t{\r\n\t\t\treturn false;\r\n\t\t}\r\n\t\t// display a normal file\r\n\t\telse\r\n\t\t{\r\n\t\t\tt.result.className= \"\";\r\n\t\t\ta.readOnly= !t.is_editable;\r\n\t\t\t_$(\"no_file_selected\").style.display= \"none\";\r\n\t\t\tt.tab_browsing_area.style.display= \"block\";\r\n\t\t}\r\n\t\t\r\n\t\t// ensure to have last state for undo/redo actions\r\n\t\tt.check_redo(true);\r\n\t\tt.check_undo(true);\r\n\t\tt.curr_file= id;\r\n\t\t\r\n\t\t// replace selected tab file\r\n\t\ta_lis= t.tab_browsing_area.getElementsByTagName('li');\r\n\t\tfor( i=0; i<a_lis.length; i++)\r\n\t\t{\r\n\t\t\tif(a_lis[i].id == t.files[id]['html_id'])\r\n\t\t\t\ta_lis[i].className='selected';\r\n\t\t\telse\r\n\t\t\t\ta_lis[i].className='';\r\n\t\t}\r\n\t\t\r\n\t\t// replace next files datas\r\n\t\tnew_file= t.files[id];\r\n\t\r\n\t\t// restore text content\r\n\t\ta.value= new_file['text'];\r\n\t\t\r\n\t\t// restore font-size\r\n\t\tt.set_font(new_file['font_family'], new_file['font_size']);\r\n\t\t\r\n\t\t// restore selection and scroll\r\n\t\tt.area_select(new_file['selection_start'], new_file['selection_end'] - new_file['selection_start']);\r\n\t\tt.manage_size(true);\r\n\t\tt.result.scrollTop= new_file['scroll_top'];\r\n\t\tt.result.scrollLeft= new_file['scroll_left'];\r\n\t\t\r\n\t\t// restore undo, redo\r\n\t\tt.previous=\tnew_file['previous'];\r\n\t\tt.next=\tnew_file['next'];\r\n\t\tt.last_undo=\tnew_file['last_undo'];\r\n\t\tt.check_redo(true);\r\n\t\tt.check_undo(true);\r\n\t\t\r\n\t\t// restore highlight\r\n\t\tt.execCommand(\"change_highlight\", new_file['do_highlight']);\r\n\t\tt.execCommand(\"change_syntax\", new_file['syntax']);\r\n\t\t\r\n\t\t// smooth mode\r\n\t\tt.execCommand(\"change_smooth_selection_mode\", new_file['smooth_selection']);\r\n\t\t\r\n\t\t// word_wrap\r\n\t\tt.execCommand(\"set_word_wrap\", new_file['word_wrap']);\r\n\t\t\t\r\n\t\t// restore links state in toolbar\r\n\t\ta_links= new_file['toolbar']['links'];\r\n\t\tfor( i in a_links)\r\n\t\t{\r\n\t\t\tif( img =  _$(i).getElementsByTagName('img')[0] )\r\n\t\t\t{\r\n\t\t\t\timg.classLock\t= a_links[i]['classLock'];\r\n\t\t\t\timg.className\t= a_links[i]['className'];\r\n\t\t\t\timg.oldClassName= a_links[i]['oldClassName'];\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\t// restore select state in toolbar\r\n\t\ta_selects = new_file['toolbar']['selects'];\r\n\t\tfor( i in a_selects)\r\n\t\t{\r\n\t\t\ta_options\t= _$(i).options;\r\n\t\t\tfor( j=0; j<a_options.length; j++)\r\n\t\t\t{\r\n\t\t\t\tif( a_options[j].value == a_selects[i] )\r\n\t\t\t\t\t_$(i).options[j].selected=true;\r\n\t\t\t}\r\n\t\t}\r\n\t\r\n\t};\r\n\r\n\t// change tab for displaying a new one\r\n\tEditArea.prototype.switch_to_file= function(file_to_show, force_refresh){\r\n\t\tif(file_to_show!=this.curr_file || force_refresh)\r\n\t\t{\r\n\t\t\tthis.save_file(this.curr_file);\r\n\t\t\tif(this.curr_file!='')\r\n\t\t\t\tthis.execCommand('file_switch_off', this.files[this.curr_file]);\r\n\t\t\tthis.display_file(file_to_show);\r\n\t\t\tif(file_to_show!='')\r\n\t\t\t\tthis.execCommand('file_switch_on', this.files[file_to_show]);\r\n\t\t}\r\n\t};\r\n\r\n\t// get all infos for the given file\r\n\tEditArea.prototype.get_file= function(id){\r\n\t\tif(id==this.curr_file)\r\n\t\t\tthis.save_file(id);\r\n\t\treturn this.files[id];\r\n\t};\r\n\t\r\n\t// get all available files infos\r\n\tEditArea.prototype.get_all_files= function(){\r\n\t\ttmp_files= this.files;\r\n\t\tthis.save_file(this.curr_file);\r\n\t\tif(tmp_files[''])\r\n\t\t\tdelete(this.files['']);\r\n\t\treturn tmp_files;\r\n\t};\r\n\t\r\n\t\r\n\t// check if the file has changed\r\n\tEditArea.prototype.check_file_changes= function(){\r\n\t\r\n\t\tvar id= this.curr_file;\r\n\t\tif(this.files[id] && this.files[id]['compare_edited_text']!=undefined)\r\n\t\t{\r\n\t\t\tif(this.files[id]['compare_edited_text'].length==this.textarea.value.length && this.files[id]['compare_edited_text']==this.textarea.value)\r\n\t\t\t{\r\n\t\t\t\tif(this.files[id]['edited']!= false)\r\n\t\t\t\t\tthis.set_file_edited_mode(id, false);\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\tif(this.files[id]['edited']!= true)\r\n\t\t\t\t\tthis.set_file_edited_mode(id, true);\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\t\r\n\t// set if the file is edited or not\r\n\tEditArea.prototype.set_file_edited_mode= function(id, to){\r\n\t\t// change CSS for edited tab\r\n\t\tif(this.files[id] && _$(this.files[id]['html_id']))\r\n\t\t{\r\n\t\t\tvar link= _$(this.files[id]['html_id']).getElementsByTagName('a')[0];\r\n\t\t\tif(to==true)\r\n\t\t\t{\r\n\t\t\t\tlink.className= 'edited';\r\n\t\t\t}\r\n\t\t\telse\r\n\t\t\t{\r\n\t\t\t\tlink.className= '';\r\n\t\t\t\tif(id==this.curr_file)\r\n\t\t\t\t\ttext= this.textarea.value;\r\n\t\t\t\telse\r\n\t\t\t\t\ttext= this.files[id]['text'];\r\n\t\t\t\tthis.files[id]['compare_edited_text']= text;\r\n\t\t\t}\r\n\t\t\t\t\r\n\t\t\tthis.files[id]['edited']= to;\r\n\t\t}\r\n\t};\r\n\r\n\tEditArea.prototype.set_show_line_colors = function(new_value){\r\n\t\tthis.show_line_colors = new_value;\r\n\t\t\r\n\t\tif( new_value )\r\n\t\t\tthis.selection_field.className\t+= ' show_colors';\r\n\t\telse\r\n\t\t\tthis.selection_field.className\t= this.selection_field.className.replace( / show_colors/g, '' );\r\n\t};"
  },
  {
    "path": "newscoop/js/editarea/edit_area/edit_area_loader.js",
    "content": "/******\r\n *\r\n *\tEditArea \r\n * \tDevelopped by Christophe Dolivet\r\n *\tReleased under LGPL, Apache and BSD licenses (use the one you want)\r\n *\r\n******/\r\n\r\nfunction EditAreaLoader(){\r\n\tvar t=this;\r\n\tt.version= \"0.8.2\";\r\n\tdate= new Date();\r\n\tt.start_time=date.getTime();\r\n\tt.win= \"loading\";\t// window loading state\r\n\tt.error= false;\t// to know if load is interrrupt\r\n\tt.baseURL=\"\";\r\n\t//t.suffix=\"\";\r\n\tt.template=\"\";\r\n\tt.lang= {};\t// array of loaded speech language\r\n\tt.load_syntax= {};\t// array of loaded syntax language for highlight mode\r\n\tt.syntax= {};\t// array of initilized syntax language for highlight mode\r\n\tt.loadedFiles= [];\r\n\tt.waiting_loading= {}; \t// files that must be loaded in order to allow the script to really start\r\n\t// scripts that must be loaded in the iframe\r\n\tt.scripts_to_load= [\"elements_functions\", \"resize_area\", \"reg_syntax\"];\r\n\tt.sub_scripts_to_load= [\"edit_area\", \"manage_area\" ,\"edit_area_functions\", \"keyboard\", \"search_replace\", \"highlight\", \"regexp\"];\r\n\tt.syntax_display_name= { /*syntax_display_name_AUTO-FILL-BY-COMPRESSOR*/ };\r\n\t\r\n\tt.resize= []; // contain resizing datas\r\n\tt.hidden= {};\t// store datas of the hidden textareas\r\n\t\r\n\tt.default_settings= {\r\n\t\t//id: \"src\"\t// id of the textarea to transform\r\n\t\tdebug: false\r\n\t\t,smooth_selection: true\r\n\t\t,font_size: \"10\"\t\t// not for IE\r\n\t\t,font_family: \"monospace\"\t// can be \"verdana,monospace\". Allow non monospace font but Firefox get smaller tabulation with non monospace fonts. IE doesn't change the tabulation width and Opera doesn't take this option into account... \r\n\t\t,start_highlight: false\t// if start with highlight\r\n\t\t,toolbar: \"search, go_to_line, fullscreen, |, undo, redo, |, select_font,|, change_smooth_selection, highlight, reset_highlight, word_wrap, |, help\"\r\n\t\t,begin_toolbar: \"\"\t\t//  \"new_document, save, load, |\"\r\n\t\t,end_toolbar: \"\"\t\t// or end_toolbar\r\n\t\t,is_multi_files: false\t\t// enable the multi file mode (the textarea content is ignored)\r\n\t\t,allow_resize: \"both\"\t// possible values: \"no\", \"both\", \"x\", \"y\"\r\n\t\t,show_line_colors: false\t// if the highlight is disabled for the line currently beeing edited (if enabled => heavy CPU use)\r\n\t\t,min_width: 400\r\n\t\t,min_height: 125\r\n\t\t,replace_tab_by_spaces: false\r\n\t\t,allow_toggle: true\t\t// true or false\r\n\t\t,language: \"en\"\r\n\t\t,syntax: \"\"\r\n\t\t,syntax_selection_allow: \"basic,brainfuck,c,coldfusion,cpp,css,html,java,js,pas,perl,php,python,ruby,robotstxt,sql,tsql,vb,xml\"\r\n\t\t,display: \"onload\" \t\t// onload or later\r\n\t\t,max_undo: 30\r\n\t\t,browsers: \"known\"\t// all or known\r\n\t\t,plugins: \"\" // comma separated plugin list\r\n\t\t,gecko_spellcheck: false\t// enable/disable by default the gecko_spellcheck\r\n\t\t,fullscreen: false\r\n\t\t,is_editable: true\r\n\t\t,cursor_position: \"begin\"\r\n\t\t,word_wrap: false\t\t// define if the text is wrapped of not in the textarea\r\n\t\t,autocompletion: false\t// NOT IMPLEMENTED\t\t\t\r\n\t\t,load_callback: \"\"\t\t// click on load button (function name)\r\n\t\t,save_callback: \"\"\t\t// click on save button (function name)\r\n\t\t,change_callback: \"\"\t// textarea onchange trigger (function name)\r\n\t\t,submit_callback: \"\"\t// form submited (function name)\r\n\t\t,EA_init_callback: \"\"\t// EditArea initiliazed (function name)\r\n\t\t,EA_delete_callback: \"\"\t// EditArea deleted (function name)\r\n\t\t,EA_load_callback: \"\"\t// EditArea fully loaded and displayed (function name)\r\n\t\t,EA_unload_callback: \"\"\t// EditArea delete while being displayed (function name)\r\n\t\t,EA_toggle_on_callback: \"\"\t// EditArea toggled on (function name)\r\n\t\t,EA_toggle_off_callback: \"\"\t// EditArea toggled off (function name)\r\n\t\t,EA_file_switch_on_callback: \"\"\t// a new tab is selected (called for the newly selected file)\r\n\t\t,EA_file_switch_off_callback: \"\"\t// a new tab is selected (called for the previously selected file)\r\n\t\t,EA_file_close_callback: \"\"\t\t// close a tab\r\n\t};\r\n\t\r\n\tt.advanced_buttons = [\r\n\t\t\t// id, button img, command (it will try to find the translation of \"id\"), is_file_specific\r\n\t\t\t['new_document', 'newdocument.gif', 'new_document', false],\r\n\t\t\t['search', 'search.gif', 'show_search', false],\r\n\t\t\t['go_to_line', 'go_to_line.gif', 'go_to_line', false],\r\n\t\t\t['undo', 'undo.gif', 'undo', true],\r\n\t\t\t['redo', 'redo.gif', 'redo', true],\r\n\t\t\t['change_smooth_selection', 'smooth_selection.gif', 'change_smooth_selection_mode', true],\r\n\t\t\t['reset_highlight', 'reset_highlight.gif', 'resync_highlight', true],\r\n\t\t\t['highlight', 'highlight.gif','change_highlight', true],\r\n\t\t\t['help', 'help.gif', 'show_help', false],\r\n\t\t\t['save', 'save.gif', 'save', false],\r\n\t\t\t['load', 'load.gif', 'load', false],\r\n\t\t\t['fullscreen', 'fullscreen.gif', 'toggle_full_screen', false],\r\n\t\t\t['word_wrap', 'word_wrap.gif', 'toggle_word_wrap', true],\r\n\t\t\t['autocompletion', 'autocompletion.gif', 'toggle_autocompletion', true]\r\n\t\t];\r\n\t\t\t\r\n\t// navigator identification\r\n\tt.set_browser_infos(t);\r\n\r\n\tif(t.isIE>=6 || t.isGecko || ( t.isWebKit && !t.isSafari<3 ) || t.isOpera>=9  || t.isCamino )\r\n\t\tt.isValidBrowser=true;\r\n\telse\r\n\t\tt.isValidBrowser=false;\r\n\r\n\tt.set_base_url();\t\t\r\n\t\r\n\tfor(var i=0; i<t.scripts_to_load.length; i++){\r\n\t\tsetTimeout(\"editAreaLoader.load_script('\"+t.baseURL + t.scripts_to_load[i]+ \".js');\", 1);\t// let the time to Object editAreaLoader to be created before loading additionnal scripts\r\n\t\tt.waiting_loading[t.scripts_to_load[i]+ \".js\"]= false;\r\n\t}\r\n\tt.add_event(window, \"load\", EditAreaLoader.prototype.window_loaded);\r\n};\r\n\t\r\nEditAreaLoader.prototype ={\r\n\thas_error : function(){\r\n\t\tthis.error= true;\r\n\t\t// set to empty all EditAreaLoader functions\r\n\t\tfor(var i in EditAreaLoader.prototype){\r\n\t\t\tEditAreaLoader.prototype[i]=function(){};\t\t\r\n\t\t}\r\n\t},\r\n\t\r\n\t// add browser informations to the object passed in parameter\r\n\tset_browser_infos : function(o){\r\n\t\tua= navigator.userAgent;\r\n\t\t\r\n\t\t// general detection\r\n\t\to.isWebKit\t= /WebKit/.test(ua);\r\n\t\to.isGecko\t= !o.isWebKit && /Gecko/.test(ua);\r\n\t\to.isMac\t\t= /Mac/.test(ua);\r\n\t\t\r\n\t\to.isIE\t= (navigator.appName == \"Microsoft Internet Explorer\");\r\n\t\tif(o.isIE){\r\n\t\t\to.isIE = ua.replace(/^.*?MSIE\\s+([0-9\\.]+).*$/, \"$1\");\r\n\t\t\tif(o.isIE<6)\r\n\t\t\t\to.has_error();\r\n\t\t}\r\n\r\n\t\tif(o.isOpera = (ua.indexOf('Opera') != -1)){\t\r\n\t\t\to.isOpera= ua.replace(/^.*?Opera.*?([0-9\\.]+).*$/i, \"$1\");\r\n\t\t\tif(o.isOpera<9)\r\n\t\t\t\to.has_error();\r\n\t\t\to.isIE=false;\t\t\t\r\n\t\t}\r\n\r\n\t\tif(o.isFirefox =(ua.indexOf('Firefox') != -1))\r\n\t\t\to.isFirefox = ua.replace(/^.*?Firefox.*?([0-9\\.]+).*$/i, \"$1\");\r\n\t\t// Firefox clones \t\r\n\t\tif( ua.indexOf('Iceweasel') != -1 )\r\n\t\t\to.isFirefox\t= ua.replace(/^.*?Iceweasel.*?([0-9\\.]+).*$/i, \"$1\");\r\n\t\tif( ua.indexOf('GranParadiso') != -1 )\r\n\t\t\to.isFirefox\t= ua.replace(/^.*?GranParadiso.*?([0-9\\.]+).*$/i, \"$1\");\r\n\t\tif( ua.indexOf('BonEcho') != -1 )\r\n\t\t\to.isFirefox\t= ua.replace(/^.*?BonEcho.*?([0-9\\.]+).*$/i, \"$1\");\r\n\t\tif( ua.indexOf('SeaMonkey') != -1)\r\n\t\t\to.isFirefox = (ua.replace(/^.*?SeaMonkey.*?([0-9\\.]+).*$/i, \"$1\") ) + 1;\r\n\t\t\t\r\n\t\tif(o.isCamino =(ua.indexOf('Camino') != -1))\r\n\t\t\to.isCamino = ua.replace(/^.*?Camino.*?([0-9\\.]+).*$/i, \"$1\");\r\n\t\t\t\r\n\t\tif(o.isSafari =(ua.indexOf('Safari') != -1))\r\n\t\t\to.isSafari= ua.replace(/^.*?Version\\/([0-9]+\\.[0-9]+).*$/i, \"$1\");\r\n\t\r\n\t\tif(o.isChrome =(ua.indexOf('Chrome') != -1)) {\r\n\t\t\to.isChrome = ua.replace(/^.*?Chrome.*?([0-9\\.]+).*$/i, \"$1\");\r\n\t\t\to.isSafari\t= false;\r\n\t\t}\r\n\t\t\r\n\t},\r\n\t\r\n\twindow_loaded : function(){\r\n\t\teditAreaLoader.win=\"loaded\";\r\n\t\t\r\n\t\t// add events on forms\r\n\t\tif (document.forms) {\r\n\t\t\tfor (var i=0; i<document.forms.length; i++) {\r\n\t\t\t\tvar form = document.forms[i];\r\n\t\t\t\tform.edit_area_replaced_submit=null;\r\n\t\t\t\ttry {\r\n\t\t\t\t\t\r\n\t\t\t\t\tform.edit_area_replaced_submit = form.onsubmit;\r\n\t\t\t\t\tform.onsubmit=\"\";\r\n\t\t\t\t} catch (e) {// Do nothing\r\n\t\t\t\t}\r\n\t\t\t\teditAreaLoader.add_event(form, \"submit\", EditAreaLoader.prototype.submit);\r\n\t\t\t\teditAreaLoader.add_event(form, \"reset\", EditAreaLoader.prototype.reset);\r\n\t\t\t}\r\n\t\t}\r\n\t\teditAreaLoader.add_event(window, \"unload\", function(){for(var i in editAreas){editAreaLoader.delete_instance(i);}});\t// ini callback\r\n\t},\r\n\t\r\n\t// init the checkup of the selection of the IE textarea\r\n\tinit_ie_textarea : function(id){\r\n\t\tvar a=document.getElementById(id);\r\n\t\ttry{\r\n\t\t\tif(a && typeof(a.focused)==\"undefined\"){\r\n\t\t\t\ta.focus();\r\n\t\t\t\ta.focused=true;\r\n\t\t\t\ta.selectionStart= a.selectionEnd= 0;\t\t\t\r\n\t\t\t\tget_IE_selection(a);\r\n\t\t\t\teditAreaLoader.add_event(a, \"focus\", IE_textarea_focus);\r\n\t\t\t\teditAreaLoader.add_event(a, \"blur\", IE_textarea_blur);\r\n\t\t\t\t\r\n\t\t\t}\r\n\t\t}catch(ex){}\r\n\t},\r\n\t\t\r\n\tinit : function(settings){\r\n\t\tvar t=this,s=settings,i;\r\n\t\t\r\n\t\tif(!s[\"id\"])\r\n\t\t\tt.has_error();\r\n\t\tif(t.error)\r\n\t\t\treturn;\r\n\t\t// if an instance of the editor already exists for this textarea => delete the previous one\r\n\t\tif(editAreas[s[\"id\"]])\r\n\t\t\tt.delete_instance(s[\"id\"]);\r\n\t\r\n\t\t// init settings\r\n\t\tfor(i in t.default_settings){\r\n\t\t\tif(typeof(s[i])==\"undefined\")\r\n\t\t\t\ts[i]=t.default_settings[i];\r\n\t\t}\r\n\t\t\r\n\t\tif(s[\"browsers\"]==\"known\" && t.isValidBrowser==false){\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t\r\n\t\tif(s[\"begin_toolbar\"].length>0)\r\n\t\t\ts[\"toolbar\"]= s[\"begin_toolbar\"] +\",\"+ s[\"toolbar\"];\r\n\t\tif(s[\"end_toolbar\"].length>0)\r\n\t\t\ts[\"toolbar\"]= s[\"toolbar\"] +\",\"+ s[\"end_toolbar\"];\r\n\t\ts[\"tab_toolbar\"]= s[\"toolbar\"].replace(/ /g,\"\").split(\",\");\r\n\t\t\r\n\t\ts[\"plugins\"]= s[\"plugins\"].replace(/ /g,\"\").split(\",\");\r\n\t\tfor(i=0; i<s[\"plugins\"].length; i++){\r\n\t\t\tif(s[\"plugins\"][i].length==0)\r\n\t\t\t\ts[\"plugins\"].splice(i,1);\r\n\t\t}\r\n\t//\talert(settings[\"plugins\"].length+\": \"+ settings[\"plugins\"].join(\",\"));\r\n\t\tt.get_template();\r\n\t\tt.load_script(t.baseURL + \"langs/\"+ s[\"language\"] + \".js\");\r\n\t\t\r\n\t\tif(s[\"syntax\"].length>0){\r\n\t\t\ts[\"syntax\"]=s[\"syntax\"].toLowerCase();\r\n\t\t\tt.load_script(t.baseURL + \"reg_syntax/\"+ s[\"syntax\"] + \".js\");\r\n\t\t}\r\n\t\t//alert(this.template);\r\n\t\t\r\n\t\teditAreas[s[\"id\"]]= {\"settings\": s};\r\n\t\teditAreas[s[\"id\"]][\"displayed\"]=false;\r\n\t\teditAreas[s[\"id\"]][\"hidden\"]=false;\r\n\t\t\r\n\t\t//if(settings[\"display\"]==\"onload\")\r\n\t\tt.start(s[\"id\"]);\r\n\t},\r\n\t\r\n\t// delete an instance of an EditArea\r\n\tdelete_instance : function(id){\r\n\t\tvar d=document,fs=window.frames,span,iframe;\r\n\t\teditAreaLoader.execCommand(id, \"EA_delete\");\r\n\t\tif(fs[\"frame_\"+id] && fs[\"frame_\"+id].editArea)\r\n\t\t{\r\n\t\t\tif(editAreas[id][\"displayed\"])\r\n\t\t\t\teditAreaLoader.toggle(id, \"off\");\r\n\t\t\tfs[\"frame_\"+id].editArea.execCommand(\"EA_unload\");\r\n\t\t}\r\n\r\n\t\t// remove toggle infos and debug textarea\r\n\t\tspan= d.getElementById(\"EditAreaArroundInfos_\"+id);\r\n\t\tif(span)\r\n\t\t\tspan.parentNode.removeChild(span);\r\n\r\n\t\t// remove the iframe\r\n\t\tiframe= d.getElementById(\"frame_\"+id);\r\n\t\tif(iframe){\r\n\t\t\tiframe.parentNode.removeChild(iframe);\r\n\t\t\t//delete iframe;\r\n\t\t\ttry {\r\n\t\t\t\tdelete fs[\"frame_\"+id];\r\n\t\t\t} catch (e) {// Do nothing\r\n\t\t\t}\r\n\t\t}\t\r\n\r\n\t\tdelete editAreas[id];\r\n\t},\r\n\r\n\t\r\n\tstart : function(id){\r\n\t\tvar t=this,d=document,f,span,father,next,html='',html_toolbar_content='',template,content,i;\r\n\t\t\r\n\t\t// check that the window is loaded\r\n\t\tif(t.win!=\"loaded\"){\r\n\t\t\tsetTimeout(\"editAreaLoader.start('\"+id+\"');\", 50);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t\r\n\t\t// check that all needed scripts are loaded\r\n\t\tfor( i in t.waiting_loading){\r\n\t\t\tif(t.waiting_loading[i]!=\"loaded\" && typeof(t.waiting_loading[i])!=\"function\"){\r\n\t\t\t\tsetTimeout(\"editAreaLoader.start('\"+id+\"');\", 50);\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\t// wait until language and syntax files are loaded\r\n\t\tif(!t.lang[editAreas[id][\"settings\"][\"language\"]] || (editAreas[id][\"settings\"][\"syntax\"].length>0 && !t.load_syntax[editAreas[id][\"settings\"][\"syntax\"]]) ){\r\n\t\t\tsetTimeout(\"editAreaLoader.start('\"+id+\"');\", 50);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t// init the regexp for syntax highlight\r\n\t\tif(editAreas[id][\"settings\"][\"syntax\"].length>0)\r\n\t\t\tt.init_syntax_regexp();\r\n\t\t\r\n\t\t\t\r\n\t\t// display toggle option and debug area\r\n\t\tif(!d.getElementById(\"EditAreaArroundInfos_\"+id) && (editAreas[id][\"settings\"][\"debug\"] || editAreas[id][\"settings\"][\"allow_toggle\"]))\r\n\t\t{\r\n\t\t\tspan= d.createElement(\"span\");\r\n\t\t\tspan.id= \"EditAreaArroundInfos_\"+id;\r\n\t\t\tif(editAreas[id][\"settings\"][\"allow_toggle\"]){\r\n\t\t\t\tchecked=(editAreas[id][\"settings\"][\"display\"]==\"onload\")?\"checked='checked'\":\"\";\r\n\t\t\t\thtml+=\"<div id='edit_area_toggle_\"+i+\"'>\";\r\n\t\t\t\thtml+=\"<input id='edit_area_toggle_checkbox_\"+ id +\"' class='toggle_\"+ id +\"' type='checkbox' onclick='editAreaLoader.toggle(\\\"\"+ id +\"\\\");' accesskey='e' \"+checked+\" />\";\r\n\t\t\t\thtml+=\"<label for='edit_area_toggle_checkbox_\"+ id +\"'>{$toggle}</label></div>\";\t\r\n\t\t\t}\r\n\t\t\tif(editAreas[id][\"settings\"][\"debug\"])\r\n\t\t\t\thtml+=\"<textarea id='edit_area_debug_\"+ id +\"' spellcheck='off' style='z-index: 20; width: 100%; height: 120px;overflow: auto; border: solid black 1px;'></textarea><br />\";\t\t\t\t\r\n\t\t\thtml= t.translate(html, editAreas[id][\"settings\"][\"language\"]);\t\t\t\t\r\n\t\t\tspan.innerHTML= html;\t\t\t\t\r\n\t\t\tfather= d.getElementById(id).parentNode;\r\n\t\t\tnext= d.getElementById(id).nextSibling;\r\n\t\t\tif(next==null)\r\n\t\t\t\tfather.appendChild(span);\r\n\t\t\telse\r\n\t\t\t\tfather.insertBefore(span, next);\r\n\t\t}\r\n\t\t\r\n\t\tif(!editAreas[id][\"initialized\"])\r\n\t\t{\r\n\t\t\tt.execCommand(id, \"EA_init\");\t// ini callback\r\n\t\t\tif(editAreas[id][\"settings\"][\"display\"]==\"later\"){\r\n\t\t\t\teditAreas[id][\"initialized\"]= true;\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\tif(t.isIE){\t// launch IE selection checkup\r\n\t\t\tt.init_ie_textarea(id);\r\n\t\t}\r\n\t\t\t\t\r\n\t\t// get toolbar content\r\n\t\tvar area=editAreas[id];\r\n\t\t\r\n\t\tfor(i=0; i<area[\"settings\"][\"tab_toolbar\"].length; i++){\r\n\t\t//\talert(this.tab_toolbar[i]+\"\\n\"+ this.get_control_html(this.tab_toolbar[i]));\r\n\t\t\thtml_toolbar_content+= t.get_control_html(area[\"settings\"][\"tab_toolbar\"][i], area[\"settings\"][\"language\"]);\r\n\t\t}\r\n\t\t// translate toolbar text here for chrome 2\r\n\t\thtml_toolbar_content = t.translate(html_toolbar_content, area[\"settings\"][\"language\"], \"template\"); \r\n\t\t\r\n\t\t\r\n\t\t// create javascript import rules for the iframe if the javascript has not been already loaded by the compressor\r\n\t\tif(!t.iframe_script){\r\n\t\t\tt.iframe_script=\"\";\r\n\t\t\tfor(i=0; i<t.sub_scripts_to_load.length; i++)\r\n\t\t\t\tt.iframe_script+='<script language=\"javascript\" type=\"text/javascript\" src=\"'+ t.baseURL + t.sub_scripts_to_load[i] +'.js\"></script>';\r\n\t\t}\r\n\t\t\r\n\t\t// add plugins scripts if not already loaded by the compressor (but need to load language in all the case)\r\n\t\tfor(i=0; i<area[\"settings\"][\"plugins\"].length; i++){\r\n\t\t\t//if(typeof(area[\"settings\"][\"plugins\"][i])==\"function\") continue;\r\n\t\t\tif(!t.all_plugins_loaded)\r\n\t\t\t\tt.iframe_script+='<script language=\"javascript\" type=\"text/javascript\" src=\"'+ t.baseURL + 'plugins/' + area[\"settings\"][\"plugins\"][i] + '/' + area[\"settings\"][\"plugins\"][i] +'.js\"></script>';\r\n\t\t\tt.iframe_script+='<script language=\"javascript\" type=\"text/javascript\" src=\"'+ t.baseURL + 'plugins/' + area[\"settings\"][\"plugins\"][i] + '/langs/' + area[\"settings\"][\"language\"] +'.js\"></script>';\r\n\t\t}\r\n\t\r\n\t\t\r\n\t\t// create css link for the iframe if the whole css text has not been already loaded by the compressor\r\n\t\tif(!t.iframe_css){\r\n\t\t\tt.iframe_css=\"<link href='\"+ t.baseURL +\"edit_area.css' rel='stylesheet' type='text/css' />\";\r\n\t\t}\r\n\t\t\r\n\t\t\r\n\t\t// create template\r\n\t\ttemplate= t.template.replace(/\\[__BASEURL__\\]/g, t.baseURL);\r\n\t\ttemplate= template.replace(\"[__TOOLBAR__]\",html_toolbar_content);\r\n\t\t\t\r\n\t\t\r\n\t\t// fill template with good language sentences\r\n\t\ttemplate= t.translate(template, area[\"settings\"][\"language\"], \"template\");\r\n\t\t\r\n\t\t// add css_code\r\n\t\ttemplate= template.replace(\"[__CSSRULES__]\", t.iframe_css);\t\t\t\t\r\n\t\t// add js_code\r\n\t\ttemplate= template.replace(\"[__JSCODE__]\", t.iframe_script);\r\n\t\t\r\n\t\t// add version_code\r\n\t\ttemplate= template.replace(\"[__EA_VERSION__]\", t.version);\r\n\t\t//template=template.replace(/\\{\\$([^\\}]+)\\}/gm, this.traduc_template);\r\n\t\t\r\n\t\t//editAreas[area[\"settings\"][\"id\"]][\"template\"]= template;\r\n\t\t\r\n\t\tarea.textarea=d.getElementById(area[\"settings\"][\"id\"]);\r\n\t\teditAreas[area[\"settings\"][\"id\"]][\"textarea\"]=area.textarea;\r\n\t\r\n\t\t// if removing previous instances from DOM before (fix from Marcin)\r\n\t\tif(typeof(window.frames[\"frame_\"+area[\"settings\"][\"id\"]])!='undefined') \r\n\t\t\tdelete window.frames[\"frame_\"+area[\"settings\"][\"id\"]];\r\n\t\t\r\n\t\t// insert template in the document after the textarea\r\n\t\tfather= area.textarea.parentNode;\r\n\t/*\tvar container= document.createElement(\"div\");\r\n\t\tcontainer.id= \"EditArea_frame_container_\"+area[\"settings\"][\"id\"];\r\n\t*/\t\r\n\t\tcontent= d.createElement(\"iframe\");\r\n\t\tcontent.name= \"frame_\"+area[\"settings\"][\"id\"];\r\n\t\tcontent.id= \"frame_\"+area[\"settings\"][\"id\"];\r\n\t\tcontent.style.borderWidth= \"0px\";\r\n\t\tsetAttribute(content, \"frameBorder\", \"0\"); // IE\r\n\t\tcontent.style.overflow=\"hidden\";\r\n\t\tcontent.style.display=\"none\";\r\n\r\n\t\t\r\n\t\tnext= area.textarea.nextSibling;\r\n\t\tif(next==null)\r\n\t\t\tfather.appendChild(content);\r\n\t\telse\r\n\t\t\tfather.insertBefore(content, next) ;\t\t\r\n\t\tf=window.frames[\"frame_\"+area[\"settings\"][\"id\"]];\r\n\t\tf.document.open();\r\n\t\tf.editAreas=editAreas;\r\n\t\tf.area_id= area[\"settings\"][\"id\"];\t\r\n\t\tf.document.area_id= area[\"settings\"][\"id\"];\t\r\n\t\tf.document.write(template);\r\n\t\tf.document.close();\r\n\r\n\t//\tframe.editAreaLoader=this;\r\n\t\t//editAreas[area[\"settings\"][\"id\"]][\"displayed\"]=true;\r\n\t\t\r\n\t},\r\n\t\r\n\ttoggle : function(id, toggle_to){\r\n\r\n\t/*\tif((editAreas[id][\"displayed\"]==true  && toggle_to!=\"on\") || toggle_to==\"off\"){\r\n\t\t\tthis.toggle_off(id);\r\n\t\t}else if((editAreas[id][\"displayed\"]==false  && toggle_to!=\"off\") || toggle_to==\"on\"){\r\n\t\t\tthis.toggle_on(id);\r\n\t\t}*/\r\n\t\tif(!toggle_to)\r\n\t\t\ttoggle_to= (editAreas[id][\"displayed\"]==true)?\"off\":\"on\";\r\n\t\tif(editAreas[id][\"displayed\"]==true  && toggle_to==\"off\"){\r\n\t\t\tthis.toggle_off(id);\r\n\t\t}else if(editAreas[id][\"displayed\"]==false  && toggle_to==\"on\"){\r\n\t\t\tthis.toggle_on(id);\r\n\t\t}\r\n\t\r\n\t\treturn false;\r\n\t},\r\n\t\r\n\t// static function\r\n\ttoggle_off : function(id){\r\n\t\tvar fs=window.frames,f,t,parNod,nxtSib,selStart,selEnd,scrollTop,scrollLeft;\r\n\t\tif(fs[\"frame_\"+id])\r\n\t\t{\t\r\n\t\t\tf\t= fs[\"frame_\"+id];\r\n\t\t\tt\t= editAreas[id][\"textarea\"];\r\n\t\t\tif(f.editArea.fullscreen['isFull'])\r\n\t\t\t\tf.editArea.toggle_full_screen(false);\r\n\t\t\teditAreas[id][\"displayed\"]=false;\r\n\t\t\t\r\n\t\t\t// set wrap to off to keep same display mode (some browser get problem with this, so it need more complex operation\t\t\r\n\t\t\tt.wrap = \"off\";\t// for IE\r\n\t\t\tsetAttribute(t, \"wrap\", \"off\");\t// for Firefox\t\r\n\t\t\tparNod = t.parentNode;\r\n\t\t\tnxtSib = t.nextSibling;\r\n\t\t\tparNod.removeChild(t); \r\n\t\t\tparNod.insertBefore(t, nxtSib);\r\n\t\t\t\r\n\t\t\t// restore values\r\n\t\t\tt.value= f.editArea.textarea.value;\r\n\t\t\tselStart\t= f.editArea.last_selection[\"selectionStart\"];\r\n\t\t\tselEnd\t\t= f.editArea.last_selection[\"selectionEnd\"];\r\n\t\t\tscrollTop\t= f.document.getElementById(\"result\").scrollTop;\r\n\t\t\tscrollLeft\t= f.document.getElementById(\"result\").scrollLeft;\r\n\t\t\t\r\n\t\t\t\r\n\t\t\tdocument.getElementById(\"frame_\"+id).style.display='none';\r\n\t\t\r\n\t\t\tt.style.display=\"inline\";\r\n\r\n\t\t\ttry{\t// IE will give an error when trying to focus an invisible or disabled textarea\r\n\t\t\t\tt.focus();\r\n\t\t\t} catch(e){};\r\n\t\t\tif(this.isIE){\r\n\t\t\t\tt.selectionStart= selStart;\r\n\t\t\t\tt.selectionEnd\t= selEnd;\r\n\t\t\t\tt.focused\t\t= true;\r\n\t\t\t\tset_IE_selection(t);\r\n\t\t\t}else{\r\n\t\t\t\tif(this.isOpera && this.isOpera < 9.6 ){\t// Opera bug when moving selection start and selection end\r\n\t\t\t\t\tt.setSelectionRange(0, 0);\r\n\t\t\t\t}\r\n\t\t\t\ttry{\r\n\t\t\t\t\tt.setSelectionRange(selStart, selEnd);\r\n\t\t\t\t} catch(e) {};\r\n\t\t\t}\r\n\t\t\tt.scrollTop= scrollTop;\r\n\t\t\tt.scrollLeft= scrollLeft;\r\n\t\t\tf.editArea.execCommand(\"toggle_off\");\r\n\r\n\t\t}\r\n\t},\t\r\n\t\r\n\t// static function\r\n\ttoggle_on : function(id){\r\n\t\tvar fs=window.frames,f,t,selStart=0,selEnd=0,scrollTop=0,scrollLeft=0,curPos,elem;\r\n\t\t\t\r\n\t\tif(fs[\"frame_\"+id])\r\n\t\t{\r\n\t\t\tf\t= fs[\"frame_\"+id];\r\n\t\t\tt\t= editAreas[id][\"textarea\"];\r\n\t\t\tarea= f.editArea;\r\n\t\t\tarea.textarea.value= t.value;\r\n\t\t\t\r\n\t\t\t// store display values;\r\n\t\t\tcurPos\t= editAreas[id][\"settings\"][\"cursor_position\"];\r\n\r\n\t\t\tif(t.use_last==true)\r\n\t\t\t{\r\n\t\t\t\tselStart\t= t.last_selectionStart;\r\n\t\t\t\tselEnd\t\t= t.last_selectionEnd;\r\n\t\t\t\tscrollTop\t= t.last_scrollTop;\r\n\t\t\t\tscrollLeft\t= t.last_scrollLeft;\r\n\t\t\t\tt.use_last=false;\r\n\t\t\t}\r\n\t\t\telse if( curPos == \"auto\" )\r\n\t\t\t{\r\n\t\t\t\ttry{\r\n\t\t\t\t\tselStart\t= t.selectionStart;\r\n\t\t\t\t\tselEnd\t\t= t.selectionEnd;\r\n\t\t\t\t\tscrollTop\t= t.scrollTop;\r\n\t\t\t\t\tscrollLeft\t= t.scrollLeft;\r\n\t\t\t\t\t//alert(scrollTop);\r\n\t\t\t\t}catch(ex){}\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t// set to good size\r\n\t\t\tthis.set_editarea_size_from_textarea(id, document.getElementById(\"frame_\"+id));\r\n\t\t\tt.style.display=\"none\";\t\t\t\r\n\t\t\tdocument.getElementById(\"frame_\"+id).style.display=\"inline\";\r\n\t\t\tarea.execCommand(\"focus\"); // without this focus opera doesn't manage well the iframe body height\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t// restore display values\r\n\t\t\teditAreas[id][\"displayed\"]=true;\r\n\t\t\tarea.execCommand(\"update_size\");\r\n\t\t\t\r\n\t\t\tf.document.getElementById(\"result\").scrollTop= scrollTop;\r\n\t\t\tf.document.getElementById(\"result\").scrollLeft= scrollLeft;\r\n\t\t\tarea.area_select(selStart, selEnd-selStart);\r\n\t\t\tarea.execCommand(\"toggle_on\");\r\n\r\n\t\t\t\r\n\t\t}\r\n\t\telse\r\n\t\t{\r\n\t\t/*\tif(this.isIE)\r\n\t\t\t\tget_IE_selection(document.getElementById(id));\t*/\t\r\n\t\t\telem= document.getElementById(id);\t\r\n\t\t\telem.last_selectionStart= elem.selectionStart;\r\n\t\t\telem.last_selectionEnd= elem.selectionEnd;\r\n\t\t\telem.last_scrollTop= elem.scrollTop;\r\n\t\t\telem.last_scrollLeft= elem.scrollLeft;\r\n\t\t\telem.use_last=true;\r\n\t\t\teditAreaLoader.start(id);\r\n\t\t}\r\n\t},\t\r\n\t\r\n\tset_editarea_size_from_textarea : function(id, frame){\t\r\n\t\tvar elem,width,height;\r\n\t\telem\t= document.getElementById(id);\r\n\t\t\r\n\t\twidth\t= Math.max(editAreas[id][\"settings\"][\"min_width\"], elem.offsetWidth)+\"px\";\r\n\t\theight\t= Math.max(editAreas[id][\"settings\"][\"min_height\"], elem.offsetHeight)+\"px\";\r\n\t\tif(elem.style.width.indexOf(\"%\")!=-1)\r\n\t\t\twidth\t= elem.style.width;\r\n\t\tif(elem.style.height.indexOf(\"%\")!=-1)\r\n\t\t\theight\t= elem.style.height;\r\n\t\t//alert(\"h: \"+height+\" w: \"+width);\r\n\t\r\n\t\tframe.style.width= width;\r\n\t\tframe.style.height= height;\r\n\t},\r\n\t\t\r\n\tset_base_url : function(){\r\n\t\tvar t=this,elems,i,docBasePath;\r\n\r\n\t\tif( !this.baseURL ){\r\n\t\t\telems = document.getElementsByTagName('script');\r\n\t\r\n\t\t\tfor( i=0; i<elems.length; i++ ){\r\n\t\t\t\tif (elems[i].src && elems[i].src.match(/edit_area_[^\\\\\\/]*$/i) ) {\r\n\t\t\t\t\tvar src = unescape( elems[i].src ); // use unescape for utf-8 encoded urls\r\n\t\t\t\t\tsrc = src.substring(0, src.lastIndexOf('/'));\r\n\t\t\t\t\tthis.baseURL = src;\r\n\t\t\t\t\tthis.file_name= elems[i].src.substr(elems[i].src.lastIndexOf(\"/\")+1);\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\tdocBasePath\t= document.location.href;\r\n\t\tif (docBasePath.indexOf('?') != -1)\r\n\t\t\tdocBasePath\t= docBasePath.substring(0, docBasePath.indexOf('?'));\r\n\t\tdocBasePath\t= docBasePath.substring(0, docBasePath.lastIndexOf('/'));\r\n\t\r\n\t\t// If not HTTP absolute\r\n\t\tif (t.baseURL.indexOf('://') == -1 && t.baseURL.charAt(0) != '/') {\r\n\t\t\t// If site absolute\r\n\t\t\tt.baseURL = docBasePath + \"/\" + t.baseURL;\r\n\t\t}\r\n\t\tt.baseURL\t+=\"/\";\t\r\n\t},\r\n\t\r\n\tget_button_html : function(id, img, exec, isFileSpecific, baseURL) {\r\n\t\tvar cmd,html;\r\n\t\tif(!baseURL)\r\n\t\t\tbaseURL= this.baseURL;\r\n\t\tcmd\t= 'editArea.execCommand(\\'' + exec + '\\')';\r\n\t\thtml\t= '<a id=\"a_'+ id +'\" href=\"javascript:' + cmd + '\" onclick=\"' + cmd + ';return false;\" onmousedown=\"return false;\" target=\"_self\" fileSpecific=\"'+ (isFileSpecific?'yes':'no') +'\">';\r\n\t\thtml\t+= '<img id=\"' + id + '\" src=\"'+ baseURL +'images/' + img + '\" title=\"{$' + id + '}\" width=\"20\" height=\"20\" class=\"editAreaButtonNormal\" onmouseover=\"editArea.switchClass(this,\\'editAreaButtonOver\\');\" onmouseout=\"editArea.restoreClass(this);\" onmousedown=\"editArea.restoreAndSwitchClass(this,\\'editAreaButtonDown\\');\" /></a>';\r\n\t\treturn html;\r\n\t},\r\n\r\n\tget_control_html : function(button_name, lang) {\t\t\r\n\t\tvar t=this,i,but,html,si;\r\n\t\tfor (i=0; i<t.advanced_buttons.length; i++)\r\n\t\t{\r\n\t\t\tbut = t.advanced_buttons[i];\t\t\t\r\n\t\t\tif (but[0] == button_name)\r\n\t\t\t{\r\n\t\t\t\treturn t.get_button_html(but[0], but[1], but[2], but[3]);\r\n\t\t\t}\t\r\n\t\t}\t\t\r\n\t\t\t\t\r\n\t\tswitch (button_name){\r\n\t\t\tcase \"*\":\r\n\t\t\tcase \"return\":\r\n\t\t\t\treturn \"<br />\";\r\n\t\t\tcase \"|\":\r\n\t\t  \tcase \"separator\":\r\n\t\t\t\treturn '<img src=\"'+ t.baseURL +'images/spacer.gif\" width=\"1\" height=\"15\" class=\"editAreaSeparatorLine\">';\r\n\t\t\tcase \"select_font\":\r\n\t\t\t\thtml= \"<select id='area_font_size' onchange='javascript:editArea.execCommand(\\\"change_font_size\\\")' fileSpecific='yes'>\";\r\n\t\t\t\thtml+=\"<option value='-1'>{$font_size}</option>\";\r\n\t\t\t\tsi=[8,9,10,11,12,14];\r\n\t\t\t\tfor( i=0;i<si.length;i++){\r\n\t\t\t\t\thtml+=\"<option value='\"+si[i]+\"'>\"+si[i]+\" pt</option>\";\r\n\t\t\t\t}\r\n\t\t\t\thtml+=\"</select>\";\r\n\t\t\t\treturn html;\r\n\t\t\tcase \"syntax_selection\":\r\n\t\t\t\thtml= \"<select id='syntax_selection' onchange='javascript:editArea.execCommand(\\\"change_syntax\\\", this.value)' fileSpecific='yes'>\";\r\n\t\t\t\thtml+=\"<option value='-1'>{$syntax_selection}</option>\";\r\n\t\t\t\thtml+=\"</select>\";\r\n\t\t\t\treturn html;\r\n\t\t}\r\n\t\t\r\n\t\treturn \"<span id='tmp_tool_\"+button_name+\"'>[\"+button_name+\"]</span>\";\t\t\r\n\t},\r\n\t\r\n\t\r\n\tget_template : function(){\r\n\t\tif(this.template==\"\")\r\n\t\t{\r\n\t\t\tvar xhr_object = null; \r\n\t\t\tif(window.XMLHttpRequest) // Firefox \r\n\t\t\t\txhr_object = new XMLHttpRequest(); \r\n\t\t\telse if(window.ActiveXObject) // Internet Explorer \r\n\t\t\t\txhr_object = new ActiveXObject(\"Microsoft.XMLHTTP\"); \r\n\t\t\telse { // XMLHttpRequest not supported\r\n\t\t\t\talert(\"XMLHTTPRequest not supported. EditArea not loaded\"); \r\n\t\t\t\treturn; \r\n\t\t\t} \r\n\t\t\t \r\n\t\t\txhr_object.open(\"GET\", this.baseURL+\"template.html\", false); \r\n\t\t\txhr_object.send(null); \r\n\t\t\tif(xhr_object.readyState == 4) \r\n\t\t\t\tthis.template=xhr_object.responseText;\r\n\t\t\telse\r\n\t\t\t\tthis.has_error();\r\n\t\t}\r\n\t},\r\n\t\r\n\t// translate text\r\n\ttranslate : function(text, lang, mode){\r\n\t\tif(mode==\"word\")\r\n\t\t\ttext=editAreaLoader.get_word_translation(text, lang);\r\n\t\telse if(mode=\"template\"){\r\n\t\t\teditAreaLoader.current_language= lang;\r\n\t\t\ttext=text.replace(/\\{\\$([^\\}]+)\\}/gm, editAreaLoader.translate_template);\r\n\t\t}\r\n\t\treturn text;\r\n\t},\r\n\t\r\n\ttranslate_template : function(){\r\n\t\treturn editAreaLoader.get_word_translation(EditAreaLoader.prototype.translate_template.arguments[1], editAreaLoader.current_language);\r\n\t},\r\n\t\r\n\tget_word_translation : function(val, lang){\r\n\t\tvar i;\r\n\t\t\r\n\t\tfor( i in editAreaLoader.lang[lang]){\r\n\t\t\tif(i == val)\r\n\t\t\t\treturn editAreaLoader.lang[lang][i];\r\n\t\t}\r\n\t\treturn \"_\"+val;\r\n\t},\r\n\t\r\n\tload_script : function(url){\r\n\t\tvar t=this,d=document,script,head;\r\n\t\t\r\n\t\tif( t.loadedFiles[url] )\r\n\t\t\treturn;\t\r\n\t\t//alert(\"load: \"+url);\r\n\t\ttry{\r\n\t\t\tscript= d.createElement(\"script\");\r\n\t\t\tscript.type= \"text/javascript\";\r\n\t\t\tscript.src= url;\r\n\t\t\tscript.charset= \"UTF-8\";\r\n\t\t\td.getElementsByTagName(\"head\")[0].appendChild(script);\r\n\t\t}catch(e){\r\n\t\t\td.write('<sc'+'ript language=\"javascript\" type=\"text/javascript\" src=\"' + url + '\" charset=\"UTF-8\"></sc'+'ript>');\r\n\t\t}\r\n\t\t\r\n\t\tt.loadedFiles[url] = true;\r\n\t},\r\n\t\r\n\tadd_event : function(obj, name, handler) {\r\n\t\ttry{\r\n\t\t\tif (obj.attachEvent) {\r\n\t\t\t\tobj.attachEvent(\"on\" + name, handler);\r\n\t\t\t} else{\r\n\t\t\t\tobj.addEventListener(name, handler, false);\r\n\t\t\t}\r\n\t\t}catch(e){}\r\n\t},\r\n\t\r\n\tremove_event : function(obj, name, handler){\r\n\t\ttry{\r\n\t\t\tif (obj.detachEvent)\r\n\t\t\t\tobj.detachEvent(\"on\" + name, handler);\r\n\t\t\telse\r\n\t\t\t\tobj.removeEventListener(name, handler, false);\r\n\t\t}catch(e){}\r\n\t},\r\n\r\n\r\n\t// reset all the editareas in the form that have been reseted\r\n\treset : function(e){\r\n\t\tvar formObj,is_child,i,x;\r\n\t\t\r\n\t\tformObj = editAreaLoader.isIE ? window.event.srcElement : e.target;\r\n\t\tif(formObj.tagName!='FORM')\r\n\t\t\tformObj= formObj.form;\r\n\t\t\r\n\t\tfor( i in editAreas ){\t\t\t\r\n\t\t\tis_child= false;\r\n\t\t\tfor( x=0;x<formObj.elements.length;x++ ) {\r\n\t\t\t\tif(formObj.elements[x].id == i)\r\n\t\t\t\t\tis_child=true;\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\tif(window.frames[\"frame_\"+i] && is_child && editAreas[i][\"displayed\"]==true){\r\n\t\t\t\r\n\t\t\t\tvar exec= 'window.frames[\"frame_'+ i +'\"].editArea.textarea.value= document.getElementById(\"'+ i +'\").value;';\r\n\t\t\t\texec+= 'window.frames[\"frame_'+ i +'\"].editArea.execCommand(\"focus\");';\r\n\t\t\t\texec+= 'window.frames[\"frame_'+ i +'\"].editArea.check_line_selection();';\r\n\t\t\t\texec+= 'window.frames[\"frame_'+ i +'\"].editArea.execCommand(\"reset\");';\r\n\t\t\t\twindow.setTimeout(exec, 10);\r\n\t\t\t}\r\n\t\t}\t\t\r\n\t\treturn;\r\n\t},\r\n\t\r\n\t\r\n\t// prepare all the textarea replaced by an editarea to be submited\r\n\tsubmit : function(e){\t\t\r\n\t\tvar formObj,is_child,fs=window.frames,i,x;\r\n\t\tformObj = editAreaLoader.isIE ? window.event.srcElement : e.target;\r\n\t\tif(formObj.tagName!='FORM')\r\n\t\t\tformObj= formObj.form;\r\n\t\t\r\n\t\tfor( i in editAreas){\r\n\t\t\tis_child= false;\r\n\t\t\tfor( x=0;x<formObj.elements.length;x++ ) {\r\n\t\t\t\tif(formObj.elements[x].id == i)\r\n\t\t\t\t\tis_child=true;\r\n\t\t\t}\r\n\t\t\r\n\t\t\tif(is_child)\r\n\t\t\t{\r\n\t\t\t\tif(fs[\"frame_\"+i] && editAreas[i][\"displayed\"]==true)\r\n\t\t\t\t\tdocument.getElementById(i).value= fs[\"frame_\"+ i].editArea.textarea.value;\r\n\t\t\t\teditAreaLoader.execCommand(i,\"EA_submit\");\r\n\t\t\t}\r\n\t\t}\t\t\t\t\r\n\t\tif( typeof(formObj.edit_area_replaced_submit) == \"function\" ){\r\n\t\t\tres= formObj.edit_area_replaced_submit();\r\n\t\t\tif(res==false){\r\n\t\t\t\tif(editAreaLoader.isIE)\r\n\t\t\t\t\treturn false;\r\n\t\t\t\telse\r\n\t\t\t\t\te.preventDefault();\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn;\r\n\t},\r\n\t\r\n\t// allow to get the value of the editarea\r\n\tgetValue : function(id){\r\n        if(window.frames[\"frame_\"+id] && editAreas[id][\"displayed\"]==true){\r\n            return window.frames[\"frame_\"+ id].editArea.textarea.value;       \r\n        }else if(elem=document.getElementById(id)){\r\n        \treturn elem.value;\r\n        }\r\n        return false;\r\n    },\r\n    \r\n    // allow to set the value of the editarea\r\n    setValue : function(id, new_val){\r\n    \tvar fs=window.frames;\r\n    \t\r\n        if( ( f=fs[\"frame_\"+id] ) && editAreas[id][\"displayed\"]==true){\r\n\t\t\tf.editArea.textarea.value= new_val;     \r\n\t\t\tf.editArea.execCommand(\"focus\"); \r\n\t\t\tf.editArea.check_line_selection(false);  \r\n\t\t\tf.editArea.execCommand(\"onchange\");\r\n        }else if(elem=document.getElementById(id)){\r\n        \telem.value= new_val;\r\n        }\r\n    },\r\n\t    \r\n    // allow to get infos on the selection: array(start, end)\r\n    getSelectionRange : function(id){\r\n    \tvar sel,eA,fs=window.frames;\r\n    \t\r\n    \tsel= {\"start\": 0, \"end\": 0};\r\n        if(fs[\"frame_\"+id] && editAreas[id][\"displayed\"]==true){\r\n        \teA= fs[\"frame_\"+ id].editArea;\r\n\r\n\t\t\tsel[\"start\"]\t= eA.textarea.selectionStart;\r\n\t\t\tsel[\"end\"]\t\t= eA.textarea.selectionEnd;\r\n\t\t\r\n        }else if( elem=document.getElementById(id) ){\r\n        \tsel= getSelectionRange(elem);\r\n        }\r\n        return sel;\r\n    },\r\n    \r\n    // allow to set the selection with the given start and end positions\r\n    setSelectionRange : function(id, new_start, new_end){\r\n    \tvar fs=window.frames;\r\n    \t\r\n        if(fs[\"frame_\"+id] && editAreas[id][\"displayed\"]==true){\r\n            fs[\"frame_\"+ id].editArea.area_select(new_start, new_end-new_start);  \r\n\t\t\t// make an auto-scroll to the selection\r\n\t\t\tif(!this.isIE){\r\n\t\t\t\tfs[\"frame_\"+ id].editArea.check_line_selection(false); \r\n\t\t\t\tfs[\"frame_\"+ id].editArea.scroll_to_view();\r\n\t\t\t}   \r\n        }else if(elem=document.getElementById(id)){\r\n        \tsetSelectionRange(elem, new_start, new_end);\r\n        }\r\n    },\r\n    \r\n    getSelectedText : function(id){\r\n    \tvar sel= this.getSelectionRange(id);\r\n    \t\r\n        return this.getValue(id).substring(sel[\"start\"], sel[\"end\"]);\r\n    },\r\n\t\r\n\tsetSelectedText : function(id, new_val){\r\n\t\tvar fs=window.frames,d=document,sel,text,scrollTop,scrollLeft,new_sel_end;\r\n\t\t\r\n\t\tnew_val\t= new_val.replace(/\\r/g, \"\"); \r\n\t\tsel\t\t= this.getSelectionRange(id);\r\n\t\ttext\t= this.getValue(id);\r\n\t\tif(fs[\"frame_\"+id] && editAreas[id][\"displayed\"]==true){\r\n\t\t\tscrollTop\t= fs[\"frame_\"+ id].document.getElementById(\"result\").scrollTop;\r\n\t\t\tscrollLeft\t= fs[\"frame_\"+ id].document.getElementById(\"result\").scrollLeft;\r\n\t\t}else{\r\n\t\t\tscrollTop\t= d.getElementById(id).scrollTop;\r\n\t\t\tscrollLeft\t= d.getElementById(id).scrollLeft;\r\n\t\t}\r\n\t\t\r\n\t\ttext\t= text.substring(0, sel[\"start\"])+ new_val +text.substring(sel[\"end\"]);\r\n\t\tthis.setValue(id, text);\r\n\t\tnew_sel_end\t= sel[\"start\"]+ new_val.length;\r\n\t\tthis.setSelectionRange(id, sel[\"start\"], new_sel_end);\r\n\t\t\r\n\t\t\r\n\t\t// fix \\r problem for selection length count on IE & Opera\r\n\t\tif(new_val != this.getSelectedText(id).replace(/\\r/g, \"\")){\r\n\t\t\tthis.setSelectionRange(id, sel[\"start\"], new_sel_end+ new_val.split(\"\\n\").length -1);\r\n\t\t}\r\n\t\t// restore scrolling position\r\n\t\tif(fs[\"frame_\"+id] && editAreas[id][\"displayed\"]==true){\r\n\t\t\tfs[\"frame_\"+ id].document.getElementById(\"result\").scrollTop= scrollTop;\r\n\t\t\tfs[\"frame_\"+ id].document.getElementById(\"result\").scrollLeft= scrollLeft;\r\n\t\t\tfs[\"frame_\"+ id].editArea.execCommand(\"onchange\");\r\n\t\t}else{\r\n\t\t\td.getElementById(id).scrollTop= scrollTop;\r\n\t\t\td.getElementById(id).scrollLeft= scrollLeft;\r\n\t\t}\r\n    },\r\n    \r\n    insertTags : function(id, open_tag, close_tag){\r\n    \tvar old_sel,new_sel;\r\n    \t\r\n    \told_sel\t= this.getSelectionRange(id);\r\n    \ttext\t= open_tag + this.getSelectedText(id) + close_tag;\r\n    \t \r\n\t\teditAreaLoader.setSelectedText(id, text);\r\n\t\t\r\n    \tnew_sel\t= this.getSelectionRange(id);\r\n    \tif(old_sel[\"end\"] > old_sel[\"start\"])\t// if text was selected, cursor at the end\r\n    \t\tthis.setSelectionRange(id, new_sel[\"end\"], new_sel[\"end\"]);\r\n    \telse // cursor in the middle\r\n    \t\tthis.setSelectionRange(id, old_sel[\"start\"]+open_tag.length, old_sel[\"start\"]+open_tag.length);\r\n    },\r\n    \r\n    // hide both EditArea and normal textarea\r\n\thide : function(id){\r\n\t\tvar fs= window.frames,d=document,t=this,scrollTop,scrollLeft,span;\r\n\t\tif(d.getElementById(id) && !t.hidden[id])\r\n\t\t{\r\n\t\t\tt.hidden[id]= {};\r\n\t\t\tt.hidden[id][\"selectionRange\"]= t.getSelectionRange(id);\r\n\t\t\tif(d.getElementById(id).style.display!=\"none\")\r\n\t\t\t{\r\n\t\t\t\tt.hidden[id][\"scrollTop\"]= d.getElementById(id).scrollTop;\r\n\t\t\t\tt.hidden[id][\"scrollLeft\"]= d.getElementById(id).scrollLeft;\r\n\t\t\t}\r\n\t\t\t\t\t\r\n\t\t\tif(fs[\"frame_\"+id])\r\n\t\t\t{\r\n\t\t\t\tt.hidden[id][\"toggle\"]= editAreas[id][\"displayed\"];\r\n\t\t\t\t\r\n\t\t\t\tif(fs[\"frame_\"+id] && editAreas[id][\"displayed\"]==true){\r\n\t\t\t\t\tscrollTop\t= fs[\"frame_\"+ id].document.getElementById(\"result\").scrollTop;\r\n\t\t\t\t\tscrollLeft\t= fs[\"frame_\"+ id].document.getElementById(\"result\").scrollLeft;\r\n\t\t\t\t}else{\r\n\t\t\t\t\tscrollTop\t= d.getElementById(id).scrollTop;\r\n\t\t\t\t\tscrollLeft\t= d.getElementById(id).scrollLeft;\r\n\t\t\t\t}\r\n\t\t\t\tt.hidden[id][\"scrollTop\"]= scrollTop;\r\n\t\t\t\tt.hidden[id][\"scrollLeft\"]= scrollLeft;\r\n\t\t\t\t\r\n\t\t\t\tif(editAreas[id][\"displayed\"]==true)\r\n\t\t\t\t\teditAreaLoader.toggle_off(id);\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t// hide toggle button and debug box\r\n\t\t\tspan= d.getElementById(\"EditAreaArroundInfos_\"+id);\r\n\t\t\tif(span){\r\n\t\t\t\tspan.style.display='none';\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t// hide textarea\r\n\t\t\td.getElementById(id).style.display= \"none\";\r\n\t\t}\r\n\t},\r\n\t\r\n\t// restore hidden EditArea and normal textarea\r\n\tshow : function(id){\r\n\t\tvar fs= window.frames,d=document,t=this,span;\r\n\t\tif((elem=d.getElementById(id)) && t.hidden[id])\r\n\t\t{\r\n\t\t\telem.style.display= \"inline\";\r\n\t\t\telem.scrollTop= t.hidden[id][\"scrollTop\"];\r\n\t\t\telem.scrollLeft= t.hidden[id][\"scrollLeft\"];\r\n\t\t\tspan= d.getElementById(\"EditAreaArroundInfos_\"+id);\r\n\t\t\tif(span){\r\n\t\t\t\tspan.style.display='inline';\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\tif(fs[\"frame_\"+id])\r\n\t\t\t{\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t// restore toggle button and debug box\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t// restore textarea\r\n\t\t\t\telem.style.display= \"inline\";\r\n\t\t\t\t\r\n\t\t\t\t// restore EditArea\r\n\t\t\t\tif(t.hidden[id][\"toggle\"]==true)\r\n\t\t\t\t\teditAreaLoader.toggle_on(id);\r\n\t\t\t\t\r\n\t\t\t\tscrollTop\t= t.hidden[id][\"scrollTop\"];\r\n\t\t\t\tscrollLeft\t= t.hidden[id][\"scrollLeft\"];\r\n\t\t\t\t\r\n\t\t\t\tif(fs[\"frame_\"+id] && editAreas[id][\"displayed\"]==true){\r\n\t\t\t\t\tfs[\"frame_\"+ id].document.getElementById(\"result\").scrollTop\t= scrollTop;\r\n\t\t\t\t\tfs[\"frame_\"+ id].document.getElementById(\"result\").scrollLeft\t= scrollLeft;\r\n\t\t\t\t}else{\r\n\t\t\t\t\telem.scrollTop\t= scrollTop;\r\n\t\t\t\t\telem.scrollLeft\t= scrollLeft;\r\n\t\t\t\t}\r\n\t\t\t\r\n\t\t\t}\r\n\t\t\t// restore selection\r\n\t\t\tsel\t= t.hidden[id][\"selectionRange\"];\r\n\t\t\tt.setSelectionRange(id, sel[\"start\"], sel[\"end\"]);\r\n\t\t\tdelete t.hidden[id];\t\r\n\t\t}\r\n\t},\r\n\t\r\n\t// get the current file datas (for multi file editing mode)\r\n\tgetCurrentFile : function(id){\r\n\t\treturn this.execCommand(id, 'get_file', this.execCommand(id, 'curr_file'));\r\n\t},\r\n\t\r\n\t// get the given file datas (for multi file editing mode)\r\n\tgetFile : function(id, file_id){\r\n\t\treturn this.execCommand(id, 'get_file', file_id);\r\n\t},\r\n\t\r\n\t// get all the openned files datas (for multi file editing mode)\r\n\tgetAllFiles : function(id){\r\n\t\treturn this.execCommand(id, 'get_all_files()');\r\n\t},\r\n\t\r\n\t// open a file (for multi file editing mode)\r\n\topenFile : function(id, file_infos){\r\n\t\treturn this.execCommand(id, 'open_file', file_infos);\r\n\t},\r\n\t\r\n\t// close the given file (for multi file editing mode)\r\n\tcloseFile : function(id, file_id){\r\n\t\treturn this.execCommand(id, 'close_file', file_id);\r\n\t},\r\n\t\r\n\t// close the given file (for multi file editing mode)\r\n\tsetFileEditedMode : function(id, file_id, to){\r\n\t\tvar reg1,reg2;\r\n\t\treg1\t= new RegExp('\\\\\\\\', 'g');\r\n\t\treg2\t= new RegExp('\"', 'g');\r\n\t\treturn this.execCommand(id, 'set_file_edited_mode(\"'+ file_id.replace(reg1, '\\\\\\\\').replace(reg2, '\\\\\"') +'\", '+ to +')');\r\n\t},\r\n\t\r\n\t\r\n\t// allow to access to editarea functions and datas (for advanced users only)\r\n\texecCommand : function(id, cmd, fct_param){\r\n\t\tswitch(cmd){\r\n\t\t\tcase \"EA_init\":\r\n\t\t\t\tif(editAreas[id]['settings'][\"EA_init_callback\"].length>0)\r\n\t\t\t\t\teval(editAreas[id]['settings'][\"EA_init_callback\"]+\"('\"+ id +\"');\");\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"EA_delete\":\r\n\t\t\t\tif(editAreas[id]['settings'][\"EA_delete_callback\"].length>0)\r\n\t\t\t\t\teval(editAreas[id]['settings'][\"EA_delete_callback\"]+\"('\"+ id +\"');\");\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"EA_submit\":\r\n\t\t\t\tif(editAreas[id]['settings'][\"submit_callback\"].length>0)\r\n\t\t\t\t\teval(editAreas[id]['settings'][\"submit_callback\"]+\"('\"+ id +\"');\");\r\n\t\t\t\tbreak;\r\n\t\t}\r\n        if(window.frames[\"frame_\"+id] && window.frames[\"frame_\"+ id].editArea){\r\n\t\t\tif(fct_param!=undefined)\r\n\t\t\t\treturn eval('window.frames[\"frame_'+ id +'\"].editArea.'+ cmd +'(fct_param);');\r\n\t\t\telse\r\n\t\t\t\treturn eval('window.frames[\"frame_'+ id +'\"].editArea.'+ cmd +';');       \r\n        }\r\n        return false;\r\n    }\r\n};\r\n\t\r\n\tvar editAreaLoader= new EditAreaLoader();\r\n\tvar editAreas= {};\r\n\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/elements_functions.js",
    "content": "/****\r\n * This page contains some general usefull functions for javascript\r\n *\r\n ****/  \r\n\t\r\n\t\r\n\t// need to redefine this functiondue to IE problem\r\n\tfunction getAttribute( elm, aName ) {\r\n\t\tvar aValue,taName,i;\r\n\t\ttry{\r\n\t\t\taValue = elm.getAttribute( aName );\r\n\t\t}catch(exept){}\r\n\t\t\r\n\t\tif( ! aValue ){\r\n\t\t\tfor( i = 0; i < elm.attributes.length; i ++ ) {\r\n\t\t\t\ttaName = elm.attributes[i] .name.toLowerCase();\r\n\t\t\t\tif( taName == aName ) {\r\n\t\t\t\t\taValue = elm.attributes[i] .value;\r\n\t\t\t\t\treturn aValue;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn aValue;\r\n\t};\r\n\t\r\n\t// need to redefine this function due to IE problem\r\n\tfunction setAttribute( elm, attr, val ) {\r\n\t\tif(attr==\"class\"){\r\n\t\t\telm.setAttribute(\"className\", val);\r\n\t\t\telm.setAttribute(\"class\", val);\r\n\t\t}else{\r\n\t\t\telm.setAttribute(attr, val);\r\n\t\t}\r\n\t};\r\n\t\r\n\t/* return a child element\r\n\t\telem: element we are searching in\r\n\t\telem_type: type of the eleemnt we are searching (DIV, A, etc...)\r\n\t\telem_attribute: attribute of the searched element that must match\r\n\t\telem_attribute_match: value that elem_attribute must match\r\n\t\toption: \"all\" if must return an array of all children, otherwise return the first match element\r\n\t\tdepth: depth of search (-1 or no set => unlimited)\r\n\t*/\r\n\tfunction getChildren(elem, elem_type, elem_attribute, elem_attribute_match, option, depth)\r\n\t{           \r\n\t\tif(!option)\r\n\t\t\tvar option=\"single\";\r\n\t\tif(!depth)\r\n\t\t\tvar depth=-1;\r\n\t\tif(elem){\r\n\t\t\tvar children= elem.childNodes;\r\n\t\t\tvar result=null;\r\n\t\t\tvar results= [];\r\n\t\t\tfor (var x=0;x<children.length;x++) {\r\n\t\t\t\tstrTagName = new String(children[x].tagName);\r\n\t\t\t\tchildren_class=\"?\";\r\n\t\t\t\tif(strTagName!= \"undefined\"){\r\n\t\t\t\t\tchild_attribute= getAttribute(children[x],elem_attribute);\r\n\t\t\t\t\tif((strTagName.toLowerCase()==elem_type.toLowerCase() || elem_type==\"\") && (elem_attribute==\"\" || child_attribute==elem_attribute_match)){\r\n\t\t\t\t\t\tif(option==\"all\"){\r\n\t\t\t\t\t\t\tresults.push(children[x]);\r\n\t\t\t\t\t\t}else{\r\n\t\t\t\t\t\t\treturn children[x];\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif(depth!=0){\r\n\t\t\t\t\t\tresult=getChildren(children[x], elem_type, elem_attribute, elem_attribute_match, option, depth-1);\r\n\t\t\t\t\t\tif(option==\"all\"){\r\n\t\t\t\t\t\t\tif(result.length>0){\r\n\t\t\t\t\t\t\t\tresults= results.concat(result);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}else if(result!=null){                                                                          \r\n\t\t\t\t\t\t\treturn result;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif(option==\"all\")\r\n\t\t\t   return results;\r\n\t\t}\r\n\t\treturn null;\r\n\t};       \r\n\t\r\n\tfunction isChildOf(elem, parent){\r\n\t\tif(elem){\r\n\t\t\tif(elem==parent)\r\n\t\t\t\treturn true;\r\n\t\t\twhile(elem.parentNode != 'undefined'){\r\n\t\t\t\treturn isChildOf(elem.parentNode, parent);\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn false;\r\n\t};\r\n\t\r\n\tfunction getMouseX(e){\r\n\r\n\t\tif(e!=null && typeof(e.pageX)!=\"undefined\"){\r\n\t\t\treturn e.pageX;\r\n\t\t}else{\r\n\t\t\treturn (e!=null?e.x:event.x)+ document.documentElement.scrollLeft;\r\n\t\t}\r\n\t};\r\n\t\r\n\tfunction getMouseY(e){\r\n\t\tif(e!=null && typeof(e.pageY)!=\"undefined\"){\r\n\t\t\treturn e.pageY;\r\n\t\t}else{\r\n\t\t\treturn (e!=null?e.y:event.y)+ document.documentElement.scrollTop;\r\n\t\t}\r\n\t};\r\n\t\r\n\tfunction calculeOffsetLeft(r){\r\n\t\treturn calculeOffset(r,\"offsetLeft\")\r\n\t};\r\n\t\r\n\tfunction calculeOffsetTop(r){\r\n\t\treturn calculeOffset(r,\"offsetTop\")\r\n\t};\r\n\t\r\n\tfunction calculeOffset(element,attr){\r\n\t\tvar offset=0;\r\n\t\twhile(element){\r\n\t\t\toffset+=element[attr];\r\n\t\t\telement=element.offsetParent\r\n\t\t}\r\n\t\treturn offset;\r\n\t};\r\n\t\r\n\t/** return the computed style\r\n\t *\t@param: elem: the reference to the element\r\n\t *\t@param: prop: the name of the css property\t \r\n\t */\r\n\tfunction get_css_property(elem, prop)\r\n\t{\r\n\t\tif(document.defaultView)\r\n\t\t{\r\n\t\t\treturn document.defaultView.getComputedStyle(elem, null).getPropertyValue(prop);\r\n\t\t}\r\n\t\telse if(elem.currentStyle)\r\n\t\t{\r\n\t\t\tvar prop = prop.replace(/-\\D/gi, function(sMatch)\r\n\t\t\t{\r\n\t\t\t\treturn sMatch.charAt(sMatch.length - 1).toUpperCase();\r\n\t\t\t});\r\n\t\t\treturn elem.currentStyle[prop];\r\n\t\t}\r\n\t\telse return null;\r\n\t}\r\n\t\r\n/****\r\n * Moving an element \r\n ***/  \r\n\t\r\n\tvar _mCE;\t// currently moving element\r\n\t\r\n\t/* allow to move an element in a window\r\n\t\te: the event\r\n\t\tid: the id of the element\r\n\t\tframe: the frame of the element \r\n\t\tex of use:\r\n\t\t\tin html:\t<img id='move_area_search_replace' onmousedown='return parent.start_move_element(event,\"area_search_replace\", parent.frames[\"this_frame_id\"]);' .../>  \r\n\t\tor\r\n\t\t\tin javascript: document.getElementById(\"my_div\").onmousedown= start_move_element\r\n\t*/\r\n\tfunction start_move_element(e, id, frame){\r\n\t\tvar elem_id=(e.target || e.srcElement).id;\r\n\t\tif(id)\r\n\t\t\telem_id=id;\t\t\r\n\t\tif(!frame)\r\n\t\t\tframe=window;\r\n\t\tif(frame.event)\r\n\t\t\te=frame.event;\r\n\t\t\t\r\n\t\t_mCE= frame.document.getElementById(elem_id);\r\n\t\t_mCE.frame=frame;\r\n\t\tframe.document.onmousemove= move_element;\r\n\t\tframe.document.onmouseup= end_move_element;\r\n\t\t/*_mCE.onmousemove= move_element;\r\n\t\t_mCE.onmouseup= end_move_element;*/\r\n\t\t\r\n\t\t//alert(_mCE.frame.document.body.offsetHeight);\r\n\t\t\r\n\t\tmouse_x= getMouseX(e);\r\n\t\tmouse_y= getMouseY(e);\r\n\t\t//window.status=frame+ \" elem: \"+elem_id+\" elem: \"+ _mCE + \" mouse_x: \"+mouse_x;\r\n\t\t_mCE.start_pos_x = mouse_x - (_mCE.style.left.replace(\"px\",\"\") || calculeOffsetLeft(_mCE));\r\n\t\t_mCE.start_pos_y = mouse_y - (_mCE.style.top.replace(\"px\",\"\") || calculeOffsetTop(_mCE));\r\n\t\treturn false;\r\n\t};\r\n\t\r\n\tfunction end_move_element(e){\r\n\t\t_mCE.frame.document.onmousemove= \"\";\r\n\t\t_mCE.frame.document.onmouseup= \"\";\t\t\r\n\t\t_mCE=null;\r\n\t};\r\n\t\r\n\tfunction move_element(e){\r\n\t\tvar newTop,newLeft,maxLeft;\r\n\r\n\t\tif( _mCE.frame && _mCE.frame.event )\r\n\t\t\te=_mCE.frame.event;\r\n\t\tnewTop\t= getMouseY(e) - _mCE.start_pos_y;\r\n\t\tnewLeft\t= getMouseX(e) - _mCE.start_pos_x;\r\n\t\t\r\n\t\tmaxLeft\t= _mCE.frame.document.body.offsetWidth- _mCE.offsetWidth;\r\n\t\tmax_top\t= _mCE.frame.document.body.offsetHeight- _mCE.offsetHeight;\r\n\t\tnewTop\t= Math.min(Math.max(0, newTop), max_top);\r\n\t\tnewLeft\t= Math.min(Math.max(0, newLeft), maxLeft);\r\n\t\t\r\n\t\t_mCE.style.top\t= newTop+\"px\";\r\n\t\t_mCE.style.left\t= newLeft+\"px\";\t\t\r\n\t\treturn false;\r\n\t};\r\n\t\r\n/***\r\n * Managing a textarea (this part need the navigator infos from editAreaLoader\r\n ***/ \r\n\t\r\n\tvar nav= editAreaLoader.nav;\r\n\t\r\n\t// allow to get infos on the selection: array(start, end)\r\n\tfunction getSelectionRange(textarea){\r\n\t\treturn {\"start\": textarea.selectionStart, \"end\": textarea.selectionEnd};\r\n\t};\r\n\t\r\n\t// allow to set the selection\r\n\tfunction setSelectionRange(t, start, end){\r\n\t\tt.focus();\r\n\t\t\r\n\t\tstart\t= Math.max(0, Math.min(t.value.length, start));\r\n\t\tend\t\t= Math.max(start, Math.min(t.value.length, end));\r\n\t\r\n\t\tif( nav.isOpera && nav.isOpera < 9.6 ){\t// Opera bug when moving selection start and selection end\r\n\t\t\tt.selectionEnd = 1;\t\r\n\t\t\tt.selectionStart = 0;\t\t\t\r\n\t\t\tt.selectionEnd = 1;\t\r\n\t\t\tt.selectionStart = 0;\t\t\r\n\t\t}\r\n\t\tt.selectionStart\t= start;\r\n\t\tt.selectionEnd\t\t= end;\t\t\r\n\t\t//textarea.setSelectionRange(start, end);\r\n\t\t\r\n\t\tif(nav.isIE)\r\n\t\t\tset_IE_selection(t);\r\n\t};\r\n\r\n\t\r\n\t// set IE position in Firefox mode (textarea.selectionStart and textarea.selectionEnd). should work as a repeated task\r\n\tfunction get_IE_selection(t){\r\n\t\tvar d=document,div,range,stored_range,elem,scrollTop,relative_top,line_start,line_nb,range_start,range_end,tab;\r\n\t\tif(t && t.focused)\r\n\t\t{\t\r\n\t\t\tif(!t.ea_line_height)\r\n\t\t\t{\t// calculate the lineHeight\r\n\t\t\t\tdiv= d.createElement(\"div\");\r\n\t\t\t\tdiv.style.fontFamily= get_css_property(t, \"font-family\");\r\n\t\t\t\tdiv.style.fontSize= get_css_property(t, \"font-size\");\r\n\t\t\t\tdiv.style.visibility= \"hidden\";\t\t\t\r\n\t\t\t\tdiv.innerHTML=\"0\";\r\n\t\t\t\td.body.appendChild(div);\r\n\t\t\t\tt.ea_line_height= div.offsetHeight;\r\n\t\t\t\td.body.removeChild(div);\r\n\t\t\t}\r\n\t\t\t//t.focus();\r\n\t\t\trange = d.selection.createRange();\r\n\t\t\ttry\r\n\t\t\t{\r\n\t\t\t\tstored_range = range.duplicate();\r\n\t\t\t\tstored_range.moveToElementText( t );\r\n\t\t\t\tstored_range.setEndPoint( 'EndToEnd', range );\r\n\t\t\t\tif(stored_range.parentElement() == t){\r\n\t\t\t\t\t// the range don't take care of empty lines in the end of the selection\r\n\t\t\t\t\telem\t\t= t;\r\n\t\t\t\t\tscrollTop\t= 0;\r\n\t\t\t\t\twhile(elem.parentNode){\r\n\t\t\t\t\t\tscrollTop+= elem.scrollTop;\r\n\t\t\t\t\t\telem\t= elem.parentNode;\r\n\t\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\t//\tvar scrollTop= t.scrollTop + document.body.scrollTop;\r\n\t\t\t\t\t\r\n\t\t\t\t//\tvar relative_top= range.offsetTop - calculeOffsetTop(t) + scrollTop;\r\n\t\t\t\t\trelative_top= range.offsetTop - calculeOffsetTop(t)+ scrollTop;\r\n\t\t\t\t//\talert(\"rangeoffset: \"+ range.offsetTop +\"\\ncalcoffsetTop: \"+ calculeOffsetTop(t) +\"\\nrelativeTop: \"+ relative_top);\r\n\t\t\t\t\tline_start\t= Math.round((relative_top / t.ea_line_height) +1);\r\n\t\t\t\t\t\r\n\t\t\t\t\tline_nb\t\t= Math.round(range.boundingHeight / t.ea_line_height);\r\n\t\t\t\t\t\r\n\t\t\t\t\trange_start\t= stored_range.text.length - range.text.length;\r\n\t\t\t\t\ttab\t= t.value.substr(0, range_start).split(\"\\n\");\t\t\t\r\n\t\t\t\t\trange_start\t+= (line_start - tab.length)*2;\t\t// add missing empty lines to the selection\r\n\t\t\t\t\tt.selectionStart = range_start;\r\n\t\t\t\t\t\r\n\t\t\t\t\trange_end\t= t.selectionStart + range.text.length;\r\n\t\t\t\t\ttab\t= t.value.substr(0, range_start + range.text.length).split(\"\\n\");\t\t\t\r\n\t\t\t\t\trange_end\t+= (line_start + line_nb - 1 - tab.length)*2;\r\n\t\t\t\t\tt.selectionEnd = range_end;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tcatch(e){}\r\n\t\t}\r\n\t\tif( t && t.id )\r\n\t\t{\r\n\t\t\tsetTimeout(\"get_IE_selection(document.getElementById('\"+ t.id +\"'));\", 50);\r\n\t\t}\r\n\t};\r\n\t\r\n\tfunction IE_textarea_focus(){\r\n\t\tevent.srcElement.focused= true;\r\n\t}\r\n\t\r\n\tfunction IE_textarea_blur(){\r\n\t\tevent.srcElement.focused= false;\r\n\t}\r\n\t\r\n\t// select the text for IE (take into account the \\r difference)\r\n\tfunction set_IE_selection( t ){\r\n\t\tvar nbLineStart,nbLineStart,nbLineEnd,range;\r\n\t\tif(!window.closed){ \r\n\t\t\tnbLineStart=t.value.substr(0, t.selectionStart).split(\"\\n\").length - 1;\r\n\t\t\tnbLineEnd=t.value.substr(0, t.selectionEnd).split(\"\\n\").length - 1;\r\n\t\t\ttry\r\n\t\t\t{\r\n\t\t\t\trange = document.selection.createRange();\r\n\t\t\t\trange.moveToElementText( t );\r\n\t\t\t\trange.setEndPoint( 'EndToStart', range );\r\n\t\t\t\trange.moveStart('character', t.selectionStart - nbLineStart);\r\n\t\t\t\trange.moveEnd('character', t.selectionEnd - nbLineEnd - (t.selectionStart - nbLineStart)  );\r\n\t\t\t\trange.select();\r\n\t\t\t}\r\n\t\t\tcatch(e){}\r\n\t\t}\r\n\t};\r\n\t\r\n\t\r\n\teditAreaLoader.waiting_loading[\"elements_functions.js\"]= \"loaded\";\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/highlight.js",
    "content": "\t// change_to: \"on\" or \"off\"\r\n\tEditArea.prototype.change_highlight= function(change_to){\r\n\t\tif(this.settings[\"syntax\"].length==0 && change_to==false){\r\n\t\t\tthis.switchClassSticky(_$(\"highlight\"), 'editAreaButtonDisabled', true);\r\n\t\t\tthis.switchClassSticky(_$(\"reset_highlight\"), 'editAreaButtonDisabled', true);\r\n\t\t\treturn false;\r\n\t\t}\r\n\t\t\r\n\t\tif(this.do_highlight==change_to)\r\n\t\t\treturn false;\r\n\t\r\n\t\t\t\r\n\t\tthis.getIESelection();\r\n\t\tvar pos_start= this.textarea.selectionStart;\r\n\t\tvar pos_end= this.textarea.selectionEnd;\r\n\t\t\r\n\t\tif(this.do_highlight===true || change_to==false)\r\n\t\t\tthis.disable_highlight();\r\n\t\telse\r\n\t\t\tthis.enable_highlight();\r\n\t\tthis.textarea.focus();\r\n\t\tthis.textarea.selectionStart = pos_start;\r\n\t\tthis.textarea.selectionEnd = pos_end;\r\n\t\tthis.setIESelection();\r\n\t\t\t\t\r\n\t};\r\n\t\r\n\tEditArea.prototype.disable_highlight= function(displayOnly){\r\n\t\tvar t= this, a=t.textarea, new_Obj, old_class, new_class;\r\n\t\t\t\r\n\t\tt.selection_field.innerHTML=\"\";\r\n\t\tt.selection_field_text.innerHTML=\"\";\r\n\t\tt.content_highlight.style.visibility=\"hidden\";\r\n\t\t// replacing the node is far more faster than deleting it's content in firefox\r\n\t\tnew_Obj= t.content_highlight.cloneNode(false);\r\n\t\tnew_Obj.innerHTML= \"\";\t\t\t\r\n\t\tt.content_highlight.parentNode.insertBefore(new_Obj, t.content_highlight);\r\n\t\tt.content_highlight.parentNode.removeChild(t.content_highlight);\t\r\n\t\tt.content_highlight= new_Obj;\r\n\t\told_class= parent.getAttribute( a,\"class\" );\r\n\t\tif(old_class){\r\n\t\t\tnew_class= old_class.replace( \"hidden\",\"\" );\r\n\t\t\tparent.setAttribute( a, \"class\", new_class );\r\n\t\t}\r\n\t\r\n\t\ta.style.backgroundColor=\"transparent\";\t// needed in order to see the bracket finders\r\n\t\t\r\n\t\t//var icon= document.getElementById(\"highlight\");\r\n\t\t//setAttribute(icon, \"class\", getAttribute(icon, \"class\").replace(/ selected/g, \"\") );\r\n\t\t//t.restoreClass(icon);\r\n\t\t//t.switchClass(icon,'editAreaButtonNormal');\r\n\t\tt.switchClassSticky(_$(\"highlight\"), 'editAreaButtonNormal', true);\r\n\t\tt.switchClassSticky(_$(\"reset_highlight\"), 'editAreaButtonDisabled', true);\r\n\t\r\n\t\tt.do_highlight=false;\r\n\t\r\n\t\tt.switchClassSticky(_$(\"change_smooth_selection\"), 'editAreaButtonSelected', true);\r\n\t\tif(typeof(t.smooth_selection_before_highlight)!=\"undefined\" && t.smooth_selection_before_highlight===false){\r\n\t\t\tt.change_smooth_selection_mode(false);\r\n\t\t}\r\n\t\t\r\n\t//\tthis.textarea.style.backgroundColor=\"#FFFFFF\";\r\n\t};\r\n\r\n\tEditArea.prototype.enable_highlight= function(){\r\n\t\tvar t=this, a=t.textarea, new_class;\r\n\t\tt.show_waiting_screen();\r\n\t\t\t\r\n\t\tt.content_highlight.style.visibility=\"visible\";\r\n\t\tnew_class\t=parent.getAttribute(a,\"class\")+\" hidden\";\r\n\t\tparent.setAttribute( a, \"class\", new_class );\r\n\t\t\r\n\t\t// IE can't manage mouse click outside text range without this\r\n\t\tif( t.isIE )\r\n\t\t\ta.style.backgroundColor=\"#FFFFFF\";\t\r\n\r\n\t\tt.switchClassSticky(_$(\"highlight\"), 'editAreaButtonSelected', false);\r\n\t\tt.switchClassSticky(_$(\"reset_highlight\"), 'editAreaButtonNormal', false);\r\n\t\t\r\n\t\tt.smooth_selection_before_highlight=t.smooth_selection;\r\n\t\tif(!t.smooth_selection)\r\n\t\t\tt.change_smooth_selection_mode(true);\r\n\t\tt.switchClassSticky(_$(\"change_smooth_selection\"), 'editAreaButtonDisabled', true);\r\n\t\t\r\n\t\t\r\n\t\tt.do_highlight=true;\r\n\t\tt.resync_highlight();\r\n\t\t\t\t\t\r\n\t\tt.hide_waiting_screen();\t\r\n\t};\r\n\t\r\n\t/**\r\n\t * Ask to update highlighted text\r\n\t * @param Array infos - Array of datas returned by EditArea.get_selection_infos()\r\n\t */\r\n\tEditArea.prototype.maj_highlight= function(infos){\r\n\t\t// for speed mesure\r\n\t\tvar debug_opti=\"\",tps_start= new Date().getTime(), tps_middle_opti=new Date().getTime();\r\n\t\tvar t=this, hightlighted_text, updated_highlight;\t\r\n\t\tvar textToHighlight=infos[\"full_text\"], doSyntaxOpti = false, doHtmlOpti = false, stay_begin=\"\", stay_end=\"\", trace_new , trace_last;\r\n\t\t\r\n\t\tif(t.last_text_to_highlight==infos[\"full_text\"] && t.resync_highlight!==true)\r\n\t\t\treturn;\r\n\t\t\t\t\t\r\n\t\t//  OPTIMISATION: will search to update only changed lines\r\n\t\tif(t.reload_highlight===true){\r\n\t\t\tt.reload_highlight=false;\r\n\t\t}else if(textToHighlight.length==0){\r\n\t\t\ttextToHighlight=\"\\n \";\r\n\t\t}else{\r\n\t\t\t// get text change datas\r\n\t\t\tchanges = t.checkTextEvolution(t.last_text_to_highlight,textToHighlight);\r\n\t\t\t\r\n\t\t\t// check if it can only reparse the changed text\r\n\t\t\ttrace_new\t\t= t.get_syntax_trace(changes.newTextLine).replace(/\\r/g, '');\r\n\t\t\ttrace_last\t\t= t.get_syntax_trace(changes.lastTextLine).replace(/\\r/g, '');\r\n\t\t\tdoSyntaxOpti\t= ( trace_new == trace_last );\r\n\t\t\t\r\n\t\t\t// check if the difference comes only from a new line created \r\n\t\t\t// => we have to remember that the editor can automaticaly add tabulation or space after the new line) \r\n\t\t\tif( !doSyntaxOpti && trace_new == \"\\n\"+trace_last && /^[ \\t\\s]*\\n[ \\t\\s]*$/.test( changes.newText.replace(/\\r/g, '') ) && changes.lastText ==\"\" )\r\n\t\t\t{\r\n\t\t\t\tdoSyntaxOpti\t= true;\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t// we do the syntax optimisation\r\n\t\t\tif( doSyntaxOpti ){\r\n\t\t\t\t\t\t\r\n\t\t\t\ttps_middle_opti=new Date().getTime();\t\r\n\t\t\t\r\n\t\t\t\tstay_begin= t.last_hightlighted_text.split(\"\\n\").slice(0, changes.lineStart).join(\"\\n\");\r\n\t\t\t\tif(changes.lineStart>0)\r\n\t\t\t\t\tstay_begin+= \"\\n\";\r\n\t\t\t\tstay_end= t.last_hightlighted_text.split(\"\\n\").slice(changes.lineLastEnd+1).join(\"\\n\");\r\n\t\t\t\tif(stay_end.length>0)\r\n\t\t\t\t\tstay_end= \"\\n\"+stay_end;\r\n\t\t\t\t\t\r\n\t\t\t\t// Final check to see that we're not in the middle of span tags\r\n\t\t\t\tif( stay_begin.split('<span').length != stay_begin.split('</span').length \r\n\t\t\t\t\t|| stay_end.split('<span').length != stay_end.split('</span').length )\r\n\t\t\t\t{\r\n\t\t\t\t\tdoSyntaxOpti\t= false;\r\n\t\t\t\t\tstay_end\t\t= '';\r\n\t\t\t\t\tstay_begin\t\t= '';\r\n\t\t\t\t}\r\n\t\t\t\telse\r\n\t\t\t\t{\r\n\t\t\t\t\tif(stay_begin.length==0 && changes.posLastEnd==-1)\r\n\t\t\t\t\t\tchanges.newTextLine+=\"\\n\";\r\n\t\t\t\t\ttextToHighlight=changes.newTextLine;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif(t.settings[\"debug\"]){\r\n\t\t\t\tvar ch =changes;\r\n\t\t\t\tdebug_opti= ( doSyntaxOpti?\"Optimisation\": \"No optimisation\" )\r\n\t\t\t\t\t+\" start: \"+ch.posStart +\"(\"+ch.lineStart+\")\"\r\n\t\t\t\t\t+\" end_new: \"+ ch.posNewEnd+\"(\"+ch.lineNewEnd+\")\"\r\n\t\t\t\t\t+\" end_last: \"+ ch.posLastEnd+\"(\"+ch.lineLastEnd+\")\"\r\n\t\t\t\t\t+\"\\nchanged_text: \"+ch.newText+\" => trace: \"+trace_new\r\n\t\t\t\t\t+\"\\nchanged_last_text: \"+ch.lastText+\" => trace: \"+trace_last\r\n\t\t\t\t\t//debug_opti+= \"\\nchanged: \"+ infos[\"full_text\"].substring(ch.posStart, ch.posNewEnd);\r\n\t\t\t\t\t+ \"\\nchanged_line: \"+ch.newTextLine\r\n\t\t\t\t\t+ \"\\nlast_changed_line: \"+ch.lastTextLine\r\n\t\t\t\t\t+\"\\nstay_begin: \"+ stay_begin.slice(-100)\r\n\t\t\t\t\t+\"\\nstay_end: \"+ stay_end.substr( 0, 100 );\r\n\t\t\t\t\t//debug_opti=\"start: \"+stay_begin_len+ \"(\"+nb_line_start_unchanged+\") end: \"+ (stay_end_len)+ \"(\"+(splited.length-nb_line_end_unchanged)+\") \";\r\n\t\t\t\t\t//debug_opti+=\"changed: \"+ textToHighlight.substring(stay_begin_len, textToHighlight.length-stay_end_len)+\" \\n\";\r\n\t\t\t\t\t\r\n\t\t\t\t\t//debug_opti+=\"changed: \"+ stay_begin.substr(stay_begin.length-200)+ \"----------\"+ textToHighlight+\"------------------\"+ stay_end.substr(0,200) +\"\\n\";\r\n\t\t\t\t\t+\"\\n\";\r\n\t\t\t}\r\n\t\r\n\t\t\t\r\n\t\t\t// END OPTIMISATION\r\n\t\t}\r\n\r\n\t\ttps_end_opti\t= new Date().getTime();\t\r\n\t\t\t\t\r\n\t\t// apply highlight\r\n\t\tupdated_highlight\t= t.colorize_text(textToHighlight);\r\n\t\ttpsAfterReg\t\t\t= new Date().getTime();\r\n\t\t\r\n\t\t/***\r\n\t\t * see if we can optimize for updating only the required part of the HTML code\r\n\t\t * \r\n\t\t * The goal here will be to find the text node concerned by the modification and to update it\r\n\t\t */\r\n\t\t//-------------------------------------------\r\n\t\t\r\n\t\t// disable latest optimization tricks (introduced in 0.8.1 and removed in 0.8.2), TODO: check for another try later\r\n\t\tdoSyntaxOpti\t= doHtmlOpti = false;\r\n\t\tif( doSyntaxOpti )\r\n\t\t{\r\n\t\t\ttry\r\n\t\t\t{\r\n\t\t\t\tvar replacedBloc, i, nbStart = '', nbEnd = '', newHtml, lengthOld, lengthNew;\r\n\t\t\t\treplacedBloc\t\t= t.last_hightlighted_text.substring( stay_begin.length, t.last_hightlighted_text.length - stay_end.length );\r\n\t\t\t\t\r\n\t\t\t\tlengthOld\t= replacedBloc.length;\r\n\t\t\t\tlengthNew\t= updated_highlight.length;\r\n\t\t\t\t\r\n\t\t\t\t// find the identical caracters at the beginning\r\n\t\t\t\tfor( i=0; i < lengthOld && i < lengthNew && replacedBloc.charAt(i) == updated_highlight.charAt(i) ; i++ )\r\n\t\t\t\t{\r\n\t\t\t\t}\r\n\t\t\t\tnbStart = i;\r\n\t\t\t\t// find the identical caracters at the end\r\n\t\t\t\tfor( i=0; i + nbStart < lengthOld && i + nbStart < lengthNew && replacedBloc.charAt(lengthOld-i-1) == updated_highlight.charAt(lengthNew-i-1) ; i++ )\r\n\t\t\t\t{\r\n\t\t\t\t}\r\n\t\t\t\tnbEnd\t= i;\r\n\t\t\t\t//console.log( nbStart, nbEnd, replacedBloc, updated_highlight );\r\n\t\t\t\t// get the changes\r\n\t\t\t\tlastHtml\t= replacedBloc.substring( nbStart, lengthOld - nbEnd );\r\n\t\t\t\tnewHtml\t\t= updated_highlight.substring( nbStart, lengthNew - nbEnd );\r\n\t\t\t\t\r\n\t\t\t\t// We can do the optimisation only if we havn't touch to span elements\r\n\t\t\t\tif( newHtml.indexOf('<span') == -1 && newHtml.indexOf('</span') == -1 \r\n\t\t\t\t\t&& lastHtml.indexOf('<span') == -1 && lastHtml.indexOf('</span') == -1 )\r\n\t\t\t\t{\r\n\t\t\t\t\tvar beginStr, nbOpendedSpan, nbClosedSpan, nbUnchangedChars, span, textNode;\r\n\t\t\t\t\tdoHtmlOpti\t\t= true;\r\n\t\t\t\t\tbeginStr\t\t= t.last_hightlighted_text.substr( 0, stay_begin.length + nbStart );\r\n\t\t\t\t\t// fix special chars\r\n\t\t\t\t\tnewHtml\t\t\t= newHtml.replace( /&lt;/g, '<').replace( /&gt;/g, '>').replace( /&amp;/g, '&');\r\n\t\t\r\n\t\t\t\t\tnbOpendedSpan\t= beginStr.split('<span').length - 1;\r\n\t\t\t\t\tnbClosedSpan\t= beginStr.split('</span').length - 1;\r\n\t\t\t\t\t// retrieve the previously opened span (Add 1 for the first level span?)\r\n\t\t\t\t\tspan \t\t\t= t.content_highlight.getElementsByTagName('span')[ nbOpendedSpan ];\r\n\t\t\t\t\t\r\n\t\t\t\t\t//--------[\r\n\t\t\t\t\t// get the textNode to update\r\n\t\t\t\t\t\r\n\t\t\t\t\t// if we're inside a span, we'll take the one that is opened (can be a parent of the current span)\r\n\t\t\t\t\tparentSpan\t\t= span;\r\n\t\t\t\t\tmaxStartOffset\t= maxEndOffset = 0;\r\n\t\t\t\t\t\r\n\t\t\t\t\t// it will be in the child of the root node \r\n\t\t\t\t\tif( nbOpendedSpan == nbClosedSpan )\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\twhile( parentSpan.parentNode != t.content_highlight && parentSpan.parentNode.tagName != 'PRE' )\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tparentSpan\t= parentSpan.parentNode;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// get the last opened span\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tmaxStartOffset\t= maxEndOffset = beginStr.length + 1;\r\n\t\t\t\t\t\t// move to parent node for each closed span found after the lastest open span\r\n\t\t\t\t\t\tnbClosed = beginStr.substr( Math.max( 0, beginStr.lastIndexOf( '<span', maxStartOffset - 1 ) ) ).split('</span').length - 1;\r\n\t\t\t\t\t\twhile( nbClosed > 0 )\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tnbClosed--;\r\n\t\t\t\t\t\t\tparentSpan = parentSpan.parentNode;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t// find the position of the last opended tag\r\n\t\t\t\t\t\twhile( parentSpan.parentNode != t.content_highlight && parentSpan.parentNode.tagName != 'PRE' && ( tmpMaxStartOffset = Math.max( 0, beginStr.lastIndexOf( '<span', maxStartOffset - 1 ) ) ) < ( tmpMaxEndOffset = Math.max( 0, beginStr.lastIndexOf( '</span', maxEndOffset - 1 ) ) ) )\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tmaxStartOffset\t= tmpMaxStartOffset;\r\n\t\t\t\t\t\t\tmaxEndOffset\t= tmpMaxEndOffset;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// Note: maxEndOffset is no more used but maxStartOffset will be used\r\n\t\t\t\t\t\r\n\t\t\t\t\tif( parentSpan.parentNode == t.content_highlight || parentSpan.parentNode.tagName == 'PRE' )\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tmaxStartOffset\t= Math.max( 0, beginStr.indexOf( '<span' ) );\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\r\n\t\t\t\t\t// find the matching text node (this will be one that will be at the end of the beginStr\r\n\t\t\t\t\tif( maxStartOffset == beginStr.length )\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tnbSubSpanBefore\t= 0;\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tlastEndPos \t\t\t\t= Math.max( 0, beginStr.lastIndexOf( '>', maxStartOffset ) );\r\n\t\t\r\n\t\t\t\t\t\t// count the number of sub spans\r\n\t\t\t\t\t\tnbSubSpanBefore\t\t\t= beginStr.substr( lastEndPos ).split('<span').length-1;\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\r\n\t\t\t\t\t// there is no sub-span before\r\n\t\t\t\t\tif( nbSubSpanBefore == 0 )\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttextNode\t= parentSpan.firstChild;\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// we need to find where is the text node modified\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t// take the last direct child (no sub-child)\r\n\t\t\t\t\t\tlastSubSpan\t= parentSpan.getElementsByTagName('span')[ nbSubSpanBefore - 1 ];\r\n\t\t\t\t\t\twhile( lastSubSpan.parentNode != parentSpan )\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tlastSubSpan\t= lastSubSpan.parentNode;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// associate to next text node following the last sub span\r\n\t\t\t\t\t\tif( lastSubSpan.nextSibling == null || lastSubSpan.nextSibling.nodeType != 3 )\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\ttextNode\t= document.createTextNode('');\r\n\t\t\t\t\t\t\tlastSubSpan.parentNode.insertBefore( textNode, lastSubSpan.nextSibling );\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\telse\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\ttextNode\t= lastSubSpan.nextSibling;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\t//--------]\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t//--------[\r\n\t\t\t\t\t// update the textNode content\r\n\t\t\t\t\t\r\n\t\t\t\t\t// number of caracters after the last opened of closed span\r\n\t\t\t\t\t//nbUnchangedChars = ( lastIndex = beginStr.lastIndexOf( '>' ) ) == -1 ? beginStr.length : beginStr.length - ( lastIndex + 1 );\r\n\t\t\t\t\t//nbUnchangedChars =  ? beginStr.length : beginStr.substr( lastIndex + 1 ).replace( /&lt;/g, '<').replace( /&gt;/g, '>').replace( /&amp;/g, '&').length;\r\n\t\t\t\t\t\r\n\t\t\t\t\tif( ( lastIndex = beginStr.lastIndexOf( '>' ) ) == -1 )\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tnbUnchangedChars\t= beginStr.length;\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tnbUnchangedChars\t= beginStr.substr( lastIndex + 1 ).replace( /&lt;/g, '<').replace( /&gt;/g, '>').replace( /&amp;/g, '&').length; \t\r\n\t\t\t\t\t\t//nbUnchangedChars\t+= beginStr.substr( ).replace( /&/g, '&amp;').replace( /</g, '&lt;').replace( />/g, '&gt;').length - beginStr.length;\r\n\t\t\t\t\t}\r\n\t\t\t\t\t//alert( nbUnchangedChars );\r\n\t\t\t\t\t//\tconsole.log( span, textNode, nbOpendedSpan,nbClosedSpan,  span.nextSibling, textNode.length, nbUnchangedChars, lastHtml, lastHtml.length, newHtml, newHtml.length );\r\n\t\t\t\t\t//\talert( textNode.parentNode.className +'-'+ textNode.parentNode.tagName+\"\\n\"+ textNode.data +\"\\n\"+ nbUnchangedChars +\"\\n\"+ lastHtml.length +\"\\n\"+ newHtml +\"\\n\"+ newHtml.length  );\r\n\t\t\t\t//\tconsole.log( nbUnchangedChars, lastIndex, beginStr.length, beginStr.replace(/&/g, '&amp;'), lastHtml.length, '|', newHtml.replace( /\\t/g, 't').replace( /\\n/g, 'n').replace( /\\r/g, 'r'), lastHtml.replace( /\\t/g, 't').replace( /\\n/g, 'n').replace( /\\r/, 'r') );\r\n\t\t\t\t//\tconsole.log( textNode.data.replace(/&/g, '&amp;') );\r\n\t\t\t\t\t// IE only manage \\r for cariage return in textNode and not \\n or \\r\\n\r\n\t\t\t\t\tif( t.isIE )\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tnbUnchangedChars\t-= ( beginStr.substr( beginStr.length - nbUnchangedChars ).split(\"\\n\").length - 1 );\r\n\t\t\t\t\t\t//alert( textNode.data.replace(/\\r/g, '_r').replace(/\\n/g, '_n')); \r\n\t\t\t\t\t\ttextNode.replaceData( nbUnchangedChars, lastHtml.replace(/\\n/g, '').length, newHtml.replace(/\\n/g, '') );\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttextNode.replaceData( nbUnchangedChars, lastHtml.length, newHtml );\r\n\t\t\t\t\t}\r\n\t\t\t\t\t//--------]\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\t// an exception shouldn't have occurred, but if replaceData failed at least it won't break everything\r\n\t\t\tcatch( e )\r\n\t\t\t{\r\n\t\t//\t\tthrow e;\r\n\t\t\t//\tconsole.log( e );\r\n\t\t\t\tdoHtmlOpti\t= false;\r\n\t\t\t}\r\n\t\t\t\r\n\t\t}\r\n\t\r\n\t\t/*** END HTML update's optimisation ***/\r\n\t\t// end test\r\n\t\t\r\n\t//\t\t\tconsole.log(  (TPS6-TPS5), (TPS5-TPS4), (TPS4-TPS3), (TPS3-TPS2), (TPS2-TPS1), _CPT );\r\n\t\t// get the new highlight content\r\n\t\ttpsAfterOpti2\t\t= new Date().getTime();\r\n\t\thightlighted_text\t= stay_begin + updated_highlight + stay_end;\r\n\t\tif( !doHtmlOpti )\r\n\t\t{\r\n\t\t\t// update the content of the highlight div by first updating a clone node (as there is no display in the same time for t node it's quite faster (5*))\r\n\t\t\tvar new_Obj= t.content_highlight.cloneNode(false);\r\n\t\t\tif( ( t.isIE && t.isIE < 8 ) || ( t.isOpera && t.isOpera < 9.6 ) )\r\n\t\t\t\tnew_Obj.innerHTML= \"<pre><span class='\"+ t.settings[\"syntax\"] +\"'>\" + hightlighted_text + \"</span></pre>\";\t\r\n\t\t\telse\r\n\t\t\t\tnew_Obj.innerHTML= \"<span class='\"+ t.settings[\"syntax\"] +\"'>\"+ hightlighted_text +\"</span>\";\r\n\t\r\n\t\t\tt.content_highlight.parentNode.replaceChild(new_Obj, t.content_highlight);\r\n\t\t\r\n\t\t\tt.content_highlight= new_Obj;\r\n\t\t}\r\n\t\t\r\n\t\tt.last_text_to_highlight= infos[\"full_text\"];\r\n\t\tt.last_hightlighted_text= hightlighted_text;\r\n\t\t\r\n\t\ttps3=new Date().getTime();\r\n\t\r\n\t\tif(t.settings[\"debug\"]){\r\n\t\t\t//lineNumber=tab_text.length;\r\n\t\t\t//t.debug.value+=\" \\nNB char: \"+_$(\"src\").value.length+\" Nb line: \"+ lineNumber;\r\n\t\t\r\n\t\t\tt.debug.value= \"Tps optimisation \"+(tps_end_opti-tps_start)\r\n\t\t\t\t+\" | tps reg exp: \"+ (tpsAfterReg-tps_end_opti)\r\n\t\t\t\t+\" | tps opti HTML : \"+ (tpsAfterOpti2-tpsAfterReg) + ' '+ ( doHtmlOpti ? 'yes' : 'no' )\r\n\t\t\t\t+\" | tps update highlight content: \"+ (tps3-tpsAfterOpti2)\r\n\t\t\t\t+\" | tpsTotal: \"+ (tps3-tps_start)\r\n\t\t\t\t+ \"(\"+tps3+\")\\n\"+ debug_opti;\r\n\t\t//\tt.debug.value+= \"highlight\\n\"+hightlighted_text;*/\r\n\t\t}\r\n\t\t\r\n\t};\r\n\t\r\n\tEditArea.prototype.resync_highlight= function(reload_now){\r\n\t\tthis.reload_highlight=true;\r\n\t\tthis.last_text_to_highlight=\"\";\r\n\t\tthis.focus();\t\t\r\n\t\tif(reload_now)\r\n\t\t\tthis.check_line_selection(false); \r\n\t};\t\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/keyboard.js",
    "content": "var EA_keys = {8:\"Retour arriere\",9:\"Tabulation\",12:\"Milieu (pave numerique)\",13:\"Entrer\",16:\"Shift\",17:\"Ctrl\",18:\"Alt\",19:\"Pause\",20:\"Verr Maj\",27:\"Esc\",32:\"Space\",33:\"Page up\",34:\"Page down\",35:\"End\",36:\"Begin\",37:\"Left\",38:\"Up\",39:\"Right\",40:\"Down\",44:\"Impr ecran\",45:\"Inser\",46:\"Suppr\",91:\"Menu Demarrer Windows / touche pomme Mac\",92:\"Menu Demarrer Windows\",93:\"Menu contextuel Windows\",112:\"F1\",113:\"F2\",114:\"F3\",115:\"F4\",116:\"F5\",117:\"F6\",118:\"F7\",119:\"F8\",120:\"F9\",121:\"F10\",122:\"F11\",123:\"F12\",144:\"Verr Num\",145:\"Arret defil\"};\r\n\r\n\r\n\r\nfunction keyDown(e){\r\n\tif(!e){\t// if IE\r\n\t\te=event;\r\n\t}\r\n\t\r\n\t// send the event to the plugins\r\n\tfor(var i in editArea.plugins){\r\n\t\tif(typeof(editArea.plugins[i].onkeydown)==\"function\"){\r\n\t\t\tif(editArea.plugins[i].onkeydown(e)===false){ // stop propaging\r\n\t\t\t\tif(editArea.isIE)\r\n\t\t\t\t\te.keyCode=0;\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tvar target_id=(e.target || e.srcElement).id;\r\n\tvar use=false;\r\n\tif (EA_keys[e.keyCode])\r\n\t\tletter=EA_keys[e.keyCode];\r\n\telse\r\n\t\tletter=String.fromCharCode(e.keyCode);\r\n\t\r\n\tvar low_letter= letter.toLowerCase();\r\n\t\t\t\r\n\tif(letter==\"Page up\" && !AltPressed(e) && !editArea.isOpera){\r\n\t\teditArea.execCommand(\"scroll_page\", {\"dir\": \"up\", \"shift\": ShiftPressed(e)});\r\n\t\tuse=true;\r\n\t}else if(letter==\"Page down\" && !AltPressed(e) && !editArea.isOpera){\r\n\t\teditArea.execCommand(\"scroll_page\", {\"dir\": \"down\", \"shift\": ShiftPressed(e)});\r\n\t\tuse=true;\r\n\t}else if(editArea.is_editable==false){\r\n\t\t// do nothing but also do nothing else (allow to navigate with page up and page down)\r\n\t\treturn true;\r\n\t}else if(letter==\"Tabulation\" && target_id==\"textarea\" && !CtrlPressed(e) && !AltPressed(e)){\t\r\n\t\tif(ShiftPressed(e))\r\n\t\t\teditArea.execCommand(\"invert_tab_selection\");\r\n\t\telse\r\n\t\t\teditArea.execCommand(\"tab_selection\");\r\n\t\t\r\n\t\tuse=true;\r\n\t\tif(editArea.isOpera || (editArea.isFirefox && editArea.isMac) )\t// opera && firefox mac can't cancel tabulation events...\r\n\t\t\tsetTimeout(\"editArea.execCommand('focus');\", 1);\r\n\t}else if(letter==\"Entrer\" && target_id==\"textarea\"){\r\n\t\tif(editArea.press_enter())\r\n\t\t\tuse=true;\r\n\t}else if(letter==\"Entrer\" && target_id==\"area_search\"){\r\n\t\teditArea.execCommand(\"area_search\");\r\n\t\tuse=true;\r\n\t}else  if(letter==\"Esc\"){\r\n\t\teditArea.execCommand(\"close_all_inline_popup\", e);\r\n\t\tuse=true;\r\n\t}else if(CtrlPressed(e) && !AltPressed(e) && !ShiftPressed(e)){\r\n\t\tswitch(low_letter){\r\n\t\t\tcase \"f\":\t\t\t\t\r\n\t\t\t\teditArea.execCommand(\"area_search\");\r\n\t\t\t\tuse=true;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"r\":\r\n\t\t\t\teditArea.execCommand(\"area_replace\");\r\n\t\t\t\tuse=true;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"q\":\r\n\t\t\t\teditArea.execCommand(\"close_all_inline_popup\", e);\r\n\t\t\t\tuse=true;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"h\":\r\n\t\t\t\teditArea.execCommand(\"change_highlight\");\t\t\t\r\n\t\t\t\tuse=true;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"g\":\r\n\t\t\t\tsetTimeout(\"editArea.execCommand('go_to_line');\", 5);\t// the prompt stop the return false otherwise\r\n\t\t\t\tuse=true;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"e\":\r\n\t\t\t\teditArea.execCommand(\"show_help\");\r\n\t\t\t\tuse=true;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"z\":\r\n\t\t\t\tuse=true;\r\n\t\t\t\teditArea.execCommand(\"undo\");\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"y\":\r\n\t\t\t\tuse=true;\r\n\t\t\t\teditArea.execCommand(\"redo\");\r\n\t\t\t\tbreak;\r\n\t\t\tdefault:\r\n\t\t\t\tbreak;\t\t\t\r\n\t\t}\t\t\r\n\t}\t\t\r\n\t\r\n\t// check to disable the redo possibility if the textarea content change\r\n\tif(editArea.next.length > 0){\r\n\t\tsetTimeout(\"editArea.check_redo();\", 10);\r\n\t}\r\n\t\r\n\tsetTimeout(\"editArea.check_file_changes();\", 10);\r\n\t\r\n\t\r\n\tif(use){\r\n\t\t// in case of a control that sould'nt be used by IE but that is used => THROW a javascript error that will stop key action\r\n\t\tif(editArea.isIE)\r\n\t\t\te.keyCode=0;\r\n\t\treturn false;\r\n\t}\r\n\t//alert(\"Test: \"+ letter + \" (\"+e.keyCode+\") ALT: \"+ AltPressed(e) + \" CTRL \"+ CtrlPressed(e) + \" SHIFT \"+ ShiftPressed(e));\r\n\t\r\n\treturn true;\r\n\t\r\n};\r\n\r\n\r\n// return true if Alt key is pressed\r\nfunction AltPressed(e) {\r\n\tif (window.event) {\r\n\t\treturn (window.event.altKey);\r\n\t} else {\r\n\t\tif(e.modifiers)\r\n\t\t\treturn (e.altKey || (e.modifiers % 2));\r\n\t\telse\r\n\t\t\treturn e.altKey;\r\n\t}\r\n};\r\n\r\n// return true if Ctrl key is pressed\r\nfunction CtrlPressed(e) {\r\n\tif (window.event) {\r\n\t\treturn (window.event.ctrlKey);\r\n\t} else {\r\n\t\treturn (e.ctrlKey || (e.modifiers==2) || (e.modifiers==3) || (e.modifiers>5));\r\n\t}\r\n};\r\n\r\n// return true if Shift key is pressed\r\nfunction ShiftPressed(e) {\r\n\tif (window.event) {\r\n\t\treturn (window.event.shiftKey);\r\n\t} else {\r\n\t\treturn (e.shiftKey || (e.modifiers>3));\r\n\t}\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/langs/bg.js",
    "content": "/*\r\n *\tBulgarian translation\r\n *\tAuthor:\t\tValentin Hristov\r\n *\tCompany:\tSOFTKIT Bulgarian\r\n *\tSite:\t\thttp://www.softkit-bg.com\r\n */\r\neditAreaLoader.lang[\"bg\"]={\r\nnew_document: \"нов документ\",\r\nsearch_button: \"търсене и замяна\",\r\nsearch_command: \"търси следващия / отвори прозорец с търсачка\",\r\nsearch: \"търсене\",\r\nreplace: \"замяна\",\r\nreplace_command: \"замяна / отвори прозорец с търсачка\",\r\nfind_next: \"намери следващия\",\r\nreplace_all: \"замени всички\",\r\nreg_exp: \"реголярни изрази\",\r\nmatch_case: \"чуствителен към регистъра\",\r\nnot_found: \"няма резултат.\",\r\noccurrence_replaced: \"замяната е осъществена.\",\r\nsearch_field_empty: \"Полето за търсене е празно\",\r\nrestart_search_at_begin: \"До края на документа. Почни с началото.\",\r\nmove_popup: \"премести прозореца с търсачката\",\r\nfont_size: \"--Размер на шрифта--\",\r\ngo_to_line: \"премени към реда\",\r\ngo_to_line_prompt: \"премени към номера на реда:\",\r\nundo: \"отмени\",\r\nredo: \"върни\",\r\nchange_smooth_selection: \"включи/изключи някой от функциите за преглед (по красиво, но повече натоварва)\",\r\nhighlight: \"превключване на оцветяване на синтаксиса включена/изключена\",\r\nreset_highlight: \"въстанови оцветяване на синтаксиса (ако не е синхронизиран с текста)\",\r\nword_wrap: \"режим на пренасяне на дълги редове\",\r\nhelp: \"за програмата\",\r\nsave: \"съхрани\",\r\nload: \"зареди\",\r\nline_abbr: \"Стр\",\r\nchar_abbr: \"Стлб\",\r\nposition: \"Позиция\",\r\ntotal: \"Всичко\",\r\nclose_popup: \"затвори прозореца\",\r\nshortcuts: \"Бързи клавиши\",\r\nadd_tab: \"добави табулация в текста\",\r\nremove_tab: \"премахни табулацията в текста\",\r\nabout_notice: \"Внимание: използвайте функцията оцветяване на синтаксиса само за малки текстове\",\r\ntoggle: \"Превключи редактор\",\r\naccesskey: \"Бърз клавиш\",\r\ntab: \"Tab\",\r\nshift: \"Shift\",\r\nctrl: \"Ctrl\",\r\nesc: \"Esc\",\r\nprocessing: \"Зареждане...\",\r\nfullscreen: \"на цял екран\",\r\nsyntax_selection: \"--Синтаксис--\",\r\nclose_tab: \"Затвори файла\"\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/langs/cs.js",
    "content": "editAreaLoader.lang[\"cs\"]={\r\nnew_document: \"Nový dokument\",\r\nsearch_button: \"Najdi a nahraď\",\r\nsearch_command: \"Hledej další / otevři vyhledávací pole\",\r\nsearch: \"Hledej\",\r\nreplace: \"Nahraď\",\r\nreplace_command: \"Nahraď / otevři vyhledávací pole\",\r\nfind_next: \"Najdi další\",\r\nreplace_all: \"Nahraď vše\",\r\nreg_exp: \"platné výrazy\",\r\nmatch_case: \"vyhodnocené výrazy\",\r\nnot_found: \"nenalezené.\",\r\noccurrence_replaced: \"výskyty nahrazené.\",\r\nsearch_field_empty: \"Pole vyhledávání je prázdné\",\r\nrestart_search_at_begin: \"Dosažen konec souboru, začínám od začátku.\",\r\nmove_popup: \"Přesuň vyhledávací okno\",\r\nfont_size: \"--Velikost textu--\",\r\ngo_to_line: \"Přejdi na řádek\",\r\ngo_to_line_prompt: \"Přejdi na řádek:\",\r\nundo: \"krok zpět\",\r\nredo: \"znovu\",\r\nchange_smooth_selection: \"Povolit nebo zakázat některé ze zobrazených funkcí (účelnější zobrazení požaduje větší zatížení procesoru)\",\r\nhighlight: \"Zvýrazňování syntaxe zap./vyp.\",\r\nreset_highlight: \"Obnovit zvýraznění (v případě nesrovnalostí)\",\r\nword_wrap: \"toggle word wrapping mode\",\r\nhelp: \"O programu\",\r\nsave: \"Uložit\",\r\nload: \"Otevřít\",\r\nline_abbr: \"Ř.\",\r\nchar_abbr: \"S.\",\r\nposition: \"Pozice\",\r\ntotal: \"Celkem\",\r\nclose_popup: \"Zavřít okno\",\r\nshortcuts: \"Zkratky\",\r\nadd_tab: \"Přidat tabulování textu\",\r\nremove_tab: \"Odtsranit tabulování textu\",\r\nabout_notice: \"Upozornění! Funkce zvýrazňování textu je k dispozici pouze pro malý text\",\r\ntoggle: \"Přepnout editor\",\r\naccesskey: \"Přístupová klávesa\",\r\ntab: \"Záložka\",\r\nshift: \"Shift\",\r\nctrl: \"Ctrl\",\r\nesc: \"Esc\",\r\nprocessing: \"Zpracovávám ...\",\r\nfullscreen: \"Celá obrazovka\",\r\nsyntax_selection: \"--vyber zvýrazňovač--\",\r\nclose_tab: \"Close file\"\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/langs/de.js",
    "content": "editAreaLoader.lang[\"de\"]={\r\nnew_document: \"Neues Dokument\",\r\nsearch_button: \"Suchen und Ersetzen\",\r\nsearch_command: \"Weitersuchen / &ouml;ffne Suchfeld\",\r\nsearch: \"Suchen\",\r\nreplace: \"Ersetzen\",\r\nreplace_command: \"Ersetzen / &ouml;ffne Suchfeld\",\r\nfind_next: \"Weitersuchen\",\r\nreplace_all: \"Ersetze alle Treffer\",\r\nreg_exp: \"regul&auml;re Ausdr&uuml;cke\",\r\nmatch_case: \"passt auf den Begriff<br />\",\r\nnot_found: \"Nicht gefunden.\",\r\noccurrence_replaced: \"Die Vorkommen wurden ersetzt.\",\r\nsearch_field_empty: \"Leeres Suchfeld\",\r\nrestart_search_at_begin: \"Ende des zu durchsuchenden Bereiches erreicht. Es wird die Suche von Anfang an fortgesetzt.\", //find a shorter translation\r\nmove_popup: \"Suchfenster bewegen\",\r\nfont_size: \"--Schriftgr&ouml;&szlig;e--\",\r\ngo_to_line: \"Gehe zu Zeile\",\r\ngo_to_line_prompt: \"Gehe zu Zeilennummmer:\",\r\nundo: \"R&uuml;ckg&auml;ngig\",\r\nredo: \"Wiederherstellen\",\r\nchange_smooth_selection: \"Aktiviere/Deaktiviere einige Features (weniger Bildschirmnutzung aber mehr CPU-Belastung)\",\r\nhighlight: \"Syntax Highlighting an- und ausschalten\",\r\nreset_highlight: \"Highlighting zur&uuml;cksetzen (falls mit Text nicht konform)\",\r\nword_wrap: \"Toggle word wrapping mode\",\r\nhelp: \"Info\",\r\nsave: \"Speichern\",\r\nload: \"&Ouml;ffnen\",\r\nline_abbr: \"Ln\",\r\nchar_abbr: \"Ch\",\r\nposition: \"Position\",\r\ntotal: \"Gesamt\",\r\nclose_popup: \"Popup schlie&szlig;en\",\r\nshortcuts: \"Shortcuts\",\r\nadd_tab: \"Tab zum Text hinzuf&uuml;gen\",\r\nremove_tab: \"Tab aus Text entfernen\",\r\nabout_notice: \"Bemerkung: Syntax Highlighting ist nur f&uuml;r kurze Texte\",\r\ntoggle: \"Editor an- und ausschalten\",\r\naccesskey: \"Accesskey\",\r\ntab: \"Tab\",\r\nshift: \"Shift\",\r\nctrl: \"Ctrl\",\r\nesc: \"Esc\",\r\nprocessing: \"In Bearbeitung...\",\r\nfullscreen: \"Full-Screen\",\r\nsyntax_selection: \"--Syntax--\",\r\nclose_tab: \"Close file\"\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/langs/dk.js",
    "content": "editAreaLoader.lang[\"dk\"]={\r\nnew_document: \"nyt tomt dokument\",\r\nsearch_button: \"s&oslash;g og erstat\",\r\nsearch_command: \"find n&aelig;ste / &aring;ben s&oslash;gefelt\",\r\nsearch: \"s&oslash;g\",\r\nreplace: \"erstat\",\r\nreplace_command: \"erstat / &aring;ben s&oslash;gefelt\",\r\nfind_next: \"find n&aelig;ste\",\r\nreplace_all: \"erstat alle\",\r\nreg_exp: \"regular expressions\",\r\nmatch_case: \"forskel på store/sm&aring; bogstaver<br />\",\r\nnot_found: \"not found.\",\r\noccurrence_replaced: \"occurences replaced.\",\r\nsearch_field_empty: \"Search field empty\",\r\nrestart_search_at_begin: \"End of area reached. Restart at begin.\",\r\nmove_popup: \"flyt søgepopup\",\r\nfont_size: \"--Skriftstørrelse--\",\r\ngo_to_line: \"g&aring; til linie\",\r\ngo_to_line_prompt: \"gå til linienummer:\",\r\nundo: \"fortryd\",\r\nredo: \"gentag\",\r\nchange_smooth_selection: \"sl&aring; display funktioner til/fra (smartere display men mere CPU kr&aelig;vende)\",\r\nhighlight: \"sl&aring; syntax highlight til/fra\",\r\nreset_highlight: \"nulstil highlight (hvis den er desynkroniseret fra teksten)\",\r\nword_wrap: \"toggle word wrapping mode\",\r\nhelp: \"om\",\r\nsave: \"gem\",\r\nload: \"hent\",\r\nline_abbr: \"Ln\",\r\nchar_abbr: \"Ch\",\r\nposition: \"Position\",\r\ntotal: \"Total\",\r\nclose_popup: \"luk popup\",\r\nshortcuts: \"Genveje\",\r\nadd_tab: \"tilf&oslash;j tabulation til tekst\",\r\nremove_tab: \"fjern tabulation fra tekst\",\r\nabout_notice: \"Husk: syntax highlight funktionen b&oslash;r kun bruge til sm&aring; tekster\",\r\ntoggle: \"Sl&aring; editor til / fra\",\r\naccesskey: \"Accesskey\",\r\ntab: \"Tab\",\r\nshift: \"Skift\",\r\nctrl: \"Ctrl\",\r\nesc: \"Esc\",\r\nprocessing: \"Processing...\",\r\nfullscreen: \"fullscreen\",\r\nsyntax_selection: \"--Syntax--\",\r\nclose_tab: \"Close file\"\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/langs/en.js",
    "content": "editAreaLoader.lang[\"en\"]={\r\nnew_document: \"new empty document\",\r\nsearch_button: \"search and replace\",\r\nsearch_command: \"search next / open search area\",\r\nsearch: \"search\",\r\nreplace: \"replace\",\r\nreplace_command: \"replace / open search area\",\r\nfind_next: \"find next\",\r\nreplace_all: \"replace all\",\r\nreg_exp: \"regular expressions\",\r\nmatch_case: \"match case\",\r\nnot_found: \"not found.\",\r\noccurrence_replaced: \"occurences replaced.\",\r\nsearch_field_empty: \"Search field empty\",\r\nrestart_search_at_begin: \"End of area reached. Restart at begin.\",\r\nmove_popup: \"move search popup\",\r\nfont_size: \"--Font size--\",\r\ngo_to_line: \"go to line\",\r\ngo_to_line_prompt: \"go to line number:\",\r\nundo: \"undo\",\r\nredo: \"redo\",\r\nchange_smooth_selection: \"enable/disable some display features (smarter display but more CPU charge)\",\r\nhighlight: \"toggle syntax highlight on/off\",\r\nreset_highlight: \"reset highlight (if desyncronized from text)\",\r\nword_wrap: \"toggle word wrapping mode\",\r\nhelp: \"about\",\r\nsave: \"save\",\r\nload: \"load\",\r\nline_abbr: \"Ln\",\r\nchar_abbr: \"Ch\",\r\nposition: \"Position\",\r\ntotal: \"Total\",\r\nclose_popup: \"close popup\",\r\nshortcuts: \"Shortcuts\",\r\nadd_tab: \"add tabulation to text\",\r\nremove_tab: \"remove tabulation to text\",\r\nabout_notice: \"Notice: syntax highlight function is only for small text\",\r\ntoggle: \"Toggle editor\",\r\naccesskey: \"Accesskey\",\r\ntab: \"Tab\",\r\nshift: \"Shift\",\r\nctrl: \"Ctrl\",\r\nesc: \"Esc\",\r\nprocessing: \"Processing...\",\r\nfullscreen: \"fullscreen\",\r\nsyntax_selection: \"--Syntax--\",\r\nclose_tab: \"Close file\"\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/langs/eo.js",
    "content": "editAreaLoader.lang[\"eo\"]={\r\nnew_document: \"nova dokumento (vakigas la enhavon)\",\r\nsearch_button: \"ser&#265;i / anstata&#365;igi\",\r\nsearch_command: \"pluser&#265;i / malfermi la ser&#265;o-fenestron\",\r\nsearch: \"ser&#265;i\",\r\nreplace: \"anstata&#365;igi\",\r\nreplace_command: \"anstata&#365;igi / malfermi la ser&#265;o-fenestron\",\r\nfind_next: \"ser&#265;i\",\r\nreplace_all: \"anstata&#365;igi &#265;ion\",\r\nreg_exp: \"regula esprimo\",\r\nmatch_case: \"respekti la usklecon\",\r\nnot_found: \"ne trovita.\",\r\noccurrence_replaced: \"anstata&#365;igoj plenumitaj.\",\r\nsearch_field_empty: \"La kampo estas malplena.\",\r\nrestart_search_at_begin: \"Fino de teksto &#285;isrirata, &#265;u da&#365;rigi el la komenco?\",\r\nmove_popup: \"movi la ser&#265;o-fenestron\",\r\nfont_size: \"--Tipara grando--\",\r\ngo_to_line: \"iri al la linio\",\r\ngo_to_line_prompt: \"iri al la linio numero:\",\r\nundo: \"rezigni\",\r\nredo: \"refari\",\r\nchange_smooth_selection: \"ebligi/malebligi la funkcioj de vidigo (pli bona vidigo, sed pli da &#349;ar&#285;o de la &#265;eforgano)\",\r\nhighlight: \"ebligi/malebligi la sintaksan kolorigon\",\r\nreset_highlight: \"repravalorizi la sintaksan kolorigon (se malsinkronigon de la teksto)\",\r\nword_wrap: \"toggle word wrapping mode\",\r\nhelp: \"pri\",\r\nsave: \"registri\",\r\nload: \"&#349;ar&#285;i\",\r\nline_abbr: \"Ln\",\r\nchar_abbr: \"Sg\",\r\nposition: \"Pozicio\",\r\ntotal: \"Sumo\",\r\nclose_popup: \"fermi la &#349;prucfenestron\",\r\nshortcuts: \"Fulmoklavo\",\r\nadd_tab: \"aldoni tabon en la tekston\",\r\nremove_tab: \"forigi tablon el la teksto\",\r\nabout_notice: \"Noto: la sintaksa kolorigo estas nur prikalkulita por mallongaj tekstoj.\",\r\ntoggle: \"baskuligi la redaktilon\",\r\naccesskey: \"Fulmoklavo\",\r\ntab: \"Tab\",\r\nshift: \"Maj\",\r\nctrl: \"Ktrl\",\r\nesc: \"Esk\",\r\nprocessing: \"&#349;argante...\",\r\nfullscreen: \"plenekrane\",\r\nsyntax_selection: \"--Sintakso--\",\r\nclose_tab: \"Fermi la dosieron\"\r\n};"
  },
  {
    "path": "newscoop/js/editarea/edit_area/langs/es.js",
    "content": "editAreaLoader.lang[\"es\"]={\r\nnew_document: \"nuevo documento vacío\",\r\nsearch_button: \"buscar y reemplazar\",\r\nsearch_command: \"buscar siguiente / abrir área de búsqueda\",\r\nsearch: \"buscar\",\r\nreplace: \"reemplazar\",\r\nreplace_command: \"reemplazar / abrir área de búsqueda\",\r\nfind_next: \"encontrar siguiente\",\r\nreplace_all: \"reemplazar todos\",\r\nreg_exp: \"expresiones regulares\",\r\nmatch_case: \"coincidir capitalización\",\r\nnot_found: \"no encontrado.\",\r\noccurrence_replaced: \"ocurrencias reemplazadas.\",\r\nsearch_field_empty: \"Campo de búsqueda vacío\",\r\nrestart_search_at_begin: \"Se ha llegado al final del área. Se va a seguir desde el principio.\",\r\nmove_popup: \"mover la ventana de búsqueda\",\r\nfont_size: \"--Tamaño de la fuente--\",\r\ngo_to_line: \"ir a la línea\",\r\ngo_to_line_prompt: \"ir a la línea número:\",\r\nundo: \"deshacer\",\r\nredo: \"rehacer\",\r\nchange_smooth_selection: \"activar/desactivar algunas características de visualización (visualización más inteligente pero más carga de CPU)\",\r\nhighlight: \"intercambiar resaltado de sintaxis\",\r\nreset_highlight: \"reinicializar resaltado (si no esta sincronizado con el texto)\",\r\nword_wrap: \"toggle word wrapping mode\",\r\nhelp: \"acerca\",\r\nsave: \"guardar\",\r\nload: \"cargar\",\r\nline_abbr: \"Ln\",\r\nchar_abbr: \"Ch\",\r\nposition: \"Posición\",\r\ntotal: \"Total\",\r\nclose_popup: \"recuadro de cierre\",\r\nshortcuts: \"Atajos\",\r\nadd_tab: \"añadir tabulado al texto\",\r\nremove_tab: \"borrar tabulado del texto\",\r\nabout_notice: \"Aviso: el resaltado de sintaxis sólo funciona para texto pequeño\",\r\ntoggle: \"Cambiar editor\",\r\naccesskey: \"Tecla de acceso\",\r\ntab: \"Tab\",\r\nshift: \"Mayúsc\",\r\nctrl: \"Ctrl\",\r\nesc: \"Esc\",\r\nprocessing: \"Procesando...\",\r\nfullscreen: \"pantalla completa\",\r\nsyntax_selection: \"--Syntax--\",\r\nclose_tab: \"Close file\"\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/langs/fi.js",
    "content": "editAreaLoader.lang[\"fi\"]={\r\nnew_document: \"uusi tyhjä dokumentti\",\r\nsearch_button: \"etsi ja korvaa\",\r\nsearch_command: \"etsi seuraava / avaa etsintävalikko\",\r\nsearch: \"etsi\",\r\nreplace: \"korvaa\",\r\nreplace_command: \"korvaa / avaa etsintävalikko\",\r\nfind_next: \"etsi seuraava\",\r\nreplace_all: \"korvaa kaikki\",\r\nreg_exp: \"säännölliset lausekkeet\",\r\nmatch_case: \"täsmää kirjainkokoon\",\r\nnot_found: \"ei löytynyt.\",\r\noccurrence_replaced: \"esiintymää korvattu.\",\r\nsearch_field_empty: \"Haettava merkkijono on tyhjä\",\r\nrestart_search_at_begin: \"Alueen loppu saavutettiin. Aloitetaan alusta.\",\r\nmove_popup: \"siirrä etsintävalikkoa\",\r\nfont_size: \"--Fontin koko--\",\r\ngo_to_line: \"siirry riville\",\r\ngo_to_line_prompt: \"mene riville:\",\r\nundo: \"peruuta\",\r\nredo: \"tee uudelleen\",\r\nchange_smooth_selection: \"kytke/sammuta joitakin näyttötoimintoja (Älykkäämpi toiminta, mutta suurempi CPU kuormitus)\",\r\nhighlight: \"kytke syntaksikorostus päälle/pois\",\r\nreset_highlight: \"resetoi syntaksikorostus (jos teksti ei ole synkassa korostuksen kanssa)\",\r\nword_wrap: \"toggle word wrapping mode\",\r\nhelp: \"tietoja\",\r\nsave: \"tallenna\",\r\nload: \"lataa\",\r\nline_abbr: \"Rv\",\r\nchar_abbr: \"Pos\",\r\nposition: \"Paikka\",\r\ntotal: \"Yhteensä\",\r\nclose_popup: \"sulje valikko\",\r\nshortcuts: \"Pikatoiminnot\",\r\nadd_tab: \"lisää sisennys tekstiin\",\r\nremove_tab: \"poista sisennys tekstistä\",\r\nabout_notice: \"Huomautus: syntaksinkorostus toimii vain pienelle tekstille\",\r\ntoggle: \"Kytke editori\",\r\naccesskey: \"Pikanäppäin\",\r\ntab: \"Tab\",\r\nshift: \"Shift\",\r\nctrl: \"Ctrl\",\r\nesc: \"Esc\",\r\nprocessing: \"Odota...\",\r\nfullscreen: \"koko ruutu\",\r\nsyntax_selection: \"--Syntaksi--\",\r\nclose_tab: \"Sulje tiedosto\"\r\n};"
  },
  {
    "path": "newscoop/js/editarea/edit_area/langs/fr.js",
    "content": "editAreaLoader.lang[\"fr\"]={\r\nnew_document: \"nouveau document (efface le contenu)\",\r\nsearch_button: \"rechercher / remplacer\",\r\nsearch_command: \"rechercher suivant / ouvrir la fen&ecirc;tre de recherche\",\r\nsearch: \"rechercher\",\r\nreplace: \"remplacer\",\r\nreplace_command: \"remplacer / ouvrir la fen&ecirc;tre de recherche\",\r\nfind_next: \"rechercher\",\r\nreplace_all: \"tout remplacer\",\r\nreg_exp: \"expr. r&eacute;guli&egrave;re\",\r\nmatch_case: \"respecter la casse\",\r\nnot_found: \"pas trouv&eacute;.\",\r\noccurrence_replaced: \"remplacements &eacute;ffectu&eacute;s.\",\r\nsearch_field_empty: \"Le champ de recherche est vide.\",\r\nrestart_search_at_begin: \"Fin du texte atteint, poursuite au d&eacute;but.\",\r\nmove_popup: \"d&eacute;placer la fen&ecirc;tre de recherche\",\r\nfont_size: \"--Taille police--\",\r\ngo_to_line: \"aller &agrave; la ligne\",\r\ngo_to_line_prompt: \"aller a la ligne numero:\",\r\nundo: \"annuler\",\r\nredo: \"refaire\",\r\nchange_smooth_selection: \"activer/d&eacute;sactiver des fonctions d'affichage (meilleur affichage mais plus de charge processeur)\",\r\nhighlight: \"activer/d&eacute;sactiver la coloration syntaxique\",\r\nreset_highlight: \"r&eacute;initialiser la coloration syntaxique (si d&eacute;syncronis&eacute;e du texte)\",\r\nword_wrap: \"activer/d&eacute;sactiver les retours &agrave; la ligne automatiques\",\r\nhelp: \"&agrave; propos\",\r\nsave: \"sauvegarder\",\r\nload: \"charger\",\r\nline_abbr: \"Ln\",\r\nchar_abbr: \"Ch\",\r\nposition: \"Position\",\r\ntotal: \"Total\",\r\nclose_popup: \"fermer le popup\",\r\nshortcuts: \"Racourcis clavier\",\r\nadd_tab: \"ajouter une tabulation dans le texte\",\r\nremove_tab: \"retirer une tabulation dans le texte\",\r\nabout_notice: \"Note: la coloration syntaxique n'est pr&eacute;vue que pour de courts textes.\",\r\ntoggle: \"basculer l'&eacute;diteur\",\r\naccesskey: \"Accesskey\",\r\ntab: \"Tab\",\r\nshift: \"Maj\",\r\nctrl: \"Ctrl\",\r\nesc: \"Esc\",\r\nprocessing: \"chargement...\",\r\nfullscreen: \"plein &eacute;cran\",\r\nsyntax_selection: \"--Syntaxe--\",\r\nclose_tab: \"Fermer le fichier\"\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/langs/hr.js",
    "content": "editAreaLoader.lang[\"hr\"]={\nnew_document: \"Novi dokument\",\nsearch_button: \"Traži i izmijeni\",\nsearch_command: \"Traži dalje / Otvori prozor za traženje\",\nsearch: \"Traži\",\nreplace: \"Izmijeni\",\nreplace_command: \"Izmijeni / Otvori prozor za traženje\",\nfind_next: \"Traži dalje\",\nreplace_all: \"Izmjeni sve\",\nreg_exp: \"Regularni izrazi\",\nmatch_case: \"Bitna vel. slova\",\nnot_found: \"nije naðeno.\",\noccurrence_replaced: \"izmjenjenih.\",\nsearch_field_empty: \"Prazno polje za traženje!\",\nrestart_search_at_begin: \"Došao do kraja. Poèeo od poèetka.\",\nmove_popup: \"Pomakni prozor\",\nfont_size: \"--Velièina teksta--\",\ngo_to_line: \"Odi na redak\",\ngo_to_line_prompt: \"Odi na redak:\",\nundo: \"Vrati natrag\",\nredo: \"Napravi ponovo\",\nchange_smooth_selection: \"Ukljuèi/iskljuèi neke moguænosti prikaza (pametniji prikaz, ali zagušeniji CPU)\",\nhighlight: \"Ukljuèi/iskljuèi bojanje sintakse\",\nreset_highlight: \"Ponovi kolorizaciju (ako je nesinkronizirana s tekstom)\",\nword_wrap: \"toggle word wrapping mode\",\nhelp: \"O edit_area\",\nsave: \"Spremi\",\nload: \"Uèitaj\",\nline_abbr: \"Ln\",\nchar_abbr: \"Zn\",\nposition: \"Pozicija\",\ntotal: \"Ukupno\",\nclose_popup: \"Zatvori prozor\",\nshortcuts: \"Kratice\",\nadd_tab: \"Dodaj tabulaciju\",\nremove_tab: \"Makni tabulaciju\",\nabout_notice: \"Napomena: koloriziranje sintakse je samo za kratke kodove\",\ntoggle: \"Prebaci naèin ureðivanja\",\naccesskey: \"Accesskey\",\ntab: \"Tab\",\nshift: \"Shift\",\nctrl: \"Ctrl\",\nesc: \"Esc\",\nprocessing: \"Procesiram...\",\nfullscreen: \"Cijeli prozor\",\nsyntax_selection: \"--Syntax--\",\nclose_tab: \"Close file\"\n};\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/langs/it.js",
    "content": "editAreaLoader.lang[\"it\"]={\r\nnew_document: \"nuovo documento vuoto\",\r\nsearch_button: \"cerca e sostituisci\",\r\nsearch_command: \"trova successivo / apri finestra di ricerca\",\r\nsearch: \"cerca\",\r\nreplace: \"sostituisci\",\r\nreplace_command: \"sostituisci / apri finestra di ricerca\",\r\nfind_next: \"trova successivo\",\r\nreplace_all: \"sostituisci tutti\",\r\nreg_exp: \"espressioni regolari\",\r\nmatch_case: \"confronta maiuscole/minuscole<br />\",\r\nnot_found: \"non trovato.\",\r\noccurrence_replaced: \"occorrenze sostituite.\",\r\nsearch_field_empty: \"Campo ricerca vuoto\",\r\nrestart_search_at_begin: \"Fine del testo raggiunta. Ricomincio dall'inizio.\",\r\nmove_popup: \"sposta popup di ricerca\",\r\nfont_size: \"-- Dimensione --\",\r\ngo_to_line: \"vai alla linea\",\r\ngo_to_line_prompt: \"vai alla linea numero:\",\r\nundo: \"annulla\",\r\nredo: \"ripeti\",\r\nchange_smooth_selection: \"abilita/disabilita alcune caratteristiche della visualizzazione\",\r\nhighlight: \"abilita/disabilita colorazione della sintassi\",\r\nreset_highlight: \"aggiorna colorazione (se non sincronizzata)\",\r\nword_wrap: \"toggle word wrapping mode\",\r\nhelp: \"informazioni su...\",\r\nsave: \"salva\",\r\nload: \"carica\",\r\nline_abbr: \"Ln\",\r\nchar_abbr: \"Ch\",\r\nposition: \"Posizione\",\r\ntotal: \"Totale\",\r\nclose_popup: \"chiudi popup\",\r\nshortcuts: \"Scorciatoie\",\r\nadd_tab: \"aggiungi tabulazione\",\r\nremove_tab: \"rimuovi tabulazione\",\r\nabout_notice: \"Avviso: la colorazione della sintassi vale solo con testo piccolo\",\r\ntoggle: \"Abilita/disabilita editor\",\r\naccesskey: \"Accesskey\",\r\ntab: \"Tab\",\r\nshift: \"Shift\",\r\nctrl: \"Ctrl\",\r\nesc: \"Esc\",\r\nprocessing: \"In corso...\",\r\nfullscreen: \"fullscreen\",\r\nsyntax_selection: \"--Syntax--\",\r\nclose_tab: \"Close file\"\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/langs/ja.js",
    "content": "editAreaLoader.lang[\"ja\"]={\r\nnew_document: \"新規作成\",\r\nsearch_button: \"検索・置換\",\r\nsearch_command: \"次を検索 / 検索窓を表示\",\r\nsearch: \"検索\",\r\nreplace: \"置換\",\r\nreplace_command: \"置換 / 置換窓を表示\",\r\nfind_next: \"次を検索\",\r\nreplace_all: \"全置換\",\r\nreg_exp: \"正規表現\",\r\nmatch_case: \"大文字小文字の区別\",\r\nnot_found: \"見つかりません。\",\r\noccurrence_replaced: \"置換しました。\",\r\nsearch_field_empty: \"検索対象文字列が空です。\",\r\nrestart_search_at_begin: \"終端に達しました、始めに戻ります\",\r\nmove_popup: \"検索窓を移動\",\r\nfont_size: \"--フォントサイズ--\",\r\ngo_to_line: \"指定行へ移動\",\r\ngo_to_line_prompt: \"指定行へ移動します:\",\r\nundo: \"元に戻す\",\r\nredo: \"やり直し\",\r\nchange_smooth_selection: \"スムース表示の切り替え（CPUを使います）\",\r\nhighlight: \"構文強調表示の切り替え\",\r\nreset_highlight: \"構文強調表示のリセット\",\r\nword_wrap: \"toggle word wrapping mode\",\r\nhelp: \"ヘルプを表示\",\r\nsave: \"保存\",\r\nload: \"読み込み\",\r\nline_abbr: \"行\",\r\nchar_abbr: \"文字\",\r\nposition: \"位置\",\r\ntotal: \"合計\",\r\nclose_popup: \"ポップアップを閉じる\",\r\nshortcuts: \"ショートカット\",\r\nadd_tab: \"タブを挿入する\",\r\nremove_tab: \"タブを削除する\",\r\nabout_notice: \"注意：構文強調表示は短いテキストでしか有効に機能しません。\",\r\ntoggle: \"テキストエリアとeditAreaの切り替え\",\r\naccesskey: \"アクセスキー\",\r\ntab: \"Tab\",\r\nshift: \"Shift\",\r\nctrl: \"Ctrl\",\r\nesc: \"Esc\",\r\nprocessing: \"処理中です...\",\r\nfullscreen: \"fullscreen\",\r\nsyntax_selection: \"--Syntax--\",\r\nclose_tab: \"Close file\"\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/langs/mk.js",
    "content": "editAreaLoader.lang[\"mk\"]={\nnew_document: \"Нов документ\",\nsearch_button: \"Најди и замени\",\nsearch_command: \"Барај следно / Отвори нов прозорец за пребарување\",\nsearch: \"Барај\",\nreplace: \"Замени\",\nreplace_command: \"Замени / Отвори прозорец за пребарување\",\nfind_next: \"најди следно\",\nreplace_all: \"Замени ги сите\",\nreg_exp: \"Регуларни изрази\",\nmatch_case: \"Битна е големината на буквите\",\nnot_found: \"не е пронајдено.\",\noccurrence_replaced: \"замени.\",\nsearch_field_empty: \"Полето за пребарување е празно\",\nrestart_search_at_begin: \"Крај на областа. Стартувај од почеток.\",\nmove_popup: \"Помести го прозорецот\",\nfont_size: \"--Големина на текстот--\",\ngo_to_line: \"Оди на линија\",\ngo_to_line_prompt: \"Оди на линија со број:\",\nundo: \"Врати\",\nredo: \"Повтори\",\nchange_smooth_selection: \"Вклучи/исклучи некои карактеристики за приказ (попаметен приказ, но поголемо оптеретување за процесорот)\",\nhighlight: \"Вклучи/исклучи осветлување на синтакса\",\nreset_highlight: \"Ресетирај го осветлувањето на синтакса (доколку е десинхронизиранo со текстот)\",\nword_wrap: \"toggle word wrapping mode\",\nhelp: \"За\",\nsave: \"Зачувај\",\nload: \"Вчитај\",\nline_abbr: \"Лн\",\nchar_abbr: \"Зн\",\nposition: \"Позиција\",\ntotal: \"Вкупно\",\nclose_popup: \"Затвори го прозорецот\",\nshortcuts: \"Кратенки\",\nadd_tab: \"Додај табулација на текстот\",\nremove_tab: \"Отстрани ја табулацијата\",\nabout_notice: \"Напомена: Осветлувањето на синтанса е само за краток текст\",\ntoggle: \"Смени начин на уредување\",\naccesskey: \"Accesskey\",\ntab: \"Tab\",\nshift: \"Shift\",\nctrl: \"Ctrl\",\nesc: \"Esc\",\nprocessing: \"Обработувам...\",\nfullscreen: \"Цел прозорец\",\nsyntax_selection: \"--Синтакса--\",\nclose_tab: \"Избери датотека\"\n};\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/langs/nl.js",
    "content": "editAreaLoader.lang[\"nl\"]={\r\nnew_document: \"nieuw leeg document\",\r\nsearch_button: \"zoek en vervang\",\r\nsearch_command: \"zoek volgende / zoekscherm openen\",\r\nsearch: \"zoek\",\r\nreplace: \"vervang\",\r\nreplace_command: \"vervang / zoekscherm openen\",\r\nfind_next: \"volgende vinden\",\r\nreplace_all: \"alles vervangen\",\r\nreg_exp: \"reguliere expressies\",\r\nmatch_case: \"hoofdletter gevoelig\",\r\nnot_found: \"niet gevonden.\",\r\noccurrence_replaced: \"object vervangen.\",\r\nsearch_field_empty: \"Zoek veld leeg\",\r\nrestart_search_at_begin: \"Niet meer instanties gevonden, begin opnieuw\",\r\nmove_popup: \"versleep zoek scherm\",\r\nfont_size: \"--Letter grootte--\",\r\ngo_to_line: \"Ga naar regel\",\r\ngo_to_line_prompt: \"Ga naar regel nummer:\",\r\nundo: \"Ongedaan maken\",\r\nredo: \"Opnieuw doen\",\r\nchange_smooth_selection: \"zet wat schermopties aan/uit (kan langzamer zijn)\",\r\nhighlight: \"zet syntax highlight aan/uit\",\r\nreset_highlight: \"reset highlight (indien gedesynchronizeerd)\",\r\nword_wrap: \"toggle word wrapping mode\",\r\nhelp: \"informatie\",\r\nsave: \"opslaan\",\r\nload: \"laden\",\r\nline_abbr: \"Ln\",\r\nchar_abbr: \"Ch\",\r\nposition: \"Positie\",\r\ntotal: \"Totaal\",\r\nclose_popup: \"Popup sluiten\",\r\nshortcuts: \"Snelkoppelingen\",\r\nadd_tab: \"voeg tabs toe in tekst\",\r\nremove_tab: \"verwijder tabs uit tekst\",\r\nabout_notice: \"Notitie: syntax highlight functie is alleen voor kleine tekst\",\r\ntoggle: \"geavanceerde bewerkingsopties\",\r\naccesskey: \"Accessknop\",\r\ntab: \"Tab\",\r\nshift: \"Shift\",\r\nctrl: \"Ctrl\",\r\nesc: \"Esc\",\r\nprocessing: \"Verwerken...\",\r\nfullscreen: \"fullscreen\",\r\nsyntax_selection: \"--Syntax--\",\r\nclose_tab: \"Close file\"\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/langs/pl.js",
    "content": "editAreaLoader.lang[\"pl\"]={\r\nnew_document: \"nowy dokument\",\r\nsearch_button: \"znajdź i zamień\",\r\nsearch_command: \"znajdź następny\",\r\nsearch: \"znajdź\",\r\nreplace: \"zamień\",\r\nreplace_command: \"zamień\",\r\nfind_next: \"następny\",\r\nreplace_all: \"zamień wszystko\",\r\nreg_exp: \"wyrażenie regularne\",\r\nmatch_case: \"uwzględnij wielkość liter<br />\",\r\nnot_found: \"nie znaleziono.\",\r\noccurrence_replaced: \"wystąpień zamieniono.\",\r\nsearch_field_empty: \"Nie wprowadzono tekstu\",\r\nrestart_search_at_begin: \"Koniec dokumentu. Wyszukiwanie od początku.\",\r\nmove_popup: \"przesuń okienko wyszukiwania\",\r\nfont_size: \"Rozmiar\",\r\ngo_to_line: \"idź do linii\",\r\ngo_to_line_prompt: \"numer linii:\",\r\nundo: \"cofnij\",\r\nredo: \"przywróć\",\r\nchange_smooth_selection: \"włącz/wyłącz niektóre opcje wyglądu (zaawansowane opcje wyglądu obciążają procesor)\",\r\nhighlight: \"włącz/wyłącz podświetlanie składni\",\r\nreset_highlight: \"odśwież podświetlanie składni (jeśli rozsynchronizowało się z tekstem)\",\r\nword_wrap: \"toggle word wrapping mode\",\r\nhelp: \"o programie\",\r\nsave: \"zapisz\",\r\nload: \"otwórz\",\r\nline_abbr: \"Ln\",\r\nchar_abbr: \"Zn\",\r\nposition: \"Pozycja\",\r\ntotal: \"W sumie\",\r\nclose_popup: \"zamknij okienko\",\r\nshortcuts: \"Skróty klawiaturowe\",\r\nadd_tab: \"dodaj wcięcie do zaznaczonego tekstu\",\r\nremove_tab: \"usuń wcięcie\",\r\nabout_notice: \"Uwaga: podświetlanie składni nie jest zalecane dla długich tekstów\",\r\ntoggle: \"Włącz/wyłącz edytor\",\r\naccesskey: \"Alt+\",\r\ntab: \"Tab\",\r\nshift: \"Shift\",\r\nctrl: \"Ctrl\",\r\nesc: \"Esc\",\r\nprocessing: \"Przetwarzanie...\",\r\nfullscreen: \"fullscreen\",\r\nsyntax_selection: \"--Syntax--\",\r\nclose_tab: \"Close file\"\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/langs/pt.js",
    "content": "editAreaLoader.lang[\"pt\"]={\r\nnew_document: \"Novo documento\",\r\nsearch_button: \"Localizar e substituir\",\r\nsearch_command: \"Localizar próximo\",\r\nsearch: \"Localizar\",\r\nreplace: \"Substituir\",\r\nreplace_command: \"Substituir\",\r\nfind_next: \"Localizar\",\r\nreplace_all: \"Subst. tudo\",\r\nreg_exp: \"Expressões regulares\",\r\nmatch_case: \"Diferenciar maiúsculas e minúsculas\",\r\nnot_found: \"Não encontrado.\",\r\noccurrence_replaced: \"Ocorrências substituidas\",\r\nsearch_field_empty: \"Campo localizar vazio.\",\r\nrestart_search_at_begin: \"Fim das ocorrências. Recomeçar do inicio.\",\r\nmove_popup: \"Mover janela\",\r\nfont_size: \"--Tamanho da fonte--\",\r\ngo_to_line: \"Ir para linha\",\r\ngo_to_line_prompt: \"Ir para a linha:\",\r\nundo: \"Desfazer\",\r\nredo: \"Refazer\",\r\nchange_smooth_selection: \"Opções visuais\",\r\nhighlight: \"Cores de sintaxe\",\r\nreset_highlight: \"Resetar cores (se não sincronizado)\",\r\nword_wrap: \"toggle word wrapping mode\",\r\nhelp: \"Sobre\",\r\nsave: \"Salvar\",\r\nload: \"Carregar\",\r\nline_abbr: \"Ln\",\r\nchar_abbr: \"Ch\",\r\nposition: \"Posição\",\r\ntotal: \"Total\",\r\nclose_popup: \"Fechar\",\r\nshortcuts: \"Shortcuts\",\r\nadd_tab: \"Adicionar tabulação\",\r\nremove_tab: \"Remover tabulação\",\r\nabout_notice: \"Atenção: Cores de sintaxe são indicados somente para textos pequenos\",\r\ntoggle: \"Exibir editor\",\r\naccesskey: \"Accesskey\",\r\ntab: \"Tab\",\r\nshift: \"Shift\",\r\nctrl: \"Ctrl\",\r\nesc: \"Esc\",\r\nprocessing: \"Processando...\",\r\nfullscreen: \"fullscreen\",\r\nsyntax_selection: \"--Syntax--\",\r\nclose_tab: \"Close file\"\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/langs/ru.js",
    "content": "editAreaLoader.lang[\"ru\"]={\r\nnew_document: \"новый пустой документ\",\r\nsearch_button: \"поиск и замена\",\r\nsearch_command: \"искать следующий / открыть панель поиска\",\r\nsearch: \"поиск\",\r\nreplace: \"замена\",\r\nreplace_command: \"заменить / открыть панель поиска\",\r\nfind_next: \"найти следующее\",\r\nreplace_all: \"заменить все\",\r\nreg_exp: \"регулярное выражение\",\r\nmatch_case: \"учитывать регистр\",\r\nnot_found: \"не найдено.\",\r\noccurrence_replaced: \"вхождение заменено.\",\r\nsearch_field_empty: \"Поле поиска пустое\",\r\nrestart_search_at_begin: \"Достигнут конец документа. Начинаю с начала.\",\r\nmove_popup: \"переместить окно поиска\",\r\nfont_size: \"--Размер шрифта--\",\r\ngo_to_line: \"перейти к строке\",\r\ngo_to_line_prompt: \"перейти к строке номер:\",\r\nundo: \"отменить\",\r\nredo: \"вернуть\",\r\nchange_smooth_selection: \"включить/отключить некоторые функции просмотра (более красиво, но больше использует процессор)\",\r\nhighlight: \"переключить подсветку синтаксиса включена/выключена\",\r\nreset_highlight: \"восстановить подсветку (если разсинхронизирована от текста)\",\r\nword_wrap: \"toggle word wrapping mode\",\r\nhelp: \"о программе\",\r\nsave: \"сохранить\",\r\nload: \"загрузить\",\r\nline_abbr: \"Стр\",\r\nchar_abbr: \"Стлб\",\r\nposition: \"Позиция\",\r\ntotal: \"Всего\",\r\nclose_popup: \"закрыть всплывающее окно\",\r\nshortcuts: \"Горячие клавиши\",\r\nadd_tab: \"добавить табуляцию в текст\",\r\nremove_tab: \"убрать табуляцию из текста\",\r\nabout_notice: \"Внимание: функция подсветки синтаксиса только для небольших текстов\",\r\ntoggle: \"Переключить редактор\",\r\naccesskey: \"Горячая клавиша\",\r\ntab: \"Tab\",\r\nshift: \"Shift\",\r\nctrl: \"Ctrl\",\r\nesc: \"Esc\",\r\nprocessing: \"Обработка...\",\r\nfullscreen: \"полный экран\",\r\nsyntax_selection: \"--Синтакс--\",\r\nclose_tab: \"Закрыть файл\"\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/langs/sk.js",
    "content": "editAreaLoader.lang[\"sk\"]={\r\nnew_document: \"nový prázdy dokument\",\r\nsearch_button: \"vyhľadaj a nahraď\",\r\nsearch_command: \"hľadaj ďalsšie / otvor vyhľadávacie pole\",\r\nsearch: \"hľadaj\",\r\nreplace: \"nahraď\",\r\nreplace_command: \"nahraď / otvor vyhľadávacie pole\",\r\nfind_next: \"nájdi ďalšie\",\r\nreplace_all: \"nahraď všetko\",\r\nreg_exp: \"platné výrazy\",\r\nmatch_case: \"zhodujúce sa výrazy\",\r\nnot_found: \"nenájdené.\",\r\noccurrence_replaced: \"výskyty nahradené.\",\r\nsearch_field_empty: \"Pole vyhľadávanie je prádzne\",\r\nrestart_search_at_begin: \"End of area reached. Restart at begin.\",\r\nmove_popup: \"presuň vyhľadávacie okno\",\r\nfont_size: \"--Veľkosť textu--\",\r\ngo_to_line: \"prejdi na riadok\",\r\ngo_to_line_prompt: \"prejdi na riadok:\",\r\nundo: \"krok späť\",\r\nredo: \"prepracovať\",\r\nchange_smooth_selection: \"povoliť/zamietnúť niektoré zo zobrazených funkcií (účelnejšie zobrazenie vyžaduje  väčšie zaťaženie procesora CPU)\",\r\nhighlight: \"prepnúť zvýrazňovanie syntaxe zap/vyp\",\r\nreset_highlight: \"zrušiť zvýrazňovanie (ak je nesynchronizované s textom)\",\r\nword_wrap: \"toggle word wrapping mode\",\r\nhelp: \"o programe\",\r\nsave: \"uložiť\",\r\nload: \"načítať\",\r\nline_abbr: \"Ln\",\r\nchar_abbr: \"Ch\",\r\nposition: \"Pozícia\",\r\ntotal: \"Spolu\",\r\nclose_popup: \"zavrieť okno\",\r\nshortcuts: \"Skratky\",\r\nadd_tab: \"pridať tabulovanie textu\",\r\nremove_tab: \"odstrániť tabulovanie textu\",\r\nabout_notice: \"Upozornenie: funkcia zvýrazňovania syntaxe je dostupná iba pre malý text\",\r\ntoggle: \"Prepnúť editor\",\r\naccesskey: \"Accesskey\",\r\ntab: \"Záložka\",\r\nshift: \"Shift\",\r\nctrl: \"Ctrl\",\r\nesc: \"Esc\",\r\nprocessing: \"Spracúvam...\",\r\nfullscreen: \"cel=a obrazovka\",\r\nsyntax_selection: \"--Vyber Syntax--\",\r\nclose_tab: \"Close file\"\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/langs/zh.js",
    "content": "editAreaLoader.lang[\"zh\"]={\r\nnew_document: \"新建空白文档\",\r\nsearch_button: \"查找与替换\",\r\nsearch_command: \"查找下一个 / 打开查找框\",\r\nsearch: \"查找\",\r\nreplace: \"替换\",\r\nreplace_command: \"替换 / 打开查找框\",\r\nfind_next: \"查找下一个\",\r\nreplace_all: \"全部替换\",\r\nreg_exp: \"正则表达式\",\r\nmatch_case: \"匹配大小写\",\r\nnot_found: \"未找到.\",\r\noccurrence_replaced: \"处被替换.\",\r\nsearch_field_empty: \"查找框没有内容\",\r\nrestart_search_at_begin: \"已到到文档末尾. 从头重新查找.\",\r\nmove_popup: \"移动查找对话框\",\r\nfont_size: \"--字体大小--\",\r\ngo_to_line: \"转到行\",\r\ngo_to_line_prompt: \"转到行:\",\r\nundo: \"恢复\",\r\nredo: \"重做\",\r\nchange_smooth_selection: \"启用/禁止一些显示特性(更好看但更耗费资源)\",\r\nhighlight: \"启用/禁止语法高亮\",\r\nreset_highlight: \"重置语法高亮(当文本显示不同步时)\",\r\nword_wrap: \"toggle word wrapping mode\",\r\nhelp: \"关于\",\r\nsave: \"保存\",\r\nload: \"加载\",\r\nline_abbr: \"行\",\r\nchar_abbr: \"字符\",\r\nposition: \"位置\",\r\ntotal: \"总计\",\r\nclose_popup: \"关闭对话框\",\r\nshortcuts: \"快捷键\",\r\nadd_tab: \"添加制表符(Tab)\",\r\nremove_tab: \"移除制表符(Tab)\",\r\nabout_notice: \"注意：语法高亮功能仅用于较少内容的文本(文件内容太大会导致浏览器反应慢)\",\r\ntoggle: \"切换编辑器\",\r\naccesskey: \"快捷键\",\r\ntab: \"Tab\",\r\nshift: \"Shift\",\r\nctrl: \"Ctrl\",\r\nesc: \"Esc\",\r\nprocessing: \"正在处理中...\",\r\nfullscreen: \"全屏编辑\",\r\nsyntax_selection: \"--语法--\",\r\nclose_tab: \"关闭文件\"\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/license_apache.txt",
    "content": "Copyright 2008 Christophe Dolivet\r\n\r\nLicensed 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\r\n\r\n\thttp://www.apache.org/licenses/LICENSE-2.0\r\n\r\nUnless 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."
  },
  {
    "path": "newscoop/js/editarea/edit_area/license_bsd.txt",
    "content": "Copyright (c) 2008, Christophe Dolivet\r\nAll rights reserved.\r\n\r\nRedistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\r\n\r\n    * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\r\n    * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\r\n    * Neither the name of EditArea nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\r\n\r\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
  },
  {
    "path": "newscoop/js/editarea/edit_area/license_lgpl.txt",
    "content": "\t\t  GNU LESSER GENERAL PUBLIC LICENSE\n\t\t       Version 2.1, February 1999\n\n Copyright (C) 1991, 1999 Free Software Foundation, Inc.\n 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA\n Everyone is permitted to copy and distribute verbatim copies\n of this license document, but changing it is not allowed.\n\n[This is the first released version of the Lesser GPL.  It also counts\n as the successor of the GNU Library Public License, version 2, hence\n the version number 2.1.]\n\n\t\t\t    Preamble\n\n  The licenses for most software are designed to take away your\nfreedom to share and change it.  By contrast, the GNU General Public\nLicenses are intended to guarantee your freedom to share and change\nfree software--to make sure the software is free for all its users.\n\n  This license, the Lesser General Public License, applies to some\nspecially designated software packages--typically libraries--of the\nFree Software Foundation and other authors who decide to use it.  You\ncan use it too, but we suggest you first think carefully about whether\nthis license or the ordinary General Public License is the better\nstrategy to use in any particular case, based on the explanations below.\n\n  When we speak of free software, we are referring to freedom of use,\nnot price.  Our General Public Licenses are designed to make sure that\nyou have the freedom to distribute copies of free software (and charge\nfor this service if you wish); that you receive source code or can get\nit if you want it; that you can change the software and use pieces of\nit in new free programs; and that you are informed that you can do\nthese things.\n\n  To protect your rights, we need to make restrictions that forbid\ndistributors to deny you these rights or to ask you to surrender these\nrights.  These restrictions translate to certain responsibilities for\nyou if you distribute copies of the library or if you modify it.\n\n  For example, if you distribute copies of the library, whether gratis\nor for a fee, you must give the recipients all the rights that we gave\nyou.  You must make sure that they, too, receive or can get the source\ncode.  If you link other code with the library, you must provide\ncomplete object files to the recipients, so that they can relink them\nwith the library after making changes to the library and recompiling\nit.  And you must show them these terms so they know their rights.\n\n  We protect your rights with a two-step method: (1) we copyright the\nlibrary, and (2) we offer you this license, which gives you legal\npermission to copy, distribute and/or modify the library.\n\n  To protect each distributor, we want to make it very clear that\nthere is no warranty for the free library.  Also, if the library is\nmodified by someone else and passed on, the recipients should know\nthat what they have is not the original version, so that the original\nauthor's reputation will not be affected by problems that might be\nintroduced by others.\n\n  Finally, software patents pose a constant threat to the existence of\nany free program.  We wish to make sure that a company cannot\neffectively restrict the users of a free program by obtaining a\nrestrictive license from a patent holder.  Therefore, we insist that\nany patent license obtained for a version of the library must be\nconsistent with the full freedom of use specified in this license.\n\n  Most GNU software, including some libraries, is covered by the\nordinary GNU General Public License.  This license, the GNU Lesser\nGeneral Public License, applies to certain designated libraries, and\nis quite different from the ordinary General Public License.  We use\nthis license for certain libraries in order to permit linking those\nlibraries into non-free programs.\n\n  When a program is linked with a library, whether statically or using\na shared library, the combination of the two is legally speaking a\ncombined work, a derivative of the original library.  The ordinary\nGeneral Public License therefore permits such linking only if the\nentire combination fits its criteria of freedom.  The Lesser General\nPublic License permits more lax criteria for linking other code with\nthe library.\n\n  We call this license the \"Lesser\" General Public License because it\ndoes Less to protect the user's freedom than the ordinary General\nPublic License.  It also provides other free software developers Less\nof an advantage over competing non-free programs.  These disadvantages\nare the reason we use the ordinary General Public License for many\nlibraries.  However, the Lesser license provides advantages in certain\nspecial circumstances.\n\n  For example, on rare occasions, there may be a special need to\nencourage the widest possible use of a certain library, so that it becomes\na de-facto standard.  To achieve this, non-free programs must be\nallowed to use the library.  A more frequent case is that a free\nlibrary does the same job as widely used non-free libraries.  In this\ncase, there is little to gain by limiting the free library to free\nsoftware only, so we use the Lesser General Public License.\n\n  In other cases, permission to use a particular library in non-free\nprograms enables a greater number of people to use a large body of\nfree software.  For example, permission to use the GNU C Library in\nnon-free programs enables many more people to use the whole GNU\noperating system, as well as its variant, the GNU/Linux operating\nsystem.\n\n  Although the Lesser General Public License is Less protective of the\nusers' freedom, it does ensure that the user of a program that is\nlinked with the Library has the freedom and the wherewithal to run\nthat program using a modified version of the Library.\n\n  The precise terms and conditions for copying, distribution and\nmodification follow.  Pay close attention to the difference between a\n\"work based on the library\" and a \"work that uses the library\".  The\nformer contains code derived from the library, whereas the latter must\nbe combined with the library in order to run.\n\n\t\t  GNU LESSER GENERAL PUBLIC LICENSE\n   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\n\n  0. This License Agreement applies to any software library or other\nprogram which contains a notice placed by the copyright holder or\nother authorized party saying it may be distributed under the terms of\nthis Lesser General Public License (also called \"this License\").\nEach licensee is addressed as \"you\".\n\n  A \"library\" means a collection of software functions and/or data\nprepared so as to be conveniently linked with application programs\n(which use some of those functions and data) to form executables.\n\n  The \"Library\", below, refers to any such software library or work\nwhich has been distributed under these terms.  A \"work based on the\nLibrary\" means either the Library or any derivative work under\ncopyright law: that is to say, a work containing the Library or a\nportion of it, either verbatim or with modifications and/or translated\nstraightforwardly into another language.  (Hereinafter, translation is\nincluded without limitation in the term \"modification\".)\n\n  \"Source code\" for a work means the preferred form of the work for\nmaking modifications to it.  For a library, complete source code means\nall the source code for all modules it contains, plus any associated\ninterface definition files, plus the scripts used to control compilation\nand installation of the library.\n\n  Activities other than copying, distribution and modification are not\ncovered by this License; they are outside its scope.  The act of\nrunning a program using the Library is not restricted, and output from\nsuch a program is covered only if its contents constitute a work based\non the Library (independent of the use of the Library in a tool for\nwriting it).  Whether that is true depends on what the Library does\nand what the program that uses the Library does.\n  \n  1. You may copy and distribute verbatim copies of the Library's\ncomplete source code as you receive it, in any medium, provided that\nyou conspicuously and appropriately publish on each copy an\nappropriate copyright notice and disclaimer of warranty; keep intact\nall the notices that refer to this License and to the absence of any\nwarranty; and distribute a copy of this License along with the\nLibrary.\n\n  You may charge a fee for the physical act of transferring a copy,\nand you may at your option offer warranty protection in exchange for a\nfee.\n\n  2. You may modify your copy or copies of the Library or any portion\nof it, thus forming a work based on the Library, and copy and\ndistribute such modifications or work under the terms of Section 1\nabove, provided that you also meet all of these conditions:\n\n    a) The modified work must itself be a software library.\n\n    b) You must cause the files modified to carry prominent notices\n    stating that you changed the files and the date of any change.\n\n    c) You must cause the whole of the work to be licensed at no\n    charge to all third parties under the terms of this License.\n\n    d) If a facility in the modified Library refers to a function or a\n    table of data to be supplied by an application program that uses\n    the facility, other than as an argument passed when the facility\n    is invoked, then you must make a good faith effort to ensure that,\n    in the event an application does not supply such function or\n    table, the facility still operates, and performs whatever part of\n    its purpose remains meaningful.\n\n    (For example, a function in a library to compute square roots has\n    a purpose that is entirely well-defined independent of the\n    application.  Therefore, Subsection 2d requires that any\n    application-supplied function or table used by this function must\n    be optional: if the application does not supply it, the square\n    root function must still compute square roots.)\n\nThese requirements apply to the modified work as a whole.  If\nidentifiable sections of that work are not derived from the Library,\nand can be reasonably considered independent and separate works in\nthemselves, then this License, and its terms, do not apply to those\nsections when you distribute them as separate works.  But when you\ndistribute the same sections as part of a whole which is a work based\non the Library, the distribution of the whole must be on the terms of\nthis License, whose permissions for other licensees extend to the\nentire whole, and thus to each and every part regardless of who wrote\nit.\n\nThus, it is not the intent of this section to claim rights or contest\nyour rights to work written entirely by you; rather, the intent is to\nexercise the right to control the distribution of derivative or\ncollective works based on the Library.\n\nIn addition, mere aggregation of another work not based on the Library\nwith the Library (or with a work based on the Library) on a volume of\na storage or distribution medium does not bring the other work under\nthe scope of this License.\n\n  3. You may opt to apply the terms of the ordinary GNU General Public\nLicense instead of this License to a given copy of the Library.  To do\nthis, you must alter all the notices that refer to this License, so\nthat they refer to the ordinary GNU General Public License, version 2,\ninstead of to this License.  (If a newer version than version 2 of the\nordinary GNU General Public License has appeared, then you can specify\nthat version instead if you wish.)  Do not make any other change in\nthese notices.\n\n  Once this change is made in a given copy, it is irreversible for\nthat copy, so the ordinary GNU General Public License applies to all\nsubsequent copies and derivative works made from that copy.\n\n  This option is useful when you wish to copy part of the code of\nthe Library into a program that is not a library.\n\n  4. You may copy and distribute the Library (or a portion or\nderivative of it, under Section 2) in object code or executable form\nunder the terms of Sections 1 and 2 above provided that you accompany\nit with the complete corresponding machine-readable source code, which\nmust be distributed under the terms of Sections 1 and 2 above on a\nmedium customarily used for software interchange.\n\n  If distribution of object code is made by offering access to copy\nfrom a designated place, then offering equivalent access to copy the\nsource code from the same place satisfies the requirement to\ndistribute the source code, even though third parties are not\ncompelled to copy the source along with the object code.\n\n  5. A program that contains no derivative of any portion of the\nLibrary, but is designed to work with the Library by being compiled or\nlinked with it, is called a \"work that uses the Library\".  Such a\nwork, in isolation, is not a derivative work of the Library, and\ntherefore falls outside the scope of this License.\n\n  However, linking a \"work that uses the Library\" with the Library\ncreates an executable that is a derivative of the Library (because it\ncontains portions of the Library), rather than a \"work that uses the\nlibrary\".  The executable is therefore covered by this License.\nSection 6 states terms for distribution of such executables.\n\n  When a \"work that uses the Library\" uses material from a header file\nthat is part of the Library, the object code for the work may be a\nderivative work of the Library even though the source code is not.\nWhether this is true is especially significant if the work can be\nlinked without the Library, or if the work is itself a library.  The\nthreshold for this to be true is not precisely defined by law.\n\n  If such an object file uses only numerical parameters, data\nstructure layouts and accessors, and small macros and small inline\nfunctions (ten lines or less in length), then the use of the object\nfile is unrestricted, regardless of whether it is legally a derivative\nwork.  (Executables containing this object code plus portions of the\nLibrary will still fall under Section 6.)\n\n  Otherwise, if the work is a derivative of the Library, you may\ndistribute the object code for the work under the terms of Section 6.\nAny executables containing that work also fall under Section 6,\nwhether or not they are linked directly with the Library itself.\n\n  6. As an exception to the Sections above, you may also combine or\nlink a \"work that uses the Library\" with the Library to produce a\nwork containing portions of the Library, and distribute that work\nunder terms of your choice, provided that the terms permit\nmodification of the work for the customer's own use and reverse\nengineering for debugging such modifications.\n\n  You must give prominent notice with each copy of the work that the\nLibrary is used in it and that the Library and its use are covered by\nthis License.  You must supply a copy of this License.  If the work\nduring execution displays copyright notices, you must include the\ncopyright notice for the Library among them, as well as a reference\ndirecting the user to the copy of this License.  Also, you must do one\nof these things:\n\n    a) Accompany the work with the complete corresponding\n    machine-readable source code for the Library including whatever\n    changes were used in the work (which must be distributed under\n    Sections 1 and 2 above); and, if the work is an executable linked\n    with the Library, with the complete machine-readable \"work that\n    uses the Library\", as object code and/or source code, so that the\n    user can modify the Library and then relink to produce a modified\n    executable containing the modified Library.  (It is understood\n    that the user who changes the contents of definitions files in the\n    Library will not necessarily be able to recompile the application\n    to use the modified definitions.)\n\n    b) Use a suitable shared library mechanism for linking with the\n    Library.  A suitable mechanism is one that (1) uses at run time a\n    copy of the library already present on the user's computer system,\n    rather than copying library functions into the executable, and (2)\n    will operate properly with a modified version of the library, if\n    the user installs one, as long as the modified version is\n    interface-compatible with the version that the work was made with.\n\n    c) Accompany the work with a written offer, valid for at\n    least three years, to give the same user the materials\n    specified in Subsection 6a, above, for a charge no more\n    than the cost of performing this distribution.\n\n    d) If distribution of the work is made by offering access to copy\n    from a designated place, offer equivalent access to copy the above\n    specified materials from the same place.\n\n    e) Verify that the user has already received a copy of these\n    materials or that you have already sent this user a copy.\n\n  For an executable, the required form of the \"work that uses the\nLibrary\" must include any data and utility programs needed for\nreproducing the executable from it.  However, as a special exception,\nthe materials to be distributed need not include anything that is\nnormally distributed (in either source or binary form) with the major\ncomponents (compiler, kernel, and so on) of the operating system on\nwhich the executable runs, unless that component itself accompanies\nthe executable.\n\n  It may happen that this requirement contradicts the license\nrestrictions of other proprietary libraries that do not normally\naccompany the operating system.  Such a contradiction means you cannot\nuse both them and the Library together in an executable that you\ndistribute.\n\n  7. You may place library facilities that are a work based on the\nLibrary side-by-side in a single library together with other library\nfacilities not covered by this License, and distribute such a combined\nlibrary, provided that the separate distribution of the work based on\nthe Library and of the other library facilities is otherwise\npermitted, and provided that you do these two things:\n\n    a) Accompany the combined library with a copy of the same work\n    based on the Library, uncombined with any other library\n    facilities.  This must be distributed under the terms of the\n    Sections above.\n\n    b) Give prominent notice with the combined library of the fact\n    that part of it is a work based on the Library, and explaining\n    where to find the accompanying uncombined form of the same work.\n\n  8. You may not copy, modify, sublicense, link with, or distribute\nthe Library except as expressly provided under this License.  Any\nattempt otherwise to copy, modify, sublicense, link with, or\ndistribute the Library is void, and will automatically terminate your\nrights under this License.  However, parties who have received copies,\nor rights, from you under this License will not have their licenses\nterminated so long as such parties remain in full compliance.\n\n  9. You are not required to accept this License, since you have not\nsigned it.  However, nothing else grants you permission to modify or\ndistribute the Library or its derivative works.  These actions are\nprohibited by law if you do not accept this License.  Therefore, by\nmodifying or distributing the Library (or any work based on the\nLibrary), you indicate your acceptance of this License to do so, and\nall its terms and conditions for copying, distributing or modifying\nthe Library or works based on it.\n\n  10. Each time you redistribute the Library (or any work based on the\nLibrary), the recipient automatically receives a license from the\noriginal licensor to copy, distribute, link with or modify the Library\nsubject to these terms and conditions.  You may not impose any further\nrestrictions on the recipients' exercise of the rights granted herein.\nYou are not responsible for enforcing compliance by third parties with\nthis License.\n\n  11. If, as a consequence of a court judgment or allegation of patent\ninfringement or for any other reason (not limited to patent issues),\nconditions are imposed on you (whether by court order, agreement or\notherwise) that contradict the conditions of this License, they do not\nexcuse you from the conditions of this License.  If you cannot\ndistribute so as to satisfy simultaneously your obligations under this\nLicense and any other pertinent obligations, then as a consequence you\nmay not distribute the Library at all.  For example, if a patent\nlicense would not permit royalty-free redistribution of the Library by\nall those who receive copies directly or indirectly through you, then\nthe only way you could satisfy both it and this License would be to\nrefrain entirely from distribution of the Library.\n\nIf any portion of this section is held invalid or unenforceable under any\nparticular circumstance, the balance of the section is intended to apply,\nand the section as a whole is intended to apply in other circumstances.\n\nIt is not the purpose of this section to induce you to infringe any\npatents or other property right claims or to contest validity of any\nsuch claims; this section has the sole purpose of protecting the\nintegrity of the free software distribution system which is\nimplemented by public license practices.  Many people have made\ngenerous contributions to the wide range of software distributed\nthrough that system in reliance on consistent application of that\nsystem; it is up to the author/donor to decide if he or she is willing\nto distribute software through any other system and a licensee cannot\nimpose that choice.\n\nThis section is intended to make thoroughly clear what is believed to\nbe a consequence of the rest of this License.\n\n  12. If the distribution and/or use of the Library is restricted in\ncertain countries either by patents or by copyrighted interfaces, the\noriginal copyright holder who places the Library under this License may add\nan explicit geographical distribution limitation excluding those countries,\nso that distribution is permitted only in or among countries not thus\nexcluded.  In such case, this License incorporates the limitation as if\nwritten in the body of this License.\n\n  13. The Free Software Foundation may publish revised and/or new\nversions of the Lesser General Public License from time to time.\nSuch new versions will be similar in spirit to the present version,\nbut may differ in detail to address new problems or concerns.\n\nEach version is given a distinguishing version number.  If the Library\nspecifies a version number of this License which applies to it and\n\"any later version\", you have the option of following the terms and\nconditions either of that version or of any later version published by\nthe Free Software Foundation.  If the Library does not specify a\nlicense version number, you may choose any version ever published by\nthe Free Software Foundation.\n\n  14. If you wish to incorporate parts of the Library into other free\nprograms whose distribution conditions are incompatible with these,\nwrite to the author to ask for permission.  For software which is\ncopyrighted by the Free Software Foundation, write to the Free\nSoftware Foundation; we sometimes make exceptions for this.  Our\ndecision will be guided by the two goals of preserving the free status\nof all derivatives of our free software and of promoting the sharing\nand reuse of software generally.\n\n\t\t\t    NO WARRANTY\n\n  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO\nWARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.\nEXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR\nOTHER PARTIES PROVIDE THE LIBRARY \"AS IS\" WITHOUT WARRANTY OF ANY\nKIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\nPURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE\nLIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME\nTHE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n\n  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN\nWRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY\nAND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU\nFOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR\nCONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE\nLIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING\nRENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A\nFAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF\nSUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH\nDAMAGES.\n\n\t\t     END OF TERMS AND CONDITIONS\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/manage_area.js",
    "content": "\tEditArea.prototype.focus = function() {\r\n\t\tthis.textarea.focus();\r\n\t\tthis.textareaFocused=true;\r\n\t};\r\n\r\n\r\n\tEditArea.prototype.check_line_selection= function(timer_checkup){\r\n\t\tvar changes, infos, new_top, new_width,i;\r\n\t\t\r\n\t\tvar t1=t2=t2_1=t3=tLines=tend= new Date().getTime();\r\n\t\t// l'editeur n'existe plus => on quitte\r\n\t\tif(!editAreas[this.id])\r\n\t\t\treturn false;\r\n\t\t\r\n\t\tif(!this.smooth_selection && !this.do_highlight)\r\n\t\t{\r\n\t\t\t//do nothing\r\n\t\t}\r\n\t\telse if(this.textareaFocused && editAreas[this.id][\"displayed\"]==true && this.isResizing==false)\r\n\t\t{\r\n\t\t\tinfos\t= this.get_selection_infos();\r\n\t\t\tchanges\t= this.checkTextEvolution( typeof( this.last_selection['full_text'] ) == 'undefined' ? '' : this.last_selection['full_text'], infos['full_text'] );\r\n\t\t\r\n\t\t\tt2= new Date().getTime();\r\n\t\t\t\r\n\t\t\t// if selection change\r\n\t\t\tif(this.last_selection[\"line_start\"] != infos[\"line_start\"] || this.last_selection[\"line_nb\"] != infos[\"line_nb\"] || infos[\"full_text\"] != this.last_selection[\"full_text\"] || this.reload_highlight || this.last_selection[\"selectionStart\"] != infos[\"selectionStart\"] || this.last_selection[\"selectionEnd\"] != infos[\"selectionEnd\"] || !timer_checkup )\r\n\t\t\t{\r\n\t\t\t\t// move and adjust text selection elements\r\n\t\t\t\tnew_top\t\t= this.getLinePosTop( infos[\"line_start\"] );\r\n\t\t\t\tnew_width\t= Math.max(this.textarea.scrollWidth, this.container.clientWidth -50);\r\n\t\t\t\tthis.selection_field.style.top=this.selection_field_text.style.top=new_top+\"px\";\r\n\t\t\t\tif(!this.settings['word_wrap']){\t\r\n\t\t\t\t\tthis.selection_field.style.width=this.selection_field_text.style.width=this.test_font_size.style.width=new_width+\"px\";\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\t// usefull? => _$(\"cursor_pos\").style.top=new_top+\"px\";\t\r\n\t\t\r\n\t\t\t\tif(this.do_highlight==true)\r\n\t\t\t\t{\r\n\t\t\t\t\t// fill selection elements\r\n\t\t\t\t\tvar curr_text\t= infos[\"full_text\"].split(\"\\n\");\r\n\t\t\t\t\tvar content\t\t= \"\";\r\n\t\t\t\t\t//alert(\"length: \"+curr_text.length+ \" i: \"+ Math.max(0,infos[\"line_start\"]-1)+ \" end: \"+Math.min(curr_text.length, infos[\"line_start\"]+infos[\"line_nb\"]-1)+ \" line: \"+infos[\"line_start\"]+\" [0]: \"+curr_text[0]+\" [1]: \"+curr_text[1]);\r\n\t\t\t\t\tvar start\t\t= Math.max(0,infos[\"line_start\"]-1);\r\n\t\t\t\t\tvar end\t\t\t= Math.min(curr_text.length, infos[\"line_start\"]+infos[\"line_nb\"]-1);\r\n\t\t\t\t\t\r\n\t\t\t\t\t//curr_text[start]= curr_text[start].substr(0,infos[\"curr_pos\"]-1) +\"¤_overline_¤\"+ curr_text[start].substr(infos[\"curr_pos\"]-1);\r\n\t\t\t\t\tfor(i=start; i< end; i++){\r\n\t\t\t\t\t\tcontent+= curr_text[i]+\"\\n\";\t\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\r\n\t\t\t\t\t// add special chars arround selected characters\r\n\t\t\t\t\tselLength\t= infos['selectionEnd'] - infos['selectionStart'];\r\n\t\t\t\t\tcontent\t\t= content.substr( 0, infos[\"curr_pos\"] - 1 ) + \"\\r\\r\" + content.substr( infos[\"curr_pos\"] - 1, selLength ) + \"\\r\\r\" + content.substr( infos[\"curr_pos\"] - 1 + selLength );\r\n\t\t\t\t\tcontent\t\t= '<span>'+ content.replace(/&/g,\"&amp;\").replace(/</g,\"&lt;\").replace(/>/g,\"&gt;\").replace(\"\\r\\r\", '</span><strong>').replace(\"\\r\\r\", '</strong><span>') +'</span>';\r\n\t\t\t\t\t\r\n\t\t\t\t\tif( this.isIE || ( this.isOpera && this.isOpera < 9.6 ) ) {\r\n\t\t\t\t\t\tthis.selection_field.innerHTML= \"<pre>\" + content.replace(/^\\r?\\n/, \"<br>\") + \"</pre>\";\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.selection_field.innerHTML= content;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tthis.selection_field_text.innerHTML = this.selection_field.innerHTML;\r\n\t\t\t\t\tt2_1 = new Date().getTime();\r\n\t\t\t\t\t// check if we need to update the highlighted background \r\n\t\t\t\t\tif(this.reload_highlight || (infos[\"full_text\"] != this.last_text_to_highlight && (this.last_selection[\"line_start\"]!=infos[\"line_start\"] || this.show_line_colors || this.settings['word_wrap'] || this.last_selection[\"line_nb\"]!=infos[\"line_nb\"] || this.last_selection[\"nb_line\"]!=infos[\"nb_line\"]) ) )\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tthis.maj_highlight(infos);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\t\t\r\n\t\t\t}\r\n\t\t\tt3= new Date().getTime();\r\n\t\t\t\r\n\t\t\t// manage line heights\r\n\t\t\tif( this.settings['word_wrap'] && infos[\"full_text\"] != this.last_selection[\"full_text\"])\r\n\t\t\t{\r\n\t\t\t\t// refresh only 1 line if text change concern only one line and that the total line number has not changed\r\n\t\t\t\tif( changes.newText.split(\"\\n\").length == 1 && this.last_selection['nb_line'] && infos['nb_line'] == this.last_selection['nb_line'] )\r\n\t\t\t\t{\r\n\t\t\t\t\tthis.fixLinesHeight( infos['full_text'], changes.lineStart, changes.lineStart );\r\n\t\t\t\t}\r\n\t\t\t\telse\r\n\t\t\t\t{\r\n\t\t\t\t\tthis.fixLinesHeight( infos['full_text'], changes.lineStart, -1 );\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\r\n\t\t\ttLines= new Date().getTime();\r\n\t\t\t// manage bracket finding\r\n\t\t\tif( infos[\"line_start\"] != this.last_selection[\"line_start\"] || infos[\"curr_pos\"] != this.last_selection[\"curr_pos\"] || infos[\"full_text\"].length!=this.last_selection[\"full_text\"].length || this.reload_highlight || !timer_checkup )\r\n\t\t\t{\r\n\t\t\t\t// move _cursor_pos\r\n\t\t\t\tvar selec_char= infos[\"curr_line\"].charAt(infos[\"curr_pos\"]-1);\r\n\t\t\t\tvar no_real_move=true;\r\n\t\t\t\tif(infos[\"line_nb\"]==1 && (this.assocBracket[selec_char] || this.revertAssocBracket[selec_char]) ){\r\n\t\t\t\t\t\r\n\t\t\t\t\tno_real_move=false;\t\t\t\t\t\r\n\t\t\t\t\t//findEndBracket(infos[\"line_start\"], infos[\"curr_pos\"], selec_char);\r\n\t\t\t\t\tif(this.findEndBracket(infos, selec_char) === true){\r\n\t\t\t\t\t\t_$(\"end_bracket\").style.visibility\t=\"visible\";\r\n\t\t\t\t\t\t_$(\"cursor_pos\").style.visibility\t=\"visible\";\r\n\t\t\t\t\t\t_$(\"cursor_pos\").innerHTML\t\t\t= selec_char;\r\n\t\t\t\t\t\t_$(\"end_bracket\").innerHTML\t\t\t= (this.assocBracket[selec_char] || this.revertAssocBracket[selec_char]);\r\n\t\t\t\t\t}else{\r\n\t\t\t\t\t\t_$(\"end_bracket\").style.visibility\t=\"hidden\";\r\n\t\t\t\t\t\t_$(\"cursor_pos\").style.visibility\t=\"hidden\";\r\n\t\t\t\t\t}\r\n\t\t\t\t}else{\r\n\t\t\t\t\t_$(\"cursor_pos\").style.visibility\t=\"hidden\";\r\n\t\t\t\t\t_$(\"end_bracket\").style.visibility\t=\"hidden\";\r\n\t\t\t\t}\r\n\t\t\t\t//alert(\"move cursor\");\r\n\t\t\t\tthis.displayToCursorPosition(\"cursor_pos\", infos[\"line_start\"], infos[\"curr_pos\"]-1, infos[\"curr_line\"], no_real_move);\r\n\t\t\t\tif(infos[\"line_nb\"]==1 && infos[\"line_start\"]!=this.last_selection[\"line_start\"])\r\n\t\t\t\t\tthis.scroll_to_view();\r\n\t\t\t}\r\n\t\t\tthis.last_selection=infos;\r\n\t\t}\r\n\t\t\r\n\t\ttend= new Date().getTime();\r\n\t\t//if( (tend-t1) > 7 )\r\n\t\t//\tconsole.log( \"tps total: \"+ (tend-t1) + \" tps get_infos: \"+ (t2-t1)+ \" tps selec: \"+ (t2_1-t2)+ \" tps highlight: \"+ (t3-t2_1) +\" tps lines: \"+ (tLines-t3) +\" tps cursor+lines: \"+ (tend-tLines)+\" \\n\" );\r\n\t\t\r\n\t\t\r\n\t\tif(timer_checkup){\r\n\t\t\tsetTimeout(\"editArea.check_line_selection(true)\", this.check_line_selection_timer);\r\n\t\t}\r\n\t};\r\n\r\n\r\n\tEditArea.prototype.get_selection_infos= function(){\r\n\t\tvar sel={}, start, end, len, str;\r\n\t\r\n\t\tthis.getIESelection();\r\n\t\tstart\t= this.textarea.selectionStart;\r\n\t\tend\t\t= this.textarea.selectionEnd;\t\t\r\n\t\t\r\n\t\tif( this.last_selection[\"selectionStart\"] == start && this.last_selection[\"selectionEnd\"] == end && this.last_selection[\"full_text\"] == this.textarea.value )\r\n\t\t{\t\r\n\t\t\treturn this.last_selection;\r\n\t\t}\r\n\t\t\t\r\n\t\tif(this.tabulation!=\"\\t\" && this.textarea.value.indexOf(\"\\t\")!=-1) \r\n\t\t{\t// can append only after copy/paste \r\n\t\t\tlen\t\t= this.textarea.value.length;\r\n\t\t\tthis.textarea.value\t= this.replace_tab(this.textarea.value);\r\n\t\t\tstart\t= end\t= start+(this.textarea.value.length-len);\r\n\t\t\tthis.area_select( start, 0 );\r\n\t\t}\r\n\t\t\r\n\t\tsel[\"selectionStart\"]\t= start;\r\n\t\tsel[\"selectionEnd\"]\t\t= end;\t\t\r\n\t\tsel[\"full_text\"]\t\t= this.textarea.value;\r\n\t\tsel[\"line_start\"]\t\t= 1;\r\n\t\tsel[\"line_nb\"]\t\t\t= 1;\r\n\t\tsel[\"curr_pos\"]\t\t\t= 0;\r\n\t\tsel[\"curr_line\"]\t\t= \"\";\r\n\t\tsel[\"indexOfCursor\"]\t= 0;\r\n\t\tsel[\"selec_direction\"]\t= this.last_selection[\"selec_direction\"];\r\n\r\n\t\t//return sel;\t\r\n\t\tvar splitTab= sel[\"full_text\"].split(\"\\n\");\r\n\t\tvar nbLine\t= Math.max(0, splitTab.length);\t\t\r\n\t\tvar nbChar\t= Math.max(0, sel[\"full_text\"].length - (nbLine - 1));\t// (remove \\n caracters from the count)\r\n\t\tif( sel[\"full_text\"].indexOf(\"\\r\") != -1 )\r\n\t\t\tnbChar\t= nbChar - ( nbLine - 1 );\t\t// (remove \\r caracters from the count)\r\n\t\tsel[\"nb_line\"]\t= nbLine;\t\t\r\n\t\tsel[\"nb_char\"]\t= nbChar;\r\n\t\r\n\t\tif(start>0){\r\n\t\t\tstr\t\t\t\t\t= sel[\"full_text\"].substr(0,start);\r\n\t\t\tsel[\"curr_pos\"]\t\t= start - str.lastIndexOf(\"\\n\");\r\n\t\t\tsel[\"line_start\"]\t= Math.max(1, str.split(\"\\n\").length);\r\n\t\t}else{\r\n\t\t\tsel[\"curr_pos\"]=1;\r\n\t\t}\r\n\t\tif(end>start){\r\n\t\t\tsel[\"line_nb\"]=sel[\"full_text\"].substring(start,end).split(\"\\n\").length;\r\n\t\t}\r\n\t\tsel[\"indexOfCursor\"]=start;\t\t\r\n\t\tsel[\"curr_line\"]=splitTab[Math.max(0,sel[\"line_start\"]-1)];\r\n\t\r\n\t\t// determine in which direction the selection grow\r\n\t\tif(sel[\"selectionStart\"] == this.last_selection[\"selectionStart\"]){\r\n\t\t\tif(sel[\"selectionEnd\"]>this.last_selection[\"selectionEnd\"])\r\n\t\t\t\tsel[\"selec_direction\"]= \"down\";\r\n\t\t\telse if(sel[\"selectionEnd\"] == this.last_selection[\"selectionStart\"])\r\n\t\t\t\tsel[\"selec_direction\"]= this.last_selection[\"selec_direction\"];\r\n\t\t}else if(sel[\"selectionStart\"] == this.last_selection[\"selectionEnd\"] && sel[\"selectionEnd\"]>this.last_selection[\"selectionEnd\"]){\r\n\t\t\tsel[\"selec_direction\"]= \"down\";\r\n\t\t}else{\r\n\t\t\tsel[\"selec_direction\"]= \"up\";\r\n\t\t}\r\n\t\t\r\n\t\t_$(\"nbLine\").innerHTML\t= nbLine;\t\t\r\n\t\t_$(\"nbChar\").innerHTML\t= nbChar;\t\t\r\n\t\t_$(\"linePos\").innerHTML\t= sel[\"line_start\"];\r\n\t\t_$(\"currPos\").innerHTML\t= sel[\"curr_pos\"];\r\n\r\n\t\treturn sel;\t\t\r\n\t};\r\n\t\r\n\t// set IE position in Firefox mode (textarea.selectionStart and textarea.selectionEnd)\r\n\tEditArea.prototype.getIESelection= function(){\r\n\t\tvar selectionStart, selectionEnd, range, stored_range;\r\n\t\t\r\n\t\tif( !this.isIE )\r\n\t\t\treturn false;\r\n\t\t\t\r\n\t\t// make it work as nowrap mode (easier for range manipulation with lineHeight)\r\n\t\tif( this.settings['word_wrap'] )\r\n\t\t\tthis.textarea.wrap='off';\r\n\t\t\t\r\n\t\ttry{\r\n\t\t\trange\t\t\t= document.selection.createRange();\r\n\t\t\tstored_range\t= range.duplicate();\r\n\t\t\tstored_range.moveToElementText( this.textarea );\r\n\t\t\tstored_range.setEndPoint( 'EndToEnd', range );\r\n\t\t\tif( stored_range.parentElement() != this.textarea )\r\n\t\t\t\tthrow \"invalid focus\";\r\n\t\t\t\t\r\n\t\t\t// the range don't take care of empty lines in the end of the selection\r\n\t\t\tvar scrollTop\t= this.result.scrollTop + document.body.scrollTop;\r\n\t\t\tvar relative_top= range.offsetTop - parent.calculeOffsetTop(this.textarea) + scrollTop;\r\n\t\t\tvar line_start\t= Math.round((relative_top / this.lineHeight) +1);\r\n\t\t\tvar line_nb\t\t= Math.round( range.boundingHeight / this.lineHeight );\r\n\t\t\t\t\t\t\r\n\t\t\tselectionStart\t= stored_range.text.length - range.text.length;\t\t\r\n\t\t\tselectionStart\t+= ( line_start - this.textarea.value.substr(0, selectionStart).split(\"\\n\").length)*2;\t\t// count missing empty \\r to the selection\r\n\t\t\tselectionStart\t-= ( line_start - this.textarea.value.substr(0, selectionStart).split(\"\\n\").length ) * 2;\r\n\t\t\t\r\n\t\t\tselectionEnd\t= selectionStart + range.text.length;\t\t\r\n\t\t\tselectionEnd\t+= (line_start + line_nb - 1 - this.textarea.value.substr(0, selectionEnd ).split(\"\\n\").length)*2;\t\t\t\r\n\t\t\r\n\t\t\tthis.textarea.selectionStart\t= selectionStart;\r\n\t\t\tthis.textarea.selectionEnd\t\t= selectionEnd;\r\n\t\t}\r\n\t\tcatch(e){}\r\n\t\t\r\n\t\t// restore wrap mode\r\n\t\tif( this.settings['word_wrap'] )\r\n\t\t\tthis.textarea.wrap='soft';\r\n\t};\r\n\t\r\n\t// select the text for IE (and take care of \\r caracters)\r\n\tEditArea.prototype.setIESelection= function(){\r\n\t\tvar a = this.textarea, nbLineStart, nbLineEnd, range;\r\n\t\t\r\n\t\tif( !this.isIE )\r\n\t\t\treturn false;\r\n\t\t\r\n\t\tnbLineStart\t= a.value.substr(0, a.selectionStart).split(\"\\n\").length - 1;\r\n\t\tnbLineEnd \t= a.value.substr(0, a.selectionEnd).split(\"\\n\").length - 1;\r\n\t\trange\t\t= document.selection.createRange();\r\n\t\trange.moveToElementText( a );\r\n\t\trange.setEndPoint( 'EndToStart', range );\r\n\t\t\r\n\t\trange.moveStart('character', a.selectionStart - nbLineStart);\r\n\t\trange.moveEnd('character', a.selectionEnd - nbLineEnd - (a.selectionStart - nbLineStart)  );\r\n\t\trange.select();\r\n\t};\r\n\t\r\n\t\r\n\t\r\n\tEditArea.prototype.checkTextEvolution=function(lastText,newText){\r\n\t\t// ch will contain changes datas\r\n\t\tvar ch={},baseStep=200, cpt=0, end, step,tStart=new Date().getTime();\r\n\t\r\n\t\tend\t\t= Math.min(newText.length, lastText.length);\r\n        step\t= baseStep;\r\n        // find how many chars are similar at the begin of the text\t\t\t\t\t\t\r\n\t\twhile( cpt<end && step>=1 ){\r\n            if(lastText.substr(cpt, step) == newText.substr(cpt, step)){\r\n                cpt+= step;\r\n            }else{\r\n                step= Math.floor(step/2);\r\n            }\r\n\t\t}\r\n\t\t\r\n\t\tch.posStart\t= cpt;\r\n\t\tch.lineStart= newText.substr(0, ch.posStart).split(\"\\n\").length -1;\t\t\t\t\t\t\r\n\t\t\r\n\t\tcpt_last\t= lastText.length;\r\n        cpt\t\t\t= newText.length;\r\n        step\t\t= baseStep;\t\t\t\r\n        // find how many chars are similar at the end of the text\t\t\t\t\t\t\r\n\t\twhile( cpt>=0 && cpt_last>=0 && step>=1 ){\r\n            if(lastText.substr(cpt_last-step, step) == newText.substr(cpt-step, step)){\r\n                cpt-= step;\r\n                cpt_last-= step;\r\n            }else{\r\n                step= Math.floor(step/2);\r\n            }\r\n\t\t}\r\n\t\t\r\n\t\tch.posNewEnd\t= cpt;\r\n\t\tch.posLastEnd\t= cpt_last;\r\n\t\tif(ch.posNewEnd<=ch.posStart){\r\n\t\t\tif(lastText.length < newText.length){\r\n\t\t\t\tch.posNewEnd= ch.posStart + newText.length - lastText.length;\r\n\t\t\t\tch.posLastEnd= ch.posStart;\r\n\t\t\t}else{\r\n\t\t\t\tch.posLastEnd= ch.posStart + lastText.length - newText.length;\r\n\t\t\t\tch.posNewEnd= ch.posStart;\r\n\t\t\t}\r\n\t\t} \r\n\t\tch.newText\t\t= newText.substring(ch.posStart, ch.posNewEnd);\r\n\t\tch.lastText\t\t= lastText.substring(ch.posStart, ch.posLastEnd);\t\t\t            \r\n\t\t\r\n\t\tch.lineNewEnd\t= newText.substr(0, ch.posNewEnd).split(\"\\n\").length -1;\r\n\t\tch.lineLastEnd\t= lastText.substr(0, ch.posLastEnd).split(\"\\n\").length -1;\r\n\t\t\r\n\t\tch.newTextLine\t= newText.split(\"\\n\").slice(ch.lineStart, ch.lineNewEnd+1).join(\"\\n\");\r\n\t\tch.lastTextLine\t= lastText.split(\"\\n\").slice(ch.lineStart, ch.lineLastEnd+1).join(\"\\n\");\r\n\t\t//console.log( ch );\r\n\t\treturn ch;\t\r\n\t};\r\n\t\r\n\tEditArea.prototype.tab_selection= function(){\r\n\t\tif(this.is_tabbing)\r\n\t\t\treturn;\r\n\t\tthis.is_tabbing=true;\r\n\t\t//infos=getSelectionInfos();\r\n\t\t//if( document.selection ){\r\n\t\tthis.getIESelection();\r\n\t\t/* Insertion du code de formatage */\r\n\t\tvar start = this.textarea.selectionStart;\r\n\t\tvar end = this.textarea.selectionEnd;\r\n\t\tvar insText = this.textarea.value.substring(start, end);\r\n\t\t\r\n\t\t/* Insert tabulation and ajust cursor position */\r\n\t\tvar pos_start=start;\r\n\t\tvar pos_end=end;\r\n\t\tif (insText.length == 0) {\r\n\t\t\t// if only one line selected\r\n\t\t\tthis.textarea.value = this.textarea.value.substr(0, start) + this.tabulation + this.textarea.value.substr(end);\r\n\t\t\tpos_start = start + this.tabulation.length;\r\n\t\t\tpos_end=pos_start;\r\n\t\t} else {\r\n\t\t\tstart= Math.max(0, this.textarea.value.substr(0, start).lastIndexOf(\"\\n\")+1);\r\n\t\t\tendText=this.textarea.value.substr(end);\r\n\t\t\tstartText=this.textarea.value.substr(0, start);\r\n\t\t\ttmp= this.textarea.value.substring(start, end).split(\"\\n\");\r\n\t\t\tinsText= this.tabulation+tmp.join(\"\\n\"+this.tabulation);\r\n\t\t\tthis.textarea.value = startText + insText + endText;\r\n\t\t\tpos_start = start;\r\n\t\t\tpos_end= this.textarea.value.indexOf(\"\\n\", startText.length + insText.length);\r\n\t\t\tif(pos_end==-1)\r\n\t\t\t\tpos_end=this.textarea.value.length;\r\n\t\t\t//pos = start + repdeb.length + insText.length + ;\r\n\t\t}\r\n\t\tthis.textarea.selectionStart = pos_start;\r\n\t\tthis.textarea.selectionEnd = pos_end;\r\n\t\t\r\n\t\t//if( document.selection ){\r\n\t\tif(this.isIE)\r\n\t\t{\r\n\t\t\tthis.setIESelection();\r\n\t\t\tsetTimeout(\"editArea.is_tabbing=false;\", 100);\t// IE can't accept to make 2 tabulation without a little break between both\r\n\t\t}\r\n\t\telse\r\n\t\t{ \r\n\t\t\tthis.is_tabbing=false;\r\n\t\t}\t\r\n\t\t\r\n  \t};\r\n\t\r\n\tEditArea.prototype.invert_tab_selection= function(){\r\n\t\tvar t=this, a=this.textarea;\r\n\t\tif(t.is_tabbing)\r\n\t\t\treturn;\r\n\t\tt.is_tabbing=true;\r\n\t\t//infos=getSelectionInfos();\r\n\t\t//if( document.selection ){\r\n\t\tt.getIESelection();\r\n\t\t\r\n\t\tvar start\t= a.selectionStart;\r\n\t\tvar end\t\t= a.selectionEnd;\r\n\t\tvar insText\t= a.value.substring(start, end);\r\n\t\t\r\n\t\t/* Tab remove and cursor seleciton adjust */\r\n\t\tvar pos_start=start;\r\n\t\tvar pos_end=end;\r\n\t\tif (insText.length == 0) {\r\n\t\t\tif(a.value.substring(start-t.tabulation.length, start)==t.tabulation)\r\n\t\t\t{\r\n\t\t\t\ta.value\t\t= a.value.substr(0, start-t.tabulation.length) + a.value.substr(end);\r\n\t\t\t\tpos_start\t= Math.max(0, start-t.tabulation.length);\r\n\t\t\t\tpos_end\t\t= pos_start;\r\n\t\t\t}\t\r\n\t\t\t/*\r\n\t\t\ta.value = a.value.substr(0, start) + t.tabulation + insText + a.value.substr(end);\r\n\t\t\tpos_start = start + t.tabulation.length;\r\n\t\t\tpos_end=pos_start;*/\r\n\t\t} else {\r\n\t\t\tstart\t\t= a.value.substr(0, start).lastIndexOf(\"\\n\")+1;\r\n\t\t\tendText\t\t= a.value.substr(end);\r\n\t\t\tstartText\t= a.value.substr(0, start);\r\n\t\t\ttmp\t\t\t= a.value.substring(start, end).split(\"\\n\");\r\n\t\t\tinsText\t\t= \"\";\r\n\t\t\tfor(i=0; i<tmp.length; i++){\t\t\t\t\r\n\t\t\t\tfor(j=0; j<t.tab_nb_char; j++){\r\n\t\t\t\t\tif(tmp[i].charAt(0)==\"\\t\"){\r\n\t\t\t\t\t\ttmp[i]=tmp[i].substr(1);\r\n\t\t\t\t\t\tj=t.tab_nb_char;\r\n\t\t\t\t\t}else if(tmp[i].charAt(0)==\" \")\r\n\t\t\t\t\t\ttmp[i]=tmp[i].substr(1);\r\n\t\t\t\t}\t\t\r\n\t\t\t\tinsText+=tmp[i];\r\n\t\t\t\tif(i<tmp.length-1)\r\n\t\t\t\t\tinsText+=\"\\n\";\r\n\t\t\t}\r\n\t\t\t//insText+=\"_\";\r\n\t\t\ta.value\t\t= startText + insText + endText;\r\n\t\t\tpos_start\t= start;\r\n\t\t\tpos_end\t\t= a.value.indexOf(\"\\n\", startText.length + insText.length);\r\n\t\t\tif(pos_end==-1)\r\n\t\t\t\tpos_end=a.value.length;\r\n\t\t\t//pos = start + repdeb.length + insText.length + ;\r\n\t\t}\r\n\t\ta.selectionStart = pos_start;\r\n\t\ta.selectionEnd = pos_end;\r\n\t\t\r\n\t\t//if( document.selection ){\r\n\t\tif(t.isIE){\r\n\t\t\t// select the text for IE\r\n\t\t\tt.setIESelection();\r\n\t\t\tsetTimeout(\"editArea.is_tabbing=false;\", 100);\t// IE can accept to make 2 tabulation without a little break between both\r\n\t\t}else\r\n\t\t\tt.is_tabbing=false;\r\n  \t};\r\n\t\r\n\tEditArea.prototype.press_enter= function(){\t\t\r\n\t\tif(!this.smooth_selection)\r\n\t\t\treturn false;\r\n\t\tthis.getIESelection();\r\n\t\tvar scrollTop= this.result.scrollTop;\r\n\t\tvar scrollLeft= this.result.scrollLeft;\r\n\t\tvar start=this.textarea.selectionStart;\r\n\t\tvar end= this.textarea.selectionEnd;\r\n\t\tvar start_last_line= Math.max(0 , this.textarea.value.substring(0, start).lastIndexOf(\"\\n\") + 1 );\r\n\t\tvar begin_line= this.textarea.value.substring(start_last_line, start).replace(/^([ \\t]*).*/gm, \"$1\");\r\n\t\tvar lineStart = this.textarea.value.substring(0, start).split(\"\\n\").length;\r\n\t\tif(begin_line==\"\\n\" || begin_line==\"\\r\" || begin_line.length==0)\r\n\t\t{\r\n\t\t\treturn false;\r\n\t\t}\r\n\t\t\t\r\n\t\tif(this.isIE || ( this.isOpera && this.isOpera < 9.6 ) ){\r\n\t\t\tbegin_line=\"\\r\\n\"+ begin_line;\r\n\t\t}else{\r\n\t\t\tbegin_line=\"\\n\"+ begin_line;\r\n\t\t}\t\r\n\t\t//alert(start_last_line+\" strat: \"+start +\"\\n\"+this.textarea.value.substring(start_last_line, start)+\"\\n_\"+begin_line+\"_\")\r\n\t\tthis.textarea.value= this.textarea.value.substring(0, start) + begin_line + this.textarea.value.substring(end);\r\n\t\t\r\n\t\tthis.area_select(start+ begin_line.length ,0);\r\n\t\t// during this process IE scroll back to the top of the textarea\r\n\t\tif(this.isIE){\r\n\t\t\tthis.result.scrollTop\t= scrollTop;\r\n\t\t\tthis.result.scrollLeft\t= scrollLeft;\r\n\t\t}\r\n\t\treturn true;\r\n\t\t\r\n\t};\r\n\t\r\n\tEditArea.prototype.findEndBracket= function(infos, bracket){\r\n\t\t\t\r\n\t\tvar start=infos[\"indexOfCursor\"];\r\n\t\tvar normal_order=true;\r\n\t\t//curr_text=infos[\"full_text\"].split(\"\\n\");\r\n\t\tif(this.assocBracket[bracket])\r\n\t\t\tendBracket=this.assocBracket[bracket];\r\n\t\telse if(this.revertAssocBracket[bracket]){\r\n\t\t\tendBracket=this.revertAssocBracket[bracket];\r\n\t\t\tnormal_order=false;\r\n\t\t}\t\r\n\t\tvar end=-1;\r\n\t\tvar nbBracketOpen=0;\r\n\t\t\r\n\t\tfor(var i=start; i<infos[\"full_text\"].length && i>=0; ){\r\n\t\t\tif(infos[\"full_text\"].charAt(i)==endBracket){\t\t\t\t\r\n\t\t\t\tnbBracketOpen--;\r\n\t\t\t\tif(nbBracketOpen<=0){\r\n\t\t\t\t\t//i=infos[\"full_text\"].length;\r\n\t\t\t\t\tend=i;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}else if(infos[\"full_text\"].charAt(i)==bracket)\r\n\t\t\t\tnbBracketOpen++;\r\n\t\t\tif(normal_order)\r\n\t\t\t\ti++;\r\n\t\t\telse\r\n\t\t\t\ti--;\r\n\t\t}\r\n\t\t\r\n\t\t//end=infos[\"full_text\"].indexOf(\"}\", start);\r\n\t\tif(end==-1)\r\n\t\t\treturn false;\t\r\n\t\tvar endLastLine=infos[\"full_text\"].substr(0, end).lastIndexOf(\"\\n\");\t\t\t\r\n\t\tif(endLastLine==-1)\r\n\t\t\tline=1;\r\n\t\telse\r\n\t\t\tline= infos[\"full_text\"].substr(0, endLastLine).split(\"\\n\").length + 1;\r\n\t\t\t\t\t\r\n\t\tvar curPos= end - endLastLine - 1;\r\n\t\tvar endLineLength\t= infos[\"full_text\"].substring(end).split(\"\\n\")[0].length;\r\n\t\tthis.displayToCursorPosition(\"end_bracket\", line, curPos, infos[\"full_text\"].substring(endLastLine +1, end + endLineLength));\r\n\t\treturn true;\r\n\t};\r\n\t\r\n\tEditArea.prototype.displayToCursorPosition= function(id, start_line, cur_pos, lineContent, no_real_move){\r\n\t\tvar elem,dest,content,posLeft=0,posTop,fixPadding,topOffset,endElem;\t\r\n\r\n\t\telem\t\t= this.test_font_size;\r\n\t\tdest\t\t= _$(id);\r\n\t\tcontent\t\t= \"<span id='test_font_size_inner'>\"+lineContent.substr(0, cur_pos).replace(/&/g,\"&amp;\").replace(/</g,\"&lt;\")+\"</span><span id='endTestFont'>\"+lineContent.substr(cur_pos).replace(/&/g,\"&amp;\").replace(/</g,\"&lt;\")+\"</span>\";\r\n\t\tif( this.isIE || ( this.isOpera && this.isOpera < 9.6 ) ) {\r\n\t\t\telem.innerHTML= \"<pre>\" + content.replace(/^\\r?\\n/, \"<br>\") + \"</pre>\";\r\n\t\t} else {\r\n\t\t\telem.innerHTML= content;\r\n\t\t}\r\n\t\t\r\n\r\n\t\tendElem\t\t= _$('endTestFont');\r\n\t\ttopOffset\t= endElem.offsetTop;\r\n\t\tfixPadding\t= parseInt( this.content_highlight.style.paddingLeft.replace(\"px\", \"\") );\r\n\t\tposLeft \t= 45 + endElem.offsetLeft + ( !isNaN( fixPadding ) && topOffset > 0 ? fixPadding : 0 );\r\n\t\tposTop\t\t= this.getLinePosTop( start_line ) + topOffset;// + Math.floor( ( endElem.offsetHeight - 1 ) / this.lineHeight ) * this.lineHeight;\r\n\t\r\n\t\t// detect the case where the span start on a line but has no display on it\r\n\t\tif( this.isIE && cur_pos > 0 && endElem.offsetLeft == 0 )\r\n\t\t{\r\n\t\t\tposTop\t+=\tthis.lineHeight;\r\n\t\t}\r\n\t\tif(no_real_move!=true){\t// when the cursor is hidden no need to move him\r\n\t\t\tdest.style.top=posTop+\"px\";\r\n\t\t\tdest.style.left=posLeft+\"px\";\t\r\n\t\t}\r\n\t\t// usefull for smarter scroll\r\n\t\tdest.cursor_top=posTop;\r\n\t\tdest.cursor_left=posLeft;\t\r\n\t//\t_$(id).style.marginLeft=posLeft+\"px\";\r\n\t};\r\n\t\r\n\tEditArea.prototype.getLinePosTop= function(start_line){\r\n\t\tvar elem= _$('line_'+ start_line), posTop=0;\r\n\t\tif( elem )\r\n\t\t\tposTop\t= elem.offsetTop;\r\n\t\telse\r\n\t\t\tposTop\t= this.lineHeight * (start_line-1);\r\n\t\treturn posTop;\r\n\t};\r\n\t\r\n\t\r\n\t// return the dislpayed height of a text (take word-wrap into account)\r\n\tEditArea.prototype.getTextHeight= function(text){\r\n\t\tvar t=this,elem,height;\r\n\t\telem\t\t= t.test_font_size;\r\n\t\tcontent\t\t= text.replace(/&/g,\"&amp;\").replace(/</g,\"&lt;\");\r\n\t\tif( t.isIE || ( this.isOpera && this.isOpera < 9.6 ) ) {\r\n\t\t\telem.innerHTML= \"<pre>\" + content.replace(/^\\r?\\n/, \"<br>\") + \"</pre>\";\r\n\t\t} else {\r\n\t\t\telem.innerHTML= content;\r\n\t\t}\r\n\t\theight\t= elem.offsetHeight;\r\n\t\theight\t= Math.max( 1, Math.floor( elem.offsetHeight / this.lineHeight ) ) * this.lineHeight;\r\n\t\treturn height;\r\n\t};\r\n\r\n\t/**\r\n\t * Fix line height for the given lines\r\n\t * @param Integer linestart\r\n\t * @param Integer lineEnd End line or -1 to cover all lines\r\n\t */\r\n\tEditArea.prototype.fixLinesHeight= function( textValue, lineStart,lineEnd ){\r\n\t\tvar aText = textValue.split(\"\\n\");\r\n\t\tif( lineEnd == -1 )\r\n\t\t\tlineEnd\t= aText.length-1;\r\n\t\tfor( var i = Math.max(0, lineStart); i <= lineEnd; i++ )\r\n\t\t{\r\n\t\t\tif( elem = _$('line_'+ ( i+1 ) ) )\r\n\t\t\t{\r\n\t\t\t\telem.style.height= typeof( aText[i] ) != \"undefined\" ? this.getTextHeight( aText[i] )+\"px\" : this.lineHeight;\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\t\r\n\tEditArea.prototype.area_select= function(start, length){\r\n\t\tthis.textarea.focus();\r\n\t\t\r\n\t\tstart\t= Math.max(0, Math.min(this.textarea.value.length, start));\r\n\t\tend\t\t= Math.max(start, Math.min(this.textarea.value.length, start+length));\r\n\r\n\t\tif(this.isIE)\r\n\t\t{\r\n\t\t\tthis.textarea.selectionStart\t= start;\r\n\t\t\tthis.textarea.selectionEnd\t\t= end;\t\t\r\n\t\t\tthis.setIESelection();\r\n\t\t}\r\n\t\telse\r\n\t\t{\r\n\t\t\t// Opera bug when moving selection start and selection end\r\n\t\t\tif(this.isOpera && this.isOpera < 9.6 )\r\n\t\t\t{\t\r\n\t\t\t\tthis.textarea.setSelectionRange(0, 0);\r\n\t\t\t}\r\n\t\t\tthis.textarea.setSelectionRange(start, end);\r\n\t\t}\r\n\t\tthis.check_line_selection();\r\n\t};\r\n\t\r\n\t\r\n\tEditArea.prototype.area_get_selection= function(){\r\n\t\tvar text=\"\";\r\n\t\tif( document.selection ){\r\n\t\t\tvar range = document.selection.createRange();\r\n\t\t\ttext=range.text;\r\n\t\t}else{\r\n\t\t\ttext= this.textarea.value.substring(this.textarea.selectionStart, this.textarea.selectionEnd);\r\n\t\t}\r\n\t\treturn text;\t\t\t\r\n\t};"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/charmap/charmap.js",
    "content": "/**\r\n * Charmap plugin\r\n * by Christophe Dolivet\r\n * v0.1 (2006/09/22)\r\n * \r\n *    \r\n * This plugin allow to use a visual keyboard allowing to insert any UTF-8 characters in the text.\r\n * \r\n * - plugin name to add to the plugin list: \"charmap\"\r\n * - plugin name to add to the toolbar list: \"charmap\" \r\n * - possible parameters to add to EditAreaLoader.init(): \r\n * \t\t\"charmap_default\": (String) define the name of the default character range displayed on popup display\r\n * \t\t\t\t\t\t\t(default: \"arrows\")\r\n * \r\n * \r\n */\r\n   \r\nvar EditArea_charmap= {\r\n\t/**\r\n\t * Get called once this file is loaded (editArea still not initialized)\r\n\t *\r\n\t * @return nothing\t \r\n\t */\t \t \t\r\n\tinit: function(){\t\r\n\t\tthis.default_language=\"Arrows\";\r\n\t}\r\n\t\r\n\t/**\r\n\t * Returns the HTML code for a specific control string or false if this plugin doesn't have that control.\r\n\t * A control can be a button, select list or any other HTML item to present in the EditArea user interface.\r\n\t * Language variables such as {$lang_somekey} will also be replaced with contents from\r\n\t * the language packs.\r\n\t * \r\n\t * @param {string} ctrl_name: the name of the control to add\t  \r\n\t * @return HTML code for a specific control or false.\r\n\t * @type string\tor boolean\r\n\t */\t\r\n\t,get_control_html: function(ctrl_name){\r\n\t\tswitch(ctrl_name){\r\n\t\t\tcase \"charmap\":\r\n\t\t\t\t// Control id, button img, command\r\n\t\t\t\treturn parent.editAreaLoader.get_button_html('charmap_but', 'charmap.gif', 'charmap_press', false, this.baseURL);\r\n\t\t}\r\n\t\treturn false;\r\n\t}\r\n\t/**\r\n\t * Get called once EditArea is fully loaded and initialised\r\n\t *\t \r\n\t * @return nothing\r\n\t */\t \t \t\r\n\t,onload: function(){ \r\n\t\tif(editArea.settings[\"charmap_default\"] && editArea.settings[\"charmap_default\"].length>0)\r\n\t\t\tthis.default_language= editArea.settings[\"charmap_default\"];\r\n\t}\r\n\t\r\n\t/**\r\n\t * Is called each time the user touch a keyboard key.\r\n\t *\t \r\n\t * @param (event) e: the keydown event\r\n\t * @return true - pass to next handler in chain, false - stop chain execution\r\n\t * @type boolean\t \r\n\t */\r\n\t,onkeydown: function(e){\r\n\t\t\r\n\t}\r\n\t\r\n\t/**\r\n\t * Executes a specific command, this function handles plugin commands.\r\n\t *\r\n\t * @param {string} cmd: the name of the command being executed\r\n\t * @param {unknown} param: the parameter of the command\t \r\n\t * @return true - pass to next handler in chain, false - stop chain execution\r\n\t * @type boolean\t\r\n\t */\r\n\t,execCommand: function(cmd, param){\r\n\t\t// Handle commands\r\n\t\tswitch(cmd){\r\n\t\t\tcase \"charmap_press\":\r\n\t\t\t\twin= window.open(this.baseURL+\"popup.html\", \"charmap\", \"width=500,height=270,scrollbars=yes,resizable=yes\");\r\n\t\t\t\twin.focus();\r\n\t\t\t\treturn false;\r\n\t\t}\r\n\t\t// Pass to next handler in chain\r\n\t\treturn true;\r\n\t}\r\n\t\r\n};\r\n\r\n// Adds the plugin class to the list of available EditArea plugins\r\neditArea.add_plugin(\"charmap\", EditArea_charmap);\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/charmap/css/charmap.css",
    "content": "body{\r\n\tbackground-color: #F0F0EE; \r\n\tfont: 12px monospace, sans-serif;\r\n}\r\n\r\nselect{\r\n\tbackground-color: #F9F9F9;\r\n\tborder: solid 1px #888888;\r\n}\r\n\r\nh1, h2, h3, h4, h5, h6{\r\n\tmargin: 0;\r\n\tpadding: 0;\r\n\tcolor: #2B6FB6;\r\n}\r\n\r\nh1{\r\n\tfont-size: 1.5em;\r\n}\r\n\r\ndiv#char_list{\r\n\theight: 200px;\r\n\toverflow: auto;\r\n\tpadding: 1px;\r\n\tborder: 1px solid #0A246A;\r\n\tbackground-color: #F9F9F9;\r\n\tclear: both;\r\n\tmargin-top: 5px;\r\n}\r\n\r\na.char{\r\n\tdisplay: block;\r\n\tfloat: left;\r\n\twidth: 20px;\r\n\theight: 20px;\r\n\tline-height: 20px;\r\n\tmargin: 1px;\r\n\tborder: solid 1px #888888;\r\n\ttext-align: center;\r\n\tcursor: pointer;\r\n}\r\n\r\na.char:hover{\r\n\tbackground-color: #CCCCCC;\r\n}\r\n\r\n.preview{\r\n\tborder: solid 1px #888888;\r\n\twidth: 50px;\r\n\tpadding: 2px 5px;\r\n\theight: 35px;\r\n\tline-height: 35px;\r\n\ttext-align:center;\t \r\n\tbackground-color: #CCCCCC;\r\n\tfont-size: 2em;\r\n\tfloat: right;\r\n\tfont-weight: bold;\r\n\tmargin: 0 0 5px 5px;\r\n}\r\n\r\n#preview_code{\r\n\tfont-size: 1.1em;\r\n\twidth: 70px;\r\n}\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/charmap/jscripts/map.js",
    "content": "var editArea;\r\n\r\n\r\n/**\r\n *  UTF-8 list taken from http://www.utf8-chartable.de/unicode-utf8-table.pl?utf8=dec \r\n */  \r\n \r\n\r\n/*\r\nvar char_range_list={\r\n\"Basic Latin\":\"0021,007F\",\r\n\"Latin-1 Supplement\":\"0080,00FF\",\r\n\"Latin Extended-A\":\"0100,017F\",\r\n\"Latin Extended-B\":\"0180,024F\",\r\n\"IPA Extensions\":\"0250,02AF\",\r\n\"Spacing Modifier Letters\":\"02B0,02FF\",\r\n\r\n\"Combining Diacritical Marks\":\"0300,036F\",\r\n\"Greek and Coptic\":\"0370,03FF\",\r\n\"Cyrillic\":\"0400,04FF\",\r\n\"Cyrillic Supplement\":\"0500,052F\",\r\n\"Armenian\":\"0530,058F\",\r\n\"Hebrew\":\"0590,05FF\",\r\n\"Arabic\":\"0600,06FF\",\r\n\"Syriac\":\"0700,074F\",\r\n\"Arabic Supplement\":\"0750,077F\",\r\n\r\n\"Thaana\":\"0780,07BF\",\r\n\"Devanagari\":\"0900,097F\",\r\n\"Bengali\":\"0980,09FF\",\r\n\"Gurmukhi\":\"0A00,0A7F\",\r\n\"Gujarati\":\"0A80,0AFF\",\r\n\"Oriya\":\"0B00,0B7F\",\r\n\"Tamil\":\"0B80,0BFF\",\r\n\"Telugu\":\"0C00,0C7F\",\r\n\"Kannada\":\"0C80,0CFF\",\r\n\r\n\"Malayalam\":\"0D00,0D7F\",\r\n\"Sinhala\":\"0D80,0DFF\",\r\n\"Thai\":\"0E00,0E7F\",\r\n\"Lao\":\"0E80,0EFF\",\r\n\"Tibetan\":\"0F00,0FFF\",\r\n\"Myanmar\":\"1000,109F\",\r\n\"Georgian\":\"10A0,10FF\",\r\n\"Hangul Jamo\":\"1100,11FF\",\r\n\"Ethiopic\":\"1200,137F\",\r\n\r\n\"Ethiopic Supplement\":\"1380,139F\",\r\n\"Cherokee\":\"13A0,13FF\",\r\n\"Unified Canadian Aboriginal Syllabics\":\"1400,167F\",\r\n\"Ogham\":\"1680,169F\",\r\n\"Runic\":\"16A0,16FF\",\r\n\"Tagalog\":\"1700,171F\",\r\n\"Hanunoo\":\"1720,173F\",\r\n\"Buhid\":\"1740,175F\",\r\n\"Tagbanwa\":\"1760,177F\",\r\n\r\n\"Khmer\":\"1780,17FF\",\r\n\"Mongolian\":\"1800,18AF\",\r\n\"Limbu\":\"1900,194F\",\r\n\"Tai Le\":\"1950,197F\",\r\n\"New Tai Lue\":\"1980,19DF\",\r\n\"Khmer Symbols\":\"19E0,19FF\",\r\n\"Buginese\":\"1A00,1A1F\",\r\n\"Phonetic Extensions\":\"1D00,1D7F\",\r\n\"Phonetic Extensions Supplement\":\"1D80,1DBF\",\r\n\r\n\"Combining Diacritical Marks Supplement\":\"1DC0,1DFF\",\r\n\"Latin Extended Additional\":\"1E00,1EFF\",\r\n\"Greek Extended\":\"1F00,1FFF\",\r\n\"General Punctuation\":\"2000,206F\",\r\n\"Superscripts and Subscripts\":\"2070,209F\",\r\n\"Currency Symbols\":\"20A0,20CF\",\r\n\"Combining Diacritical Marks for Symbols\":\"20D0,20FF\",\r\n\"Letterlike Symbols\":\"2100,214F\",\r\n\"Number Forms\":\"2150,218F\",\r\n\r\n\"Arrows\":\"2190,21FF\",\r\n\"Mathematical Operators\":\"2200,22FF\",\r\n\"Miscellaneous Technical\":\"2300,23FF\",\r\n\"Control Pictures\":\"2400,243F\",\r\n\"Optical Character Recognition\":\"2440,245F\",\r\n\"Enclosed Alphanumerics\":\"2460,24FF\",\r\n\"Box Drawing\":\"2500,257F\",\r\n\"Block Elements\":\"2580,259F\",\r\n\"Geometric Shapes\":\"25A0,25FF\",\r\n\r\n\"Miscellaneous Symbols\":\"2600,26FF\",\r\n\"Dingbats\":\"2700,27BF\",\r\n\"Miscellaneous Mathematical Symbols-A\":\"27C0,27EF\",\r\n\"Supplemental Arrows-A\":\"27F0,27FF\",\r\n\"Braille Patterns\":\"2800,28FF\",\r\n\"Supplemental Arrows-B\":\"2900,297F\",\r\n\"Miscellaneous Mathematical Symbols-B\":\"2980,29FF\",\r\n\"Supplemental Mathematical Operators\":\"2A00,2AFF\",\r\n\"Miscellaneous Symbols and Arrows\":\"2B00,2BFF\",\r\n\r\n\"Glagolitic\":\"2C00,2C5F\",\r\n\"Coptic\":\"2C80,2CFF\",\r\n\"Georgian Supplement\":\"2D00,2D2F\",\r\n\"Tifinagh\":\"2D30,2D7F\",\r\n\"Ethiopic Extended\":\"2D80,2DDF\",\r\n\"Supplemental Punctuation\":\"2E00,2E7F\",\r\n\"CJK Radicals Supplement\":\"2E80,2EFF\",\r\n\"Kangxi Radicals\":\"2F00,2FDF\",\r\n\"Ideographic Description Characters\":\"2FF0,2FFF\",\r\n\r\n\"CJK Symbols and Punctuation\":\"3000,303F\",\r\n\"Hiragana\":\"3040,309F\",\r\n\"Katakana\":\"30A0,30FF\",\r\n\"Bopomofo\":\"3100,312F\",\r\n\"Hangul Compatibility Jamo\":\"3130,318F\",\r\n\"Kanbun\":\"3190,319F\",\r\n\"Bopomofo Extended\":\"31A0,31BF\",\r\n\"CJK Strokes\":\"31C0,31EF\",\r\n\"Katakana Phonetic Extensions\":\"31F0,31FF\",\r\n\r\n\"Enclosed CJK Letters and Months\":\"3200,32FF\",\r\n\"CJK Compatibility\":\"3300,33FF\",\r\n\"CJK Unified Ideographs Extension A\":\"3400,4DBF\",\r\n\"Yijing Hexagram Symbols\":\"4DC0,4DFF\",\r\n\"CJK Unified Ideographs\":\"4E00,9FFF\",\r\n\"Yi Syllables\":\"A000,A48F\",\r\n\"Yi Radicals\":\"A490,A4CF\",\r\n\"Modifier Tone Letters\":\"A700,A71F\",\r\n\"Syloti Nagri\":\"A800,A82F\",\r\n\r\n\"Hangul Syllables\":\"AC00,D7AF\",\r\n\"High Surrogates\":\"D800,DB7F\",\r\n\"High Private Use Surrogates\":\"DB80,DBFF\",\r\n\"Low Surrogates\":\"DC00,DFFF\",\r\n\"Private Use Area\":\"E000,F8FF\",\r\n\"CJK Compatibility Ideographs\":\"F900,FAFF\",\r\n\"Alphabetic Presentation Forms\":\"FB00,FB4F\",\r\n\"Arabic Presentation Forms-A\":\"FB50,FDFF\",\r\n\"Variation Selectors\":\"FE00,FE0F\",\r\n\r\n\"Vertical Forms\":\"FE10,FE1F\",\r\n\"Combining Half Marks\":\"FE20,FE2F\",\r\n\"CJK Compatibility Forms\":\"FE30,FE4F\",\r\n\"Small Form Variants\":\"FE50,FE6F\",\r\n\"Arabic Presentation Forms-B\":\"FE70,FEFF\",\r\n\"Halfwidth and Fullwidth Forms\":\"FF00,FFEF\",\r\n\"Specials\":\"FFF0,FFFF\",\r\n\"Linear B Syllabary\":\"10000,1007F\",\r\n\"Linear B Ideograms\":\"10080,100FF\",\r\n\r\n\"Aegean Numbers\":\"10100,1013F\",\r\n\"Ancient Greek Numbers\":\"10140,1018F\",\r\n\"Old Italic\":\"10300,1032F\",\r\n\"Gothic\":\"10330,1034F\",\r\n\"Ugaritic\":\"10380,1039F\",\r\n\"Old Persian\":\"103A0,103DF\",\r\n\"Deseret\":\"10400,1044F\",\r\n\"Shavian\":\"10450,1047F\",\r\n\"Osmanya\":\"10480,104AF\",\r\n\r\n\"Cypriot Syllabary\":\"10800,1083F\",\r\n\"Kharoshthi\":\"10A00,10A5F\",\r\n\"Byzantine Musical Symbols\":\"1D000,1D0FF\",\r\n\"Musical Symbols\":\"1D100,1D1FF\",\r\n\"Ancient Greek Musical Notation\":\"1D200,1D24F\",\r\n\"Tai Xuan Jing Symbols\":\"1D300,1D35F\",\r\n\"Mathematical Alphanumeric Symbols\":\"1D400,1D7FF\",\r\n\"CJK Unified Ideographs Extension B\":\"20000,2A6DF\",\r\n\"CJK Compatibility Ideographs Supplement\":\"2F800,2FA1F\",\r\n\"Tags\":\"E0000,E007F\",\r\n\"Variation Selectors Supplement\":\"E0100,E01EF\"\r\n};\r\n*/\r\nvar char_range_list={\r\n\"Aegean Numbers\":\"10100,1013F\",\r\n\"Alphabetic Presentation Forms\":\"FB00,FB4F\",\r\n\"Ancient Greek Musical Notation\":\"1D200,1D24F\",\r\n\"Ancient Greek Numbers\":\"10140,1018F\",\r\n\"Arabic\":\"0600,06FF\",\r\n\"Arabic Presentation Forms-A\":\"FB50,FDFF\",\r\n\"Arabic Presentation Forms-B\":\"FE70,FEFF\",\r\n\"Arabic Supplement\":\"0750,077F\",\r\n\"Armenian\":\"0530,058F\",\r\n\"Arrows\":\"2190,21FF\",\r\n\"Basic Latin\":\"0020,007F\",\r\n\"Bengali\":\"0980,09FF\",\r\n\"Block Elements\":\"2580,259F\",\r\n\"Bopomofo Extended\":\"31A0,31BF\",\r\n\"Bopomofo\":\"3100,312F\",\r\n\"Box Drawing\":\"2500,257F\",\r\n\"Braille Patterns\":\"2800,28FF\",\r\n\"Buginese\":\"1A00,1A1F\",\r\n\"Buhid\":\"1740,175F\",\r\n\"Byzantine Musical Symbols\":\"1D000,1D0FF\",\r\n\"CJK Compatibility Forms\":\"FE30,FE4F\",\r\n\"CJK Compatibility Ideographs Supplement\":\"2F800,2FA1F\",\r\n\"CJK Compatibility Ideographs\":\"F900,FAFF\",\r\n\"CJK Compatibility\":\"3300,33FF\",\r\n\"CJK Radicals Supplement\":\"2E80,2EFF\",\r\n\"CJK Strokes\":\"31C0,31EF\",\r\n\"CJK Symbols and Punctuation\":\"3000,303F\",\r\n\"CJK Unified Ideographs Extension A\":\"3400,4DBF\",\r\n\"CJK Unified Ideographs Extension B\":\"20000,2A6DF\",\r\n\"CJK Unified Ideographs\":\"4E00,9FFF\",\r\n\"Cherokee\":\"13A0,13FF\",\r\n\"Combining Diacritical Marks Supplement\":\"1DC0,1DFF\",\r\n\"Combining Diacritical Marks for Symbols\":\"20D0,20FF\",\r\n\"Combining Diacritical Marks\":\"0300,036F\",\r\n\"Combining Half Marks\":\"FE20,FE2F\",\r\n\"Control Pictures\":\"2400,243F\",\r\n\"Coptic\":\"2C80,2CFF\",\r\n\"Currency Symbols\":\"20A0,20CF\",\r\n\"Cypriot Syllabary\":\"10800,1083F\",\r\n\"Cyrillic Supplement\":\"0500,052F\",\r\n\"Cyrillic\":\"0400,04FF\",\r\n\"Deseret\":\"10400,1044F\",\r\n\"Devanagari\":\"0900,097F\",\r\n\"Dingbats\":\"2700,27BF\",\r\n\"Enclosed Alphanumerics\":\"2460,24FF\",\r\n\"Enclosed CJK Letters and Months\":\"3200,32FF\",\r\n\"Ethiopic Extended\":\"2D80,2DDF\",\r\n\"Ethiopic Supplement\":\"1380,139F\",\r\n\"Ethiopic\":\"1200,137F\",\r\n\"General Punctuation\":\"2000,206F\",\r\n\"Geometric Shapes\":\"25A0,25FF\",\r\n\"Georgian Supplement\":\"2D00,2D2F\",\r\n\"Georgian\":\"10A0,10FF\",\r\n\"Glagolitic\":\"2C00,2C5F\",\r\n\"Gothic\":\"10330,1034F\",\r\n\"Greek Extended\":\"1F00,1FFF\",\r\n\"Greek and Coptic\":\"0370,03FF\",\r\n\"Gujarati\":\"0A80,0AFF\",\r\n\"Gurmukhi\":\"0A00,0A7F\",\r\n\"Halfwidth and Fullwidth Forms\":\"FF00,FFEF\",\r\n\"Hangul Compatibility Jamo\":\"3130,318F\",\r\n\"Hangul Jamo\":\"1100,11FF\",\r\n\"Hangul Syllables\":\"AC00,D7AF\",\r\n\"Hanunoo\":\"1720,173F\",\r\n\"Hebrew\":\"0590,05FF\",\r\n\"High Private Use Surrogates\":\"DB80,DBFF\",\r\n\"High Surrogates\":\"D800,DB7F\",\r\n\"Hiragana\":\"3040,309F\",\r\n\"IPA Extensions\":\"0250,02AF\",\r\n\"Ideographic Description Characters\":\"2FF0,2FFF\",\r\n\"Kanbun\":\"3190,319F\",\r\n\"Kangxi Radicals\":\"2F00,2FDF\",\r\n\"Kannada\":\"0C80,0CFF\",\r\n\"Katakana Phonetic Extensions\":\"31F0,31FF\",\r\n\"Katakana\":\"30A0,30FF\",\r\n\"Kharoshthi\":\"10A00,10A5F\",\r\n\"Khmer Symbols\":\"19E0,19FF\",\r\n\"Khmer\":\"1780,17FF\",\r\n\"Lao\":\"0E80,0EFF\",\r\n\"Latin Extended Additional\":\"1E00,1EFF\",\r\n\"Latin Extended-A\":\"0100,017F\",\r\n\"Latin Extended-B\":\"0180,024F\",\r\n\"Latin-1 Supplement\":\"0080,00FF\",\r\n\"Letterlike Symbols\":\"2100,214F\",\r\n\"Limbu\":\"1900,194F\",\r\n\"Linear B Ideograms\":\"10080,100FF\",\r\n\"Linear B Syllabary\":\"10000,1007F\",\r\n\"Low Surrogates\":\"DC00,DFFF\",\r\n\"Malayalam\":\"0D00,0D7F\",\r\n\"Mathematical Alphanumeric Symbols\":\"1D400,1D7FF\",\r\n\"Mathematical Operators\":\"2200,22FF\",\r\n\"Miscellaneous Mathematical Symbols-A\":\"27C0,27EF\",\r\n\"Miscellaneous Mathematical Symbols-B\":\"2980,29FF\",\r\n\"Miscellaneous Symbols and Arrows\":\"2B00,2BFF\",\r\n\"Miscellaneous Symbols\":\"2600,26FF\",\r\n\"Miscellaneous Technical\":\"2300,23FF\",\r\n\"Modifier Tone Letters\":\"A700,A71F\",\r\n\"Mongolian\":\"1800,18AF\",\r\n\"Musical Symbols\":\"1D100,1D1FF\",\r\n\"Myanmar\":\"1000,109F\",\r\n\"New Tai Lue\":\"1980,19DF\",\r\n\"Number Forms\":\"2150,218F\",\r\n\"Ogham\":\"1680,169F\",\r\n\"Old Italic\":\"10300,1032F\",\r\n\"Old Persian\":\"103A0,103DF\",\r\n\"Optical Character Recognition\":\"2440,245F\",\r\n\"Oriya\":\"0B00,0B7F\",\r\n\"Osmanya\":\"10480,104AF\",\r\n\"Phonetic Extensions Supplement\":\"1D80,1DBF\",\r\n\"Phonetic Extensions\":\"1D00,1D7F\",\r\n\"Private Use Area\":\"E000,F8FF\",\r\n\"Runic\":\"16A0,16FF\",\r\n\"Shavian\":\"10450,1047F\",\r\n\"Sinhala\":\"0D80,0DFF\",\r\n\"Small Form Variants\":\"FE50,FE6F\",\r\n\"Spacing Modifier Letters\":\"02B0,02FF\",\r\n\"Specials\":\"FFF0,FFFF\",\r\n\"Superscripts and Subscripts\":\"2070,209F\",\r\n\"Supplemental Arrows-A\":\"27F0,27FF\",\r\n\"Supplemental Arrows-B\":\"2900,297F\",\r\n\"Supplemental Mathematical Operators\":\"2A00,2AFF\",\r\n\"Supplemental Punctuation\":\"2E00,2E7F\",\r\n\"Syloti Nagri\":\"A800,A82F\",\r\n\"Syriac\":\"0700,074F\",\r\n\"Tagalog\":\"1700,171F\",\r\n\"Tagbanwa\":\"1760,177F\",\r\n\"Tags\":\"E0000,E007F\",\r\n\"Tai Le\":\"1950,197F\",\r\n\"Tai Xuan Jing Symbols\":\"1D300,1D35F\",\r\n\"Tamil\":\"0B80,0BFF\",\r\n\"Telugu\":\"0C00,0C7F\",\r\n\"Thaana\":\"0780,07BF\",\r\n\"Thai\":\"0E00,0E7F\",\r\n\"Tibetan\":\"0F00,0FFF\",\r\n\"Tifinagh\":\"2D30,2D7F\",\r\n\"Ugaritic\":\"10380,1039F\",\r\n\"Unified Canadian Aboriginal Syllabics\":\"1400,167F\",\r\n\"Variation Selectors Supplement\":\"E0100,E01EF\",\r\n\"Variation Selectors\":\"FE00,FE0F\",\r\n\"Vertical Forms\":\"FE10,FE1F\",\r\n\"Yi Radicals\":\"A490,A4CF\",\r\n\"Yi Syllables\":\"A000,A48F\",\r\n\"Yijing Hexagram Symbols\":\"4DC0,4DFF\"\r\n};\r\n\r\nvar insert=\"charmap_insert\";\r\n\r\nfunction map_load(){\r\n\teditArea=opener.editArea;\r\n\t// translate the document\r\n\tinsert= editArea.get_translation(insert, \"word\");\r\n\t//alert(document.title);\r\n\tdocument.title= editArea.get_translation(document.title, \"template\");\r\n\tdocument.body.innerHTML= editArea.get_translation(document.body.innerHTML, \"template\");\r\n\t//document.title= editArea.get_translation(document.getElementBytitle, \"template\");\r\n\t\r\n\tvar selected_lang=opener.EditArea_charmap.default_language.toLowerCase();\r\n\tvar selected=0;\r\n\t\r\n\tvar select= document.getElementById(\"select_range\")\r\n\tfor(var i in char_range_list){\r\n\t\tif(i.toLowerCase()==selected_lang)\r\n\t\t\tselected=select.options.length;\r\n\t\tselect.options[select.options.length]=new Option(i, char_range_list[i]);\r\n\t}\r\n\tselect.options[selected].selected=true;\r\n/*\tstart=0;\r\n\tend=127;\r\n\tcontent=\"\";\r\n\tfor(var i=start; i<end; i++){\r\n\t\tcontent+=\"&#\"+i+\"; \";\r\n\t}\r\n\tdocument.getElementById(\"char_list\").innerHTML=content;*/\r\n\trenderCharMapHTML();\r\n}\r\n\r\n\r\nfunction renderCharMapHTML() {\r\n\trange= document.getElementById(\"select_range\").value.split(\",\");\r\n\r\n\tstart= parseInt(range[0],16);\r\n\tend= parseInt(range[1],16);\r\n\tvar charsPerRow = 20, tdWidth=20, tdHeight=20;\r\n\thtml=\"\";\r\n\tfor (var i=start; i<end; i++) {\r\n\t\thtml+=\"<a class='char' onmouseover='previewChar(\\\"\"+ i + \"\\\");' onclick='insertChar(\\\"\"+ i + \"\\\");' title='\"+ insert +\"'>\"+ String.fromCharCode(i) +\"</a>\";\r\n\t}\r\n\tdocument.getElementById(\"char_list\").innerHTML= html;\r\n\tdocument.getElementById(\"preview_char\").innerHTML=\"\";\r\n}\r\n\r\nfunction previewChar(i){\r\n\tdocument.getElementById(\"preview_char\").innerHTML= String.fromCharCode(i);\r\n\tdocument.getElementById(\"preview_code\").innerHTML= \"&amp;#\"+ i +\";\";\r\n}\r\n\r\nfunction insertChar(i){\r\n\topener.parent.editAreaLoader.setSelectedText(editArea.id, String.fromCharCode( i));\r\n\trange= opener.parent.editAreaLoader.getSelectionRange(editArea.id);\r\n\topener.parent.editAreaLoader.setSelectionRange(editArea.id, range[\"end\"], range[\"end\"]);\r\n\twindow.focus();\r\n}\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/charmap/langs/bg.js",
    "content": "/*\r\n *\tBulgarian translation\r\n *\tAuthor:\t\tValentin Hristov\r\n *\tCompany:\tSOFTKIT Bulgarian\r\n *\tSite:\t\thttp://www.softkit-bg.com\r\n */\r\neditArea.add_lang(\"bg\",{\r\ncharmap_but: \"Виртуална клавиатура\",\r\ncharmap_title: \"Виртуална клавиатура\",\r\ncharmap_choose_block: \"избери езиков блок\",\r\ncharmap_insert:\"постави този символ\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/charmap/langs/cs.js",
    "content": "editArea.add_lang(\"cs\",{\r\ncharmap_but: \"Visual keyboard\",\r\ncharmap_title: \"Visual keyboard\",\r\ncharmap_choose_block: \"select language block\",\r\ncharmap_insert:\"insert this character\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/charmap/langs/de.js",
    "content": "editArea.add_lang(\"de\",{\r\ncharmap_but: \"Sonderzeichen\",\r\ncharmap_title: \"Sonderzeichen\",\r\ncharmap_choose_block: \"Bereich ausw&auml;hlen\",\r\ncharmap_insert: \"dieses Zeichen einf&uuml;gen\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/charmap/langs/dk.js",
    "content": "editArea.add_lang(\"dk\",{\r\ncharmap_but: \"Visual keyboard\",\r\ncharmap_title: \"Visual keyboard\",\r\ncharmap_choose_block: \"select language block\",\r\ncharmap_insert:\"insert this character\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/charmap/langs/en.js",
    "content": "editArea.add_lang(\"en\",{\r\ncharmap_but: \"Visual keyboard\",\r\ncharmap_title: \"Visual keyboard\",\r\ncharmap_choose_block: \"select language block\",\r\ncharmap_insert:\"insert this character\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/charmap/langs/eo.js",
    "content": "editArea.add_lang(\"eo\",{\r\ncharmap_but: \"Ekranklavaro\",\r\ncharmap_title: \"Ekranklavaro\",\r\ncharmap_choose_block: \"Elekto de lingvo\",\r\ncharmap_insert:\"enmeti tiun signaron\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/charmap/langs/es.js",
    "content": "editArea.add_lang(\"es\",{\r\ncharmap_but: \"Visual keyboard\",\r\ncharmap_title: \"Visual keyboard\",\r\ncharmap_choose_block: \"select language block\",\r\ncharmap_insert:\"insert this character\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/charmap/langs/fr.js",
    "content": "editArea.add_lang(\"fr\",{\r\ncharmap_but: \"Clavier visuel\",\r\ncharmap_title: \"Clavier visuel\",\r\ncharmap_choose_block: \"choix du language\",\r\ncharmap_insert:\"ins&eacute;rer ce caract&egrave;re\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/charmap/langs/hr.js",
    "content": "editArea.add_lang(\"hr\",{\r\ncharmap_but: \"Virtualna tipkovnica\",\r\ncharmap_title: \"Virtualna tipkovnica\",\r\ncharmap_choose_block: \"Odaberi blok s jezikom\",\r\ncharmap_insert:\"Ubaci taj znak\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/charmap/langs/it.js",
    "content": "editArea.add_lang(\"it\",{\r\ncharmap_but: \"Tastiera visuale\",\r\ncharmap_title: \"Tastiera visuale\",\r\ncharmap_choose_block: \"seleziona blocco\",\r\ncharmap_insert:\"inserisci questo carattere\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/charmap/langs/ja.js",
    "content": "editArea.add_lang(\"ja\",{\r\ncharmap_but: \"Visual keyboard\",\r\ncharmap_title: \"Visual keyboard\",\r\ncharmap_choose_block: \"select language block\",\r\ncharmap_insert:\"insert this character\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/charmap/langs/mk.js",
    "content": "editArea.add_lang(\"mkn\",{\r\ncharmap_but: \"Visual keyboard\",\r\ncharmap_title: \"Visual keyboard\",\r\ncharmap_choose_block: \"select language block\",\r\ncharmap_insert:\"insert this character\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/charmap/langs/nl.js",
    "content": "editArea.add_lang(\"nl\",{\r\ncharmap_but: \"Visueel toetsenbord\",\r\ncharmap_title: \"Visueel toetsenbord\",\r\ncharmap_choose_block: \"Kies een taal blok\",\r\ncharmap_insert:\"Voeg dit symbool in\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/charmap/langs/pl.js",
    "content": "﻿editArea.add_lang(\"pl\",{\r\ncharmap_but: \"Klawiatura ekranowa\",\r\ncharmap_title: \"Klawiatura ekranowa\",\r\ncharmap_choose_block: \"wybierz grupę znaków\",\r\ncharmap_insert:\"wstaw ten znak\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/charmap/langs/pt.js",
    "content": "editArea.add_lang(\"pt\",{\r\ncharmap_but: \"Visual keyboard\",\r\ncharmap_title: \"Visual keyboard\",\r\ncharmap_choose_block: \"select language block\",\r\ncharmap_insert:\"insert this character\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/charmap/langs/ru.js",
    "content": "editArea.add_lang(\"ru\",{\r\ncharmap_but: \"Визуальная клавиатура\",\r\ncharmap_title: \"Визуальная клавиатура\",\r\ncharmap_choose_block: \"выбрать языковой блок\",\r\ncharmap_insert:\"вставить этот символ\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/charmap/langs/sk.js",
    "content": "editArea.add_lang(\"sk\",{\r\ncharmap_but: \"Vizuálna klávesnica\",\r\ncharmap_title: \"Vizuálna klávesnica\",\r\ncharmap_choose_block: \"vyber jazykový blok\",\r\ncharmap_insert: \"vlož tento znak\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/charmap/langs/zh.js",
    "content": "editArea.add_lang(\"zh\",{\r\ncharmap_but: \"软键盘\",\r\ncharmap_title: \"软键盘\",\r\ncharmap_choose_block: \"选择一个语言块\",\r\ncharmap_insert:\"插入此字符\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/charmap/popup.html",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.1//EN\" \"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"en\" >\r\n<head>\r\n<title>{$charmap_title}</title>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\r\n<link rel=\"stylesheet\" type=\"text/css\" href=\"css/charmap.css\" />\r\n<script language=\"Javascript\" type=\"text/javascript\" src=\"jscripts/map.js\">\r\n</script>\r\n</head>\r\n<body onload='map_load()'>\r\n<div id='preview_code' class='preview'></div>\r\n<div id='preview_char' class='preview'></div>\r\n<h1>{$charmap_title}:</h1>\r\n<select id='select_range' onchange='renderCharMapHTML()' title='{$charmap_choose_block}'>\r\n</select>\r\n<div id='char_list'>\r\n\r\n</div>\r\n\r\n\r\n\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/test/css/test.css",
    "content": "select#test_select{\r\n\tbackground-color: #FF0000;\r\n}\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/test/langs/bg.js",
    "content": "/*\r\n *\tBulgarian translation\r\n *\tAuthor:\t\tValentin Hristov\r\n *\tCompany:\tSOFTKIT Bulgarian\r\n *\tSite:\t\thttp://www.softkit-bg.com\r\n */\r\neditArea.add_lang(\"bg\",{\r\ntest_select: \"избери таг\",\r\ntest_but: \"тествай копието\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/test/langs/cs.js",
    "content": "editArea.add_lang(\"cs\",{\r\ntest_select: \"select tag\",\r\ntest_but: \"test button\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/test/langs/de.js",
    "content": "editArea.add_lang(\"de\",{\r\ntest_select: \"Tag ausw&auml;hlen\",\r\ntest_but: \"Test Button\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/test/langs/dk.js",
    "content": "editArea.add_lang(\"dk\",{\r\ntest_select: \"select tag\",\r\ntest_but: \"test button\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/test/langs/en.js",
    "content": "editArea.add_lang(\"en\",{\r\ntest_select: \"select tag\",\r\ntest_but: \"test button\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/test/langs/eo.js",
    "content": "editArea.add_lang(\"eo\",{\r\ntest_select:\"elekto de marko\",\r\ntest_but: \"provo-butono\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/test/langs/es.js",
    "content": "editArea.add_lang(\"es\",{\r\ntest_select: \"select tag\",\r\ntest_but: \"test button\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/test/langs/fr.js",
    "content": "editArea.add_lang(\"fr\",{\r\ntest_select:\"choix balise\",\r\ntest_but: \"bouton de test\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/test/langs/hr.js",
    "content": "editArea.add_lang(\"hr\",{\r\ntest_select: \"Odaberi tag\",\r\ntest_but: \"Probna tipka\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/test/langs/it.js",
    "content": "editArea.add_lang(\"it\",{\r\ntest_select: \"seleziona tag\",\r\ntest_but: \"pulsante di test\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/test/langs/ja.js",
    "content": "editArea.add_lang(\"ja\",{\r\ntest_select: \"select tag\",\r\ntest_but: \"test button\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/test/langs/mk.js",
    "content": "editArea.add_lang(\"mk\",{\r\ntest_select: \"select tag\",\r\ntest_but: \"test button\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/test/langs/nl.js",
    "content": "editArea.add_lang(\"nl\",{\r\ntest_select: \"select tag\",\r\ntest_but: \"test button\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/test/langs/pl.js",
    "content": "editArea.add_lang(\"pl\",{\r\ntest_select: \"wybierz tag\",\r\ntest_but: \"test\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/test/langs/pt.js",
    "content": "editArea.add_lang(\"pt\",{\r\ntest_select: \"select tag\",\r\ntest_but: \"test button\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/test/langs/ru.js",
    "content": "editArea.add_lang(\"ru\",{\r\ntest_select: \"выбрать тэг\",\r\ntest_but: \"тестировать кнопку\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/test/langs/sk.js",
    "content": "editArea.add_lang(\"sk\",{\r\ntest_select: \"vyber tag\",\r\ntest_but: \"testovacie tlačidlo\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/test/langs/zh.js",
    "content": "editArea.add_lang(\"zh\",{\r\ntest_select: \"选择标签\",\r\ntest_but: \"测试按钮\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/test/test.js",
    "content": "/**\r\n * Plugin designed for test prupose. It add a button (that manage an alert) and a select (that allow to insert tags) in the toolbar.\r\n * This plugin also disable the \"f\" key in the editarea, and load a CSS and a JS file\r\n */  \r\nvar EditArea_test= {\r\n\t/**\r\n\t * Get called once this file is loaded (editArea still not initialized)\r\n\t *\r\n\t * @return nothing\t \r\n\t */\t \t \t\r\n\tinit: function(){\t\r\n\t\t//\talert(\"test init: \"+ this._someInternalFunction(2, 3));\r\n\t\teditArea.load_css(this.baseURL+\"css/test.css\");\r\n\t\teditArea.load_script(this.baseURL+\"test2.js\");\r\n\t}\r\n\t/**\r\n\t * Returns the HTML code for a specific control string or false if this plugin doesn't have that control.\r\n\t * A control can be a button, select list or any other HTML item to present in the EditArea user interface.\r\n\t * Language variables such as {$lang_somekey} will also be replaced with contents from\r\n\t * the language packs.\r\n\t * \r\n\t * @param {string} ctrl_name: the name of the control to add\t  \r\n\t * @return HTML code for a specific control or false.\r\n\t * @type string\tor boolean\r\n\t */\t\r\n\t,get_control_html: function(ctrl_name){\r\n\t\tswitch(ctrl_name){\r\n\t\t\tcase \"test_but\":\r\n\t\t\t\t// Control id, button img, command\r\n\t\t\t\treturn parent.editAreaLoader.get_button_html('test_but', 'test.gif', 'test_cmd', false, this.baseURL);\r\n\t\t\tcase \"test_select\":\r\n\t\t\t\thtml= \"<select id='test_select' onchange='javascript:editArea.execCommand(\\\"test_select_change\\\")' fileSpecific='no'>\"\r\n\t\t\t\t\t+\"\t\t\t<option value='-1'>{$test_select}</option>\"\r\n\t\t\t\t\t+\"\t\t\t<option value='h1'>h1</option>\"\r\n\t\t\t\t\t+\"\t\t\t<option value='h2'>h2</option>\"\r\n\t\t\t\t\t+\"\t\t\t<option value='h3'>h3</option>\"\r\n\t\t\t\t\t+\"\t\t\t<option value='h4'>h4</option>\"\r\n\t\t\t\t\t+\"\t\t\t<option value='h5'>h5</option>\"\r\n\t\t\t\t\t+\"\t\t\t<option value='h6'>h6</option>\"\r\n\t\t\t\t\t+\"\t\t</select>\";\r\n\t\t\t\treturn html;\r\n\t\t}\r\n\t\treturn false;\r\n\t}\r\n\t/**\r\n\t * Get called once EditArea is fully loaded and initialised\r\n\t *\t \r\n\t * @return nothing\r\n\t */\t \t \t\r\n\t,onload: function(){ \r\n\t\talert(\"test load\");\r\n\t}\r\n\t\r\n\t/**\r\n\t * Is called each time the user touch a keyboard key.\r\n\t *\t \r\n\t * @param (event) e: the keydown event\r\n\t * @return true - pass to next handler in chain, false - stop chain execution\r\n\t * @type boolean\t \r\n\t */\r\n\t,onkeydown: function(e){\r\n\t\tvar str= String.fromCharCode(e.keyCode);\r\n\t\t// desactivate the \"f\" character\r\n\t\tif(str.toLowerCase()==\"f\"){\r\n\t\t\treturn true;\r\n\t\t}\r\n\t\treturn false;\r\n\t}\r\n\t\r\n\t/**\r\n\t * Executes a specific command, this function handles plugin commands.\r\n\t *\r\n\t * @param {string} cmd: the name of the command being executed\r\n\t * @param {unknown} param: the parameter of the command\t \r\n\t * @return true - pass to next handler in chain, false - stop chain execution\r\n\t * @type boolean\t\r\n\t */\r\n\t,execCommand: function(cmd, param){\r\n\t\t// Handle commands\r\n\t\tswitch(cmd){\r\n\t\t\tcase \"test_select_change\":\r\n\t\t\t\tvar val= document.getElementById(\"test_select\").value;\r\n\t\t\t\tif(val!=-1)\r\n\t\t\t\t\tparent.editAreaLoader.insertTags(editArea.id, \"<\"+val+\">\", \"</\"+val+\">\");\r\n\t\t\t\tdocument.getElementById(\"test_select\").options[0].selected=true; \r\n\t\t\t\treturn false;\r\n\t\t\tcase \"test_cmd\":\r\n\t\t\t\talert(\"user clicked on test_cmd\");\r\n\t\t\t\treturn false;\r\n\t\t}\r\n\t\t// Pass to next handler in chain\r\n\t\treturn true;\r\n\t}\r\n\t\r\n\t/**\r\n\t * This is just an internal plugin method, prefix all internal methods with a _ character.\r\n\t * The prefix is needed so they doesn't collide with future EditArea callback functions.\r\n\t *\r\n\t * @param {string} a Some arg1.\r\n\t * @param {string} b Some arg2.\r\n\t * @return Some return.\r\n\t * @type unknown\r\n\t */\r\n\t,_someInternalFunction : function(a, b) {\r\n\t\treturn a+b;\r\n\t}\r\n};\r\n\r\n// Adds the plugin class to the list of available EditArea plugins\r\neditArea.add_plugin(\"test\", EditArea_test);\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/plugins/test/test2.js",
    "content": "alert(\"test2.js is loaded from test plugin\");\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/reg_syntax/basic.js",
    "content": "editAreaLoader.load_syntax[\"basic\"] = {\r\n\t'DISPLAY_NAME' : 'Basic'\r\n\t,'COMMENT_SINGLE' : {1 : \"'\", 2 : 'rem'}\r\n\t,'COMMENT_MULTI' : { }\r\n\t,'QUOTEMARKS' : {1: '\"'}\r\n\t,'KEYWORD_CASE_SENSITIVE' : false\r\n\t,'KEYWORDS' : {\r\n\t\t'statements' : [\r\n\t\t\t'if','then','for','wend','while',\r\n\t\t\t'else','elseif','select','case','end select',\r\n\t\t\t'until','next','step','to','end if', 'call'\r\n\t\t]\r\n\t\t,'keywords' : [\r\n\t\t\t'sub', 'end sub', 'function', 'end function', 'exit',\r\n\t\t\t'exit function', 'dim', 'redim', 'shared', 'const',\r\n\t\t\t'is', 'absolute', 'access', 'any', 'append', 'as',\r\n\t\t\t'base', 'beep', 'binary', 'bload', 'bsave', 'chain',\r\n\t\t\t'chdir', 'circle', 'clear', 'close', 'cls', 'color',\r\n\t\t\t'com', 'common', 'data', 'date', 'declare', 'def',\r\n\t\t\t'defdbl', 'defint', 'deflng', 'defsng', 'defstr',\r\n\t\t\t'double', 'draw', 'environ', 'erase', 'error', 'field',\r\n\t\t\t'files', 'fn', 'get', 'gosub', 'goto', 'integer', 'key',\r\n\t\t\t'kill', 'let', 'line', 'list', 'locate', 'lock', 'long',\r\n\t\t\t'lprint', 'lset', 'mkdir', 'name', 'off', 'on', 'open',\r\n\t\t\t'option', 'out', 'output', 'paint', 'palette', 'pcopy',\r\n\t\t\t'poke', 'preset', 'print', 'pset', 'put', 'random',\r\n\t\t\t'randomize', 'read', 'reset', 'restore', 'resume',\r\n\t\t\t'return', 'rmdir', 'rset', 'run', 'screen', 'seg',\r\n\t\t\t'shell', 'single', 'sleep', 'sound', 'static', 'stop',\r\n\t\t\t'strig', 'string', 'swap', 'system', 'time', 'timer',\r\n\t\t\t'troff', 'tron', 'type', 'unlock', 'using', 'view',\r\n\t\t\t'wait', 'width', 'window', 'write'\r\n\t        ]\r\n\t\t,'functions' : [\r\n\t\t\t'abs', 'asc', 'atn', 'cdbl', 'chr', 'cint', 'clng',\r\n\t\t\t'cos', 'csng', 'csrlin', 'cvd', 'cvdmbf', 'cvi', 'cvl',\r\n\t\t\t'cvs', 'cvsmbf', 'eof', 'erdev', 'erl', 'err', 'exp',\r\n\t\t\t'fileattr', 'fix', 'fre', 'freefile', 'hex', 'inkey',\r\n\t\t\t'inp', 'input', 'instr', 'int', 'ioctl', 'lbound',\r\n\t\t\t'lcase', 'left', 'len', 'loc', 'lof', 'log', 'lpos',\r\n\t\t\t'ltrim', 'mid', 'mkd', 'mkdmbf', 'mki', 'mkl', 'mks',\r\n\t\t\t'mksmbf', 'oct', 'peek', 'pen', 'play', 'pmap', 'point',\r\n\t\t\t'pos', 'right', 'rnd', 'rtrim', 'seek', 'sgn', 'sin',\r\n\t\t\t'space', 'spc', 'sqr', 'stick', 'str', 'tab', 'tan',\r\n\t\t\t'ubound', 'ucase', 'val', 'varptr', 'varseg'\r\n\t\t]\r\n\t\t,'operators' : [\r\n\t\t\t'and', 'eqv', 'imp', 'mod', 'not', 'or', 'xor'\r\n\t\t]\r\n\t}\r\n\t,'OPERATORS' :[\r\n\t\t'+', '-', '/', '*', '=', '<', '>', '!', '&'\r\n\t]\r\n\t,'DELIMITERS' :[\r\n\t\t'(', ')', '[', ']', '{', '}'\r\n\t]\r\n\t,'STYLES' : {\r\n\t\t'COMMENTS': 'color: #99CC00;'\r\n\t\t,'QUOTESMARKS': 'color: #333399;'\r\n\t\t,'KEYWORDS' : {\r\n\t\t\t'keywords' : 'color: #3366FF;'\r\n\t\t\t,'functions' : 'color: #0000FF;'\r\n\t\t\t,'statements' : 'color: #3366FF;'\r\n\t\t\t,'operators' : 'color: #FF0000;'\r\n\t\t\t}\r\n\t\t,'OPERATORS' : 'color: #FF0000;'\r\n\t\t,'DELIMITERS' : 'color: #0000FF;'\r\n\r\n\t}\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/reg_syntax/brainfuck.js",
    "content": "editAreaLoader.load_syntax[\"brainfuck\"] = {\r\n\t'DISPLAY_NAME' : 'Brainfuck'\r\n\t,'COMMENT_SINGLE' : {}\r\n\t,'COMMENT_MULTI' : {}\r\n\t,'QUOTEMARKS' : {}\r\n\t,'KEYWORD_CASE_SENSITIVE' : true\r\n\t,'OPERATORS' :[\r\n\t\t'+', '-'\r\n\t]\r\n\t,'DELIMITERS' :[\r\n\t\t'[', ']'\r\n\t]\r\n\t,'REGEXPS' : {\r\n\t\t'bfispis' : {\r\n\t\t\t'search' : '()(\\\\.)()'\r\n\t\t\t,'class' : 'bfispis'\r\n\t\t\t,'modifiers' : 'g'\r\n\t\t\t,'execute' : 'before'\r\n\t\t}\r\n\t\t,'bfupis' : {\r\n\t\t\t'search' : '()(\\\\,)()'\r\n\t\t\t,'class' : 'bfupis'\r\n\t\t\t,'modifiers' : 'g'\r\n\t\t\t,'execute' : 'before'\r\n\t\t}\r\n\t\t,'bfmemory' : {\r\n\t\t\t'search' : '()([<>])()'\r\n\t\t\t,'class' : 'bfmemory'\r\n\t\t\t,'modifiers' : 'g'\r\n\t\t\t,'execute' : 'before'\r\n\t\t}\r\n\t}\r\n\t,'STYLES' : {\r\n\t\t'COMMENTS': 'color: #AAAAAA;'\r\n\t\t,'QUOTESMARKS': 'color: #6381F8;'\r\n\t\t,'OPERATORS' : 'color: #88AA00;'\r\n\t\t,'DELIMITERS' : 'color: #00C138;'\r\n\t\t,'REGEXPS' : {\r\n\t\t\t'bfispis' : 'color: #EE0000;'\r\n\t\t\t,'bfupis' : 'color: #4455ee;'\r\n\t\t\t,'bfmemory' : 'color: #DD00DD;'\r\n\t\t}\r\n\t}\r\n};\r\n\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/reg_syntax/c.js",
    "content": "editAreaLoader.load_syntax[\"c\"] = {\r\n\t'DISPLAY_NAME' : 'C'\r\n\t,'COMMENT_SINGLE' : {1 : '//'}\r\n\t,'COMMENT_MULTI' : {'/*' : '*/'}\r\n\t,'QUOTEMARKS' : {1: \"'\", 2: '\"'}\r\n\t,'KEYWORD_CASE_SENSITIVE' : true\r\n\t,'KEYWORDS' : {\r\n\t\t'constants' : [\r\n\t\t\t'NULL', 'false', 'stdin', 'stdout', 'stderr', 'true'\r\n\t\t]\r\n\t\t,'types' : [\r\n\t\t\t'FILE', 'auto', 'char', 'const', 'double',\r\n\t\t\t'extern', 'float', 'inline', 'int', 'long', 'register',\r\n\t\t\t'short', 'signed', 'size_t', 'static', 'struct',\r\n\t\t\t'time_t', 'typedef', 'union', 'unsigned', 'void',\r\n\t\t\t'volatile'\r\n\t\t]\r\n\t\t,'statements' : [\r\n\t\t\t'do', 'else', 'enum', 'for', 'goto', 'if', 'sizeof',\r\n\t\t\t'switch', 'while'\r\n\t\t]\r\n \t\t,'keywords' : [\r\n\t\t\t'break', 'case', 'continue', 'default', 'delete',\r\n\t\t\t'return'\r\n\t\t]\r\n\t}\r\n\t,'OPERATORS' :[\r\n\t\t'+', '-', '/', '*', '=', '<', '>', '%', '!', '?', ':', '&'\r\n\t]\r\n\t,'DELIMITERS' :[\r\n\t\t'(', ')', '[', ']', '{', '}'\r\n\t]\r\n\t,'REGEXPS' : {\r\n\t\t'precompiler' : {\r\n\t\t\t'search' : '()(#[^\\r\\n]*)()'\r\n\t\t\t,'class' : 'precompiler'\r\n\t\t\t,'modifiers' : 'g'\r\n\t\t\t,'execute' : 'before'\r\n\t\t}\r\n/*\t\t,'precompilerstring' : {\r\n\t\t\t'search' : '(#[\\t ]*include[\\t ]*)([^\\r\\n]*)([^\\r\\n]*[\\r\\n])'\r\n\t\t\t,'class' : 'precompilerstring'\r\n\t\t\t,'modifiers' : 'g'\r\n\t\t\t,'execute' : 'before'\r\n\t\t}*/\r\n\t}\r\n\t,'STYLES' : {\r\n\t\t'COMMENTS': 'color: #AAAAAA;'\r\n\t\t,'QUOTESMARKS': 'color: #6381F8;'\r\n\t\t,'KEYWORDS' : {\r\n\t\t\t'constants' : 'color: #EE0000;'\r\n\t\t\t,'types' : 'color: #0000EE;'\r\n\t\t\t,'statements' : 'color: #60CA00;'\r\n\t\t\t,'keywords' : 'color: #48BDDF;'\r\n\t\t}\r\n\t\t,'OPERATORS' : 'color: #FF00FF;'\r\n\t\t,'DELIMITERS' : 'color: #0038E1;'\r\n\t\t,'REGEXPS' : {\r\n\t\t\t'precompiler' : 'color: #009900;'\r\n\t\t\t,'precompilerstring' : 'color: #994400;'\r\n\t\t}\r\n\t}\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/reg_syntax/coldfusion.js",
    "content": "editAreaLoader.load_syntax[\"coldfusion\"] = {\r\n\t'DISPLAY_NAME' : 'Coldfusion'\r\n\t,'COMMENT_SINGLE' : {1 : '//', 2 : '#'}\r\n\t,'COMMENT_MULTI' : {'<!--' : '-->'}\r\n\t,'COMMENT_MULTI2' : {'<!---' : '--->'}\r\n\t,'QUOTEMARKS' : {1: \"'\", 2: '\"'}\r\n\t,'KEYWORD_CASE_SENSITIVE' : false\r\n\t\t,'KEYWORDS' : {\r\n\t\t'statements' : [\r\n\t\t\t'include', 'require', 'include_once', 'require_once',\r\n\t\t\t'for', 'foreach', 'as', 'if', 'elseif', 'else', 'while', 'do', 'endwhile',\r\n            'endif', 'switch', 'case', 'endswitch',\r\n\t\t\t'return', 'break', 'continue'\r\n\t\t]\r\n\t\t,'reserved' : [\r\n\t\t\t'AND', 'break', 'case', 'CONTAIN', 'CONTAINS', 'continue', 'default', 'do', \r\n\t\t\t'DOES', 'else', 'EQ', 'EQUAL', 'EQUALTO', 'EQV', 'FALSE', 'for', 'GE', \r\n\t\t\t'GREATER', 'GT', 'GTE', 'if', 'IMP', 'in', 'IS', 'LE', 'LESS', 'LT', 'LTE', \r\n\t\t\t'MOD', 'NEQ', 'NOT', 'OR', 'return', 'switch', 'THAN', 'TO', 'TRUE', 'var', \r\n\t\t\t'while', 'XOR'\r\n\t\t]\r\n\t\t,'functions' : [\r\n\t\t\t'Abs', 'ACos', 'ArrayAppend', 'ArrayAvg', 'ArrayClear', 'ArrayDeleteAt', 'ArrayInsertAt', \r\n\t\t\t'ArrayIsEmpty', 'ArrayLen', 'ArrayMax', 'ArrayMin', 'ArrayNew', 'ArrayPrepend', 'ArrayResize', \r\n\t\t\t'ArraySet', 'ArraySort', 'ArraySum', 'ArraySwap', 'ArrayToList', 'Asc', 'ASin', 'Atn', 'AuthenticatedContext', \r\n\t\t\t'AuthenticatedUser', 'BitAnd', 'BitMaskClear', 'BitMaskRead', 'BitMaskSet', 'BitNot', 'BitOr', \r\n\t\t\t'BitSHLN', 'BitSHRN', 'BitXor', 'Ceiling', 'Chr', 'CJustify', 'Compare', 'CompareNoCase', 'Cos', \r\n\t\t\t'CreateDate', 'CreateDateTime', 'CreateODBCDate', 'CreateODBCDateTime', 'CreateODBCTime', \r\n\t\t\t'CreateTime', 'CreateTimeSpan', 'DateAdd', 'DateCompare', 'DateConvert', 'DateDiff', \r\n\t\t\t'DateFormat', 'DatePart', 'Day', 'DayOfWeek', 'DayOfWeekAsString', 'DayOfYear', 'DaysInMonth', \r\n\t\t\t'DaysInYear', 'DE', 'DecimalFormat', 'DecrementValue', 'Decrypt', 'DeleteClientVariable', \r\n\t\t\t'DirectoryExists', 'DollarFormat', 'Duplicate', 'Encrypt', 'Evaluate', 'Exp', 'ExpandPath', \r\n\t\t\t'FileExists', 'Find', 'FindNoCase', 'FindOneOf', 'FirstDayOfMonth', 'Fix', 'FormatBaseN', \r\n\t\t\t'GetBaseTagData', 'GetBaseTagList', 'GetBaseTemplatePath', 'GetClientVariablesList', \r\n\t\t\t'GetCurrentTemplatePath', 'GetDirectoryFromPath', 'GetException', 'GetFileFromPath', \r\n\t\t\t'GetFunctionList', 'GetHttpTimeString', 'GetHttpRequestData', 'GetLocale', 'GetMetricData', \r\n\t\t\t'GetProfileString', 'GetTempDirectory', 'GetTempFile', 'GetTemplatePath', 'GetTickCount', \r\n\t\t\t'GetTimeZoneInfo', 'GetToken', 'Hash', 'Hour', 'HTMLCodeFormat', 'HTMLEditFormat', 'IIf', \r\n\t\t\t'IncrementValue', 'InputBaseN', 'Insert', 'Int', 'IsArray', 'IsAuthenticated', 'IsAuthorized', \r\n\t\t\t'IsBoolean', 'IsBinary', 'IsCustomFunction', 'IsDate', 'IsDebugMode', 'IsDefined', 'IsLeapYear', \r\n\t\t\t'IsNumeric', 'IsNumericDate', 'IsProtected', 'IsQuery', 'IsSimpleValue', 'IsStruct', 'IsWDDX', \r\n\t\t\t'JavaCast', 'JSStringFormat', 'LCase', 'Left', 'Len', 'ListAppend', 'ListChangeDelims', \r\n\t\t\t'ListContains', 'ListContainsNoCase', 'ListDeleteAt', 'ListFind', 'ListFindNoCase', 'ListFirst', \r\n\t\t\t'ListGetAt', 'ListInsertAt', 'ListLast', 'ListLen', 'ListPrepend', 'ListQualify', 'ListRest', \r\n\t\t\t'ListSetAt', 'ListSort', 'ListToArray', 'ListValueCount', 'ListValueCountNoCase', 'LJustify', \r\n\t\t\t'Log', 'Log10', 'LSCurrencyFormat', 'LSDateFormat', 'LSEuroCurrencyFormat', 'LSIsCurrency', \r\n\t\t\t'LSIsDate', 'LSIsNumeric', 'LSNumberFormat', 'LSParseCurrency', 'LSParseDateTime', 'LSParseNumber', \r\n\t\t\t'LSTimeFormat', 'LTrim', 'Max', 'Mid', 'Min', 'Minute', 'Month', 'MonthAsString', 'Now', 'NumberFormat', \r\n\t\t\t'ParagraphFormat', 'ParameterExists', 'ParseDateTime', 'Pi', 'PreserveSingleQuotes', 'Quarter', \r\n\t\t\t'QueryAddRow', 'QueryNew', 'QuerySetCell', 'QuotedValueList', 'Rand', 'Randomize', 'RandRange', \r\n\t\t\t'REFind', 'REFindNoCase', 'RemoveChars', 'RepeatString', 'Replace', 'ReplaceList', 'ReplaceNoCase', \r\n\t\t\t'REReplace', 'REReplaceNoCase', 'Reverse', 'Right', 'RJustify', 'Round', 'RTrim', 'Second', 'SetLocale', \r\n\t\t\t'SetProfileString', 'SetVariable', 'Sgn', 'Sin', 'SpanExcluding', 'SpanIncluding', 'Sqr', 'StripCR', \r\n\t\t\t'StructAppend', 'StructClear', 'StructCopy', 'StructCount', 'StructDelete', 'StructFind', 'StructFindKey', \r\n\t\t\t'StructFindValue', 'StructGet', 'StructInsert', 'StructIsEmpty', 'StructKeyArray', 'StructKeyExists', \r\n\t\t\t'StructKeyList', 'StructNew', 'StructSort', 'StructUpdate', 'Tan', 'TimeFormat', 'ToBase64', 'ToBinary', \r\n\t\t\t'ToString', 'Trim', 'UCase', 'URLDecode', 'URLEncodedFormat', 'Val', 'ValueList', 'Week', 'WriteOutput', \r\n\t\t\t'XMLFormat', 'Year', 'YesNoFormat'\r\n\t\t]\r\n\t}\r\n\t,'OPERATORS' :[\r\n\t\t'+', '-', '/', '*', '%', '!', '&&', '||'\r\n\t]\r\n\t,'DELIMITERS' :[\r\n\t\t'(', ')', '[', ']', '{', '}'\r\n\t]\r\n\t,'REGEXPS' : {\r\n\t\t'doctype' : {\r\n\t\t\t'search' : '()(<!DOCTYPE[^>]*>)()'\r\n\t\t\t,'class' : 'doctype'\r\n\t\t\t,'modifiers' : ''\r\n\t\t\t,'execute' : 'before' // before or after\r\n\t\t}\r\n\t\t,'cftags' : {\r\n\t\t\t'search' : '(<)(/cf[a-z][^ \\r\\n\\t>]*)([^>]*>)'\r\n\t\t\t,'class' : 'cftags'\r\n\t\t\t,'modifiers' : 'gi'\r\n\t\t\t,'execute' : 'before' // before or after\r\n\t\t}\r\n\t\t,'cftags2' : {\r\n\t\t\t'search' : '(<)(cf[a-z][^ \\r\\n\\t>]*)([^>]*>)'\r\n\t\t\t,'class' : 'cftags2'\r\n\t\t\t,'modifiers' : 'gi'\r\n\t\t\t,'execute' : 'before' // before or after\r\n\t\t}\r\n\t\t,'tags' : {\r\n\t\t\t'search' : '(<)(/?[a-z][^ \\r\\n\\t>]*)([^>]*>)'\r\n\t\t\t,'class' : 'tags'\r\n\t\t\t,'modifiers' : 'gi'\r\n\t\t\t,'execute' : 'before' // before or after\r\n\t\t}\r\n\t\t,'attributes' : {\r\n\t\t\t'search' : '( |\\n|\\r|\\t)([^ \\r\\n\\t=]+)(=)'\r\n\t\t\t,'class' : 'attributes'\r\n\t\t\t,'modifiers' : 'g'\r\n\t\t\t,'execute' : 'before' // before or after\r\n\t\t}\r\n\t}\r\n\t,'STYLES' : {\r\n\t\t'COMMENTS': 'color: #AAAAAA;'\r\n\t\t,'QUOTESMARKS': 'color: #6381F8;'\r\n\t\t,'KEYWORDS' : {\r\n\t\t\t'reserved' : 'color: #48BDDF;'\r\n\t\t\t,'functions' : 'color: #0000FF;'\r\n\t\t\t,'statements' : 'color: #60CA00;'\r\n\t\t\t}\r\n\t\t,'OPERATORS' : 'color: #E775F0;'\r\n\t\t,'DELIMITERS' : ''\r\n\t\t,'REGEXPS' : {\r\n\t\t\t'attributes': 'color: #990033;'\r\n\t\t\t,'cftags': 'color: #990033;'\r\n\t\t\t,'cftags2': 'color: #990033;'\r\n\t\t\t,'tags': 'color: #000099;'\r\n\t\t\t,'doctype': 'color: #8DCFB5;'\r\n\t\t\t,'test': 'color: #00FF00;'\r\n\t\t}\t\r\n\t}\t\t\r\n};\r\n\n \t  \t \n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/reg_syntax/cpp.js",
    "content": "editAreaLoader.load_syntax[\"cpp\"] = {\r\n\t'DISPLAY_NAME' : 'CPP'\r\n\t,'COMMENT_SINGLE' : {1 : '//'}\r\n\t,'COMMENT_MULTI' : {'/*' : '*/'}\r\n\t,'QUOTEMARKS' : {1: \"'\", 2: '\"'}\r\n\t,'KEYWORD_CASE_SENSITIVE' : true\r\n\t,'KEYWORDS' : {\r\n\t\t'constants' : [\r\n\t\t\t'NULL', 'false', 'std', 'stdin', 'stdout', 'stderr',\r\n\t\t\t'true'\r\n\t\t]\r\n\t\t,'types' : [\r\n\t\t\t'FILE', 'auto', 'char', 'class', 'const', 'double',\r\n\t\t\t'extern', 'float', 'friend', 'inline', 'int',\r\n\t\t\t'iterator', 'long', 'map', 'operator', 'queue',\r\n\t\t\t'register', 'short', 'signed', 'size_t', 'stack',\r\n\t\t\t'static', 'string', 'struct', 'time_t', 'typedef',\r\n\t\t\t'union', 'unsigned', 'vector', 'void', 'volatile'\r\n\t\t]\r\n\t\t,'statements' : [\r\n\t\t\t'catch', 'do', 'else', 'enum', 'for', 'goto', 'if',\r\n\t\t\t'sizeof', 'switch', 'this', 'throw', 'try', 'while'\r\n\t\t]\r\n \t\t,'keywords' : [\r\n\t\t\t'break', 'case', 'continue', 'default', 'delete',\r\n\t\t\t'namespace', 'new', 'private', 'protected', 'public',\r\n\t\t\t'return', 'using'\r\n\t\t]\r\n\t}\r\n\t,'OPERATORS' :[\r\n\t\t'+', '-', '/', '*', '=', '<', '>', '%', '!', '?', ':', '&'\r\n\t]\r\n\t,'DELIMITERS' :[\r\n\t\t'(', ')', '[', ']', '{', '}'\r\n\t]\r\n\t,'REGEXPS' : {\r\n\t\t'precompiler' : {\r\n\t\t\t'search' : '()(#[^\\r\\n]*)()'\r\n\t\t\t,'class' : 'precompiler'\r\n\t\t\t,'modifiers' : 'g'\r\n\t\t\t,'execute' : 'before'\r\n\t\t}\r\n/*\t\t,'precompilerstring' : {\r\n\t\t\t'search' : '(#[\\t ]*include[\\t ]*)([^\\r\\n]*)([^\\r\\n]*[\\r\\n])'\r\n\t\t\t,'class' : 'precompilerstring'\r\n\t\t\t,'modifiers' : 'g'\r\n\t\t\t,'execute' : 'before'\r\n\t\t}*/\r\n\t}\r\n\t,'STYLES' : {\r\n\t\t'COMMENTS': 'color: #AAAAAA;'\r\n\t\t,'QUOTESMARKS': 'color: #6381F8;'\r\n\t\t,'KEYWORDS' : {\r\n\t\t\t'constants' : 'color: #EE0000;'\r\n\t\t\t,'types' : 'color: #0000EE;'\r\n\t\t\t,'statements' : 'color: #60CA00;'\r\n\t\t\t,'keywords' : 'color: #48BDDF;'\r\n\t\t}\r\n\t\t,'OPERATORS' : 'color: #FF00FF;'\r\n\t\t,'DELIMITERS' : 'color: #0038E1;'\r\n\t\t,'REGEXPS' : {\r\n\t\t\t'precompiler' : 'color: #009900;'\r\n\t\t\t,'precompilerstring' : 'color: #994400;'\r\n\t\t}\r\n\t}\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/reg_syntax/css.js",
    "content": "editAreaLoader.load_syntax[\"css\"] = {\r\n\t'DISPLAY_NAME' : 'CSS'\r\n\t,'COMMENT_SINGLE' : {1 : '@'}\r\n\t,'COMMENT_MULTI' : {'/*' : '*/'}\r\n\t,'QUOTEMARKS' : ['\"', \"'\"]\r\n\t,'KEYWORD_CASE_SENSITIVE' : false\r\n\t,'KEYWORDS' : {\r\n\t\t'attributes' : [\r\n\t\t\t'aqua', 'azimuth', 'background-attachment', 'background-color',\r\n\t\t\t'background-image', 'background-position', 'background-repeat',\r\n\t\t\t'background', 'border-bottom-color', 'border-bottom-style',\r\n\t\t\t'border-bottom-width', 'border-left-color', 'border-left-style',\r\n\t\t\t'border-left-width', 'border-right', 'border-right-color',\r\n\t\t\t'border-right-style', 'border-right-width', 'border-top-color',\r\n\t\t\t'border-top-style', 'border-top-width','border-bottom', 'border-collapse',\r\n\t\t\t'border-left', 'border-width', 'border-color', 'border-spacing',\r\n\t\t\t'border-style', 'border-top', 'border',  'caption-side',\r\n\t\t\t'clear', 'clip', 'color', 'content', 'counter-increment', 'counter-reset',\r\n\t\t\t'cue-after', 'cue-before', 'cue', 'cursor', 'direction', 'display',\r\n\t\t\t'elevation', 'empty-cells', 'float', 'font-family', 'font-size',\r\n\t\t\t'font-size-adjust', 'font-stretch', 'font-style', 'font-variant',\r\n\t\t\t'font-weight', 'font', 'height', 'letter-spacing', 'line-height',\r\n\t\t\t'list-style', 'list-style-image', 'list-style-position', 'list-style-type',\r\n\t\t\t'margin-bottom', 'margin-left', 'margin-right', 'margin-top', 'margin',\r\n\t\t\t'marker-offset', 'marks', 'max-height', 'max-width', 'min-height',\r\n\t\t\t'min-width', 'opacity', 'orphans', 'outline', 'outline-color', 'outline-style',\r\n\t\t\t'outline-width', 'overflow', 'padding-bottom', 'padding-left',\r\n\t\t\t'padding-right', 'padding-top', 'padding', 'page', 'page-break-after',\r\n\t\t\t'page-break-before', 'page-break-inside', 'pause-after', 'pause-before',\r\n\t\t\t'pause', 'pitch', 'pitch-range',  'play-during', 'position', 'quotes',\r\n\t\t\t'richness', 'right', 'size', 'speak-header', 'speak-numeral', 'speak-punctuation',\r\n\t\t\t'speak', 'speech-rate', 'stress', 'table-layout', 'text-align', 'text-decoration',\r\n\t\t\t'text-indent', 'text-shadow', 'text-transform', 'top', 'unicode-bidi',\r\n\t\t\t'vertical-align', 'visibility', 'voice-family', 'volume', 'white-space', 'widows',\r\n\t\t\t'width', 'word-spacing', 'z-index', 'bottom', 'left'\r\n\t\t]\r\n\t\t,'values' : [\r\n\t\t\t'above', 'absolute', 'always', 'armenian', 'aural', 'auto', 'avoid',\r\n\t\t\t'baseline', 'behind', 'below', 'bidi-override', 'black', 'blue', 'blink', 'block', 'bold', 'bolder', 'both',\r\n\t\t\t'capitalize', 'center-left', 'center-right', 'center', 'circle', 'cjk-ideographic', \r\n            'close-quote', 'collapse', 'condensed', 'continuous', 'crop', 'crosshair', 'cross', 'cursive',\r\n\t\t\t'dashed', 'decimal-leading-zero', 'decimal', 'default', 'digits', 'disc', 'dotted', 'double',\r\n\t\t\t'e-resize', 'embed', 'extra-condensed', 'extra-expanded', 'expanded',\r\n\t\t\t'fantasy', 'far-left', 'far-right', 'faster', 'fast', 'fixed', 'fuchsia',\r\n\t\t\t'georgian', 'gray', 'green', 'groove', 'hebrew', 'help', 'hidden', 'hide', 'higher',\r\n\t\t\t'high', 'hiragana-iroha', 'hiragana', 'icon', 'inherit', 'inline-table', 'inline',\r\n\t\t\t'inset', 'inside', 'invert', 'italic', 'justify', 'katakana-iroha', 'katakana',\r\n\t\t\t'landscape', 'larger', 'large', 'left-side', 'leftwards', 'level', 'lighter', 'lime', 'line-through', 'list-item', 'loud', 'lower-alpha', 'lower-greek', 'lower-roman', 'lowercase', 'ltr', 'lower', 'low',\r\n\t\t\t'maroon', 'medium', 'message-box', 'middle', 'mix', 'monospace',\r\n\t\t\t'n-resize', 'narrower', 'navy', 'ne-resize', 'no-close-quote', 'no-open-quote', 'no-repeat', 'none', 'normal', 'nowrap', 'nw-resize',\r\n\t\t\t'oblique', 'olive', 'once', 'open-quote', 'outset', 'outside', 'overline',\r\n\t\t\t'pointer', 'portrait', 'purple', 'px',\r\n\t\t\t'red', 'relative', 'repeat-x', 'repeat-y', 'repeat', 'rgb', 'ridge', 'right-side', 'rightwards',\r\n\t\t\t's-resize', 'sans-serif', 'scroll', 'se-resize', 'semi-condensed', 'semi-expanded', 'separate', 'serif', 'show', 'silent', 'silver', 'slow', 'slower', 'small-caps', 'small-caption', 'smaller', 'soft', 'solid', 'spell-out', 'square',\r\n\t\t\t'static', 'status-bar', 'super', 'sw-resize',\r\n\t\t\t'table-caption', 'table-cell', 'table-column', 'table-column-group', 'table-footer-group', 'table-header-group', 'table-row', 'table-row-group', 'teal', 'text', 'text-bottom', 'text-top', 'thick', 'thin', 'transparent',\r\n\t\t\t'ultra-condensed', 'ultra-expanded', 'underline', 'upper-alpha', 'upper-latin', 'upper-roman', 'uppercase', 'url',\r\n\t\t\t'visible',\r\n\t\t\t'w-resize', 'wait', 'white', 'wider',\r\n\t\t\t'x-fast', 'x-high', 'x-large', 'x-loud', 'x-low', 'x-small', 'x-soft', 'xx-large', 'xx-small',\r\n\t\t\t'yellow', 'yes'\r\n\t\t]\r\n\t\t,'specials' : [\r\n\t\t\t'important'\r\n\t\t]\r\n\t}\r\n\t,'OPERATORS' :[\r\n\t\t':', ';', '!', '.', '#'\r\n\t]\r\n\t,'DELIMITERS' :[\r\n\t\t'{', '}'\r\n\t]\r\n\t,'STYLES' : {\r\n\t\t'COMMENTS': 'color: #AAAAAA;'\r\n\t\t,'QUOTESMARKS': 'color: #6381F8;'\r\n\t\t,'KEYWORDS' : {\r\n\t\t\t'attributes' : 'color: #48BDDF;'\r\n\t\t\t,'values' : 'color: #2B60FF;'\r\n\t\t\t,'specials' : 'color: #FF0000;'\r\n\t\t\t}\r\n\t\t,'OPERATORS' : 'color: #FF00FF;'\r\n\t\t,'DELIMITERS' : 'color: #60CA00;'\r\n\t\t\t\t\r\n\t}\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/reg_syntax/html.js",
    "content": "/*\r\n* last update: 2006-08-24\r\n*/\r\n\r\neditAreaLoader.load_syntax[\"html\"] = {\r\n\t'DISPLAY_NAME' : 'HTML'\r\n\t,'COMMENT_SINGLE' : {}\r\n\t,'COMMENT_MULTI' : {'<!--' : '-->'}\r\n\t,'QUOTEMARKS' : {1: \"'\", 2: '\"'}\r\n\t,'KEYWORD_CASE_SENSITIVE' : false\r\n\t,'KEYWORDS' : {\r\n\t}\r\n\t,'OPERATORS' :[\r\n\t]\r\n\t,'DELIMITERS' :[\r\n\t]\r\n\t,'REGEXPS' : {\r\n\t\t'doctype' : {\r\n\t\t\t'search' : '()(<!DOCTYPE[^>]*>)()'\r\n\t\t\t,'class' : 'doctype'\r\n\t\t\t,'modifiers' : ''\r\n\t\t\t,'execute' : 'before' // before or after\r\n\t\t}\r\n\t\t,'tags' : {\r\n\t\t\t'search' : '(<)(/?[a-z][^ \\r\\n\\t>]*)([^>]*>)'\r\n\t\t\t,'class' : 'tags'\r\n\t\t\t,'modifiers' : 'gi'\r\n\t\t\t,'execute' : 'before' // before or after\r\n\t\t}\r\n\t\t,'attributes' : {\r\n\t\t\t'search' : '( |\\n|\\r|\\t)([^ \\r\\n\\t=]+)(=)'\r\n\t\t\t,'class' : 'attributes'\r\n\t\t\t,'modifiers' : 'g'\r\n\t\t\t,'execute' : 'before' // before or after\r\n\t\t}\r\n\t}\r\n\t,'STYLES' : {\r\n\t\t'COMMENTS': 'color: #AAAAAA;'\r\n\t\t,'QUOTESMARKS': 'color: #6381F8;'\r\n\t\t,'KEYWORDS' : {\r\n\t\t\t}\r\n\t\t,'OPERATORS' : 'color: #E775F0;'\r\n\t\t,'DELIMITERS' : ''\r\n\t\t,'REGEXPS' : {\r\n\t\t\t'attributes': 'color: #B1AC41;'\r\n\t\t\t,'tags': 'color: #E62253;'\r\n\t\t\t,'doctype': 'color: #8DCFB5;'\r\n\t\t\t,'test': 'color: #00FF00;'\r\n\t\t}\t\r\n\t}\t\t\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/reg_syntax/java.js",
    "content": "editAreaLoader.load_syntax[\"java\"] = {\r\n\t'DISPLAY_NAME' : 'Java'\r\n\t,'COMMENT_SINGLE': { 1: '//', 2: '@' }\r\n\t, 'COMMENT_MULTI': { '/*': '*/' }\r\n\t, 'QUOTEMARKS': { 1: \"'\", 2: '\"' }\r\n\t, 'KEYWORD_CASE_SENSITIVE': true\r\n\t, 'KEYWORDS': {\r\n\t    'constants': [\r\n\t\t\t'null', 'false', 'true'\r\n\t\t]\r\n\t\t, 'types': [\r\n\t\t\t'String', 'int', 'short', 'long', 'char', 'double', 'byte',\r\n\t\t\t'float', 'static', 'void', 'private', 'boolean', 'protected',\r\n\t\t\t'public', 'const', 'class', 'final', 'abstract', 'volatile',\r\n\t\t\t'enum', 'transient', 'interface'\r\n\t\t]\r\n\t\t, 'statements': [\r\n            'this', 'extends', 'if', 'do', 'while', 'try', 'catch', 'finally',\r\n            'throw', 'throws', 'else', 'for', 'switch', 'continue', 'implements',\r\n            'break', 'case', 'default', 'goto'\r\n\t\t]\r\n \t\t, 'keywords': [\r\n           'new', 'return', 'import', 'native', 'super', 'package', 'assert', 'synchronized',\r\n           'instanceof', 'strictfp'\r\n\t\t]\r\n\t}\r\n\t, 'OPERATORS': [\r\n\t\t'+', '-', '/', '*', '=', '<', '>', '%', '!', '?', ':', '&'\r\n\t]\r\n\t, 'DELIMITERS': [\r\n\t\t'(', ')', '[', ']', '{', '}'\r\n\t]\r\n\t, 'REGEXPS': {\r\n\t    'precompiler': {\r\n\t        'search': '()(#[^\\r\\n]*)()'\r\n\t\t\t, 'class': 'precompiler'\r\n\t\t\t, 'modifiers': 'g'\r\n\t\t\t, 'execute': 'before'\r\n\t    }\r\n\t}\r\n\t, 'STYLES': {\r\n\t    'COMMENTS': 'color: #AAAAAA;'\r\n\t\t, 'QUOTESMARKS': 'color: #6381F8;'\r\n\t\t, 'KEYWORDS': {\r\n\t\t    'constants': 'color: #EE0000;'\r\n\t\t\t, 'types': 'color: #0000EE;'\r\n\t\t\t, 'statements': 'color: #60CA00;'\r\n\t\t\t, 'keywords': 'color: #48BDDF;'\r\n\t\t}\r\n\t\t, 'OPERATORS': 'color: #FF00FF;'\r\n\t\t, 'DELIMITERS': 'color: #0038E1;'\r\n\t\t, 'REGEXPS': {\r\n\t\t    'precompiler': 'color: #009900;'\r\n\t\t\t, 'precompilerstring': 'color: #994400;'\r\n\t\t}\r\n\t}\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/reg_syntax/js.js",
    "content": "editAreaLoader.load_syntax[\"js\"] = {\r\n\t'DISPLAY_NAME' : 'Javascript'\r\n\t,'COMMENT_SINGLE' : {1 : '//'}\r\n\t,'COMMENT_MULTI' : {'/*' : '*/'}\r\n\t,'QUOTEMARKS' : {1: \"'\", 2: '\"'}\r\n\t,'KEYWORD_CASE_SENSITIVE' : false\r\n\t,'KEYWORDS' : {\r\n\t\t'statements' : [\r\n\t\t\t'as', 'break', 'case', 'catch', 'continue', 'decodeURI', 'delete', 'do',\r\n\t\t\t'else', 'encodeURI', 'eval', 'finally', 'for', 'if', 'in', 'is', 'item',\r\n\t\t\t'instanceof', 'return', 'switch', 'this', 'throw', 'try', 'typeof', 'void',\r\n\t\t\t'while', 'write', 'with'\r\n\t\t]\r\n \t\t,'keywords' : [\r\n\t\t\t'class', 'const', 'default', 'debugger', 'export', 'extends', 'false',\r\n\t\t\t'function', 'import', 'namespace', 'new', 'null', 'package', 'private',\r\n\t\t\t'protected', 'public', 'super', 'true', 'use', 'var', 'window', 'document',\t\t\r\n\t\t\t// the list below must be sorted and checked (if it is a keywords or a function and if it is not present twice\r\n\t\t\t'Link ', 'outerHeight ', 'Anchor', 'FileUpload', \r\n\t\t\t'location', 'outerWidth', 'Select', 'Area', 'find', 'Location', 'Packages', 'self', \r\n\t\t\t'arguments', 'locationbar', 'pageXoffset', 'Form', \r\n\t\t\t'Math', 'pageYoffset', 'setTimeout', 'assign', 'Frame', 'menubar', 'parent', 'status', \r\n\t\t\t'blur', 'frames', 'MimeType', 'parseFloat', 'statusbar', 'Boolean', 'Function', 'moveBy', \r\n\t\t\t'parseInt', 'stop', 'Button', 'getClass', 'moveTo', 'Password', 'String', 'callee', 'Hidden', \r\n\t\t\t'name', 'personalbar', 'Submit', 'caller', 'history', 'NaN', 'Plugin', 'sun', 'captureEvents', \r\n\t\t\t'History', 'navigate', 'print', 'taint', 'Checkbox', 'home', 'navigator', 'prompt', 'Text', \r\n\t\t\t'Image', 'Navigator', 'prototype', 'Textarea', 'clearTimeout', 'Infinity', \r\n\t\t\t'netscape', 'Radio', 'toolbar', 'close', 'innerHeight', 'Number', 'ref', 'top', 'closed', \r\n\t\t\t'innerWidth', 'Object', 'RegExp', 'toString', 'confirm', 'isFinite', 'onBlur', 'releaseEvents', \r\n\t\t\t'unescape', 'constructor', 'isNan', 'onError', 'Reset', 'untaint', 'Date', 'java', 'onFocus', \r\n\t\t\t'resizeBy', 'unwatch', 'defaultStatus', 'JavaArray', 'onLoad', 'resizeTo', 'valueOf', 'document', \r\n\t\t\t'JavaClass', 'onUnload', 'routeEvent', 'watch', 'Document', 'JavaObject', 'open', 'scroll', 'window', \r\n\t\t\t'Element', 'JavaPackage', 'opener', 'scrollbars', 'Window', 'escape', 'length', 'Option', 'scrollBy'\t\t\t\r\n\t\t]\r\n    \t,'functions' : [\r\n\t\t\t// common functions for Window object\r\n\t\t\t'alert', 'Array', 'back', 'blur', 'clearInterval', 'close', 'confirm', 'eval ', 'focus', 'forward', 'home',\r\n\t\t\t'name', 'navigate', 'onblur', 'onerror', 'onfocus', 'onload', 'onmove',\r\n\t\t\t'onresize', 'onunload', 'open', 'print', 'prompt', 'scroll', 'scrollTo', 'setInterval', 'status',\r\n\t\t\t'stop' \r\n\t\t]\r\n\t}\r\n\t,'OPERATORS' :[\r\n\t\t'+', '-', '/', '*', '=', '<', '>', '%', '!'\r\n\t]\r\n\t,'DELIMITERS' :[\r\n\t\t'(', ')', '[', ']', '{', '}'\r\n\t]\r\n\t,'STYLES' : {\r\n\t\t'COMMENTS': 'color: #AAAAAA;'\r\n\t\t,'QUOTESMARKS': 'color: #6381F8;'\r\n\t\t,'KEYWORDS' : {\r\n\t\t\t'statements' : 'color: #60CA00;'\r\n\t\t\t,'keywords' : 'color: #48BDDF;'\r\n\t\t\t,'functions' : 'color: #2B60FF;'\r\n\t\t}\r\n\t\t,'OPERATORS' : 'color: #FF00FF;'\r\n\t\t,'DELIMITERS' : 'color: #0038E1;'\r\n\t\t\t\t\r\n\t}\r\n\t,'AUTO_COMPLETION' :  {\r\n\t\t\"default\": {\t// the name of this definition group. It's posisble to have different rules inside the same definition file\r\n\t\t\t\"REGEXP\": { \"before_word\": \"[^a-zA-Z0-9_]|^\"\t// \\\\s|\\\\.|\r\n\t\t\t\t\t\t,\"possible_words_letters\": \"[a-zA-Z0-9_]+\"\r\n\t\t\t\t\t\t,\"letter_after_word_must_match\": \"[^a-zA-Z0-9_]|$\"\r\n\t\t\t\t\t\t,\"prefix_separator\": \"\\\\.\"\r\n\t\t\t\t\t}\r\n\t\t\t,\"CASE_SENSITIVE\": true\r\n\t\t\t,\"MAX_TEXT_LENGTH\": 100\t\t// the maximum length of the text being analyzed before the cursor position\r\n\t\t\t,\"KEYWORDS\": {\r\n\t\t\t\t'': [\t// the prefix of thoses items\r\n\t\t\t\t\t\t/**\r\n\t\t\t\t\t\t * 0 : the keyword the user is typing\r\n\t\t\t\t\t\t * 1 : (optionnal) the string inserted in code (\"{@}\" being the new position of the cursor, \"§\" beeing the equivalent to the value the typed string indicated if the previous )\r\n\t\t\t\t\t\t * \t\tIf empty the keyword will be displayed\r\n\t\t\t\t\t\t * 2 : (optionnal) the text that appear in the suggestion box (if empty, the string to insert will be displayed)\r\n\t\t\t\t\t\t */\r\n\t\t\t\t\t\t ['Array', '§()', '']\r\n\t\t\t    \t\t,['alert', '§({@})', 'alert(String message)']\r\n\t\t\t    \t\t,['document']\r\n\t\t\t    \t\t,['window']\r\n\t\t\t    \t]\r\n\t\t    \t,'window' : [\r\n\t\t\t    \t\t ['location']\r\n\t\t\t    \t\t,['document']\r\n\t\t\t    \t\t,['scrollTo', 'scrollTo({@})', 'scrollTo(Int x,Int y)']\r\n\t\t\t\t\t]\r\n\t\t    \t,'location' : [\r\n\t\t\t    \t\t ['href']\r\n\t\t\t\t\t]\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/reg_syntax/pas.js",
    "content": "editAreaLoader.load_syntax[\"pas\"] = {\r\n\t'DISPLAY_NAME' : 'Pascal'\r\n\t,'COMMENT_SINGLE' : {}\r\n\t,'COMMENT_MULTI' : {'{' : '}', '(*':'*)'}\r\n\t,'QUOTEMARKS' : {1: '\"', 2: \"'\"}\r\n\t,'KEYWORD_CASE_SENSITIVE' : false\r\n\t,'KEYWORDS' : {\r\n\t\t'constants' : [\r\n\t\t\t'Blink', 'Black', 'Blue', 'Green', 'Cyan', 'Red',\r\n\t\t\t'Magenta', 'Brown', 'LightGray', 'DarkGray',\r\n\t\t\t'LightBlue', 'LightGreen', 'LightCyan', 'LightRed',\r\n\t\t\t'LightMagenta', 'Yellow', 'White', 'MaxSIntValue',\r\n\t\t\t'MaxUIntValue', 'maxint', 'maxLongint', 'maxSmallint',\r\n\t\t\t'erroraddr', 'errorcode', 'LineEnding'\r\n\t\t]\r\n\t\t,'keywords' : [\r\n\t\t\t'in', 'or', 'div', 'mod', 'and', 'shl', 'shr', 'xor',\r\n\t\t\t'pow', 'is', 'not','Absolute', 'And_then', 'Array',\r\n\t\t\t'Begin', 'Bindable', 'Case', 'Const', 'Do', 'Downto',\r\n\t\t\t'Else', 'End', 'Export', 'File', 'For', 'Function',\r\n\t\t\t'Goto', 'If', 'Import', 'Implementation', 'Inherited',\r\n\t\t\t'Inline', 'Interface', 'Label', 'Module', 'Nil',\r\n\t\t\t'Object', 'Of', 'Only', 'Operator', 'Or_else',\r\n\t\t\t'Otherwise', 'Packed', 'Procedure', 'Program',\r\n\t\t\t'Protected', 'Qualified', 'Record', 'Repeat',\r\n\t\t\t'Restricted', 'Set', 'Then', 'To', 'Type', 'Unit',\r\n\t\t\t'Until', 'Uses', 'Value', 'Var', 'Virtual', 'While',\r\n\t\t\t'With'\r\n\t\t]\r\n\t\t,'functions' : [\r\n\t\t\t'Abs', 'Addr', 'Append', 'Arctan', 'Assert', 'Assign',\r\n\t\t\t'Assigned', 'BinStr', 'Blockread', 'Blockwrite',\r\n\t\t\t'Break', 'Chdir', 'Chr', 'Close', 'CompareByte',\r\n\t\t\t'CompareChar', 'CompareDWord', 'CompareWord', 'Concat',\r\n\t\t\t'Continue', 'Copy', 'Cos', 'CSeg', 'Dec', 'Delete',\r\n\t\t\t'Dispose', 'DSeg', 'Eof', 'Eoln', 'Erase', 'Exclude',\r\n\t\t\t'Exit', 'Exp', 'Filepos', 'Filesize', 'FillByte',\r\n\t\t\t'Fillchar', 'FillDWord', 'Fillword', 'Flush', 'Frac',\r\n\t\t\t'Freemem', 'Getdir', 'Getmem', 'GetMemoryManager',\r\n\t\t\t'Halt', 'HexStr', 'Hi', 'High', 'Inc', 'Include',\r\n\t\t\t'IndexByte', 'IndexChar', 'IndexDWord', 'IndexWord',\r\n\t\t\t'Insert', 'IsMemoryManagerSet', 'Int', 'IOresult',\r\n\t\t\t'Length', 'Ln', 'Lo', 'LongJmp', 'Low', 'Lowercase',\r\n\t\t\t'Mark', 'Maxavail', 'Memavail', 'Mkdir', 'Move',\r\n\t\t\t'MoveChar0', 'New', 'Odd', 'OctStr', 'Ofs', 'Ord',\r\n\t\t\t'Paramcount', 'Paramstr', 'Pi', 'Pos', 'Power', 'Pred',\r\n\t\t\t'Ptr', 'Random', 'Randomize', 'Read', 'Readln',\r\n\t\t\t'Real2Double', 'Release', 'Rename', 'Reset', 'Rewrite',\r\n\t\t\t'Rmdir', 'Round', 'Runerror', 'Seek', 'SeekEof',\r\n\t\t\t'SeekEoln', 'Seg', 'SetMemoryManager', 'SetJmp',\r\n\t\t\t'SetLength', 'SetString', 'SetTextBuf', 'Sin', 'SizeOf',\r\n\t\t\t'Sptr', 'Sqr', 'Sqrt', 'SSeg', 'Str', 'StringOfChar',\r\n\t\t\t'Succ', 'Swap', 'Trunc', 'Truncate', 'Upcase', 'Val',\r\n\t\t\t'Write', 'WriteLn'\r\n\t\t]\r\n\t\t,'types' : [\r\n\t\t\t'Integer', 'Shortint', 'SmallInt', 'Longint',\r\n\t\t\t'Longword', 'Int64', 'Byte', 'Word', 'Cardinal',\r\n\t\t\t'QWord', 'Boolean', 'ByteBool', 'LongBool', 'Char',\r\n\t\t\t'Real', 'Single', 'Double', 'Extended', 'Comp',\r\n\t\t\t'String', 'ShortString', 'AnsiString', 'PChar'\r\n\t\t]\r\n\t}\r\n\t,'OPERATORS' :[\r\n\t\t'@', '*', '+', '-', '/', '^', ':=', '<', '=', '>'\r\n\t]\r\n\t,'DELIMITERS' :[\r\n\t\t'(', ')', '[', ']'\r\n\t]\r\n\t,'STYLES' : {\r\n\t\t'COMMENTS': 'color: #AAAAAA;'\r\n\t\t,'QUOTESMARKS': 'color: #6381F8;'\r\n\t\t,'KEYWORDS' : {\r\n\t\t\t'specials' : 'color: #EE0000;'\r\n\t\t\t,'constants' : 'color: #654321;'\r\n\t\t\t,'keywords' : 'color: #48BDDF;'\r\n\t\t\t,'functions' : 'color: #449922;'\r\n\t\t\t,'types' : 'color: #2B60FF;'\r\n\t\t\t}\r\n\t\t,'OPERATORS' : 'color: #FF00FF;'\r\n\t\t,'DELIMITERS' : 'color: #60CA00;'\r\n\t}\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/reg_syntax/perl.js",
    "content": "/***************************************************************************\r\n * (c) 2008 - file created by Christoph Pinkel, MTC Infomedia OHG.\r\n *\r\n * You may choose any license of the current release or any future release\r\n * of editarea to use, modify and/or redistribute this file.\r\n *\r\n * This language specification file supports for syntax checking on\r\n * a large subset of Perl 5.x.\r\n * The basic common syntax of Perl is fully supported, but as for\r\n * the highlighting of built-in operations, it's mainly designed\r\n * to support for hightlighting Perl code in a Safe environment (compartment)\r\n * as used by CoMaNet for evaluation of administrative scripts. This Safe\r\n * compartment basically allows for all of Opcode's :default operations,\r\n * but little others. See http://perldoc.perl.org/Opcode.html to learn\r\n * more.\r\n ***************************************************************************/\r\n\r\neditAreaLoader.load_syntax[\"perl\"] = {\r\n\t'DISPLAY_NAME' : 'Perl',\r\n\t'COMMENT_SINGLE' : {1 : '#'},\r\n\t'QUOTEMARKS' : {1: \"'\", 2: '\"'},\r\n\t'KEYWORD_CASE_SENSITIVE' : true,\r\n\t'KEYWORDS' :\r\n\t{\r\n\t\t'core' :\r\n\t\t\t[ \"if\", \"else\", \"elsif\", \"while\", \"for\", \"each\", \"foreach\",\r\n\t\t\t\t\"next\", \"last\", \"goto\", \"exists\", \"delete\", \"undef\",\r\n\t\t\t\t\"my\", \"our\", \"local\", \"use\", \"require\", \"package\", \"keys\", \"values\",\r\n\t\t\t\t\"sub\", \"bless\", \"ref\", \"return\" ],\r\n\t\t'functions' :\r\n\t\t\t[\r\n\t\t\t\t//from :base_core\r\n\t\t\t\t\"int\", \"hex\", \"oct\", \"abs\", \"substr\", \"vec\", \"study\", \"pos\",\r\n\t\t\t\t\"length\", \"index\", \"rindex\", \"ord\", \"chr\", \"ucfirst\", \"lcfirst\",\r\n\t\t\t\t\"uc\", \"lc\", \"quotemeta\", \"chop\", \"chomp\", \"split\", \"list\", \"splice\",\r\n\t\t\t\t\"push\", \"pop\", \"shift\", \"unshift\", \"reverse\", \"and\", \"or\", \"dor\",\r\n\t\t\t\t\"xor\", \"warn\", \"die\", \"prototype\",\r\n\t\t\t\t//from :base_mem\r\n\t\t\t\t\"concat\", \"repeat\", \"join\", \"range\",\r\n\t\t\t\t//none from :base_loop, as we'll see them as basic statements...\r\n\t\t\t\t//from :base_orig\r\n\t\t\t\t\"sprintf\", \"crypt\", \"tie\", \"untie\", \"select\", \"localtime\", \"gmtime\",\r\n\t\t\t\t//others\r\n\t\t\t\t\"print\", \"open\", \"close\"\r\n\t\t\t]\r\n\t},\r\n\t'OPERATORS' :\r\n\t\t[ '+', '-', '/', '*', '=', '<', '>', '!', '||', '.', '&&',\r\n\t\t\t' eq ', ' ne ', '=~' ],\r\n\t'DELIMITERS' :\r\n\t\t[ '(', ')', '[', ']', '{', '}' ],\r\n\t'REGEXPS' :\r\n\t{\r\n\t\t'packagedecl' : { 'search': '(package )([^ \\r\\n\\t#;]*)()',\r\n\t\t\t'class' : 'scopingnames',\r\n\t\t\t'modifiers' : 'g', 'execute' : 'before' },\r\n\t\t'subdecl' : { 'search': '(sub )([^ \\r\\n\\t#]*)()',\r\n\t\t\t'class' : 'scopingnames',\r\n\t\t\t'modifiers' : 'g', 'execute' : 'before' },\r\n\t\t'scalars' : { 'search': '()(\\\\\\$[a-zA-Z0-9_:]*)()',\r\n\t\t\t'class' : 'vars',\r\n\t\t\t'modifiers' : 'g', 'execute' : 'after' },\r\n\t\t'arrays' : { 'search': '()(@[a-zA-Z0-9_:]*)()',\r\n\t\t\t'class' : 'vars',\r\n\t\t\t'modifiers' : 'g', 'execute' : 'after' },\r\n\t\t'hashs' : { 'search': '()(%[a-zA-Z0-9_:]*)()',\r\n\t\t\t'class' : 'vars',\r\n\t\t\t'modifiers' : 'g', 'execute' : 'after' },\r\n\t},\r\n\r\n\t'STYLES' :\r\n\t{\r\n\t\t'COMMENTS': 'color: #AAAAAA;',\r\n\t\t'QUOTESMARKS': 'color: #DC0000;',\r\n\t\t'KEYWORDS' :\r\n\t\t{\r\n\t\t\t'core' : 'color: #8aca00;',\r\n\t\t\t'functions' : 'color: #2B60FF;'\r\n\t\t},\r\n\t\t'OPERATORS' : 'color: #8aca00;',\r\n\t\t'DELIMITERS' : 'color: #0038E1;',\r\n\t\t'REGEXPS':\r\n\t\t{\r\n\t\t\t'scopingnames' : 'color: #ff0000;',\r\n\t\t\t'vars' : 'color: #00aaaa;',\r\n\t\t}\r\n\t} //'STYLES'\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/reg_syntax/php.js",
    "content": "editAreaLoader.load_syntax[\"php\"] = {\r\n\t'DISPLAY_NAME' : 'Php'\r\n\t,'COMMENT_SINGLE' : {1 : '//', 2 : '#'}\r\n\t,'COMMENT_MULTI' : {'/*' : '*/'}\r\n\t,'QUOTEMARKS' : {1: \"'\", 2: '\"'}\r\n\t,'KEYWORD_CASE_SENSITIVE' : false\r\n\t,'KEYWORDS' : {\r\n\t\t'statements' : [\r\n\t\t\t'include', 'require', 'include_once', 'require_once',\r\n\t\t\t'for', 'foreach', 'as', 'if', 'elseif', 'else', 'while', 'do', 'endwhile',\r\n            'endif', 'switch', 'case', 'endswitch',\r\n\t\t\t'return', 'break', 'continue'\r\n\t\t]\r\n\t\t,'reserved' : [\r\n\t\t\t'_GET', '_POST', '_SESSION', '_SERVER', '_FILES', '_ENV', '_COOKIE', '_REQUEST',\r\n\t\t\t'null', '__LINE__', '__FILE__',\r\n\t\t\t'false', '&lt;?php', '?&gt;', '&lt;?',\r\n\t\t\t'&lt;script language', '&lt;/script&gt;',\r\n\t\t\t'true', 'var', 'default',\r\n\t\t\t'function', 'class', 'new', '&amp;new', 'this',\r\n\t\t\t'__FUNCTION__', '__CLASS__', '__METHOD__', 'PHP_VERSION',\r\n\t\t\t'PHP_OS', 'DEFAULT_INCLUDE_PATH', 'PEAR_INSTALL_DIR', 'PEAR_EXTENSION_DIR',\r\n\t\t\t'PHP_EXTENSION_DIR', 'PHP_BINDIR', 'PHP_LIBDIR', 'PHP_DATADIR', 'PHP_SYSCONFDIR',\r\n\t\t\t'PHP_LOCALSTATEDIR', 'PHP_CONFIG_FILE_PATH', 'PHP_OUTPUT_HANDLER_START', 'PHP_OUTPUT_HANDLER_CONT',\r\n\t\t\t'PHP_OUTPUT_HANDLER_END', 'E_ERROR', 'E_WARNING', 'E_PARSE', 'E_NOTICE',\r\n\t\t\t'E_CORE_ERROR', 'E_CORE_WARNING', 'E_COMPILE_ERROR', 'E_COMPILE_WARNING', 'E_USER_ERROR',\r\n\t\t\t'E_USER_WARNING', 'E_USER_NOTICE', 'E_ALL'\r\n\t\t\t\r\n\t\t]\r\n\t\t,'functions' : [\r\n\t\t\t'func_num_args', 'func_get_arg', 'func_get_args', 'strlen', 'strcmp', 'strncmp', 'strcasecmp', 'strncasecmp', 'each', 'error_reporting', 'define', 'defined',\r\n\t\t\t'trigger_error', 'user_error', 'set_error_handler', 'restore_error_handler', 'get_declared_classes', 'get_loaded_extensions',\r\n\t\t\t'extension_loaded', 'get_extension_funcs', 'debug_backtrace',\r\n\t\t\t'constant', 'bin2hex', 'sleep', 'usleep', 'time', 'mktime', 'gmmktime', 'strftime', 'gmstrftime', 'strtotime', 'date', 'gmdate', 'getdate', 'localtime', 'checkdate', 'flush', 'wordwrap', 'htmlspecialchars', 'htmlentities', 'html_entity_decode', 'md5', 'md5_file', 'crc32', 'getimagesize', 'image_type_to_mime_type', 'phpinfo', 'phpversion', 'phpcredits', 'strnatcmp', 'strnatcasecmp', 'substr_count', 'strspn', 'strcspn', 'strtok', 'strtoupper', 'strtolower', 'strpos', 'strrpos', 'strrev', 'hebrev', 'hebrevc', 'nl2br', 'basename', 'dirname', 'pathinfo', 'stripslashes', 'stripcslashes', 'strstr', 'stristr', 'strrchr', 'str_shuffle', 'str_word_count', 'strcoll', 'substr', 'substr_replace', 'quotemeta', 'ucfirst', 'ucwords', 'strtr', 'addslashes', 'addcslashes', 'rtrim', 'str_replace', 'str_repeat', 'count_chars', 'chunk_split', 'trim', 'ltrim', 'strip_tags', 'similar_text', 'explode', 'implode', 'setlocale', 'localeconv',\r\n\t\t\t'parse_str', 'str_pad', 'chop', 'strchr', 'sprintf', 'printf', 'vprintf', 'vsprintf', 'sscanf', 'fscanf', 'parse_url', 'urlencode', 'urldecode', 'rawurlencode', 'rawurldecode', 'readlink', 'linkinfo', 'link', 'unlink', 'exec', 'system', 'escapeshellcmd', 'escapeshellarg', 'passthru', 'shell_exec', 'proc_open', 'proc_close', 'rand', 'srand', 'getrandmax', 'mt_rand', 'mt_srand', 'mt_getrandmax', 'base64_decode', 'base64_encode', 'abs', 'ceil', 'floor', 'round', 'is_finite', 'is_nan', 'is_infinite', 'bindec', 'hexdec', 'octdec', 'decbin', 'decoct', 'dechex', 'base_convert', 'number_format', 'fmod', 'ip2long', 'long2ip', 'getenv', 'putenv', 'getopt', 'microtime', 'gettimeofday', 'getrusage', 'uniqid', 'quoted_printable_decode', 'set_time_limit', 'get_cfg_var', 'magic_quotes_runtime', 'set_magic_quotes_runtime', 'get_magic_quotes_gpc', 'get_magic_quotes_runtime',\r\n\t\t\t'import_request_variables', 'error_log', 'serialize', 'unserialize', 'memory_get_usage', 'var_dump', 'var_export', 'debug_zval_dump', 'print_r','highlight_file', 'show_source', 'highlight_string', 'ini_get', 'ini_get_all', 'ini_set', 'ini_alter', 'ini_restore', 'get_include_path', 'set_include_path', 'restore_include_path', 'setcookie', 'header', 'headers_sent', 'connection_aborted', 'connection_status', 'ignore_user_abort', 'parse_ini_file', 'is_uploaded_file', 'move_uploaded_file', 'intval', 'floatval', 'doubleval', 'strval', 'gettype', 'settype', 'is_null', 'is_resource', 'is_bool', 'is_long', 'is_float', 'is_int', 'is_integer', 'is_double', 'is_real', 'is_numeric', 'is_string', 'is_array', 'is_object', 'is_scalar',\r\n\t\t\t'ereg', 'ereg_replace', 'eregi', 'eregi_replace', 'split', 'spliti', 'join', 'sql_regcase', 'dl', 'pclose', 'popen', 'readfile', 'rewind', 'rmdir', 'umask', 'fclose', 'feof', 'fgetc', 'fgets', 'fgetss', 'fread', 'fopen', 'fpassthru', 'ftruncate', 'fstat', 'fseek', 'ftell', 'fflush', 'fwrite', 'fputs', 'mkdir', 'rename', 'copy', 'tempnam', 'tmpfile', 'file', 'file_get_contents', 'stream_select', 'stream_context_create', 'stream_context_set_params', 'stream_context_set_option', 'stream_context_get_options', 'stream_filter_prepend', 'stream_filter_append', 'fgetcsv', 'flock', 'get_meta_tags', 'stream_set_write_buffer', 'set_file_buffer', 'set_socket_blocking', 'stream_set_blocking', 'socket_set_blocking', 'stream_get_meta_data', 'stream_register_wrapper', 'stream_wrapper_register', 'stream_set_timeout', 'socket_set_timeout', 'socket_get_status', 'realpath', 'fnmatch', 'fsockopen', 'pfsockopen', 'pack', 'unpack', 'get_browser', 'crypt', 'opendir', 'closedir', 'chdir', 'getcwd', 'rewinddir', 'readdir', 'dir', 'glob', 'fileatime', 'filectime', 'filegroup', 'fileinode', 'filemtime', 'fileowner', 'fileperms', 'filesize', 'filetype', 'file_exists', 'is_writable', 'is_writeable', 'is_readable', 'is_executable', 'is_file', 'is_dir', 'is_link', 'stat', 'lstat', 'chown',\r\n\t\t\t'touch', 'clearstatcache', 'mail', 'ob_start', 'ob_flush', 'ob_clean', 'ob_end_flush', 'ob_end_clean', 'ob_get_flush', 'ob_get_clean', 'ob_get_length', 'ob_get_level', 'ob_get_status', 'ob_get_contents', 'ob_implicit_flush', 'ob_list_handlers', 'ksort', 'krsort', 'natsort', 'natcasesort', 'asort', 'arsort', 'sort', 'rsort', 'usort', 'uasort', 'uksort', 'shuffle', 'array_walk', 'count', 'end', 'prev', 'next', 'reset', 'current', 'key', 'min', 'max', 'in_array', 'array_search', 'extract', 'compact', 'array_fill', 'range', 'array_multisort', 'array_push', 'array_pop', 'array_shift', 'array_unshift', 'array_splice', 'array_slice', 'array_merge', 'array_merge_recursive', 'array_keys', 'array_values', 'array_count_values', 'array_reverse', 'array_reduce', 'array_pad', 'array_flip', 'array_change_key_case', 'array_rand', 'array_unique', 'array_intersect', 'array_intersect_assoc', 'array_diff', 'array_diff_assoc', 'array_sum', 'array_filter', 'array_map', 'array_chunk', 'array_key_exists', 'pos', 'sizeof', 'key_exists', 'assert', 'assert_options', 'version_compare', 'ftok', 'str_rot13', 'aggregate',\r\n\t\t\t'session_name', 'session_module_name', 'session_save_path', 'session_id', 'session_regenerate_id', 'session_decode', 'session_register', 'session_unregister', 'session_is_registered', 'session_encode',\r\n\t\t\t'session_start', 'session_destroy', 'session_unset', 'session_set_save_handler', 'session_cache_limiter', 'session_cache_expire', 'session_set_cookie_params', 'session_get_cookie_params', 'session_write_close', 'preg_match', 'preg_match_all', 'preg_replace', 'preg_replace_callback', 'preg_split', 'preg_quote', 'preg_grep', 'overload', 'ctype_alnum', 'ctype_alpha', 'ctype_cntrl', 'ctype_digit', 'ctype_lower', 'ctype_graph', 'ctype_print', 'ctype_punct', 'ctype_space', 'ctype_upper', 'ctype_xdigit', 'virtual', 'apache_request_headers', 'apache_note', 'apache_lookup_uri', 'apache_child_terminate', 'apache_setenv', 'apache_response_headers', 'apache_get_version', 'getallheaders', 'mysql_connect', 'mysql_pconnect', 'mysql_close', 'mysql_select_db', 'mysql_create_db', 'mysql_drop_db', 'mysql_query', 'mysql_unbuffered_query', 'mysql_db_query', 'mysql_list_dbs', 'mysql_list_tables', 'mysql_list_fields', 'mysql_list_processes', 'mysql_error', 'mysql_errno', 'mysql_affected_rows', 'mysql_insert_id', 'mysql_result', 'mysql_num_rows', 'mysql_num_fields', 'mysql_fetch_row', 'mysql_fetch_array', 'mysql_fetch_assoc', 'mysql_fetch_object', 'mysql_data_seek', 'mysql_fetch_lengths', 'mysql_fetch_field', 'mysql_field_seek', 'mysql_free_result', 'mysql_field_name', 'mysql_field_table', 'mysql_field_len', 'mysql_field_type', 'mysql_field_flags', 'mysql_escape_string', 'mysql_real_escape_string', 'mysql_stat',\r\n\t\t\t'mysql_thread_id', 'mysql_client_encoding', 'mysql_get_client_info', 'mysql_get_host_info', 'mysql_get_proto_info', 'mysql_get_server_info', 'mysql_info', 'mysql', 'mysql_fieldname', 'mysql_fieldtable', 'mysql_fieldlen', 'mysql_fieldtype', 'mysql_fieldflags', 'mysql_selectdb', 'mysql_createdb', 'mysql_dropdb', 'mysql_freeresult', 'mysql_numfields', 'mysql_numrows', 'mysql_listdbs', 'mysql_listtables', 'mysql_listfields', 'mysql_db_name', 'mysql_dbname', 'mysql_tablename', 'mysql_table_name', 'pg_connect', 'pg_pconnect', 'pg_close', 'pg_connection_status', 'pg_connection_busy', 'pg_connection_reset', 'pg_host', 'pg_dbname', 'pg_port', 'pg_tty', 'pg_options', 'pg_ping', 'pg_query', 'pg_send_query', 'pg_cancel_query', 'pg_fetch_result', 'pg_fetch_row', 'pg_fetch_assoc', 'pg_fetch_array', 'pg_fetch_object', 'pg_fetch_all', 'pg_affected_rows', 'pg_get_result', 'pg_result_seek', 'pg_result_status', 'pg_free_result', 'pg_last_oid', 'pg_num_rows', 'pg_num_fields', 'pg_field_name', 'pg_field_num', 'pg_field_size', 'pg_field_type', 'pg_field_prtlen', 'pg_field_is_null', 'pg_get_notify', 'pg_get_pid', 'pg_result_error', 'pg_last_error', 'pg_last_notice', 'pg_put_line', 'pg_end_copy', 'pg_copy_to', 'pg_copy_from',\r\n\t\t\t'pg_trace', 'pg_untrace', 'pg_lo_create', 'pg_lo_unlink', 'pg_lo_open', 'pg_lo_close', 'pg_lo_read', 'pg_lo_write', 'pg_lo_read_all', 'pg_lo_import', 'pg_lo_export', 'pg_lo_seek', 'pg_lo_tell', 'pg_escape_string', 'pg_escape_bytea', 'pg_unescape_bytea', 'pg_client_encoding', 'pg_set_client_encoding', 'pg_meta_data', 'pg_convert', 'pg_insert', 'pg_update', 'pg_delete', 'pg_select', 'pg_exec', 'pg_getlastoid', 'pg_cmdtuples', 'pg_errormessage', 'pg_numrows', 'pg_numfields', 'pg_fieldname', 'pg_fieldsize', 'pg_fieldtype', 'pg_fieldnum', 'pg_fieldprtlen', 'pg_fieldisnull', 'pg_freeresult', 'pg_result', 'pg_loreadall', 'pg_locreate', 'pg_lounlink', 'pg_loopen', 'pg_loclose', 'pg_loread', 'pg_lowrite', 'pg_loimport', 'pg_loexport',\r\n\t\t\t'echo', 'print', 'global', 'static', 'exit', 'array', 'empty', 'eval', 'isset', 'unset', 'die'\r\n\r\n\t\t]\r\n\t}\r\n\t,'OPERATORS' :[\r\n\t\t'+', '-', '/', '*', '=', '<', '>', '%', '!', '&&', '||'\r\n\t]\r\n\t,'DELIMITERS' :[\r\n\t\t'(', ')', '[', ']', '{', '}'\r\n\t]\r\n\t,'REGEXPS' : {\r\n\t\t// highlight all variables ($...)\r\n\t\t'variables' : {\r\n\t\t\t'search' : '()(\\\\$\\\\w+)()'\r\n\t\t\t,'class' : 'variables'\r\n\t\t\t,'modifiers' : 'g'\r\n\t\t\t,'execute' : 'before' // before or after\r\n\t\t}\r\n\t}\r\n\t,'STYLES' : {\r\n\t\t'COMMENTS': 'color: #AAAAAA;'\r\n\t\t,'QUOTESMARKS': 'color: #879EFA;'\r\n\t\t,'KEYWORDS' : {\r\n\t\t\t'reserved' : 'color: #48BDDF;'\r\n\t\t\t,'functions' : 'color: #0040FD;'\r\n\t\t\t,'statements' : 'color: #60CA00;'\r\n\t\t\t}\r\n\t\t,'OPERATORS' : 'color: #FF00FF;'\r\n\t\t,'DELIMITERS' : 'color: #2B60FF;'\r\n\t\t,'REGEXPS' : {\r\n\t\t\t'variables' : 'color: #E0BD54;'\r\n\t\t}\t\t\r\n\t}\r\n\t,'AUTO_COMPLETION' :  {\r\n\t\t\"default\": {\t// the name of this definition group. It's posisble to have different rules inside the same definition file\r\n\t\t\t\"REGEXP\": { \"before_word\": \"[^a-zA-Z0-9_]|^\"\t// \\\\s|\\\\.|\r\n\t\t\t\t\t\t,\"possible_words_letters\": \"[a-zA-Z0-9_\\$]+\"\r\n\t\t\t\t\t\t,\"letter_after_word_must_match\": \"[^a-zA-Z0-9_]|$\"\r\n\t\t\t\t\t\t,\"prefix_separator\": \"\\\\-\\\\>|\\\\:\\\\:\"\r\n\t\t\t\t\t}\r\n\t\t\t,\"CASE_SENSITIVE\": true\r\n\t\t\t,\"MAX_TEXT_LENGTH\": 100\t\t// the maximum length of the text being analyzed before the cursor position\r\n\t\t\t,\"KEYWORDS\": {\r\n\t\t\t\t\t'': [\t// the prefix of thoses items\r\n\t\t\t\t\t\t/**\r\n\t\t\t\t\t\t * 0 : the keyword the user is typing\r\n\t\t\t\t\t\t * 1 : (optionnal) the string inserted in code (\"{@}\" being the new position of the cursor, \"§\" beeing the equivalent to the value the typed string indicated if the previous )\r\n\t\t\t\t\t\t * \t\tIf empty the keyword will be displayed\r\n\t\t\t\t\t\t * 2 : (optionnal) the text that appear in the suggestion box (if empty, the string to insert will be displayed)\r\n\t\t\t\t\t\t */\r\n\t\t\t\t\t\t ['$_POST']\r\n\t\t\t    \t\t,['$_GET']\r\n\t\t\t    \t\t,['$_SESSION']\r\n\t\t\t    \t\t,['$_SERVER']\r\n\t\t\t    \t\t,['$_FILES']\r\n\t\t\t    \t\t,['$_ENV']\r\n\t\t\t    \t\t,['$_COOKIE']\r\n\t\t\t    \t\t,['$_REQUEST']\r\n\t\t\t    \t\t// magic methods\r\n\t\t\t    \t\t,['__construct', '§( {@} )']\r\n\t\t\t    \t\t,['__destruct', '§( {@} )']\r\n\t\t\t    \t\t,['__sleep', '§( {@} )']\r\n\t\t\t    \t\t,['__wakeup', '§( {@} )']\r\n\t\t\t    \t\t,['__toString', '§( {@} )']\r\n\t\t\t    \t\t// include\r\n\t\t\t    \t\t,['include', '§ \"{@}\";']\r\n\t\t\t    \t\t,['include_once', '§ \"{@}\";']\r\n\t\t\t    \t\t,['require', '§ \"{@}\";']\r\n\t\t\t    \t\t,['require_once', '§ \"{@}\";']\r\n\t\t\t    \t\t// statements\r\n\t\t\t    \t\t,['for', '§( {@} )']\r\n\t\t\t    \t\t,['foreach', '§( {@} )']\r\n\t\t\t    \t\t,['if', '§( {@} )']\r\n\t\t\t    \t\t,['elseif', '§( {@} )']\r\n\t\t\t    \t\t,['while', '§( {@} )']\r\n\t\t\t    \t\t,['switch', '§( {@} )']\r\n\t\t\t    \t\t,['break']\r\n\t\t\t    \t\t,['case']\r\n\t\t\t    \t\t,['continue']\r\n\t\t\t    \t\t,['do']\r\n\t\t\t    \t\t,['else']\r\n\t\t\t    \t\t,['endif']\r\n\t\t\t    \t\t,['endswitch']\r\n\t\t\t    \t\t,['endwhile']\r\n\t\t\t    \t\t,['return']\r\n\t\t\t    \t\t// function\r\n\t\t\t    \t\t,['unset', '§( {@} )']\r\n\t\t\t\t\t]\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t,\"live\": {\t\r\n\t\t\t\r\n\t\t\t// class NAME: /class\\W+([a-z]+)\\W+/gi\r\n\t\t\t// method: /^(public|private|protected)?\\s*function\\s+([a-z][a-z0-9\\_]*)\\s*(\\([^\\{]*\\))/gmi\r\n\t\t\t// static: /^(public|private|protected)?\\s+static\\s+(public|private|protected)?\\s*function\\s+([a-z][a-z0-9\\_]*)\\s*(\\([^\\{]*\\))/gmi \r\n\t\t\t// attributes: /(\\$this\\-\\>|(?:var|public|protected|private)\\W+\\$)([a-z0-9\\_]+)(?!\\()\\b/gi \r\n\t\t\t// \t\tv1 : /(\\$this\\-\\>|var\\W+|public\\W+|protected\\W+|private\\W+)([a-z0-9\\_]+)\\W*(=|;)/gi \r\n\t\t\t// var type: /(\\$(this\\-\\>)?[a-z0-9\\_]+)\\s*\\=\\s*new\\s+([a-z0-9\\_])+/gi \r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\"REGEXP\": { \"before_word\": \"[^a-zA-Z0-9_]|^\"\t// \\\\s|\\\\.|\r\n\t\t\t\t\t\t,\"possible_words_letters\": \"[a-zA-Z0-9_\\$]+\"\r\n\t\t\t\t\t\t,\"letter_after_word_must_match\": \"[^a-zA-Z0-9_]|$\"\r\n\t\t\t\t\t\t,\"prefix_separator\": \"\\\\-\\\\>\"\r\n\t\t\t\t\t}\r\n\t\t\t,\"CASE_SENSITIVE\": true\r\n\t\t\t,\"MAX_TEXT_LENGTH\": 100\t\t// the maximum length of the text being analyzed before the cursor position\r\n\t\t\t,\"KEYWORDS\": {\r\n\t\t\t\t\t'$this': [\t// the prefix of thoses items\r\n\t\t\t\t\t\t['test']\r\n\t\t\t\t\t]\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t}\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/reg_syntax/python.js",
    "content": "/**\r\n * Python syntax v 1.1 \r\n * \r\n * v1.1 by Andre Roberge (2006/12/27)\r\n *   \r\n**/\r\neditAreaLoader.load_syntax[\"python\"] = {\r\n\t'DISPLAY_NAME' : 'Python'\r\n\t,'COMMENT_SINGLE' : {1 : '#'}\r\n\t,'COMMENT_MULTI' : {}\r\n\t,'QUOTEMARKS' : {1: \"'\", 2: '\"'}\r\n\t,'KEYWORD_CASE_SENSITIVE' : true\r\n\t,'KEYWORDS' : {\r\n\t\t/*\r\n\t\t** Set 1: reserved words\r\n\t\t** http://python.org/doc/current/ref/keywords.html\r\n\t\t** Note: 'as' and 'with' have been added starting with Python 2.5\r\n\t\t*/\r\n\t\t'reserved' : [\r\n\t\t\t'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif',\r\n\t\t\t'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', \r\n\t\t\t'import', 'is', 'in', 'lambda', 'not', 'or', 'pass', 'print', 'raise',\r\n\t\t\t'return', 'try', 'while', 'with', 'yield'\r\n\t\t\t//the following are *almost* reserved; we'll treat them as such\r\n\t\t\t, 'False', 'True', 'None'\r\n\t\t]\r\n\t\t/*\r\n\t\t** Set 2: builtins\r\n\t\t** http://python.org/doc/current/lib/built-in-funcs.html\r\n\t\t*/\t\r\n\t\t,'builtins' : [\r\n\t\t\t'__import__', 'abs', 'basestring', 'bool', 'callable', 'chr', 'classmethod', 'cmp', \r\n\t\t\t'compile', 'complex', 'delattr', 'dict', 'dir', 'divmod', 'enumerate', 'eval', 'execfile', \r\n\t\t\t'file', 'filter', 'float', 'frozenset', 'getattr', 'globals', 'hasattr', 'hash', 'help',\r\n\t\t\t'hex', 'id', 'input', 'int', 'isinstance', 'issubclass', 'iter', 'len', 'list', 'locals',\r\n\t\t\t'long', 'map', 'max', 'min', 'object', 'oct', 'open', 'ord', 'pow', 'property', 'range',\r\n\t\t\t'raw_input', 'reduce', 'reload', 'repr', 'reversed', 'round', 'set', 'setattr', 'slice',\r\n\t\t\t'sorted', 'staticmethod', 'str', 'sum', 'super', 'tuple', 'type', 'unichr', 'unicode', \r\n\t\t\t'vars', 'xrange', 'zip',\r\n\t\t\t// Built-in constants: http://www.python.org/doc/2.4.1/lib/node35.html\r\n\t\t\t//'False', 'True', 'None' have been included in 'reserved'\r\n\t\t\t'NotImplemented', 'Ellipsis',\r\n\t\t\t// Built-in Exceptions: http://python.org/doc/current/lib/module-exceptions.html\r\n\t\t\t'Exception', 'StandardError', 'ArithmeticError', 'LookupError', 'EnvironmentError',\r\n\t\t\t'AssertionError', 'AttributeError', 'EOFError', 'FloatingPointError', 'IOError',\r\n\t\t\t'ImportError', 'IndexError', 'KeyError', 'KeyboardInterrupt', 'MemoryError', 'NameError',\r\n\t\t\t'NotImplementedError', 'OSError', 'OverflowError', 'ReferenceError', 'RuntimeError',\r\n\t\t\t'StopIteration', 'SyntaxError', 'SystemError', 'SystemExit', 'TypeError',\r\n\t\t\t'UnboundlocalError', 'UnicodeError', 'UnicodeEncodeError', 'UnicodeDecodeError',\r\n\t\t\t'UnicodeTranslateError', 'ValueError', 'WindowsError', 'ZeroDivisionError', 'Warning',\r\n\t\t\t'UserWarning', 'DeprecationWarning', 'PendingDeprecationWarning', 'SyntaxWarning',\r\n\t\t\t'RuntimeWarning', 'FutureWarning',\t\t\r\n\t\t\t// we will include the string methods as well\r\n\t\t\t// http://python.org/doc/current/lib/string-methods.html\r\n\t\t\t'capitalize', 'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs',\r\n\t\t\t'find', 'index', 'isalnum', 'isaplpha', 'isdigit', 'islower', 'isspace', 'istitle',\r\n\t\t\t'isupper', 'join', 'ljust', 'lower', 'lstrip', 'replace', 'rfind', 'rindex', 'rjust',\r\n\t\t\t'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title',\r\n\t\t\t'translate', 'upper', 'zfill'\r\n\t\t]\r\n\t\t/*\r\n\t\t** Set 3: standard library\r\n\t\t** http://python.org/doc/current/lib/modindex.html\r\n\t\t*/\r\n\t\t,'stdlib' : [\r\n\t\t\t'__builtin__', '__future__', '__main__', '_winreg', 'aifc', 'AL', 'al', 'anydbm',\r\n\t\t\t'array', 'asynchat', 'asyncore', 'atexit', 'audioop', 'base64', 'BaseHTTPServer',\r\n\t\t\t'Bastion', 'binascii', 'binhex', 'bisect', 'bsddb', 'bz2', 'calendar', 'cd', 'cgi',\r\n\t\t\t'CGIHTTPServer', 'cgitb', 'chunk', 'cmath', 'cmd', 'code', 'codecs', 'codeop',\r\n\t\t\t'collections', 'colorsys', 'commands', 'compileall', 'compiler', 'compiler',\r\n\t\t\t'ConfigParser', 'Cookie', 'cookielib', 'copy', 'copy_reg', 'cPickle', 'crypt',\r\n\t\t\t'cStringIO', 'csv', 'curses', 'datetime', 'dbhash', 'dbm', 'decimal', 'DEVICE',\r\n\t\t\t'difflib', 'dircache', 'dis', 'distutils', 'dl', 'doctest', 'DocXMLRPCServer', 'dumbdbm',\r\n\t\t\t'dummy_thread', 'dummy_threading', 'email', 'encodings', 'errno', 'exceptions', 'fcntl',\r\n\t\t\t'filecmp', 'fileinput', 'FL', 'fl', 'flp', 'fm', 'fnmatch', 'formatter', 'fpectl',\r\n\t\t\t'fpformat', 'ftplib', 'gc', 'gdbm', 'getopt', 'getpass', 'gettext', 'GL', 'gl', 'glob',\r\n\t\t\t'gopherlib', 'grp', 'gzip', 'heapq', 'hmac', 'hotshot', 'htmlentitydefs', 'htmllib',\r\n\t\t\t'HTMLParser', 'httplib', 'imageop', 'imaplib', 'imgfile', 'imghdr', 'imp', 'inspect',\r\n\t\t\t'itertools', 'jpeg', 'keyword', 'linecache', 'locale', 'logging', 'mailbox', 'mailcap',\r\n\t\t\t'marshal', 'math', 'md5', 'mhlib', 'mimetools', 'mimetypes', 'MimeWriter', 'mimify',\r\n\t\t\t'mmap', 'msvcrt', 'multifile', 'mutex', 'netrc', 'new', 'nis', 'nntplib', 'operator',\r\n\t\t\t'optparse', 'os', 'ossaudiodev', 'parser', 'pdb', 'pickle', 'pickletools', 'pipes',\r\n\t\t\t'pkgutil', 'platform', 'popen2', 'poplib', 'posix', 'posixfile', 'pprint', 'profile',\r\n\t\t\t'pstats', 'pty', 'pwd', 'py_compile', 'pyclbr', 'pydoc', 'Queue', 'quopri', 'random',\r\n\t\t\t're', 'readline', 'repr', 'resource', 'rexec', 'rfc822', 'rgbimg', 'rlcompleter',\r\n\t\t\t'robotparser', 'sched', 'ScrolledText', 'select', 'sets', 'sgmllib', 'sha', 'shelve',\r\n\t\t\t'shlex', 'shutil', 'signal', 'SimpleHTTPServer', 'SimpleXMLRPCServer', 'site', 'smtpd',\r\n\t\t\t'smtplib', 'sndhdr', 'socket', 'SocketServer', 'stat', 'statcache', 'statvfs', 'string',\r\n\t\t\t'StringIO', 'stringprep', 'struct', 'subprocess', 'sunau', 'SUNAUDIODEV', 'sunaudiodev',\r\n\t\t\t'symbol', 'sys', 'syslog', 'tabnanny', 'tarfile', 'telnetlib', 'tempfile', 'termios',\r\n\t\t\t'test', 'textwrap', 'thread', 'threading', 'time', 'timeit', 'Tix', 'Tkinter', 'token',\r\n\t\t\t'tokenize', 'traceback', 'tty', 'turtle', 'types', 'unicodedata', 'unittest', 'urllib2',\r\n\t\t\t'urllib', 'urlparse', 'user', 'UserDict', 'UserList', 'UserString', 'uu', 'warnings',\r\n\t\t\t'wave', 'weakref', 'webbrowser', 'whichdb', 'whrandom', 'winsound', 'xdrlib', 'xml',\r\n\t\t\t'xmllib', 'xmlrpclib', 'zipfile', 'zipimport', 'zlib'\r\n\r\n\t\t]\r\n\t\t/*\r\n\t\t** Set 4: special methods\r\n\t\t** http://python.org/doc/current/ref/specialnames.html\r\n\t\t*/\r\n\t\t,'special' : [\r\n\t\t\t// Basic customization: http://python.org/doc/current/ref/customization.html\r\n\t\t\t'__new__', '__init__', '__del__', '__repr__', '__str__', \r\n\t\t\t'__lt__', '__le__', '__eq__', '__ne__', '__gt__', '__ge__', '__cmp__', '__rcmp__',\r\n\t\t\t'__hash__', '__nonzero__', '__unicode__', '__dict__',\r\n\t\t\t// Attribute access: http://python.org/doc/current/ref/attribute-access.html\r\n\t\t\t'__setattr__', '__delattr__', '__getattr__', '__getattribute__', '__get__', '__set__',\r\n\t\t\t'__delete__', '__slots__',\r\n\t\t\t// Class creation, callable objects\r\n\t\t\t'__metaclass__', '__call__', \r\n\t\t\t// Container types: http://python.org/doc/current/ref/sequence-types.html\r\n\t\t\t'__len__', '__getitem__', '__setitem__', '__delitem__', '__iter__', '__contains__',\r\n\t\t\t'__getslice__', '__setslice__', '__delslice__',\r\n\t\t\t// Numeric types: http://python.org/doc/current/ref/numeric-types.html\r\n\t\t\t'__abs__','__add__','__and__','__coerce__','__div__','__divmod__','__float__',\r\n\t\t\t'__hex__','__iadd__','__isub__','__imod__','__idiv__','__ipow__','__iand__',\r\n\t\t\t'__ior__','__ixor__', '__ilshift__','__irshift__','__invert__','__int__',\r\n\t\t\t'__long__','__lshift__',\r\n\t\t\t'__mod__','__mul__','__neg__','__oct__','__or__','__pos__','__pow__',\r\n\t\t\t'__radd__','__rdiv__','__rdivmod__','__rmod__','__rpow__','__rlshift__','__rrshift__',\r\n\t\t\t'__rshift__','__rsub__','__rmul__','__repr__','__rand__','__rxor__','__ror__',\r\n\t\t\t'__sub__','__xor__'\r\n\t\t]\r\n\t}\r\n\t,'OPERATORS' :[\r\n\t\t'+', '-', '/', '*', '=', '<', '>', '%', '!', '&', ';', '?', '`', ':', ','\r\n\t]\r\n\t,'DELIMITERS' :[\r\n\t\t'(', ')', '[', ']', '{', '}'\r\n\t]\r\n\t,'STYLES' : {\r\n\t\t'COMMENTS': 'color: #AAAAAA;'\r\n\t\t,'QUOTESMARKS': 'color: #660066;'\r\n\t\t,'KEYWORDS' : {\r\n\t\t\t'reserved' : 'color: #0000FF;'\r\n\t\t\t,'builtins' : 'color: #009900;'\r\n\t\t\t,'stdlib' : 'color: #009900;'\r\n\t\t\t,'special': 'color: #006666;'\r\n\t\t\t}\r\n\t\t,'OPERATORS' : 'color: #993300;'\r\n\t\t,'DELIMITERS' : 'color: #993300;'\r\n\t\t\t\t\r\n\t}\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/reg_syntax/robotstxt.js",
    "content": "editAreaLoader.load_syntax[\"robotstxt\"] = {\r\n\t'DISPLAY_NAME' : 'Robots txt',\r\n\t'COMMENT_SINGLE' : {1 : '#'},\r\n\t'COMMENT_MULTI' : {},\r\n\t'QUOTEMARKS' : [],\r\n\t'KEYWORD_CASE_SENSITIVE' : false,\r\n\t'KEYWORDS' : {\r\n\t\t'attributes' : ['User-agent', 'Disallow', 'Allow', 'Crawl-delay'],\r\n\t\t'values' : ['*'],\r\n\t\t'specials' : ['*']\r\n\t},\r\n\t'OPERATORS' :[':'],\r\n\t'DELIMITERS' :[],\r\n\t'STYLES' : {\r\n\t\t'COMMENTS': 'color: #AAAAAA;',\r\n\t\t'QUOTESMARKS': 'color: #6381F8;',\r\n\t\t'KEYWORDS' : {\r\n\t\t\t'attributes' : 'color: #48BDDF;',\r\n\t\t\t'values' : 'color: #2B60FF;',\r\n\t\t\t'specials' : 'color: #FF0000;'\r\n\t\t\t},\r\n\t'OPERATORS' : 'color: #FF00FF;',\r\n\t'DELIMITERS' : 'color: #60CA00;'\t\t\t\r\n\t}\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/reg_syntax/ruby.js",
    "content": "/**\r\n * Ruby syntax v 1.0 \r\n * \r\n * v1.0 by Patrice De Saint Steban (2007/01/03)\r\n *   \r\n**/\r\neditAreaLoader.load_syntax[\"ruby\"] = {\r\n\t'DISPLAY_NAME' : 'Ruby'\r\n\t,'COMMENT_SINGLE' : {1 : '#'}\r\n\t,'COMMENT_MULTI' : {}\r\n\t,'QUOTEMARKS' : {1: \"'\", 2: '\"'}\r\n\t,'KEYWORD_CASE_SENSITIVE' : true\r\n\t,'KEYWORDS' : {\r\n\t\t'reserved' : [\r\n\t\t\t'alias', 'and', 'BEGIN', 'begin', 'break', 'case', 'class', 'def', 'defined', 'do', 'else',\r\n\t\t\t'elsif', 'END', 'end', 'ensure', 'false', 'for', 'if', \r\n\t\t\t'in', 'module', 'next', 'not', 'or', 'redo', 'rescue', 'retry',\r\n\t\t\t'return', 'self', 'super', 'then', 'true', 'undef', 'unless', 'until', 'when', 'while', 'yield'\r\n\t\t]\r\n\t}\r\n\t,'OPERATORS' :[\r\n\t\t'+', '-', '/', '*', '=', '<', '>', '%', '!', '&', ';', '?', '`', ':', ','\r\n\t]\r\n\t,'DELIMITERS' :[\r\n\t\t'(', ')', '[', ']', '{', '}'\r\n\t]\n\t,'REGEXPS' : {\n\t\t'constants' : {\r\n\t\t\t'search' : '()([A-Z]\\\\w*)()'\r\n\t\t\t,'class' : 'constants'\r\n\t\t\t,'modifiers' : 'g'\r\n\t\t\t,'execute' : 'before' \r\n\t\t}\n\t\t,'variables' : {\r\n\t\t\t'search' : '()([\\$\\@\\%]+\\\\w+)()'\r\n\t\t\t,'class' : 'variables'\r\n\t\t\t,'modifiers' : 'g'\r\n\t\t\t,'execute' : 'before' \r\n\t\t}\n\t\t,'numbers' : {\r\n\t\t\t'search' : '()(-?[0-9]+)()'\r\n\t\t\t,'class' : 'numbers'\r\n\t\t\t,'modifiers' : 'g'\r\n\t\t\t,'execute' : 'before' \r\n\t\t}\n\t\t,'symbols' : {\r\n\t\t\t'search' : '()(:\\\\w+)()'\r\n\t\t\t,'class' : 'symbols'\r\n\t\t\t,'modifiers' : 'g'\r\n\t\t\t,'execute' : 'before'\r\n\t\t}\n\t}\r\n\t,'STYLES' : {\r\n\t\t'COMMENTS': 'color: #AAAAAA;'\r\n\t\t,'QUOTESMARKS': 'color: #660066;'\r\n\t\t,'KEYWORDS' : {\r\n\t\t\t'reserved' : 'font-weight: bold; color: #0000FF;'\r\n\t\t\t}\r\n\t\t,'OPERATORS' : 'color: #993300;'\r\n\t\t,'DELIMITERS' : 'color: #993300;'\r\n\t\t,'REGEXPS' : {\n\t\t\t'variables' : 'color: #E0BD54;'\n\t\t\t,'numbers' : 'color: green;'\n\t\t\t,'constants' : 'color: #00AA00;'\n\t\t\t,'symbols' : 'color: #879EFA;'\n\t\t}\t\r\n\t}\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/reg_syntax/smarty.js",
    "content": "editAreaLoader.load_syntax[\"smarty\"] = {\r\n\t'COMMENT_MULTI' : {'{{*' : '*}}'}\r\n\t,'QUOTEMARKS' : {1: \"'\", 2: '\"'}\r\n\t,'KEYWORD_CASE_SENSITIVE' : true\r\n\t,'KEYWORDS' : {\r\n\t\t'constants' : [\r\n\t\t\t// Campsite smarty functions and Smarty custom functions\r\n\t\t\t'comment_form', 'list_article_attachments', 'list_article_audio_attachments', 'list_article_comments',\r\n\t\t\t'list_article_images', 'list_articles', 'list_article_topics', 'list_issues', 'list_languages',\r\n\t\t\t'list_search_results', 'list_sections', 'list_subtitles', 'list_subtopics', 'local', 'login_form',\r\n\t\t\t'search_form', 'subscription_form', 'user_form', 'breadcrumb', 'calendar', 'camp_edit', 'camp_select',\r\n\t\t\t'captcha_image_link', 'disable_html_encoding', 'enable_html_encoding', 'formparameters', 'set_article',\r\n\t\t\t'set_current_issue', 'set_default_article', 'set_default_issue', 'set_default_language', 'set_default_publication',\r\n\t\t\t'set_default_section', 'set_default_topic', 'set_issue', 'set_language', 'set_publication', 'set_section',\r\n\t\t\t'set_topic', 'unset_article', 'unset_comment', 'unset_issue', 'unset_language', 'unset_publication',\r\n\t\t\t'unset_section', 'unset_topic', 'uripath', 'uri', 'urlparameters', 'url', 'camp_date_format', 'camp_filesize_format',\r\n\t\t\t'obfuscate_email', 'teaser',\r\n\t\t\t'assign', 'counter', 'cycle', 'debug', 'eval', 'fetch', 'html_checkboxes', 'html_image', 'html_options', 'html_radios',\r\n                        'html_select_date', 'html_select_time', 'html_table', 'mailto', 'math', 'popup', 'popup_init', 'textformat',\r\n                        'echo', 'print', 'global', 'static', 'exit', 'array', 'empty', 'eval', 'isset', 'unset', 'die',\r\n\t\t\t'capitalize', 'cat', 'count_characters', 'count_paragraphs', 'count_sentences', 'count_words', 'date_format',\r\n\t\t\t'escape', 'indent', 'lower', 'nl2br', 'regex_replace', 'replace', 'spacify', 'string_format', 'strip',\r\n\t\t\t'strip_tags', 'truncate', 'upper', 'wordwrap'\r\n\t\t]\r\n\t\t,'statements' : [\r\n\t\t\t// Smarty built-in functions\r\n\t\t\t'capture', 'config_load', 'foreach', 'foreachelse',\r\n\t\t\t'if', 'elseif', 'else', 'include', 'include_php', 'insert',\r\n\t\t\t'ldelim', 'rdelim', 'literal', 'php', 'section', 'sectionelse', 'strip'\r\n\t\t]\r\n\t\t,'reserved' : [\r\n\t\t\t// \r\n\t\t\t'name', 'number', 'english_name', 'code', 'defined',\r\n\t\t\t'identifier', 'site', 'defined', 'public_comments', 'moderated_comments', 'captcha_enabled',\r\n\t\t\t'subscription_currency', 'subscription_time_unit', 'subscription_trial_time',\r\n\t\t\t'subscription_paid_time', 'subscription_time', 'subscription_unit_cost',\r\n\t\t\t'subscription_unit_cost_all_lang', 'date', 'publish_date', 'url_name', 'is_current',\r\n\t\t\t'description', 'author', 'keywords', 'has_keyword', 'type_name', 'creation_date',\r\n\t\t\t'last_update', 'translated_to', 'subtitles_count', 'subtitle_url_id', 'current_subtitle_no',\r\n\t\t\t'owner', 'comments_enabled', 'comments_locked', 'comment_count', 'on_front_page',\r\n\t\t\t'on_section_page', 'is_published', 'is_public', 'is_indexed', 'content_accessible',\r\n\t\t\t'has_attachments', 'image_index', 'has_image', 'topics_count', 'has_topics', 'has_topic',\r\n\t\t\t'reads', 'request_object_id', 'all_subtitles', 'first_paragraph', 'subtitle_number',\r\n\t\t\t'subtitle_is_current', 'has_previous_subtitles', 'has_next_subtitles', 'file_name',\r\n\t\t\t'mime_type', 'extension', 'size_b', 'size_kb', 'size_mb', 'title', 'creator', 'genre',\r\n\t\t\t'length', 'year', 'bitrate', 'samplerate', 'album', 'format', 'composer', 'channels',\r\n\t\t\t'rating', 'track_no', 'disk_no', 'lyrics', 'real_name', 'nickname', 'reader_email',\r\n\t\t\t'submit_date', 'subject', 'content', 'level', 'field_name', 'formatted_name', 'count',\r\n\t\t\t'photographer', 'place', 'article_index', 'imageurl', 'thumbnailurl', 'uname', 'gender',\r\n\t\t\t'email', 'city', 'str_address', 'state', 'phone', 'fax', 'country', 'country_code',\r\n\t\t\t'second_phone', 'postal_code', 'field1', 'field2', 'field3', 'field4', 'field5',\r\n\t\t\t'text1', 'text2', 'text3', 'pref1', 'pref2', 'pref3', 'pref4', 'logged_in', 'is_blocked_from_comments',\r\n\t\t\t'is_admin', 'has_permission', 'start_date', 'expiration_date', 'is_active', 'is_valid',\r\n\t\t\t'has_section', 'at_beginning', 'at_end', 'has_next_elements', 'has_previous_elements',\r\n\t\t\t'previous_start', 'next_start', 'current', 'end', 'index', 'row', 'is_error', 'error_code',\r\n\t\t\t'error_message', 'user_name', 'remember_user', 'ok', 'search_phrase', 'search_keywords',\r\n\t\t\t'match_all', 'search_level', 'submit_button', 'is_trial', 'is_paid', 'uri_path',\r\n\t\t\t'url_parameters', 'form_parameters', 'base', 'path', 'query', 'request_uri', 'scheme',\r\n\t\t\t'host', 'port', 'get_parameter', 'set_parameter', 'reset_parameter'\r\n\t\t]\r\n\t\t,'functions' : [\r\n\t\t\t// Campsite objects\r\n\t\t\t'language', 'default_language', 'publication', 'default_publication', 'issue', 'default_issue',\r\n\t\t\t'article', 'default_article', 'article_attachment', 'audio_attachment', 'article_comment',\r\n\t\t\t'subtitle', 'image', 'topic', 'default_topic', 'user', 'subscription', 'template', 'default_template',\r\n\t\t\t'default_url', 'current_list', 'login_action', 'search_articles_action', 'submit_comment_action',\r\n\t\t\t'preview_comment_action', 'edit_user_action', 'edit_subscription_action'\r\n\t\t]\r\n\t}\r\n\t,'OPERATORS' :[\r\n\t\t'+', '-', '/', '*', '==', '<', '>', '%', '!', '&&', '||', '!=', '>=', '<=', '===', '!'\r\n\t]\r\n\t,'DELIMITERS' :[\r\n\t\t'(', ')', '[', ']', '{', '}'\r\n\t]\r\n\t,'REGEXPS' : {\r\n\t\t// highlight all variables ($...)\r\n\t\t'variables' : {\r\n\t\t\t'search' : '()(\\\\$\\\\w+)()'\r\n\t\t\t,'class' : 'variables'\r\n\t\t\t,'modifiers' : 'g'\r\n\t\t\t,'execute' : 'before' // before or after\r\n\t\t}\r\n\t}\r\n\t,'STYLES' : {\r\n\t\t'CONSTANTS': 'color: #CC0000'\r\n\t\t,'COMMENTS': 'color: #AAAAAA;'\r\n\t\t,'QUOTESMARKS': 'color: #879EFA;'\r\n\t\t,'KEYWORDS' : {\r\n\t\t\t'reserved' : 'color: #48BDDF;'\r\n\t\t\t,'functions' : 'color: #0040FD;'\r\n\t\t\t,'statements' : 'color: #60CA00;'\r\n\t\t\t}\r\n\t\t,'OPERATORS' : 'color: #FF00FF;'\r\n\t\t,'DELIMITERS' : 'color: #2B60FF;'\r\n\t\t,'REGEXPS' : {\r\n\t\t\t'variables' : 'color: #E0BD54;'\r\n\t\t}\t\t\r\n\t}\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/reg_syntax/sql.js",
    "content": "editAreaLoader.load_syntax[\"sql\"] = {\r\n\t'DISPLAY_NAME' : 'SQL'\r\n\t,'COMMENT_SINGLE' : {1 : '--'}\r\n\t,'COMMENT_MULTI' : {'/*' : '*/'}\r\n\t,'QUOTEMARKS' : {1: \"'\", 2: '\"', 3: '`'}\r\n\t,'KEYWORD_CASE_SENSITIVE' : false\r\n\t,'KEYWORDS' : {\r\n\t\t'statements' : [\r\n\t\t\t'select', 'SELECT', 'where', 'order', 'by',\r\n\t\t\t'insert', 'from', 'update', 'grant', 'left join', 'right join', \r\n            'union', 'group', 'having', 'limit', 'alter', 'LIKE','IN','CASE'\r\n\t\t]\r\n\t\t,'reserved' : [\r\n\t\t\t'null', 'enum', 'int', 'boolean', 'add', 'varchar'\r\n\t\t\t\r\n\t\t]\r\n\t\t,'functions' : [\r\n   'ABS','ACOS','ADDDATE','ADDTIME','AES_DECRYPT','AES_ENCRYPT','ASCII','ASIN','ATAN2 ATAN','ATAN','AVG','BENCHMARK','DISTINCT','BIN','BIT_AND','BIT_COUNT','BIT_LENGTH','BIT_OR','BIT_XOR','CAST','CEILING CEIL','CHAR_LENGTH','CHAR',\r\n'CHARACTER_LENGTH','CHARSET','COALESCE','COERCIBILITY','COLLATION','COMPRESS','CONCAT_WS','CONCAT','CONNECTION_ID','CONV','CONVERT_TZ','COS','COT','COUNT','CRC32','CURDATE','CURRENT_DATE','CURRENT_TIME','CURRENT_TIMESTAMP','CURRENT_USER','CURTIME','DATABASE','DATE_ADD','DATE_FORMAT','DATE_SUB','DATE','DATEDIFF','DAY','DAYNAME','DAYOFMONTH',\r\n'DAYOFWEEK','DAYOFYEAR','DECODE','DEFAULT','DEGREES','DES_DECRYPT','DES_ENCRYPT','ELT','ENCODE','ENCRYPT','EXP','EXPORT_SET','EXTRACT','FIELD','FIND_IN_SET','FLOOR','FORMAT','FOUND_ROWS','FROM_DAYS','FROM_UNIXTIME','GET_FORMAT','GET_LOCK','GREATEST','GROUP_CONCAT','HEX','HOUR','IF','IFNULL','INET_ATON','INET_NTOA',\r\n'INSERT','INSTR','INTERVAL','IS_FREE_LOCK','IS_USED_LOCK','ISNULL','LAST_DAY','LAST_INSERT_ID','LCASE','LEAST','LEFT','LENGTH','LN','LOAD_FILE','LOCALTIME','LOCALTIMESTAMP','LOCATE','LOG10','LOG2','LOG','LOWER','LPAD','LTRIM','MAKE_SET','MAKEDATE','MAKETIME','MASTER_POS_WAIT','MAX','MD5','MICROSECOND',\r\n'MID','MIN','MINUTE','MOD','MONTH','MONTHNAME','NOW','NULLIF','OCT','OCTET_LENGTH','OLD_PASSWORD','ORD','PASSWORD','PERIOD_ADD','PERIOD_DIFF','PI','POSITION','POW','POWER','PROCEDURE ANALYSE','QUARTER','QUOTE','RADIANS','RAND','RELEASE_LOCK','REPEAT','REPLACE','REVERSE','RIGHT','ROUND',\r\n'RPAD','RTRIM','SEC_TO_TIME','SECOND','SESSION_USER','SHA1','SHA','SIGN','SIN','SOUNDEX','SOUNDS LIKE','SPACE','SQRT','STD','STDDEV','STR_TO_DATE','STRCMP','SUBDATE','SUBSTRING_INDEX','SUBSTRING','SUBSTR','SUBTIME','SUM','SYSDATE','SYSTEM_USER','TAN','TIME_FORMAT','TIME_TO_SEC','TIME','TIMEDIFF',\r\n'TIMESTAMP','TO_DAYS','TRIM','TRUNCATE','UCASE','UNCOMPRESS','UNCOMPRESSED_LENGTH','UNHEX','UNIX_TIMESTAMP','UPPER','USER','UTC_DATE','UTC_TIME','UTC_TIMESTAMP','UUID','VALUES','VARIANCE','WEEK','WEEKDAY','WEEKOFYEAR','YEAR','YEARWEEK'\r\n\t\t]\r\n\t}\r\n\t,'OPERATORS' :[\r\n     'AND','&&','BETWEEN','BINARY','&','|','^','/','DIV','<=>','=','>=','>','<<','>>','IS','NULL','<=','<','-','%','!=','<>','!','||','OR','+','REGEXP','RLIKE','XOR','~','*'\r\n\t]\r\n\t,'DELIMITERS' :[\r\n\t\t'(', ')', '[', ']', '{', '}'\r\n\t]\r\n\t,'REGEXPS' : {\r\n\t\t// highlight all variables (@...)\r\n\t\t'variables' : {\r\n\t\t\t'search' : '()(\\\\@\\\\w+)()'\r\n\t\t\t,'class' : 'variables'\r\n\t\t\t,'modifiers' : 'g'\r\n\t\t\t,'execute' : 'before' // before or after\r\n\t\t}\r\n\t}\r\n\t,'STYLES' : {\r\n\t\t'COMMENTS': 'color: #AAAAAA;'\r\n\t\t,'QUOTESMARKS': 'color: #879EFA;'\r\n\t\t,'KEYWORDS' : {\r\n\t\t\t'reserved' : 'color: #48BDDF;'\r\n\t\t\t,'functions' : 'color: #0040FD;'\r\n\t\t\t,'statements' : 'color: #60CA00;'\r\n\t\t\t}\r\n\t\t,'OPERATORS' : 'color: #FF00FF;'\r\n\t\t,'DELIMITERS' : 'color: #2B60FF;'\r\n\t\t,'REGEXPS' : {\r\n\t\t\t'variables' : 'color: #E0BD54;'\r\n\t\t}\t\t\r\n\t}\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/reg_syntax/tsql.js",
    "content": "editAreaLoader.load_syntax[\"tsql\"] = {\r\n\t'DISPLAY_NAME' : 'T-SQL'\r\n\t,'COMMENT_SINGLE' : {1 : '--'}\r\n\t,'COMMENT_MULTI' : {'/*' : '*/'}\r\n\t,'QUOTEMARKS' : {1: \"'\" }\r\n\t,'KEYWORD_CASE_SENSITIVE' : false\r\n\t,'KEYWORDS' : {\r\n\t\t'statements': [\r\n\t\t    'ADD', 'EXCEPT', 'PERCENT', 'EXEC', 'PLAN', 'ALTER', 'EXECUTE', 'PRECISION',\r\n\t\t    'PRIMARY', 'EXIT', 'PRINT', 'AS', 'FETCH', 'PROC', 'ASC',\r\n\t\t    'FILE', 'PROCEDURE', 'AUTHORIZATION', 'FILLFACTOR', 'PUBLIC', 'BACKUP', 'FOR', 'RAISERROR',\r\n\t\t    'BEGIN', 'FOREIGN', 'READ', 'FREETEXT', 'READTEXT', 'BREAK', 'FREETEXTTABLE',\r\n\t\t    'RECONFIGURE', 'BROWSE', 'FROM', 'REFERENCES', 'BULK', 'FULL', 'REPLICATION', 'BY',\r\n\t\t    'FUNCTION', 'RESTORE', 'CASCADE', 'GOTO', 'RESTRICT', 'CASE', 'GRANT', 'RETURN',\r\n\t\t    'CHECK', 'GROUP', 'REVOKE', 'CHECKPOINT', 'HAVING', 'RIGHT', 'CLOSE', 'HOLDLOCK', 'ROLLBACK',\r\n\t\t    'CLUSTERED', 'IDENTITY', 'ROWCOUNT', 'IDENTITY_INSERT', 'ROWGUIDCOL', 'COLLATE', \r\n\t\t    'IDENTITYCOL', 'RULE', 'COLUMN', 'IF', 'SAVE', 'COMMIT', 'SCHEMA', 'COMPUTE', 'INDEX',\r\n\t\t    'SELECT', 'CONSTRAINT', 'CONTAINS', 'INSERT', 'SET',\r\n\t\t    'CONTAINSTABLE', 'INTERSECT', 'SETUSER', 'CONTINUE', 'INTO', 'SHUTDOWN', 'SOME',\r\n\t\t    'CREATE', 'STATISTICS', 'KEY', 'CURRENT', 'KILL', 'TABLE',\r\n\t\t    'CURRENT_DATE', 'TEXTSIZE', 'CURRENT_TIME', 'THEN', 'LINENO',\r\n\t\t    'TO', 'LOAD', 'TOP', 'CURSOR', 'NATIONAL', 'TRAN', 'DATABASE', 'NOCHECK', \r\n\t\t    'TRANSACTION', 'DBCC', 'NONCLUSTERED', 'TRIGGER', 'DEALLOCATE', 'TRUNCATE',\r\n\t\t    'DECLARE', 'TSEQUAL', 'DEFAULT', 'UNION', 'DELETE', 'OF', 'UNIQUE',\r\n\t\t    'DENY', 'OFF', 'UPDATE', 'DESC', 'OFFSETS', 'UPDATETEXT', 'DISK', 'ON', 'USE', 'DISTINCT', 'OPEN',\r\n\t\t    'DISTRIBUTED', 'OPENDATASOURCE', 'VALUES', 'DOUBLE', 'OPENQUERY', 'VARYING', 'DROP', \r\n\t\t    'OPENROWSET', 'VIEW', 'DUMMY', 'OPENXML', 'WAITFOR', 'DUMP', 'OPTION', 'WHEN', 'ELSE', 'WHERE',\r\n\t\t    'END', 'ORDER', 'WHILE', 'ERRLVL', 'WITH', 'ESCAPE', 'OVER', 'WRITETEXT'\r\n\t\t],\r\n\t\t'functions': [\r\n\t\t    'COALESCE', 'SESSION_USER', 'CONVERT', 'SYSTEM_USER', 'CURRENT_TIMESTAMP', 'CURRENT_USER', 'NULLIF', 'USER',\r\n\t\t\t'AVG', 'MIN', 'CHECKSUM', 'SUM', 'CHECKSUM_AGG', 'STDEV', 'COUNT', 'STDEVP', 'COUNT_BIG', 'VAR', 'GROUPING', 'VARP', 'MAX',\r\n\t\t\t'@@DATEFIRST', '@@OPTIONS', '@@DBTS', '@@REMSERVER', '@@LANGID', '@@SERVERNAME', '@@LANGUAGE', '@@SERVICENAME', '@@LOCK_TIMEOUT',\r\n\t\t\t'@@SPID', '@@MAX_CONNECTIONS', '@@TEXTSIZE', '@@MAX_PRECISION', '@@VERSION', '@@NESTLEVEL',\r\n\t\t\t'@@CURSOR_ROWS', 'CURSOR_STATUS', '@@FETCH_STATUS',\r\n\t\t\t'DATEADD', 'DATEDIFF', 'DATENAME', 'DATEPART', 'DAY', 'GETDATE', 'GETUTCDATE', 'MONTH', 'YEAR',\r\n\t\t\t'ABS', 'DEGREES', 'RAND', 'ACOS', 'EXP', 'ROUND', 'ASIN', 'FLOOR', 'SIGN', 'ATAN', 'LOG', 'SIN', 'ATN2', 'LOG10', 'SQRT',\r\n\t\t\t'CEILING', 'PI ', 'SQUARE', 'COS', 'POWER', 'TAN', 'COT', 'RADIANS',\r\n\t\t\t'@@PROCID', 'COL_LENGTH', 'FULLTEXTCATALOGPROPERTY', 'COL_NAME', 'FULLTEXTSERVICEPROPERTY', 'COLUMNPROPERTY', 'INDEX_COL',\r\n\t\t\t'DATABASEPROPERTY', 'INDEXKEY_PROPERTY', 'DATABASEPROPERTYEX', 'INDEXPROPERTY', 'DB_ID', 'OBJECT_ID', 'DB_NAME', 'OBJECT_NAME',\r\n\t\t\t'FILE_ID', 'OBJECTPROPERTY', 'OBJECTPROPERTYEX', 'FILE_NAME', 'SQL_VARIANT_PROPERTY', 'FILEGROUP_ID', 'FILEGROUP_NAME',\r\n\t\t\t'FILEGROUPPROPERTY', 'TYPEPROPERTY', 'FILEPROPERTY',\r\n\t\t\t'CURRENT_USER', 'SUSER_ID', 'SUSER_SID', 'IS_MEMBER', 'SUSER_SNAME', 'IS_SRVROLEMEMBER', 'PERMISSIONS', 'SYSTEM_USER',\r\n\t\t\t'SUSER_NAME', 'USER_ID', 'SESSION_USER', 'USER_NAME', 'ASCII', 'SOUNDEX', 'PATINDEX', 'SPACE', 'CHARINDEX', 'QUOTENAME',\r\n\t\t\t'STR', 'DIFFERENCE', 'REPLACE', 'STUFF', 'REPLICATE', 'SUBSTRING', 'LEN', 'REVERSE', 'UNICODE', 'LOWER',\r\n\t\t\t'UPPER', 'LTRIM', 'RTRIM', 'APP_NAME', 'CAST', 'CONVERT', 'COALESCE', 'COLLATIONPROPERTY', 'COLUMNS_UPDATED', 'CURRENT_TIMESTAMP',\r\n\t\t\t'CURRENT_USER', 'DATALENGTH', '@@ERROR', 'FORMATMESSAGE', 'GETANSINULL', 'HOST_ID', 'HOST_NAME', 'IDENT_CURRENT', 'IDENT_INCR',\r\n\t\t\t'IDENT_SEED', '@@IDENTITY', 'ISDATE', 'ISNULL', 'ISNUMERIC', 'NEWID', 'NULLIF', 'PARSENAME', '@@ROWCOUNT',\r\n\t\t\t'SCOPE_IDENTITY', 'SERVERPROPERTY', 'SESSIONPROPERTY', 'SESSION_USER', 'STATS_DATE', 'SYSTEM_USER', '@@TRANCOUNT', 'USER_NAME',\r\n\t\t\t'@@CONNECTIONS', '@@PACK_RECEIVED', '@@CPU_BUSY', '@@PACK_SENT', '@@TIMETICKS', '@@IDLE', '@@TOTAL_ERRORS', '@@IO_BUSY', '@@TOTAL_READ',\r\n\t\t\t'@@PACKET_ERRORS', '@@TOTAL_WRITE', 'PATINDEX', 'TEXTVALID', 'TEXTPTR'\r\n\t\t],\r\n\t\t'reserved': [\r\n\t\t\t'RIGHT', 'INNER', 'IS', 'JOIN', 'CROSS', 'LEFT', 'NULL', 'OUTER'\r\n\t\t]\r\n\t}\r\n\t,'OPERATORS' :[\r\n\t\t'+', '-', '*', '/', '%', '=', '&' ,'|', '^', '>', '<', '>=', '<=', '<>', '!=', '!<', '!>', 'ALL', 'AND', 'ANY', 'BETWEEN', 'EXISTS', 'IN', 'LIKE', 'NOT', 'OR', '~'\r\n\t]\r\n\t,'DELIMITERS' :[\r\n\t\t'(', ')', '[', ']', '{', '}'\r\n\t]\r\n\t,'REGEXPS' : {\r\n\t\t// highlight all variables (@...)\r\n\t\t'variables' : {\r\n\t\t\t'search' : '()(\\\\@\\\\w+)()'\r\n\t\t\t,'class' : 'variables'\r\n\t\t\t,'modifiers' : 'g'\r\n\t\t\t,'execute' : 'before' // before or after\r\n\t\t}\r\n\t}\r\n\t,'STYLES' : {\r\n\t\t'COMMENTS': 'color: #008000;'\r\n\t\t,'QUOTESMARKS': 'color: #FF0000;'\r\n\t\t,'KEYWORDS' : {\r\n\t\t\t'reserved' : 'color: #808080;'\r\n\t\t\t,'functions' : 'color: #FF00FF;'\r\n\t\t\t,'statements' : 'color: #0000FF;'\r\n\t\t\t}\r\n\t\t,'OPERATORS' : 'color: #808080;'\r\n\t\t,'DELIMITERS' : 'color: #FF8000;'\r\n\t\t,'REGEXPS' : {\r\n\t\t\t'variables' : 'color: #E0BD54;'\r\n\t\t}\t\t\r\n\t}\r\n};\r\n\r\n \t  \t \r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/reg_syntax/vb.js",
    "content": "editAreaLoader.load_syntax[\"vb\"] = {\r\n\t'DISPLAY_NAME' : 'Visual Basic'\r\n\t,'COMMENT_SINGLE' : {1 : \"'\"}\r\n\t,'COMMENT_MULTI' : { }\r\n\t,'QUOTEMARKS' : {1: '\"'}\r\n\t,'KEYWORD_CASE_SENSITIVE' : false\r\n\t,'KEYWORDS' : {\r\n\t\t'statements' : [\r\n\t        'if','then','for','each','while','do','loop',\r\n            'else','elseif','select','case','end select',\r\n            'until','next','step','to','in','end if'\r\n\t\t]\r\n\t\t,'keywords' : [\r\n            'empty','isempty','nothing','null','isnull','true','false',\r\n            'set','call',\r\n            'sub','end sub','function','end function','exit','exit function',\r\n            'dim','Mod','In','private','public','shared','const'\r\n        ]\r\n\r\n\t\t,'functions' : [\r\n\t\t\t'CDate','Date','DateAdd','DateDiff','DatePart','DateSerial','DateValue','Day','FormatDateTime',\r\n            'Hour','IsDate','Minute','Month',\r\n            'MonthName','Now','Second','Time','Timer','TimeSerial','TimeValue','Weekday','WeekdayName ','Year',\r\n            'Asc','CBool','CByte','CCur','CDate','CDbl','Chr','CInt','CLng','CSng','CStr','Hex','Oct','FormatCurrency',\r\n            'FormatDateTime','FormatNumber','FormatPercent','Abs','Atn','Cos','Exp','Hex','Int','Fix','Log','Oct',\r\n            'Rnd','Sgn','Sin','Sqr','Tan',\r\n            'Array','Filter','IsArray','Join','LBound','Split','UBound',\r\n            'InStr','InStrRev','LCase','Left','Len','LTrim','RTrim','Trim','Mid','Replace','Right','Space','StrComp',\r\n            'String','StrReverse','UCase',\r\n            'CreateObject','Eval','GetLocale','GetObject','GetRef','InputBox','IsEmpty','IsNull','IsNumeric',\r\n            'IsObject','LoadPicture','MsgBox','RGB','Round','ScriptEngine','ScriptEngineBuildVersion','ScriptEngineMajorVersion',\r\n            'ScriptEngineMinorVersion','SetLocale','TypeName','VarType'\r\n\t\t]\r\n\t}\r\n\t,'OPERATORS' :[\r\n\t\t'+', '-', '/', '*', '=', '<', '>', '!', '&'\r\n\t]\r\n\t,'DELIMITERS' :[\r\n\t\t'(', ')', '[', ']', '{', '}'\r\n\t]\r\n\t,'STYLES' : {\r\n\t\t'COMMENTS': 'color: #99CC00;'\r\n\t\t,'QUOTESMARKS': 'color: #333399;'\r\n\t\t,'KEYWORDS' : {\r\n\t\t\t'keywords' : 'color: #3366FF;'\r\n\t\t\t,'functions' : 'color: #0000FF;'\r\n\t\t\t,'statements' : 'color: #3366FF;'\r\n\t\t\t}\r\n\t\t,'OPERATORS' : 'color: #FF0000;'\r\n\t\t,'DELIMITERS' : 'color: #0000FF;'\r\n\r\n\t}\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/reg_syntax/xml.js",
    "content": "/*\r\n* last update: 2006-08-24\r\n*/\r\n\r\neditAreaLoader.load_syntax[\"xml\"] = {\r\n\t'DISPLAY_NAME' : 'XML'\r\n\t,'COMMENT_SINGLE' : {}\r\n\t,'COMMENT_MULTI' : {'<!--' : '-->'}\r\n\t,'QUOTEMARKS' : {1: \"'\", 2: '\"'}\r\n\t,'KEYWORD_CASE_SENSITIVE' : false\r\n\t,'KEYWORDS' : {\r\n\t}\r\n\t,'OPERATORS' :[\r\n\t]\r\n\t,'DELIMITERS' :[\r\n\t]\r\n\t,'REGEXPS' : {\r\n\t\t'xml' : {\r\n\t\t\t'search' : '()(<\\\\?[^>]*?\\\\?>)()'\r\n\t\t\t,'class' : 'xml'\r\n\t\t\t,'modifiers' : 'g'\r\n\t\t\t,'execute' : 'before' // before or after\r\n\t\t}\r\n\t\t,'cdatas' : {\r\n\t\t\t'search' : '()(<!\\\\[CDATA\\\\[.*?\\\\]\\\\]>)()'\r\n\t\t\t,'class' : 'cdata'\r\n\t\t\t,'modifiers' : 'g'\r\n\t\t\t,'execute' : 'before' // before or after\r\n\t\t}\r\n\t\t,'tags' : {\r\n\t\t\t'search' : '(<)(/?[a-z][^ \\r\\n\\t>]*)([^>]*>)'\r\n\t\t\t,'class' : 'tags'\r\n\t\t\t,'modifiers' : 'gi'\r\n\t\t\t,'execute' : 'before' // before or after\r\n\t\t}\r\n\t\t,'attributes' : {\r\n\t\t\t'search' : '( |\\n|\\r|\\t)([^ \\r\\n\\t=]+)(=)'\r\n\t\t\t,'class' : 'attributes'\r\n\t\t\t,'modifiers' : 'g'\r\n\t\t\t,'execute' : 'before' // before or after\r\n\t\t}\r\n\t}\r\n\t,'STYLES' : {\r\n\t\t'COMMENTS': 'color: #AAAAAA;'\r\n\t\t,'QUOTESMARKS': 'color: #6381F8;'\r\n\t\t,'KEYWORDS' : {\r\n\t\t\t}\r\n\t\t,'OPERATORS' : 'color: #E775F0;'\r\n\t\t,'DELIMITERS' : ''\r\n\t\t,'REGEXPS' : {\r\n\t\t\t'attributes': 'color: #B1AC41;'\r\n\t\t\t,'tags': 'color: #E62253;'\r\n\t\t\t,'xml': 'color: #8DCFB5;'\r\n\t\t\t,'cdata': 'color: #50B020;'\r\n\t\t}\t\r\n\t}\t\t\r\n};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/reg_syntax.js",
    "content": "\tEditAreaLoader.prototype.get_regexp= function(text_array){\r\n\t\t//res=\"( |=|\\\\n|\\\\r|\\\\[|\\\\(|µ|)(\";\r\n\t\tres=\"(\\\\b)(\";\r\n\t\tfor(i=0; i<text_array.length; i++){\r\n\t\t\tif(i>0)\r\n\t\t\t\tres+=\"|\";\r\n\t\t\t//res+=\"(\"+ tab_text[i] +\")\";\r\n\t\t\t//res+=tab_text[i].replace(/(\\.|\\?|\\*|\\+|\\\\|\\(|\\)|\\[|\\]|\\{|\\})/g, \"\\\\$1\");\r\n\t\t\tres+=this.get_escaped_regexp(text_array[i]);\r\n\t\t}\r\n\t\t//res+=\")( |\\\\.|:|\\\\{|\\\\(|\\\\)|\\\\[|\\\\]|\\'|\\\"|\\\\r|\\\\n|\\\\t|$)\";\r\n\t\tres+=\")(\\\\b)\";\r\n\t\treg= new RegExp(res);\r\n\t\t\r\n\t\treturn res;\r\n\t};\r\n\t\r\n\t\r\n\tEditAreaLoader.prototype.get_escaped_regexp= function(str){\r\n\t\treturn str.toString().replace(/(\\.|\\?|\\*|\\+|\\\\|\\(|\\)|\\[|\\]|\\}|\\{|\\$|\\^|\\|)/g, \"\\\\$1\");\r\n\t};\r\n\t\r\n\tEditAreaLoader.prototype.init_syntax_regexp= function(){\r\n\t\tvar lang_style= {};\t\r\n\t\tfor(var lang in this.load_syntax){\r\n\t\t\tif(!this.syntax[lang])\t// init the regexp if not already initialized\r\n\t\t\t{\r\n\t\t\t\tthis.syntax[lang]= {};\r\n\t\t\t\tthis.syntax[lang][\"keywords_reg_exp\"]= {};\r\n\t\t\t\tthis.keywords_reg_exp_nb=0;\r\n\t\t\t\r\n\t\t\t\tif(this.load_syntax[lang]['KEYWORDS']){\r\n\t\t\t\t\tparam=\"g\";\r\n\t\t\t\t\tif(this.load_syntax[lang]['KEYWORD_CASE_SENSITIVE']===false)\r\n\t\t\t\t\t\tparam+=\"i\";\r\n\t\t\t\t\tfor(var i in this.load_syntax[lang]['KEYWORDS']){\r\n\t\t\t\t\t\tif(typeof(this.load_syntax[lang]['KEYWORDS'][i])==\"function\") continue;\r\n\t\t\t\t\t\tthis.syntax[lang][\"keywords_reg_exp\"][i]= new RegExp(this.get_regexp( this.load_syntax[lang]['KEYWORDS'][i] ), param);\r\n\t\t\t\t\t\tthis.keywords_reg_exp_nb++;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\tif(this.load_syntax[lang]['OPERATORS']){\r\n\t\t\t\t\tvar str=\"\";\r\n\t\t\t\t\tvar nb=0;\r\n\t\t\t\t\tfor(var i in this.load_syntax[lang]['OPERATORS']){\r\n\t\t\t\t\t\tif(typeof(this.load_syntax[lang]['OPERATORS'][i])==\"function\") continue;\r\n\t\t\t\t\t\tif(nb>0)\r\n\t\t\t\t\t\t\tstr+=\"|\";\t\t\t\t\r\n\t\t\t\t\t\tstr+=this.get_escaped_regexp(this.load_syntax[lang]['OPERATORS'][i]);\r\n\t\t\t\t\t\tnb++;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif(str.length>0)\r\n\t\t\t\t\t\tthis.syntax[lang][\"operators_reg_exp\"]= new RegExp(\"(\"+str+\")\",\"g\");\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\tif(this.load_syntax[lang]['DELIMITERS']){\r\n\t\t\t\t\tvar str=\"\";\r\n\t\t\t\t\tvar nb=0;\r\n\t\t\t\t\tfor(var i in this.load_syntax[lang]['DELIMITERS']){\r\n\t\t\t\t\t\tif(typeof(this.load_syntax[lang]['DELIMITERS'][i])==\"function\") continue;\r\n\t\t\t\t\t\tif(nb>0)\r\n\t\t\t\t\t\t\tstr+=\"|\";\r\n\t\t\t\t\t\tstr+=this.get_escaped_regexp(this.load_syntax[lang]['DELIMITERS'][i]);\r\n\t\t\t\t\t\tnb++;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif(str.length>0)\r\n\t\t\t\t\t\tthis.syntax[lang][\"delimiters_reg_exp\"]= new RegExp(\"(\"+str+\")\",\"g\");\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t//\t\t/((\"(\\\\\"|[^\"])*\"?)|('(\\\\'|[^'])*'?)|(//(.|\\r|\\t)*\\n)|(/\\*(.|\\n|\\r|\\t)*\\*/)|(<!--(.|\\n|\\r|\\t)*-->))/gi\r\n\t\t\t\tvar syntax_trace=[];\r\n\t\t\t\t\r\n\t\t//\t\t/(\"(?:[^\"\\\\]*(\\\\\\\\)*(\\\\\"?)?)*(\"|$))/g\r\n\t\t\t\t\r\n\t\t\t\tthis.syntax[lang][\"quotes\"]={};\r\n\t\t\t\tvar quote_tab= [];\r\n\t\t\t\tif(this.load_syntax[lang]['QUOTEMARKS']){\r\n\t\t\t\t\tfor(var i in this.load_syntax[lang]['QUOTEMARKS']){\t\r\n\t\t\t\t\t\tif(typeof(this.load_syntax[lang]['QUOTEMARKS'][i])==\"function\") continue;\t\t\t\r\n\t\t\t\t\t\tvar x=this.get_escaped_regexp(this.load_syntax[lang]['QUOTEMARKS'][i]);\r\n\t\t\t\t\t\tthis.syntax[lang][\"quotes\"][x]=x;\r\n\t\t\t\t\t\t//quote_tab[quote_tab.length]=\"(\"+x+\"(?:\\\\\\\\\"+x+\"|[^\"+x+\"])*(\"+x+\"|$))\";\r\n\t\t\t\t\t\t//previous working : quote_tab[quote_tab.length]=\"(\"+x+\"(?:[^\"+x+\"\\\\\\\\]*(\\\\\\\\\\\\\\\\)*(\\\\\\\\\"+x+\"?)?)*(\"+x+\"|$))\";\r\n\t\t\t\t\t\tquote_tab[quote_tab.length]=\"(\"+ x +\"(\\\\\\\\.|[^\"+ x +\"])*(?:\"+ x +\"|$))\";\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\tsyntax_trace.push(x);\t\t\t\r\n\t\t\t\t\t}\t\t\t\r\n\t\t\t\t}\r\n\t\t\t\t\t\t\r\n\t\t\t\tthis.syntax[lang][\"comments\"]={};\r\n\t\t\t\tif(this.load_syntax[lang]['COMMENT_SINGLE']){\r\n\t\t\t\t\tfor(var i in this.load_syntax[lang]['COMMENT_SINGLE']){\t\r\n\t\t\t\t\t\tif(typeof(this.load_syntax[lang]['COMMENT_SINGLE'][i])==\"function\") continue;\t\t\t\t\t\t\r\n\t\t\t\t\t\tvar x=this.get_escaped_regexp(this.load_syntax[lang]['COMMENT_SINGLE'][i]);\r\n\t\t\t\t\t\tquote_tab[quote_tab.length]=\"(\"+x+\"(.|\\\\r|\\\\t)*(\\\\n|$))\";\r\n\t\t\t\t\t\tsyntax_trace.push(x);\r\n\t\t\t\t\t\tthis.syntax[lang][\"comments\"][x]=\"\\n\";\r\n\t\t\t\t\t}\t\t\t\r\n\t\t\t\t}\t\t\r\n\t\t\t\t// (/\\*(.|[\\r\\n])*?\\*/)\r\n\t\t\t\tif(this.load_syntax[lang]['COMMENT_MULTI']){\r\n\t\t\t\t\tfor(var i in this.load_syntax[lang]['COMMENT_MULTI']){\r\n\t\t\t\t\t\tif(typeof(this.load_syntax[lang]['COMMENT_MULTI'][i])==\"function\") continue;\t\t\t\t\t\t\t\r\n\t\t\t\t\t\tvar start=this.get_escaped_regexp(i);\r\n\t\t\t\t\t\tvar end=this.get_escaped_regexp(this.load_syntax[lang]['COMMENT_MULTI'][i]);\r\n\t\t\t\t\t\tquote_tab[quote_tab.length]=\"(\"+start+\"(.|\\\\n|\\\\r)*?(\"+end+\"|$))\";\r\n\t\t\t\t\t\tsyntax_trace.push(start);\r\n\t\t\t\t\t\tsyntax_trace.push(end);\r\n\t\t\t\t\t\tthis.syntax[lang][\"comments\"][i]=this.load_syntax[lang]['COMMENT_MULTI'][i];\r\n\t\t\t\t\t}\t\t\t\r\n\t\t\t\t}\t\t\r\n\t\t\t\tif(quote_tab.length>0)\r\n\t\t\t\t\tthis.syntax[lang][\"comment_or_quote_reg_exp\"]= new RegExp(\"(\"+quote_tab.join(\"|\")+\")\",\"gi\");\r\n\t\t\t\t\r\n\t\t\t\tif(syntax_trace.length>0) //   /((.|\\n)*?)(\\\\*(\"|'|\\/\\*|\\*\\/|\\/\\/|$))/g\r\n\t\t\t\t\tthis.syntax[lang][\"syntax_trace_regexp\"]= new RegExp(\"((.|\\n)*?)(\\\\\\\\*(\"+ syntax_trace.join(\"|\") +\"|$))\", \"gmi\");\r\n\t\t\t\t\r\n\t\t\t\tif(this.load_syntax[lang]['SCRIPT_DELIMITERS']){\r\n\t\t\t\t\tthis.syntax[lang][\"script_delimiters\"]= {};\r\n\t\t\t\t\tfor(var i in this.load_syntax[lang]['SCRIPT_DELIMITERS']){\r\n\t\t\t\t\t\tif(typeof(this.load_syntax[lang]['SCRIPT_DELIMITERS'][i])==\"function\") continue;\t\t\t\t\t\t\t\r\n\t\t\t\t\t\tthis.syntax[lang][\"script_delimiters\"][i]= this.load_syntax[lang]['SCRIPT_DELIMITERS'];\r\n\t\t\t\t\t}\t\t\t\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\tthis.syntax[lang][\"custom_regexp\"]= {};\r\n\t\t\t\tif(this.load_syntax[lang]['REGEXPS']){\r\n\t\t\t\t\tfor(var i in this.load_syntax[lang]['REGEXPS']){\r\n\t\t\t\t\t\tif(typeof(this.load_syntax[lang]['REGEXPS'][i])==\"function\") continue;\r\n\t\t\t\t\t\tvar val= this.load_syntax[lang]['REGEXPS'][i];\r\n\t\t\t\t\t\tif(!this.syntax[lang][\"custom_regexp\"][val['execute']])\r\n\t\t\t\t\t\t\tthis.syntax[lang][\"custom_regexp\"][val['execute']]= {};\r\n\t\t\t\t\t\tthis.syntax[lang][\"custom_regexp\"][val['execute']][i]={'regexp' : new RegExp(val['search'], val['modifiers'])\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t, 'class' : val['class']};\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\tif(this.load_syntax[lang]['STYLES']){\t\t\t\t\t\t\t\r\n\t\t\t\t\tlang_style[lang]= {};\r\n\t\t\t\t\tfor(var i in this.load_syntax[lang]['STYLES']){\r\n\t\t\t\t\t\tif(typeof(this.load_syntax[lang]['STYLES'][i])==\"function\") continue;\r\n\t\t\t\t\t\tif(typeof(this.load_syntax[lang]['STYLES'][i]) != \"string\"){\r\n\t\t\t\t\t\t\tfor(var j in this.load_syntax[lang]['STYLES'][i]){\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tlang_style[lang][j]= this.load_syntax[lang]['STYLES'][i][j];\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}else{\r\n\t\t\t\t\t\t\tlang_style[lang][i]= this.load_syntax[lang]['STYLES'][i];\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\t// build style string\r\n\t\t\t\tvar style=\"\";\t\t\r\n\t\t\t\tfor(var i in lang_style[lang]){\r\n\t\t\t\t\tif(lang_style[lang][i].length>0){\r\n\t\t\t\t\t\tstyle+= \".\"+ lang +\" .\"+ i.toLowerCase() +\" span{\"+lang_style[lang][i]+\"}\\n\";\r\n\t\t\t\t\t\tstyle+= \".\"+ lang +\" .\"+ i.toLowerCase() +\"{\"+lang_style[lang][i]+\"}\\n\";\t\t\t\t\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tthis.syntax[lang][\"styles\"]=style;\r\n\t\t\t}\r\n\t\t}\t\t\t\t\r\n\t};\r\n\t\r\n\teditAreaLoader.waiting_loading[\"reg_syntax.js\"]= \"loaded\";\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/regexp.js",
    "content": "\t/*EditArea.prototype.comment_or_quotes= function(v0, v1, v2, v3, v4,v5,v6,v7,v8,v9, v10){\r\n\t\tnew_class=\"quotes\";\r\n\t\tif(v6 && v6 != undefined && v6!=\"\")\r\n\t\t\tnew_class=\"comments\";\r\n\t\treturn \"µ__\"+ new_class +\"__µ\"+v0+\"µ_END_µ\";\r\n\r\n\t};*/\r\n\t\r\n/*\tEditArea.prototype.htmlTag= function(v0, v1, v2, v3, v4,v5,v6,v7,v8,v9, v10){\r\n\t\tres=\"<span class=htmlTag>\"+v2;\r\n\t\talert(\"v2: \"+v2+\" v3: \"+v3);\r\n\t\ttab=v3.split(\"=\");\r\n\t\tattributes=\"\";\r\n\t\tif(tab.length>1){\r\n\t\t\tattributes=\"<span class=attribute>\"+tab[0]+\"</span>=\";\r\n\t\t\tfor(i=1; i<tab.length-1; i++){\r\n\t\t\t\tcut=tab[i].lastIndexOf(\"&nbsp;\");\t\t\t\t\r\n\t\t\t\tattributes+=\"<span class=attributeVal>\"+tab[i].substr(0,cut)+\"</span>\";\r\n\t\t\t\tattributes+=\"<span class=attribute>\"+tab[i].substr(cut)+\"</span>=\";\r\n\t\t\t}\r\n\t\t\tattributes+=\"<span class=attributeVal>\"+tab[tab.length-1]+\"</span>\";\r\n\t\t}\t\t\r\n\t\tres+=attributes+v5+\"</span>\";\r\n\t\treturn res;\t\t\r\n\t};*/\r\n\t\r\n\t// determine if the selected text if a comment or a quoted text\r\n\tEditArea.prototype.comment_or_quote= function(){\r\n\t\tvar new_class=\"\", close_tag=\"\", sy, arg, i;\r\n\t\tsy \t\t= parent.editAreaLoader.syntax[editArea.current_code_lang];\r\n\t\targ\t\t= EditArea.prototype.comment_or_quote.arguments[0];\r\n\t\t\r\n\t\tfor( i in sy[\"quotes\"] ){\r\n\t\t\tif(arg.indexOf(i)==0){\r\n\t\t\t\tnew_class=\"quotesmarks\";\r\n\t\t\t\tclose_tag=sy[\"quotes\"][i];\r\n\t\t\t}\r\n\t\t}\r\n\t\tif(new_class.length==0)\r\n\t\t{\r\n\t\t\tfor(var i in sy[\"comments\"]){\r\n\t\t\t\tif( arg.indexOf(i)==0 ){\r\n\t\t\t\t\tnew_class=\"comments\";\r\n\t\t\t\t\tclose_tag=sy[\"comments\"][i];\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t\t// for single line comment the \\n must not be included in the span tags\r\n\t\tif(close_tag==\"\\n\"){\r\n\t\t\treturn \"µ__\"+ new_class +\"__µ\"+ arg.replace(/(\\r?\\n)?$/m, \"µ_END_µ$1\");\r\n\t\t}else{\r\n\t\t\t// the closing tag must be set only if the comment or quotes is closed \r\n\t\t\treg= new RegExp(parent.editAreaLoader.get_escaped_regexp(close_tag)+\"$\", \"m\");\r\n\t\t\tif( arg.search(reg)!=-1 )\r\n\t\t\t\treturn \"µ__\"+ new_class +\"__µ\"+ arg +\"µ_END_µ\";\r\n\t\t\telse\r\n\t\t\t\treturn \"µ__\"+ new_class +\"__µ\"+ arg;\r\n\t\t}\r\n\t};\r\n\t\r\n/*\r\n\t// apply special tags arround text to highlight\r\n\tEditArea.prototype.custom_highlight= function(){\r\n\t\tres= EditArea.prototype.custom_highlight.arguments[1]+\"µ__\"+ editArea.reg_exp_span_tag +\"__µ\" + EditArea.prototype.custom_highlight.arguments[2]+\"µ_END_µ\";\r\n\t\tif(EditArea.prototype.custom_highlight.arguments.length>5)\r\n\t\t\tres+= EditArea.prototype.custom_highlight.arguments[ EditArea.prototype.custom_highlight.arguments.length-3 ];\r\n\t\treturn res;\r\n\t};\r\n\t*/\r\n\t\r\n\t// return identication that allow to know if revalidating only the text line won't make the syntax go mad\r\n\tEditArea.prototype.get_syntax_trace= function(text){\r\n\t\tif(this.settings[\"syntax\"].length>0 && parent.editAreaLoader.syntax[this.settings[\"syntax\"]][\"syntax_trace_regexp\"])\r\n\t\t\treturn text.replace(parent.editAreaLoader.syntax[this.settings[\"syntax\"]][\"syntax_trace_regexp\"], \"$3\");\r\n\t};\r\n\t\r\n\t\t\r\n\tEditArea.prototype.colorize_text= function(text){\r\n\t\t//text=\"<div id='result' class='area' style='position: relative; z-index: 4; height: 500px; overflow: scroll;border: solid black 1px;'> \";\r\n\t  /*\t\t\r\n\t\tif(this.isOpera){\t\r\n\t\t\t// opera can't use pre element tabulation cause a tab=6 chars in the textarea and 8 chars in the pre \r\n\t\t\ttext= this.replace_tab(text);\r\n\t\t}*/\r\n\t\t\r\n\t\ttext= \" \"+text; // for easier regExp\r\n\t\t\r\n\t\t/*if(this.do_html_tags)\r\n\t\t\ttext= text.replace(/(<[a-z]+ [^>]*>)/gi, '[__htmlTag__]$1[_END_]');*/\r\n\t\tif(this.settings[\"syntax\"].length>0)\r\n\t\t\ttext= this.apply_syntax(text, this.settings[\"syntax\"]);\r\n\r\n\t\t// remove the first space added\r\n\t\treturn text.substr(1).replace(/&/g,\"&amp;\").replace(/</g,\"&lt;\").replace(/>/g,\"&gt;\").replace(/µ_END_µ/g,\"</span>\").replace(/µ__([a-zA-Z0-9]+)__µ/g,\"<span class='$1'>\");\r\n\t};\r\n\t\r\n\tEditArea.prototype.apply_syntax= function(text, lang){\r\n\t\tvar sy;\r\n\t\tthis.current_code_lang=lang;\r\n\t\r\n\t\tif(!parent.editAreaLoader.syntax[lang])\r\n\t\t\treturn text;\r\n\t\t\t\r\n\t\tsy = parent.editAreaLoader.syntax[lang];\r\n\t\tif(sy[\"custom_regexp\"]['before']){\r\n\t\t\tfor( var i in sy[\"custom_regexp\"]['before']){\r\n\t\t\t\tvar convert=\"$1µ__\"+ sy[\"custom_regexp\"]['before'][i]['class'] +\"__µ$2µ_END_µ$3\";\r\n\t\t\t\ttext= text.replace(sy[\"custom_regexp\"]['before'][i]['regexp'], convert);\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\tif(sy[\"comment_or_quote_reg_exp\"]){\r\n\t\t\t//setTimeout(\"_$('debug_area').value=editArea.comment_or_quote_reg_exp;\", 500);\r\n\t\t\ttext= text.replace(sy[\"comment_or_quote_reg_exp\"], this.comment_or_quote);\r\n\t\t}\r\n\t\t\r\n\t\tif(sy[\"keywords_reg_exp\"]){\r\n\t\t\tfor(var i in sy[\"keywords_reg_exp\"]){\t\r\n\t\t\t\ttext= text.replace(sy[\"keywords_reg_exp\"][i], 'µ__'+i+'__µ$2µ_END_µ');\r\n\t\t\t}\t\t\t\r\n\t\t}\r\n\t\t\r\n\t\tif(sy[\"delimiters_reg_exp\"]){\r\n\t\t\ttext= text.replace(sy[\"delimiters_reg_exp\"], 'µ__delimiters__µ$1µ_END_µ');\r\n\t\t}\t\t\r\n\t\t\r\n\t\tif(sy[\"operators_reg_exp\"]){\r\n\t\t\ttext= text.replace(sy[\"operators_reg_exp\"], 'µ__operators__µ$1µ_END_µ');\r\n\t\t}\r\n\t\t\r\n\t\tif(sy[\"custom_regexp\"]['after']){\r\n\t\t\tfor( var i in sy[\"custom_regexp\"]['after']){\r\n\t\t\t\tvar convert=\"$1µ__\"+ sy[\"custom_regexp\"]['after'][i]['class'] +\"__µ$2µ_END_µ$3\";\r\n\t\t\t\ttext= text.replace(sy[\"custom_regexp\"]['after'][i]['regexp'], convert);\t\t\t\r\n\t\t\t}\r\n\t\t}\r\n\t\t\t\r\n\t\treturn text;\r\n\t};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/resize_area.js",
    "content": "\t\r\n\tEditAreaLoader.prototype.start_resize_area= function(){\r\n\t\tvar d=document,a,div,width,height,father;\r\n\t\t\r\n\t\td.onmouseup= editAreaLoader.end_resize_area;\r\n\t\td.onmousemove= editAreaLoader.resize_area;\r\n\t\teditAreaLoader.toggle(editAreaLoader.resize[\"id\"]);\t\t\r\n\t\t\r\n\t\ta\t= editAreas[editAreaLoader.resize[\"id\"]][\"textarea\"];\r\n\t\tdiv\t= d.getElementById(\"edit_area_resize\");\r\n\t\tif(!div){\r\n\t\t\tdiv= d.createElement(\"div\");\r\n\t\t\tdiv.id=\"edit_area_resize\";\r\n\t\t\tdiv.style.border=\"dashed #888888 1px\";\r\n\t\t}\r\n\t\twidth\t= a.offsetWidth -2;\r\n\t\theight\t= a.offsetHeight -2;\r\n\t\t\r\n\t\tdiv.style.display\t= \"block\";\r\n\t\tdiv.style.width\t\t= width+\"px\";\r\n\t\tdiv.style.height\t= height+\"px\";\r\n\t\tfather= a.parentNode;\r\n\t\tfather.insertBefore(div, a);\r\n\t\t\r\n\t\ta.style.display=\"none\";\r\n\t\t\t\t\r\n\t\teditAreaLoader.resize[\"start_top\"]= calculeOffsetTop(div);\r\n\t\teditAreaLoader.resize[\"start_left\"]= calculeOffsetLeft(div);\t\t\r\n\t};\r\n\t\r\n\tEditAreaLoader.prototype.end_resize_area= function(e){\r\n\t\tvar d=document,div,a,width,height;\r\n\t\t\r\n\t\td.onmouseup=\"\";\r\n\t\td.onmousemove=\"\";\t\t\r\n\t\t\r\n\t\tdiv\t\t= d.getElementById(\"edit_area_resize\");\t\t\r\n\t\ta= editAreas[editAreaLoader.resize[\"id\"]][\"textarea\"];\r\n\t\twidth\t= Math.max(editAreas[editAreaLoader.resize[\"id\"]][\"settings\"][\"min_width\"], div.offsetWidth-4);\r\n\t\theight\t= Math.max(editAreas[editAreaLoader.resize[\"id\"]][\"settings\"][\"min_height\"], div.offsetHeight-4);\r\n\t\tif(editAreaLoader.isIE==6){\r\n\t\t\twidth-=2;\r\n\t\t\theight-=2;\t\r\n\t\t}\r\n\t\ta.style.width\t\t= width+\"px\";\r\n\t\ta.style.height\t\t= height+\"px\";\r\n\t\tdiv.style.display\t= \"none\";\r\n\t\ta.style.display\t\t= \"inline\";\r\n\t\ta.selectionStart\t= editAreaLoader.resize[\"selectionStart\"];\r\n\t\ta.selectionEnd\t\t= editAreaLoader.resize[\"selectionEnd\"];\r\n\t\teditAreaLoader.toggle(editAreaLoader.resize[\"id\"]);\r\n\t\t\r\n\t\treturn false;\r\n\t};\r\n\t\r\n\tEditAreaLoader.prototype.resize_area= function(e){\t\t\r\n\t\tvar allow,newHeight,newWidth;\r\n\t\tallow\t= editAreas[editAreaLoader.resize[\"id\"]][\"settings\"][\"allow_resize\"];\r\n\t\tif(allow==\"both\" || allow==\"y\")\r\n\t\t{\r\n\t\t\tnewHeight\t= Math.max(20, getMouseY(e)- editAreaLoader.resize[\"start_top\"]);\r\n\t\t\tdocument.getElementById(\"edit_area_resize\").style.height= newHeight+\"px\";\r\n\t\t}\r\n\t\tif(allow==\"both\" || allow==\"x\")\r\n\t\t{\r\n\t\t\tnewWidth= Math.max(20, getMouseX(e)- editAreaLoader.resize[\"start_left\"]);\r\n\t\t\tdocument.getElementById(\"edit_area_resize\").style.width= newWidth+\"px\";\r\n\t\t}\r\n\t\t\r\n\t\treturn false;\r\n\t};\r\n\t\r\n\teditAreaLoader.waiting_loading[\"resize_area.js\"]= \"loaded\";\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/search_replace.js",
    "content": "\tEditArea.prototype.show_search = function(){\r\n\t\tif(_$(\"area_search_replace\").style.visibility==\"visible\"){\r\n\t\t\tthis.hidden_search();\r\n\t\t}else{\r\n\t\t\tthis.open_inline_popup(\"area_search_replace\");\r\n\t\t\tvar text= this.area_get_selection();\r\n\t\t\tvar search= text.split(\"\\n\")[0];\r\n\t\t\t_$(\"area_search\").value= search;\r\n\t\t\t_$(\"area_search\").focus();\r\n\t\t}\r\n\t};\r\n\t\r\n\tEditArea.prototype.hidden_search= function(){\r\n\t\t/*_$(\"area_search_replace\").style.visibility=\"hidden\";\r\n\t\tthis.textarea.focus();\r\n\t\tvar icon= _$(\"search\");\r\n\t\tsetAttribute(icon, \"class\", getAttribute(icon, \"class\").replace(/ selected/g, \"\") );*/\r\n\t\tthis.close_inline_popup(\"area_search_replace\");\r\n\t};\r\n\t\r\n\tEditArea.prototype.area_search= function(mode){\r\n\t\t\r\n\t\tif(!mode)\r\n\t\t\tmode=\"search\";\r\n\t\t_$(\"area_search_msg\").innerHTML=\"\";\t\t\r\n\t\tvar search=_$(\"area_search\").value;\t\t\r\n\t\t\r\n\t\tthis.textarea.focus();\t\t\r\n\t\tthis.textarea.textareaFocused=true;\r\n\t\t\r\n\t\tvar infos= this.get_selection_infos();\t\r\n\t\tvar start= infos[\"selectionStart\"];\r\n\t\tvar pos=-1;\r\n\t\tvar pos_begin=-1;\r\n\t\tvar length=search.length;\r\n\t\t\r\n\t\tif(_$(\"area_search_replace\").style.visibility!=\"visible\"){\r\n\t\t\tthis.show_search();\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif(search.length==0){\r\n\t\t\t_$(\"area_search_msg\").innerHTML=this.get_translation(\"search_field_empty\");\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t// advance to the next occurence if no text selected\r\n\t\tif(mode!=\"replace\" ){\r\n\t\t\tif(_$(\"area_search_reg_exp\").checked)\r\n\t\t\t\tstart++;\r\n\t\t\telse\r\n\t\t\t\tstart+= search.length;\r\n\t\t}\r\n\t\t\r\n\t\t//search\r\n\t\tif(_$(\"area_search_reg_exp\").checked){\r\n\t\t\t// regexp search\r\n\t\t\tvar opt=\"m\";\r\n\t\t\tif(!_$(\"area_search_match_case\").checked)\r\n\t\t\t\topt+=\"i\";\r\n\t\t\tvar reg= new RegExp(search, opt);\r\n\t\t\tpos= infos[\"full_text\"].substr(start).search(reg);\r\n\t\t\tpos_begin= infos[\"full_text\"].search(reg);\r\n\t\t\tif(pos!=-1){\r\n\t\t\t\tpos+=start;\r\n\t\t\t\tlength=infos[\"full_text\"].substr(start).match(reg)[0].length;\r\n\t\t\t}else if(pos_begin!=-1){\r\n\t\t\t\tlength=infos[\"full_text\"].match(reg)[0].length;\r\n\t\t\t}\r\n\t\t}else{\r\n\t\t\tif(_$(\"area_search_match_case\").checked){\r\n\t\t\t\tpos= infos[\"full_text\"].indexOf(search, start); \r\n\t\t\t\tpos_begin= infos[\"full_text\"].indexOf(search); \r\n\t\t\t}else{\r\n\t\t\t\tpos= infos[\"full_text\"].toLowerCase().indexOf(search.toLowerCase(), start); \r\n\t\t\t\tpos_begin= infos[\"full_text\"].toLowerCase().indexOf(search.toLowerCase()); \r\n\t\t\t}\t\t\r\n\t\t}\r\n\t\t\r\n\t\t// interpret result\r\n\t\tif(pos==-1 && pos_begin==-1){\r\n\t\t\t_$(\"area_search_msg\").innerHTML=\"<strong>\"+search+\"</strong> \"+this.get_translation(\"not_found\");\r\n\t\t\treturn;\r\n\t\t}else if(pos==-1 && pos_begin != -1){\r\n\t\t\tbegin= pos_begin;\r\n\t\t\t_$(\"area_search_msg\").innerHTML=this.get_translation(\"restart_search_at_begin\");\r\n\t\t}else\r\n\t\t\tbegin= pos;\r\n\t\t\r\n\t\t//_$(\"area_search_msg\").innerHTML+=\"<strong>\"+search+\"</strong> found at \"+begin+\" strat at \"+start+\" pos \"+pos+\" curs\"+ infos[\"indexOfCursor\"]+\".\";\r\n\t\tif(mode==\"replace\" && pos==infos[\"indexOfCursor\"]){\r\n\t\t\tvar replace= _$(\"area_replace\").value;\r\n\t\t\tvar new_text=\"\";\t\t\t\r\n\t\t\tif(_$(\"area_search_reg_exp\").checked){\r\n\t\t\t\tvar opt=\"m\";\r\n\t\t\t\tif(!_$(\"area_search_match_case\").checked)\r\n\t\t\t\t\topt+=\"i\";\r\n\t\t\t\tvar reg= new RegExp(search, opt);\r\n\t\t\t\tnew_text= infos[\"full_text\"].substr(0, begin) + infos[\"full_text\"].substr(start).replace(reg, replace);\r\n\t\t\t}else{\r\n\t\t\t\tnew_text= infos[\"full_text\"].substr(0, begin) + replace + infos[\"full_text\"].substr(begin + length);\r\n\t\t\t}\r\n\t\t\tthis.textarea.value=new_text;\r\n\t\t\tthis.area_select(begin, length);\r\n\t\t\tthis.area_search();\r\n\t\t}else\r\n\t\t\tthis.area_select(begin, length);\r\n\t};\r\n\t\r\n\t\r\n\t\r\n\t\r\n\tEditArea.prototype.area_replace= function(){\t\t\r\n\t\tthis.area_search(\"replace\");\r\n\t};\r\n\t\r\n\tEditArea.prototype.area_replace_all= function(){\r\n\t/*\tthis.area_select(0, 0);\r\n\t\t_$(\"area_search_msg\").innerHTML=\"\";\r\n\t\twhile(_$(\"area_search_msg\").innerHTML==\"\"){\r\n\t\t\tthis.area_replace();\r\n\t\t}*/\r\n\t\r\n\t\tvar base_text= this.textarea.value;\r\n\t\tvar search= _$(\"area_search\").value;\t\t\r\n\t\tvar replace= _$(\"area_replace\").value;\r\n\t\tif(search.length==0){\r\n\t\t\t_$(\"area_search_msg\").innerHTML=this.get_translation(\"search_field_empty\");\r\n\t\t\treturn ;\r\n\t\t}\r\n\t\t\r\n\t\tvar new_text=\"\";\r\n\t\tvar nb_change=0;\r\n\t\tif(_$(\"area_search_reg_exp\").checked){\r\n\t\t\t// regExp\r\n\t\t\tvar opt=\"mg\";\r\n\t\t\tif(!_$(\"area_search_match_case\").checked)\r\n\t\t\t\topt+=\"i\";\r\n\t\t\tvar reg= new RegExp(search, opt);\r\n\t\t\tnb_change= infos[\"full_text\"].match(reg).length;\r\n\t\t\tnew_text= infos[\"full_text\"].replace(reg, replace);\r\n\t\t\t\r\n\t\t}else{\r\n\t\t\t\r\n\t\t\tif(_$(\"area_search_match_case\").checked){\r\n\t\t\t\tvar tmp_tab=base_text.split(search);\r\n\t\t\t\tnb_change= tmp_tab.length -1 ;\r\n\t\t\t\tnew_text= tmp_tab.join(replace);\r\n\t\t\t}else{\r\n\t\t\t\t// case insensitive\r\n\t\t\t\tvar lower_value=base_text.toLowerCase();\r\n\t\t\t\tvar lower_search=search.toLowerCase();\r\n\t\t\t\t\r\n\t\t\t\tvar start=0;\r\n\t\t\t\tvar pos= lower_value.indexOf(lower_search);\t\t\t\t\r\n\t\t\t\twhile(pos!=-1){\r\n\t\t\t\t\tnb_change++;\r\n\t\t\t\t\tnew_text+= this.textarea.value.substring(start , pos)+replace;\r\n\t\t\t\t\tstart=pos+ search.length;\r\n\t\t\t\t\tpos= lower_value.indexOf(lower_search, pos+1);\r\n\t\t\t\t}\r\n\t\t\t\tnew_text+= this.textarea.value.substring(start);\t\t\t\t\r\n\t\t\t}\r\n\t\t}\t\t\t\r\n\t\tif(new_text==base_text){\r\n\t\t\t_$(\"area_search_msg\").innerHTML=\"<strong>\"+search+\"</strong> \"+this.get_translation(\"not_found\");\r\n\t\t}else{\r\n\t\t\tthis.textarea.value= new_text;\r\n\t\t\t_$(\"area_search_msg\").innerHTML=\"<strong>\"+nb_change+\"</strong> \"+this.get_translation(\"occurrence_replaced\");\r\n\t\t\t// firefox and opera doesn't manage with the focus if it's done directly\r\n\t\t\t//editArea.textarea.focus();editArea.textarea.textareaFocused=true;\r\n\t\t\tsetTimeout(\"editArea.textarea.focus();editArea.textarea.textareaFocused=true;\", 100);\r\n\t\t}\r\n\t\t\r\n\t\t\r\n\t};\r\n"
  },
  {
    "path": "newscoop/js/editarea/edit_area/template.html",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.1//EN\" \"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"en\" >\r\n<head>\r\n\t<title>EditArea</title>\r\n\t<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\r\n\t<meta http-equiv=\"X-UA-Compatible\" content=\"IE=EmulateIE7\"/>\r\n\t[__CSSRULES__]\r\n\t[__JSCODE__]\r\n</head>\r\n<body>\r\n\t<div id='editor'>\r\n\t\t<div class='area_toolbar' id='toolbar_1'>[__TOOLBAR__]</div>\r\n\t\t<div class='area_toolbar' id='tab_browsing_area'><ul id='tab_browsing_list' class='menu'> <li> </li> </ul></div>\r\n\t\t<div id='result'>\r\n\t\t\t<div id='no_file_selected'></div>\r\n\t\t\t<div id='container'>\r\n\t\t\t\t<div id='cursor_pos' class='edit_area_cursor'>&nbsp;</div>\r\n\t\t\t\t<div id='end_bracket' class='edit_area_cursor'>&nbsp;</div>\r\n\t\t\t\t<div id='selection_field'></div>\r\n\t\t\t\t<div id='line_number' selec='none'></div>\r\n\t\t\t\t<div id='content_highlight'></div>\r\n\t\t\t\t<div id='test_font_size'></div>\r\n\t\t\t\t<div id='selection_field_text'></div>\r\n\t\t\t\t<textarea id='textarea' wrap='off' onchange='editArea.execCommand(\"onchange\");' onfocus='javascript:editArea.textareaFocused=true;' onblur='javascript:editArea.textareaFocused=false;'>\r\n\t\t\t\t</textarea>\r\n\t\t\t\t\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<div class='area_toolbar' id='toolbar_2'>\r\n\t\t\t<table class='statusbar' cellspacing='0' cellpadding='0'>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td class='total' selec='none'>{$position}:</td>\r\n\t\t\t\t\t<td class='infos' selec='none'>\r\n\t\t\t\t\t\t{$line_abbr} <span  id='linePos'>0</span>, {$char_abbr} <span id='currPos'>0</span>\r\n\t\t\t\t\t</td>\r\n\t\t\t\t\t<td class='total' selec='none'>{$total}:</td>\r\n\t\t\t\t\t<td class='infos' selec='none'>\r\n\t\t\t\t\t\t{$line_abbr} <span id='nbLine'>0</span>, {$char_abbr} <span id='nbChar'>0</span>\r\n\t\t\t\t\t</td>\r\n\t\t\t\t\t<td class='resize'>\r\n\t\t\t\t\t\t<span id='resize_area'><img src='[__BASEURL__]images/statusbar_resize.gif' alt='resize' selec='none'></span>\r\n\t\t\t\t\t</td>\r\n\t\t\t\t</tr>\r\n\t\t\t</table>\r\n\t\t</div>\r\n\t</div>\r\n\t<div id='processing'>\r\n\t\t<div id='processing_text'>\r\n\t\t\t{$processing}\r\n\t\t</div>\r\n\t</div>\r\n\r\n\t<div id='area_search_replace' class='editarea_popup'>\r\n\t\t<table cellspacing='2' cellpadding='0' style='width: 100%'>\r\n\t\t\t<tr>\r\n\t\t\t\t<td selec='none'>{$search}</td>\r\n\t\t\t\t<td><input type='text' id='area_search' /></td>\r\n\t\t\t\t<td id='close_area_search_replace'>\r\n\t\t\t\t\t<a onclick='Javascript:editArea.execCommand(\"hidden_search\")'><img selec='none' src='[__BASEURL__]images/close.gif' alt='{$close_popup}' title='{$close_popup}' /></a><br />\r\n\t\t\t</tr><tr>\r\n\t\t\t\t<td selec='none'>{$replace}</td>\r\n\t\t\t\t<td><input type='text' id='area_replace' /></td>\r\n\t\t\t\t<td><img id='move_area_search_replace' onmousedown='return parent.start_move_element(event,\"area_search_replace\", parent.frames[\"frame_\"+editArea.id]);'  src='[__BASEURL__]images/move.gif' alt='{$move_popup}' title='{$move_popup}' /></td>\r\n\t\t\t</tr>\r\n\t\t</table>\r\n\t\t<div class='button'>\r\n\t\t\t<input type='checkbox' id='area_search_match_case' /><label for='area_search_match_case' selec='none'>{$match_case}</label>\r\n\t\t\t<input type='checkbox' id='area_search_reg_exp' /><label for='area_search_reg_exp' selec='none'>{$reg_exp}</label>\r\n\t\t\t<br />\r\n\t\t\t<a onclick='Javascript:editArea.execCommand(\"area_search\")' selec='none'>{$find_next}</a>\r\n\t\t\t<a onclick='Javascript:editArea.execCommand(\"area_replace\")' selec='none'>{$replace}</a>\r\n\t\t\t<a onclick='Javascript:editArea.execCommand(\"area_replace_all\")' selec='none'>{$replace_all}</a><br />\r\n\t\t</div>\r\n\t\t<div id='area_search_msg' selec='none'></div>\r\n\t</div>\r\n\t<div id='edit_area_help' class='editarea_popup'>\r\n\t\t<div class='close_popup'>\r\n\t\t\t<a onclick='Javascript:editArea.execCommand(\"close_all_inline_popup\")'><img src='[__BASEURL__]images/close.gif' alt='{$close_popup}' title='{$close_popup}' /></a>\r\n\t\t</div>\r\n\t\t<div><h2>Editarea [__EA_VERSION__]</h2><br />\r\n\t\t\t<h3>{$shortcuts}:</h3>\r\n\t\t\t\t{$tab}: {$add_tab}<br />\r\n\t\t\t\t{$shift}+{$tab}: {$remove_tab}<br />\r\n\t\t\t\t{$ctrl}+f: {$search_command}<br />\r\n\t\t\t\t{$ctrl}+r: {$replace_command}<br />\r\n\t\t\t\t{$ctrl}+h: {$highlight}<br />\r\n\t\t\t\t{$ctrl}+g: {$go_to_line}<br />\r\n\t\t\t\t{$ctrl}+z: {$undo}<br />\r\n\t\t\t\t{$ctrl}+y: {$redo}<br />\r\n\t\t\t\t{$ctrl}+e: {$help}<br />\r\n\t\t\t\t{$ctrl}+q, {$esc}: {$close_popup}<br />\r\n\t\t\t\t{$accesskey} E: {$toggle}<br />\r\n\t\t\t<br />\r\n\t\t\t<em>{$about_notice}</em>\r\n\t\t\t<br /><div class='copyright'>&copy; Christophe Dolivet 2007-2010</div>\r\n\t\t</div>\r\n\t</div>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/editarea/license_apache.txt",
    "content": "Copyright 2008 Christophe Dolivet\r\n\r\nLicensed 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\r\n\r\n\thttp://www.apache.org/licenses/LICENSE-2.0\r\n\r\nUnless 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."
  },
  {
    "path": "newscoop/js/editarea/license_bsd.txt",
    "content": "Copyright (c) 2008, Christophe Dolivet\r\nAll rights reserved.\r\n\r\nRedistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\r\n\r\n    * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\r\n    * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\r\n    * Neither the name of EditArea nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\r\n\r\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
  },
  {
    "path": "newscoop/js/editarea/license_lgpl.txt",
    "content": "\t\t  GNU LESSER GENERAL PUBLIC LICENSE\n\t\t       Version 2.1, February 1999\n\n Copyright (C) 1991, 1999 Free Software Foundation, Inc.\n 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA\n Everyone is permitted to copy and distribute verbatim copies\n of this license document, but changing it is not allowed.\n\n[This is the first released version of the Lesser GPL.  It also counts\n as the successor of the GNU Library Public License, version 2, hence\n the version number 2.1.]\n\n\t\t\t    Preamble\n\n  The licenses for most software are designed to take away your\nfreedom to share and change it.  By contrast, the GNU General Public\nLicenses are intended to guarantee your freedom to share and change\nfree software--to make sure the software is free for all its users.\n\n  This license, the Lesser General Public License, applies to some\nspecially designated software packages--typically libraries--of the\nFree Software Foundation and other authors who decide to use it.  You\ncan use it too, but we suggest you first think carefully about whether\nthis license or the ordinary General Public License is the better\nstrategy to use in any particular case, based on the explanations below.\n\n  When we speak of free software, we are referring to freedom of use,\nnot price.  Our General Public Licenses are designed to make sure that\nyou have the freedom to distribute copies of free software (and charge\nfor this service if you wish); that you receive source code or can get\nit if you want it; that you can change the software and use pieces of\nit in new free programs; and that you are informed that you can do\nthese things.\n\n  To protect your rights, we need to make restrictions that forbid\ndistributors to deny you these rights or to ask you to surrender these\nrights.  These restrictions translate to certain responsibilities for\nyou if you distribute copies of the library or if you modify it.\n\n  For example, if you distribute copies of the library, whether gratis\nor for a fee, you must give the recipients all the rights that we gave\nyou.  You must make sure that they, too, receive or can get the source\ncode.  If you link other code with the library, you must provide\ncomplete object files to the recipients, so that they can relink them\nwith the library after making changes to the library and recompiling\nit.  And you must show them these terms so they know their rights.\n\n  We protect your rights with a two-step method: (1) we copyright the\nlibrary, and (2) we offer you this license, which gives you legal\npermission to copy, distribute and/or modify the library.\n\n  To protect each distributor, we want to make it very clear that\nthere is no warranty for the free library.  Also, if the library is\nmodified by someone else and passed on, the recipients should know\nthat what they have is not the original version, so that the original\nauthor's reputation will not be affected by problems that might be\nintroduced by others.\n\n  Finally, software patents pose a constant threat to the existence of\nany free program.  We wish to make sure that a company cannot\neffectively restrict the users of a free program by obtaining a\nrestrictive license from a patent holder.  Therefore, we insist that\nany patent license obtained for a version of the library must be\nconsistent with the full freedom of use specified in this license.\n\n  Most GNU software, including some libraries, is covered by the\nordinary GNU General Public License.  This license, the GNU Lesser\nGeneral Public License, applies to certain designated libraries, and\nis quite different from the ordinary General Public License.  We use\nthis license for certain libraries in order to permit linking those\nlibraries into non-free programs.\n\n  When a program is linked with a library, whether statically or using\na shared library, the combination of the two is legally speaking a\ncombined work, a derivative of the original library.  The ordinary\nGeneral Public License therefore permits such linking only if the\nentire combination fits its criteria of freedom.  The Lesser General\nPublic License permits more lax criteria for linking other code with\nthe library.\n\n  We call this license the \"Lesser\" General Public License because it\ndoes Less to protect the user's freedom than the ordinary General\nPublic License.  It also provides other free software developers Less\nof an advantage over competing non-free programs.  These disadvantages\nare the reason we use the ordinary General Public License for many\nlibraries.  However, the Lesser license provides advantages in certain\nspecial circumstances.\n\n  For example, on rare occasions, there may be a special need to\nencourage the widest possible use of a certain library, so that it becomes\na de-facto standard.  To achieve this, non-free programs must be\nallowed to use the library.  A more frequent case is that a free\nlibrary does the same job as widely used non-free libraries.  In this\ncase, there is little to gain by limiting the free library to free\nsoftware only, so we use the Lesser General Public License.\n\n  In other cases, permission to use a particular library in non-free\nprograms enables a greater number of people to use a large body of\nfree software.  For example, permission to use the GNU C Library in\nnon-free programs enables many more people to use the whole GNU\noperating system, as well as its variant, the GNU/Linux operating\nsystem.\n\n  Although the Lesser General Public License is Less protective of the\nusers' freedom, it does ensure that the user of a program that is\nlinked with the Library has the freedom and the wherewithal to run\nthat program using a modified version of the Library.\n\n  The precise terms and conditions for copying, distribution and\nmodification follow.  Pay close attention to the difference between a\n\"work based on the library\" and a \"work that uses the library\".  The\nformer contains code derived from the library, whereas the latter must\nbe combined with the library in order to run.\n\n\t\t  GNU LESSER GENERAL PUBLIC LICENSE\n   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\n\n  0. This License Agreement applies to any software library or other\nprogram which contains a notice placed by the copyright holder or\nother authorized party saying it may be distributed under the terms of\nthis Lesser General Public License (also called \"this License\").\nEach licensee is addressed as \"you\".\n\n  A \"library\" means a collection of software functions and/or data\nprepared so as to be conveniently linked with application programs\n(which use some of those functions and data) to form executables.\n\n  The \"Library\", below, refers to any such software library or work\nwhich has been distributed under these terms.  A \"work based on the\nLibrary\" means either the Library or any derivative work under\ncopyright law: that is to say, a work containing the Library or a\nportion of it, either verbatim or with modifications and/or translated\nstraightforwardly into another language.  (Hereinafter, translation is\nincluded without limitation in the term \"modification\".)\n\n  \"Source code\" for a work means the preferred form of the work for\nmaking modifications to it.  For a library, complete source code means\nall the source code for all modules it contains, plus any associated\ninterface definition files, plus the scripts used to control compilation\nand installation of the library.\n\n  Activities other than copying, distribution and modification are not\ncovered by this License; they are outside its scope.  The act of\nrunning a program using the Library is not restricted, and output from\nsuch a program is covered only if its contents constitute a work based\non the Library (independent of the use of the Library in a tool for\nwriting it).  Whether that is true depends on what the Library does\nand what the program that uses the Library does.\n  \n  1. You may copy and distribute verbatim copies of the Library's\ncomplete source code as you receive it, in any medium, provided that\nyou conspicuously and appropriately publish on each copy an\nappropriate copyright notice and disclaimer of warranty; keep intact\nall the notices that refer to this License and to the absence of any\nwarranty; and distribute a copy of this License along with the\nLibrary.\n\n  You may charge a fee for the physical act of transferring a copy,\nand you may at your option offer warranty protection in exchange for a\nfee.\n\n  2. You may modify your copy or copies of the Library or any portion\nof it, thus forming a work based on the Library, and copy and\ndistribute such modifications or work under the terms of Section 1\nabove, provided that you also meet all of these conditions:\n\n    a) The modified work must itself be a software library.\n\n    b) You must cause the files modified to carry prominent notices\n    stating that you changed the files and the date of any change.\n\n    c) You must cause the whole of the work to be licensed at no\n    charge to all third parties under the terms of this License.\n\n    d) If a facility in the modified Library refers to a function or a\n    table of data to be supplied by an application program that uses\n    the facility, other than as an argument passed when the facility\n    is invoked, then you must make a good faith effort to ensure that,\n    in the event an application does not supply such function or\n    table, the facility still operates, and performs whatever part of\n    its purpose remains meaningful.\n\n    (For example, a function in a library to compute square roots has\n    a purpose that is entirely well-defined independent of the\n    application.  Therefore, Subsection 2d requires that any\n    application-supplied function or table used by this function must\n    be optional: if the application does not supply it, the square\n    root function must still compute square roots.)\n\nThese requirements apply to the modified work as a whole.  If\nidentifiable sections of that work are not derived from the Library,\nand can be reasonably considered independent and separate works in\nthemselves, then this License, and its terms, do not apply to those\nsections when you distribute them as separate works.  But when you\ndistribute the same sections as part of a whole which is a work based\non the Library, the distribution of the whole must be on the terms of\nthis License, whose permissions for other licensees extend to the\nentire whole, and thus to each and every part regardless of who wrote\nit.\n\nThus, it is not the intent of this section to claim rights or contest\nyour rights to work written entirely by you; rather, the intent is to\nexercise the right to control the distribution of derivative or\ncollective works based on the Library.\n\nIn addition, mere aggregation of another work not based on the Library\nwith the Library (or with a work based on the Library) on a volume of\na storage or distribution medium does not bring the other work under\nthe scope of this License.\n\n  3. You may opt to apply the terms of the ordinary GNU General Public\nLicense instead of this License to a given copy of the Library.  To do\nthis, you must alter all the notices that refer to this License, so\nthat they refer to the ordinary GNU General Public License, version 2,\ninstead of to this License.  (If a newer version than version 2 of the\nordinary GNU General Public License has appeared, then you can specify\nthat version instead if you wish.)  Do not make any other change in\nthese notices.\n\n  Once this change is made in a given copy, it is irreversible for\nthat copy, so the ordinary GNU General Public License applies to all\nsubsequent copies and derivative works made from that copy.\n\n  This option is useful when you wish to copy part of the code of\nthe Library into a program that is not a library.\n\n  4. You may copy and distribute the Library (or a portion or\nderivative of it, under Section 2) in object code or executable form\nunder the terms of Sections 1 and 2 above provided that you accompany\nit with the complete corresponding machine-readable source code, which\nmust be distributed under the terms of Sections 1 and 2 above on a\nmedium customarily used for software interchange.\n\n  If distribution of object code is made by offering access to copy\nfrom a designated place, then offering equivalent access to copy the\nsource code from the same place satisfies the requirement to\ndistribute the source code, even though third parties are not\ncompelled to copy the source along with the object code.\n\n  5. A program that contains no derivative of any portion of the\nLibrary, but is designed to work with the Library by being compiled or\nlinked with it, is called a \"work that uses the Library\".  Such a\nwork, in isolation, is not a derivative work of the Library, and\ntherefore falls outside the scope of this License.\n\n  However, linking a \"work that uses the Library\" with the Library\ncreates an executable that is a derivative of the Library (because it\ncontains portions of the Library), rather than a \"work that uses the\nlibrary\".  The executable is therefore covered by this License.\nSection 6 states terms for distribution of such executables.\n\n  When a \"work that uses the Library\" uses material from a header file\nthat is part of the Library, the object code for the work may be a\nderivative work of the Library even though the source code is not.\nWhether this is true is especially significant if the work can be\nlinked without the Library, or if the work is itself a library.  The\nthreshold for this to be true is not precisely defined by law.\n\n  If such an object file uses only numerical parameters, data\nstructure layouts and accessors, and small macros and small inline\nfunctions (ten lines or less in length), then the use of the object\nfile is unrestricted, regardless of whether it is legally a derivative\nwork.  (Executables containing this object code plus portions of the\nLibrary will still fall under Section 6.)\n\n  Otherwise, if the work is a derivative of the Library, you may\ndistribute the object code for the work under the terms of Section 6.\nAny executables containing that work also fall under Section 6,\nwhether or not they are linked directly with the Library itself.\n\n  6. As an exception to the Sections above, you may also combine or\nlink a \"work that uses the Library\" with the Library to produce a\nwork containing portions of the Library, and distribute that work\nunder terms of your choice, provided that the terms permit\nmodification of the work for the customer's own use and reverse\nengineering for debugging such modifications.\n\n  You must give prominent notice with each copy of the work that the\nLibrary is used in it and that the Library and its use are covered by\nthis License.  You must supply a copy of this License.  If the work\nduring execution displays copyright notices, you must include the\ncopyright notice for the Library among them, as well as a reference\ndirecting the user to the copy of this License.  Also, you must do one\nof these things:\n\n    a) Accompany the work with the complete corresponding\n    machine-readable source code for the Library including whatever\n    changes were used in the work (which must be distributed under\n    Sections 1 and 2 above); and, if the work is an executable linked\n    with the Library, with the complete machine-readable \"work that\n    uses the Library\", as object code and/or source code, so that the\n    user can modify the Library and then relink to produce a modified\n    executable containing the modified Library.  (It is understood\n    that the user who changes the contents of definitions files in the\n    Library will not necessarily be able to recompile the application\n    to use the modified definitions.)\n\n    b) Use a suitable shared library mechanism for linking with the\n    Library.  A suitable mechanism is one that (1) uses at run time a\n    copy of the library already present on the user's computer system,\n    rather than copying library functions into the executable, and (2)\n    will operate properly with a modified version of the library, if\n    the user installs one, as long as the modified version is\n    interface-compatible with the version that the work was made with.\n\n    c) Accompany the work with a written offer, valid for at\n    least three years, to give the same user the materials\n    specified in Subsection 6a, above, for a charge no more\n    than the cost of performing this distribution.\n\n    d) If distribution of the work is made by offering access to copy\n    from a designated place, offer equivalent access to copy the above\n    specified materials from the same place.\n\n    e) Verify that the user has already received a copy of these\n    materials or that you have already sent this user a copy.\n\n  For an executable, the required form of the \"work that uses the\nLibrary\" must include any data and utility programs needed for\nreproducing the executable from it.  However, as a special exception,\nthe materials to be distributed need not include anything that is\nnormally distributed (in either source or binary form) with the major\ncomponents (compiler, kernel, and so on) of the operating system on\nwhich the executable runs, unless that component itself accompanies\nthe executable.\n\n  It may happen that this requirement contradicts the license\nrestrictions of other proprietary libraries that do not normally\naccompany the operating system.  Such a contradiction means you cannot\nuse both them and the Library together in an executable that you\ndistribute.\n\n  7. You may place library facilities that are a work based on the\nLibrary side-by-side in a single library together with other library\nfacilities not covered by this License, and distribute such a combined\nlibrary, provided that the separate distribution of the work based on\nthe Library and of the other library facilities is otherwise\npermitted, and provided that you do these two things:\n\n    a) Accompany the combined library with a copy of the same work\n    based on the Library, uncombined with any other library\n    facilities.  This must be distributed under the terms of the\n    Sections above.\n\n    b) Give prominent notice with the combined library of the fact\n    that part of it is a work based on the Library, and explaining\n    where to find the accompanying uncombined form of the same work.\n\n  8. You may not copy, modify, sublicense, link with, or distribute\nthe Library except as expressly provided under this License.  Any\nattempt otherwise to copy, modify, sublicense, link with, or\ndistribute the Library is void, and will automatically terminate your\nrights under this License.  However, parties who have received copies,\nor rights, from you under this License will not have their licenses\nterminated so long as such parties remain in full compliance.\n\n  9. You are not required to accept this License, since you have not\nsigned it.  However, nothing else grants you permission to modify or\ndistribute the Library or its derivative works.  These actions are\nprohibited by law if you do not accept this License.  Therefore, by\nmodifying or distributing the Library (or any work based on the\nLibrary), you indicate your acceptance of this License to do so, and\nall its terms and conditions for copying, distributing or modifying\nthe Library or works based on it.\n\n  10. Each time you redistribute the Library (or any work based on the\nLibrary), the recipient automatically receives a license from the\noriginal licensor to copy, distribute, link with or modify the Library\nsubject to these terms and conditions.  You may not impose any further\nrestrictions on the recipients' exercise of the rights granted herein.\nYou are not responsible for enforcing compliance by third parties with\nthis License.\n\n  11. If, as a consequence of a court judgment or allegation of patent\ninfringement or for any other reason (not limited to patent issues),\nconditions are imposed on you (whether by court order, agreement or\notherwise) that contradict the conditions of this License, they do not\nexcuse you from the conditions of this License.  If you cannot\ndistribute so as to satisfy simultaneously your obligations under this\nLicense and any other pertinent obligations, then as a consequence you\nmay not distribute the Library at all.  For example, if a patent\nlicense would not permit royalty-free redistribution of the Library by\nall those who receive copies directly or indirectly through you, then\nthe only way you could satisfy both it and this License would be to\nrefrain entirely from distribution of the Library.\n\nIf any portion of this section is held invalid or unenforceable under any\nparticular circumstance, the balance of the section is intended to apply,\nand the section as a whole is intended to apply in other circumstances.\n\nIt is not the purpose of this section to induce you to infringe any\npatents or other property right claims or to contest validity of any\nsuch claims; this section has the sole purpose of protecting the\nintegrity of the free software distribution system which is\nimplemented by public license practices.  Many people have made\ngenerous contributions to the wide range of software distributed\nthrough that system in reliance on consistent application of that\nsystem; it is up to the author/donor to decide if he or she is willing\nto distribute software through any other system and a licensee cannot\nimpose that choice.\n\nThis section is intended to make thoroughly clear what is believed to\nbe a consequence of the rest of this License.\n\n  12. If the distribution and/or use of the Library is restricted in\ncertain countries either by patents or by copyrighted interfaces, the\noriginal copyright holder who places the Library under this License may add\nan explicit geographical distribution limitation excluding those countries,\nso that distribution is permitted only in or among countries not thus\nexcluded.  In such case, this License incorporates the limitation as if\nwritten in the body of this License.\n\n  13. The Free Software Foundation may publish revised and/or new\nversions of the Lesser General Public License from time to time.\nSuch new versions will be similar in spirit to the present version,\nbut may differ in detail to address new problems or concerns.\n\nEach version is given a distinguishing version number.  If the Library\nspecifies a version number of this License which applies to it and\n\"any later version\", you have the option of following the terms and\nconditions either of that version or of any later version published by\nthe Free Software Foundation.  If the Library does not specify a\nlicense version number, you may choose any version ever published by\nthe Free Software Foundation.\n\n  14. If you wish to incorporate parts of the Library into other free\nprograms whose distribution conditions are incompatible with these,\nwrite to the author to ask for permission.  For software which is\ncopyrighted by the Free Software Foundation, write to the Free\nSoftware Foundation; we sometimes make exceptions for this.  Our\ndecision will be guided by the two goals of preserving the free status\nof all derivatives of our free software and of promoting the sharing\nand reuse of software generally.\n\n\t\t\t    NO WARRANTY\n\n  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO\nWARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.\nEXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR\nOTHER PARTIES PROVIDE THE LIBRARY \"AS IS\" WITHOUT WARRANTY OF ANY\nKIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\nPURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE\nLIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME\nTHE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n\n  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN\nWRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY\nAND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU\nFOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR\nCONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE\nLIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING\nRENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A\nFAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF\nSUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH\nDAMAGES.\n\n\t\t     END OF TERMS AND CONDITIONS\n"
  },
  {
    "path": "newscoop/js/editarea/smarty.js",
    "content": "editAreaLoader.load_syntax[\"smarty\"] = {\n\t'COMMENT_MULTI' : {'{{*' : '*}}'}\n\t,'QUOTEMARKS' : {1: \"'\", 2: '\"'}\n\t,'KEYWORD_CASE_SENSITIVE' : true\n\t,'KEYWORDS' : {\n\t\t'constants' : [\n\t\t\t// Campsite smarty functions and Smarty custom functions\n\t\t\t'comment_form', 'list_article_attachments', 'list_article_audio_attachments', 'list_article_comments',\n\t\t\t'list_article_images', 'list_articles', 'list_article_topics', 'list_issues', 'list_languages',\n\t\t\t'list_search_results', 'list_sections', 'list_subtitles', 'list_subtopics', 'local', 'login_form',\n\t\t\t'search_form', 'subscription_form', 'user_form', 'breadcrumb', 'calendar', 'camp_edit', 'camp_select',\n\t\t\t'captcha_image_link', 'disable_html_encoding', 'enable_html_encoding', 'formparameters', 'set_article',\n\t\t\t'set_current_issue', 'set_default_article', 'set_default_issue', 'set_default_language', 'set_default_publication',\n\t\t\t'set_default_section', 'set_default_topic', 'set_issue', 'set_language', 'set_publication', 'set_section',\n\t\t\t'set_topic', 'unset_article', 'unset_comment', 'unset_issue', 'unset_language', 'unset_publication',\n\t\t\t'unset_section', 'unset_topic', 'uripath', 'uri', 'urlparameters', 'url', 'camp_date_format', 'camp_filesize_format',\n\t\t\t'obfuscate_email', 'teaser',\n\t\t\t'assign', 'counter', 'cycle', 'debug', 'eval', 'fetch', 'html_checkboxes', 'html_image', 'html_options', 'html_radios',\n                        'html_select_date', 'html_select_time', 'html_table', 'mailto', 'math', 'popup', 'popup_init', 'textformat',\n                        'echo', 'print', 'global', 'static', 'exit', 'array', 'empty', 'eval', 'isset', 'unset', 'die',\n\t\t\t'capitalize', 'cat', 'count_characters', 'count_paragraphs', 'count_sentences', 'count_words', 'date_format',\n\t\t\t'escape', 'indent', 'lower', 'nl2br', 'regex_replace', 'replace', 'spacify', 'string_format', 'strip',\n\t\t\t'strip_tags', 'truncate', 'upper', 'wordwrap'\n\t\t]\n\t\t,'statements' : [\n\t\t\t// Smarty built-in functions\n\t\t\t'capture', 'config_load', 'foreach', 'foreachelse',\n\t\t\t'if', 'elseif', 'else', 'include', 'include_php', 'insert',\n\t\t\t'ldelim', 'rdelim', 'literal', 'php', 'section', 'sectionelse', 'strip'\n\t\t]\n\t\t,'reserved' : [\n\t\t\t// \n\t\t\t'name', 'number', 'english_name', 'code', 'defined',\n\t\t\t'identifier', 'site', 'defined', 'public_comments', 'moderated_comments', 'captcha_enabled',\n\t\t\t'subscription_currency', 'subscription_time_unit', 'subscription_trial_time',\n\t\t\t'subscription_paid_time', 'subscription_time', 'subscription_unit_cost',\n\t\t\t'subscription_unit_cost_all_lang', 'date', 'publish_date', 'url_name', 'is_current',\n\t\t\t'description', 'author', 'keywords', 'has_keyword', 'type_name', 'creation_date',\n\t\t\t'last_update', 'translated_to', 'subtitles_count', 'subtitle_url_id', 'current_subtitle_no',\n\t\t\t'owner', 'comments_enabled', 'comments_locked', 'comment_count', 'on_front_page',\n\t\t\t'on_section_page', 'is_published', 'is_public', 'is_indexed', 'content_accessible',\n\t\t\t'has_attachments', 'image_index', 'has_image', 'topics_count', 'has_topics', 'has_topic',\n\t\t\t'reads', 'request_object_id', 'all_subtitles', 'first_paragraph', 'subtitle_number',\n\t\t\t'subtitle_is_current', 'has_previous_subtitles', 'has_next_subtitles', 'file_name',\n\t\t\t'mime_type', 'extension', 'size_b', 'size_kb', 'size_mb', 'title', 'creator', 'genre',\n\t\t\t'length', 'year', 'bitrate', 'samplerate', 'album', 'format', 'composer', 'channels',\n\t\t\t'rating', 'track_no', 'disk_no', 'lyrics', 'real_name', 'nickname', 'reader_email',\n\t\t\t'submit_date', 'subject', 'content', 'level', 'field_name', 'formatted_name', 'count',\n\t\t\t'photographer', 'place', 'article_index', 'imageurl', 'thumbnailurl', 'uname', 'gender',\n\t\t\t'email', 'city', 'str_address', 'state', 'phone', 'fax', 'country', 'country_code',\n\t\t\t'second_phone', 'postal_code', 'field1', 'field2', 'field3', 'field4', 'field5',\n\t\t\t'text1', 'text2', 'text3', 'pref1', 'pref2', 'pref3', 'pref4', 'logged_in', 'is_blocked_from_comments',\n\t\t\t'is_admin', 'has_permission', 'start_date', 'expiration_date', 'is_active', 'is_valid',\n\t\t\t'has_section', 'at_beginning', 'at_end', 'has_next_elements', 'has_previous_elements',\n\t\t\t'previous_start', 'next_start', 'current', 'end', 'index', 'row', 'is_error', 'error_code',\n\t\t\t'error_message', 'user_name', 'remember_user', 'ok', 'search_phrase', 'search_keywords',\n\t\t\t'match_all', 'search_level', 'submit_button', 'is_trial', 'is_paid', 'uri_path',\n\t\t\t'url_parameters', 'form_parameters', 'base', 'path', 'query', 'request_uri', 'scheme',\n\t\t\t'host', 'port', 'get_parameter', 'set_parameter', 'reset_parameter'\n\t\t]\n\t\t,'functions' : [\n\t\t\t// Campsite objects\n\t\t\t'language', 'default_language', 'publication', 'default_publication', 'issue', 'default_issue',\n\t\t\t'article', 'default_article', 'article_attachment', 'audio_attachment', 'article_comment',\n\t\t\t'subtitle', 'image', 'topic', 'default_topic', 'user', 'subscription', 'template', 'default_template',\n\t\t\t'default_url', 'current_list', 'login_action', 'search_articles_action', 'submit_comment_action',\n\t\t\t'preview_comment_action', 'edit_user_action', 'edit_subscription_action'\n\t\t]\n\t}\n\t,'OPERATORS' :[\n\t\t'+', '-', '/', '*', '==', '<', '>', '%', '!', '&&', '||', '!=', '>=', '<=', '===', '!'\n\t]\n\t,'DELIMITERS' :[\n\t\t'(', ')', '[', ']', '{', '}'\n\t]\n\t,'REGEXPS' : {\n\t\t// highlight all variables ($...)\n\t\t'variables' : {\n\t\t\t'search' : '()(\\\\$\\\\w+)()'\n\t\t\t,'class' : 'variables'\n\t\t\t,'modifiers' : 'g'\n\t\t\t,'execute' : 'before' // before or after\n\t\t}\n\t}\n\t,'STYLES' : {\n\t\t'CONSTANTS': 'color: #CC0000'\n\t\t,'COMMENTS': 'color: #AAAAAA;'\n\t\t,'QUOTESMARKS': 'color: #879EFA;'\n\t\t,'KEYWORDS' : {\n\t\t\t'reserved' : 'color: #48BDDF;'\n\t\t\t,'functions' : 'color: #0040FD;'\n\t\t\t,'statements' : 'color: #60CA00;'\n\t\t\t}\n\t\t,'OPERATORS' : 'color: #FF00FF;'\n\t\t,'DELIMITERS' : 'color: #2B60FF;'\n\t\t,'REGEXPS' : {\n\t\t\t'variables' : 'color: #E0BD54;'\n\t\t}\t\t\n\t}\n};\n"
  },
  {
    "path": "newscoop/js/editarea/todo.txt",
    "content": "FOR AUTOCOMPLETION:\r\n- work with tab editing (each one having it's context)\r\n- allow $ in prefix\r\n- allow to call user function for autocompletion\r\n- correctly display the box with window limits\r\n- enable \"live\" detection for new syntax keyword in the file\r\n- display a long description of the keyword (arround the box)\r\n\r\nDONE:\r\n- beeing able to prefix those word by key words (sort of namespace)\r\n- hide it on click\r\n- enable it for ctrl+space in the middle of a word\r\n\r\n/***** To do Needed *****/\r\n \r\n- Internet explorer: adding a caracter one the longest line as for consequence to make a scrollLeft=0 (in non wrapped mode)\r\n- Do optimisation for trying to only update the changed line in content_highlight\r\n- add real IE8 support (fix the tabulation width bug in IE8 that has now always the same width no matter the font-size and font-family in textarea but not in <pre>...)\r\n- change_callback is called one time at the beginning event if the text has not changed\r\n- check later init call with safari 3\r\n- improve callback documentation.\r\n\r\n/***** To do Optionnal*****/\r\n\r\n- possibility to switch on/off line numbers (allow to get more space)\r\n- amelioration of the scroll_to_view function for when there is several lines selected (center a little more the selected text)\r\n- improve opera 9 compatibility (very hard, need help for workaround) cf \"Browser remarks\".\r\n- optimize scroll_to_view for Opera?\r\n- add word wrap option for opera (bug with rendering mode of pre-wrap\r\n- possibility to add larger font sizes as options?\r\n\r\n/*** Bugs ***/\r\n\r\n- firefox: when using verdana (or other non-monospace fonts) switching the font size after font load has as results to sometimes give different render in textarea and in content_highlight (espacially near 11 and 12pt)\r\n- opera: (bloc word-wrap on opera) bug with cursor_end ()[] for a wrapped line (has wrong offsetLeft if rendered as multiline)\r\n- opera: (bloc word-wrap on opera) bug if first wraped character follow a <span> (or similar) on wrapped lines\r\n- when pressing \"reset highlight\" in IE the textarea scroll to the top (don't know how to fix this...)\r\n- (still pending?) when pressing \"shift+page down\"  and then \"shift+page up\" the top of the selection move where as it should be to the bottom of the selection to move (to fix it: must know in which direction the selection grow in \"get_selection_infos\")\r\n\r\n\r\n/*** Problems ***/\r\n\r\n\r\n/*** Highlight bugs ***/\r\n\r\n/*** Highlight problems ***/\r\n- only one language at the same time (no html and php in the same textarea. This should be possible, but there would have no optimization and be very very slow)\r\n\r\n\r\n/*** Global remarks ***/\r\n- editarea must be always visible, to hide it use the hide() function\r\n\r\n\r\n/*** Browser remarks/bugs ***/\r\n\r\nOPERA:\r\n- opera bug: pressing the \" key is equals to pressing the scrolldown key (with french keyboard at least) (still in opera 9.6?)\r\n- currently disabled: scrollDown/Up function (due to the \" key error) (still in oera 9.6?)\r\n- opera is very very slow with syntax highlight (regexp) (still in oera 9.6?)\r\n- opera doesn't manage correctly the width 100% for the iframe\r\n- it's possible to make scroll the window in fullscreen\r\n\r\nIE:\r\n- IE is far slower than firefox in highlight mode due to opacity filter\r\n- It's seems impossible to get the selection range when wrap mode is \"soft\" (and it's still very diffcult when wrap mode is on)\r\n- The syntax highlight mode is broken when text length is too long (~100000, 150000 chars) don't know why...\r\n\r\nFIREFOX:\r\n- the scrollHeight value for the textarea never decresease when lines are deleted (don't remember anything about this)\r\n\r\n\r\n"
  },
  {
    "path": "newscoop/js/fValidate/fValidate.basic.js",
    "content": "/***************************************************\t\n\n\tfValidate\n\tCopyright (c) 2000-2003\n\tby Peter Bailey\n\twww.peterbailey.net/fValidate/\n\n\tfValidate.basic.js\n\n\tIncluded Validators\n\t-------------------\n\tblank\n\tlength\n\n\tThis file is only part of a larger validation\n\tlibrary\tand will not function autonomously.\n\n\tCreated at a tab-spacing of four (4)\n\n****************************************************/\n\nfValidate.prototype.blank = function()\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tif ( this.isBlank() )\n\t{\n\t\tthis.throwError( [this.elem.fName] );\n\t}\n}\n\nfValidate.prototype.length = function( len, maxLen )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tvar vlen = this.elem.value.length;\n\tlen\t\t= Math.abs( len );\n\tmaxLen\t= Math.abs( this.setArg( maxLen, Number.infinity ) );\n\tif ( len > maxLen )\n\t{\n\t\tthis.devError( [len, maxLen, this.elem.name] );\n\t\treturn;\n\t}\n\tif ( len > parseInt( vlen, 10 ) )\n\t{\n\t\tthis.throwError( [this.elem.fName, len] );\n\t}\t\n\tif ( vlen > maxLen )\n\t{\n\t\tthis.throwError( [this.elem.fName, maxLen, vlen], 1 );\n\t}\n}\n//\tEOF"
  },
  {
    "path": "newscoop/js/fValidate/fValidate.config.js",
    "content": "function fValConfig()\n{\n\t/*\tGlobals.  Modify these to suit your setup\n\t------------------------------------------- */\n\t\t\n\t//\tAttribute used for fValidate Validator codes\n\tthis.code = 'alt';\n\t\n\t//\tAttribute used for custom error messages (override built-in error messages)\n\tthis.emsg = 'emsg';\n\t\n\t//\tAttribute used for pattern with custom validator type\n\tthis.pattern = 'pattern';\n\t\n\t//\tChange this to the classname you want for the error highlighting\n\tthis.errorClass = 'errHilite';\n\n\t//\tIf you wish fValidate to use only single classNames for errors\n\tthis.useSingleClassNames = false; // or true\n\t\n\t//\tThis is the even that triggers the clearing of the errorClass hilighting\n\tthis.clearEvent = 'change'; // 'change' | 'blur' | null\n\t\n\t//\tFor browsers that don't support attachEvent or addEventListere - override existing events for error reverting?\n\tthis.eventOverride = false;\n\t\n\t//\tIf the bConfirm flag is set to true, the users will be prompted with CONFIRM box with this message\n\t//\tSee your language file for this value\n\tthis.confirmMsg = fvalidate.i18n.config.confirmMsg;\n\t\n\t//\tIf user cancels CONFIRM, then this message will be alerted.  If you don't want this alert to show, then\n\t//\tempty the variable (  this.confirmAbortMsg = '';  )\n\t//\tSee your langauge file for this value\n\tthis.confirmAbortMsg = fvalidate.i18n.config.confirmAbortMsg;\n\t\n\t//\tEnter the name/id of your form's submit button here.  Can be a string or array of strings\n\tthis.submitButton = ['Submit','Submit2'];\n\t\n\t//\tEnter the name/id of your form's reset button here\n\tthis.resetButton = 'Reset';\n\t\n\t//\tEnder the name or id of the SELECT object here. Make sure you pay attention to the values (CC Types)\n\t//\tused in the case statement for the function validateCC()\n\tthis.ccType = 'Credit_Card_Type';\n\t\n\t//\tNOTE: The config value below exists for backwards compatibility with fValidate 3.55b.  If you have a newer \n\t//\tversion, use the above this.ccType instead.\n\t//\tEnter the DOM name of the SELECT object here. Make sure you pay attention to the values (CC Types)\n\t//\tused in the case statement for the function validateCC()\n\tthis.ccTypeObj = 'form1.Credit_Card_Type';\n\t\n\t//\tElement where box errors will appear\n\tthis.boxError = 'errors';\n\t\n\t//\tPrefix given to all error paragraphs in box error mode\n\tthis.boxErrorPrefix = 'fv_error_';\n}\n//\tEOF"
  },
  {
    "path": "newscoop/js/fValidate/fValidate.controls.js",
    "content": "/***************************************************\t\n\n\tfValidate\n\tCopyright (c) 2000-2003\n\tby Peter Bailey\n\twww.peterbailey.net/fValidate/\n\n\tfValidate.controls.js\n\n\tIncluded Validators\n\t-------------------\n\tselect\n\tselectm\n\tselecti\n\tcheckbox\n\tradio\n\tfile\n\n\tThis file is only part of a larger validation\n\tlibrary\tand will not function autonomously.\n\n\tCreated at a tab-spacing of four (4)\n\n****************************************************/\n\nfValidate.prototype.select = function()\n{\n\tif ( this.typeMismatch( 's1' ) ) return;\n\tif ( this.elem.selectedIndex == 0 )\n\t{\n\t\tthis.throwError( [this.elem.fName] );\n\t}\n}\n\nfValidate.prototype.selectm = function( minS, maxS )\n{\n\tif ( this.typeMismatch( 'sm' ) ) return;\n\tif ( typeof minS == 'undefined' )\n\t{\n\t\tthis.paramError( 'minS' );\n\t}\n\tif ( maxS == 999 || maxS == '*' || typeof maxS == 'undefined' || maxS > this.elem.length ) maxS = this.elem.length;\n\n\tvar count = 0;\t\n\tfor ( var opt, i = 0; ( opt = this.elem.options[i] ); i++ )\n\t{\n\t\tif ( opt.selected ) count++;\n\t}\n\n\tif ( count < minS || count > maxS )\n\t{\n\t\tthis.throwError( [minS, maxS, this.elem.fName, count] );\n\t}\n}\n\nfValidate.prototype.selecti = function( indexes )\n{\n\t\n\tif ( this.typeMismatch( 's1' ) ) return;\n\tif ( typeof indexes == 'undefined' )\n\t{\n\t\tthis.paramError( 'indexes' );\n\t\treturn;\n\t}\n\tindexes = indexes.split( \",\" );\n\tvar selectOK = true;\n\n\tfor ( var i = 0; i < indexes.length; i++ )\n\t{\n\t\tif ( this.elem.options[indexes[i]].selected )\n\t\t{\n\t\t\tselectOK = false;\n\t\t\tbreak;\n\t\t}\n\t}\n\tif ( !selectOK )\n\t{\n\t\tthis.throwError( [this.elem.fName] );\n\t}\n}\n\nfValidate.prototype.checkbox = function( minC, maxC )\n{\n\tif ( this.typeMismatch( 'cb' ) ) return;\n\tif ( typeof minC == 'undefined' )\n\t{\n\t\tthis.paramError( 'minC' );\n\t\treturn;\n\t}\n\tif ( this.elem == this.form.elements[this.elem.name] && !this.elem.checked )\n\t{\n\t\tthis.throwError( [this.elem.fName] );\n\t}\n\telse\n\t{\n\t\tthis.elem = this.form.elements[this.elem.name];\n\t\tvar len   = this.elem.length;\n\t\tvar count = 0;\n\t\t\n\t\tif ( maxC == 999 || maxC == '*' || typeof maxC == 'undefined' || maxC > this.elem.length )\n\t\t{\n\t\t\tmaxC == len;\n\t\t}\n\t\tvar i = len;\n\t\twhile( i-- > 0 )\n\t\t{\n\t\t\tif ( this.elem[i].checked )\n\t\t\t{\n\t\t\t\tcount++;\n\t\t\t}\n\t\t}\n\t\tif ( count < minC || count > maxC )\n\t\t{\n\t\t\tthis.throwError( [minC, maxC, this.elem[0].fName, count] );\n\t\t}\t\t\t\n\t}\n}\n\nfValidate.prototype.radio = function()\n{\n\tif ( this.typeMismatch( 'rg' ) ) return;\n\tif ( this.elem == this.form.elements[this.elem.name] && !this.elem.checked )\n\t{\n\t\tthis.throwError( [this.elem.fName] );\n\t}\n\telse\n\t{\n\t\tthis.elem = this.form.elements[this.elem.name];\n\t\t\n\t\tfor ( var i = 0; i < this.elem.length; i++ )\n\t\t{\n\t\t\tif ( this.elem.item( i ).checked )\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tthis.throwError( [this.elem[0].fName] );\n\t}\n}\n\nfValidate.prototype.file = function( extensions, cSens )\n{\n\tif ( this.typeMismatch( 'file' ) ) return;\n\tif ( typeof extensions == 'undefined' )\n\t{\n\t\tthis.paramError( 'extensions' );\n\t\treturn;\n\t}\n\tcSens = Boolean( cSens ) ? \"\" : \"i\";\n\tvar regex = new RegExp( \"^.+\\\\.(\" + extensions.replace( /,/g, \"|\" ) + \")$\", cSens );\n\tif ( ! regex.test( this.elem.value ) )\n\t{\n\t\tthis.throwError( [extensions.replace( /,/g, \"\\n\" )] );\n\t}\n}\n//\tEOF"
  },
  {
    "path": "newscoop/js/fValidate/fValidate.core.js",
    "content": "/***************************************************************************************************\n*\n*-- Form validation script by Peter Bailey, Copyright (c) 2001-2003\n*\tVersion 5.01b\n*\tUpdated on Feb 07, 2004\n*\twww.peterbailey.net\n*\tme@peterbailey.net\n*\n*\tIF YOU USE THIS SCRIPT, GIVE ME CREDIT PLEASE =)\n*\n*\tVisit http://www.peterbailey.net/fValidate/ for more info\n*\n*\tFeel free to contact me with any questions, comments, problems, or suggestions\n*\n*\tNote: This document most easily read with tab spacing set to 4\n*\n*******************************************************************************************************/\n\n/*\tCreate static fvalidate object\n------------------------------------------- */\nif ( typeof fvalidate == 'undefined' )\n{\n\tvar fvalidate = new Object();\n}\n\n/*\tGeneric event handling\n------------------------------------------- */\nfvalidate.addEvent = function( obj, evt, fn, useCapture )\n{\n\tif ( typeof obj.attachEvent != 'undefined' )\n\t{\n\t\tobj.attachEvent( \"on\" + evt, fn );\n\t}\n\telse if ( typeof obj.attachEventListener != 'undefined' )\n\t{\n\t\tobj.addEventListener( evt, fn, Boolean( useCapture ) );\n\t}\n}\nfvalidate.addEvents = function( obj, evts, fn, useCapture )\n{\n\tvar i = 0, evt;\n\twhile( evt = evts[i++] )\n\t{\n\t\tthis.addEvent( obj, evt, fn, Boolean( useCapture ) );\n\t}\n}\n\n/*\tMain validation routine\n------------------------------------------- */\nfunction validateForm( f, bConfirm, bDisable, bDisableR, groupError, errorMode )\n{\n\t//\tSet defaults\n\tbConfirm\t= Boolean( bConfirm );\n\tbDisable\t= Boolean( bDisable );\n\tbDisableR\t= Boolean( bDisableR );\n\tgroupError\t= Boolean( groupError );\n\terrorMode\t= ( typeof errorMode != 'undefined' ) ? parseInt( errorMode, 10 ) : 0;\n\n\t//\tInit vars and fValidate object\n\tvar params, fvCode, type;\n\tif ( typeof f.fv == 'undefined' )\n\t{\n\t\tf.fv = new fValidate( f, errorMode, groupError );\n\t} else {\t\t\n\t\tf.fv._reset();\n\t\tf.fv.errorMode = errorMode;\n\t}\n\t\n\t//\tLoop through all form elements\t\n\tvar elem, i = 0, attr = f.fv.config.code;\n\twhile ( elem = f.elements[i++] )\n\t{\n\t\t//\tSkip fieldsets\n\t\tif ( elem.nodeName == \"FIELDSET\" ) continue;\n\n\t\t//\tDoes element have validator attribute? (short-circuit check)\n\t\tfvCode\t\t\t= ( elem[attr] ) ? elem[attr] : elem.getAttribute( attr );\n\t\tif ( !( typeof fvCode == 'undefined' || fvCode == null || fvCode == \"\" ) )\n\t\t{\n\t\t\t//\tSet params, validation type, and validation state\n\t\t\tparams\t\t\t= fvCode.split( \"|\" );\n\t\t\ttype\t\t\t= params[0];\n\t\t\telem.validated\t= true;\n\t\t\t\n\t\t\t//\tValid validator type?\n\t\t\tif ( typeof f.fv[type] == 'undefined' )\n\t\t\t{\t\t\t\t\n\t\t\t\tf.fv.devError( [type, elem.name], 'notFound' );\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t\n\t\t\t//\tCheck for modifiers\n\t\t\tswitch( params.last() )\n\t\t\t{\t\t\t\t\n\t\t\t\tcase 'bok'\t:\t//\tbok requested\n\t\t\t\t\tparams = params.reduce( 1, 1 );\n\t\t\t\t\telem.bok = true;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'if'\t:\t//\tConditional validation requested\n\t\t\t\t\tparams = params.reduce( 1, 1 );\n\t\t\t\t\telem._if_ = true;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'then'\t:\t//\tConditional validation requested\n\t\t\t\t\tparams = params.reduce( 1, 1 );\n\t\t\t\t\telem._then_ = true;\n\t\t\t\t\tbreak;\n\t\t\t\tdefault\t\t:\t//\tNo modifiers\n\t\t\t\t\tparams = params.reduce( 1, 0 );\n\t\t\t\t\n\t\t\t}\n\n\t\t\t//\tIs element an array?\n\t\t\tif ( /radio|checkbox/.test( elem.type ) )\n\t\t\t{\n\t\t\t\t//\tSet group property\n\t\t\t\telem.group = f.elements[elem.name];\n\t\t\t}\n\t\t\t\n\t\t\t//\tAdd events if not already added\n\t\t\tif ( typeof elem.fName == 'undefined' )\n\t\t\t{\n\t\t\t\t//\tIf element is an array\t\t\t\n\t\t\t\tif ( typeof elem.group != 'undefined' )\n\t\t\t\t{\n\t\t\t\t\tfor ( var j = 0; j < elem.group.length; j++ )\t\t\t\t\n\t\t\t\t\t{\n\t\t\t\t\t\t//\tApply event-function to each child\n\t\t\t\t\t\tif ( f.fv.config.clearEvent != null )\n\t\t\t\t\t\t{\n\t\t\t\t\t\t//\tfvalidate.addEvent( elem.group.item( j ), fv.config.clearEvent, fv.revertError, false );\n\t\t\t\t\t\t\taddEvent( elem.group.item( j ), f.fv.config.clearEvent, f.fv, 'revertError', false );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\t//\tApply event-function to element\n\t\t\t\t//\tfvalidate.addEvent( elem, fv.config.clearEvent, fv.revertError, false );\n\t\t\t\t\taddEvent( elem, f.fv.config.clearEvent, f.fv, 'revertError', false );\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\t//\tSet formatted name, current element\n\t\t\telem.fName\t= elem.name.format();\n\t\t\tf.fv.elem\t\t= elem;\n\t\t\tf.fv.type\t\t= type;\n\n\t\t\t//\tCreate function to call the proper validator method of the fValidate class\n\t\t\tvar func = new Function( \"obj\", \"method\", \"obj[method]( \" + params.toArgString() + \" );\" );\n\t\t\tfunc( f.fv, type );\n\t\t\n\t\t\t//\tIf element test failed AND group error is off, return false\n\t\t\tif ( elem.validated == false && groupError == false ) return false;\n\t\t\t\n\t\t\t//\tClear error if field okay\n\t\t\tif ( elem.validated == true ) f.fv.revertError();\n\t\t}\n\t} //\tend of element loop\n\t\n\t//\tIf group error, show it\n\t//\tPaul Baranowski: added first condition because you dont want to show\n\t//\terrors useless there are some to show.  This was giving errors in IE.\n\tif ( (f.fv.errors.length > 0) && groupError ) f.fv.showGroupError();\n\n\t//\tReturn false if errors found\n\tif ( f.fv.errors.length > 0 ) return false;\n\n\t//\tShow pre-submission confirmation\n\tif ( bConfirm && !confirm( f.fv.config.confirmMsg ) )\n\t{\n\t\tif ( f.fv.config.confirmAbortMsg != '' ) alert( f.fv.config.confirmAbortMsg );\n\t\treturn false;\n\t}\n\t\n\t//\tDisable reset and/or submit buttons if requested\n\tif ( bDisable ) \n\t{\n\t\tif ( typeof f.fv.config.submitButton == 'object' )\n\t\t{\n\t\t\tvar sb, j = 0;\n\t\t\twhile( sb = f.fv.config.submitButton[j++] )\n\t\t\t{\n\t\t\t\tif ( f.fv.elementExists( sb ) )\n\t\t\t\t{\n\t\t\t\t\tf.elements[sb].disabled = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\telse if ( f.fv.elementExists( f.fv.config.submitButton ) )\n\t\t{\n\t\t\tf.elements[f.fv.config.submitButton].disabled = true;\n\t\t}\n\t}\n\tif ( bDisableR && f.fv.elementExists( f.fv.config.resetButton ) )\n\t{\n\t\tf.elements[f.fv.config.resetButton].disabled = true;\n\t}\n\n\t//\tSuccessful Validation.  Submit form\n\treturn true;\n\t\n\tfunction addEvent( elem, evt, obj, method, capture )\n\t{\n\t\tvar self = elem;\n\t\tif ( typeof elem.attachEvent != 'undefined' )\n\t\t{\n\t\t\telem.attachEvent( \"on\" + evt, function() { obj[method]( self ) } );\n\t\t}\n\t\telse if ( typeof elem.addEventListener != 'undefined' )\n\t\t{\n\t\t\telem.addEventListener( evt, function() { obj[method]( self ) }, capture );\n\t\t}\n\t\telse if ( f.fv.config.eventOverride )\n\t\t{\n\t\t\teleme['on' + evt] = function() { obj[method]( self ) };\n\t\t}\n\t}\n}\n\n/*\tConstructor\n------------------------------------------- */\nfunction fValidate( f, errorMode, groupError )\n{\n\tvar self        = this;\n\tthis.form       = f;\n\tthis.errorMode  = errorMode;\n\tthis.groupError = groupError;\n\tthis.errors     = new Array();\n\tthis.validated  = true;\n\tthis.config     = new fValConfig();\n\tthis.i18n\t\t= fvalidate.i18n;\n\t\n\t//\tAdd reset action to clear visual error cues\n\tf.onreset = function()\n\t{\n\t\tvar elem, i = 0;\n\t\twhile ( elem = this.elements[i++] )\n\t\t{\n\t\t\tself.revertError( elem );\n\t\t}\n\t}\n\t\n\taddLabelProperties();\n\t\n\t//\tParses form and adds label properties to elements that have one specified\n\tfunction addLabelProperties()\n\t{\n\t\t//\tCollect all label elements in form, init vars\t\t\n\t\tif ( typeof f.getElementsByTagName == 'undefined' ) return;\n\t\tvar labels = f.getElementsByTagName( \"label\" );\n\t\tvar label, i = j = 0;\n\t\tvar elem;\n\n\t\t//\tLoop through labels retrieved\n\t\twhile ( label = labels[i++] )\n\t\t{\n\t\t\t//\tFor Opera 6\n\t\t\tif ( typeof label.htmlFor == 'undefined' ) return;\n\t\t\t\n\t\t\t//\tRetrieve element\n\t\t\telem = f.elements[label.htmlFor];\n\t\t\tif ( typeof elem == 'undefined' )\n\t\t\t{\t//\tNo element found for label\t\t\t\t\n\t\t\t\tself.devError( [label.htmlFor], 'noLabel' );\n\t\t\t}\n\t\t\telse if ( typeof elem.label != 'undefined' )\n\t\t\t{\t//\tlabel property already added\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\telse if ( typeof elem.length != 'undefined' && elem.length > 1 && elem.nodeName != 'SELECT' )\n\t\t\t{\t//\tFor arrayed elements\n\t\t\t\tfor ( j = 0; j < elem.length; j++ )\n\t\t\t\t{\n\t\t\t\t\telem.item( j ).label = label;\n\t\t\t\t}\n\t\t\t}\n\t\t\t//\tRegular label\n\t\t\telem.label = label;\n\t\t}\n\t}\t\t\n}\n\n/*\tReset for another validation\n------------------------------------------- */\nfValidate.prototype._reset = function()\n{\n\tthis.errors\t\t= new Array();\n\tthis.showErrors\t= new Array();\n}\n\n/*\tChecks if element exists in form\n------------------------------------------- */\nfValidate.prototype.elementExists = function( elemName )\n{\n\treturn Boolean( typeof this.form.elements[elemName] != 'undefined' );\n}\n\n/*\tReceives error message and determines action\n------------------------------------------- */\nfValidate.prototype.throwError = function( args, which )\n{\n\tvar elem  = this.elem;\n\n\t//\tArrayed element?\n\tif ( typeof elem.name == 'undefined' )\n\t{\n\t\telem = elem[0];\n\t}\n\n\t//\tBok requested AND element blank OR conditional validation?\n\tif ( elem.bok && this.isBlank() )\n\t{\t//\tskip\t\t\n\t\telem.validated = true;\n\t\treturn;\n\t}\n\n\t//\tPart of a conditional validation?\n\tif ( elem.cv )\n\t{\n\t\treturn;\n\t}\n\t\n\t//\tSet failsafe to false\t\n\telem.validated = false;\n\n\t//\tCreate error message\n\twhich\t= this.setArg( which, 0 );\n\targs\t= this.setArg( args, [] );\n\temsgElem = ( typeof this.elem.getAttribute == \"undefined\" ) ?\n\t\t\tthis.elem[0]:\n\t\t\tthis.elem;\n\tif ( emsgElem.getAttribute( this.config.emsg ) )\n\t{\n\t\tvar error = emsgElem.getAttribute( this.config.emsg );\n\t}\n\tvar error = this.translateMessage( args, this.i18n.errors[this.type][which] );\n\n\t//\tGroup error mode?\n\tif ( this.groupError )\n\t{\n\t\t//\tPush error onto stack\n\t\tthis.errors.push( {'elem':elem, 'msg': error} );\t\t\n\t}\n\telse\n\t{\n\t\t//\tProcess error message\t\t\n\t\tthis.showError( error, false, emsgElem );\n\n\t\tvar focusElem = ( typeof elem.fields != 'undefined' )?\n\t\t\telem.fields[0]:\n\t\t\telem;\n\t\t\n\t\t//\tFocus and select elements, if possible\n\t\tthis.selectFocus( focusElem );\n\t}\n}\n\n\n/*\tShows error message to user\n------------------------------------------- */\nfValidate.prototype.showError = function( emsg, last, elem )\n{\n\t//\tSet variables\n\tvar self\t\t= this,\n\t\telem\t\t= this.setArg( elem, this.elem ),\n\t\tisHidden\t= Boolean( elem.type == 'hidden' ),\n\t\tlabel\t\t= ( isHidden ) ? null : elem.label || null,\n\t\temsg\t\t= ( elem.getAttribute( this.config.emsg ) ) ? elem.getAttribute( this.config.emsg ).replace( /\\\\n/g, \"\\n\" ) : emsg,\n\t\terrorClass\t= this.config.errorClass,\n\t\tsingleCSS\t= this.config.useSingleClassNames;\n\n\tif ( typeof this.showErrors == 'undefined' ) this.showErrors = new Array();\t\n\t\n\t//\tDetermine which error modes to use\n\tswitch( this.errorMode )\n\t{\t//\tThis represents all possible combinations\n\t\tcase 0  : alertError(); break;\n\t\tcase 1  : inputError(); break;\n\t\tcase 2  : labelError(); break;\n\t\tcase 3  : appendError(); break;\n\t\tcase 4  : boxError(); break;\n\t\tcase 5  : inputError(); labelError(); break;\n\t\tcase 6  : inputError(); appendError(); break;\n\t\tcase 7  : inputError(); boxError(); break;\n\t\tcase 8  : inputError(); alertError(); break;\n\t\tcase 9  : labelError(); appendError(); break;\n\t\tcase 10 : labelError(); boxError(); break;\n\t\tcase 11 : labelError(); alertError(); break;\n\t\tcase 12 : appendError(); boxError(); break;\n\t\tcase 13 : appendError(); alertError(); break;\n\t\tcase 14 : boxError(); alertError(); break;\n\t\tcase 15 : inputError(); labelError(); appendError(); break;\n\t\tcase 16 : inputError(); labelError(); boxError(); break;\n\t\tcase 17 : inputError(); labelError(); alertError(); break;\n\t\tcase 18 : inputError(); appendError(); boxError(); break;\n\t\tcase 19 : inputError(); appendError(); alertError(); break;\n\t\tcase 20 : inputError(); boxError(); alertError(); break;\n\t\tcase 21 : labelError(); appendError(); boxError(); break;\n\t\tcase 22 : labelError(); appendError(); alertError(); break;\n\t\tcase 23 : appendError(); boxError(); alertError(); break;\n\t\tcase 24 : inputError(); labelError(); appendError(); boxError(); break;\n\t\tcase 25 : inputError(); labelError(); appendError(); alertError(); break;\n\t\tcase 26 : inputError(); appendError(); boxError(); alertError(); break;\n\t\tcase 27 : labelError(); appendError(); boxError(); alertError(); break;\n\t\tcase 28 : inputError(); labelError(); appendError(); boxError(); alertError(); break;\t\t\n\t}\n\t//\tRegular alert error\n\tfunction alertError()\n\t{\n\t\tif ( self.groupError ) self.showErrors.push( emsg );\n\t\telse alert( emsg );\n\t\t// Modified by Paul Baranowski of Campsite:\n\t\t// dont show the 'grouperror' so we can avoid having to translate this.\n\t\t//if ( last ) alert( self.i18n.groupAlert + self.showErrors.join( \"\\n\\n- \" ) );\t\t\t\n\t\tif ( last ) alert( self.showErrors.join( \"\\n\\n\" ) );\t\t\t\n\t}\n\t//\tApplies class to form element\n\tfunction inputError()\n\t{\n\t\tif ( ( typeof elem.length != 'undefined' && elem.length > 1 && elem.nodeName != 'SELECT' ) || isHidden )\n\t\t{\n\t\t\tvar subelem, i = 0;\n\t\t\twhile( subelem = ( isHidden ) ? elem.fields[i++] : elem.item( i++ ) )\t\t\t\n\t\t\t{\n\t\t\t\tif ( subelem.className != '' && singleCSS )\n\t\t\t\t{\n\t\t\t\t\tsubelem.revertClass = subelem.className;\n\t\t\t\t\tsubelem.className = errorClass;\n\t\t\t\t} else {\n\t\t\t\t\tself.addCSSClass( subelem, errorClass );\n\t\t\t\t}\t\t\t\t\n\t\t\t}\n\t\t}\n\t\telse\n\t\t{\n\t\t\tif ( singleCSS )\n\t\t\t{\n\t\t\t\telem.revertClass = elem.className;\n\t\t\t\telem.className = errorClass;\n\t\t\t} else {\n\t\t\t\tself.addCSSClass( elem, errorClass );\n\t\t\t}\n\t\t}\n\t}\n\t//\tApplies class to element's label\n\tfunction labelError()\n\t{\n\t\tif ( label == null ) return;\n\t\tif ( self.config.useSingleClassNames )\n\t\t{\n\t\t\tlabel.className = errorClass;\n\t\t} else {\n\t\t\tself.addCSSClass( label, errorClass );\n\t\t}\n\t\t\n\t}\n\t//\tAppends error message to element's label\n\tfunction appendError()\n\t{\n\t\tif ( label == null || typeof label.innerHTML == 'undefined' ) return;\n\t\tif ( typeof label.original == 'undefined' )\n\t\t\tlabel.original = label.innerHTML;\n\t\tlabel.innerHTML = label.original + \" - \" + emsg.toHTML();\n\t}\n\t//\tAppends Error message to pre-defined element\n\tfunction boxError()\n\t{\n\t\tif ( typeof self.boxError == 'undefined' ) self.boxError = document.getElementById( self.config.boxError );\n\t\tif ( self.boxError == null )\n\t\t{\t\t\t\n\t\t\tself.devError( [self.config.boxError], 'noBox' );\n\t\t\treturn;\n\t\t}\n\t\tif ( typeof self.elem.name == 'undefined' || self.elem.name == \"\" )\n\t\t{\n\t\t\tself.devError( [self.elem[self.config.code]], 'missingName' );\n\t\t\treturn;\n\t\t}\n\t\tvar errorId = self.config.boxErrorPrefix + self.elem.name,\n\t\t\terrorElem;\n\t\tif ( errorElem = document.getElementById( errorId ) ) // short-circuit\n\t\t{\n\t\t\terrorElem.firstChild.nodeValue = emsg.toHTML();\n\t\t}\n\t\telse\n\t\t{\n\t\t\terrorElem = document.createHTMLElement( 'li', { id: errorId, 'innerHTML': emsg.toHTML(), title: self.i18n.boxToolTip } );\n\t\t\tself.boxError.appendChild( errorElem );\n\t\t\terrorElem.onclick = function()\n\t\t\t{\n\t\t\t\tvar elem = self.form.elements[this.id.replace( self.config.boxErrorPrefix, \"\" )];\n\t\t\t\tif ( typeof elem.fields != 'undefined' ) elem = elem.fields[0];\n\t\t\t\tif ( typeof elem.select != 'undefined' ) elem.select();\n\t\t\t\tif ( typeof elem.focus != 'undefined' ) elem.focus();\n\t\t\t}\n\t\t}\n\t\tself.boxError.style.display = \"block\";\n\t}\n}\n\n/*\tHandles element className manipulation\n------------------------------------------- */\nfValidate.prototype.removeCSSClass = function( elem, className )\n{\n\telem.className = elem.className.replace( className, \"\" ).trim();\n}\nfValidate.prototype.addCSSClass = function( elem, className )\n{\n\tthis.removeCSSClass( elem, className );\n\telem.className = ( elem.className + \" \" + className ).trim();\n}\n\n/*\tProcesses errors in stack for group error mode\n------------------------------------------- */\nfValidate.prototype.showGroupError = function()\n{\n\tfor ( var error, firstElem, i = 0; ( error = this.errors[i] ); i++ )\n\t{\n\t\tif ( i == 0 ) firstElem = error.elem;\n\t\tthis.elem = error.elem;\n\t\tthis.showError( error.msg, Boolean( i == ( this.errors.length - 1 ) ) );\n\t}\n\tvar focusElem = ( typeof firstElem.fields != 'undefined' )?\n\t\tfirstElem.fields[0]:\n\t\tfirstElem;\n\tthis.selectFocus( focusElem );\n}\n\n/*\tReverts any visible error notification upon event\n------------------------------------------- */\nfValidate.prototype.revertError = function( elem )\n{\n\telem = this.setArg( elem, this.elem );\n\tvar isHidden\t= Boolean( elem.type == 'hidden' ),\n\t\terrorClass\t= this.config.errorClass,\n\t\ti\t\t\t= 0,\n\t\terrorElem,\n\t\tsubelem;\n\n\tif ( ( typeof elem.length != 'undefined' && elem.length > 1 && elem.nodeName != 'SELECT' ) || isHidden )\n\t{\n\t\tif ( isHidden && typeof elem.fields != 'undefined' )\n\t\t{\t\t\n\t\t\twhile( subelem = ( isHidden ) ? elem.fields[i++] : elem.item( i++ ) )\t\t\n\t\t\t{\n\t\t\t\tif ( typeof subelem.revertClass != 'undefined' )\n\t\t\t\t{\n\t\t\t\t\tsubelem.className = subelem.revertClass;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif ( this.config.useSingleClassNames )\n\t\t{\n\t\t\tif ( typeof subElement.revertClass != 'undefined' )\n\t\t\t{\n\t\t\t\telem.className = elem.revertClass;\n\t\t\t}\n\t\t} else {\n\t\t\tthis.removeCSSClass( elem, errorClass );\n\t\t}\t\t\n\t}\n\tif ( typeof elem.label != 'undefined' )\n\t{\n\t\tif ( this.config.useSingleClassNames )\n\t\t{\n\t\t\telem.label.className = '';\n\t\t} else {\n\t\t\tthis.removeCSSClass( elem.label, errorClass );\n\t\t}\n\t\telem.label.innerHTML = ( elem.label.original || elem.label.innerHTML );\n\t}\n\tif ( typeof this.boxError != 'undefined' )\n\t{\n\t\tif ( typeof this.boxError.normalize != 'undefined' ) this.boxError.normalize();\n\t\tif ( errorElem = document.getElementById( this.config.boxErrorPrefix + elem.name ) )\n\t\t{\n\t\t\tthis.boxError.removeChild( errorElem );\n\t\t}\n\t\tif ( this.boxError.childNodes.length == 0 ) this.boxError.style.display = \"none\";\n\t}\n}\n\n/*\tFocus and select elements, if possible\n------------------------------------------- */\nfValidate.prototype.selectFocus = function( elem )\n{\n\tif ( typeof elem.select != 'undefined' ) elem.select();\n\tif ( typeof elem.focus != 'undefined' )  elem.focus();\n}\n\n/*\tDeveloper assistance method - shows error if validator/element-type mismatch\n------------------------------------------- */\nfValidate.prototype.typeMismatch = function()\n{\n\tvar pats = {\n\t\t'text':\t\t'text|password|textarea',\n\t\t'ta':\t\t'textarea',\n\t\t'hidden':\t'hidden',\n\t\t's1':\t\t'select-one',\n\t\t'sm':\t\t'select-multiple',\n\t\t'select':\t'select-one|select-multiple',\n\t\t'rg':\t\t'radio',\n\t\t'radio':\t'radio',\n\t\t'cb':\t\t'checkbox',\n\t\t'file':\t\t'file'\n\t\t};\n\tvar fail\t\t= false,\n\t\texpected\t= new Array(),\n\t\tresult = key = type = regex = \"\";\n\tfor ( var i = 0; i < arguments.length; i++ )\n\t{\n\t\ttype\t= pats[arguments[i]];\n\t\tregex\t= new RegExp( type );\n\t\tresult\t+= ( regex.test( this.elem.type ) ) ? \"1\" : \"0\";\n\t\tkey\t\t+= \"0\";\n\t\texpected.push( type );\t\t\n\t}\n\tif ( key ^ result == 0 )\n\t{\n\t\tthis.devError( [this.elem.fName, this.elem.type, expected.join( \"|\" ).replace( /\\|/g, this.i18n.or )], 'mismatch' );\n\t\tthis.elem.validated = false;\n\t\treturn true;\n\t}\n\treturn false;\n}\n\n/*\tReturns value(s) of reference element passed\n------------------------------------------- */\nfValidate.prototype.getValue = function( elem )\n{\n\tswitch ( elem.type )\n\t{\n\t\tcase 'text' :\n\t\tcase 'password' :\n\t\tcase 'textarea' :\n\t\tcase 'hidden' :\n\t\tcase 'file' :\n\t\t\treturn elem.value;\n\t\tcase 'radio':\n\t\tcase 'select-single':\n\t\t\tif ( typeof elem.length == 'undefined' )\n\t\t\t{\n\t\t\t\treturn elem.value;\n\t\t\t} else {\n\t\t\t\tfor ( var i = 0; i < elem.length; i++ )\n\t\t\t\t{\n\t\t\t\t\tchoice = ( elem.type == 'radio' ) ? \"checked\" : \"selected\";\n\t\t\t\t\tif ( elem[i][choice] )\n\t\t\t\t\t{\n\t\t\t\t\t\treturn elem[i].value;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\tcase 'select-multiple' :\n\t\tcase 'checkbox' :\n\t\t\tif ( typeof elem.length == 'undefined' )\n\t\t\t{\n\t\t\t\treturn elem.value\n\t\t\t} else {\n\t\t\t\tvar returnValues = new Array();\n\t\t\t\tfor ( var i = 0; i < elem.length; i++ )\n\t\t\t\t{\n\t\t\t\t\tchoice = ( elem.type == 'checkbox' ) ? \"checked\" : \"selected\";\n\t\t\t\t\tif ( elem[i][choice] )\n\t\t\t\t\t{\n\t\t\t\t\t\treturnValues.push( elem[i].value );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn returnValues;\n\t\t\t}\n\t\tdefault: return null;\n\t}\n}\n\n/*\tGeneric argument setting method\n------------------------------------------- */\nfValidate.prototype.setArg = function( arg, def )\n{\n\treturn ( typeof arg == 'undefined' || arg == '' || arg == null ) ? def : arg;\n}\n\n/*\tBlank checker.  Optional string argument for evaluating element other than current\n------------------------------------------- */\nfValidate.prototype.isBlank = function( el )\n{\n\tvar elem = this.form.elements[el] || this.elem;\n\treturn Boolean( /^\\s*$/.test( elem.value ) );\n}\n\n/*\tTranslates messages using language file\n------------------------------------------- */\nfValidate.prototype.translateMessage = function( args, format )\n{\n\tvar msg\t\t= \"\"\n\tfor ( var i = 0; i < format.length; i++ )\n\t{\t\t\t\n\t\t\tmsg += ( typeof format[i] == 'number' ) ? args[format[i]] : format[i];\n\t}\n\treturn msg;\n}\n\n/*\tThrows developer errors\n------------------------------------------- */\nfValidate.prototype.devError = function( args, which )\n{\n\tif ( typeof args == 'string' )\n\t{\n\t\twhich = args;\n\t\targs = [];\n\t}\n\twhich = this.setArg( which, this.type );\n\tvar format = this.i18n.devErrors[which];\n\tvar a = [\n\t\tthis.i18n.devErrors.lines[0],\n\t\t'----------------------------------------------------------------------------------------------',\n\t\tthis.translateMessage( args, format ),\n\t\t'----------------------------------------------------------------------------------------------',\n\t\tthis.i18n.devErrors.lines[1]\n\t\t];\n\talert( a.join( \"\\n\" ) );\n}\n\n/*\tThrows specific developer error\n------------------------------------------- */\nfValidate.prototype.paramError = function( param, elemName )\n{\n\telemName = this.setArg( elemName, this.elem.name );\n\tthis.devError( [param, this.type, elemName], 'paramError' );\n}\n/* Non-fValidate methods *****************************************/\n\n/*\tFor easy creation of DOM nodes\n------------------------------------------- */\ndocument.createHTMLElement = function( elemName, attribs )\n{\n\tif ( typeof document.createElement == 'undefined' ) return;\n\tvar elem = document.createElement( elemName );\n\tif ( typeof attribs != 'undefined' )\n\t{\n\t\tfor ( var i in attribs )\n\t\t{\n\t\t\tswitch ( true )\n\t\t\t{\n\t\t\t\tcase ( i == 'text' )  : elem.appendChild( document.createTextNode( attribs[i] ) ); break;\n\t\t\t\tcase ( i == 'class' ) : elem.className = attribs[i]; break;\n\t\t\t\tdefault : elem.setAttribute( i, '' ); elem[i] = attribs[i];\n\t\t\t}\n\t\t}\n\t}\n\treturn elem;    \n}\n\n/*\tTrims b items from the beginning of the array, e items from the end\n------------------------------------------- */\nArray.prototype.reduce = function( b, e )\n{\n\tvar a = new Array();\n\tvar count = 0;\n\tfor ( var i = b; i < this.length - e; i++ )\n\t{\n\t\ta[count++] = this[i];\n\t}\n\treturn a;\n}\n\n/*\tReturns array as argument-compatible string\n------------------------------------------- */\nArray.prototype.toArgString = function()\n{\n\tvar a = new Array();\n\tfor ( var i = 0; i < this.length; i++ )\n\t{\n\t\ta.push( \"'\" + this[i] + \"'\" );\n\t}\t\n\treturn a.toString();\n}\n\n/* Prototype push if missing \n------------------------------------------- */ \nif (( typeof Array.push == 'undefined' ) && ( (!Array.prototype) || (typeof Array.prototype.push == 'undefined') )) \n{\n    Array.prototype.push = function() \n    { \n        var arg, i = 0; \n        while( undefined !== (arg = arguments[i++]) ) \n        { \n            this[this.length] = arg; \n        } \n        return this.length; \n    } \n} \n\n/*\tReturns last item of the array\n------------------------------------------- */\nArray.prototype.last = function()\n{\n\treturn this[this.length-1];\n}\n\n/*\tRemoves the follow charaters _[] from an elements name for human-reading\n------------------------------------------- */\nString.prototype.format = function()\n{\n\treturn this.replace( /\\_/g, \" \").replace( /\\[|\\]/g, \"\" );\n}\n\n/*\tReplaces newline characters with XHTML BR tags\n------------------------------------------- */\nString.prototype.toHTML = function()\n{\n\treturn this.replace( /\\n/g, \"<br />\" ).replace( /\\t/g, \"&nbsp;&nbsp;&nbsp;&nbsp;\" );\n}\n\n/*\tTrims leading and trailing whitespace from string\n------------------------------------------- */\nString.prototype.trim = function()\n{\n\treturn this.replace( /^\\s+|\\s+$/, \"\" );\n}\n\n/*\tEscapes necessary charactes for string-generated regular expressions\n------------------------------------------- */\nString.prototype.toPattern = function()\n{\n\treturn this.replace( /([\\.\\*\\+\\{\\}\\(\\)\\<\\>\\^\\$\\\\])/g, \"\\\\$1\" );\n}\n//\tEOF\n"
  },
  {
    "path": "newscoop/js/fValidate/fValidate.datetime.js",
    "content": "/***************************************************\t\n\n\tfValidate\n\tCopyright (c) 2000-2003\n\tby Peter Bailey\n\twww.peterbailey.net/fValidate/\n\n\tfValidate.datetime.js\n\n\tIncluded Validators\n\t-------------------\n\tdate\n\n\tThis file is only part of a larger validation\n\tlibrary\tand will not function autonomously.\n\n\tCreated at a tab-spacing of four (4)\n\n****************************************************/\n\nfValidate.prototype.date = function( formatStr, delim, code, specDate )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tif ( typeof formatStr == 'undefined' )\n\t{\n\t\tthis.paramError( 'formatStr' );\n\t\treturn;\n\t}\n\n\tdelim = this.setArg( delim, \"/\" );\n\n\tvar error\t= [this.elem.fName, formatStr.replace( /\\//g, delim )];\n\tvar format  = formatStr.split( \"/\" );\n\tvar compare = this.elem.value.split( delim );\n\tvar order   = new Object();\n\t\n\tfor ( var i = 0; i < format.length; i++ )\n\t{\n\t\tswitch( format[i].charAt( 0 ).toLowerCase() )\n\t\t{\n\t\t\tcase 'm' :\n\t\t\t\torder.months = i;\n\t\t\t\tbreak;\n\t\t\tcase 'd' :\n\t\t\t\torder.days = i;\n\t\t\t\tbreak;\n\t\t\tcase 'y' :\n\t\t\t\torder.years = i;\n\t\t\t\tbreak;\n\t\t}\n\t}\n\tvar thisDate = new Date( compare[order.years], compare[order.months]-1, compare[order.days] );\n\t\n\tif ( isNaN( thisDate ) || thisDate.getDate() != compare[order.days] || thisDate.getMonth() != compare[order.months]-1 || thisDate.getFullYear().toString().length != formatStr.match( /y/g ).length )\n\t{\n\t\tthis.throwError( error );\n\t\treturn;\n\t}\n\t\n\tvar compareElem = this.form.elements[specDate];\n\tif ( typeof compareElem != 'undefined' )\n\t{\n\t\tspecDate = compareElem.validDate || compareElem.value;\n\t}\n\tvar compareDate = ( specDate == 'today' )?\n\t\tnew Date():\n\t\tnew Date( specDate );\n\tcompareDate.setHours(0);\n\tcompareDate.setMinutes(0);\n\tcompareDate.setSeconds(0);\n\tcompareDate.setMilliseconds(0);\n\t\n\tvar timeDiff = compareDate.getTime() - thisDate.getTime();\n\tvar dateOk   = false;\n\t\n\tswitch ( parseInt( code ) ) {\n\t\tcase 1 :\t// Before specDate\n\t\t\tdateOk\t= Boolean( timeDiff > 0 );\n\t\t\terror\t= 1;\n\t\t\tbreak;\n\t\tcase 2 :\t// Before or on specDate\n\t\t\tdateOk\t= Boolean( ( timeDiff + 86400000 ) > 0 );\n\t\t\terror\t= 2;\n\t\t\tbreak;\n\t\tcase 3 :\t// After specDate\n\t\t\tdateOk\t= Boolean( timeDiff < 0 );\n\t\t\terror\t= 3;\n\t\t\tbreak;\n\t\tcase 4 :\t// After or on specDate\n\t\t\tdateOk\t= Boolean( ( timeDiff - 86400000 ) < 0 );\n\t\t\terror\t= 4;\n\t\t\tbreak;\n\t\tdefault : dateOk = true;\n\t\t}\n\tif ( !dateOk )\n\t{\n\t\tthis.throwError( [specDate], error );\n\t}\n\tthis.elem.validDate = thisDate.toString();\n}\t\n//\tEOF"
  },
  {
    "path": "newscoop/js/fValidate/fValidate.ecommerce.js",
    "content": "/***************************************************\t\n\n\tfValidate\n\tCopyright (c) 2000-2003\n\tby Peter Bailey\n\twww.peterbailey.net/fValidate/\n\n\tfValidate.ecommerce.js\n\n\tIncluded Validators\n\t-------------------\n\tmoney\n\tcc\n\n\tThis file is only part of a larger validation\n\tlibrary\tand will not function autonomously.\n\n\tCreated at a tab-spacing of four (4)\n\n****************************************************/\n\nfValidate.prototype.money = function( ds, grp, dml )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\t\n\tds  = ( ds == ' ' )  ? false : ds.toPattern();\n\tgrp = ( grp == ' ' ) ? false : grp.toPattern();\n\tdml = ( dml == ' ' ) ? false : dml.toPattern();\n\t\n\tvar moneySyntax, pattern;\n\t\n\tswitch( true )\n\t{\n\t\tcase Boolean( ds && grp && dml ):\t\t// Dollar sign, grouping, and decimal\n\t\t\tpattern\t\t= \"^\" + ds + \"(?:(?:[0-9]{1,3}\" + grp + \")(?:[0-9]{3}\" + grp + \")*[0-9]{3}|[0-9]{1,3})(\" + dml + \"[0-9]{2})$\";\n\t\t\tmoneySyntax = ds + \"XX\" + grp + \"XXX\" + dml + \"XX\";\n\t\t\tbreak;\n\t\tcase Boolean( ds && grp && !dml ):\t\t// Dollar sign and grouping\n\t\t\tpattern\t\t= \"^\" + ds + \"(?:(?:[0-9]{1,3}\" + grp + \")(?:[0-9]{3}\" + grp + \")*[0-9]{3}|[0-9]{1,3})$\";\n\t\t\tmoneySyntax = \"\" + ds + \"XX\" + grp + \"XXX\";\n\t\t\tbreak;\n\t\tcase Boolean( ds && !grp && dml ):\t\t// Dollar sign and decimal\n\t\t\tpattern\t\t=\"^\" + ds + \"[0-9]*(\\\\.[0-9]{2})$\";\n\t\t\tmoneySyntax =\"\" + ds + \"XXXXX\" + dml + \"XX\";\n\t\t\tbreak;\n\t\tcase Boolean( !ds && grp && dml ):\t\t// Grouping and decimal\n\t\t\tpattern\t\t=\"^(?:(?:[0-9]{1,3}\" + grp + \")(?:[0-9]{3}\" + grp + \")*[0-9]{3}|[0-9]{1,3})(\" + dml + \"[0-9]{2})?$\";\n\t\t\tmoneySyntax =\"XX\" + grp + \"XXX\" + dml + \"XX\";\n\t\t\tbreak;\n\t\tcase Boolean( ds && !grp && !dml ):\t\t// Dollar sign only\n\t\t\tpattern\t\t=\"^\" + ds + \"[0-9]*$\";\n\t\t\tmoneySyntax =\"\" + ds + \"XXXXX\";\n\t\t\tbreak;\n\t\tcase Boolean( !ds && grp && !dml ):\t\t// Grouping only\n\t\t\tpattern\t\t=\"^(?:(?:[0-9]{1,3}\" + grp + \")(?:[0-9]{3}\" + grp + \")*[0-9]{3}|[0-9]{1,3})$\";\n\t\t\tmoneySyntax =\"XX\" + grp + \"XXX\";\n\t\t\tbreak;\n\t\tcase Boolean( !ds && !grp && dml ):\t\t// Decimal only\n\t\t\tpattern\t\t=\"^[0-9]*(\" + dml + \"[0-9]{2})$\";\n\t\t\tmoneySyntax =\"XXXXX\" + dml + \"XX\";\n\t\t\tbreak;\n\t\tcase Boolean( !ds && !grp && !dml ):\t// No params set, all special chars become optional\n\t\t\tpattern\t\t=\"^.?(?:(?:[0-9]{1,3}.?)(?:[0-9]{3}.?)*[0-9]{3}|[0-9]{1,3})(.[0-9]{2})?$\";\n\t\t\tmoneySyntax =\"[?]XX[?]XXX[?XX]\";\n\t}\n\t\t\t\n\tvar regex = new RegExp( pattern );\n\tif ( !regex.test( this.elem.value ) )\n\t{\n\t\tthis.throwError( [this.elem.fName, moneySyntax.replace( /\\\\/g, '' )] );\n\t}\n}\n\nfValidate.prototype.cc = function()\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tvar typeElem = this.form.elements[this.config.ccType];\n\tif ( !typeElem )\n\t{\n\t\tthis.devError( 'noCCType' )\n\t\treturn;\n\t}\n\tvar ccType   = typeElem.options[typeElem.selectedIndex].value.toUpperCase();\n\tvar types    = {\n\t\t'VISA'    : /^4\\d{12}(\\d{3})?$/,\n\t\t'MC'      : /^5[1-5]\\d{14}$/,\n\t\t'DISC'    : /^6011\\d{12}$/,\n\t\t'AMEX'    : /^3[4|7]\\d{13}$/,        \n\t\t'DINERS'  : /^3[0|6|8]\\d{12}$/,\n\t\t'ENROUTE' : /^2[014|149]\\d{11}$/,\n\t\t'JCB'     : /^3[088|096|112|158|337|528]\\d{12}$/,\n\t\t'SWITCH'  : /^(49030[2-9]|49033[5-9]|49110[1-2]|4911(7[4-9]|8[1-2])|4936[0-9]{2}|564182|6333[0-4][0-9]|6759[0-9]{2})\\d{10}(\\d{2,3})?$/,\n\t\t'DELTA'   : /^4(1373[3-7]|462[0-9]{2}|5397[8|9]|54313|5443[2-5]|54742|567(2[5-9]|3[0-9]|4[0-5])|658[3-7][0-9]|659(0[1-9]|[1-4][0-9]|50)|844[09|10]|909[6-7][0-9]|9218[1|2]|98824)\\d{10}$/,\n\t\t'SOLO'    : /^(6334[5-9][0-9]|6767[0-9]{2})\\d{10}(\\d{2,3})?$/\n\t\t};\n\tif ( typeElem.validated == false && this.groupError == true ) return;\n\tif ( typeof types[ccType] == 'undefined' && typeElem.validated == false && this.groupError == false )\n\t{\n\t\tthis.devError( [ccType] );\n\t\treturn;\n\t}\n\tthis.elem.value = this.elem.value.replace( /[^\\d]/g, \"\" );\n\tif ( !types[ccType].test( this.elem.value ) || !this.elem.value.luhn() )\n\t{\n\t\tthis.throwError( [this.elem.fName] );\n\t}\n}\n\nString.prototype.luhn = function()\n{\n\tvar i = this.length;\n\tvar checkSum = \"\", digit;\n\twhile ( digit = this.charAt( --i ) )\n\t{\n\t\tcheckSum += ( i % 2 == 0 ) ? digit * 2 : digit;\n\t}\n\tcheckSum = eval( checkSum.split('').join('+') );\n\treturn ( checkSum % 10 == 0 );\n}\n//\tEOF"
  },
  {
    "path": "newscoop/js/fValidate/fValidate.extended.js",
    "content": "/***************************************************\t\n\n\tfValidate\n\tCopyright (c) 2000-2003\n\tby Peter Bailey\n\twww.peterbailey.net/fValidate/\n\n\tfValidate.extended.js\n\n\tIncluded Validators\n\t-------------------\n\talnum\n\tssn\n\tzip\n\tphone\n\n\tThis file is only part of a larger validation\n\tlibrary\tand will not function autonomously.\n\n\tCreated at a tab-spacing of four (4)\n\n****************************************************/\n\nfValidate.prototype.alnum = function( minLen, tCase, numbers, spaces, puncs )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\n\ttCase = this.setArg( tCase, \"a\" );\n\t\n\t//alert( [minLen,tCase,numbers,spaces,puncs] );\n\n\tnumbers = ( numbers == \"true\" || numbers == \"1\" );\n\tspaces = ( spaces == \"true\" || spaces == \"1\" );\n\n\t//alert( [minLen,tCase,numbers,spaces,puncs] );\n\t\t\n\tvar okChars = \"\",\n\t\tarrE\t= ['None','Any','No','No','Any'];\n\n\tif ( minLen != '*' )\n\t{\n\t\tminLen =  parseInt( minLen, 10 );\n\t\tarrE[0] = minLen;\n\t} else {\n\t\tminLen = 0;\n\t}\n\n\tswitch( tCase.toUpperCase() )\n\t{\n\t\tcase 'U':\n\t\t\tokChars += 'A-Z';\n\t\t\tarrE[1] =  'UPPER';\n\t\t\tbreak;\n\t\tcase 'L':\n\t\t\tokChars += 'a-z';\n\t\t\tarrE[1] =  'lower';\n\t\t\tbreak;\n\t\tcase 'C':\n\t\t\tokChars += 'A-Z][a-z';\n\t\t\tarrE[1] =  'Intial capital';\n\t\t\tminLen--;\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tokChars += 'a-zA-Z';\n\t\t\tbreak;\t\t\n\t}\n\n\tif ( numbers == true )\n\t{\n\t\tokChars += '0-9';\n\t\tarrE[2] =  'Yes';\n\t}\n\tif ( spaces == true )\n\t{\n\t\tokChars += ' ';\n\t\tarrE[3] =  'Yes';\n\t}\n\tif ( puncs == \"any\" )\n\t{\n\t\tarrE[4]  = \"Any\";\n\t}\n\telse if ( puncs == \"none\" )\n\t{\n\t\tarrE[4] = \"None\";\n\t}\n\telse \n\t{\n\t\tpuncs = puncs.replace( /pipe/g, \"|\" );\n\t\tokChars += puncs;\n\t\tarrE[4] =  puncs; //.toPattern().replace( /\\\\/g, \"\" );\n\t}\n\tvar length = ( minLen != \"*\" )?\n\t\t\"{\" + minLen + \",}\":\n\t\t\"+\";\n\tvar regex = ( puncs == \"any\" ) ?\n\t\tnew RegExp( \"^([\" + okChars + \"]|[^a-zA-Z0-9\\\\s])\" + length + \"$\" ):\n\t\tnew RegExp( \"^[\" + okChars + \"]\" + length + \"$\" );\n\t\n\tif ( !regex.test( this.elem.value ) )\n\t{\n\t\tthis.throwError( [this.elem.value, this.elem.fName, arrE[0], arrE[1], arrE[2], arrE[3], arrE[4]] );\n\t}\n}\n\nfValidate.prototype.ssn = function()\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tif ( !( /^\\d{3}\\-\\d{2}\\-\\d{4}$/.test( this.elem.value ) ) )\n\t\tthis.throwError();\n}\n\nfValidate.prototype.zip = function( sep )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tsep = this.setArg( sep, \"- \" );\n\tvar regex = new RegExp( \"^[0-9]{5}(|[\" + sep.toPattern() + \"][0-9]{4})?$\" );\n\tif ( ! regex.test( this.elem.value ) )\n\t{\n\t\tthis.throwError();\n\t}\n}\n\nfValidate.prototype.phone = function( format )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tformat       = this.setArg( format, 0 );\n\tvar patterns = [\n\t\t/^(\\(?\\d\\d\\d\\)?)?[ -]?\\d\\d\\d[ -]?\\d\\d\\d\\d$/,\t//\tloose\n\t\t/^(\\(\\d\\d\\d\\) )?\\d\\d\\d[ -]\\d\\d\\d\\d$/\t\t\t//\tstrict\n\t\t];\n\tif ( !patterns[format].test( this.elem.value ) )\n\t{\n\t\tif ( format == 1 )\n\t\t{\n\t\t\tthis.throwError();\n\t\t} else {\n\t\t\tthis.throwError( [], 1 );\n\t\t}\n\t}\n}\n//\tEOF"
  },
  {
    "path": "newscoop/js/fValidate/fValidate.international.js",
    "content": "/***************************************************\t\n\n\tfValidate\n\tCopyright (c) 2000-2003\n\tby Peter Bailey\n\twww.peterbailey.net/fValidate/\n\n\tfValidate.international.js\n\n\tIncluded Validators\n\t-------------------\n\tcazip\n\tukpost\n\tgermanpost\n\tswisspost\n\n\tThis file is only part of a larger validation\n\tlibrary\tand will not function autonomously.\n\n\tCreated at a tab-spacing of four (4)\n\n****************************************************/\n\nfValidate.prototype.cazip = function()\n{\n\tvar elem = this.elem;\n\tif ( this.typeMismatch( 'text' ) ) return;\n\telem.value = elem.value.toUpperCase();\n\tif ( !( /^[A-Z][0-9][A-Z] [0-9][A-Z][0-9]$/.test( elem.value ) ) )\n\t{\n\t\tthis.throwError();\n\t}\n}\nfValidate.prototype.capost = fValidate.prototype.cazip;\n\nfValidate.prototype.ukpost = function()\n{\n\tvar elem = this.elem;\n\tif ( this.typeMismatch( 'text' ) ) return;\n\telem.value = elem.value.toUpperCase();\n\tif ( !( /^[A-Z]{1,2}\\d[\\dA-Z] ?\\d[A-Z]{2}$/.test( elem.value ) ) )\n\t{\n\t\tthis.throwError();\n\t}\n}\n\nfValidate.prototype.germanpost = function()\n{\n\tvar elem = this.elem;\n\tif ( this.typeMismatch( 'text' ) ) return;\n\telem.value = elem.value.toUpperCase();\n\tif ( !( /^(?:CH\\-)\\d{4}$/.test( elem.value ) ) )\n\t{\n\t\tthis.throwError();\n\t}\n}\n\nfValidate.prototype.swisspost = function()\n{\n\tvar elem = this.elem;\n\tif ( this.typeMismatch( 'text' ) ) return;\n\telem.value = elem.value.toUpperCase();\n\tif ( !( /^(?:D\\-)\\d{5}$/.test( this.elem.value ) ) )\n\t{\n\t\tthis.throwError();\n\t}\n}\n//\tEOF"
  },
  {
    "path": "newscoop/js/fValidate/fValidate.lang-enUS.js",
    "content": "/*********************************************************\n*\n*--\tfValidate US-English language file.\n*\n*\tTranslation by: Peter Bailey\n*\tEmail: me@peterbailey.net\n*\n*\tVisit http://www.peterbailey.net/fValidate/api/i18n/\n*\tfor additional translations and instructions on\n*\tmaking your own translation.\n*\n*\t!!! WARNING !!! Changing anything but the literal \n*\tstrings will likely cause script failure!\n*\n*\tNote: This document most easily read/edited with tab-\n*\tspacing set to 4\n*\n*********************************************************/\n\nif ( typeof fvalidate == 'undefined' )\n{\n\tvar fvalidate = new Object();\n}\n\nfvalidate.i18n =\n{\n\t//\tValidation errors\n\terrors:\n\t{\n\t\tblank:\t\t[\n\t\t\t[\"Please enter \", 0]\n\t\t\t],\n\t\tlength:\t\t[\n\t\t\t[0, \" must be at least \", 1, \" characters long\"],\n\t\t\t[0, \" must be no more than \", 1, \" characters long.\\nThe current text is \", 2, \" characters long.\"]\n\t\t\t],\n\t\tequalto:\t[\n\t\t\t[0, \" must be equal to \", 1]\n\t\t\t],\n\t\tnumber:\t\t[\n\t\t\t[\"The number you entered for \", 0, \" is not valid\"]\n\t\t\t],\n\t\tnumeric:\t[\n\t\t\t[\"Only numeric values are valid for the \", 0],\n\t\t\t[\"A minimum of \", 0, \" numeric values are required for the \", 1]\n\t\t\t],\n\t\talnum:\t\t[\n\t\t\t[\"The data you entered, \\\"\", 0, \"\\\", does not match the requested format for \", 1,  \n\t\t\t\"\\nMinimum Length: \", 2,\n\t\t\t\"\\nCase: \", 3,\n\t\t\t\"\\nNumbers allowed: \", 4,\n\t\t\t\"\\nSpaces allowed: \", 5,\n\t\t\t\"\\nPunctuation characters allowed: \", 6, \"\\n\"]\n\t\t\t],\n\t\tdecimal:\t[\n\t\t\t[\"The data you entered,\", 0, \" is not valid.  Please re-enter the \", 1]\n\t\t\t],\n\t\tdecimalr:\t[\n\t\t\t[0, \" is not a valid. Please re-enter.\"]\n\t\t\t],\n\t\tip:\t\t\t[\n\t\t\t[\"Please enter a valid IP\"],\n\t\t\t[\"The port number you specified, \", 0, \",  is out of range.\\nIt must be between \", 1, \" and \", 2]\n\t\t\t],\n\t\tssn:\t\t[\n\t\t\t[\"You need to enter a valid Social Security Number.\\nYour SSN must be entered in 'XXX-XX-XXXX' format.\"]\n\t\t\t],\n\t\tmoney:\t\t[\n\t\t\t[0, \" does not match the required format of \", 1]\n\t\t\t],\n\t\tcc:\t\t\t[\n\t\t\t[\"The \", 0, \" you entered is not valid. Please check again and re-enter.\"]\n\t\t\t],\n\t\tccDate:\t\t[\n\t\t\t[\"You credit card has expired! Please use a different card.\"]\n\t\t\t],\n\t\tzip:\t\t[\n\t\t\t[\"Please enter a valid 5 or 9 digit Zip code.\"]\n\t\t\t],\n\t\tphone:\t\t[\n\t\t\t[\"Please enter a valid phone number plus Area Code.\"],\n\t\t\t[\"Please enter a valid phone number - seven or ten digits.\"]\n\t\t\t],\n\t\temail:\t\t[\n\t\t\t[\"Please enter a valid email address\"]\n\t\t\t],\n\t\turl:\t\t[\n\t\t\t[0, \" is not a valid domain\"]\n\t\t\t],\n\t\tdate:\t\t[\n\t\t\t[\"The data entered for \", 0, \" is not a valid date\\nPlease enter a date using the following format: \", 1],\n\t\t\t[\"Date must be before \", 0],\n\t\t\t[\"Date must be on or before \", 0],\n\t\t\t[\"Date must be after \", 0],\n\t\t\t[\"Date must be on or after \", 0]\n\t\t\t],\n\t\tselect:\t\t[\n\t\t\t[\"Please select a valid option for \", 0]\n\t\t\t],\n\t\tselectm:\t[\n\t\t\t[\"Please select between \", 0, \" and \", 1, \" options for \", 2, \".\\nYou currently have \", 3, \" selected\"]\n\t\t\t],\n\t\tselecti:\t[\n\t\t\t[\"Please select a valid option for \", 0]\n\t\t\t],\n\t\tcheckbox:\t[\n\t\t\t[\"Please check \", 0, \" before continuing\"],\n\t\t\t[\"Please select between \", 0, \" and \", 1, \" options for \", 2, \".\\nYou currently have \", 3, \" selected\"]\n\t\t\t],\n\t\tradio:\t\t[\n\t\t\t[\"Please check \", 0, \" before continuing\"],\n\t\t\t[\"Please select an option for \", 0 ]\n\t\t\t],\n\t\tcomparison:\t[\n\t\t\t[0, \" must be \", 1, \" \", 2]\n\t\t\t],\n\t\teitheror:\t[\n\t\t\t[\"One and only one of the following fields must be entered:\\n\\t-\", 0, \"\\n\"]\n\t\t\t],\n\t\tatleast:\t[\n\t\t\t[\"At least \", 0, \" of the following fields must be entered:\\n\\t-\", 1, \"\\n\\nYou have only \", 2, \" filled in.\\n\"]\n\t\t\t],\n\t\tallornone:\t[\n\t\t\t[\"All or none of the following fields must be entered and accurate:\\n\\t-\", 0, \"\\nYou have only \", 1, \" accurate field entered.\\n\"]\n\t\t\t],\n\t\tfile:\t\t[\n\t\t\t[\"The file must be one of the following types:\\n\", 0, \"\\nNote: File extension may be case-sensitive.\"]\n\t\t\t],\n\t\tcustom:\t\t[\n\t\t\t[0, \" is invalid.\"]\n\t\t\t],\n\t\tcazip:\t\t[\n\t\t\t[\"Please enter a valid postal code.\"]\n\t\t\t],\n\t\tukpost:\t\t[\n\t\t\t[\"Please enter a valid postcode.\"]\n\t\t\t],\n\t\tgermanpost:\t[\n\t\t\t[\"Please enter a valid postcode.\"]\n\t\t\t],\n\t\tswisspost:\t[\n\t\t\t[\"Please enter a valid postcode.\"]\n\t\t\t]\n\t},\n\n\tcomparison:\n\t{\n\t\tgt:\t\t\"greater than\",\n\t\tlt:\t\t\"less than\",\n\t\tgte:\t\"greater than or equal to\",\n\t\tlte:\t\"less than or equal to\",\n\t\teq:\t\t\"equal to\",\n\t\tneq:\t\"not equal to\"\n\t},\n\n\t//\tDeveloper assist errors\n\tdevErrors:\n\t{\n\t\tnumber:\t\t[\"The lower-bound (\", 0, \") is greater than the upper-bound (\", 1, \") on this element: \", 2],\n\t\tlength:\t\t[\"The minimum length (\", 0, \") is greater than the maxiumum legnth (\", 1, \") on this element: \", 2],\n\t\tcc:\t\t\t[\"Credit Card type (\", 0, \") not found.\"],\n\n\t\tlines:\t\t[\"! WARNING ! -- fValidate developer-assist error\\n\", \"\\nIf you are not the developer, please contact the website administrator regarding this error.\"],\n\t\tparamError: [\"You must include the '\", 0, \"' parameter for the '\", 1, \"' validator type on this field: \", 2],\n\t\tnotFound:\t[\"The validator '\", 0, \"' was not found.\\nRequested by: \", 1],\n\t\tnoLabel:\t[\"No element found for label: \", 0],\n\t\tnoBox:\t\t[\"An element with the requested id '\", 0, \"' was not found for the 'boxError' config value.\"],\n\t\tmissingName:[\"The hidden input calling the following logical validator must have a valid name\\nattribute when used in conjunction with the 'box' error-type.\\n\\t\", 0],\n\t\tmismatch:\t[\"Validator/Element type mismatch.\\n\\nElement: \", 0, \"\\nElement type: \", 1, \"\\nType required by validator: \", 2],\n\t\tnoCCType:\t[\"You must include a SELECT item with Credit Card type choices!\"]\n\t},\n\n\t//\tConfig values\n\tconfig :\n\t{\n\t\tconfirmMsg :\t\t\"Your data is about to be sent.\\nPlease click 'Ok' to proceed or 'Cancel' to abort.\",\n\t\tconfirmAbortMsg :\t\"Submission cancelled.  Data has not been sent.\"\n\t},\n\n\t//\tTooltip attached to Box-item errors\n\tboxToolTip:\t\"Click to target field\",\n\n\t//\tMessage displayed at top of alert error in group mode\n\tgroupAlert:\t\"The following errors occurred:\\n\\n- \",\n\n\t//\tLiteral translation of the English 'or', include padding spaces.\n\tor:\t\t\t\" or \"\n}"
  },
  {
    "path": "newscoop/js/fValidate/fValidate.logical.js",
    "content": "/***************************************************\t\n\n\tfValidate\n\tCopyright (c) 2000-2003\n\tby Peter Bailey\n\twww.peterbailey.net/fValidate/\n\n\tfValidate.logical.js\n\n\tIncluded Validators\n\t-------------------\n\tequalto\n\teitheror\n\tatleast\n\tallornone\n\tcomparison\n\n\tThis file is only part of a larger validation\n\tlibrary\tand will not function autonomously.\n\n\tCreated at a tab-spacing of four (4)\n\n****************************************************/\n\nfValidate.prototype.equalto = function( oName )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tif ( typeof oName == 'undefined' )\n\t{\n\t\tthis.paramError( 'oName' );\n\t}\n\tvar otherElem = this.form.elements[oName];\n\tif ( this.elem.value != otherElem.value )\n\t{\n\t\tthis.throwError( [this.elem.fName,otherElem.fName] );\t\t\t\n\t}\n}\n\nfValidate.prototype.eitheror = function()\n{\n\tif ( this.typeMismatch( 'hidden' ) ) return;\n\tif ( typeof arguments[0] == 'undefined' )\n\t{\n\t\tthis.paramError( 'delim' );\n\t\treturn;\n\t}\n\tif ( typeof arguments[1] == 'undefined' )\n\t{\n\t\tthis.paramError( 'fields' );\n\t\treturn;\n\t}\n\tvar arg, i  = 0,\n\t\tfields  = new Array(),\n\t\tfield,\n\t\tnbCount = 0,\t\t\n\t\targs    = arguments[1].split( arguments[0] );\t\t\n\n\tthis.elem.fields = new Array();\n\t\n\twhile ( arg = args[i++] )\n\t{\n\t\tfield = this.form.elements[arg];\n\t\tfields.push( field.fName );\n\t\tthis.elem.fields.push( field );\n\n\t\tif ( !this.isBlank( arg ) )\n\t\t{\n\t\t\tnbCount++;\n\t\t}\n\t}\n\tif ( nbCount != 1 )\n\t{\n\t\tthis.throwError( [fields.join( \"\\n\\t-\" )] );\n\t}\n}\n\nfValidate.prototype.atleast = function()\n{\n\tif ( this.typeMismatch( 'hidden' ) ) return;\n\tif ( typeof arguments[0] == undefined )\n\t{\n\t\tthis.paramError( 'qty' );\n\t\treturn;\n\t}\n\tif ( typeof arguments[1] == undefined )\n\t{\n\t\tthis.paramError( 'delim' );\n\t\treturn;\n\t}\n\tif ( typeof arguments[2] == undefined )\n\t{\n\t\tthis.paramError( 'fields' );\n\t\treturn;\n\t}\n\tvar arg, i  = 0,\n\t\tfields  = new Array(),\n\t\tfield,\n\t\tnbCount = 0,\n\t\targs    = arguments[2].split( arguments[1] );\n\n\tthis.elem.fields = new Array();\n\t\n\twhile ( arg = args[i++] )\n\t{\n\t\tfield = this.form.elements[arg];\n\t\tfields.push( field.fName );\n\t\tthis.elem.fields.push( field );\n\n\t\tif ( !this.isBlank( arg ) )\n\t\t{\n\t\t\tnbCount++;\n\t\t}\n\t}\n\tif ( nbCount < arguments[0] )\n\t{\n\t\tthis.throwError( [arguments[0], fields.join( \"\\n\\t-\" ), nbCount] );\n\t}\n}\n\nfValidate.prototype.allornone = function()\n{\n\tif ( this.typeMismatch( 'hidden' ) ) return;\n\tif ( typeof arguments[0] == 'undefined' )\n\t{\n\t\tthis.paramError( 'delim' );\n\t\treturn;\n\t}\n\tif ( typeof arguments[1] == 'undefined' )\n\t{\n\t\tthis.paramError( 'fields' );\n\t\treturn;\n\t}\n\tvar arg, i  = 0,\n\t\tfields  = new Array(),\n\t\tfield,\n\t\tnbCount = 0,\n\t\targs    = arguments[1].split( arguments[0] );\n\t\n\tthis.elem.fields = new Array();\n\n\twhile ( arg = args[i++] )\n\t{\n\t\tfield = this.form.elements[arg];\n\t\tfields.push( field.fName );\n\t\tthis.elem.fields.push( field );\n\n\t\tif ( !this.isBlank( arg ) )\n\t\t{\n\t\t\tnbCount++;\n\t\t}\n\t}\n\tif ( nbCount > 0 && nbCount < args.length )\n\t{\n\t\tthis.throwError( [fields.join( \"\\n\\t-\" ), nbCount] );\n\t}\n}\n\nfValidate.prototype.comparison = function( field1, operator, field2 )\n{\n\tif ( this.typeMismatch( 'hidden' ) ) return;\n\tvar elem1\t= this.form.elements[field1],\n\t\telem2\t= this.form.elements[field2],\n\t\tvalue1\t= this.getValue( elem1 ),\n\t\tvalue2\t= this.getValue( elem2 );\n\t\ti18n\t= this.i18n.comparison;\n\t\ti\t\t= -1;\n\t\n\tvar operators =\n\t[\n\t\t['>',\ti18n.gt],\n\t\t['<',\ti18n.lt],\n\t\t['>=',\ti18n.gte],\n\t\t['<=',\ti18n.lte],\n\t\t['==',\ti18n.eq],\n\t\t['!=',\ti18n.neq]\n\t];\n\twhile( operators[++i][0] != operator ){ }\n\tthis.elem.fields = [elem1, elem2];\n\tif ( ! eval( value1 + operator + value2 ) )\n\t{\n\t\tthis.throwError( [elem1.fName, operators[i][1], elem2.fName] );\n\t}\n}\n//\tEOF"
  },
  {
    "path": "newscoop/js/fValidate/fValidate.numbers.js",
    "content": "/***************************************************\n\n\tfValidate\n\tCopyright (c) 2000-2003\n\tby Peter Bailey\n\twww.peterbailey.net/fValidate/\n\n\tfValidate.numbers.js\n\n\tIncluded Validators\n\t-------------------\n\tnumber\n\tnumeric\n\tdecimal\n\tdecimalr\n\n\tThis file is only part of a larger validation\n\tlibrary\tand will not function autonomously.\n\n\tCreated at a tab-spacing of four (4)\n\n****************************************************/\n\nfValidate.prototype.number = function( type, lb, ub )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tvar num  = ( type == 0 ) ? parseInt( this.elem.value, 10 ) : parseFloat( this.elem.value );\n\tlb       = this.setArg( lb, false );\n\tub       = this.setArg( ub, false );\n\tvar fail = Boolean( isNaN( num ) || num != this.elem.value );\n\tif ( !fail )\n\t{\n\t\tswitch( true )\n\t\t{\n\t\t\tcase ( lb !== false && ub !== false ) :\n                            if ( lb > ub )\n                            {\n                                    this.devError( [lb, ub, this.elem.name] );\n                                    return;\n                            }\n                            fail = !Boolean( lb <= num && num <= ub );\n                        break;\n\t\t\tcase ( lb !== false ) :\n                            fail = Boolean( num < lb );\n                        break;\n\t\t\tcase ( ub !== false ) :\n                            fail = Boolean( num > ub );\n                       break;\n\t\t}\n\t}\n\tif ( fail )\n\t{\n\t\tthis.throwError( [this.elem.fName] );\n\t\treturn;\n\t}\n\tthis.elemPass = true;\n}\n\nfValidate.prototype.numeric = function( len )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tlen = this.setArg( len, '*' );\n\tvar regex = new RegExp( ( len == '*' ) ? \"^\\\\d+$\" : \"^\\\\d{\" + parseInt( len, 10 ) + \"}\\\\d*$\" );\n\tif ( !regex.test( this.elem.value ) )\n\t{\n\t\tif ( len == \"*\" )\n\t\t{\n\t\t\tthis.throwError( [this.elem.fName] );\n\t\t} else {\n\t\t\tthis.throwError( [len, this.elem.fName], 1 );\n\t\t}\n\t}\n}\n\nfValidate.prototype.decimal = function( lval, rval )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tvar regex = '', elem = this.elem;\n\tif ( lval != '*' ) lval = parseInt( lval, 10 );\n\tif ( rval != '*' ) rval = parseInt( rval, 10 );\n\n\tif ( lval == 0 )\n\t\tregex = \"^\\\\.[0-9]{\" + rval + \"}$\";\n\telse if ( lval == '*' )\n\t\tregex = \"^[0-9]*\\\\.[0-9]{\" + rval + \"}$\";\n\telse if ( rval == '*' )\n\t\tregex = \"^[0-9]{\" + lval + \"}\\\\.[0-9]+$\";\n\telse\n\t\tregex = \"^[0-9]{\" + lval + \"}\\\\.[0-9]{\" + rval + \"}$\";\n\n\tregex = new RegExp( regex );\n\n\tif ( !regex.test( elem.value ) )\n\t{\n\t\tthis.throwError( [elem.value,elem.fName] );\n\t}\n}\n\nfValidate.prototype.decimalr = function( lmin, lmax, rmin, rmax )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tlmin = ( lmin == '*' )? 0 : parseInt( lmin, 10 );\n\tlmax = ( lmax == '*' )? '': parseInt( lmax, 10 );\n\trmin = ( rmin == '*' )? 0 : parseInt( rmin, 10 );\n\trmax = ( rmax == '*' )? '': parseInt( rmax, 10 );\n\tvar\tdecReg = \"^[0-9]{\"+lmin+\",\"+lmax+\"}\\\\.[0-9]{\"+rmin+\",\"+rmax+\"}$\"\n\tvar regex = new RegExp(decReg);\n\tif ( !regex.test( this.elem.value ) )\n\t{\n\t\tthis.throwError( [this.elem.fName] );\n\t}\n\treturn true;\n}\n//\tEOF"
  },
  {
    "path": "newscoop/js/fValidate/fValidate.special.js",
    "content": "/***************************************************\t\n\n\tfValidate\n\tCopyright (c) 2000-2003\n\tby Peter Bailey\n\twww.peterbailey.net/fValidate/\n\n\tfValidate.special.js\n\n\tIncluded Validators\n\t-------------------\n\tcustom\n\n\tThis file is only part of a larger validation\n\tlibrary\tand will not function autonomously.\n\n\tCreated at a tab-spacing of four (4)\n\n****************************************************/\n\nfValidate.prototype.custom = function( flags, reverseTest )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tflags     = ( flags ) ? flags.replace( /[^gim]/ig ) : \"\";\n\tvar regex = new RegExp( this.elem.getAttribute( this.config.pattern ), flags );\n\tif ( !regex.test( this.elem.value ) )\n\t{\n\t\tthis.throwError( [this.elem.fName] );\n\t}\t\n}\n//\tEOF"
  },
  {
    "path": "newscoop/js/fValidate/fValidate.validators.js",
    "content": "/*< blank basic *******************************************************************/\nfValidate.prototype.blank = function()\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tif ( this.isBlank() )\n\t{\n\t\tthis.throwError( [this.elem.fName] );\n\t}\n}\n/*/>*/\n/*< number numbers *******************************************************************/\nfValidate.prototype.number = function( type, lb, ub )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tvar num  = ( type == 0 ) ? parseInt( this.elem.value, 10 ) : parseFloat( this.elem.value );\n\tlb       = this.setArg( lb, false );\n\tub       = this.setArg( ub, false );\n\tvar fail = Boolean( isNaN( num ) || num != this.elem.value );\n\tif ( !fail )\n\t{\n\t\tswitch( true )\n\t\t{\n\t\t\tcase ( lb !== false && ub !== false ) :\n                            if ( lb > ub )\n                            {\n                                    this.devError( [lb, ub, this.elem.name] );\n                                    return;\n                            }\n                            fail = !Boolean( lb <= num && num <= ub );\n                        break;\n\t\t\tcase ( lb !== false ) :\n                            fail = Boolean( num < lb );\n                        break;\n\t\t\tcase ( ub !== false ) :\n                            fail = Boolean( num > ub );\n                       break;\n\t\t}\n\t}\n\tif ( fail )\n\t{\n\t\tthis.throwError( [this.elem.fName] );\n\t\treturn;\n\t}\n\tthis.elemPass = true;\n}\n/*/>*/\n/*< numeric numbers *******************************************************************/\nfValidate.prototype.numeric = function( len )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tlen = this.setArg( len, '*' );\n\tvar regex = new RegExp( ( len == '*' ) ? \"^\\\\d+$\" : \"^\\\\d{\" + parseInt( len, 10 ) + \"}\\\\d*$\" );\n\tif ( !regex.test( this.elem.value ) )\n\t{\n\t\tif ( len == \"*\" )\n\t\t{\n\t\t\tthis.throwError( [this.elem.fName] );\n\t\t} else {\n\t\t\tthis.throwError( [len, this.elem.fName], 1 );\n\t\t}\n\t}\n}\n/*/>*/\n/*< length basic *******************************************************************/\nfValidate.prototype.length = function( len, maxLen )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tvar vlen = this.elem.value.length;\n\tlen\t\t= Math.abs( len );\n\tmaxLen\t= Math.abs( this.setArg( maxLen, Number.infinity ) );\n\tif ( len > maxLen )\n\t{\n\t\tthis.devError( [len, maxLen, this.elem.name] );\n\t\treturn;\n\t}\n\tif ( len > parseInt( vlen, 10 ) )\n\t{\n\t\tthis.throwError( [this.elem.fName, len] );\n\t}\n\tif ( vlen > maxLen )\n\t{\n\t\tthis.throwError( [this.elem.fName, maxLen, vlen], 1 );\n\t}\n}\n/*/>*/\n/*< alnum extended *******************************************************************/\nfValidate.prototype.alnum = function( minLen, tCase, numbers, spaces, puncs )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\n\ttCase = this.setArg( tCase, \"a\" );\n\n\t//alert( [minLen,tCase,numbers,spaces,puncs] );\n\n\tnumbers = ( numbers == \"true\" || numbers == \"1\" );\n\tspaces = ( spaces == \"true\" || spaces == \"1\" );\n\n\t//alert( [minLen,tCase,numbers,spaces,puncs] );\n\n\tvar okChars = \"\",\n\t\tarrE\t= ['None','Any','No','No','Any'];\n\n\tif ( minLen != '*' )\n\t{\n\t\tminLen =  parseInt( minLen, 10 );\n\t\tarrE[0] = minLen;\n\t} else {\n\t\tminLen = 0;\n\t}\n\n\tswitch( tCase.toUpperCase() )\n\t{\n\t\tcase 'U':\n\t\t\tokChars += 'A-Z';\n\t\t\tarrE[1] =  'UPPER';\n\t\t\tbreak;\n\t\tcase 'L':\n\t\t\tokChars += 'a-z';\n\t\t\tarrE[1] =  'lower';\n\t\t\tbreak;\n\t\tcase 'C':\n\t\t\tokChars += 'A-Z][a-z';\n\t\t\tarrE[1] =  'Intial capital';\n\t\t\tminLen--;\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tokChars += 'a-zA-Z';\n\t\t\tbreak;\n\t}\n\n\tif ( numbers == true )\n\t{\n\t\tokChars += '0-9';\n\t\tarrE[2] =  'Yes';\n\t}\n\tif ( spaces == true )\n\t{\n\t\tokChars += ' ';\n\t\tarrE[3] =  'Yes';\n\t}\n\tif ( puncs == \"any\" )\n\t{\n\t\tarrE[4]  = \"Any\";\n\t}\n\telse if ( puncs == \"none\" )\n\t{\n\t\tarrE[4] = \"None\";\n\t}\n\telse\n\t{\n\t\tpuncs = puncs.replace( /pipe/g, \"|\" );\n\t\tokChars += puncs;\n\t\tarrE[4] =  puncs; //.toPattern().replace( /\\\\/g, \"\" );\n\t}\n\tvar length = ( minLen != \"*\" )?\n\t\t\"{\" + minLen + \",}\":\n\t\t\"+\";\n\tvar regex = ( puncs == \"any\" ) ?\n\t\tnew RegExp( \"^([\" + okChars + \"]|[^a-zA-Z0-9\\\\s])\" + length + \"$\" ):\n\t\tnew RegExp( \"^[\" + okChars + \"]\" + length + \"$\" );\n\n\tif ( !regex.test( this.elem.value ) )\n\t{\n\t\tthis.throwError( [this.elem.value, this.elem.fName, arrE[0], arrE[1], arrE[2], arrE[3], arrE[4]] );\n\t}\n}\n/*/>*/\n/*< equalto logical *******************************************************************/\nfValidate.prototype.equalto = function( oName )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tif ( typeof oName == 'undefined' )\n\t{\n\t\tthis.paramError( 'oName' );\n\t}\n\tvar otherElem = this.form.elements[oName];\n\tif ( this.elem.value != otherElem.value )\n\t{\n\t\tthis.throwError( [this.elem.fName,otherElem.fName] );\n\t}\n}\n/*/>*/\n/*< ssn extended *******************************************************************/\nfValidate.prototype.ssn = function()\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tif ( !( /^\\d{3}\\-\\d{2}\\-\\d{4}$/.test( this.elem.value ) ) )\n\t\tthis.throwError();\n}\n/*/>*/\n/*< select controls *******************************************************************/\nfValidate.prototype.select = function()\n{\n\tif ( this.typeMismatch( 's1' ) ) return;\n\tif ( this.elem.selectedIndex == 0 )\n\t{\n\t\tthis.throwError( [this.elem.fName] );\n\t}\n}\n/*/>*/\n/*< selectm controls *******************************************************************/\nfValidate.prototype.selectm = function( minS, maxS )\n{\n\tif ( this.typeMismatch( 'sm' ) ) return;\n\tif ( typeof minS == 'undefined' )\n\t{\n\t\tthis.paramError( 'minS' );\n\t}\n\tif ( maxS == 999 || maxS == '*' || typeof maxS == 'undefined' || maxS > this.elem.length ) maxS = this.elem.length;\n\n\tvar count = 0;\n\tfor ( var opt, i = 0; ( opt = this.elem.options[i] ); i++ )\n\t{\n\t\tif ( opt.selected ) count++;\n\t}\n\n\tif ( count < minS || count > maxS )\n\t{\n\t\tthis.throwError( [minS, maxS, this.elem.fName, count] );\n\t}\n}\n/*/>*/\n/*< selecti controls *******************************************************************/\nfValidate.prototype.selecti = function( indexes )\n{\n\n\tif ( this.typeMismatch( 's1' ) ) return;\n\tif ( typeof indexes == 'undefined' )\n\t{\n\t\tthis.paramError( 'indexes' );\n\t\treturn;\n\t}\n\tindexes = indexes.split( \",\" );\n\tvar selectOK = true;\n\n\tfor ( var i = 0; i < indexes.length; i++ )\n\t{\n\t\tif ( this.elem.options[indexes[i]].selected )\n\t\t{\n\t\t\tselectOK = false;\n\t\t\tbreak;\n\t\t}\n\t}\n\tif ( !selectOK )\n\t{\n\t\tthis.throwError( [this.elem.fName] );\n\t}\n}\n/*/>*/\n/*< cazip international *******************************************************************/\nfValidate.prototype.cazip = function()\n{\n\tvar elem = this.elem;\n\tif ( this.typeMismatch( 'text' ) ) return;\n\telem.value = elem.value.toUpperCase();\n\tif ( !( /^[A-Z][0-9][A-Z] [0-9][A-Z][0-9]$/.test( elem.value ) ) )\n\t{\n\t\tthis.throwError();\n\t}\n}\nfValidate.prototype.capost = fValidate.prototype.cazip;\n/*/>*/\n/*< ukpost international *******************************************************************/\nfValidate.prototype.ukpost = function()\n{\n\tvar elem = this.elem;\n\tif ( this.typeMismatch( 'text' ) ) return;\n\telem.value = elem.value.toUpperCase();\n\tif ( !( /^[A-Z]{1,2}\\d[\\dA-Z] ?\\d[A-Z]{2}$/.test( elem.value ) ) )\n\t{\n\t\tthis.throwError();\n\t}\n}\n/*/>*/\n/*< germanpost international *******************************************************************/\nfValidate.prototype.germanpost = function()\n{\n\tvar elem = this.elem;\n\tif ( this.typeMismatch( 'text' ) ) return;\n\telem.value = elem.value.toUpperCase();\n\tif ( !( /^(?:CH\\-)\\d{4}$/.test( elem.value ) ) )\n\t{\n\t\tthis.throwError();\n\t}\n}\n/*/>*/\n/*< swisspost international *******************************************************************/\nfValidate.prototype.swisspost = function()\n{\n\tvar elem = this.elem;\n\tif ( this.typeMismatch( 'text' ) ) return;\n\telem.value = elem.value.toUpperCase();\n\tif ( !( /^(?:D\\-)\\d{5}$/.test( this.elem.value ) ) )\n\t{\n\t\tthis.throwError();\n\t}\n}\n/*/>*/\n/*< email web *******************************************************************/\nfValidate.prototype.email = function( level )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tif ( typeof level == 'undefined' ) level = 0;\n\tvar emailPatterns = [\n\t\t/.+@.+\\..+$/i,\n\t\t/^\\w.+@\\w.+\\.[a-z]+$/i,\n\t\t/^\\w[-_a-z~.]+@\\w[-_a-z~.]+\\.[a-z]{2}[a-z]*$/i,\n\t\t/^\\w[\\w\\d]+(\\.[\\w\\d]+)*@\\w[\\w\\d]+(\\.[\\w\\d]+)*\\.[a-z]{2,7}$/i\n\t\t];\n\tif ( ! emailPatterns[level].test( this.elem.value ) )\n\t{\n\t\tthis.throwError();\n\t}\n}\n/*/>*/\n/*< url web *******************************************************************/\nfValidate.prototype.url = function( hosts, hostOptional, allowQS )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\n\tthis.setArg( hosts, \"http\" );\n\n\tvar front = \"^(?:(\" + hosts.replace( /\\,/g, \"|\" ) + \")\\\\:\\\\/\\\\/)\";\n\tvar end   = ( Boolean( allowQS ) == true ) ? \"(\\\\?.*)?$\" : \"$\";\n\n\tif ( Boolean( hostOptional ) == true ) front += \"?\";\n\tvar regex = new RegExp( front + \"([\\\\w\\\\d-]+\\\\.?)+\" + end );\n\n\tif ( !regex.test( this.elem.value ) )\n\t{\n\t\tthis.throwError( [this.elem.fName] );\n\t}\n}\n/*/>*/\n/*< ip web *******************************************************************/\nfValidate.prototype.ip = function( portMin, portMax )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tportMin = this.setArg( portMin, 0 );\n\tportMax = this.setArg( portMax, 99999 );\n\tif ( !( /^\\d{1,3}(\\.\\d{1,3}){3}(:\\d+)?$/.test( this.elem.value ) ) )\n\t{\n\t\tthis.throwError();\n\t}\n\telse\n\t{\n\t\tvar part, i = 0, parts = this.elem.value.split( /[.:]/ );\n\t\twhile ( part = parts[i++] )\n\t\t{\n\t\t\tif ( i == 5 ) // Check port\n\t\t\t{\n\t\t\t\tif ( part < portMin || part > portMax )\n\t\t\t\t{\n\t\t\t\t\tthis.throwError( [part, portMin, portMax], 1 );\n\t\t\t\t}\n\t\t\t}\n\t\t\telse if ( part < 0 || part > 255 )\n\t\t\t{\n\t\t\t\tthis.throwError();\n\t\t\t}\n\t\t}\n\t}\n}\n/*/>*/\n/*< decimal numbers *******************************************************************/\nfValidate.prototype.decimal = function( lval, rval )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tvar regex = '', elem = this.elem;\n\tif ( lval != '*' ) lval = parseInt( lval, 10 );\n\tif ( rval != '*' ) rval = parseInt( rval, 10 );\n\n\tif ( lval == 0 )\n\t\tregex = \"^\\\\.[0-9]{\" + rval + \"}$\";\n\telse if ( lval == '*' )\n\t\tregex = \"^[0-9]*\\\\.[0-9]{\" + rval + \"}$\";\n\telse if ( rval == '*' )\n\t\tregex = \"^[0-9]{\" + lval + \"}\\\\.[0-9]+$\";\n\telse\n\t\tregex = \"^[0-9]{\" + lval + \"}\\\\.[0-9]{\" + rval + \"}$\";\n\n\tregex = new RegExp( regex );\n\n\tif ( !regex.test( elem.value ) )\n\t{\n\t\tthis.throwError( [elem.value,elem.fName] );\n\t}\n}\n/*/>*/\n/*< decimalr numbers *******************************************************************/\nfValidate.prototype.decimalr = function( lmin, lmax, rmin, rmax )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tlmin = ( lmin == '*' )? 0 : parseInt( lmin, 10 );\n\tlmax = ( lmax == '*' )? '': parseInt( lmax, 10 );\n\trmin = ( rmin == '*' )? 0 : parseInt( rmin, 10 );\n\trmax = ( rmax == '*' )? '': parseInt( rmax, 10 );\n\tvar\tdecReg = \"^[0-9]{\"+lmin+\",\"+lmax+\"}\\\\.[0-9]{\"+rmin+\",\"+rmax+\"}$\"\n\tvar regex = new RegExp(decReg);\n\tif ( !regex.test( this.elem.value ) )\n\t{\n\t\tthis.throwError( [this.elem.fName] );\n\t}\n\treturn true;\n}\n/*/>*/\n/*< zip extended *******************************************************************/\nfValidate.prototype.zip = function( sep )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tsep = this.setArg( sep, \"- \" );\n\tvar regex = new RegExp( \"^[0-9]{5}(|[\" + sep.toPattern() + \"][0-9]{4})?$\" );\n\tif ( ! regex.test( this.elem.value ) )\n\t{\n\t\tthis.throwError();\n\t}\n}\n/*/>*/\n/*< phone extended *******************************************************************/\nfValidate.prototype.phone = function( format )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tformat       = this.setArg( format, 0 );\n\tvar patterns = [\n\t\t/^(\\(?\\d\\d\\d\\)?)?[ -]?\\d\\d\\d[ -]?\\d\\d\\d\\d$/,\t//\tloose\n\t\t/^(\\(\\d\\d\\d\\) )?\\d\\d\\d[ -]\\d\\d\\d\\d$/\t\t\t//\tstrict\n\t\t];\n\tif ( !patterns[format].test( this.elem.value ) )\n\t{\n\t\tif ( format == 1 )\n\t\t{\n\t\t\tthis.throwError();\n\t\t} else {\n\t\t\tthis.throwError( [], 1 );\n\t\t}\n\t}\n}\n/*/>*/\n/*< date datetime *******************************************************************/\nfValidate.prototype.date = function( formatStr, delim, code, specDate )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tif ( typeof formatStr == 'undefined' )\n\t{\n\t\tthis.paramError( 'formatStr' );\n\t\treturn;\n\t}\n\n\tdelim = this.setArg( delim, \"/\" );\n\n\tvar error\t= [this.elem.fName, formatStr.replace( /\\//g, delim )];\n\tvar format  = formatStr.split( \"/\" );\n\tvar compare = this.elem.value.split( delim );\n\tvar order   = new Object();\n\n\tfor ( var i = 0; i < format.length; i++ )\n\t{\n\t\tswitch( format[i].charAt( 0 ).toLowerCase() )\n\t\t{\n\t\t\tcase 'm' :\n\t\t\t\torder.months = i;\n\t\t\t\tbreak;\n\t\t\tcase 'd' :\n\t\t\t\torder.days = i;\n\t\t\t\tbreak;\n\t\t\tcase 'y' :\n\t\t\t\torder.years = i;\n\t\t\t\tbreak;\n\t\t}\n\t}\n\tvar thisDate = new Date( compare[order.years], compare[order.months]-1, compare[order.days] );\n\n\tif ( isNaN( thisDate ) || thisDate.getDate() != compare[order.days] || thisDate.getMonth() != compare[order.months]-1 || thisDate.getFullYear().toString().length != formatStr.match( /y/g ).length )\n\t{\n\t\tthis.throwError( error );\n\t\treturn;\n\t}\n\n\tvar compareElem = this.form.elements[specDate];\n\tif ( typeof compareElem != 'undefined' )\n\t{\n\t\tspecDate = compareElem.validDate || compareElem.value;\n\t}\n\tvar compareDate = ( specDate == 'today' )?\n\t\tnew Date():\n\t\tnew Date( specDate );\n\tcompareDate.setHours(0);\n\tcompareDate.setMinutes(0);\n\tcompareDate.setSeconds(0);\n\tcompareDate.setMilliseconds(0);\n\n\tvar timeDiff = compareDate.getTime() - thisDate.getTime();\n\tvar dateOk   = false;\n\n\tswitch ( parseInt( code ) ) {\n\t\tcase 1 :\t// Before specDate\n\t\t\tdateOk\t= Boolean( timeDiff > 0 );\n\t\t\terror\t= 1;\n\t\t\tbreak;\n\t\tcase 2 :\t// Before or on specDate\n\t\t\tdateOk\t= Boolean( ( timeDiff + 86400000 ) > 0 );\n\t\t\terror\t= 2;\n\t\t\tbreak;\n\t\tcase 3 :\t// After specDate\n\t\t\tdateOk\t= Boolean( timeDiff < 0 );\n\t\t\terror\t= 3;\n\t\t\tbreak;\n\t\tcase 4 :\t// After or on specDate\n\t\t\tdateOk\t= Boolean( ( timeDiff - 86400000 ) < 0 );\n\t\t\terror\t= 4;\n\t\t\tbreak;\n\t\tdefault : dateOk = true;\n\t\t}\n\tif ( !dateOk )\n\t{\n\t\tthis.throwError( [specDate], error );\n\t}\n\tthis.elem.validDate = thisDate.toString();\n}\n/*/>*/\n/*< money ecommerce *******************************************************************/\nfValidate.prototype.money = function( ds, grp, dml )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\n\tds  = ( ds == ' ' )  ? false : ds.toPattern();\n\tgrp = ( grp == ' ' ) ? false : grp.toPattern();\n\tdml = ( dml == ' ' ) ? false : dml.toPattern();\n\n\tvar moneySyntax, pattern;\n\n\tswitch( true )\n\t{\n\t\tcase Boolean( ds && grp && dml ):\t\t// Dollar sign, grouping, and decimal\n\t\t\tpattern\t\t= \"^\" + ds + \"(?:(?:[0-9]{1,3}\" + grp + \")(?:[0-9]{3}\" + grp + \")*[0-9]{3}|[0-9]{1,3})(\" + dml + \"[0-9]{2})$\";\n\t\t\tmoneySyntax = ds + \"XX\" + grp + \"XXX\" + dml + \"XX\";\n\t\t\tbreak;\n\t\tcase Boolean( ds && grp && !dml ):\t\t// Dollar sign and grouping\n\t\t\tpattern\t\t= \"^\" + ds + \"(?:(?:[0-9]{1,3}\" + grp + \")(?:[0-9]{3}\" + grp + \")*[0-9]{3}|[0-9]{1,3})$\";\n\t\t\tmoneySyntax = \"\" + ds + \"XX\" + grp + \"XXX\";\n\t\t\tbreak;\n\t\tcase Boolean( ds && !grp && dml ):\t\t// Dollar sign and decimal\n\t\t\tpattern\t\t=\"^\" + ds + \"[0-9]*(\\\\.[0-9]{2})$\";\n\t\t\tmoneySyntax =\"\" + ds + \"XXXXX\" + dml + \"XX\";\n\t\t\tbreak;\n\t\tcase Boolean( !ds && grp && dml ):\t\t// Grouping and decimal\n\t\t\tpattern\t\t=\"^(?:(?:[0-9]{1,3}\" + grp + \")(?:[0-9]{3}\" + grp + \")*[0-9]{3}|[0-9]{1,3})(\" + dml + \"[0-9]{2})?$\";\n\t\t\tmoneySyntax =\"XX\" + grp + \"XXX\" + dml + \"XX\";\n\t\t\tbreak;\n\t\tcase Boolean( ds && !grp && !dml ):\t\t// Dollar sign only\n\t\t\tpattern\t\t=\"^\" + ds + \"[0-9]*$\";\n\t\t\tmoneySyntax =\"\" + ds + \"XXXXX\";\n\t\t\tbreak;\n\t\tcase Boolean( !ds && grp && !dml ):\t\t// Grouping only\n\t\t\tpattern\t\t=\"^(?:(?:[0-9]{1,3}\" + grp + \")(?:[0-9]{3}\" + grp + \")*[0-9]{3}|[0-9]{1,3})$\";\n\t\t\tmoneySyntax =\"XX\" + grp + \"XXX\";\n\t\t\tbreak;\n\t\tcase Boolean( !ds && !grp && dml ):\t\t// Decimal only\n\t\t\tpattern\t\t=\"^[0-9]*(\" + dml + \"[0-9]{2})$\";\n\t\t\tmoneySyntax =\"XXXXX\" + dml + \"XX\";\n\t\t\tbreak;\n\t\tcase Boolean( !ds && !grp && !dml ):\t// No params set, all special chars become optional\n\t\t\tpattern\t\t=\"^.?(?:(?:[0-9]{1,3}.?)(?:[0-9]{3}.?)*[0-9]{3}|[0-9]{1,3})(.[0-9]{2})?$\";\n\t\t\tmoneySyntax =\"[?]XX[?]XXX[?XX]\";\n\t}\n\n\tvar regex = new RegExp( pattern );\n\tif ( !regex.test( this.elem.value ) )\n\t{\n\t\tthis.throwError( [this.elem.fName, moneySyntax.replace( /\\\\/g, '' )] );\n\t}\n}\n/*/>*/\n/*< checkbox controls *******************************************************************/\nfValidate.prototype.checkbox = function( minC, maxC )\n{\n\tif ( this.typeMismatch( 'cb' ) ) return;\n\tif ( typeof minC == 'undefined' )\n\t{\n\t\tthis.paramError( 'minC' );\n\t\treturn;\n\t}\n\tif ( this.elem == this.form.elements[this.elem.name] && !this.elem.checked )\n\t{\n\t\tthis.throwError( [this.elem.fName] );\n\t}\n\telse\n\t{\n\t\tthis.elem = this.form.elements[this.elem.name];\n\t\tvar len   = this.elem.length;\n\t\tvar count = 0;\n\n\t\tif ( maxC == 999 || maxC == '*' || typeof maxC == 'undefined' || maxC > this.elem.length )\n\t\t{\n\t\t\tmaxC == len;\n\t\t}\n\t\tvar i = len;\n\t\twhile( i-- > 0 )\n\t\t{\n\t\t\tif ( this.elem[i].checked )\n\t\t\t{\n\t\t\t\tcount++;\n\t\t\t}\n\t\t}\n\t\tif ( count < minC || count > maxC )\n\t\t{\n\t\t\tthis.throwError( [minC, maxC, this.elem[0].fName, count] );\n\t\t}\n\t}\n}\n/*/>*/\n/*< radio controls *******************************************************************/\nfValidate.prototype.radio = function()\n{\n\tif ( this.typeMismatch( 'rg' ) ) return;\n\tif ( this.elem == this.form.elements[this.elem.name] && !this.elem.checked )\n\t{\n\t\tthis.throwError( [this.elem.fName] );\n\t}\n\telse\n\t{\n\t\tthis.elem = this.form.elements[this.elem.name];\n\n\t\tfor ( var i = 0; i < this.elem.length; i++ )\n\t\t{\n\t\t\tif ( this.elem.item( i ).checked )\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tthis.throwError( [this.elem[0].fName] );\n\t}\n}\n/*/>*/\n/*< eitheror logical *******************************************************************/\nfValidate.prototype.eitheror = function()\n{\n\tif ( this.typeMismatch( 'hidden' ) ) return;\n\tif ( typeof arguments[0] == 'undefined' )\n\t{\n\t\tthis.paramError( 'delim' );\n\t\treturn;\n\t}\n\tif ( typeof arguments[1] == 'undefined' )\n\t{\n\t\tthis.paramError( 'fields' );\n\t\treturn;\n\t}\n\tvar arg, i  = 0,\n\t\tfields  = new Array(),\n\t\tfield,\n\t\tnbCount = 0,\n\t\targs    = arguments[1].split( arguments[0] );\n\n\tthis.elem.fields = new Array();\n\n\twhile ( arg = args[i++] )\n\t{\n\t\tfield = this.form.elements[arg];\n\t\tfields.push( field.fName );\n\t\tthis.elem.fields.push( field );\n\n\t\tif ( !this.isBlank( arg ) )\n\t\t{\n\t\t\tnbCount++;\n\t\t}\n\t}\n\tif ( nbCount != 1 )\n\t{\n\t\tthis.throwError( [fields.join( \"\\n\\t-\" )] );\n\t}\n}\n/*/>*/\n/*< atleast logical *******************************************************************/\nfValidate.prototype.atleast = function()\n{\n\tif ( this.typeMismatch( 'hidden' ) ) return;\n\tif ( typeof arguments[0] == undefined )\n\t{\n\t\tthis.paramError( 'qty' );\n\t\treturn;\n\t}\n\tif ( typeof arguments[1] == undefined )\n\t{\n\t\tthis.paramError( 'delim' );\n\t\treturn;\n\t}\n\tif ( typeof arguments[2] == undefined )\n\t{\n\t\tthis.paramError( 'fields' );\n\t\treturn;\n\t}\n\tvar arg, i  = 0,\n\t\tfields  = new Array(),\n\t\tfield,\n\t\tnbCount = 0,\n\t\targs    = arguments[2].split( arguments[1] );\n\n\tthis.elem.fields = new Array();\n\n\twhile ( arg = args[i++] )\n\t{\n\t\tfield = this.form.elements[arg];\n\t\tfields.push( field.fName );\n\t\tthis.elem.fields.push( field );\n\n\t\tif ( !this.isBlank( arg ) )\n\t\t{\n\t\t\tnbCount++;\n\t\t}\n\t}\n\tif ( nbCount < arguments[0] )\n\t{\n\t\tthis.throwError( [arguments[0], fields.join( \"\\n\\t-\" ), nbCount] );\n\t}\n}\n/*/>*/\n/*< allornone logical *******************************************************************/\nfValidate.prototype.allornone = function()\n{\n\tif ( this.typeMismatch( 'hidden' ) ) return;\n\tif ( typeof arguments[0] == 'undefined' )\n\t{\n\t\tthis.paramError( 'delim' );\n\t\treturn;\n\t}\n\tif ( typeof arguments[1] == 'undefined' )\n\t{\n\t\tthis.paramError( 'fields' );\n\t\treturn;\n\t}\n\tvar arg, i  = 0,\n\t\tfields  = new Array(),\n\t\tfield,\n\t\tnbCount = 0,\n\t\targs    = arguments[1].split( arguments[0] );\n\n\tthis.elem.fields = new Array();\n\n\twhile ( arg = args[i++] )\n\t{\n\t\tfield = this.form.elements[arg];\n\t\tfields.push( field.fName );\n\t\tthis.elem.fields.push( field );\n\n\t\tif ( !this.isBlank( arg ) )\n\t\t{\n\t\t\tnbCount++;\n\t\t}\n\t}\n\tif ( nbCount > 0 && nbCount < args.length )\n\t{\n\t\tthis.throwError( [fields.join( \"\\n\\t-\" ), nbCount] );\n\t}\n}\n/*/>*/\n/*< comparison logical *******************************************************************/\nfValidate.prototype.comparison = function( field1, operator, field2 )\n{\n\tif ( this.typeMismatch( 'hidden' ) ) return;\n\tvar elem1\t= this.form.elements[field1],\n\t\telem2\t= this.form.elements[field2],\n\t\tvalue1\t= this.getValue( elem1 ),\n\t\tvalue2\t= this.getValue( elem2 );\n\t\ti18n\t= this.i18n.comparison;\n\t\ti\t\t= -1;\n\n\tvar operators =\n\t[\n\t\t['>',\ti18n.gt],\n\t\t['<',\ti18n.lt],\n\t\t['>=',\ti18n.gte],\n\t\t['<=',\ti18n.lte],\n\t\t['==',\ti18n.eq],\n\t\t['!=',\ti18n.neq]\n\t];\n\twhile( operators[++i][0] != operator ){ }\n\tthis.elem.fields = [elem1, elem2];\n\tif ( ! eval( value1 + operator + value2 ) )\n\t{\n\t\tthis.throwError( [elem1.fName, operators[i][1], elem2.fName] );\n\t}\n}\n/*/>*/\n/*< file controls *******************************************************************/\nfValidate.prototype.file = function( extensions, cSens )\n{\n\tif ( this.typeMismatch( 'file' ) ) return;\n\tif ( typeof extensions == 'undefined' )\n\t{\n\t\tthis.paramError( 'extensions' );\n\t\treturn;\n\t}\n\tcSens = Boolean( cSens ) ? \"\" : \"i\";\n\tvar regex = new RegExp( \"^.+\\\\.(\" + extensions.replace( /,/g, \"|\" ) + \")$\", cSens );\n\tif ( ! regex.test( this.elem.value ) )\n\t{\n\t\tthis.throwError( [extensions.replace( /,/g, \"\\n\" )] );\n\t}\n}\n/*/>*/\n/*< custom special *******************************************************************/\nfValidate.prototype.custom = function( flags, reverseTest )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tflags     = ( flags ) ? flags.replace( /[^gim]/ig ) : \"\";\n\tvar regex = new RegExp( this.elem.getAttribute( this.config.pattern ), flags );\n\tif ( !regex.test( this.elem.value ) )\n\t{\n\t\tthis.throwError( [this.elem.fName] );\n\t}\n}\n/*/>*/\n/*< cc ecommerce *******************************************************************/\nfValidate.prototype.cc = function()\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tvar typeElem = this.form.elements[this.config.ccType];\n\n\tif ( !typeElem )\n\t{\n\t\tthis.devError( 'noCCType' )\n\t\treturn;\n\t}\n\tvar ccType   = typeElem.options[typeElem.selectedIndex].value.toUpperCase();\n\n\tvar types    = {\n\t\t'VISA'    : /^4\\d{12}(\\d{3})?$/,\n\t\t'MC'      : /^5[1-5]\\d{14}$/,\n\t\t'DISC'    : /^6011\\d{12}$/,\n\t\t'AMEX'    : /^3[4|7]\\d{13}$/,\n\t\t'DINERS'  : /^3[0|6|8]\\d{12}$/,\n\t\t'ENROUTE' : /^2[014|149]\\d{11}$/,\n\t\t'JCB'     : /^3[088|096|112|158|337|528]\\d{12}$/,\n\t\t'SWITCH'  : /^(49030[2-9]|49033[5-9]|49110[1-2]|4911(7[4-9]|8[1-2])|4936[0-9]{2}|564182|6333[0-4][0-9]|6759[0-9]{2})\\d{10}(\\d{2,3})?$/,\n\t\t'DELTA'   : /^4(1373[3-7]|462[0-9]{2}|5397[8|9]|54313|5443[2-5]|54742|567(2[5-9]|3[0-9]|4[0-5])|658[3-7][0-9]|659(0[1-9]|[1-4][0-9]|50)|844[09|10]|909[6-7][0-9]|9218[1|2]|98824)\\d{10}$/,\n\t\t'SOLO'    : /^(6334[5-9][0-9]|6767[0-9]{2})\\d{10}(\\d{2,3})?$/\n\t\t};\n\tif ( typeElem.validated == false && this.groupError == true ) return;\n\tif ( typeof types[ccType] == 'undefined' && typeElem.validated == false && this.groupError == false )\n\t{\n\t\tthis.devError( [ccType] );\n\t\treturn;\n\t}\n\tthis.elem.value = this.elem.value.replace( /[^\\d]/g, \"\" );\n\tif ( !types[ccType].test( this.elem.value ) || !this.elem.value.luhn() )\n\t{\n\t\tthis.throwError( [this.elem.fName] );\n\t}\n}\n\nString.prototype.luhn = function()\n{\n\tvar i = this.length;\n\tvar checkSum = \"\", digit;\n\twhile ( digit = this.charAt( --i ) )\n\t{\n\t\tcheckSum += ( i % 2 == 0 ) ? digit * 2 : digit;\n\t}\n\tcheckSum = eval( checkSum.split('').join('+') );\n\treturn ( checkSum % 10 == 0 );\n}\n/*/>*/\n/*< ccDate ecommerce *******************************************************************/\nfValidate.prototype.ccDate = function( month, year )\n{\n\tif ( this.typeMismatch( 's1' ) ) return;\n\tyear\t= parseInt( this.getValue( this.form.elements[year] ), 10 ) + 2000;\n\tmonth\t= parseInt( this.getValue( this.form.elements[month] ), 10 );\n\n\tvar today\t= new Date();\n\tvar expDate = new Date( year, month )\n\n\tif ( expDate < today )\n\t{\n\t\talert( [\"Card Expired\",today,expDate].join( \"\\n\" ) );\n\t}\n}\n/*/>*/\n/*\tEOF */"
  },
  {
    "path": "newscoop/js/fValidate/fValidate.web.js",
    "content": "/***************************************************\t\n\n\tfValidate\n\tCopyright (c) 2000-2003\n\tby Peter Bailey\n\twww.peterbailey.net/fValidate/\n\n\tfValidate.web.js\n\n\tIncluded Validators\n\t-------------------\n\temail\n\turl\n\tip\n\n\tThis file is only part of a larger validation\n\tlibrary\tand will not function autonomously.\n\n\tCreated at a tab-spacing of four (4)\n\n****************************************************/\n\nfValidate.prototype.email = function( level )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tif ( typeof level == 'undefined' ) level = 0;\n\tvar emailPatterns = [\n\t\t/.+@.+\\..+$/i,\n\t\t/^\\w.+@\\w.+\\.[a-z]+$/i,\n\t\t/^\\w[-_a-z~.]+@\\w[-_a-z~.]+\\.[a-z]{2}[a-z]*$/i,\n\t\t/^\\w[\\w\\d]+(\\.[\\w\\d]+)*@\\w[\\w\\d]+(\\.[\\w\\d]+)*\\.[a-z]{2,7}$/i\n\t\t];\n\tif ( ! emailPatterns[level].test( this.elem.value ) )\n\t{\n\t\tthis.throwError();\n\t}\t\n}\t\n\nfValidate.prototype.url = function( hosts, hostOptional, allowQS )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\n\tthis.setArg( hosts, \"http\" );\n\t\n\tvar front = \"^(?:(\" + hosts.replace( /\\,/g, \"|\" ) + \")\\\\:\\\\/\\\\/)\";\n\tvar end   = ( Boolean( allowQS ) == true ) ? \"(\\\\?.*)?$\" : \"$\";\n\n\tif ( Boolean( hostOptional ) == true ) front += \"?\";\n\tvar regex = new RegExp( front + \"([\\\\w\\\\d-]+\\\\.?)+\" + end );\n\t\n\tif ( !regex.test( this.elem.value ) )\n\t{\n\t\tthis.throwError( [this.elem.fName] );\n\t}\n}\t\n\nfValidate.prototype.ip = function( portMin, portMax )\n{\n\tif ( this.typeMismatch( 'text' ) ) return;\n\tportMin = this.setArg( portMin, 0 );\n\tportMax = this.setArg( portMax, 99999 );\n\tif ( !( /^\\d{1,3}(\\.\\d{1,3}){3}(:\\d+)?$/.test( this.elem.value ) ) )\n\t{\n\t\tthis.throwError();\n\t}\n\telse\n\t{\n\t\tvar part, i = 0, parts = this.elem.value.split( /[.:]/ );\n\t\twhile ( part = parts[i++] )\n\t\t{\n\t\t\tif ( i == 5 ) // Check port\n\t\t\t{\n\t\t\t\tif ( part < portMin || part > portMax )\n\t\t\t\t{\n\t\t\t\t\tthis.throwError( [part, portMin, portMax], 1 );\n\t\t\t\t}\n\t\t\t}\n\t\t\telse if ( part < 0 || part > 255 )\n\t\t\t{\n\t\t\t\tthis.throwError();\n\t\t\t}\n\t\t}\n\t}\n}\n//\tEOF"
  },
  {
    "path": "newscoop/js/fValidate/readme.txt",
    "content": "Thanks for downloding fValidate v5.01b!!\n\nVisit www.peterbailey.net/fValidate/ for more info\n\nEmail: fvalidate@peterbailey.net"
  },
  {
    "path": "newscoop/js/flowplayer/LICENSE.txt",
    "content": "The Flowplayer Free version is released under the\nGNU GENERAL PUBLIC LICENSE Version 3 (GPL).\n\nThe GPL requires that you not remove the Flowplayer copyright notices\nfrom the user interface. See section 5.d below.\n\nCommercial licenses are available. The commercial player version\ndoes not require any Flowplayer notices or texts and also provides\nsome additional features.\n\n========================================================================\n\nADDITIONAL TERM per GPL Section 7\nIf you convey this program (or any modifications of it) and assume\ncontractual liability for the program to recipients of it, you agree\nto indemnify Flowplayer, Ltd. for any liability that those contractual\nassumptions impose on Flowplayer, Ltd.\n\nExcept as expressly provided herein, no trademark rights are granted in\nany trademarks of Flowplayer, Ltd. Licensees are granted a limited,\nnon-exclusive right to use the mark Flowplayer and the Flowplayer logos\nin connection with unmodified copies of the Program and the copyright\nnotices required by section 5.d of the GPL license. For the purposes\nof this limited trademark license grant, customizing the Flowplayer\nby skinning, scripting, or including PlugIns provided by Flowplayer, Ltd.\nis not considered modifying the Program.\n\nLicensees that do modify the Program, taking advantage of the open-source\nlicense, may not use the Flowplayer mark or Flowplayer logos and must\nchange the fullscreen notice (and the non-fullscreen notice, if that\noption is enabled), the copyright notice in the dialog box, and the\nnotice on the Canvas as follows:\n\nthe full screen (and non-fullscreen equivalent, if activated) notice\nshould read: \"Based on Flowplayer source code\"; in the context menu\n(right-click menu), the link to \"About Flowplayer free version #.#.#\"\ncan remain. The copyright notice can remain, but must be supplemented with\nan additional notice, stating that the licensee modified the Flowplayer. \nA suitable notice might read \"Flowplayer Source code modified by ModOrg 2009\";\nfor the canvas, the notice should read \"Based on Flowplayer source code\".\nIn addition, licensees that modify the Program must give the modified\nProgram a new name that is not confusingly similar to Flowplayer and\nmay not distribute it under the name Flowplayer.\n\n========================================================================\n\n\n                    GNU GENERAL PUBLIC LICENSE\n                       Version 3, 29 June 2007\n\n Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>\n Everyone is permitted to copy and distribute verbatim copies\n of this license document, but changing it is not allowed.\n\n                            Preamble\n\n  The GNU General Public License is a free, copyleft license for\nsoftware and other kinds of works.\n\n  The licenses for most software and other practical works are designed\nto take away your freedom to share and change the works.  By contrast,\nthe GNU General Public License is intended to guarantee your freedom to\nshare and change all versions of a program--to make sure it remains free\nsoftware for all its users.  We, the Free Software Foundation, use the\nGNU General Public License for most of our software; it applies also to\nany other work released this way by its authors.  You can apply it to\nyour programs, too.\n\n  When we speak of free software, we are referring to freedom, not\nprice.  Our General Public Licenses are designed to make sure that you\nhave the freedom to distribute copies of free software (and charge for\nthem if you wish), that you receive source code or can get it if you\nwant it, that you can change the software or use pieces of it in new\nfree programs, and that you know you can do these things.\n\n  To protect your rights, we need to prevent others from denying you\nthese rights or asking you to surrender the rights.  Therefore, you have\ncertain responsibilities if you distribute copies of the software, or if\nyou modify it: responsibilities to respect the freedom of others.\n\n  For example, if you distribute copies of such a program, whether\ngratis or for a fee, you must pass on to the recipients the same\nfreedoms that you received.  You must make sure that they, too, receive\nor can get the source code.  And you must show them these terms so they\nknow their rights.\n\n  Developers that use the GNU GPL protect your rights with two steps:\n(1) assert copyright on the software, and (2) offer you this License\ngiving you legal permission to copy, distribute and/or modify it.\n\n  For the developers' and authors' protection, the GPL clearly explains\nthat there is no warranty for this free software.  For both users' and\nauthors' sake, the GPL requires that modified versions be marked as\nchanged, so that their problems will not be attributed erroneously to\nauthors of previous versions.\n\n  Some devices are designed to deny users access to install or run\nmodified versions of the software inside them, although the manufacturer\ncan do so.  This is fundamentally incompatible with the aim of\nprotecting users' freedom to change the software.  The systematic\npattern of such abuse occurs in the area of products for individuals to\nuse, which is precisely where it is most unacceptable.  Therefore, we\nhave designed this version of the GPL to prohibit the practice for those\nproducts.  If such problems arise substantially in other domains, we\nstand ready to extend this provision to those domains in future versions\nof the GPL, as needed to protect the freedom of users.\n\n  Finally, every program is threatened constantly by software patents.\nStates should not allow patents to restrict development and use of\nsoftware on general-purpose computers, but in those that do, we wish to\navoid the special danger that patents applied to a free program could\nmake it effectively proprietary.  To prevent this, the GPL assures that\npatents cannot be used to render the program non-free.\n\n  The precise terms and conditions for copying, distribution and\nmodification follow.\n\n                       TERMS AND CONDITIONS\n\n  0. Definitions.\n\n  \"This License\" refers to version 3 of the GNU General Public License.\n\n  \"Copyright\" also means copyright-like laws that apply to other kinds of\nworks, such as semiconductor masks.\n\n  \"The Program\" refers to any copyrightable work licensed under this\nLicense.  Each licensee is addressed as \"you\".  \"Licensees\" and\n\"recipients\" may be individuals or organizations.\n\n  To \"modify\" a work means to copy from or adapt all or part of the work\nin a fashion requiring copyright permission, other than the making of an\nexact copy.  The resulting work is called a \"modified version\" of the\nearlier work or a work \"based on\" the earlier work.\n\n  A \"covered work\" means either the unmodified Program or a work based\non the Program.\n\n  To \"propagate\" a work means to do anything with it that, without\npermission, would make you directly or secondarily liable for\ninfringement under applicable copyright law, except executing it on a\ncomputer or modifying a private copy.  Propagation includes copying,\ndistribution (with or without modification), making available to the\npublic, and in some countries other activities as well.\n\n  To \"convey\" a work means any kind of propagation that enables other\nparties to make or receive copies.  Mere interaction with a user through\na computer network, with no transfer of a copy, is not conveying.\n\n  An interactive user interface displays \"Appropriate Legal Notices\"\nto the extent that it includes a convenient and prominently visible\nfeature that (1) displays an appropriate copyright notice, and (2)\ntells the user that there is no warranty for the work (except to the\nextent that warranties are provided), that licensees may convey the\nwork under this License, and how to view a copy of this License.  If\nthe interface presents a list of user commands or options, such as a\nmenu, a prominent item in the list meets this criterion.\n\n  1. Source Code.\n\n  The \"source code\" for a work means the preferred form of the work\nfor making modifications to it.  \"Object code\" means any non-source\nform of a work.\n\n  A \"Standard Interface\" means an interface that either is an official\nstandard defined by a recognized standards body, or, in the case of\ninterfaces specified for a particular programming language, one that\nis widely used among developers working in that language.\n\n  The \"System Libraries\" of an executable work include anything, other\nthan the work as a whole, that (a) is included in the normal form of\npackaging a Major Component, but which is not part of that Major\nComponent, and (b) serves only to enable use of the work with that\nMajor Component, or to implement a Standard Interface for which an\nimplementation is available to the public in source code form.  A\n\"Major Component\", in this context, means a major essential component\n(kernel, window system, and so on) of the specific operating system\n(if any) on which the executable work runs, or a compiler used to\nproduce the work, or an object code interpreter used to run it.\n\n  The \"Corresponding Source\" for a work in object code form means all\nthe source code needed to generate, install, and (for an executable\nwork) run the object code and to modify the work, including scripts to\ncontrol those activities.  However, it does not include the work's\nSystem Libraries, or general-purpose tools or generally available free\nprograms which are used unmodified in performing those activities but\nwhich are not part of the work.  For example, Corresponding Source\nincludes interface definition files associated with source files for\nthe work, and the source code for shared libraries and dynamically\nlinked subprograms that the work is specifically designed to require,\nsuch as by intimate data communication or control flow between those\nsubprograms and other parts of the work.\n\n  The Corresponding Source need not include anything that users\ncan regenerate automatically from other parts of the Corresponding\nSource.\n\n  The Corresponding Source for a work in source code form is that\nsame work.\n\n  2. Basic Permissions.\n\n  All rights granted under this License are granted for the term of\ncopyright on the Program, and are irrevocable provided the stated\nconditions are met.  This License explicitly affirms your unlimited\npermission to run the unmodified Program.  The output from running a\ncovered work is covered by this License only if the output, given its\ncontent, constitutes a covered work.  This License acknowledges your\nrights of fair use or other equivalent, as provided by copyright law.\n\n  You may make, run and propagate covered works that you do not\nconvey, without conditions so long as your license otherwise remains\nin force.  You may convey covered works to others for the sole purpose\nof having them make modifications exclusively for you, or provide you\nwith facilities for running those works, provided that you comply with\nthe terms of this License in conveying all material for which you do\nnot control copyright.  Those thus making or running the covered works\nfor you must do so exclusively on your behalf, under your direction\nand control, on terms that prohibit them from making any copies of\nyour copyrighted material outside their relationship with you.\n\n  Conveying under any other circumstances is permitted solely under\nthe conditions stated below.  Sublicensing is not allowed; section 10\nmakes it unnecessary.\n\n  3. Protecting Users' Legal Rights From Anti-Circumvention Law.\n\n  No covered work shall be deemed part of an effective technological\nmeasure under any applicable law fulfilling obligations under article\n11 of the WIPO copyright treaty adopted on 20 December 1996, or\nsimilar laws prohibiting or restricting circumvention of such\nmeasures.\n\n  When you convey a covered work, you waive any legal power to forbid\ncircumvention of technological measures to the extent such circumvention\nis effected by exercising rights under this License with respect to\nthe covered work, and you disclaim any intention to limit operation or\nmodification of the work as a means of enforcing, against the work's\nusers, your or third parties' legal rights to forbid circumvention of\ntechnological measures.\n\n  4. Conveying Verbatim Copies.\n\n  You may convey verbatim copies of the Program's source code as you\nreceive it, in any medium, provided that you conspicuously and\nappropriately publish on each copy an appropriate copyright notice;\nkeep intact all notices stating that this License and any\nnon-permissive terms added in accord with section 7 apply to the code;\nkeep intact all notices of the absence of any warranty; and give all\nrecipients a copy of this License along with the Program.\n\n  You may charge any price or no price for each copy that you convey,\nand you may offer support or warranty protection for a fee.\n\n  5. Conveying Modified Source Versions.\n\n  You may convey a work based on the Program, or the modifications to\nproduce it from the Program, in the form of source code under the\nterms of section 4, provided that you also meet all of these conditions:\n\n    a) The work must carry prominent notices stating that you modified\n    it, and giving a relevant date.\n\n    b) The work must carry prominent notices stating that it is\n    released under this License and any conditions added under section\n    7.  This requirement modifies the requirement in section 4 to\n    \"keep intact all notices\".\n\n    c) You must license the entire work, as a whole, under this\n    License to anyone who comes into possession of a copy.  This\n    License will therefore apply, along with any applicable section 7\n    additional terms, to the whole of the work, and all its parts,\n    regardless of how they are packaged.  This License gives no\n    permission to license the work in any other way, but it does not\n    invalidate such permission if you have separately received it.\n\n    d) If the work has interactive user interfaces, each must display\n    Appropriate Legal Notices; however, if the Program has interactive\n    interfaces that do not display Appropriate Legal Notices, your\n    work need not make them do so.\n\n  A compilation of a covered work with other separate and independent\nworks, which are not by their nature extensions of the covered work,\nand which are not combined with it such as to form a larger program,\nin or on a volume of a storage or distribution medium, is called an\n\"aggregate\" if the compilation and its resulting copyright are not\nused to limit the access or legal rights of the compilation's users\nbeyond what the individual works permit.  Inclusion of a covered work\nin an aggregate does not cause this License to apply to the other\nparts of the aggregate.\n\n  6. Conveying Non-Source Forms.\n\n  You may convey a covered work in object code form under the terms\nof sections 4 and 5, provided that you also convey the\nmachine-readable Corresponding Source under the terms of this License,\nin one of these ways:\n\n    a) Convey the object code in, or embodied in, a physical product\n    (including a physical distribution medium), accompanied by the\n    Corresponding Source fixed on a durable physical medium\n    customarily used for software interchange.\n\n    b) Convey the object code in, or embodied in, a physical product\n    (including a physical distribution medium), accompanied by a\n    written offer, valid for at least three years and valid for as\n    long as you offer spare parts or customer support for that product\n    model, to give anyone who possesses the object code either (1) a\n    copy of the Corresponding Source for all the software in the\n    product that is covered by this License, on a durable physical\n    medium customarily used for software interchange, for a price no\n    more than your reasonable cost of physically performing this\n    conveying of source, or (2) access to copy the\n    Corresponding Source from a network server at no charge.\n\n    c) Convey individual copies of the object code with a copy of the\n    written offer to provide the Corresponding Source.  This\n    alternative is allowed only occasionally and noncommercially, and\n    only if you received the object code with such an offer, in accord\n    with subsection 6b.\n\n    d) Convey the object code by offering access from a designated\n    place (gratis or for a charge), and offer equivalent access to the\n    Corresponding Source in the same way through the same place at no\n    further charge.  You need not require recipients to copy the\n    Corresponding Source along with the object code.  If the place to\n    copy the object code is a network server, the Corresponding Source\n    may be on a different server (operated by you or a third party)\n    that supports equivalent copying facilities, provided you maintain\n    clear directions next to the object code saying where to find the\n    Corresponding Source.  Regardless of what server hosts the\n    Corresponding Source, you remain obligated to ensure that it is\n    available for as long as needed to satisfy these requirements.\n\n    e) Convey the object code using peer-to-peer transmission, provided\n    you inform other peers where the object code and Corresponding\n    Source of the work are being offered to the general public at no\n    charge under subsection 6d.\n\n  A separable portion of the object code, whose source code is excluded\nfrom the Corresponding Source as a System Library, need not be\nincluded in conveying the object code work.\n\n  A \"User Product\" is either (1) a \"consumer product\", which means any\ntangible personal property which is normally used for personal, family,\nor household purposes, or (2) anything designed or sold for incorporation\ninto a dwelling.  In determining whether a product is a consumer product,\ndoubtful cases shall be resolved in favor of coverage.  For a particular\nproduct received by a particular user, \"normally used\" refers to a\ntypical or common use of that class of product, regardless of the status\nof the particular user or of the way in which the particular user\nactually uses, or expects or is expected to use, the product.  A product\nis a consumer product regardless of whether the product has substantial\ncommercial, industrial or non-consumer uses, unless such uses represent\nthe only significant mode of use of the product.\n\n  \"Installation Information\" for a User Product means any methods,\nprocedures, authorization keys, or other information required to install\nand execute modified versions of a covered work in that User Product from\na modified version of its Corresponding Source.  The information must\nsuffice to ensure that the continued functioning of the modified object\ncode is in no case prevented or interfered with solely because\nmodification has been made.\n\n  If you convey an object code work under this section in, or with, or\nspecifically for use in, a User Product, and the conveying occurs as\npart of a transaction in which the right of possession and use of the\nUser Product is transferred to the recipient in perpetuity or for a\nfixed term (regardless of how the transaction is characterized), the\nCorresponding Source conveyed under this section must be accompanied\nby the Installation Information.  But this requirement does not apply\nif neither you nor any third party retains the ability to install\nmodified object code on the User Product (for example, the work has\nbeen installed in ROM).\n\n  The requirement to provide Installation Information does not include a\nrequirement to continue to provide support service, warranty, or updates\nfor a work that has been modified or installed by the recipient, or for\nthe User Product in which it has been modified or installed.  Access to a\nnetwork may be denied when the modification itself materially and\nadversely affects the operation of the network or violates the rules and\nprotocols for communication across the network.\n\n  Corresponding Source conveyed, and Installation Information provided,\nin accord with this section must be in a format that is publicly\ndocumented (and with an implementation available to the public in\nsource code form), and must require no special password or key for\nunpacking, reading or copying.\n\n  7. Additional Terms.\n\n  \"Additional permissions\" are terms that supplement the terms of this\nLicense by making exceptions from one or more of its conditions.\nAdditional permissions that are applicable to the entire Program shall\nbe treated as though they were included in this License, to the extent\nthat they are valid under applicable law.  If additional permissions\napply only to part of the Program, that part may be used separately\nunder those permissions, but the entire Program remains governed by\nthis License without regard to the additional permissions.\n\n  When you convey a copy of a covered work, you may at your option\nremove any additional permissions from that copy, or from any part of\nit.  (Additional permissions may be written to require their own\nremoval in certain cases when you modify the work.)  You may place\nadditional permissions on material, added by you to a covered work,\nfor which you have or can give appropriate copyright permission.\n\n  Notwithstanding any other provision of this License, for material you\nadd to a covered work, you may (if authorized by the copyright holders of\nthat material) supplement the terms of this License with terms:\n\n    a) Disclaiming warranty or limiting liability differently from the\n    terms of sections 15 and 16 of this License; or\n\n    b) Requiring preservation of specified reasonable legal notices or\n    author attributions in that material or in the Appropriate Legal\n    Notices displayed by works containing it; or\n\n    c) Prohibiting misrepresentation of the origin of that material, or\n    requiring that modified versions of such material be marked in\n    reasonable ways as different from the original version; or\n\n    d) Limiting the use for publicity purposes of names of licensors or\n    authors of the material; or\n\n    e) Declining to grant rights under trademark law for use of some\n    trade names, trademarks, or service marks; or\n\n    f) Requiring indemnification of licensors and authors of that\n    material by anyone who conveys the material (or modified versions of\n    it) with contractual assumptions of liability to the recipient, for\n    any liability that these contractual assumptions directly impose on\n    those licensors and authors.\n\n  All other non-permissive additional terms are considered \"further\nrestrictions\" within the meaning of section 10.  If the Program as you\nreceived it, or any part of it, contains a notice stating that it is\ngoverned by this License along with a term that is a further\nrestriction, you may remove that term.  If a license document contains\na further restriction but permits relicensing or conveying under this\nLicense, you may add to a covered work material governed by the terms\nof that license document, provided that the further restriction does\nnot survive such relicensing or conveying.\n\n  If you add terms to a covered work in accord with this section, you\nmust place, in the relevant source files, a statement of the\nadditional terms that apply to those files, or a notice indicating\nwhere to find the applicable terms.\n\n  Additional terms, permissive or non-permissive, may be stated in the\nform of a separately written license, or stated as exceptions;\nthe above requirements apply either way.\n\n  8. Termination.\n\n  You may not propagate or modify a covered work except as expressly\nprovided under this License.  Any attempt otherwise to propagate or\nmodify it is void, and will automatically terminate your rights under\nthis License (including any patent licenses granted under the third\nparagraph of section 11).\n\n  However, if you cease all violation of this License, then your\nlicense from a particular copyright holder is reinstated (a)\nprovisionally, unless and until the copyright holder explicitly and\nfinally terminates your license, and (b) permanently, if the copyright\nholder fails to notify you of the violation by some reasonable means\nprior to 60 days after the cessation.\n\n  Moreover, your license from a particular copyright holder is\nreinstated permanently if the copyright holder notifies you of the\nviolation by some reasonable means, this is the first time you have\nreceived notice of violation of this License (for any work) from that\ncopyright holder, and you cure the violation prior to 30 days after\nyour receipt of the notice.\n\n  Termination of your rights under this section does not terminate the\nlicenses of parties who have received copies or rights from you under\nthis License.  If your rights have been terminated and not permanently\nreinstated, you do not qualify to receive new licenses for the same\nmaterial under section 10.\n\n  9. Acceptance Not Required for Having Copies.\n\n  You are not required to accept this License in order to receive or\nrun a copy of the Program.  Ancillary propagation of a covered work\noccurring solely as a consequence of using peer-to-peer transmission\nto receive a copy likewise does not require acceptance.  However,\nnothing other than this License grants you permission to propagate or\nmodify any covered work.  These actions infringe copyright if you do\nnot accept this License.  Therefore, by modifying or propagating a\ncovered work, you indicate your acceptance of this License to do so.\n\n  10. Automatic Licensing of Downstream Recipients.\n\n  Each time you convey a covered work, the recipient automatically\nreceives a license from the original licensors, to run, modify and\npropagate that work, subject to this License.  You are not responsible\nfor enforcing compliance by third parties with this License.\n\n  An \"entity transaction\" is a transaction transferring control of an\norganization, or substantially all assets of one, or subdividing an\norganization, or merging organizations.  If propagation of a covered\nwork results from an entity transaction, each party to that\ntransaction who receives a copy of the work also receives whatever\nlicenses to the work the party's predecessor in interest had or could\ngive under the previous paragraph, plus a right to possession of the\nCorresponding Source of the work from the predecessor in interest, if\nthe predecessor has it or can get it with reasonable efforts.\n\n  You may not impose any further restrictions on the exercise of the\nrights granted or affirmed under this License.  For example, you may\nnot impose a license fee, royalty, or other charge for exercise of\nrights granted under this License, and you may not initiate litigation\n(including a cross-claim or counterclaim in a lawsuit) alleging that\nany patent claim is infringed by making, using, selling, offering for\nsale, or importing the Program or any portion of it.\n\n  11. Patents.\n\n  A \"contributor\" is a copyright holder who authorizes use under this\nLicense of the Program or a work on which the Program is based.  The\nwork thus licensed is called the contributor's \"contributor version\".\n\n  A contributor's \"essential patent claims\" are all patent claims\nowned or controlled by the contributor, whether already acquired or\nhereafter acquired, that would be infringed by some manner, permitted\nby this License, of making, using, or selling its contributor version,\nbut do not include claims that would be infringed only as a\nconsequence of further modification of the contributor version.  For\npurposes of this definition, \"control\" includes the right to grant\npatent sublicenses in a manner consistent with the requirements of\nthis License.\n\n  Each contributor grants you a non-exclusive, worldwide, royalty-free\npatent license under the contributor's essential patent claims, to\nmake, use, sell, offer for sale, import and otherwise run, modify and\npropagate the contents of its contributor version.\n\n  In the following three paragraphs, a \"patent license\" is any express\nagreement or commitment, however denominated, not to enforce a patent\n(such as an express permission to practice a patent or covenant not to\nsue for patent infringement).  To \"grant\" such a patent license to a\nparty means to make such an agreement or commitment not to enforce a\npatent against the party.\n\n  If you convey a covered work, knowingly relying on a patent license,\nand the Corresponding Source of the work is not available for anyone\nto copy, free of charge and under the terms of this License, through a\npublicly available network server or other readily accessible means,\nthen you must either (1) cause the Corresponding Source to be so\navailable, or (2) arrange to deprive yourself of the benefit of the\npatent license for this particular work, or (3) arrange, in a manner\nconsistent with the requirements of this License, to extend the patent\nlicense to downstream recipients.  \"Knowingly relying\" means you have\nactual knowledge that, but for the patent license, your conveying the\ncovered work in a country, or your recipient's use of the covered work\nin a country, would infringe one or more identifiable patents in that\ncountry that you have reason to believe are valid.\n\n  If, pursuant to or in connection with a single transaction or\narrangement, you convey, or propagate by procuring conveyance of, a\ncovered work, and grant a patent license to some of the parties\nreceiving the covered work authorizing them to use, propagate, modify\nor convey a specific copy of the covered work, then the patent license\nyou grant is automatically extended to all recipients of the covered\nwork and works based on it.\n\n  A patent license is \"discriminatory\" if it does not include within\nthe scope of its coverage, prohibits the exercise of, or is\nconditioned on the non-exercise of one or more of the rights that are\nspecifically granted under this License.  You may not convey a covered\nwork if you are a party to an arrangement with a third party that is\nin the business of distributing software, under which you make payment\nto the third party based on the extent of your activity of conveying\nthe work, and under which the third party grants, to any of the\nparties who would receive the covered work from you, a discriminatory\npatent license (a) in connection with copies of the covered work\nconveyed by you (or copies made from those copies), or (b) primarily\nfor and in connection with specific products or compilations that\ncontain the covered work, unless you entered into that arrangement,\nor that patent license was granted, prior to 28 March 2007.\n\n  Nothing in this License shall be construed as excluding or limiting\nany implied license or other defenses to infringement that may\notherwise be available to you under applicable patent law.\n\n  12. No Surrender of Others' Freedom.\n\n  If conditions are imposed on you (whether by court order, agreement or\notherwise) that contradict the conditions of this License, they do not\nexcuse you from the conditions of this License.  If you cannot convey a\ncovered work so as to satisfy simultaneously your obligations under this\nLicense and any other pertinent obligations, then as a consequence you may\nnot convey it at all.  For example, if you agree to terms that obligate you\nto collect a royalty for further conveying from those to whom you convey\nthe Program, the only way you could satisfy both those terms and this\nLicense would be to refrain entirely from conveying the Program.\n\n  13. Use with the GNU Affero General Public License.\n\n  Notwithstanding any other provision of this License, you have\npermission to link or combine any covered work with a work licensed\nunder version 3 of the GNU Affero General Public License into a single\ncombined work, and to convey the resulting work.  The terms of this\nLicense will continue to apply to the part which is the covered work,\nbut the special requirements of the GNU Affero General Public License,\nsection 13, concerning interaction through a network will apply to the\ncombination as such.\n\n  14. Revised Versions of this License.\n\n  The Free Software Foundation may publish revised and/or new versions of\nthe GNU General Public License from time to time.  Such new versions will\nbe similar in spirit to the present version, but may differ in detail to\naddress new problems or concerns.\n\n  Each version is given a distinguishing version number.  If the\nProgram specifies that a certain numbered version of the GNU General\nPublic License \"or any later version\" applies to it, you have the\noption of following the terms and conditions either of that numbered\nversion or of any later version published by the Free Software\nFoundation.  If the Program does not specify a version number of the\nGNU General Public License, you may choose any version ever published\nby the Free Software Foundation.\n\n  If the Program specifies that a proxy can decide which future\nversions of the GNU General Public License can be used, that proxy's\npublic statement of acceptance of a version permanently authorizes you\nto choose that version for the Program.\n\n  Later license versions may give you additional or different\npermissions.  However, no additional obligations are imposed on any\nauthor or copyright holder as a result of your choosing to follow a\nlater version.\n\n  15. Disclaimer of Warranty.\n\n  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY\nAPPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT\nHOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY\nOF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,\nTHE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\nPURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM\nIS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF\nALL NECESSARY SERVICING, REPAIR OR CORRECTION.\n\n  16. Limitation of Liability.\n\n  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\nWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS\nTHE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY\nGENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE\nUSE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF\nDATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD\nPARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),\nEVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF\nSUCH DAMAGES.\n\n  17. Interpretation of Sections 15 and 16.\n\n  If the disclaimer of warranty and limitation of liability provided\nabove cannot be given local legal effect according to their terms,\nreviewing courts shall apply local law that most closely approximates\nan absolute waiver of all civil liability in connection with the\nProgram, unless a warranty or assumption of liability accompanies a\ncopy of the Program in return for a fee.\n\n                     END OF TERMS AND CONDITIONS\n\n            How to Apply These Terms to Your New Programs\n\n  If you develop a new program, and you want it to be of the greatest\npossible use to the public, the best way to achieve this is to make it\nfree software which everyone can redistribute and change under these terms.\n\n  To do so, attach the following notices to the program.  It is safest\nto attach them to the start of each source file to most effectively\nstate the exclusion of warranty; and each file should have at least\nthe \"copyright\" line and a pointer to where the full notice is found.\n\n    <one line to give the program's name and a brief idea of what it does.>\n    Copyright (C) <year>  <name of author>\n\n    This program is free software: you can redistribute it and/or modify\n    it under the terms of the GNU General Public License as published by\n    the Free Software Foundation, either version 3 of the License, or\n    (at your option) any later version.\n\n    This program is distributed in the hope that it will be useful,\n    but WITHOUT ANY WARRANTY; without even the implied warranty of\n    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n    GNU General Public License for more details.\n\n    You should have received a copy of the GNU General Public License\n    along with this program.  If not, see <http://www.gnu.org/licenses/>.\n\nAlso add information on how to contact you by electronic and paper mail.\n\n  If the program does terminal interaction, make it output a short\nnotice like this when it starts in an interactive mode:\n\n    <program>  Copyright (C) <year>  <name of author>\n    This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.\n    This is free software, and you are welcome to redistribute it\n    under certain conditions; type `show c' for details.\n\nThe hypothetical commands `show w' and `show c' should show the appropriate\nparts of the General Public License.  Of course, your program's commands\nmight be different; for a GUI interface, you would use an \"about box\".\n\n  You should also get your employer (if you work as a programmer) or school,\nif any, to sign a \"copyright disclaimer\" for the program, if necessary.\nFor more information on this, and how to apply and follow the GNU GPL, see\n<http://www.gnu.org/licenses/>.\n\n  The GNU General Public License does not permit incorporating your program\ninto proprietary programs.  If your program is a subroutine library, you\nmay consider it more useful to permit linking proprietary applications with\nthe library.  If this is what you want to do, use the GNU Lesser General\nPublic License instead of this License.  But first, please read\n<http://www.gnu.org/philosophy/why-not-lgpl.html>."
  },
  {
    "path": "newscoop/js/flowplayer/README.txt",
    "content": "Version history:\n\n3.2.5\n-----\n- added new scaling option 'crop' that resizes to fill all available space, cropping on top/bottom or left/right\n- improvements to RSS file parsing\n- Now displays a hand cursor when a linkUrl is used in clips\n\n3.2.4\n-----\n- new flowplayer.js version, with Apple iDevice fixes\n\n3.2.3\n-----\n- a new 'type' clip property exposed to JS\n- changed the clip type property to better work as a read-write property. Now accepts 'video', 'audio',\n  'image' and 'api' as configuration values.\n- moved parallel rtmp connection mechanism from the RTMP plugin to Core so other plugins can use it (ie: securestreaming)\nFixes:\n- fixed #112, wrong URL computation when using clip with relative URL on a page with a / after a # in its url\n- fixed #111, wrong behavior of pre/post roll images with duration 0\n- fixed multiple license keys logic\nFixes:\n- correct verification of license keys in *.ca domains\n- fix to make playback to always reach end of video\n\n3.2.2\n-----\nFixes:\n- Now recognizes following kind of urls as audio clips: 'mp3:audiostreamname' (ulrs with mp3 prefix and no extension)\n- Now ignores the duration from metadata if we already got one. Fix required for pseudostreaming\n- Fix to reuse buffered data when replaying a clip\n\n3.2.1\n---------\n- Support for RTMP redirects (tested with Wowza loadbalancing)\n- Fixed video size when no size info available in clip metadata\n\nFixes:\n- Fix to correctly detect if the player SWF name contains a version number and if it does also use the version number\nwhen it automatically loads the controls plugin.\n\n3.2.0\n-----\n- canvas, controlbar and the content plugin backgound color and border color can be now given with rgb() and rgba() CSS style syntax\n- Added onMouseOver() and onMouseOut() listener registration methods to the Flowplayer API\n- enhancements to RSS playlist. Converted parsing to E4X, yahoo media and flowplayer namespace support. \n- added feature to obtain bitrate and dimension information to a new clip custom property \"bitrates\" for future support for bitrate choosing. \n- added getter for playerSwfName config\n- if clip.url has the string \"mp3:\" in it, the clip.type will report 'audio'\n- added setKeyboardShortcutsEnabled(), addKeyListener(), removeKeyListener() to FlowplayerBase\nFixes:\n- onSeek() was not fired when seeking while paused and when using RTMP. An extra onStart was fired too.\n- fireErrorExternal() was not working properly with an error PlayerEvent\n- countPlugins() was throwing an error when a plugin was not found\n- external swf files were not scaled properly\n- the logo was unnecessary shown when going fullscreen if logo.displayTime was being used\n- added a loadPluginWithConfig method to FlowplayerBase, accessible from javascript. Fixed double onload callback call.\n- now handles cuepoint parameters injected using the Adobe Media Encoder\n- showPlugin was not working when config.play was null\n- handles 3-part duration values included in FLV metadata, like \"500.123.123\"\n- player wasn't always reaching end of video\n- fixed broken buffering: false\n- fixed event dispatching when embedding flowplayer without flowplayer.js (=without playlist config field)\n- fixed safari crashes when unloading player\n- fixed scrubber behaviour with a playlist containing 2 images (or swf) in a row\n- fixed errors in logs when using an RSS playlist\n- fixed OverlayPlayButton that was showing even if it shouldn't on some cases\n- fixed wrong behavior when onBeforeFinish was returning false within playlists\n- /!\\ Don't use the fadeIn / fadeOut controlbar's API while using autoHide.\n- fixed play state button with images\n- fixed splash image flickering\n\n3.1.5\n-----\nFixes:\n- The player went to a locked state when resuming playback after a period that was long enought to send the\nnetConnection to an invalid state. Now when resuming playback on an invalid connection the clip starts again from\nthe beginning. This is only when using RTMP connections and does not affect progressive download playback.\n- Custom netConnect and netStream events did not pass the info object to JS listeners\n\n3.1.4\n-----\nFixes:\n- player did not initialize if the controlbar plugin was disabled and if the play button overlay was disabled with play: null\n- works properly without cachebusting on IE\n- RSS playlist parsing now respects the isDefault attribute used in mRSS media group items\n- Fixed passing of connection arguments\n\n3.1.3\n-----\n- enhancements to RSS playlist parsing: Now skips all media:content that have unsupported types. Now the type attribute\nof the media:content element is mandatory and has to be present in the RSS file\n- Possibility to pass a RSS file name with playFeed(\"playlist.rss\") and setPlaylist(\"playlist.rss\") calls.\n- changes to the ConnectionProvider and URLResolver APIs\n- Now automatically uses a plugin that is called 'rtmp' for all clips that have the rtmp-protocol in their URLs.\n- Added possibility to specify all clip properties in an RSS playlist\n\nFixes:\n- the result of URL resolvers in now cached, and the resolvers will not be used again when a clip is replayed\n- some style properties like 'backgroundGradient' had no effect in config\n- video goes tiny on Firefox: http://flowplayer.org/forum/8/23226\n- RSS playlists: The 'type' attribute value 'audio/mp3' in the media:content element caused an error.\n- Dispatches onMetadata() if an URL resolver changes the clip URL (changes to a different file)\n- error codes and error message were not properly passed to onEvent JS listeners\n\n3.1.2\n-----\n- The domain of the logo url must the same domain from where the player SWF is loaded from.\n- Fullscreen can be toggled by doublclick on the video area.\nFixes:\n- Player was not initialized correctly when instream playlists were used and the provider used in the instream clips was defined in the common clip.\n- A separator in the Context Menu made the callbacks in the following menu items out of order. Related forum post: http://flowplayer.org/forum/8/22541\n- the width and height settings of a logo were ignored if the logo was a sWF file\n- volume control and mute/unmute were not working after an instream clip had been played\n- now possible to use RTMP for mp3 files\n- Issue 12: cuepointMultiplier was undefined in the clip object set to JS event listeners\n- Issue 14: onBeforeStop was unnecessarily fired when calling setPlaylist() and the player was not playing,\n            additionally onStop was never fired even if onBeforeStop was\n- fixed screen vertical placement problems that reappeared with 3.1.1\n- The rotating animation now has the same size and position as it has after initialized\n\n3.1.1\n-----\n- External configuration files\n- Instream playback\n- Added toggleFullscreen() the API\n- Possibility to specify controls configuration in clips\n- Seek target position is now sent in the onBeforeSeek event\nFixes:\n- The screen size was initially too small on Firefox (Mac)\n- Did not persist a zero volume value: http://www.flowplayer.org/forum/8/18413\n\n3.1.0\n-----\nNew features:\n- clip's can have urlResolvers and connectionProviders\n- Added new configuration options 'connectionCallbacks' and 'streamCallbacks'. Both accept an Array of event names as a value.\n  When these events get fired on the connection or stream object, corresponding Clip events will be fired by the player.\n  This can be used for example when firing custom events from RTMP server apps\n- Added new clip event types: 'onConnectionEvent' and 'onStreamEvent' these get fired when the predefined events happen on the connection and stream objects.\n- Added Security.allowDomain() to allow loaded plugins to script the player\n- Added addClip(clip, index) to the API, index is optional\n- Possibility to view videos without metadata, using clip.metaData: false\n- Now the player's preloader uses the rotating animation instead of a percent text to indicate the progress\n  of loading the player SWF. You can disable the aninamtion by setting buffering: false\n- calling close() now does not send the onStop event\n- Clip's custom properties are now present in the root of the clip argument in all clip events that are sent to JS.\n\nBug fixes:\n- The preloader sometimes failed to initialize the player\n- Allow seeking while in buffering state: http://flowplayer.org/forum/8/16505\n- Replay of a RTMP stream was failing after the connection had expired\n- Security error when clicking on the screen if there is an image in the playlist loaded from a foreign domain\n- loadPlugin() was not working\n- now fullscreen works with Flash versions older than 9.0.115, in versions that do not support hardware scaling\n- replaying a RTMP stream with an image in front of the stream in the playlist was not working (video stayed hidden). Happened\n  because the server does not send metadata if replaying the same stream.\n- the scrubber is disabled if the clip is not seekable in the first frame: http://flowplayer.org/forum/8/16526\n  By default if the clip has one of following extensions (the typical flash video extensions) it is seekable\n  in the first frame: 'f4b', 'f4p', 'f4v', 'flv'. Added new clip property seekableOnBegin that can be used to override the default.  \n\n3.0.6\n-----\n- added possibility to associate a linkUrl and linkWindow to the canvas\nFixes:\n- fix for entering fullscreen for Flash versions that don't support the hardware scaled fullscreen-mode\n- when showing images the duration tracking starts only after the image has been completely loaded: http://flowplayer.org/forum/2/15301\n- fix for verifying license keys for domains that have more than 4 labels in them\n- if plugin loading failis because of a IO error, the plugin will be discarded and the player initialization continues:\n\n3.0.4\n-----\n- The \"play\" pseudo-plugin now supports fadeIn(), fadeOut(), showPlugin(), hidePlugin() and\n  additionally you can configure it like this:\n  // make only the play button invisible (buffering animation is still used)\n  play: { display: 'none' }\n  // disable the play button and the buffering animation\n  play: null\n  // disable the buffering animation\n  buffering: null \n- Added possibility to seek when in the buffering state: http://flowplayer.org/forum/3/13896\n- Added copyright notices and other GPL required entries to the user interface\n\nFixes:\n- clip urls were not resolved correctly if the HTML page URL had a query string starting with a question mark (http://flowplayer.org/forum/8/14016#post-14016)\n- Fixed context menu for with IE (commercial version)\n- a cuepoint at time zero was fired several times\n- screen is now arranged correctly even when only bottom or top is defined for it in the configuration\n- Fixed context menu for with IE (commercial version)\n- a cuepoint at time zero was fired several times\n- screen is now arranged correctly even when only bottom or top is defined for it in the configuration\n- Now possible to call play() in an onError handler: http://flowplayer.org/forum/8/12939\n- Does not throw an error if the player cannot persist the volume on the client computer: http://flowplayer.org/forum/8/13286#post-13495\n- Triggering fullscreen does not pause the player in IE\n- The play button overlay no longer has a gap between it's pieces when a label is used: http://flowplayer.org/forum/8/14250\n- clip.update() JS call now resets the duration\n- a label configured for the play button overlay did not work in the commercial version\n\n3.0.3\n-----\n- fixed cuepoint firing: Does not skip cuepoints any more\n- Plugins can now be loaded from a different domain to the flowplayer.swf\n- Specifying a clip to play by just using the 'clip' node in the configuration was not working, a playlist definition was required. This is now fixed.\n- Fixed: A playlist with different providers caused the onMetadata event to fire events with metadata from the previous clip in the playlist. Occurred when moving in the playlist with next() and prev()\n- the opacity setting now works with the logo\n- fadeOut() call to the \"screen\" plugin was sending the listenerId and pluginName arguments in wrong order\n- stop(), pause(), resume(), close() no longer return the flowplayer object to JS\n- changing the size of the screen in a onFullscreen listener now always works, there was a bug that caused this to fail occasionally\n- fixed using arbitrary SWFs as plugins\n- the API method setPlaylist() no longer starts playing if autoPlay: true, neither it starts buffering if autoBuffering: true\n- the API method play() now accepts an array of clip objects as an argument, the playlist is replaced with the specified clips and playback starts from the 1st clip\n\n3.0.2\n-----\n- setting play: null now works again\n- pressing the play again button overlay does not open a linkUrl associated with a clip\n- now displays a live feed even when the RTMP server does not send any metadata and the onStart method is not therefore dispatched\n- added onMetaData clip event\n- fixed 'orig' scaling: the player went to 'fit' scaling after coming back from fullscreen. This is now fixed and the original dimensions are preserved in non-fullscreen mode.\n- cuepoint times are now given in milliseconds, the firing precision is 100 ms. All cuepoint times are rounded to the nearest 100 ms value (for example 1120 rounds to 1100) \n- backgroundGradient was drawn over the background image in the canvas and in the content and controlbar plugins. Now it's drawn below the image.\n- added cuepointMultiplier property to clips. This can be used to multiply the time values read from cuepoint metadata embedded into video files.\n- the player's framerate was increased to 24 FPS, makes all animations smoother\n\n3.0.1\n-----\n- Fixed negative cuepoints from common clip. Now these are properly propagated to the clips in playlist.\n- buffering animation is now the same size as the play button overlay\n- commercial version now supports license keys that allows the use of subdomains\n- error messages are now automatically hidden after a 4 second delay. They are also hidden when a new clips\n  starts playing (when onBeforeBegin is fired)\n- added possibility to disable the buffering animation like so: buffering: false\n- pressing the play button overlay does not open a linkUrl associated with a clip\n- license key verification failed if a port number was used in the URL (like in this url: http://mydomain.com:8080/video.html)\n- added audio support, clip has a new \"image\" property\n- workaround for missing \"NetStream.Play.Start\" notfication that was happending with Red5. Because of this issue the video was not shown.\n- commercial version has the possibility to change the zIndex of the logo\n\n3.0.0\n-----\n- Removed security errors that happened when loading images from foreign domains (domains other than the domain of the core SWF).\n  Using a backgroundImage on canvas, in the content plugin, and for the controls is also possible to be loaded\n  from a foreign domain - BUT backgroundRepeat cannot be used for foreign images.\n- Now allows the embedding HTML to script the player even if the player is loaded from another domain.\n- Added a 'live' property to Clips, used for live streams.\n- A player embedded to a foreign domain now loads images, css files and other resources from the domain where the palyer SWF was loaded from. This is to generate shorter embed-codes.\n- Added linkUrl and linkWindow properties to the logo, in commercial version you can set these to point to a linked page. The linked page gets opened\n  when the logo is clicked.  Possible values for linkWindow:\n    * \"_self\" specifies the current frame in the current window.\n    * \"_blank\" specifies a new window.\n    * \"_parent\" specifies the parent of the current frame.\n    * \"_top\" specifies the top-level frame in the current window.\n- Added linkUrl and linkWindow properties to clips. The linked page is opened when the video are is clicked and the corresponding clip has a linkUrl specified.\n- Made the play button overlay and the \"Play again\" button slightly bigger.\n\nRC4\n---\n- Now shows a \"Play again\" button at the end of the video/playlist\n- Commercial version shows a Flowplayer logo if invalidKey was supplied, but the otherwise the player works\n- setting play: null in configuration will disable the play button overlay\n- setting opacity for \"play\" also sets it for the buffering animation\n- Fixed firing of cuepoints too early. Cuepoint firing is now based on stream time and does not rely on timers\n- added onXMPData event listener\n- Should not stop playback too early before the clip is really completed\n- The START event is now delayed so that the metadata is available when the event is fired, METADATA event was removed,\n  new event BEGIN that is dispatched when the playback has been successfully started. Metadata is not normally\n  available when BEGIN is fired. \n\nRC3\n---\n- stopBuffering() now dispatches the onStop event first if the player is playing/paused/buffering at the time of calling it\n- fixed detection of images based on file extensions\n- fixed some issues with having images in the playlist\n- made it possible to autoBuffer next video while showing an image (image without a duration)\n\nRC2\n---\n- fixed: setting the screen height in configuration did not have any effect\n\nRC1\n-----\n- better error message if plugin loading fails, shows the URL used\n- validates our redesigned multidomain license key correctly\n- fix to prevent the play button going visible when the onBufferEmpty event occurs\n- the commercial swf now correctly loads the controls using version information\n- fixed: the play button overlay became invisible with long fadeOutSpeeds\n\nbeta6\n-----\n- removed the onFirstFramePause event\n- playing a clip for the second time caused a doubled sound\n- pausing on first frame did not work on some FLV files\n\nbeta5\n-----\n- logo only uses percentage scaling if it's a SWF file (there is \".swf\" in it's url)\n- context menu now correctly builds up from string entries in configuration\n-always closes the previous connection before starting a new clip\n\nbeta4\n-----\n- now it's possible to load a plugin into the panel without specifying any position/dimensions\n information, the plugin is placed to left: \"50%\", top: \"50%\" and using the plugin DisplayObject's width & height\n- The Flowplayer API was not fully initialized when onLoad was invoked on Flash plugins\n\nbeta3\n-----\n- tweaking logo placement\n- \"play\" did not show up after repeated pause/resume\n- player now loads the latest controls SWF version, right now the latest SWF is called 'flowplayer.controls-3.0.0-beta2.swf'\n\nbeta2\n-----\n- fixed support for RTMP stream groups\n- changed to loop through available fonts in order to find a suitable font also in IE\n- Preloader was broken on IE: When the player SWf was in browser's cache it did not initialize properly\n- Context menu now correctly handles menu items that are configured by their string labels only (not using json objects)\n- fixed custom logo positioning (was moved to the left edge of screen in fullscreen)\n- \"play\" now always follows the position and size of the screen\n- video was stretched below the controls in fullscreen when autoHide: 'never'\n- logo now takes 6.5% of the screen height, width is scaled so that the aspect ratio is preserved\n\nbeta1\n-----\n- First public beta release\n"
  },
  {
    "path": "newscoop/js/flowplayer/example/index.html",
    "content": "<html><head>\n<meta http-equiv=\"content-type\" content=\"text/html; charset=UTF-8\">\n<!-- A minimal Flowplayer setup to get you started -->\n  \n\n\t<!-- \n\t\tinclude flowplayer JavaScript file that does  \n\t\tFlash embedding and provides the Flowplayer API.\n\t-->\n\t<script type=\"text/javascript\" src=\"flowplayer-3.2.4.min.js\"></script>\n\t\n\t<!-- some minimal styling, can be removed -->\n\t<link rel=\"stylesheet\" type=\"text/css\" href=\"style.css\">\n\t\n\t<!-- page title -->\n\t<title>Minimal Flowplayer setup</title>\n\n</head><body>\n\n\t<div id=\"page\">\n\t\t\n\t\t<h1>Minimal Flowplayer setup</h1>\n\t\n\t\t<p>View commented source code to get familiar with Flowplayer installation.</p>\n\t\t\n\t\t<!-- this A tag is where your Flowplayer will be placed. it can be anywhere -->\n\t\t<a  \n\t\t\t href=\"http://e1h13.simplecdn.net/flowplayer/flowplayer.flv\"  \n\t\t\t style=\"display:block;width:520px;height:330px\"  \n\t\t\t id=\"player\"> \n\t\t</a> \n\t\n\t\t<!-- this will install flowplayer inside previous A- tag. -->\n\t\t<script>\n\t\t\tflowplayer(\"player\", \"../flowplayer-3.2.5.swf\");\n\t\t</script>\n\t\n\t\t\n\t\t\n\t\t<!-- \n\t\t\tafter this line is purely informational stuff. \n\t\t\tdoes not affect on Flowplayer functionality \n\t\t-->\n\n\t\t<p>\t\t\n\t\t\tIf you are running these examples <strong>locally</strong> and not on some webserver you must edit your \n\t\t\t<a href=\"http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager04.html\">\n\t\t\t\tFlash security settings</a>. \n\t\t</p>\n\t\t\n\t\t<p class=\"less\">\n\t\t\tSelect \"Edit locations\" &gt; \"Add location\" &gt; \"Browse for files\" and select\n\t\t\tflowplayer-x.x.x.swf you just downloaded.\n\t\t</p>\n\t\t\n\t\t\n\t\t<h2>Documentation</h2>\n\t\t\n\t\t<p>\n\t\t\t<a href=\"http://flowplayer.org/documentation/installation/index.html\">Flowplayer installation</a>\n\t\t</p>\n\n\t\t<p>\n\t\t\t<a href=\"http://flowplayer.org/documentation/configuration/index.html\">Flowplayer configuration</a>\n\t\t</p>\n\n\t\t<p>\n\t\t\tSee this identical page on <a href=\"http://flowplayer.org/demos/example/index.htm\">Flowplayer website</a> \n\t\t</p>\n\t\t\n\t</div>\n\t\n\t\n</body></html>\n"
  },
  {
    "path": "newscoop/js/flowplayer/example/style.css",
    "content": "\nbody {\n\tbackground-color:#fff;\t\n\tfont-family:\"Lucida Grande\",\"bitstream vera sans\",\"trebuchet ms\",verdana,arial;\n\ttext-align:center;\n}\n\n#page {\n\tbackground-color:#efefef;\n\twidth:600px;\n\tmargin:50px auto;\n\tpadding:20px 150px 20px 50px;\n\tmin-height:600px;\n\tborder:2px solid #fff;\n\toutline:1px solid #ccc;\n\ttext-align:left;\n}\n\nh1, h2 {\n\tletter-spacing:-1px;\n\tcolor:#2D5AC3;\n\tfont-weight:normal;\t\t\n\tmargin-bottom:-10px;\n}\n\nh1 {\n\tfont-size:22px;\n}\n\nh2 {\n\tfont-size:18px;\n}\n\n.less {\n\tcolor:#999;\n\tfont-size:12px;\n}\n\na {\n\tcolor:#295c72;\t\t\n}\n"
  },
  {
    "path": "newscoop/js/geocoding/country_cens.js",
    "content": "country_centers = {};\ncountry_centers['AD'] = {'lon': 1.60125, 'lat': 42.546888};\ncountry_centers['AE'] = {'lon': 53.9824943542, 'lat': 24.3587446213};\ncountry_centers['AF'] = {'lon': 67.6789455, 'lat': 33.930445};\ncountry_centers['AG'] = {'lon': -61.789423, 'lat': 17.363183};\ncountry_centers['AI'] = {'lon': -63.07213, 'lat': 18.2251195};\ncountry_centers['AL'] = {'lon': 20.181222, 'lat': 41.156986};\ncountry_centers['AM'] = {'lon': 45.1111075226, 'lat': 40.066181};\ncountry_centers['AO'] = {'lon': 17.880669, 'lat': -11.209451};\ncountry_centers['AQ'] = {'lon': 0.0, 'lat': -75.2577165};\ncountry_centers['AR'] = {'lon': -63.5874025, 'lat': -38.4212955};\ncountry_centers['AS'] = {'lon': -170.128693, 'lat': -14.2722975};\ncountry_centers['AT'] = {'lon': 13.349319, 'lat': 47.6975425};\ncountry_centers['AU'] = {'lon': 133.2751545, 'lat': -26.8533875};\ncountry_centers['AW'] = {'lon': -69.9640005, 'lat': 12.5183555};\ncountry_centers['AX'] = {'lon': 19.969902, 'lat': 60.2015265};\ncountry_centers['AZ'] = {'lon': 47.572098, 'lat': 40.362917};\ncountry_centers['BA'] = {'lon': 17.670584, 'lat': 43.8926525};\ncountry_centers['BB'] = {'lon': -59.534649, 'lat': 13.1835505};\ncountry_centers['BD'] = {'lon': 90.351002, 'lat': 23.6876395};\ncountry_centers['BE'] = {'lon': 4.4754025, 'lat': 50.499527};\ncountry_centers['BF'] = {'lon': -1.5567605, 'lat': 12.2418505};\ncountry_centers['BG'] = {'lon': 25.4916665, 'lat': 42.729862};\ncountry_centers['BH'] = {'lon': 50.5593055, 'lat': 26.0397225};\ncountry_centers['BI'] = {'lon': 29.920395, 'lat': -3.387918};\ncountry_centers['BJ'] = {'lon': 2.313138, 'lat': 9.3220475};\ncountry_centers['BL'] = {'lon': -62.834383, 'lat': 17.908314};\ncountry_centers['BM'] = {'lon': -64.7740215, 'lat': 32.312822};\ncountry_centers['BN'] = {'lon': 114.715443, 'lat': 4.525125};\ncountry_centers['BO'] = {'lon': -63.549429, 'lat': -16.28835};\ncountry_centers['BQ'] = {'lon': -68.3043825, 'lat': 12.160842};\ncountry_centers['BR'] = {'lon': -53.1892665, 'lat': -14.2429145};\ncountry_centers['BS'] = {'lon': -76.7098925, 'lat': 24.885993};\ncountry_centers['BT'] = {'lon': 90.4424555, 'lat': 27.515709};\ncountry_centers['BV'] = {'lon': 3.4117375, 'lat': -54.4313525};\ncountry_centers['BW'] = {'lon': 24.680158, 'lat': -22.3440295};\ncountry_centers['BY'] = {'lon': 27.973847, 'lat': 53.711111};\ncountry_centers['BZ'] = {'lon': -88.5009, 'lat': 17.1929285};\ncountry_centers['CA'] = {'lon': -96.8181455, 'lat': 62.393303};\ncountry_centers['CC'] = {'lon': 96.878681, 'lat': -12.1501105};\ncountry_centers['CD'] = {'lon': 21.755028, 'lat': -4.0347885};\ncountry_centers['CF'] = {'lon': 20.941759, 'lat': 6.6140415};\ncountry_centers['CG'] = {'lon': 14.927424, 'lat': -0.6620705};\ncountry_centers['CH'] = {'lon': 8.224472, 'lat': 46.8155135};\ncountry_centers['CI'] = {'lon': -5.5470995, 'lat': 7.5468545};\ncountry_centers['CK'] = {'lon': -159.202896, 'lat': -15.983639};\ncountry_centers['CL'] = {'lon': -87.9367255, 'lat': -36.7119505};\ncountry_centers['CM'] = {'lon': 12.3434395, 'lat': 7.365302};\ncountry_centers['CN'] = {'lon': 104.165802, 'lat': 34.668138};\ncountry_centers['CO'] = {'lon': -74.298973, 'lat': 4.5773165};\ncountry_centers['CR'] = {'lon': -84.2533075, 'lat': 9.624897};\ncountry_centers['CU'] = {'lon': -79.5446015, 'lat': 21.5270625};\ncountry_centers['CV'] = {'lon': -24.014095, 'lat': 16.0026};\ncountry_centers['CW'] = {'lon': -68.945576, 'lat': 12.2092085};\ncountry_centers['CX'] = {'lon': 105.629265, 'lat': -10.4957505};\ncountry_centers['CY'] = {'lon': 33.4354995, 'lat': 35.132513};\ncountry_centers['CZ'] = {'lon': 15.4729614258, 'lat': 49.8174915314};\ncountry_centers['DE'] = {'lon': 10.452764, 'lat': 51.1657065};\ncountry_centers['DJ'] = {'lon': 42.5952225, 'lat': 11.808375};\ncountry_centers['DK'] = {'lon': 11.6172225, 'lat': 56.155403};\ncountry_centers['DM'] = {'lon': -61.36413, 'lat': 15.4167495};\ncountry_centers['DO'] = {'lon': -70.1617435, 'lat': 18.736509};\ncountry_centers['DZ'] = {'lon': 1.65284, 'lat': 28.0268755};\ncountry_centers['EC'] = {'lon': -83.423233, 'lat': -1.7899445};\ncountry_centers['EE'] = {'lon': 25.023778, 'lat': 58.5962085};\ncountry_centers['EG'] = {'lon': 30.246486, 'lat': 26.6963615};\ncountry_centers['EH'] = {'lon': -12.886729, 'lat': 24.221916};\ncountry_centers['ER'] = {'lon': 39.786709, 'lat': 15.1813195};\ncountry_centers['ES'] = {'lon': -6.9271245, 'lat': 35.71527};\ncountry_centers['ET'] = {'lon': 40.493059, 'lat': 9.148086};\ncountry_centers['FI'] = {'lon': 25.5508325, 'lat': 64.9524155};\ncountry_centers['FJ'] = {'lon': 179.352448, 'lat': -16.5780405};\ncountry_centers['FK'] = {'lon': -59.528839, 'lat': -51.800581};\ncountry_centers['FM'] = {'lon': 150.543854, 'lat': 7.450847};\ncountry_centers['FO'] = {'lon': -6.9287915, 'lat': 61.897846};\ncountry_centers['FR'] = {'lon': 2.209667, 'lat': 46.232193};\ncountry_centers['GA'] = {'lon': 11.598909, 'lat': -0.828097};\ncountry_centers['GB'] = {'lon': -3.4322775, 'lat': 55.3759995};\ncountry_centers['GD'] = {'lon': -61.686903, 'lat': 12.1558845};\ncountry_centers['GE'] = {'lon': 43.368055, 'lat': 42.319847};\ncountry_centers['GF'] = {'lon': -53.07823, 'lat': 3.951795};\ncountry_centers['GG'] = {'lon': -2.5957915, 'lat': 49.4685555};\ncountry_centers['GH'] = {'lon': -1.0318195, 'lat': 7.955012};\ncountry_centers['GI'] = {'lon': -5.3484445, 'lat': 36.13611};\ncountry_centers['GL'] = {'lon': -42.1771745, 'lat': 71.702379};\ncountry_centers['GM'] = {'lon': -15.311436, 'lat': 13.4454115};\ncountry_centers['GN'] = {'lon': -11.283845, 'lat': 9.9348865};\ncountry_centers['GP'] = {'lon': -61.2723825, 'lat': 16.1922065};\ncountry_centers['GQ'] = {'lon': 10.3412945, 'lat': 1.6339245};\ncountry_centers['GR'] = {'lon': 23.810417, 'lat': 38.2835275};\ncountry_centers['GS'] = {'lon': -32.1252505, 'lat': -56.724863};\ncountry_centers['GT'] = {'lon': -90.229744, 'lat': 15.776261};\ncountry_centers['GU'] = {'lon': 144.786613, 'lat': 13.446472};\ncountry_centers['GW'] = {'lon': -15.1770285, 'lat': 11.802527};\ncountry_centers['GY'] = {'lon': -58.9325065, 'lat': 4.8663235};\ncountry_centers['HK'] = {'lon': 114.136253, 'lat': 22.356514};\ncountry_centers['HM'] = {'lon': 73.2278405, 'lat': -53.0507085};\ncountry_centers['HN'] = {'lon': -86.2530975, 'lat': 14.7463335};\ncountry_centers['HR'] = {'lon': 16.4603055, 'lat': 44.48732};\ncountry_centers['HT'] = {'lon': -73.045971, 'lat': 19.054426};\ncountry_centers['HU'] = {'lon': 19.5089445, 'lat': 47.1646385};\ncountry_centers['ID'] = {'lon': 118.015568, 'lat': -2.518722};\ncountry_centers['IE'] = {'lon': -8.2404725, 'lat': 53.4197505};\ncountry_centers['IL'] = {'lon': 35.0735413772, 'lat': 31.418388};\ncountry_centers['IM'] = {'lon': -4.555111, 'lat': 54.23782};\ncountry_centers['IN'] = {'lon': 82.794998, 'lat': 21.125681};\ncountry_centers['IO'] = {'lon': 71.876568, 'lat': -6.3531805};\ncountry_centers['IQ'] = {'lon': 43.6859015, 'lat': 33.223737};\ncountry_centers['IR'] = {'lon': 53.682375, 'lat': 32.4206525};\ncountry_centers['IS'] = {'lon': -19.0211695, 'lat': 64.9639415};\ncountry_centers['IT'] = {'lon': 12.564167, 'lat': 41.8739875};\ncountry_centers['JE'] = {'lon': -2.1410555, 'lat': 49.2174455};\ncountry_centers['JM'] = {'lon': -77.2734795, 'lat': 18.115265};\ncountry_centers['JO'] = {'lon': 37.130583, 'lat': 31.276778};\ncountry_centers['JP'] = {'lon': 134.379711, 'lat': 34.886306};\ncountry_centers['KE'] = {'lon': 37.9039685, 'lat': 0.1709455};\ncountry_centers['KG'] = {'lon': 74.779888, 'lat': 41.205528};\ncountry_centers['KH'] = {'lon': 104.98386, 'lat': 12.54775};\ncountry_centers['KI'] = {'lon': 9.670395, 'lat': -3.358734};\ncountry_centers['KM'] = {'lon': 43.8770065, 'lat': -11.875119};\ncountry_centers['KN'] = {'lon': -62.706413, 'lat': 17.2577305};\ncountry_centers['KP'] = {'lon': 127.4953765, 'lat': 40.339693};\ncountry_centers['KR'] = {'lon': 127.7358895, 'lat': 35.9016955};\ncountry_centers['KW'] = {'lon': 47.493515, 'lat': 29.310278};\ncountry_centers['KY'] = {'lon': -80.5800245, 'lat': 19.5123645};\ncountry_centers['KZ'] = {'lon': 66.9022635, 'lat': 48.193764};\ncountry_centers['LA'] = {'lon': 103.8950425, 'lat': 18.205208};\ncountry_centers['LB'] = {'lon': 35.8767355, 'lat': 33.872639};\ncountry_centers['LC'] = {'lon': -60.9741765, 'lat': 13.9040115};\ncountry_centers['LI'] = {'lon': 9.555, 'lat': 47.1646955};\ncountry_centers['LK'] = {'lon': 80.7670975, 'lat': 7.874097};\ncountry_centers['LR'] = {'lon': -9.428598, 'lat': 6.452424};\ncountry_centers['LS'] = {'lon': 28.2474145, 'lat': -29.620511};\ncountry_centers['LT'] = {'lon': 23.906736, 'lat': 55.174112};\ncountry_centers['LU'] = {'lon': 6.131514, 'lat': 49.8157635};\ncountry_centers['LV'] = {'lon': 24.607722, 'lat': 56.8755835};\ncountry_centers['LY'] = {'lon': 17.268816, 'lat': 26.338522};\ncountry_centers['MA'] = {'lon': -7.080168, 'lat': 31.7950715};\ncountry_centers['MC'] = {'lon': 7.4128408432, 'lat': 43.7502975464};\ncountry_centers['MD'] = {'lon': 28.3771945, 'lat': 46.9795265};\ncountry_centers['ME'] = {'lon': 19.4100695, 'lat': 42.7101515};\ncountry_centers['MF'] = {'lon': -63.08288, 'lat': 18.0912925};\ncountry_centers['MG'] = {'lon': 46.854328, 'lat': -18.7771925};\ncountry_centers['MH'] = {'lon': 168.728363, 'lat': 10.1038195};\ncountry_centers['MK'] = {'lon': 21.751417, 'lat': 41.611};\ncountry_centers['ML'] = {'lon': -3.998823, 'lat': 17.5797575};\ncountry_centers['MM'] = {'lon': 96.6830295, 'lat': 19.163916};\ncountry_centers['MN'] = {'lon': 103.8369865, 'lat': 46.8609445};\ncountry_centers['MO'] = {'lon': 113.54739, 'lat': 22.2013615};\ncountry_centers['MP'] = {'lon': 145.488121, 'lat': 16.4562225};\ncountry_centers['MQ'] = {'lon': -61.022814, 'lat': 14.6355405};\ncountry_centers['MR'] = {'lon': -10.9470975, 'lat': 21.00681};\ncountry_centers['MS'] = {'lon': -62.194502, 'lat': 16.744168};\ncountry_centers['MT'] = {'lon': 14.3846115, 'lat': 35.9461515};\ncountry_centers['MU'] = {'lon': 60.0064485, 'lat': -15.422486};\ncountry_centers['MV'] = {'lon': 73.165249, 'lat': 3.2028335};\ncountry_centers['MW'] = {'lon': 34.2953855, 'lat': -13.2462705};\ncountry_centers['MX'] = {'lon': -102.5786705, 'lat': 23.6248125};\ncountry_centers['MY'] = {'lon': 109.455475, 'lat': 4.1093195};\ncountry_centers['MZ'] = {'lon': 35.530157, 'lat': -18.670284};\ncountry_centers['NA'] = {'lon': 18.4861655, 'lat': -22.965662};\ncountry_centers['NC'] = {'lon': 165.846901, 'lat': -21.123889};\ncountry_centers['NE'] = {'lon': 8.0809465, 'lat': 17.6110005};\ncountry_centers['NF'] = {'lon': 167.9581905, 'lat': -29.0225565};\ncountry_centers['NG'] = {'lon': 8.6742525, 'lat': 9.0845755};\ncountry_centers['NI'] = {'lon': -85.2142985, 'lat': 12.866726};\ncountry_centers['NL'] = {'lon': 5.29525, 'lat': 52.133057};\ncountry_centers['NO'] = {'lon': 17.797861, 'lat': 64.5830135};\ncountry_centers['NP'] = {'lon': 84.1278035, 'lat': 28.395056};\ncountry_centers['NR'] = {'lon': 166.9221575, 'lat': -0.5283195};\ncountry_centers['NZ'] = {'lon': 173.35775, 'lat': -40.837847};\ncountry_centers['OM'] = {'lon': 55.859291, 'lat': 21.516861};\ncountry_centers['PA'] = {'lon': -80.1127775, 'lat': 8.41771};\ncountry_centers['PE'] = {'lon': -75.002365, 'lat': -9.1813525};\ncountry_centers['PF'] = {'lon': -143.903496, 'lat': -17.7785725};\ncountry_centers['PG'] = {'lon': 148.4031525, 'lat': -6.48825};\ncountry_centers['PH'] = {'lon': 121.7665405, 'lat': 12.8819585};\ncountry_centers['PK'] = {'lon': 69.359766, 'lat': 30.441861};\ncountry_centers['PL'] = {'lon': 19.1368745, 'lat': 51.9227505};\ncountry_centers['PM'] = {'lon': -56.3368245, 'lat': 46.9661635};\ncountry_centers['PN'] = {'lon': -126.559643, 'lat': -24.494215};\ncountry_centers['PR'] = {'lon': -66.5927315, 'lat': 18.2232855};\ncountry_centers['PS'] = {'lon': 34.8949775696, 'lat': 31.8814640045};\ncountry_centers['PT'] = {'lon': -7.839319, 'lat': 39.5631525};\ncountry_centers['PW'] = {'lon': 134.388466, 'lat': 7.3091945};\ncountry_centers['PY'] = {'lon': -58.453215, 'lat': -23.4513895};\ncountry_centers['QA'] = {'lon': 51.19693, 'lat': 25.318833};\ncountry_centers['RE'] = {'lon': 55.5320625, 'lat': -21.114533};\ncountry_centers['RO'] = {'lon': 24.9805135, 'lat': 45.9471245};\ncountry_centers['RS'] = {'lon': 20.9110088348, 'lat': 44.2068023682};\ncountry_centers['RU'] = {'lon': 105.1, 'lat': 61.5231115};\ncountry_centers['RW'] = {'lon': 29.876376, 'lat': -1.94708};\ncountry_centers['SA'] = {'lon': 45.0811385, 'lat': 23.8862915};\ncountry_centers['SB'] = {'lon': 161.2447355, 'lat': -9.220083};\ncountry_centers['SC'] = {'lon': 51.242138, 'lat': -7.018792};\ncountry_centers['SD'] = {'lon': 30.209488, 'lat': 13.3166395};\ncountry_centers['SE'] = {'lon': 17.6397915, 'lat': 62.199806};\ncountry_centers['SG'] = {'lon': 103.822872, 'lat': 1.364917};\ncountry_centers['SH'] = {'lon': -10.0299915, 'lat': -11.953679};\ncountry_centers['SI'] = {'lon': 14.9745415, 'lat': 46.1455285};\ncountry_centers['SJ'] = {'lon': 25.4933615, 'lat': 79.9911955};\ncountry_centers['SK'] = {'lon': 19.709097, 'lat': 48.6656395};\ncountry_centers['SL'] = {'lon': -11.7959345, 'lat': 8.4648055};\ncountry_centers['SM'] = {'lon': 12.458708, 'lat': 43.94886};\ncountry_centers['SN'] = {'lon': -14.4455615, 'lat': 14.499454};\ncountry_centers['SO'] = {'lon': 46.1996155, 'lat': 5.152149};\ncountry_centers['SR'] = {'lon': -56.032028, 'lat': 3.9178455};\ncountry_centers['ST'] = {'lon': 6.968272, 'lat': 0.8630445};\ncountry_centers['SV'] = {'lon': -88.910412, 'lat': 13.796873};\ncountry_centers['SY'] = {'lon': 39.0561255, 'lat': 34.8149015};\ncountry_centers['SZ'] = {'lon': 31.4656835, 'lat': -26.5183745};\ncountry_centers['TC'] = {'lon': -71.8037565, 'lat': 21.692252};\ncountry_centers['TD'] = {'lon': 18.738068, 'lat': 15.4457185};\ncountry_centers['TF'] = {'lon': 63.884533, 'lat': -43.762953};\ncountry_centers['TG'] = {'lon': 0.8296845, 'lat': 8.621697};\ncountry_centers['TH'] = {'lon': 101.4925155, 'lat': 13.036597};\ncountry_centers['TJ'] = {'lon': 71.26218, 'lat': 38.8581945};\ncountry_centers['TK'] = {'lon': -171.855880737, 'lat': -8.96736240387};\ncountry_centers['TL'] = {'lon': 125.677345276, 'lat': -8.7997303009};\ncountry_centers['TM'] = {'lon': 56.6844575, 'lat': 41.0783465};\ncountry_centers['TN'] = {'lon': 9.5615555, 'lat': 33.892166};\ncountry_centers['TO'] = {'lon': -174.794922, 'lat': -18.5090225};\ncountry_centers['TR'] = {'lon': 35.25175, 'lat': 38.9615155};\ncountry_centers['TT'] = {'lon': -61.220852, 'lat': 10.6872235};\ncountry_centers['TV'] = {'lon': 177.964073, 'lat': -8.2215705};\ncountry_centers['TW'] = {'lon': 120.767567, 'lat': 23.600028};\ncountry_centers['TZ'] = {'lon': 34.885195, 'lat': -6.368216};\ncountry_centers['UA'] = {'lon': 31.1681395, 'lat': 48.3798885};\ncountry_centers['UG'] = {'lon': 32.3046505, 'lat': 1.3651885};\ncountry_centers['UM'] = {'lon': -125.8225405, 'lat': 9.015995};\ncountry_centers['US'] = {'lon': -95.844032, 'lat': 36.966428};\ncountry_centers['UY'] = {'lon': -55.7583275, 'lat': -32.53152};\ncountry_centers['UZ'] = {'lon': 64.5644585, 'lat': 41.3797225};\ncountry_centers['VA'] = {'lon': 12.452041124, 'lat': 41.903858956};\ncountry_centers['VC'] = {'lon': -61.2865675, 'lat': 12.9794225};\ncountry_centers['VE'] = {'lon': -66.5789265, 'lat': 6.414107};\ncountry_centers['VG'] = {'lon': -64.4920655, 'lat': 18.5736005};\ncountry_centers['VI'] = {'lon': -64.8017045, 'lat': 18.036736};\ncountry_centers['VN'] = {'lon': 105.806431, 'lat': 15.9742225};\ncountry_centers['VU'] = {'lon': 168.214882, 'lat': -16.6611945};\ncountry_centers['WF'] = {'lon': -177.1677855, 'lat': -13.7714255};\ncountry_centers['WS'] = {'lon': -172.10717, 'lat': -13.736573};\ncountry_centers['XK'] = {'lon': 20.8904161957, 'lat': 42.5623095913};\ncountry_centers['YE'] = {'lon': 48.5315285, 'lat': 15.556708};\ncountry_centers['YT'] = {'lon': 45.165455, 'lat': -12.8245115};\ncountry_centers['ZA'] = {'lon': 24.676997, 'lat': -28.48322};\ncountry_centers['ZM'] = {'lon': 27.8525375, 'lat': -13.1519165};\ncountry_centers['ZW'] = {'lon': 29.1466665, 'lat': -19.0132865};\n"
  },
  {
    "path": "newscoop/js/geocoding/country_codes.js",
    "content": "var country_codes_alpha_2 = [];\ncountry_codes_alpha_2.push('AF');\ncountry_codes_alpha_2.push('AX');\ncountry_codes_alpha_2.push('AL');\ncountry_codes_alpha_2.push('DZ');\ncountry_codes_alpha_2.push('AS');\ncountry_codes_alpha_2.push('AD');\ncountry_codes_alpha_2.push('AO');\ncountry_codes_alpha_2.push('AI');\ncountry_codes_alpha_2.push('AQ');\ncountry_codes_alpha_2.push('AG');\ncountry_codes_alpha_2.push('AR');\ncountry_codes_alpha_2.push('AM');\ncountry_codes_alpha_2.push('AW');\ncountry_codes_alpha_2.push('AU');\ncountry_codes_alpha_2.push('AT');\ncountry_codes_alpha_2.push('AZ');\ncountry_codes_alpha_2.push('BS');\ncountry_codes_alpha_2.push('BH');\ncountry_codes_alpha_2.push('BD');\ncountry_codes_alpha_2.push('BB');\ncountry_codes_alpha_2.push('BY');\ncountry_codes_alpha_2.push('BE');\ncountry_codes_alpha_2.push('BZ');\ncountry_codes_alpha_2.push('BJ');\ncountry_codes_alpha_2.push('BM');\ncountry_codes_alpha_2.push('BT');\ncountry_codes_alpha_2.push('BO');\ncountry_codes_alpha_2.push('BA');\ncountry_codes_alpha_2.push('BW');\ncountry_codes_alpha_2.push('BV');\ncountry_codes_alpha_2.push('BR');\ncountry_codes_alpha_2.push('IO');\ncountry_codes_alpha_2.push('BN');\ncountry_codes_alpha_2.push('BG');\ncountry_codes_alpha_2.push('BF');\ncountry_codes_alpha_2.push('BI');\ncountry_codes_alpha_2.push('KH');\ncountry_codes_alpha_2.push('CM');\ncountry_codes_alpha_2.push('CA');\ncountry_codes_alpha_2.push('CV');\ncountry_codes_alpha_2.push('KY');\ncountry_codes_alpha_2.push('CF');\ncountry_codes_alpha_2.push('TD');\ncountry_codes_alpha_2.push('CL');\ncountry_codes_alpha_2.push('CN');\ncountry_codes_alpha_2.push('CX');\ncountry_codes_alpha_2.push('CC');\ncountry_codes_alpha_2.push('CO');\ncountry_codes_alpha_2.push('KM');\ncountry_codes_alpha_2.push('CG');\ncountry_codes_alpha_2.push('CD');\ncountry_codes_alpha_2.push('CK');\ncountry_codes_alpha_2.push('CR');\ncountry_codes_alpha_2.push('CI');\ncountry_codes_alpha_2.push('HR');\ncountry_codes_alpha_2.push('CU');\ncountry_codes_alpha_2.push('CY');\ncountry_codes_alpha_2.push('CZ');\ncountry_codes_alpha_2.push('DK');\ncountry_codes_alpha_2.push('DJ');\ncountry_codes_alpha_2.push('DM');\ncountry_codes_alpha_2.push('DO');\ncountry_codes_alpha_2.push('EC');\ncountry_codes_alpha_2.push('EG');\ncountry_codes_alpha_2.push('SV');\ncountry_codes_alpha_2.push('GQ');\ncountry_codes_alpha_2.push('ER');\ncountry_codes_alpha_2.push('EE');\ncountry_codes_alpha_2.push('ET');\ncountry_codes_alpha_2.push('FK');\ncountry_codes_alpha_2.push('FO');\ncountry_codes_alpha_2.push('FJ');\ncountry_codes_alpha_2.push('FI');\ncountry_codes_alpha_2.push('FR');\ncountry_codes_alpha_2.push('GF');\ncountry_codes_alpha_2.push('PF');\ncountry_codes_alpha_2.push('TF');\ncountry_codes_alpha_2.push('GA');\ncountry_codes_alpha_2.push('GM');\ncountry_codes_alpha_2.push('GE');\ncountry_codes_alpha_2.push('DE');\ncountry_codes_alpha_2.push('GH');\ncountry_codes_alpha_2.push('GI');\ncountry_codes_alpha_2.push('GR');\ncountry_codes_alpha_2.push('GL');\ncountry_codes_alpha_2.push('GD');\ncountry_codes_alpha_2.push('GP');\ncountry_codes_alpha_2.push('GU');\ncountry_codes_alpha_2.push('GT');\ncountry_codes_alpha_2.push('GG');\ncountry_codes_alpha_2.push('GN');\ncountry_codes_alpha_2.push('GW');\ncountry_codes_alpha_2.push('GY');\ncountry_codes_alpha_2.push('HT');\ncountry_codes_alpha_2.push('HM');\ncountry_codes_alpha_2.push('VA');\ncountry_codes_alpha_2.push('HN');\ncountry_codes_alpha_2.push('HK');\ncountry_codes_alpha_2.push('HU');\ncountry_codes_alpha_2.push('IS');\ncountry_codes_alpha_2.push('IN');\ncountry_codes_alpha_2.push('ID');\ncountry_codes_alpha_2.push('IR');\ncountry_codes_alpha_2.push('IQ');\ncountry_codes_alpha_2.push('IE');\ncountry_codes_alpha_2.push('IM');\ncountry_codes_alpha_2.push('IL');\ncountry_codes_alpha_2.push('IT');\ncountry_codes_alpha_2.push('JM');\ncountry_codes_alpha_2.push('JP');\ncountry_codes_alpha_2.push('JE');\ncountry_codes_alpha_2.push('JO');\ncountry_codes_alpha_2.push('KZ');\ncountry_codes_alpha_2.push('KE');\ncountry_codes_alpha_2.push('KI');\ncountry_codes_alpha_2.push('KP');\ncountry_codes_alpha_2.push('KR');\ncountry_codes_alpha_2.push('KW');\ncountry_codes_alpha_2.push('KG');\ncountry_codes_alpha_2.push('LA');\ncountry_codes_alpha_2.push('LV');\ncountry_codes_alpha_2.push('LB');\ncountry_codes_alpha_2.push('LS');\ncountry_codes_alpha_2.push('LR');\ncountry_codes_alpha_2.push('LY');\ncountry_codes_alpha_2.push('LI');\ncountry_codes_alpha_2.push('LT');\ncountry_codes_alpha_2.push('LU');\ncountry_codes_alpha_2.push('MO');\ncountry_codes_alpha_2.push('MK');\ncountry_codes_alpha_2.push('MG');\ncountry_codes_alpha_2.push('MW');\ncountry_codes_alpha_2.push('MY');\ncountry_codes_alpha_2.push('MV');\ncountry_codes_alpha_2.push('ML');\ncountry_codes_alpha_2.push('MT');\ncountry_codes_alpha_2.push('MH');\ncountry_codes_alpha_2.push('MQ');\ncountry_codes_alpha_2.push('MR');\ncountry_codes_alpha_2.push('MU');\ncountry_codes_alpha_2.push('YT');\ncountry_codes_alpha_2.push('MX');\ncountry_codes_alpha_2.push('FM');\ncountry_codes_alpha_2.push('MD');\ncountry_codes_alpha_2.push('MC');\ncountry_codes_alpha_2.push('MN');\ncountry_codes_alpha_2.push('ME');\ncountry_codes_alpha_2.push('MS');\ncountry_codes_alpha_2.push('MA');\ncountry_codes_alpha_2.push('MZ');\ncountry_codes_alpha_2.push('MM');\ncountry_codes_alpha_2.push('NA');\ncountry_codes_alpha_2.push('NR');\ncountry_codes_alpha_2.push('NP');\ncountry_codes_alpha_2.push('NL');\ncountry_codes_alpha_2.push('AN');\ncountry_codes_alpha_2.push('NC');\ncountry_codes_alpha_2.push('NZ');\ncountry_codes_alpha_2.push('NI');\ncountry_codes_alpha_2.push('NE');\ncountry_codes_alpha_2.push('NG');\ncountry_codes_alpha_2.push('NU');\ncountry_codes_alpha_2.push('NF');\ncountry_codes_alpha_2.push('MP');\ncountry_codes_alpha_2.push('NO');\ncountry_codes_alpha_2.push('OM');\ncountry_codes_alpha_2.push('PK');\ncountry_codes_alpha_2.push('PW');\ncountry_codes_alpha_2.push('PS');\ncountry_codes_alpha_2.push('PA');\ncountry_codes_alpha_2.push('PG');\ncountry_codes_alpha_2.push('PY');\ncountry_codes_alpha_2.push('PE');\ncountry_codes_alpha_2.push('PH');\ncountry_codes_alpha_2.push('PN');\ncountry_codes_alpha_2.push('PL');\ncountry_codes_alpha_2.push('PT');\ncountry_codes_alpha_2.push('PR');\ncountry_codes_alpha_2.push('QA');\ncountry_codes_alpha_2.push('RE');\ncountry_codes_alpha_2.push('RO');\ncountry_codes_alpha_2.push('RU');\ncountry_codes_alpha_2.push('RW');\ncountry_codes_alpha_2.push('BL');\ncountry_codes_alpha_2.push('SH');\ncountry_codes_alpha_2.push('KN');\ncountry_codes_alpha_2.push('LC');\ncountry_codes_alpha_2.push('MF');\ncountry_codes_alpha_2.push('PM');\ncountry_codes_alpha_2.push('VC');\ncountry_codes_alpha_2.push('WS');\ncountry_codes_alpha_2.push('SM');\ncountry_codes_alpha_2.push('ST');\ncountry_codes_alpha_2.push('SA');\ncountry_codes_alpha_2.push('SN');\ncountry_codes_alpha_2.push('RS');\ncountry_codes_alpha_2.push('SC');\ncountry_codes_alpha_2.push('SL');\ncountry_codes_alpha_2.push('SG');\ncountry_codes_alpha_2.push('SK');\ncountry_codes_alpha_2.push('SI');\ncountry_codes_alpha_2.push('SB');\ncountry_codes_alpha_2.push('SO');\ncountry_codes_alpha_2.push('ZA');\ncountry_codes_alpha_2.push('GS');\ncountry_codes_alpha_2.push('ES');\ncountry_codes_alpha_2.push('LK');\ncountry_codes_alpha_2.push('SD');\ncountry_codes_alpha_2.push('SR');\ncountry_codes_alpha_2.push('SJ');\ncountry_codes_alpha_2.push('SZ');\ncountry_codes_alpha_2.push('SE');\ncountry_codes_alpha_2.push('CH');\ncountry_codes_alpha_2.push('SY');\ncountry_codes_alpha_2.push('TW');\ncountry_codes_alpha_2.push('TJ');\ncountry_codes_alpha_2.push('TZ');\ncountry_codes_alpha_2.push('TH');\ncountry_codes_alpha_2.push('TL');\ncountry_codes_alpha_2.push('TG');\ncountry_codes_alpha_2.push('TK');\ncountry_codes_alpha_2.push('TO');\ncountry_codes_alpha_2.push('TT');\ncountry_codes_alpha_2.push('TN');\ncountry_codes_alpha_2.push('TR');\ncountry_codes_alpha_2.push('TM');\ncountry_codes_alpha_2.push('TC');\ncountry_codes_alpha_2.push('TV');\ncountry_codes_alpha_2.push('UG');\ncountry_codes_alpha_2.push('UA');\ncountry_codes_alpha_2.push('AE');\ncountry_codes_alpha_2.push('GB');\ncountry_codes_alpha_2.push('US');\ncountry_codes_alpha_2.push('UM');\ncountry_codes_alpha_2.push('UY');\ncountry_codes_alpha_2.push('UZ');\ncountry_codes_alpha_2.push('VU');\ncountry_codes_alpha_2.push('VE');\ncountry_codes_alpha_2.push('VN');\ncountry_codes_alpha_2.push('VG');\ncountry_codes_alpha_2.push('VI');\ncountry_codes_alpha_2.push('WF');\ncountry_codes_alpha_2.push('EH');\ncountry_codes_alpha_2.push('YE');\ncountry_codes_alpha_2.push('ZM');\ncountry_codes_alpha_2.push('ZW');\nvar country_codes_alpha_2_countries = {};\ncountry_codes_alpha_2_countries['AF'] = 'Afghanistan';\ncountry_codes_alpha_2_countries['AX'] = 'Aland Islands / Åland Islands';\ncountry_codes_alpha_2_countries['AL'] = 'Albania';\ncountry_codes_alpha_2_countries['DZ'] = 'Algeria';\ncountry_codes_alpha_2_countries['AS'] = 'American Samoa';\ncountry_codes_alpha_2_countries['AD'] = 'Andorra';\ncountry_codes_alpha_2_countries['AO'] = 'Angola';\ncountry_codes_alpha_2_countries['AI'] = 'Anguilla';\ncountry_codes_alpha_2_countries['AQ'] = 'Antarctica';\ncountry_codes_alpha_2_countries['AG'] = 'Antigua and Barbuda';\ncountry_codes_alpha_2_countries['AR'] = 'Argentina';\ncountry_codes_alpha_2_countries['AM'] = 'Armenia';\ncountry_codes_alpha_2_countries['AW'] = 'Aruba';\ncountry_codes_alpha_2_countries['AU'] = 'Australia';\ncountry_codes_alpha_2_countries['AT'] = 'Austria';\ncountry_codes_alpha_2_countries['AZ'] = 'Azerbaijan';\ncountry_codes_alpha_2_countries['BS'] = 'Bahamas';\ncountry_codes_alpha_2_countries['BH'] = 'Bahrain';\ncountry_codes_alpha_2_countries['BD'] = 'Bangladesh';\ncountry_codes_alpha_2_countries['BB'] = 'Barbados';\ncountry_codes_alpha_2_countries['BY'] = 'Belarus';\ncountry_codes_alpha_2_countries['BE'] = 'Belgium';\ncountry_codes_alpha_2_countries['BZ'] = 'Belize';\ncountry_codes_alpha_2_countries['BJ'] = 'Benin';\ncountry_codes_alpha_2_countries['BM'] = 'Bermuda';\ncountry_codes_alpha_2_countries['BT'] = 'Bhutan';\ncountry_codes_alpha_2_countries['BO'] = 'Bolivia, Plurinational State of';\ncountry_codes_alpha_2_countries['BA'] = 'Bosnia and Herzegovina';\ncountry_codes_alpha_2_countries['BW'] = 'Botswana';\ncountry_codes_alpha_2_countries['BV'] = 'Bouvet Island';\ncountry_codes_alpha_2_countries['BR'] = 'Brazil';\ncountry_codes_alpha_2_countries['IO'] = 'British Indian Ocean Territory';\ncountry_codes_alpha_2_countries['BN'] = 'Brunei Darussalam';\ncountry_codes_alpha_2_countries['BG'] = 'Bulgaria';\ncountry_codes_alpha_2_countries['BF'] = 'Burkina Faso';\ncountry_codes_alpha_2_countries['BI'] = 'Burundi';\ncountry_codes_alpha_2_countries['KH'] = 'Cambodia';\ncountry_codes_alpha_2_countries['CM'] = 'Cameroon';\ncountry_codes_alpha_2_countries['CA'] = 'Canada';\ncountry_codes_alpha_2_countries['CV'] = 'Cape Verde';\ncountry_codes_alpha_2_countries['KY'] = 'Cayman Islands';\ncountry_codes_alpha_2_countries['CF'] = 'Central African Republic';\ncountry_codes_alpha_2_countries['TD'] = 'Chad';\ncountry_codes_alpha_2_countries['CL'] = 'Chile';\ncountry_codes_alpha_2_countries['CN'] = 'China';\ncountry_codes_alpha_2_countries['CX'] = 'Christmas Island';\ncountry_codes_alpha_2_countries['CC'] = 'Cocos (Keeling) Islands';\ncountry_codes_alpha_2_countries['CO'] = 'Colombia';\ncountry_codes_alpha_2_countries['KM'] = 'Comoros';\ncountry_codes_alpha_2_countries['CG'] = 'Congo';\ncountry_codes_alpha_2_countries['CD'] = 'Congo, the Democratic Republic of the';\ncountry_codes_alpha_2_countries['CK'] = 'Cook Islands';\ncountry_codes_alpha_2_countries['CR'] = 'Costa Rica';\ncountry_codes_alpha_2_countries['CI'] = 'Cote d\\'Ivoire / Côte d\\'Ivoire';\ncountry_codes_alpha_2_countries['HR'] = 'Croatia';\ncountry_codes_alpha_2_countries['CU'] = 'Cuba';\ncountry_codes_alpha_2_countries['CY'] = 'Cyprus';\ncountry_codes_alpha_2_countries['CZ'] = 'Czech Republic';\ncountry_codes_alpha_2_countries['DK'] = 'Denmark';\ncountry_codes_alpha_2_countries['DJ'] = 'Djibouti';\ncountry_codes_alpha_2_countries['DM'] = 'Dominica';\ncountry_codes_alpha_2_countries['DO'] = 'Dominican Republic';\ncountry_codes_alpha_2_countries['EC'] = 'Ecuador';\ncountry_codes_alpha_2_countries['EG'] = 'Egypt';\ncountry_codes_alpha_2_countries['SV'] = 'El Salvador';\ncountry_codes_alpha_2_countries['GQ'] = 'Equatorial Guinea';\ncountry_codes_alpha_2_countries['ER'] = 'Eritrea';\ncountry_codes_alpha_2_countries['EE'] = 'Estonia';\ncountry_codes_alpha_2_countries['ET'] = 'Ethiopia';\ncountry_codes_alpha_2_countries['FK'] = 'Falkland Islands (Malvinas)';\ncountry_codes_alpha_2_countries['FO'] = 'Faroe Islands';\ncountry_codes_alpha_2_countries['FJ'] = 'Fiji';\ncountry_codes_alpha_2_countries['FI'] = 'Finland';\ncountry_codes_alpha_2_countries['FR'] = 'France';\ncountry_codes_alpha_2_countries['GF'] = 'French Guiana';\ncountry_codes_alpha_2_countries['PF'] = 'French Polynesia';\ncountry_codes_alpha_2_countries['TF'] = 'French Southern Territories';\ncountry_codes_alpha_2_countries['GA'] = 'Gabon';\ncountry_codes_alpha_2_countries['GM'] = 'Gambia';\ncountry_codes_alpha_2_countries['GE'] = 'Georgia';\ncountry_codes_alpha_2_countries['DE'] = 'Germany';\ncountry_codes_alpha_2_countries['GH'] = 'Ghana';\ncountry_codes_alpha_2_countries['GI'] = 'Gibraltar';\ncountry_codes_alpha_2_countries['GR'] = 'Greece';\ncountry_codes_alpha_2_countries['GL'] = 'Greenland';\ncountry_codes_alpha_2_countries['GD'] = 'Grenada';\ncountry_codes_alpha_2_countries['GP'] = 'Guadeloupe';\ncountry_codes_alpha_2_countries['GU'] = 'Guam';\ncountry_codes_alpha_2_countries['GT'] = 'Guatemala';\ncountry_codes_alpha_2_countries['GG'] = 'Guernsey';\ncountry_codes_alpha_2_countries['GN'] = 'Guinea';\ncountry_codes_alpha_2_countries['GW'] = 'Guinea-Bissau';\ncountry_codes_alpha_2_countries['GY'] = 'Guyana';\ncountry_codes_alpha_2_countries['HT'] = 'Haiti';\ncountry_codes_alpha_2_countries['HM'] = 'Heard Island and McDonald Islands';\ncountry_codes_alpha_2_countries['VA'] = 'Holy See (Vatican City State)';\ncountry_codes_alpha_2_countries['HN'] = 'Honduras';\ncountry_codes_alpha_2_countries['HK'] = 'Hong Kong';\ncountry_codes_alpha_2_countries['HU'] = 'Hungary';\ncountry_codes_alpha_2_countries['IS'] = 'Iceland';\ncountry_codes_alpha_2_countries['IN'] = 'India';\ncountry_codes_alpha_2_countries['ID'] = 'Indonesia';\ncountry_codes_alpha_2_countries['IR'] = 'Iran, Islamic Republic of';\ncountry_codes_alpha_2_countries['IQ'] = 'Iraq';\ncountry_codes_alpha_2_countries['IE'] = 'Ireland';\ncountry_codes_alpha_2_countries['IM'] = 'Isle of Man';\ncountry_codes_alpha_2_countries['IL'] = 'Israel';\ncountry_codes_alpha_2_countries['IT'] = 'Italy';\ncountry_codes_alpha_2_countries['JM'] = 'Jamaica';\ncountry_codes_alpha_2_countries['JP'] = 'Japan';\ncountry_codes_alpha_2_countries['JE'] = 'Jersey';\ncountry_codes_alpha_2_countries['JO'] = 'Jordan';\ncountry_codes_alpha_2_countries['KZ'] = 'Kazakhstan';\ncountry_codes_alpha_2_countries['KE'] = 'Kenya';\ncountry_codes_alpha_2_countries['KI'] = 'Kiribati';\ncountry_codes_alpha_2_countries['KP'] = 'Korea, Democratic People\\'s Republic of';\ncountry_codes_alpha_2_countries['KR'] = 'Korea, Republic of';\ncountry_codes_alpha_2_countries['KW'] = 'Kuwait';\ncountry_codes_alpha_2_countries['KG'] = 'Kyrgyzstan';\ncountry_codes_alpha_2_countries['LA'] = 'Lao People\\'s Democratic Republic';\ncountry_codes_alpha_2_countries['LV'] = 'Latvia';\ncountry_codes_alpha_2_countries['LB'] = 'Lebanon';\ncountry_codes_alpha_2_countries['LS'] = 'Lesotho';\ncountry_codes_alpha_2_countries['LR'] = 'Liberia';\ncountry_codes_alpha_2_countries['LY'] = 'Libyan Arab Jamahiriya';\ncountry_codes_alpha_2_countries['LI'] = 'Liechtenstein';\ncountry_codes_alpha_2_countries['LT'] = 'Lithuania';\ncountry_codes_alpha_2_countries['LU'] = 'Luxembourg';\ncountry_codes_alpha_2_countries['MO'] = 'Macao';\ncountry_codes_alpha_2_countries['MK'] = 'Macedonia, the former Yugoslav Republic of';\ncountry_codes_alpha_2_countries['MG'] = 'Madagascar';\ncountry_codes_alpha_2_countries['MW'] = 'Malawi';\ncountry_codes_alpha_2_countries['MY'] = 'Malaysia';\ncountry_codes_alpha_2_countries['MV'] = 'Maldives';\ncountry_codes_alpha_2_countries['ML'] = 'Mali';\ncountry_codes_alpha_2_countries['MT'] = 'Malta';\ncountry_codes_alpha_2_countries['MH'] = 'Marshall Islands';\ncountry_codes_alpha_2_countries['MQ'] = 'Martinique';\ncountry_codes_alpha_2_countries['MR'] = 'Mauritania';\ncountry_codes_alpha_2_countries['MU'] = 'Mauritius';\ncountry_codes_alpha_2_countries['YT'] = 'Mayotte';\ncountry_codes_alpha_2_countries['MX'] = 'Mexico';\ncountry_codes_alpha_2_countries['FM'] = 'Micronesia, Federated States of';\ncountry_codes_alpha_2_countries['MD'] = 'Moldova, Republic of';\ncountry_codes_alpha_2_countries['MC'] = 'Monaco';\ncountry_codes_alpha_2_countries['MN'] = 'Mongolia';\ncountry_codes_alpha_2_countries['ME'] = 'Montenegro';\ncountry_codes_alpha_2_countries['MS'] = 'Montserrat';\ncountry_codes_alpha_2_countries['MA'] = 'Morocco';\ncountry_codes_alpha_2_countries['MZ'] = 'Mozambique';\ncountry_codes_alpha_2_countries['MM'] = 'Myanmar';\ncountry_codes_alpha_2_countries['NA'] = 'Namibia';\ncountry_codes_alpha_2_countries['NR'] = 'Nauru';\ncountry_codes_alpha_2_countries['NP'] = 'Nepal';\ncountry_codes_alpha_2_countries['NL'] = 'Netherlands';\ncountry_codes_alpha_2_countries['AN'] = 'Netherlands Antilles';\ncountry_codes_alpha_2_countries['NC'] = 'New Caledonia';\ncountry_codes_alpha_2_countries['NZ'] = 'New Zealand';\ncountry_codes_alpha_2_countries['NI'] = 'Nicaragua';\ncountry_codes_alpha_2_countries['NE'] = 'Niger';\ncountry_codes_alpha_2_countries['NG'] = 'Nigeria';\ncountry_codes_alpha_2_countries['NU'] = 'Niue';\ncountry_codes_alpha_2_countries['NF'] = 'Norfolk Island';\ncountry_codes_alpha_2_countries['MP'] = 'Northern Mariana Islands';\ncountry_codes_alpha_2_countries['NO'] = 'Norway';\ncountry_codes_alpha_2_countries['OM'] = 'Oman';\ncountry_codes_alpha_2_countries['PK'] = 'Pakistan';\ncountry_codes_alpha_2_countries['PW'] = 'Palau';\ncountry_codes_alpha_2_countries['PS'] = 'Palestinian Territory, Occupied';\ncountry_codes_alpha_2_countries['PA'] = 'Panama';\ncountry_codes_alpha_2_countries['PG'] = 'Papua New Guinea';\ncountry_codes_alpha_2_countries['PY'] = 'Paraguay';\ncountry_codes_alpha_2_countries['PE'] = 'Peru';\ncountry_codes_alpha_2_countries['PH'] = 'Philippines';\ncountry_codes_alpha_2_countries['PN'] = 'Pitcairn';\ncountry_codes_alpha_2_countries['PL'] = 'Poland';\ncountry_codes_alpha_2_countries['PT'] = 'Portugal';\ncountry_codes_alpha_2_countries['PR'] = 'Puerto Rico';\ncountry_codes_alpha_2_countries['QA'] = 'Qatar';\ncountry_codes_alpha_2_countries['RE'] = 'Reunion / Réunion';\ncountry_codes_alpha_2_countries['RO'] = 'Romania';\ncountry_codes_alpha_2_countries['RU'] = 'Russian Federation';\ncountry_codes_alpha_2_countries['RW'] = 'Rwanda';\ncountry_codes_alpha_2_countries['BL'] = 'Saint Barthélemy';\ncountry_codes_alpha_2_countries['SH'] = 'Saint Helena, Ascension and Tristan da Cunha';\ncountry_codes_alpha_2_countries['KN'] = 'Saint Kitts and Nevis';\ncountry_codes_alpha_2_countries['LC'] = 'Saint Lucia';\ncountry_codes_alpha_2_countries['MF'] = 'Saint Martin (French part)';\ncountry_codes_alpha_2_countries['PM'] = 'Saint Pierre and Miquelon';\ncountry_codes_alpha_2_countries['VC'] = 'Saint Vincent and the Grenadines';\ncountry_codes_alpha_2_countries['WS'] = 'Samoa';\ncountry_codes_alpha_2_countries['SM'] = 'San Marino';\ncountry_codes_alpha_2_countries['ST'] = 'Sao Tome and Principe';\ncountry_codes_alpha_2_countries['SA'] = 'Saudi Arabia';\ncountry_codes_alpha_2_countries['SN'] = 'Senegal';\ncountry_codes_alpha_2_countries['RS'] = 'Serbia';\ncountry_codes_alpha_2_countries['SC'] = 'Seychelles';\ncountry_codes_alpha_2_countries['SL'] = 'Sierra Leone';\ncountry_codes_alpha_2_countries['SG'] = 'Singapore';\ncountry_codes_alpha_2_countries['SK'] = 'Slovakia';\ncountry_codes_alpha_2_countries['SI'] = 'Slovenia';\ncountry_codes_alpha_2_countries['SB'] = 'Solomon Islands';\ncountry_codes_alpha_2_countries['SO'] = 'Somalia';\ncountry_codes_alpha_2_countries['ZA'] = 'South Africa';\ncountry_codes_alpha_2_countries['GS'] = 'South Georgia and the South Sandwich Islands';\ncountry_codes_alpha_2_countries['ES'] = 'Spain';\ncountry_codes_alpha_2_countries['LK'] = 'Sri Lanka';\ncountry_codes_alpha_2_countries['SD'] = 'Sudan';\ncountry_codes_alpha_2_countries['SR'] = 'Suriname';\ncountry_codes_alpha_2_countries['SJ'] = 'Svalbard and Jan Mayen';\ncountry_codes_alpha_2_countries['SZ'] = 'Swaziland';\ncountry_codes_alpha_2_countries['SE'] = 'Sweden';\ncountry_codes_alpha_2_countries['CH'] = 'Switzerland';\ncountry_codes_alpha_2_countries['SY'] = 'Syrian Arab Republic';\ncountry_codes_alpha_2_countries['TW'] = 'Taiwan, Province of China';\ncountry_codes_alpha_2_countries['TJ'] = 'Tajikistan';\ncountry_codes_alpha_2_countries['TZ'] = 'Tanzania, United Republic of';\ncountry_codes_alpha_2_countries['TH'] = 'Thailand';\ncountry_codes_alpha_2_countries['TL'] = 'Timor-Leste';\ncountry_codes_alpha_2_countries['TG'] = 'Togo';\ncountry_codes_alpha_2_countries['TK'] = 'Tokelau';\ncountry_codes_alpha_2_countries['TO'] = 'Tonga';\ncountry_codes_alpha_2_countries['TT'] = 'Trinidad and Tobago';\ncountry_codes_alpha_2_countries['TN'] = 'Tunisia';\ncountry_codes_alpha_2_countries['TR'] = 'Turkey';\ncountry_codes_alpha_2_countries['TM'] = 'Turkmenistan';\ncountry_codes_alpha_2_countries['TC'] = 'Turks and Caicos Islands';\ncountry_codes_alpha_2_countries['TV'] = 'Tuvalu';\ncountry_codes_alpha_2_countries['UG'] = 'Uganda';\ncountry_codes_alpha_2_countries['UA'] = 'Ukraine';\ncountry_codes_alpha_2_countries['AE'] = 'United Arab Emirates';\ncountry_codes_alpha_2_countries['GB'] = 'United Kingdom';\ncountry_codes_alpha_2_countries['US'] = 'United States';\ncountry_codes_alpha_2_countries['UM'] = 'United States Minor Outlying Islands';\ncountry_codes_alpha_2_countries['UY'] = 'Uruguay';\ncountry_codes_alpha_2_countries['UZ'] = 'Uzbekistan';\ncountry_codes_alpha_2_countries['VU'] = 'Vanuatu';\ncountry_codes_alpha_2_countries['VE'] = 'Venezuela, Bolivarian Republic of';\ncountry_codes_alpha_2_countries['VN'] = 'Viet Nam';\ncountry_codes_alpha_2_countries['VG'] = 'Virgin Islands, British';\ncountry_codes_alpha_2_countries['VI'] = 'Virgin Islands, U.S.';\ncountry_codes_alpha_2_countries['WF'] = 'Wallis and Futuna';\ncountry_codes_alpha_2_countries['EH'] = 'Western Sahara';\ncountry_codes_alpha_2_countries['YE'] = 'Yemen';\ncountry_codes_alpha_2_countries['ZM'] = 'Zambia';\ncountry_codes_alpha_2_countries['ZW'] = 'Zimbabwe';\n"
  },
  {
    "path": "newscoop/js/geocoding/geonames/notice.txt",
    "content": "The geo-location search is based on data by GeoNames (used locally)\nand/or by OpenStreetMap (used via MapQuest Nominatim service), see\nhttp://www.geonames.org/\nhttp://www.openstreetmap.org/\nhttp://www.mapquest.com/\n"
  },
  {
    "path": "newscoop/js/geocoding/geonames/search.js",
    "content": "// reading a requested cookie\nvar geo_names = {};\n\ngeo_names.display_strings = {\n    cc: \"+\",\n    city: \"Center map on location\",\n    add_city: \"add location to map\",\n    no_city_was_found: \"Sorry, that place was not found. Check your spelling or search again.\"\n};\n\ngeo_names.set_display_strings = function(local_strings)\n{\n    if (!local_strings) {return;}\n\n    var display_string_names = [\n        \"cc\",\n        \"city\",\n        \"add_city\",\n        \"no_city_was_found\"\n    ];\n\n    var str_count = display_string_names.length;\n    for (var sind = 0; sind < str_count; sind++)\n    {\n        var cur_str_name = display_string_names[sind];\n\n        if (undefined !== local_strings[cur_str_name])\n        {\n            this.display_strings[cur_str_name] = local_strings[cur_str_name];\n        }\n    }\n\n};\n\n// initializes the ajax query on position search\ngeo_names.askForNearCities = function(longitude, latitude, script_dir, results_div)\n{\n    callServer(['Geo_Names', 'FindCitiesByPosition'], [\n        longitude,\n        latitude,\n        ], function(json) {\n            geo_names.gotSearchData(json, results_div);\n        });\n};\n\n// initializes the ajax query on city search\ngeo_names.askForCityLocation = function(city_name, country_code, script_dir, results_div)\n{\n    if (undefined === country_code) {\n       country_code = \"\";\n    }\n\n    callServer(['Geo_Names', 'FindCitiesByName'], [\n        city_name,\n        country_code,\n        ], function(json) {\n            geo_names.gotSearchData(json, results_div);\n        });\n}\n\n// the main action on ajax data retrieval for cities search\ngeo_names.gotSearchData = function (cities, results_div)\n{\n    found_locs = '<table class=\"geonames_result_table\" id=\"geonames_result_table\" cellspacing=\"0\" cellpadding=\"0\">';\n    found_locs += '<thead><tr>';\n    found_locs += '<th class=\"search_res_cc_header\"><span class=\"ui-icon ui-icon-pin-w search_res_cc_header_inner\">' + this.display_strings.cc + '</span></th>'\n    found_locs += '<th class=\"search_res_city_header\">' + this.display_strings.city + '</th>';\n    found_locs += '</tr></thead>';\n    \n    found_locs += '<tbody>';\n    var output_len = cities.length;\n    for (var lind = 0; lind < output_len; lind++)\n    {\n        var one_city = cities[lind];\n        \n        var pop_show_ini = \"\" + one_city.population;\n        var str_rest_len = pop_show_ini.length % 3;\n        var pop_show = \"\";\n        if (0 < str_rest_len)\n        {\n            pop_show = pop_show_ini.substr(0, str_rest_len) + \" \";\n        }\n        var str_parts_count = (pop_show_ini.length - str_rest_len) / 3;\n        if (0 < pop_show_ini.length)\n        {\n            while (true)\n            {\n                pop_show += pop_show_ini.substr(str_rest_len, 3) + \" \";\n                str_rest_len += 3;\n          \n                str_parts_count -= 1;\n                if (0 >= str_parts_count)\n                {\n                    break;\n                }\n            }\n        }\n        else\n        {\n            pop_show = \"0\";\n        }\n        \n        var country_name = \"\";\n        try\n        {\n            country_name = country_codes_alpha_2_countries[one_city.country.toUpperCase()];\n        }\n        catch (e)\n        {\n            country_name = \"\";\n        }\n\n        var show_town_name = one_city.name.replace(/&/gi,\"&amp;\");\n        show_town_name = show_town_name.replace(/</gi,\"&lt;\");\n        show_town_name = show_town_name.replace(/>/gi,\"&gt;\");\n\n        var city_name = show_town_name.replace(/'/gi,\"\\\\'\");\n        var city_name = city_name.replace(/\\\"/gi,\"\\\\'\");\n\n        var copy_text = '';\n        if (one_city['copyright']) {\n            copy_text = \"\\n\" + one_city['copyright'].replace(/\\\"/gi,\"\\\\'\");\n        }\n\n        var title_part = city_name + \" - \" + pop_show + \" - \" + country_name + copy_text;\n        if (one_city.provider && (one_city.provider == 'OSM') && one_city['long_desc']) {\n            title_part = one_city['long_desc'] + \" - \" + country_name + copy_text;\n        }\n\n        var country_link = \"<a href=\\\"#\\\" title=\\\"\" + this.display_strings.add_city + \" - \" + title_part + \"\\\" onClick=\\\"geo_locations.center_lonlat('\" + one_city.longitude + \"', '\" + one_city.latitude + \"'); geo_locations.insert_poi('EPSG:4326', null, '\" + one_city.longitude + \"', '\" + one_city.latitude + \"', '\" + city_name + \"'); return false;\\\"><span class=\\\"geores_cc_icon ui-icon ui-icon-plus\\\"></span><span class=\\\"geores_cc_text\\\">\" + one_city.country.toLowerCase() + \"</span></a>\";\n        var city_link = \"<a href=\\\"#\\\" title=\\\"\" + this.display_strings.city + \" - \" + title_part + \"\\\" onClick=\\\"geo_locations.center_lonlat('\" + one_city.longitude + \"', '\" + one_city.latitude + \"'); return false;\\\" class=\\\"geores_city_text\\\">\" + show_town_name + \"</a>\";\n        \n        found_locs += \"<tr>\";\n        found_locs += \"<td>\" + country_link + \"</td>\";\n        \n        found_locs += \"<td class='search_res_city_column'>\" + city_link + \"</td>\";\n        found_locs += \"</tr>\";\n    \n    }\n    \n    found_locs += '</tbody>';\n    found_locs += \"</table>\";\n    \n    var display_obj = document.getElementById ? document.getElementById(results_div) : null;\n    display_obj.innerHTML = found_locs;\n    \n    showLocation();\n    \n    var use_class = \"search_results\";\n    var rem_class = \"search_results_limit\";\n    var flexi_height = 'auto';\n    if (5 < output_len)\n    {\n        use_class = \"search_results_limit\";\n        rem_class = \"search_results\";\n        flexi_height = 160;\n    }\n    \n    var removal = new RegExp(\"(^|\\\\s)\" + rem_class + \"(\\\\s\" + rem_class + \")*\" + \"(\\\\s|$)\", \"g\");\n    var new_className = display_obj.className.replace(removal, \" \");\n    new_className += \" \" + use_class;\n    new_className = new_className.replace(/\\s\\s+/g, \" \");\n    display_obj.className = new_className;\n    \n    $('.geonames_result_table').dataTable({'sScrollY': flexi_height, 'bScrollCollapse': true, 'sDom': 't', \"iDisplayLength\": 100, \"bJQueryUI\": true, \"aoColumnDefs\": [{ \"bSortable\": false, \"aTargets\": [ 0, 1 ] }], \"aaSorting\": [], \"oLanguage\": {'sEmptyTable': \"<div class=\\\"no_city_found\\\">\" + this.display_strings.no_city_was_found + \"</div>\"}});\n    geo_locations.map_update_side_desc_height();\n\n    return false;\n};\n\n"
  },
  {
    "path": "newscoop/js/geocoding/location_chooser.js",
    "content": "\n// the main object to hold geo-things\nfunction geo_locations_edit () {\n\nthis.obj_name = null;\nthis.editing = true;\n\n// object for popup preview button\nthis.popup_prev_button = null;\n\nthis.set_obj_name = function(name) {\n    this.obj_name = name;\n    if (this.map && this.map.geo_obj) {\n        this.map.geo_obj.obj_name = name;\n    }\n};\n\nthis.get_obj_name = function() {\n    return this.obj_name;\n};\n\n// localization strings\nthis.display_strings = {\n    google_map: \"Google&nbsp;Maps\",\n    mapquest_map: \"MapQuest&nbsp;Open\",\n    openstreet_map: \"OpenStreetMap\",\n    fill_in_map_name: \"fill in map name\",\n    point_markers: \"Point markers\",\n    this_should_not_happen_now: \"problem at point processing, please send error report\",\n    really_to_delete_the_point: \"Really delete this point?\",\n    the_removal_is_from_all_languages: \"The removal is from all language versions of the article.\",\n    point_number: \"Point no.\",\n    fill_in_the_point_description: \"Describe the location...\",\n    edit: \"Edit\",\n    edit_advanced: \"Advanced editing\",\n    center: \"Center\",\n    enable: \"Show\",\n    disable: \"Hide\",\n    remove: \"Delete location\",\n    remove_short: \"Delete\",\n    coordinates: \"Coordinates\",\n    longitude: \"Longitude\",\n    latitude: \"Latitude\",\n    locations_updated: \"Locations updated\",\n    not_filled: \"Some locations do not have filled description\",\n    empty_label_show: \"Fill in location label\",\n    save_anyway: \"Save anyway\",\n    back_to_editing: \"Back to editing\"\n};\n\n// flag saved state\nthis.something_to_save = false;\nthis.main_page_upload = false;\n\n// specifying the article that the map is for\nthis.article_number = 0;\nthis.language_id = 0;\n\n// flags for what has been changed\nthis.map_spec_changed = false;\nthis.poi_order_changed = false;\n\n// marker icons paths and names, set during initialization\nthis.marker_src_base = \"\";\nthis.marker_src_default = \"\";\nthis.marker_src_default_ind = 0;\nthis.marker_src_labels = [];\nthis.marker_src_icons = {};\n\n// what map provider should be used, and map position\nthis.map_view_layer_google = \"googlev3\";\nthis.map_view_layer_osm = \"osm\";\nthis.map_view_layer_mapquest = \"mapquest\";\nthis.map_view_layer_providers = {};\nthis.map_view_layer_providers[this.map_view_layer_google] = false;\nthis.map_view_layer_providers[this.map_view_layer_osm] = false;\nthis.map_view_layer_providers[this.map_view_layer_mapquest] = false;\n// basic map display info\nthis.map_view_layer_names_all = {};\nthis.map_view_layer_default = \"\";\nthis.map_view_layer_name = \"\";\nthis.map_view_layer_name_saved = \"\";\nthis.map_view_layer_center_ini = {};\nthis.map_view_layer_center = null;\nthis.map_view_layer_center_saved = null;\nthis.map_view_layer_zoom = 0;\nthis.map_view_layer_zoom_saved = 0;\nthis.map_art_view_width_default = 0;\nthis.map_art_view_height_default = 0;\n\n// values for popup style properties\nthis.popup_width = 0;\nthis.popup_height = 0;\nthis.popup_video_labels = [];\nthis.popup_video_props = {};\n\n// values for the lines to display the proposed map size\nthis.map_art_view_width = 600;\nthis.map_art_view_height = 400;\nthis.map_art_view_top = 70;\nthis.map_art_view_right = 105;\nthis.map_art_view_width_display = 600;\nthis.map_art_view_height_display = 400;\nthis.map_art_view_top_display = 70;\nthis.map_art_view_right_display = 105;\nthis.map_border_zindex_on = 900;\nthis.map_border_zindex_off = -1000;\nthis.map_border_background = \"#8080ff\";\n// basic map info\nthis.map_label_name = \"\";\nthis.map_id = 0;\nthis.map_name_max_length = 50;\n\n// currently edited (via the edit link) point\nthis.edited_point = 0;\nthis.edit_text_mode = 'plain';\nthis.edit_view_mode = 'edit';\n\n\n// the order of the pois done by drag-n-drop; we do not reorder pois in the layer\nthis.poi_order_user = [];\n\n// map controls\nthis.select_control = null\n\n// the pan zoom-and-bar control\nthis.pzb_ctrl = null;\nthis.not_to_pan_update = true;\n\n// for ids of pop-ups\nthis.cur_pop_rank = 0;\n\n// tha map layer\nthis.map = null;\n// the markers layer\nthis.layer = null;\n\n// saving info on markers that should be deleted from db\nthis.poi_deletion = [];\n\n// info on markers, with the original ids, so that we can push changes into db\nthis.poi_markers = [];\n\n// whether map is shown, used at the initial version\nthis.map_shown = false;\nthis.map_obj = null\n\n// auxiliary index for accordion selection\nthis.poi_rank_out = -1;\n\n// auxiliary for POI side-bar updates\nthis.descs_elm = null;\nthis.descs_elm_name = \"\";\nthis.descs_inner = \"\";\n\n// count of POIs, with/without counting removals\nthis.descs_count = 0;\nthis.descs_count_inc = 0;\n\n// not to make new POI on closing a pop-up\nthis.ignore_click = false;\n// the used pop-up window\nthis.popup = null;\n\n// for the accordion purposes\nthis.list_shown_header = 0;\n\n// for inline editing purposes\nthis.poi_label_value_inline = null;\nthis.poi_content_value_inline = null;\nthis.poi_text_value_inline = null;\n// for the save-and-preview as one action\nthis.go_to_preview_page = false;\n// whether to show coordinates at poi listing\nthis.coordinates_to_show = false;\n\n// setting the localized strings\nthis.set_display_strings = function(local_strings)\n{\n    if (!local_strings) {return;}\n\n    var display_string_names = [\n        \"fill_in_map_name\",\n        \"point_markers\",\n        \"this_should_not_happen_now\",\n        \"really_to_delete_the_point\",\n        \"the_removal_is_from_all_languages\",\n        \"point_number\",\n        \"fill_in_the_point_description\",\n        \"edit\",\n        \"edit_advanced\",\n        \"center\",\n        \"enable\",\n        \"disable\",\n        \"remove\",\n        \"remove_short\",\n        \"coordinates\",\n        \"longitude\",\n        \"latitude\",\n        \"locations_updated\",\n        \"not_filled\",\n        \"empty_label_show\",\n        \"save_anyway\",\n        \"back_to_editing\"\n    ];\n\n    var str_count = display_string_names.length;\n    for (var sind = 0; sind < str_count; sind++)\n    {\n        var cur_str_name = display_string_names[sind];\n\n        if (undefined !== local_strings[cur_str_name])\n        {\n            this.display_strings[cur_str_name] = local_strings[cur_str_name];\n        }\n    }\n\n};\n\n// setting the article info\nthis.set_article_spec = function(params)\n{\n    this.article_number = parseInt(params.article_number);\n    this.language_id = parseInt(params.language_id);\n};\n\n// max map sizes\nthis.map_limit_width_display = 800;\nthis.map_limit_height_display = 500;\nthis.map_limit_width_view = 1200;\nthis.map_limit_height_view = 1200;\n\n// setting the map width\nthis.set_map_width = function(width, set_view)\n{\n\n    var partial_change = false;\n    if (this.map_limit_width_display > this.map_art_view_width)\n    {\n        if (this.map_limit_width_display < width) {partial_change = true;}\n    }\n    if (this.map_limit_width_display < this.map_art_view_width)\n    {\n        if (this.map_limit_width_display > width) {partial_change = true;}\n    }\n    if (partial_change)\n    {\n        this.map_width_change(this.map_limit_width_display - this.map_art_view_width, false);\n    }\n\n    var width_diff = this.map_art_view_width_default - this.map_art_view_width;\n\n    this.map_width_change(width_diff, false);\n\n};\n\n// setting the map height\nthis.set_map_height = function(height, set_view)\n{\n\n    var partial_change = false;\n    if (this.map_limit_height_display > this.map_art_height_width)\n    {\n        if (this.map_limit_height_display < height) {partial_change = true;}\n    }\n    if (this.map_limit_height_display < this.map_art_view_height)\n    {\n        if (this.map_limit_height_display > height) {partial_change = true;}\n    }\n    if (partial_change)\n    {\n        this.map_height_change(this.map_limit_height_display - this.map_art_view_height, false);\n    }\n\n    var height_diff = this.map_art_view_height_default - this.map_art_view_height;\n\n    this.map_height_change(height_diff, false);\n\n};\n\n// setting the db based default info\nthis.set_map_info = function(params)\n{\n    this.map_view_layer_default = params['default'];\n    var prov_len = params.providers.length;\n    for (var pind = 0; pind < prov_len; pind++)\n    {\n        this.map_view_layer_providers[params.providers[pind]] = true;\n    }\n\n    this.map_view_layer_center_ini = {\"longitude\": params.longitude, \"latitude\": params.latitude};\n    this.map_view_layer_zoom = parseInt(params.resolution);\n    this.map_view_layer_zoom_saved = this.map_view_layer_zoom;\n\n    this.map_art_view_width_default = parseInt(params.width);\n    this.map_art_view_height_default = parseInt(params.height);\n\n};\n\n// setting the basic map info for the current map\nthis.set_map_usage = function(params, set_view)\n{\n    this.map_id = params[\"id\"];\n    if (0 == this.map_id) {return;}\n\n    var longitude = params.lon;\n    var latitude = params.lat;\n\n    this.map_view_layer_center_ini = {\"longitude\": longitude, \"latitude\": latitude};\n    this.map_view_layer_zoom = parseInt(params.res);\n    this.map_view_layer_zoom_saved = this.map_view_layer_zoom;\n\n    this.map_label_name = params.name;\n    // set the map name to divs\n    this.map_load_name();\n\n    this.map_art_view_width_default = parseInt(params.width);\n    this.map_art_view_height_default = parseInt(params.height);\n\n    if (set_view)\n    {\n        this.set_map_width(this.map_art_view_width_default, set_view);\n        this.set_map_height(this.map_art_view_height_default, set_view);\n    }\n\n    this.map_view_layer_default = params.prov;\n\n    if (this.map)\n    {\n        var layer_name = this.map_view_layer_names_all[this.map_view_layer_default];\n        if (layer_name && (\"\" != layer_name))\n        {\n            this.map_view_layer_name = layer_name;\n            this.map_view_layer_name_saved = layer_name;\n        }\n        this.map_view_layer_center = new OpenLayers.LonLat(longitude, latitude).transform(\n            new OpenLayers.Projection(\"EPSG:4326\"), this.map.getProjectionObject()\n        );\n        this.map_view_layer_center_saved = new OpenLayers.LonLat(longitude, latitude).transform(\n            new OpenLayers.Projection(\"EPSG:4326\"), this.map.getProjectionObject()\n        );\n    }\n\n    if (set_view)\n    {\n        this.map_showview();\n    }\n};\n\n// setting info on available marker icons\nthis.set_icons_info = function(params)\n{\n    this.marker_src_base = params.webdir;\n    this.marker_src_default = params['default'];\n    this.marker_src_labels = [];\n    this.marker_src_icons = {};\n\n    var icon_len = params.icons.length;\n    for (var iind = 0; iind < icon_len; iind++)\n    {\n        var cur_icon = params.icons[iind];\n        var cur_label = cur_icon.label;\n\n        if (cur_icon['name'] == this.marker_src_default)\n        {\n            this.marker_src_default_ind = iind;\n        }\n\n        this.marker_src_labels.push(cur_label);\n        this.marker_src_icons[cur_label] = {\n            \"name\": cur_icon[\"name\"],\n            \"path\": cur_icon[\"path\"],\n            \"width\": parseFloat(cur_icon[\"width\"]),\n            \"height\": parseFloat(cur_icon[\"height\"]),\n            \"width_off\": parseFloat(cur_icon[\"width_off\"]),\n            \"height_off\": parseFloat(cur_icon[\"height_off\"])\n        };\n    }\n\n};\n\n// setting popups properties\nthis.set_popups_info = function(params)\n{\n\n    this.popup_width = params.width;\n    this.popup_height = params.height;\n\n    var video = params.video;\n\n    var video_len = video.labels.length;\n    for (var vind = 0; vind < video_len; vind++)\n    {\n        var cur_video = video.labels[vind];\n        var cur_label = cur_video[\"label\"].toLowerCase();\n        this.popup_video_labels.push(cur_label);\n        this.popup_video_props[cur_label] = {\n            \"source\": cur_video[\"source\"],\n            \"width\": cur_video[\"width\"],\n            \"height\": cur_video[\"height\"],\n            \"path\": cur_video[\"path\"]\n        };\n    }\n\n};\n\n// moving point to a position\nthis.update_poi_position = function(index, coordinate, value, input)\n{\n    var feature = this.layer.features[index];\n    if ((undefined === feature) || (undefined === feature.attributes))\n    {\n      return;\n    }\n\n    this.set_save_state(true);\n\n    var cur_poi_info = this.poi_markers[index];\n\n    var longitude = cur_poi_info['lon'];\n    var latitude = cur_poi_info['lat'];\n\n    if ('longitude' == coordinate)\n    {\n        longitude = parseFloat(value);\n        if ( isNaN(longitude))\n        {\n            input.value = cur_poi_info['lon'];\n            return;\n        }\n    }\n    if ('latitude' == coordinate)\n    {\n        latitude = parseFloat(value);\n        if (isNaN(latitude))\n        {\n            input.value = cur_poi_info['lat'];\n            return;\n        }\n    }\n\n    var lonlat = new OpenLayers.LonLat(longitude, latitude);\n\n    if (cur_poi_info.in_db)\n    {\n        if ((lonlat.lon != cur_poi_info['lon']) || (lonlat.lat != cur_poi_info['lat']))\n        {\n            cur_poi_info.location_changed = true;\n        }\n    }\n\n    cur_poi_info['lon'] = lonlat.lon;\n    cur_poi_info['lat'] = lonlat.lat;\n\n    lonlat.transform(new OpenLayers.Projection(\"EPSG:4326\"), this.map.getProjectionObject());\n\n    cur_poi_info['map_lon'] = lonlat.lon;\n    cur_poi_info['map_lat'] = lonlat.lat;\n\n    var pixel = this.map.getViewPortPxFromLonLat(lonlat);\n    feature.move(pixel);\n    if (this.popup && (feature == this.popup.feature)) {\n        pixel = this.map.getLayerPxFromLonLat(lonlat);\n        this.popup.moveTo(pixel);\n    }\n\n    OpenLayers.HooksLocal.map_check_pois(this);\n};\n\n// closes (pre)view popup, if of specified poi\nthis.close_popup = function(index)\n{\n    var geo_obj = this;\n\n    if (this.popup)\n    {\n        var feature = (this.popup.feature) ? this.popup.feature : null;\n        var m_rank = this.popup.m_rank;\n        if ((undefined !== m_rank) && (index == m_rank)) {\n            // this pop-up removal seems to be sometimes strange\n            try {\n                geo_obj.select_control.unselect(geo_obj.popup.feature);\n                if (feature) {\n                    feature.popup = null;\n                }\n                if (this.popup) {\n                    this.map.removePopup(this.popup);\n                    this.popup.destroy();\n                }\n            }\n            catch (e) {alert(JSON.stringify(e));}\n            this.popup = null;\n        }\n    }\n};\n\n// setting the edit window for the requested POI (bound on the 'edit' link)\nthis.edit_poi = function(index)\n{\n    this.close_popup(index);\n\n    this.edited_point = index;\n    this.load_point_data();\n    this.open_edit_window();\n\n    return;\n};\n\n// to center the map view on the requested position\nthis.center_lonlat = function(longitude, latitude)\n{\n    var lonLat = new OpenLayers.LonLat(longitude, latitude).transform(\n        new OpenLayers.Projection(\"EPSG:4326\"), // transform from WGS 1984\n        this.map.getProjectionObject() // to Spherical Mercator Projection\n    );\n\n    this.map.setCenter (lonLat);\n};\n\n// sets map center onto the requested POI (bound on the 'center' link)\nthis.center_poi = function(index)\n{\n    var mlon = this.poi_markers[index].map_lon;\n    var mlat = this.poi_markers[index].map_lat;\n    var lonLat = new OpenLayers.LonLat(mlon, mlat);\n\n    this.map.setCenter (lonLat);\n\n};\n\n// this function was used during development; probably will be removed\nthis.display_index = function(index)\n{\n    var real_index = -1;\n\n    for (var rind = 0; rind <= index; rind++)\n    {\n        if (this.poi_markers[rind]['usage']) {real_index += 1;}\n        else\n        {\n            alert(this.display_strings.this_should_not_happen_now + \": \" + rind + \" / \" + index);\n        }\n    }\n    return real_index;\n};\n\n// setting the point visibility state\nthis.set_usage_poi = function(index, usage, div_ids)\n{\n    this.set_save_state(true);\n\n    var to_disable = !usage;\n\n    var layer_index = this.display_index(index);\n\n    var feature = this.layer.features[layer_index];\n    var attrs = feature.attributes;\n\n    var cur_poi_info = this.poi_markers[layer_index];\n    if (cur_poi_info.in_db)\n    {\n        if (to_disable != attrs.m_disabled)\n        {\n            cur_poi_info.content_changed = true;\n            cur_poi_info.state_changed = true;\n            this.main_page_upload = true;\n        }\n    }\n    attrs.m_disabled = to_disable;\n\n    var div_objs = [];\n    var div_count = div_ids.length;\n    for (var dind = 0; dind < div_count; dind++)\n    {\n        var one_obj = document.getElementById ? document.getElementById(div_ids[dind]) : null;\n        div_objs.push(one_obj);\n    }\n\n    var lon_id = div_ids[0];\n    var lat_id = div_ids[1];\n    var dis_id = div_ids[2];\n    var ena_id = div_ids[3];\n    var voi_id = div_ids[4];\n    var rem_id = div_ids[5];\n\n    var lon_obj = div_objs[0];\n    var lat_obj = div_objs[1];\n    var dis_obj = div_objs[2];\n    var ena_obj = div_objs[3];\n    var voi_obj = div_objs[4];\n    var rem_obj = div_objs[5];\n\n    var marker_type = 2 * attrs.m_type;\n    if (to_disable) {marker_type += 1;}\n    attrs.type = marker_type;\n    this.layer.redraw();\n\n    if (usage)\n    {\n        lon_obj.disabled = false;\n        lat_obj.disabled = false;\n\n        $(dis_obj).removeClass('map_hidden');\n        $(voi_obj).removeClass('map_hidden');\n\n        $(ena_obj).addClass('map_hidden');\n        $(rem_obj).addClass('map_hidden');\n    }\n    else\n    {\n        lon_obj.disabled = true;\n        lat_obj.disabled = true;\n\n        $(ena_obj).removeClass('map_hidden');\n        $(rem_obj).removeClass('map_hidden');\n\n        $(dis_obj).addClass('map_hidden');\n        $(voi_obj).addClass('map_hidden');\n    }\n};\n\n// removal of the requested POI (bound on the 'remove' link)\nthis.remove_poi = function(index)\n{\n    var confirm_string = this.display_strings.really_to_delete_the_point;\n    confirm_string += \"\\n\\n\";\n    confirm_string += this.display_strings.the_removal_is_from_all_languages;\n\n    var really = confirm(confirm_string);\n    if (!really) {return;}\n\n    var layer_index = this.display_index(index);\n\n    var feature_rem = this.layer.features[layer_index];\n    if (this.popup && (feature_rem == this.popup.feature))\n    {\n        // this pop-up removal seems to be sometimes strange\n        try {\n            this.map.removePopup(this.popup);\n            this.popup.destroy();\n        }\n        catch (e) {}\n        this.popup = null;\n    }\n\n    this.close_edit_window();\n\n    this.set_save_state(true);\n    this.poi_order_changed = true;\n\n    var to_remove = [];\n    to_remove.push(this.layer.features[layer_index])\n    this.layer.removeFeatures(to_remove);\n\n    this.poi_markers[index].usage = false;\n    var cur_marker = this.poi_markers[index];\n    if (cur_marker.in_db)\n    {\n        this.poi_deletion.push({'content_id': cur_marker.con_index, 'location_id': cur_marker.loc_index});\n    }\n\n    this.poi_markers.splice(index, 1);\n\n    var features = this.layer.features;\n    var feature_count = features.length;\n    for (var find = 0; find < feature_count; find++)\n    {\n        var one_feature = features[find];\n        var f_rank = one_feature.attributes.m_rank;\n        if (f_rank > index)\n        {\n            one_feature.attributes.m_rank = f_rank - 1;\n        }\n    }\n\n    var poi_order_new = [];\n    var pind_count = this.poi_order_user.length;\n    for (var pind = 0; pind < pind_count; pind++)\n    {\n        var one_ord = this.poi_order_user[pind];\n        if (one_ord < index)\n        {\n            poi_order_new.push(one_ord);\n            continue;\n        }\n        if (one_ord > index)\n        {\n            poi_order_new.push(one_ord - 1);\n            continue;\n        }\n    }\n    this.poi_order_user = poi_order_new;\n\n    this.descs_count -= 1;\n\n    this.update_poi_descs();\n\n    this.ignore_click = true;\n    setTimeout(this.obj_name + \".ignore_click = false;\", 500);\n};\n\nthis.set_inline_label_value = function(index)\n{\n    var geo_obj = this;\n    var erase_inline_value = false;\n\n    var label_edit_elm = document.getElementById ? document.getElementById('geo_edit_label_inline') : null;\n    if (label_edit_elm) {\n        if (null !== this.poi_label_value_inline) {\n            label_edit_elm.value = this.poi_label_value_inline;\n        }\n        erase_inline_value = true;\n    } else {\n        if (this.popup) {\n            setTimeout(geo_obj.obj_name + \".set_inline_label_value(\" + index + \");\", 100);\n        } else {\n            erase_inline_value = true;\n        }\n    }\n\n    if (erase_inline_value) {\n        this.poi_label_value_inline = null;\n    }\n\n};\n\nthis.set_inline_desc_value = function(form, index)\n{\n    var geo_obj = this;\n    var erase_inline_value = false;\n\n    var dom_elm_name = \"\";\n    var known_dom_names = {\"content\": \"geo_edit_content_inline\", \"text\": \"geo_edit_text_inline\"};\n    if (form in known_dom_names) {\n        dom_elm_name = known_dom_names[form];\n    } else {\n        return;\n    }\n\n    var desc_value = null;\n    if (\"content\" == form) {\n        desc_value = this.poi_content_value_inline;\n    }\n    if (\"text\" == form) {\n        desc_value = this.poi_text_value_inline;\n    }\n\n    var desc_edit_elm = document.getElementById ? document.getElementById(dom_elm_name) : null;\n    if (desc_edit_elm) {\n        if (null !== desc_value) {\n            desc_edit_elm.value = desc_value;\n        }\n        erase_inline_value = true;\n    } else {\n        if (this.popup) {\n            setTimeout(geo_obj.obj_name + \".set_inline_desc_value(\\\"\" + form + \"\\\", \" + index + \");\", 100);\n        } else {\n            erase_inline_value = true;\n        }\n    }\n\n    if (erase_inline_value) {\n        this.poi_label_value_inline = null;\n        if (\"content\" == form) {\n            this.poi_content_value_inline = null;\n        }\n        if (\"text\" == form) {\n            this.poi_text_value_inline = null;\n        }\n    }\n\n};\n\nthis.is_poi_visible = function(index)\n{\n    var poi_visible = false;\n\n    if (this.poi_markers && this.poi_markers[index])\n    {\n        var cur_poi_info = this.poi_markers[index];\n        var longitude = cur_poi_info['map_lon'];\n        var latitude = cur_poi_info['map_lat'];\n        var poi_lonlat = new OpenLayers.LonLat(longitude, latitude);\n\n        var view_box = this.map.calculateBounds();\n        if (view_box.containsLonLat(poi_lonlat, false)) {\n            poi_visible = true;\n        }\n    }\n\n    return poi_visible;\n};\n\nthis.preview_edited = function()\n{\n    var index = this.edited_point;\n    this.close_popup(index);\n\n    var poi_visible = this.is_poi_visible(index);\n    if (!poi_visible) {\n        this.center_poi(index);\n    }\n\n    OpenLayers.HooksPopups.on_map_feature_select(this, index);\n};\n\nthis.select_poi_on_list = function(index)\n{\n    var poi_visible = this.is_poi_visible(index);\n    if (!poi_visible) {\n        this.center_poi(index);\n    }\n\n    OpenLayers.HooksPopups.on_map_feature_select(this, index);\n};\n\n// updates the permuation of POIs (via UI 'sortable', or after a POI removal)\nthis.poi_order_update = function(poi_order_new)\n{\n    this.poi_order_user = [];\n    var transed = false;\n\n    var poi_order_length = poi_order_new.length;\n    for (var pind = 0; pind < poi_order_length; pind++)\n    {\n        var cur_poi_desc = poi_order_new[pind];\n        var cur_poi_list = cur_poi_desc.split(\"_\");\n        var cur_poi_ind = parseInt(cur_poi_list[cur_poi_list.length - 1]);\n        this.poi_order_user.push(cur_poi_ind);\n        if (pind != cur_poi_ind) {transed = true;}\n    }\n\n    if (transed)\n    {\n        this.set_save_state(true);\n        this.poi_order_changed = true;\n    }\n};\n\n// finds the 'sorted' position of the requested POI\nthis.poi_order_revert = function(index)\n{\n    var rev_index = 0;\n    var found = false;\n\n    var poi_count = this.poi_order_user.length;\n    for (var pind = 0; pind < poi_count; pind++)\n    {\n        if (index == this.poi_order_user[pind])\n        {\n            rev_index = pind;\n            found = true;\n            break;\n        }\n    }\n\n    if (!found) {alert(this.display_strings.this_should_not_happen_now + \" - \" + \"reversion\");}\n\n    return rev_index;\n};\n\n// for updating the side-bar with POI links\nthis.update_poi_descs = function(active, index_type)\n{\n    this.list_shown_header = 0;\n\n    var geo_obj = this;\n    var obj_name = this.get_obj_name();\n\n    if (0 == this.poi_markers.length)\n    {\n        this.descs_elm.innerHTML = \"<div class='map_poi_side_list' id='map_poi_side_list'>\" + \" \" + \"</div>\";\n        this.map_update_side_desc_height();\n        return;\n    }\n\n    if (undefined === active) {active = 0;}\n    else\n    {\n        active = this.poi_order_revert(active);\n    }\n\n    var view_index = 0;\n    if ((undefined === index_type) || ('view' != index_type))\n    {\n        view_index = this.display_index(active);\n    }\n    this.list_shown_header = view_index;\n\n    var max_ind = this.poi_order_user.length - 1;\n\n    var descs_inner = \"\";\n    var disp_index = 1;\n    var pind = 0; // real initial poi index\n\n    for(var sind = 0; sind <= max_ind; sind++)\n    {\n        pind = this.poi_order_user[sind];\n        disp_index = pind + 1;\n\n        var cur_poi = this.poi_markers[pind];\n        if (!cur_poi.usage) {alert(this.display_strings.this_should_not_happen_now); continue;}\n\n        // these two helper classes are not used now\n        var use_class = \"\";\n        var class_show = \"\";\n\n        var cur_label = \"\";\n        var cur_marker = null;\n        if (disp_index <= this.layer.features.length)\n        {\n            cur_marker = this.layer.features[disp_index - 1];\n            cur_label = cur_marker.attributes.m_title;\n        }\n\n        var cur_label_sep = \"\";\n        if (0 < cur_label.length)\n        {\n            cur_label_sep = \": \";\n        }\n\n        var max_len = 20;\n        if (max_len < cur_label.length)\n        {\n            cur_label = cur_label.substr(0, max_len) + \"...\";\n        }\n\n        cur_label = cur_label.replace(/&/gi, \"&amp;\");\n        cur_label = cur_label.replace(/</gi, \"&lt;\");\n        cur_label = cur_label.replace(/>/gi, \"&gt;\");\n\n        descs_inner += \"<div id=\\\"poi_seq_\" + pind + \"\\\">\";\n        descs_inner += \"<h3 class=\\\"\" + use_class + class_show + \" map_poi_side_one\\\">\";\n        descs_inner += \"<a href=\\\"#\\\" class='poi_name' onClick='\" + obj_name + \".select_poi_on_list(\" + pind + \"); return false;'>\" + disp_index + cur_label_sep + cur_label + \"</a>\";\n        descs_inner += \"<a onclick='\" + obj_name + \".remove_poi(\" + pind + \");return false;' href=\\\"#\\\" class=\\\"corner-button\\\" title=\\\"\" + this.display_strings.remove + \"\\\"><span class=\\\"ui-icon ui-icon-closethick\\\"></span></a>\";\n        descs_inner += \"</h3>\";\n\n        descs_inner += \"<div class='poi_actions_all'>\";\n\n        var disable_value = \"\";\n        if (cur_marker && cur_marker.attributes.m_disabled) {disable_value = \" disabled='disabled'\";}\n\n        var lon_id = \"list_change_poi_longitude_\" + pind;\n        var lat_id = \"list_change_poi_latitude_\" + pind;\n        var dis_id = \"list_change_poi_disable_\" + pind;\n        var ena_id = \"list_change_poi_enable_\" + pind;\n        var voi_id = \"list_change_poi_void_\" + pind;\n        var rem_id = \"list_change_poi_remove_\" + pind;\n\n        var dis_class = \"list_change_poi_disable\";\n        var ena_class = \"list_change_poi_enable\";\n        var voi_class = \"list_change_poi_void\";\n        var rem_class = \"list_change_poi_remove\";\n\n        if (cur_marker && cur_marker.attributes.m_disabled)\n        {\n            dis_class += \" map_hidden\";\n            voi_class += \" map_hidden\";\n        }\n        else\n        {\n            ena_class += \" map_hidden\";\n            rem_class += \" map_hidden\";\n        }\n\n        var prop_ids = '[\"' + lon_id + '\", \"' + lat_id + '\", \"' + dis_id + '\", \"' + ena_id + '\"]';\n\n        descs_inner += \"<div class='poi_actions clearfix'>\";\n        descs_inner += \"<a href='#' class='link left-floated' onclick='\" + obj_name + \".center_poi(\" + pind + \");return false;'>\" + this.display_strings.center + \"</a>\";\n\n        descs_inner += \"<span id='\" + ena_id + \"' class='\" + ena_class + \"'><a href='#' class='link left-floated' onclick='\" + obj_name + \".set_usage_poi(\" + pind + \", true, \" + prop_ids + \");return false;'>\" + this.display_strings.enable + \"</a></span>\";\n        descs_inner += \"<span id='\" + dis_id + \"' class='\" + dis_class + \"'><a href='#' class='link left-floated' onclick='\" + obj_name + \".set_usage_poi(\" + pind + \", false, \" + prop_ids + \");return false;'>\" + this.display_strings.disable + \"</a></span>\";\n        descs_inner += \"<a href='#' class='link icon-link right-floated' onclick='\" + obj_name + \".edit_poi(\" + pind + \");return false;'><span class='icon ui-icon-pencil'></span><strong>\" + this.display_strings.edit + \"</strong></a>\";\n        descs_inner += \"</div>\";\n\n        var coor_class_show = \" map_hidden\";\n        var fset_class_show = \" closed\";\n        if (this.coordinates_to_show) {\n            coor_class_show = \"\";\n            fset_class_show = \"\";\n        }\n\n        descs_inner += \"<fieldset class='poi_coors_all_set toggle \" + fset_class_show + \"'>\";\n        descs_inner += \"<legend class='poi_coors_all_legend' style='cursor: pointer;' onClick=\\\"$('.poi_coors_all').toggleClass('map_hidden'); $('.poi_coors_all_set').toggleClass('closed'); \" + obj_name + \".coordinates_to_show = !\" + obj_name + \".coordinates_to_show; return false;\\\"><span class='show_hide_coordinates ui-icon ui-icon-triangle-2-n-s'></span>\" + this.display_strings.coordinates + \"</legend>\";\n        descs_inner += \"<div class='poi_coors_all \" + coor_class_show + \"'>\";\n        descs_inner += \"<div class='poi_coors'>\";\n        descs_inner += \"<label>\" + this.display_strings.latitude + \"</label><input id='\" + lat_id + \"' class='poi_coors_input' size='9' onChange='\" + obj_name + \".update_poi_position(\" + pind + \", \\\"latitude\\\", this.value, this); return false;' name='poi_latitude_\" + pind + \"' value='\" + cur_poi.lat.toFixed(6) + \"'\" + disable_value + \">\";\n        descs_inner += \"</div>\";\n        descs_inner += \"<div class='poi_coors'>\";\n        descs_inner += \"<label>\" + this.display_strings.longitude + \"</label><input id='\" + lon_id + \"' class='poi_coors_input' size='9' onChange='\" + obj_name + \".update_poi_position(\" + pind + \", \\\"longitude\\\", this.value, this); return false;' name='poi_longitude_\" + pind + \"'  value='\" + cur_poi.lon.toFixed(6) + \"'\" + disable_value + \">\";\n        descs_inner += \"</div>\";\n        descs_inner += \"</div>\";\n        descs_inner += \"</fieldset>\";\n\n        descs_inner += \"</div>\";\n        descs_inner += \"</div>\";\n\n        disp_index += 1;\n    }\n    this.descs_elm.innerHTML = \"<div id='map_poi_side_list' class='map_poi_side_list'>\" + descs_inner + \"</div>\";\n\n    // putting the list into UI accordion\n    $(function() {\n        var stop = false;\n        $( \"#map_poi_side_list h3\" ).click(function( event ) {\n            if ( stop ) {\n                event.stopImmediatePropagation();\n                event.preventDefault();\n                stop = false;\n            }\n        });\n\n        $(\"#map_poi_side_list\").accordion({animated: false, autoHeight: false, active: view_index, header: \"> div > h3\", change: function(event, ui) {geo_obj.on_accordion_change(event, ui);} }).sortable({axis: \"y\", handle: \"h3\", stop: function() {stop = true;} });\n\n        $(\"#map_poi_side_list\").bind( \"sortupdate\", function(event, ui) {\n            var poi_order = $(this).sortable('toArray');\n            geo_obj.poi_order_update(poi_order);\n        });\n\n        $('#map_poi_side_list .icon-button').hover(\n            function() { $(this).addClass('ui-state-hover'); }, \n            function() { $(this).removeClass('ui-state-hover'); }\n        );\n        $('#map_poi_side_list .text-button').hover(\n            function() { $(this).addClass('ui-state-hover'); }, \n            function() { $(this).removeClass('ui-state-hover'); }\n        );\n\n    });\n    this.map_update_side_desc_height();\n\n};\n\n// for keeping track of the displayed accordion part\nthis.on_accordion_change = function(event, ui)\n{\n    this.list_shown_header = -1;\n\n    try {\n        var index_html = this.obj_name + \".select_poi_on_list\";\n        var header_html = ui.newHeader[0].innerHTML;\n        var index_start = header_html.search(index_html);\n        if (0 <= index_start) {\n            var rank_start = index_start + index_html.length + 1;\n            var rank = parseFloat(header_html.substring(rank_start));\n            this.list_shown_header = rank.toFixed();\n        }\n    }\n    catch (exc) {}\n};\n\n// sets the height of the side-bar part with POIs, so that it fits into the rest of the side-bar\nthis.map_update_side_desc_height = function()\n{\n    var searchres_obj = document.getElementById ? document.getElementById(\"search_results\") : null;\n    var height_taken = searchres_obj.offsetHeight;\n\n    var sidedesc_obj = document.getElementById ? document.getElementById(\"map_sidedescs\") : null;\n\n    var new_height = 480 - height_taken;\n    if ((!new_height) || (250 > new_height)) {new_height = 250;}\n\n    {\n        sidedesc_obj.style.height = new_height + \"px\";\n    }\n};\n\n// taking POI-mouse offset on the start of a POI dragging\nthis.poi_dragg_start = function(feature, pixel)\n{\n    this.poi_drag_offset = null;\n\n    if ((undefined === feature.attributes) || (undefined === feature.attributes.m_rank))\n    {\n      return;\n    }\n\n    var index = feature.attributes.m_rank;\n    var cur_poi_info = this.poi_markers[index];\n\n    var lonlat = this.map.getLonLatFromViewPortPx(pixel);\n\n    cur_poi_info['map_lon_offset'] = lonlat.lon - cur_poi_info['map_lon'];\n    cur_poi_info['map_lat_offset'] = lonlat.lat - cur_poi_info['map_lat'];\n\n};\n\n// updating info on POI after it was dragged\nthis.poi_dragged = function(feature, pixel)\n{\n    if ((undefined === feature.attributes) || (undefined === feature.attributes.m_rank))\n    {\n      return;\n    }\n\n    this.set_save_state(true);\n\n    var index = feature.attributes.m_rank;\n    var cur_poi_info = this.poi_markers[index];\n    var map = this.map;\n\n    var lonlat = map.getLonLatFromViewPortPx(pixel);\n\n    lonlat.lon -= cur_poi_info['map_lon_offset'];\n    lonlat.lat -= cur_poi_info['map_lat_offset'];\n\n    cur_poi_info['map_lon'] = lonlat.lon;\n    cur_poi_info['map_lat'] = lonlat.lat;\n\n    lonlat_map = lonlat.clone();\n    lonlat.transform(map.getProjectionObject(), new OpenLayers.Projection(\"EPSG:4326\"));\n\n    if (cur_poi_info.in_db)\n    {\n        if ((lonlat.lon != cur_poi_info['lon']) || (lonlat.lat != cur_poi_info['lat']))\n        {\n            cur_poi_info.location_changed = true;\n        }\n    }\n    cur_poi_info['lon'] = lonlat.lon;\n    cur_poi_info['lat'] = lonlat.lat;\n\n    this.update_poi_descs(index);\n\n    // to move the POI's pop-up too, if it is displayed\n    if (this.popup && (feature == this.popup.feature)) {\n        pixel = this.map.getLayerPxFromLonLat(lonlat_map);\n        this.popup.moveTo(pixel);\n    }\n};\n\n// actual insertion of a new POI\nthis.insert_poi = function(coor_type, lonlat_ini, longitude, latitude, label)\n{\n    if ((undefined === coor_type) || (undefined === lonlat_ini))\n    {\n        return false;\n    }\n\n    if (null === lonlat_ini)\n    {\n        if ((undefined === longitude) || (undefined === latitude))\n        {\n            return false;\n        }\n        lonlat_ini = new OpenLayers.LonLat(longitude, latitude);\n    }\n\n    this.set_save_state(true);\n    this.poi_order_changed = true;\n\n    var lonlat = null;\n    if ('map' == coor_type)\n    {\n        lonlat = lonlat_ini.clone();\n    }\n    else\n    {\n        lonlat = new OpenLayers.LonLat(lonlat_ini.lon, lonlat_ini.lat).transform(\n            new OpenLayers.Projection(\"EPSG:4326\"), // transform from WGS 1984\n            this.map.getProjectionObject() // to Spherical Mercator Projection\n        );\n    }\n\n    var poi_title = \"\";\n\n    if (undefined !== label)\n    {\n        poi_title = label;\n    }\n\n    // making poi for features\n    var features = [];\n    var point = new OpenLayers.Geometry.Point(lonlat.lon, lonlat.lat);\n    var vector = new OpenLayers.Feature.Vector(point, {type: (2 * this.marker_src_default_ind)});\n\n    var poi_index = this.descs_count;\n\n    this.poi_rank_out = this.descs_count;\n    vector.attributes.m_rank = this.descs_count;\n    vector.attributes.m_title = poi_title;\n    vector.attributes.m_perex = \"\";\n    vector.attributes.m_direct = false;\n    vector.attributes.m_content = \"\";\n    vector.attributes.m_link = \"\";\n    vector.attributes.m_text = \"\";\n    vector.attributes.m_image_mm = 0;\n    vector.attributes.m_image_source = \"\";\n    vector.attributes.m_image_width = \"\";\n    vector.attributes.m_image_height = \"\";\n    vector.attributes.m_image_share = true;\n    vector.attributes.m_video_mm = 0;\n    vector.attributes.m_video_type = \"\";\n    vector.attributes.m_video_id = \"\";\n    vector.attributes.m_video_width = \"\";\n    vector.attributes.m_video_height = \"\";\n    vector.attributes.m_video_share = true;\n    vector.attributes.m_image = \"\";\n    vector.attributes.m_embed = \"\";\n    vector.attributes.m_disabled = false;\n    vector.attributes.m_type = this.marker_src_default_ind;\n\n    features.push(vector);\n\n    // setting feature-based classical-shaped marker\n    this.layer.addFeatures(features);\n\n    var map_lon = lonlat.lon;\n    var map_lat = lonlat.lat;\n\n    if ('map' == coor_type)\n    {\n        lonlat.transform(this.map.getProjectionObject(), new OpenLayers.Projection(\"EPSG:4326\"));\n    }\n    else\n    {\n        lonlat = lonlat_ini.clone();\n    }\n\n    this.poi_markers.push({\n        'lon':lonlat.lon, 'lat':lonlat.lat, 'map_lon': map_lon, 'map_lat': map_lat,\n        'usage':true, \"location_changed\": false, \"content_changed\": false, \"text_changed\": false,\n        \"icon_changed\": false, \"state_changed\": false, \"image_changed\": false, \"video_changed\": false,\n        \"in_db\": false, \"con_index\": 0, \"loc_index\": 0, \"tmp_index\": this.descs_count_inc\n    });\n\n    this.poi_order_user.push(this.descs_count);\n    this.update_poi_descs(this.descs_count);\n\n    this.descs_count += 1;\n    this.descs_count_inc += 1;\n\n    this.view_newly_edited(poi_index);\n\n    OpenLayers.HooksLocal.map_check_pois(this);\n\n    return true;\n};\n\nthis.view_newly_edited = function(index)\n{\n    OpenLayers.HooksPopups.on_map_feature_select(this, index);\n};\n\n\nthis.main_openlayers_init = function(map_div_name, descs_name)\n{\n    this.coordinates_to_show = false;\n\n    this.descs_elm = document.getElementById ? document.getElementById(descs_name) : null;\n    this.descs_elm_name = descs_name;\n\n    this.map_edit_prepare_markers();\n\n    this.map_pois_load();\n\n    this.set_save_state(false);\n    this.map_spec_changed = false;\n\n    if (\"0\" == \"\" + this.map_id)\n    {\n        this.set_save_state(true);\n        this.map_spec_changed = true;\n        this.main_page_upload = true;\n\n        this.map_update_name_state();\n    }\n\n    this.pzb_ctrl = new OpenLayers.Control.PanZoomBarMod();\n\n    var scaleline = new OpenLayers.Control.ScaleLine();\n    scaleline.geodesic = true;\n\n    this.map = new OpenLayers.Map(map_div_name, {\n        controls: [\n            new OpenLayers.Control.Navigation(),\n            this.pzb_ctrl,\n            scaleline\n        ],\n        numZoomLevels: 20\n    });\n\n    this.map.geo_obj = this;\n\n    var map_provs = [];\n    var map_gsm = null;\n    var map_osm = null;\n    var map_mqm = null;\n\n    this.map_view_layer_names_all = {};\n\n    var google_label = this.map_view_layer_google;\n    var osm_label = this.map_view_layer_osm;\n    var mqm_label = this.map_view_layer_mapquest;\n\n    if (this.map_view_layer_providers[google_label])\n    {\n        // google map v3\n        map_gsm = new OpenLayers.Layer.GoogleMod(\n            //\"Google Map\",\n            this.display_strings.google_map,\n            {}\n        );\n\n        this.map_view_layer_names_all[google_label] = map_gsm.name;\n        if (google_label == this.map_view_layer_default)\n        {\n            map_provs.push(map_gsm);\n        }\n    }\n\n    if (this.map_view_layer_providers[mqm_label])\n    {\n        // openstreetmap by mapquest\n        map_mqm = new OpenLayers.Layer.MapQuest(\n            //\"MapQuest Map\"\n            this.display_strings.mapquest_map\n        );\n        map_mqm.wrapDateLine = true;\n        map_mqm.displayOutsideMaxExtent = true;\n        map_mqm.transitionEffect = 'resize';\n\n        this.map_view_layer_names_all[mqm_label] = map_mqm.name;\n        if (mqm_label == this.map_view_layer_default)\n        {\n            map_provs.push(map_mqm);\n        }\n    }\n\n    if (this.map_view_layer_providers[osm_label])\n    {\n        // openstreetmap\n        map_osm = new OpenLayers.Layer.OSMMod(\n            //\"OpenStreet Map\"\n            this.display_strings.openstreet_map\n        );\n        map_osm.wrapDateLine = true;\n        map_osm.displayOutsideMaxExtent = true;\n        map_osm.transitionEffect = 'resize';\n\n        this.map_view_layer_names_all[osm_label] = map_osm.name;\n        if (osm_label == this.map_view_layer_default)\n        {\n            map_provs.push(map_osm);\n        }\n    }\n\n    if (map_gsm && (google_label != this.map_view_layer_default))\n    {\n        map_provs.push(map_gsm);\n    }\n    if (map_mqm && (mqm_label != this.map_view_layer_default))\n    {\n        map_provs.push(map_mqm);\n    }\n    if (map_osm && (osm_label != this.map_view_layer_default))\n    {\n        map_provs.push(map_osm);\n    }\n\n    this.map.addLayers(map_provs);\n    this.map.addControl(new OpenLayers.Control.Attribution());\n\n    // for switching between maps\n    var lswitch = new OpenLayers.Control.LayerSwitcher();\n    lswitch.roundedCornerColor = \"#464646\";\n\n    this.map.addControl(lswitch);\n    lswitch.maximizeControl();\n\n    // an initial center point, set via parameters\n    var cen_ini_longitude = this.map_view_layer_center_ini[\"longitude\"];\n    var cen_ini_latitude = this.map_view_layer_center_ini[\"latitude\"];\n    var lonLat_cen = new OpenLayers.LonLat(cen_ini_longitude, cen_ini_latitude)\n          .transform(\n            new OpenLayers.Projection(\"EPSG:4326\"), // transform from WGS 1984\n            this.map.getProjectionObject() // to Spherical Mercator Projection\n          );\n    var zoom = this.map_view_layer_zoom;\n\n    var style_map = new OpenLayers.StyleMap({\n                cursor: \"pointer\",\n                graphicZIndex: 10\n    });\n\n    var lookup = {};\n    var labels_len = this.marker_src_labels.length;\n    for (var lind = 0; lind < labels_len; lind++)\n    {\n        var cur_label = this.marker_src_labels[lind];\n        var cur_icon = this.marker_src_icons[cur_label];\n        lookup[2*lind] = {\n            fillOpacity: 1.0,\n            externalGraphic: cur_icon[\"path\"],\n            graphicWidth: cur_icon[\"width\"],\n            graphicHeight: cur_icon[\"height\"],\n            graphicXOffset: cur_icon[\"width_off\"],\n            graphicYOffset: cur_icon[\"height_off\"]\n        };\n        lookup[(2*lind)+1] = {\n            fillOpacity: 0.4,\n            externalGraphic: cur_icon[\"path\"],\n            graphicWidth: cur_icon[\"width\"],\n            graphicHeight: cur_icon[\"height\"],\n            graphicXOffset: cur_icon[\"width_off\"],\n            graphicYOffset: cur_icon[\"height_off\"]\n        };\n    };\n\n    // create a lookup table for the provided icon types\n    style_map.addUniqueValueRules(\"default\", \"type\", lookup);\n\n    // layer for features\n    this.layer = new OpenLayers.Layer.Vector(\n        //\"POI markers\",\n        this.display_strings.point_markers,\n        {\n            styleMap: style_map,\n            isBaseLayer: false,\n            rendererOptions: {yOrdering: true}\n        }\n    );\n    this.map.addLayer(this.layer);\n\n    // setting map center\n    this.map.setCenter (lonLat_cen, zoom);\n\n    this.map_view_layer_name = this.map.layers[0].name;\n    this.map_view_layer_name_saved = this.map.layers[0].name;\n    this.map_view_layer_center = this.map.getCenter();\n    this.map_view_layer_center_saved = this.map.getCenter();\n    this.map_view_layer_zoom = this.map.getZoom();\n    this.map_view_layer_zoom_saved = this.map_view_layer_zoom;\n\n    // registering for click events\n    var click = new OpenLayers.Control.Click();\n    click.setTriggerAction(function(evt, map) {\n        OpenLayers.HooksLocal.new_poi_on_map_click(evt, map);\n    });\n    this.map.addControl(click);\n    click.activate();\n\n    var hover = new OpenLayers.Control.Hover();\n    hover.setTriggerAction(function(evt, map) {\n        var poi_hover = map.geo_obj.layer.getFeatureFromEvent(evt);\n        if (poi_hover) {\n            if (null !== poi_hover.attributes.m_rank) {\n                map.geo_obj.poi_rank_out = poi_hover.attributes.m_rank;\n                map.geo_obj.update_poi_descs(map.geo_obj.poi_rank_out);\n            }\n        }\n    });\n    this.map.addControl(hover);\n    hover.activate();\n\n    var geo_obj = this; \n\n    var cur_date = new Date();\n    OpenLayers.HooksLocal.redraw_times.map_dragging_last = cur_date.getTime();\n\n    var drag_feature = new OpenLayers.Control.DragFeature(this.layer);\n    drag_feature.onStart = function(feature, pixel) {geo_obj.poi_dragg_start(feature, pixel);};\n    drag_feature.onComplete = function(feature, pixel) {geo_obj.poi_dragged(feature, pixel);};\n    this.map.addControl(drag_feature);\n    drag_feature.activate();\n\n    var drag_map = new OpenLayers.Control.DragPanMod([map_gsm, map_mqm, map_osm]);\n    this.map.addControl(drag_map);\n    drag_map.activate();\n\n    this.select_control = new OpenLayers.Control.SelectFeature(this.layer);\n    this.map.addControl(this.select_control);\n    this.select_control.activate();\n\n    geo_obj.ignore_select_event = true;\n    geo_obj.show_edit_on_select = true;\n    this.layer.events.on({\n        'featureselected': function(evt) {OpenLayers.HooksPopups.on_feature_select_edit(evt, geo_obj); OpenLayers.HooksPopups.on_feature_select(evt, geo_obj);},\n        'featureunselected': function(evt) {OpenLayers.HooksPopups.on_feature_unselect(evt, geo_obj);}\n    });\n\n    var view_top_pos = new OpenLayers.Pixel(100, 50);\n    var view_top = OpenLayers.Util.createDiv(\"view_top\", view_top_pos, null, null, \"absolute\", \"1px solid \" + this.map_border_background);\n    view_top.style.fontSize = \"1px\";\n    view_top.style.width = \"600px\";\n    view_top.style.height = \"1px\";\n    view_top.style.background = this.map_border_background;\n    view_top.style.backgroundColor = this.map_border_background;\n    view_top.style.zIndex = this.map_border_zindex_on;\n    view_top.style.opacity = \"0.50\";\n    view_top.style.filter = \"alpha(opacity=50)\"; // IE\n    this.map.viewPortDiv.appendChild(view_top);\n\n    var view_bot_pos = new OpenLayers.Pixel(100, 450);\n    var view_bot = OpenLayers.Util.createDiv(\"view_bot\", view_bot_pos, null, null, \"absolute\", \"1px solid \" + this.map_border_background);\n    view_bot.style.fontSize = \"1px\";\n    view_bot.style.width = \"600px\";\n    view_bot.style.height = \"1px\";\n    view_bot.style.background = this.map_border_background;\n    view_bot.style.backgroundColor = this.map_border_background;\n    view_bot.style.zIndex = this.map_border_zindex_on;\n    view_bot.style.opacity = \"0.50\";\n    view_bot.style.filter = \"alpha(opacity=50)\"; // IE\n    this.map.viewPortDiv.appendChild(view_bot);\n\n    var view_left_pos = new OpenLayers.Pixel(100, 50);\n    var view_left = OpenLayers.Util.createDiv(\"view_left\", view_left_pos, null, null, \"absolute\", \"1px solid \" + this.map_border_background);\n    view_left.style.fontSize = \"1px\";\n    view_left.style.width = \"1px\";\n    view_left.style.height = \"400px\";\n    view_left.style.background = this.map_border_background;\n    view_left.style.backgroundColor = this.map_border_background;\n    view_left.style.zIndex = this.map_border_zindex_on;\n    view_left.style.opacity = \"0.50\";\n    view_left.style.filter = \"alpha(opacity=50)\"; // IE\n    this.map.viewPortDiv.appendChild(view_left);\n\n    var view_right_pos = new OpenLayers.Pixel(700, 50);\n    var view_right = OpenLayers.Util.createDiv(\"view_right\", view_right_pos, null, null, \"absolute\", \"1px solid \" + this.map_border_background);\n    view_right.style.fontSize = \"1px\";\n    view_right.style.width = \"1px\";\n    view_right.style.height = \"400px\";\n    view_right.style.background = this.map_border_background;\n    view_right.style.backgroundColor = this.map_border_background;\n    view_right.style.zIndex = this.map_border_zindex_on;\n    view_right.style.opacity = \"0.50\";\n    view_right.style.filter = \"alpha(opacity=50)\"; // IE\n    this.map.viewPortDiv.appendChild(view_right);\n\n    this.border_left = view_left;\n    this.border_right = view_right;\n    this.border_top = view_top;\n    this.border_bottom = view_bot;\n\n    this.set_map_width(this.map_art_view_width_default);\n    this.set_map_height(this.map_art_view_height_default);\n\n    this.map.events.register(\"moveend\", null, function() {\n        geo_obj.map_position_changed();\n    });\n    this.map.events.register(\"zoomend\", null, function() {\n        geo_obj.map_zoom_changed();\n    });\n    this.map.events.register(\"changelayer\", null, function(evt) {\n        if (\"visibility\" == evt.property) {\n            OpenLayers.HooksLocal.on_layer_switch(geo_obj.map);\n            geo_obj.set_map_provider();\n        }\n    });\n\n};\n\n// for closing the edit window\nthis.close_edit_window = function ()\n{\n    $(\"#map_mapedit\").addClass('map_hidden');\n};\n\n// for displaying the edit window\nthis.open_edit_window = function ()\n{\n    $(\"#map_mapedit\").removeClass('map_hidden');\n};\n\n// showing the last saved reader view\nthis.map_showview = function()\n{\n    var map_names = this.map.getLayersByName(this.map_view_layer_name_saved);\n    if (0 < map_names.length)\n    {\n        this.map.setBaseLayer(map_names[0]);\n    }\n    this.map.setCenter(this.map_view_layer_center_saved, this.map_view_layer_zoom_saved);\n};\n\n// setting the current view as the reader initial view\nthis.map_setview = function()\n{\n    this.set_save_state(true);\n    this.map_spec_changed = true;\n\n    this.map_view_layer_name = this.map.baseLayer.name;\n    this.map_view_layer_name_saved = this.map.baseLayer.name;\n    this.map_view_layer_center = this.map.getCenter();\n    this.map_view_layer_center_saved = this.map.getCenter();\n    this.map_view_layer_zoom = this.map.getZoom();\n    this.map_view_layer_zoom_saved = this.map_view_layer_zoom;\n};\n\n// map provider is set automatically on map layer change\nthis.set_map_provider = function ()\n{\n    if ((\"\" != this.map_view_layer_name) && (this.map_view_layer_name != this.map.baseLayer.name))\n    {\n        this.map_view_layer_name = this.map.baseLayer.name;\n\n        this.set_save_state(true);\n        this.map_spec_changed = true;\n    }\n};\n\n// map position is set automatically on map layer change\nthis.map_position_changed = function ()\n{\n    if (this.map_view_layer_center)\n    {\n        var current_map_center = this.map.getCenter();\n        if ((current_map_center.lon != this.map_view_layer_center.lon) || (current_map_center.lat != this.map_view_layer_center.lat))\n        {\n            var old_pos = new OpenLayers.LonLat(this.map_view_layer_center.lon, this.map_view_layer_center.lat).transform(\n                this.map.getProjectionObject(),\n                new OpenLayers.Projection(\"EPSG:4326\")\n            );\n            var new_pos = new OpenLayers.LonLat(current_map_center.lon, current_map_center.lat).transform(\n                this.map.getProjectionObject(),\n                new OpenLayers.Projection(\"EPSG:4326\")\n            );\n\n            var min_dif = 0.0000001;\n            var lon_dif = Math.abs(new_pos.lon - old_pos.lon);\n            var lat_dif = Math.abs(new_pos.lat - old_pos.lat);\n\n            if ((min_dif < lon_dif) || (min_dif < lat_dif)) {\n                this.map_view_layer_center = current_map_center;\n                this.set_save_state(true);\n                this.map_spec_changed = true;\n            }\n        }\n    }\n\n    OpenLayers.HooksLocal.map_check_pois(this);\n\n    this.restart_select_control();\n\n};\n\n// map zoom is set automatically on map layer change\nthis.map_zoom_changed = function ()\n{\n    {\n        var current_map_zoom = this.map.getZoom();\n        if (current_map_zoom != this.map_view_layer_zoom)\n        {\n            this.map_view_layer_zoom = current_map_zoom;\n            this.set_save_state(true);\n            this.map_spec_changed = true;\n        }\n    }\n\n    OpenLayers.HooksLocal.map_check_pois(this);\n\n    this.restart_select_control();\n\n};\n\n// ol loose the select control for many times\nthis.restart_select_control = function()\n{\n    var geo_obj = this;\n    var map = geo_obj.map;\n    if (geo_obj.select_control) {\n        geo_obj.select_control.destroy();\n    }\n    geo_obj.select_control = new OpenLayers.Control.SelectFeature(geo_obj.layer);\n    map.addControl(map.geo_obj.select_control);\n    geo_obj.select_control.activate();\n};\n\n// changing the size for the map div for the reader view\nthis.map_width_change = function(size, unsaved)\n{\n    if ((0 > size) && (10 >= this.map_art_view_width)) {return;}\n    if ((0 < size) && (this.map_limit_width_view <= this.map_art_view_width)) {return;}\n\n    if (undefined === unsaved) {unsaved = true;}\n    if (unsaved)\n    {\n        this.set_save_state(true);\n        this.map_spec_changed = true;\n    }\n\n    var map_left_border = this.border_left;\n    var map_right_border = this.border_right;\n    var map_top_border = this.border_top;\n    var map_bottom_border = this.border_bottom;\n\n    var map_view_size = document.getElementById ? document.getElementById(\"map_view_size\") : null;\n\n    this.map_art_view_width += size;\n    this.map_art_view_right -= size / 2;\n\n    map_view_size.innerHTML = this.map_art_view_width + \" x \" + this.map_art_view_height;\n\n    var border_zindex = this.map_border_zindex_on;\n    if (this.map_limit_width_display < this.map_art_view_width) {border_zindex = this.map_border_zindex_off;}\n    map_left_border.style.zIndex = border_zindex;\n    map_right_border.style.zIndex = border_zindex;\n\n    if ((0 > size) && (this.map_limit_width_display == this.map_art_view_width)) {return;}\n    if (this.map_limit_width_display < this.map_art_view_width) {return;}\n\n    this.map_art_view_width_display += size;\n    this.map_art_view_right_display -= size / 2;\n\n    map_left_border.style.left = (this.map_art_view_right_display - 6) + \"px\";\n    map_right_border.style.left = (this.map_art_view_right_display + this.map_art_view_width_display - 5) + \"px\";\n    map_top_border.style.width = (this.map_art_view_width_display + 2) + \"px\";\n    map_top_border.style.left = (this.map_art_view_right_display - 6) + \"px\";\n    map_bottom_border.style.width = (this.map_art_view_width_display + 2) + \"px\";\n    map_bottom_border.style.left = (this.map_art_view_right_display - 6) + \"px\";\n\n};\n\n// changing the size for the map div for the reader view\nthis.map_height_change = function(size, unsaved)\n{\n    if ((0 > size) && (10 >= this.map_art_view_height)) {return;}\n    if ((0 < size) && (this.map_limit_height_view <= this.map_art_view_height)) {return;}\n\n    if (undefined === unsaved) {unsaved = true;}\n    if (unsaved)\n    {\n        this.set_save_state(true);\n        this.map_spec_changed = true;\n    }\n\n    var map_left_border = this.border_left;\n    var map_right_border = this.border_right;\n    var map_top_border = this.border_top;\n    var map_bottom_border = this.border_bottom;\n\n    var map_view_size = document.getElementById ? document.getElementById(\"map_view_size\") : null;\n\n    this.map_art_view_height += size;\n    this.map_art_view_top -= size / 2;\n\n    map_view_size.innerHTML = this.map_art_view_width + \" x \" + this.map_art_view_height;\n\n    var border_zindex = this.map_border_zindex_on;\n    if (this.map_limit_height_display < this.map_art_view_height) {border_zindex = this.map_border_zindex_off;}\n    map_top_border.style.zIndex = border_zindex;\n    map_bottom_border.style.zIndex = border_zindex;\n\n    if ((0 > size) && (this.map_limit_height_display == this.map_art_view_height)) {return;}\n    if (this.map_limit_height_display < this.map_art_view_height) {return;}\n\n    this.map_art_view_height_display += size;\n    this.map_art_view_top_display -= size / 2;\n\n    map_bottom_border.style.top = (this.map_art_view_top_display + this.map_art_view_height_display - 22) + \"px\";\n    map_top_border.style.top = (this.map_art_view_top_display - 21) + \"px\";\n    map_right_border.style.height = (this.map_art_view_height_display - 1) + \"px\";\n    map_right_border.style.top = (this.map_art_view_top_display - 21) + \"px\";\n    map_left_border.style.height = (this.map_art_view_height_display - 1) + \"px\";\n    map_left_border.style.top = (this.map_art_view_top_display - 21) + \"px\";\n\n};\n\n// the data that should be loaded on POI edit start\nthis.load_point_data = function()\n{\n    this.load_point_label();\n    this.load_point_icon();\n\n    this.load_point_properties();\n\n    this.load_point_direct();\n};\n\n// storing POI's visible name\nthis.store_point_label = function(value, index)\n{\n    var label_value = \"\";\n    var label_obj = document.getElementById ? document.getElementById(\"point_label\") : null;\n    if (label_obj) {\n        label_value = label_obj.value;\n    }\n    if (undefined !== value) {\n        label_value = value;\n    }\n\n    var use_index = this.display_index(this.edited_point);\n    if (undefined !== index) {\n        use_index = index;\n    }\n\n    var cur_marker = this.layer.features[use_index];\n    var cur_poi_info = this.poi_markers[use_index];\n\n    var update_preview = false;\n    if (cur_poi_info.in_db)\n    {\n        if (label_value != cur_marker.attributes.m_title)\n        {\n            this.set_save_state(true); // if a new poi, the state is already set to true\n\n            cur_poi_info.content_changed = true;\n            cur_poi_info.text_changed = true;\n            update_preview = true;\n            this.main_page_upload = true;\n        }\n    }\n    cur_marker.attributes.m_title = label_value;\n    if (update_preview) {this.update_edit_preview();}\n\n    this.update_poi_descs(use_index);\n};\n\n// loading POI's visible name\nthis.load_point_label = function()\n{\n    var label_obj = document.getElementById ? document.getElementById(\"point_label\") : null;\n\n    var use_index = this.display_index(this.edited_point);\n    var cur_marker = this.layer.features[use_index];\n    label_obj.value = cur_marker.attributes.m_title;\n\n};\n\n// storing POI's specified property\nthis.store_point_property = function(property, value, index)\n{\n    if (\"text\" == property) {\n        if (value == this.display_strings.fill_in_the_point_description) {\n            value = \"\";\n        }\n    }\n\n    var video_source = null;\n\n    if (\"video_id\" == property) {\n        var vid_patterns = [/(.*)youtu\\.be\\/([^\\/\\?\\&\\s]+)/i, /(.*)youtube\\.com\\/watch\\?v\\=([^\\/\\?\\&\\s]+)/i, /(.*)vimeo\\.com\\/([^\\/\\?\\&\\s]+)/i];\n        var vid_type_sources = [\"youtube\", \"youtube\", \"vimeo\"];\n        var vid_patterns_count = vid_patterns.length;\n        var vid_match = \"\";\n        for (var vid = 0; vid < vid_patterns_count; vid++) {\n            var vid_pat = vid_patterns[vid];\n            vid_match = \"\";\n            if (vid_match = vid_pat.exec(value)) {\n                try {\n                    var value_test = vid_match[2];\n                    if (value_test) {\n                        value = value_test;\n                        video_source = vid_type_sources[vid];\n                    }\n                }\n                catch(exc) {continue;};\n                break;\n            }\n        }\n\n        if (!video_source) {\n            var value_test = value;\n            value_test = value_test.toLowerCase();\n            if (-1 < value_test.indexOf(\".flv\")) {\n                video_source = \"flv\";\n            }\n            if (-1 < value_test.indexOf(\".swf\")) {\n                video_source = \"flash\";\n            }\n        }\n    }\n\n    var use_index = this.display_index(this.edited_point);\n    if (undefined !== index) {\n        use_index = index;\n    }\n\n    var cur_marker = this.layer.features[use_index];\n\n    var poi_property = \"m_\" + property;\n\n    var attrs = cur_marker.attributes;\n\n    var cur_poi_info = this.poi_markers[use_index];\n    var update_preview = false;\n    if (cur_poi_info.in_db)\n    {\n        if (value != attrs[poi_property])\n        {\n            this.set_save_state(true); // if a new poi, the state is already set to true\n\n            cur_poi_info.content_changed = true;\n            update_preview = true;\n            if (\"image\" == property.substr(0, 5))\n            {\n                cur_poi_info.image_changed = true;\n            }\n            else if (\"video\" == property.substr(0, 5))\n            {\n                cur_poi_info.video_changed = true;\n            }\n            else\n            {\n                cur_poi_info.text_changed = true;\n            }\n        }\n    }\n    attrs[poi_property] = value;\n\n    if (\"image\" == property.substr(0, 5))\n    {\n        GeoPopups.set_image_tag(attrs, this);\n    }\n\n    if (\"video\" == property.substr(0, 5))\n    {\n        GeoPopups.set_embed_tag(attrs, this);\n        this.update_video_label();\n    }\n    if (update_preview) {this.update_edit_preview();}\n\n    if (null !== video_source) {\n        var video_source_types = {\"youtube\":1, \"vimeo\":2, \"flash\":3, \"flv\":4};\n        if (video_source in video_source_types) {\n            var video_source_rank = video_source_types[video_source];\n            var video_type_obj = document.getElementById ? document.getElementById(\"point_video_type\") : null;\n            if (video_type_obj) {\n                video_type_obj.selectedIndex = video_source_rank;\n                this.store_point_property(\"video_type\", video_source);\n            }\n        }\n    }\n\n};\n\n// loading POI's properties\nthis.load_point_properties = function()\n{\n    var use_index = this.display_index(this.edited_point);\n    var cur_marker = this.layer.features[use_index];\n\n    var poi_prop_names = {};\n    poi_prop_names['text'] = \"point_descr\";\n    poi_prop_names['link'] = \"point_link\";\n    poi_prop_names['content'] = \"point_content\";\n    poi_prop_names['image_source'] = \"point_image\";\n    poi_prop_names['image_width'] = \"point_image_width\";\n    poi_prop_names['image_height'] = \"point_image_height\";\n    poi_prop_names['video_id'] = \"point_video\";\n    poi_prop_names['video_width'] = \"point_video_width\";\n    poi_prop_names['video_height'] = \"point_video_height\";\n\n    var video_type = cur_marker.attributes['m_video_type'];\n\n    for (var one_name in poi_prop_names)\n    {\n        var div_name = poi_prop_names[one_name];\n        var div_obj = document.getElementById ? document.getElementById(div_name) : null;\n\n        var poi_property = \"m_\" + one_name;\n        var one_value = cur_marker.attributes[poi_property];\n        if (!one_value) {one_value = \"\";}\n\n        if ((\"point_descr\" == div_name) && (\"\" == one_value)) {\n            one_value = this.display_strings.fill_in_the_point_description;\n        }\n\n        if ((\"video_id\" == one_name) && one_value && (0 < one_value.length)) {\n            if (\"youtube\" == video_type) {\n                one_value = \"http://youtu.be/\" + one_value;\n            }\n            if (\"vimeo\" == video_type) {\n                one_value = \"http://vimeo.com/\" + one_value;\n            }\n        }\n\n        div_obj.value = one_value;\n    }\n\n    var video_type_names = {'none': 0, 'youtube': 1, 'vimeo': 2, 'flash': 3, 'flv': 4};\n\n    if (!video_type) {video_type = \"none\";}\n    var video_index = video_type_names[video_type];\n    if (!video_index) {video_index = 0;}\n\n    var video_type_obj = document.getElementById ? document.getElementById(\"point_video_type\") : null;\n    video_type_obj.selectedIndex = video_index;\n\n    this.update_video_label();\n};\n\n// setting the proper video label at point editing\nthis.update_video_label = function()\n{\n    var video_type_obj = document.getElementById ? document.getElementById(\"point_video_type\") : null;\n    var video_index = video_type_obj.selectedIndex;\n    if (3 <= video_index)\n    {\n        $(\"#video_file_label_id\").addClass(\"map_hidden\");\n        $(\"#video_file_label_file\").removeClass(\"map_hidden\");\n    }\n    else\n    {\n        $(\"#video_file_label_id\").removeClass(\"map_hidden\");\n        $(\"#video_file_label_file\").addClass(\"map_hidden\");\n    }\n\n    var desc_ids = [\"geo_video_desc_other\", \"geo_video_desc_youtube\", \"geo_video_desc_vimeo\", \"geo_video_desc_local_swf\", \"geo_video_desc_local_flv\"];\n    var desc_ids_count = desc_ids.length;\n    if ((0 > video_index) || (desc_ids_count <= video_index)) {\n        video_index = 0;\n    }\n\n    for (var vind = 0; vind < desc_ids_count; vind++) {\n        var one_desc_id = desc_ids[vind];\n        if (vind == video_index) {\n            $(\"#\" + one_desc_id + \"\").removeClass(\"map_hidden\");\n        } else {\n            $(\"#\" + one_desc_id + \"\").addClass(\"map_hidden\");\n        }\n    }\n\n};\n\n// loading POI's marker icon\nthis.load_point_icon = function()\n{\n    var img_selected = document.getElementById ? document.getElementById(\"edit_marker_selected_src\") : null;\n\n    var img_index = 0;\n    if (this.layer && this.layer.features && this.layer.features[this.edited_point])\n    {\n        img_index = this.layer.features[this.edited_point].attributes.m_type;\n    }\n\n    var img_label = this.marker_src_labels[img_index];\n    var img_icon = this.marker_src_icons[img_label];\n    var img_path = img_icon[\"path\"];\n\n    img_selected.src = img_path;\n};\n\n// storing POI's info on prepared view vs. any html pop-up view\nthis.store_point_direct = function(direct_usage)\n{\n    var direct_num = 0;\n    var direct_bool = false;\n    this.edit_text_mode = 'plain';\n    if (direct_usage && (0 != direct_usage))\n    {\n        direct_num = 1;\n        direct_bool = true;\n        this.edit_text_mode = 'html';\n    }\n\n    this.set_save_state(true);\n\n    var use_index = this.display_index(this.edited_point);\n    var cur_marker = this.layer.features[use_index];\n\n    var cur_poi_info = this.poi_markers[use_index];\n    var update_preview = false;\n    if (cur_poi_info.in_db)\n    {\n        if (direct_bool != cur_marker.attributes.m_direct)\n        {\n            cur_poi_info.content_changed = true;\n            cur_poi_info.text_changed = true;\n            update_preview = true;\n        }\n    }\n\n    cur_marker.attributes.m_direct = direct_bool;\n    if (update_preview) {this.update_edit_preview();}\n\n    this.set_edit_direct();\n};\n\n// getting info for point editing\nthis.load_point_direct = function()\n{\n    var predef_obj = document.getElementById ? document.getElementById(\"point_predefined\") : null;\n\n    var use_index = this.display_index(this.edited_point);\n    var cur_marker = this.layer.features[use_index];\n    var cur_direct = cur_marker.attributes.m_direct;\n\n    if (undefined === cur_direct) {cur_direct = false;}\n\n    var selIndex = 0;\n    if (cur_direct) {selIndex = 1;}\n    predef_obj.selectedIndex = selIndex;\n\n    this.edit_text_mode = 'plain';\n    if (cur_direct)\n    {\n        this.edit_text_mode = 'html';\n    }\n    this.edit_view_mode = 'edit';\n\n    this.update_edit_preview();\n    this.set_edit_direct();\n};\n\n// updating the preview view at point editing\nthis.update_edit_preview = function()\n{\n    return;\n\n    var use_index = this.display_index(this.edited_point);\n    if (this.layer && this.layer.features && this.layer.features[use_index])\n    {\n        var cur_marker = this.layer.features[use_index];\n        var popup_info = GeoPopups.create_popup_content(cur_marker, this);\n        var popup_content = popup_info['inner_html'];\n\n        var min_width = popup_info['min_width'];\n        var min_height = popup_info['min_height'];\n\n        var content_obj = document.getElementById ? document.getElementById(\"edit_part_preview\") : null;\n\n        content_obj.innerHTML = \"<div id=\\\"edit_popup_preview\\\" class=\\\"edit_popup_preview\\\">\" + popup_content + \"</div>\";\n\n        var preview_obj = document.getElementById ? document.getElementById(\"edit_popup_preview\") : null;\n\n        var height_taken = preview_obj.offsetHeight;\n        var width_taken = preview_obj.offsetWidth;\n        if (height_taken < min_height) {preview_obj.style.height = min_height + \"px\";}\n        if (width_taken < min_width) {preview_obj.style.width = min_width + \"px\";}\n\n    }\n};\n\n// displaying appropriate part for text input for the POI content\nthis.set_edit_direct = function()\n{\n    direct_usage = false;\n    if ('html' == this.edit_text_mode) {direct_usage = true;}\n\n    var direct_num = 0;\n    var direct_bool = false;\n    if (direct_usage && (0 != direct_usage))\n    {\n        direct_num = 1;\n        direct_bool = true;\n    }\n\n    if (direct_usage)\n    {\n        $(\"#edit_part_text\").addClass(\"map_hidden\");\n        {\n            $(\"#edit_part_content\").removeClass(\"map_hidden\");\n        }\n    }\n    else\n    {\n        $(\"#edit_part_content\").addClass(\"map_hidden\");\n        {\n            $(\"#edit_part_text\").removeClass(\"map_hidden\");\n        }\n    }\n\n};\n\n// setting POI's icon on edit action\nthis.map_edit_set_marker = function(index)\n{\n    this.set_save_state(true);\n\n    var img_label = this.marker_src_labels[index];\n    var img_icon = this.marker_src_icons[img_label];\n    var img_path = img_icon[\"path\"];\n\n    var img_selected = document.getElementById ? document.getElementById(\"edit_marker_selected_src\") : null;\n    img_selected.src = img_path;\n\n    var use_index = this.edited_point;\n    var feature = this.layer.features[use_index];\n    var attrs = feature.attributes;\n\n    var marker_type = 2 * index;\n    if (attrs.m_disabled) {marker_type += 1;}\n\n    var cur_poi_info = this.poi_markers[use_index];\n    if (cur_poi_info.in_db)\n    {\n        if (index != attrs.m_type)\n        {\n            cur_poi_info.content_changed = true;\n            cur_poi_info.icon_changed = true;\n        }\n    }\n    attrs.m_type = index;\n\n    attrs.type = marker_type;\n    this.layer.redraw();\n\n};\n\n// preparing icon part of POI editing, initial phase\nthis.map_edit_prepare_markers = function()\n{\n    var img_selected = document.getElementById ? document.getElementById(\"edit_marker_selected_src\") : null;\n    var img_index = 0; //.m_type\n\n    var img_label = this.marker_src_labels[img_index];\n    var img_icon = this.marker_src_icons[img_label];\n    var img_path = img_icon[\"path\"];\n\n    img_selected.src = img_path;\n\n    var img_choices = document.getElementById ? document.getElementById(\"edit_marker_choices\") : null;\n\n    var choices_html = \"\";\n\n    var choice_one = \"\";\n    var choices_count = this.marker_src_labels.length;\n\n    var obj_name = this.get_obj_name();\n    for (var cind = 1; cind < choices_count; cind++)\n    {\n        var cur_img_label = this.marker_src_labels[cind];\n        var cur_img_icon = this.marker_src_icons[cur_img_label];\n        var cur_img_path = cur_img_icon[\"path\"];\n\n        choice_one = \"<a class=\\\"edit_marker_one_choice_link\\\" href='#' onClick=\\\"\" + obj_name + \".map_edit_set_marker(\" + cind + \"); return false;\\\"><img class='edit_marker_one_choice' src='\" + cur_img_path + \"'></a>\";\n        choices_html += choice_one;\n    }\n    img_choices.innerHTML = choices_html;\n\n};\n\n// setting the saved state flag\nthis.set_save_state = function(state)\n{\n    var save_obj = document.getElementById ? document.getElementById(\"map_button_save\") : null;\n\n    if (state)\n    {\n        this.something_to_save = true;\n\n        save_obj.disabled = false;\n    }\n    else\n    {\n        this.something_to_save = false;\n\n        save_obj.disabled = true;\n    }\n\n};\n\n// loading the POI data, for the initial phase\nthis.map_pois_load = function(script_dir)\n{\n    this.set_save_state(false);\n\n    var geo_obj = this;\n    callServer(['Geo_Map', 'LoadMapData'], [\n        this.map_id,\n        this.language_id,\n        this.article_number\n        ], function(json) {\n            geo_obj.got_load_data(json);\n        });\n};\n\nthis.map_update_name_state = function(value, input_name)\n{\n    var map_name_value = this.map_label_name;\n\n    if ((undefined !== value) && (null !== value)) {\n        map_name_value = value;\n    }\n    if ((undefined !== input_name) && (null !== input_name)) {\n        var input_obj = document.getElementById ? document.getElementById(input_name) : null;\n        if (input_obj) {\n            map_name_value = input_obj.value;\n        }\n    }\n\n    if (\"\" == map_name_value) {\n        $(\"#map_name_display\").addClass(\"map_text_lack\");\n        $(\"#map_name_input\").addClass(\"map_text_lack\");\n    } else {\n        $(\"#map_name_display\").removeClass(\"map_text_lack\");\n        $(\"#map_name_input\").removeClass(\"map_text_lack\");\n    }\n\n};\n\n// setting the map for editing its name\nthis.map_edit_name = function()\n{\n    $(\"#map_name_display\").addClass(\"map_hidden\");\n    $(\"#map_name_input\").removeClass(\"map_hidden\");\n\n    var input_obj = document.getElementById ? document.getElementById(\"map_name_input\") : null;\n    input_obj.focus();\n\n    this.map_update_name_state();\n};\n\n// setting the map for displaying its name\nthis.map_display_name = function()\n{\n    this.map_save_name();\n\n    $(\"#map_name_display\").removeClass(\"map_hidden\");\n    $(\"#map_name_input\").addClass(\"map_hidden\");\n\n    this.map_update_name_state();\n};\n\n// saving the name of the map\nthis.map_save_name = function()\n{\n    var input_obj = document.getElementById ? document.getElementById(\"map_name_input\") : null;\n    var display_obj = document.getElementById ? document.getElementById(\"map_name_display\") : null;\n\n    var name_value = input_obj.value;\n    {\n        var map_name_disp_str = name_value;\n        map_name_disp_str = map_name_disp_str.replace(/&/gi, \"&amp;\");\n        map_name_disp_str = map_name_disp_str.replace(/</gi, \"&lt;\");\n        map_name_disp_str = map_name_disp_str.replace(/>/gi, \"&gt;\");\n\n        var max_len = this.map_name_max_length;\n        if (max_len < map_name_disp_str.length)\n        {\n            map_name_disp_str = map_name_disp_str.substr(0, max_len) + \"...\";\n        }\n\n        if (\"\" == map_name_disp_str) {\n            map_name_disp_str = this.display_strings.fill_in_map_name;\n        }\n\n        display_obj.innerHTML = map_name_disp_str;\n\n        if (name_value != this.map_label_name)\n        {\n            this.map_label_name = name_value;\n            this.map_spec_changed = true;\n            this.set_save_state(true);\n        }\n    }\n\n};\n\n// putting map name into the editing page\nthis.map_load_name = function()\n{\n    var input_obj = document.getElementById ? document.getElementById(\"map_name_input\") : null;\n    var display_obj = document.getElementById ? document.getElementById(\"map_name_display\") : null;\n\n    var name_value = this.map_label_name;\n\n    input_obj.value = name_value;\n\n    if (\"\" != name_value)\n    {\n        var map_name_disp_str = name_value;\n        map_name_disp_str = map_name_disp_str.replace(/&/gi, \"&amp;\");\n        map_name_disp_str = map_name_disp_str.replace(/</gi, \"&lt;\");\n        map_name_disp_str = map_name_disp_str.replace(/>/gi, \"&gt;\");\n\n        var max_len = this.map_name_max_length;\n        if (max_len < map_name_disp_str.length)\n        {\n            map_name_disp_str = map_name_disp_str.substr(0, max_len) + \"...\";\n        }\n        display_obj.innerHTML = map_name_disp_str;\n\n        $(display_obj).removeClass(\"map_text_lack\");\n    }\n    else\n    {\n        display_obj.innerHTML = this.display_strings.fill_in_map_name;\n        $(display_obj).addClass(\"map_text_lack\");\n    }\n\n};\n\n// the main action on ajax data retrieval\n// it throws away all the current POI info\nthis.got_load_data = function (received_obj)\n{\n    this.select_control.destroy();\n\n    this.set_save_state(false);\n\n    this.edited_point = 0;\n    this.poi_rank_out = 0;\n\n    this.poi_order_user = [];\n    this.poi_markers = [];\n    this.descs_count = 0;\n    this.descs_count_inc = 0;\n    this.poi_order_changed = false;\n    this.map_spec_changed = false;\n\n    this.layer.removeFeatures(this.layer.features);\n    if (this.popup)\n    {\n        // this pop-up removal seems to be sometimes strange\n        try {\n            this.map.removePopup(this.popup);\n            this.popup.destroy();\n        }\n        catch (e) {}\n        this.popup = null;\n    }\n\n    this.close_edit_window();\n\n    var features_to_add = [];\n\n    var lonlat = null;\n\n    this.set_map_usage(received_obj.map, true);\n\n    var poi_count = received_obj.pois.length;\n    for (var pind = 0; pind < poi_count; pind++)\n    {\n        var one_marker = {};\n        var one_poi = received_obj.pois[pind];\n\n        lonlat = new OpenLayers.LonLat(one_poi.longitude, one_poi.latitude).transform(\n            new OpenLayers.Projection(\"EPSG:4326\"),\n            this.map.getProjectionObject()\n        );\n\n        one_marker['lon'] = parseFloat(one_poi.longitude);\n        one_marker['lat'] = parseFloat(one_poi.latitude);\n        one_marker['map_lon'] = lonlat.lon;\n        one_marker['map_lat'] = lonlat.lat;\n\n        one_marker['usage'] = true;\n        one_marker['location_changed'] = false;\n        one_marker['content_changed'] = false;\n\n        one_marker['icon_changed'] = false;\n        one_marker['state_changed'] = false;\n        one_marker['image_changed'] = false;\n        one_marker['video_changed'] = false;\n        one_marker['text_changed'] = false;\n\n        one_marker['in_db'] = true;\n        one_marker['loc_index'] = one_poi.loc_id;\n        one_marker['con_index'] = one_poi.con_id;\n        one_marker['tmp_index'] = 0;\n\n        this.poi_order_user.push(pind);\n        this.poi_markers.push(one_marker);\n\n        var disabled = false;\n        if (0 == one_poi.display) {disabled = true;}\n\n        var img_name = one_poi.style;\n        var icon_type = 0;\n        var image_count = this.marker_src_labels.length;\n        for (var lind = 0; lind < image_count; lind++)\n        {\n            var cur_label = this.marker_src_labels[lind];\n            var cur_image = this.marker_src_icons[cur_label]['name'];\n\n            if (cur_image == img_name)\n            {\n                icon_type = lind;\n                break;\n            }\n        }\n        var icon_view = 2 * icon_type;\n        if (disabled) {icon_view += 1;}\n\n        var point = new OpenLayers.Geometry.Point(lonlat.lon, lonlat.lat);\n        var vector = new OpenLayers.Feature.Vector(point, {type: icon_view});\n\n        vector.attributes.m_rank = pind;\n        vector.attributes.m_disabled = disabled;\n        vector.attributes.m_type = icon_type;\n\n        vector.attributes.m_title = one_poi['title'];\n        vector.attributes.m_perex = one_poi['perex'];\n\n        var direct = false;\n        if (0 == one_poi['content_type']) {direct = true;}\n        vector.attributes.m_direct = direct;\n        vector.attributes.m_content = one_poi['content'];\n\n        vector.attributes.m_text = one_poi['text'];\n        vector.attributes.m_link = one_poi['link'];\n        vector.attributes.m_image_mm = one_poi['image_mm'];\n        vector.attributes.m_image_source = one_poi['image_src'];\n        var one_image_width = one_poi['image_width'];\n        if (\"0\" == \"\" + one_image_width) {one_image_width = \"\";}\n        var one_image_height = one_poi['image_height'];\n        if (\"0\" == \"\" + one_image_height) {one_image_height = \"\";}\n        vector.attributes.m_image_width = one_image_width;\n        vector.attributes.m_image_height = one_image_height;\n\n        vector.attributes.m_image_share = false;\n        vector.attributes.m_video_mm = one_poi['video_mm'];\n\n        vector.attributes.m_video_id = one_poi['video_id'];\n        vector.attributes.m_video_type = one_poi['video_type'];\n        var one_video_width = one_poi['video_width'];\n        if (\"0\" == \"\" + one_video_width) {one_video_width = \"\";}\n        var one_video_height = one_poi['video_height'];\n        if (\"0\" == \"\" + one_video_height) {one_video_height = \"\";}\n        vector.attributes.m_video_width = one_video_width;\n        vector.attributes.m_video_height = one_video_height;\n\n        vector.attributes.m_video_share = false;\n\n        vector.attributes.m_image = \"\";\n        vector.attributes.m_embed = \"\";\n        GeoPopups.set_image_tag(vector.attributes, this);\n        GeoPopups.set_embed_tag(vector.attributes, this);\n\n        features_to_add.push(vector);\n\n    }\n\n    this.layer.addFeatures(features_to_add);\n\n    this.descs_count = poi_count;\n    this.descs_count_inc = poi_count;\n\n    this.select_control = new OpenLayers.Control.SelectFeature(this.layer);\n    this.map.addControl(this.select_control);\n    this.select_control.activate();\n\n    this.update_poi_descs();\n\n    // setting to tha saved state at the button pressing now\n    //this.set_save_state(false);\n\n    if (!this.popup_prev_button)\n    {\n        this.popup_prev_button = document.getElementById ? document.getElementById(\"map_button_preview\") : null;\n    }\n\n    if (\"0\" == \"\" + this.map_id)\n    {\n        this.map_spec_changed = true;\n        this.set_save_state(true);\n    }\n    else\n    {\n        if (this.popup_prev_button) {this.popup_prev_button.disabled = false;}\n    }\n\n    OpenLayers.HooksLocal.map_check_pois(this);\n\n    if (this.go_to_preview_page) {\n        this.go_to_preview_page = false;\n        window.map_show_preview(true);\n    }\n\n};\n\n// setting point information for ajax based saving of it\nthis.set_save_content_on_poi = function(save_obj, poi_attrs, marker_info)\n{\n    var poi_prop_names = {};\n\n    poi_prop_names['title'] = \"name\";\n    poi_prop_names['perex'] = \"perex\";\n    poi_prop_names['content'] = \"content\";\n    poi_prop_names['text'] = \"text\";\n    poi_prop_names['link'] = \"link\";\n\n    poi_prop_names['image_mm'] = \"image_mm\";\n    poi_prop_names['image_source'] = \"image_src\";\n    poi_prop_names['image_width'] = \"image_width\";\n    poi_prop_names['image_height'] = \"image_height\";\n\n    poi_prop_names['video_mm'] = \"video_mm\";\n    poi_prop_names['video_id'] = \"video_id\";\n    poi_prop_names['video_type'] = \"video_type\";\n    poi_prop_names['video_width'] = \"video_width\";\n    poi_prop_names['video_height'] = \"video_height\";\n\n    for (var one_name in poi_prop_names)\n    {\n        var poi_property = \"m_\" + one_name;\n        var obj_property = poi_prop_names[one_name];\n\n        var one_value = poi_attrs[poi_property];\n        if (!one_value) {one_value = \"\";}\n        save_obj[obj_property] = one_value;\n    }\n\n    var img_label = this.marker_src_labels[poi_attrs.m_type];\n    var img_icon = this.marker_src_icons[img_label];\n    var img_name = img_icon[\"name\"];\n    save_obj[\"style\"] = img_name;\n\n    var content_type = 1;\n    if (poi_attrs.m_direct) {content_type = 0;}\n    save_obj[\"content_type\"] = content_type;\n\n    var display_poi = 1;\n    if (poi_attrs.m_disabled) {display_poi = 0;}\n    save_obj[\"display\"] = display_poi;\n\n    save_obj['text_changed'] = marker_info[\"text_changed\"];\n    save_obj['icon_changed'] = marker_info[\"icon_changed\"];\n    save_obj['state_changed'] = marker_info[\"state_changed\"];\n    save_obj['image_changed'] = marker_info[\"image_changed\"];\n    save_obj['video_changed'] = marker_info[\"video_changed\"];\n};\n\n// prepare info of new points for saving\nthis.put_poi_into_insertions = function(storage, index)\n{\n    var cur_marker = this.poi_markers[index];\n    var cur_attrs = this.layer.features[index].attributes;\n\n    var cur_obj = {\n        'index': cur_marker['tmp_index'],\n        'longitude': cur_marker['lon'],\n        'latitude': cur_marker['lat']\n    };\n\n    this.set_save_content_on_poi(cur_obj, cur_attrs, cur_marker);\n    storage.push(cur_obj);\n};\n\n// prepare info on points with changed positions for saving of it\nthis.put_into_poi_locations = function(storage, index)\n{\n    var cur_marker = this.poi_markers[index];\n\n    var cur_obj = {\n        'id': cur_marker['loc_index'],\n        'longitude': cur_marker['lon'],\n        'latitude': cur_marker['lat']\n    };\n\n    storage.push(cur_obj);\n};\n\n// prepare info on points with changed contents for saving of it\nthis.put_into_poi_contents = function(storage, index)\n{\n    var cur_marker = this.poi_markers[index];\n    var cur_attrs = this.layer.features[index].attributes;\n\n    var cur_obj = {\n        'id': cur_marker['con_index'],\n        'location_id': cur_marker['loc_index']\n    };\n\n    this.set_save_content_on_poi(cur_obj, cur_attrs, cur_marker);\n\n    storage.push(cur_obj);\n\n};\n\nthis.check_points_filled = function()\n{\n    var filled = true;\n\n    var features = this.layer.features;\n    var poi_count = features.length;\n\n    for (var pind = 0; pind < poi_count; pind++) {\n        var one_filled = false;\n\n        var cur_attrs = features[pind].attributes;\n\n        if (!cur_attrs.m_direct) {\n            if (\"\" != cur_attrs.m_text) {one_filled = true;}\n        } else {\n            if (\"\" != cur_attrs.m_content) {one_filled = true;}\n        }\n\n        if (!one_filled) {\n            if (cur_attrs.m_image_source) {one_filled = true;}\n            if (cur_attrs.m_video_id && cur_attrs.m_video_type) {one_filled = true;}\n        }\n\n        if (!one_filled) {\n            filled = false;\n            break;\n        }\n    }\n\n    return filled;\n};\n\n// saving data, on the main 'save' user action; do ajax here\nthis.map_save_all = function(script_dir, force_save)\n{\n    if (!this.something_to_save) {return;}\n\n    var geo_obj = this;\n\n    var cur_marker = null;\n\n    // init args\n    var args = {\n        'f_map': '',\n        'f_remove': '',\n        'f_order': '',\n        'f_insert_new': '',\n        'f_update_loc': '',\n        'f_update_con': ''\n    };\n\n    if ((0 == this.map_id) || (this.map_spec_changed))\n    {\n        var prov_label = \"\";\n        for (var one_prov_name in this.map_view_layer_names_all)\n        {\n            if (this.map_view_layer_names_all[one_prov_name] == this.map_view_layer_name) {prov_label = one_prov_name;}\n        }\n\n        var center_lonlat = new OpenLayers.LonLat(this.map_view_layer_center.lon, this.map_view_layer_center.lat);\n        center_lonlat.transform(\n            this.map.getProjectionObject(), new OpenLayers.Projection(\"EPSG:4326\")\n        )\n\n        var store_map_obj = {\n            'provider': prov_label,\n            'cen_lon': center_lonlat.lon,\n            'cen_lat': center_lonlat.lat,\n            'zoom': this.map_view_layer_zoom,\n            'width': this.map_art_view_width,\n            'height': this.map_art_view_height,\n            'name': this.map_label_name\n        };\n        var store_map_str = Base64.encode(JSON.stringify(store_map_obj));\n        store_map_str = store_map_str.replace(/\\+/gi, \"%2B\");\n        store_map_str = store_map_str.replace(/\\//gi, \"%2F\");\n        args['f_map'] = store_map_str;\n    }\n\n    if (0 < this.poi_deletion.length)\n    {\n        var remove_poi_str = Base64.encode(JSON.stringify(this.poi_deletion));\n        remove_poi_str = remove_poi_str.replace(/\\+/gi, \"%2B\");\n        remove_poi_str = remove_poi_str.replace(/\\//gi, \"%2F\");\n        args['f_remove'] = remove_poi_str;\n    }\n\n    var order_length = this.poi_order_user.length;\n    if (this.poi_order_changed && (0 < order_length))\n    {\n        var order_ids = [];\n        for (var oind = 0; oind < order_length; oind++)\n        {\n            var cur_poi_index = this.poi_order_user[oind];\n            cur_marker = this.poi_markers[cur_poi_index];\n            if (cur_marker.in_db) {order_ids.push({'state': 'old', 'content': cur_marker.con_index, 'location': cur_marker.loc_index});}\n            else {order_ids.push({'state': 'new', 'index': cur_marker.tmp_index});}\n        }\n        var order_poi_str = Base64.encode(JSON.stringify(order_ids));\n        order_poi_str = order_poi_str.replace(/\\+/gi, \"%2B\");\n        order_poi_str = order_poi_str.replace(/\\//gi, \"%2F\");\n        args['f_order'] = order_poi_str;\n    }\n\n    var insert_poi_new_array = [];\n    var update_poi_loc_array = [];\n    var update_poi_con_array = [];\n\n    var marker_count = this.poi_markers.length;\n    for (var mind = 0; mind < marker_count; mind++)\n    {\n        cur_marker = this.poi_markers[mind];\n        if (!cur_marker.in_db)\n        {\n            this.put_poi_into_insertions(insert_poi_new_array, mind);\n            continue;\n        }\n        if (cur_marker.location_changed)\n        {\n            this.put_into_poi_locations(update_poi_loc_array, mind);\n        }\n        if (cur_marker.content_changed)\n        {\n            this.put_into_poi_contents(update_poi_con_array, mind);\n        }\n    }\n    if (0 < insert_poi_new_array.length)\n    {\n        var insert_poi_new_str = Base64.encode(JSON.stringify(insert_poi_new_array));\n        insert_poi_new_str = insert_poi_new_str.replace(/\\+/gi, \"%2B\");\n        insert_poi_new_str = insert_poi_new_str.replace(/\\//gi, \"%2F\");\n        args['f_insert_new'] = insert_poi_new_str;\n    }\n    if (0 < update_poi_loc_array.length)\n    {\n        var update_poi_loc_str = Base64.encode(JSON.stringify(update_poi_loc_array));\n        update_poi_loc_str = update_poi_loc_str.replace(/\\+/gi, \"%2B\");\n        update_poi_loc_str = update_poi_loc_str.replace(/\\//gi, \"%2F\");\n        args['f_update_loc']= update_poi_loc_str;\n    }\n    if (0 < update_poi_con_array.length)\n    {\n        var update_poi_con_str = Base64.encode(JSON.stringify(update_poi_con_array));\n        update_poi_con_str = update_poi_con_str.replace(/\\+/gi, \"%2B\");\n        update_poi_con_str = update_poi_con_str.replace(/\\//gi, \"%2F\");\n        args['f_update_con'] = update_poi_con_str;\n    }\n\n    if (this.poi_order_changed)\n    {\n        this.main_page_upload = true;\n    }\n    if (0 < this.poi_deletion.length)\n    {\n        this.main_page_upload = true;\n    }\n    if (0 < insert_poi_new_array.length)\n    {\n        this.main_page_upload = true;\n    }\n\n    var geo_obj = this;\n    callServer(['Geo_Map', 'StoreMapData'], [\n        this.map_id,\n        this.language_id,\n        this.article_number,\n        args['f_map'],\n        args['f_remove'],\n        args['f_insert_new'],\n        args['f_update_loc'],\n        args['f_update_con'],\n        args['f_order']\n        ], function(json) {\n            geo_obj.got_load_data(json);\n        });\n\n    this.map_view_layer_name_saved = this.map_view_layer_name;\n    this.map_view_layer_center_saved = this.map_view_layer_center;\n    this.map_view_layer_zoom_saved = this.map_view_layer_zoom;\n\n    if (this.main_page_upload)\n    {\n        this.main_page_upload = false;\n    }\n};\n\n};\n\n"
  },
  {
    "path": "newscoop/js/geocoding/map_filter.js",
    "content": "// better for some providers to try more than once\nif (5 > OpenLayers.IMAGE_RELOAD_ATTEMPTS)\n{\n    OpenLayers.IMAGE_RELOAD_ATTEMPTS = 5;\n}\n\n// the main object to hold geo-things\nfunction geo_locations_filter () {\n\nthis.inited = false;\nthis.last_info_string = \"\";\n\n// what map provider should be used, and map position\nthis.map_view_layer_google = \"googlev3\";\nthis.map_view_layer_mapquest = \"mapquest\";\nthis.map_view_layer_osm = \"osm\";\nthis.map_view_layer_providers = {};\nthis.map_view_layer_providers[this.map_view_layer_google] = false;\nthis.map_view_layer_providers[this.map_view_layer_mapquest] = false;\nthis.map_view_layer_providers[this.map_view_layer_osm] = false;\n\nthis.map_view_layer_names_all = {};\nthis.map_view_layer_default = \"\";\nthis.map_view_layer_name = \"\";\nthis.map_view_layer_center_ini = {};\nthis.map_view_layer_center = null;\nthis.map_view_layer_zoom = 0;\n\n// tha map layer\nthis.map = null;\nthis.vectors = null;\nthis.controls = null;\nthis.obj_name = \"\";\nthis.auto_report = null;\nthis.img_url = \"\";\n\nthis.display_strings = {\n    corners: \"corners\",\n    google_map: \"Google&nbsp;Maps\",\n    mapquest_map: \"MapQuest&nbsp;Open\",\n    openstreet_map: \"OpenStreetMap\",\n    pan_map: \"Pan Map\",\n    edit_polygon: \"Edit Polygon\",\n    create_polygon: \"Create Polygon\"\n};\n\nthis.set_obj_name = function(name) {\n    this.obj_name = name;\n};\n\nthis.set_img_dir = function(dir) {\n    this.img_url = dir;\n};\n\n// setting the db based default info\nthis.set_map_info = function(params)\n{\n    this.map_view_layer_default = params[\"default\"];\n    var prov_len = params.providers.length;\n    for (var pind = 0; pind < prov_len; pind++)\n    {\n        this.map_view_layer_providers[params.providers[pind]] = true;\n    }\n\n    this.map_view_layer_center_ini = {\"longitude\": params.longitude, \"latitude\": params.latitude};\n    this.map_view_layer_zoom = parseInt(params.resolution);\n\n    this.map_art_view_width_default = parseInt(params.width);\n    this.map_art_view_height_default = parseInt(params.height);\n};\n\nthis.set_display_strings = function(local_strings)\n{\n    if (!local_strings) {return;}\n\n    var display_string_names = [\n        \"corners\",\n        \"google_map\",\n        \"mapquest_map\",\n        \"openstreet_map\",\n        \"pan_map\",\n        \"edit_polygon\",\n        \"create_polygon\"\n    ];\n\n    var str_count = display_string_names.length;\n    for (var sind = 0; sind < str_count; sind++)\n    {\n        var cur_str_name = display_string_names[sind];\n\n        if (undefined !== local_strings[cur_str_name])\n        {\n            this.display_strings[cur_str_name] = local_strings[cur_str_name];\n        }\n    }\n\n};\n\n// showing the current initial reader view\nthis.map_showview = function()\n{\n    var map_names = this.map.getLayersByName(this.map_view_layer_name);\n    if (0 < map_names.length)\n    {\n        this.map.setBaseLayer(map_names[0]);\n    }\n    this.map.setCenter(this.map_view_layer_center, this.map_view_layer_zoom);\n\n    return;\n\n};\n\nthis.add_polygon = function(data, layer) {\n    if (layer === undefined) {\n        layer = this.vectors;\n    }\n\n    var geo_obj = this;\n\n    var cur_polygon_points = [];\n    var one_point = null;\n\n    var geo_ring = null;\n    var geo_polygon = null;\n    var geo_polygon_feature = null;\n\n    var cur_stage = \"lat\";\n    var cur_lat = null;\n    var cur_lon = null;\n\n    try {\n        var data_parts = data.split(\" \");\n        var data_parts_size = data_parts.length;\n        for (var dind = 0; dind < data_parts_size; dind++) {\n            var one_part = data_parts[dind].replace(/^\\s+|\\s+$/g, '');\n            if (\"\" == one_part) {continue;}\n            one_part = one_part.replace(/;$/g, '');\n\n            one_part = one_part.toLowerCase();\n            if (\"polygon\" == one_part) {\n                if (0 < cur_polygon_points.length) {\n                    this.insert_polygon(cur_polygon_points, layer);\n                }\n\n                cur_polygon_points = [];\n\n                cur_stage = \"lat\";\n                cur_lat = null;\n                cur_lon = null;\n\n                continue;\n            }\n\n            one_number = parseFloat(one_part);\n            if (isNaN(one_number)) {continue;}\n            if (!isFinite(one_number)) {continue;}\n\n            if (\"lat\" == cur_stage) {\n                cur_lat = one_number;\n                cur_stage = \"lon\";\n            }\n            else {\n                cur_lon = one_number;\n                cur_stage = \"lat\";\n                one_point = new OpenLayers.Geometry.Point(cur_lon, cur_lat).transform(\n                    new OpenLayers.Projection(\"EPSG:4326\"), // transform from WGS 1984\n                    geo_obj.map.getProjectionObject() // to Spherical Mercator Projection\n                );\n                cur_polygon_points.push(one_point);\n                one_point = null;\n            }\n        }\n\n        if (0 < cur_polygon_points.length) {\n            this.insert_polygon(cur_polygon_points, layer);\n        }\n\n    } catch(e) {\n        alert(\"wrong polygon data\");\n    }\n\n    if (this.vectors == layer) {\n        this.report();\n    }\n};\n\nthis.into_method_pan = function(event) {\n    var geo_obj = this;\n    if (!geo_obj.inited) {return;}\n\n    geo_obj.controls.polygon.deactivate();\n    geo_obj.controls.modify.deactivate();\n\n    var pan_obj = document.getElementById ? document.getElementById(\"geo_filter_pan_map\") : null;\n    var mod_obj = document.getElementById ? document.getElementById(\"geo_filter_edit_polygon\") : null;\n    var new_obj = document.getElementById ? document.getElementById(\"geo_filter_create_polygon\") : null;\n    if (pan_obj) {\n        $(pan_obj).removeClass(\"geo_filter_unselected\");\n    }\n    if (mod_obj) {\n        $(mod_obj).addClass(\"geo_filter_unselected\");\n    }\n    if (new_obj) {\n        $(new_obj).addClass(\"geo_filter_unselected\");\n    }\n    if (pan_obj) {\n        $(pan_obj).addClass(\"geo_filter_selected\");\n    }\n    if (mod_obj) {\n        $(mod_obj).removeClass(\"geo_filter_selected\");\n    }\n    if (new_obj) {\n        $(new_obj).removeClass(\"geo_filter_selected\");\n    }\n\n    if (this.act_pan_map) {\n        this.act_pan_map.innerHTML = this.act_pan_map_button_on;\n    }\n    if (this.act_edit_polygon) {\n        this.act_edit_polygon.innerHTML = this.act_edit_polygon_button_off;\n    }\n    if (this.act_create_polygon) {\n        this.act_create_polygon.innerHTML = this.act_create_polygon_button_off;\n    }\n\n    if (event) {\n        event.stopImmediatePropagation();\n        event.preventDefault();\n    }\n\n};\n\nthis.into_method_mod = function(event) {\n    var geo_obj = this;\n    if (!geo_obj.inited) {return;}\n\n    geo_obj.controls.polygon.deactivate();\n    geo_obj.controls.modify.deactivate();\n    geo_obj.controls.modify.activate();\n\n    var pan_obj = document.getElementById ? document.getElementById(\"geo_filter_pan_map\") : null;\n    var mod_obj = document.getElementById ? document.getElementById(\"geo_filter_edit_polygon\") : null;\n    var new_obj = document.getElementById ? document.getElementById(\"geo_filter_create_polygon\") : null;\n    if (pan_obj) {\n        $(pan_obj).addClass(\"geo_filter_unselected\");\n    }\n    if (mod_obj) {\n        $(mod_obj).removeClass(\"geo_filter_unselected\");\n    }\n    if (new_obj) {\n        $(new_obj).addClass(\"geo_filter_unselected\");\n    }\n    if (pan_obj) {\n        $(pan_obj).removeClass(\"geo_filter_selected\");\n    }\n    if (mod_obj) {\n        $(mod_obj).addClass(\"geo_filter_selected\");\n    }\n    if (new_obj) {\n        $(new_obj).removeClass(\"geo_filter_selected\");\n    }\n\n    if (this.act_pan_map) {\n        this.act_pan_map.innerHTML = this.act_pan_map_button_off;\n    }\n    if (this.act_edit_polygon) {\n        this.act_edit_polygon.innerHTML = this.act_edit_polygon_button_on;\n    }\n    if (this.act_create_polygon) {\n        this.act_create_polygon.innerHTML = this.act_create_polygon_button_off;\n    }\n\n    if (event) {\n        event.stopImmediatePropagation();\n        event.preventDefault();\n    }\n};\n\nthis.into_method_new = function(event) {\n    var geo_obj = this;\n    if (!geo_obj.inited) {return;}\n\n    geo_obj.controls.modify.deactivate();\n    geo_obj.controls.polygon.deactivate();\n    geo_obj.controls.polygon.activate();\n\n    var pan_obj = document.getElementById ? document.getElementById(\"geo_filter_pan_map\") : null;\n    var mod_obj = document.getElementById ? document.getElementById(\"geo_filter_edit_polygon\") : null;\n    var new_obj = document.getElementById ? document.getElementById(\"geo_filter_create_polygon\") : null;\n    if (pan_obj) {\n        $(pan_obj).addClass(\"geo_filter_unselected\");\n    }\n    if (mod_obj) {\n        $(mod_obj).addClass(\"geo_filter_unselected\");\n    }\n    if (new_obj) {\n        $(new_obj).removeClass(\"geo_filter_unselected\");\n    }\n    if (pan_obj) {\n        $(pan_obj).removeClass(\"geo_filter_selected\");\n    }\n    if (mod_obj) {\n        $(mod_obj).removeClass(\"geo_filter_selected\");\n    }\n    if (new_obj) {\n        $(new_obj).addClass(\"geo_filter_selected\");\n    }\n\n    if (this.act_pan_map) {\n        this.act_pan_map.innerHTML = this.act_pan_map_button_off;\n    }\n    if (this.act_edit_polygon) {\n        this.act_edit_polygon.innerHTML = this.act_edit_polygon_button_off;\n    }\n    if (this.act_create_polygon) {\n        this.act_create_polygon.innerHTML = this.act_create_polygon_button_on;\n    }\n\n    if (event) {\n        event.stopImmediatePropagation();\n        event.preventDefault();\n    }\n\n};\n\nthis.remove_polygon = function(rank) {\n    var geo_obj = this;\n    if (!geo_obj.inited) {return;}\n\n    var feature = this.vectors.features[rank];\n\n    if (feature == geo_obj.controls.modify.feature) {\n        geo_obj.controls.modify.unselectFeature(feature);\n    }\n\n    this.vectors.removeFeatures(feature);\n    geo_obj.report(null);\n};\n\nthis.report = function(event) {\n    var geo_obj = this;\n    if (!geo_obj.inited) {return;}\n\n    var brecs = [];\n\n    var info_obj = document.getElementById ? document.getElementById(\"geo_polygons_info\") : null;\n    var info_text = \"\";\n\n    var features = this.vectors.features;\n\n    var features_count = features.length;\n\n    for (var find = 0; find < features_count; find++) {\n        min_lon = 1000;\n        min_lat = 1000;\n        max_lon = -1000;\n        max_lat = -1000;\n\n        var cur_feature = features[find];\n        var geometry = cur_feature[\"geometry\"];\n        if (!geometry) {continue;}\n        if (!geometry.getVertices) {continue;}\n        var verts = geometry.getVertices();\n\n        if (2 > verts.length) {continue;}\n        var size_kmsq = geometry.getGeodesicArea(geo_obj.map.getProjectionObject()) / 1000000;\n        size_kmsq = size_kmsq.toFixed(3);\n\n        var sel_mod = false;\n        if (cur_feature == geo_obj.controls.modify.feature) {\n            sel_mod = true;\n        }\n\n        var cons_pol = \"\";\n        var polygon_class_name = \"geo_polygon_info_std\";\n        if (sel_mod) {\n            polygon_class_name = \"geo_polygon_info_edited\";\n        }\n        cons_pol += \"<div class='\" + polygon_class_name + \"'>polygon\";\n\n        var vert_arr = [];\n\n        var is_convex = true;\n        var within_datelines = true;\n        var dp_positive = 0;\n        var dp_negative = 0;\n\n        var vert_count = verts.length;\n        for (var vind = 0; vind < vert_count; vind++) {\n            var cur_vx = verts[vind];\n\n            var vx_next = verts[((vind+1)%vert_count)];\n            var vx_angle = verts[((vind+2)%vert_count)];\n\n            var norm_x = vx_next.y - cur_vx.y;\n            var norm_y = cur_vx.x - vx_next.x;\n            var test_x = vx_angle.x - cur_vx.x;\n            var test_y = vx_angle.y - cur_vx.y;\n            var dot_prod = (norm_x * test_x) + (norm_y * test_y);\n            if (0 < dot_prod) {dp_positive += 1;}\n            if (0 > dot_prod) {dp_negative += 1;}\n\n            var point = new OpenLayers.LonLat(cur_vx.x, cur_vx.y).transform(\n                geo_obj.map.getProjectionObject(), // to Spherical Mercator Projection\n                new OpenLayers.Projection(\"EPSG:4326\") // transform from WGS 1984\n            );\n            cons_pol += \" \" + point.lat.toFixed(6) + \" \" + point.lon.toFixed(6) + \";\";\n\n            if (point.lon < min_lon) {\n                min_lon = point.lon;\n            }\n            if (point.lon > max_lon) {\n                max_lon = point.lon;\n            }\n            if (point.lat < min_lat) {\n                min_lat = point.lat;\n            }\n            if (point.lat > max_lat) {\n                max_lat = point.lat;\n            }\n\n            if ((-180 > point.lon) || (180 < point.lon)) {\n                within_datelines = false;\n            }\n        }\n        cons_pol += \"</div>\";\n\n        if ((0 < dp_positive) && (0 < dp_negative)) {is_convex = false;}\n\n        var polygon_geometry_class = \"geo_polygon_type_within_dl\";\n        if (!within_datelines) {\n            polygon_geometry_class = \"geo_polygon_type_over_dl\";\n        }\n\n        info_text += \"<div class='geo_polygon_info'><div class='geo_polygon_labels'>\";\n        info_text += \"<div class='geo_polygon_remove'><a href='#' onclick='\" + this.obj_name + \".remove_polygon(\" + find + \"); return false;'><span class=\\\"ui-icon ui-icon-closethick\\\"></span></a></div>\\n\";\n        info_text += \"<div class='geo_polygon_type_info \" + polygon_geometry_class + \"'>\" + verts.length + \" \" + geo_obj.display_strings.corners + \", \" + size_kmsq + \" km<sup>2</sup></div>\";\n        info_text += \"</div><div>\";\n\n        info_text += cons_pol + \"</div></div>\\n\";\n        info_text += \"<div class='geo_filter_polygon_spacer'>&nbsp;</div>\\n\";\n\n        brecs.push(\"polygon\" + \" \" + min_lat + \" \" + min_lon + \";\" + \" \" + min_lat + \" \" + max_lon + \";\" + \" \" + max_lat + \" \" + max_lon + \";\" + \" \" + max_lat + \" \" + min_lon + \";\");\n\n    }\n\n    if (this.last_info_string == info_text) {return;}\n    this.last_info_string = info_text;\n\n    info_obj.innerHTML = info_text;\n\n};\n\n// map related initialization\nthis.main_init = function(map_div_name)\n{\n    geo_obj = this;\n\n    var pzb_ctrl = new OpenLayers.Control.PanZoomBarMod();\n    pzb_ctrl.geo_obj = geo_obj;\n\n    var scaleline = new OpenLayers.Control.ScaleLine();\n    scaleline.geodesic = true;\n\n    geo_obj.map = new OpenLayers.Map(map_div_name, {\n        controls: [\n            new OpenLayers.Control.Navigation(),\n            pzb_ctrl,\n            scaleline\n        ],\n        numZoomLevels: 20\n    });\n\n    geo_obj.map.geo_obj = geo_obj;\n\n    var map_provs = [];\n    var map_gsm = null;\n    var map_mqm = null;\n    var map_osm = null;\n\n    geo_obj.map_view_layer_names_all = {};\n\n    var google_label = geo_obj.map_view_layer_google;\n    var mqm_label = geo_obj.map_view_layer_mapquest;\n    var osm_label = geo_obj.map_view_layer_osm;\n\n    if (this.map_view_layer_providers[google_label])\n    {\n        // google map v3\n        map_gsm = new OpenLayers.Layer.GoogleMod(\n            //\"Google Map\",\n            this.display_strings.google_map,\n            {}\n        );\n        map_gsm.wrapDateLine = false; // so that over-dateline polygons can be drawn\n\n        this.map_view_layer_names_all[google_label] = map_gsm.name;\n        if (google_label == this.map_view_layer_default)\n        {\n            map_provs.push(map_gsm);\n        }\n    }\n\n    if (this.map_view_layer_providers[mqm_label])\n    {\n        // openstreetmap by mapquest\n        map_mqm = new OpenLayers.Layer.MapQuest(\n            //\"MapQuest Map\"\n            this.display_strings.mapquest_map\n        );\n        map_mqm.wrapDateLine = false; // so that over-dateline polygons can be drawn\n        map_mqm.displayOutsideMaxExtent = true;\n        map_mqm.transitionEffect = 'resize';\n\n        this.map_view_layer_names_all[mqm_label] = map_mqm.name;\n        if (mqm_label == this.map_view_layer_default)\n        {\n            map_provs.push(map_mqm);\n        }\n    }\n\n    if (this.map_view_layer_providers[osm_label])\n    {\n        // openstreetmap\n        map_osm = new OpenLayers.Layer.OSMMod(\n            //\"OpenStreet Map\"\n            this.display_strings.openstreet_map\n        );\n        map_osm.wrapDateLine = false; // so that over-dateline polygons can be drawn\n        map_osm.displayOutsideMaxExtent = true;\n        map_osm.transitionEffect = 'resize';\n\n        this.map_view_layer_names_all[osm_label] = map_osm.name;\n        if (osm_label == this.map_view_layer_default)\n        {\n            map_provs.push(map_osm);\n        }\n    }\n\n    if (map_gsm && (google_label != geo_obj.map_view_layer_default))\n    {\n        map_provs.push(map_gsm);\n    }\n    if (map_mqm && (mqm_label != geo_obj.map_view_layer_default))\n    {\n        map_provs.push(map_mqm);\n    }\n    if (map_osm && (osm_label != geo_obj.map_view_layer_default))\n    {\n        map_provs.push(map_osm);\n    }\n\n    this.map.addLayers(map_provs);\n    this.map.addControl(new OpenLayers.Control.Attribution());\n\n    // for switching between maps\n    var lswitch = new OpenLayers.Control.LayerSwitcher();\n\tlswitch.roundedCornerColor = \"#464646\";\n\n    this.map.addControl(lswitch);\n\n    OpenLayers.Feature.Vector.style['default']['strokeWidth'] = '2';\n    OpenLayers.Feature.Vector.style['default']['strokeOpacity'] = 0.8;\n    OpenLayers.Feature.Vector.style['default']['strokeColor'] = '#000000';\n    OpenLayers.Feature.Vector.style['default']['fillOpacity'] = 0.25;\n    OpenLayers.Feature.Vector.style['default']['fillColor'] = '#0080ff';\n    this.vectors = new OpenLayers.Layer.Vector(\"Polygon Layer\");\n\n    geo_obj.map.addLayers([geo_obj.vectors]);\n\n    geo_obj.controls = {\n        polygon: new OpenLayers.Control.DrawFeature(geo_obj.vectors,\n                    OpenLayers.Handler.Polygon),\n        modify: new OpenLayers.Control.ModifyFeature(geo_obj.vectors)\n    };\n\n    for(var key in geo_obj.controls) {\n        geo_obj.map.addControl(geo_obj.controls[key]);\n    }\n\n    geo_obj.controls.modify.mode = OpenLayers.Control.ModifyFeature.RESHAPE;\n    geo_obj.controls.modify.mode |= OpenLayers.Control.ModifyFeature.DRAG;\n\n    geo_obj.vectors.events.on({\n        \"beforefeaturemodified\": geo_obj.report,\n        \"featuremodified\": geo_obj.report,\n        \"afterfeaturemodified\": geo_obj.report,\n        \"vertexmodified\": geo_obj.report,\n        \"sketchmodified\": geo_obj.report,\n        \"sketchstarted\": geo_obj.report,\n        \"sketchcomplete\": geo_obj.report\n    });\n\n    // an initial center point, set via parameters\n    var cen_ini_longitude = geo_obj.map_view_layer_center_ini[\"longitude\"];\n    var cen_ini_latitude = geo_obj.map_view_layer_center_ini[\"latitude\"];\n    var lonLat_cen = new OpenLayers.LonLat(cen_ini_longitude, cen_ini_latitude)\n          .transform(\n            new OpenLayers.Projection(\"EPSG:4326\"), // transform from WGS 1984\n            geo_obj.map.getProjectionObject() // to Spherical Mercator Projection\n          );\n    var zoom = geo_obj.map_view_layer_zoom;\n\n    // setting map center\n    geo_obj.map.setCenter (lonLat_cen, zoom);\n\n    geo_obj.map_view_layer_name = geo_obj.map.layers[0].name;\n    geo_obj.map_view_layer_center = geo_obj.map.getCenter();\n    geo_obj.map_view_layer_zoom = geo_obj.map.getZoom();\n\n    this.inited = true;\n    geo_obj.into_method_new();\n\n    if (0 < this.obj_name.length) {\n        this.auto_report = setInterval(this.obj_name + \".report(null);\", 500);\n    }\n\n    this.act_pan_map_img_off = this.img_url + \"geo_move_off.png\";\n    this.act_pan_map_img_on = this.img_url + \"geo_move_on.png\";\n\n    this.act_edit_polygon_img_off = this.img_url + \"geo_edit_off.png\";\n    this.act_edit_polygon_img_on = this.img_url + \"geo_edit_on.png\";\n\n    this.act_create_polygon_img_off = this.img_url + \"geo_polygon_off.png\";\n    this.act_create_polygon_img_on = this.img_url + \"geo_polygon_on.png\";\n\n    this.act_pan_map_button_on = \"<div><img src=\" + this.act_pan_map_img_on + \" onClick='\" + this.obj_name + \".into_method_pan(); return false;' alt='\" + this.display_strings.pan_map + \"' title='\" + this.display_strings.pan_map + \"'></div>\";\n    this.act_pan_map_button_off = \"<div><img src=\" + this.act_pan_map_img_off + \" onClick='\" + this.obj_name + \".into_method_pan(); return false;' alt='\" + this.display_strings.pan_map + \"' title='\" + this.display_strings.pan_map + \"'></div>\";\n\n    this.act_edit_polygon_button_on = \"<div><img src=\" + this.act_edit_polygon_img_on + \" onClick='\" + this.obj_name + \".into_method_mod(); return false;' alt='\" + this.display_strings.edit_polygon + \"' title='\" + this.display_strings.edit_polygon + \"'></div>\";\n    this.act_edit_polygon_button_off = \"<div><img src=\" + this.act_edit_polygon_img_off + \" onClick='\" + this.obj_name + \".into_method_mod(); return false;' alt='\" + this.display_strings.edit_polygon + \"' title='\" + this.display_strings.edit_polygon + \"'></div>\";\n\n    this.act_create_polygon_button_on = \"<div><img src=\" + this.act_create_polygon_img_on + \" onClick='\" + this.obj_name + \".into_method_new(); return false;' alt='\" + this.display_strings.create_polygon + \"' title='\" + this.display_strings.create_polygon + \"'></div>\";\n    this.act_create_polygon_button_off = \"<div><img src=\" + this.act_create_polygon_img_off + \" onClick='\" + this.obj_name + \".into_method_new(); return false;' alt='\" + this.display_strings.create_polygon + \"' title='\" + this.display_strings.create_polygon + \"'></div>\";\n\n    var act_pan_map_pos = new OpenLayers.Pixel(700, 3);\n    var act_pan_map = OpenLayers.Util.createDiv(\"act_pan_map\", act_pan_map_pos, null, null, \"absolute\");\n    act_pan_map.style.fontSize = \"1px\";\n    act_pan_map.style.width = \"24px\";\n    act_pan_map.style.height = \"23px\";\n    act_pan_map.style.background = \"#a0a0a0\";\n    act_pan_map.style.backgroundColor = \"#a0a0a0\";\n    act_pan_map.style.zIndex = 1500;\n    act_pan_map.style.opacity = \"0.80\";\n    act_pan_map.style.filter = \"alpha(opacity=80)\"; // IE\n    act_pan_map.innerHTML = this.act_pan_map_button_off;\n    this.act_pan_map = act_pan_map;\n    this.map.viewPortDiv.appendChild(this.act_pan_map);\n\n    var act_edit_polygon_pos = new OpenLayers.Pixel(724, 3);\n    var act_edit_polygon = OpenLayers.Util.createDiv(\"act_edit_polygon\", act_edit_polygon_pos, null, null, \"absolute\");\n    act_edit_polygon.style.fontSize = \"1px\";\n    act_edit_polygon.style.width = \"24px\";\n    act_edit_polygon.style.height = \"23px\";\n    act_edit_polygon.style.background = \"#a0a0a0\";\n    act_edit_polygon.style.backgroundColor = \"#a0a0a0\";\n    act_edit_polygon.style.zIndex = 1500;\n    act_edit_polygon.style.opacity = \"0.80\";\n    act_edit_polygon.style.filter = \"alpha(opacity=80)\"; // IE\n    act_edit_polygon.innerHTML = this.act_edit_polygon_button_off;\n    this.act_edit_polygon = act_edit_polygon;\n    this.map.viewPortDiv.appendChild(this.act_edit_polygon);\n\n    var act_create_polygon_pos = new OpenLayers.Pixel(748, 3);\n    var act_create_polygon = OpenLayers.Util.createDiv(\"act_create_polygon\", act_create_polygon_pos, null, null, \"absolute\");\n    act_create_polygon.style.fontSize = \"1px\";\n    act_create_polygon.style.width = \"24px\";\n    act_create_polygon.style.height = \"23px\";\n    act_create_polygon.style.background = \"#a0a0a0\";\n    act_create_polygon.style.backgroundColor = \"#a0a0a0\";\n    act_create_polygon.style.zIndex = 1500;\n    act_create_polygon.style.opacity = \"0.80\";\n    act_create_polygon.style.filter = \"alpha(opacity=80)\"; // IE\n    act_create_polygon.innerHTML = this.act_create_polygon_button_on;\n    this.act_create_polygon = act_create_polygon;\n    this.map.viewPortDiv.appendChild(this.act_create_polygon);\n\n    this.map.events.register(\"changelayer\", null, function(evt) {\n        if (\"visibility\" == evt.property) {\n            OpenLayers.HooksLocal.on_layer_switch(geo_obj.map);\n        }\n    });\n\n    setInterval(\"try {\" + this.obj_name + \".map.updateSize();} catch(e) {}\", 1000); // the map needs to know about div changes, e.g. when a slider comes in/out\n};\n\nthis.insert_polygon = function(parsed_points, layer) {\n\n    if (!parsed_points) {return;}\n\n    var linear_ring = new OpenLayers.Geometry.LinearRing(parsed_points);\n    if (!linear_ring) {return;}\n    var polygon_feature = null;\n    polygon_feature = new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Polygon([linear_ring]), null, null);\n    if (!polygon_feature) {return;}\n\n    layer.addFeatures([polygon_feature]);\n};\n\n};\n\n"
  },
  {
    "path": "newscoop/js/geocoding/map_popups.js",
    "content": "GeoPopups = {};\n\n// preparing image html tag for a point popup\nGeoPopups.set_image_tag = function(attrs, geo_obj)\n{\n    attrs.m_image = \"\";\n\n    var img_src = attrs.m_image_source;\n    if (!img_src) {img_src = \"\";}\n    if (0 < img_src.length)\n    {\n        var img_value = \"<img src='\" + img_src + \"'\";\n        var img_height = attrs.m_image_height;\n        if (undefined !== img_height) {img_value += \" height='\" + img_height + \"'\";}\n        var img_width = attrs.m_image_width;\n        if (undefined !== img_width) {img_value += \" width='\" + img_width + \"'\";}\n        img_value += \" />\";\n\n        attrs.m_image = img_value;\n    }\n};\n\n// preparing video html tag for a point popup\nGeoPopups.set_embed_tag = function(attrs, geo_obj)\n{\n    attrs.m_embed = \"\";\n    attrs.m_embed_width = 0;\n    attrs.m_embed_height = 0;\n\n    var vid_id = attrs.m_video_id;\n    var vid_type = attrs.m_video_type;\n    if (!vid_id) {vid_id = \"\";}\n    if (!vid_type) {vid_type = \"none\";}\n\n    var vid_define = null;\n    if (\"none\" != vid_type)\n    {\n        vid_define = geo_obj.popup_video_props[vid_type];\n    }\n\n    if ((0 < vid_id.length) && vid_define)\n    {\n        var vid_src = vid_define[\"source\"];\n        if (!vid_src) {vid_src = \"\";}\n\n        var vid_poster = \"\";\n        if (\"flv\" == vid_type)\n        {\n            if (vid_id.match(/\\.flv$/))\n            {\n                vid_poster = vid_id.replace(/\\.flv$/, \".png\");\n            }\n            else\n            {\n                vid_poster = vid_id + \".png\";\n                vid_id = vid_id + \".flv\";\n            }\n        }\n\n        var vid_value = vid_src.replace(/%%id%%/g, vid_id);\n        var vid_value = vid_value.replace(/%%ps%%/g, vid_poster);\n\n        var vid_height = attrs.m_video_height;\n        if ((!vid_height) || (\"\" == vid_height)) {vid_height = vid_define[\"height\"];}\n        var vid_width = attrs.m_video_width;\n        if ((!vid_width) || (\"\" == vid_width)) {vid_width = vid_define[\"width\"];}\n\n        var vid_path = vid_define[\"path\"];\n        if (!vid_path) {vid_path = \"\";}\n\n        vid_value = vid_value.replace(/%%h%%/g, vid_height);\n        vid_value = vid_value.replace(/%%w%%/g, vid_width);\n\n        var emptify_server_part = false;\n        var full_url_starts = [\"http://\", \"https://\", \"ftp://\", \"ftps://\"];\n        var full_url_starts_count = full_url_starts.length;\n        for (var uind = 0; uind < full_url_starts_count; uind++)\n        {\n            var one_url_start = full_url_starts[uind];\n            if (one_url_start == vid_id.substring(0, one_url_start.length)) {emptify_server_part = true; break;}\n        }\n        if (emptify_server_part)\n        {\n            vid_path = \"\";\n        }\n\n        vid_value = vid_value.replace(/%%path%%/g, vid_path);\n\n        attrs.m_embed = vid_value;\n        attrs.m_embed_height = parseInt(vid_height);\n        attrs.m_embed_width = parseInt(vid_width);\n\n    }\n\n};\n\nGeoPopups.escape_ampersands = function(text) {\n    var text_arr = text.split(\"&\");\n    var text_arr_count = text_arr.length;\n    text = text_arr[0];\n    for (var tind = 1; tind < text_arr_count; tind++) {\n        text += \"&\";\n        var tpart = text_arr[tind];\n        if (null === tpart.match(/^#[\\d]+;/)) {\n            text += \"amp;\";\n        }\n        text += tpart;\n    }\n    return text;\n};\n\nGeoPopups.escape_desc_text = function(text, soft) {\n    //text = text.replace(/&/gi, \"&amp;\");\n    text = GeoPopups.escape_ampersands(text);\n    text = text.replace(/>/gi, \"&gt;\");\n    text = text.replace(/</gi, \"&lt;\");\n\n    if (soft) {\n        text = text.replace(/\\r\\n/gi, \"<br />\");\n        text = text.replace(/\\n/gi, \"<br />\");\n        text = text.replace(/\\r/gi, \"<br />\");\n    } else {\n        text = text.replace(/\\r\\n/gi, \"</p><p>\");\n        text = text.replace(/\\n/gi, \"</p><p>\");\n        text = text.replace(/\\r/gi, \"</p><p>\");\n    }\n\n    return text;\n};\n\nGeoPopups.escape_label_text = function(text) {\n    //text = text.replace(/&/gi, \"&amp;\");\n    text = GeoPopups.escape_ampersands(text);\n    text = text.replace(/>/gi, \"&gt;\");\n    text = text.replace(/</gi, \"&lt;\");\n    return text;\n};\n\nGeoPopups.show_inline_label_view = function(geo_obj, rank) {\n    $('#geo_edit_label_inline').addClass('map_hidden');\n    $('#geo_show_label_inline').removeClass('map_hidden');\n\n    var edit_elm = document.getElementById ? document.getElementById('geo_edit_label_inline') : null;\n    if (edit_elm) {\n        var label_value = edit_elm.value;\n        geo_obj.store_point_label(label_value, rank);\n        var show_elm = document.getElementById ? document.getElementById('label_inner_edit_value') : null;\n        var label_value_show = GeoPopups.escape_label_text(label_value);\n        if (\"\" == label_value_show) {\n            label_value_show = geo_obj.display_strings.empty_label_show;\n        }\n        show_elm.innerHTML = label_value_show;\n    }\n\n};\n\nGeoPopups.show_inline_label_change = function(geo_obj, rank, value) {\n    if (\"\" == value) {\n        $('#label_inner_edit_value').addClass('map_text_lack');\n        $('#geo_edit_label_inline').addClass('map_text_lack');\n    } else {\n        $('#label_inner_edit_value').removeClass('map_text_lack');\n        $('#geo_edit_label_inline').removeClass('map_text_lack');\n    }\n\n    geo_obj.store_point_label(value, rank);\n\n};\n\nGeoPopups.show_inline_label_edit_focus = function() {\n    var edit_elm = document.getElementById ? document.getElementById('geo_edit_label_inline') : null;\n    if (edit_elm) {\n        try {\n            edit_elm.focus();\n        } catch (exc) {\n        }\n    }\n};\n\nGeoPopups.show_inline_label_edit = function(geo_obj, rank) {\n    $('#geo_edit_label_inline').removeClass('map_hidden');\n    $('#geo_show_label_inline').addClass('map_hidden');\n\n    setTimeout(\"GeoPopups.show_inline_label_edit_focus();\", 100);\n\n};\n\nGeoPopups.show_inline_content_view = function(geo_obj, rank) {\n\n    $('#geo_edit_content_inline').addClass('map_hidden');\n    $('#geo_show_content_inline').removeClass('map_hidden');\n\n    var edit_elm = document.getElementById ? document.getElementById('geo_edit_content_inline') : null;\n    if (edit_elm) {\n        var content_value = edit_elm.value;\n        geo_obj.store_point_property(\"content\", content_value, rank);\n        var show_elm = document.getElementById ? document.getElementById('content_inner_edit_value') : null;\n        var content_value_show = content_value;\n        if (\"\" == content_value) {\n            content_value_show = geo_obj.display_strings.fill_in_the_point_description;\n        }\n        show_elm.innerHTML = content_value_show;\n    }\n\n};\n\nGeoPopups.show_inline_text_view = function(geo_obj, rank) {\n    $('#geo_edit_text_inline').addClass('map_hidden');\n    $('#geo_show_text_inline').removeClass('map_hidden');\n\n    var edit_elm = document.getElementById ? document.getElementById('geo_edit_text_inline') : null;\n    if (edit_elm) {\n        var text_value = edit_elm.value;\n        geo_obj.store_point_property(\"text\", text_value, rank);\n        var show_elm = document.getElementById ? document.getElementById('text_inner_edit_value') : null;\n        var text_value_show = GeoPopups.escape_desc_text(text_value, false);\n        if (\"\" == text_value) {\n            text_value_show = geo_obj.display_strings.fill_in_the_point_description;\n        }\n        show_elm.innerHTML = \"<p>\" + text_value_show + \"</p>\";\n    }\n\n};\n\nGeoPopups.show_inline_content_change = function(geo_obj, rank, value) {\n    if (\"\" == value) {\n        $('#content_inner_edit_value').addClass('map_text_lack');\n        $('#geo_edit_content_inline').addClass('map_text_lack');\n    } else {\n        $('#content_inner_edit_value').removeClass('map_text_lack');\n        $('#geo_edit_content_inline').removeClass('map_text_lack');\n    }\n\n    geo_obj.store_point_property(\"content\", value, rank);\n\n};\n\nGeoPopups.show_inline_text_change = function(geo_obj, rank, value) {\n    if (\"\" == value) {\n        $('#text_inner_edit_value').addClass('map_text_lack');\n        $('#geo_edit_text_inline').addClass('map_text_lack');\n    } else {\n        $('#text_inner_edit_value').removeClass('map_text_lack');\n        $('#geo_edit_text_inline').removeClass('map_text_lack');\n    }\n\n    geo_obj.store_point_property(\"text\", value, rank);\n\n};\n\nGeoPopups.show_inline_content_edit = function(geo_obj, rank) {\n    $('#geo_edit_content_inline').removeClass('map_hidden');\n    $('#geo_show_content_inline').addClass('map_hidden');\n\n    var edit_elm = document.getElementById ? document.getElementById('geo_edit_content_inline') : null;\n    if (edit_elm) {\n        try {\n            edit_elm.focus();\n        } catch (exc) {}\n    }\n};\n\nGeoPopups.show_inline_text_edit_focus = function() {\n    var edit_elm = document.getElementById ? document.getElementById('geo_edit_text_inline') : null;\n    if (edit_elm) {\n        try {\n            edit_elm.focus();\n        } catch (exc) {\n        }\n    }\n};\n\nGeoPopups.show_inline_text_edit = function(geo_obj, rank) {\n    $('#geo_edit_text_inline').removeClass('map_hidden');\n    $('#geo_show_text_inline').addClass('map_hidden');\n\n    setTimeout(\"GeoPopups.show_inline_text_edit_focus();\", 100);\n};\n\n// preparing html content for a popup\nGeoPopups.create_popup_content = function(feature, geo_obj) {\n    var none_info = {'inner_html': \"\", 'min_width': 0, 'min_height': 0};\n\n    if (!feature) {return none_info;}\n\n    var attrs = feature.attributes;\n    if (!attrs) {return none_info;}\n\n    var editing = false;\n    if (geo_obj.editing) {\n        editing = true;\n    }\n\n    var rank = attrs.m_rank;\n\n    var poi_label_value = \"\";\n    var poi_content_value = null;\n    var poi_text_value = null;\n\n    var pop_text = \"\";\n    {\n        var pop_link = attrs.m_link;\n        var pop_title = \"\" + feature.attributes.m_title;\n        var pop_title_orig = pop_title;\n        pop_title = GeoPopups.escape_label_text(pop_title);\n\n        if (editing) {\n            var pop_title_show = pop_title;\n            var label_class_add = \"\";\n            if (\"\" == pop_title) {\n                label_class_add = \"map_text_lack\";\n                pop_title_show = geo_obj.display_strings.empty_label_show;\n            }\n\n            poi_label_value = pop_title_orig;\n\n            pop_text += \"<input id='geo_edit_label_inline' class='map_hidden \" + label_class_add + \"' type='text' value='' onBlur=\\\"GeoPopups.show_inline_label_view(\" + geo_obj.obj_name + \", \" + rank + \"); return false;\\\" onChange='GeoPopups.show_inline_label_change(\" + geo_obj.obj_name + \", \" + rank + \", this.value); return false;' onKeyUp='GeoPopups.show_inline_label_change(\" + geo_obj.obj_name + \", \" + rank + \", this.value); return true;' />\\n\";\n            pop_text += \"<h3 class='popup_title edit_mode' id='geo_show_label_inline'>\";\n\n            if ((!pop_link) || (\"\" == pop_link)) {\n                pop_link = \"#\";\n            }\n\n            pop_text += \"<a href=\\\"\" + pop_link + \"\\\" target=\\\"_blank\\\" class='inline_editable' onClick=\\\"GeoPopups.show_inline_label_edit(\" + geo_obj.obj_name + \", \" + rank + \"); return false;\\\">\";\n            pop_text += \"<span id='label_inner_edit_value' class='\" + label_class_add + \"'>\" + pop_title_show + \"</span>\";\n\n            pop_text += \"</a>\";\n            pop_text += \"</h3>\\n\";\n\n        } else {\n\n            pop_text += \"<h3 class='popup_title' id='geo_show_label_inline'>\";\n\n            if (0 < pop_link.length) {\n                pop_text += \"<a href=\\\"\" + pop_link + \"\\\" target=\\\"_blank\\\">\";\n            }\n            pop_text += pop_title;\n            if (0 < pop_link.length) {\n                pop_text += \"</a>\";\n            }\n            pop_text += \"</h3>\";\n\n        }\n\n    }\n\n    var with_embed = false;\n    {\n        if (feature.attributes.m_image)\n        {\n            pop_text += \"<div class='popup_image'>\" + feature.attributes.m_image + \"</div>\";\n        }\n        if (feature.attributes.m_embed)\n        {\n            pop_text += \"<div class='popup_video'>\" + feature.attributes.m_embed + \"</div>\";\n            with_embed = true;\n        }\n    }\n\n    if (attrs.m_direct)\n    {\n        var content = attrs.m_content;\n        if (!content) {content = \"\";}\n        var content_orig = content;\n\n        // the direct-html part can not be done clickable reasonably,\n        // thus just the plain-text case is inline editable\n        pop_text += \"<div class='popup_content'>\" + content + \"</div>\";\n\n    }\n    else\n    {\n        var plain_text = feature.attributes.m_text;\n        var plain_text_orig = plain_text;\n\n        plain_text = GeoPopups.escape_desc_text(plain_text, false);\n\n        if (editing) {\n            poi_text_value = plain_text_orig;\n            var text_class_add = \"\";\n            var text_view = plain_text;\n            if (\"\" == text_view) {\n                text_class_add = \"map_text_lack\";\n                text_view = geo_obj.display_strings.fill_in_the_point_description;\n            }\n\n            pop_text += \"<div class='popup_text edit_mode'>\";\n            pop_text += \"<div href='#' id='geo_show_text_inline' class='inline_editable inline_link_like' onClick=\\\"GeoPopups.show_inline_text_edit(\" + geo_obj.obj_name + \", \" + rank + \"); return false;\\\">\";\n            pop_text += \"<div id='text_inner_edit_value' class='\" + text_class_add + \"'><p>\" + text_view + \"</p></div></div>\";\n\n            pop_text += \"<textarea id='geo_edit_text_inline' class='map_hidden \" + text_class_add + \"' rows=4 cols=20 onBlur=\\\"GeoPopups.show_inline_text_view(\" + geo_obj.obj_name + \", \" + rank + \"); return false;\\\" onChange='GeoPopups.show_inline_text_change(\" + geo_obj.obj_name + \", \" + rank + \", this.value); return false;' onKeyUp='GeoPopups.show_inline_text_change(\" + geo_obj.obj_name + \", \" + rank + \", this.value); return true;'>\";\n            pop_text += \"</textarea>\";\n\n            pop_text += \"</div>\";\n        } else {\n            pop_text += \"<div class='popup_text'><p>\" + plain_text + \"</p></div>\";\n        }\n    }\n\n    if (attrs.m_backlinks) {\n        pop_text += \"\\n<div class='article_backlinks'><ul>\";\n        var bl_count = attrs.m_backlinks.length;\n        for (var bl_ind = 0; bl_ind < bl_count; bl_ind++) {\n            var curr_backlink_info = attrs.m_backlinks[bl_ind];\n            var curr_backlink_link = curr_backlink_info['link'];\n            var curr_backlink_label = GeoPopups.escape_label_text(curr_backlink_info['label']);\n            pop_text += \"\\n<li>\";\n            pop_text += \"<a href=\\\"\" + curr_backlink_link + \"\\\" target=\\\"_blank\\\">\" + curr_backlink_label + \"</a>\";\n            pop_text += \"</li>\";\n        }\n\n        pop_text += \"\\n</ul></div>\";\n    }\n\n    var min_width = geo_obj.popup_width;\n    var min_height = geo_obj.popup_height;\n    if (with_embed) {\n        var min_width_embed = feature.attributes.m_embed_width + 100;\n        var min_height_embed = feature.attributes.m_embed_height + 100;\n        if (min_width_embed > min_width) {min_width = min_width_embed;}\n        if (min_height_embed > min_height) {min_height = min_height_embed;}\n    }\n\n    if (editing) {\n        var min_height_edit = 225;\n        var min_width_edit = 300;\n        if (min_height_edit > min_height) {min_height = min_height_edit;}\n        if (min_width_edit > min_width) {min_width = min_width_edit;}\n    }\n\n    return {'inner_html': pop_text, 'min_width': min_width, 'min_height': min_height, 'poi_label': poi_label_value, 'poi_content': poi_content_value, 'poi_text': poi_text_value};\n};\n\n"
  },
  {
    "path": "newscoop/js/geocoding/map_preview.js",
    "content": "\n// the main object to hold geo-things\nfunction geo_locations () {\n\nthis.something_to_save = false;\nthis.auto_focus = true;\nthis.auto_focus_max_zoom = true;\nthis.auto_focus_border = 100;\nthis.map_is_popup = false;\nthis.map_div_name = \"\";\nthis.action_substitute = null;\nthis.last_page_height = 0;\nthis.page_height_offset = 16;\nthis.page_map_holder = \"\";\n\n// specifying the article that the map is for\nthis.article_number = 0;\nthis.language_id = 0;\n\n// flags for what has been changed\nthis.map_spec_changed = false;\nthis.poi_order_changed = false;\n\n// marker icons paths and names, set during initialization\nthis.marker_src_base = \"\";\nthis.marker_src_default = \"\";\nthis.marker_src_default_ind = 0;\nthis.marker_src_labels = [];\nthis.marker_src_icons = {};\n\n// what map provider should be used, and map position\nthis.map_view_layer_google = \"googlev3\";\nthis.map_view_layer_mapquest = \"mapquest\";\nthis.map_view_layer_osm = \"osm\";\nthis.map_view_layer_providers = {};\nthis.map_view_layer_providers[this.map_view_layer_google] = false;\nthis.map_view_layer_providers[this.map_view_layer_mapquest] = false;\nthis.map_view_layer_providers[this.map_view_layer_osm] = false;\n\nthis.map_view_layer_names_all = {};\nthis.map_view_layer_default = \"\";\nthis.map_view_layer_name = \"\";\nthis.map_view_layer_center_ini = {};\nthis.map_view_layer_center = null;\nthis.map_view_layer_zoom = 0;\nthis.map_art_view_width_default = 0;\nthis.map_art_view_height_default = 0;\n\n// values for popup style properties\nthis.popup_width = 0;\nthis.popup_height = 0;\nthis.popup_video_labels = [];\nthis.popup_video_props = {};\n\n// values for the lines to display the proposed map size\nthis.map_art_view_width = 600;\nthis.map_art_view_height = 400;\nthis.map_art_view_top = 70;\nthis.map_art_view_right = 105;\nthis.map_art_view_width_display = 600;\nthis.map_art_view_height_display = 400;\nthis.map_art_view_top_display = 70;\nthis.map_art_view_right_display = 105;\n\nthis.map_width_percentage = 0;\nthis.map_height_percentage = 0;\n\nthis.map_label_name = \"\";\nthis.map_id = 0;\n\n// currently edited (via the edit link) point\nthis.edited_point = 0;\nthis.edit_text_mode = 'plain';\nthis.edit_view_mode = 'edit';\n\n\n// the order of the pois done by drag-n-drop; we do not reorder pois in the layer\nthis.poi_order_user = [];\n\n// map controls\nthis.select_control = null\n\n// the pan zoom-and-bar control\nthis.pzb_ctrl = null;\nthis.not_to_pan_update = true;\n\n// for ids of pop-ups\nthis.cur_pop_rank = 0;\n\n// tha map layer\nthis.map = null;\n// the markers layer\nthis.layer = null;\n\n// saving info on markers that should be deleted from db\nthis.poi_deletion = [];\n\n// info on markers, with the original ids, so that we can push changes into db\nthis.poi_markers = [];\n\n// whether map is shown, used at the initial version\nthis.map_shown = false;\nthis.map_obj = null\n\n// auxiliary index for accordion selection\nthis.poi_rank_out = -1;\n\n// auxiliary for POI side-bar updates\nthis.descs_elm = null;\nthis.descs_elm_name = \"\";\nthis.descs_inner = \"\";\n\n// count of POIs, with/without counting removals\nthis.descs_count = 0;\nthis.descs_count_inc = 0;\n\n// not to make new POI on closing a pop-up\nthis.ignore_click = false;\n// the used pop-up window\nthis.popup = null;\n\n\nthis.display_strings = {\n    'articles': 'Articles'\n};\n\nthis.set_display_strings = function(local_strings)\n{\n    if (!local_strings) {return;}\n\n    var display_string_names = [\n        \"articles\"\n    ];\n\n    var str_count = display_string_names.length;\n    for (var sind = 0; sind < str_count; sind++)\n    {\n        var cur_str_name = display_string_names[sind];\n\n        if (undefined !== local_strings[cur_str_name])\n        {\n            this.display_strings[cur_str_name] = local_strings[cur_str_name];\n        }\n    }\n};\n\n\n// setting the article info\nthis.set_article_spec = function(params)\n{\n    this.article_number = parseInt(params.article_number);\n    this.language_id = parseInt(params.language_id);\n};\n\nthis.set_auto_focus = function(params)\n{\n    var param_names = {\"auto_focus\":\"auto_focus\", \"max_zoom\":\"auto_focus_max_zoom\", \"border\":\"auto_focus_border\"};\n\n    for (var param_key in param_names)\n    {\n        if (undefined !== params[param_key])\n        {\n            var one_name = param_names[param_key];\n            this[one_name] = params[param_key];\n        }\n    }\n};\n\nthis.map_limit_width_display = 800;\nthis.map_limit_height_display = 500;\nthis.map_limit_width_view = 1200;\nthis.map_limit_height_view = 1200;\n\n// setting the db based default info\nthis.set_map_info = function(params)\n{\n    this.map_view_layer_default = params[\"default\"];\n    var prov_len = params.providers.length;\n    for (var pind = 0; pind < prov_len; pind++)\n    {\n        this.map_view_layer_providers[params.providers[pind]] = true;\n    }\n\n    this.map_view_layer_center_ini = {\"longitude\": params.longitude, \"latitude\": params.latitude};\n    this.map_view_layer_zoom = parseInt(params.resolution);\n\n    this.map_art_view_width_default = parseInt(params.width);\n    this.map_art_view_height_default = parseInt(params.height);\n\n};\n\n// setting info on basic map parameters\nthis.set_map_usage = function(params)\n{\n    this.map_id = params[\"id\"];\n\n    var longitude = params.lon;\n    var latitude = params.lat;\n\n    this.map_view_layer_center_ini = {\"longitude\": longitude, \"latitude\": latitude};\n    this.map_view_layer_zoom = parseInt(params.res);\n\n    this.map_label_name = params.name;\n\n    this.map_art_view_width_default = parseInt(params.width);\n    this.map_art_view_height_default = parseInt(params.height);\n\n    this.map_view_layer_default = params.prov;\n\n    if (this.map)\n    {\n        var layer_name = this.map_view_layer_names_all[this.map_view_layer_default];\n        if (layer_name && (\"\" != layer_name))\n        {\n            this.map_view_layer_name = layer_name;\n        }\n        this.map_view_layer_center = new OpenLayers.LonLat(longitude, latitude).transform(\n            new OpenLayers.Projection(\"EPSG:4326\"), this.map.getProjectionObject()\n        );\n    }\n\n};\n\n// setting info on available icons\nthis.set_icons_info = function(params)\n{\n    this.marker_src_base = params.webdir;\n    this.marker_src_default = params[\"default\"];\n    this.marker_src_labels = [];\n    this.marker_src_icons = {};\n\n    var icon_len = params.icons.length;\n    for (var iind = 0; iind < icon_len; iind++)\n    {\n        var cur_icon = params.icons[iind];\n        var cur_label = cur_icon.label;\n\n        if (cur_icon['name'] == this.marker_src_default)\n        {\n            this.marker_src_default_ind = iind;\n        }\n\n        this.marker_src_labels.push(cur_label);\n        this.marker_src_icons[cur_label] = {\n            \"name\": cur_icon[\"name\"],\n            \"path\": cur_icon[\"path\"],\n            \"width\": parseFloat(cur_icon[\"width\"]),\n            \"height\": parseFloat(cur_icon[\"height\"]),\n            \"width_off\": parseFloat(cur_icon[\"width_off\"]),\n            \"height_off\": parseFloat(cur_icon[\"height_off\"])\n        };\n    }\n\n};\n\n// setting info on popups\nthis.set_popups_info = function(params)\n{\n\n    this.popup_width = params.width;\n    this.popup_height = params.height;\n\n    var video = params.video;\n\n    var video_len = video.labels.length;\n    for (var vind = 0; vind < video_len; vind++)\n    {\n        var cur_video = video.labels[vind];\n        var cur_label = cur_video[\"label\"].toLowerCase();\n        this.popup_video_labels.push(cur_label);\n        this.popup_video_props[cur_label] = {\n            \"source\": cur_video[\"source\"],\n            \"width\": cur_video[\"width\"],\n            \"height\": cur_video[\"height\"],\n            \"path\": cur_video[\"path\"]\n        };\n    }\n\n};\n\nthis.set_map_large = function(params) {\n    if (params.width) {\n        this.map_art_view_width_default = parseInt(params.width);\n    }\n    if (params.height) {\n        this.map_art_view_height_default = parseInt(params.height);\n    }\n\n    if (params.map_holder) {\n        this.page_map_holder = params.map_holder;\n    }\n\n    this.map_is_popup = true;\n};\n\nthis.set_area_constraints = function(areas, params) {\n    if (!areas) {return;}\n\n    var empty_only = false;\n    if (params) {\n        if (\"empty_only\" in params) {\n            empty_only = params[\"empty_only\"];\n        }\n    }\n\n    var area_cons = {\n        lat_min: null,\n        lat_max: null,\n        lon_min: null,\n        lon_max: null\n    };\n    var got_some_point = false;\n\n    var areas_count = areas.length;\n    for (var aind = 0; aind < areas_count; aind++) {\n        var one_area = areas[aind];\n\n        for (var one_area_type in one_area) {\n            var one_area_spec = one_area[one_area_type];\n\n            var one_area_spec_len = one_area_spec.length;\n            for (var pind = 0; pind < one_area_spec_len; pind++) {\n\n                var cur_poi = one_area_spec[pind];\n                var cur_lat = parseFloat(\"\" + cur_poi.latitude);\n                var cur_lon = parseFloat(\"\" + cur_poi.longitude);\n\n                if ((!got_some_point) || (area_cons.lat_min > cur_lat)) {\n                    area_cons.lat_min = cur_lat;\n                }\n                if ((!got_some_point) || (area_cons.lat_max < cur_lat)) {\n                    area_cons.lat_max = cur_lat;\n                }\n                if ((!got_some_point) || (area_cons.lon_min > cur_lon)) {\n                    area_cons.lon_min = cur_lon;\n                }\n                if ((!got_some_point) || (area_cons.lon_max < cur_lon)) {\n                    area_cons.lon_max = cur_lon;\n                }\n\n                got_some_point = true;\n            }\n        }\n    }\n\n    if (got_some_point) {\n        this.area_cons = area_cons;\n    }\n    this.area_cons_empty_only = empty_only;\n\n    return;\n};\n\nthis.set_action_subst = function(action) {\n    this.action_substitute = null;\n    if (action) {\n        this.action_substitute = action;\n    }\n};\n\nthis.subst_action = function (event, specifier) {\n    var poi_index = null;\n    if (\"select_poi\" == specifier) {\n        if (event && event.feature)\n        {\n            var attrs = event.feature.attributes;\n            poi_index = attrs.m_rank;\n        }\n    }\n\n    if (this.action_substitute) {\n        try {\n            if ((\"select_poi\" == specifier) && (null !== poi_index)) {\n                this.action_substitute({'select_poi': poi_index});\n            }\n            else {\n                this.action_substitute({});\n            }\n            return false;\n        } catch (e) {}\n    }\n\n    return true;\n};\n\nthis.proc_subst_action = function(params) {\n    var geo_obj = this;\n\n    var select_poi = null;\n    if (undefined !== params) {\n        if (undefined !== params[\"select_poi\"]) {\n            select_poi = params[\"select_poi\"];\n        }\n    }\n\n    if (null !== select_poi) {\n        if (!this.is_poi_visible(select_poi)) {\n            this.center_poi(select_poi);\n        }\n    }\n\n    window.OpenLayers.HooksPopups.on_map_feature_select(geo_obj, select_poi);\n};\n\nthis.set_size_percentage = function(params) {\n    if (\"width\" in params) {\n        this.map_width_percentage = params[\"width\"];\n    }\n    if (\"height\" in params) {\n        this.map_height_percentage = params[\"height\"];\n    }\n};\n\nthis.try_size_updated = function() {\n    if (this.map_is_popup) {\n        var page_height = $(window).height();\n        var cur_page_height = (page_height - this.page_height_offset);\n\n        if (cur_page_height == this.last_page_height) {return;}\n\n        this.last_page_height = cur_page_height;\n        var body_holder = document.getElementById ? document.getElementById(this.page_map_holder) : null;\n        if (body_holder) {\n            body_holder.style.height = \"\" + this.last_page_height + \"px\";\n        }\n\n        if (this.map) {\n            this.map.updateSize();\n        }\n\n    }\n    else {\n        if (this.map) {\n            this.map.updateSize();\n        }\n    }\n};\n\n// to center the map view on the requested position\nthis.center_lonlat = function(longitude, latitude)\n{\n    var lonLat = new OpenLayers.LonLat(longitude, latitude).transform(\n        new OpenLayers.Projection(\"EPSG:4326\"), // transform from WGS 1984\n        this.map.getProjectionObject() // to Spherical Mercator Projection\n    );\n\n    this.map.setCenter (lonLat);\n\n    OpenLayers.HooksLocal.map_check_popup(this);\n};\n\n// sets map center onto the requested POI (bound on the 'center' link)\nthis.center_poi = function(index)\n{\n    var mlon = this.poi_markers[index].map_lon;\n    var mlat = this.poi_markers[index].map_lat;\n    var lonLat = new OpenLayers.LonLat(mlon, mlat);\n\n    this.map.setCenter (lonLat);\n\n};\n\nthis.is_poi_visible = function(index)\n{\n    var poi_visible = false;\n\n    if (this.poi_markers && this.poi_markers[index])\n    {\n        var cur_poi_info = this.poi_markers[index];\n        var longitude = cur_poi_info['map_lon'];\n        var latitude = cur_poi_info['map_lat'];\n        var poi_lonlat = new OpenLayers.LonLat(longitude, latitude);\n\n        var view_box = this.map.calculateBounds();\n        if (view_box.containsLonLat(poi_lonlat, false)) {\n            poi_visible = true;\n        }\n    }\n\n    return poi_visible;\n};\n\n// opens POI buble if at a clickable map, otherwise just centers the POI\nthis.select_poi = function(index)\n{\n    var mlon = this.poi_markers[index].map_lon;\n    var mlat = this.poi_markers[index].map_lat;\n    var lonLat = new OpenLayers.LonLat(mlon, mlat);\n\n    if (!this.is_poi_visible(index)) {\n        this.map.setCenter (lonLat);\n    }\n\n    if (!this.action_substitute) {\n        OpenLayers.HooksPopups.on_map_feature_select(this, index);\n    }\n\n};\n\n// showing the current initial reader view\nthis.map_showview = function()\n{\n    var map_names = this.map.getLayersByName(this.map_view_layer_name);\n    if (0 < map_names.length)\n    {\n        this.map.setBaseLayer(map_names[0]);\n    }\n    this.map.setCenter(this.map_view_layer_center, this.map_view_layer_zoom);\n\n    OpenLayers.HooksLocal.map_check_popup(this);\n\n};\n\n// the main action on data retrieval\nthis.got_load_data = function (load_data, is_obj) {\n    load_response = load_data;\n\n    var received_obj = null;\n    if (is_obj)\n    {\n        received_obj = load_data;\n    }\n    else\n    {\n        try {\n            received_obj = JSON.parse(load_response);\n        }\n        catch (e) {\n            return;\n        }\n    }\n\n    if (this.select_control)\n    {\n        this.select_control.destroy();\n    }\n\n    this.edited_point = 0;\n    this.poi_rank_out = 0;\n\n    this.poi_order_user = [];\n    this.poi_markers = [];\n    this.descs_count = 0;\n    this.descs_count_inc = 0;\n    this.poi_order_changed = false;\n    this.map_spec_changed = false;\n\n    this.layer.removeFeatures(this.layer.features);\n    if (this.popup)\n    {\n        // this pop-up removal seems to be sometimes strange\n        try {\n            this.map.removePopup(this.popup);\n            this.popup.destroy();\n        }\n        catch (e) {}\n        this.popup = null;\n    }\n\n    var lonlat = null;\n\n    var poi_lon_min = 10e100;\n    var poi_lon_max = -10e100;\n    var poi_lat_min = 10e100;\n    var poi_lat_max = -10e100;\n    var pos_lon_min = 10e100;\n    var pos_lon_max = -10e100;\n    var pos_lat_min = 10e100;\n    var pos_lat_max = -10e100;\n\n    var toi_lon_min = 10e100;\n    var toi_lon_max = -10e100;\n    var toi_lat_min = 10e100;\n    var toi_lat_max = -10e100;\n    var tos_lon_min = 10e100;\n    var tos_lon_max = -10e100;\n    var tos_lat_min = 10e100;\n    var tos_lat_max = -10e100;\n    var use_zone_shift = false;\n\n    var features_to_add = [];\n\n    var poi_count = received_obj.pois.length;\n\n    var focus_area_cons = false;\n    if (this.area_cons) {\n        if (!this.area_cons_empty_only) {\n            focus_area_cons = true;\n        } else {\n            if (0 == poi_count) {\n                focus_area_cons = true;\n            }\n        }\n    }\n\n    if (focus_area_cons) {\n\n        var lonlat_cons_min = new OpenLayers.LonLat(this.area_cons.lon_min, this.area_cons.lat_min).transform(\n            new OpenLayers.Projection(\"EPSG:4326\"),\n            this.map.getProjectionObject()\n        );\n        var lonlat_cons_max = new OpenLayers.LonLat(this.area_cons.lon_max, this.area_cons.lat_max).transform(\n            new OpenLayers.Projection(\"EPSG:4326\"),\n            this.map.getProjectionObject()\n        );\n\n        pos_lon_min = this.area_cons.lon_min;\n        pos_lon_max = this.area_cons.lon_max;\n        pos_lat_min = this.area_cons.lat_min;\n        pos_lat_max = this.area_cons.lat_max;\n\n        poi_lon_min = lonlat_cons_min.lon;\n        poi_lon_max = lonlat_cons_max.lon;\n        poi_lat_min = lonlat_cons_min.lat;\n        poi_lat_max = lonlat_cons_max.lat;\n\n        tos_lon_min = (0 <= this.area_cons.lon_min) ? this.area_cons.lon_min : (this.area_cons.lon_min + 360);\n        tos_lon_max = (0 <= this.area_cons.lon_max) ? this.area_cons.lon_max : (this.area_cons.lon_max + 360);\n        tos_lat_min = this.area_cons.lat_min;\n        tos_lat_max = this.area_cons.lat_max;\n\n        var lonlat_cons_min_shift = new OpenLayers.LonLat(tos_lon_min, tos_lat_min).transform(\n            new OpenLayers.Projection(\"EPSG:4326\"),\n            this.map.getProjectionObject()\n        );\n        var lonlat_cons_max_shift = new OpenLayers.LonLat(tos_lon_max, tos_lat_max).transform(\n            new OpenLayers.Projection(\"EPSG:4326\"),\n            this.map.getProjectionObject()\n        );\n\n        toi_lon_min = lonlat_cons_min_shift.lon;\n        toi_lon_max = lonlat_cons_max_shift.lon;\n        toi_lat_min = lonlat_cons_min_shift.lat;\n        toi_lat_max = lonlat_cons_max_shift.lat;\n\n    }\n\n    var shifts = [0, -360, 360];\n\n    var shift_count = shifts.length;\n    for (var sind = 0; sind < shift_count; sind++) {\n\n    for (var pind = 0; pind < poi_count; pind++)\n    {\n        var one_marker = {};\n        var one_poi = received_obj.pois[pind];\n\n        var longitude_use = parseFloat(one_poi.longitude) + shifts[sind];\n        var latitude_use = parseFloat(one_poi.latitude);\n\n        var longitude_shift = (0 <= longitude_use) ? longitude_use : (longitude_use + 360);\n\n\n        lonlat = new OpenLayers.LonLat(longitude_use, latitude_use).transform(\n            new OpenLayers.Projection(\"EPSG:4326\"),\n            this.map.getProjectionObject()\n        );\n\n        lonlat_shift = new OpenLayers.LonLat(longitude_shift, latitude_use).transform(\n            new OpenLayers.Projection(\"EPSG:4326\"),\n            this.map.getProjectionObject()\n        );\n\n        one_marker['lon'] = parseFloat(one_poi.longitude);\n        one_marker['lat'] = parseFloat(one_poi.latitude);\n        one_marker['map_lon'] = lonlat.lon;\n        one_marker['map_lat'] = lonlat.lat;\n\n        one_marker['usage'] = true;\n        one_marker['location_changed'] = false;\n        one_marker['content_changed'] = false;\n\n        one_marker['icon_changed'] = false;\n        one_marker['state_changed'] = false;\n        one_marker['image_changed'] = false;\n        one_marker['video_changed'] = false;\n        one_marker['text_changed'] = false;\n\n        one_marker['in_db'] = true;\n        one_marker['loc_index'] = one_poi.loc_id;\n        one_marker['con_index'] = one_poi.con_id;\n        one_marker['tmp_index'] = 0;\n\n        this.poi_order_user.push(pind);\n        this.poi_markers.push(one_marker);\n\n        var disabled = false;\n        if (0 == one_poi.display) {disabled = true;}\n\n        one_marker['duplicate'] = true;\n        one_marker['original'] = pind;\n        one_marker[\"lon_shift\"] = shifts[sind];\n        if ((0 == sind) && (!disabled))\n        {\n            one_marker['duplicate'] = false;\n\n            if (lonlat.lon < poi_lon_min) {poi_lon_min = lonlat.lon; pos_lon_min = longitude_use;}\n            if (lonlat.lon > poi_lon_max) {poi_lon_max = lonlat.lon; pos_lon_max = longitude_use;}\n            if (lonlat.lat < poi_lat_min) {poi_lat_min = lonlat.lat; pos_lat_min = latitude_use;}\n            if (lonlat.lat > poi_lat_max) {poi_lat_max = lonlat.lat; pos_lat_max = latitude_use;}\n\n            if (lonlat_shift.lon < toi_lon_min) {toi_lon_min = lonlat_shift.lon; tos_lon_min = longitude_shift;}\n            if (lonlat_shift.lon > toi_lon_max) {toi_lon_max = lonlat_shift.lon; tos_lon_max = longitude_shift;}\n            if (lonlat_shift.lat < toi_lat_min) {toi_lat_min = lonlat_shift.lat; tos_lat_min = latitude_use;}\n            if (lonlat_shift.lat > toi_lat_max) {toi_lat_max = lonlat_shift.lat; tos_lat_max = latitude_use;}\n        }\n\n        var img_name = one_poi.style;\n        var icon_type = 0;\n        var image_count = this.marker_src_labels.length;\n        for (var lind = 0; lind < image_count; lind++)\n        {\n            var cur_label = this.marker_src_labels[lind];\n            var cur_image = this.marker_src_icons[cur_label]['name'];\n\n            if (cur_image == img_name)\n            {\n                icon_type = lind;\n                break;\n            }\n        }\n        var icon_view = 2 * icon_type;\n        if (disabled) {icon_view += 1;}\n\n        var point = new OpenLayers.Geometry.Point(lonlat.lon, lonlat.lat);\n        var vector = new OpenLayers.Feature.Vector(point, {type: icon_view});\n\n        vector.attributes.m_rank = pind;\n        vector.attributes.m_disabled = disabled;\n        vector.attributes.m_type = icon_type;\n\n        vector.attributes.m_title = one_poi['title'];\n        vector.attributes.m_perex = one_poi['perex'];\n\n        var direct = false;\n        if (0 == one_poi['content_type']) {direct = true;}\n        vector.attributes.m_direct = direct;\n        vector.attributes.m_content = one_poi['content'];\n\n        vector.attributes.m_text = one_poi['text'];\n        vector.attributes.m_link = one_poi['link'];\n        vector.attributes.m_backlinks = null;\n        if (one_poi['backlinks']) {\n            vector.attributes.m_backlinks = one_poi['backlinks'];\n        }\n        vector.attributes.m_image_mm = one_poi['image_mm'];\n        vector.attributes.m_image_source = one_poi['image_src'];\n        var one_image_width = one_poi['image_width'];\n        if (\"0\" == \"\" + one_image_width) {one_image_width = \"\";}\n        var one_image_height = one_poi['image_height'];\n        if (\"0\" == \"\" + one_image_height) {one_image_height = \"\";}\n        vector.attributes.m_image_width = one_image_width;\n        vector.attributes.m_image_height = one_image_height;\n\n        vector.attributes.m_image_share = false;\n        vector.attributes.m_video_mm = one_poi['video_mm'];\n\n        vector.attributes.m_video_id = one_poi['video_id'];\n        vector.attributes.m_video_type = one_poi['video_type'];\n        var one_video_width = one_poi['video_width'];\n        if (\"0\" == \"\" + one_video_width) {one_video_width = \"\";}\n        var one_video_height = one_poi['video_height'];\n        if (\"0\" == \"\" + one_video_height) {one_video_height = \"\";}\n        vector.attributes.m_video_width = one_video_width;\n        vector.attributes.m_video_height = one_video_height;\n\n        vector.attributes.m_video_share = false;\n\n        vector.attributes.m_image = \"\";\n        vector.attributes.m_embed = \"\";\n        GeoPopups.set_image_tag(vector.attributes, this);\n        GeoPopups.set_embed_tag(vector.attributes, this);\n\n        vector.attributes.m_obj = this;\n        vector.attributes.m_count = poi_count;\n        vector.attributes.m_duplicate = one_marker[\"duplicate\"];\n        vector.attributes.m_original = one_marker[\"original\"];\n        vector.attributes.m_shift = one_marker[\"lon_shift\"];\n        vector.attributes.m_maplon = one_marker['map_lon'];\n        vector.attributes.m_maplat = one_marker['map_lat'];\n\n        features_to_add.push(vector);\n\n    }\n    }\n\n    this.layer.addFeatures(features_to_add);\n\n    this.descs_count = poi_count;\n    this.descs_count_inc = poi_count;\n\n    if (true && this.auto_focus && ((0 < poi_count) || focus_area_cons))\n    {\n        if ((poi_lon_max - poi_lon_min) > (toi_lon_max - toi_lon_min))\n        {\n            poi_lon_min = toi_lon_min;\n            poi_lon_max = toi_lon_max;\n            poi_lat_min = toi_lat_min;\n            poi_lat_max = toi_lat_max;\n            pos_lon_min = tos_lon_min;\n            pos_lon_max = tos_lon_max;\n            pos_lat_min = tos_lat_min;\n            pos_lat_max = pos_lat_max;\n        }\n\n        var poi_cen_lon = (poi_lon_min + poi_lon_max) / 2.0;\n        var poi_cen_lat = (poi_lat_min + poi_lat_max) / 2.0;\n        var poi_cen_lonlat = new OpenLayers.LonLat(poi_cen_lon, poi_cen_lat);\n        var poi_corner_tl = new OpenLayers.LonLat(poi_lon_min, poi_lat_max);\n        var poi_corner_bl = new OpenLayers.LonLat(poi_lon_min, poi_lat_min);\n        var poi_corner_tr = new OpenLayers.LonLat(poi_lon_max, poi_lat_max);\n        var poi_corner_br = new OpenLayers.LonLat(poi_lon_max, poi_lat_min);\n        var poi_corners = [poi_corner_tl, poi_corner_bl, poi_corner_tr, poi_corner_br];\n        var poi_corner_count = poi_corners.length;\n\n        var poi_lon_span = poi_lon_max - poi_lon_min;\n        var poi_lat_span = poi_lat_max - poi_lat_min;\n\n        var zoom_min = 0;\n        var zoom_ini = this.auto_focus_max_zoom;\n        var zoom_use = 0;\n\n        var view_box = null;\n        var pois_included = true;\n        var cind = 0;\n\n        var zoom_out = false;\n\n        for (var zind = zoom_ini; zind > zoom_min; zind--)\n        {\n            view_box = this.map.calculateBounds(poi_cen_lonlat, this.map.getResolutionForZoom(zind));\n            pois_included = true;\n            for (cind = 0; cind < poi_corner_count; cind++)\n            {\n                if (!view_box.containsLonLat(poi_corners[cind], false)) {pois_included = false; break;}\n            }\n            if (pois_included)\n            {\n                zoom_use = zind;\n\n                var box_width = view_box.right - view_box.left;\n                var box_height = view_box.top - view_box.bottom;\n                var outside_lon = (1.0 - (poi_lon_span / box_width)) / 2.0;\n                var outside_lat = (1.0 - (poi_lat_span / box_height)) / 2.0;\n                var div_size = this.map.getCurrentSize();\n                outside_lon *= div_size.w;\n                outside_lat *= div_size.h;\n\n                if (outside_lon < this.auto_focus_border) {zoom_out = true;}\n                if (outside_lat < this.auto_focus_border) {zoom_out = true;}\n\n                break;\n            }\n        }\n\n        if (zoom_out && ((1 < poi_count) || focus_area_cons))\n        {\n            if (0 < zoom_use) {zoom_use -= 1;}\n        }\n\n        received_obj.map.lon = (pos_lon_min + pos_lon_max) / 2.0;\n        if (180 < received_obj.map.lon) {received_obj.map.lon -= 360;}\n        if (-180 > received_obj.map.lon) {received_obj.map.lon += 360;}\n\n        received_obj.map.lat = (pos_lat_min + pos_lat_max) / 2.0;\n        received_obj.map.res = \"\" + zoom_use;\n\n    }\n\n    this.set_map_usage(received_obj.map);\n    this.map_showview();\n\n    this.select_control = new OpenLayers.Control.SelectFeature(this.layer);\n    this.map.addControl(this.select_control);\n    this.select_control.activate();\n\n};\n\nthis.main_openlayers_init = function(map_div_name) {\n    var geo_obj = this;\n    this.map_div_name = map_div_name;\n\n    if (this.map_is_popup) {\n        var page_height = $(window).height();\n        this.map_art_view_height_default = page_height;\n\n        this.last_page_height = (page_height - this.page_height_offset);\n        var body_holder = document.getElementById ? document.getElementById(this.page_map_holder) : null;\n        if (body_holder) {\n            body_holder.style.height = \"\" + this.last_page_height + \"px\";\n        }\n\n    } else {\n        if (this.map_height_percentage) {\n            var place_height = $('#' + this.map_div_name).height();\n            this.map_art_view_height_default = place_height;\n        }\n    }\n\n    var pzb_ctrl = null;\n    var pzb_with_bar = false;\n\n    if (!this.action_substitute) {\n        if (360 <= this.map_art_view_height_default)\n        {\n            pzb_ctrl = new OpenLayers.Control.PanZoomBarMod();\n            pzb_with_bar = true;\n        }\n        else\n        {\n            pzb_ctrl = new OpenLayers.Control.PanZoomMod();\n        }\n        pzb_ctrl.geo_obj = this;\n    }\n\n    this.map = null;\n\n    var scaleline = new OpenLayers.Control.ScaleLine();\n    scaleline.geodesic = true;\n\n    if (!this.action_substitute) {\n        this.map = new OpenLayers.Map(map_div_name, {\n            controls: [\n                new OpenLayers.Control.Navigation(),\n                pzb_ctrl,\n                scaleline\n            ],\n            numZoomLevels: 20\n        });\n    }\n    else {\n        this.map = new OpenLayers.Map(map_div_name, {\n            controls: [\n                new OpenLayers.Control.Navigation()\n            ],\n            numZoomLevels: 20\n        });\n    }\n\n    this.map.geo_obj = this;\n    this.map.geo_obj.obj_name = null;\n\n    var map_provs = [];\n    var map_gsm = null;\n    var map_mqm = null;\n    var map_osm = null;\n\n    this.map_view_layer_names_all = {};\n\n    var google_label = this.map_view_layer_google;\n    var mqm_label = this.map_view_layer_mapquest;\n    var osm_label = this.map_view_layer_osm;\n\n    if (this.map_view_layer_providers[google_label])\n    {\n        // google map v3\n        map_gsm = new OpenLayers.Layer.GoogleMod(\n            \"Google Streets\",\n            {}\n        );\n        this.map_view_layer_names_all[google_label] = map_gsm.name;\n        if (google_label == this.map_view_layer_default)\n        {\n            map_provs.push(map_gsm);\n        }\n    }\n\n    if (this.map_view_layer_providers[mqm_label])\n    {\n        // openstreetmap by mapquest\n        map_mqm = new OpenLayers.Layer.MapQuest(\n            \"MapQuest Map\"\n        );\n        map_mqm.wrapDateLine = true;\n        map_mqm.displayOutsideMaxExtent = true;\n        map_mqm.transitionEffect = 'resize';\n\n        this.map_view_layer_names_all[mqm_label] = map_mqm.name;\n        if (mqm_label == this.map_view_layer_default)\n        {\n            map_provs.push(map_mqm);\n        }\n    }\n\n    if (this.map_view_layer_providers[osm_label])\n    {\n        // openstreetmap\n        map_osm = new OpenLayers.Layer.OSMMod();\n        map_osm.wrapDateLine = true;\n        map_osm.displayOutsideMaxExtent = true;\n        map_osm.transitionEffect = 'resize';\n\n        this.map_view_layer_names_all[osm_label] = map_osm.name;\n        if (osm_label == this.map_view_layer_default)\n        {\n            map_provs.push(map_osm);\n        }\n    }\n\n    if (map_gsm && (google_label != this.map_view_layer_default))\n    {\n        map_provs.push(map_gsm);\n    }\n    if (map_mqm && (mqm_label != this.map_view_layer_default))\n    {\n        map_provs.push(map_mqm);\n    }\n    if (map_osm && (osm_label != this.map_view_layer_default))\n    {\n        map_provs.push(map_osm);\n    }\n\n    this.map.addLayers(map_provs);\n    this.map.addControl(new OpenLayers.Control.Attribution());\n\n    // an initial center point, set via parameters\n    var cen_ini_longitude = this.map_view_layer_center_ini[\"longitude\"];\n    var cen_ini_latitude = this.map_view_layer_center_ini[\"latitude\"];\n    var lonLat_cen = new OpenLayers.LonLat(cen_ini_longitude, cen_ini_latitude)\n          .transform(\n            new OpenLayers.Projection(\"EPSG:4326\"), // transform from WGS 1984\n            this.map.getProjectionObject() // to Spherical Mercator Projection\n          );\n    var zoom = this.map_view_layer_zoom;\n\n    var style_map = new OpenLayers.StyleMap({\n                graphicZIndex: 10,\n                cursor: \"pointer\"\n    });\n\n    var lookup = {};\n    var labels_len = this.marker_src_labels.length;\n    for (var lind = 0; lind < labels_len; lind++)\n    {\n        var cur_label = this.marker_src_labels[lind];\n        var cur_icon = this.marker_src_icons[cur_label];\n        lookup[2*lind] = {\n            fillOpacity: 1.0,\n            externalGraphic: cur_icon[\"path\"],\n            graphicWidth: cur_icon[\"width\"],\n            graphicHeight: cur_icon[\"height\"],\n            graphicXOffset: cur_icon[\"width_off\"],\n            graphicYOffset: cur_icon[\"height_off\"]\n        };\n        lookup[(2*lind)+1] = {\n            fillOpacity: 0.4,\n            externalGraphic: cur_icon[\"path\"],\n            graphicWidth: cur_icon[\"width\"],\n            graphicHeight: cur_icon[\"height\"],\n            graphicXOffset: cur_icon[\"width_off\"],\n            graphicYOffset: cur_icon[\"height_off\"]\n        };\n    };\n\n    // create a lookup table for the provided icon types\n    style_map.addUniqueValueRules(\"default\", \"type\", lookup);\n\n    // layer for features\n    this.layer = new OpenLayers.Layer.Vector(\n        \"POI markers\",\n        {\n            styleMap: style_map,\n            isBaseLayer: false,\n            rendererOptions: {yOrdering: true}\n        }\n    );\n    this.map.addLayer(this.layer);\n\n    // setting map center\n    this.map.setCenter (lonLat_cen, zoom);\n\n    this.map_view_layer_name = this.map.layers[0].name;\n    this.map_view_layer_center = this.map.getCenter();\n    this.map_view_layer_zoom = this.map.getZoom();\n\n    // should we open the large map instead of doing the standard actions\n    if (this.action_substitute) {\n        var click_subst = new OpenLayers.Control.Click();\n        this.map.addControl(click_subst);\n        click_subst.setTriggerAction(function(evt, map) {\n            geo_obj.subst_action(evt, \"map_click\");\n        });\n        click_subst.activate();\n\n        this.layer.events.on({\n            'featureselected': function(evt) {geo_obj.subst_action(evt, \"select_poi\"); geo_obj.select_control.unselect(evt.feature); },\n            'featureunselected': function(evt) {OpenLayers.HooksPopups.on_feature_unselect(evt, geo_obj);}\n        });\n\n    }\n    else {\n        // registering for click events\n        var click = new OpenLayers.Control.Click();\n        this.map.addControl(click);\n        click.setTriggerAction(function(evt, map) {\n            OpenLayers.HooksLocal.nothing_on_map_click(evt, map);\n        });\n        click.activate();\n    \n        var hover = new OpenLayers.Control.Hover();\n        hover.setTriggerAction(function(evt, map) {\n            var poi_hover = map.geo_obj.layer.getFeatureFromEvent(evt);\n            if (poi_hover) {\n                if (null !== poi_hover.attributes.m_rank) {\n                    map.geo_obj.poi_rank_out = poi_hover.attributes.m_rank;\n                }\n            }\n        });\n        this.map.addControl(hover);\n        hover.activate();\n\n        this.layer.events.on({\n            'featureselected': function(evt) {OpenLayers.HooksPopups.on_feature_select(evt, geo_obj);},\n            'featureunselected': function(evt) {OpenLayers.HooksPopups.on_feature_unselect(evt, geo_obj);}\n        });\n\n    }\n\n    var cur_date = new Date();\n    OpenLayers.HooksLocal.redraw_times.map_dragging_last = cur_date.getTime();\n\n    var drag_map = new OpenLayers.Control.DragPanMod([map_gsm, map_mqm, map_osm]);\n    this.map.addControl(drag_map);\n    drag_map.activate();\n\n    this.map.events.register(\"moveend\", null, function() {\n        geo_obj.on_view_change_hook();\n    });\n    this.map.events.register(\"zoomend\", null, function() {\n        geo_obj.on_view_change_hook();\n    });\n\n};\n\nthis.on_view_change_hook = function() {\n    var geo_obj = this;\n    // can not have a direct call here, since it would cycle at some situations\n    setTimeout('OpenLayers.HooksLocal.map_check_popup(' + geo_obj.obj_name + ');', 500);\n};\n\n};\n\n"
  },
  {
    "path": "newscoop/js/geocoding/map_search.js",
    "content": "// better for some providers to try more than once\nif (5 > OpenLayers.IMAGE_RELOAD_ATTEMPTS)\n{\n    OpenLayers.IMAGE_RELOAD_ATTEMPTS = 5;\n}\n\n// times for icon redrawing at some situations\nvar redraw_times = {\n    time_drag_delay: 500,\n    map_dragging_last: 0\n};\n\n// the POI markers are not re-drawn after some actions happen; this is a part of the fix;\nvar geo_hook_map_feature_redraw = function(geo_obj, xy, delay)\n{\n    var cur_date = new Date();\n    var cur_time = cur_date.getTime();\n\n    var time_delay = redraw_times.time_drag_delay;\n    if (undefined !== delay)\n    {\n        time_delay = delay;\n    }\n\n    if (time_delay <= (cur_time - redraw_times.map_dragging_last))\n    {\n        geo_hook_map_dragged(geo_obj, xy);\n        redraw_times.map_dragging_last = cur_time;\n    }\n\n};\n\n// adding redrawing of the POI icons on map panning\n//var geo_hook_map_bar_panning = function(geo_obj, ctrl, evt)\nvar geo_hook_map_bar_panning = function(evt, geo_param)\n{\n    ctrl = this;\n    var geo_obj = this.map.geo_obj;\n\n    if (undefined !== geo_param) {geo_obj = geo_param;}\n\n    if (geo_obj)\n    {\n        geo_hook_map_feature_redraw(geo_obj, 0);\n    }\n\n    if (!OpenLayers.Event.isLeftClick(evt)) {\n        return;\n    }\n    switch (ctrl.action) {\n      case \"panup\":\n        ctrl.map.pan(0, - ctrl.getSlideFactor(\"h\"));\n        break;\n      case \"pandown\":\n        ctrl.map.pan(0, ctrl.getSlideFactor(\"h\"));\n        break;\n      case \"panleft\":\n        ctrl.map.pan(- ctrl.getSlideFactor(\"w\"), 0);\n        break;\n      case \"panright\":\n        ctrl.map.pan(ctrl.getSlideFactor(\"w\"), 0);\n        break;\n      case \"zoomin\":\n        ctrl.map.zoomIn();\n        break;\n      case \"zoomout\":\n        ctrl.map.zoomOut();\n        break;\n      case \"zoomworld\":\n        ctrl.map.zoomToMaxExtent();\n        break;\n      default:;\n    }\n\n    OpenLayers.Event.stop(evt);\n\n};\n\n// adding redrawing of the POI icons on map panning\nvar geo_hook_map_dragging = function(drag_map, geo_obj, xy)\n{\n    drag_map.panned = true;\n\n    drag_map.map.pan(drag_map.handler.last.x - xy.x, drag_map.handler.last.y - xy.y, {dragging: drag_map.handler.dragging, animate: false});\n\n    geo_hook_map_feature_redraw(geo_obj, xy);\n\n};\n\n// adding redrawing of the POI icons on bar panning\nvar geo_hook_map_dragged = function(geo_obj, pixel)\n{\n    var new_center = geo_obj.map.center.clone();\n    geo_obj.map.setCenter(new_center);\n\n    geo_obj.select_control.destroy();\n    geo_obj.select_control = new OpenLayers.Control.SelectFeature(geo_obj.layer);\n    geo_obj.map.addControl(geo_obj.select_control);\n    geo_obj.select_control.activate();\n};\n\n// to insert new POI on map click, but not on a click that closes a pop-up\nvar geo_hook_trigger_on_map_click = function(geo_obj, e)\n{\n    if (geo_obj.ignore_click) {\n        geo_obj.ignore_click = false;\n    }\n\n    if (e['cancelBubble']) {return true;}\n\n    if (undefined !== e.originalTarget)\n    {\n        if (\"object\" != (typeof e.originalTarget))\n        {\n            return true;\n        }\n\n        if (e.originalTarget instanceof HTMLSpanElement)\n        {\n            return true;\n        }\n        if (e.originalTarget instanceof HTMLDivElement)\n        {\n            return true;\n        }\n    }\n    else\n    {\n        if (undefined !== e['srcElement'])\n        {\n            var src_el_rep = e['srcElement'].toString();\n            if (\"http\" == src_el_rep.substr(0, 4)) {return true;}\n        }\n    }\n\n    var lonlat = geo_obj.map.getLonLatFromViewPortPx(e.xy);\n\n    var pixel = e.xy;\n\n    var feature = geo_obj.layer.features[0];\n    feature.move(pixel);\n\n    var attrs = feature.attributes;\n    attrs['map_lon'] = lonlat.lon;\n    attrs['map_lat'] = lonlat.lat;\n\n\n    geo_hook_set_search_corners(feature);\n};\n\n\n\n\n// taking POI-mouse offset on the start of a POI dragging\nvar geo_hook_poi_dragg_start = function(feature, pixel)\n{\n    var attrs = feature.attributes;\n    var geo_obj = attrs.geo_obj;\n\n    var lonlat = geo_obj.map.getLonLatFromViewPortPx(pixel);\n\n    attrs['map_lon_offset'] = lonlat.lon - attrs['map_lon'];\n    attrs['map_lat_offset'] = lonlat.lat - attrs['map_lat'];\n\n};\n\n// updating info on POI after it was dragged\nvar geo_hook_poi_dragged = function(feature, pixel)\n{\n    var attrs = feature.attributes;\n    var geo_obj = attrs.geo_obj;\n\n    var lonlat = geo_obj.map.getLonLatFromViewPortPx(pixel);\n\n    lonlat.lon -= attrs['map_lon_offset'];\n    lonlat.lat -= attrs['map_lat_offset'];\n\n    attrs['map_lon'] = lonlat.lon;\n    attrs['map_lat'] = lonlat.lat;\n\n    geo_hook_set_search_corners(feature);\n\n};\n\n// setting info on the currently set search box coordinates\nvar geo_hook_set_search_corners = function(feature)\n{\n        var attrs = feature.attributes;\n        var geo_obj = attrs.geo_obj;\n\n        var lonlat_search = new OpenLayers.LonLat(attrs[\"map_lon\"], attrs[\"map_lat\"]);\n\n        var cen_px = geo_obj.map.getViewPortPxFromLonLat(lonlat_search.clone());\n\n        var topleft_px = cen_px.clone();\n        topleft_px.x -= 100;\n        topleft_px.y -= 75;\n        var bottomright_px = cen_px.clone();\n        bottomright_px.x += 100;\n        bottomright_px.y += 75;\n\n        var topleft_loc = geo_obj.map.getLonLatFromViewPortPx(topleft_px).transform(\n            geo_obj.map.getProjectionObject(), // to Spherical Mercator Projection\n            new OpenLayers.Projection(\"EPSG:4326\") // transform from WGS 1984\n        );\n\n        var bottomright_loc = geo_obj.map.getLonLatFromViewPortPx(bottomright_px).transform(\n            geo_obj.map.getProjectionObject(), // to Spherical Mercator Projection\n            new OpenLayers.Projection(\"EPSG:4326\") // transform from WGS 1984\n        );\n\n        attrs['top_left_lon'] = topleft_loc.lon;\n        attrs['top_left_lat'] = topleft_loc.lat;\n        attrs['bottom_right_lon'] = bottomright_loc.lon;\n        attrs['bottom_right_lat'] = bottomright_loc.lat;\n\n        geo_obj.fill_bbox_divs();\n};\n\n\n// the main object to hold geo-things\nfunction geo_locations () {\n\nthis.something_to_save = false;\n\n// specifying the article that the map is for\nthis.article_number = 0;\nthis.language_id = 0;\n\n// flags for what has been changed\nthis.map_spec_changed = false;\nthis.poi_order_changed = false;\n\n// marker icons paths and names, set during initialization\nthis.marker_src_base = \"\";\nthis.marker_src_default = \"\";\nthis.marker_src_default_ind = 0;\n//this.marker_src_names = [];\nthis.marker_src_labels = [];\nthis.marker_src_icons = {};\n\n// what map provider should be used, and map position\nthis.map_view_layer_google = \"googlev3\";\nthis.map_view_layer_mapquest = \"mapquest\";\nthis.map_view_layer_osm = \"osm\";\nthis.map_view_layer_providers = {};\nthis.map_view_layer_providers[this.map_view_layer_google] = false;\nthis.map_view_layer_providers[this.map_view_layer_mapquest] = false;\nthis.map_view_layer_providers[this.map_view_layer_osm] = false;\n\nthis.map_view_layer_names_all = {};\nthis.map_view_layer_default = \"\";\nthis.map_view_layer_name = \"\";\nthis.map_view_layer_center_ini = {};\nthis.map_view_layer_center = null;\nthis.map_view_layer_zoom = 0;\nthis.map_art_view_width_default = 0;\nthis.map_art_view_height_default = 0;\n\n// values for popup style properties\nthis.popup_width = 0;\nthis.popup_height = 0;\nthis.popup_video_labels = [];\nthis.popup_video_props = {};\n\n// values for the lines to display the proposed map size\nthis.map_art_view_width = 600;\nthis.map_art_view_height = 400;\nthis.map_art_view_top = 70;\nthis.map_art_view_right = 105;\nthis.map_art_view_width_display = 600;\nthis.map_art_view_height_display = 400;\nthis.map_art_view_top_display = 70;\nthis.map_art_view_right_display = 105;\n\nthis.map_label_name = \"\";\nthis.map_id = 0;\n\n// currently edited (via the edit link) point\nthis.edited_point = 0;\nthis.edit_text_mode = 'plain';\nthis.edit_view_mode = 'edit';\n\n\n// the order of the pois done by drag-n-drop; we do not reorder pois in the layer\nthis.poi_order_user = [];\n\n// map controls\nthis.select_control = null\n\n// the pan zoom-and-bar control\nthis.pzb_ctrl = null;\nthis.not_to_pan_update = true;\n\n// for ids of pop-ups\nthis.cur_pop_rank = 0;\n\n// tha map layer\nthis.map = null;\n// the markers layer\nthis.layer = null;\n\n// saving info on markers that should be deleted from db\nthis.poi_deletion = [];\n\n// info on markers, with the original ids, so that we can push changes into db\nthis.poi_markers = [];\n\n// whether map is shown, used at the initial version\nthis.map_shown = false;\nthis.map_obj = null\n\n// auxiliary index for accordion selection\nthis.poi_rank_out = -1;\n\n// auxiliary for POI side-bar updates\nthis.descs_elm = null;\nthis.descs_elm_name = \"\";\nthis.descs_inner = \"\";\n\n// count of POIs, with/without counting removals\nthis.descs_count = 0;\nthis.descs_count_inc = 0;\n\n// not to make new POI on closing a pop-up\nthis.ignore_click = false;\n// the used pop-up window\nthis.popup = null;\n\n// optional divs for displaying corners of the search rectangle\nthis.bbox_divs = null;\n\n// setting the optional output divs\nthis.set_bbox_divs = function (params)\n{\n    if (!params) {return;}\n\n    var tl_lon_name = params[\"tl_lon\"];\n    var tl_lat_name = params[\"tl_lat\"];\n    var br_lon_name = params[\"br_lon\"];\n    var br_lat_name = params[\"br_lat\"];\n\n    if (!tl_lon_name) {return;}\n    if (!tl_lat_name) {return;}\n    if (!br_lon_name) {return;}\n    if (!br_lat_name) {return;}\n\n    var tl_lon_obj = document.getElementById ? document.getElementById(tl_lon_name) : null;\n    var tl_lat_obj = document.getElementById ? document.getElementById(tl_lat_name) : null;\n    var br_lon_obj = document.getElementById ? document.getElementById(br_lon_name) : null;\n    var br_lat_obj = document.getElementById ? document.getElementById(br_lat_name) : null;\n\n    if (!tl_lon_obj) {return;}\n    if (!tl_lat_obj) {return;}\n    if (!br_lon_obj) {return;}\n    if (!br_lat_obj) {return;}\n\n    this.bbox_divs = {\n        'tl_lon': tl_lon_obj,\n        'tl_lat': tl_lat_obj,\n        'br_lon': br_lon_obj,\n        'br_lat': br_lat_obj\n    };\n\n};\n\n// puts info into the output divs\nthis.fill_bbox_divs = function ()\n{\n    if (!this.bbox_divs) {return;}\n\n    var tl_vals = this.get_top_left();\n\n    var br_vals = this.get_bottom_right();\n\n    this.bbox_divs['tl_lon'].innerHTML = tl_vals['longitude'];\n    this.bbox_divs['tl_lat'].innerHTML = tl_vals['latitude'];\n    this.bbox_divs['br_lon'].innerHTML = br_vals['longitude'];\n    this.bbox_divs['br_lat'].innerHTML = br_vals['latitude'];\n\n};\n\nthis.map_limit_width_display = 800;\nthis.map_limit_height_display = 500;\nthis.map_limit_width_view = 1200;\nthis.map_limit_height_view = 1200;\n\n// setting the db based default info\nthis.set_map_info = function(params)\n{\n    this.map_view_layer_default = params[\"default\"];\n    var prov_len = params.providers.length;\n    for (var pind = 0; pind < prov_len; pind++)\n    {\n        this.map_view_layer_providers[params.providers[pind]] = true;\n    }\n\n    this.map_view_layer_center_ini = {\"longitude\": params.longitude, \"latitude\": params.latitude};\n    this.map_view_layer_zoom = parseInt(params.resolution);\n\n    this.map_art_view_width_default = parseInt(params.width);\n    this.map_art_view_height_default = parseInt(params.height);\n};\n\n// setting info on available icons\nthis.set_icons_info = function(params)\n{\n    this.marker_src_base = params.webdir;\n    this.marker_src_default = params[\"default\"];\n    this.marker_src_labels = [];\n    this.marker_src_icons = {};\n\n    var icon_len = params.icons.length;\n    for (var iind = 0; iind < icon_len; iind++)\n    {\n        var cur_icon = params.icons[iind];\n        var cur_label = cur_icon.label;\n\n        if (cur_icon['name'] == this.marker_src_default)\n        {\n            this.marker_src_default_ind = iind;\n        }\n\n        this.marker_src_labels.push(cur_label);\n        this.marker_src_icons[cur_label] = {\n            \"name\": cur_icon[\"name\"],\n            \"path\": cur_icon[\"path\"],\n            \"width\": parseFloat(cur_icon[\"width\"]),\n            \"height\": parseFloat(cur_icon[\"height\"]),\n            \"width_off\": parseFloat(cur_icon[\"width_off\"]),\n            \"height_off\": parseFloat(cur_icon[\"height_off\"])\n        };\n    }\n\n};\n\n\n// to center the map view on the requested position\nthis.center_lonlat = function(longitude, latitude)\n{\n    var lonLat = new OpenLayers.LonLat(longitude, latitude).transform(\n        new OpenLayers.Projection(\"EPSG:4326\"), // transform from WGS 1984\n        this.map.getProjectionObject() // to Spherical Mercator Projection\n    );\n\n    this.map.setCenter (lonLat);\n};\n\n// sets map center onto the requested POI (bound on the 'center' link)\nthis.center_poi = function(index)\n{\n    var mlon = this.poi_markers[index].map_lon;\n    var mlat = this.poi_markers[index].map_lat;\n    var lonLat = new OpenLayers.LonLat(mlon, mlat);\n\n    this.map.setCenter (lonLat);\n\n};\n\n// showing the current initial reader view\nthis.map_showview = function()\n{\n    var map_names = this.map.getLayersByName(this.map_view_layer_name);\n    if (0 < map_names.length)\n    {\n        this.map.setBaseLayer(map_names[0]);\n    }\n    this.map.setCenter(this.map_view_layer_center, this.map_view_layer_zoom);\n\n    var feature = this.layer.features[0];\n\n    var lonlat = this.map.getCenter();\n    var pixel = this.map.getViewPortPxFromLonLat(lonlat);\n    feature.move(pixel);\n\n    var attrs = feature.attributes;\n    attrs['map_lon'] = lonlat.lon;\n    attrs['map_lat'] = lonlat.lat;\n\n    geo_hook_set_search_corners(feature);\n\n};\n\n// public function to provide a corner coordinates\nthis.get_top_left = function ()\n{\n    var top_left = {'longitude': 0, 'latitude': 0};\n\n    var feature = this.layer.features[0];\n    if (!feature) {return top_left;}\n\n    var attrs = feature.attributes;\n    if (!attrs) {return top_left;}\n\n    top_left['longitude'] = attrs['top_left_lon'];\n    top_left['latitude'] = attrs['top_left_lat'];\n\n    return top_left;\n};\n\n// public function to provide a corner coordinates\nthis.get_bottom_right = function ()\n{\n    var bottom_right = {'longitude': 0, 'latitude': 0};\n\n    var feature = this.layer.features[0];\n    if (!feature) {return bottom_right;}\n\n    var attrs = feature.attributes;\n    if (!attrs) {return bottom_right;}\n\n    bottom_right['longitude'] = attrs['bottom_right_lon'];\n    bottom_right['latitude'] = attrs['bottom_right_lat'];\n\n    return bottom_right;\n};\n\n\n\n};\n\n// map related initialization\nvar geo_main_openlayers_init = function(geo_obj, map_div_name)\n{\n    OpenLayers.Control.Hover = OpenLayers.Class(OpenLayers.Control, {\n        defaultHandlerOptions: {\n            'delay': 200,\n            'pixelTolerance': 2\n        },\n        initialize: function(options) {\n            this.handlerOptions = OpenLayers.Util.extend(\n                {}, this.defaultHandlerOptions\n            );\n            OpenLayers.Control.prototype.initialize.apply(\n                this, arguments\n            );\n            this.handler = new OpenLayers.Handler.Hover(\n                this, {\n                    'pause': this.trigger\n                }, this.handlerOptions\n            );\n        },\n        trigger: function(evt) {\n            var poi_hover = geo_obj.layer.getFeatureFromEvent(evt);\n            if (poi_hover) {\n                if (null !== poi_hover.attributes.m_rank) {\n                    geo_obj.poi_rank_out = poi_hover.attributes.m_rank;\n                }\n            }\n        }\n    });\n\n    OpenLayers.Control.Click = OpenLayers.Class(OpenLayers.Control, {\n        defaultHandlerOptions: {\n            'single': true,\n            'double': false,\n            'pixelTolerance': 0,\n            'stopSingle': false,\n            'stopDouble': false,\n            'projection': new OpenLayers.Projection(\"EPSG:900913\"),\n            'displayProjection': new OpenLayers.Projection(\"EPSG:900913\")\n        },\n\n        initialize: function(options) {\n            this.handlerOptions = OpenLayers.Util.extend(\n                {}, this.defaultHandlerOptions\n            );\n            OpenLayers.Control.prototype.initialize.apply(\n                this, arguments\n            );\n            this.handler = new OpenLayers.Handler.Click(\n                this, {\n                    'click': function(e) {geo_hook_trigger_on_map_click(geo_obj, e);}\n                }, this.handlerOptions\n            );\n        }\n\n    });\n\n    var pzb_ctrl = new OpenLayers.Control.PanZoomBarMod();\n    pzb_ctrl.geo_obj = geo_obj;\n\n    var scaleline = new OpenLayers.Control.ScaleLine();\n    scaleline.geodesic = true;\n\n    pzb_ctrl.buttonDown = geo_hook_map_bar_panning;\n\n    geo_obj.map = new OpenLayers.Map(map_div_name, {\n        controls: [\n            new OpenLayers.Control.Navigation(),\n            pzb_ctrl,\n            scaleline\n        ],\n        numZoomLevels: 20\n    });\n\n    geo_obj.map.geo_obj = geo_obj;\n\n    var map_provs = [];\n    var map_gsm = null;\n    var map_mqm = null;\n    var map_osm = null;\n\n    geo_obj.map_view_layer_names_all = {};\n\n    var google_label = geo_obj.map_view_layer_google;\n    var mqm_label = geo_obj.map_view_layer_mapquest;\n    var osm_label = geo_obj.map_view_layer_osm;\n\n    if (geo_obj.map_view_layer_providers[google_label])\n    {\n        // google map v3\n        map_gsm = new OpenLayers.Layer.Google(\n            \"Google Streets\",\n            {\n                numZoomLevels: 20, 'sphericalMercator': true, 'repositionMapElements': function () {\n                    google.maps.event.trigger(this.mapObject, \"resize\");\n                    var div = this.mapObject.getDiv().firstChild;\n                    if (!div || div.childNodes.length < 3) {\n                        this.repositionTimer = window.setTimeout(OpenLayers.Function.bind(this.repositionMapElements, this), 250);\n                        return false;\n                    }\n\n                    var cache = OpenLayers.Layer.Google.cache[this.map.id];\n                    var container = this.map.viewPortDiv;\n\n                    var termsOfUse = div.lastChild;\n                    container.appendChild(termsOfUse);\n                    termsOfUse.style.zIndex = \"1100\";\n                    termsOfUse.style.bottom = \"\";\n                    termsOfUse.className = \"olLayerGoogleCopyright olLayerGoogleV3\";\n                    //termsOfUse.style.display = \"\";\n                    //cache.termsOfUse = termsOfUse;\n\n                    var poweredBy = div.lastChild;\n                    container.appendChild(poweredBy);\n                    poweredBy.style.zIndex = \"1100\";\n                    poweredBy.style.bottom = \"\";\n                    poweredBy.className = \"olLayerGooglePoweredBy olLayerGoogleV3 gmnoprint\";\n                    poweredBy.style.display = \"\";\n                    cache.poweredBy = poweredBy;\n\n                    this.setGMapVisibility(this.visibility);\n                }\n            }\n        );\n        geo_obj.map_view_layer_names_all[google_label] = map_gsm.name;\n        if (google_label == geo_obj.map_view_layer_default)\n        {\n            map_provs.push(map_gsm);\n        }\n    }\n\n    if (geo_obj.map_view_layer_providers[mqm_label])\n    {\n        // openstreetmap by mapquest\n        map_mqm = new OpenLayers.Layer.MapQuest(\n            \"MapQuest Map\"\n        );\n        map_mqm.wrapDateLine = true;\n        map_mqm.displayOutsideMaxExtent = true;\n        map_mqm.transitionEffect = 'resize';\n\n        geo_obj.map_view_layer_names_all[mqm_label] = map_mqm.name;\n        if (mqm_label == geo_obj.map_view_layer_default)\n        {\n            map_provs.push(map_mqm);\n        }\n    }\n\n    if (geo_obj.map_view_layer_providers[osm_label])\n    {\n        // openstreetmap\n        map_osm = new OpenLayers.Layer.OSM();\n        map_osm.wrapDateLine = true;\n        map_osm.attribution = \"Data CC-By-SA by <a href='http://openstreetmap.org/' target='_blank'>OpenStreetMap</a>\";\n        geo_obj.map_view_layer_names_all[osm_label] = map_osm.name;\n        if (osm_label == geo_obj.map_view_layer_default)\n        {\n            map_provs.push(map_osm);\n        }\n    }\n\n    if (map_gsm && (google_label != geo_obj.map_view_layer_default))\n    {\n        map_provs.push(map_gsm);\n    }\n    if (map_mqm && (mqm_label != geo_obj.map_view_layer_default))\n    {\n        map_provs.push(map_mqm);\n    }\n    if (map_osm && (osm_label != geo_obj.map_view_layer_default))\n    {\n        map_provs.push(map_osm);\n    }\n\n    geo_obj.map.addLayers(map_provs);\n    geo_obj.map.addControl(new OpenLayers.Control.Attribution());\n\n    // an initial center point, set via parameters\n    var cen_ini_longitude = geo_obj.map_view_layer_center_ini[\"longitude\"];\n    var cen_ini_latitude = geo_obj.map_view_layer_center_ini[\"latitude\"];\n    var lonLat_cen = new OpenLayers.LonLat(cen_ini_longitude, cen_ini_latitude)\n          .transform(\n            new OpenLayers.Projection(\"EPSG:4326\"), // transform from WGS 1984\n            geo_obj.map.getProjectionObject() // to Spherical Mercator Projection\n          );\n    var zoom = geo_obj.map_view_layer_zoom;\n\n    var style_map = new OpenLayers.StyleMap({\n                graphicZIndex: 10\n    });\n\n    var lookup = {};\n    var labels_len = geo_obj.marker_src_labels.length;\n    for (var lind = 0; lind < labels_len; lind++)\n    {\n        var cur_label = geo_obj.marker_src_labels[lind];\n        var cur_icon = geo_obj.marker_src_icons[cur_label];\n        lookup[2*lind] = {\n            fillOpacity: 1.0,\n            externalGraphic: cur_icon[\"path\"],\n            graphicWidth: cur_icon[\"width\"],\n            graphicHeight: cur_icon[\"height\"],\n            graphicXOffset: cur_icon[\"width_off\"],\n            graphicYOffset: cur_icon[\"height_off\"]\n        };\n        lookup[(2*lind)+1] = {\n            fillOpacity: 0.4,\n            externalGraphic: cur_icon[\"path\"],\n            graphicWidth: cur_icon[\"width\"],\n            graphicHeight: cur_icon[\"height\"],\n            graphicXOffset: cur_icon[\"width_off\"],\n            graphicYOffset: cur_icon[\"height_off\"]\n        };\n    };\n\n    // create a lookup table for the provided icon types\n    style_map.addUniqueValueRules(\"default\", \"type\", lookup);\n\n    // layer for features\n    geo_obj.layer = new OpenLayers.Layer.Vector(\n        \"POI markers\",\n        {\n            styleMap: style_map,\n            isBaseLayer: false,\n            rendererOptions: {yOrdering: true}\n        }\n    );\n    geo_obj.map.addLayer(geo_obj.layer);\n\n    // setting map center\n    geo_obj.map.setCenter (lonLat_cen, zoom);\n\n    geo_obj.map_view_layer_name = geo_obj.map.layers[0].name;\n    geo_obj.map_view_layer_center = geo_obj.map.getCenter();\n    geo_obj.map_view_layer_zoom = geo_obj.map.getZoom();\n\n    {\n        var features_to_add = [];\n\n        var lonlat_search = new OpenLayers.LonLat(lonLat_cen.lon, lonLat_cen.lat);\n\n        var point_search = new OpenLayers.Geometry.Point(lonlat_search.lon, lonlat_search.lat);\n        var icon_search = 0;\n\n        var vector_search = new OpenLayers.Feature.Vector(point_search, {type: icon_search});\n\n        vector_search.attributes.geo_obj = geo_obj;\n        vector_search.attributes['map_lon'] = lonlat_search.lon;\n        vector_search.attributes['map_lat'] = lonlat_search.lat;\n        vector_search.attributes['map_lon_offset'] = 0;\n        vector_search.attributes['map_lat_offset'] = 0;\n\n        features_to_add.push(vector_search);\n\n        geo_obj.layer.addFeatures(features_to_add);\n\n        geo_hook_set_search_corners(vector_search);\n    }\n\n\n    geo_obj.map.events.register(\"zoomend\", geo_obj, function (e) {geo_hook_set_search_corners(vector_search);});\n\n    // registering for click events\n    var click = new OpenLayers.Control.Click();\n    geo_obj.map.addControl(click);\n    click.activate();\n\n    var hover = new OpenLayers.Control.Hover();\n    geo_obj.map.addControl(hover);\n    hover.activate();\n\n    var cur_date = new Date();\n    redraw_times.map_dragging_last = cur_date.getTime();\n\n\n    var drag_feature = new OpenLayers.Control.DragFeature(geo_obj.layer);\n    drag_feature.onStart = geo_hook_poi_dragg_start;\n    drag_feature.onComplete = geo_hook_poi_dragged;\n    geo_obj.map.addControl(drag_feature);\n    drag_feature.activate();\n\n    var drag_map = new OpenLayers.Control.DragPan([map_gsm, map_mqm, map_osm]);\n    drag_map.panMapDone = function(pixel) {geo_hook_map_dragged(geo_obj, pixel)};\n    drag_map.panMap = function(xy) {geo_hook_map_dragging(drag_map, geo_obj, xy)};\n    geo_obj.map.addControl(drag_map);\n    drag_map.activate();\n\n    geo_obj.select_control = new OpenLayers.Control.SelectFeature(geo_obj.layer);\n    geo_obj.map.addControl(geo_obj.select_control);\n    geo_obj.select_control.activate();\n\n};\n\n// the entry initialization point\nvar geo_main_selecting_locations = function (geo_obj, geocodingdir, div_name, descs_name, names_show, names_hide, editing)\n{\n    var map_canvas = document.getElementById ? document.getElementById(div_name) : null;\n    geo_obj.descs_elm = document.getElementById ? document.getElementById(descs_name) : null;\n    geo_obj.descs_elm_name = descs_name;\n\n    var divs_show = [];\n    var divs_hide = [];\n\n    var show_obj = null;\n    var hide_obj = null;\n\n    if (names_show) {\n        var divs_show_names = names_show.split(\",\");\n        var len_show_names = divs_show_names.length;\n        for (var nsind = len_show_names - 1; nsind >= 0; nsind--)\n        {\n            show_obj = null;\n            show_obj = document.getElementById ? document.getElementById(divs_show_names[nsind]) : null;\n            if (show_obj) {divs_show.push(show_obj);}\n        }\n    }\n\n    if (names_hide) {\n        var divs_hide_names = names_hide.split(\",\");\n        var len_hide_names = divs_hide_names.length;\n        for (var nhind = len_hide_names - 1; nhind >= 0; nhind--)\n        {\n            hide_obj = null;\n            hide_obj = document.getElementById ? document.getElementById(divs_hide_names[nhind]) : null;\n            if (hide_obj) {divs_hide.push(hide_obj);}\n        }\n    }\n\n    var use_show_class = \"map_shown\";\n    var use_hide_class = \"map_hidden\";\n    if (geo_obj.map_shown)\n    {\n        use_show_class = \"map_hidden\";\n        use_hide_class = \"map_shown\";\n    }\n\n    {\n        var len_show = divs_show.length;\n        for (var dsind = len_show - 1; dsind >= 0; dsind--)\n        {\n            show_obj = divs_show[dsind];\n            show_obj.className = use_show_class;\n        }\n\n        var len_hide = divs_hide.length;\n        for (var dhind = len_hide - 1; dhind >= 0; dhind--)\n        {\n            hide_obj = divs_hide[dhind];\n            hide_obj.className = use_hide_class;\n        }\n    }\n\n    if (geo_obj.map_shown) {\n        geo_obj.map_shown = false;\n        return;\n    }\n\n    geo_obj.map_shown = true;\n\n    useSystemParameters();\n\n    geo_main_openlayers_init(geo_obj, div_name);\n\n};\n\n"
  },
  {
    "path": "newscoop/js/geocoding/markers/marker-blue.ini",
    "content": "# offsets for pointing tip of the marker icon\nwidth offset: 10\nheight offset: 0\n\n"
  },
  {
    "path": "newscoop/js/geocoding/markers/marker-gold.ini",
    "content": "# offsets for pointing tip of the marker icon\nwidth offset: 10\nheight offset: 0\n\n"
  },
  {
    "path": "newscoop/js/geocoding/markers/marker-green.ini",
    "content": "# offsets for pointing tip of the marker icon\nwidth offset: 10\nheight offset: 0\n\n"
  },
  {
    "path": "newscoop/js/geocoding/markers/marker-red.ini",
    "content": "# offsets for pointing tip of the marker icon\nwidth offset: 10\nheight offset: 0\n\n"
  },
  {
    "path": "newscoop/js/geocoding/markers/special/unknown.ini",
    "content": "# this can be changed, but not removed!\n# this is for cases when the set icon is not available\n# offsets for pointing tip of the marker icon\nwidth offset: 7\nheight offset: 7\n\n"
  },
  {
    "path": "newscoop/js/geocoding/openlayers/OLlocals.js",
    "content": "// the OL are not ready at the 'ready' event by JQuery\n\nOpenLayers.Util.test_ready = function() {\n    var aux_layer = null;\n    try {\n        aux_layer = new OpenLayers.Layer.Vector(\"auxiliary\");\n    } catch (e) {\n        return false;\n    }\n    return true;\n};\n\n// auxiliary url changing on MapQuest failures\n\nOpenLayers.IMAGE_RELOAD_ATTEMPTS = 20;\nOpenLayers.Util.originalOnImageLoadError = OpenLayers.Util.onImageLoadError;\nOpenLayers.Util.onImageLoadError = function() {\n    if (this.src.match(/^http:\\/\\/otile[1-4]\\.mqcdn\\.com\\//)) {\n        if (!this._attempts) {this._attempts = 0;}\n        var mq_start = \"http://otile\" + Math.floor(1 + (4 * Math.random())) + \".mqcdn.com/tiles/1.0.0/osm/\";\n        if ((2 + this._attempts) > OpenLayers.IMAGE_RELOAD_ATTEMPTS)\n        {\n            var osm_start = \"http://tile.openstreetmap.org/\";\n            this.src = osm_start + this.src.substr(mq_start.length);\n        }\n        else\n        {\n            this.src = mq_start + this.src.substr(mq_start.length);\n        }\n    }\n    OpenLayers.Util.originalOnImageLoadError();\n};\n\n// OSM based map layers with correct tail numbers, attribution texts, urls, ...\n\nOpenLayers.Layer.OSMMod = OpenLayers.Class(OpenLayers.Layer.OSM, {\n    name: \"OpenStreetMap\",\n    attribution: \"Data CC-By-SA by <a href='http://openstreetmap.org/' target='_blank'>OpenStreetMap</a>\",\n    sphericalMercator: true,\n    url: 'http://tile.openstreetmap.org/${z}/${x}/${y}.png',\n    getURL: function (bounds) {\n        var res = this.map.getResolution();\n        var x = Math.round((bounds.left - this.maxExtent.left) \n            / (res * this.tileSize.w));\n        var y = Math.round((this.maxExtent.top - bounds.top) \n            / (res * this.tileSize.h));\n        var z = this.map.getZoom() + this.zoomOffset;\n\n        var z_mod = Math.pow(2, z);\n        while (x < 0) {\n            x += z_mod;\n        }\n        while (y < 0) {\n            y += z_mod;\n        }\n        while (x >= z_mod) {\n            x -= z_mod;\n        }\n        while (y >= z_mod) {\n            y -= z_mod;\n        }\n\n        var url = this.url;\n        var s = '' + x + y + z;\n        if (url instanceof Array)\n        {\n            url = this.selectUrl(s, url);\n        }\n        \n        var path = OpenLayers.String.format(url, {'x': x, 'y': y, 'z': z});\n\n        return path;\n    },\n     CLASS_NAME: \"OpenLayers.Layer.OSM\"\n});\n\nOpenLayers.Layer.MapQuest = OpenLayers.Class(OpenLayers.Layer.OSMMod, {\n    name: \"MapQuest\",\n    attribution: \"Data CC-By-SA by <a href='http://openstreetmap.org/' target='_blank'>OpenStreetMap</a>. Rendered by <a href='http://open.mapquest.co.uk/' target='_blank'>MapQuest</a>.\",\n    sphericalMercator: true,\n    url: [\n        'http://otile1.mqcdn.com/tiles/1.0.0/osm/${z}/${x}/${y}.png',\n        'http://otile2.mqcdn.com/tiles/1.0.0/osm/${z}/${x}/${y}.png',\n        'http://otile3.mqcdn.com/tiles/1.0.0/osm/${z}/${x}/${y}.png',\n        'http://otile4.mqcdn.com/tiles/1.0.0/osm/${z}/${x}/${y}.png'\n    ],\n    CLASS_NAME: \"OpenLayers.Layer.MapQuest\"\n});\n\n// solving issues on Google v3 things\nOpenLayers.Layer.GoogleMod = OpenLayers.Class(OpenLayers.Layer.Google, {\n    // just added the modRepositionMapElements call at the end\n    initialize: function(name, options) {\n        options = options || {};\n        if(!options.version) {\n            options.version = typeof GMap2 === \"function\" ? \"2\" : \"3\";\n        }\n        var mixin = OpenLayers.Layer.Google[\"v\" +\n            options.version.replace(/\\./g, \"_\")];\n        if (mixin) {\n            OpenLayers.Util.applyDefaults(options, mixin);\n        } else {\n            throw \"Unsupported Google Maps API version: \" + options.version;\n        }\n\n        OpenLayers.Util.applyDefaults(options, mixin.DEFAULTS);\n        if (options.maxExtent) {\n            options.maxExtent = options.maxExtent.clone();\n        }\n\n        OpenLayers.Layer.EventPane.prototype.initialize.apply(this,\n            [name, options]);\n        OpenLayers.Layer.FixedZoomLevels.prototype.initialize.apply(this,\n            [name, options]);\n\n        if (this.sphericalMercator) {\n            OpenLayers.Util.extend(this, OpenLayers.Layer.SphericalMercator);\n            this.initMercatorParameters();\n        }\n        this.modRepositionMapElements();\n    },\n    'numZoomLevels': 20,\n    'sphericalMercator': true,\n    'modRepositionMapElements': function () {\n    // we need to change it here, otherwise the old repositionMapElements function would be used\n        this.repositionMapElements = this.repositionMapElementsMod;\n    },\n    'repositionMapElementsMod' : function () {\n\n        // This is the first time any Google layer in this mapObject has been\n        // made visible.  The mapObject needs to know the container size.\n        google.maps.event.trigger(this.mapObject, \"resize\");\n        \n        var div = this.mapObject.getDiv().firstChild;\n        if (!div || div.childNodes.length < 3) {\n            this.repositionTimer = window.setTimeout(\n                OpenLayers.Function.bind(this.repositionMapElements, this),\n                250\n            );\n            return false;\n        }\n\n        var cache = OpenLayers.Layer.Google.cache[this.map.id];\n        var container = this.map.viewPortDiv;\n        \n        // move the ToS and branding stuff up to the container div\n        // depends on value of zIndex, which is not robust\n        for (var i=div.children.length-1; i>=0; --i) {\n            if (div.children[i].style.zIndex == 1000001) {\n                var termsOfUse = div.children[i];\n                container.appendChild(termsOfUse);\n                termsOfUse.style.zIndex = \"1100\";\n                termsOfUse.style.bottom = \"\";\n                termsOfUse.className = \"olLayerGoogleCopyright olLayerGoogleV3\";\n                termsOfUse.style.display = \"\";\n                cache.termsOfUse = termsOfUse;\n            }\n            if (div.children[i].style.zIndex == 1000000) {\n                var poweredBy = div.children[i];\n                container.appendChild(poweredBy);\n                poweredBy.style.zIndex = \"1100\";\n                poweredBy.style.bottom = \"\";\n                poweredBy.className = \"olLayerGooglePoweredBy olLayerGoogleV3 gmnoprint\";\n                poweredBy.style.display = \"\";\n                cache.poweredBy = poweredBy;\n            }\n            if (div.children[i].style.zIndex == 10000002) {\n                container.appendChild(div.children[i]);\n            }\n        }\n\n        this.setGMapVisibility(this.visibility);\n\n/*\n        google.maps.event.trigger(this.mapObject, \"resize\");\n        var div = this.mapObject.getDiv().firstChild;\n        if (!div || div.childNodes.length < 3) {\n            this.repositionTimer = window.setTimeout(OpenLayers.Function.bind(this.repositionMapElements, this), 250);\n            return false;\n        }\n\n        var cache = OpenLayers.Layer.Google.cache[this.map.id];\n        var container = this.map.viewPortDiv;\n\n        var termsOfUse = div.lastChild;\n        container.appendChild(termsOfUse);\n        termsOfUse.style.zIndex = \"1100\";\n        termsOfUse.style.bottom = \"\";\n        termsOfUse.className = \"olLayerGoogleCopyright olLayerGoogleV3\";\n        //termsOfUse.style.display = \"\";\n        //cache.termsOfUse = termsOfUse;\n\n        var poweredBy = div.lastChild;\n        container.appendChild(poweredBy);\n        poweredBy.style.zIndex = \"1100\";\n        poweredBy.style.bottom = \"\";\n        poweredBy.className = \"olLayerGooglePoweredBy olLayerGoogleV3 gmnoprint\";\n        poweredBy.style.display = \"\";\n        cache.poweredBy = poweredBy;\n\n        this.setGMapVisibility(this.visibility);\n*/\n\n    },\n    CLASS_NAME: \"OpenLayers.Layer.Google\"\n});\n\n// controls for actions on hover and click\n\nOpenLayers.Control.Hover = OpenLayers.Class(OpenLayers.Control, {\n    defaultHandlerOptions: {\n        'delay': 200,\n        'pixelTolerance': 2,\n        'triggerAction': function(evt, map) {}\n    },\n    initialize: function(options) {\n        this.handlerOptions = OpenLayers.Util.extend(\n            {}, this.defaultHandlerOptions\n        );\n        OpenLayers.Control.prototype.initialize.apply(\n            this, arguments\n        );\n        this.handler = new OpenLayers.Handler.Hover(\n            this, {\n                'pause': this.trigger\n            }, this.handlerOptions\n        );\n    },\n    setTriggerAction: function(action) {this.triggerAction = action;},\n    trigger: function(evt) {\n        this.triggerAction(evt, this.map);\n    }\n});\n\nOpenLayers.Control.Click = OpenLayers.Class(OpenLayers.Control, {\n    defaultHandlerOptions: {\n        'single': true,\n        'double': false,\n        'pixelTolerance': 0,\n        'stopSingle': false,\n        'stopDouble': false,\n        'projection': new OpenLayers.Projection(\"EPSG:900913\"),\n        'displayProjection': new OpenLayers.Projection(\"EPSG:900913\"),\n        'triggerAction': function(evt, map) {}\n    },\n\n    initialize: function(options) {\n        this.handlerOptions = OpenLayers.Util.extend(\n            {}, this.defaultHandlerOptions\n        );\n        OpenLayers.Control.prototype.initialize.apply(\n            this, arguments\n        );\n        this.handler = new OpenLayers.Handler.Click(\n            this, {\n                'click': this.trigger\n            }, this.handlerOptions\n        );\n    },\n    setTriggerAction: function(action) {this.triggerAction = action;},\n    trigger: function(evt) {\n        this.triggerAction(evt, this.map);\n    }\n});\n\n// empty placeholders for the proposed hook functions\n\nOpenLayers.Hooks = {};\nOpenLayers.Hooks.Zooms = {};\n\nOpenLayers.Hooks.LayerSwitcher = {};\nOpenLayers.Hooks.LayerSwitcher.layerSwitched = function(ctrl) {return null;};\nOpenLayers.Hooks.Zooms.maxZoom = function(ctrl) {return null;}\nOpenLayers.Hooks.Zooms.minZoom = function(ctrl) {return 0;}\nOpenLayers.Hooks.PanZoom = {};\nOpenLayers.Hooks.PanZoom.buttonDown = function(ctrl) {return null};\nOpenLayers.Hooks.PanZoomBar = {};\nOpenLayers.Hooks.PanZoomBar.divClick = function(ctrl) {return true};\nOpenLayers.Hooks.PanZoomBar.buttonDown = function(ctrl) {return null};\nOpenLayers.Hooks.PanZoomBar.zoomBarUp = function(ctrl) {return true};\nOpenLayers.Hooks.DragPan = {};\nOpenLayers.Hooks.DragPan.panMap = function(ctrl) {return null};\nOpenLayers.Hooks.DragPan.panMapDone = function(ctrl) {return null};\n\n// changed map controls to contain the proposed hook calls\n\nOpenLayers.Control.PanZoomMod = OpenLayers.Class(OpenLayers.Control.PanZoom, {\n    buttonDown: function(evt) {\n        if (!OpenLayers.Event.isLeftClick(evt)) {\n            return;\n        }\n        OpenLayers.Hooks.PanZoom.buttonDown(this);\n\n        switch (this.action) {\n          case \"panup\":\n            this.map.pan(0, - this.getSlideFactor(\"h\"));\n            break;\n          case \"pandown\":\n            this.map.pan(0, this.getSlideFactor(\"h\"));\n            break;\n          case \"panleft\":\n            this.map.pan(- this.getSlideFactor(\"w\"), 0);\n            break;\n          case \"panright\":\n            this.map.pan(this.getSlideFactor(\"w\"), 0);\n            break;\n          case \"zoomin\":\n            this.map.zoomIn();\n            break;\n          case \"zoomout\":\n            this.map.zoomOut();\n            break;\n          case \"zoomworld\":\n            this.map.zoomToMaxExtent();\n            break;\n          default:;\n        }\n    \n        OpenLayers.Event.stop(evt);\n    },\n    CLASS_NAME: \"OpenLayers.Control.PanZoom\"\n});\n\nOpenLayers.Control.PanZoomBarMod = OpenLayers.Class(OpenLayers.Control.PanZoomBar, {\n    // msie does not stops the event, and does not preserves its properties either\n    divClick: function (evt) {\n        //if (undefined === evt.stopPropagation) {evt.stopPropagation = null;}\n\n        if (!OpenLayers.Event.isLeftClick(evt)) {\n            return;\n        }\n        var levels = evt.xy.y / this.zoomStopHeight;\n        if (this.forceFixedZoomLevel || !this.map.fractionalZoom) {\n            levels = Math.floor(levels);\n        }\n        var zoom = this.map.getNumZoomLevels() - 1 - levels;\n        zoom = Math.min(Math.max(zoom, 0), this.map.getNumZoomLevels() - 1);\n        this.map.zoomTo(zoom);\n\n        var stop_event = OpenLayers.Hooks.PanZoomBar.divClick(this);\n        if (stop_event)\n        {\n            OpenLayers.Event.stop(evt);\n        }\n\n    },\n\n    buttonDown: function(evt) {\n        if (!OpenLayers.Event.isLeftClick(evt)) {\n            return;\n        }\n        OpenLayers.Hooks.PanZoomBar.buttonDown(this);\n\n        switch (this.action) {\n          case \"panup\":\n            this.map.pan(0, - this.getSlideFactor(\"h\"));\n            break;\n          case \"pandown\":\n            this.map.pan(0, this.getSlideFactor(\"h\"));\n            break;\n          case \"panleft\":\n            this.map.pan(- this.getSlideFactor(\"w\"), 0);\n            break;\n          case \"panright\":\n            this.map.pan(this.getSlideFactor(\"w\"), 0);\n            break;\n          case \"zoomin\":\n            this.map.zoomIn();\n            break;\n          case \"zoomout\":\n            this.map.zoomOut();\n            break;\n          case \"zoomworld\":\n            this.map.zoomToMaxExtent();\n            break;\n          default:;\n        }\n    \n        OpenLayers.Event.stop(evt);\n    },\n\n    zoomBarUp: function(evt) {\n        if (!OpenLayers.Event.isLeftClick(evt)) {\n            return;\n        }\n        if (this.mouseDragStart) {\n            this.div.style.cursor=\"\";\n            this.map.events.un({\n                \"mouseup\": this.passEventToSlider,\n                \"mousemove\": this.passEventToSlider,\n                scope: this\n            });\n            var deltaY = this.zoomStart.y - evt.xy.y;\n            var zoomLevel = this.map.zoom;\n            if (!this.forceFixedZoomLevel && this.map.fractionalZoom) {\n                zoomLevel += deltaY/this.zoomStopHeight;\n                zoomLevel = Math.min(Math.max(zoomLevel, 0), \n                                     this.map.getNumZoomLevels() - 1);\n            } else {\n                zoomLevel += Math.round(deltaY/this.zoomStopHeight);\n            }\n\n            var max_layer_zoom = OpenLayers.Hooks.Zooms.maxZoom(this);\n            var min_layer_zoom = OpenLayers.Hooks.Zooms.minZoom(this);\n\n            if ((max_layer_zoom !== undefined) && (typeof max_layer_zoom === \"number\")) {\n                if (max_layer_zoom < zoomLevel) {zoomLevel = max_layer_zoom;}\n            }\n            if ((min_layer_zoom !== undefined) && (typeof min_layer_zoom === \"number\")) {\n                if (min_layer_zoom > zoomLevel) {zoomLevel = min_layer_zoom;}\n            }\n\n            this.map.zoomTo(zoomLevel);\n            this.mouseDragStart = null;\n            this.zoomStart = null;\n\n            var stop_event = OpenLayers.Hooks.PanZoomBar.zoomBarUp(this);\n            if (stop_event) {\n                OpenLayers.Event.stop(evt);\n            }\n        }\n    },\n\n    CLASS_NAME: \"OpenLayers.Control.PanZoomBar\"\n});\n\nOpenLayers.Control.DragPanMod = OpenLayers.Class(OpenLayers.Control.DragPan, {\n    panMapDone: function(pixel) {\n        OpenLayers.Hooks.DragPan.panMapDone(this);\n    },\n    panMap: function(xy) {\n        this.panned = true;\n\n        this.map.pan(this.handler.last.x - xy.x, this.handler.last.y - xy.y, {dragging: this.handler.dragging, animate: false});\n\n        OpenLayers.Hooks.DragPan.panMap(this);\n    },\n\n    CLASS_NAME: \"OpenLayers.Control.DragPan\"\n});\n\n// our auxiliary functions for popup processing\n\nOpenLayers.HooksPopups = {};\n\n// needed just for click on pop-up close button\nOpenLayers.HooksPopups.on_popup_close = function(evt, geo_obj)\n{\n    if (geo_obj.popup) {\n        try {\n            geo_obj.select_control.unselect(geo_obj.popup.feature);\n        }\n        catch (e) {}\n    }\n\n    OpenLayers.Event.stop(evt, true);\n};\n\nOpenLayers.HooksPopups.on_feature_unselect = function(evt, geo_obj)\n{\n    var feature = evt.feature;\n\n    if (feature.popup) {\n        geo_obj.popup.feature = null;\n        geo_obj.map.removePopup(feature.popup);\n        feature.popup.destroy();\n        feature.popup = null;\n        geo_obj.popup = null;\n    }\n\n    if (geo_obj.popup) {\n        try {\n            geo_obj.select_control.unselect(geo_obj.popup.feature);\n        }\n        catch (e) {}\n    }\n};\n\nOpenLayers.HooksPopups.on_feature_select_edit = function(evt, geo_obj)\n{\n    if (geo_obj.show_edit_on_select) {\n\n        var feature = null;\n    \n        if (evt)\n        {\n            feature = evt.feature;\n        }\n    \n        if (!feature) {return;}\n    \n        var attrs = feature.attributes;\n        if (!attrs) {return;}\n\n        geo_obj.edit_poi(attrs.m_rank);\n    }\n};\n\nOpenLayers.HooksPopups.on_feature_edit_disp = function(geo_obj, index)\n{\n    geo_obj.ignore_edit_click = true;\n    geo_obj.edit_poi(index);\n\n    var restor_str = '' + geo_obj.obj_name + '.ignore_edit_click = false;';\n    setTimeout(restor_str, 500);\n};\n\nOpenLayers.HooksPopups.on_feature_select = function(evt, geo_obj, avoid_rec)\n{\n    if (geo_obj.ignore_select_event) {\n        geo_obj.select_control.unselect(evt.feature);\n        return;\n    }\n\n    var feature = null;\n\n    if (geo_obj.editing) {\n        geo_obj.close_edit_window();\n    }\n\n    if (evt)\n    {\n        feature = evt.feature;\n    }\n\n    if (!feature) {return;}\n\n    var attrs = feature.attributes;\n    if (!attrs) {return;}\n\n    if (geo_obj.popup) {\n        geo_obj.select_control.unselect(geo_obj.popup.feature);\n    }\n\n    var pop_info = GeoPopups.create_popup_content(feature, geo_obj);\n    var pop_text = pop_info['inner_html'];\n\n    var edit_link = \"\";\n    if (geo_obj.editing) {\n        edit_link = '<div class=\"geo_edit_popup_top\">';\n        edit_link += \"<a href='#' class='link icon-link' onClick=\\\"\" + geo_obj.obj_name + \".remove_poi(\" + attrs.m_rank + \");return false;\\\" title=\\\"\" + geo_obj.display_strings.remove + \"\\\"><span class='icon ui-icon-closethick'></span><strong>\" + geo_obj.display_strings.remove_short + \"</strong></a>\";\n        edit_link += '<a href=\"#\" class=\"link icon-link\" onClick=\"OpenLayers.HooksPopups.on_feature_edit_disp(' + geo_obj.obj_name + ', ' + attrs.m_rank + '); return false;\" title=\"' + geo_obj.display_strings.edit_advanced + '\"><span class=\"icon ui-icon-pencil\"></span><strong>' + geo_obj.display_strings.edit + '</strong></a></div> ';\n    }\n\n    geo_obj.cur_pop_rank += 1;\n    geo_obj.popup = new OpenLayers.Popup.FramedCloud(\"featurePopup_\" + geo_obj.cur_pop_rank,\n        feature.geometry.getBounds().getCenterLonLat(),\n        new OpenLayers.Size(geo_obj.popup_width,geo_obj.popup_height),\n        edit_link + pop_text,\n        null, true, function(evt) {OpenLayers.HooksPopups.on_popup_close(evt, geo_obj);});\n\n    var min_width = pop_info['min_width'];\n    var min_height = pop_info['min_height'];\n\n    // for a safe setting of input value on inline poi label editing\n    if (geo_obj.editing) {\n        geo_obj.poi_label_value_inline = pop_info.poi_label;\n        setTimeout(geo_obj.obj_name + \".set_inline_label_value(\" + attrs.m_rank + \");\", 10);\n\n        geo_obj.poi_content_value_inline = pop_info.poi_content;\n        if (null !== geo_obj.poi_content_value_inline) {\n            setTimeout(geo_obj.obj_name + \".set_inline_desc_value(\\\"content\\\", \" + attrs.m_rank + \");\", 10);\n        }\n        geo_obj.poi_text_value_inline = pop_info.poi_text;\n        if (null !== geo_obj.poi_text_value_inline) {\n            setTimeout(geo_obj.obj_name + \".set_inline_desc_value(\\\"text\\\", \" + attrs.m_rank + \");\", 10);\n        }\n\n    }\n\n    geo_obj.popup.minSize = new OpenLayers.Size(min_width, min_height);\n    geo_obj.popup.updateSize();\n\n    feature.popup = geo_obj.popup;\n    geo_obj.popup.feature = feature;\n    geo_obj.popup.m_rank = attrs.m_rank;\n    geo_obj.map.addPopup(geo_obj.popup);\n\n    if (!avoid_rec)\n    {\n        OpenLayers.HooksLocal.map_check_popup(geo_obj);\n    }\n};\n\n\n// selecting a point for popup display, from outer js calls\nOpenLayers.HooksPopups.on_map_feature_select = function(geo_object, poi_index)\n{\n    var feature = null;\n\n    if (geo_object)\n    {\n        if ((undefined !== poi_index) && (null !== poi_index))\n        {\n            feature = geo_object.layer.features[poi_index];\n        }\n    }\n    if (!feature) {return;}\n\n    OpenLayers.HooksPopups.on_feature_select({'feature':feature}, geo_object);\n\n};\n\n// our auxiliary functions to be used inside the hook functions\n\nOpenLayers.HooksLocal = {};\n\nOpenLayers.HooksLocal.on_layer_switch = function(map) {\n    var geo_obj = map.geo_obj;\n\n    if (geo_obj.map.baseLayer.name == geo_obj.display_strings.google_map)\n    {\n        $('.olLayerGoogleCopyright').removeClass('map_hidden');\n        $('.olLayerGooglePoweredBy').removeClass('map_hidden');\n    }\n    else\n    {\n        $('.olLayerGoogleCopyright').addClass('map_hidden');\n        $('.olLayerGooglePoweredBy').addClass('map_hidden');\n    }\n\n};\n\nOpenLayers.HooksLocal.redraw_times = {\n    time_drag_delay: 500,\n    map_dragging_last: 0\n};\n\nOpenLayers.HooksLocal.map_center_update = function (geo_obj)\n{\n    if (geo_obj && geo_obj.map && geo_obj.map.center) {\n        var new_center = geo_obj.map.center.clone();\n        geo_obj.map.setCenter(new_center);\n    }\n\n    try {\n        geo_obj.select_control.destroy();\n        geo_obj.select_control = new OpenLayers.Control.SelectFeature(geo_obj.layer);\n        geo_obj.map.addControl(geo_obj.select_control);\n        geo_obj.select_control.activate();\n    } catch (e) {}\n\n};\n\nOpenLayers.HooksLocal.map_feature_redraw = function(geo_obj) {\n    var cur_date = new Date();\n    var cur_time = cur_date.getTime();\n\n    var time_delay = OpenLayers.HooksLocal.redraw_times.time_drag_delay;\n\n    if (time_delay <= (cur_time - OpenLayers.HooksLocal.redraw_times.map_dragging_last))\n    {\n        OpenLayers.HooksLocal.map_center_update(geo_obj);\n        OpenLayers.HooksLocal.redraw_times.map_dragging_last = cur_time;\n    }\n\n};\n\n// on map click for the (pre)view mode\nOpenLayers.HooksLocal.nothing_on_map_click = function(evt, map) {\n    if (!map) {return;}\n    var geo_obj = map.geo_obj;\n    if (!geo_obj) {return;}\n\n    if (geo_obj.select_control) {\n        geo_obj.select_control.destroy();\n    }\n    geo_obj.select_control = new OpenLayers.Control.SelectFeature(geo_obj.layer);\n    map.addControl(map.geo_obj.select_control);\n    geo_obj.select_control.activate();\n\n};\n\n// to insert new POI on map click, but not on a click that closes a pop-up\nOpenLayers.HooksLocal.new_poi_on_map_click = function(evt, map) {\n    var geo_obj = map.geo_obj;\n\n    geo_obj.select_control.destroy();\n    geo_obj.select_control = new OpenLayers.Control.SelectFeature(geo_obj.layer);\n    map.addControl(map.geo_obj.select_control);\n    geo_obj.select_control.activate();\n\n    if (geo_obj.ignore_click) {\n        geo_obj.ignore_click = false;\n        return true;\n    }\n\n    if (geo_obj.ignore_edit_click) {return true;}\n\n    if (evt.onControlDiv) {return true;}\n\n    if (evt['cancelBubble']) {return true;}\n\n    if (undefined !== evt.originalTarget)\n    {\n        if (\"object\" != (typeof evt.originalTarget))\n        {\n            return true;\n        }\n\n        if (evt.originalTarget instanceof HTMLSpanElement)\n        {\n            return true;\n        }\n        if (evt.originalTarget instanceof HTMLDivElement)\n        {\n            return true;\n        }\n    }\n    else\n    {\n        if (undefined !== evt['srcElement'])\n        {\n            var src_el_rep = evt['srcElement'].toString();\n            if ('http' == src_el_rep.substr(0, 4)) {return true;}\n        }\n    }\n\n    var lonlat = map.getLonLatFromViewPortPx(evt.xy);\n\n    geo_obj.insert_poi('map', lonlat);\n};\n\nOpenLayers.HooksLocal.map_check_popup = function(geo_obj) {\n    if (!geo_obj) {return;}\n\n    if (geo_obj.popup)\n    {\n        var feature = geo_obj.popup.feature;\n        if (!feature) {return;}\n        var attrs = feature.attributes;\n        if (!attrs) {return;}\n\n        var test_lonlat = null;\n        var aux_center = null;\n        if (undefined !== attrs.m_original)\n        {\n            var view_box = geo_obj.map.calculateBounds();\n            test_lonlat = new OpenLayers.LonLat(attrs.m_maplon, attrs.m_maplat);\n            if (!view_box.containsLonLat(test_lonlat, true))\n            {\n                var aux_inds = [attrs.m_original, attrs.m_original + attrs.m_count, attrs.m_original + (2 * attrs.m_count)];\n                var poi_features = geo_obj.layer.features;\n                var test_features = [poi_features[aux_inds[0]], poi_features[aux_inds[1]], poi_features[aux_inds[2]]];\n                var test_count = test_features.length;\n\n                for (var tind = 0; tind < test_count; tind++)\n                {\n                    feature = test_features[tind];\n                    if (!feature) {return;}\n                    attrs = feature.attributes;\n                    if (!attrs) {return;}\n\n                    test_lonlat = new OpenLayers.LonLat(attrs.m_maplon, attrs.m_maplat);\n                    if (view_box.containsLonLat(test_lonlat, true))\n                    {\n                        aux_center = geo_obj.map.getCenter();\n                        OpenLayers.HooksPopups.on_feature_select({\"feature\":feature}, geo_obj, true);\n                        geo_obj.map.setCenter(aux_center);\n                        break;\n                    }\n                }\n\n            }\n        }\n    }\n\n};\n\nOpenLayers.HooksLocal.map_check_pois = function(geo_obj) {\n    if (geo_obj.editing)\n    {\n        var shifts = [0, -360, 360];\n        if (2 > geo_obj.map.getZoom())\n        {\n            shifts = [0];\n        }\n        var shifts_count = shifts.length;\n\n        var features = geo_obj.layer.features;\n        var features_count = features.length;\n\n        var view_box = geo_obj.map.calculateBounds();\n\n        for (var find = 0; find < features_count; find++)\n        {\n            var feature = features[find];\n            var cur_poi_info = geo_obj.poi_markers[find];\n            if (!cur_poi_info) {continue;}\n\n            var inf_lon = cur_poi_info['lon'];\n            var inf_lat = cur_poi_info['lat'];\n            var map_lon = cur_poi_info['map_lon'];\n            var map_lat = cur_poi_info['map_lat'];\n            var lonlat = new OpenLayers.LonLat(map_lon, map_lat);\n            var inf_lon_move = null;\n            var pixel = null;\n\n            for (var sind = 0; sind < shifts_count; sind++)\n            {\n                var one_shift = shifts[sind];\n\n                inf_lon_move = inf_lon + one_shift;\n                lonlat = new OpenLayers.LonLat(inf_lon_move, inf_lat);\n                lonlat.transform(new OpenLayers.Projection(\"EPSG:4326\"), geo_obj.map.getProjectionObject());\n                if (view_box.containsLonLat(lonlat))\n                {\n                    pixel = geo_obj.map.getViewPortPxFromLonLat(lonlat);\n                    feature.move(pixel);\n                    if (geo_obj.popup && (feature == geo_obj.popup.feature)) {\n                        pixel = geo_obj.map.getLayerPxFromLonLat(lonlat);\n                        geo_obj.popup.moveTo(pixel);\n                    }\n                    break;\n                }\n\n            }\n\n        }\n    }\n};\n\n// our implementation of the proposed hook functions\n\nOpenLayers.Hooks.LayerSwitcher.layerSwitched = function(ctrl) {\n    OpenLayers.HooksLocal.on_layer_switch(ctrl.map);\n};\n\nOpenLayers.Hooks.Zooms.maxZoom = function(ctrl) {\n    var max_layer_zoom = 18;\n    try {\n        var google_layer_name = ctrl.map.geo_obj.map_view_layer_names_all[ctrl.map.geo_obj.map_view_layer_google];\n        if (ctrl.map.baseLayer.name == google_layer_name) {max_layer_zoom = 19;}\n    } catch (e) {}\n\n    return max_layer_zoom;\n};\n\nOpenLayers.Hooks.Zooms.minZoom = function(ctrl) {\n    return 0;\n};\n\nOpenLayers.Hooks.PanZoom.buttonDown = function(ctrl) {\n    try {\n        OpenLayers.HooksLocal.map_feature_redraw(ctrl.map.geo_obj);\n    } catch (e) {}\n};\n\nOpenLayers.Hooks.PanZoomBar.divClick = function(ctrl) {\n    // this change works for firefox under winxp too, but not for linux/firefox\n    if ('msie' == OpenLayers.Util.getBrowserName())\n    {\n        try {\n            ctrl.map.geo_obj.ignore_click = true;\n        } catch (e) {}\n        return false;\n    }\n    return true;\n};\n\nOpenLayers.Hooks.PanZoomBar.buttonDown = function(ctrl) {\n    try {\n        OpenLayers.HooksLocal.map_feature_redraw(ctrl.map.geo_obj);\n    } catch (e) {}\n};\n\nOpenLayers.Hooks.PanZoomBar.zoomBarUp = function(ctrl) {\n    // this change works for firefox under winxp too, but not for linux/firefox\n    if ('msie' == OpenLayers.Util.getBrowserName())\n    {\n        try {\n            ctrl.map.geo_obj.ignore_click = true;\n            if (ctrl.map.geo_obj.obj_name) {\n                setTimeout(\"try {\" + ctrl.map.geo_obj.obj_name + \".ignore_click = false;} catch (e) {}\", 500);\n            }\n        } catch (e) {}\n        return false;\n    }\n    return true;\n};\n\nOpenLayers.Hooks.DragPan.panMap = function(ctrl) {\n    OpenLayers.HooksLocal.map_feature_redraw(ctrl.map.geo_obj);\n};\n\nOpenLayers.Hooks.DragPan.panMapDone = function(ctrl) {\n    OpenLayers.HooksLocal.map_center_update(ctrl.map.geo_obj);\n    OpenLayers.HooksLocal.map_check_popup(ctrl.map.geo_obj);\n};\n\n"
  },
  {
    "path": "newscoop/js/geocoding/openlayers/OpenLayers.js",
    "content": "/*\n\n  OpenLayers.js -- OpenLayers Map Viewer Library\n\n  Copyright 2005-2010 OpenLayers Contributors, released under the Clear BSD\n  license. Please see http://svn.openlayers.org/trunk/openlayers/license.txt\n  for the full text of the license.\n\n  Includes compressed code under the following licenses:\n\n  (For uncompressed versions of the code used please see the\n  OpenLayers SVN repository: <http://openlayers.org/>)\n\n*/\n\n/* Contains portions of Prototype.js:\n *\n * Prototype JavaScript framework, version 1.4.0\n *  (c) 2005 Sam Stephenson <sam@conio.net>\n *\n *  Prototype is freely distributable under the terms of an MIT-style license.\n *  For details, see the Prototype web site: http://prototype.conio.net/\n *\n *--------------------------------------------------------------------------*/\n\n/**  \n*  \n*  Contains portions of Rico <http://openrico.org/>\n* \n*  Copyright 2005 Sabre Airline Solutions  \n*  \n*  Licensed under the Apache License, Version 2.0 (the \"License\"); you\n*  may not use this file except in compliance with the License. You\n*  may obtain a copy of the License at\n*  \n*         http://www.apache.org/licenses/LICENSE-2.0  \n*  \n*  Unless required by applicable law or agreed to in writing, software\n*  distributed under the License is distributed on an \"AS IS\" BASIS,\n*  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n*  implied. See the License for the specific language governing\n*  permissions and limitations under the License. \n*\n**/\n\n/**\n * Contains XMLHttpRequest.js <http://code.google.com/p/xmlhttprequest/>\n * Copyright 2007 Sergey Ilinsky (http://www.ilinsky.com)\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * http://www.apache.org/licenses/LICENSE-2.0\n */\n\n/**\n * Contains portions of Gears <http://code.google.com/apis/gears/>\n *\n * Copyright 2007, Google Inc.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions are met:\n *\n *  1. Redistributions of source code must retain the above copyright notice,\n *     this list of conditions and the following disclaimer.\n *  2. Redistributions in binary form must reproduce the above copyright notice,\n *     this list of conditions and the following disclaimer in the documentation\n *     and/or other materials provided with the distribution.\n *  3. Neither the name of Google Inc. nor the names of its contributors may be\n *     used to endorse or promote products derived from this software without\n *     specific prior written permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED\n * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\n * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO\n * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,\n * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;\n * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,\n * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR\n * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF\n * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * Sets up google.gears.*, which is *the only* supported way to access Gears.\n *\n * Circumvent this file at your own risk!\n *\n * In the future, Gears may automatically define google.gears.* without this\n * file. Gears may use these objects to transparently fix bugs and compatibility\n * issues. Applications that use the code below will continue to work seamlessly\n * when that happens.\n */\nvar OpenLayers={singleFile:true};(function(){var singleFile=(typeof OpenLayers==\"object\"&&OpenLayers.singleFile);var scriptLocation;window.OpenLayers={_scriptName:(!singleFile)?\"lib/OpenLayers.js\":\"OpenLayers.js\",_getScriptLocation:function(){if(scriptLocation!=undefined){return scriptLocation;}\nscriptLocation=\"\";var isOL=new RegExp(\"(^|(.*?\\\\/))(\"+OpenLayers._scriptName+\")(\\\\?|$)\");var scripts=document.getElementsByTagName('script');for(var i=0,len=scripts.length;i<len;i++){var src=scripts[i].getAttribute('src');if(src){var match=src.match(isOL);if(match){scriptLocation=match[1];break;}}}\nreturn scriptLocation;}};if(!singleFile){var jsfiles=new Array(\"OpenLayers/Util.js\",\"OpenLayers/BaseTypes.js\",\"OpenLayers/BaseTypes/Class.js\",\"OpenLayers/BaseTypes/Bounds.js\",\"OpenLayers/BaseTypes/Element.js\",\"OpenLayers/BaseTypes/LonLat.js\",\"OpenLayers/BaseTypes/Pixel.js\",\"OpenLayers/BaseTypes/Size.js\",\"OpenLayers/Console.js\",\"OpenLayers/Tween.js\",\"Rico/Corner.js\",\"Rico/Color.js\",\"OpenLayers/Ajax.js\",\"OpenLayers/Events.js\",\"OpenLayers/Request.js\",\"OpenLayers/Request/XMLHttpRequest.js\",\"OpenLayers/Projection.js\",\"OpenLayers/Map.js\",\"OpenLayers/Layer.js\",\"OpenLayers/Icon.js\",\"OpenLayers/Marker.js\",\"OpenLayers/Marker/Box.js\",\"OpenLayers/Popup.js\",\"OpenLayers/Tile.js\",\"OpenLayers/Tile/Image.js\",\"OpenLayers/Tile/Image/IFrame.js\",\"OpenLayers/Tile/WFS.js\",\"OpenLayers/Layer/Image.js\",\"OpenLayers/Layer/SphericalMercator.js\",\"OpenLayers/Layer/EventPane.js\",\"OpenLayers/Layer/FixedZoomLevels.js\",\"OpenLayers/Layer/Google.js\",\"OpenLayers/Layer/Google/v3.js\",\"OpenLayers/Layer/VirtualEarth.js\",\"OpenLayers/Layer/Yahoo.js\",\"OpenLayers/Layer/HTTPRequest.js\",\"OpenLayers/Layer/Grid.js\",\"OpenLayers/Layer/MapGuide.js\",\"OpenLayers/Layer/MapServer.js\",\"OpenLayers/Layer/MapServer/Untiled.js\",\"OpenLayers/Layer/KaMap.js\",\"OpenLayers/Layer/KaMapCache.js\",\"OpenLayers/Layer/MultiMap.js\",\"OpenLayers/Layer/Markers.js\",\"OpenLayers/Layer/Text.js\",\"OpenLayers/Layer/WorldWind.js\",\"OpenLayers/Layer/ArcGIS93Rest.js\",\"OpenLayers/Layer/WMS.js\",\"OpenLayers/Layer/WMS/Untiled.js\",\"OpenLayers/Layer/WMS/Post.js\",\"OpenLayers/Layer/WMTS.js\",\"OpenLayers/Layer/ArcIMS.js\",\"OpenLayers/Layer/GeoRSS.js\",\"OpenLayers/Layer/Boxes.js\",\"OpenLayers/Layer/XYZ.js\",\"OpenLayers/Layer/TMS.js\",\"OpenLayers/Layer/TileCache.js\",\"OpenLayers/Layer/Zoomify.js\",\"OpenLayers/Popup/Anchored.js\",\"OpenLayers/Popup/AnchoredBubble.js\",\"OpenLayers/Popup/Framed.js\",\"OpenLayers/Popup/FramedCloud.js\",\"OpenLayers/Feature.js\",\"OpenLayers/Feature/Vector.js\",\"OpenLayers/Feature/WFS.js\",\"OpenLayers/Handler.js\",\"OpenLayers/Handler/Click.js\",\"OpenLayers/Handler/Hover.js\",\"OpenLayers/Handler/Point.js\",\"OpenLayers/Handler/Path.js\",\"OpenLayers/Handler/Polygon.js\",\"OpenLayers/Handler/Feature.js\",\"OpenLayers/Handler/Drag.js\",\"OpenLayers/Handler/RegularPolygon.js\",\"OpenLayers/Handler/Box.js\",\"OpenLayers/Handler/MouseWheel.js\",\"OpenLayers/Handler/Keyboard.js\",\"OpenLayers/Control.js\",\"OpenLayers/Control/Attribution.js\",\"OpenLayers/Control/Button.js\",\"OpenLayers/Control/ZoomBox.js\",\"OpenLayers/Control/ZoomToMaxExtent.js\",\"OpenLayers/Control/DragPan.js\",\"OpenLayers/Control/Navigation.js\",\"OpenLayers/Control/MouseDefaults.js\",\"OpenLayers/Control/MousePosition.js\",\"OpenLayers/Control/OverviewMap.js\",\"OpenLayers/Control/KeyboardDefaults.js\",\"OpenLayers/Control/PanZoom.js\",\"OpenLayers/Control/PanZoomBar.js\",\"OpenLayers/Control/ArgParser.js\",\"OpenLayers/Control/Permalink.js\",\"OpenLayers/Control/Scale.js\",\"OpenLayers/Control/ScaleLine.js\",\"OpenLayers/Control/Snapping.js\",\"OpenLayers/Control/Split.js\",\"OpenLayers/Control/LayerSwitcher.js\",\"OpenLayers/Control/DrawFeature.js\",\"OpenLayers/Control/DragFeature.js\",\"OpenLayers/Control/ModifyFeature.js\",\"OpenLayers/Control/Panel.js\",\"OpenLayers/Control/SelectFeature.js\",\"OpenLayers/Control/NavigationHistory.js\",\"OpenLayers/Control/Measure.js\",\"OpenLayers/Control/WMSGetFeatureInfo.js\",\"OpenLayers/Control/WMTSGetFeatureInfo.js\",\"OpenLayers/Control/Graticule.js\",\"OpenLayers/Control/TransformFeature.js\",\"OpenLayers/Control/SLDSelect.js\",\"OpenLayers/Geometry.js\",\"OpenLayers/Geometry/Rectangle.js\",\"OpenLayers/Geometry/Collection.js\",\"OpenLayers/Geometry/Point.js\",\"OpenLayers/Geometry/MultiPoint.js\",\"OpenLayers/Geometry/Curve.js\",\"OpenLayers/Geometry/LineString.js\",\"OpenLayers/Geometry/LinearRing.js\",\"OpenLayers/Geometry/Polygon.js\",\"OpenLayers/Geometry/MultiLineString.js\",\"OpenLayers/Geometry/MultiPolygon.js\",\"OpenLayers/Geometry/Surface.js\",\"OpenLayers/Renderer.js\",\"OpenLayers/Renderer/Elements.js\",\"OpenLayers/Renderer/SVG.js\",\"OpenLayers/Renderer/Canvas.js\",\"OpenLayers/Renderer/VML.js\",\"OpenLayers/Layer/Vector.js\",\"OpenLayers/Layer/Vector/RootContainer.js\",\"OpenLayers/Strategy.js\",\"OpenLayers/Strategy/Filter.js\",\"OpenLayers/Strategy/Fixed.js\",\"OpenLayers/Strategy/Cluster.js\",\"OpenLayers/Strategy/Paging.js\",\"OpenLayers/Strategy/BBOX.js\",\"OpenLayers/Strategy/Save.js\",\"OpenLayers/Strategy/Refresh.js\",\"OpenLayers/Filter.js\",\"OpenLayers/Filter/FeatureId.js\",\"OpenLayers/Filter/Logical.js\",\"OpenLayers/Filter/Comparison.js\",\"OpenLayers/Filter/Spatial.js\",\"OpenLayers/Protocol.js\",\"OpenLayers/Protocol/HTTP.js\",\"OpenLayers/Protocol/SQL.js\",\"OpenLayers/Protocol/SQL/Gears.js\",\"OpenLayers/Protocol/WFS.js\",\"OpenLayers/Protocol/WFS/v1.js\",\"OpenLayers/Protocol/WFS/v1_0_0.js\",\"OpenLayers/Protocol/WFS/v1_1_0.js\",\"OpenLayers/Protocol/SOS.js\",\"OpenLayers/Protocol/SOS/v1_0_0.js\",\"OpenLayers/Layer/PointTrack.js\",\"OpenLayers/Layer/GML.js\",\"OpenLayers/Style.js\",\"OpenLayers/Style2.js\",\"OpenLayers/StyleMap.js\",\"OpenLayers/Rule.js\",\"OpenLayers/Format.js\",\"OpenLayers/Format/XML.js\",\"OpenLayers/Format/Context.js\",\"OpenLayers/Format/ArcXML.js\",\"OpenLayers/Format/ArcXML/Features.js\",\"OpenLayers/Format/GML.js\",\"OpenLayers/Format/GML/Base.js\",\"OpenLayers/Format/GML/v2.js\",\"OpenLayers/Format/GML/v3.js\",\"OpenLayers/Format/Atom.js\",\"OpenLayers/Format/KML.js\",\"OpenLayers/Format/GeoRSS.js\",\"OpenLayers/Format/WFS.js\",\"OpenLayers/Format/WFSCapabilities.js\",\"OpenLayers/Format/WFSCapabilities/v1.js\",\"OpenLayers/Format/WFSCapabilities/v1_0_0.js\",\"OpenLayers/Format/WFSCapabilities/v1_1_0.js\",\"OpenLayers/Format/WFSDescribeFeatureType.js\",\"OpenLayers/Format/WMSDescribeLayer.js\",\"OpenLayers/Format/WMSDescribeLayer/v1_1.js\",\"OpenLayers/Format/WKT.js\",\"OpenLayers/Format/OSM.js\",\"OpenLayers/Format/GPX.js\",\"OpenLayers/Format/Filter.js\",\"OpenLayers/Format/Filter/v1.js\",\"OpenLayers/Format/Filter/v1_0_0.js\",\"OpenLayers/Format/Filter/v1_1_0.js\",\"OpenLayers/Format/SLD.js\",\"OpenLayers/Format/SLD/v1.js\",\"OpenLayers/Format/SLD/v1_0_0.js\",\"OpenLayers/Format/OWSCommon/v1.js\",\"OpenLayers/Format/OWSCommon/v1_0_0.js\",\"OpenLayers/Format/OWSCommon/v1_1_0.js\",\"OpenLayers/Format/CSWGetDomain.js\",\"OpenLayers/Format/CSWGetDomain/v2_0_2.js\",\"OpenLayers/Format/CSWGetRecords.js\",\"OpenLayers/Format/CSWGetRecords/v2_0_2.js\",\"OpenLayers/Format/WFST.js\",\"OpenLayers/Format/WFST/v1.js\",\"OpenLayers/Format/WFST/v1_0_0.js\",\"OpenLayers/Format/WFST/v1_1_0.js\",\"OpenLayers/Format/Text.js\",\"OpenLayers/Format/JSON.js\",\"OpenLayers/Format/GeoJSON.js\",\"OpenLayers/Format/WMC.js\",\"OpenLayers/Format/WMC/v1.js\",\"OpenLayers/Format/WMC/v1_0_0.js\",\"OpenLayers/Format/WMC/v1_1_0.js\",\"OpenLayers/Format/WMSCapabilities.js\",\"OpenLayers/Format/WMSCapabilities/v1.js\",\"OpenLayers/Format/WMSCapabilities/v1_1.js\",\"OpenLayers/Format/WMSCapabilities/v1_1_0.js\",\"OpenLayers/Format/WMSCapabilities/v1_1_1.js\",\"OpenLayers/Format/WMSCapabilities/v1_3.js\",\"OpenLayers/Format/WMSCapabilities/v1_3_0.js\",\"OpenLayers/Format/WMSGetFeatureInfo.js\",\"OpenLayers/Format/SOSCapabilities.js\",\"OpenLayers/Format/SOSCapabilities/v1_0_0.js\",\"OpenLayers/Format/SOSGetObservation.js\",\"OpenLayers/Format/SOSGetFeatureOfInterest.js\",\"OpenLayers/Format/OWSContext.js\",\"OpenLayers/Format/OWSContext/v0_3_1.js\",\"OpenLayers/Format/WMTSCapabilities.js\",\"OpenLayers/Format/WMTSCapabilities/v1_0_0.js\",\"OpenLayers/Layer/WFS.js\",\"OpenLayers/Control/GetFeature.js\",\"OpenLayers/Control/MouseToolbar.js\",\"OpenLayers/Control/NavToolbar.js\",\"OpenLayers/Control/PanPanel.js\",\"OpenLayers/Control/Pan.js\",\"OpenLayers/Control/ZoomIn.js\",\"OpenLayers/Control/ZoomOut.js\",\"OpenLayers/Control/ZoomPanel.js\",\"OpenLayers/Control/EditingToolbar.js\",\"OpenLayers/Symbolizer.js\",\"OpenLayers/Symbolizer/Point.js\",\"OpenLayers/Symbolizer/Line.js\",\"OpenLayers/Symbolizer/Polygon.js\",\"OpenLayers/Symbolizer/Text.js\",\"OpenLayers/Symbolizer/Raster.js\",\"OpenLayers/Lang.js\",\"OpenLayers/Lang/en.js\");var agent=navigator.userAgent;var docWrite=(agent.match(\"MSIE\")||agent.match(\"Safari\"));if(docWrite){var allScriptTags=new Array(jsfiles.length);}\nvar host=OpenLayers._getScriptLocation()+\"lib/\";for(var i=0,len=jsfiles.length;i<len;i++){if(docWrite){allScriptTags[i]=\"<script src='\"+host+jsfiles[i]+\"'></script>\";}else{var s=document.createElement(\"script\");s.src=host+jsfiles[i];var h=document.getElementsByTagName(\"head\").length?document.getElementsByTagName(\"head\")[0]:document.body;h.appendChild(s);}}\nif(docWrite){document.write(allScriptTags.join(\"\"));}}})();OpenLayers.VERSION_NUMBER=\"OpenLayers 2.10 -- $Revision: 10721 $\";OpenLayers.String={startsWith:function(str,sub){return(str.indexOf(sub)==0);},contains:function(str,sub){return(str.indexOf(sub)!=-1);},trim:function(str){return str.replace(/^\\s\\s*/,'').replace(/\\s\\s*$/,'');},camelize:function(str){var oStringList=str.split('-');var camelizedString=oStringList[0];for(var i=1,len=oStringList.length;i<len;i++){var s=oStringList[i];camelizedString+=s.charAt(0).toUpperCase()+s.substring(1);}\nreturn camelizedString;},format:function(template,context,args){if(!context){context=window;}\nvar replacer=function(str,match){var replacement;var subs=match.split(/\\.+/);for(var i=0;i<subs.length;i++){if(i==0){replacement=context;}\nreplacement=replacement[subs[i]];}\nif(typeof replacement==\"function\"){replacement=args?replacement.apply(null,args):replacement();}\nif(typeof replacement=='undefined'){return'undefined';}else{return replacement;}};return template.replace(OpenLayers.String.tokenRegEx,replacer);},tokenRegEx:/\\$\\{([\\w.]+?)\\}/g,numberRegEx:/^([+-]?)(?=\\d|\\.\\d)\\d*(\\.\\d*)?([Ee]([+-]?\\d+))?$/,isNumeric:function(value){return OpenLayers.String.numberRegEx.test(value);},numericIf:function(value){return OpenLayers.String.isNumeric(value)?parseFloat(value):value;}};if(!String.prototype.startsWith){String.prototype.startsWith=function(sStart){OpenLayers.Console.warn(OpenLayers.i18n(\"methodDeprecated\",{'newMethod':'OpenLayers.String.startsWith'}));return OpenLayers.String.startsWith(this,sStart);};}\nif(!String.prototype.contains){String.prototype.contains=function(str){OpenLayers.Console.warn(OpenLayers.i18n(\"methodDeprecated\",{'newMethod':'OpenLayers.String.contains'}));return OpenLayers.String.contains(this,str);};}\nif(!String.prototype.trim){String.prototype.trim=function(){OpenLayers.Console.warn(OpenLayers.i18n(\"methodDeprecated\",{'newMethod':'OpenLayers.String.trim'}));return OpenLayers.String.trim(this);};}\nif(!String.prototype.camelize){String.prototype.camelize=function(){OpenLayers.Console.warn(OpenLayers.i18n(\"methodDeprecated\",{'newMethod':'OpenLayers.String.camelize'}));return OpenLayers.String.camelize(this);};}\nOpenLayers.Number={decimalSeparator:\".\",thousandsSeparator:\",\",limitSigDigs:function(num,sig){var fig=0;if(sig>0){fig=parseFloat(num.toPrecision(sig));}\nreturn fig;},format:function(num,dec,tsep,dsep){dec=(typeof dec!=\"undefined\")?dec:0;tsep=(typeof tsep!=\"undefined\")?tsep:OpenLayers.Number.thousandsSeparator;dsep=(typeof dsep!=\"undefined\")?dsep:OpenLayers.Number.decimalSeparator;if(dec!=null){num=parseFloat(num.toFixed(dec));}\nvar parts=num.toString().split(\".\");if(parts.length==1&&dec==null){dec=0;}\nvar integer=parts[0];if(tsep){var thousands=/(-?[0-9]+)([0-9]{3})/;while(thousands.test(integer)){integer=integer.replace(thousands,\"$1\"+tsep+\"$2\");}}\nvar str;if(dec==0){str=integer;}else{var rem=parts.length>1?parts[1]:\"0\";if(dec!=null){rem=rem+new Array(dec-rem.length+1).join(\"0\");}\nstr=integer+dsep+rem;}\nreturn str;}};if(!Number.prototype.limitSigDigs){Number.prototype.limitSigDigs=function(sig){OpenLayers.Console.warn(OpenLayers.i18n(\"methodDeprecated\",{'newMethod':'OpenLayers.Number.limitSigDigs'}));return OpenLayers.Number.limitSigDigs(this,sig);};}\nOpenLayers.Function={bind:function(func,object){var args=Array.prototype.slice.apply(arguments,[2]);return function(){var newArgs=args.concat(Array.prototype.slice.apply(arguments,[0]));return func.apply(object,newArgs);};},bindAsEventListener:function(func,object){return function(event){return func.call(object,event||window.event);};},False:function(){return false;},True:function(){return true;}};if(!Function.prototype.bind){Function.prototype.bind=function(){OpenLayers.Console.warn(OpenLayers.i18n(\"methodDeprecated\",{'newMethod':'OpenLayers.Function.bind'}));Array.prototype.unshift.apply(arguments,[this]);return OpenLayers.Function.bind.apply(null,arguments);};}\nif(!Function.prototype.bindAsEventListener){Function.prototype.bindAsEventListener=function(object){OpenLayers.Console.warn(OpenLayers.i18n(\"methodDeprecated\",{'newMethod':'OpenLayers.Function.bindAsEventListener'}));return OpenLayers.Function.bindAsEventListener(this,object);};}\nOpenLayers.Array={filter:function(array,callback,caller){var selected=[];if(Array.prototype.filter){selected=array.filter(callback,caller);}else{var len=array.length;if(typeof callback!=\"function\"){throw new TypeError();}\nfor(var i=0;i<len;i++){if(i in array){var val=array[i];if(callback.call(caller,val,i,array)){selected.push(val);}}}}\nreturn selected;}};OpenLayers.Date={toISOString:(function(){if(\"toISOString\"in Date.prototype){return function(date){return date.toISOString();}}else{function pad(num,len){var str=num+\"\";while(str.length<len){str=\"0\"+str;}\nreturn str;}\nreturn function(date){var str;if(isNaN(date.getTime())){str=\"Invalid Date\";}else{str=date.getUTCFullYear()+\"-\"+\npad(date.getUTCMonth()+1,2)+\"-\"+\npad(date.getUTCDate(),2)+\"T\"+\npad(date.getUTCHours(),2)+\":\"+\npad(date.getUTCMinutes(),2)+\":\"+\npad(date.getUTCSeconds(),2)+\".\"+\npad(date.getUTCMilliseconds(),3)+\"Z\";}\nreturn str;}}})(),parse:function(str){var date;var elapsed=Date.parse(str);if(!isNaN(elapsed)){date=new Date(elapsed);}else{var match=str.match(/^(?:(\\d{4})(?:-(\\d{2})(?:-(\\d{2}))?)?)?(?:T(\\d{1,2}):(\\d{2}):(\\d{2}(?:\\.\\d+)?)(Z|(?:[+-]\\d{1,2}(?::(\\d{2}))?)))?$/);var date;if(match&&(match[1]||match[7])){var year=parseInt(match[1],10)||0;var month=(parseInt(match[2],10)-1)||0;var day=parseInt(match[3],10)||1;date=new Date(Date.UTC(year,month,day));var type=match[7];if(type){var hours=parseInt(match[4],10);var minutes=parseInt(match[5],10);var secFrac=parseFloat(match[6]);var seconds=secFrac|0;var milliseconds=Math.round(1000*(secFrac-seconds));date.setUTCHours(hours,minutes,seconds,milliseconds);if(type!==\"Z\"){var hoursOffset=parseInt(type,10);var minutesOffset=parseInt(match[8])||0;var offset=-1000*(60*(hoursOffset*60)+minutesOffset*60);date=new Date(date.getTime()+offset);}}}else{date=new Date(\"invalid\");}}\nreturn date;}};OpenLayers.Class=function(){var Class=function(){if(arguments&&arguments[0]!=OpenLayers.Class.isPrototype){this.initialize.apply(this,arguments);}};var extended={};var parent,initialize,Type;for(var i=0,len=arguments.length;i<len;++i){Type=arguments[i];if(typeof Type==\"function\"){if(i==0&&len>1){initialize=Type.prototype.initialize;Type.prototype.initialize=function(){};extended=new Type();if(initialize===undefined){delete Type.prototype.initialize;}else{Type.prototype.initialize=initialize;}}\nparent=Type.prototype;}else{parent=Type;}\nOpenLayers.Util.extend(extended,parent);}\nClass.prototype=extended;return Class;};OpenLayers.Class.isPrototype=function(){};OpenLayers.Class.create=function(){return function(){if(arguments&&arguments[0]!=OpenLayers.Class.isPrototype){this.initialize.apply(this,arguments);}};};OpenLayers.Class.inherit=function(){var superClass=arguments[0];var proto=new superClass(OpenLayers.Class.isPrototype);for(var i=1,len=arguments.length;i<len;i++){if(typeof arguments[i]==\"function\"){var mixin=arguments[i];arguments[i]=new mixin(OpenLayers.Class.isPrototype);}\nOpenLayers.Util.extend(proto,arguments[i]);}\nreturn proto;};OpenLayers.Util={};OpenLayers.Util.getElement=function(){var elements=[];for(var i=0,len=arguments.length;i<len;i++){var element=arguments[i];if(typeof element=='string'){element=document.getElementById(element);}\nif(arguments.length==1){return element;}\nelements.push(element);}\nreturn elements;};OpenLayers.Util.isElement=function(o){return!!(o&&o.nodeType===1);};if(typeof window.$===\"undefined\"){window.$=OpenLayers.Util.getElement;}\nOpenLayers.Util.extend=function(destination,source){destination=destination||{};if(source){for(var property in source){var value=source[property];if(value!==undefined){destination[property]=value;}}\nvar sourceIsEvt=typeof window.Event==\"function\"&&source instanceof window.Event;if(!sourceIsEvt&&source.hasOwnProperty&&source.hasOwnProperty('toString')){destination.toString=source.toString;}}\nreturn destination;};OpenLayers.Util.removeItem=function(array,item){for(var i=array.length-1;i>=0;i--){if(array[i]==item){array.splice(i,1);}}\nreturn array;};OpenLayers.Util.clearArray=function(array){OpenLayers.Console.warn(OpenLayers.i18n(\"methodDeprecated\",{'newMethod':'array = []'}));array.length=0;};OpenLayers.Util.indexOf=function(array,obj){if(typeof array.indexOf==\"function\"){return array.indexOf(obj);}else{for(var i=0,len=array.length;i<len;i++){if(array[i]==obj){return i;}}\nreturn-1;}};OpenLayers.Util.modifyDOMElement=function(element,id,px,sz,position,border,overflow,opacity){if(id){element.id=id;}\nif(px){element.style.left=px.x+\"px\";element.style.top=px.y+\"px\";}\nif(sz){element.style.width=sz.w+\"px\";element.style.height=sz.h+\"px\";}\nif(position){element.style.position=position;}\nif(border){element.style.border=border;}\nif(overflow){element.style.overflow=overflow;}\nif(parseFloat(opacity)>=0.0&&parseFloat(opacity)<1.0){element.style.filter='alpha(opacity='+(opacity*100)+')';element.style.opacity=opacity;}else if(parseFloat(opacity)==1.0){element.style.filter='';element.style.opacity='';}};OpenLayers.Util.createDiv=function(id,px,sz,imgURL,position,border,overflow,opacity){var dom=document.createElement('div');if(imgURL){dom.style.backgroundImage='url('+imgURL+')';}\nif(!id){id=OpenLayers.Util.createUniqueID(\"OpenLayersDiv\");}\nif(!position){position=\"absolute\";}\nOpenLayers.Util.modifyDOMElement(dom,id,px,sz,position,border,overflow,opacity);return dom;};OpenLayers.Util.createImage=function(id,px,sz,imgURL,position,border,opacity,delayDisplay){var image=document.createElement(\"img\");if(!id){id=OpenLayers.Util.createUniqueID(\"OpenLayersDiv\");}\nif(!position){position=\"relative\";}\nOpenLayers.Util.modifyDOMElement(image,id,px,sz,position,border,null,opacity);if(delayDisplay){image.style.display=\"none\";OpenLayers.Event.observe(image,\"load\",OpenLayers.Function.bind(OpenLayers.Util.onImageLoad,image));OpenLayers.Event.observe(image,\"error\",OpenLayers.Function.bind(OpenLayers.Util.onImageLoadError,image));}\nimage.style.alt=id;image.galleryImg=\"no\";if(imgURL){image.src=imgURL;}\nreturn image;};OpenLayers.Util.setOpacity=function(element,opacity){OpenLayers.Util.modifyDOMElement(element,null,null,null,null,null,null,opacity);};OpenLayers.Util.onImageLoad=function(){if(!this.viewRequestID||(this.map&&this.viewRequestID==this.map.viewRequestID)){this.style.display=\"\";}\nOpenLayers.Element.removeClass(this,\"olImageLoadError\");};OpenLayers.IMAGE_RELOAD_ATTEMPTS=0;OpenLayers.Util.onImageLoadError=function(){this._attempts=(this._attempts)?(this._attempts+1):1;if(this._attempts<=OpenLayers.IMAGE_RELOAD_ATTEMPTS){var urls=this.urls;if(urls&&urls instanceof Array&&urls.length>1){var src=this.src.toString();var current_url,k;for(k=0;current_url=urls[k];k++){if(src.indexOf(current_url)!=-1){break;}}\nvar guess=Math.floor(urls.length*Math.random());var new_url=urls[guess];k=0;while(new_url==current_url&&k++<4){guess=Math.floor(urls.length*Math.random());new_url=urls[guess];}\nthis.src=src.replace(current_url,new_url);}else{this.src=this.src;}}else{OpenLayers.Element.addClass(this,\"olImageLoadError\");}\nthis.style.display=\"\";};OpenLayers.Util.alphaHackNeeded=null;OpenLayers.Util.alphaHack=function(){if(OpenLayers.Util.alphaHackNeeded==null){var arVersion=navigator.appVersion.split(\"MSIE\");var version=parseFloat(arVersion[1]);var filter=false;try{filter=!!(document.body.filters);}catch(e){}\nOpenLayers.Util.alphaHackNeeded=(filter&&(version>=5.5)&&(version<7));}\nreturn OpenLayers.Util.alphaHackNeeded;};OpenLayers.Util.modifyAlphaImageDiv=function(div,id,px,sz,imgURL,position,border,sizing,opacity){OpenLayers.Util.modifyDOMElement(div,id,px,sz,position,null,null,opacity);var img=div.childNodes[0];if(imgURL){img.src=imgURL;}\nOpenLayers.Util.modifyDOMElement(img,div.id+\"_innerImage\",null,sz,\"relative\",border);if(OpenLayers.Util.alphaHack()){if(div.style.display!=\"none\"){div.style.display=\"inline-block\";}\nif(sizing==null){sizing=\"scale\";}\ndiv.style.filter=\"progid:DXImageTransform.Microsoft\"+\".AlphaImageLoader(src='\"+img.src+\"', \"+\"sizingMethod='\"+sizing+\"')\";if(parseFloat(div.style.opacity)>=0.0&&parseFloat(div.style.opacity)<1.0){div.style.filter+=\" alpha(opacity=\"+div.style.opacity*100+\")\";}\nimg.style.filter=\"alpha(opacity=0)\";}};OpenLayers.Util.createAlphaImageDiv=function(id,px,sz,imgURL,position,border,sizing,opacity,delayDisplay){var div=OpenLayers.Util.createDiv();var img=OpenLayers.Util.createImage(null,null,null,null,null,null,null,false);div.appendChild(img);if(delayDisplay){img.style.display=\"none\";OpenLayers.Event.observe(img,\"load\",OpenLayers.Function.bind(OpenLayers.Util.onImageLoad,div));OpenLayers.Event.observe(img,\"error\",OpenLayers.Function.bind(OpenLayers.Util.onImageLoadError,div));}\nOpenLayers.Util.modifyAlphaImageDiv(div,id,px,sz,imgURL,position,border,sizing,opacity);return div;};OpenLayers.Util.upperCaseObject=function(object){var uObject={};for(var key in object){uObject[key.toUpperCase()]=object[key];}\nreturn uObject;};OpenLayers.Util.applyDefaults=function(to,from){to=to||{};var fromIsEvt=typeof window.Event==\"function\"&&from instanceof window.Event;for(var key in from){if(to[key]===undefined||(!fromIsEvt&&from.hasOwnProperty&&from.hasOwnProperty(key)&&!to.hasOwnProperty(key))){to[key]=from[key];}}\nif(!fromIsEvt&&from&&from.hasOwnProperty&&from.hasOwnProperty('toString')&&!to.hasOwnProperty('toString')){to.toString=from.toString;}\nreturn to;};OpenLayers.Util.getParameterString=function(params){var paramsArray=[];for(var key in params){var value=params[key];if((value!=null)&&(typeof value!='function')){var encodedValue;if(typeof value=='object'&&value.constructor==Array){var encodedItemArray=[];var item;for(var itemIndex=0,len=value.length;itemIndex<len;itemIndex++){item=value[itemIndex];encodedItemArray.push(encodeURIComponent((item===null||item===undefined)?\"\":item));}\nencodedValue=encodedItemArray.join(\",\");}\nelse{encodedValue=encodeURIComponent(value);}\nparamsArray.push(encodeURIComponent(key)+\"=\"+encodedValue);}}\nreturn paramsArray.join(\"&\");};OpenLayers.Util.urlAppend=function(url,paramStr){var newUrl=url;if(paramStr){var parts=(url+\" \").split(/[?&]/);newUrl+=(parts.pop()===\" \"?paramStr:parts.length?\"&\"+paramStr:\"?\"+paramStr);}\nreturn newUrl;};OpenLayers.ImgPath='';OpenLayers.Util.getImagesLocation=function(){return OpenLayers.ImgPath||(OpenLayers._getScriptLocation()+\"img/\");};OpenLayers.Util.Try=function(){var returnValue=null;for(var i=0,len=arguments.length;i<len;i++){var lambda=arguments[i];try{returnValue=lambda();break;}catch(e){}}\nreturn returnValue;};OpenLayers.Util.getNodes=function(p,tagName){var nodes=OpenLayers.Util.Try(function(){return OpenLayers.Util._getNodes(p.documentElement.childNodes,tagName);},function(){return OpenLayers.Util._getNodes(p.childNodes,tagName);});return nodes;};OpenLayers.Util._getNodes=function(nodes,tagName){var retArray=[];for(var i=0,len=nodes.length;i<len;i++){if(nodes[i].nodeName==tagName){retArray.push(nodes[i]);}}\nreturn retArray;};OpenLayers.Util.getTagText=function(parent,item,index){var result=OpenLayers.Util.getNodes(parent,item);if(result&&(result.length>0))\n{if(!index){index=0;}\nif(result[index].childNodes.length>1){return result.childNodes[1].nodeValue;}\nelse if(result[index].childNodes.length==1){return result[index].firstChild.nodeValue;}}else{return\"\";}};OpenLayers.Util.getXmlNodeValue=function(node){var val=null;OpenLayers.Util.Try(function(){val=node.text;if(!val){val=node.textContent;}\nif(!val){val=node.firstChild.nodeValue;}},function(){val=node.textContent;});return val;};OpenLayers.Util.mouseLeft=function(evt,div){var target=(evt.relatedTarget)?evt.relatedTarget:evt.toElement;while(target!=div&&target!=null){target=target.parentNode;}\nreturn(target!=div);};OpenLayers.Util.DEFAULT_PRECISION=14;OpenLayers.Util.toFloat=function(number,precision){if(precision==null){precision=OpenLayers.Util.DEFAULT_PRECISION;}\nvar number;if(precision==0){number=parseFloat(number);}else{number=parseFloat(parseFloat(number).toPrecision(precision));}\nreturn number;};OpenLayers.Util.rad=function(x){return x*Math.PI/180;};OpenLayers.Util.deg=function(x){return x*180/Math.PI;};OpenLayers.Util.VincentyConstants={a:6378137,b:6356752.3142,f:1/298.257223563};OpenLayers.Util.distVincenty=function(p1,p2){var ct=OpenLayers.Util.VincentyConstants;var a=ct.a,b=ct.b,f=ct.f;var L=OpenLayers.Util.rad(p2.lon-p1.lon);var U1=Math.atan((1-f)*Math.tan(OpenLayers.Util.rad(p1.lat)));var U2=Math.atan((1-f)*Math.tan(OpenLayers.Util.rad(p2.lat)));var sinU1=Math.sin(U1),cosU1=Math.cos(U1);var sinU2=Math.sin(U2),cosU2=Math.cos(U2);var lambda=L,lambdaP=2*Math.PI;var iterLimit=20;while(Math.abs(lambda-lambdaP)>1e-12&&--iterLimit>0){var sinLambda=Math.sin(lambda),cosLambda=Math.cos(lambda);var sinSigma=Math.sqrt((cosU2*sinLambda)*(cosU2*sinLambda)+\n(cosU1*sinU2-sinU1*cosU2*cosLambda)*(cosU1*sinU2-sinU1*cosU2*cosLambda));if(sinSigma==0){return 0;}\nvar cosSigma=sinU1*sinU2+cosU1*cosU2*cosLambda;var sigma=Math.atan2(sinSigma,cosSigma);var alpha=Math.asin(cosU1*cosU2*sinLambda/sinSigma);var cosSqAlpha=Math.cos(alpha)*Math.cos(alpha);var cos2SigmaM=cosSigma-2*sinU1*sinU2/cosSqAlpha;var C=f/16*cosSqAlpha*(4+f*(4-3*cosSqAlpha));lambdaP=lambda;lambda=L+(1-C)*f*Math.sin(alpha)*(sigma+C*sinSigma*(cos2SigmaM+C*cosSigma*(-1+2*cos2SigmaM*cos2SigmaM)));}\nif(iterLimit==0){return NaN;}\nvar uSq=cosSqAlpha*(a*a-b*b)/(b*b);var A=1+uSq/16384*(4096+uSq*(-768+uSq*(320-175*uSq)));var B=uSq/1024*(256+uSq*(-128+uSq*(74-47*uSq)));var deltaSigma=B*sinSigma*(cos2SigmaM+B/4*(cosSigma*(-1+2*cos2SigmaM*cos2SigmaM)-\nB/6*cos2SigmaM*(-3+4*sinSigma*sinSigma)*(-3+4*cos2SigmaM*cos2SigmaM)));var s=b*A*(sigma-deltaSigma);var d=s.toFixed(3)/1000;return d;};OpenLayers.Util.destinationVincenty=function(lonlat,brng,dist){var u=OpenLayers.Util;var ct=u.VincentyConstants;var a=ct.a,b=ct.b,f=ct.f;var lon1=lonlat.lon;var lat1=lonlat.lat;var s=dist;var alpha1=u.rad(brng);var sinAlpha1=Math.sin(alpha1);var cosAlpha1=Math.cos(alpha1);var tanU1=(1-f)*Math.tan(u.rad(lat1));var cosU1=1/Math.sqrt((1+tanU1*tanU1)),sinU1=tanU1*cosU1;var sigma1=Math.atan2(tanU1,cosAlpha1);var sinAlpha=cosU1*sinAlpha1;var cosSqAlpha=1-sinAlpha*sinAlpha;var uSq=cosSqAlpha*(a*a-b*b)/(b*b);var A=1+uSq/16384*(4096+uSq*(-768+uSq*(320-175*uSq)));var B=uSq/1024*(256+uSq*(-128+uSq*(74-47*uSq)));var sigma=s/(b*A),sigmaP=2*Math.PI;while(Math.abs(sigma-sigmaP)>1e-12){var cos2SigmaM=Math.cos(2*sigma1+sigma);var sinSigma=Math.sin(sigma);var cosSigma=Math.cos(sigma);var deltaSigma=B*sinSigma*(cos2SigmaM+B/4*(cosSigma*(-1+2*cos2SigmaM*cos2SigmaM)-\nB/6*cos2SigmaM*(-3+4*sinSigma*sinSigma)*(-3+4*cos2SigmaM*cos2SigmaM)));sigmaP=sigma;sigma=s/(b*A)+deltaSigma;}\nvar tmp=sinU1*sinSigma-cosU1*cosSigma*cosAlpha1;var lat2=Math.atan2(sinU1*cosSigma+cosU1*sinSigma*cosAlpha1,(1-f)*Math.sqrt(sinAlpha*sinAlpha+tmp*tmp));var lambda=Math.atan2(sinSigma*sinAlpha1,cosU1*cosSigma-sinU1*sinSigma*cosAlpha1);var C=f/16*cosSqAlpha*(4+f*(4-3*cosSqAlpha));var L=lambda-(1-C)*f*sinAlpha*(sigma+C*sinSigma*(cos2SigmaM+C*cosSigma*(-1+2*cos2SigmaM*cos2SigmaM)));var revAz=Math.atan2(sinAlpha,-tmp);return new OpenLayers.LonLat(lon1+u.deg(L),u.deg(lat2));};OpenLayers.Util.getParameters=function(url){url=url||window.location.href;var paramsString=\"\";if(OpenLayers.String.contains(url,'?')){var start=url.indexOf('?')+1;var end=OpenLayers.String.contains(url,\"#\")?url.indexOf('#'):url.length;paramsString=url.substring(start,end);}\nvar parameters={};var pairs=paramsString.split(/[&;]/);for(var i=0,len=pairs.length;i<len;++i){var keyValue=pairs[i].split('=');if(keyValue[0]){var key=decodeURIComponent(keyValue[0]);var value=keyValue[1]||'';value=decodeURIComponent(value.replace(/\\+/g,\" \")).split(\",\");if(value.length==1){value=value[0];}\nparameters[key]=value;}}\nreturn parameters;};OpenLayers.Util.getArgs=function(url){OpenLayers.Console.warn(OpenLayers.i18n(\"methodDeprecated\",{'newMethod':'OpenLayers.Util.getParameters'}));return OpenLayers.Util.getParameters(url);};OpenLayers.Util.lastSeqID=0;OpenLayers.Util.createUniqueID=function(prefix){if(prefix==null){prefix=\"id_\";}\nOpenLayers.Util.lastSeqID+=1;return prefix+OpenLayers.Util.lastSeqID;};OpenLayers.INCHES_PER_UNIT={'inches':1.0,'ft':12.0,'mi':63360.0,'m':39.3701,'km':39370.1,'dd':4374754,'yd':36};OpenLayers.INCHES_PER_UNIT[\"in\"]=OpenLayers.INCHES_PER_UNIT.inches;OpenLayers.INCHES_PER_UNIT[\"degrees\"]=OpenLayers.INCHES_PER_UNIT.dd;OpenLayers.INCHES_PER_UNIT[\"nmi\"]=1852*OpenLayers.INCHES_PER_UNIT.m;OpenLayers.METERS_PER_INCH=0.02540005080010160020;OpenLayers.Util.extend(OpenLayers.INCHES_PER_UNIT,{\"Inch\":OpenLayers.INCHES_PER_UNIT.inches,\"Meter\":1.0/OpenLayers.METERS_PER_INCH,\"Foot\":0.30480060960121920243/OpenLayers.METERS_PER_INCH,\"IFoot\":0.30480000000000000000/OpenLayers.METERS_PER_INCH,\"ClarkeFoot\":0.3047972651151/OpenLayers.METERS_PER_INCH,\"SearsFoot\":0.30479947153867624624/OpenLayers.METERS_PER_INCH,\"GoldCoastFoot\":0.30479971018150881758/OpenLayers.METERS_PER_INCH,\"IInch\":0.02540000000000000000/OpenLayers.METERS_PER_INCH,\"MicroInch\":0.00002540000000000000/OpenLayers.METERS_PER_INCH,\"Mil\":0.00000002540000000000/OpenLayers.METERS_PER_INCH,\"Centimeter\":0.01000000000000000000/OpenLayers.METERS_PER_INCH,\"Kilometer\":1000.00000000000000000000/OpenLayers.METERS_PER_INCH,\"Yard\":0.91440182880365760731/OpenLayers.METERS_PER_INCH,\"SearsYard\":0.914398414616029/OpenLayers.METERS_PER_INCH,\"IndianYard\":0.91439853074444079983/OpenLayers.METERS_PER_INCH,\"IndianYd37\":0.91439523/OpenLayers.METERS_PER_INCH,\"IndianYd62\":0.9143988/OpenLayers.METERS_PER_INCH,\"IndianYd75\":0.9143985/OpenLayers.METERS_PER_INCH,\"IndianFoot\":0.30479951/OpenLayers.METERS_PER_INCH,\"IndianFt37\":0.30479841/OpenLayers.METERS_PER_INCH,\"IndianFt62\":0.3047996/OpenLayers.METERS_PER_INCH,\"IndianFt75\":0.3047995/OpenLayers.METERS_PER_INCH,\"Mile\":1609.34721869443738887477/OpenLayers.METERS_PER_INCH,\"IYard\":0.91440000000000000000/OpenLayers.METERS_PER_INCH,\"IMile\":1609.34400000000000000000/OpenLayers.METERS_PER_INCH,\"NautM\":1852.00000000000000000000/OpenLayers.METERS_PER_INCH,\"Lat-66\":110943.316488932731/OpenLayers.METERS_PER_INCH,\"Lat-83\":110946.25736872234125/OpenLayers.METERS_PER_INCH,\"Decimeter\":0.10000000000000000000/OpenLayers.METERS_PER_INCH,\"Millimeter\":0.00100000000000000000/OpenLayers.METERS_PER_INCH,\"Dekameter\":10.00000000000000000000/OpenLayers.METERS_PER_INCH,\"Decameter\":10.00000000000000000000/OpenLayers.METERS_PER_INCH,\"Hectometer\":100.00000000000000000000/OpenLayers.METERS_PER_INCH,\"GermanMeter\":1.0000135965/OpenLayers.METERS_PER_INCH,\"CaGrid\":0.999738/OpenLayers.METERS_PER_INCH,\"ClarkeChain\":20.1166194976/OpenLayers.METERS_PER_INCH,\"GunterChain\":20.11684023368047/OpenLayers.METERS_PER_INCH,\"BenoitChain\":20.116782494375872/OpenLayers.METERS_PER_INCH,\"SearsChain\":20.11676512155/OpenLayers.METERS_PER_INCH,\"ClarkeLink\":0.201166194976/OpenLayers.METERS_PER_INCH,\"GunterLink\":0.2011684023368047/OpenLayers.METERS_PER_INCH,\"BenoitLink\":0.20116782494375872/OpenLayers.METERS_PER_INCH,\"SearsLink\":0.2011676512155/OpenLayers.METERS_PER_INCH,\"Rod\":5.02921005842012/OpenLayers.METERS_PER_INCH,\"IntnlChain\":20.1168/OpenLayers.METERS_PER_INCH,\"IntnlLink\":0.201168/OpenLayers.METERS_PER_INCH,\"Perch\":5.02921005842012/OpenLayers.METERS_PER_INCH,\"Pole\":5.02921005842012/OpenLayers.METERS_PER_INCH,\"Furlong\":201.1684023368046/OpenLayers.METERS_PER_INCH,\"Rood\":3.778266898/OpenLayers.METERS_PER_INCH,\"CapeFoot\":0.3047972615/OpenLayers.METERS_PER_INCH,\"Brealey\":375.00000000000000000000/OpenLayers.METERS_PER_INCH,\"ModAmFt\":0.304812252984505969011938/OpenLayers.METERS_PER_INCH,\"Fathom\":1.8288/OpenLayers.METERS_PER_INCH,\"NautM-UK\":1853.184/OpenLayers.METERS_PER_INCH,\"50kilometers\":50000.0/OpenLayers.METERS_PER_INCH,\"150kilometers\":150000.0/OpenLayers.METERS_PER_INCH});OpenLayers.Util.extend(OpenLayers.INCHES_PER_UNIT,{\"mm\":OpenLayers.INCHES_PER_UNIT[\"Meter\"]/1000.0,\"cm\":OpenLayers.INCHES_PER_UNIT[\"Meter\"]/100.0,\"dm\":OpenLayers.INCHES_PER_UNIT[\"Meter\"]*100.0,\"km\":OpenLayers.INCHES_PER_UNIT[\"Meter\"]*1000.0,\"kmi\":OpenLayers.INCHES_PER_UNIT[\"nmi\"],\"fath\":OpenLayers.INCHES_PER_UNIT[\"Fathom\"],\"ch\":OpenLayers.INCHES_PER_UNIT[\"IntnlChain\"],\"link\":OpenLayers.INCHES_PER_UNIT[\"IntnlLink\"],\"us-in\":OpenLayers.INCHES_PER_UNIT[\"inches\"],\"us-ft\":OpenLayers.INCHES_PER_UNIT[\"Foot\"],\"us-yd\":OpenLayers.INCHES_PER_UNIT[\"Yard\"],\"us-ch\":OpenLayers.INCHES_PER_UNIT[\"GunterChain\"],\"us-mi\":OpenLayers.INCHES_PER_UNIT[\"Mile\"],\"ind-yd\":OpenLayers.INCHES_PER_UNIT[\"IndianYd37\"],\"ind-ft\":OpenLayers.INCHES_PER_UNIT[\"IndianFt37\"],\"ind-ch\":20.11669506/OpenLayers.METERS_PER_INCH});OpenLayers.DOTS_PER_INCH=72;OpenLayers.Util.normalizeScale=function(scale){var normScale=(scale>1.0)?(1.0/scale):scale;return normScale;};OpenLayers.Util.getResolutionFromScale=function(scale,units){var resolution;if(scale){if(units==null){units=\"degrees\";}\nvar normScale=OpenLayers.Util.normalizeScale(scale);resolution=1/(normScale*OpenLayers.INCHES_PER_UNIT[units]*OpenLayers.DOTS_PER_INCH);}\nreturn resolution;};OpenLayers.Util.getScaleFromResolution=function(resolution,units){if(units==null){units=\"degrees\";}\nvar scale=resolution*OpenLayers.INCHES_PER_UNIT[units]*OpenLayers.DOTS_PER_INCH;return scale;};OpenLayers.Util.safeStopPropagation=function(evt){OpenLayers.Event.stop(evt,true);};OpenLayers.Util.pagePosition=function(forElement){var valueT=0,valueL=0;var element=forElement;var child=forElement;while(element){if(element==document.body){if(OpenLayers.Element.getStyle(child,'position')=='absolute'){break;}}\nvalueT+=element.offsetTop||0;valueL+=element.offsetLeft||0;child=element;try{element=element.offsetParent;}catch(e){OpenLayers.Console.error(OpenLayers.i18n(\"pagePositionFailed\",{'elemId':element.id}));break;}}\nelement=forElement;while(element){valueT-=element.scrollTop||0;valueL-=element.scrollLeft||0;element=element.parentNode;}\nreturn[valueL,valueT];};OpenLayers.Util.isEquivalentUrl=function(url1,url2,options){options=options||{};OpenLayers.Util.applyDefaults(options,{ignoreCase:true,ignorePort80:true,ignoreHash:true});var urlObj1=OpenLayers.Util.createUrlObject(url1,options);var urlObj2=OpenLayers.Util.createUrlObject(url2,options);for(var key in urlObj1){if(key!==\"args\"){if(urlObj1[key]!=urlObj2[key]){return false;}}}\nfor(var key in urlObj1.args){if(urlObj1.args[key]!=urlObj2.args[key]){return false;}\ndelete urlObj2.args[key];}\nfor(var key in urlObj2.args){return false;}\nreturn true;};OpenLayers.Util.createUrlObject=function(url,options){options=options||{};if(!(/^\\w+:\\/\\//).test(url)){var loc=window.location;var port=loc.port?\":\"+loc.port:\"\";var fullUrl=loc.protocol+\"//\"+loc.host.split(\":\").shift()+port;if(url.indexOf(\"/\")===0){url=fullUrl+url;}else{var parts=loc.pathname.split(\"/\");parts.pop();url=fullUrl+parts.join(\"/\")+\"/\"+url;}}\nif(options.ignoreCase){url=url.toLowerCase();}\nvar a=document.createElement('a');a.href=url;var urlObject={};urlObject.host=a.host.split(\":\").shift();urlObject.protocol=a.protocol;if(options.ignorePort80){urlObject.port=(a.port==\"80\"||a.port==\"0\")?\"\":a.port;}else{urlObject.port=(a.port==\"\"||a.port==\"0\")?\"80\":a.port;}\nurlObject.hash=(options.ignoreHash||a.hash===\"#\")?\"\":a.hash;var queryString=a.search;if(!queryString){var qMark=url.indexOf(\"?\");queryString=(qMark!=-1)?url.substr(qMark):\"\";}\nurlObject.args=OpenLayers.Util.getParameters(queryString);urlObject.pathname=(a.pathname.charAt(0)==\"/\")?a.pathname:\"/\"+a.pathname;return urlObject;};OpenLayers.Util.removeTail=function(url){var head=null;var qMark=url.indexOf(\"?\");var hashMark=url.indexOf(\"#\");if(qMark==-1){head=(hashMark!=-1)?url.substr(0,hashMark):url;}else{head=(hashMark!=-1)?url.substr(0,Math.min(qMark,hashMark)):url.substr(0,qMark);}\nreturn head;};OpenLayers.Util.getBrowserName=function(){var browserName=\"\";var ua=navigator.userAgent.toLowerCase();if(ua.indexOf(\"opera\")!=-1){browserName=\"opera\";}else if(ua.indexOf(\"msie\")!=-1){browserName=\"msie\";}else if(ua.indexOf(\"safari\")!=-1){browserName=\"safari\";}else if(ua.indexOf(\"mozilla\")!=-1){if(ua.indexOf(\"firefox\")!=-1){browserName=\"firefox\";}else{browserName=\"mozilla\";}}\nreturn browserName;};OpenLayers.Util.getRenderedDimensions=function(contentHTML,size,options){var w,h;var container=document.createElement(\"div\");container.style.visibility=\"hidden\";var containerElement=(options&&options.containerElement)?options.containerElement:document.body;if(size){if(size.w){w=size.w;container.style.width=w+\"px\";}else if(size.h){h=size.h;container.style.height=h+\"px\";}}\nif(options&&options.displayClass){container.className=options.displayClass;}\nvar content=document.createElement(\"div\");content.innerHTML=contentHTML;content.style.overflow=\"visible\";if(content.childNodes){for(var i=0,l=content.childNodes.length;i<l;i++){if(!content.childNodes[i].style)continue;content.childNodes[i].style.overflow=\"visible\";}}\ncontainer.appendChild(content);containerElement.appendChild(container);var parentHasPositionAbsolute=false;var parent=container.parentNode;while(parent&&parent.tagName.toLowerCase()!=\"body\"){var parentPosition=OpenLayers.Element.getStyle(parent,\"position\");if(parentPosition==\"absolute\"){parentHasPositionAbsolute=true;break;}else if(parentPosition&&parentPosition!=\"static\"){break;}\nparent=parent.parentNode;}\nif(!parentHasPositionAbsolute){container.style.position=\"absolute\";}\nif(!w){w=parseInt(content.scrollWidth);container.style.width=w+\"px\";}\nif(!h){h=parseInt(content.scrollHeight);}\ncontainer.removeChild(content);containerElement.removeChild(container);return new OpenLayers.Size(w,h);};OpenLayers.Util.getScrollbarWidth=function(){var scrollbarWidth=OpenLayers.Util._scrollbarWidth;if(scrollbarWidth==null){var scr=null;var inn=null;var wNoScroll=0;var wScroll=0;scr=document.createElement('div');scr.style.position='absolute';scr.style.top='-1000px';scr.style.left='-1000px';scr.style.width='100px';scr.style.height='50px';scr.style.overflow='hidden';inn=document.createElement('div');inn.style.width='100%';inn.style.height='200px';scr.appendChild(inn);document.body.appendChild(scr);wNoScroll=inn.offsetWidth;scr.style.overflow='scroll';wScroll=inn.offsetWidth;document.body.removeChild(document.body.lastChild);OpenLayers.Util._scrollbarWidth=(wNoScroll-wScroll);scrollbarWidth=OpenLayers.Util._scrollbarWidth;}\nreturn scrollbarWidth;};OpenLayers.Util.getFormattedLonLat=function(coordinate,axis,dmsOption){if(!dmsOption){dmsOption='dms';}\nvar abscoordinate=Math.abs(coordinate)\nvar coordinatedegrees=Math.floor(abscoordinate);var coordinateminutes=(abscoordinate-coordinatedegrees)/(1/60);var tempcoordinateminutes=coordinateminutes;coordinateminutes=Math.floor(coordinateminutes);var coordinateseconds=(tempcoordinateminutes-coordinateminutes)/(1/60);coordinateseconds=Math.round(coordinateseconds*10);coordinateseconds/=10;if(coordinatedegrees<10){coordinatedegrees=\"0\"+coordinatedegrees;}\nvar str=coordinatedegrees+\"\\u00B0\";if(dmsOption.indexOf('dm')>=0){if(coordinateminutes<10){coordinateminutes=\"0\"+coordinateminutes;}\nstr+=coordinateminutes+\"'\";if(dmsOption.indexOf('dms')>=0){if(coordinateseconds<10){coordinateseconds=\"0\"+coordinateseconds;}\nstr+=coordinateseconds+'\"';}}\nif(axis==\"lon\"){str+=coordinate<0?OpenLayers.i18n(\"W\"):OpenLayers.i18n(\"E\");}else{str+=coordinate<0?OpenLayers.i18n(\"S\"):OpenLayers.i18n(\"N\");}\nreturn str;};OpenLayers.Rico=new Object();OpenLayers.Rico.Corner={round:function(e,options){e=OpenLayers.Util.getElement(e);this._setOptions(options);var color=this.options.color;if(this.options.color==\"fromElement\"){color=this._background(e);}\nvar bgColor=this.options.bgColor;if(this.options.bgColor==\"fromParent\"){bgColor=this._background(e.offsetParent);}\nthis._roundCornersImpl(e,color,bgColor);},changeColor:function(theDiv,newColor){theDiv.style.backgroundColor=newColor;var spanElements=theDiv.parentNode.getElementsByTagName(\"span\");for(var currIdx=0;currIdx<spanElements.length;currIdx++){spanElements[currIdx].style.backgroundColor=newColor;}},changeOpacity:function(theDiv,newOpacity){var mozillaOpacity=newOpacity;var ieOpacity='alpha(opacity='+newOpacity*100+')';theDiv.style.opacity=mozillaOpacity;theDiv.style.filter=ieOpacity;var spanElements=theDiv.parentNode.getElementsByTagName(\"span\");for(var currIdx=0;currIdx<spanElements.length;currIdx++){spanElements[currIdx].style.opacity=mozillaOpacity;spanElements[currIdx].style.filter=ieOpacity;}},reRound:function(theDiv,options){var topRico=theDiv.parentNode.childNodes[0];var bottomRico=theDiv.parentNode.childNodes[2];theDiv.parentNode.removeChild(topRico);theDiv.parentNode.removeChild(bottomRico);this.round(theDiv.parentNode,options);},_roundCornersImpl:function(e,color,bgColor){if(this.options.border){this._renderBorder(e,bgColor);}\nif(this._isTopRounded()){this._roundTopCorners(e,color,bgColor);}\nif(this._isBottomRounded()){this._roundBottomCorners(e,color,bgColor);}},_renderBorder:function(el,bgColor){var borderValue=\"1px solid \"+this._borderColor(bgColor);var borderL=\"border-left: \"+borderValue;var borderR=\"border-right: \"+borderValue;var style=\"style='\"+borderL+\";\"+borderR+\"'\";el.innerHTML=\"<div \"+style+\">\"+el.innerHTML+\"</div>\";},_roundTopCorners:function(el,color,bgColor){var corner=this._createCorner(bgColor);for(var i=0;i<this.options.numSlices;i++){corner.appendChild(this._createCornerSlice(color,bgColor,i,\"top\"));}\nel.style.paddingTop=0;el.insertBefore(corner,el.firstChild);},_roundBottomCorners:function(el,color,bgColor){var corner=this._createCorner(bgColor);for(var i=(this.options.numSlices-1);i>=0;i--){corner.appendChild(this._createCornerSlice(color,bgColor,i,\"bottom\"));}\nel.style.paddingBottom=0;el.appendChild(corner);},_createCorner:function(bgColor){var corner=document.createElement(\"div\");corner.style.backgroundColor=(this._isTransparent()?\"transparent\":bgColor);return corner;},_createCornerSlice:function(color,bgColor,n,position){var slice=document.createElement(\"span\");var inStyle=slice.style;inStyle.backgroundColor=color;inStyle.display=\"block\";inStyle.height=\"1px\";inStyle.overflow=\"hidden\";inStyle.fontSize=\"1px\";var borderColor=this._borderColor(color,bgColor);if(this.options.border&&n==0){inStyle.borderTopStyle=\"solid\";inStyle.borderTopWidth=\"1px\";inStyle.borderLeftWidth=\"0px\";inStyle.borderRightWidth=\"0px\";inStyle.borderBottomWidth=\"0px\";inStyle.height=\"0px\";inStyle.borderColor=borderColor;}\nelse if(borderColor){inStyle.borderColor=borderColor;inStyle.borderStyle=\"solid\";inStyle.borderWidth=\"0px 1px\";}\nif(!this.options.compact&&(n==(this.options.numSlices-1))){inStyle.height=\"2px\";}\nthis._setMargin(slice,n,position);this._setBorder(slice,n,position);return slice;},_setOptions:function(options){this.options={corners:\"all\",color:\"fromElement\",bgColor:\"fromParent\",blend:true,border:false,compact:false};OpenLayers.Util.extend(this.options,options||{});this.options.numSlices=this.options.compact?2:4;if(this._isTransparent()){this.options.blend=false;}},_whichSideTop:function(){if(this._hasString(this.options.corners,\"all\",\"top\")){return\"\";}\nif(this.options.corners.indexOf(\"tl\")>=0&&this.options.corners.indexOf(\"tr\")>=0){return\"\";}\nif(this.options.corners.indexOf(\"tl\")>=0){return\"left\";}else if(this.options.corners.indexOf(\"tr\")>=0){return\"right\";}\nreturn\"\";},_whichSideBottom:function(){if(this._hasString(this.options.corners,\"all\",\"bottom\")){return\"\";}\nif(this.options.corners.indexOf(\"bl\")>=0&&this.options.corners.indexOf(\"br\")>=0){return\"\";}\nif(this.options.corners.indexOf(\"bl\")>=0){return\"left\";}else if(this.options.corners.indexOf(\"br\")>=0){return\"right\";}\nreturn\"\";},_borderColor:function(color,bgColor){if(color==\"transparent\"){return bgColor;}else if(this.options.border){return this.options.border;}else if(this.options.blend){return this._blend(bgColor,color);}else{return\"\";}},_setMargin:function(el,n,corners){var marginSize=this._marginSize(n);var whichSide=corners==\"top\"?this._whichSideTop():this._whichSideBottom();if(whichSide==\"left\"){el.style.marginLeft=marginSize+\"px\";el.style.marginRight=\"0px\";}\nelse if(whichSide==\"right\"){el.style.marginRight=marginSize+\"px\";el.style.marginLeft=\"0px\";}\nelse{el.style.marginLeft=marginSize+\"px\";el.style.marginRight=marginSize+\"px\";}},_setBorder:function(el,n,corners){var borderSize=this._borderSize(n);var whichSide=corners==\"top\"?this._whichSideTop():this._whichSideBottom();if(whichSide==\"left\"){el.style.borderLeftWidth=borderSize+\"px\";el.style.borderRightWidth=\"0px\";}\nelse if(whichSide==\"right\"){el.style.borderRightWidth=borderSize+\"px\";el.style.borderLeftWidth=\"0px\";}\nelse{el.style.borderLeftWidth=borderSize+\"px\";el.style.borderRightWidth=borderSize+\"px\";}\nif(this.options.border!=false){el.style.borderLeftWidth=borderSize+\"px\";el.style.borderRightWidth=borderSize+\"px\";}},_marginSize:function(n){if(this._isTransparent()){return 0;}\nvar marginSizes=[5,3,2,1];var blendedMarginSizes=[3,2,1,0];var compactMarginSizes=[2,1];var smBlendedMarginSizes=[1,0];if(this.options.compact&&this.options.blend){return smBlendedMarginSizes[n];}else if(this.options.compact){return compactMarginSizes[n];}else if(this.options.blend){return blendedMarginSizes[n];}else{return marginSizes[n];}},_borderSize:function(n){var transparentBorderSizes=[5,3,2,1];var blendedBorderSizes=[2,1,1,1];var compactBorderSizes=[1,0];var actualBorderSizes=[0,2,0,0];if(this.options.compact&&(this.options.blend||this._isTransparent())){return 1;}else if(this.options.compact){return compactBorderSizes[n];}else if(this.options.blend){return blendedBorderSizes[n];}else if(this.options.border){return actualBorderSizes[n];}else if(this._isTransparent()){return transparentBorderSizes[n];}\nreturn 0;},_hasString:function(str){for(var i=1;i<arguments.length;i++)if(str.indexOf(arguments[i])>=0){return true;}return false;},_blend:function(c1,c2){var cc1=OpenLayers.Rico.Color.createFromHex(c1);cc1.blend(OpenLayers.Rico.Color.createFromHex(c2));return cc1;},_background:function(el){try{return OpenLayers.Rico.Color.createColorFromBackground(el).asHex();}catch(err){return\"#ffffff\";}},_isTransparent:function(){return this.options.color==\"transparent\";},_isTopRounded:function(){return this._hasString(this.options.corners,\"all\",\"top\",\"tl\",\"tr\");},_isBottomRounded:function(){return this._hasString(this.options.corners,\"all\",\"bottom\",\"bl\",\"br\");},_hasSingleTextChild:function(el){return el.childNodes.length==1&&el.childNodes[0].nodeType==3;}};(function(){if(window.google&&google.gears){return;}\nvar factory=null;if(typeof GearsFactory!='undefined'){factory=new GearsFactory();}else{try{factory=new ActiveXObject('Gears.Factory');if(factory.getBuildInfo().indexOf('ie_mobile')!=-1){factory.privateSetGlobalObject(this);}}catch(e){if((typeof navigator.mimeTypes!='undefined')&&navigator.mimeTypes[\"application/x-googlegears\"]){factory=document.createElement(\"object\");factory.style.display=\"none\";factory.width=0;factory.height=0;factory.type=\"application/x-googlegears\";document.documentElement.appendChild(factory);}}}\nif(!factory){return;}\nif(!window.google){google={};}\nif(!google.gears){google.gears={factory:factory};}})();OpenLayers.Element={visible:function(element){return OpenLayers.Util.getElement(element).style.display!='none';},toggle:function(){for(var i=0,len=arguments.length;i<len;i++){var element=OpenLayers.Util.getElement(arguments[i]);var display=OpenLayers.Element.visible(element)?'hide':'show';OpenLayers.Element[display](element);}},hide:function(){for(var i=0,len=arguments.length;i<len;i++){var element=OpenLayers.Util.getElement(arguments[i]);if(element){element.style.display='none';}}},show:function(){for(var i=0,len=arguments.length;i<len;i++){var element=OpenLayers.Util.getElement(arguments[i]);if(element){element.style.display='';}}},remove:function(element){element=OpenLayers.Util.getElement(element);element.parentNode.removeChild(element);},getHeight:function(element){element=OpenLayers.Util.getElement(element);return element.offsetHeight;},getDimensions:function(element){element=OpenLayers.Util.getElement(element);if(OpenLayers.Element.getStyle(element,'display')!='none'){return{width:element.offsetWidth,height:element.offsetHeight};}\nvar els=element.style;var originalVisibility=els.visibility;var originalPosition=els.position;var originalDisplay=els.display;els.visibility='hidden';els.position='absolute';els.display='';var originalWidth=element.clientWidth;var originalHeight=element.clientHeight;els.display=originalDisplay;els.position=originalPosition;els.visibility=originalVisibility;return{width:originalWidth,height:originalHeight};},hasClass:function(element,name){var names=element.className;return(!!names&&new RegExp(\"(^|\\\\s)\"+name+\"(\\\\s|$)\").test(names));},addClass:function(element,name){if(!OpenLayers.Element.hasClass(element,name)){element.className+=(element.className?\" \":\"\")+name;}\nreturn element;},removeClass:function(element,name){var names=element.className;if(names){element.className=OpenLayers.String.trim(names.replace(new RegExp(\"(^|\\\\s+)\"+name+\"(\\\\s+|$)\"),\" \"));}\nreturn element;},toggleClass:function(element,name){if(OpenLayers.Element.hasClass(element,name)){OpenLayers.Element.removeClass(element,name);}else{OpenLayers.Element.addClass(element,name);}\nreturn element;},getStyle:function(element,style){element=OpenLayers.Util.getElement(element);var value=null;if(element&&element.style){value=element.style[OpenLayers.String.camelize(style)];if(!value){if(document.defaultView&&document.defaultView.getComputedStyle){var css=document.defaultView.getComputedStyle(element,null);value=css?css.getPropertyValue(style):null;}else if(element.currentStyle){value=element.currentStyle[OpenLayers.String.camelize(style)];}}\nvar positions=['left','top','right','bottom'];if(window.opera&&(OpenLayers.Util.indexOf(positions,style)!=-1)&&(OpenLayers.Element.getStyle(element,'position')=='static')){value='auto';}}\nreturn value=='auto'?null:value;}};OpenLayers.Size=OpenLayers.Class({w:0.0,h:0.0,initialize:function(w,h){this.w=parseFloat(w);this.h=parseFloat(h);},toString:function(){return(\"w=\"+this.w+\",h=\"+this.h);},clone:function(){return new OpenLayers.Size(this.w,this.h);},equals:function(sz){var equals=false;if(sz!=null){equals=((this.w==sz.w&&this.h==sz.h)||(isNaN(this.w)&&isNaN(this.h)&&isNaN(sz.w)&&isNaN(sz.h)));}\nreturn equals;},CLASS_NAME:\"OpenLayers.Size\"});OpenLayers.Console={log:function(){},debug:function(){},info:function(){},warn:function(){},error:function(){},userError:function(error){alert(error);},assert:function(){},dir:function(){},dirxml:function(){},trace:function(){},group:function(){},groupEnd:function(){},time:function(){},timeEnd:function(){},profile:function(){},profileEnd:function(){},count:function(){},CLASS_NAME:\"OpenLayers.Console\"};(function(){var scripts=document.getElementsByTagName(\"script\");for(var i=0,len=scripts.length;i<len;++i){if(scripts[i].src.indexOf(\"firebug.js\")!=-1){if(console){OpenLayers.Util.extend(OpenLayers.Console,console);break;}}}})();OpenLayers.Icon=OpenLayers.Class({url:null,size:null,offset:null,calculateOffset:null,imageDiv:null,px:null,initialize:function(url,size,offset,calculateOffset){this.url=url;this.size=(size)?size:new OpenLayers.Size(20,20);this.offset=offset?offset:new OpenLayers.Pixel(-(this.size.w/2),-(this.size.h/2));this.calculateOffset=calculateOffset;var id=OpenLayers.Util.createUniqueID(\"OL_Icon_\");this.imageDiv=OpenLayers.Util.createAlphaImageDiv(id);},destroy:function(){this.erase();OpenLayers.Event.stopObservingElement(this.imageDiv.firstChild);this.imageDiv.innerHTML=\"\";this.imageDiv=null;},clone:function(){return new OpenLayers.Icon(this.url,this.size,this.offset,this.calculateOffset);},setSize:function(size){if(size!=null){this.size=size;}\nthis.draw();},setUrl:function(url){if(url!=null){this.url=url;}\nthis.draw();},draw:function(px){OpenLayers.Util.modifyAlphaImageDiv(this.imageDiv,null,null,this.size,this.url,\"absolute\");this.moveTo(px);return this.imageDiv;},erase:function(){if(this.imageDiv!=null&&this.imageDiv.parentNode!=null){OpenLayers.Element.remove(this.imageDiv);}},setOpacity:function(opacity){OpenLayers.Util.modifyAlphaImageDiv(this.imageDiv,null,null,null,null,null,null,null,opacity);},moveTo:function(px){if(px!=null){this.px=px;}\nif(this.imageDiv!=null){if(this.px==null){this.display(false);}else{if(this.calculateOffset){this.offset=this.calculateOffset(this.size);}\nvar offsetPx=this.px.offset(this.offset);OpenLayers.Util.modifyAlphaImageDiv(this.imageDiv,null,offsetPx);}}},display:function(display){this.imageDiv.style.display=(display)?\"\":\"none\";},isDrawn:function(){var isDrawn=(this.imageDiv&&this.imageDiv.parentNode&&(this.imageDiv.parentNode.nodeType!=11));return isDrawn;},CLASS_NAME:\"OpenLayers.Icon\"});OpenLayers.Popup=OpenLayers.Class({events:null,id:\"\",lonlat:null,div:null,contentSize:null,size:null,contentHTML:null,backgroundColor:\"\",opacity:\"\",border:\"\",contentDiv:null,groupDiv:null,closeDiv:null,autoSize:false,minSize:null,maxSize:null,displayClass:\"olPopup\",contentDisplayClass:\"olPopupContent\",padding:0,disableFirefoxOverflowHack:false,fixPadding:function(){if(typeof this.padding==\"number\"){this.padding=new OpenLayers.Bounds(this.padding,this.padding,this.padding,this.padding);}},panMapIfOutOfView:false,keepInMap:false,closeOnMove:false,map:null,initialize:function(id,lonlat,contentSize,contentHTML,closeBox,closeBoxCallback){if(id==null){id=OpenLayers.Util.createUniqueID(this.CLASS_NAME+\"_\");}\nthis.id=id;this.lonlat=lonlat;this.contentSize=(contentSize!=null)?contentSize:new OpenLayers.Size(OpenLayers.Popup.WIDTH,OpenLayers.Popup.HEIGHT);if(contentHTML!=null){this.contentHTML=contentHTML;}\nthis.backgroundColor=OpenLayers.Popup.COLOR;this.opacity=OpenLayers.Popup.OPACITY;this.border=OpenLayers.Popup.BORDER;this.div=OpenLayers.Util.createDiv(this.id,null,null,null,null,null,\"hidden\");this.div.className=this.displayClass;var groupDivId=this.id+\"_GroupDiv\";this.groupDiv=OpenLayers.Util.createDiv(groupDivId,null,null,null,\"relative\",null,\"hidden\");var id=this.div.id+\"_contentDiv\";this.contentDiv=OpenLayers.Util.createDiv(id,null,this.contentSize.clone(),null,\"relative\");this.contentDiv.className=this.contentDisplayClass;this.groupDiv.appendChild(this.contentDiv);this.div.appendChild(this.groupDiv);if(closeBox){this.addCloseBox(closeBoxCallback);}\nthis.registerEvents();},destroy:function(){this.id=null;this.lonlat=null;this.size=null;this.contentHTML=null;this.backgroundColor=null;this.opacity=null;this.border=null;if(this.closeOnMove&&this.map){this.map.events.unregister(\"movestart\",this,this.hide);}\nthis.events.destroy();this.events=null;if(this.closeDiv){OpenLayers.Event.stopObservingElement(this.closeDiv);this.groupDiv.removeChild(this.closeDiv);}\nthis.closeDiv=null;this.div.removeChild(this.groupDiv);this.groupDiv=null;if(this.map!=null){this.map.removePopup(this);}\nthis.map=null;this.div=null;this.autoSize=null;this.minSize=null;this.maxSize=null;this.padding=null;this.panMapIfOutOfView=null;},draw:function(px){if(px==null){if((this.lonlat!=null)&&(this.map!=null)){px=this.map.getLayerPxFromLonLat(this.lonlat);}}\nif(this.closeOnMove){this.map.events.register(\"movestart\",this,this.hide);}\nif(!this.disableFirefoxOverflowHack&&OpenLayers.Util.getBrowserName()=='firefox'){this.map.events.register(\"movestart\",this,function(){var style=document.defaultView.getComputedStyle(this.contentDiv,null);var currentOverflow=style.getPropertyValue(\"overflow\");if(currentOverflow!=\"hidden\"){this.contentDiv._oldOverflow=currentOverflow;this.contentDiv.style.overflow=\"hidden\";}});this.map.events.register(\"moveend\",this,function(){var oldOverflow=this.contentDiv._oldOverflow;if(oldOverflow){this.contentDiv.style.overflow=oldOverflow;this.contentDiv._oldOverflow=null;}});}\nthis.moveTo(px);if(!this.autoSize&&!this.size){this.setSize(this.contentSize);}\nthis.setBackgroundColor();this.setOpacity();this.setBorder();this.setContentHTML();if(this.panMapIfOutOfView){this.panIntoView();}\nreturn this.div;},updatePosition:function(){if((this.lonlat)&&(this.map)){var px=this.map.getLayerPxFromLonLat(this.lonlat);if(px){this.moveTo(px);}}},moveTo:function(px){if((px!=null)&&(this.div!=null)){this.div.style.left=px.x+\"px\";this.div.style.top=px.y+\"px\";}},visible:function(){return OpenLayers.Element.visible(this.div);},toggle:function(){if(this.visible()){this.hide();}else{this.show();}},show:function(){OpenLayers.Element.show(this.div);if(this.panMapIfOutOfView){this.panIntoView();}},hide:function(){OpenLayers.Element.hide(this.div);},setSize:function(contentSize){this.size=contentSize.clone();var contentDivPadding=this.getContentDivPadding();var wPadding=contentDivPadding.left+contentDivPadding.right;var hPadding=contentDivPadding.top+contentDivPadding.bottom;this.fixPadding();wPadding+=this.padding.left+this.padding.right;hPadding+=this.padding.top+this.padding.bottom;if(this.closeDiv){var closeDivWidth=parseInt(this.closeDiv.style.width);wPadding+=closeDivWidth+contentDivPadding.right;}\nthis.size.w+=wPadding;this.size.h+=hPadding;if(OpenLayers.Util.getBrowserName()==\"msie\"){this.contentSize.w+=contentDivPadding.left+contentDivPadding.right;this.contentSize.h+=contentDivPadding.bottom+contentDivPadding.top;}\nif(this.div!=null){this.div.style.width=this.size.w+\"px\";this.div.style.height=this.size.h+\"px\";}\nif(this.contentDiv!=null){this.contentDiv.style.width=contentSize.w+\"px\";this.contentDiv.style.height=contentSize.h+\"px\";}},updateSize:function(){var preparedHTML=\"<div class='\"+this.contentDisplayClass+\"'>\"+\nthis.contentDiv.innerHTML+\"</div>\";var containerElement=(this.map)?this.map.layerContainerDiv:document.body;var realSize=OpenLayers.Util.getRenderedDimensions(preparedHTML,null,{displayClass:this.displayClass,containerElement:containerElement});var safeSize=this.getSafeContentSize(realSize);var newSize=null;if(safeSize.equals(realSize)){newSize=realSize;}else{var fixedSize=new OpenLayers.Size();fixedSize.w=(safeSize.w<realSize.w)?safeSize.w:null;fixedSize.h=(safeSize.h<realSize.h)?safeSize.h:null;if(fixedSize.w&&fixedSize.h){newSize=safeSize;}else{var clippedSize=OpenLayers.Util.getRenderedDimensions(preparedHTML,fixedSize,{displayClass:this.contentDisplayClass,containerElement:containerElement});var currentOverflow=OpenLayers.Element.getStyle(this.contentDiv,\"overflow\");if((currentOverflow!=\"hidden\")&&(clippedSize.equals(safeSize))){var scrollBar=OpenLayers.Util.getScrollbarWidth();if(fixedSize.w){clippedSize.h+=scrollBar;}else{clippedSize.w+=scrollBar;}}\nnewSize=this.getSafeContentSize(clippedSize);}}\nthis.setSize(newSize);},setBackgroundColor:function(color){if(color!=undefined){this.backgroundColor=color;}\nif(this.div!=null){this.div.style.backgroundColor=this.backgroundColor;}},setOpacity:function(opacity){if(opacity!=undefined){this.opacity=opacity;}\nif(this.div!=null){this.div.style.opacity=this.opacity;this.div.style.filter='alpha(opacity='+this.opacity*100+')';}},setBorder:function(border){if(border!=undefined){this.border=border;}\nif(this.div!=null){this.div.style.border=this.border;}},setContentHTML:function(contentHTML){if(contentHTML!=null){this.contentHTML=contentHTML;}\nif((this.contentDiv!=null)&&(this.contentHTML!=null)&&(this.contentHTML!=this.contentDiv.innerHTML)){this.contentDiv.innerHTML=this.contentHTML;if(this.autoSize){this.registerImageListeners();this.updateSize();}}},registerImageListeners:function(){var onImgLoad=function(){this.popup.updateSize();if(this.popup.visible()&&this.popup.panMapIfOutOfView){this.popup.panIntoView();}\nOpenLayers.Event.stopObserving(this.img,\"load\",this.img._onImageLoad);};var images=this.contentDiv.getElementsByTagName(\"img\");for(var i=0,len=images.length;i<len;i++){var img=images[i];if(img.width==0||img.height==0){var context={'popup':this,'img':img};img._onImgLoad=OpenLayers.Function.bind(onImgLoad,context);OpenLayers.Event.observe(img,'load',img._onImgLoad);}}},getSafeContentSize:function(size){var safeContentSize=size.clone();var contentDivPadding=this.getContentDivPadding();var wPadding=contentDivPadding.left+contentDivPadding.right;var hPadding=contentDivPadding.top+contentDivPadding.bottom;this.fixPadding();wPadding+=this.padding.left+this.padding.right;hPadding+=this.padding.top+this.padding.bottom;if(this.closeDiv){var closeDivWidth=parseInt(this.closeDiv.style.width);wPadding+=closeDivWidth+contentDivPadding.right;}\nif(this.minSize){safeContentSize.w=Math.max(safeContentSize.w,(this.minSize.w-wPadding));safeContentSize.h=Math.max(safeContentSize.h,(this.minSize.h-hPadding));}\nif(this.maxSize){safeContentSize.w=Math.min(safeContentSize.w,(this.maxSize.w-wPadding));safeContentSize.h=Math.min(safeContentSize.h,(this.maxSize.h-hPadding));}\nif(this.map&&this.map.size){var extraX=0,extraY=0;if(this.keepInMap&&!this.panMapIfOutOfView){var px=this.map.getPixelFromLonLat(this.lonlat);switch(this.relativePosition){case\"tr\":extraX=px.x;extraY=this.map.size.h-px.y;break;case\"tl\":extraX=this.map.size.w-px.x;extraY=this.map.size.h-px.y;break;case\"bl\":extraX=this.map.size.w-px.x;extraY=px.y;break;case\"br\":extraX=px.x;extraY=px.y;break;default:extraX=px.x;extraY=this.map.size.h-px.y;break;}}\nvar maxY=this.map.size.h-\nthis.map.paddingForPopups.top-\nthis.map.paddingForPopups.bottom-\nhPadding-extraY;var maxX=this.map.size.w-\nthis.map.paddingForPopups.left-\nthis.map.paddingForPopups.right-\nwPadding-extraX;safeContentSize.w=Math.min(safeContentSize.w,maxX);safeContentSize.h=Math.min(safeContentSize.h,maxY);}\nreturn safeContentSize;},getContentDivPadding:function(){var contentDivPadding=this._contentDivPadding;if(!contentDivPadding){if(this.div.parentNode==null){this.div.style.display=\"none\";document.body.appendChild(this.div);}\ncontentDivPadding=new OpenLayers.Bounds(OpenLayers.Element.getStyle(this.contentDiv,\"padding-left\"),OpenLayers.Element.getStyle(this.contentDiv,\"padding-bottom\"),OpenLayers.Element.getStyle(this.contentDiv,\"padding-right\"),OpenLayers.Element.getStyle(this.contentDiv,\"padding-top\"));this._contentDivPadding=contentDivPadding;if(this.div.parentNode==document.body){document.body.removeChild(this.div);this.div.style.display=\"\";}}\nreturn contentDivPadding;},addCloseBox:function(callback){this.closeDiv=OpenLayers.Util.createDiv(this.id+\"_close\",null,new OpenLayers.Size(17,17));this.closeDiv.className=\"olPopupCloseBox\";var contentDivPadding=this.getContentDivPadding();this.closeDiv.style.right=contentDivPadding.right+\"px\";this.closeDiv.style.top=contentDivPadding.top+\"px\";this.groupDiv.appendChild(this.closeDiv);var closePopup=callback||function(e){this.hide();OpenLayers.Event.stop(e);};OpenLayers.Event.observe(this.closeDiv,\"click\",OpenLayers.Function.bindAsEventListener(closePopup,this));},panIntoView:function(){var mapSize=this.map.getSize();var origTL=this.map.getViewPortPxFromLayerPx(new OpenLayers.Pixel(parseInt(this.div.style.left),parseInt(this.div.style.top)));var newTL=origTL.clone();if(origTL.x<this.map.paddingForPopups.left){newTL.x=this.map.paddingForPopups.left;}else\nif((origTL.x+this.size.w)>(mapSize.w-this.map.paddingForPopups.right)){newTL.x=mapSize.w-this.map.paddingForPopups.right-this.size.w;}\nif(origTL.y<this.map.paddingForPopups.top){newTL.y=this.map.paddingForPopups.top;}else\nif((origTL.y+this.size.h)>(mapSize.h-this.map.paddingForPopups.bottom)){newTL.y=mapSize.h-this.map.paddingForPopups.bottom-this.size.h;}\nvar dx=origTL.x-newTL.x;var dy=origTL.y-newTL.y;this.map.pan(dx,dy);},registerEvents:function(){this.events=new OpenLayers.Events(this,this.div,null,true);this.events.on({\"mousedown\":this.onmousedown,\"mousemove\":this.onmousemove,\"mouseup\":this.onmouseup,\"click\":this.onclick,\"mouseout\":this.onmouseout,\"dblclick\":this.ondblclick,scope:this});},onmousedown:function(evt){this.mousedown=true;OpenLayers.Event.stop(evt,true);},onmousemove:function(evt){if(this.mousedown){OpenLayers.Event.stop(evt,true);}},onmouseup:function(evt){if(this.mousedown){this.mousedown=false;OpenLayers.Event.stop(evt,true);}},onclick:function(evt){OpenLayers.Event.stop(evt,true);},onmouseout:function(evt){this.mousedown=false;},ondblclick:function(evt){OpenLayers.Event.stop(evt,true);},CLASS_NAME:\"OpenLayers.Popup\"});OpenLayers.Popup.WIDTH=200;OpenLayers.Popup.HEIGHT=200;OpenLayers.Popup.COLOR=\"white\";OpenLayers.Popup.OPACITY=1;OpenLayers.Popup.BORDER=\"0px\";OpenLayers.Protocol=OpenLayers.Class({format:null,options:null,autoDestroy:true,defaultFilter:null,initialize:function(options){options=options||{};OpenLayers.Util.extend(this,options);this.options=options;},mergeWithDefaultFilter:function(filter){var merged;if(filter&&this.defaultFilter){merged=new OpenLayers.Filter.Logical({type:OpenLayers.Filter.Logical.AND,filters:[this.defaultFilter,filter]});}else{merged=filter||this.defaultFilter||undefined;}\nreturn merged;},destroy:function(){this.options=null;this.format=null;},read:function(options){options=options||{};options.filter=this.mergeWithDefaultFilter(options.filter);},create:function(){},update:function(){},\"delete\":function(){},commit:function(){},abort:function(response){},createCallback:function(method,response,options){return OpenLayers.Function.bind(function(){method.apply(this,[response,options]);},this);},CLASS_NAME:\"OpenLayers.Protocol\"});OpenLayers.Protocol.Response=OpenLayers.Class({code:null,requestType:null,last:true,features:null,reqFeatures:null,priv:null,initialize:function(options){OpenLayers.Util.extend(this,options);},success:function(){return this.code>0;},CLASS_NAME:\"OpenLayers.Protocol.Response\"});OpenLayers.Protocol.Response.SUCCESS=1;OpenLayers.Protocol.Response.FAILURE=0;OpenLayers.Renderer=OpenLayers.Class({container:null,root:null,extent:null,locked:false,size:null,resolution:null,map:null,initialize:function(containerID,options){this.container=OpenLayers.Util.getElement(containerID);},destroy:function(){this.container=null;this.extent=null;this.size=null;this.resolution=null;this.map=null;},supported:function(){return false;},setExtent:function(extent,resolutionChanged){this.extent=extent.clone();if(resolutionChanged){this.resolution=null;}},setSize:function(size){this.size=size.clone();this.resolution=null;},getResolution:function(){this.resolution=this.resolution||this.map.getResolution();return this.resolution;},drawFeature:function(feature,style){if(style==null){style=feature.style;}\nif(feature.geometry){var bounds=feature.geometry.getBounds();if(bounds){if(!bounds.intersectsBounds(this.extent)){style={display:\"none\"};}\nvar rendered=this.drawGeometry(feature.geometry,style,feature.id);if(style.display!=\"none\"&&style.label&&rendered!==false){var location=feature.geometry.getCentroid();if(style.labelXOffset||style.labelYOffset){xOffset=isNaN(style.labelXOffset)?0:style.labelXOffset;yOffset=isNaN(style.labelYOffset)?0:style.labelYOffset;var res=this.getResolution();location.move(xOffset*res,yOffset*res);}\nthis.drawText(feature.id,style,location);}else{this.removeText(feature.id);}\nreturn rendered;}}},drawGeometry:function(geometry,style,featureId){},drawText:function(featureId,style,location){},removeText:function(featureId){},clear:function(){},getFeatureIdFromEvent:function(evt){},eraseFeatures:function(features){if(!(features instanceof Array)){features=[features];}\nfor(var i=0,len=features.length;i<len;++i){var feature=features[i];this.eraseGeometry(feature.geometry,feature.id);this.removeText(feature.id);}},eraseGeometry:function(geometry,featureId){},moveRoot:function(renderer){},getRenderLayerId:function(){return this.container.id;},applyDefaultSymbolizer:function(symbolizer){var result=OpenLayers.Util.extend({},OpenLayers.Renderer.defaultSymbolizer);if(symbolizer.stroke===false){delete result.strokeWidth;delete result.strokeColor;}\nif(symbolizer.fill===false){delete result.fillColor;}\nOpenLayers.Util.extend(result,symbolizer);return result;},CLASS_NAME:\"OpenLayers.Renderer\"});OpenLayers.Renderer.defaultSymbolizer={fillColor:\"#000000\",strokeColor:\"#000000\",strokeWidth:2,fillOpacity:1,strokeOpacity:1,pointRadius:0};OpenLayers.Strategy=OpenLayers.Class({layer:null,options:null,active:null,autoActivate:true,autoDestroy:true,initialize:function(options){OpenLayers.Util.extend(this,options);this.options=options;this.active=false;},destroy:function(){this.deactivate();this.layer=null;this.options=null;},setLayer:function(layer){this.layer=layer;},activate:function(){if(!this.active){this.active=true;return true;}\nreturn false;},deactivate:function(){if(this.active){this.active=false;return true;}\nreturn false;},CLASS_NAME:\"OpenLayers.Strategy\"});OpenLayers.Symbolizer=OpenLayers.Class({zIndex:0,initialize:function(config){OpenLayers.Util.extend(this,config);},clone:function(){var Type=eval(this.CLASS_NAME);return new Type(OpenLayers.Util.extend({},this));},CLASS_NAME:\"OpenLayers.Symbolizer\"});OpenLayers.Rico.Color=OpenLayers.Class({initialize:function(red,green,blue){this.rgb={r:red,g:green,b:blue};},setRed:function(r){this.rgb.r=r;},setGreen:function(g){this.rgb.g=g;},setBlue:function(b){this.rgb.b=b;},setHue:function(h){var hsb=this.asHSB();hsb.h=h;this.rgb=OpenLayers.Rico.Color.HSBtoRGB(hsb.h,hsb.s,hsb.b);},setSaturation:function(s){var hsb=this.asHSB();hsb.s=s;this.rgb=OpenLayers.Rico.Color.HSBtoRGB(hsb.h,hsb.s,hsb.b);},setBrightness:function(b){var hsb=this.asHSB();hsb.b=b;this.rgb=OpenLayers.Rico.Color.HSBtoRGB(hsb.h,hsb.s,hsb.b);},darken:function(percent){var hsb=this.asHSB();this.rgb=OpenLayers.Rico.Color.HSBtoRGB(hsb.h,hsb.s,Math.max(hsb.b-percent,0));},brighten:function(percent){var hsb=this.asHSB();this.rgb=OpenLayers.Rico.Color.HSBtoRGB(hsb.h,hsb.s,Math.min(hsb.b+percent,1));},blend:function(other){this.rgb.r=Math.floor((this.rgb.r+other.rgb.r)/2);this.rgb.g=Math.floor((this.rgb.g+other.rgb.g)/2);this.rgb.b=Math.floor((this.rgb.b+other.rgb.b)/2);},isBright:function(){var hsb=this.asHSB();return this.asHSB().b>0.5;},isDark:function(){return!this.isBright();},asRGB:function(){return\"rgb(\"+this.rgb.r+\",\"+this.rgb.g+\",\"+this.rgb.b+\")\";},asHex:function(){return\"#\"+this.rgb.r.toColorPart()+this.rgb.g.toColorPart()+this.rgb.b.toColorPart();},asHSB:function(){return OpenLayers.Rico.Color.RGBtoHSB(this.rgb.r,this.rgb.g,this.rgb.b);},toString:function(){return this.asHex();}});OpenLayers.Rico.Color.createFromHex=function(hexCode){if(hexCode.length==4){var shortHexCode=hexCode;var hexCode='#';for(var i=1;i<4;i++){hexCode+=(shortHexCode.charAt(i)+\nshortHexCode.charAt(i));}}\nif(hexCode.indexOf('#')==0){hexCode=hexCode.substring(1);}\nvar red=hexCode.substring(0,2);var green=hexCode.substring(2,4);var blue=hexCode.substring(4,6);return new OpenLayers.Rico.Color(parseInt(red,16),parseInt(green,16),parseInt(blue,16));};OpenLayers.Rico.Color.createColorFromBackground=function(elem){var actualColor=RicoUtil.getElementsComputedStyle(OpenLayers.Util.getElement(elem),\"backgroundColor\",\"background-color\");if(actualColor==\"transparent\"&&elem.parentNode){return OpenLayers.Rico.Color.createColorFromBackground(elem.parentNode);}\nif(actualColor==null){return new OpenLayers.Rico.Color(255,255,255);}\nif(actualColor.indexOf(\"rgb(\")==0){var colors=actualColor.substring(4,actualColor.length-1);var colorArray=colors.split(\",\");return new OpenLayers.Rico.Color(parseInt(colorArray[0]),parseInt(colorArray[1]),parseInt(colorArray[2]));}\nelse if(actualColor.indexOf(\"#\")==0){return OpenLayers.Rico.Color.createFromHex(actualColor);}\nelse{return new OpenLayers.Rico.Color(255,255,255);}};OpenLayers.Rico.Color.HSBtoRGB=function(hue,saturation,brightness){var red=0;var green=0;var blue=0;if(saturation==0){red=parseInt(brightness*255.0+0.5);green=red;blue=red;}\nelse{var h=(hue-Math.floor(hue))*6.0;var f=h-Math.floor(h);var p=brightness*(1.0-saturation);var q=brightness*(1.0-saturation*f);var t=brightness*(1.0-(saturation*(1.0-f)));switch(parseInt(h)){case 0:red=(brightness*255.0+0.5);green=(t*255.0+0.5);blue=(p*255.0+0.5);break;case 1:red=(q*255.0+0.5);green=(brightness*255.0+0.5);blue=(p*255.0+0.5);break;case 2:red=(p*255.0+0.5);green=(brightness*255.0+0.5);blue=(t*255.0+0.5);break;case 3:red=(p*255.0+0.5);green=(q*255.0+0.5);blue=(brightness*255.0+0.5);break;case 4:red=(t*255.0+0.5);green=(p*255.0+0.5);blue=(brightness*255.0+0.5);break;case 5:red=(brightness*255.0+0.5);green=(p*255.0+0.5);blue=(q*255.0+0.5);break;}}\nreturn{r:parseInt(red),g:parseInt(green),b:parseInt(blue)};};OpenLayers.Rico.Color.RGBtoHSB=function(r,g,b){var hue;var saturation;var brightness;var cmax=(r>g)?r:g;if(b>cmax){cmax=b;}\nvar cmin=(r<g)?r:g;if(b<cmin){cmin=b;}\nbrightness=cmax/255.0;if(cmax!=0){saturation=(cmax-cmin)/cmax;}else{saturation=0;}\nif(saturation==0){hue=0;}else{var redc=(cmax-r)/(cmax-cmin);var greenc=(cmax-g)/(cmax-cmin);var bluec=(cmax-b)/(cmax-cmin);if(r==cmax){hue=bluec-greenc;}else if(g==cmax){hue=2.0+redc-bluec;}else{hue=4.0+greenc-redc;}\nhue=hue/6.0;if(hue<0){hue=hue+1.0;}}\nreturn{h:hue,s:saturation,b:brightness};};OpenLayers.Bounds=OpenLayers.Class({left:null,bottom:null,right:null,top:null,centerLonLat:null,initialize:function(left,bottom,right,top){if(left!=null){this.left=OpenLayers.Util.toFloat(left);}\nif(bottom!=null){this.bottom=OpenLayers.Util.toFloat(bottom);}\nif(right!=null){this.right=OpenLayers.Util.toFloat(right);}\nif(top!=null){this.top=OpenLayers.Util.toFloat(top);}},clone:function(){return new OpenLayers.Bounds(this.left,this.bottom,this.right,this.top);},equals:function(bounds){var equals=false;if(bounds!=null){equals=((this.left==bounds.left)&&(this.right==bounds.right)&&(this.top==bounds.top)&&(this.bottom==bounds.bottom));}\nreturn equals;},toString:function(){return(\"left-bottom=(\"+this.left+\",\"+this.bottom+\")\"\n+\" right-top=(\"+this.right+\",\"+this.top+\")\");},toArray:function(reverseAxisOrder){if(reverseAxisOrder===true){return[this.bottom,this.left,this.top,this.right];}else{return[this.left,this.bottom,this.right,this.top];}},toBBOX:function(decimal,reverseAxisOrder){if(decimal==null){decimal=6;}\nvar mult=Math.pow(10,decimal);var xmin=Math.round(this.left*mult)/mult;var ymin=Math.round(this.bottom*mult)/mult;var xmax=Math.round(this.right*mult)/mult;var ymax=Math.round(this.top*mult)/mult;if(reverseAxisOrder===true){return ymin+\",\"+xmin+\",\"+ymax+\",\"+xmax;}else{return xmin+\",\"+ymin+\",\"+xmax+\",\"+ymax;}},toGeometry:function(){return new OpenLayers.Geometry.Polygon([new OpenLayers.Geometry.LinearRing([new OpenLayers.Geometry.Point(this.left,this.bottom),new OpenLayers.Geometry.Point(this.right,this.bottom),new OpenLayers.Geometry.Point(this.right,this.top),new OpenLayers.Geometry.Point(this.left,this.top)])]);},getWidth:function(){return(this.right-this.left);},getHeight:function(){return(this.top-this.bottom);},getSize:function(){return new OpenLayers.Size(this.getWidth(),this.getHeight());},getCenterPixel:function(){return new OpenLayers.Pixel((this.left+this.right)/2,(this.bottom+this.top)/2);},getCenterLonLat:function(){if(!this.centerLonLat){this.centerLonLat=new OpenLayers.LonLat((this.left+this.right)/2,(this.bottom+this.top)/2);}\nreturn this.centerLonLat;},scale:function(ratio,origin){if(origin==null){origin=this.getCenterLonLat();}\nvar origx,origy;if(origin.CLASS_NAME==\"OpenLayers.LonLat\"){origx=origin.lon;origy=origin.lat;}else{origx=origin.x;origy=origin.y;}\nvar left=(this.left-origx)*ratio+origx;var bottom=(this.bottom-origy)*ratio+origy;var right=(this.right-origx)*ratio+origx;var top=(this.top-origy)*ratio+origy;return new OpenLayers.Bounds(left,bottom,right,top);},add:function(x,y){if((x==null)||(y==null)){var msg=OpenLayers.i18n(\"boundsAddError\");OpenLayers.Console.error(msg);return null;}\nreturn new OpenLayers.Bounds(this.left+x,this.bottom+y,this.right+x,this.top+y);},extend:function(object){var bounds=null;if(object){switch(object.CLASS_NAME){case\"OpenLayers.LonLat\":bounds=new OpenLayers.Bounds(object.lon,object.lat,object.lon,object.lat);break;case\"OpenLayers.Geometry.Point\":bounds=new OpenLayers.Bounds(object.x,object.y,object.x,object.y);break;case\"OpenLayers.Bounds\":bounds=object;break;}\nif(bounds){this.centerLonLat=null;if((this.left==null)||(bounds.left<this.left)){this.left=bounds.left;}\nif((this.bottom==null)||(bounds.bottom<this.bottom)){this.bottom=bounds.bottom;}\nif((this.right==null)||(bounds.right>this.right)){this.right=bounds.right;}\nif((this.top==null)||(bounds.top>this.top)){this.top=bounds.top;}}}},containsLonLat:function(ll,inclusive){return this.contains(ll.lon,ll.lat,inclusive);},containsPixel:function(px,inclusive){return this.contains(px.x,px.y,inclusive);},contains:function(x,y,inclusive){if(inclusive==null){inclusive=true;}\nif(x==null||y==null){return false;}\nx=OpenLayers.Util.toFloat(x);y=OpenLayers.Util.toFloat(y);var contains=false;if(inclusive){contains=((x>=this.left)&&(x<=this.right)&&(y>=this.bottom)&&(y<=this.top));}else{contains=((x>this.left)&&(x<this.right)&&(y>this.bottom)&&(y<this.top));}\nreturn contains;},intersectsBounds:function(bounds,inclusive){if(inclusive==null){inclusive=true;}\nvar intersects=false;var mightTouch=(this.left==bounds.right||this.right==bounds.left||this.top==bounds.bottom||this.bottom==bounds.top);if(inclusive||!mightTouch){var inBottom=(((bounds.bottom>=this.bottom)&&(bounds.bottom<=this.top))||((this.bottom>=bounds.bottom)&&(this.bottom<=bounds.top)));var inTop=(((bounds.top>=this.bottom)&&(bounds.top<=this.top))||((this.top>bounds.bottom)&&(this.top<bounds.top)));var inLeft=(((bounds.left>=this.left)&&(bounds.left<=this.right))||((this.left>=bounds.left)&&(this.left<=bounds.right)));var inRight=(((bounds.right>=this.left)&&(bounds.right<=this.right))||((this.right>=bounds.left)&&(this.right<=bounds.right)));intersects=((inBottom||inTop)&&(inLeft||inRight));}\nreturn intersects;},containsBounds:function(bounds,partial,inclusive){if(partial==null){partial=false;}\nif(inclusive==null){inclusive=true;}\nvar bottomLeft=this.contains(bounds.left,bounds.bottom,inclusive);var bottomRight=this.contains(bounds.right,bounds.bottom,inclusive);var topLeft=this.contains(bounds.left,bounds.top,inclusive);var topRight=this.contains(bounds.right,bounds.top,inclusive);return(partial)?(bottomLeft||bottomRight||topLeft||topRight):(bottomLeft&&bottomRight&&topLeft&&topRight);},determineQuadrant:function(lonlat){var quadrant=\"\";var center=this.getCenterLonLat();quadrant+=(lonlat.lat<center.lat)?\"b\":\"t\";quadrant+=(lonlat.lon<center.lon)?\"l\":\"r\";return quadrant;},transform:function(source,dest){this.centerLonLat=null;var ll=OpenLayers.Projection.transform({'x':this.left,'y':this.bottom},source,dest);var lr=OpenLayers.Projection.transform({'x':this.right,'y':this.bottom},source,dest);var ul=OpenLayers.Projection.transform({'x':this.left,'y':this.top},source,dest);var ur=OpenLayers.Projection.transform({'x':this.right,'y':this.top},source,dest);this.left=Math.min(ll.x,ul.x);this.bottom=Math.min(ll.y,lr.y);this.right=Math.max(lr.x,ur.x);this.top=Math.max(ul.y,ur.y);return this;},wrapDateLine:function(maxExtent,options){options=options||{};var leftTolerance=options.leftTolerance||0;var rightTolerance=options.rightTolerance||0;var newBounds=this.clone();if(maxExtent){while(newBounds.left<maxExtent.left&&(newBounds.right-rightTolerance)<=maxExtent.left){newBounds=newBounds.add(maxExtent.getWidth(),0);}\nwhile((newBounds.left+leftTolerance)>=maxExtent.right&&newBounds.right>maxExtent.right){newBounds=newBounds.add(-maxExtent.getWidth(),0);}}\nreturn newBounds;},CLASS_NAME:\"OpenLayers.Bounds\"});OpenLayers.Bounds.fromString=function(str){var bounds=str.split(\",\");return OpenLayers.Bounds.fromArray(bounds);};OpenLayers.Bounds.fromArray=function(bbox){return new OpenLayers.Bounds(parseFloat(bbox[0]),parseFloat(bbox[1]),parseFloat(bbox[2]),parseFloat(bbox[3]));};OpenLayers.Bounds.fromSize=function(size){return new OpenLayers.Bounds(0,size.h,size.w,0);};OpenLayers.Bounds.oppositeQuadrant=function(quadrant){var opp=\"\";opp+=(quadrant.charAt(0)=='t')?'b':'t';opp+=(quadrant.charAt(1)=='l')?'r':'l';return opp;};OpenLayers.LonLat=OpenLayers.Class({lon:0.0,lat:0.0,initialize:function(lon,lat){this.lon=OpenLayers.Util.toFloat(lon);this.lat=OpenLayers.Util.toFloat(lat);},toString:function(){return(\"lon=\"+this.lon+\",lat=\"+this.lat);},toShortString:function(){return(this.lon+\", \"+this.lat);},clone:function(){return new OpenLayers.LonLat(this.lon,this.lat);},add:function(lon,lat){if((lon==null)||(lat==null)){var msg=OpenLayers.i18n(\"lonlatAddError\");OpenLayers.Console.error(msg);return null;}\nreturn new OpenLayers.LonLat(this.lon+OpenLayers.Util.toFloat(lon),this.lat+OpenLayers.Util.toFloat(lat));},equals:function(ll){var equals=false;if(ll!=null){equals=((this.lon==ll.lon&&this.lat==ll.lat)||(isNaN(this.lon)&&isNaN(this.lat)&&isNaN(ll.lon)&&isNaN(ll.lat)));}\nreturn equals;},transform:function(source,dest){var point=OpenLayers.Projection.transform({'x':this.lon,'y':this.lat},source,dest);this.lon=point.x;this.lat=point.y;return this;},wrapDateLine:function(maxExtent){var newLonLat=this.clone();if(maxExtent){while(newLonLat.lon<maxExtent.left){newLonLat.lon+=maxExtent.getWidth();}\nwhile(newLonLat.lon>maxExtent.right){newLonLat.lon-=maxExtent.getWidth();}}\nreturn newLonLat;},CLASS_NAME:\"OpenLayers.LonLat\"});OpenLayers.LonLat.fromString=function(str){var pair=str.split(\",\");return new OpenLayers.LonLat(pair[0],pair[1]);};OpenLayers.Pixel=OpenLayers.Class({x:0.0,y:0.0,initialize:function(x,y){this.x=parseFloat(x);this.y=parseFloat(y);},toString:function(){return(\"x=\"+this.x+\",y=\"+this.y);},clone:function(){return new OpenLayers.Pixel(this.x,this.y);},equals:function(px){var equals=false;if(px!=null){equals=((this.x==px.x&&this.y==px.y)||(isNaN(this.x)&&isNaN(this.y)&&isNaN(px.x)&&isNaN(px.y)));}\nreturn equals;},add:function(x,y){if((x==null)||(y==null)){var msg=OpenLayers.i18n(\"pixelAddError\");OpenLayers.Console.error(msg);return null;}\nreturn new OpenLayers.Pixel(this.x+x,this.y+y);},offset:function(px){var newPx=this.clone();if(px){newPx=this.add(px.x,px.y);}\nreturn newPx;},CLASS_NAME:\"OpenLayers.Pixel\"});OpenLayers.Control=OpenLayers.Class({id:null,map:null,div:null,type:null,allowSelection:false,displayClass:\"\",title:\"\",autoActivate:false,active:null,handler:null,eventListeners:null,events:null,EVENT_TYPES:[\"activate\",\"deactivate\"],initialize:function(options){this.displayClass=this.CLASS_NAME.replace(\"OpenLayers.\",\"ol\").replace(/\\./g,\"\");OpenLayers.Util.extend(this,options);this.events=new OpenLayers.Events(this,null,this.EVENT_TYPES);if(this.eventListeners instanceof Object){this.events.on(this.eventListeners);}\nif(this.id==null){this.id=OpenLayers.Util.createUniqueID(this.CLASS_NAME+\"_\");}},destroy:function(){if(this.events){if(this.eventListeners){this.events.un(this.eventListeners);}\nthis.events.destroy();this.events=null;}\nthis.eventListeners=null;if(this.handler){this.handler.destroy();this.handler=null;}\nif(this.handlers){for(var key in this.handlers){if(this.handlers.hasOwnProperty(key)&&typeof this.handlers[key].destroy==\"function\"){this.handlers[key].destroy();}}\nthis.handlers=null;}\nif(this.map){this.map.removeControl(this);this.map=null;}},setMap:function(map){this.map=map;if(this.handler){this.handler.setMap(map);}},draw:function(px){if(this.div==null){this.div=OpenLayers.Util.createDiv(this.id);this.div.className=this.displayClass;if(!this.allowSelection){this.div.className+=\" olControlNoSelect\";this.div.setAttribute(\"unselectable\",\"on\",0);this.div.onselectstart=OpenLayers.Function.False;}\nif(this.title!=\"\"){this.div.title=this.title;}}\nif(px!=null){this.position=px.clone();}\nthis.moveTo(this.position);return this.div;},moveTo:function(px){if((px!=null)&&(this.div!=null)){this.div.style.left=px.x+\"px\";this.div.style.top=px.y+\"px\";}},activate:function(){if(this.active){return false;}\nif(this.handler){this.handler.activate();}\nthis.active=true;if(this.map){OpenLayers.Element.addClass(this.map.viewPortDiv,this.displayClass.replace(/ /g,\"\")+\"Active\");}\nthis.events.triggerEvent(\"activate\");return true;},deactivate:function(){if(this.active){if(this.handler){this.handler.deactivate();}\nthis.active=false;if(this.map){OpenLayers.Element.removeClass(this.map.viewPortDiv,this.displayClass.replace(/ /g,\"\")+\"Active\");}\nthis.events.triggerEvent(\"deactivate\");return true;}\nreturn false;},CLASS_NAME:\"OpenLayers.Control\"});OpenLayers.Control.TYPE_BUTTON=1;OpenLayers.Control.TYPE_TOGGLE=2;OpenLayers.Control.TYPE_TOOL=3;OpenLayers.Lang={code:null,defaultCode:\"en\",getCode:function(){if(!OpenLayers.Lang.code){OpenLayers.Lang.setCode();}\nreturn OpenLayers.Lang.code;},setCode:function(code){var lang;if(!code){code=(OpenLayers.Util.getBrowserName()==\"msie\")?navigator.userLanguage:navigator.language;}\nvar parts=code.split('-');parts[0]=parts[0].toLowerCase();if(typeof OpenLayers.Lang[parts[0]]==\"object\"){lang=parts[0];}\nif(parts[1]){var testLang=parts[0]+'-'+parts[1].toUpperCase();if(typeof OpenLayers.Lang[testLang]==\"object\"){lang=testLang;}}\nif(!lang){OpenLayers.Console.warn('Failed to find OpenLayers.Lang.'+parts.join(\"-\")+' dictionary, falling back to default language');lang=OpenLayers.Lang.defaultCode;}\nOpenLayers.Lang.code=lang;},translate:function(key,context){var dictionary=OpenLayers.Lang[OpenLayers.Lang.getCode()];var message=dictionary[key];if(!message){message=key;}\nif(context){message=OpenLayers.String.format(message,context);}\nreturn message;}};OpenLayers.i18n=OpenLayers.Lang.translate;OpenLayers.Popup.Anchored=OpenLayers.Class(OpenLayers.Popup,{relativePosition:null,keepInMap:true,anchor:null,initialize:function(id,lonlat,contentSize,contentHTML,anchor,closeBox,closeBoxCallback){var newArguments=[id,lonlat,contentSize,contentHTML,closeBox,closeBoxCallback];OpenLayers.Popup.prototype.initialize.apply(this,newArguments);this.anchor=(anchor!=null)?anchor:{size:new OpenLayers.Size(0,0),offset:new OpenLayers.Pixel(0,0)};},destroy:function(){this.anchor=null;this.relativePosition=null;OpenLayers.Popup.prototype.destroy.apply(this,arguments);},show:function(){this.updatePosition();OpenLayers.Popup.prototype.show.apply(this,arguments);},moveTo:function(px){var oldRelativePosition=this.relativePosition;this.relativePosition=this.calculateRelativePosition(px);var newPx=this.calculateNewPx(px);var newArguments=new Array(newPx);OpenLayers.Popup.prototype.moveTo.apply(this,newArguments);if(this.relativePosition!=oldRelativePosition){this.updateRelativePosition();}},setSize:function(contentSize){OpenLayers.Popup.prototype.setSize.apply(this,arguments);if((this.lonlat)&&(this.map)){var px=this.map.getLayerPxFromLonLat(this.lonlat);this.moveTo(px);}},calculateRelativePosition:function(px){var lonlat=this.map.getLonLatFromLayerPx(px);var extent=this.map.getExtent();var quadrant=extent.determineQuadrant(lonlat);return OpenLayers.Bounds.oppositeQuadrant(quadrant);},updateRelativePosition:function(){},calculateNewPx:function(px){var newPx=px.offset(this.anchor.offset);var size=this.size||this.contentSize;var top=(this.relativePosition.charAt(0)=='t');newPx.y+=(top)?-(size.h+this.anchor.size.h):this.anchor.size.h;var left=(this.relativePosition.charAt(1)=='l');newPx.x+=(left)?-(size.w+this.anchor.size.w):this.anchor.size.w;return newPx;},CLASS_NAME:\"OpenLayers.Popup.Anchored\"});OpenLayers.Protocol.SOS=function(options){options=OpenLayers.Util.applyDefaults(options,OpenLayers.Protocol.SOS.DEFAULTS);var cls=OpenLayers.Protocol.SOS[\"v\"+options.version.replace(/\\./g,\"_\")];if(!cls){throw\"Unsupported SOS version: \"+options.version;}\nreturn new cls(options);};OpenLayers.Protocol.SOS.DEFAULTS={\"version\":\"1.0.0\"};OpenLayers.Protocol.SQL=OpenLayers.Class(OpenLayers.Protocol,{databaseName:'ol',tableName:\"ol_vector_features\",postReadFiltering:true,initialize:function(options){OpenLayers.Protocol.prototype.initialize.apply(this,[options]);},destroy:function(){OpenLayers.Protocol.prototype.destroy.apply(this);},supported:function(){return false;},evaluateFilter:function(feature,filter){return filter&&this.postReadFiltering?filter.evaluate(feature):true;},CLASS_NAME:\"OpenLayers.Protocol.SQL\"});OpenLayers.Protocol.WFS=function(options){options=OpenLayers.Util.applyDefaults(options,OpenLayers.Protocol.WFS.DEFAULTS);var cls=OpenLayers.Protocol.WFS[\"v\"+options.version.replace(/\\./g,\"_\")];if(!cls){throw\"Unsupported WFS version: \"+options.version;}\nreturn new cls(options);};OpenLayers.Protocol.WFS.fromWMSLayer=function(layer,options){var typeName,featurePrefix;var param=layer.params[\"LAYERS\"];var parts=(param instanceof Array?param[0]:param).split(\":\");if(parts.length>1){featurePrefix=parts[0];}\ntypeName=parts.pop();var protocolOptions={url:layer.url,featureType:typeName,featurePrefix:featurePrefix,srsName:layer.projection&&layer.projection.getCode()||layer.map&&layer.map.getProjectionObject().getCode(),version:\"1.1.0\"};return new OpenLayers.Protocol.WFS(OpenLayers.Util.applyDefaults(options,protocolOptions));};OpenLayers.Protocol.WFS.DEFAULTS={\"version\":\"1.0.0\"};OpenLayers.Renderer.Canvas=OpenLayers.Class(OpenLayers.Renderer,{canvas:null,features:null,initialize:function(containerID){OpenLayers.Renderer.prototype.initialize.apply(this,arguments);this.root=document.createElement(\"canvas\");this.container.appendChild(this.root);this.canvas=this.root.getContext(\"2d\");this.features={};},eraseGeometry:function(geometry,featureId){this.eraseFeatures(this.features[featureId][0]);},supported:function(){var canvas=document.createElement(\"canvas\");return!!canvas.getContext;},setExtent:function(extent){this.extent=extent.clone();this.resolution=null;this.redraw();},setSize:function(size){this.size=size.clone();this.root.style.width=size.w+\"px\";this.root.style.height=size.h+\"px\";this.root.width=size.w;this.root.height=size.h;this.resolution=null;},drawFeature:function(feature,style){style=style||feature.style;style=this.applyDefaultSymbolizer(style);this.features[feature.id]=[feature,style];this.redraw();},drawGeometry:function(geometry,style){var className=geometry.CLASS_NAME;if((className==\"OpenLayers.Geometry.Collection\")||(className==\"OpenLayers.Geometry.MultiPoint\")||(className==\"OpenLayers.Geometry.MultiLineString\")||(className==\"OpenLayers.Geometry.MultiPolygon\")){for(var i=0;i<geometry.components.length;i++){this.drawGeometry(geometry.components[i],style);}\nreturn;}\nswitch(geometry.CLASS_NAME){case\"OpenLayers.Geometry.Point\":this.drawPoint(geometry,style);break;case\"OpenLayers.Geometry.LineString\":this.drawLineString(geometry,style);break;case\"OpenLayers.Geometry.LinearRing\":this.drawLinearRing(geometry,style);break;case\"OpenLayers.Geometry.Polygon\":this.drawPolygon(geometry,style);break;default:break;}},drawExternalGraphic:function(pt,style){var img=new Image();if(style.graphicTitle){img.title=style.graphicTitle;}\nvar width=style.graphicWidth||style.graphicHeight;var height=style.graphicHeight||style.graphicWidth;width=width?width:style.pointRadius*2;height=height?height:style.pointRadius*2;var xOffset=(style.graphicXOffset!=undefined)?style.graphicXOffset:-(0.5*width);var yOffset=(style.graphicYOffset!=undefined)?style.graphicYOffset:-(0.5*height);var context={img:img,x:(pt[0]+xOffset),y:(pt[1]+yOffset),width:width,height:height,opacity:style.graphicOpacity||style.fillOpacity,canvas:this.canvas};img.onload=OpenLayers.Function.bind(function(){this.canvas.globalAlpha=this.opacity;this.canvas.drawImage(this.img,this.x,this.y,this.width,this.height);},context);img.src=style.externalGraphic;},setCanvasStyle:function(type,style){if(type==\"fill\"){this.canvas.globalAlpha=style['fillOpacity'];this.canvas.fillStyle=style['fillColor'];}else if(type==\"stroke\"){this.canvas.globalAlpha=style['strokeOpacity'];this.canvas.strokeStyle=style['strokeColor'];this.canvas.lineWidth=style['strokeWidth'];}else{this.canvas.globalAlpha=0;this.canvas.lineWidth=1;}},drawPoint:function(geometry,style){if(style.graphic!==false){var pt=this.getLocalXY(geometry);if(style.externalGraphic){this.drawExternalGraphic(pt,style);}else{if(style.fill!==false){this.setCanvasStyle(\"fill\",style);this.canvas.beginPath();this.canvas.arc(pt[0],pt[1],style.pointRadius,0,Math.PI*2,true);this.canvas.fill();}\nif(style.stroke!==false){this.setCanvasStyle(\"stroke\",style);this.canvas.beginPath();this.canvas.arc(pt[0],pt[1],style.pointRadius,0,Math.PI*2,true);this.canvas.stroke();this.setCanvasStyle(\"reset\");}}}},drawLineString:function(geometry,style){if(style.stroke!==false){this.setCanvasStyle(\"stroke\",style);this.canvas.beginPath();var start=this.getLocalXY(geometry.components[0]);this.canvas.moveTo(start[0],start[1]);for(var i=1;i<geometry.components.length;i++){var pt=this.getLocalXY(geometry.components[i]);this.canvas.lineTo(pt[0],pt[1]);}\nthis.canvas.stroke();}\nthis.setCanvasStyle(\"reset\");},drawLinearRing:function(geometry,style){if(style.fill!==false){this.setCanvasStyle(\"fill\",style);this.canvas.beginPath();var start=this.getLocalXY(geometry.components[0]);this.canvas.moveTo(start[0],start[1]);for(var i=1;i<geometry.components.length-1;i++){var pt=this.getLocalXY(geometry.components[i]);this.canvas.lineTo(pt[0],pt[1]);}\nthis.canvas.fill();}\nif(style.stroke!==false){this.setCanvasStyle(\"stroke\",style);this.canvas.beginPath();var start=this.getLocalXY(geometry.components[0]);this.canvas.moveTo(start[0],start[1]);for(var i=1;i<geometry.components.length;i++){var pt=this.getLocalXY(geometry.components[i]);this.canvas.lineTo(pt[0],pt[1]);}\nthis.canvas.stroke();}\nthis.setCanvasStyle(\"reset\");},drawPolygon:function(geometry,style){this.drawLinearRing(geometry.components[0],style);for(var i=1;i<geometry.components.length;i++){this.drawLinearRing(geometry.components[i],{fillOpacity:0,strokeWidth:0,strokeOpacity:0,strokeColor:'#000000',fillColor:'#000000'});}},drawText:function(location,style){style=OpenLayers.Util.extend({fontColor:\"#000000\",labelAlign:\"cm\"},style);var pt=this.getLocalXY(location);this.setCanvasStyle(\"reset\");this.canvas.fillStyle=style.fontColor;this.canvas.globalAlpha=style.fontOpacity||1.0;var fontStyle=style.fontWeight+\" \"+style.fontSize+\" \"+style.fontFamily;if(this.canvas.fillText){var labelAlign=OpenLayers.Renderer.Canvas.LABEL_ALIGN[style.labelAlign[0]]||\"center\";this.canvas.font=fontStyle;this.canvas.textAlign=labelAlign;this.canvas.fillText(style.label,pt[0],pt[1]);}else if(this.canvas.mozDrawText){this.canvas.mozTextStyle=fontStyle;var len=this.canvas.mozMeasureText(style.label);switch(style.labelAlign[0]){case\"l\":break;case\"r\":pt[0]-=len;break;case\"c\":default:pt[0]-=len/2;}\nthis.canvas.translate(pt[0],pt[1]);this.canvas.mozDrawText(style.label);this.canvas.translate(-1*pt[0],-1*pt[1]);}\nthis.setCanvasStyle(\"reset\");},getLocalXY:function(point){var resolution=this.getResolution();var extent=this.extent;var x=(point.x/resolution+(-extent.left/resolution));var y=((extent.top/resolution)-point.y/resolution);return[x,y];},clear:function(){this.canvas.clearRect(0,0,this.root.width,this.root.height);this.features={};},getFeatureIdFromEvent:function(evt){var loc=this.map.getLonLatFromPixel(evt.xy);var resolution=this.getResolution();var bounds=new OpenLayers.Bounds(loc.lon-resolution*5,loc.lat-resolution*5,loc.lon+resolution*5,loc.lat+resolution*5);var geom=bounds.toGeometry();for(var feat in this.features){if(!this.features.hasOwnProperty(feat)){continue;}\nif(this.features[feat][0].geometry.intersects(geom)){return feat;}}\nreturn null;},eraseFeatures:function(features){if(!(features instanceof Array)){features=[features];}\nfor(var i=0;i<features.length;++i){delete this.features[features[i].id];}\nthis.redraw();},redraw:function(){if(!this.locked){this.canvas.clearRect(0,0,this.root.width,this.root.height);var labelMap=[];var feature,style;for(var id in this.features){if(!this.features.hasOwnProperty(id)){continue;}\nfeature=this.features[id][0];style=this.features[id][1];if(!feature.geometry){continue;}\nthis.drawGeometry(feature.geometry,style);if(style.label){labelMap.push([feature,style]);}}\nvar item;for(var i=0,len=labelMap.length;i<len;++i){item=labelMap[i];this.drawText(item[0].geometry.getCentroid(),item[1]);}}},CLASS_NAME:\"OpenLayers.Renderer.Canvas\"});OpenLayers.Renderer.Canvas.LABEL_ALIGN={\"l\":\"left\",\"r\":\"right\"};OpenLayers.ElementsIndexer=OpenLayers.Class({maxZIndex:null,order:null,indices:null,compare:null,initialize:function(yOrdering){this.compare=yOrdering?OpenLayers.ElementsIndexer.IndexingMethods.Z_ORDER_Y_ORDER:OpenLayers.ElementsIndexer.IndexingMethods.Z_ORDER_DRAWING_ORDER;this.order=[];this.indices={};this.maxZIndex=0;},insert:function(newNode){if(this.exists(newNode)){this.remove(newNode);}\nvar nodeId=newNode.id;this.determineZIndex(newNode);var leftIndex=-1;var rightIndex=this.order.length;var middle;while(rightIndex-leftIndex>1){middle=parseInt((leftIndex+rightIndex)/2);var placement=this.compare(this,newNode,OpenLayers.Util.getElement(this.order[middle]));if(placement>0){leftIndex=middle;}else{rightIndex=middle;}}\nthis.order.splice(rightIndex,0,nodeId);this.indices[nodeId]=this.getZIndex(newNode);return this.getNextElement(rightIndex);},remove:function(node){var nodeId=node.id;var arrayIndex=OpenLayers.Util.indexOf(this.order,nodeId);if(arrayIndex>=0){this.order.splice(arrayIndex,1);delete this.indices[nodeId];if(this.order.length>0){var lastId=this.order[this.order.length-1];this.maxZIndex=this.indices[lastId];}else{this.maxZIndex=0;}}},clear:function(){this.order=[];this.indices={};this.maxZIndex=0;},exists:function(node){return(this.indices[node.id]!=null);},getZIndex:function(node){return node._style.graphicZIndex;},determineZIndex:function(node){var zIndex=node._style.graphicZIndex;if(zIndex==null){zIndex=this.maxZIndex;node._style.graphicZIndex=zIndex;}else if(zIndex>this.maxZIndex){this.maxZIndex=zIndex;}},getNextElement:function(index){var nextIndex=index+1;if(nextIndex<this.order.length){var nextElement=OpenLayers.Util.getElement(this.order[nextIndex]);if(nextElement==undefined){nextElement=this.getNextElement(nextIndex);}\nreturn nextElement;}else{return null;}},CLASS_NAME:\"OpenLayers.ElementsIndexer\"});OpenLayers.ElementsIndexer.IndexingMethods={Z_ORDER:function(indexer,newNode,nextNode){var newZIndex=indexer.getZIndex(newNode);var returnVal=0;if(nextNode){var nextZIndex=indexer.getZIndex(nextNode);returnVal=newZIndex-nextZIndex;}\nreturn returnVal;},Z_ORDER_DRAWING_ORDER:function(indexer,newNode,nextNode){var returnVal=OpenLayers.ElementsIndexer.IndexingMethods.Z_ORDER(indexer,newNode,nextNode);if(nextNode&&returnVal==0){returnVal=1;}\nreturn returnVal;},Z_ORDER_Y_ORDER:function(indexer,newNode,nextNode){var returnVal=OpenLayers.ElementsIndexer.IndexingMethods.Z_ORDER(indexer,newNode,nextNode);if(nextNode&&returnVal===0){var result=nextNode._boundsBottom-newNode._boundsBottom;returnVal=(result===0)?1:result;}\nreturn returnVal;}};OpenLayers.Renderer.Elements=OpenLayers.Class(OpenLayers.Renderer,{rendererRoot:null,root:null,vectorRoot:null,textRoot:null,xmlns:null,indexer:null,BACKGROUND_ID_SUFFIX:\"_background\",LABEL_ID_SUFFIX:\"_label\",initialize:function(containerID,options){OpenLayers.Renderer.prototype.initialize.apply(this,arguments);this.rendererRoot=this.createRenderRoot();this.root=this.createRoot(\"_root\");this.vectorRoot=this.createRoot(\"_vroot\");this.textRoot=this.createRoot(\"_troot\");this.root.appendChild(this.vectorRoot);this.root.appendChild(this.textRoot);this.rendererRoot.appendChild(this.root);this.container.appendChild(this.rendererRoot);if(options&&(options.zIndexing||options.yOrdering)){this.indexer=new OpenLayers.ElementsIndexer(options.yOrdering);}},destroy:function(){this.clear();this.rendererRoot=null;this.root=null;this.xmlns=null;OpenLayers.Renderer.prototype.destroy.apply(this,arguments);},clear:function(){var child;var root=this.vectorRoot;if(root){while(child=root.firstChild){root.removeChild(child);}}\nroot=this.textRoot;if(root){while(child=root.firstChild){root.removeChild(child);}}\nif(this.indexer){this.indexer.clear();}},getNodeType:function(geometry,style){},drawGeometry:function(geometry,style,featureId){var className=geometry.CLASS_NAME;var rendered=true;if((className==\"OpenLayers.Geometry.Collection\")||(className==\"OpenLayers.Geometry.MultiPoint\")||(className==\"OpenLayers.Geometry.MultiLineString\")||(className==\"OpenLayers.Geometry.MultiPolygon\")){for(var i=0,len=geometry.components.length;i<len;i++){rendered=this.drawGeometry(geometry.components[i],style,featureId)&&rendered;}\nreturn rendered;};rendered=false;if(style.display!=\"none\"){if(style.backgroundGraphic){this.redrawBackgroundNode(geometry.id,geometry,style,featureId);}\nrendered=this.redrawNode(geometry.id,geometry,style,featureId);}\nif(rendered==false){var node=document.getElementById(geometry.id);if(node){if(node._style.backgroundGraphic){node.parentNode.removeChild(document.getElementById(geometry.id+this.BACKGROUND_ID_SUFFIX));}\nnode.parentNode.removeChild(node);}}\nreturn rendered;},redrawNode:function(id,geometry,style,featureId){style=this.applyDefaultSymbolizer(style);var node=this.nodeFactory(id,this.getNodeType(geometry,style));node._featureId=featureId;node._boundsBottom=geometry.getBounds().bottom;node._geometryClass=geometry.CLASS_NAME;node._style=style;var drawResult=this.drawGeometryNode(node,geometry,style);if(drawResult===false){return false;}\nnode=drawResult.node;if(this.indexer){var insert=this.indexer.insert(node);if(insert){this.vectorRoot.insertBefore(node,insert);}else{this.vectorRoot.appendChild(node);}}else{if(node.parentNode!==this.vectorRoot){this.vectorRoot.appendChild(node);}}\nthis.postDraw(node);return drawResult.complete;},redrawBackgroundNode:function(id,geometry,style,featureId){var backgroundStyle=OpenLayers.Util.extend({},style);backgroundStyle.externalGraphic=backgroundStyle.backgroundGraphic;backgroundStyle.graphicXOffset=backgroundStyle.backgroundXOffset;backgroundStyle.graphicYOffset=backgroundStyle.backgroundYOffset;backgroundStyle.graphicZIndex=backgroundStyle.backgroundGraphicZIndex;backgroundStyle.graphicWidth=backgroundStyle.backgroundWidth||backgroundStyle.graphicWidth;backgroundStyle.graphicHeight=backgroundStyle.backgroundHeight||backgroundStyle.graphicHeight;backgroundStyle.backgroundGraphic=null;backgroundStyle.backgroundXOffset=null;backgroundStyle.backgroundYOffset=null;backgroundStyle.backgroundGraphicZIndex=null;return this.redrawNode(id+this.BACKGROUND_ID_SUFFIX,geometry,backgroundStyle,null);},drawGeometryNode:function(node,geometry,style){style=style||node._style;var options={'isFilled':style.fill===undefined?true:style.fill,'isStroked':style.stroke===undefined?!!style.strokeWidth:style.stroke};var drawn;switch(geometry.CLASS_NAME){case\"OpenLayers.Geometry.Point\":if(style.graphic===false){options.isFilled=false;options.isStroked=false;}\ndrawn=this.drawPoint(node,geometry);break;case\"OpenLayers.Geometry.LineString\":options.isFilled=false;drawn=this.drawLineString(node,geometry);break;case\"OpenLayers.Geometry.LinearRing\":drawn=this.drawLinearRing(node,geometry);break;case\"OpenLayers.Geometry.Polygon\":drawn=this.drawPolygon(node,geometry);break;case\"OpenLayers.Geometry.Surface\":drawn=this.drawSurface(node,geometry);break;case\"OpenLayers.Geometry.Rectangle\":drawn=this.drawRectangle(node,geometry);break;default:break;}\nnode._options=options;if(drawn!=false){return{node:this.setStyle(node,style,options,geometry),complete:drawn};}else{return false;}},postDraw:function(node){},drawPoint:function(node,geometry){},drawLineString:function(node,geometry){},drawLinearRing:function(node,geometry){},drawPolygon:function(node,geometry){},drawRectangle:function(node,geometry){},drawCircle:function(node,geometry){},drawSurface:function(node,geometry){},removeText:function(featureId){var label=document.getElementById(featureId+this.LABEL_ID_SUFFIX);if(label){this.textRoot.removeChild(label);}},getFeatureIdFromEvent:function(evt){var target=evt.target;var useElement=target&&target.correspondingUseElement;var node=useElement?useElement:(target||evt.srcElement);var featureId=node._featureId;return featureId;},eraseGeometry:function(geometry,featureId){if((geometry.CLASS_NAME==\"OpenLayers.Geometry.MultiPoint\")||(geometry.CLASS_NAME==\"OpenLayers.Geometry.MultiLineString\")||(geometry.CLASS_NAME==\"OpenLayers.Geometry.MultiPolygon\")||(geometry.CLASS_NAME==\"OpenLayers.Geometry.Collection\")){for(var i=0,len=geometry.components.length;i<len;i++){this.eraseGeometry(geometry.components[i],featureId);}}else{var element=OpenLayers.Util.getElement(geometry.id);if(element&&element.parentNode){if(element.geometry){element.geometry.destroy();element.geometry=null;}\nelement.parentNode.removeChild(element);if(this.indexer){this.indexer.remove(element);}\nif(element._style.backgroundGraphic){var backgroundId=geometry.id+this.BACKGROUND_ID_SUFFIX;var bElem=OpenLayers.Util.getElement(backgroundId);if(bElem&&bElem.parentNode){bElem.parentNode.removeChild(bElem);}}}}},nodeFactory:function(id,type){var node=OpenLayers.Util.getElement(id);if(node){if(!this.nodeTypeCompare(node,type)){node.parentNode.removeChild(node);node=this.nodeFactory(id,type);}}else{node=this.createNode(type,id);}\nreturn node;},nodeTypeCompare:function(node,type){},createNode:function(type,id){},moveRoot:function(renderer){var root=this.root;if(renderer.root.parentNode==this.rendererRoot){root=renderer.root;}\nroot.parentNode.removeChild(root);renderer.rendererRoot.appendChild(root);},getRenderLayerId:function(){return this.root.parentNode.parentNode.id;},isComplexSymbol:function(graphicName){return(graphicName!=\"circle\")&&!!graphicName;},CLASS_NAME:\"OpenLayers.Renderer.Elements\"});OpenLayers.Renderer.symbol={\"star\":[350,75,379,161,469,161,397,215,423,301,350,250,277,301,303,215,231,161,321,161,350,75],\"cross\":[4,0,6,0,6,4,10,4,10,6,6,6,6,10,4,10,4,6,0,6,0,4,4,4,4,0],\"x\":[0,0,25,0,50,35,75,0,100,0,65,50,100,100,75,100,50,65,25,100,0,100,35,50,0,0],\"square\":[0,0,0,1,1,1,1,0,0,0],\"triangle\":[0,10,10,10,5,0,0,10]};OpenLayers.Strategy.Cluster=OpenLayers.Class(OpenLayers.Strategy,{distance:20,threshold:null,features:null,clusters:null,clustering:false,resolution:null,initialize:function(options){OpenLayers.Strategy.prototype.initialize.apply(this,[options]);},activate:function(){var activated=OpenLayers.Strategy.prototype.activate.call(this);if(activated){this.layer.events.on({\"beforefeaturesadded\":this.cacheFeatures,\"moveend\":this.cluster,scope:this});}\nreturn activated;},deactivate:function(){var deactivated=OpenLayers.Strategy.prototype.deactivate.call(this);if(deactivated){this.clearCache();this.layer.events.un({\"beforefeaturesadded\":this.cacheFeatures,\"moveend\":this.cluster,scope:this});}\nreturn deactivated;},cacheFeatures:function(event){var propagate=true;if(!this.clustering){this.clearCache();this.features=event.features;this.cluster();propagate=false;}\nreturn propagate;},clearCache:function(){this.features=null;},cluster:function(event){if((!event||event.zoomChanged)&&this.features){var resolution=this.layer.map.getResolution();if(resolution!=this.resolution||!this.clustersExist()){this.resolution=resolution;var clusters=[];var feature,clustered,cluster;for(var i=0;i<this.features.length;++i){feature=this.features[i];if(feature.geometry){clustered=false;for(var j=clusters.length-1;j>=0;--j){cluster=clusters[j];if(this.shouldCluster(cluster,feature)){this.addToCluster(cluster,feature);clustered=true;break;}}\nif(!clustered){clusters.push(this.createCluster(this.features[i]));}}}\nthis.layer.removeAllFeatures();if(clusters.length>0){if(this.threshold>1){var clone=clusters.slice();clusters=[];var candidate;for(var i=0,len=clone.length;i<len;++i){candidate=clone[i];if(candidate.attributes.count<this.threshold){Array.prototype.push.apply(clusters,candidate.cluster);}else{clusters.push(candidate);}}}\nthis.clustering=true;this.layer.addFeatures(clusters);this.clustering=false;}\nthis.clusters=clusters;}}},clustersExist:function(){var exist=false;if(this.clusters&&this.clusters.length>0&&this.clusters.length==this.layer.features.length){exist=true;for(var i=0;i<this.clusters.length;++i){if(this.clusters[i]!=this.layer.features[i]){exist=false;break;}}}\nreturn exist;},shouldCluster:function(cluster,feature){var cc=cluster.geometry.getBounds().getCenterLonLat();var fc=feature.geometry.getBounds().getCenterLonLat();var distance=(Math.sqrt(Math.pow((cc.lon-fc.lon),2)+Math.pow((cc.lat-fc.lat),2))/this.resolution);return(distance<=this.distance);},addToCluster:function(cluster,feature){cluster.cluster.push(feature);cluster.attributes.count+=1;},createCluster:function(feature){var center=feature.geometry.getBounds().getCenterLonLat();var cluster=new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(center.lon,center.lat),{count:1});cluster.cluster=[feature];return cluster;},CLASS_NAME:\"OpenLayers.Strategy.Cluster\"});OpenLayers.Strategy.Fixed=OpenLayers.Class(OpenLayers.Strategy,{preload:false,initialize:function(options){OpenLayers.Strategy.prototype.initialize.apply(this,[options]);},destroy:function(){OpenLayers.Strategy.prototype.destroy.apply(this,arguments);},activate:function(){if(OpenLayers.Strategy.prototype.activate.apply(this,arguments)){this.layer.events.on({\"refresh\":this.load,scope:this});if(this.layer.visibility==true||this.preload){this.load();}else{this.layer.events.on({\"visibilitychanged\":this.load,scope:this});}\nreturn true;}\nreturn false;},deactivate:function(){var deactivated=OpenLayers.Strategy.prototype.deactivate.call(this);if(deactivated){this.layer.events.un({\"refresh\":this.load,\"visibilitychanged\":this.load,scope:this});}\nreturn deactivated;},load:function(options){this.layer.events.triggerEvent(\"loadstart\");this.layer.protocol.read(OpenLayers.Util.applyDefaults({callback:this.merge,filter:this.layer.filter,scope:this},options));this.layer.events.un({\"visibilitychanged\":this.load,scope:this});},merge:function(resp){this.layer.destroyFeatures();var features=resp.features;if(features&&features.length>0){var remote=this.layer.projection;var local=this.layer.map.getProjectionObject();if(!local.equals(remote)){var geom;for(var i=0,len=features.length;i<len;++i){geom=features[i].geometry;if(geom){geom.transform(remote,local);}}}\nthis.layer.addFeatures(features);}\nthis.layer.events.triggerEvent(\"loadend\");},CLASS_NAME:\"OpenLayers.Strategy.Fixed\"});OpenLayers.Strategy.Paging=OpenLayers.Class(OpenLayers.Strategy,{features:null,length:10,num:null,paging:false,initialize:function(options){OpenLayers.Strategy.prototype.initialize.apply(this,[options]);},activate:function(){var activated=OpenLayers.Strategy.prototype.activate.call(this);if(activated){this.layer.events.on({\"beforefeaturesadded\":this.cacheFeatures,scope:this});}\nreturn activated;},deactivate:function(){var deactivated=OpenLayers.Strategy.prototype.deactivate.call(this);if(deactivated){this.clearCache();this.layer.events.un({\"beforefeaturesadded\":this.cacheFeatures,scope:this});}\nreturn deactivated;},cacheFeatures:function(event){if(!this.paging){this.clearCache();this.features=event.features;this.pageNext(event);}},clearCache:function(){if(this.features){for(var i=0;i<this.features.length;++i){this.features[i].destroy();}}\nthis.features=null;this.num=null;},pageCount:function(){var numFeatures=this.features?this.features.length:0;return Math.ceil(numFeatures/this.length);},pageNum:function(){return this.num;},pageLength:function(newLength){if(newLength&&newLength>0){this.length=newLength;}\nreturn this.length;},pageNext:function(event){var changed=false;if(this.features){if(this.num===null){this.num=-1;}\nvar start=(this.num+1)*this.length;changed=this.page(start,event);}\nreturn changed;},pagePrevious:function(){var changed=false;if(this.features){if(this.num===null){this.num=this.pageCount();}\nvar start=(this.num-1)*this.length;changed=this.page(start);}\nreturn changed;},page:function(start,event){var changed=false;if(this.features){if(start>=0&&start<this.features.length){var num=Math.floor(start/this.length);if(num!=this.num){this.paging=true;var features=this.features.slice(start,start+this.length);this.layer.removeFeatures(this.layer.features);this.num=num;if(event&&event.features){event.features=features;}else{this.layer.addFeatures(features);}\nthis.paging=false;changed=true;}}}\nreturn changed;},CLASS_NAME:\"OpenLayers.Strategy.Paging\"});OpenLayers.Strategy.Refresh=OpenLayers.Class(OpenLayers.Strategy,{force:false,interval:0,timer:null,initialize:function(options){OpenLayers.Strategy.prototype.initialize.apply(this,[options]);},activate:function(){var activated=OpenLayers.Strategy.prototype.activate.call(this);if(activated){if(this.layer.visibility===true){this.start();}\nthis.layer.events.on({\"visibilitychanged\":this.reset,scope:this});}\nreturn activated;},deactivate:function(){var deactivated=OpenLayers.Strategy.prototype.deactivate.call(this);if(deactivated){this.stop();}\nreturn deactivated;},reset:function(){if(this.layer.visibility===true){this.start();}else{this.stop();}},start:function(){if(this.interval&&typeof this.interval===\"number\"&&this.interval>0){this.timer=window.setInterval(OpenLayers.Function.bind(this.refresh,this),this.interval);}},refresh:function(){if(this.layer&&this.layer.refresh&&typeof this.layer.refresh==\"function\"){this.layer.refresh({force:this.force});}},stop:function(){if(this.timer!==null){window.clearInterval(this.timer);this.timer=null;}},CLASS_NAME:\"OpenLayers.Strategy.Refresh\"});OpenLayers.Strategy.Save=OpenLayers.Class(OpenLayers.Strategy,{EVENT_TYPES:[\"start\",\"success\",\"fail\"],events:null,auto:false,timer:null,initialize:function(options){OpenLayers.Strategy.prototype.initialize.apply(this,[options]);this.events=new OpenLayers.Events(this,null,this.EVENT_TYPES);},activate:function(){var activated=OpenLayers.Strategy.prototype.activate.call(this);if(activated){if(this.auto){if(typeof this.auto===\"number\"){this.timer=window.setInterval(OpenLayers.Function.bind(this.save,this),this.auto*1000);}else{this.layer.events.on({\"featureadded\":this.triggerSave,\"afterfeaturemodified\":this.triggerSave,scope:this});}}}\nreturn activated;},deactivate:function(){var deactivated=OpenLayers.Strategy.prototype.deactivate.call(this);if(deactivated){if(this.auto){if(typeof this.auto===\"number\"){window.clearInterval(this.timer);}else{this.layer.events.un({\"featureadded\":this.triggerSave,\"afterfeaturemodified\":this.triggerSave,scope:this});}}}\nreturn deactivated;},triggerSave:function(event){var feature=event.feature;if(feature.state===OpenLayers.State.INSERT||feature.state===OpenLayers.State.UPDATE||feature.state===OpenLayers.State.DELETE){this.save([event.feature]);}},save:function(features){if(!features){features=this.layer.features;}\nthis.events.triggerEvent(\"start\",{features:features});var remote=this.layer.projection;var local=this.layer.map.getProjectionObject();if(!local.equals(remote)){var len=features.length;var clones=new Array(len);var orig,clone;for(var i=0;i<len;++i){orig=features[i];clone=orig.clone();clone.fid=orig.fid;clone.state=orig.state;if(orig.url){clone.url=orig.url;}\nclone._original=orig;clone.geometry.transform(local,remote);clones[i]=clone;}\nfeatures=clones;}\nthis.layer.protocol.commit(features,{callback:this.onCommit,scope:this});},onCommit:function(response){var evt={\"response\":response};if(response.success()){var features=response.reqFeatures;var state,feature;var destroys=[];var insertIds=response.insertIds||[];var j=0;for(var i=0,len=features.length;i<len;++i){feature=features[i];feature=feature._original||feature;state=feature.state;if(state){if(state==OpenLayers.State.DELETE){destroys.push(feature);}else if(state==OpenLayers.State.INSERT){feature.fid=insertIds[j];++j;}\nfeature.state=null;}}\nif(destroys.length>0){this.layer.destroyFeatures(destroys);}\nthis.events.triggerEvent(\"success\",evt);}else{this.events.triggerEvent(\"fail\",evt);}},CLASS_NAME:\"OpenLayers.Strategy.Save\"});OpenLayers.Symbolizer.Line=OpenLayers.Class(OpenLayers.Symbolizer,{strokeColor:null,strokeOpacity:null,strokeWidth:null,strokeLinecap:null,strokeDashstyle:null,initialize:function(config){OpenLayers.Symbolizer.prototype.initialize.apply(this,arguments);},CLASS_NAME:\"OpenLayers.Symbolizer.Line\"});OpenLayers.Symbolizer.Point=OpenLayers.Class(OpenLayers.Symbolizer,{strokeColor:null,strokeOpacity:null,strokeWidth:null,strokeLinecap:null,strokeDashstyle:null,fillColor:null,fillOpacity:null,pointRadius:null,externalGraphic:null,graphicWidth:null,graphicHeight:null,graphicOpacity:null,graphicXOffset:null,graphicYOffset:null,rotation:null,graphicName:null,initialize:function(config){OpenLayers.Symbolizer.prototype.initialize.apply(this,arguments);},CLASS_NAME:\"OpenLayers.Symbolizer.Point\"});OpenLayers.Symbolizer.Polygon=OpenLayers.Class(OpenLayers.Symbolizer,{strokeColor:null,strokeOpacity:null,strokeWidth:null,strokeLinecap:null,strokeDashstyle:null,fillColor:null,fillOpacity:null,initialize:function(config){OpenLayers.Symbolizer.prototype.initialize.apply(this,arguments);},CLASS_NAME:\"OpenLayers.Symbolizer.Polygon\"});OpenLayers.Symbolizer.Raster=OpenLayers.Class(OpenLayers.Symbolizer,{initialize:function(config){OpenLayers.Symbolizer.prototype.initialize.apply(this,arguments);},CLASS_NAME:\"OpenLayers.Symbolizer.Raster\"});OpenLayers.Symbolizer.Text=OpenLayers.Class(OpenLayers.Symbolizer,{label:null,fontFamily:null,fontSize:null,fontWeight:null,fontStyle:null,initialize:function(config){OpenLayers.Symbolizer.prototype.initialize.apply(this,arguments);},CLASS_NAME:\"OpenLayers.Symbolizer.Text\"});OpenLayers.Tween=OpenLayers.Class({INTERVAL:10,easing:null,begin:null,finish:null,duration:null,callbacks:null,time:null,interval:null,playing:false,initialize:function(easing){this.easing=(easing)?easing:OpenLayers.Easing.Expo.easeOut;},start:function(begin,finish,duration,options){this.playing=true;this.begin=begin;this.finish=finish;this.duration=duration;this.callbacks=options.callbacks;this.time=0;if(this.interval){window.clearInterval(this.interval);this.interval=null;}\nif(this.callbacks&&this.callbacks.start){this.callbacks.start.call(this,this.begin);}\nthis.interval=window.setInterval(OpenLayers.Function.bind(this.play,this),this.INTERVAL);},stop:function(){if(!this.playing){return;}\nif(this.callbacks&&this.callbacks.done){this.callbacks.done.call(this,this.finish);}\nwindow.clearInterval(this.interval);this.interval=null;this.playing=false;},play:function(){var value={};for(var i in this.begin){var b=this.begin[i];var f=this.finish[i];if(b==null||f==null||isNaN(b)||isNaN(f)){OpenLayers.Console.error('invalid value for Tween');}\nvar c=f-b;value[i]=this.easing.apply(this,[this.time,b,c,this.duration]);}\nthis.time++;if(this.callbacks&&this.callbacks.eachStep){this.callbacks.eachStep.call(this,value);}\nif(this.time>this.duration){this.stop();}},CLASS_NAME:\"OpenLayers.Tween\"});OpenLayers.Easing={CLASS_NAME:\"OpenLayers.Easing\"};OpenLayers.Easing.Linear={easeIn:function(t,b,c,d){return c*t/d+b;},easeOut:function(t,b,c,d){return c*t/d+b;},easeInOut:function(t,b,c,d){return c*t/d+b;},CLASS_NAME:\"OpenLayers.Easing.Linear\"};OpenLayers.Easing.Expo={easeIn:function(t,b,c,d){return(t==0)?b:c*Math.pow(2,10*(t/d-1))+b;},easeOut:function(t,b,c,d){return(t==d)?b+c:c*(-Math.pow(2,-10*t/d)+1)+b;},easeInOut:function(t,b,c,d){if(t==0)return b;if(t==d)return b+c;if((t/=d/2)<1)return c/2*Math.pow(2,10*(t-1))+b;return c/2*(-Math.pow(2,-10*--t)+2)+b;},CLASS_NAME:\"OpenLayers.Easing.Expo\"};OpenLayers.Easing.Quad={easeIn:function(t,b,c,d){return c*(t/=d)*t+b;},easeOut:function(t,b,c,d){return-c*(t/=d)*(t-2)+b;},easeInOut:function(t,b,c,d){if((t/=d/2)<1)return c/2*t*t+b;return-c/2*((--t)*(t-2)-1)+b;},CLASS_NAME:\"OpenLayers.Easing.Quad\"};OpenLayers.Control.ArgParser=OpenLayers.Class(OpenLayers.Control,{center:null,zoom:null,layers:null,displayProjection:null,initialize:function(options){OpenLayers.Control.prototype.initialize.apply(this,arguments);},setMap:function(map){OpenLayers.Control.prototype.setMap.apply(this,arguments);for(var i=0,len=this.map.controls.length;i<len;i++){var control=this.map.controls[i];if((control!=this)&&(control.CLASS_NAME==\"OpenLayers.Control.ArgParser\")){if(control.displayProjection!=this.displayProjection){this.displayProjection=control.displayProjection;}\nbreak;}}\nif(i==this.map.controls.length){var args=OpenLayers.Util.getParameters();if(args.layers){this.layers=args.layers;this.map.events.register('addlayer',this,this.configureLayers);this.configureLayers();}\nif(args.lat&&args.lon){this.center=new OpenLayers.LonLat(parseFloat(args.lon),parseFloat(args.lat));if(args.zoom){this.zoom=parseInt(args.zoom);}\nthis.map.events.register('changebaselayer',this,this.setCenter);this.setCenter();}}},setCenter:function(){if(this.map.baseLayer){this.map.events.unregister('changebaselayer',this,this.setCenter);if(this.displayProjection){this.center.transform(this.displayProjection,this.map.getProjectionObject());}\nthis.map.setCenter(this.center,this.zoom);}},configureLayers:function(){if(this.layers.length==this.map.layers.length){this.map.events.unregister('addlayer',this,this.configureLayers);for(var i=0,len=this.layers.length;i<len;i++){var layer=this.map.layers[i];var c=this.layers.charAt(i);if(c==\"B\"){this.map.setBaseLayer(layer);}else if((c==\"T\")||(c==\"F\")){layer.setVisibility(c==\"T\");}}}},CLASS_NAME:\"OpenLayers.Control.ArgParser\"});OpenLayers.Control.Attribution=OpenLayers.Class(OpenLayers.Control,{separator:\", \",initialize:function(options){OpenLayers.Control.prototype.initialize.apply(this,arguments);},destroy:function(){this.map.events.un({\"removelayer\":this.updateAttribution,\"addlayer\":this.updateAttribution,\"changelayer\":this.updateAttribution,\"changebaselayer\":this.updateAttribution,scope:this});OpenLayers.Control.prototype.destroy.apply(this,arguments);},draw:function(){OpenLayers.Control.prototype.draw.apply(this,arguments);this.map.events.on({'changebaselayer':this.updateAttribution,'changelayer':this.updateAttribution,'addlayer':this.updateAttribution,'removelayer':this.updateAttribution,scope:this});this.updateAttribution();return this.div;},updateAttribution:function(){var attributions=[];if(this.map&&this.map.layers){for(var i=0,len=this.map.layers.length;i<len;i++){var layer=this.map.layers[i];if(layer.attribution&&layer.getVisibility()){if(OpenLayers.Util.indexOf(attributions,layer.attribution)===-1){attributions.push(layer.attribution);}}}\nthis.div.innerHTML=attributions.join(this.separator);}},CLASS_NAME:\"OpenLayers.Control.Attribution\"});OpenLayers.Control.Button=OpenLayers.Class(OpenLayers.Control,{type:OpenLayers.Control.TYPE_BUTTON,trigger:function(){},CLASS_NAME:\"OpenLayers.Control.Button\"});OpenLayers.Control.Graticule=OpenLayers.Class(OpenLayers.Control,{autoActivate:true,intervals:[45,30,20,10,5,2,1,0.5,0.2,0.1,0.05,0.01,0.005,0.002,0.001],displayInLayerSwitcher:true,visible:true,numPoints:50,targetSize:200,layerName:null,labelled:true,labelFormat:'dm',lineSymbolizer:{strokeColor:\"#333\",strokeWidth:1,strokeOpacity:0.5},labelSymbolizer:{},gratLayer:null,initialize:function(options){options=options||{};options.layerName=options.layerName||OpenLayers.i18n(\"graticule\");OpenLayers.Control.prototype.initialize.apply(this,[options]);this.labelSymbolizer.stroke=false;this.labelSymbolizer.fill=false;this.labelSymbolizer.label=\"${label}\";this.labelSymbolizer.labelAlign=\"${labelAlign}\";this.labelSymbolizer.labelXOffset=\"${xOffset}\";this.labelSymbolizer.labelYOffset=\"${yOffset}\";},destroy:function(){this.deactivate();OpenLayers.Control.prototype.destroy.apply(this,arguments);if(this.gratLayer){this.gratLayer.destroy();this.gratLayer=null;}},draw:function(){OpenLayers.Control.prototype.draw.apply(this,arguments);if(!this.gratLayer){var gratStyle=new OpenLayers.Style({},{rules:[new OpenLayers.Rule({'symbolizer':{\"Point\":this.labelSymbolizer,\"Line\":this.lineSymbolizer}})]});this.gratLayer=new OpenLayers.Layer.Vector(this.layerName,{styleMap:new OpenLayers.StyleMap({'default':gratStyle}),visibility:this.visible,displayInLayerSwitcher:this.displayInLayerSwitcher});}\nreturn this.div;},activate:function(){if(OpenLayers.Control.prototype.activate.apply(this,arguments)){this.map.addLayer(this.gratLayer);this.map.events.register('moveend',this,this.update);this.update();return true;}else{return false;}},deactivate:function(){if(OpenLayers.Control.prototype.deactivate.apply(this,arguments)){this.map.events.unregister('moveend',this,this.update);this.map.removeLayer(this.gratLayer);return true;}else{return false;}},update:function(){var mapBounds=this.map.getExtent();if(!mapBounds){return;}\nthis.gratLayer.destroyFeatures();var llProj=new OpenLayers.Projection(\"EPSG:4326\");var mapProj=this.map.getProjectionObject();var mapRes=this.map.getResolution();if(mapProj.proj&&mapProj.proj.projName==\"longlat\"){this.numPoints=1;}\nvar mapCenter=this.map.getCenter();var mapCenterLL=new OpenLayers.Pixel(mapCenter.lon,mapCenter.lat);OpenLayers.Projection.transform(mapCenterLL,mapProj,llProj);var testSq=this.targetSize*mapRes;testSq*=testSq;var llInterval;for(var i=0;i<this.intervals.length;++i){llInterval=this.intervals[i];var delta=llInterval/2;var p1=mapCenterLL.offset(new OpenLayers.Pixel(-delta,-delta));var p2=mapCenterLL.offset(new OpenLayers.Pixel(delta,delta));OpenLayers.Projection.transform(p1,llProj,mapProj);OpenLayers.Projection.transform(p2,llProj,mapProj);var distSq=(p1.x-p2.x)*(p1.x-p2.x)+(p1.y-p2.y)*(p1.y-p2.y);if(distSq<=testSq){break;}}\nmapCenterLL.x=Math.floor(mapCenterLL.x/llInterval)*llInterval;mapCenterLL.y=Math.floor(mapCenterLL.y/llInterval)*llInterval;var iter=0;var centerLonPoints=[mapCenterLL.clone()];var newPoint=mapCenterLL.clone();var mapXY;do{newPoint=newPoint.offset(new OpenLayers.Pixel(0,llInterval));mapXY=OpenLayers.Projection.transform(newPoint.clone(),llProj,mapProj);centerLonPoints.unshift(newPoint);}while(mapBounds.containsPixel(mapXY)&&++iter<1000);newPoint=mapCenterLL.clone();do{newPoint=newPoint.offset(new OpenLayers.Pixel(0,-llInterval));mapXY=OpenLayers.Projection.transform(newPoint.clone(),llProj,mapProj);centerLonPoints.push(newPoint);}while(mapBounds.containsPixel(mapXY)&&++iter<1000);iter=0;var centerLatPoints=[mapCenterLL.clone()];newPoint=mapCenterLL.clone();do{newPoint=newPoint.offset(new OpenLayers.Pixel(-llInterval,0));mapXY=OpenLayers.Projection.transform(newPoint.clone(),llProj,mapProj);centerLatPoints.unshift(newPoint);}while(mapBounds.containsPixel(mapXY)&&++iter<1000);newPoint=mapCenterLL.clone();do{newPoint=newPoint.offset(new OpenLayers.Pixel(llInterval,0));mapXY=OpenLayers.Projection.transform(newPoint.clone(),llProj,mapProj);centerLatPoints.push(newPoint);}while(mapBounds.containsPixel(mapXY)&&++iter<1000);var lines=[];for(var i=0;i<centerLatPoints.length;++i){var lon=centerLatPoints[i].x;var pointList=[];var labelPoint=null;var latEnd=Math.min(centerLonPoints[0].y,90);var latStart=Math.max(centerLonPoints[centerLonPoints.length-1].y,-90);var latDelta=(latEnd-latStart)/this.numPoints;var lat=latStart;for(var j=0;j<=this.numPoints;++j){var gridPoint=new OpenLayers.Geometry.Point(lon,lat);gridPoint.transform(llProj,mapProj);pointList.push(gridPoint);lat+=latDelta;if(gridPoint.y>=mapBounds.bottom&&!labelPoint){labelPoint=gridPoint;}}\nif(this.labelled){var labelPos=new OpenLayers.Geometry.Point(labelPoint.x,mapBounds.bottom);var labelAttrs={value:lon,label:this.labelled?OpenLayers.Util.getFormattedLonLat(lon,\"lon\",this.labelFormat):\"\",labelAlign:\"cb\",xOffset:0,yOffset:2};this.gratLayer.addFeatures(new OpenLayers.Feature.Vector(labelPos,labelAttrs));}\nvar geom=new OpenLayers.Geometry.LineString(pointList);lines.push(new OpenLayers.Feature.Vector(geom));}\nfor(var j=0;j<centerLonPoints.length;++j){lat=centerLonPoints[j].y;if(lat<-90||lat>90){continue;}\nvar pointList=[];var lonStart=centerLatPoints[0].x;var lonEnd=centerLatPoints[centerLatPoints.length-1].x;var lonDelta=(lonEnd-lonStart)/this.numPoints;var lon=lonStart;var labelPoint=null;for(var i=0;i<=this.numPoints;++i){var gridPoint=new OpenLayers.Geometry.Point(lon,lat);gridPoint.transform(llProj,mapProj);pointList.push(gridPoint);lon+=lonDelta;if(gridPoint.x<mapBounds.right){labelPoint=gridPoint;}}\nif(this.labelled){var labelPos=new OpenLayers.Geometry.Point(mapBounds.right,labelPoint.y);var labelAttrs={value:lat,label:this.labelled?OpenLayers.Util.getFormattedLonLat(lat,\"lat\",this.labelFormat):\"\",labelAlign:\"rb\",xOffset:-2,yOffset:2};this.gratLayer.addFeatures(new OpenLayers.Feature.Vector(labelPos,labelAttrs));}\nvar geom=new OpenLayers.Geometry.LineString(pointList);lines.push(new OpenLayers.Feature.Vector(geom));}\nthis.gratLayer.addFeatures(lines);},CLASS_NAME:\"OpenLayers.Control.Graticule\"});OpenLayers.Control.LayerSwitcher=OpenLayers.Class(OpenLayers.Control,{roundedCorner:true,roundedCornerColor:\"darkblue\",layerStates:null,layersDiv:null,baseLayersDiv:null,baseLayers:null,dataLbl:null,dataLayersDiv:null,dataLayers:null,minimizeDiv:null,maximizeDiv:null,ascending:true,initialize:function(options){OpenLayers.Control.prototype.initialize.apply(this,arguments);this.layerStates=[];},destroy:function(){OpenLayers.Event.stopObservingElement(this.div);OpenLayers.Event.stopObservingElement(this.minimizeDiv);OpenLayers.Event.stopObservingElement(this.maximizeDiv);this.clearLayersArray(\"base\");this.clearLayersArray(\"data\");this.map.events.un({\"addlayer\":this.redraw,\"changelayer\":this.redraw,\"removelayer\":this.redraw,\"changebaselayer\":this.redraw,scope:this});OpenLayers.Control.prototype.destroy.apply(this,arguments);},setMap:function(map){OpenLayers.Control.prototype.setMap.apply(this,arguments);this.map.events.on({\"addlayer\":this.redraw,\"changelayer\":this.redraw,\"removelayer\":this.redraw,\"changebaselayer\":this.redraw,scope:this});},draw:function(){OpenLayers.Control.prototype.draw.apply(this);this.loadContents();if(!this.outsideViewport){this.minimizeControl();}\nthis.redraw();return this.div;},clearLayersArray:function(layersType){var layers=this[layersType+\"Layers\"];if(layers){for(var i=0,len=layers.length;i<len;i++){var layer=layers[i];OpenLayers.Event.stopObservingElement(layer.inputElem);OpenLayers.Event.stopObservingElement(layer.labelSpan);}}\nthis[layersType+\"LayersDiv\"].innerHTML=\"\";this[layersType+\"Layers\"]=[];},checkRedraw:function(){var redraw=false;if(!this.layerStates.length||(this.map.layers.length!=this.layerStates.length)){redraw=true;}else{for(var i=0,len=this.layerStates.length;i<len;i++){var layerState=this.layerStates[i];var layer=this.map.layers[i];if((layerState.name!=layer.name)||(layerState.inRange!=layer.inRange)||(layerState.id!=layer.id)||(layerState.visibility!=layer.visibility)){redraw=true;break;}}}\nreturn redraw;},redraw:function(){if(!this.checkRedraw()){return this.div;}\nthis.clearLayersArray(\"base\");this.clearLayersArray(\"data\");var containsOverlays=false;var containsBaseLayers=false;var len=this.map.layers.length;this.layerStates=new Array(len);for(var i=0;i<len;i++){var layer=this.map.layers[i];this.layerStates[i]={'name':layer.name,'visibility':layer.visibility,'inRange':layer.inRange,'id':layer.id};}\nvar layers=this.map.layers.slice();if(!this.ascending){layers.reverse();}\nfor(var i=0,len=layers.length;i<len;i++){var layer=layers[i];var baseLayer=layer.isBaseLayer;if(layer.displayInLayerSwitcher){if(baseLayer){containsBaseLayers=true;}else{containsOverlays=true;}\nvar checked=(baseLayer)?(layer==this.map.baseLayer):layer.getVisibility();var inputElem=document.createElement(\"input\");inputElem.id=this.id+\"_input_\"+layer.name;inputElem.name=(baseLayer)?this.id+\"_baseLayers\":layer.name;inputElem.type=(baseLayer)?\"radio\":\"checkbox\";inputElem.value=layer.name;inputElem.checked=checked;inputElem.defaultChecked=checked;if(!baseLayer&&!layer.inRange){inputElem.disabled=true;}\nvar context={'inputElem':inputElem,'layer':layer,'layerSwitcher':this};OpenLayers.Event.observe(inputElem,\"mouseup\",OpenLayers.Function.bindAsEventListener(this.onInputClick,context));var labelSpan=document.createElement(\"span\");OpenLayers.Element.addClass(labelSpan,\"labelSpan\")\nif(!baseLayer&&!layer.inRange){labelSpan.style.color=\"gray\";}\nlabelSpan.innerHTML=layer.name;labelSpan.style.verticalAlign=(baseLayer)?\"bottom\":\"baseline\";OpenLayers.Event.observe(labelSpan,\"click\",OpenLayers.Function.bindAsEventListener(this.onInputClick,context));var br=document.createElement(\"br\");var groupArray=(baseLayer)?this.baseLayers:this.dataLayers;groupArray.push({'layer':layer,'inputElem':inputElem,'labelSpan':labelSpan});var groupDiv=(baseLayer)?this.baseLayersDiv:this.dataLayersDiv;groupDiv.appendChild(inputElem);groupDiv.appendChild(labelSpan);groupDiv.appendChild(br);}}\nthis.dataLbl.style.display=(containsOverlays)?\"\":\"none\";this.baseLbl.style.display=(containsBaseLayers)?\"\":\"none\";return this.div;},onInputClick:function(e){if(!this.inputElem.disabled){if(this.inputElem.type==\"radio\"){this.inputElem.checked=true;this.layer.map.setBaseLayer(this.layer);}else{this.inputElem.checked=!this.inputElem.checked;this.layerSwitcher.updateMap();}}\nOpenLayers.Event.stop(e);},onLayerClick:function(e){this.updateMap();},updateMap:function(){for(var i=0,len=this.baseLayers.length;i<len;i++){var layerEntry=this.baseLayers[i];if(layerEntry.inputElem.checked){this.map.setBaseLayer(layerEntry.layer,false);}}\nfor(var i=0,len=this.dataLayers.length;i<len;i++){var layerEntry=this.dataLayers[i];layerEntry.layer.setVisibility(layerEntry.inputElem.checked);}},maximizeControl:function(e){this.div.style.width=\"\";this.div.style.height=\"\";this.showControls(false);if(e!=null){OpenLayers.Event.stop(e);}},minimizeControl:function(e){this.div.style.width=\"0px\";this.div.style.height=\"0px\";this.showControls(true);if(e!=null){OpenLayers.Event.stop(e);}},showControls:function(minimize){this.maximizeDiv.style.display=minimize?\"\":\"none\";this.minimizeDiv.style.display=minimize?\"none\":\"\";this.layersDiv.style.display=minimize?\"none\":\"\";},loadContents:function(){OpenLayers.Event.observe(this.div,\"mouseup\",OpenLayers.Function.bindAsEventListener(this.mouseUp,this));OpenLayers.Event.observe(this.div,\"click\",this.ignoreEvent);OpenLayers.Event.observe(this.div,\"mousedown\",OpenLayers.Function.bindAsEventListener(this.mouseDown,this));OpenLayers.Event.observe(this.div,\"dblclick\",this.ignoreEvent);this.layersDiv=document.createElement(\"div\");this.layersDiv.id=this.id+\"_layersDiv\";OpenLayers.Element.addClass(this.layersDiv,\"layersDiv\");this.baseLbl=document.createElement(\"div\");this.baseLbl.innerHTML=OpenLayers.i18n(\"baseLayer\");OpenLayers.Element.addClass(this.baseLbl,\"baseLbl\");this.baseLayersDiv=document.createElement(\"div\");OpenLayers.Element.addClass(this.baseLayersDiv,\"baseLayersDiv\");this.dataLbl=document.createElement(\"div\");this.dataLbl.innerHTML=OpenLayers.i18n(\"overlays\");OpenLayers.Element.addClass(this.dataLbl,\"dataLbl\");this.dataLayersDiv=document.createElement(\"div\");OpenLayers.Element.addClass(this.dataLayersDiv,\"dataLayersDiv\");if(this.ascending){this.layersDiv.appendChild(this.baseLbl);this.layersDiv.appendChild(this.baseLayersDiv);this.layersDiv.appendChild(this.dataLbl);this.layersDiv.appendChild(this.dataLayersDiv);}else{this.layersDiv.appendChild(this.dataLbl);this.layersDiv.appendChild(this.dataLayersDiv);this.layersDiv.appendChild(this.baseLbl);this.layersDiv.appendChild(this.baseLayersDiv);}\nthis.div.appendChild(this.layersDiv);if(this.roundedCorner){OpenLayers.Rico.Corner.round(this.div,{corners:\"tl bl\",bgColor:\"transparent\",color:this.roundedCornerColor,blend:false});OpenLayers.Rico.Corner.changeOpacity(this.layersDiv,0.75);}\nvar imgLocation=OpenLayers.Util.getImagesLocation();var sz=new OpenLayers.Size(18,18);var img=imgLocation+'layer-switcher-maximize.png';this.maximizeDiv=OpenLayers.Util.createAlphaImageDiv(\"OpenLayers_Control_MaximizeDiv\",null,sz,img,\"absolute\");OpenLayers.Element.addClass(this.maximizeDiv,\"maximizeDiv\");this.maximizeDiv.style.display=\"none\";OpenLayers.Event.observe(this.maximizeDiv,\"click\",OpenLayers.Function.bindAsEventListener(this.maximizeControl,this));this.div.appendChild(this.maximizeDiv);var img=imgLocation+'layer-switcher-minimize.png';var sz=new OpenLayers.Size(18,18);this.minimizeDiv=OpenLayers.Util.createAlphaImageDiv(\"OpenLayers_Control_MinimizeDiv\",null,sz,img,\"absolute\");OpenLayers.Element.addClass(this.minimizeDiv,\"minimizeDiv\");this.minimizeDiv.style.display=\"none\";OpenLayers.Event.observe(this.minimizeDiv,\"click\",OpenLayers.Function.bindAsEventListener(this.minimizeControl,this));this.div.appendChild(this.minimizeDiv);},ignoreEvent:function(evt){OpenLayers.Event.stop(evt);},mouseDown:function(evt){this.isMouseDown=true;this.ignoreEvent(evt);},mouseUp:function(evt){if(this.isMouseDown){this.isMouseDown=false;this.ignoreEvent(evt);}},CLASS_NAME:\"OpenLayers.Control.LayerSwitcher\"});OpenLayers.Control.MouseDefaults=OpenLayers.Class(OpenLayers.Control,{performedDrag:false,wheelObserver:null,initialize:function(){OpenLayers.Control.prototype.initialize.apply(this,arguments);},destroy:function(){if(this.handler){this.handler.destroy();}\nthis.handler=null;this.map.events.un({\"click\":this.defaultClick,\"dblclick\":this.defaultDblClick,\"mousedown\":this.defaultMouseDown,\"mouseup\":this.defaultMouseUp,\"mousemove\":this.defaultMouseMove,\"mouseout\":this.defaultMouseOut,scope:this});OpenLayers.Event.stopObserving(window,\"DOMMouseScroll\",this.wheelObserver);OpenLayers.Event.stopObserving(window,\"mousewheel\",this.wheelObserver);OpenLayers.Event.stopObserving(document,\"mousewheel\",this.wheelObserver);this.wheelObserver=null;OpenLayers.Control.prototype.destroy.apply(this,arguments);},draw:function(){this.map.events.on({\"click\":this.defaultClick,\"dblclick\":this.defaultDblClick,\"mousedown\":this.defaultMouseDown,\"mouseup\":this.defaultMouseUp,\"mousemove\":this.defaultMouseMove,\"mouseout\":this.defaultMouseOut,scope:this});this.registerWheelEvents();},registerWheelEvents:function(){this.wheelObserver=OpenLayers.Function.bindAsEventListener(this.onWheelEvent,this);OpenLayers.Event.observe(window,\"DOMMouseScroll\",this.wheelObserver);OpenLayers.Event.observe(window,\"mousewheel\",this.wheelObserver);OpenLayers.Event.observe(document,\"mousewheel\",this.wheelObserver);},defaultClick:function(evt){if(!OpenLayers.Event.isLeftClick(evt)){return;}\nvar notAfterDrag=!this.performedDrag;this.performedDrag=false;return notAfterDrag;},defaultDblClick:function(evt){var newCenter=this.map.getLonLatFromViewPortPx(evt.xy);this.map.setCenter(newCenter,this.map.zoom+1);OpenLayers.Event.stop(evt);return false;},defaultMouseDown:function(evt){if(!OpenLayers.Event.isLeftClick(evt)){return;}\nthis.mouseDragStart=evt.xy.clone();this.performedDrag=false;if(evt.shiftKey){this.map.div.style.cursor=\"crosshair\";this.zoomBox=OpenLayers.Util.createDiv('zoomBox',this.mouseDragStart,null,null,\"absolute\",\"2px solid red\");this.zoomBox.style.backgroundColor=\"white\";this.zoomBox.style.filter=\"alpha(opacity=50)\";this.zoomBox.style.opacity=\"0.50\";this.zoomBox.style.fontSize=\"1px\";this.zoomBox.style.zIndex=this.map.Z_INDEX_BASE[\"Popup\"]-1;this.map.viewPortDiv.appendChild(this.zoomBox);}\ndocument.onselectstart=OpenLayers.Function.False;OpenLayers.Event.stop(evt);},defaultMouseMove:function(evt){this.mousePosition=evt.xy.clone();if(this.mouseDragStart!=null){if(this.zoomBox){var deltaX=Math.abs(this.mouseDragStart.x-evt.xy.x);var deltaY=Math.abs(this.mouseDragStart.y-evt.xy.y);this.zoomBox.style.width=Math.max(1,deltaX)+\"px\";this.zoomBox.style.height=Math.max(1,deltaY)+\"px\";if(evt.xy.x<this.mouseDragStart.x){this.zoomBox.style.left=evt.xy.x+\"px\";}\nif(evt.xy.y<this.mouseDragStart.y){this.zoomBox.style.top=evt.xy.y+\"px\";}}else{var deltaX=this.mouseDragStart.x-evt.xy.x;var deltaY=this.mouseDragStart.y-evt.xy.y;var size=this.map.getSize();var newXY=new OpenLayers.Pixel(size.w/2+deltaX,size.h/2+deltaY);var newCenter=this.map.getLonLatFromViewPortPx(newXY);this.map.setCenter(newCenter,null,true);this.mouseDragStart=evt.xy.clone();this.map.div.style.cursor=\"move\";}\nthis.performedDrag=true;}},defaultMouseUp:function(evt){if(!OpenLayers.Event.isLeftClick(evt)){return;}\nif(this.zoomBox){this.zoomBoxEnd(evt);}else{if(this.performedDrag){this.map.setCenter(this.map.center);}}\ndocument.onselectstart=null;this.mouseDragStart=null;this.map.div.style.cursor=\"\";},defaultMouseOut:function(evt){if(this.mouseDragStart!=null&&OpenLayers.Util.mouseLeft(evt,this.map.div)){if(this.zoomBox){this.removeZoomBox();}\nthis.mouseDragStart=null;}},defaultWheelUp:function(evt){if(this.map.getZoom()<=this.map.getNumZoomLevels()){this.map.setCenter(this.map.getLonLatFromPixel(evt.xy),this.map.getZoom()+1);}},defaultWheelDown:function(evt){if(this.map.getZoom()>0){this.map.setCenter(this.map.getLonLatFromPixel(evt.xy),this.map.getZoom()-1);}},zoomBoxEnd:function(evt){if(this.mouseDragStart!=null){if(Math.abs(this.mouseDragStart.x-evt.xy.x)>5||Math.abs(this.mouseDragStart.y-evt.xy.y)>5){var start=this.map.getLonLatFromViewPortPx(this.mouseDragStart);var end=this.map.getLonLatFromViewPortPx(evt.xy);var top=Math.max(start.lat,end.lat);var bottom=Math.min(start.lat,end.lat);var left=Math.min(start.lon,end.lon);var right=Math.max(start.lon,end.lon);var bounds=new OpenLayers.Bounds(left,bottom,right,top);this.map.zoomToExtent(bounds);}else{var end=this.map.getLonLatFromViewPortPx(evt.xy);this.map.setCenter(new OpenLayers.LonLat((end.lon),(end.lat)),this.map.getZoom()+1);}\nthis.removeZoomBox();}},removeZoomBox:function(){this.map.viewPortDiv.removeChild(this.zoomBox);this.zoomBox=null;},onWheelEvent:function(e){var inMap=false;var elem=OpenLayers.Event.element(e);while(elem!=null){if(this.map&&elem==this.map.div){inMap=true;break;}\nelem=elem.parentNode;}\nif(inMap){var delta=0;if(!e){e=window.event;}\nif(e.wheelDelta){delta=e.wheelDelta/120;if(window.opera&&window.opera.version()<9.2){delta=-delta;}}else if(e.detail){delta=-e.detail/3;}\nif(delta){e.xy=this.mousePosition;if(delta<0){this.defaultWheelDown(e);}else{this.defaultWheelUp(e);}}\nOpenLayers.Event.stop(e);}},CLASS_NAME:\"OpenLayers.Control.MouseDefaults\"});OpenLayers.Control.MousePosition=OpenLayers.Class(OpenLayers.Control,{autoActivate:true,element:null,prefix:'',separator:', ',suffix:'',numDigits:5,granularity:10,emptyString:null,lastXy:null,displayProjection:null,initialize:function(options){OpenLayers.Control.prototype.initialize.apply(this,arguments);},destroy:function(){this.deactivate();OpenLayers.Control.prototype.destroy.apply(this,arguments);},activate:function(){if(OpenLayers.Control.prototype.activate.apply(this,arguments)){this.map.events.register('mousemove',this,this.redraw);this.map.events.register('mouseout',this,this.reset);this.redraw();return true;}else{return false;}},deactivate:function(){if(OpenLayers.Control.prototype.deactivate.apply(this,arguments)){this.map.events.unregister('mousemove',this,this.redraw);this.map.events.unregister('mouseout',this,this.reset);this.element.innerHTML=\"\";return true;}else{return false;}},draw:function(){OpenLayers.Control.prototype.draw.apply(this,arguments);if(!this.element){this.div.left=\"\";this.div.top=\"\";this.element=this.div;}\nreturn this.div;},redraw:function(evt){var lonLat;if(evt==null){this.reset();return;}else{if(this.lastXy==null||Math.abs(evt.xy.x-this.lastXy.x)>this.granularity||Math.abs(evt.xy.y-this.lastXy.y)>this.granularity)\n{this.lastXy=evt.xy;return;}\nlonLat=this.map.getLonLatFromPixel(evt.xy);if(!lonLat){return;}\nif(this.displayProjection){lonLat.transform(this.map.getProjectionObject(),this.displayProjection);}\nthis.lastXy=evt.xy;}\nvar newHtml=this.formatOutput(lonLat);if(newHtml!=this.element.innerHTML){this.element.innerHTML=newHtml;}},reset:function(evt){if(this.emptyString!=null){this.element.innerHTML=this.emptyString;}},formatOutput:function(lonLat){var digits=parseInt(this.numDigits);var newHtml=this.prefix+\nlonLat.lon.toFixed(digits)+\nthis.separator+\nlonLat.lat.toFixed(digits)+\nthis.suffix;return newHtml;},CLASS_NAME:\"OpenLayers.Control.MousePosition\"});OpenLayers.Control.Pan=OpenLayers.Class(OpenLayers.Control,{slideFactor:50,direction:null,type:OpenLayers.Control.TYPE_BUTTON,initialize:function(direction,options){this.direction=direction;this.CLASS_NAME+=this.direction;OpenLayers.Control.prototype.initialize.apply(this,[options]);},trigger:function(){switch(this.direction){case OpenLayers.Control.Pan.NORTH:this.map.pan(0,-this.slideFactor);break;case OpenLayers.Control.Pan.SOUTH:this.map.pan(0,this.slideFactor);break;case OpenLayers.Control.Pan.WEST:this.map.pan(-this.slideFactor,0);break;case OpenLayers.Control.Pan.EAST:this.map.pan(this.slideFactor,0);break;}},CLASS_NAME:\"OpenLayers.Control.Pan\"});OpenLayers.Control.Pan.NORTH=\"North\";OpenLayers.Control.Pan.SOUTH=\"South\";OpenLayers.Control.Pan.EAST=\"East\";OpenLayers.Control.Pan.WEST=\"West\";OpenLayers.Control.PanZoom=OpenLayers.Class(OpenLayers.Control,{slideFactor:50,slideRatio:null,buttons:null,position:null,initialize:function(options){this.position=new OpenLayers.Pixel(OpenLayers.Control.PanZoom.X,OpenLayers.Control.PanZoom.Y);OpenLayers.Control.prototype.initialize.apply(this,arguments);},destroy:function(){OpenLayers.Control.prototype.destroy.apply(this,arguments);this.removeButtons();this.buttons=null;this.position=null;},draw:function(px){OpenLayers.Control.prototype.draw.apply(this,arguments);px=this.position;this.buttons=[];var sz=new OpenLayers.Size(18,18);var centered=new OpenLayers.Pixel(px.x+sz.w/2,px.y);this._addButton(\"panup\",\"north-mini.png\",centered,sz);px.y=centered.y+sz.h;this._addButton(\"panleft\",\"west-mini.png\",px,sz);this._addButton(\"panright\",\"east-mini.png\",px.add(sz.w,0),sz);this._addButton(\"pandown\",\"south-mini.png\",centered.add(0,sz.h*2),sz);this._addButton(\"zoomin\",\"zoom-plus-mini.png\",centered.add(0,sz.h*3+5),sz);this._addButton(\"zoomworld\",\"zoom-world-mini.png\",centered.add(0,sz.h*4+5),sz);this._addButton(\"zoomout\",\"zoom-minus-mini.png\",centered.add(0,sz.h*5+5),sz);return this.div;},_addButton:function(id,img,xy,sz){var imgLocation=OpenLayers.Util.getImagesLocation()+img;var btn=OpenLayers.Util.createAlphaImageDiv(this.id+\"_\"+id,xy,sz,imgLocation,\"absolute\");this.div.appendChild(btn);OpenLayers.Event.observe(btn,\"mousedown\",OpenLayers.Function.bindAsEventListener(this.buttonDown,btn));OpenLayers.Event.observe(btn,\"dblclick\",OpenLayers.Function.bindAsEventListener(this.doubleClick,btn));OpenLayers.Event.observe(btn,\"click\",OpenLayers.Function.bindAsEventListener(this.doubleClick,btn));btn.action=id;btn.map=this.map;if(!this.slideRatio){var slideFactorPixels=this.slideFactor;var getSlideFactor=function(){return slideFactorPixels;};}else{var slideRatio=this.slideRatio;var getSlideFactor=function(dim){return this.map.getSize()[dim]*slideRatio;};}\nbtn.getSlideFactor=getSlideFactor;this.buttons.push(btn);return btn;},_removeButton:function(btn){OpenLayers.Event.stopObservingElement(btn);btn.map=null;btn.getSlideFactor=null;this.div.removeChild(btn);OpenLayers.Util.removeItem(this.buttons,btn);},removeButtons:function(){for(var i=this.buttons.length-1;i>=0;--i){this._removeButton(this.buttons[i]);}},doubleClick:function(evt){OpenLayers.Event.stop(evt);return false;},buttonDown:function(evt){if(!OpenLayers.Event.isLeftClick(evt)){return;}\nswitch(this.action){case\"panup\":this.map.pan(0,-this.getSlideFactor(\"h\"));break;case\"pandown\":this.map.pan(0,this.getSlideFactor(\"h\"));break;case\"panleft\":this.map.pan(-this.getSlideFactor(\"w\"),0);break;case\"panright\":this.map.pan(this.getSlideFactor(\"w\"),0);break;case\"zoomin\":this.map.zoomIn();break;case\"zoomout\":this.map.zoomOut();break;case\"zoomworld\":this.map.zoomToMaxExtent();break;}\nOpenLayers.Event.stop(evt);},CLASS_NAME:\"OpenLayers.Control.PanZoom\"});OpenLayers.Control.PanZoom.X=4;OpenLayers.Control.PanZoom.Y=4;OpenLayers.Control.Panel=OpenLayers.Class(OpenLayers.Control,{controls:null,autoActivate:true,defaultControl:null,saveState:false,activeState:null,initialize:function(options){OpenLayers.Control.prototype.initialize.apply(this,[options]);this.controls=[];this.activeState={};},destroy:function(){OpenLayers.Control.prototype.destroy.apply(this,arguments);for(var i=this.controls.length-1;i>=0;i--){if(this.controls[i].events){this.controls[i].events.un({\"activate\":this.redraw,\"deactivate\":this.redraw,scope:this});}\nOpenLayers.Event.stopObservingElement(this.controls[i].panel_div);this.controls[i].panel_div=null;}\nthis.activeState=null;},activate:function(){if(OpenLayers.Control.prototype.activate.apply(this,arguments)){var control;for(var i=0,len=this.controls.length;i<len;i++){control=this.controls[i];if(control===this.defaultControl||(this.saveState&&this.activeState[control.id])){control.activate();}}\nif(this.saveState===true){this.defaultControl=null;}\nthis.redraw();return true;}else{return false;}},deactivate:function(){if(OpenLayers.Control.prototype.deactivate.apply(this,arguments)){var control;for(var i=0,len=this.controls.length;i<len;i++){control=this.controls[i];this.activeState[control.id]=control.deactivate();}\nreturn true;}else{return false;}},draw:function(){OpenLayers.Control.prototype.draw.apply(this,arguments);this.addControlsToMap(this.controls);return this.div;},redraw:function(){if(this.div.children.length>0){for(var l=this.div.children.length,i=l-1;i>=0;i--){this.div.removeChild(this.div.children[i]);}}\nthis.div.innerHTML=\"\";if(this.active){for(var i=0,len=this.controls.length;i<len;i++){var element=this.controls[i].panel_div;if(this.controls[i].active){element.className=this.controls[i].displayClass+\"ItemActive\";}else{element.className=this.controls[i].displayClass+\"ItemInactive\";}\nthis.div.appendChild(element);}}},activateControl:function(control){if(!this.active){return false;}\nif(control.type==OpenLayers.Control.TYPE_BUTTON){control.trigger();this.redraw();return;}\nif(control.type==OpenLayers.Control.TYPE_TOGGLE){if(control.active){control.deactivate();}else{control.activate();}\nthis.redraw();return;}\nvar c;for(var i=0,len=this.controls.length;i<len;i++){c=this.controls[i];if(c!=control&&(c.type===OpenLayers.Control.TYPE_TOOL||c.type==null)){c.deactivate();}}\ncontrol.activate();},addControls:function(controls){if(!(controls instanceof Array)){controls=[controls];}\nthis.controls=this.controls.concat(controls);for(var i=0,len=controls.length;i<len;i++){var element=document.createElement(\"div\");controls[i].panel_div=element;if(controls[i].title!=\"\"){controls[i].panel_div.title=controls[i].title;}\nOpenLayers.Event.observe(controls[i].panel_div,\"click\",OpenLayers.Function.bind(this.onClick,this,controls[i]));OpenLayers.Event.observe(controls[i].panel_div,\"dblclick\",OpenLayers.Function.bind(this.onDoubleClick,this,controls[i]));OpenLayers.Event.observe(controls[i].panel_div,\"mousedown\",OpenLayers.Function.bindAsEventListener(OpenLayers.Event.stop));}\nif(this.map){this.addControlsToMap(controls);this.redraw();}},addControlsToMap:function(controls){var control;for(var i=0,len=controls.length;i<len;i++){control=controls[i];if(control.autoActivate===true){control.autoActivate=false;this.map.addControl(control);control.autoActivate=true;}else{this.map.addControl(control);control.deactivate();}\ncontrol.events.on({\"activate\":this.redraw,\"deactivate\":this.redraw,scope:this});}},onClick:function(ctrl,evt){OpenLayers.Event.stop(evt?evt:window.event);this.activateControl(ctrl);},onDoubleClick:function(ctrl,evt){OpenLayers.Event.stop(evt?evt:window.event);},getControlsBy:function(property,match){var test=(typeof match.test==\"function\");var found=OpenLayers.Array.filter(this.controls,function(item){return item[property]==match||(test&&match.test(item[property]));});return found;},getControlsByName:function(match){return this.getControlsBy(\"name\",match);},getControlsByClass:function(match){return this.getControlsBy(\"CLASS_NAME\",match);},CLASS_NAME:\"OpenLayers.Control.Panel\"});OpenLayers.Control.Scale=OpenLayers.Class(OpenLayers.Control,{element:null,geodesic:false,initialize:function(element,options){OpenLayers.Control.prototype.initialize.apply(this,[options]);this.element=OpenLayers.Util.getElement(element);},draw:function(){OpenLayers.Control.prototype.draw.apply(this,arguments);if(!this.element){this.element=document.createElement(\"div\");this.div.appendChild(this.element);}\nthis.map.events.register('moveend',this,this.updateScale);this.updateScale();return this.div;},updateScale:function(){var scale;if(this.geodesic===true){var units=this.map.getUnits();if(!units){return;}\nvar inches=OpenLayers.INCHES_PER_UNIT;scale=(this.map.getGeodesicPixelSize().w||0.000001)*inches[\"km\"]*OpenLayers.DOTS_PER_INCH;}else{scale=this.map.getScale();}\nif(!scale){return;}\nif(scale>=9500&&scale<=950000){scale=Math.round(scale/1000)+\"K\";}else if(scale>=950000){scale=Math.round(scale/1000000)+\"M\";}else{scale=Math.round(scale);}\nthis.element.innerHTML=OpenLayers.i18n(\"scale\",{'scaleDenom':scale});},CLASS_NAME:\"OpenLayers.Control.Scale\"});OpenLayers.Control.ScaleLine=OpenLayers.Class(OpenLayers.Control,{maxWidth:100,topOutUnits:\"km\",topInUnits:\"m\",bottomOutUnits:\"mi\",bottomInUnits:\"ft\",eTop:null,eBottom:null,geodesic:false,initialize:function(options){OpenLayers.Control.prototype.initialize.apply(this,[options]);},draw:function(){OpenLayers.Control.prototype.draw.apply(this,arguments);if(!this.eTop){this.eTop=document.createElement(\"div\");this.eTop.className=this.displayClass+\"Top\";var theLen=this.topInUnits.length;this.div.appendChild(this.eTop);if((this.topOutUnits==\"\")||(this.topInUnits==\"\")){this.eTop.style.visibility=\"hidden\";}else{this.eTop.style.visibility=\"visible\";}\nthis.eBottom=document.createElement(\"div\");this.eBottom.className=this.displayClass+\"Bottom\";this.div.appendChild(this.eBottom);if((this.bottomOutUnits==\"\")||(this.bottomInUnits==\"\")){this.eBottom.style.visibility=\"hidden\";}else{this.eBottom.style.visibility=\"visible\";}}\nthis.map.events.register('moveend',this,this.update);this.update();return this.div;},getBarLen:function(maxLen){var digits=parseInt(Math.log(maxLen)/Math.log(10));var pow10=Math.pow(10,digits);var firstChar=parseInt(maxLen/pow10);var barLen;if(firstChar>5){barLen=5;}else if(firstChar>2){barLen=2;}else{barLen=1;}\nreturn barLen*pow10;},update:function(){var res=this.map.getResolution();if(!res){return;}\nvar curMapUnits=this.map.getUnits();var inches=OpenLayers.INCHES_PER_UNIT;var maxSizeData=this.maxWidth*res*inches[curMapUnits];var geodesicRatio=1;if(this.geodesic===true){var maxSizeGeodesic=(this.map.getGeodesicPixelSize().w||0.000001)*this.maxWidth;var maxSizeKilometers=maxSizeData/inches[\"km\"];geodesicRatio=maxSizeGeodesic/maxSizeKilometers;maxSizeData*=geodesicRatio;}\nvar topUnits;var bottomUnits;if(maxSizeData>100000){topUnits=this.topOutUnits;bottomUnits=this.bottomOutUnits;}else{topUnits=this.topInUnits;bottomUnits=this.bottomInUnits;}\nvar topMax=maxSizeData/inches[topUnits];var bottomMax=maxSizeData/inches[bottomUnits];var topRounded=this.getBarLen(topMax);var bottomRounded=this.getBarLen(bottomMax);topMax=topRounded/inches[curMapUnits]*inches[topUnits];bottomMax=bottomRounded/inches[curMapUnits]*inches[bottomUnits];var topPx=topMax/res/geodesicRatio;var bottomPx=bottomMax/res/geodesicRatio;if(this.eBottom.style.visibility==\"visible\"){this.eBottom.style.width=Math.round(bottomPx)+\"px\";this.eBottom.innerHTML=bottomRounded+\" \"+bottomUnits;}\nif(this.eTop.style.visibility==\"visible\"){this.eTop.style.width=Math.round(topPx)+\"px\";this.eTop.innerHTML=topRounded+\" \"+topUnits;}},CLASS_NAME:\"OpenLayers.Control.ScaleLine\"});OpenLayers.Control.ZoomIn=OpenLayers.Class(OpenLayers.Control,{type:OpenLayers.Control.TYPE_BUTTON,trigger:function(){this.map.zoomIn();},CLASS_NAME:\"OpenLayers.Control.ZoomIn\"});OpenLayers.Control.ZoomOut=OpenLayers.Class(OpenLayers.Control,{type:OpenLayers.Control.TYPE_BUTTON,trigger:function(){this.map.zoomOut();},CLASS_NAME:\"OpenLayers.Control.ZoomOut\"});OpenLayers.Control.ZoomToMaxExtent=OpenLayers.Class(OpenLayers.Control,{type:OpenLayers.Control.TYPE_BUTTON,trigger:function(){if(this.map){this.map.zoomToMaxExtent();}},CLASS_NAME:\"OpenLayers.Control.ZoomToMaxExtent\"});OpenLayers.Event={observers:false,KEY_BACKSPACE:8,KEY_TAB:9,KEY_RETURN:13,KEY_ESC:27,KEY_LEFT:37,KEY_UP:38,KEY_RIGHT:39,KEY_DOWN:40,KEY_DELETE:46,element:function(event){return event.target||event.srcElement;},isLeftClick:function(event){return(((event.which)&&(event.which==1))||((event.button)&&(event.button==1)));},isRightClick:function(event){return(((event.which)&&(event.which==3))||((event.button)&&(event.button==2)));},stop:function(event,allowDefault){if(!allowDefault){if(event.preventDefault){event.preventDefault();}else{event.returnValue=false;}}\nif(event.stopPropagation){event.stopPropagation();}else{event.cancelBubble=true;}},findElement:function(event,tagName){var element=OpenLayers.Event.element(event);while(element.parentNode&&(!element.tagName||(element.tagName.toUpperCase()!=tagName.toUpperCase()))){element=element.parentNode;}\nreturn element;},observe:function(elementParam,name,observer,useCapture){var element=OpenLayers.Util.getElement(elementParam);useCapture=useCapture||false;if(name=='keypress'&&(navigator.appVersion.match(/Konqueror|Safari|KHTML/)||element.attachEvent)){name='keydown';}\nif(!this.observers){this.observers={};}\nif(!element._eventCacheID){var idPrefix=\"eventCacheID_\";if(element.id){idPrefix=element.id+\"_\"+idPrefix;}\nelement._eventCacheID=OpenLayers.Util.createUniqueID(idPrefix);}\nvar cacheID=element._eventCacheID;if(!this.observers[cacheID]){this.observers[cacheID]=[];}\nthis.observers[cacheID].push({'element':element,'name':name,'observer':observer,'useCapture':useCapture});if(element.addEventListener){element.addEventListener(name,observer,useCapture);}else if(element.attachEvent){element.attachEvent('on'+name,observer);}},stopObservingElement:function(elementParam){var element=OpenLayers.Util.getElement(elementParam);var cacheID=element._eventCacheID;this._removeElementObservers(OpenLayers.Event.observers[cacheID]);},_removeElementObservers:function(elementObservers){if(elementObservers){for(var i=elementObservers.length-1;i>=0;i--){var entry=elementObservers[i];var args=new Array(entry.element,entry.name,entry.observer,entry.useCapture);var removed=OpenLayers.Event.stopObserving.apply(this,args);}}},stopObserving:function(elementParam,name,observer,useCapture){useCapture=useCapture||false;var element=OpenLayers.Util.getElement(elementParam);var cacheID=element._eventCacheID;if(name=='keypress'){if(navigator.appVersion.match(/Konqueror|Safari|KHTML/)||element.detachEvent){name='keydown';}}\nvar foundEntry=false;var elementObservers=OpenLayers.Event.observers[cacheID];if(elementObservers){var i=0;while(!foundEntry&&i<elementObservers.length){var cacheEntry=elementObservers[i];if((cacheEntry.name==name)&&(cacheEntry.observer==observer)&&(cacheEntry.useCapture==useCapture)){elementObservers.splice(i,1);if(elementObservers.length==0){delete OpenLayers.Event.observers[cacheID];}\nfoundEntry=true;break;}\ni++;}}\nif(foundEntry){if(element.removeEventListener){element.removeEventListener(name,observer,useCapture);}else if(element&&element.detachEvent){element.detachEvent('on'+name,observer);}}\nreturn foundEntry;},unloadCache:function(){if(OpenLayers.Event&&OpenLayers.Event.observers){for(var cacheID in OpenLayers.Event.observers){var elementObservers=OpenLayers.Event.observers[cacheID];OpenLayers.Event._removeElementObservers.apply(this,[elementObservers]);}\nOpenLayers.Event.observers=false;}},CLASS_NAME:\"OpenLayers.Event\"};OpenLayers.Event.observe(window,'unload',OpenLayers.Event.unloadCache,false);if(window.Event){OpenLayers.Util.applyDefaults(window.Event,OpenLayers.Event);}else{var Event=OpenLayers.Event;}\nOpenLayers.Events=OpenLayers.Class({BROWSER_EVENTS:[\"mouseover\",\"mouseout\",\"mousedown\",\"mouseup\",\"mousemove\",\"click\",\"dblclick\",\"rightclick\",\"dblrightclick\",\"resize\",\"focus\",\"blur\"],listeners:null,object:null,element:null,eventTypes:null,eventHandler:null,fallThrough:null,includeXY:false,clearMouseListener:null,initialize:function(object,element,eventTypes,fallThrough,options){OpenLayers.Util.extend(this,options);this.object=object;this.fallThrough=fallThrough;this.listeners={};this.eventHandler=OpenLayers.Function.bindAsEventListener(this.handleBrowserEvent,this);this.clearMouseListener=OpenLayers.Function.bind(this.clearMouseCache,this);this.eventTypes=[];if(eventTypes!=null){for(var i=0,len=eventTypes.length;i<len;i++){this.addEventType(eventTypes[i]);}}\nif(element!=null){this.attachToElement(element);}},destroy:function(){if(this.element){OpenLayers.Event.stopObservingElement(this.element);if(this.element.hasScrollEvent){OpenLayers.Event.stopObserving(window,\"scroll\",this.clearMouseListener);}}\nthis.element=null;this.listeners=null;this.object=null;this.eventTypes=null;this.fallThrough=null;this.eventHandler=null;},addEventType:function(eventName){if(!this.listeners[eventName]){this.eventTypes.push(eventName);this.listeners[eventName]=[];}},attachToElement:function(element){if(this.element){OpenLayers.Event.stopObservingElement(this.element);}\nthis.element=element;for(var i=0,len=this.BROWSER_EVENTS.length;i<len;i++){var eventType=this.BROWSER_EVENTS[i];this.addEventType(eventType);OpenLayers.Event.observe(element,eventType,this.eventHandler);}\nOpenLayers.Event.observe(element,\"dragstart\",OpenLayers.Event.stop);},on:function(object){for(var type in object){if(type!=\"scope\"){this.register(type,object.scope,object[type]);}}},register:function(type,obj,func){if((func!=null)&&(OpenLayers.Util.indexOf(this.eventTypes,type)!=-1)){if(obj==null){obj=this.object;}\nvar listeners=this.listeners[type];listeners.push({obj:obj,func:func});}},registerPriority:function(type,obj,func){if(func!=null){if(obj==null){obj=this.object;}\nvar listeners=this.listeners[type];if(listeners!=null){listeners.unshift({obj:obj,func:func});}}},un:function(object){for(var type in object){if(type!=\"scope\"){this.unregister(type,object.scope,object[type]);}}},unregister:function(type,obj,func){if(obj==null){obj=this.object;}\nvar listeners=this.listeners[type];if(listeners!=null){for(var i=0,len=listeners.length;i<len;i++){if(listeners[i].obj==obj&&listeners[i].func==func){listeners.splice(i,1);break;}}}},remove:function(type){if(this.listeners[type]!=null){this.listeners[type]=[];}},triggerEvent:function(type,evt){var listeners=this.listeners[type];if(!listeners||listeners.length==0){return;}\nif(evt==null){evt={};}\nevt.object=this.object;evt.element=this.element;if(!evt.type){evt.type=type;}\nvar listeners=listeners.slice(),continueChain;for(var i=0,len=listeners.length;i<len;i++){var callback=listeners[i];continueChain=callback.func.apply(callback.obj,[evt]);if((continueChain!=undefined)&&(continueChain==false)){break;}}\nif(!this.fallThrough){OpenLayers.Event.stop(evt,true);}\nreturn continueChain;},handleBrowserEvent:function(evt){if(this.includeXY){evt.xy=this.getMousePosition(evt);}\nthis.triggerEvent(evt.type,evt);},clearMouseCache:function(){this.element.scrolls=null;this.element.lefttop=null;this.element.offsets=null;},getMousePosition:function(evt){if(!this.includeXY){this.clearMouseCache();}else if(!this.element.hasScrollEvent){OpenLayers.Event.observe(window,\"scroll\",this.clearMouseListener);this.element.hasScrollEvent=true;}\nif(!this.element.scrolls){this.element.scrolls=[(document.documentElement.scrollLeft||document.body.scrollLeft),(document.documentElement.scrollTop||document.body.scrollTop)];}\nif(!this.element.lefttop){this.element.lefttop=[(document.documentElement.clientLeft||0),(document.documentElement.clientTop||0)];}\nif(!this.element.offsets){this.element.offsets=OpenLayers.Util.pagePosition(this.element);this.element.offsets[0]+=this.element.scrolls[0];this.element.offsets[1]+=this.element.scrolls[1];}\nreturn new OpenLayers.Pixel((evt.clientX+this.element.scrolls[0])-this.element.offsets[0]\n-this.element.lefttop[0],(evt.clientY+this.element.scrolls[1])-this.element.offsets[1]\n-this.element.lefttop[1]);},CLASS_NAME:\"OpenLayers.Events\"});OpenLayers.Format=OpenLayers.Class({options:null,externalProjection:null,internalProjection:null,data:null,keepData:false,initialize:function(options){OpenLayers.Util.extend(this,options);this.options=options;},destroy:function(){},read:function(data){OpenLayers.Console.userError(OpenLayers.i18n(\"readNotImplemented\"));},write:function(object){OpenLayers.Console.userError(OpenLayers.i18n(\"writeNotImplemented\"));},CLASS_NAME:\"OpenLayers.Format\"});OpenLayers.Lang[\"ar\"]=OpenLayers.Util.applyDefaults({'permalink':\"وصلة دائمة\",'baseLayer':\"الطبقة الاساسية\",'readNotImplemented':\"القراءة غير محققة.\",'writeNotImplemented':\"الكتابة غير محققة\",'errorLoadingGML':\"خطأ عند تحميل الملف جي ام ال ${url}\",'scale':\"النسبة = 1 : ${scaleDenom}\",'W':\"غ\",'E':\"شر\",'N':\"شم\",'S':\"ج\"});OpenLayers.Lang[\"be-tarask\"]=OpenLayers.Util.applyDefaults({'unhandledRequest':\"Неапрацаваны вынік запыту ${statusText}\",'permalink':\"Сталая спасылка\",'overlays':\"Слаі\",'baseLayer':\"Базавы слой\",'sameProjection':\"Аглядная мапа працуе толькі калі яна мае тую ж праекцыю, што і асноўная мапа\",'readNotImplemented':\"Функцыянальнасьць чытаньня ня створаная.\",'writeNotImplemented':\"Функцыянальнасьць запісу ня створаная.\",'noFID':\"Немагчыма абнавіць магчымасьць, для якога не існуе FID.\",'errorLoadingGML':\"Памылка загрузкі файла GML ${url}\",'browserNotSupported':\"Ваш браўзэр не падтрымлівае вэктарную графіку. У цяперашні момант падтрымліваюцца: ${renderers}\",'componentShouldBe':\"addFeatures : кампанэнт павінен быць ${geomType}\",'getFeatureError':\"getFeatureFromEvent выкліканы для слоя бяз рэндэру. Звычайна гэта азначае, што Вы зьнішчылі слой, але пакінулі зьвязаны зь ім апрацоўшчык.\",'minZoomLevelError':\"Уласьцівасьць minZoomLevel прызначана толькі для выкарыстаньня са слаямі вытворнымі ад FixedZoomLevels. Тое, што  гэты wfs-слой правяраецца на minZoomLevel — рэха прошлага. Але мы ня можам выдаліць гэтую магчымасьць, таму што ад яе залежаць некаторыя заснаваныя на OL дастасаваньні. Тым ня менш, праверка minZoomLevel будзе выдаленая ў вэрсіі 3.0. Калі ласка, выкарыстоўваеце замест яе ўстаноўкі мінімальнага/максымальнага памераў, як апісана тут: http://trac.openlayers.org/wiki/SettingZoomLevels\",'commitSuccess':\"WFS-транзакцыя: ПОСЬПЕХ ${response}\",'commitFailed':\"WFS-транзакцыя: ПАМЫЛКА ${response}\",'googleWarning':\"Не атрымалася загрузіць слой Google. \\x3cbr\\x3e\\x3cbr\\x3eКаб пазбавіцца гэтага паведамленьня, выберыце новы базавы слой у сьпісе ў верхнім правым куце.\\x3cbr\\x3e\\x3cbr\\x3e Хутчэй за ўсё, прычына ў тым, што скрыпт бібліятэкі Google Maps ня быў уключаныя альбо не ўтрымлівае слушны API-ключ для Вашага сайта.\\x3cbr\\x3e\\x3cbr\\x3eРаспрацоўшчыкам: Для таго, каб даведацца як зрабіць так, каб усё працавала, \\x3ca href=\\'http://trac.openlayers.org/wiki/Google\\' target=\\'_blank\\'\\x3eнацісьніце тут\\x3c/a\\x3e\",'getLayerWarning':\"Немагчыма загрузіць слой ${layerType}.\\x3cbr\\x3e\\x3cbr\\x3eКаб пазбавіцца гэтага паведамленьня, выберыце новы базавы слой у сьпісе ў верхнім правым куце.\\x3cbr\\x3e\\x3cbr\\x3eХутчэй за ўсё, прычына ў тым, што скрыпт бібліятэкі ${layerLib} ня быў слушна ўключаны.\\x3cbr\\x3e\\x3cbr\\x3eРаспрацоўшчыкам: Для таго, каб даведацца як зрабіць так, каб усё працавала, \\x3ca href=\\'http://trac.openlayers.org/wiki/${layerLib}\\' target=\\'_blank\\'\\x3eнацісьніце тут\\x3c/a\\x3e\",'scale':\"Маштаб = 1 : ${scaleDenom}\",'W':\"З\",'E':\"У\",'N':\"Пн\",'S':\"Пд\",'layerAlreadyAdded':\"Вы паспрабавалі дадаць слой ${layerName} на мапу, але ён ужо дададзены\",'reprojectDeprecated':\"Вы выкарыстоўваеце ўстаноўку \\'reproject\\' для слоя ${layerName}. Гэтая ўстаноўка зьяўляецца састарэлай: яна выкарыстоўвалася для падтрымкі паказу зьвестак на камэрцыйных базавых мапах, але гэта функцыя цяпер рэалізаваная ў убудаванай падтрымцы сфэрычнай праекцыі Мэркатара. Дадатковая інфармацыя ёсьць на http://trac.openlayers.org/wiki/SphericalMercator.\",'methodDeprecated':\"Гэты мэтад састарэлы і будзе выдалены ў вэрсіі 3.0. Калі ласка, замест яго выкарыстоўвайце ${newMethod}.\",'boundsAddError':\"Вам неабходна падаць абодва значэньні x і y для функцыі складаньня.\",'lonlatAddError':\"Вам неабходна падаць абодва значэньні lon і lat для функцыі складаньня.\",'pixelAddError':\"Вам неабходна падаць абодва значэньні x і y для функцыі складаньня.\",'unsupportedGeometryType':\"Тып геамэтрыі не падтрымліваецца: ${geomType}\",'pagePositionFailed':\"OpenLayers.Util.pagePosition failed: верагодна элемэнт з ідэнтыфікатарам ${elemId} займае няслушнае месца.\",'filterEvaluateNotImplemented':\"evaluate не рэалізаваны для гэтага тыпу фільтру.\"});OpenLayers.Lang[\"bg\"]=OpenLayers.Util.applyDefaults({'permalink':\"Постоянна препратка\",'baseLayer':\"Основен слой\",'errorLoadingGML':\"Грешка при зареждане на GML файл ${url}\",'scale':\"Мащаб = 1 : ${scaleDenom}\",'layerAlreadyAdded':\"Опитахте да добавите слой ${layerName} в картата, но той вече е добавен\",'methodDeprecated':\"Този метод е остарял и ще бъде премахват в 3.0. Вместо него използвайте ${newMethod}.\"});OpenLayers.Lang[\"br\"]=OpenLayers.Util.applyDefaults({'unhandledRequest':\"Distro evel reked anveret ${statusText}\",'permalink':\"Peurliamm\",'overlays':\"Gwiskadoù\",'baseLayer':\"Gwiskad diazez\",'sameProjection':\"Ne\\'z ar gartenn lec\\'hiañ en-dro nemet pa vez heñvel ar banndres anezhi ha hini ar gartenn bennañ\",'readNotImplemented':\"N\\'eo ket emplementet al lenn.\",'writeNotImplemented':\"N\\'eo ket emplementet ar skrivañ.\",'noFID':\"N\\'haller ket hizivaat un elfenn ma n\\'eus ket a niverenn-anaout (FID) eviti.\",'errorLoadingGML':\"Fazi e-ser kargañ ar restr GML ${url}\",'browserNotSupported':\"N\\'eo ket skoret an daskor vektorel gant ho merdeer. Setu aze an daskorerioù skoret evit ar poent :\\n${renderers}\",'componentShouldBe':\"addFeatures : bez\\' e tlefe ar parzh besañ eus ar seurt ${geomType}\",'getFeatureError':\"Galvet eo bet getFeatureFromEvent called war ur gwiskad hep daskorer. Kement-se a dalvez ez eus bet freuzet ur gwiskad hag hoc\\'h eus miret un embreger bennak stag outañ.\",'minZoomLevelError':\"Ne zleer implijout ar perzh minZoomLevel nemet evit gwiskadoù FixedZoomLevels-descendent. Ar fed ma wiria ar gwiskad WHS-se hag-eñ ez eus eus minZoomLevel zo un aspadenn gozh. Koulskoude n\\'omp ket evit e ziverkañ kuit da derriñ arloadoù diazezet war OL a c\\'hallfe bezañ stag outañ. Setu perak eo dispredet -- Lamet kuit e vo ar gwiriañ minZoomLevel a-is er stumm 3.0. Ober gant an arventennoù bihanañ/brasañ evel deskrivet amañ e plas : http://trac.openlayers.org/wiki/SettingZoomLevels\",'commitSuccess':\"Treuzgread WFS : MAT EO ${response}\",'commitFailed':\"Treuzgread WFS Transaction: C\\'HWITET ${response}\",'googleWarning':\"N\\'eus ket bet gallet kargañ ar gwiskad Google ent reizh.\\x3cbr\\x3e\\x3cbr\\x3eEvit en em zizober eus ar c\\'hemenn-mañ, dibabit ur BaseLayer nevez en diuzer gwiskadoù er c\\'horn dehoù el laez.\\x3cbr\\x3e\\x3cbr\\x3eSur a-walc\\'h eo peogwir n\\'eo ket bet ensoc\\'het levraoueg Google Maps pe neuze ne glot ket an alc\\'hwez API gant ho lec\\'hienn.\\x3cbr\\x3e\\x3cbr\\x3eDiorroerien : Evit reizhañ an dra-se, \\x3ca href=\\'http://trac.openlayers.org/wiki/Google\\' target=\\'_blank\\'\\x3eclick here\\x3c/a\\x3e\",'getLayerWarning':\"N\\'haller ket kargañ ar gwiskad ${layerType} ent reizh.\\x3cbr\\x3e\\x3cbr\\x3eEvit en em zizober eus ar c\\'hemenn-mañ, dibabit ur BaseLayer nevez en diuzer gwiskadoù er c\\'horn dehoù el laez.\\x3cbr\\x3e\\x3cbr\\x3eSur a-walc\\'h eo peogwir n\\'eo ket bet ensoc\\'het mat al levraoueg ${layerLib}.\\x3cbr\\x3e\\x3cbr\\x3eDiorroerien : Evit gouzout penaos reizhañ an dra-se, \\x3ca href=\\'http://trac.openlayers.org/wiki/${layerLib}\\' target=\\'_blank\\'\\x3eclick here\\x3c/a\\x3e\",'scale':\"Skeul = 1 : ${scaleDenom}\",'W':\"K\",'E':\"R\",'N':\"N\",'S':\"S\",'layerAlreadyAdded':\"Klasket hoc\\'h eus ouzhpennañ ar gwiskad : ${layerName} d\\'ar gartenn, met ouzhpennet e oa bet c\\'hoazh\",'reprojectDeprecated':\"Emaoc\\'h oc\\'h implijout an dibarzh \\'reproject\\' war ar gwiskad ${layerName}. Dispredet eo an dibarzh-mañ : bet eo hag e talveze da ziskwel roadennoù war-c\\'horre kartennoù diazez kenwerzhel, un dra hag a c\\'haller ober bremañ gant an arc\\'hwel dre skor banndres boullek Mercator. Muioc\\'h a ditouroù a c\\'haller da gaout war http://trac.openlayers.org/wiki/SphericalMercator.\",'methodDeprecated':\"Dispredet eo an daore-se ha tennet e vo kuit eus ar stumm 3.0. Grit gant ${newMethod} e plas.\",'boundsAddError':\"Rekis eo tremen an div dalvoudenn x ha y d\\'an arc\\'hwel add.\",'lonlatAddError':\"Rekis eo tremen an div dalvoudenn hedred ha ledred d\\'an arc\\'hwel add.\",'pixelAddError':\"Rekis eo tremen an div dalvoudenn x ha y d\\'an arc\\'hwel add.\",'unsupportedGeometryType':\"Seurt mentoniezh anskoret : ${geomType}\",'pagePositionFailed':\"C\\'hwitet eo OpenLayers.Util.pagePosition : marteze emañ lec\\'hiet fall an elfenn id ${elemId}.\",'filterEvaluateNotImplemented':\"N\\'eo ket bet emplementet ar priziañ evit seurt siloù c\\'hoazh.\"});OpenLayers.Lang[\"el\"]=OpenLayers.Util.applyDefaults({'scale':\"Κλίμακα ~ 1 : ${scaleDenom}\"});OpenLayers.Lang.en={'unhandledRequest':\"Unhandled request return ${statusText}\",'permalink':\"Permalink\",'overlays':\"Overlays\",'baseLayer':\"Base Layer\",'sameProjection':\"The overview map only works when it is in the same projection as the main map\",'readNotImplemented':\"Read not implemented.\",'writeNotImplemented':\"Write not implemented.\",'noFID':\"Can't update a feature for which there is no FID.\",'errorLoadingGML':\"Error in loading GML file ${url}\",'browserNotSupported':\"Your browser does not support vector rendering. Currently supported renderers are:\\n${renderers}\",'componentShouldBe':\"addFeatures : component should be an ${geomType}\",'getFeatureError':\"getFeatureFromEvent called on layer with no renderer. This usually means you \"+\"destroyed a layer, but not some handler which is associated with it.\",'minZoomLevelError':\"The minZoomLevel property is only intended for use \"+\"with the FixedZoomLevels-descendent layers. That this \"+\"wfs layer checks for minZoomLevel is a relic of the\"+\"past. We cannot, however, remove it without possibly \"+\"breaking OL based applications that may depend on it.\"+\" Therefore we are deprecating it -- the minZoomLevel \"+\"check below will be removed at 3.0. Please instead \"+\"use min/max resolution setting as described here: \"+\"http://trac.openlayers.org/wiki/SettingZoomLevels\",'commitSuccess':\"WFS Transaction: SUCCESS ${response}\",'commitFailed':\"WFS Transaction: FAILED ${response}\",'googleWarning':\"The Google Layer was unable to load correctly.<br><br>\"+\"To get rid of this message, select a new BaseLayer \"+\"in the layer switcher in the upper-right corner.<br><br>\"+\"Most likely, this is because the Google Maps library \"+\"script was either not included, or does not contain the \"+\"correct API key for your site.<br><br>\"+\"Developers: For help getting this working correctly, \"+\"<a href='http://trac.openlayers.org/wiki/Google' \"+\"target='_blank'>click here</a>\",'getLayerWarning':\"The ${layerType} Layer was unable to load correctly.<br><br>\"+\"To get rid of this message, select a new BaseLayer \"+\"in the layer switcher in the upper-right corner.<br><br>\"+\"Most likely, this is because the ${layerLib} library \"+\"script was not correctly included.<br><br>\"+\"Developers: For help getting this working correctly, \"+\"<a href='http://trac.openlayers.org/wiki/${layerLib}' \"+\"target='_blank'>click here</a>\",'scale':\"Scale = 1 : ${scaleDenom}\",'W':'W','E':'E','N':'N','S':'S','graticule':'Graticule','layerAlreadyAdded':\"You tried to add the layer: ${layerName} to the map, but it has already been added\",'reprojectDeprecated':\"You are using the 'reproject' option \"+\"on the ${layerName} layer. This option is deprecated: \"+\"its use was designed to support displaying data over commercial \"+\"basemaps, but that functionality should now be achieved by using \"+\"Spherical Mercator support. More information is available from \"+\"http://trac.openlayers.org/wiki/SphericalMercator.\",'methodDeprecated':\"This method has been deprecated and will be removed in 3.0. \"+\"Please use ${newMethod} instead.\",'boundsAddError':\"You must pass both x and y values to the add function.\",'lonlatAddError':\"You must pass both lon and lat values to the add function.\",'pixelAddError':\"You must pass both x and y values to the add function.\",'unsupportedGeometryType':\"Unsupported geometry type: ${geomType}\",'pagePositionFailed':\"OpenLayers.Util.pagePosition failed: element with id ${elemId} may be misplaced.\",'filterEvaluateNotImplemented':\"evaluate is not implemented for this filter type.\",'end':''};OpenLayers.Lang[\"fi\"]=OpenLayers.Util.applyDefaults({'permalink':\"Ikilinkki\",'overlays':\"Kerrokset\",'baseLayer':\"Peruskerros\",'sameProjection':\"Yleiskuvakarttaa voi käyttää vain, kun sillä on sama projektio kuin pääkartalla.\",'W':\"L\",'E':\"I\",'N':\"P\",'S':\"E\"});OpenLayers.Lang[\"fur\"]=OpenLayers.Util.applyDefaults({'permalink':\"Leam Permanent\",'overlays':\"Livei parsore\",'baseLayer':\"Livel di base\",'browserNotSupported':\"Il to sgarfadôr nol supuarte la renderizazion vetoriâl. Al moment a son supuartâts:\\n${renderers}\",'scale':\"Scjale = 1 : ${scaleDenom}\",'W':\"O\",'E':\"E\",'N':\"N\",'S':\"S\"});OpenLayers.Lang[\"gl\"]=OpenLayers.Util.applyDefaults({'unhandledRequest':\"Solicitude non xerada; a resposta foi: ${statusText}\",'permalink':\"Ligazón permanente\",'overlays':\"Capas superpostas\",'baseLayer':\"Capa base\",'sameProjection':\"A vista xeral do mapa só funciona cando está na mesma proxección có mapa principal\",'readNotImplemented':\"Lectura non implementada.\",'writeNotImplemented':\"Escritura non implementada.\",'noFID':\"Non se pode actualizar a funcionalidade para a que non hai FID.\",'errorLoadingGML':\"Erro ao cargar o ficheiro GML ${url}\",'browserNotSupported':\"O seu navegador non soporta a renderización de vectores. Os renderizadores soportados actualmente son:\\n${renderers}\",'componentShouldBe':\"addFeatures: o compoñente debera ser de tipo ${geomType}\",'getFeatureError':\"getFeatureFromEvent ten sido chamado a unha capa sen renderizador. Isto normalmente significa que destruíu unha capa, mais non o executador que está asociado con ela.\",'minZoomLevelError':\"A propiedade minZoomLevel é só para uso conxuntamente coas capas FixedZoomLevels-descendent. O feito de que esa capa wfs verifique o minZoomLevel é unha reliquia do pasado. Non podemos, con todo, eliminala sen a posibilidade de non romper as aplicacións baseadas en OL que poidan depender dela. Por iso a estamos deixando obsoleta (a comprobación minZoomLevel de embaixo será eliminada na versión 3.0). Por favor, no canto diso use o axuste de resolución mín/máx tal e como está descrito aquí: http://trac.openlayers.org/wiki/SettingZoomLevels\",'commitSuccess':\"Transacción WFS: ÉXITO ${response}\",'commitFailed':\"Transacción WFS: FALLIDA ${response}\",'googleWarning':\"A capa do Google non puido cargarse correctamente.\\x3cbr\\x3e\\x3cbr\\x3ePara evitar esta mensaxe, escolla unha nova capa base no seleccionador de capas na marxe superior dereita.\\x3cbr\\x3e\\x3cbr\\x3eProbablemente, isto acontece porque a escritura da libraría do Google Maps ou ben non foi incluída ou ben non contén a clave API correcta para o seu sitio.\\x3cbr\\x3e\\x3cbr\\x3eDesenvolvedores: para axudar a facer funcionar isto correctamente, \\x3ca href=\\'http://trac.openlayers.org/wiki/Google\\' target=\\'_blank\\'\\x3epremede aquí\\x3c/a\\x3e\",'getLayerWarning':\"A capa ${layerType} foi incapaz de cargarse correctamente.\\x3cbr\\x3e\\x3cbr\\x3ePara evitar esta mensaxe, escolla unha nova capa base no seleccionador de capas na marxe superior dereita.\\x3cbr\\x3e\\x3cbr\\x3eProbablemente, isto acontece porque a escritura da libraría ${layerLib} non foi ben incluída.\\x3cbr\\x3e\\x3cbr\\x3eDesenvolvedores: para axudar a facer funcionar isto correctamente, \\x3ca href=\\'http://trac.openlayers.org/wiki/${layerLib}\\' target=\\'_blank\\'\\x3epremede aquí\\x3c/a\\x3e\",'scale':\"Escala = 1 : ${scaleDenom}\",'W':\"O\",'E':\"L\",'N':\"N\",'S':\"S\",'layerAlreadyAdded':\"Intentou engadir a capa: ${layerName} ao mapa, pero xa fora engadida\",'reprojectDeprecated':\"Está usando a opción \\\"reproject\\\" na capa ${layerName}. Esta opción está obsoleta: o seu uso foi deseñado para a visualización de datos sobre mapas base comerciais, pero esta funcionalidade debera agora ser obtida utilizando a proxección Spherical Mercator. Hai dispoñible máis información en http://trac.openlayers.org/wiki/SphericalMercator.\",'methodDeprecated':\"Este método está obsoleto e será eliminado na versión 3.0. Por favor, no canto deste use ${newMethod}.\",'boundsAddError':\"Debe achegar os valores x e y á función add.\",'lonlatAddError':\"Debe achegar tanto o valor lon coma o lat á función add.\",'pixelAddError':\"Debe achegar os valores x e y á función add.\",'unsupportedGeometryType':\"Tipo xeométrico non soportado: ${geomType}\",'pagePositionFailed':\"OpenLayers.Util.pagePosition fallou: o elemento con id ${elemId} pode non estar na súa posición.\",'filterEvaluateNotImplemented':\"avaliar non está implementado para este tipo de filtro.\"});OpenLayers.Lang[\"gsw\"]=OpenLayers.Util.applyDefaults({'unhandledRequest':\"Nit behandleti Aafrogsruckmäldig ${statusText}\",'permalink':\"Permalink\",'overlays':\"Iberlagerige\",'baseLayer':\"Grundcharte\",'sameProjection':\"D Ibersichts-Charte funktioniert nume, wänn si di glych Projäktion brucht wie d Hauptcharte\",'readNotImplemented':\"Läse nit implementiert.\",'writeNotImplemented':\"Schrybe nit implementiert.\",'noFID':\"E Feature, wu s kei FID derfir git, cha nit aktualisiert wäre.\",'errorLoadingGML':\"Fähler bim Lade vu dr GML-Datei ${url}\",'browserNotSupported':\"Dyy Browser unterstitzt kei Vektordarstellig. Aktuäll unterstitzti Renderer:\\n${renderers}\",'componentShouldBe':\"addFeatures : Komponänt sott dr Typ ${geomType} syy\",'getFeatureError':\"getFeatureFromEvent isch uf eme Layer ohni Renderer ufgruefe wore. Des heisst normalerwys, ass Du e Layer kaputt gmacht hesch, aber nit dr Handler, wu derzue ghert.\",'minZoomLevelError':\"D minZoomLevel-Eigeschaft isch nume dänk fir d Layer, wu vu dr FixedZoomLevels abstamme. Ass dää wfs-Layer minZoomLevel prieft, scih e Relikt us dr Vergangeheit. Mir chenne s aber nit ändere ohni OL_basierti Aawändige villicht kaputt gehn, wu dervu abhänge.  Us däm Grund het die Funktion d Eigeschaft \\'deprecated\\' iberchuu. D minZoomLevel-Priefig unte wird in dr Version 3.0 usegnuu. Bitte verwänd statt däm e min/max-Uflesig wie s do bschriben isch: http://trac.openlayers.org/wiki/SettingZoomLevels\",'commitSuccess':\"WFS-Transaktion: ERFOLGRYCH ${response}\",'commitFailed':\"WFS-Transaktion: FÄHLGSCHLAA ${response}\",'googleWarning':\"Dr Google-Layer het nit korräkt chenne glade wäre.\\x3cbr\\x3e\\x3cbr\\x3eGo die Mäldig nimi z kriege, wehl e andere Hintergrundlayer us em LayerSwitcher im rächte obere Ecke.\\x3cbr\\x3e\\x3cbr\\x3eDää Fähler git s seli hyfig, wel s Skript vu dr Google-Maps-Bibliothek nit yybunde woren isch oder wel s kei giltige API-Schlissel fir Dyy URL din het.\\x3cbr\\x3e\\x3cbr\\x3eEntwickler: Fir Hilf zum korräkte Yybinde vum Google-Layer \\x3ca href=\\'http://trac.openlayers.org/wiki/Google\\' target=\\'_blank\\'\\x3edoo drucke\\x3c/a\\x3e\",'getLayerWarning':\"Dr ${layerType}-Layer het nit korräkt chenne glade wäre.\\x3cbr\\x3e\\x3cbr\\x3eGo die Mäldig nimi z kriege, wehl e andere Hintergrundlayer us em LayerSwitcher im rächte obere Ecke.\\x3cbr\\x3e\\x3cbr\\x3eDää Fähler git s seli hyfig, wel s Skript vu dr \\'${layerLib}\\'-Bibliothek nit yybunde woren isch oder wel s kei giltige API-Schlissel fir Dyy URL din het.\\x3cbr\\x3e\\x3cbr\\x3eEntwickler: Fir Hilf zum korräkte Yybinde vu Layer \\x3ca href=\\'http://trac.openlayers.org/wiki/${layerLib}\\' target=\\'_blank\\'\\x3edoo drucke\\x3c/a\\x3e\",'scale':\"Maßstab = 1 : ${scaleDenom}\",'W':\"W\",'E':\"O\",'N':\"N\",'S':\"S\",'layerAlreadyAdded':\"Du hesch versuecht dää Layer in d Charte yyzfiege: ${layerName}, aber är isch schoi yygfiegt\",'reprojectDeprecated':\"Du bruchsch d \\'reproject\\'-Option bim ${layerName}-Layer. Die Option isch nimi giltig: si isch aagleit wore go   Date iber kommerziälli Grundcharte lege, aber des sott mer jetz mache mit dr Unterstitzig vu Spherical Mercator. Meh Informatione git s uf http://trac.openlayers.org/wiki/SphericalMercator.\",'methodDeprecated':\"Die Methode isch veraltet un wird us dr Version 3.0 usegnuu. Bitte verwäbnd statt däm ${newMethod}.\",'boundsAddError':\"Du muesch e x-Wärt un e y-Wärt yygee bi dr Zuefieg-Funktion\",'lonlatAddError':\"Du meusch e Lengi- un e Breiti-Grad yygee bi dr Zuefieg-Funktion.\",'pixelAddError':\"Du muesch x- un y-Wärt aagee bi dr Zuefieg-Funktion.\",'unsupportedGeometryType':\"Nit unterstitze Geometrii-Typ: ${geomType}\",'pagePositionFailed':\"OpenLayers.Util.pagePosition fählgschlaa: Elemänt mit ID ${elemId} isch villicht falsch gsetzt.\",'filterEvaluateNotImplemented':\"evaluiere isch nit implemäntiert in däm Filtertyp.\"});OpenLayers.Lang[\"hr\"]=OpenLayers.Util.applyDefaults({'unhandledRequest':\"Nepodržani zahtjev ${statusText}\",'permalink':\"Permalink\",'overlays':\"Overlays\",'baseLayer':\"Osnovna karta\",'sameProjection':\"Pregledna karta radi jedino kao je u istoj projekciji kao i glava karta\",'readNotImplemented':\"Čitanje nije implementirano.\",'writeNotImplemented':\"Pisanje nije implementirano.\",'noFID':\"Ne mogu ažurirati značajku za koju ne postoji FID.\",'errorLoadingGML':\"Greška u učitavanju GML datoteke ${url}\",'browserNotSupported':\"Vaš preglednik ne podržava vektorsko renderiranje. Trenutno podržani rendereri su: ${renderers}\",'componentShouldBe':\"addFeatures : komponenta bi trebala biti ${geomType}\",'getFeatureError':\"getFeatureFromEvent je pozvao Layer bez renderera. Ovo obično znači da ste uništiili Layer, a ne neki Handler koji je povezan s njim.\",'commitSuccess':\"WFS Transakcija: USPJEŠNA ${response}\",'commitFailed':\"WFS Transakcija: NEUSPJEŠNA ${response}\",'scale':\"Mjerilo = 1 : ${scaleDenom}\",'layerAlreadyAdded':\"Pokušali ste dodati layer:  ${layerName} na kartu, ali je već dodan\",'methodDeprecated':\"Ova metoda nije odobrena i biti će maknuta u 3.0. Koristite ${newMethod}.\",'boundsAddError':\"Morate dati obje vrijednosti ,  x i y  da bi dodali funkciju.\",'lonlatAddError':\"Morate dati obje vrijednosti , (lon i lat) da bi dodali funkciju.\",'pixelAddError':\"Morate dati obje vrijednosti ,  x i y  da bi dodali funkciju.\",'unsupportedGeometryType':\"Nepodržani tip geometrije: ${geomType}\",'pagePositionFailed':\"OpenLayers.Util.pagePosition nije uspjelo: element sa id ${elemId} može biti krivo smješten.\"});OpenLayers.Lang[\"hsb\"]=OpenLayers.Util.applyDefaults({'unhandledRequest':\"Wotmołwa njewobdźěłaneho naprašowanja ${statusText}\",'permalink':\"Trajny wotkaz\",'overlays':\"Naworštowanja\",'baseLayer':\"Zakładna runina\",'sameProjection':\"Přehladowa karta jenož funguje, hdyž je w samsnej projekciji kaž hłowna karta\",'readNotImplemented':\"Čitanje njeimplementowane.\",'writeNotImplemented':\"Pisanje njeimplementowane.\",'noFID':\"Funkcija, za kotruž FID njeje, njeda so aktualizować.\",'errorLoadingGML':\"Zmylk při začitowanju dataje ${url}\",'browserNotSupported':\"Twój wobhladowak wektorowe rysowanje njepodpěruje. Tuchwilu podpěrowane rysowaki su:\\n${renderers}\",'componentShouldBe':\"addFeatures: komponenta měła ${geomType} być\",'getFeatureError':\"getFeatureFromEvent bu na woršće bjez rysowak zawołany. To zwjetša woznamjenja, zo sy worštu zničił, ale nic wobdźěłak, kotryž je z njej zwjazany.\",'minZoomLevelError':\"Kajkosć minZoomLevel je jenož za wužiwanje z worštami myslena, kotrež wot FixedZoomLevels pochadźeja. Zo tuta woršta wfs za minZoomLevel přepruwuje, je relikt zańdźenosće. Njemóžemy wšak ju wotstronić, bjeztoho zo aplikacije, kotrež na OpenLayers bazěruja a snano tutu kajkosć wužiwaja, hižo njefunguja. Tohodla smy ju jako zestarjenu woznamjenili -- přepruwowanje za minZoomLevel budu so we wersiji 3.0 wotstronjeć. Prošu wužij město toho nastajenje min/max, kaž je tu wopisane: http://trac.openlayers.org/wiki/SettingZoomLevels\",'commitSuccess':\"WFS-Transakcija: WUSPĚŠNA ${response}\",'commitFailed':\"WFS-Transakcija: NJEPORADŹENA ${response}\",'googleWarning':\"Woršta Google njemóžeše so korektnje začitać.\\x3cbr\\x3e\\x3cbr\\x3eZo by tutu zdźělenku wotbył, wubjer nowy BaseLayer z wuběra worštow horjeka naprawo.\\x3cbr\\x3e\\x3cbr\\x3eNajskerje so to stawa, dokelž skript biblioteki Google Maps pak njebu zapřijaty pak njewobsahuje korektny kluč API za twoje sydło.\\x3cbr\\x3e\\x3cbr\\x3eWuwiwarjo: Za pomoc ke korektnemu fungowanju worštow\\n\\x3ca href=\\'http://trac.openlayers.org/wiki/Google\\' target=\\'_blank\\'\\x3etu kliknyć\\x3c/a\\x3e\",'getLayerWarning':\"Woršta ${layerType} njemóžeše so korektnje začitać.\\x3cbr\\x3e\\x3cbr\\x3eZo by tutu zdźělenku wotbył, wubjer nowy BaseLayer z wuběra worštow horjeka naprawo.\\x3cbr\\x3e\\x3cbr\\x3eNajskerje so to stawa, dokelž skript biblioteki ${layerLib} njebu korektnje zapřijaty.\\x3cbr\\x3e\\x3cbr\\x3eWuwiwarjo: Za pomoc ke korektnemu fungowanju worštow\\n\\x3ca href=\\'http://trac.openlayers.org/wiki/${layerLib}\\' target=\\'_blank\\'\\x3etu kliknyć\\x3c/a\\x3e\",'scale':\"Měritko = 1 : ${scaleDenom}\",'W':\"Z\",'E':\"W\",'N':\"S\",'S':\"J\",'layerAlreadyAdded':\"Sy spytał runinu ${layerName} karće dodać, ale je so hižo dodała\",'reprojectDeprecated':\"Wužiwaš opciju \\\"reproject\\\" wořšty ${layerName}. Tuta opcija je zestarjena: jeje wužiwanje bě myslene, zo by zwobraznjenje datow nad komercielnymi bazowymi kartami podpěrało, ale funkcionalnosć měła so nětko z pomocu Sperical Mercator docpěć. Dalše informacije steja na http://trac.openlayers.org/wiki/SphericalMercator k dispoziciji.\",'methodDeprecated':\"Tuta metoda je so njeschwaliła a budźe so w 3.0 wotstronjeć. Prošu wužij ${newMethod} město toho.\",'boundsAddError':\"Dyrbiš hódnotu x kaž tež y funkciji \\\"add\\\" přepodać.\",'lonlatAddError':\"Dyrbiš hódnotu lon kaž tež lat funkciji \\\"add\\\" přepodać.\",'pixelAddError':\"Dyrbiš hódnotu x kaž tež y funkciji \\\"add\\\" přepodać.\",'unsupportedGeometryType':\"Njepodpěrowany geometrijowy typ: ${geomType}\",'pagePositionFailed':\"OpenLayers.Util.pagePosition je so njeporadźił: element z id ${elemId} bu snano wopak zaměstnjeny.\",'filterEvaluateNotImplemented':\"wuhódnoćenje njeje za tutón filtrowy typ implementowany.\"});OpenLayers.Lang[\"hu\"]=OpenLayers.Util.applyDefaults({'unhandledRequest':\"Nem kezelt kérés visszatérése ${statusText}\",'permalink':\"Permalink\",'overlays':\"Rávetítések\",'baseLayer':\"Alapréteg\",'sameProjection':\"Az áttekintő térkép csak abban az esetben működik, ha ugyanazon a vetületen van, mint a fő térkép.\",'readNotImplemented':\"Olvasás nincs végrehajtva.\",'writeNotImplemented':\"Írás nincs végrehajtva.\",'noFID':\"Nem frissíthető olyan jellemző, amely nem rendelkezik FID-del.\",'errorLoadingGML':\"Hiba GML-fájl betöltésekor ${url}\",'browserNotSupported':\"A böngészője nem támogatja a vektoros renderelést. A jelenleg támogatott renderelők:\\n${renderers}\",'componentShouldBe':\"addFeatures : az összetevőnek ilyen típusúnak kell lennie: ${geomType}\",'getFeatureError':\"getFeatureFromEvent réteget hívott meg renderelő nélkül. Ez rendszerint azt jelenti, hogy megsemmisített egy fóliát, de néhány ahhoz társított kezelőt nem.\",'minZoomLevelError':\"A minZoomLevel tulajdonságot csak a következővel való használatra szánták: FixedZoomLevels-leszármazott fóliák. Ez azt jelenti, hogy a minZoomLevel wfs fólia jelölőnégyzetei már a múlté. Mi azonban nem távolíthatjuk el annak a veszélye nélkül, hogy az esetlegesen ettől függő OL alapú alkalmazásokat tönkretennénk. Ezért ezt érvénytelenítjük -- a minZoomLevel az alul levő jelölőnégyzet a 3.0-s verzióból el lesz távolítva. Kérjük, helyette használja a  min/max felbontás beállítást, amelyről az alábbi helyen talál leírást: http://trac.openlayers.org/wiki/SettingZoomLevels\",'commitSuccess':\"WFS tranzakció: SIKERES ${response}\",'commitFailed':\"WFS tranzakció: SIKERTELEN ${response}\",'googleWarning':\"A Google fólia betöltése sikertelen.\\x3cbr\\x3e\\x3cbr\\x3eAhhoz, hogy ez az üzenet eltűnjön, válasszon egy új BaseLayer fóliát a jobb felső sarokban található fóliakapcsoló segítségével.\\x3cbr\\x3e\\x3cbr\\x3eNagy valószínűséggel ez azért van, mert a Google Maps könyvtár parancsfájlja nem található, vagy nem tartalmazza az Ön oldalához tartozó megfelelő API-kulcsot.\\x3cbr\\x3e\\x3cbr\\x3eFejlesztőknek: A helyes működtetésre vonatkozó segítség az alábbi helyen érhető el, \\x3ca href=\\'http://trac.openlayers.org/wiki/Google\\' target=\\'_blank\\'\\x3ekattintson ide\\x3c/a\\x3e\",'getLayerWarning':\"A(z) ${layerType} fólia nem töltődött be helyesen.\\x3cbr\\x3e\\x3cbr\\x3eAhhoz, hogy ez az üzenet eltűnjön, válasszon egy új BaseLayer fóliát a jobb felső sarokban található fóliakapcsoló segítségével.\\x3cbr\\x3e\\x3cbr\\x3eNagy valószínűséggel ez azért van, mert a(z) ${layerLib} könyvtár parancsfájlja helytelen.\\x3cbr\\x3e\\x3cbr\\x3eFejlesztőknek: A helyes működtetésre vonatkozó segítség az alábbi helyen érhető el, \\x3ca href=\\'http://trac.openlayers.org/wiki/${layerLib}\\' target=\\'_blank\\'\\x3ekattintson ide\\x3c/a\\x3e\",'scale':\"Lépték = 1 : ${scaleDenom}\",'W':\"Ny\",'E':\"K\",'N':\"É\",'S':\"D\",'layerAlreadyAdded':\"Megpróbálta hozzáadni a(z) ${layerName} fóliát a térképhez, de az már hozzá van adva\",'reprojectDeprecated':\"Ön a \\'reproject\\' beállítást használja a(z) ${layerName} fólián. Ez a beállítás érvénytelen: használata az üzleti alaptérképek fölötti adatok megjelenítésének támogatására szolgált, de ezt a funkció ezentúl a Gömbi Mercator használatával érhető el. További információ az alábbi helyen érhető el: http://trac.openlayers.org/wiki/SphericalMercator\",'methodDeprecated':\"Ez a módszer érvénytelenítve lett és a 3.0-s verzióból el lesz távolítva. Használja a(z) ${newMethod} módszert helyette.\",'boundsAddError':\"Az x és y értékeknek egyaránt meg kell felelnie, hogy a funkciót hozzáadhassa.\",'lonlatAddError':\"A hossz. és szél. értékeknek egyaránt meg kell felelnie, hogy a funkciót hozzáadhassa.\",'pixelAddError':\"Az x és y értékeknek egyaránt meg kell felelnie, hogy a funkciót hozzáadhassa.\",'unsupportedGeometryType':\"Nem támogatott geometriatípus: ${geomType}\",'pagePositionFailed':\"OpenLayers.Util.pagePosition sikertelen: lehetséges, hogy a(z) ${elemId} azonosítójú elem téves helyre került.\",'filterEvaluateNotImplemented':\"ennél a szűrőtípusnál kiértékelés nem hajtódik végre.\"});OpenLayers.Lang[\"ia\"]=OpenLayers.Util.applyDefaults({'unhandledRequest':\"Le responsa a un requesta non esseva maneate: ${statusText}\",'permalink':\"Permaligamine\",'overlays':\"Superpositiones\",'baseLayer':\"Strato de base\",'sameProjection':\"Le mini-carta functiona solmente si illo es in le mesme projection que le carta principal\",'readNotImplemented':\"Lectura non implementate.\",'writeNotImplemented':\"Scriptura non implementate.\",'noFID':\"Non pote actualisar un elemento sin FID.\",'errorLoadingGML':\"Error al cargamento del file GML ${url}\",'browserNotSupported':\"Tu navigator non supporta le rendition de vectores. Le renditores actualmente supportate es:\\n${renderers}\",'componentShouldBe':\"addFeatures: le componente debe esser del typo ${geomType}\",'getFeatureError':\"getFeatureFromEvent ha essite appellate in un strato sin renditor. Isto significa generalmente que tu ha destruite un strato, ma lassava un gestor associate con illo.\",'minZoomLevelError':\"Le proprietate minZoomLevel es solmente pro uso con le stratos descendente de FixedZoomLevels. Le facto que iste strato WFS verifica minZoomLevel es un reliquia del passato. Nonobstante, si nos lo remove immediatemente, nos pote rumper applicationes a base de OL que depende de illo. Ergo nos lo declara obsolete; le verification de minZoomLevel in basso essera removite in version 3.0. Per favor usa in su loco le configuration de resolutiones min/max como describite a: http://trac.openlayers.org/wiki/SettingZoomLevels\",'commitSuccess':\"Transaction WFS: SUCCESSO ${response}\",'commitFailed':\"Transaction WFS: FALLEVA ${response}\",'googleWarning':\"Le strato Google non poteva esser cargate correctemente.\\x3cbr\\x3e\\x3cbr\\x3ePro disfacer te de iste message, selige un nove BaseLayer in le selector de strato in alto a dextra.\\x3cbr\\x3e\\x3cbr\\x3eMulto probabilemente, isto es proque le script del libreria de Google Maps non esseva includite o non contine le clave API correcte pro tu sito.\\x3cbr\\x3e\\x3cbr\\x3eDisveloppatores: Pro adjuta de corriger isto, \\x3ca href=\\'http://trac.openlayers.org/wiki/Google\\' target=\\'_blank\\'\\x3eclicca hic\\x3c/a\",'getLayerWarning':\"Le strato ${layerType} non poteva esser cargate correctemente.\\x3cbr\\x3e\\x3cbr\\x3ePro disfacer te de iste message, selige un nove BaseLayer in le selector de strato in alto a dextra.\\x3cbr\\x3e\\x3cbr\\x3eMulto probabilemente, isto es proque le script del libreria de ${layerLib} non esseva correctemente includite.\\x3cbr\\x3e\\x3cbr\\x3eDisveloppatores: Pro adjuta de corriger isto, \\x3ca href=\\'http://trac.openlayers.org/wiki/${layerLib}\\' target=\\'_blank\\'\\x3eclicca hic\\x3c/a\\x3e\",'scale':\"Scala = 1 : ${scaleDenom}\",'W':\"W\",'E':\"E\",'N':\"N\",'S':\"S\",'layerAlreadyAdded':\"Tu tentava adder le strato: ${layerName} al carta, ma illo es ja presente\",'reprojectDeprecated':\"Tu usa le option \\'reproject\\' in le strato ${layerName} layer. Iste option es obsolescente: illo esseva pro poter monstrar datos super cartas de base commercial, ma iste functionalitate pote ora esser attingite con le uso de Spherical Mercator. Ulterior information es disponibile a http://trac.openlayers.org/wiki/SphericalMercator.\",'methodDeprecated':\"Iste methodo ha essite declarate obsolescente e essera removite in version 3.0. Per favor usa ${newMethod} in su loco.\",'boundsAddError':\"Tu debe passar le duo valores x e y al function add.\",'lonlatAddError':\"Tu debe passar le duo valores lon e lat al function add.\",'pixelAddError':\"Tu debe passar le duo valores x e y al function add.\",'unsupportedGeometryType':\"Typo de geometria non supportate: ${geomType}\",'pagePositionFailed':\"OpenLayers.Util.pagePosition falleva: le elemento con id ${elemId} pote esser mal placiate.\",'filterEvaluateNotImplemented':\"\\\"evaluate\\\" non es implementate pro iste typo de filtro.\"});OpenLayers.Lang[\"id\"]=OpenLayers.Util.applyDefaults({'unhandledRequest':\"Permintaan yang tak tertangani menghasilkan ${statusText}\",'permalink':\"Pranala permanen\",'overlays':\"Hamparan\",'baseLayer':\"Lapisan Dasar\",'sameProjection':\"Peta tinjauan hanya bekerja bila dalam proyeksi yang sama dengan peta utama\",'readNotImplemented':\"Membaca tidak diterapkan.\",'writeNotImplemented':\"Menyimpan tidak diterapkan.\",'noFID':\"Tidak dapat memperbarui fitur yang tidak memiliki FID.\",'errorLoadingGML':\"Kesalahan dalam memuat berkas GML ${url}\",'browserNotSupported':\"Peramban Anda tidak mendukung penggambaran vektor. Penggambar yang didukung saat ini adalah:\\n${renderers}\",'componentShouldBe':\"addFeatures : komponen harus berupa ${geomType}\",'getFeatureError':\"getFeatureFromEvent diterapkan pada lapisan tanpa penggambar. Ini biasanya berarti Anda menghapus sebuah lapisan, tetapi tidak menghapus penangan yang terkait dengannya.\",'minZoomLevelError':\"Properti minZoomLevel hanya ditujukan bekerja dengan lapisan FixedZoomLevels-descendent. Pengecekan minZoomLevel oleh lapisan wfs adalah peninggalan masa lalu. Kami tidak dapat menghapusnya tanpa kemungkinan merusak aplikasi berbasis OL yang mungkin bergantung padanya. Karenanya, kami menganggapnya tidak berlaku -- Cek minZoomLevel di bawah ini akan dihapus pada 3.0. Silakan gunakan penyetelan resolusi min/maks seperti dijabarkan di sini: http://trac.openlayers.org/wiki/SettingZoomLevels\",'commitSuccess':\"WFS Transaksi: BERHASIL ${respon}\",'commitFailed':\"WFS Transaksi: GAGAL ${respon}\",'googleWarning':\"Lapisan Google tidak dapat dimuat dengan benar.\\x3cbr\\x3e\\x3cbr\\x3eUntuk menghilangkan pesan ini, pilih suatu BaseLayer baru melalui penukar lapisan (layer switcher) di ujung kanan atas.\\x3cbr\\x3e\\x3cbr\\x3eKemungkinan besar ini karena pustaka skrip Google Maps tidak disertakan atau tidak mengandung kunci API yang tepat untuk situs Anda.\\x3cbr\\x3e\\x3cbr\\x3ePengembang: Untuk bantuan mengatasi masalah ini, \\x3ca href=\\'http://trac.openlayers.org/wiki/Google\\' target=\\'_blank\\'\\x3eklik di sini\\x3c/a\\x3e\",'getLayerWarning':\"Lapisan ${layerType} tidak dapat dimuat dengan benar.\\x3cbr\\x3e\\x3cbr\\x3eUntuk menghilangkan pesan ini, pilih suatu BaseLayer baru melalui penukar lapisan (layer switcher) di ujung kanan atas.\\x3cbr\\x3e\\x3cbr\\x3eKemungkinan besar ini karena pustaka skrip Google Maps tidak disertakan dengan benar.\\x3cbr\\x3e\\x3cbr\\x3ePengembang: Untuk bantuan mengatasi masalah ini, \\x3ca href=\\'http://trac.openlayers.org/wiki/${layerLib}\\' target=\\'_blank\\'\\x3eklik di sini\\x3c/a\\x3e\",'scale':\"Sekala = 1 : ${scaleDenom}\",'W':\"B\",'E':\"T\",'N':\"U\",'S':\"S\",'layerAlreadyAdded':\"Anda mencoba menambahkan lapisan: ${layerName} ke dalam peta, tapi lapisan itu telah ditambahkan\",'reprojectDeprecated':\"Anda menggunakan opsi \\'reproject\\' pada lapisan ${layerName}. Opsi ini telah ditinggalkan: penggunaannya dirancang untuk mendukung tampilan data melalui peta dasar komersial, tapi fungsionalitas tersebut saat ini harus dilakukan dengan menggunakan dukungan Spherical Mercator. Informasi lebih lanjut tersedia di http://trac.openlayers.org/wiki/SphericalMercator.\",'methodDeprecated':\"Metode ini telah usang dan akan dihapus di 3.0. Sebaliknya, harap gunakan ${newMethod}.\",'boundsAddError':\"Anda harus memberikan kedua nilai x dan y ke fungsi penambah.\",'lonlatAddError':\"Anda harus memberikan kedua nilai lon dan lat ke fungsi penambah.\",'pixelAddError':\"Anda harus memberikan kedua nilai x dan y ke fungsi penambah.\",'unsupportedGeometryType':\"Tipe geometri tak didukung: ${geomType}\",'pagePositionFailed':\"OpenLayers.Util.pagePosition gagal: elemen dengan id ${elemId} mungkin salah tempat.\",'filterEvaluateNotImplemented':\"evaluasi tidak tersedia untuk tipe filter ini.\"});OpenLayers.Lang[\"io\"]=OpenLayers.Util.applyDefaults({'scale':\"Skalo = 1 : ${scaleDenom}\"});OpenLayers.Lang[\"is\"]=OpenLayers.Util.applyDefaults({'permalink':\"Varanlegur tengill\",'overlays':\"Þekjur\",'baseLayer':\"Grunnlag\",'sameProjection':\"Yfirlitskortið virkar aðeins ef það er í sömu vörpun og aðalkortið\",'readNotImplemented':\"Skrifun er óútfærð.\",'writeNotImplemented':\"Lestur er óútfærður.\",'errorLoadingGML':\"Villa kom upp við að hlaða inn GML skránni ${url}\",'scale':\"Skali = 1 : ${scaleDenom}\",'layerAlreadyAdded':\"Þú reyndir að bæta laginu ${layerName} á kortið en það er þegar búið að bæta því við\",'methodDeprecated':\"Þetta fall hefur verið úrelt og verður fjarlægt í 3.0. Notaðu ${newMethod} í staðin.\"});OpenLayers.Lang[\"ja\"]=OpenLayers.Util.applyDefaults({'unhandledRequest':\"未処理の要求は ${statusText} を返します\",'permalink':\"パーマリンク\",'overlays':\"オーバーレイ\",'baseLayer':\"基底レイヤー\",'sameProjection':\"概観地図はメインの地図と同じ投影法をとる場合のみ機能します\",'readNotImplemented':\"読み込みは実装されていません。\",'writeNotImplemented':\"書き込みは実装されていません。\",'noFID':\"FID のない地物は更新できません。\",'errorLoadingGML':\"GML ファイル ${url} の読み込みエラー\",'browserNotSupported':\"あなたのブラウザはベクターグラフィックスの描写に対応していません。現時点で対応しているソフトウェアは以下のものです。\\n${renderers}\",'componentShouldBe':\"addFeatures: 要素は ${geomType} であるべきです\",'getFeatureError':\"getFeatureFromEvent がレンダラーのないレイヤーから呼ばれました。通常、これはあなたがレイヤーを、それに関連づけられたいくつかのハンドラを除いて、破壊してしまったことを意味します。\",'minZoomLevelError':\"minZoomLevel プロパティは FixedZoomLevels を継承するレイヤーでの使用のみを想定しています。この minZoomLevel に対する WFS レイヤーの検査は歴史的なものです。しかしながら、この検査を除去するとそれに依存する OpenLayers ベースのアプリケーションを破壊してしまう可能性があります。よって廃止が予定されており、この minZoomLevel 検査はバージョン3.0で除去されます。代わりに、http://trac.openlayers.org/wiki/SettingZoomLevels で解説されている、最小および最大解像度設定を使用してください。\",'commitSuccess':\"WFS トランザクション: 成功 ${response}\",'commitFailed':\"WFS トランザクション: 失敗 ${response}\",'googleWarning':\"Google レイヤーが正しく読み込みを行えませんでした。\\x3cbr\\x3e\\x3cbr\\x3eこのメッセージを消すには、右上の隅にあるレイヤー切り替え部分で新しい基底レイヤーを選んでください。\\x3cbr\\x3e\\x3cbr\\x3eおそらく、これは Google マップ用ライブラリのスクリプトが組み込まれていないか、あなたのサイトに対応する正しい API キーが設定されていないためです。\\x3cbr\\x3e\\x3cbr\\x3e開発者の方へ: 正しい動作をさせるために\\x3ca href=\\'http://trac.openlayers.org/wiki/Google\\' target=\\'_blank\\'\\x3eこちらのウィキ\\x3c/a\\x3eを参照してください。\",'getLayerWarning':\"${layerType} レイヤーが正しく読み込みを行えませんでした。\\x3cbr\\x3e\\x3cbr\\x3eこのメッセージを消すには、右上の隅にあるレイヤー切り替え部分で新しい基底レイヤーを選んでください。\\x3cbr\\x3e\\x3cbr\\x3eおそらく、これは ${layerLib} ライブラリのスクリプトが正しく組み込まれていないためです。\\x3cbr\\x3e\\x3cbr\\x3e開発者の方へ: 正しい動作をさせるために\\x3ca href=\\'http://trac.openlayers.org/wiki/${layerLib}\\' target=\\'_blank\\'\\x3eこちらのウィキ\\x3c/a\\x3eを参照してください。\",'scale':\"縮尺 = 1 : ${scaleDenom}\",'W':\"西\",'E':\"東\",'N':\"北\",'S':\"南\",'layerAlreadyAdded':\"あなたは「${layerName}」を地図に追加しようと試みましたが、そのレイヤーは既に追加されています\",'reprojectDeprecated':\"あなたは「${layerName}」レイヤーで reproject オプションを使っています。このオプションは商用の基底地図上に情報を表示する目的で設計されましたが、現在ではその機能は Spherical Mercator サポートを利用して実現されており、このオプションの使用は非推奨です。追加の情報は http://trac.openlayers.org/wiki/SphericalMercator で入手できます。\",'methodDeprecated':\"このメソッドは廃止が予定されており、バージョン3.0で除去されます。代わりに ${newMethod} を使用してください。\",'boundsAddError':\"x と y 両方の値を add 関数に渡さなければなりません。\",'lonlatAddError':\"lon と lat 両方の値を add 関数に渡さなければなりません。\",'pixelAddError':\"x と y の値両方を add 関数に渡さなければなりません。\",'unsupportedGeometryType':\"未対応の形状型: ${geomType}\",'pagePositionFailed':\"OpenLayers.Util.pagePosition が失敗しました: id ${elemId} をもつ要素が誤った位置にある可能性があります。\",'filterEvaluateNotImplemented':\"このフィルター型について evaluate は実装されていません。\"});OpenLayers.Lang[\"km\"]=OpenLayers.Util.applyDefaults({'permalink':\"តំណភ្ជាប់អចិន្ត្រៃយ៍\",'baseLayer':\"ស្រទាប់បាត​\",'errorLoadingGML':\"កំហុសកំឡុងពេលផ្ទុកឯកសារ GML ${url}\",'scale':\"មាត្រដ្ឋាន = ១ ៖ ${scaleDenom}\"});OpenLayers.Lang[\"ksh\"]=OpenLayers.Util.applyDefaults({'unhandledRequest':\"Met dä Antwoot op en Aanfrooch ham_mer nix aanjefange: ${statusText}\",'permalink':\"Lengk op Duuer\",'overlays':\"Drövver jelaat\",'baseLayer':\"Jrund-Nivoh\",'sameProjection':\"De Övverseeschs_Kaat deiht et bloß, wann se de sälve Projäxjuhn bruche deiht, wi de Houp_Kaat\",'readNotImplemented':\"„\\x3ccode lang=\\\"en\\\"\\x3eread\\x3c/code\\x3e“ is em Projramm nit fürjesinn.\",'writeNotImplemented':\"„\\x3ccode lang=\\\"en\\\"\\x3ewrite\\x3c/code\\x3e“ is em Projramm nit fürjesinn.\",'noFID':\"En Saach, woh kein \\x3ci lang=\\\"en\\\"\\x3eFID\\x3c/i\\x3e för doh es, löht sesch nit ändere.\",'errorLoadingGML':\"Fähler beim \\x3ci lang=\\\"en\\\"\\x3eGML\\x3c/i\\x3e-Datei-Laade vun \\x3ccode\\x3e${url}\\x3c/code\\x3e\",'browserNotSupported':\"Dinge Brauser kann kein Väktore ußjävve. De Zoote Ußjaabe, di em Momang jon, sen:\\n${renderers}\",'componentShouldBe':\"\\x3ccode lang=\\\"en\\\"\\x3eaddFeatures\\x3c/code\\x3e: dä Aandeil sullt vun dä Zoot „\\x3ccode lang=\\\"en\\\"\\x3e${geomType}\\x3c/code\\x3e“ sin.\",'getFeatureError':\"\\x3ccode lang=\\\"en\\\"\\x3egetFeatureFromEvent\\x3c/code\\x3e es vun enem Nivoh opjeroofe woode, woh et kei Projramm zom Ußjävve jit. Dat bedügg för jewöhnlesch, dat De e Nivoh kapott jemaat häs, ävver nit e Projramm för domet ömzejonn, wat domet verbonge es.\",'minZoomLevelError':\"De Eijeschaff „\\x3ccode lang=\\\"en\\\"\\x3eminZoomLevel\\x3c/code\\x3e“ es bloß doför jedaach, dat mer se met dä Nivvohß bruch, di vun \\x3ccode lang=\\\"en\\\"\\x3eFixedZoomLevels\\x3c/code\\x3e affhange don. Dat dat \\x3ci lang=\\\"en\\\"\\x3eWFS\\x3c/i\\x3e-Nivvoh övverhoup de Eijeschaff „\\x3ccode lang=\\\"en\\\"\\x3eminZoomLevel\\x3c/code\\x3e“ pröhfe deiht, es noch övveresch vun fröhjer. Mer künne dat ävver jez nit fott lohße, oohne dat mer Jevaa loufe, dat Aanwendunge vun OpenLayers nit mieh loufe, di sesch doh velleijsch noch drop am verlohße sin. Dröm sare mer, dat mer et nit mieh han welle, un de „\\x3ccode lang=\\\"en\\\"\\x3eminZoomLevel\\x3c/code\\x3e“-Eijeschaff weed hee vun de Version 3.0 af nit mieh jeprööf wäde. Nemm doför de Enstellung för de hühßte un de kleinßte Oplöhsung, esu wi et en http://trac.openlayers.org/wiki/SettingZoomLevels opjeschrevve es.\",'commitSuccess':\"Dä \\x3ci lang=\\\"en\\\"\\x3eWFS\\x3c/i\\x3e-Vörjang es joot jeloufe: ${response}\",'commitFailed':\"Dä \\x3ci lang=\\\"en\\\"\\x3eWFS\\x3c/i\\x3e-Vörjang es scheif jejange: ${response}\",'googleWarning':\"Dat Nivvoh \\x3ccode lang=\\\"en\\\"\\x3eGoogle\\x3c/code\\x3e kunnt nit reschtesch jelaade wääde.\\x3cbr /\\x3e\\x3cbr /\\x3eÖm hee di Nohreesch loß ze krijje, donn en ander Jrund-Nivvoh ußsöhke, rähß bovve en de Äk.\\x3cbr /\\x3e\\x3cbr /\\x3eWascheinlesch es dat wiel dat \\x3ci lang=\\\"en\\\"\\x3eGoogle-Maps\\x3c/i\\x3e-Skrepp entweeder nit reschtesch enjebonge wood, udder nit dä reschtejje \\x3ci lang=\\\"en\\\"\\x3eAPI\\x3c/i\\x3e-Schlößel för Ding Web-ßait scheke deiht.\\x3cbr /\\x3e\\x3cbr /\\x3eFör Projrammierer jidd_et Hölp do_drövver, \\x3ca href=\\\"http://trac.openlayers.org/wiki/Google\\\" target=\\\"_blank\\\"\\x3ewi mer dat aan et Loufe brengk\\x3c/a\\x3e.\",'getLayerWarning':\"Dat Nivvoh \\x3ccode\\x3e${layerType}\\x3c/code\\x3e kunnt nit reschtesch jelaade wääde.\\x3cbr /\\x3e\\x3cbr /\\x3eÖm hee di Nohreesch loß ze krijje, donn en ander Jrund-Nivvoh ußsöhkre, rähß bovve en de Äk.\\x3cbr /\\x3e\\x3cbr /\\x3eWascheinlesch es dat, wiel dat Skrepp \\x3ccode\\x3e${layerLib}\\x3c/code\\x3e nit reschtesch enjebonge wood.\\x3cbr /\\x3e\\x3cbr /\\x3eFör Projrammierer jidd_Et Hölp do_drövver, \\x3ca href=\\\"http://trac.openlayers.org/wiki/${layerLib}\\\" target=\\\"_blank\\\"\\x3ewi mer dat aan et Loufe brengk\\x3c/a\\x3e.\",'scale':\"Mohßshtaab = 1 : ${scaleDenom}\",'W':\"W\",'E':\"O\",'N':\"N\",'S':\"S\",'layerAlreadyAdded':\"Do häß versöhk, dat Nivvoh \\x3ccode\\x3e${layerName}\\x3c/code\\x3e en di Kaat eren ze bränge, et wohr ävver ald do dren.\",'reprojectDeprecated':\"Do bruchs de Ußwahl \\x3ccode\\x3ereproject\\x3c/code\\x3e op däm Nivvoh \\x3ccode\\x3e${layerName}\\x3c/code\\x3e. Di Ußwahl es nit mieh jähn jesinn. Se wohr doför jedaach, öm Date op jeschääfsmäßesch eruß jejovve Kaate bovve drop ze moole, wat ävver enzwesche besser met dä Öngershtözung för de ßfääresche Mäkaator Beldscher jeiht. Doh kanns De mieh drövver fenge op dä Sigg: http://trac.openlayers.org/wiki/SphericalMercator.\",'methodDeprecated':\"Hee di Metood es nim_mih aktoäll un et weed se en dä Version 3.0 nit mieh jävve. Nemm \\x3ccode\\x3e${newMethod}\\x3c/code\\x3e doföör.\",'boundsAddError':\"Do moß beeds vun de \\x3ccode\\x3ex\\x3c/code\\x3e un \\x3ccode\\x3ey\\x3c/code\\x3e Wääte aan de Fungkßjohn \\x3ccode\\x3eadd\\x3c/code\\x3e jävve.\",'lonlatAddError':\"Do moß beeds \\x3ccode\\x3elon\\x3c/code\\x3e un \\x3ccode\\x3elat\\x3c/code\\x3e aan de Fungkßjohn \\x3ccode\\x3eadd\\x3c/code\\x3e jävve.\",'pixelAddError':\"Do moß beeds \\x3ccode\\x3ex\\x3c/code\\x3e un \\x3ccode\\x3ey\\x3c/code\\x3e aan de Fungkßjohn \\x3ccode\\x3eadd\\x3c/code\\x3e jävve.\",'unsupportedGeometryType':\"De Zoot Jommetrii dom_mer nit ongershtöze: \\x3ccode\\x3e${geomType}\\x3c/code\\x3e\",'pagePositionFailed':\"\\x3ccode lang=\\\"en\\\"\\x3eOpenLayers.Util.pagePosition\\x3c/code\\x3e es donevve jejange: dat Denge met dä Kännong \\x3ccode\\x3e${elemId}\\x3c/code\\x3e künnt am verkeehte Plaz sin.\",'filterEvaluateNotImplemented':\"„\\x3ccode lang=\\\"en\\\"\\x3eevaluate\\x3c/code\\x3e“ es för di Zoot Fellter nit enjereschdt.\"});OpenLayers.Lang[\"nds\"]=OpenLayers.Util.applyDefaults({'unhandledRequest':\"Unbehannelt Trüchmellels för de Anfraag ${statusText}\",'permalink':\"Permalink\",'overlays':\"Overlays\",'baseLayer':\"Achtergrundkoort\",'sameProjection':\"De Översichtskoort geiht blot, wenn de sülve Projekschoon as bi de Hööftkoort bruukt warrt\",'readNotImplemented':\"Lesen is nich inricht.\",'writeNotImplemented':\"Schrieven is nich inricht.\",'noFID':\"En Feature, dat keen FID hett, kann nich aktuell maakt warrn.\",'errorLoadingGML':\"Fehler bi’t Laden vun de GML-Datei ${url}\",'browserNotSupported':\"Dien Browser ünnerstütt keen Vektorbiller. Ünnerstütt Renderers:\\n${renderers}\",'componentShouldBe':\"addFeatures : Kumponent schull man den Typ ${geomType} hebben\",'getFeatureError':\"getFeatureFromEvent is von en Laag ahn Render opropen worrn. Dat bedüüdt normalerwies, dat en Laag wegmaakt worrn is, aver nich de Handler, de dor op verwiest.\",'commitSuccess':\"WFS-Transakschoon: hett klappt ${response}\",'commitFailed':\"WFS-Transakschoon: hett nich klappt ${response}\",'scale':\"Skaal = 1 : ${scaleDenom}\",'layerAlreadyAdded':\"Du versöchst de Laag „${layerName}“ to de Koort totofögen, man de is al toföögt\",'methodDeprecated':\"Disse Methood is oold un schall dat in 3.0 nich mehr geven. Bruuk dor man beter ${newMethod} för.\",'boundsAddError':\"De Weert x un y, de mööt all beid an de add-Funkschoon övergeven warrn.\",'lonlatAddError':\"De Weert lon un lat, de mööt all beid an de add-Funkschoon övergeven warrn.\",'pixelAddError':\"De Weert x un y, de mööt all beid an de add-Funkschoon övergeven warrn.\",'unsupportedGeometryType':\"Nich ünnerstütt Geometrie-Typ: ${geomType}\",'pagePositionFailed':\"OpenLayers.Util.pagePosition güng nich: Element mit de Id ${elemId} is villicht an’n verkehrten Platz.\"});OpenLayers.Lang[\"nn\"]=OpenLayers.Util.applyDefaults({'scale':\"Skala = 1 : ${scaleDenom}\",'layerAlreadyAdded':\"Du freista å leggja til laget «${layerName}» på kartet, men det har alt vorte lagt til.\",'boundsAddError':\"Du er nøydd til å gje både ein x- og ein y-verdi til «add»-funksjonen.\",'lonlatAddError':\"Du er nøydd til å gje både lon- og lat-verdiar til «add»-funksjonen.\",'pixelAddError':\"Du er nøydd til å gje både ein x- og ein y-verdi til «add»-funksjonen.\"});OpenLayers.Lang[\"oc\"]=OpenLayers.Util.applyDefaults({'unhandledRequest':\"Requèsta pas gerida, retorna ${statusText}\",'permalink':\"Permaligam\",'overlays':\"Calques\",'baseLayer':\"Calc de basa\",'sameProjection':\"La carta de situacion fonciona pas que quora sa projeccion es la meteissa que la de la carta principala\",'readNotImplemented':\"Lectura pas implementada.\",'writeNotImplemented':\"Escritura pas implementada.\",'noFID':\"Impossible de metre a jorn un objècte sens identificant (fid).\",'errorLoadingGML':\"Error al cargament del fichièr GML ${url}\",'browserNotSupported':\"Vòstre navegidor supòrta pas lo rendut vectorial. Los renderers actualament suportats son : \\n${renderers}\",'componentShouldBe':\"addFeatures : lo compausant deuriá èsser de tipe ${geomType}\",'getFeatureError':\"getFeatureFromEvent es estat apelat sus un calc sens renderer. Aquò significa generalament qu\\'avètz destruch aqueste jaç, mas qu\\'avètz conservat un handler que li èra associat.\",'minZoomLevelError':\"La proprietat minZoomLevel deu èsser utilizada solament per de jaces FixedZoomLevels-descendent. Lo fach qu\\'aqueste jaç WFS verifique la preséncia de minZoomLevel es una relica del passat. Çaquelà, la podèm suprimir sens copar d\\'aplicacions que ne poirián dependre. Es per aquò que la depreciam -- la verificacion del minZoomLevel serà suprimida en version 3.0. A la plaça, mercés d\\'utilizar los paramètres de resolucions min/max tal coma descrich sus : http://trac.openlayers.org/wiki/SettingZoomLevels\",'commitSuccess':\"Transaccion WFS : SUCCES ${response}\",'commitFailed':\"Transaccion WFS : FRACAS ${response}\",'googleWarning':\"Lo jaç Google es pas estat en mesura de se cargar corrèctament.\\x3cbr\\x3e\\x3cbr\\x3ePer suprimir aqueste messatge, causissètz una BaseLayer novèla dins lo selector de jaç en naut a drecha.\\x3cbr\\x3e\\x3cbr\\x3eAquò es possiblament causat par la non-inclusion de la librariá Google Maps, o alara perque que la clau de l\\'API correspond pas a vòstre site.\\x3cbr\\x3e\\x3cbr\\x3eDesvolopaires : per saber cossí corregir aquò, \\x3ca href=\\'http://trac.openlayers.org/wiki/Google\\' target=\\'_blank\\'\\x3eclicatz aicí\\x3c/a\\x3e\",'getLayerWarning':\"Lo jaç ${layerType} es pas en mesura de se cargar corrèctament.\\x3cbr\\x3e\\x3cbr\\x3ePer suprimir aqueste messatge, causissètz una  BaseLayer novèla dins lo selector de jaç en naut a drecha.\\x3cbr\\x3e\\x3cbr\\x3eAquò es possiblament causat per la non-inclusion de la librariá ${layerLib}.\\x3cbr\\x3e\\x3cbr\\x3eDesvolopaires : per saber cossí corregir aquí, \\x3ca href=\\'http://trac.openlayers.org/wiki/${layerLib}\\' target=\\'_blank\\'\\x3eclicatz aicí\\x3c/a\\x3e\",'scale':\"Escala ~ 1 : ${scaleDenom}\",'W':\"O\",'E':\"È\",'N':\"N\",'S':\"S\",'layerAlreadyAdded':\"Avètz ensajat d\\'apondre a la carta lo calc : ${layerName}, mas ja es present\",'reprojectDeprecated':\"Utilizatz l\\'opcion \\'reproject\\' sul jaç ${layerName}. Aquesta opcion es despreciada : Son usatge permetiá d\\'afichar de donadas al dessús de jaces raster comercials. Aquesta foncionalitat ara es suportada en utilizant lo supòrt de la projeccion Mercator Esferica. Mai d\\'informacion es disponibla sus http://trac.openlayers.org/wiki/SphericalMercator.\",'methodDeprecated':\"Aqueste metòde es despreciada, e serà suprimida a la version 3.0. Mercés d\\'utilizar ${newMethod} a la plaça.\",'boundsAddError':\"Vos cal passar las doas valors x e y a la foncion add.\",'lonlatAddError':\"Vos cal passar las doas valors lon e lat a la foncion add.\",'pixelAddError':\"Vos cal passar las doas valors x e y a la foncion add.\",'unsupportedGeometryType':\"Tipe de geometria pas suportat : ${geomType}\",'pagePositionFailed':\"OpenLayers.Util.pagePosition a fracassat : l\\'element d\\'id ${elemId} poiriá èsser mal posicionat.\",'filterEvaluateNotImplemented':\"evaluar es pas encara estat implementat per aqueste tipe de filtre.\"});OpenLayers.Lang[\"pt\"]=OpenLayers.Util.applyDefaults({'unhandledRequest':\"Servidor devolveu erro não contemplado ${statusText}\",'permalink':\"Ligação permanente\",'overlays':\"Sobreposições\",'baseLayer':\"Camada Base\",'sameProjection':\"O mapa panorâmico só funciona quando está na mesma projeção que o mapa principal\",'readNotImplemented':\"Leitura não implementada.\",'writeNotImplemented':\"Escrita não implementada.\",'noFID':\"Não é possível atualizar um elemento para a qual não há FID.\",'errorLoadingGML':\"Erro ao carregar ficheiro GML ${url}\",'browserNotSupported':\"O seu navegador não suporta renderização vetorial. Actualmente os renderizadores suportados são:\\n${renderers}\",'componentShouldBe':\"addFeatures: componente deve ser um(a) ${geomType}\",'getFeatureError':\"getFeatureFromEvent foi chamado numa camada sem renderizador. Isto normalmente significa que destruiu uma camada, mas não um manipulador \\'\\'(handler)\\'\\' que lhe está associado.\",'minZoomLevelError':\"A propriedade minZoomLevel só deve ser usada com as camadas descendentes da FixedZoomLevels. A verificação da propriedade por esta camada wfs é uma relíquia do passado. No entanto, não podemos removê-la sem correr o risco de afectar aplicações OL que dependam dela. Portanto, estamos a torná-la obsoleta -- a verificação minZoomLevel será removida na versão 3.0. Em vez dela, por favor, use as opções de resolução min/max descritas aqui: http://trac.openlayers.org/wiki/SettingZoomLevels\",'commitSuccess':\"Transacção WFS: SUCESSO ${response}\",'commitFailed':\"Transacção WFS: FALHOU ${response}\",'googleWarning':\"A Camada Google não foi correctamente carregada.\\x3cbr\\x3e\\x3cbr\\x3ePara deixar de receber esta mensagem, seleccione uma nova Camada-Base no \\'\\'switcher\\'\\' de camadas no canto superior direito.\\x3cbr\\x3e\\x3cbr\\x3eProvavelmente, isto acontece porque o \\'\\'script\\'\\' da biblioteca do Google Maps não foi incluído ou não contém a chave API correcta para o seu sítio.\\x3cbr\\x3e\\x3cbr\\x3eProgramadores: Para ajuda sobre como solucionar o problema \\x3ca href=\\'http://trac.openlayers.org/wiki/Google\\' target=\\'_blank\\'\\x3eclique aqui\\x3c/a\\x3e .\",'getLayerWarning':\"A camada ${layerType} não foi correctamente carregada.\\x3cbr\\x3e\\x3cbr\\x3ePara desactivar esta mensagem, seleccione uma nova Camada-Base no \\'\\'switcher\\'\\' de camadas no canto superior direito.\\x3cbr\\x3e\\x3cbr\\x3eProvavelmente, isto acontece porque o \\'\\'script\\'\\' da biblioteca ${layerLib} não foi incluído correctamente.\\x3cbr\\x3e\\x3cbr\\x3eProgramadores: Para ajuda sobre como solucionar o problema \\x3ca href=\\'http://trac.openlayers.org/wiki/${layerLib}\\' target=\\'_blank\\'\\x3eclique aqui\\x3c/a\\x3e .\",'scale':\"Escala = 1 : ${scaleDenom}\",'W':\"O\",'E':\"E\",'N':\"N\",'S':\"S\",'layerAlreadyAdded':\"Você tentou adicionar a camada: ${layerName} ao mapa, mas ela já tinha sido adicionada antes\",'reprojectDeprecated':\"Está usando a opção \\'reproject\\' na camada ${layerName}. Esta opção é obsoleta: foi concebida para permitir a apresentação de dados sobre mapas-base comerciais, mas esta funcionalidade é agora suportada pelo Mercator Esférico. Mais informação está disponível em http://trac.openlayers.org/wiki/SphericalMercator.\",'methodDeprecated':\"Este método foi declarado obsoleto e será removido na versão 3.0. Por favor, use ${newMethod} em vez disso.\",'boundsAddError':\"Você deve passar tanto o valor x como o y à função de adição.\",'lonlatAddError':\"Você deve passar tanto o valor lon como o lat à função de adição.\",'pixelAddError':\"Você deve passar tanto o valor x como o y à função de adição.\",'unsupportedGeometryType':\"Tipo de geometria não suportado: ${geomType}\",'pagePositionFailed':\"OpenLayers.Util.pagePosition falhou: o elemento com o id ${elemId} poderá estar mal-posicionado.\",'filterEvaluateNotImplemented':\"avaliar não está implementado para este tipo de filtro.\"});OpenLayers.Lang[\"ru\"]=OpenLayers.Util.applyDefaults({'unhandledRequest':\"Необработанный запрос вернул ${statusText}\",'permalink':\"Постоянная ссылка\",'overlays':\"Слои\",'baseLayer':\"Основной слой\",'sameProjection':\"Обзорная карта работает только тогда, когда имеет ту же проекцию, что и основная\",'readNotImplemented':\"Чтение не реализовано.\",'writeNotImplemented':\"Запись не реализована.\",'noFID':\"Невозможно обновить объект, для которого нет FID.\",'errorLoadingGML':\"Ошибка при загрузке файла GML ${url}\",'browserNotSupported':\"Ваш браузер не поддерживает векторную графику. На данный момент поддерживаются:\\n${renderers}\",'componentShouldBe':\"addFeatures: компонент должен быть ${geomType}\",'getFeatureError':\"getFeatureFromEvent вызван для слоя без рендерера. Обычно это говорит о том, что вы уничтожили слой, но оставили связанный с ним обработчик.\",'minZoomLevelError':\"Свойство minZoomLevel предназначено только для использования со слоями, являющимися потомками FixedZoomLevels. То, что этот WFS-слой проверяется на minZoomLevel — реликт прошлого. Однако мы не можем удалить эту функцию, так как, возможно, от неё зависят некоторые основанные на OpenLayers приложения. Функция объявлена устаревшей — проверка minZoomLevel будет удалена в 3.0. Пожалуйста, используйте вместо неё настройку мин/макс разрешения, описанную здесь: http://trac.openlayers.org/wiki/SettingZoomLevels\",'commitSuccess':\"Транзакция WFS: УСПЕШНО ${response}\",'commitFailed':\"Транзакция WFS: ОШИБКА ${response}\",'googleWarning':\"Слой Google не удалось нормально загрузить.\\x3cbr\\x3e\\x3cbr\\x3eЧтобы избавиться от этого сообщения, выбите другой основной слой в переключателе в правом верхнем углу.\\x3cbr\\x3e\\x3cbr\\x3eСкорее всего, причина в том, что библиотека Google Maps не была включена или не содержит корректного API-ключа для вашего сайта.\\x3cbr\\x3e\\x3cbr\\x3eРазработчикам: чтобы узнать, как сделать, чтобы всё заработало, \\x3ca href=\\'http://trac.openlayers.org/wiki/Google\\' target=\\'_blank\\'\\x3eщёлкните тут\\x3c/a\\x3e\",'getLayerWarning':\"Слой ${layerType} не удалось нормально загрузить. \\x3cbr\\x3e\\x3cbr\\x3eЧтобы избавиться от этого сообщения, выбите другой основной слой в переключателе в правом верхнем углу.\\x3cbr\\x3e\\x3cbr\\x3eСкорее всего, причина в том, что библиотека ${layerLib} не была включена или была включена некорректно.\\x3cbr\\x3e\\x3cbr\\x3eРазработчикам: чтобы узнать, как сделать, чтобы всё заработало, \\x3ca href=\\'http://trac.openlayers.org/wiki/${layerLib}\\' target=\\'_blank\\'\\x3eщёлкните тут\\x3c/a\\x3e\",'scale':\"Масштаб = 1 : ${scaleDenom}\",'W':\"З\",'E':\"В\",'N':\"С\",'S':\"Ю\",'layerAlreadyAdded':\"Вы попытались добавить слой «${layerName}» на карту, но он уже был добавлен\",'reprojectDeprecated':\"Вы используете опцию \\'reproject\\' для слоя ${layerName}. Эта опция является устаревшей: ее использование предполагалось для поддержки показа данных поверх коммерческих базовых карт, но теперь этот функционал несёт встроенная поддержка сферической проекции Меркатора. Больше сведений доступно на http://trac.openlayers.org/wiki/SphericalMercator.\",'methodDeprecated':\"Этот метод считается устаревшим и будет удалён в версии 3.0. Пожалуйста, пользуйтесь ${newMethod}.\",'boundsAddError':\"Функции add надо передавать оба значения, x и y.\",'lonlatAddError':\"Функции add надо передавать оба значения, lon и lat.\",'pixelAddError':\"Функции add надо передавать оба значения, x и y.\",'unsupportedGeometryType':\"Неподдерживаемый тип геометрии: ${geomType}\",'pagePositionFailed':\"OpenLayers.Util.pagePosition failed: элемент с id ${elemId} может находиться не в нужном месте.\",'filterEvaluateNotImplemented':\"evaluate не реализовано для фильтра данного типа.\"});OpenLayers.Lang[\"sk\"]=OpenLayers.Util.applyDefaults({'unhandledRequest':\"Neobslúžené požiadavky vracajú ${statusText}\",'permalink':\"Trvalý odkaz\",'overlays':\"Prekrytia\",'baseLayer':\"Základná vrstva\",'sameProjection':\"Prehľadová mapka funguje iba vtedy, keď je v rovnakej projekcii ako hlavná mapa\",'readNotImplemented':\"Čítanie nie je implementované.\",'writeNotImplemented':\"Zápis nie je implementovaný.\",'noFID':\"Nie je možné aktualizovať vlastnosť, pre ktorú neexistuje FID.\",'errorLoadingGML':\"Chyba pri načítaní súboru GML ${url}\",'browserNotSupported':\"Váš prehliadač nepodporuje vykresľovanie vektorov. Momentálne podporované vykresľovače sú:\\n${renderers}\",'componentShouldBe':\"addFeatures: komponent by mal byť ${geomType}\",'getFeatureError':\"getFeatureFromEvent bola zavolaná na vrstve bez vykresľovača. To zvyčajne znamená, že ste odstránili vrstvu, ale nie niektorú z obslúh, ktorá je s ňou asociovaná.\",'minZoomLevelError':\"Vlastnosť minZoomLevel je určený iba na použitie s vrstvami odvodenými od FixedZoomLevels. To, že táto wfs vrstva kontroluje minZoomLevel je pozostatok z minulosti. Nemôžeme ho však odstrániť, aby sme sa vyhli možnému porušeniu aplikácií založených na Open Layers, ktoré na tomto môže závisieť. Preto ho označujeme ako zavrhovaný - dolu uvedená kontrola minZoomLevel bude odstránená vo verzii 3.0. Použite prosím namiesto toho kontrolu min./max. rozlíšenia podľa tu uvedeného popisu: http://trac.openlayers.org/wiki/SettingZoomLevels\",'commitSuccess':\"Transakcia WFS: ÚSPEŠNÁ ${response}\",'commitFailed':\"Transakcia WFS: ZLYHALA ${response}\",'googleWarning':\"Vrstvu Google nebolo možné správne načítať.\\x3cbr\\x3e\\x3cbr\\x3eAby ste sa tejto správy zbavili vyberte novú BaseLayer v prepínači vrstiev v pravom hornom rohu.\\x3cbr\\x3e\\x3cbr\\x3eToto sa stalo pravdepodobne preto, že skript knižnice Google Maps buď nebol načítaný alebo neobsahuje správny kľúč API pre vašu lokalitu.\\x3cbr\\x3e\\x3cbr\\x3eVývojári: Tu môžete získať \\x3ca href=\\'http://trac.openlayers.org/wiki/Google\\' target=\\'_blank\\'\\x3epomoc so sfunkčnením\\x3c/a\\x3e\",'getLayerWarning':\"Vrstvu ${layerType} nebolo možné správne načítať.\\x3cbr\\x3e\\x3cbr\\x3eAby ste sa tejto správy zbavili vyberte novú BaseLayer v prepínači vrstiev v pravom hornom rohu.\\x3cbr\\x3e\\x3cbr\\x3eToto sa stalo pravdepodobne preto, že skript knižnice ${layerType} buď nebol načítaný alebo neobsahuje správny kľúč API pre vašu lokalitu.\\x3cbr\\x3e\\x3cbr\\x3eVývojári: Tu môžete získať \\x3ca href=\\'http://trac.openlayers.org/wiki/${layerType}\\' target=\\'_blank\\'\\x3epomoc so sfunkčnením\\x3c/a\\x3e\",'scale':\"Mierka = 1 : ${scaleDenom}\",'layerAlreadyAdded':\"Pokúsili ste sa do mapy pridať vrstvu ${layerName}, ale tá už bola pridaná\",'reprojectDeprecated':\"Používate voľby „reproject“ vrstvy ${layerType}. Táto voľba je zzavrhovaná: jej použitie bolo navrhnuté na podporu zobrazovania údajov nad komerčnými základovými mapami, ale túto funkcionalitu je teraz možné dosiahnuť pomocou Spherical Mercator. Ďalšie informácie získate na stránke http://trac.openlayers.org/wiki/SphericalMercator.\",'methodDeprecated':\"Táto metóda je zavrhovaná a bude odstránená vo verzii 3.0. Použite prosím namiesto nej metódu ${newMethod}.\",'boundsAddError':\"Sčítacej funkcii musíte dať hodnoty x aj y.\",'lonlatAddError':\"Sčítacej funkcii musíte dať hodnoty lon (zem. dĺžka) aj lat (zem. šírka).\",'pixelAddError':\"Sčítacej funkcii musíte dať hodnoty x aj y.\",'unsupportedGeometryType':\"Nepodporovaný typ geometrie: ${geomType}\",'pagePositionFailed':\"OpenLayers.Util.pagePosition zlyhalo: prvok s id ${elemId} môže byť zle umiestnený.\",'filterEvaluateNotImplemented':\"evaluate nie je implementovaný pre tento typ filtra\"});OpenLayers.Lang[\"te\"]=OpenLayers.Util.applyDefaults({'permalink':\"స్థిరలింకు\",'W':\"ప\",'E':\"తూ\",'N':\"ఉ\",'S':\"ద\"});OpenLayers.Lang[\"vi\"]=OpenLayers.Util.applyDefaults({'unhandledRequest':\"Không xử lý được phản hồi ${statusText} cho yêu cầu\",'permalink':\"Liên kết thường trực\",'overlays':\"Lấp bản đồ\",'baseLayer':\"Lớp nền\",'sameProjection':\"Bản đồ toàn cảnh chỉ hoạt động khi cùng phép chiếu với bản đồ chính\",'readNotImplemented':\"Chưa hỗ trợ chức năng đọc.\",'writeNotImplemented':\"Chưa hỗ trợ chức năng viết.\",'noFID':\"Không thể cập nhật tính năng thiếu FID.\",'errorLoadingGML':\"Lỗi tải tập tin GML tại ${url}\",'browserNotSupported':\"Trình duyệt của bạn không hỗ trợ chức năng vẽ bằng vectơ. Hiện hỗ trợ các bộ kết xuất:\\n${renderers}\",'componentShouldBe':\"addFeatures: bộ phận cần phải là ${geomType}\",'getFeatureError':\"getFeatureFromEvent được gọi từ lớp không có bộ kết xuất. Thường thì có lẽ lớp bị xóa nhưng một phần xử lý của nó vẫn còn.\",'minZoomLevelError':\"Chỉ nên sử dụng thuộc tính minZoomLevel với các lớp FixedZoomLevels-descendent. Việc lớp wfs này tìm cho minZoomLevel là di tích còn lại từ xưa. Tuy nhiên, nếu chúng tôi dời nó thì sẽ vỡ các chương trình OpenLayers mà dựa trên nó. Bởi vậy chúng tôi phản đối sử dụng nó\\x26nbsp;– bước tìm cho minZoomLevel sẽ được dời vào phiên bản 3.0. Xin sử dụng thiết lập độ phân tích tối thiểu / tối đa thay thế, theo hướng dẫn này: http://trac.openlayers.org/wiki/SettingZoomLevels\",'commitSuccess':\"Giao dịch WFS: THÀNH CÔNG ${response}\",'commitFailed':\"Giao dịch WFS: THẤT BẠI ${response}\",'googleWarning':\"Không thể tải lớp Google đúng đắn.\\x3cbr\\x3e\\x3cbr\\x3eĐể tránh thông báo này lần sau, hãy chọn BaseLayer mới dùng điều khiển chọn lớp ở góc trên phải.\\x3cbr\\x3e\\x3cbr\\x3eChắc script thư viện Google Maps hoặc không được bao gồm hoặc không chứa khóa API hợp với website của bạn.\\x3cbr\\x3e\\x3cbr\\x3e\\x3ca href=\\'http://trac.openlayers.org/wiki/Google\\' target=\\'_blank\\'\\x3eTrợ giúp về tính năng này\\x3c/a\\x3e cho người phát triển.\",'getLayerWarning':\"Không thể tải lớp ${layerType} đúng đắn.\\x3cbr\\x3e\\x3cbr\\x3eĐể tránh thông báo này lần sau, hãy chọn BaseLayer mới dùng điều khiển chọn lớp ở góc trên phải.\\x3cbr\\x3e\\x3cbr\\x3eChắc script thư viện ${layerLib} không được bao gồm đúng kiểu.\\x3cbr\\x3e\\x3cbr\\x3e\\x3ca href=\\'http://trac.openlayers.org/wiki/${layerLib}\\' target=\\'_blank\\'\\x3eTrợ giúp về tính năng này\\x3c/a\\x3e cho người phát triển.\",'scale':\"Tỷ lệ = 1 : ${scaleDenom}\",'W':\"T\",'E':\"Đ\",'N':\"B\",'S':\"N\",'layerAlreadyAdded':\"Bạn muốn thêm lớp ${layerName} vào bản đồ, nhưng lớp này đã được thêm\",'reprojectDeprecated':\"Bạn đang áp dụng chế độ “reproject” vào lớp ${layerName}. Chế độ này đã bị phản đối: nó có mục đích hỗ trợ lấp dữ liệu trên các nền bản đồ thương mại; nên thực hiện hiệu ứng đó dùng tính năng Mercator Hình cầu. Có sẵn thêm chi tiết tại http://trac.openlayers.org/wiki/SphericalMercator .\",'methodDeprecated':\"Phương thức này đã bị phản đối và sẽ bị dời vào phiên bản 3.0. Xin hãy sử dụng ${newMethod} thay thế.\",'boundsAddError':\"Cần phải cho cả giá trị x và y vào hàm add.\",'lonlatAddError':\"Cần phải cho cả giá trị lon và lat vào hàm add.\",'pixelAddError':\"Cần phải cho cả giá trị x và y vào hàm add.\",'unsupportedGeometryType':\"Không hỗ trợ kiểu địa lý: ${geomType}\",'pagePositionFailed':\"OpenLayers.Util.pagePosition bị thất bại: nguyên tố với ID ${elemId} có thể ở chỗ sai.\",'filterEvaluateNotImplemented':\"chưa hỗ trợ evaluate cho loại bộ lọc này.\"});OpenLayers.Popup.AnchoredBubble=OpenLayers.Class(OpenLayers.Popup.Anchored,{rounded:false,initialize:function(id,lonlat,contentSize,contentHTML,anchor,closeBox,closeBoxCallback){this.padding=new OpenLayers.Bounds(0,OpenLayers.Popup.AnchoredBubble.CORNER_SIZE,0,OpenLayers.Popup.AnchoredBubble.CORNER_SIZE);OpenLayers.Popup.Anchored.prototype.initialize.apply(this,arguments);},draw:function(px){OpenLayers.Popup.Anchored.prototype.draw.apply(this,arguments);this.setContentHTML();this.setBackgroundColor();this.setOpacity();return this.div;},updateRelativePosition:function(){this.setRicoCorners();},setSize:function(contentSize){OpenLayers.Popup.Anchored.prototype.setSize.apply(this,arguments);this.setRicoCorners();},setBackgroundColor:function(color){if(color!=undefined){this.backgroundColor=color;}\nif(this.div!=null){if(this.contentDiv!=null){this.div.style.background=\"transparent\";OpenLayers.Rico.Corner.changeColor(this.groupDiv,this.backgroundColor);}}},setOpacity:function(opacity){OpenLayers.Popup.Anchored.prototype.setOpacity.call(this,opacity);if(this.div!=null){if(this.groupDiv!=null){OpenLayers.Rico.Corner.changeOpacity(this.groupDiv,this.opacity);}}},setBorder:function(border){this.border=0;},setRicoCorners:function(){var corners=this.getCornersToRound(this.relativePosition);var options={corners:corners,color:this.backgroundColor,bgColor:\"transparent\",blend:false};if(!this.rounded){OpenLayers.Rico.Corner.round(this.div,options);this.rounded=true;}else{OpenLayers.Rico.Corner.reRound(this.groupDiv,options);this.setBackgroundColor();this.setOpacity();}},getCornersToRound:function(){var corners=['tl','tr','bl','br'];var corner=OpenLayers.Bounds.oppositeQuadrant(this.relativePosition);OpenLayers.Util.removeItem(corners,corner);return corners.join(\" \");},CLASS_NAME:\"OpenLayers.Popup.AnchoredBubble\"});OpenLayers.Popup.AnchoredBubble.CORNER_SIZE=5;OpenLayers.Popup.Framed=OpenLayers.Class(OpenLayers.Popup.Anchored,{imageSrc:null,imageSize:null,isAlphaImage:false,positionBlocks:null,blocks:null,fixedRelativePosition:false,initialize:function(id,lonlat,contentSize,contentHTML,anchor,closeBox,closeBoxCallback){OpenLayers.Popup.Anchored.prototype.initialize.apply(this,arguments);if(this.fixedRelativePosition){this.updateRelativePosition();this.calculateRelativePosition=function(px){return this.relativePosition;};}\nthis.contentDiv.style.position=\"absolute\";this.contentDiv.style.zIndex=1;if(closeBox){this.closeDiv.style.zIndex=1;}\nthis.groupDiv.style.position=\"absolute\";this.groupDiv.style.top=\"0px\";this.groupDiv.style.left=\"0px\";this.groupDiv.style.height=\"100%\";this.groupDiv.style.width=\"100%\";},destroy:function(){this.imageSrc=null;this.imageSize=null;this.isAlphaImage=null;this.fixedRelativePosition=false;this.positionBlocks=null;for(var i=0;i<this.blocks.length;i++){var block=this.blocks[i];if(block.image){block.div.removeChild(block.image);}\nblock.image=null;if(block.div){this.groupDiv.removeChild(block.div);}\nblock.div=null;}\nthis.blocks=null;OpenLayers.Popup.Anchored.prototype.destroy.apply(this,arguments);},setBackgroundColor:function(color){},setBorder:function(){},setOpacity:function(opacity){},setSize:function(contentSize){OpenLayers.Popup.Anchored.prototype.setSize.apply(this,arguments);this.updateBlocks();},updateRelativePosition:function(){this.padding=this.positionBlocks[this.relativePosition].padding;if(this.closeDiv){var contentDivPadding=this.getContentDivPadding();this.closeDiv.style.right=contentDivPadding.right+\nthis.padding.right+\"px\";this.closeDiv.style.top=contentDivPadding.top+\nthis.padding.top+\"px\";}\nthis.updateBlocks();},calculateNewPx:function(px){var newPx=OpenLayers.Popup.Anchored.prototype.calculateNewPx.apply(this,arguments);newPx=newPx.offset(this.positionBlocks[this.relativePosition].offset);return newPx;},createBlocks:function(){this.blocks=[];var firstPosition=null;for(var key in this.positionBlocks){firstPosition=key;break;}\nvar position=this.positionBlocks[firstPosition];for(var i=0;i<position.blocks.length;i++){var block={};this.blocks.push(block);var divId=this.id+'_FrameDecorationDiv_'+i;block.div=OpenLayers.Util.createDiv(divId,null,null,null,\"absolute\",null,\"hidden\",null);var imgId=this.id+'_FrameDecorationImg_'+i;var imageCreator=(this.isAlphaImage)?OpenLayers.Util.createAlphaImageDiv:OpenLayers.Util.createImage;block.image=imageCreator(imgId,null,this.imageSize,this.imageSrc,\"absolute\",null,null,null);block.div.appendChild(block.image);this.groupDiv.appendChild(block.div);}},updateBlocks:function(){if(!this.blocks){this.createBlocks();}\nif(this.size&&this.relativePosition){var position=this.positionBlocks[this.relativePosition];for(var i=0;i<position.blocks.length;i++){var positionBlock=position.blocks[i];var block=this.blocks[i];var l=positionBlock.anchor.left;var b=positionBlock.anchor.bottom;var r=positionBlock.anchor.right;var t=positionBlock.anchor.top;var w=(isNaN(positionBlock.size.w))?this.size.w-(r+l):positionBlock.size.w;var h=(isNaN(positionBlock.size.h))?this.size.h-(b+t):positionBlock.size.h;block.div.style.width=(w<0?0:w)+'px';block.div.style.height=(h<0?0:h)+'px';block.div.style.left=(l!=null)?l+'px':'';block.div.style.bottom=(b!=null)?b+'px':'';block.div.style.right=(r!=null)?r+'px':'';block.div.style.top=(t!=null)?t+'px':'';block.image.style.left=positionBlock.position.x+'px';block.image.style.top=positionBlock.position.y+'px';}\nthis.contentDiv.style.left=this.padding.left+\"px\";this.contentDiv.style.top=this.padding.top+\"px\";}},CLASS_NAME:\"OpenLayers.Popup.Framed\"});OpenLayers.Projection=OpenLayers.Class({proj:null,projCode:null,initialize:function(projCode,options){OpenLayers.Util.extend(this,options);this.projCode=projCode;if(window.Proj4js){this.proj=new Proj4js.Proj(projCode);}},getCode:function(){return this.proj?this.proj.srsCode:this.projCode;},getUnits:function(){return this.proj?this.proj.units:null;},toString:function(){return this.getCode();},equals:function(projection){if(projection&&projection.getCode){return this.getCode()==projection.getCode();}else{return false;}},destroy:function(){delete this.proj;delete this.projCode;},CLASS_NAME:\"OpenLayers.Projection\"});OpenLayers.Projection.transforms={};OpenLayers.Projection.addTransform=function(from,to,method){if(!OpenLayers.Projection.transforms[from]){OpenLayers.Projection.transforms[from]={};}\nOpenLayers.Projection.transforms[from][to]=method;};OpenLayers.Projection.transform=function(point,source,dest){if(source.proj&&dest.proj){point=Proj4js.transform(source.proj,dest.proj,point);}else if(source&&dest&&OpenLayers.Projection.transforms[source.getCode()]&&OpenLayers.Projection.transforms[source.getCode()][dest.getCode()]){OpenLayers.Projection.transforms[source.getCode()][dest.getCode()](point);}\nreturn point;};OpenLayers.Protocol.WFS.v1=OpenLayers.Class(OpenLayers.Protocol,{version:null,srsName:\"EPSG:4326\",featureType:null,featureNS:null,geometryName:\"the_geom\",schema:null,featurePrefix:\"feature\",formatOptions:null,readFormat:null,initialize:function(options){OpenLayers.Protocol.prototype.initialize.apply(this,[options]);if(!options.format){this.format=OpenLayers.Format.WFST(OpenLayers.Util.extend({version:this.version,featureType:this.featureType,featureNS:this.featureNS,featurePrefix:this.featurePrefix,geometryName:this.geometryName,srsName:this.srsName,schema:this.schema},this.formatOptions));}\nif(!this.featureNS&&this.featurePrefix){var readNode=this.format.readNode;this.format.readNode=function(node,obj){if(!this.featureNS&&node.prefix==this.featurePrefix){this.featureNS=node.namespaceURI;this.setNamespace(\"feature\",this.featureNS);}\nreturn readNode.apply(this,arguments);};}},destroy:function(){if(this.options&&!this.options.format){this.format.destroy();}\nthis.format=null;OpenLayers.Protocol.prototype.destroy.apply(this);},read:function(options){OpenLayers.Protocol.prototype.read.apply(this,arguments);options=OpenLayers.Util.extend({},options);OpenLayers.Util.applyDefaults(options,this.options||{});var response=new OpenLayers.Protocol.Response({requestType:\"read\"});var data=OpenLayers.Format.XML.prototype.write.apply(this.format,[this.format.writeNode(\"wfs:GetFeature\",options)]);response.priv=OpenLayers.Request.POST({url:options.url,callback:this.createCallback(this.handleRead,response,options),params:options.params,headers:options.headers,data:data});return response;},handleRead:function(response,options){if(options.callback){var request=response.priv;if(request.status>=200&&request.status<300){response.features=this.parseFeatures(request);response.code=OpenLayers.Protocol.Response.SUCCESS;}else{response.code=OpenLayers.Protocol.Response.FAILURE;}\noptions.callback.call(options.scope,response);}},parseFeatures:function(request){var doc=request.responseXML;if(!doc||!doc.documentElement){doc=request.responseText;}\nif(!doc||doc.length<=0){return null;}\nreturn(this.readFormat!==null)?this.readFormat.read(doc):this.format.read(doc);},commit:function(features,options){options=OpenLayers.Util.extend({},options);OpenLayers.Util.applyDefaults(options,this.options);var response=new OpenLayers.Protocol.Response({requestType:\"commit\",reqFeatures:features});response.priv=OpenLayers.Request.POST({url:options.url,data:this.format.write(features,options),callback:this.createCallback(this.handleCommit,response,options)});return response;},handleCommit:function(response,options){if(options.callback){var request=response.priv;var data=request.responseXML;if(!data||!data.documentElement){data=request.responseText;}\nvar obj=this.format.read(data)||{};response.insertIds=obj.insertIds||[];response.code=(obj.success)?OpenLayers.Protocol.Response.SUCCESS:OpenLayers.Protocol.Response.FAILURE;options.callback.call(options.scope,response);}},filterDelete:function(filter,options){options=OpenLayers.Util.extend({},options);OpenLayers.Util.applyDefaults(options,this.options);var response=new OpenLayers.Protocol.Response({requestType:\"commit\"});var root=this.format.createElementNSPlus(\"wfs:Transaction\",{attributes:{service:\"WFS\",version:this.version}});var deleteNode=this.format.createElementNSPlus(\"wfs:Delete\",{attributes:{typeName:(options.featureNS?this.featurePrefix+\":\":\"\")+\noptions.featureType}});if(options.featureNS){deleteNode.setAttribute(\"xmlns:\"+this.featurePrefix,options.featureNS);}\nvar filterNode=this.format.writeNode(\"ogc:Filter\",filter);deleteNode.appendChild(filterNode);root.appendChild(deleteNode);var data=OpenLayers.Format.XML.prototype.write.apply(this.format,[root]);return OpenLayers.Request.POST({url:this.url,callback:options.callback||function(){},data:data});},abort:function(response){if(response){response.priv.abort();}},CLASS_NAME:\"OpenLayers.Protocol.WFS.v1\"});OpenLayers.Renderer.SVG=OpenLayers.Class(OpenLayers.Renderer.Elements,{xmlns:\"http://www.w3.org/2000/svg\",xlinkns:\"http://www.w3.org/1999/xlink\",MAX_PIXEL:15000,translationParameters:null,symbolMetrics:null,isGecko:null,supportUse:null,initialize:function(containerID){if(!this.supported()){return;}\nOpenLayers.Renderer.Elements.prototype.initialize.apply(this,arguments);this.translationParameters={x:0,y:0};this.supportUse=(navigator.userAgent.toLowerCase().indexOf(\"applewebkit/5\")==-1);this.isGecko=(navigator.userAgent.toLowerCase().indexOf(\"gecko/\")!=-1);this.symbolMetrics={};},destroy:function(){OpenLayers.Renderer.Elements.prototype.destroy.apply(this,arguments);},supported:function(){var svgFeature=\"http://www.w3.org/TR/SVG11/feature#\";return(document.implementation&&(document.implementation.hasFeature(\"org.w3c.svg\",\"1.0\")||document.implementation.hasFeature(svgFeature+\"SVG\",\"1.1\")||document.implementation.hasFeature(svgFeature+\"BasicStructure\",\"1.1\")));},inValidRange:function(x,y,xyOnly){var left=x+(xyOnly?0:this.translationParameters.x);var top=y+(xyOnly?0:this.translationParameters.y);return(left>=-this.MAX_PIXEL&&left<=this.MAX_PIXEL&&top>=-this.MAX_PIXEL&&top<=this.MAX_PIXEL);},setExtent:function(extent,resolutionChanged){OpenLayers.Renderer.Elements.prototype.setExtent.apply(this,arguments);var resolution=this.getResolution();var left=-extent.left/resolution;var top=extent.top/resolution;if(resolutionChanged){this.left=left;this.top=top;var extentString=\"0 0 \"+this.size.w+\" \"+this.size.h;this.rendererRoot.setAttributeNS(null,\"viewBox\",extentString);this.translate(0,0);return true;}else{var inRange=this.translate(left-this.left,top-this.top);if(!inRange){this.setExtent(extent,true);}\nreturn inRange;}},translate:function(x,y){if(!this.inValidRange(x,y,true)){return false;}else{var transformString=\"\";if(x||y){transformString=\"translate(\"+x+\",\"+y+\")\";}\nthis.root.setAttributeNS(null,\"transform\",transformString);this.translationParameters={x:x,y:y};return true;}},setSize:function(size){OpenLayers.Renderer.prototype.setSize.apply(this,arguments);this.rendererRoot.setAttributeNS(null,\"width\",this.size.w);this.rendererRoot.setAttributeNS(null,\"height\",this.size.h);},getNodeType:function(geometry,style){var nodeType=null;switch(geometry.CLASS_NAME){case\"OpenLayers.Geometry.Point\":if(style.externalGraphic){nodeType=\"image\";}else if(this.isComplexSymbol(style.graphicName)){nodeType=this.supportUse===false?\"svg\":\"use\";}else{nodeType=\"circle\";}\nbreak;case\"OpenLayers.Geometry.Rectangle\":nodeType=\"rect\";break;case\"OpenLayers.Geometry.LineString\":nodeType=\"polyline\";break;case\"OpenLayers.Geometry.LinearRing\":nodeType=\"polygon\";break;case\"OpenLayers.Geometry.Polygon\":case\"OpenLayers.Geometry.Curve\":case\"OpenLayers.Geometry.Surface\":nodeType=\"path\";break;default:break;}\nreturn nodeType;},setStyle:function(node,style,options){style=style||node._style;options=options||node._options;var r=parseFloat(node.getAttributeNS(null,\"r\"));var widthFactor=1;var pos;if(node._geometryClass==\"OpenLayers.Geometry.Point\"&&r){node.style.visibility=\"\";if(style.graphic===false){node.style.visibility=\"hidden\";}else if(style.externalGraphic){pos=this.getPosition(node);if(style.graphicTitle){node.setAttributeNS(null,\"title\",style.graphicTitle);}\nif(style.graphicWidth&&style.graphicHeight){node.setAttributeNS(null,\"preserveAspectRatio\",\"none\");}\nvar width=style.graphicWidth||style.graphicHeight;var height=style.graphicHeight||style.graphicWidth;width=width?width:style.pointRadius*2;height=height?height:style.pointRadius*2;var xOffset=(style.graphicXOffset!=undefined)?style.graphicXOffset:-(0.5*width);var yOffset=(style.graphicYOffset!=undefined)?style.graphicYOffset:-(0.5*height);var opacity=style.graphicOpacity||style.fillOpacity;node.setAttributeNS(null,\"x\",(pos.x+xOffset).toFixed());node.setAttributeNS(null,\"y\",(pos.y+yOffset).toFixed());node.setAttributeNS(null,\"width\",width);node.setAttributeNS(null,\"height\",height);node.setAttributeNS(this.xlinkns,\"href\",style.externalGraphic);node.setAttributeNS(null,\"style\",\"opacity: \"+opacity);}else if(this.isComplexSymbol(style.graphicName)){var offset=style.pointRadius*3;var size=offset*2;var id=this.importSymbol(style.graphicName);pos=this.getPosition(node);widthFactor=this.symbolMetrics[id][0]*3/size;var parent=node.parentNode;var nextSibling=node.nextSibling;if(parent){parent.removeChild(node);}\nif(this.supportUse===false){var src=document.getElementById(id);node.firstChild&&node.removeChild(node.firstChild);node.appendChild(src.firstChild.cloneNode(true));node.setAttributeNS(null,\"viewBox\",src.getAttributeNS(null,\"viewBox\"));}else{node.setAttributeNS(this.xlinkns,\"href\",\"#\"+id);}\nnode.setAttributeNS(null,\"width\",size);node.setAttributeNS(null,\"height\",size);node.setAttributeNS(null,\"x\",pos.x-offset);node.setAttributeNS(null,\"y\",pos.y-offset);if(nextSibling){parent.insertBefore(node,nextSibling);}else if(parent){parent.appendChild(node);}}else{node.setAttributeNS(null,\"r\",style.pointRadius);}\nvar rotation=style.rotation;if((rotation!==undefined||node._rotation!==undefined)&&pos){node._rotation=rotation;rotation|=0;if(node.nodeName!==\"svg\"){node.setAttributeNS(null,\"transform\",\"rotate(\"+rotation+\" \"+pos.x+\" \"+\npos.y+\")\");}else{var metrics=this.symbolMetrics[id];node.firstChild.setAttributeNS(null,\"transform\",\"rotate(\"+style.rotation+\" \"+metrics[1]+\" \"+metrics[2]+\")\");}}}\nif(options.isFilled){node.setAttributeNS(null,\"fill\",style.fillColor);node.setAttributeNS(null,\"fill-opacity\",style.fillOpacity);}else{node.setAttributeNS(null,\"fill\",\"none\");}\nif(options.isStroked){node.setAttributeNS(null,\"stroke\",style.strokeColor);node.setAttributeNS(null,\"stroke-opacity\",style.strokeOpacity);node.setAttributeNS(null,\"stroke-width\",style.strokeWidth*widthFactor);node.setAttributeNS(null,\"stroke-linecap\",style.strokeLinecap||\"round\");node.setAttributeNS(null,\"stroke-linejoin\",\"round\");style.strokeDashstyle&&node.setAttributeNS(null,\"stroke-dasharray\",this.dashStyle(style,widthFactor));}else{node.setAttributeNS(null,\"stroke\",\"none\");}\nif(style.pointerEvents){node.setAttributeNS(null,\"pointer-events\",style.pointerEvents);}\nif(style.cursor!=null){node.setAttributeNS(null,\"cursor\",style.cursor);}\nreturn node;},dashStyle:function(style,widthFactor){var w=style.strokeWidth*widthFactor;var str=style.strokeDashstyle;switch(str){case'solid':return'none';case'dot':return[1,4*w].join();case'dash':return[4*w,4*w].join();case'dashdot':return[4*w,4*w,1,4*w].join();case'longdash':return[8*w,4*w].join();case'longdashdot':return[8*w,4*w,1,4*w].join();default:return OpenLayers.String.trim(str).replace(/\\s+/g,\",\");}},createNode:function(type,id){var node=document.createElementNS(this.xmlns,type);if(id){node.setAttributeNS(null,\"id\",id);}\nreturn node;},nodeTypeCompare:function(node,type){return(type==node.nodeName);},createRenderRoot:function(){return this.nodeFactory(this.container.id+\"_svgRoot\",\"svg\");},createRoot:function(suffix){return this.nodeFactory(this.container.id+suffix,\"g\");},createDefs:function(){var defs=this.nodeFactory(this.container.id+\"_defs\",\"defs\");this.rendererRoot.appendChild(defs);return defs;},drawPoint:function(node,geometry){return this.drawCircle(node,geometry,1);},drawCircle:function(node,geometry,radius){var resolution=this.getResolution();var x=(geometry.x/resolution+this.left);var y=(this.top-geometry.y/resolution);if(this.inValidRange(x,y)){node.setAttributeNS(null,\"cx\",x);node.setAttributeNS(null,\"cy\",y);node.setAttributeNS(null,\"r\",radius);return node;}else{return false;}},drawLineString:function(node,geometry){var componentsResult=this.getComponentsString(geometry.components);if(componentsResult.path){node.setAttributeNS(null,\"points\",componentsResult.path);return(componentsResult.complete?node:null);}else{return false;}},drawLinearRing:function(node,geometry){var componentsResult=this.getComponentsString(geometry.components);if(componentsResult.path){node.setAttributeNS(null,\"points\",componentsResult.path);return(componentsResult.complete?node:null);}else{return false;}},drawPolygon:function(node,geometry){var d=\"\";var draw=true;var complete=true;var linearRingResult,path;for(var j=0,len=geometry.components.length;j<len;j++){d+=\" M\";linearRingResult=this.getComponentsString(geometry.components[j].components,\" \");path=linearRingResult.path;if(path){d+=\" \"+path;complete=linearRingResult.complete&&complete;}else{draw=false;}}\nd+=\" z\";if(draw){node.setAttributeNS(null,\"d\",d);node.setAttributeNS(null,\"fill-rule\",\"evenodd\");return complete?node:null;}else{return false;}},drawRectangle:function(node,geometry){var resolution=this.getResolution();var x=(geometry.x/resolution+this.left);var y=(this.top-geometry.y/resolution);if(this.inValidRange(x,y)){node.setAttributeNS(null,\"x\",x);node.setAttributeNS(null,\"y\",y);node.setAttributeNS(null,\"width\",geometry.width/resolution);node.setAttributeNS(null,\"height\",geometry.height/resolution);return node;}else{return false;}},drawSurface:function(node,geometry){var d=null;var draw=true;for(var i=0,len=geometry.components.length;i<len;i++){if((i%3)==0&&(i/3)==0){var component=this.getShortString(geometry.components[i]);if(!component){draw=false;}\nd=\"M \"+component;}else if((i%3)==1){var component=this.getShortString(geometry.components[i]);if(!component){draw=false;}\nd+=\" C \"+component;}else{var component=this.getShortString(geometry.components[i]);if(!component){draw=false;}\nd+=\" \"+component;}}\nd+=\" Z\";if(draw){node.setAttributeNS(null,\"d\",d);return node;}else{return false;}},drawText:function(featureId,style,location){var resolution=this.getResolution();var x=(location.x/resolution+this.left);var y=(location.y/resolution-this.top);var label=this.nodeFactory(featureId+this.LABEL_ID_SUFFIX,\"text\");var tspan=this.nodeFactory(featureId+this.LABEL_ID_SUFFIX+\"_tspan\",\"tspan\");label.setAttributeNS(null,\"x\",x);label.setAttributeNS(null,\"y\",-y);if(style.fontColor){label.setAttributeNS(null,\"fill\",style.fontColor);}\nif(style.fontOpacity){label.setAttributeNS(null,\"opacity\",style.fontOpacity);}\nif(style.fontFamily){label.setAttributeNS(null,\"font-family\",style.fontFamily);}\nif(style.fontSize){label.setAttributeNS(null,\"font-size\",style.fontSize);}\nif(style.fontWeight){label.setAttributeNS(null,\"font-weight\",style.fontWeight);}\nif(style.labelSelect===true){label.setAttributeNS(null,\"pointer-events\",\"visible\");label._featureId=featureId;tspan._featureId=featureId;tspan._geometry=location;tspan._geometryClass=location.CLASS_NAME;}else{label.setAttributeNS(null,\"pointer-events\",\"none\");}\nvar align=style.labelAlign||\"cm\";label.setAttributeNS(null,\"text-anchor\",OpenLayers.Renderer.SVG.LABEL_ALIGN[align[0]]||\"middle\");if(this.isGecko){label.setAttributeNS(null,\"dominant-baseline\",OpenLayers.Renderer.SVG.LABEL_ALIGN[align[1]]||\"central\");}else{tspan.setAttributeNS(null,\"baseline-shift\",OpenLayers.Renderer.SVG.LABEL_VSHIFT[align[1]]||\"-35%\");}\ntspan.textContent=style.label;if(!label.parentNode){label.appendChild(tspan);this.textRoot.appendChild(label);}},getComponentsString:function(components,separator){var renderCmp=[];var complete=true;var len=components.length;var strings=[];var str,component;for(var i=0;i<len;i++){component=components[i];renderCmp.push(component);str=this.getShortString(component);if(str){strings.push(str);}else{if(i>0){if(this.getShortString(components[i-1])){strings.push(this.clipLine(components[i],components[i-1]));}}\nif(i<len-1){if(this.getShortString(components[i+1])){strings.push(this.clipLine(components[i],components[i+1]));}}\ncomplete=false;}}\nreturn{path:strings.join(separator||\",\"),complete:complete};},clipLine:function(badComponent,goodComponent){if(goodComponent.equals(badComponent)){return\"\";}\nvar resolution=this.getResolution();var maxX=this.MAX_PIXEL-this.translationParameters.x;var maxY=this.MAX_PIXEL-this.translationParameters.y;var x1=goodComponent.x/resolution+this.left;var y1=this.top-goodComponent.y/resolution;var x2=badComponent.x/resolution+this.left;var y2=this.top-badComponent.y/resolution;var k;if(x2<-maxX||x2>maxX){k=(y2-y1)/(x2-x1);x2=x2<0?-maxX:maxX;y2=y1+(x2-x1)*k;}\nif(y2<-maxY||y2>maxY){k=(x2-x1)/(y2-y1);y2=y2<0?-maxY:maxY;x2=x1+(y2-y1)*k;}\nreturn x2+\",\"+y2;},getShortString:function(point){var resolution=this.getResolution();var x=(point.x/resolution+this.left);var y=(this.top-point.y/resolution);if(this.inValidRange(x,y)){return x+\",\"+y;}else{return false;}},getPosition:function(node){return({x:parseFloat(node.getAttributeNS(null,\"cx\")),y:parseFloat(node.getAttributeNS(null,\"cy\"))});},importSymbol:function(graphicName){if(!this.defs){this.defs=this.createDefs();}\nvar id=this.container.id+\"-\"+graphicName;if(document.getElementById(id)!=null){return id;}\nvar symbol=OpenLayers.Renderer.symbol[graphicName];if(!symbol){throw new Error(graphicName+' is not a valid symbol name');}\nvar symbolNode=this.nodeFactory(id,\"symbol\");var node=this.nodeFactory(null,\"polygon\");symbolNode.appendChild(node);var symbolExtent=new OpenLayers.Bounds(Number.MAX_VALUE,Number.MAX_VALUE,0,0);var points=[];var x,y;for(var i=0;i<symbol.length;i=i+2){x=symbol[i];y=symbol[i+1];symbolExtent.left=Math.min(symbolExtent.left,x);symbolExtent.bottom=Math.min(symbolExtent.bottom,y);symbolExtent.right=Math.max(symbolExtent.right,x);symbolExtent.top=Math.max(symbolExtent.top,y);points.push(x,\",\",y);}\nnode.setAttributeNS(null,\"points\",points.join(\" \"));var width=symbolExtent.getWidth();var height=symbolExtent.getHeight();var viewBox=[symbolExtent.left-width,symbolExtent.bottom-height,width*3,height*3];symbolNode.setAttributeNS(null,\"viewBox\",viewBox.join(\" \"));this.symbolMetrics[id]=[Math.max(width,height),symbolExtent.getCenterLonLat().lon,symbolExtent.getCenterLonLat().lat];this.defs.appendChild(symbolNode);return symbolNode.id;},getFeatureIdFromEvent:function(evt){var featureId=OpenLayers.Renderer.Elements.prototype.getFeatureIdFromEvent.apply(this,arguments);if(this.supportUse===false&&!featureId){var target=evt.target;featureId=target.parentNode&&target!=this.rendererRoot&&target.parentNode._featureId;}\nreturn featureId;},CLASS_NAME:\"OpenLayers.Renderer.SVG\"});OpenLayers.Renderer.SVG.LABEL_ALIGN={\"l\":\"start\",\"r\":\"end\",\"b\":\"bottom\",\"t\":\"hanging\"};OpenLayers.Renderer.SVG.LABEL_VSHIFT={\"t\":\"-70%\",\"b\":\"0\"};OpenLayers.Renderer.VML=OpenLayers.Class(OpenLayers.Renderer.Elements,{xmlns:\"urn:schemas-microsoft-com:vml\",symbolCache:{},offset:null,initialize:function(containerID){if(!this.supported()){return;}\nif(!document.namespaces.olv){document.namespaces.add(\"olv\",this.xmlns);var style=document.createStyleSheet();var shapes=['shape','rect','oval','fill','stroke','imagedata','group','textbox'];for(var i=0,len=shapes.length;i<len;i++){style.addRule('olv\\\\:'+shapes[i],\"behavior: url(#default#VML); \"+\"position: absolute; display: inline-block;\");}}\nOpenLayers.Renderer.Elements.prototype.initialize.apply(this,arguments);},destroy:function(){OpenLayers.Renderer.Elements.prototype.destroy.apply(this,arguments);},supported:function(){return!!(document.namespaces);},setExtent:function(extent,resolutionChanged){OpenLayers.Renderer.Elements.prototype.setExtent.apply(this,arguments);var resolution=this.getResolution();var left=(extent.left/resolution)|0;var top=(extent.top/resolution-this.size.h)|0;if(resolutionChanged||!this.offset){this.offset={x:left,y:top};left=0;top=0;}else{left=left-this.offset.x;top=top-this.offset.y;}\nvar org=left+\" \"+top;this.root.coordorigin=org;var roots=[this.root,this.vectorRoot,this.textRoot];var root;for(var i=0,len=roots.length;i<len;++i){root=roots[i];var size=this.size.w+\" \"+this.size.h;root.coordsize=size;}\nthis.root.style.flip=\"y\";return true;},setSize:function(size){OpenLayers.Renderer.prototype.setSize.apply(this,arguments);var roots=[this.rendererRoot,this.root,this.vectorRoot,this.textRoot];var w=this.size.w+\"px\";var h=this.size.h+\"px\";var root;for(var i=0,len=roots.length;i<len;++i){root=roots[i];root.style.width=w;root.style.height=h;}},getNodeType:function(geometry,style){var nodeType=null;switch(geometry.CLASS_NAME){case\"OpenLayers.Geometry.Point\":if(style.externalGraphic){nodeType=\"olv:rect\";}else if(this.isComplexSymbol(style.graphicName)){nodeType=\"olv:shape\";}else{nodeType=\"olv:oval\";}\nbreak;case\"OpenLayers.Geometry.Rectangle\":nodeType=\"olv:rect\";break;case\"OpenLayers.Geometry.LineString\":case\"OpenLayers.Geometry.LinearRing\":case\"OpenLayers.Geometry.Polygon\":case\"OpenLayers.Geometry.Curve\":case\"OpenLayers.Geometry.Surface\":nodeType=\"olv:shape\";break;default:break;}\nreturn nodeType;},setStyle:function(node,style,options,geometry){style=style||node._style;options=options||node._options;var fillColor=style.fillColor;if(node._geometryClass===\"OpenLayers.Geometry.Point\"){if(style.externalGraphic){if(style.graphicTitle){node.title=style.graphicTitle;}\nvar width=style.graphicWidth||style.graphicHeight;var height=style.graphicHeight||style.graphicWidth;width=width?width:style.pointRadius*2;height=height?height:style.pointRadius*2;var resolution=this.getResolution();var xOffset=(style.graphicXOffset!=undefined)?style.graphicXOffset:-(0.5*width);var yOffset=(style.graphicYOffset!=undefined)?style.graphicYOffset:-(0.5*height);node.style.left=(((geometry.x/resolution-this.offset.x)+xOffset)|0)+\"px\";node.style.top=(((geometry.y/resolution-this.offset.y)-(yOffset+height))|0)+\"px\";node.style.width=width+\"px\";node.style.height=height+\"px\";node.style.flip=\"y\";fillColor=\"none\";options.isStroked=false;}else if(this.isComplexSymbol(style.graphicName)){var cache=this.importSymbol(style.graphicName);node.path=cache.path;node.coordorigin=cache.left+\",\"+cache.bottom;var size=cache.size;node.coordsize=size+\",\"+size;this.drawCircle(node,geometry,style.pointRadius);node.style.flip=\"y\";}else{this.drawCircle(node,geometry,style.pointRadius);}}\nif(options.isFilled){node.fillcolor=fillColor;}else{node.filled=\"false\";}\nvar fills=node.getElementsByTagName(\"fill\");var fill=(fills.length==0)?null:fills[0];if(!options.isFilled){if(fill){node.removeChild(fill);}}else{if(!fill){fill=this.createNode('olv:fill',node.id+\"_fill\");}\nfill.opacity=style.fillOpacity;if(node._geometryClass===\"OpenLayers.Geometry.Point\"&&style.externalGraphic){if(style.graphicOpacity){fill.opacity=style.graphicOpacity;}\nfill.src=style.externalGraphic;fill.type=\"frame\";if(!(style.graphicWidth&&style.graphicHeight)){fill.aspect=\"atmost\";}}\nif(fill.parentNode!=node){node.appendChild(fill);}}\nvar rotation=style.rotation;if((rotation!==undefined||node._rotation!==undefined)){node._rotation=rotation;if(style.externalGraphic){this.graphicRotate(node,xOffset,yOffset,style);fill.opacity=0;}else if(node._geometryClass===\"OpenLayers.Geometry.Point\"){node.style.rotation=rotation||0;}}\nvar strokes=node.getElementsByTagName(\"stroke\");var stroke=(strokes.length==0)?null:strokes[0];if(!options.isStroked){node.stroked=false;if(stroke){stroke.on=false;}}else{if(!stroke){stroke=this.createNode('olv:stroke',node.id+\"_stroke\");node.appendChild(stroke);}\nstroke.on=true;stroke.color=style.strokeColor;stroke.weight=style.strokeWidth+\"px\";stroke.opacity=style.strokeOpacity;stroke.endcap=style.strokeLinecap=='butt'?'flat':(style.strokeLinecap||'round');if(style.strokeDashstyle){stroke.dashstyle=this.dashStyle(style);}}\nif(style.cursor!=\"inherit\"&&style.cursor!=null){node.style.cursor=style.cursor;}\nreturn node;},graphicRotate:function(node,xOffset,yOffset,style){var style=style||node._style;var rotation=style.rotation||0;var aspectRatio,size;if(!(style.graphicWidth&&style.graphicHeight)){var img=new Image();img.onreadystatechange=OpenLayers.Function.bind(function(){if(img.readyState==\"complete\"||img.readyState==\"interactive\"){aspectRatio=img.width/img.height;size=Math.max(style.pointRadius*2,style.graphicWidth||0,style.graphicHeight||0);xOffset=xOffset*aspectRatio;style.graphicWidth=size*aspectRatio;style.graphicHeight=size;this.graphicRotate(node,xOffset,yOffset,style);}},this);img.src=style.externalGraphic;return;}else{size=Math.max(style.graphicWidth,style.graphicHeight);aspectRatio=style.graphicWidth/style.graphicHeight;}\nvar width=Math.round(style.graphicWidth||size*aspectRatio);var height=Math.round(style.graphicHeight||size);node.style.width=width+\"px\";node.style.height=height+\"px\";var image=document.getElementById(node.id+\"_image\");if(!image){image=this.createNode(\"olv:imagedata\",node.id+\"_image\");node.appendChild(image);}\nimage.style.width=width+\"px\";image.style.height=height+\"px\";image.src=style.externalGraphic;image.style.filter=\"progid:DXImageTransform.Microsoft.AlphaImageLoader(\"+\"src='', sizingMethod='scale')\";var rot=rotation*Math.PI/180;var sintheta=Math.sin(rot);var costheta=Math.cos(rot);var filter=\"progid:DXImageTransform.Microsoft.Matrix(M11=\"+costheta+\",M12=\"+(-sintheta)+\",M21=\"+sintheta+\",M22=\"+costheta+\",SizingMethod='auto expand')\\n\";var opacity=style.graphicOpacity||style.fillOpacity;if(opacity&&opacity!=1){filter+=\"progid:DXImageTransform.Microsoft.BasicImage(opacity=\"+\nopacity+\")\\n\";}\nnode.style.filter=filter;var centerPoint=new OpenLayers.Geometry.Point(-xOffset,-yOffset);var imgBox=new OpenLayers.Bounds(0,0,width,height).toGeometry();imgBox.rotate(style.rotation,centerPoint);var imgBounds=imgBox.getBounds();node.style.left=Math.round(parseInt(node.style.left)+imgBounds.left)+\"px\";node.style.top=Math.round(parseInt(node.style.top)-imgBounds.bottom)+\"px\";},postDraw:function(node){node.style.visibility=\"visible\";var fillColor=node._style.fillColor;var strokeColor=node._style.strokeColor;if(fillColor==\"none\"&&node.fillcolor!=fillColor){node.fillcolor=fillColor;}\nif(strokeColor==\"none\"&&node.strokecolor!=strokeColor){node.strokecolor=strokeColor;}},setNodeDimension:function(node,geometry){var bbox=geometry.getBounds();if(bbox){var resolution=this.getResolution();var scaledBox=new OpenLayers.Bounds((bbox.left/resolution-this.offset.x)|0,(bbox.bottom/resolution-this.offset.y)|0,(bbox.right/resolution-this.offset.x)|0,(bbox.top/resolution-this.offset.y)|0);node.style.left=scaledBox.left+\"px\";node.style.top=scaledBox.top+\"px\";node.style.width=scaledBox.getWidth()+\"px\";node.style.height=scaledBox.getHeight()+\"px\";node.coordorigin=scaledBox.left+\" \"+scaledBox.top;node.coordsize=scaledBox.getWidth()+\" \"+scaledBox.getHeight();}},dashStyle:function(style){var dash=style.strokeDashstyle;switch(dash){case'solid':case'dot':case'dash':case'dashdot':case'longdash':case'longdashdot':return dash;default:var parts=dash.split(/[ ,]/);if(parts.length==2){if(1*parts[0]>=2*parts[1]){return\"longdash\";}\nreturn(parts[0]==1||parts[1]==1)?\"dot\":\"dash\";}else if(parts.length==4){return(1*parts[0]>=2*parts[1])?\"longdashdot\":\"dashdot\";}\nreturn\"solid\";}},createNode:function(type,id){var node=document.createElement(type);if(id){node.id=id;}\nnode.unselectable='on';node.onselectstart=OpenLayers.Function.False;return node;},nodeTypeCompare:function(node,type){var subType=type;var splitIndex=subType.indexOf(\":\");if(splitIndex!=-1){subType=subType.substr(splitIndex+1);}\nvar nodeName=node.nodeName;splitIndex=nodeName.indexOf(\":\");if(splitIndex!=-1){nodeName=nodeName.substr(splitIndex+1);}\nreturn(subType==nodeName);},createRenderRoot:function(){return this.nodeFactory(this.container.id+\"_vmlRoot\",\"div\");},createRoot:function(suffix){return this.nodeFactory(this.container.id+suffix,\"olv:group\");},drawPoint:function(node,geometry){return this.drawCircle(node,geometry,1);},drawCircle:function(node,geometry,radius){if(!isNaN(geometry.x)&&!isNaN(geometry.y)){var resolution=this.getResolution();node.style.left=(((geometry.x/resolution-this.offset.x)|0)-radius)+\"px\";node.style.top=(((geometry.y/resolution-this.offset.y)|0)-radius)+\"px\";var diameter=radius*2;node.style.width=diameter+\"px\";node.style.height=diameter+\"px\";return node;}\nreturn false;},drawLineString:function(node,geometry){return this.drawLine(node,geometry,false);},drawLinearRing:function(node,geometry){return this.drawLine(node,geometry,true);},drawLine:function(node,geometry,closeLine){this.setNodeDimension(node,geometry);var resolution=this.getResolution();var numComponents=geometry.components.length;var parts=new Array(numComponents);var comp,x,y;for(var i=0;i<numComponents;i++){comp=geometry.components[i];x=(comp.x/resolution-this.offset.x)|0;y=(comp.y/resolution-this.offset.y)|0;parts[i]=\" \"+x+\",\"+y+\" l \";}\nvar end=(closeLine)?\" x e\":\" e\";node.path=\"m\"+parts.join(\"\")+end;return node;},drawPolygon:function(node,geometry){this.setNodeDimension(node,geometry);var resolution=this.getResolution();var path=[];var linearRing,i,j,len,ilen,comp,x,y;for(j=0,len=geometry.components.length;j<len;j++){linearRing=geometry.components[j];path.push(\"m\");for(i=0,ilen=linearRing.components.length;i<ilen;i++){comp=linearRing.components[i];x=(comp.x/resolution-this.offset.x)|0;y=(comp.y/resolution-this.offset.y)|0;path.push(\" \"+x+\",\"+y);if(i==0){path.push(\" l\");}}\npath.push(\" x \");}\npath.push(\"e\");node.path=path.join(\"\");return node;},drawRectangle:function(node,geometry){var resolution=this.getResolution();node.style.left=((geometry.x/resolution-this.offset.x)|0)+\"px\";node.style.top=((geometry.y/resolution-this.offset.y)|0)+\"px\";node.style.width=((geometry.width/resolution)|0)+\"px\";node.style.height=((geometry.height/resolution)|0)+\"px\";return node;},drawText:function(featureId,style,location){var label=this.nodeFactory(featureId+this.LABEL_ID_SUFFIX,\"olv:rect\");var textbox=this.nodeFactory(featureId+this.LABEL_ID_SUFFIX+\"_textbox\",\"olv:textbox\");var resolution=this.getResolution();label.style.left=((location.x/resolution-this.offset.x)|0)+\"px\";label.style.top=((location.y/resolution-this.offset.y)|0)+\"px\";label.style.flip=\"y\";textbox.innerText=style.label;if(style.fontColor){textbox.style.color=style.fontColor;}\nif(style.fontOpacity){textbox.style.filter='alpha(opacity='+(style.fontOpacity*100)+')';}\nif(style.fontFamily){textbox.style.fontFamily=style.fontFamily;}\nif(style.fontSize){textbox.style.fontSize=style.fontSize;}\nif(style.fontWeight){textbox.style.fontWeight=style.fontWeight;}\nif(style.labelSelect===true){label._featureId=featureId;textbox._featureId=featureId;textbox._geometry=location;textbox._geometryClass=location.CLASS_NAME;}\ntextbox.style.whiteSpace=\"nowrap\";textbox.inset=\"1px,0px,0px,0px\";if(!label.parentNode){label.appendChild(textbox);this.textRoot.appendChild(label);}\nvar align=style.labelAlign||\"cm\";if(align.length==1){align+=\"m\";}\nvar xshift=textbox.clientWidth*(OpenLayers.Renderer.VML.LABEL_SHIFT[align.substr(0,1)]);var yshift=textbox.clientHeight*(OpenLayers.Renderer.VML.LABEL_SHIFT[align.substr(1,1)]);label.style.left=parseInt(label.style.left)-xshift-1+\"px\";label.style.top=parseInt(label.style.top)+yshift+\"px\";},drawSurface:function(node,geometry){this.setNodeDimension(node,geometry);var resolution=this.getResolution();var path=[];var comp,x,y;for(var i=0,len=geometry.components.length;i<len;i++){comp=geometry.components[i];x=(comp.x/resolution-this.offset.x)|0;y=(comp.y/resolution-this.offset.y)|0;if((i%3)==0&&(i/3)==0){path.push(\"m\");}else if((i%3)==1){path.push(\" c\");}\npath.push(\" \"+x+\",\"+y);}\npath.push(\" x e\");node.path=path.join(\"\");return node;},moveRoot:function(renderer){var layer=this.map.getLayer(renderer.container.id);if(layer instanceof OpenLayers.Layer.Vector.RootContainer){layer=this.map.getLayer(this.container.id);}\nlayer&&layer.renderer.clear();OpenLayers.Renderer.Elements.prototype.moveRoot.apply(this,arguments);layer&&layer.redraw();},importSymbol:function(graphicName){var id=this.container.id+\"-\"+graphicName;var cache=this.symbolCache[id];if(cache){return cache;}\nvar symbol=OpenLayers.Renderer.symbol[graphicName];if(!symbol){throw new Error(graphicName+' is not a valid symbol name');}\nvar symbolExtent=new OpenLayers.Bounds(Number.MAX_VALUE,Number.MAX_VALUE,0,0);var pathitems=[\"m\"];for(var i=0;i<symbol.length;i=i+2){var x=symbol[i];var y=symbol[i+1];symbolExtent.left=Math.min(symbolExtent.left,x);symbolExtent.bottom=Math.min(symbolExtent.bottom,y);symbolExtent.right=Math.max(symbolExtent.right,x);symbolExtent.top=Math.max(symbolExtent.top,y);pathitems.push(x);pathitems.push(y);if(i==0){pathitems.push(\"l\");}}\npathitems.push(\"x e\");var path=pathitems.join(\" \");var diff=(symbolExtent.getWidth()-symbolExtent.getHeight())/2;if(diff>0){symbolExtent.bottom=symbolExtent.bottom-diff;symbolExtent.top=symbolExtent.top+diff;}else{symbolExtent.left=symbolExtent.left+diff;symbolExtent.right=symbolExtent.right-diff;}\ncache={path:path,size:symbolExtent.getWidth(),left:symbolExtent.left,bottom:symbolExtent.bottom};this.symbolCache[id]=cache;return cache;},CLASS_NAME:\"OpenLayers.Renderer.VML\"});OpenLayers.Renderer.VML.LABEL_SHIFT={\"l\":0,\"c\":.5,\"r\":1,\"t\":0,\"m\":.5,\"b\":1};OpenLayers.Tile=OpenLayers.Class({EVENT_TYPES:[\"loadstart\",\"loadend\",\"reload\",\"unload\"],events:null,id:null,layer:null,url:null,bounds:null,size:null,position:null,isLoading:false,initialize:function(layer,position,bounds,url,size){this.layer=layer;this.position=position.clone();this.bounds=bounds.clone();this.url=url;this.size=size.clone();this.id=OpenLayers.Util.createUniqueID(\"Tile_\");this.events=new OpenLayers.Events(this,null,this.EVENT_TYPES);},unload:function(){if(this.isLoading){this.isLoading=false;this.events.triggerEvent(\"unload\");}},destroy:function(){this.layer=null;this.bounds=null;this.size=null;this.position=null;this.events.destroy();this.events=null;},clone:function(obj){if(obj==null){obj=new OpenLayers.Tile(this.layer,this.position,this.bounds,this.url,this.size);}\nOpenLayers.Util.applyDefaults(obj,this);return obj;},draw:function(){var maxExtent=this.layer.maxExtent;var withinMaxExtent=(maxExtent&&this.bounds.intersectsBounds(maxExtent,false));this.shouldDraw=(withinMaxExtent||this.layer.displayOutsideMaxExtent);this.clear();return this.shouldDraw;},moveTo:function(bounds,position,redraw){if(redraw==null){redraw=true;}\nthis.bounds=bounds.clone();this.position=position.clone();if(redraw){this.draw();}},clear:function(){},getBoundsFromBaseLayer:function(position){var msg=OpenLayers.i18n('reprojectDeprecated',{'layerName':this.layer.name});OpenLayers.Console.warn(msg);var topLeft=this.layer.map.getLonLatFromLayerPx(position);var bottomRightPx=position.clone();bottomRightPx.x+=this.size.w;bottomRightPx.y+=this.size.h;var bottomRight=this.layer.map.getLonLatFromLayerPx(bottomRightPx);if(topLeft.lon>bottomRight.lon){if(topLeft.lon<0){topLeft.lon=-180-(topLeft.lon+180);}else{bottomRight.lon=180+bottomRight.lon+180;}}\nvar bounds=new OpenLayers.Bounds(topLeft.lon,bottomRight.lat,bottomRight.lon,topLeft.lat);return bounds;},showTile:function(){if(this.shouldDraw){this.show();}},show:function(){},hide:function(){},CLASS_NAME:\"OpenLayers.Tile\"});OpenLayers.Control.MouseToolbar=OpenLayers.Class(OpenLayers.Control.MouseDefaults,{mode:null,buttons:null,direction:\"vertical\",buttonClicked:null,initialize:function(position,direction){OpenLayers.Control.prototype.initialize.apply(this,arguments);this.position=new OpenLayers.Pixel(OpenLayers.Control.MouseToolbar.X,OpenLayers.Control.MouseToolbar.Y);if(position){this.position=position;}\nif(direction){this.direction=direction;}\nthis.measureDivs=[];},destroy:function(){for(var btnId in this.buttons){var btn=this.buttons[btnId];btn.map=null;btn.events.destroy();}\nOpenLayers.Control.MouseDefaults.prototype.destroy.apply(this,arguments);},draw:function(){OpenLayers.Control.prototype.draw.apply(this,arguments);OpenLayers.Control.MouseDefaults.prototype.draw.apply(this,arguments);this.buttons={};var sz=new OpenLayers.Size(28,28);var centered=new OpenLayers.Pixel(OpenLayers.Control.MouseToolbar.X,0);this._addButton(\"zoombox\",\"drag-rectangle-off.png\",\"drag-rectangle-on.png\",centered,sz,\"Shift->Drag to zoom to area\");centered=centered.add((this.direction==\"vertical\"?0:sz.w),(this.direction==\"vertical\"?sz.h:0));this._addButton(\"pan\",\"panning-hand-off.png\",\"panning-hand-on.png\",centered,sz,\"Drag the map to pan.\");centered=centered.add((this.direction==\"vertical\"?0:sz.w),(this.direction==\"vertical\"?sz.h:0));this.switchModeTo(\"pan\");return this.div;},_addButton:function(id,img,activeImg,xy,sz,title){var imgLocation=OpenLayers.Util.getImagesLocation()+img;var activeImgLocation=OpenLayers.Util.getImagesLocation()+activeImg;var btn=OpenLayers.Util.createAlphaImageDiv(\"OpenLayers_Control_MouseToolbar_\"+id,xy,sz,imgLocation,\"absolute\");this.div.appendChild(btn);btn.imgLocation=imgLocation;btn.activeImgLocation=activeImgLocation;btn.events=new OpenLayers.Events(this,btn,null,true);btn.events.on({\"mousedown\":this.buttonDown,\"mouseup\":this.buttonUp,\"dblclick\":OpenLayers.Event.stop,scope:this});btn.action=id;btn.title=title;btn.alt=title;btn.map=this.map;this.buttons[id]=btn;return btn;},buttonDown:function(evt){if(!OpenLayers.Event.isLeftClick(evt)){return;}\nthis.buttonClicked=evt.element.action;OpenLayers.Event.stop(evt);},buttonUp:function(evt){if(!OpenLayers.Event.isLeftClick(evt)){return;}\nif(this.buttonClicked!=null){if(this.buttonClicked==evt.element.action){this.switchModeTo(evt.element.action);}\nOpenLayers.Event.stop(evt);this.buttonClicked=null;}},defaultDblClick:function(evt){this.switchModeTo(\"pan\");this.performedDrag=false;var newCenter=this.map.getLonLatFromViewPortPx(evt.xy);this.map.setCenter(newCenter,this.map.zoom+1);OpenLayers.Event.stop(evt);return false;},defaultMouseDown:function(evt){if(!OpenLayers.Event.isLeftClick(evt)){return;}\nthis.mouseDragStart=evt.xy.clone();this.performedDrag=false;this.startViaKeyboard=false;if(evt.shiftKey&&this.mode!=\"zoombox\"){this.switchModeTo(\"zoombox\");this.startViaKeyboard=true;}else if(evt.altKey&&this.mode!=\"measure\"){this.switchModeTo(\"measure\");}else if(!this.mode){this.switchModeTo(\"pan\");}\nswitch(this.mode){case\"zoombox\":this.map.div.style.cursor=\"crosshair\";this.zoomBox=OpenLayers.Util.createDiv('zoomBox',this.mouseDragStart,null,null,\"absolute\",\"2px solid red\");this.zoomBox.style.backgroundColor=\"white\";this.zoomBox.style.filter=\"alpha(opacity=50)\";this.zoomBox.style.opacity=\"0.50\";this.zoomBox.style.fontSize=\"1px\";this.zoomBox.style.zIndex=this.map.Z_INDEX_BASE[\"Popup\"]-1;this.map.viewPortDiv.appendChild(this.zoomBox);this.performedDrag=true;break;case\"measure\":var distance=\"\";if(this.measureStart){var measureEnd=this.map.getLonLatFromViewPortPx(this.mouseDragStart);distance=OpenLayers.Util.distVincenty(this.measureStart,measureEnd);distance=Math.round(distance*100)/100;distance=distance+\"km\";this.measureStartBox=this.measureBox;}\nthis.measureStart=this.map.getLonLatFromViewPortPx(this.mouseDragStart);;this.measureBox=OpenLayers.Util.createDiv(null,this.mouseDragStart.add(-2-parseInt(this.map.layerContainerDiv.style.left),-2-parseInt(this.map.layerContainerDiv.style.top)),null,null,\"absolute\");this.measureBox.style.width=\"4px\";this.measureBox.style.height=\"4px\";this.measureBox.style.fontSize=\"1px\";this.measureBox.style.backgroundColor=\"red\";this.measureBox.style.zIndex=this.map.Z_INDEX_BASE[\"Popup\"]-1;this.map.layerContainerDiv.appendChild(this.measureBox);if(distance){this.measureBoxDistance=OpenLayers.Util.createDiv(null,this.mouseDragStart.add(-2-parseInt(this.map.layerContainerDiv.style.left),2-parseInt(this.map.layerContainerDiv.style.top)),null,null,\"absolute\");this.measureBoxDistance.innerHTML=distance;this.measureBoxDistance.style.zIndex=this.map.Z_INDEX_BASE[\"Popup\"]-1;this.map.layerContainerDiv.appendChild(this.measureBoxDistance);this.measureDivs.push(this.measureBoxDistance);}\nthis.measureBox.style.zIndex=this.map.Z_INDEX_BASE[\"Popup\"]-1;this.map.layerContainerDiv.appendChild(this.measureBox);this.measureDivs.push(this.measureBox);break;default:this.map.div.style.cursor=\"move\";break;}\ndocument.onselectstart=OpenLayers.Function.False;OpenLayers.Event.stop(evt);},switchModeTo:function(mode){if(mode!=this.mode){if(this.mode&&this.buttons[this.mode]){OpenLayers.Util.modifyAlphaImageDiv(this.buttons[this.mode],null,null,null,this.buttons[this.mode].imgLocation);}\nif(this.mode==\"measure\"&&mode!=\"measure\"){for(var i=0,len=this.measureDivs.length;i<len;i++){if(this.measureDivs[i]){this.map.layerContainerDiv.removeChild(this.measureDivs[i]);}}\nthis.measureDivs=[];this.measureStart=null;}\nthis.mode=mode;if(this.buttons[mode]){OpenLayers.Util.modifyAlphaImageDiv(this.buttons[mode],null,null,null,this.buttons[mode].activeImgLocation);}\nswitch(this.mode){case\"zoombox\":this.map.div.style.cursor=\"crosshair\";break;default:this.map.div.style.cursor=\"\";break;}}},leaveMode:function(){this.switchModeTo(\"pan\");},defaultMouseMove:function(evt){if(this.mouseDragStart!=null){switch(this.mode){case\"zoombox\":var deltaX=Math.abs(this.mouseDragStart.x-evt.xy.x);var deltaY=Math.abs(this.mouseDragStart.y-evt.xy.y);this.zoomBox.style.width=Math.max(1,deltaX)+\"px\";this.zoomBox.style.height=Math.max(1,deltaY)+\"px\";if(evt.xy.x<this.mouseDragStart.x){this.zoomBox.style.left=evt.xy.x+\"px\";}\nif(evt.xy.y<this.mouseDragStart.y){this.zoomBox.style.top=evt.xy.y+\"px\";}\nbreak;default:var deltaX=this.mouseDragStart.x-evt.xy.x;var deltaY=this.mouseDragStart.y-evt.xy.y;var size=this.map.getSize();var newXY=new OpenLayers.Pixel(size.w/2+deltaX,size.h/2+deltaY);var newCenter=this.map.getLonLatFromViewPortPx(newXY);this.map.setCenter(newCenter,null,true);this.mouseDragStart=evt.xy.clone();}\nthis.performedDrag=true;}},defaultMouseUp:function(evt){if(!OpenLayers.Event.isLeftClick(evt)){return;}\nswitch(this.mode){case\"zoombox\":this.zoomBoxEnd(evt);if(this.startViaKeyboard){this.leaveMode();}\nbreak;case\"pan\":if(this.performedDrag){this.map.setCenter(this.map.center);}}\ndocument.onselectstart=null;this.mouseDragStart=null;this.map.div.style.cursor=\"default\";},defaultMouseOut:function(evt){if(this.mouseDragStart!=null&&OpenLayers.Util.mouseLeft(evt,this.map.div)){if(this.zoomBox){this.removeZoomBox();if(this.startViaKeyboard){this.leaveMode();}}\nthis.mouseDragStart=null;this.map.div.style.cursor=\"default\";}},defaultClick:function(evt){if(this.performedDrag){this.performedDrag=false;return false;}},CLASS_NAME:\"OpenLayers.Control.MouseToolbar\"});OpenLayers.Control.MouseToolbar.X=6;OpenLayers.Control.MouseToolbar.Y=300;OpenLayers.Control.NavigationHistory=OpenLayers.Class(OpenLayers.Control,{type:OpenLayers.Control.TYPE_TOGGLE,previous:null,previousOptions:null,next:null,nextOptions:null,limit:50,autoActivate:true,clearOnDeactivate:false,registry:null,nextStack:null,previousStack:null,listeners:null,restoring:false,initialize:function(options){OpenLayers.Control.prototype.initialize.apply(this,[options]);this.registry=OpenLayers.Util.extend({\"moveend\":this.getState},this.registry);var previousOptions={trigger:OpenLayers.Function.bind(this.previousTrigger,this),displayClass:this.displayClass+\" \"+this.displayClass+\"Previous\"};OpenLayers.Util.extend(previousOptions,this.previousOptions);this.previous=new OpenLayers.Control.Button(previousOptions);var nextOptions={trigger:OpenLayers.Function.bind(this.nextTrigger,this),displayClass:this.displayClass+\" \"+this.displayClass+\"Next\"};OpenLayers.Util.extend(nextOptions,this.nextOptions);this.next=new OpenLayers.Control.Button(nextOptions);this.clear();},onPreviousChange:function(state,length){if(state&&!this.previous.active){this.previous.activate();}else if(!state&&this.previous.active){this.previous.deactivate();}},onNextChange:function(state,length){if(state&&!this.next.active){this.next.activate();}else if(!state&&this.next.active){this.next.deactivate();}},destroy:function(){OpenLayers.Control.prototype.destroy.apply(this);this.previous.destroy();this.next.destroy();this.deactivate();for(var prop in this){this[prop]=null;}},setMap:function(map){this.map=map;this.next.setMap(map);this.previous.setMap(map);},draw:function(){OpenLayers.Control.prototype.draw.apply(this,arguments);this.next.draw();this.previous.draw();},previousTrigger:function(){var current=this.previousStack.shift();var state=this.previousStack.shift();if(state!=undefined){this.nextStack.unshift(current);this.previousStack.unshift(state);this.restoring=true;this.restore(state);this.restoring=false;this.onNextChange(this.nextStack[0],this.nextStack.length);this.onPreviousChange(this.previousStack[1],this.previousStack.length-1);}else{this.previousStack.unshift(current);}\nreturn state;},nextTrigger:function(){var state=this.nextStack.shift();if(state!=undefined){this.previousStack.unshift(state);this.restoring=true;this.restore(state);this.restoring=false;this.onNextChange(this.nextStack[0],this.nextStack.length);this.onPreviousChange(this.previousStack[1],this.previousStack.length-1);}\nreturn state;},clear:function(){this.previousStack=[];this.previous.deactivate();this.nextStack=[];this.next.deactivate();},getState:function(){return{center:this.map.getCenter(),resolution:this.map.getResolution(),projection:this.map.getProjectionObject(),units:this.map.getProjectionObject().getUnits()||this.map.units||this.map.baseLayer.units};},restore:function(state){var center,zoom;if(this.map.getProjectionObject()==state.projection){zoom=this.map.getZoomForResolution(state.resolution);center=state.center;}else{center=state.center.clone();center.transform(state.projection,this.map.getProjectionObject());var sourceUnits=state.units;var targetUnits=this.map.getProjectionObject().getUnits()||this.map.units||this.map.baseLayer.units;var resolutionFactor=sourceUnits&&targetUnits?OpenLayers.INCHES_PER_UNIT[sourceUnits]/OpenLayers.INCHES_PER_UNIT[targetUnits]:1;zoom=this.map.getZoomForResolution(resolutionFactor*state.resolution);}\nthis.map.setCenter(center,zoom);},setListeners:function(){this.listeners={};for(var type in this.registry){this.listeners[type]=OpenLayers.Function.bind(function(){if(!this.restoring){var state=this.registry[type].apply(this,arguments);this.previousStack.unshift(state);if(this.previousStack.length>1){this.onPreviousChange(this.previousStack[1],this.previousStack.length-1);}\nif(this.previousStack.length>(this.limit+1)){this.previousStack.pop();}\nif(this.nextStack.length>0){this.nextStack=[];this.onNextChange(null,0);}}\nreturn true;},this);}},activate:function(){var activated=false;if(this.map){if(OpenLayers.Control.prototype.activate.apply(this)){if(this.listeners==null){this.setListeners();}\nfor(var type in this.listeners){this.map.events.register(type,this,this.listeners[type]);}\nactivated=true;if(this.previousStack.length==0){this.initStack();}}}\nreturn activated;},initStack:function(){if(this.map.getCenter()){this.listeners.moveend();}},deactivate:function(){var deactivated=false;if(this.map){if(OpenLayers.Control.prototype.deactivate.apply(this)){for(var type in this.listeners){this.map.events.unregister(type,this,this.listeners[type]);}\nif(this.clearOnDeactivate){this.clear();}\ndeactivated=true;}}\nreturn deactivated;},CLASS_NAME:\"OpenLayers.Control.NavigationHistory\"});OpenLayers.Control.PanPanel=OpenLayers.Class(OpenLayers.Control.Panel,{slideFactor:50,initialize:function(options){OpenLayers.Control.Panel.prototype.initialize.apply(this,[options]);this.addControls([new OpenLayers.Control.Pan(OpenLayers.Control.Pan.NORTH,{slideFactor:this.slideFactor}),new OpenLayers.Control.Pan(OpenLayers.Control.Pan.SOUTH,{slideFactor:this.slideFactor}),new OpenLayers.Control.Pan(OpenLayers.Control.Pan.EAST,{slideFactor:this.slideFactor}),new OpenLayers.Control.Pan(OpenLayers.Control.Pan.WEST,{slideFactor:this.slideFactor})]);},CLASS_NAME:\"OpenLayers.Control.PanPanel\"});OpenLayers.Control.PanZoomBar=OpenLayers.Class(OpenLayers.Control.PanZoom,{zoomStopWidth:18,zoomStopHeight:11,slider:null,sliderEvents:null,zoombarDiv:null,divEvents:null,zoomWorldIcon:false,forceFixedZoomLevel:false,mouseDragStart:null,zoomStart:null,initialize:function(){OpenLayers.Control.PanZoom.prototype.initialize.apply(this,arguments);},destroy:function(){this._removeZoomBar();this.map.events.un({\"changebaselayer\":this.redraw,scope:this});OpenLayers.Control.PanZoom.prototype.destroy.apply(this,arguments);delete this.mouseDragStart;delete this.zoomStart;},setMap:function(map){OpenLayers.Control.PanZoom.prototype.setMap.apply(this,arguments);this.map.events.register(\"changebaselayer\",this,this.redraw);},redraw:function(){if(this.div!=null){this.removeButtons();this._removeZoomBar();}\nthis.draw();},draw:function(px){OpenLayers.Control.prototype.draw.apply(this,arguments);px=this.position.clone();this.buttons=[];var sz=new OpenLayers.Size(18,18);var centered=new OpenLayers.Pixel(px.x+sz.w/2,px.y);var wposition=sz.w;if(this.zoomWorldIcon){centered=new OpenLayers.Pixel(px.x+sz.w,px.y);}\nthis._addButton(\"panup\",\"north-mini.png\",centered,sz);px.y=centered.y+sz.h;this._addButton(\"panleft\",\"west-mini.png\",px,sz);if(this.zoomWorldIcon){this._addButton(\"zoomworld\",\"zoom-world-mini.png\",px.add(sz.w,0),sz);wposition*=2;}\nthis._addButton(\"panright\",\"east-mini.png\",px.add(wposition,0),sz);this._addButton(\"pandown\",\"south-mini.png\",centered.add(0,sz.h*2),sz);this._addButton(\"zoomin\",\"zoom-plus-mini.png\",centered.add(0,sz.h*3+5),sz);centered=this._addZoomBar(centered.add(0,sz.h*4+5));this._addButton(\"zoomout\",\"zoom-minus-mini.png\",centered,sz);return this.div;},_addZoomBar:function(centered){var imgLocation=OpenLayers.Util.getImagesLocation();var id=this.id+\"_\"+this.map.id;var zoomsToEnd=this.map.getNumZoomLevels()-1-this.map.getZoom();var slider=OpenLayers.Util.createAlphaImageDiv(id,centered.add(-1,zoomsToEnd*this.zoomStopHeight),new OpenLayers.Size(20,9),imgLocation+\"slider.png\",\"absolute\");this.slider=slider;this.sliderEvents=new OpenLayers.Events(this,slider,null,true,{includeXY:true});this.sliderEvents.on({\"mousedown\":this.zoomBarDown,\"mousemove\":this.zoomBarDrag,\"mouseup\":this.zoomBarUp,\"dblclick\":this.doubleClick,\"click\":this.doubleClick});var sz=new OpenLayers.Size();sz.h=this.zoomStopHeight*this.map.getNumZoomLevels();sz.w=this.zoomStopWidth;var div=null;if(OpenLayers.Util.alphaHack()){var id=this.id+\"_\"+this.map.id;div=OpenLayers.Util.createAlphaImageDiv(id,centered,new OpenLayers.Size(sz.w,this.zoomStopHeight),imgLocation+\"zoombar.png\",\"absolute\",null,\"crop\");div.style.height=sz.h+\"px\";}else{div=OpenLayers.Util.createDiv('OpenLayers_Control_PanZoomBar_Zoombar'+this.map.id,centered,sz,imgLocation+\"zoombar.png\");}\nthis.zoombarDiv=div;this.divEvents=new OpenLayers.Events(this,div,null,true,{includeXY:true});this.divEvents.on({\"mousedown\":this.divClick,\"mousemove\":this.passEventToSlider,\"dblclick\":this.doubleClick,\"click\":this.doubleClick});this.div.appendChild(div);this.startTop=parseInt(div.style.top);this.div.appendChild(slider);this.map.events.register(\"zoomend\",this,this.moveZoomBar);centered=centered.add(0,this.zoomStopHeight*this.map.getNumZoomLevels());return centered;},_removeZoomBar:function(){this.sliderEvents.un({\"mousedown\":this.zoomBarDown,\"mousemove\":this.zoomBarDrag,\"mouseup\":this.zoomBarUp,\"dblclick\":this.doubleClick,\"click\":this.doubleClick});this.sliderEvents.destroy();this.divEvents.un({\"mousedown\":this.divClick,\"mousemove\":this.passEventToSlider,\"dblclick\":this.doubleClick,\"click\":this.doubleClick});this.divEvents.destroy();this.div.removeChild(this.zoombarDiv);this.zoombarDiv=null;this.div.removeChild(this.slider);this.slider=null;this.map.events.unregister(\"zoomend\",this,this.moveZoomBar);},passEventToSlider:function(evt){this.sliderEvents.handleBrowserEvent(evt);},divClick:function(evt){if(!OpenLayers.Event.isLeftClick(evt)){return;}\nvar y=evt.xy.y;var top=OpenLayers.Util.pagePosition(evt.object)[1];var levels=(y-top)/this.zoomStopHeight;if(this.forceFixedZoomLevel||!this.map.fractionalZoom){levels=Math.floor(levels);}\nvar zoom=(this.map.getNumZoomLevels()-1)-levels;zoom=Math.min(Math.max(zoom,0),this.map.getNumZoomLevels()-1);this.map.zoomTo(zoom);OpenLayers.Event.stop(evt);},zoomBarDown:function(evt){if(!OpenLayers.Event.isLeftClick(evt)){return;}\nthis.map.events.on({\"mousemove\":this.passEventToSlider,\"mouseup\":this.passEventToSlider,scope:this});this.mouseDragStart=evt.xy.clone();this.zoomStart=evt.xy.clone();this.div.style.cursor=\"move\";this.zoombarDiv.offsets=null;OpenLayers.Event.stop(evt);},zoomBarDrag:function(evt){if(this.mouseDragStart!=null){var deltaY=this.mouseDragStart.y-evt.xy.y;var offsets=OpenLayers.Util.pagePosition(this.zoombarDiv);if((evt.clientY-offsets[1])>0&&(evt.clientY-offsets[1])<parseInt(this.zoombarDiv.style.height)-2){var newTop=parseInt(this.slider.style.top)-deltaY;this.slider.style.top=newTop+\"px\";this.mouseDragStart=evt.xy.clone();}\nOpenLayers.Event.stop(evt);}},zoomBarUp:function(evt){if(!OpenLayers.Event.isLeftClick(evt)){return;}\nif(this.mouseDragStart){this.div.style.cursor=\"\";this.map.events.un({\"mouseup\":this.passEventToSlider,\"mousemove\":this.passEventToSlider,scope:this});var deltaY=this.zoomStart.y-evt.xy.y;var zoomLevel=this.map.zoom;if(!this.forceFixedZoomLevel&&this.map.fractionalZoom){zoomLevel+=deltaY/this.zoomStopHeight;zoomLevel=Math.min(Math.max(zoomLevel,0),this.map.getNumZoomLevels()-1);}else{zoomLevel+=Math.round(deltaY/this.zoomStopHeight);}\nthis.map.zoomTo(zoomLevel);this.mouseDragStart=null;this.zoomStart=null;OpenLayers.Event.stop(evt);}},moveZoomBar:function(){var newTop=((this.map.getNumZoomLevels()-1)-this.map.getZoom())*this.zoomStopHeight+this.startTop+1;this.slider.style.top=newTop+\"px\";},CLASS_NAME:\"OpenLayers.Control.PanZoomBar\"});OpenLayers.Control.Permalink=OpenLayers.Class(OpenLayers.Control,{argParserClass:OpenLayers.Control.ArgParser,element:null,base:'',displayProjection:null,initialize:function(element,base,options){OpenLayers.Control.prototype.initialize.apply(this,[options]);this.element=OpenLayers.Util.getElement(element);this.base=base||document.location.href;},destroy:function(){if(this.element.parentNode==this.div){this.div.removeChild(this.element);}\nthis.element=null;this.map.events.unregister('moveend',this,this.updateLink);OpenLayers.Control.prototype.destroy.apply(this,arguments);},setMap:function(map){OpenLayers.Control.prototype.setMap.apply(this,arguments);for(var i=0,len=this.map.controls.length;i<len;i++){var control=this.map.controls[i];if(control.CLASS_NAME==this.argParserClass.CLASS_NAME){if(control.displayProjection!=this.displayProjection){this.displayProjection=control.displayProjection;}\nbreak;}}\nif(i==this.map.controls.length){this.map.addControl(new this.argParserClass({'displayProjection':this.displayProjection}));}},draw:function(){OpenLayers.Control.prototype.draw.apply(this,arguments);if(!this.element){this.div.className=this.displayClass;this.element=document.createElement(\"a\");this.element.innerHTML=OpenLayers.i18n(\"permalink\");this.element.href=\"\";this.div.appendChild(this.element);}\nthis.map.events.on({'moveend':this.updateLink,'changelayer':this.updateLink,'changebaselayer':this.updateLink,scope:this});this.updateLink();return this.div;},updateLink:function(){var href=this.base;if(href.indexOf('?')!=-1){href=href.substring(0,href.indexOf('?'));}\nhref+='?'+OpenLayers.Util.getParameterString(this.createParams());this.element.href=href;},createParams:function(center,zoom,layers){center=center||this.map.getCenter();var params=OpenLayers.Util.getParameters(this.base);if(center){params.zoom=zoom||this.map.getZoom();var lat=center.lat;var lon=center.lon;if(this.displayProjection){var mapPosition=OpenLayers.Projection.transform({x:lon,y:lat},this.map.getProjectionObject(),this.displayProjection);lon=mapPosition.x;lat=mapPosition.y;}\nparams.lat=Math.round(lat*100000)/100000;params.lon=Math.round(lon*100000)/100000;layers=layers||this.map.layers;params.layers='';for(var i=0,len=layers.length;i<len;i++){var layer=layers[i];if(layer.isBaseLayer){params.layers+=(layer==this.map.baseLayer)?\"B\":\"0\";}else{params.layers+=(layer.getVisibility())?\"T\":\"F\";}}}\nreturn params;},CLASS_NAME:\"OpenLayers.Control.Permalink\"});OpenLayers.Control.ZoomPanel=OpenLayers.Class(OpenLayers.Control.Panel,{initialize:function(options){OpenLayers.Control.Panel.prototype.initialize.apply(this,[options]);this.addControls([new OpenLayers.Control.ZoomIn(),new OpenLayers.Control.ZoomToMaxExtent(),new OpenLayers.Control.ZoomOut()]);},CLASS_NAME:\"OpenLayers.Control.ZoomPanel\"});OpenLayers.Format.CSWGetDomain=function(options){options=OpenLayers.Util.applyDefaults(options,OpenLayers.Format.CSWGetDomain.DEFAULTS);var cls=OpenLayers.Format.CSWGetDomain[\"v\"+options.version.replace(/\\./g,\"_\")];if(!cls){throw\"Unsupported CSWGetDomain version: \"+options.version;}\nreturn new cls(options);};OpenLayers.Format.CSWGetDomain.DEFAULTS={\"version\":\"2.0.2\"};OpenLayers.Format.CSWGetRecords=function(options){options=OpenLayers.Util.applyDefaults(options,OpenLayers.Format.CSWGetRecords.DEFAULTS);var cls=OpenLayers.Format.CSWGetRecords[\"v\"+options.version.replace(/\\./g,\"_\")];if(!cls){throw\"Unsupported CSWGetRecords version: \"+options.version;}\nreturn new cls(options);};OpenLayers.Format.CSWGetRecords.DEFAULTS={\"version\":\"2.0.2\"};OpenLayers.Format.JSON=OpenLayers.Class(OpenLayers.Format,{indent:\"    \",space:\" \",newline:\"\\n\",level:0,pretty:false,initialize:function(options){OpenLayers.Format.prototype.initialize.apply(this,[options]);},read:function(json,filter){try{if(/^[\\],:{}\\s]*$/.test(json.replace(/\\\\[\"\\\\\\/bfnrtu]/g,'@').replace(/\"[^\"\\\\\\n\\r]*\"|true|false|null|-?\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?/g,']').replace(/(?:^|:|,)(?:\\s*\\[)+/g,''))){var object=eval('('+json+')');if(typeof filter==='function'){function walk(k,v){if(v&&typeof v==='object'){for(var i in v){if(v.hasOwnProperty(i)){v[i]=walk(i,v[i]);}}}\nreturn filter(k,v);}\nobject=walk('',object);}\nif(this.keepData){this.data=object;}\nreturn object;}}catch(e){}\nreturn null;},write:function(value,pretty){this.pretty=!!pretty;var json=null;var type=typeof value;if(this.serialize[type]){try{json=this.serialize[type].apply(this,[value]);}catch(err){OpenLayers.Console.error(\"Trouble serializing: \"+err);}}\nreturn json;},writeIndent:function(){var pieces=[];if(this.pretty){for(var i=0;i<this.level;++i){pieces.push(this.indent);}}\nreturn pieces.join('');},writeNewline:function(){return(this.pretty)?this.newline:'';},writeSpace:function(){return(this.pretty)?this.space:'';},serialize:{'object':function(object){if(object==null){return\"null\";}\nif(object.constructor==Date){return this.serialize.date.apply(this,[object]);}\nif(object.constructor==Array){return this.serialize.array.apply(this,[object]);}\nvar pieces=['{'];this.level+=1;var key,keyJSON,valueJSON;var addComma=false;for(key in object){if(object.hasOwnProperty(key)){keyJSON=OpenLayers.Format.JSON.prototype.write.apply(this,[key,this.pretty]);valueJSON=OpenLayers.Format.JSON.prototype.write.apply(this,[object[key],this.pretty]);if(keyJSON!=null&&valueJSON!=null){if(addComma){pieces.push(',');}\npieces.push(this.writeNewline(),this.writeIndent(),keyJSON,':',this.writeSpace(),valueJSON);addComma=true;}}}\nthis.level-=1;pieces.push(this.writeNewline(),this.writeIndent(),'}');return pieces.join('');},'array':function(array){var json;var pieces=['['];this.level+=1;for(var i=0,len=array.length;i<len;++i){json=OpenLayers.Format.JSON.prototype.write.apply(this,[array[i],this.pretty]);if(json!=null){if(i>0){pieces.push(',');}\npieces.push(this.writeNewline(),this.writeIndent(),json);}}\nthis.level-=1;pieces.push(this.writeNewline(),this.writeIndent(),']');return pieces.join('');},'string':function(string){var m={'\\b':'\\\\b','\\t':'\\\\t','\\n':'\\\\n','\\f':'\\\\f','\\r':'\\\\r','\"':'\\\\\"','\\\\':'\\\\\\\\'};if(/[\"\\\\\\x00-\\x1f]/.test(string)){return'\"'+string.replace(/([\\x00-\\x1f\\\\\"])/g,function(a,b){var c=m[b];if(c){return c;}\nc=b.charCodeAt();return'\\\\u00'+\nMath.floor(c/16).toString(16)+\n(c%16).toString(16);})+'\"';}\nreturn'\"'+string+'\"';},'number':function(number){return isFinite(number)?String(number):\"null\";},'boolean':function(bool){return String(bool);},'date':function(date){function format(number){return(number<10)?'0'+number:number;}\nreturn'\"'+date.getFullYear()+'-'+\nformat(date.getMonth()+1)+'-'+\nformat(date.getDate())+'T'+\nformat(date.getHours())+':'+\nformat(date.getMinutes())+':'+\nformat(date.getSeconds())+'\"';}},CLASS_NAME:\"OpenLayers.Format.JSON\"});OpenLayers.Format.WFST=function(options){options=OpenLayers.Util.applyDefaults(options,OpenLayers.Format.WFST.DEFAULTS);var cls=OpenLayers.Format.WFST[\"v\"+options.version.replace(/\\./g,\"_\")];if(!cls){throw\"Unsupported WFST version: \"+options.version;}\nreturn new cls(options);};OpenLayers.Format.WFST.DEFAULTS={\"version\":\"1.0.0\"};OpenLayers.Format.XML=OpenLayers.Class(OpenLayers.Format,{namespaces:null,namespaceAlias:null,defaultPrefix:null,readers:{},writers:{},xmldom:null,initialize:function(options){if(window.ActiveXObject){this.xmldom=new ActiveXObject(\"Microsoft.XMLDOM\");}\nOpenLayers.Format.prototype.initialize.apply(this,[options]);this.namespaces=OpenLayers.Util.extend({},this.namespaces);this.namespaceAlias={};for(var alias in this.namespaces){this.namespaceAlias[this.namespaces[alias]]=alias;}},destroy:function(){this.xmldom=null;OpenLayers.Format.prototype.destroy.apply(this,arguments);},setNamespace:function(alias,uri){this.namespaces[alias]=uri;this.namespaceAlias[uri]=alias;},read:function(text){var index=text.indexOf('<');if(index>0){text=text.substring(index);}\nvar node=OpenLayers.Util.Try(OpenLayers.Function.bind((function(){var xmldom;if(window.ActiveXObject&&!this.xmldom){xmldom=new ActiveXObject(\"Microsoft.XMLDOM\");}else{xmldom=this.xmldom;}\nxmldom.loadXML(text);return xmldom;}),this),function(){return new DOMParser().parseFromString(text,'text/xml');},function(){var req=new XMLHttpRequest();req.open(\"GET\",\"data:\"+\"text/xml\"+\";charset=utf-8,\"+encodeURIComponent(text),false);if(req.overrideMimeType){req.overrideMimeType(\"text/xml\");}\nreq.send(null);return req.responseXML;});if(this.keepData){this.data=node;}\nreturn node;},write:function(node){var data;if(this.xmldom){data=node.xml;}else{var serializer=new XMLSerializer();if(node.nodeType==1){var doc=document.implementation.createDocument(\"\",\"\",null);if(doc.importNode){node=doc.importNode(node,true);}\ndoc.appendChild(node);data=serializer.serializeToString(doc);}else{data=serializer.serializeToString(node);}}\nreturn data;},createElementNS:function(uri,name){var element;if(this.xmldom){if(typeof uri==\"string\"){element=this.xmldom.createNode(1,name,uri);}else{element=this.xmldom.createNode(1,name,\"\");}}else{element=document.createElementNS(uri,name);}\nreturn element;},createTextNode:function(text){var node;if(typeof text!==\"string\"){text=String(text);}\nif(this.xmldom){node=this.xmldom.createTextNode(text);}else{node=document.createTextNode(text);}\nreturn node;},getElementsByTagNameNS:function(node,uri,name){var elements=[];if(node.getElementsByTagNameNS){elements=node.getElementsByTagNameNS(uri,name);}else{var allNodes=node.getElementsByTagName(\"*\");var potentialNode,fullName;for(var i=0,len=allNodes.length;i<len;++i){potentialNode=allNodes[i];fullName=(potentialNode.prefix)?(potentialNode.prefix+\":\"+name):name;if((name==\"*\")||(fullName==potentialNode.nodeName)){if((uri==\"*\")||(uri==potentialNode.namespaceURI)){elements.push(potentialNode);}}}}\nreturn elements;},getAttributeNodeNS:function(node,uri,name){var attributeNode=null;if(node.getAttributeNodeNS){attributeNode=node.getAttributeNodeNS(uri,name);}else{var attributes=node.attributes;var potentialNode,fullName;for(var i=0,len=attributes.length;i<len;++i){potentialNode=attributes[i];if(potentialNode.namespaceURI==uri){fullName=(potentialNode.prefix)?(potentialNode.prefix+\":\"+name):name;if(fullName==potentialNode.nodeName){attributeNode=potentialNode;break;}}}}\nreturn attributeNode;},getAttributeNS:function(node,uri,name){var attributeValue=\"\";if(node.getAttributeNS){attributeValue=node.getAttributeNS(uri,name)||\"\";}else{var attributeNode=this.getAttributeNodeNS(node,uri,name);if(attributeNode){attributeValue=attributeNode.nodeValue;}}\nreturn attributeValue;},getChildValue:function(node,def){var value=def||\"\";if(node){for(var child=node.firstChild;child;child=child.nextSibling){switch(child.nodeType){case 3:case 4:value+=child.nodeValue;}}}\nreturn value;},concatChildValues:function(node,def){var value=\"\";var child=node.firstChild;var childValue;while(child){childValue=child.nodeValue;if(childValue){value+=childValue;}\nchild=child.nextSibling;}\nif(value==\"\"&&def!=undefined){value=def;}\nreturn value;},isSimpleContent:function(node){var simple=true;for(var child=node.firstChild;child;child=child.nextSibling){if(child.nodeType===1){simple=false;break;}}\nreturn simple;},contentType:function(node){var simple=false,complex=false;var type=OpenLayers.Format.XML.CONTENT_TYPE.EMPTY;for(var child=node.firstChild;child;child=child.nextSibling){switch(child.nodeType){case 1:complex=true;break;case 8:break;default:simple=true;}\nif(complex&&simple){break;}}\nif(complex&&simple){type=OpenLayers.Format.XML.CONTENT_TYPE.MIXED;}else if(complex){return OpenLayers.Format.XML.CONTENT_TYPE.COMPLEX;}else if(simple){return OpenLayers.Format.XML.CONTENT_TYPE.SIMPLE;}\nreturn type;},hasAttributeNS:function(node,uri,name){var found=false;if(node.hasAttributeNS){found=node.hasAttributeNS(uri,name);}else{found=!!this.getAttributeNodeNS(node,uri,name);}\nreturn found;},setAttributeNS:function(node,uri,name,value){if(node.setAttributeNS){node.setAttributeNS(uri,name,value);}else{if(this.xmldom){if(uri){var attribute=node.ownerDocument.createNode(2,name,uri);attribute.nodeValue=value;node.setAttributeNode(attribute);}else{node.setAttribute(name,value);}}else{throw\"setAttributeNS not implemented\";}}},createElementNSPlus:function(name,options){options=options||{};var uri=options.uri||this.namespaces[options.prefix];if(!uri){var loc=name.indexOf(\":\");uri=this.namespaces[name.substring(0,loc)];}\nif(!uri){uri=this.namespaces[this.defaultPrefix];}\nvar node=this.createElementNS(uri,name);if(options.attributes){this.setAttributes(node,options.attributes);}\nvar value=options.value;if(value!=null){node.appendChild(this.createTextNode(value));}\nreturn node;},setAttributes:function(node,obj){var value,uri;for(var name in obj){if(obj[name]!=null&&obj[name].toString){value=obj[name].toString();uri=this.namespaces[name.substring(0,name.indexOf(\":\"))]||null;this.setAttributeNS(node,uri,name,value);}}},readNode:function(node,obj){if(!obj){obj={};}\nvar group=this.readers[node.namespaceURI?this.namespaceAlias[node.namespaceURI]:this.defaultPrefix];if(group){var local=node.localName||node.nodeName.split(\":\").pop();var reader=group[local]||group[\"*\"];if(reader){reader.apply(this,[node,obj]);}}\nreturn obj;},readChildNodes:function(node,obj){if(!obj){obj={};}\nvar children=node.childNodes;var child;for(var i=0,len=children.length;i<len;++i){child=children[i];if(child.nodeType==1){this.readNode(child,obj);}}\nreturn obj;},writeNode:function(name,obj,parent){var prefix,local;var split=name.indexOf(\":\");if(split>0){prefix=name.substring(0,split);local=name.substring(split+1);}else{if(parent){prefix=this.namespaceAlias[parent.namespaceURI];}else{prefix=this.defaultPrefix;}\nlocal=name;}\nvar child=this.writers[prefix][local].apply(this,[obj]);if(parent){parent.appendChild(child);}\nreturn child;},getChildEl:function(node,name,uri){return node&&this.getThisOrNextEl(node.firstChild,name,uri);},getNextEl:function(node,name,uri){return node&&this.getThisOrNextEl(node.nextSibling,name,uri);},getThisOrNextEl:function(node,name,uri){outer:for(var sibling=node;sibling;sibling=sibling.nextSibling){switch(sibling.nodeType){case 1:if((!name||name===(sibling.localName||sibling.nodeName.split(\":\").pop()))&&(!uri||uri===sibling.namespaceURI)){break outer;}\nsibling=null;break outer;case 3:if(/^\\s*$/.test(sibling.nodeValue)){break;}\ncase 4:case 6:case 12:case 10:case 11:sibling=null;break outer;}}\nreturn sibling||null;},lookupNamespaceURI:function(node,prefix){var uri=null;if(node){if(node.lookupNamespaceURI){uri=node.lookupNamespaceURI(prefix);}else{outer:switch(node.nodeType){case 1:if(node.namespaceURI!==null&&node.prefix===prefix){uri=node.namespaceURI;break outer;}\nvar len=node.attributes.length;if(len){var attr;for(var i=0;i<len;++i){attr=node.attributes[i];if(attr.prefix===\"xmlns\"&&attr.name===\"xmlns:\"+prefix){uri=attr.value||null;break outer;}else if(attr.name===\"xmlns\"&&prefix===null){uri=attr.value||null;break outer;}}}\nuri=this.lookupNamespaceURI(node.parentNode,prefix);break outer;case 2:uri=this.lookupNamespaceURI(node.ownerElement,prefix);break outer;case 9:uri=this.lookupNamespaceURI(node.documentElement,prefix);break outer;case 6:case 12:case 10:case 11:break outer;default:uri=this.lookupNamespaceURI(node.parentNode,prefix);break outer;}}}\nreturn uri;},CLASS_NAME:\"OpenLayers.Format.XML\"});OpenLayers.Format.XML.CONTENT_TYPE={EMPTY:0,SIMPLE:1,COMPLEX:2,MIXED:3};OpenLayers.Format.XML.lookupNamespaceURI=OpenLayers.Function.bind(OpenLayers.Format.XML.prototype.lookupNamespaceURI,OpenLayers.Format.XML.prototype);OpenLayers.Handler=OpenLayers.Class({id:null,control:null,map:null,keyMask:null,active:false,evt:null,initialize:function(control,callbacks,options){OpenLayers.Util.extend(this,options);this.control=control;this.callbacks=callbacks;var map=this.map||control.map;if(map){this.setMap(map);}\nthis.id=OpenLayers.Util.createUniqueID(this.CLASS_NAME+\"_\");},setMap:function(map){this.map=map;},checkModifiers:function(evt){if(this.keyMask==null){return true;}\nvar keyModifiers=(evt.shiftKey?OpenLayers.Handler.MOD_SHIFT:0)|(evt.ctrlKey?OpenLayers.Handler.MOD_CTRL:0)|(evt.altKey?OpenLayers.Handler.MOD_ALT:0);return(keyModifiers==this.keyMask);},activate:function(){if(this.active){return false;}\nvar events=OpenLayers.Events.prototype.BROWSER_EVENTS;for(var i=0,len=events.length;i<len;i++){if(this[events[i]]){this.register(events[i],this[events[i]]);}}\nthis.active=true;return true;},deactivate:function(){if(!this.active){return false;}\nvar events=OpenLayers.Events.prototype.BROWSER_EVENTS;for(var i=0,len=events.length;i<len;i++){if(this[events[i]]){this.unregister(events[i],this[events[i]]);}}\nthis.active=false;return true;},callback:function(name,args){if(name&&this.callbacks[name]){this.callbacks[name].apply(this.control,args);}},register:function(name,method){this.map.events.registerPriority(name,this,method);this.map.events.registerPriority(name,this,this.setEvent);},unregister:function(name,method){this.map.events.unregister(name,this,method);this.map.events.unregister(name,this,this.setEvent);},setEvent:function(evt){this.evt=evt;return true;},destroy:function(){this.deactivate();this.control=this.map=null;},CLASS_NAME:\"OpenLayers.Handler\"});OpenLayers.Handler.MOD_NONE=0;OpenLayers.Handler.MOD_SHIFT=1;OpenLayers.Handler.MOD_CTRL=2;OpenLayers.Handler.MOD_ALT=4;OpenLayers.Map=OpenLayers.Class({Z_INDEX_BASE:{BaseLayer:100,Overlay:325,Feature:725,Popup:750,Control:1000},EVENT_TYPES:[\"preaddlayer\",\"addlayer\",\"removelayer\",\"changelayer\",\"movestart\",\"move\",\"moveend\",\"zoomend\",\"popupopen\",\"popupclose\",\"addmarker\",\"removemarker\",\"clearmarkers\",\"mouseover\",\"mouseout\",\"mousemove\",\"dragstart\",\"drag\",\"dragend\",\"changebaselayer\"],id:null,fractionalZoom:false,events:null,allOverlays:false,div:null,dragging:false,size:null,viewPortDiv:null,layerContainerOrigin:null,layerContainerDiv:null,layers:null,controls:null,popups:null,baseLayer:null,center:null,resolution:null,zoom:0,panRatio:1.5,viewRequestID:0,tileSize:null,projection:\"EPSG:4326\",units:'degrees',resolutions:null,maxResolution:1.40625,minResolution:null,maxScale:null,minScale:null,maxExtent:null,minExtent:null,restrictedExtent:null,numZoomLevels:16,theme:null,displayProjection:null,fallThrough:true,panTween:null,eventListeners:null,panMethod:OpenLayers.Easing.Expo.easeOut,panDuration:50,paddingForPopups:null,initialize:function(div,options){if(arguments.length===1&&typeof div===\"object\"){options=div;div=options&&options.div;}\nthis.tileSize=new OpenLayers.Size(OpenLayers.Map.TILE_WIDTH,OpenLayers.Map.TILE_HEIGHT);this.maxExtent=new OpenLayers.Bounds(-180,-90,180,90);this.paddingForPopups=new OpenLayers.Bounds(15,15,15,15);this.theme=OpenLayers._getScriptLocation()+'theme/default/style.css';OpenLayers.Util.extend(this,options);this.layers=[];this.id=OpenLayers.Util.createUniqueID(\"OpenLayers.Map_\");this.div=OpenLayers.Util.getElement(div);if(!this.div){this.div=document.createElement(\"div\");this.div.style.height=\"1px\";this.div.style.width=\"1px\";}\nOpenLayers.Element.addClass(this.div,'olMap');var id=this.id+\"_OpenLayers_ViewPort\";this.viewPortDiv=OpenLayers.Util.createDiv(id,null,null,null,\"relative\",null,\"hidden\");this.viewPortDiv.style.width=\"100%\";this.viewPortDiv.style.height=\"100%\";this.viewPortDiv.className=\"olMapViewport\";this.div.appendChild(this.viewPortDiv);id=this.id+\"_OpenLayers_Container\";this.layerContainerDiv=OpenLayers.Util.createDiv(id);this.layerContainerDiv.style.zIndex=this.Z_INDEX_BASE['Popup']-1;this.viewPortDiv.appendChild(this.layerContainerDiv);this.events=new OpenLayers.Events(this,this.div,this.EVENT_TYPES,this.fallThrough,{includeXY:true});this.updateSize();if(this.eventListeners instanceof Object){this.events.on(this.eventListeners);}\nthis.events.register(\"movestart\",this,this.updateSize);if(OpenLayers.String.contains(navigator.appName,\"Microsoft\")){this.events.register(\"resize\",this,this.updateSize);}else{this.updateSizeDestroy=OpenLayers.Function.bind(this.updateSize,this);OpenLayers.Event.observe(window,'resize',this.updateSizeDestroy);}\nif(this.theme){var addNode=true;var nodes=document.getElementsByTagName('link');for(var i=0,len=nodes.length;i<len;++i){if(OpenLayers.Util.isEquivalentUrl(nodes.item(i).href,this.theme)){addNode=false;break;}}\nif(addNode){var cssNode=document.createElement('link');cssNode.setAttribute('rel','stylesheet');cssNode.setAttribute('type','text/css');cssNode.setAttribute('href',this.theme);document.getElementsByTagName('head')[0].appendChild(cssNode);}}\nif(this.controls==null){if(OpenLayers.Control!=null){this.controls=[new OpenLayers.Control.Navigation(),new OpenLayers.Control.PanZoom(),new OpenLayers.Control.ArgParser(),new OpenLayers.Control.Attribution()];}else{this.controls=[];}}\nfor(var i=0,len=this.controls.length;i<len;i++){this.addControlToMap(this.controls[i]);}\nthis.popups=[];this.unloadDestroy=OpenLayers.Function.bind(this.destroy,this);OpenLayers.Event.observe(window,'unload',this.unloadDestroy);if(options&&options.layers){this.addLayers(options.layers);if(options.center){this.setCenter(options.center,options.zoom);}}},render:function(div){this.div=OpenLayers.Util.getElement(div);OpenLayers.Element.addClass(this.div,'olMap');this.events.attachToElement(this.div);this.viewPortDiv.parentNode.removeChild(this.viewPortDiv);this.div.appendChild(this.viewPortDiv);this.updateSize();},unloadDestroy:null,updateSizeDestroy:null,destroy:function(){if(!this.unloadDestroy){return false;}\nif(this.panTween){this.panTween.stop();this.panTween=null;}\nOpenLayers.Event.stopObserving(window,'unload',this.unloadDestroy);this.unloadDestroy=null;if(this.updateSizeDestroy){OpenLayers.Event.stopObserving(window,'resize',this.updateSizeDestroy);}else{this.events.unregister(\"resize\",this,this.updateSize);}\nthis.paddingForPopups=null;if(this.controls!=null){for(var i=this.controls.length-1;i>=0;--i){this.controls[i].destroy();}\nthis.controls=null;}\nif(this.layers!=null){for(var i=this.layers.length-1;i>=0;--i){this.layers[i].destroy(false);}\nthis.layers=null;}\nif(this.viewPortDiv){this.div.removeChild(this.viewPortDiv);}\nthis.viewPortDiv=null;if(this.eventListeners){this.events.un(this.eventListeners);this.eventListeners=null;}\nthis.events.destroy();this.events=null;},setOptions:function(options){OpenLayers.Util.extend(this,options);},getTileSize:function(){return this.tileSize;},getBy:function(array,property,match){var test=(typeof match.test==\"function\");var found=OpenLayers.Array.filter(this[array],function(item){return item[property]==match||(test&&match.test(item[property]));});return found;},getLayersBy:function(property,match){return this.getBy(\"layers\",property,match);},getLayersByName:function(match){return this.getLayersBy(\"name\",match);},getLayersByClass:function(match){return this.getLayersBy(\"CLASS_NAME\",match);},getControlsBy:function(property,match){return this.getBy(\"controls\",property,match);},getControlsByClass:function(match){return this.getControlsBy(\"CLASS_NAME\",match);},getLayer:function(id){var foundLayer=null;for(var i=0,len=this.layers.length;i<len;i++){var layer=this.layers[i];if(layer.id==id){foundLayer=layer;break;}}\nreturn foundLayer;},setLayerZIndex:function(layer,zIdx){layer.setZIndex(this.Z_INDEX_BASE[layer.isBaseLayer?'BaseLayer':'Overlay']\n+zIdx*5);},resetLayersZIndex:function(){for(var i=0,len=this.layers.length;i<len;i++){var layer=this.layers[i];this.setLayerZIndex(layer,i);}},addLayer:function(layer){for(var i=0,len=this.layers.length;i<len;i++){if(this.layers[i]==layer){var msg=OpenLayers.i18n('layerAlreadyAdded',{'layerName':layer.name});OpenLayers.Console.warn(msg);return false;}}\nif(this.allOverlays){layer.isBaseLayer=false;}\nif(this.events.triggerEvent(\"preaddlayer\",{layer:layer})===false){return;}\nlayer.div.className=\"olLayerDiv\";layer.div.style.overflow=\"\";this.setLayerZIndex(layer,this.layers.length);if(layer.isFixed){this.viewPortDiv.appendChild(layer.div);}else{this.layerContainerDiv.appendChild(layer.div);}\nthis.layers.push(layer);layer.setMap(this);if(layer.isBaseLayer||(this.allOverlays&&!this.baseLayer)){if(this.baseLayer==null){this.setBaseLayer(layer);}else{layer.setVisibility(false);}}else{layer.redraw();}\nthis.events.triggerEvent(\"addlayer\",{layer:layer});layer.afterAdd();},addLayers:function(layers){for(var i=0,len=layers.length;i<len;i++){this.addLayer(layers[i]);}},removeLayer:function(layer,setNewBaseLayer){if(setNewBaseLayer==null){setNewBaseLayer=true;}\nif(layer.isFixed){this.viewPortDiv.removeChild(layer.div);}else{this.layerContainerDiv.removeChild(layer.div);}\nOpenLayers.Util.removeItem(this.layers,layer);layer.removeMap(this);layer.map=null;if(this.baseLayer==layer){this.baseLayer=null;if(setNewBaseLayer){for(var i=0,len=this.layers.length;i<len;i++){var iLayer=this.layers[i];if(iLayer.isBaseLayer||this.allOverlays){this.setBaseLayer(iLayer);break;}}}}\nthis.resetLayersZIndex();this.events.triggerEvent(\"removelayer\",{layer:layer});},getNumLayers:function(){return this.layers.length;},getLayerIndex:function(layer){return OpenLayers.Util.indexOf(this.layers,layer);},setLayerIndex:function(layer,idx){var base=this.getLayerIndex(layer);if(idx<0){idx=0;}else if(idx>this.layers.length){idx=this.layers.length;}\nif(base!=idx){this.layers.splice(base,1);this.layers.splice(idx,0,layer);for(var i=0,len=this.layers.length;i<len;i++){this.setLayerZIndex(this.layers[i],i);}\nthis.events.triggerEvent(\"changelayer\",{layer:layer,property:\"order\"});if(this.allOverlays){if(idx===0){this.setBaseLayer(layer);}else if(this.baseLayer!==this.layers[0]){this.setBaseLayer(this.layers[0]);}}}},raiseLayer:function(layer,delta){var idx=this.getLayerIndex(layer)+delta;this.setLayerIndex(layer,idx);},setBaseLayer:function(newBaseLayer){if(newBaseLayer!=this.baseLayer){if(OpenLayers.Util.indexOf(this.layers,newBaseLayer)!=-1){var center=this.getCenter();var newResolution=OpenLayers.Util.getResolutionFromScale(this.getScale(),newBaseLayer.units);if(this.baseLayer!=null&&!this.allOverlays){this.baseLayer.setVisibility(false);}\nthis.baseLayer=newBaseLayer;this.viewRequestID++;if(!this.allOverlays||this.baseLayer.visibility){this.baseLayer.setVisibility(true);}\nif(center!=null){var newZoom=this.getZoomForResolution(newResolution||this.resolution,true);this.setCenter(center,newZoom,false,true);}\nthis.events.triggerEvent(\"changebaselayer\",{layer:this.baseLayer});}}},addControl:function(control,px){this.controls.push(control);this.addControlToMap(control,px);},addControls:function(controls,pixels){var pxs=(arguments.length===1)?[]:pixels;for(var i=0,len=controls.length;i<len;i++){var ctrl=controls[i];var px=(pxs[i])?pxs[i]:null;this.addControl(ctrl,px);}},addControlToMap:function(control,px){control.outsideViewport=(control.div!=null);if(this.displayProjection&&!control.displayProjection){control.displayProjection=this.displayProjection;}\ncontrol.setMap(this);var div=control.draw(px);if(div){if(!control.outsideViewport){div.style.zIndex=this.Z_INDEX_BASE['Control']+\nthis.controls.length;this.viewPortDiv.appendChild(div);}}\nif(control.autoActivate){control.activate();}},getControl:function(id){var returnControl=null;for(var i=0,len=this.controls.length;i<len;i++){var control=this.controls[i];if(control.id==id){returnControl=control;break;}}\nreturn returnControl;},removeControl:function(control){if((control)&&(control==this.getControl(control.id))){if(control.div&&(control.div.parentNode==this.viewPortDiv)){this.viewPortDiv.removeChild(control.div);}\nOpenLayers.Util.removeItem(this.controls,control);}},addPopup:function(popup,exclusive){if(exclusive){for(var i=this.popups.length-1;i>=0;--i){this.removePopup(this.popups[i]);}}\npopup.map=this;this.popups.push(popup);var popupDiv=popup.draw();if(popupDiv){popupDiv.style.zIndex=this.Z_INDEX_BASE['Popup']+\nthis.popups.length;this.layerContainerDiv.appendChild(popupDiv);}},removePopup:function(popup){OpenLayers.Util.removeItem(this.popups,popup);if(popup.div){try{this.layerContainerDiv.removeChild(popup.div);}\ncatch(e){}}\npopup.map=null;},getSize:function(){var size=null;if(this.size!=null){size=this.size.clone();}\nreturn size;},updateSize:function(){var newSize=this.getCurrentSize();if(newSize&&!isNaN(newSize.h)&&!isNaN(newSize.w)){this.events.clearMouseCache();var oldSize=this.getSize();if(oldSize==null){this.size=oldSize=newSize;}\nif(!newSize.equals(oldSize)){this.size=newSize;for(var i=0,len=this.layers.length;i<len;i++){this.layers[i].onMapResize();}\nvar center=this.getCenter();if(this.baseLayer!=null&&center!=null){var zoom=this.getZoom();this.zoom=null;this.setCenter(center,zoom);}}}},getCurrentSize:function(){var size=new OpenLayers.Size(this.div.clientWidth,this.div.clientHeight);if(size.w==0&&size.h==0||isNaN(size.w)&&isNaN(size.h)){size.w=this.div.offsetWidth;size.h=this.div.offsetHeight;}\nif(size.w==0&&size.h==0||isNaN(size.w)&&isNaN(size.h)){size.w=parseInt(this.div.style.width);size.h=parseInt(this.div.style.height);}\nreturn size;},calculateBounds:function(center,resolution){var extent=null;if(center==null){center=this.getCenter();}\nif(resolution==null){resolution=this.getResolution();}\nif((center!=null)&&(resolution!=null)){var size=this.getSize();var w_deg=size.w*resolution;var h_deg=size.h*resolution;extent=new OpenLayers.Bounds(center.lon-w_deg/2,center.lat-h_deg/2,center.lon+w_deg/2,center.lat+h_deg/2);}\nreturn extent;},getCenter:function(){var center=null;if(this.center){center=this.center.clone();}\nreturn center;},getZoom:function(){return this.zoom;},pan:function(dx,dy,options){options=OpenLayers.Util.applyDefaults(options,{animate:true,dragging:false});var centerPx=this.getViewPortPxFromLonLat(this.getCenter());var newCenterPx=centerPx.add(dx,dy);if(!options.dragging||!newCenterPx.equals(centerPx)){var newCenterLonLat=this.getLonLatFromViewPortPx(newCenterPx);if(options.animate){this.panTo(newCenterLonLat);}else{this.setCenter(newCenterLonLat,null,options.dragging);}}},panTo:function(lonlat){if(this.panMethod&&this.getExtent().scale(this.panRatio).containsLonLat(lonlat)){if(!this.panTween){this.panTween=new OpenLayers.Tween(this.panMethod);}\nvar center=this.getCenter();if(lonlat.lon==center.lon&&lonlat.lat==center.lat){return;}\nvar from={lon:center.lon,lat:center.lat};var to={lon:lonlat.lon,lat:lonlat.lat};this.panTween.start(from,to,this.panDuration,{callbacks:{start:OpenLayers.Function.bind(function(lonlat){this.events.triggerEvent(\"movestart\");},this),eachStep:OpenLayers.Function.bind(function(lonlat){lonlat=new OpenLayers.LonLat(lonlat.lon,lonlat.lat);this.moveTo(lonlat,this.zoom,{'dragging':true,'noEvent':true});},this),done:OpenLayers.Function.bind(function(lonlat){lonlat=new OpenLayers.LonLat(lonlat.lon,lonlat.lat);this.moveTo(lonlat,this.zoom,{'noEvent':true});this.events.triggerEvent(\"moveend\");},this)}});}else{this.setCenter(lonlat);}},setCenter:function(lonlat,zoom,dragging,forceZoomChange){this.moveTo(lonlat,zoom,{'dragging':dragging,'forceZoomChange':forceZoomChange,'caller':'setCenter'});},moveTo:function(lonlat,zoom,options){if(!options){options={};}\nif(zoom!=null){zoom=parseFloat(zoom);if(!this.fractionalZoom){zoom=Math.round(zoom);}}\nvar dragging=options.dragging;var forceZoomChange=options.forceZoomChange;var noEvent=options.noEvent;if(this.panTween&&options.caller==\"setCenter\"){this.panTween.stop();}\nif(!this.center&&!this.isValidLonLat(lonlat)){lonlat=this.maxExtent.getCenterLonLat();}\nif(this.restrictedExtent!=null){if(lonlat==null){lonlat=this.getCenter();}\nif(zoom==null){zoom=this.getZoom();}\nvar resolution=this.getResolutionForZoom(zoom);var extent=this.calculateBounds(lonlat,resolution);if(!this.restrictedExtent.containsBounds(extent)){var maxCenter=this.restrictedExtent.getCenterLonLat();if(extent.getWidth()>this.restrictedExtent.getWidth()){lonlat=new OpenLayers.LonLat(maxCenter.lon,lonlat.lat);}else if(extent.left<this.restrictedExtent.left){lonlat=lonlat.add(this.restrictedExtent.left-\nextent.left,0);}else if(extent.right>this.restrictedExtent.right){lonlat=lonlat.add(this.restrictedExtent.right-\nextent.right,0);}\nif(extent.getHeight()>this.restrictedExtent.getHeight()){lonlat=new OpenLayers.LonLat(lonlat.lon,maxCenter.lat);}else if(extent.bottom<this.restrictedExtent.bottom){lonlat=lonlat.add(0,this.restrictedExtent.bottom-\nextent.bottom);}\nelse if(extent.top>this.restrictedExtent.top){lonlat=lonlat.add(0,this.restrictedExtent.top-\nextent.top);}}}\nvar zoomChanged=forceZoomChange||((this.isValidZoomLevel(zoom))&&(zoom!=this.getZoom()));var centerChanged=(this.isValidLonLat(lonlat))&&(!lonlat.equals(this.center));if(zoomChanged||centerChanged||!dragging){if(!this.dragging&&!noEvent){this.events.triggerEvent(\"movestart\");}\nif(centerChanged){if((!zoomChanged)&&(this.center)){this.centerLayerContainer(lonlat);}\nthis.center=lonlat.clone();}\nif((zoomChanged)||(this.layerContainerOrigin==null)){this.layerContainerOrigin=this.center.clone();this.layerContainerDiv.style.left=\"0px\";this.layerContainerDiv.style.top=\"0px\";}\nif(zoomChanged){this.zoom=zoom;this.resolution=this.getResolutionForZoom(zoom);this.viewRequestID++;}\nvar bounds=this.getExtent();if(this.baseLayer.visibility){this.baseLayer.moveTo(bounds,zoomChanged,dragging);if(dragging){this.baseLayer.events.triggerEvent(\"move\");}else{this.baseLayer.events.triggerEvent(\"moveend\",{\"zoomChanged\":zoomChanged});}}\nbounds=this.baseLayer.getExtent();for(var i=0,len=this.layers.length;i<len;i++){var layer=this.layers[i];if(layer!==this.baseLayer&&!layer.isBaseLayer){var inRange=layer.calculateInRange();if(layer.inRange!=inRange){layer.inRange=inRange;if(!inRange){layer.display(false);}\nthis.events.triggerEvent(\"changelayer\",{layer:layer,property:\"visibility\"});}\nif(inRange&&layer.visibility){layer.moveTo(bounds,zoomChanged,dragging);if(dragging){layer.events.triggerEvent(\"move\");}else{layer.events.triggerEvent(\"moveend\",{\"zoomChanged\":zoomChanged});}}}}\nif(zoomChanged){for(var i=0,len=this.popups.length;i<len;i++){this.popups[i].updatePosition();}}\nthis.events.triggerEvent(\"move\");if(zoomChanged){this.events.triggerEvent(\"zoomend\");}}\nif(!dragging&&!noEvent){this.events.triggerEvent(\"moveend\");}\nthis.dragging=!!dragging;},centerLayerContainer:function(lonlat){var originPx=this.getViewPortPxFromLonLat(this.layerContainerOrigin);var newPx=this.getViewPortPxFromLonLat(lonlat);if((originPx!=null)&&(newPx!=null)){this.layerContainerDiv.style.left=Math.round(originPx.x-newPx.x)+\"px\";this.layerContainerDiv.style.top=Math.round(originPx.y-newPx.y)+\"px\";}},isValidZoomLevel:function(zoomLevel){return((zoomLevel!=null)&&(zoomLevel>=0)&&(zoomLevel<this.getNumZoomLevels()));},isValidLonLat:function(lonlat){var valid=false;if(lonlat!=null){var maxExtent=this.getMaxExtent();valid=maxExtent.containsLonLat(lonlat);}\nreturn valid;},getProjection:function(){var projection=this.getProjectionObject();return projection?projection.getCode():null;},getProjectionObject:function(){var projection=null;if(this.baseLayer!=null){projection=this.baseLayer.projection;}\nreturn projection;},getMaxResolution:function(){var maxResolution=null;if(this.baseLayer!=null){maxResolution=this.baseLayer.maxResolution;}\nreturn maxResolution;},getMaxExtent:function(options){var maxExtent=null;if(options&&options.restricted&&this.restrictedExtent){maxExtent=this.restrictedExtent;}else if(this.baseLayer!=null){maxExtent=this.baseLayer.maxExtent;}\nreturn maxExtent;},getNumZoomLevels:function(){var numZoomLevels=null;if(this.baseLayer!=null){numZoomLevels=this.baseLayer.numZoomLevels;}\nreturn numZoomLevels;},getExtent:function(){var extent=null;if(this.baseLayer!=null){extent=this.baseLayer.getExtent();}\nreturn extent;},getResolution:function(){var resolution=null;if(this.baseLayer!=null){resolution=this.baseLayer.getResolution();}else if(this.allOverlays===true&&this.layers.length>0){resolution=this.layers[0].getResolution();}\nreturn resolution;},getUnits:function(){var units=null;if(this.baseLayer!=null){units=this.baseLayer.units;}\nreturn units;},getScale:function(){var scale=null;if(this.baseLayer!=null){var res=this.getResolution();var units=this.baseLayer.units;scale=OpenLayers.Util.getScaleFromResolution(res,units);}\nreturn scale;},getZoomForExtent:function(bounds,closest){var zoom=null;if(this.baseLayer!=null){zoom=this.baseLayer.getZoomForExtent(bounds,closest);}\nreturn zoom;},getResolutionForZoom:function(zoom){var resolution=null;if(this.baseLayer){resolution=this.baseLayer.getResolutionForZoom(zoom);}\nreturn resolution;},getZoomForResolution:function(resolution,closest){var zoom=null;if(this.baseLayer!=null){zoom=this.baseLayer.getZoomForResolution(resolution,closest);}\nreturn zoom;},zoomTo:function(zoom){if(this.isValidZoomLevel(zoom)){this.setCenter(null,zoom);}},zoomIn:function(){this.zoomTo(this.getZoom()+1);},zoomOut:function(){this.zoomTo(this.getZoom()-1);},zoomToExtent:function(bounds,closest){var center=bounds.getCenterLonLat();if(this.baseLayer.wrapDateLine){var maxExtent=this.getMaxExtent();bounds=bounds.clone();while(bounds.right<bounds.left){bounds.right+=maxExtent.getWidth();}\ncenter=bounds.getCenterLonLat().wrapDateLine(maxExtent);}\nthis.setCenter(center,this.getZoomForExtent(bounds,closest));},zoomToMaxExtent:function(options){var restricted=(options)?options.restricted:true;var maxExtent=this.getMaxExtent({'restricted':restricted});this.zoomToExtent(maxExtent);},zoomToScale:function(scale,closest){var res=OpenLayers.Util.getResolutionFromScale(scale,this.baseLayer.units);var size=this.getSize();var w_deg=size.w*res;var h_deg=size.h*res;var center=this.getCenter();var extent=new OpenLayers.Bounds(center.lon-w_deg/2,center.lat-h_deg/2,center.lon+w_deg/2,center.lat+h_deg/2);this.zoomToExtent(extent,closest);},getLonLatFromViewPortPx:function(viewPortPx){var lonlat=null;if(this.baseLayer!=null){lonlat=this.baseLayer.getLonLatFromViewPortPx(viewPortPx);}\nreturn lonlat;},getViewPortPxFromLonLat:function(lonlat){var px=null;if(this.baseLayer!=null){px=this.baseLayer.getViewPortPxFromLonLat(lonlat);}\nreturn px;},getLonLatFromPixel:function(px){return this.getLonLatFromViewPortPx(px);},getPixelFromLonLat:function(lonlat){var px=this.getViewPortPxFromLonLat(lonlat);px.x=Math.round(px.x);px.y=Math.round(px.y);return px;},getGeodesicPixelSize:function(px){var lonlat=px?this.getLonLatFromPixel(px):(this.getCenter()||new OpenLayers.LonLat(0,0));var res=this.getResolution();var left=lonlat.add(-res/2,0);var right=lonlat.add(res/2,0);var bottom=lonlat.add(0,-res/2);var top=lonlat.add(0,res/2);var dest=new OpenLayers.Projection(\"EPSG:4326\");var source=this.getProjectionObject()||dest;if(!source.equals(dest)){left.transform(source,dest);right.transform(source,dest);bottom.transform(source,dest);top.transform(source,dest);}\nreturn new OpenLayers.Size(OpenLayers.Util.distVincenty(left,right),OpenLayers.Util.distVincenty(bottom,top));},getViewPortPxFromLayerPx:function(layerPx){var viewPortPx=null;if(layerPx!=null){var dX=parseInt(this.layerContainerDiv.style.left);var dY=parseInt(this.layerContainerDiv.style.top);viewPortPx=layerPx.add(dX,dY);}\nreturn viewPortPx;},getLayerPxFromViewPortPx:function(viewPortPx){var layerPx=null;if(viewPortPx!=null){var dX=-parseInt(this.layerContainerDiv.style.left);var dY=-parseInt(this.layerContainerDiv.style.top);layerPx=viewPortPx.add(dX,dY);if(isNaN(layerPx.x)||isNaN(layerPx.y)){layerPx=null;}}\nreturn layerPx;},getLonLatFromLayerPx:function(px){px=this.getViewPortPxFromLayerPx(px);return this.getLonLatFromViewPortPx(px);},getLayerPxFromLonLat:function(lonlat){var px=this.getPixelFromLonLat(lonlat);return this.getLayerPxFromViewPortPx(px);},CLASS_NAME:\"OpenLayers.Map\"});OpenLayers.Map.TILE_WIDTH=256;OpenLayers.Map.TILE_HEIGHT=256;OpenLayers.Marker=OpenLayers.Class({icon:null,lonlat:null,events:null,map:null,initialize:function(lonlat,icon){this.lonlat=lonlat;var newIcon=(icon)?icon:OpenLayers.Marker.defaultIcon();if(this.icon==null){this.icon=newIcon;}else{this.icon.url=newIcon.url;this.icon.size=newIcon.size;this.icon.offset=newIcon.offset;this.icon.calculateOffset=newIcon.calculateOffset;}\nthis.events=new OpenLayers.Events(this,this.icon.imageDiv,null);},destroy:function(){this.erase();this.map=null;this.events.destroy();this.events=null;if(this.icon!=null){this.icon.destroy();this.icon=null;}},draw:function(px){return this.icon.draw(px);},erase:function(){if(this.icon!=null){this.icon.erase();}},moveTo:function(px){if((px!=null)&&(this.icon!=null)){this.icon.moveTo(px);}\nthis.lonlat=this.map.getLonLatFromLayerPx(px);},isDrawn:function(){var isDrawn=(this.icon&&this.icon.isDrawn());return isDrawn;},onScreen:function(){var onScreen=false;if(this.map){var screenBounds=this.map.getExtent();onScreen=screenBounds.containsLonLat(this.lonlat);}\nreturn onScreen;},inflate:function(inflate){if(this.icon){var newSize=new OpenLayers.Size(this.icon.size.w*inflate,this.icon.size.h*inflate);this.icon.setSize(newSize);}},setOpacity:function(opacity){this.icon.setOpacity(opacity);},setUrl:function(url){this.icon.setUrl(url);},display:function(display){this.icon.display(display);},CLASS_NAME:\"OpenLayers.Marker\"});OpenLayers.Marker.defaultIcon=function(){var url=OpenLayers.Util.getImagesLocation()+\"marker.png\";var size=new OpenLayers.Size(21,25);var calculateOffset=function(size){return new OpenLayers.Pixel(-(size.w/2),-size.h);};return new OpenLayers.Icon(url,size,null,calculateOffset);};OpenLayers.Popup.FramedCloud=OpenLayers.Class(OpenLayers.Popup.Framed,{contentDisplayClass:\"olFramedCloudPopupContent\",autoSize:true,panMapIfOutOfView:true,imageSize:new OpenLayers.Size(1276,736),isAlphaImage:false,fixedRelativePosition:false,positionBlocks:{\"tl\":{'offset':new OpenLayers.Pixel(44,0),'padding':new OpenLayers.Bounds(8,40,8,9),'blocks':[{size:new OpenLayers.Size('auto','auto'),anchor:new OpenLayers.Bounds(0,51,22,0),position:new OpenLayers.Pixel(0,0)},{size:new OpenLayers.Size(22,'auto'),anchor:new OpenLayers.Bounds(null,50,0,0),position:new OpenLayers.Pixel(-1238,0)},{size:new OpenLayers.Size('auto',19),anchor:new OpenLayers.Bounds(0,32,22,null),position:new OpenLayers.Pixel(0,-631)},{size:new OpenLayers.Size(22,18),anchor:new OpenLayers.Bounds(null,32,0,null),position:new OpenLayers.Pixel(-1238,-632)},{size:new OpenLayers.Size(81,35),anchor:new OpenLayers.Bounds(null,0,0,null),position:new OpenLayers.Pixel(0,-688)}]},\"tr\":{'offset':new OpenLayers.Pixel(-45,0),'padding':new OpenLayers.Bounds(8,40,8,9),'blocks':[{size:new OpenLayers.Size('auto','auto'),anchor:new OpenLayers.Bounds(0,51,22,0),position:new OpenLayers.Pixel(0,0)},{size:new OpenLayers.Size(22,'auto'),anchor:new OpenLayers.Bounds(null,50,0,0),position:new OpenLayers.Pixel(-1238,0)},{size:new OpenLayers.Size('auto',19),anchor:new OpenLayers.Bounds(0,32,22,null),position:new OpenLayers.Pixel(0,-631)},{size:new OpenLayers.Size(22,19),anchor:new OpenLayers.Bounds(null,32,0,null),position:new OpenLayers.Pixel(-1238,-631)},{size:new OpenLayers.Size(81,35),anchor:new OpenLayers.Bounds(0,0,null,null),position:new OpenLayers.Pixel(-215,-687)}]},\"bl\":{'offset':new OpenLayers.Pixel(45,0),'padding':new OpenLayers.Bounds(8,9,8,40),'blocks':[{size:new OpenLayers.Size('auto','auto'),anchor:new OpenLayers.Bounds(0,21,22,32),position:new OpenLayers.Pixel(0,0)},{size:new OpenLayers.Size(22,'auto'),anchor:new OpenLayers.Bounds(null,21,0,32),position:new OpenLayers.Pixel(-1238,0)},{size:new OpenLayers.Size('auto',21),anchor:new OpenLayers.Bounds(0,0,22,null),position:new OpenLayers.Pixel(0,-629)},{size:new OpenLayers.Size(22,21),anchor:new OpenLayers.Bounds(null,0,0,null),position:new OpenLayers.Pixel(-1238,-629)},{size:new OpenLayers.Size(81,33),anchor:new OpenLayers.Bounds(null,null,0,0),position:new OpenLayers.Pixel(-101,-674)}]},\"br\":{'offset':new OpenLayers.Pixel(-44,0),'padding':new OpenLayers.Bounds(8,9,8,40),'blocks':[{size:new OpenLayers.Size('auto','auto'),anchor:new OpenLayers.Bounds(0,21,22,32),position:new OpenLayers.Pixel(0,0)},{size:new OpenLayers.Size(22,'auto'),anchor:new OpenLayers.Bounds(null,21,0,32),position:new OpenLayers.Pixel(-1238,0)},{size:new OpenLayers.Size('auto',21),anchor:new OpenLayers.Bounds(0,0,22,null),position:new OpenLayers.Pixel(0,-629)},{size:new OpenLayers.Size(22,21),anchor:new OpenLayers.Bounds(null,0,0,null),position:new OpenLayers.Pixel(-1238,-629)},{size:new OpenLayers.Size(81,33),anchor:new OpenLayers.Bounds(0,null,null,0),position:new OpenLayers.Pixel(-311,-674)}]}},minSize:new OpenLayers.Size(105,10),maxSize:new OpenLayers.Size(1200,660),initialize:function(id,lonlat,contentSize,contentHTML,anchor,closeBox,closeBoxCallback){this.imageSrc=OpenLayers.Util.getImagesLocation()+'cloud-popup-relative.png';OpenLayers.Popup.Framed.prototype.initialize.apply(this,arguments);this.contentDiv.className=this.contentDisplayClass;},destroy:function(){OpenLayers.Popup.Framed.prototype.destroy.apply(this,arguments);},CLASS_NAME:\"OpenLayers.Popup.FramedCloud\"});OpenLayers.Request={DEFAULT_CONFIG:{method:\"GET\",url:window.location.href,async:true,user:undefined,password:undefined,params:null,proxy:OpenLayers.ProxyHost,headers:{},data:null,callback:function(){},success:null,failure:null,scope:null},events:new OpenLayers.Events(this,null,[\"complete\",\"success\",\"failure\"]),issue:function(config){var defaultConfig=OpenLayers.Util.extend(this.DEFAULT_CONFIG,{proxy:OpenLayers.ProxyHost});config=OpenLayers.Util.applyDefaults(config,defaultConfig);var request=new OpenLayers.Request.XMLHttpRequest();var url=config.url;if(config.params){var paramString=OpenLayers.Util.getParameterString(config.params);if(paramString.length>0){var separator=(url.indexOf('?')>-1)?'&':'?';url+=separator+paramString;}}\nif(config.proxy&&(url.indexOf(\"http\")==0)){if(typeof config.proxy==\"function\"){url=config.proxy(url);}else{url=config.proxy+encodeURIComponent(url);}}\nrequest.open(config.method,url,config.async,config.user,config.password);for(var header in config.headers){request.setRequestHeader(header,config.headers[header]);}\nvar events=this.events;var self=this;request.onreadystatechange=function(){if(request.readyState==OpenLayers.Request.XMLHttpRequest.DONE){var proceed=events.triggerEvent(\"complete\",{request:request,config:config,requestUrl:url});if(proceed!==false){self.runCallbacks({request:request,config:config,requestUrl:url});}}};if(config.async===false){request.send(config.data);}else{window.setTimeout(function(){if(request._aborted!==true){request.send(config.data);}},0);}\nreturn request;},runCallbacks:function(options){var request=options.request;var config=options.config;var complete=(config.scope)?OpenLayers.Function.bind(config.callback,config.scope):config.callback;var success;if(config.success){success=(config.scope)?OpenLayers.Function.bind(config.success,config.scope):config.success;}\nvar failure;if(config.failure){failure=(config.scope)?OpenLayers.Function.bind(config.failure,config.scope):config.failure;}\ncomplete(request);if(!request.status||(request.status>=200&&request.status<300)){this.events.triggerEvent(\"success\",options);if(success){success(request);}}\nif(request.status&&(request.status<200||request.status>=300)){this.events.triggerEvent(\"failure\",options);if(failure){failure(request);}}},GET:function(config){config=OpenLayers.Util.extend(config,{method:\"GET\"});return OpenLayers.Request.issue(config);},POST:function(config){config=OpenLayers.Util.extend(config,{method:\"POST\"});config.headers=config.headers?config.headers:{};if(!(\"CONTENT-TYPE\"in OpenLayers.Util.upperCaseObject(config.headers))){config.headers[\"Content-Type\"]=\"application/xml\";}\nreturn OpenLayers.Request.issue(config);},PUT:function(config){config=OpenLayers.Util.extend(config,{method:\"PUT\"});config.headers=config.headers?config.headers:{};if(!(\"CONTENT-TYPE\"in OpenLayers.Util.upperCaseObject(config.headers))){config.headers[\"Content-Type\"]=\"application/xml\";}\nreturn OpenLayers.Request.issue(config);},DELETE:function(config){config=OpenLayers.Util.extend(config,{method:\"DELETE\"});return OpenLayers.Request.issue(config);},HEAD:function(config){config=OpenLayers.Util.extend(config,{method:\"HEAD\"});return OpenLayers.Request.issue(config);},OPTIONS:function(config){config=OpenLayers.Util.extend(config,{method:\"OPTIONS\"});return OpenLayers.Request.issue(config);}};OpenLayers.Tile.Image=OpenLayers.Class(OpenLayers.Tile,{url:null,imgDiv:null,frame:null,layerAlphaHack:null,isBackBuffer:false,lastRatio:1,isFirstDraw:true,backBufferTile:null,initialize:function(layer,position,bounds,url,size){OpenLayers.Tile.prototype.initialize.apply(this,arguments);this.url=url;this.frame=document.createElement('div');this.frame.style.overflow='hidden';this.frame.style.position='absolute';this.layerAlphaHack=this.layer.alpha&&OpenLayers.Util.alphaHack();},destroy:function(){if(this.imgDiv!=null){if(this.layerAlphaHack){OpenLayers.Event.stopObservingElement(this.imgDiv.childNodes[0]);}\nOpenLayers.Event.stopObservingElement(this.imgDiv);if(this.imgDiv.parentNode==this.frame){this.frame.removeChild(this.imgDiv);this.imgDiv.map=null;}\nthis.imgDiv.urls=null;this.imgDiv.src=OpenLayers.Util.getImagesLocation()+\"blank.gif\";}\nthis.imgDiv=null;if((this.frame!=null)&&(this.frame.parentNode==this.layer.div)){this.layer.div.removeChild(this.frame);}\nthis.frame=null;if(this.backBufferTile){this.backBufferTile.destroy();this.backBufferTile=null;}\nthis.layer.events.unregister(\"loadend\",this,this.resetBackBuffer);OpenLayers.Tile.prototype.destroy.apply(this,arguments);},clone:function(obj){if(obj==null){obj=new OpenLayers.Tile.Image(this.layer,this.position,this.bounds,this.url,this.size);}\nobj=OpenLayers.Tile.prototype.clone.apply(this,[obj]);obj.imgDiv=null;return obj;},draw:function(){if(this.layer!=this.layer.map.baseLayer&&this.layer.reproject){this.bounds=this.getBoundsFromBaseLayer(this.position);}\nvar drawTile=OpenLayers.Tile.prototype.draw.apply(this,arguments);if((OpenLayers.Util.indexOf(this.layer.SUPPORTED_TRANSITIONS,this.layer.transitionEffect)!=-1)||this.layer.singleTile){if(drawTile){if(!this.backBufferTile){this.backBufferTile=this.clone();this.backBufferTile.hide();this.backBufferTile.isBackBuffer=true;this.events.register('loadend',this,this.resetBackBuffer);this.layer.events.register(\"loadend\",this,this.resetBackBuffer);}\nthis.startTransition();}else{if(this.backBufferTile){this.backBufferTile.clear();}}}else{if(drawTile&&this.isFirstDraw){this.events.register('loadend',this,this.showTile);this.isFirstDraw=false;}}\nif(!drawTile){return false;}\nif(this.isLoading){this.events.triggerEvent(\"reload\");}else{this.isLoading=true;this.events.triggerEvent(\"loadstart\");}\nreturn this.renderTile();},resetBackBuffer:function(){this.showTile();if(this.backBufferTile&&(this.isFirstDraw||!this.layer.numLoadingTiles)){this.isFirstDraw=false;var maxExtent=this.layer.maxExtent;var withinMaxExtent=(maxExtent&&this.bounds.intersectsBounds(maxExtent,false));if(withinMaxExtent){this.backBufferTile.position=this.position;this.backBufferTile.bounds=this.bounds;this.backBufferTile.size=this.size;this.backBufferTile.imageSize=this.layer.getImageSize(this.bounds)||this.size;this.backBufferTile.imageOffset=this.layer.imageOffset;this.backBufferTile.resolution=this.layer.getResolution();this.backBufferTile.renderTile();}\nthis.backBufferTile.hide();}},renderTile:function(){if(this.imgDiv==null){this.initImgDiv();}\nthis.imgDiv.viewRequestID=this.layer.map.viewRequestID;if(this.layer.async){this.layer.getURLasync(this.bounds,this,\"url\",this.positionImage);}else{if(this.layer.url instanceof Array){this.imgDiv.urls=this.layer.url.slice();}\nthis.url=this.layer.getURL(this.bounds);this.positionImage();}\nreturn true;},positionImage:function(){if(this.layer===null){return;}\nOpenLayers.Util.modifyDOMElement(this.frame,null,this.position,this.size);var imageSize=this.layer.getImageSize(this.bounds);if(this.layerAlphaHack){OpenLayers.Util.modifyAlphaImageDiv(this.imgDiv,null,null,imageSize,this.url);}else{OpenLayers.Util.modifyDOMElement(this.imgDiv,null,null,imageSize);this.imgDiv.src=this.url;}},clear:function(){if(this.imgDiv){this.hide();if(OpenLayers.Tile.Image.useBlankTile){this.imgDiv.src=OpenLayers.Util.getImagesLocation()+\"blank.gif\";}}},initImgDiv:function(){var offset=this.layer.imageOffset;var size=this.layer.getImageSize(this.bounds);if(this.layerAlphaHack){this.imgDiv=OpenLayers.Util.createAlphaImageDiv(null,offset,size,null,\"relative\",null,null,null,true);}else{this.imgDiv=OpenLayers.Util.createImage(null,offset,size,null,\"relative\",null,null,true);}\nthis.imgDiv.className='olTileImage';this.frame.style.zIndex=this.isBackBuffer?0:1;this.frame.appendChild(this.imgDiv);this.layer.div.appendChild(this.frame);if(this.layer.opacity!=null){OpenLayers.Util.modifyDOMElement(this.imgDiv,null,null,null,null,null,null,this.layer.opacity);}\nthis.imgDiv.map=this.layer.map;var onload=function(){if(this.isLoading){this.isLoading=false;this.events.triggerEvent(\"loadend\");}};if(this.layerAlphaHack){OpenLayers.Event.observe(this.imgDiv.childNodes[0],'load',OpenLayers.Function.bind(onload,this));}else{OpenLayers.Event.observe(this.imgDiv,'load',OpenLayers.Function.bind(onload,this));}\nvar onerror=function(){if(this.imgDiv._attempts>OpenLayers.IMAGE_RELOAD_ATTEMPTS){onload.call(this);}};OpenLayers.Event.observe(this.imgDiv,\"error\",OpenLayers.Function.bind(onerror,this));},checkImgURL:function(){if(this.layer){var loaded=this.layerAlphaHack?this.imgDiv.firstChild.src:this.imgDiv.src;if(!OpenLayers.Util.isEquivalentUrl(loaded,this.url)){this.hide();}}},startTransition:function(){if(!this.backBufferTile||!this.backBufferTile.imgDiv){return;}\nvar ratio=1;if(this.backBufferTile.resolution){ratio=this.backBufferTile.resolution/this.layer.getResolution();}\nif(ratio!=this.lastRatio){if(this.layer.transitionEffect=='resize'){var upperLeft=new OpenLayers.LonLat(this.backBufferTile.bounds.left,this.backBufferTile.bounds.top);var size=new OpenLayers.Size(this.backBufferTile.size.w*ratio,this.backBufferTile.size.h*ratio);var px=this.layer.map.getLayerPxFromLonLat(upperLeft);OpenLayers.Util.modifyDOMElement(this.backBufferTile.frame,null,px,size);var imageSize=this.backBufferTile.imageSize;imageSize=new OpenLayers.Size(imageSize.w*ratio,imageSize.h*ratio);var imageOffset=this.backBufferTile.imageOffset;if(imageOffset){imageOffset=new OpenLayers.Pixel(imageOffset.x*ratio,imageOffset.y*ratio);}\nOpenLayers.Util.modifyDOMElement(this.backBufferTile.imgDiv,null,imageOffset,imageSize);this.backBufferTile.show();}}else{if(this.layer.singleTile){this.backBufferTile.show();}else{this.backBufferTile.hide();}}\nthis.lastRatio=ratio;},show:function(){this.frame.style.display='';if(OpenLayers.Util.indexOf(this.layer.SUPPORTED_TRANSITIONS,this.layer.transitionEffect)!=-1){if(navigator.userAgent.toLowerCase().indexOf(\"gecko\")!=-1){this.frame.scrollLeft=this.frame.scrollLeft;}}},hide:function(){this.frame.style.display='none';},CLASS_NAME:\"OpenLayers.Tile.Image\"});OpenLayers.Tile.Image.useBlankTile=(OpenLayers.Util.getBrowserName()==\"safari\"||OpenLayers.Util.getBrowserName()==\"opera\");OpenLayers.Control.OverviewMap=OpenLayers.Class(OpenLayers.Control,{element:null,ovmap:null,size:new OpenLayers.Size(180,90),layers:null,minRectSize:15,minRectDisplayClass:\"RectReplacement\",minRatio:8,maxRatio:32,mapOptions:null,autoPan:false,handlers:null,resolutionFactor:1,maximized:false,initialize:function(options){this.layers=[];this.handlers={};OpenLayers.Control.prototype.initialize.apply(this,[options]);},destroy:function(){if(!this.mapDiv){return;}\nif(this.handlers.click){this.handlers.click.destroy();}\nif(this.handlers.drag){this.handlers.drag.destroy();}\nthis.mapDiv.removeChild(this.extentRectangle);this.extentRectangle=null;if(this.rectEvents){this.rectEvents.destroy();this.rectEvents=null;}\nif(this.ovmap){this.ovmap.destroy();this.ovmap=null;}\nthis.element.removeChild(this.mapDiv);this.mapDiv=null;this.div.removeChild(this.element);this.element=null;if(this.maximizeDiv){OpenLayers.Event.stopObservingElement(this.maximizeDiv);this.div.removeChild(this.maximizeDiv);this.maximizeDiv=null;}\nif(this.minimizeDiv){OpenLayers.Event.stopObservingElement(this.minimizeDiv);this.div.removeChild(this.minimizeDiv);this.minimizeDiv=null;}\nthis.map.events.un({\"moveend\":this.update,\"changebaselayer\":this.baseLayerDraw,scope:this});OpenLayers.Control.prototype.destroy.apply(this,arguments);},draw:function(){OpenLayers.Control.prototype.draw.apply(this,arguments);if(!(this.layers.length>0)){if(this.map.baseLayer){var layer=this.map.baseLayer.clone();this.layers=[layer];}else{this.map.events.register(\"changebaselayer\",this,this.baseLayerDraw);return this.div;}}\nthis.element=document.createElement('div');this.element.className=this.displayClass+'Element';this.element.style.display='none';this.mapDiv=document.createElement('div');this.mapDiv.style.width=this.size.w+'px';this.mapDiv.style.height=this.size.h+'px';this.mapDiv.style.position='relative';this.mapDiv.style.overflow='hidden';this.mapDiv.id=OpenLayers.Util.createUniqueID('overviewMap');this.extentRectangle=document.createElement('div');this.extentRectangle.style.position='absolute';this.extentRectangle.style.zIndex=1000;this.extentRectangle.className=this.displayClass+'ExtentRectangle';this.mapDiv.appendChild(this.extentRectangle);this.element.appendChild(this.mapDiv);this.div.appendChild(this.element);if(!this.outsideViewport){this.div.className+=\" \"+this.displayClass+'Container';var imgLocation=OpenLayers.Util.getImagesLocation();var img=imgLocation+'layer-switcher-maximize.png';this.maximizeDiv=OpenLayers.Util.createAlphaImageDiv(this.displayClass+'MaximizeButton',null,new OpenLayers.Size(18,18),img,'absolute');this.maximizeDiv.style.display='none';this.maximizeDiv.className=this.displayClass+'MaximizeButton';OpenLayers.Event.observe(this.maximizeDiv,'click',OpenLayers.Function.bindAsEventListener(this.maximizeControl,this));this.div.appendChild(this.maximizeDiv);var img=imgLocation+'layer-switcher-minimize.png';this.minimizeDiv=OpenLayers.Util.createAlphaImageDiv('OpenLayers_Control_minimizeDiv',null,new OpenLayers.Size(18,18),img,'absolute');this.minimizeDiv.style.display='none';this.minimizeDiv.className=this.displayClass+'MinimizeButton';OpenLayers.Event.observe(this.minimizeDiv,'click',OpenLayers.Function.bindAsEventListener(this.minimizeControl,this));this.div.appendChild(this.minimizeDiv);var eventsToStop=['dblclick','mousedown'];for(var i=0,len=eventsToStop.length;i<len;i++){OpenLayers.Event.observe(this.maximizeDiv,eventsToStop[i],OpenLayers.Event.stop);OpenLayers.Event.observe(this.minimizeDiv,eventsToStop[i],OpenLayers.Event.stop);}\nthis.minimizeControl();}else{this.element.style.display='';}\nif(this.map.getExtent()){this.update();}\nthis.map.events.register('moveend',this,this.update);if(this.maximized){this.maximizeControl();}\nreturn this.div;},baseLayerDraw:function(){this.draw();this.map.events.unregister(\"changebaselayer\",this,this.baseLayerDraw);},rectDrag:function(px){var deltaX=this.handlers.drag.last.x-px.x;var deltaY=this.handlers.drag.last.y-px.y;if(deltaX!=0||deltaY!=0){var rectTop=this.rectPxBounds.top;var rectLeft=this.rectPxBounds.left;var rectHeight=Math.abs(this.rectPxBounds.getHeight());var rectWidth=this.rectPxBounds.getWidth();var newTop=Math.max(0,(rectTop-deltaY));newTop=Math.min(newTop,this.ovmap.size.h-this.hComp-rectHeight);var newLeft=Math.max(0,(rectLeft-deltaX));newLeft=Math.min(newLeft,this.ovmap.size.w-this.wComp-rectWidth);this.setRectPxBounds(new OpenLayers.Bounds(newLeft,newTop+rectHeight,newLeft+rectWidth,newTop));}},mapDivClick:function(evt){var pxCenter=this.rectPxBounds.getCenterPixel();var deltaX=evt.xy.x-pxCenter.x;var deltaY=evt.xy.y-pxCenter.y;var top=this.rectPxBounds.top;var left=this.rectPxBounds.left;var height=Math.abs(this.rectPxBounds.getHeight());var width=this.rectPxBounds.getWidth();var newTop=Math.max(0,(top+deltaY));newTop=Math.min(newTop,this.ovmap.size.h-height);var newLeft=Math.max(0,(left+deltaX));newLeft=Math.min(newLeft,this.ovmap.size.w-width);this.setRectPxBounds(new OpenLayers.Bounds(newLeft,newTop+height,newLeft+width,newTop));this.updateMapToRect();},maximizeControl:function(e){this.element.style.display='';this.showToggle(false);if(e!=null){OpenLayers.Event.stop(e);}},minimizeControl:function(e){this.element.style.display='none';this.showToggle(true);if(e!=null){OpenLayers.Event.stop(e);}},showToggle:function(minimize){this.maximizeDiv.style.display=minimize?'':'none';this.minimizeDiv.style.display=minimize?'none':'';},update:function(){if(this.ovmap==null){this.createMap();}\nif(this.autoPan||!this.isSuitableOverview()){this.updateOverview();}\nthis.updateRectToMap();},isSuitableOverview:function(){var mapExtent=this.map.getExtent();var maxExtent=this.map.maxExtent;var testExtent=new OpenLayers.Bounds(Math.max(mapExtent.left,maxExtent.left),Math.max(mapExtent.bottom,maxExtent.bottom),Math.min(mapExtent.right,maxExtent.right),Math.min(mapExtent.top,maxExtent.top));if(this.ovmap.getProjection()!=this.map.getProjection()){testExtent=testExtent.transform(this.map.getProjectionObject(),this.ovmap.getProjectionObject());}\nvar resRatio=this.ovmap.getResolution()/this.map.getResolution();return((resRatio>this.minRatio)&&(resRatio<=this.maxRatio)&&(this.ovmap.getExtent().containsBounds(testExtent)));},updateOverview:function(){var mapRes=this.map.getResolution();var targetRes=this.ovmap.getResolution();var resRatio=targetRes/mapRes;if(resRatio>this.maxRatio){targetRes=this.minRatio*mapRes;}else if(resRatio<=this.minRatio){targetRes=this.maxRatio*mapRes;}\nvar center;if(this.ovmap.getProjection()!=this.map.getProjection()){center=this.map.center.clone();center.transform(this.map.getProjectionObject(),this.ovmap.getProjectionObject());}else{center=this.map.center;}\nthis.ovmap.setCenter(center,this.ovmap.getZoomForResolution(targetRes*this.resolutionFactor));this.updateRectToMap();},createMap:function(){var options=OpenLayers.Util.extend({controls:[],maxResolution:'auto',fallThrough:false},this.mapOptions);this.ovmap=new OpenLayers.Map(this.mapDiv,options);OpenLayers.Event.stopObserving(window,'unload',this.ovmap.unloadDestroy);this.ovmap.addLayers(this.layers);this.ovmap.zoomToMaxExtent();this.wComp=parseInt(OpenLayers.Element.getStyle(this.extentRectangle,'border-left-width'))+\nparseInt(OpenLayers.Element.getStyle(this.extentRectangle,'border-right-width'));this.wComp=(this.wComp)?this.wComp:2;this.hComp=parseInt(OpenLayers.Element.getStyle(this.extentRectangle,'border-top-width'))+\nparseInt(OpenLayers.Element.getStyle(this.extentRectangle,'border-bottom-width'));this.hComp=(this.hComp)?this.hComp:2;this.handlers.drag=new OpenLayers.Handler.Drag(this,{move:this.rectDrag,done:this.updateMapToRect},{map:this.ovmap});this.handlers.click=new OpenLayers.Handler.Click(this,{\"click\":this.mapDivClick},{\"single\":true,\"double\":false,\"stopSingle\":true,\"stopDouble\":true,\"pixelTolerance\":1,map:this.ovmap});this.handlers.click.activate();this.rectEvents=new OpenLayers.Events(this,this.extentRectangle,null,true);this.rectEvents.register(\"mouseover\",this,function(e){if(!this.handlers.drag.active&&!this.map.dragging){this.handlers.drag.activate();}});this.rectEvents.register(\"mouseout\",this,function(e){if(!this.handlers.drag.dragging){this.handlers.drag.deactivate();}});if(this.ovmap.getProjection()!=this.map.getProjection()){var sourceUnits=this.map.getProjectionObject().getUnits()||this.map.units||this.map.baseLayer.units;var targetUnits=this.ovmap.getProjectionObject().getUnits()||this.ovmap.units||this.ovmap.baseLayer.units;this.resolutionFactor=sourceUnits&&targetUnits?OpenLayers.INCHES_PER_UNIT[sourceUnits]/OpenLayers.INCHES_PER_UNIT[targetUnits]:1;}},updateRectToMap:function(){var bounds;if(this.ovmap.getProjection()!=this.map.getProjection()){bounds=this.map.getExtent().transform(this.map.getProjectionObject(),this.ovmap.getProjectionObject());}else{bounds=this.map.getExtent();}\nvar pxBounds=this.getRectBoundsFromMapBounds(bounds);if(pxBounds){this.setRectPxBounds(pxBounds);}},updateMapToRect:function(){var lonLatBounds=this.getMapBoundsFromRectBounds(this.rectPxBounds);if(this.ovmap.getProjection()!=this.map.getProjection()){lonLatBounds=lonLatBounds.transform(this.ovmap.getProjectionObject(),this.map.getProjectionObject());}\nthis.map.panTo(lonLatBounds.getCenterLonLat());},setRectPxBounds:function(pxBounds){var top=Math.max(pxBounds.top,0);var left=Math.max(pxBounds.left,0);var bottom=Math.min(pxBounds.top+Math.abs(pxBounds.getHeight()),this.ovmap.size.h-this.hComp);var right=Math.min(pxBounds.left+pxBounds.getWidth(),this.ovmap.size.w-this.wComp);var width=Math.max(right-left,0);var height=Math.max(bottom-top,0);if(width<this.minRectSize||height<this.minRectSize){this.extentRectangle.className=this.displayClass+\nthis.minRectDisplayClass;var rLeft=left+(width/2)-(this.minRectSize/2);var rTop=top+(height/2)-(this.minRectSize/2);this.extentRectangle.style.top=Math.round(rTop)+'px';this.extentRectangle.style.left=Math.round(rLeft)+'px';this.extentRectangle.style.height=this.minRectSize+'px';this.extentRectangle.style.width=this.minRectSize+'px';}else{this.extentRectangle.className=this.displayClass+'ExtentRectangle';this.extentRectangle.style.top=Math.round(top)+'px';this.extentRectangle.style.left=Math.round(left)+'px';this.extentRectangle.style.height=Math.round(height)+'px';this.extentRectangle.style.width=Math.round(width)+'px';}\nthis.rectPxBounds=new OpenLayers.Bounds(Math.round(left),Math.round(bottom),Math.round(right),Math.round(top));},getRectBoundsFromMapBounds:function(lonLatBounds){var leftBottomLonLat=new OpenLayers.LonLat(lonLatBounds.left,lonLatBounds.bottom);var rightTopLonLat=new OpenLayers.LonLat(lonLatBounds.right,lonLatBounds.top);var leftBottomPx=this.getOverviewPxFromLonLat(leftBottomLonLat);var rightTopPx=this.getOverviewPxFromLonLat(rightTopLonLat);var bounds=null;if(leftBottomPx&&rightTopPx){bounds=new OpenLayers.Bounds(leftBottomPx.x,leftBottomPx.y,rightTopPx.x,rightTopPx.y);}\nreturn bounds;},getMapBoundsFromRectBounds:function(pxBounds){var leftBottomPx=new OpenLayers.Pixel(pxBounds.left,pxBounds.bottom);var rightTopPx=new OpenLayers.Pixel(pxBounds.right,pxBounds.top);var leftBottomLonLat=this.getLonLatFromOverviewPx(leftBottomPx);var rightTopLonLat=this.getLonLatFromOverviewPx(rightTopPx);return new OpenLayers.Bounds(leftBottomLonLat.lon,leftBottomLonLat.lat,rightTopLonLat.lon,rightTopLonLat.lat);},getLonLatFromOverviewPx:function(overviewMapPx){var size=this.ovmap.size;var res=this.ovmap.getResolution();var center=this.ovmap.getExtent().getCenterLonLat();var delta_x=overviewMapPx.x-(size.w/2);var delta_y=overviewMapPx.y-(size.h/2);return new OpenLayers.LonLat(center.lon+delta_x*res,center.lat-delta_y*res);},getOverviewPxFromLonLat:function(lonlat){var res=this.ovmap.getResolution();var extent=this.ovmap.getExtent();var px=null;if(extent){px=new OpenLayers.Pixel(Math.round(1/res*(lonlat.lon-extent.left)),Math.round(1/res*(extent.top-lonlat.lat)));}\nreturn px;},CLASS_NAME:'OpenLayers.Control.OverviewMap'});OpenLayers.Feature=OpenLayers.Class({layer:null,id:null,lonlat:null,data:null,marker:null,popupClass:OpenLayers.Popup.AnchoredBubble,popup:null,initialize:function(layer,lonlat,data){this.layer=layer;this.lonlat=lonlat;this.data=(data!=null)?data:{};this.id=OpenLayers.Util.createUniqueID(this.CLASS_NAME+\"_\");},destroy:function(){if((this.layer!=null)&&(this.layer.map!=null)){if(this.popup!=null){this.layer.map.removePopup(this.popup);}}\nif(this.layer!=null&&this.marker!=null){this.layer.removeMarker(this.marker);}\nthis.layer=null;this.id=null;this.lonlat=null;this.data=null;if(this.marker!=null){this.destroyMarker(this.marker);this.marker=null;}\nif(this.popup!=null){this.destroyPopup(this.popup);this.popup=null;}},onScreen:function(){var onScreen=false;if((this.layer!=null)&&(this.layer.map!=null)){var screenBounds=this.layer.map.getExtent();onScreen=screenBounds.containsLonLat(this.lonlat);}\nreturn onScreen;},createMarker:function(){if(this.lonlat!=null){this.marker=new OpenLayers.Marker(this.lonlat,this.data.icon);}\nreturn this.marker;},destroyMarker:function(){this.marker.destroy();},createPopup:function(closeBox){if(this.lonlat!=null){var id=this.id+\"_popup\";var anchor=(this.marker)?this.marker.icon:null;if(!this.popup){this.popup=new this.popupClass(id,this.lonlat,this.data.popupSize,this.data.popupContentHTML,anchor,closeBox);}\nif(this.data.overflow!=null){this.popup.contentDiv.style.overflow=this.data.overflow;}\nthis.popup.feature=this;}\nreturn this.popup;},destroyPopup:function(){if(this.popup){this.popup.feature=null;this.popup.destroy();this.popup=null;}},CLASS_NAME:\"OpenLayers.Feature\"});OpenLayers.Format.CSWGetDomain.v2_0_2=OpenLayers.Class(OpenLayers.Format.XML,{namespaces:{xlink:\"http://www.w3.org/1999/xlink\",xsi:\"http://www.w3.org/2001/XMLSchema-instance\",csw:\"http://www.opengis.net/cat/csw/2.0.2\"},defaultPrefix:\"csw\",version:\"2.0.2\",schemaLocation:\"http://www.opengis.net/cat/csw/2.0.2 http://schemas.opengis.net/csw/2.0.2/CSW-discovery.xsd\",PropertyName:null,ParameterName:null,initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);},read:function(data){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nif(data&&data.nodeType==9){data=data.documentElement;}\nvar obj={};this.readNode(data,obj);return obj;},readers:{\"csw\":{\"GetDomainResponse\":function(node,obj){this.readChildNodes(node,obj);},\"DomainValues\":function(node,obj){if(!(obj.DomainValues instanceof Array)){obj.DomainValues=[];}\nvar attrs=node.attributes;var domainValue={};for(var i=0,len=attrs.length;i<len;++i){domainValue[attrs[i].name]=attrs[i].nodeValue;}\nthis.readChildNodes(node,domainValue);obj.DomainValues.push(domainValue);},\"PropertyName\":function(node,obj){obj.PropertyName=this.getChildValue(node);},\"ParameterName\":function(node,obj){obj.ParameterName=this.getChildValue(node);},\"ListOfValues\":function(node,obj){if(!(obj.ListOfValues instanceof Array)){obj.ListOfValues=[];}\nthis.readChildNodes(node,obj.ListOfValues);},\"Value\":function(node,obj){var attrs=node.attributes;var value={}\nfor(var i=0,len=attrs.length;i<len;++i){value[attrs[i].name]=attrs[i].nodeValue;}\nvalue.value=this.getChildValue(node);obj.push({Value:value});},\"ConceptualScheme\":function(node,obj){obj.ConceptualScheme={};this.readChildNodes(node,obj.ConceptualScheme);},\"Name\":function(node,obj){obj.Name=this.getChildValue(node);},\"Document\":function(node,obj){obj.Document=this.getChildValue(node);},\"Authority\":function(node,obj){obj.Authority=this.getChildValue(node);},\"RangeOfValues\":function(node,obj){obj.RangeOfValues={};this.readChildNodes(node,obj.RangeOfValues);},\"MinValue\":function(node,obj){var attrs=node.attributes;var value={}\nfor(var i=0,len=attrs.length;i<len;++i){value[attrs[i].name]=attrs[i].nodeValue;}\nvalue.value=this.getChildValue(node);obj.MinValue=value;},\"MaxValue\":function(node,obj){var attrs=node.attributes;var value={}\nfor(var i=0,len=attrs.length;i<len;++i){value[attrs[i].name]=attrs[i].nodeValue;}\nvalue.value=this.getChildValue(node);obj.MaxValue=value;}}},write:function(options){var node=this.writeNode(\"csw:GetDomain\",options);return OpenLayers.Format.XML.prototype.write.apply(this,[node]);},writers:{\"csw\":{\"GetDomain\":function(options){var node=this.createElementNSPlus(\"csw:GetDomain\",{attributes:{service:\"CSW\",version:this.version}});if(options.PropertyName||this.PropertyName){this.writeNode(\"csw:PropertyName\",options.PropertyName||this.PropertyName,node);}else if(options.ParameterName||this.ParameterName){this.writeNode(\"csw:ParameterName\",options.ParameterName||this.ParameterName,node);}\nthis.readChildNodes(node,options);return node;},\"PropertyName\":function(value){var node=this.createElementNSPlus(\"csw:PropertyName\",{value:value});return node;},\"ParameterName\":function(value){var node=this.createElementNSPlus(\"csw:ParameterName\",{value:value});return node;}}},CLASS_NAME:\"OpenLayers.Format.CSWGetDomain.v2_0_2\"});OpenLayers.Format.Context=OpenLayers.Class({version:null,layerOptions:null,layerParams:null,parser:null,initialize:function(options){OpenLayers.Util.extend(this,options);this.options=options;},read:function(data,options){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nvar root=data.documentElement;var version=this.version;if(!version){version=root.getAttribute(\"version\");}\nvar parser=this.getParser(version);var context=parser.read(data,options);var map;if(options&&options.map){this.context=context;if(options.map instanceof OpenLayers.Map){map=this.mergeContextToMap(context,options.map);}else{var mapOptions=options.map;if(OpenLayers.Util.isElement(mapOptions)||typeof mapOptions==\"string\"){mapOptions={div:mapOptions};}\nmap=this.contextToMap(context,mapOptions);}}else{map=context;}\nreturn map;},getLayerFromContext:function(layerContext){var i,len;var options={queryable:layerContext.queryable,visibility:layerContext.visibility,maxExtent:layerContext.maxExtent,metadata:OpenLayers.Util.applyDefaults(layerContext.metadata,{styles:layerContext.styles}),numZoomLevels:layerContext.numZoomLevels,units:layerContext.units,isBaseLayer:layerContext.isBaseLayer,opacity:layerContext.opacity,displayInLayerSwitcher:layerContext.displayInLayerSwitcher,singleTile:layerContext.singleTile,tileSize:(layerContext.tileSize)?new OpenLayers.Size(layerContext.tileSize.width,layerContext.tileSize.height):undefined,minScale:layerContext.minScale||layerContext.maxScaleDenominator,maxScale:layerContext.maxScale||layerContext.minScaleDenominator};if(this.layerOptions){OpenLayers.Util.applyDefaults(options,this.layerOptions);}\nvar params={layers:layerContext.name,transparent:layerContext.transparent,version:layerContext.version};if(layerContext.formats&&layerContext.formats.length>0){params.format=layerContext.formats[0].value;for(i=0,len=layerContext.formats.length;i<len;i++){var format=layerContext.formats[i];if(format.current==true){params.format=format.value;break;}}}\nif(layerContext.styles&&layerContext.styles.length>0){for(i=0,len=layerContext.styles.length;i<len;i++){var style=layerContext.styles[i];if(style.current==true){if(style.href){params.sld=style.href;}else if(style.body){params.sld_body=style.body;}else{params.styles=style.name;}\nbreak;}}}\nif(this.layerParams){OpenLayers.Util.applyDefaults(params,this.layerParams);}\nvar layer=null;var service=layerContext.service;if(service==OpenLayers.Format.Context.serviceTypes.WFS){options.strategies=[new OpenLayers.Strategy.BBOX()];options.protocol=new OpenLayers.Protocol.WFS({url:layerContext.url,featurePrefix:layerContext.name.split(\":\")[0],featureType:layerContext.name.split(\":\").pop()});layer=new OpenLayers.Layer.Vector(layerContext.title||layerContext.name,options);}else if(service==OpenLayers.Format.Context.serviceTypes.KML){options.strategies=[new OpenLayers.Strategy.Fixed()];options.protocol=new OpenLayers.Protocol.HTTP({url:layerContext.url,format:new OpenLayers.Format.KML()});layer=new OpenLayers.Layer.Vector(layerContext.title||layerContext.name,options);}else if(service==OpenLayers.Format.Context.serviceTypes.GML){options.strategies=[new OpenLayers.Strategy.Fixed()];options.protocol=new OpenLayers.Protocol.HTTP({url:layerContext.url,format:new OpenLayers.Format.GML()});layer=new OpenLayers.Layer.Vector(layerContext.title||layerContext.name,options);}else if(layerContext.features){layer=new OpenLayers.Layer.Vector(layerContext.title||layerContext.name,options);layer.addFeatures(layerContext.features);}else if(layerContext.categoryLayer!==true){layer=new OpenLayers.Layer.WMS(layerContext.title||layerContext.name,layerContext.url,params,options);}\nreturn layer;},getLayersFromContext:function(layersContext){var layers=[];for(var i=0,len=layersContext.length;i<len;i++){var layer=this.getLayerFromContext(layersContext[i]);if(layer!==null){layers.push(layer);}}\nreturn layers;},contextToMap:function(context,options){options=OpenLayers.Util.applyDefaults({maxExtent:context.maxExtent,projection:context.projection},options);var map=new OpenLayers.Map(options);map.addLayers(this.getLayersFromContext(context.layersContext));map.setCenter(context.bounds.getCenterLonLat(),map.getZoomForExtent(context.bounds,true));return map;},mergeContextToMap:function(context,map){map.addLayers(this.getLayersFromContext(context.layersContext));return map;},write:function(obj,options){obj=this.toContext(obj);var version=options&&options.version;var parser=this.getParser(version);var context=parser.write(obj,options);return context;},CLASS_NAME:\"OpenLayers.Format.Context\"});OpenLayers.Format.Context.serviceTypes={\"WMS\":\"urn:ogc:serviceType:WMS\",\"WFS\":\"urn:ogc:serviceType:WFS\",\"WCS\":\"urn:ogc:serviceType:WCS\",\"GML\":\"urn:ogc:serviceType:GML\",\"SLD\":\"urn:ogc:serviceType:SLD\",\"FES\":\"urn:ogc:serviceType:FES\",\"KML\":\"urn:ogc:serviceType:KML\"};if(!OpenLayers.Format.OWSCommon){OpenLayers.Format.OWSCommon={};}\nOpenLayers.Format.OWSCommon.v1=OpenLayers.Class(OpenLayers.Format.XML,{regExes:{trimSpace:(/^\\s*|\\s*$/g),removeSpace:(/\\s*/g),splitSpace:(/\\s+/),trimComma:(/\\s*,\\s*/g)},readers:{\"ows\":{\"ServiceIdentification\":function(node,obj){obj.serviceIdentification={};this.readChildNodes(node,obj.serviceIdentification);},\"Title\":function(node,obj){obj.title=this.getChildValue(node);},\"Abstract\":function(node,serviceIdentification){serviceIdentification[\"abstract\"]=this.getChildValue(node);},\"Keywords\":function(node,serviceIdentification){serviceIdentification.keywords={};this.readChildNodes(node,serviceIdentification.keywords);},\"Keyword\":function(node,keywords){keywords[this.getChildValue(node)]=true;},\"ServiceType\":function(node,serviceIdentification){serviceIdentification.serviceType={codeSpace:node.getAttribute('codeSpace'),value:this.getChildValue(node)};},\"ServiceTypeVersion\":function(node,serviceIdentification){serviceIdentification.serviceTypeVersion=this.getChildValue(node);},\"Fees\":function(node,serviceIdentification){serviceIdentification.fees=this.getChildValue(node);},\"AccessConstraints\":function(node,serviceIdentification){serviceIdentification.accessConstraints=this.getChildValue(node);},\"ServiceProvider\":function(node,obj){obj.serviceProvider={};this.readChildNodes(node,obj.serviceProvider);},\"ProviderName\":function(node,serviceProvider){serviceProvider.providerName=this.getChildValue(node);},\"ProviderSite\":function(node,serviceProvider){serviceProvider.providerSite=this.getAttributeNS(node,this.namespaces.xlink,\"href\");},\"ServiceContact\":function(node,serviceProvider){serviceProvider.serviceContact={};this.readChildNodes(node,serviceProvider.serviceContact);},\"IndividualName\":function(node,serviceContact){serviceContact.individualName=this.getChildValue(node);},\"PositionName\":function(node,serviceContact){serviceContact.positionName=this.getChildValue(node);},\"ContactInfo\":function(node,serviceContact){serviceContact.contactInfo={};this.readChildNodes(node,serviceContact.contactInfo);},\"Phone\":function(node,contactInfo){contactInfo.phone={};this.readChildNodes(node,contactInfo.phone);},\"Voice\":function(node,phone){phone.voice=this.getChildValue(node);},\"Address\":function(node,contactInfo){contactInfo.address={};this.readChildNodes(node,contactInfo.address);},\"DeliveryPoint\":function(node,address){address.deliveryPoint=this.getChildValue(node);},\"City\":function(node,address){address.city=this.getChildValue(node);},\"AdministrativeArea\":function(node,address){address.administrativeArea=this.getChildValue(node);},\"PostalCode\":function(node,address){address.postalCode=this.getChildValue(node);},\"Country\":function(node,address){address.country=this.getChildValue(node);},\"ElectronicMailAddress\":function(node,address){address.electronicMailAddress=this.getChildValue(node);},\"Role\":function(node,serviceContact){serviceContact.role=this.getChildValue(node);},\"OperationsMetadata\":function(node,obj){obj.operationsMetadata={};this.readChildNodes(node,obj.operationsMetadata);},\"Operation\":function(node,operationsMetadata){var name=node.getAttribute(\"name\");operationsMetadata[name]={};this.readChildNodes(node,operationsMetadata[name]);},\"DCP\":function(node,operation){operation.dcp={};this.readChildNodes(node,operation.dcp);},\"HTTP\":function(node,dcp){dcp.http={};this.readChildNodes(node,dcp.http);},\"Get\":function(node,http){http.get=this.getAttributeNS(node,this.namespaces.xlink,\"href\");},\"Post\":function(node,http){http.post=this.getAttributeNS(node,this.namespaces.xlink,\"href\");},\"Parameter\":function(node,operation){if(!operation.parameters){operation.parameters={};}\nvar name=node.getAttribute(\"name\");operation.parameters[name]={};this.readChildNodes(node,operation.parameters[name]);},\"Value\":function(node,allowedValues){allowedValues[this.getChildValue(node)]=true;},\"OutputFormat\":function(node,obj){obj.formats.push({value:this.getChildValue(node)});this.readChildNodes(node,obj);},\"WGS84BoundingBox\":function(node,obj){var boundingBox={};boundingBox.crs=node.getAttribute(\"crs\");if(obj.BoundingBox){obj.BoundingBox.push(boundingBox);}else{obj.projection=boundingBox.crs;boundingBox=obj;}\nthis.readChildNodes(node,boundingBox);},\"BoundingBox\":function(node,obj){this.readers['ows']['WGS84BoundingBox'].apply(this,[node,obj]);},\"LowerCorner\":function(node,obj){var str=this.getChildValue(node).replace(this.regExes.trimSpace,\"\");str=str.replace(this.regExes.trimComma,\",\");var pointList=str.split(this.regExes.splitSpace);obj.left=pointList[0];obj.bottom=pointList[1];},\"UpperCorner\":function(node,obj){var str=this.getChildValue(node).replace(this.regExes.trimSpace,\"\");str=str.replace(this.regExes.trimComma,\",\");var pointList=str.split(this.regExes.splitSpace);obj.right=pointList[0];obj.top=pointList[1];obj.bounds=new OpenLayers.Bounds(obj.left,obj.bottom,obj.right,obj.top);delete obj.left;delete obj.bottom;delete obj.right;delete obj.top;}}},writers:{\"ows\":{\"BoundingBox\":function(options){var node=this.createElementNSPlus(\"ows:BoundingBox\",{attributes:{crs:options.projection}});this.writeNode(\"ows:LowerCorner\",options,node);this.writeNode(\"ows:UpperCorner\",options,node);return node;},\"LowerCorner\":function(options){var node=this.createElementNSPlus(\"ows:LowerCorner\",{value:options.bounds.left+\" \"+options.bounds.bottom});return node;},\"UpperCorner\":function(options){var node=this.createElementNSPlus(\"ows:UpperCorner\",{value:options.bounds.right+\" \"+options.bounds.top});return node;},\"Title\":function(title){var node=this.createElementNSPlus(\"ows:Title\",{value:title});return node;},\"OutputFormat\":function(format){var node=this.createElementNSPlus(\"ows:OutputFormat\",{value:format});return node;}}},CLASS_NAME:\"OpenLayers.Format.OWSCommon.v1\"});OpenLayers.Format.SOSCapabilities=OpenLayers.Class(OpenLayers.Format.XML,{defaultVersion:\"1.0.0\",version:null,parser:null,initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);this.options=options;},read:function(data){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nvar root=data.documentElement;var version=this.version||root.getAttribute(\"version\")||this.defaultVersion;if(!this.parser||this.parser.version!==version){var constr=OpenLayers.Format.SOSCapabilities[\"v\"+version.replace(/\\./g,\"_\")];if(!constr){throw\"Can't find a SOS capabilities parser for version \"+version;}\nvar parser=new constr(this.options);}\nvar capabilities=parser.read(data);capabilities.version=version;return capabilities;},CLASS_NAME:\"OpenLayers.Format.SOSCapabilities\"});OpenLayers.Format.WFSCapabilities=OpenLayers.Class(OpenLayers.Format.XML,{defaultVersion:\"1.1.0\",version:null,initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);this.options=options;},read:function(data){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nvar root=data.documentElement;var version=this.version;if(!version){version=root.getAttribute(\"version\");if(!version){version=this.defaultVersion;}}\nvar constr=OpenLayers.Format.WFSCapabilities[\"v\"+version.replace(/\\./g,\"_\")];if(!constr){throw\"Can't find a WFS capabilities parser for version \"+version;}\nvar parser=new constr(this.options);var capabilities=parser.read(data);capabilities.version=version;return capabilities;},CLASS_NAME:\"OpenLayers.Format.WFSCapabilities\"});OpenLayers.Format.WFSDescribeFeatureType=OpenLayers.Class(OpenLayers.Format.XML,{namespaces:{xsd:\"http://www.w3.org/2001/XMLSchema\"},initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);},readers:{\"xsd\":{\"schema\":function(node,obj){var complexTypes=[];var customTypes={};var schema={complexTypes:complexTypes,customTypes:customTypes};this.readChildNodes(node,schema);var attributes=node.attributes;var attr,name;for(var i=0,len=attributes.length;i<len;++i){attr=attributes[i];name=attr.name;if(name.indexOf(\"xmlns\")==0){this.setNamespace(name.split(\":\")[1]||\"\",attr.value);}else{obj[name]=attr.value;}}\nobj.featureTypes=complexTypes;obj.targetPrefix=this.namespaceAlias[obj.targetNamespace];var complexType,customType;for(var i=0,len=complexTypes.length;i<len;++i){complexType=complexTypes[i];customType=customTypes[complexType.typeName];if(customTypes[complexType.typeName]){complexType.typeName=customType.name;}}},\"complexType\":function(node,obj){var complexType={\"typeName\":node.getAttribute(\"name\")};this.readChildNodes(node,complexType);obj.complexTypes.push(complexType);},\"complexContent\":function(node,obj){this.readChildNodes(node,obj);},\"extension\":function(node,obj){this.readChildNodes(node,obj);},\"sequence\":function(node,obj){var sequence={elements:[]};this.readChildNodes(node,sequence);obj.properties=sequence.elements;},\"element\":function(node,obj){if(obj.elements){var element={};var attributes=node.attributes;var attr;for(var i=0,len=attributes.length;i<len;++i){attr=attributes[i];element[attr.name]=attr.value;}\nvar type=element.type;if(!type){type={};this.readChildNodes(node,type);element.restriction=type;element.type=type.base;}\nvar fullType=type.base||type;element.localType=fullType.split(\":\").pop();obj.elements.push(element);}\nif(obj.complexTypes){var type=node.getAttribute(\"type\");var localType=type.split(\":\").pop();obj.customTypes[localType]={\"name\":node.getAttribute(\"name\"),\"type\":type};}},\"simpleType\":function(node,obj){this.readChildNodes(node,obj);},\"restriction\":function(node,obj){obj.base=node.getAttribute(\"base\");this.readRestriction(node,obj);}}},readRestriction:function(node,obj){var children=node.childNodes;var child,nodeName,value;for(var i=0,len=children.length;i<len;++i){child=children[i];if(child.nodeType==1){nodeName=child.nodeName.split(\":\").pop();value=child.getAttribute(\"value\");if(!obj[nodeName]){obj[nodeName]=value;}else{if(typeof obj[nodeName]==\"string\"){obj[nodeName]=[obj[nodeName]];}\nobj[nodeName].push(value);}}}},read:function(data){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nif(data&&data.nodeType==9){data=data.documentElement;}\nvar schema={};this.readNode(data,schema);return schema;},CLASS_NAME:\"OpenLayers.Format.WFSDescribeFeatureType\"});OpenLayers.Format.WFST.v1=OpenLayers.Class(OpenLayers.Format.XML,{namespaces:{xlink:\"http://www.w3.org/1999/xlink\",xsi:\"http://www.w3.org/2001/XMLSchema-instance\",wfs:\"http://www.opengis.net/wfs\",gml:\"http://www.opengis.net/gml\",ogc:\"http://www.opengis.net/ogc\"},defaultPrefix:\"wfs\",version:null,schemaLocations:null,srsName:null,extractAttributes:true,xy:true,stateName:null,initialize:function(options){this.stateName={};this.stateName[OpenLayers.State.INSERT]=\"wfs:Insert\";this.stateName[OpenLayers.State.UPDATE]=\"wfs:Update\";this.stateName[OpenLayers.State.DELETE]=\"wfs:Delete\";OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);},getSrsName:function(feature,options){var srsName=options&&options.srsName;if(!srsName){if(feature&&feature.layer){srsName=feature.layer.projection.getCode();}else{srsName=this.srsName;}}\nreturn srsName;},read:function(data,options){options=options||{};OpenLayers.Util.applyDefaults(options,{output:\"features\"});if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nif(data&&data.nodeType==9){data=data.documentElement;}\nvar obj={};if(data){this.readNode(data,obj);}\nif(obj.features&&options.output===\"features\"){obj=obj.features;}\nreturn obj;},readers:{\"wfs\":{\"FeatureCollection\":function(node,obj){obj.features=[];this.readChildNodes(node,obj);}}},write:function(features){var node=this.writeNode(\"wfs:Transaction\",features);var value=this.schemaLocationAttr();if(value){this.setAttributeNS(node,this.namespaces[\"xsi\"],\"xsi:schemaLocation\",value)}\nreturn OpenLayers.Format.XML.prototype.write.apply(this,[node]);},writers:{\"wfs\":{\"GetFeature\":function(options){var node=this.createElementNSPlus(\"wfs:GetFeature\",{attributes:{service:\"WFS\",version:this.version,outputFormat:options&&options.outputFormat,maxFeatures:options&&options.maxFeatures,\"xsi:schemaLocation\":this.schemaLocationAttr(options)}});if(typeof this.featureType==\"string\"){this.writeNode(\"Query\",options,node);}else{for(var i=0,len=this.featureType.length;i<len;i++){options.featureType=this.featureType[i];this.writeNode(\"Query\",options,node);}}\nreturn node;},\"Transaction\":function(features){var node=this.createElementNSPlus(\"wfs:Transaction\",{attributes:{service:\"WFS\",version:this.version}});if(features){var name,feature;for(var i=0,len=features.length;i<len;++i){feature=features[i];name=this.stateName[feature.state];if(name){this.writeNode(name,feature,node);}}}\nreturn node;},\"Insert\":function(feature){var node=this.createElementNSPlus(\"wfs:Insert\");this.srsName=this.getSrsName(feature);this.writeNode(\"feature:_typeName\",feature,node);return node;},\"Update\":function(feature){var node=this.createElementNSPlus(\"wfs:Update\",{attributes:{typeName:(this.featureNS?this.featurePrefix+\":\":\"\")+\nthis.featureType}});if(this.featureNS){node.setAttribute(\"xmlns:\"+this.featurePrefix,this.featureNS);}\nif(this.geometryName!==null){this.writeNode(\"Property\",{name:this.geometryName,value:feature},node);}\nfor(var key in feature.attributes){if(feature.attributes[key]!==undefined){this.writeNode(\"Property\",{name:key,value:feature.attributes[key]},node);}}\nthis.writeNode(\"ogc:Filter\",new OpenLayers.Filter.FeatureId({fids:[feature.fid]}),node);return node;},\"Property\":function(obj){var node=this.createElementNSPlus(\"wfs:Property\");this.writeNode(\"Name\",obj.name,node);if(obj.value!==null){this.writeNode(\"Value\",obj.value,node);}\nreturn node;},\"Name\":function(name){return this.createElementNSPlus(\"wfs:Name\",{value:name});},\"Value\":function(obj){var node;if(obj instanceof OpenLayers.Feature.Vector){node=this.createElementNSPlus(\"wfs:Value\");this.srsName=this.getSrsName(obj);var geom=this.writeNode(\"feature:_geometry\",obj.geometry).firstChild;node.appendChild(geom);}else{node=this.createElementNSPlus(\"wfs:Value\",{value:obj});}\nreturn node;},\"Delete\":function(feature){var node=this.createElementNSPlus(\"wfs:Delete\",{attributes:{typeName:(this.featureNS?this.featurePrefix+\":\":\"\")+\nthis.featureType}});if(this.featureNS){node.setAttribute(\"xmlns:\"+this.featurePrefix,this.featureNS);}\nthis.writeNode(\"ogc:Filter\",new OpenLayers.Filter.FeatureId({fids:[feature.fid]}),node);return node;}}},schemaLocationAttr:function(options){options=OpenLayers.Util.extend({featurePrefix:this.featurePrefix,schema:this.schema},options);var schemaLocations=OpenLayers.Util.extend({},this.schemaLocations);if(options.schema){schemaLocations[options.featurePrefix]=options.schema;}\nvar parts=[];var uri;for(var key in schemaLocations){uri=this.namespaces[key];if(uri){parts.push(uri+\" \"+schemaLocations[key]);}}\nvar value=parts.join(\" \")||undefined;return value;},setFilterProperty:function(filter){if(filter.filters){for(var i=0,len=filter.filters.length;i<len;++i){this.setFilterProperty(filter.filters[i]);}}else{if(filter instanceof OpenLayers.Filter.Spatial){filter.property=this.geometryName;}}},CLASS_NAME:\"OpenLayers.Format.WFST.v1\"});OpenLayers.Format.WMSCapabilities=OpenLayers.Class(OpenLayers.Format.XML,{defaultVersion:\"1.1.1\",version:null,parser:null,initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);this.options=options;},read:function(data){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nvar root=data.documentElement;var version=this.version||root.getAttribute(\"version\")||this.defaultVersion;if(!this.parser||this.parser.version!==version){var constr=OpenLayers.Format.WMSCapabilities[\"v\"+version.replace(/\\./g,\"_\")];if(!constr){throw\"Can't find a WMS capabilities parser for version \"+version;}\nthis.parser=new constr(this.options);}\nvar capabilities=this.parser.read(data);capabilities.version=version;return capabilities;},CLASS_NAME:\"OpenLayers.Format.WMSCapabilities\"});OpenLayers.Format.WMSDescribeLayer=OpenLayers.Class(OpenLayers.Format.XML,{defaultVersion:\"1.1.1\",version:null,initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);this.options=options;},read:function(data){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nvar root=data.documentElement;var version=this.version;if(!version){version=root.getAttribute(\"version\");if(!version){version=this.defaultVersion;}}\nif(version==\"1.1.1\"||version==\"1.1.0\"){version=\"1.1\";}\nvar constructor=OpenLayers.Format.WMSDescribeLayer[\"v\"+version.replace(/\\./g,\"_\")];if(!constructor){throw\"Can't find a WMS DescribeLayer parser for version \"+\nversion;}\nvar parser=new constructor(this.options);var describelayer=parser.read(data);describelayer.version=version;return describelayer;},CLASS_NAME:\"OpenLayers.Format.WMSDescribeLayer\"});OpenLayers.Format.WMSGetFeatureInfo=OpenLayers.Class(OpenLayers.Format.XML,{layerIdentifier:'_layer',featureIdentifier:'_feature',regExes:{trimSpace:(/^\\s*|\\s*$/g),removeSpace:(/\\s*/g),splitSpace:(/\\s+/),trimComma:(/\\s*,\\s*/g)},gmlFormat:null,initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,arguments);OpenLayers.Util.extend(this,options);this.options=options;},read:function(data){var result;if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nvar root=data.documentElement;if(root){var scope=this;var read=this[\"read_\"+root.nodeName];if(read){result=read.call(this,root);}else{result=new OpenLayers.Format.GML((this.options?this.options:{})).read(data);}}else{result=data;}\nreturn result;},read_msGMLOutput:function(data){var response=[];var layerNodes=this.getSiblingNodesByTagCriteria(data,this.layerIdentifier);if(layerNodes){for(var i=0,len=layerNodes.length;i<len;++i){var node=layerNodes[i];var layerName=node.nodeName;if(node.prefix){layerName=layerName.split(':')[1];}\nvar layerName=layerName.replace(this.layerIdentifier,'');var featureNodes=this.getSiblingNodesByTagCriteria(node,this.featureIdentifier);if(featureNodes){for(var j=0;j<featureNodes.length;j++){var featureNode=featureNodes[j];var geomInfo=this.parseGeometry(featureNode);var attributes=this.parseAttributes(featureNode);var feature=new OpenLayers.Feature.Vector(geomInfo.geometry,attributes,null);feature.bounds=geomInfo.bounds;feature.type=layerName;response.push(feature);}}}}\nreturn response;},read_FeatureInfoResponse:function(data){var response=[];var featureNodes=this.getElementsByTagNameNS(data,'*','FIELDS');for(var i=0,len=featureNodes.length;i<len;i++){var featureNode=featureNodes[i];var geom=null;var attributes={};for(var j=0,jlen=featureNode.attributes.length;j<jlen;j++){var attribute=featureNode.attributes[j];attributes[attribute.nodeName]=attribute.nodeValue;}\nresponse.push(new OpenLayers.Feature.Vector(geom,attributes,null));}\nreturn response;},getSiblingNodesByTagCriteria:function(node,criteria){var nodes=[];var children,tagName,n,matchNodes,child;if(node&&node.hasChildNodes()){children=node.childNodes;n=children.length;for(var k=0;k<n;k++){child=children[k];while(child&&child.nodeType!=1){child=child.nextSibling;k++;}\ntagName=(child?child.nodeName:'');if(tagName.length>0&&tagName.indexOf(criteria)>-1){nodes.push(child);}else{matchNodes=this.getSiblingNodesByTagCriteria(child,criteria);if(matchNodes.length>0){(nodes.length==0)?nodes=matchNodes:nodes.push(matchNodes);}}}}\nreturn nodes;},parseAttributes:function(node){var attributes={};if(node.nodeType==1){var children=node.childNodes;var n=children.length;for(var i=0;i<n;++i){var child=children[i];if(child.nodeType==1){var grandchildren=child.childNodes;if(grandchildren.length==1){var grandchild=grandchildren[0];if(grandchild.nodeType==3||grandchild.nodeType==4){var name=(child.prefix)?child.nodeName.split(\":\")[1]:child.nodeName;var value=grandchild.nodeValue.replace(this.regExes.trimSpace,\"\");attributes[name]=value;}}}}}\nreturn attributes;},parseGeometry:function(node){if(!this.gmlFormat){this.gmlFormat=new OpenLayers.Format.GML();}\nvar feature=this.gmlFormat.parseFeature(node);var geometry,bounds=null;if(feature){geometry=feature.geometry&&feature.geometry.clone();bounds=feature.bounds&&feature.bounds.clone();feature.destroy();}\nreturn{geometry:geometry,bounds:bounds};},CLASS_NAME:\"OpenLayers.Format.WMSGetFeatureInfo\"});OpenLayers.Format.WMTSCapabilities=OpenLayers.Class(OpenLayers.Format.XML,{defaultVersion:\"1.0.0\",version:null,parser:null,yx:{\"urn:ogc:def:crs:EPSG::4326\":true},initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);this.options=options;},read:function(data){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nvar root=data.documentElement;var version=this.version||root.getAttribute(\"version\")||this.defaultVersion;if(!this.parser||this.parser.version!==version){var constr=OpenLayers.Format.WMTSCapabilities[\"v\"+version.replace(/\\./g,\"_\")];if(!constr){throw new Error(\"Can't find a WMTS capabilities parser for version \"+version);}\nthis.parser=new constr(this.options);}\nreturn this.parser.read(data);},createLayer:function(capabilities,config){var layer;var required={layer:true,matrixSet:true};for(var prop in required){if(!(prop in config)){throw new Error(\"Missing property '\"+prop+\"' in layer configuration.\");}}\nvar contents=capabilities.contents;var matrixSet=contents.tileMatrixSets[config.matrixSet];var layers=contents.layers;var layerDef;for(var i=0,ii=contents.layers.length;i<ii;++i){if(contents.layers[i].identifier===config.layer){layerDef=contents.layers[i];break;}}\nif(layerDef&&matrixSet){var style;for(var i=0,ii=layerDef.styles.length;i<ii;++i){style=layerDef.styles[i];if(style.isDefault){break;}}\nlayer=new OpenLayers.Layer.WMTS(OpenLayers.Util.applyDefaults(config,{url:capabilities.operationsMetadata.GetTile.dcp.http.get,name:layerDef.title,style:style,matrixIds:matrixSet.matrixIds}));}\nreturn layer;},CLASS_NAME:\"OpenLayers.Format.WMTSCapabilities\"});OpenLayers.Handler.Click=OpenLayers.Class(OpenLayers.Handler,{delay:300,single:true,'double':false,pixelTolerance:0,stopSingle:false,stopDouble:false,timerId:null,down:null,rightclickTimerId:null,initialize:function(control,callbacks,options){OpenLayers.Handler.prototype.initialize.apply(this,arguments);if(this.pixelTolerance!=null){this.mousedown=function(evt){this.down=evt.xy;return true;};}},mousedown:null,mouseup:function(evt){var propagate=true;if(this.checkModifiers(evt)&&this.control.handleRightClicks&&OpenLayers.Event.isRightClick(evt)){propagate=this.rightclick(evt);}\nreturn propagate;},rightclick:function(evt){if(this.passesTolerance(evt)){if(this.rightclickTimerId!=null){this.clearTimer();this.callback('dblrightclick',[evt]);return!this.stopDouble;}else{var clickEvent=this['double']?OpenLayers.Util.extend({},evt):this.callback('rightclick',[evt]);var delayedRightCall=OpenLayers.Function.bind(this.delayedRightCall,this,clickEvent);this.rightclickTimerId=window.setTimeout(delayedRightCall,this.delay);}}\nreturn!this.stopSingle;},delayedRightCall:function(evt){this.rightclickTimerId=null;if(evt){this.callback('rightclick',[evt]);}\nreturn!this.stopSingle;},dblclick:function(evt){if(this.passesTolerance(evt)){if(this[\"double\"]){this.callback('dblclick',[evt]);}\nthis.clearTimer();}\nreturn!this.stopDouble;},click:function(evt){if(this.passesTolerance(evt)){if(this.timerId!=null){this.clearTimer();}else{var clickEvent=this.single?OpenLayers.Util.extend({},evt):null;this.timerId=window.setTimeout(OpenLayers.Function.bind(this.delayedCall,this,clickEvent),this.delay);}}\nreturn!this.stopSingle;},passesTolerance:function(evt){var passes=true;if(this.pixelTolerance!=null&&this.down){var dpx=Math.sqrt(Math.pow(this.down.x-evt.xy.x,2)+\nMath.pow(this.down.y-evt.xy.y,2));if(dpx>this.pixelTolerance){passes=false;}}\nreturn passes;},clearTimer:function(){if(this.timerId!=null){window.clearTimeout(this.timerId);this.timerId=null;}\nif(this.rightclickTimerId!=null){window.clearTimeout(this.rightclickTimerId);this.rightclickTimerId=null;}},delayedCall:function(evt){this.timerId=null;if(evt){this.callback('click',[evt]);}},deactivate:function(){var deactivated=false;if(OpenLayers.Handler.prototype.deactivate.apply(this,arguments)){this.clearTimer();this.down=null;deactivated=true;}\nreturn deactivated;},CLASS_NAME:\"OpenLayers.Handler.Click\"});OpenLayers.Handler.Drag=OpenLayers.Class(OpenLayers.Handler,{started:false,stopDown:true,dragging:false,last:null,start:null,oldOnselectstart:null,interval:0,timeoutId:null,documentDrag:false,documentEvents:null,initialize:function(control,callbacks,options){OpenLayers.Handler.prototype.initialize.apply(this,arguments);},down:function(evt){},move:function(evt){},up:function(evt){},out:function(evt){},mousedown:function(evt){var propagate=true;this.dragging=false;if(this.checkModifiers(evt)&&OpenLayers.Event.isLeftClick(evt)){this.started=true;this.start=evt.xy;this.last=evt.xy;OpenLayers.Element.addClass(this.map.viewPortDiv,\"olDragDown\");this.down(evt);this.callback(\"down\",[evt.xy]);OpenLayers.Event.stop(evt);if(!this.oldOnselectstart){this.oldOnselectstart=(document.onselectstart)?document.onselectstart:OpenLayers.Function.True;}\ndocument.onselectstart=OpenLayers.Function.False;propagate=!this.stopDown;}else{this.started=false;this.start=null;this.last=null;}\nreturn propagate;},mousemove:function(evt){if(this.started&&!this.timeoutId&&(evt.xy.x!=this.last.x||evt.xy.y!=this.last.y)){if(this.documentDrag===true&&this.documentEvents){if(evt.element===document){this.adjustXY(evt);this.setEvent(evt);}else{this.destroyDocumentEvents();}}\nif(this.interval>0){this.timeoutId=setTimeout(OpenLayers.Function.bind(this.removeTimeout,this),this.interval);}\nthis.dragging=true;this.move(evt);this.callback(\"move\",[evt.xy]);if(!this.oldOnselectstart){this.oldOnselectstart=document.onselectstart;document.onselectstart=OpenLayers.Function.False;}\nthis.last=this.evt.xy;}\nreturn true;},removeTimeout:function(){this.timeoutId=null;},mouseup:function(evt){if(this.started){if(this.documentDrag===true&&this.documentEvents){this.adjustXY(evt);this.destroyDocumentEvents();}\nvar dragged=(this.start!=this.last);this.started=false;this.dragging=false;OpenLayers.Element.removeClass(this.map.viewPortDiv,\"olDragDown\");this.up(evt);this.callback(\"up\",[evt.xy]);if(dragged){this.callback(\"done\",[evt.xy]);}\ndocument.onselectstart=this.oldOnselectstart;}\nreturn true;},mouseout:function(evt){if(this.started&&OpenLayers.Util.mouseLeft(evt,this.map.div)){if(this.documentDrag===true){this.documentEvents=new OpenLayers.Events(this,document,null,null,{includeXY:true});this.documentEvents.on({mousemove:this.mousemove,mouseup:this.mouseup});OpenLayers.Element.addClass(document.body,\"olDragDown\");}else{var dragged=(this.start!=this.last);this.started=false;this.dragging=false;OpenLayers.Element.removeClass(this.map.viewPortDiv,\"olDragDown\");this.out(evt);this.callback(\"out\",[]);if(dragged){this.callback(\"done\",[evt.xy]);}\nif(document.onselectstart){document.onselectstart=this.oldOnselectstart;}}}\nreturn true;},click:function(evt){return(this.start==this.last);},activate:function(){var activated=false;if(OpenLayers.Handler.prototype.activate.apply(this,arguments)){this.dragging=false;activated=true;}\nreturn activated;},deactivate:function(){var deactivated=false;if(OpenLayers.Handler.prototype.deactivate.apply(this,arguments)){this.started=false;this.dragging=false;this.start=null;this.last=null;deactivated=true;OpenLayers.Element.removeClass(this.map.viewPortDiv,\"olDragDown\");}\nreturn deactivated;},adjustXY:function(evt){var pos=OpenLayers.Util.pagePosition(this.map.div);evt.xy.x-=pos[0];evt.xy.y-=pos[1];},destroyDocumentEvents:function(){OpenLayers.Element.removeClass(document.body,\"olDragDown\");this.documentEvents.destroy();this.documentEvents=null;},CLASS_NAME:\"OpenLayers.Handler.Drag\"});OpenLayers.Handler.Feature=OpenLayers.Class(OpenLayers.Handler,{EVENTMAP:{'click':{'in':'click','out':'clickout'},'mousemove':{'in':'over','out':'out'},'dblclick':{'in':'dblclick','out':null},'mousedown':{'in':null,'out':null},'mouseup':{'in':null,'out':null}},feature:null,lastFeature:null,down:null,up:null,clickTolerance:4,geometryTypes:null,stopClick:true,stopDown:true,stopUp:false,initialize:function(control,layer,callbacks,options){OpenLayers.Handler.prototype.initialize.apply(this,[control,callbacks,options]);this.layer=layer;},mousedown:function(evt){this.down=evt.xy;return this.handle(evt)?!this.stopDown:true;},mouseup:function(evt){this.up=evt.xy;return this.handle(evt)?!this.stopUp:true;},click:function(evt){return this.handle(evt)?!this.stopClick:true;},mousemove:function(evt){if(!this.callbacks['over']&&!this.callbacks['out']){return true;}\nthis.handle(evt);return true;},dblclick:function(evt){return!this.handle(evt);},geometryTypeMatches:function(feature){return this.geometryTypes==null||OpenLayers.Util.indexOf(this.geometryTypes,feature.geometry.CLASS_NAME)>-1;},handle:function(evt){if(this.feature&&!this.feature.layer){this.feature=null;}\nvar type=evt.type;var handled=false;var previouslyIn=!!(this.feature);var click=(type==\"click\"||type==\"dblclick\");this.feature=this.layer.getFeatureFromEvent(evt);if(this.feature&&!this.feature.layer){this.feature=null;}\nif(this.lastFeature&&!this.lastFeature.layer){this.lastFeature=null;}\nif(this.feature){var inNew=(this.feature!=this.lastFeature);if(this.geometryTypeMatches(this.feature)){if(previouslyIn&&inNew){if(this.lastFeature){this.triggerCallback(type,'out',[this.lastFeature]);}\nthis.triggerCallback(type,'in',[this.feature]);}else if(!previouslyIn||click){this.triggerCallback(type,'in',[this.feature]);}\nthis.lastFeature=this.feature;handled=true;}else{if(this.lastFeature&&(previouslyIn&&inNew||click)){this.triggerCallback(type,'out',[this.lastFeature]);}\nthis.feature=null;}}else{if(this.lastFeature&&(previouslyIn||click)){this.triggerCallback(type,'out',[this.lastFeature]);}}\nreturn handled;},triggerCallback:function(type,mode,args){var key=this.EVENTMAP[type][mode];if(key){if(type=='click'&&this.up&&this.down){var dpx=Math.sqrt(Math.pow(this.up.x-this.down.x,2)+\nMath.pow(this.up.y-this.down.y,2));if(dpx<=this.clickTolerance){this.callback(key,args);}}else{this.callback(key,args);}}},activate:function(){var activated=false;if(OpenLayers.Handler.prototype.activate.apply(this,arguments)){this.moveLayerToTop();this.map.events.on({\"removelayer\":this.handleMapEvents,\"changelayer\":this.handleMapEvents,scope:this});activated=true;}\nreturn activated;},deactivate:function(){var deactivated=false;if(OpenLayers.Handler.prototype.deactivate.apply(this,arguments)){this.moveLayerBack();this.feature=null;this.lastFeature=null;this.down=null;this.up=null;this.map.events.un({\"removelayer\":this.handleMapEvents,\"changelayer\":this.handleMapEvents,scope:this});deactivated=true;}\nreturn deactivated;},handleMapEvents:function(evt){if(!evt.property||evt.property==\"order\"){this.moveLayerToTop();}},moveLayerToTop:function(){var index=Math.max(this.map.Z_INDEX_BASE['Feature']-1,this.layer.getZIndex())+1;this.layer.setZIndex(index);},moveLayerBack:function(){var index=this.layer.getZIndex()-1;if(index>=this.map.Z_INDEX_BASE['Feature']){this.layer.setZIndex(index);}else{this.map.setLayerZIndex(this.layer,this.map.getLayerIndex(this.layer));}},CLASS_NAME:\"OpenLayers.Handler.Feature\"});OpenLayers.Handler.Hover=OpenLayers.Class(OpenLayers.Handler,{delay:500,pixelTolerance:null,stopMove:false,px:null,timerId:null,initialize:function(control,callbacks,options){OpenLayers.Handler.prototype.initialize.apply(this,arguments);},mousemove:function(evt){if(this.passesTolerance(evt.xy)){this.clearTimer();this.callback('move',[evt]);this.px=evt.xy;evt=OpenLayers.Util.extend({},evt);this.timerId=window.setTimeout(OpenLayers.Function.bind(this.delayedCall,this,evt),this.delay);}\nreturn!this.stopMove;},mouseout:function(evt){if(OpenLayers.Util.mouseLeft(evt,this.map.div)){this.clearTimer();this.callback('move',[evt]);}\nreturn true;},passesTolerance:function(px){var passes=true;if(this.pixelTolerance&&this.px){var dpx=Math.sqrt(Math.pow(this.px.x-px.x,2)+\nMath.pow(this.px.y-px.y,2));if(dpx<this.pixelTolerance){passes=false;}}\nreturn passes;},clearTimer:function(){if(this.timerId!=null){window.clearTimeout(this.timerId);this.timerId=null;}},delayedCall:function(evt){this.callback('pause',[evt]);},deactivate:function(){var deactivated=false;if(OpenLayers.Handler.prototype.deactivate.apply(this,arguments)){this.clearTimer();deactivated=true;}\nreturn deactivated;},CLASS_NAME:\"OpenLayers.Handler.Hover\"});OpenLayers.Handler.Keyboard=OpenLayers.Class(OpenLayers.Handler,{KEY_EVENTS:[\"keydown\",\"keyup\"],eventListener:null,initialize:function(control,callbacks,options){OpenLayers.Handler.prototype.initialize.apply(this,arguments);this.eventListener=OpenLayers.Function.bindAsEventListener(this.handleKeyEvent,this);},destroy:function(){this.deactivate();this.eventListener=null;OpenLayers.Handler.prototype.destroy.apply(this,arguments);},activate:function(){if(OpenLayers.Handler.prototype.activate.apply(this,arguments)){for(var i=0,len=this.KEY_EVENTS.length;i<len;i++){OpenLayers.Event.observe(document,this.KEY_EVENTS[i],this.eventListener);}\nreturn true;}else{return false;}},deactivate:function(){var deactivated=false;if(OpenLayers.Handler.prototype.deactivate.apply(this,arguments)){for(var i=0,len=this.KEY_EVENTS.length;i<len;i++){OpenLayers.Event.stopObserving(document,this.KEY_EVENTS[i],this.eventListener);}\ndeactivated=true;}\nreturn deactivated;},handleKeyEvent:function(evt){if(this.checkModifiers(evt)){this.callback(evt.type,[evt]);}},CLASS_NAME:\"OpenLayers.Handler.Keyboard\"});OpenLayers.Handler.MouseWheel=OpenLayers.Class(OpenLayers.Handler,{wheelListener:null,mousePosition:null,interval:0,delta:0,cumulative:true,initialize:function(control,callbacks,options){OpenLayers.Handler.prototype.initialize.apply(this,arguments);this.wheelListener=OpenLayers.Function.bindAsEventListener(this.onWheelEvent,this);},destroy:function(){OpenLayers.Handler.prototype.destroy.apply(this,arguments);this.wheelListener=null;},onWheelEvent:function(e){if(!this.map||!this.checkModifiers(e)){return;}\nvar overScrollableDiv=false;var overLayerDiv=false;var overMapDiv=false;var elem=OpenLayers.Event.element(e);while((elem!=null)&&!overMapDiv&&!overScrollableDiv){if(!overScrollableDiv){try{if(elem.currentStyle){overflow=elem.currentStyle[\"overflow\"];}else{var style=document.defaultView.getComputedStyle(elem,null);var overflow=style.getPropertyValue(\"overflow\");}\noverScrollableDiv=(overflow&&(overflow==\"auto\")||(overflow==\"scroll\"));}catch(err){}}\nif(!overLayerDiv){for(var i=0,len=this.map.layers.length;i<len;i++){if(elem==this.map.layers[i].div||elem==this.map.layers[i].pane){overLayerDiv=true;break;}}}\noverMapDiv=(elem==this.map.div);elem=elem.parentNode;}\nif(!overScrollableDiv&&overMapDiv){if(overLayerDiv){var delta=0;if(!e){e=window.event;}\nif(e.wheelDelta){delta=e.wheelDelta/120;if(window.opera&&window.opera.version()<9.2){delta=-delta;}}else if(e.detail){delta=-e.detail/3;}\nthis.delta=this.delta+delta;if(this.interval){window.clearTimeout(this._timeoutId);this._timeoutId=window.setTimeout(OpenLayers.Function.bind(function(){this.wheelZoom(e);},this),this.interval);}else{this.wheelZoom(e);}}\nOpenLayers.Event.stop(e);}},wheelZoom:function(e){var delta=this.delta;this.delta=0;if(delta){if(this.mousePosition){e.xy=this.mousePosition;}\nif(!e.xy){e.xy=this.map.getPixelFromLonLat(this.map.getCenter());}\nif(delta<0){this.callback(\"down\",[e,this.cumulative?delta:-1]);}else{this.callback(\"up\",[e,this.cumulative?delta:1]);}}},mousemove:function(evt){this.mousePosition=evt.xy;},activate:function(evt){if(OpenLayers.Handler.prototype.activate.apply(this,arguments)){var wheelListener=this.wheelListener;OpenLayers.Event.observe(window,\"DOMMouseScroll\",wheelListener);OpenLayers.Event.observe(window,\"mousewheel\",wheelListener);OpenLayers.Event.observe(document,\"mousewheel\",wheelListener);return true;}else{return false;}},deactivate:function(evt){if(OpenLayers.Handler.prototype.deactivate.apply(this,arguments)){var wheelListener=this.wheelListener;OpenLayers.Event.stopObserving(window,\"DOMMouseScroll\",wheelListener);OpenLayers.Event.stopObserving(window,\"mousewheel\",wheelListener);OpenLayers.Event.stopObserving(document,\"mousewheel\",wheelListener);return true;}else{return false;}},CLASS_NAME:\"OpenLayers.Handler.MouseWheel\"});OpenLayers.Layer=OpenLayers.Class({id:null,name:null,div:null,opacity:null,alwaysInRange:null,EVENT_TYPES:[\"loadstart\",\"loadend\",\"loadcancel\",\"visibilitychanged\",\"move\",\"moveend\"],RESOLUTION_PROPERTIES:['scales','resolutions','maxScale','minScale','maxResolution','minResolution','numZoomLevels','maxZoomLevel'],events:null,map:null,isBaseLayer:false,alpha:false,displayInLayerSwitcher:true,visibility:true,attribution:null,inRange:false,imageSize:null,imageOffset:null,options:null,eventListeners:null,gutter:0,projection:null,units:null,scales:null,resolutions:null,maxExtent:null,minExtent:null,maxResolution:null,minResolution:null,numZoomLevels:null,minScale:null,maxScale:null,displayOutsideMaxExtent:false,wrapDateLine:false,transitionEffect:null,SUPPORTED_TRANSITIONS:['resize'],metadata:{},initialize:function(name,options){this.addOptions(options);this.name=name;if(this.id==null){this.id=OpenLayers.Util.createUniqueID(this.CLASS_NAME+\"_\");this.div=OpenLayers.Util.createDiv(this.id);this.div.style.width=\"100%\";this.div.style.height=\"100%\";this.div.dir=\"ltr\";this.events=new OpenLayers.Events(this,this.div,this.EVENT_TYPES);if(this.eventListeners instanceof Object){this.events.on(this.eventListeners);}}\nif(this.wrapDateLine){this.displayOutsideMaxExtent=true;}},destroy:function(setNewBaseLayer){if(setNewBaseLayer==null){setNewBaseLayer=true;}\nif(this.map!=null){this.map.removeLayer(this,setNewBaseLayer);}\nthis.projection=null;this.map=null;this.name=null;this.div=null;this.options=null;if(this.events){if(this.eventListeners){this.events.un(this.eventListeners);}\nthis.events.destroy();}\nthis.eventListeners=null;this.events=null;},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer(this.name,this.getOptions());}\nOpenLayers.Util.applyDefaults(obj,this);obj.map=null;return obj;},getOptions:function(){var options={};for(var o in this.options){options[o]=this[o];}\nreturn options;},setName:function(newName){if(newName!=this.name){this.name=newName;if(this.map!=null){this.map.events.triggerEvent(\"changelayer\",{layer:this,property:\"name\"});}}},addOptions:function(newOptions){if(this.options==null){this.options={};}\nOpenLayers.Util.extend(this.options,newOptions);OpenLayers.Util.extend(this,newOptions);if(typeof this.projection==\"string\"){this.projection=new OpenLayers.Projection(this.projection);}\nif(this.projection&&this.projection.getUnits()){this.units=this.projection.getUnits();}\nif(this.map){var properties=this.RESOLUTION_PROPERTIES.concat([\"projection\",\"units\",\"minExtent\",\"maxExtent\"]);for(var o in newOptions){if(newOptions.hasOwnProperty(o)&&OpenLayers.Util.indexOf(properties,o)>=0){this.initResolutions();break;}}}},onMapResize:function(){},redraw:function(){var redrawn=false;if(this.map){this.inRange=this.calculateInRange();var extent=this.getExtent();if(extent&&this.inRange&&this.visibility){var zoomChanged=true;this.moveTo(extent,zoomChanged,false);this.events.triggerEvent(\"moveend\",{\"zoomChanged\":zoomChanged});redrawn=true;}}\nreturn redrawn;},moveTo:function(bounds,zoomChanged,dragging){var display=this.visibility;if(!this.isBaseLayer){display=display&&this.inRange;}\nthis.display(display);},setMap:function(map){if(this.map==null){this.map=map;this.maxExtent=this.maxExtent||this.map.maxExtent;this.minExtent=this.minExtent||this.map.minExtent;this.projection=this.projection||this.map.projection;if(typeof this.projection==\"string\"){this.projection=new OpenLayers.Projection(this.projection);}\nthis.units=this.projection.getUnits()||this.units||this.map.units;this.initResolutions();if(!this.isBaseLayer){this.inRange=this.calculateInRange();var show=((this.visibility)&&(this.inRange));this.div.style.display=show?\"\":\"none\";}\nthis.setTileSize();}},afterAdd:function(){},removeMap:function(map){},getImageSize:function(bounds){return(this.imageSize||this.tileSize);},setTileSize:function(size){var tileSize=(size)?size:((this.tileSize)?this.tileSize:this.map.getTileSize());this.tileSize=tileSize;if(this.gutter){this.imageOffset=new OpenLayers.Pixel(-this.gutter,-this.gutter);this.imageSize=new OpenLayers.Size(tileSize.w+(2*this.gutter),tileSize.h+(2*this.gutter));}},getVisibility:function(){return this.visibility;},setVisibility:function(visibility){if(visibility!=this.visibility){this.visibility=visibility;this.display(visibility);this.redraw();if(this.map!=null){this.map.events.triggerEvent(\"changelayer\",{layer:this,property:\"visibility\"});}\nthis.events.triggerEvent(\"visibilitychanged\");}},display:function(display){if(display!=(this.div.style.display!=\"none\")){this.div.style.display=(display&&this.calculateInRange())?\"block\":\"none\";}},calculateInRange:function(){var inRange=false;if(this.alwaysInRange){inRange=true;}else{if(this.map){var resolution=this.map.getResolution();inRange=((resolution>=this.minResolution)&&(resolution<=this.maxResolution));}}\nreturn inRange;},setIsBaseLayer:function(isBaseLayer){if(isBaseLayer!=this.isBaseLayer){this.isBaseLayer=isBaseLayer;if(this.map!=null){this.map.events.triggerEvent(\"changebaselayer\",{layer:this});}}},initResolutions:function(){var i,len;var props={},alwaysInRange=true;for(i=0,len=this.RESOLUTION_PROPERTIES.length;i<len;i++){var p=this.RESOLUTION_PROPERTIES[i];props[p]=this.options[p];if(alwaysInRange&&this.options[p]){alwaysInRange=false;}}\nif(this.alwaysInRange==null){this.alwaysInRange=alwaysInRange;}\nif(props.resolutions==null){props.resolutions=this.resolutionsFromScales(props.scales);}\nif(props.resolutions==null){props.resolutions=this.calculateResolutions(props);}\nif(props.resolutions==null){for(i=0,len=this.RESOLUTION_PROPERTIES.length;i<len;i++){var p=this.RESOLUTION_PROPERTIES[i];props[p]=this.options[p]!=null?this.options[p]:this.map[p];}\nif(props.resolutions==null){props.resolutions=this.resolutionsFromScales(props.scales);}\nif(props.resolutions==null){props.resolutions=this.calculateResolutions(props);}}\nvar maxResolution;if(this.options.maxResolution&&this.options.maxResolution!==\"auto\"){maxResolution=this.options.maxResolution;}\nif(this.options.minScale){maxResolution=OpenLayers.Util.getResolutionFromScale(this.options.minScale,this.units);}\nvar minResolution;if(this.options.minResolution&&this.options.minResolution!==\"auto\"){minResolution=this.options.minResolution;}\nif(this.options.maxScale){minResolution=OpenLayers.Util.getResolutionFromScale(this.options.maxScale,this.units);}\nif(props.resolutions){props.resolutions.sort(function(a,b){return(b-a);});if(!maxResolution){maxResolution=props.resolutions[0];}\nif(!minResolution){var lastIdx=props.resolutions.length-1;minResolution=props.resolutions[lastIdx];}}\nthis.resolutions=props.resolutions;if(this.resolutions){len=this.resolutions.length;this.scales=new Array(len);for(i=0;i<len;i++){this.scales[i]=OpenLayers.Util.getScaleFromResolution(this.resolutions[i],this.units);}\nthis.numZoomLevels=len;}\nthis.minResolution=minResolution;if(minResolution){this.maxScale=OpenLayers.Util.getScaleFromResolution(minResolution,this.units);}\nthis.maxResolution=maxResolution;if(maxResolution){this.minScale=OpenLayers.Util.getScaleFromResolution(maxResolution,this.units);}},resolutionsFromScales:function(scales){if(scales==null){return;}\nvar resolutions,i,len;len=scales.length;resolutions=new Array(len);for(i=0;i<len;i++){resolutions[i]=OpenLayers.Util.getResolutionFromScale(scales[i],this.units);}\nreturn resolutions;},calculateResolutions:function(props){var maxResolution=props.maxResolution;if(props.minScale!=null){maxResolution=OpenLayers.Util.getResolutionFromScale(props.minScale,this.units);}else if(maxResolution==\"auto\"&&this.maxExtent!=null){var viewSize=this.map.getSize();var wRes=this.maxExtent.getWidth()/viewSize.w;var hRes=this.maxExtent.getHeight()/viewSize.h;maxResolution=Math.max(wRes,hRes);}\nvar minResolution=props.minResolution;if(props.maxScale!=null){minResolution=OpenLayers.Util.getResolutionFromScale(props.maxScale,this.units);}else if(props.minResolution==\"auto\"&&this.minExtent!=null){var viewSize=this.map.getSize();var wRes=this.minExtent.getWidth()/viewSize.w;var hRes=this.minExtent.getHeight()/viewSize.h;minResolution=Math.max(wRes,hRes);}\nvar maxZoomLevel=props.maxZoomLevel;var numZoomLevels=props.numZoomLevels;if(typeof minResolution===\"number\"&&typeof maxResolution===\"number\"&&numZoomLevels===undefined){var ratio=maxResolution/minResolution;numZoomLevels=Math.floor(Math.log(ratio)/Math.log(2))+1;}else if(numZoomLevels===undefined&&maxZoomLevel!=null){numZoomLevels=maxZoomLevel+1;}\nif(typeof numZoomLevels!==\"number\"||numZoomLevels<=0||(typeof maxResolution!==\"number\"&&typeof minResolution!==\"number\")){return;}\nvar resolutions=new Array(numZoomLevels);var base=2;if(typeof minResolution==\"number\"&&typeof maxResolution==\"number\"){base=Math.pow((maxResolution/minResolution),(1/(numZoomLevels-1)));}\nvar i;if(typeof maxResolution===\"number\"){for(i=0;i<numZoomLevels;i++){resolutions[i]=maxResolution/Math.pow(base,i);}}else{for(i=0;i<numZoomLevels;i++){resolutions[numZoomLevels-1-i]=minResolution*Math.pow(base,i);}}\nreturn resolutions;},getResolution:function(){var zoom=this.map.getZoom();return this.getResolutionForZoom(zoom);},getExtent:function(){return this.map.calculateBounds();},getZoomForExtent:function(extent,closest){var viewSize=this.map.getSize();var idealResolution=Math.max(extent.getWidth()/viewSize.w,extent.getHeight()/viewSize.h);return this.getZoomForResolution(idealResolution,closest);},getDataExtent:function(){},getResolutionForZoom:function(zoom){zoom=Math.max(0,Math.min(zoom,this.resolutions.length-1));var resolution;if(this.map.fractionalZoom){var low=Math.floor(zoom);var high=Math.ceil(zoom);resolution=this.resolutions[low]-\n((zoom-low)*(this.resolutions[low]-this.resolutions[high]));}else{resolution=this.resolutions[Math.round(zoom)];}\nreturn resolution;},getZoomForResolution:function(resolution,closest){var zoom;if(this.map.fractionalZoom){var lowZoom=0;var highZoom=this.resolutions.length-1;var highRes=this.resolutions[lowZoom];var lowRes=this.resolutions[highZoom];var res;for(var i=0,len=this.resolutions.length;i<len;++i){res=this.resolutions[i];if(res>=resolution){highRes=res;lowZoom=i;}\nif(res<=resolution){lowRes=res;highZoom=i;break;}}\nvar dRes=highRes-lowRes;if(dRes>0){zoom=lowZoom+((highRes-resolution)/dRes);}else{zoom=lowZoom;}}else{var diff;var minDiff=Number.POSITIVE_INFINITY;for(var i=0,len=this.resolutions.length;i<len;i++){if(closest){diff=Math.abs(this.resolutions[i]-resolution);if(diff>minDiff){break;}\nminDiff=diff;}else{if(this.resolutions[i]<resolution){break;}}}\nzoom=Math.max(0,i-1);}\nreturn zoom;},getLonLatFromViewPortPx:function(viewPortPx){var lonlat=null;if(viewPortPx!=null){var size=this.map.getSize();var center=this.map.getCenter();if(center){var res=this.map.getResolution();var delta_x=viewPortPx.x-(size.w/2);var delta_y=viewPortPx.y-(size.h/2);lonlat=new OpenLayers.LonLat(center.lon+delta_x*res,center.lat-delta_y*res);if(this.wrapDateLine){lonlat=lonlat.wrapDateLine(this.maxExtent);}}}\nreturn lonlat;},getViewPortPxFromLonLat:function(lonlat){var px=null;if(lonlat!=null){var resolution=this.map.getResolution();var extent=this.map.getExtent();px=new OpenLayers.Pixel((1/resolution*(lonlat.lon-extent.left)),(1/resolution*(extent.top-lonlat.lat)));}\nreturn px;},setOpacity:function(opacity){if(opacity!=this.opacity){this.opacity=opacity;for(var i=0,len=this.div.childNodes.length;i<len;++i){var element=this.div.childNodes[i].firstChild;OpenLayers.Util.modifyDOMElement(element,null,null,null,null,null,null,opacity);}\nif(this.map!=null){this.map.events.triggerEvent(\"changelayer\",{layer:this,property:\"opacity\"});}}},getZIndex:function(){return this.div.style.zIndex;},setZIndex:function(zIndex){this.div.style.zIndex=zIndex;},adjustBounds:function(bounds){if(this.gutter){var mapGutter=this.gutter*this.map.getResolution();bounds=new OpenLayers.Bounds(bounds.left-mapGutter,bounds.bottom-mapGutter,bounds.right+mapGutter,bounds.top+mapGutter);}\nif(this.wrapDateLine){var wrappingOptions={'rightTolerance':this.getResolution()};bounds=bounds.wrapDateLine(this.maxExtent,wrappingOptions);}\nreturn bounds;},CLASS_NAME:\"OpenLayers.Layer\"});OpenLayers.Marker.Box=OpenLayers.Class(OpenLayers.Marker,{bounds:null,div:null,initialize:function(bounds,borderColor,borderWidth){this.bounds=bounds;this.div=OpenLayers.Util.createDiv();this.div.style.overflow='hidden';this.events=new OpenLayers.Events(this,this.div,null);this.setBorder(borderColor,borderWidth);},destroy:function(){this.bounds=null;this.div=null;OpenLayers.Marker.prototype.destroy.apply(this,arguments);},setBorder:function(color,width){if(!color){color=\"red\";}\nif(!width){width=2;}\nthis.div.style.border=width+\"px solid \"+color;},draw:function(px,sz){OpenLayers.Util.modifyDOMElement(this.div,null,px,sz);return this.div;},onScreen:function(){var onScreen=false;if(this.map){var screenBounds=this.map.getExtent();onScreen=screenBounds.containsBounds(this.bounds,true,true);}\nreturn onScreen;},display:function(display){this.div.style.display=(display)?\"\":\"none\";},CLASS_NAME:\"OpenLayers.Marker.Box\"});(function(){var oXMLHttpRequest=window.XMLHttpRequest;var bGecko=!!window.controllers,bIE=window.document.all&&!window.opera,bIE7=bIE&&window.navigator.userAgent.match(/MSIE ([\\.0-9]+)/)&&RegExp.$1==7;function cXMLHttpRequest(){this._object=oXMLHttpRequest&&!bIE7?new oXMLHttpRequest:new window.ActiveXObject(\"Microsoft.XMLHTTP\");this._listeners=[];};if(bGecko&&oXMLHttpRequest.wrapped)\ncXMLHttpRequest.wrapped=oXMLHttpRequest.wrapped;cXMLHttpRequest.UNSENT=0;cXMLHttpRequest.OPENED=1;cXMLHttpRequest.HEADERS_RECEIVED=2;cXMLHttpRequest.LOADING=3;cXMLHttpRequest.DONE=4;cXMLHttpRequest.prototype.readyState=cXMLHttpRequest.UNSENT;cXMLHttpRequest.prototype.responseText='';cXMLHttpRequest.prototype.responseXML=null;cXMLHttpRequest.prototype.status=0;cXMLHttpRequest.prototype.statusText='';cXMLHttpRequest.prototype.onreadystatechange=null;cXMLHttpRequest.onreadystatechange=null;cXMLHttpRequest.onopen=null;cXMLHttpRequest.onsend=null;cXMLHttpRequest.onabort=null;cXMLHttpRequest.prototype.open=function(sMethod,sUrl,bAsync,sUser,sPassword){delete this._headers;if(arguments.length<3)\nbAsync=true;this._async=bAsync;var oRequest=this,nState=this.readyState,fOnUnload;if(bIE&&bAsync){fOnUnload=function(){if(nState!=cXMLHttpRequest.DONE){fCleanTransport(oRequest);oRequest.abort();}};window.attachEvent(\"onunload\",fOnUnload);}\nif(cXMLHttpRequest.onopen)\ncXMLHttpRequest.onopen.apply(this,arguments);if(arguments.length>4)\nthis._object.open(sMethod,sUrl,bAsync,sUser,sPassword);else\nif(arguments.length>3)\nthis._object.open(sMethod,sUrl,bAsync,sUser);else\nthis._object.open(sMethod,sUrl,bAsync);if(!bGecko&&!bIE){this.readyState=cXMLHttpRequest.OPENED;fReadyStateChange(this);}\nthis._object.onreadystatechange=function(){if(bGecko&&!bAsync)\nreturn;oRequest.readyState=oRequest._object.readyState;fSynchronizeValues(oRequest);if(oRequest._aborted){oRequest.readyState=cXMLHttpRequest.UNSENT;return;}\nif(oRequest.readyState==cXMLHttpRequest.DONE){fCleanTransport(oRequest);if(bIE&&bAsync)\nwindow.detachEvent(\"onunload\",fOnUnload);}\nif(nState!=oRequest.readyState)\nfReadyStateChange(oRequest);nState=oRequest.readyState;}};cXMLHttpRequest.prototype.send=function(vData){if(cXMLHttpRequest.onsend)\ncXMLHttpRequest.onsend.apply(this,arguments);if(vData&&vData.nodeType){vData=window.XMLSerializer?new window.XMLSerializer().serializeToString(vData):vData.xml;if(!this._headers[\"Content-Type\"])\nthis._object.setRequestHeader(\"Content-Type\",\"application/xml\");}\nthis._object.send(vData);if(bGecko&&!this._async){this.readyState=cXMLHttpRequest.OPENED;fSynchronizeValues(this);while(this.readyState<cXMLHttpRequest.DONE){this.readyState++;fReadyStateChange(this);if(this._aborted)\nreturn;}}};cXMLHttpRequest.prototype.abort=function(){if(cXMLHttpRequest.onabort)\ncXMLHttpRequest.onabort.apply(this,arguments);if(this.readyState>cXMLHttpRequest.UNSENT)\nthis._aborted=true;this._object.abort();fCleanTransport(this);};cXMLHttpRequest.prototype.getAllResponseHeaders=function(){return this._object.getAllResponseHeaders();};cXMLHttpRequest.prototype.getResponseHeader=function(sName){return this._object.getResponseHeader(sName);};cXMLHttpRequest.prototype.setRequestHeader=function(sName,sValue){if(!this._headers)\nthis._headers={};this._headers[sName]=sValue;return this._object.setRequestHeader(sName,sValue);};cXMLHttpRequest.prototype.addEventListener=function(sName,fHandler,bUseCapture){for(var nIndex=0,oListener;oListener=this._listeners[nIndex];nIndex++)\nif(oListener[0]==sName&&oListener[1]==fHandler&&oListener[2]==bUseCapture)\nreturn;this._listeners.push([sName,fHandler,bUseCapture]);};cXMLHttpRequest.prototype.removeEventListener=function(sName,fHandler,bUseCapture){for(var nIndex=0,oListener;oListener=this._listeners[nIndex];nIndex++)\nif(oListener[0]==sName&&oListener[1]==fHandler&&oListener[2]==bUseCapture)\nbreak;if(oListener)\nthis._listeners.splice(nIndex,1);};cXMLHttpRequest.prototype.dispatchEvent=function(oEvent){var oEventPseudo={'type':oEvent.type,'target':this,'currentTarget':this,'eventPhase':2,'bubbles':oEvent.bubbles,'cancelable':oEvent.cancelable,'timeStamp':oEvent.timeStamp,'stopPropagation':function(){},'preventDefault':function(){},'initEvent':function(){}};if(oEventPseudo.type==\"readystatechange\"&&this.onreadystatechange)\n(this.onreadystatechange.handleEvent||this.onreadystatechange).apply(this,[oEventPseudo]);for(var nIndex=0,oListener;oListener=this._listeners[nIndex];nIndex++)\nif(oListener[0]==oEventPseudo.type&&!oListener[2])\n(oListener[1].handleEvent||oListener[1]).apply(this,[oEventPseudo]);};cXMLHttpRequest.prototype.toString=function(){return'['+\"object\"+' '+\"XMLHttpRequest\"+']';};cXMLHttpRequest.toString=function(){return'['+\"XMLHttpRequest\"+']';};function fReadyStateChange(oRequest){if(cXMLHttpRequest.onreadystatechange)\ncXMLHttpRequest.onreadystatechange.apply(oRequest);oRequest.dispatchEvent({'type':\"readystatechange\",'bubbles':false,'cancelable':false,'timeStamp':new Date+0});};function fGetDocument(oRequest){var oDocument=oRequest.responseXML,sResponse=oRequest.responseText;if(bIE&&sResponse&&oDocument&&!oDocument.documentElement&&oRequest.getResponseHeader(\"Content-Type\").match(/[^\\/]+\\/[^\\+]+\\+xml/)){oDocument=new window.ActiveXObject(\"Microsoft.XMLDOM\");oDocument.async=false;oDocument.validateOnParse=false;oDocument.loadXML(sResponse);}\nif(oDocument)\nif((bIE&&oDocument.parseError!=0)||!oDocument.documentElement||(oDocument.documentElement&&oDocument.documentElement.tagName==\"parsererror\"))\nreturn null;return oDocument;};function fSynchronizeValues(oRequest){try{oRequest.responseText=oRequest._object.responseText;}catch(e){}\ntry{oRequest.responseXML=fGetDocument(oRequest._object);}catch(e){}\ntry{oRequest.status=oRequest._object.status;}catch(e){}\ntry{oRequest.statusText=oRequest._object.statusText;}catch(e){}};function fCleanTransport(oRequest){oRequest._object.onreadystatechange=new window.Function;};if(!window.Function.prototype.apply){window.Function.prototype.apply=function(oRequest,oArguments){if(!oArguments)\noArguments=[];oRequest.__func=this;oRequest.__func(oArguments[0],oArguments[1],oArguments[2],oArguments[3],oArguments[4]);delete oRequest.__func;};};OpenLayers.Request.XMLHttpRequest=cXMLHttpRequest;})();OpenLayers.Tile.Image.IFrame=OpenLayers.Class(OpenLayers.Tile.Image,{initialize:function(layer,position,bounds,url,size){OpenLayers.Tile.Image.prototype.initialize.apply(this,arguments);this.layerAlphaHack=false;},destroy:function(){if(this.imgDiv!=null){OpenLayers.Event.stopObservingElement(this.imgDiv.firstChild);}\nOpenLayers.Tile.Image.prototype.destroy.apply(this,arguments);},clear:function(){if(this.imgDiv){var iFrame=this.imgDiv.firstChild;OpenLayers.Event.stopObservingElement(iFrame);this.imgDiv.removeChild(iFrame);}},clone:function(obj){if(obj==null){obj=new OpenLayers.Tile.Image.IFrame(this.layer,this.position,this.bounds,this.url,this.size);}\nobj=OpenLayers.Tile.Image.prototype.clone.apply(this,[obj]);return obj;},renderTile:function(){if(OpenLayers.Tile.Image.prototype.renderTile.apply(this,arguments)){var form=this.createRequestForm();this.imgDiv.appendChild(form);form.submit();this.imgDiv.removeChild(form);}},initImgDiv:function(){this.imgDiv=this.createImgDiv();OpenLayers.Util.modifyDOMElement(this.imgDiv,this.id,null,this.layer.getImageSize(),\"relative\");this.imgDiv.className='olTileImage';this.frame.appendChild(this.imgDiv);this.layer.div.appendChild(this.frame);if(this.layer.opacity!=null){OpenLayers.Util.modifyDOMElement(this.imgDiv,null,null,null,null,null,null,this.layer.opacity);}\nthis.imgDiv.map=this.layer.map;},createImgDiv:function(){var eventPane=document.createElement(\"div\");if(OpenLayers.Util.getBrowserName()==\"msie\"){eventPane.style.backgroundColor='#FFFFFF';eventPane.style.filter='chroma(color=#FFFFFF)';}\nOpenLayers.Util.modifyDOMElement(eventPane,null,new OpenLayers.Pixel(0,0),this.layer.getImageSize(),\"absolute\");var imgDiv=document.createElement(\"div\");imgDiv.appendChild(eventPane);return imgDiv;},createIFrame:function(){var id=this.id+'_iFrame';var iframe;if(OpenLayers.Util.getBrowserName()==\"msie\"){iframe=document.createElement('<iframe name=\"'+id+'\">');iframe.style.backgroundColor='#FFFFFF';iframe.style.filter='chroma(color=#FFFFFF)';}\nelse{iframe=document.createElement('iframe');iframe.style.backgroundColor='transparent';iframe.name=id;}\niframe.id=id;iframe.scrolling='no';iframe.marginWidth='0px';iframe.marginHeight='0px';iframe.frameBorder='0';OpenLayers.Util.modifyDOMElement(iframe,id,new OpenLayers.Pixel(0,0),this.layer.getImageSize(),\"absolute\");var onload=function(){this.show();if(this.isLoading){this.isLoading=false;this.events.triggerEvent(\"loadend\");}};OpenLayers.Event.observe(iframe,'load',OpenLayers.Function.bind(onload,this));return iframe;},createRequestForm:function(){var form=document.createElement('form');form.method='POST';var cacheId=this.layer.params[\"_OLSALT\"];cacheId=(cacheId?cacheId+\"_\":\"\")+this.bounds.toBBOX();form.action=OpenLayers.Util.urlAppend(this.layer.url,cacheId);this.imgDiv.insertBefore(this.createIFrame(),this.imgDiv.firstChild);form.target=this.id+'_iFrame';var imageSize=this.layer.getImageSize();var params=OpenLayers.Util.extend({\"BBOX\":this.encodeBBOX?this.bounds.toBBOX():this.bounds.toArray(),\"WIDTH\":imageSize.w,\"HEIGHT\":imageSize.h},this.layer.params);for(var par in params){var field=document.createElement('input');field.type='hidden';field.name=par;field.value=params[par];form.appendChild(field);}\nreturn form;},CLASS_NAME:\"OpenLayers.Tile.Image.IFrame\"});OpenLayers.ProxyHost=\"\";OpenLayers.nullHandler=function(request){OpenLayers.Console.userError(OpenLayers.i18n(\"unhandledRequest\",{'statusText':request.statusText}));};OpenLayers.loadURL=function(uri,params,caller,onComplete,onFailure){if(typeof params=='string'){params=OpenLayers.Util.getParameters(params);}\nvar success=(onComplete)?onComplete:OpenLayers.nullHandler;var failure=(onFailure)?onFailure:OpenLayers.nullHandler;return OpenLayers.Request.GET({url:uri,params:params,success:success,failure:failure,scope:caller});};OpenLayers.parseXMLString=function(text){var index=text.indexOf('<');if(index>0){text=text.substring(index);}\nvar ajaxResponse=OpenLayers.Util.Try(function(){var xmldom=new ActiveXObject('Microsoft.XMLDOM');xmldom.loadXML(text);return xmldom;},function(){return new DOMParser().parseFromString(text,'text/xml');},function(){var req=new XMLHttpRequest();req.open(\"GET\",\"data:\"+\"text/xml\"+\";charset=utf-8,\"+encodeURIComponent(text),false);if(req.overrideMimeType){req.overrideMimeType(\"text/xml\");}\nreq.send(null);return req.responseXML;});return ajaxResponse;};OpenLayers.Ajax={emptyFunction:function(){},getTransport:function(){return OpenLayers.Util.Try(function(){return new XMLHttpRequest();},function(){return new ActiveXObject('Msxml2.XMLHTTP');},function(){return new ActiveXObject('Microsoft.XMLHTTP');})||false;},activeRequestCount:0};OpenLayers.Ajax.Responders={responders:[],register:function(responderToAdd){for(var i=0;i<this.responders.length;i++){if(responderToAdd==this.responders[i]){return;}}\nthis.responders.push(responderToAdd);},unregister:function(responderToRemove){OpenLayers.Util.removeItem(this.reponders,responderToRemove);},dispatch:function(callback,request,transport){var responder;for(var i=0;i<this.responders.length;i++){responder=this.responders[i];if(responder[callback]&&typeof responder[callback]=='function'){try{responder[callback].apply(responder,[request,transport]);}catch(e){}}}}};OpenLayers.Ajax.Responders.register({onCreate:function(){OpenLayers.Ajax.activeRequestCount++;},onComplete:function(){OpenLayers.Ajax.activeRequestCount--;}});OpenLayers.Ajax.Base=OpenLayers.Class({initialize:function(options){this.options={method:'post',asynchronous:true,contentType:'application/xml',parameters:''};OpenLayers.Util.extend(this.options,options||{});this.options.method=this.options.method.toLowerCase();if(typeof this.options.parameters=='string'){this.options.parameters=OpenLayers.Util.getParameters(this.options.parameters);}}});OpenLayers.Ajax.Request=OpenLayers.Class(OpenLayers.Ajax.Base,{_complete:false,initialize:function(url,options){OpenLayers.Ajax.Base.prototype.initialize.apply(this,[options]);if(OpenLayers.ProxyHost&&OpenLayers.String.startsWith(url,\"http\")){url=OpenLayers.ProxyHost+encodeURIComponent(url);}\nthis.transport=OpenLayers.Ajax.getTransport();this.request(url);},request:function(url){this.url=url;this.method=this.options.method;var params=OpenLayers.Util.extend({},this.options.parameters);if(this.method!='get'&&this.method!='post'){params['_method']=this.method;this.method='post';}\nthis.parameters=params;if(params=OpenLayers.Util.getParameterString(params)){if(this.method=='get'){this.url+=((this.url.indexOf('?')>-1)?'&':'?')+params;}else if(/Konqueror|Safari|KHTML/.test(navigator.userAgent)){params+='&_=';}}\ntry{var response=new OpenLayers.Ajax.Response(this);if(this.options.onCreate){this.options.onCreate(response);}\nOpenLayers.Ajax.Responders.dispatch('onCreate',this,response);this.transport.open(this.method.toUpperCase(),this.url,this.options.asynchronous);if(this.options.asynchronous){window.setTimeout(OpenLayers.Function.bind(this.respondToReadyState,this,1),10);}\nthis.transport.onreadystatechange=OpenLayers.Function.bind(this.onStateChange,this);this.setRequestHeaders();this.body=this.method=='post'?(this.options.postBody||params):null;this.transport.send(this.body);if(!this.options.asynchronous&&this.transport.overrideMimeType){this.onStateChange();}}catch(e){this.dispatchException(e);}},onStateChange:function(){var readyState=this.transport.readyState;if(readyState>1&&!((readyState==4)&&this._complete)){this.respondToReadyState(this.transport.readyState);}},setRequestHeaders:function(){var headers={'X-Requested-With':'XMLHttpRequest','Accept':'text/javascript, text/html, application/xml, text/xml, */*','OpenLayers':true};if(this.method=='post'){headers['Content-type']=this.options.contentType+\n(this.options.encoding?'; charset='+this.options.encoding:'');if(this.transport.overrideMimeType&&(navigator.userAgent.match(/Gecko\\/(\\d{4})/)||[0,2005])[1]<2005){headers['Connection']='close';}}\nif(typeof this.options.requestHeaders=='object'){var extras=this.options.requestHeaders;if(typeof extras.push=='function'){for(var i=0,length=extras.length;i<length;i+=2){headers[extras[i]]=extras[i+1];}}else{for(var i in extras){headers[i]=extras[i];}}}\nfor(var name in headers){this.transport.setRequestHeader(name,headers[name]);}},success:function(){var status=this.getStatus();return!status||(status>=200&&status<300);},getStatus:function(){try{return this.transport.status||0;}catch(e){return 0;}},respondToReadyState:function(readyState){var state=OpenLayers.Ajax.Request.Events[readyState];var response=new OpenLayers.Ajax.Response(this);if(state=='Complete'){try{this._complete=true;(this.options['on'+response.status]||this.options['on'+(this.success()?'Success':'Failure')]||OpenLayers.Ajax.emptyFunction)(response);}catch(e){this.dispatchException(e);}\nvar contentType=response.getHeader('Content-type');}\ntry{(this.options['on'+state]||OpenLayers.Ajax.emptyFunction)(response);OpenLayers.Ajax.Responders.dispatch('on'+state,this,response);}catch(e){this.dispatchException(e);}\nif(state=='Complete'){this.transport.onreadystatechange=OpenLayers.Ajax.emptyFunction;}},getHeader:function(name){try{return this.transport.getResponseHeader(name);}catch(e){return null;}},dispatchException:function(exception){var handler=this.options.onException;if(handler){handler(this,exception);OpenLayers.Ajax.Responders.dispatch('onException',this,exception);}else{var listener=false;var responders=OpenLayers.Ajax.Responders.responders;for(var i=0;i<responders.length;i++){if(responders[i].onException){listener=true;break;}}\nif(listener){OpenLayers.Ajax.Responders.dispatch('onException',this,exception);}else{throw exception;}}}});OpenLayers.Ajax.Request.Events=['Uninitialized','Loading','Loaded','Interactive','Complete'];OpenLayers.Ajax.Response=OpenLayers.Class({status:0,statusText:'',initialize:function(request){this.request=request;var transport=this.transport=request.transport,readyState=this.readyState=transport.readyState;if((readyState>2&&!(!!(window.attachEvent&&!window.opera)))||readyState==4){this.status=this.getStatus();this.statusText=this.getStatusText();this.responseText=transport.responseText==null?'':String(transport.responseText);}\nif(readyState==4){var xml=transport.responseXML;this.responseXML=xml===undefined?null:xml;}},getStatus:OpenLayers.Ajax.Request.prototype.getStatus,getStatusText:function(){try{return this.transport.statusText||'';}catch(e){return'';}},getHeader:OpenLayers.Ajax.Request.prototype.getHeader,getResponseHeader:function(name){return this.transport.getResponseHeader(name);}});OpenLayers.Ajax.getElementsByTagNameNS=function(parentnode,nsuri,nsprefix,tagname){var elem=null;if(parentnode.getElementsByTagNameNS){elem=parentnode.getElementsByTagNameNS(nsuri,tagname);}else{elem=parentnode.getElementsByTagName(nsprefix+':'+tagname);}\nreturn elem;};OpenLayers.Ajax.serializeXMLToString=function(xmldom){var serializer=new XMLSerializer();var data=serializer.serializeToString(xmldom);return data;};OpenLayers.Control.DragFeature=OpenLayers.Class(OpenLayers.Control,{geometryTypes:null,onStart:function(feature,pixel){},onDrag:function(feature,pixel){},onComplete:function(feature,pixel){},documentDrag:false,layer:null,feature:null,dragCallbacks:{},featureCallbacks:{},lastPixel:null,initialize:function(layer,options){OpenLayers.Control.prototype.initialize.apply(this,[options]);this.layer=layer;this.handlers={drag:new OpenLayers.Handler.Drag(this,OpenLayers.Util.extend({down:this.downFeature,move:this.moveFeature,up:this.upFeature,out:this.cancel,done:this.doneDragging},this.dragCallbacks),{documentDrag:this.documentDrag}),feature:new OpenLayers.Handler.Feature(this,this.layer,OpenLayers.Util.extend({over:this.overFeature,out:this.outFeature},this.featureCallbacks),{geometryTypes:this.geometryTypes})};},destroy:function(){this.layer=null;OpenLayers.Control.prototype.destroy.apply(this,[]);},activate:function(){return(this.handlers.feature.activate()&&OpenLayers.Control.prototype.activate.apply(this,arguments));},deactivate:function(){this.handlers.drag.deactivate();this.handlers.feature.deactivate();this.feature=null;this.dragging=false;this.lastPixel=null;OpenLayers.Element.removeClass(this.map.viewPortDiv,this.displayClass+\"Over\");return OpenLayers.Control.prototype.deactivate.apply(this,arguments);},overFeature:function(feature){if(!this.handlers.drag.dragging){this.feature=feature;this.handlers.drag.activate();this.over=true;OpenLayers.Element.addClass(this.map.viewPortDiv,this.displayClass+\"Over\");}else{if(this.feature.id==feature.id){this.over=true;}else{this.over=false;}}},downFeature:function(pixel){this.lastPixel=pixel;this.onStart(this.feature,pixel);},moveFeature:function(pixel){var res=this.map.getResolution();this.feature.geometry.move(res*(pixel.x-this.lastPixel.x),res*(this.lastPixel.y-pixel.y));this.layer.drawFeature(this.feature);this.lastPixel=pixel;this.onDrag(this.feature,pixel);},upFeature:function(pixel){if(!this.over){this.handlers.drag.deactivate();}},doneDragging:function(pixel){this.onComplete(this.feature,pixel);},outFeature:function(feature){if(!this.handlers.drag.dragging){this.over=false;this.handlers.drag.deactivate();OpenLayers.Element.removeClass(this.map.viewPortDiv,this.displayClass+\"Over\");this.feature=null;}else{if(this.feature.id==feature.id){this.over=false;}}},cancel:function(){this.handlers.drag.deactivate();this.over=false;},setMap:function(map){this.handlers.drag.setMap(map);this.handlers.feature.setMap(map);OpenLayers.Control.prototype.setMap.apply(this,arguments);},CLASS_NAME:\"OpenLayers.Control.DragFeature\"});OpenLayers.Control.DragPan=OpenLayers.Class(OpenLayers.Control,{type:OpenLayers.Control.TYPE_TOOL,panned:false,interval:25,documentDrag:false,draw:function(){this.handler=new OpenLayers.Handler.Drag(this,{\"move\":this.panMap,\"done\":this.panMapDone},{interval:this.interval,documentDrag:this.documentDrag});},panMap:function(xy){this.panned=true;this.map.pan(this.handler.last.x-xy.x,this.handler.last.y-xy.y,{dragging:this.handler.dragging,animate:false});},panMapDone:function(xy){if(this.panned){this.panMap(xy);this.panned=false;}},CLASS_NAME:\"OpenLayers.Control.DragPan\"});OpenLayers.Control.KeyboardDefaults=OpenLayers.Class(OpenLayers.Control,{autoActivate:true,slideFactor:75,initialize:function(){OpenLayers.Control.prototype.initialize.apply(this,arguments);},destroy:function(){if(this.handler){this.handler.destroy();}\nthis.handler=null;OpenLayers.Control.prototype.destroy.apply(this,arguments);},draw:function(){this.handler=new OpenLayers.Handler.Keyboard(this,{\"keydown\":this.defaultKeyPress});},defaultKeyPress:function(evt){switch(evt.keyCode){case OpenLayers.Event.KEY_LEFT:this.map.pan(-this.slideFactor,0);break;case OpenLayers.Event.KEY_RIGHT:this.map.pan(this.slideFactor,0);break;case OpenLayers.Event.KEY_UP:this.map.pan(0,-this.slideFactor);break;case OpenLayers.Event.KEY_DOWN:this.map.pan(0,this.slideFactor);break;case 33:var size=this.map.getSize();this.map.pan(0,-0.75*size.h);break;case 34:var size=this.map.getSize();this.map.pan(0,0.75*size.h);break;case 35:var size=this.map.getSize();this.map.pan(0.75*size.w,0);break;case 36:var size=this.map.getSize();this.map.pan(-0.75*size.w,0);break;case 43:case 61:case 187:case 107:this.map.zoomIn();break;case 45:case 109:case 189:case 95:this.map.zoomOut();break;}},CLASS_NAME:\"OpenLayers.Control.KeyboardDefaults\"});OpenLayers.Control.WMSGetFeatureInfo=OpenLayers.Class(OpenLayers.Control,{hover:false,drillDown:false,maxFeatures:10,clickCallback:\"click\",layers:null,queryVisible:false,url:null,layerUrls:null,infoFormat:'text/html',vendorParams:{},format:null,formatOptions:null,handlerOptions:null,handler:null,hoverRequest:null,EVENT_TYPES:[\"beforegetfeatureinfo\",\"nogetfeatureinfo\",\"getfeatureinfo\"],initialize:function(options){this.EVENT_TYPES=OpenLayers.Control.WMSGetFeatureInfo.prototype.EVENT_TYPES.concat(OpenLayers.Control.prototype.EVENT_TYPES);options=options||{};options.handlerOptions=options.handlerOptions||{};OpenLayers.Control.prototype.initialize.apply(this,[options]);if(!this.format){this.format=new OpenLayers.Format.WMSGetFeatureInfo(options.formatOptions);}\nif(this.drillDown===true){this.hover=false;}\nif(this.hover){this.handler=new OpenLayers.Handler.Hover(this,{'move':this.cancelHover,'pause':this.getInfoForHover},OpenLayers.Util.extend(this.handlerOptions.hover||{},{'delay':250}));}else{var callbacks={};callbacks[this.clickCallback]=this.getInfoForClick;this.handler=new OpenLayers.Handler.Click(this,callbacks,this.handlerOptions.click||{});}},activate:function(){if(!this.active){this.handler.activate();}\nreturn OpenLayers.Control.prototype.activate.apply(this,arguments);},deactivate:function(){return OpenLayers.Control.prototype.deactivate.apply(this,arguments);},getInfoForClick:function(evt){this.events.triggerEvent(\"beforegetfeatureinfo\",{xy:evt.xy});OpenLayers.Element.addClass(this.map.viewPortDiv,\"olCursorWait\");this.request(evt.xy,{});},getInfoForHover:function(evt){this.events.triggerEvent(\"beforegetfeatureinfo\",{xy:evt.xy});this.request(evt.xy,{hover:true});},cancelHover:function(){if(this.hoverRequest){this.hoverRequest.abort();this.hoverRequest=null;}},findLayers:function(){var candidates=this.layers||this.map.layers;var layers=[];var layer,url;for(var i=0,len=candidates.length;i<len;++i){layer=candidates[i];if(layer instanceof OpenLayers.Layer.WMS&&(!this.queryVisible||layer.getVisibility())){url=layer.url instanceof Array?layer.url[0]:layer.url;if(this.drillDown===false&&!this.url){this.url=url;}\nif(this.drillDown===true||this.urlMatches(url)){layers.push(layer);}}}\nreturn layers;},urlMatches:function(url){var matches=OpenLayers.Util.isEquivalentUrl(this.url,url);if(!matches&&this.layerUrls){for(var i=0,len=this.layerUrls.length;i<len;++i){if(OpenLayers.Util.isEquivalentUrl(this.layerUrls[i],url)){matches=true;break;}}}\nreturn matches;},buildWMSOptions:function(url,layers,clickPosition,format){var layerNames=[],styleNames=[];for(var i=0,len=layers.length;i<len;i++){layerNames=layerNames.concat(layers[i].params.LAYERS);styleNames=styleNames.concat(this.getStyleNames(layers[i]));}\nvar params=OpenLayers.Util.extend({service:\"WMS\",version:layers[0].params.VERSION,request:\"GetFeatureInfo\",layers:layerNames,query_layers:layerNames,styles:styleNames,bbox:this.map.getExtent().toBBOX(null,layers[0].reverseAxisOrder()),feature_count:this.maxFeatures,height:this.map.getSize().h,width:this.map.getSize().w,format:format,info_format:this.infoFormat},(parseFloat(layers[0].params.VERSION)>=1.3)?{crs:this.map.getProjection(),i:clickPosition.x,j:clickPosition.y}:{srs:this.map.getProjection(),x:clickPosition.x,y:clickPosition.y});OpenLayers.Util.applyDefaults(params,this.vendorParams);return{url:url,params:OpenLayers.Util.upperCaseObject(params),callback:function(request){this.handleResponse(clickPosition,request);},scope:this};},getStyleNames:function(layer){var styleNames;if(layer.params.STYLES){styleNames=layer.params.STYLES;}else{if(layer.params.LAYERS instanceof Array){styleNames=new Array(layer.params.LAYERS.length);}else{styleNames=layer.params.LAYERS.replace(/[^,]/g,\"\");}}\nreturn styleNames;},request:function(clickPosition,options){var layers=this.findLayers();if(layers.length==0){this.events.triggerEvent(\"nogetfeatureinfo\");OpenLayers.Element.removeClass(this.map.viewPortDiv,\"olCursorWait\");return;}\noptions=options||{};if(this.drillDown===false){var wmsOptions=this.buildWMSOptions(this.url,layers,clickPosition,layers[0].params.FORMAT);var request=OpenLayers.Request.GET(wmsOptions);if(options.hover===true){this.hoverRequest=request;}}else{this._requestCount=0;this._numRequests=0;this.features=[];var services={},url;for(var i=0,len=layers.length;i<len;i++){var layer=layers[i];var service,found=false;url=layer.url instanceof Array?layer.url[0]:layer.url;if(url in services){services[url].push(layer);}else{this._numRequests++;services[url]=[layer];}}\nvar layers;for(var url in services){layers=services[url];var wmsOptions=this.buildWMSOptions(url,layers,clickPosition,layers[0].params.FORMAT);OpenLayers.Request.GET(wmsOptions);}}},triggerGetFeatureInfo:function(request,xy,features){this.events.triggerEvent(\"getfeatureinfo\",{text:request.responseText,features:features,request:request,xy:xy});OpenLayers.Element.removeClass(this.map.viewPortDiv,\"olCursorWait\");},handleResponse:function(xy,request){var doc=request.responseXML;if(!doc||!doc.documentElement){doc=request.responseText;}\nvar features=this.format.read(doc);if(this.drillDown===false){this.triggerGetFeatureInfo(request,xy,features);}else{this._requestCount++;this._features=(this._features||[]).concat(features);if(this._requestCount===this._numRequests){this.triggerGetFeatureInfo(request,xy,this._features.concat());delete this._features;delete this._requestCount;delete this._numRequests;}}},CLASS_NAME:\"OpenLayers.Control.WMSGetFeatureInfo\"});OpenLayers.Control.WMTSGetFeatureInfo=OpenLayers.Class(OpenLayers.Control,{hover:false,requestEncoding:\"KVP\",drillDown:false,maxFeatures:10,clickCallback:\"click\",layers:null,queryVisible:true,infoFormat:'text/html',vendorParams:{},format:null,formatOptions:null,handlerOptions:null,handler:null,hoverRequest:null,EVENT_TYPES:[\"beforegetfeatureinfo\",\"getfeatureinfo\",\"exception\"],pending:0,initialize:function(options){this.EVENT_TYPES=OpenLayers.Control.WMTSGetFeatureInfo.prototype.EVENT_TYPES.concat(OpenLayers.Control.prototype.EVENT_TYPES);options=options||{};options.handlerOptions=options.handlerOptions||{};OpenLayers.Control.prototype.initialize.apply(this,[options]);if(!this.format){this.format=new OpenLayers.Format.WMSGetFeatureInfo(options.formatOptions);}\nif(this.drillDown===true){this.hover=false;}\nif(this.hover){this.handler=new OpenLayers.Handler.Hover(this,{move:this.cancelHover,pause:this.getInfoForHover},OpenLayers.Util.extend(this.handlerOptions.hover||{},{delay:250}));}else{var callbacks={};callbacks[this.clickCallback]=this.getInfoForClick;this.handler=new OpenLayers.Handler.Click(this,callbacks,this.handlerOptions.click||{});}},activate:function(){if(!this.active){this.handler.activate();}\nreturn OpenLayers.Control.prototype.activate.apply(this,arguments);},deactivate:function(){return OpenLayers.Control.prototype.deactivate.apply(this,arguments);},getInfoForClick:function(evt){this.request(evt.xy,{});},getInfoForHover:function(evt){this.request(evt.xy,{hover:true});},cancelHover:function(){if(this.hoverRequest){--this.pending;if(this.pending<=0){OpenLayers.Element.removeClass(this.map.viewPortDiv,\"olCursorWait\");this.pending=0;}\nthis.hoverRequest.abort();this.hoverRequest=null;}},findLayers:function(){var candidates=this.layers||this.map.layers;var layers=[];var layer;for(var i=candidates.length-1;i>=0;--i){layer=candidates[i];if(layer instanceof OpenLayers.Layer.WMTS&&layer.requestEncoding===this.requestEncoding&&(!this.queryVisible||layer.getVisibility())){layers.push(layer);if(!this.drillDown||this.hover){break;}}}\nreturn layers;},buildRequestOptions:function(layer,xy){var loc=this.map.getLonLatFromPixel(xy);var getTileUrl=layer.getURL(new OpenLayers.Bounds(loc.lon,loc.lat,loc.lon,loc.lat));var params=OpenLayers.Util.getParameters(getTileUrl);var tileInfo=layer.getTileInfo(loc);OpenLayers.Util.extend(params,{service:\"WMTS\",version:layer.version,request:\"GetFeatureInfo\",infoFormat:this.infoFormat,i:tileInfo.i,j:tileInfo.j});OpenLayers.Util.applyDefaults(params,this.vendorParams);return{url:layer.url instanceof Array?layer.url[0]:layer.url,params:OpenLayers.Util.upperCaseObject(params),callback:function(request){this.handleResponse(xy,request,layer);},scope:this};},request:function(xy,options){options=options||{};var layers=this.findLayers();if(layers.length>0){var issue,layer;for(var i=0,len=layers.length;i<len;i++){layer=layers[i];issue=this.events.triggerEvent(\"beforegetfeatureinfo\",{xy:xy,layer:layer});if(issue!==false){++this.pending;var requestOptions=this.buildRequestOptions(layer,xy);var request=OpenLayers.Request.GET(requestOptions);if(options.hover===true){this.hoverRequest=request;}}}\nif(this.pending>0){OpenLayers.Element.addClass(this.map.viewPortDiv,\"olCursorWait\");}}},handleResponse:function(xy,request,layer){--this.pending;if(this.pending<=0){OpenLayers.Element.removeClass(this.map.viewPortDiv,\"olCursorWait\");this.pending=0;}\nif(request.status&&(request.status<200||request.status>=300)){this.events.triggerEvent(\"exception\",{xy:xy,request:request,layer:layer});}else{var doc=request.responseXML;if(!doc||!doc.documentElement){doc=request.responseText;}\nvar features,except;try{features=this.format.read(doc);}catch(error){except=true;this.events.triggerEvent(\"exception\",{xy:xy,request:request,error:error,layer:layer});}\nif(!except){this.events.triggerEvent(\"getfeatureinfo\",{text:request.responseText,features:features,request:request,xy:xy,layer:layer});}}},setMap:function(map){this.handler.setMap(map);OpenLayers.Control.prototype.setMap.apply(this,arguments);},CLASS_NAME:\"OpenLayers.Control.WMTSGetFeatureInfo\"});OpenLayers.State={UNKNOWN:'Unknown',INSERT:'Insert',UPDATE:'Update',DELETE:'Delete'};OpenLayers.Feature.Vector=OpenLayers.Class(OpenLayers.Feature,{fid:null,geometry:null,attributes:null,bounds:null,state:null,style:null,url:null,renderIntent:\"default\",initialize:function(geometry,attributes,style){OpenLayers.Feature.prototype.initialize.apply(this,[null,null,attributes]);this.lonlat=null;this.geometry=geometry?geometry:null;this.state=null;this.attributes={};if(attributes){this.attributes=OpenLayers.Util.extend(this.attributes,attributes);}\nthis.style=style?style:null;},destroy:function(){if(this.layer){this.layer.removeFeatures(this);this.layer=null;}\nthis.geometry=null;OpenLayers.Feature.prototype.destroy.apply(this,arguments);},clone:function(){return new OpenLayers.Feature.Vector(this.geometry?this.geometry.clone():null,this.attributes,this.style);},onScreen:function(boundsOnly){var onScreen=false;if(this.layer&&this.layer.map){var screenBounds=this.layer.map.getExtent();if(boundsOnly){var featureBounds=this.geometry.getBounds();onScreen=screenBounds.intersectsBounds(featureBounds);}else{var screenPoly=screenBounds.toGeometry();onScreen=screenPoly.intersects(this.geometry);}}\nreturn onScreen;},getVisibility:function(){return!(this.style&&this.style.display=='none'||!this.layer||this.layer&&this.layer.styleMap&&this.layer.styleMap.createSymbolizer(this,this.renderIntent).display=='none'||this.layer&&!this.layer.getVisibility());},createMarker:function(){return null;},destroyMarker:function(){},createPopup:function(){return null;},atPoint:function(lonlat,toleranceLon,toleranceLat){var atPoint=false;if(this.geometry){atPoint=this.geometry.atPoint(lonlat,toleranceLon,toleranceLat);}\nreturn atPoint;},destroyPopup:function(){},move:function(location){if(!this.layer||!this.geometry.move){return;}\nvar pixel;if(location.CLASS_NAME==\"OpenLayers.LonLat\"){pixel=this.layer.getViewPortPxFromLonLat(location);}else{pixel=location;}\nvar lastPixel=this.layer.getViewPortPxFromLonLat(this.geometry.getBounds().getCenterLonLat());var res=this.layer.map.getResolution();this.geometry.move(res*(pixel.x-lastPixel.x),res*(lastPixel.y-pixel.y));this.layer.drawFeature(this);return lastPixel;},toState:function(state){if(state==OpenLayers.State.UPDATE){switch(this.state){case OpenLayers.State.UNKNOWN:case OpenLayers.State.DELETE:this.state=state;break;case OpenLayers.State.UPDATE:case OpenLayers.State.INSERT:break;}}else if(state==OpenLayers.State.INSERT){switch(this.state){case OpenLayers.State.UNKNOWN:break;default:this.state=state;break;}}else if(state==OpenLayers.State.DELETE){switch(this.state){case OpenLayers.State.INSERT:break;case OpenLayers.State.DELETE:break;case OpenLayers.State.UNKNOWN:case OpenLayers.State.UPDATE:this.state=state;break;}}else if(state==OpenLayers.State.UNKNOWN){this.state=state;}},CLASS_NAME:\"OpenLayers.Feature.Vector\"});OpenLayers.Feature.Vector.style={'default':{fillColor:\"#ee9900\",fillOpacity:0.4,hoverFillColor:\"white\",hoverFillOpacity:0.8,strokeColor:\"#ee9900\",strokeOpacity:1,strokeWidth:1,strokeLinecap:\"round\",strokeDashstyle:\"solid\",hoverStrokeColor:\"red\",hoverStrokeOpacity:1,hoverStrokeWidth:0.2,pointRadius:6,hoverPointRadius:1,hoverPointUnit:\"%\",pointerEvents:\"visiblePainted\",cursor:\"inherit\"},'select':{fillColor:\"blue\",fillOpacity:0.4,hoverFillColor:\"white\",hoverFillOpacity:0.8,strokeColor:\"blue\",strokeOpacity:1,strokeWidth:2,strokeLinecap:\"round\",strokeDashstyle:\"solid\",hoverStrokeColor:\"red\",hoverStrokeOpacity:1,hoverStrokeWidth:0.2,pointRadius:6,hoverPointRadius:1,hoverPointUnit:\"%\",pointerEvents:\"visiblePainted\",cursor:\"pointer\"},'temporary':{fillColor:\"#66cccc\",fillOpacity:0.2,hoverFillColor:\"white\",hoverFillOpacity:0.8,strokeColor:\"#66cccc\",strokeOpacity:1,strokeLinecap:\"round\",strokeWidth:2,strokeDashstyle:\"solid\",hoverStrokeColor:\"red\",hoverStrokeOpacity:1,hoverStrokeWidth:0.2,pointRadius:6,hoverPointRadius:1,hoverPointUnit:\"%\",pointerEvents:\"visiblePainted\",cursor:\"inherit\"},'delete':{display:\"none\"}};OpenLayers.Feature.WFS=OpenLayers.Class(OpenLayers.Feature,{initialize:function(layer,xmlNode){var newArguments=arguments;var data=this.processXMLNode(xmlNode);newArguments=new Array(layer,data.lonlat,data);OpenLayers.Feature.prototype.initialize.apply(this,newArguments);this.createMarker();this.layer.addMarker(this.marker);},destroy:function(){if(this.marker!=null){this.layer.removeMarker(this.marker);}\nOpenLayers.Feature.prototype.destroy.apply(this,arguments);},processXMLNode:function(xmlNode){var point=OpenLayers.Ajax.getElementsByTagNameNS(xmlNode,\"http://www.opengis.net/gml\",\"gml\",\"Point\");var text=OpenLayers.Util.getXmlNodeValue(OpenLayers.Ajax.getElementsByTagNameNS(point[0],\"http://www.opengis.net/gml\",\"gml\",\"coordinates\")[0]);var floats=text.split(\",\");return{lonlat:new OpenLayers.LonLat(parseFloat(floats[0]),parseFloat(floats[1])),id:null};},CLASS_NAME:\"OpenLayers.Feature.WFS\"});OpenLayers.Format.OWSCommon.v1_0_0=OpenLayers.Class(OpenLayers.Format.OWSCommon.v1,{namespaces:{ows:\"http://www.opengis.net/ows/1.0\",xlink:\"http://www.w3.org/1999/xlink\"},readers:{\"ows\":OpenLayers.Format.OWSCommon.v1.prototype.readers[\"ows\"]},writers:{\"ows\":OpenLayers.Format.OWSCommon.v1.prototype.writers[\"ows\"]},CLASS_NAME:\"OpenLayers.Format.OWSCommon.v1_1_0\"});OpenLayers.Format.OWSCommon.v1_1_0=OpenLayers.Class(OpenLayers.Format.OWSCommon.v1,{namespaces:{ows:\"http://www.opengis.net/ows/1.1\",xlink:\"http://www.w3.org/1999/xlink\"},readers:{\"ows\":OpenLayers.Util.applyDefaults({\"AllowedValues\":function(node,parameter){parameter.allowedValues={};this.readChildNodes(node,parameter.allowedValues);},\"AnyValue\":function(node,parameter){parameter.anyValue=true;},\"Range\":function(node,allowedValues){allowedValues.range={};this.readChildNodes(node,allowedValues.range);},\"MinimumValue\":function(node,range){range.minValue=this.getChildValue(node);},\"MaximumValue\":function(node,range){range.maxValue=this.getChildValue(node);},\"Identifier\":function(node,obj){obj.identifier=this.getChildValue(node);},\"SupportedCRS\":function(node,obj){obj.supportedCRS=this.getChildValue(node);}},OpenLayers.Format.OWSCommon.v1.prototype.readers[\"ows\"])},CLASS_NAME:\"OpenLayers.Format.OWSCommon.v1_1_0\"});OpenLayers.Format.OWSContext=OpenLayers.Class(OpenLayers.Format.Context,{defaultVersion:\"0.3.1\",getParser:function(version){var v=version||this.version||this.defaultVersion;if(v===\"0.3.0\"){v=this.defaultVersion;}\nif(!this.parser||this.parser.VERSION!=v){var format=OpenLayers.Format.OWSContext[\"v\"+v.replace(/\\./g,\"_\")];if(!format){throw\"Can't find a OWSContext parser for version \"+v;}\nthis.parser=new format(this.options);}\nreturn this.parser;},toContext:function(obj){var context={};if(obj.CLASS_NAME==\"OpenLayers.Map\"){context.bounds=obj.getExtent();context.maxExtent=obj.maxExtent;context.projection=obj.projection;context.size=obj.getSize();context.layers=obj.layers;}\nreturn context;},CLASS_NAME:\"OpenLayers.Format.OWSContext\"});OpenLayers.Format.WFSCapabilities.v1=OpenLayers.Class(OpenLayers.Format.WFSCapabilities,{initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);this.options=options;},read:function(data){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nvar capabilities={};var root=data.documentElement;this.runChildNodes(capabilities,root);return capabilities;},runChildNodes:function(obj,node){var children=node.childNodes;var childNode,processor;for(var i=0;i<children.length;++i){childNode=children[i];if(childNode.nodeType==1){processor=this[\"read_cap_\"+childNode.nodeName];if(processor){processor.apply(this,[obj,childNode]);}}}},read_cap_FeatureTypeList:function(request,node){var featureTypeList={featureTypes:[]};this.runChildNodes(featureTypeList,node);request.featureTypeList=featureTypeList;},read_cap_FeatureType:function(featureTypeList,node,parentLayer){var featureType={};this.runChildNodes(featureType,node);featureTypeList.featureTypes.push(featureType);},read_cap_Name:function(obj,node){var name=this.getChildValue(node);if(name){var parts=name.split(\":\");obj.name=parts.pop();if(parts.length>0){obj.featureNS=this.lookupNamespaceURI(node,parts[0]);}}},read_cap_Title:function(obj,node){var title=this.getChildValue(node);if(title){obj.title=title;}},read_cap_Abstract:function(obj,node){var abst=this.getChildValue(node);if(abst){obj[\"abstract\"]=abst;}},CLASS_NAME:\"OpenLayers.Format.WFSCapabilities.v1\"});OpenLayers.Format.WMC=OpenLayers.Class(OpenLayers.Format.Context,{defaultVersion:\"1.1.0\",getParser:function(version){var v=version||this.version||this.defaultVersion;if(!this.parser||this.parser.VERSION!=v){var format=OpenLayers.Format.WMC[\"v\"+v.replace(/\\./g,\"_\")];if(!format){throw\"Can't find a WMC parser for version \"+v;}\nthis.parser=new format(this.options);}\nreturn this.parser;},layerToContext:function(layer){var parser=this.getParser();var layerContext={queryable:layer.queryable,visibility:layer.visibility,name:layer.params[\"LAYERS\"],title:layer.name,metadataURL:layer.metadataURL,version:layer.params[\"VERSION\"],url:layer.url,maxExtent:layer.maxExtent,transparent:layer.params[\"TRANSPARENT\"],numZoomLevels:layer.numZoomLevels,units:layer.units,isBaseLayer:layer.isBaseLayer,opacity:layer.opacity,displayInLayerSwitcher:layer.displayInLayerSwitcher,singleTile:layer.singleTile,tileSize:(layer.singleTile||!layer.tileSize)?undefined:{width:layer.tileSize.w,height:layer.tileSize.h},minScale:(layer.options.resolutions||layer.options.scales||layer.options.maxResolution||layer.options.minScale)?layer.minScale:undefined,maxScale:(layer.options.resolutions||layer.options.scales||layer.options.minResolution||layer.options.maxScale)?layer.maxScale:undefined,formats:[{value:layer.params[\"FORMAT\"],current:true}],styles:[{href:layer.params[\"SLD\"],body:layer.params[\"SLD_BODY\"],name:layer.params[\"STYLES\"]||parser.defaultStyleName,title:parser.defaultStyleTitle,current:true}]};return layerContext;},toContext:function(obj){var context={};var layers=obj.layers;if(obj.CLASS_NAME==\"OpenLayers.Map\"){context.bounds=obj.getExtent();context.maxExtent=obj.maxExtent;context.projection=obj.projection;context.size=obj.getSize();}\nelse{OpenLayers.Util.applyDefaults(context,obj);if(context.layers!=undefined){delete(context.layers);}}\nif(context.layersContext==undefined){context.layersContext=[];}\nif(layers!=undefined&&layers instanceof Array){for(var i=0,len=layers.length;i<len;i++){var layer=layers[i];if(layer instanceof OpenLayers.Layer.WMS){context.layersContext.push(this.layerToContext(layer));}}}\nreturn context;},CLASS_NAME:\"OpenLayers.Format.WMC\"});OpenLayers.Format.WMSCapabilities.v1=OpenLayers.Class(OpenLayers.Format.XML,{namespaces:{wms:\"http://www.opengis.net/wms\",xlink:\"http://www.w3.org/1999/xlink\",xsi:\"http://www.w3.org/2001/XMLSchema-instance\"},defaultPrefix:\"wms\",initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);},read:function(data){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nif(data&&data.nodeType==9){data=data.documentElement;}\nvar capabilities={};this.readNode(data,capabilities);this.postProcessLayers(capabilities);return capabilities;},postProcessLayers:function(capabilities){if(capabilities.capability){capabilities.capability.layers=[];var layers=capabilities.capability.nestedLayers;for(var i=0,len=layers.length;i<len;++i){var layer=layers[i];this.processLayer(capabilities.capability,layer);}}},processLayer:function(capability,layer,parentLayer){if(layer.formats===undefined){layer.formats=capability.request.getmap.formats;}\nif(parentLayer){layer.styles=layer.styles.concat(parentLayer.styles);var attributes=[\"queryable\",\"cascaded\",\"fixedWidth\",\"fixedHeight\",\"opaque\",\"noSubsets\",\"llbbox\",\"minScale\",\"maxScale\",\"attribution\"];var complexAttr=[\"srs\",\"bbox\",\"dimensions\",\"authorityURLs\"];var key;for(var j=0;j<attributes.length;j++){key=attributes[j];if(key in parentLayer){if(layer[key]==null){layer[key]=parentLayer[key];}\nif(layer[key]==null){var intAttr=[\"cascaded\",\"fixedWidth\",\"fixedHeight\"];var boolAttr=[\"queryable\",\"opaque\",\"noSubsets\"];if(OpenLayers.Util.indexOf(intAttr,key)!=-1){layer[key]=0;}\nif(OpenLayers.Util.indexOf(boolAttr,key)!=-1){layer[key]=false;}}}}\nfor(var j=0;j<complexAttr.length;j++){key=complexAttr[j];layer[key]=OpenLayers.Util.extend(layer[key],parentLayer[key]);}}\nfor(var i=0,len=layer.nestedLayers.length;i<len;i++){var childLayer=layer.nestedLayers[i];this.processLayer(capability,childLayer,layer);}\nif(layer.name){capability.layers.push(layer);}},readers:{\"wms\":{\"Service\":function(node,obj){obj.service={};this.readChildNodes(node,obj.service);},\"Name\":function(node,obj){obj.name=this.getChildValue(node);},\"Title\":function(node,obj){obj.title=this.getChildValue(node);},\"Abstract\":function(node,obj){obj[\"abstract\"]=this.getChildValue(node);},\"BoundingBox\":function(node,obj){var bbox={};bbox.bbox=[parseFloat(node.getAttribute(\"minx\")),parseFloat(node.getAttribute(\"miny\")),parseFloat(node.getAttribute(\"maxx\")),parseFloat(node.getAttribute(\"maxy\"))];var res={x:parseFloat(node.getAttribute(\"resx\")),y:parseFloat(node.getAttribute(\"resy\"))};if(!(isNaN(res.x)&&isNaN(res.y))){bbox.res=res;}\nreturn bbox;},\"OnlineResource\":function(node,obj){obj.href=this.getAttributeNS(node,this.namespaces.xlink,\"href\");},\"ContactInformation\":function(node,obj){obj.contactInformation={};this.readChildNodes(node,obj.contactInformation);},\"ContactPersonPrimary\":function(node,obj){obj.personPrimary={};this.readChildNodes(node,obj.personPrimary);},\"ContactPerson\":function(node,obj){obj.person=this.getChildValue(node);},\"ContactOrganization\":function(node,obj){obj.organization=this.getChildValue(node);},\"ContactPosition\":function(node,obj){obj.position=this.getChildValue(node);},\"ContactAddress\":function(node,obj){obj.contactAddress={};this.readChildNodes(node,obj.contactAddress);},\"AddressType\":function(node,obj){obj.type=this.getChildValue(node);},\"Address\":function(node,obj){obj.address=this.getChildValue(node);},\"City\":function(node,obj){obj.city=this.getChildValue(node);},\"StateOrProvince\":function(node,obj){obj.stateOrProvince=this.getChildValue(node);},\"PostCode\":function(node,obj){obj.postcode=this.getChildValue(node);},\"Country\":function(node,obj){obj.country=this.getChildValue(node);},\"ContactVoiceTelephone\":function(node,obj){obj.phone=this.getChildValue(node);},\"ContactFacsimileTelephone\":function(node,obj){obj.fax=this.getChildValue(node);},\"ContactElectronicMailAddress\":function(node,obj){obj.email=this.getChildValue(node);},\"Fees\":function(node,obj){var fees=this.getChildValue(node);if(fees&&fees.toLowerCase()!=\"none\"){obj.fees=fees;}},\"AccessConstraints\":function(node,obj){var constraints=this.getChildValue(node);if(constraints&&constraints.toLowerCase()!=\"none\"){obj.accessConstraints=constraints;}},\"Capability\":function(node,obj){obj.capability={nestedLayers:[]};this.readChildNodes(node,obj.capability);},\"Request\":function(node,obj){obj.request={};this.readChildNodes(node,obj.request);},\"GetCapabilities\":function(node,obj){obj.getcapabilities={formats:[]};this.readChildNodes(node,obj.getcapabilities);},\"Format\":function(node,obj){if(obj.formats instanceof Array){obj.formats.push(this.getChildValue(node));}else{obj.format=this.getChildValue(node);}},\"DCPType\":function(node,obj){this.readChildNodes(node,obj);},\"HTTP\":function(node,obj){this.readChildNodes(node,obj);},\"Get\":function(node,obj){this.readChildNodes(node,obj);},\"Post\":function(node,obj){this.readChildNodes(node,obj);},\"GetMap\":function(node,obj){obj.getmap={formats:[]};this.readChildNodes(node,obj.getmap);},\"GetFeatureInfo\":function(node,obj){obj.getfeatureinfo={formats:[]};this.readChildNodes(node,obj.getfeatureinfo);},\"Exception\":function(node,obj){obj.exception={formats:[]};this.readChildNodes(node,obj.exception);},\"Layer\":function(node,obj){var attrNode=node.getAttributeNode(\"queryable\");var queryable=(attrNode&&attrNode.specified)?node.getAttribute(\"queryable\"):null;attrNode=node.getAttributeNode(\"cascaded\");var cascaded=(attrNode&&attrNode.specified)?node.getAttribute(\"cascaded\"):null;attrNode=node.getAttributeNode(\"opaque\");var opaque=(attrNode&&attrNode.specified)?node.getAttribute('opaque'):null;var noSubsets=node.getAttribute('noSubsets');var fixedWidth=node.getAttribute('fixedWidth');var fixedHeight=node.getAttribute('fixedHeight');var layer={nestedLayers:[],styles:[],srs:{},metadataURLs:[],bbox:{},dimensions:{},authorityURLs:{},identifiers:{},keywords:[],queryable:(queryable&&queryable!==\"\")?(queryable===\"1\"||queryable===\"true\"):null,cascaded:(cascaded!==null)?parseInt(cascaded):null,opaque:opaque?(opaque===\"1\"||opaque===\"true\"):null,noSubsets:(noSubsets!==null)?(noSubsets===\"1\"||noSubsets===\"true\"):null,fixedWidth:(fixedWidth!=null)?parseInt(fixedWidth):null,fixedHeight:(fixedHeight!=null)?parseInt(fixedHeight):null};obj.nestedLayers.push(layer);this.readChildNodes(node,layer);if(layer.name){var parts=layer.name.split(\":\");if(parts.length>0){layer.prefix=parts[0];}}},\"Attribution\":function(node,obj){obj.attribution={};this.readChildNodes(node,obj.attribution);},\"LogoURL\":function(node,obj){obj.logo={width:node.getAttribute(\"width\"),height:node.getAttribute(\"height\")};this.readChildNodes(node,obj.logo);},\"Style\":function(node,obj){var style={};obj.styles.push(style);this.readChildNodes(node,style);},\"LegendURL\":function(node,obj){var legend={width:node.getAttribute(\"width\"),height:node.getAttribute(\"height\")};obj.legend=legend;this.readChildNodes(node,legend);},\"MetadataURL\":function(node,obj){var metadataURL={type:node.getAttribute(\"type\")};obj.metadataURLs.push(metadataURL);this.readChildNodes(node,metadataURL);},\"DataURL\":function(node,obj){obj.dataURL={};this.readChildNodes(node,obj.dataURL);},\"FeatureListURL\":function(node,obj){obj.featureListURL={};this.readChildNodes(node,obj.featureListURL);},\"AuthorityURL\":function(node,obj){var name=node.getAttribute(\"name\");var authority={};this.readChildNodes(node,authority);obj.authorityURLs[name]=authority.href;},\"Identifier\":function(node,obj){var authority=node.getAttribute(\"authority\");obj.identifiers[authority]=this.getChildValue(node);},\"KeywordList\":function(node,obj){this.readChildNodes(node,obj);},\"SRS\":function(node,obj){obj.srs[this.getChildValue(node)]=true;}}},CLASS_NAME:\"OpenLayers.Format.WMSCapabilities.v1\"});OpenLayers.Format.WMSDescribeLayer.v1_1=OpenLayers.Class(OpenLayers.Format.WMSDescribeLayer,{initialize:function(options){OpenLayers.Format.WMSDescribeLayer.prototype.initialize.apply(this,[options]);},read:function(data){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nvar root=data.documentElement;var children=root.childNodes;var describelayer=[];var childNode,nodeName;for(var i=0;i<children.length;++i){childNode=children[i];nodeName=childNode.nodeName;if(nodeName=='LayerDescription'){var layerName=childNode.getAttribute('name');var owsType='';var owsURL='';var typeName='';if(childNode.getAttribute('owsType')){owsType=childNode.getAttribute('owsType');owsURL=childNode.getAttribute('owsURL');}else{if(childNode.getAttribute('wfs')!=''){owsType='WFS';owsURL=childNode.getAttribute('wfs');}else if(childNode.getAttribute('wcs')!=''){owsType='WCS';owsURL=childNode.getAttribute('wcs');}}\nvar query=childNode.getElementsByTagName('Query');if(query.length>0){typeName=query[0].getAttribute('typeName');if(!typeName){typeName=query[0].getAttribute('typename');}}\ndescribelayer.push({layerName:layerName,owsType:owsType,owsURL:owsURL,typeName:typeName});}}\nreturn describelayer;},CLASS_NAME:\"OpenLayers.Format.WMSDescribeLayer.v1_1\"});OpenLayers.Handler.Box=OpenLayers.Class(OpenLayers.Handler,{dragHandler:null,boxDivClassName:'olHandlerBoxZoomBox',boxCharacteristics:null,initialize:function(control,callbacks,options){OpenLayers.Handler.prototype.initialize.apply(this,arguments);var callbacks={\"down\":this.startBox,\"move\":this.moveBox,\"out\":this.removeBox,\"up\":this.endBox};this.dragHandler=new OpenLayers.Handler.Drag(this,callbacks,{keyMask:this.keyMask});},destroy:function(){if(this.dragHandler){this.dragHandler.destroy();this.dragHandler=null;}\nOpenLayers.Handler.prototype.destroy.apply(this,arguments);},setMap:function(map){OpenLayers.Handler.prototype.setMap.apply(this,arguments);if(this.dragHandler){this.dragHandler.setMap(map);}},startBox:function(xy){this.zoomBox=OpenLayers.Util.createDiv('zoomBox',this.dragHandler.start);this.zoomBox.className=this.boxDivClassName;this.zoomBox.style.zIndex=this.map.Z_INDEX_BASE[\"Popup\"]-1;this.map.viewPortDiv.appendChild(this.zoomBox);OpenLayers.Element.addClass(this.map.viewPortDiv,\"olDrawBox\");},moveBox:function(xy){var startX=this.dragHandler.start.x;var startY=this.dragHandler.start.y;var deltaX=Math.abs(startX-xy.x);var deltaY=Math.abs(startY-xy.y);this.zoomBox.style.width=Math.max(1,deltaX)+\"px\";this.zoomBox.style.height=Math.max(1,deltaY)+\"px\";this.zoomBox.style.left=xy.x<startX?xy.x+\"px\":startX+\"px\";this.zoomBox.style.top=xy.y<startY?xy.y+\"px\":startY+\"px\";var box=this.getBoxCharacteristics();if(box.newBoxModel){if(xy.x>startX){this.zoomBox.style.width=Math.max(1,deltaX-box.xOffset)+\"px\";}\nif(xy.y>startY){this.zoomBox.style.height=Math.max(1,deltaY-box.yOffset)+\"px\";}}},endBox:function(end){var result;if(Math.abs(this.dragHandler.start.x-end.x)>5||Math.abs(this.dragHandler.start.y-end.y)>5){var start=this.dragHandler.start;var top=Math.min(start.y,end.y);var bottom=Math.max(start.y,end.y);var left=Math.min(start.x,end.x);var right=Math.max(start.x,end.x);result=new OpenLayers.Bounds(left,bottom,right,top);}else{result=this.dragHandler.start.clone();}\nthis.removeBox();this.callback(\"done\",[result]);},removeBox:function(){this.map.viewPortDiv.removeChild(this.zoomBox);this.zoomBox=null;this.boxCharacteristics=null;OpenLayers.Element.removeClass(this.map.viewPortDiv,\"olDrawBox\");},activate:function(){if(OpenLayers.Handler.prototype.activate.apply(this,arguments)){this.dragHandler.activate();return true;}else{return false;}},deactivate:function(){if(OpenLayers.Handler.prototype.deactivate.apply(this,arguments)){this.dragHandler.deactivate();return true;}else{return false;}},getBoxCharacteristics:function(){if(!this.boxCharacteristics){var xOffset=parseInt(OpenLayers.Element.getStyle(this.zoomBox,\"border-left-width\"))+parseInt(OpenLayers.Element.getStyle(this.zoomBox,\"border-right-width\"))+1;var yOffset=parseInt(OpenLayers.Element.getStyle(this.zoomBox,\"border-top-width\"))+parseInt(OpenLayers.Element.getStyle(this.zoomBox,\"border-bottom-width\"))+1;var newBoxModel=OpenLayers.Util.getBrowserName()==\"msie\"?document.compatMode!=\"BackCompat\":true;this.boxCharacteristics={xOffset:xOffset,yOffset:yOffset,newBoxModel:newBoxModel};}\nreturn this.boxCharacteristics;},CLASS_NAME:\"OpenLayers.Handler.Box\"});OpenLayers.Handler.RegularPolygon=OpenLayers.Class(OpenLayers.Handler.Drag,{sides:4,radius:null,snapAngle:null,snapToggle:'shiftKey',layerOptions:null,persist:false,irregular:false,angle:null,fixedRadius:false,feature:null,layer:null,origin:null,initialize:function(control,callbacks,options){if(!(options&&options.layerOptions&&options.layerOptions.styleMap)){this.style=OpenLayers.Util.extend(OpenLayers.Feature.Vector.style['default'],{});}\nOpenLayers.Handler.prototype.initialize.apply(this,[control,callbacks,options]);this.options=(options)?options:{};},setOptions:function(newOptions){OpenLayers.Util.extend(this.options,newOptions);OpenLayers.Util.extend(this,newOptions);},activate:function(){var activated=false;if(OpenLayers.Handler.prototype.activate.apply(this,arguments)){var options=OpenLayers.Util.extend({displayInLayerSwitcher:false,calculateInRange:OpenLayers.Function.True},this.layerOptions);this.layer=new OpenLayers.Layer.Vector(this.CLASS_NAME,options);this.map.addLayer(this.layer);activated=true;}\nreturn activated;},deactivate:function(){var deactivated=false;if(OpenLayers.Handler.Drag.prototype.deactivate.apply(this,arguments)){if(this.dragging){this.cancel();}\nif(this.layer.map!=null){this.layer.destroy(false);if(this.feature){this.feature.destroy();}}\nthis.layer=null;this.feature=null;deactivated=true;}\nreturn deactivated;},down:function(evt){this.fixedRadius=!!(this.radius);var maploc=this.map.getLonLatFromPixel(evt.xy);this.origin=new OpenLayers.Geometry.Point(maploc.lon,maploc.lat);if(!this.fixedRadius||this.irregular){this.radius=this.map.getResolution();}\nif(this.persist){this.clear();}\nthis.feature=new OpenLayers.Feature.Vector();this.createGeometry();this.callback(\"create\",[this.origin,this.feature]);this.layer.addFeatures([this.feature],{silent:true});this.layer.drawFeature(this.feature,this.style);},move:function(evt){var maploc=this.map.getLonLatFromPixel(evt.xy);var point=new OpenLayers.Geometry.Point(maploc.lon,maploc.lat);if(this.irregular){var ry=Math.sqrt(2)*Math.abs(point.y-this.origin.y)/2;this.radius=Math.max(this.map.getResolution()/2,ry);}else if(this.fixedRadius){this.origin=point;}else{this.calculateAngle(point,evt);this.radius=Math.max(this.map.getResolution()/2,point.distanceTo(this.origin));}\nthis.modifyGeometry();if(this.irregular){var dx=point.x-this.origin.x;var dy=point.y-this.origin.y;var ratio;if(dy==0){ratio=dx/(this.radius*Math.sqrt(2));}else{ratio=dx/dy;}\nthis.feature.geometry.resize(1,this.origin,ratio);this.feature.geometry.move(dx/2,dy/2);}\nthis.layer.drawFeature(this.feature,this.style);},up:function(evt){this.finalize();if(this.start==this.last){this.callback(\"done\",[evt.xy]);}},out:function(evt){this.finalize();},createGeometry:function(){this.angle=Math.PI*((1/this.sides)-(1/2));if(this.snapAngle){this.angle+=this.snapAngle*(Math.PI/180);}\nthis.feature.geometry=OpenLayers.Geometry.Polygon.createRegularPolygon(this.origin,this.radius,this.sides,this.snapAngle);},modifyGeometry:function(){var angle,point;var ring=this.feature.geometry.components[0];if(ring.components.length!=(this.sides+1)){this.createGeometry();ring=this.feature.geometry.components[0];}\nfor(var i=0;i<this.sides;++i){point=ring.components[i];angle=this.angle+(i*2*Math.PI/this.sides);point.x=this.origin.x+(this.radius*Math.cos(angle));point.y=this.origin.y+(this.radius*Math.sin(angle));point.clearBounds();}},calculateAngle:function(point,evt){var alpha=Math.atan2(point.y-this.origin.y,point.x-this.origin.x);if(this.snapAngle&&(this.snapToggle&&!evt[this.snapToggle])){var snapAngleRad=(Math.PI/180)*this.snapAngle;this.angle=Math.round(alpha/snapAngleRad)*snapAngleRad;}else{this.angle=alpha;}},cancel:function(){this.callback(\"cancel\",null);this.finalize();},finalize:function(){this.origin=null;this.radius=this.options.radius;},clear:function(){if(this.layer){this.layer.renderer.clear();this.layer.destroyFeatures();}},callback:function(name,args){if(this.callbacks[name]){this.callbacks[name].apply(this.control,[this.feature.geometry.clone()]);}\nif(!this.persist&&(name==\"done\"||name==\"cancel\")){this.clear();}},CLASS_NAME:\"OpenLayers.Handler.RegularPolygon\"});OpenLayers.Layer.EventPane=OpenLayers.Class(OpenLayers.Layer,{smoothDragPan:true,isBaseLayer:true,isFixed:true,pane:null,mapObject:null,initialize:function(name,options){OpenLayers.Layer.prototype.initialize.apply(this,arguments);if(this.pane==null){this.pane=OpenLayers.Util.createDiv(this.div.id+\"_EventPane\");}},destroy:function(){this.mapObject=null;this.pane=null;OpenLayers.Layer.prototype.destroy.apply(this,arguments);},setMap:function(map){OpenLayers.Layer.prototype.setMap.apply(this,arguments);this.pane.style.zIndex=parseInt(this.div.style.zIndex)+1;this.pane.style.display=this.div.style.display;this.pane.style.width=\"100%\";this.pane.style.height=\"100%\";if(OpenLayers.Util.getBrowserName()==\"msie\"){this.pane.style.background=\"url(\"+OpenLayers.Util.getImagesLocation()+\"blank.gif)\";}\nif(this.isFixed){this.map.viewPortDiv.appendChild(this.pane);}else{this.map.layerContainerDiv.appendChild(this.pane);}\nthis.loadMapObject();if(this.mapObject==null){this.loadWarningMessage();}},removeMap:function(map){if(this.pane&&this.pane.parentNode){this.pane.parentNode.removeChild(this.pane);}\nOpenLayers.Layer.prototype.removeMap.apply(this,arguments);},loadWarningMessage:function(){this.div.style.backgroundColor=\"darkblue\";var viewSize=this.map.getSize();var msgW=Math.min(viewSize.w,300);var msgH=Math.min(viewSize.h,200);var size=new OpenLayers.Size(msgW,msgH);var centerPx=new OpenLayers.Pixel(viewSize.w/2,viewSize.h/2);var topLeft=centerPx.add(-size.w/2,-size.h/2);var div=OpenLayers.Util.createDiv(this.name+\"_warning\",topLeft,size,null,null,null,\"auto\");div.style.padding=\"7px\";div.style.backgroundColor=\"yellow\";div.innerHTML=this.getWarningHTML();this.div.appendChild(div);},getWarningHTML:function(){return\"\";},display:function(display){OpenLayers.Layer.prototype.display.apply(this,arguments);this.pane.style.display=this.div.style.display;},setZIndex:function(zIndex){OpenLayers.Layer.prototype.setZIndex.apply(this,arguments);this.pane.style.zIndex=parseInt(this.div.style.zIndex)+1;},moveTo:function(bounds,zoomChanged,dragging){OpenLayers.Layer.prototype.moveTo.apply(this,arguments);if(this.mapObject!=null){var newCenter=this.map.getCenter();var newZoom=this.map.getZoom();if(newCenter!=null){var moOldCenter=this.getMapObjectCenter();var oldCenter=this.getOLLonLatFromMapObjectLonLat(moOldCenter);var moOldZoom=this.getMapObjectZoom();var oldZoom=this.getOLZoomFromMapObjectZoom(moOldZoom);if(!(newCenter.equals(oldCenter))||!(newZoom==oldZoom)){if(dragging&&this.dragPanMapObject&&this.smoothDragPan){var oldPx=this.map.getViewPortPxFromLonLat(oldCenter);var newPx=this.map.getViewPortPxFromLonLat(newCenter);this.dragPanMapObject(newPx.x-oldPx.x,oldPx.y-newPx.y);}else{var center=this.getMapObjectLonLatFromOLLonLat(newCenter);var zoom=this.getMapObjectZoomFromOLZoom(newZoom);this.setMapObjectCenter(center,zoom,dragging);}}}}},getLonLatFromViewPortPx:function(viewPortPx){var lonlat=null;if((this.mapObject!=null)&&(this.getMapObjectCenter()!=null)){var moPixel=this.getMapObjectPixelFromOLPixel(viewPortPx);var moLonLat=this.getMapObjectLonLatFromMapObjectPixel(moPixel);lonlat=this.getOLLonLatFromMapObjectLonLat(moLonLat);}\nreturn lonlat;},getViewPortPxFromLonLat:function(lonlat){var viewPortPx=null;if((this.mapObject!=null)&&(this.getMapObjectCenter()!=null)){var moLonLat=this.getMapObjectLonLatFromOLLonLat(lonlat);var moPixel=this.getMapObjectPixelFromMapObjectLonLat(moLonLat);viewPortPx=this.getOLPixelFromMapObjectPixel(moPixel);}\nreturn viewPortPx;},getOLLonLatFromMapObjectLonLat:function(moLonLat){var olLonLat=null;if(moLonLat!=null){var lon=this.getLongitudeFromMapObjectLonLat(moLonLat);var lat=this.getLatitudeFromMapObjectLonLat(moLonLat);olLonLat=new OpenLayers.LonLat(lon,lat);}\nreturn olLonLat;},getMapObjectLonLatFromOLLonLat:function(olLonLat){var moLatLng=null;if(olLonLat!=null){moLatLng=this.getMapObjectLonLatFromLonLat(olLonLat.lon,olLonLat.lat);}\nreturn moLatLng;},getOLPixelFromMapObjectPixel:function(moPixel){var olPixel=null;if(moPixel!=null){var x=this.getXFromMapObjectPixel(moPixel);var y=this.getYFromMapObjectPixel(moPixel);olPixel=new OpenLayers.Pixel(x,y);}\nreturn olPixel;},getMapObjectPixelFromOLPixel:function(olPixel){var moPixel=null;if(olPixel!=null){moPixel=this.getMapObjectPixelFromXY(olPixel.x,olPixel.y);}\nreturn moPixel;},CLASS_NAME:\"OpenLayers.Layer.EventPane\"});OpenLayers.Layer.FixedZoomLevels=OpenLayers.Class({initialize:function(){},initResolutions:function(){var props=new Array('minZoomLevel','maxZoomLevel','numZoomLevels');for(var i=0,len=props.length;i<len;i++){var property=props[i];this[property]=(this.options[property]!=null)?this.options[property]:this.map[property];}\nif((this.minZoomLevel==null)||(this.minZoomLevel<this.MIN_ZOOM_LEVEL)){this.minZoomLevel=this.MIN_ZOOM_LEVEL;}\nvar desiredZoomLevels;var limitZoomLevels=this.MAX_ZOOM_LEVEL-this.minZoomLevel+1;if(((this.options.numZoomLevels==null)&&(this.options.maxZoomLevel!=null))||((this.numZoomLevels==null)&&(this.maxZoomLevel!=null))){desiredZoomLevels=this.maxZoomLevel-this.minZoomLevel+1;}else{desiredZoomLevels=this.numZoomLevels;}\nif(desiredZoomLevels!=null){this.numZoomLevels=Math.min(desiredZoomLevels,limitZoomLevels);}else{this.numZoomLevels=limitZoomLevels;}\nthis.maxZoomLevel=this.minZoomLevel+this.numZoomLevels-1;if(this.RESOLUTIONS!=null){var resolutionsIndex=0;this.resolutions=[];for(var i=this.minZoomLevel;i<=this.maxZoomLevel;i++){this.resolutions[resolutionsIndex++]=this.RESOLUTIONS[i];}\nthis.maxResolution=this.resolutions[0];this.minResolution=this.resolutions[this.resolutions.length-1];}},getResolution:function(){if(this.resolutions!=null){return OpenLayers.Layer.prototype.getResolution.apply(this,arguments);}else{var resolution=null;var viewSize=this.map.getSize();var extent=this.getExtent();if((viewSize!=null)&&(extent!=null)){resolution=Math.max(extent.getWidth()/viewSize.w,extent.getHeight()/viewSize.h);}\nreturn resolution;}},getExtent:function(){var extent=null;var size=this.map.getSize();var tlPx=new OpenLayers.Pixel(0,0);var tlLL=this.getLonLatFromViewPortPx(tlPx);var brPx=new OpenLayers.Pixel(size.w,size.h);var brLL=this.getLonLatFromViewPortPx(brPx);if((tlLL!=null)&&(brLL!=null)){extent=new OpenLayers.Bounds(tlLL.lon,brLL.lat,brLL.lon,tlLL.lat);}\nreturn extent;},getZoomForResolution:function(resolution){if(this.resolutions!=null){return OpenLayers.Layer.prototype.getZoomForResolution.apply(this,arguments);}else{var extent=OpenLayers.Layer.prototype.getExtent.apply(this,[]);return this.getZoomForExtent(extent);}},getOLZoomFromMapObjectZoom:function(moZoom){var zoom=null;if(moZoom!=null){zoom=moZoom-this.minZoomLevel;}\nreturn zoom;},getMapObjectZoomFromOLZoom:function(olZoom){var zoom=null;if(olZoom!=null){zoom=olZoom+this.minZoomLevel;}\nreturn zoom;},CLASS_NAME:\"OpenLayers.Layer.FixedZoomLevels\"});OpenLayers.Layer.HTTPRequest=OpenLayers.Class(OpenLayers.Layer,{URL_HASH_FACTOR:(Math.sqrt(5)-1)/2,url:null,params:null,reproject:false,initialize:function(name,url,params,options){var newArguments=arguments;newArguments=[name,options];OpenLayers.Layer.prototype.initialize.apply(this,newArguments);this.url=url;this.params=OpenLayers.Util.extend({},params);},destroy:function(){this.url=null;this.params=null;OpenLayers.Layer.prototype.destroy.apply(this,arguments);},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.HTTPRequest(this.name,this.url,this.params,this.getOptions());}\nobj=OpenLayers.Layer.prototype.clone.apply(this,[obj]);return obj;},setUrl:function(newUrl){this.url=newUrl;},mergeNewParams:function(newParams){this.params=OpenLayers.Util.extend(this.params,newParams);var ret=this.redraw();if(this.map!=null){this.map.events.triggerEvent(\"changelayer\",{layer:this,property:\"params\"});}\nreturn ret;},redraw:function(force){if(force){return this.mergeNewParams({\"_olSalt\":Math.random()});}else{return OpenLayers.Layer.prototype.redraw.apply(this,[]);}},selectUrl:function(paramString,urls){var product=1;for(var i=0,len=paramString.length;i<len;i++){product*=paramString.charCodeAt(i)*this.URL_HASH_FACTOR;product-=Math.floor(product);}\nreturn urls[Math.floor(product*urls.length)];},getFullRequestString:function(newParams,altUrl){var url=altUrl||this.url;var allParams=OpenLayers.Util.extend({},this.params);allParams=OpenLayers.Util.extend(allParams,newParams);var paramsString=OpenLayers.Util.getParameterString(allParams);if(url instanceof Array){url=this.selectUrl(paramsString,url);}\nvar urlParams=OpenLayers.Util.upperCaseObject(OpenLayers.Util.getParameters(url));for(var key in allParams){if(key.toUpperCase()in urlParams){delete allParams[key];}}\nparamsString=OpenLayers.Util.getParameterString(allParams);return OpenLayers.Util.urlAppend(url,paramsString);},CLASS_NAME:\"OpenLayers.Layer.HTTPRequest\"});OpenLayers.Layer.Image=OpenLayers.Class(OpenLayers.Layer,{isBaseLayer:true,url:null,extent:null,size:null,tile:null,aspectRatio:null,initialize:function(name,url,extent,size,options){this.url=url;this.extent=extent;this.maxExtent=extent;this.size=size;OpenLayers.Layer.prototype.initialize.apply(this,[name,options]);this.aspectRatio=(this.extent.getHeight()/this.size.h)/(this.extent.getWidth()/this.size.w);},destroy:function(){if(this.tile){this.removeTileMonitoringHooks(this.tile);this.tile.destroy();this.tile=null;}\nOpenLayers.Layer.prototype.destroy.apply(this,arguments);},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.Image(this.name,this.url,this.extent,this.size,this.getOptions());}\nobj=OpenLayers.Layer.prototype.clone.apply(this,[obj]);return obj;},setMap:function(map){if(this.options.maxResolution==null){this.options.maxResolution=this.aspectRatio*this.extent.getWidth()/this.size.w;}\nOpenLayers.Layer.prototype.setMap.apply(this,arguments);},moveTo:function(bounds,zoomChanged,dragging){OpenLayers.Layer.prototype.moveTo.apply(this,arguments);var firstRendering=(this.tile==null);if(zoomChanged||firstRendering){this.setTileSize();var ul=new OpenLayers.LonLat(this.extent.left,this.extent.top);var ulPx=this.map.getLayerPxFromLonLat(ul);if(firstRendering){this.tile=new OpenLayers.Tile.Image(this,ulPx,this.extent,null,this.tileSize);this.addTileMonitoringHooks(this.tile);}else{this.tile.size=this.tileSize.clone();this.tile.position=ulPx.clone();}\nthis.tile.draw();}},setTileSize:function(){var tileWidth=this.extent.getWidth()/this.map.getResolution();var tileHeight=this.extent.getHeight()/this.map.getResolution();this.tileSize=new OpenLayers.Size(tileWidth,tileHeight);},addTileMonitoringHooks:function(tile){tile.onLoadStart=function(){this.events.triggerEvent(\"loadstart\");};tile.events.register(\"loadstart\",this,tile.onLoadStart);tile.onLoadEnd=function(){this.events.triggerEvent(\"loadend\");};tile.events.register(\"loadend\",this,tile.onLoadEnd);tile.events.register(\"unload\",this,tile.onLoadEnd);},removeTileMonitoringHooks:function(tile){tile.unload();tile.events.un({\"loadstart\":tile.onLoadStart,\"loadend\":tile.onLoadEnd,\"unload\":tile.onLoadEnd,scope:this});},setUrl:function(newUrl){this.url=newUrl;this.tile.draw();},getURL:function(bounds){return this.url;},CLASS_NAME:\"OpenLayers.Layer.Image\"});OpenLayers.Layer.Markers=OpenLayers.Class(OpenLayers.Layer,{isBaseLayer:false,markers:null,drawn:false,initialize:function(name,options){OpenLayers.Layer.prototype.initialize.apply(this,arguments);this.markers=[];},destroy:function(){this.clearMarkers();this.markers=null;OpenLayers.Layer.prototype.destroy.apply(this,arguments);},setOpacity:function(opacity){if(opacity!=this.opacity){this.opacity=opacity;for(var i=0,len=this.markers.length;i<len;i++){this.markers[i].setOpacity(this.opacity);}}},moveTo:function(bounds,zoomChanged,dragging){OpenLayers.Layer.prototype.moveTo.apply(this,arguments);if(zoomChanged||!this.drawn){for(var i=0,len=this.markers.length;i<len;i++){this.drawMarker(this.markers[i]);}\nthis.drawn=true;}},addMarker:function(marker){this.markers.push(marker);if(this.opacity!=null){marker.setOpacity(this.opacity);}\nif(this.map&&this.map.getExtent()){marker.map=this.map;this.drawMarker(marker);}},removeMarker:function(marker){if(this.markers&&this.markers.length){OpenLayers.Util.removeItem(this.markers,marker);marker.erase();}},clearMarkers:function(){if(this.markers!=null){while(this.markers.length>0){this.removeMarker(this.markers[0]);}}},drawMarker:function(marker){var px=this.map.getLayerPxFromLonLat(marker.lonlat);if(px==null){marker.display(false);}else{if(!marker.isDrawn()){var markerImg=marker.draw(px);this.div.appendChild(markerImg);}else if(marker.icon){marker.icon.moveTo(px);}}},getDataExtent:function(){var maxExtent=null;if(this.markers&&(this.markers.length>0)){var maxExtent=new OpenLayers.Bounds();for(var i=0,len=this.markers.length;i<len;i++){var marker=this.markers[i];maxExtent.extend(marker.lonlat);}}\nreturn maxExtent;},CLASS_NAME:\"OpenLayers.Layer.Markers\"});OpenLayers.Layer.SphericalMercator={getExtent:function(){var extent=null;if(this.sphericalMercator){extent=this.map.calculateBounds();}else{extent=OpenLayers.Layer.FixedZoomLevels.prototype.getExtent.apply(this);}\nreturn extent;},getLonLatFromViewPortPx:function(viewPortPx){return OpenLayers.Layer.prototype.getLonLatFromViewPortPx.apply(this,arguments);},getViewPortPxFromLonLat:function(lonlat){return OpenLayers.Layer.prototype.getViewPortPxFromLonLat.apply(this,arguments);},initMercatorParameters:function(){this.RESOLUTIONS=[];var maxResolution=156543.0339;for(var zoom=0;zoom<=this.MAX_ZOOM_LEVEL;++zoom){this.RESOLUTIONS[zoom]=maxResolution/Math.pow(2,zoom);}\nthis.units=\"m\";this.projection=this.projection||\"EPSG:900913\";},forwardMercator:function(lon,lat){var x=lon*20037508.34/180;var y=Math.log(Math.tan((90+lat)*Math.PI/360))/(Math.PI/180);y=y*20037508.34/180;return new OpenLayers.LonLat(x,y);},inverseMercator:function(x,y){var lon=(x/20037508.34)*180;var lat=(y/20037508.34)*180;lat=180/Math.PI*(2*Math.atan(Math.exp(lat*Math.PI/180))-Math.PI/2);return new OpenLayers.LonLat(lon,lat);},projectForward:function(point){var lonlat=OpenLayers.Layer.SphericalMercator.forwardMercator(point.x,point.y);point.x=lonlat.lon;point.y=lonlat.lat;return point;},projectInverse:function(point){var lonlat=OpenLayers.Layer.SphericalMercator.inverseMercator(point.x,point.y);point.x=lonlat.lon;point.y=lonlat.lat;return point;}};OpenLayers.Projection.addTransform(\"EPSG:4326\",\"EPSG:900913\",OpenLayers.Layer.SphericalMercator.projectForward);OpenLayers.Projection.addTransform(\"EPSG:900913\",\"EPSG:4326\",OpenLayers.Layer.SphericalMercator.projectInverse);OpenLayers.Tile.WFS=OpenLayers.Class(OpenLayers.Tile,{features:null,url:null,request:null,initialize:function(layer,position,bounds,url,size){OpenLayers.Tile.prototype.initialize.apply(this,arguments);this.url=url;this.features=[];},destroy:function(){OpenLayers.Tile.prototype.destroy.apply(this,arguments);this.destroyAllFeatures();this.features=null;this.url=null;if(this.request){this.request.abort();this.request=null;}},clear:function(){this.destroyAllFeatures();},draw:function(){if(OpenLayers.Tile.prototype.draw.apply(this,arguments)){if(this.isLoading){this.events.triggerEvent(\"reload\");}else{this.isLoading=true;this.events.triggerEvent(\"loadstart\");}\nthis.loadFeaturesForRegion(this.requestSuccess);}},loadFeaturesForRegion:function(success,failure){if(this.request){this.request.abort();}\nthis.request=OpenLayers.Request.GET({url:this.url,success:success,failure:failure,scope:this});},requestSuccess:function(request){if(this.features){var doc=request.responseXML;if(!doc||!doc.documentElement){doc=request.responseText;}\nif(this.layer.vectorMode){this.layer.addFeatures(this.layer.formatObject.read(doc));}else{var xml=new OpenLayers.Format.XML();if(typeof doc==\"string\"){doc=xml.read(doc);}\nvar resultFeatures=xml.getElementsByTagNameNS(doc,\"http://www.opengis.net/gml\",\"featureMember\");this.addResults(resultFeatures);}}\nif(this.events){this.events.triggerEvent(\"loadend\");}\nthis.request=null;},addResults:function(results){for(var i=0;i<results.length;i++){var feature=new this.layer.featureClass(this.layer,results[i]);this.features.push(feature);}},destroyAllFeatures:function(){while(this.features.length>0){var feature=this.features.shift();feature.destroy();}},CLASS_NAME:\"OpenLayers.Tile.WFS\"});OpenLayers.Control.DrawFeature=OpenLayers.Class(OpenLayers.Control,{layer:null,callbacks:null,EVENT_TYPES:[\"featureadded\"],multi:false,featureAdded:function(){},handlerOptions:null,initialize:function(layer,handler,options){this.EVENT_TYPES=OpenLayers.Control.DrawFeature.prototype.EVENT_TYPES.concat(OpenLayers.Control.prototype.EVENT_TYPES);OpenLayers.Control.prototype.initialize.apply(this,[options]);this.callbacks=OpenLayers.Util.extend({done:this.drawFeature,modify:function(vertex,feature){this.layer.events.triggerEvent(\"sketchmodified\",{vertex:vertex,feature:feature});},create:function(vertex,feature){this.layer.events.triggerEvent(\"sketchstarted\",{vertex:vertex,feature:feature});}},this.callbacks);this.layer=layer;this.handlerOptions=this.handlerOptions||{};if(!(\"multi\"in this.handlerOptions)){this.handlerOptions.multi=this.multi;}\nvar sketchStyle=this.layer.styleMap&&this.layer.styleMap.styles.temporary;if(sketchStyle){this.handlerOptions.layerOptions=OpenLayers.Util.applyDefaults(this.handlerOptions.layerOptions,{styleMap:new OpenLayers.StyleMap({\"default\":sketchStyle})});}\nthis.handler=new handler(this,this.callbacks,this.handlerOptions);},drawFeature:function(geometry){var feature=new OpenLayers.Feature.Vector(geometry);var proceed=this.layer.events.triggerEvent(\"sketchcomplete\",{feature:feature});if(proceed!==false){feature.state=OpenLayers.State.INSERT;this.layer.addFeatures([feature]);this.featureAdded(feature);this.events.triggerEvent(\"featureadded\",{feature:feature});}},CLASS_NAME:\"OpenLayers.Control.DrawFeature\"});OpenLayers.Control.Measure=OpenLayers.Class(OpenLayers.Control,{EVENT_TYPES:['measure','measurepartial'],handlerOptions:null,callbacks:null,displaySystem:'metric',geodesic:false,displaySystemUnits:{geographic:['dd'],english:['mi','ft','in'],metric:['km','m']},partialDelay:300,delayedTrigger:null,persist:false,initialize:function(handler,options){this.EVENT_TYPES=OpenLayers.Control.Measure.prototype.EVENT_TYPES.concat(OpenLayers.Control.prototype.EVENT_TYPES);OpenLayers.Control.prototype.initialize.apply(this,[options]);this.callbacks=OpenLayers.Util.extend({done:this.measureComplete,point:this.measurePartial},this.callbacks);this.handlerOptions=OpenLayers.Util.extend({persist:this.persist},this.handlerOptions);this.handler=new handler(this,this.callbacks,this.handlerOptions);},cancel:function(){this.handler.cancel();},updateHandler:function(handler,options){var active=this.active;if(active){this.deactivate();}\nthis.handler=new handler(this,this.callbacks,options);if(active){this.activate();}},measureComplete:function(geometry){if(this.delayedTrigger){window.clearTimeout(this.delayedTrigger);}\nthis.measure(geometry,\"measure\");},measurePartial:function(point,geometry){if(geometry.getLength()>0){geometry=geometry.clone();this.delayedTrigger=window.setTimeout(OpenLayers.Function.bind(function(){this.measure(geometry,\"measurepartial\");},this),this.partialDelay);}},measure:function(geometry,eventType){var stat,order;if(geometry.CLASS_NAME.indexOf('LineString')>-1){stat=this.getBestLength(geometry);order=1;}else{stat=this.getBestArea(geometry);order=2;}\nthis.events.triggerEvent(eventType,{measure:stat[0],units:stat[1],order:order,geometry:geometry});},getBestArea:function(geometry){var units=this.displaySystemUnits[this.displaySystem];var unit,area;for(var i=0,len=units.length;i<len;++i){unit=units[i];area=this.getArea(geometry,unit);if(area>1){break;}}\nreturn[area,unit];},getArea:function(geometry,units){var area,geomUnits;if(this.geodesic){area=geometry.getGeodesicArea(this.map.getProjectionObject());geomUnits=\"m\";}else{area=geometry.getArea();geomUnits=this.map.getUnits();}\nvar inPerDisplayUnit=OpenLayers.INCHES_PER_UNIT[units];if(inPerDisplayUnit){var inPerMapUnit=OpenLayers.INCHES_PER_UNIT[geomUnits];area*=Math.pow((inPerMapUnit/inPerDisplayUnit),2);}\nreturn area;},getBestLength:function(geometry){var units=this.displaySystemUnits[this.displaySystem];var unit,length;for(var i=0,len=units.length;i<len;++i){unit=units[i];length=this.getLength(geometry,unit);if(length>1){break;}}\nreturn[length,unit];},getLength:function(geometry,units){var length,geomUnits;if(this.geodesic){length=geometry.getGeodesicLength(this.map.getProjectionObject());geomUnits=\"m\";}else{length=geometry.getLength();geomUnits=this.map.getUnits();}\nvar inPerDisplayUnit=OpenLayers.INCHES_PER_UNIT[units];if(inPerDisplayUnit){var inPerMapUnit=OpenLayers.INCHES_PER_UNIT[geomUnits];length*=(inPerMapUnit/inPerDisplayUnit);}\nreturn length;},CLASS_NAME:\"OpenLayers.Control.Measure\"});OpenLayers.Control.ZoomBox=OpenLayers.Class(OpenLayers.Control,{type:OpenLayers.Control.TYPE_TOOL,out:false,alwaysZoom:false,draw:function(){this.handler=new OpenLayers.Handler.Box(this,{done:this.zoomBox},{keyMask:this.keyMask});},zoomBox:function(position){if(position instanceof OpenLayers.Bounds){var bounds;if(!this.out){var minXY=this.map.getLonLatFromPixel(new OpenLayers.Pixel(position.left,position.bottom));var maxXY=this.map.getLonLatFromPixel(new OpenLayers.Pixel(position.right,position.top));bounds=new OpenLayers.Bounds(minXY.lon,minXY.lat,maxXY.lon,maxXY.lat);}else{var pixWidth=Math.abs(position.right-position.left);var pixHeight=Math.abs(position.top-position.bottom);var zoomFactor=Math.min((this.map.size.h/pixHeight),(this.map.size.w/pixWidth));var extent=this.map.getExtent();var center=this.map.getLonLatFromPixel(position.getCenterPixel());var xmin=center.lon-(extent.getWidth()/2)*zoomFactor;var xmax=center.lon+(extent.getWidth()/2)*zoomFactor;var ymin=center.lat-(extent.getHeight()/2)*zoomFactor;var ymax=center.lat+(extent.getHeight()/2)*zoomFactor;bounds=new OpenLayers.Bounds(xmin,ymin,xmax,ymax);}\nvar lastZoom=this.map.getZoom();this.map.zoomToExtent(bounds);if(lastZoom==this.map.getZoom()&&this.alwaysZoom==true){this.map.zoomTo(lastZoom+(this.out?-1:1));}}else{if(!this.out){this.map.setCenter(this.map.getLonLatFromPixel(position),this.map.getZoom()+1);}else{this.map.setCenter(this.map.getLonLatFromPixel(position),this.map.getZoom()-1);}}},CLASS_NAME:\"OpenLayers.Control.ZoomBox\"});OpenLayers.Format.WFSCapabilities.v1_0_0=OpenLayers.Class(OpenLayers.Format.WFSCapabilities.v1,{initialize:function(options){OpenLayers.Format.WFSCapabilities.v1.prototype.initialize.apply(this,[options]);},read_cap_Service:function(capabilities,node){var service={};this.runChildNodes(service,node);capabilities.service=service;},read_cap_Fees:function(service,node){var fees=this.getChildValue(node);if(fees&&fees.toLowerCase()!=\"none\"){service.fees=fees;}},read_cap_AccessConstraints:function(service,node){var constraints=this.getChildValue(node);if(constraints&&constraints.toLowerCase()!=\"none\"){service.accessConstraints=constraints;}},read_cap_OnlineResource:function(service,node){var onlineResource=this.getChildValue(node);if(onlineResource&&onlineResource.toLowerCase()!=\"none\"){service.onlineResource=onlineResource;}},read_cap_Keywords:function(service,node){var keywords=this.getChildValue(node);if(keywords&&keywords.toLowerCase()!=\"none\"){service.keywords=keywords.split(', ');}},read_cap_Capability:function(capabilities,node){var capability={};this.runChildNodes(capability,node);capabilities.capability=capability;},read_cap_Request:function(obj,node){var request={};this.runChildNodes(request,node);obj.request=request;},read_cap_GetFeature:function(request,node){var getfeature={href:{},formats:[]};this.runChildNodes(getfeature,node);request.getfeature=getfeature;},read_cap_ResultFormat:function(obj,node){var children=node.childNodes;var childNode;for(var i=0;i<children.length;i++){childNode=children[i];if(childNode.nodeType==1){obj.formats.push(childNode.nodeName);}}},read_cap_DCPType:function(obj,node){this.runChildNodes(obj,node);},read_cap_HTTP:function(obj,node){this.runChildNodes(obj.href,node);},read_cap_Get:function(obj,node){obj.get=node.getAttribute(\"onlineResource\");},read_cap_Post:function(obj,node){obj.post=node.getAttribute(\"onlineResource\");},CLASS_NAME:\"OpenLayers.Format.WFSCapabilities.v1_0_0\"});OpenLayers.Format.WFSCapabilities.v1_1_0=OpenLayers.Class(OpenLayers.Format.WFSCapabilities.v1,{initialize:function(options){OpenLayers.Format.WFSCapabilities.v1.prototype.initialize.apply(this,[options]);},CLASS_NAME:\"OpenLayers.Format.WFSCapabilities.v1_1_0\"});OpenLayers.Format.WKT=OpenLayers.Class(OpenLayers.Format,{initialize:function(options){this.regExes={'typeStr':/^\\s*(\\w+)\\s*\\(\\s*(.*)\\s*\\)\\s*$/,'spaces':/\\s+/,'parenComma':/\\)\\s*,\\s*\\(/,'doubleParenComma':/\\)\\s*\\)\\s*,\\s*\\(\\s*\\(/,'trimParens':/^\\s*\\(?(.*?)\\)?\\s*$/};OpenLayers.Format.prototype.initialize.apply(this,[options]);},read:function(wkt){var features,type,str;var matches=this.regExes.typeStr.exec(wkt);if(matches){type=matches[1].toLowerCase();str=matches[2];if(this.parse[type]){features=this.parse[type].apply(this,[str]);}\nif(this.internalProjection&&this.externalProjection){if(features&&features.CLASS_NAME==\"OpenLayers.Feature.Vector\"){features.geometry.transform(this.externalProjection,this.internalProjection);}else if(features&&type!=\"geometrycollection\"&&typeof features==\"object\"){for(var i=0,len=features.length;i<len;i++){var component=features[i];component.geometry.transform(this.externalProjection,this.internalProjection);}}}}\nreturn features;},write:function(features){var collection,geometry,type,data,isCollection;if(features.constructor==Array){collection=features;isCollection=true;}else{collection=[features];isCollection=false;}\nvar pieces=[];if(isCollection){pieces.push('GEOMETRYCOLLECTION(');}\nfor(var i=0,len=collection.length;i<len;++i){if(isCollection&&i>0){pieces.push(',');}\ngeometry=collection[i].geometry;type=geometry.CLASS_NAME.split('.')[2].toLowerCase();if(!this.extract[type]){return null;}\nif(this.internalProjection&&this.externalProjection){geometry=geometry.clone();geometry.transform(this.internalProjection,this.externalProjection);}\ndata=this.extract[type].apply(this,[geometry]);pieces.push(type.toUpperCase()+'('+data+')');}\nif(isCollection){pieces.push(')');}\nreturn pieces.join('');},extract:{'point':function(point){return point.x+' '+point.y;},'multipoint':function(multipoint){var array=[];for(var i=0,len=multipoint.components.length;i<len;++i){array.push('('+\nthis.extract.point.apply(this,[multipoint.components[i]])+')');}\nreturn array.join(',');},'linestring':function(linestring){var array=[];for(var i=0,len=linestring.components.length;i<len;++i){array.push(this.extract.point.apply(this,[linestring.components[i]]));}\nreturn array.join(',');},'multilinestring':function(multilinestring){var array=[];for(var i=0,len=multilinestring.components.length;i<len;++i){array.push('('+\nthis.extract.linestring.apply(this,[multilinestring.components[i]])+')');}\nreturn array.join(',');},'polygon':function(polygon){var array=[];for(var i=0,len=polygon.components.length;i<len;++i){array.push('('+\nthis.extract.linestring.apply(this,[polygon.components[i]])+')');}\nreturn array.join(',');},'multipolygon':function(multipolygon){var array=[];for(var i=0,len=multipolygon.components.length;i<len;++i){array.push('('+\nthis.extract.polygon.apply(this,[multipolygon.components[i]])+')');}\nreturn array.join(',');}},parse:{'point':function(str){var coords=OpenLayers.String.trim(str).split(this.regExes.spaces);return new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(coords[0],coords[1]));},'multipoint':function(str){var point;var points=OpenLayers.String.trim(str).split(this.regExes.parenComma);var components=[];for(var i=0,len=points.length;i<len;++i){point=points[i].replace(this.regExes.trimParens,'$1');components.push(this.parse.point.apply(this,[point]).geometry);}\nreturn new OpenLayers.Feature.Vector(new OpenLayers.Geometry.MultiPoint(components));},'linestring':function(str){var points=OpenLayers.String.trim(str).split(',');var components=[];for(var i=0,len=points.length;i<len;++i){components.push(this.parse.point.apply(this,[points[i]]).geometry);}\nreturn new OpenLayers.Feature.Vector(new OpenLayers.Geometry.LineString(components));},'multilinestring':function(str){var line;var lines=OpenLayers.String.trim(str).split(this.regExes.parenComma);var components=[];for(var i=0,len=lines.length;i<len;++i){line=lines[i].replace(this.regExes.trimParens,'$1');components.push(this.parse.linestring.apply(this,[line]).geometry);}\nreturn new OpenLayers.Feature.Vector(new OpenLayers.Geometry.MultiLineString(components));},'polygon':function(str){var ring,linestring,linearring;var rings=OpenLayers.String.trim(str).split(this.regExes.parenComma);var components=[];for(var i=0,len=rings.length;i<len;++i){ring=rings[i].replace(this.regExes.trimParens,'$1');linestring=this.parse.linestring.apply(this,[ring]).geometry;linearring=new OpenLayers.Geometry.LinearRing(linestring.components);components.push(linearring);}\nreturn new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Polygon(components));},'multipolygon':function(str){var polygon;var polygons=OpenLayers.String.trim(str).split(this.regExes.doubleParenComma);var components=[];for(var i=0,len=polygons.length;i<len;++i){polygon=polygons[i].replace(this.regExes.trimParens,'$1');components.push(this.parse.polygon.apply(this,[polygon]).geometry);}\nreturn new OpenLayers.Feature.Vector(new OpenLayers.Geometry.MultiPolygon(components));},'geometrycollection':function(str){str=str.replace(/,\\s*([A-Za-z])/g,'|$1');var wktArray=OpenLayers.String.trim(str).split('|');var components=[];for(var i=0,len=wktArray.length;i<len;++i){components.push(OpenLayers.Format.WKT.prototype.read.apply(this,[wktArray[i]]));}\nreturn components;}},CLASS_NAME:\"OpenLayers.Format.WKT\"});OpenLayers.Format.WMC.v1=OpenLayers.Class(OpenLayers.Format.XML,{namespaces:{ol:\"http://openlayers.org/context\",wmc:\"http://www.opengis.net/context\",sld:\"http://www.opengis.net/sld\",xlink:\"http://www.w3.org/1999/xlink\",xsi:\"http://www.w3.org/2001/XMLSchema-instance\"},schemaLocation:\"\",getNamespacePrefix:function(uri){var prefix=null;if(uri==null){prefix=this.namespaces[this.defaultPrefix];}else{for(prefix in this.namespaces){if(this.namespaces[prefix]==uri){break;}}}\nreturn prefix;},defaultPrefix:\"wmc\",rootPrefix:null,defaultStyleName:\"\",defaultStyleTitle:\"Default\",initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);},read:function(data){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nvar root=data.documentElement;this.rootPrefix=root.prefix;var context={version:root.getAttribute(\"version\")};this.runChildNodes(context,root);return context;},runChildNodes:function(obj,node){var children=node.childNodes;var childNode,processor,prefix,local;for(var i=0,len=children.length;i<len;++i){childNode=children[i];if(childNode.nodeType==1){prefix=this.getNamespacePrefix(childNode.namespaceURI);local=childNode.nodeName.split(\":\").pop();processor=this[\"read_\"+prefix+\"_\"+local];if(processor){processor.apply(this,[obj,childNode]);}}}},read_wmc_General:function(context,node){this.runChildNodes(context,node);},read_wmc_BoundingBox:function(context,node){context.projection=node.getAttribute(\"SRS\");context.bounds=new OpenLayers.Bounds(parseFloat(node.getAttribute(\"minx\")),parseFloat(node.getAttribute(\"miny\")),parseFloat(node.getAttribute(\"maxx\")),parseFloat(node.getAttribute(\"maxy\")));},read_wmc_LayerList:function(context,node){context.layersContext=[];this.runChildNodes(context,node);},read_wmc_Layer:function(context,node){var layerContext={visibility:(node.getAttribute(\"hidden\")!=\"1\"),queryable:(node.getAttribute(\"queryable\")==\"1\"),formats:[],styles:[]};this.runChildNodes(layerContext,node);context.layersContext.push(layerContext);},read_wmc_Extension:function(obj,node){this.runChildNodes(obj,node);},read_ol_units:function(layerContext,node){layerContext.units=this.getChildValue(node);},read_ol_maxExtent:function(obj,node){var bounds=new OpenLayers.Bounds(node.getAttribute(\"minx\"),node.getAttribute(\"miny\"),node.getAttribute(\"maxx\"),node.getAttribute(\"maxy\"));obj.maxExtent=bounds;},read_ol_transparent:function(layerContext,node){layerContext.transparent=this.getChildValue(node);},read_ol_numZoomLevels:function(layerContext,node){layerContext.numZoomLevels=parseInt(this.getChildValue(node));},read_ol_opacity:function(layerContext,node){layerContext.opacity=parseFloat(this.getChildValue(node));},read_ol_singleTile:function(layerContext,node){layerContext.singleTile=(this.getChildValue(node)==\"true\");},read_ol_tileSize:function(layerContext,node){var obj={\"width\":node.getAttribute(\"width\"),\"height\":node.getAttribute(\"height\")};layerContext.tileSize=obj;},read_ol_isBaseLayer:function(layerContext,node){layerContext.isBaseLayer=(this.getChildValue(node)==\"true\");},read_ol_displayInLayerSwitcher:function(layerContext,node){layerContext.displayInLayerSwitcher=(this.getChildValue(node)==\"true\");},read_wmc_Server:function(layerContext,node){layerContext.version=node.getAttribute(\"version\");var server={};var links=node.getElementsByTagName(\"OnlineResource\");if(links.length>0){this.read_wmc_OnlineResource(server,links[0]);}\nlayerContext.url=server.href;},read_wmc_FormatList:function(layerContext,node){this.runChildNodes(layerContext,node);},read_wmc_Format:function(layerContext,node){var format={value:this.getChildValue(node)};if(node.getAttribute(\"current\")==\"1\"){format.current=true;}\nlayerContext.formats.push(format);},read_wmc_StyleList:function(layerContext,node){this.runChildNodes(layerContext,node);},read_wmc_Style:function(layerContext,node){var style={};this.runChildNodes(style,node);if(node.getAttribute(\"current\")==\"1\"){style.current=true;}\nlayerContext.styles.push(style);},read_wmc_SLD:function(style,node){this.runChildNodes(style,node);},read_sld_StyledLayerDescriptor:function(sld,node){var xml=OpenLayers.Format.XML.prototype.write.apply(this,[node]);sld.body=xml;},read_wmc_OnlineResource:function(obj,node){obj.href=this.getAttributeNS(node,this.namespaces.xlink,\"href\");},read_wmc_Name:function(obj,node){var name=this.getChildValue(node);if(name){obj.name=name;}},read_wmc_Title:function(obj,node){var title=this.getChildValue(node);if(title){obj.title=title;}},read_wmc_MetadataURL:function(layerContext,node){var metadataURL={};var links=node.getElementsByTagName(\"OnlineResource\");if(links.length>0){this.read_wmc_OnlineResource(metadataURL,links[0]);}\nlayerContext.metadataURL=metadataURL.href;},read_wmc_Abstract:function(obj,node){var abst=this.getChildValue(node);if(abst){obj[\"abstract\"]=abst;}},read_wmc_LegendURL:function(style,node){var legend={width:node.getAttribute('width'),height:node.getAttribute('height')};var links=node.getElementsByTagName(\"OnlineResource\");if(links.length>0){this.read_wmc_OnlineResource(legend,links[0]);}\nstyle.legend=legend;},write:function(context,options){var root=this.createElementDefaultNS(\"ViewContext\");this.setAttributes(root,{version:this.VERSION,id:(options&&typeof options.id==\"string\")?options.id:OpenLayers.Util.createUniqueID(\"OpenLayers_Context_\")});this.setAttributeNS(root,this.namespaces.xsi,\"xsi:schemaLocation\",this.schemaLocation);root.appendChild(this.write_wmc_General(context));root.appendChild(this.write_wmc_LayerList(context));return OpenLayers.Format.XML.prototype.write.apply(this,[root]);},createElementDefaultNS:function(name,childValue,attributes){var node=this.createElementNS(this.namespaces[this.defaultPrefix],name);if(childValue){node.appendChild(this.createTextNode(childValue));}\nif(attributes){this.setAttributes(node,attributes);}\nreturn node;},setAttributes:function(node,obj){var value;for(var name in obj){value=obj[name].toString();if(value.match(/[A-Z]/)){this.setAttributeNS(node,null,name,value);}else{node.setAttribute(name,value);}}},write_wmc_General:function(context){var node=this.createElementDefaultNS(\"General\");if(context.size){node.appendChild(this.createElementDefaultNS(\"Window\",null,{width:context.size.w,height:context.size.h}));}\nvar bounds=context.bounds;node.appendChild(this.createElementDefaultNS(\"BoundingBox\",null,{minx:bounds.left.toPrecision(18),miny:bounds.bottom.toPrecision(18),maxx:bounds.right.toPrecision(18),maxy:bounds.top.toPrecision(18),SRS:context.projection}));node.appendChild(this.createElementDefaultNS(\"Title\",context.title));node.appendChild(this.write_ol_MapExtension(context));return node;},write_ol_MapExtension:function(context){var node=this.createElementDefaultNS(\"Extension\");var bounds=context.maxExtent;if(bounds){var maxExtent=this.createElementNS(this.namespaces.ol,\"ol:maxExtent\");this.setAttributes(maxExtent,{minx:bounds.left.toPrecision(18),miny:bounds.bottom.toPrecision(18),maxx:bounds.right.toPrecision(18),maxy:bounds.top.toPrecision(18)});node.appendChild(maxExtent);}\nreturn node;},write_wmc_LayerList:function(context){var list=this.createElementDefaultNS(\"LayerList\");for(var i=0,len=context.layersContext.length;i<len;++i){list.appendChild(this.write_wmc_Layer(context.layersContext[i]));}\nreturn list;},write_wmc_Layer:function(context){var node=this.createElementDefaultNS(\"Layer\",null,{queryable:context.queryable?\"1\":\"0\",hidden:context.visibility?\"0\":\"1\"});node.appendChild(this.write_wmc_Server(context));node.appendChild(this.createElementDefaultNS(\"Name\",context.name));node.appendChild(this.createElementDefaultNS(\"Title\",context.title));if(context.metadataURL){node.appendChild(this.write_wmc_MetadataURL(context.metadataURL));}\nreturn node;},write_wmc_LayerExtension:function(context){var node=this.createElementDefaultNS(\"Extension\");var bounds=context.maxExtent;var maxExtent=this.createElementNS(this.namespaces.ol,\"ol:maxExtent\");this.setAttributes(maxExtent,{minx:bounds.left.toPrecision(18),miny:bounds.bottom.toPrecision(18),maxx:bounds.right.toPrecision(18),maxy:bounds.top.toPrecision(18)});node.appendChild(maxExtent);if(context.tileSize&&!context.singleTile){var size=this.createElementNS(this.namespaces.ol,\"ol:tileSize\");this.setAttributes(size,context.tileSize);node.appendChild(size);}\nvar properties=[\"transparent\",\"numZoomLevels\",\"units\",\"isBaseLayer\",\"opacity\",\"displayInLayerSwitcher\",\"singleTile\"];var child;for(var i=0,len=properties.length;i<len;++i){child=this.createOLPropertyNode(context,properties[i]);if(child){node.appendChild(child);}}\nreturn node;},createOLPropertyNode:function(obj,prop){var node=null;if(obj[prop]!=null){node=this.createElementNS(this.namespaces.ol,\"ol:\"+prop);node.appendChild(this.createTextNode(obj[prop].toString()));}\nreturn node;},write_wmc_Server:function(context){var node=this.createElementDefaultNS(\"Server\");this.setAttributes(node,{service:\"OGC:WMS\",version:context.version});node.appendChild(this.write_wmc_OnlineResource(context.url));return node;},write_wmc_MetadataURL:function(metadataURL){var node=this.createElementDefaultNS(\"MetadataURL\");node.appendChild(this.write_wmc_OnlineResource(metadataURL));return node;},write_wmc_FormatList:function(context){var node=this.createElementDefaultNS(\"FormatList\");for(var i=0,len=context.formats.length;i<len;i++){var format=context.formats[i];node.appendChild(this.createElementDefaultNS(\"Format\",format.value,(format.current&&format.current==true)?{current:\"1\"}:null));}\nreturn node;},write_wmc_StyleList:function(layer){var node=this.createElementDefaultNS(\"StyleList\");var styles=layer.styles;if(styles&&styles instanceof Array){var sld;for(var i=0,len=styles.length;i<len;i++){var s=styles[i];var style=this.createElementDefaultNS(\"Style\",null,(s.current&&s.current==true)?{current:\"1\"}:null);if(s.href){sld=this.createElementDefaultNS(\"SLD\");var link=this.write_wmc_OnlineResource(s.href);sld.appendChild(link);sld.appendChild(this.createElementDefaultNS(\"Name\",s.name));if(s.title){sld.appendChild(this.createElementDefaultNS(\"Title\",s.title));}\nstyle.appendChild(sld);}else if(s.body){sld=this.createElementDefaultNS(\"SLD\");var doc=OpenLayers.Format.XML.prototype.read.apply(this,[s.body]);var imported=doc.documentElement;if(sld.ownerDocument&&sld.ownerDocument.importNode){imported=sld.ownerDocument.importNode(imported,true);}\nsld.appendChild(imported);sld.appendChild(this.createElementDefaultNS(\"Name\",s.name));if(s.title){sld.appendChild(this.createElementDefaultNS(\"Title\",s.title));}\nstyle.appendChild(sld);}else{style.appendChild(this.createElementDefaultNS(\"Name\",s.name));style.appendChild(this.createElementDefaultNS(\"Title\",s.title));if(s['abstract']){style.appendChild(this.createElementDefaultNS(\"Abstract\",s['abstract']));}}\nnode.appendChild(style);}}\nreturn node;},write_wmc_OnlineResource:function(href){var node=this.createElementDefaultNS(\"OnlineResource\");this.setAttributeNS(node,this.namespaces.xlink,\"xlink:type\",\"simple\");this.setAttributeNS(node,this.namespaces.xlink,\"xlink:href\",href);return node;},CLASS_NAME:\"OpenLayers.Format.WMC.v1\"});OpenLayers.Format.WMSCapabilities.v1_1=OpenLayers.Class(OpenLayers.Format.WMSCapabilities.v1,{readers:{\"wms\":OpenLayers.Util.applyDefaults({\"WMT_MS_Capabilities\":function(node,obj){this.readChildNodes(node,obj);},\"Keyword\":function(node,obj){if(obj.keywords){obj.keywords.push(this.getChildValue(node));}},\"DescribeLayer\":function(node,obj){obj.describelayer={formats:[]};this.readChildNodes(node,obj.describelayer);},\"GetLegendGraphic\":function(node,obj){obj.getlegendgraphic={formats:[]};this.readChildNodes(node,obj.getlegendgraphic);},\"GetStyles\":function(node,obj){obj.getstyles={formats:[]};this.readChildNodes(node,obj.getstyles);},\"PutStyles\":function(node,obj){obj.putstyles={formats:[]};this.readChildNodes(node,obj.putstyles);},\"UserDefinedSymbolization\":function(node,obj){var userSymbols={supportSLD:parseInt(node.getAttribute(\"SupportSLD\"))==1,userLayer:parseInt(node.getAttribute(\"UserLayer\"))==1,userStyle:parseInt(node.getAttribute(\"UserStyle\"))==1,remoteWFS:parseInt(node.getAttribute(\"RemoteWFS\"))==1};obj.userSymbols=userSymbols;},\"LatLonBoundingBox\":function(node,obj){obj.llbbox=[parseFloat(node.getAttribute(\"minx\")),parseFloat(node.getAttribute(\"miny\")),parseFloat(node.getAttribute(\"maxx\")),parseFloat(node.getAttribute(\"maxy\"))];},\"BoundingBox\":function(node,obj){var bbox=OpenLayers.Format.WMSCapabilities.v1.prototype.readers[\"wms\"].BoundingBox.apply(this,[node,obj]);bbox.srs=node.getAttribute(\"SRS\");obj.bbox[bbox.srs]=bbox;},\"ScaleHint\":function(node,obj){var min=node.getAttribute(\"min\");var max=node.getAttribute(\"max\");var rad2=Math.pow(2,0.5);var ipm=OpenLayers.INCHES_PER_UNIT[\"m\"];obj.maxScale=parseFloat(((min/rad2)*ipm*OpenLayers.DOTS_PER_INCH).toPrecision(13));obj.minScale=parseFloat(((max/rad2)*ipm*OpenLayers.DOTS_PER_INCH).toPrecision(13));},\"Dimension\":function(node,obj){var name=node.getAttribute(\"name\").toLowerCase();var dim={name:name,units:node.getAttribute(\"units\"),unitsymbol:node.getAttribute(\"unitSymbol\")};obj.dimensions[dim.name]=dim;},\"Extent\":function(node,obj){var name=node.getAttribute(\"name\").toLowerCase();if(name in obj[\"dimensions\"]){var extent=obj.dimensions[name];extent.nearestVal=node.getAttribute(\"nearestValue\")===\"1\";extent.multipleVal=node.getAttribute(\"multipleValues\")===\"1\";extent.current=node.getAttribute(\"current\")===\"1\";extent[\"default\"]=node.getAttribute(\"default\")||\"\";var values=this.getChildValue(node);extent.values=values.split(\",\");}}},OpenLayers.Format.WMSCapabilities.v1.prototype.readers[\"wms\"])},CLASS_NAME:\"OpenLayers.Format.WMSCapabilities.v1_1\"});OpenLayers.Format.WMSCapabilities.v1_3=OpenLayers.Class(OpenLayers.Format.WMSCapabilities.v1,{readers:{\"wms\":OpenLayers.Util.applyDefaults({\"WMS_Capabilities\":function(node,obj){this.readChildNodes(node,obj);},\"LayerLimit\":function(node,obj){obj.layerLimit=parseInt(this.getChildValue(node));},\"MaxWidth\":function(node,obj){obj.maxWidth=parseInt(this.getChildValue(node));},\"MaxHeight\":function(node,obj){obj.maxHeight=parseInt(this.getChildValue(node));},\"BoundingBox\":function(node,obj){var bbox=OpenLayers.Format.WMSCapabilities.v1.prototype.readers[\"wms\"].BoundingBox.apply(this,[node,obj]);bbox.srs=node.getAttribute(\"CRS\");obj.bbox[bbox.srs]=bbox;},\"CRS\":function(node,obj){this.readers.wms.SRS.apply(this,[node,obj]);},\"EX_GeographicBoundingBox\":function(node,obj){obj.llbbox=[];this.readChildNodes(node,obj.llbbox);},\"westBoundLongitude\":function(node,obj){obj[0]=this.getChildValue(node);},\"eastBoundLongitude\":function(node,obj){obj[2]=this.getChildValue(node);},\"southBoundLatitude\":function(node,obj){obj[1]=this.getChildValue(node);},\"northBoundLatitude\":function(node,obj){obj[3]=this.getChildValue(node);},\"MinScaleDenominator\":function(node,obj){obj.maxScale=parseFloat(this.getChildValue(node)).toPrecision(16);},\"MaxScaleDenominator\":function(node,obj){obj.minScale=parseFloat(this.getChildValue(node)).toPrecision(16);},\"Dimension\":function(node,obj){var name=node.getAttribute(\"name\").toLowerCase();var dim={name:name,units:node.getAttribute(\"units\"),unitsymbol:node.getAttribute(\"unitSymbol\"),nearestVal:node.getAttribute(\"nearestValue\")===\"1\",multipleVal:node.getAttribute(\"multipleValues\")===\"1\",\"default\":node.getAttribute(\"default\")||\"\",current:node.getAttribute(\"current\")===\"1\",values:this.getChildValue(node).split(\",\")};obj.dimensions[dim.name]=dim;},\"Keyword\":function(node,obj){var keyword={value:this.getChildValue(node),vocabulary:node.getAttribute(\"vocabulary\")};if(obj.keywords){obj.keywords.push(keyword);}}},OpenLayers.Format.WMSCapabilities.v1.prototype.readers[\"wms\"]),\"sld\":{\"UserDefinedSymbolization\":function(node,obj){this.readers.wms.UserDefinedSymbolization.apply(this,[node,obj]);obj.userSymbols.inlineFeature=parseInt(node.getAttribute(\"InlineFeature\"))==1;obj.userSymbols.remoteWCS=parseInt(node.getAttribute(\"RemoteWCS\"))==1;},\"DescribeLayer\":function(node,obj){this.readers.wms.DescribeLayer.apply(this,[node,obj]);},\"GetLegendGraphic\":function(node,obj){this.readers.wms.GetLegendGraphic.apply(this,[node,obj]);}}},CLASS_NAME:\"OpenLayers.Format.WMSCapabilities.v1_3\"});OpenLayers.Format.WMTSCapabilities.v1_0_0=OpenLayers.Class(OpenLayers.Format.OWSCommon.v1_1_0,{version:\"1.0.0\",namespaces:{ows:\"http://www.opengis.net/ows/1.1\",wmts:\"http://www.opengis.net/wmts/1.0\",xlink:\"http://www.w3.org/1999/xlink\"},yx:null,defaultPrefix:\"wmts\",initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);this.options=options;var yx=OpenLayers.Util.extend({},OpenLayers.Format.WMTSCapabilities.prototype.yx);this.yx=OpenLayers.Util.extend(yx,this.yx);},read:function(data){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nif(data&&data.nodeType==9){data=data.documentElement;}\nvar capabilities={};this.readNode(data,capabilities);capabilities.version=this.version;return capabilities;},readers:{\"wmts\":{\"Capabilities\":function(node,obj){this.readChildNodes(node,obj);},\"Contents\":function(node,obj){obj.contents={};obj.contents.layers=[];obj.contents.tileMatrixSets={};this.readChildNodes(node,obj.contents);},\"Layer\":function(node,obj){var layer={styles:[],formats:[],tileMatrixSetLinks:[]};layer.layers=[];this.readChildNodes(node,layer);obj.layers.push(layer);},\"Style\":function(node,obj){var style={};style.isDefault=(node.getAttribute(\"isDefault\")===\"true\");this.readChildNodes(node,style);obj.styles.push(style);},\"Format\":function(node,obj){obj.formats.push(this.getChildValue(node));},\"TileMatrixSetLink\":function(node,obj){var tileMatrixSetLink={};this.readChildNodes(node,tileMatrixSetLink);obj.tileMatrixSetLinks.push(tileMatrixSetLink);},\"TileMatrixSet\":function(node,obj){if(obj.layers){var tileMatrixSet={matrixIds:[]};this.readChildNodes(node,tileMatrixSet);obj.tileMatrixSets[tileMatrixSet.identifier]=tileMatrixSet;}else{obj.tileMatrixSet=this.getChildValue(node);}},\"TileMatrix\":function(node,obj){var tileMatrix={supportedCRS:obj.supportedCRS};this.readChildNodes(node,tileMatrix);obj.matrixIds.push(tileMatrix);},\"ScaleDenominator\":function(node,obj){obj.scaleDenominator=parseFloat(this.getChildValue(node));},\"TopLeftCorner\":function(node,obj){var topLeftCorner=this.getChildValue(node);var coords=topLeftCorner.split(\" \");var yx;if(obj.supportedCRS){var crs=obj.supportedCRS.replace(/urn:ogc:def:crs:(\\w+):.+:(\\w+)$/,\"urn:ogc:def:crs:$1::$2\");yx=!!this.yx[crs];}\nif(yx){obj.topLeftCorner=new OpenLayers.LonLat(coords[1],coords[0]);}else{obj.topLeftCorner=new OpenLayers.LonLat(coords[0],coords[1]);}},\"TileWidth\":function(node,obj){obj.tileWidth=parseInt(this.getChildValue(node));},\"TileHeight\":function(node,obj){obj.tileHeight=parseInt(this.getChildValue(node));},\"MatrixWidth\":function(node,obj){obj.matrixWidth=parseInt(this.getChildValue(node));},\"MatrixHeight\":function(node,obj){obj.matrixHeight=parseInt(this.getChildValue(node));},\"WSDL\":function(node,obj){obj.wsdl={};obj.wsdl.href=node.getAttribute(\"xlink:href\");},\"ServiceMetadataURL\":function(node,obj){obj.serviceMetadataUrl={};obj.serviceMetadataUrl.href=node.getAttribute(\"xlink:href\");}},\"ows\":OpenLayers.Format.OWSCommon.v1_1_0.prototype.readers[\"ows\"]},CLASS_NAME:\"OpenLayers.Format.WMTSCapabilities.v1_0_0\"});OpenLayers.Layer.Boxes=OpenLayers.Class(OpenLayers.Layer.Markers,{initialize:function(name,options){OpenLayers.Layer.Markers.prototype.initialize.apply(this,arguments);},drawMarker:function(marker){var bounds=marker.bounds;var topleft=this.map.getLayerPxFromLonLat(new OpenLayers.LonLat(bounds.left,bounds.top));var botright=this.map.getLayerPxFromLonLat(new OpenLayers.LonLat(bounds.right,bounds.bottom));if(botright==null||topleft==null){marker.display(false);}else{var sz=new OpenLayers.Size(Math.max(1,botright.x-topleft.x),Math.max(1,botright.y-topleft.y));var markerDiv=marker.draw(topleft,sz);if(!marker.drawn){this.div.appendChild(markerDiv);marker.drawn=true;}}},removeMarker:function(marker){OpenLayers.Util.removeItem(this.markers,marker);if((marker.div!=null)&&(marker.div.parentNode==this.div)){this.div.removeChild(marker.div);}},CLASS_NAME:\"OpenLayers.Layer.Boxes\"});OpenLayers.Layer.GeoRSS=OpenLayers.Class(OpenLayers.Layer.Markers,{location:null,features:null,formatOptions:null,selectedFeature:null,icon:null,popupSize:null,useFeedTitle:true,initialize:function(name,location,options){OpenLayers.Layer.Markers.prototype.initialize.apply(this,[name,options]);this.location=location;this.features=[];},destroy:function(){OpenLayers.Layer.Markers.prototype.destroy.apply(this,arguments);this.clearFeatures();this.features=null;},loadRSS:function(){if(!this.loaded){this.events.triggerEvent(\"loadstart\");OpenLayers.Request.GET({url:this.location,success:this.parseData,scope:this});this.loaded=true;}},moveTo:function(bounds,zoomChanged,minor){OpenLayers.Layer.Markers.prototype.moveTo.apply(this,arguments);if(this.visibility&&!this.loaded){this.loadRSS();}},parseData:function(ajaxRequest){var doc=ajaxRequest.responseXML;if(!doc||!doc.documentElement){doc=OpenLayers.Format.XML.prototype.read(ajaxRequest.responseText);}\nif(this.useFeedTitle){var name=null;try{name=doc.getElementsByTagNameNS('*','title')[0].firstChild.nodeValue;}\ncatch(e){name=doc.getElementsByTagName('title')[0].firstChild.nodeValue;}\nif(name){this.setName(name);}}\nvar options={};OpenLayers.Util.extend(options,this.formatOptions);if(this.map&&!this.projection.equals(this.map.getProjectionObject())){options.externalProjection=this.projection;options.internalProjection=this.map.getProjectionObject();}\nvar format=new OpenLayers.Format.GeoRSS(options);var features=format.read(doc);for(var i=0,len=features.length;i<len;i++){var data={};var feature=features[i];if(!feature.geometry){continue;}\nvar title=feature.attributes.title?feature.attributes.title:\"Untitled\";var description=feature.attributes.description?feature.attributes.description:\"No description.\";var link=feature.attributes.link?feature.attributes.link:\"\";var location=feature.geometry.getBounds().getCenterLonLat();data.icon=this.icon==null?OpenLayers.Marker.defaultIcon():this.icon.clone();data.popupSize=this.popupSize?this.popupSize.clone():new OpenLayers.Size(250,120);if(title||description){data.title=title;data.description=description;var contentHTML='<div class=\"olLayerGeoRSSClose\">[x]</div>';contentHTML+='<div class=\"olLayerGeoRSSTitle\">';if(link){contentHTML+='<a class=\"link\" href=\"'+link+'\" target=\"_blank\">';}\ncontentHTML+=title;if(link){contentHTML+='</a>';}\ncontentHTML+='</div>';contentHTML+='<div style=\"\" class=\"olLayerGeoRSSDescription\">';contentHTML+=description;contentHTML+='</div>';data['popupContentHTML']=contentHTML;}\nvar feature=new OpenLayers.Feature(this,location,data);this.features.push(feature);var marker=feature.createMarker();marker.events.register('click',feature,this.markerClick);this.addMarker(marker);}\nthis.events.triggerEvent(\"loadend\");},markerClick:function(evt){var sameMarkerClicked=(this==this.layer.selectedFeature);this.layer.selectedFeature=(!sameMarkerClicked)?this:null;for(var i=0,len=this.layer.map.popups.length;i<len;i++){this.layer.map.removePopup(this.layer.map.popups[i]);}\nif(!sameMarkerClicked){var popup=this.createPopup();OpenLayers.Event.observe(popup.div,\"click\",OpenLayers.Function.bind(function(){for(var i=0,len=this.layer.map.popups.length;i<len;i++){this.layer.map.removePopup(this.layer.map.popups[i]);}},this));this.layer.map.addPopup(popup);}\nOpenLayers.Event.stop(evt);},clearFeatures:function(){if(this.features!=null){while(this.features.length>0){var feature=this.features[0];OpenLayers.Util.removeItem(this.features,feature);feature.destroy();}}},CLASS_NAME:\"OpenLayers.Layer.GeoRSS\"});OpenLayers.Layer.Google=OpenLayers.Class(OpenLayers.Layer.EventPane,OpenLayers.Layer.FixedZoomLevels,{MIN_ZOOM_LEVEL:0,MAX_ZOOM_LEVEL:21,RESOLUTIONS:[1.40625,0.703125,0.3515625,0.17578125,0.087890625,0.0439453125,0.02197265625,0.010986328125,0.0054931640625,0.00274658203125,0.001373291015625,0.0006866455078125,0.00034332275390625,0.000171661376953125,0.0000858306884765625,0.00004291534423828125,0.00002145767211914062,0.00001072883605957031,0.00000536441802978515,0.00000268220901489257,0.0000013411045074462891,0.00000067055225372314453],type:null,wrapDateLine:true,sphericalMercator:false,version:null,initialize:function(name,options){options=options||{};if(!options.version){options.version=typeof GMap2===\"function\"?\"2\":\"3\";}\nvar mixin=OpenLayers.Layer.Google[\"v\"+\noptions.version.replace(/\\./g,\"_\")];if(mixin){OpenLayers.Util.applyDefaults(options,mixin);}else{throw\"Unsupported Google Maps API version: \"+options.version;}\nOpenLayers.Util.applyDefaults(options,mixin.DEFAULTS);if(options.maxExtent){options.maxExtent=options.maxExtent.clone();}\nOpenLayers.Layer.EventPane.prototype.initialize.apply(this,[name,options]);OpenLayers.Layer.FixedZoomLevels.prototype.initialize.apply(this,[name,options]);if(this.sphericalMercator){OpenLayers.Util.extend(this,OpenLayers.Layer.SphericalMercator);this.initMercatorParameters();}},clone:function(){return new OpenLayers.Layer.Google(this.name,this.getOptions());},setVisibility:function(visible){var opacity=this.opacity==null?1:this.opacity;OpenLayers.Layer.EventPane.prototype.setVisibility.apply(this,arguments);this.setOpacity(opacity);},display:function(visible){if(!this._dragging){this.setGMapVisibility(visible);}\nOpenLayers.Layer.EventPane.prototype.display.apply(this,arguments);},moveTo:function(bounds,zoomChanged,dragging){this._dragging=dragging;OpenLayers.Layer.EventPane.prototype.moveTo.apply(this,arguments);delete this._dragging;},setOpacity:function(opacity){if(opacity!==this.opacity){if(this.map!=null){this.map.events.triggerEvent(\"changelayer\",{layer:this,property:\"opacity\"});}\nthis.opacity=opacity;}\nif(this.getVisibility()){var container=this.getMapContainer();OpenLayers.Util.modifyDOMElement(container,null,null,null,null,null,null,opacity);}},destroy:function(){if(this.map){this.setGMapVisibility(false);var cache=OpenLayers.Layer.Google.cache[this.map.id];if(cache&&cache.count<=1){this.removeGMapElements();}}\nOpenLayers.Layer.EventPane.prototype.destroy.apply(this,arguments);},removeGMapElements:function(){var cache=OpenLayers.Layer.Google.cache[this.map.id];if(cache){var container=this.mapObject&&this.getMapContainer();if(container&&container.parentNode){container.parentNode.removeChild(container);}\nvar termsOfUse=cache.termsOfUse;if(termsOfUse&&termsOfUse.parentNode){termsOfUse.parentNode.removeChild(termsOfUse);}\nvar poweredBy=cache.poweredBy;if(poweredBy&&poweredBy.parentNode){poweredBy.parentNode.removeChild(poweredBy);}}},removeMap:function(map){if(this.visibility&&this.mapObject){this.setGMapVisibility(false);}\nvar cache=OpenLayers.Layer.Google.cache[map.id];if(cache){if(cache.count<=1){this.removeGMapElements();delete OpenLayers.Layer.Google.cache[map.id];}else{--cache.count;}}\ndelete this.termsOfUse;delete this.poweredBy;delete this.mapObject;delete this.dragObject;OpenLayers.Layer.EventPane.prototype.removeMap.apply(this,arguments);},getOLBoundsFromMapObjectBounds:function(moBounds){var olBounds=null;if(moBounds!=null){var sw=moBounds.getSouthWest();var ne=moBounds.getNorthEast();if(this.sphericalMercator){sw=this.forwardMercator(sw.lng(),sw.lat());ne=this.forwardMercator(ne.lng(),ne.lat());}else{sw=new OpenLayers.LonLat(sw.lng(),sw.lat());ne=new OpenLayers.LonLat(ne.lng(),ne.lat());}\nolBounds=new OpenLayers.Bounds(sw.lon,sw.lat,ne.lon,ne.lat);}\nreturn olBounds;},getWarningHTML:function(){return OpenLayers.i18n(\"googleWarning\");},getMapObjectCenter:function(){return this.mapObject.getCenter();},getMapObjectZoom:function(){return this.mapObject.getZoom();},getLongitudeFromMapObjectLonLat:function(moLonLat){return this.sphericalMercator?this.forwardMercator(moLonLat.lng(),moLonLat.lat()).lon:moLonLat.lng();},getLatitudeFromMapObjectLonLat:function(moLonLat){var lat=this.sphericalMercator?this.forwardMercator(moLonLat.lng(),moLonLat.lat()).lat:moLonLat.lat();return lat;},getXFromMapObjectPixel:function(moPixel){return moPixel.x;},getYFromMapObjectPixel:function(moPixel){return moPixel.y;},CLASS_NAME:\"OpenLayers.Layer.Google\"});OpenLayers.Layer.Google.cache={};OpenLayers.Layer.Google.v2={termsOfUse:null,poweredBy:null,dragObject:null,loadMapObject:function(){if(!this.type){this.type=G_NORMAL_MAP;}\nvar mapObject,termsOfUse,poweredBy;var cache=OpenLayers.Layer.Google.cache[this.map.id];if(cache){mapObject=cache.mapObject;termsOfUse=cache.termsOfUse;poweredBy=cache.poweredBy;++cache.count;}else{var container=this.map.viewPortDiv;var div=document.createElement(\"div\");div.id=this.map.id+\"_GMap2Container\";div.style.position=\"absolute\";div.style.width=\"100%\";div.style.height=\"100%\";container.appendChild(div);try{mapObject=new GMap2(div);termsOfUse=div.lastChild;container.appendChild(termsOfUse);termsOfUse.style.zIndex=\"1100\";termsOfUse.style.right=\"\";termsOfUse.style.bottom=\"\";termsOfUse.className=\"olLayerGoogleCopyright\";poweredBy=div.lastChild;container.appendChild(poweredBy);poweredBy.style.zIndex=\"1100\";poweredBy.style.right=\"\";poweredBy.style.bottom=\"\";poweredBy.className=\"olLayerGooglePoweredBy gmnoprint\";}catch(e){throw(e);}\nOpenLayers.Layer.Google.cache[this.map.id]={mapObject:mapObject,termsOfUse:termsOfUse,poweredBy:poweredBy,count:1};}\nthis.mapObject=mapObject;this.termsOfUse=termsOfUse;this.poweredBy=poweredBy;if(OpenLayers.Util.indexOf(this.mapObject.getMapTypes(),this.type)===-1){this.mapObject.addMapType(this.type);}\nif(typeof mapObject.getDragObject==\"function\"){this.dragObject=mapObject.getDragObject();}else{this.dragPanMapObject=null;}\nif(this.isBaseLayer===false){this.setGMapVisibility(this.div.style.display!==\"none\");}},onMapResize:function(){if(this.visibility&&this.mapObject.isLoaded()){this.mapObject.checkResize();}else{if(!this._resized){var layer=this;var handle=GEvent.addListener(this.mapObject,\"load\",function(){GEvent.removeListener(handle);delete layer._resized;layer.mapObject.checkResize();layer.moveTo(layer.map.getCenter(),layer.map.getZoom());});}\nthis._resized=true;}},setGMapVisibility:function(visible){var cache=OpenLayers.Layer.Google.cache[this.map.id];if(cache){var container=this.mapObject.getContainer();if(visible===true){this.mapObject.setMapType(this.type);container.style.display=\"\";this.termsOfUse.style.left=\"\";this.termsOfUse.style.display=\"\";this.poweredBy.style.display=\"\";cache.displayed=this.id;}else{if(cache.displayed===this.id){delete cache.displayed;}\nif(!cache.displayed){container.style.display=\"none\";this.termsOfUse.style.display=\"none\";this.termsOfUse.style.left=\"-9999px\";this.poweredBy.style.display=\"none\";}}}},getMapContainer:function(){return this.mapObject.getContainer();},getMapObjectBoundsFromOLBounds:function(olBounds){var moBounds=null;if(olBounds!=null){var sw=this.sphericalMercator?this.inverseMercator(olBounds.bottom,olBounds.left):new OpenLayers.LonLat(olBounds.bottom,olBounds.left);var ne=this.sphericalMercator?this.inverseMercator(olBounds.top,olBounds.right):new OpenLayers.LonLat(olBounds.top,olBounds.right);moBounds=new GLatLngBounds(new GLatLng(sw.lat,sw.lon),new GLatLng(ne.lat,ne.lon));}\nreturn moBounds;},setMapObjectCenter:function(center,zoom){this.mapObject.setCenter(center,zoom);},dragPanMapObject:function(dX,dY){this.dragObject.moveBy(new GSize(-dX,dY));},getMapObjectLonLatFromMapObjectPixel:function(moPixel){return this.mapObject.fromContainerPixelToLatLng(moPixel);},getMapObjectPixelFromMapObjectLonLat:function(moLonLat){return this.mapObject.fromLatLngToContainerPixel(moLonLat);},getMapObjectZoomFromMapObjectBounds:function(moBounds){return this.mapObject.getBoundsZoomLevel(moBounds);},getMapObjectLonLatFromLonLat:function(lon,lat){var gLatLng;if(this.sphericalMercator){var lonlat=this.inverseMercator(lon,lat);gLatLng=new GLatLng(lonlat.lat,lonlat.lon);}else{gLatLng=new GLatLng(lat,lon);}\nreturn gLatLng;},getMapObjectPixelFromXY:function(x,y){return new GPoint(x,y);}};OpenLayers.Layer.Grid=OpenLayers.Class(OpenLayers.Layer.HTTPRequest,{tileSize:null,grid:null,singleTile:false,ratio:1.5,buffer:2,numLoadingTiles:0,initialize:function(name,url,params,options){OpenLayers.Layer.HTTPRequest.prototype.initialize.apply(this,arguments);this.events.addEventType(\"tileloaded\");this.grid=[];},destroy:function(){this.clearGrid();this.grid=null;this.tileSize=null;OpenLayers.Layer.HTTPRequest.prototype.destroy.apply(this,arguments);},clearGrid:function(){if(this.grid){for(var iRow=0,len=this.grid.length;iRow<len;iRow++){var row=this.grid[iRow];for(var iCol=0,clen=row.length;iCol<clen;iCol++){var tile=row[iCol];this.removeTileMonitoringHooks(tile);tile.destroy();}}\nthis.grid=[];}},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.Grid(this.name,this.url,this.params,this.getOptions());}\nobj=OpenLayers.Layer.HTTPRequest.prototype.clone.apply(this,[obj]);if(this.tileSize!=null){obj.tileSize=this.tileSize.clone();}\nobj.grid=[];return obj;},moveTo:function(bounds,zoomChanged,dragging){OpenLayers.Layer.HTTPRequest.prototype.moveTo.apply(this,arguments);bounds=bounds||this.map.getExtent();if(bounds!=null){var forceReTile=!this.grid.length||zoomChanged;var tilesBounds=this.getTilesBounds();if(this.singleTile){if(forceReTile||(!dragging&&!tilesBounds.containsBounds(bounds))){this.initSingleTile(bounds);}}else{if(forceReTile||!tilesBounds.containsBounds(bounds,true)){this.initGriddedTiles(bounds);}else{this.moveGriddedTiles(bounds);}}}},setTileSize:function(size){if(this.singleTile){size=this.map.getSize();size.h=parseInt(size.h*this.ratio);size.w=parseInt(size.w*this.ratio);}\nOpenLayers.Layer.HTTPRequest.prototype.setTileSize.apply(this,[size]);},getGridBounds:function(){var msg=\"The getGridBounds() function is deprecated. It will be \"+\"removed in 3.0. Please use getTilesBounds() instead.\";OpenLayers.Console.warn(msg);return this.getTilesBounds();},getTilesBounds:function(){var bounds=null;if(this.grid.length){var bottom=this.grid.length-1;var bottomLeftTile=this.grid[bottom][0];var right=this.grid[0].length-1;var topRightTile=this.grid[0][right];bounds=new OpenLayers.Bounds(bottomLeftTile.bounds.left,bottomLeftTile.bounds.bottom,topRightTile.bounds.right,topRightTile.bounds.top);}\nreturn bounds;},initSingleTile:function(bounds){var center=bounds.getCenterLonLat();var tileWidth=bounds.getWidth()*this.ratio;var tileHeight=bounds.getHeight()*this.ratio;var tileBounds=new OpenLayers.Bounds(center.lon-(tileWidth/2),center.lat-(tileHeight/2),center.lon+(tileWidth/2),center.lat+(tileHeight/2));var ul=new OpenLayers.LonLat(tileBounds.left,tileBounds.top);var px=this.map.getLayerPxFromLonLat(ul);if(!this.grid.length){this.grid[0]=[];}\nvar tile=this.grid[0][0];if(!tile){tile=this.addTile(tileBounds,px);this.addTileMonitoringHooks(tile);tile.draw();this.grid[0][0]=tile;}else{tile.moveTo(tileBounds,px);}\nthis.removeExcessTiles(1,1);},calculateGridLayout:function(bounds,extent,resolution){var tilelon=resolution*this.tileSize.w;var tilelat=resolution*this.tileSize.h;var offsetlon=bounds.left-extent.left;var tilecol=Math.floor(offsetlon/tilelon)-this.buffer;var tilecolremain=offsetlon/tilelon-tilecol;var tileoffsetx=-tilecolremain*this.tileSize.w;var tileoffsetlon=extent.left+tilecol*tilelon;var offsetlat=bounds.top-(extent.bottom+tilelat);var tilerow=Math.ceil(offsetlat/tilelat)+this.buffer;var tilerowremain=tilerow-offsetlat/tilelat;var tileoffsety=-tilerowremain*this.tileSize.h;var tileoffsetlat=extent.bottom+tilerow*tilelat;return{tilelon:tilelon,tilelat:tilelat,tileoffsetlon:tileoffsetlon,tileoffsetlat:tileoffsetlat,tileoffsetx:tileoffsetx,tileoffsety:tileoffsety};},initGriddedTiles:function(bounds){var viewSize=this.map.getSize();var minRows=Math.ceil(viewSize.h/this.tileSize.h)+\nMath.max(1,2*this.buffer);var minCols=Math.ceil(viewSize.w/this.tileSize.w)+\nMath.max(1,2*this.buffer);var extent=this.getMaxExtent();var resolution=this.map.getResolution();var tileLayout=this.calculateGridLayout(bounds,extent,resolution);var tileoffsetx=Math.round(tileLayout.tileoffsetx);var tileoffsety=Math.round(tileLayout.tileoffsety);var tileoffsetlon=tileLayout.tileoffsetlon;var tileoffsetlat=tileLayout.tileoffsetlat;var tilelon=tileLayout.tilelon;var tilelat=tileLayout.tilelat;this.origin=new OpenLayers.Pixel(tileoffsetx,tileoffsety);var startX=tileoffsetx;var startLon=tileoffsetlon;var rowidx=0;var layerContainerDivLeft=parseInt(this.map.layerContainerDiv.style.left);var layerContainerDivTop=parseInt(this.map.layerContainerDiv.style.top);do{var row=this.grid[rowidx++];if(!row){row=[];this.grid.push(row);}\ntileoffsetlon=startLon;tileoffsetx=startX;var colidx=0;do{var tileBounds=new OpenLayers.Bounds(tileoffsetlon,tileoffsetlat,tileoffsetlon+tilelon,tileoffsetlat+tilelat);var x=tileoffsetx;x-=layerContainerDivLeft;var y=tileoffsety;y-=layerContainerDivTop;var px=new OpenLayers.Pixel(x,y);var tile=row[colidx++];if(!tile){tile=this.addTile(tileBounds,px);this.addTileMonitoringHooks(tile);row.push(tile);}else{tile.moveTo(tileBounds,px,false);}\ntileoffsetlon+=tilelon;tileoffsetx+=this.tileSize.w;}while((tileoffsetlon<=bounds.right+tilelon*this.buffer)||colidx<minCols);tileoffsetlat-=tilelat;tileoffsety+=this.tileSize.h;}while((tileoffsetlat>=bounds.bottom-tilelat*this.buffer)||rowidx<minRows);this.removeExcessTiles(rowidx,colidx);this.spiralTileLoad();},getMaxExtent:function(){return this.maxExtent;},spiralTileLoad:function(){var tileQueue=[];var directions=[\"right\",\"down\",\"left\",\"up\"];var iRow=0;var iCell=-1;var direction=OpenLayers.Util.indexOf(directions,\"right\");var directionsTried=0;while(directionsTried<directions.length){var testRow=iRow;var testCell=iCell;switch(directions[direction]){case\"right\":testCell++;break;case\"down\":testRow++;break;case\"left\":testCell--;break;case\"up\":testRow--;break;}\nvar tile=null;if((testRow<this.grid.length)&&(testRow>=0)&&(testCell<this.grid[0].length)&&(testCell>=0)){tile=this.grid[testRow][testCell];}\nif((tile!=null)&&(!tile.queued)){tileQueue.unshift(tile);tile.queued=true;directionsTried=0;iRow=testRow;iCell=testCell;}else{direction=(direction+1)%4;directionsTried++;}}\nfor(var i=0,len=tileQueue.length;i<len;i++){var tile=tileQueue[i];tile.draw();tile.queued=false;}},addTile:function(bounds,position){},addTileMonitoringHooks:function(tile){tile.onLoadStart=function(){if(this.numLoadingTiles==0){this.events.triggerEvent(\"loadstart\");}\nthis.numLoadingTiles++;};tile.events.register(\"loadstart\",this,tile.onLoadStart);tile.onLoadEnd=function(){this.numLoadingTiles--;this.events.triggerEvent(\"tileloaded\");if(this.numLoadingTiles==0){this.events.triggerEvent(\"loadend\");}};tile.events.register(\"loadend\",this,tile.onLoadEnd);tile.events.register(\"unload\",this,tile.onLoadEnd);},removeTileMonitoringHooks:function(tile){tile.unload();tile.events.un({\"loadstart\":tile.onLoadStart,\"loadend\":tile.onLoadEnd,\"unload\":tile.onLoadEnd,scope:this});},moveGriddedTiles:function(bounds){var buffer=this.buffer||1;while(true){var tlLayer=this.grid[0][0].position;var tlViewPort=this.map.getViewPortPxFromLayerPx(tlLayer);if(tlViewPort.x>-this.tileSize.w*(buffer-1)){this.shiftColumn(true);}else if(tlViewPort.x<-this.tileSize.w*buffer){this.shiftColumn(false);}else if(tlViewPort.y>-this.tileSize.h*(buffer-1)){this.shiftRow(true);}else if(tlViewPort.y<-this.tileSize.h*buffer){this.shiftRow(false);}else{break;}};},shiftRow:function(prepend){var modelRowIndex=(prepend)?0:(this.grid.length-1);var grid=this.grid;var modelRow=grid[modelRowIndex];var resolution=this.map.getResolution();var deltaY=(prepend)?-this.tileSize.h:this.tileSize.h;var deltaLat=resolution*-deltaY;var row=(prepend)?grid.pop():grid.shift();for(var i=0,len=modelRow.length;i<len;i++){var modelTile=modelRow[i];var bounds=modelTile.bounds.clone();var position=modelTile.position.clone();bounds.bottom=bounds.bottom+deltaLat;bounds.top=bounds.top+deltaLat;position.y=position.y+deltaY;row[i].moveTo(bounds,position);}\nif(prepend){grid.unshift(row);}else{grid.push(row);}},shiftColumn:function(prepend){var deltaX=(prepend)?-this.tileSize.w:this.tileSize.w;var resolution=this.map.getResolution();var deltaLon=resolution*deltaX;for(var i=0,len=this.grid.length;i<len;i++){var row=this.grid[i];var modelTileIndex=(prepend)?0:(row.length-1);var modelTile=row[modelTileIndex];var bounds=modelTile.bounds.clone();var position=modelTile.position.clone();bounds.left=bounds.left+deltaLon;bounds.right=bounds.right+deltaLon;position.x=position.x+deltaX;var tile=prepend?this.grid[i].pop():this.grid[i].shift();tile.moveTo(bounds,position);if(prepend){row.unshift(tile);}else{row.push(tile);}}},removeExcessTiles:function(rows,columns){while(this.grid.length>rows){var row=this.grid.pop();for(var i=0,l=row.length;i<l;i++){var tile=row[i];this.removeTileMonitoringHooks(tile);tile.destroy();}}\nwhile(this.grid[0].length>columns){for(var i=0,l=this.grid.length;i<l;i++){var row=this.grid[i];var tile=row.pop();this.removeTileMonitoringHooks(tile);tile.destroy();}}},onMapResize:function(){if(this.singleTile){this.clearGrid();this.setTileSize();}},getTileBounds:function(viewPortPx){var maxExtent=this.maxExtent;var resolution=this.getResolution();var tileMapWidth=resolution*this.tileSize.w;var tileMapHeight=resolution*this.tileSize.h;var mapPoint=this.getLonLatFromViewPortPx(viewPortPx);var tileLeft=maxExtent.left+(tileMapWidth*Math.floor((mapPoint.lon-\nmaxExtent.left)/tileMapWidth));var tileBottom=maxExtent.bottom+(tileMapHeight*Math.floor((mapPoint.lat-\nmaxExtent.bottom)/tileMapHeight));return new OpenLayers.Bounds(tileLeft,tileBottom,tileLeft+tileMapWidth,tileBottom+tileMapHeight);},CLASS_NAME:\"OpenLayers.Layer.Grid\"});OpenLayers.Layer.MultiMap=OpenLayers.Class(OpenLayers.Layer.EventPane,OpenLayers.Layer.FixedZoomLevels,{MIN_ZOOM_LEVEL:1,MAX_ZOOM_LEVEL:17,RESOLUTIONS:[9,1.40625,0.703125,0.3515625,0.17578125,0.087890625,0.0439453125,0.02197265625,0.010986328125,0.0054931640625,0.00274658203125,0.001373291015625,0.0006866455078125,0.00034332275390625,0.000171661376953125,0.0000858306884765625,0.00004291534423828125],type:null,initialize:function(name,options){OpenLayers.Layer.EventPane.prototype.initialize.apply(this,arguments);OpenLayers.Layer.FixedZoomLevels.prototype.initialize.apply(this,arguments);if(this.sphericalMercator){OpenLayers.Util.extend(this,OpenLayers.Layer.SphericalMercator);this.initMercatorParameters();this.RESOLUTIONS.unshift(10);}},loadMapObject:function(){try{this.mapObject=new MultimapViewer(this.div);}catch(e){}},getWarningHTML:function(){return OpenLayers.i18n(\"getLayerWarning\",{'layerType':\"MM\",'layerLib':\"MultiMap\"});},setMapObjectCenter:function(center,zoom){this.mapObject.goToPosition(center,zoom);},getMapObjectCenter:function(){return this.mapObject.getCurrentPosition();},getMapObjectZoom:function(){return this.mapObject.getZoomFactor();},getMapObjectLonLatFromMapObjectPixel:function(moPixel){moPixel.x=moPixel.x-(this.map.getSize().w/2);moPixel.y=moPixel.y-(this.map.getSize().h/2);return this.mapObject.getMapPositionAt(moPixel);},getMapObjectPixelFromMapObjectLonLat:function(moLonLat){return this.mapObject.geoPosToContainerPixels(moLonLat);},getLongitudeFromMapObjectLonLat:function(moLonLat){return this.sphericalMercator?this.forwardMercator(moLonLat.lon,moLonLat.lat).lon:moLonLat.lon;},getLatitudeFromMapObjectLonLat:function(moLonLat){return this.sphericalMercator?this.forwardMercator(moLonLat.lon,moLonLat.lat).lat:moLonLat.lat;},getMapObjectLonLatFromLonLat:function(lon,lat){var mmLatLon;if(this.sphericalMercator){var lonlat=this.inverseMercator(lon,lat);mmLatLon=new MMLatLon(lonlat.lat,lonlat.lon);}else{mmLatLon=new MMLatLon(lat,lon);}\nreturn mmLatLon;},getXFromMapObjectPixel:function(moPixel){return moPixel.x;},getYFromMapObjectPixel:function(moPixel){return moPixel.y;},getMapObjectPixelFromXY:function(x,y){return new MMPoint(x,y);},CLASS_NAME:\"OpenLayers.Layer.MultiMap\"});OpenLayers.Layer.VirtualEarth=OpenLayers.Class(OpenLayers.Layer.EventPane,OpenLayers.Layer.FixedZoomLevels,{MIN_ZOOM_LEVEL:1,MAX_ZOOM_LEVEL:19,RESOLUTIONS:[1.40625,0.703125,0.3515625,0.17578125,0.087890625,0.0439453125,0.02197265625,0.010986328125,0.0054931640625,0.00274658203125,0.001373291015625,0.0006866455078125,0.00034332275390625,0.000171661376953125,0.0000858306884765625,0.00004291534423828125,0.00002145767211914062,0.00001072883605957031,0.00000536441802978515],type:null,wrapDateLine:true,sphericalMercator:false,animationEnabled:true,initialize:function(name,options){OpenLayers.Layer.EventPane.prototype.initialize.apply(this,arguments);OpenLayers.Layer.FixedZoomLevels.prototype.initialize.apply(this,arguments);if(this.sphericalMercator){OpenLayers.Util.extend(this,OpenLayers.Layer.SphericalMercator);this.initMercatorParameters();}},loadMapObject:function(){var veDiv=OpenLayers.Util.createDiv(this.name);var sz=this.map.getSize();veDiv.style.width=sz.w+\"px\";veDiv.style.height=sz.h+\"px\";this.div.appendChild(veDiv);try{this.mapObject=new VEMap(this.name);}catch(e){}\nif(this.mapObject!=null){try{this.mapObject.LoadMap(null,null,this.type,true);this.mapObject.AttachEvent(\"onmousedown\",OpenLayers.Function.True);}catch(e){}\nthis.mapObject.HideDashboard();if(typeof this.mapObject.SetAnimationEnabled==\"function\"){this.mapObject.SetAnimationEnabled(this.animationEnabled);}}\nif(!this.mapObject||!this.mapObject.vemapcontrol||!this.mapObject.vemapcontrol.PanMap||(typeof this.mapObject.vemapcontrol.PanMap!=\"function\")){this.dragPanMapObject=null;}},onMapResize:function(){this.mapObject.Resize(this.map.size.w,this.map.size.h);},getWarningHTML:function(){return OpenLayers.i18n(\"getLayerWarning\",{'layerType':'VE','layerLib':'VirtualEarth'});},setMapObjectCenter:function(center,zoom){this.mapObject.SetCenterAndZoom(center,zoom);},getMapObjectCenter:function(){return this.mapObject.GetCenter();},dragPanMapObject:function(dX,dY){this.mapObject.vemapcontrol.PanMap(dX,-dY);},getMapObjectZoom:function(){return this.mapObject.GetZoomLevel();},getMapObjectLonLatFromMapObjectPixel:function(moPixel){return(typeof VEPixel!='undefined')?this.mapObject.PixelToLatLong(moPixel):this.mapObject.PixelToLatLong(moPixel.x,moPixel.y);},getMapObjectPixelFromMapObjectLonLat:function(moLonLat){return this.mapObject.LatLongToPixel(moLonLat);},getLongitudeFromMapObjectLonLat:function(moLonLat){return this.sphericalMercator?this.forwardMercator(moLonLat.Longitude,moLonLat.Latitude).lon:moLonLat.Longitude;},getLatitudeFromMapObjectLonLat:function(moLonLat){return this.sphericalMercator?this.forwardMercator(moLonLat.Longitude,moLonLat.Latitude).lat:moLonLat.Latitude;},getMapObjectLonLatFromLonLat:function(lon,lat){var veLatLong;if(this.sphericalMercator){var lonlat=this.inverseMercator(lon,lat);veLatLong=new VELatLong(lonlat.lat,lonlat.lon);}else{veLatLong=new VELatLong(lat,lon);}\nreturn veLatLong;},getXFromMapObjectPixel:function(moPixel){return moPixel.x;},getYFromMapObjectPixel:function(moPixel){return moPixel.y;},getMapObjectPixelFromXY:function(x,y){return(typeof VEPixel!='undefined')?new VEPixel(x,y):new Msn.VE.Pixel(x,y);},CLASS_NAME:\"OpenLayers.Layer.VirtualEarth\"});OpenLayers.Layer.Yahoo=OpenLayers.Class(OpenLayers.Layer.EventPane,OpenLayers.Layer.FixedZoomLevels,{MIN_ZOOM_LEVEL:0,MAX_ZOOM_LEVEL:17,RESOLUTIONS:[1.40625,0.703125,0.3515625,0.17578125,0.087890625,0.0439453125,0.02197265625,0.010986328125,0.0054931640625,0.00274658203125,0.001373291015625,0.0006866455078125,0.00034332275390625,0.000171661376953125,0.0000858306884765625,0.00004291534423828125,0.00002145767211914062,0.00001072883605957031],type:null,wrapDateLine:true,sphericalMercator:false,initialize:function(name,options){OpenLayers.Layer.EventPane.prototype.initialize.apply(this,arguments);OpenLayers.Layer.FixedZoomLevels.prototype.initialize.apply(this,arguments);if(this.sphericalMercator){OpenLayers.Util.extend(this,OpenLayers.Layer.SphericalMercator);this.initMercatorParameters();}},loadMapObject:function(){try{var size=this.getMapObjectSizeFromOLSize(this.map.getSize());this.mapObject=new YMap(this.div,this.type,size);this.mapObject.disableKeyControls();this.mapObject.disableDragMap();if(!this.mapObject.moveByXY||(typeof this.mapObject.moveByXY!=\"function\")){this.dragPanMapObject=null;}}catch(e){}},onMapResize:function(){try{var size=this.getMapObjectSizeFromOLSize(this.map.getSize());this.mapObject.resizeTo(size);}catch(e){}},setMap:function(map){OpenLayers.Layer.EventPane.prototype.setMap.apply(this,arguments);this.map.events.register(\"moveend\",this,this.fixYahooEventPane);},fixYahooEventPane:function(){var yahooEventPane=OpenLayers.Util.getElement(\"ygddfdiv\");if(yahooEventPane!=null){if(yahooEventPane.parentNode!=null){yahooEventPane.parentNode.removeChild(yahooEventPane);}\nthis.map.events.unregister(\"moveend\",this,this.fixYahooEventPane);}},getWarningHTML:function(){return OpenLayers.i18n(\"getLayerWarning\",{'layerType':'Yahoo','layerLib':'Yahoo'});},getOLZoomFromMapObjectZoom:function(moZoom){var zoom=null;if(moZoom!=null){zoom=OpenLayers.Layer.FixedZoomLevels.prototype.getOLZoomFromMapObjectZoom.apply(this,[moZoom]);zoom=18-zoom;}\nreturn zoom;},getMapObjectZoomFromOLZoom:function(olZoom){var zoom=null;if(olZoom!=null){zoom=OpenLayers.Layer.FixedZoomLevels.prototype.getMapObjectZoomFromOLZoom.apply(this,[olZoom]);zoom=18-zoom;}\nreturn zoom;},setMapObjectCenter:function(center,zoom){this.mapObject.drawZoomAndCenter(center,zoom);},getMapObjectCenter:function(){return this.mapObject.getCenterLatLon();},dragPanMapObject:function(dX,dY){this.mapObject.moveByXY({'x':-dX,'y':dY});},getMapObjectZoom:function(){return this.mapObject.getZoomLevel();},getMapObjectLonLatFromMapObjectPixel:function(moPixel){return this.mapObject.convertXYLatLon(moPixel);},getMapObjectPixelFromMapObjectLonLat:function(moLonLat){return this.mapObject.convertLatLonXY(moLonLat);},getLongitudeFromMapObjectLonLat:function(moLonLat){return this.sphericalMercator?this.forwardMercator(moLonLat.Lon,moLonLat.Lat).lon:moLonLat.Lon;},getLatitudeFromMapObjectLonLat:function(moLonLat){return this.sphericalMercator?this.forwardMercator(moLonLat.Lon,moLonLat.Lat).lat:moLonLat.Lat;},getMapObjectLonLatFromLonLat:function(lon,lat){var yLatLong;if(this.sphericalMercator){var lonlat=this.inverseMercator(lon,lat);yLatLong=new YGeoPoint(lonlat.lat,lonlat.lon);}else{yLatLong=new YGeoPoint(lat,lon);}\nreturn yLatLong;},getXFromMapObjectPixel:function(moPixel){return moPixel.x;},getYFromMapObjectPixel:function(moPixel){return moPixel.y;},getMapObjectPixelFromXY:function(x,y){return new YCoordPoint(x,y);},getMapObjectSizeFromOLSize:function(olSize){return new YSize(olSize.w,olSize.h);},CLASS_NAME:\"OpenLayers.Layer.Yahoo\"});OpenLayers.Style=OpenLayers.Class({id:null,name:null,title:null,description:null,layerName:null,isDefault:false,rules:null,context:null,defaultStyle:null,defaultsPerSymbolizer:false,propertyStyles:null,initialize:function(style,options){OpenLayers.Util.extend(this,options);this.rules=[];if(options&&options.rules){this.addRules(options.rules);}\nthis.setDefaultStyle(style||OpenLayers.Feature.Vector.style[\"default\"]);this.id=OpenLayers.Util.createUniqueID(this.CLASS_NAME+\"_\");},destroy:function(){for(var i=0,len=this.rules.length;i<len;i++){this.rules[i].destroy();this.rules[i]=null;}\nthis.rules=null;this.defaultStyle=null;},createSymbolizer:function(feature){var style=this.defaultsPerSymbolizer?{}:this.createLiterals(OpenLayers.Util.extend({},this.defaultStyle),feature);var rules=this.rules;var rule,context;var elseRules=[];var appliedRules=false;for(var i=0,len=rules.length;i<len;i++){rule=rules[i];var applies=rule.evaluate(feature);if(applies){if(rule instanceof OpenLayers.Rule&&rule.elseFilter){elseRules.push(rule);}else{appliedRules=true;this.applySymbolizer(rule,style,feature);}}}\nif(appliedRules==false&&elseRules.length>0){appliedRules=true;for(var i=0,len=elseRules.length;i<len;i++){this.applySymbolizer(elseRules[i],style,feature);}}\nif(rules.length>0&&appliedRules==false){style.display=\"none\";}\nreturn style;},applySymbolizer:function(rule,style,feature){var symbolizerPrefix=feature.geometry?this.getSymbolizerPrefix(feature.geometry):OpenLayers.Style.SYMBOLIZER_PREFIXES[0];var symbolizer=rule.symbolizer[symbolizerPrefix]||rule.symbolizer;if(this.defaultsPerSymbolizer===true){var defaults=this.defaultStyle;OpenLayers.Util.applyDefaults(symbolizer,{pointRadius:defaults.pointRadius});if(symbolizer.stroke===true||symbolizer.graphic===true){OpenLayers.Util.applyDefaults(symbolizer,{strokeWidth:defaults.strokeWidth,strokeColor:defaults.strokeColor,strokeOpacity:defaults.strokeOpacity,strokeDashstyle:defaults.strokeDashstyle,strokeLinecap:defaults.strokeLinecap});}\nif(symbolizer.fill===true||symbolizer.graphic===true){OpenLayers.Util.applyDefaults(symbolizer,{fillColor:defaults.fillColor,fillOpacity:defaults.fillOpacity});}\nif(symbolizer.graphic===true){OpenLayers.Util.applyDefaults(symbolizer,{pointRadius:this.defaultStyle.pointRadius,externalGraphic:this.defaultStyle.externalGraphic,graphicName:this.defaultStyle.graphicName,graphicOpacity:this.defaultStyle.graphicOpacity,graphicWidth:this.defaultStyle.graphicWidth,graphicHeight:this.defaultStyle.graphicHeight,graphicXOffset:this.defaultStyle.graphicXOffset,graphicYOffset:this.defaultStyle.graphicYOffset});}}\nreturn this.createLiterals(OpenLayers.Util.extend(style,symbolizer),feature);},createLiterals:function(style,feature){var context=OpenLayers.Util.extend({},feature.attributes||feature.data);OpenLayers.Util.extend(context,this.context);for(var i in this.propertyStyles){style[i]=OpenLayers.Style.createLiteral(style[i],context,feature,i);}\nreturn style;},findPropertyStyles:function(){var propertyStyles={};var style=this.defaultStyle;this.addPropertyStyles(propertyStyles,style);var rules=this.rules;var symbolizer,value;for(var i=0,len=rules.length;i<len;i++){symbolizer=rules[i].symbolizer;for(var key in symbolizer){value=symbolizer[key];if(typeof value==\"object\"){this.addPropertyStyles(propertyStyles,value);}else{this.addPropertyStyles(propertyStyles,symbolizer);break;}}}\nreturn propertyStyles;},addPropertyStyles:function(propertyStyles,symbolizer){var property;for(var key in symbolizer){property=symbolizer[key];if(typeof property==\"string\"&&property.match(/\\$\\{\\w+\\}/)){propertyStyles[key]=true;}}\nreturn propertyStyles;},addRules:function(rules){Array.prototype.push.apply(this.rules,rules);this.propertyStyles=this.findPropertyStyles();},setDefaultStyle:function(style){this.defaultStyle=style;this.propertyStyles=this.findPropertyStyles();},getSymbolizerPrefix:function(geometry){var prefixes=OpenLayers.Style.SYMBOLIZER_PREFIXES;for(var i=0,len=prefixes.length;i<len;i++){if(geometry.CLASS_NAME.indexOf(prefixes[i])!=-1){return prefixes[i];}}},clone:function(){var options=OpenLayers.Util.extend({},this);if(this.rules){options.rules=[];for(var i=0,len=this.rules.length;i<len;++i){options.rules.push(this.rules[i].clone());}}\noptions.context=this.context&&OpenLayers.Util.extend({},this.context);var defaultStyle=OpenLayers.Util.extend({},this.defaultStyle);return new OpenLayers.Style(defaultStyle,options);},CLASS_NAME:\"OpenLayers.Style\"});OpenLayers.Style.createLiteral=function(value,context,feature,property){if(typeof value==\"string\"&&value.indexOf(\"${\")!=-1){value=OpenLayers.String.format(value,context,[feature,property]);value=(isNaN(value)||!value)?value:parseFloat(value);}\nreturn value;};OpenLayers.Style.SYMBOLIZER_PREFIXES=['Point','Line','Polygon','Text','Raster'];OpenLayers.Control.Navigation=OpenLayers.Class(OpenLayers.Control,{dragPan:null,dragPanOptions:null,documentDrag:false,zoomBox:null,zoomBoxEnabled:true,zoomWheelEnabled:true,mouseWheelOptions:null,handleRightClicks:false,zoomBoxKeyMask:OpenLayers.Handler.MOD_SHIFT,autoActivate:true,initialize:function(options){this.handlers={};OpenLayers.Control.prototype.initialize.apply(this,arguments);},destroy:function(){this.deactivate();if(this.dragPan){this.dragPan.destroy();}\nthis.dragPan=null;if(this.zoomBox){this.zoomBox.destroy();}\nthis.zoomBox=null;OpenLayers.Control.prototype.destroy.apply(this,arguments);},activate:function(){this.dragPan.activate();if(this.zoomWheelEnabled){this.handlers.wheel.activate();}\nthis.handlers.click.activate();if(this.zoomBoxEnabled){this.zoomBox.activate();}\nreturn OpenLayers.Control.prototype.activate.apply(this,arguments);},deactivate:function(){this.zoomBox.deactivate();this.dragPan.deactivate();this.handlers.click.deactivate();this.handlers.wheel.deactivate();return OpenLayers.Control.prototype.deactivate.apply(this,arguments);},draw:function(){if(this.handleRightClicks){this.map.viewPortDiv.oncontextmenu=OpenLayers.Function.False;}\nvar clickCallbacks={'dblclick':this.defaultDblClick,'dblrightclick':this.defaultDblRightClick};var clickOptions={'double':true,'stopDouble':true};this.handlers.click=new OpenLayers.Handler.Click(this,clickCallbacks,clickOptions);this.dragPan=new OpenLayers.Control.DragPan(OpenLayers.Util.extend({map:this.map,documentDrag:this.documentDrag},this.dragPanOptions));this.zoomBox=new OpenLayers.Control.ZoomBox({map:this.map,keyMask:this.zoomBoxKeyMask});this.dragPan.draw();this.zoomBox.draw();this.handlers.wheel=new OpenLayers.Handler.MouseWheel(this,{\"up\":this.wheelUp,\"down\":this.wheelDown},this.mouseWheelOptions);},defaultDblClick:function(evt){var newCenter=this.map.getLonLatFromViewPortPx(evt.xy);this.map.setCenter(newCenter,this.map.zoom+1);},defaultDblRightClick:function(evt){var newCenter=this.map.getLonLatFromViewPortPx(evt.xy);this.map.setCenter(newCenter,this.map.zoom-1);},wheelChange:function(evt,deltaZ){var currentZoom=this.map.getZoom();var newZoom=this.map.getZoom()+Math.round(deltaZ);newZoom=Math.max(newZoom,0);newZoom=Math.min(newZoom,this.map.getNumZoomLevels());if(newZoom===currentZoom){return;}\nvar size=this.map.getSize();var deltaX=size.w/2-evt.xy.x;var deltaY=evt.xy.y-size.h/2;var newRes=this.map.baseLayer.getResolutionForZoom(newZoom);var zoomPoint=this.map.getLonLatFromPixel(evt.xy);var newCenter=new OpenLayers.LonLat(zoomPoint.lon+deltaX*newRes,zoomPoint.lat+deltaY*newRes);this.map.setCenter(newCenter,newZoom);},wheelUp:function(evt,delta){this.wheelChange(evt,delta||1);},wheelDown:function(evt,delta){this.wheelChange(evt,delta||-1);},disableZoomBox:function(){this.zoomBoxEnabled=false;this.zoomBox.deactivate();},enableZoomBox:function(){this.zoomBoxEnabled=true;if(this.active){this.zoomBox.activate();}},disableZoomWheel:function(){this.zoomWheelEnabled=false;this.handlers.wheel.deactivate();},enableZoomWheel:function(){this.zoomWheelEnabled=true;if(this.active){this.handlers.wheel.activate();}},CLASS_NAME:\"OpenLayers.Control.Navigation\"});OpenLayers.Filter=OpenLayers.Class({initialize:function(options){OpenLayers.Util.extend(this,options);},destroy:function(){},evaluate:function(context){return true;},clone:function(){return null;},CLASS_NAME:\"OpenLayers.Filter\"});OpenLayers.Format.WMC.v1_0_0=OpenLayers.Class(OpenLayers.Format.WMC.v1,{VERSION:\"1.0.0\",schemaLocation:\"http://www.opengis.net/context http://schemas.opengis.net/context/1.0.0/context.xsd\",initialize:function(options){OpenLayers.Format.WMC.v1.prototype.initialize.apply(this,[options]);},write_wmc_Layer:function(context){var node=OpenLayers.Format.WMC.v1.prototype.write_wmc_Layer.apply(this,[context]);node.appendChild(this.write_wmc_FormatList(context));node.appendChild(this.write_wmc_StyleList(context));node.appendChild(this.write_wmc_LayerExtension(context));},CLASS_NAME:\"OpenLayers.Format.WMC.v1_0_0\"});OpenLayers.Format.WMC.v1_1_0=OpenLayers.Class(OpenLayers.Format.WMC.v1,{VERSION:\"1.1.0\",schemaLocation:\"http://www.opengis.net/context http://schemas.opengis.net/context/1.1.0/context.xsd\",initialize:function(options){OpenLayers.Format.WMC.v1.prototype.initialize.apply(this,[options]);},read_sld_MinScaleDenominator:function(layerContext,node){var minScaleDenominator=parseFloat(this.getChildValue(node));if(minScaleDenominator>0){layerContext.maxScale=minScaleDenominator;}},read_sld_MaxScaleDenominator:function(layerContext,node){layerContext.minScale=parseFloat(this.getChildValue(node));},write_wmc_Layer:function(context){var node=OpenLayers.Format.WMC.v1.prototype.write_wmc_Layer.apply(this,[context]);if(context.maxScale){var minSD=this.createElementNS(this.namespaces.sld,\"sld:MinScaleDenominator\");minSD.appendChild(this.createTextNode(context.maxScale.toPrecision(16)));node.appendChild(minSD);}\nif(context.minScale){var maxSD=this.createElementNS(this.namespaces.sld,\"sld:MaxScaleDenominator\");maxSD.appendChild(this.createTextNode(context.minScale.toPrecision(16)));node.appendChild(maxSD);}\nnode.appendChild(this.write_wmc_FormatList(context));node.appendChild(this.write_wmc_StyleList(context));node.appendChild(this.write_wmc_LayerExtension(context));return node;},CLASS_NAME:\"OpenLayers.Format.WMC.v1_1_0\"});OpenLayers.Format.WMSCapabilities.v1_1_0=OpenLayers.Class(OpenLayers.Format.WMSCapabilities.v1_1,{version:\"1.1.0\",initialize:function(options){OpenLayers.Format.WMSCapabilities.v1_1.prototype.initialize.apply(this,[options]);},readers:{\"wms\":OpenLayers.Util.applyDefaults({\"SRS\":function(node,obj){var srs=this.getChildValue(node);var values=srs.split(/ +/);for(var i=0,len=values.length;i<len;i++){obj.srs[values[i]]=true;}}},OpenLayers.Format.WMSCapabilities.v1_1.prototype.readers[\"wms\"])},CLASS_NAME:\"OpenLayers.Format.WMSCapabilities.v1_1_0\"});OpenLayers.Format.WMSCapabilities.v1_1_1=OpenLayers.Class(OpenLayers.Format.WMSCapabilities.v1_1,{version:\"1.1.1\",initialize:function(options){OpenLayers.Format.WMSCapabilities.v1_1.prototype.initialize.apply(this,[options]);},readers:{\"wms\":OpenLayers.Util.applyDefaults({\"SRS\":function(node,obj){obj.srs[this.getChildValue(node)]=true;}},OpenLayers.Format.WMSCapabilities.v1_1.prototype.readers[\"wms\"])},CLASS_NAME:\"OpenLayers.Format.WMSCapabilities.v1_1_1\"});OpenLayers.Format.WMSCapabilities.v1_3_0=OpenLayers.Class(OpenLayers.Format.WMSCapabilities.v1_3,{version:\"1.3.0\",CLASS_NAME:\"OpenLayers.Format.WMSCapabilities.v1_3_0\"});OpenLayers.Geometry=OpenLayers.Class({id:null,parent:null,bounds:null,initialize:function(){this.id=OpenLayers.Util.createUniqueID(this.CLASS_NAME+\"_\");},destroy:function(){this.id=null;this.bounds=null;},clone:function(){return new OpenLayers.Geometry();},setBounds:function(bounds){if(bounds){this.bounds=bounds.clone();}},clearBounds:function(){this.bounds=null;if(this.parent){this.parent.clearBounds();}},extendBounds:function(newBounds){var bounds=this.getBounds();if(!bounds){this.setBounds(newBounds);}else{this.bounds.extend(newBounds);}},getBounds:function(){if(this.bounds==null){this.calculateBounds();}\nreturn this.bounds;},calculateBounds:function(){},distanceTo:function(geometry,options){},getVertices:function(nodes){},atPoint:function(lonlat,toleranceLon,toleranceLat){var atPoint=false;var bounds=this.getBounds();if((bounds!=null)&&(lonlat!=null)){var dX=(toleranceLon!=null)?toleranceLon:0;var dY=(toleranceLat!=null)?toleranceLat:0;var toleranceBounds=new OpenLayers.Bounds(this.bounds.left-dX,this.bounds.bottom-dY,this.bounds.right+dX,this.bounds.top+dY);atPoint=toleranceBounds.containsLonLat(lonlat);}\nreturn atPoint;},getLength:function(){return 0.0;},getArea:function(){return 0.0;},getCentroid:function(){return null;},toString:function(){return OpenLayers.Format.WKT.prototype.write(new OpenLayers.Feature.Vector(this));},CLASS_NAME:\"OpenLayers.Geometry\"});OpenLayers.Geometry.fromWKT=function(wkt){var format=arguments.callee.format;if(!format){format=new OpenLayers.Format.WKT();arguments.callee.format=format;}\nvar geom;var result=format.read(wkt);if(result instanceof OpenLayers.Feature.Vector){geom=result.geometry;}else if(result instanceof Array){var len=result.length;var components=new Array(len);for(var i=0;i<len;++i){components[i]=result[i].geometry;}\ngeom=new OpenLayers.Geometry.Collection(components);}\nreturn geom;};OpenLayers.Geometry.segmentsIntersect=function(seg1,seg2,options){var point=options&&options.point;var tolerance=options&&options.tolerance;var intersection=false;var x11_21=seg1.x1-seg2.x1;var y11_21=seg1.y1-seg2.y1;var x12_11=seg1.x2-seg1.x1;var y12_11=seg1.y2-seg1.y1;var y22_21=seg2.y2-seg2.y1;var x22_21=seg2.x2-seg2.x1;var d=(y22_21*x12_11)-(x22_21*y12_11);var n1=(x22_21*y11_21)-(y22_21*x11_21);var n2=(x12_11*y11_21)-(y12_11*x11_21);if(d==0){if(n1==0&&n2==0){intersection=true;}}else{var along1=n1/d;var along2=n2/d;if(along1>=0&&along1<=1&&along2>=0&&along2<=1){if(!point){intersection=true;}else{var x=seg1.x1+(along1*x12_11);var y=seg1.y1+(along1*y12_11);intersection=new OpenLayers.Geometry.Point(x,y);}}}\nif(tolerance){var dist;if(intersection){if(point){var segs=[seg1,seg2];var seg,x,y;outer:for(var i=0;i<2;++i){seg=segs[i];for(var j=1;j<3;++j){x=seg[\"x\"+j];y=seg[\"y\"+j];dist=Math.sqrt(Math.pow(x-intersection.x,2)+\nMath.pow(y-intersection.y,2));if(dist<tolerance){intersection.x=x;intersection.y=y;break outer;}}}}}else{var segs=[seg1,seg2];var source,target,x,y,p,result;outer:for(var i=0;i<2;++i){source=segs[i];target=segs[(i+1)%2];for(var j=1;j<3;++j){p={x:source[\"x\"+j],y:source[\"y\"+j]};result=OpenLayers.Geometry.distanceToSegment(p,target);if(result.distance<tolerance){if(point){intersection=new OpenLayers.Geometry.Point(p.x,p.y);}else{intersection=true;}\nbreak outer;}}}}}\nreturn intersection;};OpenLayers.Geometry.distanceToSegment=function(point,segment){var x0=point.x;var y0=point.y;var x1=segment.x1;var y1=segment.y1;var x2=segment.x2;var y2=segment.y2;var dx=x2-x1;var dy=y2-y1;var along=((dx*(x0-x1))+(dy*(y0-y1)))/(Math.pow(dx,2)+Math.pow(dy,2));var x,y;if(along<=0.0){x=x1;y=y1;}else if(along>=1.0){x=x2;y=y2;}else{x=x1+along*dx;y=y1+along*dy;}\nreturn{distance:Math.sqrt(Math.pow(x-x0,2)+Math.pow(y-y0,2)),x:x,y:y};};OpenLayers.Layer.ArcGIS93Rest=OpenLayers.Class(OpenLayers.Layer.Grid,{DEFAULT_PARAMS:{format:\"png\"},isBaseLayer:true,initialize:function(name,url,params,options){var newArguments=[];params=OpenLayers.Util.upperCaseObject(params);newArguments.push(name,url,params,options);OpenLayers.Layer.Grid.prototype.initialize.apply(this,newArguments);OpenLayers.Util.applyDefaults(this.params,OpenLayers.Util.upperCaseObject(this.DEFAULT_PARAMS));if(this.params.TRANSPARENT&&this.params.TRANSPARENT.toString().toLowerCase()==\"true\"){if((options==null)||(!options.isBaseLayer)){this.isBaseLayer=false;}\nif(this.params.FORMAT==\"jpg\"){this.params.FORMAT=OpenLayers.Util.alphaHack()?\"gif\":\"png\";}}},destroy:function(){OpenLayers.Layer.Grid.prototype.destroy.apply(this,arguments);},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.ArcGIS93Rest(this.name,this.url,this.params,this.getOptions());}\nobj=OpenLayers.Layer.Grid.prototype.clone.apply(this,[obj]);return obj;},getURL:function(bounds){bounds=this.adjustBounds(bounds);var projWords=this.projection.getCode().split(\":\");var srid=projWords[projWords.length-1];var imageSize=this.getImageSize();var newParams={'BBOX':bounds.toBBOX(),'SIZE':imageSize.w+\",\"+imageSize.h,'F':\"image\",'BBOXSR':srid,'IMAGESR':srid};if(this.layerDefs){var layerDefStrList=[];var layerID;for(layerID in this.layerDefs){if(this.layerDefs.hasOwnProperty(layerID)){if(this.layerDefs[layerID]){layerDefStrList.push(layerID);layerDefStrList.push(\":\");layerDefStrList.push(this.layerDefs[layerID]);layerDefStrList.push(\";\");}}}\nif(layerDefStrList.length>0){newParams['LAYERDEFS']=layerDefStrList.join(\"\");}}\nvar requestString=this.getFullRequestString(newParams);return requestString;},setLayerFilter:function(id,queryDef){if(!this.layerDefs){this.layerDefs={};}\nif(queryDef){this.layerDefs[id]=queryDef;}else{delete this.layerDefs[id];}},clearLayerFilter:function(id){if(id){delete this.layerDefs[id];}else{delete this.layerDefs;}},mergeNewParams:function(newParams){var upperParams=OpenLayers.Util.upperCaseObject(newParams);var newArguments=[upperParams];return OpenLayers.Layer.Grid.prototype.mergeNewParams.apply(this,newArguments);},addTile:function(bounds,position){return new OpenLayers.Tile.Image(this,position,bounds,null,this.tileSize);},CLASS_NAME:\"OpenLayers.Layer.ArcGIS93Rest\"});OpenLayers.Layer.Google.v3={DEFAULTS:{maxExtent:new OpenLayers.Bounds(-128*156543.0339,-128*156543.0339,128*156543.0339,128*156543.0339),sphericalMercator:true,maxResolution:156543.0339,units:\"m\",projection:\"EPSG:900913\"},loadMapObject:function(){if(!this.type){this.type=google.maps.MapTypeId.ROADMAP;}\nvar mapObject;var cache=OpenLayers.Layer.Google.cache[this.map.id];if(cache){mapObject=cache.mapObject;++cache.count;}else{var container=this.map.viewPortDiv;var div=document.createElement(\"div\");div.id=this.map.id+\"_GMapContainer\";div.style.position=\"absolute\";div.style.width=\"100%\";div.style.height=\"100%\";container.appendChild(div);var center=this.map.getCenter();mapObject=new google.maps.Map(div,{center:center?new google.maps.LatLng(center.lat,center.lon):new google.maps.LatLng(0,0),zoom:this.map.getZoom()||0,mapTypeId:this.type,disableDefaultUI:true,keyboardShortcuts:false,draggable:false,disableDoubleClickZoom:true,scrollwheel:false});cache={mapObject:mapObject,count:1};OpenLayers.Layer.Google.cache[this.map.id]=cache;this.repositionListener=google.maps.event.addListenerOnce(mapObject,\"center_changed\",OpenLayers.Function.bind(this.repositionMapElements,this));}\nthis.mapObject=mapObject;this.setGMapVisibility(this.visibility);},repositionMapElements:function(){google.maps.event.trigger(this.mapObject,\"resize\");var div=this.mapObject.getDiv().firstChild;if(!div||div.childNodes.length<3){this.repositionTimer=window.setTimeout(OpenLayers.Function.bind(this.repositionMapElements,this),250);return false;}\nvar cache=OpenLayers.Layer.Google.cache[this.map.id];var container=this.map.viewPortDiv;var termsOfUse=div.lastChild;container.appendChild(termsOfUse);termsOfUse.style.zIndex=\"1100\";termsOfUse.style.bottom=\"\";termsOfUse.className=\"olLayerGoogleCopyright olLayerGoogleV3\";termsOfUse.style.display=\"\";cache.termsOfUse=termsOfUse;var poweredBy=div.lastChild;container.appendChild(poweredBy);poweredBy.style.zIndex=\"1100\";poweredBy.style.bottom=\"\";poweredBy.className=\"olLayerGooglePoweredBy olLayerGoogleV3 gmnoprint\";poweredBy.style.display=\"\";cache.poweredBy=poweredBy;this.setGMapVisibility(this.visibility);},onMapResize:function(){if(this.visibility){google.maps.event.trigger(this.mapObject,\"resize\");}else{if(!this._resized){var layer=this;google.maps.event.addListenerOnce(this.mapObject,\"tilesloaded\",function(){delete layer._resized;google.maps.event.trigger(layer.mapObject,\"resize\");layer.moveTo(layer.map.getCenter(),layer.map.getZoom());});}\nthis._resized=true;}},setGMapVisibility:function(visible){var cache=OpenLayers.Layer.Google.cache[this.map.id];if(cache){var type=this.type;var layers=this.map.layers;var layer;for(var i=layers.length-1;i>=0;--i){layer=layers[i];if(layer instanceof OpenLayers.Layer.Google&&layer.visibility===true&&layer.inRange===true){type=layer.type;visible=true;break;}}\nvar container=this.mapObject.getDiv();if(visible===true){this.mapObject.setMapTypeId(type);container.style.left=\"\";if(cache.termsOfUse&&cache.termsOfUse.style){cache.termsOfUse.style.left=\"\";cache.termsOfUse.style.display=\"\";cache.poweredBy.style.display=\"\";}\ncache.displayed=this.id;}else{delete cache.displayed;container.style.left=\"-9999px\";if(cache.termsOfUse&&cache.termsOfUse.style){cache.termsOfUse.style.display=\"none\";cache.termsOfUse.style.left=\"-9999px\";cache.poweredBy.style.display=\"none\";}}}},getMapContainer:function(){return this.mapObject.getDiv();},getMapObjectBoundsFromOLBounds:function(olBounds){var moBounds=null;if(olBounds!=null){var sw=this.sphericalMercator?this.inverseMercator(olBounds.bottom,olBounds.left):new OpenLayers.LonLat(olBounds.bottom,olBounds.left);var ne=this.sphericalMercator?this.inverseMercator(olBounds.top,olBounds.right):new OpenLayers.LonLat(olBounds.top,olBounds.right);moBounds=new google.maps.LatLngBounds(new google.maps.LatLng(sw.lat,sw.lon),new google.maps.LatLng(ne.lat,ne.lon));}\nreturn moBounds;},getMapObjectLonLatFromMapObjectPixel:function(moPixel){var size=this.map.getSize();var lon=this.getLongitudeFromMapObjectLonLat(this.mapObject.center);var lat=this.getLatitudeFromMapObjectLonLat(this.mapObject.center);var res=this.map.getResolution();var delta_x=moPixel.x-(size.w/2);var delta_y=moPixel.y-(size.h/2);var lonlat=new OpenLayers.LonLat(lon+delta_x*res,lat-delta_y*res);if(this.wrapDateLine){lonlat=lonlat.wrapDateLine(this.maxExtent);}\nreturn this.getMapObjectLonLatFromLonLat(lonlat.lon,lonlat.lat);},getMapObjectPixelFromMapObjectLonLat:function(moLonLat){var lon=this.getLongitudeFromMapObjectLonLat(moLonLat);var lat=this.getLatitudeFromMapObjectLonLat(moLonLat);var res=this.map.getResolution();var extent=this.map.getExtent();var px=new OpenLayers.Pixel((1/res*(lon-extent.left)),(1/res*(extent.top-lat)));return this.getMapObjectPixelFromXY(px.x,px.y);},setMapObjectCenter:function(center,zoom){this.mapObject.setOptions({center:center,zoom:zoom});},getMapObjectZoomFromMapObjectBounds:function(moBounds){return this.mapObject.getBoundsZoomLevel(moBounds);},getMapObjectLonLatFromLonLat:function(lon,lat){var gLatLng;if(this.sphericalMercator){var lonlat=this.inverseMercator(lon,lat);gLatLng=new google.maps.LatLng(lonlat.lat,lonlat.lon);}else{gLatLng=new google.maps.LatLng(lat,lon);}\nreturn gLatLng;},getMapObjectPixelFromXY:function(x,y){return new google.maps.Point(x,y);},destroy:function(){if(this.repositionListener){google.maps.event.removeListener(this.repositionListener);}\nif(this.repositionTimer){window.clearTimeout(this.repositionTimer);}\nOpenLayers.Layer.Google.prototype.destroy.apply(this,arguments);}};OpenLayers.Layer.KaMap=OpenLayers.Class(OpenLayers.Layer.Grid,{isBaseLayer:true,units:null,resolution:OpenLayers.DOTS_PER_INCH,DEFAULT_PARAMS:{i:'jpeg',map:''},initialize:function(name,url,params,options){var newArguments=[];newArguments.push(name,url,params,options);OpenLayers.Layer.Grid.prototype.initialize.apply(this,newArguments);this.params=OpenLayers.Util.applyDefaults(this.params,this.DEFAULT_PARAMS);},getURL:function(bounds){bounds=this.adjustBounds(bounds);var mapRes=this.map.getResolution();var scale=Math.round((this.map.getScale()*10000))/10000;var pX=Math.round(bounds.left/mapRes);var pY=-Math.round(bounds.top/mapRes);return this.getFullRequestString({t:pY,l:pX,s:scale});},addTile:function(bounds,position){var url=this.getURL(bounds);return new OpenLayers.Tile.Image(this,position,bounds,url,this.tileSize);},calculateGridLayout:function(bounds,extent,resolution){var tilelon=resolution*this.tileSize.w;var tilelat=resolution*this.tileSize.h;var offsetlon=bounds.left;var tilecol=Math.floor(offsetlon/tilelon)-this.buffer;var tilecolremain=offsetlon/tilelon-tilecol;var tileoffsetx=-tilecolremain*this.tileSize.w;var tileoffsetlon=tilecol*tilelon;var offsetlat=bounds.top;var tilerow=Math.ceil(offsetlat/tilelat)+this.buffer;var tilerowremain=tilerow-offsetlat/tilelat;var tileoffsety=-(tilerowremain+1)*this.tileSize.h;var tileoffsetlat=tilerow*tilelat;return{tilelon:tilelon,tilelat:tilelat,tileoffsetlon:tileoffsetlon,tileoffsetlat:tileoffsetlat,tileoffsetx:tileoffsetx,tileoffsety:tileoffsety};},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.KaMap(this.name,this.url,this.params,this.getOptions());}\nobj=OpenLayers.Layer.Grid.prototype.clone.apply(this,[obj]);if(this.tileSize!=null){obj.tileSize=this.tileSize.clone();}\nobj.grid=[];return obj;},getTileBounds:function(viewPortPx){var resolution=this.getResolution();var tileMapWidth=resolution*this.tileSize.w;var tileMapHeight=resolution*this.tileSize.h;var mapPoint=this.getLonLatFromViewPortPx(viewPortPx);var tileLeft=tileMapWidth*Math.floor(mapPoint.lon/tileMapWidth);var tileBottom=tileMapHeight*Math.floor(mapPoint.lat/tileMapHeight);return new OpenLayers.Bounds(tileLeft,tileBottom,tileLeft+tileMapWidth,tileBottom+tileMapHeight);},CLASS_NAME:\"OpenLayers.Layer.KaMap\"});OpenLayers.Layer.MapGuide=OpenLayers.Class(OpenLayers.Layer.Grid,{isBaseLayer:true,useHttpTile:false,singleTile:false,useOverlay:false,useAsyncOverlay:true,TILE_PARAMS:{operation:'GETTILEIMAGE',version:'1.2.0'},SINGLE_TILE_PARAMS:{operation:'GETMAPIMAGE',format:'PNG',locale:'en',clip:'1',version:'1.0.0'},OVERLAY_PARAMS:{operation:'GETDYNAMICMAPOVERLAYIMAGE',format:'PNG',locale:'en',clip:'1',version:'2.0.0'},FOLDER_PARAMS:{tileColumnsPerFolder:30,tileRowsPerFolder:30,format:'png',querystring:null},defaultSize:new OpenLayers.Size(300,300),initialize:function(name,url,params,options){OpenLayers.Layer.Grid.prototype.initialize.apply(this,arguments);if(options==null||options.isBaseLayer==null){this.isBaseLayer=((this.transparent!=\"true\")&&(this.transparent!=true));}\nif(options&&options.useOverlay!=null){this.useOverlay=options.useOverlay;}\nif(this.singleTile){if(this.useOverlay){OpenLayers.Util.applyDefaults(this.params,this.OVERLAY_PARAMS);if(!this.useAsyncOverlay){this.params.version=\"1.0.0\";}}else{OpenLayers.Util.applyDefaults(this.params,this.SINGLE_TILE_PARAMS);}}else{if(this.useHttpTile){OpenLayers.Util.applyDefaults(this.params,this.FOLDER_PARAMS);}else{OpenLayers.Util.applyDefaults(this.params,this.TILE_PARAMS);}\nthis.setTileSize(this.defaultSize);}},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.MapGuide(this.name,this.url,this.params,this.getOptions());}\nobj=OpenLayers.Layer.Grid.prototype.clone.apply(this,[obj]);return obj;},addTile:function(bounds,position){return new OpenLayers.Tile.Image(this,position,bounds,null,this.tileSize);},getURL:function(bounds){var url;var center=bounds.getCenterLonLat();var mapSize=this.map.getSize();if(this.singleTile){var params={setdisplaydpi:OpenLayers.DOTS_PER_INCH,setdisplayheight:mapSize.h*this.ratio,setdisplaywidth:mapSize.w*this.ratio,setviewcenterx:center.lon,setviewcentery:center.lat,setviewscale:this.map.getScale()};if(this.useOverlay&&!this.useAsyncOverlay){var getVisParams={};getVisParams=OpenLayers.Util.extend(getVisParams,params);getVisParams.operation=\"GETVISIBLEMAPEXTENT\";getVisParams.version=\"1.0.0\";getVisParams.session=this.params.session;getVisParams.mapName=this.params.mapName;getVisParams.format='text/xml';url=this.getFullRequestString(getVisParams);OpenLayers.Request.GET({url:url,async:false});}\nurl=this.getFullRequestString(params);}else{var currentRes=this.map.getResolution();var colidx=Math.floor((bounds.left-this.maxExtent.left)/currentRes);colidx=Math.round(colidx/this.tileSize.w);var rowidx=Math.floor((this.maxExtent.top-bounds.top)/currentRes);rowidx=Math.round(rowidx/this.tileSize.h);if(this.useHttpTile){url=this.getImageFilePath({tilecol:colidx,tilerow:rowidx,scaleindex:this.resolutions.length-this.map.zoom-1});}else{url=this.getFullRequestString({tilecol:colidx,tilerow:rowidx,scaleindex:this.resolutions.length-this.map.zoom-1});}}\nreturn url;},getFullRequestString:function(newParams,altUrl){var url=(altUrl==null)?this.url:altUrl;if(typeof url==\"object\"){url=url[Math.floor(Math.random()*url.length)];}\nvar requestString=url;var allParams=OpenLayers.Util.extend({},this.params);allParams=OpenLayers.Util.extend(allParams,newParams);var urlParams=OpenLayers.Util.upperCaseObject(OpenLayers.Util.getParameters(url));for(var key in allParams){if(key.toUpperCase()in urlParams){delete allParams[key];}}\nvar paramsString=OpenLayers.Util.getParameterString(allParams);paramsString=paramsString.replace(/,/g,\"+\");if(paramsString!=\"\"){var lastServerChar=url.charAt(url.length-1);if((lastServerChar==\"&\")||(lastServerChar==\"?\")){requestString+=paramsString;}else{if(url.indexOf('?')==-1){requestString+='?'+paramsString;}else{requestString+='&'+paramsString;}}}\nreturn requestString;},getImageFilePath:function(newParams,altUrl){var url=(altUrl==null)?this.url:altUrl;if(typeof url==\"object\"){url=url[Math.floor(Math.random()*url.length)];}\nvar requestString=url;var tileRowGroup=\"\";var tileColGroup=\"\";if(newParams.tilerow<0){tileRowGroup='-';}\nif(newParams.tilerow==0){tileRowGroup+='0';}else{tileRowGroup+=Math.floor(Math.abs(newParams.tilerow/this.params.tileRowsPerFolder))*this.params.tileRowsPerFolder;}\nif(newParams.tilecol<0){tileColGroup='-';}\nif(newParams.tilecol==0){tileColGroup+='0';}else{tileColGroup+=Math.floor(Math.abs(newParams.tilecol/this.params.tileColumnsPerFolder))*this.params.tileColumnsPerFolder;}\nvar tilePath='/S'+Math.floor(newParams.scaleindex)\n+'/'+this.params.basemaplayergroupname\n+'/R'+tileRowGroup\n+'/C'+tileColGroup\n+'/'+(newParams.tilerow%this.params.tileRowsPerFolder)\n+'_'+(newParams.tilecol%this.params.tileColumnsPerFolder)\n+'.'+this.params.format;if(this.params.querystring){tilePath+=\"?\"+this.params.querystring;}\nrequestString+=tilePath;return requestString;},calculateGridLayout:function(bounds,extent,resolution){var tilelon=resolution*this.tileSize.w;var tilelat=resolution*this.tileSize.h;var offsetlon=bounds.left-extent.left;var tilecol=Math.floor(offsetlon/tilelon)-this.buffer;var tilecolremain=offsetlon/tilelon-tilecol;var tileoffsetx=-tilecolremain*this.tileSize.w;var tileoffsetlon=extent.left+tilecol*tilelon;var offsetlat=extent.top-bounds.top+tilelat;var tilerow=Math.floor(offsetlat/tilelat)-this.buffer;var tilerowremain=tilerow-offsetlat/tilelat;var tileoffsety=tilerowremain*this.tileSize.h;var tileoffsetlat=extent.top-tilelat*tilerow;return{tilelon:tilelon,tilelat:tilelat,tileoffsetlon:tileoffsetlon,tileoffsetlat:tileoffsetlat,tileoffsetx:tileoffsetx,tileoffsety:tileoffsety};},CLASS_NAME:\"OpenLayers.Layer.MapGuide\"});OpenLayers.Layer.MapServer=OpenLayers.Class(OpenLayers.Layer.Grid,{DEFAULT_PARAMS:{mode:\"map\",map_imagetype:\"png\"},initialize:function(name,url,params,options){var newArguments=[];newArguments.push(name,url,params,options);OpenLayers.Layer.Grid.prototype.initialize.apply(this,newArguments);this.params=OpenLayers.Util.applyDefaults(this.params,this.DEFAULT_PARAMS);if(options==null||options.isBaseLayer==null){this.isBaseLayer=((this.params.transparent!=\"true\")&&(this.params.transparent!=true));}},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.MapServer(this.name,this.url,this.params,this.getOptions());}\nobj=OpenLayers.Layer.Grid.prototype.clone.apply(this,[obj]);return obj;},addTile:function(bounds,position){return new OpenLayers.Tile.Image(this,position,bounds,null,this.tileSize);},getURL:function(bounds){bounds=this.adjustBounds(bounds);var extent=[bounds.left,bounds.bottom,bounds.right,bounds.top];var imageSize=this.getImageSize();var url=this.getFullRequestString({mapext:extent,imgext:extent,map_size:[imageSize.w,imageSize.h],imgx:imageSize.w/2,imgy:imageSize.h/2,imgxy:[imageSize.w,imageSize.h]});return url;},getFullRequestString:function(newParams,altUrl){var url=(altUrl==null)?this.url:altUrl;var allParams=OpenLayers.Util.extend({},this.params);allParams=OpenLayers.Util.extend(allParams,newParams);var paramsString=OpenLayers.Util.getParameterString(allParams);if(url instanceof Array){url=this.selectUrl(paramsString,url);}\nvar urlParams=OpenLayers.Util.upperCaseObject(OpenLayers.Util.getParameters(url));for(var key in allParams){if(key.toUpperCase()in urlParams){delete allParams[key];}}\nparamsString=OpenLayers.Util.getParameterString(allParams);var requestString=url;paramsString=paramsString.replace(/,/g,\"+\");if(paramsString!=\"\"){var lastServerChar=url.charAt(url.length-1);if((lastServerChar==\"&\")||(lastServerChar==\"?\")){requestString+=paramsString;}else{if(url.indexOf('?')==-1){requestString+='?'+paramsString;}else{requestString+='&'+paramsString;}}}\nreturn requestString;},CLASS_NAME:\"OpenLayers.Layer.MapServer\"});OpenLayers.Layer.TMS=OpenLayers.Class(OpenLayers.Layer.Grid,{serviceVersion:\"1.0.0\",isBaseLayer:true,tileOrigin:null,serverResolutions:null,zoomOffset:0,initialize:function(name,url,options){var newArguments=[];newArguments.push(name,url,{},options);OpenLayers.Layer.Grid.prototype.initialize.apply(this,newArguments);},destroy:function(){OpenLayers.Layer.Grid.prototype.destroy.apply(this,arguments);},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.TMS(this.name,this.url,this.getOptions());}\nobj=OpenLayers.Layer.Grid.prototype.clone.apply(this,[obj]);return obj;},getURL:function(bounds){bounds=this.adjustBounds(bounds);var res=this.map.getResolution();var x=Math.round((bounds.left-this.tileOrigin.lon)/(res*this.tileSize.w));var y=Math.round((bounds.bottom-this.tileOrigin.lat)/(res*this.tileSize.h));var z=this.serverResolutions!=null?OpenLayers.Util.indexOf(this.serverResolutions,res):this.map.getZoom()+this.zoomOffset;var path=this.serviceVersion+\"/\"+this.layername+\"/\"+z+\"/\"+x+\"/\"+y+\".\"+this.type;var url=this.url;if(url instanceof Array){url=this.selectUrl(path,url);}\nreturn url+path;},addTile:function(bounds,position){return new OpenLayers.Tile.Image(this,position,bounds,null,this.tileSize);},setMap:function(map){OpenLayers.Layer.Grid.prototype.setMap.apply(this,arguments);if(!this.tileOrigin){this.tileOrigin=new OpenLayers.LonLat(this.map.maxExtent.left,this.map.maxExtent.bottom);}},CLASS_NAME:\"OpenLayers.Layer.TMS\"});OpenLayers.Layer.TileCache=OpenLayers.Class(OpenLayers.Layer.Grid,{isBaseLayer:true,format:'image/png',serverResolutions:null,initialize:function(name,url,layername,options){this.layername=layername;OpenLayers.Layer.Grid.prototype.initialize.apply(this,[name,url,{},options]);this.extension=this.format.split('/')[1].toLowerCase();this.extension=(this.extension=='jpg')?'jpeg':this.extension;},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.TileCache(this.name,this.url,this.layername,this.getOptions());}\nobj=OpenLayers.Layer.Grid.prototype.clone.apply(this,[obj]);return obj;},getURL:function(bounds){var res=this.map.getResolution();var bbox=this.maxExtent;var size=this.tileSize;var tileX=Math.round((bounds.left-bbox.left)/(res*size.w));var tileY=Math.round((bounds.bottom-bbox.bottom)/(res*size.h));var tileZ=this.serverResolutions!=null?OpenLayers.Util.indexOf(this.serverResolutions,res):this.map.getZoom();function zeroPad(number,length){number=String(number);var zeros=[];for(var i=0;i<length;++i){zeros.push('0');}\nreturn zeros.join('').substring(0,length-number.length)+number;}\nvar components=[this.layername,zeroPad(tileZ,2),zeroPad(parseInt(tileX/1000000),3),zeroPad((parseInt(tileX/1000)%1000),3),zeroPad((parseInt(tileX)%1000),3),zeroPad(parseInt(tileY/1000000),3),zeroPad((parseInt(tileY/1000)%1000),3),zeroPad((parseInt(tileY)%1000),3)+'.'+this.extension];var path=components.join('/');var url=this.url;if(url instanceof Array){url=this.selectUrl(path,url);}\nurl=(url.charAt(url.length-1)=='/')?url:url+'/';return url+path;},addTile:function(bounds,position){var url=this.getURL(bounds);return new OpenLayers.Tile.Image(this,position,bounds,url,this.tileSize);},CLASS_NAME:\"OpenLayers.Layer.TileCache\"});OpenLayers.Layer.WMS=OpenLayers.Class(OpenLayers.Layer.Grid,{DEFAULT_PARAMS:{service:\"WMS\",version:\"1.1.1\",request:\"GetMap\",styles:\"\",exceptions:\"application/vnd.ogc.se_inimage\",format:\"image/jpeg\"},reproject:false,isBaseLayer:true,encodeBBOX:false,noMagic:false,yx:{'EPSG:4326':true},initialize:function(name,url,params,options){var newArguments=[];params=OpenLayers.Util.upperCaseObject(params);if(parseFloat(params.VERSION)>=1.3&&!params.EXCEPTIONS){params.EXCEPTIONS=\"INIMAGE\";}\nnewArguments.push(name,url,params,options);OpenLayers.Layer.Grid.prototype.initialize.apply(this,newArguments);OpenLayers.Util.applyDefaults(this.params,OpenLayers.Util.upperCaseObject(this.DEFAULT_PARAMS));if(!this.noMagic&&this.params.TRANSPARENT&&this.params.TRANSPARENT.toString().toLowerCase()==\"true\"){if((options==null)||(!options.isBaseLayer)){this.isBaseLayer=false;}\nif(this.params.FORMAT==\"image/jpeg\"){this.params.FORMAT=OpenLayers.Util.alphaHack()?\"image/gif\":\"image/png\";}}},destroy:function(){OpenLayers.Layer.Grid.prototype.destroy.apply(this,arguments);},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.WMS(this.name,this.url,this.params,this.getOptions());}\nobj=OpenLayers.Layer.Grid.prototype.clone.apply(this,[obj]);return obj;},reverseAxisOrder:function(){return(parseFloat(this.params.VERSION)>=1.3&&!!this.yx[this.map.getProjectionObject().getCode()]);},getURL:function(bounds){bounds=this.adjustBounds(bounds);var imageSize=this.getImageSize();var newParams={};var reverseAxisOrder=this.reverseAxisOrder();newParams.BBOX=this.encodeBBOX?bounds.toBBOX(null,reverseAxisOrder):bounds.toArray(reverseAxisOrder);newParams.WIDTH=imageSize.w;newParams.HEIGHT=imageSize.h;var requestString=this.getFullRequestString(newParams);return requestString;},addTile:function(bounds,position){return new OpenLayers.Tile.Image(this,position,bounds,null,this.tileSize);},mergeNewParams:function(newParams){var upperParams=OpenLayers.Util.upperCaseObject(newParams);var newArguments=[upperParams];return OpenLayers.Layer.Grid.prototype.mergeNewParams.apply(this,newArguments);},getFullRequestString:function(newParams,altUrl){var projectionCode=this.map.getProjection();var value=(projectionCode==\"none\")?null:projectionCode\nif(parseFloat(this.params.VERSION)>=1.3){this.params.CRS=value;}else{this.params.SRS=value;}\nreturn OpenLayers.Layer.Grid.prototype.getFullRequestString.apply(this,arguments);},CLASS_NAME:\"OpenLayers.Layer.WMS\"});OpenLayers.Layer.WMTS=OpenLayers.Class(OpenLayers.Layer.Grid,{isBaseLayer:true,version:\"1.0.0\",requestEncoding:\"KVP\",url:null,layer:null,matrixSet:null,style:null,format:\"image/jpeg\",tileOrigin:null,tileFullExtent:null,formatSuffix:null,matrixIds:null,dimensions:null,params:null,zoomOffset:0,formatSuffixMap:{\"image/png\":\"png\",\"image/png8\":\"png\",\"image/png24\":\"png\",\"image/png32\":\"png\",\"png\":\"png\",\"image/jpeg\":\"jpg\",\"image/jpg\":\"jpg\",\"jpeg\":\"jpg\",\"jpg\":\"jpg\"},matrix:null,initialize:function(config){var required={url:true,layer:true,style:true,matrixSet:true};for(var prop in required){if(!(prop in config)){throw new Error(\"Missing property '\"+prop+\"' in layer configuration.\");}}\nconfig.params=OpenLayers.Util.upperCaseObject(config.params);var args=[config.name,config.url,config.params,config];OpenLayers.Layer.Grid.prototype.initialize.apply(this,args);if(!this.formatSuffix){this.formatSuffix=this.formatSuffixMap[this.format]||this.format.split(\"/\").pop();}\nif(this.matrixIds){var len=this.matrixIds.length;if(len&&typeof this.matrixIds[0]===\"string\"){var ids=this.matrixIds;this.matrixIds=new Array(len);for(var i=0;i<len;++i){this.matrixIds[i]={identifier:ids[i]};}}}},setMap:function(){OpenLayers.Layer.Grid.prototype.setMap.apply(this,arguments);this.updateMatrixProperties();},updateMatrixProperties:function(){this.matrix=this.getMatrix();if(this.matrix){if(this.matrix.topLeftCorner){this.tileOrigin=this.matrix.topLeftCorner;}\nif(this.matrix.tileWidth&&this.matrix.tileHeight){this.tileSize=new OpenLayers.Size(this.matrix.tileWidth,this.matrix.tileHeight);}\nif(!this.tileOrigin){this.tileOrigin=new OpenLayers.LonLat(this.maxExtent.left,this.maxExtent.top);}\nif(!this.tileFullExtent){this.tileFullExtent=this.maxExtent;}}},moveTo:function(bounds,zoomChanged,dragging){if(zoomChanged||!this.matrix){this.updateMatrixProperties();}\nreturn OpenLayers.Layer.Grid.prototype.moveTo.apply(this,arguments);},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.WMTS(this.options);}\nobj=OpenLayers.Layer.Grid.prototype.clone.apply(this,[obj]);return obj;},getMatrix:function(){var matrix;if(!this.matrixIds||this.matrixIds.length===0){matrix={identifier:this.map.getZoom()+this.zoomOffset};}else{if(\"scaleDenominator\"in this.matrixIds[0]){var denom=OpenLayers.METERS_PER_INCH*OpenLayers.INCHES_PER_UNIT[this.units]*this.map.getResolution()/0.28E-3;var diff=Number.POSITIVE_INFINITY;var delta;for(var i=0,ii=this.matrixIds.length;i<ii;++i){delta=Math.abs(1-(this.matrixIds[i].scaleDenominator/denom));if(delta<diff){diff=delta;matrix=this.matrixIds[i];}}}else{matrix=this.matrixIds[this.map.getZoom()+this.zoomOffset];}}\nreturn matrix;},getTileInfo:function(loc){var res=this.map.getResolution();var fx=(loc.lon-this.tileOrigin.lon)/(res*this.tileSize.w);var fy=(this.tileOrigin.lat-loc.lat)/(res*this.tileSize.h);var col=Math.floor(fx);var row=Math.floor(fy);return{col:col,row:row,i:Math.floor((fx-col)*this.tileSize.w),j:Math.floor((fy-row)*this.tileSize.h)};},getURL:function(bounds){bounds=this.adjustBounds(bounds);var url=\"\";if(!this.tileFullExtent||this.tileFullExtent.intersectsBounds(bounds)){var center=bounds.getCenterLonLat();var info=this.getTileInfo(center);var matrixId=this.matrix.identifier;if(this.requestEncoding.toUpperCase()===\"REST\"){var path=this.version+\"/\"+this.layer+\"/\"+this.style+\"/\";if(this.dimensions){for(var i=0;i<this.dimensions.length;i++){if(this.params[this.dimensions[i]]){path=path+this.params[this.dimensions[i]]+\"/\";}}}\npath=path+this.matrixSet+\"/\"+this.matrix.identifier+\"/\"+info.row+\"/\"+info.col+\".\"+this.formatSuffix;if(this.url instanceof Array){url=this.selectUrl(path,this.url);}else{url=this.url;}\nif(!url.match(/\\/$/)){url=url+\"/\";}\nurl=url+path;}else if(this.requestEncoding.toUpperCase()===\"KVP\"){var params={SERVICE:\"WMTS\",REQUEST:\"GetTile\",VERSION:this.version,LAYER:this.layer,STYLE:this.style,TILEMATRIXSET:this.matrixSet,TILEMATRIX:this.matrix.identifier,TILEROW:info.row,TILECOL:info.col,FORMAT:this.format};url=OpenLayers.Layer.Grid.prototype.getFullRequestString.apply(this,[params]);}}\nreturn url;},mergeNewParams:function(newParams){if(this.requestEncoding.toUpperCase()===\"KVP\"){return OpenLayers.Layer.Grid.prototype.mergeNewParams.apply(this,[OpenLayers.Util.upperCaseObject(newParams)]);}},addTile:function(bounds,position){return new OpenLayers.Tile.Image(this,position,bounds,null,this.tileSize);},CLASS_NAME:\"OpenLayers.Layer.WMTS\"});OpenLayers.Layer.WorldWind=OpenLayers.Class(OpenLayers.Layer.Grid,{DEFAULT_PARAMS:{},isBaseLayer:true,lzd:null,zoomLevels:null,initialize:function(name,url,lzd,zoomLevels,params,options){this.lzd=lzd;this.zoomLevels=zoomLevels;var newArguments=[];newArguments.push(name,url,params,options);OpenLayers.Layer.Grid.prototype.initialize.apply(this,newArguments);this.params=OpenLayers.Util.applyDefaults(this.params,this.DEFAULT_PARAMS);},addTile:function(bounds,position){return new OpenLayers.Tile.Image(this,position,bounds,null,this.tileSize);},getZoom:function(){var zoom=this.map.getZoom();var extent=this.map.getMaxExtent();zoom=zoom-Math.log(this.maxResolution/(this.lzd/512))/Math.log(2);return zoom;},getURL:function(bounds){bounds=this.adjustBounds(bounds);var zoom=this.getZoom();var extent=this.map.getMaxExtent();var deg=this.lzd/Math.pow(2,this.getZoom());var x=Math.floor((bounds.left-extent.left)/deg);var y=Math.floor((bounds.bottom-extent.bottom)/deg);if(this.map.getResolution()<=(this.lzd/512)&&this.getZoom()<=this.zoomLevels){return this.getFullRequestString({L:zoom,X:x,Y:y});}else{return OpenLayers.Util.getImagesLocation()+\"blank.gif\";}},CLASS_NAME:\"OpenLayers.Layer.WorldWind\"});OpenLayers.Layer.XYZ=OpenLayers.Class(OpenLayers.Layer.Grid,{isBaseLayer:true,sphericalMercator:false,zoomOffset:0,initialize:function(name,url,options){if(options&&options.sphericalMercator||this.sphericalMercator){options=OpenLayers.Util.extend({maxExtent:new OpenLayers.Bounds(-128*156543.0339,-128*156543.0339,128*156543.0339,128*156543.0339),maxResolution:156543.0339,numZoomLevels:19,units:\"m\",projection:\"EPSG:900913\"},options);}\nurl=url||this.url;name=name||this.name;var newArguments=[name,url,{},options];OpenLayers.Layer.Grid.prototype.initialize.apply(this,newArguments);},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.XYZ(this.name,this.url,this.getOptions());}\nobj=OpenLayers.Layer.Grid.prototype.clone.apply(this,[obj]);return obj;},getURL:function(bounds){var res=this.map.getResolution();var x=Math.round((bounds.left-this.maxExtent.left)/(res*this.tileSize.w));var y=Math.round((this.maxExtent.top-bounds.top)/(res*this.tileSize.h));var z=this.map.getZoom()+this.zoomOffset;var url=this.url;var s=''+x+y+z;if(url instanceof Array)\n{url=this.selectUrl(s,url);}\nvar path=OpenLayers.String.format(url,{'x':x,'y':y,'z':z});return path;},addTile:function(bounds,position){return new OpenLayers.Tile.Image(this,position,bounds,null,this.tileSize);},setMap:function(map){OpenLayers.Layer.Grid.prototype.setMap.apply(this,arguments);if(!this.tileOrigin){this.tileOrigin=new OpenLayers.LonLat(this.maxExtent.left,this.maxExtent.bottom);}},CLASS_NAME:\"OpenLayers.Layer.XYZ\"});OpenLayers.Layer.OSM=OpenLayers.Class(OpenLayers.Layer.XYZ,{name:\"OpenStreetMap\",attribution:\"Data CC-By-SA by <a href='http://openstreetmap.org/'>OpenStreetMap</a>\",sphericalMercator:true,url:'http://tile.openstreetmap.org/${z}/${x}/${y}.png',clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.OSM(this.name,this.url,this.getOptions());}\nobj=OpenLayers.Layer.XYZ.prototype.clone.apply(this,[obj]);return obj;},CLASS_NAME:\"OpenLayers.Layer.OSM\"});OpenLayers.Layer.Zoomify=OpenLayers.Class(OpenLayers.Layer.Grid,{url:null,size:null,isBaseLayer:true,standardTileSize:256,numberOfTiers:0,tileCountUpToTier:new Array(),tierSizeInTiles:new Array(),tierImageSize:new Array(),initialize:function(name,url,size,options){this.initializeZoomify(size);var newArguments=[];newArguments.push(name,url,size,{},options);OpenLayers.Layer.Grid.prototype.initialize.apply(this,newArguments);},initializeZoomify:function(size){var imageSize=size.clone()\nvar tiles=new OpenLayers.Size(Math.ceil(imageSize.w/this.standardTileSize),Math.ceil(imageSize.h/this.standardTileSize));this.tierSizeInTiles.push(tiles);this.tierImageSize.push(imageSize);while(imageSize.w>this.standardTileSize||imageSize.h>this.standardTileSize){imageSize=new OpenLayers.Size(Math.floor(imageSize.w/2),Math.floor(imageSize.h/2));tiles=new OpenLayers.Size(Math.ceil(imageSize.w/this.standardTileSize),Math.ceil(imageSize.h/this.standardTileSize));this.tierSizeInTiles.push(tiles);this.tierImageSize.push(imageSize);}\nthis.tierSizeInTiles.reverse();this.tierImageSize.reverse();this.numberOfTiers=this.tierSizeInTiles.length;this.tileCountUpToTier[0]=0;for(var i=1;i<this.numberOfTiers;i++){this.tileCountUpToTier.push(this.tierSizeInTiles[i-1].w*this.tierSizeInTiles[i-1].h+\nthis.tileCountUpToTier[i-1]);}},destroy:function(){OpenLayers.Layer.Grid.prototype.destroy.apply(this,arguments);this.tileCountUpToTier.length=0\nthis.tierSizeInTiles.length=0\nthis.tierImageSize.length=0},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.Zoomify(this.name,this.url,this.size,this.options);}\nobj=OpenLayers.Layer.Grid.prototype.clone.apply(this,[obj]);return obj;},getURL:function(bounds){bounds=this.adjustBounds(bounds);var res=this.map.getResolution();var x=Math.round((bounds.left-this.tileOrigin.lon)/(res*this.tileSize.w));var y=Math.round((this.tileOrigin.lat-bounds.top)/(res*this.tileSize.h));var z=this.map.getZoom();var tileIndex=x+y*this.tierSizeInTiles[z].w+this.tileCountUpToTier[z];var path=\"TileGroup\"+Math.floor((tileIndex)/256)+\"/\"+z+\"-\"+x+\"-\"+y+\".jpg\";var url=this.url;if(url instanceof Array){url=this.selectUrl(path,url);}\nreturn url+path;},getImageSize:function(){if(arguments.length>0){bounds=this.adjustBounds(arguments[0]);var res=this.map.getResolution();var x=Math.round((bounds.left-this.tileOrigin.lon)/(res*this.tileSize.w));var y=Math.round((this.tileOrigin.lat-bounds.top)/(res*this.tileSize.h));var z=this.map.getZoom();var w=this.standardTileSize;var h=this.standardTileSize;if(x==this.tierSizeInTiles[z].w-1){var w=this.tierImageSize[z].w%this.standardTileSize;};if(y==this.tierSizeInTiles[z].h-1){var h=this.tierImageSize[z].h%this.standardTileSize;};return(new OpenLayers.Size(w,h));}else{return this.tileSize;}},addTile:function(bounds,position){return new OpenLayers.Tile.Image(this,position,bounds,null,this.tileSize);},setMap:function(map){OpenLayers.Layer.Grid.prototype.setMap.apply(this,arguments);this.tileOrigin=new OpenLayers.LonLat(this.map.maxExtent.left,this.map.maxExtent.top);},calculateGridLayout:function(bounds,extent,resolution){var tilelon=resolution*this.tileSize.w;var tilelat=resolution*this.tileSize.h;var offsetlon=bounds.left-extent.left;var tilecol=Math.floor(offsetlon/tilelon)-this.buffer;var tilecolremain=offsetlon/tilelon-tilecol;var tileoffsetx=-tilecolremain*this.tileSize.w;var tileoffsetlon=extent.left+tilecol*tilelon;var offsetlat=extent.top-bounds.top+tilelat;var tilerow=Math.floor(offsetlat/tilelat)-this.buffer;var tilerowremain=tilerow-offsetlat/tilelat;var tileoffsety=tilerowremain*this.tileSize.h;var tileoffsetlat=extent.top-tilelat*tilerow;return{tilelon:tilelon,tilelat:tilelat,tileoffsetlon:tileoffsetlon,tileoffsetlat:tileoffsetlat,tileoffsetx:tileoffsetx,tileoffsety:tileoffsety};},CLASS_NAME:\"OpenLayers.Layer.Zoomify\"});OpenLayers.Protocol.SQL.Gears=OpenLayers.Class(OpenLayers.Protocol.SQL,{FID_PREFIX:'__gears_fid__',NULL_GEOMETRY:'__gears_null_geometry__',NULL_FEATURE_STATE:'__gears_null_feature_state__',jsonParser:null,wktParser:null,fidRegExp:null,saveFeatureState:true,typeOfFid:\"string\",db:null,initialize:function(options){if(!this.supported()){return;}\nOpenLayers.Protocol.SQL.prototype.initialize.apply(this,[options]);this.jsonParser=new OpenLayers.Format.JSON();this.wktParser=new OpenLayers.Format.WKT();this.fidRegExp=new RegExp('^'+this.FID_PREFIX);this.initializeDatabase();},initializeDatabase:function(){this.db=google.gears.factory.create('beta.database');this.db.open(this.databaseName);this.db.execute(\"CREATE TABLE IF NOT EXISTS \"+this.tableName+\" (fid TEXT UNIQUE, geometry TEXT, properties TEXT,\"+\"  state TEXT)\");},destroy:function(){this.db.close();this.db=null;this.jsonParser=null;this.wktParser=null;OpenLayers.Protocol.SQL.prototype.destroy.apply(this);},supported:function(){return!!(window.google&&google.gears);},read:function(options){OpenLayers.Protocol.prototype.read.apply(this,arguments);options=OpenLayers.Util.applyDefaults(options,this.options);var feature,features=[];var rs=this.db.execute(\"SELECT * FROM \"+this.tableName);while(rs.isValidRow()){feature=this.unfreezeFeature(rs);if(this.evaluateFilter(feature,options.filter)){if(!options.noFeatureStateReset){feature.state=null;}\nfeatures.push(feature);}\nrs.next();}\nrs.close();var resp=new OpenLayers.Protocol.Response({code:OpenLayers.Protocol.Response.SUCCESS,requestType:\"read\",features:features});if(options&&options.callback){options.callback.call(options.scope,resp);}\nreturn resp;},unfreezeFeature:function(row){var feature;var wkt=row.fieldByName('geometry');if(wkt==this.NULL_GEOMETRY){feature=new OpenLayers.Feature.Vector();}else{feature=this.wktParser.read(wkt);}\nfeature.attributes=this.jsonParser.read(row.fieldByName('properties'));feature.fid=this.extractFidFromField(row.fieldByName('fid'));var state=row.fieldByName('state');if(state==this.NULL_FEATURE_STATE){state=null;}\nfeature.state=state;return feature;},extractFidFromField:function(field){if(!field.match(this.fidRegExp)&&this.typeOfFid==\"number\"){field=parseFloat(field);}\nreturn field;},create:function(features,options){options=OpenLayers.Util.applyDefaults(options,this.options);var resp=this.createOrUpdate(features);resp.requestType=\"create\";if(options&&options.callback){options.callback.call(options.scope,resp);}\nreturn resp;},update:function(features,options){options=OpenLayers.Util.applyDefaults(options,this.options);var resp=this.createOrUpdate(features);resp.requestType=\"update\";if(options&&options.callback){options.callback.call(options.scope,resp);}\nreturn resp;},createOrUpdate:function(features){if(!(features instanceof Array)){features=[features];}\nvar i,len=features.length,feature;var insertedFeatures=new Array(len);for(i=0;i<len;i++){feature=features[i];var params=this.freezeFeature(feature);this.db.execute(\"REPLACE INTO \"+this.tableName+\" (fid, geometry, properties, state)\"+\" VALUES (?, ?, ?, ?)\",params);var clone=feature.clone();clone.fid=this.extractFidFromField(params[0]);insertedFeatures[i]=clone;}\nreturn new OpenLayers.Protocol.Response({code:OpenLayers.Protocol.Response.SUCCESS,features:insertedFeatures,reqFeatures:features});},freezeFeature:function(feature){feature.fid=feature.fid!=null?\"\"+feature.fid:OpenLayers.Util.createUniqueID(this.FID_PREFIX);var geometry=feature.geometry!=null?feature.geometry.toString():this.NULL_GEOMETRY;var properties=this.jsonParser.write(feature.attributes);var state=this.getFeatureStateForFreeze(feature);return[feature.fid,geometry,properties,state];},getFeatureStateForFreeze:function(feature){var state;if(!this.saveFeatureState){state=this.NULL_FEATURE_STATE;}else if(this.createdOffline(feature)){state=OpenLayers.State.INSERT;}else{state=feature.state;}\nreturn state;},\"delete\":function(features,options){if(!(features instanceof Array)){features=[features];}\noptions=OpenLayers.Util.applyDefaults(options,this.options);var i,len,feature;for(i=0,len=features.length;i<len;i++){feature=features[i];if(this.saveFeatureState&&!this.createdOffline(feature)){var toDelete=feature.clone();toDelete.fid=feature.fid;if(toDelete.geometry){toDelete.geometry.destroy();toDelete.geometry=null;}\ntoDelete.state=feature.state;this.createOrUpdate(toDelete);}else{this.db.execute(\"DELETE FROM \"+this.tableName+\" WHERE fid = ?\",[feature.fid]);}}\nvar resp=new OpenLayers.Protocol.Response({code:OpenLayers.Protocol.Response.SUCCESS,requestType:\"delete\",reqFeatures:features});if(options&&options.callback){options.callback.call(options.scope,resp);}\nreturn resp;},createdOffline:function(feature){return(typeof feature.fid==\"string\"&&!!(feature.fid.match(this.fidRegExp)));},commit:function(features,options){var opt,resp=[],nRequests=0,nResponses=0;function callback(resp){if(++nResponses<nRequests){resp.last=false;}\nthis.callUserCallback(options,resp);}\nvar feature,toCreate=[],toUpdate=[],toDelete=[];for(var i=features.length-1;i>=0;i--){feature=features[i];switch(feature.state){case OpenLayers.State.INSERT:toCreate.push(feature);break;case OpenLayers.State.UPDATE:toUpdate.push(feature);break;case OpenLayers.State.DELETE:toDelete.push(feature);break;}}\nif(toCreate.length>0){nRequests++;opt=OpenLayers.Util.applyDefaults({\"callback\":callback,\"scope\":this},options.create);resp.push(this.create(toCreate,opt));}\nif(toUpdate.length>0){nRequests++;opt=OpenLayers.Util.applyDefaults({\"callback\":callback,\"scope\":this},options.update);resp.push(this.update(toUpdate,opt));}\nif(toDelete.length>0){nRequests++;opt=OpenLayers.Util.applyDefaults({\"callback\":callback,\"scope\":this},options[\"delete\"]);resp.push(this[\"delete\"](toDelete,opt));}\nreturn resp;},clear:function(){this.db.execute(\"DELETE FROM \"+this.tableName);},callUserCallback:function(options,resp){var opt=options[resp.requestType];if(opt&&opt.callback){opt.callback.call(opt.scope,resp);}\nif(resp.last&&options.callback){options.callback.call(options.scope);}},CLASS_NAME:\"OpenLayers.Protocol.SQL.Gears\"});OpenLayers.Rule=OpenLayers.Class({id:null,name:null,title:null,description:null,context:null,filter:null,elseFilter:false,symbolizer:null,symbolizers:null,minScaleDenominator:null,maxScaleDenominator:null,initialize:function(options){this.symbolizer={};OpenLayers.Util.extend(this,options);if(this.symbolizers){delete this.symbolizer;}\nthis.id=OpenLayers.Util.createUniqueID(this.CLASS_NAME+\"_\");},destroy:function(){for(var i in this.symbolizer){this.symbolizer[i]=null;}\nthis.symbolizer=null;delete this.symbolizers;},evaluate:function(feature){var context=this.getContext(feature);var applies=true;if(this.minScaleDenominator||this.maxScaleDenominator){var scale=feature.layer.map.getScale();}\nif(this.minScaleDenominator){applies=scale>=OpenLayers.Style.createLiteral(this.minScaleDenominator,context);}\nif(applies&&this.maxScaleDenominator){applies=scale<OpenLayers.Style.createLiteral(this.maxScaleDenominator,context);}\nif(applies&&this.filter){if(this.filter.CLASS_NAME==\"OpenLayers.Filter.FeatureId\"){applies=this.filter.evaluate(feature);}else{applies=this.filter.evaluate(context);}}\nreturn applies;},getContext:function(feature){var context=this.context;if(!context){context=feature.attributes||feature.data;}\nif(typeof this.context==\"function\"){context=this.context(feature);}\nreturn context;},clone:function(){var options=OpenLayers.Util.extend({},this);if(this.symbolizers){var len=this.symbolizers.length;options.symbolizers=new Array(len);for(var i=0;i<len;++i){options.symbolizers[i]=this.symbolizers[i].clone();}}else{options.symbolizer={};var value,type;for(var key in this.symbolizer){value=this.symbolizer[key];type=typeof value;if(type===\"object\"){options.symbolizer[key]=OpenLayers.Util.extend({},value);}else if(type===\"string\"){options.symbolizer[key]=value;}}}\noptions.filter=this.filter&&this.filter.clone();options.context=this.context&&OpenLayers.Util.extend({},this.context);return new OpenLayers.Rule(options);},CLASS_NAME:\"OpenLayers.Rule\"});OpenLayers.StyleMap=OpenLayers.Class({styles:null,extendDefault:true,initialize:function(style,options){this.styles={\"default\":new OpenLayers.Style(OpenLayers.Feature.Vector.style[\"default\"]),\"select\":new OpenLayers.Style(OpenLayers.Feature.Vector.style[\"select\"]),\"temporary\":new OpenLayers.Style(OpenLayers.Feature.Vector.style[\"temporary\"]),\"delete\":new OpenLayers.Style(OpenLayers.Feature.Vector.style[\"delete\"])};if(style instanceof OpenLayers.Style){this.styles[\"default\"]=style;this.styles[\"select\"]=style;this.styles[\"temporary\"]=style;this.styles[\"delete\"]=style;}else if(typeof style==\"object\"){for(var key in style){if(style[key]instanceof OpenLayers.Style){this.styles[key]=style[key];}else if(typeof style[key]==\"object\"){this.styles[key]=new OpenLayers.Style(style[key]);}else{this.styles[\"default\"]=new OpenLayers.Style(style);this.styles[\"select\"]=new OpenLayers.Style(style);this.styles[\"temporary\"]=new OpenLayers.Style(style);this.styles[\"delete\"]=new OpenLayers.Style(style);break;}}}\nOpenLayers.Util.extend(this,options);},destroy:function(){for(var key in this.styles){this.styles[key].destroy();}\nthis.styles=null;},createSymbolizer:function(feature,intent){if(!feature){feature=new OpenLayers.Feature.Vector();}\nif(!this.styles[intent]){intent=\"default\";}\nfeature.renderIntent=intent;var defaultSymbolizer={};if(this.extendDefault&&intent!=\"default\"){defaultSymbolizer=this.styles[\"default\"].createSymbolizer(feature);}\nreturn OpenLayers.Util.extend(defaultSymbolizer,this.styles[intent].createSymbolizer(feature));},addUniqueValueRules:function(renderIntent,property,symbolizers,context){var rules=[];for(var value in symbolizers){rules.push(new OpenLayers.Rule({symbolizer:symbolizers[value],context:context,filter:new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.EQUAL_TO,property:property,value:value})}));}\nthis.styles[renderIntent].addRules(rules);},CLASS_NAME:\"OpenLayers.StyleMap\"});OpenLayers.Control.NavToolbar=OpenLayers.Class(OpenLayers.Control.Panel,{initialize:function(options){OpenLayers.Control.Panel.prototype.initialize.apply(this,[options]);this.addControls([new OpenLayers.Control.Navigation(),new OpenLayers.Control.ZoomBox()]);},draw:function(){var div=OpenLayers.Control.Panel.prototype.draw.apply(this,arguments);this.activateControl(this.controls[0]);return div;},CLASS_NAME:\"OpenLayers.Control.NavToolbar\"});OpenLayers.Filter.Comparison=OpenLayers.Class(OpenLayers.Filter,{type:null,property:null,value:null,matchCase:true,lowerBoundary:null,upperBoundary:null,initialize:function(options){OpenLayers.Filter.prototype.initialize.apply(this,[options]);},evaluate:function(context){if(context instanceof OpenLayers.Feature.Vector){context=context.attributes;}\nvar result=false;var got=context[this.property];switch(this.type){case OpenLayers.Filter.Comparison.EQUAL_TO:var exp=this.value;if(!this.matchCase&&typeof got==\"string\"&&typeof exp==\"string\"){result=(got.toUpperCase()==exp.toUpperCase());}else{result=(got==exp);}\nbreak;case OpenLayers.Filter.Comparison.NOT_EQUAL_TO:var exp=this.value;if(!this.matchCase&&typeof got==\"string\"&&typeof exp==\"string\"){result=(got.toUpperCase()!=exp.toUpperCase());}else{result=(got!=exp);}\nbreak;case OpenLayers.Filter.Comparison.LESS_THAN:result=got<this.value;break;case OpenLayers.Filter.Comparison.GREATER_THAN:result=got>this.value;break;case OpenLayers.Filter.Comparison.LESS_THAN_OR_EQUAL_TO:result=got<=this.value;break;case OpenLayers.Filter.Comparison.GREATER_THAN_OR_EQUAL_TO:result=got>=this.value;break;case OpenLayers.Filter.Comparison.BETWEEN:result=(got>=this.lowerBoundary)&&(got<=this.upperBoundary);break;case OpenLayers.Filter.Comparison.LIKE:var regexp=new RegExp(this.value,\"gi\");result=regexp.test(got);break;}\nreturn result;},value2regex:function(wildCard,singleChar,escapeChar){if(wildCard==\".\"){var msg=\"'.' is an unsupported wildCard character for \"+\"OpenLayers.Filter.Comparison\";OpenLayers.Console.error(msg);return null;}\nwildCard=wildCard?wildCard:\"*\";singleChar=singleChar?singleChar:\".\";escapeChar=escapeChar?escapeChar:\"!\";this.value=this.value.replace(new RegExp(\"\\\\\"+escapeChar+\"(.|$)\",\"g\"),\"\\\\$1\");this.value=this.value.replace(new RegExp(\"\\\\\"+singleChar,\"g\"),\".\");this.value=this.value.replace(new RegExp(\"\\\\\"+wildCard,\"g\"),\".*\");this.value=this.value.replace(new RegExp(\"\\\\\\\\.\\\\*\",\"g\"),\"\\\\\"+wildCard);this.value=this.value.replace(new RegExp(\"\\\\\\\\\\\\.\",\"g\"),\"\\\\\"+singleChar);return this.value;},regex2value:function(){var value=this.value;value=value.replace(/!/g,\"!!\");value=value.replace(/(\\\\)?\\\\\\./g,function($0,$1){return $1?$0:\"!.\";});value=value.replace(/(\\\\)?\\\\\\*/g,function($0,$1){return $1?$0:\"!*\";});value=value.replace(/\\\\\\\\/g,\"\\\\\");value=value.replace(/\\.\\*/g,\"*\");return value;},clone:function(){return OpenLayers.Util.extend(new OpenLayers.Filter.Comparison(),this);},CLASS_NAME:\"OpenLayers.Filter.Comparison\"});OpenLayers.Filter.Comparison.EQUAL_TO=\"==\";OpenLayers.Filter.Comparison.NOT_EQUAL_TO=\"!=\";OpenLayers.Filter.Comparison.LESS_THAN=\"<\";OpenLayers.Filter.Comparison.GREATER_THAN=\">\";OpenLayers.Filter.Comparison.LESS_THAN_OR_EQUAL_TO=\"<=\";OpenLayers.Filter.Comparison.GREATER_THAN_OR_EQUAL_TO=\">=\";OpenLayers.Filter.Comparison.BETWEEN=\"..\";OpenLayers.Filter.Comparison.LIKE=\"~\";OpenLayers.Filter.FeatureId=OpenLayers.Class(OpenLayers.Filter,{fids:null,initialize:function(options){this.fids=[];OpenLayers.Filter.prototype.initialize.apply(this,[options]);},evaluate:function(feature){for(var i=0,len=this.fids.length;i<len;i++){var fid=feature.fid||feature.id;if(fid==this.fids[i]){return true;}}\nreturn false;},clone:function(){var filter=new OpenLayers.Filter.FeatureId();OpenLayers.Util.extend(filter,this);filter.fids=this.fids.slice();return filter;},CLASS_NAME:\"OpenLayers.Filter.FeatureId\"});OpenLayers.Filter.Logical=OpenLayers.Class(OpenLayers.Filter,{filters:null,type:null,initialize:function(options){this.filters=[];OpenLayers.Filter.prototype.initialize.apply(this,[options]);},destroy:function(){this.filters=null;OpenLayers.Filter.prototype.destroy.apply(this);},evaluate:function(context){switch(this.type){case OpenLayers.Filter.Logical.AND:for(var i=0,len=this.filters.length;i<len;i++){if(this.filters[i].evaluate(context)==false){return false;}}\nreturn true;case OpenLayers.Filter.Logical.OR:for(var i=0,len=this.filters.length;i<len;i++){if(this.filters[i].evaluate(context)==true){return true;}}\nreturn false;case OpenLayers.Filter.Logical.NOT:return(!this.filters[0].evaluate(context));}},clone:function(){var filters=[];for(var i=0,len=this.filters.length;i<len;++i){filters.push(this.filters[i].clone());}\nreturn new OpenLayers.Filter.Logical({type:this.type,filters:filters});},CLASS_NAME:\"OpenLayers.Filter.Logical\"});OpenLayers.Filter.Logical.AND=\"&&\";OpenLayers.Filter.Logical.OR=\"||\";OpenLayers.Filter.Logical.NOT=\"!\";OpenLayers.Filter.Spatial=OpenLayers.Class(OpenLayers.Filter,{type:null,property:null,value:null,distance:null,distanceUnits:null,initialize:function(options){OpenLayers.Filter.prototype.initialize.apply(this,[options]);},evaluate:function(feature){var intersect=false;switch(this.type){case OpenLayers.Filter.Spatial.BBOX:case OpenLayers.Filter.Spatial.INTERSECTS:if(feature.geometry){var geom=this.value;if(this.value.CLASS_NAME==\"OpenLayers.Bounds\"){geom=this.value.toGeometry();}\nif(feature.geometry.intersects(geom)){intersect=true;}}\nbreak;default:OpenLayers.Console.error(OpenLayers.i18n(\"filterEvaluateNotImplemented\"));break;}\nreturn intersect;},clone:function(){var options=OpenLayers.Util.applyDefaults({value:this.value&&this.value.clone&&this.value.clone()},this);return new OpenLayers.Filter.Spatial(options);},CLASS_NAME:\"OpenLayers.Filter.Spatial\"});OpenLayers.Filter.Spatial.BBOX=\"BBOX\";OpenLayers.Filter.Spatial.INTERSECTS=\"INTERSECTS\";OpenLayers.Filter.Spatial.DWITHIN=\"DWITHIN\";OpenLayers.Filter.Spatial.WITHIN=\"WITHIN\";OpenLayers.Filter.Spatial.CONTAINS=\"CONTAINS\";OpenLayers.Geometry.Collection=OpenLayers.Class(OpenLayers.Geometry,{components:null,componentTypes:null,initialize:function(components){OpenLayers.Geometry.prototype.initialize.apply(this,arguments);this.components=[];if(components!=null){this.addComponents(components);}},destroy:function(){this.components.length=0;this.components=null;OpenLayers.Geometry.prototype.destroy.apply(this,arguments);},clone:function(){var geometry=eval(\"new \"+this.CLASS_NAME+\"()\");for(var i=0,len=this.components.length;i<len;i++){geometry.addComponent(this.components[i].clone());}\nOpenLayers.Util.applyDefaults(geometry,this);return geometry;},getComponentsString:function(){var strings=[];for(var i=0,len=this.components.length;i<len;i++){strings.push(this.components[i].toShortString());}\nreturn strings.join(\",\");},calculateBounds:function(){this.bounds=null;if(this.components&&this.components.length>0){this.setBounds(this.components[0].getBounds());for(var i=1,len=this.components.length;i<len;i++){this.extendBounds(this.components[i].getBounds());}}},addComponents:function(components){if(!(components instanceof Array)){components=[components];}\nfor(var i=0,len=components.length;i<len;i++){this.addComponent(components[i]);}},addComponent:function(component,index){var added=false;if(component){if(this.componentTypes==null||(OpenLayers.Util.indexOf(this.componentTypes,component.CLASS_NAME)>-1)){if(index!=null&&(index<this.components.length)){var components1=this.components.slice(0,index);var components2=this.components.slice(index,this.components.length);components1.push(component);this.components=components1.concat(components2);}else{this.components.push(component);}\ncomponent.parent=this;this.clearBounds();added=true;}}\nreturn added;},removeComponents:function(components){if(!(components instanceof Array)){components=[components];}\nfor(var i=components.length-1;i>=0;--i){this.removeComponent(components[i]);}},removeComponent:function(component){OpenLayers.Util.removeItem(this.components,component);this.clearBounds();},getLength:function(){var length=0.0;for(var i=0,len=this.components.length;i<len;i++){length+=this.components[i].getLength();}\nreturn length;},getArea:function(){var area=0.0;for(var i=0,len=this.components.length;i<len;i++){area+=this.components[i].getArea();}\nreturn area;},getGeodesicArea:function(projection){var area=0.0;for(var i=0,len=this.components.length;i<len;i++){area+=this.components[i].getGeodesicArea(projection);}\nreturn area;},getCentroid:function(weighted){if(!weighted){return this.components.length&&this.components[0].getCentroid();}\nvar len=this.components.length;if(!len){return false;}\nvar areas=[];var centroids=[];var areaSum=0;var minArea=Number.MAX_VALUE;var component;for(var i=0;i<len;++i){component=this.components[i];var area=component.getArea();var centroid=component.getCentroid(true);if(isNaN(area)||isNaN(centroid.x)||isNaN(centroid.y)){continue;}\nareas.push(area);areaSum+=area;minArea=(area<minArea&&area>0)?area:minArea;centroids.push(centroid);}\nlen=areas.length;if(areaSum===0){for(var i=0;i<len;++i){areas[i]=1;}\nareaSum=areas.length;}else{for(var i=0;i<len;++i){areas[i]/=minArea;}\nareaSum/=minArea;}\nvar xSum=0,ySum=0,centroid,area;for(var i=0;i<len;++i){centroid=centroids[i];area=areas[i];xSum+=centroid.x*area;ySum+=centroid.y*area;}\nreturn new OpenLayers.Geometry.Point(xSum/areaSum,ySum/areaSum);},getGeodesicLength:function(projection){var length=0.0;for(var i=0,len=this.components.length;i<len;i++){length+=this.components[i].getGeodesicLength(projection);}\nreturn length;},move:function(x,y){for(var i=0,len=this.components.length;i<len;i++){this.components[i].move(x,y);}},rotate:function(angle,origin){for(var i=0,len=this.components.length;i<len;++i){this.components[i].rotate(angle,origin);}},resize:function(scale,origin,ratio){for(var i=0;i<this.components.length;++i){this.components[i].resize(scale,origin,ratio);}\nreturn this;},distanceTo:function(geometry,options){var edge=!(options&&options.edge===false);var details=edge&&options&&options.details;var result,best,distance;var min=Number.POSITIVE_INFINITY;for(var i=0,len=this.components.length;i<len;++i){result=this.components[i].distanceTo(geometry,options);distance=details?result.distance:result;if(distance<min){min=distance;best=result;if(min==0){break;}}}\nreturn best;},equals:function(geometry){var equivalent=true;if(!geometry||!geometry.CLASS_NAME||(this.CLASS_NAME!=geometry.CLASS_NAME)){equivalent=false;}else if(!(geometry.components instanceof Array)||(geometry.components.length!=this.components.length)){equivalent=false;}else{for(var i=0,len=this.components.length;i<len;++i){if(!this.components[i].equals(geometry.components[i])){equivalent=false;break;}}}\nreturn equivalent;},transform:function(source,dest){if(source&&dest){for(var i=0,len=this.components.length;i<len;i++){var component=this.components[i];component.transform(source,dest);}\nthis.bounds=null;}\nreturn this;},intersects:function(geometry){var intersect=false;for(var i=0,len=this.components.length;i<len;++i){intersect=geometry.intersects(this.components[i]);if(intersect){break;}}\nreturn intersect;},getVertices:function(nodes){var vertices=[];for(var i=0,len=this.components.length;i<len;++i){Array.prototype.push.apply(vertices,this.components[i].getVertices(nodes));}\nreturn vertices;},CLASS_NAME:\"OpenLayers.Geometry.Collection\"});OpenLayers.Geometry.Point=OpenLayers.Class(OpenLayers.Geometry,{x:null,y:null,initialize:function(x,y){OpenLayers.Geometry.prototype.initialize.apply(this,arguments);this.x=parseFloat(x);this.y=parseFloat(y);},clone:function(obj){if(obj==null){obj=new OpenLayers.Geometry.Point(this.x,this.y);}\nOpenLayers.Util.applyDefaults(obj,this);return obj;},calculateBounds:function(){this.bounds=new OpenLayers.Bounds(this.x,this.y,this.x,this.y);},distanceTo:function(geometry,options){var edge=!(options&&options.edge===false);var details=edge&&options&&options.details;var distance,x0,y0,x1,y1,result;if(geometry instanceof OpenLayers.Geometry.Point){x0=this.x;y0=this.y;x1=geometry.x;y1=geometry.y;distance=Math.sqrt(Math.pow(x0-x1,2)+Math.pow(y0-y1,2));result=!details?distance:{x0:x0,y0:y0,x1:x1,y1:y1,distance:distance};}else{result=geometry.distanceTo(this,options);if(details){result={x0:result.x1,y0:result.y1,x1:result.x0,y1:result.y0,distance:result.distance};}}\nreturn result;},equals:function(geom){var equals=false;if(geom!=null){equals=((this.x==geom.x&&this.y==geom.y)||(isNaN(this.x)&&isNaN(this.y)&&isNaN(geom.x)&&isNaN(geom.y)));}\nreturn equals;},toShortString:function(){return(this.x+\", \"+this.y);},move:function(x,y){this.x=this.x+x;this.y=this.y+y;this.clearBounds();},rotate:function(angle,origin){angle*=Math.PI/180;var radius=this.distanceTo(origin);var theta=angle+Math.atan2(this.y-origin.y,this.x-origin.x);this.x=origin.x+(radius*Math.cos(theta));this.y=origin.y+(radius*Math.sin(theta));this.clearBounds();},getCentroid:function(){return new OpenLayers.Geometry.Point(this.x,this.y);},resize:function(scale,origin,ratio){ratio=(ratio==undefined)?1:ratio;this.x=origin.x+(scale*ratio*(this.x-origin.x));this.y=origin.y+(scale*(this.y-origin.y));this.clearBounds();return this;},intersects:function(geometry){var intersect=false;if(geometry.CLASS_NAME==\"OpenLayers.Geometry.Point\"){intersect=this.equals(geometry);}else{intersect=geometry.intersects(this);}\nreturn intersect;},transform:function(source,dest){if((source&&dest)){OpenLayers.Projection.transform(this,source,dest);this.bounds=null;}\nreturn this;},getVertices:function(nodes){return[this];},CLASS_NAME:\"OpenLayers.Geometry.Point\"});OpenLayers.Geometry.Rectangle=OpenLayers.Class(OpenLayers.Geometry,{x:null,y:null,width:null,height:null,initialize:function(x,y,width,height){OpenLayers.Geometry.prototype.initialize.apply(this,arguments);this.x=x;this.y=y;this.width=width;this.height=height;},calculateBounds:function(){this.bounds=new OpenLayers.Bounds(this.x,this.y,this.x+this.width,this.y+this.height);},getLength:function(){var length=(2*this.width)+(2*this.height);return length;},getArea:function(){var area=this.width*this.height;return area;},CLASS_NAME:\"OpenLayers.Geometry.Rectangle\"});OpenLayers.Geometry.Surface=OpenLayers.Class(OpenLayers.Geometry,{initialize:function(){OpenLayers.Geometry.prototype.initialize.apply(this,arguments);},CLASS_NAME:\"OpenLayers.Geometry.Surface\"});OpenLayers.Layer.KaMapCache=OpenLayers.Class(OpenLayers.Layer.KaMap,{IMAGE_EXTENSIONS:{'jpeg':'jpg','gif':'gif','png':'png','png8':'png','png24':'png','dithered':'png'},DEFAULT_FORMAT:'jpeg',initialize:function(name,url,params,options){OpenLayers.Layer.KaMap.prototype.initialize.apply(this,arguments);this.extension=this.IMAGE_EXTENSIONS[this.params.i.toLowerCase()||DEFAULT_FORMAT];},getURL:function(bounds){bounds=this.adjustBounds(bounds);var mapRes=this.map.getResolution();var scale=Math.round((this.map.getScale()*10000))/10000;var pX=Math.round(bounds.left/mapRes);var pY=-Math.round(bounds.top/mapRes);var metaX=Math.floor(pX/this.tileSize.w/this.params.metaTileSize.w)*this.tileSize.w*this.params.metaTileSize.w;var metaY=Math.floor(pY/this.tileSize.h/this.params.metaTileSize.h)*this.tileSize.h*this.params.metaTileSize.h;var url=this.url;if(url instanceof Array){url=this.selectUrl(paramsString,url);}\nvar components=[url,\"/\",this.params.map,\"/\",scale,\"/\",this.params.g.replace(/\\s/g,'_'),\"/def/t\",metaY,\"/l\",metaX,\"/t\",pY,\"l\",pX,\".\",this.extension];return components.join(\"\");},CLASS_NAME:\"OpenLayers.Layer.KaMapCache\"});OpenLayers.Layer.MapServer.Untiled=OpenLayers.Class(OpenLayers.Layer.MapServer,{singleTile:true,initialize:function(name,url,params,options){OpenLayers.Layer.MapServer.prototype.initialize.apply(this,arguments);var msg=\"The OpenLayers.Layer.MapServer.Untiled class is deprecated and \"+\"will be removed in 3.0. Instead, you should use the \"+\"normal OpenLayers.Layer.MapServer class, passing it the option \"+\"'singleTile' as true.\";OpenLayers.Console.warn(msg);},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.MapServer.Untiled(this.name,this.url,this.params,this.getOptions());}\nobj=OpenLayers.Layer.MapServer.prototype.clone.apply(this,[obj]);return obj;},CLASS_NAME:\"OpenLayers.Layer.MapServer.Untiled\"});OpenLayers.Layer.Vector=OpenLayers.Class(OpenLayers.Layer,{EVENT_TYPES:[\"beforefeatureadded\",\"beforefeaturesadded\",\"featureadded\",\"featuresadded\",\"beforefeatureremoved\",\"beforefeaturesremoved\",\"featureremoved\",\"featuresremoved\",\"beforefeatureselected\",\"featureselected\",\"featureunselected\",\"beforefeaturemodified\",\"featuremodified\",\"afterfeaturemodified\",\"vertexmodified\",\"sketchstarted\",\"sketchmodified\",\"sketchcomplete\",\"refresh\"],isBaseLayer:false,isFixed:false,isVector:true,features:null,filter:null,selectedFeatures:null,unrenderedFeatures:null,reportError:true,style:null,styleMap:null,strategies:null,protocol:null,renderers:['SVG','VML','Canvas'],renderer:null,rendererOptions:null,geometryType:null,drawn:false,initialize:function(name,options){this.EVENT_TYPES=OpenLayers.Layer.Vector.prototype.EVENT_TYPES.concat(OpenLayers.Layer.prototype.EVENT_TYPES);OpenLayers.Layer.prototype.initialize.apply(this,arguments);if(!this.renderer||!this.renderer.supported()){this.assignRenderer();}\nif(!this.renderer||!this.renderer.supported()){this.renderer=null;this.displayError();}\nif(!this.styleMap){this.styleMap=new OpenLayers.StyleMap();}\nthis.features=[];this.selectedFeatures=[];this.unrenderedFeatures={};if(this.strategies){for(var i=0,len=this.strategies.length;i<len;i++){this.strategies[i].setLayer(this);}}},destroy:function(){if(this.strategies){var strategy,i,len;for(i=0,len=this.strategies.length;i<len;i++){strategy=this.strategies[i];if(strategy.autoDestroy){strategy.destroy();}}\nthis.strategies=null;}\nif(this.protocol){if(this.protocol.autoDestroy){this.protocol.destroy();}\nthis.protocol=null;}\nthis.destroyFeatures();this.features=null;this.selectedFeatures=null;this.unrenderedFeatures=null;if(this.renderer){this.renderer.destroy();}\nthis.renderer=null;this.geometryType=null;this.drawn=null;OpenLayers.Layer.prototype.destroy.apply(this,arguments);},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.Vector(this.name,this.getOptions());}\nobj=OpenLayers.Layer.prototype.clone.apply(this,[obj]);var features=this.features;var len=features.length;var clonedFeatures=new Array(len);for(var i=0;i<len;++i){clonedFeatures[i]=features[i].clone();}\nobj.features=clonedFeatures;return obj;},refresh:function(obj){if(this.calculateInRange()&&this.visibility){this.events.triggerEvent(\"refresh\",obj);}},assignRenderer:function(){for(var i=0,len=this.renderers.length;i<len;i++){var rendererClass=this.renderers[i];var renderer=(typeof rendererClass==\"function\")?rendererClass:OpenLayers.Renderer[rendererClass];if(renderer&&renderer.prototype.supported()){this.renderer=new renderer(this.div,this.rendererOptions);break;}}},displayError:function(){if(this.reportError){OpenLayers.Console.userError(OpenLayers.i18n(\"browserNotSupported\",{'renderers':this.renderers.join(\"\\n\")}));}},setMap:function(map){OpenLayers.Layer.prototype.setMap.apply(this,arguments);if(!this.renderer){this.map.removeLayer(this);}else{this.renderer.map=this.map;this.renderer.setSize(this.map.getSize());}},afterAdd:function(){if(this.strategies){var strategy,i,len;for(i=0,len=this.strategies.length;i<len;i++){strategy=this.strategies[i];if(strategy.autoActivate){strategy.activate();}}}},removeMap:function(map){this.drawn=false;if(this.strategies){var strategy,i,len;for(i=0,len=this.strategies.length;i<len;i++){strategy=this.strategies[i];if(strategy.autoActivate){strategy.deactivate();}}}},onMapResize:function(){OpenLayers.Layer.prototype.onMapResize.apply(this,arguments);this.renderer.setSize(this.map.getSize());},moveTo:function(bounds,zoomChanged,dragging){OpenLayers.Layer.prototype.moveTo.apply(this,arguments);var coordSysUnchanged=true;if(!dragging){this.renderer.root.style.visibility=\"hidden\";this.div.style.left=-parseInt(this.map.layerContainerDiv.style.left)+\"px\";this.div.style.top=-parseInt(this.map.layerContainerDiv.style.top)+\"px\";var extent=this.map.getExtent();coordSysUnchanged=this.renderer.setExtent(extent,zoomChanged);this.renderer.root.style.visibility=\"visible\";if(navigator.userAgent.toLowerCase().indexOf(\"gecko\")!=-1){this.div.scrollLeft=this.div.scrollLeft;}\nif(!zoomChanged&&coordSysUnchanged){for(var i in this.unrenderedFeatures){var feature=this.unrenderedFeatures[i];this.drawFeature(feature);}}}\nif(!this.drawn||zoomChanged||!coordSysUnchanged){this.drawn=true;var feature;for(var i=0,len=this.features.length;i<len;i++){this.renderer.locked=(i!==(len-1));feature=this.features[i];this.drawFeature(feature);}}},display:function(display){OpenLayers.Layer.prototype.display.apply(this,arguments);var currentDisplay=this.div.style.display;if(currentDisplay!=this.renderer.root.style.display){this.renderer.root.style.display=currentDisplay;}},addFeatures:function(features,options){if(!(features instanceof Array)){features=[features];}\nvar notify=!options||!options.silent;if(notify){var event={features:features};var ret=this.events.triggerEvent(\"beforefeaturesadded\",event);if(ret===false){return;}\nfeatures=event.features;}\nvar featuresAdded=[];for(var i=0,len=features.length;i<len;i++){if(i!=(features.length-1)){this.renderer.locked=true;}else{this.renderer.locked=false;}\nvar feature=features[i];if(this.geometryType&&!(feature.geometry instanceof this.geometryType)){var throwStr=OpenLayers.i18n('componentShouldBe',{'geomType':this.geometryType.prototype.CLASS_NAME});throw throwStr;}\nfeature.layer=this;if(!feature.style&&this.style){feature.style=OpenLayers.Util.extend({},this.style);}\nif(notify){if(this.events.triggerEvent(\"beforefeatureadded\",{feature:feature})===false){continue;};this.preFeatureInsert(feature);}\nfeaturesAdded.push(feature);this.features.push(feature);this.drawFeature(feature);if(notify){this.events.triggerEvent(\"featureadded\",{feature:feature});this.onFeatureInsert(feature);}}\nif(notify){this.events.triggerEvent(\"featuresadded\",{features:featuresAdded});}},removeFeatures:function(features,options){if(!features||features.length===0){return;}\nif(features===this.features){return this.removeAllFeatures(options);}\nif(!(features instanceof Array)){features=[features];}\nif(features===this.selectedFeatures){features=features.slice();}\nvar notify=!options||!options.silent;if(notify){this.events.triggerEvent(\"beforefeaturesremoved\",{features:features});}\nfor(var i=features.length-1;i>=0;i--){if(i!=0&&features[i-1].geometry){this.renderer.locked=true;}else{this.renderer.locked=false;}\nvar feature=features[i];delete this.unrenderedFeatures[feature.id];if(notify){this.events.triggerEvent(\"beforefeatureremoved\",{feature:feature});}\nthis.features=OpenLayers.Util.removeItem(this.features,feature);feature.layer=null;if(feature.geometry){this.renderer.eraseFeatures(feature);}\nif(OpenLayers.Util.indexOf(this.selectedFeatures,feature)!=-1){OpenLayers.Util.removeItem(this.selectedFeatures,feature);}\nif(notify){this.events.triggerEvent(\"featureremoved\",{feature:feature});}}\nif(notify){this.events.triggerEvent(\"featuresremoved\",{features:features});}},removeAllFeatures:function(options){var notify=!options||!options.silent;var features=this.features;if(notify){this.events.triggerEvent(\"beforefeaturesremoved\",{features:features});}\nvar feature;for(var i=features.length-1;i>=0;i--){feature=features[i];if(notify){this.events.triggerEvent(\"beforefeatureremoved\",{feature:feature});}\nfeature.layer=null;if(notify){this.events.triggerEvent(\"featureremoved\",{feature:feature});}}\nthis.renderer.clear();this.features=[];this.unrenderedFeatures={};this.selectedFeatures=[];if(notify){this.events.triggerEvent(\"featuresremoved\",{features:features});}},destroyFeatures:function(features,options){var all=(features==undefined);if(all){features=this.features;}\nif(features){this.removeFeatures(features,options);for(var i=features.length-1;i>=0;i--){features[i].destroy();}}},drawFeature:function(feature,style){if(!this.drawn){return}\nif(typeof style!=\"object\"){if(!style&&feature.state===OpenLayers.State.DELETE){style=\"delete\";}\nvar renderIntent=style||feature.renderIntent;style=feature.style||this.style;if(!style){style=this.styleMap.createSymbolizer(feature,renderIntent);}}\nif(!this.renderer.drawFeature(feature,style)){this.unrenderedFeatures[feature.id]=feature;}else{delete this.unrenderedFeatures[feature.id];};},eraseFeatures:function(features){this.renderer.eraseFeatures(features);},getFeatureFromEvent:function(evt){if(!this.renderer){OpenLayers.Console.error(OpenLayers.i18n(\"getFeatureError\"));return null;}\nvar featureId=this.renderer.getFeatureIdFromEvent(evt);return this.getFeatureById(featureId);},getFeatureBy:function(property,value){var feature=null;for(var i=0,len=this.features.length;i<len;++i){if(this.features[i][property]==value){feature=this.features[i];break;}}\nreturn feature;},getFeatureById:function(featureId){return this.getFeatureBy('id',featureId);},getFeatureByFid:function(featureFid){return this.getFeatureBy('fid',featureFid);},onFeatureInsert:function(feature){},preFeatureInsert:function(feature){},getDataExtent:function(){var maxExtent=null;var features=this.features;if(features&&(features.length>0)){maxExtent=new OpenLayers.Bounds();var geometry=null;for(var i=0,len=features.length;i<len;i++){geometry=features[i].geometry;if(geometry){maxExtent.extend(geometry.getBounds());}}}\nreturn maxExtent;},CLASS_NAME:\"OpenLayers.Layer.Vector\"});OpenLayers.Layer.WMS.Post=OpenLayers.Class(OpenLayers.Layer.WMS,{tileClass:null,unsupportedBrowsers:[\"mozilla\",\"firefox\",\"opera\"],SUPPORTED_TRANSITIONS:[],initialize:function(name,url,params,options){var newArguments=[];newArguments.push(name,url,params,options);OpenLayers.Layer.WMS.prototype.initialize.apply(this,newArguments);this.tileClass=OpenLayers.Util.indexOf(this.unsupportedBrowsers,OpenLayers.Util.getBrowserName())!=-1?OpenLayers.Tile.Image:OpenLayers.Tile.Image.IFrame;},addTile:function(bounds,position){return new this.tileClass(this,position,bounds,null,this.tileSize);},CLASS_NAME:'OpenLayers.Layer.WMS.Post'});OpenLayers.Layer.WMS.Untiled=OpenLayers.Class(OpenLayers.Layer.WMS,{singleTile:true,initialize:function(name,url,params,options){OpenLayers.Layer.WMS.prototype.initialize.apply(this,arguments);var msg=\"The OpenLayers.Layer.WMS.Untiled class is deprecated and \"+\"will be removed in 3.0. Instead, you should use the \"+\"normal OpenLayers.Layer.WMS class, passing it the option \"+\"'singleTile' as true.\";OpenLayers.Console.warn(msg);},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.WMS.Untiled(this.name,this.url,this.params,this.getOptions());}\nobj=OpenLayers.Layer.WMS.prototype.clone.apply(this,[obj]);return obj;},CLASS_NAME:\"OpenLayers.Layer.WMS.Untiled\"});OpenLayers.Strategy.Filter=OpenLayers.Class(OpenLayers.Strategy,{filter:null,cache:null,caching:false,initialize:function(options){OpenLayers.Strategy.prototype.initialize.apply(this,[options]);if(!this.filter||!(this.filter instanceof OpenLayers.Filter)){throw new Error(\"Filter strategy must be constructed with a filter\");}},activate:function(){var activated=OpenLayers.Strategy.prototype.activate.apply(this,arguments);if(activated){this.cache=[];this.layer.events.on({\"beforefeaturesadded\":this.handleAdd,\"beforefeaturesremoved\":this.handleRemove,scope:this});}\nreturn activated;},deactivate:function(){this.cache=null;if(this.layer&&this.layer.events){this.layer.events.un({\"beforefeaturesadded\":this.handleAdd,\"beforefeaturesremoved\":this.handleRemove,scope:this});}\nreturn OpenLayers.Strategy.prototype.deactivate.apply(this,arguments);},handleAdd:function(event){if(!this.caching){var features=event.features;event.features=[];var feature;for(var i=0,ii=features.length;i<ii;++i){feature=features[i];if(this.filter.evaluate(feature)){event.features.push(feature);}else{this.cache.push(feature);}}}},handleRemove:function(event){if(!this.caching){this.cache=[];}},setFilter:function(filter){this.filter=filter;var previousCache=this.cache;this.cache=[];this.handleAdd({features:this.layer.features});if(this.cache.length>0){this.caching=true;this.layer.removeFeatures(this.cache.slice(),{silent:true});this.caching=false;}\nif(previousCache.length>0){var event={features:previousCache};this.handleAdd(event);this.caching=true;this.layer.addFeatures(event.features,{silent:true});this.caching=false;}},CLASS_NAME:\"OpenLayers.Strategy.Filter\"});OpenLayers.Style2=OpenLayers.Class({id:null,name:null,title:null,description:null,layerName:null,isDefault:false,rules:null,initialize:function(config){OpenLayers.Util.extend(this,config);this.id=OpenLayers.Util.createUniqueID(this.CLASS_NAME+\"_\");},destroy:function(){for(var i=0,len=this.rules.length;i<len;i++){this.rules[i].destroy();}\ndelete this.rules;},clone:function(){var config=OpenLayers.Util.extend({},this);if(this.rules){config.rules=[];for(var i=0,len=this.rules.length;i<len;++i){config.rules.push(this.rules[i].clone());}}\nreturn new OpenLayers.Style2(config);},CLASS_NAME:\"OpenLayers.Style2\"});OpenLayers.Control.GetFeature=OpenLayers.Class(OpenLayers.Control,{protocol:null,multipleKey:null,toggleKey:null,modifiers:null,multiple:false,click:true,single:true,clickout:true,toggle:false,clickTolerance:5,hover:false,box:false,maxFeatures:10,features:null,hoverFeature:null,handlerOptions:null,handlers:null,hoverResponse:null,filterType:OpenLayers.Filter.Spatial.BBOX,EVENT_TYPES:[\"featureselected\",\"featuresselected\",\"featureunselected\",\"clickout\",\"beforefeatureselected\",\"beforefeaturesselected\",\"hoverfeature\",\"outfeature\"],initialize:function(options){this.EVENT_TYPES=OpenLayers.Control.GetFeature.prototype.EVENT_TYPES.concat(OpenLayers.Control.prototype.EVENT_TYPES);options.handlerOptions=options.handlerOptions||{};OpenLayers.Control.prototype.initialize.apply(this,[options]);this.features={};this.handlers={};if(this.click){this.handlers.click=new OpenLayers.Handler.Click(this,{click:this.selectClick},this.handlerOptions.click||{});}\nif(this.box){this.handlers.box=new OpenLayers.Handler.Box(this,{done:this.selectBox},OpenLayers.Util.extend(this.handlerOptions.box,{boxDivClassName:\"olHandlerBoxSelectFeature\"}));}\nif(this.hover){this.handlers.hover=new OpenLayers.Handler.Hover(this,{'move':this.cancelHover,'pause':this.selectHover},OpenLayers.Util.extend(this.handlerOptions.hover,{'delay':250}));}},activate:function(){if(!this.active){for(var i in this.handlers){this.handlers[i].activate();}}\nreturn OpenLayers.Control.prototype.activate.apply(this,arguments);},deactivate:function(){if(this.active){for(var i in this.handlers){this.handlers[i].deactivate();}}\nreturn OpenLayers.Control.prototype.deactivate.apply(this,arguments);},selectClick:function(evt){var bounds=this.pixelToBounds(evt.xy);this.setModifiers(evt);this.request(bounds,{single:this.single});},selectBox:function(position){var bounds;if(position instanceof OpenLayers.Bounds){var minXY=this.map.getLonLatFromPixel(new OpenLayers.Pixel(position.left,position.bottom));var maxXY=this.map.getLonLatFromPixel(new OpenLayers.Pixel(position.right,position.top));bounds=new OpenLayers.Bounds(minXY.lon,minXY.lat,maxXY.lon,maxXY.lat);}else{if(this.click){return;}\nbounds=this.pixelToBounds(position);}\nthis.setModifiers(this.handlers.box.dragHandler.evt);this.request(bounds);},selectHover:function(evt){var bounds=this.pixelToBounds(evt.xy);this.request(bounds,{single:true,hover:true});},cancelHover:function(){if(this.hoverResponse){this.protocol.abort(this.hoverResponse);this.hoverResponse=null;OpenLayers.Element.removeClass(this.map.viewPortDiv,\"olCursorWait\");}},request:function(bounds,options){options=options||{};var filter=new OpenLayers.Filter.Spatial({type:this.filterType,value:bounds});OpenLayers.Element.addClass(this.map.viewPortDiv,\"olCursorWait\");var response=this.protocol.read({maxFeatures:options.single==true?this.maxFeatures:undefined,filter:filter,callback:function(result){if(result.success()){if(result.features.length){if(options.single==true){this.selectBestFeature(result.features,bounds.getCenterLonLat(),options);}else{this.select(result.features);}}else if(options.hover){this.hoverSelect();}else{this.events.triggerEvent(\"clickout\");if(this.clickout){this.unselectAll();}}}\nOpenLayers.Element.removeClass(this.map.viewPortDiv,\"olCursorWait\");},scope:this});if(options.hover==true){this.hoverResponse=response;}},selectBestFeature:function(features,clickPosition,options){options=options||{};if(features.length){var point=new OpenLayers.Geometry.Point(clickPosition.lon,clickPosition.lat);var feature,resultFeature,dist;var minDist=Number.MAX_VALUE;for(var i=0;i<features.length;++i){feature=features[i];if(feature.geometry){dist=point.distanceTo(feature.geometry,{edge:false});if(dist<minDist){minDist=dist;resultFeature=feature;if(minDist==0){break;}}}}\nif(options.hover==true){this.hoverSelect(resultFeature);}else{this.select(resultFeature||features);}}},setModifiers:function(evt){this.modifiers={multiple:this.multiple||(this.multipleKey&&evt[this.multipleKey]),toggle:this.toggle||(this.toggleKey&&evt[this.toggleKey])};},select:function(features){if(!this.modifiers.multiple&&!this.modifiers.toggle){this.unselectAll();}\nif(!(features instanceof Array)){features=[features];}\nvar cont=this.events.triggerEvent(\"beforefeaturesselected\",{features:features});if(cont!==false){var selectedFeatures=[];var feature;for(var i=0,len=features.length;i<len;++i){feature=features[i];if(this.features[feature.fid||feature.id]){if(this.modifiers.toggle){this.unselect(this.features[feature.fid||feature.id]);}}else{cont=this.events.triggerEvent(\"beforefeatureselected\",{feature:feature});if(cont!==false){this.features[feature.fid||feature.id]=feature;selectedFeatures.push(feature);this.events.triggerEvent(\"featureselected\",{feature:feature});}}}\nthis.events.triggerEvent(\"featuresselected\",{features:selectedFeatures});}},hoverSelect:function(feature){var fid=feature?feature.fid||feature.id:null;var hfid=this.hoverFeature?this.hoverFeature.fid||this.hoverFeature.id:null;if(hfid&&hfid!=fid){this.events.triggerEvent(\"outfeature\",{feature:this.hoverFeature});this.hoverFeature=null;}\nif(fid&&fid!=hfid){this.events.triggerEvent(\"hoverfeature\",{feature:feature});this.hoverFeature=feature;}},unselect:function(feature){delete this.features[feature.fid||feature.id];this.events.triggerEvent(\"featureunselected\",{feature:feature});},unselectAll:function(){for(var fid in this.features){this.unselect(this.features[fid]);}},setMap:function(map){for(var i in this.handlers){this.handlers[i].setMap(map);}\nOpenLayers.Control.prototype.setMap.apply(this,arguments);},pixelToBounds:function(pixel){var llPx=pixel.add(-this.clickTolerance/2,this.clickTolerance/2);var urPx=pixel.add(this.clickTolerance/2,-this.clickTolerance/2);var ll=this.map.getLonLatFromPixel(llPx);var ur=this.map.getLonLatFromPixel(urPx);return new OpenLayers.Bounds(ll.lon,ll.lat,ur.lon,ur.lat);},CLASS_NAME:\"OpenLayers.Control.GetFeature\"});OpenLayers.Control.Snapping=OpenLayers.Class(OpenLayers.Control,{EVENT_TYPES:[\"beforesnap\",\"snap\",\"unsnap\"],DEFAULTS:{tolerance:10,node:true,edge:true,vertex:true},greedy:true,precedence:[\"node\",\"vertex\",\"edge\"],resolution:null,geoToleranceCache:null,layer:null,feature:null,point:null,initialize:function(options){Array.prototype.push.apply(this.EVENT_TYPES,OpenLayers.Control.prototype.EVENT_TYPES);OpenLayers.Control.prototype.initialize.apply(this,[options]);this.options=options||{};if(this.options.layer){this.setLayer(this.options.layer);}\nvar defaults=OpenLayers.Util.extend({},this.options.defaults);this.defaults=OpenLayers.Util.applyDefaults(defaults,this.DEFAULTS);this.setTargets(this.options.targets);if(this.targets.length===0&&this.layer){this.addTargetLayer(this.layer);}\nthis.geoToleranceCache={};},setLayer:function(layer){if(this.active){this.deactivate();this.layer=layer;this.activate();}else{this.layer=layer;}},setTargets:function(targets){this.targets=[];if(targets&&targets.length){var target;for(var i=0,len=targets.length;i<len;++i){target=targets[i];if(target instanceof OpenLayers.Layer.Vector){this.addTargetLayer(target);}else{this.addTarget(target);}}}},addTargetLayer:function(layer){this.addTarget({layer:layer});},addTarget:function(target){target=OpenLayers.Util.applyDefaults(target,this.defaults);target.nodeTolerance=target.nodeTolerance||target.tolerance;target.vertexTolerance=target.vertexTolerance||target.tolerance;target.edgeTolerance=target.edgeTolerance||target.tolerance;this.targets.push(target);},removeTargetLayer:function(layer){var target;for(var i=this.targets.length-1;i>=0;--i){target=this.targets[i];if(target.layer===layer){this.removeTarget(target);}}},removeTarget:function(target){return OpenLayers.Util.removeItem(this.targets,target);},activate:function(){var activated=OpenLayers.Control.prototype.activate.call(this);if(activated){if(this.layer&&this.layer.events){this.layer.events.on({sketchstarted:this.onSketchModified,sketchmodified:this.onSketchModified,vertexmodified:this.onVertexModified,scope:this});}}\nreturn activated;},deactivate:function(){var deactivated=OpenLayers.Control.prototype.deactivate.call(this);if(deactivated){if(this.layer&&this.layer.events){this.layer.events.un({sketchstarted:this.onSketchModified,sketchmodified:this.onSketchModified,vertexmodified:this.onVertexModified,scope:this});}}\nthis.feature=null;this.point=null;return deactivated;},onSketchModified:function(event){this.feature=event.feature;this.considerSnapping(event.vertex,event.vertex);},onVertexModified:function(event){this.feature=event.feature;var loc=this.layer.map.getLonLatFromViewPortPx(event.pixel);this.considerSnapping(event.vertex,new OpenLayers.Geometry.Point(loc.lon,loc.lat));},considerSnapping:function(point,loc){var best={rank:Number.POSITIVE_INFINITY,dist:Number.POSITIVE_INFINITY,x:null,y:null};var snapped=false;var result,target;for(var i=0,len=this.targets.length;i<len;++i){target=this.targets[i];result=this.testTarget(target,loc);if(result){if(this.greedy){best=result;best.target=target;snapped=true;break;}else{if((result.rank<best.rank)||(result.rank===best.rank&&result.dist<best.dist)){best=result;best.target=target;snapped=true;}}}}\nif(snapped){var proceed=this.events.triggerEvent(\"beforesnap\",{point:point,x:best.x,y:best.y,distance:best.dist,layer:best.target.layer,snapType:this.precedence[best.rank]});if(proceed!==false){point.x=best.x;point.y=best.y;this.point=point;this.events.triggerEvent(\"snap\",{point:point,snapType:this.precedence[best.rank],layer:best.target.layer,distance:best.dist});}else{snapped=false;}}\nif(this.point&&!snapped){point.x=loc.x;point.y=loc.y;this.point=null;this.events.triggerEvent(\"unsnap\",{point:point});}},testTarget:function(target,loc){var tolerance={node:this.getGeoTolerance(target.nodeTolerance),vertex:this.getGeoTolerance(target.vertexTolerance),edge:this.getGeoTolerance(target.edgeTolerance)};var maxTolerance=Math.max(tolerance.node,tolerance.vertex,tolerance.edge);var result={rank:Number.POSITIVE_INFINITY,dist:Number.POSITIVE_INFINITY};var eligible=false;var features=target.layer.features;var feature,type,vertices,vertex,closest,dist,found;var numTypes=this.precedence.length;var ll=new OpenLayers.LonLat(loc.x,loc.y);for(var i=0,len=features.length;i<len;++i){feature=features[i];if(feature!==this.feature&&!feature._sketch&&feature.state!==OpenLayers.State.DELETE&&(!target.filter||target.filter.evaluate(feature.attributes))){if(feature.atPoint(ll,maxTolerance,maxTolerance)){for(var j=0,stop=Math.min(result.rank+1,numTypes);j<stop;++j){type=this.precedence[j];if(target[type]){if(type===\"edge\"){closest=feature.geometry.distanceTo(loc,{details:true});dist=closest.distance;if(dist<=tolerance[type]&&dist<result.dist){result={rank:j,dist:dist,x:closest.x0,y:closest.y0};eligible=true;break;}}else{vertices=feature.geometry.getVertices(type===\"node\");found=false;for(var k=0,klen=vertices.length;k<klen;++k){vertex=vertices[k];dist=vertex.distanceTo(loc);if(dist<=tolerance[type]&&(j<result.rank||(j===result.rank&&dist<result.dist))){result={rank:j,dist:dist,x:vertex.x,y:vertex.y};eligible=true;found=true;}}\nif(found){break;}}}}}}}\nreturn eligible?result:null;},getGeoTolerance:function(tolerance){var resolution=this.layer.map.getResolution();if(resolution!==this.resolution){this.resolution=resolution;this.geoToleranceCache={};}\nvar geoTolerance=this.geoToleranceCache[tolerance];if(geoTolerance===undefined){geoTolerance=tolerance*resolution;this.geoToleranceCache[tolerance]=geoTolerance;}\nreturn geoTolerance;},destroy:function(){if(this.active){this.deactivate();}\ndelete this.layer;delete this.targets;OpenLayers.Control.prototype.destroy.call(this);},CLASS_NAME:\"OpenLayers.Control.Snapping\"});OpenLayers.Format.Filter=OpenLayers.Class(OpenLayers.Format.XML,{defaultVersion:\"1.0.0\",version:null,parser:null,initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);},write:function(filter,options){var version=(options&&options.version)||this.version||this.defaultVersion;if(!this.parser||this.parser.VERSION!=version){var format=OpenLayers.Format.Filter[\"v\"+version.replace(/\\./g,\"_\")];if(!format){throw\"Can't find a Filter parser for version \"+\nversion;}\nthis.parser=new format(this.options);}\nreturn this.parser.write(filter);},read:function(data){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nvar version=this.version;if(!version){version=this.defaultVersion;}\nif(!this.parser||this.parser.VERSION!=version){var format=OpenLayers.Format.Filter[\"v\"+version.replace(/\\./g,\"_\")];if(!format){throw\"Can't find a Filter parser for version \"+\nversion;}\nthis.parser=new format(this.options);}\nvar filter=this.parser.read(data);return filter;},CLASS_NAME:\"OpenLayers.Format.Filter\"});OpenLayers.Format.SLD=OpenLayers.Class(OpenLayers.Format.XML,{defaultVersion:\"1.0.0\",version:null,namedLayersAsArray:false,parser:null,initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);},write:function(sld,options){var version=(options&&options.version)||this.version||this.defaultVersion;if(!this.parser||this.parser.VERSION!=version){var format=OpenLayers.Format.SLD[\"v\"+version.replace(/\\./g,\"_\")];if(!format){throw\"Can't find a SLD parser for version \"+\nversion;}\nthis.parser=new format(this.options);}\nvar root=this.parser.write(sld);return OpenLayers.Format.XML.prototype.write.apply(this,[root]);},read:function(data,options){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nvar root=data.documentElement;var version=this.version;if(!version){version=root.getAttribute(\"version\");if(!version){version=this.defaultVersion;}}\nif(!this.parser||this.parser.VERSION!=version){var format=OpenLayers.Format.SLD[\"v\"+version.replace(/\\./g,\"_\")];if(!format){throw\"Can't find a SLD parser for version \"+\nversion;}\nthis.parser=new format(this.options);}\nvar sld=this.parser.read(data,options);return sld;},CLASS_NAME:\"OpenLayers.Format.SLD\"});OpenLayers.Format.Text=OpenLayers.Class(OpenLayers.Format,{defaultStyle:null,extractStyles:true,initialize:function(options){options=options||{};if(options.extractStyles!==false){options.defaultStyle={'externalGraphic':OpenLayers.Util.getImagesLocation()+\"marker.png\",'graphicWidth':21,'graphicHeight':25,'graphicXOffset':-10.5,'graphicYOffset':-12.5};}\nOpenLayers.Format.prototype.initialize.apply(this,[options]);},read:function(text){var lines=text.split('\\n');var columns;var features=[];for(var lcv=0;lcv<(lines.length-1);lcv++){var currLine=lines[lcv].replace(/^\\s*/,'').replace(/\\s*$/,'');if(currLine.charAt(0)!='#'){if(!columns){columns=currLine.split('\\t');}else{var vals=currLine.split('\\t');var geometry=new OpenLayers.Geometry.Point(0,0);var attributes={};var style=this.defaultStyle?OpenLayers.Util.applyDefaults({},this.defaultStyle):null;var icon,iconSize,iconOffset,overflow;var set=false;for(var valIndex=0;valIndex<vals.length;valIndex++){if(vals[valIndex]){if(columns[valIndex]=='point'){var coords=vals[valIndex].split(',');geometry.y=parseFloat(coords[0]);geometry.x=parseFloat(coords[1]);set=true;}else if(columns[valIndex]=='lat'){geometry.y=parseFloat(vals[valIndex]);set=true;}else if(columns[valIndex]=='lon'){geometry.x=parseFloat(vals[valIndex]);set=true;}else if(columns[valIndex]=='title')\nattributes['title']=vals[valIndex];else if(columns[valIndex]=='image'||columns[valIndex]=='icon'&&style){style['externalGraphic']=vals[valIndex];}else if(columns[valIndex]=='iconSize'&&style){var size=vals[valIndex].split(',');style['graphicWidth']=parseFloat(size[0]);style['graphicHeight']=parseFloat(size[1]);}else if(columns[valIndex]=='iconOffset'&&style){var offset=vals[valIndex].split(',');style['graphicXOffset']=parseFloat(offset[0]);style['graphicYOffset']=parseFloat(offset[1]);}else if(columns[valIndex]=='description'){attributes['description']=vals[valIndex];}else if(columns[valIndex]=='overflow'){attributes['overflow']=vals[valIndex];}else{attributes[columns[valIndex]]=vals[valIndex];}}}\nif(set){if(this.internalProjection&&this.externalProjection){geometry.transform(this.externalProjection,this.internalProjection);}\nvar feature=new OpenLayers.Feature.Vector(geometry,attributes,style);features.push(feature);}}}}\nreturn features;},CLASS_NAME:\"OpenLayers.Format.Text\"});OpenLayers.Geometry.MultiPoint=OpenLayers.Class(OpenLayers.Geometry.Collection,{componentTypes:[\"OpenLayers.Geometry.Point\"],initialize:function(components){OpenLayers.Geometry.Collection.prototype.initialize.apply(this,arguments);},addPoint:function(point,index){this.addComponent(point,index);},removePoint:function(point){this.removeComponent(point);},CLASS_NAME:\"OpenLayers.Geometry.MultiPoint\"});OpenLayers.Handler.Point=OpenLayers.Class(OpenLayers.Handler,{point:null,layer:null,multi:false,drawing:false,mouseDown:false,lastDown:null,lastUp:null,persist:false,layerOptions:null,initialize:function(control,callbacks,options){if(!(options&&options.layerOptions&&options.layerOptions.styleMap)){this.style=OpenLayers.Util.extend(OpenLayers.Feature.Vector.style['default'],{});}\nOpenLayers.Handler.prototype.initialize.apply(this,arguments);},activate:function(){if(!OpenLayers.Handler.prototype.activate.apply(this,arguments)){return false;}\nvar options=OpenLayers.Util.extend({displayInLayerSwitcher:false,calculateInRange:OpenLayers.Function.True},this.layerOptions);this.layer=new OpenLayers.Layer.Vector(this.CLASS_NAME,options);this.map.addLayer(this.layer);return true;},createFeature:function(pixel){var lonlat=this.map.getLonLatFromPixel(pixel);this.point=new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(lonlat.lon,lonlat.lat));this.callback(\"create\",[this.point.geometry,this.point]);this.point.geometry.clearBounds();this.layer.addFeatures([this.point],{silent:true});},deactivate:function(){if(!OpenLayers.Handler.prototype.deactivate.apply(this,arguments)){return false;}\nif(this.drawing){this.cancel();}\nthis.destroyFeature();if(this.layer.map!=null){this.layer.destroy(false);}\nthis.layer=null;return true;},destroyFeature:function(){if(this.layer){this.layer.destroyFeatures();}\nthis.point=null;},finalize:function(cancel){var key=cancel?\"cancel\":\"done\";this.drawing=false;this.mouseDown=false;this.lastDown=null;this.lastUp=null;this.callback(key,[this.geometryClone()]);if(cancel||!this.persist){this.destroyFeature();}},cancel:function(){this.finalize(true);},click:function(evt){OpenLayers.Event.stop(evt);return false;},dblclick:function(evt){OpenLayers.Event.stop(evt);return false;},modifyFeature:function(pixel){var lonlat=this.map.getLonLatFromPixel(pixel);this.point.geometry.x=lonlat.lon;this.point.geometry.y=lonlat.lat;this.callback(\"modify\",[this.point.geometry,this.point]);this.point.geometry.clearBounds();this.drawFeature();},drawFeature:function(){this.layer.drawFeature(this.point,this.style);},getGeometry:function(){var geometry=this.point&&this.point.geometry;if(geometry&&this.multi){geometry=new OpenLayers.Geometry.MultiPoint([geometry]);}\nreturn geometry;},geometryClone:function(){var geom=this.getGeometry();return geom&&geom.clone();},mousedown:function(evt){if(!this.checkModifiers(evt)){return true;}\nif(this.lastDown&&this.lastDown.equals(evt.xy)){return true;}\nthis.drawing=true;if(this.lastDown==null){if(this.persist){this.destroyFeature();}\nthis.createFeature(evt.xy);}else{this.modifyFeature(evt.xy);}\nthis.lastDown=evt.xy;return false;},mousemove:function(evt){if(this.drawing){this.modifyFeature(evt.xy);}\nreturn true;},mouseup:function(evt){if(this.drawing){this.finalize();return false;}else{return true;}},CLASS_NAME:\"OpenLayers.Handler.Point\"});OpenLayers.Layer.GML=OpenLayers.Class(OpenLayers.Layer.Vector,{loaded:false,format:null,formatOptions:null,initialize:function(name,url,options){var newArguments=[];newArguments.push(name,options);OpenLayers.Layer.Vector.prototype.initialize.apply(this,newArguments);this.url=url;},setVisibility:function(visibility,noEvent){OpenLayers.Layer.Vector.prototype.setVisibility.apply(this,arguments);if(this.visibility&&!this.loaded){this.loadGML();}},moveTo:function(bounds,zoomChanged,minor){OpenLayers.Layer.Vector.prototype.moveTo.apply(this,arguments);if(this.visibility&&!this.loaded){this.loadGML();}},loadGML:function(){if(!this.loaded){this.events.triggerEvent(\"loadstart\");OpenLayers.Request.GET({url:this.url,success:this.requestSuccess,failure:this.requestFailure,scope:this});this.loaded=true;}},setUrl:function(url){this.url=url;this.destroyFeatures();this.loaded=false;this.loadGML();},requestSuccess:function(request){var doc=request.responseXML;if(!doc||!doc.documentElement){doc=request.responseText;}\nvar options={};OpenLayers.Util.extend(options,this.formatOptions);if(this.map&&!this.projection.equals(this.map.getProjectionObject())){options.externalProjection=this.projection;options.internalProjection=this.map.getProjectionObject();}\nvar gml=this.format?new this.format(options):new OpenLayers.Format.GML(options);this.addFeatures(gml.read(doc));this.events.triggerEvent(\"loadend\");},requestFailure:function(request){OpenLayers.Console.userError(OpenLayers.i18n(\"errorLoadingGML\",{'url':this.url}));this.events.triggerEvent(\"loadend\");},CLASS_NAME:\"OpenLayers.Layer.GML\"});OpenLayers.Layer.PointTrack=OpenLayers.Class(OpenLayers.Layer.Vector,{dataFrom:null,initialize:function(name,options){OpenLayers.Layer.Vector.prototype.initialize.apply(this,arguments);},addNodes:function(pointFeatures){if(pointFeatures.length<2){OpenLayers.Console.error(\"At least two point features have to be added to create\"+\"a line from\");return;}\nvar lines=new Array(pointFeatures.length-1);var pointFeature,startPoint,endPoint;for(var i=0,len=pointFeatures.length;i<len;i++){pointFeature=pointFeatures[i];endPoint=pointFeature.geometry;if(!endPoint){var lonlat=pointFeature.lonlat;endPoint=new OpenLayers.Geometry.Point(lonlat.lon,lonlat.lat);}else if(endPoint.CLASS_NAME!=\"OpenLayers.Geometry.Point\"){OpenLayers.Console.error(\"Only features with point geometries are supported.\");return;}\nif(i>0){var attributes=(this.dataFrom!=null)?(pointFeatures[i+this.dataFrom].data||pointFeatures[i+this.dataFrom].attributes):null;var line=new OpenLayers.Geometry.LineString([startPoint,endPoint]);lines[i-1]=new OpenLayers.Feature.Vector(line,attributes);}\nstartPoint=endPoint;}\nthis.addFeatures(lines);},CLASS_NAME:\"OpenLayers.Layer.PointTrack\"});OpenLayers.Layer.PointTrack.dataFrom={'SOURCE_NODE':-1,'TARGET_NODE':0};OpenLayers.Layer.Vector.RootContainer=OpenLayers.Class(OpenLayers.Layer.Vector,{displayInLayerSwitcher:false,layers:null,initialize:function(name,options){OpenLayers.Layer.Vector.prototype.initialize.apply(this,arguments);},display:function(){},getFeatureFromEvent:function(evt){var layers=this.layers;var feature;for(var i=0;i<layers.length;i++){feature=layers[i].getFeatureFromEvent(evt);if(feature){return feature;}}},setMap:function(map){OpenLayers.Layer.Vector.prototype.setMap.apply(this,arguments);this.collectRoots();map.events.register(\"changelayer\",this,this.handleChangeLayer);},removeMap:function(map){map.events.unregister(\"changelayer\",this,this.handleChangeLayer);this.resetRoots();OpenLayers.Layer.Vector.prototype.removeMap.apply(this,arguments);},collectRoots:function(){var layer;for(var i=0;i<this.map.layers.length;++i){layer=this.map.layers[i];if(OpenLayers.Util.indexOf(this.layers,layer)!=-1){layer.renderer.moveRoot(this.renderer);}}},resetRoots:function(){var layer;for(var i=0;i<this.layers.length;++i){layer=this.layers[i];if(this.renderer&&layer.renderer.getRenderLayerId()==this.id){this.renderer.moveRoot(layer.renderer);}}},handleChangeLayer:function(evt){var layer=evt.layer;if(evt.property==\"order\"&&OpenLayers.Util.indexOf(this.layers,layer)!=-1){this.resetRoots();this.collectRoots();}},CLASS_NAME:\"OpenLayers.Layer.Vector.RootContainer\"});OpenLayers.Layer.WFS=OpenLayers.Class(OpenLayers.Layer.Vector,OpenLayers.Layer.Markers,{isBaseLayer:false,tile:null,ratio:2,DEFAULT_PARAMS:{service:\"WFS\",version:\"1.0.0\",request:\"GetFeature\"},featureClass:null,format:null,formatObject:null,formatOptions:null,vectorMode:true,encodeBBOX:false,extractAttributes:false,initialize:function(name,url,params,options){if(options==undefined){options={};}\nif(options.featureClass||!OpenLayers.Layer.Vector||!OpenLayers.Feature.Vector){this.vectorMode=false;}\nparams=OpenLayers.Util.upperCaseObject(params);OpenLayers.Util.extend(options,{'reportError':false});var newArguments=[];newArguments.push(name,options);OpenLayers.Layer.Vector.prototype.initialize.apply(this,newArguments);if(!this.renderer||!this.vectorMode){this.vectorMode=false;if(!options.featureClass){options.featureClass=OpenLayers.Feature.WFS;}\nOpenLayers.Layer.Markers.prototype.initialize.apply(this,newArguments);}\nif(this.params&&this.params.typename&&!this.options.typename){this.options.typename=this.params.typename;}\nif(!this.options.geometry_column){this.options.geometry_column=\"the_geom\";}\nthis.params=OpenLayers.Util.applyDefaults(params,OpenLayers.Util.upperCaseObject(this.DEFAULT_PARAMS));this.url=url;},destroy:function(){if(this.vectorMode){OpenLayers.Layer.Vector.prototype.destroy.apply(this,arguments);}else{OpenLayers.Layer.Markers.prototype.destroy.apply(this,arguments);}\nif(this.tile){this.tile.destroy();}\nthis.tile=null;this.ratio=null;this.featureClass=null;this.format=null;if(this.formatObject&&this.formatObject.destroy){this.formatObject.destroy();}\nthis.formatObject=null;this.formatOptions=null;this.vectorMode=null;this.encodeBBOX=null;this.extractAttributes=null;},setMap:function(map){if(this.vectorMode){OpenLayers.Layer.Vector.prototype.setMap.apply(this,arguments);var options={'extractAttributes':this.extractAttributes};OpenLayers.Util.extend(options,this.formatOptions);if(this.map&&!this.projection.equals(this.map.getProjectionObject())){options.externalProjection=this.projection;options.internalProjection=this.map.getProjectionObject();}\nthis.formatObject=this.format?new this.format(options):new OpenLayers.Format.GML(options);}else{OpenLayers.Layer.Markers.prototype.setMap.apply(this,arguments);}},moveTo:function(bounds,zoomChanged,dragging){if(this.vectorMode){OpenLayers.Layer.Vector.prototype.moveTo.apply(this,arguments);}else{OpenLayers.Layer.Markers.prototype.moveTo.apply(this,arguments);}\nif(dragging){return false;}\nif(zoomChanged){if(this.vectorMode){this.renderer.clear();}}\nif(this.options.minZoomLevel){OpenLayers.Console.warn(OpenLayers.i18n('minZoomLevelError'));if(this.map.getZoom()<this.options.minZoomLevel){return null;}}\nif(bounds==null){bounds=this.map.getExtent();}\nvar firstRendering=(this.tile==null);var outOfBounds=(!firstRendering&&!this.tile.bounds.containsBounds(bounds));if(zoomChanged||firstRendering||(!dragging&&outOfBounds)){var center=bounds.getCenterLonLat();var tileWidth=bounds.getWidth()*this.ratio;var tileHeight=bounds.getHeight()*this.ratio;var tileBounds=new OpenLayers.Bounds(center.lon-(tileWidth/2),center.lat-(tileHeight/2),center.lon+(tileWidth/2),center.lat+(tileHeight/2));var tileSize=this.map.getSize();tileSize.w=tileSize.w*this.ratio;tileSize.h=tileSize.h*this.ratio;var ul=new OpenLayers.LonLat(tileBounds.left,tileBounds.top);var pos=this.map.getLayerPxFromLonLat(ul);var url=this.getFullRequestString();var params=null;var filter=this.params.filter||this.params.FILTER;if(filter){params={FILTER:filter};}\nelse{params={BBOX:this.encodeBBOX?tileBounds.toBBOX():tileBounds.toArray()};}\nif(this.map&&!this.projection.equals(this.map.getProjectionObject())){var projectedBounds=tileBounds.clone();projectedBounds.transform(this.map.getProjectionObject(),this.projection);if(!filter){params.BBOX=this.encodeBBOX?projectedBounds.toBBOX():projectedBounds.toArray();}}\nurl+=\"&\"+OpenLayers.Util.getParameterString(params);if(!this.tile){this.tile=new OpenLayers.Tile.WFS(this,pos,tileBounds,url,tileSize);this.addTileMonitoringHooks(this.tile);this.tile.draw();}else{if(this.vectorMode){this.destroyFeatures();this.renderer.clear();}else{this.clearMarkers();}\nthis.removeTileMonitoringHooks(this.tile);this.tile.destroy();this.tile=null;this.tile=new OpenLayers.Tile.WFS(this,pos,tileBounds,url,tileSize);this.addTileMonitoringHooks(this.tile);this.tile.draw();}}},addTileMonitoringHooks:function(tile){tile.onLoadStart=function(){if(this==this.layer.tile){this.layer.events.triggerEvent(\"loadstart\");}};tile.events.register(\"loadstart\",tile,tile.onLoadStart);tile.onLoadEnd=function(){if(this==this.layer.tile){this.layer.events.triggerEvent(\"tileloaded\");this.layer.events.triggerEvent(\"loadend\");}};tile.events.register(\"loadend\",tile,tile.onLoadEnd);tile.events.register(\"unload\",tile,tile.onLoadEnd);},removeTileMonitoringHooks:function(tile){tile.unload();tile.events.un({\"loadstart\":tile.onLoadStart,\"loadend\":tile.onLoadEnd,\"unload\":tile.onLoadEnd,scope:tile});},onMapResize:function(){if(this.vectorMode){OpenLayers.Layer.Vector.prototype.onMapResize.apply(this,arguments);}else{OpenLayers.Layer.Markers.prototype.onMapResize.apply(this,arguments);}},display:function(){if(this.vectorMode){OpenLayers.Layer.Vector.prototype.display.apply(this,arguments);}else{OpenLayers.Layer.Markers.prototype.display.apply(this,arguments);}},mergeNewParams:function(newParams){var upperParams=OpenLayers.Util.upperCaseObject(newParams);var newArguments=[upperParams];return OpenLayers.Layer.HTTPRequest.prototype.mergeNewParams.apply(this,newArguments);},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.WFS(this.name,this.url,this.params,this.getOptions());}\nif(this.vectorMode){obj=OpenLayers.Layer.Vector.prototype.clone.apply(this,[obj]);}else{obj=OpenLayers.Layer.Markers.prototype.clone.apply(this,[obj]);}\nreturn obj;},getFullRequestString:function(newParams,altUrl){var projectionCode=this.projection.getCode()||this.map.getProjection();this.params.SRS=(projectionCode==\"none\")?null:projectionCode;return OpenLayers.Layer.Grid.prototype.getFullRequestString.apply(this,arguments);},commit:function(){if(!this.writer){var options={};if(this.map&&!this.projection.equals(this.map.getProjectionObject())){options.externalProjection=this.projection;options.internalProjection=this.map.getProjectionObject();}\nthis.writer=new OpenLayers.Format.WFS(options,this);}\nvar data=this.writer.write(this.features);OpenLayers.Request.POST({url:this.url,data:data,success:this.commitSuccess,failure:this.commitFailure,scope:this});},commitSuccess:function(request){var response=request.responseText;if(response.indexOf('SUCCESS')!=-1){this.commitReport(OpenLayers.i18n(\"commitSuccess\",{'response':response}));for(var i=0;i<this.features.length;i++){this.features[i].state=null;}}else if(response.indexOf('FAILED')!=-1||response.indexOf('Exception')!=-1){this.commitReport(OpenLayers.i18n(\"commitFailed\",{'response':response}));}},commitFailure:function(request){},commitReport:function(string,response){OpenLayers.Console.userError(string);},refresh:function(){if(this.tile){if(this.vectorMode){this.renderer.clear();this.features.length=0;}else{this.clearMarkers();this.markers.length=0;}\nthis.tile.draw();}},getDataExtent:function(){var extent;if(this.vectorMode){extent=OpenLayers.Layer.Vector.prototype.getDataExtent.apply(this);}else{extent=OpenLayers.Layer.Markers.prototype.getDataExtent.apply(this);}\nreturn extent;},setOpacity:function(opacity){if(this.vectorMode){OpenLayers.Layer.Vector.prototype.setOpacity.apply(this,[opacity]);}else{OpenLayers.Layer.Markers.prototype.setOpacity.apply(this,[opacity]);}},CLASS_NAME:\"OpenLayers.Layer.WFS\"});OpenLayers.Protocol.HTTP=OpenLayers.Class(OpenLayers.Protocol,{url:null,headers:null,params:null,callback:null,scope:null,readWithPOST:false,wildcarded:false,initialize:function(options){options=options||{};this.params={};this.headers={};OpenLayers.Protocol.prototype.initialize.apply(this,arguments);},destroy:function(){this.params=null;this.headers=null;OpenLayers.Protocol.prototype.destroy.apply(this);},read:function(options){OpenLayers.Protocol.prototype.read.apply(this,arguments);options=OpenLayers.Util.applyDefaults(options,this.options);options.params=OpenLayers.Util.applyDefaults(options.params,this.options.params);if(options.filter){options.params=this.filterToParams(options.filter,options.params);}\nvar readWithPOST=(options.readWithPOST!==undefined)?options.readWithPOST:this.readWithPOST;var resp=new OpenLayers.Protocol.Response({requestType:\"read\"});if(readWithPOST){resp.priv=OpenLayers.Request.POST({url:options.url,callback:this.createCallback(this.handleRead,resp,options),data:OpenLayers.Util.getParameterString(options.params),headers:{\"Content-Type\":\"application/x-www-form-urlencoded\"}});}else{resp.priv=OpenLayers.Request.GET({url:options.url,callback:this.createCallback(this.handleRead,resp,options),params:options.params,headers:options.headers});}\nreturn resp;},handleRead:function(resp,options){this.handleResponse(resp,options);},filterToParams:function(filter,params){params=params||{};var className=filter.CLASS_NAME;var filterType=className.substring(className.lastIndexOf(\".\")+1);switch(filterType){case\"Spatial\":switch(filter.type){case OpenLayers.Filter.Spatial.BBOX:params.bbox=filter.value.toArray();break;case OpenLayers.Filter.Spatial.DWITHIN:params.tolerance=filter.distance;case OpenLayers.Filter.Spatial.WITHIN:params.lon=filter.value.x;params.lat=filter.value.y;break;default:OpenLayers.Console.warn(\"Unknown spatial filter type \"+filter.type);}\nbreak;case\"Comparison\":var op=OpenLayers.Protocol.HTTP.COMP_TYPE_TO_OP_STR[filter.type];if(op!==undefined){var value=filter.value;if(filter.type==OpenLayers.Filter.Comparison.LIKE){value=this.regex2value(value);if(this.wildcarded){value=\"%\"+value+\"%\";}}\nparams[filter.property+\"__\"+op]=value;params.queryable=params.queryable||[];params.queryable.push(filter.property);}else{OpenLayers.Console.warn(\"Unknown comparison filter type \"+filter.type);}\nbreak;case\"Logical\":if(filter.type===OpenLayers.Filter.Logical.AND){for(var i=0,len=filter.filters.length;i<len;i++){params=this.filterToParams(filter.filters[i],params);}}else{OpenLayers.Console.warn(\"Unsupported logical filter type \"+filter.type);}\nbreak;default:OpenLayers.Console.warn(\"Unknown filter type \"+filterType);}\nreturn params;},regex2value:function(value){value=value.replace(/%/g,\"\\\\%\");value=value.replace(/\\\\\\\\\\.(\\*)?/g,function($0,$1){return $1?$0:\"\\\\\\\\_\";});value=value.replace(/\\\\\\\\\\.\\*/g,\"\\\\\\\\%\");value=value.replace(/(\\\\)?\\.(\\*)?/g,function($0,$1,$2){return $1||$2?$0:\"_\";});value=value.replace(/(\\\\)?\\.\\*/g,function($0,$1){return $1?$0:\"%\";});value=value.replace(/\\\\\\./g,\".\");value=value.replace(/(\\\\)?\\\\\\*/g,function($0,$1){return $1?$0:\"*\";});return value;},create:function(features,options){options=OpenLayers.Util.applyDefaults(options,this.options);var resp=new OpenLayers.Protocol.Response({reqFeatures:features,requestType:\"create\"});resp.priv=OpenLayers.Request.POST({url:options.url,callback:this.createCallback(this.handleCreate,resp,options),headers:options.headers,data:this.format.write(features)});return resp;},handleCreate:function(resp,options){this.handleResponse(resp,options);},update:function(feature,options){options=options||{};var url=options.url||feature.url||this.options.url+\"/\"+feature.fid;options=OpenLayers.Util.applyDefaults(options,this.options);var resp=new OpenLayers.Protocol.Response({reqFeatures:feature,requestType:\"update\"});resp.priv=OpenLayers.Request.PUT({url:url,callback:this.createCallback(this.handleUpdate,resp,options),headers:options.headers,data:this.format.write(feature)});return resp;},handleUpdate:function(resp,options){this.handleResponse(resp,options);},\"delete\":function(feature,options){options=options||{};var url=options.url||feature.url||this.options.url+\"/\"+feature.fid;options=OpenLayers.Util.applyDefaults(options,this.options);var resp=new OpenLayers.Protocol.Response({reqFeatures:feature,requestType:\"delete\"});resp.priv=OpenLayers.Request.DELETE({url:url,callback:this.createCallback(this.handleDelete,resp,options),headers:options.headers});return resp;},handleDelete:function(resp,options){this.handleResponse(resp,options);},handleResponse:function(resp,options){var request=resp.priv;if(options.callback){if(request.status>=200&&request.status<300){if(resp.requestType!=\"delete\"){resp.features=this.parseFeatures(request);}\nresp.code=OpenLayers.Protocol.Response.SUCCESS;}else{resp.code=OpenLayers.Protocol.Response.FAILURE;}\noptions.callback.call(options.scope,resp);}},parseFeatures:function(request){var doc=request.responseXML;if(!doc||!doc.documentElement){doc=request.responseText;}\nif(!doc||doc.length<=0){return null;}\nreturn this.format.read(doc);},commit:function(features,options){options=OpenLayers.Util.applyDefaults(options,this.options);var resp=[],nResponses=0;var types={};types[OpenLayers.State.INSERT]=[];types[OpenLayers.State.UPDATE]=[];types[OpenLayers.State.DELETE]=[];var feature,list,requestFeatures=[];for(var i=0,len=features.length;i<len;++i){feature=features[i];list=types[feature.state];if(list){list.push(feature);requestFeatures.push(feature);}}\nvar nRequests=(types[OpenLayers.State.INSERT].length>0?1:0)+\ntypes[OpenLayers.State.UPDATE].length+\ntypes[OpenLayers.State.DELETE].length;var success=true;var finalResponse=new OpenLayers.Protocol.Response({reqFeatures:requestFeatures});function insertCallback(response){var len=response.features?response.features.length:0;var fids=new Array(len);for(var i=0;i<len;++i){fids[i]=response.features[i].fid;}\nfinalResponse.insertIds=fids;callback.apply(this,[response]);}\nfunction callback(response){this.callUserCallback(response,options);success=success&&response.success();nResponses++;if(nResponses>=nRequests){if(options.callback){finalResponse.code=success?OpenLayers.Protocol.Response.SUCCESS:OpenLayers.Protocol.Response.FAILURE;options.callback.apply(options.scope,[finalResponse]);}}}\nvar queue=types[OpenLayers.State.INSERT];if(queue.length>0){resp.push(this.create(queue,OpenLayers.Util.applyDefaults({callback:insertCallback,scope:this},options.create)));}\nqueue=types[OpenLayers.State.UPDATE];for(var i=queue.length-1;i>=0;--i){resp.push(this.update(queue[i],OpenLayers.Util.applyDefaults({callback:callback,scope:this},options.update)));}\nqueue=types[OpenLayers.State.DELETE];for(var i=queue.length-1;i>=0;--i){resp.push(this[\"delete\"](queue[i],OpenLayers.Util.applyDefaults({callback:callback,scope:this},options[\"delete\"])));}\nreturn resp;},abort:function(response){if(response){response.priv.abort();}},callUserCallback:function(resp,options){var opt=options[resp.requestType];if(opt&&opt.callback){opt.callback.call(opt.scope,resp);}},CLASS_NAME:\"OpenLayers.Protocol.HTTP\"});(function(){var o=OpenLayers.Protocol.HTTP.COMP_TYPE_TO_OP_STR={};o[OpenLayers.Filter.Comparison.EQUAL_TO]=\"eq\";o[OpenLayers.Filter.Comparison.NOT_EQUAL_TO]=\"ne\";o[OpenLayers.Filter.Comparison.LESS_THAN]=\"lt\";o[OpenLayers.Filter.Comparison.LESS_THAN_OR_EQUAL_TO]=\"lte\";o[OpenLayers.Filter.Comparison.GREATER_THAN]=\"gt\";o[OpenLayers.Filter.Comparison.GREATER_THAN_OR_EQUAL_TO]=\"gte\";o[OpenLayers.Filter.Comparison.LIKE]=\"ilike\";})();OpenLayers.Strategy.BBOX=OpenLayers.Class(OpenLayers.Strategy,{bounds:null,resolution:null,ratio:2,resFactor:null,response:null,initialize:function(options){OpenLayers.Strategy.prototype.initialize.apply(this,[options]);},activate:function(){var activated=OpenLayers.Strategy.prototype.activate.call(this);if(activated){this.layer.events.on({\"moveend\":this.update,scope:this});this.layer.events.on({\"refresh\":this.update,scope:this});}\nreturn activated;},deactivate:function(){var deactivated=OpenLayers.Strategy.prototype.deactivate.call(this);if(deactivated){this.layer.events.un({\"moveend\":this.update,scope:this});this.layer.events.un({\"refresh\":this.update,scope:this});}\nreturn deactivated;},update:function(options){var mapBounds=this.getMapBounds();if((options&&options.force)||this.invalidBounds(mapBounds)){this.calculateBounds(mapBounds);this.resolution=this.layer.map.getResolution();this.triggerRead();}},getMapBounds:function(){var bounds=this.layer.map.getExtent();if(!this.layer.projection.equals(this.layer.map.getProjectionObject())){bounds=bounds.clone().transform(this.layer.map.getProjectionObject(),this.layer.projection);}\nreturn bounds;},invalidBounds:function(mapBounds){if(!mapBounds){mapBounds=this.getMapBounds();}\nvar invalid=!this.bounds||!this.bounds.containsBounds(mapBounds);if(!invalid&&this.resFactor){var ratio=this.resolution/this.layer.map.getResolution();invalid=(ratio>=this.resFactor||ratio<=(1/this.resFactor));}\nreturn invalid;},calculateBounds:function(mapBounds){if(!mapBounds){mapBounds=this.getMapBounds();}\nvar center=mapBounds.getCenterLonLat();var dataWidth=mapBounds.getWidth()*this.ratio;var dataHeight=mapBounds.getHeight()*this.ratio;this.bounds=new OpenLayers.Bounds(center.lon-(dataWidth/2),center.lat-(dataHeight/2),center.lon+(dataWidth/2),center.lat+(dataHeight/2));},triggerRead:function(){if(this.response){this.layer.protocol.abort(this.response);this.layer.events.triggerEvent(\"loadend\");}\nthis.layer.events.triggerEvent(\"loadstart\");this.response=this.layer.protocol.read({filter:this.createFilter(),callback:this.merge,scope:this});},createFilter:function(){var filter=new OpenLayers.Filter.Spatial({type:OpenLayers.Filter.Spatial.BBOX,value:this.bounds,projection:this.layer.projection});if(this.layer.filter){filter=new OpenLayers.Filter.Logical({type:OpenLayers.Filter.Logical.AND,filters:[this.layer.filter,filter]});}\nreturn filter;},merge:function(resp){this.layer.destroyFeatures();var features=resp.features;if(features&&features.length>0){var remote=this.layer.projection;var local=this.layer.map.getProjectionObject();if(!local.equals(remote)){var geom;for(var i=0,len=features.length;i<len;++i){geom=features[i].geometry;if(geom){geom.transform(remote,local);}}}\nthis.layer.addFeatures(features);}\nthis.response=null;this.layer.events.triggerEvent(\"loadend\");},CLASS_NAME:\"OpenLayers.Strategy.BBOX\"});OpenLayers.Control.SelectFeature=OpenLayers.Class(OpenLayers.Control,{EVENT_TYPES:[\"beforefeaturehighlighted\",\"featurehighlighted\",\"featureunhighlighted\"],multipleKey:null,toggleKey:null,multiple:false,clickout:true,toggle:false,hover:false,highlightOnly:false,box:false,onBeforeSelect:function(){},onSelect:function(){},onUnselect:function(){},scope:null,geometryTypes:null,layer:null,layers:null,callbacks:null,selectStyle:null,renderIntent:\"select\",handlers:null,initialize:function(layers,options){this.EVENT_TYPES=OpenLayers.Control.SelectFeature.prototype.EVENT_TYPES.concat(OpenLayers.Control.prototype.EVENT_TYPES);OpenLayers.Control.prototype.initialize.apply(this,[options]);if(this.scope===null){this.scope=this;}\nthis.initLayer(layers);var callbacks={click:this.clickFeature,clickout:this.clickoutFeature};if(this.hover){callbacks.over=this.overFeature;callbacks.out=this.outFeature;}\nthis.callbacks=OpenLayers.Util.extend(callbacks,this.callbacks);this.handlers={feature:new OpenLayers.Handler.Feature(this,this.layer,this.callbacks,{geometryTypes:this.geometryTypes})};if(this.box){this.handlers.box=new OpenLayers.Handler.Box(this,{done:this.selectBox},{boxDivClassName:\"olHandlerBoxSelectFeature\"});}},initLayer:function(layers){if(layers instanceof Array){this.layers=layers;this.layer=new OpenLayers.Layer.Vector.RootContainer(this.id+\"_container\",{layers:layers});}else{this.layer=layers;}},destroy:function(){if(this.active&&this.layers){this.map.removeLayer(this.layer);}\nOpenLayers.Control.prototype.destroy.apply(this,arguments);if(this.layers){this.layer.destroy();}},activate:function(){if(!this.active){if(this.layers){this.map.addLayer(this.layer);}\nthis.handlers.feature.activate();if(this.box&&this.handlers.box){this.handlers.box.activate();}}\nreturn OpenLayers.Control.prototype.activate.apply(this,arguments);},deactivate:function(){if(this.active){this.handlers.feature.deactivate();if(this.handlers.box){this.handlers.box.deactivate();}\nif(this.layers){this.map.removeLayer(this.layer);}}\nreturn OpenLayers.Control.prototype.deactivate.apply(this,arguments);},unselectAll:function(options){var layers=this.layers||[this.layer];var layer,feature;for(var l=0;l<layers.length;++l){layer=layers[l];for(var i=layer.selectedFeatures.length-1;i>=0;--i){feature=layer.selectedFeatures[i];if(!options||options.except!=feature){this.unselect(feature);}}}},clickFeature:function(feature){if(!this.hover){var selected=(OpenLayers.Util.indexOf(feature.layer.selectedFeatures,feature)>-1);if(selected){if(this.toggleSelect()){this.unselect(feature);}else if(!this.multipleSelect()){this.unselectAll({except:feature});}}else{if(!this.multipleSelect()){this.unselectAll({except:feature});}\nthis.select(feature);}}},multipleSelect:function(){return this.multiple||(this.handlers.feature.evt&&this.handlers.feature.evt[this.multipleKey]);},toggleSelect:function(){return this.toggle||(this.handlers.feature.evt&&this.handlers.feature.evt[this.toggleKey]);},clickoutFeature:function(feature){if(!this.hover&&this.clickout){this.unselectAll();}},overFeature:function(feature){var layer=feature.layer;if(this.hover){if(this.highlightOnly){this.highlight(feature);}else if(OpenLayers.Util.indexOf(layer.selectedFeatures,feature)==-1){this.select(feature);}}},outFeature:function(feature){if(this.hover){if(this.highlightOnly){if(feature._lastHighlighter==this.id){if(feature._prevHighlighter&&feature._prevHighlighter!=this.id){delete feature._lastHighlighter;var control=this.map.getControl(feature._prevHighlighter);if(control){control.highlight(feature);}}else{this.unhighlight(feature);}}}else{this.unselect(feature);}}},highlight:function(feature){var layer=feature.layer;var cont=this.events.triggerEvent(\"beforefeaturehighlighted\",{feature:feature});if(cont!==false){feature._prevHighlighter=feature._lastHighlighter;feature._lastHighlighter=this.id;var style=this.selectStyle||this.renderIntent;layer.drawFeature(feature,style);this.events.triggerEvent(\"featurehighlighted\",{feature:feature});}},unhighlight:function(feature){var layer=feature.layer;feature._lastHighlighter=feature._prevHighlighter;delete feature._prevHighlighter;layer.drawFeature(feature,feature.style||feature.layer.style||\"default\");this.events.triggerEvent(\"featureunhighlighted\",{feature:feature});},select:function(feature){var cont=this.onBeforeSelect.call(this.scope,feature);var layer=feature.layer;if(cont!==false){cont=layer.events.triggerEvent(\"beforefeatureselected\",{feature:feature});if(cont!==false){layer.selectedFeatures.push(feature);this.highlight(feature);if(!this.handlers.feature.lastFeature){this.handlers.feature.lastFeature=layer.selectedFeatures[0];}\nlayer.events.triggerEvent(\"featureselected\",{feature:feature});this.onSelect.call(this.scope,feature);}}},unselect:function(feature){var layer=feature.layer;this.unhighlight(feature);OpenLayers.Util.removeItem(layer.selectedFeatures,feature);layer.events.triggerEvent(\"featureunselected\",{feature:feature});this.onUnselect.call(this.scope,feature);},selectBox:function(position){if(position instanceof OpenLayers.Bounds){var minXY=this.map.getLonLatFromPixel(new OpenLayers.Pixel(position.left,position.bottom));var maxXY=this.map.getLonLatFromPixel(new OpenLayers.Pixel(position.right,position.top));var bounds=new OpenLayers.Bounds(minXY.lon,minXY.lat,maxXY.lon,maxXY.lat);if(!this.multipleSelect()){this.unselectAll();}\nvar prevMultiple=this.multiple;this.multiple=true;var layers=this.layers||[this.layer];var layer;for(var l=0;l<layers.length;++l){layer=layers[l];for(var i=0,len=layer.features.length;i<len;++i){var feature=layer.features[i];if(!feature.getVisibility()){continue;}\nif(this.geometryTypes==null||OpenLayers.Util.indexOf(this.geometryTypes,feature.geometry.CLASS_NAME)>-1){if(bounds.toGeometry().intersects(feature.geometry)){if(OpenLayers.Util.indexOf(layer.selectedFeatures,feature)==-1){this.select(feature);}}}}}\nthis.multiple=prevMultiple;}},setMap:function(map){this.handlers.feature.setMap(map);if(this.box){this.handlers.box.setMap(map);}\nOpenLayers.Control.prototype.setMap.apply(this,arguments);},setLayer:function(layers){var isActive=this.active;this.unselectAll();this.deactivate();if(this.layers){this.layer.destroy();this.layers=null;}\nthis.initLayer(layers);this.handlers.feature.layer=this.layer;if(isActive){this.activate();}},CLASS_NAME:\"OpenLayers.Control.SelectFeature\"});OpenLayers.Format.Filter.v1=OpenLayers.Class(OpenLayers.Format.XML,{namespaces:{ogc:\"http://www.opengis.net/ogc\",gml:\"http://www.opengis.net/gml\",xlink:\"http://www.w3.org/1999/xlink\",xsi:\"http://www.w3.org/2001/XMLSchema-instance\"},defaultPrefix:\"ogc\",schemaLocation:null,initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);},read:function(data){var obj={};this.readers.ogc[\"Filter\"].apply(this,[data,obj]);return obj.filter;},readers:{\"ogc\":{\"Filter\":function(node,parent){var obj={fids:[],filters:[]};this.readChildNodes(node,obj);if(obj.fids.length>0){parent.filter=new OpenLayers.Filter.FeatureId({fids:obj.fids});}else if(obj.filters.length>0){parent.filter=obj.filters[0];}},\"FeatureId\":function(node,obj){var fid=node.getAttribute(\"fid\");if(fid){obj.fids.push(fid);}},\"And\":function(node,obj){var filter=new OpenLayers.Filter.Logical({type:OpenLayers.Filter.Logical.AND});this.readChildNodes(node,filter);obj.filters.push(filter);},\"Or\":function(node,obj){var filter=new OpenLayers.Filter.Logical({type:OpenLayers.Filter.Logical.OR});this.readChildNodes(node,filter);obj.filters.push(filter);},\"Not\":function(node,obj){var filter=new OpenLayers.Filter.Logical({type:OpenLayers.Filter.Logical.NOT});this.readChildNodes(node,filter);obj.filters.push(filter);},\"PropertyIsLessThan\":function(node,obj){var filter=new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.LESS_THAN});this.readChildNodes(node,filter);obj.filters.push(filter);},\"PropertyIsGreaterThan\":function(node,obj){var filter=new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.GREATER_THAN});this.readChildNodes(node,filter);obj.filters.push(filter);},\"PropertyIsLessThanOrEqualTo\":function(node,obj){var filter=new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.LESS_THAN_OR_EQUAL_TO});this.readChildNodes(node,filter);obj.filters.push(filter);},\"PropertyIsGreaterThanOrEqualTo\":function(node,obj){var filter=new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.GREATER_THAN_OR_EQUAL_TO});this.readChildNodes(node,filter);obj.filters.push(filter);},\"PropertyIsBetween\":function(node,obj){var filter=new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.BETWEEN});this.readChildNodes(node,filter);obj.filters.push(filter);},\"Literal\":function(node,obj){obj.value=OpenLayers.String.numericIf(this.getChildValue(node));},\"PropertyName\":function(node,filter){filter.property=this.getChildValue(node);},\"LowerBoundary\":function(node,filter){filter.lowerBoundary=OpenLayers.String.numericIf(this.readOgcExpression(node));},\"UpperBoundary\":function(node,filter){filter.upperBoundary=OpenLayers.String.numericIf(this.readOgcExpression(node));},\"Intersects\":function(node,obj){this.readSpatial(node,obj,OpenLayers.Filter.Spatial.INTERSECTS);},\"Within\":function(node,obj){this.readSpatial(node,obj,OpenLayers.Filter.Spatial.WITHIN);},\"Contains\":function(node,obj){this.readSpatial(node,obj,OpenLayers.Filter.Spatial.CONTAINS);},\"DWithin\":function(node,obj){this.readSpatial(node,obj,OpenLayers.Filter.Spatial.DWITHIN);},\"Distance\":function(node,obj){obj.distance=parseInt(this.getChildValue(node));obj.distanceUnits=node.getAttribute(\"units\");}}},readSpatial:function(node,obj,type){var filter=new OpenLayers.Filter.Spatial({type:type});this.readChildNodes(node,filter);filter.value=filter.components[0];delete filter.components;obj.filters.push(filter);},readOgcExpression:function(node){var obj={};this.readChildNodes(node,obj);var value=obj.value;if(value===undefined){value=this.getChildValue(node);}\nreturn value;},write:function(filter){return this.writers.ogc[\"Filter\"].apply(this,[filter]);},writers:{\"ogc\":{\"Filter\":function(filter){var node=this.createElementNSPlus(\"ogc:Filter\");var sub=filter.CLASS_NAME.split(\".\").pop();if(sub==\"FeatureId\"){for(var i=0;i<filter.fids.length;++i){this.writeNode(\"FeatureId\",filter.fids[i],node);}}else{this.writeNode(this.getFilterType(filter),filter,node);}\nreturn node;},\"FeatureId\":function(fid){return this.createElementNSPlus(\"ogc:FeatureId\",{attributes:{fid:fid}});},\"And\":function(filter){var node=this.createElementNSPlus(\"ogc:And\");var childFilter;for(var i=0;i<filter.filters.length;++i){childFilter=filter.filters[i];this.writeNode(this.getFilterType(childFilter),childFilter,node);}\nreturn node;},\"Or\":function(filter){var node=this.createElementNSPlus(\"ogc:Or\");var childFilter;for(var i=0;i<filter.filters.length;++i){childFilter=filter.filters[i];this.writeNode(this.getFilterType(childFilter),childFilter,node);}\nreturn node;},\"Not\":function(filter){var node=this.createElementNSPlus(\"ogc:Not\");var childFilter=filter.filters[0];this.writeNode(this.getFilterType(childFilter),childFilter,node);return node;},\"PropertyIsLessThan\":function(filter){var node=this.createElementNSPlus(\"ogc:PropertyIsLessThan\");this.writeNode(\"PropertyName\",filter,node);this.writeNode(\"Literal\",filter.value,node);return node;},\"PropertyIsGreaterThan\":function(filter){var node=this.createElementNSPlus(\"ogc:PropertyIsGreaterThan\");this.writeNode(\"PropertyName\",filter,node);this.writeNode(\"Literal\",filter.value,node);return node;},\"PropertyIsLessThanOrEqualTo\":function(filter){var node=this.createElementNSPlus(\"ogc:PropertyIsLessThanOrEqualTo\");this.writeNode(\"PropertyName\",filter,node);this.writeNode(\"Literal\",filter.value,node);return node;},\"PropertyIsGreaterThanOrEqualTo\":function(filter){var node=this.createElementNSPlus(\"ogc:PropertyIsGreaterThanOrEqualTo\");this.writeNode(\"PropertyName\",filter,node);this.writeNode(\"Literal\",filter.value,node);return node;},\"PropertyIsBetween\":function(filter){var node=this.createElementNSPlus(\"ogc:PropertyIsBetween\");this.writeNode(\"PropertyName\",filter,node);this.writeNode(\"LowerBoundary\",filter,node);this.writeNode(\"UpperBoundary\",filter,node);return node;},\"PropertyName\":function(filter){return this.createElementNSPlus(\"ogc:PropertyName\",{value:filter.property});},\"Literal\":function(value){return this.createElementNSPlus(\"ogc:Literal\",{value:value});},\"LowerBoundary\":function(filter){var node=this.createElementNSPlus(\"ogc:LowerBoundary\");this.writeNode(\"Literal\",filter.lowerBoundary,node);return node;},\"UpperBoundary\":function(filter){var node=this.createElementNSPlus(\"ogc:UpperBoundary\");this.writeNode(\"Literal\",filter.upperBoundary,node);return node;},\"INTERSECTS\":function(filter){return this.writeSpatial(filter,\"Intersects\");},\"WITHIN\":function(filter){return this.writeSpatial(filter,\"Within\");},\"CONTAINS\":function(filter){return this.writeSpatial(filter,\"Contains\");},\"DWITHIN\":function(filter){var node=this.writeSpatial(filter,\"DWithin\");this.writeNode(\"Distance\",filter,node);return node;},\"Distance\":function(filter){return this.createElementNSPlus(\"ogc:Distance\",{attributes:{units:filter.distanceUnits},value:filter.distance});}}},getFilterType:function(filter){var filterType=this.filterMap[filter.type];if(!filterType){throw\"Filter writing not supported for rule type: \"+filter.type;}\nreturn filterType;},filterMap:{\"&&\":\"And\",\"||\":\"Or\",\"!\":\"Not\",\"==\":\"PropertyIsEqualTo\",\"!=\":\"PropertyIsNotEqualTo\",\"<\":\"PropertyIsLessThan\",\">\":\"PropertyIsGreaterThan\",\"<=\":\"PropertyIsLessThanOrEqualTo\",\">=\":\"PropertyIsGreaterThanOrEqualTo\",\"..\":\"PropertyIsBetween\",\"~\":\"PropertyIsLike\",\"BBOX\":\"BBOX\",\"DWITHIN\":\"DWITHIN\",\"WITHIN\":\"WITHIN\",\"CONTAINS\":\"CONTAINS\",\"INTERSECTS\":\"INTERSECTS\"},CLASS_NAME:\"OpenLayers.Format.Filter.v1\"});OpenLayers.Geometry.Curve=OpenLayers.Class(OpenLayers.Geometry.MultiPoint,{componentTypes:[\"OpenLayers.Geometry.Point\"],initialize:function(points){OpenLayers.Geometry.MultiPoint.prototype.initialize.apply(this,arguments);},getLength:function(){var length=0.0;if(this.components&&(this.components.length>1)){for(var i=1,len=this.components.length;i<len;i++){length+=this.components[i-1].distanceTo(this.components[i]);}}\nreturn length;},getGeodesicLength:function(projection){var geom=this;if(projection){var gg=new OpenLayers.Projection(\"EPSG:4326\");if(!gg.equals(projection)){geom=this.clone().transform(projection,gg);}}\nvar length=0.0;if(geom.components&&(geom.components.length>1)){var p1,p2;for(var i=1,len=geom.components.length;i<len;i++){p1=geom.components[i-1];p2=geom.components[i];length+=OpenLayers.Util.distVincenty({lon:p1.x,lat:p1.y},{lon:p2.x,lat:p2.y});}}\nreturn length*1000;},CLASS_NAME:\"OpenLayers.Geometry.Curve\"});OpenLayers.Layer.Text=OpenLayers.Class(OpenLayers.Layer.Markers,{location:null,features:null,formatOptions:null,selectedFeature:null,initialize:function(name,options){OpenLayers.Layer.Markers.prototype.initialize.apply(this,arguments);this.features=new Array();},destroy:function(){OpenLayers.Layer.Markers.prototype.destroy.apply(this,arguments);this.clearFeatures();this.features=null;},loadText:function(){if(!this.loaded){if(this.location!=null){var onFail=function(e){this.events.triggerEvent(\"loadend\");};this.events.triggerEvent(\"loadstart\");OpenLayers.Request.GET({url:this.location,success:this.parseData,failure:onFail,scope:this});this.loaded=true;}}},moveTo:function(bounds,zoomChanged,minor){OpenLayers.Layer.Markers.prototype.moveTo.apply(this,arguments);if(this.visibility&&!this.loaded){this.loadText();}},parseData:function(ajaxRequest){var text=ajaxRequest.responseText;var options={};OpenLayers.Util.extend(options,this.formatOptions);if(this.map&&!this.projection.equals(this.map.getProjectionObject())){options.externalProjection=this.projection;options.internalProjection=this.map.getProjectionObject();}\nvar parser=new OpenLayers.Format.Text(options);var features=parser.read(text);for(var i=0,len=features.length;i<len;i++){var data={};var feature=features[i];var location;var iconSize,iconOffset;location=new OpenLayers.LonLat(feature.geometry.x,feature.geometry.y);if(feature.style.graphicWidth&&feature.style.graphicHeight){iconSize=new OpenLayers.Size(feature.style.graphicWidth,feature.style.graphicHeight);}\nif(feature.style.graphicXOffset!==undefined&&feature.style.graphicYOffset!==undefined){iconOffset=new OpenLayers.Pixel(feature.style.graphicXOffset,feature.style.graphicYOffset);}\nif(feature.style.externalGraphic!=null){data.icon=new OpenLayers.Icon(feature.style.externalGraphic,iconSize,iconOffset);}else{data.icon=OpenLayers.Marker.defaultIcon();if(iconSize!=null){data.icon.setSize(iconSize);}}\nif((feature.attributes.title!=null)&&(feature.attributes.description!=null)){data['popupContentHTML']='<h2>'+feature.attributes.title+'</h2>'+'<p>'+feature.attributes.description+'</p>';}\ndata['overflow']=feature.attributes.overflow||\"auto\";var markerFeature=new OpenLayers.Feature(this,location,data);this.features.push(markerFeature);var marker=markerFeature.createMarker();if((feature.attributes.title!=null)&&(feature.attributes.description!=null)){marker.events.register('click',markerFeature,this.markerClick);}\nthis.addMarker(marker);}\nthis.events.triggerEvent(\"loadend\");},markerClick:function(evt){var sameMarkerClicked=(this==this.layer.selectedFeature);this.layer.selectedFeature=(!sameMarkerClicked)?this:null;for(var i=0,len=this.layer.map.popups.length;i<len;i++){this.layer.map.removePopup(this.layer.map.popups[i]);}\nif(!sameMarkerClicked){this.layer.map.addPopup(this.createPopup());}\nOpenLayers.Event.stop(evt);},clearFeatures:function(){if(this.features!=null){while(this.features.length>0){var feature=this.features[0];OpenLayers.Util.removeItem(this.features,feature);feature.destroy();}}},CLASS_NAME:\"OpenLayers.Layer.Text\"});OpenLayers.Control.ModifyFeature=OpenLayers.Class(OpenLayers.Control,{geometryTypes:null,clickout:true,toggle:true,standalone:false,layer:null,feature:null,vertices:null,virtualVertices:null,selectControl:null,dragControl:null,handlers:null,deleteCodes:null,virtualStyle:null,mode:null,modified:false,radiusHandle:null,dragHandle:null,onModificationStart:function(){},onModification:function(){},onModificationEnd:function(){},initialize:function(layer,options){this.layer=layer;this.vertices=[];this.virtualVertices=[];this.virtualStyle=OpenLayers.Util.extend({},this.layer.style||this.layer.styleMap.createSymbolizer());this.virtualStyle.fillOpacity=0.3;this.virtualStyle.strokeOpacity=0.3;this.deleteCodes=[46,68];this.mode=OpenLayers.Control.ModifyFeature.RESHAPE;OpenLayers.Control.prototype.initialize.apply(this,[options]);if(!(this.deleteCodes instanceof Array)){this.deleteCodes=[this.deleteCodes];}\nvar control=this;var selectOptions={geometryTypes:this.geometryTypes,clickout:this.clickout,toggle:this.toggle,onBeforeSelect:this.beforeSelectFeature,onSelect:this.selectFeature,onUnselect:this.unselectFeature,scope:this};if(this.standalone===false){this.selectControl=new OpenLayers.Control.SelectFeature(layer,selectOptions);}\nvar dragOptions={geometryTypes:[\"OpenLayers.Geometry.Point\"],snappingOptions:this.snappingOptions,onStart:function(feature,pixel){control.dragStart.apply(control,[feature,pixel]);},onDrag:function(feature,pixel){control.dragVertex.apply(control,[feature,pixel]);},onComplete:function(feature){control.dragComplete.apply(control,[feature]);},featureCallbacks:{over:function(feature){if(control.standalone!==true||feature._sketch||control.feature===feature){control.dragControl.overFeature.apply(control.dragControl,[feature]);}}}};this.dragControl=new OpenLayers.Control.DragFeature(layer,dragOptions);var keyboardOptions={keydown:this.handleKeypress};this.handlers={keyboard:new OpenLayers.Handler.Keyboard(this,keyboardOptions)};},destroy:function(){this.layer=null;this.standalone||this.selectControl.destroy();this.dragControl.destroy();OpenLayers.Control.prototype.destroy.apply(this,[]);},activate:function(){return((this.standalone||this.selectControl.activate())&&this.handlers.keyboard.activate()&&OpenLayers.Control.prototype.activate.apply(this,arguments));},deactivate:function(){var deactivated=false;if(OpenLayers.Control.prototype.deactivate.apply(this,arguments)){this.layer.removeFeatures(this.vertices,{silent:true});this.layer.removeFeatures(this.virtualVertices,{silent:true});this.vertices=[];this.dragControl.deactivate();var feature=this.feature;var valid=feature&&feature.geometry&&feature.layer;if(this.standalone===false){if(valid){this.selectControl.unselect.apply(this.selectControl,[feature]);}\nthis.selectControl.deactivate();}else{if(valid){this.unselectFeature(feature);}}\nthis.handlers.keyboard.deactivate();deactivated=true;}\nreturn deactivated;},beforeSelectFeature:function(feature){return this.layer.events.triggerEvent(\"beforefeaturemodified\",{feature:feature});},selectFeature:function(feature){this.feature=feature;this.modified=false;this.resetVertices();this.dragControl.activate();this.onModificationStart(this.feature);},unselectFeature:function(feature){this.layer.removeFeatures(this.vertices,{silent:true});this.vertices=[];this.layer.destroyFeatures(this.virtualVertices,{silent:true});this.virtualVertices=[];if(this.dragHandle){this.layer.destroyFeatures([this.dragHandle],{silent:true});delete this.dragHandle;}\nif(this.radiusHandle){this.layer.destroyFeatures([this.radiusHandle],{silent:true});delete this.radiusHandle;}\nthis.feature=null;this.dragControl.deactivate();this.onModificationEnd(feature);this.layer.events.triggerEvent(\"afterfeaturemodified\",{feature:feature,modified:this.modified});this.modified=false;},dragStart:function(feature,pixel){if(feature!=this.feature&&!feature.geometry.parent&&feature!=this.dragHandle&&feature!=this.radiusHandle){if(this.standalone===false&&this.feature){this.selectControl.clickFeature.apply(this.selectControl,[this.feature]);}\nif(this.geometryTypes==null||OpenLayers.Util.indexOf(this.geometryTypes,feature.geometry.CLASS_NAME)!=-1){this.standalone||this.selectControl.clickFeature.apply(this.selectControl,[feature]);this.dragControl.overFeature.apply(this.dragControl,[feature]);this.dragControl.lastPixel=pixel;this.dragControl.handlers.drag.started=true;this.dragControl.handlers.drag.start=pixel;this.dragControl.handlers.drag.last=pixel;}}},dragVertex:function(vertex,pixel){this.modified=true;if(this.feature.geometry.CLASS_NAME==\"OpenLayers.Geometry.Point\"){if(this.feature!=vertex){this.feature=vertex;}\nthis.layer.events.triggerEvent(\"vertexmodified\",{vertex:vertex.geometry,feature:this.feature,pixel:pixel});}else{if(vertex._index){vertex.geometry.parent.addComponent(vertex.geometry,vertex._index);delete vertex._index;OpenLayers.Util.removeItem(this.virtualVertices,vertex);this.vertices.push(vertex);}else if(vertex==this.dragHandle){this.layer.removeFeatures(this.vertices,{silent:true});this.vertices=[];if(this.radiusHandle){this.layer.destroyFeatures([this.radiusHandle],{silent:true});this.radiusHandle=null;}}else if(vertex!==this.radiusHandle){this.layer.events.triggerEvent(\"vertexmodified\",{vertex:vertex.geometry,feature:this.feature,pixel:pixel});}\nif(this.virtualVertices.length>0){this.layer.destroyFeatures(this.virtualVertices,{silent:true});this.virtualVertices=[];}\nthis.layer.drawFeature(this.feature,this.standalone?undefined:this.selectControl.renderIntent);}\nthis.layer.drawFeature(vertex);},dragComplete:function(vertex){this.resetVertices();this.setFeatureState();this.onModification(this.feature);this.layer.events.triggerEvent(\"featuremodified\",{feature:this.feature});},setFeatureState:function(){if(this.feature.state!=OpenLayers.State.INSERT&&this.feature.state!=OpenLayers.State.DELETE){this.feature.state=OpenLayers.State.UPDATE;}},resetVertices:function(){if(this.dragControl.feature){this.dragControl.outFeature(this.dragControl.feature);}\nif(this.vertices.length>0){this.layer.removeFeatures(this.vertices,{silent:true});this.vertices=[];}\nif(this.virtualVertices.length>0){this.layer.removeFeatures(this.virtualVertices,{silent:true});this.virtualVertices=[];}\nif(this.dragHandle){this.layer.destroyFeatures([this.dragHandle],{silent:true});this.dragHandle=null;}\nif(this.radiusHandle){this.layer.destroyFeatures([this.radiusHandle],{silent:true});this.radiusHandle=null;}\nif(this.feature&&this.feature.geometry.CLASS_NAME!=\"OpenLayers.Geometry.Point\"){if((this.mode&OpenLayers.Control.ModifyFeature.DRAG)){this.collectDragHandle();}\nif((this.mode&(OpenLayers.Control.ModifyFeature.ROTATE|OpenLayers.Control.ModifyFeature.RESIZE))){this.collectRadiusHandle();}\nif(this.mode&OpenLayers.Control.ModifyFeature.RESHAPE){if(!(this.mode&OpenLayers.Control.ModifyFeature.RESIZE)){this.collectVertices();}}}},handleKeypress:function(evt){var code=evt.keyCode;if(this.feature&&OpenLayers.Util.indexOf(this.deleteCodes,code)!=-1){var vertex=this.dragControl.feature;if(vertex&&OpenLayers.Util.indexOf(this.vertices,vertex)!=-1&&!this.dragControl.handlers.drag.dragging&&vertex.geometry.parent){vertex.geometry.parent.removeComponent(vertex.geometry);this.layer.drawFeature(this.feature,this.standalone?undefined:this.selectControl.renderIntent);this.resetVertices();this.setFeatureState();this.onModification(this.feature);this.layer.events.triggerEvent(\"featuremodified\",{feature:this.feature});}}},collectVertices:function(){this.vertices=[];this.virtualVertices=[];var control=this;function collectComponentVertices(geometry){var i,vertex,component,len;if(geometry.CLASS_NAME==\"OpenLayers.Geometry.Point\"){vertex=new OpenLayers.Feature.Vector(geometry);vertex._sketch=true;control.vertices.push(vertex);}else{var numVert=geometry.components.length;if(geometry.CLASS_NAME==\"OpenLayers.Geometry.LinearRing\"){numVert-=1;}\nfor(i=0;i<numVert;++i){component=geometry.components[i];if(component.CLASS_NAME==\"OpenLayers.Geometry.Point\"){vertex=new OpenLayers.Feature.Vector(component);vertex._sketch=true;control.vertices.push(vertex);}else{collectComponentVertices(component);}}\nif(geometry.CLASS_NAME!=\"OpenLayers.Geometry.MultiPoint\"){for(i=0,len=geometry.components.length;i<len-1;++i){var prevVertex=geometry.components[i];var nextVertex=geometry.components[i+1];if(prevVertex.CLASS_NAME==\"OpenLayers.Geometry.Point\"&&nextVertex.CLASS_NAME==\"OpenLayers.Geometry.Point\"){var x=(prevVertex.x+nextVertex.x)/2;var y=(prevVertex.y+nextVertex.y)/2;var point=new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(x,y),null,control.virtualStyle);point.geometry.parent=geometry;point._index=i+1;point._sketch=true;control.virtualVertices.push(point);}}}}}\ncollectComponentVertices.call(this,this.feature.geometry);this.layer.addFeatures(this.virtualVertices,{silent:true});this.layer.addFeatures(this.vertices,{silent:true});},collectDragHandle:function(){var geometry=this.feature.geometry;var center=geometry.getBounds().getCenterLonLat();var originGeometry=new OpenLayers.Geometry.Point(center.lon,center.lat);var origin=new OpenLayers.Feature.Vector(originGeometry);originGeometry.move=function(x,y){OpenLayers.Geometry.Point.prototype.move.call(this,x,y);geometry.move(x,y);};origin._sketch=true;this.dragHandle=origin;this.layer.addFeatures([this.dragHandle],{silent:true});},collectRadiusHandle:function(){var geometry=this.feature.geometry;var bounds=geometry.getBounds();var center=bounds.getCenterLonLat();var originGeometry=new OpenLayers.Geometry.Point(center.lon,center.lat);var radiusGeometry=new OpenLayers.Geometry.Point(bounds.right,bounds.bottom);var radius=new OpenLayers.Feature.Vector(radiusGeometry);var resize=(this.mode&OpenLayers.Control.ModifyFeature.RESIZE);var reshape=(this.mode&OpenLayers.Control.ModifyFeature.RESHAPE);var rotate=(this.mode&OpenLayers.Control.ModifyFeature.ROTATE);radiusGeometry.move=function(x,y){OpenLayers.Geometry.Point.prototype.move.call(this,x,y);var dx1=this.x-originGeometry.x;var dy1=this.y-originGeometry.y;var dx0=dx1-x;var dy0=dy1-y;if(rotate){var a0=Math.atan2(dy0,dx0);var a1=Math.atan2(dy1,dx1);var angle=a1-a0;angle*=180/Math.PI;geometry.rotate(angle,originGeometry);}\nif(resize){var scale,ratio;if(reshape){scale=dy1/dy0;ratio=(dx1/dx0)/scale;}else{var l0=Math.sqrt((dx0*dx0)+(dy0*dy0));var l1=Math.sqrt((dx1*dx1)+(dy1*dy1));scale=l1/l0;}\ngeometry.resize(scale,originGeometry,ratio);}};radius._sketch=true;this.radiusHandle=radius;this.layer.addFeatures([this.radiusHandle],{silent:true});},setMap:function(map){this.standalone||this.selectControl.setMap(map);this.dragControl.setMap(map);OpenLayers.Control.prototype.setMap.apply(this,arguments);},CLASS_NAME:\"OpenLayers.Control.ModifyFeature\"});OpenLayers.Control.ModifyFeature.RESHAPE=1;OpenLayers.Control.ModifyFeature.RESIZE=2;OpenLayers.Control.ModifyFeature.ROTATE=4;OpenLayers.Control.ModifyFeature.DRAG=8;OpenLayers.Geometry.LineString=OpenLayers.Class(OpenLayers.Geometry.Curve,{initialize:function(points){OpenLayers.Geometry.Curve.prototype.initialize.apply(this,arguments);},removeComponent:function(point){if(this.components&&(this.components.length>2)){OpenLayers.Geometry.Collection.prototype.removeComponent.apply(this,arguments);}},intersects:function(geometry){var intersect=false;var type=geometry.CLASS_NAME;if(type==\"OpenLayers.Geometry.LineString\"||type==\"OpenLayers.Geometry.LinearRing\"||type==\"OpenLayers.Geometry.Point\"){var segs1=this.getSortedSegments();var segs2;if(type==\"OpenLayers.Geometry.Point\"){segs2=[{x1:geometry.x,y1:geometry.y,x2:geometry.x,y2:geometry.y}];}else{segs2=geometry.getSortedSegments();}\nvar seg1,seg1x1,seg1x2,seg1y1,seg1y2,seg2,seg2y1,seg2y2;outer:for(var i=0,len=segs1.length;i<len;++i){seg1=segs1[i];seg1x1=seg1.x1;seg1x2=seg1.x2;seg1y1=seg1.y1;seg1y2=seg1.y2;inner:for(var j=0,jlen=segs2.length;j<jlen;++j){seg2=segs2[j];if(seg2.x1>seg1x2){break;}\nif(seg2.x2<seg1x1){continue;}\nseg2y1=seg2.y1;seg2y2=seg2.y2;if(Math.min(seg2y1,seg2y2)>Math.max(seg1y1,seg1y2)){continue;}\nif(Math.max(seg2y1,seg2y2)<Math.min(seg1y1,seg1y2)){continue;}\nif(OpenLayers.Geometry.segmentsIntersect(seg1,seg2)){intersect=true;break outer;}}}}else{intersect=geometry.intersects(this);}\nreturn intersect;},getSortedSegments:function(){var numSeg=this.components.length-1;var segments=new Array(numSeg),point1,point2;for(var i=0;i<numSeg;++i){point1=this.components[i];point2=this.components[i+1];if(point1.x<point2.x){segments[i]={x1:point1.x,y1:point1.y,x2:point2.x,y2:point2.y};}else{segments[i]={x1:point2.x,y1:point2.y,x2:point1.x,y2:point1.y};}}\nfunction byX1(seg1,seg2){return seg1.x1-seg2.x1;}\nreturn segments.sort(byX1);},splitWithSegment:function(seg,options){var edge=!(options&&options.edge===false);var tolerance=options&&options.tolerance;var lines=[];var verts=this.getVertices();var points=[];var intersections=[];var split=false;var vert1,vert2,point;var node,vertex,target;var interOptions={point:true,tolerance:tolerance};var result=null;for(var i=0,stop=verts.length-2;i<=stop;++i){vert1=verts[i];points.push(vert1.clone());vert2=verts[i+1];target={x1:vert1.x,y1:vert1.y,x2:vert2.x,y2:vert2.y};point=OpenLayers.Geometry.segmentsIntersect(seg,target,interOptions);if(point instanceof OpenLayers.Geometry.Point){if((point.x===seg.x1&&point.y===seg.y1)||(point.x===seg.x2&&point.y===seg.y2)||point.equals(vert1)||point.equals(vert2)){vertex=true;}else{vertex=false;}\nif(vertex||edge){if(!point.equals(intersections[intersections.length-1])){intersections.push(point.clone());}\nif(i===0){if(point.equals(vert1)){continue;}}\nif(point.equals(vert2)){continue;}\nsplit=true;if(!point.equals(vert1)){points.push(point);}\nlines.push(new OpenLayers.Geometry.LineString(points));points=[point.clone()];}}}\nif(split){points.push(vert2.clone());lines.push(new OpenLayers.Geometry.LineString(points));}\nif(intersections.length>0){var xDir=seg.x1<seg.x2?1:-1;var yDir=seg.y1<seg.y2?1:-1;result={lines:lines,points:intersections.sort(function(p1,p2){return(xDir*p1.x-xDir*p2.x)||(yDir*p1.y-yDir*p2.y);})};}\nreturn result;},split:function(target,options){var results=null;var mutual=options&&options.mutual;var sourceSplit,targetSplit,sourceParts,targetParts;if(target instanceof OpenLayers.Geometry.LineString){var verts=this.getVertices();var vert1,vert2,seg,splits,lines,point;var points=[];sourceParts=[];for(var i=0,stop=verts.length-2;i<=stop;++i){vert1=verts[i];vert2=verts[i+1];seg={x1:vert1.x,y1:vert1.y,x2:vert2.x,y2:vert2.y};targetParts=targetParts||[target];if(mutual){points.push(vert1.clone());}\nfor(var j=0;j<targetParts.length;++j){splits=targetParts[j].splitWithSegment(seg,options);if(splits){lines=splits.lines;if(lines.length>0){lines.unshift(j,1);Array.prototype.splice.apply(targetParts,lines);j+=lines.length-2;}\nif(mutual){for(var k=0,len=splits.points.length;k<len;++k){point=splits.points[k];if(!point.equals(vert1)){points.push(point);sourceParts.push(new OpenLayers.Geometry.LineString(points));if(point.equals(vert2)){points=[];}else{points=[point.clone()];}}}}}}}\nif(mutual&&sourceParts.length>0&&points.length>0){points.push(vert2.clone());sourceParts.push(new OpenLayers.Geometry.LineString(points));}}else{results=target.splitWith(this,options);}\nif(targetParts&&targetParts.length>1){targetSplit=true;}else{targetParts=[];}\nif(sourceParts&&sourceParts.length>1){sourceSplit=true;}else{sourceParts=[];}\nif(targetSplit||sourceSplit){if(mutual){results=[sourceParts,targetParts];}else{results=targetParts;}}\nreturn results;},splitWith:function(geometry,options){return geometry.split(this,options);},getVertices:function(nodes){var vertices;if(nodes===true){vertices=[this.components[0],this.components[this.components.length-1]];}else if(nodes===false){vertices=this.components.slice(1,this.components.length-1);}else{vertices=this.components.slice();}\nreturn vertices;},distanceTo:function(geometry,options){var edge=!(options&&options.edge===false);var details=edge&&options&&options.details;var result,best={};var min=Number.POSITIVE_INFINITY;if(geometry instanceof OpenLayers.Geometry.Point){var segs=this.getSortedSegments();var x=geometry.x;var y=geometry.y;var seg;for(var i=0,len=segs.length;i<len;++i){seg=segs[i];result=OpenLayers.Geometry.distanceToSegment(geometry,seg);if(result.distance<min){min=result.distance;best=result;if(min===0){break;}}else{if(seg.x2>x&&((y>seg.y1&&y<seg.y2)||(y<seg.y1&&y>seg.y2))){break;}}}\nif(details){best={distance:best.distance,x0:best.x,y0:best.y,x1:x,y1:y};}else{best=best.distance;}}else if(geometry instanceof OpenLayers.Geometry.LineString){var segs0=this.getSortedSegments();var segs1=geometry.getSortedSegments();var seg0,seg1,intersection,x0,y0;var len1=segs1.length;var interOptions={point:true};outer:for(var i=0,len=segs0.length;i<len;++i){seg0=segs0[i];x0=seg0.x1;y0=seg0.y1;for(var j=0;j<len1;++j){seg1=segs1[j];intersection=OpenLayers.Geometry.segmentsIntersect(seg0,seg1,interOptions);if(intersection){min=0;best={distance:0,x0:intersection.x,y0:intersection.y,x1:intersection.x,y1:intersection.y};break outer;}else{result=OpenLayers.Geometry.distanceToSegment({x:x0,y:y0},seg1);if(result.distance<min){min=result.distance;best={distance:min,x0:x0,y0:y0,x1:result.x,y1:result.y};}}}}\nif(!details){best=best.distance;}\nif(min!==0){if(seg0){result=geometry.distanceTo(new OpenLayers.Geometry.Point(seg0.x2,seg0.y2),options);var dist=details?result.distance:result;if(dist<min){if(details){best={distance:min,x0:result.x1,y0:result.y1,x1:result.x0,y1:result.y0};}else{best=dist;}}}}}else{best=geometry.distanceTo(this,options);if(details){best={distance:best.distance,x0:best.x1,y0:best.y1,x1:best.x0,y1:best.y0};}}\nreturn best;},CLASS_NAME:\"OpenLayers.Geometry.LineString\"});OpenLayers.Control.TransformFeature=OpenLayers.Class(OpenLayers.Control,{EVENT_TYPES:[\"beforesetfeature\",\"setfeature\",\"beforetransform\",\"transform\",\"transformcomplete\"],geometryTypes:null,layer:null,preserveAspectRatio:false,rotate:true,feature:null,renderIntent:\"temporary\",rotationHandleSymbolizer:null,box:null,center:null,scale:1,ratio:1,rotation:0,handles:null,rotationHandles:null,dragControl:null,initialize:function(layer,options){this.EVENT_TYPES=OpenLayers.Control.TransformFeature.prototype.EVENT_TYPES.concat(OpenLayers.Control.prototype.EVENT_TYPES);OpenLayers.Control.prototype.initialize.apply(this,[options]);this.layer=layer;if(!this.rotationHandleSymbolizer){this.rotationHandleSymbolizer={stroke:false,pointRadius:10,fillOpacity:0,cursor:\"pointer\"};}\nthis.createBox();this.createControl();},activate:function(){var activated=false;if(OpenLayers.Control.prototype.activate.apply(this,arguments)){this.dragControl.activate();this.layer.addFeatures([this.box]);this.rotate&&this.layer.addFeatures(this.rotationHandles);this.layer.addFeatures(this.handles);activated=true;}\nreturn activated;},deactivate:function(){var deactivated=false;if(OpenLayers.Control.prototype.deactivate.apply(this,arguments)){this.layer.removeFeatures(this.handles);this.rotate&&this.layer.removeFeatures(this.rotationHandles);this.layer.removeFeatures([this.box]);this.dragControl.deactivate();deactivated=true;}\nreturn deactivated;},setMap:function(map){this.dragControl.setMap(map);OpenLayers.Control.prototype.setMap.apply(this,arguments);},setFeature:function(feature,initialParams){initialParams=OpenLayers.Util.applyDefaults(initialParams,{rotation:0,scale:1,ratio:1});var evt={feature:feature};var oldRotation=this.rotation;var oldCenter=this.center;OpenLayers.Util.extend(this,initialParams);if(this.events.triggerEvent(\"beforesetfeature\",evt)===false){return;}\nthis.feature=feature;this.activate();this._setfeature=true;var featureBounds=this.feature.geometry.getBounds();this.box.move(featureBounds.getCenterLonLat());this.box.geometry.rotate(-oldRotation,oldCenter);this._angle=0;var ll;if(this.rotation){var geom=feature.geometry.clone();geom.rotate(-this.rotation,this.center);var box=new OpenLayers.Feature.Vector(geom.getBounds().toGeometry());box.geometry.rotate(this.rotation,this.center);this.box.geometry.rotate(this.rotation,this.center);this.box.move(box.geometry.getBounds().getCenterLonLat());var llGeom=box.geometry.components[0].components[0];ll=llGeom.getBounds().getCenterLonLat();}else{ll=new OpenLayers.LonLat(featureBounds.left,featureBounds.bottom);}\nthis.handles[0].move(ll);delete this._setfeature;this.events.triggerEvent(\"setfeature\",evt);},createBox:function(){var control=this;this.center=new OpenLayers.Geometry.Point(0,0);var box=new OpenLayers.Feature.Vector(new OpenLayers.Geometry.LineString([new OpenLayers.Geometry.Point(-1,-1),new OpenLayers.Geometry.Point(0,-1),new OpenLayers.Geometry.Point(1,-1),new OpenLayers.Geometry.Point(1,0),new OpenLayers.Geometry.Point(1,1),new OpenLayers.Geometry.Point(0,1),new OpenLayers.Geometry.Point(-1,1),new OpenLayers.Geometry.Point(-1,0),new OpenLayers.Geometry.Point(-1,-1)]),null,typeof this.renderIntent==\"string\"?null:this.renderIntent);box.geometry.move=function(x,y){control._moving=true;OpenLayers.Geometry.LineString.prototype.move.apply(this,arguments);control.center.move(x,y);delete control._moving;};var vertexMoveFn=function(x,y){OpenLayers.Geometry.Point.prototype.move.apply(this,arguments);this._rotationHandle&&this._rotationHandle.geometry.move(x,y);this._handle.geometry.move(x,y);};var vertexResizeFn=function(scale,center,ratio){OpenLayers.Geometry.Point.prototype.resize.apply(this,arguments);this._rotationHandle&&this._rotationHandle.geometry.resize(scale,center,ratio);this._handle.geometry.resize(scale,center,ratio);};var vertexRotateFn=function(angle,center){OpenLayers.Geometry.Point.prototype.rotate.apply(this,arguments);this._rotationHandle&&this._rotationHandle.geometry.rotate(angle,center);this._handle.geometry.rotate(angle,center);};var handleMoveFn=function(x,y){var oldX=this.x,oldY=this.y;OpenLayers.Geometry.Point.prototype.move.call(this,x,y);if(control._moving){return;}\nvar evt=control.dragControl.handlers.drag.evt;var preserveAspectRatio=!control._setfeature&&control.preserveAspectRatio;var reshape=!preserveAspectRatio&&!(evt&&evt.shiftKey);var oldGeom=new OpenLayers.Geometry.Point(oldX,oldY);var centerGeometry=control.center;this.rotate(-control.rotation,centerGeometry);oldGeom.rotate(-control.rotation,centerGeometry);var dx1=this.x-centerGeometry.x;var dy1=this.y-centerGeometry.y;var dx0=dx1-(this.x-oldGeom.x);var dy0=dy1-(this.y-oldGeom.y);this.x=oldX;this.y=oldY;var scale,ratio=1;if(reshape){scale=Math.abs(dy0)<0.00001?1:dy1/dy0;ratio=(Math.abs(dx0)<0.00001?1:(dx1/dx0))/scale;}else{var l0=Math.sqrt((dx0*dx0)+(dy0*dy0));var l1=Math.sqrt((dx1*dx1)+(dy1*dy1));scale=l1/l0;}\ncontrol._moving=true;control.box.geometry.rotate(-control.rotation,centerGeometry);delete control._moving;control.box.geometry.resize(scale,centerGeometry,ratio);control.box.geometry.rotate(control.rotation,centerGeometry);control.transformFeature({scale:scale,ratio:ratio});};var rotationHandleMoveFn=function(x,y){var oldX=this.x,oldY=this.y;OpenLayers.Geometry.Point.prototype.move.call(this,x,y);if(control._moving){return;}\nvar evt=control.dragControl.handlers.drag.evt;var constrain=(evt&&evt.shiftKey)?45:1;var centerGeometry=control.center;var dx1=this.x-centerGeometry.x;var dy1=this.y-centerGeometry.y;var dx0=dx1-x;var dy0=dy1-y;this.x=oldX;this.y=oldY;var a0=Math.atan2(dy0,dx0);var a1=Math.atan2(dy1,dx1);var angle=a1-a0;angle*=180/Math.PI;control._angle=(control._angle+angle)%360;var diff=control.rotation%constrain;if(Math.abs(control._angle)>=constrain||diff!==0){angle=Math.round(control._angle/constrain)*constrain-\ndiff;control._angle=0;control.box.geometry.rotate(angle,centerGeometry);control.transformFeature({rotation:angle});}};var handles=new Array(8);var rotationHandles=new Array(4);var geom,handle,rotationHandle;for(var i=0;i<8;++i){geom=box.geometry.components[i];handle=new OpenLayers.Feature.Vector(geom.clone(),null,typeof this.renderIntent==\"string\"?null:this.renderIntent);if(i%2==0){rotationHandle=new OpenLayers.Feature.Vector(geom.clone(),null,typeof this.rotationHandleSymbolizer==\"string\"?null:this.rotationHandleSymbolizer);rotationHandle.geometry.move=rotationHandleMoveFn;geom._rotationHandle=rotationHandle;rotationHandles[i/2]=rotationHandle;}\ngeom.move=vertexMoveFn;geom.resize=vertexResizeFn;geom.rotate=vertexRotateFn;handle.geometry.move=handleMoveFn;geom._handle=handle;handles[i]=handle;}\nthis.box=box;this.rotationHandles=rotationHandles;this.handles=handles;},createControl:function(){var control=this;this.dragControl=new OpenLayers.Control.DragFeature(this.layer,{documentDrag:true,moveFeature:function(pixel){if(this.feature===control.feature){this.feature=control.box;}\nOpenLayers.Control.DragFeature.prototype.moveFeature.apply(this,arguments);},onDrag:function(feature,pixel){if(feature===control.box){control.transformFeature({center:control.center});control.drawHandles();}},onStart:function(feature,pixel){var eligible=!control.geometryTypes||OpenLayers.Util.indexOf(control.geometryTypes,feature.geometry.CLASS_NAME)!==-1;var i=OpenLayers.Util.indexOf(control.handles,feature);i+=OpenLayers.Util.indexOf(control.rotationHandles,feature);if(feature!==control.feature&&feature!==control.box&&i==-2&&eligible){control.setFeature(feature);}},onComplete:function(feature,pixel){control.events.triggerEvent(\"transformcomplete\",{feature:control.feature});}});},drawHandles:function(){var layer=this.layer;for(var i=0;i<8;++i){if(this.rotate&&i%2===0){layer.drawFeature(this.rotationHandles[i/2],this.rotationHandleSymbolizer);}\nlayer.drawFeature(this.handles[i],this.renderIntent);}},transformFeature:function(mods){if(!this._setfeature){this.scale*=(mods.scale||1);this.ratio*=(mods.ratio||1);var oldRotation=this.rotation;this.rotation=(this.rotation+(mods.rotation||0))%360;if(this.events.triggerEvent(\"beforetransform\",mods)!==false){var feature=this.feature;var geom=feature.geometry;var center=this.center;geom.rotate(-oldRotation,center);if(mods.scale||mods.ratio){geom.resize(mods.scale,center,mods.ratio);}else if(mods.center){feature.move(mods.center.getBounds().getCenterLonLat());}\ngeom.rotate(this.rotation,center);this.layer.drawFeature(feature);feature.toState(OpenLayers.State.UPDATE);this.events.triggerEvent(\"transform\",mods);}}\nthis.layer.drawFeature(this.box,this.renderIntent);this.drawHandles();},destroy:function(){var geom;for(var i=0;i<8;++i){geom=this.box.geometry.components[i];geom._handle.destroy();geom._handle=null;geom._rotationHandle&&geom._rotationHandle.destroy();geom._rotationHandle=null;}\nthis.box.destroy();this.box=null;this.layer=null;this.dragControl.destroy();OpenLayers.Control.prototype.destroy.apply(this,arguments);},CLASS_NAME:\"OpenLayers.Control.TransformFeature\"});OpenLayers.Format.GPX=OpenLayers.Class(OpenLayers.Format.XML,{extractWaypoints:true,extractTracks:true,extractRoutes:true,extractAttributes:true,initialize:function(options){this.externalProjection=new OpenLayers.Projection(\"EPSG:4326\");OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);},read:function(doc){if(typeof doc==\"string\"){doc=OpenLayers.Format.XML.prototype.read.apply(this,[doc]);}\nvar features=[];if(this.extractTracks){var tracks=doc.getElementsByTagName(\"trk\");for(var i=0,len=tracks.length;i<len;i++){var attrs={};if(this.extractAttributes){attrs=this.parseAttributes(tracks[i]);}\nvar segs=this.getElementsByTagNameNS(tracks[i],tracks[i].namespaceURI,\"trkseg\");for(var j=0,seglen=segs.length;j<seglen;j++){var track=this.extractSegment(segs[j],\"trkpt\");features.push(new OpenLayers.Feature.Vector(track,attrs));}}}\nif(this.extractRoutes){var routes=doc.getElementsByTagName(\"rte\");for(var k=0,klen=routes.length;k<klen;k++){var attrs={};if(this.extractAttributes){attrs=this.parseAttributes(routes[k]);}\nvar route=this.extractSegment(routes[k],\"rtept\");features.push(new OpenLayers.Feature.Vector(route,attrs));}}\nif(this.extractWaypoints){var waypoints=doc.getElementsByTagName(\"wpt\");for(var l=0,len=waypoints.length;l<len;l++){var attrs={};if(this.extractAttributes){attrs=this.parseAttributes(waypoints[l]);}\nvar wpt=new OpenLayers.Geometry.Point(waypoints[l].getAttribute(\"lon\"),waypoints[l].getAttribute(\"lat\"));features.push(new OpenLayers.Feature.Vector(wpt,attrs));}}\nif(this.internalProjection&&this.externalProjection){for(var g=0,featLength=features.length;g<featLength;g++){features[g].geometry.transform(this.externalProjection,this.internalProjection);}}\nreturn features;},extractSegment:function(segment,segmentType){var points=this.getElementsByTagNameNS(segment,segment.namespaceURI,segmentType);var point_features=[];for(var i=0,len=points.length;i<len;i++){point_features.push(new OpenLayers.Geometry.Point(points[i].getAttribute(\"lon\"),points[i].getAttribute(\"lat\")));}\nreturn new OpenLayers.Geometry.LineString(point_features);},parseAttributes:function(node){var attributes={};var attrNode=node.firstChild;while(attrNode){if(attrNode.nodeType==1){var value=attrNode.firstChild;if(value.nodeType==3||value.nodeType==4){name=(attrNode.prefix)?attrNode.nodeName.split(\":\")[1]:attrNode.nodeName;if(name!=\"trkseg\"&&name!=\"rtept\"){attributes[name]=value.nodeValue;}}}\nattrNode=attrNode.nextSibling;}\nreturn attributes;},CLASS_NAME:\"OpenLayers.Format.GPX\"});OpenLayers.Geometry.LinearRing=OpenLayers.Class(OpenLayers.Geometry.LineString,{componentTypes:[\"OpenLayers.Geometry.Point\"],initialize:function(points){OpenLayers.Geometry.LineString.prototype.initialize.apply(this,arguments);},addComponent:function(point,index){var added=false;var lastPoint=this.components.pop();if(index!=null||!point.equals(lastPoint)){added=OpenLayers.Geometry.Collection.prototype.addComponent.apply(this,arguments);}\nvar firstPoint=this.components[0];OpenLayers.Geometry.Collection.prototype.addComponent.apply(this,[firstPoint]);return added;},removeComponent:function(point){if(this.components.length>4){this.components.pop();OpenLayers.Geometry.Collection.prototype.removeComponent.apply(this,arguments);var firstPoint=this.components[0];OpenLayers.Geometry.Collection.prototype.addComponent.apply(this,[firstPoint]);}},move:function(x,y){for(var i=0,len=this.components.length;i<len-1;i++){this.components[i].move(x,y);}},rotate:function(angle,origin){for(var i=0,len=this.components.length;i<len-1;++i){this.components[i].rotate(angle,origin);}},resize:function(scale,origin,ratio){for(var i=0,len=this.components.length;i<len-1;++i){this.components[i].resize(scale,origin,ratio);}\nreturn this;},transform:function(source,dest){if(source&&dest){for(var i=0,len=this.components.length;i<len-1;i++){var component=this.components[i];component.transform(source,dest);}\nthis.bounds=null;}\nreturn this;},getCentroid:function(){if(this.components&&(this.components.length>2)){var sumX=0.0;var sumY=0.0;for(var i=0;i<this.components.length-1;i++){var b=this.components[i];var c=this.components[i+1];sumX+=(b.x+c.x)*(b.x*c.y-c.x*b.y);sumY+=(b.y+c.y)*(b.x*c.y-c.x*b.y);}\nvar area=-1*this.getArea();var x=sumX/(6*area);var y=sumY/(6*area);return new OpenLayers.Geometry.Point(x,y);}else{return null;}},getArea:function(){var area=0.0;if(this.components&&(this.components.length>2)){var sum=0.0;for(var i=0,len=this.components.length;i<len-1;i++){var b=this.components[i];var c=this.components[i+1];sum+=(b.x+c.x)*(c.y-b.y);}\narea=-sum/2.0;}\nreturn area;},getGeodesicArea:function(projection){var ring=this;if(projection){var gg=new OpenLayers.Projection(\"EPSG:4326\");if(!gg.equals(projection)){ring=this.clone().transform(projection,gg);}}\nvar area=0.0;var len=ring.components&&ring.components.length;if(len>2){var p1,p2;for(var i=0;i<len-1;i++){p1=ring.components[i];p2=ring.components[i+1];area+=OpenLayers.Util.rad(p2.x-p1.x)*(2+Math.sin(OpenLayers.Util.rad(p1.y))+\nMath.sin(OpenLayers.Util.rad(p2.y)));}\narea=area*6378137.0*6378137.0/2.0;}\nreturn area;},containsPoint:function(point){var approx=OpenLayers.Number.limitSigDigs;var digs=14;var px=approx(point.x,digs);var py=approx(point.y,digs);function getX(y,x1,y1,x2,y2){return(((x1-x2)*y)+((x2*y1)-(x1*y2)))/(y1-y2);}\nvar numSeg=this.components.length-1;var start,end,x1,y1,x2,y2,cx,cy;var crosses=0;for(var i=0;i<numSeg;++i){start=this.components[i];x1=approx(start.x,digs);y1=approx(start.y,digs);end=this.components[i+1];x2=approx(end.x,digs);y2=approx(end.y,digs);if(y1==y2){if(py==y1){if(x1<=x2&&(px>=x1&&px<=x2)||x1>=x2&&(px<=x1&&px>=x2)){crosses=-1;break;}}\ncontinue;}\ncx=approx(getX(py,x1,y1,x2,y2),digs);if(cx==px){if(y1<y2&&(py>=y1&&py<=y2)||y1>y2&&(py<=y1&&py>=y2)){crosses=-1;break;}}\nif(cx<=px){continue;}\nif(x1!=x2&&(cx<Math.min(x1,x2)||cx>Math.max(x1,x2))){continue;}\nif(y1<y2&&(py>=y1&&py<y2)||y1>y2&&(py<y1&&py>=y2)){++crosses;}}\nvar contained=(crosses==-1)?1:!!(crosses&1);return contained;},intersects:function(geometry){var intersect=false;if(geometry.CLASS_NAME==\"OpenLayers.Geometry.Point\"){intersect=this.containsPoint(geometry);}else if(geometry.CLASS_NAME==\"OpenLayers.Geometry.LineString\"){intersect=geometry.intersects(this);}else if(geometry.CLASS_NAME==\"OpenLayers.Geometry.LinearRing\"){intersect=OpenLayers.Geometry.LineString.prototype.intersects.apply(this,[geometry]);}else{for(var i=0,len=geometry.components.length;i<len;++i){intersect=geometry.components[i].intersects(this);if(intersect){break;}}}\nreturn intersect;},getVertices:function(nodes){return(nodes===true)?[]:this.components.slice(0,this.components.length-1);},CLASS_NAME:\"OpenLayers.Geometry.LinearRing\"});OpenLayers.Geometry.MultiLineString=OpenLayers.Class(OpenLayers.Geometry.Collection,{componentTypes:[\"OpenLayers.Geometry.LineString\"],initialize:function(components){OpenLayers.Geometry.Collection.prototype.initialize.apply(this,arguments);},split:function(geometry,options){var results=null;var mutual=options&&options.mutual;var splits,sourceLine,sourceLines,sourceSplit,targetSplit;var sourceParts=[];var targetParts=[geometry];for(var i=0,len=this.components.length;i<len;++i){sourceLine=this.components[i];sourceSplit=false;for(var j=0;j<targetParts.length;++j){splits=sourceLine.split(targetParts[j],options);if(splits){if(mutual){sourceLines=splits[0];for(var k=0,klen=sourceLines.length;k<klen;++k){if(k===0&&sourceParts.length){sourceParts[sourceParts.length-1].addComponent(sourceLines[k]);}else{sourceParts.push(new OpenLayers.Geometry.MultiLineString([sourceLines[k]]));}}\nsourceSplit=true;splits=splits[1];}\nif(splits.length){splits.unshift(j,1);Array.prototype.splice.apply(targetParts,splits);break;}}}\nif(!sourceSplit){if(sourceParts.length){sourceParts[sourceParts.length-1].addComponent(sourceLine.clone());}else{sourceParts=[new OpenLayers.Geometry.MultiLineString(sourceLine.clone())];}}}\nif(sourceParts&&sourceParts.length>1){sourceSplit=true;}else{sourceParts=[];}\nif(targetParts&&targetParts.length>1){targetSplit=true;}else{targetParts=[];}\nif(sourceSplit||targetSplit){if(mutual){results=[sourceParts,targetParts];}else{results=targetParts;}}\nreturn results;},splitWith:function(geometry,options){var results=null;var mutual=options&&options.mutual;var splits,targetLine,sourceLines,sourceSplit,targetSplit,sourceParts,targetParts;if(geometry instanceof OpenLayers.Geometry.LineString){targetParts=[];sourceParts=[geometry];for(var i=0,len=this.components.length;i<len;++i){targetSplit=false;targetLine=this.components[i];for(var j=0;j<sourceParts.length;++j){splits=sourceParts[j].split(targetLine,options);if(splits){if(mutual){sourceLines=splits[0];if(sourceLines.length){sourceLines.unshift(j,1);Array.prototype.splice.apply(sourceParts,sourceLines);j+=sourceLines.length-2;}\nsplits=splits[1];if(splits.length===0){splits=[targetLine.clone()];}}\nfor(var k=0,klen=splits.length;k<klen;++k){if(k===0&&targetParts.length){targetParts[targetParts.length-1].addComponent(splits[k]);}else{targetParts.push(new OpenLayers.Geometry.MultiLineString([splits[k]]));}}\ntargetSplit=true;}}\nif(!targetSplit){if(targetParts.length){targetParts[targetParts.length-1].addComponent(targetLine.clone());}else{targetParts=[new OpenLayers.Geometry.MultiLineString([targetLine.clone()])];}}}}else{results=geometry.split(this);}\nif(sourceParts&&sourceParts.length>1){sourceSplit=true;}else{sourceParts=[];}\nif(targetParts&&targetParts.length>1){targetSplit=true;}else{targetParts=[];}\nif(sourceSplit||targetSplit){if(mutual){results=[sourceParts,targetParts];}else{results=targetParts;}}\nreturn results;},CLASS_NAME:\"OpenLayers.Geometry.MultiLineString\"});OpenLayers.Handler.Path=OpenLayers.Class(OpenLayers.Handler.Point,{line:null,freehand:false,freehandToggle:'shiftKey',initialize:function(control,callbacks,options){OpenLayers.Handler.Point.prototype.initialize.apply(this,arguments);},createFeature:function(pixel){var lonlat=this.control.map.getLonLatFromPixel(pixel);this.point=new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(lonlat.lon,lonlat.lat));this.line=new OpenLayers.Feature.Vector(new OpenLayers.Geometry.LineString([this.point.geometry]));this.callback(\"create\",[this.point.geometry,this.getSketch()]);this.point.geometry.clearBounds();this.layer.addFeatures([this.line,this.point],{silent:true});},destroyFeature:function(){OpenLayers.Handler.Point.prototype.destroyFeature.apply(this);this.line=null;},removePoint:function(){if(this.point){this.layer.removeFeatures([this.point]);}},addPoint:function(pixel){this.layer.removeFeatures([this.point]);var lonlat=this.control.map.getLonLatFromPixel(pixel);this.point=new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(lonlat.lon,lonlat.lat));this.line.geometry.addComponent(this.point.geometry,this.line.geometry.components.length);this.callback(\"point\",[this.point.geometry,this.getGeometry()]);this.callback(\"modify\",[this.point.geometry,this.getSketch()]);this.drawFeature();},freehandMode:function(evt){return(this.freehandToggle&&evt[this.freehandToggle])?!this.freehand:this.freehand;},modifyFeature:function(pixel){var lonlat=this.control.map.getLonLatFromPixel(pixel);this.point.geometry.x=lonlat.lon;this.point.geometry.y=lonlat.lat;this.callback(\"modify\",[this.point.geometry,this.getSketch()]);this.point.geometry.clearBounds();this.drawFeature();},drawFeature:function(){this.layer.drawFeature(this.line,this.style);this.layer.drawFeature(this.point,this.style);},getSketch:function(){return this.line;},getGeometry:function(){var geometry=this.line&&this.line.geometry;if(geometry&&this.multi){geometry=new OpenLayers.Geometry.MultiLineString([geometry]);}\nreturn geometry;},mousedown:function(evt){if(this.lastDown&&this.lastDown.equals(evt.xy)){return false;}\nif(this.lastDown==null){if(this.persist){this.destroyFeature();}\nthis.createFeature(evt.xy);}else if((this.lastUp==null)||!this.lastUp.equals(evt.xy)){this.addPoint(evt.xy);}\nthis.mouseDown=true;this.lastDown=evt.xy;this.drawing=true;return false;},mousemove:function(evt){if(this.drawing){if(this.mouseDown&&this.freehandMode(evt)){this.addPoint(evt.xy);}else{this.modifyFeature(evt.xy);}}\nreturn true;},mouseup:function(evt){this.mouseDown=false;if(this.drawing){if(this.freehandMode(evt)){this.removePoint();this.finalize();}else{if(this.lastUp==null){this.addPoint(evt.xy);}\nthis.lastUp=evt.xy;}\nreturn false;}\nreturn true;},dblclick:function(evt){if(!this.freehandMode(evt)){var index=this.line.geometry.components.length-1;this.line.geometry.removeComponent(this.line.geometry.components[index]);this.removePoint();this.finalize();}\nreturn false;},CLASS_NAME:\"OpenLayers.Handler.Path\"});OpenLayers.Control.Split=OpenLayers.Class(OpenLayers.Control,{EVENT_TYPES:[\"beforesplit\",\"split\",\"aftersplit\"],layer:null,source:null,sourceOptions:null,tolerance:null,edge:true,deferDelete:false,mutual:true,targetFilter:null,sourceFilter:null,handler:null,initialize:function(options){Array.prototype.push.apply(this.EVENT_TYPES,OpenLayers.Control.prototype.EVENT_TYPES);OpenLayers.Control.prototype.initialize.apply(this,[options]);this.options=options||{};if(this.options.source){this.setSource(this.options.source);}},setSource:function(layer){if(this.active){this.deactivate();if(this.handler){this.handler.destroy();delete this.handler;}\nthis.source=layer;this.activate();}else{this.source=layer;}},activate:function(){var activated=OpenLayers.Control.prototype.activate.call(this);if(activated){if(!this.source){if(!this.handler){this.handler=new OpenLayers.Handler.Path(this,{done:function(geometry){this.onSketchComplete({feature:new OpenLayers.Feature.Vector(geometry)});}},{layerOptions:this.sourceOptions});}\nthis.handler.activate();}else if(this.source.events){this.source.events.on({sketchcomplete:this.onSketchComplete,afterfeaturemodified:this.afterFeatureModified,scope:this});}}\nreturn activated;},deactivate:function(){var deactivated=OpenLayers.Control.prototype.deactivate.call(this);if(deactivated){if(this.source&&this.source.events){this.layer.events.un({sketchcomplete:this.onSketchComplete,afterfeaturemodified:this.afterFeatureModified,scope:this});}}\nreturn deactivated;},onSketchComplete:function(event){this.feature=null;return!this.considerSplit(event.feature);},afterFeatureModified:function(event){if(event.modified){var feature=event.feature;if(feature.geometry instanceof OpenLayers.Geometry.LineString||feature.geometry instanceof OpenLayers.Geometry.MultiLineString){this.feature=event.feature;this.considerSplit(event.feature);}}},removeByGeometry:function(features,geometry){for(var i=0,len=features.length;i<len;++i){if(features[i].geometry===geometry){features.splice(i,1);break;}}},isEligible:function(target){return(target.state!==OpenLayers.State.DELETE)&&(target.geometry instanceof OpenLayers.Geometry.LineString||target.geometry instanceof OpenLayers.Geometry.MultiLineString)&&(this.feature!==target)&&(!this.targetFilter||this.targetFilter.evaluate(target.attributes));},considerSplit:function(feature){var sourceSplit=false;var targetSplit=false;if(!this.sourceFilter||this.sourceFilter.evaluate(feature.attributes)){var features=this.layer&&this.layer.features||[];var target,results,proceed;var additions=[],removals=[];var mutual=(this.layer===this.source)&&this.mutual;var options={edge:this.edge,tolerance:this.tolerance,mutual:mutual};var sourceParts=[feature.geometry];var targetFeature,targetParts;var source,parts;for(var i=0,len=features.length;i<len;++i){targetFeature=features[i];if(this.isEligible(targetFeature)){targetParts=[targetFeature.geometry];for(var j=0;j<sourceParts.length;++j){source=sourceParts[j];for(var k=0;k<targetParts.length;++k){target=targetParts[k];if(source.getBounds().intersectsBounds(target.getBounds())){results=source.split(target,options);if(results){proceed=this.events.triggerEvent(\"beforesplit\",{source:feature,target:targetFeature});if(proceed!==false){if(mutual){parts=results[0];if(parts.length>1){parts.unshift(j,1);Array.prototype.splice.apply(sourceParts,parts);j+=parts.length-3;}\nresults=results[1];}\nif(results.length>1){results.unshift(k,1);Array.prototype.splice.apply(targetParts,results);k+=results.length-3;}}}}}}\nif(targetParts&&targetParts.length>1){this.geomsToFeatures(targetFeature,targetParts);this.events.triggerEvent(\"split\",{original:targetFeature,features:targetParts});Array.prototype.push.apply(additions,targetParts);removals.push(targetFeature);targetSplit=true;}}}\nif(sourceParts&&sourceParts.length>1){this.geomsToFeatures(feature,sourceParts);this.events.triggerEvent(\"split\",{original:feature,features:sourceParts});Array.prototype.push.apply(additions,sourceParts);removals.push(feature);sourceSplit=true;}\nif(sourceSplit||targetSplit){if(this.deferDelete){var feat,destroys=[];for(var i=0,len=removals.length;i<len;++i){feat=removals[i];if(feat.state===OpenLayers.State.INSERT){destroys.push(feat);}else{feat.state=OpenLayers.State.DELETE;this.layer.drawFeature(feat);}}\nthis.layer.destroyFeatures(destroys,{silent:true});for(var i=0,len=additions.length;i<len;++i){additions[i].state=OpenLayers.State.INSERT;}}else{this.layer.destroyFeatures(removals,{silent:true});}\nthis.layer.addFeatures(additions,{silent:true});this.events.triggerEvent(\"aftersplit\",{source:feature,features:additions});}}\nreturn sourceSplit;},geomsToFeatures:function(feature,geoms){var clone=feature.clone();delete clone.geometry;var newFeature;for(var i=0,len=geoms.length;i<len;++i){newFeature=clone.clone();newFeature.geometry=geoms[i];newFeature.state=OpenLayers.State.INSERT;geoms[i]=newFeature;}},destroy:function(){if(this.active){this.deactivate();}\nOpenLayers.Control.prototype.destroy.call(this);},CLASS_NAME:\"OpenLayers.Control.Split\"});OpenLayers.Geometry.Polygon=OpenLayers.Class(OpenLayers.Geometry.Collection,{componentTypes:[\"OpenLayers.Geometry.LinearRing\"],initialize:function(components){OpenLayers.Geometry.Collection.prototype.initialize.apply(this,arguments);},getArea:function(){var area=0.0;if(this.components&&(this.components.length>0)){area+=Math.abs(this.components[0].getArea());for(var i=1,len=this.components.length;i<len;i++){area-=Math.abs(this.components[i].getArea());}}\nreturn area;},getGeodesicArea:function(projection){var area=0.0;if(this.components&&(this.components.length>0)){area+=Math.abs(this.components[0].getGeodesicArea(projection));for(var i=1,len=this.components.length;i<len;i++){area-=Math.abs(this.components[i].getGeodesicArea(projection));}}\nreturn area;},containsPoint:function(point){var numRings=this.components.length;var contained=false;if(numRings>0){contained=this.components[0].containsPoint(point);if(contained!==1){if(contained&&numRings>1){var hole;for(var i=1;i<numRings;++i){hole=this.components[i].containsPoint(point);if(hole){if(hole===1){contained=1;}else{contained=false;}\nbreak;}}}}}\nreturn contained;},intersects:function(geometry){var intersect=false;var i,len;if(geometry.CLASS_NAME==\"OpenLayers.Geometry.Point\"){intersect=this.containsPoint(geometry);}else if(geometry.CLASS_NAME==\"OpenLayers.Geometry.LineString\"||geometry.CLASS_NAME==\"OpenLayers.Geometry.LinearRing\"){for(i=0,len=this.components.length;i<len;++i){intersect=geometry.intersects(this.components[i]);if(intersect){break;}}\nif(!intersect){for(i=0,len=geometry.components.length;i<len;++i){intersect=this.containsPoint(geometry.components[i]);if(intersect){break;}}}}else{for(i=0,len=geometry.components.length;i<len;++i){intersect=this.intersects(geometry.components[i]);if(intersect){break;}}}\nif(!intersect&&geometry.CLASS_NAME==\"OpenLayers.Geometry.Polygon\"){var ring=this.components[0];for(i=0,len=ring.components.length;i<len;++i){intersect=geometry.containsPoint(ring.components[i]);if(intersect){break;}}}\nreturn intersect;},distanceTo:function(geometry,options){var edge=!(options&&options.edge===false);var result;if(!edge&&this.intersects(geometry)){result=0;}else{result=OpenLayers.Geometry.Collection.prototype.distanceTo.apply(this,[geometry,options]);}\nreturn result;},CLASS_NAME:\"OpenLayers.Geometry.Polygon\"});OpenLayers.Geometry.Polygon.createRegularPolygon=function(origin,radius,sides,rotation){var angle=Math.PI*((1/sides)-(1/2));if(rotation){angle+=(rotation/180)*Math.PI;}\nvar rotatedAngle,x,y;var points=[];for(var i=0;i<sides;++i){rotatedAngle=angle+(i*2*Math.PI/sides);x=origin.x+(radius*Math.cos(rotatedAngle));y=origin.y+(radius*Math.sin(rotatedAngle));points.push(new OpenLayers.Geometry.Point(x,y));}\nvar ring=new OpenLayers.Geometry.LinearRing(points);return new OpenLayers.Geometry.Polygon([ring]);};OpenLayers.Format.GeoRSS=OpenLayers.Class(OpenLayers.Format.XML,{rssns:\"http://backend.userland.com/rss2\",featureNS:\"http://mapserver.gis.umn.edu/mapserver\",georssns:\"http://www.georss.org/georss\",geons:\"http://www.w3.org/2003/01/geo/wgs84_pos#\",featureTitle:\"Untitled\",featureDescription:\"No Description\",gmlParser:null,xy:false,initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);},createGeometryFromItem:function(item){var point=this.getElementsByTagNameNS(item,this.georssns,\"point\");var lat=this.getElementsByTagNameNS(item,this.geons,'lat');var lon=this.getElementsByTagNameNS(item,this.geons,'long');var line=this.getElementsByTagNameNS(item,this.georssns,\"line\");var polygon=this.getElementsByTagNameNS(item,this.georssns,\"polygon\");var where=this.getElementsByTagNameNS(item,this.georssns,\"where\");var box=this.getElementsByTagNameNS(item,this.georssns,\"box\");if(point.length>0||(lat.length>0&&lon.length>0)){var location;if(point.length>0){location=OpenLayers.String.trim(point[0].firstChild.nodeValue).split(/\\s+/);if(location.length!=2){location=OpenLayers.String.trim(point[0].firstChild.nodeValue).split(/\\s*,\\s*/);}}else{location=[parseFloat(lat[0].firstChild.nodeValue),parseFloat(lon[0].firstChild.nodeValue)];}\nvar geometry=new OpenLayers.Geometry.Point(parseFloat(location[1]),parseFloat(location[0]));}else if(line.length>0){var coords=OpenLayers.String.trim(this.concatChildValues(line[0])).split(/\\s+/);var components=[];var point;for(var i=0,len=coords.length;i<len;i+=2){point=new OpenLayers.Geometry.Point(parseFloat(coords[i+1]),parseFloat(coords[i]));components.push(point);}\ngeometry=new OpenLayers.Geometry.LineString(components);}else if(polygon.length>0){var coords=OpenLayers.String.trim(this.concatChildValues(polygon[0])).split(/\\s+/);var components=[];var point;for(var i=0,len=coords.length;i<len;i+=2){point=new OpenLayers.Geometry.Point(parseFloat(coords[i+1]),parseFloat(coords[i]));components.push(point);}\ngeometry=new OpenLayers.Geometry.Polygon([new OpenLayers.Geometry.LinearRing(components)]);}else if(where.length>0){if(!this.gmlParser){this.gmlParser=new OpenLayers.Format.GML({'xy':this.xy});}\nvar feature=this.gmlParser.parseFeature(where[0]);geometry=feature.geometry;}else if(box.length>0){var coords=OpenLayers.String.trim(box[0].firstChild.nodeValue).split(/\\s+/);var components=[];var point;if(coords.length>3){point=new OpenLayers.Geometry.Point(parseFloat(coords[1]),parseFloat(coords[0]));components.push(point);point=new OpenLayers.Geometry.Point(parseFloat(coords[1]),parseFloat(coords[2]));components.push(point);point=new OpenLayers.Geometry.Point(parseFloat(coords[3]),parseFloat(coords[2]));components.push(point);point=new OpenLayers.Geometry.Point(parseFloat(coords[3]),parseFloat(coords[0]));components.push(point);point=new OpenLayers.Geometry.Point(parseFloat(coords[1]),parseFloat(coords[0]));components.push(point);}\ngeometry=new OpenLayers.Geometry.Polygon([new OpenLayers.Geometry.LinearRing(components)]);}\nif(geometry&&this.internalProjection&&this.externalProjection){geometry.transform(this.externalProjection,this.internalProjection);}\nreturn geometry;},createFeatureFromItem:function(item){var geometry=this.createGeometryFromItem(item);var title=this.getChildValue(item,\"*\",\"title\",this.featureTitle);var description=this.getChildValue(item,\"*\",\"description\",this.getChildValue(item,\"*\",\"content\",this.getChildValue(item,\"*\",\"summary\",this.featureDescription)));var link=this.getChildValue(item,\"*\",\"link\");if(!link){try{link=this.getElementsByTagNameNS(item,\"*\",\"link\")[0].getAttribute(\"href\");}catch(e){link=null;}}\nvar id=this.getChildValue(item,\"*\",\"id\",null);var data={\"title\":title,\"description\":description,\"link\":link};var feature=new OpenLayers.Feature.Vector(geometry,data);feature.fid=id;return feature;},getChildValue:function(node,nsuri,name,def){var value;var eles=this.getElementsByTagNameNS(node,nsuri,name);if(eles&&eles[0]&&eles[0].firstChild&&eles[0].firstChild.nodeValue){value=eles[0].firstChild.nodeValue;}else{value=(def==undefined)?\"\":def;}\nreturn value;},read:function(doc){if(typeof doc==\"string\"){doc=OpenLayers.Format.XML.prototype.read.apply(this,[doc]);}\nvar itemlist=null;itemlist=this.getElementsByTagNameNS(doc,'*','item');if(itemlist.length==0){itemlist=this.getElementsByTagNameNS(doc,'*','entry');}\nvar numItems=itemlist.length;var features=new Array(numItems);for(var i=0;i<numItems;i++){features[i]=this.createFeatureFromItem(itemlist[i]);}\nreturn features;},write:function(features){var georss;if(features instanceof Array){georss=this.createElementNS(this.rssns,\"rss\");for(var i=0,len=features.length;i<len;i++){georss.appendChild(this.createFeatureXML(features[i]));}}else{georss=this.createFeatureXML(features);}\nreturn OpenLayers.Format.XML.prototype.write.apply(this,[georss]);},createFeatureXML:function(feature){var geometryNode=this.buildGeometryNode(feature.geometry);var featureNode=this.createElementNS(this.rssns,\"item\");var titleNode=this.createElementNS(this.rssns,\"title\");titleNode.appendChild(this.createTextNode(feature.attributes.title?feature.attributes.title:\"\"));var descNode=this.createElementNS(this.rssns,\"description\");descNode.appendChild(this.createTextNode(feature.attributes.description?feature.attributes.description:\"\"));featureNode.appendChild(titleNode);featureNode.appendChild(descNode);if(feature.attributes.link){var linkNode=this.createElementNS(this.rssns,\"link\");linkNode.appendChild(this.createTextNode(feature.attributes.link));featureNode.appendChild(linkNode);}\nfor(var attr in feature.attributes){if(attr==\"link\"||attr==\"title\"||attr==\"description\"){continue;}\nvar attrText=this.createTextNode(feature.attributes[attr]);var nodename=attr;if(attr.search(\":\")!=-1){nodename=attr.split(\":\")[1];}\nvar attrContainer=this.createElementNS(this.featureNS,\"feature:\"+nodename);attrContainer.appendChild(attrText);featureNode.appendChild(attrContainer);}\nfeatureNode.appendChild(geometryNode);return featureNode;},buildGeometryNode:function(geometry){if(this.internalProjection&&this.externalProjection){geometry=geometry.clone();geometry.transform(this.internalProjection,this.externalProjection);}\nvar node;if(geometry.CLASS_NAME==\"OpenLayers.Geometry.Polygon\"){node=this.createElementNS(this.georssns,'georss:polygon');node.appendChild(this.buildCoordinatesNode(geometry.components[0]));}\nelse if(geometry.CLASS_NAME==\"OpenLayers.Geometry.LineString\"){node=this.createElementNS(this.georssns,'georss:line');node.appendChild(this.buildCoordinatesNode(geometry));}\nelse if(geometry.CLASS_NAME==\"OpenLayers.Geometry.Point\"){node=this.createElementNS(this.georssns,'georss:point');node.appendChild(this.buildCoordinatesNode(geometry));}else{throw\"Couldn't parse \"+geometry.CLASS_NAME;}\nreturn node;},buildCoordinatesNode:function(geometry){var points=null;if(geometry.components){points=geometry.components;}\nvar path;if(points){var numPoints=points.length;var parts=new Array(numPoints);for(var i=0;i<numPoints;i++){parts[i]=points[i].y+\" \"+points[i].x;}\npath=parts.join(\" \");}else{path=geometry.y+\" \"+geometry.x;}\nreturn this.createTextNode(path);},CLASS_NAME:\"OpenLayers.Format.GeoRSS\"});OpenLayers.Format.KML=OpenLayers.Class(OpenLayers.Format.XML,{namespaces:{kml:\"http://www.opengis.net/kml/2.2\",gx:\"http://www.google.com/kml/ext/2.2\"},kmlns:\"http://earth.google.com/kml/2.0\",placemarksDesc:\"No description available\",foldersName:\"OpenLayers export\",foldersDesc:\"Exported on \"+new Date(),extractAttributes:true,extractStyles:false,extractTracks:false,trackAttributes:null,internalns:null,features:null,styles:null,styleBaseUrl:\"\",fetched:null,maxDepth:0,initialize:function(options){this.regExes={trimSpace:(/^\\s*|\\s*$/g),removeSpace:(/\\s*/g),splitSpace:(/\\s+/),trimComma:(/\\s*,\\s*/g),kmlColor:(/(\\w{2})(\\w{2})(\\w{2})(\\w{2})/),kmlIconPalette:(/root:\\/\\/icons\\/palette-(\\d+)(\\.\\w+)/),straightBracket:(/\\$\\[(.*?)\\]/g)};this.externalProjection=new OpenLayers.Projection(\"EPSG:4326\");OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);},read:function(data){this.features=[];this.styles={};this.fetched={};var options={depth:0,styleBaseUrl:this.styleBaseUrl};return this.parseData(data,options);},parseData:function(data,options){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nvar types=[\"Link\",\"NetworkLink\",\"Style\",\"StyleMap\",\"Placemark\"];for(var i=0,len=types.length;i<len;++i){var type=types[i];var nodes=this.getElementsByTagNameNS(data,\"*\",type);if(nodes.length==0){continue;}\nswitch(type.toLowerCase()){case\"link\":case\"networklink\":this.parseLinks(nodes,options);break;case\"style\":if(this.extractStyles){this.parseStyles(nodes,options);}\nbreak;case\"stylemap\":if(this.extractStyles){this.parseStyleMaps(nodes,options);}\nbreak;case\"placemark\":this.parseFeatures(nodes,options);break;}}\nreturn this.features;},parseLinks:function(nodes,options){if(options.depth>=this.maxDepth){return false;}\nvar newOptions=OpenLayers.Util.extend({},options);newOptions.depth++;for(var i=0,len=nodes.length;i<len;i++){var href=this.parseProperty(nodes[i],\"*\",\"href\");if(href&&!this.fetched[href]){this.fetched[href]=true;var data=this.fetchLink(href);if(data){this.parseData(data,newOptions);}}}},fetchLink:function(href){var request=OpenLayers.Request.GET({url:href,async:false});if(request){return request.responseText;}},parseStyles:function(nodes,options){for(var i=0,len=nodes.length;i<len;i++){var style=this.parseStyle(nodes[i]);if(style){var styleName=(options.styleBaseUrl||\"\")+\"#\"+style.id;this.styles[styleName]=style;}}},parseKmlColor:function(kmlColor){var color=null;if(kmlColor){var matches=kmlColor.match(this.regExes.kmlColor);if(matches){color={color:'#'+matches[4]+matches[3]+matches[2],opacity:parseInt(matches[1],16)/255};}}\nreturn color;},parseStyle:function(node){var style={};var types=[\"LineStyle\",\"PolyStyle\",\"IconStyle\",\"BalloonStyle\",\"LabelStyle\"];var type,nodeList,geometry,parser;for(var i=0,len=types.length;i<len;++i){type=types[i];styleTypeNode=this.getElementsByTagNameNS(node,\"*\",type)[0];if(!styleTypeNode){continue;}\nswitch(type.toLowerCase()){case\"linestyle\":var kmlColor=this.parseProperty(styleTypeNode,\"*\",\"color\");var color=this.parseKmlColor(kmlColor);if(color){style[\"strokeColor\"]=color.color;style[\"strokeOpacity\"]=color.opacity;}\nvar width=this.parseProperty(styleTypeNode,\"*\",\"width\");if(width){style[\"strokeWidth\"]=width;}\nbreak;case\"polystyle\":var kmlColor=this.parseProperty(styleTypeNode,\"*\",\"color\");var color=this.parseKmlColor(kmlColor);if(color){style[\"fillOpacity\"]=color.opacity;style[\"fillColor\"]=color.color;}\nvar fill=this.parseProperty(styleTypeNode,\"*\",\"fill\");if(fill==\"0\"){style[\"fillColor\"]=\"none\";}\nvar outline=this.parseProperty(styleTypeNode,\"*\",\"outline\");if(outline==\"0\"){style[\"strokeWidth\"]=\"0\";}\nbreak;case\"iconstyle\":var scale=parseFloat(this.parseProperty(styleTypeNode,\"*\",\"scale\")||1);var width=32*scale;var height=32*scale;var iconNode=this.getElementsByTagNameNS(styleTypeNode,\"*\",\"Icon\")[0];if(iconNode){var href=this.parseProperty(iconNode,\"*\",\"href\");if(href){var w=this.parseProperty(iconNode,\"*\",\"w\");var h=this.parseProperty(iconNode,\"*\",\"h\");var google=\"http://maps.google.com/mapfiles/kml\";if(OpenLayers.String.startsWith(href,google)&&!w&&!h){w=64;h=64;scale=scale/2;}\nw=w||h;h=h||w;if(w){width=parseInt(w)*scale;}\nif(h){height=parseInt(h)*scale;}\nvar matches=href.match(this.regExes.kmlIconPalette);if(matches){var palette=matches[1];var file_extension=matches[2];var x=this.parseProperty(iconNode,\"*\",\"x\");var y=this.parseProperty(iconNode,\"*\",\"y\");var posX=x?x/32:0;var posY=y?(7-y/32):7;var pos=posY*8+posX;href=\"http://maps.google.com/mapfiles/kml/pal\"\n+palette+\"/icon\"+pos+file_extension;}\nstyle[\"graphicOpacity\"]=1;style[\"externalGraphic\"]=href;}}\nvar hotSpotNode=this.getElementsByTagNameNS(styleTypeNode,\"*\",\"hotSpot\")[0];if(hotSpotNode){var x=parseFloat(hotSpotNode.getAttribute(\"x\"));var y=parseFloat(hotSpotNode.getAttribute(\"y\"));var xUnits=hotSpotNode.getAttribute(\"xunits\");if(xUnits==\"pixels\"){style[\"graphicXOffset\"]=-x*scale;}\nelse if(xUnits==\"insetPixels\"){style[\"graphicXOffset\"]=-width+(x*scale);}\nelse if(xUnits==\"fraction\"){style[\"graphicXOffset\"]=-width*x;}\nvar yUnits=hotSpotNode.getAttribute(\"yunits\");if(yUnits==\"pixels\"){style[\"graphicYOffset\"]=-height+(y*scale)+1;}\nelse if(yUnits==\"insetPixels\"){style[\"graphicYOffset\"]=-(y*scale)+1;}\nelse if(yUnits==\"fraction\"){style[\"graphicYOffset\"]=-height*(1-y)+1;}}\nstyle[\"graphicWidth\"]=width;style[\"graphicHeight\"]=height;break;case\"balloonstyle\":var balloonStyle=OpenLayers.Util.getXmlNodeValue(styleTypeNode);if(balloonStyle){style[\"balloonStyle\"]=balloonStyle.replace(this.regExes.straightBracket,\"${$1}\");}\nbreak;case\"labelstyle\":var kmlColor=this.parseProperty(styleTypeNode,\"*\",\"color\");var color=this.parseKmlColor(kmlColor);if(color){style[\"fontColor\"]=color.color;style[\"fontOpacity\"]=color.opacity;}\nbreak;default:}}\nif(!style[\"strokeColor\"]&&style[\"fillColor\"]){style[\"strokeColor\"]=style[\"fillColor\"];}\nvar id=node.getAttribute(\"id\");if(id&&style){style.id=id;}\nreturn style;},parseStyleMaps:function(nodes,options){for(var i=0,len=nodes.length;i<len;i++){var node=nodes[i];var pairs=this.getElementsByTagNameNS(node,\"*\",\"Pair\");var id=node.getAttribute(\"id\");for(var j=0,jlen=pairs.length;j<jlen;j++){var pair=pairs[j];var key=this.parseProperty(pair,\"*\",\"key\");var styleUrl=this.parseProperty(pair,\"*\",\"styleUrl\");if(styleUrl&&key==\"normal\"){this.styles[(options.styleBaseUrl||\"\")+\"#\"+id]=this.styles[(options.styleBaseUrl||\"\")+styleUrl];}\nif(styleUrl&&key==\"highlight\"){}}}},parseFeatures:function(nodes,options){var features=[];for(var i=0,len=nodes.length;i<len;i++){var featureNode=nodes[i];var feature=this.parseFeature.apply(this,[featureNode]);if(feature){if(this.extractStyles&&feature.attributes&&feature.attributes.styleUrl){feature.style=this.getStyle(feature.attributes.styleUrl,options);}\nif(this.extractStyles){var inlineStyleNode=this.getElementsByTagNameNS(featureNode,\"*\",\"Style\")[0];if(inlineStyleNode){var inlineStyle=this.parseStyle(inlineStyleNode);if(inlineStyle){feature.style=OpenLayers.Util.extend(feature.style,inlineStyle);}}}\nif(this.extractTracks){var tracks=this.getElementsByTagNameNS(featureNode,this.namespaces.gx,\"Track\");if(tracks&&tracks.length>0){var track=tracks[0];var container={features:[],feature:feature};this.readNode(track,container);if(container.features.length>0){features.push.apply(features,container.features);}}}else{features.push(feature);}}else{throw\"Bad Placemark: \"+i;}}\nthis.features=this.features.concat(features);},readers:{\"kml\":{\"when\":function(node,container){container.whens.push(OpenLayers.Date.parse(this.getChildValue(node)));},\"_trackPointAttribute\":function(node,container){var name=node.nodeName.split(\":\").pop();container.attributes[name].push(this.getChildValue(node));}},\"gx\":{\"Track\":function(node,container){var obj={whens:[],points:[],angles:[]};if(this.trackAttributes){var name;obj.attributes={};for(var i=0,ii=this.trackAttributes.length;i<ii;++i){name=this.trackAttributes[i];obj.attributes[name]=[];if(!(name in this.readers.kml)){this.readers.kml[name]=this.readers.kml._trackPointAttribute;}}}\nthis.readChildNodes(node,obj);if(obj.whens.length!==obj.points.length){throw new Error(\"gx:Track with unequal number of when (\"+obj.whens.length+\") and gx:coord (\"+obj.points.length+\") elements.\");}\nvar hasAngles=obj.angles.length>0;if(hasAngles&&obj.whens.length!==obj.angles.length){throw new Error(\"gx:Track with unequal number of when (\"+obj.whens.length+\") and gx:angles (\"+obj.angles.length+\") elements.\");}\nvar feature,point,angles;for(var i=0,ii=obj.whens.length;i<ii;++i){feature=container.feature.clone();feature.fid=container.feature.fid||container.feature.id;point=obj.points[i];feature.geometry=point;if(\"z\"in point){feature.attributes.altitude=point.z;}\nif(this.internalProjection&&this.externalProjection){feature.geometry.transform(this.externalProjection,this.internalProjection);}\nif(this.trackAttributes){for(var j=0,jj=this.trackAttributes.length;j<jj;++j){feature.attributes[name]=obj.attributes[this.trackAttributes[j]][i];}}\nfeature.attributes.when=obj.whens[i];feature.attributes.trackId=container.feature.id;if(hasAngles){angles=obj.angles[i];feature.attributes.heading=parseFloat(angles[0]);feature.attributes.tilt=parseFloat(angles[1]);feature.attributes.roll=parseFloat(angles[2]);}\ncontainer.features.push(feature);}},\"coord\":function(node,container){var str=this.getChildValue(node);var coords=str.replace(this.regExes.trimSpace,\"\").split(/\\s+/);var point=new OpenLayers.Geometry.Point(coords[0],coords[1]);if(coords.length>2){point.z=parseFloat(coords[2]);}\ncontainer.points.push(point);},\"angles\":function(node,container){var str=this.getChildValue(node);var parts=str.replace(this.regExes.trimSpace,\"\").split(/\\s+/);container.angles.push(parts);}}},parseFeature:function(node){var order=[\"MultiGeometry\",\"Polygon\",\"LineString\",\"Point\"];var type,nodeList,geometry,parser;for(var i=0,len=order.length;i<len;++i){type=order[i];this.internalns=node.namespaceURI?node.namespaceURI:this.kmlns;nodeList=this.getElementsByTagNameNS(node,this.internalns,type);if(nodeList.length>0){var parser=this.parseGeometry[type.toLowerCase()];if(parser){geometry=parser.apply(this,[nodeList[0]]);if(this.internalProjection&&this.externalProjection){geometry.transform(this.externalProjection,this.internalProjection);}}else{OpenLayers.Console.error(OpenLayers.i18n(\"unsupportedGeometryType\",{'geomType':type}));}\nbreak;}}\nvar attributes;if(this.extractAttributes){attributes=this.parseAttributes(node);}\nvar feature=new OpenLayers.Feature.Vector(geometry,attributes);var fid=node.getAttribute(\"id\")||node.getAttribute(\"name\");if(fid!=null){feature.fid=fid;}\nreturn feature;},getStyle:function(styleUrl,options){var styleBaseUrl=OpenLayers.Util.removeTail(styleUrl);var newOptions=OpenLayers.Util.extend({},options);newOptions.depth++;newOptions.styleBaseUrl=styleBaseUrl;if(!this.styles[styleUrl]&&!OpenLayers.String.startsWith(styleUrl,\"#\")&&newOptions.depth<=this.maxDepth&&!this.fetched[styleBaseUrl]){var data=this.fetchLink(styleBaseUrl);if(data){this.parseData(data,newOptions);}}\nvar style=OpenLayers.Util.extend({},this.styles[styleUrl]);return style;},parseGeometry:{point:function(node){var nodeList=this.getElementsByTagNameNS(node,this.internalns,\"coordinates\");var coords=[];if(nodeList.length>0){var coordString=nodeList[0].firstChild.nodeValue;coordString=coordString.replace(this.regExes.removeSpace,\"\");coords=coordString.split(\",\");}\nvar point=null;if(coords.length>1){if(coords.length==2){coords[2]=null;}\npoint=new OpenLayers.Geometry.Point(coords[0],coords[1],coords[2]);}else{throw\"Bad coordinate string: \"+coordString;}\nreturn point;},linestring:function(node,ring){var nodeList=this.getElementsByTagNameNS(node,this.internalns,\"coordinates\");var line=null;if(nodeList.length>0){var coordString=this.getChildValue(nodeList[0]);coordString=coordString.replace(this.regExes.trimSpace,\"\");coordString=coordString.replace(this.regExes.trimComma,\",\");var pointList=coordString.split(this.regExes.splitSpace);var numPoints=pointList.length;var points=new Array(numPoints);var coords,numCoords;for(var i=0;i<numPoints;++i){coords=pointList[i].split(\",\");numCoords=coords.length;if(numCoords>1){if(coords.length==2){coords[2]=null;}\npoints[i]=new OpenLayers.Geometry.Point(coords[0],coords[1],coords[2]);}else{throw\"Bad LineString point coordinates: \"+\npointList[i];}}\nif(numPoints){if(ring){line=new OpenLayers.Geometry.LinearRing(points);}else{line=new OpenLayers.Geometry.LineString(points);}}else{throw\"Bad LineString coordinates: \"+coordString;}}\nreturn line;},polygon:function(node){var nodeList=this.getElementsByTagNameNS(node,this.internalns,\"LinearRing\");var numRings=nodeList.length;var components=new Array(numRings);if(numRings>0){var ring;for(var i=0,len=nodeList.length;i<len;++i){ring=this.parseGeometry.linestring.apply(this,[nodeList[i],true]);if(ring){components[i]=ring;}else{throw\"Bad LinearRing geometry: \"+i;}}}\nreturn new OpenLayers.Geometry.Polygon(components);},multigeometry:function(node){var child,parser;var parts=[];var children=node.childNodes;for(var i=0,len=children.length;i<len;++i){child=children[i];if(child.nodeType==1){var type=(child.prefix)?child.nodeName.split(\":\")[1]:child.nodeName;var parser=this.parseGeometry[type.toLowerCase()];if(parser){parts.push(parser.apply(this,[child]));}}}\nreturn new OpenLayers.Geometry.Collection(parts);}},parseAttributes:function(node){var attributes={};var edNodes=node.getElementsByTagName(\"ExtendedData\");if(edNodes.length){attributes=this.parseExtendedData(edNodes[0]);}\nvar child,grandchildren,grandchild;var children=node.childNodes;for(var i=0,len=children.length;i<len;++i){child=children[i];if(child.nodeType==1){grandchildren=child.childNodes;if(grandchildren.length>=1&&grandchildren.length<=3){var grandchild;switch(grandchildren.length){case 1:grandchild=grandchildren[0];break;case 2:var c1=grandchildren[0];var c2=grandchildren[1];grandchild=(c1.nodeType==3||c1.nodeType==4)?c1:c2;break;case 3:default:grandchild=grandchildren[1];break;}\nif(grandchild.nodeType==3||grandchild.nodeType==4){var name=(child.prefix)?child.nodeName.split(\":\")[1]:child.nodeName;var value=OpenLayers.Util.getXmlNodeValue(grandchild);if(value){value=value.replace(this.regExes.trimSpace,\"\");attributes[name]=value;}}}}}\nreturn attributes;},parseExtendedData:function(node){var attributes={};var i,len,data,key;var dataNodes=node.getElementsByTagName(\"Data\");for(i=0,len=dataNodes.length;i<len;i++){data=dataNodes[i];key=data.getAttribute(\"name\");var ed={};var valueNode=data.getElementsByTagName(\"value\");if(valueNode.length){ed['value']=this.getChildValue(valueNode[0]);}\nvar nameNode=data.getElementsByTagName(\"displayName\");if(nameNode.length){ed['displayName']=this.getChildValue(nameNode[0]);}\nattributes[key]=ed;}\nvar simpleDataNodes=node.getElementsByTagName(\"SimpleData\");for(i=0,len=simpleDataNodes.length;i<len;i++){var ed={};data=simpleDataNodes[i];key=data.getAttribute(\"name\");ed['value']=this.getChildValue(data);ed['displayName']=key;attributes[key]=ed;}\nreturn attributes;},parseProperty:function(xmlNode,namespace,tagName){var value;var nodeList=this.getElementsByTagNameNS(xmlNode,namespace,tagName);try{value=OpenLayers.Util.getXmlNodeValue(nodeList[0]);}catch(e){value=null;}\nreturn value;},write:function(features){if(!(features instanceof Array)){features=[features];}\nvar kml=this.createElementNS(this.kmlns,\"kml\");var folder=this.createFolderXML();for(var i=0,len=features.length;i<len;++i){folder.appendChild(this.createPlacemarkXML(features[i]));}\nkml.appendChild(folder);return OpenLayers.Format.XML.prototype.write.apply(this,[kml]);},createFolderXML:function(){var folder=this.createElementNS(this.kmlns,\"Folder\");if(this.foldersName){var folderName=this.createElementNS(this.kmlns,\"name\");var folderNameText=this.createTextNode(this.foldersName);folderName.appendChild(folderNameText);folder.appendChild(folderName);}\nif(this.foldersDesc){var folderDesc=this.createElementNS(this.kmlns,\"description\");var folderDescText=this.createTextNode(this.foldersDesc);folderDesc.appendChild(folderDescText);folder.appendChild(folderDesc);}\nreturn folder;},createPlacemarkXML:function(feature){var placemarkName=this.createElementNS(this.kmlns,\"name\");var name=feature.style&&feature.style.label?feature.style.label:feature.attributes.name||feature.id;placemarkName.appendChild(this.createTextNode(name));var placemarkDesc=this.createElementNS(this.kmlns,\"description\");var desc=feature.attributes.description||this.placemarksDesc;placemarkDesc.appendChild(this.createTextNode(desc));var placemarkNode=this.createElementNS(this.kmlns,\"Placemark\");if(feature.fid!=null){placemarkNode.setAttribute(\"id\",feature.fid);}\nplacemarkNode.appendChild(placemarkName);placemarkNode.appendChild(placemarkDesc);var geometryNode=this.buildGeometryNode(feature.geometry);placemarkNode.appendChild(geometryNode);return placemarkNode;},buildGeometryNode:function(geometry){if(this.internalProjection&&this.externalProjection){geometry=geometry.clone();geometry.transform(this.internalProjection,this.externalProjection);}\nvar className=geometry.CLASS_NAME;var type=className.substring(className.lastIndexOf(\".\")+1);var builder=this.buildGeometry[type.toLowerCase()];var node=null;if(builder){node=builder.apply(this,[geometry]);}\nreturn node;},buildGeometry:{point:function(geometry){var kml=this.createElementNS(this.kmlns,\"Point\");kml.appendChild(this.buildCoordinatesNode(geometry));return kml;},multipoint:function(geometry){return this.buildGeometry.collection.apply(this,[geometry]);},linestring:function(geometry){var kml=this.createElementNS(this.kmlns,\"LineString\");kml.appendChild(this.buildCoordinatesNode(geometry));return kml;},multilinestring:function(geometry){return this.buildGeometry.collection.apply(this,[geometry]);},linearring:function(geometry){var kml=this.createElementNS(this.kmlns,\"LinearRing\");kml.appendChild(this.buildCoordinatesNode(geometry));return kml;},polygon:function(geometry){var kml=this.createElementNS(this.kmlns,\"Polygon\");var rings=geometry.components;var ringMember,ringGeom,type;for(var i=0,len=rings.length;i<len;++i){type=(i==0)?\"outerBoundaryIs\":\"innerBoundaryIs\";ringMember=this.createElementNS(this.kmlns,type);ringGeom=this.buildGeometry.linearring.apply(this,[rings[i]]);ringMember.appendChild(ringGeom);kml.appendChild(ringMember);}\nreturn kml;},multipolygon:function(geometry){return this.buildGeometry.collection.apply(this,[geometry]);},collection:function(geometry){var kml=this.createElementNS(this.kmlns,\"MultiGeometry\");var child;for(var i=0,len=geometry.components.length;i<len;++i){child=this.buildGeometryNode.apply(this,[geometry.components[i]]);if(child){kml.appendChild(child);}}\nreturn kml;}},buildCoordinatesNode:function(geometry){var coordinatesNode=this.createElementNS(this.kmlns,\"coordinates\");var path;var points=geometry.components;if(points){var point;var numPoints=points.length;var parts=new Array(numPoints);for(var i=0;i<numPoints;++i){point=points[i];parts[i]=point.x+\",\"+point.y;}\npath=parts.join(\" \");}else{path=geometry.x+\",\"+geometry.y;}\nvar txtNode=this.createTextNode(path);coordinatesNode.appendChild(txtNode);return coordinatesNode;},CLASS_NAME:\"OpenLayers.Format.KML\"});OpenLayers.Format.OSM=OpenLayers.Class(OpenLayers.Format.XML,{checkTags:false,interestingTagsExclude:null,areaTags:null,initialize:function(options){var layer_defaults={'interestingTagsExclude':['source','source_ref','source:ref','history','attribution','created_by'],'areaTags':['area','building','leisure','tourism','ruins','historic','landuse','military','natural','sport']};layer_defaults=OpenLayers.Util.extend(layer_defaults,options);var interesting={};for(var i=0;i<layer_defaults.interestingTagsExclude.length;i++){interesting[layer_defaults.interestingTagsExclude[i]]=true;}\nlayer_defaults.interestingTagsExclude=interesting;var area={};for(var i=0;i<layer_defaults.areaTags.length;i++){area[layer_defaults.areaTags[i]]=true;}\nlayer_defaults.areaTags=area;this.externalProjection=new OpenLayers.Projection(\"EPSG:4326\");OpenLayers.Format.XML.prototype.initialize.apply(this,[layer_defaults]);},read:function(doc){if(typeof doc==\"string\"){doc=OpenLayers.Format.XML.prototype.read.apply(this,[doc]);}\nvar nodes=this.getNodes(doc);var ways=this.getWays(doc);var feat_list=new Array(ways.length);for(var i=0;i<ways.length;i++){var point_list=new Array(ways[i].nodes.length);var poly=this.isWayArea(ways[i])?1:0;for(var j=0;j<ways[i].nodes.length;j++){var node=nodes[ways[i].nodes[j]];var point=new OpenLayers.Geometry.Point(node.lon,node.lat);point.osm_id=parseInt(ways[i].nodes[j]);point_list[j]=point;node.used=true;}\nvar geometry=null;if(poly){geometry=new OpenLayers.Geometry.Polygon(new OpenLayers.Geometry.LinearRing(point_list));}else{geometry=new OpenLayers.Geometry.LineString(point_list);}\nif(this.internalProjection&&this.externalProjection){geometry.transform(this.externalProjection,this.internalProjection);}\nvar feat=new OpenLayers.Feature.Vector(geometry,ways[i].tags);feat.osm_id=parseInt(ways[i].id);feat.fid=\"way.\"+feat.osm_id;feat_list[i]=feat;}\nfor(var node_id in nodes){var node=nodes[node_id];if(!node.used||this.checkTags){var tags=null;if(this.checkTags){var result=this.getTags(node.node,true);if(node.used&&!result[1]){continue;}\ntags=result[0];}else{tags=this.getTags(node.node);}\nvar feat=new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(node['lon'],node['lat']),tags);if(this.internalProjection&&this.externalProjection){feat.geometry.transform(this.externalProjection,this.internalProjection);}\nfeat.osm_id=parseInt(node_id);feat.fid=\"node.\"+feat.osm_id;feat_list.push(feat);}\nnode.node=null;}\nreturn feat_list;},getNodes:function(doc){var node_list=doc.getElementsByTagName(\"node\");var nodes={};for(var i=0;i<node_list.length;i++){var node=node_list[i];var id=node.getAttribute(\"id\");nodes[id]={'lat':node.getAttribute(\"lat\"),'lon':node.getAttribute(\"lon\"),'node':node};}\nreturn nodes;},getWays:function(doc){var way_list=doc.getElementsByTagName(\"way\");var return_ways=[];for(var i=0;i<way_list.length;i++){var way=way_list[i];var way_object={id:way.getAttribute(\"id\")};way_object.tags=this.getTags(way);var node_list=way.getElementsByTagName(\"nd\");way_object.nodes=new Array(node_list.length);for(var j=0;j<node_list.length;j++){way_object.nodes[j]=node_list[j].getAttribute(\"ref\");}\nreturn_ways.push(way_object);}\nreturn return_ways;},getTags:function(dom_node,interesting_tags){var tag_list=dom_node.getElementsByTagName(\"tag\");var tags={};var interesting=false;for(var j=0;j<tag_list.length;j++){var key=tag_list[j].getAttribute(\"k\");tags[key]=tag_list[j].getAttribute(\"v\");if(interesting_tags){if(!this.interestingTagsExclude[key]){interesting=true;}}}\nreturn interesting_tags?[tags,interesting]:tags;},isWayArea:function(way){var poly_shaped=false;var poly_tags=false;if(way.nodes[0]==way.nodes[way.nodes.length-1]){poly_shaped=true;}\nif(this.checkTags){for(var key in way.tags){if(this.areaTags[key]){poly_tags=true;break;}}}\nreturn poly_shaped&&(this.checkTags?poly_tags:true);},write:function(features){if(!(features instanceof Array)){features=[features];}\nthis.osm_id=1;this.created_nodes={};var root_node=this.createElementNS(null,\"osm\");root_node.setAttribute(\"version\",\"0.5\");root_node.setAttribute(\"generator\",\"OpenLayers \"+OpenLayers.VERSION_NUMBER);for(var i=features.length-1;i>=0;i--){var nodes=this.createFeatureNodes(features[i]);for(var j=0;j<nodes.length;j++){root_node.appendChild(nodes[j]);}}\nreturn OpenLayers.Format.XML.prototype.write.apply(this,[root_node]);},createFeatureNodes:function(feature){var nodes=[];var className=feature.geometry.CLASS_NAME;var type=className.substring(className.lastIndexOf(\".\")+1);type=type.toLowerCase();var builder=this.createXML[type];if(builder){nodes=builder.apply(this,[feature]);}\nreturn nodes;},createXML:{'point':function(point){var id=null;var geometry=point.geometry?point.geometry:point;var already_exists=false;if(point.osm_id){id=point.osm_id;if(this.created_nodes[id]){already_exists=true;}}else{id=-this.osm_id;this.osm_id++;}\nif(already_exists){node=this.created_nodes[id];}else{var node=this.createElementNS(null,\"node\");}\nthis.created_nodes[id]=node;node.setAttribute(\"id\",id);node.setAttribute(\"lon\",geometry.x);node.setAttribute(\"lat\",geometry.y);if(point.attributes){this.serializeTags(point,node);}\nthis.setState(point,node);return already_exists?[]:[node];},linestring:function(feature){var nodes=[];var geometry=feature.geometry;if(feature.osm_id){id=feature.osm_id;}else{id=-this.osm_id;this.osm_id++;}\nvar way=this.createElementNS(null,\"way\");way.setAttribute(\"id\",id);for(var i=0;i<geometry.components.length;i++){var node=this.createXML['point'].apply(this,[geometry.components[i]]);if(node.length){node=node[0];var node_ref=node.getAttribute(\"id\");nodes.push(node);}else{node_ref=geometry.components[i].osm_id;node=this.created_nodes[node_ref];}\nthis.setState(feature,node);var nd_dom=this.createElementNS(null,\"nd\");nd_dom.setAttribute(\"ref\",node_ref);way.appendChild(nd_dom);}\nthis.serializeTags(feature,way);nodes.push(way);return nodes;},polygon:function(feature){var attrs=OpenLayers.Util.extend({'area':'yes'},feature.attributes);var feat=new OpenLayers.Feature.Vector(feature.geometry.components[0],attrs);feat.osm_id=feature.osm_id;return this.createXML['linestring'].apply(this,[feat]);}},serializeTags:function(feature,node){for(var key in feature.attributes){var tag=this.createElementNS(null,\"tag\");tag.setAttribute(\"k\",key);tag.setAttribute(\"v\",feature.attributes[key]);node.appendChild(tag);}},setState:function(feature,node){if(feature.state){var state=null;switch(feature.state){case OpenLayers.State.UPDATE:state=\"modify\";case OpenLayers.State.DELETE:state=\"delete\";}\nif(state){node.setAttribute(\"action\",state);}}},CLASS_NAME:\"OpenLayers.Format.OSM\"});OpenLayers.Geometry.MultiPolygon=OpenLayers.Class(OpenLayers.Geometry.Collection,{componentTypes:[\"OpenLayers.Geometry.Polygon\"],initialize:function(components){OpenLayers.Geometry.Collection.prototype.initialize.apply(this,arguments);},CLASS_NAME:\"OpenLayers.Geometry.MultiPolygon\"});OpenLayers.Handler.Polygon=OpenLayers.Class(OpenLayers.Handler.Path,{polygon:null,initialize:function(control,callbacks,options){OpenLayers.Handler.Path.prototype.initialize.apply(this,arguments);},createFeature:function(pixel){var lonlat=this.control.map.getLonLatFromPixel(pixel);this.point=new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(lonlat.lon,lonlat.lat));this.line=new OpenLayers.Feature.Vector(new OpenLayers.Geometry.LinearRing([this.point.geometry]));this.polygon=new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Polygon([this.line.geometry]));this.callback(\"create\",[this.point.geometry,this.getSketch()]);this.point.geometry.clearBounds();this.layer.addFeatures([this.polygon,this.point],{silent:true});},destroyFeature:function(){OpenLayers.Handler.Path.prototype.destroyFeature.apply(this);this.polygon=null;},drawFeature:function(){this.layer.drawFeature(this.polygon,this.style);this.layer.drawFeature(this.point,this.style);},getSketch:function(){return this.polygon;},getGeometry:function(){var geometry=this.polygon&&this.polygon.geometry;if(geometry&&this.multi){geometry=new OpenLayers.Geometry.MultiPolygon([geometry]);}\nreturn geometry;},dblclick:function(evt){if(!this.freehandMode(evt)){var index=this.line.geometry.components.length-2;this.line.geometry.removeComponent(this.line.geometry.components[index]);this.removePoint();this.finalize();}\nreturn false;},CLASS_NAME:\"OpenLayers.Handler.Polygon\"});OpenLayers.Control.EditingToolbar=OpenLayers.Class(OpenLayers.Control.Panel,{initialize:function(layer,options){OpenLayers.Control.Panel.prototype.initialize.apply(this,[options]);this.addControls([new OpenLayers.Control.Navigation()]);var controls=[new OpenLayers.Control.DrawFeature(layer,OpenLayers.Handler.Point,{'displayClass':'olControlDrawFeaturePoint'}),new OpenLayers.Control.DrawFeature(layer,OpenLayers.Handler.Path,{'displayClass':'olControlDrawFeaturePath'}),new OpenLayers.Control.DrawFeature(layer,OpenLayers.Handler.Polygon,{'displayClass':'olControlDrawFeaturePolygon'})];this.addControls(controls);},draw:function(){var div=OpenLayers.Control.Panel.prototype.draw.apply(this,arguments);this.activateControl(this.controls[0]);return div;},CLASS_NAME:\"OpenLayers.Control.EditingToolbar\"});OpenLayers.Control.SLDSelect=OpenLayers.Class(OpenLayers.Control,{EVENT_TYPES:[\"selected\"],clearOnDeactivate:false,layers:null,callbacks:null,selectionSymbolizer:{'Polygon':{fillColor:'#FF0000',stroke:false},'Line':{strokeColor:'#FF0000',strokeWidth:2},'Point':{graphicName:'square',fillColor:'#FF0000',pointRadius:5}},layerOptions:null,handlerOptions:null,sketchStyle:null,wfsCache:{},layerCache:{},initialize:function(handler,options){this.EVENT_TYPES=OpenLayers.Control.SLDSelect.prototype.EVENT_TYPES.concat(OpenLayers.Control.prototype.EVENT_TYPES);OpenLayers.Control.prototype.initialize.apply(this,[options]);this.callbacks=OpenLayers.Util.extend({done:this.select,click:this.select},this.callbacks);this.handlerOptions=this.handlerOptions||{};this.layerOptions=OpenLayers.Util.applyDefaults(this.layerOptions,{displayInLayerSwitcher:false});if(this.sketchStyle){this.handlerOptions.layerOptions=OpenLayers.Util.applyDefaults(this.handlerOptions.layerOptions,{styleMap:new OpenLayers.StyleMap({\"default\":this.sketchStyle})});}\nthis.handler=new handler(this,this.callbacks,this.handlerOptions);},destroy:function(){for(var key in this.layerCache){delete this.layerCache[key];}\nfor(var key in this.wfsCache){delete this.wfsCache[key];}\nOpenLayers.Control.prototype.destroy.apply(this,arguments);},coupleLayerVisiblity:function(evt){this.setVisibility(evt.object.getVisibility());},createSelectionLayer:function(source){var selectionLayer;if(!this.layerCache[source.id]){selectionLayer=new OpenLayers.Layer.WMS.Post(source.name,source.url,source.params,OpenLayers.Util.applyDefaults(this.layerOptions,source.getOptions()));this.layerCache[source.id]=selectionLayer;if(this.layerOptions.displayInLayerSwitcher===false){source.events.on({\"visibilitychanged\":this.coupleLayerVisiblity,scope:selectionLayer});}\nthis.map.addLayer(selectionLayer);}else{selectionLayer=this.layerCache[source.id];}\nreturn selectionLayer;},createSLD:function(layer,filters,geometryAttributes){var sld={version:\"1.0.0\",namedLayers:{}};var layerNames=[layer.params.LAYERS].join(\",\").split(\",\");for(var i=0,len=layerNames.length;i<len;i++){var name=layerNames[i];sld.namedLayers[name]={name:name,userStyles:[]};var symbolizer=this.selectionSymbolizer;var geometryAttribute=geometryAttributes[i];if(geometryAttribute.type.indexOf('Polygon')>=0){symbolizer={Polygon:this.selectionSymbolizer['Polygon']};}else if(geometryAttribute.type.indexOf('LineString')>=0){symbolizer={Line:this.selectionSymbolizer['Line']};}else if(geometryAttribute.type.indexOf('Point')>=0){symbolizer={Point:this.selectionSymbolizer['Point']};}\nvar filter=filters[i];sld.namedLayers[name].userStyles.push({name:'default',rules:[new OpenLayers.Rule({symbolizer:symbolizer,filter:filter,maxScaleDenominator:layer.options.minScale})]});}\nreturn new OpenLayers.Format.SLD().write(sld);},parseDescribeLayer:function(request){var format=new OpenLayers.Format.WMSDescribeLayer();var doc=request.responseXML;if(!doc||!doc.documentElement){doc=request.responseText;}\nvar describeLayer=format.read(doc);var typeNames=[];var url=null;for(var i=0,len=describeLayer.length;i<len;i++){if(describeLayer[i].owsType==\"WFS\"){typeNames.push(describeLayer[i].typeName);url=describeLayer[i].owsURL;}}\nvar options={url:url,params:{SERVICE:\"WFS\",TYPENAME:typeNames.toString(),REQUEST:\"DescribeFeatureType\",VERSION:\"1.0.0\"},callback:function(request){var format=new OpenLayers.Format.WFSDescribeFeatureType();var doc=request.responseXML;if(!doc||!doc.documentElement){doc=request.responseText;}\nvar describeFeatureType=format.read(doc);this.control.wfsCache[this.layer.id]=describeFeatureType;this.control._queue&&this.control.applySelection();},scope:this};OpenLayers.Request.GET(options);},getGeometryAttributes:function(layer){var result=[];var cache=this.wfsCache[layer.id];for(var i=0,len=cache.featureTypes.length;i<len;i++){var typeName=cache.featureTypes[i];var properties=typeName.properties;for(var j=0,lenj=properties.length;j<lenj;j++){var property=properties[j];var type=property.type;if((type.indexOf('LineString')>=0)||(type.indexOf('GeometryAssociationType')>=0)||(type.indexOf('GeometryPropertyType')>=0)||(type.indexOf('Point')>=0)||(type.indexOf('Polygon')>=0)){result.push(property);}}}\nreturn result;},activate:function(){var activated=OpenLayers.Control.prototype.activate.call(this);if(activated){for(var i=0,len=this.layers.length;i<len;i++){var layer=this.layers[i];if(layer&&!this.wfsCache[layer.id]){var options={url:layer.url,params:{SERVICE:\"WMS\",VERSION:layer.params.VERSION,LAYERS:layer.params.LAYERS,REQUEST:\"DescribeLayer\"},callback:this.parseDescribeLayer,scope:{layer:layer,control:this}};OpenLayers.Request.GET(options);}}}\nreturn activated;},deactivate:function(){var deactivated=OpenLayers.Control.prototype.deactivate.call(this);if(deactivated){for(var i=0,len=this.layers.length;i<len;i++){var layer=this.layers[i];if(layer&&this.clearOnDeactivate===true){var layerCache=this.layerCache;var selectionLayer=layerCache[layer.id];if(selectionLayer){layer.events.un({\"visibilitychanged\":this.coupleLayerVisiblity,scope:selectionLayer});selectionLayer.destroy();delete layerCache[layer.id];}}}}\nreturn deactivated;},setLayers:function(layers){if(this.active){this.deactivate();this.layers=layers;this.activate();}else{this.layers=layers;}},createFilter:function(geometryAttribute,geometry){var filter=null;if(this.handler instanceof OpenLayers.Handler.RegularPolygon){if(this.handler.irregular===true){filter=new OpenLayers.Filter.Spatial({type:OpenLayers.Filter.Spatial.BBOX,property:geometryAttribute.name,value:geometry.getBounds()});}else{filter=new OpenLayers.Filter.Spatial({type:OpenLayers.Filter.Spatial.INTERSECTS,property:geometryAttribute.name,value:geometry});}}else if(this.handler instanceof OpenLayers.Handler.Polygon){filter=new OpenLayers.Filter.Spatial({type:OpenLayers.Filter.Spatial.INTERSECTS,property:geometryAttribute.name,value:geometry});}else if(this.handler instanceof OpenLayers.Handler.Path){if(geometryAttribute.type.indexOf('Point')>=0){filter=new OpenLayers.Filter.Spatial({type:OpenLayers.Filter.Spatial.DWITHIN,property:geometryAttribute.name,distance:this.map.getExtent().getWidth()*0.01,distanceUnits:this.map.getUnits(),value:geometry});}else{filter=new OpenLayers.Filter.Spatial({type:OpenLayers.Filter.Spatial.INTERSECTS,property:geometryAttribute.name,value:geometry});}}else if(this.handler instanceof OpenLayers.Handler.Click){if(geometryAttribute.type.indexOf('Polygon')>=0){filter=new OpenLayers.Filter.Spatial({type:OpenLayers.Filter.Spatial.INTERSECTS,property:geometryAttribute.name,value:geometry});}else{filter=new OpenLayers.Filter.Spatial({type:OpenLayers.Filter.Spatial.DWITHIN,property:geometryAttribute.name,distance:this.map.getExtent().getWidth()*0.01,distanceUnits:this.map.getUnits(),value:geometry});}}\nreturn filter;},select:function(geometry){this._queue=function(){for(var i=0,len=this.layers.length;i<len;i++){var layer=this.layers[i];var geometryAttributes=this.getGeometryAttributes(layer);var filters=[];for(var j=0,lenj=geometryAttributes.length;j<lenj;j++){var geometryAttribute=geometryAttributes[j];if(geometryAttribute!==null){if(!(geometry instanceof OpenLayers.Geometry)){var point=this.map.getLonLatFromPixel(geometry.xy);geometry=new OpenLayers.Geometry.Point(point.lon,point.lat);}\nvar filter=this.createFilter(geometryAttribute,geometry);if(filter!==null){filters.push(filter);}}}\nvar selectionLayer=this.createSelectionLayer(layer);var sld=this.createSLD(layer,filters,geometryAttributes);this.events.triggerEvent(\"selected\",{layer:layer,filters:filters});selectionLayer.mergeNewParams({SLD_BODY:sld});delete this._queue;}};this.applySelection();},applySelection:function(){var canApply=true;for(var i=0,len=this.layers.length;i<len;i++){if(!this.wfsCache[this.layers[i].id]){canApply=false;break;}}\ncanApply&&this._queue.call(this);},CLASS_NAME:\"OpenLayers.Control.SLDSelect\"});OpenLayers.Format.ArcXML=OpenLayers.Class(OpenLayers.Format.XML,{fontStyleKeys:['antialiasing','blockout','font','fontcolor','fontsize','fontstyle','glowing','interval','outline','printmode','shadow','transparency'],request:null,response:null,initialize:function(options){this.request=new OpenLayers.Format.ArcXML.Request();this.response=new OpenLayers.Format.ArcXML.Response();if(options){if(options.requesttype==\"feature\"){this.request.get_image=null;var qry=this.request.get_feature.query;this.addCoordSys(qry.featurecoordsys,options.featureCoordSys);this.addCoordSys(qry.filtercoordsys,options.filterCoordSys);if(options.polygon){qry.isspatial=true;qry.spatialfilter.polygon=options.polygon;}else if(options.envelope){qry.isspatial=true;qry.spatialfilter.envelope={minx:0,miny:0,maxx:0,maxy:0};this.parseEnvelope(qry.spatialfilter.envelope,options.envelope);}}else if(options.requesttype==\"image\"){this.request.get_feature=null;var props=this.request.get_image.properties;this.parseEnvelope(props.envelope,options.envelope);this.addLayers(props.layerlist,options.layers);this.addImageSize(props.imagesize,options.tileSize);this.addCoordSys(props.featurecoordsys,options.featureCoordSys);this.addCoordSys(props.filtercoordsys,options.filterCoordSys);}else{this.request=null;}}\nOpenLayers.Format.XML.prototype.initialize.apply(this,[options]);},parseEnvelope:function(env,arr){if(arr&&arr.length==4){env.minx=arr[0];env.miny=arr[1];env.maxx=arr[2];env.maxy=arr[3];}},addLayers:function(ll,lyrs){for(var lind=0,len=lyrs.length;lind<len;lind++){ll.push(lyrs[lind]);}},addImageSize:function(imsize,olsize){if(olsize!==null){imsize.width=olsize.w;imsize.height=olsize.h;imsize.printwidth=olsize.w;imsize.printheight=olsize.h;}},addCoordSys:function(featOrFilt,fsys){if(typeof fsys==\"string\"){featOrFilt.id=parseInt(fsys);featOrFilt.string=fsys;}\nelse if(typeof fsys==\"object\"&&fsys.proj!==null){featOrFilt.id=fsys.proj.srsProjNumber;featOrFilt.string=fsys.proj.srsCode;}else{featOrFilt=fsys;}},iserror:function(data){var ret=null;if(!data){ret=(this.response.error!=='');}else{data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);var errorNodes=data.documentElement.getElementsByTagName(\"ERROR\");ret=(errorNodes!==null&&errorNodes.length>0);}\nreturn ret;},read:function(data){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nvar arcNode=null;if(data&&data.documentElement){if(data.documentElement.nodeName==\"ARCXML\"){arcNode=data.documentElement;}else{arcNode=data.documentElement.getElementsByTagName(\"ARCXML\")[0];}}\nif(!arcNode||arcNode.firstChild.nodeName==='parsererror'){var error,source;try{error=data.firstChild.nodeValue;source=data.firstChild.childNodes[1].firstChild.nodeValue;}catch(err){}\nthrow{message:\"Error parsing the ArcXML request\",error:error,source:source};}\nvar response=this.parseResponse(arcNode);return response;},write:function(request){if(!request){request=this.request;}\nvar root=this.createElementNS(\"\",\"ARCXML\");root.setAttribute(\"version\",\"1.1\");var reqElem=this.createElementNS(\"\",\"REQUEST\");if(request.get_image!=null){var getElem=this.createElementNS(\"\",\"GET_IMAGE\");reqElem.appendChild(getElem);var propElem=this.createElementNS(\"\",\"PROPERTIES\");getElem.appendChild(propElem);var props=request.get_image.properties;if(props.featurecoordsys!=null){var feat=this.createElementNS(\"\",\"FEATURECOORDSYS\");propElem.appendChild(feat);if(props.featurecoordsys.id===0){feat.setAttribute(\"string\",props.featurecoordsys['string']);}\nelse{feat.setAttribute(\"id\",props.featurecoordsys.id);}}\nif(props.filtercoordsys!=null){var filt=this.createElementNS(\"\",\"FILTERCOORDSYS\");propElem.appendChild(filt);if(props.filtercoordsys.id===0){filt.setAttribute(\"string\",props.filtercoordsys.string);}\nelse{filt.setAttribute(\"id\",props.filtercoordsys.id);}}\nif(props.envelope!=null){var env=this.createElementNS(\"\",\"ENVELOPE\");propElem.appendChild(env);env.setAttribute(\"minx\",props.envelope.minx);env.setAttribute(\"miny\",props.envelope.miny);env.setAttribute(\"maxx\",props.envelope.maxx);env.setAttribute(\"maxy\",props.envelope.maxy);}\nvar imagesz=this.createElementNS(\"\",\"IMAGESIZE\");propElem.appendChild(imagesz);imagesz.setAttribute(\"height\",props.imagesize.height);imagesz.setAttribute(\"width\",props.imagesize.width);if(props.imagesize.height!=props.imagesize.printheight||props.imagesize.width!=props.imagesize.printwidth){imagesz.setAttribute(\"printheight\",props.imagesize.printheight);imagesz.setArrtibute(\"printwidth\",props.imagesize.printwidth);}\nif(props.background!=null){var backgrnd=this.createElementNS(\"\",\"BACKGROUND\");propElem.appendChild(backgrnd);backgrnd.setAttribute(\"color\",props.background.color.r+\",\"+\nprops.background.color.g+\",\"+\nprops.background.color.b);if(props.background.transcolor!==null){backgrnd.setAttribute(\"transcolor\",props.background.transcolor.r+\",\"+\nprops.background.transcolor.g+\",\"+\nprops.background.transcolor.b);}}\nif(props.layerlist!=null&&props.layerlist.length>0){var layerlst=this.createElementNS(\"\",\"LAYERLIST\");propElem.appendChild(layerlst);for(var ld=0;ld<props.layerlist.length;ld++){var ldef=this.createElementNS(\"\",\"LAYERDEF\");layerlst.appendChild(ldef);ldef.setAttribute(\"id\",props.layerlist[ld].id);ldef.setAttribute(\"visible\",props.layerlist[ld].visible);if(typeof props.layerlist[ld].query==\"object\"){var query=props.layerlist[ld].query;if(query.where.length<0){continue;}\nvar queryElem=null;if(typeof query.spatialfilter==\"boolean\"&&query.spatialfilter){queryElem=this.createElementNS(\"\",\"SPATIALQUERY\");}\nelse{queryElem=this.createElementNS(\"\",\"QUERY\");}\nqueryElem.setAttribute(\"where\",query.where);if(typeof query.accuracy==\"number\"&&query.accuracy>0){queryElem.setAttribute(\"accuracy\",query.accuracy);}\nif(typeof query.featurelimit==\"number\"&&query.featurelimit<2000){queryElem.setAttribute(\"featurelimit\",query.featurelimit);}\nif(typeof query.subfields==\"string\"&&query.subfields!=\"#ALL#\"){queryElem.setAttribute(\"subfields\",query.subfields);}\nif(typeof query.joinexpression==\"string\"&&query.joinexpression.length>0){queryElem.setAttribute(\"joinexpression\",query.joinexpression);}\nif(typeof query.jointables==\"string\"&&query.jointables.length>0){queryElem.setAttribute(\"jointables\",query.jointables);}\nldef.appendChild(queryElem);}\nif(typeof props.layerlist[ld].renderer==\"object\"){this.addRenderer(ldef,props.layerlist[ld].renderer);}}}}else if(request.get_feature!=null){var getElem=this.createElementNS(\"\",\"GET_FEATURES\");getElem.setAttribute(\"outputmode\",\"newxml\");getElem.setAttribute(\"checkesc\",\"true\");if(request.get_feature.geometry){getElem.setAttribute(\"geometry\",request.get_feature.geometry);}\nelse{getElem.setAttribute(\"geometry\",\"false\");}\nif(request.get_feature.compact){getElem.setAttribute(\"compact\",request.get_feature.compact);}\nif(request.get_feature.featurelimit==\"number\"){getElem.setAttribute(\"featurelimit\",request.get_feature.featurelimit);}\ngetElem.setAttribute(\"globalenvelope\",\"true\");reqElem.appendChild(getElem);if(request.get_feature.layer!=null&&request.get_feature.layer.length>0){var lyrElem=this.createElementNS(\"\",\"LAYER\");lyrElem.setAttribute(\"id\",request.get_feature.layer);getElem.appendChild(lyrElem);}\nvar fquery=request.get_feature.query;if(fquery!=null){var qElem=null;if(fquery.isspatial){qElem=this.createElementNS(\"\",\"SPATIALQUERY\");}else{qElem=this.createElementNS(\"\",\"QUERY\");}\ngetElem.appendChild(qElem);if(typeof fquery.accuracy==\"number\"){qElem.setAttribute(\"accuracy\",fquery.accuracy);}\nif(fquery.featurecoordsys!=null){var fcsElem1=this.createElementNS(\"\",\"FEATURECOORDSYS\");if(fquery.featurecoordsys.id==0){fcsElem1.setAttribute(\"string\",fquery.featurecoordsys.string);}else{fcsElem1.setAttribute(\"id\",fquery.featurecoordsys.id);}\nqElem.appendChild(fcsElem1);}\nif(fquery.filtercoordsys!=null){var fcsElem2=this.createElementNS(\"\",\"FILTERCOORDSYS\");if(fquery.filtercoordsys.id===0){fcsElem2.setAttribute(\"string\",fquery.filtercoordsys.string);}else{fcsElem2.setAttribute(\"id\",fquery.filtercoordsys.id);}\nqElem.appendChild(fcsElem2);}\nif(fquery.buffer>0){var bufElem=this.createElementNS(\"\",\"BUFFER\");bufElem.setAttribute(\"distance\",fquery.buffer);qElem.appendChild(bufElem);}\nif(fquery.isspatial){var spfElem=this.createElementNS(\"\",\"SPATIALFILTER\");spfElem.setAttribute(\"relation\",fquery.spatialfilter.relation);qElem.appendChild(spfElem);if(fquery.spatialfilter.envelope){var envElem=this.createElementNS(\"\",\"ENVELOPE\");envElem.setAttribute(\"minx\",fquery.spatialfilter.envelope.minx);envElem.setAttribute(\"miny\",fquery.spatialfilter.envelope.miny);envElem.setAttribute(\"maxx\",fquery.spatialfilter.envelope.maxx);envElem.setAttribute(\"maxy\",fquery.spatialfilter.envelope.maxy);spfElem.appendChild(envElem);}else if(typeof fquery.spatialfilter.polygon==\"object\"){spfElem.appendChild(this.writePolygonGeometry(fquery.spatialfilter.polygon));}}\nif(fquery.where!=null&&fquery.where.length>0){qElem.setAttribute(\"where\",fquery.where);}}}\nroot.appendChild(reqElem);return OpenLayers.Format.XML.prototype.write.apply(this,[root]);},addGroupRenderer:function(ldef,toprenderer){var topRelem=this.createElementNS(\"\",\"GROUPRENDERER\");ldef.appendChild(topRelem);for(var rind=0;rind<toprenderer.length;rind++){var renderer=toprenderer[rind];this.addRenderer(topRelem,renderer);}},addRenderer:function(topRelem,renderer){if(renderer instanceof Array){this.addGroupRenderer(topRelem,renderer);}else{var renderElem=this.createElementNS(\"\",renderer.type.toUpperCase()+\"RENDERER\");topRelem.appendChild(renderElem);if(renderElem.tagName==\"VALUEMAPRENDERER\"){this.addValueMapRenderer(renderElem,renderer);}else if(renderElem.tagName==\"VALUEMAPLABELRENDERER\"){this.addValueMapLabelRenderer(renderElem,renderer);}else if(renderElem.tagName==\"SIMPLELABELRENDERER\"){this.addSimpleLabelRenderer(renderElem,renderer);}else if(renderElem.tagName==\"SCALEDEPENDENTRENDERER\"){this.addScaleDependentRenderer(renderElem,renderer);}}},addScaleDependentRenderer:function(renderElem,renderer){if(typeof renderer.lower==\"string\"||typeof renderer.lower==\"number\"){renderElem.setAttribute(\"lower\",renderer.lower);}\nif(typeof renderer.upper==\"string\"||typeof renderer.upper==\"number\"){renderElem.setAttribute(\"upper\",renderer.upper);}\nthis.addRenderer(renderElem,renderer.renderer);},addValueMapLabelRenderer:function(renderElem,renderer){renderElem.setAttribute(\"lookupfield\",renderer.lookupfield);renderElem.setAttribute(\"labelfield\",renderer.labelfield);if(typeof renderer.exacts==\"object\"){for(var ext=0,extlen=renderer.exacts.length;ext<extlen;ext++){var exact=renderer.exacts[ext];var eelem=this.createElementNS(\"\",\"EXACT\");if(typeof exact.value==\"string\"){eelem.setAttribute(\"value\",exact.value);}\nif(typeof exact.label==\"string\"){eelem.setAttribute(\"label\",exact.label);}\nif(typeof exact.method==\"string\"){eelem.setAttribute(\"method\",exact.method);}\nrenderElem.appendChild(eelem);if(typeof exact.symbol==\"object\"){var selem=null;if(exact.symbol.type==\"text\"){selem=this.createElementNS(\"\",\"TEXTSYMBOL\");}\nif(selem!=null){var keys=this.fontStyleKeys;for(var i=0,len=keys.length;i<len;i++){var key=keys[i];if(exact.symbol[key]){selem.setAttribute(key,exact.symbol[key]);}}\neelem.appendChild(selem);}}}}},addValueMapRenderer:function(renderElem,renderer){renderElem.setAttribute(\"lookupfield\",renderer.lookupfield);if(typeof renderer.ranges==\"object\"){for(var rng=0,rnglen=renderer.ranges.length;rng<rnglen;rng++){var range=renderer.ranges[rng];var relem=this.createElementNS(\"\",\"RANGE\");relem.setAttribute(\"lower\",range.lower);relem.setAttribute(\"upper\",range.upper);renderElem.appendChild(relem);if(typeof range.symbol==\"object\"){var selem=null;if(range.symbol.type==\"simplepolygon\"){selem=this.createElementNS(\"\",\"SIMPLEPOLYGONSYMBOL\");}\nif(selem!=null){if(typeof range.symbol.boundarycolor==\"string\"){selem.setAttribute(\"boundarycolor\",range.symbol.boundarycolor);}\nif(typeof range.symbol.fillcolor==\"string\"){selem.setAttribute(\"fillcolor\",range.symbol.fillcolor);}\nif(typeof range.symbol.filltransparency==\"number\"){selem.setAttribute(\"filltransparency\",range.symbol.filltransparency);}\nrelem.appendChild(selem);}}}}else if(typeof renderer.exacts==\"object\"){for(var ext=0,extlen=renderer.exacts.length;ext<extlen;ext++){var exact=renderer.exacts[ext];var eelem=this.createElementNS(\"\",\"EXACT\");if(typeof exact.value==\"string\"){eelem.setAttribute(\"value\",exact.value);}\nif(typeof exact.label==\"string\"){eelem.setAttribute(\"label\",exact.label);}\nif(typeof exact.method==\"string\"){eelem.setAttribute(\"method\",exact.method);}\nrenderElem.appendChild(eelem);if(typeof exact.symbol==\"object\"){var selem=null;if(exact.symbol.type==\"simplemarker\"){selem=this.createElementNS(\"\",\"SIMPLEMARKERSYMBOL\");}\nif(selem!=null){if(typeof exact.symbol.antialiasing==\"string\"){selem.setAttribute(\"antialiasing\",exact.symbol.antialiasing);}\nif(typeof exact.symbol.color==\"string\"){selem.setAttribute(\"color\",exact.symbol.color);}\nif(typeof exact.symbol.outline==\"string\"){selem.setAttribute(\"outline\",exact.symbol.outline);}\nif(typeof exact.symbol.overlap==\"string\"){selem.setAttribute(\"overlap\",exact.symbol.overlap);}\nif(typeof exact.symbol.shadow==\"string\"){selem.setAttribute(\"shadow\",exact.symbol.shadow);}\nif(typeof exact.symbol.transparency==\"number\"){selem.setAttribute(\"transparency\",exact.symbol.transparency);}\nif(typeof exact.symbol.usecentroid==\"string\"){selem.setAttribute(\"usecentroid\",exact.symbol.usecentroid);}\nif(typeof exact.symbol.width==\"number\"){selem.setAttribute(\"width\",exact.symbol.width);}\neelem.appendChild(selem);}}}}},addSimpleLabelRenderer:function(renderElem,renderer){renderElem.setAttribute(\"field\",renderer.field);var keys=['featureweight','howmanylabels','labelbufferratio','labelpriorities','labelweight','linelabelposition','rotationalangles'];for(var i=0,len=keys.length;i<len;i++){var key=keys[i];if(renderer[key]){renderElem.setAttribute(key,renderer[key]);}}\nif(renderer.symbol.type==\"text\"){var symbol=renderer.symbol;var selem=this.createElementNS(\"\",\"TEXTSYMBOL\");renderElem.appendChild(selem);var keys=this.fontStyleKeys;for(var i=0,len=keys.length;i<len;i++){var key=keys[i];if(symbol[key]){selem.setAttribute(key,renderer[key]);}}}},writePolygonGeometry:function(polygon){if(!(polygon instanceof OpenLayers.Geometry.Polygon)){throw{message:'Cannot write polygon geometry to ArcXML with an '+\npolygon.CLASS_NAME+' object.',geometry:polygon};}\nvar polyElem=this.createElementNS(\"\",\"POLYGON\");for(var ln=0,lnlen=polygon.components.length;ln<lnlen;ln++){var ring=polygon.components[ln];var ringElem=this.createElementNS(\"\",\"RING\");for(var rn=0,rnlen=ring.components.length;rn<rnlen;rn++){var point=ring.components[rn];var pointElem=this.createElementNS(\"\",\"POINT\");pointElem.setAttribute(\"x\",point.x);pointElem.setAttribute(\"y\",point.y);ringElem.appendChild(pointElem);}\npolyElem.appendChild(ringElem);}\nreturn polyElem;},parseResponse:function(data){if(typeof data==\"string\"){var newData=new OpenLayers.Format.XML();data=newData.read(data);}\nvar response=new OpenLayers.Format.ArcXML.Response();var errorNode=data.getElementsByTagName(\"ERROR\");if(errorNode!=null&&errorNode.length>0){response.error=this.getChildValue(errorNode,\"Unknown error.\");}else{var responseNode=data.getElementsByTagName(\"RESPONSE\");if(responseNode==null||responseNode.length==0){response.error=\"No RESPONSE tag found in ArcXML response.\";return response;}\nvar rtype=responseNode[0].firstChild.nodeName;if(rtype==\"#text\"){rtype=responseNode[0].firstChild.nextSibling.nodeName;}\nif(rtype==\"IMAGE\"){var envelopeNode=data.getElementsByTagName(\"ENVELOPE\");var outputNode=data.getElementsByTagName(\"OUTPUT\");if(envelopeNode==null||envelopeNode.length==0){response.error=\"No ENVELOPE tag found in ArcXML response.\";}else if(outputNode==null||outputNode.length==0){response.error=\"No OUTPUT tag found in ArcXML response.\";}else{var envAttr=this.parseAttributes(envelopeNode[0]);var outputAttr=this.parseAttributes(outputNode[0]);if(typeof outputAttr.type==\"string\"){response.image={envelope:envAttr,output:{type:outputAttr.type,data:this.getChildValue(outputNode[0])}};}else{response.image={envelope:envAttr,output:outputAttr};}}}else if(rtype==\"FEATURES\"){var features=responseNode[0].getElementsByTagName(\"FEATURES\");var featureCount=features[0].getElementsByTagName(\"FEATURECOUNT\");response.features.featurecount=featureCount[0].getAttribute(\"count\");if(response.features.featurecount>0){var envelope=features[0].getElementsByTagName(\"ENVELOPE\");response.features.envelope=this.parseAttributes(envelope[0],typeof(0));var featureList=features[0].getElementsByTagName(\"FEATURE\");for(var fn=0;fn<featureList.length;fn++){var feature=new OpenLayers.Feature.Vector();var fields=featureList[fn].getElementsByTagName(\"FIELD\");for(var fdn=0;fdn<fields.length;fdn++){var fieldName=fields[fdn].getAttribute(\"name\");var fieldValue=fields[fdn].getAttribute(\"value\");feature.attributes[fieldName]=fieldValue;}\nvar geom=featureList[fn].getElementsByTagName(\"POLYGON\");if(geom.length>0){var ring=geom[0].getElementsByTagName(\"RING\");var polys=[];for(var rn=0;rn<ring.length;rn++){var linearRings=[];linearRings.push(this.parsePointGeometry(ring[rn]));var holes=ring[rn].getElementsByTagName(\"HOLE\");for(var hn=0;hn<holes.length;hn++){linearRings.push(this.parsePointGeometry(holes[hn]));}\nholes=null;polys.push(new OpenLayers.Geometry.Polygon(linearRings));linearRings=null;}\nring=null;if(polys.length==1){feature.geometry=polys[0];}else\n{feature.geometry=new OpenLayers.Geometry.MultiPolygon(polys);}}\nresponse.features.feature.push(feature);}}}else{response.error=\"Unidentified response type.\";}}\nreturn response;},parseAttributes:function(node,type){var attributes={};for(var attr=0;attr<node.attributes.length;attr++){if(type==\"number\"){attributes[node.attributes[attr].nodeName]=parseFloat(node.attributes[attr].nodeValue);}else{attributes[node.attributes[attr].nodeName]=node.attributes[attr].nodeValue;}}\nreturn attributes;},parsePointGeometry:function(node){var ringPoints=[];var coords=node.getElementsByTagName(\"COORDS\");if(coords.length>0){var coordArr=this.getChildValue(coords[0]);coordArr=coordArr.split(/;/);for(var cn=0;cn<coordArr.length;cn++){var coordItems=coordArr[cn].split(/ /);ringPoints.push(new OpenLayers.Geometry.Point(parseFloat(coordItems[0]),parseFloat(coordItems[1])));}\ncoords=null;}else{var point=node.getElementsByTagName(\"POINT\");if(point.length>0){for(var pn=0;pn<point.length;pn++){ringPoints.push(new OpenLayers.Geometry.Point(parseFloat(point[pn].getAttribute(\"x\")),parseFloat(point[pn].getAttribute(\"y\"))));}}\npoint=null;}\nreturn new OpenLayers.Geometry.LinearRing(ringPoints);},CLASS_NAME:\"OpenLayers.Format.ArcXML\"});OpenLayers.Format.ArcXML.Request=OpenLayers.Class({initialize:function(params){var defaults={get_image:{properties:{background:null,draw:true,envelope:{minx:0,miny:0,maxx:0,maxy:0},featurecoordsys:{id:0,string:\"\",datumtransformid:0,datumtransformstring:\"\"},filtercoordsys:{id:0,string:\"\",datumtransformid:0,datumtransformstring:\"\"},imagesize:{height:0,width:0,dpi:96,printheight:0,printwidth:0,scalesymbols:false},layerlist:[],output:{baseurl:\"\",legendbaseurl:\"\",legendname:\"\",legendpath:\"\",legendurl:\"\",name:\"\",path:\"\",type:\"jpg\",url:\"\"}}},get_feature:{layer:\"\",query:{isspatial:false,featurecoordsys:{id:0,string:\"\",datumtransformid:0,datumtransformstring:\"\"},filtercoordsys:{id:0,string:\"\",datumtransformid:0,datumtransformstring:\"\"},buffer:0,where:\"\",spatialfilter:{relation:\"envelope_intersection\",envelope:null}}},environment:{separators:{cs:\" \",ts:\";\"}},layer:[],workspaces:[]};return OpenLayers.Util.extend(this,defaults);},CLASS_NAME:\"OpenLayers.Format.ArcXML.Request\"});OpenLayers.Format.ArcXML.Response=OpenLayers.Class({initialize:function(params){var defaults={image:{envelope:null,output:''},features:{featurecount:0,envelope:null,feature:[]},error:''};return OpenLayers.Util.extend(this,defaults);},CLASS_NAME:\"OpenLayers.Format.ArcXML.Response\"});OpenLayers.Format.GML=OpenLayers.Class(OpenLayers.Format.XML,{featureNS:\"http://mapserver.gis.umn.edu/mapserver\",featurePrefix:\"feature\",featureName:\"featureMember\",layerName:\"features\",geometryName:\"geometry\",collectionName:\"FeatureCollection\",gmlns:\"http://www.opengis.net/gml\",extractAttributes:true,xy:true,initialize:function(options){this.regExes={trimSpace:(/^\\s*|\\s*$/g),removeSpace:(/\\s*/g),splitSpace:(/\\s+/),trimComma:(/\\s*,\\s*/g)};OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);},read:function(data){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nvar featureNodes=this.getElementsByTagNameNS(data.documentElement,this.gmlns,this.featureName);var features=[];for(var i=0;i<featureNodes.length;i++){var feature=this.parseFeature(featureNodes[i]);if(feature){features.push(feature);}}\nreturn features;},parseFeature:function(node){var order=[\"MultiPolygon\",\"Polygon\",\"MultiLineString\",\"LineString\",\"MultiPoint\",\"Point\",\"Envelope\"];var type,nodeList,geometry,parser;for(var i=0;i<order.length;++i){type=order[i];nodeList=this.getElementsByTagNameNS(node,this.gmlns,type);if(nodeList.length>0){parser=this.parseGeometry[type.toLowerCase()];if(parser){geometry=parser.apply(this,[nodeList[0]]);if(this.internalProjection&&this.externalProjection){geometry.transform(this.externalProjection,this.internalProjection);}}else{OpenLayers.Console.error(OpenLayers.i18n(\"unsupportedGeometryType\",{'geomType':type}));}\nbreak;}}\nvar bounds;var boxNodes=this.getElementsByTagNameNS(node,this.gmlns,\"Box\");for(i=0;i<boxNodes.length;++i){var boxNode=boxNodes[i];var box=this.parseGeometry[\"box\"].apply(this,[boxNode]);var parentNode=boxNode.parentNode;var parentName=parentNode.localName||parentNode.nodeName.split(\":\").pop();if(parentName===\"boundedBy\"){bounds=box;}else{geometry=box.toGeometry();}}\nvar attributes;if(this.extractAttributes){attributes=this.parseAttributes(node);}\nvar feature=new OpenLayers.Feature.Vector(geometry,attributes);feature.bounds=bounds;feature.gml={featureType:node.firstChild.nodeName.split(\":\")[1],featureNS:node.firstChild.namespaceURI,featureNSPrefix:node.firstChild.prefix};var childNode=node.firstChild;var fid;while(childNode){if(childNode.nodeType==1){fid=childNode.getAttribute(\"fid\")||childNode.getAttribute(\"id\");if(fid){break;}}\nchildNode=childNode.nextSibling;}\nfeature.fid=fid;return feature;},parseGeometry:{point:function(node){var nodeList,coordString;var coords=[];var nodeList=this.getElementsByTagNameNS(node,this.gmlns,\"pos\");if(nodeList.length>0){coordString=nodeList[0].firstChild.nodeValue;coordString=coordString.replace(this.regExes.trimSpace,\"\");coords=coordString.split(this.regExes.splitSpace);}\nif(coords.length==0){nodeList=this.getElementsByTagNameNS(node,this.gmlns,\"coordinates\");if(nodeList.length>0){coordString=nodeList[0].firstChild.nodeValue;coordString=coordString.replace(this.regExes.removeSpace,\"\");coords=coordString.split(\",\");}}\nif(coords.length==0){nodeList=this.getElementsByTagNameNS(node,this.gmlns,\"coord\");if(nodeList.length>0){var xList=this.getElementsByTagNameNS(nodeList[0],this.gmlns,\"X\");var yList=this.getElementsByTagNameNS(nodeList[0],this.gmlns,\"Y\");if(xList.length>0&&yList.length>0){coords=[xList[0].firstChild.nodeValue,yList[0].firstChild.nodeValue];}}}\nif(coords.length==2){coords[2]=null;}\nif(this.xy){return new OpenLayers.Geometry.Point(coords[0],coords[1],coords[2]);}\nelse{return new OpenLayers.Geometry.Point(coords[1],coords[0],coords[2]);}},multipoint:function(node){var nodeList=this.getElementsByTagNameNS(node,this.gmlns,\"Point\");var components=[];if(nodeList.length>0){var point;for(var i=0;i<nodeList.length;++i){point=this.parseGeometry.point.apply(this,[nodeList[i]]);if(point){components.push(point);}}}\nreturn new OpenLayers.Geometry.MultiPoint(components);},linestring:function(node,ring){var nodeList,coordString;var coords=[];var points=[];nodeList=this.getElementsByTagNameNS(node,this.gmlns,\"posList\");if(nodeList.length>0){coordString=this.getChildValue(nodeList[0]);coordString=coordString.replace(this.regExes.trimSpace,\"\");coords=coordString.split(this.regExes.splitSpace);var dim=parseInt(nodeList[0].getAttribute(\"dimension\"));var j,x,y,z;for(var i=0;i<coords.length/dim;++i){j=i*dim;x=coords[j];y=coords[j+1];z=(dim==2)?null:coords[j+2];if(this.xy){points.push(new OpenLayers.Geometry.Point(x,y,z));}else{points.push(new OpenLayers.Geometry.Point(y,x,z));}}}\nif(coords.length==0){nodeList=this.getElementsByTagNameNS(node,this.gmlns,\"coordinates\");if(nodeList.length>0){coordString=this.getChildValue(nodeList[0]);coordString=coordString.replace(this.regExes.trimSpace,\"\");coordString=coordString.replace(this.regExes.trimComma,\",\");var pointList=coordString.split(this.regExes.splitSpace);for(var i=0;i<pointList.length;++i){coords=pointList[i].split(\",\");if(coords.length==2){coords[2]=null;}\nif(this.xy){points.push(new OpenLayers.Geometry.Point(coords[0],coords[1],coords[2]));}else{points.push(new OpenLayers.Geometry.Point(coords[1],coords[0],coords[2]));}}}}\nvar line=null;if(points.length!=0){if(ring){line=new OpenLayers.Geometry.LinearRing(points);}else{line=new OpenLayers.Geometry.LineString(points);}}\nreturn line;},multilinestring:function(node){var nodeList=this.getElementsByTagNameNS(node,this.gmlns,\"LineString\");var components=[];if(nodeList.length>0){var line;for(var i=0;i<nodeList.length;++i){line=this.parseGeometry.linestring.apply(this,[nodeList[i]]);if(line){components.push(line);}}}\nreturn new OpenLayers.Geometry.MultiLineString(components);},polygon:function(node){var nodeList=this.getElementsByTagNameNS(node,this.gmlns,\"LinearRing\");var components=[];if(nodeList.length>0){var ring;for(var i=0;i<nodeList.length;++i){ring=this.parseGeometry.linestring.apply(this,[nodeList[i],true]);if(ring){components.push(ring);}}}\nreturn new OpenLayers.Geometry.Polygon(components);},multipolygon:function(node){var nodeList=this.getElementsByTagNameNS(node,this.gmlns,\"Polygon\");var components=[];if(nodeList.length>0){var polygon;for(var i=0;i<nodeList.length;++i){polygon=this.parseGeometry.polygon.apply(this,[nodeList[i]]);if(polygon){components.push(polygon);}}}\nreturn new OpenLayers.Geometry.MultiPolygon(components);},envelope:function(node){var components=[];var coordString;var envelope;var lpoint=this.getElementsByTagNameNS(node,this.gmlns,\"lowerCorner\");if(lpoint.length>0){var coords=[];if(lpoint.length>0){coordString=lpoint[0].firstChild.nodeValue;coordString=coordString.replace(this.regExes.trimSpace,\"\");coords=coordString.split(this.regExes.splitSpace);}\nif(coords.length==2){coords[2]=null;}\nif(this.xy){var lowerPoint=new OpenLayers.Geometry.Point(coords[0],coords[1],coords[2]);}else{var lowerPoint=new OpenLayers.Geometry.Point(coords[1],coords[0],coords[2]);}}\nvar upoint=this.getElementsByTagNameNS(node,this.gmlns,\"upperCorner\");if(upoint.length>0){var coords=[];if(upoint.length>0){coordString=upoint[0].firstChild.nodeValue;coordString=coordString.replace(this.regExes.trimSpace,\"\");coords=coordString.split(this.regExes.splitSpace);}\nif(coords.length==2){coords[2]=null;}\nif(this.xy){var upperPoint=new OpenLayers.Geometry.Point(coords[0],coords[1],coords[2]);}else{var upperPoint=new OpenLayers.Geometry.Point(coords[1],coords[0],coords[2]);}}\nif(lowerPoint&&upperPoint){components.push(new OpenLayers.Geometry.Point(lowerPoint.x,lowerPoint.y));components.push(new OpenLayers.Geometry.Point(upperPoint.x,lowerPoint.y));components.push(new OpenLayers.Geometry.Point(upperPoint.x,upperPoint.y));components.push(new OpenLayers.Geometry.Point(lowerPoint.x,upperPoint.y));components.push(new OpenLayers.Geometry.Point(lowerPoint.x,lowerPoint.y));var ring=new OpenLayers.Geometry.LinearRing(components);envelope=new OpenLayers.Geometry.Polygon([ring]);}\nreturn envelope;},box:function(node){var nodeList=this.getElementsByTagNameNS(node,this.gmlns,\"coordinates\");var coordString;var coords,beginPoint=null,endPoint=null;if(nodeList.length>0){coordString=nodeList[0].firstChild.nodeValue;coords=coordString.split(\" \");if(coords.length==2){beginPoint=coords[0].split(\",\");endPoint=coords[1].split(\",\");}}\nif(beginPoint!==null&&endPoint!==null){return new OpenLayers.Bounds(parseFloat(beginPoint[0]),parseFloat(beginPoint[1]),parseFloat(endPoint[0]),parseFloat(endPoint[1]));}}},parseAttributes:function(node){var attributes={};var childNode=node.firstChild;var children,i,child,grandchildren,grandchild,name,value;while(childNode){if(childNode.nodeType==1){children=childNode.childNodes;for(i=0;i<children.length;++i){child=children[i];if(child.nodeType==1){grandchildren=child.childNodes;if(grandchildren.length==1){grandchild=grandchildren[0];if(grandchild.nodeType==3||grandchild.nodeType==4){name=(child.prefix)?child.nodeName.split(\":\")[1]:child.nodeName;value=grandchild.nodeValue.replace(this.regExes.trimSpace,\"\");attributes[name]=value;}}else{attributes[child.nodeName.split(\":\").pop()]=null;}}}\nbreak;}\nchildNode=childNode.nextSibling;}\nreturn attributes;},write:function(features){if(!(features instanceof Array)){features=[features];}\nvar gml=this.createElementNS(\"http://www.opengis.net/wfs\",\"wfs:\"+this.collectionName);for(var i=0;i<features.length;i++){gml.appendChild(this.createFeatureXML(features[i]));}\nreturn OpenLayers.Format.XML.prototype.write.apply(this,[gml]);},createFeatureXML:function(feature){var geometry=feature.geometry;var geometryNode=this.buildGeometryNode(geometry);var geomContainer=this.createElementNS(this.featureNS,this.featurePrefix+\":\"+\nthis.geometryName);geomContainer.appendChild(geometryNode);var featureNode=this.createElementNS(this.gmlns,\"gml:\"+this.featureName);var featureContainer=this.createElementNS(this.featureNS,this.featurePrefix+\":\"+\nthis.layerName);var fid=feature.fid||feature.id;featureContainer.setAttribute(\"fid\",fid);featureContainer.appendChild(geomContainer);for(var attr in feature.attributes){var attrText=this.createTextNode(feature.attributes[attr]);var nodename=attr.substring(attr.lastIndexOf(\":\")+1);var attrContainer=this.createElementNS(this.featureNS,this.featurePrefix+\":\"+\nnodename);attrContainer.appendChild(attrText);featureContainer.appendChild(attrContainer);}\nfeatureNode.appendChild(featureContainer);return featureNode;},buildGeometryNode:function(geometry){if(this.externalProjection&&this.internalProjection){geometry=geometry.clone();geometry.transform(this.internalProjection,this.externalProjection);}\nvar className=geometry.CLASS_NAME;var type=className.substring(className.lastIndexOf(\".\")+1);var builder=this.buildGeometry[type.toLowerCase()];return builder.apply(this,[geometry]);},buildGeometry:{point:function(geometry){var gml=this.createElementNS(this.gmlns,\"gml:Point\");gml.appendChild(this.buildCoordinatesNode(geometry));return gml;},multipoint:function(geometry){var gml=this.createElementNS(this.gmlns,\"gml:MultiPoint\");var points=geometry.components;var pointMember,pointGeom;for(var i=0;i<points.length;i++){pointMember=this.createElementNS(this.gmlns,\"gml:pointMember\");pointGeom=this.buildGeometry.point.apply(this,[points[i]]);pointMember.appendChild(pointGeom);gml.appendChild(pointMember);}\nreturn gml;},linestring:function(geometry){var gml=this.createElementNS(this.gmlns,\"gml:LineString\");gml.appendChild(this.buildCoordinatesNode(geometry));return gml;},multilinestring:function(geometry){var gml=this.createElementNS(this.gmlns,\"gml:MultiLineString\");var lines=geometry.components;var lineMember,lineGeom;for(var i=0;i<lines.length;++i){lineMember=this.createElementNS(this.gmlns,\"gml:lineStringMember\");lineGeom=this.buildGeometry.linestring.apply(this,[lines[i]]);lineMember.appendChild(lineGeom);gml.appendChild(lineMember);}\nreturn gml;},linearring:function(geometry){var gml=this.createElementNS(this.gmlns,\"gml:LinearRing\");gml.appendChild(this.buildCoordinatesNode(geometry));return gml;},polygon:function(geometry){var gml=this.createElementNS(this.gmlns,\"gml:Polygon\");var rings=geometry.components;var ringMember,ringGeom,type;for(var i=0;i<rings.length;++i){type=(i==0)?\"outerBoundaryIs\":\"innerBoundaryIs\";ringMember=this.createElementNS(this.gmlns,\"gml:\"+type);ringGeom=this.buildGeometry.linearring.apply(this,[rings[i]]);ringMember.appendChild(ringGeom);gml.appendChild(ringMember);}\nreturn gml;},multipolygon:function(geometry){var gml=this.createElementNS(this.gmlns,\"gml:MultiPolygon\");var polys=geometry.components;var polyMember,polyGeom;for(var i=0;i<polys.length;++i){polyMember=this.createElementNS(this.gmlns,\"gml:polygonMember\");polyGeom=this.buildGeometry.polygon.apply(this,[polys[i]]);polyMember.appendChild(polyGeom);gml.appendChild(polyMember);}\nreturn gml;},bounds:function(bounds){var gml=this.createElementNS(this.gmlns,\"gml:Box\");gml.appendChild(this.buildCoordinatesNode(bounds));return gml;}},buildCoordinatesNode:function(geometry){var coordinatesNode=this.createElementNS(this.gmlns,\"gml:coordinates\");coordinatesNode.setAttribute(\"decimal\",\".\");coordinatesNode.setAttribute(\"cs\",\",\");coordinatesNode.setAttribute(\"ts\",\" \");var parts=[];if(geometry instanceof OpenLayers.Bounds){parts.push(geometry.left+\",\"+geometry.bottom);parts.push(geometry.right+\",\"+geometry.top);}else{var points=(geometry.components)?geometry.components:[geometry];for(var i=0;i<points.length;i++){parts.push(points[i].x+\",\"+points[i].y);}}\nvar txtNode=this.createTextNode(parts.join(\" \"));coordinatesNode.appendChild(txtNode);return coordinatesNode;},CLASS_NAME:\"OpenLayers.Format.GML\"});OpenLayers.Format.GeoJSON=OpenLayers.Class(OpenLayers.Format.JSON,{ignoreExtraDims:false,initialize:function(options){OpenLayers.Format.JSON.prototype.initialize.apply(this,[options]);},read:function(json,type,filter){type=(type)?type:\"FeatureCollection\";var results=null;var obj=null;if(typeof json==\"string\"){obj=OpenLayers.Format.JSON.prototype.read.apply(this,[json,filter]);}else{obj=json;}\nif(!obj){OpenLayers.Console.error(\"Bad JSON: \"+json);}else if(typeof(obj.type)!=\"string\"){OpenLayers.Console.error(\"Bad GeoJSON - no type: \"+json);}else if(this.isValidType(obj,type)){switch(type){case\"Geometry\":try{results=this.parseGeometry(obj);}catch(err){OpenLayers.Console.error(err);}\nbreak;case\"Feature\":try{results=this.parseFeature(obj);results.type=\"Feature\";}catch(err){OpenLayers.Console.error(err);}\nbreak;case\"FeatureCollection\":results=[];switch(obj.type){case\"Feature\":try{results.push(this.parseFeature(obj));}catch(err){results=null;OpenLayers.Console.error(err);}\nbreak;case\"FeatureCollection\":for(var i=0,len=obj.features.length;i<len;++i){try{results.push(this.parseFeature(obj.features[i]));}catch(err){results=null;OpenLayers.Console.error(err);}}\nbreak;default:try{var geom=this.parseGeometry(obj);results.push(new OpenLayers.Feature.Vector(geom));}catch(err){results=null;OpenLayers.Console.error(err);}}\nbreak;}}\nreturn results;},isValidType:function(obj,type){var valid=false;switch(type){case\"Geometry\":if(OpenLayers.Util.indexOf([\"Point\",\"MultiPoint\",\"LineString\",\"MultiLineString\",\"Polygon\",\"MultiPolygon\",\"Box\",\"GeometryCollection\"],obj.type)==-1){OpenLayers.Console.error(\"Unsupported geometry type: \"+\nobj.type);}else{valid=true;}\nbreak;case\"FeatureCollection\":valid=true;break;default:if(obj.type==type){valid=true;}else{OpenLayers.Console.error(\"Cannot convert types from \"+\nobj.type+\" to \"+type);}}\nreturn valid;},parseFeature:function(obj){var feature,geometry,attributes,bbox;attributes=(obj.properties)?obj.properties:{};bbox=(obj.geometry&&obj.geometry.bbox)||obj.bbox;try{geometry=this.parseGeometry(obj.geometry);}catch(err){throw err;}\nfeature=new OpenLayers.Feature.Vector(geometry,attributes);if(bbox){feature.bounds=OpenLayers.Bounds.fromArray(bbox);}\nif(obj.id){feature.fid=obj.id;}\nreturn feature;},parseGeometry:function(obj){if(obj==null){return null;}\nvar geometry,collection=false;if(obj.type==\"GeometryCollection\"){if(!(obj.geometries instanceof Array)){throw\"GeometryCollection must have geometries array: \"+obj;}\nvar numGeom=obj.geometries.length;var components=new Array(numGeom);for(var i=0;i<numGeom;++i){components[i]=this.parseGeometry.apply(this,[obj.geometries[i]]);}\ngeometry=new OpenLayers.Geometry.Collection(components);collection=true;}else{if(!(obj.coordinates instanceof Array)){throw\"Geometry must have coordinates array: \"+obj;}\nif(!this.parseCoords[obj.type.toLowerCase()]){throw\"Unsupported geometry type: \"+obj.type;}\ntry{geometry=this.parseCoords[obj.type.toLowerCase()].apply(this,[obj.coordinates]);}catch(err){throw err;}}\nif(this.internalProjection&&this.externalProjection&&!collection){geometry.transform(this.externalProjection,this.internalProjection);}\nreturn geometry;},parseCoords:{\"point\":function(array){if(this.ignoreExtraDims==false&&array.length!=2){throw\"Only 2D points are supported: \"+array;}\nreturn new OpenLayers.Geometry.Point(array[0],array[1]);},\"multipoint\":function(array){var points=[];var p=null;for(var i=0,len=array.length;i<len;++i){try{p=this.parseCoords[\"point\"].apply(this,[array[i]]);}catch(err){throw err;}\npoints.push(p);}\nreturn new OpenLayers.Geometry.MultiPoint(points);},\"linestring\":function(array){var points=[];var p=null;for(var i=0,len=array.length;i<len;++i){try{p=this.parseCoords[\"point\"].apply(this,[array[i]]);}catch(err){throw err;}\npoints.push(p);}\nreturn new OpenLayers.Geometry.LineString(points);},\"multilinestring\":function(array){var lines=[];var l=null;for(var i=0,len=array.length;i<len;++i){try{l=this.parseCoords[\"linestring\"].apply(this,[array[i]]);}catch(err){throw err;}\nlines.push(l);}\nreturn new OpenLayers.Geometry.MultiLineString(lines);},\"polygon\":function(array){var rings=[];var r,l;for(var i=0,len=array.length;i<len;++i){try{l=this.parseCoords[\"linestring\"].apply(this,[array[i]]);}catch(err){throw err;}\nr=new OpenLayers.Geometry.LinearRing(l.components);rings.push(r);}\nreturn new OpenLayers.Geometry.Polygon(rings);},\"multipolygon\":function(array){var polys=[];var p=null;for(var i=0,len=array.length;i<len;++i){try{p=this.parseCoords[\"polygon\"].apply(this,[array[i]]);}catch(err){throw err;}\npolys.push(p);}\nreturn new OpenLayers.Geometry.MultiPolygon(polys);},\"box\":function(array){if(array.length!=2){throw\"GeoJSON box coordinates must have 2 elements\";}\nreturn new OpenLayers.Geometry.Polygon([new OpenLayers.Geometry.LinearRing([new OpenLayers.Geometry.Point(array[0][0],array[0][1]),new OpenLayers.Geometry.Point(array[1][0],array[0][1]),new OpenLayers.Geometry.Point(array[1][0],array[1][1]),new OpenLayers.Geometry.Point(array[0][0],array[1][1]),new OpenLayers.Geometry.Point(array[0][0],array[0][1])])]);}},write:function(obj,pretty){var geojson={\"type\":null};if(obj instanceof Array){geojson.type=\"FeatureCollection\";var numFeatures=obj.length;geojson.features=new Array(numFeatures);for(var i=0;i<numFeatures;++i){var element=obj[i];if(!element instanceof OpenLayers.Feature.Vector){var msg=\"FeatureCollection only supports collections \"+\"of features: \"+element;throw msg;}\ngeojson.features[i]=this.extract.feature.apply(this,[element]);}}else if(obj.CLASS_NAME.indexOf(\"OpenLayers.Geometry\")==0){geojson=this.extract.geometry.apply(this,[obj]);}else if(obj instanceof OpenLayers.Feature.Vector){geojson=this.extract.feature.apply(this,[obj]);if(obj.layer&&obj.layer.projection){geojson.crs=this.createCRSObject(obj);}}\nreturn OpenLayers.Format.JSON.prototype.write.apply(this,[geojson,pretty]);},createCRSObject:function(object){var proj=object.layer.projection.toString();var crs={};if(proj.match(/epsg:/i)){var code=parseInt(proj.substring(proj.indexOf(\":\")+1));if(code==4326){crs={\"type\":\"OGC\",\"properties\":{\"urn\":\"urn:ogc:def:crs:OGC:1.3:CRS84\"}};}else{crs={\"type\":\"EPSG\",\"properties\":{\"code\":code}};}}\nreturn crs;},extract:{'feature':function(feature){var geom=this.extract.geometry.apply(this,[feature.geometry]);return{\"type\":\"Feature\",\"id\":feature.fid==null?feature.id:feature.fid,\"properties\":feature.attributes,\"geometry\":geom};},'geometry':function(geometry){if(geometry==null){return null;}\nif(this.internalProjection&&this.externalProjection){geometry=geometry.clone();geometry.transform(this.internalProjection,this.externalProjection);}\nvar geometryType=geometry.CLASS_NAME.split('.')[2];var data=this.extract[geometryType.toLowerCase()].apply(this,[geometry]);var json;if(geometryType==\"Collection\"){json={\"type\":\"GeometryCollection\",\"geometries\":data};}else{json={\"type\":geometryType,\"coordinates\":data};}\nreturn json;},'point':function(point){return[point.x,point.y];},'multipoint':function(multipoint){var array=[];for(var i=0,len=multipoint.components.length;i<len;++i){array.push(this.extract.point.apply(this,[multipoint.components[i]]));}\nreturn array;},'linestring':function(linestring){var array=[];for(var i=0,len=linestring.components.length;i<len;++i){array.push(this.extract.point.apply(this,[linestring.components[i]]));}\nreturn array;},'multilinestring':function(multilinestring){var array=[];for(var i=0,len=multilinestring.components.length;i<len;++i){array.push(this.extract.linestring.apply(this,[multilinestring.components[i]]));}\nreturn array;},'polygon':function(polygon){var array=[];for(var i=0,len=polygon.components.length;i<len;++i){array.push(this.extract.linestring.apply(this,[polygon.components[i]]));}\nreturn array;},'multipolygon':function(multipolygon){var array=[];for(var i=0,len=multipolygon.components.length;i<len;++i){array.push(this.extract.polygon.apply(this,[multipolygon.components[i]]));}\nreturn array;},'collection':function(collection){var len=collection.components.length;var array=new Array(len);for(var i=0;i<len;++i){array[i]=this.extract.geometry.apply(this,[collection.components[i]]);}\nreturn array;}},CLASS_NAME:\"OpenLayers.Format.GeoJSON\"});OpenLayers.Format.ArcXML.Features=OpenLayers.Class(OpenLayers.Format.XML,{initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);},read:function(data){var axl=new OpenLayers.Format.ArcXML();var parsed=axl.read(data);return parsed.features.feature;}});if(!OpenLayers.Format.GML){OpenLayers.Format.GML={};}\nOpenLayers.Format.GML.Base=OpenLayers.Class(OpenLayers.Format.XML,{namespaces:{gml:\"http://www.opengis.net/gml\",xlink:\"http://www.w3.org/1999/xlink\",xsi:\"http://www.w3.org/2001/XMLSchema-instance\",wfs:\"http://www.opengis.net/wfs\"},defaultPrefix:\"gml\",schemaLocation:null,featureType:null,featureNS:null,geometryName:\"geometry\",extractAttributes:true,srsName:null,xy:true,geometryTypes:null,singleFeatureType:null,regExes:{trimSpace:(/^\\s*|\\s*$/g),removeSpace:(/\\s*/g),splitSpace:(/\\s+/),trimComma:(/\\s*,\\s*/g)},initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);this.setGeometryTypes();if(options&&options.featureNS){this.setNamespace(\"feature\",options.featureNS);}\nthis.singleFeatureType=!options||(typeof options.featureType===\"string\");},read:function(data){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nif(data&&data.nodeType==9){data=data.documentElement;}\nvar features=[];this.readNode(data,{features:features});if(features.length==0){var elements=this.getElementsByTagNameNS(data,this.namespaces.gml,\"featureMember\");if(elements.length){for(var i=0,len=elements.length;i<len;++i){this.readNode(elements[i],{features:features});}}else{var elements=this.getElementsByTagNameNS(data,this.namespaces.gml,\"featureMembers\");if(elements.length){this.readNode(elements[0],{features:features});}}}\nreturn features;},readers:{\"gml\":{\"featureMember\":function(node,obj){this.readChildNodes(node,obj);},\"featureMembers\":function(node,obj){this.readChildNodes(node,obj);},\"name\":function(node,obj){obj.name=this.getChildValue(node);},\"boundedBy\":function(node,obj){var container={};this.readChildNodes(node,container);if(container.components&&container.components.length>0){obj.bounds=container.components[0];}},\"Point\":function(node,container){var obj={points:[]};this.readChildNodes(node,obj);if(!container.components){container.components=[];}\ncontainer.components.push(obj.points[0]);},\"coordinates\":function(node,obj){var str=this.getChildValue(node).replace(this.regExes.trimSpace,\"\");str=str.replace(this.regExes.trimComma,\",\");var pointList=str.split(this.regExes.splitSpace);var coords;var numPoints=pointList.length;var points=new Array(numPoints);for(var i=0;i<numPoints;++i){coords=pointList[i].split(\",\");if(this.xy){points[i]=new OpenLayers.Geometry.Point(coords[0],coords[1],coords[2]);}else{points[i]=new OpenLayers.Geometry.Point(coords[1],coords[0],coords[2]);}}\nobj.points=points;},\"coord\":function(node,obj){var coord={};this.readChildNodes(node,coord);if(!obj.points){obj.points=[];}\nobj.points.push(new OpenLayers.Geometry.Point(coord.x,coord.y,coord.z));},\"X\":function(node,coord){coord.x=this.getChildValue(node);},\"Y\":function(node,coord){coord.y=this.getChildValue(node);},\"Z\":function(node,coord){coord.z=this.getChildValue(node);},\"MultiPoint\":function(node,container){var obj={components:[]};this.readChildNodes(node,obj);container.components=[new OpenLayers.Geometry.MultiPoint(obj.components)];},\"pointMember\":function(node,obj){this.readChildNodes(node,obj);},\"LineString\":function(node,container){var obj={};this.readChildNodes(node,obj);if(!container.components){container.components=[];}\ncontainer.components.push(new OpenLayers.Geometry.LineString(obj.points));},\"MultiLineString\":function(node,container){var obj={components:[]};this.readChildNodes(node,obj);container.components=[new OpenLayers.Geometry.MultiLineString(obj.components)];},\"lineStringMember\":function(node,obj){this.readChildNodes(node,obj);},\"Polygon\":function(node,container){var obj={outer:null,inner:[]};this.readChildNodes(node,obj);obj.inner.unshift(obj.outer);if(!container.components){container.components=[];}\ncontainer.components.push(new OpenLayers.Geometry.Polygon(obj.inner));},\"LinearRing\":function(node,obj){var container={};this.readChildNodes(node,container);obj.components=[new OpenLayers.Geometry.LinearRing(container.points)];},\"MultiPolygon\":function(node,container){var obj={components:[]};this.readChildNodes(node,obj);container.components=[new OpenLayers.Geometry.MultiPolygon(obj.components)];},\"polygonMember\":function(node,obj){this.readChildNodes(node,obj);},\"GeometryCollection\":function(node,container){var obj={components:[]};this.readChildNodes(node,obj);container.components=[new OpenLayers.Geometry.Collection(obj.components)];},\"geometryMember\":function(node,obj){this.readChildNodes(node,obj);}},\"feature\":{\"*\":function(node,obj){var name;var local=node.localName||node.nodeName.split(\":\").pop();if(obj.features){if(!this.singleFeatureType&&(OpenLayers.Util.indexOf(this.featureType,local)!==-1)){name=\"_typeName\";}else if(local===this.featureType){name=\"_typeName\";}}else{if(node.childNodes.length==0||(node.childNodes.length==1&&node.firstChild.nodeType==3)){if(this.extractAttributes){name=\"_attribute\";}}else{name=\"_geometry\";}}\nif(name){this.readers.feature[name].apply(this,[node,obj]);}},\"_typeName\":function(node,obj){var container={components:[],attributes:{}};this.readChildNodes(node,container);if(container.name){container.attributes.name=container.name;}\nvar feature=new OpenLayers.Feature.Vector(container.components[0],container.attributes);if(!this.singleFeatureType){feature.type=node.nodeName.split(\":\").pop();feature.namespace=node.namespaceURI;}\nvar fid=node.getAttribute(\"fid\")||this.getAttributeNS(node,this.namespaces[\"gml\"],\"id\");if(fid){feature.fid=fid;}\nif(this.internalProjection&&this.externalProjection&&feature.geometry){feature.geometry.transform(this.externalProjection,this.internalProjection);}\nif(container.bounds){feature.bounds=container.bounds;}\nobj.features.push(feature);},\"_geometry\":function(node,obj){this.readChildNodes(node,obj);},\"_attribute\":function(node,obj){var local=node.localName||node.nodeName.split(\":\").pop();var value=this.getChildValue(node);obj.attributes[local]=value;}},\"wfs\":{\"FeatureCollection\":function(node,obj){this.readChildNodes(node,obj);}}},write:function(features){var name;if(features instanceof Array){name=\"featureMembers\";}else{name=\"featureMember\";}\nvar root=this.writeNode(\"gml:\"+name,features);this.setAttributeNS(root,this.namespaces[\"xsi\"],\"xsi:schemaLocation\",this.schemaLocation);return OpenLayers.Format.XML.prototype.write.apply(this,[root]);},writers:{\"gml\":{\"featureMember\":function(feature){var node=this.createElementNSPlus(\"gml:featureMember\");this.writeNode(\"feature:_typeName\",feature,node);return node;},\"MultiPoint\":function(geometry){var node=this.createElementNSPlus(\"gml:MultiPoint\");for(var i=0;i<geometry.components.length;++i){this.writeNode(\"pointMember\",geometry.components[i],node);}\nreturn node;},\"pointMember\":function(geometry){var node=this.createElementNSPlus(\"gml:pointMember\");this.writeNode(\"Point\",geometry,node);return node;},\"MultiLineString\":function(geometry){var node=this.createElementNSPlus(\"gml:MultiLineString\");for(var i=0;i<geometry.components.length;++i){this.writeNode(\"lineStringMember\",geometry.components[i],node);}\nreturn node;},\"lineStringMember\":function(geometry){var node=this.createElementNSPlus(\"gml:lineStringMember\");this.writeNode(\"LineString\",geometry,node);return node;},\"MultiPolygon\":function(geometry){var node=this.createElementNSPlus(\"gml:MultiPolygon\");for(var i=0;i<geometry.components.length;++i){this.writeNode(\"polygonMember\",geometry.components[i],node);}\nreturn node;},\"polygonMember\":function(geometry){var node=this.createElementNSPlus(\"gml:polygonMember\");this.writeNode(\"Polygon\",geometry,node);return node;},\"GeometryCollection\":function(geometry){var node=this.createElementNSPlus(\"gml:GeometryCollection\");for(var i=0,len=geometry.components.length;i<len;++i){this.writeNode(\"geometryMember\",geometry.components[i],node);}\nreturn node;},\"geometryMember\":function(geometry){var node=this.createElementNSPlus(\"gml:geometryMember\");var child=this.writeNode(\"feature:_geometry\",geometry);node.appendChild(child.firstChild);return node;}},\"feature\":{\"_typeName\":function(feature){var node=this.createElementNSPlus(\"feature:\"+this.featureType,{attributes:{fid:feature.fid}});if(feature.geometry){this.writeNode(\"feature:_geometry\",feature.geometry,node);}\nfor(var name in feature.attributes){var value=feature.attributes[name];if(value!=null){this.writeNode(\"feature:_attribute\",{name:name,value:value},node);}}\nreturn node;},\"_geometry\":function(geometry){if(this.externalProjection&&this.internalProjection){geometry=geometry.clone().transform(this.internalProjection,this.externalProjection);}\nvar node=this.createElementNSPlus(\"feature:\"+this.geometryName);var type=this.geometryTypes[geometry.CLASS_NAME];var child=this.writeNode(\"gml:\"+type,geometry,node);if(this.srsName){child.setAttribute(\"srsName\",this.srsName);}\nreturn node;},\"_attribute\":function(obj){return this.createElementNSPlus(\"feature:\"+obj.name,{value:obj.value});}},\"wfs\":{\"FeatureCollection\":function(features){var node=this.createElementNSPlus(\"wfs:FeatureCollection\");for(var i=0,len=features.length;i<len;++i){this.writeNode(\"gml:featureMember\",features[i],node);}\nreturn node;}}},setGeometryTypes:function(){this.geometryTypes={\"OpenLayers.Geometry.Point\":\"Point\",\"OpenLayers.Geometry.MultiPoint\":\"MultiPoint\",\"OpenLayers.Geometry.LineString\":\"LineString\",\"OpenLayers.Geometry.MultiLineString\":\"MultiLineString\",\"OpenLayers.Geometry.Polygon\":\"Polygon\",\"OpenLayers.Geometry.MultiPolygon\":\"MultiPolygon\",\"OpenLayers.Geometry.Collection\":\"GeometryCollection\"};},CLASS_NAME:\"OpenLayers.Format.GML.Base\"});OpenLayers.Format.WFS=OpenLayers.Class(OpenLayers.Format.GML,{layer:null,wfsns:\"http://www.opengis.net/wfs\",ogcns:\"http://www.opengis.net/ogc\",initialize:function(options,layer){OpenLayers.Format.GML.prototype.initialize.apply(this,[options]);this.layer=layer;if(this.layer.featureNS){this.featureNS=this.layer.featureNS;}\nif(this.layer.options.geometry_column){this.geometryName=this.layer.options.geometry_column;}\nif(this.layer.options.typename){this.featureName=this.layer.options.typename;}},write:function(features){var transaction=this.createElementNS(this.wfsns,'wfs:Transaction');transaction.setAttribute(\"version\",\"1.0.0\");transaction.setAttribute(\"service\",\"WFS\");for(var i=0;i<features.length;i++){switch(features[i].state){case OpenLayers.State.INSERT:transaction.appendChild(this.insert(features[i]));break;case OpenLayers.State.UPDATE:transaction.appendChild(this.update(features[i]));break;case OpenLayers.State.DELETE:transaction.appendChild(this.remove(features[i]));break;}}\nreturn OpenLayers.Format.XML.prototype.write.apply(this,[transaction]);},createFeatureXML:function(feature){var geometryNode=this.buildGeometryNode(feature.geometry);var geomContainer=this.createElementNS(this.featureNS,\"feature:\"+this.geometryName);geomContainer.appendChild(geometryNode);var featureContainer=this.createElementNS(this.featureNS,\"feature:\"+this.featureName);featureContainer.appendChild(geomContainer);for(var attr in feature.attributes){var attrText=this.createTextNode(feature.attributes[attr]);var nodename=attr;if(attr.search(\":\")!=-1){nodename=attr.split(\":\")[1];}\nvar attrContainer=this.createElementNS(this.featureNS,\"feature:\"+nodename);attrContainer.appendChild(attrText);featureContainer.appendChild(attrContainer);}\nreturn featureContainer;},insert:function(feature){var insertNode=this.createElementNS(this.wfsns,'wfs:Insert');insertNode.appendChild(this.createFeatureXML(feature));return insertNode;},update:function(feature){if(!feature.fid){OpenLayers.Console.userError(OpenLayers.i18n(\"noFID\"));}\nvar updateNode=this.createElementNS(this.wfsns,'wfs:Update');updateNode.setAttribute(\"typeName\",this.featurePrefix+':'+this.featureName);updateNode.setAttribute(\"xmlns:\"+this.featurePrefix,this.featureNS);var propertyNode=this.createElementNS(this.wfsns,'wfs:Property');var nameNode=this.createElementNS(this.wfsns,'wfs:Name');var txtNode=this.createTextNode(this.geometryName);nameNode.appendChild(txtNode);propertyNode.appendChild(nameNode);var valueNode=this.createElementNS(this.wfsns,'wfs:Value');var geometryNode=this.buildGeometryNode(feature.geometry);if(feature.layer){geometryNode.setAttribute(\"srsName\",feature.layer.projection.getCode());}\nvalueNode.appendChild(geometryNode);propertyNode.appendChild(valueNode);updateNode.appendChild(propertyNode);for(var propName in feature.attributes){propertyNode=this.createElementNS(this.wfsns,'wfs:Property');nameNode=this.createElementNS(this.wfsns,'wfs:Name');nameNode.appendChild(this.createTextNode(propName));propertyNode.appendChild(nameNode);valueNode=this.createElementNS(this.wfsns,'wfs:Value');valueNode.appendChild(this.createTextNode(feature.attributes[propName]));propertyNode.appendChild(valueNode);updateNode.appendChild(propertyNode);}\nvar filterNode=this.createElementNS(this.ogcns,'ogc:Filter');var filterIdNode=this.createElementNS(this.ogcns,'ogc:FeatureId');filterIdNode.setAttribute(\"fid\",feature.fid);filterNode.appendChild(filterIdNode);updateNode.appendChild(filterNode);return updateNode;},remove:function(feature){if(!feature.fid){OpenLayers.Console.userError(OpenLayers.i18n(\"noFID\"));return false;}\nvar deleteNode=this.createElementNS(this.wfsns,'wfs:Delete');deleteNode.setAttribute(\"typeName\",this.featurePrefix+':'+this.featureName);deleteNode.setAttribute(\"xmlns:\"+this.featurePrefix,this.featureNS);var filterNode=this.createElementNS(this.ogcns,'ogc:Filter');var filterIdNode=this.createElementNS(this.ogcns,'ogc:FeatureId');filterIdNode.setAttribute(\"fid\",feature.fid);filterNode.appendChild(filterIdNode);deleteNode.appendChild(filterNode);return deleteNode;},destroy:function(){this.layer=null;},CLASS_NAME:\"OpenLayers.Format.WFS\"});OpenLayers.Layer.ArcIMS=OpenLayers.Class(OpenLayers.Layer.Grid,{DEFAULT_PARAMS:{ClientVersion:\"9.2\",ServiceName:''},tileSize:null,featureCoordSys:\"4326\",filterCoordSys:\"4326\",layers:null,async:true,name:\"ArcIMS\",isBaseLayer:true,DEFAULT_OPTIONS:{tileSize:new OpenLayers.Size(512,512),featureCoordSys:\"4326\",filterCoordSys:\"4326\",layers:null,isBaseLayer:true,async:true,name:\"ArcIMS\"},initialize:function(name,url,options){this.tileSize=new OpenLayers.Size(512,512);this.params=OpenLayers.Util.applyDefaults({ServiceName:options.serviceName},this.DEFAULT_PARAMS);this.options=OpenLayers.Util.applyDefaults(options,this.DEFAULT_OPTIONS);OpenLayers.Layer.Grid.prototype.initialize.apply(this,[name,url,this.params,options]);if(this.transparent){if(!this.isBaseLayer){this.isBaseLayer=false;}\nif(this.format==\"image/jpeg\"){this.format=OpenLayers.Util.alphaHack()?\"image/gif\":\"image/png\";}}\nif(this.options.layers===null){this.options.layers=[];}},destroy:function(){OpenLayers.Layer.Grid.prototype.destroy.apply(this,arguments);},getURL:function(bounds){var url=\"\";bounds=this.adjustBounds(bounds);var axlReq=new OpenLayers.Format.ArcXML(OpenLayers.Util.extend(this.options,{requesttype:\"image\",envelope:bounds.toArray(),tileSize:this.tileSize}));var req=new OpenLayers.Request.POST({url:this.getFullRequestString(),data:axlReq.write(),async:false});if(req!=null){var doc=req.responseXML;if(!doc||!doc.documentElement){doc=req.responseText;}\nvar axlResp=new OpenLayers.Format.ArcXML();var arcxml=axlResp.read(doc);url=this.getUrlOrImage(arcxml.image.output);}\nreturn url;},getURLasync:function(bounds,scope,prop,callback){bounds=this.adjustBounds(bounds);var axlReq=new OpenLayers.Format.ArcXML(OpenLayers.Util.extend(this.options,{requesttype:\"image\",envelope:bounds.toArray(),tileSize:this.tileSize}));OpenLayers.Request.POST({url:this.getFullRequestString(),async:true,data:axlReq.write(),callback:function(req){var doc=req.responseXML;if(!doc||!doc.documentElement){doc=req.responseText;}\nvar axlResp=new OpenLayers.Format.ArcXML();var arcxml=axlResp.read(doc);scope[prop]=this.getUrlOrImage(arcxml.image.output);callback.apply(scope);},scope:this});},getUrlOrImage:function(output){var ret=\"\";if(output.url){ret=output.url;}else if(output.data){ret=\"data:image/\"+output.type+\";base64,\"+output.data;}\nreturn ret;},setLayerQuery:function(id,querydef){for(var lyr=0;lyr<this.options.layers.length;lyr++){if(id==this.options.layers[lyr].id){this.options.layers[lyr].query=querydef;return;}}\nthis.options.layers.push({id:id,visible:true,query:querydef});},getFeatureInfo:function(geometry,layer,options){var buffer=options.buffer||1;var callback=options.callback||function(){};var scope=options.scope||window;var requestOptions={};OpenLayers.Util.extend(requestOptions,this.options);requestOptions.requesttype=\"feature\";if(geometry instanceof OpenLayers.LonLat){requestOptions.polygon=null;requestOptions.envelope=[geometry.lon-buffer,geometry.lat-buffer,geometry.lon+buffer,geometry.lat+buffer];}else if(geometry instanceof OpenLayers.Geometry.Polygon){requestOptions.envelope=null;requestOptions.polygon=geometry;}\nvar arcxml=new OpenLayers.Format.ArcXML(requestOptions);OpenLayers.Util.extend(arcxml.request.get_feature,options);arcxml.request.get_feature.layer=layer.id;if(typeof layer.query.accuracy==\"number\"){arcxml.request.get_feature.query.accuracy=layer.query.accuracy;}else{var mapCenter=this.map.getCenter();var viewPx=this.map.getViewPortPxFromLonLat(mapCenter);viewPx.x++;var mapOffCenter=this.map.getLonLatFromPixel(viewPx);arcxml.request.get_feature.query.accuracy=mapOffCenter.lon-mapCenter.lon;}\narcxml.request.get_feature.query.where=layer.query.where;arcxml.request.get_feature.query.spatialfilter.relation=\"area_intersection\";OpenLayers.Request.POST({url:this.getFullRequestString({'CustomService':'Query'}),data:arcxml.write(),callback:function(request){var response=arcxml.parseResponse(request.responseText);if(!arcxml.iserror()){callback.call(scope,response.features);}else{callback.call(scope,null);}}});},clone:function(obj){if(obj==null){obj=new OpenLayers.Layer.ArcIMS(this.name,this.url,this.getOptions());}\nobj=OpenLayers.Layer.Grid.prototype.clone.apply(this,[obj]);return obj;},addTile:function(bounds,position){return new OpenLayers.Tile.Image(this,position,bounds,null,this.tileSize);},CLASS_NAME:\"OpenLayers.Layer.ArcIMS\"});OpenLayers.Format.GML.v2=OpenLayers.Class(OpenLayers.Format.GML.Base,{schemaLocation:\"http://www.opengis.net/gml http://schemas.opengis.net/gml/2.1.2/feature.xsd\",initialize:function(options){OpenLayers.Format.GML.Base.prototype.initialize.apply(this,[options]);},readers:{\"gml\":OpenLayers.Util.applyDefaults({\"outerBoundaryIs\":function(node,container){var obj={};this.readChildNodes(node,obj);container.outer=obj.components[0];},\"innerBoundaryIs\":function(node,container){var obj={};this.readChildNodes(node,obj);container.inner.push(obj.components[0]);},\"Box\":function(node,container){var obj={};this.readChildNodes(node,obj);if(!container.components){container.components=[];}\nvar min=obj.points[0];var max=obj.points[1];container.components.push(new OpenLayers.Bounds(min.x,min.y,max.x,max.y));}},OpenLayers.Format.GML.Base.prototype.readers[\"gml\"]),\"feature\":OpenLayers.Format.GML.Base.prototype.readers[\"feature\"],\"wfs\":OpenLayers.Format.GML.Base.prototype.readers[\"wfs\"]},write:function(features){var name;if(features instanceof Array){name=\"wfs:FeatureCollection\";}else{name=\"gml:featureMember\";}\nvar root=this.writeNode(name,features);this.setAttributeNS(root,this.namespaces[\"xsi\"],\"xsi:schemaLocation\",this.schemaLocation);return OpenLayers.Format.XML.prototype.write.apply(this,[root]);},writers:{\"gml\":OpenLayers.Util.applyDefaults({\"Point\":function(geometry){var node=this.createElementNSPlus(\"gml:Point\");this.writeNode(\"coordinates\",[geometry],node);return node;},\"coordinates\":function(points){var numPoints=points.length;var parts=new Array(numPoints);var point;for(var i=0;i<numPoints;++i){point=points[i];if(this.xy){parts[i]=point.x+\",\"+point.y;}else{parts[i]=point.y+\",\"+point.x;}\nif(point.z!=undefined){parts[i]+=\",\"+point.z;}}\nreturn this.createElementNSPlus(\"gml:coordinates\",{attributes:{decimal:\".\",cs:\",\",ts:\" \"},value:(numPoints==1)?parts[0]:parts.join(\" \")});},\"LineString\":function(geometry){var node=this.createElementNSPlus(\"gml:LineString\");this.writeNode(\"coordinates\",geometry.components,node);return node;},\"Polygon\":function(geometry){var node=this.createElementNSPlus(\"gml:Polygon\");this.writeNode(\"outerBoundaryIs\",geometry.components[0],node);for(var i=1;i<geometry.components.length;++i){this.writeNode(\"innerBoundaryIs\",geometry.components[i],node);}\nreturn node;},\"outerBoundaryIs\":function(ring){var node=this.createElementNSPlus(\"gml:outerBoundaryIs\");this.writeNode(\"LinearRing\",ring,node);return node;},\"innerBoundaryIs\":function(ring){var node=this.createElementNSPlus(\"gml:innerBoundaryIs\");this.writeNode(\"LinearRing\",ring,node);return node;},\"LinearRing\":function(ring){var node=this.createElementNSPlus(\"gml:LinearRing\");this.writeNode(\"coordinates\",ring.components,node);return node;},\"Box\":function(bounds){var node=this.createElementNSPlus(\"gml:Box\");this.writeNode(\"coordinates\",[{x:bounds.left,y:bounds.bottom},{x:bounds.right,y:bounds.top}],node);if(this.srsName){node.setAttribute(\"srsName\",this.srsName);}\nreturn node;}},OpenLayers.Format.GML.Base.prototype.writers[\"gml\"]),\"feature\":OpenLayers.Format.GML.Base.prototype.writers[\"feature\"],\"wfs\":OpenLayers.Format.GML.Base.prototype.writers[\"wfs\"]},CLASS_NAME:\"OpenLayers.Format.GML.v2\"});OpenLayers.Format.GML.v3=OpenLayers.Class(OpenLayers.Format.GML.Base,{schemaLocation:\"http://www.opengis.net/gml http://schemas.opengis.net/gml/3.1.1/profiles/gmlsfProfile/1.0.0/gmlsf.xsd\",curve:false,multiCurve:true,surface:false,multiSurface:true,initialize:function(options){OpenLayers.Format.GML.Base.prototype.initialize.apply(this,[options]);},readers:{\"gml\":OpenLayers.Util.applyDefaults({\"featureMembers\":function(node,obj){this.readChildNodes(node,obj);},\"Curve\":function(node,container){var obj={points:[]};this.readChildNodes(node,obj);if(!container.components){container.components=[];}\ncontainer.components.push(new OpenLayers.Geometry.LineString(obj.points));},\"segments\":function(node,obj){this.readChildNodes(node,obj);},\"LineStringSegment\":function(node,container){var obj={};this.readChildNodes(node,obj);if(obj.points){Array.prototype.push.apply(container.points,obj.points);}},\"pos\":function(node,obj){var str=this.getChildValue(node).replace(this.regExes.trimSpace,\"\");var coords=str.split(this.regExes.splitSpace);var point;if(this.xy){point=new OpenLayers.Geometry.Point(coords[0],coords[1],coords[2]);}else{point=new OpenLayers.Geometry.Point(coords[1],coords[0],coords[2]);}\nobj.points=[point];},\"posList\":function(node,obj){var str=this.getChildValue(node).replace(this.regExes.trimSpace,\"\");var coords=str.split(this.regExes.splitSpace);var dim=parseInt(node.getAttribute(\"dimension\"))||2;var j,x,y,z;var numPoints=coords.length/dim;var points=new Array(numPoints);for(var i=0,len=coords.length;i<len;i+=dim){x=coords[i];y=coords[i+1];z=(dim==2)?undefined:coords[i+2];if(this.xy){points[i/dim]=new OpenLayers.Geometry.Point(x,y,z);}else{points[i/dim]=new OpenLayers.Geometry.Point(y,x,z);}}\nobj.points=points;},\"Surface\":function(node,obj){this.readChildNodes(node,obj);},\"patches\":function(node,obj){this.readChildNodes(node,obj);},\"PolygonPatch\":function(node,obj){this.readers.gml.Polygon.apply(this,[node,obj]);},\"exterior\":function(node,container){var obj={};this.readChildNodes(node,obj);container.outer=obj.components[0];},\"interior\":function(node,container){var obj={};this.readChildNodes(node,obj);container.inner.push(obj.components[0]);},\"MultiCurve\":function(node,container){var obj={components:[]};this.readChildNodes(node,obj);if(obj.components.length>0){container.components=[new OpenLayers.Geometry.MultiLineString(obj.components)];}},\"curveMember\":function(node,obj){this.readChildNodes(node,obj);},\"MultiSurface\":function(node,container){var obj={components:[]};this.readChildNodes(node,obj);if(obj.components.length>0){container.components=[new OpenLayers.Geometry.MultiPolygon(obj.components)];}},\"surfaceMember\":function(node,obj){this.readChildNodes(node,obj);},\"surfaceMembers\":function(node,obj){this.readChildNodes(node,obj);},\"pointMembers\":function(node,obj){this.readChildNodes(node,obj);},\"lineStringMembers\":function(node,obj){this.readChildNodes(node,obj);},\"polygonMembers\":function(node,obj){this.readChildNodes(node,obj);},\"geometryMembers\":function(node,obj){this.readChildNodes(node,obj);},\"Envelope\":function(node,container){var obj={points:new Array(2)};this.readChildNodes(node,obj);if(!container.components){container.components=[];}\nvar min=obj.points[0];var max=obj.points[1];container.components.push(new OpenLayers.Bounds(min.x,min.y,max.x,max.y));},\"lowerCorner\":function(node,container){var obj={};this.readers.gml.pos.apply(this,[node,obj]);container.points[0]=obj.points[0];},\"upperCorner\":function(node,container){var obj={};this.readers.gml.pos.apply(this,[node,obj]);container.points[1]=obj.points[0];}},OpenLayers.Format.GML.Base.prototype.readers[\"gml\"]),\"feature\":OpenLayers.Format.GML.Base.prototype.readers[\"feature\"],\"wfs\":OpenLayers.Format.GML.Base.prototype.readers[\"wfs\"]},write:function(features){var name;if(features instanceof Array){name=\"featureMembers\";}else{name=\"featureMember\";}\nvar root=this.writeNode(\"gml:\"+name,features);this.setAttributeNS(root,this.namespaces[\"xsi\"],\"xsi:schemaLocation\",this.schemaLocation);return OpenLayers.Format.XML.prototype.write.apply(this,[root]);},writers:{\"gml\":OpenLayers.Util.applyDefaults({\"featureMembers\":function(features){var node=this.createElementNSPlus(\"gml:featureMembers\");for(var i=0,len=features.length;i<len;++i){this.writeNode(\"feature:_typeName\",features[i],node);}\nreturn node;},\"Point\":function(geometry){var node=this.createElementNSPlus(\"gml:Point\");this.writeNode(\"pos\",geometry,node);return node;},\"pos\":function(point){var pos=(this.xy)?(point.x+\" \"+point.y):(point.y+\" \"+point.x);return this.createElementNSPlus(\"gml:pos\",{value:pos});},\"LineString\":function(geometry){var node=this.createElementNSPlus(\"gml:LineString\");this.writeNode(\"posList\",geometry.components,node);return node;},\"Curve\":function(geometry){var node=this.createElementNSPlus(\"gml:Curve\");this.writeNode(\"segments\",geometry,node);return node;},\"segments\":function(geometry){var node=this.createElementNSPlus(\"gml:segments\");this.writeNode(\"LineStringSegment\",geometry,node);return node;},\"LineStringSegment\":function(geometry){var node=this.createElementNSPlus(\"gml:LineStringSegment\");this.writeNode(\"posList\",geometry.components,node);return node;},\"posList\":function(points){var len=points.length;var parts=new Array(len);var point;for(var i=0;i<len;++i){point=points[i];if(this.xy){parts[i]=point.x+\" \"+point.y;}else{parts[i]=point.y+\" \"+point.x;}}\nreturn this.createElementNSPlus(\"gml:posList\",{value:parts.join(\" \")});},\"Surface\":function(geometry){var node=this.createElementNSPlus(\"gml:Surface\");this.writeNode(\"patches\",geometry,node);return node;},\"patches\":function(geometry){var node=this.createElementNSPlus(\"gml:patches\");this.writeNode(\"PolygonPatch\",geometry,node);return node;},\"PolygonPatch\":function(geometry){var node=this.createElementNSPlus(\"gml:PolygonPatch\",{attributes:{interpolation:\"planar\"}});this.writeNode(\"exterior\",geometry.components[0],node);for(var i=1,len=geometry.components.length;i<len;++i){this.writeNode(\"interior\",geometry.components[i],node);}\nreturn node;},\"Polygon\":function(geometry){var node=this.createElementNSPlus(\"gml:Polygon\");this.writeNode(\"exterior\",geometry.components[0],node);for(var i=1,len=geometry.components.length;i<len;++i){this.writeNode(\"interior\",geometry.components[i],node);}\nreturn node;},\"exterior\":function(ring){var node=this.createElementNSPlus(\"gml:exterior\");this.writeNode(\"LinearRing\",ring,node);return node;},\"interior\":function(ring){var node=this.createElementNSPlus(\"gml:interior\");this.writeNode(\"LinearRing\",ring,node);return node;},\"LinearRing\":function(ring){var node=this.createElementNSPlus(\"gml:LinearRing\");this.writeNode(\"posList\",ring.components,node);return node;},\"MultiCurve\":function(geometry){var node=this.createElementNSPlus(\"gml:MultiCurve\");for(var i=0,len=geometry.components.length;i<len;++i){this.writeNode(\"curveMember\",geometry.components[i],node);}\nreturn node;},\"curveMember\":function(geometry){var node=this.createElementNSPlus(\"gml:curveMember\");if(this.curve){this.writeNode(\"Curve\",geometry,node);}else{this.writeNode(\"LineString\",geometry,node);}\nreturn node;},\"MultiSurface\":function(geometry){var node=this.createElementNSPlus(\"gml:MultiSurface\");for(var i=0,len=geometry.components.length;i<len;++i){this.writeNode(\"surfaceMember\",geometry.components[i],node);}\nreturn node;},\"surfaceMember\":function(polygon){var node=this.createElementNSPlus(\"gml:surfaceMember\");if(this.surface){this.writeNode(\"Surface\",polygon,node);}else{this.writeNode(\"Polygon\",polygon,node);}\nreturn node;},\"Envelope\":function(bounds){var node=this.createElementNSPlus(\"gml:Envelope\");this.writeNode(\"lowerCorner\",bounds,node);this.writeNode(\"upperCorner\",bounds,node);if(this.srsName){node.setAttribute(\"srsName\",this.srsName);}\nreturn node;},\"lowerCorner\":function(bounds){var pos=(this.xy)?(bounds.left+\" \"+bounds.bottom):(bounds.bottom+\" \"+bounds.left);return this.createElementNSPlus(\"gml:lowerCorner\",{value:pos});},\"upperCorner\":function(bounds){var pos=(this.xy)?(bounds.right+\" \"+bounds.top):(bounds.top+\" \"+bounds.right);return this.createElementNSPlus(\"gml:upperCorner\",{value:pos});}},OpenLayers.Format.GML.Base.prototype.writers[\"gml\"]),\"feature\":OpenLayers.Format.GML.Base.prototype.writers[\"feature\"],\"wfs\":OpenLayers.Format.GML.Base.prototype.writers[\"wfs\"]},setGeometryTypes:function(){this.geometryTypes={\"OpenLayers.Geometry.Point\":\"Point\",\"OpenLayers.Geometry.MultiPoint\":\"MultiPoint\",\"OpenLayers.Geometry.LineString\":(this.curve===true)?\"Curve\":\"LineString\",\"OpenLayers.Geometry.MultiLineString\":(this.multiCurve===false)?\"MultiLineString\":\"MultiCurve\",\"OpenLayers.Geometry.Polygon\":(this.surface===true)?\"Surface\":\"Polygon\",\"OpenLayers.Geometry.MultiPolygon\":(this.multiSurface===false)?\"MultiPolygon\":\"MultiSurface\",\"OpenLayers.Geometry.Collection\":\"GeometryCollection\"};},CLASS_NAME:\"OpenLayers.Format.GML.v3\"});OpenLayers.Format.Atom=OpenLayers.Class(OpenLayers.Format.XML,{namespaces:{atom:\"http://www.w3.org/2005/Atom\",georss:\"http://www.georss.org/georss\"},feedTitle:\"untitled\",defaultEntryTitle:\"untitled\",gmlParser:null,xy:false,initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);},read:function(doc){if(typeof doc==\"string\"){doc=OpenLayers.Format.XML.prototype.read.apply(this,[doc]);}\nreturn this.parseFeatures(doc);},write:function(features){var doc;if(features instanceof Array){doc=this.createElementNSPlus(\"atom:feed\");doc.appendChild(this.createElementNSPlus(\"atom:title\",{value:this.feedTitle}));for(var i=0,ii=features.length;i<ii;i++){doc.appendChild(this.buildEntryNode(features[i]));}}\nelse{doc=this.buildEntryNode(features);}\nreturn OpenLayers.Format.XML.prototype.write.apply(this,[doc]);},buildContentNode:function(content){var node=this.createElementNSPlus(\"atom:content\",{attributes:{type:content.type||null}});if(content.src){node.setAttribute(\"src\",content.src);}else{if(content.type==\"text\"||content.type==null){node.appendChild(this.createTextNode(content.value));}else if(content.type==\"html\"){if(typeof content.value!=\"string\"){throw\"HTML content must be in form of an escaped string\";}\nnode.appendChild(this.createTextNode(content.value));}else if(content.type==\"xhtml\"){node.appendChild(content.value);}else if(content.type==\"xhtml\"||content.type.match(/(\\+|\\/)xml$/)){node.appendChild(content.value);}\nelse{node.appendChild(this.createTextNode(content.value));}}\nreturn node;},buildEntryNode:function(feature){var attrib=feature.attributes;var atomAttrib=attrib.atom||{};var entryNode=this.createElementNSPlus(\"atom:entry\");if(atomAttrib.authors){var authors=atomAttrib.authors instanceof Array?atomAttrib.authors:[atomAttrib.authors];for(var i=0,ii=authors.length;i<ii;i++){entryNode.appendChild(this.buildPersonConstructNode(\"author\",authors[i]));}}\nif(atomAttrib.categories){var categories=atomAttrib.categories instanceof Array?atomAttrib.categories:[atomAttrib.categories];var category;for(var i=0,ii=categories.length;i<ii;i++){category=categories[i];entryNode.appendChild(this.createElementNSPlus(\"atom:category\",{attributes:{term:category.term,scheme:category.scheme||null,label:category.label||null}}));}}\nif(atomAttrib.content){entryNode.appendChild(this.buildContentNode(atomAttrib.content));}\nif(atomAttrib.contributors){var contributors=atomAttrib.contributors instanceof Array?atomAttrib.contributors:[atomAttrib.contributors];for(var i=0,ii=contributors.length;i<ii;i++){entryNode.appendChild(this.buildPersonConstructNode(\"contributor\",contributors[i]));}}\nif(feature.fid){entryNode.appendChild(this.createElementNSPlus(\"atom:id\",{value:feature.fid}));}\nif(atomAttrib.links){var links=atomAttrib.links instanceof Array?atomAttrib.links:[atomAttrib.links];var link;for(var i=0,ii=links.length;i<ii;i++){link=links[i];entryNode.appendChild(this.createElementNSPlus(\"atom:link\",{attributes:{href:link.href,rel:link.rel||null,type:link.type||null,hreflang:link.hreflang||null,title:link.title||null,length:link.length||null}}));}}\nif(atomAttrib.published){entryNode.appendChild(this.createElementNSPlus(\"atom:published\",{value:atomAttrib.published}));}\nif(atomAttrib.rights){entryNode.appendChild(this.createElementNSPlus(\"atom:rights\",{value:atomAttrib.rights}));}\nif(atomAttrib.summary||attrib.description){entryNode.appendChild(this.createElementNSPlus(\"atom:summary\",{value:atomAttrib.summary||attrib.description}));}\nentryNode.appendChild(this.createElementNSPlus(\"atom:title\",{value:atomAttrib.title||attrib.title||this.defaultEntryTitle}));if(atomAttrib.updated){entryNode.appendChild(this.createElementNSPlus(\"atom:updated\",{value:atomAttrib.updated}));}\nif(feature.geometry){var whereNode=this.createElementNSPlus(\"georss:where\");whereNode.appendChild(this.buildGeometryNode(feature.geometry));entryNode.appendChild(whereNode);}\nreturn entryNode;},initGmlParser:function(){this.gmlParser=new OpenLayers.Format.GML.v3({xy:this.xy,featureNS:\"http://example.com#feature\",internalProjection:this.internalProjection,externalProjection:this.externalProjection});},buildGeometryNode:function(geometry){if(!this.gmlParser){this.initGmlParser();}\nvar node=this.gmlParser.writeNode(\"feature:_geometry\",geometry);return node.firstChild;},buildPersonConstructNode:function(name,value){var oNames=[\"uri\",\"email\"];var personNode=this.createElementNSPlus(\"atom:\"+name);personNode.appendChild(this.createElementNSPlus(\"atom:name\",{value:value.name}));for(var i=0,ii=oNames.length;i<ii;i++){if(value[oNames[i]]){personNode.appendChild(this.createElementNSPlus(\"atom:\"+oNames[i],{value:value[oNames[i]]}));}}\nreturn personNode;},getFirstChildValue:function(node,nsuri,name,def){var value;var nodes=this.getElementsByTagNameNS(node,nsuri,name);if(nodes&&nodes.length>0){value=this.getChildValue(nodes[0],def);}else{value=def;}\nreturn value;},parseFeature:function(node){var atomAttrib={};var value=null;var nodes=null;var attval=null;var atomns=this.namespaces.atom;this.parsePersonConstructs(node,\"author\",atomAttrib);nodes=this.getElementsByTagNameNS(node,atomns,\"category\");if(nodes.length>0){atomAttrib.categories=[];}\nfor(var i=0,ii=nodes.length;i<ii;i++){value={};value.term=nodes[i].getAttribute(\"term\");attval=nodes[i].getAttribute(\"scheme\");if(attval){value.scheme=attval;}\nattval=nodes[i].getAttribute(\"label\");if(attval){value.label=attval;}\natomAttrib.categories.push(value);}\nnodes=this.getElementsByTagNameNS(node,atomns,\"content\");if(nodes.length>0){value={};attval=nodes[0].getAttribute(\"type\");if(attval){value.type=attval;}\nattval=nodes[0].getAttribute(\"src\");if(attval){value.src=attval;}else{if(value.type==\"text\"||value.type==\"html\"||value.type==null){value.value=this.getFirstChildValue(node,atomns,\"content\",null);}else if(value.type==\"xhtml\"||value.type.match(/(\\+|\\/)xml$/)){value.value=this.getChildEl(nodes[0]);}else{value.value=this.getFirstChildValue(node,atomns,\"content\",null);}\natomAttrib.content=value;}}\nthis.parsePersonConstructs(node,\"contributor\",atomAttrib);atomAttrib.id=this.getFirstChildValue(node,atomns,\"id\",null);nodes=this.getElementsByTagNameNS(node,atomns,\"link\");if(nodes.length>0){atomAttrib.links=new Array(nodes.length);}\nvar oAtts=[\"rel\",\"type\",\"hreflang\",\"title\",\"length\"];for(var i=0,ii=nodes.length;i<ii;i++){value={};value.href=nodes[i].getAttribute(\"href\");for(var j=0,jj=oAtts.length;j<jj;j++){attval=nodes[i].getAttribute(oAtts[j]);if(attval){value[oAtts[j]]=attval;}}\natomAttrib.links[i]=value;}\nvalue=this.getFirstChildValue(node,atomns,\"published\",null);if(value){atomAttrib.published=value;}\nvalue=this.getFirstChildValue(node,atomns,\"rights\",null);if(value){atomAttrib.rights=value;}\nvalue=this.getFirstChildValue(node,atomns,\"summary\",null);if(value){atomAttrib.summary=value;}\natomAttrib.title=this.getFirstChildValue(node,atomns,\"title\",null);atomAttrib.updated=this.getFirstChildValue(node,atomns,\"updated\",null);var featureAttrib={title:atomAttrib.title,description:atomAttrib.summary,atom:atomAttrib};var geometry=this.parseLocations(node)[0];var feature=new OpenLayers.Feature.Vector(geometry,featureAttrib);feature.fid=atomAttrib.id;return feature;},parseFeatures:function(node){var features=[];var entries=this.getElementsByTagNameNS(node,this.namespaces.atom,\"entry\");if(entries.length==0){entries=[node];}\nfor(var i=0,ii=entries.length;i<ii;i++){features.push(this.parseFeature(entries[i]));}\nreturn features;},parseLocations:function(node){var georssns=this.namespaces.georss;var locations={components:[]};var where=this.getElementsByTagNameNS(node,georssns,\"where\");if(where&&where.length>0){if(!this.gmlParser){this.initGmlParser();}\nfor(var i=0,ii=where.length;i<ii;i++){this.gmlParser.readChildNodes(where[i],locations);}}\nvar components=locations.components;var point=this.getElementsByTagNameNS(node,georssns,\"point\");if(point&&point.length>0){for(var i=0,ii=point.length;i<ii;i++){var xy=OpenLayers.String.trim(point[i].firstChild.nodeValue).split(/\\s+/);if(xy.length!=2){xy=OpenLayers.String.trim(point[i].firstChild.nodeValue).split(/\\s*,\\s*/);}\ncomponents.push(new OpenLayers.Geometry.Point(parseFloat(xy[1]),parseFloat(xy[0])));}}\nvar line=this.getElementsByTagNameNS(node,georssns,\"line\");if(line&&line.length>0){var coords;var p;var points;for(var i=0,ii=line.length;i<ii;i++){coords=OpenLayers.String.trim(line[i].firstChild.nodeValue).split(/\\s+/);points=[];for(var j=0,jj=coords.length;j<jj;j+=2){p=new OpenLayers.Geometry.Point(parseFloat(coords[j+1]),parseFloat(coords[j]));points.push(p);}\ncomponents.push(new OpenLayers.Geometry.LineString(points));}}\nvar polygon=this.getElementsByTagNameNS(node,georssns,\"polygon\");if(polygon&&polygon.length>0){var coords;var p;var points;for(var i=0,ii=polygon.length;i<ii;i++){coords=OpenLayers.String.trim(polygon[i].firstChild.nodeValue).split(/\\s+/);points=[];for(var j=0,jj=coords.length;j<jj;j+=2){p=new OpenLayers.Geometry.Point(parseFloat(coords[j+1]),parseFloat(coords[j]));points.push(p);}\ncomponents.push(new OpenLayers.Geometry.Polygon([new OpenLayers.Geometry.LinearRing(components)]));}}\nif(this.internalProjection&&this.externalProjection){for(var i=0,ii=components.length;i<ii;i++){if(components[i]){components[i].transform(this.externalProjection,this.internalProjection);}}}\nreturn components;},parsePersonConstructs:function(node,name,data){var persons=[];var atomns=this.namespaces.atom;var nodes=this.getElementsByTagNameNS(node,atomns,name);var oAtts=[\"uri\",\"email\"];for(var i=0,ii=nodes.length;i<ii;i++){var value={};value.name=this.getFirstChildValue(nodes[i],atomns,\"name\",null);for(var j=0,jj=oAtts.length;j<jj;j++){var attval=this.getFirstChildValue(nodes[i],atomns,oAtts[j],null);if(attval){value[oAtts[j]]=attval;}}\npersons.push(value);}\nif(persons.length>0){data[name+\"s\"]=persons;}},CLASS_NAME:\"OpenLayers.Format.Atom\"});OpenLayers.Format.Filter.v1_0_0=OpenLayers.Class(OpenLayers.Format.GML.v2,OpenLayers.Format.Filter.v1,{VERSION:\"1.0.0\",schemaLocation:\"http://www.opengis.net/ogc/filter/1.0.0/filter.xsd\",initialize:function(options){OpenLayers.Format.GML.v2.prototype.initialize.apply(this,[options]);},readers:{\"ogc\":OpenLayers.Util.applyDefaults({\"PropertyIsEqualTo\":function(node,obj){var filter=new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.EQUAL_TO});this.readChildNodes(node,filter);obj.filters.push(filter);},\"PropertyIsNotEqualTo\":function(node,obj){var filter=new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.NOT_EQUAL_TO});this.readChildNodes(node,filter);obj.filters.push(filter);},\"PropertyIsLike\":function(node,obj){var filter=new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.LIKE});this.readChildNodes(node,filter);var wildCard=node.getAttribute(\"wildCard\");var singleChar=node.getAttribute(\"singleChar\");var esc=node.getAttribute(\"escape\");filter.value2regex(wildCard,singleChar,esc);obj.filters.push(filter);}},OpenLayers.Format.Filter.v1.prototype.readers[\"ogc\"]),\"gml\":OpenLayers.Format.GML.v2.prototype.readers[\"gml\"],\"feature\":OpenLayers.Format.GML.v2.prototype.readers[\"feature\"]},writers:{\"ogc\":OpenLayers.Util.applyDefaults({\"PropertyIsEqualTo\":function(filter){var node=this.createElementNSPlus(\"ogc:PropertyIsEqualTo\");this.writeNode(\"PropertyName\",filter,node);this.writeNode(\"Literal\",filter.value,node);return node;},\"PropertyIsNotEqualTo\":function(filter){var node=this.createElementNSPlus(\"ogc:PropertyIsNotEqualTo\");this.writeNode(\"PropertyName\",filter,node);this.writeNode(\"Literal\",filter.value,node);return node;},\"PropertyIsLike\":function(filter){var node=this.createElementNSPlus(\"ogc:PropertyIsLike\",{attributes:{wildCard:\"*\",singleChar:\".\",escape:\"!\"}});this.writeNode(\"PropertyName\",filter,node);this.writeNode(\"Literal\",filter.regex2value(),node);return node;},\"BBOX\":function(filter){var node=this.createElementNSPlus(\"ogc:BBOX\");this.writeNode(\"PropertyName\",filter,node);var box=this.writeNode(\"gml:Box\",filter.value,node);if(filter.projection){box.setAttribute(\"srsName\",filter.projection);}\nreturn node;}},OpenLayers.Format.Filter.v1.prototype.writers[\"ogc\"]),\"gml\":OpenLayers.Format.GML.v2.prototype.writers[\"gml\"],\"feature\":OpenLayers.Format.GML.v2.prototype.writers[\"feature\"]},writeSpatial:function(filter,name){var node=this.createElementNSPlus(\"ogc:\"+name);this.writeNode(\"PropertyName\",filter,node);var child;if(filter.value instanceof OpenLayers.Geometry){child=this.writeNode(\"feature:_geometry\",filter.value).firstChild;}else{child=this.writeNode(\"gml:Box\",filter.value);}\nif(filter.projection){child.setAttribute(\"srsName\",filter.projection);}\nnode.appendChild(child);return node;},CLASS_NAME:\"OpenLayers.Format.Filter.v1_0_0\"});OpenLayers.Format.Filter.v1_1_0=OpenLayers.Class(OpenLayers.Format.GML.v3,OpenLayers.Format.Filter.v1,{VERSION:\"1.1.0\",schemaLocation:\"http://www.opengis.net/ogc/filter/1.1.0/filter.xsd\",initialize:function(options){OpenLayers.Format.GML.v3.prototype.initialize.apply(this,[options]);},readers:{\"ogc\":OpenLayers.Util.applyDefaults({\"PropertyIsEqualTo\":function(node,obj){var matchCase=node.getAttribute(\"matchCase\");var filter=new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.EQUAL_TO,matchCase:!(matchCase===\"false\"||matchCase===\"0\")});this.readChildNodes(node,filter);obj.filters.push(filter);},\"PropertyIsNotEqualTo\":function(node,obj){var matchCase=node.getAttribute(\"matchCase\");var filter=new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.NOT_EQUAL_TO,matchCase:!(matchCase===\"false\"||matchCase===\"0\")});this.readChildNodes(node,filter);obj.filters.push(filter);},\"PropertyIsLike\":function(node,obj){var filter=new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.LIKE});this.readChildNodes(node,filter);var wildCard=node.getAttribute(\"wildCard\");var singleChar=node.getAttribute(\"singleChar\");var esc=node.getAttribute(\"escapeChar\");filter.value2regex(wildCard,singleChar,esc);obj.filters.push(filter);}},OpenLayers.Format.Filter.v1.prototype.readers[\"ogc\"]),\"gml\":OpenLayers.Format.GML.v3.prototype.readers[\"gml\"],\"feature\":OpenLayers.Format.GML.v3.prototype.readers[\"feature\"]},writers:{\"ogc\":OpenLayers.Util.applyDefaults({\"PropertyIsEqualTo\":function(filter){var node=this.createElementNSPlus(\"ogc:PropertyIsEqualTo\",{attributes:{matchCase:filter.matchCase}});this.writeNode(\"PropertyName\",filter,node);this.writeNode(\"Literal\",filter.value,node);return node;},\"PropertyIsNotEqualTo\":function(filter){var node=this.createElementNSPlus(\"ogc:PropertyIsNotEqualTo\",{attributes:{matchCase:filter.matchCase}});this.writeNode(\"PropertyName\",filter,node);this.writeNode(\"Literal\",filter.value,node);return node;},\"PropertyIsLike\":function(filter){var node=this.createElementNSPlus(\"ogc:PropertyIsLike\",{attributes:{wildCard:\"*\",singleChar:\".\",escapeChar:\"!\"}});this.writeNode(\"PropertyName\",filter,node);this.writeNode(\"Literal\",filter.regex2value(),node);return node;},\"BBOX\":function(filter){var node=this.createElementNSPlus(\"ogc:BBOX\");this.writeNode(\"PropertyName\",filter,node);var box=this.writeNode(\"gml:Envelope\",filter.value);if(filter.projection){box.setAttribute(\"srsName\",filter.projection);}\nnode.appendChild(box);return node;}},OpenLayers.Format.Filter.v1.prototype.writers[\"ogc\"]),\"gml\":OpenLayers.Format.GML.v3.prototype.writers[\"gml\"],\"feature\":OpenLayers.Format.GML.v3.prototype.writers[\"feature\"]},writeSpatial:function(filter,name){var node=this.createElementNSPlus(\"ogc:\"+name);this.writeNode(\"PropertyName\",filter,node);var child;if(filter.value instanceof OpenLayers.Geometry){child=this.writeNode(\"feature:_geometry\",filter.value).firstChild;}else{child=this.writeNode(\"gml:Envelope\",filter.value);}\nif(filter.projection){child.setAttribute(\"srsName\",filter.projection);}\nnode.appendChild(child);return node;},CLASS_NAME:\"OpenLayers.Format.Filter.v1_1_0\"});OpenLayers.Format.SOSCapabilities.v1_0_0=OpenLayers.Class(OpenLayers.Format.SOSCapabilities,{namespaces:{ows:\"http://www.opengis.net/ows/1.1\",sos:\"http://www.opengis.net/sos/1.0\",gml:\"http://www.opengis.net/gml\",xlink:\"http://www.w3.org/1999/xlink\"},regExes:{trimSpace:(/^\\s*|\\s*$/g),removeSpace:(/\\s*/g),splitSpace:(/\\s+/),trimComma:(/\\s*,\\s*/g)},initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);this.options=options;},read:function(data){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nif(data&&data.nodeType==9){data=data.documentElement;}\nvar capabilities={};this.readNode(data,capabilities);return capabilities;},readers:{\"gml\":OpenLayers.Util.applyDefaults({\"name\":function(node,obj){obj.name=this.getChildValue(node);},\"TimePeriod\":function(node,obj){obj.timePeriod={};this.readChildNodes(node,obj.timePeriod);},\"beginPosition\":function(node,timePeriod){timePeriod.beginPosition=this.getChildValue(node);},\"endPosition\":function(node,timePeriod){timePeriod.endPosition=this.getChildValue(node);}},OpenLayers.Format.GML.v3.prototype.readers[\"gml\"]),\"sos\":{\"Capabilities\":function(node,obj){this.readChildNodes(node,obj);},\"Contents\":function(node,obj){obj.contents={};this.readChildNodes(node,obj.contents);},\"ObservationOfferingList\":function(node,contents){contents.offeringList={};this.readChildNodes(node,contents.offeringList);},\"ObservationOffering\":function(node,offeringList){var id=this.getAttributeNS(node,this.namespaces.gml,\"id\");offeringList[id]={procedures:[],observedProperties:[],featureOfInterestIds:[],responseFormats:[],resultModels:[],responseModes:[]};this.readChildNodes(node,offeringList[id]);},\"time\":function(node,offering){offering.time={};this.readChildNodes(node,offering.time);},\"procedure\":function(node,offering){offering.procedures.push(this.getAttributeNS(node,this.namespaces.xlink,\"href\"));},\"observedProperty\":function(node,offering){offering.observedProperties.push(this.getAttributeNS(node,this.namespaces.xlink,\"href\"));},\"featureOfInterest\":function(node,offering){offering.featureOfInterestIds.push(this.getAttributeNS(node,this.namespaces.xlink,\"href\"));},\"responseFormat\":function(node,offering){offering.responseFormats.push(this.getChildValue(node));},\"resultModel\":function(node,offering){offering.resultModels.push(this.getChildValue(node));},\"responseMode\":function(node,offering){offering.responseModes.push(this.getChildValue(node));;}},\"ows\":OpenLayers.Format.OWSCommon.v1_1_0.prototype.readers[\"ows\"]},CLASS_NAME:\"OpenLayers.Format.SOSCapabilities.v1_0_0\"});OpenLayers.Format.SOSGetFeatureOfInterest=OpenLayers.Class(OpenLayers.Format.XML,{VERSION:\"1.0.0\",namespaces:{sos:\"http://www.opengis.net/sos/1.0\",gml:\"http://www.opengis.net/gml\",sa:\"http://www.opengis.net/sampling/1.0\",xsi:\"http://www.w3.org/2001/XMLSchema-instance\"},schemaLocation:\"http://www.opengis.net/sos/1.0 http://schemas.opengis.net/sos/1.0.0/sosAll.xsd\",defaultPrefix:\"sos\",regExes:{trimSpace:(/^\\s*|\\s*$/g),removeSpace:(/\\s*/g),splitSpace:(/\\s+/),trimComma:(/\\s*,\\s*/g)},initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);},read:function(data){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nif(data&&data.nodeType==9){data=data.documentElement;}\nvar info={features:[]};this.readNode(data,info);var features=[];for(var i=0,len=info.features.length;i<len;i++){var container=info.features[i];if(this.internalProjection&&this.externalProjection&&container.components[0]){container.components[0].transform(this.externalProjection,this.internalProjection);}\nvar feature=new OpenLayers.Feature.Vector(container.components[0],container.attributes);features.push(feature);}\nreturn features;},readers:{\"sa\":{\"SamplingPoint\":function(node,obj){if(!obj.attributes){var feature={attributes:{}};obj.features.push(feature);obj=feature;}\nobj.attributes.id=this.getAttributeNS(node,this.namespaces.gml,\"id\");this.readChildNodes(node,obj);},\"position\":function(node,obj){this.readChildNodes(node,obj);}},\"gml\":OpenLayers.Util.applyDefaults({\"FeatureCollection\":function(node,obj){this.readChildNodes(node,obj);},\"featureMember\":function(node,obj){var feature={attributes:{}};obj.features.push(feature);this.readChildNodes(node,feature);},\"name\":function(node,obj){obj.attributes.name=this.getChildValue(node);},\"pos\":function(node,obj){if(!this.externalProjection){this.externalProjection=new OpenLayers.Projection(node.getAttribute(\"srsName\"));}\nOpenLayers.Format.GML.v3.prototype.readers.gml.pos.apply(this,[node,obj]);}},OpenLayers.Format.GML.v3.prototype.readers.gml)},writers:{\"sos\":{\"GetFeatureOfInterest\":function(options){var node=this.createElementNSPlus(\"GetFeatureOfInterest\",{attributes:{version:this.VERSION,service:'SOS',\"xsi:schemaLocation\":this.schemaLocation}});for(var i=0,len=options.fois.length;i<len;i++){this.writeNode(\"FeatureOfInterestId\",{foi:options.fois[i]},node);}\nreturn node;},\"FeatureOfInterestId\":function(options){var node=this.createElementNSPlus(\"FeatureOfInterestId\",{value:options.foi});return node;}}},CLASS_NAME:\"OpenLayers.Format.SOSGetFeatureOfInterest\"});OpenLayers.Format.SOSGetObservation=OpenLayers.Class(OpenLayers.Format.XML,{namespaces:{ows:\"http://www.opengis.net/ows\",gml:\"http://www.opengis.net/gml\",sos:\"http://www.opengis.net/sos/1.0\",ogc:\"http://www.opengis.net/ogc\",om:\"http://www.opengis.net/om/1.0\",xlink:\"http://www.w3.org/1999/xlink\",xsi:\"http://www.w3.org/2001/XMLSchema-instance\"},regExes:{trimSpace:(/^\\s*|\\s*$/g),removeSpace:(/\\s*/g),splitSpace:(/\\s+/),trimComma:(/\\s*,\\s*/g)},VERSION:\"1.0.0\",schemaLocation:\"http://www.opengis.net/sos/1.0 http://schemas.opengis.net/sos/1.0.0/sosGetObservation.xsd\",defaultPrefix:\"sos\",initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);},read:function(data){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nif(data&&data.nodeType==9){data=data.documentElement;}\nvar info={measurements:[]};this.readNode(data,info);return info;},write:function(options){var node=this.writeNode(\"sos:GetObservation\",options);node.setAttribute(\"xmlns:om\",this.namespaces.om);this.setAttributeNS(node,this.namespaces.xsi,\"xsi:schemaLocation\",this.schemaLocation);return OpenLayers.Format.XML.prototype.write.apply(this,[node]);},readers:{\"om\":{\"ObservationCollection\":function(node,obj){obj.id=this.getAttributeNS(node,this.namespaces.gml,\"id\");this.readChildNodes(node,obj);},\"member\":function(node,observationCollection){this.readChildNodes(node,observationCollection);},\"Measurement\":function(node,observationCollection){var measurement={};observationCollection.measurements.push(measurement);this.readChildNodes(node,measurement);},\"samplingTime\":function(node,measurement){var samplingTime={};measurement.samplingTime=samplingTime;this.readChildNodes(node,samplingTime);},\"observedProperty\":function(node,measurement){measurement.observedProperty=this.getAttributeNS(node,this.namespaces.xlink,\"href\");this.readChildNodes(node,measurement);},\"procedure\":function(node,measurement){measurement.procedure=this.getAttributeNS(node,this.namespaces.xlink,\"href\");this.readChildNodes(node,measurement);},\"result\":function(node,measurement){var result={};measurement.result=result;if(this.getChildValue(node)!==''){result.value=this.getChildValue(node);result.uom=node.getAttribute(\"uom\");}else{this.readChildNodes(node,result);}}},\"gml\":OpenLayers.Util.applyDefaults({\"TimeInstant\":function(node,samplingTime){var timeInstant={};samplingTime.timeInstant=timeInstant;this.readChildNodes(node,timeInstant);},\"timePosition\":function(node,timeInstant){timeInstant.timePosition=this.getChildValue(node);}},OpenLayers.Format.GML.v3.prototype.readers.gml)},writers:{\"sos\":{\"GetObservation\":function(options){var node=this.createElementNSPlus(\"GetObservation\",{attributes:{version:this.VERSION,service:'SOS'}});this.writeNode(\"offering\",options,node);this.writeNode(\"eventTime\",options,node);this.writeNode(\"procedure\",options,node);this.writeNode(\"observedProperty\",options,node);this.writeNode(\"responseFormat\",options,node);this.writeNode(\"resultModel\",options,node);this.writeNode(\"responseMode\",options,node);return node;},\"responseFormat\":function(options){return this.createElementNSPlus(\"responseFormat\",{value:options.responseFormat});},\"procedure\":function(options){return this.createElementNSPlus(\"procedure\",{value:options.procedure});},\"offering\":function(options){return this.createElementNSPlus(\"offering\",{value:options.offering});},\"observedProperty\":function(options){return this.createElementNSPlus(\"observedProperty\",{value:options.observedProperty});},\"eventTime\":function(options){var node=this.createElementNSPlus(\"eventTime\");if(options.eventTime==='latest'){this.writeNode(\"ogc:TM_Equals\",options,node);}\nreturn node;},\"resultModel\":function(options){return this.createElementNSPlus(\"resultModel\",{value:options.resultModel});},\"responseMode\":function(options){return this.createElementNSPlus(\"responseMode\",{value:options.responseMode});}},\"ogc\":{\"TM_Equals\":function(options){var node=this.createElementNSPlus(\"ogc:TM_Equals\");this.writeNode(\"ogc:PropertyName\",{property:\"urn:ogc:data:time:iso8601\"},node);if(options.eventTime==='latest'){this.writeNode(\"gml:TimeInstant\",{value:'latest'},node);}\nreturn node;},\"PropertyName\":function(options){return this.createElementNSPlus(\"ogc:PropertyName\",{value:options.property});}},\"gml\":{\"TimeInstant\":function(options){var node=this.createElementNSPlus(\"gml:TimeInstant\");this.writeNode(\"gml:timePosition\",options,node);return node;},\"timePosition\":function(options){var node=this.createElementNSPlus(\"gml:timePosition\",{value:options.value});return node;}}},CLASS_NAME:\"OpenLayers.Format.SOSGetObservation\"});OpenLayers.Format.CSWGetRecords.v2_0_2=OpenLayers.Class(OpenLayers.Format.XML,{namespaces:{xlink:\"http://www.w3.org/1999/xlink\",xsi:\"http://www.w3.org/2001/XMLSchema-instance\",csw:\"http://www.opengis.net/cat/csw/2.0.2\",dc:\"http://purl.org/dc/elements/1.1/\",dct:\"http://purl.org/dc/terms/\",ows:\"http://www.opengis.net/ows\"},defaultPrefix:\"csw\",version:\"2.0.2\",schemaLocation:\"http://www.opengis.net/cat/csw/2.0.2 http://schemas.opengis.net/csw/2.0.2/CSW-discovery.xsd\",requestId:null,resultType:null,outputFormat:null,outputSchema:null,startPosition:null,maxRecords:null,DistributedSearch:null,ResponseHandler:null,Query:null,regExes:{trimSpace:(/^\\s*|\\s*$/g),removeSpace:(/\\s*/g),splitSpace:(/\\s+/),trimComma:(/\\s*,\\s*/g)},initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);},read:function(data){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nif(data&&data.nodeType==9){data=data.documentElement;}\nvar obj={};this.readNode(data,obj);return obj;},readers:{\"csw\":{\"GetRecordsResponse\":function(node,obj){obj.records=[];this.readChildNodes(node,obj);var version=this.getAttributeNS(node,\"\",'version');if(version!=\"\"){obj.version=version;}},\"RequestId\":function(node,obj){obj.RequestId=this.getChildValue(node);},\"SearchStatus\":function(node,obj){obj.SearchStatus={};var timestamp=this.getAttributeNS(node,\"\",'timestamp');if(timestamp!=\"\"){obj.SearchStatus.timestamp=timestamp;}},\"SearchResults\":function(node,obj){this.readChildNodes(node,obj);var attrs=node.attributes;var SearchResults={};for(var i=0,len=attrs.length;i<len;++i){if((attrs[i].name==\"numberOfRecordsMatched\")||(attrs[i].name==\"numberOfRecordsReturned\")||(attrs[i].name==\"nextRecord\")){SearchResults[attrs[i].name]=parseInt(attrs[i].nodeValue);}else{SearchResults[attrs[i].name]=attrs[i].nodeValue;}}\nobj.SearchResults=SearchResults;},\"SummaryRecord\":function(node,obj){var record={type:\"SummaryRecord\"};this.readChildNodes(node,record);obj.records.push(record);},\"BriefRecord\":function(node,obj){var record={type:\"BriefRecord\"};this.readChildNodes(node,record);obj.records.push(record);},\"DCMIRecord\":function(node,obj){var record={type:\"DCMIRecord\"};this.readChildNodes(node,record);obj.records.push(record);},\"Record\":function(node,obj){var record={type:\"Record\"};this.readChildNodes(node,record);obj.records.push(record);}},\"dc\":{\"*\":function(node,obj){var name=node.localName||node.nodeName.split(\":\").pop();if(!(obj[name]instanceof Array)){obj[name]=new Array();}\nvar dc_element={};var attrs=node.attributes;for(var i=0,len=attrs.length;i<len;++i){dc_element[attrs[i].name]=attrs[i].nodeValue;}\ndc_element.value=this.getChildValue(node);obj[name].push(dc_element);}},\"dct\":{\"*\":function(node,obj){var name=node.localName||node.nodeName.split(\":\").pop();if(!(obj[name]instanceof Array)){obj[name]=new Array();}\nobj[name].push(this.getChildValue(node));}},\"ows\":OpenLayers.Util.applyDefaults({\"BoundingBox\":function(node,obj){if(obj.bounds){obj.BoundingBox=[{crs:obj.projection,value:[obj.bounds.left,obj.bounds.bottom,obj.bounds.right,obj.bounds.top]}];delete obj.projection;delete obj.bounds;}\nOpenLayers.Format.OWSCommon.v1_0_0.prototype.readers[\"ows\"][\"BoundingBox\"].apply(this,arguments);}},OpenLayers.Format.OWSCommon.v1_0_0.prototype.readers[\"ows\"])},write:function(options){var node=this.writeNode(\"csw:GetRecords\",options);return OpenLayers.Format.XML.prototype.write.apply(this,[node]);},writers:{\"csw\":{\"GetRecords\":function(options){if(!options){options={};}\nvar node=this.createElementNSPlus(\"csw:GetRecords\",{attributes:{service:\"CSW\",version:this.version,requestId:options.requestId||this.requestId,resultType:options.resultType||this.resultType,outputFormat:options.outputFormat||this.outputFormat,outputSchema:options.outputSchema||this.outputSchema,startPosition:options.startPosition||this.startPosition,maxRecords:options.maxRecords||this.maxRecords}});if(options.DistributedSearch||this.DistributedSearch){this.writeNode(\"csw:DistributedSearch\",options.DistributedSearch||this.DistributedSearch,node);}\nvar ResponseHandler=options.ResponseHandler||this.ResponseHandler;if(ResponseHandler instanceof Array&&ResponseHandler.length>0){for(var i=0,len=ResponseHandler.length;i<len;i++){this.writeNode(\"csw:ResponseHandler\",ResponseHandler[i],node);}}\nthis.writeNode(\"Query\",options.Query||this.Query,node);return node;},\"DistributedSearch\":function(options){var node=this.createElementNSPlus(\"csw:DistributedSearch\",{attributes:{hopCount:options.hopCount}});return node;},\"ResponseHandler\":function(options){var node=this.createElementNSPlus(\"csw:ResponseHandler\",{value:options.value});return node;},\"Query\":function(options){if(!options){options={};}\nvar node=this.createElementNSPlus(\"csw:Query\",{attributes:{typeNames:options.typeNames||\"csw:Record\"}});var ElementName=options.ElementName;if(ElementName instanceof Array&&ElementName.length>0){for(var i=0,len=ElementName.length;i<len;i++){this.writeNode(\"csw:ElementName\",ElementName[i],node);}}else{this.writeNode(\"csw:ElementSetName\",options.ElementSetName||{value:'summary'},node);}\nif(options.Constraint){this.writeNode(\"csw:Constraint\",options.Constraint,node);}\nreturn node;},\"ElementName\":function(options){var node=this.createElementNSPlus(\"csw:ElementName\",{value:options.value});return node;},\"ElementSetName\":function(options){var node=this.createElementNSPlus(\"csw:ElementSetName\",{attributes:{typeNames:options.typeNames},value:options.value});return node;},\"Constraint\":function(options){var node=this.createElementNSPlus(\"csw:Constraint\",{attributes:{version:options.version}});if(options.Filter){var format=new OpenLayers.Format.Filter({version:options.version});node.appendChild(format.write(options.Filter));}else if(options.CqlText){var child=this.createElementNSPlus(\"CqlText\",{value:options.CqlText.value});node.appendChild(child);}\nreturn node;}}},CLASS_NAME:\"OpenLayers.Format.CSWGetRecords.v2_0_2\"});OpenLayers.Format.SLD.v1=OpenLayers.Class(OpenLayers.Format.Filter.v1_0_0,{namespaces:{sld:\"http://www.opengis.net/sld\",ogc:\"http://www.opengis.net/ogc\",gml:\"http://www.opengis.net/gml\",xlink:\"http://www.w3.org/1999/xlink\",xsi:\"http://www.w3.org/2001/XMLSchema-instance\"},defaultPrefix:\"sld\",schemaLocation:null,multipleSymbolizers:false,featureTypeCounter:null,defaultSymbolizer:{fillColor:\"#808080\",fillOpacity:1,strokeColor:\"#000000\",strokeOpacity:1,strokeWidth:1,strokeDashstyle:\"solid\",pointRadius:3,graphicName:\"square\"},initialize:function(options){OpenLayers.Format.Filter.v1_0_0.prototype.initialize.apply(this,[options]);},read:function(data,options){options=OpenLayers.Util.applyDefaults(options,this.options);var sld={namedLayers:options.namedLayersAsArray===true?[]:{}};this.readChildNodes(data,sld);return sld;},readers:OpenLayers.Util.applyDefaults({\"sld\":{\"StyledLayerDescriptor\":function(node,sld){sld.version=node.getAttribute(\"version\");this.readChildNodes(node,sld);},\"Name\":function(node,obj){obj.name=this.getChildValue(node);},\"Title\":function(node,obj){obj.title=this.getChildValue(node);},\"Abstract\":function(node,obj){obj.description=this.getChildValue(node);},\"NamedLayer\":function(node,sld){var layer={userStyles:[],namedStyles:[]};this.readChildNodes(node,layer);for(var i=0,len=layer.userStyles.length;i<len;++i){layer.userStyles[i].layerName=layer.name;}\nif(sld.namedLayers instanceof Array){sld.namedLayers.push(layer);}else{sld.namedLayers[layer.name]=layer;}},\"NamedStyle\":function(node,layer){layer.namedStyles.push(this.getChildName(node.firstChild));},\"UserStyle\":function(node,layer){var obj={defaultsPerSymbolizer:true,rules:[]};this.featureTypeCounter=-1;this.readChildNodes(node,obj);var style;if(this.multipleSymbolizers){delete obj.defaultsPerSymbolizer;style=new OpenLayers.Style2(obj);}else{style=new OpenLayers.Style(this.defaultSymbolizer,obj);}\nlayer.userStyles.push(style);},\"IsDefault\":function(node,style){if(this.getChildValue(node)==\"1\"){style.isDefault=true;}},\"FeatureTypeStyle\":function(node,style){++this.featureTypeCounter;var obj={rules:this.multipleSymbolizers?style.rules:[]};this.readChildNodes(node,obj);if(!this.multipleSymbolizers){style.rules=obj.rules;}},\"Rule\":function(node,obj){var config;if(this.multipleSymbolizers){config={symbolizers:[]};}\nvar rule=new OpenLayers.Rule(config);this.readChildNodes(node,rule);obj.rules.push(rule);},\"ElseFilter\":function(node,rule){rule.elseFilter=true;},\"MinScaleDenominator\":function(node,rule){rule.minScaleDenominator=parseFloat(this.getChildValue(node));},\"MaxScaleDenominator\":function(node,rule){rule.maxScaleDenominator=parseFloat(this.getChildValue(node));},\"TextSymbolizer\":function(node,rule){var config={};this.readChildNodes(node,config);if(this.multipleSymbolizers){config.zIndex=this.featureTypeCounter;rule.symbolizers.push(new OpenLayers.Symbolizer.Text(config));}else{rule.symbolizer[\"Text\"]=OpenLayers.Util.applyDefaults(config,rule.symbolizer[\"Text\"]);}},\"Label\":function(node,symbolizer){var obj={};this.readChildNodes(node,obj);if(obj.property){symbolizer.label=\"${\"+obj.property+\"}\";}else{var value=this.readOgcExpression(node);if(value){symbolizer.label=value;}}},\"Font\":function(node,symbolizer){this.readChildNodes(node,symbolizer);},\"Halo\":function(node,symbolizer){var obj={};this.readChildNodes(node,obj);symbolizer.haloRadius=obj.haloRadius;symbolizer.haloColor=obj.fillColor;symbolizer.haloOpacity=obj.fillOpacity;},\"Radius\":function(node,symbolizer){var radius=this.readOgcExpression(node);if(radius!=null){symbolizer.haloRadius=radius;}},\"RasterSymbolizer\":function(node,rule){var config={};this.readChildNodes(node,config);if(this.multipleSymbolizers){config.zIndex=this.featureTypeCounter;rule.symbolizers.push(new OpenLayers.Symbolizer.Raster(config));}else{rule.symbolizer[\"Raster\"]=OpenLayers.Util.applyDefaults(config,rule.symbolizer[\"Raster\"]);}},\"Geometry\":function(node,obj){obj.geometry={};this.readChildNodes(node,obj.geometry);},\"ColorMap\":function(node,symbolizer){symbolizer.colorMap=[];this.readChildNodes(node,symbolizer.colorMap);},\"ColorMapEntry\":function(node,colorMap){var q=node.getAttribute(\"quantity\");var o=node.getAttribute(\"opacity\");colorMap.push({color:node.getAttribute(\"color\"),quantity:q!==null?parseFloat(q):undefined,label:node.getAttribute(\"label\")||undefined,opacity:o!==null?parseFloat(o):undefined});},\"LineSymbolizer\":function(node,rule){var config={};this.readChildNodes(node,config);if(this.multipleSymbolizers){config.zIndex=this.featureTypeCounter;rule.symbolizers.push(new OpenLayers.Symbolizer.Line(config));}else{rule.symbolizer[\"Line\"]=OpenLayers.Util.applyDefaults(config,rule.symbolizer[\"Line\"]);}},\"PolygonSymbolizer\":function(node,rule){var config={fill:false,stroke:false};if(!this.multipleSymbolizers){config=rule.symbolizer[\"Polygon\"]||config;}\nthis.readChildNodes(node,config);if(this.multipleSymbolizers){config.zIndex=this.featureTypeCounter;rule.symbolizers.push(new OpenLayers.Symbolizer.Polygon(config));}else{rule.symbolizer[\"Polygon\"]=config;}},\"PointSymbolizer\":function(node,rule){var config={fill:false,stroke:false,graphic:false};if(!this.multipleSymbolizers){config=rule.symbolizer[\"Point\"]||config;}\nthis.readChildNodes(node,config);if(this.multipleSymbolizers){config.zIndex=this.featureTypeCounter;rule.symbolizers.push(new OpenLayers.Symbolizer.Point(config));}else{rule.symbolizer[\"Point\"]=config;}},\"Stroke\":function(node,symbolizer){symbolizer.stroke=true;this.readChildNodes(node,symbolizer);},\"Fill\":function(node,symbolizer){symbolizer.fill=true;this.readChildNodes(node,symbolizer);},\"CssParameter\":function(node,symbolizer){var cssProperty=node.getAttribute(\"name\");var symProperty=this.cssMap[cssProperty];if(symProperty){var value=this.readOgcExpression(node);if(value){symbolizer[symProperty]=value;}}},\"Graphic\":function(node,symbolizer){symbolizer.graphic=true;var graphic={};this.readChildNodes(node,graphic);var properties=[\"stroke\",\"strokeColor\",\"strokeWidth\",\"strokeOpacity\",\"strokeLinecap\",\"fill\",\"fillColor\",\"fillOpacity\",\"graphicName\",\"rotation\",\"graphicFormat\"];var prop,value;for(var i=0,len=properties.length;i<len;++i){prop=properties[i];value=graphic[prop];if(value!=undefined){symbolizer[prop]=value;}}\nif(graphic.opacity!=undefined){symbolizer.graphicOpacity=graphic.opacity;}\nif(graphic.size!=undefined){symbolizer.pointRadius=graphic.size/2;}\nif(graphic.href!=undefined){symbolizer.externalGraphic=graphic.href;}\nif(graphic.rotation!=undefined){symbolizer.rotation=graphic.rotation;}},\"ExternalGraphic\":function(node,graphic){this.readChildNodes(node,graphic);},\"Mark\":function(node,graphic){this.readChildNodes(node,graphic);},\"WellKnownName\":function(node,graphic){graphic.graphicName=this.getChildValue(node);},\"Opacity\":function(node,obj){var opacity=this.readOgcExpression(node);if(opacity){obj.opacity=opacity;}},\"Size\":function(node,obj){var size=this.readOgcExpression(node);if(size){obj.size=size;}},\"Rotation\":function(node,obj){var rotation=this.readOgcExpression(node);if(rotation){obj.rotation=rotation;}},\"OnlineResource\":function(node,obj){obj.href=this.getAttributeNS(node,this.namespaces.xlink,\"href\");},\"Format\":function(node,graphic){graphic.graphicFormat=this.getChildValue(node);}}},OpenLayers.Format.Filter.v1_0_0.prototype.readers),cssMap:{\"stroke\":\"strokeColor\",\"stroke-opacity\":\"strokeOpacity\",\"stroke-width\":\"strokeWidth\",\"stroke-linecap\":\"strokeLinecap\",\"stroke-dasharray\":\"strokeDashstyle\",\"fill\":\"fillColor\",\"fill-opacity\":\"fillOpacity\",\"font-family\":\"fontFamily\",\"font-size\":\"fontSize\",\"font-weight\":\"fontWeight\",\"font-style\":\"fontStyle\"},getCssProperty:function(sym){var css=null;for(var prop in this.cssMap){if(this.cssMap[prop]==sym){css=prop;break;}}\nreturn css;},getGraphicFormat:function(href){var format,regex;for(var key in this.graphicFormats){if(this.graphicFormats[key].test(href)){format=key;break;}}\nreturn format||this.defautlGraphicFormat;},defaultGraphicFormat:\"image/png\",graphicFormats:{\"image/jpeg\":/\\.jpe?g$/i,\"image/gif\":/\\.gif$/i,\"image/png\":/\\.png$/i},write:function(sld){return this.writers.sld.StyledLayerDescriptor.apply(this,[sld]);},writers:OpenLayers.Util.applyDefaults({\"sld\":{\"StyledLayerDescriptor\":function(sld){var root=this.createElementNSPlus(\"sld:StyledLayerDescriptor\",{attributes:{\"version\":this.VERSION,\"xsi:schemaLocation\":this.schemaLocation}});root.setAttribute(\"xmlns:ogc\",this.namespaces.ogc);root.setAttribute(\"xmlns:gml\",this.namespaces.gml);if(sld.name){this.writeNode(\"Name\",sld.name,root);}\nif(sld.title){this.writeNode(\"Title\",sld.title,root);}\nif(sld.description){this.writeNode(\"Abstract\",sld.description,root);}\nif(sld.namedLayers instanceof Array){for(var i=0,len=sld.namedLayers.length;i<len;++i){this.writeNode(\"NamedLayer\",sld.namedLayers[i],root);}}else{for(var name in sld.namedLayers){this.writeNode(\"NamedLayer\",sld.namedLayers[name],root);}}\nreturn root;},\"Name\":function(name){return this.createElementNSPlus(\"sld:Name\",{value:name});},\"Title\":function(title){return this.createElementNSPlus(\"sld:Title\",{value:title});},\"Abstract\":function(description){return this.createElementNSPlus(\"sld:Abstract\",{value:description});},\"NamedLayer\":function(layer){var node=this.createElementNSPlus(\"sld:NamedLayer\");this.writeNode(\"Name\",layer.name,node);if(layer.namedStyles){for(var i=0,len=layer.namedStyles.length;i<len;++i){this.writeNode(\"NamedStyle\",layer.namedStyles[i],node);}}\nif(layer.userStyles){for(var i=0,len=layer.userStyles.length;i<len;++i){this.writeNode(\"UserStyle\",layer.userStyles[i],node);}}\nreturn node;},\"NamedStyle\":function(name){var node=this.createElementNSPlus(\"sld:NamedStyle\");this.writeNode(\"Name\",name,node);return node;},\"UserStyle\":function(style){var node=this.createElementNSPlus(\"sld:UserStyle\");if(style.name){this.writeNode(\"Name\",style.name,node);}\nif(style.title){this.writeNode(\"Title\",style.title,node);}\nif(style.description){this.writeNode(\"Abstract\",style.description,node);}\nif(style.isDefault){this.writeNode(\"IsDefault\",style.isDefault,node);}\nif(this.multipleSymbolizers&&style.rules){var rulesByZ={0:[]};var zValues=[0];var rule,ruleMap,symbolizer,zIndex,clone;for(var i=0,ii=style.rules.length;i<ii;++i){rule=style.rules[i];if(rule.symbolizers){ruleMap={};for(var j=0,jj=rule.symbolizers.length;j<jj;++j){symbolizer=rule.symbolizers[j];zIndex=symbolizer.zIndex;if(!(zIndex in ruleMap)){clone=rule.clone();clone.symbolizers=[];ruleMap[zIndex]=clone;}\nruleMap[zIndex].symbolizers.push(symbolizer.clone());}\nfor(zIndex in ruleMap){if(!(zIndex in rulesByZ)){zValues.push(zIndex);rulesByZ[zIndex]=[];}\nrulesByZ[zIndex].push(ruleMap[zIndex]);}}else{rulesByZ[0].push(rule.clone());}}\nzValues.sort();var rules;for(var i=0,ii=zValues.length;i<ii;++i){rules=rulesByZ[zValues[i]];if(rules.length>0){clone=style.clone();clone.rules=rulesByZ[zValues[i]];this.writeNode(\"FeatureTypeStyle\",clone,node);}}}else{this.writeNode(\"FeatureTypeStyle\",style,node);}\nreturn node;},\"IsDefault\":function(bool){return this.createElementNSPlus(\"sld:IsDefault\",{value:(bool)?\"1\":\"0\"});},\"FeatureTypeStyle\":function(style){var node=this.createElementNSPlus(\"sld:FeatureTypeStyle\");for(var i=0,len=style.rules.length;i<len;++i){this.writeNode(\"Rule\",style.rules[i],node);}\nreturn node;},\"Rule\":function(rule){var node=this.createElementNSPlus(\"sld:Rule\");if(rule.name){this.writeNode(\"Name\",rule.name,node);}\nif(rule.title){this.writeNode(\"Title\",rule.title,node);}\nif(rule.description){this.writeNode(\"Abstract\",rule.description,node);}\nif(rule.elseFilter){this.writeNode(\"ElseFilter\",null,node);}else if(rule.filter){this.writeNode(\"ogc:Filter\",rule.filter,node);}\nif(rule.minScaleDenominator!=undefined){this.writeNode(\"MinScaleDenominator\",rule.minScaleDenominator,node);}\nif(rule.maxScaleDenominator!=undefined){this.writeNode(\"MaxScaleDenominator\",rule.maxScaleDenominator,node);}\nvar type,symbolizer;if(this.multipleSymbolizers&&rule.symbolizers){var symbolizer;for(var i=0,ii=rule.symbolizers.length;i<ii;++i){symbolizer=rule.symbolizers[i];type=symbolizer.CLASS_NAME.split(\".\").pop();this.writeNode(type+\"Symbolizer\",symbolizer,node);}}else{var types=OpenLayers.Style.SYMBOLIZER_PREFIXES;for(var i=0,len=types.length;i<len;++i){type=types[i];symbolizer=rule.symbolizer[type];if(symbolizer){this.writeNode(type+\"Symbolizer\",symbolizer,node);}}}\nreturn node;},\"ElseFilter\":function(){return this.createElementNSPlus(\"sld:ElseFilter\");},\"MinScaleDenominator\":function(scale){return this.createElementNSPlus(\"sld:MinScaleDenominator\",{value:scale});},\"MaxScaleDenominator\":function(scale){return this.createElementNSPlus(\"sld:MaxScaleDenominator\",{value:scale});},\"LineSymbolizer\":function(symbolizer){var node=this.createElementNSPlus(\"sld:LineSymbolizer\");this.writeNode(\"Stroke\",symbolizer,node);return node;},\"Stroke\":function(symbolizer){var node=this.createElementNSPlus(\"sld:Stroke\");if(symbolizer.strokeColor!=undefined){this.writeNode(\"CssParameter\",{symbolizer:symbolizer,key:\"strokeColor\"},node);}\nif(symbolizer.strokeOpacity!=undefined){this.writeNode(\"CssParameter\",{symbolizer:symbolizer,key:\"strokeOpacity\"},node);}\nif(symbolizer.strokeWidth!=undefined){this.writeNode(\"CssParameter\",{symbolizer:symbolizer,key:\"strokeWidth\"},node);}\nif(symbolizer.strokeDashstyle!=undefined&&symbolizer.strokeDashstyle!==\"solid\"){this.writeNode(\"CssParameter\",{symbolizer:symbolizer,key:\"strokeDashstyle\"},node);}\nif(symbolizer.strokeLinecap!=undefined){this.writeNode(\"CssParameter\",{symbolizer:symbolizer,key:\"strokeLinecap\"},node);}\nreturn node;},\"CssParameter\":function(obj){return this.createElementNSPlus(\"sld:CssParameter\",{attributes:{name:this.getCssProperty(obj.key)},value:obj.symbolizer[obj.key]});},\"TextSymbolizer\":function(symbolizer){var node=this.createElementNSPlus(\"sld:TextSymbolizer\");if(symbolizer.label!=null){this.writeNode(\"Label\",symbolizer.label,node);}\nif(symbolizer.fontFamily!=null||symbolizer.fontSize!=null||symbolizer.fontWeight!=null||symbolizer.fontStyle!=null){this.writeNode(\"Font\",symbolizer,node);}\nif(symbolizer.haloRadius!=null||symbolizer.haloColor!=null||symbolizer.haloOpacity!=null){this.writeNode(\"Halo\",symbolizer,node);}\nif(symbolizer.fillColor!=null||symbolizer.fillOpacity!=null){this.writeNode(\"Fill\",symbolizer,node);}\nreturn node;},\"Font\":function(symbolizer){var node=this.createElementNSPlus(\"sld:Font\");if(symbolizer.fontFamily){this.writeNode(\"CssParameter\",{symbolizer:symbolizer,key:\"fontFamily\"},node);}\nif(symbolizer.fontSize){this.writeNode(\"CssParameter\",{symbolizer:symbolizer,key:\"fontSize\"},node);}\nif(symbolizer.fontWeight){this.writeNode(\"CssParameter\",{symbolizer:symbolizer,key:\"fontWeight\"},node);}\nif(symbolizer.fontStyle){this.writeNode(\"CssParameter\",{symbolizer:symbolizer,key:\"fontStyle\"},node);}\nreturn node;},\"Label\":function(label){var node=this.createElementNSPlus(\"sld:Label\");var tokens=label.split(\"${\");node.appendChild(this.createTextNode(tokens[0]));var item,last;for(var i=1,len=tokens.length;i<len;i++){item=tokens[i];last=item.indexOf(\"}\");if(last>0){this.writeNode(\"ogc:PropertyName\",{property:item.substring(0,last)},node);node.appendChild(this.createTextNode(item.substring(++last)));}else{node.appendChild(this.createTextNode(\"${\"+item));}}\nreturn node;},\"Halo\":function(symbolizer){var node=this.createElementNSPlus(\"sld:Halo\");if(symbolizer.haloRadius){this.writeNode(\"Radius\",symbolizer.haloRadius,node);}\nif(symbolizer.haloColor||symbolizer.haloOpacity){this.writeNode(\"Fill\",{fillColor:symbolizer.haloColor,fillOpacity:symbolizer.haloOpacity},node);}\nreturn node;},\"Radius\":function(value){return this.createElementNSPlus(\"sld:Radius\",{value:value});},\"RasterSymbolizer\":function(symbolizer){var node=this.createElementNSPlus(\"sld:RasterSymbolizer\");if(symbolizer.geometry){this.writeNode(\"Geometry\",symbolizer.geometry,node);}\nif(symbolizer.opacity){this.writeNode(\"Opacity\",symbolizer.opacity,node);}\nif(symbolizer.colorMap){this.writeNode(\"ColorMap\",symbolizer.colorMap,node);}\nreturn node;},\"Geometry\":function(geometry){var node=this.createElementNSPlus(\"sld:Geometry\");if(geometry.property){this.writeNode(\"ogc:PropertyName\",geometry,node);}\nreturn node;},\"ColorMap\":function(colorMap){var node=this.createElementNSPlus(\"sld:ColorMap\");for(var i=0,len=colorMap.length;i<len;++i){this.writeNode(\"ColorMapEntry\",colorMap[i],node);}\nreturn node;},\"ColorMapEntry\":function(colorMapEntry){var node=this.createElementNSPlus(\"sld:ColorMapEntry\");var a=colorMapEntry;node.setAttribute(\"color\",a.color);a.opacity!==undefined&&node.setAttribute(\"opacity\",parseFloat(a.opacity));a.quantity!==undefined&&node.setAttribute(\"quantity\",parseFloat(a.quantity));a.label!==undefined&&node.setAttribute(\"label\",a.label);return node;},\"PolygonSymbolizer\":function(symbolizer){var node=this.createElementNSPlus(\"sld:PolygonSymbolizer\");if(symbolizer.fill!==false){this.writeNode(\"Fill\",symbolizer,node);}\nif(symbolizer.stroke!==false){this.writeNode(\"Stroke\",symbolizer,node);}\nreturn node;},\"Fill\":function(symbolizer){var node=this.createElementNSPlus(\"sld:Fill\");if(symbolizer.fillColor){this.writeNode(\"CssParameter\",{symbolizer:symbolizer,key:\"fillColor\"},node);}\nif(symbolizer.fillOpacity!=null){this.writeNode(\"CssParameter\",{symbolizer:symbolizer,key:\"fillOpacity\"},node);}\nreturn node;},\"PointSymbolizer\":function(symbolizer){var node=this.createElementNSPlus(\"sld:PointSymbolizer\");this.writeNode(\"Graphic\",symbolizer,node);return node;},\"Graphic\":function(symbolizer){var node=this.createElementNSPlus(\"sld:Graphic\");if(symbolizer.externalGraphic!=undefined){this.writeNode(\"ExternalGraphic\",symbolizer,node);}else{this.writeNode(\"Mark\",symbolizer,node);}\nif(symbolizer.graphicOpacity!=undefined){this.writeNode(\"Opacity\",symbolizer.graphicOpacity,node);}\nif(symbolizer.pointRadius!=undefined){this.writeNode(\"Size\",symbolizer.pointRadius*2,node);}\nif(symbolizer.rotation!=undefined){this.writeNode(\"Rotation\",symbolizer.rotation,node);}\nreturn node;},\"ExternalGraphic\":function(symbolizer){var node=this.createElementNSPlus(\"sld:ExternalGraphic\");this.writeNode(\"OnlineResource\",symbolizer.externalGraphic,node);var format=symbolizer.graphicFormat||this.getGraphicFormat(symbolizer.externalGraphic);this.writeNode(\"Format\",format,node);return node;},\"Mark\":function(symbolizer){var node=this.createElementNSPlus(\"sld:Mark\");if(symbolizer.graphicName){this.writeNode(\"WellKnownName\",symbolizer.graphicName,node);}\nif(symbolizer.fill!==false){this.writeNode(\"Fill\",symbolizer,node);}\nif(symbolizer.stroke!==false){this.writeNode(\"Stroke\",symbolizer,node);}\nreturn node;},\"WellKnownName\":function(name){return this.createElementNSPlus(\"sld:WellKnownName\",{value:name});},\"Opacity\":function(value){return this.createElementNSPlus(\"sld:Opacity\",{value:value});},\"Size\":function(value){return this.createElementNSPlus(\"sld:Size\",{value:value});},\"Rotation\":function(value){return this.createElementNSPlus(\"sld:Rotation\",{value:value});},\"OnlineResource\":function(href){return this.createElementNSPlus(\"sld:OnlineResource\",{attributes:{\"xlink:type\":\"simple\",\"xlink:href\":href}});},\"Format\":function(format){return this.createElementNSPlus(\"sld:Format\",{value:format});}}},OpenLayers.Format.Filter.v1_0_0.prototype.writers),CLASS_NAME:\"OpenLayers.Format.SLD.v1\"});OpenLayers.Format.WFST.v1_0_0=OpenLayers.Class(OpenLayers.Format.Filter.v1_0_0,OpenLayers.Format.WFST.v1,{version:\"1.0.0\",srsNameInQuery:false,schemaLocations:{\"wfs\":\"http://schemas.opengis.net/wfs/1.0.0/WFS-transaction.xsd\"},initialize:function(options){OpenLayers.Format.Filter.v1_0_0.prototype.initialize.apply(this,[options]);OpenLayers.Format.WFST.v1.prototype.initialize.apply(this,[options]);},readers:{\"wfs\":OpenLayers.Util.applyDefaults({\"WFS_TransactionResponse\":function(node,obj){obj.insertIds=[];obj.success=false;this.readChildNodes(node,obj);},\"InsertResult\":function(node,container){var obj={fids:[]};this.readChildNodes(node,obj);container.insertIds.push(obj.fids[0]);},\"TransactionResult\":function(node,obj){this.readChildNodes(node,obj);},\"Status\":function(node,obj){this.readChildNodes(node,obj);},\"SUCCESS\":function(node,obj){obj.success=true;}},OpenLayers.Format.WFST.v1.prototype.readers[\"wfs\"]),\"gml\":OpenLayers.Format.GML.v2.prototype.readers[\"gml\"],\"feature\":OpenLayers.Format.GML.v2.prototype.readers[\"feature\"],\"ogc\":OpenLayers.Format.Filter.v1_0_0.prototype.readers[\"ogc\"]},writers:{\"wfs\":OpenLayers.Util.applyDefaults({\"Query\":function(options){options=OpenLayers.Util.extend({featureNS:this.featureNS,featurePrefix:this.featurePrefix,featureType:this.featureType,srsName:this.srsName,srsNameInQuery:this.srsNameInQuery},options);var node=this.createElementNSPlus(\"wfs:Query\",{attributes:{typeName:(options.featureNS?options.featurePrefix+\":\":\"\")+\noptions.featureType}});if(options.srsNameInQuery&&options.srsName){node.setAttribute(\"srsName\",options.srsName);}\nif(options.featureNS){node.setAttribute(\"xmlns:\"+options.featurePrefix,options.featureNS);}\nif(options.propertyNames){for(var i=0,len=options.propertyNames.length;i<len;i++){this.writeNode(\"ogc:PropertyName\",{property:options.propertyNames[i]},node);}}\nif(options.filter){this.setFilterProperty(options.filter);this.writeNode(\"ogc:Filter\",options.filter,node);}\nreturn node;}},OpenLayers.Format.WFST.v1.prototype.writers[\"wfs\"]),\"gml\":OpenLayers.Format.GML.v2.prototype.writers[\"gml\"],\"feature\":OpenLayers.Format.GML.v2.prototype.writers[\"feature\"],\"ogc\":OpenLayers.Format.Filter.v1_0_0.prototype.writers[\"ogc\"]},CLASS_NAME:\"OpenLayers.Format.WFST.v1_0_0\"});OpenLayers.Format.WFST.v1_1_0=OpenLayers.Class(OpenLayers.Format.Filter.v1_1_0,OpenLayers.Format.WFST.v1,{version:\"1.1.0\",schemaLocations:{\"wfs\":\"http://schemas.opengis.net/wfs/1.1.0/wfs.xsd\"},initialize:function(options){OpenLayers.Format.Filter.v1_1_0.prototype.initialize.apply(this,[options]);OpenLayers.Format.WFST.v1.prototype.initialize.apply(this,[options]);},readers:{\"wfs\":OpenLayers.Util.applyDefaults({\"FeatureCollection\":function(node,obj){obj.numberOfFeatures=parseInt(node.getAttribute(\"numberOfFeatures\"));OpenLayers.Format.WFST.v1.prototype.readers[\"wfs\"][\"FeatureCollection\"].apply(this,arguments);},\"TransactionResponse\":function(node,obj){obj.insertIds=[];obj.success=false;this.readChildNodes(node,obj);},\"TransactionSummary\":function(node,obj){obj.success=true;},\"InsertResults\":function(node,obj){this.readChildNodes(node,obj);},\"Feature\":function(node,container){var obj={fids:[]};this.readChildNodes(node,obj);container.insertIds.push(obj.fids[0]);}},OpenLayers.Format.WFST.v1.prototype.readers[\"wfs\"]),\"gml\":OpenLayers.Format.GML.v3.prototype.readers[\"gml\"],\"feature\":OpenLayers.Format.GML.v3.prototype.readers[\"feature\"],\"ogc\":OpenLayers.Format.Filter.v1_1_0.prototype.readers[\"ogc\"]},writers:{\"wfs\":OpenLayers.Util.applyDefaults({\"GetFeature\":function(options){var node=OpenLayers.Format.WFST.v1.prototype.writers[\"wfs\"][\"GetFeature\"].apply(this,arguments);options&&options.resultType&&this.setAttributes(node,{resultType:options.resultType});return node;},\"Query\":function(options){options=OpenLayers.Util.extend({featureNS:this.featureNS,featurePrefix:this.featurePrefix,featureType:this.featureType,srsName:this.srsName},options);var node=this.createElementNSPlus(\"wfs:Query\",{attributes:{typeName:(options.featureNS?options.featurePrefix+\":\":\"\")+\noptions.featureType,srsName:options.srsName}});if(options.featureNS){node.setAttribute(\"xmlns:\"+options.featurePrefix,options.featureNS);}\nif(options.propertyNames){for(var i=0,len=options.propertyNames.length;i<len;i++){this.writeNode(\"wfs:PropertyName\",{property:options.propertyNames[i]},node);}}\nif(options.filter){this.setFilterProperty(options.filter);this.writeNode(\"ogc:Filter\",options.filter,node);}\nreturn node;},\"PropertyName\":function(obj){return this.createElementNSPlus(\"wfs:PropertyName\",{value:obj.property});}},OpenLayers.Format.WFST.v1.prototype.writers[\"wfs\"]),\"gml\":OpenLayers.Format.GML.v3.prototype.writers[\"gml\"],\"feature\":OpenLayers.Format.GML.v3.prototype.writers[\"feature\"],\"ogc\":OpenLayers.Format.Filter.v1_1_0.prototype.writers[\"ogc\"]},CLASS_NAME:\"OpenLayers.Format.WFST.v1_1_0\"});OpenLayers.Protocol.SOS.v1_0_0=OpenLayers.Class(OpenLayers.Protocol,{fois:null,formatOptions:null,initialize:function(options){OpenLayers.Protocol.prototype.initialize.apply(this,[options]);if(!options.format){this.format=new OpenLayers.Format.SOSGetFeatureOfInterest(this.formatOptions);}},destroy:function(){if(this.options&&!this.options.format){this.format.destroy();}\nthis.format=null;OpenLayers.Protocol.prototype.destroy.apply(this);},read:function(options){options=OpenLayers.Util.extend({},options);OpenLayers.Util.applyDefaults(options,this.options||{});var response=new OpenLayers.Protocol.Response({requestType:\"read\"});var format=this.format;var data=OpenLayers.Format.XML.prototype.write.apply(format,[format.writeNode(\"sos:GetFeatureOfInterest\",{fois:this.fois})]);response.priv=OpenLayers.Request.POST({url:options.url,callback:this.createCallback(this.handleRead,response,options),data:data});return response;},handleRead:function(response,options){if(options.callback){var request=response.priv;if(request.status>=200&&request.status<300){response.features=this.parseFeatures(request);response.code=OpenLayers.Protocol.Response.SUCCESS;}else{response.code=OpenLayers.Protocol.Response.FAILURE;}\noptions.callback.call(options.scope,response);}},parseFeatures:function(request){var doc=request.responseXML;if(!doc||!doc.documentElement){doc=request.responseText;}\nif(!doc||doc.length<=0){return null;}\nreturn this.format.read(doc);},CLASS_NAME:\"OpenLayers.Protocol.SOS.v1_0_0\"});OpenLayers.Format.SLD.v1_0_0=OpenLayers.Class(OpenLayers.Format.SLD.v1,{VERSION:\"1.0.0\",schemaLocation:\"http://www.opengis.net/sld http://schemas.opengis.net/sld/1.0.0/StyledLayerDescriptor.xsd\",initialize:function(options){OpenLayers.Format.SLD.v1.prototype.initialize.apply(this,[options]);},CLASS_NAME:\"OpenLayers.Format.SLD.v1_0_0\"});OpenLayers.Protocol.WFS.v1_0_0=OpenLayers.Class(OpenLayers.Protocol.WFS.v1,{version:\"1.0.0\",CLASS_NAME:\"OpenLayers.Protocol.WFS.v1_0_0\"});OpenLayers.Protocol.WFS.v1_1_0=OpenLayers.Class(OpenLayers.Protocol.WFS.v1,{version:\"1.1.0\",CLASS_NAME:\"OpenLayers.Protocol.WFS.v1_1_0\"});OpenLayers.Format.OWSContext.v0_3_1=OpenLayers.Class(OpenLayers.Format.XML,{namespaces:{owc:\"http://www.opengis.net/ows-context\",gml:\"http://www.opengis.net/gml\",kml:\"http://www.opengis.net/kml/2.2\",ogc:\"http://www.opengis.net/ogc\",ows:\"http://www.opengis.net/ows\",sld:\"http://www.opengis.net/sld\",xlink:\"http://www.w3.org/1999/xlink\",xsi:\"http://www.w3.org/2001/XMLSchema-instance\"},VERSION:\"0.3.1\",schemaLocation:\"http://www.opengis.net/ows-context http://www.ogcnetwork.net/schemas/owc/0.3.1/owsContext.xsd\",defaultPrefix:\"owc\",extractAttributes:true,xy:true,regExes:{trimSpace:(/^\\s*|\\s*$/g),removeSpace:(/\\s*/g),splitSpace:(/\\s+/),trimComma:(/\\s*,\\s*/g)},featureNS:\"http://mapserver.gis.umn.edu/mapserver\",featureType:'vector',geometryName:'geometry',nestingLayerLookup:null,initialize:function(options){OpenLayers.Format.XML.prototype.initialize.apply(this,[options]);OpenLayers.Format.GML.v2.prototype.setGeometryTypes.call(this);},setNestingPath:function(l){if(l.layersContext){for(var i=0,len=l.layersContext.length;i<len;i++){var layerContext=l.layersContext[i];var nPath=[];var nTitle=l.title||\"\";if(l.metadata&&l.metadata.nestingPath){nPath=l.metadata.nestingPath.slice();}\nif(nTitle!=\"\"){nPath.push(nTitle);}\nlayerContext.metadata.nestingPath=nPath;if(layerContext.layersContext){this.setNestingPath(layerContext);}}}},decomposeNestingPath:function(nPath){var a=[];if(nPath instanceof Array){while(nPath.length>0){a.push(nPath.slice());nPath.pop();}\na.reverse();}\nreturn a;},read:function(data){if(typeof data==\"string\"){data=OpenLayers.Format.XML.prototype.read.apply(this,[data]);}\nif(data&&data.nodeType==9){data=data.documentElement;}\nvar context={};this.readNode(data,context);this.setNestingPath({layersContext:context.layersContext});var layers=[];this.processLayer(layers,context);delete context.layersContext;context.layersContext=layers;return context;},processLayer:function(layerArray,layer){if(layer.layersContext){for(var i=0,len=layer.layersContext.length;i<len;i++){var l=layer.layersContext[i];layerArray.push(l);if(l.layersContext){this.processLayer(layerArray,l);}}}},write:function(context,options){var name=\"OWSContext\";this.nestingLayerLookup={};options=options||{};OpenLayers.Util.applyDefaults(options,context);var root=this.writeNode(name,options);this.nestingLayerLookup=null;this.setAttributeNS(root,this.namespaces[\"xsi\"],\"xsi:schemaLocation\",this.schemaLocation);return OpenLayers.Format.XML.prototype.write.apply(this,[root]);},readers:{\"kml\":{\"Document\":function(node,obj){obj.features=new OpenLayers.Format.KML({kmlns:this.namespaces.kml,extractStyles:true}).read(node);}},\"owc\":{\"OWSContext\":function(node,obj){this.readChildNodes(node,obj);},\"General\":function(node,obj){this.readChildNodes(node,obj);},\"ResourceList\":function(node,obj){this.readChildNodes(node,obj);},\"Layer\":function(node,obj){var layerContext={metadata:{},visibility:(node.getAttribute(\"hidden\")!=\"1\"),queryable:(node.getAttribute(\"queryable\")==\"1\"),opacity:((node.getAttribute(\"opacity\")!=null)?parseFloat(node.getAttribute(\"opacity\")):null),name:node.getAttribute(\"name\"),categoryLayer:(node.getAttribute(\"name\")==null),formats:[],styles:[]};if(!obj.layersContext){obj.layersContext=[];}\nobj.layersContext.push(layerContext);this.readChildNodes(node,layerContext);},\"InlineGeometry\":function(node,obj){obj.features=[];var elements=this.getElementsByTagNameNS(node,this.namespaces.gml,\"featureMember\");var el;if(elements.length>=1){el=elements[0];}\nif(el&&el.firstChild){var featurenode=(el.firstChild.nextSibling)?el.firstChild.nextSibling:el.firstChild;this.setNamespace(\"feature\",featurenode.namespaceURI);this.featureType=featurenode.localName||featurenode.nodeName.split(\":\").pop();this.readChildNodes(node,obj);}},\"Server\":function(node,obj){if((!obj.service&&!obj.version)||(obj.service!=OpenLayers.Format.Context.serviceTypes.WMS)){obj.service=node.getAttribute(\"service\");obj.version=node.getAttribute(\"version\");this.readChildNodes(node,obj);}},\"Name\":function(node,obj){obj.name=this.getChildValue(node);this.readChildNodes(node,obj);},\"Title\":function(node,obj){obj.title=this.getChildValue(node);this.readChildNodes(node,obj);},\"StyleList\":function(node,obj){this.readChildNodes(node,obj.styles);},\"Style\":function(node,obj){var style={};obj.push(style);this.readChildNodes(node,style);},\"LegendURL\":function(node,obj){var legend={};obj.legend=legend;this.readChildNodes(node,legend);},\"OnlineResource\":function(node,obj){obj.url=this.getAttributeNS(node,this.namespaces.xlink,\"href\");this.readChildNodes(node,obj);}},\"ows\":OpenLayers.Format.OWSCommon.v1_0_0.prototype.readers.ows,\"gml\":OpenLayers.Format.GML.v2.prototype.readers.gml,\"sld\":OpenLayers.Format.SLD.v1_0_0.prototype.readers.sld,\"feature\":OpenLayers.Format.GML.v2.prototype.readers.feature},writers:{\"owc\":{\"OWSContext\":function(options){var node=this.createElementNSPlus(\"OWSContext\",{attributes:{version:this.VERSION,id:options.id||OpenLayers.Util.createUniqueID(\"OpenLayers_OWSContext_\")}});this.writeNode(\"General\",options,node);this.writeNode(\"ResourceList\",options,node);return node;},\"General\":function(options){var node=this.createElementNSPlus(\"General\");this.writeNode(\"ows:BoundingBox\",options,node);this.writeNode(\"ows:Title\",options.title||'OpenLayers OWSContext',node);return node;},\"ResourceList\":function(options){var node=this.createElementNSPlus(\"ResourceList\");for(var i=0,len=options.layers.length;i<len;i++){var layer=options.layers[i];var decomposedPath=this.decomposeNestingPath(layer.metadata.nestingPath);this.writeNode(\"_Layer\",{layer:layer,subPaths:decomposedPath},node);}\nreturn node;},\"Server\":function(options){var node=this.createElementNSPlus(\"Server\",{attributes:{version:options.version,service:options.service}});this.writeNode(\"OnlineResource\",options,node);return node;},\"OnlineResource\":function(options){var node=this.createElementNSPlus(\"OnlineResource\",{attributes:{\"xlink:href\":options.url}});return node;},\"InlineGeometry\":function(layer){var node=this.createElementNSPlus(\"InlineGeometry\");this.writeNode(\"gml:boundedBy\",layer.getDataExtent(),node);for(var i=0,len=layer.features.length;i<len;i++){this.writeNode(\"gml:featureMember\",layer.features[i],node);}\nreturn node;},\"StyleList\":function(styles){var node=this.createElementNSPlus(\"StyleList\");for(var i=0,len=styles.length;i<len;i++){this.writeNode(\"Style\",styles[i],node);}\nreturn node;},\"Style\":function(style){var node=this.createElementNSPlus(\"Style\");this.writeNode(\"Name\",style,node);this.writeNode(\"Title\",style,node);this.writeNode(\"LegendURL\",style,node);return node;},\"Name\":function(obj){var node=this.createElementNSPlus(\"Name\",{value:obj.name});return node;},\"Title\":function(obj){var node=this.createElementNSPlus(\"Title\",{value:obj.title});return node;},\"LegendURL\":function(style){var node=this.createElementNSPlus(\"LegendURL\");this.writeNode(\"OnlineResource\",style.legend,node);return node;},\"_WMS\":function(layer){var node=this.createElementNSPlus(\"Layer\",{attributes:{name:layer.params.LAYERS,queryable:layer.queryable?\"1\":\"0\",hidden:layer.visibility?\"0\":\"1\",opacity:layer.opacity?layer.opacity:null}});this.writeNode(\"ows:Title\",layer.name,node);this.writeNode(\"ows:OutputFormat\",layer.params.FORMAT,node);this.writeNode(\"Server\",{service:OpenLayers.Format.Context.serviceTypes.WMS,version:layer.params.VERSION,url:layer.url},node);if(layer.metadata.styles&&layer.metadata.styles.length>0){this.writeNode(\"StyleList\",layer.metadata.styles,node);}\nreturn node;},\"_Layer\":function(options){var layer,subPaths,node,title;layer=options.layer;subPaths=options.subPaths;node=null;title=null;if(subPaths.length>0){var path=subPaths[0].join(\"/\");var index=path.lastIndexOf(\"/\");node=this.nestingLayerLookup[path];title=(index>0)?path.substring(index+1,path.length):path;if(!node){node=this.createElementNSPlus(\"Layer\");this.writeNode(\"ows:Title\",title,node);this.nestingLayerLookup[path]=node;}\noptions.subPaths.shift();this.writeNode(\"_Layer\",options,node);return node;}else{if(layer instanceof OpenLayers.Layer.WMS){node=this.writeNode(\"_WMS\",layer);}else if(layer instanceof OpenLayers.Layer.Vector){if(layer.protocol instanceof OpenLayers.Protocol.WFS.v1){node=this.writeNode(\"_WFS\",layer);}else if(layer.protocol instanceof OpenLayers.Protocol.HTTP){if(layer.protocol.format instanceof OpenLayers.Format.GML){layer.protocol.format.version=\"2.1.2\";node=this.writeNode(\"_GML\",layer);}else if(layer.protocol.format instanceof OpenLayers.Format.KML){layer.protocol.format.version=\"2.2\";node=this.writeNode(\"_KML\",layer);}}else{this.setNamespace(\"feature\",this.featureNS);node=this.writeNode(\"_InlineGeometry\",layer);}}\nif(layer.options.maxScale){this.writeNode(\"sld:MinScaleDenominator\",layer.options.maxScale,node);}\nif(layer.options.minScale){this.writeNode(\"sld:MaxScaleDenominator\",layer.options.minScale,node);}\nthis.nestingLayerLookup[layer.name]=node;return node;}},\"_WFS\":function(layer){var node=this.createElementNSPlus(\"Layer\",{attributes:{name:layer.protocol.featurePrefix+\":\"+layer.protocol.featureType,hidden:layer.visibility?\"0\":\"1\"}});this.writeNode(\"ows:Title\",layer.name,node);this.writeNode(\"Server\",{service:OpenLayers.Format.Context.serviceTypes.WFS,version:layer.protocol.version,url:layer.protocol.url},node);return node;},\"_InlineGeometry\":function(layer){var node=this.createElementNSPlus(\"Layer\",{attributes:{name:this.featureType,hidden:layer.visibility?\"0\":\"1\"}});this.writeNode(\"ows:Title\",layer.name,node);this.writeNode(\"InlineGeometry\",layer,node);return node;},\"_GML\":function(layer){var node=this.createElementNSPlus(\"Layer\");this.writeNode(\"ows:Title\",layer.name,node);this.writeNode(\"Server\",{service:OpenLayers.Format.Context.serviceTypes.GML,url:layer.protocol.url,version:layer.protocol.format.version},node);return node;},\"_KML\":function(layer){var node=this.createElementNSPlus(\"Layer\");this.writeNode(\"ows:Title\",layer.name,node);this.writeNode(\"Server\",{service:OpenLayers.Format.Context.serviceTypes.KML,version:layer.protocol.format.version,url:layer.protocol.url},node);return node;}},\"gml\":OpenLayers.Util.applyDefaults({\"boundedBy\":function(bounds){var node=this.createElementNSPlus(\"gml:boundedBy\");this.writeNode(\"gml:Box\",bounds,node);return node;}},OpenLayers.Format.GML.v2.prototype.writers.gml),\"ows\":OpenLayers.Format.OWSCommon.v1_0_0.prototype.writers.ows,\"sld\":OpenLayers.Format.SLD.v1_0_0.prototype.writers.sld,\"feature\":OpenLayers.Format.GML.v2.prototype.writers.feature},CLASS_NAME:\"OpenLayers.Format.OWSContext.v0_3_1\"});"
  },
  {
    "path": "newscoop/js/geocoding/openlayers/license.txt",
    "content": "This license applies to all code and content in the 'branches', 'trunk', and\n'project' directories of the Openlayers code repository at svn.openlayers.org,\nand applies to all release of OpenLayers later than 2.5.\n\nCopyright (c) 2005-2010 OpenLayers Contributors. See authors.txt for\n  full list.\n\nAll rights reserved.\n\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted (subject to the limitations in the\ndisclaimer below) provided that the following conditions are met:\n\n * Redistributions of source code must retain the above copyright\n   notice, this list of conditions and the following disclaimer.\n\n * Redistributions in binary form must reproduce the above copyright\n   notice, this list of conditions and the following disclaimer in the\n   documentation and/or other materials provided with the\n   distribution.\n\n * Neither the name of OpenLayers nor the names of its contributors \n   may be used to endorse or promote products derived from this \n   software without specific prior written permission.\n\nNO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE\nGRANTED BY THIS LICENSE.  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT\nHOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED\nWARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\nMERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\nDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\nLIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\nCONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\nSUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR\nBUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,\nWHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE\nOR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN\nIF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n"
  },
  {
    "path": "newscoop/js/geocoding/openlayers/theme/default/framedCloud.css",
    "content": ""
  },
  {
    "path": "newscoop/js/geocoding/openlayers/theme/default/google.css",
    "content": ".olLayerGoogleCopyright {\n    right: 3px;\n    bottom: 2px;\n    left: auto;  \n}\n.olLayerGooglePoweredBy {\n    left: 2px;\n    bottom: 2px;   \n}\n\n"
  },
  {
    "path": "newscoop/js/geocoding/openlayers/theme/default/ie6-style.css",
    "content": ".olControlZoomPanel div {\n    background-image: url(img/zoom-panel-NOALPHA.png);\n}\n.olControlPanPanel div {\n    background-image: url(img/pan-panel-NOALPHA.png);\n}\n\n"
  },
  {
    "path": "newscoop/js/geocoding/openlayers/theme/default/style.css",
    "content": "div.olMap {\n    z-index: 0;\n    padding: 0px!important;\n    margin: 0px!important;\n    cursor: default;\n}\n\ndiv.olMapViewport {\n    text-align: left;\n}\n\ndiv.olLayerDiv {\n   -moz-user-select: none;\n}\n\n.olLayerGoogleCopyright {\n    left: 2px;\n    bottom: 2px;  \n}\n.olLayerGooglePoweredBy {\n    left: 2px;\n    bottom: 15px;   \n}\n.olControlAttribution {\n    font-size: smaller; \n    right: 3px; \n/*\n    bottom: 4.5em;\n    bottom: 1.5em;\n*/\n    bottom: 2px;\n    position: absolute; \n    display: block;\n}\n.olControlScale {\n    right: 3px;\n    bottom: 3em;\n    display: block;\n    position: absolute;\n    font-size: smaller;\n}\n.olControlScaleLine {\n   display: block;\n   position: absolute;\n   left: 10px;\n   bottom: 15px;\n   font-size: xx-small;\n}\n.olControlScaleLineBottom {\n   border: solid 2px black;\n   border-bottom: none;\n   margin-top:-2px;\n   text-align: center;\n}\n.olControlScaleLineTop {\n   border: solid 2px black;\n   border-top: none;\n   text-align: center;\n}\n\n.olControlPermalink {\n    right: 3px;\n    bottom: 1.5em;\n    display: block;\n    position: absolute;\n    font-size: smaller;\n} \n\ndiv.olControlMousePosition {\n    bottom: 0em;\n    right: 3px;\n    display: block;\n    position: absolute;\n    font-family: Arial;\n    font-size: smaller;\n}\n\n.olControlOverviewMapContainer {\n    position: absolute;\n    bottom: 0px;\n    right: 0px;\n}\n\n.olControlOverviewMapElement {\n    padding: 10px 18px 10px 10px;\n    background-color: #00008B;\n    -moz-border-radius: 1em 0 0 0;\n}\n\n.olControlOverviewMapMinimizeButton {\n    right: 0px;\n    bottom: 80px;\n}    \n\n.olControlOverviewMapMaximizeButton {\n    right: 0px;\n    bottom: 80px;\n}\n\n.olControlOverviewMapExtentRectangle {\n    overflow: hidden;\n    background-image: url(\"img/blank.gif\");\n    cursor: move;\n    border: 2px dotted red;\n}\n.olControlOverviewMapRectReplacement {\n    overflow: hidden;\n    cursor: move;\n    background-image: url(\"img/overview_replacement.gif\");\n    background-repeat: no-repeat;\n    background-position: center;\n}\n\n.olLayerGeoRSSDescription {\n    float:left;\n    width:100%;\n    overflow:auto;\n    font-size:1.0em;\n}\n.olLayerGeoRSSClose {\n    float:right;\n    color:gray;\n    font-size:1.2em;\n    margin-right:6px;\n    font-family:sans-serif;\n}\n.olLayerGeoRSSTitle {\n    float:left;font-size:1.2em;\n}\n\n.olPopupContent {\n    padding:5px;\n    overflow: auto;\n}    \n.olControlNavToolbar { \n    width:0px;\n    height:0px;\n}    \n.olControlNavToolbar div { \n  display:block;\n  width:  28px;\n  height: 28px;\n  top: 300px;\n  left: 6px;\n  position: relative;\n}\n\n.olControlNavigationHistory {\n   background-image: url(\"img/navigation_history.png\");\n   background-repeat: no-repeat;\n   width:  24px;\n   height: 24px;\n\n}\n.olControlNavigationHistoryPreviousItemActive { \n  background-position: 0px 0px;\n}\n.olControlNavigationHistoryPreviousItemInactive { \n   background-position: 0px -24px;\n}\n.olControlNavigationHistoryNextItemActive { \n   background-position: -24px 0px;\n}\n.olControlNavigationHistoryNextItemInactive { \n   background-position: -24px -24px;\n}\n\n.olControlNavToolbar .olControlNavigationItemActive { \n  background-image: url(\"img/panning-hand-on.png\");\n  background-repeat: no-repeat;\n}\n.olControlNavToolbar .olControlNavigationItemInactive { \n  background-image: url(\"img/panning-hand-off.png\");\n  background-repeat: no-repeat;\n}\n.olControlNavToolbar .olControlZoomBoxItemActive { \n  background-image: url(\"img/drag-rectangle-on.png\");\n  background-color: orange;\n  background-repeat: no-repeat;\n}\n.olControlNavToolbar .olControlZoomBoxItemInactive { \n  background-image: url(\"img/drag-rectangle-off.png\");\n  background-repeat: no-repeat;\n}\n.olControlEditingToolbar  {\n    float:right;\n    right: 0px;\n    height: 30px; \n    width: 200px;\n}\n.olControlEditingToolbar div { \n  background-image: url(\"img/editing_tool_bar.png\");\n  background-repeat: no-repeat;\n  float:right;\n  width:  24px;\n  height: 24px;\n  margin: 5px;\n}\n.olControlEditingToolbar .olControlNavigationItemActive { \n  background-position: -103px -23px; \n}\n.olControlEditingToolbar .olControlNavigationItemInactive { \n  background-position: -103px -0px; \n}\n.olControlEditingToolbar .olControlDrawFeaturePointItemActive { \n  background-position: -77px -23px; \n}\n.olControlEditingToolbar .olControlDrawFeaturePointItemInactive { \n  background-position: -77px -0px; \n}\n.olControlEditingToolbar .olControlDrawFeaturePathItemInactive { \n  background-position: -51px 0px; \n}\n.olControlEditingToolbar .olControlDrawFeaturePathItemActive { \n  background-position: -51px -23px; \n}\n.olControlEditingToolbar .olControlDrawFeaturePolygonItemInactive { \n  background-position: -26px 0px; \n}\n.olControlEditingToolbar .olControlDrawFeaturePolygonItemActive { \n  background-position: -26px -23px ;                                                                   \n}\ndiv.olControlSaveFeaturesItemActive { \n    background-image: url(img/save_features_on.png);\n    background-repeat: no-repeat;\n    background-position: 0px 1px;\n}\ndiv.olControlSaveFeaturesItemInactive { \n    background-image: url(img/save_features_off.png);\n    background-repeat: no-repeat;\n    background-position: 0px 1px;\n}\n\n.olHandlerBoxZoomBox {\n    border: 2px solid red;\n    position: absolute;\n    background-color: white;\n    opacity: 0.50;\n    font-size: 1px;\n    filter: alpha(opacity=50);\n}\n.olHandlerBoxSelectFeature {\n    border: 2px solid blue;\n    position: absolute;\n    background-color: white;\n    opacity: 0.50;\n    font-size: 1px;\n    filter: alpha(opacity=50);\n}   \n\n.olControlPanPanel {\n    top: 10px;\n    left: 5px;\n}  \n\n.olControlPanPanel div {\n    background-image: url(img/pan-panel.png);\n    height: 18px;\n    width: 18px;\n    cursor: pointer;\n    position: absolute;\n}\n\n.olControlPanPanel .olControlPanNorthItemInactive {\n    top: 0px;\n    left: 9px;\n    background-position: 0px 0px;\n}\n.olControlPanPanel .olControlPanSouthItemInactive {\n    top: 36px;\n    left: 9px;\n    background-position: 18px 0px;\n}\n.olControlPanPanel .olControlPanWestItemInactive {\n    position: absolute;\n    top: 18px;\n    left: 0px;\n    background-position: 0px 18px;\n}\n.olControlPanPanel .olControlPanEastItemInactive {\n    top: 18px;\n    left: 18px;\n    background-position: 18px 18px;\n}\n\n.olControlZoomPanel {\n    top: 71px;\n    left: 14px;\n} \n\n.olControlZoomPanel div {\n    background-image: url(img/zoom-panel.png);\n    position: absolute;\n    height: 18px;\n    width: 18px;\n    cursor: pointer;\n}\n\n.olControlZoomPanel .olControlZoomInItemInactive {\n    top: 0px;\n    left: 0px;\n    background-position: 0px 0px;\n}\n\n.olControlZoomPanel .olControlZoomToMaxExtentItemInactive {\n    top: 18px;\n    left: 0px;\n    background-position: 0px -18px;\n}\n\n.olControlZoomPanel .olControlZoomOutItemInactive {\n    top: 36px;\n    left: 0px;\n    background-position: 0px 18px;\n}\n\n.olPopupCloseBox {\n  background: url(\"img/close.gif\") no-repeat;\n  cursor: pointer;\n}\n\n.olFramedCloudPopupContent {\n    padding: 5px;\n    overflow: hidden;\n}\n\n.olControlNoSelect {\n -moz-user-select: none;\n}\n\n.olImageLoadError {\n    background-color: pink;\n    opacity: 0.5;\n    filter: alpha(opacity=50); /* IE */\n}\n\n/**\n * Cursor styles\n */\n\n.olCursorWait {\n    cursor: wait;\n}\n.olDragDown {\n    cursor: move;\n}\n.olDrawBox {\n    cursor: crosshair;\n}\n.olControlDragFeatureOver {\n    cursor: move;\n}\n.olControlDragFeatureActive.olControlDragFeatureOver.olDragDown {\n    cursor: -moz-grabbing;\n}\n\n/**\n * Layer switcher\n */\n.olControlLayerSwitcher {\n    position: absolute;\n    top: 25px;\n    right: 0px;\n    width: 20em;\n    font-family: sans-serif;\n    font-weight: bold;\n    margin-top: 3px;\n    margin-left: 3px;\n    margin-bottom: 3px;\n    font-size: smaller;\n    color: white;\n    background-color: transparent;\n}\n\n.olControlLayerSwitcher .layersDiv {\n    padding-top: 5px;\n    padding-left: 10px;\n    padding-bottom: 5px;\n    padding-right: 75px;\n    background-color: #464646;\n    width: 100%;\n    height: 100%;\n}\n\n.olControlLayerSwitcher .layersDiv .baseLbl,\n.olControlLayerSwitcher .layersDiv .dataLbl {\n    margin-top: 3px;\n    margin-left: 3px;\n    margin-bottom: 3px;\n}\n\n.olControlLayerSwitcher .layersDiv .baseLayersDiv,\n.olControlLayerSwitcher .layersDiv .dataLayersDiv {\n    padding-left: 10px;\n}\n\n.olControlLayerSwitcher .maximizeDiv,\n.olControlLayerSwitcher .minimizeDiv {\n    top: 5px;\n    right: 0px;\n}\n"
  },
  {
    "path": "newscoop/js/geocoding/styles/map-info.css",
    "content": ".poilist_name {\n\n}\n.poilist_perex {\n\n}\n\n.geo_map_mapcanvas {\n    font-size: 12px;\n}\n\n.geomap_body_holder {\n    width: 100%;\n    height: 100%;\n}\n\n.geo_map_mapcanvas_large {\n    font-size: 12px;\n    width: 100%;\n    height: 100%;\n}\n\n.popup_title {\n    font-size: 17px;\n    margin: 12px 0 10px 0;\n    background-color: #fffffa;\n    color: #202000;\n\tpadding:0;\n\tmin-height:25px;\n\tmax-width:200px;\n\n}\n\n.popup_title.edit_mode, .popup_text.edit_mode, .popup_content.edit_mode {\n\tmax-width:260px;\n}\n.popup_video {\n\n}\n.popup_image {\n\n}\n.popup_text {\n    font-size: 14px;\n\tmax-width:200px;\n\n}\n.popup_content {\n    font-size: 14px;\n    margin-top: 10px;\n\tmax-width:200px;\n\n}\n\n.geomap_open_large_map {\n    float: right;\n    margin-top: -22px;\n}\n\n.geo_poi_list_name_pos {\n    color: #000040;\n}\n\n\n.olFramedCloudPopupContent input[type=\"text\"] {\n    border: 1px solid #9D9D9D;\n    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1) inset;\n    font-family: Arial,Helvetica,sans-serif;\n    font-size: 16px;\n    height: 23px;\n    margin: 12px 0 10px;\n    padding: 0;\n    text-indent: 3px;\n\tfont-size:17px;\n\twidth:100%;\n\tcolor:#444;\n}\n\n.olFramedCloudPopupContent textarea {\n    border: 1px solid #9D9D9D;\n    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1) inset;\n    font-family: Arial,Helvetica,sans-serif;\n    margin: 0;\n    padding: 0 0 0 3px;\n\tfont-size:14px;\n\twidth:100%;\n\tcolor:#444;\n}\n\n.article_backlinks {\n    max-width: 200px;\n}\n"
  },
  {
    "path": "newscoop/js/jquery/doT.js",
    "content": "/**\n * originally designed by Laura Doktorova in 2011, undet the name of doT.js - https://github.com/olado/doT\n */\n(function()\n{\n    var doT =\n    {\n        version : '0.1'\n    };\n\n    if( typeof module !== 'undefined' && module.exports )\n        module.exports = doT;\n    else\n        this.doT = doT;\n\n    doT.templateSettings =\n    {\n        encode      : /\\{\\{!([\\s\\S]+?)\\}\\}/g,\n        defines     : /\\{\\{#([\\s\\S]+?)\\}\\}/g,\n        evaluate    : /\\{\\%([\\s\\S]+?)\\%\\}/g,\n        interpolate : /\\{\\{([\\s\\S]+?)\\}\\}/g,\n        ends        : /(endfor|endif|enblock)/g,\n        varname     : 'it',\n        strip       : true\n    };\n\n    doT.template = function(tmpl, c, defs)\n    {\n        c = c || doT.templateSettings;\n        var str = (\"with(\"\n                + c.varname\n                + \"){var out='\"\n                + //\n                ((c.strip) ? tmpl.replace( /\\s*<!\\[CDATA\\[\\s*|\\s*\\]\\]>\\s*|[\\r\\n\\t]|(\\/\\*[\\s\\S]*?\\*\\/)/g, '' )\n                        : tmpl)\n                        .replace(c.defines, function(match, code)\n                        {\n                            return eval(code.replace(/[\\r\\t\\n]/g, ' '));\n                        })\n                        .replace(/\\\\/g, '\\\\\\\\')\n                        .replace(/'/g, \"\\\\'\")\n                        .replace(\n                                c.interpolate,\n                                function(match, code)\n                                {\n                                    return \"';out+=\"\n                                            + code.replace(/\\\\'/g, \"'\")\n                                                    .replace(/\\\\\\\\/g, \"\\\\\")\n                                                    .replace(/[\\r\\t\\n]/g, ' ')\n                                            + \";out+='\";\n                                })\n                        .replace(\n                                c.encode,\n                                function(match, code)\n                                {\n                                    return \"';out+=(\"\n                                            + code.replace(/\\\\'/g, \"'\")\n                                                    .replace(/\\\\\\\\/g, \"\\\\\")\n                                                    .replace(/[\\r\\t\\n]/g, ' ')\n                                            + \").toString().replace(/&(?!\\\\w+;)/g, '&#38;').split('<').join('&#60;').split('>').join('&#62;').split('\"\n                                            + '\"'\n                                            + \"').join('&#34;').split(\"\n                                            + '\"'\n                                            + \"'\"\n                                            + '\"'\n                                            + \").join('&#39;').split('/').join('&#x2F;');out+='\";\n                                })\n                        .replace(\n                                c.evaluate,\n                                function(match, code)\n                                {\n                                    var x = \"';\"\n                                            + code.replace(c.ends, '}')\n                                                    .replace(/\\\\'/g, \"'\")\n                                                    .replace(/\\\\\\\\/g, \"\\\\\")\n                                                    .replace(/[\\r\\t\\n]/g,\n                                                            ' ') +(c.ends.test(code)?\"\":\"{\") +\"out+='\";\n                                    c.ends.test(code); // Chrome weird true vs. false fix\n                                    return x; \n                                }) + \"';return out;}\").replace(/\\n/g, '\\\\n')\n                .replace(/\\t/g, '\\\\t').replace(/\\r/g, '\\\\r').split(\"out+='';\")\n                .join('').split('var out=\"\";out+=').join('var out=');\n        try\n        {\n            return new Function( c.varname, str );\n            //return [ c.varname, str ];\n        }\n        catch (e)\n        {\n            if (typeof console !== 'undefined')\n                console.error( \"Could not create a template function: \" + str );\n            throw e;\n        }\n    };\n}());\n\n(function($)\n{\n    $.fn.extend\n    ({\n        tmpl : function(selector, data)\n        {\n          return this.each(function() {\n            $(this).html($.tmpl(selector, data));\n          });\n        }\n    });\n    $.extend\n    ({\n        tmplData: [],\n        tmpl : function(tmpl, data)\n        {\n            if('function' != typeof $.tmplData[tmpl]) {\n\t\t\t\t$.tmplData[tmpl] = doT.template( $(tmpl).html() );\n\t\t\t}\n            return $.tmplData[tmpl](data);\n        }\n    });\n})(jQuery);"
  },
  {
    "path": "newscoop/js/jquery/fancybox/jquery.fancybox-1.3.4.css",
    "content": "/*\r\n * FancyBox - jQuery Plugin\r\n * Simple and fancy lightbox alternative\r\n *\r\n * Examples and documentation at: http://fancybox.net\r\n * \r\n * Copyright (c) 2008 - 2010 Janis Skarnelis\r\n * That said, it is hardly a one-person project. Many people have submitted bugs, code, and offered their advice freely. Their support is greatly appreciated.\r\n * \r\n * Version: 1.3.4 (11/11/2010)\r\n * Requires: jQuery v1.3+\r\n *\r\n * Dual licensed under the MIT and GPL licenses:\r\n *   http://www.opensource.org/licenses/mit-license.php\r\n *   http://www.gnu.org/licenses/gpl.html\r\n */\r\n\r\n#fancybox-loading {\r\n\tposition: fixed;\r\n\ttop: 50%;\r\n\tleft: 50%;\r\n\twidth: 40px;\r\n\theight: 40px;\r\n\tmargin-top: -20px;\r\n\tmargin-left: -20px;\r\n\tcursor: pointer;\r\n\toverflow: hidden;\r\n\tz-index: 1104;\r\n\tdisplay: none;\r\n}\r\n\r\n#fancybox-loading div {\r\n\tposition: absolute;\r\n\ttop: 0;\r\n\tleft: 0;\r\n\twidth: 40px;\r\n\theight: 480px;\r\n\tbackground-image: url('fancybox.png');\r\n}\r\n\r\n#fancybox-overlay {\r\n\tposition: absolute;\r\n\ttop: 0;\r\n\tleft: 0;\r\n\twidth: 100%;\r\n\tz-index: 1100;\r\n\tdisplay: none;\r\n}\r\n\r\n#fancybox-tmp {\r\n\tpadding: 0;\r\n\tmargin: 0;\r\n\tborder: 0;\r\n\toverflow: auto;\r\n\tdisplay: none;\r\n}\r\n\r\n#fancybox-wrap {\r\n\tposition: absolute;\r\n\ttop: 0;\r\n\tleft: 0;\r\n\tpadding: 20px;\r\n\tz-index: 1101;\r\n\toutline: none;\r\n\tdisplay: none;\r\n}\r\n\r\n#fancybox-outer {\r\n\tposition: relative;\r\n\twidth: 100%;\r\n\theight: 100%;\r\n\tbackground: #fff;\r\n}\r\n\r\n#fancybox-content {\r\n\twidth: 0;\r\n\theight: 0;\r\n\tpadding: 0;\r\n\toutline: none;\r\n\tposition: relative;\r\n\toverflow: hidden;\r\n\tz-index: 1102;\r\n\tborder: 0px solid #fff;\r\n}\r\n\r\n#fancybox-hide-sel-frame {\r\n\tposition: absolute;\r\n\ttop: 0;\r\n\tleft: 0;\r\n\twidth: 100%;\r\n\theight: 100%;\r\n\tbackground: transparent;\r\n\tz-index: 1101;\r\n}\r\n\r\n#fancybox-close {\r\n\tposition: absolute;\r\n\ttop: -15px;\r\n\tright: -15px;\r\n\twidth: 30px;\r\n\theight: 30px;\r\n\tbackground: transparent url('fancybox.png') -40px 0px;\r\n\tcursor: pointer;\r\n\tz-index: 1103;\r\n\tdisplay: none;\r\n}\r\n\r\n#fancybox-error {\r\n\tcolor: #444;\r\n\tfont: normal 12px/20px Arial;\r\n\tpadding: 14px;\r\n\tmargin: 0;\r\n}\r\n\r\n#fancybox-img {\r\n\twidth: 100%;\r\n\theight: 100%;\r\n\tpadding: 0;\r\n\tmargin: 0;\r\n\tborder: none;\r\n\toutline: none;\r\n\tline-height: 0;\r\n\tvertical-align: top;\r\n}\r\n\r\n#fancybox-frame {\r\n\twidth: 100%;\r\n\theight: 100%;\r\n\tborder: none;\r\n\tdisplay: block;\r\n}\r\n\r\n#fancybox-left, #fancybox-right {\r\n\tposition: absolute;\r\n\tbottom: 0px;\r\n\theight: 100%;\r\n\twidth: 35%;\r\n\tcursor: pointer;\r\n\toutline: none;\r\n\tbackground: transparent url('blank.gif');\r\n\tz-index: 1102;\r\n\tdisplay: none;\r\n}\r\n\r\n#fancybox-left {\r\n\tleft: 0px;\r\n}\r\n\r\n#fancybox-right {\r\n\tright: 0px;\r\n}\r\n\r\n#fancybox-left-ico, #fancybox-right-ico {\r\n\tposition: absolute;\r\n\ttop: 50%;\r\n\tleft: -9999px;\r\n\twidth: 30px;\r\n\theight: 30px;\r\n\tmargin-top: -15px;\r\n\tcursor: pointer;\r\n\tz-index: 1102;\r\n\tdisplay: block;\r\n}\r\n\r\n#fancybox-left-ico {\r\n\tbackground-image: url('fancybox.png');\r\n\tbackground-position: -40px -30px;\r\n}\r\n\r\n#fancybox-right-ico {\r\n\tbackground-image: url('fancybox.png');\r\n\tbackground-position: -40px -60px;\r\n}\r\n\r\n#fancybox-left:hover, #fancybox-right:hover {\r\n\tvisibility: visible; /* IE6 */\r\n}\r\n\r\n#fancybox-left:hover span {\r\n\tleft: 20px;\r\n}\r\n\r\n#fancybox-right:hover span {\r\n\tleft: auto;\r\n\tright: 20px;\r\n}\r\n\r\n.fancybox-bg {\r\n\tposition: absolute;\r\n\tpadding: 0;\r\n\tmargin: 0;\r\n\tborder: 0;\r\n\twidth: 20px;\r\n\theight: 20px;\r\n\tz-index: 1001;\r\n}\r\n\r\n#fancybox-bg-n {\r\n\ttop: -20px;\r\n\tleft: 0;\r\n\twidth: 100%;\r\n\tbackground-image: url('fancybox-x.png');\r\n}\r\n\r\n#fancybox-bg-ne {\r\n\ttop: -20px;\r\n\tright: -20px;\r\n\tbackground-image: url('fancybox.png');\r\n\tbackground-position: -40px -162px;\r\n}\r\n\r\n#fancybox-bg-e {\r\n\ttop: 0;\r\n\tright: -20px;\r\n\theight: 100%;\r\n\tbackground-image: url('fancybox-y.png');\r\n\tbackground-position: -20px 0px;\r\n}\r\n\r\n#fancybox-bg-se {\r\n\tbottom: -20px;\r\n\tright: -20px;\r\n\tbackground-image: url('fancybox.png');\r\n\tbackground-position: -40px -182px; \r\n}\r\n\r\n#fancybox-bg-s {\r\n\tbottom: -20px;\r\n\tleft: 0;\r\n\twidth: 100%;\r\n\tbackground-image: url('fancybox-x.png');\r\n\tbackground-position: 0px -20px;\r\n}\r\n\r\n#fancybox-bg-sw {\r\n\tbottom: -20px;\r\n\tleft: -20px;\r\n\tbackground-image: url('fancybox.png');\r\n\tbackground-position: -40px -142px;\r\n}\r\n\r\n#fancybox-bg-w {\r\n\ttop: 0;\r\n\tleft: -20px;\r\n\theight: 100%;\r\n\tbackground-image: url('fancybox-y.png');\r\n}\r\n\r\n#fancybox-bg-nw {\r\n\ttop: -20px;\r\n\tleft: -20px;\r\n\tbackground-image: url('fancybox.png');\r\n\tbackground-position: -40px -122px;\r\n}\r\n\r\n#fancybox-title {\r\n\tfont-family: Helvetica;\r\n\tfont-size: 12px;\r\n\tz-index: 1102;\r\n}\r\n\r\n.fancybox-title-inside {\r\n\tpadding-bottom: 10px;\r\n\ttext-align: center;\r\n\tcolor: #333;\r\n\tbackground: #fff;\r\n\tposition: relative;\r\n}\r\n\r\n.fancybox-title-outside {\r\n\tpadding-top: 10px;\r\n\tcolor: #fff;\r\n}\r\n\r\n.fancybox-title-over {\r\n\tposition: absolute;\r\n\tbottom: 0;\r\n\tleft: 0;\r\n\tcolor: #FFF;\r\n\ttext-align: left;\r\n}\r\n\r\n#fancybox-title-over {\r\n\tpadding: 10px;\r\n\tbackground-image: url('fancy_title_over.png');\r\n\tdisplay: block;\r\n}\r\n\r\n.fancybox-title-float {\r\n\tposition: absolute;\r\n\tleft: 0;\r\n\tbottom: -20px;\r\n\theight: 32px;\r\n}\r\n\r\n#fancybox-title-float-wrap {\r\n\tborder: none;\r\n\tborder-collapse: collapse;\r\n\twidth: auto;\r\n}\r\n\r\n#fancybox-title-float-wrap td {\r\n\tborder: none;\r\n\twhite-space: nowrap;\r\n}\r\n\r\n#fancybox-title-float-left {\r\n\tpadding: 0 0 0 15px;\r\n\tbackground: url('fancybox.png') -40px -90px no-repeat;\r\n}\r\n\r\n#fancybox-title-float-main {\r\n\tcolor: #FFF;\r\n\tline-height: 29px;\r\n\tfont-weight: bold;\r\n\tpadding: 0 0 3px 0;\r\n\tbackground: url('fancybox-x.png') 0px -40px;\r\n}\r\n\r\n#fancybox-title-float-right {\r\n\tpadding: 0 0 0 15px;\r\n\tbackground: url('fancybox.png') -55px -90px no-repeat;\r\n}\r\n\r\n/* IE6 */\r\n\r\n.fancybox-ie6 #fancybox-close { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_close.png', sizingMethod='scale'); }\r\n\r\n.fancybox-ie6 #fancybox-left-ico { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_nav_left.png', sizingMethod='scale'); }\r\n.fancybox-ie6 #fancybox-right-ico { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_nav_right.png', sizingMethod='scale'); }\r\n\r\n.fancybox-ie6 #fancybox-title-over { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_title_over.png', sizingMethod='scale'); zoom: 1; }\r\n.fancybox-ie6 #fancybox-title-float-left { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_title_left.png', sizingMethod='scale'); }\r\n.fancybox-ie6 #fancybox-title-float-main { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_title_main.png', sizingMethod='scale'); }\r\n.fancybox-ie6 #fancybox-title-float-right { background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_title_right.png', sizingMethod='scale'); }\r\n\r\n.fancybox-ie6 #fancybox-bg-w, .fancybox-ie6 #fancybox-bg-e, .fancybox-ie6 #fancybox-left, .fancybox-ie6 #fancybox-right, #fancybox-hide-sel-frame {\r\n\theight: expression(this.parentNode.clientHeight + \"px\");\r\n}\r\n\r\n#fancybox-loading.fancybox-ie6 {\r\n\tposition: absolute; margin-top: 0;\r\n\ttop: expression( (-20 + (document.documentElement.clientHeight ? document.documentElement.clientHeight/2 : document.body.clientHeight/2 ) + ( ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop )) + 'px');\r\n}\r\n\r\n#fancybox-loading.fancybox-ie6 div\t{ background: transparent; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_loading.png', sizingMethod='scale'); }\r\n\r\n/* IE6, IE7, IE8 */\r\n\r\n.fancybox-ie .fancybox-bg { background: transparent !important; }\r\n\r\n.fancybox-ie #fancybox-bg-n { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_n.png', sizingMethod='scale'); }\r\n.fancybox-ie #fancybox-bg-ne { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_ne.png', sizingMethod='scale'); }\r\n.fancybox-ie #fancybox-bg-e { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_e.png', sizingMethod='scale'); }\r\n.fancybox-ie #fancybox-bg-se { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_se.png', sizingMethod='scale'); }\r\n.fancybox-ie #fancybox-bg-s { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_s.png', sizingMethod='scale'); }\r\n.fancybox-ie #fancybox-bg-sw { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_sw.png', sizingMethod='scale'); }\r\n.fancybox-ie #fancybox-bg-w { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_w.png', sizingMethod='scale'); }\r\n.fancybox-ie #fancybox-bg-nw { filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='fancybox/fancy_shadow_nw.png', sizingMethod='scale'); }"
  },
  {
    "path": "newscoop/js/jquery/fancybox/jquery.fancybox-1.3.4.pack.js",
    "content": "/*\n * FancyBox - jQuery Plugin\n * Simple and fancy lightbox alternative\n *\n * Examples and documentation at: http://fancybox.net\n * \n * Copyright (c) 2008 - 2010 Janis Skarnelis\n * That said, it is hardly a one-person project. Many people have submitted bugs, code, and offered their advice freely. Their support is greatly appreciated.\n * \n * Version: 1.3.4 (11/11/2010)\n * Requires: jQuery v1.3+\n *\n * Dual licensed under the MIT and GPL licenses:\n *   http://www.opensource.org/licenses/mit-license.php\n *   http://www.gnu.org/licenses/gpl.html\n */\n\n;(function(b){var m,t,u,f,D,j,E,n,z,A,q=0,e={},o=[],p=0,d={},l=[],G=null,v=new Image,J=/\\.(jpg|gif|png|bmp|jpeg)(.*)?$/i,W=/[^\\.]\\.(swf)\\s*$/i,K,L=1,y=0,s=\"\",r,i,h=false,B=b.extend(b(\"<div/>\")[0],{prop:0}),M=b.browser.msie&&b.browser.version<7&&!window.XMLHttpRequest,N=function(){t.hide();v.onerror=v.onload=null;G&&G.abort();m.empty()},O=function(){if(false===e.onError(o,q,e)){t.hide();h=false}else{e.titleShow=false;e.width=\"auto\";e.height=\"auto\";m.html('<p id=\"fancybox-error\">The requested content cannot be loaded.<br />Please try again later.</p>');\nF()}},I=function(){var a=o[q],c,g,k,C,P,w;N();e=b.extend({},b.fn.fancybox.defaults,typeof b(a).data(\"fancybox\")==\"undefined\"?e:b(a).data(\"fancybox\"));w=e.onStart(o,q,e);if(w===false)h=false;else{if(typeof w==\"object\")e=b.extend(e,w);k=e.title||(a.nodeName?b(a).attr(\"title\"):a.title)||\"\";if(a.nodeName&&!e.orig)e.orig=b(a).children(\"img:first\").length?b(a).children(\"img:first\"):b(a);if(k===\"\"&&e.orig&&e.titleFromAlt)k=e.orig.attr(\"alt\");c=e.href||(a.nodeName?b(a).attr(\"href\"):a.href)||null;if(/^(?:javascript)/i.test(c)||\nc==\"#\")c=null;if(e.type){g=e.type;if(!c)c=e.content}else if(e.content)g=\"html\";else if(c)g=c.match(J)?\"image\":c.match(W)?\"swf\":b(a).hasClass(\"iframe\")?\"iframe\":c.indexOf(\"#\")===0?\"inline\":\"ajax\";if(g){if(g==\"inline\"){a=c.substr(c.indexOf(\"#\"));g=b(a).length>0?\"inline\":\"ajax\"}e.type=g;e.href=c;e.title=k;if(e.autoDimensions)if(e.type==\"html\"||e.type==\"inline\"||e.type==\"ajax\"){e.width=\"auto\";e.height=\"auto\"}else e.autoDimensions=false;if(e.modal){e.overlayShow=true;e.hideOnOverlayClick=false;e.hideOnContentClick=\nfalse;e.enableEscapeButton=false;e.showCloseButton=false}e.padding=parseInt(e.padding,10);e.margin=parseInt(e.margin,10);m.css(\"padding\",e.padding+e.margin);b(\".fancybox-inline-tmp\").unbind(\"fancybox-cancel\").bind(\"fancybox-change\",function(){b(this).replaceWith(j.children())});switch(g){case \"html\":m.html(e.content);F();break;case \"inline\":if(b(a).parent().is(\"#fancybox-content\")===true){h=false;break}b('<div class=\"fancybox-inline-tmp\" />').hide().insertBefore(b(a)).bind(\"fancybox-cleanup\",function(){b(this).replaceWith(j.children())}).bind(\"fancybox-cancel\",\nfunction(){b(this).replaceWith(m.children())});b(a).appendTo(m);F();break;case \"image\":h=false;b.fancybox.showActivity();v=new Image;v.onerror=function(){O()};v.onload=function(){h=true;v.onerror=v.onload=null;e.width=v.width;e.height=v.height;b(\"<img />\").attr({id:\"fancybox-img\",src:v.src,alt:e.title}).appendTo(m);Q()};v.src=c;break;case \"swf\":e.scrolling=\"no\";C='<object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" width=\"'+e.width+'\" height=\"'+e.height+'\"><param name=\"movie\" value=\"'+c+\n'\"></param>';P=\"\";b.each(e.swf,function(x,H){C+='<param name=\"'+x+'\" value=\"'+H+'\"></param>';P+=\" \"+x+'=\"'+H+'\"'});C+='<embed src=\"'+c+'\" type=\"application/x-shockwave-flash\" width=\"'+e.width+'\" height=\"'+e.height+'\"'+P+\"></embed></object>\";m.html(C);F();break;case \"ajax\":h=false;b.fancybox.showActivity();e.ajax.win=e.ajax.success;G=b.ajax(b.extend({},e.ajax,{url:c,data:e.ajax.data||{},error:function(x){x.status>0&&O()},success:function(x,H,R){if((typeof R==\"object\"?R:G).status==200){if(typeof e.ajax.win==\n\"function\"){w=e.ajax.win(c,x,H,R);if(w===false){t.hide();return}else if(typeof w==\"string\"||typeof w==\"object\")x=w}m.html(x);F()}}}));break;case \"iframe\":Q()}}else O()}},F=function(){var a=e.width,c=e.height;a=a.toString().indexOf(\"%\")>-1?parseInt((b(window).width()-e.margin*2)*parseFloat(a)/100,10)+\"px\":a==\"auto\"?\"auto\":a+\"px\";c=c.toString().indexOf(\"%\")>-1?parseInt((b(window).height()-e.margin*2)*parseFloat(c)/100,10)+\"px\":c==\"auto\"?\"auto\":c+\"px\";m.wrapInner('<div style=\"width:'+a+\";height:\"+c+\n\";overflow: \"+(e.scrolling==\"auto\"?\"auto\":e.scrolling==\"yes\"?\"scroll\":\"hidden\")+';position:relative;\"></div>');e.width=m.width();e.height=m.height();Q()},Q=function(){var a,c;t.hide();if(f.is(\":visible\")&&false===d.onCleanup(l,p,d)){b.event.trigger(\"fancybox-cancel\");h=false}else{h=true;b(j.add(u)).unbind();b(window).unbind(\"resize.fb scroll.fb\");b(document).unbind(\"keydown.fb\");f.is(\":visible\")&&d.titlePosition!==\"outside\"&&f.css(\"height\",f.height());l=o;p=q;d=e;if(d.overlayShow){u.css({\"background-color\":d.overlayColor,\nopacity:d.overlayOpacity,cursor:d.hideOnOverlayClick?\"pointer\":\"auto\",height:b(document).height()});if(!u.is(\":visible\")){M&&b(\"select:not(#fancybox-tmp select)\").filter(function(){return this.style.visibility!==\"hidden\"}).css({visibility:\"hidden\"}).one(\"fancybox-cleanup\",function(){this.style.visibility=\"inherit\"});u.show()}}else u.hide();i=X();s=d.title||\"\";y=0;n.empty().removeAttr(\"style\").removeClass();if(d.titleShow!==false){if(b.isFunction(d.titleFormat))a=d.titleFormat(s,l,p,d);else a=s&&s.length?\nd.titlePosition==\"float\"?'<table id=\"fancybox-title-float-wrap\" cellpadding=\"0\" cellspacing=\"0\"><tr><td id=\"fancybox-title-float-left\"></td><td id=\"fancybox-title-float-main\">'+s+'</td><td id=\"fancybox-title-float-right\"></td></tr></table>':'<div id=\"fancybox-title-'+d.titlePosition+'\">'+s+\"</div>\":false;s=a;if(!(!s||s===\"\")){n.addClass(\"fancybox-title-\"+d.titlePosition).html(s).appendTo(\"body\").show();switch(d.titlePosition){case \"inside\":n.css({width:i.width-d.padding*2,marginLeft:d.padding,marginRight:d.padding});\ny=n.outerHeight(true);n.appendTo(D);i.height+=y;break;case \"over\":n.css({marginLeft:d.padding,width:i.width-d.padding*2,bottom:d.padding}).appendTo(D);break;case \"float\":n.css(\"left\",parseInt((n.width()-i.width-40)/2,10)*-1).appendTo(f);break;default:n.css({width:i.width-d.padding*2,paddingLeft:d.padding,paddingRight:d.padding}).appendTo(f)}}}n.hide();if(f.is(\":visible\")){b(E.add(z).add(A)).hide();a=f.position();r={top:a.top,left:a.left,width:f.width(),height:f.height()};c=r.width==i.width&&r.height==\ni.height;j.fadeTo(d.changeFade,0.3,function(){var g=function(){j.html(m.contents()).fadeTo(d.changeFade,1,S)};b.event.trigger(\"fancybox-change\");j.empty().removeAttr(\"filter\").css({\"border-width\":d.padding,width:i.width-d.padding*2,height:e.autoDimensions?\"auto\":i.height-y-d.padding*2});if(c)g();else{B.prop=0;b(B).animate({prop:1},{duration:d.changeSpeed,easing:d.easingChange,step:T,complete:g})}})}else{f.removeAttr(\"style\");j.css(\"border-width\",d.padding);if(d.transitionIn==\"elastic\"){r=V();j.html(m.contents());\nf.show();if(d.opacity)i.opacity=0;B.prop=0;b(B).animate({prop:1},{duration:d.speedIn,easing:d.easingIn,step:T,complete:S})}else{d.titlePosition==\"inside\"&&y>0&&n.show();j.css({width:i.width-d.padding*2,height:e.autoDimensions?\"auto\":i.height-y-d.padding*2}).html(m.contents());f.css(i).fadeIn(d.transitionIn==\"none\"?0:d.speedIn,S)}}}},Y=function(){if(d.enableEscapeButton||d.enableKeyboardNav)b(document).bind(\"keydown.fb\",function(a){if(a.keyCode==27&&d.enableEscapeButton){a.preventDefault();b.fancybox.close()}else if((a.keyCode==\n37||a.keyCode==39)&&d.enableKeyboardNav&&a.target.tagName!==\"INPUT\"&&a.target.tagName!==\"TEXTAREA\"&&a.target.tagName!==\"SELECT\"){a.preventDefault();b.fancybox[a.keyCode==37?\"prev\":\"next\"]()}});if(d.showNavArrows){if(d.cyclic&&l.length>1||p!==0)z.show();if(d.cyclic&&l.length>1||p!=l.length-1)A.show()}else{z.hide();A.hide()}},S=function(){if(!b.support.opacity){j.get(0).style.removeAttribute(\"filter\");f.get(0).style.removeAttribute(\"filter\")}e.autoDimensions&&j.css(\"height\",\"auto\");f.css(\"height\",\"auto\");\ns&&s.length&&n.show();d.showCloseButton&&E.show();Y();d.hideOnContentClick&&j.bind(\"click\",b.fancybox.close);d.hideOnOverlayClick&&u.bind(\"click\",b.fancybox.close);b(window).bind(\"resize.fb\",b.fancybox.resize);d.centerOnScroll&&b(window).bind(\"scroll.fb\",b.fancybox.center);if(d.type==\"iframe\")b('<iframe id=\"fancybox-frame\" name=\"fancybox-frame'+(new Date).getTime()+'\" frameborder=\"0\" hspace=\"0\" '+(b.browser.msie?'allowtransparency=\"true\"\"':\"\")+' scrolling=\"'+e.scrolling+'\" src=\"'+d.href+'\"></iframe>').appendTo(j);\nf.show();h=false;b.fancybox.center();d.onComplete(l,p,d);var a,c;if(l.length-1>p){a=l[p+1].href;if(typeof a!==\"undefined\"&&a.match(J)){c=new Image;c.src=a}}if(p>0){a=l[p-1].href;if(typeof a!==\"undefined\"&&a.match(J)){c=new Image;c.src=a}}},T=function(a){var c={width:parseInt(r.width+(i.width-r.width)*a,10),height:parseInt(r.height+(i.height-r.height)*a,10),top:parseInt(r.top+(i.top-r.top)*a,10),left:parseInt(r.left+(i.left-r.left)*a,10)};if(typeof i.opacity!==\"undefined\")c.opacity=a<0.5?0.5:a;f.css(c);\nj.css({width:c.width-d.padding*2,height:c.height-y*a-d.padding*2})},U=function(){return[b(window).width()-d.margin*2,b(window).height()-d.margin*2,b(document).scrollLeft()+d.margin,b(document).scrollTop()+d.margin]},X=function(){var a=U(),c={},g=d.autoScale,k=d.padding*2;c.width=d.width.toString().indexOf(\"%\")>-1?parseInt(a[0]*parseFloat(d.width)/100,10):d.width+k;c.height=d.height.toString().indexOf(\"%\")>-1?parseInt(a[1]*parseFloat(d.height)/100,10):d.height+k;if(g&&(c.width>a[0]||c.height>a[1]))if(e.type==\n\"image\"||e.type==\"swf\"){g=d.width/d.height;if(c.width>a[0]){c.width=a[0];c.height=parseInt((c.width-k)/g+k,10)}if(c.height>a[1]){c.height=a[1];c.width=parseInt((c.height-k)*g+k,10)}}else{c.width=Math.min(c.width,a[0]);c.height=Math.min(c.height,a[1])}c.top=parseInt(Math.max(a[3]-20,a[3]+(a[1]-c.height-40)*0.5),10);c.left=parseInt(Math.max(a[2]-20,a[2]+(a[0]-c.width-40)*0.5),10);return c},V=function(){var a=e.orig?b(e.orig):false,c={};if(a&&a.length){c=a.offset();c.top+=parseInt(a.css(\"paddingTop\"),\n10)||0;c.left+=parseInt(a.css(\"paddingLeft\"),10)||0;c.top+=parseInt(a.css(\"border-top-width\"),10)||0;c.left+=parseInt(a.css(\"border-left-width\"),10)||0;c.width=a.width();c.height=a.height();c={width:c.width+d.padding*2,height:c.height+d.padding*2,top:c.top-d.padding-20,left:c.left-d.padding-20}}else{a=U();c={width:d.padding*2,height:d.padding*2,top:parseInt(a[3]+a[1]*0.5,10),left:parseInt(a[2]+a[0]*0.5,10)}}return c},Z=function(){if(t.is(\":visible\")){b(\"div\",t).css(\"top\",L*-40+\"px\");L=(L+1)%12}else clearInterval(K)};\nb.fn.fancybox=function(a){if(!b(this).length)return this;b(this).data(\"fancybox\",b.extend({},a,b.metadata?b(this).metadata():{})).unbind(\"click.fb\").bind(\"click.fb\",function(c){c.preventDefault();if(!h){h=true;b(this).blur();o=[];q=0;c=b(this).attr(\"rel\")||\"\";if(!c||c==\"\"||c===\"nofollow\")o.push(this);else{o=b(\"a[rel=\"+c+\"], area[rel=\"+c+\"]\");q=o.index(this)}I()}});return this};b.fancybox=function(a,c){var g;if(!h){h=true;g=typeof c!==\"undefined\"?c:{};o=[];q=parseInt(g.index,10)||0;if(b.isArray(a)){for(var k=\n0,C=a.length;k<C;k++)if(typeof a[k]==\"object\")b(a[k]).data(\"fancybox\",b.extend({},g,a[k]));else a[k]=b({}).data(\"fancybox\",b.extend({content:a[k]},g));o=jQuery.merge(o,a)}else{if(typeof a==\"object\")b(a).data(\"fancybox\",b.extend({},g,a));else a=b({}).data(\"fancybox\",b.extend({content:a},g));o.push(a)}if(q>o.length||q<0)q=0;I()}};b.fancybox.showActivity=function(){clearInterval(K);t.show();K=setInterval(Z,66)};b.fancybox.hideActivity=function(){t.hide()};b.fancybox.next=function(){return b.fancybox.pos(p+\n1)};b.fancybox.prev=function(){return b.fancybox.pos(p-1)};b.fancybox.pos=function(a){if(!h){a=parseInt(a);o=l;if(a>-1&&a<l.length){q=a;I()}else if(d.cyclic&&l.length>1){q=a>=l.length?0:l.length-1;I()}}};b.fancybox.cancel=function(){if(!h){h=true;b.event.trigger(\"fancybox-cancel\");N();e.onCancel(o,q,e);h=false}};b.fancybox.close=function(){function a(){u.fadeOut(\"fast\");n.empty().hide();f.hide();b.event.trigger(\"fancybox-cleanup\");j.empty();d.onClosed(l,p,d);l=e=[];p=q=0;d=e={};h=false}if(!(h||f.is(\":hidden\"))){h=\ntrue;if(d&&false===d.onCleanup(l,p,d))h=false;else{N();b(E.add(z).add(A)).hide();b(j.add(u)).unbind();b(window).unbind(\"resize.fb scroll.fb\");b(document).unbind(\"keydown.fb\");j.find(\"iframe\").attr(\"src\",M&&/^https/i.test(window.location.href||\"\")?\"javascript:void(false)\":\"about:blank\");d.titlePosition!==\"inside\"&&n.empty();f.stop();if(d.transitionOut==\"elastic\"){r=V();var c=f.position();i={top:c.top,left:c.left,width:f.width(),height:f.height()};if(d.opacity)i.opacity=1;n.empty().hide();B.prop=1;\nb(B).animate({prop:0},{duration:d.speedOut,easing:d.easingOut,step:T,complete:a})}else f.fadeOut(d.transitionOut==\"none\"?0:d.speedOut,a)}}};b.fancybox.resize=function(){u.is(\":visible\")&&u.css(\"height\",b(document).height());b.fancybox.center(true)};b.fancybox.center=function(a){var c,g;if(!h){g=a===true?1:0;c=U();!g&&(f.width()>c[0]||f.height()>c[1])||f.stop().animate({top:parseInt(Math.max(c[3]-20,c[3]+(c[1]-j.height()-40)*0.5-d.padding)),left:parseInt(Math.max(c[2]-20,c[2]+(c[0]-j.width()-40)*0.5-\nd.padding))},typeof a==\"number\"?a:200)}};b.fancybox.init=function(){if(!b(\"#fancybox-wrap\").length){b(\"body\").append(m=b('<div id=\"fancybox-tmp\"></div>'),t=b('<div id=\"fancybox-loading\"><div></div></div>'),u=b('<div id=\"fancybox-overlay\"></div>'),f=b('<div id=\"fancybox-wrap\"></div>'));D=b('<div id=\"fancybox-outer\"></div>').append('<div class=\"fancybox-bg\" id=\"fancybox-bg-n\"></div><div class=\"fancybox-bg\" id=\"fancybox-bg-ne\"></div><div class=\"fancybox-bg\" id=\"fancybox-bg-e\"></div><div class=\"fancybox-bg\" id=\"fancybox-bg-se\"></div><div class=\"fancybox-bg\" id=\"fancybox-bg-s\"></div><div class=\"fancybox-bg\" id=\"fancybox-bg-sw\"></div><div class=\"fancybox-bg\" id=\"fancybox-bg-w\"></div><div class=\"fancybox-bg\" id=\"fancybox-bg-nw\"></div>').appendTo(f);\nD.append(j=b('<div id=\"fancybox-content\"></div>'),E=b('<a id=\"fancybox-close\"></a>'),n=b('<div id=\"fancybox-title\"></div>'),z=b('<a href=\"javascript:;\" id=\"fancybox-left\"><span class=\"fancy-ico\" id=\"fancybox-left-ico\"></span></a>'),A=b('<a href=\"javascript:;\" id=\"fancybox-right\"><span class=\"fancy-ico\" id=\"fancybox-right-ico\"></span></a>'));E.click(b.fancybox.close);t.click(b.fancybox.cancel);z.click(function(a){a.preventDefault();b.fancybox.prev()});A.click(function(a){a.preventDefault();b.fancybox.next()});\nb.fn.mousewheel&&f.bind(\"mousewheel.fb\",function(a,c){if(h)a.preventDefault();else if(b(a.target).get(0).clientHeight==0||b(a.target).get(0).scrollHeight===b(a.target).get(0).clientHeight){a.preventDefault();b.fancybox[c>0?\"prev\":\"next\"]()}});b.support.opacity||f.addClass(\"fancybox-ie\");if(M){t.addClass(\"fancybox-ie6\");f.addClass(\"fancybox-ie6\");b('<iframe id=\"fancybox-hide-sel-frame\" src=\"'+(/^https/i.test(window.location.href||\"\")?\"javascript:void(false)\":\"about:blank\")+'\" scrolling=\"no\" border=\"0\" frameborder=\"0\" tabindex=\"-1\"></iframe>').prependTo(D)}}};\nb.fn.fancybox.defaults={padding:10,margin:40,opacity:false,modal:false,cyclic:false,scrolling:\"auto\",width:560,height:340,autoScale:true,autoDimensions:true,centerOnScroll:false,ajax:{},swf:{wmode:\"transparent\"},hideOnOverlayClick:true,hideOnContentClick:false,overlayShow:true,overlayOpacity:0.7,overlayColor:\"#777\",titleShow:true,titlePosition:\"float\",titleFormat:null,titleFromAlt:false,transitionIn:\"fade\",transitionOut:\"fade\",speedIn:300,speedOut:300,changeSpeed:300,changeFade:\"fast\",easingIn:\"swing\",\neasingOut:\"swing\",showCloseButton:true,showNavArrows:true,enableEscapeButton:true,enableKeyboardNav:true,onStart:function(){},onCancel:function(){},onComplete:function(){},onCleanup:function(){},onClosed:function(){},onError:function(){}};b(document).ready(function(){b.fancybox.init()})})(jQuery);"
  },
  {
    "path": "newscoop/js/jquery/feedback.js",
    "content": "var statusMap = {\n    'pending': 'new',\n    'processed': 'processed',\n    'starred': 'starred',\n    'deleted': 'deleted'\n};\nvar attachmentTypeMap = {\n    'none': 'none',\n    'image': 'image',\n    'document': 'document'\n};\nvar datatableCallback = {\n    serverData: {},\n    loading: false,\n    addServerData: function (sSource, aoData, fnCallback) {\n        that = datatableCallback;\n        for (i in that.serverData) {\n            if (i == 'pending' || i == 'processed' || i == 'starred' || i == 'deleted') {\n\t\t\t\tif (that.serverData[i]) {\n\t\t\t\t\taoData.push({\n\t\t\t\t\t\t\"name\": \"sFilter[status][]\",\n\t\t\t\t\t\t\"value\": i\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tif (that.serverData[i]) {\n\t\t\t\t\taoData.push({\n\t\t\t\t\t\t\"name\": \"sFilter[attachmentType][]\",\n\t\t\t\t\t\t\"value\": i\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n        }\n        $.getJSON(sSource, aoData, function (json) {\n            fnCallback(json);\n        });\n    },\n    row: function (nRow, aData, iDisplayIndex, iDisplayIndexFull) {\n        $(nRow)\n            .addClass('attachment_type_' + attachmentTypeMap[aData.message.attachmentType])\n            .addClass('status_' + statusMap[aData.message.status])\n            .tmpl('#comment-tmpl', aData)\n            .find(\"input.\"+ statusMap[aData.message.status]).attr(\"checked\",\"checked\");\n        return nRow;\n    },\n    draw: function () {\n        $(\".commentsHolder table tbody tr\").hover(function () {\n            $(this).find(\".commentBtns\").css(\"visibility\", \"visible\");\n        }, function () {\n            $(this).find(\".commentBtns\").css(\"visibility\", \"hidden\");\n        });\n        datatableCallback.loading = false;\n    },\n    init: function() {\n        $('.dataTables_filter input').attr('placeholder',putGS('Search'));\n        $('#actionExtender').html('<fieldset>\\\n                                <legend>' + putGS('Actions') + '</legend> \\\n                                <select class=\"input_select actions\">\\\n                                  <option value=\"\">' + putGS('Change selected messages status') + '</option>\\\n                                  <option value=\"pending\">' + putGS('New') + '</option>\\\n                                  <option value=\"processed\">' + putGS('Processed') + '</option>\\\n                                  <option value=\"starred\">' + putGS('Starred') + '</option>\\\n                                  <option value=\"deleted\">' + putGS('Deleted')+ '</option>\\\n                                </select>\\\n                              </fieldset>');\n        $('.actions').change(function () {\n            action = $(this);\n            var status = action.val();\n            if (status != '') {\n                ids = [];\n                $('.table-checkbox:checked').each(function () {\n                    ids[ids.length] = $(this).val();\n                });\n                action.val('');\n                if (!ids.length) return;\n                \n                \n                if (status == 'deleted' && !confirm(putGS('You are about to permanently delete multiple messages.') + '\\n' + putGS('Are you sure you want to do it?'))) {\n                    return false;\n                }\n                \n                $.ajax({\n                    type: 'POST',\n                    url: 'feedback/set-status/format/json',\n                    data: $.extend({\n                        \"feedback\": ids,\n                        \"status\": status\n                    }, serverObj.security),\n                    success: function (data) {\n                        flashMessage(putGS('Messages status change to $1.', statusMap[status]));\n                        datatable.fnDraw(false);\n                    },\n                    error: function (rq, status, error) {\n                        if (status == 0 || status == -1) {\n                            flashMessage(putGS('Unable to reach Newscoop. Please check your internet connection.'), \"error\");\n                        }\n                    }\n                });\n            }\n        });\n        \n        $('.table-checkbox').click(function(){\n\t\t\tif(!$(this).is(':checked')) {\n\t\t\t\t$('.toggle-checkbox').removeAttr('checked');\n\t\t\t}\n\t\t});\n    }\n};\n$(function () {\n    //$('.tabs').tabs();\n    //$('.tabs').tabs('select', '#tabs-1');    \n    var commentFilterTriggerCount = 0;\n    $(\"#commentFilterTrigger\").click(function () {\n        if (commentFilterTriggerCount == 0) {\n            $(\"#commentFilterSearch\").css(\"display\", \"block\");\n            $(this).addClass(\"collapsed\");\n            commentFilterTriggerCount = 1;\n        } else {\n            $(\"#commentFilterSearch\").css(\"display\", \"none\");\n            $(this).removeClass(\"collapsed\");\n            commentFilterTriggerCount = 0;\n        }\n    });\n\n    $(\".addFilterBtn\").click(function () {\n        $('#commentFilterSearch fieldset ul').append('<li><select class=\"input_select\"><option>1</option><option>2</option></select><input type=\"text\" class=\"input_text\" /></li>');\n        return false;\n        $(\"#commentFilterSearch\").css(\"height\", \"500px\");\n    });\n\n    /**\n     * Action to fire\n     * when header filter buttons are triggered\n     */\n    $('.status_filter li')\n    .click(function (evt) {\n        $(this).find('input').click().iff($.versionBetween(false,'1.6.0')).change();\n    })\n    .find('input')\n        .click(function(evt){\n            evt.stopPropagation();\n        })\n        .change(function(evt){\n            if(!datatableCallback.loading) {\n                datatableCallback.loading = true;\n                datatableCallback.serverData[$(this).val()] = $(this).is(':checked');\n                datatable.fnDraw();\n            } else\n                return false;\n    }).end().find('label').click(function(evt){\n        evt.stopPropagation();\n    });\n    \n    /**\n     * Action to fire\n     * when header filter buttons are triggered\n     */\n    $('.attachment_filter li')\n    .click(function (evt) {\n        $(this).find('input').click().iff($.versionBetween(false,'1.6.0')).change();\n    })\n    .find('input')\n        .click(function(evt){\n            evt.stopPropagation();\n        })\n        .change(function(evt){\n            if(!datatableCallback.loading) {\n                datatableCallback.loading = true;\n                datatableCallback.serverData[$(this).val()] = $(this).is(':checked');\n                datatable.fnDraw();\n            } else\n                return false;\n    }).end().find('label').click(function(evt){\n        evt.stopPropagation();\n    });\n\n    /**\n     * Action to fire\n     * when action select is triggered\n     */\n    $('.datatable .action').live('click', function () {\n        var el = $(this);\n        var id = el.attr('id');\n        var ids = [id.match(/\\d+/)[0]];\n        var status = id.match(/[^_]+/)[0];\n\n        if (status == 'deleted' && !confirm(putGS('You are about to permanently delete a message.') + '\\n' + putGS('Are you sure you want to do it?'))) {\n            return false;\n        }\n\n        $.ajax({\n            type: 'POST',\n            url: 'feedback/set-status/format/json',\n            data: $.extend({\n                \"feedback\": ids,\n                \"status\": status\n            }, serverObj.security),\n            success: function (data) {\n                if ('deleted' == status) flashMessage(putGS('Message deleted.'));\n                else flashMessage(putGS('Message status change to $1.', statusMap[status]));\n                datatable.fnDraw(false);\n            },\n            error: function (rq, status, error) {\n                if (status == 0 || status == -1) {\n                    flashMessage(putGS('Unable to reach Newscoop. Please check your internet connection.'), \"error\");\n                }\n            }\n        });\n\n    });\n    /**\n     * Action to fire\n     * when action submit is triggered\n     */\n    $('.approval form').live('submit', function () {\n        var that = this;\n        $.ajax({\n            type: 'POST',\n            url: $(this).attr('action'),\n            data: $(this).serialize(),\n            success: function (data) {\n                flashMessage(putGS('Message updated.'));\n                datatable.fnDraw();\n            },\n            error: function (rq, status, error) {\n                if (status == 0 || status == -1) {\n                    flashMessage(putGS('Unable to reach Newscoop. Please check your internet connection.'), \"error\");\n                }\n            }\n        });\n        return false;\n    });\n    /**\n     * Action to fire\n     * when action submit is triggered\n     */\n    $('.dateCommentHolderReply form').live('submit', function () {\n        var that = this;\n        $.ajax({\n            type: 'POST',\n            url: $(this).attr('action'),\n            data: $(this).serialize(),\n            success: function (data) {\n                datatable.fnDraw();\n                flashMessage(putGS('Message updated.'));\n            },\n            error: function (rq, status, error) {\n                if (status == 0 || status == -1) {\n                    flashMessage(putGS('Unable to reach Newscoop. Please check your internet connection.'), \"error\");\n                }\n            }\n        });\n        return false;\n    });\n    $('.dateCommentHolderReply .reply-cancel').live('click', function () {\n        var el = $(this);\n        var td = el.parents('td');\n        var form = el.parents('form');\n        $(form).each(function () {\n            this.reset();\n        });\n        td.find('.commentSubject,.commentBody').slideDown(\"fast\");\n        td.find('.content-reply').hide();\n    });\n\n    $('.datatable .action-reply').live('click', function () {\n        var el = $(this);\n        var td = el.parents('td');\n        td.find('.content-reply').toggle(\"fast\");\n    });\n    // Dialog\n    $('.dialogPopup').dialog({\n        autoOpen: false,\n        width: 600,\n        height: 560,\n        position: 'right',\n        buttons: {\n            \"Cancel\": function () {\n                $(this).dialog(\"close\");\n            }\n        }\n    });\n    // Dialog Link\n    $('.articleLink').live('click', function () {\n        var that = this;\n        $.ajax({\n            type: 'GET',\n            url: $(this).attr('href'),\n            success: function (data) {\n                data = $.parseJSON(data);\n                var content = '<h3><a href=\"#\">' + $(that).html() + '</a></h3>';\n                for (i in data) {\n                    content += '<h4>' + i + '</h4>';\n                    content += '<p>' + data[i] + '</p>';\n                }\n                $('.dialogPopup').html(content);\n                $('.dialogPopup').dialog('open');\n            },\n            error: function (rq, status, error) {\n                if (status == 0 || status == -1) {\n                    flashMessage(putGS('Unable to reach Newscoop. Please check your internet connection.'), \"error\");\n                }\n                else {\n\t\t\t\t}\n            }\n        });\n        return false;\n    });\n});\n"
  },
  {
    "path": "newscoop/js/jquery/fg.menu.js",
    "content": "/*-------------------------------------------------------------------- \nScripts for creating and manipulating custom menus based on standard <ul> markup\nVersion: 3.0, 03.31.2009\n\nBy: Maggie Costello Wachs (maggie@filamentgroup.com) and Scott Jehl (scott@filamentgroup.com)\n\thttp://www.filamentgroup.com\n\t* reference articles: http://www.filamentgroup.com/lab/jquery_ipod_style_drilldown_menu/\n\t\t\nCopyright (c) 2009 Filament Group\nDual licensed under the MIT (filamentgroup.com/examples/mit-license.txt) and GPL (filamentgroup.com/examples/gpl-license.txt) licenses.\n--------------------------------------------------------------------*/\n\n\nvar allUIMenus = [];\n\n$.fn.topmenu = function(options){\n\tvar caller = this;\n\tvar options = options;\n\tvar m = new Menu(caller, options);\t\n\tallUIMenus.push(m);\n\t\n\t$(this)\n\t.mousedown(function(){\n\t\tif (!m.menuOpen) { m.showLoading(); };\n\t})\t\n\t.click(function(){\n\t\tif (m.menuOpen == false) { m.showMenu(); }\n\t\telse { m.kill(); };\n\t\treturn false;\n\t});\t\n};\n\nfunction Menu(caller, options){\n\tvar menu = this;\n\tvar caller = $(caller);\n\tvar container = $('<div class=\"fg-menu-container ui-widget ui-widget-content ui-corner-all\">'+options.content+'</div>');\n\t\n\tthis.menuOpen = false;\n\tthis.menuExists = false;\n\t\n\tvar options = jQuery.extend({\n\t\tcontent: null,\n\t\twidth: 180, // width of menu container, must be set or passed in to calculate widths of child menus\n\t\tmaxHeight: 180, // max height of menu (if a drilldown: height does not include breadcrumb)\n\t\tpositionOpts: {\n\t\t\tposX: 'left', \n\t\t\tposY: 'bottom',\n\t\t\toffsetX: 0,\n\t\t\toffsetY: 0,\n\t\t\tdirectionH: 'right',\n\t\t\tdirectionV: 'down', \n\t\t\tdetectH: true, // do horizontal collision detection  \n\t\t\tdetectV: true, // do vertical collision detection\n\t\t\tlinkToFront: false\n\t\t},\n\t\tshowSpeed: 200, // show/hide speed in milliseconds\n\t\tcallerOnState: 'ui-state-active', // class to change the appearance of the link/button when the menu is showing\n\t\tloadingState: 'ui-state-loading', // class added to the link/button while the menu is created\n\t\tlinkHover: 'ui-state-hover', // class for menu option hover state\n\t\tlinkHoverSecondary: 'li-hover', // alternate class, may be used for multi-level menus\t\t\n\t// ----- multi-level menu defaults -----\n\t\tcrossSpeed: 200, // cross-fade speed for multi-level menus\n\t\tcrumbDefaultText: 'Choose an option:',\n\t\tbackLink: true, // in the ipod-style menu: instead of breadcrumbs, show only a 'back' link\n\t\tbackLinkText: 'Back',\n\t\tflyOut: false, // multi-level menus are ipod-style by default; this parameter overrides to make a flyout instead\n\t\tflyOutOnState: 'ui-state-default',\n\t\tnextMenuLink: 'ui-icon-triangle-1-e', // class to style the link (specifically, a span within the link) used in the multi-level menu to show the next level\n\t\ttopLinkText: 'All',\n\t\tnextCrumbLink: 'ui-icon-carat-1-e'\t\n\t}, options);\n\t\n\tvar killAllMenus = function(){\n\t\t$.each(allUIMenus, function(i){\n\t\t\tif (allUIMenus[i].menuOpen) { allUIMenus[i].kill(); };\t\n\t\t});\n\t};\n\t\n\tthis.kill = function(){\n\t\tcaller\n\t\t\t.removeClass(options.loadingState)\n\t\t\t.removeClass('fg-menu-open')\n\t\t\t.removeClass(options.callerOnState);\t\n\t\tcontainer.find('li').removeClass(options.linkHoverSecondary).find('a').removeClass(options.linkHover);\t\t\n\t\tif (options.flyOutOnState) { container.find('li a').removeClass(options.flyOutOnState); };\t\n\t\tif (options.callerOnState) { \tcaller.removeClass(options.callerOnState); };\t\t\t\n\t\tif (container.is('.fg-menu-ipod')) { menu.resetDrilldownMenu(); };\n\t\tif (container.is('.fg-menu-flyout')) { menu.resetFlyoutMenu(); };\t\n\t\tcontainer.parent().hide();\t\n\t\tmenu.menuOpen = false;\n\t\t$(document).unbind('click', killAllMenus);\n\t\t$(document).unbind('keydown');\n\t};\n\t\n\tthis.showLoading = function(){\n\t\tcaller.addClass(options.loadingState);\n\t};\n\n\tthis.showMenu = function(){\n\t\tkillAllMenus();\n\t\tif (!menu.menuExists) { menu.create() };\n\t\tcaller\n\t\t\t.addClass('fg-menu-open')\n\t\t\t.addClass(options.callerOnState);\n\t\tcontainer.parent().show().click(function(){ menu.kill(); return false; });\n\t\tcontainer.hide().slideDown(options.showSpeed).find('.fg-menu:eq(0)');\n\t\tmenu.menuOpen = true;\n\t\tcaller.removeClass(options.loadingState);\n\t\t$(document).click(killAllMenus);\n\t\t\n\t\t// assign key events\n\t\t$(document).keydown(function(event){\n\t\t\tvar e;\n\t\t\tif (event.which !=\"\") { e = event.which; }\n\t\t\telse if (event.charCode != \"\") { e = event.charCode; }\n\t\t\telse if (event.keyCode != \"\") { e = event.keyCode; }\n\t\t\t\n\t\t\tvar menuType = ($(event.target).parents('div').is('.fg-menu-flyout')) ? 'flyout' : 'ipod' ;\n\t\t\t\n\t\t\tswitch(e) {\n\t\t\t\tcase 37: // left arrow \n\t\t\t\t\tif (menuType == 'flyout') {\n\t\t\t\t\t\t$(event.target).trigger('mouseout');\n\t\t\t\t\t\tif ($('.'+options.flyOutOnState).size() > 0) { $('.'+options.flyOutOnState).trigger('mouseover'); };\n\t\t\t\t\t};\n\t\t\t\t\t\n\t\t\t\t\tif (menuType == 'ipod') {\n\t\t\t\t\t\t$(event.target).trigger('mouseout');\n\t\t\t\t\t\tif ($('.fg-menu-footer').find('a').size() > 0) { $('.fg-menu-footer').find('a').trigger('click'); };\n\t\t\t\t\t\tif ($('.fg-menu-header').find('a').size() > 0) { $('.fg-menu-current-crumb').prev().find('a').trigger('click'); };\n\t\t\t\t\t\tif ($('.fg-menu-current').prev().is('.fg-menu-indicator')) {\n\t\t\t\t\t\t\t$('.fg-menu-current').prev().trigger('mouseover');\t\t\t\t\t\t\t\n\t\t\t\t\t\t};\t\t\t\t\t\t\n\t\t\t\t\t};\n\t\t\t\t\treturn false;\n\t\t\t\t\tbreak;\n\t\t\t\t\t\n\t\t\t\tcase 38: // up arrow \n\t\t\t\t\tif ($(event.target).is('.' + options.linkHover)) {\t\n\t\t\t\t\t\tvar prevLink = $(event.target).parent().prev().find('a:eq(0)');\t\t\t\t\t\t\n\t\t\t\t\t\tif (prevLink.size() > 0) {\n\t\t\t\t\t\t\t$(event.target).trigger('mouseout');\n\t\t\t\t\t\t\tprevLink.trigger('mouseover');\n\t\t\t\t\t\t};\t\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t\telse { container.find('a:eq(0)').trigger('mouseover'); }\n\t\t\t\t\treturn false;\n\t\t\t\t\tbreak;\n\t\t\t\t\t\n\t\t\t\tcase 39: // right arrow \n\t\t\t\t\tif ($(event.target).is('.fg-menu-indicator')) {\t\t\t\t\t\t\n\t\t\t\t\t\tif (menuType == 'flyout') {\n\t\t\t\t\t\t\t$(event.target).next().find('a:eq(0)').trigger('mouseover');\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse if (menuType == 'ipod') {\n\t\t\t\t\t\t\t$(event.target).trigger('click');\t\t\t\t\t\t\n\t\t\t\t\t\t\tsetTimeout(function(){\n\t\t\t\t\t\t\t\t$(event.target).next().find('a:eq(0)').trigger('mouseover');\n\t\t\t\t\t\t\t}, options.crossSpeed);\n\t\t\t\t\t\t};\t\t\t\t\n\t\t\t\t\t}; \n\t\t\t\t\treturn false;\n\t\t\t\t\tbreak;\n\t\t\t\t\t\n\t\t\t\tcase 40: // down arrow \n\t\t\t\t\tif ($(event.target).is('.' + options.linkHover)) {\n\t\t\t\t\t\tvar nextLink = $(event.target).parent().next().find('a:eq(0)');\t\t\t\t\t\t\n\t\t\t\t\t\tif (nextLink.size() > 0) {\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t$(event.target).trigger('mouseout');\n\t\t\t\t\t\t\tnextLink.trigger('mouseover');\n\t\t\t\t\t\t};\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t\telse { container.find('a:eq(0)').trigger('mouseover'); }\t\t\n\t\t\t\t\treturn false;\t\t\t\t\t\t\n\t\t\t\t\tbreak;\n\t\t\t\t\t\n\t\t\t\tcase 27: // escape\n\t\t\t\t\tkillAllMenus();\n\t\t\t\t\tbreak;\n\t\t\t\t\t\n\t\t\t\tcase 13: // enter\n\t\t\t\t\tif ($(event.target).is('.fg-menu-indicator') && menuType == 'ipod') {\t\t\t\t\t\t\t\n\t\t\t\t\t\t$(event.target).trigger('click');\t\t\t\t\t\t\n\t\t\t\t\t\tsetTimeout(function(){\n\t\t\t\t\t\t\t$(event.target).next().find('a:eq(0)').trigger('mouseover');\n\t\t\t\t\t\t}, options.crossSpeed);\t\t\t\t\t\n\t\t\t\t\t}; \n\t\t\t\t\tbreak;\n\t\t\t};\t\t\t\n\t\t});\n\t};\n\t\n\tthis.create = function(){\t\n\t\tcontainer.css({ width: options.width }).appendTo('body').find('ul:first').not('.fg-menu-breadcrumb').addClass('fg-menu');\n\t\tcontainer.find('ul, li a').addClass('ui-corner-all');\n\t\t\n\t\t// aria roles & attributes\n\t\tcontainer.find('ul').attr('role', 'menu').eq(0).attr('aria-activedescendant','active-menuitem').attr('aria-labelledby', caller.attr('id'));\n\t\tcontainer.find('li').attr('role', 'menuitem');\n\t\tcontainer.find('li:has(ul)').attr('aria-haspopup', 'true').find('ul').attr('aria-expanded', 'false');\n\t\tcontainer.find('a').attr('tabindex', '-1');\n\t\t\n\t\t// when there are multiple levels of hierarchy, create flyout or drilldown menu\n\t\tif (container.find('ul').size() > 1) {\n\t\t\tif (options.flyOut) { menu.flyout(container, options); }\n\t\t\telse { menu.drilldown(container, options); }\t\n\t\t}\n\t\telse {\n\t\t\tcontainer.find('a').click(function(){\n\t\t\t\tmenu.chooseItem(this);\n\t\t\t\treturn false;\n\t\t\t});\n\t\t};\t\n\t\t\n\t\tif (options.linkHover) {\n\t\t\tvar allLinks = container.find('.fg-menu li a');\n\t\t\tallLinks.hover(\n\t\t\t\tfunction(){\n\t\t\t\t\tvar menuitem = $(this);\n\t\t\t\t\t$('.'+options.linkHover).removeClass(options.linkHover).blur().parent().removeAttr('id');\n\t\t\t\t\t$(this).addClass(options.linkHover).focus().parent().attr('id','active-menuitem');\n\t\t\t\t},\n\t\t\t\tfunction(){\n\t\t\t\t\t$(this).removeClass(options.linkHover).blur().parent().removeAttr('id');\n\t\t\t\t}\n\t\t\t);\n\t\t};\n\t\t\n\t\tif (options.linkHoverSecondary) {\n\t\t\tcontainer.find('.fg-menu li').hover(\n\t\t\t\tfunction(){\n\t\t\t\t\t$(this).siblings('li').removeClass(options.linkHoverSecondary);\n\t\t\t\t\tif (options.flyOutOnState) { $(this).siblings('li').find('a').removeClass(options.flyOutOnState); }\n\t\t\t\t\t$(this).addClass(options.linkHoverSecondary);\n\t\t\t\t},\n\t\t\t\tfunction(){ $(this).removeClass(options.linkHoverSecondary); }\n\t\t\t);\n\t\t};\t\n\t\t\n\t\tmenu.setPosition(container, caller, options);\n\t\tmenu.menuExists = true;\n\t};\n\t\n\tthis.chooseItem = function(item){\n\t\tmenu.kill();\n\t\t// edit this for your own custom function/callback:\n\t\t$('#menuSelection').text($(item).text());\t\n\t\tlocation.href = $(item).attr('href');\n\t};\n};\n\nMenu.prototype.flyout = function(container, options) {\n\tvar menu = this;\n\t\n\tthis.resetFlyoutMenu = function(){\n\t\tvar allLists = container.find('ul ul');\n\t\tallLists.removeClass('ui-widget-content').hide();\t\n\t};\n\t\n\tcontainer.addClass('fg-menu-flyout').find('li:has(ul)').each(function(){\n\t\tvar linkWidth = container.width();\n\t\tvar showTimer, hideTimer;\n\t\tvar allSubLists = $(this).find('ul');\t\t\n\t\t\n\t\tallSubLists.css({ left: linkWidth, width: linkWidth }).hide();\n\t\t\t\n\t\t$(this).find('a:eq(0)').addClass('fg-menu-indicator').html('<span>' + $(this).find('a:eq(0)').text() + '</span><span class=\"ui-icon '+options.nextMenuLink+'\"></span>').hover(\n\t\t\tfunction(){\n\t\t\t\tclearTimeout(hideTimer);\n\t\t\t\tvar subList = $(this).next();\n\t\t\t\tif (!fitVertical(subList, $(this).offset().top)) { subList.css({ top: 'auto', bottom: 0 }); };\n\t\t\t\tif (!fitHorizontal(subList, $(this).offset().left + 100)) { subList.css({ left: 'auto', right: linkWidth, 'z-index': 999 }); };\n\t\t\t\tshowTimer = setTimeout(function(){\n\t\t\t\t\tsubList.addClass('ui-widget-content').show(options.showSpeed).attr('aria-expanded', 'true');\t\n\t\t\t\t}, 300);\t\n\t\t\t},\n\t\t\tfunction(){\n\t\t\t\tclearTimeout(showTimer);\n\t\t\t\tvar subList = $(this).next();\n\t\t\t\thideTimer = setTimeout(function(){\n\t\t\t\t\tsubList.removeClass('ui-widget-content').hide(options.showSpeed).attr('aria-expanded', 'false');\n\t\t\t\t}, 400);\t\n\t\t\t}\n\t\t);\n\n\t\t$(this).find('ul a').hover(\n\t\t\tfunction(){\n\t\t\t\tclearTimeout(hideTimer);\n\t\t\t\tif ($(this).parents('ul').prev().is('a.fg-menu-indicator')) {\n\t\t\t\t\t$(this).parents('ul').prev().addClass(options.flyOutOnState);\n\t\t\t\t}\n\t\t\t},\n\t\t\tfunction(){\n\t\t\t\thideTimer = setTimeout(function(){\n\t\t\t\t\tallSubLists.hide(options.showSpeed);\n\t\t\t\t\tcontainer.find(options.flyOutOnState).removeClass(options.flyOutOnState);\n\t\t\t\t}, 500);\t\n\t\t\t}\n\t\t);\t\n\t});\n\t\n\tcontainer.find('a').click(function(){\n\t\tmenu.chooseItem(this);\n\t\treturn false;\n\t});\n};\n\n\nMenu.prototype.drilldown = function(container, options) {\n\tvar menu = this;\t\n\tvar topList = container.find('.fg-menu');\t\n\tvar breadcrumb = $('<ul class=\"fg-menu-breadcrumb ui-widget-header ui-corner-all ui-helper-clearfix\"></ul>');\n\tvar crumbDefaultHeader = $('<li class=\"fg-menu-breadcrumb-text\">'+options.crumbDefaultText+'</li>');\n\tvar firstCrumbText = (options.backLink) ? options.backLinkText : options.topLinkText;\n\tvar firstCrumbClass = (options.backLink) ? 'fg-menu-prev-list' : 'fg-menu-all-lists';\n\tvar firstCrumbLinkClass = (options.backLink) ? 'ui-state-default ui-corner-all' : '';\n\tvar firstCrumbIcon = (options.backLink) ? '<span class=\"ui-icon ui-icon-triangle-1-w\"></span>' : '';\n\tvar firstCrumb = $('<li class=\"'+firstCrumbClass+'\"><a href=\"#\" class=\"'+firstCrumbLinkClass+'\">'+firstCrumbIcon+firstCrumbText+'</a></li>');\n\t\n\tcontainer.addClass('fg-menu-ipod');\n\t\n\tif (options.backLink) { breadcrumb.addClass('fg-menu-footer').appendTo(container).hide(); }\n\telse { breadcrumb.addClass('fg-menu-header').prependTo(container); };\n\tbreadcrumb.append(crumbDefaultHeader);\n\t\n\tvar checkMenuHeight = function(el){\n\t\tif (el.height() > options.maxHeight) { el.addClass('fg-menu-scroll') };\t\n\t\tel.css({ height: options.maxHeight });\n\t};\n\t\n\tvar resetChildMenu = function(el){ el.removeClass('fg-menu-scroll').removeClass('fg-menu-current').height('auto'); };\n\t\n\tthis.resetDrilldownMenu = function(){\n\t\t$('.fg-menu-current').removeClass('fg-menu-current');\n\t\ttopList.animate({ left: 0 }, options.crossSpeed, function(){\n\t\t\t$(this).find('ul').each(function(){\n\t\t\t\t$(this).hide();\n\t\t\t\tresetChildMenu($(this));\t\t\t\t\n\t\t\t});\n\t\t\ttopList.addClass('fg-menu-current');\t\t\t\n\t\t});\t\t\n\t\t$('.fg-menu-all-lists').find('span').remove();\t\n\t\tbreadcrumb.empty().append(crumbDefaultHeader);\t\t\n\t\t$('.fg-menu-footer').empty().hide();\t\n\t\tcheckMenuHeight(topList);\t\t\n\t};\n\t\n\ttopList\n\t\t.addClass('fg-menu-content fg-menu-current ui-widget-content ui-helper-clearfix')\n\t\t.css({ width: container.width() })\n\t\t.find('ul')\n\t\t\t.css({ width: container.width(), left: container.width() })\n\t\t\t.addClass('ui-widget-content')\n\t\t\t.hide();\t\t\n\tcheckMenuHeight(topList);\t\n\t\n\ttopList.find('a').each(function(){\n\t\t// if the link opens a child menu:\n\t\tif ($(this).next().is('ul')) {\n\t\t\t$(this)\n\t\t\t\t.addClass('fg-menu-indicator')\n\t\t\t\t.each(function(){ $(this).html('<span>' + $(this).text() + '</span><span class=\"ui-icon '+options.nextMenuLink+'\"></span>'); })\n\t\t\t\t.click(function(){ // ----- show the next menu\t\t\t\n\t\t\t\t\tvar nextList = $(this).next();\n\t\t    \t\tvar parentUl = $(this).parents('ul:eq(0)');   \t\t\n\t\t    \t\tvar parentLeft = (parentUl.is('.fg-menu-content')) ? 0 : parseFloat(topList.css('left'));    \t\t\n\t\t    \t\tvar nextLeftVal = Math.round(parentLeft - parseFloat(container.width()));\n\t\t    \t\tvar footer = $('.fg-menu-footer');\n\t\t    \t\t\n\t\t    \t\t// show next menu   \t\t\n\t\t    \t\tresetChildMenu(parentUl);\n\t\t    \t\tcheckMenuHeight(nextList);\n\t\t\t\t\ttopList.animate({ left: nextLeftVal }, options.crossSpeed);\t\t\t\t\t\t\n\t\t    \t\tnextList.show().addClass('fg-menu-current').attr('aria-expanded', 'true');    \n\t\t    \t\t\n\t\t    \t\tvar setPrevMenu = function(backlink){\n\t\t    \t\t\tvar b = backlink;\n\t\t    \t\t\tvar c = $('.fg-menu-current');\n\t\t\t    \t\tvar prevList = c.parents('ul:eq(0)');\n\t\t\t    \t\tc.hide().attr('aria-expanded', 'false');\n\t\t    \t\t\tresetChildMenu(c);\n\t\t    \t\t\tcheckMenuHeight(prevList);\n\t\t\t    \t\tprevList.addClass('fg-menu-current').attr('aria-expanded', 'true');\n\t\t\t    \t\tif (prevList.hasClass('fg-menu-content')) { b.remove(); footer.hide(); };\n\t\t    \t\t};\t\t\n\t\t\n\t\t\t\t\t// initialize \"back\" link\n\t\t\t\t\tif (options.backLink) {\n\t\t\t\t\t\tif (footer.find('a').size() == 0) {\n\t\t\t\t\t\t\tfooter.show();\n\t\t\t\t\t\t\t$('<a href=\"#\"><span class=\"ui-icon ui-icon-triangle-1-w\"></span> <span>Back</span></a>')\n\t\t\t\t\t\t\t\t.appendTo(footer)\n\t\t\t\t\t\t\t\t.click(function(){ // ----- show the previous menu\n\t\t\t\t\t\t\t\t\tvar b = $(this);\n\t\t\t\t\t\t    \t\tvar prevLeftVal = parseFloat(topList.css('left')) + container.width();\t\t    \t\t\t\t\t\t    \t\t\n\t\t\t\t\t\t    \t\ttopList.animate({ left: prevLeftVal },  options.crossSpeed, function(){\n\t\t\t\t\t\t    \t\t\tsetPrevMenu(b);\n\t\t\t\t\t\t    \t\t});\t\t\t\n\t\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t// or initialize top breadcrumb\n\t\t    \t\telse { \n\t\t    \t\t\tif (breadcrumb.find('li').size() == 1){\t\t\t\t\n\t\t\t\t\t\t\tbreadcrumb.empty().append(firstCrumb);\n\t\t\t\t\t\t\tfirstCrumb.find('a').click(function(){\n\t\t\t\t\t\t\t\tmenu.resetDrilldownMenu();\n\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$('.fg-menu-current-crumb').removeClass('fg-menu-current-crumb');\n\t\t\t\t\t\tvar crumbText = $(this).find('span:eq(0)').text();\n\t\t\t\t\t\tvar newCrumb = $('<li class=\"fg-menu-current-crumb\"><a href=\"javascript://\" class=\"fg-menu-crumb\">'+crumbText+'</a></li>');\t\n\t\t\t\t\t\tnewCrumb\n\t\t\t\t\t\t\t.appendTo(breadcrumb)\n\t\t\t\t\t\t\t.find('a').click(function(){\n\t\t\t\t\t\t\t\tif ($(this).parent().is('.fg-menu-current-crumb')){\n\t\t\t\t\t\t\t\t\tmenu.chooseItem(this);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\t\tvar newLeftVal = - ($('.fg-menu-current').parents('ul').size() - 1) * 180;\n\t\t\t\t\t\t\t\t\ttopList.animate({ left: newLeftVal }, options.crossSpeed, function(){\n\t\t\t\t\t\t\t\t\t\tsetPrevMenu();\n\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t// make this the current crumb, delete all breadcrumbs after this one, and navigate to the relevant menu\n\t\t\t\t\t\t\t\t\t$(this).parent().addClass('fg-menu-current-crumb').find('span').remove();\n\t\t\t\t\t\t\t\t\t$(this).parent().nextAll().remove();\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\tnewCrumb.prev().append(' <span class=\"ui-icon '+options.nextCrumbLink+'\"></span>');\n\t\t    \t\t};\t\t\t\n\t\t    \t\treturn false;    \t\t\n    \t\t\t});\n\t\t}\n\t\t// if the link is a leaf node (doesn't open a child menu)\n\t\telse {\n\t\t\t$(this).click(function(){\n\t\t\t\tmenu.chooseItem(this);\n\t\t\t\treturn false;\n\t\t\t});\n\t\t};\n\t});\n};\n\n\n/* Menu.prototype.setPosition parameters (defaults noted with *):\n\treferrer = the link (or other element) used to show the overlaid object \n\tsettings = can override the defaults:\n\t\t- posX/Y: where the top left corner of the object should be positioned in relation to its referrer.\n\t\t\t\tX: left*, center, right\n\t\t\t\tY: top, center, bottom*\n\t\t- offsetX/Y: the number of pixels to be offset from the x or y position.  Can be a positive or negative number.\n\t\t- directionH/V: where the entire menu should appear in relation to its referrer.\n\t\t\t\tHorizontal: left*, right\n\t\t\t\tVertical: up, down*\n\t\t- detectH/V: detect the viewport horizontally / vertically\n\t\t- linkToFront: copy the menu link and place it on top of the menu (visual effect to make it look like it overlaps the object) */\n\nMenu.prototype.setPosition = function(widget, caller, options) { \n\tvar el = widget;\n\tvar referrer = caller;\n\tvar dims = {\n\t\trefX: referrer.offset().left,\n\t\trefY: referrer.offset().top,\n\t\trefW: referrer.getTotalWidth(),\n\t\trefH: referrer.getTotalHeight()\n\t};\t\n\tvar options = options;\n\tvar xVal, yVal;\n\t\n\tvar helper = $('<div class=\"positionHelper\"></div>');\n\thelper.css({ position: 'absolute', left: dims.refX, top: dims.refY, width: dims.refW, height: dims.refH });\n\tel.wrap(helper);\n\t\n\t// get X pos\n\tswitch(options.positionOpts.posX) {\n\t\tcase 'left': \txVal = 0; \n\t\t\tbreak;\t\t\t\t\n\t\tcase 'center': xVal = dims.refW / 2;\n\t\t\tbreak;\t\t\t\t\n\t\tcase 'right': xVal = dims.refW;\n\t\t\tbreak;\n\t};\n\t\n\t// get Y pos\n\tswitch(options.positionOpts.posY) {\n\t\tcase 'top': \tyVal = 0;\n\t\t\tbreak;\t\t\t\t\n\t\tcase 'center': yVal = dims.refH / 2;\n\t\t\tbreak;\t\t\t\t\n\t\tcase 'bottom': yVal = dims.refH;\n\t\t\tbreak;\n\t};\n\t\n\t// add the offsets (zero by default)\n\txVal += options.positionOpts.offsetX;\n\tyVal += options.positionOpts.offsetY;\n\t\n\t// position the object vertically\n\tif (options.positionOpts.directionV == 'up') {\n\t\tel.css({ top: 'auto', bottom: yVal });\n\t\tif (options.positionOpts.detectV && !fitVertical(el)) {\n\t\t\tel.css({ bottom: 'auto', top: yVal });\n\t\t}\n\t} \n\telse {\n\t\tel.css({ bottom: 'auto', top: yVal });\n\t\tif (options.positionOpts.detectV && !fitVertical(el)) {\n\t\t\tel.css({ top: 'auto', bottom: yVal });\n\t\t}\n\t};\n\t\n\t// and horizontally\n\tif (options.positionOpts.directionH == 'left') {\n\t\tel.css({ left: 'auto', right: xVal });\n\t\tif (options.positionOpts.detectH && !fitHorizontal(el)) {\n\t\t\tel.css({ right: 'auto', left: xVal });\n\t\t}\n\t} \n\telse {\n\t\tel.css({ right: 'auto', left: xVal });\n\t\tif (options.positionOpts.detectH && !fitHorizontal(el)) {\n\t\t\tel.css({ left: 'auto', right: xVal });\n\t\t}\n\t};\n\t\n\t// if specified, clone the referring element and position it so that it appears on top of the menu\n\tif (options.positionOpts.linkToFront) {\n\t\treferrer.clone().addClass('linkClone').css({\n\t\t\tposition: 'absolute', \n\t\t\ttop: 0, \n\t\t\tright: 'auto', \n\t\t\tbottom: 'auto', \n\t\t\tleft: 0, \n\t\t\twidth: referrer.width(), \n\t\t\theight: referrer.height()\n\t\t}).insertAfter(el);\n\t};\n};\n\n\n/* Utilities to sort and find viewport dimensions */\n\nfunction sortBigToSmall(a, b) { return b - a; };\n\njQuery.fn.getTotalWidth = function(){\n\treturn $(this).width() + parseInt($(this).css('paddingRight')) + parseInt($(this).css('paddingLeft')) + parseInt($(this).css('borderRightWidth')) + parseInt($(this).css('borderLeftWidth'));\n};\n\njQuery.fn.getTotalHeight = function(){\n\treturn $(this).height() + parseInt($(this).css('paddingTop')) + parseInt($(this).css('paddingBottom')) + parseInt($(this).css('borderTopWidth')) + parseInt($(this).css('borderBottomWidth'));\n};\n\nfunction getScrollTop(){\n\treturn self.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop;\n};\n\nfunction getScrollLeft(){\n\treturn self.pageXOffset || document.documentElement.scrollLeft || document.body.scrollLeft;\n};\n\nfunction getWindowHeight(){\n\tvar de = document.documentElement;\n\treturn self.innerHeight || (de && de.clientHeight) || document.body.clientHeight;\n};\n\nfunction getWindowWidth(){\n\tvar de = document.documentElement;\n\treturn self.innerWidth || (de && de.clientWidth) || document.body.clientWidth;\n};\n\n/* Utilities to test whether an element will fit in the viewport\n\tParameters:\n\tel = element to position, required\n\tleftOffset / topOffset = optional parameter if the offset cannot be calculated (i.e., if the object is in the DOM but is set to display: 'none') */\n\t\nfunction fitHorizontal(el, leftOffset){\n\tvar leftVal = parseInt(leftOffset) || $(el).offset().left;\n\treturn (leftVal + $(el).width() <= getWindowWidth() + getScrollLeft() && leftVal - getScrollLeft() >= 0);\n};\n\nfunction fitVertical(el, topOffset){\n\tvar topVal = parseInt(topOffset) || $(el).offset().top;\n\treturn (topVal + $(el).height() <= getWindowHeight() + getScrollTop() && topVal - getScrollTop() >= 0);\n};\n\n/*-------------------------------------------------------------------- \n * javascript method: \"pxToEm\"\n * by:\n   Scott Jehl (scott@filamentgroup.com) \n   Maggie Wachs (maggie@filamentgroup.com)\n   http://www.filamentgroup.com\n *\n * Copyright (c) 2008 Filament Group\n * Dual licensed under the MIT (filamentgroup.com/examples/mit-license.txt) and GPL (filamentgroup.com/examples/gpl-license.txt) licenses.\n *\n * Description: Extends the native Number and String objects with pxToEm method. pxToEm converts a pixel value to ems depending on inherited font size.  \n * Article: http://www.filamentgroup.com/lab/retaining_scalable_interfaces_with_pixel_to_em_conversion/\n * Demo: http://www.filamentgroup.com/examples/pxToEm/\t \t\n *\t\t\t\t\t\t\t\n * Options:  \t \t\t\t\t\t\t\t\t\n \t\tscope: string or jQuery selector for font-size scoping\n \t\treverse: Boolean, true reverses the conversion to em-px\n * Dependencies: jQuery library\t\t\t\t\t\t  \n * Usage Example: myPixelValue.pxToEm(); or myPixelValue.pxToEm({'scope':'#navigation', reverse: true});\n *\n * Version: 2.0, 08.01.2008 \n * Changelog:\n *\t\t08.02.2007 initial Version 1.0\n *\t\t08.01.2008 - fixed font-size calculation for IE\n--------------------------------------------------------------------*/\n\nNumber.prototype.pxToEm = String.prototype.pxToEm = function(settings){\n\t//set defaults\n\tsettings = jQuery.extend({\n\t\tscope: 'body',\n\t\treverse: false\n\t}, settings);\n\t\n\tvar pxVal = (this == '') ? 0 : parseFloat(this);\n\tvar scopeVal;\n\tvar getWindowWidth = function(){\n\t\tvar de = document.documentElement;\n\t\treturn self.innerWidth || (de && de.clientWidth) || document.body.clientWidth;\n\t};\t\n\t\n\t/* When a percentage-based font-size is set on the body, IE returns that percent of the window width as the font-size. \n\t\tFor example, if the body font-size is 62.5% and the window width is 1000px, IE will return 625px as the font-size. \t\n\t\tWhen this happens, we calculate the correct body font-size (%) and multiply it by 16 (the standard browser font size) \n\t\tto get an accurate em value. */\n\t\t\t\t\n\tif (settings.scope == 'body' && $.browser.msie && (parseFloat($('body').css('font-size')) / getWindowWidth()).toFixed(1) > 0.0) {\n\t\tvar calcFontSize = function(){\t\t\n\t\t\treturn (parseFloat($('body').css('font-size'))/getWindowWidth()).toFixed(3) * 16;\n\t\t};\n\t\tscopeVal = calcFontSize();\n\t}\n\telse { scopeVal = parseFloat(jQuery(settings.scope).css(\"font-size\")); };\n\t\t\t\n\tvar result = (settings.reverse == true) ? (pxVal * scopeVal).toFixed(2) + 'px' : (pxVal / scopeVal).toFixed(2) + 'em';\n\treturn result;\n};\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/index.html",
    "content": "<html><head><title>jquery-ui - Revision 4033: /trunk/ui/i18n</title></head>\n<body>\n <h2>jquery-ui - Revision 4033: /trunk/ui/i18n</h2>\n <ul>\n  <li><a href=\"../\">..</a></li>\n  <li><a href=\"jquery.ui.datepicker-af.js\">jquery.ui.datepicker-af.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-ar.js\">jquery.ui.datepicker-ar.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-az.js\">jquery.ui.datepicker-az.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-bg.js\">jquery.ui.datepicker-bg.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-bs.js\">jquery.ui.datepicker-bs.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-ca.js\">jquery.ui.datepicker-ca.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-cs.js\">jquery.ui.datepicker-cs.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-da.js\">jquery.ui.datepicker-da.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-de-CH.js\">jquery.ui.datepicker-de-CH.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-de.js\">jquery.ui.datepicker-de.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-el.js\">jquery.ui.datepicker-el.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-en-GB.js\">jquery.ui.datepicker-en-GB.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-eo.js\">jquery.ui.datepicker-eo.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-es.js\">jquery.ui.datepicker-es.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-et.js\">jquery.ui.datepicker-et.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-eu.js\">jquery.ui.datepicker-eu.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-fa.js\">jquery.ui.datepicker-fa.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-fi.js\">jquery.ui.datepicker-fi.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-fo.js\">jquery.ui.datepicker-fo.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-fr-CH.js\">jquery.ui.datepicker-fr-CH.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-fr.js\">jquery.ui.datepicker-fr.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-he.js\">jquery.ui.datepicker-he.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-hr.js\">jquery.ui.datepicker-hr.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-hu.js\">jquery.ui.datepicker-hu.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-hy.js\">jquery.ui.datepicker-hy.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-id.js\">jquery.ui.datepicker-id.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-is.js\">jquery.ui.datepicker-is.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-it.js\">jquery.ui.datepicker-it.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-ja.js\">jquery.ui.datepicker-ja.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-ko.js\">jquery.ui.datepicker-ko.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-lt.js\">jquery.ui.datepicker-lt.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-lv.js\">jquery.ui.datepicker-lv.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-ms.js\">jquery.ui.datepicker-ms.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-nl-BE.js\">jquery.ui.datepicker-nl-BE.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-nl.js\">jquery.ui.datepicker-nl.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-no.js\">jquery.ui.datepicker-no.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-pl.js\">jquery.ui.datepicker-pl.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-pt-BR.js\">jquery.ui.datepicker-pt-BR.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-ro.js\">jquery.ui.datepicker-ro.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-ru.js\">jquery.ui.datepicker-ru.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-sk.js\">jquery.ui.datepicker-sk.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-sl.js\">jquery.ui.datepicker-sl.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-sq.js\">jquery.ui.datepicker-sq.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-sr-SR.js\">jquery.ui.datepicker-sr-SR.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-sr.js\">jquery.ui.datepicker-sr.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-sv.js\">jquery.ui.datepicker-sv.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-ta.js\">jquery.ui.datepicker-ta.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-th.js\">jquery.ui.datepicker-th.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-tr.js\">jquery.ui.datepicker-tr.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-uk.js\">jquery.ui.datepicker-uk.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-vi.js\">jquery.ui.datepicker-vi.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-zh-CN.js\">jquery.ui.datepicker-zh-CN.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-zh-HK.js\">jquery.ui.datepicker-zh-HK.js</a></li>\n  <li><a href=\"jquery.ui.datepicker-zh-TW.js\">jquery.ui.datepicker-zh-TW.js</a></li>\n </ul>\n <hr noshade><em><a href=\"http://code.google.com/\">Google Code</a> powered by <a href=\"http://subversion.apache.org/\">Subversion</a></em>\n</body></html>"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-af.js",
    "content": "﻿/* Afrikaans initialisation for the jQuery UI date picker plugin. */\n/* Written by Renier Pretorius. */\njQuery(function($){\n\t$.datepicker.regional['af'] = {\n\t\tcloseText: 'Selekteer',\n\t\tprevText: 'Vorige',\n\t\tnextText: 'Volgende',\n\t\tcurrentText: 'Vandag',\n\t\tmonthNames: ['Januarie','Februarie','Maart','April','Mei','Junie',\n\t\t'Julie','Augustus','September','Oktober','November','Desember'],\n\t\tmonthNamesShort: ['Jan', 'Feb', 'Mrt', 'Apr', 'Mei', 'Jun',\n\t\t'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Des'],\n\t\tdayNames: ['Sondag', 'Maandag', 'Dinsdag', 'Woensdag', 'Donderdag', 'Vrydag', 'Saterdag'],\n\t\tdayNamesShort: ['Son', 'Maa', 'Din', 'Woe', 'Don', 'Vry', 'Sat'],\n\t\tdayNamesMin: ['So','Ma','Di','Wo','Do','Vr','Sa'],\n\t\tweekHeader: 'Wk',\n\t\tdateFormat: 'dd/mm/yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['af']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-ar.js",
    "content": "﻿/* Arabic Translation for jQuery UI date picker plugin. */\n/* Khaled Al Horani -- koko.dw@gmail.com */\n/* خالد الحوراني -- koko.dw@gmail.com */\n/* NOTE: monthNames are the original months names and they are the Arabic names, not the new months name فبراير - يناير and there isn't any Arabic roots for these months */\njQuery(function($){\n\t$.datepicker.regional['ar'] = {\n\t\tcloseText: 'إغلاق',\n\t\tprevText: '&#x3c;السابق',\n\t\tnextText: 'التالي&#x3e;',\n\t\tcurrentText: 'اليوم',\n\t\tmonthNames: ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'آذار', 'حزيران',\n\t\t'تموز', 'آب', 'أيلول',\t'تشرين الأول', 'تشرين الثاني', 'كانون الأول'],\n\t\tmonthNamesShort: ['1','2','3','4','5','6','7','8','9','10','11','12'],\n\t\tdayNames: ['السبت', 'الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة'],\n\t\tdayNamesShort: ['سبت', 'أحد', 'اثنين', 'ثلاثاء', 'أربعاء', 'خميس', 'جمعة'],\n\t\tdayNamesMin: ['سبت', 'أحد', 'اثنين', 'ثلاثاء', 'أربعاء', 'خميس', 'جمعة'],\n\t\tweekHeader: 'أسبوع',\n\t\tdateFormat: 'dd/mm/yy',\n\t\tfirstDay: 0,\n  \t\tisRTL: true,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['ar']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-az.js",
    "content": "﻿/* Azerbaijani (UTF-8) initialisation for the jQuery UI date picker plugin. */\n/* Written by Jamil Najafov (necefov33@gmail.com). */\njQuery(function($) {\n\t$.datepicker.regional['az'] = {\n\t\tcloseText: 'Bağla',\n\t\tprevText: '&#x3c;Geri',\n\t\tnextText: 'İrəli&#x3e;',\n\t\tcurrentText: 'Bugün',\n\t\tmonthNames: ['Yanvar','Fevral','Mart','Aprel','May','İyun',\n\t\t'İyul','Avqust','Sentyabr','Oktyabr','Noyabr','Dekabr'],\n\t\tmonthNamesShort: ['Yan','Fev','Mar','Apr','May','İyun',\n\t\t'İyul','Avq','Sen','Okt','Noy','Dek'],\n\t\tdayNames: ['Bazar','Bazar ertəsi','Çərşənbə axşamı','Çərşənbə','Cümə axşamı','Cümə','Şənbə'],\n\t\tdayNamesShort: ['B','Be','Ça','Ç','Ca','C','Ş'],\n\t\tdayNamesMin: ['B','B','Ç','С','Ç','C','Ş'],\n\t\tweekHeader: 'Hf',\n\t\tdateFormat: 'dd.mm.yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['az']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-bg.js",
    "content": "﻿/* Bulgarian initialisation for the jQuery UI date picker plugin. */\n/* Written by Stoyan Kyosev (http://svest.org). */\njQuery(function($){\n    $.datepicker.regional['bg'] = {\n        closeText: 'затвори',\n        prevText: '&#x3c;назад',\n        nextText: 'напред&#x3e;',\n\t\tnextBigText: '&#x3e;&#x3e;',\n        currentText: 'днес',\n        monthNames: ['Януари','Февруари','Март','Април','Май','Юни',\n        'Юли','Август','Септември','Октомври','Ноември','Декември'],\n        monthNamesShort: ['Яну','Фев','Мар','Апр','Май','Юни',\n        'Юли','Авг','Сеп','Окт','Нов','Дек'],\n        dayNames: ['Неделя','Понеделник','Вторник','Сряда','Четвъртък','Петък','Събота'],\n        dayNamesShort: ['Нед','Пон','Вто','Сря','Чет','Пет','Съб'],\n        dayNamesMin: ['Не','По','Вт','Ср','Че','Пе','Съ'],\n\t\tweekHeader: 'Wk',\n        dateFormat: 'dd.mm.yy',\n\t\tfirstDay: 1,\n        isRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n    $.datepicker.setDefaults($.datepicker.regional['bg']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-bs.js",
    "content": "﻿/* Bosnian i18n for the jQuery UI date picker plugin. */\n/* Written by Kenan Konjo. */\njQuery(function($){\n\t$.datepicker.regional['bs'] = {\n\t\tcloseText: 'Zatvori', \n\t\tprevText: '&#x3c;', \n\t\tnextText: '&#x3e;', \n\t\tcurrentText: 'Danas', \n\t\tmonthNames: ['Januar','Februar','Mart','April','Maj','Juni',\n\t\t'Juli','August','Septembar','Oktobar','Novembar','Decembar'],\n\t\tmonthNamesShort: ['Jan','Feb','Mar','Apr','Maj','Jun',\n\t\t'Jul','Aug','Sep','Okt','Nov','Dec'],\n\t\tdayNames: ['Nedelja','Ponedeljak','Utorak','Srijeda','Četvrtak','Petak','Subota'],\n\t\tdayNamesShort: ['Ned','Pon','Uto','Sri','Čet','Pet','Sub'],\n\t\tdayNamesMin: ['Ne','Po','Ut','Sr','Če','Pe','Su'],\n\t\tweekHeader: 'Wk',\n\t\tdateFormat: 'dd.mm.yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['bs']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-ca.js",
    "content": "/* Inicialització en català per a l'extenció 'calendar' per jQuery. */\n/* Writers: (joan.leon@gmail.com). */\njQuery(function($){\n\t$.datepicker.regional['ca'] = {\n\t\tcloseText: 'Tancar',\n\t\tprevText: '&#x3c;Ant',\n\t\tnextText: 'Seg&#x3e;',\n\t\tcurrentText: 'Avui',\n\t\tmonthNames: ['Gener','Febrer','Mar&ccedil;','Abril','Maig','Juny',\n\t\t'Juliol','Agost','Setembre','Octubre','Novembre','Desembre'],\n\t\tmonthNamesShort: ['Gen','Feb','Mar','Abr','Mai','Jun',\n\t\t'Jul','Ago','Set','Oct','Nov','Des'],\n\t\tdayNames: ['Diumenge','Dilluns','Dimarts','Dimecres','Dijous','Divendres','Dissabte'],\n\t\tdayNamesShort: ['Dug','Dln','Dmt','Dmc','Djs','Dvn','Dsb'],\n\t\tdayNamesMin: ['Dg','Dl','Dt','Dc','Dj','Dv','Ds'],\n\t\tweekHeader: 'Sm',\n\t\tdateFormat: 'dd/mm/yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['ca']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-cs.js",
    "content": "﻿/* Czech initialisation for the jQuery UI date picker plugin. */\n/* Written by Tomas Muller (tomas@tomas-muller.net). */\njQuery(function($){\n\t$.datepicker.regional['cs'] = {\n\t\tcloseText: 'Zavřít',\n\t\tprevText: '&#x3c;Dříve',\n\t\tnextText: 'Později&#x3e;',\n\t\tcurrentText: 'Nyní',\n\t\tmonthNames: ['leden','únor','březen','duben','květen','červen',\n        'červenec','srpen','září','říjen','listopad','prosinec'],\n\t\tmonthNamesShort: ['led','úno','bře','dub','kvě','čer',\n\t\t'čvc','srp','zář','říj','lis','pro'],\n\t\tdayNames: ['neděle', 'pondělí', 'úterý', 'středa', 'čtvrtek', 'pátek', 'sobota'],\n\t\tdayNamesShort: ['ne', 'po', 'út', 'st', 'čt', 'pá', 'so'],\n\t\tdayNamesMin: ['ne','po','út','st','čt','pá','so'],\n\t\tweekHeader: 'Týd',\n\t\tdateFormat: 'dd.mm.yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['cs']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-da.js",
    "content": "﻿/* Danish initialisation for the jQuery UI date picker plugin. */\n/* Written by Jan Christensen ( deletestuff@gmail.com). */\njQuery(function($){\n    $.datepicker.regional['da'] = {\n\t\tcloseText: 'Luk',\n        prevText: '&#x3c;Forrige',\n\t\tnextText: 'Næste&#x3e;',\n\t\tcurrentText: 'Idag',\n        monthNames: ['Januar','Februar','Marts','April','Maj','Juni',\n        'Juli','August','September','Oktober','November','December'],\n        monthNamesShort: ['Jan','Feb','Mar','Apr','Maj','Jun',\n        'Jul','Aug','Sep','Okt','Nov','Dec'],\n\t\tdayNames: ['Søndag','Mandag','Tirsdag','Onsdag','Torsdag','Fredag','Lørdag'],\n\t\tdayNamesShort: ['Søn','Man','Tir','Ons','Tor','Fre','Lør'],\n\t\tdayNamesMin: ['Sø','Ma','Ti','On','To','Fr','Lø'],\n\t\tweekHeader: 'Uge',\n        dateFormat: 'dd-mm-yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n    $.datepicker.setDefaults($.datepicker.regional['da']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-de-CH.js",
    "content": "﻿/* Swiss-German initialisation for the jQuery UI date picker plugin. */\r\n/* By Douglas Jose & Juerg Meier. */\r\njQuery(function($){\r\n\t$.datepicker.regional['de-CH'] = {\r\n\t\tcloseText: 'schliessen',\r\n\t\tprevText: '&#x3c;zurück',\r\n\t\tnextText: 'nächster&#x3e;',\r\n\t\tcurrentText: 'heute',\r\n\t\tmonthNames: ['Januar','Februar','März','April','Mai','Juni',\r\n\t\t'Juli','August','September','Oktober','November','Dezember'],\r\n\t\tmonthNamesShort: ['Jan','Feb','Mär','Apr','Mai','Jun',\r\n\t\t'Jul','Aug','Sep','Okt','Nov','Dez'],\r\n\t\tdayNames: ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'],\r\n\t\tdayNamesShort: ['So','Mo','Di','Mi','Do','Fr','Sa'],\r\n\t\tdayNamesMin: ['So','Mo','Di','Mi','Do','Fr','Sa'],\r\n\t\tweekHeader: 'Wo',\r\n\t\tdateFormat: 'dd.mm.yy',\r\n\t\tfirstDay: 1,\r\n\t\tisRTL: false,\r\n\t\tshowMonthAfterYear: false,\r\n\t\tyearSuffix: ''};\r\n\t$.datepicker.setDefaults($.datepicker.regional['de-CH']);\r\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-de.js",
    "content": "﻿/* German initialisation for the jQuery UI date picker plugin. */\n/* Written by Milian Wolff (mail@milianw.de). */\njQuery(function($){\n\t$.datepicker.regional['de'] = {\n\t\tcloseText: 'schließen',\n\t\tprevText: '&#x3c;zurück',\n\t\tnextText: 'Vor&#x3e;',\n\t\tcurrentText: 'heute',\n\t\tmonthNames: ['Januar','Februar','März','April','Mai','Juni',\n\t\t'Juli','August','September','Oktober','November','Dezember'],\n\t\tmonthNamesShort: ['Jan','Feb','Mär','Apr','Mai','Jun',\n\t\t'Jul','Aug','Sep','Okt','Nov','Dez'],\n\t\tdayNames: ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'],\n\t\tdayNamesShort: ['So','Mo','Di','Mi','Do','Fr','Sa'],\n\t\tdayNamesMin: ['So','Mo','Di','Mi','Do','Fr','Sa'],\n\t\tweekHeader: 'Wo',\n\t\tdateFormat: 'dd.mm.yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['de']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-el.js",
    "content": "﻿/* Greek (el) initialisation for the jQuery UI date picker plugin. */\n/* Written by Alex Cicovic (http://www.alexcicovic.com) */\njQuery(function($){\n\t$.datepicker.regional['el'] = {\n\t\tcloseText: 'Κλείσιμο',\n\t\tprevText: 'Προηγούμενος',\n\t\tnextText: 'Επόμενος',\n\t\tcurrentText: 'Τρέχων Μήνας',\n\t\tmonthNames: ['Ιανουάριος','Φεβρουάριος','Μάρτιος','Απρίλιος','Μάιος','Ιούνιος',\n\t\t'Ιούλιος','Αύγουστος','Σεπτέμβριος','Οκτώβριος','Νοέμβριος','Δεκέμβριος'],\n\t\tmonthNamesShort: ['Ιαν','Φεβ','Μαρ','Απρ','Μαι','Ιουν',\n\t\t'Ιουλ','Αυγ','Σεπ','Οκτ','Νοε','Δεκ'],\n\t\tdayNames: ['Κυριακή','Δευτέρα','Τρίτη','Τετάρτη','Πέμπτη','Παρασκευή','Σάββατο'],\n\t\tdayNamesShort: ['Κυρ','Δευ','Τρι','Τετ','Πεμ','Παρ','Σαβ'],\n\t\tdayNamesMin: ['Κυ','Δε','Τρ','Τε','Πε','Πα','Σα'],\n\t\tweekHeader: 'Εβδ',\n\t\tdateFormat: 'dd/mm/yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['el']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-en-GB.js",
    "content": "﻿/* English/UK initialisation for the jQuery UI date picker plugin. */\n/* Written by Stuart. */\njQuery(function($){\n\t$.datepicker.regional['en-GB'] = {\n\t\tcloseText: 'Done',\n\t\tprevText: 'Prev',\n\t\tnextText: 'Next',\n\t\tcurrentText: 'Today',\n\t\tmonthNames: ['January','February','March','April','May','June',\n\t\t'July','August','September','October','November','December'],\n\t\tmonthNamesShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',\n\t\t'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],\n\t\tdayNames: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],\n\t\tdayNamesShort: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\n\t\tdayNamesMin: ['Su','Mo','Tu','We','Th','Fr','Sa'],\n\t\tweekHeader: 'Wk',\n\t\tdateFormat: 'dd/mm/yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['en-GB']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-en.js",
    "content": "﻿/* English/UK initialisation for the jQuery UI date picker plugin. */\n/* Written by Stuart. */\njQuery(function($){\n\t$.datepicker.regional['en-GB'] = {\n\t\tcloseText: 'Done',\n\t\tprevText: 'Prev',\n\t\tnextText: 'Next',\n\t\tcurrentText: 'Today',\n\t\tmonthNames: ['January','February','March','April','May','June',\n\t\t'July','August','September','October','November','December'],\n\t\tmonthNamesShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',\n\t\t'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],\n\t\tdayNames: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],\n\t\tdayNamesShort: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\n\t\tdayNamesMin: ['Su','Mo','Tu','We','Th','Fr','Sa'],\n\t\tweekHeader: 'Wk',\n\t\tdateFormat: 'dd/mm/yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['en-GB']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-eo.js",
    "content": "﻿/* Esperanto initialisation for the jQuery UI date picker plugin. */\n/* Written by Olivier M. (olivierweb@ifrance.com). */\njQuery(function($){\n\t$.datepicker.regional['eo'] = {\n\t\tcloseText: 'Fermi',\n\t\tprevText: '&lt;Anta',\n\t\tnextText: 'Sekv&gt;',\n\t\tcurrentText: 'Nuna',\n\t\tmonthNames: ['Januaro','Februaro','Marto','Aprilo','Majo','Junio',\n\t\t'Julio','Aŭgusto','Septembro','Oktobro','Novembro','Decembro'],\n\t\tmonthNamesShort: ['Jan','Feb','Mar','Apr','Maj','Jun',\n\t\t'Jul','Aŭg','Sep','Okt','Nov','Dec'],\n\t\tdayNames: ['Dimanĉo','Lundo','Mardo','Merkredo','Ĵaŭdo','Vendredo','Sabato'],\n\t\tdayNamesShort: ['Dim','Lun','Mar','Mer','Ĵaŭ','Ven','Sab'],\n\t\tdayNamesMin: ['Di','Lu','Ma','Me','Ĵa','Ve','Sa'],\n\t\tweekHeader: 'Sb',\n\t\tdateFormat: 'dd/mm/yy',\n\t\tfirstDay: 0,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['eo']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-es.js",
    "content": "/* Inicialización en español para la extensión 'UI date picker' para jQuery. */\n/* Traducido por Vester (xvester@gmail.com). */\njQuery(function($){\n\t$.datepicker.regional['es'] = {\n\t\tcloseText: 'Cerrar',\n\t\tprevText: '&#x3c;Ant',\n\t\tnextText: 'Sig&#x3e;',\n\t\tcurrentText: 'Hoy',\n\t\tmonthNames: ['Enero','Febrero','Marzo','Abril','Mayo','Junio',\n\t\t'Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre'],\n\t\tmonthNamesShort: ['Ene','Feb','Mar','Abr','May','Jun',\n\t\t'Jul','Ago','Sep','Oct','Nov','Dic'],\n\t\tdayNames: ['Domingo','Lunes','Martes','Mi&eacute;rcoles','Jueves','Viernes','S&aacute;bado'],\n\t\tdayNamesShort: ['Dom','Lun','Mar','Mi&eacute;','Juv','Vie','S&aacute;b'],\n\t\tdayNamesMin: ['Do','Lu','Ma','Mi','Ju','Vi','S&aacute;'],\n\t\tweekHeader: 'Sm',\n\t\tdateFormat: 'dd/mm/yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['es']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-et.js",
    "content": "﻿/* Estonian initialisation for the jQuery UI date picker plugin. */\n/* Written by Mart Sõmermaa (mrts.pydev at gmail com). */\njQuery(function($){\n\t$.datepicker.regional['et'] = {\n\t\tcloseText: 'Sulge',\n\t\tprevText: 'Eelnev',\n\t\tnextText: 'Järgnev',\n\t\tcurrentText: 'Täna',\n\t\tmonthNames: ['Jaanuar','Veebruar','Märts','Aprill','Mai','Juuni',\n\t\t'Juuli','August','September','Oktoober','November','Detsember'],\n\t\tmonthNamesShort: ['Jaan', 'Veebr', 'Märts', 'Apr', 'Mai', 'Juuni',\n\t\t'Juuli', 'Aug', 'Sept', 'Okt', 'Nov', 'Dets'],\n\t\tdayNames: ['Pühapäev', 'Esmaspäev', 'Teisipäev', 'Kolmapäev', 'Neljapäev', 'Reede', 'Laupäev'],\n\t\tdayNamesShort: ['Pühap', 'Esmasp', 'Teisip', 'Kolmap', 'Neljap', 'Reede', 'Laup'],\n\t\tdayNamesMin: ['P','E','T','K','N','R','L'],\n\t\tweekHeader: 'Sm',\n\t\tdateFormat: 'dd.mm.yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['et']);\n}); "
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-eu.js",
    "content": "﻿/* Euskarako oinarria 'UI date picker' jquery-ko extentsioarentzat */\n/* Karrikas-ek itzulia (karrikas@karrikas.com) */\njQuery(function($){\n\t$.datepicker.regional['eu'] = {\n\t\tcloseText: 'Egina',\n\t\tprevText: '&#x3c;Aur',\n\t\tnextText: 'Hur&#x3e;',\n\t\tcurrentText: 'Gaur',\n\t\tmonthNames: ['Urtarrila','Otsaila','Martxoa','Apirila','Maiatza','Ekaina',\n\t\t'Uztaila','Abuztua','Iraila','Urria','Azaroa','Abendua'],\n\t\tmonthNamesShort: ['Urt','Ots','Mar','Api','Mai','Eka',\n\t\t'Uzt','Abu','Ira','Urr','Aza','Abe'],\n\t\tdayNames: ['Igandea','Astelehena','Asteartea','Asteazkena','Osteguna','Ostirala','Larunbata'],\n\t\tdayNamesShort: ['Iga','Ast','Ast','Ast','Ost','Ost','Lar'],\n\t\tdayNamesMin: ['Ig','As','As','As','Os','Os','La'],\n\t\tweekHeader: 'Wk',\n\t\tdateFormat: 'yy/mm/dd',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['eu']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-fa.js",
    "content": "﻿/* Persian (Farsi) Translation for the jQuery UI date picker plugin. */\n/* Javad Mowlanezhad -- jmowla@gmail.com */\n/* Jalali calendar should supported soon! (Its implemented but I have to test it) */\njQuery(function($) {\n\t$.datepicker.regional['fa'] = {\n\t\tcloseText: 'بستن',\n\t\tprevText: '&#x3c;قبلي',\n\t\tnextText: 'بعدي&#x3e;',\n\t\tcurrentText: 'امروز',\n\t\tmonthNames: ['فروردين','ارديبهشت','خرداد','تير','مرداد','شهريور',\n\t\t'مهر','آبان','آذر','دي','بهمن','اسفند'],\n\t\tmonthNamesShort: ['1','2','3','4','5','6','7','8','9','10','11','12'],\n\t\tdayNames: ['يکشنبه','دوشنبه','سه‌شنبه','چهارشنبه','پنجشنبه','جمعه','شنبه'],\n\t\tdayNamesShort: ['ي','د','س','چ','پ','ج', 'ش'],\n\t\tdayNamesMin: ['ي','د','س','چ','پ','ج', 'ش'],\n\t\tweekHeader: 'هف',\n\t\tdateFormat: 'yy/mm/dd',\n\t\tfirstDay: 6,\n\t\tisRTL: true,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['fa']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-fi.js",
    "content": "/* Finnish initialisation for the jQuery UI date picker plugin. */\n/* Written by Harri Kilpi� (harrikilpio@gmail.com). */\njQuery(function($){\n    $.datepicker.regional['fi'] = {\n\t\tcloseText: 'Sulje',\n\t\tprevText: '&laquo;Edellinen',\n\t\tnextText: 'Seuraava&raquo;',\n\t\tcurrentText: 'T&auml;n&auml;&auml;n',\n        monthNames: ['Tammikuu','Helmikuu','Maaliskuu','Huhtikuu','Toukokuu','Kes&auml;kuu',\n        'Hein&auml;kuu','Elokuu','Syyskuu','Lokakuu','Marraskuu','Joulukuu'],\n        monthNamesShort: ['Tammi','Helmi','Maalis','Huhti','Touko','Kes&auml;',\n        'Hein&auml;','Elo','Syys','Loka','Marras','Joulu'],\n\t\tdayNamesShort: ['Su','Ma','Ti','Ke','To','Pe','Su'],\n\t\tdayNames: ['Sunnuntai','Maanantai','Tiistai','Keskiviikko','Torstai','Perjantai','Lauantai'],\n\t\tdayNamesMin: ['Su','Ma','Ti','Ke','To','Pe','La'],\n\t\tweekHeader: 'Vk',\n        dateFormat: 'dd.mm.yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n    $.datepicker.setDefaults($.datepicker.regional['fi']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-fo.js",
    "content": "﻿/* Faroese initialisation for the jQuery UI date picker plugin */\n/* Written by Sverri Mohr Olsen, sverrimo@gmail.com */\njQuery(function($){\n\t$.datepicker.regional['fo'] = {\n\t\tcloseText: 'Lat aftur',\n\t\tprevText: '&#x3c;Fyrra',\n\t\tnextText: 'Næsta&#x3e;',\n\t\tcurrentText: 'Í dag',\n\t\tmonthNames: ['Januar','Februar','Mars','Apríl','Mei','Juni',\n\t\t'Juli','August','September','Oktober','November','Desember'],\n\t\tmonthNamesShort: ['Jan','Feb','Mar','Apr','Mei','Jun',\n\t\t'Jul','Aug','Sep','Okt','Nov','Des'],\n\t\tdayNames: ['Sunnudagur','Mánadagur','Týsdagur','Mikudagur','Hósdagur','Fríggjadagur','Leyardagur'],\n\t\tdayNamesShort: ['Sun','Mán','Týs','Mik','Hós','Frí','Ley'],\n\t\tdayNamesMin: ['Su','Má','Tý','Mi','Hó','Fr','Le'],\n\t\tweekHeader: 'Vk',\n\t\tdateFormat: 'dd-mm-yy',\n\t\tfirstDay: 0,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['fo']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-fr-CH.js",
    "content": "/* Swiss-French initialisation for the jQuery UI date picker plugin. */\n/* Written Martin Voelkle (martin.voelkle@e-tc.ch). */\njQuery(function($){\n\t$.datepicker.regional['fr-CH'] = {\n\t\tcloseText: 'Fermer',\n\t\tprevText: '&#x3c;Prc',\n\t\tnextText: 'Suiv&#x3e;',\n\t\tcurrentText: 'Courant',\n\t\tmonthNames: ['Janvier','Fvrier','Mars','Avril','Mai','Juin',\n\t\t'Juillet','Aot','Septembre','Octobre','Novembre','Dcembre'],\n\t\tmonthNamesShort: ['Jan','Fv','Mar','Avr','Mai','Jun',\n\t\t'Jul','Ao','Sep','Oct','Nov','Dc'],\n\t\tdayNames: ['Dimanche','Lundi','Mardi','Mercredi','Jeudi','Vendredi','Samedi'],\n\t\tdayNamesShort: ['Dim','Lun','Mar','Mer','Jeu','Ven','Sam'],\n\t\tdayNamesMin: ['Di','Lu','Ma','Me','Je','Ve','Sa'],\n\t\tweekHeader: 'Sm',\n\t\tdateFormat: 'dd.mm.yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['fr-CH']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-fr.js",
    "content": "﻿/* French initialisation for the jQuery UI date picker plugin. */\n/* Written by Keith Wood (kbwood{at}iinet.com.au) and Stéphane Nahmani (sholby@sholby.net). */\njQuery(function($){\n\t$.datepicker.regional['fr'] = {\n\t\tcloseText: 'Fermer',\n\t\tprevText: '&#x3c;Préc',\n\t\tnextText: 'Suiv&#x3e;',\n\t\tcurrentText: 'Courant',\n\t\tmonthNames: ['Janvier','Février','Mars','Avril','Mai','Juin',\n\t\t'Juillet','Août','Septembre','Octobre','Novembre','Décembre'],\n\t\tmonthNamesShort: ['Jan','Fév','Mar','Avr','Mai','Jun',\n\t\t'Jul','Aoû','Sep','Oct','Nov','Déc'],\n\t\tdayNames: ['Dimanche','Lundi','Mardi','Mercredi','Jeudi','Vendredi','Samedi'],\n\t\tdayNamesShort: ['Dim','Lun','Mar','Mer','Jeu','Ven','Sam'],\n\t\tdayNamesMin: ['Di','Lu','Ma','Me','Je','Ve','Sa'],\n\t\tweekHeader: 'Sm',\n\t\tdateFormat: 'dd/mm/yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['fr']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-he.js",
    "content": "﻿/* Hebrew initialisation for the UI Datepicker extension. */\n/* Written by Amir Hardon (ahardon at gmail dot com). */\njQuery(function($){\n\t$.datepicker.regional['he'] = {\n\t\tcloseText: 'סגור',\n\t\tprevText: '&#x3c;הקודם',\n\t\tnextText: 'הבא&#x3e;',\n\t\tcurrentText: 'היום',\n\t\tmonthNames: ['ינואר','פברואר','מרץ','אפריל','מאי','יוני',\n\t\t'יולי','אוגוסט','ספטמבר','אוקטובר','נובמבר','דצמבר'],\n\t\tmonthNamesShort: ['1','2','3','4','5','6',\n\t\t'7','8','9','10','11','12'],\n\t\tdayNames: ['ראשון','שני','שלישי','רביעי','חמישי','שישי','שבת'],\n\t\tdayNamesShort: ['א\\'','ב\\'','ג\\'','ד\\'','ה\\'','ו\\'','שבת'],\n\t\tdayNamesMin: ['א\\'','ב\\'','ג\\'','ד\\'','ה\\'','ו\\'','שבת'],\n\t\tweekHeader: 'Wk',\n\t\tdateFormat: 'dd/mm/yy',\n\t\tfirstDay: 0,\n\t\tisRTL: true,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['he']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-hr.js",
    "content": "﻿/* Croatian i18n for the jQuery UI date picker plugin. */\n/* Written by Vjekoslav Nesek. */\njQuery(function($){\n\t$.datepicker.regional['hr'] = {\n\t\tcloseText: 'Zatvori',\n\t\tprevText: '&#x3c;',\n\t\tnextText: '&#x3e;',\n\t\tcurrentText: 'Danas',\n\t\tmonthNames: ['Siječanj','Veljača','Ožujak','Travanj','Svibanj','Lipanj',\n\t\t'Srpanj','Kolovoz','Rujan','Listopad','Studeni','Prosinac'],\n\t\tmonthNamesShort: ['Sij','Velj','Ožu','Tra','Svi','Lip',\n\t\t'Srp','Kol','Ruj','Lis','Stu','Pro'],\n\t\tdayNames: ['Nedjelja','Ponedjeljak','Utorak','Srijeda','Četvrtak','Petak','Subota'],\n\t\tdayNamesShort: ['Ned','Pon','Uto','Sri','Čet','Pet','Sub'],\n\t\tdayNamesMin: ['Ne','Po','Ut','Sr','Če','Pe','Su'],\n\t\tweekHeader: 'Tje',\n\t\tdateFormat: 'dd.mm.yy.',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['hr']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-hu.js",
    "content": "/* Hungarian initialisation for the jQuery UI date picker plugin. */\n/* Written by Istvan Karaszi (jquery@spam.raszi.hu). */\njQuery(function($){\n\t$.datepicker.regional['hu'] = {\n\t\tcloseText: 'bezárás',\n\t\tprevText: '&laquo;&nbsp;vissza',\n\t\tnextText: 'előre&nbsp;&raquo;',\n\t\tcurrentText: 'ma',\n\t\tmonthNames: ['Január', 'Február', 'Március', 'Április', 'Május', 'Június',\n\t\t'Július', 'Augusztus', 'Szeptember', 'Október', 'November', 'December'],\n\t\tmonthNamesShort: ['Jan', 'Feb', 'Már', 'Ápr', 'Máj', 'Jún',\n\t\t'Júl', 'Aug', 'Szep', 'Okt', 'Nov', 'Dec'],\n\t\tdayNames: ['Vasárnap', 'Hétfö', 'Kedd', 'Szerda', 'Csütörtök', 'Péntek', 'Szombat'],\n\t\tdayNamesShort: ['Vas', 'Hét', 'Ked', 'Sze', 'Csü', 'Pén', 'Szo'],\n\t\tdayNamesMin: ['V', 'H', 'K', 'Sze', 'Cs', 'P', 'Szo'],\n\t\tweekHeader: 'Hé',\n\t\tdateFormat: 'yy-mm-dd',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['hu']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-hy.js",
    "content": "/* Armenian(UTF-8) initialisation for the jQuery UI date picker plugin. */\n/* Written by Levon Zakaryan (levon.zakaryan@gmail.com)*/\njQuery(function($){\n\t$.datepicker.regional['hy'] = {\n\t\tcloseText: 'Փակել',\n\t\tprevText: '&#x3c;Նախ.',\n\t\tnextText: 'Հաջ.&#x3e;',\n\t\tcurrentText: 'Այսօր',\n\t\tmonthNames: ['Հունվար','Փետրվար','Մարտ','Ապրիլ','Մայիս','Հունիս',\n\t\t'Հուլիս','Օգոստոս','Սեպտեմբեր','Հոկտեմբեր','Նոյեմբեր','Դեկտեմբեր'],\n\t\tmonthNamesShort: ['Հունվ','Փետր','Մարտ','Ապր','Մայիս','Հունիս',\n\t\t'Հուլ','Օգս','Սեպ','Հոկ','Նոյ','Դեկ'],\n\t\tdayNames: ['կիրակի','եկուշաբթի','երեքշաբթի','չորեքշաբթի','հինգշաբթի','ուրբաթ','շաբաթ'],\n\t\tdayNamesShort: ['կիր','երկ','երք','չրք','հնգ','ուրբ','շբթ'],\n\t\tdayNamesMin: ['կիր','երկ','երք','չրք','հնգ','ուրբ','շբթ'],\n\t\tweekHeader: 'ՇԲՏ',\n\t\tdateFormat: 'dd.mm.yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['hy']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-id.js",
    "content": "/* Indonesian initialisation for the jQuery UI date picker plugin. */\n/* Written by Deden Fathurahman (dedenf@gmail.com). */\njQuery(function($){\n\t$.datepicker.regional['id'] = {\n\t\tcloseText: 'Tutup',\n\t\tprevText: '&#x3c;mundur',\n\t\tnextText: 'maju&#x3e;',\n\t\tcurrentText: 'hari ini',\n\t\tmonthNames: ['Januari','Februari','Maret','April','Mei','Juni',\n\t\t'Juli','Agustus','September','Oktober','Nopember','Desember'],\n\t\tmonthNamesShort: ['Jan','Feb','Mar','Apr','Mei','Jun',\n\t\t'Jul','Agus','Sep','Okt','Nop','Des'],\n\t\tdayNames: ['Minggu','Senin','Selasa','Rabu','Kamis','Jumat','Sabtu'],\n\t\tdayNamesShort: ['Min','Sen','Sel','Rab','kam','Jum','Sab'],\n\t\tdayNamesMin: ['Mg','Sn','Sl','Rb','Km','jm','Sb'],\n\t\tweekHeader: 'Mg',\n\t\tdateFormat: 'dd/mm/yy',\n\t\tfirstDay: 0,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['id']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-is.js",
    "content": "/* Icelandic initialisation for the jQuery UI date picker plugin. */\n/* Written by Haukur H. Thorsson (haukur@eskill.is). */\njQuery(function($){\n\t$.datepicker.regional['is'] = {\n\t\tcloseText: 'Loka',\n\t\tprevText: '&#x3c; Fyrri',\n\t\tnextText: 'N&aelig;sti &#x3e;',\n\t\tcurrentText: '&Iacute; dag',\n\t\tmonthNames: ['Jan&uacute;ar','Febr&uacute;ar','Mars','Apr&iacute;l','Ma&iacute','J&uacute;n&iacute;',\n\t\t'J&uacute;l&iacute;','&Aacute;g&uacute;st','September','Okt&oacute;ber','N&oacute;vember','Desember'],\n\t\tmonthNamesShort: ['Jan','Feb','Mar','Apr','Ma&iacute;','J&uacute;n',\n\t\t'J&uacute;l','&Aacute;g&uacute;','Sep','Okt','N&oacute;v','Des'],\n\t\tdayNames: ['Sunnudagur','M&aacute;nudagur','&THORN;ri&eth;judagur','Mi&eth;vikudagur','Fimmtudagur','F&ouml;studagur','Laugardagur'],\n\t\tdayNamesShort: ['Sun','M&aacute;n','&THORN;ri','Mi&eth;','Fim','F&ouml;s','Lau'],\n\t\tdayNamesMin: ['Su','M&aacute;','&THORN;r','Mi','Fi','F&ouml;','La'],\n\t\tweekHeader: 'Vika',\n\t\tdateFormat: 'dd/mm/yy',\n\t\tfirstDay: 0,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['is']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-it.js",
    "content": "/* Italian initialisation for the jQuery UI date picker plugin. */\n/* Written by Antonello Pasella (antonello.pasella@gmail.com). */\njQuery(function($){\n\t$.datepicker.regional['it'] = {\n\t\tcloseText: 'Chiudi',\n\t\tprevText: '&#x3c;Prec',\n\t\tnextText: 'Succ&#x3e;',\n\t\tcurrentText: 'Oggi',\n\t\tmonthNames: ['Gennaio','Febbraio','Marzo','Aprile','Maggio','Giugno',\n\t\t\t'Luglio','Agosto','Settembre','Ottobre','Novembre','Dicembre'],\n\t\tmonthNamesShort: ['Gen','Feb','Mar','Apr','Mag','Giu',\n\t\t\t'Lug','Ago','Set','Ott','Nov','Dic'],\n\t\tdayNames: ['Domenica','Luned&#236','Marted&#236','Mercoled&#236','Gioved&#236','Venerd&#236','Sabato'],\n\t\tdayNamesShort: ['Dom','Lun','Mar','Mer','Gio','Ven','Sab'],\n\t\tdayNamesMin: ['Do','Lu','Ma','Me','Gi','Ve','Sa'],\n\t\tweekHeader: 'Sm',\n\t\tdateFormat: 'dd/mm/yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['it']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-ja.js",
    "content": "﻿/* Japanese initialisation for the jQuery UI date picker plugin. */\n/* Written by Kentaro SATO (kentaro@ranvis.com). */\njQuery(function($){\n\t$.datepicker.regional['ja'] = {\n\t\tcloseText: '閉じる',\n\t\tprevText: '&#x3c;前',\n\t\tnextText: '次&#x3e;',\n\t\tcurrentText: '今日',\n\t\tmonthNames: ['1月','2月','3月','4月','5月','6月',\n\t\t'7月','8月','9月','10月','11月','12月'],\n\t\tmonthNamesShort: ['1月','2月','3月','4月','5月','6月',\n\t\t'7月','8月','9月','10月','11月','12月'],\n\t\tdayNames: ['日曜日','月曜日','火曜日','水曜日','木曜日','金曜日','土曜日'],\n\t\tdayNamesShort: ['日','月','火','水','木','金','土'],\n\t\tdayNamesMin: ['日','月','火','水','木','金','土'],\n\t\tweekHeader: '週',\n\t\tdateFormat: 'yy/mm/dd',\n\t\tfirstDay: 0,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: true,\n\t\tyearSuffix: '年'};\n\t$.datepicker.setDefaults($.datepicker.regional['ja']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-ka.js",
    "content": "/* Georgian (UTF-8) initialisation for the jQuery UI date picker plugin. */\n/* Written by Lado Lomidze (lado.lomidze@gmail.com). */\njQuery(function($){\n\t$.datepicker.regional['ka'] = {\n\t\tcloseText: 'დახურვა',\n\t\tprevText: '&#x3c; წინა',\n\t\tnextText: 'შემდეგი &#x3e;',\n\t\tcurrentText: 'დღეს',\n\t\tmonthNames: ['იანვარი','თებერვალი','მარტი','აპრილი','მაისი','ივნისი', 'ივლისი','აგვისტო','სექტემბერი','ოქტომბერი','ნოემბერი','დეკემბერი'],\n\t\tmonthNamesShort: ['იან','თებ','მარ','აპრ','მაი','ივნ', 'ივლ','აგვ','სექ','ოქტ','ნოე','დეკ'],\n\t\tdayNames: ['კვირა','ორშაბათი','სამშაბათი','ოთხშაბათი','ხუთშაბათი','პარასკევი','შაბათი'],\n\t\tdayNamesShort: ['კვ','ორშ','სამ','ოთხ','ხუთ','პარ','შაბ'],\n\t\tdayNamesMin: ['კვ','ორშ','სამ','ოთხ','ხუთ','პარ','შაბ'],\n\t\tweekHeader: 'კვირა',\n\t\tdateFormat: 'dd-mm-yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['ka']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-ko.js",
    "content": "/* Korean initialisation for the jQuery calendar extension. */\n/* Written by DaeKwon Kang (ncrash.dk@gmail.com). */\njQuery(function($){\n\t$.datepicker.regional['ko'] = {\n\t\tcloseText: '닫기',\n\t\tprevText: '이전달',\n\t\tnextText: '다음달',\n\t\tcurrentText: '오늘',\n\t\tmonthNames: ['1월(JAN)','2월(FEB)','3월(MAR)','4월(APR)','5월(MAY)','6월(JUN)',\n\t\t'7월(JUL)','8월(AUG)','9월(SEP)','10월(OCT)','11월(NOV)','12월(DEC)'],\n\t\tmonthNamesShort: ['1월(JAN)','2월(FEB)','3월(MAR)','4월(APR)','5월(MAY)','6월(JUN)',\n\t\t'7월(JUL)','8월(AUG)','9월(SEP)','10월(OCT)','11월(NOV)','12월(DEC)'],\n\t\tdayNames: ['일','월','화','수','목','금','토'],\n\t\tdayNamesShort: ['일','월','화','수','목','금','토'],\n\t\tdayNamesMin: ['일','월','화','수','목','금','토'],\n\t\tweekHeader: 'Wk',\n\t\tdateFormat: 'yy-mm-dd',\n\t\tfirstDay: 0,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: '년'};\n\t$.datepicker.setDefaults($.datepicker.regional['ko']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-lt.js",
    "content": "/* Lithuanian (UTF-8) initialisation for the jQuery UI date picker plugin. */\n/* @author Arturas Paleicikas <arturas@avalon.lt> */\njQuery(function($){\n\t$.datepicker.regional['lt'] = {\n\t\tcloseText: 'Uždaryti',\n\t\tprevText: '&#x3c;Atgal',\n\t\tnextText: 'Pirmyn&#x3e;',\n\t\tcurrentText: 'Šiandien',\n\t\tmonthNames: ['Sausis','Vasaris','Kovas','Balandis','Gegužė','Birželis',\n\t\t'Liepa','Rugpjūtis','Rugsėjis','Spalis','Lapkritis','Gruodis'],\n\t\tmonthNamesShort: ['Sau','Vas','Kov','Bal','Geg','Bir',\n\t\t'Lie','Rugp','Rugs','Spa','Lap','Gru'],\n\t\tdayNames: ['sekmadienis','pirmadienis','antradienis','trečiadienis','ketvirtadienis','penktadienis','šeštadienis'],\n\t\tdayNamesShort: ['sek','pir','ant','tre','ket','pen','šeš'],\n\t\tdayNamesMin: ['Se','Pr','An','Tr','Ke','Pe','Še'],\n\t\tweekHeader: 'Wk',\n\t\tdateFormat: 'yy-mm-dd',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['lt']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-lv.js",
    "content": "/* Latvian (UTF-8) initialisation for the jQuery UI date picker plugin. */\n/* @author Arturas Paleicikas <arturas.paleicikas@metasite.net> */\njQuery(function($){\n\t$.datepicker.regional['lv'] = {\n\t\tcloseText: 'Aizvērt',\n\t\tprevText: 'Iepr',\n\t\tnextText: 'Nāka',\n\t\tcurrentText: 'Šodien',\n\t\tmonthNames: ['Janvāris','Februāris','Marts','Aprīlis','Maijs','Jūnijs',\n\t\t'Jūlijs','Augusts','Septembris','Oktobris','Novembris','Decembris'],\n\t\tmonthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jūn',\n\t\t'Jūl','Aug','Sep','Okt','Nov','Dec'],\n\t\tdayNames: ['svētdiena','pirmdiena','otrdiena','trešdiena','ceturtdiena','piektdiena','sestdiena'],\n\t\tdayNamesShort: ['svt','prm','otr','tre','ctr','pkt','sst'],\n\t\tdayNamesMin: ['Sv','Pr','Ot','Tr','Ct','Pk','Ss'],\n\t\tweekHeader: 'Nav',\n\t\tdateFormat: 'dd-mm-yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['lv']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-ms.js",
    "content": "/* Malaysian initialisation for the jQuery UI date picker plugin. */\n/* Written by Mohd Nawawi Mohamad Jamili (nawawi@ronggeng.net). */\njQuery(function($){\n\t$.datepicker.regional['ms'] = {\n\t\tcloseText: 'Tutup',\n\t\tprevText: '&#x3c;Sebelum',\n\t\tnextText: 'Selepas&#x3e;',\n\t\tcurrentText: 'hari ini',\n\t\tmonthNames: ['Januari','Februari','Mac','April','Mei','Jun',\n\t\t'Julai','Ogos','September','Oktober','November','Disember'],\n\t\tmonthNamesShort: ['Jan','Feb','Mac','Apr','Mei','Jun',\n\t\t'Jul','Ogo','Sep','Okt','Nov','Dis'],\n\t\tdayNames: ['Ahad','Isnin','Selasa','Rabu','Khamis','Jumaat','Sabtu'],\n\t\tdayNamesShort: ['Aha','Isn','Sel','Rab','kha','Jum','Sab'],\n\t\tdayNamesMin: ['Ah','Is','Se','Ra','Kh','Ju','Sa'],\n\t\tweekHeader: 'Mg',\n\t\tdateFormat: 'dd/mm/yy',\n\t\tfirstDay: 0,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['ms']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-nl-BE.js",
    "content": "﻿/* Dutch/Belgian (UTF-8) initialisation for the jQuery UI date picker plugin. */\r\n/* Written by Mathias Bynens <http://mathiasbynens.be/> */\r\njQuery(function($){\r\n\t$.datepicker.regional['nl-BE'] = {\r\n\t\tcloseText: 'Sluiten',\r\n\t\tprevText: '←',\r\n\t\tnextText: '→',\r\n\t\tcurrentText: 'Vandaag',\r\n\t\tmonthNames: ['januari', 'februari', 'maart', 'april', 'mei', 'juni',\r\n\t\t'juli', 'augustus', 'september', 'oktober', 'november', 'december'],\r\n\t\tmonthNamesShort: ['jan', 'feb', 'maa', 'apr', 'mei', 'jun',\r\n\t\t'jul', 'aug', 'sep', 'okt', 'nov', 'dec'],\r\n\t\tdayNames: ['zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag'],\r\n\t\tdayNamesShort: ['zon', 'maa', 'din', 'woe', 'don', 'vri', 'zat'],\r\n\t\tdayNamesMin: ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'],\r\n\t\tweekHeader: 'Wk',\r\n\t\tdateFormat: 'dd/mm/yy',\r\n\t\tfirstDay: 1,\r\n\t\tisRTL: false,\r\n\t\tshowMonthAfterYear: false,\r\n\t\tyearSuffix: ''};\r\n\t$.datepicker.setDefaults($.datepicker.regional['nl-BE']);\r\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-nl.js",
    "content": "﻿/* Dutch (UTF-8) initialisation for the jQuery UI date picker plugin. */\n/* Written by Mathias Bynens <http://mathiasbynens.be/> */\njQuery(function($){\n\t$.datepicker.regional['nl'] = {\n\t\tcloseText: 'Sluiten',\n\t\tprevText: '←',\n\t\tnextText: '→',\n\t\tcurrentText: 'Vandaag',\n\t\tmonthNames: ['januari', 'februari', 'maart', 'april', 'mei', 'juni',\n\t\t'juli', 'augustus', 'september', 'oktober', 'november', 'december'],\n\t\tmonthNamesShort: ['jan', 'feb', 'maa', 'apr', 'mei', 'jun',\n\t\t'jul', 'aug', 'sep', 'okt', 'nov', 'dec'],\n\t\tdayNames: ['zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag'],\n\t\tdayNamesShort: ['zon', 'maa', 'din', 'woe', 'don', 'vri', 'zat'],\n\t\tdayNamesMin: ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'],\n\t\tweekHeader: 'Wk',\n\t\tdateFormat: 'dd-mm-yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['nl']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-no.js",
    "content": "/* Norwegian initialisation for the jQuery UI date picker plugin. */\n/* Written by Naimdjon Takhirov (naimdjon@gmail.com). */\njQuery(function($){\n    $.datepicker.regional['no'] = {\n\t\tcloseText: 'Lukk',\n        prevText: '&laquo;Forrige',\n\t\tnextText: 'Neste&raquo;',\n\t\tcurrentText: 'I dag',\n        monthNames: ['Januar','Februar','Mars','April','Mai','Juni',\n        'Juli','August','September','Oktober','November','Desember'],\n        monthNamesShort: ['Jan','Feb','Mar','Apr','Mai','Jun',\n        'Jul','Aug','Sep','Okt','Nov','Des'],\n\t\tdayNamesShort: ['Søn','Man','Tir','Ons','Tor','Fre','Lør'],\n\t\tdayNames: ['Søndag','Mandag','Tirsdag','Onsdag','Torsdag','Fredag','Lørdag'],\n\t\tdayNamesMin: ['Sø','Ma','Ti','On','To','Fr','Lø'],\n\t\tweekHeader: 'Uke',\n        dateFormat: 'yy-mm-dd',\n\t\tfirstDay: 0,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n    $.datepicker.setDefaults($.datepicker.regional['no']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-pl.js",
    "content": "/* Polish initialisation for the jQuery UI date picker plugin. */\n/* Written by Jacek Wysocki (jacek.wysocki@gmail.com). */\njQuery(function($){\n\t$.datepicker.regional['pl'] = {\n\t\tcloseText: 'Zamknij',\n\t\tprevText: '&#x3c;Poprzedni',\n\t\tnextText: 'Następny&#x3e;',\n\t\tcurrentText: 'Dziś',\n\t\tmonthNames: ['Styczeń','Luty','Marzec','Kwiecień','Maj','Czerwiec',\n\t\t'Lipiec','Sierpień','Wrzesień','Październik','Listopad','Grudzień'],\n\t\tmonthNamesShort: ['Sty','Lu','Mar','Kw','Maj','Cze',\n\t\t'Lip','Sie','Wrz','Pa','Lis','Gru'],\n\t\tdayNames: ['Niedziela','Poniedzialek','Wtorek','Środa','Czwartek','Piątek','Sobota'],\n\t\tdayNamesShort: ['Nie','Pn','Wt','Śr','Czw','Pt','So'],\n\t\tdayNamesMin: ['N','Pn','Wt','Śr','Cz','Pt','So'],\n\t\tweekHeader: 'Tydz',\n\t\tdateFormat: 'yy-mm-dd',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['pl']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-pt-BR.js",
    "content": "/* Brazilian initialisation for the jQuery UI date picker plugin. */\n/* Written by Leonildo Costa Silva (leocsilva@gmail.com). */\njQuery(function($){\n\t$.datepicker.regional['pt-BR'] = {\n\t\tcloseText: 'Fechar',\n\t\tprevText: '&#x3c;Anterior',\n\t\tnextText: 'Pr&oacute;ximo&#x3e;',\n\t\tcurrentText: 'Hoje',\n\t\tmonthNames: ['Janeiro','Fevereiro','Mar&ccedil;o','Abril','Maio','Junho',\n\t\t'Julho','Agosto','Setembro','Outubro','Novembro','Dezembro'],\n\t\tmonthNamesShort: ['Jan','Fev','Mar','Abr','Mai','Jun',\n\t\t'Jul','Ago','Set','Out','Nov','Dez'],\n\t\tdayNames: ['Domingo','Segunda-feira','Ter&ccedil;a-feira','Quarta-feira','Quinta-feira','Sexta-feira','Sabado'],\n\t\tdayNamesShort: ['Dom','Seg','Ter','Qua','Qui','Sex','Sab'],\n\t\tdayNamesMin: ['Dom','Seg','Ter','Qua','Qui','Sex','Sab'],\n\t\tweekHeader: 'Sm',\n\t\tdateFormat: 'dd/mm/yy',\n\t\tfirstDay: 0,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['pt-BR']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-pt.js",
    "content": "/* Brazilian initialisation for the jQuery UI date picker plugin. */\n/* Written by Leonildo Costa Silva (leocsilva@gmail.com). */\njQuery(function($){\n\t$.datepicker.regional['pt-BR'] = {\n\t\tcloseText: 'Fechar',\n\t\tprevText: '&#x3c;Anterior',\n\t\tnextText: 'Pr&oacute;ximo&#x3e;',\n\t\tcurrentText: 'Hoje',\n\t\tmonthNames: ['Janeiro','Fevereiro','Mar&ccedil;o','Abril','Maio','Junho',\n\t\t'Julho','Agosto','Setembro','Outubro','Novembro','Dezembro'],\n\t\tmonthNamesShort: ['Jan','Fev','Mar','Abr','Mai','Jun',\n\t\t'Jul','Ago','Set','Out','Nov','Dez'],\n\t\tdayNames: ['Domingo','Segunda-feira','Ter&ccedil;a-feira','Quarta-feira','Quinta-feira','Sexta-feira','Sabado'],\n\t\tdayNamesShort: ['Dom','Seg','Ter','Qua','Qui','Sex','Sab'],\n\t\tdayNamesMin: ['Dom','Seg','Ter','Qua','Qui','Sex','Sab'],\n\t\tweekHeader: 'Sm',\n\t\tdateFormat: 'dd/mm/yy',\n\t\tfirstDay: 0,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['pt-BR']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-ro.js",
    "content": "﻿/* Romanian initialisation for the jQuery UI date picker plugin.\n *\n * Written by Edmond L. (ll_edmond@walla.com)\n * and Ionut G. Stan (ionut.g.stan@gmail.com)\n */\njQuery(function($){\n\t$.datepicker.regional['ro'] = {\n\t\tcloseText: 'Închide',\n\t\tprevText: '&laquo; Luna precedentă',\n\t\tnextText: 'Luna următoare &raquo;',\n\t\tcurrentText: 'Azi',\n\t\tmonthNames: ['Ianuarie','Februarie','Martie','Aprilie','Mai','Iunie',\n\t\t'Iulie','August','Septembrie','Octombrie','Noiembrie','Decembrie'],\n\t\tmonthNamesShort: ['Ian', 'Feb', 'Mar', 'Apr', 'Mai', 'Iun',\n\t\t'Iul', 'Aug', 'Sep', 'Oct', 'Noi', 'Dec'],\n\t\tdayNames: ['Duminică', 'Luni', 'Marţi', 'Miercuri', 'Joi', 'Vineri', 'Sâmbătă'],\n\t\tdayNamesShort: ['Dum', 'Lun', 'Mar', 'Mie', 'Joi', 'Vin', 'Sâm'],\n\t\tdayNamesMin: ['Du','Lu','Ma','Mi','Jo','Vi','Sâ'],\n\t\tweekHeader: 'Săpt',\n\t\tdateFormat: 'dd.mm.yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['ro']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-ru.js",
    "content": "/* Russian (UTF-8) initialisation for the jQuery UI date picker plugin. */\n/* Written by Andrew Stromnov (stromnov@gmail.com). */\njQuery(function($){\n\t$.datepicker.regional['ru'] = {\n\t\tcloseText: 'Закрыть',\n\t\tprevText: '&#x3c;Пред',\n\t\tnextText: 'След&#x3e;',\n\t\tcurrentText: 'Сегодня',\n\t\tmonthNames: ['Январь','Февраль','Март','Апрель','Май','Июнь',\n\t\t'Июль','Август','Сентябрь','Октябрь','Ноябрь','Декабрь'],\n\t\tmonthNamesShort: ['Янв','Фев','Мар','Апр','Май','Июн',\n\t\t'Июл','Авг','Сен','Окт','Ноя','Дек'],\n\t\tdayNames: ['воскресенье','понедельник','вторник','среда','четверг','пятница','суббота'],\n\t\tdayNamesShort: ['вск','пнд','втр','срд','чтв','птн','сбт'],\n\t\tdayNamesMin: ['Вс','Пн','Вт','Ср','Чт','Пт','Сб'],\n\t\tweekHeader: 'Не',\n\t\tdateFormat: 'dd.mm.yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['ru']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-sk.js",
    "content": "/* Slovak initialisation for the jQuery UI date picker plugin. */\n/* Written by Vojtech Rinik (vojto@hmm.sk). */\njQuery(function($){\n\t$.datepicker.regional['sk'] = {\n\t\tcloseText: 'Zavrieť',\n\t\tprevText: '&#x3c;Predchádzajúci',\n\t\tnextText: 'Nasledujúci&#x3e;',\n\t\tcurrentText: 'Dnes',\n\t\tmonthNames: ['Január','Február','Marec','Apríl','Máj','Jún',\n\t\t'Júl','August','September','Október','November','December'],\n\t\tmonthNamesShort: ['Jan','Feb','Mar','Apr','Máj','Jún',\n\t\t'Júl','Aug','Sep','Okt','Nov','Dec'],\n\t\tdayNames: ['Nedel\\'a','Pondelok','Utorok','Streda','Štvrtok','Piatok','Sobota'],\n\t\tdayNamesShort: ['Ned','Pon','Uto','Str','Štv','Pia','Sob'],\n\t\tdayNamesMin: ['Ne','Po','Ut','St','Št','Pia','So'],\n\t\tweekHeader: 'Ty',\n\t\tdateFormat: 'dd.mm.yy',\n\t\tfirstDay: 0,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['sk']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-sl.js",
    "content": "/* Slovenian initialisation for the jQuery UI date picker plugin. */\n/* Written by Jaka Jancar (jaka@kubje.org). */\n/* c = &#x10D;, s = &#x161; z = &#x17E; C = &#x10C; S = &#x160; Z = &#x17D; */\njQuery(function($){\n\t$.datepicker.regional['sl'] = {\n\t\tcloseText: 'Zapri',\n\t\tprevText: '&lt;Prej&#x161;nji',\n\t\tnextText: 'Naslednji&gt;',\n\t\tcurrentText: 'Trenutni',\n\t\tmonthNames: ['Januar','Februar','Marec','April','Maj','Junij',\n\t\t'Julij','Avgust','September','Oktober','November','December'],\n\t\tmonthNamesShort: ['Jan','Feb','Mar','Apr','Maj','Jun',\n\t\t'Jul','Avg','Sep','Okt','Nov','Dec'],\n\t\tdayNames: ['Nedelja','Ponedeljek','Torek','Sreda','&#x10C;etrtek','Petek','Sobota'],\n\t\tdayNamesShort: ['Ned','Pon','Tor','Sre','&#x10C;et','Pet','Sob'],\n\t\tdayNamesMin: ['Ne','Po','To','Sr','&#x10C;e','Pe','So'],\n\t\tweekHeader: 'Teden',\n\t\tdateFormat: 'dd.mm.yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['sl']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-sq.js",
    "content": "﻿/* Albanian initialisation for the jQuery UI date picker plugin. */\n/* Written by Flakron Bytyqi (flakron@gmail.com). */\njQuery(function($){\n\t$.datepicker.regional['sq'] = {\n\t\tcloseText: 'mbylle',\n\t\tprevText: '&#x3c;mbrapa',\n\t\tnextText: 'Përpara&#x3e;',\n\t\tcurrentText: 'sot',\n\t\tmonthNames: ['Janar','Shkurt','Mars','Prill','Maj','Qershor',\n\t\t'Korrik','Gusht','Shtator','Tetor','Nëntor','Dhjetor'],\n\t\tmonthNamesShort: ['Jan','Shk','Mar','Pri','Maj','Qer',\n\t\t'Kor','Gus','Sht','Tet','Nën','Dhj'],\n\t\tdayNames: ['E Diel','E Hënë','E Martë','E Mërkurë','E Enjte','E Premte','E Shtune'],\n\t\tdayNamesShort: ['Di','Hë','Ma','Më','En','Pr','Sh'],\n\t\tdayNamesMin: ['Di','Hë','Ma','Më','En','Pr','Sh'],\n\t\tweekHeader: 'Ja',\n\t\tdateFormat: 'dd.mm.yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['sq']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-sr-SR.js",
    "content": "﻿/* Serbian i18n for the jQuery UI date picker plugin. */\n/* Written by Dejan Dimić. */\njQuery(function($){\n\t$.datepicker.regional['sr-SR'] = {\n\t\tcloseText: 'Zatvori',\n\t\tprevText: '&#x3c;',\n\t\tnextText: '&#x3e;',\n\t\tcurrentText: 'Danas',\n\t\tmonthNames: ['Januar','Februar','Mart','April','Maj','Jun',\n\t\t'Jul','Avgust','Septembar','Oktobar','Novembar','Decembar'],\n\t\tmonthNamesShort: ['Jan','Feb','Mar','Apr','Maj','Jun',\n\t\t'Jul','Avg','Sep','Okt','Nov','Dec'],\n\t\tdayNames: ['Nedelja','Ponedeljak','Utorak','Sreda','Četvrtak','Petak','Subota'],\n\t\tdayNamesShort: ['Ned','Pon','Uto','Sre','Čet','Pet','Sub'],\n\t\tdayNamesMin: ['Ne','Po','Ut','Sr','Če','Pe','Su'],\n\t\tweekHeader: 'Sed',\n\t\tdateFormat: 'dd/mm/yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['sr-SR']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-sr.js",
    "content": "﻿/* Serbian i18n for the jQuery UI date picker plugin. */\n/* Written by Dejan Dimić. */\njQuery(function($){\n\t$.datepicker.regional['sr'] = {\n\t\tcloseText: 'Затвори',\n\t\tprevText: '&#x3c;',\n\t\tnextText: '&#x3e;',\n\t\tcurrentText: 'Данас',\n\t\tmonthNames: ['Јануар','Фебруар','Март','Април','Мај','Јун',\n\t\t'Јул','Август','Септембар','Октобар','Новембар','Децембар'],\n\t\tmonthNamesShort: ['Јан','Феб','Мар','Апр','Мај','Јун',\n\t\t'Јул','Авг','Сеп','Окт','Нов','Дец'],\n\t\tdayNames: ['Недеља','Понедељак','Уторак','Среда','Четвртак','Петак','Субота'],\n\t\tdayNamesShort: ['Нед','Пон','Уто','Сре','Чет','Пет','Суб'],\n\t\tdayNamesMin: ['Не','По','Ут','Ср','Че','Пе','Су'],\n\t\tweekHeader: 'Сед',\n\t\tdateFormat: 'dd/mm/yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['sr']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-sv.js",
    "content": "﻿/* Swedish initialisation for the jQuery UI date picker plugin. */\n/* Written by Anders Ekdahl ( anders@nomadiz.se). */\njQuery(function($){\n    $.datepicker.regional['sv'] = {\n\t\tcloseText: 'Stäng',\n        prevText: '&laquo;Förra',\n\t\tnextText: 'Nästa&raquo;',\n\t\tcurrentText: 'Idag',\n        monthNames: ['Januari','Februari','Mars','April','Maj','Juni',\n        'Juli','Augusti','September','Oktober','November','December'],\n        monthNamesShort: ['Jan','Feb','Mar','Apr','Maj','Jun',\n        'Jul','Aug','Sep','Okt','Nov','Dec'],\n\t\tdayNamesShort: ['Sön','Mån','Tis','Ons','Tor','Fre','Lör'],\n\t\tdayNames: ['Söndag','Måndag','Tisdag','Onsdag','Torsdag','Fredag','Lördag'],\n\t\tdayNamesMin: ['Sö','Må','Ti','On','To','Fr','Lö'],\n\t\tweekHeader: 'Ve',\n        dateFormat: 'yy-mm-dd',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n    $.datepicker.setDefaults($.datepicker.regional['sv']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-ta.js",
    "content": "﻿/* Tamil (UTF-8) initialisation for the jQuery UI date picker plugin. */\n/* Written by S A Sureshkumar (saskumar@live.com). */\njQuery(function($){\n\t$.datepicker.regional['ta'] = {\n\t\tcloseText: 'மூடு',\n\t\tprevText: 'முன்னையது',\n\t\tnextText: 'அடுத்தது',\n\t\tcurrentText: 'இன்று',\n\t\tmonthNames: ['தை','மாசி','பங்குனி','சித்திரை','வைகாசி','ஆனி',\n\t\t'ஆடி','ஆவணி','புரட்டாசி','ஐப்பசி','கார்த்திகை','மார்கழி'],\n\t\tmonthNamesShort: ['தை','மாசி','பங்','சித்','வைகா','ஆனி',\n\t\t'ஆடி','ஆவ','புர','ஐப்','கார்','மார்'],\n\t\tdayNames: ['ஞாயிற்றுக்கிழமை','திங்கட்கிழமை','செவ்வாய்க்கிழமை','புதன்கிழமை','வியாழக்கிழமை','வெள்ளிக்கிழமை','சனிக்கிழமை'],\n\t\tdayNamesShort: ['ஞாயிறு','திங்கள்','செவ்வாய்','புதன்','வியாழன்','வெள்ளி','சனி'],\n\t\tdayNamesMin: ['ஞா','தி','செ','பு','வி','வெ','ச'],\n\t\tweekHeader: 'Не',\n\t\tdateFormat: 'dd/mm/yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['ta']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-th.js",
    "content": "﻿/* Thai initialisation for the jQuery UI date picker plugin. */\n/* Written by pipo (pipo@sixhead.com). */\njQuery(function($){\n\t$.datepicker.regional['th'] = {\n\t\tcloseText: 'ปิด',\n\t\tprevText: '&laquo;&nbsp;ย้อน',\n\t\tnextText: 'ถัดไป&nbsp;&raquo;',\n\t\tcurrentText: 'วันนี้',\n\t\tmonthNames: ['มกราคม','กุมภาพันธ์','มีนาคม','เมษายน','พฤษภาคม','มิถุนายน',\n\t\t'กรกฏาคม','สิงหาคม','กันยายน','ตุลาคม','พฤศจิกายน','ธันวาคม'],\n\t\tmonthNamesShort: ['ม.ค.','ก.พ.','มี.ค.','เม.ย.','พ.ค.','มิ.ย.',\n\t\t'ก.ค.','ส.ค.','ก.ย.','ต.ค.','พ.ย.','ธ.ค.'],\n\t\tdayNames: ['อาทิตย์','จันทร์','อังคาร','พุธ','พฤหัสบดี','ศุกร์','เสาร์'],\n\t\tdayNamesShort: ['อา.','จ.','อ.','พ.','พฤ.','ศ.','ส.'],\n\t\tdayNamesMin: ['อา.','จ.','อ.','พ.','พฤ.','ศ.','ส.'],\n\t\tweekHeader: 'Wk',\n\t\tdateFormat: 'dd/mm/yy',\n\t\tfirstDay: 0,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['th']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-tr.js",
    "content": "/* Turkish initialisation for the jQuery UI date picker plugin. */\n/* Written by Izzet Emre Erkan (kara@karalamalar.net). */\njQuery(function($){\n\t$.datepicker.regional['tr'] = {\n\t\tcloseText: 'kapat',\n\t\tprevText: '&#x3c;geri',\n\t\tnextText: 'ileri&#x3e',\n\t\tcurrentText: 'bugün',\n\t\tmonthNames: ['Ocak','Şubat','Mart','Nisan','Mayıs','Haziran',\n\t\t'Temmuz','Ağustos','Eylül','Ekim','Kasım','Aralık'],\n\t\tmonthNamesShort: ['Oca','Şub','Mar','Nis','May','Haz',\n\t\t'Tem','Ağu','Eyl','Eki','Kas','Ara'],\n\t\tdayNames: ['Pazar','Pazartesi','Salı','Çarşamba','Perşembe','Cuma','Cumartesi'],\n\t\tdayNamesShort: ['Pz','Pt','Sa','Ça','Pe','Cu','Ct'],\n\t\tdayNamesMin: ['Pz','Pt','Sa','Ça','Pe','Cu','Ct'],\n\t\tweekHeader: 'Hf',\n\t\tdateFormat: 'dd.mm.yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['tr']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-uk.js",
    "content": "/* Ukrainian (UTF-8) initialisation for the jQuery UI date picker plugin. */\n/* Written by Maxim Drogobitskiy (maxdao@gmail.com). */\njQuery(function($){\n\t$.datepicker.regional['uk'] = {\n\t\tcloseText: 'Закрити',\n\t\tprevText: '&#x3c;',\n\t\tnextText: '&#x3e;',\n\t\tcurrentText: 'Сьогодні',\n\t\tmonthNames: ['Січень','Лютий','Березень','Квітень','Травень','Червень',\n\t\t'Липень','Серпень','Вересень','Жовтень','Листопад','Грудень'],\n\t\tmonthNamesShort: ['Січ','Лют','Бер','Кві','Тра','Чер',\n\t\t'Лип','Сер','Вер','Жов','Лис','Гру'],\n\t\tdayNames: ['неділя','понеділок','вівторок','середа','четвер','п’ятниця','субота'],\n\t\tdayNamesShort: ['нед','пнд','вів','срд','чтв','птн','сбт'],\n\t\tdayNamesMin: ['Нд','Пн','Вт','Ср','Чт','Пт','Сб'],\n\t\tweekHeader: 'Не',\n\t\tdateFormat: 'dd/mm/yy',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['uk']);\n});"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-vi.js",
    "content": "﻿/* Vietnamese initialisation for the jQuery UI date picker plugin. */\n/* Translated by Le Thanh Huy (lthanhhuy@cit.ctu.edu.vn). */\njQuery(function($){\n\t$.datepicker.regional['vi'] = {\n\t\tcloseText: 'Đóng',\n\t\tprevText: '&#x3c;Trước',\n\t\tnextText: 'Tiếp&#x3e;',\n\t\tcurrentText: 'Hôm nay',\n\t\tmonthNames: ['Tháng Một', 'Tháng Hai', 'Tháng Ba', 'Tháng Tư', 'Tháng Năm', 'Tháng Sáu',\n\t\t'Tháng Bảy', 'Tháng Tám', 'Tháng Chín', 'Tháng Mười', 'Tháng Mười Một', 'Tháng Mười Hai'],\n\t\tmonthNamesShort: ['Tháng 1', 'Tháng 2', 'Tháng 3', 'Tháng 4', 'Tháng 5', 'Tháng 6',\n\t\t'Tháng 7', 'Tháng 8', 'Tháng 9', 'Tháng 10', 'Tháng 11', 'Tháng 12'],\n\t\tdayNames: ['Chủ Nhật', 'Thứ Hai', 'Thứ Ba', 'Thứ Tư', 'Thứ Năm', 'Thứ Sáu', 'Thứ Bảy'],\n\t\tdayNamesShort: ['CN', 'T2', 'T3', 'T4', 'T5', 'T6', 'T7'],\n\t\tdayNamesMin: ['CN', 'T2', 'T3', 'T4', 'T5', 'T6', 'T7'],\n\t\tweekHeader: 'Tu',\n\t\tdateFormat: 'dd/mm/yy',\n\t\tfirstDay: 0,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: false,\n\t\tyearSuffix: ''};\n\t$.datepicker.setDefaults($.datepicker.regional['vi']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-zh-CN.js",
    "content": "/* Chinese initialisation for the jQuery UI date picker plugin. */\n/* Written by Cloudream (cloudream@gmail.com). */\njQuery(function($){\n\t$.datepicker.regional['zh-CN'] = {\n\t\tcloseText: '关闭',\n\t\tprevText: '&#x3c;上月',\n\t\tnextText: '下月&#x3e;',\n\t\tcurrentText: '今天',\n\t\tmonthNames: ['一月','二月','三月','四月','五月','六月',\n\t\t'七月','八月','九月','十月','十一月','十二月'],\n\t\tmonthNamesShort: ['一','二','三','四','五','六',\n\t\t'七','八','九','十','十一','十二'],\n\t\tdayNames: ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'],\n\t\tdayNamesShort: ['周日','周一','周二','周三','周四','周五','周六'],\n\t\tdayNamesMin: ['日','一','二','三','四','五','六'],\n\t\tweekHeader: '周',\n\t\tdateFormat: 'yy-mm-dd',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: true,\n\t\tyearSuffix: '年'};\n\t$.datepicker.setDefaults($.datepicker.regional['zh-CN']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-zh-HK.js",
    "content": "/* Chinese initialisation for the jQuery UI date picker plugin. */\n/* Written by SCCY (samuelcychan@gmail.com). */\njQuery(function($){\n\t$.datepicker.regional['zh-HK'] = {\n\t\tcloseText: '關閉',\n\t\tprevText: '&#x3c;上月',\n\t\tnextText: '下月&#x3e;',\n\t\tcurrentText: '今天',\n\t\tmonthNames: ['一月','二月','三月','四月','五月','六月',\n\t\t'七月','八月','九月','十月','十一月','十二月'],\n\t\tmonthNamesShort: ['一','二','三','四','五','六',\n\t\t'七','八','九','十','十一','十二'],\n\t\tdayNames: ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'],\n\t\tdayNamesShort: ['周日','周一','周二','周三','周四','周五','周六'],\n\t\tdayNamesMin: ['日','一','二','三','四','五','六'],\n\t\tweekHeader: '周',\n\t\tdateFormat: 'dd-mm-yy',\n\t\tfirstDay: 0,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: true,\n\t\tyearSuffix: '年'};\n\t$.datepicker.setDefaults($.datepicker.regional['zh-HK']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/i18n/jquery.ui.datepicker-zh-TW.js",
    "content": "﻿/* Chinese initialisation for the jQuery UI date picker plugin. */\n/* Written by Ressol (ressol@gmail.com). */\njQuery(function($){\n\t$.datepicker.regional['zh-TW'] = {\n\t\tcloseText: '關閉',\n\t\tprevText: '&#x3c;上月',\n\t\tnextText: '下月&#x3e;',\n\t\tcurrentText: '今天',\n\t\tmonthNames: ['一月','二月','三月','四月','五月','六月',\n\t\t'七月','八月','九月','十月','十一月','十二月'],\n\t\tmonthNamesShort: ['一','二','三','四','五','六',\n\t\t'七','八','九','十','十一','十二'],\n\t\tdayNames: ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'],\n\t\tdayNamesShort: ['周日','周一','周二','周三','周四','周五','周六'],\n\t\tdayNamesMin: ['日','一','二','三','四','五','六'],\n\t\tweekHeader: '周',\n\t\tdateFormat: 'yy/mm/dd',\n\t\tfirstDay: 1,\n\t\tisRTL: false,\n\t\tshowMonthAfterYear: true,\n\t\tyearSuffix: '年'};\n\t$.datepicker.setDefaults($.datepicker.regional['zh-TW']);\n});\n"
  },
  {
    "path": "newscoop/js/jquery/jCountable/jquery.jCountable.css",
    "content": ".j-countable {\n    font-size: 12px;\n    color: #999999;\n    text-align: right;\n    text-shadow: 1px 1px 2px #CCCCCC;\n}\n\n.j-countable.warn {\n    color: #5C0002;\n}\n\n.j-countable.error {\n    color: #D40D12;\n}\n\n.rt { display: inline; vertical-align: bottom; margin-left: 15px; }\n\n.ft { float: left; }\n"
  },
  {
    "path": "newscoop/js/jquery/jCountable/jquery.jCountable.js",
    "content": "/*\n * jCountable - jQuery Plugin\n * Simple countable areas for jquery\n *\n * \n * Author: Nistor Mihai\n * \n * Version: 1.0 (10/03/2011)\n * Requires: jQuery v1.3+\n*/\n(function ($) {\n    $.fn.extend({\n        //plugin name - jCountable\n        jCountable: function (options) {\n            var defaults = {\n                errorLength: 140,\n                warnLength: '80%',\n                message: {\n                    value: '',\n                    container: false,\n                    hasParent: {\n                        width: true,\n                        height: false\n                    },\n                    showMaximum: true,\n                    separator: '/',\n                    className: 'j-countable',\n                    classNames: {\n                        message: 'message',\n                        warn: 'warn',\n                        error: 'error'\n                    },\n                    blur: ['fadeTo', ['fast', 0]],\n                    focus: ['fadeTo', ['fast', 1]]\n                },\n                overflow: false\n            };\n            var options = $.extend(true, defaults, options);\n            // allow jQuery chaining\n            return this.each(function () {\n                var opt = options.message;\n                var obj = $(this);\n                // if a maxlength attribute is set then this has priority no.1\n                var errorLength = options.errorLength;\n                if ((obj.attr('maxlength')>0) && (obj.attr('maxlength')<524288) ) errorLength = parseInt(obj.attr('maxlength'));\n                // calculate warnLength by procentual if a procent % sign is found\n                var warnLength = (options.warnLength + '').indexOf('%') + 1 ? parseInt(options.warnLength) * errorLength / 100 : options.warnLength;\n                warnLength = parseInt(warnLength);\n\n                var messageContainer = opt.container;\n                if (!messageContainer)  {\n                \tmessageContainer = $('<div class=\"' + opt.className + '\"></div>');\n                \tobj.after(messageContainer);\n                }\n                if (opt.hasParent.width) messageContainer.width(obj.width());\n                if (opt.hasParent.height) messageContainer.height(obj.height());\n                isTextArea = obj.get(0).tagName.toUpperCase() == 'TEXTAREA';\n\n                function count(event) {\n                    var length = obj.val().length;\n                    var\n                    isOverflow = (length > errorLength + 1),\n                        isError = (length >= errorLength),\n                        isWarn = (length >= warnLength);\n                    //scroll to the last position\n                    if (isOverflow && !options.overflow && isTextArea) {\n                        var lastTop = obj.scrollTop();\n                        obj.val(obj.val().substring(0, errorLength));\n                        obj.scrollTop(lastTop);\n                    }\n                    //toggle warn class is warn but not error\n                    messageContainer.toggleClass(opt.classNames.warn, isWarn && !isError);\n                    //toggle error class is error\n                    messageContainer.toggleClass(opt.classNames.error, isError);\n                    messageContainer.html(opt.value + (opt.showMaximum ? length : errorLength - length) + (opt.showMaximum ? opt.separator + errorLength : ''));\n                }\n                obj.bind('keydown keyup keypress', count).bind('focus paste', function () {\n                    messageContainer[opt.focus[0]].apply(messageContainer, opt.focus[1]);\n                    setTimeout(count, 1);\n                }).bind('blur', function () {\n                    messageContainer[opt.blur[0]].apply(messageContainer, opt.blur[1]);\n                    return false;\n                });\n            });\n        }\n    });\n})(jQuery);"
  },
  {
    "path": "newscoop/js/jquery/jquery-ui-required.txt",
    "content": "# list of required jqueryui components\n# theme: Redmond\nDatepicker\nTabs\nDialog\nAccordion\nAutocomplete\nButton\nSortable\nDraggable\nDroppable\nSelectable\nResizable\nSlider\n"
  },
  {
    "path": "newscoop/js/jquery/jquery.ba-iff.js",
    "content": "/*!\n * iff - v0.2 - 6/3/2009\n * http://benalman.com/projects/jquery-iff-plugin/\n *\n * Copyright (c) 2009 \"Cowboy\" Ben Alman\n * Licensed under the MIT license\n * http://benalman.com/about/license/\n */\n\n(function($){\n    '$:nomunge'; // Used by YUI compressor.\n\n    $.fn.iff = function( test ) {\n        var failed = !test || $.isFunction( test)\n                && !test.apply( this, Array.prototype.slice.call(arguments, 1) ),\n            $new = this.pushStack( failed ? [] : this, 'iff', [test] );\n\n        $new.els = function() {\n            return this.end().pushStack(\n                failed ? this.prevObject : [],\n                this.selector.substr(this.prevObject.selector.length + 1) + '.else',\n                []\n            );\n        };\n\n        return $new;\n    };\n\n    $.fn.els = function() { return this; };\n\n})(jQuery);"
  },
  {
    "path": "newscoop/js/jquery/jquery.cookie.js",
    "content": "/*jslint browser: true */ /*global jQuery: true */\n\n/**\n * jQuery Cookie plugin\n *\n * Copyright (c) 2010 Klaus Hartl (stilbuero.de)\n * Dual licensed under the MIT and GPL licenses:\n * http://www.opensource.org/licenses/mit-license.php\n * http://www.gnu.org/licenses/gpl.html\n *\n */\n\n// TODO JsDoc\n\n/**\n * Create a cookie with the given key and value and other optional parameters.\n *\n * @example $.cookie('the_cookie', 'the_value');\n * @desc Set the value of a cookie.\n * @example $.cookie('the_cookie', 'the_value', { expires: 7, path: '/', domain: 'jquery.com', secure: true });\n * @desc Create a cookie with all available options.\n * @example $.cookie('the_cookie', 'the_value');\n * @desc Create a session cookie.\n * @example $.cookie('the_cookie', null);\n * @desc Delete a cookie by passing null as value. Keep in mind that you have to use the same path and domain\n *       used when the cookie was set.\n *\n * @param String key The key of the cookie.\n * @param String value The value of the cookie.\n * @param Object options An object literal containing key/value pairs to provide optional cookie attributes.\n * @option Number|Date expires Either an integer specifying the expiration date from now on in days or a Date object.\n *                             If a negative value is specified (e.g. a date in the past), the cookie will be deleted.\n *                             If set to null or omitted, the cookie will be a session cookie and will not be retained\n *                             when the the browser exits.\n * @option String path The value of the path atribute of the cookie (default: path of page that created the cookie).\n * @option String domain The value of the domain attribute of the cookie (default: domain of page that created the cookie).\n * @option Boolean secure If true, the secure attribute of the cookie will be set and the cookie transmission will\n *                        require a secure protocol (like HTTPS).\n * @type undefined\n *\n * @name $.cookie\n * @cat Plugins/Cookie\n * @author Klaus Hartl/klaus.hartl@stilbuero.de\n */\n\n/**\n * Get the value of a cookie with the given key.\n *\n * @example $.cookie('the_cookie');\n * @desc Get the value of a cookie.\n *\n * @param String key The key of the cookie.\n * @return The value of the cookie.\n * @type String\n *\n * @name $.cookie\n * @cat Plugins/Cookie\n * @author Klaus Hartl/klaus.hartl@stilbuero.de\n */\njQuery.cookie = function (key, value, options) {\n\n    // key and value given, set cookie...\n    if (arguments.length > 1 && (value === null || typeof value !== \"object\")) {\n        options = jQuery.extend({}, options);\n\n        if (value === null) {\n            options.expires = -1;\n        }\n\n        if (typeof options.expires === 'number') {\n            var days = options.expires, t = options.expires = new Date();\n            t.setDate(t.getDate() + days);\n        }\n\n        return (document.cookie = [\n            encodeURIComponent(key), '=',\n            options.raw ? String(value) : encodeURIComponent(String(value)),\n            options.expires ? '; expires=' + options.expires.toUTCString() : '', // use expires attribute, max-age is not supported by IE\n            options.path ? '; path=' + options.path : '',\n            options.domain ? '; domain=' + options.domain : '',\n            options.secure ? '; secure' : ''\n        ].join(''));\n    }\n\n    // key and possibly options given, get cookie...\n    options = value || {};\n    var result, decode = options.raw ? function (s) { return s; } : decodeURIComponent;\n    return (result = new RegExp('(?:^|; )' + encodeURIComponent(key) + '=([^;]*)').exec(document.cookie)) ? decode(result[1]) : null;\n};\n"
  },
  {
    "path": "newscoop/js/jquery/jquery.tmpl.js",
    "content": "/**\n * originally designed by Laura Doktorova in 2011, undet the name of doT.js - https://github.com/olado/doT\n */\n(function()\n{\n    var doT =\n    {\n        version : '0.1'\n    };\n\n    if( typeof module !== 'undefined' && module.exports )\n        module.exports = doT;\n    else\n        this.doT = doT;\n\n    doT.templateSettings =\n    {\n        encode      : /\\{\\{!([\\s\\S]+?)\\}\\}/g,\n        defines     : /\\{\\{#([\\s\\S]+?)\\}\\}/g,\n        evaluate    : /\\{\\%([\\s\\S]+?)\\%\\}/g,\n        interpolate : /\\{\\{([\\s\\S]+?)\\}\\}/g,\n        ends        : /(endfor|endif|enblock)/g,\n        varname     : 'it',\n        strip       : true\n    };\n\n    doT.template = function(tmpl, c, defs)\n    {\n        c = c || doT.templateSettings;\n        var str = (\"with(\"\n                + c.varname\n                + \"){var out='\"\n                + //\n                ((c.strip) ? tmpl.replace( /\\s*<!\\[CDATA\\[\\s*|\\s*\\]\\]>\\s*|[\\r\\n\\t]|(\\/\\*[\\s\\S]*?\\*\\/)/g, '' )\n                        : tmpl)\n                        .replace(c.defines, function(match, code)\n                        {\n                            return eval(code.replace(/[\\r\\t\\n]/g, ' '));\n                        })\n                        .replace(/\\\\/g, '\\\\\\\\')\n                        .replace(/'/g, \"\\\\'\")\n                        .replace(\n                                c.interpolate,\n                                function(match, code)\n                                {\n                                    return \"';out+=\"\n                                            + code.replace(/\\\\'/g, \"'\")\n                                                    .replace(/\\\\\\\\/g, \"\\\\\")\n                                                    .replace(/[\\r\\t\\n]/g, ' ')\n                                            + \";out+='\";\n                                })\n                        .replace(\n                                c.encode,\n                                function(match, code)\n                                {\n                                    return \"';out+=(\"\n                                            + code.replace(/\\\\'/g, \"'\")\n                                                    .replace(/\\\\\\\\/g, \"\\\\\")\n                                                    .replace(/[\\r\\t\\n]/g, ' ')\n                                            + \").toString().replace(/&(?!\\\\w+;)/g, '&#38;').split('<').join('&#60;').split('>').join('&#62;').split('\"\n                                            + '\"'\n                                            + \"').join('&#34;').split(\"\n                                            + '\"'\n                                            + \"'\"\n                                            + '\"'\n                                            + \").join('&#39;').split('/').join('&#x2F;');out+='\";\n                                })\n                        .replace(\n                                c.evaluate,\n                                function(match, code)\n                                {\n                                    return \"';\"\n                                            + code.replace(c.ends, '}')\n                                                    .replace(/\\\\'/g, \"'\")\n                                                    .replace(/\\\\\\\\/g, \"\\\\\")\n                                                    .replace(/[\\r\\t\\n]/g,\n                                                            ' ') +(c.ends.test(code)?\"\":\"{\") +\"out+='\";\n                                }) + \"';return out;}\").replace(/\\n/g, '\\\\n')\n                .replace(/\\t/g, '\\\\t').replace(/\\r/g, '\\\\r').split(\"out+='';\")\n                .join('').split('var out=\"\";out+=').join('var out=');\n        try\n        {\n            return new Function( c.varname, str );\n        } \n        catch (e)\n        {\n            if (typeof console !== 'undefined')\n                console.error( \"Could not create a template function: \" + str );\n            throw e;\n        }\n    };\n}());\n\n(function($)\n{\n    $.fn.extend\n    ({      \n        tmpl : function( selector, data )\n        {\n        \treturn this.each( function() \n        \t{ \n        \t\tthis.innerHTML = $.tmpl( selector, data );\n        \t});  \n        }\n    });\n    $.extend\n    ({\n        tmplData: [],\n        tmpl : function( tmpl, data )\n        {\n        \tif( 'function' != typeof $.tmplData[tmpl] )\n        \t\t$.tmplData[tmpl] = doT.template( $(tmpl).html() )\n            return $.tmplData[tmpl](data);\n        }\n    });\n})(jQuery);"
  },
  {
    "path": "newscoop/js/jquery/jquery.version.js",
    "content": "(function($)\n{\n    function versionNumber(version){\n        version = parseInt(version.replace(/\\./g,''));\n        version = version>999? version : version*10;\n        return version;\n    }\n    $.extend\n    ({\n        versionCurrent: versionNumber( $.fn.jquery ),\n        versionBetween: function(less, greater)\n        {\n          var between = less? $.versionCurrent>versionNumber(less): true;\n          between = between && (greater? $.versionCurrent<versionNumber(greater): true);\n          return between;\n        }\n    });\n})(jQuery);"
  },
  {
    "path": "newscoop/js/jquery/jquery.widgets.js",
    "content": "(function ( $ ) {\r\n\r\n/**\r\n * Widgets plugin for JQuery\r\n */\r\n$.fn.widgets = function (options) {\r\n    var contexts = this;\r\n    var settings = {\r\n        widgets: '> .widget',\r\n        controls: '> .header',\r\n        localizer: {}\r\n    };\r\n\r\n    var heights = {};\r\n\r\n    /**\r\n     * Update widgets order.\r\n     * @return void\r\n     */\r\n    var updateOrder = function()\r\n    {\r\n        contexts.each(function() {\r\n            var context = $(this).attr('id');\r\n            callServer(['WidgetContext', 'setWidgets'], [\r\n                context,\r\n                $(this).sortable('toArray')\r\n            ]);\r\n        });\r\n\r\n    };\r\n\r\n    /**\r\n     * Widgets plugin init\r\n     * @return JQuery\r\n     */\r\n    return this.each(function(i) {\r\n        if (options) {\r\n            $.extend(settings, options)\r\n        }\r\n\r\n        // set up items\r\n        $(this).find(settings.widgets).each(function(i) {\r\n            var widget = $(this);\r\n            var controls = $(settings.controls, widget);\r\n            var meta = $('dl.meta', widget);\r\n\r\n            // add min/max button\r\n            $('<a class=\"info ui-corner-all\" href=\"#\"><span class=\"ui-icon ui-icon-arrow-4-diag\">' + settings.localizer.maximize + '</span></a>')\r\n                .prependTo(controls)\r\n                .click(function() {\r\n                    var dashboard = widget.closest('#dashboard');\r\n                    var columns = $('.column', dashboard);\r\n\r\n                    // destroy widget content\r\n                    $('> .content .scroll *', widget).detach();\r\n\r\n                    var full = widget.clone()\r\n                        .hide()\r\n                        .appendTo(dashboard)\r\n                        .css('list-style-type', 'none')\r\n                        .css('width', (dashboard.width() - 14) + 'px')\r\n                        .css('float', 'left')\r\n                        .css('margin-top', '13px');\r\n\r\n                    // hide columns\r\n                    columns.hide();\r\n\r\n                    // close button\r\n                    $('a.close', full).click(function() {\r\n                        columns.show();\r\n                        full.detach();\r\n                        $('> .content .scroll', widget).html('<p>Loading..</p>');\r\n                        callServer(['WidgetRendererDecorator', 'render'], [\r\n                            widget.attr('id'),\r\n                            '',\r\n                            true\r\n                            ], function(json) {\r\n                                $('> .content > .scroll', widget).html(json);\r\n                            });\r\n                        return false;\r\n                    });\r\n\r\n                    // change icon\r\n                    $('a.close span', full)\r\n                        .removeClass('ui-icon-arrow-4-diag')\r\n                        .addClass('ui-icon-closethick');\r\n\r\n                    // hide other buttons\r\n                    $('a.info, a.minmax, a.settings', full).detach();\r\n\r\n                    // normal cursor\r\n                    $(settings.controls, full).css('cursor', 'auto');\r\n\r\n                    // load content\r\n                    full.show();\r\n                    $('> .content .scroll', full).html('<p>Loading..</p>');\r\n                    callServer(['WidgetRendererDecorator', 'render'], [\r\n                        widget.attr('id'),\r\n                        'fullscreen',\r\n                        true\r\n                        ], function(json) {\r\n                            $('> .content > .scroll', full).html(json);\r\n                        });\r\n                    \r\n                    return false;\r\n                });\r\n\r\n            $('form.settings', widget).each(function() {\r\n\r\n            // add settings button\r\n            $('<a class=\"info ui-corner-all\" href=\"#\"><span class=\"ui-icon ui-icon-wrench\">' + settings.localizer.settings + '</span></a>')\r\n                .prependTo(controls)\r\n                .click(function() {\r\n                    $('.settings fieldset', widget).toggle();\r\n                    $('.scroll', widget).css('min-height', $('.extra', widget).height() + 'px');\r\n                    return false;\r\n                });\r\n\r\n            // hide form on init\r\n            $('.settings fieldset').hide();\r\n\r\n            // ajax submit\r\n            $('form.settings', widget).submit(function() {\r\n                var fieldset = $('fieldset', $(this));\r\n                var settings = {};\r\n                $('input:text', $(this)).each(function() {\r\n                    settings[$(this).attr('name')] = $(this).val();\r\n                });\r\n                callServer(['WidgetManagerDecorator', 'update'], [\r\n                    widget.attr('id'),\r\n                    {'settings': settings}\r\n                    ], function(json) {\r\n                    // reload content\r\n                    callServer(['WidgetRendererDecorator', 'render'], [\r\n                        widget.attr('id'),\r\n                        widget.closest('.context').attr('id'),\r\n                        true\r\n                        ], function(json) {\r\n                            $('> .content > .scroll', widget).html(json);\r\n                            fieldset.fadeOut();\r\n                    });\r\n\r\n                    // reload title if needed\r\n                    if (settings['title']) {\r\n                        callServer(['WidgetManagerDecorator', 'getSetting'], [\r\n                            widget.attr('id'),\r\n                            'title'\r\n                            ], function(json) {\r\n                                $('> .header h3', widget).text(json);\r\n                        });\r\n                    }\r\n                });\r\n                return false;\r\n            });\r\n\r\n            }); // /form.settings\r\n\r\n            // add info button\r\n            $('<a class=\"info ui-corner-all\" href=\"#\"><span class=\"ui-icon ui-icon-info\">' + settings.localizer.info + '</span></a>')\r\n                .prependTo(controls)\r\n                .click(function() {\r\n                    meta.toggle();\r\n                    $('.scroll', widget).css('min-height', $('.extra', widget).height() + 'px');\r\n                    return false;\r\n                });\r\n            meta.hide().click(function() {\r\n                $(this).hide();\r\n                $('.scroll', widget).css('min-height', $('.extra', widget).height() + 'px');\r\n            });\r\n\r\n            // add close button\r\n            $('<a class=\"close ui-corner-all\" href=\"#\"><span class=\"ui-icon ui-icon-closethick\">' + settings.localizer.remove + '</span></a>')\r\n                .prependTo(controls)\r\n                .click(function() {\r\n                    callServer(['WidgetManagerDecorator', 'delete'], [\r\n                        widget.attr('id')\r\n                        ], function(json) {\r\n                            widget.hide(500, function() {\r\n                                $(this).detach();\r\n                            })\r\n                        });\r\n                    return false;\r\n                });\r\n\r\n            // add move cursor\r\n            controls.css('cursor', 'move');\r\n\r\n            // add ui hover class\r\n            $('span.ui-icon').hover(function() {\r\n                $(this).closest('a').addClass('ui-state-hover');\r\n            }, function() {\r\n                $(this).closest('a').removeClass('ui-state-hover');\r\n            });\r\n\r\n            // load content\r\n            callServer(['WidgetRendererDecorator', 'render'], [\r\n                widget.attr('id'),\r\n                'default',\r\n                true], function(json) {\r\n                    // set new content\r\n                    var wrapper = $('> .content > .scroll', widget).html(json);\r\n                    heights[widget.attr('id')] = wrapper.height();\r\n                });\r\n\r\n            $(this).ajaxComplete(function() {\r\n                $.cookie('widget_heights', $.param(heights));\r\n            });\r\n        });\r\n\r\n        // make sortable\r\n        $(this).sortable({\r\n            connectWith: contexts,\r\n            placeholder: 'widget-placeholder',\r\n            handle: '.header',\r\n            forcePlaceholderSize: true,\r\n            opacity: 0.8,\r\n            helper: function(event, original) {\r\n                return $('<div />').addClass(\"helper\")\r\n                    .css('height', original.height()+'px')\r\n                    .css('background-color', '#fff')\r\n                    .appendTo($('body'));\r\n            },\r\n            stop: function(event, ui) {\r\n                // reload content\r\n                callServer(['WidgetRendererDecorator', 'render'], [\r\n                    ui.item.attr('id'),\r\n                    'default',\r\n                    true\r\n                    ], function(json) {\r\n                        $('> .content > .scroll', ui.item).html(json);\r\n                    });\r\n                updateOrder();\r\n            }\r\n        }).css({\r\n            minHeight: '40px'\r\n        });\r\n    });\r\n};\r\n\r\n})( jQuery );\r\n"
  },
  {
    "path": "newscoop/js/json2.js",
    "content": "/*\n    http://www.JSON.org/json2.js\n    2010-03-20\n\n    Public Domain.\n\n    NO WARRANTY EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK.\n\n    See http://www.JSON.org/js.html\n\n\n    This code should be minified before deployment.\n    See http://javascript.crockford.com/jsmin.html\n\n    USE YOUR OWN COPY. IT IS EXTREMELY UNWISE TO LOAD CODE FROM SERVERS YOU DO\n    NOT CONTROL.\n\n\n    This file creates a global JSON object containing two methods: stringify\n    and parse.\n\n        JSON.stringify(value, replacer, space)\n            value       any JavaScript value, usually an object or array.\n\n            replacer    an optional parameter that determines how object\n                        values are stringified for objects. It can be a\n                        function or an array of strings.\n\n            space       an optional parameter that specifies the indentation\n                        of nested structures. If it is omitted, the text will\n                        be packed without extra whitespace. If it is a number,\n                        it will specify the number of spaces to indent at each\n                        level. If it is a string (such as '\\t' or '&nbsp;'),\n                        it contains the characters used to indent at each level.\n\n            This method produces a JSON text from a JavaScript value.\n\n            When an object value is found, if the object contains a toJSON\n            method, its toJSON method will be called and the result will be\n            stringified. A toJSON method does not serialize: it returns the\n            value represented by the name/value pair that should be serialized,\n            or undefined if nothing should be serialized. The toJSON method\n            will be passed the key associated with the value, and this will be\n            bound to the value\n\n            For example, this would serialize Dates as ISO strings.\n\n                Date.prototype.toJSON = function (key) {\n                    function f(n) {\n                        // Format integers to have at least two digits.\n                        return n < 10 ? '0' + n : n;\n                    }\n\n                    return this.getUTCFullYear()   + '-' +\n                         f(this.getUTCMonth() + 1) + '-' +\n                         f(this.getUTCDate())      + 'T' +\n                         f(this.getUTCHours())     + ':' +\n                         f(this.getUTCMinutes())   + ':' +\n                         f(this.getUTCSeconds())   + 'Z';\n                };\n\n            You can provide an optional replacer method. It will be passed the\n            key and value of each member, with this bound to the containing\n            object. The value that is returned from your method will be\n            serialized. If your method returns undefined, then the member will\n            be excluded from the serialization.\n\n            If the replacer parameter is an array of strings, then it will be\n            used to select the members to be serialized. It filters the results\n            such that only members with keys listed in the replacer array are\n            stringified.\n\n            Values that do not have JSON representations, such as undefined or\n            functions, will not be serialized. Such values in objects will be\n            dropped; in arrays they will be replaced with null. You can use\n            a replacer function to replace those with JSON values.\n            JSON.stringify(undefined) returns undefined.\n\n            The optional space parameter produces a stringification of the\n            value that is filled with line breaks and indentation to make it\n            easier to read.\n\n            If the space parameter is a non-empty string, then that string will\n            be used for indentation. If the space parameter is a number, then\n            the indentation will be that many spaces.\n\n            Example:\n\n            text = JSON.stringify(['e', {pluribus: 'unum'}]);\n            // text is '[\"e\",{\"pluribus\":\"unum\"}]'\n\n\n            text = JSON.stringify(['e', {pluribus: 'unum'}], null, '\\t');\n            // text is '[\\n\\t\"e\",\\n\\t{\\n\\t\\t\"pluribus\": \"unum\"\\n\\t}\\n]'\n\n            text = JSON.stringify([new Date()], function (key, value) {\n                return this[key] instanceof Date ?\n                    'Date(' + this[key] + ')' : value;\n            });\n            // text is '[\"Date(---current time---)\"]'\n\n\n        JSON.parse(text, reviver)\n            This method parses a JSON text to produce an object or array.\n            It can throw a SyntaxError exception.\n\n            The optional reviver parameter is a function that can filter and\n            transform the results. It receives each of the keys and values,\n            and its return value is used instead of the original value.\n            If it returns what it received, then the structure is not modified.\n            If it returns undefined then the member is deleted.\n\n            Example:\n\n            // Parse the text. Values that look like ISO date strings will\n            // be converted to Date objects.\n\n            myData = JSON.parse(text, function (key, value) {\n                var a;\n                if (typeof value === 'string') {\n                    a =\n/^(\\d{4})-(\\d{2})-(\\d{2})T(\\d{2}):(\\d{2}):(\\d{2}(?:\\.\\d*)?)Z$/.exec(value);\n                    if (a) {\n                        return new Date(Date.UTC(+a[1], +a[2] - 1, +a[3], +a[4],\n                            +a[5], +a[6]));\n                    }\n                }\n                return value;\n            });\n\n            myData = JSON.parse('[\"Date(09/09/2001)\"]', function (key, value) {\n                var d;\n                if (typeof value === 'string' &&\n                        value.slice(0, 5) === 'Date(' &&\n                        value.slice(-1) === ')') {\n                    d = new Date(value.slice(5, -1));\n                    if (d) {\n                        return d;\n                    }\n                }\n                return value;\n            });\n\n\n    This is a reference implementation. You are free to copy, modify, or\n    redistribute.\n*/\n\n/*jslint evil: true, strict: false */\n\n/*members \"\", \"\\b\", \"\\t\", \"\\n\", \"\\f\", \"\\r\", \"\\\"\", JSON, \"\\\\\", apply,\n    call, charCodeAt, getUTCDate, getUTCFullYear, getUTCHours,\n    getUTCMinutes, getUTCMonth, getUTCSeconds, hasOwnProperty, join,\n    lastIndex, length, parse, prototype, push, replace, slice, stringify,\n    test, toJSON, toString, valueOf\n*/\n\n\n// Create a JSON object only if one does not already exist. We create the\n// methods in a closure to avoid creating global variables.\n\nif (!this.JSON) {\n    this.JSON = {};\n}\n\n(function () {\n\n    function f(n) {\n        // Format integers to have at least two digits.\n        return n < 10 ? '0' + n : n;\n    }\n\n    if (typeof Date.prototype.toJSON !== 'function') {\n\n        Date.prototype.toJSON = function (key) {\n\n            return isFinite(this.valueOf()) ?\n                   this.getUTCFullYear()   + '-' +\n                 f(this.getUTCMonth() + 1) + '-' +\n                 f(this.getUTCDate())      + 'T' +\n                 f(this.getUTCHours())     + ':' +\n                 f(this.getUTCMinutes())   + ':' +\n                 f(this.getUTCSeconds())   + 'Z' : null;\n        };\n\n        String.prototype.toJSON =\n        Number.prototype.toJSON =\n        Boolean.prototype.toJSON = function (key) {\n            return this.valueOf();\n        };\n    }\n\n    var cx = /[\\u0000\\u00ad\\u0600-\\u0604\\u070f\\u17b4\\u17b5\\u200c-\\u200f\\u2028-\\u202f\\u2060-\\u206f\\ufeff\\ufff0-\\uffff]/g,\n        escapable = /[\\\\\\\"\\x00-\\x1f\\x7f-\\x9f\\u00ad\\u0600-\\u0604\\u070f\\u17b4\\u17b5\\u200c-\\u200f\\u2028-\\u202f\\u2060-\\u206f\\ufeff\\ufff0-\\uffff]/g,\n        gap,\n        indent,\n        meta = {    // table of character substitutions\n            '\\b': '\\\\b',\n            '\\t': '\\\\t',\n            '\\n': '\\\\n',\n            '\\f': '\\\\f',\n            '\\r': '\\\\r',\n            '\"' : '\\\\\"',\n            '\\\\': '\\\\\\\\'\n        },\n        rep;\n\n\n    function quote(string) {\n\n// If the string contains no control characters, no quote characters, and no\n// backslash characters, then we can safely slap some quotes around it.\n// Otherwise we must also replace the offending characters with safe escape\n// sequences.\n\n        escapable.lastIndex = 0;\n        return escapable.test(string) ?\n            '\"' + string.replace(escapable, function (a) {\n                var c = meta[a];\n                return typeof c === 'string' ? c :\n                    '\\\\u' + ('0000' + a.charCodeAt(0).toString(16)).slice(-4);\n            }) + '\"' :\n            '\"' + string + '\"';\n    }\n\n\n    function str(key, holder) {\n\n// Produce a string from holder[key].\n\n        var i,          // The loop counter.\n            k,          // The member key.\n            v,          // The member value.\n            length,\n            mind = gap,\n            partial,\n            value = holder[key];\n\n// If the value has a toJSON method, call it to obtain a replacement value.\n\n        if (value && typeof value === 'object' &&\n                typeof value.toJSON === 'function') {\n            value = value.toJSON(key);\n        }\n\n// If we were called with a replacer function, then call the replacer to\n// obtain a replacement value.\n\n        if (typeof rep === 'function') {\n            value = rep.call(holder, key, value);\n        }\n\n// What happens next depends on the value's type.\n\n        switch (typeof value) {\n        case 'string':\n            return quote(value);\n\n        case 'number':\n\n// JSON numbers must be finite. Encode non-finite numbers as null.\n\n            return isFinite(value) ? String(value) : 'null';\n\n        case 'boolean':\n        case 'null':\n\n// If the value is a boolean or null, convert it to a string. Note:\n// typeof null does not produce 'null'. The case is included here in\n// the remote chance that this gets fixed someday.\n\n            return String(value);\n\n// If the type is 'object', we might be dealing with an object or an array or\n// null.\n\n        case 'object':\n\n// Due to a specification blunder in ECMAScript, typeof null is 'object',\n// so watch out for that case.\n\n            if (!value) {\n                return 'null';\n            }\n\n// Make an array to hold the partial results of stringifying this object value.\n\n            gap += indent;\n            partial = [];\n\n// Is the value an array?\n\n            if (Object.prototype.toString.apply(value) === '[object Array]') {\n\n// The value is an array. Stringify every element. Use null as a placeholder\n// for non-JSON values.\n\n                length = value.length;\n                for (i = 0; i < length; i += 1) {\n                    partial[i] = str(i, value) || 'null';\n                }\n\n// Join all of the elements together, separated with commas, and wrap them in\n// brackets.\n\n                v = partial.length === 0 ? '[]' :\n                    gap ? '[\\n' + gap +\n                            partial.join(',\\n' + gap) + '\\n' +\n                                mind + ']' :\n                          '[' + partial.join(',') + ']';\n                gap = mind;\n                return v;\n            }\n\n// If the replacer is an array, use it to select the members to be stringified.\n\n            if (rep && typeof rep === 'object') {\n                length = rep.length;\n                for (i = 0; i < length; i += 1) {\n                    k = rep[i];\n                    if (typeof k === 'string') {\n                        v = str(k, value);\n                        if (v) {\n                            partial.push(quote(k) + (gap ? ': ' : ':') + v);\n                        }\n                    }\n                }\n            } else {\n\n// Otherwise, iterate through all of the keys in the object.\n\n                for (k in value) {\n                    if (Object.hasOwnProperty.call(value, k)) {\n                        v = str(k, value);\n                        if (v) {\n                            partial.push(quote(k) + (gap ? ': ' : ':') + v);\n                        }\n                    }\n                }\n            }\n\n// Join all of the member texts together, separated with commas,\n// and wrap them in braces.\n\n            v = partial.length === 0 ? '{}' :\n                gap ? '{\\n' + gap + partial.join(',\\n' + gap) + '\\n' +\n                        mind + '}' : '{' + partial.join(',') + '}';\n            gap = mind;\n            return v;\n        }\n    }\n\n// If the JSON object does not yet have a stringify method, give it one.\n\n    if (typeof JSON.stringify !== 'function') {\n        JSON.stringify = function (value, replacer, space) {\n\n// The stringify method takes a value and an optional replacer, and an optional\n// space parameter, and returns a JSON text. The replacer can be a function\n// that can replace values, or an array of strings that will select the keys.\n// A default replacer method can be provided. Use of the space parameter can\n// produce text that is more easily readable.\n\n            var i;\n            gap = '';\n            indent = '';\n\n// If the space parameter is a number, make an indent string containing that\n// many spaces.\n\n            if (typeof space === 'number') {\n                for (i = 0; i < space; i += 1) {\n                    indent += ' ';\n                }\n\n// If the space parameter is a string, it will be used as the indent string.\n\n            } else if (typeof space === 'string') {\n                indent = space;\n            }\n\n// If there is a replacer, it must be a function or an array.\n// Otherwise, throw an error.\n\n            rep = replacer;\n            if (replacer && typeof replacer !== 'function' &&\n                    (typeof replacer !== 'object' ||\n                     typeof replacer.length !== 'number')) {\n                throw new Error('JSON.stringify');\n            }\n\n// Make a fake root object containing our value under the key of ''.\n// Return the result of stringifying the value.\n\n            return str('', {'': value});\n        };\n    }\n\n\n// If the JSON object does not yet have a parse method, give it one.\n\n    if (typeof JSON.parse !== 'function') {\n        JSON.parse = function (text, reviver) {\n\n// The parse method takes a text and an optional reviver function, and returns\n// a JavaScript value if the text is a valid JSON text.\n\n            var j;\n\n            function walk(holder, key) {\n\n// The walk method is used to recursively walk the resulting structure so\n// that modifications can be made.\n\n                var k, v, value = holder[key];\n                if (value && typeof value === 'object') {\n                    for (k in value) {\n                        if (Object.hasOwnProperty.call(value, k)) {\n                            v = walk(value, k);\n                            if (v !== undefined) {\n                                value[k] = v;\n                            } else {\n                                delete value[k];\n                            }\n                        }\n                    }\n                }\n                return reviver.call(holder, key, value);\n            }\n\n\n// Parsing happens in four stages. In the first stage, we replace certain\n// Unicode characters with escape sequences. JavaScript handles many characters\n// incorrectly, either silently deleting them, or treating them as line endings.\n\n            text = String(text);\n            cx.lastIndex = 0;\n            if (cx.test(text)) {\n                text = text.replace(cx, function (a) {\n                    return '\\\\u' +\n                        ('0000' + a.charCodeAt(0).toString(16)).slice(-4);\n                });\n            }\n\n// In the second stage, we run the text against regular expressions that look\n// for non-JSON patterns. We are especially concerned with '()' and 'new'\n// because they can cause invocation, and '=' because it can cause mutation.\n// But just to be safe, we want to reject all unexpected forms.\n\n// We split the second stage into 4 regexp operations in order to work around\n// crippling inefficiencies in IE's and Safari's regexp engines. First we\n// replace the JSON backslash pairs with '@' (a non-JSON character). Second, we\n// replace all simple value tokens with ']' characters. Third, we delete all\n// open brackets that follow a colon or comma or that begin the text. Finally,\n// we look to see that the remaining characters are only whitespace or ']' or\n// ',' or ':' or '{' or '}'. If that is so, then the text is safe for eval.\n\n            if (/^[\\],:{}\\s]*$/.\ntest(text.replace(/\\\\(?:[\"\\\\\\/bfnrt]|u[0-9a-fA-F]{4})/g, '@').\nreplace(/\"[^\"\\\\\\n\\r]*\"|true|false|null|-?\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?/g, ']').\nreplace(/(?:^|:|,)(?:\\s*\\[)+/g, ''))) {\n\n// In the third stage we use the eval function to compile the text into a\n// JavaScript structure. The '{' operator is subject to a syntactic ambiguity\n// in JavaScript: it can begin a block or an object literal. We wrap the text\n// in parens to eliminate the ambiguity.\n\n                j = eval('(' + text + ')');\n\n// In the optional fourth stage, we recursively walk the new structure, passing\n// each name/value pair to a reviver function for possible transformation.\n\n                return typeof reviver === 'function' ?\n                    walk({'': j}, '') : j;\n            }\n\n// If the text is not JSON parseable, then a SyntaxError is thrown.\n\n            throw new SyntaxError('JSON.parse');\n        };\n    }\n}());\n"
  },
  {
    "path": "newscoop/js/newscoop_rest_api.js",
    "content": "/**\n * MicroAjax (http://code.google.com/p/microajax/)\n */\nfunction microAjax(B,A){this.bindFunction=function(E,D){return function(){return E.apply(D,[D])}};this.stateChange=function(D){if(this.request.readyState==4){this.callbackFunction(this.request.responseText)}};this.getRequest=function(){if(window.ActiveXObject){return new ActiveXObject(\"Microsoft.XMLHTTP\")}else{if(window.XMLHttpRequest){return new XMLHttpRequest()}}return false};this.postBody=(arguments[2]||\"\");this.callbackFunction=A;this.url=B;this.request=this.getRequest();if(this.request){var C=this.request;C.onreadystatechange=this.bindFunction(this.stateChange,this);if(this.postBody!==\"\"){C.open(\"POST\",B,true);C.setRequestHeader(\"X-Requested-With\",\"XMLHttpRequest\");C.setRequestHeader(\"Content-type\",\"application/json\");C.setRequestHeader(\"Connection\",\"close\")}else{C.open(\"GET\",B,true)}C.send(this.postBody)}};\n\n(function () {\n    var apiEndpoint;\n    var base_path;\n\n    /**\n     * Newscoop REST API - JavaScript SDK\n     */\n    var NewscoopRestApi = function(ap)\n    {   \n        apiEndpoint = ap;\n\n        return NewscoopRestApi.prototype.apiCallBuilder;\n    };\n\n    /**\n     * Utils \n     * @type Object\n     */\n    NewscoopRestApi.prototype.utils = {\n        /**\n         * Build proper uri string\n         * @param  object params Optional parameters\n         * @return string        Proper uri string\n         */\n        buildUrl: function(params)\n        {\n            /**\n             * Construct the base url\n             */\n            var url = apiEndpoint + base_path;\n            \n            /**\n             * Assign key/Value pairs to GET String\n             */\n            var pairs = [];\n\n            for(var key in params)\n            {\n                if(!params.hasOwnProperty(key))\n                {\n                    continue;\n                }\n                \n                pairs.push(encodeURIComponent(key) + '=' + encodeURIComponent(params[key]));\n            }\n            \n            if(pairs.length > 0)\n            {\n                return url + '?' + pairs.join('&');\n            }\n            \n            return url;\n        }\n    }\n\n    /**\n     * Set of helper methods for build proper resource uri\n     * @type Object\n     */\n    NewscoopRestApi.prototype.apiCallBuilder = {\n        params: null,\n\n        /**\n         * Choose resource\n         * @param  string path      resource oath\n         * @param  object newParams optional parameters\n         * @return Object           NewscoopRestApi.apiCallBuilder object\n         */\n        getResource: function(path, newParams)\n        {\n            base_path = path;\n\n            if (typeof newParams != 'undefined') {\n                this.params = newParams;\n            }\n\n            return this;\n        },\n\n        /**\n         * Add new parameter to parrams array\n         * @param  string key   parameter name\n         * @param  string value parameter value\n         * @return Object       NewscoopRestApi.apiCallBuilder object\n         */\n        addParam: function(key, value)\n        {   \n            if (this.params === null) {\n                this.params = [];\n            }\n\n            this.params[key] = value;\n\n            return this;\n        },\n\n        /**\n         * Set number of returned items\n         * @param  integer number Number of items\n         * @return Object         NewscoopRestApi.apiCallBuilder object\n         */\n        setItemsPerPage: function(number)\n        {\n            this.addParam('items_per_page', number);\n\n            return this;\n        },\n\n        /**\n         * Requested page number\n         * @param  integer page Page number\n         * @return Object       NewscoopRestApi.apiCallBuilder object\n         */\n        setPage: function(page)\n        {\n            this.addParam('page', page);\n\n            return this;\n        },\n\n        /**\n         * Set order\n         * @param  array  order  Key in array is field name and value is direction\n         * @return Object        NewscoopRestApi.apiCallBuilder object\n         */\n        setOrder: function(order)\n        {\n            for (var key in order) {\n                if (order.hasOwnProperty(key)) {\n                    this.addParam('sort['+key+']', order[key]);\n                }\n            }\n            return this;\n        },\n\n        /**\n         * Set choosen fields\n         * @param  array fields  Arrray with chosen fields\n         * @return Object        NewscoopRestApi.apiCallBuilder object\n         */\n        setFields: function(fields)\n        {\n            fields = [].concat(fields);\n\n            this.addParam('fields', fields.join(','));\n\n            return this;\n        },\n\n        /**\n         * Call NewscoopRestApi.makeRequest with callback\n         * @param  Function callback Callback with json object as parameter\n         */\n        makeRequest: function(callback)\n        {   \n            NewscoopRestApi.prototype.makeRequest(NewscoopRestApi.prototype.utils.buildUrl(this.params), callback)\n        }\n    }\n\n    /**\n     * Make ajax request to choosen uri and run callback with data \n     * @param  string   uri      choosen uri and\n     * @param  Function callback Callback with json object as parameter\n     */\n    NewscoopRestApi.prototype.makeRequest = function(uri, callback)\n    {\n        microAjax(uri, function(res){\n            if (typeof callback != 'undefined') {\n                callback(eval(\"(\" + res + ')'))\n            }\n        });\n    }\n\n    window.NewscoopRestApi = NewscoopRestApi;\n})();"
  },
  {
    "path": "newscoop/js/omnibox.js",
    "content": "var omnibox = {\n\tuploader: false,\n\tflashRuntime: false,\n\tsilverlightRuntime: false,\n\tuploadUrl: false,\n\tuploadStatus: true,\n\tlanguage: false,\n\tpublication: false,\n\tsection: false,\n\tarticle: false,\n\tbaseUrl: '',\n\tstatus: false,\n\ttranslations: {},\n\ttype: 'comment',\n\telementList: ['ob_main', 'ob_comment', 'ob_feedback', 'ob_comment_text_container', 'ob_comment_subject', 'ob_comment_text', 'ob_feedback_text_container', 'ob_feedback_subject',\n\t\t'ob_feedback_text', 'ob_input', 'ob_message_wrapper', 'ob_message', 'ob_message_close', 'ob_file_info', 'ob_email', 'ob_password', 'ob_file_upload_container', 'ob_handle_image'],\n\telements: {},\n\tinitialize: function() {\n\t\tfor (var i in this.elementList) {\n\t\t\tvar element = this.elementList[i];\n\t\t\tthis.elements[element] = document.getElementById(element);\n\t\t}\n\t\t\n\t\tif (this.elements.ob_comment_subject) this.elements.ob_comment_subject.value = '';\n\t\tif (this.elements.ob_comment_text) this.elements.ob_comment_text.value = '';\n\t\tif (this.elements.ob_feedback_subject) this.elements.ob_feedback_subject.value = '';\n\t\tif (this.elements.ob_feedback_text) this.elements.ob_feedback_text.value = '';\n\t\t\n\t\tif (document.location.hash == '#omnibox') {\n\t\t\tthis.showHide();\n\t\t}\n\t},\n\tsetType: function(type) {\n\t\tthis.type = type;\n\t},\n\tsetTranslation: function(key, value) {\n\t\tthis.translations[key] = value;\n\t},\n\tsetFlashRuntime: function(flashRuntime) {\n\t\tthis.flashRuntime = flashRuntime;\n\t},\n\tsetSilverlightRuntime: function(silverlightRuntime) {\n\t\tthis.silverlightRuntime = silverlightRuntime;\n\t},\n\tsetUploadUrl: function(uploadUrl) {\n\t\tthis.uploadUrl = uploadUrl;\n\t},\n\tsetBaseUrl: function(baseUrl) {\n\t\tthis.baseUrl = baseUrl;\n\t},\n\tsetLanguage: function(language) {\n\t\tthis.language = language;\n\t},\n\tsetSection: function(section) {\n\t\tthis.section = section;\n\t},\n\tsetPublication: function(publication) {\n\t\tthis.publication = publication;\n\t},\n\tsetArticle: function(article) {\n\t\tthis.article = article;\n\t},\n\tshowUploader: function() {\n\t\tthis.uploader = new plupload.Uploader({\n\t\t\truntimes: 'html5,html4',\n\t\t\tbrowse_button: 'ob_file_upload',\n\t\t\tmax_file_size: '20mb',\n\t\t\tflash_swf_url: this.flashRuntime,\n\t\t\tsilverlight_xap_url: this.silverlightRuntime,\n\t\t\turl: this.uploadUrl,\n\t\t\tfilters: [{title: \"Image files\", extensions: \"jpg,gif,png\"}, {title: \"Document\", extensions: \"pdf\"}],\n\t\t\tmulti_selection: false\n\t\t});\n\t\tthis.uploader.init();\n\t\tthis.uploader.refresh();\n\t\t\n\t\tvar that = this;\n\t\tthis.uploader.bind('FilesAdded', function(up, files) {\n\t\t\tif (this.files.length > 1) {\n\t\t\t\tthis.removeFile(this.files[0]);\n\t\t\t}\n\t\t\tthat.elements.ob_file_info.innerHTML = files[0].name;\n\t\t});\n\t\tthis.uploader.bind('FileUploaded', function(up, file, info) {\n\t\t\tvar fileNameParts = file.name.split('.');\n\t\t\tvar extension = fileNameParts[fileNameParts.length - 1];\n\t\t\textension = extension.toLowerCase();\n\t\t\t\n\t\t\tif (extension == 'jpg' || extension == 'gif' || extension == 'png') {\n\t\t\t\tresponse = $.parseJSON(info.response);\n\t\t\t\tresponse = response.response;\n\t\t\t\tthat.sendFeedback('image', response);\n\t\t\t}\n\t\t\tif (extension == 'pdf') {\n\t\t\t\tresponse = $.parseJSON(info.response);\n\t\t\t\tresponse = response.response;\n\t\t\t\tthat.sendFeedback('document', response);\n\t\t\t}\n\t\t});\n\t},\n\thideUploader: function() {\n\t\tthis.uploader.refresh();\n\t},\n\tshowHideElement: function(elementName, action) {\n\t\tif (action == 'show') var display = 'inline';\n\t\telse var display = 'none';\n\t\t\n\t\tif (typeof(elementName) == 'object') {\n\t\t\tvar elementList = elementName;\n\t\t\tfor (var i in elementList) {\n\t\t\t\tvar elementName = elementList[i];\n\t\t\t\tif (this.elements[elementName]) {\n\t\t\t\t\tthis.elements[elementName].style.display = display;\n\t\t\t\t\tif (display == 'inline' && elementName == 'ob_message_wrapper') {\n\t\t\t\t\t\tthis.elements[elementName].style.display = 'block';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tif (this.elements[elementName]) this.elements[elementName].style.display = display;\n\t\t}\n\t},\n\tshowHide: function() {\n\t\tif (this.status == false) {\n\t\t\t//this.elements.ob_main.style.display = 'inline';\n\t\t\t$('#ob_wrapper').css('width', '690px');\n            $('#ob_main').show(400);\n            this.status = true;\n\t\t\tif (this.elements.ob_file_upload_container) this.elements.ob_file_upload_container.innerHTML = '<input type=\"button\" id=\"ob_file_upload\" value=\"'+this.translations['attach_file']+'\">';\n            this.elements.ob_handle_image.src = this.baseUrl + '/public/css/img/green-triangle-close.png';\n            setTimeout('omnibox.showUploader();', 200);\n\t\t}\n\t\telse {\n\t\t\t//this.elements.ob_main.style.display = 'none';\n\t\t\t$('#ob_wrapper').css('width', '0px');\n            $('#ob_main').hide(400);\n\t\t\tthis.status = false;\n\t\t\tthis.hideUploader();\n            this.elements.ob_handle_image.src = this.baseUrl + '/public/css/img/green-triangle.png';\n\t\t}\n\t},\n\tswitchCommentFeedback: function() {\n\t\tif (this.elements.ob_comment.checked) {\n\t\t\tthis.type = 'comment';\n\t\t}\n\t\telse if (this.elements.ob_feedback.checked) {\n\t\t\tthis.type = 'feedback';\n\t\t}\n\t\tthis.showInput();\n\t},\n\tlogin: function() {\n\t\tvar data = {\n\t\t\temail: this.elements.ob_email.value,\n\t\t\tpassword: this.elements.ob_password.value\n\t\t};\n\t\t\n\t\tthis.elements.ob_email.value = '';\n\t\tthis.elements.ob_password.value = '';\n\t\t\n\t\t$.post(this.baseUrl + '/omnibox/login/?format=json', data, function(data) {\n\t\t\tdata = $.parseJSON(data);\n\t\t\t\n\t\t\tif (data.response == 'OK') {\n\t\t\t\tomnibox.setMessage(omnibox.translations['login_successful']);\n\t\t\t\tomnibox.showMessage();\n\t\t\t\tdocument.location.hash = '#omnibox';\n                document.location.reload();\n\t\t\t}\n\t\t\telse {\n\t\t\t\tomnibox.setMessage(data.response);\n\t\t\t\tomnibox.showMessage();\n\t\t\t}\n\t\t});\n\t},\n\tlogout: function() {\n\t\t$.post(this.baseUrl + '/omnibox/logout/?format=json', {}, function(data) {\n\t\t\tomnibox.setMessage(omnibox.translations['logout_successful']);\n\t\t\tomnibox.showMessage();\n\t\t\tdocument.location.reload();\n\t\t});\n\t},\n\tshowMessage: function() {\n\t\tthis.showHideElement(['ob_message_wrapper', 'ob_message', 'ob_message_close'], 'show');\n\t},\n\thideMessage: function() {\n\t\tthis.showHideElement(['ob_message_wrapper', 'ob_message', 'ob_message_close'], 'hide');\n\t},\n\tsetMessage: function(message) {\n\t\tthis.elements.ob_message.innerHTML = message;\n\t},\n\tshowInput: function() {\n\t\tthis.showHideElement('ob_input', 'show');\n\t\t\n\t\tif (this.type == 'comment') {\n\t\t\tthis.showHideElement('ob_feedback_text_container', 'hide');\n\t\t\tthis.showHideElement('ob_comment_text_container', 'show');\n\t\t}\n\t\tif (this.type == 'feedback') {\n\t\t\tthis.showHideElement('ob_comment_text_container', 'hide');\n\t\t\tthis.showHideElement('ob_feedback_text_container', 'show');\n\t\t\tif (this.elements.ob_file_upload_container) this.elements.ob_file_upload_container.innerHTML = '<input type=\"button\" id=\"ob_file_upload\" value=\"'+this.translations['attach_file']+'\">';\n\t\t\tsetTimeout('omnibox.showUploader();', 200);\n\t\t}\n\t},\n\tsendComment: function() {\n\t\tvar data = {\n\t\t\tf_submit_comment: 'SUBMIT',\n\t\t\tf_comment_nickname: '',\n\t\t\tf_comment_reader_email: '',\n\t\t\tf_comment_content: this.elements.ob_comment_text.value,\n\t\t\tf_article_number: this.article,\n\t\t\tf_comment_is_anonymous: 0,\n\t\t\tf_comment_subject: this.elements.ob_comment_subject.value,\n\t\t\tf_language: this.language\n\t\t};\n\t\t\n\t\t$.post(this.baseUrl + '/comment/save/?format=json', data, function(data) {\n\t\t\tdata = $.parseJSON(data);\n\t\t\t\n\t\t\tif (data.response == 'OK') {\n\t\t\t\tvar location = (String)(document.location);\n\t\t\t\tlocation = location.split('#');\n\t\t\t\tlocation = location[0];\n\t\t\t\tdocument.location = location + '#tab-2';\n\t\t\t\tdocument.location.reload();\n\t\t\t}\n\t\t\telse {\n\t\t\t\tomnibox.setMessage(data.response);\n\t\t\t\tomnibox.showMessage();\n\t\t\t}\n\t\t});\n\t},\n\tsendFeedback: function(fileType, fileId) {\n\t\tif (this.elements.ob_feedback_subject.value == '' || this.elements.ob_feedback_text.value == '') {\n\t\t\tomnibox.setMessage(this.translations['feedback_content_empty']);\n\t\t\tomnibox.showMessage();\n\t\t}\n\t\telse {\n\t\t\tvar that = this;\n\t\t\tif (this.uploader.total.queued > 0) {\n\t\t\t\tthis.uploader.start();\n\t\t\t}\n\t\t\telse {\n\t\t\t\tvar data = {\n\t\t\t\t\tf_feedback_url: String(document.location),\n\t\t\t\t\tf_feedback_subject: this.elements.ob_feedback_subject.value,\n\t\t\t\t\tf_feedback_content: this.elements.ob_feedback_text.value,\n\t\t\t\t\tf_language: this.language,\n\t\t\t\t\tf_section: this.section,\n\t\t\t\t\tf_article: this.article,\n\t\t\t\t\tf_publication: this.publication\n\t\t\t\t};\n\t\t\t\t\n\t\t\t\tif (fileType == 'image') {\n\t\t\t\t\tdata['image_id'] = fileId;\n\t\t\t\t}\n\t\t\t\tif (fileType == 'document') {\n\t\t\t\t\tdata['document_id'] = fileId;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tvar url = this.baseUrl + '/feedback/save/?format=json';\n\t\t\t\t$.post(url, data, function(data) {\n\t\t\t\t\tdata = $.parseJSON(data);\n\t\t\t\t\t\n\t\t\t\t\tomnibox.setMessage(data.response);\n\t\t\t\t\tomnibox.showMessage();\n\t\t\t\t\tomnibox.showUploader();\n\t\t\t\t});\n\t\t\t\t\n\t\t\t\tthis.elements.ob_feedback_subject.value = '';\n\t\t\t\tthis.elements.ob_feedback_text.value = '';\n\t\t\t\tthis.elements.ob_file_info.innerHTML = '';\n\t\t\t}\n\n\t\t}\n\t}\n};\n"
  },
  {
    "path": "newscoop/js/plupload/changelog.txt",
    "content": "Version 1.5.1.1 (2011-09-27)\r\n\tHTML5: Fix mechanical typo, that successfully broke drag and drop, wherever could.\r\nVersion 1.5.1 (2011-09-26)\r\n\tHTML4: Add support for server responses in HTML format.\r\n\tHTML5: Disable multiple file selection in Safari 5.x for Windows (see #363).\r\n\tHTML5: Gecko 2/5/6 should upload chunks as binary strings when in chunking mode and client side resize is requested.\r\n\tFlash: Enforce URLStream mode when custom headers are passed.\r\n\tFlash: Fix embedding problems in IE9 (and all other IEs).\r\n\tFlash/Gears/BrowserPlus/SilverLight: Expose multi_selection feature, to be used in required_features (mainly to overcome Safari for Windows problem).\r\n\tSilverLight: Properly handle custom and null headers.\r\n\tUploadComplete moved to fire after the last StateChanged event.\r\n\tAdditional language packs: Finnish.\r\nVersion 1.5b (2011-09-11)\r\n\tUI Widget: Fix sortable logic.\r\n\tUI Widget: Fix bug, when message was displayed simultaneously across all Plupload UI instances on the page.\r\n\tUI Widget: notify() method is now public - users can throw their own messages into the widget header.\r\n\tHTML4/HTML5: Revise input[type=file] placement logic to support cursor styling on Geko 2+.\r\n\tHTML5: Revise Drag'n'Drop detection logic.\r\n\tHTML5: Make Exif and GPS information available to user, introduce two new events: ExifData and GpsData.\r\n\tHTML5: Add support for File.prototype.slice() method (mozSlice/webkitSlice) in order to be able to upload files in chunks without preloading.\r\n\tHTML5: Remove any JPEG headers before restoring them, 'cause user agent (like Chrome), might be inserting it's own.\r\n\tFlash: Remove a limit on the depth of image header check, since it still fails in some cases and performance gain is negligible.\r\n\tFlash: Fix regression, when runtime hanged when not images where passed in as images.\t\r\n\tSilverLight: Fix bug, when JSON serializer was failing on null.\r\n\tSilverLight: Remove cast to integer for chunk boundary, which resulted in a wrong size for last chunks on huge files.\r\n\tSilverLight: Increase read buffer, add disposal of ImageStream and FileStream, optimize for performance.\r\n\tUpdated build.xml to include language packs in release package under js/ folder.\r\n\tGears/BrowserPlus: Add support for * file filter.\r\n\tBeforeUpload now can cancel upload if required.\r\n\tAdditional MIME types: text/csv, image/photoshop, video/x-ms-wmv, video/avi, video/webm support\r\n\tAdditional language packs: Japanese\r\n\tCleaned examples.\r\nVersion 1.4.3.2 (2011-04-13)\r\n\tFixed bug in HTML5 runtime, when was reduced by a factor of 100 after every upload.\r\nVersion 1.4.3.1 (2011-04-12)\r\n\tFixed build script, mistakenly populating jquery.plupload.queue directory from jquery.ui.plupload sources.\r\n\tFixed script urls in all examples, build script now will alter them automatically from dev to release when needed.\r\n\tFixed isEmptyObj undefined error in HTML4 runtime.\r\n\tFixed bug in UI Widget preventing UploadComplete from triggering.\r\nVersion 1.4.3 (2011-04-11)\r\n\tAdded Latvian language pack and updated French.\r\n\tFixed bug in Flash runtime when JPEG header was not investigated deep enough to reach SOFn marker in large images.\r\n\tFixed bug, when PNGs were cropped to width in Flash runtimes, rather then resized. \r\n\tFixed Flash to allow multiple uploading of the same file, with different settings.\r\n\tFixed Flash runtime to clean anonymous listeners properly. \r\n\tFixed HTML5 runtime to resolve to mimeType in case-insensitive way.\r\n\tFixed HTML5/Flash/SilverLight/Gears runtimes for inconsistency in naming of chunks feature, comparing to other runtimes.\r\n\tFixed HTML4/HTML5 runtimes for input[type=file] to outsize contaner effectively enough to fill the whole click area.\r\n\tFixed all runtimes to preserve position (relative/absolute) rule on containers that already have it.\r\n\tFixed SilverLight runtime to support large files (over 2GB).\r\n\tRestructured the examples, src and build scripts to make it more clear that jQuery is optional.\r\n\tAdded support for *.* filter.\r\n\tAdded support for preserving ICC and IPTC headers when resizing JPEGs.\r\n\tAdded Image.onerror/onabort handlers to HTML5 in order to gracefully bypass faulty images.\r\n\tAdded ability to drop image size (by lowering quality), while preserving original dimension (HTML5/Flash/Gears).\r\n\tPorted EXIF, ICC, IPTC preservation code to Flash runtime. \r\nVersion 1.4.2 (2011-02-20)\r\n\tAdded Brazilian Portuguese, German, Russian and Spanish translations.\r\n\tAdded support for file_data_name option to SilverLight runtime.\r\n\tAdded support for better quality image resizing to Flash runtime.\r\n\tAdded support for properly handling images with dimensions up to 8191x8191 pixels to Flash runtime.\r\n\tAdded 'updatelist' event to UI Widget, which will be triggered every time file list will get redrawn. \r\n\tAdded support for dynamically changing options to UI Widget.\r\n\tFixed HTML4 runtime bug, when UploadFile handler was attached twice. \r\n\tFixed HTML5 to use FileReader.readAsBinaryString() instead of File.getAsBinary() on newer WebKit browsers (like Chrome 9).\r\n\tFixed Flash runtime from sending duplicate Filename param, when using FileReference.upload(). \r\n\tUpdated S3 example to illustrate support for a proper progress indication. \r\nVersion 1.4.1 (2011-02-01)\r\n\tAdded an example on how to use Plupload with Amazon S3 written in PHP but can easily be ported to other languages.\r\n\tFixed bug where hidden input elements wasn't created when the multiple_queues option wasn't used.\r\n\tFixed bug where FF4 would produce an exception about missing BlobBuilder.\r\nVersion 1.4.0 (2011-01-26)\r\n\tAdded removeEvent and removeAllEvents methods and modified addEvent accordingly, in order to support dynamic unload.\r\n\tAdded unbindAll method.\r\n\tAdded UploadComplete event, which fires when internal iterator reaches the end of the queue.\r\n\tAdded public destroy method to plupload object, new event - Destroy, and corresponding handlers to all runtimes.\r\n\tAdded Czech, Italian, French, Dutch translations.\r\n\tAdded support for translatable error messages.\r\n\tAdded two new options: browse_button_hover and browse_button_active, in order to support browse_button interactivity.\t\r\n\tAdded support for 'multi_selection: false' to Silverlight runtime.\r\n\tAdded support for video/mp4, video/x-m4v and audio/mp4 MIME Types. \r\n\tAdded artificial sendAsBinary method to XMLHttpRequest.prototype for browsers that have support for BlobBuilder and typed arrays.\r\n\tAdded version tracking variable into plupload object and version comment to the header of every file.\r\n\tFixed measurements of browse_button element in order to size and position input[type=file] element to fit it fully.\r\n\tFixed Flash runtime behavior for multiple_select=false and other simpleUpload usage cases: basically new FileReference has to be created for every select dialog. \r\n\tFixed browser sniffer to match only Safari, for fakeSafariDragDrop (seems like Safari on Mac doesn't require it either).\r\n\tFixed so that ExternalInterface escapes strings properly, before passing them to JS. \r\n\tFixed eventual reinitialization of flash/silverlight runtimes, especially for cases when object wrapper needed to be programmatically hidden and then shown again.\r\n\tFixed so that Plupload will now ignore files with duplicate names when adding to the queue, in one set. Mainly introduced to work around Safari on Windows bug (https://bugs.webkit.org/show_bug.cgi?id=37957).\r\n\tFixed bug, when final UploadProgress was firing after FileUploaded for Flash simpleUpload. \r\n\tFixed bug where upload would fail if an error was produced inside the FilesAdded event.\r\n\tFixed bug in Flash runtime when it used a wrong size when resizing, but not chunking.\r\n\tFixed bug in Silverlight runtime that would keep sending 0 byte packages when a picture was chunked before resized.\r\n\tDisabled blur filter (is going to be replaced with some bilinear resampling in next release).\r\n\tCompletely revised UI Widget, to be more jQuery UI oriented. Optionally depends on UI Button, UI Sortable, UI ProgressBar.\t\r\nVersion 1.3.0 (2010-11-24)\r\n\tAdded new jQuery UI widget that supports jQuery UI themes.\r\n\tAdded new multiple_queues option that enables you to upload multiple times in the queue widgets.\r\n\tAdded support for crossdomain loading of the XAP and SWF files and crossdomain upload.\r\n\tAdded new multiple_queues option that enables you to upload multiple times in the queue widgets.\r\n\tAdded support for crossdomain loading of the XAP and SWF files and crossdomain upload.\r\n\tAdded preinit/init options to to ease up the binding of custom events to queueWidget and the Uploader class.\r\n\tAdded drag/drop support for Safari until they fix the broken drag/drop support on Windows.\r\n\tAdded events example file that show how to bind all events and display event specific data.\r\n\tAdded support for retaining Exif data on images when they where resized using the HTML5 runtime.\r\n\tFixed logic issue with the upload.php example file. Chunking wasn't working correctly.\r\n\tFixed issue with HTML4 not handling the form encoding correctly on older IE versions. Patch contributed by jinxdone.\r\n\tFixed so the HTML4 runtime only submits the defined multipart_params arguments.\r\n\tFixes issue where it wasn't possible to dynamically override url or mutlipart_params for the HTML4 runtime.\r\n\tFixed so all runtimes pass the name, chunk and chunks parameters as multipart parameters instead of querystring parameters.\r\n\tFixed so files are read using the newer FileReader class if it's available if not it tries the older getAsXXX on Gecko.\r\n\tFixed bug where IE 9 beta 1 wouldn't render Silverlight properly.\r\n\tFixed bug where Flash would do extra empty requests if images below a specific size would be uploaded.\r\n\tFixed bug where Google Gears would resize and re-encode images even if the it wasn't changed in scale.\r\n\tFixed bug where the HTML5 runtime wouldn't free memory after each request on Gecko.\r\nVersion 1.2.4 (2010-09-08)\r\n\tAdded new BeforeUpload event to make it easier to override settings before a file is uploaded.\r\n\tAdded new automatic usage of FileReference in Flash if it's possible. Contributed by Marcel Jackwerth.\r\n\tAdded new chunking support for Chrome 5 and Firefox 3.6 using the HTML 5 runtime.\r\n\tAdded new multipart upload support for WebKit using the HTML 5 runtime and the FormData object.\r\n\tAdded new image scaling method for the Flash runtime contributed by rcoopman.\r\n\tAdded new alert error message if the user selected invalid files.\r\n\tAdded new automatic unique name generation to the example.php script. Contributed by Brandon Kelly.\r\n\tChanged so the default upload method is multipart and the default chunk size is 0.\r\n\tFixed progress issue with the HTML5 runtime running on Gecko.\r\n\tFixed so longer extensions can be used such as .tar.gz.\r\n\tFixed so the file extension is retained when using the unique_names option.\r\nVersion 1.2.3 (2010-05-27)\r\n\tAdded new drag/drop support for HTML5 running on Chrome beta.\r\n\tAdded new multipart state for the features object. It's now possible to detect multipart support.\r\n\tAdded new getFeatures function to all runtime. Basic concept by Javier Martinez Fernandez.\r\n\tFixed bug where runtimes where initialized even if they didn't match the required_features setting.\r\nVersion 1.2.2.1 (2010-05-04)\r\n\tAdded new headers option, enables you to set custom headers for the upload requests.\r\n\tFixed bug where the file extension checking was case sensitive.\r\nVersion 1.2.2 (2010-04-26)\r\n\tAdded new file_data_name option that enables you to set the multipart file data param. Patch contributed by Alex Ganov.\r\n\tAdded new FILE_SIZE_ERROR type that will be triggered if the user selected a file that is to large or zero bytes.\r\n\tAdded new FILE_EXTENSION_ERROR type that will be triggered if you add a file with an invalid file extension.\r\n\tAdded new required_features setting, enables you to specify a list of required features that the runtime must have.\r\n\tFixed so the plupload.buildUrl function uses the UTF compatible encodeURIComponent method instead of escape.\r\n\tFixed so that all file types can be selected if you don't specify a filter setting.\r\n\tFixed so more valid HTTP status codes are accepted as valid responses.\r\n\tFixed so all runtimes fills the features object with available features.\r\n\tFixed some issues with the HTML4 runtime if there wasn't any existing forms on the page.\r\n\tFixed some conflict issues with HTML4 runtime and forms with the input names of action or target.\r\n\tFixed bug where some Gecko versions would produce exceptions when checking the HTTP status of a XHR.\r\nVersion 1.2.1 (2010-03-22)\r\n\tFixed bug with incorrect aspect ratio in Flash image scaling.\r\n\tFixed bug where chunked uploads could get scrambled in the Flash runtime. Patch contributed by Grady Werner.\r\n\tFixed bug where a beta version of Chrome wouldn't handle drag/drop correctly because of missing drag effect.\r\n\tFixed so the HTML 4 runtime displays N/A for file sizes and the progress is based on uploaded files instead of bytes.\r\n\tFixed so chunking can be disabled properly in Flash but that will affect the progress bar.\r\n\tFixed so queue widget displays the drag/drop message if file queue is emptied.\r\n\tFixed small files are uploaded as one single chunk and not forced into 4 chunks in the Flash runtime.\r\nVersion 1.2 (2010-03-09)\r\n\tAdded new rename file support for jQuery queue widget, click on a file name to rename it if it's enabled.\r\n\tAdded official ChunkUploaded event, it similar to FileUploaded but executed for each chunk.\r\n\tAdded bytes per second support to total queue progress.\r\n\tAdded better error handling to core API using the new Error event.\r\n\tAdded better error handling to jQuery queue widget.\r\n\tFixed so chunking uploads is dispatch from JS not from inside Flash/Silverlight.\r\nVersion 1.1.1 (2010-02-25)\r\n\tAdded new setup setting to queue widget. Makes it easier to bind custom events to uploader instance.\r\n\tFixed so it's possible to disable chunking compleatly. It's now disabled by default.\r\n\tFixed bug where multipart mode was enabled all the time in the Flash runtime.\r\n\tFixed bug where chunked uploading in Silverlight would fail.\r\n\tFixed bug where the delete button was visible while uploading.\r\n\tFixed bug where unique_names setting wasn't working when the core API was used.\r\n\tFixed bug where the queue widget wouldn't display the currently uploaded file if the unique_names was enabled.\r\nVersion 1.1 (2010-02-24)\r\n\tAdded new multipart and multipart_params support.\r\n\tAdded new container option, enables you to specify where flash/silverlight objects would be added.\r\n\tAdded chunking support to BrowserPlus runtime, contributed by Steve Spencer.\r\n\tAdded FileUploaded event that fires when a file is uploaded.\r\n\tAdded more easily understandable buttons to queue widget.\r\n\tAdded html4 runtime, contributed by Ryan Demmer.\r\n\tFixed issues with i18n support and added a Swedish and Danish language pack.\r\n\tFixed bug where the Flash runtime could do empty requests if the image was scaled down.\r\n\tFixed bug where uploading small images in Silverlight would produce an exception.\r\n\tFixed so the runtime list can include whitespace or missing runtimes. Patch contributed by yvind Sean Kinsey.\r\n\tFixed so to large files are ignored and never dispatched to the FilesAdded event.\r\nVersion 1.0 (2010-02-03)\r\n\tFirst official release of Plupload.\r\n"
  },
  {
    "path": "newscoop/js/plupload/js/jquery.plupload.queue/css/jquery.plupload.queue.css",
    "content": "/* \r\n   Plupload\r\n------------------------------------------------------------------- */\r\n\r\n.plupload_button {\r\n\tdisplay: -moz-inline-box; /* FF < 3*/\r\n\tdisplay: inline-block;\r\n\tfont: normal 12px sans-serif;\r\n\ttext-decoration: none;\r\n    color: #42454a;\r\n    border: 1px solid #bababa;\r\n    padding: 2px 8px 3px 20px;\r\n\tmargin-right: 4px;\r\n    background: #f3f3f3 url('../img/buttons.png') no-repeat 0 center;\r\n\toutline: 0;\r\n\r\n    /* Optional rounded corners for browsers that support it */\r\n    -moz-border-radius: 3px;\r\n    -khtml-border-radius: 3px;\r\n    -webkit-border-radius: 3px;\r\n    border-radius: 3px;\r\n}\r\n\r\n.plupload_button:hover {\r\n\tcolor: #000;\r\n\ttext-decoration: none;\r\n}\r\n\r\n.plupload_disabled, a.plupload_disabled:hover {\r\n    color: #737373;\r\n    border-color: #c5c5c5;\r\n    background: #ededed url('../img/buttons-disabled.png') no-repeat 0 center;\r\n\tcursor: default;\r\n}\r\n\r\n.plupload_add {\r\n\tbackground-position: -181px center;\r\n}\r\n\r\n.plupload_wrapper {\r\n\tfont: normal 11px Verdana,sans-serif;\r\n\twidth: 100%;\r\n}\r\n\r\n.plupload_container {\r\n\tpadding: 8px;\r\n\tbackground: url('../img/transp50.png');\r\n\t/*-moz-border-radius: 5px;*/\r\n}\r\n\r\n.plupload_container input {\r\n\tborder: 1px solid #DDD;\r\n\tfont: normal 11px Verdana,sans-serif;\r\n\twidth: 98%;\r\n}\r\n\r\n.plupload_header {background: #2A2C2E url('../img/backgrounds.gif') repeat-x;}\r\n.plupload_header_content {\r\n\tbackground: url('../img/backgrounds.gif') no-repeat 0 -317px;\r\n\tmin-height: 56px;\r\n\tpadding-left: 60px;\r\n\tcolor: #FFF;\r\n}\r\n.plupload_header_title {\r\n\tfont: normal 18px sans-serif;\r\n\tpadding: 6px 0 3px;\r\n}\r\n.plupload_header_text {\r\n\tfont: normal 12px sans-serif;\r\n}\r\n\r\n.plupload_filelist {\r\n\tmargin: 0;\r\n\tpadding: 0;\r\n\tlist-style: none;\r\n}\r\n\r\n.plupload_scroll .plupload_filelist {\r\n\theight: 185px;\r\n\tbackground: #F5F5F5;\r\n\toverflow-y: scroll;\r\n}\r\n\r\n.plupload_filelist li {\r\n\tpadding: 10px 8px;\r\n\tbackground: #F5F5F5 url('../img/backgrounds.gif') repeat-x 0 -156px;\r\n\tborder-bottom: 1px solid #DDD;\r\n}\r\n\r\n.plupload_filelist_header, .plupload_filelist_footer {\r\n\tbackground: #DFDFDF;\r\n\tpadding: 8px 8px;\r\n\tcolor: #42454A;\r\n}\r\n.plupload_filelist_header {\t\r\n\tborder-top: 1px solid #EEE;\r\n\tborder-bottom: 1px solid #CDCDCD;\r\n}\r\n\r\n.plupload_filelist_footer {border-top: 1px solid #FFF; height: 22px; line-height: 20px; vertical-align: middle;}\r\n.plupload_file_name {float: left; overflow: hidden}\r\n.plupload_file_status {color: #777;}\r\n.plupload_file_status span {color: #42454A;}\r\n.plupload_file_size, .plupload_file_status, .plupload_progress {\r\n\tfloat: right;\r\n\twidth: 80px;\r\n}\r\n.plupload_file_size, .plupload_file_status, .plupload_file_action {text-align: right;}\r\n\r\n.plupload_filelist .plupload_file_name {width: 205px}\r\n\r\n.plupload_file_action {\r\n\tfloat: right;\r\n\twidth: 16px;\r\n\theight: 16px;\r\n\tmargin-left: 15px;\r\n}\r\n\r\n.plupload_file_action * {\r\n\tdisplay: none;\r\n\twidth: 16px;\r\n\theight: 16px;\r\n}\r\n\r\nli.plupload_uploading {background: #ECF3DC url('../img/backgrounds.gif') repeat-x 0 -238px;}\r\nli.plupload_done {color:#AAA}\r\n\r\nli.plupload_delete a {\r\n\tbackground: url('../img/delete.gif');\r\n}\r\n\r\nli.plupload_failed a {\r\n\tbackground: url('../img/error.gif');\r\n\tcursor: default;\r\n}\r\n\r\nli.plupload_done a {\r\n\tbackground: url('../img/done.gif');\r\n\tcursor: default;\r\n}\r\n\r\n.plupload_progress, .plupload_upload_status {\r\n\tdisplay: none;\r\n}\r\n\r\n.plupload_progress_container {\r\n\tmargin-top: 3px;\r\n\tborder: 1px solid #CCC;\r\n\tbackground: #FFF;\r\n\tpadding: 1px;\r\n}\r\n.plupload_progress_bar {\r\n\twidth: 0px;\r\n\theight: 7px;\r\n\tbackground: #CDEB8B;\r\n}\r\n\r\n.plupload_scroll .plupload_filelist_header .plupload_file_action, .plupload_scroll .plupload_filelist_footer .plupload_file_action {\r\n\tmargin-right: 17px;\r\n}\r\n\r\n/* Floats */\r\n\r\n.plupload_clear,.plupload_clearer {clear: both;}\r\n.plupload_clearer, .plupload_progress_bar {\r\n\tdisplay: block;\r\n\tfont-size: 0;\r\n\tline-height: 0;\t\r\n}\r\n\r\nli.plupload_droptext {\r\n\tbackground: transparent;\r\n\ttext-align: center;\r\n\tvertical-align: middle;\r\n\tborder: 0;\r\n\tline-height: 165px;\r\n}\r\n"
  },
  {
    "path": "newscoop/js/plupload/js/jquery.plupload.queue/jquery.plupload.queue.js",
    "content": "(function(c){var d={};function a(e){return plupload.translate(e)||e}function b(f,e){e.contents().each(function(g,h){h=c(h);if(!h.is(\".plupload\")){h.remove()}});e.prepend('<div class=\"plupload_wrapper plupload_scroll\"><div id=\"'+f+'_container\" class=\"plupload_container\"><div class=\"plupload\"><div class=\"plupload_header\"><div class=\"plupload_header_content\"><div class=\"plupload_header_title\">'+a(\"Select files\")+'</div><div class=\"plupload_header_text\">'+a(\"Add files to the upload queue and click the start button.\")+'</div></div></div><div class=\"plupload_content\"><div class=\"plupload_filelist_header\"><div class=\"plupload_file_name\">'+a(\"Filename\")+'</div><div class=\"plupload_file_action\">&nbsp;</div><div class=\"plupload_file_status\"><span>'+a(\"Status\")+'</span></div><div class=\"plupload_file_size\">'+a(\"Size\")+'</div><div class=\"plupload_clearer\">&nbsp;</div></div><ul id=\"'+f+'_filelist\" class=\"plupload_filelist\"></ul><div class=\"plupload_filelist_footer\"><div class=\"plupload_file_name\"><div class=\"plupload_buttons\"><a href=\"#\" class=\"plupload_button plupload_add\">'+a(\"Add files\")+'</a><a href=\"#\" class=\"plupload_button plupload_start\">'+a(\"Start upload\")+'</a></div><span class=\"plupload_upload_status\"></span></div><div class=\"plupload_file_action\"></div><div class=\"plupload_file_status\"><span class=\"plupload_total_status\">0%</span></div><div class=\"plupload_file_size\"><span class=\"plupload_total_file_size\">0 b</span></div><div class=\"plupload_progress\"><div class=\"plupload_progress_container\"><div class=\"plupload_progress_bar\"></div></div></div><div class=\"plupload_clearer\">&nbsp;</div></div></div></div></div><input type=\"hidden\" id=\"'+f+'_count\" name=\"'+f+'_count\" value=\"0\" /></div>')}c.fn.pluploadQueue=function(e){if(e){this.each(function(){var j,i,k;i=c(this);k=i.attr(\"id\");if(!k){k=plupload.guid();i.attr(\"id\",k)}j=new plupload.Uploader(c.extend({dragdrop:true,container:k},e));d[k]=j;function h(l){var n;if(l.status==plupload.DONE){n=\"plupload_done\"}if(l.status==plupload.FAILED){n=\"plupload_failed\"}if(l.status==plupload.QUEUED){n=\"plupload_delete\"}if(l.status==plupload.UPLOADING){n=\"plupload_uploading\"}var m=c(\"#\"+l.id).attr(\"class\",n).find(\"a\").css(\"display\",\"block\");if(l.hint){m.attr(\"title\",l.hint)}}function f(){c(\"span.plupload_total_status\",i).html(j.total.percent+\"%\");c(\"div.plupload_progress_bar\",i).css(\"width\",j.total.percent+\"%\");c(\"span.plupload_upload_status\",i).text(a(\"Uploaded %d/%d files\").replace(/%d\\/%d/,j.total.uploaded+\"/\"+j.files.length))}function g(){var m=c(\"ul.plupload_filelist\",i).html(\"\"),n=0,l;c.each(j.files,function(p,o){l=\"\";if(o.status==plupload.DONE){if(o.target_name){l+='<input type=\"hidden\" name=\"'+k+\"_\"+n+'_tmpname\" value=\"'+plupload.xmlEncode(o.target_name)+'\" />'}l+='<input type=\"hidden\" name=\"'+k+\"_\"+n+'_name\" value=\"'+plupload.xmlEncode(o.name)+'\" />';l+='<input type=\"hidden\" name=\"'+k+\"_\"+n+'_status\" value=\"'+(o.status==plupload.DONE?\"done\":\"failed\")+'\" />';n++;c(\"#\"+k+\"_count\").val(n)}m.append('<li id=\"'+o.id+'\"><div class=\"plupload_file_name\"><span>'+o.name+'</span></div><div class=\"plupload_file_action\"><a href=\"#\"></a></div><div class=\"plupload_file_status\">'+o.percent+'%</div><div class=\"plupload_file_size\">'+plupload.formatSize(o.size)+'</div><div class=\"plupload_clearer\">&nbsp;</div>'+l+\"</li>\");h(o);c(\"#\"+o.id+\".plupload_delete a\").click(function(q){c(\"#\"+o.id).remove();j.removeFile(o);q.preventDefault()})});c(\"span.plupload_total_file_size\",i).html(plupload.formatSize(j.total.size));if(j.total.queued===0){c(\"span.plupload_add_text\",i).text(a(\"Add files.\"))}else{c(\"span.plupload_add_text\",i).text(j.total.queued+\" files queued.\")}c(\"a.plupload_start\",i).toggleClass(\"plupload_disabled\",j.files.length==(j.total.uploaded+j.total.failed));m[0].scrollTop=m[0].scrollHeight;f();if(!j.files.length&&j.features.dragdrop&&j.settings.dragdrop){c(\"#\"+k+\"_filelist\").append('<li class=\"plupload_droptext\">'+a(\"Drag files here.\")+\"</li>\")}}j.bind(\"UploadFile\",function(l,m){c(\"#\"+m.id).addClass(\"plupload_current_file\")});j.bind(\"Init\",function(l,m){b(k,i);if(!e.unique_names&&e.rename){c(\"#\"+k+\"_filelist div.plupload_file_name span\",i).live(\"click\",function(s){var q=c(s.target),o,r,n,p=\"\";o=l.getFile(q.parents(\"li\")[0].id);n=o.name;r=/^(.+)(\\.[^.]+)$/.exec(n);if(r){n=r[1];p=r[2]}q.hide().after('<input type=\"text\" />');q.next().val(n).focus().blur(function(){q.show().next().remove()}).keydown(function(u){var t=c(this);if(u.keyCode==13){u.preventDefault();o.name=t.val()+p;q.text(o.name);t.blur()}})})}c(\"a.plupload_add\",i).attr(\"id\",k+\"_browse\");l.settings.browse_button=k+\"_browse\";if(l.features.dragdrop&&l.settings.dragdrop){l.settings.drop_element=k+\"_filelist\";c(\"#\"+k+\"_filelist\").append('<li class=\"plupload_droptext\">'+a(\"Drag files here.\")+\"</li>\")}c(\"#\"+k+\"_container\").attr(\"title\",\"Using runtime: \"+m.runtime);c(\"a.plupload_start\",i).click(function(n){if(!c(this).hasClass(\"plupload_disabled\")){j.start()}n.preventDefault()});c(\"a.plupload_stop\",i).click(function(n){n.preventDefault();j.stop()});c(\"a.plupload_start\",i).addClass(\"plupload_disabled\")});j.init();j.bind(\"Error\",function(l,o){var m=o.file,n;if(m){n=o.message;if(o.details){n+=\" (\"+o.details+\")\"}if(o.code==plupload.FILE_SIZE_ERROR){alert(a(\"Error: File too large: \")+m.name)}if(o.code==plupload.FILE_EXTENSION_ERROR){alert(a(\"Error: Invalid file extension: \")+m.name)}m.hint=n;c(\"#\"+m.id).attr(\"class\",\"plupload_failed\").find(\"a\").css(\"display\",\"block\").attr(\"title\",n)}});j.bind(\"StateChanged\",function(){if(j.state===plupload.STARTED){c(\"li.plupload_delete a,div.plupload_buttons\",i).hide();c(\"span.plupload_upload_status,div.plupload_progress,a.plupload_stop\",i).css(\"display\",\"block\");c(\"span.plupload_upload_status\",i).text(\"Uploaded \"+j.total.uploaded+\"/\"+j.files.length+\" files\");if(e.multiple_queues){c(\"span.plupload_total_status,span.plupload_total_file_size\",i).show()}}else{g();c(\"a.plupload_stop,div.plupload_progress\",i).hide();c(\"a.plupload_delete\",i).css(\"display\",\"block\")}});j.bind(\"QueueChanged\",g);j.bind(\"FileUploaded\",function(l,m){h(m)});j.bind(\"UploadProgress\",function(l,m){c(\"#\"+m.id+\" div.plupload_file_status\",i).html(m.percent+\"%\");h(m);f();if(e.multiple_queues&&j.total.uploaded+j.total.failed==j.files.length){c(\".plupload_buttons,.plupload_upload_status\",i).css(\"display\",\"inline\");c(\".plupload_start\",i).addClass(\"plupload_disabled\");c(\"span.plupload_total_status,span.plupload_total_file_size\",i).hide()}});if(e.setup){e.setup(j)}});return this}else{return d[c(this[0]).attr(\"id\")]}}})(jQuery);"
  },
  {
    "path": "newscoop/js/plupload/js/jquery.ui.plupload/css/jquery.ui.plupload.css",
    "content": "/*\r\n   Plupload\r\n------------------------------------------------------------------- */\r\n\r\n.plupload_button {cursor: pointer;}\r\n\r\n.plupload_wrapper {\r\n\tfont: normal 11px Verdana,sans-serif;\r\n\twidth: 100%;\r\n}\r\n\r\n.plupload .plupload_container input {width: 98%;}\r\n.plupload .plupload_filelist_footer {border-width: 1px 0 0 0}\r\n.plupload .plupload_filelist_header {border-width: 0 0 1px 0}\r\ndiv.plupload .plupload_file {border-width: 0 0 1px 0}\r\ndiv.plupload div.plupload_header {border-width: 0 0 1px 0; position: relative;}\r\n\r\n.plupload_file .ui-icon {\r\n\tcursor:pointer;\t\r\n}\r\n\r\n.plupload_header_content {\r\n\tbackground-image: url('../img/plupload.png');\r\n\tbackground-repeat: no-repeat;\r\n\tbackground-position: 8px center;\r\n\tmin-height: 56px;\r\n\tpadding-left: 60px;\r\n\tposition:relative;\r\n}\r\n.plupload_header_content_bw {background-image: url('../img/plupload-bw.png');}\r\n.plupload_header_title {\r\n\tfont: normal 18px sans-serif;\r\n\tpadding: 6px 0 3px;\r\n}\r\n.plupload_header_text {font: normal 12px sans-serif;}\r\n\r\n.plupload_filelist,\r\n.plupload_filelist_content {\r\n\tborder-collapse: collapse;\r\n\tmargin: 0;\r\n\tpadding: 0;\r\n\twidth: 100%;\r\n\t-moz-user-select:none;\r\n\t-webkit-user-select:none;\r\n\tuser-select:none;\r\n}\r\n\r\n.plupload_cell {padding: 8px 6px;}\r\n\r\n.plupload_file {\r\n\tborder-left: none;\r\n\tborder-right: none;\r\n}\r\n\r\n.plupload .ui-sortable-helper,\r\n.plupload .ui-sortable .plupload_file {\r\n\tcursor:move;\t\r\n}\r\n\r\n.plupload_scroll {\r\n\tmax-height: 180px;\r\n\tmin-height: 168px;\r\n\t_height: 168px;\r\n\toverflow-y: auto;\r\n}\r\n\r\n.plupload_file_size, .plupload_file_status {text-align: right;}\r\n.plupload_file_size, .plupload_file_status {width: 52px;}\r\n.plupload_file_action {width: 16px;}\r\n.plupload_file_name {\r\n\toverflow: hidden;\r\n\tpadding-left: 10px;\r\n}\r\n\r\n.plupload_file_rename {\r\n\twidth:95%;\t\r\n}\r\n\r\n.plupload_progress {width: 60px;}\r\n.plupload_progress_container {padding: 1px;}\r\n\r\n\r\n/* Floats */\r\n\r\n.plupload_right {float: right;}\r\n.plupload_left {float: left;}\r\n.plupload_clear,.plupload_clearer {clear: both;}\r\n.plupload_clearer, .plupload_progress_bar {\r\n\tdisplay: block;\r\n\tfont-size: 0;\r\n\tline-height: 0;\r\n}\r\n.plupload_clearer {height: 0;}\r\n\r\n/* Misc */\r\n.plupload_hidden {display: none;}\r\n.plupload_droptext {\r\n\tbackground: transparent;\r\n\ttext-align: center;\r\n\tvertical-align: middle;\r\n\tborder: 0;\r\n\tline-height: 165px;\r\n}\r\n\r\n.plupload_buttons, .plupload_upload_status {float: left}\r\n\r\n.plupload_message {\r\n\tposition: absolute;\r\n\ttop: 0px;\r\n\tleft: 0px;\t\r\n\theight: 100%;\r\n\twidth: 100%;\r\n}\r\n\r\n.plupload_message p {\r\n\tpadding:0.7em;\r\n\tmargin:0;\r\n}\r\n\r\n.plupload_message strong {\r\n\tfont-weight: bold;\t\r\n}\r\n\r\nplupload_message i {\r\n\tfont-style: italic;\t\r\n}\r\n\r\n.plupload_message p span.ui-icon {\r\n\tfloat: left;\r\n\tmargin-right: 0.3em;\t\r\n}\r\n\r\n.plupload_header_content .ui-state-error,\r\n.plupload_header_content .ui-state-highlight {\r\n\tborder:none;\t\r\n}\r\n\r\n.plupload_message_close {\r\n\tposition:absolute;\r\n\ttop:5px;\r\n\tright:5px;\r\n\tcursor:pointer;\t\r\n}\r\n\r\n.plupload .ui-sortable-placeholder {\r\n\theight:35px;\r\n}\r\n"
  },
  {
    "path": "newscoop/js/plupload/js/jquery.ui.plupload/jquery.ui.plupload.js",
    "content": "(function(f,a,c,g,e){var h={};function b(i){return c.translate(i)||i}function d(i){i.html('<div class=\"plupload_wrapper\"><div class=\"ui-widget-content plupload_container\"><div class=\"plupload\"><div class=\"ui-state-default ui-widget-header plupload_header\"><div class=\"plupload_header_content\"><div class=\"plupload_header_title\">'+b(\"Select files\")+'</div><div class=\"plupload_header_text\">'+b(\"Add files to the upload queue and click the start button.\")+'</div></div></div><div class=\"plupload_content\"><table class=\"plupload_filelist\"><tr class=\"ui-widget-header plupload_filelist_header\"><td class=\"plupload_cell plupload_file_name\">'+b(\"Filename\")+'</td><td class=\"plupload_cell plupload_file_status\">'+b(\"Status\")+'</td><td class=\"plupload_cell plupload_file_size\">'+b(\"Size\")+'</td><td class=\"plupload_cell plupload_file_action\">&nbsp;</td></tr></table><div class=\"plupload_scroll\"><table class=\"plupload_filelist_content\"></table></div><table class=\"plupload_filelist\"><tr class=\"ui-widget-header ui-widget-content plupload_filelist_footer\"><td class=\"plupload_cell plupload_file_name\"><div class=\"plupload_buttons\"><!-- Visible --><a class=\"plupload_button plupload_add\">'+b(\"Add Files\")+'</a>&nbsp;<a class=\"plupload_button plupload_start\">'+b(\"Start Upload\")+'</a>&nbsp;<a class=\"plupload_button plupload_stop plupload_hidden\">'+b(\"Stop Upload\")+'</a>&nbsp;</div><div class=\"plupload_started plupload_hidden\"><!-- Hidden --><div class=\"plupload_progress plupload_right\"><div class=\"plupload_progress_container\"></div></div><div class=\"plupload_cell plupload_upload_status\"></div><div class=\"plupload_clearer\">&nbsp;</div></div></td><td class=\"plupload_file_status\"><span class=\"plupload_total_status\">0%</span></td><td class=\"plupload_file_size\"><span class=\"plupload_total_file_size\">0 kb</span></td><td class=\"plupload_file_action\"></td></tr></table></div></div></div><input class=\"plupload_count\" value=\"0\" type=\"hidden\"></div>')}g.widget(\"ui.plupload\",{contents_bak:\"\",runtime:null,options:{browse_button_hover:\"ui-state-hover\",browse_button_active:\"ui-state-active\",dragdrop:true,multiple_queues:true,buttons:{browse:true,start:true,stop:true},autostart:false,sortable:false,rename:false,max_file_count:0},FILE_COUNT_ERROR:-9001,_create:function(){var i=this,k,j;k=this.element.attr(\"id\");if(!k){k=c.guid();this.element.attr(\"id\",k)}this.id=k;this.contents_bak=this.element.html();d(this.element);this.container=g(\".plupload_container\",this.element).attr(\"id\",k+\"_container\");this.filelist=g(\".plupload_filelist_content\",this.container).attr({id:k+\"_filelist\",unselectable:\"on\"});this.browse_button=g(\".plupload_add\",this.container).attr(\"id\",k+\"_browse\");this.start_button=g(\".plupload_start\",this.container).attr(\"id\",k+\"_start\");this.stop_button=g(\".plupload_stop\",this.container).attr(\"id\",k+\"_stop\");if(g.ui.button){this.browse_button.button({icons:{primary:\"ui-icon-circle-plus\"}});this.start_button.button({icons:{primary:\"ui-icon-circle-arrow-e\"},disabled:true});this.stop_button.button({icons:{primary:\"ui-icon-circle-close\"}})}if(!this.options.buttons.browse){this.browse_button.button(\"disable\").hide();g(\"#\"+k+i.runtime+\"_container\").hide()}if(!this.options.buttons.start){this.start_button.button(\"disable\").hide()}if(!this.options.buttons.stop){this.stop_button.button(\"disable\").hide()}this.progressbar=g(\".plupload_progress_container\",this.container);if(g.ui.progressbar){this.progressbar.progressbar()}this.counter=g(\".plupload_count\",this.element).attr({id:k+\"_count\",name:k+\"_count\"});j=this.uploader=h[k]=new c.Uploader(g.extend({container:k,browse_button:k+\"_browse\"},this.options));j.bind(\"Init\",function(l,m){if(!i.options.unique_names&&i.options.rename){i._enableRenaming()}if(j.features.dragdrop&&i.options.dragdrop){i._enableDragAndDrop()}i.container.attr(\"title\",b(\"Using runtime: \")+(i.runtime=m.runtime));i.start_button.click(function(n){if(!g(this).button(\"option\",\"disabled\")){i.start()}n.preventDefault()});i.stop_button.click(function(n){j.stop();n.preventDefault()})});if(i.options.max_file_count){j.bind(\"FilesAdded\",function(l,n){var o=[],m=n.length;var p=l.files.length+m-i.options.max_file_count;if(p>0){o=n.splice(m-p,p);l.trigger(\"Error\",{code:i.FILE_COUNT_ERROR,message:b(\"File count error.\"),file:o})}})}j.init();j.bind(\"FilesAdded\",function(l,m){i._trigger(\"selected\",null,{up:l,files:m});if(i.options.autostart){i.start()}});j.bind(\"FilesRemoved\",function(l,m){i._trigger(\"removed\",null,{up:l,files:m})});j.bind(\"QueueChanged\",function(){i._updateFileList()});j.bind(\"StateChanged\",function(){i._handleState()});j.bind(\"UploadFile\",function(l,m){i._handleFileStatus(m)});j.bind(\"FileUploaded\",function(l,m){i._handleFileStatus(m);i._trigger(\"uploaded\",null,{up:l,file:m})});j.bind(\"UploadProgress\",function(l,m){g(\"#\"+m.id+\" .plupload_file_status\",i.element).html(m.percent+\"%\");i._handleFileStatus(m);i._updateTotalProgress();i._trigger(\"progress\",null,{up:l,file:m})});j.bind(\"UploadComplete\",function(l,m){i._trigger(\"complete\",null,{up:l,files:m})});j.bind(\"Error\",function(l,p){var n=p.file,o,m;if(n){o=\"<strong>\"+p.message+\"</strong>\";m=p.details;if(m){o+=\" <br /><i>\"+p.details+\"</i>\"}else{switch(p.code){case c.FILE_EXTENSION_ERROR:m=b(\"File: %s\").replace(\"%s\",n.name);break;case c.FILE_SIZE_ERROR:m=b(\"File: %f, size: %s, max file size: %m\").replace(/%([fsm])/g,function(r,q){switch(q){case\"f\":return n.name;case\"s\":return n.size;case\"m\":return c.parseSize(i.options.max_file_size)}});break;case i.FILE_COUNT_ERROR:m=b(\"Upload element accepts only %d file(s) at a time. Extra files were stripped.\").replace(\"%d\",i.options.max_file_count);break;case c.IMAGE_FORMAT_ERROR:m=c.translate(\"Image format either wrong or not supported.\");break;case c.IMAGE_MEMORY_ERROR:m=c.translate(\"Runtime ran out of available memory.\");break;case c.IMAGE_DIMENSIONS_ERROR:m=c.translate(\"Resoultion out of boundaries! <b>%s</b> runtime supports images only up to %wx%hpx.\").replace(/%([swh])/g,function(r,q){switch(q){case\"s\":return l.runtime;case\"w\":return l.features.maxWidth;case\"h\":return l.features.maxHeight}});break;case c.HTTP_ERROR:m=b(\"Upload URL might be wrong or doesn't exist\");break}o+=\" <br /><i>\"+m+\"</i>\"}i.notify(\"error\",o);i._trigger(\"error\",null,{up:l,file:n,error:o})}})},_setOption:function(j,k){var i=this;if(j==\"buttons\"&&typeof(k)==\"object\"){k=g.extend(i.options.buttons,k);if(!k.browse){i.browse_button.button(\"disable\").hide();g(\"#\"+i.id+i.runtime+\"_container\").hide()}else{i.browse_button.button(\"enable\").show();g(\"#\"+i.id+i.runtime+\"_container\").show()}if(!k.start){i.start_button.button(\"disable\").hide()}else{i.start_button.button(\"enable\").show()}if(!k.stop){i.stop_button.button(\"disable\").hide()}else{i.start_button.button(\"enable\").show()}}i.uploader.settings[j]=k},start:function(){this.uploader.start();this._trigger(\"start\",null)},stop:function(){this.uploader.stop();this._trigger(\"stop\",null)},getFile:function(j){var i;if(typeof j===\"number\"){i=this.uploader.files[j]}else{i=this.uploader.getFile(j)}return i},removeFile:function(j){var i=this.getFile(j);if(i){this.uploader.removeFile(i)}},clearQueue:function(){this.uploader.splice()},getUploader:function(){return this.uploader},refresh:function(){this.uploader.refresh()},_handleState:function(){var i=this,j=this.uploader;if(j.state===c.STARTED){g(i.start_button).button(\"disable\");g([]).add(i.stop_button).add(\".plupload_started\").removeClass(\"plupload_hidden\");g(\".plupload_upload_status\",i.element).text(b(\"Uploaded %d/%d files\").replace(\"%d/%d\",j.total.uploaded+\"/\"+j.files.length));g(\".plupload_header_content\",i.element).addClass(\"plupload_header_content_bw\")}else{g([]).add(i.stop_button).add(\".plupload_started\").addClass(\"plupload_hidden\");if(i.options.multiple_queues){g(i.start_button).button(\"enable\");g(\".plupload_header_content\",i.element).removeClass(\"plupload_header_content_bw\")}i._updateFileList()}},_handleFileStatus:function(l){var n,j;switch(l.status){case c.DONE:n=\"plupload_done\";j=\"ui-icon ui-icon-circle-check\";break;case c.FAILED:n=\"ui-state-error plupload_failed\";j=\"ui-icon ui-icon-alert\";break;case c.QUEUED:n=\"plupload_delete\";j=\"ui-icon ui-icon-circle-minus\";break;case c.UPLOADING:n=\"ui-state-highlight plupload_uploading\";j=\"ui-icon ui-icon-circle-arrow-w\";var i=g(\".plupload_scroll\",this.container),m=i.scrollTop(),o=i.height(),k=g(\"#\"+l.id).position().top+g(\"#\"+l.id).height();if(o<k){i.scrollTop(m+k-o)}break}n+=\" ui-state-default plupload_file\";g(\"#\"+l.id).attr(\"class\",n).find(\".ui-icon\").attr(\"class\",j)},_updateTotalProgress:function(){var i=this.uploader;this.progressbar.progressbar(\"value\",i.total.percent);g(\".plupload_total_status\",this.element).html(i.total.percent+\"%\");g(\".plupload_upload_status\",this.element).text(b(\"Uploaded %d/%d files\").replace(\"%d/%d\",i.total.uploaded+\"/\"+i.files.length))},_updateFileList:function(){var j=this,n=this.uploader,l=this.filelist,k=0,o,m=this.id+\"_\",i;if(g.ui.sortable&&this.options.sortable){g(\"tbody\",l).sortable(\"destroy\")}l.empty();g.each(n.files,function(q,p){i=\"\";o=m+k;if(p.status===c.DONE){if(p.target_name){i+='<input type=\"hidden\" name=\"'+o+'_tmpname\" value=\"'+c.xmlEncode(p.target_name)+'\" />'}i+='<input type=\"hidden\" name=\"'+o+'_name\" value=\"'+c.xmlEncode(p.name)+'\" />';i+='<input type=\"hidden\" name=\"'+o+'_status\" value=\"'+(p.status===c.DONE?\"done\":\"failed\")+'\" />';k++;j.counter.val(k)}l.append('<tr class=\"ui-state-default plupload_file\" id=\"'+p.id+'\"><td class=\"plupload_cell plupload_file_name\"><span>'+p.name+'</span></td><td class=\"plupload_cell plupload_file_status\">'+p.percent+'%</td><td class=\"plupload_cell plupload_file_size\">'+c.formatSize(p.size)+'</td><td class=\"plupload_cell plupload_file_action\"><div class=\"ui-icon\"></div>'+i+\"</td></tr>\");j._handleFileStatus(p);g(\"#\"+p.id+\".plupload_delete .ui-icon, #\"+p.id+\".plupload_done .ui-icon\").click(function(r){g(\"#\"+p.id).remove();n.removeFile(p);r.preventDefault()});j._trigger(\"updatelist\",null,l)});g(\".plupload_total_file_size\",j.element).html(c.formatSize(n.total.size));if(n.total.queued===0){g(\".ui-button-text\",j.browse_button).text(b(\"Add Files\"))}else{g(\".ui-button-text\",j.browse_button).text(b(\"%d files queued\").replace(\"%d\",n.total.queued))}if(n.files.length===(n.total.uploaded+n.total.failed)){j.start_button.button(\"disable\")}else{j.start_button.button(\"enable\")}l[0].scrollTop=l[0].scrollHeight;j._updateTotalProgress();if(!n.files.length&&n.features.dragdrop&&n.settings.dragdrop){g(\"#\"+o+\"_filelist\").append('<tr><td class=\"plupload_droptext\">'+b(\"Drag files here.\")+\"</td></tr>\")}else{if(j.options.sortable&&g.ui.sortable){j._enableSortingList()}}},_enableRenaming:function(){var i=this;g(\".plupload_file_name span\",this.filelist).live(\"click\",function(o){var m=g(o.target),k,n,j,l=\"\";k=i.uploader.getFile(m.parents(\"tr\")[0].id);j=k.name;n=/^(.+)(\\.[^.]+)$/.exec(j);if(n){j=n[1];l=n[2]}m.hide().after('<input class=\"plupload_file_rename\" type=\"text\" />');m.next().val(j).focus().blur(function(){m.show().next().remove()}).keydown(function(q){var p=g(this);if(g.inArray(q.keyCode,[13,27])!==-1){q.preventDefault();if(q.keyCode===13){k.name=p.val()+l;m.text(k.name)}p.blur()}})})},_enableDragAndDrop:function(){this.filelist.append('<tr><td class=\"plupload_droptext\">'+b(\"Drag files here.\")+\"</td></tr>\");this.filelist.parent().attr(\"id\",this.id+\"_dropbox\");this.uploader.settings.drop_element=this.options.drop_element=this.id+\"_dropbox\"},_enableSortingList:function(){var j,i=this;if(g(\"tbody tr\",this.filelist).length<2){return}g(\"tbody\",this.filelist).sortable({containment:\"parent\",items:\".plupload_delete\",helper:function(l,k){return k.clone(true).find(\"td:not(.plupload_file_name)\").remove().end().css(\"width\",\"100%\")},stop:function(p,o){var l,n,k,m=[];g.each(g(this).sortable(\"toArray\"),function(q,r){m[m.length]=i.uploader.getFile(r)});m.unshift(m.length);m.unshift(0);Array.prototype.splice.apply(i.uploader.files,m)}})},notify:function(j,k){var i=g('<div class=\"plupload_message\"><span class=\"plupload_message_close ui-icon ui-icon-circle-close\" title=\"'+b(\"Close\")+'\"></span><p><span class=\"ui-icon\"></span>'+k+\"</p></div>\");i.addClass(\"ui-state-\"+(j===\"error\"?\"error\":\"highlight\")).find(\"p .ui-icon\").addClass(\"ui-icon-\"+(j===\"error\"?\"alert\":\"info\")).end().find(\".plupload_message_close\").click(function(){i.remove()}).end();g(\".plupload_header_content\",this.container).append(i)},destroy:function(){g(\".plupload_button\",this.element).unbind();if(g.ui.button){g(\".plupload_add, .plupload_start, .plupload_stop\",this.container).button(\"destroy\")}if(g.ui.progressbar){this.progressbar.progressbar(\"destroy\")}if(g.ui.sortable&&this.options.sortable){g(\"tbody\",this.filelist).sortable(\"destroy\")}this.uploader.destroy();this.element.empty().html(this.contents_bak);this.contents_bak=\"\";g.Widget.prototype.destroy.apply(this)}})}(window,document,plupload,jQuery));"
  },
  {
    "path": "newscoop/js/plupload/js/plupload.browserplus.js",
    "content": "(function(a){a.runtimes.BrowserPlus=a.addRuntime(\"browserplus\",{getFeatures:function(){return{dragdrop:true,jpgresize:true,pngresize:true,chunks:true,progress:true,multipart:true,multi_selection:true}},init:function(g,i){var e=window.BrowserPlus,h={},d=g.settings,c=d.resize;function f(n){var m,l,j=[],k,o;for(l=0;l<n.length;l++){k=n[l];o=a.guid();h[o]=k;j.push(new a.File(o,k.name,k.size))}if(l){g.trigger(\"FilesAdded\",j)}}function b(){g.bind(\"PostInit\",function(){var m,k=d.drop_element,o=g.id+\"_droptarget\",j=document.getElementById(k),l;function p(r,q){e.DragAndDrop.AddDropTarget({id:r},function(s){e.DragAndDrop.AttachCallbacks({id:r,hover:function(t){if(!t&&q){q()}},drop:function(t){if(q){q()}f(t)}},function(){})})}function n(){document.getElementById(o).style.top=\"-1000px\"}if(j){if(document.attachEvent&&(/MSIE/gi).test(navigator.userAgent)){m=document.createElement(\"div\");m.setAttribute(\"id\",o);a.extend(m.style,{position:\"absolute\",top:\"-1000px\",background:\"red\",filter:\"alpha(opacity=0)\",opacity:0});document.body.appendChild(m);a.addEvent(j,\"dragenter\",function(r){var q,s;q=document.getElementById(k);s=a.getPos(q);a.extend(document.getElementById(o).style,{top:s.y+\"px\",left:s.x+\"px\",width:q.offsetWidth+\"px\",height:q.offsetHeight+\"px\"})});p(o,n)}else{p(k)}}a.addEvent(document.getElementById(d.browse_button),\"click\",function(v){var t=[],r,q,u=d.filters,s;v.preventDefault();no_type_restriction:for(r=0;r<u.length;r++){s=u[r].extensions.split(\",\");for(q=0;q<s.length;q++){if(s[q]===\"*\"){t=[];break no_type_restriction}t.push(a.mimeTypes[s[q]])}}e.FileBrowse.OpenBrowseDialog({mimeTypes:t},function(w){if(w.success){f(w.value)}})});j=m=null});g.bind(\"UploadFile\",function(m,j){var l=h[j.id],r={},k=m.settings.chunk_size,n,o=[];function q(s,u){var t;if(j.status==a.FAILED){return}r.name=j.target_name||j.name;if(k){r.chunk=\"\"+s;r.chunks=\"\"+u}t=o.shift();e.Uploader.upload({url:m.settings.url,files:{file:t},cookies:document.cookies,postvars:a.extend(r,m.settings.multipart_params),progressCallback:function(x){var w,v=0;n[s]=parseInt(x.filePercent*t.size/100,10);for(w=0;w<n.length;w++){v+=n[w]}j.loaded=v;m.trigger(\"UploadProgress\",j)}},function(w){var v,x;if(w.success){v=w.value.statusCode;if(k){m.trigger(\"ChunkUploaded\",j,{chunk:s,chunks:u,response:w.value.body,status:v})}if(o.length>0){q(++s,u)}else{j.status=a.DONE;m.trigger(\"FileUploaded\",j,{response:w.value.body,status:v});if(v>=400){m.trigger(\"Error\",{code:a.HTTP_ERROR,message:a.translate(\"HTTP Error.\"),file:j,status:v})}}}else{m.trigger(\"Error\",{code:a.GENERIC_ERROR,message:a.translate(\"Generic Error.\"),file:j,details:w.error})}})}function p(s){j.size=s.size;if(k){e.FileAccess.chunk({file:s,chunkSize:k},function(v){if(v.success){var w=v.value,t=w.length;n=Array(t);for(var u=0;u<t;u++){n[u]=0;o.push(w[u])}q(0,t)}})}else{n=Array(1);o.push(s);q(0,1)}}if(c&&/\\.(png|jpg|jpeg)$/i.test(j.name)){BrowserPlus.ImageAlter.transform({file:l,quality:c.quality||90,actions:[{scale:{maxwidth:c.width,maxheight:c.height}}]},function(s){if(s.success){p(s.value.file)}})}else{p(l)}});i({success:true})}if(e){e.init(function(k){var j=[{service:\"Uploader\",version:\"3\"},{service:\"DragAndDrop\",version:\"1\"},{service:\"FileBrowse\",version:\"1\"},{service:\"FileAccess\",version:\"2\"}];if(c){j.push({service:\"ImageAlter\",version:\"4\"})}if(k.success){e.require({services:j},function(l){if(l.success){b()}else{i()}})}else{i()}})}else{i()}}})})(plupload);"
  },
  {
    "path": "newscoop/js/plupload/js/plupload.flash.js",
    "content": "(function(f,b,d,e){var a={},g={};function c(){var h;try{h=navigator.plugins[\"Shockwave Flash\"];h=h.description}catch(j){try{h=new ActiveXObject(\"ShockwaveFlash.ShockwaveFlash\").GetVariable(\"$version\")}catch(i){h=\"0.0\"}}h=h.match(/\\d+/g);return parseFloat(h[0]+\".\"+h[1])}d.flash={trigger:function(j,h,i){setTimeout(function(){var m=a[j],l,k;if(m){m.trigger(\"Flash:\"+h,i)}},0)}};d.runtimes.Flash=d.addRuntime(\"flash\",{getFeatures:function(){return{jpgresize:true,pngresize:true,maxWidth:8091,maxHeight:8091,chunks:true,progress:true,multipart:true,multi_selection:true}},init:function(m,o){var k,l,h=0,i=b.body;if(c()<10){o({success:false});return}g[m.id]=false;a[m.id]=m;k=b.getElementById(m.settings.browse_button);l=b.createElement(\"div\");l.id=m.id+\"_flash_container\";d.extend(l.style,{position:\"absolute\",top:\"0px\",background:m.settings.shim_bgcolor||\"transparent\",zIndex:99999,width:\"100%\",height:\"100%\"});l.className=\"plupload flash\";if(m.settings.container){i=b.getElementById(m.settings.container);if(d.getStyle(i,\"position\")===\"static\"){i.style.position=\"relative\"}}i.appendChild(l);(function(){var p,q;p='<object id=\"'+m.id+'_flash\" type=\"application/x-shockwave-flash\" data=\"'+m.settings.flash_swf_url+'\" ';if(d.ua.ie){p+='classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" '}p+='width=\"100%\" height=\"100%\" style=\"outline:0\"><param name=\"movie\" value=\"'+m.settings.flash_swf_url+'\" /><param name=\"flashvars\" value=\"id='+escape(m.id)+'\" /><param name=\"wmode\" value=\"transparent\" /><param name=\"allowscriptaccess\" value=\"always\" /></object>';if(d.ua.ie){q=b.createElement(\"div\");l.appendChild(q);q.outerHTML=p;q=null}else{l.innerHTML=p}}());function n(){return b.getElementById(m.id+\"_flash\")}function j(){if(h++>5000){o({success:false});return}if(!g[m.id]){setTimeout(j,1)}}j();k=l=null;m.bind(\"Flash:Init\",function(){var q={},p;n().setFileFilters(m.settings.filters,m.settings.multi_selection);if(g[m.id]){return}g[m.id]=true;m.bind(\"UploadFile\",function(r,t){var u=r.settings,s=m.settings.resize||{};n().uploadFile(q[t.id],u.url,{name:t.target_name||t.name,mime:d.mimeTypes[t.name.replace(/^.+\\.([^.]+)/,\"$1\").toLowerCase()]||\"application/octet-stream\",chunk_size:u.chunk_size,width:s.width,height:s.height,quality:s.quality,multipart:u.multipart,multipart_params:u.multipart_params||{},file_data_name:u.file_data_name,format:/\\.(jpg|jpeg)$/i.test(t.name)?\"jpg\":\"png\",headers:u.headers,urlstream_upload:u.urlstream_upload})});m.bind(\"Flash:UploadProcess\",function(s,r){var t=s.getFile(q[r.id]);if(t.status!=d.FAILED){t.loaded=r.loaded;t.size=r.size;s.trigger(\"UploadProgress\",t)}});m.bind(\"Flash:UploadChunkComplete\",function(r,t){var u,s=r.getFile(q[t.id]);u={chunk:t.chunk,chunks:t.chunks,response:t.text};r.trigger(\"ChunkUploaded\",s,u);if(s.status!=d.FAILED){n().uploadNextChunk()}if(t.chunk==t.chunks-1){s.status=d.DONE;r.trigger(\"FileUploaded\",s,{response:t.text})}});m.bind(\"Flash:SelectFiles\",function(r,u){var t,s,v=[],w;for(s=0;s<u.length;s++){t=u[s];w=d.guid();q[w]=t.id;q[t.id]=w;v.push(new d.File(w,t.name,t.size))}if(v.length){m.trigger(\"FilesAdded\",v)}});m.bind(\"Flash:SecurityError\",function(r,s){m.trigger(\"Error\",{code:d.SECURITY_ERROR,message:d.translate(\"Security error.\"),details:s.message,file:m.getFile(q[s.id])})});m.bind(\"Flash:GenericError\",function(r,s){m.trigger(\"Error\",{code:d.GENERIC_ERROR,message:d.translate(\"Generic error.\"),details:s.message,file:m.getFile(q[s.id])})});m.bind(\"Flash:IOError\",function(r,s){m.trigger(\"Error\",{code:d.IO_ERROR,message:d.translate(\"IO error.\"),details:s.message,file:m.getFile(q[s.id])})});m.bind(\"Flash:ImageError\",function(r,s){m.trigger(\"Error\",{code:parseInt(s.code,10),message:d.translate(\"Image error.\"),file:m.getFile(q[s.id])})});m.bind(\"Flash:StageEvent:rollOver\",function(r){var s,t;s=b.getElementById(m.settings.browse_button);t=r.settings.browse_button_hover;if(s&&t){d.addClass(s,t)}});m.bind(\"Flash:StageEvent:rollOut\",function(r){var s,t;s=b.getElementById(m.settings.browse_button);t=r.settings.browse_button_hover;if(s&&t){d.removeClass(s,t)}});m.bind(\"Flash:StageEvent:mouseDown\",function(r){var s,t;s=b.getElementById(m.settings.browse_button);t=r.settings.browse_button_active;if(s&&t){d.addClass(s,t);d.addEvent(b.body,\"mouseup\",function(){d.removeClass(s,t)},r.id)}});m.bind(\"Flash:StageEvent:mouseUp\",function(r){var s,t;s=b.getElementById(m.settings.browse_button);t=r.settings.browse_button_active;if(s&&t){d.removeClass(s,t)}});m.bind(\"Flash:ExifData\",function(r,s){m.trigger(\"ExifData\",m.getFile(q[s.id]),s.data)});m.bind(\"Flash:GpsData\",function(r,s){m.trigger(\"GpsData\",m.getFile(q[s.id]),s.data)});m.bind(\"QueueChanged\",function(r){m.refresh()});m.bind(\"FilesRemoved\",function(r,t){var s;for(s=0;s<t.length;s++){n().removeFile(q[t[s].id])}});m.bind(\"StateChanged\",function(r){m.refresh()});m.bind(\"Refresh\",function(r){var s,t,u;n().setFileFilters(m.settings.filters,m.settings.multi_selection);s=b.getElementById(r.settings.browse_button);if(s){t=d.getPos(s,b.getElementById(r.settings.container));u=d.getSize(s);d.extend(b.getElementById(r.id+\"_flash_container\").style,{top:t.y+\"px\",left:t.x+\"px\",width:u.w+\"px\",height:u.h+\"px\"})}});m.bind(\"Destroy\",function(r){var s;d.removeAllEvents(b.body,r.id);delete g[r.id];delete a[r.id];s=b.getElementById(r.id+\"_flash_container\");if(s){i.removeChild(s)}});o({success:true})})}})})(window,document,plupload);"
  },
  {
    "path": "newscoop/js/plupload/js/plupload.full.js",
    "content": "/*1.5.1.1*/\n(function(){var f=0,l=[],n={},j={},a={\"<\":\"lt\",\">\":\"gt\",\"&\":\"amp\",'\"':\"quot\",\"'\":\"#39\"},m=/[<>&\\\"\\']/g,b,c=window.setTimeout,d={},e;function h(){this.returnValue=false}function k(){this.cancelBubble=true}(function(o){var p=o.split(/,/),q,s,r;for(q=0;q<p.length;q+=2){r=p[q+1].split(/ /);for(s=0;s<r.length;s++){j[r[s]]=p[q]}}})(\"application/msword,doc dot,application/pdf,pdf,application/pgp-signature,pgp,application/postscript,ps ai eps,application/rtf,rtf,application/vnd.ms-excel,xls xlb,application/vnd.ms-powerpoint,ppt pps pot,application/zip,zip,application/x-shockwave-flash,swf swfl,application/vnd.openxmlformats,docx pptx xlsx,audio/mpeg,mpga mpega mp2 mp3,audio/x-wav,wav,audio/mp4,m4a,image/bmp,bmp,image/gif,gif,image/jpeg,jpeg jpg jpe,image/photoshop,psd,image/png,png,image/svg+xml,svg svgz,image/tiff,tiff tif,text/html,htm html xhtml,text/rtf,rtf,video/mpeg,mpeg mpg mpe,video/quicktime,qt mov,video/mp4,mp4,video/x-m4v,m4v,video/x-flv,flv,video/x-ms-wmv,wmv,video/avi,avi,video/webm,webm,video/vnd.rn-realvideo,rv,text/csv,csv,text/plain,asc txt text diff log,application/octet-stream,exe\");var g={VERSION:\"1.5.1.1\",STOPPED:1,STARTED:2,QUEUED:1,UPLOADING:2,FAILED:4,DONE:5,GENERIC_ERROR:-100,HTTP_ERROR:-200,IO_ERROR:-300,SECURITY_ERROR:-400,INIT_ERROR:-500,FILE_SIZE_ERROR:-600,FILE_EXTENSION_ERROR:-601,IMAGE_FORMAT_ERROR:-700,IMAGE_MEMORY_ERROR:-701,IMAGE_DIMENSIONS_ERROR:-702,mimeTypes:j,ua:(function(){var s=navigator,r=s.userAgent,t=s.vendor,p,o,q;p=/WebKit/.test(r);q=p&&t.indexOf(\"Apple\")!==-1;o=window.opera&&window.opera.buildNumber;return{windows:navigator.platform.indexOf(\"Win\")!==-1,ie:!p&&!o&&(/MSIE/gi).test(r)&&(/Explorer/gi).test(s.appName),webkit:p,gecko:!p&&/Gecko/.test(r),safari:q,opera:!!o}}()),extend:function(o){g.each(arguments,function(p,q){if(q>0){g.each(p,function(s,r){o[r]=s})}});return o},cleanName:function(o){var p,q;q=[/[\\300-\\306]/g,\"A\",/[\\340-\\346]/g,\"a\",/\\307/g,\"C\",/\\347/g,\"c\",/[\\310-\\313]/g,\"E\",/[\\350-\\353]/g,\"e\",/[\\314-\\317]/g,\"I\",/[\\354-\\357]/g,\"i\",/\\321/g,\"N\",/\\361/g,\"n\",/[\\322-\\330]/g,\"O\",/[\\362-\\370]/g,\"o\",/[\\331-\\334]/g,\"U\",/[\\371-\\374]/g,\"u\"];for(p=0;p<q.length;p+=2){o=o.replace(q[p],q[p+1])}o=o.replace(/\\s+/g,\"_\");o=o.replace(/[^a-z0-9_\\-\\.]+/gi,\"\");return o},addRuntime:function(o,p){p.name=o;l[o]=p;l.push(p);return p},guid:function(){var o=new Date().getTime().toString(32),p;for(p=0;p<5;p++){o+=Math.floor(Math.random()*65535).toString(32)}return(g.guidPrefix||\"p\")+o+(f++).toString(32)},buildUrl:function(p,o){var q=\"\";g.each(o,function(s,r){q+=(q?\"&\":\"\")+encodeURIComponent(r)+\"=\"+encodeURIComponent(s)});if(q){p+=(p.indexOf(\"?\")>0?\"&\":\"?\")+q}return p},each:function(r,s){var q,p,o;if(r){q=r.length;if(q===b){for(p in r){if(r.hasOwnProperty(p)){if(s(r[p],p)===false){return}}}}else{for(o=0;o<q;o++){if(s(r[o],o)===false){return}}}}},formatSize:function(o){if(o===b||/\\D/.test(o)){return g.translate(\"N/A\")}if(o>1073741824){return Math.round(o/1073741824,1)+\" GB\"}if(o>1048576){return Math.round(o/1048576,1)+\" MB\"}if(o>1024){return Math.round(o/1024,1)+\" KB\"}return o+\" b\"},getPos:function(p,t){var u=0,s=0,w,v=document,q,r;p=p;t=t||v.body;function o(C){var A,B,z=0,D=0;if(C){B=C.getBoundingClientRect();A=v.compatMode===\"CSS1Compat\"?v.documentElement:v.body;z=B.left+A.scrollLeft;D=B.top+A.scrollTop}return{x:z,y:D}}if(p&&p.getBoundingClientRect&&(navigator.userAgent.indexOf(\"MSIE\")>0&&v.documentMode!==8)){q=o(p);r=o(t);return{x:q.x-r.x,y:q.y-r.y}}w=p;while(w&&w!=t&&w.nodeType){u+=w.offsetLeft||0;s+=w.offsetTop||0;w=w.offsetParent}w=p.parentNode;while(w&&w!=t&&w.nodeType){u-=w.scrollLeft||0;s-=w.scrollTop||0;w=w.parentNode}return{x:u,y:s}},getSize:function(o){return{w:o.offsetWidth||o.clientWidth,h:o.offsetHeight||o.clientHeight}},parseSize:function(o){var p;if(typeof(o)==\"string\"){o=/^([0-9]+)([mgk]?)$/.exec(o.toLowerCase().replace(/[^0-9mkg]/g,\"\"));p=o[2];o=+o[1];if(p==\"g\"){o*=1073741824}if(p==\"m\"){o*=1048576}if(p==\"k\"){o*=1024}}return o},xmlEncode:function(o){return o?(\"\"+o).replace(m,function(p){return a[p]?\"&\"+a[p]+\";\":p}):o},toArray:function(q){var p,o=[];for(p=0;p<q.length;p++){o[p]=q[p]}return o},addI18n:function(o){return g.extend(n,o)},translate:function(o){return n[o]||o},isEmptyObj:function(o){if(o===b){return true}for(var p in o){return false}return true},hasClass:function(q,p){var o;if(q.className==\"\"){return false}o=new RegExp(\"(^|\\\\s+)\"+p+\"(\\\\s+|$)\");return o.test(q.className)},addClass:function(p,o){if(!g.hasClass(p,o)){p.className=p.className==\"\"?o:p.className.replace(/\\s+$/,\"\")+\" \"+o}},removeClass:function(q,p){var o=new RegExp(\"(^|\\\\s+)\"+p+\"(\\\\s+|$)\");q.className=q.className.replace(o,function(s,r,t){return r===\" \"&&t===\" \"?\" \":\"\"})},getStyle:function(p,o){if(p.currentStyle){return p.currentStyle[o]}else{if(window.getComputedStyle){return window.getComputedStyle(p,null)[o]}}},addEvent:function(t,o,u){var s,r,q,p;p=arguments[3];o=o.toLowerCase();if(e===b){e=\"Plupload_\"+g.guid()}if(t.addEventListener){s=u;t.addEventListener(o,s,false)}else{if(t.attachEvent){s=function(){var v=window.event;if(!v.target){v.target=v.srcElement}v.preventDefault=h;v.stopPropagation=k;u(v)};t.attachEvent(\"on\"+o,s)}}if(t[e]===b){t[e]=g.guid()}if(!d.hasOwnProperty(t[e])){d[t[e]]={}}r=d[t[e]];if(!r.hasOwnProperty(o)){r[o]=[]}r[o].push({func:s,orig:u,key:p})},removeEvent:function(t,o){var r,u,q;if(typeof(arguments[2])==\"function\"){u=arguments[2]}else{q=arguments[2]}o=o.toLowerCase();if(t[e]&&d[t[e]]&&d[t[e]][o]){r=d[t[e]][o]}else{return}for(var p=r.length-1;p>=0;p--){if(r[p].key===q||r[p].orig===u){if(t.detachEvent){t.detachEvent(\"on\"+o,r[p].func)}else{if(t.removeEventListener){t.removeEventListener(o,r[p].func,false)}}r[p].orig=null;r[p].func=null;r.splice(p,1);if(u!==b){break}}}if(!r.length){delete d[t[e]][o]}if(g.isEmptyObj(d[t[e]])){delete d[t[e]];try{delete t[e]}catch(s){t[e]=b}}},removeAllEvents:function(p){var o=arguments[1];if(p[e]===b||!p[e]){return}g.each(d[p[e]],function(r,q){g.removeEvent(p,q,o)})}};g.Uploader=function(r){var p={},u,t=[],q;u=new g.QueueProgress();r=g.extend({chunk_size:0,multipart:true,multi_selection:true,file_data_name:\"file\",filters:[]},r);function s(){var w,x=0,v;if(this.state==g.STARTED){for(v=0;v<t.length;v++){if(!w&&t[v].status==g.QUEUED){w=t[v];w.status=g.UPLOADING;if(this.trigger(\"BeforeUpload\",w)){this.trigger(\"UploadFile\",w)}}else{x++}}if(x==t.length){this.stop();this.trigger(\"UploadComplete\",t)}}}function o(){var w,v;u.reset();for(w=0;w<t.length;w++){v=t[w];if(v.size!==b){u.size+=v.size;u.loaded+=v.loaded}else{u.size=b}if(v.status==g.DONE){u.uploaded++}else{if(v.status==g.FAILED){u.failed++}else{u.queued++}}}if(u.size===b){u.percent=t.length>0?Math.ceil(u.uploaded/t.length*100):0}else{u.bytesPerSec=Math.ceil(u.loaded/((+new Date()-q||1)/1000));u.percent=u.size>0?Math.ceil(u.loaded/u.size*100):0}}g.extend(this,{state:g.STOPPED,runtime:\"\",features:{},files:t,settings:r,total:u,id:g.guid(),init:function(){var A=this,B,x,w,z=0,y;if(typeof(r.preinit)==\"function\"){r.preinit(A)}else{g.each(r.preinit,function(D,C){A.bind(C,D)})}r.page_url=r.page_url||document.location.pathname.replace(/\\/[^\\/]+$/g,\"/\");if(!/^(\\w+:\\/\\/|\\/)/.test(r.url)){r.url=r.page_url+r.url}r.chunk_size=g.parseSize(r.chunk_size);r.max_file_size=g.parseSize(r.max_file_size);A.bind(\"FilesAdded\",function(C,F){var E,D,H=0,I,G=r.filters;if(G&&G.length){I=[];g.each(G,function(J){g.each(J.extensions.split(/,/),function(K){if(/^\\s*\\*\\s*$/.test(K)){I.push(\"\\\\.*\")}else{I.push(\"\\\\.\"+K.replace(new RegExp(\"[\"+(\"/^$.*+?|()[]{}\\\\\".replace(/./g,\"\\\\$&\"))+\"]\",\"g\"),\"\\\\$&\"))}})});I=new RegExp(I.join(\"|\")+\"$\",\"i\")}for(E=0;E<F.length;E++){D=F[E];D.loaded=0;D.percent=0;D.status=g.QUEUED;if(I&&!I.test(D.name)){C.trigger(\"Error\",{code:g.FILE_EXTENSION_ERROR,message:g.translate(\"File extension error.\"),file:D});continue}if(D.size!==b&&D.size>r.max_file_size){C.trigger(\"Error\",{code:g.FILE_SIZE_ERROR,message:g.translate(\"File size error.\"),file:D});continue}t.push(D);H++}if(H){c(function(){A.trigger(\"QueueChanged\");A.refresh()},1)}else{return false}});if(r.unique_names){A.bind(\"UploadFile\",function(C,D){var F=D.name.match(/\\.([^.]+)$/),E=\"tmp\";if(F){E=F[1]}D.target_name=D.id+\".\"+E})}A.bind(\"UploadProgress\",function(C,D){D.percent=D.size>0?Math.ceil(D.loaded/D.size*100):100;o()});A.bind(\"StateChanged\",function(C){if(C.state==g.STARTED){q=(+new Date())}else{if(C.state==g.STOPPED){for(B=C.files.length-1;B>=0;B--){if(C.files[B].status==g.UPLOADING){C.files[B].status=g.QUEUED;o()}}}}});A.bind(\"QueueChanged\",o);A.bind(\"Error\",function(C,D){if(D.file){D.file.status=g.FAILED;o();if(C.state==g.STARTED){c(function(){s.call(A)},1)}}});A.bind(\"FileUploaded\",function(C,D){D.status=g.DONE;D.loaded=D.size;C.trigger(\"UploadProgress\",D);c(function(){s.call(A)},1)});if(r.runtimes){x=[];y=r.runtimes.split(/\\s?,\\s?/);for(B=0;B<y.length;B++){if(l[y[B]]){x.push(l[y[B]])}}}else{x=l}function v(){var F=x[z++],E,C,D;if(F){E=F.getFeatures();C=A.settings.required_features;if(C){C=C.split(\",\");for(D=0;D<C.length;D++){if(!E[C[D]]){v();return}}}F.init(A,function(G){if(G&&G.success){A.features=E;A.runtime=F.name;A.trigger(\"Init\",{runtime:F.name});A.trigger(\"PostInit\");A.refresh()}else{v()}})}else{A.trigger(\"Error\",{code:g.INIT_ERROR,message:g.translate(\"Init error.\")})}}v();if(typeof(r.init)==\"function\"){r.init(A)}else{g.each(r.init,function(D,C){A.bind(C,D)})}},refresh:function(){this.trigger(\"Refresh\")},start:function(){if(this.state!=g.STARTED){this.state=g.STARTED;this.trigger(\"StateChanged\");s.call(this)}},stop:function(){if(this.state!=g.STOPPED){this.state=g.STOPPED;this.trigger(\"StateChanged\")}},getFile:function(w){var v;for(v=t.length-1;v>=0;v--){if(t[v].id===w){return t[v]}}},removeFile:function(w){var v;for(v=t.length-1;v>=0;v--){if(t[v].id===w.id){return this.splice(v,1)[0]}}},splice:function(x,v){var w;w=t.splice(x===b?0:x,v===b?t.length:v);this.trigger(\"FilesRemoved\",w);this.trigger(\"QueueChanged\");return w},trigger:function(w){var y=p[w.toLowerCase()],x,v;if(y){v=Array.prototype.slice.call(arguments);v[0]=this;for(x=0;x<y.length;x++){if(y[x].func.apply(y[x].scope,v)===false){return false}}}return true},hasEventListener:function(v){return !!p[v.toLowerCase()]},bind:function(v,x,w){var y;v=v.toLowerCase();y=p[v]||[];y.push({func:x,scope:w||this});p[v]=y},unbind:function(v){v=v.toLowerCase();var y=p[v],w,x=arguments[1];if(y){if(x!==b){for(w=y.length-1;w>=0;w--){if(y[w].func===x){y.splice(w,1);break}}}else{y=[]}if(!y.length){delete p[v]}}},unbindAll:function(){var v=this;g.each(p,function(x,w){v.unbind(w)})},destroy:function(){this.trigger(\"Destroy\");this.unbindAll()}})};g.File=function(r,p,q){var o=this;o.id=r;o.name=p;o.size=q;o.loaded=0;o.percent=0;o.status=0};g.Runtime=function(){this.getFeatures=function(){};this.init=function(o,p){}};g.QueueProgress=function(){var o=this;o.size=0;o.loaded=0;o.uploaded=0;o.failed=0;o.queued=0;o.percent=0;o.bytesPerSec=0;o.reset=function(){o.size=o.loaded=o.uploaded=o.failed=o.queued=o.percent=o.bytesPerSec=0}};g.runtimes={};window.plupload=g})();(function(){if(window.google&&google.gears){return}var a=null;if(typeof GearsFactory!=\"undefined\"){a=new GearsFactory()}else{try{a=new ActiveXObject(\"Gears.Factory\");if(a.getBuildInfo().indexOf(\"ie_mobile\")!=-1){a.privateSetGlobalObject(this)}}catch(b){if((typeof navigator.mimeTypes!=\"undefined\")&&navigator.mimeTypes[\"application/x-googlegears\"]){a=document.createElement(\"object\");a.style.display=\"none\";a.width=0;a.height=0;a.type=\"application/x-googlegears\";document.documentElement.appendChild(a)}}}if(!a){return}if(!window.google){window.google={}}if(!google.gears){google.gears={factory:a}}})();(function(e,b,c,d){var f={};function a(h,k,m){var g,j,l,o;j=google.gears.factory.create(\"beta.canvas\");try{j.decode(h);if(!k.width){k.width=j.width}if(!k.height){k.height=j.height}o=Math.min(width/j.width,height/j.height);if(o<1||(o===1&&m===\"image/jpeg\")){j.resize(Math.round(j.width*o),Math.round(j.height*o));if(k.quality){return j.encode(m,{quality:k.quality/100})}return j.encode(m)}}catch(n){}return h}c.runtimes.Gears=c.addRuntime(\"gears\",{getFeatures:function(){return{dragdrop:true,jpgresize:true,pngresize:true,chunks:true,progress:true,multipart:true,multi_selection:true}},init:function(j,l){var k;if(!e.google||!google.gears){return l({success:false})}try{k=google.gears.factory.create(\"beta.desktop\")}catch(h){return l({success:false})}function g(o){var n,m,p=[],q;for(m=0;m<o.length;m++){n=o[m];q=c.guid();f[q]=n.blob;p.push(new c.File(q,n.name,n.blob.length))}j.trigger(\"FilesAdded\",p)}j.bind(\"PostInit\",function(){var n=j.settings,m=b.getElementById(n.drop_element);if(m){c.addEvent(m,\"dragover\",function(o){k.setDropEffect(o,\"copy\");o.preventDefault()},j.id);c.addEvent(m,\"drop\",function(p){var o=k.getDragData(p,\"application/x-gears-files\");if(o){g(o.files)}p.preventDefault()},j.id);m=0}c.addEvent(b.getElementById(n.browse_button),\"click\",function(s){var r=[],p,o,q;s.preventDefault();no_type_restriction:for(p=0;p<n.filters.length;p++){q=n.filters[p].extensions.split(\",\");for(o=0;o<q.length;o++){if(q[o]===\"*\"){r=[];break no_type_restriction}r.push(\".\"+q[o])}}k.openFiles(g,{singleFile:!n.multi_selection,filter:r})},j.id)});j.bind(\"UploadFile\",function(s,p){var u=0,t,q,r=0,o=s.settings.resize,m;if(o&&/\\.(png|jpg|jpeg)$/i.test(p.name)){f[p.id]=a(f[p.id],o,/\\.png$/i.test(p.name)?\"image/png\":\"image/jpeg\")}p.size=f[p.id].length;q=s.settings.chunk_size;m=q>0;t=Math.ceil(p.size/q);if(!m){q=p.size;t=1}function n(){var z,B,w=s.settings.multipart,v=0,A={name:p.target_name||p.name},x=s.settings.url;function y(D){var C,I=\"----pluploadboundary\"+c.guid(),F=\"--\",H=\"\\r\\n\",E,G;if(w){z.setRequestHeader(\"Content-Type\",\"multipart/form-data; boundary=\"+I);C=google.gears.factory.create(\"beta.blobbuilder\");c.each(c.extend(A,s.settings.multipart_params),function(K,J){C.append(F+I+H+'Content-Disposition: form-data; name=\"'+J+'\"'+H+H);C.append(K+H)});G=c.mimeTypes[p.name.replace(/^.+\\.([^.]+)/,\"$1\").toLowerCase()]||\"application/octet-stream\";C.append(F+I+H+'Content-Disposition: form-data; name=\"'+s.settings.file_data_name+'\"; filename=\"'+p.name+'\"'+H+\"Content-Type: \"+G+H+H);C.append(D);C.append(H+F+I+F+H);E=C.getAsBlob();v=E.length-D.length;D=E}z.send(D)}if(p.status==c.DONE||p.status==c.FAILED||s.state==c.STOPPED){return}if(m){A.chunk=u;A.chunks=t}B=Math.min(q,p.size-(u*q));if(!w){x=c.buildUrl(s.settings.url,A)}z=google.gears.factory.create(\"beta.httprequest\");z.open(\"POST\",x);if(!w){z.setRequestHeader(\"Content-Disposition\",'attachment; filename=\"'+p.name+'\"');z.setRequestHeader(\"Content-Type\",\"application/octet-stream\")}c.each(s.settings.headers,function(D,C){z.setRequestHeader(C,D)});z.upload.onprogress=function(C){p.loaded=r+C.loaded-v;s.trigger(\"UploadProgress\",p)};z.onreadystatechange=function(){var C;if(z.readyState==4){if(z.status==200){C={chunk:u,chunks:t,response:z.responseText,status:z.status};s.trigger(\"ChunkUploaded\",p,C);if(C.cancelled){p.status=c.FAILED;return}r+=B;if(++u>=t){p.status=c.DONE;s.trigger(\"FileUploaded\",p,{response:z.responseText,status:z.status})}else{n()}}else{s.trigger(\"Error\",{code:c.HTTP_ERROR,message:c.translate(\"HTTP Error.\"),file:p,chunk:u,chunks:t,status:z.status})}}};if(u<t){y(f[p.id].slice(u*q,B))}}n()});j.bind(\"Destroy\",function(m){var n,o,p={browseButton:m.settings.browse_button,dropElm:m.settings.drop_element};for(n in p){o=b.getElementById(p[n]);if(o){c.removeAllEvents(o,m.id)}}});l({success:true})}})})(window,document,plupload);(function(g,b,d,e){var a={},h={};function c(o){var n,m=typeof o,j,l,k;if(o===e||o===null){return\"null\"}if(m===\"string\"){n=\"\\bb\\tt\\nn\\ff\\rr\\\"\\\"''\\\\\\\\\";return'\"'+o.replace(/([\\u0080-\\uFFFF\\x00-\\x1f\\\"])/g,function(r,q){var p=n.indexOf(q);if(p+1){return\"\\\\\"+n.charAt(p+1)}r=q.charCodeAt().toString(16);return\"\\\\u\"+\"0000\".substring(r.length)+r})+'\"'}if(m==\"object\"){j=o.length!==e;n=\"\";if(j){for(l=0;l<o.length;l++){if(n){n+=\",\"}n+=c(o[l])}n=\"[\"+n+\"]\"}else{for(k in o){if(o.hasOwnProperty(k)){if(n){n+=\",\"}n+=c(k)+\":\"+c(o[k])}}n=\"{\"+n+\"}\"}return n}return\"\"+o}function f(s){var v=false,j=null,o=null,k,l,m,u,n,q=0;try{try{o=new ActiveXObject(\"AgControl.AgControl\");if(o.IsVersionSupported(s)){v=true}o=null}catch(r){var p=navigator.plugins[\"Silverlight Plug-In\"];if(p){k=p.description;if(k===\"1.0.30226.2\"){k=\"2.0.30226.2\"}l=k.split(\".\");while(l.length>3){l.pop()}while(l.length<4){l.push(0)}m=s.split(\".\");while(m.length>4){m.pop()}do{u=parseInt(m[q],10);n=parseInt(l[q],10);q++}while(q<m.length&&u===n);if(u<=n&&!isNaN(u)){v=true}}}}catch(t){v=false}return v}d.silverlight={trigger:function(n,k){var m=a[n],l,j;if(m){j=d.toArray(arguments).slice(1);j[0]=\"Silverlight:\"+k;setTimeout(function(){m.trigger.apply(m,j)},0)}}};d.runtimes.Silverlight=d.addRuntime(\"silverlight\",{getFeatures:function(){return{jpgresize:true,pngresize:true,chunks:true,progress:true,multipart:true,multi_selection:true}},init:function(p,q){var o,m=\"\",n=p.settings.filters,l,k=b.body;if(!f(\"2.0.31005.0\")||(g.opera&&g.opera.buildNumber)){q({success:false});return}h[p.id]=false;a[p.id]=p;o=b.createElement(\"div\");o.id=p.id+\"_silverlight_container\";d.extend(o.style,{position:\"absolute\",top:\"0px\",background:p.settings.shim_bgcolor||\"transparent\",zIndex:99999,width:\"100px\",height:\"100px\",overflow:\"hidden\",opacity:p.settings.shim_bgcolor||b.documentMode>8?\"\":0.01});o.className=\"plupload silverlight\";if(p.settings.container){k=b.getElementById(p.settings.container);if(d.getStyle(k,\"position\")===\"static\"){k.style.position=\"relative\"}}k.appendChild(o);for(l=0;l<n.length;l++){m+=(m!=\"\"?\"|\":\"\")+n[l].title+\" | *.\"+n[l].extensions.replace(/,/g,\";*.\")}o.innerHTML='<object id=\"'+p.id+'_silverlight\" data=\"data:application/x-silverlight,\" type=\"application/x-silverlight-2\" style=\"outline:none;\" width=\"1024\" height=\"1024\"><param name=\"source\" value=\"'+p.settings.silverlight_xap_url+'\"/><param name=\"background\" value=\"Transparent\"/><param name=\"windowless\" value=\"true\"/><param name=\"enablehtmlaccess\" value=\"true\"/><param name=\"initParams\" value=\"id='+p.id+\",filter=\"+m+\",multiselect=\"+p.settings.multi_selection+'\"/></object>';function j(){return b.getElementById(p.id+\"_silverlight\").content.Upload}p.bind(\"Silverlight:Init\",function(){var r,s={};if(h[p.id]){return}h[p.id]=true;p.bind(\"Silverlight:StartSelectFiles\",function(t){r=[]});p.bind(\"Silverlight:SelectFile\",function(t,w,u,v){var x;x=d.guid();s[x]=w;s[w]=x;r.push(new d.File(x,u,v))});p.bind(\"Silverlight:SelectSuccessful\",function(){if(r.length){p.trigger(\"FilesAdded\",r)}});p.bind(\"Silverlight:UploadChunkError\",function(t,w,u,x,v){p.trigger(\"Error\",{code:d.IO_ERROR,message:\"IO Error.\",details:v,file:t.getFile(s[w])})});p.bind(\"Silverlight:UploadFileProgress\",function(t,x,u,w){var v=t.getFile(s[x]);if(v.status!=d.FAILED){v.size=w;v.loaded=u;t.trigger(\"UploadProgress\",v)}});p.bind(\"Refresh\",function(t){var u,v,w;u=b.getElementById(t.settings.browse_button);if(u){v=d.getPos(u,b.getElementById(t.settings.container));w=d.getSize(u);d.extend(b.getElementById(t.id+\"_silverlight_container\").style,{top:v.y+\"px\",left:v.x+\"px\",width:w.w+\"px\",height:w.h+\"px\"})}});p.bind(\"Silverlight:UploadChunkSuccessful\",function(t,w,u,z,y){var x,v=t.getFile(s[w]);x={chunk:u,chunks:z,response:y};t.trigger(\"ChunkUploaded\",v,x);if(v.status!=d.FAILED){j().UploadNextChunk()}if(u==z-1){v.status=d.DONE;t.trigger(\"FileUploaded\",v,{response:y})}});p.bind(\"Silverlight:UploadSuccessful\",function(t,w,u){var v=t.getFile(s[w]);v.status=d.DONE;t.trigger(\"FileUploaded\",v,{response:u})});p.bind(\"FilesRemoved\",function(t,v){var u;for(u=0;u<v.length;u++){j().RemoveFile(s[v[u].id])}});p.bind(\"UploadFile\",function(t,v){var w=t.settings,u=w.resize||{};j().UploadFile(s[v.id],t.settings.url,c({name:v.target_name||v.name,mime:d.mimeTypes[v.name.replace(/^.+\\.([^.]+)/,\"$1\").toLowerCase()]||\"application/octet-stream\",chunk_size:w.chunk_size,image_width:u.width,image_height:u.height,image_quality:u.quality||90,multipart:!!w.multipart,multipart_params:w.multipart_params||{},file_data_name:w.file_data_name,headers:w.headers}))});p.bind(\"Silverlight:MouseEnter\",function(t){var u,v;u=b.getElementById(p.settings.browse_button);v=t.settings.browse_button_hover;if(u&&v){d.addClass(u,v)}});p.bind(\"Silverlight:MouseLeave\",function(t){var u,v;u=b.getElementById(p.settings.browse_button);v=t.settings.browse_button_hover;if(u&&v){d.removeClass(u,v)}});p.bind(\"Silverlight:MouseLeftButtonDown\",function(t){var u,v;u=b.getElementById(p.settings.browse_button);v=t.settings.browse_button_active;if(u&&v){d.addClass(u,v);d.addEvent(b.body,\"mouseup\",function(){d.removeClass(u,v)})}});p.bind(\"Sliverlight:StartSelectFiles\",function(t){var u,v;u=b.getElementById(p.settings.browse_button);v=t.settings.browse_button_active;if(u&&v){d.removeClass(u,v)}});p.bind(\"Destroy\",function(t){var u;d.removeAllEvents(b.body,t.id);delete h[t.id];delete a[t.id];u=b.getElementById(t.id+\"_silverlight_container\");if(u){k.removeChild(u)}});q({success:true})})}})})(window,document,plupload);(function(f,b,d,e){var a={},g={};function c(){var h;try{h=navigator.plugins[\"Shockwave Flash\"];h=h.description}catch(k){try{h=new ActiveXObject(\"ShockwaveFlash.ShockwaveFlash\").GetVariable(\"$version\")}catch(j){h=\"0.0\"}}h=h.match(/\\d+/g);return parseFloat(h[0]+\".\"+h[1])}d.flash={trigger:function(k,h,j){setTimeout(function(){var n=a[k],m,l;if(n){n.trigger(\"Flash:\"+h,j)}},0)}};d.runtimes.Flash=d.addRuntime(\"flash\",{getFeatures:function(){return{jpgresize:true,pngresize:true,maxWidth:8091,maxHeight:8091,chunks:true,progress:true,multipart:true,multi_selection:true}},init:function(n,p){var l,m,h=0,j=b.body;if(c()<10){p({success:false});return}g[n.id]=false;a[n.id]=n;l=b.getElementById(n.settings.browse_button);m=b.createElement(\"div\");m.id=n.id+\"_flash_container\";d.extend(m.style,{position:\"absolute\",top:\"0px\",background:n.settings.shim_bgcolor||\"transparent\",zIndex:99999,width:\"100%\",height:\"100%\"});m.className=\"plupload flash\";if(n.settings.container){j=b.getElementById(n.settings.container);if(d.getStyle(j,\"position\")===\"static\"){j.style.position=\"relative\"}}j.appendChild(m);(function(){var q,r;q='<object id=\"'+n.id+'_flash\" type=\"application/x-shockwave-flash\" data=\"'+n.settings.flash_swf_url+'\" ';if(d.ua.ie){q+='classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" '}q+='width=\"100%\" height=\"100%\" style=\"outline:0\"><param name=\"movie\" value=\"'+n.settings.flash_swf_url+'\" /><param name=\"flashvars\" value=\"id='+escape(n.id)+'\" /><param name=\"wmode\" value=\"transparent\" /><param name=\"allowscriptaccess\" value=\"always\" /></object>';if(d.ua.ie){r=b.createElement(\"div\");m.appendChild(r);r.outerHTML=q;r=null}else{m.innerHTML=q}}());function o(){return b.getElementById(n.id+\"_flash\")}function k(){if(h++>5000){p({success:false});return}if(!g[n.id]){setTimeout(k,1)}}k();l=m=null;n.bind(\"Flash:Init\",function(){var r={},q;o().setFileFilters(n.settings.filters,n.settings.multi_selection);if(g[n.id]){return}g[n.id]=true;n.bind(\"UploadFile\",function(s,u){var v=s.settings,t=n.settings.resize||{};o().uploadFile(r[u.id],v.url,{name:u.target_name||u.name,mime:d.mimeTypes[u.name.replace(/^.+\\.([^.]+)/,\"$1\").toLowerCase()]||\"application/octet-stream\",chunk_size:v.chunk_size,width:t.width,height:t.height,quality:t.quality,multipart:v.multipart,multipart_params:v.multipart_params||{},file_data_name:v.file_data_name,format:/\\.(jpg|jpeg)$/i.test(u.name)?\"jpg\":\"png\",headers:v.headers,urlstream_upload:v.urlstream_upload})});n.bind(\"Flash:UploadProcess\",function(t,s){var u=t.getFile(r[s.id]);if(u.status!=d.FAILED){u.loaded=s.loaded;u.size=s.size;t.trigger(\"UploadProgress\",u)}});n.bind(\"Flash:UploadChunkComplete\",function(s,u){var v,t=s.getFile(r[u.id]);v={chunk:u.chunk,chunks:u.chunks,response:u.text};s.trigger(\"ChunkUploaded\",t,v);if(t.status!=d.FAILED){o().uploadNextChunk()}if(u.chunk==u.chunks-1){t.status=d.DONE;s.trigger(\"FileUploaded\",t,{response:u.text})}});n.bind(\"Flash:SelectFiles\",function(s,v){var u,t,w=[],x;for(t=0;t<v.length;t++){u=v[t];x=d.guid();r[x]=u.id;r[u.id]=x;w.push(new d.File(x,u.name,u.size))}if(w.length){n.trigger(\"FilesAdded\",w)}});n.bind(\"Flash:SecurityError\",function(s,t){n.trigger(\"Error\",{code:d.SECURITY_ERROR,message:d.translate(\"Security error.\"),details:t.message,file:n.getFile(r[t.id])})});n.bind(\"Flash:GenericError\",function(s,t){n.trigger(\"Error\",{code:d.GENERIC_ERROR,message:d.translate(\"Generic error.\"),details:t.message,file:n.getFile(r[t.id])})});n.bind(\"Flash:IOError\",function(s,t){n.trigger(\"Error\",{code:d.IO_ERROR,message:d.translate(\"IO error.\"),details:t.message,file:n.getFile(r[t.id])})});n.bind(\"Flash:ImageError\",function(s,t){n.trigger(\"Error\",{code:parseInt(t.code,10),message:d.translate(\"Image error.\"),file:n.getFile(r[t.id])})});n.bind(\"Flash:StageEvent:rollOver\",function(s){var t,u;t=b.getElementById(n.settings.browse_button);u=s.settings.browse_button_hover;if(t&&u){d.addClass(t,u)}});n.bind(\"Flash:StageEvent:rollOut\",function(s){var t,u;t=b.getElementById(n.settings.browse_button);u=s.settings.browse_button_hover;if(t&&u){d.removeClass(t,u)}});n.bind(\"Flash:StageEvent:mouseDown\",function(s){var t,u;t=b.getElementById(n.settings.browse_button);u=s.settings.browse_button_active;if(t&&u){d.addClass(t,u);d.addEvent(b.body,\"mouseup\",function(){d.removeClass(t,u)},s.id)}});n.bind(\"Flash:StageEvent:mouseUp\",function(s){var t,u;t=b.getElementById(n.settings.browse_button);u=s.settings.browse_button_active;if(t&&u){d.removeClass(t,u)}});n.bind(\"Flash:ExifData\",function(s,t){n.trigger(\"ExifData\",n.getFile(r[t.id]),t.data)});n.bind(\"Flash:GpsData\",function(s,t){n.trigger(\"GpsData\",n.getFile(r[t.id]),t.data)});n.bind(\"QueueChanged\",function(s){n.refresh()});n.bind(\"FilesRemoved\",function(s,u){var t;for(t=0;t<u.length;t++){o().removeFile(r[u[t].id])}});n.bind(\"StateChanged\",function(s){n.refresh()});n.bind(\"Refresh\",function(s){var t,u,v;o().setFileFilters(n.settings.filters,n.settings.multi_selection);t=b.getElementById(s.settings.browse_button);if(t){u=d.getPos(t,b.getElementById(s.settings.container));v=d.getSize(t);d.extend(b.getElementById(s.id+\"_flash_container\").style,{top:u.y+\"px\",left:u.x+\"px\",width:v.w+\"px\",height:v.h+\"px\"})}});n.bind(\"Destroy\",function(s){var t;d.removeAllEvents(b.body,s.id);delete g[s.id];delete a[s.id];t=b.getElementById(s.id+\"_flash_container\");if(t){j.removeChild(t)}});p({success:true})})}})})(window,document,plupload);(function(a){a.runtimes.BrowserPlus=a.addRuntime(\"browserplus\",{getFeatures:function(){return{dragdrop:true,jpgresize:true,pngresize:true,chunks:true,progress:true,multipart:true,multi_selection:true}},init:function(g,j){var e=window.BrowserPlus,h={},d=g.settings,c=d.resize;function f(o){var n,m,k=[],l,p;for(m=0;m<o.length;m++){l=o[m];p=a.guid();h[p]=l;k.push(new a.File(p,l.name,l.size))}if(m){g.trigger(\"FilesAdded\",k)}}function b(){g.bind(\"PostInit\",function(){var n,l=d.drop_element,p=g.id+\"_droptarget\",k=document.getElementById(l),m;function q(s,r){e.DragAndDrop.AddDropTarget({id:s},function(t){e.DragAndDrop.AttachCallbacks({id:s,hover:function(u){if(!u&&r){r()}},drop:function(u){if(r){r()}f(u)}},function(){})})}function o(){document.getElementById(p).style.top=\"-1000px\"}if(k){if(document.attachEvent&&(/MSIE/gi).test(navigator.userAgent)){n=document.createElement(\"div\");n.setAttribute(\"id\",p);a.extend(n.style,{position:\"absolute\",top:\"-1000px\",background:\"red\",filter:\"alpha(opacity=0)\",opacity:0});document.body.appendChild(n);a.addEvent(k,\"dragenter\",function(s){var r,t;r=document.getElementById(l);t=a.getPos(r);a.extend(document.getElementById(p).style,{top:t.y+\"px\",left:t.x+\"px\",width:r.offsetWidth+\"px\",height:r.offsetHeight+\"px\"})});q(p,o)}else{q(l)}}a.addEvent(document.getElementById(d.browse_button),\"click\",function(w){var u=[],s,r,v=d.filters,t;w.preventDefault();no_type_restriction:for(s=0;s<v.length;s++){t=v[s].extensions.split(\",\");for(r=0;r<t.length;r++){if(t[r]===\"*\"){u=[];break no_type_restriction}u.push(a.mimeTypes[t[r]])}}e.FileBrowse.OpenBrowseDialog({mimeTypes:u},function(x){if(x.success){f(x.value)}})});k=n=null});g.bind(\"UploadFile\",function(n,k){var m=h[k.id],s={},l=n.settings.chunk_size,o,p=[];function r(t,v){var u;if(k.status==a.FAILED){return}s.name=k.target_name||k.name;if(l){s.chunk=\"\"+t;s.chunks=\"\"+v}u=p.shift();e.Uploader.upload({url:n.settings.url,files:{file:u},cookies:document.cookies,postvars:a.extend(s,n.settings.multipart_params),progressCallback:function(y){var x,w=0;o[t]=parseInt(y.filePercent*u.size/100,10);for(x=0;x<o.length;x++){w+=o[x]}k.loaded=w;n.trigger(\"UploadProgress\",k)}},function(x){var w,y;if(x.success){w=x.value.statusCode;if(l){n.trigger(\"ChunkUploaded\",k,{chunk:t,chunks:v,response:x.value.body,status:w})}if(p.length>0){r(++t,v)}else{k.status=a.DONE;n.trigger(\"FileUploaded\",k,{response:x.value.body,status:w});if(w>=400){n.trigger(\"Error\",{code:a.HTTP_ERROR,message:a.translate(\"HTTP Error.\"),file:k,status:w})}}}else{n.trigger(\"Error\",{code:a.GENERIC_ERROR,message:a.translate(\"Generic Error.\"),file:k,details:x.error})}})}function q(t){k.size=t.size;if(l){e.FileAccess.chunk({file:t,chunkSize:l},function(w){if(w.success){var x=w.value,u=x.length;o=Array(u);for(var v=0;v<u;v++){o[v]=0;p.push(x[v])}r(0,u)}})}else{o=Array(1);p.push(t);r(0,1)}}if(c&&/\\.(png|jpg|jpeg)$/i.test(k.name)){BrowserPlus.ImageAlter.transform({file:m,quality:c.quality||90,actions:[{scale:{maxwidth:c.width,maxheight:c.height}}]},function(t){if(t.success){q(t.value.file)}})}else{q(m)}});j({success:true})}if(e){e.init(function(l){var k=[{service:\"Uploader\",version:\"3\"},{service:\"DragAndDrop\",version:\"1\"},{service:\"FileBrowse\",version:\"1\"},{service:\"FileAccess\",version:\"2\"}];if(c){k.push({service:\"ImageAlter\",version:\"4\"})}if(l.success){e.require({services:k},function(m){if(m.success){b()}else{j()}})}else{j()}})}else{j()}}})})(plupload);(function(h,k,j,e){var c={},g;function m(o,p){var n;if(\"FileReader\" in h){n=new FileReader();n.readAsDataURL(o);n.onload=function(){p(n.result)}}else{return p(o.getAsDataURL())}}function l(o,p){var n;if(\"FileReader\" in h){n=new FileReader();n.readAsBinaryString(o);n.onload=function(){p(n.result)}}else{return p(o.getAsBinary())}}function d(r,p,n,v){var q,o,u,s,t=this;m(c[r.id],function(w){q=k.createElement(\"canvas\");q.style.display=\"none\";k.body.appendChild(q);o=q.getContext(\"2d\");u=new Image();u.onerror=u.onabort=function(){v({success:false})};u.onload=function(){var B,x,z,y,A;if(!p.width){p.width=u.width}if(!p.height){p.height=u.height}s=Math.min(p.width/u.width,p.height/u.height);if(s<1||(s===1&&n===\"image/jpeg\")){B=Math.round(u.width*s);x=Math.round(u.height*s);q.width=B;q.height=x;o.drawImage(u,0,0,B,x);if(n===\"image/jpeg\"){y=new f(atob(w.substring(w.indexOf(\"base64,\")+7)));if(y.headers&&y.headers.length){A=new a();if(A.init(y.get(\"exif\")[0])){A.setExif(\"PixelXDimension\",B);A.setExif(\"PixelYDimension\",x);y.set(\"exif\",A.getBinary());if(t.hasEventListener(\"ExifData\")){t.trigger(\"ExifData\",r,A.EXIF())}if(t.hasEventListener(\"GpsData\")){t.trigger(\"GpsData\",r,A.GPS())}}}if(p.quality){try{w=q.toDataURL(n,p.quality/100)}catch(C){w=q.toDataURL(n)}}}else{w=q.toDataURL(n)}w=w.substring(w.indexOf(\"base64,\")+7);w=atob(w);if(y&&y.headers&&y.headers.length){w=y.restore(w);y.purge()}q.parentNode.removeChild(q);v({success:true,data:w})}else{v({success:false})}};u.src=w})}j.runtimes.Html5=j.addRuntime(\"html5\",{getFeatures:function(){var s,o,r,q,p,n;o=r=p=n=false;if(h.XMLHttpRequest){s=new XMLHttpRequest();r=!!s.upload;o=!!(s.sendAsBinary||s.upload)}if(o){q=!!(s.sendAsBinary||(h.Uint8Array&&h.ArrayBuffer));p=!!(File&&(File.prototype.getAsDataURL||h.FileReader)&&q);n=!!(File&&(File.prototype.mozSlice||File.prototype.webkitSlice||File.prototype.slice))}g=j.ua.safari&&j.ua.windows;return{html5:o,dragdrop:(function(){var t=k.createElement(\"div\");return(\"draggable\" in t)||(\"ondragstart\" in t&&\"ondrop\" in t)}()),jpgresize:p,pngresize:p,multipart:p||!!h.FileReader||!!h.FormData,canSendBinary:q,cantSendBlobInFormData:!!(j.ua.gecko&&h.FormData&&h.FileReader&&!FileReader.prototype.readAsArrayBuffer),progress:r,chunks:n,multi_selection:!(j.ua.safari&&j.ua.windows),triggerDialog:(j.ua.gecko&&h.FormData||j.ua.webkit)}},init:function(p,q){var n;function o(v){var t,s,u=[],w,r={};for(s=0;s<v.length;s++){t=v[s];if(r[t.name]){continue}r[t.name]=true;w=j.guid();c[w]=t;u.push(new j.File(w,t.fileName||t.name,t.fileSize||t.size))}if(u.length){p.trigger(\"FilesAdded\",u)}}n=this.getFeatures();if(!n.html5){q({success:false});return}p.bind(\"Init\",function(v){var F,E,B=[],u,C,s=v.settings.filters,t,A,r=k.body,D;F=k.createElement(\"div\");F.id=v.id+\"_html5_container\";j.extend(F.style,{position:\"absolute\",background:p.settings.shim_bgcolor||\"transparent\",width:\"100px\",height:\"100px\",overflow:\"hidden\",zIndex:99999,opacity:p.settings.shim_bgcolor?\"\":0});F.className=\"plupload html5\";if(p.settings.container){r=k.getElementById(p.settings.container);if(j.getStyle(r,\"position\")===\"static\"){r.style.position=\"relative\"}}r.appendChild(F);no_type_restriction:for(u=0;u<s.length;u++){t=s[u].extensions.split(/,/);for(C=0;C<t.length;C++){if(t[C]===\"*\"){B=[];break no_type_restriction}A=j.mimeTypes[t[C]];if(A){B.push(A)}}}F.innerHTML='<input id=\"'+p.id+'_html5\"  style=\"font-size:999px\" type=\"file\" accept=\"'+B.join(\",\")+'\" '+(p.settings.multi_selection&&p.features.multi_selection?'multiple=\"multiple\"':\"\")+\" />\";F.scrollTop=100;D=k.getElementById(p.id+\"_html5\");if(v.features.triggerDialog){j.extend(D.style,{position:\"absolute\",width:\"100%\",height:\"100%\"})}else{j.extend(D.style,{cssFloat:\"right\",styleFloat:\"right\"})}D.onchange=function(){o(this.files);this.value=\"\"};E=k.getElementById(v.settings.browse_button);if(E){var x=v.settings.browse_button_hover,z=v.settings.browse_button_active,w=v.features.triggerDialog?E:F;if(x){j.addEvent(w,\"mouseover\",function(){j.addClass(E,x)},v.id);j.addEvent(w,\"mouseout\",function(){j.removeClass(E,x)},v.id)}if(z){j.addEvent(w,\"mousedown\",function(){j.addClass(E,z)},v.id);j.addEvent(k.body,\"mouseup\",function(){j.removeClass(E,z)},v.id)}if(v.features.triggerDialog){j.addEvent(E,\"click\",function(y){k.getElementById(v.id+\"_html5\").click();y.preventDefault()},v.id)}}});p.bind(\"PostInit\",function(){var r=k.getElementById(p.settings.drop_element);if(r){if(g){j.addEvent(r,\"dragenter\",function(v){var u,s,t;u=k.getElementById(p.id+\"_drop\");if(!u){u=k.createElement(\"input\");u.setAttribute(\"type\",\"file\");u.setAttribute(\"id\",p.id+\"_drop\");u.setAttribute(\"multiple\",\"multiple\");j.addEvent(u,\"change\",function(){o(this.files);j.removeEvent(u,\"change\",p.id);u.parentNode.removeChild(u)},p.id);r.appendChild(u)}s=j.getPos(r,k.getElementById(p.settings.container));t=j.getSize(r);if(j.getStyle(r,\"position\")===\"static\"){j.extend(r.style,{position:\"relative\"})}j.extend(u.style,{position:\"absolute\",display:\"block\",top:0,left:0,width:t.w+\"px\",height:t.h+\"px\",opacity:0})},p.id);return}j.addEvent(r,\"dragover\",function(s){s.preventDefault()},p.id);j.addEvent(r,\"drop\",function(t){var s=t.dataTransfer;if(s&&s.files){o(s.files)}t.preventDefault()},p.id)}});p.bind(\"Refresh\",function(r){var s,t,u,w,v;s=k.getElementById(p.settings.browse_button);if(s){t=j.getPos(s,k.getElementById(r.settings.container));u=j.getSize(s);w=k.getElementById(p.id+\"_html5_container\");j.extend(w.style,{top:t.y+\"px\",left:t.x+\"px\",width:u.w+\"px\",height:u.h+\"px\"});if(p.features.triggerDialog){if(j.getStyle(s,\"position\")===\"static\"){j.extend(s.style,{position:\"relative\"})}v=parseInt(j.getStyle(s,\"z-index\"),10);if(isNaN(v)){v=0}j.extend(s.style,{zIndex:v});j.extend(w.style,{zIndex:v-1})}}});p.bind(\"UploadFile\",function(r,t){var u=r.settings,x,s;function w(z,C,y){var A;if(File.prototype.slice){try{z.slice();return z.slice(C,y)}catch(B){return z.slice(C,y-C)}}else{if(A=File.prototype.webkitSlice||File.prototype.mozSlice){return A.call(z,C,y)}else{return null}}}function v(z){var C=0,B=0,y=(\"FileReader\" in h)?new FileReader:null;function A(){var H,L,J,K,G,I,E,D=r.settings.url;function F(V){var S=0,T=new XMLHttpRequest,W=T.upload,M=\"----pluploadboundary\"+j.guid(),N,O=\"--\",U=\"\\r\\n\",Q=\"\";if(W){W.onprogress=function(X){t.loaded=Math.min(t.size,B+X.loaded-S);r.trigger(\"UploadProgress\",t)}}T.onreadystatechange=function(){var X,Z;if(T.readyState==4){try{X=T.status}catch(Y){X=0}if(X>=400){r.trigger(\"Error\",{code:j.HTTP_ERROR,message:j.translate(\"HTTP Error.\"),file:t,status:X})}else{if(J){Z={chunk:C,chunks:J,response:T.responseText,status:X};r.trigger(\"ChunkUploaded\",t,Z);B+=I;if(Z.cancelled){t.status=j.FAILED;return}t.loaded=Math.min(t.size,(C+1)*G)}else{t.loaded=t.size}r.trigger(\"UploadProgress\",t);V=H=N=Q=null;if(!J||++C>=J){t.status=j.DONE;r.trigger(\"FileUploaded\",t,{response:T.responseText,status:X})}else{A()}}T=null}};if(r.settings.multipart&&n.multipart){K.name=t.target_name||t.name;T.open(\"post\",D,true);j.each(r.settings.headers,function(Y,X){T.setRequestHeader(X,Y)});if(typeof(V)!==\"string\"&&!!h.FormData){N=new FormData();j.each(j.extend(K,r.settings.multipart_params),function(Y,X){N.append(X,Y)});N.append(r.settings.file_data_name,V);T.send(N);return}if(typeof(V)===\"string\"){T.setRequestHeader(\"Content-Type\",\"multipart/form-data; boundary=\"+M);j.each(j.extend(K,r.settings.multipart_params),function(Y,X){Q+=O+M+U+'Content-Disposition: form-data; name=\"'+X+'\"'+U+U;Q+=unescape(encodeURIComponent(Y))+U});E=j.mimeTypes[t.name.replace(/^.+\\.([^.]+)/,\"$1\").toLowerCase()]||\"application/octet-stream\";Q+=O+M+U+'Content-Disposition: form-data; name=\"'+r.settings.file_data_name+'\"; filename=\"'+unescape(encodeURIComponent(t.name))+'\"'+U+\"Content-Type: \"+E+U+U+V+U+O+M+O+U;S=Q.length-V.length;V=Q;if(T.sendAsBinary){T.sendAsBinary(V)}else{if(n.canSendBinary){var R=new Uint8Array(V.length);for(var P=0;P<V.length;P++){R[P]=(V.charCodeAt(P)&255)}T.send(R.buffer)}}return}}D=j.buildUrl(r.settings.url,j.extend(K,r.settings.multipart_params));T.open(\"post\",D,true);T.setRequestHeader(\"Content-Type\",\"application/octet-stream\");j.each(r.settings.headers,function(Y,X){T.setRequestHeader(X,Y)});T.send(V)}if(t.status==j.DONE||t.status==j.FAILED||r.state==j.STOPPED){return}K={name:t.target_name||t.name};if(u.chunk_size&&t.size>u.chunk_size&&(n.chunks||typeof(z)==\"string\")){G=u.chunk_size;J=Math.ceil(t.size/G);I=Math.min(G,t.size-(C*G));if(typeof(z)==\"string\"){H=z.substring(C*G,C*G+I)}else{H=w(z,C*G,C*G+I)}K.chunk=C;K.chunks=J}else{I=t.size;H=z}if(typeof(H)!==\"string\"&&y&&n.cantSendBlobInFormData&&n.chunks&&r.settings.chunk_size){y.onload=function(){F(y.result)};y.readAsBinaryString(H)}else{F(H)}}A()}x=c[t.id];if(n.jpgresize&&r.settings.resize&&/\\.(png|jpg|jpeg)$/i.test(t.name)){d.call(r,t,r.settings.resize,/\\.png$/i.test(t.name)?\"image/png\":\"image/jpeg\",function(y){if(y.success){t.size=y.data.length;v(y.data)}else{v(x)}})}else{if(!n.chunks&&n.jpgresize){l(x,v)}else{v(x)}}});p.bind(\"Destroy\",function(r){var t,u,s=k.body,v={inputContainer:r.id+\"_html5_container\",inputFile:r.id+\"_html5\",browseButton:r.settings.browse_button,dropElm:r.settings.drop_element};for(t in v){u=k.getElementById(v[t]);if(u){j.removeAllEvents(u,r.id)}}j.removeAllEvents(k.body,r.id);if(r.settings.container){s=k.getElementById(r.settings.container)}s.removeChild(k.getElementById(v.inputContainer))});q({success:true})}});function b(){var q=false,o;function r(t,v){var s=q?0:-8*(v-1),w=0,u;for(u=0;u<v;u++){w|=(o.charCodeAt(t+u)<<Math.abs(s+u*8))}return w}function n(u,s,t){var t=arguments.length===3?t:o.length-s-1;o=o.substr(0,s)+u+o.substr(t+s)}function p(t,u,w){var x=\"\",s=q?0:-8*(w-1),v;for(v=0;v<w;v++){x+=String.fromCharCode((u>>Math.abs(s+v*8))&255)}n(x,t,w)}return{II:function(s){if(s===e){return q}else{q=s}},init:function(s){q=false;o=s},SEGMENT:function(s,u,t){switch(arguments.length){case 1:return o.substr(s,o.length-s-1);case 2:return o.substr(s,u);case 3:n(t,s,u);break;default:return o}},BYTE:function(s){return r(s,1)},SHORT:function(s){return r(s,2)},LONG:function(s,t){if(t===e){return r(s,4)}else{p(s,t,4)}},SLONG:function(s){var t=r(s,4);return(t>2147483647?t-4294967296:t)},STRING:function(s,t){var u=\"\";for(t+=s;s<t;s++){u+=String.fromCharCode(r(s,1))}return u}}}function f(s){var u={65505:{app:\"EXIF\",name:\"APP1\",signature:\"Exif\\0\"},65506:{app:\"ICC\",name:\"APP2\",signature:\"ICC_PROFILE\\0\"},65517:{app:\"IPTC\",name:\"APP13\",signature:\"Photoshop 3.0\\0\"}},t=[],r,n,p=e,q=0,o;r=new b();r.init(s);if(r.SHORT(0)!==65496){return}n=2;o=Math.min(1048576,s.length);while(n<=o){p=r.SHORT(n);if(p>=65488&&p<=65495){n+=2;continue}if(p===65498||p===65497){break}q=r.SHORT(n+2)+2;if(u[p]&&r.STRING(n+4,u[p].signature.length)===u[p].signature){t.push({hex:p,app:u[p].app.toUpperCase(),name:u[p].name.toUpperCase(),start:n,length:q,segment:r.SEGMENT(n,q)})}n+=q}r.init(null);return{headers:t,restore:function(y){r.init(y);var w=new f(y);if(!w.headers){return false}for(var x=w.headers.length;x>0;x--){var z=w.headers[x-1];r.SEGMENT(z.start,z.length,\"\")}w.purge();n=r.SHORT(2)==65504?4+r.SHORT(4):2;for(var x=0,v=t.length;x<v;x++){r.SEGMENT(n,0,t[x].segment);n+=t[x].length}return r.SEGMENT()},get:function(x){var y=[];for(var w=0,v=t.length;w<v;w++){if(t[w].app===x.toUpperCase()){y.push(t[w].segment)}}return y},set:function(y,x){var z=[];if(typeof(x)===\"string\"){z.push(x)}else{z=x}for(var w=ii=0,v=t.length;w<v;w++){if(t[w].app===y.toUpperCase()){t[w].segment=z[ii];t[w].length=z[ii].length;ii++}if(ii>=z.length){break}}},purge:function(){t=[];r.init(null)}}}function a(){var q,n,o={},t;q=new b();n={tiff:{274:\"Orientation\",34665:\"ExifIFDPointer\",34853:\"GPSInfoIFDPointer\"},exif:{36864:\"ExifVersion\",40961:\"ColorSpace\",40962:\"PixelXDimension\",40963:\"PixelYDimension\",36867:\"DateTimeOriginal\",33434:\"ExposureTime\",33437:\"FNumber\",34855:\"ISOSpeedRatings\",37377:\"ShutterSpeedValue\",37378:\"ApertureValue\",37383:\"MeteringMode\",37384:\"LightSource\",37385:\"Flash\",41986:\"ExposureMode\",41987:\"WhiteBalance\",41990:\"SceneCaptureType\",41988:\"DigitalZoomRatio\",41992:\"Contrast\",41993:\"Saturation\",41994:\"Sharpness\"},gps:{0:\"GPSVersionID\",1:\"GPSLatitudeRef\",2:\"GPSLatitude\",3:\"GPSLongitudeRef\",4:\"GPSLongitude\"}};t={ColorSpace:{1:\"sRGB\",0:\"Uncalibrated\"},MeteringMode:{0:\"Unknown\",1:\"Average\",2:\"CenterWeightedAverage\",3:\"Spot\",4:\"MultiSpot\",5:\"Pattern\",6:\"Partial\",255:\"Other\"},LightSource:{1:\"Daylight\",2:\"Fliorescent\",3:\"Tungsten\",4:\"Flash\",9:\"Fine weather\",10:\"Cloudy weather\",11:\"Shade\",12:\"Daylight fluorescent (D 5700 - 7100K)\",13:\"Day white fluorescent (N 4600 -5400K)\",14:\"Cool white fluorescent (W 3900 - 4500K)\",15:\"White fluorescent (WW 3200 - 3700K)\",17:\"Standard light A\",18:\"Standard light B\",19:\"Standard light C\",20:\"D55\",21:\"D65\",22:\"D75\",23:\"D50\",24:\"ISO studio tungsten\",255:\"Other\"},Flash:{0:\"Flash did not fire.\",1:\"Flash fired.\",5:\"Strobe return light not detected.\",7:\"Strobe return light detected.\",9:\"Flash fired, compulsory flash mode\",13:\"Flash fired, compulsory flash mode, return light not detected\",15:\"Flash fired, compulsory flash mode, return light detected\",16:\"Flash did not fire, compulsory flash mode\",24:\"Flash did not fire, auto mode\",25:\"Flash fired, auto mode\",29:\"Flash fired, auto mode, return light not detected\",31:\"Flash fired, auto mode, return light detected\",32:\"No flash function\",65:\"Flash fired, red-eye reduction mode\",69:\"Flash fired, red-eye reduction mode, return light not detected\",71:\"Flash fired, red-eye reduction mode, return light detected\",73:\"Flash fired, compulsory flash mode, red-eye reduction mode\",77:\"Flash fired, compulsory flash mode, red-eye reduction mode, return light not detected\",79:\"Flash fired, compulsory flash mode, red-eye reduction mode, return light detected\",89:\"Flash fired, auto mode, red-eye reduction mode\",93:\"Flash fired, auto mode, return light not detected, red-eye reduction mode\",95:\"Flash fired, auto mode, return light detected, red-eye reduction mode\"},ExposureMode:{0:\"Auto exposure\",1:\"Manual exposure\",2:\"Auto bracket\"},WhiteBalance:{0:\"Auto white balance\",1:\"Manual white balance\"},SceneCaptureType:{0:\"Standard\",1:\"Landscape\",2:\"Portrait\",3:\"Night scene\"},Contrast:{0:\"Normal\",1:\"Soft\",2:\"Hard\"},Saturation:{0:\"Normal\",1:\"Low saturation\",2:\"High saturation\"},Sharpness:{0:\"Normal\",1:\"Soft\",2:\"Hard\"},GPSLatitudeRef:{N:\"North latitude\",S:\"South latitude\"},GPSLongitudeRef:{E:\"East longitude\",W:\"West longitude\"}};function p(u,C){var w=q.SHORT(u),z,F,G,B,A,v,x,D,E=[],y={};for(z=0;z<w;z++){x=v=u+12*z+2;G=C[q.SHORT(x)];if(G===e){continue}B=q.SHORT(x+=2);A=q.LONG(x+=2);x+=4;E=[];switch(B){case 1:case 7:if(A>4){x=q.LONG(x)+o.tiffHeader}for(F=0;F<A;F++){E[F]=q.BYTE(x+F)}break;case 2:if(A>4){x=q.LONG(x)+o.tiffHeader}y[G]=q.STRING(x,A-1);continue;case 3:if(A>2){x=q.LONG(x)+o.tiffHeader}for(F=0;F<A;F++){E[F]=q.SHORT(x+F*2)}break;case 4:if(A>1){x=q.LONG(x)+o.tiffHeader}for(F=0;F<A;F++){E[F]=q.LONG(x+F*4)}break;case 5:x=q.LONG(x)+o.tiffHeader;for(F=0;F<A;F++){E[F]=q.LONG(x+F*4)/q.LONG(x+F*4+4)}break;case 9:x=q.LONG(x)+o.tiffHeader;for(F=0;F<A;F++){E[F]=q.SLONG(x+F*4)}break;case 10:x=q.LONG(x)+o.tiffHeader;for(F=0;F<A;F++){E[F]=q.SLONG(x+F*4)/q.SLONG(x+F*4+4)}break;default:continue}D=(A==1?E[0]:E);if(t.hasOwnProperty(G)&&typeof D!=\"object\"){y[G]=t[G][D]}else{y[G]=D}}return y}function s(){var v=e,u=o.tiffHeader;q.II(q.SHORT(u)==18761);if(q.SHORT(u+=2)!==42){return false}o.IFD0=o.tiffHeader+q.LONG(u+=2);v=p(o.IFD0,n.tiff);o.exifIFD=(\"ExifIFDPointer\" in v?o.tiffHeader+v.ExifIFDPointer:e);o.gpsIFD=(\"GPSInfoIFDPointer\" in v?o.tiffHeader+v.GPSInfoIFDPointer:e);return true}function r(w,u,z){var B,y,x,A=0;if(typeof(u)===\"string\"){var v=n[w.toLowerCase()];for(hex in v){if(v[hex]===u){u=hex;break}}}B=o[w.toLowerCase()+\"IFD\"];y=q.SHORT(B);for(i=0;i<y;i++){x=B+12*i+2;if(q.SHORT(x)==u){A=x+8;break}}if(!A){return false}q.LONG(A,z);return true}return{init:function(u){o={tiffHeader:10};if(u===e||!u.length){return false}q.init(u);if(q.SHORT(0)===65505&&q.STRING(4,5).toUpperCase()===\"EXIF\\0\"){return s()}return false},EXIF:function(){var u;u=p(o.exifIFD,n.exif);if(u.ExifVersion){u.ExifVersion=String.fromCharCode(u.ExifVersion[0],u.ExifVersion[1],u.ExifVersion[2],u.ExifVersion[3])}return u},GPS:function(){var u;u=p(o.gpsIFD,n.gps);if(u.GPSVersionID){u.GPSVersionID=u.GPSVersionID.join(\".\")}return u},setExif:function(u,v){if(u!==\"PixelXDimension\"&&u!==\"PixelYDimension\"){return false}return r(\"exif\",u,v)},getBinary:function(){return q.SEGMENT()}}}})(window,document,plupload);(function(d,a,b,c){function e(f){return a.getElementById(f)}b.runtimes.Html4=b.addRuntime(\"html4\",{getFeatures:function(){return{multipart:true,triggerDialog:(b.ua.gecko&&d.FormData||b.ua.webkit)}},init:function(f,g){f.bind(\"Init\",function(p){var j=a.body,n,h=\"javascript\",k,x,q,z=[],r=/MSIE/.test(navigator.userAgent),t=[],m=p.settings.filters,o,l,s,w;no_type_restriction:for(o=0;o<m.length;o++){l=m[o].extensions.split(/,/);for(w=0;w<l.length;w++){if(l[w]===\"*\"){t=[];break no_type_restriction}s=b.mimeTypes[l[w]];if(s){t.push(s)}}}t=t.join(\",\");function v(){var C,A,y,B;q=b.guid();z.push(q);C=a.createElement(\"form\");C.setAttribute(\"id\",\"form_\"+q);C.setAttribute(\"method\",\"post\");C.setAttribute(\"enctype\",\"multipart/form-data\");C.setAttribute(\"encoding\",\"multipart/form-data\");C.setAttribute(\"target\",p.id+\"_iframe\");C.style.position=\"absolute\";A=a.createElement(\"input\");A.setAttribute(\"id\",\"input_\"+q);A.setAttribute(\"type\",\"file\");A.setAttribute(\"accept\",t);A.setAttribute(\"size\",1);B=e(p.settings.browse_button);if(p.features.triggerDialog&&B){b.addEvent(e(p.settings.browse_button),\"click\",function(D){A.click();D.preventDefault()},p.id)}b.extend(A.style,{width:\"100%\",height:\"100%\",opacity:0,fontSize:\"999px\"});b.extend(C.style,{overflow:\"hidden\"});y=p.settings.shim_bgcolor;if(y){C.style.background=y}if(r){b.extend(A.style,{filter:\"alpha(opacity=0)\"})}b.addEvent(A,\"change\",function(G){var E=G.target,D,F=[],H;if(E.value){e(\"form_\"+q).style.top=-1048575+\"px\";D=E.value.replace(/\\\\/g,\"/\");D=D.substring(D.length,D.lastIndexOf(\"/\")+1);F.push(new b.File(q,D));if(!p.features.triggerDialog){b.removeAllEvents(C,p.id)}else{b.removeEvent(B,\"click\",p.id)}b.removeEvent(A,\"change\",p.id);v();if(F.length){f.trigger(\"FilesAdded\",F)}}},p.id);C.appendChild(A);j.appendChild(C);p.refresh()}function u(){var y=a.createElement(\"div\");y.innerHTML='<iframe id=\"'+p.id+'_iframe\" name=\"'+p.id+'_iframe\" src=\"'+h+':&quot;&quot;\" style=\"display:none\"></iframe>';n=y.firstChild;j.appendChild(n);b.addEvent(n,\"load\",function(D){var E=D.target,C,A;if(!k){return}try{C=E.contentWindow.document||E.contentDocument||d.frames[E.id].document}catch(B){p.trigger(\"Error\",{code:b.SECURITY_ERROR,message:b.translate(\"Security error.\"),file:k});return}A=C.body.innerHTML;if(A){k.status=b.DONE;k.loaded=1025;k.percent=100;p.trigger(\"UploadProgress\",k);p.trigger(\"FileUploaded\",k,{response:A})}},p.id)}if(p.settings.container){j=e(p.settings.container);if(b.getStyle(j,\"position\")===\"static\"){j.style.position=\"relative\"}}p.bind(\"UploadFile\",function(y,B){var C,A;if(B.status==b.DONE||B.status==b.FAILED||y.state==b.STOPPED){return}C=e(\"form_\"+B.id);A=e(\"input_\"+B.id);A.setAttribute(\"name\",y.settings.file_data_name);C.setAttribute(\"action\",y.settings.url);b.each(b.extend({name:B.target_name||B.name},y.settings.multipart_params),function(F,D){var E=a.createElement(\"input\");b.extend(E,{type:\"hidden\",name:D,value:F});C.insertBefore(E,C.firstChild)});k=B;e(\"form_\"+q).style.top=-1048575+\"px\";C.submit();C.parentNode.removeChild(C)});p.bind(\"FileUploaded\",function(y){y.refresh()});p.bind(\"StateChanged\",function(y){if(y.state==b.STARTED){u()}if(y.state==b.STOPPED){d.setTimeout(function(){b.removeEvent(n,\"load\",y.id);if(n.parentNode){n.parentNode.removeChild(n)}},0)}});p.bind(\"Refresh\",function(A){var G,B,C,D,y,H,I,F,E;G=e(A.settings.browse_button);if(G){y=b.getPos(G,e(A.settings.container));H=b.getSize(G);I=e(\"form_\"+q);F=e(\"input_\"+q);b.extend(I.style,{top:y.y+\"px\",left:y.x+\"px\",width:H.w+\"px\",height:H.h+\"px\"});if(A.features.triggerDialog){if(b.getStyle(G,\"position\")===\"static\"){b.extend(G.style,{position:\"relative\"})}E=parseInt(G.style.zIndex,10);if(isNaN(E)){E=0}b.extend(G.style,{zIndex:E});b.extend(I.style,{zIndex:E-1})}C=A.settings.browse_button_hover;D=A.settings.browse_button_active;B=A.features.triggerDialog?G:I;if(C){b.addEvent(B,\"mouseover\",function(){b.addClass(G,C)},A.id);b.addEvent(B,\"mouseout\",function(){b.removeClass(G,C)},A.id)}if(D){b.addEvent(B,\"mousedown\",function(){b.addClass(G,D)},A.id);b.addEvent(a.body,\"mouseup\",function(){b.removeClass(G,D)},A.id)}}});f.bind(\"FilesRemoved\",function(y,B){var A,C;for(A=0;A<B.length;A++){C=e(\"form_\"+B[A].id);if(C){C.parentNode.removeChild(C)}}});f.bind(\"Destroy\",function(y){var A,B,C,D={inputContainer:\"form_\"+q,inputFile:\"input_\"+q,browseButton:y.settings.browse_button};for(A in D){B=e(D[A]);if(B){b.removeAllEvents(B,y.id)}}b.removeAllEvents(a.body,y.id);b.each(z,function(F,E){C=e(\"form_\"+F);if(C){j.removeChild(C)}})});v()});g({success:true})}})})(window,document,plupload);"
  },
  {
    "path": "newscoop/js/plupload/js/plupload.gears.js",
    "content": "(function(){if(window.google&&google.gears){return}var a=null;if(typeof GearsFactory!=\"undefined\"){a=new GearsFactory()}else{try{a=new ActiveXObject(\"Gears.Factory\");if(a.getBuildInfo().indexOf(\"ie_mobile\")!=-1){a.privateSetGlobalObject(this)}}catch(b){if((typeof navigator.mimeTypes!=\"undefined\")&&navigator.mimeTypes[\"application/x-googlegears\"]){a=document.createElement(\"object\");a.style.display=\"none\";a.width=0;a.height=0;a.type=\"application/x-googlegears\";document.documentElement.appendChild(a)}}}if(!a){return}if(!window.google){window.google={}}if(!google.gears){google.gears={factory:a}}})();(function(e,b,c,d){var f={};function a(h,j,l){var g,i,k,n;i=google.gears.factory.create(\"beta.canvas\");try{i.decode(h);if(!j.width){j.width=i.width}if(!j.height){j.height=i.height}n=Math.min(width/i.width,height/i.height);if(n<1||(n===1&&l===\"image/jpeg\")){i.resize(Math.round(i.width*n),Math.round(i.height*n));if(j.quality){return i.encode(l,{quality:j.quality/100})}return i.encode(l)}}catch(m){}return h}c.runtimes.Gears=c.addRuntime(\"gears\",{getFeatures:function(){return{dragdrop:true,jpgresize:true,pngresize:true,chunks:true,progress:true,multipart:true,multi_selection:true}},init:function(i,k){var j;if(!e.google||!google.gears){return k({success:false})}try{j=google.gears.factory.create(\"beta.desktop\")}catch(h){return k({success:false})}function g(n){var m,l,o=[],p;for(l=0;l<n.length;l++){m=n[l];p=c.guid();f[p]=m.blob;o.push(new c.File(p,m.name,m.blob.length))}i.trigger(\"FilesAdded\",o)}i.bind(\"PostInit\",function(){var m=i.settings,l=b.getElementById(m.drop_element);if(l){c.addEvent(l,\"dragover\",function(n){j.setDropEffect(n,\"copy\");n.preventDefault()},i.id);c.addEvent(l,\"drop\",function(o){var n=j.getDragData(o,\"application/x-gears-files\");if(n){g(n.files)}o.preventDefault()},i.id);l=0}c.addEvent(b.getElementById(m.browse_button),\"click\",function(r){var q=[],o,n,p;r.preventDefault();no_type_restriction:for(o=0;o<m.filters.length;o++){p=m.filters[o].extensions.split(\",\");for(n=0;n<p.length;n++){if(p[n]===\"*\"){q=[];break no_type_restriction}q.push(\".\"+p[n])}}j.openFiles(g,{singleFile:!m.multi_selection,filter:q})},i.id)});i.bind(\"UploadFile\",function(r,o){var t=0,s,p,q=0,n=r.settings.resize,l;if(n&&/\\.(png|jpg|jpeg)$/i.test(o.name)){f[o.id]=a(f[o.id],n,/\\.png$/i.test(o.name)?\"image/png\":\"image/jpeg\")}o.size=f[o.id].length;p=r.settings.chunk_size;l=p>0;s=Math.ceil(o.size/p);if(!l){p=o.size;s=1}function m(){var y,A,v=r.settings.multipart,u=0,z={name:o.target_name||o.name},w=r.settings.url;function x(C){var B,H=\"----pluploadboundary\"+c.guid(),E=\"--\",G=\"\\r\\n\",D,F;if(v){y.setRequestHeader(\"Content-Type\",\"multipart/form-data; boundary=\"+H);B=google.gears.factory.create(\"beta.blobbuilder\");c.each(c.extend(z,r.settings.multipart_params),function(J,I){B.append(E+H+G+'Content-Disposition: form-data; name=\"'+I+'\"'+G+G);B.append(J+G)});F=c.mimeTypes[o.name.replace(/^.+\\.([^.]+)/,\"$1\").toLowerCase()]||\"application/octet-stream\";B.append(E+H+G+'Content-Disposition: form-data; name=\"'+r.settings.file_data_name+'\"; filename=\"'+o.name+'\"'+G+\"Content-Type: \"+F+G+G);B.append(C);B.append(G+E+H+E+G);D=B.getAsBlob();u=D.length-C.length;C=D}y.send(C)}if(o.status==c.DONE||o.status==c.FAILED||r.state==c.STOPPED){return}if(l){z.chunk=t;z.chunks=s}A=Math.min(p,o.size-(t*p));if(!v){w=c.buildUrl(r.settings.url,z)}y=google.gears.factory.create(\"beta.httprequest\");y.open(\"POST\",w);if(!v){y.setRequestHeader(\"Content-Disposition\",'attachment; filename=\"'+o.name+'\"');y.setRequestHeader(\"Content-Type\",\"application/octet-stream\")}c.each(r.settings.headers,function(C,B){y.setRequestHeader(B,C)});y.upload.onprogress=function(B){o.loaded=q+B.loaded-u;r.trigger(\"UploadProgress\",o)};y.onreadystatechange=function(){var B;if(y.readyState==4){if(y.status==200){B={chunk:t,chunks:s,response:y.responseText,status:y.status};r.trigger(\"ChunkUploaded\",o,B);if(B.cancelled){o.status=c.FAILED;return}q+=A;if(++t>=s){o.status=c.DONE;r.trigger(\"FileUploaded\",o,{response:y.responseText,status:y.status})}else{m()}}else{r.trigger(\"Error\",{code:c.HTTP_ERROR,message:c.translate(\"HTTP Error.\"),file:o,chunk:t,chunks:s,status:y.status})}}};if(t<s){x(f[o.id].slice(t*p,A))}}m()});i.bind(\"Destroy\",function(l){var m,n,o={browseButton:l.settings.browse_button,dropElm:l.settings.drop_element};for(m in o){n=b.getElementById(o[m]);if(n){c.removeAllEvents(n,l.id)}}});k({success:true})}})})(window,document,plupload);"
  },
  {
    "path": "newscoop/js/plupload/js/plupload.html4.js",
    "content": "(function(d,a,b,c){function e(f){return a.getElementById(f)}b.runtimes.Html4=b.addRuntime(\"html4\",{getFeatures:function(){return{multipart:true,triggerDialog:(b.ua.gecko&&d.FormData||b.ua.webkit)}},init:function(f,g){f.bind(\"Init\",function(p){var j=a.body,n,h=\"javascript\",k,x,q,z=[],r=/MSIE/.test(navigator.userAgent),t=[],m=p.settings.filters,o,l,s,w;no_type_restriction:for(o=0;o<m.length;o++){l=m[o].extensions.split(/,/);for(w=0;w<l.length;w++){if(l[w]===\"*\"){t=[];break no_type_restriction}s=b.mimeTypes[l[w]];if(s){t.push(s)}}}t=t.join(\",\");function v(){var B,y,i,A;q=b.guid();z.push(q);B=a.createElement(\"form\");B.setAttribute(\"id\",\"form_\"+q);B.setAttribute(\"method\",\"post\");B.setAttribute(\"enctype\",\"multipart/form-data\");B.setAttribute(\"encoding\",\"multipart/form-data\");B.setAttribute(\"target\",p.id+\"_iframe\");B.style.position=\"absolute\";y=a.createElement(\"input\");y.setAttribute(\"id\",\"input_\"+q);y.setAttribute(\"type\",\"file\");y.setAttribute(\"accept\",t);y.setAttribute(\"size\",1);A=e(p.settings.browse_button);if(p.features.triggerDialog&&A){b.addEvent(e(p.settings.browse_button),\"click\",function(C){y.click();C.preventDefault()},p.id)}b.extend(y.style,{width:\"100%\",height:\"100%\",opacity:0,fontSize:\"999px\"});b.extend(B.style,{overflow:\"hidden\"});i=p.settings.shim_bgcolor;if(i){B.style.background=i}if(r){b.extend(y.style,{filter:\"alpha(opacity=0)\"})}b.addEvent(y,\"change\",function(F){var D=F.target,C,E=[],G;if(D.value){e(\"form_\"+q).style.top=-1048575+\"px\";C=D.value.replace(/\\\\/g,\"/\");C=C.substring(C.length,C.lastIndexOf(\"/\")+1);E.push(new b.File(q,C));if(!p.features.triggerDialog){b.removeAllEvents(B,p.id)}else{b.removeEvent(A,\"click\",p.id)}b.removeEvent(y,\"change\",p.id);v();if(E.length){f.trigger(\"FilesAdded\",E)}}},p.id);B.appendChild(y);j.appendChild(B);p.refresh()}function u(){var i=a.createElement(\"div\");i.innerHTML='<iframe id=\"'+p.id+'_iframe\" name=\"'+p.id+'_iframe\" src=\"'+h+':&quot;&quot;\" style=\"display:none\"></iframe>';n=i.firstChild;j.appendChild(n);b.addEvent(n,\"load\",function(C){var D=C.target,B,y;if(!k){return}try{B=D.contentWindow.document||D.contentDocument||d.frames[D.id].document}catch(A){p.trigger(\"Error\",{code:b.SECURITY_ERROR,message:b.translate(\"Security error.\"),file:k});return}y=B.body.innerHTML;if(y){k.status=b.DONE;k.loaded=1025;k.percent=100;p.trigger(\"UploadProgress\",k);p.trigger(\"FileUploaded\",k,{response:y})}},p.id)}if(p.settings.container){j=e(p.settings.container);if(b.getStyle(j,\"position\")===\"static\"){j.style.position=\"relative\"}}p.bind(\"UploadFile\",function(i,A){var B,y;if(A.status==b.DONE||A.status==b.FAILED||i.state==b.STOPPED){return}B=e(\"form_\"+A.id);y=e(\"input_\"+A.id);y.setAttribute(\"name\",i.settings.file_data_name);B.setAttribute(\"action\",i.settings.url);b.each(b.extend({name:A.target_name||A.name},i.settings.multipart_params),function(E,C){var D=a.createElement(\"input\");b.extend(D,{type:\"hidden\",name:C,value:E});B.insertBefore(D,B.firstChild)});k=A;e(\"form_\"+q).style.top=-1048575+\"px\";B.submit();B.parentNode.removeChild(B)});p.bind(\"FileUploaded\",function(i){i.refresh()});p.bind(\"StateChanged\",function(i){if(i.state==b.STARTED){u()}if(i.state==b.STOPPED){d.setTimeout(function(){b.removeEvent(n,\"load\",i.id);if(n.parentNode){n.parentNode.removeChild(n)}},0)}});p.bind(\"Refresh\",function(y){var F,A,B,C,i,G,H,E,D;F=e(y.settings.browse_button);if(F){i=b.getPos(F,e(y.settings.container));G=b.getSize(F);H=e(\"form_\"+q);E=e(\"input_\"+q);b.extend(H.style,{top:i.y+\"px\",left:i.x+\"px\",width:G.w+\"px\",height:G.h+\"px\"});if(y.features.triggerDialog){if(b.getStyle(F,\"position\")===\"static\"){b.extend(F.style,{position:\"relative\"})}D=parseInt(F.style.zIndex,10);if(isNaN(D)){D=0}b.extend(F.style,{zIndex:D});b.extend(H.style,{zIndex:D-1})}B=y.settings.browse_button_hover;C=y.settings.browse_button_active;A=y.features.triggerDialog?F:H;if(B){b.addEvent(A,\"mouseover\",function(){b.addClass(F,B)},y.id);b.addEvent(A,\"mouseout\",function(){b.removeClass(F,B)},y.id)}if(C){b.addEvent(A,\"mousedown\",function(){b.addClass(F,C)},y.id);b.addEvent(a.body,\"mouseup\",function(){b.removeClass(F,C)},y.id)}}});f.bind(\"FilesRemoved\",function(y,B){var A,C;for(A=0;A<B.length;A++){C=e(\"form_\"+B[A].id);if(C){C.parentNode.removeChild(C)}}});f.bind(\"Destroy\",function(i){var y,A,B,C={inputContainer:\"form_\"+q,inputFile:\"input_\"+q,browseButton:i.settings.browse_button};for(y in C){A=e(C[y]);if(A){b.removeAllEvents(A,i.id)}}b.removeAllEvents(a.body,i.id);b.each(z,function(E,D){B=e(\"form_\"+E);if(B){j.removeChild(B)}})});v()});g({success:true})}})})(window,document,plupload);"
  },
  {
    "path": "newscoop/js/plupload/js/plupload.html5.js",
    "content": "(function(h,k,j,e){var c={},g;function m(o,p){var n;if(\"FileReader\" in h){n=new FileReader();n.readAsDataURL(o);n.onload=function(){p(n.result)}}else{return p(o.getAsDataURL())}}function l(o,p){var n;if(\"FileReader\" in h){n=new FileReader();n.readAsBinaryString(o);n.onload=function(){p(n.result)}}else{return p(o.getAsBinary())}}function d(r,p,n,v){var q,o,u,s,t=this;m(c[r.id],function(w){q=k.createElement(\"canvas\");q.style.display=\"none\";k.body.appendChild(q);o=q.getContext(\"2d\");u=new Image();u.onerror=u.onabort=function(){v({success:false})};u.onload=function(){var B,x,z,y,A;if(!p.width){p.width=u.width}if(!p.height){p.height=u.height}s=Math.min(p.width/u.width,p.height/u.height);if(s<1||(s===1&&n===\"image/jpeg\")){B=Math.round(u.width*s);x=Math.round(u.height*s);q.width=B;q.height=x;o.drawImage(u,0,0,B,x);if(n===\"image/jpeg\"){y=new f(atob(w.substring(w.indexOf(\"base64,\")+7)));if(y.headers&&y.headers.length){A=new a();if(A.init(y.get(\"exif\")[0])){A.setExif(\"PixelXDimension\",B);A.setExif(\"PixelYDimension\",x);y.set(\"exif\",A.getBinary());if(t.hasEventListener(\"ExifData\")){t.trigger(\"ExifData\",r,A.EXIF())}if(t.hasEventListener(\"GpsData\")){t.trigger(\"GpsData\",r,A.GPS())}}}if(p.quality){try{w=q.toDataURL(n,p.quality/100)}catch(C){w=q.toDataURL(n)}}}else{w=q.toDataURL(n)}w=w.substring(w.indexOf(\"base64,\")+7);w=atob(w);if(y&&y.headers&&y.headers.length){w=y.restore(w);y.purge()}q.parentNode.removeChild(q);v({success:true,data:w})}else{v({success:false})}};u.src=w})}j.runtimes.Html5=j.addRuntime(\"html5\",{getFeatures:function(){var s,o,r,q,p,n;o=r=p=n=false;if(h.XMLHttpRequest){s=new XMLHttpRequest();r=!!s.upload;o=!!(s.sendAsBinary||s.upload)}if(o){q=!!(s.sendAsBinary||(h.Uint8Array&&h.ArrayBuffer));p=!!(File&&(File.prototype.getAsDataURL||h.FileReader)&&q);n=!!(File&&(File.prototype.mozSlice||File.prototype.webkitSlice||File.prototype.slice))}g=j.ua.safari&&j.ua.windows;return{html5:o,dragdrop:(function(){var t=k.createElement(\"div\");return(\"draggable\" in t)||(\"ondragstart\" in t&&\"ondrop\" in t)}()),jpgresize:p,pngresize:p,multipart:p||!!h.FileReader||!!h.FormData,canSendBinary:q,cantSendBlobInFormData:!!(j.ua.gecko&&h.FormData&&h.FileReader&&!FileReader.prototype.readAsArrayBuffer),progress:r,chunks:n,multi_selection:!(j.ua.safari&&j.ua.windows),triggerDialog:(j.ua.gecko&&h.FormData||j.ua.webkit)}},init:function(p,q){var n;function o(v){var t,s,u=[],w,r={};for(s=0;s<v.length;s++){t=v[s];if(r[t.name]){continue}r[t.name]=true;w=j.guid();c[w]=t;u.push(new j.File(w,t.fileName||t.name,t.fileSize||t.size))}if(u.length){p.trigger(\"FilesAdded\",u)}}n=this.getFeatures();if(!n.html5){q({success:false});return}p.bind(\"Init\",function(v){var F,E,B=[],u,C,s=v.settings.filters,t,A,r=k.body,D;F=k.createElement(\"div\");F.id=v.id+\"_html5_container\";j.extend(F.style,{position:\"absolute\",background:p.settings.shim_bgcolor||\"transparent\",width:\"100px\",height:\"100px\",overflow:\"hidden\",zIndex:99999,opacity:p.settings.shim_bgcolor?\"\":0});F.className=\"plupload html5\";if(p.settings.container){r=k.getElementById(p.settings.container);if(j.getStyle(r,\"position\")===\"static\"){r.style.position=\"relative\"}}r.appendChild(F);no_type_restriction:for(u=0;u<s.length;u++){t=s[u].extensions.split(/,/);for(C=0;C<t.length;C++){if(t[C]===\"*\"){B=[];break no_type_restriction}A=j.mimeTypes[t[C]];if(A){B.push(A)}}}F.innerHTML='<input id=\"'+p.id+'_html5\"  style=\"font-size:999px\" type=\"file\" accept=\"'+B.join(\",\")+'\" '+(p.settings.multi_selection&&p.features.multi_selection?'multiple=\"multiple\"':\"\")+\" />\";F.scrollTop=100;D=k.getElementById(p.id+\"_html5\");if(v.features.triggerDialog){j.extend(D.style,{position:\"absolute\",width:\"100%\",height:\"100%\"})}else{j.extend(D.style,{cssFloat:\"right\",styleFloat:\"right\"})}D.onchange=function(){o(this.files);this.value=\"\"};E=k.getElementById(v.settings.browse_button);if(E){var x=v.settings.browse_button_hover,z=v.settings.browse_button_active,w=v.features.triggerDialog?E:F;if(x){j.addEvent(w,\"mouseover\",function(){j.addClass(E,x)},v.id);j.addEvent(w,\"mouseout\",function(){j.removeClass(E,x)},v.id)}if(z){j.addEvent(w,\"mousedown\",function(){j.addClass(E,z)},v.id);j.addEvent(k.body,\"mouseup\",function(){j.removeClass(E,z)},v.id)}if(v.features.triggerDialog){j.addEvent(E,\"click\",function(y){k.getElementById(v.id+\"_html5\").click();y.preventDefault()},v.id)}}});p.bind(\"PostInit\",function(){var r=k.getElementById(p.settings.drop_element);if(r){if(g){j.addEvent(r,\"dragenter\",function(v){var u,s,t;u=k.getElementById(p.id+\"_drop\");if(!u){u=k.createElement(\"input\");u.setAttribute(\"type\",\"file\");u.setAttribute(\"id\",p.id+\"_drop\");u.setAttribute(\"multiple\",\"multiple\");j.addEvent(u,\"change\",function(){o(this.files);j.removeEvent(u,\"change\",p.id);u.parentNode.removeChild(u)},p.id);r.appendChild(u)}s=j.getPos(r,k.getElementById(p.settings.container));t=j.getSize(r);if(j.getStyle(r,\"position\")===\"static\"){j.extend(r.style,{position:\"relative\"})}j.extend(u.style,{position:\"absolute\",display:\"block\",top:0,left:0,width:t.w+\"px\",height:t.h+\"px\",opacity:0})},p.id);return}j.addEvent(r,\"dragover\",function(s){s.preventDefault()},p.id);j.addEvent(r,\"drop\",function(t){var s=t.dataTransfer;if(s&&s.files){o(s.files)}t.preventDefault()},p.id)}});p.bind(\"Refresh\",function(r){var s,t,u,w,v;s=k.getElementById(p.settings.browse_button);if(s){t=j.getPos(s,k.getElementById(r.settings.container));u=j.getSize(s);w=k.getElementById(p.id+\"_html5_container\");j.extend(w.style,{top:t.y+\"px\",left:t.x+\"px\",width:u.w+\"px\",height:u.h+\"px\"});if(p.features.triggerDialog){if(j.getStyle(s,\"position\")===\"static\"){j.extend(s.style,{position:\"relative\"})}v=parseInt(j.getStyle(s,\"z-index\"),10);if(isNaN(v)){v=0}j.extend(s.style,{zIndex:v});j.extend(w.style,{zIndex:v-1})}}});p.bind(\"UploadFile\",function(r,t){var u=r.settings,x,s;function w(z,C,y){var A;if(File.prototype.slice){try{z.slice();return z.slice(C,y)}catch(B){return z.slice(C,y-C)}}else{if(A=File.prototype.webkitSlice||File.prototype.mozSlice){return A.call(z,C,y)}else{return null}}}function v(z){var C=0,B=0,y=(\"FileReader\" in h)?new FileReader:null;function A(){var H,L,J,K,G,I,E,D=r.settings.url;function F(V){var S=0,T=new XMLHttpRequest,W=T.upload,M=\"----pluploadboundary\"+j.guid(),N,O=\"--\",U=\"\\r\\n\",Q=\"\";if(W){W.onprogress=function(X){t.loaded=Math.min(t.size,B+X.loaded-S);r.trigger(\"UploadProgress\",t)}}T.onreadystatechange=function(){var X,Z;if(T.readyState==4){try{X=T.status}catch(Y){X=0}if(X>=400){r.trigger(\"Error\",{code:j.HTTP_ERROR,message:j.translate(\"HTTP Error.\"),file:t,status:X})}else{if(J){Z={chunk:C,chunks:J,response:T.responseText,status:X};r.trigger(\"ChunkUploaded\",t,Z);B+=I;if(Z.cancelled){t.status=j.FAILED;return}t.loaded=Math.min(t.size,(C+1)*G)}else{t.loaded=t.size}r.trigger(\"UploadProgress\",t);V=H=N=Q=null;if(!J||++C>=J){t.status=j.DONE;r.trigger(\"FileUploaded\",t,{response:T.responseText,status:X})}else{A()}}T=null}};if(r.settings.multipart&&n.multipart){K.name=t.target_name||t.name;T.open(\"post\",D,true);j.each(r.settings.headers,function(Y,X){T.setRequestHeader(X,Y)});if(typeof(V)!==\"string\"&&!!h.FormData){N=new FormData();j.each(j.extend(K,r.settings.multipart_params),function(Y,X){N.append(X,Y)});N.append(r.settings.file_data_name,V);T.send(N);return}if(typeof(V)===\"string\"){T.setRequestHeader(\"Content-Type\",\"multipart/form-data; boundary=\"+M);j.each(j.extend(K,r.settings.multipart_params),function(Y,X){Q+=O+M+U+'Content-Disposition: form-data; name=\"'+X+'\"'+U+U;Q+=unescape(encodeURIComponent(Y))+U});E=j.mimeTypes[t.name.replace(/^.+\\.([^.]+)/,\"$1\").toLowerCase()]||\"application/octet-stream\";Q+=O+M+U+'Content-Disposition: form-data; name=\"'+r.settings.file_data_name+'\"; filename=\"'+unescape(encodeURIComponent(t.name))+'\"'+U+\"Content-Type: \"+E+U+U+V+U+O+M+O+U;S=Q.length-V.length;V=Q;if(T.sendAsBinary){T.sendAsBinary(V)}else{if(n.canSendBinary){var R=new Uint8Array(V.length);for(var P=0;P<V.length;P++){R[P]=(V.charCodeAt(P)&255)}T.send(R.buffer)}}return}}D=j.buildUrl(r.settings.url,j.extend(K,r.settings.multipart_params));T.open(\"post\",D,true);T.setRequestHeader(\"Content-Type\",\"application/octet-stream\");j.each(r.settings.headers,function(Y,X){T.setRequestHeader(X,Y)});T.send(V)}if(t.status==j.DONE||t.status==j.FAILED||r.state==j.STOPPED){return}K={name:t.target_name||t.name};if(u.chunk_size&&t.size>u.chunk_size&&(n.chunks||typeof(z)==\"string\")){G=u.chunk_size;J=Math.ceil(t.size/G);I=Math.min(G,t.size-(C*G));if(typeof(z)==\"string\"){H=z.substring(C*G,C*G+I)}else{H=w(z,C*G,C*G+I)}K.chunk=C;K.chunks=J}else{I=t.size;H=z}if(typeof(H)!==\"string\"&&y&&n.cantSendBlobInFormData&&n.chunks&&r.settings.chunk_size){y.onload=function(){F(y.result)};y.readAsBinaryString(H)}else{F(H)}}A()}x=c[t.id];if(n.jpgresize&&r.settings.resize&&/\\.(png|jpg|jpeg)$/i.test(t.name)){d.call(r,t,r.settings.resize,/\\.png$/i.test(t.name)?\"image/png\":\"image/jpeg\",function(y){if(y.success){t.size=y.data.length;v(y.data)}else{v(x)}})}else{if(!n.chunks&&n.jpgresize){l(x,v)}else{v(x)}}});p.bind(\"Destroy\",function(r){var t,u,s=k.body,v={inputContainer:r.id+\"_html5_container\",inputFile:r.id+\"_html5\",browseButton:r.settings.browse_button,dropElm:r.settings.drop_element};for(t in v){u=k.getElementById(v[t]);if(u){j.removeAllEvents(u,r.id)}}j.removeAllEvents(k.body,r.id);if(r.settings.container){s=k.getElementById(r.settings.container)}s.removeChild(k.getElementById(v.inputContainer))});q({success:true})}});function b(){var q=false,o;function r(t,v){var s=q?0:-8*(v-1),w=0,u;for(u=0;u<v;u++){w|=(o.charCodeAt(t+u)<<Math.abs(s+u*8))}return w}function n(u,s,t){var t=arguments.length===3?t:o.length-s-1;o=o.substr(0,s)+u+o.substr(t+s)}function p(t,u,w){var x=\"\",s=q?0:-8*(w-1),v;for(v=0;v<w;v++){x+=String.fromCharCode((u>>Math.abs(s+v*8))&255)}n(x,t,w)}return{II:function(s){if(s===e){return q}else{q=s}},init:function(s){q=false;o=s},SEGMENT:function(s,u,t){switch(arguments.length){case 1:return o.substr(s,o.length-s-1);case 2:return o.substr(s,u);case 3:n(t,s,u);break;default:return o}},BYTE:function(s){return r(s,1)},SHORT:function(s){return r(s,2)},LONG:function(s,t){if(t===e){return r(s,4)}else{p(s,t,4)}},SLONG:function(s){var t=r(s,4);return(t>2147483647?t-4294967296:t)},STRING:function(s,t){var u=\"\";for(t+=s;s<t;s++){u+=String.fromCharCode(r(s,1))}return u}}}function f(s){var u={65505:{app:\"EXIF\",name:\"APP1\",signature:\"Exif\\0\"},65506:{app:\"ICC\",name:\"APP2\",signature:\"ICC_PROFILE\\0\"},65517:{app:\"IPTC\",name:\"APP13\",signature:\"Photoshop 3.0\\0\"}},t=[],r,n,p=e,q=0,o;r=new b();r.init(s);if(r.SHORT(0)!==65496){return}n=2;o=Math.min(1048576,s.length);while(n<=o){p=r.SHORT(n);if(p>=65488&&p<=65495){n+=2;continue}if(p===65498||p===65497){break}q=r.SHORT(n+2)+2;if(u[p]&&r.STRING(n+4,u[p].signature.length)===u[p].signature){t.push({hex:p,app:u[p].app.toUpperCase(),name:u[p].name.toUpperCase(),start:n,length:q,segment:r.SEGMENT(n,q)})}n+=q}r.init(null);return{headers:t,restore:function(y){r.init(y);var w=new f(y);if(!w.headers){return false}for(var x=w.headers.length;x>0;x--){var z=w.headers[x-1];r.SEGMENT(z.start,z.length,\"\")}w.purge();n=r.SHORT(2)==65504?4+r.SHORT(4):2;for(var x=0,v=t.length;x<v;x++){r.SEGMENT(n,0,t[x].segment);n+=t[x].length}return r.SEGMENT()},get:function(x){var y=[];for(var w=0,v=t.length;w<v;w++){if(t[w].app===x.toUpperCase()){y.push(t[w].segment)}}return y},set:function(y,x){var z=[];if(typeof(x)===\"string\"){z.push(x)}else{z=x}for(var w=ii=0,v=t.length;w<v;w++){if(t[w].app===y.toUpperCase()){t[w].segment=z[ii];t[w].length=z[ii].length;ii++}if(ii>=z.length){break}}},purge:function(){t=[];r.init(null)}}}function a(){var q,n,o={},t;q=new b();n={tiff:{274:\"Orientation\",34665:\"ExifIFDPointer\",34853:\"GPSInfoIFDPointer\"},exif:{36864:\"ExifVersion\",40961:\"ColorSpace\",40962:\"PixelXDimension\",40963:\"PixelYDimension\",36867:\"DateTimeOriginal\",33434:\"ExposureTime\",33437:\"FNumber\",34855:\"ISOSpeedRatings\",37377:\"ShutterSpeedValue\",37378:\"ApertureValue\",37383:\"MeteringMode\",37384:\"LightSource\",37385:\"Flash\",41986:\"ExposureMode\",41987:\"WhiteBalance\",41990:\"SceneCaptureType\",41988:\"DigitalZoomRatio\",41992:\"Contrast\",41993:\"Saturation\",41994:\"Sharpness\"},gps:{0:\"GPSVersionID\",1:\"GPSLatitudeRef\",2:\"GPSLatitude\",3:\"GPSLongitudeRef\",4:\"GPSLongitude\"}};t={ColorSpace:{1:\"sRGB\",0:\"Uncalibrated\"},MeteringMode:{0:\"Unknown\",1:\"Average\",2:\"CenterWeightedAverage\",3:\"Spot\",4:\"MultiSpot\",5:\"Pattern\",6:\"Partial\",255:\"Other\"},LightSource:{1:\"Daylight\",2:\"Fliorescent\",3:\"Tungsten\",4:\"Flash\",9:\"Fine weather\",10:\"Cloudy weather\",11:\"Shade\",12:\"Daylight fluorescent (D 5700 - 7100K)\",13:\"Day white fluorescent (N 4600 -5400K)\",14:\"Cool white fluorescent (W 3900 - 4500K)\",15:\"White fluorescent (WW 3200 - 3700K)\",17:\"Standard light A\",18:\"Standard light B\",19:\"Standard light C\",20:\"D55\",21:\"D65\",22:\"D75\",23:\"D50\",24:\"ISO studio tungsten\",255:\"Other\"},Flash:{0:\"Flash did not fire.\",1:\"Flash fired.\",5:\"Strobe return light not detected.\",7:\"Strobe return light detected.\",9:\"Flash fired, compulsory flash mode\",13:\"Flash fired, compulsory flash mode, return light not detected\",15:\"Flash fired, compulsory flash mode, return light detected\",16:\"Flash did not fire, compulsory flash mode\",24:\"Flash did not fire, auto mode\",25:\"Flash fired, auto mode\",29:\"Flash fired, auto mode, return light not detected\",31:\"Flash fired, auto mode, return light detected\",32:\"No flash function\",65:\"Flash fired, red-eye reduction mode\",69:\"Flash fired, red-eye reduction mode, return light not detected\",71:\"Flash fired, red-eye reduction mode, return light detected\",73:\"Flash fired, compulsory flash mode, red-eye reduction mode\",77:\"Flash fired, compulsory flash mode, red-eye reduction mode, return light not detected\",79:\"Flash fired, compulsory flash mode, red-eye reduction mode, return light detected\",89:\"Flash fired, auto mode, red-eye reduction mode\",93:\"Flash fired, auto mode, return light not detected, red-eye reduction mode\",95:\"Flash fired, auto mode, return light detected, red-eye reduction mode\"},ExposureMode:{0:\"Auto exposure\",1:\"Manual exposure\",2:\"Auto bracket\"},WhiteBalance:{0:\"Auto white balance\",1:\"Manual white balance\"},SceneCaptureType:{0:\"Standard\",1:\"Landscape\",2:\"Portrait\",3:\"Night scene\"},Contrast:{0:\"Normal\",1:\"Soft\",2:\"Hard\"},Saturation:{0:\"Normal\",1:\"Low saturation\",2:\"High saturation\"},Sharpness:{0:\"Normal\",1:\"Soft\",2:\"Hard\"},GPSLatitudeRef:{N:\"North latitude\",S:\"South latitude\"},GPSLongitudeRef:{E:\"East longitude\",W:\"West longitude\"}};function p(u,C){var w=q.SHORT(u),z,F,G,B,A,v,x,D,E=[],y={};for(z=0;z<w;z++){x=v=u+12*z+2;G=C[q.SHORT(x)];if(G===e){continue}B=q.SHORT(x+=2);A=q.LONG(x+=2);x+=4;E=[];switch(B){case 1:case 7:if(A>4){x=q.LONG(x)+o.tiffHeader}for(F=0;F<A;F++){E[F]=q.BYTE(x+F)}break;case 2:if(A>4){x=q.LONG(x)+o.tiffHeader}y[G]=q.STRING(x,A-1);continue;case 3:if(A>2){x=q.LONG(x)+o.tiffHeader}for(F=0;F<A;F++){E[F]=q.SHORT(x+F*2)}break;case 4:if(A>1){x=q.LONG(x)+o.tiffHeader}for(F=0;F<A;F++){E[F]=q.LONG(x+F*4)}break;case 5:x=q.LONG(x)+o.tiffHeader;for(F=0;F<A;F++){E[F]=q.LONG(x+F*4)/q.LONG(x+F*4+4)}break;case 9:x=q.LONG(x)+o.tiffHeader;for(F=0;F<A;F++){E[F]=q.SLONG(x+F*4)}break;case 10:x=q.LONG(x)+o.tiffHeader;for(F=0;F<A;F++){E[F]=q.SLONG(x+F*4)/q.SLONG(x+F*4+4)}break;default:continue}D=(A==1?E[0]:E);if(t.hasOwnProperty(G)&&typeof D!=\"object\"){y[G]=t[G][D]}else{y[G]=D}}return y}function s(){var v=e,u=o.tiffHeader;q.II(q.SHORT(u)==18761);if(q.SHORT(u+=2)!==42){return false}o.IFD0=o.tiffHeader+q.LONG(u+=2);v=p(o.IFD0,n.tiff);o.exifIFD=(\"ExifIFDPointer\" in v?o.tiffHeader+v.ExifIFDPointer:e);o.gpsIFD=(\"GPSInfoIFDPointer\" in v?o.tiffHeader+v.GPSInfoIFDPointer:e);return true}function r(w,u,z){var B,y,x,A=0;if(typeof(u)===\"string\"){var v=n[w.toLowerCase()];for(hex in v){if(v[hex]===u){u=hex;break}}}B=o[w.toLowerCase()+\"IFD\"];y=q.SHORT(B);for(i=0;i<y;i++){x=B+12*i+2;if(q.SHORT(x)==u){A=x+8;break}}if(!A){return false}q.LONG(A,z);return true}return{init:function(u){o={tiffHeader:10};if(u===e||!u.length){return false}q.init(u);if(q.SHORT(0)===65505&&q.STRING(4,5).toUpperCase()===\"EXIF\\0\"){return s()}return false},EXIF:function(){var u;u=p(o.exifIFD,n.exif);if(u.ExifVersion){u.ExifVersion=String.fromCharCode(u.ExifVersion[0],u.ExifVersion[1],u.ExifVersion[2],u.ExifVersion[3])}return u},GPS:function(){var u;u=p(o.gpsIFD,n.gps);if(u.GPSVersionID){u.GPSVersionID=u.GPSVersionID.join(\".\")}return u},setExif:function(u,v){if(u!==\"PixelXDimension\"&&u!==\"PixelYDimension\"){return false}return r(\"exif\",u,v)},getBinary:function(){return q.SEGMENT()}}}})(window,document,plupload);"
  },
  {
    "path": "newscoop/js/plupload/js/plupload.js",
    "content": "/*1.5.1.1*/\n(function(){var f=0,k=[],m={},i={},a={\"<\":\"lt\",\">\":\"gt\",\"&\":\"amp\",'\"':\"quot\",\"'\":\"#39\"},l=/[<>&\\\"\\']/g,b,c=window.setTimeout,d={},e;function h(){this.returnValue=false}function j(){this.cancelBubble=true}(function(n){var o=n.split(/,/),p,r,q;for(p=0;p<o.length;p+=2){q=o[p+1].split(/ /);for(r=0;r<q.length;r++){i[q[r]]=o[p]}}})(\"application/msword,doc dot,application/pdf,pdf,application/pgp-signature,pgp,application/postscript,ps ai eps,application/rtf,rtf,application/vnd.ms-excel,xls xlb,application/vnd.ms-powerpoint,ppt pps pot,application/zip,zip,application/x-shockwave-flash,swf swfl,application/vnd.openxmlformats,docx pptx xlsx,audio/mpeg,mpga mpega mp2 mp3,audio/x-wav,wav,audio/mp4,m4a,image/bmp,bmp,image/gif,gif,image/jpeg,jpeg jpg jpe,image/photoshop,psd,image/png,png,image/svg+xml,svg svgz,image/tiff,tiff tif,text/html,htm html xhtml,text/rtf,rtf,video/mpeg,mpeg mpg mpe,video/quicktime,qt mov,video/mp4,mp4,video/x-m4v,m4v,video/x-flv,flv,video/x-ms-wmv,wmv,video/avi,avi,video/webm,webm,video/vnd.rn-realvideo,rv,text/csv,csv,text/plain,asc txt text diff log,application/octet-stream,exe\");var g={VERSION:\"1.5.1.1\",STOPPED:1,STARTED:2,QUEUED:1,UPLOADING:2,FAILED:4,DONE:5,GENERIC_ERROR:-100,HTTP_ERROR:-200,IO_ERROR:-300,SECURITY_ERROR:-400,INIT_ERROR:-500,FILE_SIZE_ERROR:-600,FILE_EXTENSION_ERROR:-601,IMAGE_FORMAT_ERROR:-700,IMAGE_MEMORY_ERROR:-701,IMAGE_DIMENSIONS_ERROR:-702,mimeTypes:i,ua:(function(){var r=navigator,q=r.userAgent,s=r.vendor,o,n,p;o=/WebKit/.test(q);p=o&&s.indexOf(\"Apple\")!==-1;n=window.opera&&window.opera.buildNumber;return{windows:navigator.platform.indexOf(\"Win\")!==-1,ie:!o&&!n&&(/MSIE/gi).test(q)&&(/Explorer/gi).test(r.appName),webkit:o,gecko:!o&&/Gecko/.test(q),safari:p,opera:!!n}}()),extend:function(n){g.each(arguments,function(o,p){if(p>0){g.each(o,function(r,q){n[q]=r})}});return n},cleanName:function(n){var o,p;p=[/[\\300-\\306]/g,\"A\",/[\\340-\\346]/g,\"a\",/\\307/g,\"C\",/\\347/g,\"c\",/[\\310-\\313]/g,\"E\",/[\\350-\\353]/g,\"e\",/[\\314-\\317]/g,\"I\",/[\\354-\\357]/g,\"i\",/\\321/g,\"N\",/\\361/g,\"n\",/[\\322-\\330]/g,\"O\",/[\\362-\\370]/g,\"o\",/[\\331-\\334]/g,\"U\",/[\\371-\\374]/g,\"u\"];for(o=0;o<p.length;o+=2){n=n.replace(p[o],p[o+1])}n=n.replace(/\\s+/g,\"_\");n=n.replace(/[^a-z0-9_\\-\\.]+/gi,\"\");return n},addRuntime:function(n,o){o.name=n;k[n]=o;k.push(o);return o},guid:function(){var n=new Date().getTime().toString(32),o;for(o=0;o<5;o++){n+=Math.floor(Math.random()*65535).toString(32)}return(g.guidPrefix||\"p\")+n+(f++).toString(32)},buildUrl:function(o,n){var p=\"\";g.each(n,function(r,q){p+=(p?\"&\":\"\")+encodeURIComponent(q)+\"=\"+encodeURIComponent(r)});if(p){o+=(o.indexOf(\"?\")>0?\"&\":\"?\")+p}return o},each:function(q,r){var p,o,n;if(q){p=q.length;if(p===b){for(o in q){if(q.hasOwnProperty(o)){if(r(q[o],o)===false){return}}}}else{for(n=0;n<p;n++){if(r(q[n],n)===false){return}}}}},formatSize:function(n){if(n===b||/\\D/.test(n)){return g.translate(\"N/A\")}if(n>1073741824){return Math.round(n/1073741824,1)+\" GB\"}if(n>1048576){return Math.round(n/1048576,1)+\" MB\"}if(n>1024){return Math.round(n/1024,1)+\" KB\"}return n+\" b\"},getPos:function(o,s){var t=0,r=0,v,u=document,p,q;o=o;s=s||u.body;function n(B){var z,A,w=0,C=0;if(B){A=B.getBoundingClientRect();z=u.compatMode===\"CSS1Compat\"?u.documentElement:u.body;w=A.left+z.scrollLeft;C=A.top+z.scrollTop}return{x:w,y:C}}if(o&&o.getBoundingClientRect&&(navigator.userAgent.indexOf(\"MSIE\")>0&&u.documentMode!==8)){p=n(o);q=n(s);return{x:p.x-q.x,y:p.y-q.y}}v=o;while(v&&v!=s&&v.nodeType){t+=v.offsetLeft||0;r+=v.offsetTop||0;v=v.offsetParent}v=o.parentNode;while(v&&v!=s&&v.nodeType){t-=v.scrollLeft||0;r-=v.scrollTop||0;v=v.parentNode}return{x:t,y:r}},getSize:function(n){return{w:n.offsetWidth||n.clientWidth,h:n.offsetHeight||n.clientHeight}},parseSize:function(n){var o;if(typeof(n)==\"string\"){n=/^([0-9]+)([mgk]?)$/.exec(n.toLowerCase().replace(/[^0-9mkg]/g,\"\"));o=n[2];n=+n[1];if(o==\"g\"){n*=1073741824}if(o==\"m\"){n*=1048576}if(o==\"k\"){n*=1024}}return n},xmlEncode:function(n){return n?(\"\"+n).replace(l,function(o){return a[o]?\"&\"+a[o]+\";\":o}):n},toArray:function(p){var o,n=[];for(o=0;o<p.length;o++){n[o]=p[o]}return n},addI18n:function(n){return g.extend(m,n)},translate:function(n){return m[n]||n},isEmptyObj:function(n){if(n===b){return true}for(var o in n){return false}return true},hasClass:function(p,o){var n;if(p.className==\"\"){return false}n=new RegExp(\"(^|\\\\s+)\"+o+\"(\\\\s+|$)\");return n.test(p.className)},addClass:function(o,n){if(!g.hasClass(o,n)){o.className=o.className==\"\"?n:o.className.replace(/\\s+$/,\"\")+\" \"+n}},removeClass:function(p,o){var n=new RegExp(\"(^|\\\\s+)\"+o+\"(\\\\s+|$)\");p.className=p.className.replace(n,function(r,q,s){return q===\" \"&&s===\" \"?\" \":\"\"})},getStyle:function(o,n){if(o.currentStyle){return o.currentStyle[n]}else{if(window.getComputedStyle){return window.getComputedStyle(o,null)[n]}}},addEvent:function(s,n,t){var r,q,p,o;o=arguments[3];n=n.toLowerCase();if(e===b){e=\"Plupload_\"+g.guid()}if(s.addEventListener){r=t;s.addEventListener(n,r,false)}else{if(s.attachEvent){r=function(){var u=window.event;if(!u.target){u.target=u.srcElement}u.preventDefault=h;u.stopPropagation=j;t(u)};s.attachEvent(\"on\"+n,r)}}if(s[e]===b){s[e]=g.guid()}if(!d.hasOwnProperty(s[e])){d[s[e]]={}}q=d[s[e]];if(!q.hasOwnProperty(n)){q[n]=[]}q[n].push({func:r,orig:t,key:o})},removeEvent:function(s,n){var q,t,p;if(typeof(arguments[2])==\"function\"){t=arguments[2]}else{p=arguments[2]}n=n.toLowerCase();if(s[e]&&d[s[e]]&&d[s[e]][n]){q=d[s[e]][n]}else{return}for(var o=q.length-1;o>=0;o--){if(q[o].key===p||q[o].orig===t){if(s.detachEvent){s.detachEvent(\"on\"+n,q[o].func)}else{if(s.removeEventListener){s.removeEventListener(n,q[o].func,false)}}q[o].orig=null;q[o].func=null;q.splice(o,1);if(t!==b){break}}}if(!q.length){delete d[s[e]][n]}if(g.isEmptyObj(d[s[e]])){delete d[s[e]];try{delete s[e]}catch(r){s[e]=b}}},removeAllEvents:function(o){var n=arguments[1];if(o[e]===b||!o[e]){return}g.each(d[o[e]],function(q,p){g.removeEvent(o,p,n)})}};g.Uploader=function(q){var o={},t,s=[],p;t=new g.QueueProgress();q=g.extend({chunk_size:0,multipart:true,multi_selection:true,file_data_name:\"file\",filters:[]},q);function r(){var v,w=0,u;if(this.state==g.STARTED){for(u=0;u<s.length;u++){if(!v&&s[u].status==g.QUEUED){v=s[u];v.status=g.UPLOADING;if(this.trigger(\"BeforeUpload\",v)){this.trigger(\"UploadFile\",v)}}else{w++}}if(w==s.length){this.stop();this.trigger(\"UploadComplete\",s)}}}function n(){var v,u;t.reset();for(v=0;v<s.length;v++){u=s[v];if(u.size!==b){t.size+=u.size;t.loaded+=u.loaded}else{t.size=b}if(u.status==g.DONE){t.uploaded++}else{if(u.status==g.FAILED){t.failed++}else{t.queued++}}}if(t.size===b){t.percent=s.length>0?Math.ceil(t.uploaded/s.length*100):0}else{t.bytesPerSec=Math.ceil(t.loaded/((+new Date()-p||1)/1000));t.percent=t.size>0?Math.ceil(t.loaded/t.size*100):0}}g.extend(this,{state:g.STOPPED,runtime:\"\",features:{},files:s,settings:q,total:t,id:g.guid(),init:function(){var z=this,A,w,v,y=0,x;if(typeof(q.preinit)==\"function\"){q.preinit(z)}else{g.each(q.preinit,function(C,B){z.bind(B,C)})}q.page_url=q.page_url||document.location.pathname.replace(/\\/[^\\/]+$/g,\"/\");if(!/^(\\w+:\\/\\/|\\/)/.test(q.url)){q.url=q.page_url+q.url}q.chunk_size=g.parseSize(q.chunk_size);q.max_file_size=g.parseSize(q.max_file_size);z.bind(\"FilesAdded\",function(B,E){var D,C,G=0,H,F=q.filters;if(F&&F.length){H=[];g.each(F,function(I){g.each(I.extensions.split(/,/),function(J){if(/^\\s*\\*\\s*$/.test(J)){H.push(\"\\\\.*\")}else{H.push(\"\\\\.\"+J.replace(new RegExp(\"[\"+(\"/^$.*+?|()[]{}\\\\\".replace(/./g,\"\\\\$&\"))+\"]\",\"g\"),\"\\\\$&\"))}})});H=new RegExp(H.join(\"|\")+\"$\",\"i\")}for(D=0;D<E.length;D++){C=E[D];C.loaded=0;C.percent=0;C.status=g.QUEUED;if(H&&!H.test(C.name)){B.trigger(\"Error\",{code:g.FILE_EXTENSION_ERROR,message:g.translate(\"File extension error.\"),file:C});continue}if(C.size!==b&&C.size>q.max_file_size){B.trigger(\"Error\",{code:g.FILE_SIZE_ERROR,message:g.translate(\"File size error.\"),file:C});continue}s.push(C);G++}if(G){c(function(){z.trigger(\"QueueChanged\");z.refresh()},1)}else{return false}});if(q.unique_names){z.bind(\"UploadFile\",function(B,C){var E=C.name.match(/\\.([^.]+)$/),D=\"tmp\";if(E){D=E[1]}C.target_name=C.id+\".\"+D})}z.bind(\"UploadProgress\",function(B,C){C.percent=C.size>0?Math.ceil(C.loaded/C.size*100):100;n()});z.bind(\"StateChanged\",function(B){if(B.state==g.STARTED){p=(+new Date())}else{if(B.state==g.STOPPED){for(A=B.files.length-1;A>=0;A--){if(B.files[A].status==g.UPLOADING){B.files[A].status=g.QUEUED;n()}}}}});z.bind(\"QueueChanged\",n);z.bind(\"Error\",function(B,C){if(C.file){C.file.status=g.FAILED;n();if(B.state==g.STARTED){c(function(){r.call(z)},1)}}});z.bind(\"FileUploaded\",function(B,C){C.status=g.DONE;C.loaded=C.size;B.trigger(\"UploadProgress\",C);c(function(){r.call(z)},1)});if(q.runtimes){w=[];x=q.runtimes.split(/\\s?,\\s?/);for(A=0;A<x.length;A++){if(k[x[A]]){w.push(k[x[A]])}}}else{w=k}function u(){var E=w[y++],D,B,C;if(E){D=E.getFeatures();B=z.settings.required_features;if(B){B=B.split(\",\");for(C=0;C<B.length;C++){if(!D[B[C]]){u();return}}}E.init(z,function(F){if(F&&F.success){z.features=D;z.runtime=E.name;z.trigger(\"Init\",{runtime:E.name});z.trigger(\"PostInit\");z.refresh()}else{u()}})}else{z.trigger(\"Error\",{code:g.INIT_ERROR,message:g.translate(\"Init error.\")})}}u();if(typeof(q.init)==\"function\"){q.init(z)}else{g.each(q.init,function(C,B){z.bind(B,C)})}},refresh:function(){this.trigger(\"Refresh\")},start:function(){if(this.state!=g.STARTED){this.state=g.STARTED;this.trigger(\"StateChanged\");r.call(this)}},stop:function(){if(this.state!=g.STOPPED){this.state=g.STOPPED;this.trigger(\"StateChanged\")}},getFile:function(v){var u;for(u=s.length-1;u>=0;u--){if(s[u].id===v){return s[u]}}},removeFile:function(v){var u;for(u=s.length-1;u>=0;u--){if(s[u].id===v.id){return this.splice(u,1)[0]}}},splice:function(w,u){var v;v=s.splice(w===b?0:w,u===b?s.length:u);this.trigger(\"FilesRemoved\",v);this.trigger(\"QueueChanged\");return v},trigger:function(v){var x=o[v.toLowerCase()],w,u;if(x){u=Array.prototype.slice.call(arguments);u[0]=this;for(w=0;w<x.length;w++){if(x[w].func.apply(x[w].scope,u)===false){return false}}}return true},hasEventListener:function(u){return !!o[u.toLowerCase()]},bind:function(u,w,v){var x;u=u.toLowerCase();x=o[u]||[];x.push({func:w,scope:v||this});o[u]=x},unbind:function(u){u=u.toLowerCase();var x=o[u],v,w=arguments[1];if(x){if(w!==b){for(v=x.length-1;v>=0;v--){if(x[v].func===w){x.splice(v,1);break}}}else{x=[]}if(!x.length){delete o[u]}}},unbindAll:function(){var u=this;g.each(o,function(w,v){u.unbind(v)})},destroy:function(){this.trigger(\"Destroy\");this.unbindAll()}})};g.File=function(q,o,p){var n=this;n.id=q;n.name=o;n.size=p;n.loaded=0;n.percent=0;n.status=0};g.Runtime=function(){this.getFeatures=function(){};this.init=function(n,o){}};g.QueueProgress=function(){var n=this;n.size=0;n.loaded=0;n.uploaded=0;n.failed=0;n.queued=0;n.percent=0;n.bytesPerSec=0;n.reset=function(){n.size=n.loaded=n.uploaded=n.failed=n.queued=n.percent=n.bytesPerSec=0}};g.runtimes={};window.plupload=g})();"
  },
  {
    "path": "newscoop/js/plupload/js/plupload.silverlight.js",
    "content": "(function(g,b,d,e){var a={},h={};function c(o){var n,m=typeof o,j,l,k;if(o===e||o===null){return\"null\"}if(m===\"string\"){n=\"\\bb\\tt\\nn\\ff\\rr\\\"\\\"''\\\\\\\\\";return'\"'+o.replace(/([\\u0080-\\uFFFF\\x00-\\x1f\\\"])/g,function(q,p){var i=n.indexOf(p);if(i+1){return\"\\\\\"+n.charAt(i+1)}q=p.charCodeAt().toString(16);return\"\\\\u\"+\"0000\".substring(q.length)+q})+'\"'}if(m==\"object\"){j=o.length!==e;n=\"\";if(j){for(l=0;l<o.length;l++){if(n){n+=\",\"}n+=c(o[l])}n=\"[\"+n+\"]\"}else{for(k in o){if(o.hasOwnProperty(k)){if(n){n+=\",\"}n+=c(k)+\":\"+c(o[k])}}n=\"{\"+n+\"}\"}return n}return\"\"+o}function f(r){var u=false,i=null,n=null,j,k,l,t,m,p=0;try{try{n=new ActiveXObject(\"AgControl.AgControl\");if(n.IsVersionSupported(r)){u=true}n=null}catch(q){var o=navigator.plugins[\"Silverlight Plug-In\"];if(o){j=o.description;if(j===\"1.0.30226.2\"){j=\"2.0.30226.2\"}k=j.split(\".\");while(k.length>3){k.pop()}while(k.length<4){k.push(0)}l=r.split(\".\");while(l.length>4){l.pop()}do{t=parseInt(l[p],10);m=parseInt(k[p],10);p++}while(p<l.length&&t===m);if(t<=m&&!isNaN(t)){u=true}}}}catch(s){u=false}return u}d.silverlight={trigger:function(n,k){var m=a[n],l,j;if(m){j=d.toArray(arguments).slice(1);j[0]=\"Silverlight:\"+k;setTimeout(function(){m.trigger.apply(m,j)},0)}}};d.runtimes.Silverlight=d.addRuntime(\"silverlight\",{getFeatures:function(){return{jpgresize:true,pngresize:true,chunks:true,progress:true,multipart:true,multi_selection:true}},init:function(p,q){var o,m=\"\",n=p.settings.filters,l,k=b.body;if(!f(\"2.0.31005.0\")||(g.opera&&g.opera.buildNumber)){q({success:false});return}h[p.id]=false;a[p.id]=p;o=b.createElement(\"div\");o.id=p.id+\"_silverlight_container\";d.extend(o.style,{position:\"absolute\",top:\"0px\",background:p.settings.shim_bgcolor||\"transparent\",zIndex:99999,width:\"100px\",height:\"100px\",overflow:\"hidden\",opacity:p.settings.shim_bgcolor||b.documentMode>8?\"\":0.01});o.className=\"plupload silverlight\";if(p.settings.container){k=b.getElementById(p.settings.container);if(d.getStyle(k,\"position\")===\"static\"){k.style.position=\"relative\"}}k.appendChild(o);for(l=0;l<n.length;l++){m+=(m!=\"\"?\"|\":\"\")+n[l].title+\" | *.\"+n[l].extensions.replace(/,/g,\";*.\")}o.innerHTML='<object id=\"'+p.id+'_silverlight\" data=\"data:application/x-silverlight,\" type=\"application/x-silverlight-2\" style=\"outline:none;\" width=\"1024\" height=\"1024\"><param name=\"source\" value=\"'+p.settings.silverlight_xap_url+'\"/><param name=\"background\" value=\"Transparent\"/><param name=\"windowless\" value=\"true\"/><param name=\"enablehtmlaccess\" value=\"true\"/><param name=\"initParams\" value=\"id='+p.id+\",filter=\"+m+\",multiselect=\"+p.settings.multi_selection+'\"/></object>';function j(){return b.getElementById(p.id+\"_silverlight\").content.Upload}p.bind(\"Silverlight:Init\",function(){var i,r={};if(h[p.id]){return}h[p.id]=true;p.bind(\"Silverlight:StartSelectFiles\",function(s){i=[]});p.bind(\"Silverlight:SelectFile\",function(s,v,t,u){var w;w=d.guid();r[w]=v;r[v]=w;i.push(new d.File(w,t,u))});p.bind(\"Silverlight:SelectSuccessful\",function(){if(i.length){p.trigger(\"FilesAdded\",i)}});p.bind(\"Silverlight:UploadChunkError\",function(s,v,t,w,u){p.trigger(\"Error\",{code:d.IO_ERROR,message:\"IO Error.\",details:u,file:s.getFile(r[v])})});p.bind(\"Silverlight:UploadFileProgress\",function(s,w,t,v){var u=s.getFile(r[w]);if(u.status!=d.FAILED){u.size=v;u.loaded=t;s.trigger(\"UploadProgress\",u)}});p.bind(\"Refresh\",function(s){var t,u,v;t=b.getElementById(s.settings.browse_button);if(t){u=d.getPos(t,b.getElementById(s.settings.container));v=d.getSize(t);d.extend(b.getElementById(s.id+\"_silverlight_container\").style,{top:u.y+\"px\",left:u.x+\"px\",width:v.w+\"px\",height:v.h+\"px\"})}});p.bind(\"Silverlight:UploadChunkSuccessful\",function(s,v,t,y,x){var w,u=s.getFile(r[v]);w={chunk:t,chunks:y,response:x};s.trigger(\"ChunkUploaded\",u,w);if(u.status!=d.FAILED){j().UploadNextChunk()}if(t==y-1){u.status=d.DONE;s.trigger(\"FileUploaded\",u,{response:x})}});p.bind(\"Silverlight:UploadSuccessful\",function(s,v,t){var u=s.getFile(r[v]);u.status=d.DONE;s.trigger(\"FileUploaded\",u,{response:t})});p.bind(\"FilesRemoved\",function(s,u){var t;for(t=0;t<u.length;t++){j().RemoveFile(r[u[t].id])}});p.bind(\"UploadFile\",function(s,u){var v=s.settings,t=v.resize||{};j().UploadFile(r[u.id],s.settings.url,c({name:u.target_name||u.name,mime:d.mimeTypes[u.name.replace(/^.+\\.([^.]+)/,\"$1\").toLowerCase()]||\"application/octet-stream\",chunk_size:v.chunk_size,image_width:t.width,image_height:t.height,image_quality:t.quality||90,multipart:!!v.multipart,multipart_params:v.multipart_params||{},file_data_name:v.file_data_name,headers:v.headers}))});p.bind(\"Silverlight:MouseEnter\",function(s){var t,u;t=b.getElementById(p.settings.browse_button);u=s.settings.browse_button_hover;if(t&&u){d.addClass(t,u)}});p.bind(\"Silverlight:MouseLeave\",function(s){var t,u;t=b.getElementById(p.settings.browse_button);u=s.settings.browse_button_hover;if(t&&u){d.removeClass(t,u)}});p.bind(\"Silverlight:MouseLeftButtonDown\",function(s){var t,u;t=b.getElementById(p.settings.browse_button);u=s.settings.browse_button_active;if(t&&u){d.addClass(t,u);d.addEvent(b.body,\"mouseup\",function(){d.removeClass(t,u)})}});p.bind(\"Sliverlight:StartSelectFiles\",function(s){var t,u;t=b.getElementById(p.settings.browse_button);u=s.settings.browse_button_active;if(t&&u){d.removeClass(t,u)}});p.bind(\"Destroy\",function(s){var t;d.removeAllEvents(b.body,s.id);delete h[s.id];delete a[s.id];t=b.getElementById(s.id+\"_silverlight_container\");if(t){k.removeChild(t)}});q({success:true})})}})})(window,document,plupload);"
  },
  {
    "path": "newscoop/js/plupload/license.txt",
    "content": "\t\t    GNU GENERAL PUBLIC LICENSE\r\n\t\t       Version 2, June 1991\r\n\r\n Copyright (C) 1989, 1991 Free Software Foundation, Inc.,\r\n 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA\r\n Everyone is permitted to copy and distribute verbatim copies\r\n of this license document, but changing it is not allowed.\r\n\r\n\t\t\t    Preamble\r\n\r\n  The licenses for most software are designed to take away your\r\nfreedom to share and change it.  By contrast, the GNU General Public\r\nLicense is intended to guarantee your freedom to share and change free\r\nsoftware--to make sure the software is free for all its users.  This\r\nGeneral Public License applies to most of the Free Software\r\nFoundation's software and to any other program whose authors commit to\r\nusing it.  (Some other Free Software Foundation software is covered by\r\nthe GNU Lesser General Public License instead.)  You can apply it to\r\nyour programs, too.\r\n\r\n  When we speak of free software, we are referring to freedom, not\r\nprice.  Our General Public Licenses are designed to make sure that you\r\nhave the freedom to distribute copies of free software (and charge for\r\nthis service if you wish), that you receive source code or can get it\r\nif you want it, that you can change the software or use pieces of it\r\nin new free programs; and that you know you can do these things.\r\n\r\n  To protect your rights, we need to make restrictions that forbid\r\nanyone to deny you these rights or to ask you to surrender the rights.\r\nThese restrictions translate to certain responsibilities for you if you\r\ndistribute copies of the software, or if you modify it.\r\n\r\n  For example, if you distribute copies of such a program, whether\r\ngratis or for a fee, you must give the recipients all the rights that\r\nyou have.  You must make sure that they, too, receive or can get the\r\nsource code.  And you must show them these terms so they know their\r\nrights.\r\n\r\n  We protect your rights with two steps: (1) copyright the software, and\r\n(2) offer you this license which gives you legal permission to copy,\r\ndistribute and/or modify the software.\r\n\r\n  Also, for each author's protection and ours, we want to make certain\r\nthat everyone understands that there is no warranty for this free\r\nsoftware.  If the software is modified by someone else and passed on, we\r\nwant its recipients to know that what they have is not the original, so\r\nthat any problems introduced by others will not reflect on the original\r\nauthors' reputations.\r\n\r\n  Finally, any free program is threatened constantly by software\r\npatents.  We wish to avoid the danger that redistributors of a free\r\nprogram will individually obtain patent licenses, in effect making the\r\nprogram proprietary.  To prevent this, we have made it clear that any\r\npatent must be licensed for everyone's free use or not licensed at all.\r\n\r\n  The precise terms and conditions for copying, distribution and\r\nmodification follow.\r\n\r\n\t\t    GNU GENERAL PUBLIC LICENSE\r\n   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\r\n\r\n  0. This License applies to any program or other work which contains\r\na notice placed by the copyright holder saying it may be distributed\r\nunder the terms of this General Public License.  The \"Program\", below,\r\nrefers to any such program or work, and a \"work based on the Program\"\r\nmeans either the Program or any derivative work under copyright law:\r\nthat is to say, a work containing the Program or a portion of it,\r\neither verbatim or with modifications and/or translated into another\r\nlanguage.  (Hereinafter, translation is included without limitation in\r\nthe term \"modification\".)  Each licensee is addressed as \"you\".\r\n\r\nActivities other than copying, distribution and modification are not\r\ncovered by this License; they are outside its scope.  The act of\r\nrunning the Program is not restricted, and the output from the Program\r\nis covered only if its contents constitute a work based on the\r\nProgram (independent of having been made by running the Program).\r\nWhether that is true depends on what the Program does.\r\n\r\n  1. You may copy and distribute verbatim copies of the Program's\r\nsource code as you receive it, in any medium, provided that you\r\nconspicuously and appropriately publish on each copy an appropriate\r\ncopyright notice and disclaimer of warranty; keep intact all the\r\nnotices that refer to this License and to the absence of any warranty;\r\nand give any other recipients of the Program a copy of this License\r\nalong with the Program.\r\n\r\nYou may charge a fee for the physical act of transferring a copy, and\r\nyou may at your option offer warranty protection in exchange for a fee.\r\n\r\n  2. You may modify your copy or copies of the Program or any portion\r\nof it, thus forming a work based on the Program, and copy and\r\ndistribute such modifications or work under the terms of Section 1\r\nabove, provided that you also meet all of these conditions:\r\n\r\n    a) You must cause the modified files to carry prominent notices\r\n    stating that you changed the files and the date of any change.\r\n\r\n    b) You must cause any work that you distribute or publish, that in\r\n    whole or in part contains or is derived from the Program or any\r\n    part thereof, to be licensed as a whole at no charge to all third\r\n    parties under the terms of this License.\r\n\r\n    c) If the modified program normally reads commands interactively\r\n    when run, you must cause it, when started running for such\r\n    interactive use in the most ordinary way, to print or display an\r\n    announcement including an appropriate copyright notice and a\r\n    notice that there is no warranty (or else, saying that you provide\r\n    a warranty) and that users may redistribute the program under\r\n    these conditions, and telling the user how to view a copy of this\r\n    License.  (Exception: if the Program itself is interactive but\r\n    does not normally print such an announcement, your work based on\r\n    the Program is not required to print an announcement.)\r\n\r\nThese requirements apply to the modified work as a whole.  If\r\nidentifiable sections of that work are not derived from the Program,\r\nand can be reasonably considered independent and separate works in\r\nthemselves, then this License, and its terms, do not apply to those\r\nsections when you distribute them as separate works.  But when you\r\ndistribute the same sections as part of a whole which is a work based\r\non the Program, the distribution of the whole must be on the terms of\r\nthis License, whose permissions for other licensees extend to the\r\nentire whole, and thus to each and every part regardless of who wrote it.\r\n\r\nThus, it is not the intent of this section to claim rights or contest\r\nyour rights to work written entirely by you; rather, the intent is to\r\nexercise the right to control the distribution of derivative or\r\ncollective works based on the Program.\r\n\r\nIn addition, mere aggregation of another work not based on the Program\r\nwith the Program (or with a work based on the Program) on a volume of\r\na storage or distribution medium does not bring the other work under\r\nthe scope of this License.\r\n\r\n  3. You may copy and distribute the Program (or a work based on it,\r\nunder Section 2) in object code or executable form under the terms of\r\nSections 1 and 2 above provided that you also do one of the following:\r\n\r\n    a) Accompany it with the complete corresponding machine-readable\r\n    source code, which must be distributed under the terms of Sections\r\n    1 and 2 above on a medium customarily used for software interchange; or,\r\n\r\n    b) Accompany it with a written offer, valid for at least three\r\n    years, to give any third party, for a charge no more than your\r\n    cost of physically performing source distribution, a complete\r\n    machine-readable copy of the corresponding source code, to be\r\n    distributed under the terms of Sections 1 and 2 above on a medium\r\n    customarily used for software interchange; or,\r\n\r\n    c) Accompany it with the information you received as to the offer\r\n    to distribute corresponding source code.  (This alternative is\r\n    allowed only for noncommercial distribution and only if you\r\n    received the program in object code or executable form with such\r\n    an offer, in accord with Subsection b above.)\r\n\r\nThe source code for a work means the preferred form of the work for\r\nmaking modifications to it.  For an executable work, complete source\r\ncode means all the source code for all modules it contains, plus any\r\nassociated interface definition files, plus the scripts used to\r\ncontrol compilation and installation of the executable.  However, as a\r\nspecial exception, the source code distributed need not include\r\nanything that is normally distributed (in either source or binary\r\nform) with the major components (compiler, kernel, and so on) of the\r\noperating system on which the executable runs, unless that component\r\nitself accompanies the executable.\r\n\r\nIf distribution of executable or object code is made by offering\r\naccess to copy from a designated place, then offering equivalent\r\naccess to copy the source code from the same place counts as\r\ndistribution of the source code, even though third parties are not\r\ncompelled to copy the source along with the object code.\r\n\r\n  4. You may not copy, modify, sublicense, or distribute the Program\r\nexcept as expressly provided under this License.  Any attempt\r\notherwise to copy, modify, sublicense or distribute the Program is\r\nvoid, and will automatically terminate your rights under this License.\r\nHowever, parties who have received copies, or rights, from you under\r\nthis License will not have their licenses terminated so long as such\r\nparties remain in full compliance.\r\n\r\n  5. You are not required to accept this License, since you have not\r\nsigned it.  However, nothing else grants you permission to modify or\r\ndistribute the Program or its derivative works.  These actions are\r\nprohibited by law if you do not accept this License.  Therefore, by\r\nmodifying or distributing the Program (or any work based on the\r\nProgram), you indicate your acceptance of this License to do so, and\r\nall its terms and conditions for copying, distributing or modifying\r\nthe Program or works based on it.\r\n\r\n  6. Each time you redistribute the Program (or any work based on the\r\nProgram), the recipient automatically receives a license from the\r\noriginal licensor to copy, distribute or modify the Program subject to\r\nthese terms and conditions.  You may not impose any further\r\nrestrictions on the recipients' exercise of the rights granted herein.\r\nYou are not responsible for enforcing compliance by third parties to\r\nthis License.\r\n\r\n  7. If, as a consequence of a court judgment or allegation of patent\r\ninfringement or for any other reason (not limited to patent issues),\r\nconditions are imposed on you (whether by court order, agreement or\r\notherwise) that contradict the conditions of this License, they do not\r\nexcuse you from the conditions of this License.  If you cannot\r\ndistribute so as to satisfy simultaneously your obligations under this\r\nLicense and any other pertinent obligations, then as a consequence you\r\nmay not distribute the Program at all.  For example, if a patent\r\nlicense would not permit royalty-free redistribution of the Program by\r\nall those who receive copies directly or indirectly through you, then\r\nthe only way you could satisfy both it and this License would be to\r\nrefrain entirely from distribution of the Program.\r\n\r\nIf any portion of this section is held invalid or unenforceable under\r\nany particular circumstance, the balance of the section is intended to\r\napply and the section as a whole is intended to apply in other\r\ncircumstances.\r\n\r\nIt is not the purpose of this section to induce you to infringe any\r\npatents or other property right claims or to contest validity of any\r\nsuch claims; this section has the sole purpose of protecting the\r\nintegrity of the free software distribution system, which is\r\nimplemented by public license practices.  Many people have made\r\ngenerous contributions to the wide range of software distributed\r\nthrough that system in reliance on consistent application of that\r\nsystem; it is up to the author/donor to decide if he or she is willing\r\nto distribute software through any other system and a licensee cannot\r\nimpose that choice.\r\n\r\nThis section is intended to make thoroughly clear what is believed to\r\nbe a consequence of the rest of this License.\r\n\r\n  8. If the distribution and/or use of the Program is restricted in\r\ncertain countries either by patents or by copyrighted interfaces, the\r\noriginal copyright holder who places the Program under this License\r\nmay add an explicit geographical distribution limitation excluding\r\nthose countries, so that distribution is permitted only in or among\r\ncountries not thus excluded.  In such case, this License incorporates\r\nthe limitation as if written in the body of this License.\r\n\r\n  9. The Free Software Foundation may publish revised and/or new versions\r\nof the General Public License from time to time.  Such new versions will\r\nbe similar in spirit to the present version, but may differ in detail to\r\naddress new problems or concerns.\r\n\r\nEach version is given a distinguishing version number.  If the Program\r\nspecifies a version number of this License which applies to it and \"any\r\nlater version\", you have the option of following the terms and conditions\r\neither of that version or of any later version published by the Free\r\nSoftware Foundation.  If the Program does not specify a version number of\r\nthis License, you may choose any version ever published by the Free Software\r\nFoundation.\r\n\r\n  10. If you wish to incorporate parts of the Program into other free\r\nprograms whose distribution conditions are different, write to the author\r\nto ask for permission.  For software which is copyrighted by the Free\r\nSoftware Foundation, write to the Free Software Foundation; we sometimes\r\nmake exceptions for this.  Our decision will be guided by the two goals\r\nof preserving the free status of all derivatives of our free software and\r\nof promoting the sharing and reuse of software generally.\r\n\r\n\t\t\t    NO WARRANTY\r\n\r\n  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY\r\nFOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN\r\nOTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES\r\nPROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED\r\nOR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\r\nMERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS\r\nTO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE\r\nPROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,\r\nREPAIR OR CORRECTION.\r\n\r\n  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\r\nWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR\r\nREDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,\r\nINCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING\r\nOUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED\r\nTO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY\r\nYOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER\r\nPROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE\r\nPOSSIBILITY OF SUCH DAMAGES.\r\n\r\n\t\t     END OF TERMS AND CONDITIONS\r\n\r\n\t    How to Apply These Terms to Your New Programs\r\n\r\n  If you develop a new program, and you want it to be of the greatest\r\npossible use to the public, the best way to achieve this is to make it\r\nfree software which everyone can redistribute and change under these terms.\r\n\r\n  To do so, attach the following notices to the program.  It is safest\r\nto attach them to the start of each source file to most effectively\r\nconvey the exclusion of warranty; and each file should have at least\r\nthe \"copyright\" line and a pointer to where the full notice is found.\r\n\r\n    <one line to give the program's name and a brief idea of what it does.>\r\n    Copyright (C) <year>  <name of author>\r\n\r\n    This program is free software; you can redistribute it and/or modify\r\n    it under the terms of the GNU General Public License as published by\r\n    the Free Software Foundation; either version 2 of the License, or\r\n    (at your option) any later version.\r\n\r\n    This program is distributed in the hope that it will be useful,\r\n    but WITHOUT ANY WARRANTY; without even the implied warranty of\r\n    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r\n    GNU General Public License for more details.\r\n\r\n    You should have received a copy of the GNU General Public License along\r\n    with this program; if not, write to the Free Software Foundation, Inc.,\r\n    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.\r\n\r\nAlso add information on how to contact you by electronic and paper mail.\r\n\r\nIf the program is interactive, make it output a short notice like this\r\nwhen it starts in an interactive mode:\r\n\r\n    Gnomovision version 69, Copyright (C) year name of author\r\n    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.\r\n    This is free software, and you are welcome to redistribute it\r\n    under certain conditions; type `show c' for details.\r\n\r\nThe hypothetical commands `show w' and `show c' should show the appropriate\r\nparts of the General Public License.  Of course, the commands you use may\r\nbe called something other than `show w' and `show c'; they could even be\r\nmouse-clicks or menu items--whatever suits your program.\r\n\r\nYou should also get your employer (if you work as a programmer) or your\r\nschool, if any, to sign a \"copyright disclaimer\" for the program, if\r\nnecessary.  Here is a sample; alter the names:\r\n\r\n  Yoyodyne, Inc., hereby disclaims all copyright interest in the program\r\n  `Gnomovision' (which makes passes at compilers) written by James Hacker.\r\n\r\n  <signature of Ty Coon>, 1 April 1989\r\n  Ty Coon, President of Vice\r\n\r\nThis General Public License does not permit incorporating your program into\r\nproprietary programs.  If your program is a subroutine library, you may\r\nconsider it more useful to permit linking proprietary applications with the\r\nlibrary.  If this is what you want to do, use the GNU Lesser General\r\nPublic License instead of this License.\r\n"
  },
  {
    "path": "newscoop/js/plupload/readme.md",
    "content": "Plupload - Cross browser and platform uploader API\n===================================================\n\nWhat is Plupload\n-----------------\nPlupload is a JavaScript API for dealing with file uploads it supports features like multiple file selection, file type filtering,\nrequest chunking, client side image scaling and it uses different runtimes to achieve this such as HTML 5, Silverlight, Flash, Gears and BrowserPlus.\n\nWhat you need to build Plupload\n-------------------------------\n* Install the Java JDK or JRE packages you can find it at: [http://java.sun.com/javase/downloads/index.jsp](http://java.sun.com/javase/downloads/index.jsp)\n* Install Apache Ant you can find it at: [http://ant.apache.org/](http://ant.apache.org/)\n* Add Apache Ant to your systems path environment variable, this is not required but makes it easier to issue commands to Ant without having to type the full path for it.\n\nHow to build Plupload\n----------------------\n\nIn the root directory of Plupload where the build.xml file is you can run ant against different targets.\n\n`ant`\n\nWill combine, preprocess and minify the Plupload classes into the js directory. It will not build the Silverlight and Flash .xap and .swf files.\n\n`ant moxiedoc`\n\nWill generate API Documentation for the project using the Moxiedoc tool. The docs will be generated to the docs/api directory.\n\n`ant release`\n\nWill produce release packages. The release packages will be placed in the tmp directory.\n\nHow to build Flash runtime\n---------------------------\nThe Flash runtime uses a .swf file that can be built using the Flex SDK. This SDK can be downloaded from Adobe. [http://www.adobe.com/products/flex/flexdownloads/](http://www.adobe.com/products/flex/flexdownloads/)\n\nHow to build Silverlight runtime\n---------------------------------\nThe Silverlight runtime uses a .xap file that can be built using the Silverlight SDK or Visual Studio. [http://silverlight.net/getstarted/](http://silverlight.net/getstarted/)\n\nRunning the development version\n--------------------------------\nThe unminified development version of the javascript files can be executed by opening the examples/queue_widget_dev.html file running on a Web Server.\n\nContributing to the Plupload project\n-------------------------------------\nYou can read more about how to contribute to this project at [http://www.plupload.com/contributing](http://www.plupload.com/contributing)\n"
  },
  {
    "path": "newscoop/js/raphael-min.js",
    "content": "// ┌────────────────────────────────────────────────────────────────────┐ \\\\\n// │ Raphaël 2.1.0 - JavaScript Vector Library                          │ \\\\\n// ├────────────────────────────────────────────────────────────────────┤ \\\\\n// │ Copyright © 2008-2012 Dmitry Baranovskiy (http://raphaeljs.com)    │ \\\\\n// │ Copyright © 2008-2012 Sencha Labs (http://sencha.com)              │ \\\\\n// ├────────────────────────────────────────────────────────────────────┤ \\\\\n// │ Licensed under the MIT (http://raphaeljs.com/license.html) license.│ \\\\\n// └────────────────────────────────────────────────────────────────────┘ \\\\\n(function(n){var e,t,r=\"0.4.2\",f=\"hasOwnProperty\",i=/[\\.\\/]/,o=\"*\",u=function(){},l=function(n,e){return n-e},s={n:{}},p=function(n,r){n+=\"\";var f,i=t,o=Array.prototype.slice.call(arguments,2),u=p.listeners(n),s=0,a=[],c={},h=[],d=e;e=n,t=0;for(var g=0,v=u.length;v>g;g++)\"zIndex\"in u[g]&&(a.push(u[g].zIndex),0>u[g].zIndex&&(c[u[g].zIndex]=u[g]));for(a.sort(l);0>a[s];)if(f=c[a[s++]],h.push(f.apply(r,o)),t)return t=i,h;for(g=0;v>g;g++)if(f=u[g],\"zIndex\"in f)if(f.zIndex==a[s]){if(h.push(f.apply(r,o)),t)break;do if(s++,f=c[a[s]],f&&h.push(f.apply(r,o)),t)break;while(f)}else c[f.zIndex]=f;else if(h.push(f.apply(r,o)),t)break;return t=i,e=d,h.length?h:null};p._events=s,p.listeners=function(n){var e,t,r,f,u,l,p,a,c=n.split(i),h=s,d=[h],g=[];for(f=0,u=c.length;u>f;f++){for(a=[],l=0,p=d.length;p>l;l++)for(h=d[l].n,t=[h[c[f]],h[o]],r=2;r--;)e=t[r],e&&(a.push(e),g=g.concat(e.f||[]));d=a}return g},p.on=function(n,e){if(n+=\"\",\"function\"!=typeof e)return function(){};for(var t=n.split(i),r=s,f=0,o=t.length;o>f;f++)r=r.n,r=r.hasOwnProperty(t[f])&&r[t[f]]||(r[t[f]]={n:{}});for(r.f=r.f||[],f=0,o=r.f.length;o>f;f++)if(r.f[f]==e)return u;return r.f.push(e),function(n){+n==+n&&(e.zIndex=+n)}},p.f=function(n){var e=[].slice.call(arguments,1);return function(){p.apply(null,[n,null].concat(e).concat([].slice.call(arguments,0)))}},p.stop=function(){t=1},p.nt=function(n){return n?RegExp(\"(?:\\\\.|\\\\/|^)\"+n+\"(?:\\\\.|\\\\/|$)\").test(e):e},p.nts=function(){return e.split(i)},p.off=p.unbind=function(n,e){if(!n)return p._events=s={n:{}},void 0;var t,r,u,l,a,c,h,d=n.split(i),g=[s];for(l=0,a=d.length;a>l;l++)for(c=0;g.length>c;c+=u.length-2){if(u=[c,1],t=g[c].n,d[l]!=o)t[d[l]]&&u.push(t[d[l]]);else for(r in t)t[f](r)&&u.push(t[r]);g.splice.apply(g,u)}for(l=0,a=g.length;a>l;l++)for(t=g[l];t.n;){if(e){if(t.f){for(c=0,h=t.f.length;h>c;c++)if(t.f[c]==e){t.f.splice(c,1);break}!t.f.length&&delete t.f}for(r in t.n)if(t.n[f](r)&&t.n[r].f){var v=t.n[r].f;for(c=0,h=v.length;h>c;c++)if(v[c]==e){v.splice(c,1);break}!v.length&&delete t.n[r].f}}else{delete t.f;for(r in t.n)t.n[f](r)&&t.n[r].f&&delete t.n[r].f}t=t.n}},p.once=function(n,e){var t=function(){return p.unbind(n,t),e.apply(this,arguments)};return p.on(n,t)},p.version=r,p.toString=function(){return\"You are running Eve \"+r},\"undefined\"!=typeof module&&module.exports?module.exports=p:\"undefined\"!=typeof define?define(\"eve\",[],function(){return p}):n.eve=p})(this);(function(){function t(e){if(t.is(e,\"function\"))return m?e():eve.on(\"raphael.DOMload\",e);if(t.is(e,N))return t._engine.create[F](t,e.splice(0,3+t.is(e[0],Y))).add(e);var n=Array.prototype.slice.call(arguments,0);if(t.is(n[n.length-1],\"function\")){var r=n.pop();return m?r.call(t._engine.create[F](t,n)):eve.on(\"raphael.DOMload\",function(){r.call(t._engine.create[F](t,n))})}return t._engine.create[F](t,arguments)}function e(t){if(Object(t)!==t)return t;var n=new t.constructor;for(var r in t)t[k](r)&&(n[r]=e(t[r]));return n}function n(t,e){for(var n=0,r=t.length;r>n;n++)if(t[n]===e)return t.push(t.splice(n,1)[0])}function r(t,e,r){function i(){var a=Array.prototype.slice.call(arguments,0),s=a.join(\"␀\"),o=i.cache=i.cache||{},u=i.count=i.count||[];return o[k](s)?(n(u,s),r?r(o[s]):o[s]):(u.length>=1e3&&delete o[u.shift()],u.push(s),o[s]=t[F](e,a),r?r(o[s]):o[s])}return i}function i(){return this.hex}function a(t,e){for(var n=[],r=0,i=t.length;i-2*!e>r;r+=2){var a=[{x:+t[r-2],y:+t[r-1]},{x:+t[r],y:+t[r+1]},{x:+t[r+2],y:+t[r+3]},{x:+t[r+4],y:+t[r+5]}];e?r?i-4==r?a[3]={x:+t[0],y:+t[1]}:i-2==r&&(a[2]={x:+t[0],y:+t[1]},a[3]={x:+t[2],y:+t[3]}):a[0]={x:+t[i-2],y:+t[i-1]}:i-4==r?a[3]=a[2]:r||(a[0]={x:+t[r],y:+t[r+1]}),n.push([\"C\",(-a[0].x+6*a[1].x+a[2].x)/6,(-a[0].y+6*a[1].y+a[2].y)/6,(a[1].x+6*a[2].x-a[3].x)/6,(a[1].y+6*a[2].y-a[3].y)/6,a[2].x,a[2].y])}return n}function s(t,e,n,r,i){var a=-3*e+9*n-9*r+3*i,s=t*a+6*e-12*n+6*r;return t*s-3*e+3*n}function o(t,e,n,r,i,a,o,u,l){null==l&&(l=1),l=l>1?1:0>l?0:l;for(var h=l/2,c=12,f=[-.1252,.1252,-.3678,.3678,-.5873,.5873,-.7699,.7699,-.9041,.9041,-.9816,.9816],p=[.2491,.2491,.2335,.2335,.2032,.2032,.1601,.1601,.1069,.1069,.0472,.0472],d=0,g=0;c>g;g++){var x=h*f[g]+h,v=s(x,t,n,i,o),m=s(x,e,r,a,u),y=v*v+m*m;d+=p[g]*j.sqrt(y)}return h*d}function u(t,e,n,r,i,a,s,u,l){if(!(0>l||l>o(t,e,n,r,i,a,s,u))){var h,c=1,f=c/2,p=c-f,d=.01;for(h=o(t,e,n,r,i,a,s,u,p);O(h-l)>d;)f/=2,p+=(l>h?1:-1)*f,h=o(t,e,n,r,i,a,s,u,p);return p}}function l(t,e,n,r,i,a,s,o){if(!(D(t,n)<z(i,s)||z(t,n)>D(i,s)||D(e,r)<z(a,o)||z(e,r)>D(a,o))){var u=(t*r-e*n)*(i-s)-(t-n)*(i*o-a*s),l=(t*r-e*n)*(a-o)-(e-r)*(i*o-a*s),h=(t-n)*(a-o)-(e-r)*(i-s);if(h){var c=u/h,f=l/h,p=+c.toFixed(2),d=+f.toFixed(2);if(!(+z(t,n).toFixed(2)>p||p>+D(t,n).toFixed(2)||+z(i,s).toFixed(2)>p||p>+D(i,s).toFixed(2)||+z(e,r).toFixed(2)>d||d>+D(e,r).toFixed(2)||+z(a,o).toFixed(2)>d||d>+D(a,o).toFixed(2)))return{x:c,y:f}}}}function h(e,n,r){var i=t.bezierBBox(e),a=t.bezierBBox(n);if(!t.isBBoxIntersect(i,a))return r?0:[];for(var s=o.apply(0,e),u=o.apply(0,n),h=~~(s/5),c=~~(u/5),f=[],p=[],d={},g=r?0:[],x=0;h+1>x;x++){var v=t.findDotsAtSegment.apply(t,e.concat(x/h));f.push({x:v.x,y:v.y,t:x/h})}for(x=0;c+1>x;x++)v=t.findDotsAtSegment.apply(t,n.concat(x/c)),p.push({x:v.x,y:v.y,t:x/c});for(x=0;h>x;x++)for(var m=0;c>m;m++){var y=f[x],b=f[x+1],_=p[m],w=p[m+1],k=.001>O(b.x-y.x)?\"y\":\"x\",B=.001>O(w.x-_.x)?\"y\":\"x\",S=l(y.x,y.y,b.x,b.y,_.x,_.y,w.x,w.y);if(S){if(d[S.x.toFixed(4)]==S.y.toFixed(4))continue;d[S.x.toFixed(4)]=S.y.toFixed(4);var C=y.t+O((S[k]-y[k])/(b[k]-y[k]))*(b.t-y.t),F=_.t+O((S[B]-_[B])/(w[B]-_[B]))*(w.t-_.t);C>=0&&1>=C&&F>=0&&1>=F&&(r?g++:g.push({x:S.x,y:S.y,t1:C,t2:F}))}}return g}function c(e,n,r){e=t._path2curve(e),n=t._path2curve(n);for(var i,a,s,o,u,l,c,f,p,d,g=r?0:[],x=0,v=e.length;v>x;x++){var m=e[x];if(\"M\"==m[0])i=u=m[1],a=l=m[2];else{\"C\"==m[0]?(p=[i,a].concat(m.slice(1)),i=p[6],a=p[7]):(p=[i,a,i,a,u,l,u,l],i=u,a=l);for(var y=0,b=n.length;b>y;y++){var _=n[y];if(\"M\"==_[0])s=c=_[1],o=f=_[2];else{\"C\"==_[0]?(d=[s,o].concat(_.slice(1)),s=d[6],o=d[7]):(d=[s,o,s,o,c,f,c,f],s=c,o=f);var w=h(p,d,r);if(r)g+=w;else{for(var k=0,B=w.length;B>k;k++)w[k].segment1=x,w[k].segment2=y,w[k].bez1=p,w[k].bez2=d;g=g.concat(w)}}}}}return g}function f(t,e,n,r,i,a){null!=t?(this.a=+t,this.b=+e,this.c=+n,this.d=+r,this.e=+i,this.f=+a):(this.a=1,this.b=0,this.c=0,this.d=1,this.e=0,this.f=0)}function p(){return this.x+P+this.y+P+this.width+\" × \"+this.height}function d(t,e,n,r,i,a){function s(t){return((c*t+h)*t+l)*t}function o(t,e){var n=u(t,e);return((d*n+p)*n+f)*n}function u(t,e){var n,r,i,a,o,u;for(i=t,u=0;8>u;u++){if(a=s(i)-t,e>O(a))return i;if(o=(3*c*i+2*h)*i+l,1e-6>O(o))break;i-=a/o}if(n=0,r=1,i=t,n>i)return n;if(i>r)return r;for(;r>n;){if(a=s(i),e>O(a-t))return i;t>a?n=i:r=i,i=(r-n)/2+n}return i}var l=3*e,h=3*(r-e)-l,c=1-l-h,f=3*n,p=3*(i-n)-f,d=1-f-p;return o(t,1/(200*a))}function g(t,e){var n=[],r={};if(this.ms=e,this.times=1,t){for(var i in t)t[k](i)&&(r[Q(i)]=t[i],n.push(Q(i)));n.sort(le)}this.anim=r,this.top=n[n.length-1],this.percents=n}function x(e,n,r,i,a,s){r=Q(r);var o,u,l,h,c,p,g=e.ms,x={},v={},m={};if(i)for(_=0,w=sn.length;w>_;_++){var y=sn[_];if(y.el.id==n.id&&y.anim==e){y.percent!=r?(sn.splice(_,1),l=1):u=y,n.attr(y.totalOrigin);break}}else i=+v;for(var _=0,w=e.percents.length;w>_;_++){if(e.percents[_]==r||e.percents[_]>i*e.top){r=e.percents[_],c=e.percents[_-1]||0,g=g/e.top*(r-c),h=e.percents[_+1],o=e.anim[r];break}i&&n.attr(e.anim[e.percents[_]])}if(o){if(u)u.initstatus=i,u.start=new Date-u.ms*i;else{for(var B in o)if(o[k](B)&&(ee[k](B)||n.paper.customAttributes[k](B)))switch(x[B]=n.attr(B),null==x[B]&&(x[B]=te[B]),v[B]=o[B],ee[B]){case Y:m[B]=(v[B]-x[B])/g;break;case\"colour\":x[B]=t.getRGB(x[B]);var S=t.getRGB(v[B]);m[B]={r:(S.r-x[B].r)/g,g:(S.g-x[B].g)/g,b:(S.b-x[B].b)/g};break;case\"path\":var C=Ie(x[B],v[B]),F=C[1];for(x[B]=C[0],m[B]=[],_=0,w=x[B].length;w>_;_++){m[B][_]=[0];for(var L=1,A=x[B][_].length;A>L;L++)m[B][_][L]=(F[_][L]-x[B][_][L])/g}break;case\"transform\":var P=n._,I=ze(P[B],v[B]);if(I)for(x[B]=I.from,v[B]=I.to,m[B]=[],m[B].real=!0,_=0,w=x[B].length;w>_;_++)for(m[B][_]=[x[B][_][0]],L=1,A=x[B][_].length;A>L;L++)m[B][_][L]=(v[B][_][L]-x[B][_][L])/g;else{var R=n.matrix||new f,q={_:{transform:P.transform},getBBox:function(){return n.getBBox(1)}};x[B]=[R.a,R.b,R.c,R.d,R.e,R.f],je(q,v[B]),v[B]=q._.transform,m[B]=[(q.matrix.a-R.a)/g,(q.matrix.b-R.b)/g,(q.matrix.c-R.c)/g,(q.matrix.d-R.d)/g,(q.matrix.e-R.e)/g,(q.matrix.f-R.f)/g]}break;case\"csv\":var j=E(o[B])[M](b),D=E(x[B])[M](b);if(\"clip-rect\"==B)for(x[B]=D,m[B]=[],_=D.length;_--;)m[B][_]=(j[_]-x[B][_])/g;v[B]=j;break;default:for(j=[][T](o[B]),D=[][T](x[B]),m[B]=[],_=n.paper.customAttributes[B].length;_--;)m[B][_]=((j[_]||0)-(D[_]||0))/g}var z=o.easing,O=t.easing_formulas[z];if(!O)if(O=E(z).match(U),O&&5==O.length){var V=O;O=function(t){return d(t,+V[1],+V[2],+V[3],+V[4],g)}}else O=ce;if(p=o.start||e.start||+new Date,y={anim:e,percent:r,timestamp:p,start:p+(e.del||0),status:0,initstatus:i||0,stop:!1,ms:g,easing:O,from:x,diff:m,to:v,el:n,callback:o.callback,prev:c,next:h,repeat:s||e.times,origin:n.attr(),totalOrigin:a},sn.push(y),i&&!u&&!l&&(y.stop=!0,y.start=new Date-g*i,1==sn.length))return un();l&&(y.start=new Date-y.ms*i),1==sn.length&&on(un)}eve(\"raphael.anim.start.\"+n.id,n,e)}}function v(t){for(var e=0;sn.length>e;e++)sn[e].el.paper==t&&sn.splice(e--,1)}t.version=\"2.1.0\",t.eve=eve;var m,y,b=/[, ]+/,_={circle:1,rect:1,path:1,ellipse:1,text:1,image:1},w=/\\{(\\d+)\\}/g,k=\"hasOwnProperty\",B={doc:document,win:window},S={was:Object.prototype[k].call(B.win,\"Raphael\"),is:B.win.Raphael},C=function(){this.ca=this.customAttributes={}},F=\"apply\",T=\"concat\",L=\"createTouch\"in B.doc,A=\"\",P=\" \",E=String,M=\"split\",I=\"click dblclick mousedown mousemove mouseout mouseover mouseup touchstart touchmove touchend touchcancel\"[M](P),R={mousedown:\"touchstart\",mousemove:\"touchmove\",mouseup:\"touchend\"},q=E.prototype.toLowerCase,j=Math,D=j.max,z=j.min,O=j.abs,V=j.pow,X=j.PI,Y=\"number\",G=\"string\",N=\"array\",W=Object.prototype.toString,$=(t._ISURL=/^url\\(['\"]?([^\\)]+?)['\"]?\\)$/i,/^\\s*((#[a-f\\d]{6})|(#[a-f\\d]{3})|rgba?\\(\\s*([\\d\\.]+%?\\s*,\\s*[\\d\\.]+%?\\s*,\\s*[\\d\\.]+%?(?:\\s*,\\s*[\\d\\.]+%?)?)\\s*\\)|hsba?\\(\\s*([\\d\\.]+(?:deg|\\xb0|%)?\\s*,\\s*[\\d\\.]+%?\\s*,\\s*[\\d\\.]+(?:%?\\s*,\\s*[\\d\\.]+)?)%?\\s*\\)|hsla?\\(\\s*([\\d\\.]+(?:deg|\\xb0|%)?\\s*,\\s*[\\d\\.]+%?\\s*,\\s*[\\d\\.]+(?:%?\\s*,\\s*[\\d\\.]+)?)%?\\s*\\))\\s*$/i),H={NaN:1,Infinity:1,\"-Infinity\":1},U=/^(?:cubic-)?bezier\\(([^,]+),([^,]+),([^,]+),([^\\)]+)\\)/,Z=j.round,Q=parseFloat,J=parseInt,K=E.prototype.toUpperCase,te=t._availableAttrs={\"arrow-end\":\"none\",\"arrow-start\":\"none\",blur:0,\"clip-rect\":\"0 0 1e9 1e9\",cursor:\"default\",cx:0,cy:0,fill:\"#fff\",\"fill-opacity\":1,font:'10px \"Arial\"',\"font-family\":'\"Arial\"',\"font-size\":\"10\",\"font-style\":\"normal\",\"font-weight\":400,gradient:0,height:0,href:\"http://raphaeljs.com/\",\"letter-spacing\":0,opacity:1,path:\"M0,0\",r:0,rx:0,ry:0,src:\"\",stroke:\"#000\",\"stroke-dasharray\":\"\",\"stroke-linecap\":\"butt\",\"stroke-linejoin\":\"butt\",\"stroke-miterlimit\":0,\"stroke-opacity\":1,\"stroke-width\":1,target:\"_blank\",\"text-anchor\":\"middle\",title:\"Raphael\",transform:\"\",width:0,x:0,y:0},ee=t._availableAnimAttrs={blur:Y,\"clip-rect\":\"csv\",cx:Y,cy:Y,fill:\"colour\",\"fill-opacity\":Y,\"font-size\":Y,height:Y,opacity:Y,path:\"path\",r:Y,rx:Y,ry:Y,stroke:\"colour\",\"stroke-opacity\":Y,\"stroke-width\":Y,transform:\"transform\",width:Y,x:Y,y:Y},ne=/[\\x09\\x0a\\x0b\\x0c\\x0d\\x20\\xa0\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\u2028\\u2029]*,[\\x09\\x0a\\x0b\\x0c\\x0d\\x20\\xa0\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\u2028\\u2029]*/,re={hs:1,rg:1},ie=/,?([achlmqrstvxz]),?/gi,ae=/([achlmrqstvz])[\\x09\\x0a\\x0b\\x0c\\x0d\\x20\\xa0\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\u2028\\u2029,]*((-?\\d*\\.?\\d*(?:e[\\-+]?\\d+)?[\\x09\\x0a\\x0b\\x0c\\x0d\\x20\\xa0\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\u2028\\u2029]*,?[\\x09\\x0a\\x0b\\x0c\\x0d\\x20\\xa0\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\u2028\\u2029]*)+)/gi,se=/([rstm])[\\x09\\x0a\\x0b\\x0c\\x0d\\x20\\xa0\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\u2028\\u2029,]*((-?\\d*\\.?\\d*(?:e[\\-+]?\\d+)?[\\x09\\x0a\\x0b\\x0c\\x0d\\x20\\xa0\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\u2028\\u2029]*,?[\\x09\\x0a\\x0b\\x0c\\x0d\\x20\\xa0\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\u2028\\u2029]*)+)/gi,oe=/(-?\\d*\\.?\\d*(?:e[\\-+]?\\d+)?)[\\x09\\x0a\\x0b\\x0c\\x0d\\x20\\xa0\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\u2028\\u2029]*,?[\\x09\\x0a\\x0b\\x0c\\x0d\\x20\\xa0\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\u2028\\u2029]*/gi,ue=(t._radial_gradient=/^r(?:\\(([^,]+?)[\\x09\\x0a\\x0b\\x0c\\x0d\\x20\\xa0\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\u2028\\u2029]*,[\\x09\\x0a\\x0b\\x0c\\x0d\\x20\\xa0\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\u2028\\u2029]*([^\\)]+?)\\))?/,{}),le=function(t,e){return Q(t)-Q(e)},he=function(){},ce=function(t){return t},fe=t._rectPath=function(t,e,n,r,i){return i?[[\"M\",t+i,e],[\"l\",n-2*i,0],[\"a\",i,i,0,0,1,i,i],[\"l\",0,r-2*i],[\"a\",i,i,0,0,1,-i,i],[\"l\",2*i-n,0],[\"a\",i,i,0,0,1,-i,-i],[\"l\",0,2*i-r],[\"a\",i,i,0,0,1,i,-i],[\"z\"]]:[[\"M\",t,e],[\"l\",n,0],[\"l\",0,r],[\"l\",-n,0],[\"z\"]]},pe=function(t,e,n,r){return null==r&&(r=n),[[\"M\",t,e],[\"m\",0,-r],[\"a\",n,r,0,1,1,0,2*r],[\"a\",n,r,0,1,1,0,-2*r],[\"z\"]]},de=t._getPath={path:function(t){return t.attr(\"path\")},circle:function(t){var e=t.attrs;return pe(e.cx,e.cy,e.r)},ellipse:function(t){var e=t.attrs;return pe(e.cx,e.cy,e.rx,e.ry)},rect:function(t){var e=t.attrs;return fe(e.x,e.y,e.width,e.height,e.r)},image:function(t){var e=t.attrs;return fe(e.x,e.y,e.width,e.height)},text:function(t){var e=t._getBBox();return fe(e.x,e.y,e.width,e.height)},set:function(t){var e=t._getBBox();return fe(e.x,e.y,e.width,e.height)}},ge=t.mapPath=function(t,e){if(!e)return t;var n,r,i,a,s,o,u;for(t=Ie(t),i=0,s=t.length;s>i;i++)for(u=t[i],a=1,o=u.length;o>a;a+=2)n=e.x(u[a],u[a+1]),r=e.y(u[a],u[a+1]),u[a]=n,u[a+1]=r;return t};if(t._g=B,t.type=B.win.SVGAngle||B.doc.implementation.hasFeature(\"http://www.w3.org/TR/SVG11/feature#BasicStructure\",\"1.1\")?\"SVG\":\"VML\",\"VML\"==t.type){var xe,ve=B.doc.createElement(\"div\");if(ve.innerHTML='<v:shape adj=\"1\"/>',xe=ve.firstChild,xe.style.behavior=\"url(#default#VML)\",!xe||\"object\"!=typeof xe.adj)return t.type=A;ve=null}t.svg=!(t.vml=\"VML\"==t.type),t._Paper=C,t.fn=y=C.prototype=t.prototype,t._id=0,t._oid=0,t.is=function(t,e){return e=q.call(e),\"finite\"==e?!H[k](+t):\"array\"==e?t instanceof Array:\"null\"==e&&null===t||e==typeof t&&null!==t||\"object\"==e&&t===Object(t)||\"array\"==e&&Array.isArray&&Array.isArray(t)||W.call(t).slice(8,-1).toLowerCase()==e},t.angle=function(e,n,r,i,a,s){if(null==a){var o=e-r,u=n-i;return o||u?(180+180*j.atan2(-u,-o)/X+360)%360:0}return t.angle(e,n,a,s)-t.angle(r,i,a,s)},t.rad=function(t){return t%360*X/180},t.deg=function(t){return 180*t/X%360},t.snapTo=function(e,n,r){if(r=t.is(r,\"finite\")?r:10,t.is(e,N)){for(var i=e.length;i--;)if(r>=O(e[i]-n))return e[i]}else{e=+e;var a=n%e;if(r>a)return n-a;if(a>e-r)return n-a+e}return n},t.createUUID=function(t,e){return function(){return\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(t,e).toUpperCase()}}(/[xy]/g,function(t){var e=0|16*j.random(),n=\"x\"==t?e:8|3&e;return n.toString(16)}),t.setWindow=function(e){eve(\"raphael.setWindow\",t,B.win,e),B.win=e,B.doc=B.win.document,t._engine.initWin&&t._engine.initWin(B.win)};var me=function(e){if(t.vml){var n,i=/^\\s+|\\s+$/g;try{var a=new ActiveXObject(\"htmlfile\");a.write(\"<body>\"),a.close(),n=a.body}catch(s){n=createPopup().document.body}var o=n.createTextRange();me=r(function(t){try{n.style.color=E(t).replace(i,A);var e=o.queryCommandValue(\"ForeColor\");return e=(255&e)<<16|65280&e|(16711680&e)>>>16,\"#\"+(\"000000\"+e.toString(16)).slice(-6)}catch(r){return\"none\"}})}else{var u=B.doc.createElement(\"i\");u.title=\"Raphaël Colour Picker\",u.style.display=\"none\",B.doc.body.appendChild(u),me=r(function(t){return u.style.color=t,B.doc.defaultView.getComputedStyle(u,A).getPropertyValue(\"color\")})}return me(e)},ye=function(){return\"hsb(\"+[this.h,this.s,this.b]+\")\"},be=function(){return\"hsl(\"+[this.h,this.s,this.l]+\")\"},_e=function(){return this.hex},we=function(e,n,r){if(null==n&&t.is(e,\"object\")&&\"r\"in e&&\"g\"in e&&\"b\"in e&&(r=e.b,n=e.g,e=e.r),null==n&&t.is(e,G)){var i=t.getRGB(e);e=i.r,n=i.g,r=i.b}return(e>1||n>1||r>1)&&(e/=255,n/=255,r/=255),[e,n,r]},ke=function(e,n,r,i){e*=255,n*=255,r*=255;var a={r:e,g:n,b:r,hex:t.rgb(e,n,r),toString:_e};return t.is(i,\"finite\")&&(a.opacity=i),a};t.color=function(e){var n;return t.is(e,\"object\")&&\"h\"in e&&\"s\"in e&&\"b\"in e?(n=t.hsb2rgb(e),e.r=n.r,e.g=n.g,e.b=n.b,e.hex=n.hex):t.is(e,\"object\")&&\"h\"in e&&\"s\"in e&&\"l\"in e?(n=t.hsl2rgb(e),e.r=n.r,e.g=n.g,e.b=n.b,e.hex=n.hex):(t.is(e,\"string\")&&(e=t.getRGB(e)),t.is(e,\"object\")&&\"r\"in e&&\"g\"in e&&\"b\"in e?(n=t.rgb2hsl(e),e.h=n.h,e.s=n.s,e.l=n.l,n=t.rgb2hsb(e),e.v=n.b):(e={hex:\"none\"},e.r=e.g=e.b=e.h=e.s=e.v=e.l=-1)),e.toString=_e,e},t.hsb2rgb=function(t,e,n,r){this.is(t,\"object\")&&\"h\"in t&&\"s\"in t&&\"b\"in t&&(n=t.b,e=t.s,t=t.h,r=t.o),t*=360;var i,a,s,o,u;return t=t%360/60,u=n*e,o=u*(1-O(t%2-1)),i=a=s=n-u,t=~~t,i+=[u,o,0,0,o,u][t],a+=[o,u,u,o,0,0][t],s+=[0,0,o,u,u,o][t],ke(i,a,s,r)},t.hsl2rgb=function(t,e,n,r){this.is(t,\"object\")&&\"h\"in t&&\"s\"in t&&\"l\"in t&&(n=t.l,e=t.s,t=t.h),(t>1||e>1||n>1)&&(t/=360,e/=100,n/=100),t*=360;var i,a,s,o,u;return t=t%360/60,u=2*e*(.5>n?n:1-n),o=u*(1-O(t%2-1)),i=a=s=n-u/2,t=~~t,i+=[u,o,0,0,o,u][t],a+=[o,u,u,o,0,0][t],s+=[0,0,o,u,u,o][t],ke(i,a,s,r)},t.rgb2hsb=function(t,e,n){n=we(t,e,n),t=n[0],e=n[1],n=n[2];var r,i,a,s;return a=D(t,e,n),s=a-z(t,e,n),r=0==s?null:a==t?(e-n)/s:a==e?(n-t)/s+2:(t-e)/s+4,r=60*((r+360)%6)/360,i=0==s?0:s/a,{h:r,s:i,b:a,toString:ye}},t.rgb2hsl=function(t,e,n){n=we(t,e,n),t=n[0],e=n[1],n=n[2];var r,i,a,s,o,u;return s=D(t,e,n),o=z(t,e,n),u=s-o,r=0==u?null:s==t?(e-n)/u:s==e?(n-t)/u+2:(t-e)/u+4,r=60*((r+360)%6)/360,a=(s+o)/2,i=0==u?0:.5>a?u/(2*a):u/(2-2*a),{h:r,s:i,l:a,toString:be}},t._path2string=function(){return this.join(\",\").replace(ie,\"$1\")},t._preload=function(t,e){var n=B.doc.createElement(\"img\");n.style.cssText=\"position:absolute;left:-9999em;top:-9999em\",n.onload=function(){e.call(this),this.onload=null,B.doc.body.removeChild(this)},n.onerror=function(){B.doc.body.removeChild(this)},B.doc.body.appendChild(n),n.src=t},t.getRGB=r(function(e){if(!e||(e=E(e)).indexOf(\"-\")+1)return{r:-1,g:-1,b:-1,hex:\"none\",error:1,toString:i};if(\"none\"==e)return{r:-1,g:-1,b:-1,hex:\"none\",toString:i};!(re[k](e.toLowerCase().substring(0,2))||\"#\"==e.charAt())&&(e=me(e));var n,r,a,s,o,u,l=e.match($);return l?(l[2]&&(a=J(l[2].substring(5),16),r=J(l[2].substring(3,5),16),n=J(l[2].substring(1,3),16)),l[3]&&(a=J((o=l[3].charAt(3))+o,16),r=J((o=l[3].charAt(2))+o,16),n=J((o=l[3].charAt(1))+o,16)),l[4]&&(u=l[4][M](ne),n=Q(u[0]),\"%\"==u[0].slice(-1)&&(n*=2.55),r=Q(u[1]),\"%\"==u[1].slice(-1)&&(r*=2.55),a=Q(u[2]),\"%\"==u[2].slice(-1)&&(a*=2.55),\"rgba\"==l[1].toLowerCase().slice(0,4)&&(s=Q(u[3])),u[3]&&\"%\"==u[3].slice(-1)&&(s/=100)),l[5]?(u=l[5][M](ne),n=Q(u[0]),\"%\"==u[0].slice(-1)&&(n*=2.55),r=Q(u[1]),\"%\"==u[1].slice(-1)&&(r*=2.55),a=Q(u[2]),\"%\"==u[2].slice(-1)&&(a*=2.55),(\"deg\"==u[0].slice(-3)||\"°\"==u[0].slice(-1))&&(n/=360),\"hsba\"==l[1].toLowerCase().slice(0,4)&&(s=Q(u[3])),u[3]&&\"%\"==u[3].slice(-1)&&(s/=100),t.hsb2rgb(n,r,a,s)):l[6]?(u=l[6][M](ne),n=Q(u[0]),\"%\"==u[0].slice(-1)&&(n*=2.55),r=Q(u[1]),\"%\"==u[1].slice(-1)&&(r*=2.55),a=Q(u[2]),\"%\"==u[2].slice(-1)&&(a*=2.55),(\"deg\"==u[0].slice(-3)||\"°\"==u[0].slice(-1))&&(n/=360),\"hsla\"==l[1].toLowerCase().slice(0,4)&&(s=Q(u[3])),u[3]&&\"%\"==u[3].slice(-1)&&(s/=100),t.hsl2rgb(n,r,a,s)):(l={r:n,g:r,b:a,toString:i},l.hex=\"#\"+(16777216|a|r<<8|n<<16).toString(16).slice(1),t.is(s,\"finite\")&&(l.opacity=s),l)):{r:-1,g:-1,b:-1,hex:\"none\",error:1,toString:i}},t),t.hsb=r(function(e,n,r){return t.hsb2rgb(e,n,r).hex}),t.hsl=r(function(e,n,r){return t.hsl2rgb(e,n,r).hex}),t.rgb=r(function(t,e,n){return\"#\"+(16777216|n|e<<8|t<<16).toString(16).slice(1)}),t.getColor=function(t){var e=this.getColor.start=this.getColor.start||{h:0,s:1,b:t||.75},n=this.hsb2rgb(e.h,e.s,e.b);return e.h+=.075,e.h>1&&(e.h=0,e.s-=.2,0>=e.s&&(this.getColor.start={h:0,s:1,b:e.b})),n.hex},t.getColor.reset=function(){delete this.start},t.parsePathString=function(e){if(!e)return null;var n=Be(e);if(n.arr)return Ce(n.arr);var r={a:7,c:6,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,z:0},i=[];return t.is(e,N)&&t.is(e[0],N)&&(i=Ce(e)),i.length||E(e).replace(ae,function(t,e,n){var a=[],s=e.toLowerCase();if(n.replace(oe,function(t,e){e&&a.push(+e)}),\"m\"==s&&a.length>2&&(i.push([e][T](a.splice(0,2))),s=\"l\",e=\"m\"==e?\"l\":\"L\"),\"r\"==s)i.push([e][T](a));else for(;a.length>=r[s]&&(i.push([e][T](a.splice(0,r[s]))),r[s]););}),i.toString=t._path2string,n.arr=Ce(i),i},t.parseTransformString=r(function(e){if(!e)return null;var n=[];return t.is(e,N)&&t.is(e[0],N)&&(n=Ce(e)),n.length||E(e).replace(se,function(t,e,r){var i=[];q.call(e),r.replace(oe,function(t,e){e&&i.push(+e)}),n.push([e][T](i))}),n.toString=t._path2string,n});var Be=function(t){var e=Be.ps=Be.ps||{};return e[t]?e[t].sleep=100:e[t]={sleep:100},setTimeout(function(){for(var n in e)e[k](n)&&n!=t&&(e[n].sleep--,!e[n].sleep&&delete e[n])}),e[t]};t.findDotsAtSegment=function(t,e,n,r,i,a,s,o,u){var l=1-u,h=V(l,3),c=V(l,2),f=u*u,p=f*u,d=h*t+3*c*u*n+3*l*u*u*i+p*s,g=h*e+3*c*u*r+3*l*u*u*a+p*o,x=t+2*u*(n-t)+f*(i-2*n+t),v=e+2*u*(r-e)+f*(a-2*r+e),m=n+2*u*(i-n)+f*(s-2*i+n),y=r+2*u*(a-r)+f*(o-2*a+r),b=l*t+u*n,_=l*e+u*r,w=l*i+u*s,k=l*a+u*o,B=90-180*j.atan2(x-m,v-y)/X;return(x>m||y>v)&&(B+=180),{x:d,y:g,m:{x:x,y:v},n:{x:m,y:y},start:{x:b,y:_},end:{x:w,y:k},alpha:B}},t.bezierBBox=function(e,n,r,i,a,s,o,u){t.is(e,\"array\")||(e=[e,n,r,i,a,s,o,u]);var l=Me.apply(null,e);return{x:l.min.x,y:l.min.y,x2:l.max.x,y2:l.max.y,width:l.max.x-l.min.x,height:l.max.y-l.min.y}},t.isPointInsideBBox=function(t,e,n){return e>=t.x&&t.x2>=e&&n>=t.y&&t.y2>=n},t.isBBoxIntersect=function(e,n){var r=t.isPointInsideBBox;return r(n,e.x,e.y)||r(n,e.x2,e.y)||r(n,e.x,e.y2)||r(n,e.x2,e.y2)||r(e,n.x,n.y)||r(e,n.x2,n.y)||r(e,n.x,n.y2)||r(e,n.x2,n.y2)||(e.x<n.x2&&e.x>n.x||n.x<e.x2&&n.x>e.x)&&(e.y<n.y2&&e.y>n.y||n.y<e.y2&&n.y>e.y)},t.pathIntersection=function(t,e){return c(t,e)},t.pathIntersectionNumber=function(t,e){return c(t,e,1)},t.isPointInsidePath=function(e,n,r){var i=t.pathBBox(e);return t.isPointInsideBBox(i,n,r)&&1==c(e,[[\"M\",n,r],[\"H\",i.x2+10]],1)%2},t._removedFactory=function(t){return function(){eve(\"raphael.log\",null,\"Raphaël: you are calling to method “\"+t+\"” of removed object\",t)}};var Se=t.pathBBox=function(t){var n=Be(t);if(n.bbox)return e(n.bbox);if(!t)return{x:0,y:0,width:0,height:0,x2:0,y2:0};t=Ie(t);for(var r,i=0,a=0,s=[],o=[],u=0,l=t.length;l>u;u++)if(r=t[u],\"M\"==r[0])i=r[1],a=r[2],s.push(i),o.push(a);else{var h=Me(i,a,r[1],r[2],r[3],r[4],r[5],r[6]);s=s[T](h.min.x,h.max.x),o=o[T](h.min.y,h.max.y),i=r[5],a=r[6]}var c=z[F](0,s),f=z[F](0,o),p=D[F](0,s),d=D[F](0,o),g={x:c,y:f,x2:p,y2:d,width:p-c,height:d-f};return n.bbox=e(g),g},Ce=function(n){var r=e(n);return r.toString=t._path2string,r},Fe=t._pathToRelative=function(e){var n=Be(e);if(n.rel)return Ce(n.rel);t.is(e,N)&&t.is(e&&e[0],N)||(e=t.parsePathString(e));var r=[],i=0,a=0,s=0,o=0,u=0;\"M\"==e[0][0]&&(i=e[0][1],a=e[0][2],s=i,o=a,u++,r.push([\"M\",i,a]));for(var l=u,h=e.length;h>l;l++){var c=r[l]=[],f=e[l];if(f[0]!=q.call(f[0]))switch(c[0]=q.call(f[0]),c[0]){case\"a\":c[1]=f[1],c[2]=f[2],c[3]=f[3],c[4]=f[4],c[5]=f[5],c[6]=+(f[6]-i).toFixed(3),c[7]=+(f[7]-a).toFixed(3);break;case\"v\":c[1]=+(f[1]-a).toFixed(3);break;case\"m\":s=f[1],o=f[2];default:for(var p=1,d=f.length;d>p;p++)c[p]=+(f[p]-(p%2?i:a)).toFixed(3)}else{c=r[l]=[],\"m\"==f[0]&&(s=f[1]+i,o=f[2]+a);for(var g=0,x=f.length;x>g;g++)r[l][g]=f[g]}var v=r[l].length;switch(r[l][0]){case\"z\":i=s,a=o;break;case\"h\":i+=+r[l][v-1];break;case\"v\":a+=+r[l][v-1];break;default:i+=+r[l][v-2],a+=+r[l][v-1]}}return r.toString=t._path2string,n.rel=Ce(r),r},Te=t._pathToAbsolute=function(e){var n=Be(e);if(n.abs)return Ce(n.abs);if(t.is(e,N)&&t.is(e&&e[0],N)||(e=t.parsePathString(e)),!e||!e.length)return[[\"M\",0,0]];var r=[],i=0,s=0,o=0,u=0,l=0;\"M\"==e[0][0]&&(i=+e[0][1],s=+e[0][2],o=i,u=s,l++,r[0]=[\"M\",i,s]);for(var h,c,f=3==e.length&&\"M\"==e[0][0]&&\"R\"==e[1][0].toUpperCase()&&\"Z\"==e[2][0].toUpperCase(),p=l,d=e.length;d>p;p++){if(r.push(h=[]),c=e[p],c[0]!=K.call(c[0]))switch(h[0]=K.call(c[0]),h[0]){case\"A\":h[1]=c[1],h[2]=c[2],h[3]=c[3],h[4]=c[4],h[5]=c[5],h[6]=+(c[6]+i),h[7]=+(c[7]+s);break;case\"V\":h[1]=+c[1]+s;break;case\"H\":h[1]=+c[1]+i;break;case\"R\":for(var g=[i,s][T](c.slice(1)),x=2,v=g.length;v>x;x++)g[x]=+g[x]+i,g[++x]=+g[x]+s;r.pop(),r=r[T](a(g,f));break;case\"M\":o=+c[1]+i,u=+c[2]+s;default:for(x=1,v=c.length;v>x;x++)h[x]=+c[x]+(x%2?i:s)}else if(\"R\"==c[0])g=[i,s][T](c.slice(1)),r.pop(),r=r[T](a(g,f)),h=[\"R\"][T](c.slice(-2));else for(var m=0,y=c.length;y>m;m++)h[m]=c[m];switch(h[0]){case\"Z\":i=o,s=u;break;case\"H\":i=h[1];break;case\"V\":s=h[1];break;case\"M\":o=h[h.length-2],u=h[h.length-1];default:i=h[h.length-2],s=h[h.length-1]}}return r.toString=t._path2string,n.abs=Ce(r),r},Le=function(t,e,n,r){return[t,e,n,r,n,r]},Ae=function(t,e,n,r,i,a){var s=1/3,o=2/3;return[s*t+o*n,s*e+o*r,s*i+o*n,s*a+o*r,i,a]},Pe=function(t,e,n,i,a,s,o,u,l,h){var c,f=120*X/180,p=X/180*(+a||0),d=[],g=r(function(t,e,n){var r=t*j.cos(n)-e*j.sin(n),i=t*j.sin(n)+e*j.cos(n);return{x:r,y:i}});if(h)B=h[0],S=h[1],w=h[2],k=h[3];else{c=g(t,e,-p),t=c.x,e=c.y,c=g(u,l,-p),u=c.x,l=c.y;var x=(j.cos(X/180*a),j.sin(X/180*a),(t-u)/2),v=(e-l)/2,m=x*x/(n*n)+v*v/(i*i);m>1&&(m=j.sqrt(m),n=m*n,i=m*i);var y=n*n,b=i*i,_=(s==o?-1:1)*j.sqrt(O((y*b-y*v*v-b*x*x)/(y*v*v+b*x*x))),w=_*n*v/i+(t+u)/2,k=_*-i*x/n+(e+l)/2,B=j.asin(((e-k)/i).toFixed(9)),S=j.asin(((l-k)/i).toFixed(9));B=w>t?X-B:B,S=w>u?X-S:S,0>B&&(B=2*X+B),0>S&&(S=2*X+S),o&&B>S&&(B-=2*X),!o&&S>B&&(S-=2*X)}var C=S-B;if(O(C)>f){var F=S,L=u,A=l;S=B+f*(o&&S>B?1:-1),u=w+n*j.cos(S),l=k+i*j.sin(S),d=Pe(u,l,n,i,a,0,o,L,A,[S,F,w,k])}C=S-B;var P=j.cos(B),E=j.sin(B),I=j.cos(S),R=j.sin(S),q=j.tan(C/4),D=4/3*n*q,z=4/3*i*q,V=[t,e],Y=[t+D*E,e-z*P],G=[u+D*R,l-z*I],N=[u,l];if(Y[0]=2*V[0]-Y[0],Y[1]=2*V[1]-Y[1],h)return[Y,G,N][T](d);d=[Y,G,N][T](d).join()[M](\",\");for(var W=[],$=0,H=d.length;H>$;$++)W[$]=$%2?g(d[$-1],d[$],p).y:g(d[$],d[$+1],p).x;return W},Ee=function(t,e,n,r,i,a,s,o,u){var l=1-u;return{x:V(l,3)*t+3*V(l,2)*u*n+3*l*u*u*i+V(u,3)*s,y:V(l,3)*e+3*V(l,2)*u*r+3*l*u*u*a+V(u,3)*o}},Me=r(function(t,e,n,r,i,a,s,o){var u,l=i-2*n+t-(s-2*i+n),h=2*(n-t)-2*(i-n),c=t-n,f=(-h+j.sqrt(h*h-4*l*c))/2/l,p=(-h-j.sqrt(h*h-4*l*c))/2/l,d=[e,o],g=[t,s];return O(f)>\"1e12\"&&(f=.5),O(p)>\"1e12\"&&(p=.5),f>0&&1>f&&(u=Ee(t,e,n,r,i,a,s,o,f),g.push(u.x),d.push(u.y)),p>0&&1>p&&(u=Ee(t,e,n,r,i,a,s,o,p),g.push(u.x),d.push(u.y)),l=a-2*r+e-(o-2*a+r),h=2*(r-e)-2*(a-r),c=e-r,f=(-h+j.sqrt(h*h-4*l*c))/2/l,p=(-h-j.sqrt(h*h-4*l*c))/2/l,O(f)>\"1e12\"&&(f=.5),O(p)>\"1e12\"&&(p=.5),f>0&&1>f&&(u=Ee(t,e,n,r,i,a,s,o,f),g.push(u.x),d.push(u.y)),p>0&&1>p&&(u=Ee(t,e,n,r,i,a,s,o,p),g.push(u.x),d.push(u.y)),{min:{x:z[F](0,g),y:z[F](0,d)},max:{x:D[F](0,g),y:D[F](0,d)}}}),Ie=t._path2curve=r(function(t,e){var n=!e&&Be(t);if(!e&&n.curve)return Ce(n.curve);for(var r=Te(t),i=e&&Te(e),a={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},s={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},o=(function(t,e){var n,r;if(!t)return[\"C\",e.x,e.y,e.x,e.y,e.x,e.y];switch(!(t[0]in{T:1,Q:1})&&(e.qx=e.qy=null),t[0]){case\"M\":e.X=t[1],e.Y=t[2];break;case\"A\":t=[\"C\"][T](Pe[F](0,[e.x,e.y][T](t.slice(1))));break;case\"S\":n=e.x+(e.x-(e.bx||e.x)),r=e.y+(e.y-(e.by||e.y)),t=[\"C\",n,r][T](t.slice(1));break;case\"T\":e.qx=e.x+(e.x-(e.qx||e.x)),e.qy=e.y+(e.y-(e.qy||e.y)),t=[\"C\"][T](Ae(e.x,e.y,e.qx,e.qy,t[1],t[2]));break;case\"Q\":e.qx=t[1],e.qy=t[2],t=[\"C\"][T](Ae(e.x,e.y,t[1],t[2],t[3],t[4]));break;case\"L\":t=[\"C\"][T](Le(e.x,e.y,t[1],t[2]));break;case\"H\":t=[\"C\"][T](Le(e.x,e.y,t[1],e.y));break;case\"V\":t=[\"C\"][T](Le(e.x,e.y,e.x,t[1]));break;case\"Z\":t=[\"C\"][T](Le(e.x,e.y,e.X,e.Y))}return t}),u=function(t,e){if(t[e].length>7){t[e].shift();for(var n=t[e];n.length;)t.splice(e++,0,[\"C\"][T](n.splice(0,6)));t.splice(e,1),c=D(r.length,i&&i.length||0)}},l=function(t,e,n,a,s){t&&e&&\"M\"==t[s][0]&&\"M\"!=e[s][0]&&(e.splice(s,0,[\"M\",a.x,a.y]),n.bx=0,n.by=0,n.x=t[s][1],n.y=t[s][2],c=D(r.length,i&&i.length||0))},h=0,c=D(r.length,i&&i.length||0);c>h;h++){r[h]=o(r[h],a),u(r,h),i&&(i[h]=o(i[h],s)),i&&u(i,h),l(r,i,a,s,h),l(i,r,s,a,h);var f=r[h],p=i&&i[h],d=f.length,g=i&&p.length;a.x=f[d-2],a.y=f[d-1],a.bx=Q(f[d-4])||a.x,a.by=Q(f[d-3])||a.y,s.bx=i&&(Q(p[g-4])||s.x),s.by=i&&(Q(p[g-3])||s.y),s.x=i&&p[g-2],s.y=i&&p[g-1]}return i||(n.curve=Ce(r)),i?[r,i]:r},null,Ce),Re=(t._parseDots=r(function(e){for(var n=[],r=0,i=e.length;i>r;r++){var a={},s=e[r].match(/^([^:]*):?([\\d\\.]*)/);if(a.color=t.getRGB(s[1]),a.color.error)return null;a.color=a.color.hex,s[2]&&(a.offset=s[2]+\"%\"),n.push(a)}for(r=1,i=n.length-1;i>r;r++)if(!n[r].offset){for(var o=Q(n[r-1].offset||0),u=0,l=r+1;i>l;l++)if(n[l].offset){u=n[l].offset;break}u||(u=100,l=i),u=Q(u);for(var h=(u-o)/(l-r+1);l>r;r++)o+=h,n[r].offset=o+\"%\"}return n}),t._tear=function(t,e){t==e.top&&(e.top=t.prev),t==e.bottom&&(e.bottom=t.next),t.next&&(t.next.prev=t.prev),t.prev&&(t.prev.next=t.next)}),qe=(t._tofront=function(t,e){e.top!==t&&(Re(t,e),t.next=null,t.prev=e.top,e.top.next=t,e.top=t)},t._toback=function(t,e){e.bottom!==t&&(Re(t,e),t.next=e.bottom,t.prev=null,e.bottom.prev=t,e.bottom=t)},t._insertafter=function(t,e,n){Re(t,n),e==n.top&&(n.top=t),e.next&&(e.next.prev=t),t.next=e.next,t.prev=e,e.next=t},t._insertbefore=function(t,e,n){Re(t,n),e==n.bottom&&(n.bottom=t),e.prev&&(e.prev.next=t),t.prev=e.prev,e.prev=t,t.next=e},t.toMatrix=function(t,e){var n=Se(t),r={_:{transform:A},getBBox:function(){return n}};return je(r,e),r.matrix}),je=(t.transformPath=function(t,e){return ge(t,qe(t,e))},t._extractTransform=function(e,n){if(null==n)return e._.transform;n=E(n).replace(/\\.{3}|\\u2026/g,e._.transform||A);var r=t.parseTransformString(n),i=0,a=0,s=0,o=1,u=1,l=e._,h=new f;if(l.transform=r||[],r)for(var c=0,p=r.length;p>c;c++){var d,g,x,v,m,y=r[c],b=y.length,_=E(y[0]).toLowerCase(),w=y[0]!=_,k=w?h.invert():0;\"t\"==_&&3==b?w?(d=k.x(0,0),g=k.y(0,0),x=k.x(y[1],y[2]),v=k.y(y[1],y[2]),h.translate(x-d,v-g)):h.translate(y[1],y[2]):\"r\"==_?2==b?(m=m||e.getBBox(1),h.rotate(y[1],m.x+m.width/2,m.y+m.height/2),i+=y[1]):4==b&&(w?(x=k.x(y[2],y[3]),v=k.y(y[2],y[3]),h.rotate(y[1],x,v)):h.rotate(y[1],y[2],y[3]),i+=y[1]):\"s\"==_?2==b||3==b?(m=m||e.getBBox(1),h.scale(y[1],y[b-1],m.x+m.width/2,m.y+m.height/2),o*=y[1],u*=y[b-1]):5==b&&(w?(x=k.x(y[3],y[4]),v=k.y(y[3],y[4]),h.scale(y[1],y[2],x,v)):h.scale(y[1],y[2],y[3],y[4]),o*=y[1],u*=y[2]):\"m\"==_&&7==b&&h.add(y[1],y[2],y[3],y[4],y[5],y[6]),l.dirtyT=1,e.matrix=h}e.matrix=h,l.sx=o,l.sy=u,l.deg=i,l.dx=a=h.e,l.dy=s=h.f,1==o&&1==u&&!i&&l.bbox?(l.bbox.x+=+a,l.bbox.y+=+s):l.dirtyT=1}),De=function(t){var e=t[0];switch(e.toLowerCase()){case\"t\":return[e,0,0];case\"m\":return[e,1,0,0,1,0,0];case\"r\":return 4==t.length?[e,0,t[2],t[3]]:[e,0];case\"s\":return 5==t.length?[e,1,1,t[3],t[4]]:3==t.length?[e,1,1]:[e,1]}},ze=t._equaliseTransform=function(e,n){n=E(n).replace(/\\.{3}|\\u2026/g,e),e=t.parseTransformString(e)||[],n=t.parseTransformString(n)||[];for(var r,i,a,s,o=D(e.length,n.length),u=[],l=[],h=0;o>h;h++){if(a=e[h]||De(n[h]),s=n[h]||De(a),a[0]!=s[0]||\"r\"==a[0].toLowerCase()&&(a[2]!=s[2]||a[3]!=s[3])||\"s\"==a[0].toLowerCase()&&(a[3]!=s[3]||a[4]!=s[4]))return;for(u[h]=[],l[h]=[],r=0,i=D(a.length,s.length);i>r;r++)r in a&&(u[h][r]=a[r]),r in s&&(l[h][r]=s[r])}return{from:u,to:l}};t._getContainer=function(e,n,r,i){var a;return a=null!=i||t.is(e,\"object\")?e:B.doc.getElementById(e),null!=a?a.tagName?null==n?{container:a,width:a.style.pixelWidth||a.offsetWidth,height:a.style.pixelHeight||a.offsetHeight}:{container:a,width:n,height:r}:{container:1,x:e,y:n,width:r,height:i}:void 0},t.pathToRelative=Fe,t._engine={},t.path2curve=Ie,t.matrix=function(t,e,n,r,i,a){return new f(t,e,n,r,i,a)},function(e){function n(t){return t[0]*t[0]+t[1]*t[1]}function r(t){var e=j.sqrt(n(t));t[0]&&(t[0]/=e),t[1]&&(t[1]/=e)}e.add=function(t,e,n,r,i,a){var s,o,u,l,h=[[],[],[]],c=[[this.a,this.c,this.e],[this.b,this.d,this.f],[0,0,1]],p=[[t,n,i],[e,r,a],[0,0,1]];for(t&&t instanceof f&&(p=[[t.a,t.c,t.e],[t.b,t.d,t.f],[0,0,1]]),s=0;3>s;s++)for(o=0;3>o;o++){for(l=0,u=0;3>u;u++)l+=c[s][u]*p[u][o];h[s][o]=l}this.a=h[0][0],this.b=h[1][0],this.c=h[0][1],this.d=h[1][1],this.e=h[0][2],this.f=h[1][2]},e.invert=function(){var t=this,e=t.a*t.d-t.b*t.c;return new f(t.d/e,-t.b/e,-t.c/e,t.a/e,(t.c*t.f-t.d*t.e)/e,(t.b*t.e-t.a*t.f)/e)},e.clone=function(){return new f(this.a,this.b,this.c,this.d,this.e,this.f)},e.translate=function(t,e){this.add(1,0,0,1,t,e)},e.scale=function(t,e,n,r){null==e&&(e=t),(n||r)&&this.add(1,0,0,1,n,r),this.add(t,0,0,e,0,0),(n||r)&&this.add(1,0,0,1,-n,-r)},e.rotate=function(e,n,r){e=t.rad(e),n=n||0,r=r||0;var i=+j.cos(e).toFixed(9),a=+j.sin(e).toFixed(9);this.add(i,a,-a,i,n,r),this.add(1,0,0,1,-n,-r)},e.x=function(t,e){return t*this.a+e*this.c+this.e},e.y=function(t,e){return t*this.b+e*this.d+this.f},e.get=function(t){return+this[E.fromCharCode(97+t)].toFixed(4)},e.toString=function(){return t.svg?\"matrix(\"+[this.get(0),this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)].join()+\")\":[this.get(0),this.get(2),this.get(1),this.get(3),0,0].join()},e.toFilter=function(){return\"progid:DXImageTransform.Microsoft.Matrix(M11=\"+this.get(0)+\", M12=\"+this.get(2)+\", M21=\"+this.get(1)+\", M22=\"+this.get(3)+\", Dx=\"+this.get(4)+\", Dy=\"+this.get(5)+\", sizingmethod='auto expand')\"},e.offset=function(){return[this.e.toFixed(4),this.f.toFixed(4)]},e.split=function(){var e={};e.dx=this.e,e.dy=this.f;var i=[[this.a,this.c],[this.b,this.d]];e.scalex=j.sqrt(n(i[0])),r(i[0]),e.shear=i[0][0]*i[1][0]+i[0][1]*i[1][1],i[1]=[i[1][0]-i[0][0]*e.shear,i[1][1]-i[0][1]*e.shear],e.scaley=j.sqrt(n(i[1])),r(i[1]),e.shear/=e.scaley;var a=-i[0][1],s=i[1][1];return 0>s?(e.rotate=t.deg(j.acos(s)),0>a&&(e.rotate=360-e.rotate)):e.rotate=t.deg(j.asin(a)),e.isSimple=!(+e.shear.toFixed(9)||e.scalex.toFixed(9)!=e.scaley.toFixed(9)&&e.rotate),e.isSuperSimple=!+e.shear.toFixed(9)&&e.scalex.toFixed(9)==e.scaley.toFixed(9)&&!e.rotate,e.noRotation=!+e.shear.toFixed(9)&&!e.rotate,e\n},e.toTransformString=function(t){var e=t||this[M]();return e.isSimple?(e.scalex=+e.scalex.toFixed(4),e.scaley=+e.scaley.toFixed(4),e.rotate=+e.rotate.toFixed(4),(e.dx||e.dy?\"t\"+[e.dx,e.dy]:A)+(1!=e.scalex||1!=e.scaley?\"s\"+[e.scalex,e.scaley,0,0]:A)+(e.rotate?\"r\"+[e.rotate,0,0]:A)):\"m\"+[this.get(0),this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)]}}(f.prototype);var Oe=navigator.userAgent.match(/Version\\/(.*?)\\s/)||navigator.userAgent.match(/Chrome\\/(\\d+)/);y.safari=\"Apple Computer, Inc.\"==navigator.vendor&&(Oe&&4>Oe[1]||\"iP\"==navigator.platform.slice(0,2))||\"Google Inc.\"==navigator.vendor&&Oe&&8>Oe[1]?function(){var t=this.rect(-99,-99,this.width+99,this.height+99).attr({stroke:\"none\"});setTimeout(function(){t.remove()})}:he;for(var Ve=function(){this.returnValue=!1},Xe=function(){return this.originalEvent.preventDefault()},Ye=function(){this.cancelBubble=!0},Ge=function(){return this.originalEvent.stopPropagation()},Ne=function(){return B.doc.addEventListener?function(t,e,n,r){var i=L&&R[e]?R[e]:e,a=function(i){var a=B.doc.documentElement.scrollTop||B.doc.body.scrollTop,s=B.doc.documentElement.scrollLeft||B.doc.body.scrollLeft,o=i.clientX+s,u=i.clientY+a;if(L&&R[k](e))for(var l=0,h=i.targetTouches&&i.targetTouches.length;h>l;l++)if(i.targetTouches[l].target==t){var c=i;i=i.targetTouches[l],i.originalEvent=c,i.preventDefault=Xe,i.stopPropagation=Ge;break}return n.call(r,i,o,u)};return t.addEventListener(i,a,!1),function(){return t.removeEventListener(i,a,!1),!0}}:B.doc.attachEvent?function(t,e,n,r){var i=function(t){t=t||B.win.event;var e=B.doc.documentElement.scrollTop||B.doc.body.scrollTop,i=B.doc.documentElement.scrollLeft||B.doc.body.scrollLeft,a=t.clientX+i,s=t.clientY+e;return t.preventDefault=t.preventDefault||Ve,t.stopPropagation=t.stopPropagation||Ye,n.call(r,t,a,s)};t.attachEvent(\"on\"+e,i);var a=function(){return t.detachEvent(\"on\"+e,i),!0};return a}:void 0}(),We=[],$e=function(t){for(var e,n=t.clientX,r=t.clientY,i=B.doc.documentElement.scrollTop||B.doc.body.scrollTop,a=B.doc.documentElement.scrollLeft||B.doc.body.scrollLeft,s=We.length;s--;){if(e=We[s],L){for(var o,u=t.touches.length;u--;)if(o=t.touches[u],o.identifier==e.el._drag.id){n=o.clientX,r=o.clientY,(t.originalEvent?t.originalEvent:t).preventDefault();break}}else t.preventDefault();var l,h=e.el.node,c=h.nextSibling,f=h.parentNode,p=h.style.display;B.win.opera&&f.removeChild(h),h.style.display=\"none\",l=e.el.paper.getElementByPoint(n,r),h.style.display=p,B.win.opera&&(c?f.insertBefore(h,c):f.appendChild(h)),l&&eve(\"raphael.drag.over.\"+e.el.id,e.el,l),n+=a,r+=i,eve(\"raphael.drag.move.\"+e.el.id,e.move_scope||e.el,n-e.el._drag.x,r-e.el._drag.y,n,r,t)}},He=function(e){t.unmousemove($e).unmouseup(He);for(var n,r=We.length;r--;)n=We[r],n.el._drag={},eve(\"raphael.drag.end.\"+n.el.id,n.end_scope||n.start_scope||n.move_scope||n.el,e);We=[]},Ue=t.el={},Ze=I.length;Ze--;)(function(e){t[e]=Ue[e]=function(n,r){return t.is(n,\"function\")&&(this.events=this.events||[],this.events.push({name:e,f:n,unbind:Ne(this.shape||this.node||B.doc,e,n,r||this)})),this},t[\"un\"+e]=Ue[\"un\"+e]=function(t){for(var n=this.events||[],r=n.length;r--;)if(n[r].name==e&&n[r].f==t)return n[r].unbind(),n.splice(r,1),!n.length&&delete this.events,this;return this}})(I[Ze]);Ue.data=function(e,n){var r=ue[this.id]=ue[this.id]||{};if(1==arguments.length){if(t.is(e,\"object\")){for(var i in e)e[k](i)&&this.data(i,e[i]);return this}return eve(\"raphael.data.get.\"+this.id,this,r[e],e),r[e]}return r[e]=n,eve(\"raphael.data.set.\"+this.id,this,n,e),this},Ue.removeData=function(t){return null==t?ue[this.id]={}:ue[this.id]&&delete ue[this.id][t],this},Ue.getData=function(){return ue[this.id]||{}},Ue.hover=function(t,e,n,r){return this.mouseover(t,n).mouseout(e,r||n)},Ue.unhover=function(t,e){return this.unmouseover(t).unmouseout(e)};var Qe=[];Ue.drag=function(e,n,r,i,a,s){function o(o){(o.originalEvent||o).preventDefault();var u=B.doc.documentElement.scrollTop||B.doc.body.scrollTop,l=B.doc.documentElement.scrollLeft||B.doc.body.scrollLeft;this._drag.x=o.clientX+l,this._drag.y=o.clientY+u,this._drag.id=o.identifier,!We.length&&t.mousemove($e).mouseup(He),We.push({el:this,move_scope:i,start_scope:a,end_scope:s}),n&&eve.on(\"raphael.drag.start.\"+this.id,n),e&&eve.on(\"raphael.drag.move.\"+this.id,e),r&&eve.on(\"raphael.drag.end.\"+this.id,r),eve(\"raphael.drag.start.\"+this.id,a||i||this,o.clientX+l,o.clientY+u,o)}return this._drag={},Qe.push({el:this,start:o}),this.mousedown(o),this},Ue.onDragOver=function(t){t?eve.on(\"raphael.drag.over.\"+this.id,t):eve.unbind(\"raphael.drag.over.\"+this.id)},Ue.undrag=function(){for(var e=Qe.length;e--;)Qe[e].el==this&&(this.unmousedown(Qe[e].start),Qe.splice(e,1),eve.unbind(\"raphael.drag.*.\"+this.id));!Qe.length&&t.unmousemove($e).unmouseup(He),We=[]},y.circle=function(e,n,r){var i=t._engine.circle(this,e||0,n||0,r||0);return this.__set__&&this.__set__.push(i),i},y.rect=function(e,n,r,i,a){var s=t._engine.rect(this,e||0,n||0,r||0,i||0,a||0);return this.__set__&&this.__set__.push(s),s},y.ellipse=function(e,n,r,i){var a=t._engine.ellipse(this,e||0,n||0,r||0,i||0);return this.__set__&&this.__set__.push(a),a},y.path=function(e){e&&!t.is(e,G)&&!t.is(e[0],N)&&(e+=A);var n=t._engine.path(t.format[F](t,arguments),this);return this.__set__&&this.__set__.push(n),n},y.image=function(e,n,r,i,a){var s=t._engine.image(this,e||\"about:blank\",n||0,r||0,i||0,a||0);return this.__set__&&this.__set__.push(s),s},y.text=function(e,n,r){var i=t._engine.text(this,e||0,n||0,E(r));return this.__set__&&this.__set__.push(i),i},y.set=function(e){!t.is(e,\"array\")&&(e=Array.prototype.splice.call(arguments,0,arguments.length));var n=new hn(e);return this.__set__&&this.__set__.push(n),n.paper=this,n.type=\"set\",n},y.setStart=function(t){this.__set__=t||this.set()},y.setFinish=function(){var t=this.__set__;return delete this.__set__,t},y.setSize=function(e,n){return t._engine.setSize.call(this,e,n)},y.setViewBox=function(e,n,r,i,a){return t._engine.setViewBox.call(this,e,n,r,i,a)},y.top=y.bottom=null,y.raphael=t;var Je=function(t){var e=t.getBoundingClientRect(),n=t.ownerDocument,r=n.body,i=n.documentElement,a=i.clientTop||r.clientTop||0,s=i.clientLeft||r.clientLeft||0,o=e.top+(B.win.pageYOffset||i.scrollTop||r.scrollTop)-a,u=e.left+(B.win.pageXOffset||i.scrollLeft||r.scrollLeft)-s;return{y:o,x:u}};y.getElementByPoint=function(t,e){var n=this,r=n.canvas,i=B.doc.elementFromPoint(t,e);if(B.win.opera&&\"svg\"==i.tagName){var a=Je(r),s=r.createSVGRect();s.x=t-a.x,s.y=e-a.y,s.width=s.height=1;var o=r.getIntersectionList(s,null);o.length&&(i=o[o.length-1])}if(!i)return null;for(;i.parentNode&&i!=r.parentNode&&!i.raphael;)i=i.parentNode;return i==n.canvas.parentNode&&(i=r),i=i&&i.raphael?n.getById(i.raphaelid):null},y.getElementsByBBox=function(t){var e=this.set();return this.forEach(function(n){Raphael.isBBoxIntersect(n.getBBox(),t)&&e.push(n)}),e},y.getById=function(t){for(var e=this.bottom;e;){if(e.id==t)return e;e=e.next}return null},y.forEach=function(t,e){for(var n=this.bottom;n;){if(t.call(e,n)===!1)return this;n=n.next}return this},y.getElementsByPoint=function(t,e){var n=this.set();return this.forEach(function(r){r.isPointInside(t,e)&&n.push(r)}),n},Ue.isPointInside=function(e,n){var r=this.realPath=this.realPath||de[this.type](this);return t.isPointInsidePath(r,e,n)},Ue.getBBox=function(t){if(this.removed)return{};var e=this._;return t?((e.dirty||!e.bboxwt)&&(this.realPath=de[this.type](this),e.bboxwt=Se(this.realPath),e.bboxwt.toString=p,e.dirty=0),e.bboxwt):((e.dirty||e.dirtyT||!e.bbox)&&((e.dirty||!this.realPath)&&(e.bboxwt=0,this.realPath=de[this.type](this)),e.bbox=Se(ge(this.realPath,this.matrix)),e.bbox.toString=p,e.dirty=e.dirtyT=0),e.bbox)},Ue.clone=function(){if(this.removed)return null;var t=this.paper[this.type]().attr(this.attr());return this.__set__&&this.__set__.push(t),t},Ue.glow=function(t){if(\"text\"==this.type)return null;t=t||{};var e={width:(t.width||10)+(+this.attr(\"stroke-width\")||1),fill:t.fill||!1,opacity:t.opacity||.5,offsetx:t.offsetx||0,offsety:t.offsety||0,color:t.color||\"#000\"},n=e.width/2,r=this.paper,i=r.set(),a=this.realPath||de[this.type](this);a=this.matrix?ge(a,this.matrix):a;for(var s=1;n+1>s;s++)i.push(r.path(a).attr({stroke:e.color,fill:e.fill?e.color:\"none\",\"stroke-linejoin\":\"round\",\"stroke-linecap\":\"round\",\"stroke-width\":+(e.width/n*s).toFixed(3),opacity:+(e.opacity/n).toFixed(3)}));return i.insertBefore(this).translate(e.offsetx,e.offsety)};var Ke=function(e,n,r,i,a,s,l,h,c){return null==c?o(e,n,r,i,a,s,l,h):t.findDotsAtSegment(e,n,r,i,a,s,l,h,u(e,n,r,i,a,s,l,h,c))},tn=function(e,n){return function(r,i,a){r=Ie(r);for(var s,o,u,l,h,c=\"\",f={},p=0,d=0,g=r.length;g>d;d++){if(u=r[d],\"M\"==u[0])s=+u[1],o=+u[2];else{if(l=Ke(s,o,u[1],u[2],u[3],u[4],u[5],u[6]),p+l>i){if(n&&!f.start){if(h=Ke(s,o,u[1],u[2],u[3],u[4],u[5],u[6],i-p),c+=[\"C\"+h.start.x,h.start.y,h.m.x,h.m.y,h.x,h.y],a)return c;f.start=c,c=[\"M\"+h.x,h.y+\"C\"+h.n.x,h.n.y,h.end.x,h.end.y,u[5],u[6]].join(),p+=l,s=+u[5],o=+u[6];continue}if(!e&&!n)return h=Ke(s,o,u[1],u[2],u[3],u[4],u[5],u[6],i-p),{x:h.x,y:h.y,alpha:h.alpha}}p+=l,s=+u[5],o=+u[6]}c+=u.shift()+u}return f.end=c,h=e?p:n?f:t.findDotsAtSegment(s,o,u[0],u[1],u[2],u[3],u[4],u[5],1),h.alpha&&(h={x:h.x,y:h.y,alpha:h.alpha}),h}},en=tn(1),nn=tn(),rn=tn(0,1);t.getTotalLength=en,t.getPointAtLength=nn,t.getSubpath=function(t,e,n){if(1e-6>this.getTotalLength(t)-n)return rn(t,e).end;var r=rn(t,n,1);return e?rn(r,e).end:r},Ue.getTotalLength=function(){return\"path\"==this.type?this.node.getTotalLength?this.node.getTotalLength():en(this.attrs.path):void 0},Ue.getPointAtLength=function(t){return\"path\"==this.type?nn(this.attrs.path,t):void 0},Ue.getSubpath=function(e,n){return\"path\"==this.type?t.getSubpath(this.attrs.path,e,n):void 0};var an=t.easing_formulas={linear:function(t){return t},\"<\":function(t){return V(t,1.7)},\">\":function(t){return V(t,.48)},\"<>\":function(t){var e=.48-t/1.04,n=j.sqrt(.1734+e*e),r=n-e,i=V(O(r),1/3)*(0>r?-1:1),a=-n-e,s=V(O(a),1/3)*(0>a?-1:1),o=i+s+.5;return 3*(1-o)*o*o+o*o*o},backIn:function(t){var e=1.70158;return t*t*((e+1)*t-e)},backOut:function(t){t-=1;var e=1.70158;return t*t*((e+1)*t+e)+1},elastic:function(t){return t==!!t?t:V(2,-10*t)*j.sin((t-.075)*2*X/.3)+1},bounce:function(t){var e,n=7.5625,r=2.75;return 1/r>t?e=n*t*t:2/r>t?(t-=1.5/r,e=n*t*t+.75):2.5/r>t?(t-=2.25/r,e=n*t*t+.9375):(t-=2.625/r,e=n*t*t+.984375),e}};an.easeIn=an[\"ease-in\"]=an[\"<\"],an.easeOut=an[\"ease-out\"]=an[\">\"],an.easeInOut=an[\"ease-in-out\"]=an[\"<>\"],an[\"back-in\"]=an.backIn,an[\"back-out\"]=an.backOut;var sn=[],on=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(t){setTimeout(t,16)},un=function(){for(var e=+new Date,n=0;sn.length>n;n++){var r=sn[n];if(!r.el.removed&&!r.paused){var i,a,s=e-r.start,o=r.ms,u=r.easing,l=r.from,h=r.diff,c=r.to,f=(r.t,r.el),p={},d={};if(r.initstatus?(s=(r.initstatus*r.anim.top-r.prev)/(r.percent-r.prev)*o,r.status=r.initstatus,delete r.initstatus,r.stop&&sn.splice(n--,1)):r.status=(r.prev+(r.percent-r.prev)*(s/o))/r.anim.top,!(0>s))if(o>s){var g=u(s/o);for(var v in l)if(l[k](v)){switch(ee[v]){case Y:i=+l[v]+g*o*h[v];break;case\"colour\":i=\"rgb(\"+[ln(Z(l[v].r+g*o*h[v].r)),ln(Z(l[v].g+g*o*h[v].g)),ln(Z(l[v].b+g*o*h[v].b))].join(\",\")+\")\";break;case\"path\":i=[];for(var m=0,y=l[v].length;y>m;m++){i[m]=[l[v][m][0]];for(var b=1,_=l[v][m].length;_>b;b++)i[m][b]=+l[v][m][b]+g*o*h[v][m][b];i[m]=i[m].join(P)}i=i.join(P);break;case\"transform\":if(h[v].real)for(i=[],m=0,y=l[v].length;y>m;m++)for(i[m]=[l[v][m][0]],b=1,_=l[v][m].length;_>b;b++)i[m][b]=l[v][m][b]+g*o*h[v][m][b];else{var w=function(t){return+l[v][t]+g*o*h[v][t]};i=[[\"m\",w(0),w(1),w(2),w(3),w(4),w(5)]]}break;case\"csv\":if(\"clip-rect\"==v)for(i=[],m=4;m--;)i[m]=+l[v][m]+g*o*h[v][m];break;default:var B=[][T](l[v]);for(i=[],m=f.paper.customAttributes[v].length;m--;)i[m]=+B[m]+g*o*h[v][m]}p[v]=i}f.attr(p),function(t,e,n){setTimeout(function(){eve(\"raphael.anim.frame.\"+t,e,n)})}(f.id,f,r.anim)}else{if(function(e,n,r){setTimeout(function(){eve(\"raphael.anim.frame.\"+n.id,n,r),eve(\"raphael.anim.finish.\"+n.id,n,r),t.is(e,\"function\")&&e.call(n)})}(r.callback,f,r.anim),f.attr(c),sn.splice(n--,1),r.repeat>1&&!r.next){for(a in c)c[k](a)&&(d[a]=r.totalOrigin[a]);r.el.attr(d),x(r.anim,r.el,r.anim.percents[0],null,r.totalOrigin,r.repeat-1)}r.next&&!r.stop&&x(r.anim,r.el,r.next,null,r.totalOrigin,r.repeat)}}}t.svg&&f&&f.paper&&f.paper.safari(),sn.length&&on(un)},ln=function(t){return t>255?255:0>t?0:t};Ue.animateWith=function(e,n,r,i,a,s){var o=this;if(o.removed)return s&&s.call(o),o;var u=r instanceof g?r:t.animation(r,i,a,s);x(u,o,u.percents[0],null,o.attr());for(var l=0,h=sn.length;h>l;l++)if(sn[l].anim==n&&sn[l].el==e){sn[h-1].start=sn[l].start;break}return o},Ue.onAnimation=function(t){return t?eve.on(\"raphael.anim.frame.\"+this.id,t):eve.unbind(\"raphael.anim.frame.\"+this.id),this},g.prototype.delay=function(t){var e=new g(this.anim,this.ms);return e.times=this.times,e.del=+t||0,e},g.prototype.repeat=function(t){var e=new g(this.anim,this.ms);return e.del=this.del,e.times=j.floor(D(t,0))||1,e},t.animation=function(e,n,r,i){if(e instanceof g)return e;(t.is(r,\"function\")||!r)&&(i=i||r||null,r=null),e=Object(e),n=+n||0;var a,s,o={};for(s in e)e[k](s)&&Q(s)!=s&&Q(s)+\"%\"!=s&&(a=!0,o[s]=e[s]);return a?(r&&(o.easing=r),i&&(o.callback=i),new g({100:o},n)):new g(e,n)},Ue.animate=function(e,n,r,i){var a=this;if(a.removed)return i&&i.call(a),a;var s=e instanceof g?e:t.animation(e,n,r,i);return x(s,a,s.percents[0],null,a.attr()),a},Ue.setTime=function(t,e){return t&&null!=e&&this.status(t,z(e,t.ms)/t.ms),this},Ue.status=function(t,e){var n,r,i=[],a=0;if(null!=e)return x(t,this,-1,z(e,1)),this;for(n=sn.length;n>a;a++)if(r=sn[a],r.el.id==this.id&&(!t||r.anim==t)){if(t)return r.status;i.push({anim:r.anim,status:r.status})}return t?0:i},Ue.pause=function(t){for(var e=0;sn.length>e;e++)sn[e].el.id!=this.id||t&&sn[e].anim!=t||eve(\"raphael.anim.pause.\"+this.id,this,sn[e].anim)!==!1&&(sn[e].paused=!0);return this},Ue.resume=function(t){for(var e=0;sn.length>e;e++)if(sn[e].el.id==this.id&&(!t||sn[e].anim==t)){var n=sn[e];eve(\"raphael.anim.resume.\"+this.id,this,n.anim)!==!1&&(delete n.paused,this.status(n.anim,n.status))}return this},Ue.stop=function(t){for(var e=0;sn.length>e;e++)sn[e].el.id!=this.id||t&&sn[e].anim!=t||eve(\"raphael.anim.stop.\"+this.id,this,sn[e].anim)!==!1&&sn.splice(e--,1);return this},eve.on(\"raphael.remove\",v),eve.on(\"raphael.clear\",v),Ue.toString=function(){return\"Raphaël’s object\"};var hn=function(t){if(this.items=[],this.length=0,this.type=\"set\",t)for(var e=0,n=t.length;n>e;e++)!t[e]||t[e].constructor!=Ue.constructor&&t[e].constructor!=hn||(this[this.items.length]=this.items[this.items.length]=t[e],this.length++)},cn=hn.prototype;cn.push=function(){for(var t,e,n=0,r=arguments.length;r>n;n++)t=arguments[n],!t||t.constructor!=Ue.constructor&&t.constructor!=hn||(e=this.items.length,this[e]=this.items[e]=t,this.length++);return this},cn.pop=function(){return this.length&&delete this[this.length--],this.items.pop()},cn.forEach=function(t,e){for(var n=0,r=this.items.length;r>n;n++)if(t.call(e,this.items[n],n)===!1)return this;return this};for(var fn in Ue)Ue[k](fn)&&(cn[fn]=function(t){return function(){var e=arguments;return this.forEach(function(n){n[t][F](n,e)})}}(fn));cn.attr=function(e,n){if(e&&t.is(e,N)&&t.is(e[0],\"object\"))for(var r=0,i=e.length;i>r;r++)this.items[r].attr(e[r]);else for(var a=0,s=this.items.length;s>a;a++)this.items[a].attr(e,n);return this},cn.clear=function(){for(;this.length;)this.pop()},cn.splice=function(t,e){t=0>t?D(this.length+t,0):t,e=D(0,z(this.length-t,e));var n,r=[],i=[],a=[];for(n=2;arguments.length>n;n++)a.push(arguments[n]);for(n=0;e>n;n++)i.push(this[t+n]);for(;this.length-t>n;n++)r.push(this[t+n]);var s=a.length;for(n=0;s+r.length>n;n++)this.items[t+n]=this[t+n]=s>n?a[n]:r[n-s];for(n=this.items.length=this.length-=e-s;this[n];)delete this[n++];return new hn(i)},cn.exclude=function(t){for(var e=0,n=this.length;n>e;e++)if(this[e]==t)return this.splice(e,1),!0},cn.animate=function(e,n,r,i){(t.is(r,\"function\")||!r)&&(i=r||null);var a,s,o=this.items.length,u=o,l=this;if(!o)return this;i&&(s=function(){!--o&&i.call(l)}),r=t.is(r,G)?r:s;var h=t.animation(e,n,r,s);for(a=this.items[--u].animate(h);u--;)this.items[u]&&!this.items[u].removed&&this.items[u].animateWith(a,h,h);return this},cn.insertAfter=function(t){for(var e=this.items.length;e--;)this.items[e].insertAfter(t);return this},cn.getBBox=function(){for(var t=[],e=[],n=[],r=[],i=this.items.length;i--;)if(!this.items[i].removed){var a=this.items[i].getBBox();t.push(a.x),e.push(a.y),n.push(a.x+a.width),r.push(a.y+a.height)}return t=z[F](0,t),e=z[F](0,e),n=D[F](0,n),r=D[F](0,r),{x:t,y:e,x2:n,y2:r,width:n-t,height:r-e}},cn.clone=function(t){t=this.paper.set();for(var e=0,n=this.items.length;n>e;e++)t.push(this.items[e].clone());return t},cn.toString=function(){return\"Raphaël‘s set\"},cn.glow=function(t){var e=this.paper.set();return this.forEach(function(n){var r=n.glow(t);null!=r&&r.forEach(function(t){e.push(t)})}),e},t.registerFont=function(t){if(!t.face)return t;this.fonts=this.fonts||{};var e={w:t.w,face:{},glyphs:{}},n=t.face[\"font-family\"];for(var r in t.face)t.face[k](r)&&(e.face[r]=t.face[r]);if(this.fonts[n]?this.fonts[n].push(e):this.fonts[n]=[e],!t.svg){e.face[\"units-per-em\"]=J(t.face[\"units-per-em\"],10);for(var i in t.glyphs)if(t.glyphs[k](i)){var a=t.glyphs[i];if(e.glyphs[i]={w:a.w,k:{},d:a.d&&\"M\"+a.d.replace(/[mlcxtrv]/g,function(t){return{l:\"L\",c:\"C\",x:\"z\",t:\"m\",r:\"l\",v:\"c\"}[t]||\"M\"})+\"z\"},a.k)for(var s in a.k)a[k](s)&&(e.glyphs[i].k[s]=a.k[s])}}return t},y.getFont=function(e,n,r,i){if(i=i||\"normal\",r=r||\"normal\",n=+n||{normal:400,bold:700,lighter:300,bolder:800}[n]||400,t.fonts){var a=t.fonts[e];if(!a){var s=RegExp(\"(^|\\\\s)\"+e.replace(/[^\\w\\d\\s+!~.:_-]/g,A)+\"(\\\\s|$)\",\"i\");for(var o in t.fonts)if(t.fonts[k](o)&&s.test(o)){a=t.fonts[o];break}}var u;if(a)for(var l=0,h=a.length;h>l&&(u=a[l],u.face[\"font-weight\"]!=n||u.face[\"font-style\"]!=r&&u.face[\"font-style\"]||u.face[\"font-stretch\"]!=i);l++);return u}},y.print=function(e,n,r,i,a,s,o){s=s||\"middle\",o=D(z(o||0,1),-1);var u,l=E(r)[M](A),h=0,c=0,f=A;if(t.is(i,r)&&(i=this.getFont(i)),i){u=(a||16)/i.face[\"units-per-em\"];for(var p=i.face.bbox[M](b),d=+p[0],g=p[3]-p[1],x=0,v=+p[1]+(\"baseline\"==s?g+ +i.face.descent:g/2),m=0,y=l.length;y>m;m++){if(\"\\n\"==l[m])h=0,w=0,c=0,x+=g;else{var _=c&&i.glyphs[l[m-1]]||{},w=i.glyphs[l[m]];h+=c?(_.w||i.w)+(_.k&&_.k[l[m]]||0)+i.w*o:0,c=1}w&&w.d&&(f+=t.transformPath(w.d,[\"t\",h*u,x*u,\"s\",u,u,d,v,\"t\",(e-d)/u,(n-v)/u]))}}return this.path(f).attr({fill:\"#000\",stroke:\"none\"})},y.add=function(e){if(t.is(e,\"array\"))for(var n,r=this.set(),i=0,a=e.length;a>i;i++)n=e[i]||{},_[k](n.type)&&r.push(this[n.type]().attr(n));return r},t.format=function(e,n){var r=t.is(n,N)?[0][T](n):arguments;return e&&t.is(e,G)&&r.length-1&&(e=e.replace(w,function(t,e){return null==r[++e]?A:r[e]})),e||A},t.fullfill=function(){var t=/\\{([^\\}]+)\\}/g,e=/(?:(?:^|\\.)(.+?)(?=\\[|\\.|$|\\()|\\[('|\")(.+?)\\2\\])(\\(\\))?/g,n=function(t,n,r){var i=r;return n.replace(e,function(t,e,n,r,a){e=e||r,i&&(e in i&&(i=i[e]),\"function\"==typeof i&&a&&(i=i()))}),i=(null==i||i==r?t:i)+\"\"};return function(e,r){return(e+\"\").replace(t,function(t,e){return n(t,e,r)})}}(),t.ninja=function(){return S.was?B.win.Raphael=S.is:delete Raphael,t},t.st=cn,function(e,n,r){function i(){/in/.test(e.readyState)?setTimeout(i,9):t.eve(\"raphael.DOMload\")}null==e.readyState&&e.addEventListener&&(e.addEventListener(n,r=function(){e.removeEventListener(n,r,!1),e.readyState=\"complete\"},!1),e.readyState=\"loading\"),i()}(document,\"DOMContentLoaded\"),S.was?B.win.Raphael=t:Raphael=t,eve.on(\"raphael.DOMload\",function(){m=!0})})();window.Raphael&&window.Raphael.svg&&function(t){var e=\"hasOwnProperty\",r=String,n=parseFloat,i=parseInt,a=Math,s=a.max,o=a.abs,u=a.pow,h=/[, ]+/,l=t.eve,c=\"\",f=\" \",p=\"http://www.w3.org/1999/xlink\",d={block:\"M5,0 0,2.5 5,5z\",classic:\"M5,0 0,2.5 5,5 3.5,3 3.5,2z\",diamond:\"M2.5,0 5,2.5 2.5,5 0,2.5z\",open:\"M6,1 1,3.5 6,6\",oval:\"M2.5,0A2.5,2.5,0,0,1,2.5,5 2.5,2.5,0,0,1,2.5,0z\"},g={};t.toString=function(){return\"Your browser supports SVG.\\nYou are running Raphaël \"+this.version};var v=function(n,i){if(i){\"string\"==typeof n&&(n=v(n));for(var a in i)i[e](a)&&(\"xlink:\"==a.substring(0,6)?n.setAttributeNS(p,a.substring(6),r(i[a])):n.setAttribute(a,r(i[a])))}else n=t._g.doc.createElementNS(\"http://www.w3.org/2000/svg\",n),n.style&&(n.style.webkitTapHighlightColor=\"rgba(0,0,0,0)\");return n},x=function(e,i){var h=\"linear\",l=e.id+i,f=.5,p=.5,d=e.node,g=e.paper,x=d.style,y=t._g.doc.getElementById(l);if(!y){if(i=r(i).replace(t._radial_gradient,function(t,e,r){if(h=\"radial\",e&&r){f=n(e),p=n(r);var i=2*(p>.5)-1;u(f-.5,2)+u(p-.5,2)>.25&&(p=a.sqrt(.25-u(f-.5,2))*i+.5)&&.5!=p&&(p=p.toFixed(5)-1e-5*i)}return c}),i=i.split(/\\s*\\-\\s*/),\"linear\"==h){var m=i.shift();if(m=-n(m),isNaN(m))return null;var b=[0,0,a.cos(t.rad(m)),a.sin(t.rad(m))],_=1/(s(o(b[2]),o(b[3]))||1);b[2]*=_,b[3]*=_,0>b[2]&&(b[0]=-b[2],b[2]=0),0>b[3]&&(b[1]=-b[3],b[3]=0)}var w=t._parseDots(i);if(!w)return null;if(l=l.replace(/[\\(\\)\\s,\\xb0#]/g,\"_\"),e.gradient&&l!=e.gradient.id&&(g.defs.removeChild(e.gradient),delete e.gradient),!e.gradient){y=v(h+\"Gradient\",{id:l}),e.gradient=y,v(y,\"radial\"==h?{fx:f,fy:p}:{x1:b[0],y1:b[1],x2:b[2],y2:b[3],gradientTransform:e.matrix.invert()}),g.defs.appendChild(y);for(var k=0,C=w.length;C>k;k++)y.appendChild(v(\"stop\",{offset:w[k].offset?w[k].offset:k?\"100%\":\"0%\",\"stop-color\":w[k].color||\"#fff\"}))}}return v(d,{fill:\"url(#\"+l+\")\",opacity:1,\"fill-opacity\":1}),x.fill=c,x.opacity=1,x.fillOpacity=1,1},y=function(t){var e=t.getBBox(1);v(t.pattern,{patternTransform:t.matrix.invert()+\" translate(\"+e.x+\",\"+e.y+\")\"})},m=function(n,i,a){if(\"path\"==n.type){for(var s,o,u,h,l,f=r(i).toLowerCase().split(\"-\"),p=n.paper,x=a?\"end\":\"start\",y=n.node,m=n.attrs,b=m[\"stroke-width\"],_=f.length,w=\"classic\",k=3,C=3,B=5;_--;)switch(f[_]){case\"block\":case\"classic\":case\"oval\":case\"diamond\":case\"open\":case\"none\":w=f[_];break;case\"wide\":C=5;break;case\"narrow\":C=2;break;case\"long\":k=5;break;case\"short\":k=2}if(\"open\"==w?(k+=2,C+=2,B+=2,u=1,h=a?4:1,l={fill:\"none\",stroke:m.stroke}):(h=u=k/2,l={fill:m.stroke,stroke:\"none\"}),n._.arrows?a?(n._.arrows.endPath&&g[n._.arrows.endPath]--,n._.arrows.endMarker&&g[n._.arrows.endMarker]--):(n._.arrows.startPath&&g[n._.arrows.startPath]--,n._.arrows.startMarker&&g[n._.arrows.startMarker]--):n._.arrows={},\"none\"!=w){var S=\"raphael-marker-\"+w,A=\"raphael-marker-\"+x+w+k+C;t._g.doc.getElementById(S)?g[S]++:(p.defs.appendChild(v(v(\"path\"),{\"stroke-linecap\":\"round\",d:d[w],id:S})),g[S]=1);var T,M=t._g.doc.getElementById(A);M?(g[A]++,T=M.getElementsByTagName(\"use\")[0]):(M=v(v(\"marker\"),{id:A,markerHeight:C,markerWidth:k,orient:\"auto\",refX:h,refY:C/2}),T=v(v(\"use\"),{\"xlink:href\":\"#\"+S,transform:(a?\"rotate(180 \"+k/2+\" \"+C/2+\") \":c)+\"scale(\"+k/B+\",\"+C/B+\")\",\"stroke-width\":(1/((k/B+C/B)/2)).toFixed(4)}),M.appendChild(T),p.defs.appendChild(M),g[A]=1),v(T,l);var F=u*(\"diamond\"!=w&&\"oval\"!=w);a?(s=n._.arrows.startdx*b||0,o=t.getTotalLength(m.path)-F*b):(s=F*b,o=t.getTotalLength(m.path)-(n._.arrows.enddx*b||0)),l={},l[\"marker-\"+x]=\"url(#\"+A+\")\",(o||s)&&(l.d=Raphael.getSubpath(m.path,s,o)),v(y,l),n._.arrows[x+\"Path\"]=S,n._.arrows[x+\"Marker\"]=A,n._.arrows[x+\"dx\"]=F,n._.arrows[x+\"Type\"]=w,n._.arrows[x+\"String\"]=i}else a?(s=n._.arrows.startdx*b||0,o=t.getTotalLength(m.path)-s):(s=0,o=t.getTotalLength(m.path)-(n._.arrows.enddx*b||0)),n._.arrows[x+\"Path\"]&&v(y,{d:Raphael.getSubpath(m.path,s,o)}),delete n._.arrows[x+\"Path\"],delete n._.arrows[x+\"Marker\"],delete n._.arrows[x+\"dx\"],delete n._.arrows[x+\"Type\"],delete n._.arrows[x+\"String\"];for(l in g)if(g[e](l)&&!g[l]){var L=t._g.doc.getElementById(l);L&&L.parentNode.removeChild(L)}}},b={\"\":[0],none:[0],\"-\":[3,1],\".\":[1,1],\"-.\":[3,1,1,1],\"-..\":[3,1,1,1,1,1],\". \":[1,3],\"- \":[4,3],\"--\":[8,3],\"- .\":[4,3,1,3],\"--.\":[8,3,1,3],\"--..\":[8,3,1,3,1,3]},_=function(t,e,n){if(e=b[r(e).toLowerCase()]){for(var i=t.attrs[\"stroke-width\"]||\"1\",a={round:i,square:i,butt:0}[t.attrs[\"stroke-linecap\"]||n[\"stroke-linecap\"]]||0,s=[],o=e.length;o--;)s[o]=e[o]*i+(o%2?1:-1)*a;v(t.node,{\"stroke-dasharray\":s.join(\",\")})}},w=function(n,a){var u=n.node,l=n.attrs,f=u.style.visibility;u.style.visibility=\"hidden\";for(var d in a)if(a[e](d)){if(!t._availableAttrs[e](d))continue;var g=a[d];switch(l[d]=g,d){case\"blur\":n.blur(g);break;case\"href\":case\"title\":case\"target\":var b=u.parentNode;if(\"a\"!=b.tagName.toLowerCase()){var w=v(\"a\");b.insertBefore(w,u),w.appendChild(u),b=w}\"target\"==d?b.setAttributeNS(p,\"show\",\"blank\"==g?\"new\":g):b.setAttributeNS(p,d,g);break;case\"cursor\":u.style.cursor=g;break;case\"transform\":n.transform(g);break;case\"arrow-start\":m(n,g);break;case\"arrow-end\":m(n,g,1);break;case\"clip-rect\":var k=r(g).split(h);if(4==k.length){n.clip&&n.clip.parentNode.parentNode.removeChild(n.clip.parentNode);var B=v(\"clipPath\"),S=v(\"rect\");B.id=t.createUUID(),v(S,{x:k[0],y:k[1],width:k[2],height:k[3]}),B.appendChild(S),n.paper.defs.appendChild(B),v(u,{\"clip-path\":\"url(#\"+B.id+\")\"}),n.clip=S}if(!g){var A=u.getAttribute(\"clip-path\");if(A){var T=t._g.doc.getElementById(A.replace(/(^url\\(#|\\)$)/g,c));T&&T.parentNode.removeChild(T),v(u,{\"clip-path\":c}),delete n.clip}}break;case\"path\":\"path\"==n.type&&(v(u,{d:g?l.path=t._pathToAbsolute(g):\"M0,0\"}),n._.dirty=1,n._.arrows&&(\"startString\"in n._.arrows&&m(n,n._.arrows.startString),\"endString\"in n._.arrows&&m(n,n._.arrows.endString,1)));break;case\"width\":if(u.setAttribute(d,g),n._.dirty=1,!l.fx)break;d=\"x\",g=l.x;case\"x\":l.fx&&(g=-l.x-(l.width||0));case\"rx\":if(\"rx\"==d&&\"rect\"==n.type)break;case\"cx\":u.setAttribute(d,g),n.pattern&&y(n),n._.dirty=1;break;case\"height\":if(u.setAttribute(d,g),n._.dirty=1,!l.fy)break;d=\"y\",g=l.y;case\"y\":l.fy&&(g=-l.y-(l.height||0));case\"ry\":if(\"ry\"==d&&\"rect\"==n.type)break;case\"cy\":u.setAttribute(d,g),n.pattern&&y(n),n._.dirty=1;break;case\"r\":\"rect\"==n.type?v(u,{rx:g,ry:g}):u.setAttribute(d,g),n._.dirty=1;break;case\"src\":\"image\"==n.type&&u.setAttributeNS(p,\"href\",g);break;case\"stroke-width\":(1!=n._.sx||1!=n._.sy)&&(g/=s(o(n._.sx),o(n._.sy))||1),n.paper._vbSize&&(g*=n.paper._vbSize),u.setAttribute(d,g),l[\"stroke-dasharray\"]&&_(n,l[\"stroke-dasharray\"],a),n._.arrows&&(\"startString\"in n._.arrows&&m(n,n._.arrows.startString),\"endString\"in n._.arrows&&m(n,n._.arrows.endString,1));break;case\"stroke-dasharray\":_(n,g,a);break;case\"fill\":var M=r(g).match(t._ISURL);if(M){B=v(\"pattern\");var F=v(\"image\");B.id=t.createUUID(),v(B,{x:0,y:0,patternUnits:\"userSpaceOnUse\",height:1,width:1}),v(F,{x:0,y:0,\"xlink:href\":M[1]}),B.appendChild(F),function(e){t._preload(M[1],function(){var t=this.offsetWidth,r=this.offsetHeight;v(e,{width:t,height:r}),v(F,{width:t,height:r}),n.paper.safari()})}(B),n.paper.defs.appendChild(B),v(u,{fill:\"url(#\"+B.id+\")\"}),n.pattern=B,n.pattern&&y(n);break}var L=t.getRGB(g);if(L.error){if((\"circle\"==n.type||\"ellipse\"==n.type||\"r\"!=r(g).charAt())&&x(n,g)){if(\"opacity\"in l||\"fill-opacity\"in l){var N=t._g.doc.getElementById(u.getAttribute(\"fill\").replace(/^url\\(#|\\)$/g,c));if(N){var P=N.getElementsByTagName(\"stop\");v(P[P.length-1],{\"stop-opacity\":(\"opacity\"in l?l.opacity:1)*(\"fill-opacity\"in l?l[\"fill-opacity\"]:1)})}}l.gradient=g,l.fill=\"none\";break}}else delete a.gradient,delete l.gradient,!t.is(l.opacity,\"undefined\")&&t.is(a.opacity,\"undefined\")&&v(u,{opacity:l.opacity}),!t.is(l[\"fill-opacity\"],\"undefined\")&&t.is(a[\"fill-opacity\"],\"undefined\")&&v(u,{\"fill-opacity\":l[\"fill-opacity\"]});L[e](\"opacity\")&&v(u,{\"fill-opacity\":L.opacity>1?L.opacity/100:L.opacity});case\"stroke\":L=t.getRGB(g),u.setAttribute(d,L.hex),\"stroke\"==d&&L[e](\"opacity\")&&v(u,{\"stroke-opacity\":L.opacity>1?L.opacity/100:L.opacity}),\"stroke\"==d&&n._.arrows&&(\"startString\"in n._.arrows&&m(n,n._.arrows.startString),\"endString\"in n._.arrows&&m(n,n._.arrows.endString,1));break;case\"gradient\":(\"circle\"==n.type||\"ellipse\"==n.type||\"r\"!=r(g).charAt())&&x(n,g);break;case\"opacity\":l.gradient&&!l[e](\"stroke-opacity\")&&v(u,{\"stroke-opacity\":g>1?g/100:g});case\"fill-opacity\":if(l.gradient){N=t._g.doc.getElementById(u.getAttribute(\"fill\").replace(/^url\\(#|\\)$/g,c)),N&&(P=N.getElementsByTagName(\"stop\"),v(P[P.length-1],{\"stop-opacity\":g}));break}default:\"font-size\"==d&&(g=i(g,10)+\"px\");var E=d.replace(/(\\-.)/g,function(t){return t.substring(1).toUpperCase()});u.style[E]=g,n._.dirty=1,u.setAttribute(d,g)}}C(n,a),u.style.visibility=f},k=1.2,C=function(n,a){if(\"text\"==n.type&&(a[e](\"text\")||a[e](\"font\")||a[e](\"font-size\")||a[e](\"x\")||a[e](\"y\"))){var s=n.attrs,o=n.node,u=o.firstChild?i(t._g.doc.defaultView.getComputedStyle(o.firstChild,c).getPropertyValue(\"font-size\"),10):10;if(a[e](\"text\")){for(s.text=a.text;o.firstChild;)o.removeChild(o.firstChild);for(var h,l=r(a.text).split(\"\\n\"),f=[],p=0,d=l.length;d>p;p++)h=v(\"tspan\"),p&&v(h,{dy:u*k,x:s.x}),h.appendChild(t._g.doc.createTextNode(l[p])),o.appendChild(h),f[p]=h}else for(f=o.getElementsByTagName(\"tspan\"),p=0,d=f.length;d>p;p++)p?v(f[p],{dy:u*k,x:s.x}):v(f[0],{dy:0});v(o,{x:s.x,y:s.y}),n._.dirty=1;var g=n._getBBox(),x=s.y-(g.y+g.height/2);x&&t.is(x,\"finite\")&&v(f[0],{dy:x})}},B=function(e,r){this[0]=this.node=e,e.raphael=!0,this.id=t._oid++,e.raphaelid=this.id,this.matrix=t.matrix(),this.realPath=null,this.paper=r,this.attrs=this.attrs||{},this._={transform:[],sx:1,sy:1,deg:0,dx:0,dy:0,dirty:1},!r.bottom&&(r.bottom=this),this.prev=r.top,r.top&&(r.top.next=this),r.top=this,this.next=null},S=t.el;B.prototype=S,S.constructor=B,t._engine.path=function(t,e){var r=v(\"path\");e.canvas&&e.canvas.appendChild(r);var n=new B(r,e);return n.type=\"path\",w(n,{fill:\"none\",stroke:\"#000\",path:t}),n},S.rotate=function(t,e,i){if(this.removed)return this;if(t=r(t).split(h),t.length-1&&(e=n(t[1]),i=n(t[2])),t=n(t[0]),null==i&&(e=i),null==e||null==i){var a=this.getBBox(1);e=a.x+a.width/2,i=a.y+a.height/2}return this.transform(this._.transform.concat([[\"r\",t,e,i]])),this},S.scale=function(t,e,i,a){if(this.removed)return this;if(t=r(t).split(h),t.length-1&&(e=n(t[1]),i=n(t[2]),a=n(t[3])),t=n(t[0]),null==e&&(e=t),null==a&&(i=a),null==i||null==a)var s=this.getBBox(1);return i=null==i?s.x+s.width/2:i,a=null==a?s.y+s.height/2:a,this.transform(this._.transform.concat([[\"s\",t,e,i,a]])),this},S.translate=function(t,e){return this.removed?this:(t=r(t).split(h),t.length-1&&(e=n(t[1])),t=n(t[0])||0,e=+e||0,this.transform(this._.transform.concat([[\"t\",t,e]])),this)},S.transform=function(r){var n=this._;if(null==r)return n.transform;if(t._extractTransform(this,r),this.clip&&v(this.clip,{transform:this.matrix.invert()}),this.pattern&&y(this),this.node&&v(this.node,{transform:this.matrix}),1!=n.sx||1!=n.sy){var i=this.attrs[e](\"stroke-width\")?this.attrs[\"stroke-width\"]:1;this.attr({\"stroke-width\":i})}return this},S.hide=function(){return!this.removed&&this.paper.safari(this.node.style.display=\"none\"),this},S.show=function(){return!this.removed&&this.paper.safari(this.node.style.display=\"\"),this},S.remove=function(){if(!this.removed&&this.node.parentNode){var e=this.paper;e.__set__&&e.__set__.exclude(this),l.unbind(\"raphael.*.*.\"+this.id),this.gradient&&e.defs.removeChild(this.gradient),t._tear(this,e),\"a\"==this.node.parentNode.tagName.toLowerCase()?this.node.parentNode.parentNode.removeChild(this.node.parentNode):this.node.parentNode.removeChild(this.node);for(var r in this)this[r]=\"function\"==typeof this[r]?t._removedFactory(r):null;this.removed=!0}},S._getBBox=function(){if(\"none\"==this.node.style.display){this.show();var t=!0}var e={};try{e=this.node.getBBox()}catch(r){}finally{e=e||{}}return t&&this.hide(),e},S.attr=function(r,n){if(this.removed)return this;if(null==r){var i={};for(var a in this.attrs)this.attrs[e](a)&&(i[a]=this.attrs[a]);return i.gradient&&\"none\"==i.fill&&(i.fill=i.gradient)&&delete i.gradient,i.transform=this._.transform,i}if(null==n&&t.is(r,\"string\")){if(\"fill\"==r&&\"none\"==this.attrs.fill&&this.attrs.gradient)return this.attrs.gradient;if(\"transform\"==r)return this._.transform;for(var s=r.split(h),o={},u=0,c=s.length;c>u;u++)r=s[u],o[r]=r in this.attrs?this.attrs[r]:t.is(this.paper.customAttributes[r],\"function\")?this.paper.customAttributes[r].def:t._availableAttrs[r];return c-1?o:o[s[0]]}if(null==n&&t.is(r,\"array\")){for(o={},u=0,c=r.length;c>u;u++)o[r[u]]=this.attr(r[u]);return o}if(null!=n){var f={};f[r]=n}else null!=r&&t.is(r,\"object\")&&(f=r);for(var p in f)l(\"raphael.attr.\"+p+\".\"+this.id,this,f[p]);for(p in this.paper.customAttributes)if(this.paper.customAttributes[e](p)&&f[e](p)&&t.is(this.paper.customAttributes[p],\"function\")){var d=this.paper.customAttributes[p].apply(this,[].concat(f[p]));this.attrs[p]=f[p];for(var g in d)d[e](g)&&(f[g]=d[g])}return w(this,f),this},S.toFront=function(){if(this.removed)return this;\"a\"==this.node.parentNode.tagName.toLowerCase()?this.node.parentNode.parentNode.appendChild(this.node.parentNode):this.node.parentNode.appendChild(this.node);var e=this.paper;return e.top!=this&&t._tofront(this,e),this},S.toBack=function(){if(this.removed)return this;var e=this.node.parentNode;return\"a\"==e.tagName.toLowerCase()?e.parentNode.insertBefore(this.node.parentNode,this.node.parentNode.parentNode.firstChild):e.firstChild!=this.node&&e.insertBefore(this.node,this.node.parentNode.firstChild),t._toback(this,this.paper),this.paper,this},S.insertAfter=function(e){if(this.removed)return this;var r=e.node||e[e.length-1].node;return r.nextSibling?r.parentNode.insertBefore(this.node,r.nextSibling):r.parentNode.appendChild(this.node),t._insertafter(this,e,this.paper),this},S.insertBefore=function(e){if(this.removed)return this;var r=e.node||e[0].node;return r.parentNode.insertBefore(this.node,r),t._insertbefore(this,e,this.paper),this},S.blur=function(e){var r=this;if(0!==+e){var n=v(\"filter\"),i=v(\"feGaussianBlur\");r.attrs.blur=e,n.id=t.createUUID(),v(i,{stdDeviation:+e||1.5}),n.appendChild(i),r.paper.defs.appendChild(n),r._blur=n,v(r.node,{filter:\"url(#\"+n.id+\")\"})}else r._blur&&(r._blur.parentNode.removeChild(r._blur),delete r._blur,delete r.attrs.blur),r.node.removeAttribute(\"filter\")},t._engine.circle=function(t,e,r,n){var i=v(\"circle\");t.canvas&&t.canvas.appendChild(i);var a=new B(i,t);return a.attrs={cx:e,cy:r,r:n,fill:\"none\",stroke:\"#000\"},a.type=\"circle\",v(i,a.attrs),a},t._engine.rect=function(t,e,r,n,i,a){var s=v(\"rect\");t.canvas&&t.canvas.appendChild(s);var o=new B(s,t);return o.attrs={x:e,y:r,width:n,height:i,r:a||0,rx:a||0,ry:a||0,fill:\"none\",stroke:\"#000\"},o.type=\"rect\",v(s,o.attrs),o},t._engine.ellipse=function(t,e,r,n,i){var a=v(\"ellipse\");t.canvas&&t.canvas.appendChild(a);var s=new B(a,t);return s.attrs={cx:e,cy:r,rx:n,ry:i,fill:\"none\",stroke:\"#000\"},s.type=\"ellipse\",v(a,s.attrs),s},t._engine.image=function(t,e,r,n,i,a){var s=v(\"image\");v(s,{x:r,y:n,width:i,height:a,preserveAspectRatio:\"none\"}),s.setAttributeNS(p,\"href\",e),t.canvas&&t.canvas.appendChild(s);var o=new B(s,t);return o.attrs={x:r,y:n,width:i,height:a,src:e},o.type=\"image\",o},t._engine.text=function(e,r,n,i){var a=v(\"text\");e.canvas&&e.canvas.appendChild(a);var s=new B(a,e);return s.attrs={x:r,y:n,\"text-anchor\":\"middle\",text:i,font:t._availableAttrs.font,stroke:\"none\",fill:\"#000\"},s.type=\"text\",w(s,s.attrs),s},t._engine.setSize=function(t,e){return this.width=t||this.width,this.height=e||this.height,this.canvas.setAttribute(\"width\",this.width),this.canvas.setAttribute(\"height\",this.height),this._viewBox&&this.setViewBox.apply(this,this._viewBox),this},t._engine.create=function(){var e=t._getContainer.apply(0,arguments),r=e&&e.container,n=e.x,i=e.y,a=e.width,s=e.height;if(!r)throw Error(\"SVG container not found.\");var o,u=v(\"svg\"),h=\"overflow:hidden;\";return n=n||0,i=i||0,a=a||512,s=s||342,v(u,{height:s,version:1.1,width:a,xmlns:\"http://www.w3.org/2000/svg\"}),1==r?(u.style.cssText=h+\"position:absolute;left:\"+n+\"px;top:\"+i+\"px\",t._g.doc.body.appendChild(u),o=1):(u.style.cssText=h+\"position:relative\",r.firstChild?r.insertBefore(u,r.firstChild):r.appendChild(u)),r=new t._Paper,r.width=a,r.height=s,r.canvas=u,r.clear(),r._left=r._top=0,o&&(r.renderfix=function(){}),r.renderfix(),r},t._engine.setViewBox=function(t,e,r,n,i){l(\"raphael.setViewBox\",this,this._viewBox,[t,e,r,n,i]);var a,o,u=s(r/this.width,n/this.height),h=this.top,c=i?\"meet\":\"xMinYMin\";for(null==t?(this._vbSize&&(u=1),delete this._vbSize,a=\"0 0 \"+this.width+f+this.height):(this._vbSize=u,a=t+f+e+f+r+f+n),v(this.canvas,{viewBox:a,preserveAspectRatio:c});u&&h;)o=\"stroke-width\"in h.attrs?h.attrs[\"stroke-width\"]:1,h.attr({\"stroke-width\":o}),h._.dirty=1,h._.dirtyT=1,h=h.prev;return this._viewBox=[t,e,r,n,!!i],this},t.prototype.renderfix=function(){var t,e=this.canvas,r=e.style;try{t=e.getScreenCTM()||e.createSVGMatrix()}catch(n){t=e.createSVGMatrix()}var i=-t.e%1,a=-t.f%1;(i||a)&&(i&&(this._left=(this._left+i)%1,r.left=this._left+\"px\"),a&&(this._top=(this._top+a)%1,r.top=this._top+\"px\"))},t.prototype.clear=function(){t.eve(\"raphael.clear\",this);for(var e=this.canvas;e.firstChild;)e.removeChild(e.firstChild);this.bottom=this.top=null,(this.desc=v(\"desc\")).appendChild(t._g.doc.createTextNode(\"Created with Raphaël \"+t.version)),e.appendChild(this.desc),e.appendChild(this.defs=v(\"defs\"))},t.prototype.remove=function(){l(\"raphael.remove\",this),this.canvas.parentNode&&this.canvas.parentNode.removeChild(this.canvas);for(var e in this)this[e]=\"function\"==typeof this[e]?t._removedFactory(e):null};var A=t.st;for(var T in S)S[e](T)&&!A[e](T)&&(A[T]=function(t){return function(){var e=arguments;return this.forEach(function(r){r[t].apply(r,e)})}}(T))}(window.Raphael);window.Raphael&&window.Raphael.vml&&function(t){var e=\"hasOwnProperty\",r=String,i=parseFloat,n=Math,a=n.round,s=n.max,o=n.min,l=n.abs,h=\"fill\",u=/[, ]+/,c=t.eve,f=\" progid:DXImageTransform.Microsoft\",p=\" \",d=\"\",g={M:\"m\",L:\"l\",C:\"c\",Z:\"x\",m:\"t\",l:\"r\",c:\"v\",z:\"x\"},v=/([clmz]),?([^clmz]*)/gi,x=/ progid:\\S+Blur\\([^\\)]+\\)/g,y=/-?[^,\\s-]+/g,m=\"position:absolute;left:0;top:0;width:1px;height:1px\",b=21600,_={path:1,rect:1,image:1},w={circle:1,ellipse:1},k=function(e){var i=/[ahqstv]/gi,n=t._pathToAbsolute;if(r(e).match(i)&&(n=t._path2curve),i=/[clmz]/g,n==t._pathToAbsolute&&!r(e).match(i)){var s=r(e).replace(v,function(t,e,r){var i=[],n=\"m\"==e.toLowerCase(),s=g[e];return r.replace(y,function(t){n&&2==i.length&&(s+=i+g[\"m\"==e?\"l\":\"L\"],i=[]),i.push(a(t*b))}),s+i});return s}var o,l,h=n(e);s=[];for(var u=0,c=h.length;c>u;u++){o=h[u],l=h[u][0].toLowerCase(),\"z\"==l&&(l=\"x\");for(var f=1,x=o.length;x>f;f++)l+=a(o[f]*b)+(f!=x-1?\",\":d);s.push(l)}return s.join(p)},C=function(e,r,i){var n=t.matrix();return n.rotate(-e,.5,.5),{dx:n.x(r,i),dy:n.y(r,i)}},B=function(t,e,r,i,n,a){var s=t._,o=t.matrix,u=s.fillpos,c=t.node,f=c.style,d=1,g=\"\",v=b/e,x=b/r;if(f.visibility=\"hidden\",e&&r){if(c.coordsize=l(v)+p+l(x),f.rotation=a*(0>e*r?-1:1),a){var y=C(a,i,n);i=y.dx,n=y.dy}if(0>e&&(g+=\"x\"),0>r&&(g+=\" y\")&&(d=-1),f.flip=g,c.coordorigin=i*-v+p+n*-x,u||s.fillsize){var m=c.getElementsByTagName(h);m=m&&m[0],c.removeChild(m),u&&(y=C(a,o.x(u[0],u[1]),o.y(u[0],u[1])),m.position=y.dx*d+p+y.dy*d),s.fillsize&&(m.size=s.fillsize[0]*l(e)+p+s.fillsize[1]*l(r)),c.appendChild(m)}f.visibility=\"visible\"}};t.toString=function(){return\"Your browser doesn’t support SVG. Falling down to VML.\\nYou are running Raphaël \"+this.version};var S=function(t,e,i){for(var n=r(e).toLowerCase().split(\"-\"),a=i?\"end\":\"start\",s=n.length,o=\"classic\",l=\"medium\",h=\"medium\";s--;)switch(n[s]){case\"block\":case\"classic\":case\"oval\":case\"diamond\":case\"open\":case\"none\":o=n[s];break;case\"wide\":case\"narrow\":h=n[s];break;case\"long\":case\"short\":l=n[s]}var u=t.node.getElementsByTagName(\"stroke\")[0];u[a+\"arrow\"]=o,u[a+\"arrowlength\"]=l,u[a+\"arrowwidth\"]=h},A=function(n,l){n.attrs=n.attrs||{};var c=n.node,f=n.attrs,g=c.style,v=_[n.type]&&(l.x!=f.x||l.y!=f.y||l.width!=f.width||l.height!=f.height||l.cx!=f.cx||l.cy!=f.cy||l.rx!=f.rx||l.ry!=f.ry||l.r!=f.r),x=w[n.type]&&(f.cx!=l.cx||f.cy!=l.cy||f.r!=l.r||f.rx!=l.rx||f.ry!=l.ry),y=n;for(var m in l)l[e](m)&&(f[m]=l[m]);if(v&&(f.path=t._getPath[n.type](n),n._.dirty=1),l.href&&(c.href=l.href),l.title&&(c.title=l.title),l.target&&(c.target=l.target),l.cursor&&(g.cursor=l.cursor),\"blur\"in l&&n.blur(l.blur),(l.path&&\"path\"==n.type||v)&&(c.path=k(~r(f.path).toLowerCase().indexOf(\"r\")?t._pathToAbsolute(f.path):f.path),\"image\"==n.type&&(n._.fillpos=[f.x,f.y],n._.fillsize=[f.width,f.height],B(n,1,1,0,0,0))),\"transform\"in l&&n.transform(l.transform),x){var C=+f.cx,A=+f.cy,N=+f.rx||+f.r||0,E=+f.ry||+f.r||0;c.path=t.format(\"ar{0},{1},{2},{3},{4},{1},{4},{1}x\",a((C-N)*b),a((A-E)*b),a((C+N)*b),a((A+E)*b),a(C*b))}if(\"clip-rect\"in l){var M=r(l[\"clip-rect\"]).split(u);if(4==M.length){M[2]=+M[2]+ +M[0],M[3]=+M[3]+ +M[1];var z=c.clipRect||t._g.doc.createElement(\"div\"),F=z.style;F.clip=t.format(\"rect({1}px {2}px {3}px {0}px)\",M),c.clipRect||(F.position=\"absolute\",F.top=0,F.left=0,F.width=n.paper.width+\"px\",F.height=n.paper.height+\"px\",c.parentNode.insertBefore(z,c),z.appendChild(c),c.clipRect=z)}l[\"clip-rect\"]||c.clipRect&&(c.clipRect.style.clip=\"auto\")}if(n.textpath){var R=n.textpath.style;l.font&&(R.font=l.font),l[\"font-family\"]&&(R.fontFamily='\"'+l[\"font-family\"].split(\",\")[0].replace(/^['\"]+|['\"]+$/g,d)+'\"'),l[\"font-size\"]&&(R.fontSize=l[\"font-size\"]),l[\"font-weight\"]&&(R.fontWeight=l[\"font-weight\"]),l[\"font-style\"]&&(R.fontStyle=l[\"font-style\"])}if(\"arrow-start\"in l&&S(y,l[\"arrow-start\"]),\"arrow-end\"in l&&S(y,l[\"arrow-end\"],1),null!=l.opacity||null!=l[\"stroke-width\"]||null!=l.fill||null!=l.src||null!=l.stroke||null!=l[\"stroke-width\"]||null!=l[\"stroke-opacity\"]||null!=l[\"fill-opacity\"]||null!=l[\"stroke-dasharray\"]||null!=l[\"stroke-miterlimit\"]||null!=l[\"stroke-linejoin\"]||null!=l[\"stroke-linecap\"]){var P=c.getElementsByTagName(h),I=!1;if(P=P&&P[0],!P&&(I=P=L(h)),\"image\"==n.type&&l.src&&(P.src=l.src),l.fill&&(P.on=!0),(null==P.on||\"none\"==l.fill||null===l.fill)&&(P.on=!1),P.on&&l.fill){var j=r(l.fill).match(t._ISURL);if(j){P.parentNode==c&&c.removeChild(P),P.rotate=!0,P.src=j[1],P.type=\"tile\";var q=n.getBBox(1);P.position=q.x+p+q.y,n._.fillpos=[q.x,q.y],t._preload(j[1],function(){n._.fillsize=[this.offsetWidth,this.offsetHeight]})}else P.color=t.getRGB(l.fill).hex,P.src=d,P.type=\"solid\",t.getRGB(l.fill).error&&(y.type in{circle:1,ellipse:1}||\"r\"!=r(l.fill).charAt())&&T(y,l.fill,P)&&(f.fill=\"none\",f.gradient=l.fill,P.rotate=!1)}if(\"fill-opacity\"in l||\"opacity\"in l){var D=((+f[\"fill-opacity\"]+1||2)-1)*((+f.opacity+1||2)-1)*((+t.getRGB(l.fill).o+1||2)-1);D=o(s(D,0),1),P.opacity=D,P.src&&(P.color=\"none\")}c.appendChild(P);var O=c.getElementsByTagName(\"stroke\")&&c.getElementsByTagName(\"stroke\")[0],V=!1;!O&&(V=O=L(\"stroke\")),(l.stroke&&\"none\"!=l.stroke||l[\"stroke-width\"]||null!=l[\"stroke-opacity\"]||l[\"stroke-dasharray\"]||l[\"stroke-miterlimit\"]||l[\"stroke-linejoin\"]||l[\"stroke-linecap\"])&&(O.on=!0),(\"none\"==l.stroke||null===l.stroke||null==O.on||0==l.stroke||0==l[\"stroke-width\"])&&(O.on=!1);var Y=t.getRGB(l.stroke);O.on&&l.stroke&&(O.color=Y.hex),D=((+f[\"stroke-opacity\"]+1||2)-1)*((+f.opacity+1||2)-1)*((+Y.o+1||2)-1);var G=.75*(i(l[\"stroke-width\"])||1);if(D=o(s(D,0),1),null==l[\"stroke-width\"]&&(G=f[\"stroke-width\"]),l[\"stroke-width\"]&&(O.weight=G),G&&1>G&&(D*=G)&&(O.weight=1),O.opacity=D,l[\"stroke-linejoin\"]&&(O.joinstyle=l[\"stroke-linejoin\"]||\"miter\"),O.miterlimit=l[\"stroke-miterlimit\"]||8,l[\"stroke-linecap\"]&&(O.endcap=\"butt\"==l[\"stroke-linecap\"]?\"flat\":\"square\"==l[\"stroke-linecap\"]?\"square\":\"round\"),l[\"stroke-dasharray\"]){var W={\"-\":\"shortdash\",\".\":\"shortdot\",\"-.\":\"shortdashdot\",\"-..\":\"shortdashdotdot\",\". \":\"dot\",\"- \":\"dash\",\"--\":\"longdash\",\"- .\":\"dashdot\",\"--.\":\"longdashdot\",\"--..\":\"longdashdotdot\"};O.dashstyle=W[e](l[\"stroke-dasharray\"])?W[l[\"stroke-dasharray\"]]:d}V&&c.appendChild(O)}if(\"text\"==y.type){y.paper.canvas.style.display=d;var X=y.paper.span,H=100,U=f.font&&f.font.match(/\\d+(?:\\.\\d*)?(?=px)/);g=X.style,f.font&&(g.font=f.font),f[\"font-family\"]&&(g.fontFamily=f[\"font-family\"]),f[\"font-weight\"]&&(g.fontWeight=f[\"font-weight\"]),f[\"font-style\"]&&(g.fontStyle=f[\"font-style\"]),U=i(f[\"font-size\"]||U&&U[0])||10,g.fontSize=U*H+\"px\",y.textpath.string&&(X.innerHTML=r(y.textpath.string).replace(/</g,\"&#60;\").replace(/&/g,\"&#38;\").replace(/\\n/g,\"<br>\"));var $=X.getBoundingClientRect();y.W=f.w=($.right-$.left)/H,y.H=f.h=($.bottom-$.top)/H,y.X=f.x,y.Y=f.y+y.H/2,(\"x\"in l||\"y\"in l)&&(y.path.v=t.format(\"m{0},{1}l{2},{1}\",a(f.x*b),a(f.y*b),a(f.x*b)+1));for(var Z=[\"x\",\"y\",\"text\",\"font\",\"font-family\",\"font-weight\",\"font-style\",\"font-size\"],Q=0,J=Z.length;J>Q;Q++)if(Z[Q]in l){y._.dirty=1;break}switch(f[\"text-anchor\"]){case\"start\":y.textpath.style[\"v-text-align\"]=\"left\",y.bbx=y.W/2;break;case\"end\":y.textpath.style[\"v-text-align\"]=\"right\",y.bbx=-y.W/2;break;default:y.textpath.style[\"v-text-align\"]=\"center\",y.bbx=0}y.textpath.style[\"v-text-kern\"]=!0}},T=function(e,a,s){e.attrs=e.attrs||{};var o=(e.attrs,Math.pow),l=\"linear\",h=\".5 .5\";if(e.attrs.gradient=a,a=r(a).replace(t._radial_gradient,function(t,e,r){return l=\"radial\",e&&r&&(e=i(e),r=i(r),o(e-.5,2)+o(r-.5,2)>.25&&(r=n.sqrt(.25-o(e-.5,2))*(2*(r>.5)-1)+.5),h=e+p+r),d}),a=a.split(/\\s*\\-\\s*/),\"linear\"==l){var u=a.shift();if(u=-i(u),isNaN(u))return null}var c=t._parseDots(a);if(!c)return null;if(e=e.shape||e.node,c.length){e.removeChild(s),s.on=!0,s.method=\"none\",s.color=c[0].color,s.color2=c[c.length-1].color;for(var f=[],g=0,v=c.length;v>g;g++)c[g].offset&&f.push(c[g].offset+p+c[g].color);s.colors=f.length?f.join():\"0% \"+s.color,\"radial\"==l?(s.type=\"gradientTitle\",s.focus=\"100%\",s.focussize=\"0 0\",s.focusposition=h,s.angle=0):(s.type=\"gradient\",s.angle=(270-u)%360),e.appendChild(s)}return 1},N=function(e,r){this[0]=this.node=e,e.raphael=!0,this.id=t._oid++,e.raphaelid=this.id,this.X=0,this.Y=0,this.attrs={},this.paper=r,this.matrix=t.matrix(),this._={transform:[],sx:1,sy:1,dx:0,dy:0,deg:0,dirty:1,dirtyT:1},!r.bottom&&(r.bottom=this),this.prev=r.top,r.top&&(r.top.next=this),r.top=this,this.next=null},E=t.el;N.prototype=E,E.constructor=N,E.transform=function(e){if(null==e)return this._.transform;var i,n=this.paper._viewBoxShift,a=n?\"s\"+[n.scale,n.scale]+\"-1-1t\"+[n.dx,n.dy]:d;n&&(i=e=r(e).replace(/\\.{3}|\\u2026/g,this._.transform||d)),t._extractTransform(this,a+e);var s,o=this.matrix.clone(),l=this.skew,h=this.node,u=~r(this.attrs.fill).indexOf(\"-\"),c=!r(this.attrs.fill).indexOf(\"url(\");if(o.translate(-.5,-.5),c||u||\"image\"==this.type)if(l.matrix=\"1 0 0 1\",l.offset=\"0 0\",s=o.split(),u&&s.noRotation||!s.isSimple){h.style.filter=o.toFilter();var f=this.getBBox(),g=this.getBBox(1),v=f.x-g.x,x=f.y-g.y;h.coordorigin=v*-b+p+x*-b,B(this,1,1,v,x,0)}else h.style.filter=d,B(this,s.scalex,s.scaley,s.dx,s.dy,s.rotate);else h.style.filter=d,l.matrix=r(o),l.offset=o.offset();return i&&(this._.transform=i),this},E.rotate=function(t,e,n){if(this.removed)return this;if(null!=t){if(t=r(t).split(u),t.length-1&&(e=i(t[1]),n=i(t[2])),t=i(t[0]),null==n&&(e=n),null==e||null==n){var a=this.getBBox(1);e=a.x+a.width/2,n=a.y+a.height/2}return this._.dirtyT=1,this.transform(this._.transform.concat([[\"r\",t,e,n]])),this}},E.translate=function(t,e){return this.removed?this:(t=r(t).split(u),t.length-1&&(e=i(t[1])),t=i(t[0])||0,e=+e||0,this._.bbox&&(this._.bbox.x+=t,this._.bbox.y+=e),this.transform(this._.transform.concat([[\"t\",t,e]])),this)},E.scale=function(t,e,n,a){if(this.removed)return this;if(t=r(t).split(u),t.length-1&&(e=i(t[1]),n=i(t[2]),a=i(t[3]),isNaN(n)&&(n=null),isNaN(a)&&(a=null)),t=i(t[0]),null==e&&(e=t),null==a&&(n=a),null==n||null==a)var s=this.getBBox(1);return n=null==n?s.x+s.width/2:n,a=null==a?s.y+s.height/2:a,this.transform(this._.transform.concat([[\"s\",t,e,n,a]])),this._.dirtyT=1,this},E.hide=function(){return!this.removed&&(this.node.style.display=\"none\"),this},E.show=function(){return!this.removed&&(this.node.style.display=d),this},E._getBBox=function(){return this.removed?{}:{x:this.X+(this.bbx||0)-this.W/2,y:this.Y-this.H,width:this.W,height:this.H}},E.remove=function(){if(!this.removed&&this.node.parentNode){this.paper.__set__&&this.paper.__set__.exclude(this),t.eve.unbind(\"raphael.*.*.\"+this.id),t._tear(this,this.paper),this.node.parentNode.removeChild(this.node),this.shape&&this.shape.parentNode.removeChild(this.shape);for(var e in this)this[e]=\"function\"==typeof this[e]?t._removedFactory(e):null;this.removed=!0}},E.attr=function(r,i){if(this.removed)return this;if(null==r){var n={};for(var a in this.attrs)this.attrs[e](a)&&(n[a]=this.attrs[a]);return n.gradient&&\"none\"==n.fill&&(n.fill=n.gradient)&&delete n.gradient,n.transform=this._.transform,n}if(null==i&&t.is(r,\"string\")){if(r==h&&\"none\"==this.attrs.fill&&this.attrs.gradient)return this.attrs.gradient;for(var s=r.split(u),o={},l=0,f=s.length;f>l;l++)r=s[l],o[r]=r in this.attrs?this.attrs[r]:t.is(this.paper.customAttributes[r],\"function\")?this.paper.customAttributes[r].def:t._availableAttrs[r];return f-1?o:o[s[0]]}if(this.attrs&&null==i&&t.is(r,\"array\")){for(o={},l=0,f=r.length;f>l;l++)o[r[l]]=this.attr(r[l]);return o}var p;null!=i&&(p={},p[r]=i),null==i&&t.is(r,\"object\")&&(p=r);for(var d in p)c(\"raphael.attr.\"+d+\".\"+this.id,this,p[d]);if(p){for(d in this.paper.customAttributes)if(this.paper.customAttributes[e](d)&&p[e](d)&&t.is(this.paper.customAttributes[d],\"function\")){var g=this.paper.customAttributes[d].apply(this,[].concat(p[d]));this.attrs[d]=p[d];for(var v in g)g[e](v)&&(p[v]=g[v])}p.text&&\"text\"==this.type&&(this.textpath.string=p.text),A(this,p)}return this},E.toFront=function(){return!this.removed&&this.node.parentNode.appendChild(this.node),this.paper&&this.paper.top!=this&&t._tofront(this,this.paper),this},E.toBack=function(){return this.removed?this:(this.node.parentNode.firstChild!=this.node&&(this.node.parentNode.insertBefore(this.node,this.node.parentNode.firstChild),t._toback(this,this.paper)),this)},E.insertAfter=function(e){return this.removed?this:(e.constructor==t.st.constructor&&(e=e[e.length-1]),e.node.nextSibling?e.node.parentNode.insertBefore(this.node,e.node.nextSibling):e.node.parentNode.appendChild(this.node),t._insertafter(this,e,this.paper),this)},E.insertBefore=function(e){return this.removed?this:(e.constructor==t.st.constructor&&(e=e[0]),e.node.parentNode.insertBefore(this.node,e.node),t._insertbefore(this,e,this.paper),this)},E.blur=function(e){var r=this.node.runtimeStyle,i=r.filter;i=i.replace(x,d),0!==+e?(this.attrs.blur=e,r.filter=i+p+f+\".Blur(pixelradius=\"+(+e||1.5)+\")\",r.margin=t.format(\"-{0}px 0 0 -{0}px\",a(+e||1.5))):(r.filter=i,r.margin=0,delete this.attrs.blur)},t._engine.path=function(t,e){var r=L(\"shape\");r.style.cssText=m,r.coordsize=b+p+b,r.coordorigin=e.coordorigin;var i=new N(r,e),n={fill:\"none\",stroke:\"#000\"};t&&(n.path=t),i.type=\"path\",i.path=[],i.Path=d,A(i,n),e.canvas.appendChild(r);var a=L(\"skew\");return a.on=!0,r.appendChild(a),i.skew=a,i.transform(d),i},t._engine.rect=function(e,r,i,n,a,s){var o=t._rectPath(r,i,n,a,s),l=e.path(o),h=l.attrs;return l.X=h.x=r,l.Y=h.y=i,l.W=h.width=n,l.H=h.height=a,h.r=s,h.path=o,l.type=\"rect\",l},t._engine.ellipse=function(t,e,r,i,n){var a=t.path();return a.attrs,a.X=e-i,a.Y=r-n,a.W=2*i,a.H=2*n,a.type=\"ellipse\",A(a,{cx:e,cy:r,rx:i,ry:n}),a},t._engine.circle=function(t,e,r,i){var n=t.path();return n.attrs,n.X=e-i,n.Y=r-i,n.W=n.H=2*i,n.type=\"circle\",A(n,{cx:e,cy:r,r:i}),n},t._engine.image=function(e,r,i,n,a,s){var o=t._rectPath(i,n,a,s),l=e.path(o).attr({stroke:\"none\"}),u=l.attrs,c=l.node,f=c.getElementsByTagName(h)[0];return u.src=r,l.X=u.x=i,l.Y=u.y=n,l.W=u.width=a,l.H=u.height=s,u.path=o,l.type=\"image\",f.parentNode==c&&c.removeChild(f),f.rotate=!0,f.src=r,f.type=\"tile\",l._.fillpos=[i,n],l._.fillsize=[a,s],c.appendChild(f),B(l,1,1,0,0,0),l},t._engine.text=function(e,i,n,s){var o=L(\"shape\"),l=L(\"path\"),h=L(\"textpath\");i=i||0,n=n||0,s=s||\"\",l.v=t.format(\"m{0},{1}l{2},{1}\",a(i*b),a(n*b),a(i*b)+1),l.textpathok=!0,h.string=r(s),h.on=!0,o.style.cssText=m,o.coordsize=b+p+b,o.coordorigin=\"0 0\";var u=new N(o,e),c={fill:\"#000\",stroke:\"none\",font:t._availableAttrs.font,text:s};u.shape=o,u.path=l,u.textpath=h,u.type=\"text\",u.attrs.text=r(s),u.attrs.x=i,u.attrs.y=n,u.attrs.w=1,u.attrs.h=1,A(u,c),o.appendChild(h),o.appendChild(l),e.canvas.appendChild(o);var f=L(\"skew\");return f.on=!0,o.appendChild(f),u.skew=f,u.transform(d),u},t._engine.setSize=function(e,r){var i=this.canvas.style;return this.width=e,this.height=r,e==+e&&(e+=\"px\"),r==+r&&(r+=\"px\"),i.width=e,i.height=r,i.clip=\"rect(0 \"+e+\" \"+r+\" 0)\",this._viewBox&&t._engine.setViewBox.apply(this,this._viewBox),this},t._engine.setViewBox=function(e,r,i,n,a){t.eve(\"raphael.setViewBox\",this,this._viewBox,[e,r,i,n,a]);var o,l,h=this.width,u=this.height,c=1/s(i/h,n/u);return a&&(o=u/n,l=h/i,h>i*o&&(e-=(h-i*o)/2/o),u>n*l&&(r-=(u-n*l)/2/l)),this._viewBox=[e,r,i,n,!!a],this._viewBoxShift={dx:-e,dy:-r,scale:c},this.forEach(function(t){t.transform(\"...\")}),this};var L;t._engine.initWin=function(t){var e=t.document;e.createStyleSheet().addRule(\".rvml\",\"behavior:url(#default#VML)\");try{!e.namespaces.rvml&&e.namespaces.add(\"rvml\",\"urn:schemas-microsoft-com:vml\"),L=function(t){return e.createElement(\"<rvml:\"+t+' class=\"rvml\">')}}catch(r){L=function(t){return e.createElement(\"<\"+t+' xmlns=\"urn:schemas-microsoft.com:vml\" class=\"rvml\">')}}},t._engine.initWin(t._g.win),t._engine.create=function(){var e=t._getContainer.apply(0,arguments),r=e.container,i=e.height,n=e.width,a=e.x,s=e.y;if(!r)throw Error(\"VML container not found.\");var o=new t._Paper,l=o.canvas=t._g.doc.createElement(\"div\"),h=l.style;return a=a||0,s=s||0,n=n||512,i=i||342,o.width=n,o.height=i,n==+n&&(n+=\"px\"),i==+i&&(i+=\"px\"),o.coordsize=1e3*b+p+1e3*b,o.coordorigin=\"0 0\",o.span=t._g.doc.createElement(\"span\"),o.span.style.cssText=\"position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;\",l.appendChild(o.span),h.cssText=t.format(\"top:0;left:0;width:{0};height:{1};display:inline-block;position:relative;clip:rect(0 {0} {1} 0);overflow:hidden\",n,i),1==r?(t._g.doc.body.appendChild(l),h.left=a+\"px\",h.top=s+\"px\",h.position=\"absolute\"):r.firstChild?r.insertBefore(l,r.firstChild):r.appendChild(l),o.renderfix=function(){},o},t.prototype.clear=function(){t.eve(\"raphael.clear\",this),this.canvas.innerHTML=d,this.span=t._g.doc.createElement(\"span\"),this.span.style.cssText=\"position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;display:inline;\",this.canvas.appendChild(this.span),this.bottom=this.top=null},t.prototype.remove=function(){t.eve(\"raphael.remove\",this),this.canvas.parentNode.removeChild(this.canvas);for(var e in this)this[e]=\"function\"==typeof this[e]?t._removedFactory(e):null;return!0};var M=t.st;for(var z in E)E[e](z)&&!M[e](z)&&(M[z]=function(t){return function(){var e=arguments;return this.forEach(function(r){r[t].apply(r,e)})}}(z))}(window.Raphael);"
  },
  {
    "path": "newscoop/js/scriptaculous/controls.js",
    "content": "// Copyright (c) 2005 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us)\n//           (c) 2005 Ivan Krstic (http://blogs.law.harvard.edu/ivan)\n//           (c) 2005 Jon Tirsen (http://www.tirsen.com)\n// \n// Permission is hereby granted, free of charge, to any person obtaining\n// a copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to\n// permit persons to whom the Software is furnished to do so, subject to\n// the following conditions:\n// \n// The above copyright notice and this permission notice shall be\n// included in all copies or substantial portions of the Software.\n// \n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nElement.collectTextNodesIgnoreClass = function(element, ignoreclass) {\n  var children = $(element).childNodes;\n  var text     = \"\";\n  var classtest = new RegExp(\"^([^ ]+ )*\" + ignoreclass+ \"( [^ ]+)*$\",\"i\");\n\n  for (var i = 0; i < children.length; i++) {\n    if(children[i].nodeType==3) {\n      text+=children[i].nodeValue;\n    } else {\n      if((!children[i].className.match(classtest)) && children[i].hasChildNodes())\n        text += Element.collectTextNodesIgnoreClass(children[i], ignoreclass);\n    }\n  }\n\n  return text;\n}\n\n// Autocompleter.Base handles all the autocompletion functionality \n// that's independent of the data source for autocompletion. This\n// includes drawing the autocompletion menu, observing keyboard\n// and mouse events, and similar.\n//\n// Specific autocompleters need to provide, at the very least, \n// a getUpdatedChoices function that will be invoked every time\n// the text inside the monitored textbox changes. This method \n// should get the text for which to provide autocompletion by\n// invoking this.getToken(), NOT by directly accessing\n// this.element.value. This is to allow incremental tokenized\n// autocompletion. Specific auto-completion logic (AJAX, etc)\n// belongs in getUpdatedChoices.\n//\n// Tokenized incremental autocompletion is enabled automatically\n// when an autocompleter is instantiated with the 'tokens' option\n// in the options parameter, e.g.:\n// new Ajax.Autocompleter('id','upd', '/url/', { tokens: ',' });\n// will incrementally autocomplete with a comma as the token.\n// Additionally, ',' in the above example can be replaced with\n// a token array, e.g. { tokens: [',', '\\n'] } which\n// enables autocompletion on multiple tokens. This is most \n// useful when one of the tokens is \\n (a newline), as it \n// allows smart autocompletion after linebreaks.\n\nvar Autocompleter = {}\nAutocompleter.Base = function() {};\nAutocompleter.Base.prototype = {\n  baseInitialize: function(element, update, options) {\n    this.element     = $(element); \n    this.update      = $(update);  \n    this.hasFocus    = false; \n    this.changed     = false; \n    this.active      = false; \n    this.index       = 0;     \n    this.entryCount  = 0;\n\n    if (this.setOptions)\n      this.setOptions(options);\n    else\n      this.options = options || {};\n\n    this.options.paramName    = this.options.paramName || this.element.name;\n    this.options.tokens       = this.options.tokens || [];\n    this.options.frequency    = this.options.frequency || 0.4;\n    this.options.minChars     = this.options.minChars || 1;\n    this.options.onShow       = this.options.onShow || \n    function(element, update){ \n      if(!update.style.position || update.style.position=='absolute') {\n        update.style.position = 'absolute';\n        var offsets = Position.cumulativeOffset(element);\n        update.style.left = offsets[0] + 'px';\n        update.style.top  = (offsets[1] + element.offsetHeight) + 'px';\n        update.style.width = element.offsetWidth + 'px';\n      }\n      new Effect.Appear(update,{duration:0.15});\n    };\n    this.options.onHide = this.options.onHide || \n    function(element, update){ new Effect.Fade(update,{duration:0.15}) };\n\n    if (typeof(this.options.tokens) == 'string') \n      this.options.tokens = new Array(this.options.tokens);\n\n    this.observer = null;\n\n    Element.hide(this.update);\n\n    Event.observe(this.element, \"blur\", this.onBlur.bindAsEventListener(this));\n    Event.observe(this.element, \"keypress\", this.onKeyPress.bindAsEventListener(this));\n  },\n\n  show: function() {\n    if(Element.getStyle(this.update, 'display')=='none') this.options.onShow(this.element, this.update);\n    if(!this.iefix && (navigator.appVersion.indexOf('MSIE')>0) && (Element.getStyle(this.update, 'position')=='absolute')) {\n      new Insertion.After(this.update, \n       '<iframe id=\"' + this.update.id + '_iefix\" '+\n       'style=\"display:none;filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0);\" ' +\n       'src=\"javascript:false;\" frameborder=\"0\" scrolling=\"no\"></iframe>');\n      this.iefix = $(this.update.id+'_iefix');\n    }\n    if(this.iefix) {\n      Position.clone(this.update, this.iefix);\n      this.iefix.style.zIndex = 1;\n      this.update.style.zIndex = 2;\n      Element.show(this.iefix);\n    }\n  },\n\n  hide: function() {\n    if(Element.getStyle(this.update, 'display')!='none') this.options.onHide(this.element, this.update);\n    if(this.iefix) Element.hide(this.iefix);\n  },\n\n  startIndicator: function() {\n    if(this.options.indicator) Element.show(this.options.indicator);\n  },\n\n  stopIndicator: function() {\n    if(this.options.indicator) Element.hide(this.options.indicator);\n  },\n\n  onKeyPress: function(event) {\n    if(this.active)\n      switch(event.keyCode) {\n       case Event.KEY_TAB:\n       case Event.KEY_RETURN:\n         this.selectEntry();\n         Event.stop(event);\n       case Event.KEY_ESC:\n         this.hide();\n         this.active = false;\n         return;\n       case Event.KEY_LEFT:\n       case Event.KEY_RIGHT:\n         return;\n       case Event.KEY_UP:\n         this.markPrevious();\n         this.render();\n         if(navigator.appVersion.indexOf('AppleWebKit')>0) Event.stop(event);\n         return;\n       case Event.KEY_DOWN:\n         this.markNext();\n         this.render();\n         if(navigator.appVersion.indexOf('AppleWebKit')>0) Event.stop(event);\n         return;\n      }\n     else \n      if(event.keyCode==Event.KEY_TAB || event.keyCode==Event.KEY_RETURN) \n        return;\n\n    this.changed = true;\n    this.hasFocus = true;\n\n    if(this.observer) clearTimeout(this.observer);\n      this.observer = \n        setTimeout(this.onObserverEvent.bind(this), this.options.frequency*1000);\n  },\n\n  onHover: function(event) {\n    var element = Event.findElement(event, 'LI');\n    if(this.index != element.autocompleteIndex) \n    {\n        this.index = element.autocompleteIndex;\n        this.render();\n    }\n    Event.stop(event);\n  },\n  \n  onClick: function(event) {\n    var element = Event.findElement(event, 'LI');\n    this.index = element.autocompleteIndex;\n    this.selectEntry();\n    this.hide();\n  },\n  \n  onBlur: function(event) {\n    // needed to make click events working\n    setTimeout(this.hide.bind(this), 250);\n    this.hasFocus = false;\n    this.active = false;     \n  }, \n  \n  render: function() {\n    if(this.entryCount > 0) {\n      for (var i = 0; i < this.entryCount; i++)\n        this.index==i ? \n          Element.addClassName(this.getEntry(i),\"selected\") : \n          Element.removeClassName(this.getEntry(i),\"selected\");\n        \n      if(this.hasFocus) { \n        this.show();\n        this.active = true;\n      }\n    } else this.hide();\n  },\n  \n  markPrevious: function() {\n    if(this.index > 0) this.index--\n      else this.index = this.entryCcount-1;\n  },\n  \n  markNext: function() {\n    if(this.index < this.entryCount-1) this.index++\n      else this.index = 0;\n  },\n  \n  getEntry: function(index) {\n    return this.update.firstChild.childNodes[index];\n  },\n  \n  getCurrentEntry: function() {\n    return this.getEntry(this.index);\n  },\n  \n  selectEntry: function() {\n    this.active = false;\n    this.updateElement(this.getCurrentEntry());\n    this.element.focus();\n  },\n\n  updateElement: function(selectedElement) {\n    if (this.options.updateElement)\n      return(this.options.updateElement(selectedElement));\n\n    var value = Element.collectTextNodesIgnoreClass(selectedElement, 'informal');\n    var lastTokenPos = this.findLastToken();\n    if (lastTokenPos != -1) {\n      var newValue = this.element.value.substr(0, lastTokenPos + 1);\n      var whitespace = this.element.value.substr(lastTokenPos + 1).match(/^\\s+/);\n      if (whitespace)\n        newValue += whitespace[0];\n      this.element.value = newValue + value;\n    } else {\n      this.element.value = value;\n    } \n  },\n\n  updateChoices: function(choices) {\n    if(!this.changed && this.hasFocus) {\n      this.update.innerHTML = choices;\n      Element.cleanWhitespace(this.update);\n      Element.cleanWhitespace(this.update.firstChild);\n\n      if(this.update.firstChild && this.update.firstChild.childNodes) {\n        this.entryCount = \n          this.update.firstChild.childNodes.length;\n        for (var i = 0; i < this.entryCount; i++) {\n          var entry = this.getEntry(i);\n          entry.autocompleteIndex = i;\n          this.addObservers(entry);\n        }\n      } else { \n        this.entryCount = 0;\n      }\n\n      this.stopIndicator();\n\n      this.index = 0;\n      this.render();\n    }\n  },\n\n  addObservers: function(element) {\n    Event.observe(element, \"mouseover\", this.onHover.bindAsEventListener(this));\n    Event.observe(element, \"click\", this.onClick.bindAsEventListener(this));\n  },\n\n  onObserverEvent: function() {\n    this.changed = false;   \n    if(this.getToken().length>=this.options.minChars) {\n      this.startIndicator();\n      this.getUpdatedChoices();\n    } else {\n      this.active = false;\n      this.hide();\n    }\n  },\n\n  getToken: function() {\n    var tokenPos = this.findLastToken();\n    if (tokenPos != -1)\n      var ret = this.element.value.substr(tokenPos + 1).replace(/^\\s+/,'').replace(/\\s+$/,'');\n    else\n      var ret = this.element.value;\n\n    return /\\n/.test(ret) ? '' : ret;\n  },\n\n  findLastToken: function() {\n    var lastTokenPos = -1;\n\n    for (var i=0; i<this.options.tokens.length; i++) {\n      var thisTokenPos = this.element.value.lastIndexOf(this.options.tokens[i]);\n      if (thisTokenPos > lastTokenPos)\n        lastTokenPos = thisTokenPos;\n    }\n    return lastTokenPos;\n  }\n}\n\nAjax.Autocompleter = Class.create();\nObject.extend(Object.extend(Ajax.Autocompleter.prototype, Autocompleter.Base.prototype), {\n  initialize: function(element, update, url, options) {\n\t  this.baseInitialize(element, update, options);\n    this.options.asynchronous  = true;\n    this.options.onComplete    = this.onComplete.bind(this)\n    this.options.method        = 'post';\n    this.options.defaultParams = this.options.parameters || null;\n    this.url                   = url;\n  },\n\n  getUpdatedChoices: function() {\n    entry = encodeURIComponent(this.options.paramName) + '=' + \n      encodeURIComponent(this.getToken());\n\n    this.options.parameters = this.options.callback ?\n      this.options.callback(this.element, entry) : entry;\n\n    if(this.options.defaultParams) \n      this.options.parameters += '&' + this.options.defaultParams;\n\n    new Ajax.Request(this.url, this.options);\n  },\n\n  onComplete: function(request) {\n    this.updateChoices(request.responseText);\n  }\n\n});\n\n// The local array autocompleter. Used when you'd prefer to\n// inject an array of autocompletion options into the page, rather\n// than sending out Ajax queries, which can be quite slow sometimes.\n//\n// The constructor takes four parameters. The first two are, as usual,\n// the id of the monitored textbox, and id of the autocompletion menu.\n// The third is the array you want to autocomplete from, and the fourth\n// is the options block.\n//\n// Extra local autocompletion options:\n// - choices - How many autocompletion choices to offer\n//\n// - partialSearch - If false, the autocompleter will match entered\n//                    text only at the beginning of strings in the \n//                    autocomplete array. Defaults to true, which will\n//                    match text at the beginning of any *word* in the\n//                    strings in the autocomplete array. If you want to\n//                    search anywhere in the string, additionally set\n//                    the option fullSearch to true (default: off).\n//\n// - fullSsearch - Search anywhere in autocomplete array strings.\n//\n// - partialChars - How many characters to enter before triggering\n//                   a partial match (unlike minChars, which defines\n//                   how many characters are required to do any match\n//                   at all). Defaults to 2.\n//\n// - ignoreCase - Whether to ignore case when autocompleting.\n//                 Defaults to true.\n//\n// It's possible to pass in a custom function as the 'selector' \n// option, if you prefer to write your own autocompletion logic.\n// In that case, the other options above will not apply unless\n// you support them.\n\nAutocompleter.Local = Class.create();\nAutocompleter.Local.prototype = Object.extend(new Autocompleter.Base(), {\n  initialize: function(element, update, array, options) {\n    this.baseInitialize(element, update, options);\n    this.options.array = array;\n  },\n\n  getUpdatedChoices: function() {\n    this.updateChoices(this.options.selector(this));\n  },\n\n  setOptions: function(options) {\n    this.options = Object.extend({\n      choices: 10,\n      partialSearch: true,\n      partialChars: 2,\n      ignoreCase: true,\n      fullSearch: false,\n      selector: function(instance) {\n        var ret       = []; // Beginning matches\n        var partial   = []; // Inside matches\n        var entry     = instance.getToken();\n        var count     = 0;\n\n        for (var i = 0; i < instance.options.array.length &&  \n          ret.length < instance.options.choices ; i++) { \n\n          var elem = instance.options.array[i];\n          var foundPos = instance.options.ignoreCase ? \n            elem.toLowerCase().indexOf(entry.toLowerCase()) : \n            elem.indexOf(entry);\n\n          while (foundPos != -1) {\n            if (foundPos == 0 && elem.length != entry.length) { \n              ret.push(\"<li><strong>\" + elem.substr(0, entry.length) + \"</strong>\" + \n                elem.substr(entry.length) + \"</li>\");\n              break;\n            } else if (entry.length >= instance.options.partialChars && \n              instance.options.partialSearch && foundPos != -1) {\n              if (instance.options.fullSearch || /\\s/.test(elem.substr(foundPos-1,1))) {\n                partial.push(\"<li>\" + elem.substr(0, foundPos) + \"<strong>\" +\n                  elem.substr(foundPos, entry.length) + \"</strong>\" + elem.substr(\n                  foundPos + entry.length) + \"</li>\");\n                break;\n              }\n            }\n\n            foundPos = instance.options.ignoreCase ? \n              elem.toLowerCase().indexOf(entry.toLowerCase(), foundPos + 1) : \n              elem.indexOf(entry, foundPos + 1);\n\n          }\n        }\n        if (partial.length)\n          ret = ret.concat(partial.slice(0, instance.options.choices - ret.length))\n        return \"<ul>\" + ret.join('') + \"</ul>\";\n      }\n    }, options || {});\n  }\n});\n\n// AJAX in-place editor\n//\n// The constructor takes three parameters. The first is the element\n// that should support in-place editing. The second is the url to submit\n// the changed value to. The server should respond with the updated\n// value (the server might have post-processed it or validation might\n// have prevented it from changing). The third is a hash of options.\n//\n// Supported options are (all are optional and have sensible defaults):\n// - okText - The text of the submit button that submits the changed value\n//            to the server (default: \"ok\")\n// - cancelText - The text of the link that cancels editing (default: \"cancel\")\n// - savingText - The text being displayed as the AJAX engine communicates\n//                with the server (default: \"Saving...\")\n// - formId - The id given to the <form> element\n//            (default: the id of the element to edit plus '-inplaceeditor')\n\nAjax.InPlaceEditor = Class.create();\nAjax.InPlaceEditor.prototype = {\n  initialize: function(element, url, options) {\n    this.url = url;\n    this.element = $(element);\n\n    this.options = Object.extend({\n      okText: \"ok\",\n      cancelText: \"cancel\",\n      savingText: \"Saving...\",\n      okText: \"ok\",\n      rows: 1,\n      onFailure: function(transport) {\n        alert(\"Error communicating with the server: \" + transport.responseText);\n      },\n      callback: function(form) {\n        return Form.serialize(form);\n      },\n      hoverClassName: 'inplaceeditor-hover',\n      externalControl:\tnull\n    }, options || {});\n\n    if(!this.options.formId && this.element.id) {\n      this.options.formId = this.element.id + \"-inplaceeditor\";\n      if ($(this.options.formId)) {\n        // there's already a form with that name, don't specify an id\n        this.options.formId = null;\n      }\n    }\n    \n    if (this.options.externalControl) {\n      this.options.externalControl = $(this.options.externalControl);\n    }\n    \n    this.onclickListener = this.enterEditMode.bindAsEventListener(this);\n    this.mouseoverListener = this.enterHover.bindAsEventListener(this);\n    this.mouseoutListener = this.leaveHover.bindAsEventListener(this);\n    Event.observe(this.element, 'click', this.onclickListener);\n    Event.observe(this.element, 'mouseover', this.mouseoverListener);\n    Event.observe(this.element, 'mouseout', this.mouseoutListener);\n    if (this.options.externalControl) {\n      Event.observe(this.options.externalControl, 'click', this.onclickListener);\n    }\n  },\n  enterEditMode: function() {\n    if (this.saving) return;\n    if (this.editing) return;\n    this.editing = true;\n    this.onEnterEditMode();\n    if (this.options.externalControl) {\n      Element.hide(this.options.externalControl);\n    }\n    Element.hide(this.element);\n    this.form = this.getForm();\n    this.element.parentNode.insertBefore(this.form, this.element);\n  },\n  getForm: function() {\n    form = document.createElement(\"form\");\n    form.id = this.options.formId;\n    form.onsubmit = this.onSubmit.bind(this);\n\n    this.createEditField(form);\n\n    if (this.options.textarea) {\n      var br = document.createElement(\"br\");\n      form.appendChild(br);\n    }\n\n    okButton = document.createElement(\"input\");\n    okButton.type = \"submit\";\n    okButton.value = this.options.okText;\n    form.appendChild(okButton);\n\n    cancelLink = document.createElement(\"a\");\n    cancelLink.href = \"#\";\n    cancelLink.appendChild(document.createTextNode(this.options.cancelText));\n    cancelLink.onclick = this.onclickCancel.bind(this);\n    form.appendChild(cancelLink);\n    return form;\n  },\n  createEditField: function(form) {\n    if (this.options.rows == 1) {\n      this.options.textarea = false;\n      var textField = document.createElement(\"input\");\n      textField.type = \"text\";\n      textField.name = \"value\";\n      textField.value = this.getText();\n      var size = this.options.size || this.options.cols || 0;\n      if (size != 0)\n        textField.size = size;\n      form.appendChild(textField);\n    } else {\n      this.options.textarea = true;\n      var textArea = document.createElement(\"textarea\");\n      textArea.name = \"value\";\n      textArea.value = this.getText();\n      textArea.rows = this.options.rows;\n      textArea.cols = this.options.cols || 40;\n      form.appendChild(textArea);\n    }\n  },\n  getText: function() {\n    return this.element.innerHTML;\n  },\n  onclickCancel: function() {\n    this.onComplete();\n  },\n  onFailure: function(transport) {\n    this.options.onFailure(transport);\n    if (this.oldInnerHTML) {\n      this.element.innerHTML = this.oldInnerHTML;\n      this.oldInnerHTML = null;\n    }\n    return false;\n    if (this.oldInnerHTML) {\n      this.element.innerHTML = this.oldInnerHTML;\n      this.oldInnerHTML = null;\n    }\n  },\n  onSubmit: function() {\n    this.saving = true;\n    new Ajax.Updater(\n      { \n        success: this.element,\n         // don't update on failure (this could be an option)\n        failure: null\n      },\n      this.url,\n      {\n        parameters: this.options.callback(this.form, this.form.value.value),\n        onComplete: this.onComplete.bind(this),\n        onFailure: this.onFailure.bind(this)\n      }\n    );\n    this.onLoading();\n    return false;\n  },\n  onLoading: function() {\n    this.saving = true;\n    this.removeForm();\n    this.leaveHover();\n    this.showSaving();\n  },\n  showSaving: function() {\n    this.oldInnerHTML = this.element.innerHTML;\n    this.element.innerHTML = this.options.savingText;\n    Element.show(this.element);\n  },\n  removeForm: function() {\n    if(this.form) {\n      Element.remove(this.form);\n      this.form = null;\n    }\n  },\n  enterHover: function() {\n    if (this.saving) return;\n    if (this.options.backgroundColor) {\n      this.oldBackground = this.element.style.backgroundColor;\n      this.element.style.backgroundColor = this.options.backgroundColor;\n    }\n    Element.addClassName(this.element, this.options.hoverClassName)\n  },\n  leaveHover: function() {\n    if (this.options.backgroundColor) {\n      this.element.style.backgroundColor = this.oldBackground;\n    }\n    Element.removeClassName(this.element, this.options.hoverClassName)\n  },\n  leaveEditMode: function() {\n    if(this.savingText) {\n      Element.remove(this.savingText);\n      this.savingText = null;\n    }\n    this.removeForm();\n    this.leaveHover();\n    Element.show(this.element);\n    if (this.options.externalControl) {\n      Element.show(this.options.externalControl);\n    }\n    this.editing = false;\n    this.onLeaveEditMode();\n  },\n  onComplete: function() {\n    this.leaveEditMode();\n    this.oldInnerHTML = null;\n    this.saving = false;\n  },\n  onEnterEditMode: function() {},\n  onLeaveEditMode: function() {},\n  dispose: function() {\n    if (this.oldInnerHTML) {\n      this.element.innerHTML = this.oldInnerHTML;\n    }\n    this.leaveEditMode();\n    Event.stopObserving(this.element, 'click', this.onclickListener);\n    Event.stopObserving(this.element, 'mouseover', this.mouseoverListener);\n    Event.stopObserving(this.element, 'mouseout', this.mouseoutListener);\n    if (this.options.externalControl) {\n      Event.stopObserving(this.options.externalControl, 'click', this.onclickListener);\n    }\n  }\n};"
  },
  {
    "path": "newscoop/js/scriptaculous/dragdrop.js",
    "content": "// Copyright (c) 2005 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us)\n// \n// Element.Class part Copyright (c) 2005 by Rick Olson\n// \n// Permission is hereby granted, free of charge, to any person obtaining\n// a copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to\n// permit persons to whom the Software is furnished to do so, subject to\n// the following conditions:\n// \n// The above copyright notice and this permission notice shall be\n// included in all copies or substantial portions of the Software.\n// \n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n\n/*--------------------------------------------------------------------------*/\n\nvar Droppables = {\n  drops: false,\n  \n  remove: function(element) {\n    for(var i = 0; i < this.drops.length; i++)\n      if(this.drops[i].element == element)\n        this.drops.splice(i,1);\n  },\n  \n  add: function(element) {\n    var element = $(element);\n    var options = Object.extend({\n      greedy:     true,\n      hoverclass: null  \n    }, arguments[1] || {});\n    \n    // cache containers\n    if(options.containment) {\n      options._containers = new Array();\n      var containment = options.containment;\n      if((typeof containment == 'object') && \n        (containment.constructor == Array)) {\n        for(var i=0; i<containment.length; i++)\n          options._containers.push($(containment[i]));\n      } else {\n        options._containers.push($(containment));\n      }\n      options._containers_length = \n        options._containers.length-1;\n    }\n    \n    Element.makePositioned(element); // fix IE\n    \n    options.element = element;\n    \n    // activate the droppable    \n    if(!this.drops) this.drops = [];\n    this.drops.push(options);\n  },\n  \n  isContained: function(element, drop) {\n    var containers = drop._containers;\n    var parentNode = element.parentNode;\n    var i = drop._containers_length;\n    do { if(parentNode==containers[i]) return true; } while (i--);\n    return false;\n  },\n  \n  isAffected: function(pX, pY, element, drop) {\n    return (\n      (drop.element!=element) &&\n      ((!drop._containers) ||\n        this.isContained(element, drop)) &&\n      ((!drop.accept) ||\n        (Element.Class.has_any(element, drop.accept))) &&\n      Position.within(drop.element, pX, pY) );\n  },\n  \n  deactivate: function(drop) {\n    Element.Class.remove(drop.element, drop.hoverclass);\n    this.last_active = null;\n  },\n  \n  activate: function(drop) {\n    if(this.last_active) this.deactivate(this.last_active);\n    if(drop.hoverclass)\n      Element.Class.add(drop.element, drop.hoverclass);\n    this.last_active = drop;\n  },\n  \n  show: function(event, element) {\n    if(!this.drops) return;\n    var pX = Event.pointerX(event);\n    var pY = Event.pointerY(event);\n    Position.prepare();\n    \n    var i = this.drops.length-1; do {\n      var drop = this.drops[i];\n      if(this.isAffected(pX, pY, element, drop)) {\n        if(drop.onHover)\n           drop.onHover(element, drop.element, Position.overlap(drop.overlap, drop.element));\n        if(drop.greedy) { \n          this.activate(drop);\n          return;\n        }\n      }\n    } while (i--);\n  },\n  \n  fire: function(event, element) {\n    if(!this.last_active) return;\n    Position.prepare();\n    \n    if (this.isAffected(Event.pointerX(event), Event.pointerY(event), element, this.last_active))\n      if (this.last_active.onDrop) \n        this.last_active.onDrop(element, this.last_active);\n    \n  },\n  \n  reset: function() {\n    if(this.last_active)\n      this.deactivate(this.last_active);\n  }\n}\n\nDraggables = {\n  observers: new Array(),\n  addObserver: function(observer) {\n    this.observers.push(observer);    \n  },\n  removeObserver: function(element) {  // element instead of obsever fixes mem leaks\n    for(var i = 0; i < this.observers.length; i++)\n      if(this.observers[i].element && (this.observers[i].element == element))\n        this.observers.splice(i,1);\n  },\n  notify: function(eventName, draggable) {  // 'onStart', 'onEnd'\n    for(var i = 0; i < this.observers.length; i++)\n      this.observers[i][eventName](draggable);\n  }\n}\n\n/*--------------------------------------------------------------------------*/\n\nDraggable = Class.create();\nDraggable.prototype = {\n  initialize: function(element) {\n    var options = Object.extend({\n      handle: false,\n      starteffect: function(element) { \n        new Effect.Opacity(element, {duration:0.2, from:1.0, to:0.7}); \n      },\n      reverteffect: function(element, top_offset, left_offset) {\n        var dur = Math.sqrt(Math.abs(top_offset^2)+Math.abs(left_offset^2))*0.02;\n        new Effect.MoveBy(element, -top_offset, -left_offset, {duration:dur});\n      },\n      endeffect: function(element) { \n         new Effect.Opacity(element, {duration:0.2, from:0.7, to:1.0}); \n      },\n      zindex: 1000,\n      revert: false\n    }, arguments[1] || {});\n    \n    this.element      = $(element);\n    this.handle       = options.handle ? $(options.handle) : this.element;\n    \n    Element.makePositioned(this.element); // fix IE    \n    \n    this.offsetX      = 0;\n    this.offsetY      = 0;\n    this.originalLeft = this.currentLeft();\n    this.originalTop  = this.currentTop();\n    this.originalX    = this.element.offsetLeft;\n    this.originalY    = this.element.offsetTop;\n    this.originalZ    = parseInt(this.element.style.zIndex || \"0\");\n    \n    this.options      = options;\n    \n    this.active       = false;\n    this.dragging     = false;   \n    \n    this.eventMouseDown = this.startDrag.bindAsEventListener(this);\n    this.eventMouseUp   = this.endDrag.bindAsEventListener(this);\n    this.eventMouseMove = this.update.bindAsEventListener(this);\n    this.eventKeypress  = this.keyPress.bindAsEventListener(this);\n    \n    Event.observe(this.handle, \"mousedown\", this.eventMouseDown);\n    Event.observe(document, \"mouseup\", this.eventMouseUp);\n    Event.observe(document, \"mousemove\", this.eventMouseMove);\n    Event.observe(document, \"keypress\", this.eventKeypress);\n  },\n  destroy: function() {\n    Event.stopObserving(this.handle, \"mousedown\", this.eventMouseDown);\n    Event.stopObserving(document, \"mouseup\", this.eventMouseUp);\n    Event.stopObserving(document, \"mousemove\", this.eventMouseMove);\n    Event.stopObserving(document, \"keypress\", this.eventKeypress);\n  },\n  currentLeft: function() {\n    return parseInt(this.element.style.left || '0');\n  },\n  currentTop: function() {\n    return parseInt(this.element.style.top || '0')\n  },\n  startDrag: function(event) {\n    if(Event.isLeftClick(event)) {\n      this.active = true;\n      var pointer = [Event.pointerX(event), Event.pointerY(event)];\n      var offsets = Position.cumulativeOffset(this.element);\n      this.offsetX =  (pointer[0] - offsets[0]);\n      this.offsetY =  (pointer[1] - offsets[1]);\n      Event.stop(event);\n    }\n  },\n  finishDrag: function(event, success) {\n    this.active = false;\n    this.dragging = false;\n    \n    if(success) Droppables.fire(event, this.element);\n    Draggables.notify('onEnd', this);\n    \n    var revert = this.options.revert;\n    if(revert && typeof revert == 'function') revert = revert(this.element);\n    \n    if(this.options.ghosting) {\n      Position.relativize(this.element);\n      Element.remove(this._clone);\n      this._clone = null;\n    }\n      \n    if(revert && this.options.reverteffect) {\n      this.options.reverteffect(this.element, \n      this.currentTop()-this.originalTop,\n      this.currentLeft()-this.originalLeft);\n    } else {\n      this.originalLeft = this.currentLeft();\n      this.originalTop  = this.currentTop();\n    }\n    \n    this.element.style.zIndex = this.originalZ;\n      \n    if(this.options.endeffect) \n      this.options.endeffect(this.element);\n      \n    \n    Droppables.reset();\n  },\n  keyPress: function(event) {\n    if(this.active) {\n      if(event.keyCode==Event.KEY_ESC) {\n        this.finishDrag(event, false);\n        Event.stop(event);\n      }\n    }\n  },\n  endDrag: function(event) {\n    if(this.active && this.dragging) {\n      this.finishDrag(event, true);\n      Event.stop(event);\n    }\n    this.active = false;\n    this.dragging = false;\n  },\n  draw: function(event) {\n    var pointer = [Event.pointerX(event), Event.pointerY(event)];\n    var offsets = Position.cumulativeOffset(this.element);\n    offsets[0] -= this.currentLeft();\n    offsets[1] -= this.currentTop();\n    var style = this.element.style;\n    if((!this.options.constraint) || (this.options.constraint=='horizontal'))\n      style.left = (pointer[0] - offsets[0] - this.offsetX) + \"px\";\n    if((!this.options.constraint) || (this.options.constraint=='vertical'))\n      style.top  = (pointer[1] - offsets[1] - this.offsetY) + \"px\";\n    if(style.visibility==\"hidden\") style.visibility = \"\"; // fix gecko rendering\n  },\n  update: function(event) {\n   if(this.active) {\n      if(!this.dragging) {\n        var style = this.element.style;\n        this.dragging = true;\n        if(style.position==\"\") style.position = \"relative\";\n        style.zIndex = this.options.zindex;\n        \n        if(this.options.ghosting) {\n          this._clone = this.element.cloneNode(true);\n          Position.absolutize(this.element);\n          this.element.parentNode.insertBefore(this._clone, this.element);\n        }\n        \n        Draggables.notify('onStart', this);\n        if(this.options.starteffect) this.options.starteffect(this.element);\n      }\n      \n      Droppables.show(event, this.element);\n      this.draw(event);\n      if(this.options.change) this.options.change(this);\n      \n      // fix AppleWebKit rendering\n      if(navigator.appVersion.indexOf('AppleWebKit')>0) window.scrollBy(0,0); \n      \n      Event.stop(event);\n   }\n  }\n}\n\n/*--------------------------------------------------------------------------*/\n\nSortableObserver = Class.create();\nSortableObserver.prototype = {\n  initialize: function(element, observer) {\n    this.element   = $(element);\n    this.observer  = observer;\n    this.lastValue = Sortable.serialize(this.element);\n  },\n  onStart: function() {\n    this.lastValue = Sortable.serialize(this.element);\n  },\n  onEnd: function() {\n    Sortable.unmark();\n    if(this.lastValue != Sortable.serialize(this.element))\n      this.observer(this.element)\n  }\n}\n\nSortable = {\n  sortables: new Array(),\n  options: function(element){\n    var element = $(element);\n    for(var i=0;i<this.sortables.length;i++)\n      if(this.sortables[i].element == element)\n        return this.sortables[i];\n    return null;        \n  },\n  destroy: function(element){\n    var element = $(element);\n    for(var i=0;i<this.sortables.length;i++) {\n      if(this.sortables[i].element == element) {\n        var s = this.sortables[i];\n        Draggables.removeObserver(s.element);\n        for(var j=0;j<s.droppables.length;j++)\n          Droppables.remove(s.droppables[j]);\n        for(var j=0;j<s.draggables.length;j++)\n          s.draggables[j].destroy();\n        this.sortables.splice(i,1);\n      }\n    }\n  },\n  create: function(element) {\n    var element = $(element);\n    var options = Object.extend({ \n      element:     element,\n      tag:         'li',       // assumes li children, override with tag: 'tagname'\n      dropOnEmpty: false,\n      tree:        false,      // fixme: unimplemented\n      overlap:     'vertical', // one of 'vertical', 'horizontal'\n      constraint:  'vertical', // one of 'vertical', 'horizontal', false\n      containment: element,    // also takes array of elements (or id's); or false\n      handle:      false,      // or a CSS class\n      only:        false,\n      hoverclass:  null,\n      ghosting:    false,\n      onChange:    function() {},\n      onUpdate:    function() {}\n    }, arguments[1] || {});\n    \n    // clear any old sortable with same element\n    this.destroy(element);\n    \n    // build options for the draggables\n    var options_for_draggable = {\n      revert:      true,\n      ghosting:    options.ghosting,\n      constraint:  options.constraint,\n      handle:      handle };\n   \n    if(options.starteffect)\n      options_for_draggable.starteffect = options.starteffect;\n   \n    if(options.reverteffect)\n      options_for_draggable.reverteffect = options.reverteffect;\n    else\n      if(options.ghosting) options_for_draggable.reverteffect = function(element) {\n        element.style.top  = 0;\n        element.style.left = 0;\n      };\n   \n    if(options.endeffect)\n      options_for_draggable.endeffect = options.endeffect;\n   \n    if(options.zindex)\n      options_for_draggable.zindex = options.zindex;\n    \n    // build options for the droppables  \n    var options_for_droppable = {\n      overlap:     options.overlap,\n      containment: options.containment,\n      hoverclass:  options.hoverclass,\n      onHover:     Sortable.onHover,\n      greedy:      !options.dropOnEmpty\n    }\n\n    // fix for gecko engine\n    Element.cleanWhitespace(element); \n    \n    options.draggables = [];\n    options.droppables = [];\n    \n    // make it so\n    \n    // drop on empty handling\n    if(options.dropOnEmpty) {\n      Droppables.add(element,\n        {containment: options.containment, onHover: Sortable.onEmptyHover, greedy: false});\n      options.droppables.push(element);\n    }\n     \n    var elements = this.findElements(element, options);\n    if(elements) {\n      for (var i = 0; i < elements.length; i++) {\n        // handles are per-draggable\n        var handle = options.handle ? \n          Element.Class.childrenWith(elements[i], options.handle)[0] : elements[i];\n            options.draggables.push(new Draggable(elements[i], Object.extend(options_for_draggable, { handle: handle })));\n            Droppables.add(elements[i], options_for_droppable);\n        \n        options.droppables.push(elements[i]);\n      }\n    }\n   \n    // keep reference\n    this.sortables.push(options);\n    \n    // for onupdate\n    Draggables.addObserver(new SortableObserver(element, options.onUpdate));\n\n  },\n  \n  // return all suitable-for-sortable elements in a guaranteed order\n  findElements: function(element, options) {\n    if(!element.hasChildNodes()) return null;\n    var elements = [];\n    var children = element.childNodes;\n    for(var i = 0; i<children.length; i++) {\n      if(children[i].tagName && children[i].tagName==options.tag.toUpperCase() &&\n        (!options.only || (Element.Class.has(children[i], options.only))))\n          elements.push(children[i]);\n      if(options.tree) {\n        var grandchildren = this.findElements(children[i], options);\n        if(grandchildren) elements.push(grandchildren);\n      }\n    }\n  \n    return (elements.length>0 ? elements.flatten() : null);\n  },\n  \n  onHover: function(element, dropon, overlap) {\n    if(overlap>0.5) {\n      Sortable.mark(dropon, 'before');\n      if(dropon.previousSibling != element) {\n        var oldParentNode = element.parentNode;\n        element.style.visibility = \"hidden\"; // fix gecko rendering\n        dropon.parentNode.insertBefore(element, dropon);\n        if(dropon.parentNode!=oldParentNode && oldParentNode.sortable) \n          oldParentNode.sortable.onChange(element);\n        if(dropon.parentNode.sortable)\n          dropon.parentNode.sortable.onChange(element);\n      }\n    } else {\n      Sortable.mark(dropon, 'after');\n      var nextElement = dropon.nextSibling || null;\n      if(nextElement != element) {\n        var oldParentNode = element.parentNode;\n        element.style.visibility = \"hidden\"; // fix gecko rendering\n        dropon.parentNode.insertBefore(element, nextElement);\n        if(dropon.parentNode!=oldParentNode && oldParentNode.sortable) \n          oldParentNode.sortable.onChange(element);\n        if(dropon.parentNode.sortable)\n          dropon.parentNode.sortable.onChange(element);\n      }\n    }\n  },\n  \n  onEmptyHover: function(element, dropon) {\n    if(element.parentNode!=dropon) {\n      dropon.appendChild(element);\n    }\n  },\n  \n  unmark: function() {\n    if(Sortable._marker) Element.hide(Sortable._marker);\n  },\n  \n  mark: function(dropon, position) {\n    // mark on ghosting only\n    var sortable = Sortable.options(dropon.parentNode);\n    if(sortable && !sortable.ghosting) return; \n    \n    if(!Sortable._marker) {\n      Sortable._marker = $('dropmarker') || document.createElement('DIV');\n      Element.hide(Sortable._marker);\n      Element.Class.add(Sortable._marker, 'dropmarker');\n      Sortable._marker.style.position = 'absolute';\n      document.getElementsByTagName(\"body\").item(0).appendChild(Sortable._marker);\n    }    \n    var offsets = Position.cumulativeOffset(dropon);\n    Sortable._marker.style.top  = offsets[1] + 'px';\n    if(position=='after') Sortable._marker.style.top = (offsets[1]+dropon.clientHeight) + 'px';\n    Sortable._marker.style.left = offsets[0] + 'px';\n    Element.show(Sortable._marker);\n  },\n  \n  serialize: function(element) {\n    var element = $(element);\n    var sortableOptions = this.options(element);\n    var options = Object.extend({\n      tag:  sortableOptions.tag,\n      only: sortableOptions.only,\n      name: element.id\n    }, arguments[1] || {});\n    \n    var items = $(element).childNodes;\n    var queryComponents = new Array();\n \n    for(var i=0; i<items.length; i++)\n      if(items[i].tagName && items[i].tagName==options.tag.toUpperCase() &&\n        (!options.only || (Element.Class.has(items[i], options.only))))\n        queryComponents.push(\n          encodeURIComponent(options.name) + \"[]=\" + \n          encodeURIComponent(items[i].id.split(\"_\")[1]));\n\n    return queryComponents.join(\"&\");\n  }\n} "
  },
  {
    "path": "newscoop/js/scriptaculous/effects.js",
    "content": "// Copyright (c) 2005 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us)\n//\n// Parts (c) 2005 Justin Palmer (http://encytemedia.com/)\n// Parts (c) 2005 Mark Pilgrim (http://diveintomark.org/)\n// \n// Permission is hereby granted, free of charge, to any person obtaining\n// a copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to\n// permit persons to whom the Software is furnished to do so, subject to\n// the following conditions:\n// \n// The above copyright notice and this permission notice shall be\n// included in all copies or substantial portions of the Software.\n// \n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n\nEffect = {}\nEffect2 = Effect; // deprecated\n\n/* ------------- transitions ------------- */\n\nEffect.Transitions = {}\n\nEffect.Transitions.linear = function(pos) {\n  return pos;\n}\nEffect.Transitions.sinoidal = function(pos) {\n  return (-Math.cos(pos*Math.PI)/2) + 0.5;\n}\nEffect.Transitions.reverse  = function(pos) {\n  return 1-pos;\n}\nEffect.Transitions.flicker = function(pos) {\n  return ((-Math.cos(pos*Math.PI)/4) + 0.75) + Math.random(0.25);\n}\nEffect.Transitions.wobble = function(pos) {\n  return (-Math.cos(pos*Math.PI*(9*pos))/2) + 0.5;\n}\nEffect.Transitions.pulse = function(pos) {\n  return (Math.floor(pos*10) % 2 == 0 ? \n    (pos*10-Math.floor(pos*10)) : 1-(pos*10-Math.floor(pos*10)));\n}\nEffect.Transitions.none = function(pos) {\n  return 0;\n}\nEffect.Transitions.full = function(pos) {\n  return 1;\n}\n\n/* ------------- core effects ------------- */\n\nEffect.Base = function() {};\nEffect.Base.prototype = {\n  setOptions: function(options) {\n    this.options = Object.extend({\n      transition: Effect.Transitions.sinoidal,\n      duration:   1.0,   // seconds\n      fps:        25.0,  // max. 100fps\n      sync:       false, // true for combining\n      from:       0.0,\n      to:         1.0\n    }, options || {});\n  },\n  start: function(options) {\n    this.setOptions(options || {});\n    this.currentFrame = 0;\n    this.startOn      = new Date().getTime();\n    this.finishOn     = this.startOn + (this.options.duration*1000);\n    if(this.options.beforeStart) this.options.beforeStart(this);\n    if(!this.options.sync) this.loop();  \n  },\n  loop: function() {\n    var timePos = new Date().getTime();\n    if(timePos >= this.finishOn) {\n      this.render(1.0);\n      if(this.finish) this.finish(); \n      if(this.options.afterFinish) this.options.afterFinish(this);\n      return;  \n    }\n    var pos   = (timePos - this.startOn) / (this.finishOn - this.startOn);\n    var frame = Math.round(pos * this.options.fps * this.options.duration);\n    if(frame > this.currentFrame) {\n      this.render(pos);\n      this.currentFrame = frame;\n    }\n    this.timeout = setTimeout(this.loop.bind(this), 10);\n  },\n  render: function(pos) {\n    if(this.options.transition) pos = this.options.transition(pos);\n    pos *= (this.options.to-this.options.from);\n    pos += this.options.from; \n    if(this.options.beforeUpdate) this.options.beforeUpdate(this);\n    if(this.update) this.update(pos);\n    if(this.options.afterUpdate) this.options.afterUpdate(this);  \n  },\n  cancel: function() {\n    if(this.timeout) clearTimeout(this.timeout);\n  }\n}\n\nEffect.Parallel = Class.create();\nObject.extend(Object.extend(Effect.Parallel.prototype, Effect.Base.prototype), {\n  initialize: function(effects) {\n    this.effects = effects || [];\n    this.start(arguments[1]);\n  },\n  update: function(position) {\n    for (var i = 0; i < this.effects.length; i++)\n      this.effects[i].render(position);  \n  },\n  finish: function(position) {\n    for (var i = 0; i < this.effects.length; i++)\n      if(this.effects[i].finish) this.effects[i].finish(position);\n  }\n});\n\n// Internet Explorer caveat: works only on elements the have\n// a 'layout', meaning having a given width or height. \n// There is no way to safely set this automatically.\nEffect.Opacity = Class.create();\nObject.extend(Object.extend(Effect.Opacity.prototype, Effect.Base.prototype), {\n  initialize: function(element) {\n    this.element = $(element);\n    options = Object.extend({\n      from: 0.0,\n      to:   1.0\n    }, arguments[1] || {});\n    this.start(options);\n  },\n  update: function(position) {\n    this.setOpacity(position);\n  }, \n  setOpacity: function(opacity) {\n    if(opacity==1.0) {\n      this.element.style.opacity = null;\n      this.element.style.filter  = null;\n    } else {\n      this.element.style.opacity = opacity;\n      this.element.style.filter  = \"alpha(opacity:\"+opacity*100+\")\";\n    }\n  }\n});\n\nEffect.MoveBy = Class.create();\nObject.extend(Object.extend(Effect.MoveBy.prototype, Effect.Base.prototype), {\n  initialize: function(element, toTop, toLeft) {\n    this.element      = $(element);\n    this.originalTop  = parseFloat(Element.getStyle(element,'top')  || '0');\n    this.originalLeft = parseFloat(Element.getStyle(element,'left') || '0');\n    this.toTop        = toTop;\n    this.toLeft       = toLeft;\n    Element.makePositioned(this.element);\n    this.start(arguments[3]);\n  },\n  update: function(position) {\n    topd  = this.toTop  * position + this.originalTop;\n    leftd = this.toLeft * position + this.originalLeft;\n    this.setPosition(topd, leftd);\n  },\n  setPosition: function(topd, leftd) {\n    this.element.style.top  = topd  + \"px\";\n    this.element.style.left = leftd + \"px\";\n  }\n});\n\nEffect.Scale = Class.create();\nObject.extend(Object.extend(Effect.Scale.prototype, Effect.Base.prototype), {\n  initialize: function(element, percent) {\n    this.element = $(element)\n    options = Object.extend({\n      scaleX: true,\n      scaleY: true,\n      scaleContent: true,\n      scaleFromCenter: false,\n      scaleMode: 'box',        // 'box' or 'contents' or {} with provided values\n      scaleFrom: 100.0\n    }, arguments[2] || {});\n    this.originalTop    = this.element.offsetTop;\n    this.originalLeft   = this.element.offsetLeft;\n    if(Element.getStyle(element,'font-size')==\"\") this.sizeEm = 1.0;\n    if(Element.getStyle(element,'font-size') && Element.getStyle(element,'font-size').indexOf(\"em\")>0)\n      this.sizeEm      = parseFloat(Element.getStyle(element,'font-size'));\n    this.factor = (percent/100.0) - (options.scaleFrom/100.0);\n    if(options.scaleMode=='box') {\n      this.originalHeight = this.element.clientHeight;\n      this.originalWidth  = this.element.clientWidth; \n    } else \n    if(options.scaleMode=='contents') {\n      this.originalHeight = this.element.scrollHeight;\n      this.originalWidth  = this.element.scrollWidth;\n    } else {\n      this.originalHeight = options.scaleMode.originalHeight;\n      this.originalWidth  = options.scaleMode.originalWidth;\n    }\n    this.start(options);\n  },\n\n  update: function(position) {\n    currentScale = (this.options.scaleFrom/100.0) + (this.factor * position);\n    if(this.options.scaleContent && this.sizeEm) \n      this.element.style.fontSize = this.sizeEm*currentScale + \"em\";\n    this.setDimensions(\n      this.originalWidth * currentScale, \n      this.originalHeight * currentScale);\n  },\n\n  setDimensions: function(width, height) {\n    if(this.options.scaleX) this.element.style.width = width + 'px';\n    if(this.options.scaleY) this.element.style.height = height + 'px';\n    if(this.options.scaleFromCenter) {\n      topd  = (height - this.originalHeight)/2;\n      leftd = (width  - this.originalWidth)/2;\n      if(Element.getStyle(this.element,'position')=='absolute') {\n        if(this.options.scaleY) this.element.style.top = this.originalTop-topd + \"px\";\n        if(this.options.scaleX) this.element.style.left = this.originalLeft-leftd + \"px\";\n      } else {\n        if(this.options.scaleY) this.element.style.top = -topd + \"px\";\n        if(this.options.scaleX) this.element.style.left = -leftd + \"px\";\n      }\n    }\n  }\n});\n\nEffect.Highlight = Class.create();\nObject.extend(Object.extend(Effect.Highlight.prototype, Effect.Base.prototype), {\n  initialize: function(element) {\n    this.element = $(element);\n    \n    // try to parse current background color as default for endcolor\n    // browser stores this as: \"rgb(255, 255, 255)\", convert to \"#ffffff\" format\n    var endcolor = \"#ffffff\";\n    var current = Element.getStyle(this.element, 'background-color');\n    if(current && current.slice(0,4) == \"rgb(\") {\n      endcolor = \"#\";\n      var cols = current.slice(4,current.length-1).split(',');\n      var i=0; do { endcolor += parseInt(cols[i]).toColorPart() } while (++i<3); }\n      \n    var options = Object.extend({\n      startcolor:   \"#ffff99\",\n      endcolor:     endcolor,\n      restorecolor: current \n    }, arguments[1] || {});\n    \n    // init color calculations\n    this.colors_base = [\n      parseInt(options.startcolor.slice(1,3),16),\n      parseInt(options.startcolor.slice(3,5),16),\n      parseInt(options.startcolor.slice(5),16) ];\n    this.colors_delta = [\n      parseInt(options.endcolor.slice(1,3),16)-this.colors_base[0],\n      parseInt(options.endcolor.slice(3,5),16)-this.colors_base[1],\n      parseInt(options.endcolor.slice(5),16)-this.colors_base[2] ];\n\n    this.start(options);\n  },\n  update: function(position) {\n    var colors = [\n      Math.round(this.colors_base[0]+(this.colors_delta[0]*position)),\n      Math.round(this.colors_base[1]+(this.colors_delta[1]*position)),\n      Math.round(this.colors_base[2]+(this.colors_delta[2]*position)) ];\n    this.element.style.backgroundColor = \"#\" +\n      colors[0].toColorPart() + colors[1].toColorPart() + colors[2].toColorPart();\n  },\n  finish: function() {\n    this.element.style.backgroundColor = this.options.restorecolor;\n  }\n});\n\nEffect.ScrollTo = Class.create();\nObject.extend(Object.extend(Effect.ScrollTo.prototype, Effect.Base.prototype), {\n  initialize: function(element) {\n    this.element = $(element);\n    Position.prepare();\n    var offsets = Position.cumulativeOffset(this.element);\n    var max = window.innerHeight ? \n      window.height - window.innerHeight :\n      document.body.scrollHeight - \n        (document.documentElement.clientHeight ? \n          document.documentElement.clientHeight : document.body.clientHeight);\n    this.scrollStart = Position.deltaY;\n    this.delta  = (offsets[1] > max ? max : offsets[1]) - this.scrollStart;\n    this.start(arguments[1] || {});\n  },\n  update: function(position) {\n    Position.prepare();\n    window.scrollTo(Position.deltaX, \n      this.scrollStart + (position*this.delta));\n  }\n});\n\n/* ------------- prepackaged effects ------------- */\n\nEffect.Fade = function(element) {\n  options = Object.extend({\n  from: 1.0,\n  to:   0.0,\n  afterFinish: function(effect) \n    { Element.hide(effect.element);\n      effect.setOpacity(1); } \n  }, arguments[1] || {});\n  return new Effect.Opacity(element,options);\n}\n\nEffect.Appear = function(element) {\n  options = Object.extend({\n  from: 0.0,\n  to:   1.0,\n  beforeStart: function(effect)  \n    { effect.setOpacity(0);\n      Element.show(effect.element); },\n  afterUpdate: function(effect)  \n    { Element.show(effect.element); }\n  }, arguments[1] || {});\n  return new Effect.Opacity(element,options);\n}\n\nEffect.Puff = function(element) {\n  return new Effect.Parallel(\n   [ new Effect.Scale(element, 200, { sync: true, scaleFromCenter: true }), \n     new Effect.Opacity(element, { sync: true, to: 0.0, from: 1.0 } ) ], \n     { duration: 1.0, \n      afterUpdate: function(effect) \n       { effect.effects[0].element.style.position = 'absolute'; },\n      afterFinish: function(effect)\n       { Element.hide(effect.effects[0].element); }\n     }\n   );\n}\n\nEffect.BlindUp = function(element) {\n  Element.makeClipping(element);\n  return new Effect.Scale(element, 0, \n    Object.extend({ scaleContent: false, \n      scaleX: false, \n      afterFinish: function(effect) \n        { \n          Element.hide(effect.element);\n          Element.undoClipping(effect.element);\n        } \n    }, arguments[1] || {})\n  );\n}\n\nEffect.BlindDown = function(element) {\n  $(element).style.height   = '0px';\n  Element.makeClipping(element);\n  Element.show(element);\n  return new Effect.Scale(element, 100, \n    Object.extend({ scaleContent: false, \n      scaleX: false, \n      scaleMode: 'contents',\n      scaleFrom: 0,\n      afterFinish: function(effect) {\n        Element.undoClipping(effect.element);\n      }\n    }, arguments[1] || {})\n  );\n}\n\nEffect.SwitchOff = function(element) {\n  return new Effect.Appear(element,\n    { duration: 0.4,\n     transition: Effect.Transitions.flicker,\n     afterFinish: function(effect)\n      { effect.element.style.overflow = 'hidden';\n        new Effect.Scale(effect.element, 1, \n         { duration: 0.3, scaleFromCenter: true,\n          scaleX: false, scaleContent: false,\n          afterUpdate: function(effect) { \n           if(effect.element.style.position==\"\")\n             effect.element.style.position = 'relative'; },\n          afterFinish: function(effect) { Element.hide(effect.element); }\n         } )\n      }\n    } );\n}\n\nEffect.DropOut = function(element) {\n  return new Effect.Parallel(\n    [ new Effect.MoveBy(element, 100, 0, { sync: true }), \n      new Effect.Opacity(element, { sync: true, to: 0.0, from: 1.0 } ) ], \n    { duration: 0.5, \n     afterFinish: function(effect)\n       { Element.hide(effect.effects[0].element); } \n    });\n}\n\nEffect.Shake = function(element) {\n  return new Effect.MoveBy(element, 0, 20, \n    { duration: 0.05, afterFinish: function(effect) {\n  new Effect.MoveBy(effect.element, 0, -40, \n    { duration: 0.1, afterFinish: function(effect) { \n  new Effect.MoveBy(effect.element, 0, 40, \n    { duration: 0.1, afterFinish: function(effect) {  \n  new Effect.MoveBy(effect.element, 0, -40, \n    { duration: 0.1, afterFinish: function(effect) {  \n  new Effect.MoveBy(effect.element, 0, 40, \n    { duration: 0.1, afterFinish: function(effect) {  \n  new Effect.MoveBy(effect.element, 0, -20, \n    { duration: 0.05, afterFinish: function(effect) {  \n  }}) }}) }}) }}) }}) }});\n}\n\nEffect.SlideDown = function(element) {\n  element = $(element);\n  element.style.height   = '0px';\n  Element.makeClipping(element);\n  Element.cleanWhitespace(element);\n  Element.makePositioned(element.firstChild);\n  Element.show(element);\n  return new Effect.Scale(element, 100, \n   Object.extend({ scaleContent: false, \n    scaleX: false, \n    scaleMode: 'contents',\n    scaleFrom: 0,\n    afterUpdate: function(effect) \n      { effect.element.firstChild.style.bottom = \n          (effect.originalHeight - effect.element.clientHeight) + 'px'; },\n    afterFinish: function(effect) \n      {  Element.undoClipping(effect.element); }\n    }, arguments[1] || {})\n  );\n}\n  \nEffect.SlideUp = function(element) {\n  element = $(element);\n  Element.makeClipping(element);\n  Element.cleanWhitespace(element);\n  Element.makePositioned(element.firstChild);\n  Element.show(element);\n  return new Effect.Scale(element, 0, \n   Object.extend({ scaleContent: false, \n    scaleX: false, \n    afterUpdate: function(effect) \n      { effect.element.firstChild.style.bottom = \n          (effect.originalHeight - effect.element.clientHeight) + 'px'; },\n    afterFinish: function(effect)\n      { \n        Element.hide(effect.element);\n        Element.undoClipping(effect.element);\n      }\n   }, arguments[1] || {})\n  );\n}\n\nEffect.Squish = function(element) {\n return new Effect.Scale(element, 0, \n   { afterFinish: function(effect) { Element.hide(effect.element); } });\n}\n\nEffect.Grow = function(element) {\n  element = $(element);\n  var options = arguments[1] || {};\n  \n  var originalWidth = element.clientWidth;\n  var originalHeight = element.clientHeight;\n  element.style.overflow = 'hidden';\n  Element.show(element);\n  \n  var direction = options.direction || 'center';\n  var moveTransition = options.moveTransition || Effect.Transitions.sinoidal;\n  var scaleTransition = options.scaleTransition || Effect.Transitions.sinoidal;\n  var opacityTransition = options.opacityTransition || Effect.Transitions.full;\n  \n  var initialMoveX, initialMoveY;\n  var moveX, moveY;\n  \n  switch (direction) {\n    case 'top-left':\n      initialMoveX = initialMoveY = moveX = moveY = 0; \n      break;\n    case 'top-right':\n      initialMoveX = originalWidth;\n      initialMoveY = moveY = 0;\n      moveX = -originalWidth;\n      break;\n    case 'bottom-left':\n      initialMoveX = moveX = 0;\n      initialMoveY = originalHeight;\n      moveY = -originalHeight;\n      break;\n    case 'bottom-right':\n      initialMoveX = originalWidth;\n      initialMoveY = originalHeight;\n      moveX = -originalWidth;\n      moveY = -originalHeight;\n      break;\n    case 'center':\n      initialMoveX = originalWidth / 2;\n      initialMoveY = originalHeight / 2;\n      moveX = -originalWidth / 2;\n      moveY = -originalHeight / 2;\n      break;\n  }\n  \n  return new Effect.MoveBy(element, initialMoveY, initialMoveX, { \n    duration: 0.01, \n    beforeUpdate: function(effect) { $(element).style.height = '0px'; },\n    afterFinish: function(effect) {\n      new Effect.Parallel(\n        [ new Effect.Opacity(element, { sync: true, to: 1.0, from: 0.0, transition: opacityTransition }),\n          new Effect.MoveBy(element, moveY, moveX, { sync: true, transition: moveTransition }),\n          new Effect.Scale(element, 100, { \n            scaleMode: { originalHeight: originalHeight, originalWidth: originalWidth }, \n            sync: true, scaleFrom: 0, scaleTo: 100, transition: scaleTransition })],\n        options); }\n    });\n}\n\nEffect.Shrink = function(element) {\n  element = $(element);\n  var options = arguments[1] || {};\n  \n  var originalWidth = element.clientWidth;\n  var originalHeight = element.clientHeight;\n  element.style.overflow = 'hidden';\n  Element.show(element);\n\n  var direction = options.direction || 'center';\n  var moveTransition = options.moveTransition || Effect.Transitions.sinoidal;\n  var scaleTransition = options.scaleTransition || Effect.Transitions.sinoidal;\n  var opacityTransition = options.opacityTransition || Effect.Transitions.none;\n  \n  var moveX, moveY;\n  \n  switch (direction) {\n    case 'top-left':\n      moveX = moveY = 0;\n      break;\n    case 'top-right':\n      moveX = originalWidth;\n      moveY = 0;\n      break;\n    case 'bottom-left':\n      moveX = 0;\n      moveY = originalHeight;\n      break;\n    case 'bottom-right':\n      moveX = originalWidth;\n      moveY = originalHeight;\n      break;\n    case 'center':  \n      moveX = originalWidth / 2;\n      moveY = originalHeight / 2;\n      break;\n  }\n  \n  return new Effect.Parallel(\n    [ new Effect.Opacity(element, { sync: true, to: 0.0, from: 1.0, transition: opacityTransition }),\n      new Effect.Scale(element, 0, { sync: true, transition: moveTransition }),\n      new Effect.MoveBy(element, moveY, moveX, { sync: true, transition: scaleTransition }) ],\n    options);\n}\n\nEffect.Pulsate = function(element) {\n  var options    = arguments[1] || {};\n  var transition = options.transition || Effect.Transitions.sinoidal;\n  var reverser   = function(pos){ return transition(1-Effect.Transitions.pulse(pos)) };\n  reverser.bind(transition);\n  return new Effect.Opacity(element, \n    Object.extend(Object.extend({  duration: 3.0,\n       afterFinish: function(effect) { Element.show(effect.element); }\n    }, options), {transition: reverser}));\n}\n\nEffect.Fold = function(element) {\n $(element).style.overflow = 'hidden';\n return new Effect.Scale(element, 5, Object.extend({   \n   scaleContent: false,\n   scaleTo: 100,\n   scaleX: false,\n   afterFinish: function(effect) {\n   new Effect.Scale(element, 1, { \n     scaleContent: false, \n     scaleTo: 0,\n     scaleY: false,\n     afterFinish: function(effect) { Element.hide(effect.element) } });\n }}, arguments[1] || {}));\n}\n\n// old: new Effect.ContentZoom(element, percent)\n// new: Element.setContentZoom(element, percent) \n\nElement.setContentZoom = function(element, percent) {\n  var element = $(element);\n  element.style.fontSize = (percent/100) + \"em\";  \n  if(navigator.appVersion.indexOf('AppleWebKit')>0) window.scrollBy(0,0);\n}"
  },
  {
    "path": "newscoop/js/scriptaculous/prototype.js",
    "content": "/*  Prototype JavaScript framework, version 1.4.0_pre2\r\n *  (c) 2005 Sam Stephenson <sam@conio.net>\r\n *\r\n *  THIS FILE IS AUTOMATICALLY GENERATED. When sending patches, please diff\r\n *  against the source tree, available from the Prototype darcs repository. \r\n *\r\n *  Prototype is freely distributable under the terms of an MIT-style license.\r\n *\r\n *  For details, see the Prototype web site: http://prototype.conio.net/\r\n *\r\n/*--------------------------------------------------------------------------*/\r\n\r\nvar Prototype = {\r\n  Version: '1.4.0_pre2',\r\n  emptyFunction: function() {}\r\n}\r\n\r\nvar Class = {\r\n  create: function() {\r\n    return function() { \r\n      this.initialize.apply(this, arguments);\r\n    }\r\n  }\r\n}\r\n\r\nvar Abstract = new Object();\r\n\r\nObject.extend = function(destination, source) {\r\n  for (property in source) {\r\n    destination[property] = source[property];\r\n  }\r\n  return destination;\r\n}\r\n\r\n/*\r\nObject.prototype.extend = function(object) {\r\n  return Object.extend.apply(this, [this, object]);\r\n}\r\n*/\r\n\r\nFunction.prototype.bind = function(object) {\r\n  var __method = this;\r\n  return function() {\r\n    return __method.apply(object, arguments);\r\n  }\r\n}\r\n\r\nFunction.prototype.bindAsEventListener = function(object) {\r\n  var __method = this;\r\n  return function(event) {\r\n    return __method.call(object, event || window.event);\r\n  }\r\n}\r\n\r\nNumber.prototype.toColorPart = function() {\r\n  var digits = this.toString(16);\r\n  if (this < 16) return '0' + digits;\r\n  return digits;\r\n}\r\n\r\nvar Try = {\r\n  these: function() {\r\n    var returnValue;\r\n\r\n    for (var i = 0; i < arguments.length; i++) {\r\n      var lambda = arguments[i];\r\n      try {\r\n        returnValue = lambda();\r\n        break;\r\n      } catch (e) {}\r\n    }\r\n\r\n    return returnValue;\r\n  }\r\n}\r\n\r\n/*--------------------------------------------------------------------------*/\r\n\r\nvar PeriodicalExecuter = Class.create();\r\nPeriodicalExecuter.prototype = {\r\n  initialize: function(callback, frequency) {\r\n    this.callback = callback;\r\n    this.frequency = frequency;\r\n    this.currentlyExecuting = false;\r\n\r\n    this.registerCallback();\r\n  },\r\n\r\n  registerCallback: function() {\r\n    setInterval(this.onTimerEvent.bind(this), this.frequency * 1000);\r\n  },\r\n\r\n  onTimerEvent: function() {\r\n    if (!this.currentlyExecuting) {\r\n      try { \r\n        this.currentlyExecuting = true;\r\n        this.callback(); \r\n      } finally { \r\n        this.currentlyExecuting = false;\r\n      }\r\n    }\r\n  }\r\n}\r\n\r\n/*--------------------------------------------------------------------------*/\r\n\r\nfunction $() {\r\n  var elements = new Array();\r\n\r\n  for (var i = 0; i < arguments.length; i++) {\r\n    var element = arguments[i];\r\n    if (typeof element == 'string')\r\n      element = document.getElementById(element);\r\n\r\n    if (arguments.length == 1) \r\n      return element;\r\n\r\n    elements.push(element);\r\n  }\r\n\r\n  return elements;\r\n}\r\n\r\nif (!Array.prototype.push) {\r\n  Array.prototype.push = function() {\r\n\t\tvar startLength = this.length;\r\n\t\tfor (var i = 0; i < arguments.length; i++)\r\n      this[startLength + i] = arguments[i];\r\n\t  return this.length;\r\n  }\r\n}\r\n\r\nif (!Function.prototype.apply) {\r\n  // Based on code from http://www.youngpup.net/\r\n  Function.prototype.apply = function(object, parameters) {\r\n    var parameterStrings = new Array();\r\n    if (!object)     object = window;\r\n    if (!parameters) parameters = new Array();\r\n    \r\n    for (var i = 0; i < parameters.length; i++)\r\n      parameterStrings[i] = 'parameters[' + i + ']';\r\n    \r\n    object.__apply__ = this;\r\n    var result = eval('object.__apply__(' + \r\n      parameterStrings.join(', ') + ')');\r\n    object.__apply__ = null;\r\n    \r\n    return result;\r\n  }\r\n}\r\n\r\nObject.extend(String.prototype, {\r\n  stripTags: function() {\r\n    return this.replace(/<\\/?[^>]+>/gi, '');\r\n  },\r\n\r\n  escapeHTML: function() {\r\n    var div = document.createElement('div');\r\n    var text = document.createTextNode(this);\r\n    div.appendChild(text);\r\n    return div.innerHTML;\r\n  },\r\n\r\n  unescapeHTML: function() {\r\n    var div = document.createElement('div');\r\n    div.innerHTML = this.stripTags();\r\n    return div.childNodes[0].nodeValue;\r\n  }\r\n});\r\n\r\nvar Ajax = {\r\n  getTransport: function() {\r\n    return Try.these(\r\n      function() {return new ActiveXObject('Msxml2.XMLHTTP')},\r\n      function() {return new ActiveXObject('Microsoft.XMLHTTP')},\r\n      function() {return new XMLHttpRequest()}\r\n    ) || false;\r\n  }\r\n}\r\n\r\nAjax.Base = function() {};\r\nAjax.Base.prototype = {\r\n  setOptions: function(options) {\r\n    this.options = {\r\n      method:       'post',\r\n      asynchronous: true,\r\n      parameters:   ''\r\n    }\r\n    Object.extend(this.options, options || {});\r\n  },\r\n\r\n  responseIsSuccess: function() {\r\n    return this.transport.status == undefined\r\n        || this.transport.status == 0 \r\n        || (this.transport.status >= 200 && this.transport.status < 300);\r\n  },\r\n\r\n  responseIsFailure: function() {\r\n    return !this.responseIsSuccess();\r\n  }\r\n}\r\n\r\nAjax.Request = Class.create();\r\nAjax.Request.Events = \r\n  ['Uninitialized', 'Loading', 'Loaded', 'Interactive', 'Complete'];\r\n\r\nAjax.Request.prototype = Object.extend(new Ajax.Base(), {\r\n  initialize: function(url, options) {\r\n    this.transport = Ajax.getTransport();\r\n    this.setOptions(options);\r\n    this.request(url);\r\n  },\r\n\r\n  request: function(url) {\r\n    var parameters = this.options.parameters || '';\r\n    if (parameters.length > 0) parameters += '&_=';\r\n\r\n    try {\r\n      if (this.options.method == 'get')\r\n        url += '?' + parameters;\r\n\r\n      this.transport.open(this.options.method, url,\r\n        this.options.asynchronous);\r\n\r\n      if (this.options.asynchronous) {\r\n        this.transport.onreadystatechange = this.onStateChange.bind(this);\r\n        setTimeout((function() {this.respondToReadyState(1)}).bind(this), 10);\r\n      }\r\n\r\n      this.setRequestHeaders();\r\n\r\n      var body = this.options.postBody ? this.options.postBody : parameters;\r\n      this.transport.send(this.options.method == 'post' ? body : null);\r\n\r\n    } catch (e) {\r\n    }\r\n  },\r\n\r\n  setRequestHeaders: function() {\r\n    var requestHeaders = \r\n      ['X-Requested-With', 'XMLHttpRequest',\r\n       'X-Prototype-Version', Prototype.Version];\r\n\r\n    if (this.options.method == 'post') {\r\n      requestHeaders.push('Content-type', \r\n        'application/x-www-form-urlencoded');\r\n\r\n      /* Force \"Connection: close\" for Mozilla browsers to work around\r\n       * a bug where XMLHttpReqeuest sends an incorrect Content-length\r\n       * header. See Mozilla Bugzilla #246651. \r\n       */\r\n      if (this.transport.overrideMimeType)\r\n        requestHeaders.push('Connection', 'close');\r\n    }\r\n\r\n    if (this.options.requestHeaders)\r\n      requestHeaders.push.apply(requestHeaders, this.options.requestHeaders);\r\n\r\n    for (var i = 0; i < requestHeaders.length; i += 2)\r\n      this.transport.setRequestHeader(requestHeaders[i], requestHeaders[i+1]);\r\n  },\r\n\r\n  onStateChange: function() {\r\n    var readyState = this.transport.readyState;\r\n    if (readyState != 1)\r\n      this.respondToReadyState(this.transport.readyState);\r\n  },\r\n\r\n  respondToReadyState: function(readyState) {\r\n    var event = Ajax.Request.Events[readyState];\r\n\r\n    if (event == 'Complete')\r\n      (this.options['on' + this.transport.status]\r\n       || this.options['on' + (this.responseIsSuccess() ? 'Success' : 'Failure')]\r\n       || Prototype.emptyFunction)(this.transport);\r\n\r\n    (this.options['on' + event] || Prototype.emptyFunction)(this.transport);\r\n\r\n    /* Avoid memory leak in MSIE: clean up the oncomplete event handler */\r\n    if (event == 'Complete')\r\n      this.transport.onreadystatechange = Prototype.emptyFunction;\r\n  }\r\n});\r\n\r\nAjax.Updater = Class.create();\r\nAjax.Updater.ScriptFragment = '(?:<script.*?>)((\\n|.)*?)(?:<\\/script>)';\r\n\r\nObject.extend(Object.extend(Ajax.Updater.prototype, Ajax.Request.prototype), {\r\n  initialize: function(container, url, options) {\r\n    this.containers = {\r\n      success: container.success ? $(container.success) : $(container),\r\n      failure: container.failure ? $(container.failure) :\r\n        (container.success ? null : $(container))\r\n    }\r\n\r\n    this.transport = Ajax.getTransport();\r\n    this.setOptions(options);\r\n\r\n    var onComplete = this.options.onComplete || Prototype.emptyFunction;\r\n    this.options.onComplete = (function() {\r\n      this.updateContent();\r\n      onComplete(this.transport);\r\n    }).bind(this);\r\n\r\n    this.request(url);\r\n  },\r\n\r\n  updateContent: function() {\r\n    var receiver = this.responseIsSuccess() ?\r\n      this.containers.success : this.containers.failure;\r\n\r\n    var match    = new RegExp(Ajax.Updater.ScriptFragment, 'img');\r\n    var response = this.transport.responseText.replace(match, '');\r\n    var scripts  = this.transport.responseText.match(match);\r\n\r\n    if (receiver) {\r\n      if (this.options.insertion) {\r\n        new this.options.insertion(receiver, response);\r\n      } else {\r\n        receiver.innerHTML = response;\r\n      }\r\n    }\r\n\r\n    if (this.responseIsSuccess()) {\r\n      if (this.onComplete)\r\n        setTimeout((function() {this.onComplete(\r\n          this.transport)}).bind(this), 10);\r\n    }\r\n\r\n    if (this.options.evalScripts && scripts) {\r\n      match = new RegExp(Ajax.Updater.ScriptFragment, 'im');\r\n      setTimeout((function() {\r\n        for (var i = 0; i < scripts.length; i++)\r\n          eval(scripts[i].match(match)[1]);\r\n      }).bind(this), 10);\r\n    }\r\n  }\r\n});\r\n\r\nAjax.PeriodicalUpdater = Class.create();\r\nAjax.PeriodicalUpdater.prototype = Object.extend(new Ajax.Base(), {\r\n  initialize: function(container, url, options) {\r\n    this.setOptions(options);\r\n    this.onComplete = this.options.onComplete;\r\n\r\n    this.frequency = (this.options.frequency || 2);\r\n    this.decay = 1;\r\n\r\n    this.updater = {};\r\n    this.container = container;\r\n    this.url = url;\r\n\r\n    this.start();\r\n  },\r\n\r\n  start: function() {\r\n    this.options.onComplete = this.updateComplete.bind(this);\r\n    this.onTimerEvent();\r\n  },\r\n\r\n  stop: function() {\r\n    this.updater.onComplete = undefined;\r\n    clearTimeout(this.timer);\r\n    (this.onComplete || Ajax.emptyFunction).apply(this, arguments);\r\n  },\r\n\r\n  updateComplete: function(request) {\r\n    if (this.options.decay) {\r\n      this.decay = (request.responseText == this.lastText ? \r\n        this.decay * this.options.decay : 1);\r\n\r\n      this.lastText = request.responseText;\r\n    }\r\n    this.timer = setTimeout(this.onTimerEvent.bind(this), \r\n      this.decay * this.frequency * 1000);\r\n  },\r\n\r\n  onTimerEvent: function() {\r\n    this.updater = new Ajax.Updater(this.container, this.url, this.options);\r\n  }\r\n});\r\n\r\ndocument.getElementsByClassName = function(className) {\r\n  var children = document.getElementsByTagName('*') || document.all;\r\n  var elements = new Array();\r\n  \r\n  for (var i = 0; i < children.length; i++) {\r\n    var child = children[i];\r\n    var classNames = child.className.split(' ');\r\n    for (var j = 0; j < classNames.length; j++) {\r\n      if (classNames[j] == className) {\r\n        elements.push(child);\r\n        break;\r\n      }\r\n    }\r\n  }\r\n  \r\n  return elements;\r\n}\r\n\r\n/*--------------------------------------------------------------------------*/\r\n\r\nif (!window.Element) {\r\n  var Element = new Object();\r\n}\r\n\r\nObject.extend(Element, {\r\n  toggle: function() {\r\n    for (var i = 0; i < arguments.length; i++) {\r\n      var element = $(arguments[i]);\r\n      element.style.display = \r\n        (element.style.display == 'none' ? '' : 'none');\r\n    }\r\n  },\r\n\r\n  hide: function() {\r\n    for (var i = 0; i < arguments.length; i++) {\r\n      var element = $(arguments[i]);\r\n      element.style.display = 'none';\r\n    }\r\n  },\r\n\r\n  show: function() {\r\n    for (var i = 0; i < arguments.length; i++) {\r\n      var element = $(arguments[i]);\r\n      element.style.display = '';\r\n    }\r\n  },\r\n\r\n  remove: function(element) {\r\n    element = $(element);\r\n    element.parentNode.removeChild(element);\r\n  },\r\n   \r\n  getHeight: function(element) {\r\n    element = $(element);\r\n    return element.offsetHeight; \r\n  },\r\n\r\n  hasClassName: function(element, className) {\r\n    element = $(element);\r\n    if (!element)\r\n      return;\r\n    var a = element.className.split(' ');\r\n    for (var i = 0; i < a.length; i++) {\r\n      if (a[i] == className)\r\n        return true;\r\n    }\r\n    return false;\r\n  },\r\n\r\n  addClassName: function(element, className) {\r\n    element = $(element);\r\n    Element.removeClassName(element, className);\r\n    element.className += ' ' + className;\r\n  },\r\n\r\n  removeClassName: function(element, className) {\r\n    element = $(element);\r\n    if (!element)\r\n      return;\r\n    var newClassName = '';\r\n    var a = element.className.split(' ');\r\n    for (var i = 0; i < a.length; i++) {\r\n      if (a[i] != className) {\r\n        if (i > 0)\r\n          newClassName += ' ';\r\n        newClassName += a[i];\r\n      }\r\n    }\r\n    element.className = newClassName;\r\n  },\r\n  \r\n  // removes whitespace-only text node children\r\n  cleanWhitespace: function(element) {\r\n    var element = $(element);\r\n    for (var i = 0; i < element.childNodes.length; i++) {\r\n      var node = element.childNodes[i];\r\n      if (node.nodeType == 3 && !/\\S/.test(node.nodeValue)) \r\n        Element.remove(node);\r\n    }\r\n  }\r\n});\r\n\r\nvar Toggle = new Object();\r\nToggle.display = Element.toggle;\r\n\r\n/*--------------------------------------------------------------------------*/\r\n\r\nAbstract.Insertion = function(adjacency) {\r\n  this.adjacency = adjacency;\r\n}\r\n\r\nAbstract.Insertion.prototype = {\r\n  initialize: function(element, content) {\r\n    this.element = $(element);\r\n    this.content = content;\r\n    \r\n    if (this.adjacency && this.element.insertAdjacentHTML) {\r\n      this.element.insertAdjacentHTML(this.adjacency, this.content);\r\n    } else {\r\n      this.range = this.element.ownerDocument.createRange();\r\n      if (this.initializeRange) this.initializeRange();\r\n      this.fragment = this.range.createContextualFragment(this.content);\r\n      this.insertContent();\r\n    }\r\n  }\r\n}\r\n\r\nvar Insertion = new Object();\r\n\r\nInsertion.Before = Class.create();\r\nInsertion.Before.prototype = Object.extend(new Abstract.Insertion('beforeBegin'), {\r\n  initializeRange: function() {\r\n    this.range.setStartBefore(this.element);\r\n  },\r\n  \r\n  insertContent: function() {\r\n    this.element.parentNode.insertBefore(this.fragment, this.element);\r\n  }\r\n});\r\n\r\nInsertion.Top = Class.create();\r\nInsertion.Top.prototype = Object.extend(new Abstract.Insertion('afterBegin'), {\r\n  initializeRange: function() {\r\n    this.range.selectNodeContents(this.element);\r\n    this.range.collapse(true);\r\n  },\r\n  \r\n  insertContent: function() {  \r\n    this.element.insertBefore(this.fragment, this.element.firstChild);\r\n  }\r\n});\r\n\r\nInsertion.Bottom = Class.create();\r\nInsertion.Bottom.prototype = Object.extend(new Abstract.Insertion('beforeEnd'), {\r\n  initializeRange: function() {\r\n    this.range.selectNodeContents(this.element);\r\n    this.range.collapse(this.element);\r\n  },\r\n  \r\n  insertContent: function() {\r\n    this.element.appendChild(this.fragment);\r\n  }\r\n});\r\n\r\nInsertion.After = Class.create();\r\nInsertion.After.prototype = Object.extend(new Abstract.Insertion('afterEnd'), {\r\n  initializeRange: function() {\r\n    this.range.setStartAfter(this.element);\r\n  },\r\n  \r\n  insertContent: function() {\r\n    this.element.parentNode.insertBefore(this.fragment, \r\n      this.element.nextSibling);\r\n  }\r\n});\r\n\r\nvar Field = {\r\n  clear: function() {\r\n    for (var i = 0; i < arguments.length; i++)\r\n      $(arguments[i]).value = '';\r\n  },\r\n\r\n  focus: function(element) {\r\n    $(element).focus();\r\n  },\r\n  \r\n  present: function() {\r\n    for (var i = 0; i < arguments.length; i++)\r\n      if ($(arguments[i]).value == '') return false;\r\n    return true;\r\n  },\r\n  \r\n  select: function(element) {\r\n    $(element).select();\r\n  },\r\n   \r\n  activate: function(element) {\r\n    $(element).focus();\r\n    $(element).select();\r\n  }\r\n}\r\n\r\n/*--------------------------------------------------------------------------*/\r\n\r\nvar Form = {\r\n  serialize: function(form) {\r\n    var elements = Form.getElements($(form));\r\n    var queryComponents = new Array();\r\n    \r\n    for (var i = 0; i < elements.length; i++) {\r\n      var queryComponent = Form.Element.serialize(elements[i]);\r\n      if (queryComponent)\r\n        queryComponents.push(queryComponent);\r\n    }\r\n    \r\n    return queryComponents.join('&');\r\n  },\r\n  \r\n  getElements: function(form) {\r\n    var form = $(form);\r\n    var elements = new Array();\r\n\r\n    for (tagName in Form.Element.Serializers) {\r\n      var tagElements = form.getElementsByTagName(tagName);\r\n      for (var j = 0; j < tagElements.length; j++)\r\n        elements.push(tagElements[j]);\r\n    }\r\n    return elements;\r\n  },\r\n  \r\n  getInputs: function(form, typeName, name) {\r\n    var form = $(form);\r\n    var inputs = form.getElementsByTagName('input');\r\n    \r\n    if (!typeName && !name)\r\n      return inputs;\r\n      \r\n    var matchingInputs = new Array();\r\n    for (var i = 0; i < inputs.length; i++) {\r\n      var input = inputs[i];\r\n      if ((typeName && input.type != typeName) ||\r\n          (name && input.name != name)) \r\n        continue;\r\n      matchingInputs.push(input);\r\n    }\r\n\r\n    return matchingInputs;\r\n  },\r\n\r\n  disable: function(form) {\r\n    var elements = Form.getElements(form);\r\n    for (var i = 0; i < elements.length; i++) {\r\n      var element = elements[i];\r\n      element.blur();\r\n      element.disabled = 'true';\r\n    }\r\n  },\r\n\r\n  enable: function(form) {\r\n    var elements = Form.getElements(form);\r\n    for (var i = 0; i < elements.length; i++) {\r\n      var element = elements[i];\r\n      element.disabled = '';\r\n    }\r\n  },\r\n\r\n  focusFirstElement: function(form) {\r\n    var form = $(form);\r\n    var elements = Form.getElements(form);\r\n    for (var i = 0; i < elements.length; i++) {\r\n      var element = elements[i];\r\n      if (element.type != 'hidden' && !element.disabled) {\r\n        Field.activate(element);\r\n        break;\r\n      }\r\n    }\r\n  },\r\n\r\n  reset: function(form) {\r\n    $(form).reset();\r\n  }\r\n}\r\n\r\nForm.Element = {\r\n  serialize: function(element) {\r\n    var element = $(element);\r\n    var method = element.tagName.toLowerCase();\r\n    var parameter = Form.Element.Serializers[method](element);\r\n    \r\n    if (parameter)\r\n      return encodeURIComponent(parameter[0]) + '=' + \r\n        encodeURIComponent(parameter[1]);                   \r\n  },\r\n  \r\n  getValue: function(element) {\r\n    var element = $(element);\r\n    var method = element.tagName.toLowerCase();\r\n    var parameter = Form.Element.Serializers[method](element);\r\n    \r\n    if (parameter) \r\n      return parameter[1];\r\n  }\r\n}\r\n\r\nForm.Element.Serializers = {\r\n  input: function(element) {\r\n    switch (element.type.toLowerCase()) {\r\n      case 'submit':\r\n      case 'hidden':\r\n      case 'password':\r\n      case 'text':\r\n        return Form.Element.Serializers.textarea(element);\r\n      case 'checkbox':  \r\n      case 'radio':\r\n        return Form.Element.Serializers.inputSelector(element);\r\n    }\r\n    return false;\r\n  },\r\n\r\n  inputSelector: function(element) {\r\n    if (element.checked)\r\n      return [element.name, element.value];\r\n  },\r\n\r\n  textarea: function(element) {\r\n    return [element.name, element.value];\r\n  },\r\n\r\n  select: function(element) {\r\n    var value = '';\r\n    if (element.type == 'select-one') {\r\n      var index = element.selectedIndex;\r\n      if (index >= 0)\r\n        value = element.options[index].value || element.options[index].text;\r\n    } else {\r\n      value = new Array();\r\n      for (var i = 0; i < element.length; i++) {\r\n        var opt = element.options[i];\r\n        if (opt.selected)\r\n          value.push(opt.value || opt.text);\r\n      }\r\n    }\r\n    return [element.name, value];\r\n  }\r\n}\r\n\r\n/*--------------------------------------------------------------------------*/\r\n\r\nvar $F = Form.Element.getValue;\r\n\r\n/*--------------------------------------------------------------------------*/\r\n\r\nAbstract.TimedObserver = function() {}\r\nAbstract.TimedObserver.prototype = {\r\n  initialize: function(element, frequency, callback) {\r\n    this.frequency = frequency;\r\n    this.element   = $(element);\r\n    this.callback  = callback;\r\n    \r\n    this.lastValue = this.getValue();\r\n    this.registerCallback();\r\n  },\r\n  \r\n  registerCallback: function() {\r\n    setInterval(this.onTimerEvent.bind(this), this.frequency * 1000);\r\n  },\r\n  \r\n  onTimerEvent: function() {\r\n    var value = this.getValue();\r\n    if (this.lastValue != value) {\r\n      this.callback(this.element, value);\r\n      this.lastValue = value;\r\n    }\r\n  }\r\n}\r\n\r\nForm.Element.Observer = Class.create();\r\nForm.Element.Observer.prototype = Object.extend(new Abstract.TimedObserver(), {\r\n  getValue: function() {\r\n    return Form.Element.getValue(this.element);\r\n  }\r\n});\r\n\r\nForm.Observer = Class.create();\r\nForm.Observer.prototype = Object.extend(new Abstract.TimedObserver(), {\r\n  getValue: function() {\r\n    return Form.serialize(this.element);\r\n  }\r\n});\r\n\r\n/*--------------------------------------------------------------------------*/\r\n\r\nAbstract.EventObserver = function() {}\r\nAbstract.EventObserver.prototype = {\r\n  initialize: function(element, callback) {\r\n    this.element  = $(element);\r\n    this.callback = callback;\r\n    \r\n    this.lastValue = this.getValue();\r\n    if (this.element.tagName.toLowerCase() == 'form')\r\n      this.registerFormCallbacks();\r\n    else\r\n      this.registerCallback(this.element);\r\n  },\r\n  \r\n  onElementEvent: function() {\r\n    var value = this.getValue();\r\n    if (this.lastValue != value) {\r\n      this.callback(this.element, value);\r\n      this.lastValue = value;\r\n    }\r\n  },\r\n  \r\n  registerFormCallbacks: function() {\r\n    var elements = Form.getElements(this.element);\r\n    for (var i = 0; i < elements.length; i++)\r\n      this.registerCallback(elements[i]);\r\n  },\r\n  \r\n  registerCallback: function(element) {\r\n    if (element.type) {\r\n      switch (element.type.toLowerCase()) {\r\n        case 'checkbox':  \r\n        case 'radio':\r\n          element.target = this;\r\n          element.prev_onclick = element.onclick || Prototype.emptyFunction;\r\n          element.onclick = function() {\r\n            this.prev_onclick(); \r\n            this.target.onElementEvent();\r\n          }\r\n          break;\r\n        case 'password':\r\n        case 'text':\r\n        case 'textarea':\r\n        case 'select-one':\r\n        case 'select-multiple':\r\n          element.target = this;\r\n          element.prev_onchange = element.onchange || Prototype.emptyFunction;\r\n          element.onchange = function() {\r\n            this.prev_onchange(); \r\n            this.target.onElementEvent();\r\n          }\r\n          break;\r\n      }\r\n    }    \r\n  }\r\n}\r\n\r\nForm.Element.EventObserver = Class.create();\r\nForm.Element.EventObserver.prototype = Object.extend(new Abstract.EventObserver(), {\r\n  getValue: function() {\r\n    return Form.Element.getValue(this.element);\r\n  }\r\n});\r\n\r\nForm.EventObserver = Class.create();\r\nForm.EventObserver.prototype = Object.extend(new Abstract.EventObserver(), {\r\n  getValue: function() {\r\n    return Form.serialize(this.element);\r\n  }\r\n});\r\n\r\n\r\nif (!window.Event) {\r\n  var Event = new Object();\r\n}\r\n\r\nObject.extend(Event, {\r\n  KEY_BACKSPACE: 8,\r\n  KEY_TAB:       9,\r\n  KEY_RETURN:   13,\r\n  KEY_ESC:      27,\r\n  KEY_LEFT:     37,\r\n  KEY_UP:       38,\r\n  KEY_RIGHT:    39,\r\n  KEY_DOWN:     40,\r\n  KEY_DELETE:   46,\r\n\r\n  element: function(event) {\r\n    return event.target || event.srcElement;\r\n  },\r\n\r\n  isLeftClick: function(event) {\r\n    return (((event.which) && (event.which == 1)) ||\r\n            ((event.button) && (event.button == 1)));\r\n  },\r\n\r\n  pointerX: function(event) {\r\n    return event.pageX || (event.clientX + \r\n      (document.documentElement.scrollLeft || document.body.scrollLeft));\r\n  },\r\n\r\n  pointerY: function(event) {\r\n    return event.pageY || (event.clientY + \r\n      (document.documentElement.scrollTop || document.body.scrollTop));\r\n  },\r\n\r\n  stop: function(event) {\r\n    if (event.preventDefault) { \r\n      event.preventDefault(); \r\n      event.stopPropagation(); \r\n    } else {\r\n      event.returnValue = false;\r\n    }\r\n  },\r\n\r\n  // find the first node with the given tagName, starting from the\r\n  // node the event was triggered on; traverses the DOM upwards\r\n  findElement: function(event, tagName) {\r\n    var element = Event.element(event);\r\n    while (element.parentNode && (!element.tagName ||\r\n        (element.tagName.toUpperCase() != tagName.toUpperCase())))\r\n      element = element.parentNode;\r\n    return element;\r\n  },\r\n\r\n  observers: false,\r\n  \r\n  _observeAndCache: function(element, name, observer, useCapture) {\r\n    if (!this.observers) this.observers = [];\r\n    if (element.addEventListener) {\r\n      this.observers.push([element, name, observer, useCapture]);\r\n      element.addEventListener(name, observer, useCapture);\r\n    } else if (element.attachEvent) {\r\n      this.observers.push([element, name, observer, useCapture]);\r\n      element.attachEvent('on' + name, observer);\r\n    }\r\n  },\r\n  \r\n  unloadCache: function() {\r\n    if (!Event.observers) return;\r\n    for (var i = 0; i < Event.observers.length; i++) {\r\n      Event.stopObserving.apply(this, Event.observers[i]);\r\n      Event.observers[i][0] = null;\r\n    }\r\n    Event.observers = false;\r\n  },\r\n\r\n  observe: function(element, name, observer, useCapture) {\r\n    var element = $(element);\r\n    useCapture = useCapture || false;\r\n    \r\n    if (name == 'keypress' &&\r\n        ((navigator.appVersion.indexOf('AppleWebKit') > 0) \r\n        || element.attachEvent))\r\n      name = 'keydown';\r\n    \r\n    this._observeAndCache(element, name, observer, useCapture);\r\n  },\r\n\r\n  stopObserving: function(element, name, observer, useCapture) {\r\n    var element = $(element);\r\n    useCapture = useCapture || false;\r\n    \r\n    if (name == 'keypress' &&\r\n        ((navigator.appVersion.indexOf('AppleWebKit') > 0) \r\n        || element.detachEvent))\r\n      name = 'keydown';\r\n    \r\n    if (element.removeEventListener) {\r\n      element.removeEventListener(name, observer, useCapture);\r\n    } else if (element.detachEvent) {\r\n      element.detachEvent('on' + name, observer);\r\n    }\r\n  }\r\n});\r\n\r\n/* prevent memory leaks in IE */\r\nEvent.observe(window, 'unload', Event.unloadCache, false);\r\n\r\nvar Position = {\r\n\r\n  // set to true if needed, warning: firefox performance problems\r\n  // NOT neeeded for page scrolling, only if draggable contained in\r\n  // scrollable elements\r\n  includeScrollOffsets: false, \r\n\r\n  // must be called before calling withinIncludingScrolloffset, every time the\r\n  // page is scrolled\r\n  prepare: function() {\r\n    this.deltaX =  window.pageXOffset \r\n                || document.documentElement.scrollLeft \r\n                || document.body.scrollLeft \r\n                || 0;\r\n    this.deltaY =  window.pageYOffset \r\n                || document.documentElement.scrollTop \r\n                || document.body.scrollTop \r\n                || 0;\r\n  },\r\n\r\n  realOffset: function(element) {\r\n    var valueT = 0, valueL = 0;\r\n    do {\r\n      valueT += element.scrollTop  || 0;\r\n      valueL += element.scrollLeft || 0; \r\n      element = element.parentNode;\r\n    } while (element);\r\n    return [valueL, valueT];\r\n  },\r\n\r\n  cumulativeOffset: function(element) {\r\n    var valueT = 0, valueL = 0;\r\n    do {\r\n      valueT += element.offsetTop  || 0;\r\n      valueL += element.offsetLeft || 0;\r\n      element = element.offsetParent;\r\n    } while (element);\r\n    return [valueL, valueT];\r\n  },\r\n\r\n  // caches x/y coordinate pair to use with overlap\r\n  within: function(element, x, y) {\r\n    if (this.includeScrollOffsets)\r\n      return this.withinIncludingScrolloffsets(element, x, y);\r\n    this.xcomp = x;\r\n    this.ycomp = y;\r\n    this.offset = this.cumulativeOffset(element);\r\n\r\n    return (y >= this.offset[1] &&\r\n            y <  this.offset[1] + element.offsetHeight &&\r\n            x >= this.offset[0] && \r\n            x <  this.offset[0] + element.offsetWidth);\r\n  },\r\n\r\n  withinIncludingScrolloffsets: function(element, x, y) {\r\n    var offsetcache = this.realOffset(element);\r\n\r\n    this.xcomp = x + offsetcache[0] - this.deltaX;\r\n    this.ycomp = y + offsetcache[1] - this.deltaY;\r\n    this.offset = this.cumulativeOffset(element);\r\n\r\n    return (this.ycomp >= this.offset[1] &&\r\n            this.ycomp <  this.offset[1] + element.offsetHeight &&\r\n            this.xcomp >= this.offset[0] && \r\n            this.xcomp <  this.offset[0] + element.offsetWidth);\r\n  },\r\n\r\n  // within must be called directly before\r\n  overlap: function(mode, element) {  \r\n    if (!mode) return 0;  \r\n    if (mode == 'vertical') \r\n      return ((this.offset[1] + element.offsetHeight) - this.ycomp) / \r\n        element.offsetHeight;\r\n    if (mode == 'horizontal')\r\n      return ((this.offset[0] + element.offsetWidth) - this.xcomp) / \r\n        element.offsetWidth;\r\n  },\r\n\r\n  clone: function(source, target) {\r\n    source = $(source);\r\n    target = $(target);\r\n    target.style.position = 'absolute';\r\n    var offsets = this.cumulativeOffset(source);\r\n    target.style.top    = offsets[1] + 'px';\r\n    target.style.left   = offsets[0] + 'px';\r\n    target.style.width  = source.offsetWidth + 'px';\r\n    target.style.height = source.offsetHeight + 'px';\r\n  }\r\n}\r\n"
  },
  {
    "path": "newscoop/js/scriptaculous/scriptaculous.js",
    "content": "Scriptaculous = {\n  Version: '1.5_pre1',\n  require: function(libraryName) {\n    // inserting via DOM fails in Safari 2.0, so brute force approach\n    document.write('<script type=\"text/javascript\" src=\"'+libraryName+'\"></script>');\n  },\n  load: function() {\n    // fixme: check for prototype version number\n    if(typeof Prototype=='undefined') \n      throw(\"script.aculo.us requires the Prototype JavaScript framework >= 1.4.0\");\n    var scriptTags = document.getElementsByTagName(\"script\");\n    for(var i=0;i<scriptTags.length;i++) {\n      if(scriptTags[i].src && scriptTags[i].src.match(/scriptaculous\\.js$/)) {\n        var path = scriptTags[i].src.replace(/scriptaculous\\.js$/,'');\n        this.require(path + 'util.js');\n        this.require(path + 'effects.js');\n        this.require(path + 'dragdrop.js');\n        this.require(path + 'controls.js');\n      }\n    }\n  }\n}\n\nScriptaculous.load();"
  },
  {
    "path": "newscoop/js/scriptaculous/unittest.js",
    "content": "// Copyright (c) 2005 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us)\n//           (c) 2005 Jon Tirsen (http://www.tirsen.com)\n//           (c) 2005 Michael Schuerig (http://www.schuerig.de/michael/)\n//\n// Permission is hereby granted, free of charge, to any person obtaining\n// a copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to\n// permit persons to whom the Software is furnished to do so, subject to\n// the following conditions:\n// \n// The above copyright notice and this permission notice shall be\n// included in all copies or substantial portions of the Software.\n// \n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n\n// experimental, Firefox-only\nEvent.simulateMouse = function(element, eventName) {\n  var options = Object.extend({\n    pointerX: 0,\n    pointerY: 0,\n    buttons: 0\n  }, arguments[2] || {});\n  var oEvent = document.createEvent(\"MouseEvents\");\n  oEvent.initMouseEvent(eventName, true, true, document.defaultView, \n    options.buttons, options.pointerX, options.pointerY, options.pointerX, options.pointerY, \n    false, false, false, false, 0, $(element));\n  \n  if(this.mark) Element.remove(this.mark);\n  this.mark = document.createElement('div');\n  this.mark.appendChild(document.createTextNode(\" \"));\n  document.body.appendChild(this.mark);\n  this.mark.style.position = 'absolute';\n  this.mark.style.top = options.pointerY + \"px\";\n  this.mark.style.left = options.pointerX + \"px\";\n  this.mark.style.width = \"5px\";\n  this.mark.style.height = \"5px;\";\n  this.mark.style.borderTop = \"1px solid red;\"\n  this.mark.style.borderLeft = \"1px solid red;\"\n  \n  if(this.step)\n    alert('['+new Date().getTime().toString()+'] '+eventName+'/'+Test.Unit.inspect(options));\n  \n  $(element).dispatchEvent(oEvent);\n};\n\n// Note: Due to a fix in Firefox 1.0.5/6 that probably fixed \"too much\", this doesn't work in 1.0.6 or DP2.\n// You need to downgrade to 1.0.4 for now to get this working\n// See https://bugzilla.mozilla.org/show_bug.cgi?id=289940 for the fix that fixed too much\nEvent.simulateKey = function(element, eventName) {\n  var options = Object.extend({\n    ctrlKey: false,\n    altKey: false,\n    shiftKey: false,\n    metaKey: false,\n    keyCode: 0,\n    charCode: 0\n  }, arguments[2] || {});\n\n  var oEvent = document.createEvent(\"KeyEvents\");\n  oEvent.initKeyEvent(eventName, true, true, window, \n    options.ctrlKey, options.altKey, options.shiftKey, options.metaKey,\n    options.keyCode, options.charCode );\n  $(element).dispatchEvent(oEvent);\n};\n\nEvent.simulateKeys = function(element, command) {\n  for(var i=0; i<command.length; i++) {\n    Event.simulateKey(element,'keypress',{charCode:command.charCodeAt(i)});\n  }\n};\n\nTest = {}\nTest.Unit = {};\n\n// security exception workaround\nTest.Unit.inspect = function(obj) {\n  var info = [];\n\n  if(typeof obj==\"string\" || \n     typeof obj==\"number\") {\n    return obj;\n  } else {\n    for(property in obj)\n      if(typeof obj[property]!=\"function\")\n        info.push(property + ' => \"' + obj[property] + '\"');\n  }\n\n  return (\"'\" + obj + \"' #\" + typeof obj + \n    \": {\" + info.join(\", \") + \"}\");\n}\n\nTest.Unit.Logger = Class.create();\nTest.Unit.Logger.prototype = {\n  initialize: function(log) {\n    this.log = $(log);\n    if (this.log) {\n      this._createLogTable();\n    }\n  },\n  start: function(testName) {\n    if (!this.log) return;\n    this.testName = testName;\n    this.lastLogLine = document.createElement('tr');\n    this.statusCell = document.createElement('td');\n    this.nameCell = document.createElement('td');\n    this.nameCell.appendChild(document.createTextNode(testName));\n    this.messageCell = document.createElement('td');\n    this.lastLogLine.appendChild(this.statusCell);\n    this.lastLogLine.appendChild(this.nameCell);\n    this.lastLogLine.appendChild(this.messageCell);\n    this.loglines.appendChild(this.lastLogLine);\n  },\n  finish: function(status, summary) {\n    if (!this.log) return;\n    this.lastLogLine.className = status;\n    this.statusCell.innerHTML = status;\n    this.messageCell.innerHTML = this._toHTML(summary);\n  },\n  message: function(message) {\n    if (!this.log) return;\n    this.messageCell.innerHTML = this._toHTML(message);\n  },\n  summary: function(summary) {\n    if (!this.log) return;\n    this.logsummary.innerHTML = this._toHTML(summary);\n  },\n  _createLogTable: function() {\n    this.log.innerHTML =\n    '<div id=\"logsummary\"></div>' +\n    '<table id=\"logtable\">' +\n    '<thead><tr><th>Status</th><th>Test</th><th>Message</th></tr></thead>' +\n    '<tbody id=\"loglines\"></tbody>' +\n    '</table>';\n    this.logsummary = $('logsummary')\n    this.loglines = $('loglines');\n  },\n  _toHTML: function(txt) {\n    return txt.escapeHTML().replace(/\\n/,\"<br/>\");\n  }\n}\n\nTest.Unit.Runner = Class.create();\nTest.Unit.Runner.prototype = {\n  initialize: function(testcases) {\n    this.options = Object.extend({\n      testLog: 'testlog'\n    }, arguments[1] || {});\n    if (this.options.testLog) {\n      this.options.testLog = $(this.options.testLog) || null;\n    }\n    if(this.options.tests) {\n      this.tests = [];\n      for(var i = 0; i < this.options.tests.length; i++) {\n        if(/^test/.test(this.options.tests[i])) {\n          this.tests.push(new Test.Unit.Testcase(this.options.tests[i], testcases[this.options.tests[i]], testcases[\"setup\"], testcases[\"teardown\"]));\n        }\n      }\n    } else {\n      if (this.options.test) {\n        this.tests = [new Test.Unit.Testcase(this.options.test, testcases[this.options.test], testcases[\"setup\"], testcases[\"teardown\"])];\n      } else {\n        this.tests = [];\n        for(var testcase in testcases) {\n          if(/^test/.test(testcase)) {\n            this.tests.push(new Test.Unit.Testcase(testcase, testcases[testcase], testcases[\"setup\"], testcases[\"teardown\"]));\n          }\n        }\n      }\n    }\n    this.currentTest = 0;\n    this.logger = new Test.Unit.Logger(this.options.testLog);\n    setTimeout(this.runTests.bind(this), 1000);\n  },\n  runTests: function() {\n    var test = this.tests[this.currentTest];\n    if (!test) {\n      // finished!\n      this.logger.summary(this.summary());\n      return;\n    }\n    if(!test.isWaiting) {\n      this.logger.start(test.name);\n    }\n    test.run();\n    if(test.isWaiting) {\n      this.logger.message(\"Waiting for \" + test.timeToWait + \"ms\");\n      setTimeout(this.runTests.bind(this), test.timeToWait || 1000);\n    } else {\n      this.logger.finish(test.status(), test.summary());\n      this.currentTest++;\n      // tail recursive, hopefully the browser will skip the stackframe\n      this.runTests();\n    }\n  },\n  summary: function() {\n    var assertions = 0;\n    var failures = 0;\n    var errors = 0;\n    var messages = [];\n    for(var i=0;i<this.tests.length;i++) {\n      assertions +=   this.tests[i].assertions;\n      failures   +=   this.tests[i].failures;\n      errors     +=   this.tests[i].errors;\n    }\n    return (\n      this.tests.length + \" tests, \" + \n      assertions + \" assertions, \" + \n      failures   + \" failures, \" +\n      errors     + \" errors\");\n  }\n}\n\nTest.Unit.Assertions = Class.create();\nTest.Unit.Assertions.prototype = {\n  initialize: function() {\n    this.assertions = 0;\n    this.failures   = 0;\n    this.errors     = 0;\n    this.messages   = [];\n  },\n  summary: function() {\n    return (\n      this.assertions + \" assertions, \" + \n      this.failures   + \" failures, \" +\n      this.errors     + \" errors\" + \"\\n\" +\n      this.messages.join(\"\\n\"));\n  },\n  pass: function() {\n    this.assertions++;\n  },\n  fail: function(message) {\n    this.failures++;\n    this.messages.push(\"Failure: \" + message);\n  },\n  error: function(error) {\n    this.errors++;\n    this.messages.push(error.name + \": \"+ error.message + \"(\" + Test.Unit.inspect(error) +\")\");\n  },\n  status: function() {\n    if (this.failures > 0) return 'failed';\n    if (this.errors > 0) return 'error';\n    return 'passed';\n  },\n  assert: function(expression) {\n    var message = arguments[1] || 'assert: got \"' + Test.Unit.inspect(expression) + '\"';\n    try { expression ? this.pass() : \n      this.fail(message); }\n    catch(e) { this.error(e); }\n  },\n  assertEqual: function(expected, actual) {\n    var message = arguments[2] || \"assertEqual\";\n    try { (expected == actual) ? this.pass() :\n      this.fail(message + ': expected \"' + Test.Unit.inspect(expected) + \n        '\", actual \"' + Test.Unit.inspect(actual) + '\"'); }\n    catch(e) { this.error(e); }\n  },\n  assertNotEqual: function(expected, actual) {\n    var message = arguments[2] || \"assertNotEqual\";\n    try { (expected != actual) ? this.pass() : \n      this.fail(message + ': got \"' + Test.Unit.inspect(actual) + '\"'); }\n    catch(e) { this.error(e); }\n  },\n  assertNull: function(obj) {\n    var message = arguments[1] || 'assertNull'\n    try { (obj==null) ? this.pass() : \n      this.fail(message + ': got \"' + Test.Unit.inspect(obj) + '\"'); }\n    catch(e) { this.error(e); }\n  },\n  assertHidden: function(element) {\n    var message = arguments[1] || 'assertHidden';\n    this.assertEqual(\"none\", element.style.display, message);\n  },\n  assertNotNull: function(object) {\n    var message = arguments[1] || 'assertNotNull';\n    this.assert(object != null);\n  },\n  assertInstanceOf: function(expected, actual) {\n    var message = arguments[1] || 'assertInstanceOf';\n    this.assert(actual instanceof expected);    \n  },\n  _isVisible: function(element) {\n    element = $(element);\n    if(element == document) return true;\n    this.assertNotNull(element);\n    // if it's not an element (just check parent) may be a text node for example\n    if (element.style && Element.getStyle(element, 'display') == 'none') {\n      return false;\n    } else {\n      return this._isVisible(element.parentNode);\n    }\n    this.assertVisible(element.parentNode);\n  },\n  assertNotVisible: function(element) {\n    this.assert(!this._isVisible(element), Test.Unit.inspect(element) + \" was not hidden and didn't have a hidden parent either\");\n  },\n  assertVisible: function(element) {\n    this.assert(this._isVisible(element), Test.Unit.inspect(element) + \" was not visible\");\n  }\n}\n\nTest.Unit.Testcase = Class.create();\nObject.extend(Object.extend(Test.Unit.Testcase.prototype, Test.Unit.Assertions.prototype), {\n  initialize: function(name, test, setup, teardown) {\n    Test.Unit.Assertions.prototype.initialize.bind(this)();\n    this.name           = name;\n    this.test           = test || function() {};\n    this.setup          = setup || function() {};\n    this.teardown       = teardown || function() {};\n    this.isWaiting      = false;\n    this.timeToWait     = 1000;\n  },\n  wait: function(time, nextPart) {\n    this.isWaiting = true;\n    this.test = nextPart;\n    this.timeToWait = time;\n  },\n  run: function() {\n    try {\n      try {\n        if (!this.isWaiting) this.setup.bind(this)();\n        this.isWaiting = false;\n        this.test.bind(this)();\n      } finally {\n        if(!this.isWaiting) {\n          this.teardown.bind(this)();\n        }\n      }\n    }\n    catch(e) { this.error(e); }\n  }\n});"
  },
  {
    "path": "newscoop/js/scriptaculous/util.js",
    "content": "// small but works-for-me stuff for testing javascripts\n// not ready for \"production\" use\n\nObject.inspect = function(obj) {\n  var info = [];\n  \n  if(typeof obj==\"string\" || \n     typeof obj==\"number\") {\n    return obj;\n  } else {\n    for(property in obj)\n      if(typeof obj[property]!=\"function\")\n        info.push(property + ' => \"' + obj[property] + '\"');\n  }\n  \n  return (\"'\" + obj + \"' #\" + typeof obj + \n    \": {\" + info.join(\", \") + \"}\");\n}\n\n// borrowed from http://www.schuerig.de/michael/javascript/stdext.js\n// Copyright (c) 2005, Michael Schuerig, michael@schuerig.de\n\nArray.flatten = function(array, excludeUndefined) {\n  if (excludeUndefined === undefined) {\n    excludeUndefined = false;\n  }\n  var result = [];\n  var len = array.length;\n  for (var i = 0; i < len; i++) {\n    var el = array[i];\n    if (el instanceof Array) {\n      var flat = el.flatten(excludeUndefined);\n      result = result.concat(flat);\n    } else if (!excludeUndefined || el != undefined) {\n      result.push(el);\n    }\n  }\n  return result;\n};\n\nif (!Array.prototype.flatten) {\n  Array.prototype.flatten = function(excludeUndefined) {\n    return Array.flatten(this, excludeUndefined);\n  }\n}\n\n/*--------------------------------------------------------------------------*/\n\nvar Builder = {\n  node: function(elementName) {\n    var element = document.createElement(elementName);\n\n    // attributes (or text)\n\n    if(arguments[1]) {\n      if(this._isStringOrNumber(arguments[1]) ||\n         (arguments[1] instanceof Array))\n        this._children(element, arguments[1]);\n      else\n        this._attributes(element, arguments[1]);\n    }\n\n    // text, or array of children\n    if(arguments[2])\n      this._children(element, arguments[2]);\n\n     return element;\n  },\n  _text: function(text) {\n     return document.createTextNode(text);\n  },\n  _attributes: function(element, attributes) {\n    for(attribute in attributes)\n      if(this._isStringOrNumber(attributes[attribute]))\n        element.setAttribute(\n          attribute=='className' ? 'class' : attribute,\n          attributes[attribute]);\n  },\n  _children: function(element, children) {\n    if(typeof children=='object') { // array can hold nodes and text\n      children = children.flatten();\n      for(var i = 0; i<children.length; i++)\n        if(typeof children[i]=='object')\n          element.appendChild(children[i]);\n        else\n          if(this._isStringOrNumber(children[i]))\n            element.appendChild(this._text(children[i]));\n    } else\n      if(this._isStringOrNumber(children)) \n         element.appendChild(this._text(children));\n  },\n  _isStringOrNumber: function(param) {\n    return(typeof param=='string' || typeof param=='number');\n  }\n}\n\n/* ------------- element ext -------------- */\n\n// adapted from http://dhtmlkitchen.com/learn/js/setstyle/index4.jsp\n// note: Safari return null on elements with display:none; see http://bugzilla.opendarwin.org/show_bug.cgi?id=4125\n// instead of \"auto\" values returns null so it's easier to use with || constructs\n\nString.prototype.camelize = function() {\n  var oStringList = this.split('-');\n  if(oStringList.length == 1)    \n    return oStringList[0];\n  var ret = this.indexOf(\"-\") == 0 ? \n    oStringList[0].charAt(0).toUpperCase() + oStringList[0].substring(1) : oStringList[0];\n  for(var i = 1, len = oStringList.length; i < len; i++){\n    var s = oStringList[i];\n    ret += s.charAt(0).toUpperCase() + s.substring(1)\n  }\n  return ret;\n}\n\nElement.getStyle = function(element, style) {\n  element = $(element);\n  var value = element.style[style.camelize()];\n  if(!value)\n    if(document.defaultView && document.defaultView.getComputedStyle) {\n      var css = document.defaultView.getComputedStyle(element, null);\n      value = (css!=null) ? css.getPropertyValue(style) : null;\n    } else if(element.currentStyle) {\n      value = element.currentStyle[style.camelize()];  \n    }\n  if(value=='auto') value = null;\n  return value;\n}\n\nElement.makePositioned = function(element) {\n  element = $(element);\n  if(Element.getStyle(element, 'position')=='static')\n    element.style.position = \"relative\";\n}\n\nElement.makeClipping = function(element) {\n  element = $(element);\n  element._overflow = Element.getStyle(element, 'overflow') || 'visible';\n  if(element._overflow!='hidden') element.style.overflow = 'hidden';\n}\n\nElement.undoClipping = function(element) {\n  element = $(element);\n  if(element._overflow!='hidden') element.style.overflow = element._overflow;\n}\n\n/*--------------------------------------------------------------------------*/\n\nPosition.absolutize = function(element) {\n  element = $(element);\n  if(element.style.position=='absolute') return;\n  Position.prepare();\n\n  var offsets = Position.cumulativeOffset(element);\n  var top     = offsets[1];\n  var left    = offsets[0];\n  var width   = element.clientWidth;\n  var height  = element.clientHeight;\n\n  element._originalLeft   = left - parseFloat(element.style.left  || 0);\n  element._originalTop    = top  - parseFloat(element.style.top || 0);\n  element._originalWidth  = element.style.width;\n  element._originalHeight = element.style.height;\n\n  element.style.position = 'absolute';\n  element.style.top    = top + 'px';;\n  element.style.left   = left + 'px';;\n  element.style.width  = width + 'px';;\n  element.style.height = height + 'px';;\n}\n\nPosition.relativize = function(element) {\n  element = $(element);\n  if(element.style.position=='relative') return;\n  Position.prepare();\n\n  element.style.position = 'relative';\n  var top  = parseFloat(element.style.top  || 0) - (element._originalTop || 0);\n  var left = parseFloat(element.style.left || 0) - (element._originalLeft || 0);\n\n  element.style.top    = top + 'px';\n  element.style.left   = left + 'px';\n  element.style.height = element._originalHeight;\n  element.style.width  = element._originalWidth;\n}\n\n/*--------------------------------------------------------------------------*/\n\nElement.Class = {\n    // Element.toggleClass(element, className) toggles the class being on/off\n    // Element.toggleClass(element, className1, className2) toggles between both classes,\n    //   defaulting to className1 if neither exist\n    toggle: function(element, className) {\n      if(Element.Class.has(element, className)) {\n        Element.Class.remove(element, className);\n        if(arguments.length == 3) Element.Class.add(element, arguments[2]);\n      } else {\n        Element.Class.add(element, className);\n        if(arguments.length == 3) Element.Class.remove(element, arguments[2]);\n      }\n    },\n\n    // gets space-delimited classnames of an element as an array\n    get: function(element) {\n      element = $(element);\n      return element.className.split(' ');\n    },\n\n    // functions adapted from original functions by Gavin Kistner\n    remove: function(element) {\n      element = $(element);\n      var regEx;\n      for(var i = 1; i < arguments.length; i++) {\n        regEx = new RegExp(\"^\" + arguments[i] + \"\\\\b\\\\s*|\\\\s*\\\\b\" + arguments[i] + \"\\\\b\", 'g');\n        element.className = element.className.replace(regEx, '')\n      }\n    },\n\n    add: function(element) {\n      element = $(element);\n      for(var i = 1; i < arguments.length; i++) {\n        Element.Class.remove(element, arguments[i]);\n        element.className += (element.className.length > 0 ? ' ' : '') + arguments[i];\n      }\n    },\n\n    // returns true if all given classes exist in said element\n    has: function(element) {\n      element = $(element);\n      if(!element || !element.className) return false;\n      var regEx;\n      for(var i = 1; i < arguments.length; i++) {\n        regEx = new RegExp(\"\\\\b\" + arguments[i] + \"\\\\b\");\n        if(!regEx.test(element.className)) return false;\n      }\n      return true;\n    },\n\n    // expects arrays of strings and/or strings as optional paramters\n    // Element.Class.has_any(element, ['classA','classB','classC'], 'classD')\n    has_any: function(element) {\n      element = $(element);\n      if(!element || !element.className) return false;\n      var regEx;\n      for(var i = 1; i < arguments.length; i++) {\n        if((typeof arguments[i] == 'object') && \n          (arguments[i].constructor == Array)) {\n          for(var j = 0; j < arguments[i].length; j++) {\n            regEx = new RegExp(\"\\\\b\" + arguments[i][j] + \"\\\\b\");\n            if(regEx.test(element.className)) return true;\n          }\n        } else {\n          regEx = new RegExp(\"\\\\b\" + arguments[i] + \"\\\\b\");\n          if(regEx.test(element.className)) return true;\n        }\n      }\n      return false;\n    },\n\n    childrenWith: function(element, className) {\n      var children = $(element).getElementsByTagName('*');\n      var elements = new Array();\n\n      for (var i = 0; i < children.length; i++) {\n        if (Element.Class.has(children[i], className)) {\n          elements.push(children[i]);\n          break;\n        }\n      }\n\n      return elements;\n    }\n}\n"
  },
  {
    "path": "newscoop/js/select2/select2.css",
    "content": "/*\nVersion: 3.4.5 Timestamp: Mon Nov  4 08:22:42 PST 2013\n*/\n.select2-container {\n    margin: 0;\n    position: relative;\n    display: inline-block;\n    /* inline-block for ie7 */\n    zoom: 1;\n    *display: inline;\n    vertical-align: middle;\n}\n\n.select2-container,\n.select2-drop,\n.select2-search,\n.select2-search input {\n  /*\n    Force border-box so that % widths fit the parent\n    container without overlap because of margin/padding.\n\n    More Info : http://www.quirksmode.org/css/box.html\n  */\n  -webkit-box-sizing: border-box; /* webkit */\n     -moz-box-sizing: border-box; /* firefox */\n          box-sizing: border-box; /* css3 */\n}\n\n.select2-container .select2-choice {\n    color: black !important;\n    display: block;\n    height: 26px;\n    padding: 0 0 0 8px;\n    overflow: hidden;\n    position: relative;\n\n    border: 1px solid #aaa;\n    white-space: nowrap;\n    line-height: 26px;\n    color: #444;\n    text-decoration: none;\n\n    border-radius: 4px;\n\n    background-clip: padding-box;\n\n    -webkit-touch-callout: none;\n      -webkit-user-select: none;\n         -moz-user-select: none;\n          -ms-user-select: none;\n              user-select: none;\n\n    background-color: #fff;\n    background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #eee), color-stop(0.5, #fff));\n    background-image: -webkit-linear-gradient(center bottom, #eee 0%, #fff 50%);\n    background-image: -moz-linear-gradient(center bottom, #eee 0%, #fff 50%);\n    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#ffffff', endColorstr = '#eeeeee', GradientType = 0);\n    background-image: linear-gradient(top, #fff 0%, #eee 50%);\n}\n\n.select2-container.select2-drop-above .select2-choice {\n    border-bottom-color: #aaa;\n\n    border-radius: 0 0 4px 4px;\n\n    background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #eee), color-stop(0.9, #fff));\n    background-image: -webkit-linear-gradient(center bottom, #eee 0%, #fff 90%);\n    background-image: -moz-linear-gradient(center bottom, #eee 0%, #fff 90%);\n    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#eeeeee', GradientType=0);\n    background-image: linear-gradient(top, #eee 0%, #fff 90%);\n}\n\n.select2-container.select2-allowclear .select2-choice .select2-chosen {\n    margin-right: 42px;\n}\n\n.select2-container .select2-choice > .select2-chosen {\n    margin-right: 26px;\n    display: block;\n    overflow: hidden;\n\n    white-space: nowrap;\n\n    text-overflow: ellipsis;\n}\n\n.select2-container .select2-choice abbr {\n    display: none;\n    width: 12px;\n    height: 12px;\n    position: absolute;\n    right: 24px;\n    top: 8px;\n\n    font-size: 1px;\n    text-decoration: none;\n\n    border: 0;\n    background: url('select2.png') right top no-repeat;\n    cursor: pointer;\n    outline: 0;\n}\n\n.select2-container.select2-allowclear .select2-choice abbr {\n    display: inline-block;\n}\n\n.select2-container .select2-choice abbr:hover {\n    background-position: right -11px;\n    cursor: pointer;\n}\n\n.select2-drop-mask {\n    border: 0;\n    margin: 0;\n    padding: 0;\n    position: fixed;\n    left: 0;\n    top: 0;\n    min-height: 100%;\n    min-width: 100%;\n    height: auto;\n    width: auto;\n    opacity: 0;\n    z-index: 9998;\n    /* styles required for IE to work */\n    background-color: #fff;\n    filter: alpha(opacity=0);\n}\n\n.select2-drop {\n    width: 100%;\n    margin-top: -1px;\n    position: absolute;\n    z-index: 9999;\n    top: 100%;\n\n    background: #fff;\n    color: #000;\n    border: 1px solid #aaa;\n    border-top: 0;\n\n    border-radius: 0 0 4px 4px;\n\n    -webkit-box-shadow: 0 4px 5px rgba(0, 0, 0, .15);\n            box-shadow: 0 4px 5px rgba(0, 0, 0, .15);\n}\n\n.select2-drop-auto-width {\n    border-top: 1px solid #aaa;\n    width: auto;\n}\n\n.select2-drop-auto-width .select2-search {\n    padding-top: 4px;\n}\n\n.select2-drop.select2-drop-above {\n    margin-top: 1px;\n    border-top: 1px solid #aaa;\n    border-bottom: 0;\n\n    border-radius: 4px 4px 0 0;\n\n    -webkit-box-shadow: 0 -4px 5px rgba(0, 0, 0, .15);\n            box-shadow: 0 -4px 5px rgba(0, 0, 0, .15);\n}\n\n.select2-drop-active {\n    border: 1px solid #5897fb;\n    border-top: none;\n}\n\n.select2-drop.select2-drop-above.select2-drop-active {\n    border-top: 1px solid #5897fb;\n}\n\n.select2-container .select2-choice .select2-arrow {\n    display: inline-block;\n    width: 18px;\n    height: 100%;\n    position: absolute;\n    right: 0;\n    top: 0;\n\n    border-left: 1px solid #aaa;\n    border-radius: 0 4px 4px 0;\n\n    background-clip: padding-box;\n\n    background: #ccc;\n    background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #ccc), color-stop(0.6, #eee));\n    background-image: -webkit-linear-gradient(center bottom, #ccc 0%, #eee 60%);\n    background-image: -moz-linear-gradient(center bottom, #ccc 0%, #eee 60%);\n    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#eeeeee', endColorstr = '#cccccc', GradientType = 0);\n    background-image: linear-gradient(top, #ccc 0%, #eee 60%);\n}\n\n.select2-container .select2-choice .select2-arrow b {\n    display: block;\n    width: 100%;\n    height: 100%;\n    background: url('select2.png') no-repeat 0 1px;\n}\n\n.select2-search {\n    display: inline-block;\n    width: 100%;\n    min-height: 26px;\n    margin: 0;\n    padding-left: 4px;\n    padding-right: 4px;\n\n    position: relative;\n    z-index: 10000;\n\n    white-space: nowrap;\n}\n\n.select2-search input {\n    width: 100%;\n    height: auto !important;\n    min-height: 26px;\n    padding: 4px 20px 4px 5px;\n    margin: 0;\n\n    outline: 0;\n    font-family: sans-serif;\n    font-size: 1em;\n\n    border: 1px solid #aaa;\n    border-radius: 0;\n\n    -webkit-box-shadow: none;\n            box-shadow: none;\n\n    background: #fff url('select2.png') no-repeat 100% -22px;\n    background: url('select2.png') no-repeat 100% -22px, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, #fff), color-stop(0.99, #eee));\n    background: url('select2.png') no-repeat 100% -22px, -webkit-linear-gradient(center bottom, #fff 85%, #eee 99%);\n    background: url('select2.png') no-repeat 100% -22px, -moz-linear-gradient(center bottom, #fff 85%, #eee 99%);\n    background: url('select2.png') no-repeat 100% -22px, linear-gradient(top, #fff 85%, #eee 99%);\n}\n\n.select2-drop.select2-drop-above .select2-search input {\n    margin-top: 4px;\n}\n\n.select2-search input.select2-active {\n    background: #fff url('select2-spinner.gif') no-repeat 100%;\n    background: url('select2-spinner.gif') no-repeat 100%, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, #fff), color-stop(0.99, #eee));\n    background: url('select2-spinner.gif') no-repeat 100%, -webkit-linear-gradient(center bottom, #fff 85%, #eee 99%);\n    background: url('select2-spinner.gif') no-repeat 100%, -moz-linear-gradient(center bottom, #fff 85%, #eee 99%);\n    background: url('select2-spinner.gif') no-repeat 100%, linear-gradient(top, #fff 85%, #eee 99%);\n}\n\n.select2-container-active .select2-choice,\n.select2-container-active .select2-choices {\n    border: 1px solid #5897fb;\n    outline: none;\n\n    -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, .3);\n            box-shadow: 0 0 5px rgba(0, 0, 0, .3);\n}\n\n.select2-dropdown-open .select2-choice {\n    border-bottom-color: transparent;\n    -webkit-box-shadow: 0 1px 0 #fff inset;\n            box-shadow: 0 1px 0 #fff inset;\n\n    border-bottom-left-radius: 0;\n    border-bottom-right-radius: 0;\n\n    background-color: #eee;\n    background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #fff), color-stop(0.5, #eee));\n    background-image: -webkit-linear-gradient(center bottom, #fff 0%, #eee 50%);\n    background-image: -moz-linear-gradient(center bottom, #fff 0%, #eee 50%);\n    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#ffffff', GradientType=0);\n    background-image: linear-gradient(top, #fff 0%, #eee 50%);\n}\n\n.select2-dropdown-open.select2-drop-above .select2-choice,\n.select2-dropdown-open.select2-drop-above .select2-choices {\n    border: 1px solid #5897fb;\n    border-top-color: transparent;\n\n    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff), color-stop(0.5, #eee));\n    background-image: -webkit-linear-gradient(center top, #fff 0%, #eee 50%);\n    background-image: -moz-linear-gradient(center top, #fff 0%, #eee 50%);\n    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#ffffff', GradientType=0);\n    background-image: linear-gradient(bottom, #fff 0%, #eee 50%);\n}\n\n.select2-dropdown-open .select2-choice .select2-arrow {\n    background: transparent;\n    border-left: none;\n    filter: none;\n}\n.select2-dropdown-open .select2-choice .select2-arrow b {\n    background-position: -18px 1px;\n}\n\n/* results */\n.select2-results {\n    max-height: 200px;\n    padding: 0 0 0 4px;\n    margin: 4px 4px 4px 0;\n    position: relative;\n    overflow-x: hidden;\n    overflow-y: auto;\n    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n\n.select2-results ul.select2-result-sub {\n    margin: 0;\n    padding-left: 0;\n}\n\n.select2-results ul.select2-result-sub > li .select2-result-label { padding-left: 20px }\n.select2-results ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 40px }\n.select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 60px }\n.select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 80px }\n.select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 100px }\n.select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 110px }\n.select2-results ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub ul.select2-result-sub > li .select2-result-label { padding-left: 120px }\n\n.select2-results li {\n    list-style: none;\n    display: list-item;\n    background-image: none;\n}\n\n.select2-results li.select2-result-with-children > .select2-result-label {\n    font-weight: bold;\n}\n\n.select2-results .select2-result-label {\n    padding: 3px 7px 4px;\n    margin: 0;\n    cursor: pointer;\n\n    min-height: 1em;\n\n    -webkit-touch-callout: none;\n      -webkit-user-select: none;\n         -moz-user-select: none;\n          -ms-user-select: none;\n              user-select: none;\n}\n\n.select2-results .select2-highlighted {\n    background: #3875d7;\n    color: #fff;\n}\n\n.select2-results li em {\n    background: #feffde;\n    font-style: normal;\n}\n\n.select2-results .select2-highlighted em {\n    background: transparent;\n}\n\n.select2-results .select2-highlighted ul {\n    background: #fff;\n    color: #000;\n}\n\n\n.select2-results .select2-no-results,\n.select2-results .select2-searching,\n.select2-results .select2-selection-limit {\n    background: #f4f4f4;\n    display: list-item;\n}\n\n/*\ndisabled look for disabled choices in the results dropdown\n*/\n.select2-results .select2-disabled.select2-highlighted {\n    color: #666;\n    background: #f4f4f4;\n    display: list-item;\n    cursor: default;\n}\n.select2-results .select2-disabled {\n  background: #f4f4f4;\n  display: list-item;\n  cursor: default;\n}\n\n.select2-results .select2-selected {\n    display: none;\n}\n\n.select2-more-results.select2-active {\n    background: #f4f4f4 url('select2-spinner.gif') no-repeat 100%;\n}\n\n.select2-more-results {\n    background: #f4f4f4;\n    display: list-item;\n}\n\n/* disabled styles */\n\n.select2-container.select2-container-disabled .select2-choice {\n    background-color: #f4f4f4;\n    background-image: none;\n    border: 1px solid #ddd;\n    cursor: default;\n    color:  #999 !important;\n}\n\n.select2-container.select2-container-disabled .select2-choice .select2-arrow {\n    background-color: #f4f4f4;\n    background-image: none;\n    border-left: 0;\n}\n\n.select2-container.select2-container-disabled .select2-choice abbr {\n    display: none;\n}\n\n\n/* multiselect */\n\n.select2-container-multi .select2-choices {\n    height: auto !important;\n    height: 1%;\n    margin: 0;\n    padding: 0;\n    position: relative;\n\n    border: 1px solid #aaa;\n    cursor: text;\n    overflow: hidden;\n\n    background-color: #fff;\n    background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, color-stop(1%, #eee), color-stop(15%, #fff));\n    background-image: -webkit-linear-gradient(top, #eee 1%, #fff 15%);\n    background-image: -moz-linear-gradient(top, #eee 1%, #fff 15%);\n    background-image: linear-gradient(top, #eee 1%, #fff 15%);\n}\n\n.select2-locked {\n  padding: 3px 5px 3px 5px !important;\n}\n\n.select2-container-multi .select2-choices {\n    min-height: 26px;\n}\n\n.select2-container-multi.select2-container-active .select2-choices {\n    border: 1px solid #5897fb;\n    outline: none;\n\n    -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, .3);\n            box-shadow: 0 0 5px rgba(0, 0, 0, .3);\n}\n.select2-container-multi .select2-choices li {\n    float: left;\n    list-style: none;\n}\n.select2-container-multi .select2-choices .select2-search-field {\n    margin: 0;\n    padding: 0;\n    white-space: nowrap;\n}\n\n.select2-container-multi .select2-choices .select2-search-field input {\n    padding: 5px;\n    margin: 1px 0;\n\n    font-family: sans-serif;\n    font-size: 100%;\n    color: #666;\n    outline: 0;\n    border: 0;\n    -webkit-box-shadow: none;\n            box-shadow: none;\n    background: transparent !important;\n}\n\n.select2-container-multi .select2-choices .select2-search-field input.select2-active {\n    background: #fff url('select2-spinner.gif') no-repeat 100% !important;\n}\n\n.select2-default {\n    color: #999 !important;\n}\n\n.select2-container-multi .select2-choices .select2-search-choice {\n    padding: 3px 5px 3px 18px;\n    margin: 3px 0 3px 5px;\n    position: relative;\n\n    line-height: 13px;\n    color: #333;\n    cursor: default;\n    border: 1px solid #aaaaaa;\n\n    border-radius: 3px;\n\n    -webkit-box-shadow: 0 0 2px #fff inset, 0 1px 0 rgba(0, 0, 0, 0.05);\n            box-shadow: 0 0 2px #fff inset, 0 1px 0 rgba(0, 0, 0, 0.05);\n\n    background-clip: padding-box;\n\n    -webkit-touch-callout: none;\n      -webkit-user-select: none;\n         -moz-user-select: none;\n          -ms-user-select: none;\n              user-select: none;\n\n    background-color: #e4e4e4;\n    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#f4f4f4', GradientType=0);\n    background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eee));\n    background-image: -webkit-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%);\n    background-image: -moz-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%);\n    background-image: linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%);\n}\n.select2-container-multi .select2-choices .select2-search-choice .select2-chosen {\n    cursor: default;\n}\n.select2-container-multi .select2-choices .select2-search-choice-focus {\n    background: #d4d4d4;\n}\n\n.select2-search-choice-close {\n    display: block;\n    width: 12px;\n    height: 13px;\n    position: absolute;\n    right: 3px;\n    top: 4px;\n\n    font-size: 1px;\n    outline: none;\n    background: url('select2.png') right top no-repeat;\n}\n\n.select2-container-multi .select2-search-choice-close {\n    left: 3px;\n}\n\n.select2-container-multi .select2-choices .select2-search-choice .select2-search-choice-close:hover {\n  background-position: right -11px;\n}\n.select2-container-multi .select2-choices .select2-search-choice-focus .select2-search-choice-close {\n    background-position: right -11px;\n}\n\n/* disabled styles */\n.select2-container-multi.select2-container-disabled .select2-choices {\n    background-color: #f4f4f4;\n    background-image: none;\n    border: 1px solid #ddd;\n    cursor: default;\n}\n\n.select2-container-multi.select2-container-disabled .select2-choices .select2-search-choice {\n    padding: 3px 5px 3px 5px;\n    border: 1px solid #ddd;\n    background-image: none;\n    background-color: #f4f4f4;\n}\n\n.select2-container-multi.select2-container-disabled .select2-choices .select2-search-choice .select2-search-choice-close {    display: none;\n    background: none;\n}\n/* end multiselect */\n\n\n.select2-result-selectable .select2-match,\n.select2-result-unselectable .select2-match {\n    text-decoration: underline;\n}\n\n.select2-offscreen, .select2-offscreen:focus {\n    clip: rect(0 0 0 0) !important;\n    width: 1px !important;\n    height: 1px !important;\n    border: 0 !important;\n    margin: 0 !important;\n    padding: 0 !important;\n    overflow: hidden !important;\n    position: absolute !important;\n    outline: 0 !important;\n    left: 0px !important;\n    top: 0px !important;\n}\n\n.select2-display-none {\n    display: none;\n}\n\n.select2-measure-scrollbar {\n    position: absolute;\n    top: -10000px;\n    left: -10000px;\n    width: 100px;\n    height: 100px;\n    overflow: scroll;\n}\n/* Retina-ize icons */\n\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-resolution: 144dpi)  {\n  .select2-search input, .select2-search-choice-close, .select2-container .select2-choice abbr, .select2-container .select2-choice .select2-arrow b {\n      background-image: url('select2x2.png') !important;\n      background-repeat: no-repeat !important;\n      background-size: 60px 40px !important;\n  }\n  .select2-search input {\n      background-position: 100% -21px !important;\n  }\n}\n"
  },
  {
    "path": "newscoop/js/select2/select2.js",
    "content": "﻿/*\nCopyright 2012 Igor Vaynberg\n\nVersion: 3.4.5 Timestamp: Mon Nov  4 08:22:42 PST 2013\n\nThis software is licensed under the Apache License, Version 2.0 (the \"Apache License\") or the GNU\nGeneral Public License version 2 (the \"GPL License\"). You may choose either license to govern your\nuse of this software only upon the condition that you accept all of the terms of either the Apache\nLicense or the GPL License.\n\nYou may obtain a copy of the Apache License and the GPL License at:\n\n    http://www.apache.org/licenses/LICENSE-2.0\n    http://www.gnu.org/licenses/gpl-2.0.html\n\nUnless required by applicable law or agreed to in writing, software distributed under the\nApache License or the GPL Licesnse is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR\nCONDITIONS OF ANY KIND, either express or implied. See the Apache License and the GPL License for\nthe specific language governing permissions and limitations under the Apache License and the GPL License.\n*/\n(function ($) {\n    if(typeof $.fn.each2 == \"undefined\") {\n        $.extend($.fn, {\n            /*\n            * 4-10 times faster .each replacement\n            * use it carefully, as it overrides jQuery context of element on each iteration\n            */\n            each2 : function (c) {\n                var j = $([0]), i = -1, l = this.length;\n                while (\n                    ++i < l\n                    && (j.context = j[0] = this[i])\n                    && c.call(j[0], i, j) !== false //\"this\"=DOM, i=index, j=jQuery object\n                );\n                return this;\n            }\n        });\n    }\n})(jQuery);\n\n(function ($, undefined) {\n    \"use strict\";\n    /*global document, window, jQuery, console */\n\n    if (window.Select2 !== undefined) {\n        return;\n    }\n\n    var KEY, AbstractSelect2, SingleSelect2, MultiSelect2, nextUid, sizer,\n        lastMousePosition={x:0,y:0}, $document, scrollBarDimensions,\n\n    KEY = {\n        TAB: 9,\n        ENTER: 13,\n        ESC: 27,\n        SPACE: 32,\n        LEFT: 37,\n        UP: 38,\n        RIGHT: 39,\n        DOWN: 40,\n        SHIFT: 16,\n        CTRL: 17,\n        ALT: 18,\n        PAGE_UP: 33,\n        PAGE_DOWN: 34,\n        HOME: 36,\n        END: 35,\n        BACKSPACE: 8,\n        DELETE: 46,\n        isArrow: function (k) {\n            k = k.which ? k.which : k;\n            switch (k) {\n            case KEY.LEFT:\n            case KEY.RIGHT:\n            case KEY.UP:\n            case KEY.DOWN:\n                return true;\n            }\n            return false;\n        },\n        isControl: function (e) {\n            var k = e.which;\n            switch (k) {\n            case KEY.SHIFT:\n            case KEY.CTRL:\n            case KEY.ALT:\n                return true;\n            }\n\n            if (e.metaKey) return true;\n\n            return false;\n        },\n        isFunctionKey: function (k) {\n            k = k.which ? k.which : k;\n            return k >= 112 && k <= 123;\n        }\n    },\n    MEASURE_SCROLLBAR_TEMPLATE = \"<div class='select2-measure-scrollbar'></div>\",\n\n    DIACRITICS = {\"\\u24B6\":\"A\",\"\\uFF21\":\"A\",\"\\u00C0\":\"A\",\"\\u00C1\":\"A\",\"\\u00C2\":\"A\",\"\\u1EA6\":\"A\",\"\\u1EA4\":\"A\",\"\\u1EAA\":\"A\",\"\\u1EA8\":\"A\",\"\\u00C3\":\"A\",\"\\u0100\":\"A\",\"\\u0102\":\"A\",\"\\u1EB0\":\"A\",\"\\u1EAE\":\"A\",\"\\u1EB4\":\"A\",\"\\u1EB2\":\"A\",\"\\u0226\":\"A\",\"\\u01E0\":\"A\",\"\\u00C4\":\"A\",\"\\u01DE\":\"A\",\"\\u1EA2\":\"A\",\"\\u00C5\":\"A\",\"\\u01FA\":\"A\",\"\\u01CD\":\"A\",\"\\u0200\":\"A\",\"\\u0202\":\"A\",\"\\u1EA0\":\"A\",\"\\u1EAC\":\"A\",\"\\u1EB6\":\"A\",\"\\u1E00\":\"A\",\"\\u0104\":\"A\",\"\\u023A\":\"A\",\"\\u2C6F\":\"A\",\"\\uA732\":\"AA\",\"\\u00C6\":\"AE\",\"\\u01FC\":\"AE\",\"\\u01E2\":\"AE\",\"\\uA734\":\"AO\",\"\\uA736\":\"AU\",\"\\uA738\":\"AV\",\"\\uA73A\":\"AV\",\"\\uA73C\":\"AY\",\"\\u24B7\":\"B\",\"\\uFF22\":\"B\",\"\\u1E02\":\"B\",\"\\u1E04\":\"B\",\"\\u1E06\":\"B\",\"\\u0243\":\"B\",\"\\u0182\":\"B\",\"\\u0181\":\"B\",\"\\u24B8\":\"C\",\"\\uFF23\":\"C\",\"\\u0106\":\"C\",\"\\u0108\":\"C\",\"\\u010A\":\"C\",\"\\u010C\":\"C\",\"\\u00C7\":\"C\",\"\\u1E08\":\"C\",\"\\u0187\":\"C\",\"\\u023B\":\"C\",\"\\uA73E\":\"C\",\"\\u24B9\":\"D\",\"\\uFF24\":\"D\",\"\\u1E0A\":\"D\",\"\\u010E\":\"D\",\"\\u1E0C\":\"D\",\"\\u1E10\":\"D\",\"\\u1E12\":\"D\",\"\\u1E0E\":\"D\",\"\\u0110\":\"D\",\"\\u018B\":\"D\",\"\\u018A\":\"D\",\"\\u0189\":\"D\",\"\\uA779\":\"D\",\"\\u01F1\":\"DZ\",\"\\u01C4\":\"DZ\",\"\\u01F2\":\"Dz\",\"\\u01C5\":\"Dz\",\"\\u24BA\":\"E\",\"\\uFF25\":\"E\",\"\\u00C8\":\"E\",\"\\u00C9\":\"E\",\"\\u00CA\":\"E\",\"\\u1EC0\":\"E\",\"\\u1EBE\":\"E\",\"\\u1EC4\":\"E\",\"\\u1EC2\":\"E\",\"\\u1EBC\":\"E\",\"\\u0112\":\"E\",\"\\u1E14\":\"E\",\"\\u1E16\":\"E\",\"\\u0114\":\"E\",\"\\u0116\":\"E\",\"\\u00CB\":\"E\",\"\\u1EBA\":\"E\",\"\\u011A\":\"E\",\"\\u0204\":\"E\",\"\\u0206\":\"E\",\"\\u1EB8\":\"E\",\"\\u1EC6\":\"E\",\"\\u0228\":\"E\",\"\\u1E1C\":\"E\",\"\\u0118\":\"E\",\"\\u1E18\":\"E\",\"\\u1E1A\":\"E\",\"\\u0190\":\"E\",\"\\u018E\":\"E\",\"\\u24BB\":\"F\",\"\\uFF26\":\"F\",\"\\u1E1E\":\"F\",\"\\u0191\":\"F\",\"\\uA77B\":\"F\",\"\\u24BC\":\"G\",\"\\uFF27\":\"G\",\"\\u01F4\":\"G\",\"\\u011C\":\"G\",\"\\u1E20\":\"G\",\"\\u011E\":\"G\",\"\\u0120\":\"G\",\"\\u01E6\":\"G\",\"\\u0122\":\"G\",\"\\u01E4\":\"G\",\"\\u0193\":\"G\",\"\\uA7A0\":\"G\",\"\\uA77D\":\"G\",\"\\uA77E\":\"G\",\"\\u24BD\":\"H\",\"\\uFF28\":\"H\",\"\\u0124\":\"H\",\"\\u1E22\":\"H\",\"\\u1E26\":\"H\",\"\\u021E\":\"H\",\"\\u1E24\":\"H\",\"\\u1E28\":\"H\",\"\\u1E2A\":\"H\",\"\\u0126\":\"H\",\"\\u2C67\":\"H\",\"\\u2C75\":\"H\",\"\\uA78D\":\"H\",\"\\u24BE\":\"I\",\"\\uFF29\":\"I\",\"\\u00CC\":\"I\",\"\\u00CD\":\"I\",\"\\u00CE\":\"I\",\"\\u0128\":\"I\",\"\\u012A\":\"I\",\"\\u012C\":\"I\",\"\\u0130\":\"I\",\"\\u00CF\":\"I\",\"\\u1E2E\":\"I\",\"\\u1EC8\":\"I\",\"\\u01CF\":\"I\",\"\\u0208\":\"I\",\"\\u020A\":\"I\",\"\\u1ECA\":\"I\",\"\\u012E\":\"I\",\"\\u1E2C\":\"I\",\"\\u0197\":\"I\",\"\\u24BF\":\"J\",\"\\uFF2A\":\"J\",\"\\u0134\":\"J\",\"\\u0248\":\"J\",\"\\u24C0\":\"K\",\"\\uFF2B\":\"K\",\"\\u1E30\":\"K\",\"\\u01E8\":\"K\",\"\\u1E32\":\"K\",\"\\u0136\":\"K\",\"\\u1E34\":\"K\",\"\\u0198\":\"K\",\"\\u2C69\":\"K\",\"\\uA740\":\"K\",\"\\uA742\":\"K\",\"\\uA744\":\"K\",\"\\uA7A2\":\"K\",\"\\u24C1\":\"L\",\"\\uFF2C\":\"L\",\"\\u013F\":\"L\",\"\\u0139\":\"L\",\"\\u013D\":\"L\",\"\\u1E36\":\"L\",\"\\u1E38\":\"L\",\"\\u013B\":\"L\",\"\\u1E3C\":\"L\",\"\\u1E3A\":\"L\",\"\\u0141\":\"L\",\"\\u023D\":\"L\",\"\\u2C62\":\"L\",\"\\u2C60\":\"L\",\"\\uA748\":\"L\",\"\\uA746\":\"L\",\"\\uA780\":\"L\",\"\\u01C7\":\"LJ\",\"\\u01C8\":\"Lj\",\"\\u24C2\":\"M\",\"\\uFF2D\":\"M\",\"\\u1E3E\":\"M\",\"\\u1E40\":\"M\",\"\\u1E42\":\"M\",\"\\u2C6E\":\"M\",\"\\u019C\":\"M\",\"\\u24C3\":\"N\",\"\\uFF2E\":\"N\",\"\\u01F8\":\"N\",\"\\u0143\":\"N\",\"\\u00D1\":\"N\",\"\\u1E44\":\"N\",\"\\u0147\":\"N\",\"\\u1E46\":\"N\",\"\\u0145\":\"N\",\"\\u1E4A\":\"N\",\"\\u1E48\":\"N\",\"\\u0220\":\"N\",\"\\u019D\":\"N\",\"\\uA790\":\"N\",\"\\uA7A4\":\"N\",\"\\u01CA\":\"NJ\",\"\\u01CB\":\"Nj\",\"\\u24C4\":\"O\",\"\\uFF2F\":\"O\",\"\\u00D2\":\"O\",\"\\u00D3\":\"O\",\"\\u00D4\":\"O\",\"\\u1ED2\":\"O\",\"\\u1ED0\":\"O\",\"\\u1ED6\":\"O\",\"\\u1ED4\":\"O\",\"\\u00D5\":\"O\",\"\\u1E4C\":\"O\",\"\\u022C\":\"O\",\"\\u1E4E\":\"O\",\"\\u014C\":\"O\",\"\\u1E50\":\"O\",\"\\u1E52\":\"O\",\"\\u014E\":\"O\",\"\\u022E\":\"O\",\"\\u0230\":\"O\",\"\\u00D6\":\"O\",\"\\u022A\":\"O\",\"\\u1ECE\":\"O\",\"\\u0150\":\"O\",\"\\u01D1\":\"O\",\"\\u020C\":\"O\",\"\\u020E\":\"O\",\"\\u01A0\":\"O\",\"\\u1EDC\":\"O\",\"\\u1EDA\":\"O\",\"\\u1EE0\":\"O\",\"\\u1EDE\":\"O\",\"\\u1EE2\":\"O\",\"\\u1ECC\":\"O\",\"\\u1ED8\":\"O\",\"\\u01EA\":\"O\",\"\\u01EC\":\"O\",\"\\u00D8\":\"O\",\"\\u01FE\":\"O\",\"\\u0186\":\"O\",\"\\u019F\":\"O\",\"\\uA74A\":\"O\",\"\\uA74C\":\"O\",\"\\u01A2\":\"OI\",\"\\uA74E\":\"OO\",\"\\u0222\":\"OU\",\"\\u24C5\":\"P\",\"\\uFF30\":\"P\",\"\\u1E54\":\"P\",\"\\u1E56\":\"P\",\"\\u01A4\":\"P\",\"\\u2C63\":\"P\",\"\\uA750\":\"P\",\"\\uA752\":\"P\",\"\\uA754\":\"P\",\"\\u24C6\":\"Q\",\"\\uFF31\":\"Q\",\"\\uA756\":\"Q\",\"\\uA758\":\"Q\",\"\\u024A\":\"Q\",\"\\u24C7\":\"R\",\"\\uFF32\":\"R\",\"\\u0154\":\"R\",\"\\u1E58\":\"R\",\"\\u0158\":\"R\",\"\\u0210\":\"R\",\"\\u0212\":\"R\",\"\\u1E5A\":\"R\",\"\\u1E5C\":\"R\",\"\\u0156\":\"R\",\"\\u1E5E\":\"R\",\"\\u024C\":\"R\",\"\\u2C64\":\"R\",\"\\uA75A\":\"R\",\"\\uA7A6\":\"R\",\"\\uA782\":\"R\",\"\\u24C8\":\"S\",\"\\uFF33\":\"S\",\"\\u1E9E\":\"S\",\"\\u015A\":\"S\",\"\\u1E64\":\"S\",\"\\u015C\":\"S\",\"\\u1E60\":\"S\",\"\\u0160\":\"S\",\"\\u1E66\":\"S\",\"\\u1E62\":\"S\",\"\\u1E68\":\"S\",\"\\u0218\":\"S\",\"\\u015E\":\"S\",\"\\u2C7E\":\"S\",\"\\uA7A8\":\"S\",\"\\uA784\":\"S\",\"\\u24C9\":\"T\",\"\\uFF34\":\"T\",\"\\u1E6A\":\"T\",\"\\u0164\":\"T\",\"\\u1E6C\":\"T\",\"\\u021A\":\"T\",\"\\u0162\":\"T\",\"\\u1E70\":\"T\",\"\\u1E6E\":\"T\",\"\\u0166\":\"T\",\"\\u01AC\":\"T\",\"\\u01AE\":\"T\",\"\\u023E\":\"T\",\"\\uA786\":\"T\",\"\\uA728\":\"TZ\",\"\\u24CA\":\"U\",\"\\uFF35\":\"U\",\"\\u00D9\":\"U\",\"\\u00DA\":\"U\",\"\\u00DB\":\"U\",\"\\u0168\":\"U\",\"\\u1E78\":\"U\",\"\\u016A\":\"U\",\"\\u1E7A\":\"U\",\"\\u016C\":\"U\",\"\\u00DC\":\"U\",\"\\u01DB\":\"U\",\"\\u01D7\":\"U\",\"\\u01D5\":\"U\",\"\\u01D9\":\"U\",\"\\u1EE6\":\"U\",\"\\u016E\":\"U\",\"\\u0170\":\"U\",\"\\u01D3\":\"U\",\"\\u0214\":\"U\",\"\\u0216\":\"U\",\"\\u01AF\":\"U\",\"\\u1EEA\":\"U\",\"\\u1EE8\":\"U\",\"\\u1EEE\":\"U\",\"\\u1EEC\":\"U\",\"\\u1EF0\":\"U\",\"\\u1EE4\":\"U\",\"\\u1E72\":\"U\",\"\\u0172\":\"U\",\"\\u1E76\":\"U\",\"\\u1E74\":\"U\",\"\\u0244\":\"U\",\"\\u24CB\":\"V\",\"\\uFF36\":\"V\",\"\\u1E7C\":\"V\",\"\\u1E7E\":\"V\",\"\\u01B2\":\"V\",\"\\uA75E\":\"V\",\"\\u0245\":\"V\",\"\\uA760\":\"VY\",\"\\u24CC\":\"W\",\"\\uFF37\":\"W\",\"\\u1E80\":\"W\",\"\\u1E82\":\"W\",\"\\u0174\":\"W\",\"\\u1E86\":\"W\",\"\\u1E84\":\"W\",\"\\u1E88\":\"W\",\"\\u2C72\":\"W\",\"\\u24CD\":\"X\",\"\\uFF38\":\"X\",\"\\u1E8A\":\"X\",\"\\u1E8C\":\"X\",\"\\u24CE\":\"Y\",\"\\uFF39\":\"Y\",\"\\u1EF2\":\"Y\",\"\\u00DD\":\"Y\",\"\\u0176\":\"Y\",\"\\u1EF8\":\"Y\",\"\\u0232\":\"Y\",\"\\u1E8E\":\"Y\",\"\\u0178\":\"Y\",\"\\u1EF6\":\"Y\",\"\\u1EF4\":\"Y\",\"\\u01B3\":\"Y\",\"\\u024E\":\"Y\",\"\\u1EFE\":\"Y\",\"\\u24CF\":\"Z\",\"\\uFF3A\":\"Z\",\"\\u0179\":\"Z\",\"\\u1E90\":\"Z\",\"\\u017B\":\"Z\",\"\\u017D\":\"Z\",\"\\u1E92\":\"Z\",\"\\u1E94\":\"Z\",\"\\u01B5\":\"Z\",\"\\u0224\":\"Z\",\"\\u2C7F\":\"Z\",\"\\u2C6B\":\"Z\",\"\\uA762\":\"Z\",\"\\u24D0\":\"a\",\"\\uFF41\":\"a\",\"\\u1E9A\":\"a\",\"\\u00E0\":\"a\",\"\\u00E1\":\"a\",\"\\u00E2\":\"a\",\"\\u1EA7\":\"a\",\"\\u1EA5\":\"a\",\"\\u1EAB\":\"a\",\"\\u1EA9\":\"a\",\"\\u00E3\":\"a\",\"\\u0101\":\"a\",\"\\u0103\":\"a\",\"\\u1EB1\":\"a\",\"\\u1EAF\":\"a\",\"\\u1EB5\":\"a\",\"\\u1EB3\":\"a\",\"\\u0227\":\"a\",\"\\u01E1\":\"a\",\"\\u00E4\":\"a\",\"\\u01DF\":\"a\",\"\\u1EA3\":\"a\",\"\\u00E5\":\"a\",\"\\u01FB\":\"a\",\"\\u01CE\":\"a\",\"\\u0201\":\"a\",\"\\u0203\":\"a\",\"\\u1EA1\":\"a\",\"\\u1EAD\":\"a\",\"\\u1EB7\":\"a\",\"\\u1E01\":\"a\",\"\\u0105\":\"a\",\"\\u2C65\":\"a\",\"\\u0250\":\"a\",\"\\uA733\":\"aa\",\"\\u00E6\":\"ae\",\"\\u01FD\":\"ae\",\"\\u01E3\":\"ae\",\"\\uA735\":\"ao\",\"\\uA737\":\"au\",\"\\uA739\":\"av\",\"\\uA73B\":\"av\",\"\\uA73D\":\"ay\",\"\\u24D1\":\"b\",\"\\uFF42\":\"b\",\"\\u1E03\":\"b\",\"\\u1E05\":\"b\",\"\\u1E07\":\"b\",\"\\u0180\":\"b\",\"\\u0183\":\"b\",\"\\u0253\":\"b\",\"\\u24D2\":\"c\",\"\\uFF43\":\"c\",\"\\u0107\":\"c\",\"\\u0109\":\"c\",\"\\u010B\":\"c\",\"\\u010D\":\"c\",\"\\u00E7\":\"c\",\"\\u1E09\":\"c\",\"\\u0188\":\"c\",\"\\u023C\":\"c\",\"\\uA73F\":\"c\",\"\\u2184\":\"c\",\"\\u24D3\":\"d\",\"\\uFF44\":\"d\",\"\\u1E0B\":\"d\",\"\\u010F\":\"d\",\"\\u1E0D\":\"d\",\"\\u1E11\":\"d\",\"\\u1E13\":\"d\",\"\\u1E0F\":\"d\",\"\\u0111\":\"d\",\"\\u018C\":\"d\",\"\\u0256\":\"d\",\"\\u0257\":\"d\",\"\\uA77A\":\"d\",\"\\u01F3\":\"dz\",\"\\u01C6\":\"dz\",\"\\u24D4\":\"e\",\"\\uFF45\":\"e\",\"\\u00E8\":\"e\",\"\\u00E9\":\"e\",\"\\u00EA\":\"e\",\"\\u1EC1\":\"e\",\"\\u1EBF\":\"e\",\"\\u1EC5\":\"e\",\"\\u1EC3\":\"e\",\"\\u1EBD\":\"e\",\"\\u0113\":\"e\",\"\\u1E15\":\"e\",\"\\u1E17\":\"e\",\"\\u0115\":\"e\",\"\\u0117\":\"e\",\"\\u00EB\":\"e\",\"\\u1EBB\":\"e\",\"\\u011B\":\"e\",\"\\u0205\":\"e\",\"\\u0207\":\"e\",\"\\u1EB9\":\"e\",\"\\u1EC7\":\"e\",\"\\u0229\":\"e\",\"\\u1E1D\":\"e\",\"\\u0119\":\"e\",\"\\u1E19\":\"e\",\"\\u1E1B\":\"e\",\"\\u0247\":\"e\",\"\\u025B\":\"e\",\"\\u01DD\":\"e\",\"\\u24D5\":\"f\",\"\\uFF46\":\"f\",\"\\u1E1F\":\"f\",\"\\u0192\":\"f\",\"\\uA77C\":\"f\",\"\\u24D6\":\"g\",\"\\uFF47\":\"g\",\"\\u01F5\":\"g\",\"\\u011D\":\"g\",\"\\u1E21\":\"g\",\"\\u011F\":\"g\",\"\\u0121\":\"g\",\"\\u01E7\":\"g\",\"\\u0123\":\"g\",\"\\u01E5\":\"g\",\"\\u0260\":\"g\",\"\\uA7A1\":\"g\",\"\\u1D79\":\"g\",\"\\uA77F\":\"g\",\"\\u24D7\":\"h\",\"\\uFF48\":\"h\",\"\\u0125\":\"h\",\"\\u1E23\":\"h\",\"\\u1E27\":\"h\",\"\\u021F\":\"h\",\"\\u1E25\":\"h\",\"\\u1E29\":\"h\",\"\\u1E2B\":\"h\",\"\\u1E96\":\"h\",\"\\u0127\":\"h\",\"\\u2C68\":\"h\",\"\\u2C76\":\"h\",\"\\u0265\":\"h\",\"\\u0195\":\"hv\",\"\\u24D8\":\"i\",\"\\uFF49\":\"i\",\"\\u00EC\":\"i\",\"\\u00ED\":\"i\",\"\\u00EE\":\"i\",\"\\u0129\":\"i\",\"\\u012B\":\"i\",\"\\u012D\":\"i\",\"\\u00EF\":\"i\",\"\\u1E2F\":\"i\",\"\\u1EC9\":\"i\",\"\\u01D0\":\"i\",\"\\u0209\":\"i\",\"\\u020B\":\"i\",\"\\u1ECB\":\"i\",\"\\u012F\":\"i\",\"\\u1E2D\":\"i\",\"\\u0268\":\"i\",\"\\u0131\":\"i\",\"\\u24D9\":\"j\",\"\\uFF4A\":\"j\",\"\\u0135\":\"j\",\"\\u01F0\":\"j\",\"\\u0249\":\"j\",\"\\u24DA\":\"k\",\"\\uFF4B\":\"k\",\"\\u1E31\":\"k\",\"\\u01E9\":\"k\",\"\\u1E33\":\"k\",\"\\u0137\":\"k\",\"\\u1E35\":\"k\",\"\\u0199\":\"k\",\"\\u2C6A\":\"k\",\"\\uA741\":\"k\",\"\\uA743\":\"k\",\"\\uA745\":\"k\",\"\\uA7A3\":\"k\",\"\\u24DB\":\"l\",\"\\uFF4C\":\"l\",\"\\u0140\":\"l\",\"\\u013A\":\"l\",\"\\u013E\":\"l\",\"\\u1E37\":\"l\",\"\\u1E39\":\"l\",\"\\u013C\":\"l\",\"\\u1E3D\":\"l\",\"\\u1E3B\":\"l\",\"\\u017F\":\"l\",\"\\u0142\":\"l\",\"\\u019A\":\"l\",\"\\u026B\":\"l\",\"\\u2C61\":\"l\",\"\\uA749\":\"l\",\"\\uA781\":\"l\",\"\\uA747\":\"l\",\"\\u01C9\":\"lj\",\"\\u24DC\":\"m\",\"\\uFF4D\":\"m\",\"\\u1E3F\":\"m\",\"\\u1E41\":\"m\",\"\\u1E43\":\"m\",\"\\u0271\":\"m\",\"\\u026F\":\"m\",\"\\u24DD\":\"n\",\"\\uFF4E\":\"n\",\"\\u01F9\":\"n\",\"\\u0144\":\"n\",\"\\u00F1\":\"n\",\"\\u1E45\":\"n\",\"\\u0148\":\"n\",\"\\u1E47\":\"n\",\"\\u0146\":\"n\",\"\\u1E4B\":\"n\",\"\\u1E49\":\"n\",\"\\u019E\":\"n\",\"\\u0272\":\"n\",\"\\u0149\":\"n\",\"\\uA791\":\"n\",\"\\uA7A5\":\"n\",\"\\u01CC\":\"nj\",\"\\u24DE\":\"o\",\"\\uFF4F\":\"o\",\"\\u00F2\":\"o\",\"\\u00F3\":\"o\",\"\\u00F4\":\"o\",\"\\u1ED3\":\"o\",\"\\u1ED1\":\"o\",\"\\u1ED7\":\"o\",\"\\u1ED5\":\"o\",\"\\u00F5\":\"o\",\"\\u1E4D\":\"o\",\"\\u022D\":\"o\",\"\\u1E4F\":\"o\",\"\\u014D\":\"o\",\"\\u1E51\":\"o\",\"\\u1E53\":\"o\",\"\\u014F\":\"o\",\"\\u022F\":\"o\",\"\\u0231\":\"o\",\"\\u00F6\":\"o\",\"\\u022B\":\"o\",\"\\u1ECF\":\"o\",\"\\u0151\":\"o\",\"\\u01D2\":\"o\",\"\\u020D\":\"o\",\"\\u020F\":\"o\",\"\\u01A1\":\"o\",\"\\u1EDD\":\"o\",\"\\u1EDB\":\"o\",\"\\u1EE1\":\"o\",\"\\u1EDF\":\"o\",\"\\u1EE3\":\"o\",\"\\u1ECD\":\"o\",\"\\u1ED9\":\"o\",\"\\u01EB\":\"o\",\"\\u01ED\":\"o\",\"\\u00F8\":\"o\",\"\\u01FF\":\"o\",\"\\u0254\":\"o\",\"\\uA74B\":\"o\",\"\\uA74D\":\"o\",\"\\u0275\":\"o\",\"\\u01A3\":\"oi\",\"\\u0223\":\"ou\",\"\\uA74F\":\"oo\",\"\\u24DF\":\"p\",\"\\uFF50\":\"p\",\"\\u1E55\":\"p\",\"\\u1E57\":\"p\",\"\\u01A5\":\"p\",\"\\u1D7D\":\"p\",\"\\uA751\":\"p\",\"\\uA753\":\"p\",\"\\uA755\":\"p\",\"\\u24E0\":\"q\",\"\\uFF51\":\"q\",\"\\u024B\":\"q\",\"\\uA757\":\"q\",\"\\uA759\":\"q\",\"\\u24E1\":\"r\",\"\\uFF52\":\"r\",\"\\u0155\":\"r\",\"\\u1E59\":\"r\",\"\\u0159\":\"r\",\"\\u0211\":\"r\",\"\\u0213\":\"r\",\"\\u1E5B\":\"r\",\"\\u1E5D\":\"r\",\"\\u0157\":\"r\",\"\\u1E5F\":\"r\",\"\\u024D\":\"r\",\"\\u027D\":\"r\",\"\\uA75B\":\"r\",\"\\uA7A7\":\"r\",\"\\uA783\":\"r\",\"\\u24E2\":\"s\",\"\\uFF53\":\"s\",\"\\u00DF\":\"s\",\"\\u015B\":\"s\",\"\\u1E65\":\"s\",\"\\u015D\":\"s\",\"\\u1E61\":\"s\",\"\\u0161\":\"s\",\"\\u1E67\":\"s\",\"\\u1E63\":\"s\",\"\\u1E69\":\"s\",\"\\u0219\":\"s\",\"\\u015F\":\"s\",\"\\u023F\":\"s\",\"\\uA7A9\":\"s\",\"\\uA785\":\"s\",\"\\u1E9B\":\"s\",\"\\u24E3\":\"t\",\"\\uFF54\":\"t\",\"\\u1E6B\":\"t\",\"\\u1E97\":\"t\",\"\\u0165\":\"t\",\"\\u1E6D\":\"t\",\"\\u021B\":\"t\",\"\\u0163\":\"t\",\"\\u1E71\":\"t\",\"\\u1E6F\":\"t\",\"\\u0167\":\"t\",\"\\u01AD\":\"t\",\"\\u0288\":\"t\",\"\\u2C66\":\"t\",\"\\uA787\":\"t\",\"\\uA729\":\"tz\",\"\\u24E4\":\"u\",\"\\uFF55\":\"u\",\"\\u00F9\":\"u\",\"\\u00FA\":\"u\",\"\\u00FB\":\"u\",\"\\u0169\":\"u\",\"\\u1E79\":\"u\",\"\\u016B\":\"u\",\"\\u1E7B\":\"u\",\"\\u016D\":\"u\",\"\\u00FC\":\"u\",\"\\u01DC\":\"u\",\"\\u01D8\":\"u\",\"\\u01D6\":\"u\",\"\\u01DA\":\"u\",\"\\u1EE7\":\"u\",\"\\u016F\":\"u\",\"\\u0171\":\"u\",\"\\u01D4\":\"u\",\"\\u0215\":\"u\",\"\\u0217\":\"u\",\"\\u01B0\":\"u\",\"\\u1EEB\":\"u\",\"\\u1EE9\":\"u\",\"\\u1EEF\":\"u\",\"\\u1EED\":\"u\",\"\\u1EF1\":\"u\",\"\\u1EE5\":\"u\",\"\\u1E73\":\"u\",\"\\u0173\":\"u\",\"\\u1E77\":\"u\",\"\\u1E75\":\"u\",\"\\u0289\":\"u\",\"\\u24E5\":\"v\",\"\\uFF56\":\"v\",\"\\u1E7D\":\"v\",\"\\u1E7F\":\"v\",\"\\u028B\":\"v\",\"\\uA75F\":\"v\",\"\\u028C\":\"v\",\"\\uA761\":\"vy\",\"\\u24E6\":\"w\",\"\\uFF57\":\"w\",\"\\u1E81\":\"w\",\"\\u1E83\":\"w\",\"\\u0175\":\"w\",\"\\u1E87\":\"w\",\"\\u1E85\":\"w\",\"\\u1E98\":\"w\",\"\\u1E89\":\"w\",\"\\u2C73\":\"w\",\"\\u24E7\":\"x\",\"\\uFF58\":\"x\",\"\\u1E8B\":\"x\",\"\\u1E8D\":\"x\",\"\\u24E8\":\"y\",\"\\uFF59\":\"y\",\"\\u1EF3\":\"y\",\"\\u00FD\":\"y\",\"\\u0177\":\"y\",\"\\u1EF9\":\"y\",\"\\u0233\":\"y\",\"\\u1E8F\":\"y\",\"\\u00FF\":\"y\",\"\\u1EF7\":\"y\",\"\\u1E99\":\"y\",\"\\u1EF5\":\"y\",\"\\u01B4\":\"y\",\"\\u024F\":\"y\",\"\\u1EFF\":\"y\",\"\\u24E9\":\"z\",\"\\uFF5A\":\"z\",\"\\u017A\":\"z\",\"\\u1E91\":\"z\",\"\\u017C\":\"z\",\"\\u017E\":\"z\",\"\\u1E93\":\"z\",\"\\u1E95\":\"z\",\"\\u01B6\":\"z\",\"\\u0225\":\"z\",\"\\u0240\":\"z\",\"\\u2C6C\":\"z\",\"\\uA763\":\"z\"};\n\n    $document = $(document);\n\n    nextUid=(function() { var counter=1; return function() { return counter++; }; }());\n\n\n    function stripDiacritics(str) {\n        var ret, i, l, c;\n\n        if (!str || str.length < 1) return str;\n\n        ret = \"\";\n        for (i = 0, l = str.length; i < l; i++) {\n            c = str.charAt(i);\n            ret += DIACRITICS[c] || c;\n        }\n        return ret;\n    }\n\n    function indexOf(value, array) {\n        var i = 0, l = array.length;\n        for (; i < l; i = i + 1) {\n            if (equal(value, array[i])) return i;\n        }\n        return -1;\n    }\n\n    function measureScrollbar () {\n        var $template = $( MEASURE_SCROLLBAR_TEMPLATE );\n        $template.appendTo('body');\n\n        var dim = {\n            width: $template.width() - $template[0].clientWidth,\n            height: $template.height() - $template[0].clientHeight\n        };\n        $template.remove();\n\n        return dim;\n    }\n\n    /**\n     * Compares equality of a and b\n     * @param a\n     * @param b\n     */\n    function equal(a, b) {\n        if (a === b) return true;\n        if (a === undefined || b === undefined) return false;\n        if (a === null || b === null) return false;\n        // Check whether 'a' or 'b' is a string (primitive or object).\n        // The concatenation of an empty string (+'') converts its argument to a string's primitive.\n        if (a.constructor === String) return a+'' === b+''; // a+'' - in case 'a' is a String object\n        if (b.constructor === String) return b+'' === a+''; // b+'' - in case 'b' is a String object\n        return false;\n    }\n\n    /**\n     * Splits the string into an array of values, trimming each value. An empty array is returned for nulls or empty\n     * strings\n     * @param string\n     * @param separator\n     */\n    function splitVal(string, separator) {\n        var val, i, l;\n        if (string === null || string.length < 1) return [];\n        val = string.split(separator);\n        for (i = 0, l = val.length; i < l; i = i + 1) val[i] = $.trim(val[i]);\n        return val;\n    }\n\n    function getSideBorderPadding(element) {\n        return element.outerWidth(false) - element.width();\n    }\n\n    function installKeyUpChangeEvent(element) {\n        var key=\"keyup-change-value\";\n        element.on(\"keydown\", function () {\n            if ($.data(element, key) === undefined) {\n                $.data(element, key, element.val());\n            }\n        });\n        element.on(\"keyup\", function () {\n            var val= $.data(element, key);\n            if (val !== undefined && element.val() !== val) {\n                $.removeData(element, key);\n                element.trigger(\"keyup-change\");\n            }\n        });\n    }\n\n    $document.on(\"mousemove\", function (e) {\n        lastMousePosition.x = e.pageX;\n        lastMousePosition.y = e.pageY;\n    });\n\n    /**\n     * filters mouse events so an event is fired only if the mouse moved.\n     *\n     * filters out mouse events that occur when mouse is stationary but\n     * the elements under the pointer are scrolled.\n     */\n    function installFilteredMouseMove(element) {\n        element.on(\"mousemove\", function (e) {\n            var lastpos = lastMousePosition;\n            if (lastpos === undefined || lastpos.x !== e.pageX || lastpos.y !== e.pageY) {\n                $(e.target).trigger(\"mousemove-filtered\", e);\n            }\n        });\n    }\n\n    /**\n     * Debounces a function. Returns a function that calls the original fn function only if no invocations have been made\n     * within the last quietMillis milliseconds.\n     *\n     * @param quietMillis number of milliseconds to wait before invoking fn\n     * @param fn function to be debounced\n     * @param ctx object to be used as this reference within fn\n     * @return debounced version of fn\n     */\n    function debounce(quietMillis, fn, ctx) {\n        ctx = ctx || undefined;\n        var timeout;\n        return function () {\n            var args = arguments;\n            window.clearTimeout(timeout);\n            timeout = window.setTimeout(function() {\n                fn.apply(ctx, args);\n            }, quietMillis);\n        };\n    }\n\n    /**\n     * A simple implementation of a thunk\n     * @param formula function used to lazily initialize the thunk\n     * @return {Function}\n     */\n    function thunk(formula) {\n        var evaluated = false,\n            value;\n        return function() {\n            if (evaluated === false) { value = formula(); evaluated = true; }\n            return value;\n        };\n    };\n\n    function installDebouncedScroll(threshold, element) {\n        var notify = debounce(threshold, function (e) { element.trigger(\"scroll-debounced\", e);});\n        element.on(\"scroll\", function (e) {\n            if (indexOf(e.target, element.get()) >= 0) notify(e);\n        });\n    }\n\n    function focus($el) {\n        if ($el[0] === document.activeElement) return;\n\n        /* set the focus in a 0 timeout - that way the focus is set after the processing\n            of the current event has finished - which seems like the only reliable way\n            to set focus */\n        window.setTimeout(function() {\n            var el=$el[0], pos=$el.val().length, range;\n\n            $el.focus();\n\n            /* make sure el received focus so we do not error out when trying to manipulate the caret.\n                sometimes modals or others listeners may steal it after its set */\n            if ($el.is(\":visible\") && el === document.activeElement) {\n\n                /* after the focus is set move the caret to the end, necessary when we val()\n                    just before setting focus */\n                if(el.setSelectionRange)\n                {\n                    el.setSelectionRange(pos, pos);\n                }\n                else if (el.createTextRange) {\n                    range = el.createTextRange();\n                    range.collapse(false);\n                    range.select();\n                }\n            }\n        }, 0);\n    }\n\n    function getCursorInfo(el) {\n        el = $(el)[0];\n        var offset = 0;\n        var length = 0;\n        if ('selectionStart' in el) {\n            offset = el.selectionStart;\n            length = el.selectionEnd - offset;\n        } else if ('selection' in document) {\n            el.focus();\n            var sel = document.selection.createRange();\n            length = document.selection.createRange().text.length;\n            sel.moveStart('character', -el.value.length);\n            offset = sel.text.length - length;\n        }\n        return { offset: offset, length: length };\n    }\n\n    function killEvent(event) {\n        event.preventDefault();\n        event.stopPropagation();\n    }\n    function killEventImmediately(event) {\n        event.preventDefault();\n        event.stopImmediatePropagation();\n    }\n\n    function measureTextWidth(e) {\n        if (!sizer){\n            var style = e[0].currentStyle || window.getComputedStyle(e[0], null);\n            sizer = $(document.createElement(\"div\")).css({\n                position: \"absolute\",\n                left: \"-10000px\",\n                top: \"-10000px\",\n                display: \"none\",\n                fontSize: style.fontSize,\n                fontFamily: style.fontFamily,\n                fontStyle: style.fontStyle,\n                fontWeight: style.fontWeight,\n                letterSpacing: style.letterSpacing,\n                textTransform: style.textTransform,\n                whiteSpace: \"nowrap\"\n            });\n            sizer.attr(\"class\",\"select2-sizer\");\n            $(\"body\").append(sizer);\n        }\n        sizer.text(e.val());\n        return sizer.width();\n    }\n\n    function syncCssClasses(dest, src, adapter) {\n        var classes, replacements = [], adapted;\n\n        classes = dest.attr(\"class\");\n        if (classes) {\n            classes = '' + classes; // for IE which returns object\n            $(classes.split(\" \")).each2(function() {\n                if (this.indexOf(\"select2-\") === 0) {\n                    replacements.push(this);\n                }\n            });\n        }\n        classes = src.attr(\"class\");\n        if (classes) {\n            classes = '' + classes; // for IE which returns object\n            $(classes.split(\" \")).each2(function() {\n                if (this.indexOf(\"select2-\") !== 0) {\n                    adapted = adapter(this);\n                    if (adapted) {\n                        replacements.push(adapted);\n                    }\n                }\n            });\n        }\n        dest.attr(\"class\", replacements.join(\" \"));\n    }\n\n\n    function markMatch(text, term, markup, escapeMarkup) {\n        var match=stripDiacritics(text.toUpperCase()).indexOf(stripDiacritics(term.toUpperCase())),\n            tl=term.length;\n\n        if (match<0) {\n            markup.push(escapeMarkup(text));\n            return;\n        }\n\n        markup.push(escapeMarkup(text.substring(0, match)));\n        markup.push(\"<span class='select2-match'>\");\n        markup.push(escapeMarkup(text.substring(match, match + tl)));\n        markup.push(\"</span>\");\n        markup.push(escapeMarkup(text.substring(match + tl, text.length)));\n    }\n\n    function defaultEscapeMarkup(markup) {\n        var replace_map = {\n            '\\\\': '&#92;',\n            '&': '&amp;',\n            '<': '&lt;',\n            '>': '&gt;',\n            '\"': '&quot;',\n            \"'\": '&#39;',\n            \"/\": '&#47;'\n        };\n\n        return String(markup).replace(/[&<>\"'\\/\\\\]/g, function (match) {\n            return replace_map[match];\n        });\n    }\n\n    /**\n     * Produces an ajax-based query function\n     *\n     * @param options object containing configuration paramters\n     * @param options.params parameter map for the transport ajax call, can contain such options as cache, jsonpCallback, etc. see $.ajax\n     * @param options.transport function that will be used to execute the ajax request. must be compatible with parameters supported by $.ajax\n     * @param options.url url for the data\n     * @param options.data a function(searchTerm, pageNumber, context) that should return an object containing query string parameters for the above url.\n     * @param options.dataType request data type: ajax, jsonp, other datatatypes supported by jQuery's $.ajax function or the transport function if specified\n     * @param options.quietMillis (optional) milliseconds to wait before making the ajaxRequest, helps debounce the ajax function if invoked too often\n     * @param options.results a function(remoteData, pageNumber) that converts data returned form the remote request to the format expected by Select2.\n     *      The expected format is an object containing the following keys:\n     *      results array of objects that will be used as choices\n     *      more (optional) boolean indicating whether there are more results available\n     *      Example: {results:[{id:1, text:'Red'},{id:2, text:'Blue'}], more:true}\n     */\n    function ajax(options) {\n        var timeout, // current scheduled but not yet executed request\n            handler = null,\n            quietMillis = options.quietMillis || 100,\n            ajaxUrl = options.url,\n            self = this;\n\n        return function (query) {\n            window.clearTimeout(timeout);\n            timeout = window.setTimeout(function () {\n                var data = options.data, // ajax data function\n                    url = ajaxUrl, // ajax url string or function\n                    transport = options.transport || $.fn.select2.ajaxDefaults.transport,\n                    // deprecated - to be removed in 4.0  - use params instead\n                    deprecated = {\n                        type: options.type || 'GET', // set type of request (GET or POST)\n                        cache: options.cache || false,\n                        jsonpCallback: options.jsonpCallback||undefined,\n                        dataType: options.dataType||\"json\"\n                    },\n                    params = $.extend({}, $.fn.select2.ajaxDefaults.params, deprecated);\n\n                data = data ? data.call(self, query.term, query.page, query.context) : null;\n                url = (typeof url === 'function') ? url.call(self, query.term, query.page, query.context) : url;\n\n                if (handler) { handler.abort(); }\n\n                if (options.params) {\n                    if ($.isFunction(options.params)) {\n                        $.extend(params, options.params.call(self));\n                    } else {\n                        $.extend(params, options.params);\n                    }\n                }\n\n                $.extend(params, {\n                    url: url,\n                    dataType: options.dataType,\n                    data: data,\n                    success: function (data) {\n                        // TODO - replace query.page with query so users have access to term, page, etc.\n                        var results = options.results(data, query.page);\n                        query.callback(results);\n                    }\n                });\n                handler = transport.call(self, params);\n            }, quietMillis);\n        };\n    }\n\n    /**\n     * Produces a query function that works with a local array\n     *\n     * @param options object containing configuration parameters. The options parameter can either be an array or an\n     * object.\n     *\n     * If the array form is used it is assumed that it contains objects with 'id' and 'text' keys.\n     *\n     * If the object form is used ti is assumed that it contains 'data' and 'text' keys. The 'data' key should contain\n     * an array of objects that will be used as choices. These objects must contain at least an 'id' key. The 'text'\n     * key can either be a String in which case it is expected that each element in the 'data' array has a key with the\n     * value of 'text' which will be used to match choices. Alternatively, text can be a function(item) that can extract\n     * the text.\n     */\n    function local(options) {\n        var data = options, // data elements\n            dataText,\n            tmp,\n            text = function (item) { return \"\"+item.text; }; // function used to retrieve the text portion of a data item that is matched against the search\n\n         if ($.isArray(data)) {\n            tmp = data;\n            data = { results: tmp };\n        }\n\n         if ($.isFunction(data) === false) {\n            tmp = data;\n            data = function() { return tmp; };\n        }\n\n        var dataItem = data();\n        if (dataItem.text) {\n            text = dataItem.text;\n            // if text is not a function we assume it to be a key name\n            if (!$.isFunction(text)) {\n                dataText = dataItem.text; // we need to store this in a separate variable because in the next step data gets reset and data.text is no longer available\n                text = function (item) { return item[dataText]; };\n            }\n        }\n\n        return function (query) {\n            var t = query.term, filtered = { results: [] }, process;\n            if (t === \"\") {\n                query.callback(data());\n                return;\n            }\n\n            process = function(datum, collection) {\n                var group, attr;\n                datum = datum[0];\n                if (datum.children) {\n                    group = {};\n                    for (attr in datum) {\n                        if (datum.hasOwnProperty(attr)) group[attr]=datum[attr];\n                    }\n                    group.children=[];\n                    $(datum.children).each2(function(i, childDatum) { process(childDatum, group.children); });\n                    if (group.children.length || query.matcher(t, text(group), datum)) {\n                        collection.push(group);\n                    }\n                } else {\n                    if (query.matcher(t, text(datum), datum)) {\n                        collection.push(datum);\n                    }\n                }\n            };\n\n            $(data().results).each2(function(i, datum) { process(datum, filtered.results); });\n            query.callback(filtered);\n        };\n    }\n\n    // TODO javadoc\n    function tags(data) {\n        var isFunc = $.isFunction(data);\n        return function (query) {\n            var t = query.term, filtered = {results: []};\n            $(isFunc ? data() : data).each(function () {\n                var isObject = this.text !== undefined,\n                    text = isObject ? this.text : this;\n                if (t === \"\" || query.matcher(t, text)) {\n                    filtered.results.push(isObject ? this : {id: this, text: this});\n                }\n            });\n            query.callback(filtered);\n        };\n    }\n\n    /**\n     * Checks if the formatter function should be used.\n     *\n     * Throws an error if it is not a function. Returns true if it should be used,\n     * false if no formatting should be performed.\n     *\n     * @param formatter\n     */\n    function checkFormatter(formatter, formatterName) {\n        if ($.isFunction(formatter)) return true;\n        if (!formatter) return false;\n        throw new Error(formatterName +\" must be a function or a falsy value\");\n    }\n\n    function evaluate(val) {\n        return $.isFunction(val) ? val() : val;\n    }\n\n    function countResults(results) {\n        var count = 0;\n        $.each(results, function(i, item) {\n            if (item.children) {\n                count += countResults(item.children);\n            } else {\n                count++;\n            }\n        });\n        return count;\n    }\n\n    /**\n     * Default tokenizer. This function uses breaks the input on substring match of any string from the\n     * opts.tokenSeparators array and uses opts.createSearchChoice to create the choice object. Both of those\n     * two options have to be defined in order for the tokenizer to work.\n     *\n     * @param input text user has typed so far or pasted into the search field\n     * @param selection currently selected choices\n     * @param selectCallback function(choice) callback tho add the choice to selection\n     * @param opts select2's opts\n     * @return undefined/null to leave the current input unchanged, or a string to change the input to the returned value\n     */\n    function defaultTokenizer(input, selection, selectCallback, opts) {\n        var original = input, // store the original so we can compare and know if we need to tell the search to update its text\n            dupe = false, // check for whether a token we extracted represents a duplicate selected choice\n            token, // token\n            index, // position at which the separator was found\n            i, l, // looping variables\n            separator; // the matched separator\n\n        if (!opts.createSearchChoice || !opts.tokenSeparators || opts.tokenSeparators.length < 1) return undefined;\n\n        while (true) {\n            index = -1;\n\n            for (i = 0, l = opts.tokenSeparators.length; i < l; i++) {\n                separator = opts.tokenSeparators[i];\n                index = input.indexOf(separator);\n                if (index >= 0) break;\n            }\n\n            if (index < 0) break; // did not find any token separator in the input string, bail\n\n            token = input.substring(0, index);\n            input = input.substring(index + separator.length);\n\n            if (token.length > 0) {\n                token = opts.createSearchChoice.call(this, token, selection);\n                if (token !== undefined && token !== null && opts.id(token) !== undefined && opts.id(token) !== null) {\n                    dupe = false;\n                    for (i = 0, l = selection.length; i < l; i++) {\n                        if (equal(opts.id(token), opts.id(selection[i]))) {\n                            dupe = true; break;\n                        }\n                    }\n\n                    if (!dupe) selectCallback(token);\n                }\n            }\n        }\n\n        if (original!==input) return input;\n    }\n\n    /**\n     * Creates a new class\n     *\n     * @param superClass\n     * @param methods\n     */\n    function clazz(SuperClass, methods) {\n        var constructor = function () {};\n        constructor.prototype = new SuperClass;\n        constructor.prototype.constructor = constructor;\n        constructor.prototype.parent = SuperClass.prototype;\n        constructor.prototype = $.extend(constructor.prototype, methods);\n        return constructor;\n    }\n\n    AbstractSelect2 = clazz(Object, {\n\n        // abstract\n        bind: function (func) {\n            var self = this;\n            return function () {\n                func.apply(self, arguments);\n            };\n        },\n\n        // abstract\n        init: function (opts) {\n            var results, search, resultsSelector = \".select2-results\";\n\n            // prepare options\n            this.opts = opts = this.prepareOpts(opts);\n\n            this.id=opts.id;\n\n            // destroy if called on an existing component\n            if (opts.element.data(\"select2\") !== undefined &&\n                opts.element.data(\"select2\") !== null) {\n                opts.element.data(\"select2\").destroy();\n            }\n\n            this.container = this.createContainer();\n\n            this.containerId=\"s2id_\"+(opts.element.attr(\"id\") || \"autogen\"+nextUid());\n            this.containerSelector=\"#\"+this.containerId.replace(/([;&,\\.\\+\\*\\~':\"\\!\\^#$%@\\[\\]\\(\\)=>\\|])/g, '\\\\$1');\n            this.container.attr(\"id\", this.containerId);\n\n            // cache the body so future lookups are cheap\n            this.body = thunk(function() { return opts.element.closest(\"body\"); });\n\n            syncCssClasses(this.container, this.opts.element, this.opts.adaptContainerCssClass);\n\n            this.container.attr(\"style\", opts.element.attr(\"style\"));\n            this.container.css(evaluate(opts.containerCss));\n            this.container.addClass(evaluate(opts.containerCssClass));\n\n            this.elementTabIndex = this.opts.element.attr(\"tabindex\");\n\n            // swap container for the element\n            this.opts.element\n                .data(\"select2\", this)\n                .attr(\"tabindex\", \"-1\")\n                .before(this.container)\n                .on(\"click.select2\", killEvent); // do not leak click events\n\n            this.container.data(\"select2\", this);\n\n            this.dropdown = this.container.find(\".select2-drop\");\n\n            syncCssClasses(this.dropdown, this.opts.element, this.opts.adaptDropdownCssClass);\n\n            this.dropdown.addClass(evaluate(opts.dropdownCssClass));\n            this.dropdown.data(\"select2\", this);\n            this.dropdown.on(\"click\", killEvent);\n\n            this.results = results = this.container.find(resultsSelector);\n            this.search = search = this.container.find(\"input.select2-input\");\n\n            this.queryCount = 0;\n            this.resultsPage = 0;\n            this.context = null;\n\n            // initialize the container\n            this.initContainer();\n\n            this.container.on(\"click\", killEvent);\n\n            installFilteredMouseMove(this.results);\n            this.dropdown.on(\"mousemove-filtered touchstart touchmove touchend\", resultsSelector, this.bind(this.highlightUnderEvent));\n\n            installDebouncedScroll(80, this.results);\n            this.dropdown.on(\"scroll-debounced\", resultsSelector, this.bind(this.loadMoreIfNeeded));\n\n            // do not propagate change event from the search field out of the component\n            $(this.container).on(\"change\", \".select2-input\", function(e) {e.stopPropagation();});\n            $(this.dropdown).on(\"change\", \".select2-input\", function(e) {e.stopPropagation();});\n\n            // if jquery.mousewheel plugin is installed we can prevent out-of-bounds scrolling of results via mousewheel\n            if ($.fn.mousewheel) {\n                results.mousewheel(function (e, delta, deltaX, deltaY) {\n                    var top = results.scrollTop();\n                    if (deltaY > 0 && top - deltaY <= 0) {\n                        results.scrollTop(0);\n                        killEvent(e);\n                    } else if (deltaY < 0 && results.get(0).scrollHeight - results.scrollTop() + deltaY <= results.height()) {\n                        results.scrollTop(results.get(0).scrollHeight - results.height());\n                        killEvent(e);\n                    }\n                });\n            }\n\n            installKeyUpChangeEvent(search);\n            search.on(\"keyup-change input paste\", this.bind(this.updateResults));\n            search.on(\"focus\", function () { search.addClass(\"select2-focused\"); });\n            search.on(\"blur\", function () { search.removeClass(\"select2-focused\");});\n\n            this.dropdown.on(\"mouseup\", resultsSelector, this.bind(function (e) {\n                if ($(e.target).closest(\".select2-result-selectable\").length > 0) {\n                    this.highlightUnderEvent(e);\n                    this.selectHighlighted(e);\n                }\n            }));\n\n            // trap all mouse events from leaving the dropdown. sometimes there may be a modal that is listening\n            // for mouse events outside of itself so it can close itself. since the dropdown is now outside the select2's\n            // dom it will trigger the popup close, which is not what we want\n            this.dropdown.on(\"click mouseup mousedown\", function (e) { e.stopPropagation(); });\n\n            if ($.isFunction(this.opts.initSelection)) {\n                // initialize selection based on the current value of the source element\n                this.initSelection();\n\n                // if the user has provided a function that can set selection based on the value of the source element\n                // we monitor the change event on the element and trigger it, allowing for two way synchronization\n                this.monitorSource();\n            }\n\n            if (opts.maximumInputLength !== null) {\n                this.search.attr(\"maxlength\", opts.maximumInputLength);\n            }\n\n            var disabled = opts.element.prop(\"disabled\");\n            if (disabled === undefined) disabled = false;\n            this.enable(!disabled);\n\n            var readonly = opts.element.prop(\"readonly\");\n            if (readonly === undefined) readonly = false;\n            this.readonly(readonly);\n\n            // Calculate size of scrollbar\n            scrollBarDimensions = scrollBarDimensions || measureScrollbar();\n\n            this.autofocus = opts.element.prop(\"autofocus\");\n            opts.element.prop(\"autofocus\", false);\n            if (this.autofocus) this.focus();\n\n            this.nextSearchTerm = undefined;\n        },\n\n        // abstract\n        destroy: function () {\n            var element=this.opts.element, select2 = element.data(\"select2\");\n\n            this.close();\n\n            if (this.propertyObserver) { delete this.propertyObserver; this.propertyObserver = null; }\n\n            if (select2 !== undefined) {\n                select2.container.remove();\n                select2.dropdown.remove();\n                element\n                    .removeClass(\"select2-offscreen\")\n                    .removeData(\"select2\")\n                    .off(\".select2\")\n                    .prop(\"autofocus\", this.autofocus || false);\n                if (this.elementTabIndex) {\n                    element.attr({tabindex: this.elementTabIndex});\n                } else {\n                    element.removeAttr(\"tabindex\");\n                }\n                element.show();\n            }\n        },\n\n        // abstract\n        optionToData: function(element) {\n            if (element.is(\"option\")) {\n                return {\n                    id:element.prop(\"value\"),\n                    text:element.text(),\n                    element: element.get(),\n                    css: element.attr(\"class\"),\n                    disabled: element.prop(\"disabled\"),\n                    locked: equal(element.attr(\"locked\"), \"locked\") || equal(element.data(\"locked\"), true)\n                };\n            } else if (element.is(\"optgroup\")) {\n                return {\n                    text:element.attr(\"label\"),\n                    children:[],\n                    element: element.get(),\n                    css: element.attr(\"class\")\n                };\n            }\n        },\n\n        // abstract\n        prepareOpts: function (opts) {\n            var element, select, idKey, ajaxUrl, self = this;\n\n            element = opts.element;\n\n            if (element.get(0).tagName.toLowerCase() === \"select\") {\n                this.select = select = opts.element;\n            }\n\n            if (select) {\n                // these options are not allowed when attached to a select because they are picked up off the element itself\n                $.each([\"id\", \"multiple\", \"ajax\", \"query\", \"createSearchChoice\", \"initSelection\", \"data\", \"tags\"], function () {\n                    if (this in opts) {\n                        throw new Error(\"Option '\" + this + \"' is not allowed for Select2 when attached to a <select> element.\");\n                    }\n                });\n            }\n\n            opts = $.extend({}, {\n                populateResults: function(container, results, query) {\n                    var populate, id=this.opts.id;\n\n                    populate=function(results, container, depth) {\n\n                        var i, l, result, selectable, disabled, compound, node, label, innerContainer, formatted;\n\n                        results = opts.sortResults(results, container, query);\n\n                        for (i = 0, l = results.length; i < l; i = i + 1) {\n\n                            result=results[i];\n\n                            disabled = (result.disabled === true);\n                            selectable = (!disabled) && (id(result) !== undefined);\n\n                            compound=result.children && result.children.length > 0;\n\n                            node=$(\"<li></li>\");\n                            node.addClass(\"select2-results-dept-\"+depth);\n                            node.addClass(\"select2-result\");\n                            node.addClass(selectable ? \"select2-result-selectable\" : \"select2-result-unselectable\");\n                            if (disabled) { node.addClass(\"select2-disabled\"); }\n                            if (compound) { node.addClass(\"select2-result-with-children\"); }\n                            node.addClass(self.opts.formatResultCssClass(result));\n\n                            label=$(document.createElement(\"div\"));\n                            label.addClass(\"select2-result-label\");\n\n                            formatted=opts.formatResult(result, label, query, self.opts.escapeMarkup);\n                            if (formatted!==undefined) {\n                                label.html(formatted);\n                            }\n\n                            node.append(label);\n\n                            if (compound) {\n\n                                innerContainer=$(\"<ul></ul>\");\n                                innerContainer.addClass(\"select2-result-sub\");\n                                populate(result.children, innerContainer, depth+1);\n                                node.append(innerContainer);\n                            }\n\n                            node.data(\"select2-data\", result);\n                            container.append(node);\n                        }\n                    };\n\n                    populate(results, container, 0);\n                }\n            }, $.fn.select2.defaults, opts);\n\n            if (typeof(opts.id) !== \"function\") {\n                idKey = opts.id;\n                opts.id = function (e) { return e[idKey]; };\n            }\n\n            if ($.isArray(opts.element.data(\"select2Tags\"))) {\n                if (\"tags\" in opts) {\n                    throw \"tags specified as both an attribute 'data-select2-tags' and in options of Select2 \" + opts.element.attr(\"id\");\n                }\n                opts.tags=opts.element.data(\"select2Tags\");\n            }\n\n            if (select) {\n                opts.query = this.bind(function (query) {\n                    var data = { results: [], more: false },\n                        term = query.term,\n                        children, placeholderOption, process;\n\n                    process=function(element, collection) {\n                        var group;\n                        if (element.is(\"option\")) {\n                            if (query.matcher(term, element.text(), element)) {\n                                collection.push(self.optionToData(element));\n                            }\n                        } else if (element.is(\"optgroup\")) {\n                            group=self.optionToData(element);\n                            element.children().each2(function(i, elm) { process(elm, group.children); });\n                            if (group.children.length>0) {\n                                collection.push(group);\n                            }\n                        }\n                    };\n\n                    children=element.children();\n\n                    // ignore the placeholder option if there is one\n                    if (this.getPlaceholder() !== undefined && children.length > 0) {\n                        placeholderOption = this.getPlaceholderOption();\n                        if (placeholderOption) {\n                            children=children.not(placeholderOption);\n                        }\n                    }\n\n                    children.each2(function(i, elm) { process(elm, data.results); });\n\n                    query.callback(data);\n                });\n                // this is needed because inside val() we construct choices from options and there id is hardcoded\n                opts.id=function(e) { return e.id; };\n                opts.formatResultCssClass = function(data) { return data.css; };\n            } else {\n                if (!(\"query\" in opts)) {\n\n                    if (\"ajax\" in opts) {\n                        ajaxUrl = opts.element.data(\"ajax-url\");\n                        if (ajaxUrl && ajaxUrl.length > 0) {\n                            opts.ajax.url = ajaxUrl;\n                        }\n                        opts.query = ajax.call(opts.element, opts.ajax);\n                    } else if (\"data\" in opts) {\n                        opts.query = local(opts.data);\n                    } else if (\"tags\" in opts) {\n                        opts.query = tags(opts.tags);\n                        if (opts.createSearchChoice === undefined) {\n                            opts.createSearchChoice = function (term) { return {id: $.trim(term), text: $.trim(term)}; };\n                        }\n                        if (opts.initSelection === undefined) {\n                            opts.initSelection = function (element, callback) {\n                                var data = [];\n                                $(splitVal(element.val(), opts.separator)).each(function () {\n                                    var obj = { id: this, text: this },\n                                        tags = opts.tags;\n                                    if ($.isFunction(tags)) tags=tags();\n                                    $(tags).each(function() { if (equal(this.id, obj.id)) { obj = this; return false; } });\n                                    data.push(obj);\n                                });\n\n                                callback(data);\n                            };\n                        }\n                    }\n                }\n            }\n            if (typeof(opts.query) !== \"function\") {\n                throw \"query function not defined for Select2 \" + opts.element.attr(\"id\");\n            }\n\n            return opts;\n        },\n\n        /**\n         * Monitor the original element for changes and update select2 accordingly\n         */\n        // abstract\n        monitorSource: function () {\n            var el = this.opts.element, sync, observer;\n\n            el.on(\"change.select2\", this.bind(function (e) {\n                if (this.opts.element.data(\"select2-change-triggered\") !== true) {\n                    this.initSelection();\n                }\n            }));\n\n            sync = this.bind(function () {\n\n                // sync enabled state\n                var disabled = el.prop(\"disabled\");\n                if (disabled === undefined) disabled = false;\n                this.enable(!disabled);\n\n                var readonly = el.prop(\"readonly\");\n                if (readonly === undefined) readonly = false;\n                this.readonly(readonly);\n\n                syncCssClasses(this.container, this.opts.element, this.opts.adaptContainerCssClass);\n                this.container.addClass(evaluate(this.opts.containerCssClass));\n\n                syncCssClasses(this.dropdown, this.opts.element, this.opts.adaptDropdownCssClass);\n                this.dropdown.addClass(evaluate(this.opts.dropdownCssClass));\n\n            });\n\n            // IE8-10\n            el.on(\"propertychange.select2\", sync);\n\n            // hold onto a reference of the callback to work around a chromium bug\n            if (this.mutationCallback === undefined) {\n                this.mutationCallback = function (mutations) {\n                    mutations.forEach(sync);\n                }\n            }\n\n            // safari, chrome, firefox, IE11\n            observer = window.MutationObserver || window.WebKitMutationObserver|| window.MozMutationObserver;\n            if (observer !== undefined) {\n                if (this.propertyObserver) { delete this.propertyObserver; this.propertyObserver = null; }\n                this.propertyObserver = new observer(this.mutationCallback);\n                this.propertyObserver.observe(el.get(0), { attributes:true, subtree:false });\n            }\n        },\n\n        // abstract\n        triggerSelect: function(data) {\n            var evt = $.Event(\"select2-selecting\", { val: this.id(data), object: data });\n            this.opts.element.trigger(evt);\n            return !evt.isDefaultPrevented();\n        },\n\n        /**\n         * Triggers the change event on the source element\n         */\n        // abstract\n        triggerChange: function (details) {\n\n            details = details || {};\n            details= $.extend({}, details, { type: \"change\", val: this.val() });\n            // prevents recursive triggering\n            this.opts.element.data(\"select2-change-triggered\", true);\n            this.opts.element.trigger(details);\n            this.opts.element.data(\"select2-change-triggered\", false);\n\n            // some validation frameworks ignore the change event and listen instead to keyup, click for selects\n            // so here we trigger the click event manually\n            this.opts.element.click();\n\n            // ValidationEngine ignorea the change event and listens instead to blur\n            // so here we trigger the blur event manually if so desired\n            if (this.opts.blurOnChange)\n                this.opts.element.blur();\n        },\n\n        //abstract\n        isInterfaceEnabled: function()\n        {\n            return this.enabledInterface === true;\n        },\n\n        // abstract\n        enableInterface: function() {\n            var enabled = this._enabled && !this._readonly,\n                disabled = !enabled;\n\n            if (enabled === this.enabledInterface) return false;\n\n            this.container.toggleClass(\"select2-container-disabled\", disabled);\n            this.close();\n            this.enabledInterface = enabled;\n\n            return true;\n        },\n\n        // abstract\n        enable: function(enabled) {\n            if (enabled === undefined) enabled = true;\n            if (this._enabled === enabled) return;\n            this._enabled = enabled;\n\n            this.opts.element.prop(\"disabled\", !enabled);\n            this.enableInterface();\n        },\n\n        // abstract\n        disable: function() {\n            this.enable(false);\n        },\n\n        // abstract\n        readonly: function(enabled) {\n            if (enabled === undefined) enabled = false;\n            if (this._readonly === enabled) return false;\n            this._readonly = enabled;\n\n            this.opts.element.prop(\"readonly\", enabled);\n            this.enableInterface();\n            return true;\n        },\n\n        // abstract\n        opened: function () {\n            return this.container.hasClass(\"select2-dropdown-open\");\n        },\n\n        // abstract\n        positionDropdown: function() {\n            var $dropdown = this.dropdown,\n                offset = this.container.offset(),\n                height = this.container.outerHeight(false),\n                width = this.container.outerWidth(false),\n                dropHeight = $dropdown.outerHeight(false),\n                $window = $(window),\n                windowWidth = $window.width(),\n                windowHeight = $window.height(),\n                viewPortRight = $window.scrollLeft() + windowWidth,\n                viewportBottom = $window.scrollTop() + windowHeight,\n                dropTop = offset.top + height,\n                dropLeft = offset.left,\n                enoughRoomBelow = dropTop + dropHeight <= viewportBottom,\n                enoughRoomAbove = (offset.top - dropHeight) >= this.body().scrollTop(),\n                dropWidth = $dropdown.outerWidth(false),\n                enoughRoomOnRight = dropLeft + dropWidth <= viewPortRight,\n                aboveNow = $dropdown.hasClass(\"select2-drop-above\"),\n                bodyOffset,\n                above,\n                changeDirection,\n                css,\n                resultsListNode;\n\n            // always prefer the current above/below alignment, unless there is not enough room\n            if (aboveNow) {\n                above = true;\n                if (!enoughRoomAbove && enoughRoomBelow) {\n                    changeDirection = true;\n                    above = false;\n                }\n            } else {\n                above = false;\n                if (!enoughRoomBelow && enoughRoomAbove) {\n                    changeDirection = true;\n                    above = true;\n                }\n            }\n\n            //if we are changing direction we need to get positions when dropdown is hidden;\n            if (changeDirection) {\n                $dropdown.hide();\n                offset = this.container.offset();\n                height = this.container.outerHeight(false);\n                width = this.container.outerWidth(false);\n                dropHeight = $dropdown.outerHeight(false);\n                viewPortRight = $window.scrollLeft() + windowWidth;\n                viewportBottom = $window.scrollTop() + windowHeight;\n                dropTop = offset.top + height;\n                dropLeft = offset.left;\n                dropWidth = $dropdown.outerWidth(false);\n                enoughRoomOnRight = dropLeft + dropWidth <= viewPortRight;\n                $dropdown.show();\n            }\n\n            if (this.opts.dropdownAutoWidth) {\n                resultsListNode = $('.select2-results', $dropdown)[0];\n                $dropdown.addClass('select2-drop-auto-width');\n                $dropdown.css('width', '');\n                // Add scrollbar width to dropdown if vertical scrollbar is present\n                dropWidth = $dropdown.outerWidth(false) + (resultsListNode.scrollHeight === resultsListNode.clientHeight ? 0 : scrollBarDimensions.width);\n                dropWidth > width ? width = dropWidth : dropWidth = width;\n                enoughRoomOnRight = dropLeft + dropWidth <= viewPortRight;\n            }\n            else {\n                this.container.removeClass('select2-drop-auto-width');\n            }\n\n            //console.log(\"below/ droptop:\", dropTop, \"dropHeight\", dropHeight, \"sum\", (dropTop+dropHeight)+\" viewport bottom\", viewportBottom, \"enough?\", enoughRoomBelow);\n            //console.log(\"above/ offset.top\", offset.top, \"dropHeight\", dropHeight, \"top\", (offset.top-dropHeight), \"scrollTop\", this.body().scrollTop(), \"enough?\", enoughRoomAbove);\n\n            // fix positioning when body has an offset and is not position: static\n            if (this.body().css('position') !== 'static') {\n                bodyOffset = this.body().offset();\n                dropTop -= bodyOffset.top;\n                dropLeft -= bodyOffset.left;\n            }\n\n            if (!enoughRoomOnRight) {\n               dropLeft = offset.left + width - dropWidth;\n            }\n\n            css =  {\n                left: dropLeft,\n                width: width\n            };\n\n            if (above) {\n                css.bottom = windowHeight - offset.top;\n                css.top = 'auto';\n                this.container.addClass(\"select2-drop-above\");\n                $dropdown.addClass(\"select2-drop-above\");\n            }\n            else {\n                css.top = dropTop;\n                css.bottom = 'auto';\n                this.container.removeClass(\"select2-drop-above\");\n                $dropdown.removeClass(\"select2-drop-above\");\n            }\n            css = $.extend(css, evaluate(this.opts.dropdownCss));\n\n            $dropdown.css(css);\n        },\n\n        // abstract\n        shouldOpen: function() {\n            var event;\n\n            if (this.opened()) return false;\n\n            if (this._enabled === false || this._readonly === true) return false;\n\n            event = $.Event(\"select2-opening\");\n            this.opts.element.trigger(event);\n            return !event.isDefaultPrevented();\n        },\n\n        // abstract\n        clearDropdownAlignmentPreference: function() {\n            // clear the classes used to figure out the preference of where the dropdown should be opened\n            this.container.removeClass(\"select2-drop-above\");\n            this.dropdown.removeClass(\"select2-drop-above\");\n        },\n\n        /**\n         * Opens the dropdown\n         *\n         * @return {Boolean} whether or not dropdown was opened. This method will return false if, for example,\n         * the dropdown is already open, or if the 'open' event listener on the element called preventDefault().\n         */\n        // abstract\n        open: function () {\n\n            if (!this.shouldOpen()) return false;\n\n            this.opening();\n\n            return true;\n        },\n\n        /**\n         * Performs the opening of the dropdown\n         */\n        // abstract\n        opening: function() {\n            var cid = this.containerId,\n                scroll = \"scroll.\" + cid,\n                resize = \"resize.\"+cid,\n                orient = \"orientationchange.\"+cid,\n                mask;\n\n            this.container.addClass(\"select2-dropdown-open\").addClass(\"select2-container-active\");\n\n            this.clearDropdownAlignmentPreference();\n\n            if(this.dropdown[0] !== this.body().children().last()[0]) {\n                this.dropdown.detach().appendTo(this.body());\n            }\n\n            // create the dropdown mask if doesnt already exist\n            mask = $(\"#select2-drop-mask\");\n            if (mask.length == 0) {\n                mask = $(document.createElement(\"div\"));\n                mask.attr(\"id\",\"select2-drop-mask\").attr(\"class\",\"select2-drop-mask\");\n                mask.hide();\n                mask.appendTo(this.body());\n                mask.on(\"mousedown touchstart click\", function (e) {\n                    var dropdown = $(\"#select2-drop\"), self;\n                    if (dropdown.length > 0) {\n                        self=dropdown.data(\"select2\");\n                        if (self.opts.selectOnBlur) {\n                            self.selectHighlighted({noFocus: true});\n                        }\n                        self.close({focus:true});\n                        e.preventDefault();\n                        e.stopPropagation();\n                    }\n                });\n            }\n\n            // ensure the mask is always right before the dropdown\n            if (this.dropdown.prev()[0] !== mask[0]) {\n                this.dropdown.before(mask);\n            }\n\n            // move the global id to the correct dropdown\n            $(\"#select2-drop\").removeAttr(\"id\");\n            this.dropdown.attr(\"id\", \"select2-drop\");\n\n            // show the elements\n            mask.show();\n\n            this.positionDropdown();\n            this.dropdown.show();\n            this.positionDropdown();\n\n            this.dropdown.addClass(\"select2-drop-active\");\n\n            // attach listeners to events that can change the position of the container and thus require\n            // the position of the dropdown to be updated as well so it does not come unglued from the container\n            var that = this;\n            this.container.parents().add(window).each(function () {\n                $(this).on(resize+\" \"+scroll+\" \"+orient, function (e) {\n                    that.positionDropdown();\n                });\n            });\n\n\n        },\n\n        // abstract\n        close: function () {\n            if (!this.opened()) return;\n\n            var cid = this.containerId,\n                scroll = \"scroll.\" + cid,\n                resize = \"resize.\"+cid,\n                orient = \"orientationchange.\"+cid;\n\n            // unbind event listeners\n            this.container.parents().add(window).each(function () { $(this).off(scroll).off(resize).off(orient); });\n\n            this.clearDropdownAlignmentPreference();\n\n            $(\"#select2-drop-mask\").hide();\n            this.dropdown.removeAttr(\"id\"); // only the active dropdown has the select2-drop id\n            this.dropdown.hide();\n            this.container.removeClass(\"select2-dropdown-open\").removeClass(\"select2-container-active\");\n            this.results.empty();\n\n\n            this.clearSearch();\n            this.search.removeClass(\"select2-active\");\n            this.opts.element.trigger($.Event(\"select2-close\"));\n        },\n\n        /**\n         * Opens control, sets input value, and updates results.\n         */\n        // abstract\n        externalSearch: function (term) {\n            this.open();\n            this.search.val(term);\n            this.updateResults(false);\n        },\n\n        // abstract\n        clearSearch: function () {\n\n        },\n\n        //abstract\n        getMaximumSelectionSize: function() {\n            return evaluate(this.opts.maximumSelectionSize);\n        },\n\n        // abstract\n        ensureHighlightVisible: function () {\n            var results = this.results, children, index, child, hb, rb, y, more;\n\n            index = this.highlight();\n\n            if (index < 0) return;\n\n            if (index == 0) {\n\n                // if the first element is highlighted scroll all the way to the top,\n                // that way any unselectable headers above it will also be scrolled\n                // into view\n\n                results.scrollTop(0);\n                return;\n            }\n\n            children = this.findHighlightableChoices().find('.select2-result-label');\n\n            child = $(children[index]);\n\n            hb = child.offset().top + child.outerHeight(true);\n\n            // if this is the last child lets also make sure select2-more-results is visible\n            if (index === children.length - 1) {\n                more = results.find(\"li.select2-more-results\");\n                if (more.length > 0) {\n                    hb = more.offset().top + more.outerHeight(true);\n                }\n            }\n\n            rb = results.offset().top + results.outerHeight(true);\n            if (hb > rb) {\n                results.scrollTop(results.scrollTop() + (hb - rb));\n            }\n            y = child.offset().top - results.offset().top;\n\n            // make sure the top of the element is visible\n            if (y < 0 && child.css('display') != 'none' ) {\n                results.scrollTop(results.scrollTop() + y); // y is negative\n            }\n        },\n\n        // abstract\n        findHighlightableChoices: function() {\n            return this.results.find(\".select2-result-selectable:not(.select2-disabled, .select2-selected)\");\n        },\n\n        // abstract\n        moveHighlight: function (delta) {\n            var choices = this.findHighlightableChoices(),\n                index = this.highlight();\n\n            while (index > -1 && index < choices.length) {\n                index += delta;\n                var choice = $(choices[index]);\n                if (choice.hasClass(\"select2-result-selectable\") && !choice.hasClass(\"select2-disabled\") && !choice.hasClass(\"select2-selected\")) {\n                    this.highlight(index);\n                    break;\n                }\n            }\n        },\n\n        // abstract\n        highlight: function (index) {\n            var choices = this.findHighlightableChoices(),\n                choice,\n                data;\n\n            if (arguments.length === 0) {\n                return indexOf(choices.filter(\".select2-highlighted\")[0], choices.get());\n            }\n\n            if (index >= choices.length) index = choices.length - 1;\n            if (index < 0) index = 0;\n\n            this.removeHighlight();\n\n            choice = $(choices[index]);\n            choice.addClass(\"select2-highlighted\");\n\n            this.ensureHighlightVisible();\n\n            data = choice.data(\"select2-data\");\n            if (data) {\n                this.opts.element.trigger({ type: \"select2-highlight\", val: this.id(data), choice: data });\n            }\n        },\n\n        removeHighlight: function() {\n            this.results.find(\".select2-highlighted\").removeClass(\"select2-highlighted\");\n        },\n\n        // abstract\n        countSelectableResults: function() {\n            return this.findHighlightableChoices().length;\n        },\n\n        // abstract\n        highlightUnderEvent: function (event) {\n            var el = $(event.target).closest(\".select2-result-selectable\");\n            if (el.length > 0 && !el.is(\".select2-highlighted\")) {\n                var choices = this.findHighlightableChoices();\n                this.highlight(choices.index(el));\n            } else if (el.length == 0) {\n                // if we are over an unselectable item remove all highlights\n                this.removeHighlight();\n            }\n        },\n\n        // abstract\n        loadMoreIfNeeded: function () {\n            var results = this.results,\n                more = results.find(\"li.select2-more-results\"),\n                below, // pixels the element is below the scroll fold, below==0 is when the element is starting to be visible\n                page = this.resultsPage + 1,\n                self=this,\n                term=this.search.val(),\n                context=this.context;\n\n            if (more.length === 0) return;\n            below = more.offset().top - results.offset().top - results.height();\n\n            if (below <= this.opts.loadMorePadding) {\n                more.addClass(\"select2-active\");\n                this.opts.query({\n                        element: this.opts.element,\n                        term: term,\n                        page: page,\n                        context: context,\n                        matcher: this.opts.matcher,\n                        callback: this.bind(function (data) {\n\n                    // ignore a response if the select2 has been closed before it was received\n                    if (!self.opened()) return;\n\n\n                    self.opts.populateResults.call(this, results, data.results, {term: term, page: page, context:context});\n                    self.postprocessResults(data, false, false);\n\n                    if (data.more===true) {\n                        more.detach().appendTo(results).text(self.opts.formatLoadMore(page+1));\n                        window.setTimeout(function() { self.loadMoreIfNeeded(); }, 10);\n                    } else {\n                        more.remove();\n                    }\n                    self.positionDropdown();\n                    self.resultsPage = page;\n                    self.context = data.context;\n                    this.opts.element.trigger({ type: \"select2-loaded\", items: data });\n                })});\n            }\n        },\n\n        /**\n         * Default tokenizer function which does nothing\n         */\n        tokenize: function() {\n\n        },\n\n        /**\n         * @param initial whether or not this is the call to this method right after the dropdown has been opened\n         */\n        // abstract\n        updateResults: function (initial) {\n            var search = this.search,\n                results = this.results,\n                opts = this.opts,\n                data,\n                self = this,\n                input,\n                term = search.val(),\n                lastTerm = $.data(this.container, \"select2-last-term\"),\n                // sequence number used to drop out-of-order responses\n                queryNumber;\n\n            // prevent duplicate queries against the same term\n            if (initial !== true && lastTerm && equal(term, lastTerm)) return;\n\n            $.data(this.container, \"select2-last-term\", term);\n\n            // if the search is currently hidden we do not alter the results\n            if (initial !== true && (this.showSearchInput === false || !this.opened())) {\n                return;\n            }\n\n            function postRender() {\n                search.removeClass(\"select2-active\");\n                self.positionDropdown();\n            }\n\n            function render(html) {\n                results.html(html);\n                postRender();\n            }\n\n            queryNumber = ++this.queryCount;\n\n            var maxSelSize = this.getMaximumSelectionSize();\n            if (maxSelSize >=1) {\n                data = this.data();\n                if ($.isArray(data) && data.length >= maxSelSize && checkFormatter(opts.formatSelectionTooBig, \"formatSelectionTooBig\")) {\n                    render(\"<li class='select2-selection-limit'>\" + opts.formatSelectionTooBig(maxSelSize) + \"</li>\");\n                    return;\n                }\n            }\n\n            if (search.val().length < opts.minimumInputLength) {\n                if (checkFormatter(opts.formatInputTooShort, \"formatInputTooShort\")) {\n                    render(\"<li class='select2-no-results'>\" + opts.formatInputTooShort(search.val(), opts.minimumInputLength) + \"</li>\");\n                } else {\n                    render(\"\");\n                }\n                if (initial && this.showSearch) this.showSearch(true);\n                return;\n            }\n\n            if (opts.maximumInputLength && search.val().length > opts.maximumInputLength) {\n                if (checkFormatter(opts.formatInputTooLong, \"formatInputTooLong\")) {\n                    render(\"<li class='select2-no-results'>\" + opts.formatInputTooLong(search.val(), opts.maximumInputLength) + \"</li>\");\n                } else {\n                    render(\"\");\n                }\n                return;\n            }\n\n            if (opts.formatSearching && this.findHighlightableChoices().length === 0) {\n                render(\"<li class='select2-searching'>\" + opts.formatSearching() + \"</li>\");\n            }\n\n            search.addClass(\"select2-active\");\n\n            this.removeHighlight();\n\n            // give the tokenizer a chance to pre-process the input\n            input = this.tokenize();\n            if (input != undefined && input != null) {\n                search.val(input);\n            }\n\n            this.resultsPage = 1;\n\n            opts.query({\n                element: opts.element,\n                    term: search.val(),\n                    page: this.resultsPage,\n                    context: null,\n                    matcher: opts.matcher,\n                    callback: this.bind(function (data) {\n                var def; // default choice\n\n                // ignore old responses\n                if (queryNumber != this.queryCount) {\n                  return;\n                }\n\n                // ignore a response if the select2 has been closed before it was received\n                if (!this.opened()) {\n                    this.search.removeClass(\"select2-active\");\n                    return;\n                }\n\n                // save context, if any\n                this.context = (data.context===undefined) ? null : data.context;\n                // create a default choice and prepend it to the list\n                if (this.opts.createSearchChoice && search.val() !== \"\") {\n                    def = this.opts.createSearchChoice.call(self, search.val(), data.results);\n                    if (def !== undefined && def !== null && self.id(def) !== undefined && self.id(def) !== null) {\n                        if ($(data.results).filter(\n                            function () {\n                                return equal(self.id(this), self.id(def));\n                            }).length === 0) {\n                            data.results.unshift(def);\n                        }\n                    }\n                }\n\n                if (data.results.length === 0 && checkFormatter(opts.formatNoMatches, \"formatNoMatches\")) {\n                    render(\"<li class='select2-no-results'>\" + opts.formatNoMatches(search.val()) + \"</li>\");\n                    return;\n                }\n\n                results.empty();\n                self.opts.populateResults.call(this, results, data.results, {term: search.val(), page: this.resultsPage, context:null});\n\n                if (data.more === true && checkFormatter(opts.formatLoadMore, \"formatLoadMore\")) {\n                    results.append(\"<li class='select2-more-results'>\" + self.opts.escapeMarkup(opts.formatLoadMore(this.resultsPage)) + \"</li>\");\n                    window.setTimeout(function() { self.loadMoreIfNeeded(); }, 10);\n                }\n\n                this.postprocessResults(data, initial);\n\n                postRender();\n\n                this.opts.element.trigger({ type: \"select2-loaded\", items: data });\n            })});\n        },\n\n        // abstract\n        cancel: function () {\n            this.close();\n        },\n\n        // abstract\n        blur: function () {\n            // if selectOnBlur == true, select the currently highlighted option\n            if (this.opts.selectOnBlur)\n                this.selectHighlighted({noFocus: true});\n\n            this.close();\n            this.container.removeClass(\"select2-container-active\");\n            // synonymous to .is(':focus'), which is available in jquery >= 1.6\n            if (this.search[0] === document.activeElement) { this.search.blur(); }\n            this.clearSearch();\n            this.selection.find(\".select2-search-choice-focus\").removeClass(\"select2-search-choice-focus\");\n        },\n\n        // abstract\n        focusSearch: function () {\n            focus(this.search);\n        },\n\n        // abstract\n        selectHighlighted: function (options) {\n            var index=this.highlight(),\n                highlighted=this.results.find(\".select2-highlighted\"),\n                data = highlighted.closest('.select2-result').data(\"select2-data\");\n\n            if (data) {\n                this.highlight(index);\n                this.onSelect(data, options);\n            } else if (options && options.noFocus) {\n                this.close();\n            }\n        },\n\n        // abstract\n        getPlaceholder: function () {\n            var placeholderOption;\n            return this.opts.element.attr(\"placeholder\") ||\n                this.opts.element.attr(\"data-placeholder\") || // jquery 1.4 compat\n                this.opts.element.data(\"placeholder\") ||\n                this.opts.placeholder ||\n                ((placeholderOption = this.getPlaceholderOption()) !== undefined ? placeholderOption.text() : undefined);\n        },\n\n        // abstract\n        getPlaceholderOption: function() {\n            if (this.select) {\n                var firstOption = this.select.children('option').first();\n                if (this.opts.placeholderOption !== undefined ) {\n                    //Determine the placeholder option based on the specified placeholderOption setting\n                    return (this.opts.placeholderOption === \"first\" && firstOption) ||\n                           (typeof this.opts.placeholderOption === \"function\" && this.opts.placeholderOption(this.select));\n                } else if (firstOption.text() === \"\" && firstOption.val() === \"\") {\n                    //No explicit placeholder option specified, use the first if it's blank\n                    return firstOption;\n                }\n            }\n        },\n\n        /**\n         * Get the desired width for the container element.  This is\n         * derived first from option `width` passed to select2, then\n         * the inline 'style' on the original element, and finally\n         * falls back to the jQuery calculated element width.\n         */\n        // abstract\n        initContainerWidth: function () {\n            function resolveContainerWidth() {\n                var style, attrs, matches, i, l, attr;\n\n                if (this.opts.width === \"off\") {\n                    return null;\n                } else if (this.opts.width === \"element\"){\n                    return this.opts.element.outerWidth(false) === 0 ? 'auto' : this.opts.element.outerWidth(false) + 'px';\n                } else if (this.opts.width === \"copy\" || this.opts.width === \"resolve\") {\n                    // check if there is inline style on the element that contains width\n                    style = this.opts.element.attr('style');\n                    if (style !== undefined) {\n                        attrs = style.split(';');\n                        for (i = 0, l = attrs.length; i < l; i = i + 1) {\n                            attr = attrs[i].replace(/\\s/g, '');\n                            matches = attr.match(/^width:(([-+]?([0-9]*\\.)?[0-9]+)(px|em|ex|%|in|cm|mm|pt|pc))/i);\n                            if (matches !== null && matches.length >= 1)\n                                return matches[1];\n                        }\n                    }\n\n                    if (this.opts.width === \"resolve\") {\n                        // next check if css('width') can resolve a width that is percent based, this is sometimes possible\n                        // when attached to input type=hidden or elements hidden via css\n                        style = this.opts.element.css('width');\n                        if (style.indexOf(\"%\") > 0) return style;\n\n                        // finally, fallback on the calculated width of the element\n                        return (this.opts.element.outerWidth(false) === 0 ? 'auto' : this.opts.element.outerWidth(false) + 'px');\n                    }\n\n                    return null;\n                } else if ($.isFunction(this.opts.width)) {\n                    return this.opts.width();\n                } else {\n                    return this.opts.width;\n               }\n            };\n\n            var width = resolveContainerWidth.call(this);\n            if (width !== null) {\n                this.container.css(\"width\", width);\n            }\n        }\n    });\n\n    SingleSelect2 = clazz(AbstractSelect2, {\n\n        // single\n\n        createContainer: function () {\n            var container = $(document.createElement(\"div\")).attr({\n                \"class\": \"select2-container\"\n            }).html([\n                \"<a href='javascript:void(0)' onclick='return false;' class='select2-choice' tabindex='-1'>\",\n                \"   <span class='select2-chosen'>&nbsp;</span><abbr class='select2-search-choice-close'></abbr>\",\n                \"   <span class='select2-arrow'><b></b></span>\",\n                \"</a>\",\n                \"<input class='select2-focusser select2-offscreen' type='text'/>\",\n                \"<div class='select2-drop select2-display-none'>\",\n                \"   <div class='select2-search'>\",\n                \"       <input type='text' autocomplete='off' autocorrect='off' autocapitalize='off' spellcheck='false' class='select2-input'/>\",\n                \"   </div>\",\n                \"   <ul class='select2-results'>\",\n                \"   </ul>\",\n                \"</div>\"].join(\"\"));\n            return container;\n        },\n\n        // single\n        enableInterface: function() {\n            if (this.parent.enableInterface.apply(this, arguments)) {\n                this.focusser.prop(\"disabled\", !this.isInterfaceEnabled());\n            }\n        },\n\n        // single\n        opening: function () {\n            var el, range, len;\n\n            if (this.opts.minimumResultsForSearch >= 0) {\n                this.showSearch(true);\n            }\n\n            this.parent.opening.apply(this, arguments);\n\n            if (this.showSearchInput !== false) {\n                // IE appends focusser.val() at the end of field :/ so we manually insert it at the beginning using a range\n                // all other browsers handle this just fine\n\n                this.search.val(this.focusser.val());\n            }\n            this.search.focus();\n            // move the cursor to the end after focussing, otherwise it will be at the beginning and\n            // new text will appear *before* focusser.val()\n            el = this.search.get(0);\n            if (el.createTextRange) {\n                range = el.createTextRange();\n                range.collapse(false);\n                range.select();\n            } else if (el.setSelectionRange) {\n                len = this.search.val().length;\n                el.setSelectionRange(len, len);\n            }\n\n            // initializes search's value with nextSearchTerm (if defined by user)\n            // ignore nextSearchTerm if the dropdown is opened by the user pressing a letter\n            if(this.search.val() === \"\") {\n                if(this.nextSearchTerm != undefined){\n                    this.search.val(this.nextSearchTerm);\n                    this.search.select();\n                }\n            }\n\n            this.focusser.prop(\"disabled\", true).val(\"\");\n            this.updateResults(true);\n            this.opts.element.trigger($.Event(\"select2-open\"));\n        },\n\n        // single\n        close: function (params) {\n            if (!this.opened()) return;\n            this.parent.close.apply(this, arguments);\n\n            params = params || {focus: true};\n            this.focusser.removeAttr(\"disabled\");\n\n            if (params.focus) {\n                this.focusser.focus();\n            }\n        },\n\n        // single\n        focus: function () {\n            if (this.opened()) {\n                this.close();\n            } else {\n                this.focusser.removeAttr(\"disabled\");\n                this.focusser.focus();\n            }\n        },\n\n        // single\n        isFocused: function () {\n            return this.container.hasClass(\"select2-container-active\");\n        },\n\n        // single\n        cancel: function () {\n            this.parent.cancel.apply(this, arguments);\n            this.focusser.removeAttr(\"disabled\");\n            this.focusser.focus();\n        },\n\n        // single\n        destroy: function() {\n            $(\"label[for='\" + this.focusser.attr('id') + \"']\")\n                .attr('for', this.opts.element.attr(\"id\"));\n            this.parent.destroy.apply(this, arguments);\n        },\n\n        // single\n        initContainer: function () {\n\n            var selection,\n                container = this.container,\n                dropdown = this.dropdown;\n\n            if (this.opts.minimumResultsForSearch < 0) {\n                this.showSearch(false);\n            } else {\n                this.showSearch(true);\n            }\n\n            this.selection = selection = container.find(\".select2-choice\");\n\n            this.focusser = container.find(\".select2-focusser\");\n\n            // rewrite labels from original element to focusser\n            this.focusser.attr(\"id\", \"s2id_autogen\"+nextUid());\n\n            $(\"label[for='\" + this.opts.element.attr(\"id\") + \"']\")\n                .attr('for', this.focusser.attr('id'));\n\n            this.focusser.attr(\"tabindex\", this.elementTabIndex);\n\n            this.search.on(\"keydown\", this.bind(function (e) {\n                if (!this.isInterfaceEnabled()) return;\n\n                if (e.which === KEY.PAGE_UP || e.which === KEY.PAGE_DOWN) {\n                    // prevent the page from scrolling\n                    killEvent(e);\n                    return;\n                }\n\n                switch (e.which) {\n                    case KEY.UP:\n                    case KEY.DOWN:\n                        this.moveHighlight((e.which === KEY.UP) ? -1 : 1);\n                        killEvent(e);\n                        return;\n                    case KEY.ENTER:\n                        this.selectHighlighted();\n                        killEvent(e);\n                        return;\n                    case KEY.TAB:\n                        this.selectHighlighted({noFocus: true});\n                        return;\n                    case KEY.ESC:\n                        this.cancel(e);\n                        killEvent(e);\n                        return;\n                }\n            }));\n\n            this.search.on(\"blur\", this.bind(function(e) {\n                // a workaround for chrome to keep the search field focussed when the scroll bar is used to scroll the dropdown.\n                // without this the search field loses focus which is annoying\n                if (document.activeElement === this.body().get(0)) {\n                    window.setTimeout(this.bind(function() {\n                        this.search.focus();\n                    }), 0);\n                }\n            }));\n\n            this.focusser.on(\"keydown\", this.bind(function (e) {\n                if (!this.isInterfaceEnabled()) return;\n\n                if (e.which === KEY.TAB || KEY.isControl(e) || KEY.isFunctionKey(e) || e.which === KEY.ESC) {\n                    return;\n                }\n\n                if (this.opts.openOnEnter === false && e.which === KEY.ENTER) {\n                    killEvent(e);\n                    return;\n                }\n\n                if (e.which == KEY.DOWN || e.which == KEY.UP\n                    || (e.which == KEY.ENTER && this.opts.openOnEnter)) {\n\n                    if (e.altKey || e.ctrlKey || e.shiftKey || e.metaKey) return;\n\n                    this.open();\n                    killEvent(e);\n                    return;\n                }\n\n                if (e.which == KEY.DELETE || e.which == KEY.BACKSPACE) {\n                    if (this.opts.allowClear) {\n                        this.clear();\n                    }\n                    killEvent(e);\n                    return;\n                }\n            }));\n\n\n            installKeyUpChangeEvent(this.focusser);\n            this.focusser.on(\"keyup-change input\", this.bind(function(e) {\n                if (this.opts.minimumResultsForSearch >= 0) {\n                    e.stopPropagation();\n                    if (this.opened()) return;\n                    this.open();\n                }\n            }));\n\n            selection.on(\"mousedown\", \"abbr\", this.bind(function (e) {\n                if (!this.isInterfaceEnabled()) return;\n                this.clear();\n                killEventImmediately(e);\n                this.close();\n                this.selection.focus();\n            }));\n\n            selection.on(\"mousedown\", this.bind(function (e) {\n\n                if (!this.container.hasClass(\"select2-container-active\")) {\n                    this.opts.element.trigger($.Event(\"select2-focus\"));\n                }\n\n                if (this.opened()) {\n                    this.close();\n                } else if (this.isInterfaceEnabled()) {\n                    this.open();\n                }\n\n                killEvent(e);\n            }));\n\n            dropdown.on(\"mousedown\", this.bind(function() { this.search.focus(); }));\n\n            selection.on(\"focus\", this.bind(function(e) {\n                killEvent(e);\n            }));\n\n            this.focusser.on(\"focus\", this.bind(function(){\n                if (!this.container.hasClass(\"select2-container-active\")) {\n                    this.opts.element.trigger($.Event(\"select2-focus\"));\n                }\n                this.container.addClass(\"select2-container-active\");\n            })).on(\"blur\", this.bind(function() {\n                if (!this.opened()) {\n                    this.container.removeClass(\"select2-container-active\");\n                    this.opts.element.trigger($.Event(\"select2-blur\"));\n                }\n            }));\n            this.search.on(\"focus\", this.bind(function(){\n                if (!this.container.hasClass(\"select2-container-active\")) {\n                    this.opts.element.trigger($.Event(\"select2-focus\"));\n                }\n                this.container.addClass(\"select2-container-active\");\n            }));\n\n            this.initContainerWidth();\n            this.opts.element.addClass(\"select2-offscreen\");\n            this.setPlaceholder();\n\n        },\n\n        // single\n        clear: function(triggerChange) {\n            var data=this.selection.data(\"select2-data\");\n            if (data) { // guard against queued quick consecutive clicks\n                var evt = $.Event(\"select2-clearing\");\n                this.opts.element.trigger(evt);\n                if (evt.isDefaultPrevented()) {\n                    return;\n                }\n                var placeholderOption = this.getPlaceholderOption();\n                this.opts.element.val(placeholderOption ? placeholderOption.val() : \"\");\n                this.selection.find(\".select2-chosen\").empty();\n                this.selection.removeData(\"select2-data\");\n                this.setPlaceholder();\n\n                if (triggerChange !== false){\n                    this.opts.element.trigger({ type: \"select2-removed\", val: this.id(data), choice: data });\n                    this.triggerChange({removed:data});\n                }\n            }\n        },\n\n        /**\n         * Sets selection based on source element's value\n         */\n        // single\n        initSelection: function () {\n            var selected;\n            if (this.isPlaceholderOptionSelected()) {\n                this.updateSelection(null);\n                this.close();\n                this.setPlaceholder();\n            } else {\n                var self = this;\n                this.opts.initSelection.call(null, this.opts.element, function(selected){\n                    if (selected !== undefined && selected !== null) {\n                        self.updateSelection(selected);\n                        self.close();\n                        self.setPlaceholder();\n                    }\n                });\n            }\n        },\n\n        isPlaceholderOptionSelected: function() {\n            var placeholderOption;\n            if (!this.getPlaceholder()) return false; // no placeholder specified so no option should be considered\n            return ((placeholderOption = this.getPlaceholderOption()) !== undefined && placeholderOption.prop(\"selected\"))\n                || (this.opts.element.val() === \"\")\n                || (this.opts.element.val() === undefined)\n                || (this.opts.element.val() === null);\n        },\n\n        // single\n        prepareOpts: function () {\n            var opts = this.parent.prepareOpts.apply(this, arguments),\n                self=this;\n\n            if (opts.element.get(0).tagName.toLowerCase() === \"select\") {\n                // install the selection initializer\n                opts.initSelection = function (element, callback) {\n                    var selected = element.find(\"option\").filter(function() { return this.selected });\n                    // a single select box always has a value, no need to null check 'selected'\n                    callback(self.optionToData(selected));\n                };\n            } else if (\"data\" in opts) {\n                // install default initSelection when applied to hidden input and data is local\n                opts.initSelection = opts.initSelection || function (element, callback) {\n                    var id = element.val();\n                    //search in data by id, storing the actual matching item\n                    var match = null;\n                    opts.query({\n                        matcher: function(term, text, el){\n                            var is_match = equal(id, opts.id(el));\n                            if (is_match) {\n                                match = el;\n                            }\n                            return is_match;\n                        },\n                        callback: !$.isFunction(callback) ? $.noop : function() {\n                            callback(match);\n                        }\n                    });\n                };\n            }\n\n            return opts;\n        },\n\n        // single\n        getPlaceholder: function() {\n            // if a placeholder is specified on a single select without a valid placeholder option ignore it\n            if (this.select) {\n                if (this.getPlaceholderOption() === undefined) {\n                    return undefined;\n                }\n            }\n\n            return this.parent.getPlaceholder.apply(this, arguments);\n        },\n\n        // single\n        setPlaceholder: function () {\n            var placeholder = this.getPlaceholder();\n\n            if (this.isPlaceholderOptionSelected() && placeholder !== undefined) {\n\n                // check for a placeholder option if attached to a select\n                if (this.select && this.getPlaceholderOption() === undefined) return;\n\n                this.selection.find(\".select2-chosen\").html(this.opts.escapeMarkup(placeholder));\n\n                this.selection.addClass(\"select2-default\");\n\n                this.container.removeClass(\"select2-allowclear\");\n            }\n        },\n\n        // single\n        postprocessResults: function (data, initial, noHighlightUpdate) {\n            var selected = 0, self = this, showSearchInput = true;\n\n            // find the selected element in the result list\n\n            this.findHighlightableChoices().each2(function (i, elm) {\n                if (equal(self.id(elm.data(\"select2-data\")), self.opts.element.val())) {\n                    selected = i;\n                    return false;\n                }\n            });\n\n            // and highlight it\n            if (noHighlightUpdate !== false) {\n                if (initial === true && selected >= 0) {\n                    this.highlight(selected);\n                } else {\n                    this.highlight(0);\n                }\n            }\n\n            // hide the search box if this is the first we got the results and there are enough of them for search\n\n            if (initial === true) {\n                var min = this.opts.minimumResultsForSearch;\n                if (min >= 0) {\n                    this.showSearch(countResults(data.results) >= min);\n                }\n            }\n        },\n\n        // single\n        showSearch: function(showSearchInput) {\n            if (this.showSearchInput === showSearchInput) return;\n\n            this.showSearchInput = showSearchInput;\n\n            this.dropdown.find(\".select2-search\").toggleClass(\"select2-search-hidden\", !showSearchInput);\n            this.dropdown.find(\".select2-search\").toggleClass(\"select2-offscreen\", !showSearchInput);\n            //add \"select2-with-searchbox\" to the container if search box is shown\n            $(this.dropdown, this.container).toggleClass(\"select2-with-searchbox\", showSearchInput);\n        },\n\n        // single\n        onSelect: function (data, options) {\n\n            if (!this.triggerSelect(data)) { return; }\n\n            var old = this.opts.element.val(),\n                oldData = this.data();\n\n            this.opts.element.val(this.id(data));\n            this.updateSelection(data);\n\n            this.opts.element.trigger({ type: \"select2-selected\", val: this.id(data), choice: data });\n\n            this.nextSearchTerm = this.opts.nextSearchTerm(data, this.search.val());\n            this.close();\n\n            if (!options || !options.noFocus)\n                this.focusser.focus();\n\n            if (!equal(old, this.id(data))) { this.triggerChange({added:data,removed:oldData}); }\n        },\n\n        // single\n        updateSelection: function (data) {\n\n            var container=this.selection.find(\".select2-chosen\"), formatted, cssClass;\n\n            this.selection.data(\"select2-data\", data);\n\n            container.empty();\n            if (data !== null) {\n                formatted=this.opts.formatSelection(data, container, this.opts.escapeMarkup);\n            }\n            if (formatted !== undefined) {\n                container.append(formatted);\n            }\n            cssClass=this.opts.formatSelectionCssClass(data, container);\n            if (cssClass !== undefined) {\n                container.addClass(cssClass);\n            }\n\n            this.selection.removeClass(\"select2-default\");\n\n            if (this.opts.allowClear && this.getPlaceholder() !== undefined) {\n                this.container.addClass(\"select2-allowclear\");\n            }\n        },\n\n        // single\n        val: function () {\n            var val,\n                triggerChange = false,\n                data = null,\n                self = this,\n                oldData = this.data();\n\n            if (arguments.length === 0) {\n                return this.opts.element.val();\n            }\n\n            val = arguments[0];\n\n            if (arguments.length > 1) {\n                triggerChange = arguments[1];\n            }\n\n            if (this.select) {\n                this.select\n                    .val(val)\n                    .find(\"option\").filter(function() { return this.selected }).each2(function (i, elm) {\n                        data = self.optionToData(elm);\n                        return false;\n                    });\n                this.updateSelection(data);\n                this.setPlaceholder();\n                if (triggerChange) {\n                    this.triggerChange({added: data, removed:oldData});\n                }\n            } else {\n                // val is an id. !val is true for [undefined,null,'',0] - 0 is legal\n                if (!val && val !== 0) {\n                    this.clear(triggerChange);\n                    return;\n                }\n                if (this.opts.initSelection === undefined) {\n                    throw new Error(\"cannot call val() if initSelection() is not defined\");\n                }\n                this.opts.element.val(val);\n                this.opts.initSelection(this.opts.element, function(data){\n                    self.opts.element.val(!data ? \"\" : self.id(data));\n                    self.updateSelection(data);\n                    self.setPlaceholder();\n                    if (triggerChange) {\n                        self.triggerChange({added: data, removed:oldData});\n                    }\n                });\n            }\n        },\n\n        // single\n        clearSearch: function () {\n            this.search.val(\"\");\n            this.focusser.val(\"\");\n        },\n\n        // single\n        data: function(value) {\n            var data,\n                triggerChange = false;\n\n            if (arguments.length === 0) {\n                data = this.selection.data(\"select2-data\");\n                if (data == undefined) data = null;\n                return data;\n            } else {\n                if (arguments.length > 1) {\n                    triggerChange = arguments[1];\n                }\n                if (!value) {\n                    this.clear(triggerChange);\n                } else {\n                    data = this.data();\n                    this.opts.element.val(!value ? \"\" : this.id(value));\n                    this.updateSelection(value);\n                    if (triggerChange) {\n                        this.triggerChange({added: value, removed:data});\n                    }\n                }\n            }\n        }\n    });\n\n    MultiSelect2 = clazz(AbstractSelect2, {\n\n        // multi\n        createContainer: function () {\n            var container = $(document.createElement(\"div\")).attr({\n                \"class\": \"select2-container select2-container-multi\"\n            }).html([\n                \"<ul class='select2-choices'>\",\n                \"  <li class='select2-search-field'>\",\n                \"    <input type='text' autocomplete='off' autocorrect='off' autocapitalize='off' spellcheck='false' class='select2-input'>\",\n                \"  </li>\",\n                \"</ul>\",\n                \"<div class='select2-drop select2-drop-multi select2-display-none'>\",\n                \"   <ul class='select2-results'>\",\n                \"   </ul>\",\n                \"</div>\"].join(\"\"));\n            return container;\n        },\n\n        // multi\n        prepareOpts: function () {\n            var opts = this.parent.prepareOpts.apply(this, arguments),\n                self=this;\n\n            // TODO validate placeholder is a string if specified\n\n            if (opts.element.get(0).tagName.toLowerCase() === \"select\") {\n                // install sthe selection initializer\n                opts.initSelection = function (element, callback) {\n\n                    var data = [];\n\n                    element.find(\"option\").filter(function() { return this.selected }).each2(function (i, elm) {\n                        data.push(self.optionToData(elm));\n                    });\n                    callback(data);\n                };\n            } else if (\"data\" in opts) {\n                // install default initSelection when applied to hidden input and data is local\n                opts.initSelection = opts.initSelection || function (element, callback) {\n                    var ids = splitVal(element.val(), opts.separator);\n                    //search in data by array of ids, storing matching items in a list\n                    var matches = [];\n                    opts.query({\n                        matcher: function(term, text, el){\n                            var is_match = $.grep(ids, function(id) {\n                                return equal(id, opts.id(el));\n                            }).length;\n                            if (is_match) {\n                                matches.push(el);\n                            }\n                            return is_match;\n                        },\n                        callback: !$.isFunction(callback) ? $.noop : function() {\n                            // reorder matches based on the order they appear in the ids array because right now\n                            // they are in the order in which they appear in data array\n                            var ordered = [];\n                            for (var i = 0; i < ids.length; i++) {\n                                var id = ids[i];\n                                for (var j = 0; j < matches.length; j++) {\n                                    var match = matches[j];\n                                    if (equal(id, opts.id(match))) {\n                                        ordered.push(match);\n                                        matches.splice(j, 1);\n                                        break;\n                                    }\n                                }\n                            }\n                            callback(ordered);\n                        }\n                    });\n                };\n            }\n\n            return opts;\n        },\n\n        // multi\n        selectChoice: function (choice) {\n\n            var selected = this.container.find(\".select2-search-choice-focus\");\n            if (selected.length && choice && choice[0] == selected[0]) {\n\n            } else {\n                if (selected.length) {\n                    this.opts.element.trigger(\"choice-deselected\", selected);\n                }\n                selected.removeClass(\"select2-search-choice-focus\");\n                if (choice && choice.length) {\n                    this.close();\n                    choice.addClass(\"select2-search-choice-focus\");\n                    this.opts.element.trigger(\"choice-selected\", choice);\n                }\n            }\n        },\n\n        // multi\n        destroy: function() {\n            $(\"label[for='\" + this.search.attr('id') + \"']\")\n                .attr('for', this.opts.element.attr(\"id\"));\n            this.parent.destroy.apply(this, arguments);\n        },\n\n        // multi\n        initContainer: function () {\n\n            var selector = \".select2-choices\", selection;\n\n            this.searchContainer = this.container.find(\".select2-search-field\");\n            this.selection = selection = this.container.find(selector);\n\n            var _this = this;\n            this.selection.on(\"click\", \".select2-search-choice:not(.select2-locked)\", function (e) {\n                //killEvent(e);\n                _this.search[0].focus();\n                _this.selectChoice($(this));\n            });\n\n            // rewrite labels from original element to focusser\n            this.search.attr(\"id\", \"s2id_autogen\"+nextUid());\n            $(\"label[for='\" + this.opts.element.attr(\"id\") + \"']\")\n                .attr('for', this.search.attr('id'));\n\n            this.search.on(\"input paste\", this.bind(function() {\n                if (!this.isInterfaceEnabled()) return;\n                if (!this.opened()) {\n                    this.open();\n                }\n            }));\n\n            this.search.attr(\"tabindex\", this.elementTabIndex);\n\n            this.keydowns = 0;\n            this.search.on(\"keydown\", this.bind(function (e) {\n                if (!this.isInterfaceEnabled()) return;\n\n                ++this.keydowns;\n                var selected = selection.find(\".select2-search-choice-focus\");\n                var prev = selected.prev(\".select2-search-choice:not(.select2-locked)\");\n                var next = selected.next(\".select2-search-choice:not(.select2-locked)\");\n                var pos = getCursorInfo(this.search);\n\n                if (selected.length &&\n                    (e.which == KEY.LEFT || e.which == KEY.RIGHT || e.which == KEY.BACKSPACE || e.which == KEY.DELETE || e.which == KEY.ENTER)) {\n                    var selectedChoice = selected;\n                    if (e.which == KEY.LEFT && prev.length) {\n                        selectedChoice = prev;\n                    }\n                    else if (e.which == KEY.RIGHT) {\n                        selectedChoice = next.length ? next : null;\n                    }\n                    else if (e.which === KEY.BACKSPACE) {\n                        this.unselect(selected.first());\n                        this.search.width(10);\n                        selectedChoice = prev.length ? prev : next;\n                    } else if (e.which == KEY.DELETE) {\n                        this.unselect(selected.first());\n                        this.search.width(10);\n                        selectedChoice = next.length ? next : null;\n                    } else if (e.which == KEY.ENTER) {\n                        selectedChoice = null;\n                    }\n\n                    this.selectChoice(selectedChoice);\n                    killEvent(e);\n                    if (!selectedChoice || !selectedChoice.length) {\n                        this.open();\n                    }\n                    return;\n                } else if (((e.which === KEY.BACKSPACE && this.keydowns == 1)\n                    || e.which == KEY.LEFT) && (pos.offset == 0 && !pos.length)) {\n\n                    this.selectChoice(selection.find(\".select2-search-choice:not(.select2-locked)\").last());\n                    killEvent(e);\n                    return;\n                } else {\n                    this.selectChoice(null);\n                }\n\n                if (this.opened()) {\n                    switch (e.which) {\n                    case KEY.UP:\n                    case KEY.DOWN:\n                        this.moveHighlight((e.which === KEY.UP) ? -1 : 1);\n                        killEvent(e);\n                        return;\n                    case KEY.ENTER:\n                        this.selectHighlighted();\n                        killEvent(e);\n                        return;\n                    case KEY.TAB:\n                        this.selectHighlighted({noFocus:true});\n                        this.close();\n                        return;\n                    case KEY.ESC:\n                        this.cancel(e);\n                        killEvent(e);\n                        return;\n                    }\n                }\n\n                if (e.which === KEY.TAB || KEY.isControl(e) || KEY.isFunctionKey(e)\n                 || e.which === KEY.BACKSPACE || e.which === KEY.ESC) {\n                    return;\n                }\n\n                if (e.which === KEY.ENTER) {\n                    if (this.opts.openOnEnter === false) {\n                        return;\n                    } else if (e.altKey || e.ctrlKey || e.shiftKey || e.metaKey) {\n                        return;\n                    }\n                }\n\n                this.open();\n\n                if (e.which === KEY.PAGE_UP || e.which === KEY.PAGE_DOWN) {\n                    // prevent the page from scrolling\n                    killEvent(e);\n                }\n\n                if (e.which === KEY.ENTER) {\n                    // prevent form from being submitted\n                    killEvent(e);\n                }\n\n            }));\n\n            this.search.on(\"keyup\", this.bind(function (e) {\n                this.keydowns = 0;\n                this.resizeSearch();\n            })\n            );\n\n            this.search.on(\"blur\", this.bind(function(e) {\n                this.container.removeClass(\"select2-container-active\");\n                this.search.removeClass(\"select2-focused\");\n                this.selectChoice(null);\n                if (!this.opened()) this.clearSearch();\n                e.stopImmediatePropagation();\n                this.opts.element.trigger($.Event(\"select2-blur\"));\n            }));\n\n            this.container.on(\"click\", selector, this.bind(function (e) {\n                if (!this.isInterfaceEnabled()) return;\n                if ($(e.target).closest(\".select2-search-choice\").length > 0) {\n                    // clicked inside a select2 search choice, do not open\n                    return;\n                }\n                this.selectChoice(null);\n                this.clearPlaceholder();\n                if (!this.container.hasClass(\"select2-container-active\")) {\n                    this.opts.element.trigger($.Event(\"select2-focus\"));\n                }\n                this.open();\n                this.focusSearch();\n                e.preventDefault();\n            }));\n\n            this.container.on(\"focus\", selector, this.bind(function () {\n                if (!this.isInterfaceEnabled()) return;\n                if (!this.container.hasClass(\"select2-container-active\")) {\n                    this.opts.element.trigger($.Event(\"select2-focus\"));\n                }\n                this.container.addClass(\"select2-container-active\");\n                this.dropdown.addClass(\"select2-drop-active\");\n                this.clearPlaceholder();\n            }));\n\n            this.initContainerWidth();\n            this.opts.element.addClass(\"select2-offscreen\");\n\n            // set the placeholder if necessary\n            this.clearSearch();\n        },\n\n        // multi\n        enableInterface: function() {\n            if (this.parent.enableInterface.apply(this, arguments)) {\n                this.search.prop(\"disabled\", !this.isInterfaceEnabled());\n            }\n        },\n\n        // multi\n        initSelection: function () {\n            var data;\n            if (this.opts.element.val() === \"\" && this.opts.element.text() === \"\") {\n                this.updateSelection([]);\n                this.close();\n                // set the placeholder if necessary\n                this.clearSearch();\n            }\n            if (this.select || this.opts.element.val() !== \"\") {\n                var self = this;\n                this.opts.initSelection.call(null, this.opts.element, function(data){\n                    if (data !== undefined && data !== null) {\n                        self.updateSelection(data);\n                        self.close();\n                        // set the placeholder if necessary\n                        self.clearSearch();\n                    }\n                });\n            }\n        },\n\n        // multi\n        clearSearch: function () {\n            var placeholder = this.getPlaceholder(),\n                maxWidth = this.getMaxSearchWidth();\n\n            if (placeholder !== undefined  && this.getVal().length === 0 && this.search.hasClass(\"select2-focused\") === false) {\n                this.search.val(placeholder).addClass(\"select2-default\");\n                // stretch the search box to full width of the container so as much of the placeholder is visible as possible\n                // we could call this.resizeSearch(), but we do not because that requires a sizer and we do not want to create one so early because of a firefox bug, see #944\n                this.search.width(maxWidth > 0 ? maxWidth : this.container.css(\"width\"));\n            } else {\n                this.search.val(\"\").width(10);\n            }\n        },\n\n        // multi\n        clearPlaceholder: function () {\n            if (this.search.hasClass(\"select2-default\")) {\n                this.search.val(\"\").removeClass(\"select2-default\");\n            }\n        },\n\n        // multi\n        opening: function () {\n            this.clearPlaceholder(); // should be done before super so placeholder is not used to search\n            this.resizeSearch();\n\n            this.parent.opening.apply(this, arguments);\n\n            this.focusSearch();\n\n            this.updateResults(true);\n            this.search.focus();\n            this.opts.element.trigger($.Event(\"select2-open\"));\n        },\n\n        // multi\n        close: function () {\n            if (!this.opened()) return;\n            this.parent.close.apply(this, arguments);\n        },\n\n        // multi\n        focus: function () {\n            this.close();\n            this.search.focus();\n        },\n\n        // multi\n        isFocused: function () {\n            return this.search.hasClass(\"select2-focused\");\n        },\n\n        // multi\n        updateSelection: function (data) {\n            var ids = [], filtered = [], self = this;\n\n            // filter out duplicates\n            $(data).each(function () {\n                if (indexOf(self.id(this), ids) < 0) {\n                    ids.push(self.id(this));\n                    filtered.push(this);\n                }\n            });\n            data = filtered;\n\n            this.selection.find(\".select2-search-choice\").remove();\n            $(data).each(function () {\n                self.addSelectedChoice(this);\n            });\n            self.postprocessResults();\n        },\n\n        // multi\n        tokenize: function() {\n            var input = this.search.val();\n            input = this.opts.tokenizer.call(this, input, this.data(), this.bind(this.onSelect), this.opts);\n            if (input != null && input != undefined) {\n                this.search.val(input);\n                if (input.length > 0) {\n                    this.open();\n                }\n            }\n\n        },\n\n        // multi\n        onSelect: function (data, options) {\n\n            if (!this.triggerSelect(data)) { return; }\n\n            this.addSelectedChoice(data);\n\n            this.opts.element.trigger({ type: \"selected\", val: this.id(data), choice: data });\n\n            if (this.select || !this.opts.closeOnSelect) this.postprocessResults(data, false, this.opts.closeOnSelect===true);\n\n            if (this.opts.closeOnSelect) {\n                this.close();\n                this.search.width(10);\n            } else {\n                if (this.countSelectableResults()>0) {\n                    this.search.width(10);\n                    this.resizeSearch();\n                    if (this.getMaximumSelectionSize() > 0 && this.val().length >= this.getMaximumSelectionSize()) {\n                        // if we reached max selection size repaint the results so choices\n                        // are replaced with the max selection reached message\n                        this.updateResults(true);\n                    }\n                    this.positionDropdown();\n                } else {\n                    // if nothing left to select close\n                    this.close();\n                    this.search.width(10);\n                }\n            }\n\n            // since its not possible to select an element that has already been\n            // added we do not need to check if this is a new element before firing change\n            this.triggerChange({ added: data });\n\n            if (!options || !options.noFocus)\n                this.focusSearch();\n        },\n\n        // multi\n        cancel: function () {\n            this.close();\n            this.focusSearch();\n        },\n\n        addSelectedChoice: function (data) {\n            var enableChoice = !data.locked,\n                enabledItem = $(\n                    \"<li class='select2-search-choice'>\" +\n                    \"    <div></div>\" +\n                    \"    <a href='#' onclick='return false;' class='select2-search-choice-close' tabindex='-1'></a>\" +\n                    \"</li>\"),\n                disabledItem = $(\n                    \"<li class='select2-search-choice select2-locked'>\" +\n                    \"<div></div>\" +\n                    \"</li>\");\n            var choice = enableChoice ? enabledItem : disabledItem,\n                id = this.id(data),\n                val = this.getVal(),\n                formatted,\n                cssClass;\n\n            formatted=this.opts.formatSelection(data, choice.find(\"div\"), this.opts.escapeMarkup);\n            if (formatted != undefined) {\n                choice.find(\"div\").replaceWith(\"<div>\"+formatted+\"</div>\");\n            }\n            cssClass=this.opts.formatSelectionCssClass(data, choice.find(\"div\"));\n            if (cssClass != undefined) {\n                choice.addClass(cssClass);\n            }\n\n            if(enableChoice){\n              choice.find(\".select2-search-choice-close\")\n                  .on(\"mousedown\", killEvent)\n                  .on(\"click dblclick\", this.bind(function (e) {\n                  if (!this.isInterfaceEnabled()) return;\n\n                  $(e.target).closest(\".select2-search-choice\").fadeOut('fast', this.bind(function(){\n                      this.unselect($(e.target));\n                      this.selection.find(\".select2-search-choice-focus\").removeClass(\"select2-search-choice-focus\");\n                      this.close();\n                      this.focusSearch();\n                  })).dequeue();\n                  killEvent(e);\n              })).on(\"focus\", this.bind(function () {\n                  if (!this.isInterfaceEnabled()) return;\n                  this.container.addClass(\"select2-container-active\");\n                  this.dropdown.addClass(\"select2-drop-active\");\n              }));\n            }\n\n            choice.data(\"select2-data\", data);\n            choice.insertBefore(this.searchContainer);\n\n            val.push(id);\n            this.setVal(val);\n        },\n\n        // multi\n        unselect: function (selected) {\n            var val = this.getVal(),\n                data,\n                index;\n            selected = selected.closest(\".select2-search-choice\");\n\n            if (selected.length === 0) {\n                throw \"Invalid argument: \" + selected + \". Must be .select2-search-choice\";\n            }\n\n            data = selected.data(\"select2-data\");\n\n            if (!data) {\n                // prevent a race condition when the 'x' is clicked really fast repeatedly the event can be queued\n                // and invoked on an element already removed\n                return;\n            }\n\n            while((index = indexOf(this.id(data), val)) >= 0) {\n                val.splice(index, 1);\n                this.setVal(val);\n                if (this.select) this.postprocessResults();\n            }\n\n            var evt = $.Event(\"select2-removing\");\n            evt.val = this.id(data);\n            evt.choice = data;\n            this.opts.element.trigger(evt);\n\n            if (evt.isDefaultPrevented()) {\n                return;\n            }\n\n            selected.remove();\n\n            this.opts.element.trigger({ type: \"select2-removed\", val: this.id(data), choice: data });\n            this.triggerChange({ removed: data });\n        },\n\n        // multi\n        postprocessResults: function (data, initial, noHighlightUpdate) {\n            var val = this.getVal(),\n                choices = this.results.find(\".select2-result\"),\n                compound = this.results.find(\".select2-result-with-children\"),\n                self = this;\n\n            choices.each2(function (i, choice) {\n                var id = self.id(choice.data(\"select2-data\"));\n                if (indexOf(id, val) >= 0) {\n                    choice.addClass(\"select2-selected\");\n                    // mark all children of the selected parent as selected\n                    choice.find(\".select2-result-selectable\").addClass(\"select2-selected\");\n                }\n            });\n\n            compound.each2(function(i, choice) {\n                // hide an optgroup if it doesnt have any selectable children\n                if (!choice.is('.select2-result-selectable')\n                    && choice.find(\".select2-result-selectable:not(.select2-selected)\").length === 0) {\n                    choice.addClass(\"select2-selected\");\n                }\n            });\n\n            if (this.highlight() == -1 && noHighlightUpdate !== false){\n                self.highlight(0);\n            }\n\n            //If all results are chosen render formatNoMAtches\n            if(!this.opts.createSearchChoice && !choices.filter('.select2-result:not(.select2-selected)').length > 0){\n                if(!data || data && !data.more && this.results.find(\".select2-no-results\").length === 0) {\n                    if (checkFormatter(self.opts.formatNoMatches, \"formatNoMatches\")) {\n                        this.results.append(\"<li class='select2-no-results'>\" + self.opts.formatNoMatches(self.search.val()) + \"</li>\");\n                    }\n                }\n            }\n\n        },\n\n        // multi\n        getMaxSearchWidth: function() {\n            return this.selection.width() - getSideBorderPadding(this.search);\n        },\n\n        // multi\n        resizeSearch: function () {\n            var minimumWidth, left, maxWidth, containerLeft, searchWidth,\n                sideBorderPadding = getSideBorderPadding(this.search);\n\n            minimumWidth = measureTextWidth(this.search) + 10;\n\n            left = this.search.offset().left;\n\n            maxWidth = this.selection.width();\n            containerLeft = this.selection.offset().left;\n\n            searchWidth = maxWidth - (left - containerLeft) - sideBorderPadding;\n\n            if (searchWidth < minimumWidth) {\n                searchWidth = maxWidth - sideBorderPadding;\n            }\n\n            if (searchWidth < 40) {\n                searchWidth = maxWidth - sideBorderPadding;\n            }\n\n            if (searchWidth <= 0) {\n              searchWidth = minimumWidth;\n            }\n\n            this.search.width(Math.floor(searchWidth));\n        },\n\n        // multi\n        getVal: function () {\n            var val;\n            if (this.select) {\n                val = this.select.val();\n                return val === null ? [] : val;\n            } else {\n                val = this.opts.element.val();\n                return splitVal(val, this.opts.separator);\n            }\n        },\n\n        // multi\n        setVal: function (val) {\n            var unique;\n            if (this.select) {\n                this.select.val(val);\n            } else {\n                unique = [];\n                // filter out duplicates\n                $(val).each(function () {\n                    if (indexOf(this, unique) < 0) unique.push(this);\n                });\n                this.opts.element.val(unique.length === 0 ? \"\" : unique.join(this.opts.separator));\n            }\n        },\n\n        // multi\n        buildChangeDetails: function (old, current) {\n            var current = current.slice(0),\n                old = old.slice(0);\n\n            // remove intersection from each array\n            for (var i = 0; i < current.length; i++) {\n                for (var j = 0; j < old.length; j++) {\n                    if (equal(this.opts.id(current[i]), this.opts.id(old[j]))) {\n                        current.splice(i, 1);\n                        if(i>0){\n                            i--;\n                        }\n                        old.splice(j, 1);\n                        j--;\n                    }\n                }\n            }\n\n            return {added: current, removed: old};\n        },\n\n\n        // multi\n        val: function (val, triggerChange) {\n            var oldData, self=this;\n\n            if (arguments.length === 0) {\n                return this.getVal();\n            }\n\n            oldData=this.data();\n            if (!oldData.length) oldData=[];\n\n            // val is an id. !val is true for [undefined,null,'',0] - 0 is legal\n            if (!val && val !== 0) {\n                this.opts.element.val(\"\");\n                this.updateSelection([]);\n                this.clearSearch();\n                if (triggerChange) {\n                    this.triggerChange({added: this.data(), removed: oldData});\n                }\n                return;\n            }\n\n            // val is a list of ids\n            this.setVal(val);\n\n            if (this.select) {\n                this.opts.initSelection(this.select, this.bind(this.updateSelection));\n                if (triggerChange) {\n                    this.triggerChange(this.buildChangeDetails(oldData, this.data()));\n                }\n            } else {\n                if (this.opts.initSelection === undefined) {\n                    throw new Error(\"val() cannot be called if initSelection() is not defined\");\n                }\n\n                this.opts.initSelection(this.opts.element, function(data){\n                    var ids=$.map(data, self.id);\n                    self.setVal(ids);\n                    self.updateSelection(data);\n                    self.clearSearch();\n                    if (triggerChange) {\n                        self.triggerChange(self.buildChangeDetails(oldData, self.data()));\n                    }\n                });\n            }\n            this.clearSearch();\n        },\n\n        // multi\n        onSortStart: function() {\n            if (this.select) {\n                throw new Error(\"Sorting of elements is not supported when attached to <select>. Attach to <input type='hidden'/> instead.\");\n            }\n\n            // collapse search field into 0 width so its container can be collapsed as well\n            this.search.width(0);\n            // hide the container\n            this.searchContainer.hide();\n        },\n\n        // multi\n        onSortEnd:function() {\n\n            var val=[], self=this;\n\n            // show search and move it to the end of the list\n            this.searchContainer.show();\n            // make sure the search container is the last item in the list\n            this.searchContainer.appendTo(this.searchContainer.parent());\n            // since we collapsed the width in dragStarted, we resize it here\n            this.resizeSearch();\n\n            // update selection\n            this.selection.find(\".select2-search-choice\").each(function() {\n                val.push(self.opts.id($(this).data(\"select2-data\")));\n            });\n            this.setVal(val);\n            this.triggerChange();\n        },\n\n        // multi\n        data: function(values, triggerChange) {\n            var self=this, ids, old;\n            if (arguments.length === 0) {\n                 return this.selection\n                     .find(\".select2-search-choice\")\n                     .map(function() { return $(this).data(\"select2-data\"); })\n                     .get();\n            } else {\n                old = this.data();\n                if (!values) { values = []; }\n                ids = $.map(values, function(e) { return self.opts.id(e); });\n                this.setVal(ids);\n                this.updateSelection(values);\n                this.clearSearch();\n                if (triggerChange) {\n                    this.triggerChange(this.buildChangeDetails(old, this.data()));\n                }\n            }\n        }\n    });\n\n    $.fn.select2 = function () {\n\n        var args = Array.prototype.slice.call(arguments, 0),\n            opts,\n            select2,\n            method, value, multiple,\n            allowedMethods = [\"val\", \"destroy\", \"opened\", \"open\", \"close\", \"focus\", \"isFocused\", \"container\", \"dropdown\", \"onSortStart\", \"onSortEnd\", \"enable\", \"disable\", \"readonly\", \"positionDropdown\", \"data\", \"search\"],\n            valueMethods = [\"opened\", \"isFocused\", \"container\", \"dropdown\"],\n            propertyMethods = [\"val\", \"data\"],\n            methodsMap = { search: \"externalSearch\" };\n\n        this.each(function () {\n            if (args.length === 0 || typeof(args[0]) === \"object\") {\n                opts = args.length === 0 ? {} : $.extend({}, args[0]);\n                opts.element = $(this);\n\n                if (opts.element.get(0).tagName.toLowerCase() === \"select\") {\n                    multiple = opts.element.prop(\"multiple\");\n                } else {\n                    multiple = opts.multiple || false;\n                    if (\"tags\" in opts) {opts.multiple = multiple = true;}\n                }\n\n                select2 = multiple ? new MultiSelect2() : new SingleSelect2();\n                select2.init(opts);\n            } else if (typeof(args[0]) === \"string\") {\n\n                if (indexOf(args[0], allowedMethods) < 0) {\n                    throw \"Unknown method: \" + args[0];\n                }\n\n                value = undefined;\n                select2 = $(this).data(\"select2\");\n                if (select2 === undefined) return;\n\n                method=args[0];\n\n                if (method === \"container\") {\n                    value = select2.container;\n                } else if (method === \"dropdown\") {\n                    value = select2.dropdown;\n                } else {\n                    if (methodsMap[method]) method = methodsMap[method];\n\n                    value = select2[method].apply(select2, args.slice(1));\n                }\n                if (indexOf(args[0], valueMethods) >= 0\n                    || (indexOf(args[0], propertyMethods) && args.length == 1)) {\n                    return false; // abort the iteration, ready to return first matched value\n                }\n            } else {\n                throw \"Invalid arguments to select2 plugin: \" + args;\n            }\n        });\n        return (value === undefined) ? this : value;\n    };\n\n    // plugin defaults, accessible to users\n    $.fn.select2.defaults = {\n        width: \"copy\",\n        loadMorePadding: 0,\n        closeOnSelect: true,\n        openOnEnter: true,\n        containerCss: {},\n        dropdownCss: {},\n        containerCssClass: \"\",\n        dropdownCssClass: \"\",\n        formatResult: function(result, container, query, escapeMarkup) {\n            var markup=[];\n            markMatch(result.text, query.term, markup, escapeMarkup);\n            return markup.join(\"\");\n        },\n        formatSelection: function (data, container, escapeMarkup) {\n            return data ? escapeMarkup(data.text) : undefined;\n        },\n        sortResults: function (results, container, query) {\n            return results;\n        },\n        formatResultCssClass: function(data) {return undefined;},\n        formatSelectionCssClass: function(data, container) {return undefined;},\n        formatNoMatches: function () { return \"No matches found\"; },\n        formatInputTooShort: function (input, min) { var n = min - input.length; return \"Please enter \" + n + \" more character\" + (n == 1? \"\" : \"s\"); },\n        formatInputTooLong: function (input, max) { var n = input.length - max; return \"Please delete \" + n + \" character\" + (n == 1? \"\" : \"s\"); },\n        formatSelectionTooBig: function (limit) { return \"You can only select \" + limit + \" item\" + (limit == 1 ? \"\" : \"s\"); },\n        formatLoadMore: function (pageNumber) { return \"Loading more results...\"; },\n        formatSearching: function () { return \"Searching...\"; },\n        minimumResultsForSearch: 0,\n        minimumInputLength: 0,\n        maximumInputLength: null,\n        maximumSelectionSize: 0,\n        id: function (e) { return e.id; },\n        matcher: function(term, text) {\n            return stripDiacritics(''+text).toUpperCase().indexOf(stripDiacritics(''+term).toUpperCase()) >= 0;\n        },\n        separator: \",\",\n        tokenSeparators: [],\n        tokenizer: defaultTokenizer,\n        escapeMarkup: defaultEscapeMarkup,\n        blurOnChange: false,\n        selectOnBlur: false,\n        adaptContainerCssClass: function(c) { return c; },\n        adaptDropdownCssClass: function(c) { return null; },\n        nextSearchTerm: function(selectedObject, currentSearchTerm) { return undefined; }\n    };\n\n    $.fn.select2.ajaxDefaults = {\n        transport: $.ajax,\n        params: {\n            type: \"GET\",\n            cache: false,\n            dataType: \"json\"\n        }\n    };\n\n    // exports\n    window.Select2 = {\n        query: {\n            ajax: ajax,\n            local: local,\n            tags: tags\n        }, util: {\n            debounce: debounce,\n            markMatch: markMatch,\n            escapeMarkup: defaultEscapeMarkup,\n            stripDiacritics: stripDiacritics\n        }, \"class\": {\n            \"abstract\": AbstractSelect2,\n            \"single\": SingleSelect2,\n            \"multi\": MultiSelect2\n        }\n    };\n\n}(jQuery));\n"
  },
  {
    "path": "newscoop/js/sha1.js",
    "content": "/*\r\n * A JavaScript implementation of the Secure Hash Algorithm, SHA-1, as defined\r\n * in FIPS PUB 180-1\r\n * Version 2.1a Copyright Paul Johnston 2000 - 2002.\r\n * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet\r\n * Distributed under the BSD License\r\n * See http://pajhome.org.uk/crypt/md5 for details.\r\n */\r\n\r\n/*\r\n * Configurable variables. You may need to tweak these to be compatible with\r\n * the server-side, but the defaults work in most cases.\r\n */\r\nvar hexcase = 0;  /* hex output format. 0 - lowercase; 1 - uppercase        */\r\nvar b64pad  = \"\"; /* base-64 pad character. \"=\" for strict RFC compliance   */\r\nvar chrsz   = 8;  /* bits per input character. 8 - ASCII; 16 - Unicode      */\r\n\r\n/*\r\n * These are the functions you'll usually want to call\r\n * They take string arguments and return either hex or base-64 encoded strings\r\n */\r\nfunction hex_sha1(s){return binb2hex(core_sha1(str2binb(s),s.length * chrsz));}\r\nfunction b64_sha1(s){return binb2b64(core_sha1(str2binb(s),s.length * chrsz));}\r\nfunction str_sha1(s){return binb2str(core_sha1(str2binb(s),s.length * chrsz));}\r\nfunction hex_hmac_sha1(key, data){ return binb2hex(core_hmac_sha1(key, data));}\r\nfunction b64_hmac_sha1(key, data){ return binb2b64(core_hmac_sha1(key, data));}\r\nfunction str_hmac_sha1(key, data){ return binb2str(core_hmac_sha1(key, data));}\r\n\r\n/*\r\n * Perform a simple self-test to see if the VM is working\r\n */\r\nfunction sha1_vm_test()\r\n{\r\n  return hex_sha1(\"abc\") == \"a9993e364706816aba3e25717850c26c9cd0d89d\";\r\n}\r\n\r\n/*\r\n * Calculate the SHA-1 of an array of big-endian words, and a bit length\r\n */\r\nfunction core_sha1(x, len)\r\n{\r\n  /* append padding */\r\n  x[len >> 5] |= 0x80 << (24 - len % 32);\r\n  x[((len + 64 >> 9) << 4) + 15] = len;\r\n\r\n  var w = Array(80);\r\n  var a =  1732584193;\r\n  var b = -271733879;\r\n  var c = -1732584194;\r\n  var d =  271733878;\r\n  var e = -1009589776;\r\n\r\n  for(var i = 0; i < x.length; i += 16)\r\n  {\r\n    var olda = a;\r\n    var oldb = b;\r\n    var oldc = c;\r\n    var oldd = d;\r\n    var olde = e;\r\n\r\n    for(var j = 0; j < 80; j++)\r\n    {\r\n      if(j < 16) w[j] = x[i + j];\r\n      else w[j] = rol(w[j-3] ^ w[j-8] ^ w[j-14] ^ w[j-16], 1);\r\n      var t = safe_add(safe_add(rol(a, 5), sha1_ft(j, b, c, d)),\r\n                       safe_add(safe_add(e, w[j]), sha1_kt(j)));\r\n      e = d;\r\n      d = c;\r\n      c = rol(b, 30);\r\n      b = a;\r\n      a = t;\r\n    }\r\n\r\n    a = safe_add(a, olda);\r\n    b = safe_add(b, oldb);\r\n    c = safe_add(c, oldc);\r\n    d = safe_add(d, oldd);\r\n    e = safe_add(e, olde);\r\n  }\r\n  return Array(a, b, c, d, e);\r\n\r\n}\r\n\r\n/*\r\n * Perform the appropriate triplet combination function for the current\r\n * iteration\r\n */\r\nfunction sha1_ft(t, b, c, d)\r\n{\r\n  if(t < 20) return (b & c) | ((~b) & d);\r\n  if(t < 40) return b ^ c ^ d;\r\n  if(t < 60) return (b & c) | (b & d) | (c & d);\r\n  return b ^ c ^ d;\r\n}\r\n\r\n/*\r\n * Determine the appropriate additive constant for the current iteration\r\n */\r\nfunction sha1_kt(t)\r\n{\r\n  return (t < 20) ?  1518500249 : (t < 40) ?  1859775393 :\r\n         (t < 60) ? -1894007588 : -899497514;\r\n}\r\n\r\n/*\r\n * Calculate the HMAC-SHA1 of a key and some data\r\n */\r\nfunction core_hmac_sha1(key, data)\r\n{\r\n  var bkey = str2binb(key);\r\n  if(bkey.length > 16) bkey = core_sha1(bkey, key.length * chrsz);\r\n\r\n  var ipad = Array(16), opad = Array(16);\r\n  for(var i = 0; i < 16; i++)\r\n  {\r\n    ipad[i] = bkey[i] ^ 0x36363636;\r\n    opad[i] = bkey[i] ^ 0x5C5C5C5C;\r\n  }\r\n\r\n  var hash = core_sha1(ipad.concat(str2binb(data)), 512 + data.length * chrsz);\r\n  return core_sha1(opad.concat(hash), 512 + 160);\r\n}\r\n\r\n/*\r\n * Add integers, wrapping at 2^32. This uses 16-bit operations internally\r\n * to work around bugs in some JS interpreters.\r\n */\r\nfunction safe_add(x, y)\r\n{\r\n  var lsw = (x & 0xFFFF) + (y & 0xFFFF);\r\n  var msw = (x >> 16) + (y >> 16) + (lsw >> 16);\r\n  return (msw << 16) | (lsw & 0xFFFF);\r\n}\r\n\r\n/*\r\n * Bitwise rotate a 32-bit number to the left.\r\n */\r\nfunction rol(num, cnt)\r\n{\r\n  return (num << cnt) | (num >>> (32 - cnt));\r\n}\r\n\r\n/*\r\n * Convert an 8-bit or 16-bit string to an array of big-endian words\r\n * In 8-bit function, characters >255 have their hi-byte silently ignored.\r\n */\r\nfunction str2binb(str)\r\n{\r\n  var bin = Array();\r\n  var mask = (1 << chrsz) - 1;\r\n  for(var i = 0; i < str.length * chrsz; i += chrsz)\r\n    bin[i>>5] |= (str.charCodeAt(i / chrsz) & mask) << (32 - chrsz - i%32);\r\n  return bin;\r\n}\r\n\r\n/*\r\n * Convert an array of big-endian words to a string\r\n */\r\nfunction binb2str(bin)\r\n{\r\n  var str = \"\";\r\n  var mask = (1 << chrsz) - 1;\r\n  for(var i = 0; i < bin.length * 32; i += chrsz)\r\n    str += String.fromCharCode((bin[i>>5] >>> (32 - chrsz - i%32)) & mask);\r\n  return str;\r\n}\r\n\r\n/*\r\n * Convert an array of big-endian words to a hex string.\r\n */\r\nfunction binb2hex(binarray)\r\n{\r\n  var hex_tab = hexcase ? \"0123456789ABCDEF\" : \"0123456789abcdef\";\r\n  var str = \"\";\r\n  for(var i = 0; i < binarray.length * 4; i++)\r\n  {\r\n    str += hex_tab.charAt((binarray[i>>2] >> ((3 - i%4)*8+4)) & 0xF) +\r\n           hex_tab.charAt((binarray[i>>2] >> ((3 - i%4)*8  )) & 0xF);\r\n  }\r\n  return str;\r\n}\r\n\r\n/*\r\n * Convert an array of big-endian words to a base-64 string\r\n */\r\nfunction binb2b64(binarray)\r\n{\r\n  var tab = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\r\n  var str = \"\";\r\n  for(var i = 0; i < binarray.length * 4; i += 3)\r\n  {\r\n    var triplet = (((binarray[i   >> 2] >> 8 * (3 -  i   %4)) & 0xFF) << 16)\r\n                | (((binarray[i+1 >> 2] >> 8 * (3 - (i+1)%4)) & 0xFF) << 8 )\r\n                |  ((binarray[i+2 >> 2] >> 8 * (3 - (i+2)%4)) & 0xFF);\r\n    for(var j = 0; j < 4; j++)\r\n    {\r\n      if(i * 8 + j * 6 > binarray.length * 32) str += b64pad;\r\n      else str += tab.charAt((triplet >> 6*(3-j)) & 0x3F);\r\n    }\r\n  }\r\n  return str;\r\n}\r\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/compass/_theme_template.scss",
    "content": "$background:\t\t\t\t\twhite !default;\n\n$line_alt1_background:\t\t\t$background !default;\n$line_alt2_background:\t\t\t$background !default;\n\n$line_highlighted_background:\t#e0e0e0 !default;\n$line_highlighted_number:\t\tblack !default;\n\n$gutter_text:\t\t\t\t\t#afafaf !default;\n$gutter_border_color:\t\t\t#6ce26c !default;\n$gutter_border:\t\t\t\t\t3px solid $gutter_border_color !default;\n\n$toolbar_collapsed_a:\t\t\t#00f !default;\n$toolbar_collapsed_a_hover:\t\t#f00 !default;\n$toolbar_collapsed_background:\t#fff !default;\n$toolbar_collapsed_border:\t\t1px solid $gutter_border_color !default;\n\n$toolbar_a:\t\t\t\t\t\t#fff !default;\n$toolbar_a_hover:\t\t\t\t#000 !default;\n$toolbar_background:\t\t\t$gutter_border_color !default;\n$toolbar_border:\t\t\t\tnone !default;\n\n$code_plain:\t\t\t\t\tblack !default;\n$code_comments:\t\t\t\t\t#008200 !default;\n$code_string:\t\t\t\t\tblue !default;\n$code_keyword:\t\t\t\t\t#006699 !default;\n$code_preprocessor:\t\t\t\tgray !default;\n$code_variable:\t\t\t\t\t#aa7700 !default;\n$code_value:\t\t\t\t\t#009900 !default;\n$code_functions:\t\t\t\t#ff1493 !default;\n$code_constants:\t\t\t\t#0066cc !default;\n$code_script:\t\t\t\t\t$code_keyword !default;\n$code_script_background:\t\tnone !default;\n$code_color1:\t\t\t\t\tgray !default;\n$code_color2:\t\t\t\t\t#ff1493 !default;\n$code_color3:\t\t\t\t\tred !default;\n\n$caption_color:\t\t\t\t\t$code_plain !default;\n\n// Interface elements.\n.syntaxhighlighter {\n\tbackground-color: $background !important;\n\n\t// Highlighed line number\n\t.line {\n\t\t&.alt1 { background-color: $line_alt1_background !important; }\n\t\t&.alt2 { background-color: $line_alt2_background !important; }\n\t\t\n\t\t// Highlighed line\n\t\t&.highlighted {\n\t\t\t&.alt1, &.alt2 { background-color: $line_highlighted_background !important; }\n\t\t\t&.number { color: $line_highlighted_number !important; }\n\t\t}\n\t}\n\t\n\ttable {\n\t\tcaption {\n\t\t\tcolor: $caption_color !important;\n\t\t}\n\t}\n\t\n\t// Add border to the lines\n\t.gutter {\n\t\tcolor: $gutter_text !important;\n\t\t.line {\n\t\t\tborder-right: $gutter_border !important;\n\t\t\t\n\t\t\t&.highlighted {\n\t\t\t\tbackground-color: $gutter_border_color !important;\n\t\t\t\tcolor: $background !important;\n\t\t\t} \n\t\t} \n\t}\n\t\n\t&.printing .line .content { border: none !important; }\n\t\n\t&.collapsed {\n\t\toverflow: visible !important;\n\t\t\n\t\t.toolbar {\n\t\t\tcolor: $toolbar_collapsed_a !important;\n\t\t\tbackground: $toolbar_collapsed_background !important;\n\t\t\tborder: $toolbar_collapsed_border !important;\n\t\t\t\n\t\t\ta {\n\t\t\t\tcolor: $toolbar_collapsed_a !important;\n\t\t\t\t&:hover { color: $toolbar_collapsed_a_hover !important; } \n\t\t\t} \n\t\t}\n\t}\n\t\n\t.toolbar {\n\t\tcolor: $toolbar_a !important;\n\t\tbackground: $toolbar_background !important;\n\t\tborder: $toolbar_border !important;\n\t\ta {\n\t\t\tcolor: $toolbar_a !important;\n\t\t\t&:hover { color: $toolbar_a_hover !important; } \n\t\t} \n\t}\n\t\n\t// Actual syntax highlighter colors.\n\t.plain, .plain a { color: $code_plain !important; }\n\t.comments, .comments a { color: $code_comments !important; }\n\t.string, .string a { color: $code_string !important; }\n\t.keyword { color: $code_keyword !important; }\n\t.preprocessor { color: $code_preprocessor !important; }\n\t.variable { color: $code_variable !important; }\n\t.value { color: $code_value !important; }\n\t.functions { color: $code_functions !important; }\n\t.constants { color: $code_constants !important; }\n\t.script {\n\t\tfont-weight: bold !important;\n\t\tcolor: $code_script !important;\n\t\tbackground-color: $code_script_background !important;\n\t}\n\t.color1, .color1 a { color: $code_color1 !important; }\n\t.color2, .color2 a { color: $code_color2 !important; }\n\t.color3, .color3 a { color: $code_color3 !important; } \n}\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/compass/config.rb",
    "content": "environment   = :production\nproject_type  = :stand_alone\nhttp_path     = \"/\"\ncss_dir       = \"../styles\"\nsass_dir      = \".\"\nimages_dir    = \"images\"\nsass_options  = {\n  :line_numbers => false,\n  :debug_info   => false\n}\n\n# output_style = :compressed\n# output_style = :compact\noutput_style = :expanded\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/compass/shCore.scss",
    "content": "@mixin round_corners_custom($top, $right, $bottom, $left) {\n\t-moz-border-radius: $top $right $bottom $left !important;\n\t-webkit-border-radius: $top $right $bottom $left !important;\n}\n\n@mixin round_corners($radius) {\n\t@include round_corners_custom($radius, $radius, $radius, $radius);\n}\n\n.syntaxhighlighter {\n\ta,\n\tdiv,\n\tcode,\n\ttable,\n\ttable td,\n\ttable tr,\n\ttable tbody,\n\ttable thead,\n\ttable caption,\n\ttextarea {\n\t\t@include round_corners(0);\n\t\t\n\t\tbackground: none !important;\n\t\tborder: 0 !important;\n\t\tbottom: auto !important;\n\t\tfloat: none !important;\n\t\theight: auto !important;\n\t\tleft: auto !important;\n\t\tline-height: 1.1em !important;\n\t\tmargin: 0 !important;\n\t\toutline: 0 !important;\n\t\toverflow: visible !important;\n\t\tpadding: 0 !important;\n\t\tposition: static !important;\n\t\tright: auto !important;\n\t\ttext-align: left !important;\n\t\ttop: auto !important;\n\t\tvertical-align: baseline !important;\n\t\twidth: auto !important;\n\t\tbox-sizing: content-box !important;\n\t\tfont: {\n\t\t\tfamily: \"Consolas\", \"Bitstream Vera Sans Mono\", \"Courier New\", Courier, monospace !important;\n\t\t\tweight: normal !important;\n\t\t\tstyle: normal !important;\n\t\t\tsize: 1em !important;\n\t\t}\n\t\tmin: {\n\t\t\t// For IE8, FF & WebKit\n\t\t\theight: inherit !important;\n\t\t\t// For IE7\n\t\t\theight: auto !important;\n\t\t}\n\t}\n}\n\n.syntaxhighlighter {\n\twidth: 100% !important;\n\tmargin: 1em 0 1em 0 !important;\n\t\n\tposition: relative !important;\n\toverflow: auto !important;\n\tfont-size: 1em !important;\n\t\n\t&.source { overflow: hidden !important; }\n\t\n\t// set up bold and italic\n\t.bold { font-weight: bold !important; }\n\t.italic { font-style: italic !important; }\n\t\n\t.line { white-space: pre !important; }\n\t\n\t// main table and columns\n\ttable {\n\t\twidth: 100% !important;\n\t\tcaption {\n\t\t\ttext-align: left !important;\n\t\t\tpadding: .5em 0 0.5em 1em !important;\n\t\t}\n\t\t\n\t\ttd.code {\n\t\t\twidth: 100% !important;\n\t\t\t\n\t\t\t.container {\n\t\t\t\tposition: relative !important;\n\t\t\t\t\n\t\t\t\ttextarea {\n\t\t\t\t\tbox-sizing: border-box !important;\n\t\t\t\t\tposition: absolute !important;\n\t\t\t\t\tleft: 0 !important;\n\t\t\t\t\ttop: 0 !important;\n\t\t\t\t\twidth: 100% !important;\n\t\t\t\t\theight: 100% !important;\n\t\t\t\t\tborder: none !important;\n\t\t\t\t\tbackground: white !important;\n\t\t\t\t\tpadding-left: 1em !important;\n\t\t\t\t\toverflow: hidden !important;\n\t\t\t\t\twhite-space: pre !important;\n\t\t\t\t} \n\t\t\t} \n\t\t}\n\t\t\n\t\t// middle spacing between line numbers and lines\n\t\ttd.gutter .line {\n\t\t\ttext-align: right !important;\n\t\t\tpadding: 0 0.5em 0 1em !important; \n\t\t}\n\t\t\n\t\ttd.code .line {\n\t\t\tpadding: 0 1em !important;\n\t\t}\n\t}\n\t\n\t&.nogutter {\n\t\ttd.code {\n\t\t\t.container textarea, .line { padding-left: 0em !important; }\n\t\t}\n\t}\n\t\n\t&.show { display: block !important; }\n\t\n\t// Adjust some properties when collapsed\n\t&.collapsed {\n\t\ttable { display: none !important; }\n\t\t\n\t\t.toolbar {\n\t\t\tpadding: 0.1em 0.8em 0em 0.8em !important;\n\t\t\tfont-size: 1em !important;\n\t\t\tposition: static !important;\n\t\t\twidth: auto !important;\n\t\t\theight: auto !important;\n\t\t\t\n\t\t\tspan {\n\t\t\t\tdisplay: inline !important;\n\t\t\t\tmargin-right: 1em !important;\n\t\t\t\t\n\t\t\t\ta {\n\t\t\t\t\tpadding: 0 !important;\n\t\t\t\t\tdisplay: none !important;\n\t\t\t\t\t&.expandSource { display: inline !important; } \n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t\n\t// Styles for the toolbar\n\t.toolbar {\n\t\tposition: absolute !important;\n\t\tright: 1px !important;\n\t\ttop: 1px !important;\n\t\twidth: 11px !important;\n\t\theight: 11px !important;\n\t\tfont-size: 10px !important;\n\t\tz-index: 10 !important;\n\t\t\n\t\tspan.title { display: inline !important; }\n\t\t\n\t\ta {\n\t\t\tdisplay: block !important;\n\t\t\ttext-align: center !important;\n\t\t\ttext-decoration: none !important;\n\t\t\tpadding-top: 1px !important;\n\t\t\t\n\t\t\t&.expandSource { display: none !important; }\n\t\t}\n\t}\n\t\n\t&.ie {\n\t\tfont-size: .9em !important;\n\t\tpadding: 1px 0 1px 0 !important;\n\t\t\n\t\t.toolbar {\n\t\t\tline-height: 8px !important;\n\t\t\ta {\n\t\t\t\tpadding-top: 0px !important;\n\t\t\t}\n\t\t}\n\t}\n\t\n\t// Print view.\n\t// Colors are based on the default theme without background.\n\t&.printing {\n\t\t.line.alt1 .content,\n\t\t.line.alt2 .content,\n\t\t.line.highlighted .number,\n\t\t.line.highlighted.alt1 .content,\n\t\t.line.highlighted.alt2 .content { background: none !important; }\n\t\t\n\t\t// Gutter line numbers\n\t\t.line {\n\t\t\t.number { color: #bbbbbb !important; }\n\t\t\t// Add border to the lines\n\t\t\t.content { color: black !important; }\n\t\t}\n\t\t\n\t\t// Toolbar when visible\n\t\t.toolbar { display: none !important; }\n\t\ta { text-decoration: none !important; }\n\t\t.plain, .plain a { color: black !important; }\n\t\t.comments, .comments a { color: #008200 !important; }\n\t\t.string, .string a { color: blue !important; }\n\t\t.keyword {\n\t\t\tcolor: #006699 !important;\n\t\t\tfont-weight: bold !important; \n\t\t}\n\t\t.preprocessor { color: gray !important; }\n\t\t.variable { color: #aa7700 !important; }\n\t\t.value { color: #009900 !important; }\n\t\t.functions { color: #ff1493 !important; }\n\t\t.constants { color: #0066cc !important; }\n\t\t.script { font-weight: bold !important; }\n\t\t.color1, .color1 a { color: gray !important; }\n\t\t.color2, .color2 a { color: #ff1493 !important; }\n\t\t.color3, .color3 a { color: red !important; }\n\t\t.break, .break a { color: black !important; }\n\t}\n}"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/compass/shCoreDefault.scss",
    "content": "@import \"shCore.scss\";\n@import \"shThemeDefault.scss\";\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/compass/shCoreDjango.scss",
    "content": "@import \"shCore.scss\";\n@import \"shThemeDjango.scss\";\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/compass/shCoreEclipse.scss",
    "content": "@import \"shCore.scss\";\n@import \"shThemeEclipse.scss\";\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/compass/shCoreEmacs.scss",
    "content": "@import \"shCore.scss\";\n@import \"shThemeEmacs.scss\";\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/compass/shCoreFadeToGrey.scss",
    "content": "@import \"shCore.scss\";\n@import \"shThemeFadeToGrey.scss\";\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/compass/shCoreMDUltra.scss",
    "content": "@import \"shCore.scss\";\n@import \"shThemeMDUltra.scss\";\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/compass/shCoreMidnight.scss",
    "content": "@import \"shCore.scss\";\n@import \"shThemeMidnight.scss\";\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/compass/shCoreRDark.scss",
    "content": "@import \"shCore.scss\";\n@import \"shThemeRDark.scss\";\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/compass/shThemeDefault.scss",
    "content": "// Default Syntax Highlighter theme.\n\n@import \"_theme_template.scss\";\n\n.syntaxhighlighter {\n\t.keyword { font-weight: bold !important; }\n}\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/compass/shThemeDjango.scss",
    "content": "// Django SyntaxHighlighter theme\n\n$background:\t\t\t\t\t#0a2b1d !default;\n\n$line_highlighted_background:\t#233729 !default;\n$line_highlighted_number:\t\twhite !default;\n\n$gutter_text:\t\t\t\t\t#497958 !default;\n$gutter_border_color:\t\t\t#41a83e !default;\n\n$toolbar_collapsed_a:\t\t\t#96dd3b !default;\n$toolbar_collapsed_a_hover:\t\t#fff !default;\n$toolbar_collapsed_background:\t#000 !default;\n\n$toolbar_a:\t\t\t\t\t\t#fff !default;\n$toolbar_a_hover:\t\t\t\t#ffe862 !default;\n\n$code_plain:\t\t\t\t\t#f8f8f8 !default;\n$code_comments:\t\t\t\t\t#336442 !default;\n$code_string:\t\t\t\t\t#9df39f !default;\n$code_keyword:\t\t\t\t\t#96dd3b !default;\n$code_preprocessor:\t\t\t\t#91bb9e !default;\n$code_variable:\t\t\t\t\t#ffaa3e !default;\n$code_value:\t\t\t\t\t#f7e741 !default;\n$code_functions:\t\t\t\t#ffaa3e !default;\n$code_constants:\t\t\t\t#e0e8ff !default;\n$code_color1:\t\t\t\t\t#eb939a !default;\n$code_color2:\t\t\t\t\t#91bb9e !default;\n$code_color3:\t\t\t\t\t#edef7d !default;\n\n@import \"_theme_template.scss\";\n\n.syntaxhighlighter {\n\t.comments { font-style: italic !important; }\n\t.keyword { font-weight: bold !important; } \n}\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/compass/shThemeEclipse.scss",
    "content": "// Eclipse IDE SyntaxHighlighter color theme\n// (C) Code-House\n// :http//blog.code-house.org/2009/10/xml-i-adnotacje-kod-ogolnego-przeznaczenia-i-jpa/\n\n$background:\t\t\t\t\t#fff !default;\n\n$line_highlighted_background:\t#c3defe !default;\n$line_highlighted_number:\t\t#fff !default;\n\n$gutter_text:\t\t\t\t\t#787878 !default;\n$gutter_border_color:\t\t\t#d4d0c8 !default;\n\n$toolbar_collapsed_a:\t\t\t#3f5fbf !default;\n$toolbar_collapsed_a_hover:\t\t#aa7700 !default;\n$toolbar_collapsed_background:\t#fff !default;\n\n$toolbar_a:\t\t\t\t\t\t#a0a0a0 !default;\n$toolbar_a_hover:\t\t\t\tred !default;\n\n$code_plain:\t\t\t\t\tblack !default;\n$code_comments:\t\t\t\t\t#3f5fbf !default;\n$code_string:\t\t\t\t\t#2a00ff !default;\n$code_keyword:\t\t\t\t\t#7f0055 !default;\n$code_preprocessor:\t\t\t\t#646464 !default;\n$code_variable:\t\t\t\t\t#aa7700 !default;\n$code_value:\t\t\t\t\t#009900 !default;\n$code_functions:\t\t\t\t#ff1493 !default;\n$code_constants:\t\t\t\t#0066cc !default;\n$code_color1:\t\t\t\t\tgray !default;\n$code_color2:\t\t\t\t\t#ff1493 !default;\n$code_color3:\t\t\t\t\tred !default;\n\n@import \"_theme_template.scss\";\n\n.syntaxhighlighter {\n\t.keyword { font-weight: bold !important; }\n\t\n\t.xml {\n\t\t.keyword {\n\t\t\tcolor: #3f7f7f !important;\n\t\t\tfont-weight: normal !important; }\n\t\t.color1, .color1 a { color: #7f007f !important; }\n\t\t.string {\n\t\t\tfont-style: italic !important;\n\t\t\tcolor: #2a00ff !important; \n\t\t} \n\t} \n}\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/compass/shThemeEmacs.scss",
    "content": "// Emacs SyntaxHighlighter theme based on theme by Joshua Emmons\n// http://www.skia.net/\n\n$background:\t\t\t\t\tblack !default;\n\n$line_highlighted_background:\t#2A3133 !default;\n$line_highlighted_number:\t\twhite !default;\n\n$gutter_text:\t\t\t\t\t#d3d3d3 !default;\n$gutter_border_color:\t\t\t#990000 !default;\n\n$toolbar_collapsed_a:\t\t\t#ebdb8d !default;\n$toolbar_collapsed_a_hover:\t\t#ff7d27 !default;\n$toolbar_collapsed_background:\tblack !default;\n\n$toolbar_a:\t\t\t\t\t\t#fff !default;\n$toolbar_a_hover:\t\t\t\t#9ccff4 !default;\n\n$code_plain:\t\t\t\t\t#d3d3d3 !default;\n$code_comments:\t\t\t\t\t#ff7d27 !default;\n$code_string:\t\t\t\t\t#ff9e7b !default;\n$code_keyword:\t\t\t\t\taqua !default;\n$code_preprocessor:\t\t\t\t#aec4de !default;\n$code_variable:\t\t\t\t\t#ffaa3e !default;\n$code_value:\t\t\t\t\t#009900 !default;\n$code_functions:\t\t\t\t#81cef9 !default;\n$code_constants:\t\t\t\t#ff9e7b !default;\n$code_color1:\t\t\t\t\t#ebdb8d !default;\n$code_color2:\t\t\t\t\t#ff7d27 !default;\n$code_color3:\t\t\t\t\t#aec4de !default;\n\n@import \"_theme_template.scss\";\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/compass/shThemeFadeToGrey.scss",
    "content": "// Fade to Grey SyntaxHighlighter theme based on theme by Brasten Sager\n// :http//www.ibrasten.com/\n\n$background:\t\t\t\t\t#121212 !default;\n\n$line_highlighted_background:\t#2C2C29 !default;\n$line_highlighted_number:\t\twhite !default;\n\n$gutter_text:\t\t\t\t\t#afafaf !default;\n$gutter_border_color:\t\t\t#3185b9 !default;\n\n$toolbar_collapsed_a:\t\t\t#3185b9 !default;\n$toolbar_collapsed_a_hover:\t\t#d01d33 !default;\n$toolbar_collapsed_background:\tblack !default;\n\n$toolbar_a:\t\t\t\t\t\t#fff !default;\n$toolbar_a_hover:\t\t\t\t#96daff !default;\n\n$code_plain:\t\t\t\t\twhite !default;\n$code_comments:\t\t\t\t\t#696854 !default;\n$code_string:\t\t\t\t\t#e3e658 !default;\n$code_keyword:\t\t\t\t\t#d01d33 !default;\n$code_preprocessor:\t\t\t\t#435a5f !default;\n$code_variable:\t\t\t\t\t#898989 !default;\n$code_value:\t\t\t\t\t#009900 !default;\n$code_functions:\t\t\t\t#aaaaaa !default;\n$code_constants:\t\t\t\t#96daff !default;\n$code_color1:\t\t\t\t\t#ffc074 !default;\n$code_color2:\t\t\t\t\t#4a8cdb !default;\n$code_color3:\t\t\t\t\t#96daff !default;\n\n@import \"_theme_template.scss\";\n\n.syntaxhighlighter {\n  .functions { font-weight: bold !important; }\n}\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/compass/shThemeMDUltra.scss",
    "content": "// MDUltra SyntaxHighlighter theme based on Midnight Theme\n// http://www.mddev.co.uk/\n\n$background:\t\t\t\t\t#222222 !default;\n\n$line_highlighted_background:\t#253e5a !default;\n$line_highlighted_number:\t\twhite !default;\n\n$gutter_text:\t\t\t\t\t#38566f !default;\n$gutter_border_color:\t\t\t#435a5f !default;\n\n$toolbar_collapsed_a:\t\t\t#428bdd !default;\n$toolbar_collapsed_a_hover:\t\tlime !default;\n$toolbar_collapsed_background:\tblack !default;\n\n$toolbar_a:\t\t\t\t\t\t#aaaaff !default;\n$toolbar_a_hover:\t\t\t\t#9ccff4 !default;\n\n$code_plain:\t\t\t\t\tlime !default;\n$code_comments:\t\t\t\t\t#428bdd !default;\n$code_string:\t\t\t\t\tlime !default;\n$code_keyword:\t\t\t\t\t#aaaaff !default;\n$code_preprocessor:\t\t\t\t#8aa6c1 !default;\n$code_variable:\t\t\t\t\taqua !default;\n$code_value:\t\t\t\t\t#f7e741 !default;\n$code_functions:\t\t\t\t#ff8000 !default;\n$code_constants:\t\t\t\tyellow !default;\n$code_color1:\t\t\t\t\tred !default;\n$code_color2:\t\t\t\t\tyellow !default;\n$code_color3:\t\t\t\t\t#ffaa3e !default;\n\n@import \"_theme_template.scss\";\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/compass/shThemeMidnight.scss",
    "content": "// Midnight SyntaxHighlighter theme based on theme by J.D. Myers\n// http://webdesign.lsnjd.com/\n\n$background:\t\t\t\t\t#0f192a !default;\n\n$line_highlighted_background:\t#253e5a !default;\n$line_highlighted_number:\t\t#38566f !default;\n\n$gutter_text:\t\t\t\t\t#afafaf !default;\n$gutter_border_color:\t\t\t#435a5f !default;\n\n$toolbar_collapsed_a:\t\t\t#428bdd !default;\n$toolbar_collapsed_a_hover:\t\t#1dc116 !default;\n$toolbar_collapsed_background:\t#000 !default;\n\n$toolbar_a:\t\t\t\t\t\t#D1EDFF !default;\n$toolbar_a_hover:\t\t\t\t#8aa6c1 !default;\n\n$code_plain:\t\t\t\t\t#d1edff !default;\n$code_comments:\t\t\t\t\t#428bdd !default;\n$code_string:\t\t\t\t\t#1dc116 !default;\n$code_keyword:\t\t\t\t\t#b43d3d !default;\n$code_preprocessor:\t\t\t\t#8aa6c1 !default;\n$code_variable:\t\t\t\t\t#ffaa3e !default;\n$code_value:\t\t\t\t\t#f7e741 !default;\n$code_functions:\t\t\t\t#ffaa3e !default;\n$code_constants:\t\t\t\t#e0e8ff !default;\n$code_color1:\t\t\t\t\t#f8bb00 !default;\n$code_color2:\t\t\t\t\twhite !default;\n$code_color3:\t\t\t\t\t#ffaa3e !default;\n\n@import \"_theme_template.scss\";\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/compass/shThemeRDark.scss",
    "content": "// RDark SyntaxHighlighter theme based on theme by Radu Dineiu\n// http://www.vim.org/scripts/script.php?script_id=1732\n\n$background:\t\t\t\t\t#1b2426 !default;\n\n$line_highlighted_background:\t#323E41 !default;\n$line_highlighted_number:\t\t#b9bdb6 !default;\n\n$gutter_text:\t\t\t\t\t#afafaf !default;\n$gutter_border_color:\t\t\t#435a5f !default;\n\n$toolbar_collapsed_a:\t\t\t#5ba1cf !default;\n$toolbar_collapsed_a_hover:\t\t#5ce638 !default;\n$toolbar_collapsed_background:\t#000 !default;\n\n$toolbar_a:\t\t\t\t\t\t#fff !default;\n$toolbar_a_hover:\t\t\t\t#e0e8ff !default;\n\n$code_plain:\t\t\t\t\t#b9bdb6 !default;\n$code_comments:\t\t\t\t\t#878a85 !default;\n$code_string:\t\t\t\t\t#5ce638 !default;\n$code_keyword:\t\t\t\t\t#5ba1cf !default;\n$code_preprocessor:\t\t\t\t#435a5f !default;\n$code_variable:\t\t\t\t\t#ffaa3e !default;\n$code_value:\t\t\t\t\t#009900 !default;\n$code_functions:\t\t\t\t#ffaa3e !default;\n$code_constants:\t\t\t\t#e0e8ff !default;\n$code_color1:\t\t\t\t\t#e0e8ff !default;\n$code_color2:\t\t\t\t\twhite !default;\n$code_color3:\t\t\t\t\t#ffaa3e !default;\n\n@import \"_theme_template.scss\";\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shAutoloader.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\neval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\\\b'+e(c)+'\\\\b','g'),k[c])}}return p}('(2(){1 h=5;h.I=2(){2 n(c,a){4(1 d=0;d<c.9;d++)i[c[d]]=a}2 o(c){1 a=r.H(\"J\"),d=3;a.K=c;a.M=\"L/t\";a.G=\"t\";a.u=a.v=2(){6(!d&&(!8.7||8.7==\"F\"||8.7==\"z\")){d=q;e[c]=q;a:{4(1 p y e)6(e[p]==3)B a;j&&5.C(k)}a.u=a.v=x;a.D.O(a)}};r.N.R(a)}1 f=Q,l=h.P(),i={},e={},j=3,k=x,b;5.T=2(c){k=c;j=q};4(b=0;b<f.9;b++){1 m=f[b].w?f[b]:f[b].S(/\\\\s+/),g=m.w();n(m,g)}4(b=0;b<l.9;b++)6(g=i[l[b].E.A]){e[g]=3;o(g)}}})();',56,56,'|var|function|false|for|SyntaxHighlighter|if|readyState|this|length|||||||||||||||||true|document||javascript|onload|onreadystatechange|pop|null|in|complete|brush|break|highlight|parentNode|params|loaded|language|createElement|autoloader|script|src|text|type|body|removeChild|findElements|arguments|appendChild|split|all'.split('|'),0,{}))\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushAS3.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\t// Created by Peter Atoria @ http://iAtoria.com\n\t\n\t\tvar inits \t =  'class interface function package';\n\t\n\t\tvar keywords =\t'-Infinity ...rest Array as AS3 Boolean break case catch const continue Date decodeURI ' + \n\t\t\t\t\t\t'decodeURIComponent default delete do dynamic each else encodeURI encodeURIComponent escape ' + \n\t\t\t\t\t\t'extends false final finally flash_proxy for get if implements import in include Infinity ' + \n\t\t\t\t\t\t'instanceof int internal is isFinite isNaN isXMLName label namespace NaN native new null ' + \n\t\t\t\t\t\t'Null Number Object object_proxy override parseFloat parseInt private protected public ' + \n\t\t\t\t\t\t'return set static String super switch this throw true try typeof uint undefined unescape ' + \n\t\t\t\t\t\t'use void while with'\n\t\t\t\t\t\t;\n\t\n\t\tthis.regexList = [\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleLineCComments,\tcss: 'comments' },\t\t// one line comments\n\t\t\t{ regex: SyntaxHighlighter.regexLib.multiLineCComments,\t\tcss: 'comments' },\t\t// multiline comments\n\t\t\t{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,\t\tcss: 'string' },\t\t// double quoted strings\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleQuotedString,\t\tcss: 'string' },\t\t// single quoted strings\n\t\t\t{ regex: /\\b([\\d]+(\\.[\\d]+)?|0x[a-f0-9]+)\\b/gi,\t\t\t\tcss: 'value' },\t\t\t// numbers\n\t\t\t{ regex: new RegExp(this.getKeywords(inits), 'gm'),\t\t\tcss: 'color3' },\t\t// initializations\n\t\t\t{ regex: new RegExp(this.getKeywords(keywords), 'gm'),\t\tcss: 'keyword' },\t\t// keywords\n\t\t\t{ regex: new RegExp('var', 'gm'),\t\t\t\t\t\t\tcss: 'variable' },\t\t// variable\n\t\t\t{ regex: new RegExp('trace', 'gm'),\t\t\t\t\t\t\tcss: 'color1' }\t\t\t// trace\n\t\t\t];\n\t\n\t\tthis.forHtmlScript(SyntaxHighlighter.regexLib.scriptScriptTags);\n\t};\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['actionscript3', 'as3'];\n\n\tSyntaxHighlighter.brushes.AS3 = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushAppleScript.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\t// AppleScript brush by David Chambers\n\t\t// http://davidchambersdesign.com/\n\t\tvar keywords   = 'after before beginning continue copy each end every from return get global in local named of set some that the then times to where whose with without';\n\t\tvar ordinals   = 'first second third fourth fifth sixth seventh eighth ninth tenth last front back middle';\n\t\tvar specials   = 'activate add alias AppleScript ask attachment boolean class constant delete duplicate empty exists false id integer list make message modal modified new no paragraph pi properties quit real record remove rest result reveal reverse run running save string true word yes';\n\n\t\tthis.regexList = [\n\n\t\t\t{ regex: /(--|#).*$/gm,\n\t\t\t    css: 'comments' },\n\n\t\t\t{ regex: /\\(\\*(?:[\\s\\S]*?\\(\\*[\\s\\S]*?\\*\\))*[\\s\\S]*?\\*\\)/gm, // support nested comments\n\t\t\t    css: 'comments' },\n\n\t\t\t{ regex: /\"[\\s\\S]*?\"/gm,\n\t\t\t    css: 'string' },\n\n\t\t\t{ regex: /(?:,|:|¬|'s\\b|\\(|\\)|\\{|\\}|«|\\b\\w*»)/g,\n\t\t\t    css: 'color1' },\n\n\t\t\t{ regex: /(-)?(\\d)+(\\.(\\d)?)?(E\\+(\\d)+)?/g, // numbers\n\t\t\t    css: 'color1' },\n\n\t\t\t{ regex: /(?:&(amp;|gt;|lt;)?|=|� |>|<|≥|>=|≤|<=|\\*|\\+|-|\\/|÷|\\^)/g,\n\t\t\t    css: 'color2' },\n\n\t\t\t{ regex: /\\b(?:and|as|div|mod|not|or|return(?!\\s&)(ing)?|equals|(is(n't| not)? )?equal( to)?|does(n't| not) equal|(is(n't| not)? )?(greater|less) than( or equal( to)?)?|(comes|does(n't| not) come) (after|before)|is(n't| not)?( in)? (back|front) of|is(n't| not)? behind|is(n't| not)?( (in|contained by))?|does(n't| not) contain|contain(s)?|(start|begin|end)(s)? with|((but|end) )?(consider|ignor)ing|prop(erty)?|(a )?ref(erence)?( to)?|repeat (until|while|with)|((end|exit) )?repeat|((else|end) )?if|else|(end )?(script|tell|try)|(on )?error|(put )?into|(of )?(it|me)|its|my|with (timeout( of)?|transaction)|end (timeout|transaction))\\b/g,\n\t\t\t    css: 'keyword' },\n\n\t\t\t{ regex: /\\b\\d+(st|nd|rd|th)\\b/g, // ordinals\n\t\t\t    css: 'keyword' },\n\n\t\t\t{ regex: /\\b(?:about|above|against|around|at|below|beneath|beside|between|by|(apart|aside) from|(instead|out) of|into|on(to)?|over|since|thr(ough|u)|under)\\b/g,\n\t\t\t    css: 'color3' },\n\n\t\t\t{ regex: /\\b(?:adding folder items to|after receiving|choose( ((remote )?application|color|folder|from list|URL))?|clipboard info|set the clipboard to|(the )?clipboard|entire contents|display(ing| (alert|dialog|mode))?|document( (edited|file|nib name))?|file( (name|type))?|(info )?for|giving up after|(name )?extension|quoted form|return(ed)?|second(?! item)(s)?|list (disks|folder)|text item(s| delimiters)?|(Unicode )?text|(disk )?item(s)?|((current|list) )?view|((container|key) )?window|with (data|icon( (caution|note|stop))?|parameter(s)?|prompt|properties|seed|title)|case|diacriticals|hyphens|numeric strings|punctuation|white space|folder creation|application(s( folder)?| (processes|scripts position|support))?|((desktop )?(pictures )?|(documents|downloads|favorites|home|keychain|library|movies|music|public|scripts|sites|system|users|utilities|workflows) )folder|desktop|Folder Action scripts|font(s| panel)?|help|internet plugins|modem scripts|(system )?preferences|printer descriptions|scripting (additions|components)|shared (documents|libraries)|startup (disk|items)|temporary items|trash|on server|in AppleTalk zone|((as|long|short) )?user name|user (ID|locale)|(with )?password|in (bundle( with identifier)?|directory)|(close|open for) access|read|write( permission)?|(g|s)et eof|using( delimiters)?|starting at|default (answer|button|color|country code|entr(y|ies)|identifiers|items|name|location|script editor)|hidden( answer)?|open(ed| (location|untitled))?|error (handling|reporting)|(do( shell)?|load|run|store) script|administrator privileges|altering line endings|get volume settings|(alert|boot|input|mount|output|set) volume|output muted|(fax|random )?number|round(ing)?|up|down|toward zero|to nearest|as taught in school|system (attribute|info)|((AppleScript( Studio)?|system) )?version|(home )?directory|(IPv4|primary Ethernet) address|CPU (type|speed)|physical memory|time (stamp|to GMT)|replacing|ASCII (character|number)|localized string|from table|offset|summarize|beep|delay|say|(empty|multiple) selections allowed|(of|preferred) type|invisibles|showing( package contents)?|editable URL|(File|FTP|News|Media|Web) [Ss]ervers|Telnet hosts|Directory services|Remote applications|waiting until completion|saving( (in|to))?|path (for|to( (((current|frontmost) )?application|resource))?)|POSIX (file|path)|(background|RGB) color|(OK|cancel) button name|cancel button|button(s)?|cubic ((centi)?met(re|er)s|yards|feet|inches)|square ((kilo)?met(re|er)s|miles|yards|feet)|(centi|kilo)?met(re|er)s|miles|yards|feet|inches|lit(re|er)s|gallons|quarts|(kilo)?grams|ounces|pounds|degrees (Celsius|Fahrenheit|Kelvin)|print( (dialog|settings))?|clos(e(able)?|ing)|(de)?miniaturized|miniaturizable|zoom(ed|able)|attribute run|action (method|property|title)|phone|email|((start|end)ing|home) page|((birth|creation|current|custom|modification) )?date|((((phonetic )?(first|last|middle))|computer|host|maiden|related) |nick)?name|aim|icq|jabber|msn|yahoo|address(es)?|save addressbook|should enable action|city|country( code)?|formatte(r|d address)|(palette )?label|state|street|zip|AIM [Hh]andle(s)?|my card|select(ion| all)?|unsaved|(alpha )?value|entr(y|ies)|group|(ICQ|Jabber|MSN) handle|person|people|company|department|icon image|job title|note|organization|suffix|vcard|url|copies|collating|pages (across|down)|request print time|target( printer)?|((GUI Scripting|Script menu) )?enabled|show Computer scripts|(de)?activated|awake from nib|became (key|main)|call method|of (class|object)|center|clicked toolbar item|closed|for document|exposed|(can )?hide|idle|keyboard (down|up)|event( (number|type))?|launch(ed)?|load (image|movie|nib|sound)|owner|log|mouse (down|dragged|entered|exited|moved|up)|move|column|localization|resource|script|register|drag (info|types)|resigned (active|key|main)|resiz(e(d)?|able)|right mouse (down|dragged|up)|scroll wheel|(at )?index|should (close|open( untitled)?|quit( after last window closed)?|zoom)|((proposed|screen) )?bounds|show(n)?|behind|in front of|size (mode|to fit)|update(d| toolbar item)?|was (hidden|miniaturized)|will (become active|close|finish launching|hide|miniaturize|move|open|quit|(resign )?active|((maximum|minimum|proposed) )?size|show|zoom)|bundle|data source|movie|pasteboard|sound|tool(bar| tip)|(color|open|save) panel|coordinate system|frontmost|main( (bundle|menu|window))?|((services|(excluded from )?windows) )?menu|((executable|frameworks|resource|scripts|shared (frameworks|support)) )?path|(selected item )?identifier|data|content(s| view)?|character(s)?|click count|(command|control|option|shift) key down|context|delta (x|y|z)|key( code)?|location|pressure|unmodified characters|types|(first )?responder|playing|(allowed|selectable) identifiers|allows customization|(auto saves )?configuration|visible|image( name)?|menu form representation|tag|user(-| )defaults|associated file name|(auto|needs) display|current field editor|floating|has (resize indicator|shadow)|hides when deactivated|level|minimized (image|title)|opaque|position|release when closed|sheet|title(d)?)\\b/g,\n\t\t\t    css: 'color3' },\n\n\t\t\t{ regex: new RegExp(this.getKeywords(specials), 'gm'), css: 'color3' },\n\t\t\t{ regex: new RegExp(this.getKeywords(keywords), 'gm'), css: 'keyword' },\n\t\t\t{ regex: new RegExp(this.getKeywords(ordinals), 'gm'), css: 'keyword' }\n\t\t];\n\t};\n\n\tBrush.prototype = new SyntaxHighlighter.Highlighter();\n\tBrush.aliases = ['applescript'];\n\n\tSyntaxHighlighter.brushes.AppleScript = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushBash.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\tvar keywords =\t'if fi then elif else for do done until while break continue case function return in eq ne ge le';\n\t\tvar commands =  'alias apropos awk basename bash bc bg builtin bzip2 cal cat cd cfdisk chgrp chmod chown chroot' +\n\t\t\t\t\t\t'cksum clear cmp comm command cp cron crontab csplit cut date dc dd ddrescue declare df ' +\n\t\t\t\t\t\t'diff diff3 dig dir dircolors dirname dirs du echo egrep eject enable env ethtool eval ' +\n\t\t\t\t\t\t'exec exit expand export expr false fdformat fdisk fg fgrep file find fmt fold format ' +\n\t\t\t\t\t\t'free fsck ftp gawk getopts grep groups gzip hash head history hostname id ifconfig ' +\n\t\t\t\t\t\t'import install join kill less let ln local locate logname logout look lpc lpr lprint ' +\n\t\t\t\t\t\t'lprintd lprintq lprm ls lsof make man mkdir mkfifo mkisofs mknod more mount mtools ' +\n\t\t\t\t\t\t'mv netstat nice nl nohup nslookup open op passwd paste pathchk ping popd pr printcap ' +\n\t\t\t\t\t\t'printenv printf ps pushd pwd quota quotacheck quotactl ram rcp read readonly renice ' +\n\t\t\t\t\t\t'remsync rm rmdir rsync screen scp sdiff sed select seq set sftp shift shopt shutdown ' +\n\t\t\t\t\t\t'sleep sort source split ssh strace su sudo sum symlink sync tail tar tee test time ' +\n\t\t\t\t\t\t'times touch top traceroute trap tr true tsort tty type ulimit umask umount unalias ' +\n\t\t\t\t\t\t'uname unexpand uniq units unset unshar useradd usermod users uuencode uudecode v vdir ' +\n\t\t\t\t\t\t'vi watch wc whereis which who whoami Wget xargs yes'\n\t\t\t\t\t\t;\n\n\t\tthis.regexList = [\n\t\t\t{ regex: /^#!.*$/gm,\t\t\t\t\t\t\t\t\t\t\tcss: 'preprocessor bold' },\n\t\t\t{ regex: /\\/[\\w-\\/]+/gm,\t\t\t\t\t\t\t\t\t\tcss: 'plain' },\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleLinePerlComments,\t\tcss: 'comments' },\t\t// one line comments\n\t\t\t{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,\t\t\tcss: 'string' },\t\t// double quoted strings\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleQuotedString,\t\t\tcss: 'string' },\t\t// single quoted strings\n\t\t\t{ regex: new RegExp(this.getKeywords(keywords), 'gm'),\t\t\tcss: 'keyword' },\t\t// keywords\n\t\t\t{ regex: new RegExp(this.getKeywords(commands), 'gm'),\t\t\tcss: 'functions' }\t\t// commands\n\t\t\t];\n\t}\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['bash', 'shell'];\n\n\tSyntaxHighlighter.brushes.Bash = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushCSharp.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\tvar keywords =\t'abstract as base bool break byte case catch char checked class const ' +\n\t\t\t\t\t\t'continue decimal default delegate do double else enum event explicit ' +\n\t\t\t\t\t\t'extern false finally fixed float for foreach get goto if implicit in int ' +\n\t\t\t\t\t\t'interface internal is lock long namespace new null object operator out ' +\n\t\t\t\t\t\t'override params private protected public readonly ref return sbyte sealed set ' +\n\t\t\t\t\t\t'short sizeof stackalloc static string struct switch this throw true try ' +\n\t\t\t\t\t\t'typeof uint ulong unchecked unsafe ushort using virtual void while';\n\n\t\tfunction fixComments(match, regexInfo)\n\t\t{\n\t\t\tvar css = (match[0].indexOf(\"///\") == 0)\n\t\t\t\t? 'color1'\n\t\t\t\t: 'comments'\n\t\t\t\t;\n\t\t\t\n\t\t\treturn [new SyntaxHighlighter.Match(match[0], match.index, css)];\n\t\t}\n\n\t\tthis.regexList = [\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleLineCComments,\tfunc : fixComments },\t\t// one line comments\n\t\t\t{ regex: SyntaxHighlighter.regexLib.multiLineCComments,\t\tcss: 'comments' },\t\t\t// multiline comments\n\t\t\t{ regex: /@\"(?:[^\"]|\"\")*\"/g,\t\t\t\t\t\t\t\tcss: 'string' },\t\t\t// @-quoted strings\n\t\t\t{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,\t\tcss: 'string' },\t\t\t// strings\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleQuotedString,\t\tcss: 'string' },\t\t\t// strings\n\t\t\t{ regex: /^\\s*#.*/gm,\t\t\t\t\t\t\t\t\t\tcss: 'preprocessor' },\t\t// preprocessor tags like #region and #endregion\n\t\t\t{ regex: new RegExp(this.getKeywords(keywords), 'gm'),\t\tcss: 'keyword' },\t\t\t// c# keyword\n\t\t\t{ regex: /\\bpartial(?=\\s+(?:class|interface|struct)\\b)/g,\tcss: 'keyword' },\t\t\t// contextual keyword: 'partial'\n\t\t\t{ regex: /\\byield(?=\\s+(?:return|break)\\b)/g,\t\t\t\tcss: 'keyword' }\t\t\t// contextual keyword: 'yield'\n\t\t\t];\n\t\t\n\t\tthis.forHtmlScript(SyntaxHighlighter.regexLib.aspScriptTags);\n\t};\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['c#', 'c-sharp', 'csharp'];\n\n\tSyntaxHighlighter.brushes.CSharp = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushColdFusion.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\t// Contributed by Jen\n\t\t// http://www.jensbits.com/2009/05/14/coldfusion-brush-for-syntaxhighlighter-plus\n\t\n\t\tvar funcs\t=\t'Abs ACos AddSOAPRequestHeader AddSOAPResponseHeader AjaxLink AjaxOnLoad ArrayAppend ArrayAvg ArrayClear ArrayDeleteAt ' + \n\t\t\t\t\t\t'ArrayInsertAt ArrayIsDefined ArrayIsEmpty ArrayLen ArrayMax ArrayMin ArraySet ArraySort ArraySum ArraySwap ArrayToList ' + \n\t\t\t\t\t\t'Asc ASin Atn BinaryDecode BinaryEncode BitAnd BitMaskClear BitMaskRead BitMaskSet BitNot BitOr BitSHLN BitSHRN BitXor ' + \n\t\t\t\t\t\t'Ceiling CharsetDecode CharsetEncode Chr CJustify Compare CompareNoCase Cos CreateDate CreateDateTime CreateObject ' + \n\t\t\t\t\t\t'CreateODBCDate CreateODBCDateTime CreateODBCTime CreateTime CreateTimeSpan CreateUUID DateAdd DateCompare DateConvert ' + \n\t\t\t\t\t\t'DateDiff DateFormat DatePart Day DayOfWeek DayOfWeekAsString DayOfYear DaysInMonth DaysInYear DE DecimalFormat DecrementValue ' + \n\t\t\t\t\t\t'Decrypt DecryptBinary DeleteClientVariable DeserializeJSON DirectoryExists DollarFormat DotNetToCFType Duplicate Encrypt ' + \n\t\t\t\t\t\t'EncryptBinary Evaluate Exp ExpandPath FileClose FileCopy FileDelete FileExists FileIsEOF FileMove FileOpen FileRead ' + \n\t\t\t\t\t\t'FileReadBinary FileReadLine FileSetAccessMode FileSetAttribute FileSetLastModified FileWrite Find FindNoCase FindOneOf ' + \n\t\t\t\t\t\t'FirstDayOfMonth Fix FormatBaseN GenerateSecretKey GetAuthUser GetBaseTagData GetBaseTagList GetBaseTemplatePath ' + \n\t\t\t\t\t\t'GetClientVariablesList GetComponentMetaData GetContextRoot GetCurrentTemplatePath GetDirectoryFromPath GetEncoding ' + \n\t\t\t\t\t\t'GetException GetFileFromPath GetFileInfo GetFunctionList GetGatewayHelper GetHttpRequestData GetHttpTimeString ' + \n\t\t\t\t\t\t'GetK2ServerDocCount GetK2ServerDocCountLimit GetLocale GetLocaleDisplayName GetLocalHostIP GetMetaData GetMetricData ' + \n\t\t\t\t\t\t'GetPageContext GetPrinterInfo GetProfileSections GetProfileString GetReadableImageFormats GetSOAPRequest GetSOAPRequestHeader ' + \n\t\t\t\t\t\t'GetSOAPResponse GetSOAPResponseHeader GetTempDirectory GetTempFile GetTemplatePath GetTickCount GetTimeZoneInfo GetToken ' + \n\t\t\t\t\t\t'GetUserRoles GetWriteableImageFormats Hash Hour HTMLCodeFormat HTMLEditFormat IIf ImageAddBorder ImageBlur ImageClearRect ' + \n\t\t\t\t\t\t'ImageCopy ImageCrop ImageDrawArc ImageDrawBeveledRect ImageDrawCubicCurve ImageDrawLine ImageDrawLines ImageDrawOval ' + \n\t\t\t\t\t\t'ImageDrawPoint ImageDrawQuadraticCurve ImageDrawRect ImageDrawRoundRect ImageDrawText ImageFlip ImageGetBlob ImageGetBufferedImage ' + \n\t\t\t\t\t\t'ImageGetEXIFTag ImageGetHeight ImageGetIPTCTag ImageGetWidth ImageGrayscale ImageInfo ImageNegative ImageNew ImageOverlay ImagePaste ' + \n\t\t\t\t\t\t'ImageRead ImageReadBase64 ImageResize ImageRotate ImageRotateDrawingAxis ImageScaleToFit ImageSetAntialiasing ImageSetBackgroundColor ' + \n\t\t\t\t\t\t'ImageSetDrawingColor ImageSetDrawingStroke ImageSetDrawingTransparency ImageSharpen ImageShear ImageShearDrawingAxis ImageTranslate ' + \n\t\t\t\t\t\t'ImageTranslateDrawingAxis ImageWrite ImageWriteBase64 ImageXORDrawingMode IncrementValue InputBaseN Insert Int IsArray IsBinary ' + \n\t\t\t\t\t\t'IsBoolean IsCustomFunction IsDate IsDDX IsDebugMode IsDefined IsImage IsImageFile IsInstanceOf IsJSON IsLeapYear IsLocalHost ' + \n\t\t\t\t\t\t'IsNumeric IsNumericDate IsObject IsPDFFile IsPDFObject IsQuery IsSimpleValue IsSOAPRequest IsStruct IsUserInAnyRole IsUserInRole ' + \n\t\t\t\t\t\t'IsUserLoggedIn IsValid IsWDDX IsXML IsXmlAttribute IsXmlDoc IsXmlElem IsXmlNode IsXmlRoot JavaCast JSStringFormat LCase Left Len ' + \n\t\t\t\t\t\t'ListAppend ListChangeDelims ListContains ListContainsNoCase ListDeleteAt ListFind ListFindNoCase ListFirst ListGetAt ListInsertAt ' + \n\t\t\t\t\t\t'ListLast ListLen ListPrepend ListQualify ListRest ListSetAt ListSort ListToArray ListValueCount ListValueCountNoCase LJustify Log ' + \n\t\t\t\t\t\t'Log10 LSCurrencyFormat LSDateFormat LSEuroCurrencyFormat LSIsCurrency LSIsDate LSIsNumeric LSNumberFormat LSParseCurrency LSParseDateTime ' + \n\t\t\t\t\t\t'LSParseEuroCurrency LSParseNumber LSTimeFormat LTrim Max Mid Min Minute Month MonthAsString Now NumberFormat ParagraphFormat ParseDateTime ' + \n\t\t\t\t\t\t'Pi PrecisionEvaluate PreserveSingleQuotes Quarter QueryAddColumn QueryAddRow QueryConvertForGrid QueryNew QuerySetCell QuotedValueList Rand ' + \n\t\t\t\t\t\t'Randomize RandRange REFind REFindNoCase ReleaseComObject REMatch REMatchNoCase RemoveChars RepeatString Replace ReplaceList ReplaceNoCase ' + \n\t\t\t\t\t\t'REReplace REReplaceNoCase Reverse Right RJustify Round RTrim Second SendGatewayMessage SerializeJSON SetEncoding SetLocale SetProfileString ' + \n\t\t\t\t\t\t'SetVariable Sgn Sin Sleep SpanExcluding SpanIncluding Sqr StripCR StructAppend StructClear StructCopy StructCount StructDelete StructFind ' + \n\t\t\t\t\t\t'StructFindKey StructFindValue StructGet StructInsert StructIsEmpty StructKeyArray StructKeyExists StructKeyList StructKeyList StructNew ' + \n\t\t\t\t\t\t'StructSort StructUpdate Tan TimeFormat ToBase64 ToBinary ToScript ToString Trim UCase URLDecode URLEncodedFormat URLSessionFormat Val ' + \n\t\t\t\t\t\t'ValueList VerifyClient Week Wrap Wrap WriteOutput XmlChildPos XmlElemNew XmlFormat XmlGetNodeType XmlNew XmlParse XmlSearch XmlTransform ' + \n\t\t\t\t\t\t'XmlValidate Year YesNoFormat';\n\n\t\tvar keywords =\t'cfabort cfajaximport cfajaxproxy cfapplet cfapplication cfargument cfassociate cfbreak cfcache cfcalendar ' + \n\t\t\t\t\t\t'cfcase cfcatch cfchart cfchartdata cfchartseries cfcol cfcollection cfcomponent cfcontent cfcookie cfdbinfo ' + \n\t\t\t\t\t\t'cfdefaultcase cfdirectory cfdiv cfdocument cfdocumentitem cfdocumentsection cfdump cfelse cfelseif cferror ' + \n\t\t\t\t\t\t'cfexchangecalendar cfexchangeconnection cfexchangecontact cfexchangefilter cfexchangemail cfexchangetask ' + \n\t\t\t\t\t\t'cfexecute cfexit cffeed cffile cfflush cfform cfformgroup cfformitem cfftp cffunction cfgrid cfgridcolumn ' + \n\t\t\t\t\t\t'cfgridrow cfgridupdate cfheader cfhtmlhead cfhttp cfhttpparam cfif cfimage cfimport cfinclude cfindex ' + \n\t\t\t\t\t\t'cfinput cfinsert cfinterface cfinvoke cfinvokeargument cflayout cflayoutarea cfldap cflocation cflock cflog ' + \n\t\t\t\t\t\t'cflogin cfloginuser cflogout cfloop cfmail cfmailparam cfmailpart cfmenu cfmenuitem cfmodule cfNTauthenticate ' + \n\t\t\t\t\t\t'cfobject cfobjectcache cfoutput cfparam cfpdf cfpdfform cfpdfformparam cfpdfparam cfpdfsubform cfpod cfpop ' + \n\t\t\t\t\t\t'cfpresentation cfpresentationslide cfpresenter cfprint cfprocessingdirective cfprocparam cfprocresult ' + \n\t\t\t\t\t\t'cfproperty cfquery cfqueryparam cfregistry cfreport cfreportparam cfrethrow cfreturn cfsavecontent cfschedule ' + \n\t\t\t\t\t\t'cfscript cfsearch cfselect cfset cfsetting cfsilent cfslider cfsprydataset cfstoredproc cfswitch cftable ' + \n\t\t\t\t\t\t'cftextarea cfthread cfthrow cftimer cftooltip cftrace cftransaction cftree cftreeitem cftry cfupdate cfwddx ' + \n\t\t\t\t\t\t'cfwindow cfxml cfzip cfzipparam';\n\n\t\tvar operators =\t'all and any between cross in join like not null or outer some';\n\n\t\tthis.regexList = [\n\t\t\t{ regex: new RegExp('--(.*)$', 'gm'),\t\t\t\t\t\tcss: 'comments' },  // one line and multiline comments\n\t\t\t{ regex: SyntaxHighlighter.regexLib.xmlComments,\t\t\tcss: 'comments' },    // single quoted strings\n\t\t\t{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,\t\tcss: 'string' },    // double quoted strings\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleQuotedString,\t\tcss: 'string' },    // single quoted strings\n\t\t\t{ regex: new RegExp(this.getKeywords(funcs), 'gmi'),\t\tcss: 'functions' }, // functions\n\t\t\t{ regex: new RegExp(this.getKeywords(operators), 'gmi'),\tcss: 'color1' },    // operators and such\n\t\t\t{ regex: new RegExp(this.getKeywords(keywords), 'gmi'),\t\tcss: 'keyword' }    // keyword\n\t\t\t];\n\t}\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['coldfusion','cf'];\n\t\n\tSyntaxHighlighter.brushes.ColdFusion = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushCpp.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\t// Copyright 2006 Shin, YoungJin\n\t\n\t\tvar datatypes =\t'ATOM BOOL BOOLEAN BYTE CHAR COLORREF DWORD DWORDLONG DWORD_PTR ' +\n\t\t\t\t\t\t'DWORD32 DWORD64 FLOAT HACCEL HALF_PTR HANDLE HBITMAP HBRUSH ' +\n\t\t\t\t\t\t'HCOLORSPACE HCONV HCONVLIST HCURSOR HDC HDDEDATA HDESK HDROP HDWP ' +\n\t\t\t\t\t\t'HENHMETAFILE HFILE HFONT HGDIOBJ HGLOBAL HHOOK HICON HINSTANCE HKEY ' +\n\t\t\t\t\t\t'HKL HLOCAL HMENU HMETAFILE HMODULE HMONITOR HPALETTE HPEN HRESULT ' +\n\t\t\t\t\t\t'HRGN HRSRC HSZ HWINSTA HWND INT INT_PTR INT32 INT64 LANGID LCID LCTYPE ' +\n\t\t\t\t\t\t'LGRPID LONG LONGLONG LONG_PTR LONG32 LONG64 LPARAM LPBOOL LPBYTE LPCOLORREF ' +\n\t\t\t\t\t\t'LPCSTR LPCTSTR LPCVOID LPCWSTR LPDWORD LPHANDLE LPINT LPLONG LPSTR LPTSTR ' +\n\t\t\t\t\t\t'LPVOID LPWORD LPWSTR LRESULT PBOOL PBOOLEAN PBYTE PCHAR PCSTR PCTSTR PCWSTR ' +\n\t\t\t\t\t\t'PDWORDLONG PDWORD_PTR PDWORD32 PDWORD64 PFLOAT PHALF_PTR PHANDLE PHKEY PINT ' +\n\t\t\t\t\t\t'PINT_PTR PINT32 PINT64 PLCID PLONG PLONGLONG PLONG_PTR PLONG32 PLONG64 POINTER_32 ' +\n\t\t\t\t\t\t'POINTER_64 PSHORT PSIZE_T PSSIZE_T PSTR PTBYTE PTCHAR PTSTR PUCHAR PUHALF_PTR ' +\n\t\t\t\t\t\t'PUINT PUINT_PTR PUINT32 PUINT64 PULONG PULONGLONG PULONG_PTR PULONG32 PULONG64 ' +\n\t\t\t\t\t\t'PUSHORT PVOID PWCHAR PWORD PWSTR SC_HANDLE SC_LOCK SERVICE_STATUS_HANDLE SHORT ' +\n\t\t\t\t\t\t'SIZE_T SSIZE_T TBYTE TCHAR UCHAR UHALF_PTR UINT UINT_PTR UINT32 UINT64 ULONG ' +\n\t\t\t\t\t\t'ULONGLONG ULONG_PTR ULONG32 ULONG64 USHORT USN VOID WCHAR WORD WPARAM WPARAM WPARAM ' +\n\t\t\t\t\t\t'char bool short int __int32 __int64 __int8 __int16 long float double __wchar_t ' +\n\t\t\t\t\t\t'clock_t _complex _dev_t _diskfree_t div_t ldiv_t _exception _EXCEPTION_POINTERS ' +\n\t\t\t\t\t\t'FILE _finddata_t _finddatai64_t _wfinddata_t _wfinddatai64_t __finddata64_t ' +\n\t\t\t\t\t\t'__wfinddata64_t _FPIEEE_RECORD fpos_t _HEAPINFO _HFILE lconv intptr_t ' +\n\t\t\t\t\t\t'jmp_buf mbstate_t _off_t _onexit_t _PNH ptrdiff_t _purecall_handler ' +\n\t\t\t\t\t\t'sig_atomic_t size_t _stat __stat64 _stati64 terminate_function ' +\n\t\t\t\t\t\t'time_t __time64_t _timeb __timeb64 tm uintptr_t _utimbuf ' +\n\t\t\t\t\t\t'va_list wchar_t wctrans_t wctype_t wint_t signed';\n\n\t\tvar keywords =\t'break case catch class const __finally __exception __try ' +\n\t\t\t\t\t\t'const_cast continue private public protected __declspec ' +\n\t\t\t\t\t\t'default delete deprecated dllexport dllimport do dynamic_cast ' +\n\t\t\t\t\t\t'else enum explicit extern if for friend goto inline ' +\n\t\t\t\t\t\t'mutable naked namespace new noinline noreturn nothrow ' +\n\t\t\t\t\t\t'register reinterpret_cast return selectany ' +\n\t\t\t\t\t\t'sizeof static static_cast struct switch template this ' +\n\t\t\t\t\t\t'thread throw true false try typedef typeid typename union ' +\n\t\t\t\t\t\t'using uuid virtual void volatile whcar_t while';\n\t\t\t\t\t\n\t\tvar functions =\t'assert isalnum isalpha iscntrl isdigit isgraph islower isprint' +\n\t\t\t\t\t\t'ispunct isspace isupper isxdigit tolower toupper errno localeconv ' +\n\t\t\t\t\t\t'setlocale acos asin atan atan2 ceil cos cosh exp fabs floor fmod ' +\n\t\t\t\t\t\t'frexp ldexp log log10 modf pow sin sinh sqrt tan tanh jmp_buf ' +\n\t\t\t\t\t\t'longjmp setjmp raise signal sig_atomic_t va_arg va_end va_start ' +\n\t\t\t\t\t\t'clearerr fclose feof ferror fflush fgetc fgetpos fgets fopen ' +\n\t\t\t\t\t\t'fprintf fputc fputs fread freopen fscanf fseek fsetpos ftell ' +\n\t\t\t\t\t\t'fwrite getc getchar gets perror printf putc putchar puts remove ' +\n\t\t\t\t\t\t'rename rewind scanf setbuf setvbuf sprintf sscanf tmpfile tmpnam ' +\n\t\t\t\t\t\t'ungetc vfprintf vprintf vsprintf abort abs atexit atof atoi atol ' +\n\t\t\t\t\t\t'bsearch calloc div exit free getenv labs ldiv malloc mblen mbstowcs ' +\n\t\t\t\t\t\t'mbtowc qsort rand realloc srand strtod strtol strtoul system ' +\n\t\t\t\t\t\t'wcstombs wctomb memchr memcmp memcpy memmove memset strcat strchr ' +\n\t\t\t\t\t\t'strcmp strcoll strcpy strcspn strerror strlen strncat strncmp ' +\n\t\t\t\t\t\t'strncpy strpbrk strrchr strspn strstr strtok strxfrm asctime ' +\n\t\t\t\t\t\t'clock ctime difftime gmtime localtime mktime strftime time';\n\n\t\tthis.regexList = [\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleLineCComments,\tcss: 'comments' },\t\t\t// one line comments\n\t\t\t{ regex: SyntaxHighlighter.regexLib.multiLineCComments,\t\tcss: 'comments' },\t\t\t// multiline comments\n\t\t\t{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,\t\tcss: 'string' },\t\t\t// strings\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleQuotedString,\t\tcss: 'string' },\t\t\t// strings\n\t\t\t{ regex: /^ *#.*/gm,\t\t\t\t\t\t\t\t\t\tcss: 'preprocessor' },\n\t\t\t{ regex: new RegExp(this.getKeywords(datatypes), 'gm'),\t\tcss: 'color1 bold' },\n\t\t\t{ regex: new RegExp(this.getKeywords(functions), 'gm'),\t\tcss: 'functions bold' },\n\t\t\t{ regex: new RegExp(this.getKeywords(keywords), 'gm'),\t\tcss: 'keyword bold' }\n\t\t\t];\n\t};\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['cpp', 'c'];\n\n\tSyntaxHighlighter.brushes.Cpp = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushCss.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\tfunction getKeywordsCSS(str)\n\t\t{\n\t\t\treturn '\\\\b([a-z_]|)' + str.replace(/ /g, '(?=:)\\\\b|\\\\b([a-z_\\\\*]|\\\\*|)') + '(?=:)\\\\b';\n\t\t};\n\t\n\t\tfunction getValuesCSS(str)\n\t\t{\n\t\t\treturn '\\\\b' + str.replace(/ /g, '(?!-)(?!:)\\\\b|\\\\b()') + '\\:\\\\b';\n\t\t};\n\n\t\tvar keywords =\t'ascent azimuth background-attachment background-color background-image background-position ' +\n\t\t\t\t\t\t'background-repeat background baseline bbox border-collapse border-color border-spacing border-style border-top ' +\n\t\t\t\t\t\t'border-right border-bottom border-left border-top-color border-right-color border-bottom-color border-left-color ' +\n\t\t\t\t\t\t'border-top-style border-right-style border-bottom-style border-left-style border-top-width border-right-width ' +\n\t\t\t\t\t\t'border-bottom-width border-left-width border-width border bottom cap-height caption-side centerline clear clip color ' +\n\t\t\t\t\t\t'content counter-increment counter-reset cue-after cue-before cue cursor definition-src descent direction display ' +\n\t\t\t\t\t\t'elevation empty-cells float font-size-adjust font-family font-size font-stretch font-style font-variant font-weight font ' +\n\t\t\t\t\t\t'height left letter-spacing line-height list-style-image list-style-position list-style-type list-style margin-top ' +\n\t\t\t\t\t\t'margin-right margin-bottom margin-left margin marker-offset marks mathline max-height max-width min-height min-width orphans ' +\n\t\t\t\t\t\t'outline-color outline-style outline-width outline overflow padding-top padding-right padding-bottom padding-left padding page ' +\n\t\t\t\t\t\t'page-break-after page-break-before page-break-inside pause pause-after pause-before pitch pitch-range play-during position ' +\n\t\t\t\t\t\t'quotes right richness size slope src speak-header speak-numeral speak-punctuation speak speech-rate stemh stemv stress ' +\n\t\t\t\t\t\t'table-layout text-align top text-decoration text-indent text-shadow text-transform unicode-bidi unicode-range units-per-em ' +\n\t\t\t\t\t\t'vertical-align visibility voice-family volume white-space widows width widths word-spacing x-height z-index';\n\n\t\tvar values =\t'above absolute all always aqua armenian attr aural auto avoid baseline behind below bidi-override black blink block blue bold bolder '+\n\t\t\t\t\t\t'both bottom braille capitalize caption center center-left center-right circle close-quote code collapse compact condensed '+\n\t\t\t\t\t\t'continuous counter counters crop cross crosshair cursive dashed decimal decimal-leading-zero default digits disc dotted double '+\n\t\t\t\t\t\t'embed embossed e-resize expanded extra-condensed extra-expanded fantasy far-left far-right fast faster fixed format fuchsia '+\n\t\t\t\t\t\t'gray green groove handheld hebrew help hidden hide high higher icon inline-table inline inset inside invert italic '+\n\t\t\t\t\t\t'justify landscape large larger left-side left leftwards level lighter lime line-through list-item local loud lower-alpha '+\n\t\t\t\t\t\t'lowercase lower-greek lower-latin lower-roman lower low ltr marker maroon medium message-box middle mix move narrower '+\n\t\t\t\t\t\t'navy ne-resize no-close-quote none no-open-quote no-repeat normal nowrap n-resize nw-resize oblique olive once open-quote outset '+\n\t\t\t\t\t\t'outside overline pointer portrait pre print projection purple red relative repeat repeat-x repeat-y rgb ridge right right-side '+\n\t\t\t\t\t\t'rightwards rtl run-in screen scroll semi-condensed semi-expanded separate se-resize show silent silver slower slow '+\n\t\t\t\t\t\t'small small-caps small-caption smaller soft solid speech spell-out square s-resize static status-bar sub super sw-resize '+\n\t\t\t\t\t\t'table-caption table-cell table-column table-column-group table-footer-group table-header-group table-row table-row-group teal '+\n\t\t\t\t\t\t'text-bottom text-top thick thin top transparent tty tv ultra-condensed ultra-expanded underline upper-alpha uppercase upper-latin '+\n\t\t\t\t\t\t'upper-roman url visible wait white wider w-resize x-fast x-high x-large x-loud x-low x-slow x-small x-soft xx-large xx-small yellow';\n\n\t\tvar fonts =\t\t'[mM]onospace [tT]ahoma [vV]erdana [aA]rial [hH]elvetica [sS]ans-serif [sS]erif [cC]ourier mono sans serif';\n\t\n\t\tthis.regexList = [\n\t\t\t{ regex: SyntaxHighlighter.regexLib.multiLineCComments,\t\tcss: 'comments' },\t// multiline comments\n\t\t\t{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,\t\tcss: 'string' },\t// double quoted strings\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleQuotedString,\t\tcss: 'string' },\t// single quoted strings\n\t\t\t{ regex: /\\#[a-fA-F0-9]{3,6}/g,\t\t\t\t\t\t\t\tcss: 'value' },\t\t// html colors\n\t\t\t{ regex: /(-?\\d+)(\\.\\d+)?(px|em|pt|\\:|\\%|)/g,\t\t\t\tcss: 'value' },\t\t// sizes\n\t\t\t{ regex: /!important/g,\t\t\t\t\t\t\t\t\t\tcss: 'color3' },\t// !important\n\t\t\t{ regex: new RegExp(getKeywordsCSS(keywords), 'gm'),\t\tcss: 'keyword' },\t// keywords\n\t\t\t{ regex: new RegExp(getValuesCSS(values), 'g'),\t\t\t\tcss: 'value' },\t\t// values\n\t\t\t{ regex: new RegExp(this.getKeywords(fonts), 'g'),\t\t\tcss: 'color1' }\t\t// fonts\n\t\t\t];\n\n\t\tthis.forHtmlScript({ \n\t\t\tleft: /(&lt;|<)\\s*style.*?(&gt;|>)/gi, \n\t\t\tright: /(&lt;|<)\\/\\s*style\\s*(&gt;|>)/gi \n\t\t\t});\n\t};\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['css'];\n\n\tSyntaxHighlighter.brushes.CSS = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushDelphi.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\tvar keywords =\t'abs addr and ansichar ansistring array as asm begin boolean byte cardinal ' +\n\t\t\t\t\t\t'case char class comp const constructor currency destructor div do double ' +\n\t\t\t\t\t\t'downto else end except exports extended false file finalization finally ' +\n\t\t\t\t\t\t'for function goto if implementation in inherited int64 initialization ' +\n\t\t\t\t\t\t'integer interface is label library longint longword mod nil not object ' +\n\t\t\t\t\t\t'of on or packed pansichar pansistring pchar pcurrency pdatetime pextended ' +\n\t\t\t\t\t\t'pint64 pointer private procedure program property pshortstring pstring ' +\n\t\t\t\t\t\t'pvariant pwidechar pwidestring protected public published raise real real48 ' +\n\t\t\t\t\t\t'record repeat set shl shortint shortstring shr single smallint string then ' +\n\t\t\t\t\t\t'threadvar to true try type unit until uses val var varirnt while widechar ' +\n\t\t\t\t\t\t'widestring with word write writeln xor';\n\n\t\tthis.regexList = [\n\t\t\t{ regex: /\\(\\*[\\s\\S]*?\\*\\)/gm,\t\t\t\t\t\t\t\tcss: 'comments' },  \t// multiline comments (* *)\n\t\t\t{ regex: /{(?!\\$)[\\s\\S]*?}/gm,\t\t\t\t\t\t\t\tcss: 'comments' },  \t// multiline comments { }\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleLineCComments,\tcss: 'comments' },  \t// one line\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleQuotedString,\t\tcss: 'string' },\t\t// strings\n\t\t\t{ regex: /\\{\\$[a-zA-Z]+ .+\\}/g,\t\t\t\t\t\t\t\tcss: 'color1' },\t\t// compiler Directives and Region tags\n\t\t\t{ regex: /\\b[\\d\\.]+\\b/g,\t\t\t\t\t\t\t\t\tcss: 'value' },\t\t\t// numbers 12345\n\t\t\t{ regex: /\\$[a-zA-Z0-9]+\\b/g,\t\t\t\t\t\t\t\tcss: 'value' },\t\t\t// numbers $F5D3\n\t\t\t{ regex: new RegExp(this.getKeywords(keywords), 'gmi'),\t\tcss: 'keyword' }\t\t// keyword\n\t\t\t];\n\t};\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['delphi', 'pascal', 'pas'];\n\n\tSyntaxHighlighter.brushes.Delphi = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushDiff.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\tthis.regexList = [\n\t\t\t{ regex: /^\\+\\+\\+.*$/gm,\t\tcss: 'color2' },\n\t\t\t{ regex: /^\\-\\-\\-.*$/gm,\t\tcss: 'color2' },\n\t\t\t{ regex: /^\\s.*$/gm,\t\t\tcss: 'color1' },\n\t\t\t{ regex: /^@@.*@@$/gm,\t\t\tcss: 'variable' },\n\t\t\t{ regex: /^\\+[^\\+]{1}.*$/gm,\tcss: 'string' },\n\t\t\t{ regex: /^\\-[^\\-]{1}.*$/gm,\tcss: 'comments' }\n\t\t\t];\n\t};\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['diff', 'patch'];\n\n\tSyntaxHighlighter.brushes.Diff = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushErlang.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\t// Contributed by Jean-Lou Dupont\n\t\t// http://jldupont.blogspot.com/2009/06/erlang-syntax-highlighter.html  \n\n\t\t// According to: http://erlang.org/doc/reference_manual/introduction.html#1.5\n\t\tvar keywords = 'after and andalso band begin bnot bor bsl bsr bxor '+\n\t\t\t'case catch cond div end fun if let not of or orelse '+\n\t\t\t'query receive rem try when xor'+\n\t\t\t// additional\n\t\t\t' module export import define';\n\n\t\tthis.regexList = [\n\t\t\t{ regex: new RegExp(\"[A-Z][A-Za-z0-9_]+\", 'g'), \t\t\tcss: 'constants' },\n\t\t\t{ regex: new RegExp(\"\\\\%.+\", 'gm'), \t\t\t\t\t\tcss: 'comments' },\n\t\t\t{ regex: new RegExp(\"\\\\?[A-Za-z0-9_]+\", 'g'), \t\t\t\tcss: 'preprocessor' },\n\t\t\t{ regex: new RegExp(\"[a-z0-9_]+:[a-z0-9_]+\", 'g'), \t\t\tcss: 'functions' },\n\t\t\t{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,\t\tcss: 'string' },\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleQuotedString,\t\tcss: 'string' },\n\t\t\t{ regex: new RegExp(this.getKeywords(keywords),\t'gm'),\t\tcss: 'keyword' }\n\t\t\t];\n\t};\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['erl', 'erlang'];\n\n\tSyntaxHighlighter.brushes.Erland = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushGroovy.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\t// Contributed by Andres Almiray\n\t\t// http://jroller.com/aalmiray/entry/nice_source_code_syntax_highlighter\n\n\t\tvar keywords =\t'as assert break case catch class continue def default do else extends finally ' +\n\t\t\t\t\t\t'if in implements import instanceof interface new package property return switch ' +\n\t\t\t\t\t\t'throw throws try while public protected private static';\n\t\tvar types    =  'void boolean byte char short int long float double';\n\t\tvar constants = 'null';\n\t\tvar methods   = 'allProperties count get size '+\n\t\t\t\t\t\t'collect each eachProperty eachPropertyName eachWithIndex find findAll ' +\n\t\t\t\t\t\t'findIndexOf grep inject max min reverseEach sort ' +\n\t\t\t\t\t\t'asImmutable asSynchronized flatten intersect join pop reverse subMap toList ' +\n\t\t\t\t\t\t'padRight padLeft contains eachMatch toCharacter toLong toUrl tokenize ' +\n\t\t\t\t\t\t'eachFile eachFileRecurse eachB yte eachLine readBytes readLine getText ' +\n\t\t\t\t\t\t'splitEachLine withReader append encodeBase64 decodeBase64 filterLine ' +\n\t\t\t\t\t\t'transformChar transformLine withOutputStream withPrintWriter withStream ' +\n\t\t\t\t\t\t'withStreams withWriter withWriterAppend write writeLine '+\n\t\t\t\t\t\t'dump inspect invokeMethod print println step times upto use waitForOrKill '+\n\t\t\t\t\t\t'getText';\n\n\t\tthis.regexList = [\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleLineCComments,\t\t\t\tcss: 'comments' },\t\t// one line comments\n\t\t\t{ regex: SyntaxHighlighter.regexLib.multiLineCComments,\t\t\t\t\tcss: 'comments' },\t\t// multiline comments\n\t\t\t{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,\t\t\t\t\tcss: 'string' },\t\t// strings\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleQuotedString,\t\t\t\t\tcss: 'string' },\t\t// strings\n\t\t\t{ regex: /\"\"\".*\"\"\"/g,\t\t\t\t\t\t\t\t\t\t\t\t\tcss: 'string' },\t\t// GStrings\n\t\t\t{ regex: new RegExp('\\\\b([\\\\d]+(\\\\.[\\\\d]+)?|0x[a-f0-9]+)\\\\b', 'gi'),\tcss: 'value' },\t\t\t// numbers\n\t\t\t{ regex: new RegExp(this.getKeywords(keywords), 'gm'),\t\t\t\t\tcss: 'keyword' },\t\t// goovy keyword\n\t\t\t{ regex: new RegExp(this.getKeywords(types), 'gm'),\t\t\t\t\t\tcss: 'color1' },\t\t// goovy/java type\n\t\t\t{ regex: new RegExp(this.getKeywords(constants), 'gm'),\t\t\t\t\tcss: 'constants' },\t\t// constants\n\t\t\t{ regex: new RegExp(this.getKeywords(methods), 'gm'),\t\t\t\t\tcss: 'functions' }\t\t// methods\n\t\t\t];\n\n\t\tthis.forHtmlScript(SyntaxHighlighter.regexLib.aspScriptTags);\n\t}\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['groovy'];\n\n\tSyntaxHighlighter.brushes.Groovy = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushJScript.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\tvar keywords =\t'break case catch continue ' +\n\t\t\t\t\t\t'default delete do else false  ' +\n\t\t\t\t\t\t'for function if in instanceof ' +\n\t\t\t\t\t\t'new null return super switch ' +\n\t\t\t\t\t\t'this throw true try typeof var while with'\n\t\t\t\t\t\t;\n\n\t\tvar r = SyntaxHighlighter.regexLib;\n\t\t\n\t\tthis.regexList = [\n\t\t\t{ regex: r.multiLineDoubleQuotedString,\t\t\t\t\tcss: 'string' },\t\t\t// double quoted strings\n\t\t\t{ regex: r.multiLineSingleQuotedString,\t\t\t\t\tcss: 'string' },\t\t\t// single quoted strings\n\t\t\t{ regex: r.singleLineCComments,\t\t\t\t\t\t\tcss: 'comments' },\t\t\t// one line comments\n\t\t\t{ regex: r.multiLineCComments,\t\t\t\t\t\t\tcss: 'comments' },\t\t\t// multiline comments\n\t\t\t{ regex: /\\s*#.*/gm,\t\t\t\t\t\t\t\t\tcss: 'preprocessor' },\t\t// preprocessor tags like #region and #endregion\n\t\t\t{ regex: new RegExp(this.getKeywords(keywords), 'gm'),\tcss: 'keyword' }\t\t\t// keywords\n\t\t\t];\n\t\n\t\tthis.forHtmlScript(r.scriptScriptTags);\n\t};\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['js', 'jscript', 'javascript'];\n\n\tSyntaxHighlighter.brushes.JScript = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushJava.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\tvar keywords =\t'abstract assert boolean break byte case catch char class const ' +\n\t\t\t\t\t\t'continue default do double else enum extends ' +\n\t\t\t\t\t\t'false final finally float for goto if implements import ' +\n\t\t\t\t\t\t'instanceof int interface long native new null ' +\n\t\t\t\t\t\t'package private protected public return ' +\n\t\t\t\t\t\t'short static strictfp super switch synchronized this throw throws true ' +\n\t\t\t\t\t\t'transient try void volatile while';\n\n\t\tthis.regexList = [\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleLineCComments,\tcss: 'comments' },\t\t// one line comments\n\t\t\t{ regex: /\\/\\*([^\\*][\\s\\S]*)?\\*\\//gm,\t\t\t\t\t\tcss: 'comments' },\t \t// multiline comments\n\t\t\t{ regex: /\\/\\*(?!\\*\\/)\\*[\\s\\S]*?\\*\\//gm,\t\t\t\t\tcss: 'preprocessor' },\t// documentation comments\n\t\t\t{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,\t\tcss: 'string' },\t\t// strings\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleQuotedString,\t\tcss: 'string' },\t\t// strings\n\t\t\t{ regex: /\\b([\\d]+(\\.[\\d]+)?|0x[a-f0-9]+)\\b/gi,\t\t\t\tcss: 'value' },\t\t\t// numbers\n\t\t\t{ regex: /(?!\\@interface\\b)\\@[\\$\\w]+\\b/g,\t\t\t\t\tcss: 'color1' },\t\t// annotation @anno\n\t\t\t{ regex: /\\@interface\\b/g,\t\t\t\t\t\t\t\t\tcss: 'color2' },\t\t// @interface keyword\n\t\t\t{ regex: new RegExp(this.getKeywords(keywords), 'gm'),\t\tcss: 'keyword' }\t\t// java keyword\n\t\t\t];\n\n\t\tthis.forHtmlScript({\n\t\t\tleft\t: /(&lt;|<)%[@!=]?/g, \n\t\t\tright\t: /%(&gt;|>)/g \n\t\t});\n\t};\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['java'];\n\n\tSyntaxHighlighter.brushes.Java = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushJavaFX.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\t// Contributed by Patrick Webster\n\t\t// http://patrickwebster.blogspot.com/2009/04/javafx-brush-for-syntaxhighlighter.html\n\t\tvar datatypes =\t'Boolean Byte Character Double Duration '\n\t\t\t\t\t\t+ 'Float Integer Long Number Short String Void'\n\t\t\t\t\t\t;\n\n\t\tvar keywords = 'abstract after and as assert at before bind bound break catch class '\n\t\t\t\t\t\t+ 'continue def delete else exclusive extends false finally first for from '\n\t\t\t\t\t\t+ 'function if import in indexof init insert instanceof into inverse last '\n\t\t\t\t\t\t+ 'lazy mixin mod nativearray new not null on or override package postinit '\n\t\t\t\t\t\t+ 'protected public public-init public-read replace return reverse sizeof '\n\t\t\t\t\t\t+ 'step super then this throw true try tween typeof var where while with '\n\t\t\t\t\t\t+ 'attribute let private readonly static trigger'\n\t\t\t\t\t\t;\n\n\t\tthis.regexList = [\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleLineCComments,\tcss: 'comments' },\n\t\t\t{ regex: SyntaxHighlighter.regexLib.multiLineCComments,\t\tcss: 'comments' },\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleQuotedString,\t\tcss: 'string' },\n\t\t\t{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,\t\tcss: 'string' },\n\t\t\t{ regex: /(-?\\.?)(\\b(\\d*\\.?\\d+|\\d+\\.?\\d*)(e[+-]?\\d+)?|0x[a-f\\d]+)\\b\\.?/gi, css: 'color2' },\t// numbers\n\t\t\t{ regex: new RegExp(this.getKeywords(datatypes), 'gm'),\t\tcss: 'variable' },\t// datatypes\n\t\t\t{ regex: new RegExp(this.getKeywords(keywords), 'gm'),\t\tcss: 'keyword' }\n\t\t];\n\t\tthis.forHtmlScript(SyntaxHighlighter.regexLib.aspScriptTags);\n\t};\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['jfx', 'javafx'];\n\n\tSyntaxHighlighter.brushes.JavaFX = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushPerl.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\t// Contributed by David Simmons-Duffin and Marty Kube\n\t\n\t\tvar funcs = \n\t\t\t'abs accept alarm atan2 bind binmode chdir chmod chomp chop chown chr ' + \n\t\t\t'chroot close closedir connect cos crypt defined delete each endgrent ' + \n\t\t\t'endhostent endnetent endprotoent endpwent endservent eof exec exists ' + \n\t\t\t'exp fcntl fileno flock fork format formline getc getgrent getgrgid ' + \n\t\t\t'getgrnam gethostbyaddr gethostbyname gethostent getlogin getnetbyaddr ' + \n\t\t\t'getnetbyname getnetent getpeername getpgrp getppid getpriority ' + \n\t\t\t'getprotobyname getprotobynumber getprotoent getpwent getpwnam getpwuid ' + \n\t\t\t'getservbyname getservbyport getservent getsockname getsockopt glob ' + \n\t\t\t'gmtime grep hex index int ioctl join keys kill lc lcfirst length link ' + \n\t\t\t'listen localtime lock log lstat map mkdir msgctl msgget msgrcv msgsnd ' + \n\t\t\t'oct open opendir ord pack pipe pop pos print printf prototype push ' + \n\t\t\t'quotemeta rand read readdir readline readlink readpipe recv rename ' + \n\t\t\t'reset reverse rewinddir rindex rmdir scalar seek seekdir select semctl ' + \n\t\t\t'semget semop send setgrent sethostent setnetent setpgrp setpriority ' + \n\t\t\t'setprotoent setpwent setservent setsockopt shift shmctl shmget shmread ' + \n\t\t\t'shmwrite shutdown sin sleep socket socketpair sort splice split sprintf ' + \n\t\t\t'sqrt srand stat study substr symlink syscall sysopen sysread sysseek ' + \n\t\t\t'system syswrite tell telldir time times tr truncate uc ucfirst umask ' + \n\t\t\t'undef unlink unpack unshift utime values vec wait waitpid warn write';\n    \n\t\tvar keywords =  \n\t\t\t'bless caller continue dbmclose dbmopen die do dump else elsif eval exit ' +\n\t\t\t'for foreach goto if import last local my next no our package redo ref ' + \n\t\t\t'require return sub tie tied unless untie until use wantarray while';\n    \n\t\tthis.regexList = [\n\t\t\t{ regex: new RegExp('#[^!].*$', 'gm'),\t\t\t\t\tcss: 'comments' },\n\t\t\t{ regex: new RegExp('^\\\\s*#!.*$', 'gm'),\t\t\t\tcss: 'preprocessor' }, // shebang\n\t\t\t{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,\tcss: 'string' },\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleQuotedString,\tcss: 'string' },\n\t\t\t{ regex: new RegExp('(\\\\$|@|%)\\\\w+', 'g'),\t\t\t\tcss: 'variable' },\n\t\t\t{ regex: new RegExp(this.getKeywords(funcs), 'gmi'),\tcss: 'functions' },\n\t\t\t{ regex: new RegExp(this.getKeywords(keywords), 'gm'),\tcss: 'keyword' }\n\t\t    ];\n\n\t\tthis.forHtmlScript(SyntaxHighlighter.regexLib.phpScriptTags);\n\t}\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t\t= ['perl', 'Perl', 'pl'];\n\n\tSyntaxHighlighter.brushes.Perl = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushPhp.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\tvar funcs\t=\t'abs acos acosh addcslashes addslashes ' +\n\t\t\t\t\t\t'array_change_key_case array_chunk array_combine array_count_values array_diff '+\n\t\t\t\t\t\t'array_diff_assoc array_diff_key array_diff_uassoc array_diff_ukey array_fill '+\n\t\t\t\t\t\t'array_filter array_flip array_intersect array_intersect_assoc array_intersect_key '+\n\t\t\t\t\t\t'array_intersect_uassoc array_intersect_ukey array_key_exists array_keys array_map '+\n\t\t\t\t\t\t'array_merge array_merge_recursive array_multisort array_pad array_pop array_product '+\n\t\t\t\t\t\t'array_push array_rand array_reduce array_reverse array_search array_shift '+\n\t\t\t\t\t\t'array_slice array_splice array_sum array_udiff array_udiff_assoc '+\n\t\t\t\t\t\t'array_udiff_uassoc array_uintersect array_uintersect_assoc '+\n\t\t\t\t\t\t'array_uintersect_uassoc array_unique array_unshift array_values array_walk '+\n\t\t\t\t\t\t'array_walk_recursive atan atan2 atanh base64_decode base64_encode base_convert '+\n\t\t\t\t\t\t'basename bcadd bccomp bcdiv bcmod bcmul bindec bindtextdomain bzclose bzcompress '+\n\t\t\t\t\t\t'bzdecompress bzerrno bzerror bzerrstr bzflush bzopen bzread bzwrite ceil chdir '+\n\t\t\t\t\t\t'checkdate checkdnsrr chgrp chmod chop chown chr chroot chunk_split class_exists '+\n\t\t\t\t\t\t'closedir closelog copy cos cosh count count_chars date decbin dechex decoct '+\n\t\t\t\t\t\t'deg2rad delete ebcdic2ascii echo empty end ereg ereg_replace eregi eregi_replace error_log '+\n\t\t\t\t\t\t'error_reporting escapeshellarg escapeshellcmd eval exec exit exp explode extension_loaded '+\n\t\t\t\t\t\t'feof fflush fgetc fgetcsv fgets fgetss file_exists file_get_contents file_put_contents '+\n\t\t\t\t\t\t'fileatime filectime filegroup fileinode filemtime fileowner fileperms filesize filetype '+\n\t\t\t\t\t\t'floatval flock floor flush fmod fnmatch fopen fpassthru fprintf fputcsv fputs fread fscanf '+\n\t\t\t\t\t\t'fseek fsockopen fstat ftell ftok getallheaders getcwd getdate getenv gethostbyaddr gethostbyname '+\n\t\t\t\t\t\t'gethostbynamel getimagesize getlastmod getmxrr getmygid getmyinode getmypid getmyuid getopt '+\n\t\t\t\t\t\t'getprotobyname getprotobynumber getrandmax getrusage getservbyname getservbyport gettext '+\n\t\t\t\t\t\t'gettimeofday gettype glob gmdate gmmktime ini_alter ini_get ini_get_all ini_restore ini_set '+\n\t\t\t\t\t\t'interface_exists intval ip2long is_a is_array is_bool is_callable is_dir is_double '+\n\t\t\t\t\t\t'is_executable is_file is_finite is_float is_infinite is_int is_integer is_link is_long '+\n\t\t\t\t\t\t'is_nan is_null is_numeric is_object is_readable is_real is_resource is_scalar is_soap_fault '+\n\t\t\t\t\t\t'is_string is_subclass_of is_uploaded_file is_writable is_writeable mkdir mktime nl2br '+\n\t\t\t\t\t\t'parse_ini_file parse_str parse_url passthru pathinfo print readlink realpath rewind rewinddir rmdir '+\n\t\t\t\t\t\t'round str_ireplace str_pad str_repeat str_replace str_rot13 str_shuffle str_split '+\n\t\t\t\t\t\t'str_word_count strcasecmp strchr strcmp strcoll strcspn strftime strip_tags stripcslashes '+\n\t\t\t\t\t\t'stripos stripslashes stristr strlen strnatcasecmp strnatcmp strncasecmp strncmp strpbrk '+\n\t\t\t\t\t\t'strpos strptime strrchr strrev strripos strrpos strspn strstr strtok strtolower strtotime '+\n\t\t\t\t\t\t'strtoupper strtr strval substr substr_compare';\n\n\t\tvar keywords =\t'abstract and array as break case catch cfunction class clone const continue declare default die do ' +\n\t\t\t\t\t\t'else elseif enddeclare endfor endforeach endif endswitch endwhile extends final for foreach ' +\n\t\t\t\t\t\t'function include include_once global goto if implements interface instanceof namespace new ' +\n\t\t\t\t\t\t'old_function or private protected public return require require_once static switch ' +\n\t\t\t\t\t\t'throw try use var while xor ';\n\t\t\n\t\tvar constants\t= '__FILE__ __LINE__ __METHOD__ __FUNCTION__ __CLASS__';\n\n\t\tthis.regexList = [\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleLineCComments,\tcss: 'comments' },\t\t\t// one line comments\n\t\t\t{ regex: SyntaxHighlighter.regexLib.multiLineCComments,\t\tcss: 'comments' },\t\t\t// multiline comments\n\t\t\t{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,\t\tcss: 'string' },\t\t\t// double quoted strings\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleQuotedString,\t\tcss: 'string' },\t\t\t// single quoted strings\n\t\t\t{ regex: /\\$\\w+/g,\t\t\t\t\t\t\t\t\t\t\tcss: 'variable' },\t\t\t// variables\n\t\t\t{ regex: new RegExp(this.getKeywords(funcs), 'gmi'),\t\tcss: 'functions' },\t\t\t// common functions\n\t\t\t{ regex: new RegExp(this.getKeywords(constants), 'gmi'),\tcss: 'constants' },\t\t\t// constants\n\t\t\t{ regex: new RegExp(this.getKeywords(keywords), 'gm'),\t\tcss: 'keyword' }\t\t\t// keyword\n\t\t\t];\n\n\t\tthis.forHtmlScript(SyntaxHighlighter.regexLib.phpScriptTags);\n\t};\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['php'];\n\n\tSyntaxHighlighter.brushes.Php = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushPlain.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t};\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['text', 'plain'];\n\n\tSyntaxHighlighter.brushes.Plain = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushPowerShell.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\t// Contributes by B.v.Zanten, Getronics\n\t\t// http://confluence.atlassian.com/display/CONFEXT/New+Code+Macro\n\n\t\tvar keywords = 'Add-Content Add-History Add-Member Add-PSSnapin Clear(-Content)? Clear-Item ' +\n\t\t\t\t\t'Clear-ItemProperty Clear-Variable Compare-Object ConvertFrom-SecureString Convert-Path ' +\n\t\t\t\t\t'ConvertTo-Html ConvertTo-SecureString Copy(-Item)? Copy-ItemProperty Export-Alias ' +\n\t\t\t\t\t'Export-Clixml Export-Console Export-Csv ForEach(-Object)? Format-Custom Format-List ' +\n\t\t\t\t\t'Format-Table Format-Wide Get-Acl Get-Alias Get-AuthenticodeSignature Get-ChildItem Get-Command ' +\n\t\t\t\t\t'Get-Content Get-Credential Get-Culture Get-Date Get-EventLog Get-ExecutionPolicy ' +\n\t\t\t\t\t'Get-Help Get-History Get-Host Get-Item Get-ItemProperty Get-Location Get-Member ' +\n\t\t\t\t\t'Get-PfxCertificate Get-Process Get-PSDrive Get-PSProvider Get-PSSnapin Get-Service ' +\n\t\t\t\t\t'Get-TraceSource Get-UICulture Get-Unique Get-Variable Get-WmiObject Group-Object ' +\n\t\t\t\t\t'Import-Alias Import-Clixml Import-Csv Invoke-Expression Invoke-History Invoke-Item ' +\n\t\t\t\t\t'Join-Path Measure-Command Measure-Object Move(-Item)? Move-ItemProperty New-Alias ' +\n\t\t\t\t\t'New-Item New-ItemProperty New-Object New-PSDrive New-Service New-TimeSpan ' +\n\t\t\t\t\t'New-Variable Out-Default Out-File Out-Host Out-Null Out-Printer Out-String Pop-Location ' +\n\t\t\t\t\t'Push-Location Read-Host Remove-Item Remove-ItemProperty Remove-PSDrive Remove-PSSnapin ' +\n\t\t\t\t\t'Remove-Variable Rename-Item Rename-ItemProperty Resolve-Path Restart-Service Resume-Service ' +\n\t\t\t\t\t'Select-Object Select-String Set-Acl Set-Alias Set-AuthenticodeSignature Set-Content ' +\n\t\t\t\t\t'Set-Date Set-ExecutionPolicy Set-Item Set-ItemProperty Set-Location Set-PSDebug ' +\n\t\t\t\t\t'Set-Service Set-TraceSource Set(-Variable)? Sort-Object Split-Path Start-Service ' +\n\t\t\t\t\t'Start-Sleep Start-Transcript Stop-Process Stop-Service Stop-Transcript Suspend-Service ' +\n\t\t\t\t\t'Tee-Object Test-Path Trace-Command Update-FormatData Update-TypeData Where(-Object)? ' +\n\t\t\t\t\t'Write-Debug Write-Error Write(-Host)? Write-Output Write-Progress Write-Verbose Write-Warning';\n\t\tvar alias = 'ac asnp clc cli clp clv cpi cpp cvpa diff epal epcsv fc fl ' +\n\t\t\t\t\t'ft fw gal gc gci gcm gdr ghy gi gl gm gp gps group gsv ' +\n\t\t\t\t\t'gsnp gu gv gwmi iex ihy ii ipal ipcsv mi mp nal ndr ni nv oh rdr ' +\n\t\t\t\t\t'ri rni rnp rp rsnp rv rvpa sal sasv sc select si sl sleep sort sp ' +\n\t\t\t\t\t'spps spsv sv tee cat cd cp h history kill lp ls ' +\n\t\t\t\t\t'mount mv popd ps pushd pwd r rm rmdir echo cls chdir del dir ' +\n\t\t\t\t\t'erase rd ren type % \\\\?';\n\n\t\tthis.regexList = [\n\t\t\t{ regex: /#.*$/gm,\t\t\t\t\t\t\t\t\t\tcss: 'comments' },  // one line comments\n\t\t\t{ regex: /\\$[a-zA-Z0-9]+\\b/g,\t\t\t\t\t\t\tcss: 'value'   },   // variables $Computer1\n\t\t\t{ regex: /\\-[a-zA-Z]+\\b/g,\t\t\t\t\t\t\t\tcss: 'keyword' },   // Operators    -not  -and  -eq\n\t\t\t{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,\tcss: 'string' },    // strings\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleQuotedString,\tcss: 'string' },    // strings\n\t\t\t{ regex: new RegExp(this.getKeywords(keywords), 'gmi'),\tcss: 'keyword' },\n\t\t\t{ regex: new RegExp(this.getKeywords(alias), 'gmi'),\tcss: 'keyword' }\n\t\t];\n\t};\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['powershell', 'ps'];\n\n\tSyntaxHighlighter.brushes.PowerShell = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushPython.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\t// Contributed by Gheorghe Milas and Ahmad Sherif\n\t\n\t\tvar keywords =  'and assert break class continue def del elif else ' +\n\t\t\t\t\t\t'except exec finally for from global if import in is ' +\n\t\t\t\t\t\t'lambda not or pass print raise return try yield while';\n\n\t\tvar funcs = '__import__ abs all any apply basestring bin bool buffer callable ' +\n\t\t\t\t\t'chr classmethod cmp coerce compile complex delattr dict dir ' +\n\t\t\t\t\t'divmod enumerate eval execfile file filter float format frozenset ' +\n\t\t\t\t\t'getattr globals hasattr hash help hex id input int intern ' +\n\t\t\t\t\t'isinstance issubclass iter len list locals long map max min next ' +\n\t\t\t\t\t'object oct open ord pow print property range raw_input reduce ' +\n\t\t\t\t\t'reload repr reversed round set setattr slice sorted staticmethod ' +\n\t\t\t\t\t'str sum super tuple type type unichr unicode vars xrange zip';\n\n\t\tvar special =  'None True False self cls class_';\n\n\t\tthis.regexList = [\n\t\t\t\t{ regex: SyntaxHighlighter.regexLib.singleLinePerlComments, css: 'comments' },\n\t\t\t\t{ regex: /^\\s*@\\w+/gm, \t\t\t\t\t\t\t\t\t\tcss: 'decorator' },\n\t\t\t\t{ regex: /(['\\\"]{3})([^\\1])*?\\1/gm, \t\t\t\t\t\tcss: 'comments' },\n\t\t\t\t{ regex: /\"(?!\")(?:\\.|\\\\\\\"|[^\\\"\"\\n])*\"/gm, \t\t\t\t\tcss: 'string' },\n\t\t\t\t{ regex: /'(?!')(?:\\.|(\\\\\\')|[^\\''\\n])*'/gm, \t\t\t\tcss: 'string' },\n\t\t\t\t{ regex: /\\+|\\-|\\*|\\/|\\%|=|==/gm, \t\t\t\t\t\t\tcss: 'keyword' },\n\t\t\t\t{ regex: /\\b\\d+\\.?\\w*/g, \t\t\t\t\t\t\t\t\tcss: 'value' },\n\t\t\t\t{ regex: new RegExp(this.getKeywords(funcs), 'gmi'),\t\tcss: 'functions' },\n\t\t\t\t{ regex: new RegExp(this.getKeywords(keywords), 'gm'), \t\tcss: 'keyword' },\n\t\t\t\t{ regex: new RegExp(this.getKeywords(special), 'gm'), \t\tcss: 'color1' }\n\t\t\t\t];\n\t\t\t\n\t\tthis.forHtmlScript(SyntaxHighlighter.regexLib.aspScriptTags);\n\t};\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['py', 'python'];\n\n\tSyntaxHighlighter.brushes.Python = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushRuby.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\t// Contributed by Erik Peterson.\n\t\n\t\tvar keywords =\t'alias and BEGIN begin break case class def define_method defined do each else elsif ' +\n\t\t\t\t\t\t'END end ensure false for if in module new next nil not or raise redo rescue retry return ' +\n\t\t\t\t\t\t'self super then throw true undef unless until when while yield';\n\n\t\tvar builtins =\t'Array Bignum Binding Class Continuation Dir Exception FalseClass File::Stat File Fixnum Fload ' +\n\t\t\t\t\t\t'Hash Integer IO MatchData Method Module NilClass Numeric Object Proc Range Regexp String Struct::TMS Symbol ' +\n\t\t\t\t\t\t'ThreadGroup Thread Time TrueClass';\n\n\t\tthis.regexList = [\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleLinePerlComments,\tcss: 'comments' },\t\t// one line comments\n\t\t\t{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,\t\tcss: 'string' },\t\t// double quoted strings\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleQuotedString,\t\tcss: 'string' },\t\t// single quoted strings\n\t\t\t{ regex: /\\b[A-Z0-9_]+\\b/g,\t\t\t\t\t\t\t\t\tcss: 'constants' },\t\t// constants\n\t\t\t{ regex: /:[a-z][A-Za-z0-9_]*/g,\t\t\t\t\t\t\tcss: 'color2' },\t\t// symbols\n\t\t\t{ regex: /(\\$|@@|@)\\w+/g,\t\t\t\t\t\t\t\t\tcss: 'variable bold' },\t// $global, @instance, and @@class variables\n\t\t\t{ regex: new RegExp(this.getKeywords(keywords), 'gm'),\t\tcss: 'keyword' },\t\t// keywords\n\t\t\t{ regex: new RegExp(this.getKeywords(builtins), 'gm'),\t\tcss: 'color1' }\t\t\t// builtins\n\t\t\t];\n\n\t\tthis.forHtmlScript(SyntaxHighlighter.regexLib.aspScriptTags);\n\t};\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['ruby', 'rails', 'ror', 'rb'];\n\n\tSyntaxHighlighter.brushes.Ruby = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushSass.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\tfunction getKeywordsCSS(str)\n\t\t{\n\t\t\treturn '\\\\b([a-z_]|)' + str.replace(/ /g, '(?=:)\\\\b|\\\\b([a-z_\\\\*]|\\\\*|)') + '(?=:)\\\\b';\n\t\t};\n\t\n\t\tfunction getValuesCSS(str)\n\t\t{\n\t\t\treturn '\\\\b' + str.replace(/ /g, '(?!-)(?!:)\\\\b|\\\\b()') + '\\:\\\\b';\n\t\t};\n\n\t\tvar keywords =\t'ascent azimuth background-attachment background-color background-image background-position ' +\n\t\t\t\t\t\t'background-repeat background baseline bbox border-collapse border-color border-spacing border-style border-top ' +\n\t\t\t\t\t\t'border-right border-bottom border-left border-top-color border-right-color border-bottom-color border-left-color ' +\n\t\t\t\t\t\t'border-top-style border-right-style border-bottom-style border-left-style border-top-width border-right-width ' +\n\t\t\t\t\t\t'border-bottom-width border-left-width border-width border bottom cap-height caption-side centerline clear clip color ' +\n\t\t\t\t\t\t'content counter-increment counter-reset cue-after cue-before cue cursor definition-src descent direction display ' +\n\t\t\t\t\t\t'elevation empty-cells float font-size-adjust font-family font-size font-stretch font-style font-variant font-weight font ' +\n\t\t\t\t\t\t'height left letter-spacing line-height list-style-image list-style-position list-style-type list-style margin-top ' +\n\t\t\t\t\t\t'margin-right margin-bottom margin-left margin marker-offset marks mathline max-height max-width min-height min-width orphans ' +\n\t\t\t\t\t\t'outline-color outline-style outline-width outline overflow padding-top padding-right padding-bottom padding-left padding page ' +\n\t\t\t\t\t\t'page-break-after page-break-before page-break-inside pause pause-after pause-before pitch pitch-range play-during position ' +\n\t\t\t\t\t\t'quotes right richness size slope src speak-header speak-numeral speak-punctuation speak speech-rate stemh stemv stress ' +\n\t\t\t\t\t\t'table-layout text-align top text-decoration text-indent text-shadow text-transform unicode-bidi unicode-range units-per-em ' +\n\t\t\t\t\t\t'vertical-align visibility voice-family volume white-space widows width widths word-spacing x-height z-index';\n\t\t\n\t\tvar values =\t'above absolute all always aqua armenian attr aural auto avoid baseline behind below bidi-override black blink block blue bold bolder '+\n\t\t\t\t\t\t'both bottom braille capitalize caption center center-left center-right circle close-quote code collapse compact condensed '+\n\t\t\t\t\t\t'continuous counter counters crop cross crosshair cursive dashed decimal decimal-leading-zero digits disc dotted double '+\n\t\t\t\t\t\t'embed embossed e-resize expanded extra-condensed extra-expanded fantasy far-left far-right fast faster fixed format fuchsia '+\n\t\t\t\t\t\t'gray green groove handheld hebrew help hidden hide high higher icon inline-table inline inset inside invert italic '+\n\t\t\t\t\t\t'justify landscape large larger left-side left leftwards level lighter lime line-through list-item local loud lower-alpha '+\n\t\t\t\t\t\t'lowercase lower-greek lower-latin lower-roman lower low ltr marker maroon medium message-box middle mix move narrower '+\n\t\t\t\t\t\t'navy ne-resize no-close-quote none no-open-quote no-repeat normal nowrap n-resize nw-resize oblique olive once open-quote outset '+\n\t\t\t\t\t\t'outside overline pointer portrait pre print projection purple red relative repeat repeat-x repeat-y rgb ridge right right-side '+\n\t\t\t\t\t\t'rightwards rtl run-in screen scroll semi-condensed semi-expanded separate se-resize show silent silver slower slow '+\n\t\t\t\t\t\t'small small-caps small-caption smaller soft solid speech spell-out square s-resize static status-bar sub super sw-resize '+\n\t\t\t\t\t\t'table-caption table-cell table-column table-column-group table-footer-group table-header-group table-row table-row-group teal '+\n\t\t\t\t\t\t'text-bottom text-top thick thin top transparent tty tv ultra-condensed ultra-expanded underline upper-alpha uppercase upper-latin '+\n\t\t\t\t\t\t'upper-roman url visible wait white wider w-resize x-fast x-high x-large x-loud x-low x-slow x-small x-soft xx-large xx-small yellow';\n\t\t\n\t\tvar fonts =\t\t'[mM]onospace [tT]ahoma [vV]erdana [aA]rial [hH]elvetica [sS]ans-serif [sS]erif [cC]ourier mono sans serif';\n\t\t\n\t\tvar statements\t\t= '!important !default';\n\t\tvar preprocessor\t= '@import @extend @debug @warn @if @for @while @mixin @include';\n\t\t\n\t\tvar r = SyntaxHighlighter.regexLib;\n\t\t\n\t\tthis.regexList = [\n\t\t\t{ regex: r.multiLineCComments,\t\t\t\t\t\t\t\tcss: 'comments' },\t\t// multiline comments\n\t\t\t{ regex: r.singleLineCComments,\t\t\t\t\t\t\t\tcss: 'comments' },\t\t// singleline comments\n\t\t\t{ regex: r.doubleQuotedString,\t\t\t\t\t\t\t\tcss: 'string' },\t\t// double quoted strings\n\t\t\t{ regex: r.singleQuotedString,\t\t\t\t\t\t\t\tcss: 'string' },\t\t// single quoted strings\n\t\t\t{ regex: /\\#[a-fA-F0-9]{3,6}/g,\t\t\t\t\t\t\t\tcss: 'value' },\t\t\t// html colors\n\t\t\t{ regex: /\\b(-?\\d+)(\\.\\d+)?(px|em|pt|\\:|\\%|)\\b/g,\t\t\tcss: 'value' },\t\t\t// sizes\n\t\t\t{ regex: /\\$\\w+/g,\t\t\t\t\t\t\t\t\t\t\tcss: 'variable' },\t\t// variables\n\t\t\t{ regex: new RegExp(this.getKeywords(statements), 'g'),\t\tcss: 'color3' },\t\t// statements\n\t\t\t{ regex: new RegExp(this.getKeywords(preprocessor), 'g'),\tcss: 'preprocessor' },\t// preprocessor\n\t\t\t{ regex: new RegExp(getKeywordsCSS(keywords), 'gm'),\t\tcss: 'keyword' },\t\t// keywords\n\t\t\t{ regex: new RegExp(getValuesCSS(values), 'g'),\t\t\t\tcss: 'value' },\t\t\t// values\n\t\t\t{ regex: new RegExp(this.getKeywords(fonts), 'g'),\t\t\tcss: 'color1' }\t\t\t// fonts\n\t\t\t];\n\t};\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['sass', 'scss'];\n\n\tSyntaxHighlighter.brushes.Sass = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushScala.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\t// Contributed by Yegor Jbanov and David Bernard.\n\t\n\t\tvar keywords =\t'val sealed case def true trait implicit forSome import match object null finally super ' +\n\t\t\t\t\t\t'override try lazy for var catch throw type extends class while with new final yield abstract ' +\n\t\t\t\t\t\t'else do if return protected private this package false';\n\n\t\tvar keyops =\t'[_:=><%#@]+';\n\n\t\tthis.regexList = [\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleLineCComments,\t\t\tcss: 'comments' },\t// one line comments\n\t\t\t{ regex: SyntaxHighlighter.regexLib.multiLineCComments,\t\t\t\tcss: 'comments' },\t// multiline comments\n\t\t\t{ regex: SyntaxHighlighter.regexLib.multiLineSingleQuotedString,\tcss: 'string' },\t// multi-line strings\n\t\t\t{ regex: SyntaxHighlighter.regexLib.multiLineDoubleQuotedString,    css: 'string' },\t// double-quoted string\n\t\t\t{ regex: SyntaxHighlighter.regexLib.singleQuotedString,\t\t\t\tcss: 'string' },\t// strings\n\t\t\t{ regex: /0x[a-f0-9]+|\\d+(\\.\\d+)?/gi,\t\t\t\t\t\t\t\tcss: 'value' },\t\t// numbers\n\t\t\t{ regex: new RegExp(this.getKeywords(keywords), 'gm'),\t\t\t\tcss: 'keyword' },\t// keywords\n\t\t\t{ regex: new RegExp(keyops, 'gm'),\t\t\t\t\t\t\t\t\tcss: 'keyword' }\t// scala keyword\n\t\t\t];\n\t}\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['scala'];\n\n\tSyntaxHighlighter.brushes.Scala = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushSql.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\tvar funcs\t=\t'abs avg case cast coalesce convert count current_timestamp ' +\n\t\t\t\t\t\t'current_user day isnull left lower month nullif replace right ' +\n\t\t\t\t\t\t'session_user space substring sum system_user upper user year';\n\n\t\tvar keywords =\t'absolute action add after alter as asc at authorization begin bigint ' +\n\t\t\t\t\t\t'binary bit by cascade char character check checkpoint close collate ' +\n\t\t\t\t\t\t'column commit committed connect connection constraint contains continue ' +\n\t\t\t\t\t\t'create cube current current_date current_time cursor database date ' +\n\t\t\t\t\t\t'deallocate dec decimal declare default delete desc distinct double drop ' +\n\t\t\t\t\t\t'dynamic else end end-exec escape except exec execute false fetch first ' +\n\t\t\t\t\t\t'float for force foreign forward free from full function global goto grant ' +\n\t\t\t\t\t\t'group grouping having hour ignore index inner insensitive insert instead ' +\n\t\t\t\t\t\t'int integer intersect into is isolation key last level load local max min ' +\n\t\t\t\t\t\t'minute modify move name national nchar next no numeric of off on only ' +\n\t\t\t\t\t\t'open option order out output partial password precision prepare primary ' +\n\t\t\t\t\t\t'prior privileges procedure public read real references relative repeatable ' +\n\t\t\t\t\t\t'restrict return returns revoke rollback rollup rows rule schema scroll ' +\n\t\t\t\t\t\t'second section select sequence serializable set size smallint static ' +\n\t\t\t\t\t\t'statistics table temp temporary then time timestamp to top transaction ' +\n\t\t\t\t\t\t'translation trigger true truncate uncommitted union unique update values ' +\n\t\t\t\t\t\t'varchar varying view when where with work';\n\n\t\tvar operators =\t'all and any between cross in join like not null or outer some';\n\n\t\tthis.regexList = [\n\t\t\t{ regex: /--(.*)$/gm,\t\t\t\t\t\t\t\t\t\t\t\tcss: 'comments' },\t\t\t// one line and multiline comments\n\t\t\t{ regex: SyntaxHighlighter.regexLib.multiLineDoubleQuotedString,\tcss: 'string' },\t\t\t// double quoted strings\n\t\t\t{ regex: SyntaxHighlighter.regexLib.multiLineSingleQuotedString,\tcss: 'string' },\t\t\t// single quoted strings\n\t\t\t{ regex: new RegExp(this.getKeywords(funcs), 'gmi'),\t\t\t\tcss: 'color2' },\t\t\t// functions\n\t\t\t{ regex: new RegExp(this.getKeywords(operators), 'gmi'),\t\t\tcss: 'color1' },\t\t\t// operators and such\n\t\t\t{ regex: new RegExp(this.getKeywords(keywords), 'gmi'),\t\t\t\tcss: 'keyword' }\t\t\t// keyword\n\t\t\t];\n\t};\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['sql'];\n\n\tSyntaxHighlighter.brushes.Sql = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushVb.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\tvar keywords =\t'AddHandler AddressOf AndAlso Alias And Ansi As Assembly Auto ' +\n\t\t\t\t\t\t'Boolean ByRef Byte ByVal Call Case Catch CBool CByte CChar CDate ' +\n\t\t\t\t\t\t'CDec CDbl Char CInt Class CLng CObj Const CShort CSng CStr CType ' +\n\t\t\t\t\t\t'Date Decimal Declare Default Delegate Dim DirectCast Do Double Each ' +\n\t\t\t\t\t\t'Else ElseIf End Enum Erase Error Event Exit False Finally For Friend ' +\n\t\t\t\t\t\t'Function Get GetType GoSub GoTo Handles If Implements Imports In ' +\n\t\t\t\t\t\t'Inherits Integer Interface Is Let Lib Like Long Loop Me Mod Module ' +\n\t\t\t\t\t\t'MustInherit MustOverride MyBase MyClass Namespace New Next Not Nothing ' +\n\t\t\t\t\t\t'NotInheritable NotOverridable Object On Option Optional Or OrElse ' +\n\t\t\t\t\t\t'Overloads Overridable Overrides ParamArray Preserve Private Property ' +\n\t\t\t\t\t\t'Protected Public RaiseEvent ReadOnly ReDim REM RemoveHandler Resume ' +\n\t\t\t\t\t\t'Return Select Set Shadows Shared Short Single Static Step Stop String ' +\n\t\t\t\t\t\t'Structure Sub SyncLock Then Throw To True Try TypeOf Unicode Until ' +\n\t\t\t\t\t\t'Variant When While With WithEvents WriteOnly Xor';\n\n\t\tthis.regexList = [\n\t\t\t{ regex: /'.*$/gm,\t\t\t\t\t\t\t\t\t\tcss: 'comments' },\t\t\t// one line comments\n\t\t\t{ regex: SyntaxHighlighter.regexLib.doubleQuotedString,\tcss: 'string' },\t\t\t// strings\n\t\t\t{ regex: /^\\s*#.*$/gm,\t\t\t\t\t\t\t\t\tcss: 'preprocessor' },\t\t// preprocessor tags like #region and #endregion\n\t\t\t{ regex: new RegExp(this.getKeywords(keywords), 'gm'),\tcss: 'keyword' }\t\t\t// vb keyword\n\t\t\t];\n\n\t\tthis.forHtmlScript(SyntaxHighlighter.regexLib.aspScriptTags);\n\t};\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['vb', 'vbnet'];\n\n\tSyntaxHighlighter.brushes.Vb = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shBrushXml.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n;(function()\n{\n\t// CommonJS\n\ttypeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;\n\n\tfunction Brush()\n\t{\n\t\tfunction process(match, regexInfo)\n\t\t{\n\t\t\tvar constructor = SyntaxHighlighter.Match,\n\t\t\t\tcode = match[0],\n\t\t\t\ttag = new XRegExp('(&lt;|<)[\\\\s\\\\/\\\\?]*(?<name>[:\\\\w-\\\\.]+)', 'xg').exec(code),\n\t\t\t\tresult = []\n\t\t\t\t;\n\t\t\n\t\t\tif (match.attributes != null) \n\t\t\t{\n\t\t\t\tvar attributes,\n\t\t\t\t\tregex = new XRegExp('(?<name> [\\\\w:\\\\-\\\\.]+)' +\n\t\t\t\t\t\t\t\t\t\t'\\\\s*=\\\\s*' +\n\t\t\t\t\t\t\t\t\t\t'(?<value> \".*?\"|\\'.*?\\'|\\\\w+)',\n\t\t\t\t\t\t\t\t\t\t'xg');\n\n\t\t\t\twhile ((attributes = regex.exec(code)) != null) \n\t\t\t\t{\n\t\t\t\t\tresult.push(new constructor(attributes.name, match.index + attributes.index, 'color1'));\n\t\t\t\t\tresult.push(new constructor(attributes.value, match.index + attributes.index + attributes[0].indexOf(attributes.value), 'string'));\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (tag != null)\n\t\t\t\tresult.push(\n\t\t\t\t\tnew constructor(tag.name, match.index + tag[0].indexOf(tag.name), 'keyword')\n\t\t\t\t);\n\n\t\t\treturn result;\n\t\t}\n\t\n\t\tthis.regexList = [\n\t\t\t{ regex: new XRegExp('(\\\\&lt;|<)\\\\!\\\\[[\\\\w\\\\s]*?\\\\[(.|\\\\s)*?\\\\]\\\\](\\\\&gt;|>)', 'gm'),\t\t\tcss: 'color2' },\t// <![ ... [ ... ]]>\n\t\t\t{ regex: SyntaxHighlighter.regexLib.xmlComments,\t\t\t\t\t\t\t\t\t\t\t\tcss: 'comments' },\t// <!-- ... -->\n\t\t\t{ regex: new XRegExp('(&lt;|<)[\\\\s\\\\/\\\\?]*(\\\\w+)(?<attributes>.*?)[\\\\s\\\\/\\\\?]*(&gt;|>)', 'sg'), func: process }\n\t\t];\n\t};\n\n\tBrush.prototype\t= new SyntaxHighlighter.Highlighter();\n\tBrush.aliases\t= ['xml', 'xhtml', 'xslt', 'html'];\n\n\tSyntaxHighlighter.brushes.Xml = Brush;\n\n\t// CommonJS\n\ttypeof(exports) != 'undefined' ? exports.Brush = Brush : null;\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shCore.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\neval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\\\b'+e(c)+'\\\\b','g'),k[c])}}return p}('K M;I(M)1S 2U(\"2a\\'t 4k M 4K 2g 3l 4G 4H\");(6(){6 r(f,e){I(!M.1R(f))1S 3m(\"3s 15 4R\");K a=f.1w;f=M(f.1m,t(f)+(e||\"\"));I(a)f.1w={1m:a.1m,19:a.19?a.19.1a(0):N};H f}6 t(f){H(f.1J?\"g\":\"\")+(f.4s?\"i\":\"\")+(f.4p?\"m\":\"\")+(f.4v?\"x\":\"\")+(f.3n?\"y\":\"\")}6 B(f,e,a,b){K c=u.L,d,h,g;v=R;5K{O(;c--;){g=u[c];I(a&g.3r&&(!g.2p||g.2p.W(b))){g.2q.12=e;I((h=g.2q.X(f))&&h.P===e){d={3k:g.2b.W(b,h,a),1C:h};1N}}}}5v(i){1S i}5q{v=11}H d}6 p(f,e,a){I(3b.Z.1i)H f.1i(e,a);O(a=a||0;a<f.L;a++)I(f[a]===e)H a;H-1}M=6(f,e){K a=[],b=M.1B,c=0,d,h;I(M.1R(f)){I(e!==1d)1S 3m(\"2a\\'t 5r 5I 5F 5B 5C 15 5E 5p\");H r(f)}I(v)1S 2U(\"2a\\'t W 3l M 59 5m 5g 5x 5i\");e=e||\"\";O(d={2N:11,19:[],2K:6(g){H e.1i(g)>-1},3d:6(g){e+=g}};c<f.L;)I(h=B(f,c,b,d)){a.U(h.3k);c+=h.1C[0].L||1}Y I(h=n.X.W(z[b],f.1a(c))){a.U(h[0]);c+=h[0].L}Y{h=f.3a(c);I(h===\"[\")b=M.2I;Y I(h===\"]\")b=M.1B;a.U(h);c++}a=15(a.1K(\"\"),n.Q.W(e,w,\"\"));a.1w={1m:f,19:d.2N?d.19:N};H a};M.3v=\"1.5.0\";M.2I=1;M.1B=2;K C=/\\\\$(?:(\\\\d\\\\d?|[$&`\\'])|{([$\\\\w]+)})/g,w=/[^5h]+|([\\\\s\\\\S])(?=[\\\\s\\\\S]*\\\\1)/g,A=/^(?:[?*+]|{\\\\d+(?:,\\\\d*)?})\\\\??/,v=11,u=[],n={X:15.Z.X,1A:15.Z.1A,1C:1r.Z.1C,Q:1r.Z.Q,1e:1r.Z.1e},x=n.X.W(/()??/,\"\")[1]===1d,D=6(){K f=/^/g;n.1A.W(f,\"\");H!f.12}(),y=6(){K f=/x/g;n.Q.W(\"x\",f,\"\");H!f.12}(),E=15.Z.3n!==1d,z={};z[M.2I]=/^(?:\\\\\\\\(?:[0-3][0-7]{0,2}|[4-7][0-7]?|x[\\\\29-26-f]{2}|u[\\\\29-26-f]{4}|c[A-3o-z]|[\\\\s\\\\S]))/;z[M.1B]=/^(?:\\\\\\\\(?:0(?:[0-3][0-7]{0,2}|[4-7][0-7]?)?|[1-9]\\\\d*|x[\\\\29-26-f]{2}|u[\\\\29-26-f]{4}|c[A-3o-z]|[\\\\s\\\\S])|\\\\(\\\\?[:=!]|[?*+]\\\\?|{\\\\d+(?:,\\\\d*)?}\\\\??)/;M.1h=6(f,e,a,b){u.U({2q:r(f,\"g\"+(E?\"y\":\"\")),2b:e,3r:a||M.1B,2p:b||N})};M.2n=6(f,e){K a=f+\"/\"+(e||\"\");H M.2n[a]||(M.2n[a]=M(f,e))};M.3c=6(f){H r(f,\"g\")};M.5l=6(f){H f.Q(/[-[\\\\]{}()*+?.,\\\\\\\\^$|#\\\\s]/g,\"\\\\\\\\$&\")};M.5e=6(f,e,a,b){e=r(e,\"g\"+(b&&E?\"y\":\"\"));e.12=a=a||0;f=e.X(f);H b?f&&f.P===a?f:N:f};M.3q=6(){M.1h=6(){1S 2U(\"2a\\'t 55 1h 54 3q\")}};M.1R=6(f){H 53.Z.1q.W(f)===\"[2m 15]\"};M.3p=6(f,e,a,b){O(K c=r(e,\"g\"),d=-1,h;h=c.X(f);){a.W(b,h,++d,f,c);c.12===h.P&&c.12++}I(e.1J)e.12=0};M.57=6(f,e){H 6 a(b,c){K d=e[c].1I?e[c]:{1I:e[c]},h=r(d.1I,\"g\"),g=[],i;O(i=0;i<b.L;i++)M.3p(b[i],h,6(k){g.U(d.3j?k[d.3j]||\"\":k[0])});H c===e.L-1||!g.L?g:a(g,c+1)}([f],0)};15.Z.1p=6(f,e){H J.X(e[0])};15.Z.W=6(f,e){H J.X(e)};15.Z.X=6(f){K e=n.X.1p(J,14),a;I(e){I(!x&&e.L>1&&p(e,\"\")>-1){a=15(J.1m,n.Q.W(t(J),\"g\",\"\"));n.Q.W(f.1a(e.P),a,6(){O(K c=1;c<14.L-2;c++)I(14[c]===1d)e[c]=1d})}I(J.1w&&J.1w.19)O(K b=1;b<e.L;b++)I(a=J.1w.19[b-1])e[a]=e[b];!D&&J.1J&&!e[0].L&&J.12>e.P&&J.12--}H e};I(!D)15.Z.1A=6(f){(f=n.X.W(J,f))&&J.1J&&!f[0].L&&J.12>f.P&&J.12--;H!!f};1r.Z.1C=6(f){M.1R(f)||(f=15(f));I(f.1J){K e=n.1C.1p(J,14);f.12=0;H e}H f.X(J)};1r.Z.Q=6(f,e){K a=M.1R(f),b,c;I(a&&1j e.58()===\"3f\"&&e.1i(\"${\")===-1&&y)H n.Q.1p(J,14);I(a){I(f.1w)b=f.1w.19}Y f+=\"\";I(1j e===\"6\")c=n.Q.W(J,f,6(){I(b){14[0]=1f 1r(14[0]);O(K d=0;d<b.L;d++)I(b[d])14[0][b[d]]=14[d+1]}I(a&&f.1J)f.12=14[14.L-2]+14[0].L;H e.1p(N,14)});Y{c=J+\"\";c=n.Q.W(c,f,6(){K d=14;H n.Q.W(e,C,6(h,g,i){I(g)5b(g){24\"$\":H\"$\";24\"&\":H d[0];24\"`\":H d[d.L-1].1a(0,d[d.L-2]);24\"\\'\":H d[d.L-1].1a(d[d.L-2]+d[0].L);5a:i=\"\";g=+g;I(!g)H h;O(;g>d.L-3;){i=1r.Z.1a.W(g,-1)+i;g=1Q.3i(g/10)}H(g?d[g]||\"\":\"$\")+i}Y{g=+i;I(g<=d.L-3)H d[g];g=b?p(b,i):-1;H g>-1?d[g+1]:h}})})}I(a&&f.1J)f.12=0;H c};1r.Z.1e=6(f,e){I(!M.1R(f))H n.1e.1p(J,14);K a=J+\"\",b=[],c=0,d,h;I(e===1d||+e<0)e=5D;Y{e=1Q.3i(+e);I(!e)H[]}O(f=M.3c(f);d=f.X(a);){I(f.12>c){b.U(a.1a(c,d.P));d.L>1&&d.P<a.L&&3b.Z.U.1p(b,d.1a(1));h=d[0].L;c=f.12;I(b.L>=e)1N}f.12===d.P&&f.12++}I(c===a.L){I(!n.1A.W(f,\"\")||h)b.U(\"\")}Y b.U(a.1a(c));H b.L>e?b.1a(0,e):b};M.1h(/\\\\(\\\\?#[^)]*\\\\)/,6(f){H n.1A.W(A,f.2S.1a(f.P+f[0].L))?\"\":\"(?:)\"});M.1h(/\\\\((?!\\\\?)/,6(){J.19.U(N);H\"(\"});M.1h(/\\\\(\\\\?<([$\\\\w]+)>/,6(f){J.19.U(f[1]);J.2N=R;H\"(\"});M.1h(/\\\\\\\\k<([\\\\w$]+)>/,6(f){K e=p(J.19,f[1]);H e>-1?\"\\\\\\\\\"+(e+1)+(3R(f.2S.3a(f.P+f[0].L))?\"\":\"(?:)\"):f[0]});M.1h(/\\\\[\\\\^?]/,6(f){H f[0]===\"[]\"?\"\\\\\\\\b\\\\\\\\B\":\"[\\\\\\\\s\\\\\\\\S]\"});M.1h(/^\\\\(\\\\?([5A]+)\\\\)/,6(f){J.3d(f[1]);H\"\"});M.1h(/(?:\\\\s+|#.*)+/,6(f){H n.1A.W(A,f.2S.1a(f.P+f[0].L))?\"\":\"(?:)\"},M.1B,6(){H J.2K(\"x\")});M.1h(/\\\\./,6(){H\"[\\\\\\\\s\\\\\\\\S]\"},M.1B,6(){H J.2K(\"s\")})})();1j 2e!=\"1d\"&&(2e.M=M);K 1v=6(){6 r(a,b){a.1l.1i(b)!=-1||(a.1l+=\" \"+b)}6 t(a){H a.1i(\"3e\")==0?a:\"3e\"+a}6 B(a){H e.1Y.2A[t(a)]}6 p(a,b,c){I(a==N)H N;K d=c!=R?a.3G:[a.2G],h={\"#\":\"1c\",\".\":\"1l\"}[b.1o(0,1)]||\"3h\",g,i;g=h!=\"3h\"?b.1o(1):b.5u();I((a[h]||\"\").1i(g)!=-1)H a;O(a=0;d&&a<d.L&&i==N;a++)i=p(d[a],b,c);H i}6 C(a,b){K c={},d;O(d 2g a)c[d]=a[d];O(d 2g b)c[d]=b[d];H c}6 w(a,b,c,d){6 h(g){g=g||1P.5y;I(!g.1F){g.1F=g.52;g.3N=6(){J.5w=11}}c.W(d||1P,g)}a.3g?a.3g(\"4U\"+b,h):a.4y(b,h,11)}6 A(a,b){K c=e.1Y.2j,d=N;I(c==N){c={};O(K h 2g e.1U){K g=e.1U[h];d=g.4x;I(d!=N){g.1V=h.4w();O(g=0;g<d.L;g++)c[d[g]]=h}}e.1Y.2j=c}d=e.1U[c[a]];d==N&&b!=11&&1P.1X(e.13.1x.1X+(e.13.1x.3E+a));H d}6 v(a,b){O(K c=a.1e(\"\\\\n\"),d=0;d<c.L;d++)c[d]=b(c[d],d);H c.1K(\"\\\\n\")}6 u(a,b){I(a==N||a.L==0||a==\"\\\\n\")H a;a=a.Q(/</g,\"&1y;\");a=a.Q(/ {2,}/g,6(c){O(K d=\"\",h=0;h<c.L-1;h++)d+=e.13.1W;H d+\" \"});I(b!=N)a=v(a,6(c){I(c.L==0)H\"\";K d=\"\";c=c.Q(/^(&2s;| )+/,6(h){d=h;H\"\"});I(c.L==0)H d;H d+\\'<17 1g=\"\\'+b+\\'\">\\'+c+\"</17>\"});H a}6 n(a,b){a.1e(\"\\\\n\");O(K c=\"\",d=0;d<50;d++)c+=\"                    \";H a=v(a,6(h){I(h.1i(\"\\\\t\")==-1)H h;O(K g=0;(g=h.1i(\"\\\\t\"))!=-1;)h=h.1o(0,g)+c.1o(0,b-g%b)+h.1o(g+1,h.L);H h})}6 x(a){H a.Q(/^\\\\s+|\\\\s+$/g,\"\")}6 D(a,b){I(a.P<b.P)H-1;Y I(a.P>b.P)H 1;Y I(a.L<b.L)H-1;Y I(a.L>b.L)H 1;H 0}6 y(a,b){6 c(k){H k[0]}O(K d=N,h=[],g=b.2D?b.2D:c;(d=b.1I.X(a))!=N;){K i=g(d,b);I(1j i==\"3f\")i=[1f e.2L(i,d.P,b.23)];h=h.1O(i)}H h}6 E(a){K b=/(.*)((&1G;|&1y;).*)/;H a.Q(e.3A.3M,6(c){K d=\"\",h=N;I(h=b.X(c)){c=h[1];d=h[2]}H\\'<a 2h=\"\\'+c+\\'\">\\'+c+\"</a>\"+d})}6 z(){O(K a=1E.36(\"1k\"),b=[],c=0;c<a.L;c++)a[c].3s==\"20\"&&b.U(a[c]);H b}6 f(a){a=a.1F;K b=p(a,\".20\",R);a=p(a,\".3O\",R);K c=1E.4i(\"3t\");I(!(!a||!b||p(a,\"3t\"))){B(b.1c);r(b,\"1m\");O(K d=a.3G,h=[],g=0;g<d.L;g++)h.U(d[g].4z||d[g].4A);h=h.1K(\"\\\\r\");c.39(1E.4D(h));a.39(c);c.2C();c.4C();w(c,\"4u\",6(){c.2G.4E(c);b.1l=b.1l.Q(\"1m\",\"\")})}}I(1j 3F!=\"1d\"&&1j M==\"1d\")M=3F(\"M\").M;K e={2v:{\"1g-27\":\"\",\"2i-1s\":1,\"2z-1s-2t\":11,1M:N,1t:N,\"42-45\":R,\"43-22\":4,1u:R,16:R,\"3V-17\":R,2l:11,\"41-40\":R,2k:11,\"1z-1k\":11},13:{1W:\"&2s;\",2M:R,46:11,44:11,34:\"4n\",1x:{21:\"4o 1m\",2P:\"?\",1X:\"1v\\\\n\\\\n\",3E:\"4r\\'t 4t 1D O: \",4g:\"4m 4B\\'t 51 O 1z-1k 4F: \",37:\\'<!4T 1z 4S \"-//4V//3H 4W 1.0 4Z//4Y\" \"1Z://2y.3L.3K/4X/3I/3H/3I-4P.4J\"><1z 4I=\"1Z://2y.3L.3K/4L/5L\"><3J><4N 1Z-4M=\"5G-5M\" 6K=\"2O/1z; 6J=6I-8\" /><1t>6L 1v</1t></3J><3B 1L=\"25-6M:6Q,6P,6O,6N-6F;6y-2f:#6x;2f:#6w;25-22:6v;2O-3D:3C;\"><T 1L=\"2O-3D:3C;3w-32:1.6z;\"><T 1L=\"25-22:6A-6E;\">1v</T><T 1L=\"25-22:.6C;3w-6B:6R;\"><T>3v 3.0.76 (72 73 3x)</T><T><a 2h=\"1Z://3u.2w/1v\" 1F=\"38\" 1L=\"2f:#3y\">1Z://3u.2w/1v</a></T><T>70 17 6U 71.</T><T>6T 6X-3x 6Y 6D.</T></T><T>6t 61 60 J 1k, 5Z <a 2h=\"6u://2y.62.2w/63-66/65?64=5X-5W&5P=5O\" 1L=\"2f:#3y\">5R</a> 5V <2R/>5U 5T 5S!</T></T></3B></1z>\\'}},1Y:{2j:N,2A:{}},1U:{},3A:{6n:/\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\//2c,6m:/\\\\/\\\\/.*$/2c,6l:/#.*$/2c,6k:/\"([^\\\\\\\\\"\\\\n]|\\\\\\\\.)*\"/g,6o:/\\'([^\\\\\\\\\\'\\\\n]|\\\\\\\\.)*\\'/g,6p:1f M(\\'\"([^\\\\\\\\\\\\\\\\\"]|\\\\\\\\\\\\\\\\.)*\"\\',\"3z\"),6s:1f M(\"\\'([^\\\\\\\\\\\\\\\\\\']|\\\\\\\\\\\\\\\\.)*\\'\",\"3z\"),6q:/(&1y;|<)!--[\\\\s\\\\S]*?--(&1G;|>)/2c,3M:/\\\\w+:\\\\/\\\\/[\\\\w-.\\\\/?%&=:@;]*/g,6a:{18:/(&1y;|<)\\\\?=?/g,1b:/\\\\?(&1G;|>)/g},69:{18:/(&1y;|<)%=?/g,1b:/%(&1G;|>)/g},6d:{18:/(&1y;|<)\\\\s*1k.*?(&1G;|>)/2T,1b:/(&1y;|<)\\\\/\\\\s*1k\\\\s*(&1G;|>)/2T}},16:{1H:6(a){6 b(i,k){H e.16.2o(i,k,e.13.1x[k])}O(K c=\\'<T 1g=\"16\">\\',d=e.16.2x,h=d.2X,g=0;g<h.L;g++)c+=(d[h[g]].1H||b)(a,h[g]);c+=\"</T>\";H c},2o:6(a,b,c){H\\'<2W><a 2h=\"#\" 1g=\"6e 6h\\'+b+\" \"+b+\\'\">\\'+c+\"</a></2W>\"},2b:6(a){K b=a.1F,c=b.1l||\"\";b=B(p(b,\".20\",R).1c);K d=6(h){H(h=15(h+\"6f(\\\\\\\\w+)\").X(c))?h[1]:N}(\"6g\");b&&d&&e.16.2x[d].2B(b);a.3N()},2x:{2X:[\"21\",\"2P\"],21:{1H:6(a){I(a.V(\"2l\")!=R)H\"\";K b=a.V(\"1t\");H e.16.2o(a,\"21\",b?b:e.13.1x.21)},2B:6(a){a=1E.6j(t(a.1c));a.1l=a.1l.Q(\"47\",\"\")}},2P:{2B:6(){K a=\"68=0\";a+=\", 18=\"+(31.30-33)/2+\", 32=\"+(31.2Z-2Y)/2+\", 30=33, 2Z=2Y\";a=a.Q(/^,/,\"\");a=1P.6Z(\"\",\"38\",a);a.2C();K b=a.1E;b.6W(e.13.1x.37);b.6V();a.2C()}}}},35:6(a,b){K c;I(b)c=[b];Y{c=1E.36(e.13.34);O(K d=[],h=0;h<c.L;h++)d.U(c[h]);c=d}c=c;d=[];I(e.13.2M)c=c.1O(z());I(c.L===0)H d;O(h=0;h<c.L;h++){O(K g=c[h],i=a,k=c[h].1l,j=3W 0,l={},m=1f M(\"^\\\\\\\\[(?<2V>(.*?))\\\\\\\\]$\"),s=1f M(\"(?<27>[\\\\\\\\w-]+)\\\\\\\\s*:\\\\\\\\s*(?<1T>[\\\\\\\\w-%#]+|\\\\\\\\[.*?\\\\\\\\]|\\\\\".*?\\\\\"|\\'.*?\\')\\\\\\\\s*;?\",\"g\");(j=s.X(k))!=N;){K o=j.1T.Q(/^[\\'\"]|[\\'\"]$/g,\"\");I(o!=N&&m.1A(o)){o=m.X(o);o=o.2V.L>0?o.2V.1e(/\\\\s*,\\\\s*/):[]}l[j.27]=o}g={1F:g,1n:C(i,l)};g.1n.1D!=N&&d.U(g)}H d},1M:6(a,b){K c=J.35(a,b),d=N,h=e.13;I(c.L!==0)O(K g=0;g<c.L;g++){b=c[g];K i=b.1F,k=b.1n,j=k.1D,l;I(j!=N){I(k[\"1z-1k\"]==\"R\"||e.2v[\"1z-1k\"]==R){d=1f e.4l(j);j=\"4O\"}Y I(d=A(j))d=1f d;Y 6H;l=i.3X;I(h.2M){l=l;K m=x(l),s=11;I(m.1i(\"<![6G[\")==0){m=m.4h(9);s=R}K o=m.L;I(m.1i(\"]]\\\\>\")==o-3){m=m.4h(0,o-3);s=R}l=s?m:l}I((i.1t||\"\")!=\"\")k.1t=i.1t;k.1D=j;d.2Q(k);b=d.2F(l);I((i.1c||\"\")!=\"\")b.1c=i.1c;i.2G.74(b,i)}}},2E:6(a){w(1P,\"4k\",6(){e.1M(a)})}};e.2E=e.2E;e.1M=e.1M;e.2L=6(a,b,c){J.1T=a;J.P=b;J.L=a.L;J.23=c;J.1V=N};e.2L.Z.1q=6(){H J.1T};e.4l=6(a){6 b(j,l){O(K m=0;m<j.L;m++)j[m].P+=l}K c=A(a),d,h=1f e.1U.5Y,g=J,i=\"2F 1H 2Q\".1e(\" \");I(c!=N){d=1f c;O(K k=0;k<i.L;k++)(6(){K j=i[k];g[j]=6(){H h[j].1p(h,14)}})();d.28==N?1P.1X(e.13.1x.1X+(e.13.1x.4g+a)):h.2J.U({1I:d.28.17,2D:6(j){O(K l=j.17,m=[],s=d.2J,o=j.P+j.18.L,F=d.28,q,G=0;G<s.L;G++){q=y(l,s[G]);b(q,o);m=m.1O(q)}I(F.18!=N&&j.18!=N){q=y(j.18,F.18);b(q,j.P);m=m.1O(q)}I(F.1b!=N&&j.1b!=N){q=y(j.1b,F.1b);b(q,j.P+j[0].5Q(j.1b));m=m.1O(q)}O(j=0;j<m.L;j++)m[j].1V=c.1V;H m}})}};e.4j=6(){};e.4j.Z={V:6(a,b){K c=J.1n[a];c=c==N?b:c;K d={\"R\":R,\"11\":11}[c];H d==N?c:d},3Y:6(a){H 1E.4i(a)},4c:6(a,b){K c=[];I(a!=N)O(K d=0;d<a.L;d++)I(1j a[d]==\"2m\")c=c.1O(y(b,a[d]));H J.4e(c.6b(D))},4e:6(a){O(K b=0;b<a.L;b++)I(a[b]!==N)O(K c=a[b],d=c.P+c.L,h=b+1;h<a.L&&a[b]!==N;h++){K g=a[h];I(g!==N)I(g.P>d)1N;Y I(g.P==c.P&&g.L>c.L)a[b]=N;Y I(g.P>=c.P&&g.P<d)a[h]=N}H a},4d:6(a){K b=[],c=2u(J.V(\"2i-1s\"));v(a,6(d,h){b.U(h+c)});H b},3U:6(a){K b=J.V(\"1M\",[]);I(1j b!=\"2m\"&&b.U==N)b=[b];a:{a=a.1q();K c=3W 0;O(c=c=1Q.6c(c||0,0);c<b.L;c++)I(b[c]==a){b=c;1N a}b=-1}H b!=-1},2r:6(a,b,c){a=[\"1s\",\"6i\"+b,\"P\"+a,\"6r\"+(b%2==0?1:2).1q()];J.3U(b)&&a.U(\"67\");b==0&&a.U(\"1N\");H\\'<T 1g=\"\\'+a.1K(\" \")+\\'\">\\'+c+\"</T>\"},3Q:6(a,b){K c=\"\",d=a.1e(\"\\\\n\").L,h=2u(J.V(\"2i-1s\")),g=J.V(\"2z-1s-2t\");I(g==R)g=(h+d-1).1q().L;Y I(3R(g)==R)g=0;O(K i=0;i<d;i++){K k=b?b[i]:h+i,j;I(k==0)j=e.13.1W;Y{j=g;O(K l=k.1q();l.L<j;)l=\"0\"+l;j=l}a=j;c+=J.2r(i,k,a)}H c},49:6(a,b){a=x(a);K c=a.1e(\"\\\\n\");J.V(\"2z-1s-2t\");K d=2u(J.V(\"2i-1s\"));a=\"\";O(K h=J.V(\"1D\"),g=0;g<c.L;g++){K i=c[g],k=/^(&2s;|\\\\s)+/.X(i),j=N,l=b?b[g]:d+g;I(k!=N){j=k[0].1q();i=i.1o(j.L);j=j.Q(\" \",e.13.1W)}i=x(i);I(i.L==0)i=e.13.1W;a+=J.2r(g,l,(j!=N?\\'<17 1g=\"\\'+h+\\' 5N\">\\'+j+\"</17>\":\"\")+i)}H a},4f:6(a){H a?\"<4a>\"+a+\"</4a>\":\"\"},4b:6(a,b){6 c(l){H(l=l?l.1V||g:g)?l+\" \":\"\"}O(K d=0,h=\"\",g=J.V(\"1D\",\"\"),i=0;i<b.L;i++){K k=b[i],j;I(!(k===N||k.L===0)){j=c(k);h+=u(a.1o(d,k.P-d),j+\"48\")+u(k.1T,j+k.23);d=k.P+k.L+(k.75||0)}}h+=u(a.1o(d),c()+\"48\");H h},1H:6(a){K b=\"\",c=[\"20\"],d;I(J.V(\"2k\")==R)J.1n.16=J.1n.1u=11;1l=\"20\";J.V(\"2l\")==R&&c.U(\"47\");I((1u=J.V(\"1u\"))==11)c.U(\"6S\");c.U(J.V(\"1g-27\"));c.U(J.V(\"1D\"));a=a.Q(/^[ ]*[\\\\n]+|[\\\\n]*[ ]*$/g,\"\").Q(/\\\\r/g,\" \");b=J.V(\"43-22\");I(J.V(\"42-45\")==R)a=n(a,b);Y{O(K h=\"\",g=0;g<b;g++)h+=\" \";a=a.Q(/\\\\t/g,h)}a=a;a:{b=a=a;h=/<2R\\\\s*\\\\/?>|&1y;2R\\\\s*\\\\/?&1G;/2T;I(e.13.46==R)b=b.Q(h,\"\\\\n\");I(e.13.44==R)b=b.Q(h,\"\");b=b.1e(\"\\\\n\");h=/^\\\\s*/;g=4Q;O(K i=0;i<b.L&&g>0;i++){K k=b[i];I(x(k).L!=0){k=h.X(k);I(k==N){a=a;1N a}g=1Q.4q(k[0].L,g)}}I(g>0)O(i=0;i<b.L;i++)b[i]=b[i].1o(g);a=b.1K(\"\\\\n\")}I(1u)d=J.4d(a);b=J.4c(J.2J,a);b=J.4b(a,b);b=J.49(b,d);I(J.V(\"41-40\"))b=E(b);1j 2H!=\"1d\"&&2H.3S&&2H.3S.1C(/5s/)&&c.U(\"5t\");H b=\\'<T 1c=\"\\'+t(J.1c)+\\'\" 1g=\"\\'+c.1K(\" \")+\\'\">\\'+(J.V(\"16\")?e.16.1H(J):\"\")+\\'<3Z 5z=\"0\" 5H=\"0\" 5J=\"0\">\\'+J.4f(J.V(\"1t\"))+\"<3T><3P>\"+(1u?\\'<2d 1g=\"1u\">\\'+J.3Q(a)+\"</2d>\":\"\")+\\'<2d 1g=\"17\"><T 1g=\"3O\">\\'+b+\"</T></2d></3P></3T></3Z></T>\"},2F:6(a){I(a===N)a=\"\";J.17=a;K b=J.3Y(\"T\");b.3X=J.1H(a);J.V(\"16\")&&w(p(b,\".16\"),\"5c\",e.16.2b);J.V(\"3V-17\")&&w(p(b,\".17\"),\"56\",f);H b},2Q:6(a){J.1c=\"\"+1Q.5d(1Q.5n()*5k).1q();e.1Y.2A[t(J.1c)]=J;J.1n=C(e.2v,a||{});I(J.V(\"2k\")==R)J.1n.16=J.1n.1u=11},5j:6(a){a=a.Q(/^\\\\s+|\\\\s+$/g,\"\").Q(/\\\\s+/g,\"|\");H\"\\\\\\\\b(?:\"+a+\")\\\\\\\\b\"},5f:6(a){J.28={18:{1I:a.18,23:\"1k\"},1b:{1I:a.1b,23:\"1k\"},17:1f M(\"(?<18>\"+a.18.1m+\")(?<17>.*?)(?<1b>\"+a.1b.1m+\")\",\"5o\")}}};H e}();1j 2e!=\"1d\"&&(2e.1v=1v);',62,441,'||||||function|||||||||||||||||||||||||||||||||||||return|if|this|var|length|XRegExp|null|for|index|replace|true||div|push|getParam|call|exec|else|prototype||false|lastIndex|config|arguments|RegExp|toolbar|code|left|captureNames|slice|right|id|undefined|split|new|class|addToken|indexOf|typeof|script|className|source|params|substr|apply|toString|String|line|title|gutter|SyntaxHighlighter|_xregexp|strings|lt|html|test|OUTSIDE_CLASS|match|brush|document|target|gt|getHtml|regex|global|join|style|highlight|break|concat|window|Math|isRegExp|throw|value|brushes|brushName|space|alert|vars|http|syntaxhighlighter|expandSource|size|css|case|font|Fa|name|htmlScript|dA|can|handler|gm|td|exports|color|in|href|first|discoveredBrushes|light|collapse|object|cache|getButtonHtml|trigger|pattern|getLineHtml|nbsp|numbers|parseInt|defaults|com|items|www|pad|highlighters|execute|focus|func|all|getDiv|parentNode|navigator|INSIDE_CLASS|regexList|hasFlag|Match|useScriptTags|hasNamedCapture|text|help|init|br|input|gi|Error|values|span|list|250|height|width|screen|top|500|tagName|findElements|getElementsByTagName|aboutDialog|_blank|appendChild|charAt|Array|copyAsGlobal|setFlag|highlighter_|string|attachEvent|nodeName|floor|backref|output|the|TypeError|sticky|Za|iterate|freezeTokens|scope|type|textarea|alexgorbatchev|version|margin|2010|005896|gs|regexLib|body|center|align|noBrush|require|childNodes|DTD|xhtml1|head|org|w3|url|preventDefault|container|tr|getLineNumbersHtml|isNaN|userAgent|tbody|isLineHighlighted|quick|void|innerHTML|create|table|links|auto|smart|tab|stripBrs|tabs|bloggerMode|collapsed|plain|getCodeLinesHtml|caption|getMatchesHtml|findMatches|figureOutLineNumbers|removeNestedMatches|getTitleHtml|brushNotHtmlScript|substring|createElement|Highlighter|load|HtmlScript|Brush|pre|expand|multiline|min|Can|ignoreCase|find|blur|extended|toLowerCase|aliases|addEventListener|innerText|textContent|wasn|select|createTextNode|removeChild|option|same|frame|xmlns|dtd|twice|1999|equiv|meta|htmlscript|transitional|1E3|expected|PUBLIC|DOCTYPE|on|W3C|XHTML|TR|EN|Transitional||configured|srcElement|Object|after|run|dblclick|matchChain|valueOf|constructor|default|switch|click|round|execAt|forHtmlScript|token|gimy|functions|getKeywords|1E6|escape|within|random|sgi|another|finally|supply|MSIE|ie|toUpperCase|catch|returnValue|definition|event|border|imsx|constructing|one|Infinity|from|when|Content|cellpadding|flags|cellspacing|try|xhtml|Type|spaces|2930402|hosted_button_id|lastIndexOf|donate|active|development|keep|to|xclick|_s|Xml|please|like|you|paypal|cgi|cmd|webscr|bin|highlighted|scrollbars|aspScriptTags|phpScriptTags|sort|max|scriptScriptTags|toolbar_item|_|command|command_|number|getElementById|doubleQuotedString|singleLinePerlComments|singleLineCComments|multiLineCComments|singleQuotedString|multiLineDoubleQuotedString|xmlComments|alt|multiLineSingleQuotedString|If|https|1em|000|fff|background|5em|xx|bottom|75em|Gorbatchev|large|serif|CDATA|continue|utf|charset|content|About|family|sans|Helvetica|Arial|Geneva|3em|nogutter|Copyright|syntax|close|write|2004|Alex|open|JavaScript|highlighter|July|02|replaceChild|offset|83'.split('|'),0,{}))\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/scripts/shLegacy.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\neval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\\\b'+e(c)+'\\\\b','g'),k[c])}}return p}('3 u={8:{}};u.8={A:4(c,k,l,m,n,o){4 d(a,b){2 a!=1?a:b}4 f(a){2 a!=1?a.E():1}c=c.I(\":\");3 g=c[0],e={};t={\"r\":K};M=1;5=8.5;9(3 j R c)e[c[j]]=\"r\";k=f(d(k,5.C));l=f(d(l,5.D));m=f(d(m,5.s));o=f(d(o,5.Q));n=f(d(n,5[\"x-y\"]));2{P:g,C:d(t[e.O],k),D:d(t[e.N],l),s:d({\"r\":r}[e.s],m),\"x-y\":d(4(a,b){9(3 h=T S(\"^\"+b+\"\\\\\\\\[(?<q>\\\\\\\\w+)\\\\\\\\]$\",\"U\"),i=1,p=0;p<a.7;p++)6((i=h.J(a[p]))!=1)2 i.q;2 1}(c,\"G\"),n)}},F:4(c,k,l,m,n,o){4 d(){9(3 a=H,b=0;b<a.7;b++)6(a[b]!==1){6(z a[b]==\"L\"&&a[b]!=\"\")2 a[b]+\"\";6(z a[b]==\"X\"&&a[b].q!=\"\")2 a[b].q+\"\"}2 1}4 f(a,b,h){h=12.13(h);9(3 i=0;i<h.7;i++)h[i].V(\"15\")==b&&a.Y(h[i])}3 g=[];f(g,c,\"Z\");f(g,c,\"W\");6(g.7!==0)9(c=0;c<g.7;c++){3 e=g[c],j=d(e.B[\"14\"],e.10,e.B.v,e.v);6(j!==1){j=u.8.A(j,k,l,m,n,o);8.11(j,e)}}}};',62,68,'|null|return|var|function|defaults|if|length|SyntaxHighlighter|for|||||||||||||||||value|true|collapse|reverse|dp|language||first|line|typeof|parseParams|attributes|gutter|toolbar|toString|HighlightAll|firstline|arguments|split|exec|false|string|result|nocontrols|nogutter|brush|ruler|in|XRegExp|new|gi|getAttribute|textarea|object|push|pre|className|highlight|document|getElementsByTagName|class|name'.split('|'),0,{}))\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/src/shAutoloader.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n(function() {\n\nvar sh = SyntaxHighlighter;\n\n/**\n * Provides functionality to dynamically load only the brushes that a needed to render the current page.\n *\n * There are two syntaxes that autoload understands. For example:\n * \n * SyntaxHighlighter.autoloader(\n *     [ 'applescript',          'Scripts/shBrushAppleScript.js' ],\n *     [ 'actionscript3', 'as3', 'Scripts/shBrushAS3.js' ]\n * );\n *\n * or a more easily comprehendable one:\n *\n * SyntaxHighlighter.autoloader(\n *     'applescript       Scripts/shBrushAppleScript.js',\n *     'actionscript3 as3 Scripts/shBrushAS3.js'\n * );\n */\nsh.autoloader = function()\n{\n\tvar list = arguments,\n\t\telements = sh.findElements(),\n\t\tbrushes = {},\n\t\tscripts = {},\n\t\tall = SyntaxHighlighter.all,\n\t\tallCalled = false,\n\t\tallParams = null,\n\t\ti\n\t\t;\n\t\t\n\tSyntaxHighlighter.all = function(params)\n\t{\n\t\tallParams = params;\n\t\tallCalled = true;\n\t};\n\t\n\tfunction addBrush(aliases, url)\n\t{\n\t\tfor (var i = 0; i < aliases.length; i++)\n\t\t\tbrushes[aliases[i]] = url;\n\t};\n\t\n\tfunction getAliases(item)\n\t{\n\t\treturn item.pop\n\t\t\t? item\n\t\t\t: item.split(/\\s+/)\n\t\t\t;\n\t}\n\t\n\t// create table of aliases and script urls\n\tfor (i = 0; i < list.length; i++)\n\t{\n\t\tvar aliases = getAliases(list[i]),\n\t\t\turl = aliases.pop()\n\t\t\t;\n\t\t\t\n\t\taddBrush(aliases, url);\n\t}\n\t\n\t// dynamically add <script /> tags to the document body\n\tfor (i = 0; i < elements.length; i++)\n\t{\n\t\tvar url = brushes[elements[i].params.brush];\n\t\t\n\t\tif (!url)\n\t\t\tcontinue;\n\t\t\n\t\tscripts[url] = false;\n\t\tloadScript(url);\n\t}\n\t\n\tfunction loadScript(url)\n\t{\n\t\tvar script = document.createElement('script'),\n\t\t\tdone = false\n\t\t\t;\n\t\t\n\t\tscript.src = url;\n\t\tscript.type = 'text/javascript';\n\t\tscript.language = 'javascript';\n\t\tscript.onload = script.onreadystatechange = function()\n\t\t{\n\t\t\tif (!done && (!this.readyState || this.readyState == 'loaded' || this.readyState == 'complete'))\n\t\t\t{\n\t\t\t\tdone = true;\n\t\t\t\tscripts[url] = true;\n\t\t\t\tcheckAll();\n\t\t\t\t\n\t\t\t\t// Handle memory leak in IE\n\t\t\t\tscript.onload = script.onreadystatechange = null;\n\t\t\t\tscript.parentNode.removeChild(script);\n\t\t\t}\n\t\t};\n\t\t\n\t\t// sync way of adding script tags to the page\n\t\tdocument.body.appendChild(script);\n\t};\n\t\n\tfunction checkAll()\n\t{\n\t\tfor(var url in scripts)\n\t\t\tif (scripts[url] == false)\n\t\t\t\treturn;\n\t\t\n\t\tif (allCalled)\n\t\t\tSyntaxHighlighter.highlight(allParams);\n\t};\n};\n\n})();\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/src/shCore.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n//\n// Begin anonymous function. This is used to contain local scope variables without polutting global scope.\n//\nvar SyntaxHighlighter = function() { \n\n// CommonJS\nif (typeof(require) != 'undefined' && typeof(XRegExp) == 'undefined')\n{\n\tXRegExp = require('XRegExp').XRegExp;\n}\n\n// Shortcut object which will be assigned to the SyntaxHighlighter variable.\n// This is a shorthand for local reference in order to avoid long namespace \n// references to SyntaxHighlighter.whatever...\nvar sh = {\n\tdefaults : {\n\t\t/** Additional CSS class names to be added to highlighter elements. */\n\t\t'class-name' : '',\n\t\t\n\t\t/** First line number. */\n\t\t'first-line' : 1,\n\t\t\n\t\t/**\n\t\t * Pads line numbers. Possible values are:\n\t\t *\n\t\t *   false - don't pad line numbers.\n\t\t *   true  - automaticaly pad numbers with minimum required number of leading zeroes.\n\t\t *   [int] - length up to which pad line numbers.\n\t\t */\n\t\t'pad-line-numbers' : false,\n\t\t\n\t\t/** Lines to highlight. */\n\t\t'highlight' : null,\n\t\t\n\t\t/** Title to be displayed above the code block. */\n\t\t'title' : null,\n\t\t\n\t\t/** Enables or disables smart tabs. */\n\t\t'smart-tabs' : true,\n\t\t\n\t\t/** Gets or sets tab size. */\n\t\t'tab-size' : 4,\n\t\t\n\t\t/** Enables or disables gutter. */\n\t\t'gutter' : true,\n\t\t\n\t\t/** Enables or disables toolbar. */\n\t\t'toolbar' : true,\n\t\t\n\t\t/** Enables quick code copy and paste from double click. */\n\t\t'quick-code' : true,\n\t\t\n\t\t/** Forces code view to be collapsed. */\n\t\t'collapse' : false,\n\t\t\n\t\t/** Enables or disables automatic links. */\n\t\t'auto-links' : true,\n\t\t\n\t\t/** Gets or sets light mode. Equavalent to turning off gutter and toolbar. */\n\t\t'light' : false,\n\t\t\n\t\t'html-script' : false\n\t},\n\t\n\tconfig : {\n\t\tspace : '&nbsp;',\n\t\t\n\t\t/** Enables use of <SCRIPT type=\"syntaxhighlighter\" /> tags. */\n\t\tuseScriptTags : true,\n\t\t\n\t\t/** Blogger mode flag. */\n\t\tbloggerMode : false,\n\t\t\n\t\tstripBrs : false,\n\t\t\n\t\t/** Name of the tag that SyntaxHighlighter will automatically look for. */\n\t\ttagName : 'pre',\n\t\t\n\t\tstrings : {\n\t\t\texpandSource : 'expand source',\n\t\t\thelp : '?',\n\t\t\talert: 'SyntaxHighlighter\\n\\n',\n\t\t\tnoBrush : 'Can\\'t find brush for: ',\n\t\t\tbrushNotHtmlScript : 'Brush wasn\\'t configured for html-script option: ',\n\t\t\t\n\t\t\t// this is populated by the build script\n\t\t\taboutDialog : '<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"><html xmlns=\"http://www.w3.org/1999/xhtml\"><head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" /><title>About SyntaxHighlighter</title></head><body style=\"font-family:Geneva,Arial,Helvetica,sans-serif;background-color:#fff;color:#000;font-size:1em;text-align:center;\"><div style=\"text-align:center;margin-top:1.5em;\"><div style=\"font-size:xx-large;\">SyntaxHighlighter</div><div style=\"font-size:.75em;margin-bottom:3em;\"><div>version 3.0.83 (July 02 2010)</div><div><a href=\"http://alexgorbatchev.com/SyntaxHighlighter\" target=\"_blank\" style=\"color:#005896\">http://alexgorbatchev.com/SyntaxHighlighter</a></div><div>JavaScript code syntax highlighter.</div><div>Copyright 2004-2010 Alex Gorbatchev.</div></div><div>If you like this script, please <a href=\"https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=2930402\" style=\"color:#005896\">donate</a> to <br/>keep development active!</div></div></body></html>'\n\t\t}\n\t},\n\t\n\t/** Internal 'global' variables. */\n\tvars : {\n\t\tdiscoveredBrushes : null,\n\t\thighlighters : {}\n\t},\n\t\n\t/** This object is populated by user included external brush files. */\n\tbrushes : {},\n\n\t/** Common regular expressions. */\n\tregexLib : {\n\t\tmultiLineCComments\t\t\t: /\\/\\*[\\s\\S]*?\\*\\//gm,\n\t\tsingleLineCComments\t\t\t: /\\/\\/.*$/gm,\n\t\tsingleLinePerlComments\t\t: /#.*$/gm,\n\t\tdoubleQuotedString\t\t\t: /\"([^\\\\\"\\n]|\\\\.)*\"/g,\n\t\tsingleQuotedString\t\t\t: /'([^\\\\'\\n]|\\\\.)*'/g,\n\t\tmultiLineDoubleQuotedString\t: new XRegExp('\"([^\\\\\\\\\"]|\\\\\\\\.)*\"', 'gs'),\n\t\tmultiLineSingleQuotedString\t: new XRegExp(\"'([^\\\\\\\\']|\\\\\\\\.)*'\", 'gs'),\n\t\txmlComments\t\t\t\t\t: /(&lt;|<)!--[\\s\\S]*?--(&gt;|>)/gm,\n\t\turl\t\t\t\t\t\t\t: /\\w+:\\/\\/[\\w-.\\/?%&=:@;]*/g,\n\t\t\n\t\t/** <?= ?> tags. */\n\t\tphpScriptTags \t\t\t\t: { left: /(&lt;|<)\\?=?/g, right: /\\?(&gt;|>)/g },\n\t\t\n\t\t/** <%= %> tags. */\n\t\taspScriptTags\t\t\t\t: { left: /(&lt;|<)%=?/g, right: /%(&gt;|>)/g },\n\t\t\n\t\t/** <script></script> tags. */\n\t\tscriptScriptTags\t\t\t: { left: /(&lt;|<)\\s*script.*?(&gt;|>)/gi, right: /(&lt;|<)\\/\\s*script\\s*(&gt;|>)/gi }\n\t},\n\n\ttoolbar: {\n\t\t/**\n\t\t * Generates HTML markup for the toolbar.\n\t\t * @param {Highlighter} highlighter Highlighter instance.\n\t\t * @return {String} Returns HTML markup.\n\t\t */\n\t\tgetHtml: function(highlighter)\n\t\t{\n\t\t\tvar html = '<div class=\"toolbar\">',\n\t\t\t\titems = sh.toolbar.items,\n\t\t\t\tlist = items.list\n\t\t\t\t;\n\t\t\t\n\t\t\tfunction defaultGetHtml(highlighter, name)\n\t\t\t{\n\t\t\t\treturn sh.toolbar.getButtonHtml(highlighter, name, sh.config.strings[name]);\n\t\t\t};\n\t\t\t\n\t\t\tfor (var i = 0; i < list.length; i++)\n\t\t\t\thtml += (items[list[i]].getHtml || defaultGetHtml)(highlighter, list[i]);\n\t\t\t\n\t\t\thtml += '</div>';\n\t\t\t\n\t\t\treturn html;\n\t\t},\n\t\t\n\t\t/**\n\t\t * Generates HTML markup for a regular button in the toolbar.\n\t\t * @param {Highlighter} highlighter Highlighter instance.\n\t\t * @param {String} commandName\t\tCommand name that would be executed.\n\t\t * @param {String} label\t\t\tLabel text to display.\n\t\t * @return {String}\t\t\t\t\tReturns HTML markup.\n\t\t */\n\t\tgetButtonHtml: function(highlighter, commandName, label)\n\t\t{\n\t\t\treturn '<span><a href=\"#\" class=\"toolbar_item'\n\t\t\t\t+ ' command_' + commandName\n\t\t\t\t+ ' ' + commandName\n\t\t\t\t+ '\">' + label + '</a></span>'\n\t\t\t\t;\n\t\t},\n\t\t\n\t\t/**\n\t\t * Event handler for a toolbar anchor.\n\t\t */\n\t\thandler: function(e)\n\t\t{\n\t\t\tvar target = e.target,\n\t\t\t\tclassName = target.className || ''\n\t\t\t\t;\n\n\t\t\tfunction getValue(name)\n\t\t\t{\n\t\t\t\tvar r = new RegExp(name + '_(\\\\w+)'),\n\t\t\t\t\tmatch = r.exec(className)\n\t\t\t\t\t;\n\n\t\t\t\treturn match ? match[1] : null;\n\t\t\t};\n\t\t\t\n\t\t\tvar highlighter = getHighlighterById(findParentElement(target, '.syntaxhighlighter').id),\n\t\t\t\tcommandName = getValue('command')\n\t\t\t\t;\n\t\t\t\n\t\t\t// execute the toolbar command\n\t\t\tif (highlighter && commandName)\n\t\t\t\tsh.toolbar.items[commandName].execute(highlighter);\n\n\t\t\t// disable default A click behaviour\n\t\t\te.preventDefault();\n\t\t},\n\t\t\n\t\t/** Collection of toolbar items. */\n\t\titems : {\n\t\t\t// Ordered lis of items in the toolbar. Can't expect `for (var n in items)` to be consistent.\n\t\t\tlist: ['expandSource', 'help'],\n\n\t\t\texpandSource: {\n\t\t\t\tgetHtml: function(highlighter)\n\t\t\t\t{\n\t\t\t\t\tif (highlighter.getParam('collapse') != true)\n\t\t\t\t\t\treturn '';\n\t\t\t\t\t\t\n\t\t\t\t\tvar title = highlighter.getParam('title');\n\t\t\t\t\treturn sh.toolbar.getButtonHtml(highlighter, 'expandSource', title ? title : sh.config.strings.expandSource);\n\t\t\t\t},\n\t\t\t\n\t\t\t\texecute: function(highlighter)\n\t\t\t\t{\n\t\t\t\t\tvar div = getHighlighterDivById(highlighter.id);\n\t\t\t\t\tremoveClass(div, 'collapsed');\n\t\t\t\t}\n\t\t\t},\n\n\t\t\t/** Command to display the about dialog window. */\n\t\t\thelp: {\n\t\t\t\texecute: function(highlighter)\n\t\t\t\t{\t\n\t\t\t\t\tvar wnd = popup('', '_blank', 500, 250, 'scrollbars=0'),\n\t\t\t\t\t\tdoc = wnd.document\n\t\t\t\t\t\t;\n\t\t\t\t\t\n\t\t\t\t\tdoc.write(sh.config.strings.aboutDialog);\n\t\t\t\t\tdoc.close();\n\t\t\t\t\twnd.focus();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t},\n\n\t/**\n\t * Finds all elements on the page which should be processes by SyntaxHighlighter.\n\t *\n\t * @param {Object} globalParams\t\tOptional parameters which override element's \n\t * \t\t\t\t\t\t\t\t\tparameters. Only used if element is specified.\n\t * \n\t * @param {Object} element\tOptional element to highlight. If none is\n\t * \t\t\t\t\t\t\tprovided, all elements in the current document \n\t * \t\t\t\t\t\t\tare returned which qualify.\n\t *\n\t * @return {Array}\tReturns list of <code>{ target: DOMElement, params: Object }</code> objects.\n\t */\n\tfindElements: function(globalParams, element)\n\t{\n\t\tvar elements = element ? [element] : toArray(document.getElementsByTagName(sh.config.tagName)), \n\t\t\tconf = sh.config,\n\t\t\tresult = []\n\t\t\t;\n\n\t\t// support for <SCRIPT TYPE=\"syntaxhighlighter\" /> feature\n\t\tif (conf.useScriptTags)\n\t\t\telements = elements.concat(getSyntaxHighlighterScriptTags());\n\n\t\tif (elements.length === 0) \n\t\t\treturn result;\n\t\n\t\tfor (var i = 0; i < elements.length; i++) \n\t\t{\n\t\t\tvar item = {\n\t\t\t\ttarget: elements[i], \n\t\t\t\t// local params take precedence over globals\n\t\t\t\tparams: merge(globalParams, parseParams(elements[i].className))\n\t\t\t};\n\n\t\t\tif (item.params['brush'] == null)\n\t\t\t\tcontinue;\n\t\t\t\t\n\t\t\tresult.push(item);\n\t\t}\n\t\t\n\t\treturn result;\n\t},\n\n\t/**\n\t * Shorthand to highlight all elements on the page that are marked as \n\t * SyntaxHighlighter source code.\n\t * \n\t * @param {Object} globalParams\t\tOptional parameters which override element's \n\t * \t\t\t\t\t\t\t\t\tparameters. Only used if element is specified.\n\t * \n\t * @param {Object} element\tOptional element to highlight. If none is\n\t * \t\t\t\t\t\t\tprovided, all elements in the current document \n\t * \t\t\t\t\t\t\tare highlighted.\n\t */ \n\thighlight: function(globalParams, element)\n\t{\n\t\tvar elements = this.findElements(globalParams, element),\n\t\t\tpropertyName = 'innerHTML', \n\t\t\thighlighter = null,\n\t\t\tconf = sh.config\n\t\t\t;\n\n\t\tif (elements.length === 0) \n\t\t\treturn;\n\t\n\t\tfor (var i = 0; i < elements.length; i++) \n\t\t{\n\t\t\tvar element = elements[i],\n\t\t\t\ttarget = element.target,\n\t\t\t\tparams = element.params,\n\t\t\t\tbrushName = params.brush,\n\t\t\t\tcode\n\t\t\t\t;\n\n\t\t\tif (brushName == null)\n\t\t\t\tcontinue;\n\n\t\t\t// Instantiate a brush\n\t\t\tif (params['html-script'] == 'true' || sh.defaults['html-script'] == true) \n\t\t\t{\n\t\t\t\thighlighter = new sh.HtmlScript(brushName);\n\t\t\t\tbrushName = 'htmlscript';\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tvar brush = findBrush(brushName);\n\t\t\t\t\n\t\t\t\tif (brush)\n\t\t\t\t\thighlighter = new brush();\n\t\t\t\telse\n\t\t\t\t\tcontinue;\n\t\t\t}\n\t\t\t\n\t\t\tcode = target[propertyName];\n\t\t\t\n\t\t\t// remove CDATA from <SCRIPT/> tags if it's present\n\t\t\tif (conf.useScriptTags)\n\t\t\t\tcode = stripCData(code);\n\t\t\t\t\n\t\t\t// Inject title if the attribute is present\n\t\t\tif ((target.title || '') != '')\n\t\t\t\tparams.title = target.title;\n\t\t\t\t\n\t\t\tparams['brush'] = brushName;\n\t\t\thighlighter.init(params);\n\t\t\telement = highlighter.getDiv(code);\n\t\t\t\n\t\t\t// carry over ID\n\t\t\tif ((target.id || '') != '')\n\t\t\t\telement.id = target.id;\n\t\t\t\n\t\t\ttarget.parentNode.replaceChild(element, target);\n\t\t}\n\t},\n\n\t/**\n\t * Main entry point for the SyntaxHighlighter.\n\t * @param {Object} params Optional params to apply to all highlighted elements.\n\t */\n\tall: function(params)\n\t{\n\t\tattachEvent(\n\t\t\twindow,\n\t\t\t'load',\n\t\t\tfunction() { sh.highlight(params); }\n\t\t);\n\t}\n}; // end of sh\n\nsh['all']\t\t\t= sh.all;\nsh['highlight']\t\t= sh.highlight;\n\n/**\n * Checks if target DOM elements has specified CSS class.\n * @param {DOMElement} target Target DOM element to check.\n * @param {String} className Name of the CSS class to check for.\n * @return {Boolean} Returns true if class name is present, false otherwise.\n */\nfunction hasClass(target, className)\n{\n\treturn target.className.indexOf(className) != -1;\n};\n\n/**\n * Adds CSS class name to the target DOM element.\n * @param {DOMElement} target Target DOM element.\n * @param {String} className New CSS class to add.\n */\nfunction addClass(target, className)\n{\n\tif (!hasClass(target, className))\n\t\ttarget.className += ' ' + className;\n};\n\n/**\n * Removes CSS class name from the target DOM element.\n * @param {DOMElement} target Target DOM element.\n * @param {String} className CSS class to remove.\n */\nfunction removeClass(target, className)\n{\n\ttarget.className = target.className.replace(className, '');\n};\n\n/**\n * Converts the source to array object. Mostly used for function arguments and \n * lists returned by getElementsByTagName() which aren't Array objects.\n * @param {List} source Source list.\n * @return {Array} Returns array.\n */\nfunction toArray(source)\n{\n\tvar result = [];\n\t\n\tfor (var i = 0; i < source.length; i++) \n\t\tresult.push(source[i]);\n\t\t\n\treturn result;\n};\n\n/**\n * Splits block of text into lines.\n * @param {String} block Block of text.\n * @return {Array} Returns array of lines.\n */\nfunction splitLines(block)\n{\n\treturn block.split('\\n');\n}\n\n/**\n * Generates HTML ID for the highlighter.\n * @param {String} highlighterId Highlighter ID.\n * @return {String} Returns HTML ID.\n */\nfunction getHighlighterId(id)\n{\n\tvar prefix = 'highlighter_';\n\treturn id.indexOf(prefix) == 0 ? id : prefix + id;\n};\n\n/**\n * Finds Highlighter instance by ID.\n * @param {String} highlighterId Highlighter ID.\n * @return {Highlighter} Returns instance of the highlighter.\n */\nfunction getHighlighterById(id)\n{\n\treturn sh.vars.highlighters[getHighlighterId(id)];\n};\n\n/**\n * Finds highlighter's DIV container.\n * @param {String} highlighterId Highlighter ID.\n * @return {Element} Returns highlighter's DIV element.\n */\nfunction getHighlighterDivById(id)\n{\n\treturn document.getElementById(getHighlighterId(id));\n};\n\n/**\n * Stores highlighter so that getHighlighterById() can do its thing. Each\n * highlighter must call this method to preserve itself.\n * @param {Highilghter} highlighter Highlighter instance.\n */\nfunction storeHighlighter(highlighter)\n{\n\tsh.vars.highlighters[getHighlighterId(highlighter.id)] = highlighter;\n};\n\n/**\n * Looks for a child or parent node which has specified classname.\n * Equivalent to jQuery's $(container).find(\".className\")\n * @param {Element} target Target element.\n * @param {String} search Class name or node name to look for.\n * @param {Boolean} reverse If set to true, will go up the node tree instead of down.\n * @return {Element} Returns found child or parent element on null.\n */\nfunction findElement(target, search, reverse /* optional */)\n{\n\tif (target == null)\n\t\treturn null;\n\t\t\n\tvar nodes\t\t\t= reverse != true ? target.childNodes : [ target.parentNode ],\n\t\tpropertyToFind\t= { '#' : 'id', '.' : 'className' }[search.substr(0, 1)] || 'nodeName',\n\t\texpectedValue,\n\t\tfound\n\t\t;\n\n\texpectedValue = propertyToFind != 'nodeName'\n\t\t? search.substr(1)\n\t\t: search.toUpperCase()\n\t\t;\n\t\t\n\t// main return of the found node\n\tif ((target[propertyToFind] || '').indexOf(expectedValue) != -1)\n\t\treturn target;\n\t\n\tfor (var i = 0; nodes && i < nodes.length && found == null; i++)\n\t\tfound = findElement(nodes[i], search, reverse);\n\t\n\treturn found;\n};\n\n/**\n * Looks for a parent node which has specified classname.\n * This is an alias to <code>findElement(container, className, true)</code>.\n * @param {Element} target Target element.\n * @param {String} className Class name to look for.\n * @return {Element} Returns found parent element on null.\n */\nfunction findParentElement(target, className)\n{\n\treturn findElement(target, className, true);\n};\n\n/**\n * Finds an index of element in the array.\n * @ignore\n * @param {Object} searchElement\n * @param {Number} fromIndex\n * @return {Number} Returns index of element if found; -1 otherwise.\n */\nfunction indexOf(array, searchElement, fromIndex)\n{\n\tfromIndex = Math.max(fromIndex || 0, 0);\n\n\tfor (var i = fromIndex; i < array.length; i++)\n\t\tif(array[i] == searchElement)\n\t\t\treturn i;\n\t\n\treturn -1;\n};\n\n/**\n * Generates a unique element ID.\n */\nfunction guid(prefix)\n{\n\treturn (prefix || '') + Math.round(Math.random() * 1000000).toString();\n};\n\n/**\n * Merges two objects. Values from obj2 override values in obj1.\n * Function is NOT recursive and works only for one dimensional objects.\n * @param {Object} obj1 First object.\n * @param {Object} obj2 Second object.\n * @return {Object} Returns combination of both objects.\n */\nfunction merge(obj1, obj2)\n{\n\tvar result = {}, name;\n\n\tfor (name in obj1) \n\t\tresult[name] = obj1[name];\n\t\n\tfor (name in obj2) \n\t\tresult[name] = obj2[name];\n\t\t\n\treturn result;\n};\n\n/**\n * Attempts to convert string to boolean.\n * @param {String} value Input string.\n * @return {Boolean} Returns true if input was \"true\", false if input was \"false\" and value otherwise.\n */\nfunction toBoolean(value)\n{\n\tvar result = { \"true\" : true, \"false\" : false }[value];\n\treturn result == null ? value : result;\n};\n\n/**\n * Opens up a centered popup window.\n * @param {String} url\t\tURL to open in the window.\n * @param {String} name\t\tPopup name.\n * @param {int} width\t\tPopup width.\n * @param {int} height\t\tPopup height.\n * @param {String} options\twindow.open() options.\n * @return {Window}\t\t\tReturns window instance.\n */\nfunction popup(url, name, width, height, options)\n{\n\tvar x = (screen.width - width) / 2,\n\t\ty = (screen.height - height) / 2\n\t\t;\n\t\t\n\toptions +=\t', left=' + x + \n\t\t\t\t', top=' + y +\n\t\t\t\t', width=' + width +\n\t\t\t\t', height=' + height\n\t\t;\n\toptions = options.replace(/^,/, '');\n\n\tvar win = window.open(url, name, options);\n\twin.focus();\n\treturn win;\n};\n\n/**\n * Adds event handler to the target object.\n * @param {Object} obj\t\tTarget object.\n * @param {String} type\t\tName of the event.\n * @param {Function} func\tHandling function.\n */\nfunction attachEvent(obj, type, func, scope)\n{\n\tfunction handler(e)\n\t{\n\t\te = e || window.event;\n\t\t\n\t\tif (!e.target)\n\t\t{\n\t\t\te.target = e.srcElement;\n\t\t\te.preventDefault = function()\n\t\t\t{\n\t\t\t\tthis.returnValue = false;\n\t\t\t};\n\t\t}\n\t\t\t\n\t\tfunc.call(scope || window, e);\n\t};\n\t\n\tif (obj.attachEvent) \n\t{\n\t\tobj.attachEvent('on' + type, handler);\n\t}\n\telse \n\t{\n\t\tobj.addEventListener(type, handler, false);\n\t}\n};\n\n/**\n * Displays an alert.\n * @param {String} str String to display.\n */\nfunction alert(str)\n{\n\twindow.alert(sh.config.strings.alert + str);\n};\n\n/**\n * Finds a brush by its alias.\n *\n * @param {String} alias\t\tBrush alias.\n * @param {Boolean} showAlert\tSuppresses the alert if false.\n * @return {Brush}\t\t\t\tReturns bursh constructor if found, null otherwise.\n */\nfunction findBrush(alias, showAlert)\n{\n\tvar brushes = sh.vars.discoveredBrushes,\n\t\tresult = null\n\t\t;\n\t\n\tif (brushes == null) \n\t{\n\t\tbrushes = {};\n\t\t\n\t\t// Find all brushes\n\t\tfor (var brush in sh.brushes) \n\t\t{\n\t\t\tvar info = sh.brushes[brush],\n\t\t\t\taliases = info.aliases\n\t\t\t\t;\n\t\t\t\n\t\t\tif (aliases == null) \n\t\t\t\tcontinue;\n\t\t\t\n\t\t\t// keep the brush name\n\t\t\tinfo.brushName = brush.toLowerCase();\n\t\t\t\n\t\t\tfor (var i = 0; i < aliases.length; i++) \n\t\t\t\tbrushes[aliases[i]] = brush;\n\t\t}\n\t\t\n\t\tsh.vars.discoveredBrushes = brushes;\n\t}\n\t\n\tresult = sh.brushes[brushes[alias]];\n\n\tif (result == null && showAlert != false)\n\t\talert(sh.config.strings.noBrush + alias);\n\t\n\treturn result;\n};\n\n/**\n * Executes a callback on each line and replaces each line with result from the callback.\n * @param {Object} str\t\t\tInput string.\n * @param {Object} callback\t\tCallback function taking one string argument and returning a string.\n */\nfunction eachLine(str, callback)\n{\n\tvar lines = splitLines(str);\n\t\n\tfor (var i = 0; i < lines.length; i++)\n\t\tlines[i] = callback(lines[i], i);\n\t\t\n\treturn lines.join('\\n');\n};\n\n/**\n * This is a special trim which only removes first and last empty lines\n * and doesn't affect valid leading space on the first line.\n * \n * @param {String} str   Input string\n * @return {String}      Returns string without empty first and last lines.\n */\nfunction trimFirstAndLastLines(str)\n{\n\treturn str.replace(/^[ ]*[\\n]+|[\\n]*[ ]*$/g, '');\n};\n\n/**\n * Parses key/value pairs into hash object.\n * \n * Understands the following formats:\n * - name: word;\n * - name: [word, word];\n * - name: \"string\";\n * - name: 'string';\n * \n * For example:\n *   name1: value; name2: [value, value]; name3: 'value'\n *   \n * @param {String} str    Input string.\n * @return {Object}       Returns deserialized object.\n */\nfunction parseParams(str)\n{\n\tvar match, \n\t\tresult = {},\n\t\tarrayRegex = new XRegExp(\"^\\\\[(?<values>(.*?))\\\\]$\"),\n\t\tregex = new XRegExp(\n\t\t\t\"(?<name>[\\\\w-]+)\" +\n\t\t\t\"\\\\s*:\\\\s*\" +\n\t\t\t\"(?<value>\" +\n\t\t\t\t\"[\\\\w-%#]+|\" +\t\t// word\n\t\t\t\t\"\\\\[.*?\\\\]|\" +\t\t// [] array\n\t\t\t\t'\".*?\"|' +\t\t\t// \"\" string\n\t\t\t\t\"'.*?'\" +\t\t\t// '' string\n\t\t\t\")\\\\s*;?\",\n\t\t\t\"g\"\n\t\t)\n\t\t;\n\n\twhile ((match = regex.exec(str)) != null) \n\t{\n\t\tvar value = match.value\n\t\t\t.replace(/^['\"]|['\"]$/g, '') // strip quotes from end of strings\n\t\t\t;\n\t\t\n\t\t// try to parse array value\n\t\tif (value != null && arrayRegex.test(value))\n\t\t{\n\t\t\tvar m = arrayRegex.exec(value);\n\t\t\tvalue = m.values.length > 0 ? m.values.split(/\\s*,\\s*/) : [];\n\t\t}\n\t\t\n\t\tresult[match.name] = value;\n\t}\n\t\n\treturn result;\n};\n\n/**\n * Wraps each line of the string into <code/> tag with given style applied to it.\n * \n * @param {String} str   Input string.\n * @param {String} css   Style name to apply to the string.\n * @return {String}      Returns input string with each line surrounded by <span/> tag.\n */\nfunction wrapLinesWithCode(str, css)\n{\n\tif (str == null || str.length == 0 || str == '\\n') \n\t\treturn str;\n\n\tstr = str.replace(/</g, '&lt;');\n\n\t// Replace two or more sequential spaces with &nbsp; leaving last space untouched.\n\tstr = str.replace(/ {2,}/g, function(m)\n\t{\n\t\tvar spaces = '';\n\t\t\n\t\tfor (var i = 0; i < m.length - 1; i++)\n\t\t\tspaces += sh.config.space;\n\t\t\n\t\treturn spaces + ' ';\n\t});\n\n\t// Split each line and apply <span class=\"...\">...</span> to them so that\n\t// leading spaces aren't included.\n\tif (css != null) \n\t\tstr = eachLine(str, function(line)\n\t\t{\n\t\t\tif (line.length == 0) \n\t\t\t\treturn '';\n\t\t\t\n\t\t\tvar spaces = '';\n\t\t\t\n\t\t\tline = line.replace(/^(&nbsp;| )+/, function(s)\n\t\t\t{\n\t\t\t\tspaces = s;\n\t\t\t\treturn '';\n\t\t\t});\n\t\t\t\n\t\t\tif (line.length == 0) \n\t\t\t\treturn spaces;\n\t\t\t\n\t\t\treturn spaces + '<code class=\"' + css + '\">' + line + '</code>';\n\t\t});\n\n\treturn str;\n};\n\n/**\n * Pads number with zeros until it's length is the same as given length.\n * \n * @param {Number} number\tNumber to pad.\n * @param {Number} length\tMax string length with.\n * @return {String}\t\t\tReturns a string padded with proper amount of '0'.\n */\nfunction padNumber(number, length)\n{\n\tvar result = number.toString();\n\t\n\twhile (result.length < length)\n\t\tresult = '0' + result;\n\t\n\treturn result;\n};\n\n/**\n * Replaces tabs with spaces.\n * \n * @param {String} code\t\tSource code.\n * @param {Number} tabSize\tSize of the tab.\n * @return {String}\t\t\tReturns code with all tabs replaces by spaces.\n */\nfunction processTabs(code, tabSize)\n{\n\tvar tab = '';\n\t\n\tfor (var i = 0; i < tabSize; i++)\n\t\ttab += ' ';\n\n\treturn code.replace(/\\t/g, tab);\n};\n\n/**\n * Replaces tabs with smart spaces.\n * \n * @param {String} code    Code to fix the tabs in.\n * @param {Number} tabSize Number of spaces in a column.\n * @return {String}        Returns code with all tabs replaces with roper amount of spaces.\n */\nfunction processSmartTabs(code, tabSize)\n{\n\tvar lines = splitLines(code),\n\t\ttab = '\\t',\n\t\tspaces = ''\n\t\t;\n\t\n\t// Create a string with 1000 spaces to copy spaces from... \n\t// It's assumed that there would be no indentation longer than that.\n\tfor (var i = 0; i < 50; i++) \n\t\tspaces += '                    '; // 20 spaces * 50\n\t\t\t\n\t// This function inserts specified amount of spaces in the string\n\t// where a tab is while removing that given tab.\n\tfunction insertSpaces(line, pos, count)\n\t{\n\t\treturn line.substr(0, pos)\n\t\t\t+ spaces.substr(0, count)\n\t\t\t+ line.substr(pos + 1, line.length) // pos + 1 will get rid of the tab\n\t\t\t;\n\t};\n\n\t// Go through all the lines and do the 'smart tabs' magic.\n\tcode = eachLine(code, function(line)\n\t{\n\t\tif (line.indexOf(tab) == -1) \n\t\t\treturn line;\n\t\t\n\t\tvar pos = 0;\n\t\t\n\t\twhile ((pos = line.indexOf(tab)) != -1) \n\t\t{\n\t\t\t// This is pretty much all there is to the 'smart tabs' logic.\n\t\t\t// Based on the position within the line and size of a tab,\n\t\t\t// calculate the amount of spaces we need to insert.\n\t\t\tvar spaces = tabSize - pos % tabSize;\n\t\t\tline = insertSpaces(line, pos, spaces);\n\t\t}\n\t\t\n\t\treturn line;\n\t});\n\t\n\treturn code;\n};\n\n/**\n * Performs various string fixes based on configuration.\n */\nfunction fixInputString(str)\n{\n\tvar br = /<br\\s*\\/?>|&lt;br\\s*\\/?&gt;/gi;\n\t\n\tif (sh.config.bloggerMode == true)\n\t\tstr = str.replace(br, '\\n');\n\n\tif (sh.config.stripBrs == true)\n\t\tstr = str.replace(br, '');\n\t\t\n\treturn str;\n};\n\n/**\n * Removes all white space at the begining and end of a string.\n * \n * @param {String} str   String to trim.\n * @return {String}      Returns string without leading and following white space characters.\n */\nfunction trim(str)\n{\n\treturn str.replace(/^\\s+|\\s+$/g, '');\n};\n\n/**\n * Unindents a block of text by the lowest common indent amount.\n * @param {String} str   Text to unindent.\n * @return {String}      Returns unindented text block.\n */\nfunction unindent(str)\n{\n\tvar lines = splitLines(fixInputString(str)),\n\t\tindents = new Array(),\n\t\tregex = /^\\s*/,\n\t\tmin = 1000\n\t\t;\n\t\n\t// go through every line and check for common number of indents\n\tfor (var i = 0; i < lines.length && min > 0; i++) \n\t{\n\t\tvar line = lines[i];\n\t\t\n\t\tif (trim(line).length == 0) \n\t\t\tcontinue;\n\t\t\n\t\tvar matches = regex.exec(line);\n\t\t\n\t\t// In the event that just one line doesn't have leading white space\n\t\t// we can't unindent anything, so bail completely.\n\t\tif (matches == null) \n\t\t\treturn str;\n\t\t\t\n\t\tmin = Math.min(matches[0].length, min);\n\t}\n\t\n\t// trim minimum common number of white space from the begining of every line\n\tif (min > 0) \n\t\tfor (var i = 0; i < lines.length; i++) \n\t\t\tlines[i] = lines[i].substr(min);\n\t\n\treturn lines.join('\\n');\n};\n\n/**\n * Callback method for Array.sort() which sorts matches by\n * index position and then by length.\n * \n * @param {Match} m1\tLeft object.\n * @param {Match} m2    Right object.\n * @return {Number}     Returns -1, 0 or -1 as a comparison result.\n */\nfunction matchesSortCallback(m1, m2)\n{\n\t// sort matches by index first\n\tif(m1.index < m2.index)\n\t\treturn -1;\n\telse if(m1.index > m2.index)\n\t\treturn 1;\n\telse\n\t{\n\t\t// if index is the same, sort by length\n\t\tif(m1.length < m2.length)\n\t\t\treturn -1;\n\t\telse if(m1.length > m2.length)\n\t\t\treturn 1;\n\t}\n\t\n\treturn 0;\n};\n\n/**\n * Executes given regular expression on provided code and returns all\n * matches that are found.\n * \n * @param {String} code    Code to execute regular expression on.\n * @param {Object} regex   Regular expression item info from <code>regexList</code> collection.\n * @return {Array}         Returns a list of Match objects.\n */ \nfunction getMatches(code, regexInfo)\n{\n\tfunction defaultAdd(match, regexInfo)\n\t{\n\t\treturn match[0];\n\t};\n\t\n\tvar index = 0,\n\t\tmatch = null,\n\t\tmatches = [],\n\t\tfunc = regexInfo.func ? regexInfo.func : defaultAdd\n\t\t;\n\t\n\twhile((match = regexInfo.regex.exec(code)) != null)\n\t{\n\t\tvar resultMatch = func(match, regexInfo);\n\t\t\n\t\tif (typeof(resultMatch) == 'string')\n\t\t\tresultMatch = [new sh.Match(resultMatch, match.index, regexInfo.css)];\n\n\t\tmatches = matches.concat(resultMatch);\n\t}\n\t\n\treturn matches;\n};\n\n/**\n * Turns all URLs in the code into <a/> tags.\n * @param {String} code Input code.\n * @return {String} Returns code with </a> tags.\n */\nfunction processUrls(code)\n{\n\tvar gt = /(.*)((&gt;|&lt;).*)/;\n\t\n\treturn code.replace(sh.regexLib.url, function(m)\n\t{\n\t\tvar suffix = '',\n\t\t\tmatch = null\n\t\t\t;\n\t\t\n\t\t// We include &lt; and &gt; in the URL for the common cases like <http://google.com>\n\t\t// The problem is that they get transformed into &lt;http://google.com&gt;\n\t\t// Where as &gt; easily looks like part of the URL string.\n\t\n\t\tif (match = gt.exec(m))\n\t\t{\n\t\t\tm = match[1];\n\t\t\tsuffix = match[2];\n\t\t}\n\t\t\n\t\treturn '<a href=\"' + m + '\">' + m + '</a>' + suffix;\n\t});\n};\n\n/**\n * Finds all <SCRIPT TYPE=\"syntaxhighlighter\" /> elementss.\n * @return {Array} Returns array of all found SyntaxHighlighter tags.\n */\nfunction getSyntaxHighlighterScriptTags()\n{\n\tvar tags = document.getElementsByTagName('script'),\n\t\tresult = []\n\t\t;\n\t\n\tfor (var i = 0; i < tags.length; i++)\n\t\tif (tags[i].type == 'syntaxhighlighter')\n\t\t\tresult.push(tags[i]);\n\t\t\t\n\treturn result;\n};\n\n/**\n * Strips <![CDATA[]]> from <SCRIPT /> content because it should be used\n * there in most cases for XHTML compliance.\n * @param {String} original\tInput code.\n * @return {String} Returns code without leading <![CDATA[]]> tags.\n */\nfunction stripCData(original)\n{\n\tvar left = '<![CDATA[',\n\t\tright = ']]>',\n\t\t// for some reason IE inserts some leading blanks here\n\t\tcopy = trim(original),\n\t\tchanged = false,\n\t\tleftLength = left.length,\n\t\trightLength = right.length\n\t\t;\n\t\n\tif (copy.indexOf(left) == 0)\n\t{\n\t\tcopy = copy.substring(leftLength);\n\t\tchanged = true;\n\t}\n\t\n\tvar copyLength = copy.length;\n\t\n\tif (copy.indexOf(right) == copyLength - rightLength)\n\t{\n\t\tcopy = copy.substring(0, copyLength - rightLength);\n\t\tchanged = true;\n\t}\n\t\n\treturn changed ? copy : original;\n};\n\n\n/**\n * Quick code mouse double click handler.\n */\nfunction quickCodeHandler(e)\n{\n\tvar target = e.target,\n\t\thighlighterDiv = findParentElement(target, '.syntaxhighlighter'),\n\t\tcontainer = findParentElement(target, '.container'),\n\t\ttextarea = document.createElement('textarea'),\n\t\thighlighter\n\t\t;\n\n\tif (!container || !highlighterDiv || findElement(container, 'textarea'))\n\t\treturn;\n\n\thighlighter = getHighlighterById(highlighterDiv.id);\n\t\n\t// add source class name\n\taddClass(highlighterDiv, 'source');\n\n\t// Have to go over each line and grab it's text, can't just do it on the\n\t// container because Firefox loses all \\n where as Webkit doesn't.\n\tvar lines = container.childNodes,\n\t\tcode = []\n\t\t;\n\t\n\tfor (var i = 0; i < lines.length; i++)\n\t\tcode.push(lines[i].innerText || lines[i].textContent);\n\t\n\t// using \\r instead of \\r or \\r\\n makes this work equally well on IE, FF and Webkit\n\tcode = code.join('\\r');\n\t\n\t// inject <textarea/> tag\n\ttextarea.appendChild(document.createTextNode(code));\n\tcontainer.appendChild(textarea);\n\t\n\t// preselect all text\n\ttextarea.focus();\n\ttextarea.select();\n\t\n\t// set up handler for lost focus\n\tattachEvent(textarea, 'blur', function(e)\n\t{\n\t\ttextarea.parentNode.removeChild(textarea);\n\t\tremoveClass(highlighterDiv, 'source');\n\t});\n};\n\n/**\n * Match object.\n */\nsh.Match = function(value, index, css)\n{\n\tthis.value = value;\n\tthis.index = index;\n\tthis.length = value.length;\n\tthis.css = css;\n\tthis.brushName = null;\n};\n\nsh.Match.prototype.toString = function()\n{\n\treturn this.value;\n};\n\n/**\n * Simulates HTML code with a scripting language embedded.\n * \n * @param {String} scriptBrushName Brush name of the scripting language.\n */\nsh.HtmlScript = function(scriptBrushName)\n{\n\tvar brushClass = findBrush(scriptBrushName),\n\t\tscriptBrush,\n\t\txmlBrush = new sh.brushes.Xml(),\n\t\tbracketsRegex = null,\n\t\tref = this,\n\t\tmethodsToExpose = 'getDiv getHtml init'.split(' ')\n\t\t;\n\n\tif (brushClass == null)\n\t\treturn;\n\t\n\tscriptBrush = new brushClass();\n\t\n\tfor(var i = 0; i < methodsToExpose.length; i++)\n\t\t// make a closure so we don't lose the name after i changes\n\t\t(function() {\n\t\t\tvar name = methodsToExpose[i];\n\t\t\t\n\t\t\tref[name] = function()\n\t\t\t{\n\t\t\t\treturn xmlBrush[name].apply(xmlBrush, arguments);\n\t\t\t};\n\t\t})();\n\t\n\tif (scriptBrush.htmlScript == null)\n\t{\n\t\talert(sh.config.strings.brushNotHtmlScript + scriptBrushName);\n\t\treturn;\n\t}\n\t\n\txmlBrush.regexList.push(\n\t\t{ regex: scriptBrush.htmlScript.code, func: process }\n\t);\n\t\n\tfunction offsetMatches(matches, offset)\n\t{\n\t\tfor (var j = 0; j < matches.length; j++) \n\t\t\tmatches[j].index += offset;\n\t}\n\t\n\tfunction process(match, info)\n\t{\n\t\tvar code = match.code,\n\t\t\tmatches = [],\n\t\t\tregexList = scriptBrush.regexList,\n\t\t\toffset = match.index + match.left.length,\n\t\t\thtmlScript = scriptBrush.htmlScript,\n\t\t\tresult\n\t\t\t;\n\n\t\t// add all matches from the code\n\t\tfor (var i = 0; i < regexList.length; i++)\n\t\t{\n\t\t\tresult = getMatches(code, regexList[i]);\n\t\t\toffsetMatches(result, offset);\n\t\t\tmatches = matches.concat(result);\n\t\t}\n\t\t\n\t\t// add left script bracket\n\t\tif (htmlScript.left != null && match.left != null)\n\t\t{\n\t\t\tresult = getMatches(match.left, htmlScript.left);\n\t\t\toffsetMatches(result, match.index);\n\t\t\tmatches = matches.concat(result);\n\t\t}\n\t\t\n\t\t// add right script bracket\n\t\tif (htmlScript.right != null && match.right != null)\n\t\t{\n\t\t\tresult = getMatches(match.right, htmlScript.right);\n\t\t\toffsetMatches(result, match.index + match[0].lastIndexOf(match.right));\n\t\t\tmatches = matches.concat(result);\n\t\t}\n\t\t\n\t\tfor (var j = 0; j < matches.length; j++)\n\t\t\tmatches[j].brushName = brushClass.brushName;\n\t\t\t\n\t\treturn matches;\n\t}\n};\n\n/**\n * Main Highlither class.\n * @constructor\n */\nsh.Highlighter = function()\n{\n\t// not putting any code in here because of the prototype inheritance\n};\n\nsh.Highlighter.prototype = {\n\t/**\n\t * Returns value of the parameter passed to the highlighter.\n\t * @param {String} name\t\t\t\tName of the parameter.\n\t * @param {Object} defaultValue\t\tDefault value.\n\t * @return {Object}\t\t\t\t\tReturns found value or default value otherwise.\n\t */\n\tgetParam: function(name, defaultValue)\n\t{\n\t\tvar result = this.params[name];\n\t\treturn toBoolean(result == null ? defaultValue : result);\n\t},\n\t\n\t/**\n\t * Shortcut to document.createElement().\n\t * @param {String} name\t\tName of the element to create (DIV, A, etc).\n\t * @return {HTMLElement}\tReturns new HTML element.\n\t */\n\tcreate: function(name)\n\t{\n\t\treturn document.createElement(name);\n\t},\n\t\n\t/**\n\t * Applies all regular expression to the code and stores all found\n\t * matches in the `this.matches` array.\n\t * @param {Array} regexList\t\tList of regular expressions.\n\t * @param {String} code\t\t\tSource code.\n\t * @return {Array}\t\t\t\tReturns list of matches.\n\t */\n\tfindMatches: function(regexList, code)\n\t{\n\t\tvar result = [];\n\t\t\n\t\tif (regexList != null)\n\t\t\tfor (var i = 0; i < regexList.length; i++) \n\t\t\t\t// BUG: length returns len+1 for array if methods added to prototype chain (oising@gmail.com)\n\t\t\t\tif (typeof (regexList[i]) == \"object\")\n\t\t\t\t\tresult = result.concat(getMatches(code, regexList[i]));\n\t\t\n\t\t// sort and remove nested the matches\n\t\treturn this.removeNestedMatches(result.sort(matchesSortCallback));\n\t},\n\t\n\t/**\n\t * Checks to see if any of the matches are inside of other matches. \n\t * This process would get rid of highligted strings inside comments, \n\t * keywords inside strings and so on.\n\t */\n\tremoveNestedMatches: function(matches)\n\t{\n\t\t// Optimized by Jose Prado (http://joseprado.com)\n\t\tfor (var i = 0; i < matches.length; i++) \n\t\t{ \n\t\t\tif (matches[i] === null)\n\t\t\t\tcontinue;\n\t\t\t\n\t\t\tvar itemI = matches[i],\n\t\t\t\titemIEndPos = itemI.index + itemI.length\n\t\t\t\t;\n\t\t\t\n\t\t\tfor (var j = i + 1; j < matches.length && matches[i] !== null; j++) \n\t\t\t{\n\t\t\t\tvar itemJ = matches[j];\n\t\t\t\t\n\t\t\t\tif (itemJ === null) \n\t\t\t\t\tcontinue;\n\t\t\t\telse if (itemJ.index > itemIEndPos) \n\t\t\t\t\tbreak;\n\t\t\t\telse if (itemJ.index == itemI.index && itemJ.length > itemI.length)\n\t\t\t\t\tmatches[i] = null;\n\t\t\t\telse if (itemJ.index >= itemI.index && itemJ.index < itemIEndPos) \n\t\t\t\t\tmatches[j] = null;\n\t\t\t}\n\t\t}\n\t\t\n\t\treturn matches;\n\t},\n\t\n\t/**\n\t * Creates an array containing integer line numbers starting from the 'first-line' param.\n\t * @return {Array} Returns array of integers.\n\t */\n\tfigureOutLineNumbers: function(code)\n\t{\n\t\tvar lines = [],\n\t\t\tfirstLine = parseInt(this.getParam('first-line'))\n\t\t\t;\n\t\t\n\t\teachLine(code, function(line, index)\n\t\t{\n\t\t\tlines.push(index + firstLine);\n\t\t});\n\t\t\n\t\treturn lines;\n\t},\n\t\n\t/**\n\t * Determines if specified line number is in the highlighted list.\n\t */\n\tisLineHighlighted: function(lineNumber)\n\t{\n\t\tvar list = this.getParam('highlight', []);\n\t\t\n\t\tif (typeof(list) != 'object' && list.push == null) \n\t\t\tlist = [ list ];\n\t\t\n\t\treturn indexOf(list, lineNumber.toString()) != -1;\n\t},\n\t\n\t/**\n\t * Generates HTML markup for a single line of code while determining alternating line style.\n\t * @param {Integer} lineNumber\tLine number.\n\t * @param {String} code Line\tHTML markup.\n\t * @return {String}\t\t\t\tReturns HTML markup.\n\t */\n\tgetLineHtml: function(lineIndex, lineNumber, code)\n\t{\n\t\tvar classes = [\n\t\t\t'line',\n\t\t\t'number' + lineNumber,\n\t\t\t'index' + lineIndex,\n\t\t\t'alt' + (lineNumber % 2 == 0 ? 1 : 2).toString()\n\t\t];\n\t\t\n\t\tif (this.isLineHighlighted(lineNumber))\n\t\t \tclasses.push('highlighted');\n\t\t\n\t\tif (lineNumber == 0)\n\t\t\tclasses.push('break');\n\t\t\t\n\t\treturn '<div class=\"' + classes.join(' ') + '\">' + code + '</div>';\n\t},\n\t\n\t/**\n\t * Generates HTML markup for line number column.\n\t * @param {String} code\t\t\tComplete code HTML markup.\n\t * @param {Array} lineNumbers\tCalculated line numbers.\n\t * @return {String}\t\t\t\tReturns HTML markup.\n\t */\n\tgetLineNumbersHtml: function(code, lineNumbers)\n\t{\n\t\tvar html = '',\n\t\t\tcount = splitLines(code).length,\n\t\t\tfirstLine = parseInt(this.getParam('first-line')),\n\t\t\tpad = this.getParam('pad-line-numbers')\n\t\t\t;\n\t\t\n\t\tif (pad == true)\n\t\t\tpad = (firstLine + count - 1).toString().length;\n\t\telse if (isNaN(pad) == true)\n\t\t\tpad = 0;\n\t\t\t\n\t\tfor (var i = 0; i < count; i++)\n\t\t{\n\t\t\tvar lineNumber = lineNumbers ? lineNumbers[i] : firstLine + i,\n\t\t\t\tcode = lineNumber == 0 ? sh.config.space : padNumber(lineNumber, pad)\n\t\t\t\t;\n\t\t\t\t\n\t\t\thtml += this.getLineHtml(i, lineNumber, code);\n\t\t}\n\t\t\n\t\treturn html;\n\t},\n\t\n\t/**\n\t * Splits block of text into individual DIV lines.\n\t * @param {String} code\t\t\tCode to highlight.\n\t * @param {Array} lineNumbers\tCalculated line numbers.\n\t * @return {String}\t\t\t\tReturns highlighted code in HTML form.\n\t */\n\tgetCodeLinesHtml: function(html, lineNumbers)\n\t{\n\t\thtml = trim(html);\n\t\t\n\t\tvar lines = splitLines(html),\n\t\t\tpadLength = this.getParam('pad-line-numbers'),\n\t\t\tfirstLine = parseInt(this.getParam('first-line')),\n\t\t\thtml = '',\n\t\t\tbrushName = this.getParam('brush')\n\t\t\t;\n\n\t\tfor (var i = 0; i < lines.length; i++)\n\t\t{\n\t\t\tvar line = lines[i],\n\t\t\t\tindent = /^(&nbsp;|\\s)+/.exec(line),\n\t\t\t\tspaces = null,\n\t\t\t\tlineNumber = lineNumbers ? lineNumbers[i] : firstLine + i;\n\t\t\t\t;\n\n\t\t\tif (indent != null)\n\t\t\t{\n\t\t\t\tspaces = indent[0].toString();\n\t\t\t\tline = line.substr(spaces.length);\n\t\t\t\tspaces = spaces.replace(' ', sh.config.space);\n\t\t\t}\n\n\t\t\tline = trim(line);\n\t\t\t\n\t\t\tif (line.length == 0)\n\t\t\t\tline = sh.config.space;\n\t\t\t\n\t\t\thtml += this.getLineHtml(\n\t\t\t\ti,\n\t\t\t\tlineNumber, \n\t\t\t\t(spaces != null ? '<code class=\"' + brushName + ' spaces\">' + spaces + '</code>' : '') + line\n\t\t\t);\n\t\t}\n\t\t\n\t\treturn html;\n\t},\n\t\n\t/**\n\t * Returns HTML for the table title or empty string if title is null.\n\t */\n\tgetTitleHtml: function(title)\n\t{\n\t\treturn title ? '<caption>' + title + '</caption>' : '';\n\t},\n\t\n\t/**\n\t * Finds all matches in the source code.\n\t * @param {String} code\t\tSource code to process matches in.\n\t * @param {Array} matches\tDiscovered regex matches.\n\t * @return {String} Returns formatted HTML with processed mathes.\n\t */\n\tgetMatchesHtml: function(code, matches)\n\t{\n\t\tvar pos = 0, \n\t\t\tresult = '',\n\t\t\tbrushName = this.getParam('brush', '')\n\t\t\t;\n\t\t\n\t\tfunction getBrushNameCss(match)\n\t\t{\n\t\t\tvar result = match ? (match.brushName || brushName) : brushName;\n\t\t\treturn result ? result + ' ' : '';\n\t\t};\n\t\t\n\t\t// Finally, go through the final list of matches and pull the all\n\t\t// together adding everything in between that isn't a match.\n\t\tfor (var i = 0; i < matches.length; i++) \n\t\t{\n\t\t\tvar match = matches[i],\n\t\t\t\tmatchBrushName\n\t\t\t\t;\n\t\t\t\n\t\t\tif (match === null || match.length === 0) \n\t\t\t\tcontinue;\n\t\t\t\n\t\t\tmatchBrushName = getBrushNameCss(match);\n\t\t\t\n\t\t\tresult += wrapLinesWithCode(code.substr(pos, match.index - pos), matchBrushName + 'plain')\n\t\t\t\t\t+ wrapLinesWithCode(match.value, matchBrushName + match.css)\n\t\t\t\t\t;\n\n\t\t\tpos = match.index + match.length + (match.offset || 0);\n\t\t}\n\n\t\t// don't forget to add whatever's remaining in the string\n\t\tresult += wrapLinesWithCode(code.substr(pos), getBrushNameCss() + 'plain');\n\n\t\treturn result;\n\t},\n\t\n\t/**\n\t * Generates HTML markup for the whole syntax highlighter.\n\t * @param {String} code Source code.\n\t * @return {String} Returns HTML markup.\n\t */\n\tgetHtml: function(code)\n\t{\n\t\tvar html = '',\n\t\t\tclasses = [ 'syntaxhighlighter' ],\n\t\t\ttabSize,\n\t\t\tmatches,\n\t\t\tlineNumbers\n\t\t\t;\n\t\t\n\t\t// process light mode\n\t\tif (this.getParam('light') == true)\n\t\t\tthis.params.toolbar = this.params.gutter = false;\n\n\t\tclassName = 'syntaxhighlighter';\n\n\t\tif (this.getParam('collapse') == true)\n\t\t\tclasses.push('collapsed');\n\t\t\n\t\tif ((gutter = this.getParam('gutter')) == false)\n\t\t\tclasses.push('nogutter');\n\n\t\t// add custom user style name\n\t\tclasses.push(this.getParam('class-name'));\n\n\t\t// add brush alias to the class name for custom CSS\n\t\tclasses.push(this.getParam('brush'));\n\n\t\tcode = trimFirstAndLastLines(code)\n\t\t\t.replace(/\\r/g, ' ') // IE lets these buggers through\n\t\t\t;\n\n\t\ttabSize = this.getParam('tab-size');\n\n\t\t// replace tabs with spaces\n\t\tcode = this.getParam('smart-tabs') == true\n\t\t\t? processSmartTabs(code, tabSize)\n\t\t\t: processTabs(code, tabSize)\n\t\t\t;\n\n\t\t// unindent code by the common indentation\n\t\tcode = unindent(code);\n\n\t\tif (gutter)\n\t\t\tlineNumbers = this.figureOutLineNumbers(code);\n\t\t\n\t\t// find matches in the code using brushes regex list\n\t\tmatches = this.findMatches(this.regexList, code);\n\t\t// processes found matches into the html\n\t\thtml = this.getMatchesHtml(code, matches);\n\t\t// finally, split all lines so that they wrap well\n\t\thtml = this.getCodeLinesHtml(html, lineNumbers);\n\n\t\t// finally, process the links\n\t\tif (this.getParam('auto-links'))\n\t\t\thtml = processUrls(html);\n\t\t\n\t\tif (typeof(navigator) != 'undefined' && navigator.userAgent && navigator.userAgent.match(/MSIE/))\n\t\t\tclasses.push('ie');\n\t\t\n\t\thtml = \n\t\t\t'<div id=\"' + getHighlighterId(this.id) + '\" class=\"' + classes.join(' ') + '\">'\n\t\t\t\t+ (this.getParam('toolbar') ? sh.toolbar.getHtml(this) : '')\n\t\t\t\t+ '<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\">'\n\t\t\t\t\t+ this.getTitleHtml(this.getParam('title'))\n\t\t\t\t\t+ '<tbody>'\n\t\t\t\t\t\t+ '<tr>'\n\t\t\t\t\t\t\t+ (gutter ? '<td class=\"gutter\">' + this.getLineNumbersHtml(code) + '</td>' : '')\n\t\t\t\t\t\t\t+ '<td class=\"code\">'\n\t\t\t\t\t\t\t\t+ '<div class=\"container\">'\n\t\t\t\t\t\t\t\t\t+ html\n\t\t\t\t\t\t\t\t+ '</div>'\n\t\t\t\t\t\t\t+ '</td>'\n\t\t\t\t\t\t+ '</tr>'\n\t\t\t\t\t+ '</tbody>'\n\t\t\t\t+ '</table>'\n\t\t\t+ '</div>'\n\t\t\t;\n\t\t\t\n\t\treturn html;\n\t},\n\t\n\t/**\n\t * Highlights the code and returns complete HTML.\n\t * @param {String} code     Code to highlight.\n\t * @return {Element}        Returns container DIV element with all markup.\n\t */\n\tgetDiv: function(code)\n\t{\n\t\tif (code === null) \n\t\t\tcode = '';\n\t\t\n\t\tthis.code = code;\n\n\t\tvar div = this.create('div');\n\n\t\t// create main HTML\n\t\tdiv.innerHTML = this.getHtml(code);\n\t\t\n\t\t// set up click handlers\n\t\tif (this.getParam('toolbar'))\n\t\t\tattachEvent(findElement(div, '.toolbar'), 'click', sh.toolbar.handler);\n\t\t\n\t\tif (this.getParam('quick-code'))\n\t\t\tattachEvent(findElement(div, '.code'), 'dblclick', quickCodeHandler);\n\t\t\n\t\treturn div;\n\t},\n\t\n\t/**\n\t * Initializes the highlighter/brush.\n\t *\n\t * Constructor isn't used for initialization so that nothing executes during necessary\n\t * `new SyntaxHighlighter.Highlighter()` call when setting up brush inheritence.\n\t *\n\t * @param {Hash} params Highlighter parameters.\n\t */\n\tinit: function(params)\n\t{\n\t\tthis.id = guid();\n\t\t\n\t\t// register this instance in the highlighters list\n\t\tstoreHighlighter(this);\n\t\t\n\t\t// local params take precedence over defaults\n\t\tthis.params = merge(sh.defaults, params || {})\n\t\t\n\t\t// process light mode\n\t\tif (this.getParam('light') == true)\n\t\t\tthis.params.toolbar = this.params.gutter = false;\n\t},\n\t\n\t/**\n\t * Converts space separated list of keywords into a regular expression string.\n\t * @param {String} str    Space separated keywords.\n\t * @return {String}       Returns regular expression string.\n\t */\n\tgetKeywords: function(str)\n\t{\n\t\tstr = str\n\t\t\t.replace(/^\\s+|\\s+$/g, '')\n\t\t\t.replace(/\\s+/g, '|')\n\t\t\t;\n\t\t\n\t\treturn '\\\\b(?:' + str + ')\\\\b';\n\t},\n\t\n\t/**\n\t * Makes a brush compatible with the `html-script` functionality.\n\t * @param {Object} regexGroup Object containing `left` and `right` regular expressions.\n\t */\n\tforHtmlScript: function(regexGroup)\n\t{\n\t\tthis.htmlScript = {\n\t\t\tleft : { regex: regexGroup.left, css: 'script' },\n\t\t\tright : { regex: regexGroup.right, css: 'script' },\n\t\t\tcode : new XRegExp(\n\t\t\t\t\"(?<left>\" + regexGroup.left.source + \")\" +\n\t\t\t\t\"(?<code>.*?)\" +\n\t\t\t\t\"(?<right>\" + regexGroup.right.source + \")\",\n\t\t\t\t\"sgi\"\n\t\t\t\t)\n\t\t};\n\t}\n}; // end of Highlighter\n\nreturn sh;\n}(); // end of anonymous function\n\n// CommonJS\ntypeof(exports) != 'undefined' ? exports['SyntaxHighlighter'] = SyntaxHighlighter : null;\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/src/shLegacy.js",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\nvar dp = {\n\tSyntaxHighlighter : {}\n};\n\ndp.SyntaxHighlighter = {\n\tparseParams: function(\n\t\t\t\t\t\tinput,\n\t\t\t\t\t\tshowGutter, \n\t\t\t\t\t\tshowControls, \n\t\t\t\t\t\tcollapseAll, \n\t\t\t\t\t\tfirstLine, \n\t\t\t\t\t\tshowColumns\n\t\t\t\t\t\t)\n\t{\n\t\tfunction getValue(list, name)\n\t\t{\n\t\t\tvar regex = new XRegExp('^' + name + '\\\\[(?<value>\\\\w+)\\\\]$', 'gi'),\n\t\t\t\tmatch = null\n\t\t\t\t;\n\t\t\t\n\t\t\tfor (var i = 0; i < list.length; i++) \n\t\t\t\tif ((match = regex.exec(list[i])) != null)\n\t\t\t\t\treturn match.value;\n\t\t\t\n\t\t\treturn null;\n\t\t};\n\t\t\n\t\tfunction defaultValue(value, def)\n\t\t{\n\t\t\treturn value != null ? value : def;\n\t\t};\n\t\t\n\t\tfunction asString(value)\n\t\t{\n\t\t\treturn value != null ? value.toString() : null;\n\t\t};\n\n\t\tvar parts = input.split(':'),\n\t\t\tbrushName = parts[0],\n\t\t\toptions = {},\n\t\t\tstraight = { 'true' : true }\n\t\t\treverse = { 'true' : false },\n\t\t\tresult = null,\n\t\t\tdefaults = SyntaxHighlighter.defaults\n\t\t\t;\n\t\t\n\t\tfor (var i in parts)\n\t\t\toptions[parts[i]] = 'true';\n\n\t\tshowGutter = asString(defaultValue(showGutter, defaults.gutter));\n\t\tshowControls = asString(defaultValue(showControls, defaults.toolbar));\n\t\tcollapseAll = asString(defaultValue(collapseAll, defaults.collapse)); \n\t\tshowColumns = asString(defaultValue(showColumns, defaults.ruler));\n\t\tfirstLine = asString(defaultValue(firstLine, defaults['first-line'])); \n\n\t\treturn {\n\t\t\tbrush\t\t\t: brushName,\n\t\t\tgutter\t\t\t: defaultValue(reverse[options.nogutter], showGutter),\n\t\t\ttoolbar\t\t\t: defaultValue(reverse[options.nocontrols], showControls),\n\t\t\tcollapse\t\t: defaultValue(straight[options.collapse], collapseAll),\n\t\t\t// ruler\t\t\t: defaultValue(straight[options.showcolumns], showColumns),\n\t\t\t'first-line'\t: defaultValue(getValue(parts, 'firstline'), firstLine)\n\t\t};\n\t},\n\t\n\tHighlightAll: function(\n\t\t\t\t\t\tname, \n\t\t\t\t\t\tshowGutter /* optional */, \n\t\t\t\t\t\tshowControls /* optional */, \n\t\t\t\t\t\tcollapseAll /* optional */, \n\t\t\t\t\t\tfirstLine /* optional */, \n\t\t\t\t\t\tshowColumns /* optional */\n\t\t\t\t\t\t)\n\t{\n\t\tfunction findValue()\n\t\t{\n\t\t\tvar a = arguments;\n\t\t\t\n\t\t\tfor (var i = 0; i < a.length; i++) \n\t\t\t{\n\t\t\t\tif (a[i] === null) \n\t\t\t\t\tcontinue;\n\t\t\t\t\n\t\t\t\tif (typeof(a[i]) == 'string' && a[i] != '') \n\t\t\t\t\treturn a[i] + '';\n\t\t\t\t\n\t\t\t\tif (typeof(a[i]) == 'object' && a[i].value != '') \n\t\t\t\t\treturn a[i].value + '';\n\t\t\t}\n\t\t\t\n\t\t\treturn null;\n\t\t};\n\n\t\tfunction findTagsByName(list, name, tagName)\n\t\t{\n\t\t\tvar tags = document.getElementsByTagName(tagName);\n\t\t\t\n\t\t\tfor (var i = 0; i < tags.length; i++) \n\t\t\t\tif (tags[i].getAttribute('name') == name) \n\t\t\t\t\tlist.push(tags[i]);\n\t\t}\n\t\t\n\t\tvar elements = [],\n\t\t\thighlighter = null,\n\t\t\tregistered = {},\n\t\t\tpropertyName = 'innerHTML'\n\t\t\t;\n\t\t\n\t\t// for some reason IE doesn't find <pre/> by name, however it does see them just fine by tag name... \n\t\tfindTagsByName(elements, name, 'pre');\n\t\tfindTagsByName(elements, name, 'textarea');\n\n\t\tif (elements.length === 0)\n\t\t\treturn;\n\t\t\n\t\tfor (var i = 0; i < elements.length; i++)\n\t\t{\n\t\t\tvar element = elements[i],\n\t\t\t\tparams = findValue(\n\t\t\t\t\telement.attributes['class'], element.className, \n\t\t\t\t\telement.attributes['language'], element.language\n\t\t\t\t\t),\n\t\t\t\tlanguage = ''\n\t\t\t\t;\n\t\t\t\n\t\t\tif (params === null) \n\t\t\t\tcontinue;\n\n\t\t\tparams = dp.SyntaxHighlighter.parseParams(\n\t\t\t\tparams,\n\t\t\t\tshowGutter, \n\t\t\t\tshowControls, \n\t\t\t\tcollapseAll, \n\t\t\t\tfirstLine, \n\t\t\t\tshowColumns\n\t\t\t\t);\n\n\t\t\tSyntaxHighlighter.highlight(params, element);\n\t\t}\n\t}\n};\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/styles/shCore.css",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n.syntaxhighlighter a,\n.syntaxhighlighter div,\n.syntaxhighlighter code,\n.syntaxhighlighter table,\n.syntaxhighlighter table td,\n.syntaxhighlighter table tr,\n.syntaxhighlighter table tbody,\n.syntaxhighlighter table thead,\n.syntaxhighlighter table caption,\n.syntaxhighlighter textarea {\n  -moz-border-radius: 0 0 0 0 !important;\n  -webkit-border-radius: 0 0 0 0 !important;\n  background: none !important;\n  border: 0 !important;\n  bottom: auto !important;\n  float: none !important;\n  height: auto !important;\n  left: auto !important;\n  line-height: 1.1em !important;\n  margin: 0 !important;\n  outline: 0 !important;\n  overflow: visible !important;\n  padding: 0 !important;\n  position: static !important;\n  right: auto !important;\n  text-align: left !important;\n  top: auto !important;\n  vertical-align: baseline !important;\n  width: auto !important;\n  box-sizing: content-box !important;\n  font-family: \"Consolas\", \"Bitstream Vera Sans Mono\", \"Courier New\", Courier, monospace !important;\n  font-weight: normal !important;\n  font-style: normal !important;\n  font-size: 1em !important;\n  min-height: inherit !important;\n  min-height: auto !important;\n}\n\n.syntaxhighlighter {\n  width: 100% !important;\n  margin: 1em 0 1em 0 !important;\n  position: relative !important;\n  overflow: auto !important;\n  font-size: 1em !important;\n}\n.syntaxhighlighter.source {\n  overflow: hidden !important;\n}\n.syntaxhighlighter .bold {\n  font-weight: bold !important;\n}\n.syntaxhighlighter .italic {\n  font-style: italic !important;\n}\n.syntaxhighlighter .line {\n  white-space: pre !important;\n}\n.syntaxhighlighter table {\n  width: 100% !important;\n}\n.syntaxhighlighter table caption {\n  text-align: left !important;\n  padding: .5em 0 0.5em 1em !important;\n}\n.syntaxhighlighter table td.code {\n  width: 100% !important;\n}\n.syntaxhighlighter table td.code .container {\n  position: relative !important;\n}\n.syntaxhighlighter table td.code .container textarea {\n  box-sizing: border-box !important;\n  position: absolute !important;\n  left: 0 !important;\n  top: 0 !important;\n  width: 100% !important;\n  height: 100% !important;\n  border: none !important;\n  background: white !important;\n  padding-left: 1em !important;\n  overflow: hidden !important;\n  white-space: pre !important;\n}\n.syntaxhighlighter table td.gutter .line {\n  text-align: right !important;\n  padding: 0 0.5em 0 1em !important;\n}\n.syntaxhighlighter table td.code .line {\n  padding: 0 1em !important;\n}\n.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {\n  padding-left: 0em !important;\n}\n.syntaxhighlighter.show {\n  display: block !important;\n}\n.syntaxhighlighter.collapsed table {\n  display: none !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  padding: 0.1em 0.8em 0em 0.8em !important;\n  font-size: 1em !important;\n  position: static !important;\n  width: auto !important;\n  height: auto !important;\n}\n.syntaxhighlighter.collapsed .toolbar span {\n  display: inline !important;\n  margin-right: 1em !important;\n}\n.syntaxhighlighter.collapsed .toolbar span a {\n  padding: 0 !important;\n  display: none !important;\n}\n.syntaxhighlighter.collapsed .toolbar span a.expandSource {\n  display: inline !important;\n}\n.syntaxhighlighter .toolbar {\n  position: absolute !important;\n  right: 1px !important;\n  top: 1px !important;\n  width: 11px !important;\n  height: 11px !important;\n  font-size: 10px !important;\n  z-index: 10 !important;\n}\n.syntaxhighlighter .toolbar span.title {\n  display: inline !important;\n}\n.syntaxhighlighter .toolbar a {\n  display: block !important;\n  text-align: center !important;\n  text-decoration: none !important;\n  padding-top: 1px !important;\n}\n.syntaxhighlighter .toolbar a.expandSource {\n  display: none !important;\n}\n.syntaxhighlighter.ie {\n  font-size: .9em !important;\n  padding: 1px 0 1px 0 !important;\n}\n.syntaxhighlighter.ie .toolbar {\n  line-height: 8px !important;\n}\n.syntaxhighlighter.ie .toolbar a {\n  padding-top: 0px !important;\n}\n.syntaxhighlighter.printing .line.alt1 .content,\n.syntaxhighlighter.printing .line.alt2 .content,\n.syntaxhighlighter.printing .line.highlighted .number,\n.syntaxhighlighter.printing .line.highlighted.alt1 .content,\n.syntaxhighlighter.printing .line.highlighted.alt2 .content {\n  background: none !important;\n}\n.syntaxhighlighter.printing .line .number {\n  color: #bbbbbb !important;\n}\n.syntaxhighlighter.printing .line .content {\n  color: black !important;\n}\n.syntaxhighlighter.printing .toolbar {\n  display: none !important;\n}\n.syntaxhighlighter.printing a {\n  text-decoration: none !important;\n}\n.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {\n  color: black !important;\n}\n.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {\n  color: #008200 !important;\n}\n.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {\n  color: blue !important;\n}\n.syntaxhighlighter.printing .keyword {\n  color: #006699 !important;\n  font-weight: bold !important;\n}\n.syntaxhighlighter.printing .preprocessor {\n  color: gray !important;\n}\n.syntaxhighlighter.printing .variable {\n  color: #aa7700 !important;\n}\n.syntaxhighlighter.printing .value {\n  color: #009900 !important;\n}\n.syntaxhighlighter.printing .functions {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter.printing .constants {\n  color: #0066cc !important;\n}\n.syntaxhighlighter.printing .script {\n  font-weight: bold !important;\n}\n.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {\n  color: gray !important;\n}\n.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {\n  color: red !important;\n}\n.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {\n  color: black !important;\n}\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/styles/shCoreDefault.css",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n.syntaxhighlighter a,\n.syntaxhighlighter div,\n.syntaxhighlighter code,\n.syntaxhighlighter table,\n.syntaxhighlighter table td,\n.syntaxhighlighter table tr,\n.syntaxhighlighter table tbody,\n.syntaxhighlighter table thead,\n.syntaxhighlighter table caption,\n.syntaxhighlighter textarea {\n  -moz-border-radius: 0 0 0 0 !important;\n  -webkit-border-radius: 0 0 0 0 !important;\n  background: none !important;\n  border: 0 !important;\n  bottom: auto !important;\n  float: none !important;\n  height: auto !important;\n  left: auto !important;\n  line-height: 1.1em !important;\n  margin: 0 !important;\n  outline: 0 !important;\n  overflow: visible !important;\n  padding: 0 !important;\n  position: static !important;\n  right: auto !important;\n  text-align: left !important;\n  top: auto !important;\n  vertical-align: baseline !important;\n  width: auto !important;\n  box-sizing: content-box !important;\n  font-family: \"Consolas\", \"Bitstream Vera Sans Mono\", \"Courier New\", Courier, monospace !important;\n  font-weight: normal !important;\n  font-style: normal !important;\n  font-size: 1em !important;\n  min-height: inherit !important;\n  min-height: auto !important;\n}\n\n.syntaxhighlighter {\n  width: 100% !important;\n  margin: 1em 0 1em 0 !important;\n  position: relative !important;\n  overflow: auto !important;\n  font-size: 1em !important;\n}\n.syntaxhighlighter.source {\n  overflow: hidden !important;\n}\n.syntaxhighlighter .bold {\n  font-weight: bold !important;\n}\n.syntaxhighlighter .italic {\n  font-style: italic !important;\n}\n.syntaxhighlighter .line {\n  white-space: pre !important;\n}\n.syntaxhighlighter table {\n  width: 100% !important;\n}\n.syntaxhighlighter table caption {\n  text-align: left !important;\n  padding: .5em 0 0.5em 1em !important;\n}\n.syntaxhighlighter table td.code {\n  width: 100% !important;\n}\n.syntaxhighlighter table td.code .container {\n  position: relative !important;\n}\n.syntaxhighlighter table td.code .container textarea {\n  box-sizing: border-box !important;\n  position: absolute !important;\n  left: 0 !important;\n  top: 0 !important;\n  width: 100% !important;\n  height: 100% !important;\n  border: none !important;\n  background: white !important;\n  padding-left: 1em !important;\n  overflow: hidden !important;\n  white-space: pre !important;\n}\n.syntaxhighlighter table td.gutter .line {\n  text-align: right !important;\n  padding: 0 0.5em 0 1em !important;\n}\n.syntaxhighlighter table td.code .line {\n  padding: 0 1em !important;\n}\n.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {\n  padding-left: 0em !important;\n}\n.syntaxhighlighter.show {\n  display: block !important;\n}\n.syntaxhighlighter.collapsed table {\n  display: none !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  padding: 0.1em 0.8em 0em 0.8em !important;\n  font-size: 1em !important;\n  position: static !important;\n  width: auto !important;\n  height: auto !important;\n}\n.syntaxhighlighter.collapsed .toolbar span {\n  display: inline !important;\n  margin-right: 1em !important;\n}\n.syntaxhighlighter.collapsed .toolbar span a {\n  padding: 0 !important;\n  display: none !important;\n}\n.syntaxhighlighter.collapsed .toolbar span a.expandSource {\n  display: inline !important;\n}\n.syntaxhighlighter .toolbar {\n  position: absolute !important;\n  right: 1px !important;\n  top: 1px !important;\n  width: 11px !important;\n  height: 11px !important;\n  font-size: 10px !important;\n  z-index: 10 !important;\n}\n.syntaxhighlighter .toolbar span.title {\n  display: inline !important;\n}\n.syntaxhighlighter .toolbar a {\n  display: block !important;\n  text-align: center !important;\n  text-decoration: none !important;\n  padding-top: 1px !important;\n}\n.syntaxhighlighter .toolbar a.expandSource {\n  display: none !important;\n}\n.syntaxhighlighter.ie {\n  font-size: .9em !important;\n  padding: 1px 0 1px 0 !important;\n}\n.syntaxhighlighter.ie .toolbar {\n  line-height: 8px !important;\n}\n.syntaxhighlighter.ie .toolbar a {\n  padding-top: 0px !important;\n}\n.syntaxhighlighter.printing .line.alt1 .content,\n.syntaxhighlighter.printing .line.alt2 .content,\n.syntaxhighlighter.printing .line.highlighted .number,\n.syntaxhighlighter.printing .line.highlighted.alt1 .content,\n.syntaxhighlighter.printing .line.highlighted.alt2 .content {\n  background: none !important;\n}\n.syntaxhighlighter.printing .line .number {\n  color: #bbbbbb !important;\n}\n.syntaxhighlighter.printing .line .content {\n  color: black !important;\n}\n.syntaxhighlighter.printing .toolbar {\n  display: none !important;\n}\n.syntaxhighlighter.printing a {\n  text-decoration: none !important;\n}\n.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {\n  color: black !important;\n}\n.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {\n  color: #008200 !important;\n}\n.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {\n  color: blue !important;\n}\n.syntaxhighlighter.printing .keyword {\n  color: #006699 !important;\n  font-weight: bold !important;\n}\n.syntaxhighlighter.printing .preprocessor {\n  color: gray !important;\n}\n.syntaxhighlighter.printing .variable {\n  color: #aa7700 !important;\n}\n.syntaxhighlighter.printing .value {\n  color: #009900 !important;\n}\n.syntaxhighlighter.printing .functions {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter.printing .constants {\n  color: #0066cc !important;\n}\n.syntaxhighlighter.printing .script {\n  font-weight: bold !important;\n}\n.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {\n  color: gray !important;\n}\n.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {\n  color: red !important;\n}\n.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {\n  color: black !important;\n}\n\n.syntaxhighlighter {\n  background-color: white !important;\n}\n.syntaxhighlighter .line.alt1 {\n  background-color: white !important;\n}\n.syntaxhighlighter .line.alt2 {\n  background-color: white !important;\n}\n.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {\n  background-color: #e0e0e0 !important;\n}\n.syntaxhighlighter .line.highlighted.number {\n  color: black !important;\n}\n.syntaxhighlighter table caption {\n  color: black !important;\n}\n.syntaxhighlighter .gutter {\n  color: #afafaf !important;\n}\n.syntaxhighlighter .gutter .line {\n  border-right: 3px solid #6ce26c !important;\n}\n.syntaxhighlighter .gutter .line.highlighted {\n  background-color: #6ce26c !important;\n  color: white !important;\n}\n.syntaxhighlighter.printing .line .content {\n  border: none !important;\n}\n.syntaxhighlighter.collapsed {\n  overflow: visible !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  color: blue !important;\n  background: white !important;\n  border: 1px solid #6ce26c !important;\n}\n.syntaxhighlighter.collapsed .toolbar a {\n  color: blue !important;\n}\n.syntaxhighlighter.collapsed .toolbar a:hover {\n  color: red !important;\n}\n.syntaxhighlighter .toolbar {\n  color: white !important;\n  background: #6ce26c !important;\n  border: none !important;\n}\n.syntaxhighlighter .toolbar a {\n  color: white !important;\n}\n.syntaxhighlighter .toolbar a:hover {\n  color: black !important;\n}\n.syntaxhighlighter .plain, .syntaxhighlighter .plain a {\n  color: black !important;\n}\n.syntaxhighlighter .comments, .syntaxhighlighter .comments a {\n  color: #008200 !important;\n}\n.syntaxhighlighter .string, .syntaxhighlighter .string a {\n  color: blue !important;\n}\n.syntaxhighlighter .keyword {\n  color: #006699 !important;\n}\n.syntaxhighlighter .preprocessor {\n  color: gray !important;\n}\n.syntaxhighlighter .variable {\n  color: #aa7700 !important;\n}\n.syntaxhighlighter .value {\n  color: #009900 !important;\n}\n.syntaxhighlighter .functions {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter .constants {\n  color: #0066cc !important;\n}\n.syntaxhighlighter .script {\n  font-weight: bold !important;\n  color: #006699 !important;\n  background-color: none !important;\n}\n.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {\n  color: gray !important;\n}\n.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {\n  color: red !important;\n}\n\n.syntaxhighlighter .keyword {\n  font-weight: bold !important;\n}\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/styles/shCoreDjango.css",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n.syntaxhighlighter a,\n.syntaxhighlighter div,\n.syntaxhighlighter code,\n.syntaxhighlighter table,\n.syntaxhighlighter table td,\n.syntaxhighlighter table tr,\n.syntaxhighlighter table tbody,\n.syntaxhighlighter table thead,\n.syntaxhighlighter table caption,\n.syntaxhighlighter textarea {\n  -moz-border-radius: 0 0 0 0 !important;\n  -webkit-border-radius: 0 0 0 0 !important;\n  background: none !important;\n  border: 0 !important;\n  bottom: auto !important;\n  float: none !important;\n  height: auto !important;\n  left: auto !important;\n  line-height: 1.1em !important;\n  margin: 0 !important;\n  outline: 0 !important;\n  overflow: visible !important;\n  padding: 0 !important;\n  position: static !important;\n  right: auto !important;\n  text-align: left !important;\n  top: auto !important;\n  vertical-align: baseline !important;\n  width: auto !important;\n  box-sizing: content-box !important;\n  font-family: \"Consolas\", \"Bitstream Vera Sans Mono\", \"Courier New\", Courier, monospace !important;\n  font-weight: normal !important;\n  font-style: normal !important;\n  font-size: 1em !important;\n  min-height: inherit !important;\n  min-height: auto !important;\n}\n\n.syntaxhighlighter {\n  width: 100% !important;\n  margin: 1em 0 1em 0 !important;\n  position: relative !important;\n  overflow: auto !important;\n  font-size: 1em !important;\n}\n.syntaxhighlighter.source {\n  overflow: hidden !important;\n}\n.syntaxhighlighter .bold {\n  font-weight: bold !important;\n}\n.syntaxhighlighter .italic {\n  font-style: italic !important;\n}\n.syntaxhighlighter .line {\n  white-space: pre !important;\n}\n.syntaxhighlighter table {\n  width: 100% !important;\n}\n.syntaxhighlighter table caption {\n  text-align: left !important;\n  padding: .5em 0 0.5em 1em !important;\n}\n.syntaxhighlighter table td.code {\n  width: 100% !important;\n}\n.syntaxhighlighter table td.code .container {\n  position: relative !important;\n}\n.syntaxhighlighter table td.code .container textarea {\n  box-sizing: border-box !important;\n  position: absolute !important;\n  left: 0 !important;\n  top: 0 !important;\n  width: 100% !important;\n  height: 100% !important;\n  border: none !important;\n  background: white !important;\n  padding-left: 1em !important;\n  overflow: hidden !important;\n  white-space: pre !important;\n}\n.syntaxhighlighter table td.gutter .line {\n  text-align: right !important;\n  padding: 0 0.5em 0 1em !important;\n}\n.syntaxhighlighter table td.code .line {\n  padding: 0 1em !important;\n}\n.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {\n  padding-left: 0em !important;\n}\n.syntaxhighlighter.show {\n  display: block !important;\n}\n.syntaxhighlighter.collapsed table {\n  display: none !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  padding: 0.1em 0.8em 0em 0.8em !important;\n  font-size: 1em !important;\n  position: static !important;\n  width: auto !important;\n  height: auto !important;\n}\n.syntaxhighlighter.collapsed .toolbar span {\n  display: inline !important;\n  margin-right: 1em !important;\n}\n.syntaxhighlighter.collapsed .toolbar span a {\n  padding: 0 !important;\n  display: none !important;\n}\n.syntaxhighlighter.collapsed .toolbar span a.expandSource {\n  display: inline !important;\n}\n.syntaxhighlighter .toolbar {\n  position: absolute !important;\n  right: 1px !important;\n  top: 1px !important;\n  width: 11px !important;\n  height: 11px !important;\n  font-size: 10px !important;\n  z-index: 10 !important;\n}\n.syntaxhighlighter .toolbar span.title {\n  display: inline !important;\n}\n.syntaxhighlighter .toolbar a {\n  display: block !important;\n  text-align: center !important;\n  text-decoration: none !important;\n  padding-top: 1px !important;\n}\n.syntaxhighlighter .toolbar a.expandSource {\n  display: none !important;\n}\n.syntaxhighlighter.ie {\n  font-size: .9em !important;\n  padding: 1px 0 1px 0 !important;\n}\n.syntaxhighlighter.ie .toolbar {\n  line-height: 8px !important;\n}\n.syntaxhighlighter.ie .toolbar a {\n  padding-top: 0px !important;\n}\n.syntaxhighlighter.printing .line.alt1 .content,\n.syntaxhighlighter.printing .line.alt2 .content,\n.syntaxhighlighter.printing .line.highlighted .number,\n.syntaxhighlighter.printing .line.highlighted.alt1 .content,\n.syntaxhighlighter.printing .line.highlighted.alt2 .content {\n  background: none !important;\n}\n.syntaxhighlighter.printing .line .number {\n  color: #bbbbbb !important;\n}\n.syntaxhighlighter.printing .line .content {\n  color: black !important;\n}\n.syntaxhighlighter.printing .toolbar {\n  display: none !important;\n}\n.syntaxhighlighter.printing a {\n  text-decoration: none !important;\n}\n.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {\n  color: black !important;\n}\n.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {\n  color: #008200 !important;\n}\n.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {\n  color: blue !important;\n}\n.syntaxhighlighter.printing .keyword {\n  color: #006699 !important;\n  font-weight: bold !important;\n}\n.syntaxhighlighter.printing .preprocessor {\n  color: gray !important;\n}\n.syntaxhighlighter.printing .variable {\n  color: #aa7700 !important;\n}\n.syntaxhighlighter.printing .value {\n  color: #009900 !important;\n}\n.syntaxhighlighter.printing .functions {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter.printing .constants {\n  color: #0066cc !important;\n}\n.syntaxhighlighter.printing .script {\n  font-weight: bold !important;\n}\n.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {\n  color: gray !important;\n}\n.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {\n  color: red !important;\n}\n.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {\n  color: black !important;\n}\n\n.syntaxhighlighter {\n  background-color: #0a2b1d !important;\n}\n.syntaxhighlighter .line.alt1 {\n  background-color: #0a2b1d !important;\n}\n.syntaxhighlighter .line.alt2 {\n  background-color: #0a2b1d !important;\n}\n.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {\n  background-color: #233729 !important;\n}\n.syntaxhighlighter .line.highlighted.number {\n  color: white !important;\n}\n.syntaxhighlighter table caption {\n  color: #f8f8f8 !important;\n}\n.syntaxhighlighter .gutter {\n  color: #497958 !important;\n}\n.syntaxhighlighter .gutter .line {\n  border-right: 3px solid #41a83e !important;\n}\n.syntaxhighlighter .gutter .line.highlighted {\n  background-color: #41a83e !important;\n  color: #0a2b1d !important;\n}\n.syntaxhighlighter.printing .line .content {\n  border: none !important;\n}\n.syntaxhighlighter.collapsed {\n  overflow: visible !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  color: #96dd3b !important;\n  background: black !important;\n  border: 1px solid #41a83e !important;\n}\n.syntaxhighlighter.collapsed .toolbar a {\n  color: #96dd3b !important;\n}\n.syntaxhighlighter.collapsed .toolbar a:hover {\n  color: white !important;\n}\n.syntaxhighlighter .toolbar {\n  color: white !important;\n  background: #41a83e !important;\n  border: none !important;\n}\n.syntaxhighlighter .toolbar a {\n  color: white !important;\n}\n.syntaxhighlighter .toolbar a:hover {\n  color: #ffe862 !important;\n}\n.syntaxhighlighter .plain, .syntaxhighlighter .plain a {\n  color: #f8f8f8 !important;\n}\n.syntaxhighlighter .comments, .syntaxhighlighter .comments a {\n  color: #336442 !important;\n}\n.syntaxhighlighter .string, .syntaxhighlighter .string a {\n  color: #9df39f !important;\n}\n.syntaxhighlighter .keyword {\n  color: #96dd3b !important;\n}\n.syntaxhighlighter .preprocessor {\n  color: #91bb9e !important;\n}\n.syntaxhighlighter .variable {\n  color: #ffaa3e !important;\n}\n.syntaxhighlighter .value {\n  color: #f7e741 !important;\n}\n.syntaxhighlighter .functions {\n  color: #ffaa3e !important;\n}\n.syntaxhighlighter .constants {\n  color: #e0e8ff !important;\n}\n.syntaxhighlighter .script {\n  font-weight: bold !important;\n  color: #96dd3b !important;\n  background-color: none !important;\n}\n.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {\n  color: #eb939a !important;\n}\n.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {\n  color: #91bb9e !important;\n}\n.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {\n  color: #edef7d !important;\n}\n\n.syntaxhighlighter .comments {\n  font-style: italic !important;\n}\n.syntaxhighlighter .keyword {\n  font-weight: bold !important;\n}\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/styles/shCoreEclipse.css",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n.syntaxhighlighter a,\n.syntaxhighlighter div,\n.syntaxhighlighter code,\n.syntaxhighlighter table,\n.syntaxhighlighter table td,\n.syntaxhighlighter table tr,\n.syntaxhighlighter table tbody,\n.syntaxhighlighter table thead,\n.syntaxhighlighter table caption,\n.syntaxhighlighter textarea {\n  -moz-border-radius: 0 0 0 0 !important;\n  -webkit-border-radius: 0 0 0 0 !important;\n  background: none !important;\n  border: 0 !important;\n  bottom: auto !important;\n  float: none !important;\n  height: auto !important;\n  left: auto !important;\n  line-height: 1.1em !important;\n  margin: 0 !important;\n  outline: 0 !important;\n  overflow: visible !important;\n  padding: 0 !important;\n  position: static !important;\n  right: auto !important;\n  text-align: left !important;\n  top: auto !important;\n  vertical-align: baseline !important;\n  width: auto !important;\n  box-sizing: content-box !important;\n  font-family: \"Consolas\", \"Bitstream Vera Sans Mono\", \"Courier New\", Courier, monospace !important;\n  font-weight: normal !important;\n  font-style: normal !important;\n  font-size: 1em !important;\n  min-height: inherit !important;\n  min-height: auto !important;\n}\n\n.syntaxhighlighter {\n  width: 100% !important;\n  margin: 1em 0 1em 0 !important;\n  position: relative !important;\n  overflow: auto !important;\n  font-size: 1em !important;\n}\n.syntaxhighlighter.source {\n  overflow: hidden !important;\n}\n.syntaxhighlighter .bold {\n  font-weight: bold !important;\n}\n.syntaxhighlighter .italic {\n  font-style: italic !important;\n}\n.syntaxhighlighter .line {\n  white-space: pre !important;\n}\n.syntaxhighlighter table {\n  width: 100% !important;\n}\n.syntaxhighlighter table caption {\n  text-align: left !important;\n  padding: .5em 0 0.5em 1em !important;\n}\n.syntaxhighlighter table td.code {\n  width: 100% !important;\n}\n.syntaxhighlighter table td.code .container {\n  position: relative !important;\n}\n.syntaxhighlighter table td.code .container textarea {\n  box-sizing: border-box !important;\n  position: absolute !important;\n  left: 0 !important;\n  top: 0 !important;\n  width: 100% !important;\n  height: 100% !important;\n  border: none !important;\n  background: white !important;\n  padding-left: 1em !important;\n  overflow: hidden !important;\n  white-space: pre !important;\n}\n.syntaxhighlighter table td.gutter .line {\n  text-align: right !important;\n  padding: 0 0.5em 0 1em !important;\n}\n.syntaxhighlighter table td.code .line {\n  padding: 0 1em !important;\n}\n.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {\n  padding-left: 0em !important;\n}\n.syntaxhighlighter.show {\n  display: block !important;\n}\n.syntaxhighlighter.collapsed table {\n  display: none !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  padding: 0.1em 0.8em 0em 0.8em !important;\n  font-size: 1em !important;\n  position: static !important;\n  width: auto !important;\n  height: auto !important;\n}\n.syntaxhighlighter.collapsed .toolbar span {\n  display: inline !important;\n  margin-right: 1em !important;\n}\n.syntaxhighlighter.collapsed .toolbar span a {\n  padding: 0 !important;\n  display: none !important;\n}\n.syntaxhighlighter.collapsed .toolbar span a.expandSource {\n  display: inline !important;\n}\n.syntaxhighlighter .toolbar {\n  position: absolute !important;\n  right: 1px !important;\n  top: 1px !important;\n  width: 11px !important;\n  height: 11px !important;\n  font-size: 10px !important;\n  z-index: 10 !important;\n}\n.syntaxhighlighter .toolbar span.title {\n  display: inline !important;\n}\n.syntaxhighlighter .toolbar a {\n  display: block !important;\n  text-align: center !important;\n  text-decoration: none !important;\n  padding-top: 1px !important;\n}\n.syntaxhighlighter .toolbar a.expandSource {\n  display: none !important;\n}\n.syntaxhighlighter.ie {\n  font-size: .9em !important;\n  padding: 1px 0 1px 0 !important;\n}\n.syntaxhighlighter.ie .toolbar {\n  line-height: 8px !important;\n}\n.syntaxhighlighter.ie .toolbar a {\n  padding-top: 0px !important;\n}\n.syntaxhighlighter.printing .line.alt1 .content,\n.syntaxhighlighter.printing .line.alt2 .content,\n.syntaxhighlighter.printing .line.highlighted .number,\n.syntaxhighlighter.printing .line.highlighted.alt1 .content,\n.syntaxhighlighter.printing .line.highlighted.alt2 .content {\n  background: none !important;\n}\n.syntaxhighlighter.printing .line .number {\n  color: #bbbbbb !important;\n}\n.syntaxhighlighter.printing .line .content {\n  color: black !important;\n}\n.syntaxhighlighter.printing .toolbar {\n  display: none !important;\n}\n.syntaxhighlighter.printing a {\n  text-decoration: none !important;\n}\n.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {\n  color: black !important;\n}\n.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {\n  color: #008200 !important;\n}\n.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {\n  color: blue !important;\n}\n.syntaxhighlighter.printing .keyword {\n  color: #006699 !important;\n  font-weight: bold !important;\n}\n.syntaxhighlighter.printing .preprocessor {\n  color: gray !important;\n}\n.syntaxhighlighter.printing .variable {\n  color: #aa7700 !important;\n}\n.syntaxhighlighter.printing .value {\n  color: #009900 !important;\n}\n.syntaxhighlighter.printing .functions {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter.printing .constants {\n  color: #0066cc !important;\n}\n.syntaxhighlighter.printing .script {\n  font-weight: bold !important;\n}\n.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {\n  color: gray !important;\n}\n.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {\n  color: red !important;\n}\n.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {\n  color: black !important;\n}\n\n.syntaxhighlighter {\n  background-color: white !important;\n}\n.syntaxhighlighter .line.alt1 {\n  background-color: white !important;\n}\n.syntaxhighlighter .line.alt2 {\n  background-color: white !important;\n}\n.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {\n  background-color: #c3defe !important;\n}\n.syntaxhighlighter .line.highlighted.number {\n  color: white !important;\n}\n.syntaxhighlighter table caption {\n  color: black !important;\n}\n.syntaxhighlighter .gutter {\n  color: #787878 !important;\n}\n.syntaxhighlighter .gutter .line {\n  border-right: 3px solid #d4d0c8 !important;\n}\n.syntaxhighlighter .gutter .line.highlighted {\n  background-color: #d4d0c8 !important;\n  color: white !important;\n}\n.syntaxhighlighter.printing .line .content {\n  border: none !important;\n}\n.syntaxhighlighter.collapsed {\n  overflow: visible !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  color: #3f5fbf !important;\n  background: white !important;\n  border: 1px solid #d4d0c8 !important;\n}\n.syntaxhighlighter.collapsed .toolbar a {\n  color: #3f5fbf !important;\n}\n.syntaxhighlighter.collapsed .toolbar a:hover {\n  color: #aa7700 !important;\n}\n.syntaxhighlighter .toolbar {\n  color: #a0a0a0 !important;\n  background: #d4d0c8 !important;\n  border: none !important;\n}\n.syntaxhighlighter .toolbar a {\n  color: #a0a0a0 !important;\n}\n.syntaxhighlighter .toolbar a:hover {\n  color: red !important;\n}\n.syntaxhighlighter .plain, .syntaxhighlighter .plain a {\n  color: black !important;\n}\n.syntaxhighlighter .comments, .syntaxhighlighter .comments a {\n  color: #3f5fbf !important;\n}\n.syntaxhighlighter .string, .syntaxhighlighter .string a {\n  color: #2a00ff !important;\n}\n.syntaxhighlighter .keyword {\n  color: #7f0055 !important;\n}\n.syntaxhighlighter .preprocessor {\n  color: #646464 !important;\n}\n.syntaxhighlighter .variable {\n  color: #aa7700 !important;\n}\n.syntaxhighlighter .value {\n  color: #009900 !important;\n}\n.syntaxhighlighter .functions {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter .constants {\n  color: #0066cc !important;\n}\n.syntaxhighlighter .script {\n  font-weight: bold !important;\n  color: #7f0055 !important;\n  background-color: none !important;\n}\n.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {\n  color: gray !important;\n}\n.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {\n  color: red !important;\n}\n\n.syntaxhighlighter .keyword {\n  font-weight: bold !important;\n}\n.syntaxhighlighter .xml .keyword {\n  color: #3f7f7f !important;\n  font-weight: normal !important;\n}\n.syntaxhighlighter .xml .color1, .syntaxhighlighter .xml .color1 a {\n  color: #7f007f !important;\n}\n.syntaxhighlighter .xml .string {\n  font-style: italic !important;\n  color: #2a00ff !important;\n}\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/styles/shCoreEmacs.css",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n.syntaxhighlighter a,\n.syntaxhighlighter div,\n.syntaxhighlighter code,\n.syntaxhighlighter table,\n.syntaxhighlighter table td,\n.syntaxhighlighter table tr,\n.syntaxhighlighter table tbody,\n.syntaxhighlighter table thead,\n.syntaxhighlighter table caption,\n.syntaxhighlighter textarea {\n  -moz-border-radius: 0 0 0 0 !important;\n  -webkit-border-radius: 0 0 0 0 !important;\n  background: none !important;\n  border: 0 !important;\n  bottom: auto !important;\n  float: none !important;\n  height: auto !important;\n  left: auto !important;\n  line-height: 1.1em !important;\n  margin: 0 !important;\n  outline: 0 !important;\n  overflow: visible !important;\n  padding: 0 !important;\n  position: static !important;\n  right: auto !important;\n  text-align: left !important;\n  top: auto !important;\n  vertical-align: baseline !important;\n  width: auto !important;\n  box-sizing: content-box !important;\n  font-family: \"Consolas\", \"Bitstream Vera Sans Mono\", \"Courier New\", Courier, monospace !important;\n  font-weight: normal !important;\n  font-style: normal !important;\n  font-size: 1em !important;\n  min-height: inherit !important;\n  min-height: auto !important;\n}\n\n.syntaxhighlighter {\n  width: 100% !important;\n  margin: 1em 0 1em 0 !important;\n  position: relative !important;\n  overflow: auto !important;\n  font-size: 1em !important;\n}\n.syntaxhighlighter.source {\n  overflow: hidden !important;\n}\n.syntaxhighlighter .bold {\n  font-weight: bold !important;\n}\n.syntaxhighlighter .italic {\n  font-style: italic !important;\n}\n.syntaxhighlighter .line {\n  white-space: pre !important;\n}\n.syntaxhighlighter table {\n  width: 100% !important;\n}\n.syntaxhighlighter table caption {\n  text-align: left !important;\n  padding: .5em 0 0.5em 1em !important;\n}\n.syntaxhighlighter table td.code {\n  width: 100% !important;\n}\n.syntaxhighlighter table td.code .container {\n  position: relative !important;\n}\n.syntaxhighlighter table td.code .container textarea {\n  box-sizing: border-box !important;\n  position: absolute !important;\n  left: 0 !important;\n  top: 0 !important;\n  width: 100% !important;\n  height: 100% !important;\n  border: none !important;\n  background: white !important;\n  padding-left: 1em !important;\n  overflow: hidden !important;\n  white-space: pre !important;\n}\n.syntaxhighlighter table td.gutter .line {\n  text-align: right !important;\n  padding: 0 0.5em 0 1em !important;\n}\n.syntaxhighlighter table td.code .line {\n  padding: 0 1em !important;\n}\n.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {\n  padding-left: 0em !important;\n}\n.syntaxhighlighter.show {\n  display: block !important;\n}\n.syntaxhighlighter.collapsed table {\n  display: none !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  padding: 0.1em 0.8em 0em 0.8em !important;\n  font-size: 1em !important;\n  position: static !important;\n  width: auto !important;\n  height: auto !important;\n}\n.syntaxhighlighter.collapsed .toolbar span {\n  display: inline !important;\n  margin-right: 1em !important;\n}\n.syntaxhighlighter.collapsed .toolbar span a {\n  padding: 0 !important;\n  display: none !important;\n}\n.syntaxhighlighter.collapsed .toolbar span a.expandSource {\n  display: inline !important;\n}\n.syntaxhighlighter .toolbar {\n  position: absolute !important;\n  right: 1px !important;\n  top: 1px !important;\n  width: 11px !important;\n  height: 11px !important;\n  font-size: 10px !important;\n  z-index: 10 !important;\n}\n.syntaxhighlighter .toolbar span.title {\n  display: inline !important;\n}\n.syntaxhighlighter .toolbar a {\n  display: block !important;\n  text-align: center !important;\n  text-decoration: none !important;\n  padding-top: 1px !important;\n}\n.syntaxhighlighter .toolbar a.expandSource {\n  display: none !important;\n}\n.syntaxhighlighter.ie {\n  font-size: .9em !important;\n  padding: 1px 0 1px 0 !important;\n}\n.syntaxhighlighter.ie .toolbar {\n  line-height: 8px !important;\n}\n.syntaxhighlighter.ie .toolbar a {\n  padding-top: 0px !important;\n}\n.syntaxhighlighter.printing .line.alt1 .content,\n.syntaxhighlighter.printing .line.alt2 .content,\n.syntaxhighlighter.printing .line.highlighted .number,\n.syntaxhighlighter.printing .line.highlighted.alt1 .content,\n.syntaxhighlighter.printing .line.highlighted.alt2 .content {\n  background: none !important;\n}\n.syntaxhighlighter.printing .line .number {\n  color: #bbbbbb !important;\n}\n.syntaxhighlighter.printing .line .content {\n  color: black !important;\n}\n.syntaxhighlighter.printing .toolbar {\n  display: none !important;\n}\n.syntaxhighlighter.printing a {\n  text-decoration: none !important;\n}\n.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {\n  color: black !important;\n}\n.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {\n  color: #008200 !important;\n}\n.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {\n  color: blue !important;\n}\n.syntaxhighlighter.printing .keyword {\n  color: #006699 !important;\n  font-weight: bold !important;\n}\n.syntaxhighlighter.printing .preprocessor {\n  color: gray !important;\n}\n.syntaxhighlighter.printing .variable {\n  color: #aa7700 !important;\n}\n.syntaxhighlighter.printing .value {\n  color: #009900 !important;\n}\n.syntaxhighlighter.printing .functions {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter.printing .constants {\n  color: #0066cc !important;\n}\n.syntaxhighlighter.printing .script {\n  font-weight: bold !important;\n}\n.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {\n  color: gray !important;\n}\n.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {\n  color: red !important;\n}\n.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {\n  color: black !important;\n}\n\n.syntaxhighlighter {\n  background-color: black !important;\n}\n.syntaxhighlighter .line.alt1 {\n  background-color: black !important;\n}\n.syntaxhighlighter .line.alt2 {\n  background-color: black !important;\n}\n.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {\n  background-color: #2a3133 !important;\n}\n.syntaxhighlighter .line.highlighted.number {\n  color: white !important;\n}\n.syntaxhighlighter table caption {\n  color: #d3d3d3 !important;\n}\n.syntaxhighlighter .gutter {\n  color: #d3d3d3 !important;\n}\n.syntaxhighlighter .gutter .line {\n  border-right: 3px solid #990000 !important;\n}\n.syntaxhighlighter .gutter .line.highlighted {\n  background-color: #990000 !important;\n  color: black !important;\n}\n.syntaxhighlighter.printing .line .content {\n  border: none !important;\n}\n.syntaxhighlighter.collapsed {\n  overflow: visible !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  color: #ebdb8d !important;\n  background: black !important;\n  border: 1px solid #990000 !important;\n}\n.syntaxhighlighter.collapsed .toolbar a {\n  color: #ebdb8d !important;\n}\n.syntaxhighlighter.collapsed .toolbar a:hover {\n  color: #ff7d27 !important;\n}\n.syntaxhighlighter .toolbar {\n  color: white !important;\n  background: #990000 !important;\n  border: none !important;\n}\n.syntaxhighlighter .toolbar a {\n  color: white !important;\n}\n.syntaxhighlighter .toolbar a:hover {\n  color: #9ccff4 !important;\n}\n.syntaxhighlighter .plain, .syntaxhighlighter .plain a {\n  color: #d3d3d3 !important;\n}\n.syntaxhighlighter .comments, .syntaxhighlighter .comments a {\n  color: #ff7d27 !important;\n}\n.syntaxhighlighter .string, .syntaxhighlighter .string a {\n  color: #ff9e7b !important;\n}\n.syntaxhighlighter .keyword {\n  color: aqua !important;\n}\n.syntaxhighlighter .preprocessor {\n  color: #aec4de !important;\n}\n.syntaxhighlighter .variable {\n  color: #ffaa3e !important;\n}\n.syntaxhighlighter .value {\n  color: #009900 !important;\n}\n.syntaxhighlighter .functions {\n  color: #81cef9 !important;\n}\n.syntaxhighlighter .constants {\n  color: #ff9e7b !important;\n}\n.syntaxhighlighter .script {\n  font-weight: bold !important;\n  color: aqua !important;\n  background-color: none !important;\n}\n.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {\n  color: #ebdb8d !important;\n}\n.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {\n  color: #ff7d27 !important;\n}\n.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {\n  color: #aec4de !important;\n}\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/styles/shCoreFadeToGrey.css",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n.syntaxhighlighter a,\n.syntaxhighlighter div,\n.syntaxhighlighter code,\n.syntaxhighlighter table,\n.syntaxhighlighter table td,\n.syntaxhighlighter table tr,\n.syntaxhighlighter table tbody,\n.syntaxhighlighter table thead,\n.syntaxhighlighter table caption,\n.syntaxhighlighter textarea {\n  -moz-border-radius: 0 0 0 0 !important;\n  -webkit-border-radius: 0 0 0 0 !important;\n  background: none !important;\n  border: 0 !important;\n  bottom: auto !important;\n  float: none !important;\n  height: auto !important;\n  left: auto !important;\n  line-height: 1.1em !important;\n  margin: 0 !important;\n  outline: 0 !important;\n  overflow: visible !important;\n  padding: 0 !important;\n  position: static !important;\n  right: auto !important;\n  text-align: left !important;\n  top: auto !important;\n  vertical-align: baseline !important;\n  width: auto !important;\n  box-sizing: content-box !important;\n  font-family: \"Consolas\", \"Bitstream Vera Sans Mono\", \"Courier New\", Courier, monospace !important;\n  font-weight: normal !important;\n  font-style: normal !important;\n  font-size: 1em !important;\n  min-height: inherit !important;\n  min-height: auto !important;\n}\n\n.syntaxhighlighter {\n  width: 100% !important;\n  margin: 1em 0 1em 0 !important;\n  position: relative !important;\n  overflow: auto !important;\n  font-size: 1em !important;\n}\n.syntaxhighlighter.source {\n  overflow: hidden !important;\n}\n.syntaxhighlighter .bold {\n  font-weight: bold !important;\n}\n.syntaxhighlighter .italic {\n  font-style: italic !important;\n}\n.syntaxhighlighter .line {\n  white-space: pre !important;\n}\n.syntaxhighlighter table {\n  width: 100% !important;\n}\n.syntaxhighlighter table caption {\n  text-align: left !important;\n  padding: .5em 0 0.5em 1em !important;\n}\n.syntaxhighlighter table td.code {\n  width: 100% !important;\n}\n.syntaxhighlighter table td.code .container {\n  position: relative !important;\n}\n.syntaxhighlighter table td.code .container textarea {\n  box-sizing: border-box !important;\n  position: absolute !important;\n  left: 0 !important;\n  top: 0 !important;\n  width: 100% !important;\n  height: 100% !important;\n  border: none !important;\n  background: white !important;\n  padding-left: 1em !important;\n  overflow: hidden !important;\n  white-space: pre !important;\n}\n.syntaxhighlighter table td.gutter .line {\n  text-align: right !important;\n  padding: 0 0.5em 0 1em !important;\n}\n.syntaxhighlighter table td.code .line {\n  padding: 0 1em !important;\n}\n.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {\n  padding-left: 0em !important;\n}\n.syntaxhighlighter.show {\n  display: block !important;\n}\n.syntaxhighlighter.collapsed table {\n  display: none !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  padding: 0.1em 0.8em 0em 0.8em !important;\n  font-size: 1em !important;\n  position: static !important;\n  width: auto !important;\n  height: auto !important;\n}\n.syntaxhighlighter.collapsed .toolbar span {\n  display: inline !important;\n  margin-right: 1em !important;\n}\n.syntaxhighlighter.collapsed .toolbar span a {\n  padding: 0 !important;\n  display: none !important;\n}\n.syntaxhighlighter.collapsed .toolbar span a.expandSource {\n  display: inline !important;\n}\n.syntaxhighlighter .toolbar {\n  position: absolute !important;\n  right: 1px !important;\n  top: 1px !important;\n  width: 11px !important;\n  height: 11px !important;\n  font-size: 10px !important;\n  z-index: 10 !important;\n}\n.syntaxhighlighter .toolbar span.title {\n  display: inline !important;\n}\n.syntaxhighlighter .toolbar a {\n  display: block !important;\n  text-align: center !important;\n  text-decoration: none !important;\n  padding-top: 1px !important;\n}\n.syntaxhighlighter .toolbar a.expandSource {\n  display: none !important;\n}\n.syntaxhighlighter.ie {\n  font-size: .9em !important;\n  padding: 1px 0 1px 0 !important;\n}\n.syntaxhighlighter.ie .toolbar {\n  line-height: 8px !important;\n}\n.syntaxhighlighter.ie .toolbar a {\n  padding-top: 0px !important;\n}\n.syntaxhighlighter.printing .line.alt1 .content,\n.syntaxhighlighter.printing .line.alt2 .content,\n.syntaxhighlighter.printing .line.highlighted .number,\n.syntaxhighlighter.printing .line.highlighted.alt1 .content,\n.syntaxhighlighter.printing .line.highlighted.alt2 .content {\n  background: none !important;\n}\n.syntaxhighlighter.printing .line .number {\n  color: #bbbbbb !important;\n}\n.syntaxhighlighter.printing .line .content {\n  color: black !important;\n}\n.syntaxhighlighter.printing .toolbar {\n  display: none !important;\n}\n.syntaxhighlighter.printing a {\n  text-decoration: none !important;\n}\n.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {\n  color: black !important;\n}\n.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {\n  color: #008200 !important;\n}\n.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {\n  color: blue !important;\n}\n.syntaxhighlighter.printing .keyword {\n  color: #006699 !important;\n  font-weight: bold !important;\n}\n.syntaxhighlighter.printing .preprocessor {\n  color: gray !important;\n}\n.syntaxhighlighter.printing .variable {\n  color: #aa7700 !important;\n}\n.syntaxhighlighter.printing .value {\n  color: #009900 !important;\n}\n.syntaxhighlighter.printing .functions {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter.printing .constants {\n  color: #0066cc !important;\n}\n.syntaxhighlighter.printing .script {\n  font-weight: bold !important;\n}\n.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {\n  color: gray !important;\n}\n.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {\n  color: red !important;\n}\n.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {\n  color: black !important;\n}\n\n.syntaxhighlighter {\n  background-color: #121212 !important;\n}\n.syntaxhighlighter .line.alt1 {\n  background-color: #121212 !important;\n}\n.syntaxhighlighter .line.alt2 {\n  background-color: #121212 !important;\n}\n.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {\n  background-color: #2c2c29 !important;\n}\n.syntaxhighlighter .line.highlighted.number {\n  color: white !important;\n}\n.syntaxhighlighter table caption {\n  color: white !important;\n}\n.syntaxhighlighter .gutter {\n  color: #afafaf !important;\n}\n.syntaxhighlighter .gutter .line {\n  border-right: 3px solid #3185b9 !important;\n}\n.syntaxhighlighter .gutter .line.highlighted {\n  background-color: #3185b9 !important;\n  color: #121212 !important;\n}\n.syntaxhighlighter.printing .line .content {\n  border: none !important;\n}\n.syntaxhighlighter.collapsed {\n  overflow: visible !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  color: #3185b9 !important;\n  background: black !important;\n  border: 1px solid #3185b9 !important;\n}\n.syntaxhighlighter.collapsed .toolbar a {\n  color: #3185b9 !important;\n}\n.syntaxhighlighter.collapsed .toolbar a:hover {\n  color: #d01d33 !important;\n}\n.syntaxhighlighter .toolbar {\n  color: white !important;\n  background: #3185b9 !important;\n  border: none !important;\n}\n.syntaxhighlighter .toolbar a {\n  color: white !important;\n}\n.syntaxhighlighter .toolbar a:hover {\n  color: #96daff !important;\n}\n.syntaxhighlighter .plain, .syntaxhighlighter .plain a {\n  color: white !important;\n}\n.syntaxhighlighter .comments, .syntaxhighlighter .comments a {\n  color: #696854 !important;\n}\n.syntaxhighlighter .string, .syntaxhighlighter .string a {\n  color: #e3e658 !important;\n}\n.syntaxhighlighter .keyword {\n  color: #d01d33 !important;\n}\n.syntaxhighlighter .preprocessor {\n  color: #435a5f !important;\n}\n.syntaxhighlighter .variable {\n  color: #898989 !important;\n}\n.syntaxhighlighter .value {\n  color: #009900 !important;\n}\n.syntaxhighlighter .functions {\n  color: #aaaaaa !important;\n}\n.syntaxhighlighter .constants {\n  color: #96daff !important;\n}\n.syntaxhighlighter .script {\n  font-weight: bold !important;\n  color: #d01d33 !important;\n  background-color: none !important;\n}\n.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {\n  color: #ffc074 !important;\n}\n.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {\n  color: #4a8cdb !important;\n}\n.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {\n  color: #96daff !important;\n}\n\n.syntaxhighlighter .functions {\n  font-weight: bold !important;\n}\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/styles/shCoreMDUltra.css",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n.syntaxhighlighter a,\n.syntaxhighlighter div,\n.syntaxhighlighter code,\n.syntaxhighlighter table,\n.syntaxhighlighter table td,\n.syntaxhighlighter table tr,\n.syntaxhighlighter table tbody,\n.syntaxhighlighter table thead,\n.syntaxhighlighter table caption,\n.syntaxhighlighter textarea {\n  -moz-border-radius: 0 0 0 0 !important;\n  -webkit-border-radius: 0 0 0 0 !important;\n  background: none !important;\n  border: 0 !important;\n  bottom: auto !important;\n  float: none !important;\n  height: auto !important;\n  left: auto !important;\n  line-height: 1.1em !important;\n  margin: 0 !important;\n  outline: 0 !important;\n  overflow: visible !important;\n  padding: 0 !important;\n  position: static !important;\n  right: auto !important;\n  text-align: left !important;\n  top: auto !important;\n  vertical-align: baseline !important;\n  width: auto !important;\n  box-sizing: content-box !important;\n  font-family: \"Consolas\", \"Bitstream Vera Sans Mono\", \"Courier New\", Courier, monospace !important;\n  font-weight: normal !important;\n  font-style: normal !important;\n  font-size: 1em !important;\n  min-height: inherit !important;\n  min-height: auto !important;\n}\n\n.syntaxhighlighter {\n  width: 100% !important;\n  margin: 1em 0 1em 0 !important;\n  position: relative !important;\n  overflow: auto !important;\n  font-size: 1em !important;\n}\n.syntaxhighlighter.source {\n  overflow: hidden !important;\n}\n.syntaxhighlighter .bold {\n  font-weight: bold !important;\n}\n.syntaxhighlighter .italic {\n  font-style: italic !important;\n}\n.syntaxhighlighter .line {\n  white-space: pre !important;\n}\n.syntaxhighlighter table {\n  width: 100% !important;\n}\n.syntaxhighlighter table caption {\n  text-align: left !important;\n  padding: .5em 0 0.5em 1em !important;\n}\n.syntaxhighlighter table td.code {\n  width: 100% !important;\n}\n.syntaxhighlighter table td.code .container {\n  position: relative !important;\n}\n.syntaxhighlighter table td.code .container textarea {\n  box-sizing: border-box !important;\n  position: absolute !important;\n  left: 0 !important;\n  top: 0 !important;\n  width: 100% !important;\n  height: 100% !important;\n  border: none !important;\n  background: white !important;\n  padding-left: 1em !important;\n  overflow: hidden !important;\n  white-space: pre !important;\n}\n.syntaxhighlighter table td.gutter .line {\n  text-align: right !important;\n  padding: 0 0.5em 0 1em !important;\n}\n.syntaxhighlighter table td.code .line {\n  padding: 0 1em !important;\n}\n.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {\n  padding-left: 0em !important;\n}\n.syntaxhighlighter.show {\n  display: block !important;\n}\n.syntaxhighlighter.collapsed table {\n  display: none !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  padding: 0.1em 0.8em 0em 0.8em !important;\n  font-size: 1em !important;\n  position: static !important;\n  width: auto !important;\n  height: auto !important;\n}\n.syntaxhighlighter.collapsed .toolbar span {\n  display: inline !important;\n  margin-right: 1em !important;\n}\n.syntaxhighlighter.collapsed .toolbar span a {\n  padding: 0 !important;\n  display: none !important;\n}\n.syntaxhighlighter.collapsed .toolbar span a.expandSource {\n  display: inline !important;\n}\n.syntaxhighlighter .toolbar {\n  position: absolute !important;\n  right: 1px !important;\n  top: 1px !important;\n  width: 11px !important;\n  height: 11px !important;\n  font-size: 10px !important;\n  z-index: 10 !important;\n}\n.syntaxhighlighter .toolbar span.title {\n  display: inline !important;\n}\n.syntaxhighlighter .toolbar a {\n  display: block !important;\n  text-align: center !important;\n  text-decoration: none !important;\n  padding-top: 1px !important;\n}\n.syntaxhighlighter .toolbar a.expandSource {\n  display: none !important;\n}\n.syntaxhighlighter.ie {\n  font-size: .9em !important;\n  padding: 1px 0 1px 0 !important;\n}\n.syntaxhighlighter.ie .toolbar {\n  line-height: 8px !important;\n}\n.syntaxhighlighter.ie .toolbar a {\n  padding-top: 0px !important;\n}\n.syntaxhighlighter.printing .line.alt1 .content,\n.syntaxhighlighter.printing .line.alt2 .content,\n.syntaxhighlighter.printing .line.highlighted .number,\n.syntaxhighlighter.printing .line.highlighted.alt1 .content,\n.syntaxhighlighter.printing .line.highlighted.alt2 .content {\n  background: none !important;\n}\n.syntaxhighlighter.printing .line .number {\n  color: #bbbbbb !important;\n}\n.syntaxhighlighter.printing .line .content {\n  color: black !important;\n}\n.syntaxhighlighter.printing .toolbar {\n  display: none !important;\n}\n.syntaxhighlighter.printing a {\n  text-decoration: none !important;\n}\n.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {\n  color: black !important;\n}\n.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {\n  color: #008200 !important;\n}\n.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {\n  color: blue !important;\n}\n.syntaxhighlighter.printing .keyword {\n  color: #006699 !important;\n  font-weight: bold !important;\n}\n.syntaxhighlighter.printing .preprocessor {\n  color: gray !important;\n}\n.syntaxhighlighter.printing .variable {\n  color: #aa7700 !important;\n}\n.syntaxhighlighter.printing .value {\n  color: #009900 !important;\n}\n.syntaxhighlighter.printing .functions {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter.printing .constants {\n  color: #0066cc !important;\n}\n.syntaxhighlighter.printing .script {\n  font-weight: bold !important;\n}\n.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {\n  color: gray !important;\n}\n.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {\n  color: red !important;\n}\n.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {\n  color: black !important;\n}\n\n.syntaxhighlighter {\n  background-color: #222222 !important;\n}\n.syntaxhighlighter .line.alt1 {\n  background-color: #222222 !important;\n}\n.syntaxhighlighter .line.alt2 {\n  background-color: #222222 !important;\n}\n.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {\n  background-color: #253e5a !important;\n}\n.syntaxhighlighter .line.highlighted.number {\n  color: white !important;\n}\n.syntaxhighlighter table caption {\n  color: lime !important;\n}\n.syntaxhighlighter .gutter {\n  color: #38566f !important;\n}\n.syntaxhighlighter .gutter .line {\n  border-right: 3px solid #435a5f !important;\n}\n.syntaxhighlighter .gutter .line.highlighted {\n  background-color: #435a5f !important;\n  color: #222222 !important;\n}\n.syntaxhighlighter.printing .line .content {\n  border: none !important;\n}\n.syntaxhighlighter.collapsed {\n  overflow: visible !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  color: #428bdd !important;\n  background: black !important;\n  border: 1px solid #435a5f !important;\n}\n.syntaxhighlighter.collapsed .toolbar a {\n  color: #428bdd !important;\n}\n.syntaxhighlighter.collapsed .toolbar a:hover {\n  color: lime !important;\n}\n.syntaxhighlighter .toolbar {\n  color: #aaaaff !important;\n  background: #435a5f !important;\n  border: none !important;\n}\n.syntaxhighlighter .toolbar a {\n  color: #aaaaff !important;\n}\n.syntaxhighlighter .toolbar a:hover {\n  color: #9ccff4 !important;\n}\n.syntaxhighlighter .plain, .syntaxhighlighter .plain a {\n  color: lime !important;\n}\n.syntaxhighlighter .comments, .syntaxhighlighter .comments a {\n  color: #428bdd !important;\n}\n.syntaxhighlighter .string, .syntaxhighlighter .string a {\n  color: lime !important;\n}\n.syntaxhighlighter .keyword {\n  color: #aaaaff !important;\n}\n.syntaxhighlighter .preprocessor {\n  color: #8aa6c1 !important;\n}\n.syntaxhighlighter .variable {\n  color: aqua !important;\n}\n.syntaxhighlighter .value {\n  color: #f7e741 !important;\n}\n.syntaxhighlighter .functions {\n  color: #ff8000 !important;\n}\n.syntaxhighlighter .constants {\n  color: yellow !important;\n}\n.syntaxhighlighter .script {\n  font-weight: bold !important;\n  color: #aaaaff !important;\n  background-color: none !important;\n}\n.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {\n  color: red !important;\n}\n.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {\n  color: yellow !important;\n}\n.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {\n  color: #ffaa3e !important;\n}\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/styles/shCoreMidnight.css",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n.syntaxhighlighter a,\n.syntaxhighlighter div,\n.syntaxhighlighter code,\n.syntaxhighlighter table,\n.syntaxhighlighter table td,\n.syntaxhighlighter table tr,\n.syntaxhighlighter table tbody,\n.syntaxhighlighter table thead,\n.syntaxhighlighter table caption,\n.syntaxhighlighter textarea {\n  -moz-border-radius: 0 0 0 0 !important;\n  -webkit-border-radius: 0 0 0 0 !important;\n  background: none !important;\n  border: 0 !important;\n  bottom: auto !important;\n  float: none !important;\n  height: auto !important;\n  left: auto !important;\n  line-height: 1.1em !important;\n  margin: 0 !important;\n  outline: 0 !important;\n  overflow: visible !important;\n  padding: 0 !important;\n  position: static !important;\n  right: auto !important;\n  text-align: left !important;\n  top: auto !important;\n  vertical-align: baseline !important;\n  width: auto !important;\n  box-sizing: content-box !important;\n  font-family: \"Consolas\", \"Bitstream Vera Sans Mono\", \"Courier New\", Courier, monospace !important;\n  font-weight: normal !important;\n  font-style: normal !important;\n  font-size: 1em !important;\n  min-height: inherit !important;\n  min-height: auto !important;\n}\n\n.syntaxhighlighter {\n  width: 100% !important;\n  margin: 1em 0 1em 0 !important;\n  position: relative !important;\n  overflow: auto !important;\n  font-size: 1em !important;\n}\n.syntaxhighlighter.source {\n  overflow: hidden !important;\n}\n.syntaxhighlighter .bold {\n  font-weight: bold !important;\n}\n.syntaxhighlighter .italic {\n  font-style: italic !important;\n}\n.syntaxhighlighter .line {\n  white-space: pre !important;\n}\n.syntaxhighlighter table {\n  width: 100% !important;\n}\n.syntaxhighlighter table caption {\n  text-align: left !important;\n  padding: .5em 0 0.5em 1em !important;\n}\n.syntaxhighlighter table td.code {\n  width: 100% !important;\n}\n.syntaxhighlighter table td.code .container {\n  position: relative !important;\n}\n.syntaxhighlighter table td.code .container textarea {\n  box-sizing: border-box !important;\n  position: absolute !important;\n  left: 0 !important;\n  top: 0 !important;\n  width: 100% !important;\n  height: 100% !important;\n  border: none !important;\n  background: white !important;\n  padding-left: 1em !important;\n  overflow: hidden !important;\n  white-space: pre !important;\n}\n.syntaxhighlighter table td.gutter .line {\n  text-align: right !important;\n  padding: 0 0.5em 0 1em !important;\n}\n.syntaxhighlighter table td.code .line {\n  padding: 0 1em !important;\n}\n.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {\n  padding-left: 0em !important;\n}\n.syntaxhighlighter.show {\n  display: block !important;\n}\n.syntaxhighlighter.collapsed table {\n  display: none !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  padding: 0.1em 0.8em 0em 0.8em !important;\n  font-size: 1em !important;\n  position: static !important;\n  width: auto !important;\n  height: auto !important;\n}\n.syntaxhighlighter.collapsed .toolbar span {\n  display: inline !important;\n  margin-right: 1em !important;\n}\n.syntaxhighlighter.collapsed .toolbar span a {\n  padding: 0 !important;\n  display: none !important;\n}\n.syntaxhighlighter.collapsed .toolbar span a.expandSource {\n  display: inline !important;\n}\n.syntaxhighlighter .toolbar {\n  position: absolute !important;\n  right: 1px !important;\n  top: 1px !important;\n  width: 11px !important;\n  height: 11px !important;\n  font-size: 10px !important;\n  z-index: 10 !important;\n}\n.syntaxhighlighter .toolbar span.title {\n  display: inline !important;\n}\n.syntaxhighlighter .toolbar a {\n  display: block !important;\n  text-align: center !important;\n  text-decoration: none !important;\n  padding-top: 1px !important;\n}\n.syntaxhighlighter .toolbar a.expandSource {\n  display: none !important;\n}\n.syntaxhighlighter.ie {\n  font-size: .9em !important;\n  padding: 1px 0 1px 0 !important;\n}\n.syntaxhighlighter.ie .toolbar {\n  line-height: 8px !important;\n}\n.syntaxhighlighter.ie .toolbar a {\n  padding-top: 0px !important;\n}\n.syntaxhighlighter.printing .line.alt1 .content,\n.syntaxhighlighter.printing .line.alt2 .content,\n.syntaxhighlighter.printing .line.highlighted .number,\n.syntaxhighlighter.printing .line.highlighted.alt1 .content,\n.syntaxhighlighter.printing .line.highlighted.alt2 .content {\n  background: none !important;\n}\n.syntaxhighlighter.printing .line .number {\n  color: #bbbbbb !important;\n}\n.syntaxhighlighter.printing .line .content {\n  color: black !important;\n}\n.syntaxhighlighter.printing .toolbar {\n  display: none !important;\n}\n.syntaxhighlighter.printing a {\n  text-decoration: none !important;\n}\n.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {\n  color: black !important;\n}\n.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {\n  color: #008200 !important;\n}\n.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {\n  color: blue !important;\n}\n.syntaxhighlighter.printing .keyword {\n  color: #006699 !important;\n  font-weight: bold !important;\n}\n.syntaxhighlighter.printing .preprocessor {\n  color: gray !important;\n}\n.syntaxhighlighter.printing .variable {\n  color: #aa7700 !important;\n}\n.syntaxhighlighter.printing .value {\n  color: #009900 !important;\n}\n.syntaxhighlighter.printing .functions {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter.printing .constants {\n  color: #0066cc !important;\n}\n.syntaxhighlighter.printing .script {\n  font-weight: bold !important;\n}\n.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {\n  color: gray !important;\n}\n.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {\n  color: red !important;\n}\n.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {\n  color: black !important;\n}\n\n.syntaxhighlighter {\n  background-color: #0f192a !important;\n}\n.syntaxhighlighter .line.alt1 {\n  background-color: #0f192a !important;\n}\n.syntaxhighlighter .line.alt2 {\n  background-color: #0f192a !important;\n}\n.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {\n  background-color: #253e5a !important;\n}\n.syntaxhighlighter .line.highlighted.number {\n  color: #38566f !important;\n}\n.syntaxhighlighter table caption {\n  color: #d1edff !important;\n}\n.syntaxhighlighter .gutter {\n  color: #afafaf !important;\n}\n.syntaxhighlighter .gutter .line {\n  border-right: 3px solid #435a5f !important;\n}\n.syntaxhighlighter .gutter .line.highlighted {\n  background-color: #435a5f !important;\n  color: #0f192a !important;\n}\n.syntaxhighlighter.printing .line .content {\n  border: none !important;\n}\n.syntaxhighlighter.collapsed {\n  overflow: visible !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  color: #428bdd !important;\n  background: black !important;\n  border: 1px solid #435a5f !important;\n}\n.syntaxhighlighter.collapsed .toolbar a {\n  color: #428bdd !important;\n}\n.syntaxhighlighter.collapsed .toolbar a:hover {\n  color: #1dc116 !important;\n}\n.syntaxhighlighter .toolbar {\n  color: #d1edff !important;\n  background: #435a5f !important;\n  border: none !important;\n}\n.syntaxhighlighter .toolbar a {\n  color: #d1edff !important;\n}\n.syntaxhighlighter .toolbar a:hover {\n  color: #8aa6c1 !important;\n}\n.syntaxhighlighter .plain, .syntaxhighlighter .plain a {\n  color: #d1edff !important;\n}\n.syntaxhighlighter .comments, .syntaxhighlighter .comments a {\n  color: #428bdd !important;\n}\n.syntaxhighlighter .string, .syntaxhighlighter .string a {\n  color: #1dc116 !important;\n}\n.syntaxhighlighter .keyword {\n  color: #b43d3d !important;\n}\n.syntaxhighlighter .preprocessor {\n  color: #8aa6c1 !important;\n}\n.syntaxhighlighter .variable {\n  color: #ffaa3e !important;\n}\n.syntaxhighlighter .value {\n  color: #f7e741 !important;\n}\n.syntaxhighlighter .functions {\n  color: #ffaa3e !important;\n}\n.syntaxhighlighter .constants {\n  color: #e0e8ff !important;\n}\n.syntaxhighlighter .script {\n  font-weight: bold !important;\n  color: #b43d3d !important;\n  background-color: none !important;\n}\n.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {\n  color: #f8bb00 !important;\n}\n.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {\n  color: white !important;\n}\n.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {\n  color: #ffaa3e !important;\n}\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/styles/shCoreRDark.css",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n.syntaxhighlighter a,\n.syntaxhighlighter div,\n.syntaxhighlighter code,\n.syntaxhighlighter table,\n.syntaxhighlighter table td,\n.syntaxhighlighter table tr,\n.syntaxhighlighter table tbody,\n.syntaxhighlighter table thead,\n.syntaxhighlighter table caption,\n.syntaxhighlighter textarea {\n  -moz-border-radius: 0 0 0 0 !important;\n  -webkit-border-radius: 0 0 0 0 !important;\n  background: none !important;\n  border: 0 !important;\n  bottom: auto !important;\n  float: none !important;\n  height: auto !important;\n  left: auto !important;\n  line-height: 1.1em !important;\n  margin: 0 !important;\n  outline: 0 !important;\n  overflow: visible !important;\n  padding: 0 !important;\n  position: static !important;\n  right: auto !important;\n  text-align: left !important;\n  top: auto !important;\n  vertical-align: baseline !important;\n  width: auto !important;\n  box-sizing: content-box !important;\n  font-family: \"Consolas\", \"Bitstream Vera Sans Mono\", \"Courier New\", Courier, monospace !important;\n  font-weight: normal !important;\n  font-style: normal !important;\n  font-size: 1em !important;\n  min-height: inherit !important;\n  min-height: auto !important;\n}\n\n.syntaxhighlighter {\n  width: 100% !important;\n  margin: 1em 0 1em 0 !important;\n  position: relative !important;\n  overflow: auto !important;\n  font-size: 1em !important;\n}\n.syntaxhighlighter.source {\n  overflow: hidden !important;\n}\n.syntaxhighlighter .bold {\n  font-weight: bold !important;\n}\n.syntaxhighlighter .italic {\n  font-style: italic !important;\n}\n.syntaxhighlighter .line {\n  white-space: pre !important;\n}\n.syntaxhighlighter table {\n  width: 100% !important;\n}\n.syntaxhighlighter table caption {\n  text-align: left !important;\n  padding: .5em 0 0.5em 1em !important;\n}\n.syntaxhighlighter table td.code {\n  width: 100% !important;\n}\n.syntaxhighlighter table td.code .container {\n  position: relative !important;\n}\n.syntaxhighlighter table td.code .container textarea {\n  box-sizing: border-box !important;\n  position: absolute !important;\n  left: 0 !important;\n  top: 0 !important;\n  width: 100% !important;\n  height: 100% !important;\n  border: none !important;\n  background: white !important;\n  padding-left: 1em !important;\n  overflow: hidden !important;\n  white-space: pre !important;\n}\n.syntaxhighlighter table td.gutter .line {\n  text-align: right !important;\n  padding: 0 0.5em 0 1em !important;\n}\n.syntaxhighlighter table td.code .line {\n  padding: 0 1em !important;\n}\n.syntaxhighlighter.nogutter td.code .container textarea, .syntaxhighlighter.nogutter td.code .line {\n  padding-left: 0em !important;\n}\n.syntaxhighlighter.show {\n  display: block !important;\n}\n.syntaxhighlighter.collapsed table {\n  display: none !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  padding: 0.1em 0.8em 0em 0.8em !important;\n  font-size: 1em !important;\n  position: static !important;\n  width: auto !important;\n  height: auto !important;\n}\n.syntaxhighlighter.collapsed .toolbar span {\n  display: inline !important;\n  margin-right: 1em !important;\n}\n.syntaxhighlighter.collapsed .toolbar span a {\n  padding: 0 !important;\n  display: none !important;\n}\n.syntaxhighlighter.collapsed .toolbar span a.expandSource {\n  display: inline !important;\n}\n.syntaxhighlighter .toolbar {\n  position: absolute !important;\n  right: 1px !important;\n  top: 1px !important;\n  width: 11px !important;\n  height: 11px !important;\n  font-size: 10px !important;\n  z-index: 10 !important;\n}\n.syntaxhighlighter .toolbar span.title {\n  display: inline !important;\n}\n.syntaxhighlighter .toolbar a {\n  display: block !important;\n  text-align: center !important;\n  text-decoration: none !important;\n  padding-top: 1px !important;\n}\n.syntaxhighlighter .toolbar a.expandSource {\n  display: none !important;\n}\n.syntaxhighlighter.ie {\n  font-size: .9em !important;\n  padding: 1px 0 1px 0 !important;\n}\n.syntaxhighlighter.ie .toolbar {\n  line-height: 8px !important;\n}\n.syntaxhighlighter.ie .toolbar a {\n  padding-top: 0px !important;\n}\n.syntaxhighlighter.printing .line.alt1 .content,\n.syntaxhighlighter.printing .line.alt2 .content,\n.syntaxhighlighter.printing .line.highlighted .number,\n.syntaxhighlighter.printing .line.highlighted.alt1 .content,\n.syntaxhighlighter.printing .line.highlighted.alt2 .content {\n  background: none !important;\n}\n.syntaxhighlighter.printing .line .number {\n  color: #bbbbbb !important;\n}\n.syntaxhighlighter.printing .line .content {\n  color: black !important;\n}\n.syntaxhighlighter.printing .toolbar {\n  display: none !important;\n}\n.syntaxhighlighter.printing a {\n  text-decoration: none !important;\n}\n.syntaxhighlighter.printing .plain, .syntaxhighlighter.printing .plain a {\n  color: black !important;\n}\n.syntaxhighlighter.printing .comments, .syntaxhighlighter.printing .comments a {\n  color: #008200 !important;\n}\n.syntaxhighlighter.printing .string, .syntaxhighlighter.printing .string a {\n  color: blue !important;\n}\n.syntaxhighlighter.printing .keyword {\n  color: #006699 !important;\n  font-weight: bold !important;\n}\n.syntaxhighlighter.printing .preprocessor {\n  color: gray !important;\n}\n.syntaxhighlighter.printing .variable {\n  color: #aa7700 !important;\n}\n.syntaxhighlighter.printing .value {\n  color: #009900 !important;\n}\n.syntaxhighlighter.printing .functions {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter.printing .constants {\n  color: #0066cc !important;\n}\n.syntaxhighlighter.printing .script {\n  font-weight: bold !important;\n}\n.syntaxhighlighter.printing .color1, .syntaxhighlighter.printing .color1 a {\n  color: gray !important;\n}\n.syntaxhighlighter.printing .color2, .syntaxhighlighter.printing .color2 a {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter.printing .color3, .syntaxhighlighter.printing .color3 a {\n  color: red !important;\n}\n.syntaxhighlighter.printing .break, .syntaxhighlighter.printing .break a {\n  color: black !important;\n}\n\n.syntaxhighlighter {\n  background-color: #1b2426 !important;\n}\n.syntaxhighlighter .line.alt1 {\n  background-color: #1b2426 !important;\n}\n.syntaxhighlighter .line.alt2 {\n  background-color: #1b2426 !important;\n}\n.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {\n  background-color: #323e41 !important;\n}\n.syntaxhighlighter .line.highlighted.number {\n  color: #b9bdb6 !important;\n}\n.syntaxhighlighter table caption {\n  color: #b9bdb6 !important;\n}\n.syntaxhighlighter .gutter {\n  color: #afafaf !important;\n}\n.syntaxhighlighter .gutter .line {\n  border-right: 3px solid #435a5f !important;\n}\n.syntaxhighlighter .gutter .line.highlighted {\n  background-color: #435a5f !important;\n  color: #1b2426 !important;\n}\n.syntaxhighlighter.printing .line .content {\n  border: none !important;\n}\n.syntaxhighlighter.collapsed {\n  overflow: visible !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  color: #5ba1cf !important;\n  background: black !important;\n  border: 1px solid #435a5f !important;\n}\n.syntaxhighlighter.collapsed .toolbar a {\n  color: #5ba1cf !important;\n}\n.syntaxhighlighter.collapsed .toolbar a:hover {\n  color: #5ce638 !important;\n}\n.syntaxhighlighter .toolbar {\n  color: white !important;\n  background: #435a5f !important;\n  border: none !important;\n}\n.syntaxhighlighter .toolbar a {\n  color: white !important;\n}\n.syntaxhighlighter .toolbar a:hover {\n  color: #e0e8ff !important;\n}\n.syntaxhighlighter .plain, .syntaxhighlighter .plain a {\n  color: #b9bdb6 !important;\n}\n.syntaxhighlighter .comments, .syntaxhighlighter .comments a {\n  color: #878a85 !important;\n}\n.syntaxhighlighter .string, .syntaxhighlighter .string a {\n  color: #5ce638 !important;\n}\n.syntaxhighlighter .keyword {\n  color: #5ba1cf !important;\n}\n.syntaxhighlighter .preprocessor {\n  color: #435a5f !important;\n}\n.syntaxhighlighter .variable {\n  color: #ffaa3e !important;\n}\n.syntaxhighlighter .value {\n  color: #009900 !important;\n}\n.syntaxhighlighter .functions {\n  color: #ffaa3e !important;\n}\n.syntaxhighlighter .constants {\n  color: #e0e8ff !important;\n}\n.syntaxhighlighter .script {\n  font-weight: bold !important;\n  color: #5ba1cf !important;\n  background-color: none !important;\n}\n.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {\n  color: #e0e8ff !important;\n}\n.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {\n  color: white !important;\n}\n.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {\n  color: #ffaa3e !important;\n}\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/styles/shThemeDefault.css",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n.syntaxhighlighter {\n  background-color: white !important;\n}\n.syntaxhighlighter .line.alt1 {\n  background-color: white !important;\n}\n.syntaxhighlighter .line.alt2 {\n  background-color: white !important;\n}\n.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {\n  background-color: #e0e0e0 !important;\n}\n.syntaxhighlighter .line.highlighted.number {\n  color: black !important;\n}\n.syntaxhighlighter table caption {\n  color: black !important;\n}\n.syntaxhighlighter .gutter {\n  color: #afafaf !important;\n}\n.syntaxhighlighter .gutter .line {\n  border-right: 3px solid #6ce26c !important;\n}\n.syntaxhighlighter .gutter .line.highlighted {\n  background-color: #6ce26c !important;\n  color: white !important;\n}\n.syntaxhighlighter.printing .line .content {\n  border: none !important;\n}\n.syntaxhighlighter.collapsed {\n  overflow: visible !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  color: blue !important;\n  background: white !important;\n  border: 1px solid #6ce26c !important;\n}\n.syntaxhighlighter.collapsed .toolbar a {\n  color: blue !important;\n}\n.syntaxhighlighter.collapsed .toolbar a:hover {\n  color: red !important;\n}\n.syntaxhighlighter .toolbar {\n  color: white !important;\n  background: #6ce26c !important;\n  border: none !important;\n}\n.syntaxhighlighter .toolbar a {\n  color: white !important;\n}\n.syntaxhighlighter .toolbar a:hover {\n  color: black !important;\n}\n.syntaxhighlighter .plain, .syntaxhighlighter .plain a {\n  color: black !important;\n}\n.syntaxhighlighter .comments, .syntaxhighlighter .comments a {\n  color: #008200 !important;\n}\n.syntaxhighlighter .string, .syntaxhighlighter .string a {\n  color: blue !important;\n}\n.syntaxhighlighter .keyword {\n  color: #006699 !important;\n}\n.syntaxhighlighter .preprocessor {\n  color: gray !important;\n}\n.syntaxhighlighter .variable {\n  color: #aa7700 !important;\n}\n.syntaxhighlighter .value {\n  color: #009900 !important;\n}\n.syntaxhighlighter .functions {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter .constants {\n  color: #0066cc !important;\n}\n.syntaxhighlighter .script {\n  font-weight: bold !important;\n  color: #006699 !important;\n  background-color: none !important;\n}\n.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {\n  color: gray !important;\n}\n.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {\n  color: red !important;\n}\n\n.syntaxhighlighter .keyword {\n  font-weight: bold !important;\n}\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/styles/shThemeDjango.css",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n.syntaxhighlighter {\n  background-color: #0a2b1d !important;\n}\n.syntaxhighlighter .line.alt1 {\n  background-color: #0a2b1d !important;\n}\n.syntaxhighlighter .line.alt2 {\n  background-color: #0a2b1d !important;\n}\n.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {\n  background-color: #233729 !important;\n}\n.syntaxhighlighter .line.highlighted.number {\n  color: white !important;\n}\n.syntaxhighlighter table caption {\n  color: #f8f8f8 !important;\n}\n.syntaxhighlighter .gutter {\n  color: #497958 !important;\n}\n.syntaxhighlighter .gutter .line {\n  border-right: 3px solid #41a83e !important;\n}\n.syntaxhighlighter .gutter .line.highlighted {\n  background-color: #41a83e !important;\n  color: #0a2b1d !important;\n}\n.syntaxhighlighter.printing .line .content {\n  border: none !important;\n}\n.syntaxhighlighter.collapsed {\n  overflow: visible !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  color: #96dd3b !important;\n  background: black !important;\n  border: 1px solid #41a83e !important;\n}\n.syntaxhighlighter.collapsed .toolbar a {\n  color: #96dd3b !important;\n}\n.syntaxhighlighter.collapsed .toolbar a:hover {\n  color: white !important;\n}\n.syntaxhighlighter .toolbar {\n  color: white !important;\n  background: #41a83e !important;\n  border: none !important;\n}\n.syntaxhighlighter .toolbar a {\n  color: white !important;\n}\n.syntaxhighlighter .toolbar a:hover {\n  color: #ffe862 !important;\n}\n.syntaxhighlighter .plain, .syntaxhighlighter .plain a {\n  color: #f8f8f8 !important;\n}\n.syntaxhighlighter .comments, .syntaxhighlighter .comments a {\n  color: #336442 !important;\n}\n.syntaxhighlighter .string, .syntaxhighlighter .string a {\n  color: #9df39f !important;\n}\n.syntaxhighlighter .keyword {\n  color: #96dd3b !important;\n}\n.syntaxhighlighter .preprocessor {\n  color: #91bb9e !important;\n}\n.syntaxhighlighter .variable {\n  color: #ffaa3e !important;\n}\n.syntaxhighlighter .value {\n  color: #f7e741 !important;\n}\n.syntaxhighlighter .functions {\n  color: #ffaa3e !important;\n}\n.syntaxhighlighter .constants {\n  color: #e0e8ff !important;\n}\n.syntaxhighlighter .script {\n  font-weight: bold !important;\n  color: #96dd3b !important;\n  background-color: none !important;\n}\n.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {\n  color: #eb939a !important;\n}\n.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {\n  color: #91bb9e !important;\n}\n.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {\n  color: #edef7d !important;\n}\n\n.syntaxhighlighter .comments {\n  font-style: italic !important;\n}\n.syntaxhighlighter .keyword {\n  font-weight: bold !important;\n}\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/styles/shThemeEclipse.css",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n.syntaxhighlighter {\n  background-color: white !important;\n}\n.syntaxhighlighter .line.alt1 {\n  background-color: white !important;\n}\n.syntaxhighlighter .line.alt2 {\n  background-color: white !important;\n}\n.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {\n  background-color: #c3defe !important;\n}\n.syntaxhighlighter .line.highlighted.number {\n  color: white !important;\n}\n.syntaxhighlighter table caption {\n  color: black !important;\n}\n.syntaxhighlighter .gutter {\n  color: #787878 !important;\n}\n.syntaxhighlighter .gutter .line {\n  border-right: 3px solid #d4d0c8 !important;\n}\n.syntaxhighlighter .gutter .line.highlighted {\n  background-color: #d4d0c8 !important;\n  color: white !important;\n}\n.syntaxhighlighter.printing .line .content {\n  border: none !important;\n}\n.syntaxhighlighter.collapsed {\n  overflow: visible !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  color: #3f5fbf !important;\n  background: white !important;\n  border: 1px solid #d4d0c8 !important;\n}\n.syntaxhighlighter.collapsed .toolbar a {\n  color: #3f5fbf !important;\n}\n.syntaxhighlighter.collapsed .toolbar a:hover {\n  color: #aa7700 !important;\n}\n.syntaxhighlighter .toolbar {\n  color: #a0a0a0 !important;\n  background: #d4d0c8 !important;\n  border: none !important;\n}\n.syntaxhighlighter .toolbar a {\n  color: #a0a0a0 !important;\n}\n.syntaxhighlighter .toolbar a:hover {\n  color: red !important;\n}\n.syntaxhighlighter .plain, .syntaxhighlighter .plain a {\n  color: black !important;\n}\n.syntaxhighlighter .comments, .syntaxhighlighter .comments a {\n  color: #3f5fbf !important;\n}\n.syntaxhighlighter .string, .syntaxhighlighter .string a {\n  color: #2a00ff !important;\n}\n.syntaxhighlighter .keyword {\n  color: #7f0055 !important;\n}\n.syntaxhighlighter .preprocessor {\n  color: #646464 !important;\n}\n.syntaxhighlighter .variable {\n  color: #aa7700 !important;\n}\n.syntaxhighlighter .value {\n  color: #009900 !important;\n}\n.syntaxhighlighter .functions {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter .constants {\n  color: #0066cc !important;\n}\n.syntaxhighlighter .script {\n  font-weight: bold !important;\n  color: #7f0055 !important;\n  background-color: none !important;\n}\n.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {\n  color: gray !important;\n}\n.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {\n  color: #ff1493 !important;\n}\n.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {\n  color: red !important;\n}\n\n.syntaxhighlighter .keyword {\n  font-weight: bold !important;\n}\n.syntaxhighlighter .xml .keyword {\n  color: #3f7f7f !important;\n  font-weight: normal !important;\n}\n.syntaxhighlighter .xml .color1, .syntaxhighlighter .xml .color1 a {\n  color: #7f007f !important;\n}\n.syntaxhighlighter .xml .string {\n  font-style: italic !important;\n  color: #2a00ff !important;\n}\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/styles/shThemeEmacs.css",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n.syntaxhighlighter {\n  background-color: black !important;\n}\n.syntaxhighlighter .line.alt1 {\n  background-color: black !important;\n}\n.syntaxhighlighter .line.alt2 {\n  background-color: black !important;\n}\n.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {\n  background-color: #2a3133 !important;\n}\n.syntaxhighlighter .line.highlighted.number {\n  color: white !important;\n}\n.syntaxhighlighter table caption {\n  color: #d3d3d3 !important;\n}\n.syntaxhighlighter .gutter {\n  color: #d3d3d3 !important;\n}\n.syntaxhighlighter .gutter .line {\n  border-right: 3px solid #990000 !important;\n}\n.syntaxhighlighter .gutter .line.highlighted {\n  background-color: #990000 !important;\n  color: black !important;\n}\n.syntaxhighlighter.printing .line .content {\n  border: none !important;\n}\n.syntaxhighlighter.collapsed {\n  overflow: visible !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  color: #ebdb8d !important;\n  background: black !important;\n  border: 1px solid #990000 !important;\n}\n.syntaxhighlighter.collapsed .toolbar a {\n  color: #ebdb8d !important;\n}\n.syntaxhighlighter.collapsed .toolbar a:hover {\n  color: #ff7d27 !important;\n}\n.syntaxhighlighter .toolbar {\n  color: white !important;\n  background: #990000 !important;\n  border: none !important;\n}\n.syntaxhighlighter .toolbar a {\n  color: white !important;\n}\n.syntaxhighlighter .toolbar a:hover {\n  color: #9ccff4 !important;\n}\n.syntaxhighlighter .plain, .syntaxhighlighter .plain a {\n  color: #d3d3d3 !important;\n}\n.syntaxhighlighter .comments, .syntaxhighlighter .comments a {\n  color: #ff7d27 !important;\n}\n.syntaxhighlighter .string, .syntaxhighlighter .string a {\n  color: #ff9e7b !important;\n}\n.syntaxhighlighter .keyword {\n  color: aqua !important;\n}\n.syntaxhighlighter .preprocessor {\n  color: #aec4de !important;\n}\n.syntaxhighlighter .variable {\n  color: #ffaa3e !important;\n}\n.syntaxhighlighter .value {\n  color: #009900 !important;\n}\n.syntaxhighlighter .functions {\n  color: #81cef9 !important;\n}\n.syntaxhighlighter .constants {\n  color: #ff9e7b !important;\n}\n.syntaxhighlighter .script {\n  font-weight: bold !important;\n  color: aqua !important;\n  background-color: none !important;\n}\n.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {\n  color: #ebdb8d !important;\n}\n.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {\n  color: #ff7d27 !important;\n}\n.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {\n  color: #aec4de !important;\n}\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/styles/shThemeFadeToGrey.css",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n.syntaxhighlighter {\n  background-color: #121212 !important;\n}\n.syntaxhighlighter .line.alt1 {\n  background-color: #121212 !important;\n}\n.syntaxhighlighter .line.alt2 {\n  background-color: #121212 !important;\n}\n.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {\n  background-color: #2c2c29 !important;\n}\n.syntaxhighlighter .line.highlighted.number {\n  color: white !important;\n}\n.syntaxhighlighter table caption {\n  color: white !important;\n}\n.syntaxhighlighter .gutter {\n  color: #afafaf !important;\n}\n.syntaxhighlighter .gutter .line {\n  border-right: 3px solid #3185b9 !important;\n}\n.syntaxhighlighter .gutter .line.highlighted {\n  background-color: #3185b9 !important;\n  color: #121212 !important;\n}\n.syntaxhighlighter.printing .line .content {\n  border: none !important;\n}\n.syntaxhighlighter.collapsed {\n  overflow: visible !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  color: #3185b9 !important;\n  background: black !important;\n  border: 1px solid #3185b9 !important;\n}\n.syntaxhighlighter.collapsed .toolbar a {\n  color: #3185b9 !important;\n}\n.syntaxhighlighter.collapsed .toolbar a:hover {\n  color: #d01d33 !important;\n}\n.syntaxhighlighter .toolbar {\n  color: white !important;\n  background: #3185b9 !important;\n  border: none !important;\n}\n.syntaxhighlighter .toolbar a {\n  color: white !important;\n}\n.syntaxhighlighter .toolbar a:hover {\n  color: #96daff !important;\n}\n.syntaxhighlighter .plain, .syntaxhighlighter .plain a {\n  color: white !important;\n}\n.syntaxhighlighter .comments, .syntaxhighlighter .comments a {\n  color: #696854 !important;\n}\n.syntaxhighlighter .string, .syntaxhighlighter .string a {\n  color: #e3e658 !important;\n}\n.syntaxhighlighter .keyword {\n  color: #d01d33 !important;\n}\n.syntaxhighlighter .preprocessor {\n  color: #435a5f !important;\n}\n.syntaxhighlighter .variable {\n  color: #898989 !important;\n}\n.syntaxhighlighter .value {\n  color: #009900 !important;\n}\n.syntaxhighlighter .functions {\n  color: #aaaaaa !important;\n}\n.syntaxhighlighter .constants {\n  color: #96daff !important;\n}\n.syntaxhighlighter .script {\n  font-weight: bold !important;\n  color: #d01d33 !important;\n  background-color: none !important;\n}\n.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {\n  color: #ffc074 !important;\n}\n.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {\n  color: #4a8cdb !important;\n}\n.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {\n  color: #96daff !important;\n}\n\n.syntaxhighlighter .functions {\n  font-weight: bold !important;\n}\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/styles/shThemeMDUltra.css",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n.syntaxhighlighter {\n  background-color: #222222 !important;\n}\n.syntaxhighlighter .line.alt1 {\n  background-color: #222222 !important;\n}\n.syntaxhighlighter .line.alt2 {\n  background-color: #222222 !important;\n}\n.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {\n  background-color: #253e5a !important;\n}\n.syntaxhighlighter .line.highlighted.number {\n  color: white !important;\n}\n.syntaxhighlighter table caption {\n  color: lime !important;\n}\n.syntaxhighlighter .gutter {\n  color: #38566f !important;\n}\n.syntaxhighlighter .gutter .line {\n  border-right: 3px solid #435a5f !important;\n}\n.syntaxhighlighter .gutter .line.highlighted {\n  background-color: #435a5f !important;\n  color: #222222 !important;\n}\n.syntaxhighlighter.printing .line .content {\n  border: none !important;\n}\n.syntaxhighlighter.collapsed {\n  overflow: visible !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  color: #428bdd !important;\n  background: black !important;\n  border: 1px solid #435a5f !important;\n}\n.syntaxhighlighter.collapsed .toolbar a {\n  color: #428bdd !important;\n}\n.syntaxhighlighter.collapsed .toolbar a:hover {\n  color: lime !important;\n}\n.syntaxhighlighter .toolbar {\n  color: #aaaaff !important;\n  background: #435a5f !important;\n  border: none !important;\n}\n.syntaxhighlighter .toolbar a {\n  color: #aaaaff !important;\n}\n.syntaxhighlighter .toolbar a:hover {\n  color: #9ccff4 !important;\n}\n.syntaxhighlighter .plain, .syntaxhighlighter .plain a {\n  color: lime !important;\n}\n.syntaxhighlighter .comments, .syntaxhighlighter .comments a {\n  color: #428bdd !important;\n}\n.syntaxhighlighter .string, .syntaxhighlighter .string a {\n  color: lime !important;\n}\n.syntaxhighlighter .keyword {\n  color: #aaaaff !important;\n}\n.syntaxhighlighter .preprocessor {\n  color: #8aa6c1 !important;\n}\n.syntaxhighlighter .variable {\n  color: aqua !important;\n}\n.syntaxhighlighter .value {\n  color: #f7e741 !important;\n}\n.syntaxhighlighter .functions {\n  color: #ff8000 !important;\n}\n.syntaxhighlighter .constants {\n  color: yellow !important;\n}\n.syntaxhighlighter .script {\n  font-weight: bold !important;\n  color: #aaaaff !important;\n  background-color: none !important;\n}\n.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {\n  color: red !important;\n}\n.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {\n  color: yellow !important;\n}\n.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {\n  color: #ffaa3e !important;\n}\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/styles/shThemeMidnight.css",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n.syntaxhighlighter {\n  background-color: #0f192a !important;\n}\n.syntaxhighlighter .line.alt1 {\n  background-color: #0f192a !important;\n}\n.syntaxhighlighter .line.alt2 {\n  background-color: #0f192a !important;\n}\n.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {\n  background-color: #253e5a !important;\n}\n.syntaxhighlighter .line.highlighted.number {\n  color: #38566f !important;\n}\n.syntaxhighlighter table caption {\n  color: #d1edff !important;\n}\n.syntaxhighlighter .gutter {\n  color: #afafaf !important;\n}\n.syntaxhighlighter .gutter .line {\n  border-right: 3px solid #435a5f !important;\n}\n.syntaxhighlighter .gutter .line.highlighted {\n  background-color: #435a5f !important;\n  color: #0f192a !important;\n}\n.syntaxhighlighter.printing .line .content {\n  border: none !important;\n}\n.syntaxhighlighter.collapsed {\n  overflow: visible !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  color: #428bdd !important;\n  background: black !important;\n  border: 1px solid #435a5f !important;\n}\n.syntaxhighlighter.collapsed .toolbar a {\n  color: #428bdd !important;\n}\n.syntaxhighlighter.collapsed .toolbar a:hover {\n  color: #1dc116 !important;\n}\n.syntaxhighlighter .toolbar {\n  color: #d1edff !important;\n  background: #435a5f !important;\n  border: none !important;\n}\n.syntaxhighlighter .toolbar a {\n  color: #d1edff !important;\n}\n.syntaxhighlighter .toolbar a:hover {\n  color: #8aa6c1 !important;\n}\n.syntaxhighlighter .plain, .syntaxhighlighter .plain a {\n  color: #d1edff !important;\n}\n.syntaxhighlighter .comments, .syntaxhighlighter .comments a {\n  color: #428bdd !important;\n}\n.syntaxhighlighter .string, .syntaxhighlighter .string a {\n  color: #1dc116 !important;\n}\n.syntaxhighlighter .keyword {\n  color: #b43d3d !important;\n}\n.syntaxhighlighter .preprocessor {\n  color: #8aa6c1 !important;\n}\n.syntaxhighlighter .variable {\n  color: #ffaa3e !important;\n}\n.syntaxhighlighter .value {\n  color: #f7e741 !important;\n}\n.syntaxhighlighter .functions {\n  color: #ffaa3e !important;\n}\n.syntaxhighlighter .constants {\n  color: #e0e8ff !important;\n}\n.syntaxhighlighter .script {\n  font-weight: bold !important;\n  color: #b43d3d !important;\n  background-color: none !important;\n}\n.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {\n  color: #f8bb00 !important;\n}\n.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {\n  color: white !important;\n}\n.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {\n  color: #ffaa3e !important;\n}\n"
  },
  {
    "path": "newscoop/js/syntaxhighlighter/styles/shThemeRDark.css",
    "content": "/**\n * SyntaxHighlighter\n * http://alexgorbatchev.com/SyntaxHighlighter\n *\n * SyntaxHighlighter is donationware. If you are using it, please donate.\n * http://alexgorbatchev.com/SyntaxHighlighter/donate.html\n *\n * @version\n * 3.0.83 (July 02 2010)\n * \n * @copyright\n * Copyright (C) 2004-2010 Alex Gorbatchev.\n *\n * @license\n * Dual licensed under the MIT and GPL licenses.\n */\n.syntaxhighlighter {\n  background-color: #1b2426 !important;\n}\n.syntaxhighlighter .line.alt1 {\n  background-color: #1b2426 !important;\n}\n.syntaxhighlighter .line.alt2 {\n  background-color: #1b2426 !important;\n}\n.syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {\n  background-color: #323e41 !important;\n}\n.syntaxhighlighter .line.highlighted.number {\n  color: #b9bdb6 !important;\n}\n.syntaxhighlighter table caption {\n  color: #b9bdb6 !important;\n}\n.syntaxhighlighter .gutter {\n  color: #afafaf !important;\n}\n.syntaxhighlighter .gutter .line {\n  border-right: 3px solid #435a5f !important;\n}\n.syntaxhighlighter .gutter .line.highlighted {\n  background-color: #435a5f !important;\n  color: #1b2426 !important;\n}\n.syntaxhighlighter.printing .line .content {\n  border: none !important;\n}\n.syntaxhighlighter.collapsed {\n  overflow: visible !important;\n}\n.syntaxhighlighter.collapsed .toolbar {\n  color: #5ba1cf !important;\n  background: black !important;\n  border: 1px solid #435a5f !important;\n}\n.syntaxhighlighter.collapsed .toolbar a {\n  color: #5ba1cf !important;\n}\n.syntaxhighlighter.collapsed .toolbar a:hover {\n  color: #5ce638 !important;\n}\n.syntaxhighlighter .toolbar {\n  color: white !important;\n  background: #435a5f !important;\n  border: none !important;\n}\n.syntaxhighlighter .toolbar a {\n  color: white !important;\n}\n.syntaxhighlighter .toolbar a:hover {\n  color: #e0e8ff !important;\n}\n.syntaxhighlighter .plain, .syntaxhighlighter .plain a {\n  color: #b9bdb6 !important;\n}\n.syntaxhighlighter .comments, .syntaxhighlighter .comments a {\n  color: #878a85 !important;\n}\n.syntaxhighlighter .string, .syntaxhighlighter .string a {\n  color: #5ce638 !important;\n}\n.syntaxhighlighter .keyword {\n  color: #5ba1cf !important;\n}\n.syntaxhighlighter .preprocessor {\n  color: #435a5f !important;\n}\n.syntaxhighlighter .variable {\n  color: #ffaa3e !important;\n}\n.syntaxhighlighter .value {\n  color: #009900 !important;\n}\n.syntaxhighlighter .functions {\n  color: #ffaa3e !important;\n}\n.syntaxhighlighter .constants {\n  color: #e0e8ff !important;\n}\n.syntaxhighlighter .script {\n  font-weight: bold !important;\n  color: #5ba1cf !important;\n  background-color: none !important;\n}\n.syntaxhighlighter .color1, .syntaxhighlighter .color1 a {\n  color: #e0e8ff !important;\n}\n.syntaxhighlighter .color2, .syntaxhighlighter .color2 a {\n  color: white !important;\n}\n.syntaxhighlighter .color3, .syntaxhighlighter .color3 a {\n  color: #ffaa3e !important;\n}\n"
  },
  {
    "path": "newscoop/js/tapmodo-Jcrop-5e58bc9/MIT-LICENSE.txt",
    "content": "Copyright (c) 2011 Tapmodo Interactive LLC,\n  http://github.com/tapmodo/Jcrop\n\nPermission is hereby granted, free of charge, to any person obtaining\na copy of this software and associated documentation files (the\n\"Software\"), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to\npermit persons to whom the Software is furnished to do so, subject to\nthe following conditions:\n\nThe above copyright notice and this permission notice shall be\nincluded in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\nNONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\nLIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\nOF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\nWITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n"
  },
  {
    "path": "newscoop/js/tapmodo-Jcrop-5e58bc9/build/LICENSE",
    "content": "/**\n__BUILD__\n * jQuery Image Cropping Plugin\n * @author Kelly Hallman <khallman@gmail.com>\n * Copyright (c) 2008-2011 Kelly Hallman - released under MIT License\n * https://github.com/tapmodo/Jcrop\n */\n"
  },
  {
    "path": "newscoop/js/tapmodo-Jcrop-5e58bc9/build/README",
    "content": "JCROP BUILD FOLDER\n------------------\n\nThe files in this folder are used by git and .git/hooks/pre-commit script.\nUnless you are developing with Jcrop and git, you can ignore what's here.\n\nIf you would like to use this as a pre-commit hook, I have included the\npre-commit hook that I use named pre-commit.bash\n\nIf you can use bash, copy this file to .git/hooks/pre-commit and make it\nexecutable. Your milage may vary!\n"
  },
  {
    "path": "newscoop/js/tapmodo-Jcrop-5e58bc9/build/minimize.bash",
    "content": "#!/bin/bash\n\necho 'Running Jcrop minimization script'\n\nMYDATE=`date +\"%Y%m%d\"`\nJCVER=`head js/jquery.Jcrop.js|grep Jcrop.js`\nMYBUILD=`echo \"$JCVER (build:$MYDATE)\"`\ncat build/LICENSE | sed -e \"s/__BUILD__/$MYBUILD/\" -e 's/jquery.Jcrop.js/jquery.Jcrop.min.js/' > js/jquery.Jcrop.min.js\njsmin < js/jquery.Jcrop.js >> js/jquery.Jcrop.min.js\ngit add js/jquery.Jcrop.min.js\n"
  },
  {
    "path": "newscoop/js/tapmodo-Jcrop-5e58bc9/build/pre-commit.bash",
    "content": "#!/bin/bash\n\necho 'Running pre-commit hook'\nif git diff --cached --exit-code js/jquery.Jcrop.js > /dev/null\nthen\n  echo 'No changes made to Jcrop javascript'\nelse\n  echo 'Building minimized Jcrop javascript file'\n  bash build/minimize.bash\nfi\n\n"
  },
  {
    "path": "newscoop/js/tapmodo-Jcrop-5e58bc9/css/jquery.Jcrop.css",
    "content": "/* Fixes issue here http://code.google.com/p/jcrop/issues/detail?id=1 */\n.jcrop-holder { text-align: left; }\n\n.jcrop-vline, .jcrop-hline\n{\n\tfont-size: 0px;\n\tposition: absolute;\n\tbackground: white url('Jcrop.gif') top left repeat;\n}\n.jcrop-vline { height: 100%; width: 1px !important; }\n.jcrop-hline { width: 100%; height: 1px !important; }\n.jcrop-vline.right { right: 0px; }\n.jcrop-hline.bottom { bottom: 0px; }\n.jcrop-handle {\n\tfont-size: 1px;\n\twidth: 7px !important;\n\theight: 7px !important;\n\tborder: 1px #eee solid;\n\tbackground-color: #333;\n}\n\n.jcrop-tracker { width: 100%; height: 100%; }\n\n.custom .jcrop-vline,\n.custom .jcrop-hline\n{\n\tbackground: yellow;\n}\n.custom .jcrop-handle\n{\n\tborder-color: black;\n\tbackground-color: #C7BB00;\n\t-moz-border-radius: 3px;\n\t-webkit-border-radius: 3px;\n}\n"
  },
  {
    "path": "newscoop/js/tapmodo-Jcrop-5e58bc9/demos/crop.php",
    "content": "<?php\n\n/**\n * Jcrop image cropping plugin for jQuery\n * Example cropping script\n * @copyright 2008-2009 Kelly Hallman\n * More info: http://deepliquid.com/content/Jcrop_Implementation_Theory.html\n */\n\nif ($_SERVER['REQUEST_METHOD'] == 'POST')\n{\n\t$targ_w = $targ_h = 150;\n\t$jpeg_quality = 90;\n\n\t$src = 'demo_files/flowers.jpg';\n\t$img_r = imagecreatefromjpeg($src);\n\t$dst_r = ImageCreateTrueColor( $targ_w, $targ_h );\n\n\timagecopyresampled($dst_r,$img_r,0,0,$_POST['x'],$_POST['y'],\n\t$targ_w,$targ_h,$_POST['w'],$_POST['h']);\n\n\theader('Content-type: image/jpeg');\n\timagejpeg($dst_r,null,$jpeg_quality);\n\n\texit;\n}\n\n// If not a POST request, display page below:\n\n?><html>\n\t<head>\n\n\t\t<script src=\"../js/jquery.min.js\"></script>\n\t\t<script src=\"../js/jquery.Jcrop.js\"></script>\n\t\t<link rel=\"stylesheet\" href=\"../css/jquery.Jcrop.css\" type=\"text/css\" />\n\t\t<link rel=\"stylesheet\" href=\"demo_files/demos.css\" type=\"text/css\" />\n\n\t\t<script language=\"Javascript\">\n\n\t\t\t$(function(){\n\n\t\t\t\t$('#cropbox').Jcrop({\n\t\t\t\t\taspectRatio: 1,\n\t\t\t\t\tonSelect: updateCoords\n\t\t\t\t});\n\n\t\t\t});\n\n\t\t\tfunction updateCoords(c)\n\t\t\t{\n\t\t\t\t$('#x').val(c.x);\n\t\t\t\t$('#y').val(c.y);\n\t\t\t\t$('#w').val(c.w);\n\t\t\t\t$('#h').val(c.h);\n\t\t\t};\n\n\t\t\tfunction checkCoords()\n\t\t\t{\n\t\t\t\tif (parseInt($('#w').val())) return true;\n\t\t\t\talert('Please select a crop region then press submit.');\n\t\t\t\treturn false;\n\t\t\t};\n\n\t\t</script>\n\n\t</head>\n\n\t<body>\n\n\t<div id=\"outer\">\n\t<div class=\"jcExample\">\n\t<div class=\"article\">\n\n\t\t<h1>Jcrop - Crop Behavior</h1>\n\n\t\t<!-- This is the image we're attaching Jcrop to -->\n\t\t<img src=\"demo_files/flowers.jpg\" id=\"cropbox\" />\n\n\t\t<!-- This is the form that our event handler fills -->\n\t\t<form action=\"crop.php\" method=\"post\" onsubmit=\"return checkCoords();\">\n\t\t\t<input type=\"hidden\" id=\"x\" name=\"x\" />\n\t\t\t<input type=\"hidden\" id=\"y\" name=\"y\" />\n\t\t\t<input type=\"hidden\" id=\"w\" name=\"w\" />\n\t\t\t<input type=\"hidden\" id=\"h\" name=\"h\" />\n\t\t\t<input type=\"submit\" value=\"Crop Image\" />\n\t\t</form>\n\n\t\t<p>\n\t\t\t<b>An example server-side crop script.</b> Hidden form values\n\t\t\tare set when a selection is made. If you press the <i>Crop Image</i>\n\t\t\tbutton, the form will be submitted and a 150x150 thumbnail will be\n\t\t\tdumped to the browser. Try it!\n\t\t</p>\n\n\t\t<div id=\"dl_links\">\n\t\t\t<a href=\"http://deepliquid.com/content/Jcrop.html\">Jcrop Home</a> |\n\t\t\t<a href=\"http://deepliquid.com/content/Jcrop_Manual.html\">Manual (Docs)</a>\n\t\t</div>\n\n\n\t</div>\n\t</div>\n\t</div>\n\t</body>\n\n</html>\n"
  },
  {
    "path": "newscoop/js/tapmodo-Jcrop-5e58bc9/demos/demo_files/demos.css",
    "content": "body\n{\n\tmargin: 0;\n\tpadding: 0;\n\tbackground: #eee;\n\tfont-family: Calibri, sans-serif;\n}\n\n.article h1\n{\n\tcolor: #333;\n\tfont-size: 2.2em;\n\tmargin-top: .2em;\n}\n\n.jcropper-holder { border: 1px black solid; }\n\n#outer { text-align: center; }\n\n.jcExample\n{\n\ttext-align: left;\n\tbackground: white;\n\twidth: 700px;\n\tfont-size: 80%;\n\tmargin: 1.5em auto 2em auto;\n\tborder: 1px #999 solid;\n\tpadding: 1em 2em 2em;\n}\n\n.jcExample .article { width: 565px; }\n\nform { margin: 1.5em 0; }\nform.coords label { margin-right: 1em; font-weight: bold; color: #900; }\nform.coords input { width: 3em; }\n\n"
  },
  {
    "path": "newscoop/js/tapmodo-Jcrop-5e58bc9/demos/tutorial1.html",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\"\n  \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\n\t<head>\n\t\t<meta http-equiv=\"Content-type\" content=\"text/html;charset=UTF-8\" /> \n\t\t<title>Jcrop &raquo; Tutorials &raquo; Hello World</title>\n\t\t<script src=\"../js/jquery.min.js\" type=\"text/javascript\"></script>\n\t\t<script src=\"../js/jquery.Jcrop.js\" type=\"text/javascript\"></script>\n\t\t<link rel=\"stylesheet\" href=\"../css/jquery.Jcrop.css\" type=\"text/css\" />\n\t\t<link rel=\"stylesheet\" href=\"demo_files/demos.css\" type=\"text/css\" />\n\t\t<script type=\"text/javascript\">\n\n\t\tjQuery(function($){\n\n      // How easy is this??\n\t\t\t$('#target').Jcrop();\n\n\t\t});\n\n\t\t</script>\n\t</head>\n\n\t<body>\n\t\t<div id=\"outer\">\n\t\t<div class=\"jcExample\">\n\t\t<div class=\"article\">\n\n\t\t\t<h1>Jcrop - Hello World</h1>\n\t\t\t<img src=\"demo_files/flowers.jpg\" id=\"target\" alt=\"Flowers\" />\n\n\t\t\t<p>\n\t\t\t\t<b>This example demonstrates the default behavior of Jcrop.</b>\n\t\t\t\tSince no event handlers have been attached it only performs\n\t\t\t\tthe cropping behavior.\n\t\t\t</p>\n\n\t\t\t<div id=\"dl_links\">\n\t\t\t\t<a href=\"http://deepliquid.com/content/Jcrop.html\">Jcrop Home</a> |\n\t\t\t\t<a href=\"http://deepliquid.com/content/Jcrop_Manual.html\">Manual (Docs)</a>\n\t\t\t</div>\n\n\t\t</div>\n\t\t</div>\n\t\t</div>\n\t</body>\n</html>\n\n"
  },
  {
    "path": "newscoop/js/tapmodo-Jcrop-5e58bc9/demos/tutorial2.html",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\"\n  \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\n\t<head>\n\t\t<meta http-equiv=\"Content-type\" content=\"text/html;charset=UTF-8\" /> \n\t\t<title>Jcrop &raquo; Tutorials &raquo; Event Handler</title>\n\t\t<script src=\"../js/jquery.min.js\" type=\"text/javascript\"></script>\n\t\t<script src=\"../js/jquery.Jcrop.js\" type=\"text/javascript\"></script>\n\t\t<link rel=\"stylesheet\" href=\"../css/jquery.Jcrop.css\" type=\"text/css\" />\n\t\t<link rel=\"stylesheet\" href=\"demo_files/demos.css\" type=\"text/css\" />\n\t\t<script type=\"text/javascript\">\n\n\t\tjQuery(function($){\n\n      $('#target').Jcrop({\n        onChange:   showCoords,\n        onSelect:   showCoords,\n        onRelease:  clearCoords\n      });\n\n    });\n\n    // Simple event handler, called from onChange and onSelect\n    // event handlers, as per the Jcrop invocation above\n    function showCoords(c)\n    {\n      $('#x1').val(c.x);\n      $('#y1').val(c.y);\n      $('#x2').val(c.x2);\n      $('#y2').val(c.y2);\n      $('#w').val(c.w);\n      $('#h').val(c.h);\n    };\n\n    function clearCoords()\n    {\n      $('#coords input').val('');\n      $('#h').css({color:'red'});\n      window.setTimeout(function(){\n        $('#h').css({color:'inherit'});\n      },500);\n    };\n\n\t\t</script>\n\t</head>\n\t<body>\n\t<div id=\"outer\">\n\t<div class=\"jcExample\">\n\t<div class=\"article\">\n\n\t\t<h1>Jcrop - Event Handlers</h1>\n\n\t\t<!-- This is the image we're attaching Jcrop to -->\n\t\t<img src=\"demo_files/flowers.jpg\" id=\"target\" alt=\"Flowers\" />\n\n\t\t<!-- This is the form that our event handler fills -->\n\t\t<form id=\"coords\"\n      class=\"coords\"\n      onsubmit=\"return false;\"\n      action=\"http://example.com/post.php\">\n\n      <div>\n\t\t\t<label>X1 <input type=\"text\" size=\"4\" id=\"x1\" name=\"x1\" /></label>\n\t\t\t<label>Y1 <input type=\"text\" size=\"4\" id=\"y1\" name=\"y1\" /></label>\n\t\t\t<label>X2 <input type=\"text\" size=\"4\" id=\"x2\" name=\"x2\" /></label>\n\t\t\t<label>Y2 <input type=\"text\" size=\"4\" id=\"y2\" name=\"y2\" /></label>\n\t\t\t<label>W <input type=\"text\" size=\"4\" id=\"w\" name=\"w\" /></label>\n\t\t\t<label>H <input type=\"text\" size=\"4\" id=\"h\" name=\"h\" /></label>\n      </div>\n\t\t</form>\n\n\t\t<p>\n\t\t\t<b>An example with a basic event handler.</b> Here we've tied\n\t\t\tseveral form values together with a simple event handler invocation.\n\t\t\tThe result is that the form values are updated in real-time as\n\t\t\tthe selection is changed using Jcrop's <em>onChange</em> handler.\n\t\t</p>\n\n\t\t<p>\n\t\t\tThat's how easily Jcrop can be integrated into a traditional web form!\n\t\t</p>\n\n\t\t<div id=\"dl_links\">\n\t\t\t<a href=\"http://deepliquid.com/content/Jcrop.html\">Jcrop Home</a> |\n\t\t\t<a href=\"http://deepliquid.com/content/Jcrop_Manual.html\">Manual (Docs)</a>\n\t\t</div>\n\n\n\t</div>\n\t</div>\n\t</div>\n\t</body>\n\n</html>\n"
  },
  {
    "path": "newscoop/js/tapmodo-Jcrop-5e58bc9/demos/tutorial3.html",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\"\n  \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\n\t<head>\n\t\t<meta http-equiv=\"Content-type\" content=\"text/html;charset=UTF-8\" /> \n\t\t<title>Jcrop &raquo; Tutorials &raquo; aspectRatio w/ Preview</title>\n\t\t<script src=\"../js/jquery.min.js\" type=\"text/javascript\"></script>\n\t\t<script src=\"../js/jquery.Jcrop.js\" type=\"text/javascript\"></script>\n\t\t<link rel=\"stylesheet\" href=\"../css/jquery.Jcrop.css\" type=\"text/css\" />\n\t\t<link rel=\"stylesheet\" href=\"demo_files/demos.css\" type=\"text/css\" />\n\t\t<script type=\"text/javascript\">\n\n    jQuery(function($){\n\n      // Create variables (in this scope) to hold the API and image size\n      var jcrop_api, boundx, boundy;\n      \n      $('#target').Jcrop({\n        onChange: updatePreview,\n        onSelect: updatePreview,\n        aspectRatio: 1\n      },function(){\n        // Use the API to get the real image size\n        var bounds = this.getBounds();\n        boundx = bounds[0];\n        boundy = bounds[1];\n        // Store the API in the jcrop_api variable\n        jcrop_api = this;\n      });\n\n      function updatePreview(c)\n      {\n        if (parseInt(c.w) > 0)\n        {\n          var rx = 100 / c.w;\n          var ry = 100 / c.h;\n\n          $('#preview').css({\n            width: Math.round(rx * boundx) + 'px',\n            height: Math.round(ry * boundy) + 'px',\n            marginLeft: '-' + Math.round(rx * c.x) + 'px',\n            marginTop: '-' + Math.round(ry * c.y) + 'px'\n          });\n        }\n      };\n\n    });\n\n  </script>\n\n\t</head>\n\n\t<body>\n\n\t<div id=\"outer\">\n\t<div class=\"jcExample\">\n\t<div class=\"article\">\n\n\t\t<h1>Jcrop - Aspect ratio w/ preview pane</h1>\n\n\t\t<table>\n\t\t\t<tr>\n\t\t\t\t<td>\n\t\t\t\t\t<img src=\"demo_files/flowers.jpg\" id=\"target\" alt=\"Flowers\" />\n\t\t\t\t</td>\n\t\t\t\t<td>\n\t\t\t\t\t<div style=\"width:100px;height:100px;overflow:hidden;\">\n\t\t\t\t\t\t<img src=\"demo_files/flowers.jpg\" id=\"preview\" alt=\"Preview\" />\n\t\t\t\t\t</div>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t</table>\n\n\t\t<p>\n\t\t\t<b>An example implementing a preview pane.</b>\n\t\t\t\tObviously the most visual demo, the preview pane is accomplished\n\t\t\t\tentirely outside of Jcrop with a simple jQuery-flavored callback.\n\t\t\t\tThis type of interface could be useful for creating a thumbnail\n\t\t\t\tor avatar. The onChange event handler is used to update the\n\t\t\t\tview in the preview pane.\n\t\t</p>\n\n\t\t<div id=\"dl_links\">\n\t\t\t<a href=\"http://deepliquid.com/content/Jcrop.html\">Jcrop Home</a> |\n\t\t\t<a href=\"http://deepliquid.com/content/Jcrop_Manual.html\">Manual (Docs)</a>\n\t\t</div>\n\n\n\t</div>\n\t</div>\n\t</div>\n\t</body>\n\n</html>\n"
  },
  {
    "path": "newscoop/js/tapmodo-Jcrop-5e58bc9/demos/tutorial4.html",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\"\n  \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\n\t<head>\n\t\t<meta http-equiv=\"Content-type\" content=\"text/html;charset=UTF-8\" /> \n\t\t<title>Jcrop &raquo; Tutorials &raquo; Animations / Transitions</title>\n\t\t<script src=\"../js/jquery.min.js\" type=\"text/javascript\"></script>\n\t\t<script src=\"../js/jquery.Jcrop.js\" type=\"text/javascript\"></script>\n\t\t<script src=\"../js/jquery.color.js\" type=\"text/javascript\"></script>\n\t\t<link rel=\"stylesheet\" href=\"../css/jquery.Jcrop.css\" type=\"text/css\" />\n\t\t<link rel=\"stylesheet\" href=\"../css/jquery.Jcrop.extras.css\" type=\"text/css\" />\n\t\t<link rel=\"stylesheet\" href=\"demo_files/demos.css\" type=\"text/css\" />\n\n\t\t<script type=\"text/javascript\">\n\n\t\t\tjQuery(function($){\n\n\t\t\t\tvar jcrop_api;\n\n\t\t\t\t$('#target').Jcrop({\n          bgFade:     true,\n\t\t\t\t\tbgOpacity: .3,\n\t\t\t\t\touterImage: 'demo_files/sagomod.jpg',\n\t\t\t\t\tsetSelect: [ 60, 70, 540, 330 ]\n\t\t\t\t},function(){\n          jcrop_api = this;\n        });\n\n\t\t\t\t// Define page sections\n\t\t\t\tvar sections = {\n\t\t\t\t\tanim_buttons: 'Animate Selection',\n\t\t\t\t\tbgo_buttons: 'Change bgOpacity',\n\t\t\t\t\tbgc_buttons: 'Change bgColor'\n\t\t\t\t};\n\t\t\t\t// Define animation buttons\n\t\t\t\tvar ac = {\n\t\t\t\t\tanim1: [217,122,382,284],\n\t\t\t\t\tanim2: [20,20,580,380],\n\t\t\t\t\tanim3: [24,24,176,376],\n\t\t\t\t\tanim4: [347,165,550,355],\n\t\t\t\t\tanim5: [136,55,472,183]\n\t\t\t\t};\n\t\t\t\t// Define bgOpacity buttons\n\t\t\t\tvar bgo = {\n\t\t\t\t\tLow: .2,\n\t\t\t\t\tMid: .5,\n\t\t\t\t\tHigh: .8,\n\t\t\t\t\tFull: 1\n\t\t\t\t};\n\t\t\t\t// Define bgColor buttons\n\t\t\t\tvar bgc = {\n\t\t\t\t\tRed: '#900',\n\t\t\t\t\tBlue: '#4BB6F0',\n\t\t\t\t\tYellow: '#F0B207',\n\t\t\t\t\tGreen: '#46B81C',\n\t\t\t\t\tWhite: 'white',\n\t\t\t\t\tBlack: 'black'\n\t\t\t\t};\n\t\t\t\t// Create fieldset targets for buttons\n\t\t\t\tfor(i in sections)\n\t\t\t\t\tinsertSection(i,sections[i]);\n\n\t\t\t\t// Create animation buttons\n\t\t\t\tfor(i in ac) {\n\t\t\t\t\t$('#anim_buttons').append(\n\t\t\t\t\t\t$('<button />').append(i).click(animHandler(ac[i])), ' '\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\t// Create bgOpacity buttons\n\t\t\t\tfor(i in bgo) {\n\t\t\t\t\t$('#bgo_buttons').append(\n\t\t\t\t\t\t$('<button />').append(i).click(setoptHandler('bgOpacity',bgo[i])), ' '\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\t// Create bgColor buttons\n\t\t\t\tfor(i in bgc) {\n\t\t\t\t\t$('#bgc_buttons').append(\n\t\t\t\t\t\t$('<button />').append(i).click(setoptHandler('bgColor',bgc[i])), ' '\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\t// Function to insert named sections into interface\n\t\t\t\tfunction insertSection(k,v) {\n\t\t\t\t\t$('#interface').append(\n\t\t\t\t\t\t$('<fieldset></fieldset>').attr('id',k).append(\n\t\t\t\t\t\t\t$('<legend></legend>').append(v)\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t};\n\t\t\t\t// Handler for option-setting buttons\n\t\t\t\tfunction setoptHandler(k,v) {\n\t\t\t\t\treturn function() {\n\t\t\t\t\t\tvar opt = { };\n\t\t\t\t\t\topt[k] = v;\n\t\t\t\t\t\tjcrop_api.setOptions(opt);\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t\t// Handler for animation buttons\n\t\t\t\tfunction animHandler(v) {\n\t\t\t\t\treturn function() {\n\t\t\t\t\t\tjcrop_api.animateTo(v);\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t};\n\t\t\t\t};\n\n\t\t\t\t$('#anim_buttons').append(\n\t\t\t\t\t$('<button></button>').append('Bye!').click(function(){\n\t\t\t\t\t\tjcrop_api.animateTo(\n              [300,200,300,200],\n              function(){ this.release(); }\n            );\n            return false;\n\t\t\t\t\t})\n\t\t\t\t);\n\n\t\t\t\t$('#interface').show();\n\n\t\t\t});\n\n\t\t</script>\n\n\t</head>\n\n\t<body>\n\t\t<div id=\"outer\">\n\t\t<div class=\"jcExample\">\n\t\t<div class=\"article\">\n\n\t\t\t<h1>Jcrop - Animations/Transitions</h1>\n\t\t\t<img src=\"demo_files/sago.jpg\" id=\"target\" alt=\"Flowers\" />\n\n\t\t\t<div id=\"interface\" style=\"margin: 1em 0;\"></div>\n\n\t\t\t<p>\n\t\t\t\t<b>Animation/Transitions.</b>\n\t\t\t\tDemonstration of animateTo API method and transitions for bgColor\n\t\t\t\tand bgOpacity options. Color fading requires inclusion of John Resig's\n\t\t\t\tjQuery <a href=\"http://plugins.jquery.com/project/color\">Color \n\t\t\t\tAnimations</a> plugin. If it is not included, colors will not fade.\n\t\t\t\tThis demo also uses an alternate outerImage, and creating new selections is\n\t\t\t\tdisabled.\n\t\t\t</p>\n\n\t\t<div id=\"dl_links\">\n\t\t\t<a href=\"http://deepliquid.com/content/Jcrop.html\">Jcrop Home</a> |\n\t\t\t<a href=\"http://deepliquid.com/content/Jcrop_Manual.html\">Manual (Docs)</a>\n\t\t</div>\n\n\t\t</div>\n\t\t</div>\n\t\t</div>\n\t</body>\n</html>\n\n"
  },
  {
    "path": "newscoop/js/tapmodo-Jcrop-5e58bc9/demos/tutorial5.html",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\"\n  \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\n\t<head>\n\t\t<meta http-equiv=\"Content-type\" content=\"text/html;charset=UTF-8\" /> \n\t\t<title>Jcrop &raquo; Tutorials &raquo; API Demo</title>\n\t\t<script src=\"../js/jquery.min.js\" type=\"text/javascript\"></script>\n\t\t<script src=\"../js/jquery.Jcrop.js\" type=\"text/javascript\"></script>\n\t\t<link rel=\"stylesheet\" href=\"../css/jquery.Jcrop.css\" type=\"text/css\" />\n\t\t<link rel=\"stylesheet\" href=\"demo_files/demos.css\" type=\"text/css\" />\n\t\t<style type=\"text/css\">\n\t\t\t.optdual { position: relative; }\n\t\t\t.optdual .offset { position: absolute; left: 18em; }\n\t\t\t.optlist label { width: 16em; display: block; }\n\t\t\t#dl_links { margin-top: .5em; }\n\t\t</style>\n\t\t<script type=\"text/javascript\">\n\n      jQuery(function($){\n\n        // The variable jcrop_api will hold a reference to the\n        // Jcrop API once Jcrop is instantiated.\n\t\t\t\tvar jcrop_api;\n\n        // In this example, since Jcrop may be attached or detached\n        // at the whim of the user, I've wrapped the call into a function\n\t\t\t\tinitJcrop();\n\t\t\t\t\n        // The function is pretty simple\n\t\t\t\tfunction initJcrop()//{{{\n\t\t\t\t{\n          // Hide any interface elements that require Jcrop\n          // (This is for the local user interface portion.)\n\t\t\t\t\t$('.requiresjcrop').hide();\n\n          // Invoke Jcrop in typical fashion\n\t\t\t\t\t$('#target').Jcrop({\n            onRelease: releaseCheck\n          },function(){\n\n\t\t\t\t\t\tjcrop_api = this;\n\t\t\t\t\t\tjcrop_api.animateTo([100,100,400,300]);\n\n            // Setup and dipslay the interface for \"enabled\"\n\t\t\t\t\t\t$('#can_click,#can_move,#can_size').attr('checked','checked');\n\t\t\t\t\t\t$('#ar_lock,#size_lock,#bg_swap').attr('checked',false);\n\t\t\t\t\t\t$('.requiresjcrop').show();\n\n\t\t\t\t\t});\n\n\t\t\t\t};\n\t\t\t\t//}}}\n\n\t\t\t\t// Use the API to find cropping dimensions\n\t\t\t\t// Then generate a random selection\n\t\t\t\t// This function is used by setSelect and animateTo buttons\n\t\t\t\t// Mainly for demonstration purposes\n\t\t\t\tfunction getRandom() {\n\t\t\t\t\tvar dim = jcrop_api.getBounds();\n\t\t\t\t\treturn [\n\t\t\t\t\t\tMath.round(Math.random() * dim[0]),\n\t\t\t\t\t\tMath.round(Math.random() * dim[1]),\n\t\t\t\t\t\tMath.round(Math.random() * dim[0]),\n\t\t\t\t\t\tMath.round(Math.random() * dim[1])\n\t\t\t\t\t];\n\t\t\t\t};\n\n        // This function is bound to the onRelease handler...\n        // In certain circumstances (such as if you set minSize\n        // and aspectRatio together), you can inadvertently lose\n        // the selection. This callback re-enables creating selections\n        // in such a case. Although the need to do this is based on a\n        // buggy behavior, it's recommended that you in some way trap\n        // the onRelease callback if you use allowSelect: false\n        function releaseCheck()\n        {\n\t\t\t\t\tjcrop_api.setOptions({ allowSelect: true });\n          $('#can_click').attr('checked',false);\n        };\n\n\t\t\t\t// Attach interface buttons\n\t\t\t\t// This may appear to be a lot of code but it's simple stuff\n\t\t\t\t$('#setSelect').click(function(e) {\n\t\t\t\t\t// Sets a random selection\n\t\t\t\t\tjcrop_api.setSelect(getRandom());\n\t\t\t\t});\n\t\t\t\t$('#animateTo').click(function(e) {\n\t\t\t\t\t// Animates to a random selection\n\t\t\t\t\tjcrop_api.animateTo(getRandom());\n\t\t\t\t});\n\t\t\t\t$('#release').click(function(e) {\n\t\t\t\t\t// Release method clears the selection\n\t\t\t\t\tjcrop_api.release();\n\t\t\t\t});\n\t\t\t\t$('#disable').click(function(e) {\n          // Disable Jcrop instance\n\t\t\t\t\tjcrop_api.disable();\n          // Update the interface to reflect disabled state\n\t\t\t\t\t$('#enable').show();\n\t\t\t\t\t$('.requiresjcrop').hide();\n\t\t\t\t});\n\t\t\t\t$('#enable').click(function(e) {\n          // Re-enable Jcrop instance\n\t\t\t\t\tjcrop_api.enable();\n          // Update the interface to reflect enabled state\n\t\t\t\t\t$('#enable').hide();\n\t\t\t\t\t$('.requiresjcrop').show();\n\t\t\t\t});\n\t\t\t\t$('#rehook').click(function(e) {\n          // This button is visible when Jcrop has been destroyed\n          // It performs the re-attachment and updates the UI\n\t\t\t\t\t$('#rehook,#enable').hide();\n\t\t\t\t\tinitJcrop();\n\t\t\t\t\t$('#unhook,.requiresjcrop').show();\n\t\t\t\t\treturn false;\n\t\t\t\t});\n\t\t\t\t$('#unhook').click(function(e) {\n          // Destroy Jcrop widget, restore original state\n\t\t\t\t\tjcrop_api.destroy();\n          // Update the interface to reflect un-attached state\n\t\t\t\t\t$('#unhook,#enable,.requiresjcrop').hide();\n\t\t\t\t\t$('#rehook').show();\n\t\t\t\t\treturn false;\n\t\t\t\t});\n\n\t\t\t\t// Hook up the three image-swapping buttons\n\t\t\t\t$('#img1').click(function(e) {\n\t\t\t\t\tjcrop_api.setImage('demo_files/sago.jpg');\n\t\t\t\t\tjcrop_api.setOptions({ bgOpacity: .6 });\n\t\t\t\t\treturn false;\n\t\t\t\t});\n\t\t\t\t$('#img2').click(function(e) {\n\t\t\t\t\tjcrop_api.setImage('demo_files/flowers.jpg');\n\t\t\t\t\tjcrop_api.setOptions({ bgOpacity: .6 });\n\t\t\t\t\treturn false;\n\t\t\t\t});\n\t\t\t\t$('#img3').click(function(e) {\n\t\t\t\t\tjcrop_api.setImage('demo_files/sago.jpg',function(){\n\t\t\t\t\t\tthis.setOptions({\n\t\t\t\t\t\t\tbgOpacity: 1,\n\t\t\t\t\t\t\touterImage: 'demo_files/sagomod.jpg'\n\t\t\t\t\t\t});\n\t\t\t\t\t\tthis.animateTo(getRandom());\n\t\t\t\t\t});\n\t\t\t\t\treturn false;\n\t\t\t\t});\n\n\t\t\t\t// The checkboxes simply set options based on it's checked value\n\t\t\t\t// Options are changed by passing a new options object\n\n\t\t\t\t// Also, to prevent strange behavior, they are initially checked\n\t\t\t\t// This matches the default initial state of Jcrop\n\n\t\t\t\t$('#can_click').change(function(e) {\n\t\t\t\t\tjcrop_api.setOptions({ allowSelect: !!this.checked });\n\t\t\t\t\tjcrop_api.focus();\n\t\t\t\t});\n\t\t\t\t$('#can_move').change(function(e) {\n\t\t\t\t\tjcrop_api.setOptions({ allowMove: !!this.checked });\n\t\t\t\t\tjcrop_api.focus();\n\t\t\t\t});\n\t\t\t\t$('#can_size').change(function(e) {\n\t\t\t\t\tjcrop_api.setOptions({ allowResize: !!this.checked });\n\t\t\t\t\tjcrop_api.focus();\n\t\t\t\t});\n\t\t\t\t$('#ar_lock').change(function(e) {\n\t\t\t\t\tjcrop_api.setOptions(this.checked?\n            { aspectRatio: 4/3 }: { aspectRatio: 0 });\n\t\t\t\t\tjcrop_api.focus();\n\t\t\t\t});\n\t\t\t\t$('#size_lock').change(function(e) {\n\t\t\t\t\tjcrop_api.setOptions(this.checked? {\n\t\t\t\t\t\tminSize: [ 80, 80 ],\n\t\t\t\t\t\tmaxSize: [ 350, 350 ]\n\t\t\t\t\t}: {\n\t\t\t\t\t\tminSize: [ 0, 0 ],\n\t\t\t\t\t\tmaxSize: [ 0, 0 ]\n\t\t\t\t\t});\n\t\t\t\t\tjcrop_api.focus();\n\t\t\t\t});\n\n\t\t\t});\n\n\t\t</script>\n\n\t</head>\n\n\t<body>\n\t\t<div id=\"outer\">\n\t\t<div class=\"jcExample\">\n\t\t<div class=\"article\">\n\n\t\t\t<h1>Jcrop - API Demo</h1>\n\t\t\t<img src=\"demo_files/sago.jpg\" id=\"target\" alt=\"Flowers\" />\n\n\t\t\t<div style=\"margin: .8em 0 .5em;\">\n\t\t\t\t<span class=\"requiresjcrop\">\n\t\t\t\t\t<button id=\"setSelect\">setSelect</button>\n\t\t\t\t\t<button id=\"animateTo\">animateTo</button>\n\t\t\t\t\t<button id=\"release\">Release</button>\n\t\t\t\t\t<button id=\"disable\">Disable</button>\n\t\t\t\t</span>\n\t\t\t\t<button id=\"enable\" style=\"display:none;\">Re-Enable</button>\n\t\t\t\t<button id=\"unhook\">Destroy!</button>\n\t\t\t\t<button id=\"rehook\" style=\"display:none;\">Attach Jcrop</button>\n\t\t\t</div>\n\n\t\t\t<fieldset class=\"optdual requiresjcrop\">\n\t\t\t\t<legend>Option Toggles</legend>\n\t\t\t\t<div class=\"optlist offset\">\n\t\t\t\t\t<label><input type=\"checkbox\" id=\"ar_lock\" />Aspect ratio</label>\n\t\t\t\t\t<label><input type=\"checkbox\" id=\"size_lock\" />minSize/maxSize setting</label>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"optlist\">\n\t\t\t\t\t<label><input type=\"checkbox\" id=\"can_click\" />Allow new selections</label>\n\t\t\t\t\t<label><input type=\"checkbox\" id=\"can_move\" />Selection can be moved</label>\n\t\t\t\t\t<label><input type=\"checkbox\" id=\"can_size\" />Resizable selection</label>\n\t\t\t\t</div>\n\t\t\t</fieldset>\n\n\t\t\t<fieldset class=\"requiresjcrop\" style=\"margin: .5em 0;\">\n\t\t\t\t<legend>Change Image</legend>\n\t\t\t\t<span>\n\t\t\t\t\t<button id=\"img2\">Flowers</button>\n\t\t\t\t\t<button id=\"img1\">Sago</button>\n\t\t\t\t\t<button id=\"img3\">Sago w/ outerImage</button>\n\t\t\t\t</span>\n\t\t\t</fieldset>\n\n\t\t<div id=\"dl_links\">\n\t\t\t<a href=\"http://deepliquid.com/content/Jcrop.html\">Jcrop Home</a> |\n\t\t\t<a href=\"http://deepliquid.com/content/Jcrop_Manual.html\">Manual (Docs)</a>\n\t\t</div>\n\n\t\t</div>\n\t\t</div>\n\t\t</div>\n\t</body>\n</html>\n\n"
  },
  {
    "path": "newscoop/js/tapmodo-Jcrop-5e58bc9/index.html",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\"\n  \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\n<head>\n  <title>Jcrop: the jQuery Image Cropping Plugin</title>\n  <link rel=\"stylesheet\" href=\"demos/demo_files/demos.css\" type=\"text/css\" />\n  <meta http-equiv=\"Content-type\" content=\"text/html;charset=UTF-8\" />\n</head>\n<body>\n\n\t<div id=\"outer\">\n\t<div class=\"jcExample\">\n\t<div class=\"article\">\n<h1>Jcrop Image Cropping Plugin</h1>\n\n<big>\n\t<a href=\"http://deepliquid.com/content/Jcrop.html\"><b>Jcrop</b></a>\n\tis the image cropping plugin for\n\t<a href=\"http://jquery.com/\">jQuery</a>.<br />\n\tYou've successfully unpacked Jcrop.\n</big>\n\n<h3>Static Demos</h3>\n\n<ul>\n\t<li><a href=\"demos/tutorial1.html\">Hello World</a>\n\t\t&mdash; default behavior</li>\n\t<li><a href=\"demos/tutorial2.html\">Basic Handler</a>\n\t\t&mdash; basic form integration</li>\n\t<li><a href=\"demos/tutorial3.html\">Aspect Ratio w/ Preview Pane</a>\n\t\t&mdash; nice visual example</li>\n\t<li><a href=\"demos/tutorial4.html\">Animation/Transitions</a>\n\t\t&mdash; animation/fading demo</li>\n\t<li><a href=\"demos/tutorial5.html\">API Interface</a>\n\t\t&mdash; real-time API example</li>\n</ul>\n\n<h3>Live Demo</h3>\n\n<ul>\n\t<li><a href=\"demos/crop.php\">PHP Cropping Demo</a>\n\t\t&mdash; requires PHP/gd support</li>\n</ul>\n\n<h3>Jcrop Links</h3>\n\n<ul>\n\t<li><a href=\"http://deepliquid.com/content/Jcrop.html\">Jcrop Home</a></li>\n\t<li><a href=\"http://deepliquid.com/content/Jcrop_Manual.html\">Jcrop Manual</a></li>\n</ul>\n\n<hr style=\"margin-top:2em;\" />\n<small>\n\t<b>&copy; 2008-2011 Kelly Hallman</b><br />\n\tFree software released under\n\t<a href=\"http://deepliquid.com/content/Jcrop_License.html\">MIT License</a>\n</small>\n</div>\n</div>\n</div>\n\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/js/tapmodo-Jcrop-5e58bc9/js/jquery.Jcrop.js",
    "content": "/**\n * jquery.Jcrop.js v0.9.9\n * jQuery Image Cropping Plugin\n * @author Kelly Hallman <khallman@gmail.com>\n * Copyright (c) 2008-2011 Kelly Hallman - released under MIT License {{{\n *\n * Permission is hereby granted, free of charge, to any person\n * obtaining a copy of this software and associated documentation\n * files (the \"Software\"), to deal in the Software without\n * restriction, including without limitation the rights to use,\n * copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the\n * Software is furnished to do so, subject to the following\n * conditions:\n *\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\n * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\n * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\n * OTHER DEALINGS IN THE SOFTWARE.\n *\n * }}}\n */\n\n(function ($) {\n\n  $.Jcrop = function (obj, opt) {\n    var options = $.extend({}, $.Jcrop.defaults),\n        docOffset, lastcurs, ie6mode = false;\n\n    // Internal Methods {{{\n    function px(n) {\n      return parseInt(n, 10) + 'px';\n    }\n    function pct(n) {\n      return parseInt(n, 10) + '%';\n    }\n    function cssClass(cl) {\n      return options.baseClass + '-' + cl;\n    }\n    function supportsColorFade() {\n      return $.fx.step.hasOwnProperty('backgroundColor');\n    }\n    function getPos(obj) //{{{\n    {\n      // Updated in v0.9.4 to use built-in dimensions plugin\n      var pos = $(obj).offset();\n      return [pos.left, pos.top];\n    }\n    //}}}\n    function mouseAbs(e) //{{{\n    {\n      return [(e.pageX - docOffset[0]), (e.pageY - docOffset[1])];\n    }\n    //}}}\n    function setOptions(opt) //{{{\n    {\n      if (typeof(opt) !== 'object') {\n        opt = {};\n      }\n      options = $.extend(options, opt);\n\n      if (typeof(options.onChange) !== 'function') {\n        options.onChange = function () {};\n      }\n      if (typeof(options.onSelect) !== 'function') {\n        options.onSelect = function () {};\n      }\n      if (typeof(options.onRelease) !== 'function') {\n        options.onRelease = function () {};\n      }\n    }\n    //}}}\n    function myCursor(type) //{{{\n    {\n      if (type !== lastcurs) {\n        Tracker.setCursor(type);\n        lastcurs = type;\n      }\n    }\n    //}}}\n    function startDragMode(mode, pos) //{{{\n    {\n      docOffset = getPos($img);\n      Tracker.setCursor(mode === 'move' ? mode : mode + '-resize');\n\n      if (mode === 'move') {\n        return Tracker.activateHandlers(createMover(pos), doneSelect);\n      }\n\n      var fc = Coords.getFixed();\n      var opp = oppLockCorner(mode);\n      var opc = Coords.getCorner(oppLockCorner(opp));\n\n      Coords.setPressed(Coords.getCorner(opp));\n      Coords.setCurrent(opc);\n\n      Tracker.activateHandlers(dragmodeHandler(mode, fc), doneSelect);\n    }\n    //}}}\n    function dragmodeHandler(mode, f) //{{{\n    {\n      return function (pos) {\n        if (!options.aspectRatio) {\n          switch (mode) {\n          case 'e':\n            pos[1] = f.y2;\n            break;\n          case 'w':\n            pos[1] = f.y2;\n            break;\n          case 'n':\n            pos[0] = f.x2;\n            break;\n          case 's':\n            pos[0] = f.x2;\n            break;\n          }\n        } else {\n          switch (mode) {\n          case 'e':\n            pos[1] = f.y + 1;\n            break;\n          case 'w':\n            pos[1] = f.y + 1;\n            break;\n          case 'n':\n            pos[0] = f.x + 1;\n            break;\n          case 's':\n            pos[0] = f.x + 1;\n            break;\n          }\n        }\n        Coords.setCurrent(pos);\n        Selection.update();\n      };\n    }\n    //}}}\n    function createMover(pos) //{{{\n    {\n      var lloc = pos;\n      KeyManager.watchKeys();\n\n      return function (pos) {\n        Coords.moveOffset([pos[0] - lloc[0], pos[1] - lloc[1]]);\n        lloc = pos;\n\n        Selection.update();\n      };\n    }\n    //}}}\n    function oppLockCorner(ord) //{{{\n    {\n      switch (ord) {\n      case 'n':\n        return 'sw';\n      case 's':\n        return 'nw';\n      case 'e':\n        return 'nw';\n      case 'w':\n        return 'ne';\n      case 'ne':\n        return 'sw';\n      case 'nw':\n        return 'se';\n      case 'se':\n        return 'nw';\n      case 'sw':\n        return 'ne';\n      }\n    }\n    //}}}\n    function createDragger(ord) //{{{\n    {\n      return function (e) {\n        if (options.disabled) {\n          return false;\n        }\n        if ((ord === 'move') && !options.allowMove) {\n          return false;\n        }\n        btndown = true;\n        startDragMode(ord, mouseAbs(e));\n        e.stopPropagation();\n        e.preventDefault();\n        return false;\n      };\n    }\n    //}}}\n    function presize($obj, w, h) //{{{\n    {\n      var nw = $obj.width(),\n          nh = $obj.height();\n      if ((nw > w) && w > 0) {\n        nw = w;\n        nh = (w / $obj.width()) * $obj.height();\n      }\n      if ((nh > h) && h > 0) {\n        nh = h;\n        nw = (h / $obj.height()) * $obj.width();\n      }\n      xscale = $obj.width() / nw;\n      yscale = $obj.height() / nh;\n      $obj.width(nw).height(nh);\n    }\n    //}}}\n    function unscale(c) //{{{\n    {\n      return {\n        x: parseInt(c.x * xscale, 10),\n        y: parseInt(c.y * yscale, 10),\n        x2: parseInt(c.x2 * xscale, 10),\n        y2: parseInt(c.y2 * yscale, 10),\n        w: parseInt(c.w * xscale, 10),\n        h: parseInt(c.h * yscale, 10)\n      };\n    }\n    //}}}\n    function doneSelect(pos) //{{{\n    {\n      var c = Coords.getFixed();\n      if ((c.w > options.minSelect[0]) && (c.h > options.minSelect[1])) {\n        Selection.enableHandles();\n        Selection.done();\n      } else {\n        Selection.release();\n      }\n      Tracker.setCursor(options.allowSelect ? 'crosshair' : 'default');\n    }\n    //}}}\n    function newSelection(e) //{{{\n    {\n      if (options.disabled) {\n        return false;\n      }\n      if (!options.allowSelect) {\n        return false;\n      }\n      btndown = true;\n      docOffset = getPos($img);\n      Selection.disableHandles();\n      myCursor('crosshair');\n      var pos = mouseAbs(e);\n      Coords.setPressed(pos);\n      Selection.update();\n      Tracker.activateHandlers(selectDrag, doneSelect);\n      KeyManager.watchKeys();\n\n      e.stopPropagation();\n      e.preventDefault();\n      return false;\n    }\n    //}}}\n    function selectDrag(pos) //{{{\n    {\n      Coords.setCurrent(pos);\n      Selection.update();\n    }\n    //}}}\n    function newTracker() //{{{\n    {\n      var trk = $('<div></div>').addClass(cssClass('tracker'));\n      if ($.browser.msie) {\n        trk.css({\n          opacity: 0,\n          backgroundColor: 'white'\n        });\n      }\n      return trk;\n    }\n    //}}}\n\n    // }}}\n    // Initialization {{{\n    // Sanitize some options {{{\n    if ($.browser.msie && ($.browser.version.split('.')[0] === '6')) {\n      ie6mode = true;\n    }\n    if (typeof(obj) !== 'object') {\n      obj = $(obj)[0];\n    }\n    if (typeof(opt) !== 'object') {\n      opt = {};\n    }\n    // }}}\n    setOptions(opt);\n    // Initialize some jQuery objects {{{\n    // The values are SET on the image(s) for the interface\n    // If the original image has any of these set, they will be reset\n    // However, if you destroy() the Jcrop instance the original image's\n    // character in the DOM will be as you left it.\n    var img_css = {\n      border: 'none',\n      margin: 0,\n      padding: 0,\n      position: 'absolute'\n    };\n\n    var $origimg = $(obj);\n    var $img = $origimg.clone().removeAttr('id').css(img_css);\n\n    $img.width($origimg.width());\n    $img.height($origimg.height());\n    $origimg.after($img).hide();\n\n    presize($img, options.boxWidth, options.boxHeight);\n\n    var boundx = $img.width(),\n        boundy = $img.height(),\n        \n        \n        $div = $('<div />').width(boundx).height(boundy).addClass(cssClass('holder')).css({\n        position: 'relative',\n        backgroundColor: options.bgColor\n      }).insertAfter($origimg).append($img);\n\n    delete(options.bgColor);\n    if (options.addClass) {\n      $div.addClass(options.addClass);\n    }\n\n    var $img2 = $('<img />')\n        .attr('src', $img.attr('src')).css(img_css).width(boundx).height(boundy),\n\n        $img_holder = $('<div />') \n        .width(pct(100)).height(pct(100)).css({\n          zIndex: 310,\n          position: 'absolute',\n          overflow: 'hidden'\n        }).append($img2),\n\n        $hdl_holder = $('<div />') \n        .width(pct(100)).height(pct(100)).css('zIndex', 320), \n\n        $sel = $('<div />') \n        .css({\n          position: 'absolute',\n          zIndex: 300\n        }).insertBefore($img).append($img_holder, $hdl_holder); \n\n    if (ie6mode) {\n      $sel.css({\n        overflowY: 'hidden'\n      });\n    }\n\n    var bound = options.boundary;\n    var $trk = newTracker().width(boundx + (bound * 2)).height(boundy + (bound * 2)).css({\n      position: 'absolute',\n      top: px(-bound),\n      left: px(-bound),\n      zIndex: 290\n    }).mousedown(newSelection);\n\n    /* }}} */\n    // Set more variables {{{\n    var bgopacity = options.bgOpacity,\n        xlimit, ylimit, xmin, ymin, xscale, yscale, enabled = true,\n        btndown, animating, shift_down;\n\n    docOffset = getPos($img);\n    // }}}\n    // }}}\n    // Internal Modules {{{\n    // Touch Module {{{ \n    var Touch = (function () {\n      // Touch support detection function adapted (under MIT License)\n      // from code by Jeffrey Sambells - http://github.com/iamamused/\n      function hasTouchSupport() {\n        var support = {},\n            events = ['touchstart', 'touchmove', 'touchend'],\n            el = document.createElement('div'), i;\n\n        try {\n          for(i=0; i<events.length; i++) {\n            var eventName = events[i];\n            eventName = 'on' + eventName;\n            var isSupported = (eventName in el);\n            if (!isSupported) {\n              el.setAttribute(eventName, 'return;');\n              isSupported = typeof el[eventName] == 'function';\n            }\n            support[events[i]] = isSupported;\n          }\n          return support.touchstart && support.touchend && support.touchmove;\n        }\n        catch(err) {\n          return false;\n        }\n      }\n\n      function detectSupport() {\n        if ((options.touchSupport === true) || (options.touchSupport === false)) return options.touchSupport;\n          else return hasTouchSupport();\n      }\n      return {\n        createDragger: function (ord) {\n          return function (e) {\n            e.pageX = e.originalEvent.changedTouches[0].pageX;\n            e.pageY = e.originalEvent.changedTouches[0].pageY;\n            if (options.disabled) {\n              return false;\n            }\n            if ((ord === 'move') && !options.allowMove) {\n              return false;\n            }\n            btndown = true;\n            startDragMode(ord, mouseAbs(e));\n            e.stopPropagation();\n            e.preventDefault();\n            return false;\n          };\n        },\n        newSelection: function (e) {\n          e.pageX = e.originalEvent.changedTouches[0].pageX;\n          e.pageY = e.originalEvent.changedTouches[0].pageY;\n          return newSelection(e);\n        },\n        isSupported: hasTouchSupport,\n        support: detectSupport()\n      };\n    }());\n    // }}}\n    // Coords Module {{{\n    var Coords = (function () {\n      var x1 = 0,\n          y1 = 0,\n          x2 = 0,\n          y2 = 0,\n          ox, oy;\n\n      function setPressed(pos) //{{{\n      {\n        pos = rebound(pos);\n        x2 = x1 = pos[0];\n        y2 = y1 = pos[1];\n      }\n      //}}}\n      function setCurrent(pos) //{{{\n      {\n        pos = rebound(pos);\n        ox = pos[0] - x2;\n        oy = pos[1] - y2;\n        x2 = pos[0];\n        y2 = pos[1];\n      }\n      //}}}\n      function getOffset() //{{{\n      {\n        return [ox, oy];\n      }\n      //}}}\n      function moveOffset(offset) //{{{\n      {\n        var ox = offset[0],\n            oy = offset[1];\n\n        if (0 > x1 + ox) {\n          ox -= ox + x1;\n        }\n        if (0 > y1 + oy) {\n          oy -= oy + y1;\n        }\n\n        if (boundy < y2 + oy) {\n          oy += boundy - (y2 + oy);\n        }\n        if (boundx < x2 + ox) {\n          ox += boundx - (x2 + ox);\n        }\n\n        x1 += ox;\n        x2 += ox;\n        y1 += oy;\n        y2 += oy;\n      }\n      //}}}\n      function getCorner(ord) //{{{\n      {\n        var c = getFixed();\n        switch (ord) {\n        case 'ne':\n          return [c.x2, c.y];\n        case 'nw':\n          return [c.x, c.y];\n        case 'se':\n          return [c.x2, c.y2];\n        case 'sw':\n          return [c.x, c.y2];\n        }\n      }\n      //}}}\n      function getFixed() //{{{\n      {\n        if (!options.aspectRatio) {\n          return getRect();\n        }\n        // This function could use some optimization I think...\n        var aspect = options.aspectRatio,\n            min_x = options.minSize[0] / xscale,\n            \n            \n            //min_y = options.minSize[1]/yscale,\n            max_x = options.maxSize[0] / xscale,\n            max_y = options.maxSize[1] / yscale,\n            rw = x2 - x1,\n            rh = y2 - y1,\n            rwa = Math.abs(rw),\n            rha = Math.abs(rh),\n            real_ratio = rwa / rha,\n            xx, yy;\n\n        if (max_x === 0) {\n          max_x = boundx * 10;\n        }\n        if (max_y === 0) {\n          max_y = boundy * 10;\n        }\n        if (real_ratio < aspect) {\n          yy = y2;\n          w = rha * aspect;\n          xx = rw < 0 ? x1 - w : w + x1;\n\n          if (xx < 0) {\n            xx = 0;\n            h = Math.abs((xx - x1) / aspect);\n            yy = rh < 0 ? y1 - h : h + y1;\n          } else if (xx > boundx) {\n            xx = boundx;\n            h = Math.abs((xx - x1) / aspect);\n            yy = rh < 0 ? y1 - h : h + y1;\n          }\n        } else {\n          xx = x2;\n          h = rwa / aspect;\n          yy = rh < 0 ? y1 - h : y1 + h;\n          if (yy < 0) {\n            yy = 0;\n            w = Math.abs((yy - y1) * aspect);\n            xx = rw < 0 ? x1 - w : w + x1;\n          } else if (yy > boundy) {\n            yy = boundy;\n            w = Math.abs(yy - y1) * aspect;\n            xx = rw < 0 ? x1 - w : w + x1;\n          }\n        }\n\n        // Magic %-)\n        if (xx > x1) { // right side\n          if (xx - x1 < min_x) {\n            xx = x1 + min_x;\n          } else if (xx - x1 > max_x) {\n            xx = x1 + max_x;\n          }\n          if (yy > y1) {\n            yy = y1 + (xx - x1) / aspect;\n          } else {\n            yy = y1 - (xx - x1) / aspect;\n          }\n        } else if (xx < x1) { // left side\n          if (x1 - xx < min_x) {\n            xx = x1 - min_x;\n          } else if (x1 - xx > max_x) {\n            xx = x1 - max_x;\n          }\n          if (yy > y1) {\n            yy = y1 + (x1 - xx) / aspect;\n          } else {\n            yy = y1 - (x1 - xx) / aspect;\n          }\n        }\n\n        if (xx < 0) {\n          x1 -= xx;\n          xx = 0;\n        } else if (xx > boundx) {\n          x1 -= xx - boundx;\n          xx = boundx;\n        }\n\n        if (yy < 0) {\n          y1 -= yy;\n          yy = 0;\n        } else if (yy > boundy) {\n          y1 -= yy - boundy;\n          yy = boundy;\n        }\n\n        return makeObj(flipCoords(x1, y1, xx, yy));\n      }\n      //}}}\n      function rebound(p) //{{{\n      {\n        if (p[0] < 0) {\n          p[0] = 0;\n        }\n        if (p[1] < 0) {\n          p[1] = 0;\n        }\n\n        if (p[0] > boundx) {\n          p[0] = boundx;\n        }\n        if (p[1] > boundy) {\n          p[1] = boundy;\n        }\n\n        return [p[0], p[1]];\n      }\n      //}}}\n      function flipCoords(x1, y1, x2, y2) //{{{\n      {\n        var xa = x1,\n            xb = x2,\n            ya = y1,\n            yb = y2;\n        if (x2 < x1) {\n          xa = x2;\n          xb = x1;\n        }\n        if (y2 < y1) {\n          ya = y2;\n          yb = y1;\n        }\n        return [Math.round(xa), Math.round(ya), Math.round(xb), Math.round(yb)];\n      }\n      //}}}\n      function getRect() //{{{\n      {\n        var xsize = x2 - x1,\n            ysize = y2 - y1,\n            delta;\n\n        if (xlimit && (Math.abs(xsize) > xlimit)) {\n          x2 = (xsize > 0) ? (x1 + xlimit) : (x1 - xlimit);\n        }\n        if (ylimit && (Math.abs(ysize) > ylimit)) {\n          y2 = (ysize > 0) ? (y1 + ylimit) : (y1 - ylimit);\n        }\n\n        if (ymin / yscale && (Math.abs(ysize) < ymin / yscale)) {\n          y2 = (ysize > 0) ? (y1 + ymin / yscale) : (y1 - ymin / yscale);\n        }\n        if (xmin / xscale && (Math.abs(xsize) < xmin / xscale)) {\n          x2 = (xsize > 0) ? (x1 + xmin / xscale) : (x1 - xmin / xscale);\n        }\n\n        if (x1 < 0) {\n          x2 -= x1;\n          x1 -= x1;\n        }\n        if (y1 < 0) {\n          y2 -= y1;\n          y1 -= y1;\n        }\n        if (x2 < 0) {\n          x1 -= x2;\n          x2 -= x2;\n        }\n        if (y2 < 0) {\n          y1 -= y2;\n          y2 -= y2;\n        }\n        if (x2 > boundx) {\n          delta = x2 - boundx;\n          x1 -= delta;\n          x2 -= delta;\n        }\n        if (y2 > boundy) {\n          delta = y2 - boundy;\n          y1 -= delta;\n          y2 -= delta;\n        }\n        if (x1 > boundx) {\n          delta = x1 - boundy;\n          y2 -= delta;\n          y1 -= delta;\n        }\n        if (y1 > boundy) {\n          delta = y1 - boundy;\n          y2 -= delta;\n          y1 -= delta;\n        }\n\n        return makeObj(flipCoords(x1, y1, x2, y2));\n      }\n      //}}}\n      function makeObj(a) //{{{\n      {\n        return {\n          x: a[0],\n          y: a[1],\n          x2: a[2],\n          y2: a[3],\n          w: a[2] - a[0],\n          h: a[3] - a[1]\n        };\n      }\n      //}}}\n\n      return {\n        flipCoords: flipCoords,\n        setPressed: setPressed,\n        setCurrent: setCurrent,\n        getOffset: getOffset,\n        moveOffset: moveOffset,\n        getCorner: getCorner,\n        getFixed: getFixed\n      };\n    }());\n\n    //}}}\n    // Selection Module {{{\n    var Selection = (function () {\n      var awake, hdep = 370;\n      var borders = {};\n      var handle = {};\n      var seehandles = false;\n      var hhs = options.handleOffset;\n\n      // Private Methods\n      function insertBorder(type) //{{{\n      {\n        var jq = $('<div />').css({\n          position: 'absolute',\n          opacity: options.borderOpacity\n        }).addClass(cssClass(type));\n        $img_holder.append(jq);\n        return jq;\n      }\n      //}}}\n      function dragDiv(ord, zi) //{{{\n      {\n        var jq = $('<div />').mousedown(createDragger(ord)).css({\n          cursor: ord + '-resize',\n          position: 'absolute',\n          zIndex: zi\n        });\n\n        if (Touch.support) {\n          jq.bind('touchstart', Touch.createDragger(ord));\n        }\n\n        $hdl_holder.append(jq);\n        return jq;\n      }\n      //}}}\n      function insertHandle(ord) //{{{\n      {\n        return dragDiv(ord, hdep++).css({\n          top: px(-hhs + 1),\n          left: px(-hhs + 1),\n          opacity: options.handleOpacity\n        }).addClass(cssClass('handle'));\n      }\n      //}}}\n      function insertDragbar(ord) //{{{\n      {\n        var s = options.handleSize,\n            h = s,\n            w = s,\n            t = hhs,\n            l = hhs;\n\n        switch (ord) {\n        case 'n':\n        case 's':\n          w = pct(100);\n          break;\n        case 'e':\n        case 'w':\n          h = pct(100);\n          break;\n        }\n\n        return dragDiv(ord, hdep++).width(w).height(h).css({\n          top: px(-t + 1),\n          left: px(-l + 1)\n        });\n      }\n      //}}}\n      function createHandles(li) //{{{\n      {\n        var i;\n        for (i = 0; i < li.length; i++) {\n          handle[li[i]] = insertHandle(li[i]);\n        }\n      }\n      //}}}\n      function moveHandles(c) //{{{\n      {\n        var midvert = Math.round((c.h / 2) - hhs),\n            midhoriz = Math.round((c.w / 2) - hhs),\n            north = -hhs + 1,\n            west = -hhs + 1,\n            east = c.w - hhs,\n            south = c.h - hhs,\n            x, y;\n\n        if (handle.e) {\n          handle.e.css({\n            top: px(midvert),\n            left: px(east)\n          });\n          handle.w.css({\n            top: px(midvert)\n          });\n          handle.s.css({\n            top: px(south),\n            left: px(midhoriz)\n          });\n          handle.n.css({\n            left: px(midhoriz)\n          });\n        }\n        if (handle.ne) {\n          handle.ne.css({\n            left: px(east)\n          });\n          handle.se.css({\n            top: px(south),\n            left: px(east)\n          });\n          handle.sw.css({\n            top: px(south)\n          });\n        }\n        if (handle.b) {\n          handle.b.css({\n            top: px(south)\n          });\n          handle.r.css({\n            left: px(east)\n          });\n        }\n      }\n      //}}}\n      function moveto(x, y) //{{{\n      {\n        $img2.css({\n          top: px(-y),\n          left: px(-x)\n        });\n        $sel.css({\n          top: px(y),\n          left: px(x)\n        });\n      }\n      //}}}\n      function resize(w, h) //{{{\n      {\n        $sel.width(w).height(h);\n      }\n      //}}}\n      function refresh() //{{{\n      {\n        var c = Coords.getFixed();\n\n        Coords.setPressed([c.x, c.y]);\n        Coords.setCurrent([c.x2, c.y2]);\n\n        updateVisible();\n      }\n      //}}}\n\n      // Internal Methods\n      function updateVisible() //{{{\n      {\n        if (awake) {\n          return update();\n        }\n      }\n      //}}}\n      function update() //{{{\n      {\n        var c = Coords.getFixed();\n\n        resize(c.w, c.h);\n        moveto(c.x, c.y);\n\n/*\n\t\t\toptions.drawBorders &&\n\t\t\t\tborders.right.css({ left: px(c.w-1) }) &&\n\t\t\t\t\tborders.bottom.css({ top: px(c.h-1) });\n      */\n\n        if (seehandles) {\n          moveHandles(c);\n        }\n        if (!awake) {\n          show();\n        }\n\n        options.onChange.call(api, unscale(c));\n      }\n      //}}}\n      function show() //{{{\n      {\n        $sel.show();\n\n        if (options.bgFade) {\n          $img.fadeTo(options.fadeTime, bgopacity);\n        } else {\n          $img.css('opacity', bgopacity);\n        }\n\n        awake = true;\n      }\n      //}}}\n      function release() //{{{\n      {\n        disableHandles();\n        $sel.hide();\n\n        if (options.bgFade) {\n          $img.fadeTo(options.fadeTime, 1);\n        } else {\n          $img.css('opacity', 1);\n        }\n\n        awake = false;\n        options.onRelease.call(api);\n      }\n      //}}}\n      function showHandles() //{{{\n      {\n        if (seehandles) {\n          moveHandles(Coords.getFixed());\n          $hdl_holder.show();\n        }\n      }\n      //}}}\n      function enableHandles() //{{{\n      {\n        seehandles = true;\n        if (options.allowResize) {\n          moveHandles(Coords.getFixed());\n          $hdl_holder.show();\n          return true;\n        }\n      }\n      //}}}\n      function disableHandles() //{{{\n      {\n        seehandles = false;\n        $hdl_holder.hide();\n      } \n      //}}}\n      function animMode(v) //{{{\n      {\n        if (animating === v) {\n          disableHandles();\n        } else {\n          enableHandles();\n        }\n      } \n      //}}}\n      function done() //{{{\n      {\n        animMode(false);\n        refresh();\n      } \n      //}}}\n      /* Insert draggable elements {{{*/\n\n      // Insert border divs for outline\n      if (options.drawBorders) {\n        borders = {\n          top: insertBorder('hline'),\n          bottom: insertBorder('hline bottom'),\n          left: insertBorder('vline'),\n          right: insertBorder('vline right')\n        };\n      }\n\n      // Insert handles on edges\n      if (options.dragEdges) {\n        handle.t = insertDragbar('n');\n        handle.b = insertDragbar('s');\n        handle.r = insertDragbar('e');\n        handle.l = insertDragbar('w');\n      }\n\n      // Insert side and corner handles\n      if (options.sideHandles) {\n        createHandles(['n', 's', 'e', 'w']);\n      }\n      if (options.cornerHandles) {\n        createHandles(['sw', 'nw', 'ne', 'se']);\n      }\n\n      \n      //}}}\n\n      var $track = newTracker().mousedown(createDragger('move')).css({\n        cursor: 'move',\n        position: 'absolute',\n        zIndex: 360\n      });\n\n      if (Touch.support) {\n        $track.bind('touchstart.jcrop', Touch.createDragger('move'));\n      }\n\n      $img_holder.append($track);\n      disableHandles();\n\n      return {\n        updateVisible: updateVisible,\n        update: update,\n        release: release,\n        refresh: refresh,\n        isAwake: function () {\n          return awake;\n        },\n        setCursor: function (cursor) {\n          $track.css('cursor', cursor);\n        },\n        enableHandles: enableHandles,\n        enableOnly: function () {\n          seehandles = true;\n        },\n        showHandles: showHandles,\n        disableHandles: disableHandles,\n        animMode: animMode,\n        done: done\n      };\n    }());\n    \n    //}}}\n    // Tracker Module {{{\n    var Tracker = (function () {\n      var onMove = function () {},\n          onDone = function () {},\n          trackDoc = options.trackDocument;\n\n      function toFront() //{{{\n      {\n        $trk.css({\n          zIndex: 450\n        });\n        if (trackDoc) {\n          $(document)\n            .bind('mousemove',trackMove)\n            .bind('mouseup',trackUp);\n        }\n      } \n      //}}}\n      function toBack() //{{{\n      {\n        $trk.css({\n          zIndex: 290\n        });\n        if (trackDoc) {\n          $(document)\n            .unbind('mousemove', trackMove)\n            .unbind('mouseup', trackUp);\n        }\n      } \n      //}}}\n      function trackMove(e) //{{{\n      {\n        onMove(mouseAbs(e));\n        return false;\n      } \n      //}}}\n      function trackUp(e) //{{{\n      {\n        e.preventDefault();\n        e.stopPropagation();\n\n        if (btndown) {\n          btndown = false;\n\n          onDone(mouseAbs(e));\n\n          if (Selection.isAwake()) {\n            options.onSelect.call(api, unscale(Coords.getFixed()));\n          }\n\n          toBack();\n          onMove = function () {};\n          onDone = function () {};\n        }\n\n        return false;\n      }\n      //}}}\n      function activateHandlers(move, done) //{{{\n      {\n        btndown = true;\n        onMove = move;\n        onDone = done;\n        toFront();\n        return false;\n      }\n      //}}}\n      function trackTouchMove(e) //{{{\n      {\n        e.pageX = e.originalEvent.changedTouches[0].pageX;\n        e.pageY = e.originalEvent.changedTouches[0].pageY;\n        return trackMove(e);\n      }\n      //}}}\n      function trackTouchEnd(e) //{{{\n      {\n        e.pageX = e.originalEvent.changedTouches[0].pageX;\n        e.pageY = e.originalEvent.changedTouches[0].pageY;\n        return trackUp(e);\n      }\n      //}}}\n      function setCursor(t) //{{{\n      {\n        $trk.css('cursor', t);\n      }\n      //}}}\n\n      if (Touch.support) {\n        $(document)\n          .bind('touchmove', trackTouchMove)\n          .bind('touchend', trackTouchEnd);\n      }\n\n      if (!trackDoc) {\n        $trk.mousemove(trackMove).mouseup(trackUp).mouseout(trackUp);\n      }\n\n      $img.before($trk);\n      return {\n        activateHandlers: activateHandlers,\n        setCursor: setCursor\n      };\n    }());\n    //}}}\n    // KeyManager Module {{{\n    var KeyManager = (function () {\n      var $keymgr = $('<input type=\"radio\" />').css({\n        position: 'fixed',\n        left: '-120px',\n        width: '12px'\n      }),\n          $keywrap = $('<div />').css({\n          position: 'absolute',\n          overflow: 'hidden'\n        }).append($keymgr);\n\n      function watchKeys() //{{{\n      {\n        if (options.keySupport) {\n          $keymgr.show();\n          $keymgr.focus();\n        }\n      }\n      //}}}\n      function onBlur(e) //{{{\n      {\n        $keymgr.hide();\n      }\n      //}}}\n      function doNudge(e, x, y) //{{{\n      {\n        if (options.allowMove) {\n          Coords.moveOffset([x, y]);\n          Selection.updateVisible();\n        }\n        e.preventDefault();\n        e.stopPropagation();\n      }\n      //}}}\n      function parseKey(e) //{{{\n      {\n        if (e.ctrlKey) {\n          return true;\n        }\n        shift_down = e.shiftKey ? true : false;\n        var nudge = shift_down ? 10 : 1;\n\n        switch (e.keyCode) {\n        case 37:\n          doNudge(e, -nudge, 0);\n          break;\n        case 39:\n          doNudge(e, nudge, 0);\n          break;\n        case 38:\n          doNudge(e, 0, -nudge);\n          break;\n        case 40:\n          doNudge(e, 0, nudge);\n          break;\n        case 27:\n          Selection.release();\n          break;\n        case 9:\n          return true;\n        }\n\n        return false;\n      }\n      //}}}\n\n      if (options.keySupport) {\n        $keymgr.keydown(parseKey).blur(onBlur);\n        if (ie6mode || !options.fixedSupport) {\n          $keymgr.css({\n            position: 'absolute',\n            left: '-20px'\n          });\n          $keywrap.append($keymgr).insertBefore($img);\n        } else {\n          $keymgr.insertBefore($img);\n        }\n      }\n\n\n      return {\n        watchKeys: watchKeys\n      };\n    }());\n    //}}}\n    // }}}\n    // API methods {{{\n    function setClass(cname) //{{{\n    {\n      $div.removeClass().addClass(cssClass('holder')).addClass(cname);\n    }\n    //}}}\n    function animateTo(a, callback) //{{{\n    {\n      var x1 = parseInt(a[0], 10) / xscale,\n          y1 = parseInt(a[1], 10) / yscale,\n          x2 = parseInt(a[2], 10) / xscale,\n          y2 = parseInt(a[3], 10) / yscale;\n\n      if (animating) {\n        return;\n      }\n\n      var animto = Coords.flipCoords(x1, y1, x2, y2),\n          c = Coords.getFixed(),\n          initcr = [c.x, c.y, c.x2, c.y2],\n          animat = initcr,\n          interv = options.animationDelay,\n          ix1 = animto[0] - initcr[0],\n          iy1 = animto[1] - initcr[1],\n          ix2 = animto[2] - initcr[2],\n          iy2 = animto[3] - initcr[3],\n          pcent = 0,\n          velocity = options.swingSpeed;\n\n      x = animat[0];\n      y = animat[1];\n      x2 = animat[2];\n      y2 = animat[3];\n\n      Selection.animMode(true);\n      var anim_timer;\n\n      function queueAnimator() {\n        window.setTimeout(animator, interv);\n      }\n      var animator = (function () {\n        return function () {\n          pcent += (100 - pcent) / velocity;\n\n          animat[0] = x + ((pcent / 100) * ix1);\n          animat[1] = y + ((pcent / 100) * iy1);\n          animat[2] = x2 + ((pcent / 100) * ix2);\n          animat[3] = y2 + ((pcent / 100) * iy2);\n\n          if (pcent >= 99.8) {\n            pcent = 100;\n          }\n          if (pcent < 100) {\n            setSelectRaw(animat);\n            queueAnimator();\n          } else {\n            Selection.done();\n            if (typeof(callback) === 'function') {\n              callback.call(api);\n            }\n          }\n        };\n      }());\n      queueAnimator();\n    }\n    //}}}\n    function setSelect(rect) //{{{\n    {\n      setSelectRaw([\n      parseInt(rect[0], 10) / xscale, parseInt(rect[1], 10) / yscale, parseInt(rect[2], 10) / xscale, parseInt(rect[3], 10) / yscale]);\n    }\n    //}}}\n    function setSelectRaw(l) //{{{\n    {\n      Coords.setPressed([l[0], l[1]]);\n      Coords.setCurrent([l[2], l[3]]);\n      Selection.update();\n    }\n    //}}}\n    function tellSelect() //{{{\n    {\n      return unscale(Coords.getFixed());\n    }\n    //}}}\n    function tellScaled() //{{{\n    {\n      return Coords.getFixed();\n    }\n    //}}}\n    function setOptionsNew(opt) //{{{\n    {\n      setOptions(opt);\n      interfaceUpdate();\n    }\n    //}}}\n    function disableCrop() //{{{\n    {\n      options.disabled = true;\n      Selection.disableHandles();\n      Selection.setCursor('default');\n      Tracker.setCursor('default');\n    }\n    //}}}\n    function enableCrop() //{{{\n    {\n      options.disabled = false;\n      interfaceUpdate();\n    }\n    //}}}\n    function cancelCrop() //{{{\n    {\n      Selection.done();\n      Tracker.activateHandlers(null, null);\n    }\n    //}}}\n    function destroy() //{{{\n    {\n      $div.remove();\n      $origimg.show();\n      $(obj).removeData('Jcrop');\n    }\n    //}}}\n    function setImage(src, callback) //{{{\n    {\n      Selection.release();\n      disableCrop();\n      var img = new Image();\n      img.onload = function () {\n        var iw = img.width;\n        var ih = img.height;\n        var bw = options.boxWidth;\n        var bh = options.boxHeight;\n        $img.width(iw).height(ih);\n        $img.attr('src', src);\n        $img2.attr('src', src);\n        presize($img, bw, bh);\n        boundx = $img.width();\n        boundy = $img.height();\n        $img2.width(boundx).height(boundy);\n        $trk.width(boundx + (bound * 2)).height(boundy + (bound * 2));\n        $div.width(boundx).height(boundy);\n        enableCrop();\n\n        if (typeof(callback) === 'function') {\n          callback.call(api);\n        }\n      };\n      img.src = src;\n    }\n    //}}}\n    function interfaceUpdate(alt) //{{{\n    // This method tweaks the interface based on options object.\n    // Called when options are changed and at end of initialization.\n    {\n      if (options.allowResize) {\n        if (alt) {\n          Selection.enableOnly();\n        } else {\n          Selection.enableHandles();\n        }\n      } else {\n        Selection.disableHandles();\n      }\n\n      Tracker.setCursor(options.allowSelect ? 'crosshair' : 'default');\n      Selection.setCursor(options.allowMove ? 'move' : 'default');\n\n\n      if (options.hasOwnProperty('setSelect')) {\n        setSelect(options.setSelect);\n        Selection.done();\n        delete(options.setSelect);\n      }\n\n      if (options.hasOwnProperty('trueSize')) {\n        xscale = options.trueSize[0] / boundx;\n        yscale = options.trueSize[1] / boundy;\n      }\n      if (options.hasOwnProperty('bgColor')) {\n\n        if (supportsColorFade() && options.fadeTime) {\n          $div.animate({\n            backgroundColor: options.bgColor\n          }, {\n            queue: false,\n            duration: options.fadeTime\n          });\n        } else {\n          $div.css('backgroundColor', options.bgColor);\n        }\n\n        delete(options.bgColor);\n      }\n      if (options.hasOwnProperty('bgOpacity')) {\n        bgopacity = options.bgOpacity;\n\n        if (Selection.isAwake()) {\n          if (options.fadeTime) {\n            $img.fadeTo(options.fadeTime, bgopacity);\n          } else {\n            $div.css('opacity', options.opacity);\n          }\n        }\n        delete(options.bgOpacity);\n      }\n\n      xlimit = options.maxSize[0] || 0;\n      ylimit = options.maxSize[1] || 0;\n      xmin = options.minSize[0] || 0;\n      ymin = options.minSize[1] || 0;\n\n      if (options.hasOwnProperty('outerImage')) {\n        $img.attr('src', options.outerImage);\n        delete(options.outerImage);\n      }\n\n      Selection.refresh();\n    }\n    //}}}\n    //}}}\n\n    if (Touch.support) {\n      $trk.bind('touchstart', Touch.newSelection);\n    }\n\n    $hdl_holder.hide();\n    interfaceUpdate(true);\n\n    var api = {\n      setImage: setImage,\n      animateTo: animateTo,\n      setSelect: setSelect,\n      setOptions: setOptionsNew,\n      tellSelect: tellSelect,\n      tellScaled: tellScaled,\n      setClass: setClass,\n\n      disable: disableCrop,\n      enable: enableCrop,\n      cancel: cancelCrop,\n      release: Selection.release,\n      destroy: destroy,\n\n      focus: KeyManager.watchKeys,\n\n      getBounds: function () {\n        return [boundx * xscale, boundy * yscale];\n      },\n      getWidgetSize: function () {\n        return [boundx, boundy];\n      },\n      getScaleFactor: function () {\n        return [xscale, yscale];\n      },\n\n      ui: {\n        holder: $div,\n        selection: $sel\n      }\n    };\n\n    if ($.browser.msie) {\n      $div.bind('selectstart', function () {\n        return false;\n      });\n    }\n\n    $origimg.data('Jcrop', api);\n    return api;\n  };\n  $.fn.Jcrop = function (options, callback) //{{{\n  {\n\n    function attachWhenDone(from) //{{{\n    {\n      var opt = (typeof(options) === 'object') ? options : {};\n      var loadsrc = opt.useImg || from.src;\n      var img = new Image();\n      img.onload = function () {\n        function attachJcrop() {\n          var api = $.Jcrop(from, opt);\n          if (typeof(callback) === 'function') {\n            callback.call(api);\n          }\n        }\n\n        function attachAttempt() {\n          if (!img.width || !img.height) {\n            window.setTimeout(attachAttempt, 50);\n          } else {\n            attachJcrop();\n          }\n        }\n        window.setTimeout(attachAttempt, 50);\n      };\n      img.src = loadsrc;\n    }\n    //}}}\n\n    // Iterate over each object, attach Jcrop\n    this.each(function () {\n      // If we've already attached to this object\n      if ($(this).data('Jcrop')) {\n        // The API can be requested this way (undocumented)\n        if (options === 'api') {\n          return $(this).data('Jcrop');\n        }\n        // Otherwise, we just reset the options...\n        else {\n          $(this).data('Jcrop').setOptions(options);\n        }\n      }\n      // If we haven't been attached, preload and attach\n      else {\n        attachWhenDone(this);\n      }\n    });\n\n    // Return \"this\" so the object is chainable (jQuery-style)\n    return this;\n  };\n  //}}}\n  // Global Defaults {{{\n  $.Jcrop.defaults = {\n\n    // Basic Settings\n    allowSelect: true,\n    allowMove: true,\n    allowResize: true,\n\n    trackDocument: true,\n\n    // Styling Options\n    baseClass: 'jcrop',\n    addClass: null,\n    bgColor: 'black',\n    bgOpacity: 0.6,\n    bgFade: false,\n    borderOpacity: 0.4,\n    handleOpacity: 0.5,\n    handleSize: 9,\n    handleOffset: 5,\n\n    aspectRatio: 0,\n    keySupport: true,\n    cornerHandles: true,\n    sideHandles: true,\n    drawBorders: true,\n    dragEdges: true,\n    fixedSupport: true,\n    touchSupport: null,\n\n    boxWidth: 0,\n    boxHeight: 0,\n    boundary: 2,\n    fadeTime: 400,\n    animationDelay: 20,\n    swingSpeed: 3,\n\n    minSelect: [0, 0],\n    maxSize: [0, 0],\n    minSize: [0, 0],\n\n    // Callbacks / Event Handlers\n    onChange: function () {},\n    onSelect: function () {},\n    onRelease: function () {}\n  };\n\n  // }}}\n}(jQuery));\n"
  },
  {
    "path": "newscoop/js/tapmodo-Jcrop-5e58bc9/js/jquery.color.js",
    "content": "/*\n * jQuery Color Animations\n * Copyright 2007 John Resig\n * Released under the MIT and GPL licenses.\n */\n\n(function(jQuery){\n\n\t// We override the animation for all of these color styles\n\tjQuery.each(['backgroundColor', 'borderBottomColor', 'borderLeftColor', 'borderRightColor', 'borderTopColor', 'color', 'outlineColor'], function(i,attr){\n\t\tjQuery.fx.step[attr] = function(fx){\n\t\t\tif ( fx.state == 0 ) {\n\t\t\t\tfx.start = getColor( fx.elem, attr );\n\t\t\t\tfx.end = getRGB( fx.end );\n\t\t\t}\n\n\t\t\tfx.elem.style[attr] = \"rgb(\" + [\n\t\t\t\tMath.max(Math.min( parseInt((fx.pos * (fx.end[0] - fx.start[0])) + fx.start[0]), 255), 0),\n\t\t\t\tMath.max(Math.min( parseInt((fx.pos * (fx.end[1] - fx.start[1])) + fx.start[1]), 255), 0),\n\t\t\t\tMath.max(Math.min( parseInt((fx.pos * (fx.end[2] - fx.start[2])) + fx.start[2]), 255), 0)\n\t\t\t].join(\",\") + \")\";\n\t\t}\n\t});\n\n\t// Color Conversion functions from highlightFade\n\t// By Blair Mitchelmore\n\t// http://jquery.offput.ca/highlightFade/\n\n\t// Parse strings looking for color tuples [255,255,255]\n\tfunction getRGB(color) {\n\t\tvar result;\n\n\t\t// Check if we're already dealing with an array of colors\n\t\tif ( color && color.constructor == Array && color.length == 3 )\n\t\t\treturn color;\n\n\t\t// Look for rgb(num,num,num)\n\t\tif (result = /rgb\\(\\s*([0-9]{1,3})\\s*,\\s*([0-9]{1,3})\\s*,\\s*([0-9]{1,3})\\s*\\)/.exec(color))\n\t\t\treturn [parseInt(result[1]), parseInt(result[2]), parseInt(result[3])];\n\n\t\t// Look for rgb(num%,num%,num%)\n\t\tif (result = /rgb\\(\\s*([0-9]+(?:\\.[0-9]+)?)\\%\\s*,\\s*([0-9]+(?:\\.[0-9]+)?)\\%\\s*,\\s*([0-9]+(?:\\.[0-9]+)?)\\%\\s*\\)/.exec(color))\n\t\t\treturn [parseFloat(result[1])*2.55, parseFloat(result[2])*2.55, parseFloat(result[3])*2.55];\n\n\t\t// Look for #a0b1c2\n\t\tif (result = /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(color))\n\t\t\treturn [parseInt(result[1],16), parseInt(result[2],16), parseInt(result[3],16)];\n\n\t\t// Look for #fff\n\t\tif (result = /#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(color))\n\t\t\treturn [parseInt(result[1]+result[1],16), parseInt(result[2]+result[2],16), parseInt(result[3]+result[3],16)];\n\n\t\t// Otherwise, we're most likely dealing with a named color\n\t\treturn colors[jQuery.trim(color).toLowerCase()];\n\t}\n\t\n\tfunction getColor(elem, attr) {\n\t\tvar color;\n\n\t\tdo {\n\t\t\tcolor = jQuery.curCSS(elem, attr);\n\n\t\t\t// Keep going until we find an element that has color, or we hit the body\n\t\t\tif ( color != '' && color != 'transparent' || jQuery.nodeName(elem, \"body\") )\n\t\t\t\tbreak; \n\n\t\t\tattr = \"backgroundColor\";\n\t\t} while ( elem = elem.parentNode );\n\n\t\treturn getRGB(color);\n\t};\n\t\n\t// Some named colors to work with\n\t// From Interface by Stefan Petre\n\t// http://interface.eyecon.ro/\n\n\tvar colors = {\n\t\taqua:[0,255,255],\n\t\tazure:[240,255,255],\n\t\tbeige:[245,245,220],\n\t\tblack:[0,0,0],\n\t\tblue:[0,0,255],\n\t\tbrown:[165,42,42],\n\t\tcyan:[0,255,255],\n\t\tdarkblue:[0,0,139],\n\t\tdarkcyan:[0,139,139],\n\t\tdarkgrey:[169,169,169],\n\t\tdarkgreen:[0,100,0],\n\t\tdarkkhaki:[189,183,107],\n\t\tdarkmagenta:[139,0,139],\n\t\tdarkolivegreen:[85,107,47],\n\t\tdarkorange:[255,140,0],\n\t\tdarkorchid:[153,50,204],\n\t\tdarkred:[139,0,0],\n\t\tdarksalmon:[233,150,122],\n\t\tdarkviolet:[148,0,211],\n\t\tfuchsia:[255,0,255],\n\t\tgold:[255,215,0],\n\t\tgreen:[0,128,0],\n\t\tindigo:[75,0,130],\n\t\tkhaki:[240,230,140],\n\t\tlightblue:[173,216,230],\n\t\tlightcyan:[224,255,255],\n\t\tlightgreen:[144,238,144],\n\t\tlightgrey:[211,211,211],\n\t\tlightpink:[255,182,193],\n\t\tlightyellow:[255,255,224],\n\t\tlime:[0,255,0],\n\t\tmagenta:[255,0,255],\n\t\tmaroon:[128,0,0],\n\t\tnavy:[0,0,128],\n\t\tolive:[128,128,0],\n\t\torange:[255,165,0],\n\t\tpink:[255,192,203],\n\t\tpurple:[128,0,128],\n\t\tviolet:[128,0,128],\n\t\tred:[255,0,0],\n\t\tsilver:[192,192,192],\n\t\twhite:[255,255,255],\n\t\tyellow:[255,255,0]\n\t};\n\t\n})(jQuery);\n"
  },
  {
    "path": "newscoop/js/tinymce/jquery.tinymce.js",
    "content": "(function(b){var e,d,a=[],c=window;b.fn.tinymce=function(j){var p=this,g,k,h,m,i,l=\"\",n=\"\";if(!p.length){return p}if(!j){return tinyMCE.get(p[0].id)}p.css(\"visibility\",\"hidden\");function o(){var r=[],q=0;if(f){f();f=null}p.each(function(t,u){var s,w=u.id,v=j.oninit;if(!w){u.id=w=tinymce.DOM.uniqueId()}s=new tinymce.Editor(w,j);r.push(s);s.onInit.add(function(){var x,y=v;p.css(\"visibility\",\"\");if(v){if(++q==r.length){if(tinymce.is(y,\"string\")){x=(y.indexOf(\".\")===-1)?null:tinymce.resolve(y.replace(/\\.\\w+$/,\"\"));y=tinymce.resolve(y)}y.apply(x||tinymce,r)}}})});b.each(r,function(t,s){s.render()})}if(!c.tinymce&&!d&&(g=j.script_url)){d=1;h=g.substring(0,g.lastIndexOf(\"/\"));if(/_(src|dev)\\.js/g.test(g)){n=\"_src\"}m=g.lastIndexOf(\"?\");if(m!=-1){l=g.substring(m+1)}c.tinyMCEPreInit=c.tinyMCEPreInit||{base:h,suffix:n,query:l};if(g.indexOf(\"gzip\")!=-1){i=j.language||\"en\";g=g+(/\\?/.test(g)?\"&\":\"?\")+\"js=true&core=true&suffix=\"+escape(n)+\"&themes=\"+escape(j.theme)+\"&plugins=\"+escape(j.plugins)+\"&languages=\"+i;if(!c.tinyMCE_GZ){tinyMCE_GZ={start:function(){tinymce.suffix=n;function q(r){tinymce.ScriptLoader.markDone(tinyMCE.baseURI.toAbsolute(r))}q(\"langs/\"+i+\".js\");q(\"themes/\"+j.theme+\"/editor_template\"+n+\".js\");q(\"themes/\"+j.theme+\"/langs/\"+i+\".js\");b.each(j.plugins.split(\",\"),function(s,r){if(r){q(\"plugins/\"+r+\"/editor_plugin\"+n+\".js\");q(\"plugins/\"+r+\"/langs/\"+i+\".js\")}})},end:function(){}}}}b.ajax({type:\"GET\",url:g,dataType:\"script\",cache:true,success:function(){tinymce.dom.Event.domLoaded=1;d=2;if(j.script_loaded){j.script_loaded()}o();b.each(a,function(q,r){r()})}})}else{if(d===1){a.push(o)}else{o()}}return p};b.extend(b.expr[\":\"],{tinymce:function(g){return g.id&&!!tinyMCE.get(g.id)}});function f(){function i(l){if(l===\"remove\"){this.each(function(n,o){var m=h(o);if(m){m.remove()}})}this.find(\"span.mceEditor,div.mceEditor\").each(function(n,o){var m=tinyMCE.get(o.id.replace(/_parent$/,\"\"));if(m){m.remove()}})}function k(n){var m=this,l;if(n!==e){i.call(m);m.each(function(p,q){var o;if(o=tinyMCE.get(q.id)){o.setContent(n)}})}else{if(m.length>0){if(l=tinyMCE.get(m[0].id)){return l.getContent()}}}}function h(m){var l=null;(m)&&(m.id)&&(c.tinymce)&&(l=tinyMCE.get(m.id));return l}function g(l){return !!((l)&&(l.length)&&(c.tinymce)&&(l.is(\":tinymce\")))}var j={};b.each([\"text\",\"html\",\"val\"],function(n,l){var o=j[l]=b.fn[l],m=(l===\"text\");b.fn[l]=function(s){var p=this;if(!g(p)){return o.apply(p,arguments)}if(s!==e){k.call(p.filter(\":tinymce\"),s);o.apply(p.not(\":tinymce\"),arguments);return p}else{var r=\"\";var q=arguments;(m?p:p.eq(0)).each(function(u,v){var t=h(v);r+=t?(m?t.getContent().replace(/<(?:\"[^\"]*\"|'[^']*'|[^'\">])*>/g,\"\"):t.getContent()):o.apply(b(v),q)});return r}}});b.each([\"append\",\"prepend\"],function(n,m){var o=j[m]=b.fn[m],l=(m===\"prepend\");b.fn[m]=function(q){var p=this;if(!g(p)){return o.apply(p,arguments)}if(q!==e){p.filter(\":tinymce\").each(function(s,t){var r=h(t);r&&r.setContent(l?q+r.getContent():r.getContent()+q)});o.apply(p.not(\":tinymce\"),arguments);return p}}});b.each([\"remove\",\"replaceWith\",\"replaceAll\",\"empty\"],function(m,l){var n=j[l]=b.fn[l];b.fn[l]=function(){i.call(this,l);return n.apply(this,arguments)}});j.attr=b.fn.attr;b.fn.attr=function(n,q,o){var m=this;if((!n)||(n!==\"value\")||(!g(m))){return j.attr.call(m,n,q,o)}if(q!==e){k.call(m.filter(\":tinymce\"),q);j.attr.call(m.not(\":tinymce\"),n,q,o);return m}else{var p=m[0],l=h(p);return l?l.getContent():j.attr.call(b(p),n,q,o)}}}})(jQuery);"
  },
  {
    "path": "newscoop/js/tinymce/langs/ar.js",
    "content": "tinyMCE.addI18n({ar:{common:{more_colors:\"\\u0627\\u0644\\u0645\\u0632\\u064a\\u062f \\u0645\\u0646 \\u0627\\u0644\\u0623\\u0644\\u0648\\u0627\\u0646\",invalid_data:\"\\u062e\\u0637\\u0623.:   \\u062f\\u062e\\u0644 \\u0635\\u0627\\u0644\\u062d \\u0627\\u0644\\u0642\\u064a\\u0645 \\u060c \\u0648\\u0647\\u0630\\u0647 \\u0647\\u064a \\u0645\\u0639\\u0644\\u0645\\u0629 \\u0628\\u0627\\u0644\\u0644\\u0648\\u0646 \\u0627\\u0644\\u0627\\u062d\\u0645\\u0631\",popup_blocked:\"\\u0639\\u0630\\u0631\\u0627 \\u060c \\u0644\\u0643\\u0646 \\u0644\\u0627\\u062d\\u0638\\u0646\\u0627 \\u0628\\u0623\\u0646 \\u0645\\u0627 \\u062a\\u062a\\u0645\\u062a\\u0639\\u0648\\u0646 \\u0628\\u0647 \\u0627\\u0644\\u0645\\u0646\\u0628\\u062b\\u0642\\u0629 \\u0645\\u062d\\u0635\\u0631 \\u0648\\u062a\\u0639\\u0637\\u064a\\u0644 \\u0627\\u0644\\u0625\\u0637\\u0627\\u0631 \\u0627\\u0644\\u0630\\u064a \\u064a\\u0648\\u0641\\u0631 \\u0648\\u0638\\u0627\\u0626\\u0641 \\u0627\\u0644\\u062a\\u0637\\u0628\\u064a\\u0642. \\u0633\\u0648\\u0641 \\u062a\\u062d\\u062a\\u0627\\u062c \\u0625\\u0644\\u0649 \\u062a\\u0639\\u0637\\u064a\\u0644 \\u0627\\u0644\\u0645\\u0646\\u0628\\u062b\\u0642\\u0629 \\u062d\\u0638\\u0631 \\u0639\\u0644\\u0649 \\u0647\\u0630\\u0627 \\u0627\\u0644\\u0645\\u0648\\u0642\\u0639 \\u0645\\u0646 \\u0623\\u062c\\u0644 \\u0627\\u0644\\u0627\\u0633\\u062a\\u0641\\u0627\\u062f\\u0629 \\u0627\\u0644\\u0643\\u0627\\u0645\\u0644\\u0629 \\u0645\\u0646 \\u0647\\u0630\\u0647 \\u0627\\u0644\\u0623\\u062f\\u0627\\u0629\",clipboard_no_support:\"\\u062d\\u0627\\u0644\\u064a\\u0627 \\u063a\\u064a\\u0631 \\u0645\\u0639\\u062a\\u0645\\u062f\\u0629 \\u0645\\u0646 \\u0642\\u0628\\u0644 \\u0627\\u0644\\u0645\\u062a\\u0635\\u0641\\u062d \\u0627\\u0644\\u062e\\u0627\\u0635 \\u0628\\u0643 \\u060c \\u0627\\u0633\\u062a\\u062e\\u062f\\u0627\\u0645 \\u0627\\u062e\\u062a\\u0635\\u0627\\u0631\\u0627\\u062a \\u0644\\u0648\\u062d\\u0629 \\u0627\\u0644\\u0645\\u0641\\u0627\\u062a\\u064a\\u062d \\u0628\\u062f\\u0644\\u0627 \\u0645\\u0646 \\u0630\\u0644\\u0643.\",clipboard_msg:\"\\u0646\\u0633\\u062e / \\u0642\\u0635 / \\u0644\\u0635\\u0642 \\u063a\\u064a\\u0631 \\u0645\\u062a\\u0648\\u0641\\u0631 \\u0641\\u064a \\u0645\\u0648\\u0632\\u064a\\u0644\\u0627 \\u0648\\u0641\\u0627\\u064a\\u0631\\u0641\\u0648\\u0643\\u0633.\\\\n\\u062a\\u0631\\u064a\\u062f \\u0627\\u0644\\u0645\\u0632\\u064a\\u062f \\u0645\\u0646 \\u0627\\u0644\\u0645\\u0639\\u0644\\u0648\\u0645\\u0627\\u062a \\u062d\\u0648\\u0644 \\u0647\\u0630\\u0647 \\u0627\\u0644\\u0645\\u0634\\u0643\\u0644\\u0629\\u061f\",not_set:\"-- Not set --\",class_name:\"\\u0627\\u0644\\u062f\\u0631\\u062c\\u0629\",browse:\"\\u062a\\u0635\\u0641\\u062d\",close:\"\\u0625\\u063a\\u0644\\u0627\\u0642\",cancel:\"\\u0625\\u0644\\u063a\\u0627\\u0621\",update:\"\\u062a\\u062d\\u062f\\u064a\\u062b\",insert:\"\\u0625\\u062f\\u0631\\u0627\\u062c\",apply:\"\\u062a\\u062a\\u0637\\u0628\\u064a\\u0642\\u0637\\u0628\\u064a\\u0642\",edit_confirm:\"Do you want to use the WYSIWYG mode for this textarea?\"},contextmenu:{full:\"\\u0643\\u0627\\u0645\\u0644\",right:\"\\u0627\\u0644\\u062d\\u0642\",center:\"\\u0645\\u0631\\u0643\\u0632\",left:\"\\u0628\\u0642\\u064a\",align:\"\\u0645\\u062d\\u0627\\u0630\\u0627\\u0629\"},insertdatetime:{day_short:\"\\u0623\\u062d\\u062f \\u060c \\u0627\\u0644\\u0627\\u062b\\u0646\\u064a\\u0646 \\u060c \\u0627\\u0644\\u062b\\u0644\\u0627\\u062b\\u0627\\u0621 \\u060c \\u0627\\u0644\\u0627\\u0631\\u0628\\u0639\\u0627\\u0621 \\u060c \\u0627\\u0644\\u062e\\u0645\\u064a\\u0633 \\u060c \\u0627\\u0644\\u062c\\u0645\\u0639\\u0629 \\u060c \\u0627\\u0644\\u0633\\u0628\\u062a \\u0648\\u0627\\u0644\\u0623\\u062d\\u062f\",day_long:\"\\u0627\\u0644\\u0623\\u062d\\u062f \\u060c \\u0627\\u0644\\u0627\\u062b\\u0646\\u064a\\u0646 \\u060c \\u0627\\u0644\\u062b\\u0644\\u0627\\u062b\\u0627\\u0621 \\u060c \\u0627\\u0644\\u0627\\u0631\\u0628\\u0639\\u0627\\u0621 \\u060c \\u0627\\u0644\\u062e\\u0645\\u064a\\u0633 \\u060c \\u0627\\u0644\\u062c\\u0645\\u0639\\u0629 \\u060c \\u0627\\u0644\\u0633\\u0628\\u062a \\u060c \\u0627\\u0644\\u0623\\u062d\\u062f\",months_short:\"\\u064a\\u0646\\u0627\\u064a\\u0631 \\u060c \\u0641\\u0628\\u0631\\u0627\\u064a\\u0631 \\u060c \\u0645\\u0627\\u0631\\u0633 \\u060c \\u0623\\u0628\\u0631\\u064a\\u0644 \\u0648\\u0645\\u0627\\u064a\\u0648 \\u0648\\u064a\\u0648\\u0646\\u064a\\u0648 \\u060c \\u064a\\u0648\\u0644\\u064a\\u0648 \\u060c \\u0623\\u063a\\u0633\\u0637\\u0633 \\u060c \\u0633\\u0628\\u062a\\u0645\\u0628\\u0631 \\u060c \\u0623\\u0643\\u062a\\u0648\\u0628\\u0631 \\u060c \\u0646\\u0648\\u0641\\u0645\\u0628\\u0631 \\u060c \\u062f\\u064a\\u0633\\u0645\\u0628\\u0631\",months_long:\"\\u064a\\u0646\\u0627\\u064a\\u0631 \\u060c \\u0641\\u0628\\u0631\\u0627\\u064a\\u0631 \\u060c \\u0622\\u0630\\u0627\\u0631 \\u060c \\u0646\\u064a\\u0633\\u0627\\u0646 \\u060c \\u0623\\u064a\\u0627\\u0631 \\u060c \\u062d\\u0632\\u064a\\u0631\\u0627\\u0646 \\u060c \\u062a\\u0645\\u0648\\u0632 \\u060c \\u0622\\u0628 \\u060c \\u0623\\u064a\\u0644\\u0648\\u0644 / \\u0633\\u0628\\u062a\\u0645\\u0628\\u0631 \\u060c \\u0623\\u0643\\u062a\\u0648\\u0628\\u0631 \\u060c \\u0646\\u0648\\u0641\\u0645\\u0628\\u0631 \\u060c \\u062f\\u064a\\u0633\\u0645\\u0628\\u0631\",inserttime_desc:\"\\u0627\\u062f\\u0631\\u0627\\u062c \\u0627\\u0644\\u0648\\u0642\\u062a\",insertdate_desc:\"\\u0627\\u062f\\u0631\\u0627\\u062c \\u0627\\u0644\\u062a\\u0627\\u0631\\u064a\\u062e\",time_fmt:\"%H:%M:%S\",date_fmt:\"%Y-%m-%d\"},print:{print_desc:\"\\u0637\\u0628\\u0627\\u0639\\u0629\"},preview:{preview_desc:\"\\u0645\\u0639\\u0627\\u064a\\u0646\\u0629\"},directionality:{rtl_desc:\"\\u0627\\u0644\\u0627\\u062a\\u062c\\u0627\\u0647 \\u0645\\u0646 \\u0627\\u0644\\u064a\\u0645\\u064a\\u0646 \\u0644\\u0644\\u064a\\u0633\\u0627\\u0631\",ltr_desc:\"\\u0627\\u0644\\u0627\\u062a\\u062c\\u0627\\u0647 \\u0645\\u0646 \\u0627\\u0644\\u064a\\u0633\\u0627\\u0631 \\u0627\\u0644\\u0649 \\u0627\\u0644\\u064a\\u0645\\u064a\\u0646\"},layer:{content:\"\\u0637\\u0628\\u0642\\u0647 \\u062c\\u062f\\u064a\\u062f\\u0647 ...\",absolute_desc:\"\\u062c\\u0639\\u0644 \\u0627\\u0644\\u0637\\u0628\\u0642\\u0647 \\u062d\\u0631\\u0647\",backward_desc:\"\\u0646\\u0642\\u0644 \\u0644\\u0644\\u062e\\u0644\\u0641\",forward_desc:\"\\u0646\\u0642\\u0644 \\u0644\\u0644\\u0627\\u0645\\u0627\\u0645\",insertlayer_desc:\"\\u0625\\u062f\\u0631\\u0627\\u062c \\u0637\\u0628\\u0642\\u0629 \\u062c\\u062f\\u064a\\u062f\\u0629\"},save:{save_desc:\"\\u062d\\u0641\\u0638\",cancel_desc:\"\\u0625\\u0644\\u063a\\u0627\\u0621 \\u0643\\u0627\\u0641\\u0629 \\u0627\\u0644\\u062a\\u063a\\u064a\\u064a\\u0631\\u0627\\u062a\"},nonbreaking:{nonbreaking_desc:\"\\u0625\\u062f\\u0631\\u0627\\u062c \\u062d\\u0631\\u0641 \\u0645\\u0633\\u0627\\u0641\\u0629 \\u063a\\u064a\\u0631 \\u0645\\u0646\\u0642\\u0633\\u0645\\u0629\"},iespell:{download:\"\\u0627\\u0644\\u0645\\u062f\\u0642\\u0642 \\u0627\\u0644\\u0627\\u0645\\u0644\\u0627\\u0626\\u0649 \\u063a\\u064a\\u0631 \\u0645\\u0631\\u0643\\u0628 \\u0647\\u0644 \\u062a\\u0631\\u064a\\u062f \\u062a\\u0631\\u0643\\u064a\\u0628\\u0647 \\u0627\\u0644\\u0627\\u0646\",iespell_desc:\"\\u062a\\u0634\\u063a\\u064a\\u0644 \\u0627\\u0644\\u0645\\u062f\\u0642\\u0642 \\u0627\\u0644\\u0627\\u0645\\u0644\\u0627\\u0626\\u0649\"},advhr:{advhr_desc:\"Horizontal rule\",delta_height:\"\",delta_width:\"\"},emotions:{emotions_desc:\"\\u0627\\u0644\\u0631\\u0633\\u0648\\u0645 \\u0627\\u0644\\u062a\\u0639\\u0628\\u064a\\u0631\\u064a\\u0647\",delta_height:\"\",delta_width:\"\"},searchreplace:{replace_desc:\"\\u0628\\u062d\\u062b/\\u0627\\u0633\\u062a\\u0628\\u062f\\u0627\\u0644\",search_desc:\"\\u0628\\u062d\\u062b\",delta_width:\"\",delta_height:\"\"},advimage:{image_desc:\"Insert/edit image\",delta_width:\"\",delta_height:\"\"},advlink:{link_desc:\"\\u0627\\u062f\\u062e\\u0627\\u0644 -\\u062a\\u0639\\u062f\\u064a\\u0644 \\u0631\\u0627\\u0628\\u0637\",delta_height:\"\",delta_width:\"\"},xhtmlxtras:{attribs_desc:\"Insert/Edit Attributes\",ins_desc:\"Insertion\",del_desc:\"Deletion\",acronym_desc:\"Acronym\",abbr_desc:\"Abbreviation\",cite_desc:\"Citation\",attribs_delta_height:\"\",attribs_delta_width:\"\",ins_delta_height:\"\",ins_delta_width:\"\",del_delta_height:\"\",del_delta_width:\"\",acronym_delta_height:\"\",acronym_delta_width:\"\",abbr_delta_height:\"\",abbr_delta_width:\"\",cite_delta_height:\"\",cite_delta_width:\"\"},style:{desc:\"Edit CSS Style\",delta_height:\"\",delta_width:\"\"},paste:{plaintext_mode:\"\\u0644\\u0635\\u0642 \\u0627\\u0644\\u0622\\u0646 \\u0641\\u064a \\u0648\\u0636\\u0639 \\u0627\\u0644\\u0646\\u0635 \\u0627\\u0644\\u0639\\u0627\\u062f\\u064a. \\u0627\\u0646\\u0642\\u0631 \\u0645\\u0631\\u0629 \\u0623\\u062e\\u0631\\u0649 \\u0644\\u0644\\u062a\\u0628\\u062f\\u064a\\u0644 \\u0625\\u0644\\u0649 \\u0627\\u0644\\u0648\\u0636\\u0639 \\u0644\\u0635\\u0642 \\u0627\\u0644\\u0639\\u0627\\u062f\\u064a\\u0629.\",plaintext_mode_sticky:\"\\u0644\\u0635\\u0642 \\u0627\\u0644\\u0622\\u0646 \\u0641\\u064a \\u0648\\u0636\\u0639 \\u0627\\u0644\\u0646\\u0635 \\u0627\\u0644\\u0639\\u0627\\u062f\\u064a. \\u0627\\u0646\\u0642\\u0631 \\u0645\\u0631\\u0629 \\u0623\\u062e\\u0631\\u0649 \\u0644\\u0644\\u062a\\u0628\\u062f\\u064a\\u0644 \\u0625\\u0644\\u0649 \\u0627\\u0644\\u0648\\u0636\\u0639 \\u0644\\u0635\\u0642 \\u0627\\u0644\\u0639\\u0627\\u062f\\u064a\\u0629. \\u0648\\u0628\\u0639\\u062f \\u0644\\u0635\\u0642 \\u0634\\u064a\\u0621 \\u064a\\u062a\\u0645 \\u0625\\u0631\\u062c\\u0627\\u0639 \\u0625\\u0644\\u0649 \\u0648\\u0636\\u0639 \\u0644\\u0635\\u0642 \\u0627\\u0644\\u0639\\u0627\\u062f\\u064a\\u0629\",selectall_desc:\"\\u062d\\u062f\\u062f \\u0643\\u0627\\u0641\\u0629\",paste_word_desc:\"\\u0644\\u0635\\u0642 \\u0645\\u0646 \\u0648\\u0648\\u0631\\u062f\",paste_text_desc:\"\\u0644\\u0635\\u0642 \\u0643\\u0646\\u0635 \\u0639\\u0627\\u062f\\u064a\"},paste_dlg:{word_title:\"\\u0627\\u0633\\u062a\\u062e\\u062f\\u0627\\u0645  \\u0639\\u0644\\u0649 \\u0644\\u0648\\u062d\\u0629 \\u0627\\u0644\\u0645\\u0641\\u0627\\u062a\\u064a\\u062d \\u0644\\u0644\\u0635\\u0642 \\u0627\\u0644\\u0646\\u0635 \\u0641\\u064a \\u0627\\u0644\\u0625\\u0637\\u0627\\u0631.( CTRL+V )\",text_linebreaks:\"\\u0627\\u062d\\u062a\\u0641\\u0638 \\u0628\\u0641\\u0648\\u0627\\u0635\\u0644 \\u0627\\u0644\\u0623\\u0633\\u0637\\u0631\",text_title:\"\\u0627\\u0633\\u062a\\u062e\\u062f\\u0627\\u0645  \\u0639\\u0644\\u0649 \\u0644\\u0648\\u062d\\u0629 \\u0627\\u0644\\u0645\\u0641\\u0627\\u062a\\u064a\\u062d \\u0644\\u0644\\u0635\\u0642 \\u0627\\u0644\\u0646\\u0635 \\u0641\\u064a \\u0627\\u0644\\u0625\\u0637\\u0627\\u0631.( CTRL+V )\"},table:{cell:\"\\u0627\\u0644\\u062e\\u0644\\u064a\\u0629\",col:\"\\u0627\\u0644\\u0639\\u0645\\u0648\\u062f\",row:\"\\u0627\\u0644\\u0635\\u0641\",del:\"\\u062d\\u0630\\u0641 \\u062c\\u062f\\u0648\\u0644\",copy_row_desc:\"\\u0646\\u0633\\u062e\\u0629 \\u0627\\u0644\\u062c\\u062f\\u0648\\u0644 \\u0627\\u0644\\u0635\\u0641\",cut_row_desc:\"\\u0642\\u0635 \\u0627\\u0644\\u062c\\u062f\\u0648\\u0644 \\u0627\\u0644\\u0635\\u0641\",paste_row_after_desc:\"\\u0644\\u0635\\u0642 \\u0635\\u0641 \\u0627\\u0644\\u062c\\u062f\\u0648\\u0644 \\u0628\\u0639\\u062f\",paste_row_before_desc:\"\\u0644\\u0635\\u0642 \\u0635\\u0641 \\u0627\\u0644\\u062c\\u062f\\u0648\\u0644 \\u0642\\u0628\\u0644\",props_desc:\"\\u062e\\u0635\\u0627\\u0626\\u0635 \\u0627\\u0644\\u062c\\u062f\\u0648\\u0644\",cell_desc:\"\\u062e\\u0635\\u0627\\u0626\\u0635 \\u0627\\u0644\\u062c\\u062f\\u0648\\u0644 \\u0627\\u0644\\u062e\\u0644\\u064a\\u0629\",row_desc:\"\\u062e\\u0635\\u0627\\u0626\\u0635 \\u0627\\u0644\\u062c\\u062f\\u0648\\u0644 \\u0627\\u0644\\u0635\\u0641\",merge_cells_desc:\"\\u062f\\u0645\\u062c \\u0627\\u0644\\u062e\\u0644\\u0627\\u064a\\u0627 \\u0627\\u0644\\u062c\\u062f\\u0648\\u0644\",split_cells_desc:\"\\u0627\\u0646\\u0642\\u0633\\u0627\\u0645 \\u062e\\u0644\\u0627\\u064a\\u0627 \\u0627\\u0644\\u062c\\u062f\\u0648\\u0644 \\u0627\\u0644\\u0645\\u062f\\u0645\\u062c\\u0629\",delete_col_desc:\"\\u0625\\u0632\\u0627\\u0644\\u0629 \\u0639\\u0645\\u0648\\u062f\",col_after_desc:\"\\u0625\\u062f\\u0631\\u0627\\u062c \\u0639\\u0645\\u0648\\u062f \\u0628\\u0639\\u062f\",col_before_desc:\"\\u0625\\u062f\\u0631\\u0627\\u062c \\u0639\\u0645\\u0648\\u062f \\u0642\\u0628\\u0644\",delete_row_desc:\"\\u062d\\u0630\\u0641 \\u0635\\u0641\",row_after_desc:\"\\u0625\\u062f\\u0631\\u0627\\u062c \\u0635\\u0641 \\u0628\\u0639\\u062f\",row_before_desc:\"\\u0625\\u062f\\u0631\\u0627\\u062c \\u0635\\u0641 \\u0642\\u0628\\u0644\",desc:\"\\u0625\\u062f\\u0631\\u0627\\u062c \\u062c\\u062f\\u0648\\u0644 \\u062c\\u062f\\u064a\\u062f\",merge_cells_delta_height:\"\",merge_cells_delta_width:\"\",table_delta_height:\"\",table_delta_width:\"\",cellprops_delta_height:\"\",cellprops_delta_width:\"\",rowprops_delta_height:\"\",rowprops_delta_width:\"\"},autosave:{warning_message:\"If you restore the saved content, you will lose all the content that is currently in the editor.\\\\n\\\\nAre you sure you want to restore the saved content?.\",restore_content:\"Restore auto-saved content.\",unload_msg:\"The changes you made will be lost if you navigate away from this page.\"},fullscreen:{desc:\"\\u062a\\u0628\\u062f\\u064a\\u0644 \\u0648\\u0636\\u0639 \\u0645\\u0644\\u0621 \\u0627\\u0644\\u0634\\u0627\\u0634\\u0629\"},media:{edit:\"Edit embedded media\",desc:\"Insert / edit embedded media\",delta_height:\"\",delta_width:\"\"},fullpage:{desc:\"Document properties\",delta_width:\"\",delta_height:\"\"},template:{desc:\"Insert predefined template content\"},visualchars:{desc:\"Visual control characters on/off.\"},spellchecker:{desc:\"Toggle spellchecker\",menu:\"Spellchecker settings\",ignore_word:\"Ignore word\",ignore_words:\"Ignore all\",langs:\"Languages\",wait:\"Please wait...\",sug:\"Suggestions\",no_sug:\"No suggestions\",no_mpell:\"No misspellings found.\"},pagebreak:{desc:\"Insert page break.\"},advlist:{types:\"Types\",def:\"Default\",lower_alpha:\"Lower alpha\",lower_greek:\"Lower greek\",lower_roman:\"Lower roman\",upper_alpha:\"Upper alpha\",upper_roman:\"Upper roman\",circle:\"Circle\",disc:\"Disc\",square:\"Square\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/az.js",
    "content": "tinyMCE.addI18n({az:{common:{\"more_colors\":\"Daha \\u00e7ox r\\u0259ng\",\"invalid_data\":\"X\\u0259ta: Q\\u0131rm\\u0131z\\u0131 il\\u0259 qeyd edilmi\\u015fl\\u0259r s\\u0259hv daxil edilib.\",\"popup_blocked\":\"Ba\\u011f\\u0131\\u015flay\\u0131n, lakin sizin \\u00fcz\\u0259 \\u00e7\\u0131xan p\\u0259nc\\u0259r\\u0259l\\u0259riniz funksiya p\\u0259nc\\u0259r\\u0259sinin qar\\u015f\\u0131s\\u0131n\\u0131 ald\\u0131. G\\u0259r\\u0259k \\u00fcz\\u0259 \\u00e7\\u0131xan p\\u0259nc\\u0259r\\u0259l\\u0259rin bloklama nizamlamas\\u0131n\\u0131 l\\u0259\\u011fv ed\\u0259siniz ki, al\\u0259td\\u0259n tam istifad\\u0259 ed\\u0259 bil\\u0259siniz.\",\"clipboard_no_support\":\"Hal-haz\\u0131rda b\\u0259l\\u0259d\\u00e7iniz t\\u0259r\\u0259find\\u0259n d\\u0259st\\u0259kl\\u0259nmir. Klaviatura q\\u0131saldmas\\u0131ndan istifad\\u0259 edin.\",\"clipboard_msg\":\"Kopyalama/\\u018flav\\u0259 et Mozilla v\\u0259 Firefox-da i\\u015fl\\u0259mir.\\nN\\u0259 ba\\u015f verdiyi haqda daha \\u0259trafl\\u0131 \\u00f6yr\\u0259nm\\u0259k ist\\u0259yirsiniz?\",\"not_set\":\"-- M\\u00fc\\u0259yy\\u0259n edilm\\u0259yib --\",\"class_name\":\"Sinif\",browse:\"G\\u00f6zd\\u0259n ke\\u00e7ir\",close:\"Ba\\u011fla\",cancel:\"L\\u0259\\u011fv et\",update:\"Yenil\\u0259\",insert:\"\\u018flav\\u0259 et\",apply:\"T\\u0259tbiq et\",\"edit_confirm\":\"Siz haz\\u0131rki m\\u0259tn sah\\u0259si \\u00fc\\u00e7\\u00fcn WYSIWYG rejimi istifad\\u0259 etm\\u0259k ist\\u0259yirsiniz?\",\"invalid_data_number\":\"{#field} must be a number\",\"invalid_data_min\":\"{#field} must be a number greater than {#min}\",\"invalid_data_size\":\"{#field} must be a number or percentage\",value:\"(value)\"},contextmenu:{full:\"Tam\",right:\"Sa\\u011fa\",center:\"M\\u0259rk\\u0259z il\\u0259\",left:\"Sola\",align:\"Tarazla\\u015fd\\u0131r\"},insertdatetime:{\"day_short\":\"B,Be,\\u00c7a,\\u00c7,Ca,C,\\u015e,B\",\"day_long\":\"Bazar,Bazar ert\\u0259si,\\u00c7\\u0259r\\u015f\\u0259nb\\u0259 ax\\u015fam\\u0131,\\u00c7\\u0259r\\u015f\\u0259nb\\u0259,C\\u00fcm\\u0259 ax\\u015fam\\u0131,C\\u00fcm\\u0259,\\u015e\\u0259nb\\u0259,Bazar\",\"months_short\":\"Yan,Fev,Mar,Apr,May,\\u0130yu,\\u0130yl,Avq,Sen,Okt,Noy,Dek\",\"months_long\":\"Yanvar,Fevral,Mart,Aprel,May,\\u0130yun,\\u0130yul,Avqust,Sentyabr,Oktyabr,Noyabr,Dekabr\",\"inserttime_desc\":\"Vaxt \\u0259lav\\u0259 et\",\"insertdate_desc\":\"Tarix \\u0259lav\\u0259 et\",\"time_fmt\":\"%H:%M:%S\",\"date_fmt\":\"%d-%m-%Y\"},print:{\"print_desc\":\"\\u00c7ap et\"},preview:{\"preview_desc\":\"\\u0130lkin bax\\u0131\\u015f\"},directionality:{\"rtl_desc\":\"\\u0130stiqam\\u0259t sa\\u011fdan-sola\",\"ltr_desc\":\"\\u0130stiqam\\u0259t soldan-sa\\u011fa\"},layer:{content:\"Yeni qat...\",\"absolute_desc\":\"M\\u00fctl\\u0259q m\\u00f6vqeni yand\\u0131r/s\\u00f6nd\\u00fcr\",\"backward_desc\":\"Geri k\\u00f6\\u00e7\\u00fcr\",\"forward_desc\":\"\\u0130r\\u0259li k\\u00f6\\u00e7\\u00fcr\",\"insertlayer_desc\":\"Yeni qat \\u0259lav\\u0259 et\"},save:{\"save_desc\":\"Yadda saxla\",\"cancel_desc\":\"B\\u00fct\\u00fcn d\\u0259yi\\u015fiklikl\\u0259ri l\\u0259\\u011fv et\"},nonbreaking:{\"nonbreaking_desc\":\"Q\\u0131r\\u0131lmaz bo\\u015fluq \\u0259lav\\u0259 et\"},iespell:{download:\"ieSpell a\\u015fkar edilm\\u0259yib. Y\\u00fckl\\u0259nilsin?\",\"iespell_desc\":\"Orfoqrafiyan\\u0131 yoxla\"},advhr:{\"advhr_desc\":\"\\u00dcf\\u00fcqi x\\u0259tt\",\"delta_height\":\"\",\"delta_width\":\"\"},emotions:{\"emotions_desc\":\"Smayllar\",\"delta_height\":\"\",\"delta_width\":\"\"},searchreplace:{\"replace_desc\":\"Axtar/D\\u0259yi\\u015f\",\"search_desc\":\"Axtar\",\"delta_width\":\"\",\"delta_height\":\"\"},advimage:{\"image_desc\":\"\\u015e\\u0259kli \\u0259lav\\u0259/redakt\\u0259 et\",\"delta_width\":\"\",\"delta_height\":\"\"},advlink:{\"link_desc\":\"Ke\\u00e7idi \\u0259lav\\u0259/redakt\\u0259 et\",\"delta_height\":\"\",\"delta_width\":\"\"},xhtmlxtras:{\"attribs_desc\":\"Atribut \\u0259lav\\u0259/redakt\\u0259 et\",\"ins_desc\":\"\\u018flav\\u0259 edilmi\\u015f m\\u0259tn\",\"del_desc\":\"Silinmi\\u015f m\\u0259tn\",\"acronym_desc\":\"Akronim\",\"abbr_desc\":\"Abbreviatura\",\"cite_desc\":\"Sitat\",\"attribs_delta_height\":\"\",\"attribs_delta_width\":\"\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\"},style:{\"delta_width\":\"35\",desc:\"CSS stili redakt\\u0259 et\",\"delta_height\":\"\"},paste:{\"selectall_desc\":\"Ham\\u0131s\\u0131n\\u0131 se\\u00e7\",\"paste_word_desc\":\"Word-d\\u0259n \\u0259lav\\u0259 et\",\"paste_text_desc\":\"Sad\\u0259 m\\u0259tn kimi \\u0259lav\\u0259 et\",\"plaintext_mode\":\"Paste is now in plain text mode. Click again to toggle back to regular paste mode.\",\"plaintext_mode_sticky\":\"Paste is now in plain text mode. Click again to toggle back to regular paste mode. After you paste something you will be returned to regular paste mode.\"},\"paste_dlg\":{\"word_title\":\"P\\u0259nc\\u0259r\\u0259y\\u0259 s\\u00f6z \\u0259lav\\u0259 etm\\u0259k \\u00fc\\u00e7\\u00fcn CTRL+V klavi\\u015f birl\\u0259\\u015fm\\u0259sini istifad\\u0259 edin.\",\"text_linebreaks\":\"S\\u0259tr s\\u0131nmalar\\u0131n\\u0131 saxla\",\"text_title\":\"P\\u0259nc\\u0259r\\u0259y\\u0259 m\\u0259tn \\u0259lav\\u0259 etm\\u0259k \\u00fc\\u00e7\\u00fcn CTRL+V klavi\\u015f birl\\u0259\\u015fm\\u0259sini istifad\\u0259 edin.\"},table:{cell:\"\\u00d6z\\u0259k\",col:\"S\\u00fctun\",row:\"S\\u0259tr\",del:\"C\\u0259dv\\u0259li sil\",\"copy_row_desc\":\"S\\u0259tri kopyala\",\"cut_row_desc\":\"S\\u0259tri k\\u0259s\",\"paste_row_after_desc\":\"S\\u0259tr c\\u0259dv\\u0259lini sonra \\u0259lav\\u0259 et:\",\"paste_row_before_desc\":\"S\\u0259tr c\\u0259dv\\u0259lini \\u0259vv\\u0259l \\u0259lav\\u0259 et:\",\"props_desc\":\"C\\u0259dv\\u0259l x\\u00fcsusiyy\\u0259tl\\u0259ri\",\"cell_desc\":\"\\u00d6z\\u0259k x\\u00fcsusiyy\\u0259tl\\u0259ri\",\"row_desc\":\"S\\u0259tr x\\u00fcsusiyy\\u0259tl\\u0259ri\",\"merge_cells_desc\":\"\\u00d6z\\u0259kl\\u0259ri s\\u00fcz\",\"split_cells_desc\":\"S\\u00fcz\\u00fclm\\u00fc\\u015f \\u00f6z\\u0259kl\\u0259ri ay\\u0131r\",\"delete_col_desc\":\"S\\u00fctunu sil\",\"col_after_desc\":\"S\\u00fctunu sonra \\u0259lav\\u0259 et:\",\"col_before_desc\":\"S\\u00fctunu \\u0259vv\\u0259l \\u0259lav\\u0259 et:\",\"delete_row_desc\":\"S\\u0259tri sil\",\"row_after_desc\":\"S\\u0259tri sonra \\u0259vv\\u0259l et:\",\"row_before_desc\":\"S\\u0259tri \\u0259vv\\u0259l \\u0259lav\\u0259 et:\",desc:\"Yeni c\\u0259dv\\u0259l \\u0259lav\\u0259 et\",\"merge_cells_delta_height\":\"\",\"merge_cells_delta_width\":\"\",\"table_delta_height\":\"\",\"table_delta_width\":\"\",\"cellprops_delta_height\":\"\",\"cellprops_delta_width\":\"\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\"},autosave:{\"unload_msg\":\"\\u018fg\\u0259r s\\u0259hif\\u0259d\\u0259n gets\\u0259niz b\\u00fct\\u00fcn d\\u0259yi\\u015fiklikl\\u0259r itiril\\u0259c\\u0259k.\",\"warning_message\":\"If you restore the saved content, you will lose all the content that is currently in the editor.\\n\\nAre you sure you want to restore the saved content?\",\"restore_content\":\"Restore auto-saved content.\"},fullscreen:{desc:\"Tamekran rejimini yand\\u0131r/s\\u00f6nd\\u00fcr\"},media:{edit:\"Mediya-obyekti redakt\\u0259 et\",desc:\"mediya-obyekti \\u0259lav\\u0259/redakt\\u0259 et\",\"delta_height\":\"\",\"delta_width\":\"\"},fullpage:{desc:\"S\\u0259n\\u0259d nizamlamalar\\u0131\",\"delta_width\":\"\",\"delta_height\":\"\"},template:{desc:\"\\u018fvv\\u0259ld\\u0259n m\\u00fc\\u0259yy\\u0259n edil\\u0259n \\u015fablon daxil et\"},visualchars:{desc:\"Vizual idar\\u0259 xarakterl\\u0259rini yand\\u0131r/s\\u00f6nd\\u00fcr.\"},spellchecker:{desc:\"Orfoqraf\\u0131 yoxla\",menu:\"Orfoqrafiya nizamlamas\\u0131n\\u0131\",\"ignore_word\":\"S\\u00f6zl\\u00fc iqnor et\",\"ignore_words\":\"H\\u0259r \\u015feyi iqnor et\",langs:\"Dill\\u0259r\",wait:\"Z\\u0259hm\\u0259t olmasa, g\\u00f6zl\\u0259yin...\",sug:\"Variantlar\",\"no_sug\":\"Variantlar yoxdur\",\"no_mpell\":\"X\\u0259ta a\\u015fkar edilm\\u0259di.\",\"learn_word\":\"Learn word\"},pagebreak:{desc:\"S\\u0259hif\\u0259 b\\u00f6l\\u0259nini \\u0259lav\\u0259 et.\"},advlist:{types:\"Types\",def:\"Default\",\"lower_alpha\":\"Lower Alpha\",\"lower_greek\":\"Lower Greek\",\"lower_roman\":\"Lower Roman\",\"upper_alpha\":\"Upper Alpha\",\"upper_roman\":\"Upper Roman\",circle:\"Circle\",disc:\"Disc\",square:\"Square\"},colors:{\"333300\":\"Dark olive\",\"993300\":\"Burnt orange\",\"000000\":\"Black\",\"003300\":\"Dark green\",\"003366\":\"Dark azure\",\"000080\":\"Navy Blue\",\"333399\":\"Indigo\",\"333333\":\"Very dark gray\",\"800000\":\"Maroon\",FF6600:\"Orange\",\"808000\":\"Olive\",\"008000\":\"Green\",\"008080\":\"Teal\",\"0000FF\":\"Blue\",\"666699\":\"Grayish blue\",\"808080\":\"Gray\",FF0000:\"Red\",FF9900:\"Amber\",\"99CC00\":\"Yellow green\",\"339966\":\"Sea green\",\"33CCCC\":\"Turquoise\",\"3366FF\":\"Royal blue\",\"800080\":\"Purple\",\"999999\":\"Medium gray\",FF00FF:\"Magenta\",FFCC00:\"Gold\",FFFF00:\"Yellow\",\"00FF00\":\"Lime\",\"00FFFF\":\"Aqua\",\"00CCFF\":\"Sky blue\",\"993366\":\"Brown\",C0C0C0:\"Silver\",FF99CC:\"Pink\",FFCC99:\"Peach\",FFFF99:\"Light yellow\",CCFFCC:\"Pale green\",CCFFFF:\"Pale cyan\",\"99CCFF\":\"Light sky blue\",CC99FF:\"Plum\",FFFFFF:\"White\"},aria:{\"rich_text_area\":\"Rich Text Area\"},wordcount:{words:\"Words\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/be.js",
    "content": "tinyMCE.addI18n({be:{common:{\"more_colors\":\"\\u0411\\u043e\\u043b\\u044c\\u0448 \\u043a\\u043e\\u043b\\u0435\\u0440\\u0430\\u045e...\",\"invalid_data\":\"\\u041f\\u0430\\u043c\\u044b\\u043b\\u043a\\u0430: \\u0410\\u0434\\u0437\\u043d\\u0430\\u0447\\u0430\\u043d\\u044b\\u044f \\u0447\\u044b\\u0440\\u0432\\u043e\\u043d\\u044b\\u043c \\u0437\\u043d\\u0430\\u0447\\u044d\\u043d\\u043d\\u0456 \\u045e\\u0432\\u0435\\u0434\\u0437\\u0435\\u043d\\u044b \\u043d\\u044f\\u043f\\u0440\\u0430\\u0432\\u0456\\u043b\\u044c\\u043d\\u0430.\",\"popup_blocked\":\"\\u041f\\u0440\\u0430\\u0431\\u0430\\u0447\\u0446\\u0435, \\u0430\\u043b\\u0435 \\u0432\\u0430\\u0448 \\u0431\\u043b\\u0430\\u043a\\u0456\\u0440\\u043e\\u045e\\u0448\\u0447\\u044b\\u043a \\u0443\\u0441\\u043f\\u043b\\u044b\\u0432\\u0430\\u044e\\u0447\\u044b\\u0445 \\u0432\\u043e\\u043a\\u043d\\u0430\\u045e \\u0437\\u0430\\u0431\\u043b\\u0430\\u043a\\u0456\\u0440\\u0430\\u0432\\u0430\\u045e \\u0430\\u043a\\u043d\\u043e, \\u044f\\u043a\\u043e\\u0435 \\u043f\\u0440\\u0430\\u0434\\u0441\\u0442\\u0430\\u045e\\u043b\\u044f\\u0435 \\u043d\\u0435\\u0430\\u0431\\u0445\\u043e\\u0434\\u043d\\u044b\\u044f \\u0444\\u0443\\u043d\\u043a\\u0446\\u044b\\u0456. \\u0412\\u0430\\u043c \\u0442\\u0440\\u044d\\u0431\\u0430 \\u0430\\u0434\\u043a\\u043b\\u044e\\u0447\\u044b\\u0446\\u044c \\u0431\\u043b\\u0430\\u043a\\u0456\\u0440\\u0430\\u0432\\u0430\\u043d\\u043d\\u0435 \\u045e\\u0441\\u043f\\u043b\\u044b\\u0432\\u0430\\u044e\\u0447\\u044b\\u0445 \\u0432\\u043e\\u043a\\u043d\\u0430\\u045e \\u043d\\u0430 \\u0433\\u044d\\u0442\\u044b\\u043c \\u0441\\u0430\\u0439\\u0446\\u0435, \\u043a\\u0430\\u0431 \\u0443 \\u0446\\u0430\\u043b\\u043a\\u0430\\u043c \\u0441\\u043a\\u0430\\u0440\\u044b\\u0441\\u0442\\u0430\\u0446\\u0446\\u0430 \\u0433\\u044d\\u0442\\u0430\\u0439 \\u043f\\u0440\\u044b\\u043b\\u0430\\u0434\\u0430\\u0439.\",\"clipboard_no_support\":\"\\u0423 \\u0446\\u044f\\u043f\\u0435\\u0440\\u0430\\u0448\\u043d\\u0456 \\u0447\\u0430\\u0441 \\u043d\\u0435 \\u043f\\u0430\\u0434\\u0442\\u0440\\u044b\\u043c\\u043b\\u0456\\u0432\\u0430\\u0435\\u0446\\u0446\\u0430 \\u0432\\u0430\\u0448\\u044b\\u043c \\u0431\\u0440\\u0430\\u045e\\u0437\\u0435\\u0440\\u0430\\u043c, \\u0432\\u044b\\u043a\\u0430\\u0440\\u044b\\u0441\\u0442\\u0430\\u0439\\u0446\\u0435 \\u0441\\u043f\\u0430\\u043b\\u0443\\u0447\\u044d\\u043d\\u043d\\u0456 \\u043a\\u043b\\u0430\\u0432\\u0456\\u0448 \\u0437\\u0430\\u043c\\u0435\\u0441\\u0442 \\u0433\\u044d\\u0442\\u0430\\u0433\\u0430.\",\"clipboard_msg\":\"\\u041a\\u0430\\u043f\\u0456\\u0440\\u0430\\u0432\\u0430\\u043d\\u043d\\u0435, \\u0432\\u044b\\u0440\\u0430\\u0437\\u043a\\u0430 \\u0456 \\u0443\\u0441\\u0442\\u0430\\u045e\\u043a\\u0430 \\u043d\\u0435 \\u043f\\u0440\\u0430\\u0446\\u0443\\u044e\\u0446\\u044c \\u045e Mozilla \\u0456 Firefox. \\u0416\\u0430\\u0434\\u0430\\u0435\\u0446\\u0435 \\u0430\\u0442\\u0440\\u044b\\u043c\\u0430\\u0446\\u044c \\u0431\\u043e\\u043b\\u044c\\u0448 \\u043f\\u0430\\u0434\\u0440\\u0430\\u0431\\u044f\\u0437\\u043d\\u0443\\u044e \\u0456\\u043d\\u0444\\u0430\\u0440\\u043c\\u0430\\u0446\\u044b\\u044e?\",\"not_set\":\"-- \\u041d\\u0435 \\u045e\\u0441\\u0442\\u0430\\u043b\\u044f\\u0432\\u0430\\u043d\\u0430 --\",\"class_name\":\"\\u041a\\u043b\\u0430\\u0441\",browse:\"\\u041f\\u0440\\u0430\\u0433\\u043b\\u0435\\u0434\\u0437\\u0435\\u0446\\u044c\",close:\"\\u0417\\u0430\\u0447\\u044b\\u043d\\u0456\\u0446\\u044c\",cancel:\"\\u0410\\u0434\\u043c\\u044f\\u043d\\u0456\\u0446\\u044c\",update:\"\\u0410\\u0431\\u043d\\u0430\\u0432\\u0456\\u0446\\u044c\",insert:\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c\",apply:\"\\u0423\\u0436\\u044b\\u0446\\u044c\",\"edit_confirm\":\"\\u0412\\u044b \\u0436\\u0430\\u0434\\u0430\\u0435\\u0446\\u0435 \\u0432\\u044b\\u043a\\u0430\\u0440\\u044b\\u0441\\u0442\\u0430\\u0446\\u044c \\u0434\\u043b\\u044f \\u0433\\u044d\\u0442\\u0430\\u0439 \\u0442\\u044d\\u043a\\u0441\\u0442\\u0430\\u0432\\u0430\\u0439 \\u0432\\u043e\\u0431\\u043b\\u0430\\u0441\\u0446\\u0456 \\u0440\\u044d\\u0436\\u044b\\u043c WYSIWYG?\",\"invalid_data_number\":\"{#field} \\u043f\\u0430\\u0437\\u043d\\u0430\\u0447\\u0446\\u0435 \\u043b\\u0456\\u043a\",\"invalid_data_min\":\"{#field} \\u043f\\u0430\\u0437\\u043d\\u0430\\u0447\\u0446\\u0435 \\u043b\\u0456\\u043a \\u0431\\u043e\\u043b\\u044c\\u0448\\u044b \\u0437\\u0430 {#min}\",\"invalid_data_size\":\"{#field} \\u043f\\u0430\\u0437\\u043d\\u0430\\u0447\\u0446\\u0435 \\u043b\\u0456\\u043a \\u0430\\u0431\\u043e \\u043f\\u0440\\u0430\\u0446\\u044d\\u043d\\u0442\",value:\"(\\u0437\\u043d\\u0430\\u0447\\u044d\\u043d\\u043d\\u0435)\"},contextmenu:{full:\"\\u041f\\u0430 \\u0448\\u044b\\u0440\\u044b\\u043d\\u0456\",right:\"\\u041f\\u0430 \\u043f\\u0440\\u0430\\u0432\\u044b\\u043c \\u043a\\u0440\\u0430\\u0456\",center:\"\\u041f\\u0430 \\u0446\\u044d\\u043d\\u0442\\u0440\\u044b\",left:\"\\u041f\\u0430 \\u043b\\u0435\\u0432\\u044b\\u043c \\u043a\\u0440\\u0430\\u0456\",align:\"\\u0412\\u044b\\u0440\\u0430\\u045e\\u043d\\u043e\\u045e\\u0432\\u0430\\u043d\\u043d\\u0435\"},insertdatetime:{\"day_short\":\"\\u041d\\u0434,\\u041f\\u043d,\\u0410\\u0442,\\u0421\\u0440,\\u0427\\u0446,\\u041f\\u0442,\\u0421\\u0431,\\u041d\\u0434\",\"day_long\":\"\\u041d\\u044f\\u0434\\u0437\\u0435\\u043b\\u044f,\\u041f\\u0430\\u043d\\u044f\\u0434\\u0437\\u0435\\u043b\\u0430\\u043a,\\u0410\\u045e\\u0442\\u043e\\u0440\\u0430\\u043a,\\u0421\\u0435\\u0440\\u0430\\u0434\\u0430,\\u0427\\u0430\\u0446\\u0432\\u0435\\u0440,\\u041f\\u044f\\u0442\\u043d\\u0456\\u0446\\u0430,\\u0421\\u0443\\u0431\\u043e\\u0442\\u0430,\\u041d\\u044f\\u0434\\u0437\\u0435\\u043b\\u044f\",\"months_short\":\"\\u0421\\u0442\\u0443,\\u041b\\u044e\\u0442,\\u0421\\u0430\\u043a,\\u041a\\u0440\\u0430,\\u041c\\u0430\\u0439,\\u0427\\u044d\\u0440,\\u041b\\u0456\\u043f,\\u0410\\u045e\\u0433,\\u0412\\u0435\\u0440,\\u041a\\u0430\\u0441,\\u041b\\u0456\\u0441,\\u0421\\u043d\\u0435\",\"months_long\":\"\\u0421\\u0442\\u0443\\u0434\\u0437\\u0435\\u043d\\u044c,\\u041b\\u044e\\u0442\\u044b,\\u0421\\u0430\\u043a\\u0430\\u0432\\u0456\\u043a,\\u041a\\u0440\\u0430\\u0441\\u0430\\u0432\\u0456\\u043a,\\u041c\\u0430\\u0439,\\u0427\\u044d\\u0440\\u0432\\u0435\\u043d\\u044c,\\u041b\\u0456\\u043f\\u0435\\u043d\\u044c,\\u0410\\u045e\\u0433\\u0443\\u0441\\u0442,\\u0412\\u0435\\u0440\\u0430\\u0441\\u0435\\u043d\\u044c,\\u041a\\u0430\\u0441\\u0442\\u0440\\u044b\\u0447\\u043d\\u0456\\u043a,\\u041b\\u0456\\u0441\\u0442\\u0430\\u043f\\u0430\\u0434,\\u0421\\u043d\\u0435\\u0436\\u0430\\u043d\\u044c\",\"inserttime_desc\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u0447\\u0430\\u0441\",\"insertdate_desc\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u0434\\u0430\\u0442\\u0443\",\"time_fmt\":\"%H:%M:%S\",\"date_fmt\":\"%d.%m.%Y\"},print:{\"print_desc\":\"\\u0414\\u0440\\u0443\\u043a\"},preview:{\"preview_desc\":\"\\u041f\\u0430\\u043f\\u044f\\u0440\\u044d\\u0434\\u043d\\u0456 \\u043f\\u0440\\u0430\\u0433\\u043b\\u044f\\u0434\"},directionality:{\"rtl_desc\":\"\\u041a\\u0456\\u0440\\u0443\\u043d\\u0430\\u043a \\u0441\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043d\\u0430\\u043b\\u0435\\u0432\\u0430\",\"ltr_desc\":\"\\u041a\\u0456\\u0440\\u0443\\u043d\\u0430\\u043a \\u0437\\u043b\\u0435\\u0432\\u0430 \\u043d\\u0430\\u043f\\u0440\\u0430\\u0432\\u0430\"},layer:{content:\"\\u041d\\u043e\\u0432\\u044b \\u043f\\u043b\\u0430\\u0441\\u0442\\u2026\",\"absolute_desc\":\"\\u0410\\u0431\\u0441\\u0430\\u043b\\u044e\\u0442\\u043d\\u0430\\u0435 \\u043f\\u0430\\u0437\\u0456\\u0446\\u044b\\u044f\\u043d\\u0430\\u0432\\u0430\\u043d\\u043d\\u0435\",\"backward_desc\":\"\\u041f\\u0435\\u0440\\u0430\\u043d\\u0435\\u0441\\u0446\\u0456 \\u043d\\u0430\\u0437\\u0430\\u0434\",\"forward_desc\":\"\\u041f\\u0435\\u0440\\u0430\\u043d\\u0435\\u0441\\u0446\\u0456 \\u043d\\u0430\\u043f\\u0435\\u0440\\u0430\\u0434\",\"insertlayer_desc\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u043d\\u043e\\u0432\\u044b \\u043f\\u043b\\u0430\\u0441\\u0442\"},save:{\"save_desc\":\"\\u0417\\u0430\\u0445\\u0430\\u0432\\u0430\\u0446\\u044c\",\"cancel_desc\":\"\\u0410\\u0434\\u043c\\u044f\\u043d\\u0456\\u0446\\u044c \\u0443\\u0441\\u0435 \\u0437\\u043c\\u0435\\u043d\\u044b\"},nonbreaking:{\"nonbreaking_desc\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u043d\\u0435\\u043f\\u0430\\u0440\\u044b\\u045e\\u043d\\u044b \\u043f\\u0440\\u0430\\u0431\\u0435\\u043b\"},iespell:{download:\"ieSpell \\u043d\\u0435 \\u0432\\u044b\\u044f\\u045e\\u043b\\u0435\\u043d\\u044b. \\u0423\\u0441\\u0442\\u0430\\u043b\\u044f\\u0432\\u0430\\u0446\\u044c?\",\"iespell_desc\":\"\\u041f\\u0440\\u0430\\u0432\\u0435\\u0440\\u044b\\u0446\\u044c \\u0430\\u0440\\u0444\\u0430\\u0433\\u0440\\u0430\\u0444\\u0456\\u044e\"},advhr:{\"advhr_desc\":\"\\u0413\\u0430\\u0440\\u044b\\u0437\\u0430\\u043d\\u0442\\u0430\\u043b\\u044c\\u043d\\u0430\\u044f \\u043b\\u0456\\u043d\\u0456\\u044f\",\"delta_height\":\"\",\"delta_width\":\"\"},emotions:{\"emotions_desc\":\"\\u0421\\u043c\\u0430\\u0439\\u043b\\u0456\\u043a\\u0456\",\"delta_height\":\"\",\"delta_width\":\"\"},searchreplace:{\"replace_desc\":\"\\u0417\\u043d\\u0430\\u0439\\u0441\\u0446\\u0456/\\u0417\\u0430\\u043c\\u044f\\u043d\\u0456\\u0446\\u044c\",\"search_desc\":\"\\u0417\\u043d\\u0430\\u0439\\u0441\\u0446\\u0456\",\"delta_width\":\"\",\"delta_height\":\"\"},advimage:{\"delta_width\":\"200\",\"image_desc\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c/\\u0440\\u044d\\u0434\\u0430\\u0433\\u0430\\u0432\\u0430\\u0446\\u044c \\u043c\\u0430\\u043b\\u044e\\u043d\\u0430\\u043a\",\"delta_height\":\"\"},advlink:{\"delta_width\":\"200\",\"link_desc\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c/\\u0440\\u044d\\u0434\\u0430\\u0433\\u0430\\u0432\\u0430\\u0446\\u044c \\u0441\\u043f\\u0430\\u0441\\u044b\\u043b\\u043a\\u0443\",\"delta_height\":\"\"},xhtmlxtras:{\"attribs_desc\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c/\\u0440\\u044d\\u0434\\u0430\\u0433\\u0430\\u0432\\u0430\\u0446\\u044c \\u0430\\u0442\\u0440\\u044b\\u0431\\u0443\\u0442\\u044b\",\"ins_desc\":\"\\u0414\\u0430\\u0434\\u0430\\u0434\\u0437\\u0435\\u043d\\u044b \\u0442\\u044d\\u043a\\u0441\\u0442\",\"del_desc\":\"\\u0412\\u044b\\u0434\\u0430\\u043b\\u0435\\u043d\\u044b \\u0442\\u044d\\u043a\\u0441\\u0442\",\"acronym_desc\":\"\\u0410\\u043a\\u0440\\u043e\\u043d\\u0456\\u043c\",\"abbr_desc\":\"\\u0410\\u0431\\u0440\\u044d\\u0432\\u0456\\u044f\\u0442\\u0443\\u0440\\u0430\",\"cite_desc\":\"\\u0426\\u044b\\u0442\\u0430\\u0432\\u0430\\u043d\\u043d\\u0435\",\"attribs_delta_height\":\"\",\"attribs_delta_width\":\"\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\"},style:{\"delta_width\":\"35\",desc:\"\\u0420\\u044d\\u0434\\u0430\\u0433\\u0430\\u0432\\u0430\\u0446\\u044c \\u0441\\u0442\\u044b\\u043b\\u044c CSS\",\"delta_height\":\"\"},paste:{\"plaintext_mode\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u0437\\u0430\\u0440\\u0430\\u0437 \\u0443 \\u0440\\u044d\\u0436\\u044b\\u043c\\u0435 \\u0437\\u0432\\u044b\\u0447\\u0430\\u0439\\u043d\\u0430\\u0433\\u0430 \\u0442\\u044d\\u043a\\u0441\\u0442\\u0443. \\u041d\\u0430\\u0446\\u0456\\u0441\\u043d\\u0456\\u0446\\u0435 \\u0433\\u044d\\u0442\\u0443\\u044e \\u043a\\u043d\\u043e\\u043f\\u043a\\u0443 \\u0434\\u043b\\u044f \\u043f\\u0435\\u0440\\u0430\\u043a\\u043b\\u044e\\u0447\\u044d\\u043d\\u043d\\u044f \\u043d\\u0430\\u0437\\u0430\\u0434 \\u0443 \\u0437\\u0432\\u044b\\u0447\\u0430\\u0439\\u043d\\u044b \\u0440\\u044d\\u0436\\u044b\\u043c \\u045e\\u0441\\u0442\\u0430\\u045e\\u043a\\u0456.\",\"plaintext_mode_sticky\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u0437\\u0430\\u0440\\u0430\\u0437 \\u0443 \\u0440\\u044d\\u0436\\u044b\\u043c\\u0435 \\u0437\\u0432\\u044b\\u0447\\u0430\\u0439\\u043d\\u0430\\u0433\\u0430 \\u0442\\u044d\\u043a\\u0441\\u0442\\u0443. \\u041d\\u0430\\u0446\\u0456\\u0441\\u043d\\u0456\\u0446\\u0435 \\u0433\\u044d\\u0442\\u0443\\u044e \\u043a\\u043d\\u043e\\u043f\\u043a\\u0443 \\u0434\\u043b\\u044f \\u043f\\u0435\\u0440\\u0430\\u043a\\u043b\\u044e\\u0447\\u044d\\u043d\\u043d\\u044f \\u043d\\u0430\\u0437\\u0430\\u0434 \\u0443 \\u0437\\u0432\\u044b\\u0447\\u0430\\u0439\\u043d\\u044b \\u0440\\u044d\\u0436\\u044b\\u043c \\u045e\\u0441\\u0442\\u0430\\u045e\\u043a\\u0456. \\u041f\\u0430\\u0441\\u043b\\u044f \\u045e\\u0441\\u0442\\u0430\\u045e\\u043a\\u0456 \\u0412\\u044b \\u0432\\u0435\\u0440\\u043d\\u0435\\u0446\\u0435\\u0441\\u044f \\u045e \\u0437\\u0432\\u044b\\u0447\\u0430\\u0439\\u043d\\u044b \\u0440\\u044d\\u0436\\u044b\\u043c \\u045e\\u0441\\u0442\\u0430\\u045e\\u043a\\u0456.\",\"selectall_desc\":\"\\u0412\\u044b\\u043b\\u0443\\u0447\\u044b\\u0446\\u044c \\u0443\\u0441\\u0451\",\"paste_word_desc\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u0437 Word\",\"paste_text_desc\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u044f\\u043a \\u043f\\u0440\\u043e\\u0441\\u0442\\u044b \\u0442\\u044d\\u043a\\u0441\\u0442\"},\"paste_dlg\":{\"word_title\":\"\\u0412\\u044b\\u043a\\u0430\\u0440\\u044b\\u0441\\u0442\\u0430\\u0439\\u0446\\u0435 \\u0441\\u043f\\u0430\\u043b\\u0443\\u0447\\u044d\\u043d\\u043d\\u0435 \\u043a\\u043b\\u0430\\u0432\\u0456\\u0448 CTRL+V \\u043a\\u0430\\u0431 \\u0443\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u0442\\u044d\\u043a\\u0441\\u0442 \\u0443 \\u0430\\u043a\\u043d\\u043e.\",\"text_linebreaks\":\"\\u0417\\u0430\\u0445\\u043e\\u045e\\u0432\\u0430\\u0446\\u044c \\u043f\\u0430\\u0440\\u044b\\u0432\\u044b \\u0440\\u0430\\u0434\\u043a\\u043e\\u045e\",\"text_title\":\"\\u0412\\u044b\\u043a\\u0430\\u0440\\u044b\\u0441\\u0442\\u0430\\u0439\\u0446\\u0435 \\u0441\\u043f\\u0430\\u043b\\u0443\\u0447\\u044d\\u043d\\u043d\\u0435 \\u043a\\u043b\\u0430\\u0432\\u0456\\u0448 CTRL+V \\u043a\\u0430\\u0431 \\u0443\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u0442\\u044d\\u043a\\u0441\\u0442 \\u0443 \\u0430\\u043a\\u043d\\u043e.\"},table:{cell:\"\\u042f\\u0447\\u044d\\u0439\\u043a\\u0430\",col:\"\\u0421\\u043b\\u0443\\u043f\\u043e\\u043a\",row:\"\\u0420\\u0430\\u0434\\u043e\\u043a\",del:\"\\u0412\\u044b\\u0434\\u0430\\u043b\\u0456\\u0446\\u044c \\u0442\\u0430\\u0431\\u043b\\u0456\\u0446\\u0443\",\"copy_row_desc\":\"\\u041a\\u0430\\u043f\\u0456\\u0440\\u0430\\u0432\\u0430\\u0446\\u044c \\u0440\\u0430\\u0434\\u043e\\u043a\",\"cut_row_desc\":\"\\u0412\\u044b\\u0440\\u0430\\u0437\\u0430\\u0446\\u044c \\u0440\\u0430\\u0434\\u043e\\u043a\",\"paste_row_after_desc\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u0440\\u0430\\u0434\\u043e\\u043a \\u0437\\u043d\\u0456\\u0437\\u0443\",\"paste_row_before_desc\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u0440\\u0430\\u0434\\u043e\\u043a \\u0437\\u0432\\u0435\\u0440\\u0445\\u0443\",\"props_desc\":\"\\u0423\\u043b\\u0430\\u0441\\u0446\\u0456\\u0432\\u0430\\u0441\\u0446\\u0456 \\u0442\\u0430\\u0431\\u043b\\u0456\\u0446\\u044b\",\"cell_desc\":\"\\u0423\\u043b\\u0430\\u0441\\u0446\\u0456\\u0432\\u0430\\u0441\\u0446\\u0456 \\u044f\\u0447\\u044d\\u0439\\u043a\\u0456\",\"row_desc\":\"\\u0423\\u043b\\u0430\\u0441\\u0446\\u0456\\u0432\\u0430\\u0441\\u0446\\u0456 \\u0440\\u0430\\u0434\\u043a\\u0430\",\"merge_cells_desc\":\"\\u0421\\u043a\\u043b\\u0435\\u0456\\u0446\\u044c \\u044f\\u0447\\u044d\\u0439\\u043a\\u0456\",\"split_cells_desc\":\"\\u0420\\u0430\\u0437\\u0431\\u0456\\u0446\\u044c \\u044f\\u0447\\u044d\\u0439\\u043a\\u0443\",\"delete_col_desc\":\"\\u0412\\u044b\\u0434\\u0430\\u043b\\u0456\\u0446\\u044c \\u0441\\u043b\\u0443\\u043f\\u043e\\u043a\",\"col_after_desc\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u0441\\u043b\\u0443\\u043f\\u043e\\u043a \\u043f\\u0430\\u0441\\u043b\\u044f\",\"col_before_desc\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u0441\\u043b\\u0443\\u043f\\u043e\\u043a \\u043f\\u0435\\u0440\\u0430\\u0434\",\"delete_row_desc\":\"\\u0412\\u044b\\u0434\\u0430\\u043b\\u0456\\u0446\\u044c \\u0440\\u0430\\u0434\\u043e\\u043a\",\"row_after_desc\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u0440\\u0430\\u0434\\u043e\\u043a \\u043f\\u0430\\u0441\\u043b\\u044f\",\"row_before_desc\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u0440\\u0430\\u0434\\u043e\\u043a \\u043f\\u0435\\u0440\\u0430\\u0434\",desc:\"\\u0423\\u0441\\u0442\\u0430\\u045e\\u043b\\u044f\\u0435 \\u043d\\u043e\\u0432\\u0443\\u044e \\u0442\\u0430\\u0431\\u043b\\u0456\\u0446\\u0443\",\"merge_cells_delta_height\":\"\",\"merge_cells_delta_width\":\"\",\"table_delta_height\":\"\",\"table_delta_width\":\"\",\"cellprops_delta_height\":\"\",\"cellprops_delta_width\":\"\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\"},autosave:{\"warning_message\":\"\\u0423\\u0441\\u0435 \\u0437\\u0440\\u043e\\u0431\\u043b\\u0435\\u043d\\u044b\\u044f \\u0437\\u043c\\u0435\\u043d\\u044b \\u0431\\u0443\\u0434\\u0443\\u0446\\u044c \\u0437\\u0433\\u0443\\u0431\\u043b\\u0435\\u043d\\u044b\\u044f.\\n\\n\\u041f\\u0440\\u0430\\u0446\\u044f\\u0433\\u043d\\u0443\\u0446\\u044c \\u0430\\u0434\\u043d\\u0430\\u045e\\u043b\\u0435\\u043d\\u043d\\u0435 \\u0430\\u045e\\u0442\\u0430\\u043c\\u0430\\u0442\\u044b\\u0447\\u043d\\u0430\\u0433\\u0430 \\u0437\\u0430\\u0445\\u0430\\u0432\\u0430\\u043d\\u043d\\u044f?\",\"restore_content\":\"\\u0410\\u0434\\u043d\\u0430\\u0432\\u0456\\u0446\\u044c \\u0430\\u045e\\u0442\\u0430\\u043c\\u0430\\u0442\\u044b\\u0447\\u043d\\u0430\\u0435 \\u0437\\u0430\\u0445\\u0430\\u0432\\u0430\\u043d\\u043d\\u0435\",\"unload_msg\":\"\\u0417\\u0430\\u043d\\u0435\\u0441\\u0435\\u043d\\u044b\\u044f \\u0437\\u043c\\u0435\\u043d\\u044b \\u0431\\u0443\\u0434\\u0443\\u0446\\u044c \\u0441\\u0442\\u0440\\u0430\\u0447\\u0430\\u043d\\u044b\\u044f, \\u043a\\u0430\\u043b\\u0456 \\u0412\\u044b \\u0441\\u044b\\u0434\\u0437\\u0435\\u0446\\u0435 \\u0437 \\u0433\\u044d\\u0442\\u0430\\u0439 \\u0441\\u0442\\u0430\\u0440\\u043e\\u043d\\u043a\\u0456.\"},fullscreen:{desc:\"\\u0423\\u043b\\u0443\\u0447\\u044b\\u0446\\u044c/\\u0432\\u044b\\u043a\\u043b\\u044e\\u0447\\u044b\\u0446\\u044c \\u043f\\u043e\\u045e\\u043d\\u0430\\u044d\\u043a\\u0440\\u0430\\u043d\\u043d\\u044b \\u0440\\u044d\\u0436\\u044b\\u043c\"},media:{edit:\"\\u0420\\u044d\\u0434\\u0430\\u0433\\u0430\\u0432\\u0430\\u0446\\u044c \\u043c\\u0435\\u0434\\u044b\\u044f-\\u0430\\u0431\\'\\u0435\\u043a\\u0442\",desc:\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c/\\u0440\\u044d\\u0434\\u0430\\u0433\\u0430\\u0432\\u0430\\u0446\\u044c \\u043c\\u0435\\u0434\\u044b\\u044f-\\u0430\\u0431\\'\\u0435\\u043a\\u0442\",\"delta_height\":\"\",\"delta_width\":\"\"},fullpage:{desc:\"\\u0423\\u043b\\u0430\\u0441\\u0446\\u0456\\u0432\\u0430\\u0441\\u0446\\u0456 \\u0434\\u0430\\u043a\\u0443\\u043c\\u0435\\u043d\\u0442\\u0443\",\"delta_width\":\"\",\"delta_height\":\"\"},template:{desc:\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u0448\\u0430\\u0431\\u043b\\u043e\\u043d\"},visualchars:{desc:\"\\u0423\\u0441\\u0435 \\u0437\\u043d\\u0430\\u043a\\u0456\"},spellchecker:{desc:\"\\u041f\\u0440\\u0430\\u0432\\u0435\\u0440\\u044b\\u0446\\u044c \\u0430\\u0440\\u0444\\u0430\\u0433\\u0440\\u0430\\u0444\\u0456\\u044e\",menu:\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b \\u043f\\u0440\\u0430\\u0432\\u0435\\u0440\\u043a\\u0456 \\u0430\\u0440\\u0444\\u0430\\u0433\\u0440\\u0430\\u0444\\u0456\\u0456\",\"ignore_word\":\"\\u0406\\u0433\\u043d\\u0430\\u0440\\u0430\\u0432\\u0430\\u0446\\u044c \\u0441\\u043b\\u043e\\u0432\\u0430\",\"ignore_words\":\"\\u0406\\u0433\\u043d\\u0430\\u0440\\u0430\\u0432\\u0430\\u0446\\u044c \\u0443\\u0441\\u0451\",langs:\"\\u041c\\u043e\\u0432\\u044b\",wait:\"\\u041a\\u0430\\u043b\\u0456 \\u043b\\u0430\\u0441\\u043a\\u0430, \\u043f\\u0430\\u0447\\u0430\\u043a\\u0430\\u0439\\u0446\\u0435...\",sug:\"\\u0412\\u0430\\u0440\\u044b\\u044f\\u043d\\u0442\\u044b\",\"no_sug\":\"\\u041d\\u044f\\u043c\\u0430 \\u0432\\u0430\\u0440\\u044b\\u044f\\u043d\\u0442\\u0430\\u045e\",\"no_mpell\":\"\\u041f\\u0430\\u043c\\u044b\\u043b\\u0430\\u043a \\u043d\\u0435 \\u0432\\u044b\\u044f\\u045e\\u043b\\u0435\\u043d\\u0430.\",\"learn_word\":\"\\u0417\\u0430\\u043f\\u043e\\u043c\\u043d\\u0456\\u0446\\u044c \\u0441\\u043b\\u043e\\u0432\\u0430\"},pagebreak:{desc:\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u0440\\u0430\\u0437\\u0440\\u044b\\u045e \\u0441\\u0442\\u0430\\u0440\\u043e\\u043d\\u043a\\u0456.\"},advlist:{types:\"\\u0421\\u0456\\u043c\\u0432\\u0430\\u043b\\u044b\",def:\"C\\u0442\\u0430\\u043d\\u0434\\u0430\\u0440\\u0442\\u043d\\u044b\\u044f\",\"lower_alpha\":\"\\u041c\\u0430\\u043b\\u044b\\u044f \\u043b\\u0430\\u0446\\u0456\\u043d\\u0441\\u043a\\u0456\\u044f \\u043b\\u0456\\u0442\\u0430\\u0440\\u044b\",\"lower_greek\":\"\\u041c\\u0430\\u043b\\u044b\\u044f \\u0433\\u0440\\u044d\\u0447\\u0430\\u0441\\u043a\\u0456\\u044f \\u043b\\u0456\\u0442\\u0430\\u0440\\u044b\",\"lower_roman\":\"\\u041c\\u0430\\u043b\\u044b\\u044f \\u0440\\u044b\\u043c\\u0441\\u043a\\u0456\\u044f \\u043b\\u0456\\u0447\\u0431\\u044b\",\"upper_alpha\":\"\\u0412\\u044f\\u043b\\u0456\\u043a\\u0456\\u044f \\u043b\\u0430\\u0446\\u0456\\u043d\\u0441\\u043a\\u0456\\u044f \\u043b\\u0456\\u0442\\u0430\\u0440\\u044b\",\"upper_roman\":\"\\u0412\\u044f\\u043b\\u0456\\u043a\\u0456\\u044f \\u0440\\u044b\\u043c\\u0441\\u043a\\u0456\\u044f \\u043b\\u0456\\u0447\\u0431\\u044b\",circle:\"\\u0410\\u043a\\u0440\\u0443\\u0436\\u043d\\u0430\\u0441\\u0446\\u044c\",disc:\"\\u041a\\u0440\\u0443\\u0433\",square:\"\\u041a\\u0432\\u0430\\u0434\\u0440\\u0430\\u0442\"},colors:{\"333300\":\"\\u0426\\u0451\\u043c\\u043d\\u0430-\\u0430\\u043b\\u0456\\u045e\\u043a\\u0430\\u0432\\u044b\",\"993300\":\"\\u0426\\u0430\\u0433\\u043b\\u044f\\u043d\\u044b\",\"000000\":\"\\u0427\\u043e\\u0440\\u043d\\u044b\",\"003300\":\"\\u0426\\u0451\\u043c\\u043d\\u0430-\\u0437\\u044f\\u043b\\u0451\\u043d\\u044b\",\"003366\":\"\\u0426\\u0451\\u043c\\u043d\\u0430-\\u0431\\u043b\\u0430\\u043a\\u0456\\u0442\\u043d\\u044b\",\"000080\":\"\\u0426\\u0451\\u043c\\u043d\\u0430-\\u0441\\u0456\\u043d\\u0456\",\"333399\":\"\\u0406\\u043d\\u0434\\u044b\\u0433\\u0430\",\"333333\":\"\\u0412\\u0435\\u043b\\u044c\\u043c\\u0456 \\u0446\\u0451\\u043c\\u043d\\u0430-\\u0448\\u044d\\u0440\\u044b\",\"800000\":\"\\u0426\\u0451\\u043c\\u043d\\u0430-\\u0431\\u0430\\u0440\\u0434\\u043e\\u0432\\u044b\",FF6600:\"\\u0410\\u0440\\u0430\\u043d\\u0436\\u0430\\u0432\\u044b\",\"808000\":\"\\u0410\\u043b\\u0456\\u045e\\u043a\\u0430\\u0432\\u044b\",\"008000\":\"\\u0417\\u044f\\u043b\\u0451\\u043d\\u044b\",\"008080\":\"\\u0421\\u0456\\u043d\\u0435-\\u0437\\u044f\\u043b\\u0451\\u043d\\u044b\",\"0000FF\":\"\\u0421\\u0456\\u043d\\u0456\",\"666699\":\"\\u0428\\u044d\\u0440\\u0430-\\u0431\\u043b\\u0430\\u043a\\u0456\\u0442\\u043d\\u044b\",\"808080\":\"\\u0428\\u044d\\u0440\\u044b\",FF0000:\"\\u0427\\u044b\\u0440\\u0432\\u043e\\u043d\\u044b\",FF9900:\"\\u0411\\u0443\\u0440\\u0448\\u0442\\u044b\\u043d\\u0430\\u0432\\u044b\",\"99CC00\":\"\\u0416\\u043e\\u045e\\u0442\\u0430-\\u0437\\u044f\\u043b\\u0451\\u043d\\u044b\",\"339966\":\"\\u0411\\u0456\\u0440\\u0443\\u0437\\u043e\\u0432\\u044b\",\"33CCCC\":\"\\u0411\\u043b\\u0430\\u043a\\u0456\\u0442\\u043d\\u044b\",\"3366FF\":\"\\u041a\\u0430\\u0440\\u0430\\u043b\\u0435\\u045e\\u0441\\u043a\\u0456 \\u0441\\u0456\\u043d\\u0456\",\"800080\":\"\\u0424\\u0456\\u044f\\u043b\\u0435\\u0442\\u0430\\u0432\\u044b\",\"999999\":\"\\u041a\\u0432\\u0430\\u0440\\u0446\\u0430\\u0432\\u044b\",FF00FF:\"\\u041f\\u0443\\u0440\\u043f\\u0443\\u0440\\u043e\\u0432\\u044b\",FFCC00:\"\\u0417\\u0430\\u043b\\u0430\\u0442\\u044b\",FFFF00:\"\\u0416\\u043e\\u045e\\u0442\\u044b\",\"00FF00\":\"\\u0417\\u044f\\u043b\\u0451\\u043d\\u044b\",\"00FFFF\":\"\\u041a\\u043e\\u043b\\u0435\\u0440\\u0443 \\u0432\\u0430\\u0434\\u044b\",\"00CCFF\":\"\\u041d\\u044f\\u0431\\u0435\\u0441\\u043d\\u044b\",\"993366\":\"\\u0420\\u0443\\u0436\\u043e\\u0432\\u0430-\\u043b\\u0456\\u043b\\u043e\\u0432\\u044b\",C0C0C0:\"\\u0421\\u0440\\u044d\\u0431\\u043d\\u044b\",FF99CC:\"\\u0420\\u0443\\u0436\\u043e\\u0432\\u044b\",FFCC99:\"\\u0410\\u0440\\u0430\\u043d\\u0436\\u0430\\u0432\\u0430-\\u043f\\u0435\\u0440\\u0441\\u0456\\u043a\\u0430\\u0432\\u044b\",FFFF99:\"\\u0421\\u0432\\u0435\\u0442\\u043b\\u0430-\\u0436\\u043e\\u045e\\u0442\\u044b\",CCFFCC:\"\\u0411\\u043b\\u0435\\u0434\\u043d\\u0430-\\u0437\\u044f\\u043b\\u0451\\u043d\\u044b\",CCFFFF:\"\\u0411\\u043b\\u0435\\u0434\\u043d\\u0430-\\u0441\\u0456\\u043d\\u0456\",\"99CCFF\":\"\\u0421\\u0432\\u0435\\u0442\\u043b\\u0430-\\u043d\\u044f\\u0431\\u0435\\u0441\\u043d\\u044b\",CC99FF:\"\\u0424\\u0456\\u044f\\u043b\\u043a\\u0430\\u0432\\u044b\",FFFFFF:\"\\u0411\\u0435\\u043b\\u044b\"},aria:{\"rich_text_area\":\"\\u0412\\u0456\\u0437\\u0443\\u0430\\u043b\\u044c\\u043d\\u044b \\u0440\\u044d\\u0434\\u0430\\u043a\\u0442\\u0430\\u0440\"},wordcount:{words:\"\\u0421\\u043b\\u043e\\u0432\\u0430\\u045e:\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/cs.js",
    "content": "tinyMCE.addI18n({cs:{common:{more_colors:\"Dal\\u0161\\u00ed barvy\",invalid_data:\"Chyba: Byly zad\\u00e1ny neplatn\\u00e9 hodnoty a tyto byly ozna\\u010deny \\u010derven\\u011b.\",popup_blocked:\"Omlouv\\u00e1me se, ale blokov\\u00e1n\\u00ed vyskakovac\\u00edch oken neumo\\u017enilo otev\\u0159\\u00edt okno, kter\\u00e9 poskytuje funk\\u010dnost aplikace. Pro pln\\u00e9 vyu\\u017eit\\u00ed mo\\u017enost\\u00ed aplikace mus\\u00edte vypnout blokov\\u00e1n\\u00ed vyskakovac\\u00edch oken pro tento web.\",clipboard_no_support:\"Tato funkce nen\\u00ed va\\u0161\\u00edm prohl\\u00ed\\u017ee\\u010dem podporov\\u00e1na. Pou\\u017eijte m\\u00edsto toho kl\\u00e1vesov\\u00e9 zkratky.\",clipboard_msg:\"Funkce kop\\u00edrovat/vyjmout/vlo\\u017eit nejsou podporovan\\u00e9 v prohl\\u00ed\\u017ee\\u010d\\u00edch Mozilla a Firefox.\\\\nChcete v\\u00edce informac\\u00ed o tomto probl\\u00e9mu?\",not_set:\"- Nenastaveno -\",class_name:\"T\\u0159\\u00edda\",browse:\"Proch\\u00e1zet\",close:\"Zav\\u0159\\u00edt\",cancel:\"Storno\",update:\"Aktualizovat\",insert:\"Vlo\\u017eit\",apply:\"Pou\\u017e\\u00edt\",edit_confirm:\"Chcete pou\\u017e\\u00edt WYSIWYG re\\u017eim pro tento text?\"},contextmenu:{full:\"Do bloku\",right:\"Doprava\",center:\"Na st\\u0159ed\",left:\"Doleva\",align:\"Zarovn\\u00e1n\\u00ed\"},insertdatetime:{day_short:\"Ne,Po,\\u00dat,St,\\u010ct,P\\u00e1,So,Ne\",day_long:\"Ned\\u011ble,Pond\\u011bl\\u00ed,\\u00dater\\u00fd,St\\u0159eda,\\u010ctvrtek,P\\u00e1tek,Sobota,Ned\\u011ble\",months_short:\"Led,\\u00dano,B\\u0159e,Dub,Kv\\u011b,\\u010cer,\\u010cvc,Srp,Z\\u00e1\\u0159,\\u0158\\u00edj,Lis,Pro\",months_long:\"Leden,\\u00danor,B\\u0159ezen,Duben,Kv\\u011bten,\\u010cerven,\\u010cervenec,Srpen,Z\\u00e1\\u0159\\u00ed,\\u0158\\u00edjen,Listopad,Prosinec\",inserttime_desc:\"Vlo\\u017eit \\u010das\",insertdate_desc:\"Vlo\\u017eit datum\",time_fmt:\"%H:%M:%S\",date_fmt:\"%d.%m.%Y\"},print:{print_desc:\"Tisk\"},preview:{preview_desc:\"N\\u00e1hled\"},directionality:{rtl_desc:\"Sm\\u011br zprava doleva\",ltr_desc:\"Sm\\u011br zleva doprava\"},layer:{content:\"Nov\\u00e1 vrstva...\",absolute_desc:\"P\\u0159epnout na absolutn\\u00ed pozicov\\u00e1n\\u00ed\",backward_desc:\"P\\u0159esunout dozadu\",forward_desc:\"P\\u0159esunout dop\\u0159edu\",insertlayer_desc:\"Vlo\\u017eit novou vrstvu\"},save:{save_desc:\"Ulo\\u017eit\",cancel_desc:\"Zru\\u0161it v\\u0161echny zm\\u011bny\"},nonbreaking:{nonbreaking_desc:\"Vlo\\u017eit ned\\u011blitelnou mezeru\"},iespell:{download:\"Slovn\\u00edk ieSpell nebyl detekov\\u00e1n. Chcete ho nainstalovat?\",iespell_desc:\"Spustit kontrolu pravopisu\"},advhr:{advhr_desc:\"Vodorovn\\u00fd odd\\u011blova\\u010d\",delta_height:\"\",delta_width:\"\"},emotions:{emotions_desc:\"Emotikony\",delta_height:\"\",delta_width:\"\"},searchreplace:{replace_desc:\"Naj\\u00edt/nahradit\",search_desc:\"Naj\\u00edt\",delta_width:\"\",delta_height:\"\"},advimage:{delta_width:\"20\",image_desc:\"Vlo\\u017eit/upravit obr\\u00e1zek\",delta_height:\"\"},advlink:{link_desc:\"Vlo\\u017eit/upravit odkaz\",delta_height:\"\",delta_width:\"\"},xhtmlxtras:{attribs_desc:\"Vlo\\u017eit/upravit atributy\",ins_desc:\"P\\u0159idan\\u00fd text\",del_desc:\"Odstran\\u011bn\\u00fd text\",acronym_desc:\"Akronym\",abbr_desc:\"Zkratka\",cite_desc:\"Citace\",attribs_delta_height:\"\",attribs_delta_width:\"\",ins_delta_height:\"\",ins_delta_width:\"\",del_delta_height:\"\",del_delta_width:\"\",acronym_delta_height:\"\",acronym_delta_width:\"\",abbr_delta_height:\"\",abbr_delta_width:\"\",cite_delta_height:\"\",cite_delta_width:\"\"},style:{delta_width:\"25\",desc:\"Upravit CSS styl\",delta_height:\"\"},paste:{plaintext_mode:\"Funkce vlo\\u017eit je nyn\\u00ed v re\\u017eimu prost\\u00fd text. Op\\u011btovn\\u00e9 kliknut\\u00ed p\\u0159epne tuto funkci zp\\u011bt do norm\\u00e1ln\\u00edho re\\u017eimu.\",plaintext_mode_sticky:\"Funkce vlo\\u017eit je nyn\\u00ed v re\\u017eimu prost\\u00fd text. Op\\u011btovn\\u00e9 kliknut\\u00ed p\\u0159epne tuto funkci zp\\u011bt do norm\\u00e1ln\\u00edho re\\u017eimu. Po vlo\\u017een\\u00ed \\u010dehokoli bude tato funkce vr\\u00e1cena zp\\u011bt do norm\\u00e1ln\\u00edho re\\u017eimu.\",selectall_desc:\"Vybrat v\\u0161e\",paste_word_desc:\"Vlo\\u017eit z Wordu\",paste_text_desc:\"Vlo\\u017eit jako prost\\u00fd text\"},paste_dlg:{word_title:\"Pou\\u017eijte CTRL+V pro vlo\\u017een\\u00ed textu do okna.\",text_linebreaks:\"Zachovat zalamov\\u00e1n\\u00ed \\u0159\\u00e1dk\\u016f\",text_title:\"Pou\\u017eijte CTRL+V pro vlo\\u017een\\u00ed textu do okna.\"},table:{table_delta_width:\"50\",cellprops_delta_width:\"100\",cell:\"Bu\\u0148ka\",col:\"Sloupec\",row:\"\\u0158\\u00e1dek\",del:\"Odstranit tabulku\",copy_row_desc:\"Kop\\u00edrovat \\u0159\\u00e1dek tabulky\",cut_row_desc:\"Vyjmout \\u0159\\u00e1dek tabulky\",paste_row_after_desc:\"Vlo\\u017eit \\u0159\\u00e1dek za\",paste_row_before_desc:\"Vlo\\u017eit \\u0159\\u00e1dek p\\u0159ed\",props_desc:\"Vlastnosti tabulky\",cell_desc:\"Vlastnosti bu\\u0148ky\",row_desc:\"Vlastnosti \\u0159\\u00e1dku tabulky\",merge_cells_desc:\"Slou\\u010dit bu\\u0148ky\",split_cells_desc:\"Rozd\\u011blit bu\\u0148ky\",delete_col_desc:\"Odstranit sloupec tabulky\",col_after_desc:\"Vlo\\u017eit sloupec za\",col_before_desc:\"Vlo\\u017eit sloupec p\\u0159ed\",delete_row_desc:\"Odstranit \\u0159\\u00e1dek tabulky\",row_after_desc:\"Vlo\\u017eit \\u0159\\u00e1dek za\",row_before_desc:\"Vlo\\u017eit \\u0159\\u00e1dek p\\u0159ed\",desc:\"Vlo\\u017eit novou tabulku\",merge_cells_delta_height:\"\",merge_cells_delta_width:\"\",table_delta_height:\"\",cellprops_delta_height:\"\",rowprops_delta_height:\"\",rowprops_delta_width:\"\"},autosave:{warning_message:\"Pokud obnov\\u00edte ulo\\u017een\\u00fd obsah, ztrat\\u00edte t\\u00edm ve\\u0161ker\\u00fd obsah, kter\\u00fd je pr\\u00e1v\\u011b v okn\\u011b editoru.\\\\n\\\\nOpravdu chcete obnovit ulo\\u017een\\u00fd obsah?.\",restore_content:\"Obnovit automaticky ulo\\u017een\\u00fd obsah.\",unload_msg:\"Proveden\\u00e9 zm\\u011bny mohou b\\u00fdt ztraceny, jestli\\u017ee opust\\u00edte tuto str\\u00e1nku.\"},fullscreen:{desc:\"P\\u0159epnout na celostr\\u00e1nkov\\u00e9 zobrazen\\u00ed\"},media:{delta_width:\"130\",edit:\"Upravit m\\u00e9dia\",desc:\"Vlo\\u017eit/upravit m\\u00e9dia\",delta_height:\"\"},fullpage:{desc:\"Vlastnosti dokumentu\",delta_width:\"110\",delta_height:\"\"},template:{desc:\"Vlo\\u017eit p\\u0159eddefinovan\\u00fd obsah ze \\u0161ablony\"},visualchars:{desc:\"Zobrazen\\u00ed skryt\\u00fdch znak\\u016f zap/vyp\"},spellchecker:{desc:\"P\\u0159epnout kontrolu pravopisu\",menu:\"Nastaven\\u00ed kontroly pravopisu\",ignore_word:\"Ignorovat slovo\",ignore_words:\"Ignorovat v\\u0161e\",langs:\"Jazyky\",wait:\"\\u010cekejte pros\\u00edm...\",sug:\"N\\u00e1pov\\u011bda\",no_sug:\"\\u017d\\u00e1dn\\u00e1 n\\u00e1pov\\u011bda\",no_mpell:\"Nebyly nalezeny \\u017e\\u00e1dn\\u00e9 chyby.\"},pagebreak:{desc:\"Vlo\\u017eit konec str\\u00e1nky\"},advlist:{types:\"Typ\",def:\"V\\u00fdchoz\\u00ed\",lower_alpha:\"Mal\\u00e1 p\\u00edsmena\",lower_greek:\"Mal\\u00e1 \\u0159eck\\u00e1 p\\u00edsmena\",lower_roman:\"Mal\\u00e9 \\u0159\\u00edmsk\\u00e9 \\u010d\\u00edslice\",upper_alpha:\"Velk\\u00e1 p\\u00edsmena\",upper_roman:\"Velk\\u00e9 \\u0159\\u00edmsk\\u00e9 \\u010d\\u00edslice\",circle:\"Kole\\u010dko\",disc:\"Punt\\u00edk\",square:\"\\u010ctvere\\u010dek\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/da.js",
    "content": "tinyMCE.addI18n({da:{common:{\"more_colors\":\"Flere farver\",\"invalid_data\":\"Fejl: Forkerte v\\u00e6rdier indtastet i felter markeret med r\\u00f8d.\",\"popup_blocked\":\"Undskyld, men vi har noteret os, at din popup-blocker har forhindret et vindue, der giver programmet funktionalitet, at \\u00e5bne op. Hvis du vil have  den fulde funktionalitet, m\\u00e5 du sl\\u00e5 popup-blockeren fra for dette websted.\",\"clipboard_no_support\":\"P\\u00e5 nuv\\u00e6rende tidspunkt ikke supporteret af din browser. Anvend i stedet genvejene p\\u00e5 tastaturet.\",\"clipboard_msg\":\"Kopier/Klip/inds\\u00e6t er ikke muligt i Mozilla eller Firefox.\\nVil du have mere information om dette emne?\",\"not_set\":\"-- Ikke sat --\",\"class_name\":\"Klasse\",browse:\"Gennemse\",close:\"Luk\",cancel:\"Annuller\",update:\"Opdater\",insert:\"Inds\\u00e6t\",apply:\"Anvend\",\"edit_confirm\":\"Vil du bruge den avancerede tekstredigering?\",\"invalid_data_number\":\"{#field} skal v\\u00e6re et tal\",\"invalid_data_min\":\"{#field} skal v\\u00e6re et tal {#min}\",\"invalid_data_size\":\"{#field} skal v\\u00e6re et tal eller en procentsats\",value:\"(v\\u00e6rdi)\"},contextmenu:{full:\"Lige marginer\",right:\"H\\u00f8jre\",center:\"Centreret\",left:\"Venstre\",align:\"Justering\"},insertdatetime:{\"day_short\":\"S\\u00f8n,Man,Tir,Ons,Tors,Fre,L\\u00f8r,S\\u00f8n\",\"day_long\":\"S\\u00f8ndag,Mandag,Tirsdag,Onsdag,Torsdag,Fredag,L\\u00f8rdag,S\\u00f8ndag\",\"months_short\":\"Jan,Feb,Mar,Apr,Maj,Jun,Jul,Aug,Sep,Okt,Nov,Dec\",\"months_long\":\"Januar,Februar,Marts,April,Maj,Juni,Juli,August,September,Oktober,November,December\",\"inserttime_desc\":\"Inds\\u00e6t klokkeslet\",\"insertdate_desc\":\"Inds\\u00e6t dato\",\"time_fmt\":\"%H:%M:%S\",\"date_fmt\":\"%Y-%m-%d\"},print:{\"print_desc\":\"Udskriv\"},preview:{\"preview_desc\":\"Vis udskrift\"},directionality:{\"rtl_desc\":\"Retning h\\u00f8jre mod venstre\",\"ltr_desc\":\"Retning venstre mod h\\u00f8jre\"},layer:{content:\"Nyt lag...\",\"absolute_desc\":\"Sl\\u00e5 absolut positionering til/fra\",\"backward_desc\":\"Flyt bagud\",\"forward_desc\":\"Flyt fremad\",\"insertlayer_desc\":\"Inds\\u00e6t nyt lag\"},save:{\"save_desc\":\"Gem\",\"cancel_desc\":\"Annuller alle \\u00e6ndringer\"},nonbreaking:{\"nonbreaking_desc\":\"Inds\\u00e6t et blanktegn\"},iespell:{download:\"ieSpell blev ikke fundet. Vil du installere det nu?\",\"iespell_desc\":\"Udf\\u00f8r stavekontrol\"},advhr:{\"advhr_desc\":\"Horisontal linie\",\"delta_height\":\"\",\"delta_width\":\"\"},emotions:{\"emotions_desc\":\"Hum\\u00f8rikoner\",\"delta_height\":\"\",\"delta_width\":\"\"},searchreplace:{\"replace_desc\":\"S\\u00f8g/erstat\",\"search_desc\":\"S\\u00f8g\",\"delta_width\":\"\",\"delta_height\":\"\"},advimage:{\"image_desc\":\"Inds\\u00e6t/rediger billede\",\"delta_width\":\"\",\"delta_height\":\"\"},advlink:{\"delta_width\":\"40\",\"link_desc\":\"Inds\\u00e6t/rediger link\",\"delta_height\":\"\"},xhtmlxtras:{\"attribs_desc\":\"Inds\\u00e6t/rediger attributter\",\"ins_desc\":\"Inds\\u00e6ttelse\",\"del_desc\":\"Sletning\",\"acronym_desc\":\"Akronym\",\"abbr_desc\":\"Forkortelse\",\"cite_desc\":\"Citat\",\"attribs_delta_height\":\"\",\"attribs_delta_width\":\"\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\"},style:{desc:\"Rediger CSS stil\",\"delta_height\":\"\",\"delta_width\":\"\"},paste:{\"plaintext_mode\":\"Inds\\u00e6t er nu i ikke-formateret modus. Klik igen for at skfite tilbage til almindelig inds\\u00e6t modus.\",\"plaintext_mode_sticky\":\"Inds\\u00e6t er nu i ikke-formateret modus. Klik igen for at skfite tilbage til almindelig inds\\u00e6t modus. Efter du har indsat noget s\\u00e6ttes du automatisk tilbaeg til alminde inds\\u00e6t modus.\",\"selectall_desc\":\"V\\u00e6lg alle\",\"paste_word_desc\":\"Inds\\u00e6t fra  Word\",\"paste_text_desc\":\"Inds\\u00e6t ikke-formatteret tekst\"},\"paste_dlg\":{\"word_title\":\"Anvend CTRL+V p\\u00e5 tastaturet for at inds\\u00e6tte teksten.\",\"text_linebreaks\":\"Bevar linieskift\",\"text_title\":\"Anvend CTRL+V p\\u00e5 tastaturet for at inds\\u00e6tte teksten.\"},table:{cell:\"Celle\",col:\"Kolonne\",row:\"R\\u00e6kke\",del:\"Slet tabel\",\"copy_row_desc\":\"Kopier r\\u00e6kke\",\"cut_row_desc\":\"Klip r\\u00e6kke\",\"paste_row_after_desc\":\"Inds\\u00e6t r\\u00e6kke efter\",\"paste_row_before_desc\":\"Inds\\u00e6t r\\u00e6kke f\\u00f8r\",\"props_desc\":\"Tabelegenskaber\",\"cell_desc\":\"Celleegenskaber\",\"row_desc\":\"R\\u00e6kkeegenskaber\",\"merge_cells_desc\":\"Flet celler\",\"split_cells_desc\":\"Opdel flettede celler\",\"delete_col_desc\":\"Slet kolonne\",\"col_after_desc\":\"Inds\\u00e6t kolonne efter\",\"col_before_desc\":\"Inds\\u00e6t kolonne f\\u00f8r\",\"delete_row_desc\":\"Slet r\\u00e6kke\",\"row_after_desc\":\"Inds\\u00e6t r\\u00e6kke efter\",\"row_before_desc\":\"Inds\\u00e6t r\\u00e6kke f\\u00f8r\",desc:\"Inds\\u00e6t tabel\",\"merge_cells_delta_height\":\"\",\"merge_cells_delta_width\":\"\",\"table_delta_height\":\"\",\"table_delta_width\":\"\",\"cellprops_delta_height\":\"\",\"cellprops_delta_width\":\"\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\"},autosave:{\"warning_message\":\"Hvis du genskaber det gemte indhold vil du miste al det indhold der lige nu er i editoren.nnEr du sikker p\\u00e5 du vil genskabe det gemte indhold?\",\"restore_content\":\"Genskab det gemte indhold.\",\"unload_msg\":\"Har du foretaget nogle \\u00e6ndringer, vil de g\\u00e5 tabt, hvis du navigerer v\\u00e6k fra denne side.\"},fullscreen:{desc:\"Vis/skjul fuldsk\\u00e6rmstilstand\"},media:{edit:\"Rediger indlejret mediefil\",desc:\"Inds\\u00e6t/rediger indlejret mediefil\",\"delta_height\":\"\",\"delta_width\":\"\"},fullpage:{desc:\"Dokumentegenskaber\",\"delta_width\":\"\",\"delta_height\":\"\"},template:{desc:\"Inds\\u00e6t pr\\u00e6defineret skabelonindhold\"},visualchars:{desc:\"Vis/skjul visuelle kontroltegn\"},spellchecker:{desc:\"Vis/skjul stavekontrol\",menu:\"Indstillinger for stavekontrol\",\"ignore_word\":\"Ignorer ord\",\"ignore_words\":\"Ignorer alle\",langs:\"Sprog\",wait:\"Vent venligst...\",sug:\"Forslag\",\"no_sug\":\"Ingen forslag\",\"no_mpell\":\"Ingen stavefejl fundet.\",\"learn_word\":\"L\\u00e6r ord\"},pagebreak:{desc:\"Inds\\u00e6t sideskift for print\"},advlist:{types:\"Typer\",def:\"Standard\",\"lower_alpha\":\"Sm\\u00e5 alfa\",\"lower_greek\":\"Sm\\u00e5 gr\\u00e6ske\",\"lower_roman\":\"Sm\\u00e5 romertal\",\"upper_alpha\":\"Store alfa\",\"upper_roman\":\"Store romertal\",circle:\"Cirkel\",disc:\"Prik\",square:\"Firkant\"},colors:{\"333300\":\"M\\u00f8rk oliven\",\"993300\":\"Br\\u00e6ndt orange\",\"000000\":\"Sort\",\"003300\":\"M\\u00f8rkegr\\u00f8n\",\"003366\":\"Azurbl\\u00e5\",\"000080\":\"Marinebl\\u00e5\",\"333399\":\"Indigo\",\"333333\":\"Meget m\\u00f8rk gr\\u00e5\",\"800000\":\"Maroon\",FF6600:\"Orange\",\"808000\":\"Oliven\",\"008000\":\"Gr\\u00f8n\",\"008080\":\"Bl\\u00e5gr\\u00f8n\",\"0000FF\":\"Bl\\u00e5\",\"666699\":\"Gr\\u00e5bl\\u00e5\",\"808080\":\"Gr\\u00e5\",FF0000:\"R\\u00f8d\",FF9900:\"Rav\",\"99CC00\":\"Gulgr\\u00f8n\",\"339966\":\"Havgr\\u00f8n\",\"33CCCC\":\"Turkis\",\"3366FF\":\"Kongebl\\u00e5\",\"800080\":\"Lilla\",\"999999\":\"Mellemgr\\u00e5\",FF00FF:\"Magenta\",FFCC00:\"Guld\",FFFF00:\"Gul\",\"00FF00\":\"Lime\",\"00FFFF\":\"Aqua\",\"00CCFF\":\"Himmelbl\\u00e5\",\"993366\":\"Brun\",C0C0C0:\"S\\u00f8lv\",FF99CC:\"Lyser\\u00f8d\",FFCC99:\"Fersken\",FFFF99:\"Lysgul\",CCFFCC:\"Bleggr\\u00f8n\",CCFFFF:\"Blegcyan\",\"99CCFF\":\"Lys himmelbl\\u00e5\",CC99FF:\"Blomme\",FFFFFF:\"Hvid\"},aria:{\"rich_text_area\":\"Tekstomr\\u00e5de med formatering\"},wordcount:{words:\"Ord:\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/de.js",
    "content": "tinyMCE.addI18n({de:{common:{more_colors:\"Weitere Farben\",invalid_data:\"Fehler: Sie haben ung\\u00fcltige Werte eingegeben (rot markiert).\",popup_blocked:\"Leider hat Ihr Popup-Blocker ein Fenster unterbunden, das f\\u00fcr den Betrieb dieses Programms n\\u00f6tig ist. Bitte deaktivieren Sie den Popup-Blocker f\\u00fcr diese Seite.\",clipboard_no_support:\"Wird derzeit in Ihrem Browser nicht unterst\\u00fctzt. Bitte benutzen Sie stattdessen die Tastenk\\u00fcrzel.\",clipboard_msg:\"Kopieren, Ausschneiden und Einf\\u00fcgen sind im Mozilla Firefox nicht m\\u00f6glich.\\\\nM\\u00f6chten Sie mehr \\u00fcber dieses Problem erfahren?\",not_set:\"- unbestimmt -\",class_name:\"CSS-Klasse\",browse:\"Durchsuchen\",close:\"Schlie\\u00dfen\",cancel:\"Abbrechen\",update:\"Aktualisieren\",insert:\"Einf\\u00fcgen\",apply:\"\\u00dcbernehmen\",edit_confirm:\"M\\u00f6chten Sie diesen Text jetzt bearbeiten?\"},contextmenu:{full:\"Blocksatz\",right:\"Rechtsb\\u00fcndig\",center:\"Zentriert\",left:\"Linksb\\u00fcndig\",align:\"Ausrichtung\"},insertdatetime:{day_short:\"So,Mo,Di,Mi,Do,Fr,Sa,So\",day_long:\"Sonntag,Montag,Dienstag,Mittwoch,Donnerstag,Freitag,Samstag,Sonntag\",months_short:\"Jan,Feb,M\\u00e4r,Apr,Mai,Juni,Juli,Aug,Sept,Okt,Nov,Dez\",months_long:\"Januar,Februar,M\\u00e4rz,April,Mai,Juni,Juli,August,September,Oktober,November,Dezember\",inserttime_desc:\"Zeit einf\\u00fcgen\",insertdate_desc:\"Datum einf\\u00fcgen\",time_fmt:\"%H:%M:%S\",date_fmt:\"%d.%m.%Y\"},print:{print_desc:\"Drucken\"},preview:{preview_desc:\"Vorschau\"},directionality:{rtl_desc:\"Schrift von rechts nach links\",ltr_desc:\"Schrift von links nach rechts\"},layer:{content:\"Neue Ebene...\",absolute_desc:\"Absolute Positionierung\",backward_desc:\"Nach hinten legen\",forward_desc:\"Nach vorne holen\",insertlayer_desc:\"Neue Ebene einf\\u00fcgen\"},save:{save_desc:\"Speichern\",cancel_desc:\"Alle \\u00c4nderungen verwerfen\"},nonbreaking:{nonbreaking_desc:\"Gesch\\u00fctztes Leerzeichen einf\\u00fcgen\"},iespell:{download:\"ieSpell konnte nicht gefunden werden. Wollen Sie es installieren?\",iespell_desc:\"Rechtschreibpr\\u00fcfung\"},advhr:{advhr_desc:\"Trennlinie\",delta_height:\"\",delta_width:\"\"},emotions:{emotions_desc:\"Smilies\",delta_height:\"\",delta_width:\"\"},searchreplace:{replace_desc:\"Suchen/Ersetzen\",search_desc:\"Suchen\",delta_width:\"\",delta_height:\"\"},advimage:{image_desc:\"Bild einf\\u00fcgen/ersetzen\",delta_width:\"\",delta_height:\"\"},advlink:{link_desc:\"Link einf\\u00fcgen/bearbeiten\",delta_height:\"\",delta_width:\"\"},xhtmlxtras:{attribs_desc:\"Attribute einf\\u00fcgen/bearbeiten\",ins_desc:\"Eingef\\u00fcgter Text\",del_desc:\"Entfernter Text\",acronym_desc:\"Akronym\",abbr_desc:\"Abk\\u00fcrzung\",cite_desc:\"Quellenangabe\",attribs_delta_height:\"\",attribs_delta_width:\"\",ins_delta_height:\"\",ins_delta_width:\"\",del_delta_height:\"\",del_delta_width:\"\",acronym_delta_height:\"\",acronym_delta_width:\"\",abbr_delta_height:\"\",abbr_delta_width:\"\",cite_delta_height:\"\",cite_delta_width:\"\"},style:{desc:\"CSS-Styles bearbeiten\",delta_height:\"\",delta_width:\"\"},paste:{plaintext_mode:\"Einf\\u00fcgemodus ist nun \\\"Nur Text\\\". Erneut klicken stellt den Normalmodus wieder her.\",plaintext_mode_sticky:\"Einf\\u00fcgemodus ist nun \\\"Nur Text\\\". Erneut klicken (oder das Einf\\u00fcgen aus der Zwischenablage) stellt den Normalmodus wieder her.\",selectall_desc:\"Alles ausw\\u00e4hlen\",paste_word_desc:\"Mit Formatierungen (aus Word) einf\\u00fcgen\",paste_text_desc:\"Als einfachen Text einf\\u00fcgen\"},paste_dlg:{word_title:\"Dr\\u00fccken Sie auf Ihrer Tastatur Strg+V, um den Text einzuf\\u00fcgen.\",text_linebreaks:\"Zeilenumbr\\u00fcche beibehalten\",text_title:\"Dr\\u00fccken Sie auf Ihrer Tastatur Strg+V, um den Text einzuf\\u00fcgen.\"},table:{cellprops_delta_width:\"150\",cell:\"Zelle\",col:\"Spalte\",row:\"Zeile\",del:\"Tabelle l\\u00f6schen\",copy_row_desc:\"Zeile kopieren\",cut_row_desc:\"Zeile ausschneiden\",paste_row_after_desc:\"Zeile unterhalb aus der Zwischenablage einf\\u00fcgen\",paste_row_before_desc:\"Zeile oberhalb aus der Zwischenablage einf\\u00fcgen\",props_desc:\"Eigenschaften der Tabelle\",cell_desc:\"Eigenschaften der Zelle\",row_desc:\"Eigenschaften der Zeile\",merge_cells_desc:\"Zellen verbinden\",split_cells_desc:\"Verbundene Zellen trennen\",delete_col_desc:\"Spalte l\\u00f6schen\",col_after_desc:\"Spalte rechts einf\\u00fcgen\",col_before_desc:\"Spalte links einf\\u00fcgen\",delete_row_desc:\"Zeile l\\u00f6schen\",row_after_desc:\"Zeile unterhalb einf\\u00fcgen\",row_before_desc:\"Zeile oberhalb einf\\u00fcgen\",desc:\"Tabelle erstellen/bearbeiten\",merge_cells_delta_height:\"\",merge_cells_delta_width:\"\",table_delta_height:\"\",table_delta_width:\"\",cellprops_delta_height:\"\",rowprops_delta_height:\"\",rowprops_delta_width:\"\"},autosave:{warning_message:\"Wenn Sie den Inhalt wiederherstellen, gehen die aktuellen Daten im Editor verloren.\\\\n\\\\nSind sie sicher, dass Sie den Inhalt wiederherstellen m\\u00f6chten?\",restore_content:\"Automatisch gespeicherten Inhalt wiederherstellen.\",unload_msg:\"Ihre \\u00c4nderungen werden verloren gehen, wenn Sie die Seite verlassen.\"},fullscreen:{desc:\"Vollbildschirm\"},media:{edit:\"Multimediaeinbettung bearbeiten\",desc:\"Multimedia einbetten/bearbeiten\",delta_height:\"\",delta_width:\"\"},fullpage:{desc:\"Dokument-Eigenschaften\",delta_width:\"\",delta_height:\"\"},template:{desc:\"Inhalt aus Vorlage einf\\u00fcgen\"},visualchars:{desc:\"Sichtbarkeit der Steuerzeichen an/aus\"},spellchecker:{desc:\"Rechtschreibpr\\u00fcfung an/aus\",menu:\"Einstellungen der Rechtschreibpr\\u00fcfung\",ignore_word:\"Wort ignorieren\",ignore_words:\"Alle ignorieren\",langs:\"Sprachen\",wait:\"Bitte warten...\",sug:\"Vorschl\\u00e4ge\",no_sug:\"Keine Vorschl\\u00e4ge\",no_mpell:\"Keine Rechtschreibfehler gefunden.\"},pagebreak:{desc:\"Seitenumbruch einf\\u00fcgen\"},advlist:{types:\"Typen\",def:\"Standard\",lower_alpha:\"a. b. c.\",lower_greek:\"1. 2. 3.\",lower_roman:\"i. ii. iii.\",upper_alpha:\"A. B. C.\",upper_roman:\"I. II. III.\",circle:\"Kreis\",disc:\"Punkt\",square:\"Quadrat\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/el.js",
    "content": "tinyMCE.addI18n({el:{common:{\"more_colors\":\"\\u03a0\\u03b5\\u03c1\\u03b9\\u03c3\\u03c3\\u03cc\\u03c4\\u03b5\\u03c1\\u03b1 \\u03c7\\u03c1\\u03ce\\u03bc\\u03b1\\u03c4\\u03b1\",\"invalid_data\":\"Error: Invalid values entered, these are marked in red.\",\"popup_blocked\":\"\\u0388\\u03bd\\u03b1 popup-blocker \\u03c0\\u03c1\\u03cc\\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03b1 \\u03ad\\u03c7\\u03b5\\u03b9 \\u03b1\\u03c0\\u03b5\\u03bd\\u03b5\\u03c1\\u03b3\\u03bf\\u03c0\\u03bf\\u03b9\\u03ae\\u03c3\\u03b5\\u03b9 \\u03ad\\u03bd\\u03b1 \\u03c0\\u03b1\\u03c1\\u03ac\\u03b8\\u03c5\\u03c1\\u03bf \\u03b1\\u03c0\\u03b1\\u03c1\\u03b1\\u03af\\u03c4\\u03b7\\u03c4\\u03bf \\u03b3\\u03b9\\u03b1 \\u03c4\\u03b7\\u03bd \\u03b5\\u03c6\\u03b1\\u03c1\\u03bc\\u03bf\\u03b3\\u03ae. \\u03a0\\u03c1\\u03ad\\u03c0\\u03b5\\u03b9 \\u03bd\\u03b1 \\u03c4\\u03bf \\u03b1\\u03c0\\u03b5\\u03bd\\u03b5\\u03c1\\u03b3\\u03bf\\u03c0\\u03bf\\u03b9\\u03ae\\u03c3\\u03b5\\u03c4\\u03b5 \\u03b3\\u03b9\\u03b1 \\u03c4\\u03b7\\u03bd \\u03b9\\u03c3\\u03c4\\u03bf\\u03c3\\u03b5\\u03bb\\u03af\\u03b4\\u03b1 \\u03b1\\u03c5\\u03c4\\u03ae \\u03b3\\u03b9\\u03b1 \\u03bd\\u03b1 \\u03c7\\u03c1\\u03b7\\u03c3\\u03b9\\u03bc\\u03bf\\u03c0\\u03bf\\u03b9\\u03ae\\u03c3\\u03b5\\u03c4\\u03b5 \\u03c0\\u03bb\\u03ae\\u03c1\\u03c9\\u03c2 \\u03c4\\u03b7\\u03bd \\u03b5\\u03c6\\u03b1\\u03c1\\u03bc\\u03bf\\u03b3\\u03ae.\",\"clipboard_no_support\":\"\\u0394\\u03b5\\u03bd \\u03c5\\u03c0\\u03bf\\u03c3\\u03c4\\u03b7\\u03c1\\u03af\\u03b6\\u03b5\\u03c4\\u03b1\\u03b9 \\u03b1\\u03c0\\u03cc \\u03c4\\u03bf\\u03bd \\u03c6\\u03c5\\u03bb\\u03bb\\u03bf\\u03bc\\u03b5\\u03c4\\u03c1\\u03b7\\u03c4\\u03ae \\u03c3\\u03b1\\u03c2, \\u03c7\\u03c1\\u03b7\\u03c3\\u03b9\\u03bc\\u03bf\\u03c0\\u03bf\\u03b9\\u03ae\\u03c3\\u03c4\\u03b5 \\u03c4\\u03b9\\u03c2 \\u03c3\\u03c5\\u03bd\\u03c4\\u03bf\\u03bc\\u03b5\\u03cd\\u03c3\\u03b5\\u03b9\\u03c2 \\u03c0\\u03bb\\u03b7\\u03ba\\u03c4\\u03c1\\u03bf\\u03bb\\u03bf\\u03b3\\u03af\\u03bf\\u03c5.\",\"clipboard_msg\":\"\\u039f\\u03b9 \\u03bb\\u03b5\\u03b9\\u03c4\\u03bf\\u03c5\\u03c1\\u03b3\\u03af\\u03b5\\u03c2 \\u0391\\u03bd\\u03c4\\u03b9\\u03b3\\u03c1\\u03b1\\u03c6\\u03ae/\\u0391\\u03c0\\u03bf\\u03ba\\u03bf\\u03c0\\u03ae/\\u0395\\u03c0\\u03b9\\u03ba\\u03cc\\u03bb\\u03bb\\u03b7\\u03c3\\u03b7 \\u03b4\\u03b5\\u03bd \\u03b5\\u03af\\u03bd\\u03b1\\u03b9 \\u03b4\\u03b9\\u03b1\\u03b8\\u03ad\\u03c3\\u03b9\\u03bc\\u03b5\\u03c2 \\u03c3\\u03b5 Mozilla \\u03ba\\u03b1\\u03b9 Firefox.\\n\\u0398\\u03ad\\u03bb\\u03b5\\u03c4\\u03b5 \\u03c0\\u03b5\\u03c1\\u03b9\\u03c3\\u03c3\\u03cc\\u03c4\\u03b5\\u03c1\\u03b5\\u03c2 \\u03c0\\u03bb\\u03b7\\u03c1\\u03bf\\u03c6\\u03bf\\u03c1\\u03af\\u03b5\\u03c2 ;\",\"not_set\":\"-- \\u039c\\u03b7 \\u03bf\\u03c1\\u03b9\\u03c3\\u03bc\\u03ad\\u03bd\\u03bf --\",\"class_name\":\"\\u039a\\u03bb\\u03ac\\u03c3\\u03b7\",browse:\"\\u0395\\u03cd\\u03c1\\u03b5\\u03c3\\u03b7\",close:\"\\u039a\\u03bb\\u03b5\\u03af\\u03c3\\u03b9\\u03bc\\u03bf\",cancel:\"\\u0386\\u03ba\\u03c5\\u03c1\\u03bf\",update:\"\\u0395\\u03bd\\u03b7\\u03bc\\u03ad\\u03c1\\u03c9\\u03c3\\u03b7\",insert:\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae\",apply:\"\\u0395\\u03c6\\u03b1\\u03c1\\u03bc\\u03bf\\u03b3\\u03ae\",\"edit_confirm\":\"\\u0398\\u03ad\\u03bb\\u03b5\\u03c4\\u03b5 \\u03bd\\u03b1 \\u03c7\\u03c1\\u03b7\\u03c3\\u03b9\\u03bc\\u03bf\\u03c0\\u03bf\\u03b9\\u03ae\\u03c3\\u03b5\\u03c4\\u03b5 \\u03c4\\u03b7\\u03bd \\u03bb\\u03b5\\u03b9\\u03c4\\u03bf\\u03c5\\u03c1\\u03b3\\u03af\\u03b1 WYSIWYG ;\",\"invalid_data_number\":\"{#field} \\u03c0\\u03c1\\u03ad\\u03c0\\u03b5\\u03b9 \\u03bd\\u03b1 \\u03b5\\u03af\\u03bd\\u03b1\\u03b9 \\u03b1\\u03c1\\u03b9\\u03b8\\u03bc\\u03cc\\u03c2\",\"invalid_data_min\":\"{#field} \\u03c0\\u03c1\\u03ad\\u03c0\\u03b5\\u03b9 \\u03bd\\u03b1 \\u03b5\\u03af\\u03bd\\u03b1\\u03b9 \\u03b1\\u03c1\\u03b9\\u03b8\\u03bc\\u03cc\\u03c2 \\u03bc\\u03b5\\u03b3\\u03b1\\u03bb\\u03cd\\u03c4\\u03b5\\u03c1\\u03bf\\u03c2 \\u03c4\\u03bf\\u03c5 {#min}\",\"invalid_data_size\":\"{#field} \\u03c0\\u03c1\\u03ad\\u03c0\\u03b5\\u03b9 \\u03bd\\u03b1 \\u03b5\\u03af\\u03bd\\u03b1\\u03b9 \\u03b1\\u03c1\\u03b9\\u03b8\\u03bc\\u03cc\\u03c2 \\u03ae \\u03c0\\u03bf\\u03c3\\u03bf\\u03c3\\u03c4\\u03cc\",value:\"(\\u03b5\\u03ba\\u03c4\\u03af\\u03bc\\u03b7\\u03c3\\u03b7)\"},contextmenu:{full:\"\\u03a0\\u03bb\\u03ae\\u03c1\\u03b7\\u03c2\",right:\"\\u0394\\u03b5\\u03be\\u03b9\\u03ac\",center:\"\\u039a\\u03ad\\u03bd\\u03c4\\u03c1\\u03bf\",left:\"\\u0391\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac\",align:\"\\u03a3\\u03c4\\u03bf\\u03af\\u03c7\\u03b9\\u03c3\\u03b7\"},insertdatetime:{\"day_short\":\"\\u039a\\u03c5,\\u0394\\u03b5,\\u03a4\\u03c1,\\u03a4\\u03b5\\u03c4,\\u03a0\\u03ad\\u03bc,\\u03a0\\u03b1\\u03c1,\\u03a3\\u03b1\\u03b2\",\"day_long\":\"\\u039a\\u03c5\\u03c1\\u03b9\\u03b1\\u03ba\\u03ae,\\u0394\\u03b5\\u03c5\\u03c4\\u03ad\\u03c1\\u03b1,\\u03a4\\u03c1\\u03af\\u03c4\\u03b7,\\u03a4\\u03b5\\u03c4\\u03ac\\u03c1\\u03c4\\u03b7,\\u03a0\\u03ad\\u03bc\\u03c0\\u03c4\\u03b7,\\u03a0\\u03b1\\u03c1\\u03b1\\u03c3\\u03ba\\u03b5\\u03c5\\u03ae,\\u03a3\\u03ac\\u03b2\\u03b2\\u03b1\\u03c4\\u03bf\",\"months_short\":\"\\u0399\\u03b1\\u03bd,\\u03a6\\u03b5\\u03b2,\\u039c\\u03ac\\u03c1,\\u0391\\u03c0\\u03c1,\\u039c\\u03ac\\u03b9,\\u0399\\u03bf\\u03cd\\u03bd,\\u0399\\u03bf\\u03cd\\u03bb,\\u0391\\u03cd\\u03b3,\\u03a3\\u03b5\\u03c0,\\u039f\\u03ba\\u03c4,\\u039d\\u03bf\\u03ad,\\u0394\\u03b5\\u03ba\",\"months_long\":\"\\u0399\\u03b1\\u03bd\\u03bf\\u03c5\\u03ac\\u03c1\\u03b9\\u03bf\\u03c2,\\u03a6\\u03b5\\u03b2\\u03c1\\u03bf\\u03c5\\u03ac\\u03c1\\u03b9\\u03bf\\u03c2,\\u039c\\u03ac\\u03c1\\u03c4\\u03b9\\u03bf\\u03c2,\\u0391\\u03c0\\u03c1\\u03af\\u03bb\\u03b9\\u03bf\\u03c2,\\u039c\\u03ac\\u03b9\\u03bf\\u03c2,\\u0399\\u03bf\\u03cd\\u03bd\\u03b9\\u03bf\\u03c2,\\u0399\\u03bf\\u03cd\\u03bb\\u03b9\\u03bf\\u03c2,\\u0391\\u03cd\\u03b3\\u03bf\\u03c5\\u03c3\\u03c4\\u03bf\\u03c2,\\u03a3\\u03b5\\u03c0\\u03c4\\u03ad\\u03bc\\u03b2\\u03c1\\u03b9\\u03bf\\u03c2,\\u039f\\u03ba\\u03c4\\u03ce\\u03b2\\u03c1\\u03b9\\u03bf\\u03c2,\\u039d\\u03bf\\u03ad\\u03bc\\u03b2\\u03c1\\u03b9\\u03bf\\u03c2,\\u0394\\u03b5\\u03ba\\u03ad\\u03bc\\u03b2\\u03c1\\u03b9\\u03bf\\u03c2\",\"inserttime_desc\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae \\u03ce\\u03c1\\u03b1\\u03c2\",\"insertdate_desc\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae \\u03b7\\u03bc\\u03ad\\u03c1\\u03b1\\u03c2\",\"time_fmt\":\"%H:%M:%S\",\"date_fmt\":\"%Y-%m-%d\"},print:{\"print_desc\":\"\\u0395\\u03ba\\u03c4\\u03cd\\u03c0\\u03c9\\u03c3\\u03b7\"},preview:{\"preview_desc\":\"\\u03a0\\u03c1\\u03bf\\u03b5\\u03c0\\u03b9\\u03c3\\u03ba\\u03cc\\u03c0\\u03b7\\u03c3\\u03b7\"},directionality:{\"rtl_desc\":\"\\u039a\\u03b1\\u03c4\\u03b5\\u03cd\\u03b8\\u03c5\\u03bd\\u03c3\\u03b7 \\u03b4\\u03b5\\u03be\\u03b9\\u03ac \\u03c0\\u03c1\\u03bf\\u03c2 \\u03b1\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac\",\"ltr_desc\":\"\\u039a\\u03b1\\u03c4\\u03b5\\u03cd\\u03b8\\u03c5\\u03bd\\u03c3\\u03b7 \\u03b1\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac \\u03c0\\u03c1\\u03bf\\u03c2 \\u03b4\\u03b5\\u03be\\u03b9\\u03ac\"},layer:{content:\"\\u039d\\u03ad\\u03bf layer...\",\"absolute_desc\":\"\\u0391\\u03c0\\u03cc\\u03bb\\u03c5\\u03c4\\u03b7/\\u03a3\\u03c7\\u03b5\\u03c4\\u03b9\\u03ba\\u03ae \\u03c4\\u03bf\\u03c0\\u03bf\\u03b8\\u03ad\\u03c4\\u03b7\\u03c3\\u03b7\",\"backward_desc\":\"\\u039c\\u03b5\\u03c4\\u03b1\\u03ba\\u03af\\u03bd\\u03b7\\u03c3\\u03b7 \\u03c3\\u03c4\\u03bf \\u03c0\\u03b1\\u03c1\\u03b1\\u03c3\\u03ba\\u03ae\\u03bd\\u03b9\\u03bf\",\"forward_desc\":\"\\u039c\\u03b5\\u03c4\\u03b1\\u03ba\\u03af\\u03bd\\u03b7\\u03c3\\u03b7 \\u03c3\\u03c4\\u03bf \\u03c0\\u03c1\\u03bf\\u03c3\\u03ba\\u03ae\\u03bd\\u03b9\\u03bf\",\"insertlayer_desc\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae \\u03bd\\u03ad\\u03bf\\u03c5 layer\"},save:{\"save_desc\":\"\\u0391\\u03c0\\u03bf\\u03b8\\u03ae\\u03ba\\u03b5\\u03c5\\u03c3\\u03b7\",\"cancel_desc\":\"\\u0391\\u03ba\\u03cd\\u03c1\\u03c9\\u03c3\\u03b7 \\u03cc\\u03bb\\u03c9\\u03bd \\u03c4\\u03c9\\u03bd \\u03b1\\u03bb\\u03bb\\u03b1\\u03b3\\u03ce\\u03bd\"},nonbreaking:{\"nonbreaking_desc\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae non-breaking \\u03ba\\u03b5\\u03bd\\u03bf\\u03cd \\u03c7\\u03b1\\u03c1\\u03b1\\u03ba\\u03c4\\u03ae\\u03c1\\u03b1\"},iespell:{download:\"\\u03a4\\u03bf ieSpell \\u03b4\\u03b5\\u03bd \\u03b2\\u03c1\\u03ad\\u03b8\\u03b7\\u03ba\\u03b5. \\u039d\\u03b1 \\u03ba\\u03b1\\u03c4\\u03ad\\u03b2\\u03b5\\u03b9 \\u03c4\\u03ce\\u03c1\\u03b1 ;\",\"iespell_desc\":\"\\u0395\\u03ba\\u03c4\\u03ad\\u03bb\\u03b5\\u03c3\\u03b7 \\u03b5\\u03bb\\u03ad\\u03b3\\u03c7\\u03bf\\u03c5 \\u03bf\\u03c1\\u03b8\\u03bf\\u03b3\\u03c1\\u03b1\\u03c6\\u03af\\u03b1\\u03c2\"},advhr:{\"advhr_desc\":\"\\u039f\\u03c1\\u03b9\\u03b6\\u03cc\\u03bd\\u03c4\\u03b9\\u03b1 \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ae\",\"delta_height\":\"\",\"delta_width\":\"\"},emotions:{\"emotions_desc\":\"\\u03a3\\u03c5\\u03bd\\u03b1\\u03b9\\u03c3\\u03b8\\u03ae\\u03bc\\u03b1\\u03c4\\u03b1\",\"delta_height\":\"\",\"delta_width\":\"\"},searchreplace:{\"replace_desc\":\"\\u0395\\u03cd\\u03c1\\u03b5\\u03c3\\u03b7/\\u0391\\u03bd\\u03c4\\u03b9\\u03ba\\u03b1\\u03c4\\u03ac\\u03c3\\u03c4\\u03b1\\u03c3\\u03b7\",\"search_desc\":\"\\u0395\\u03cd\\u03c1\\u03b5\\u03c3\\u03b7\",\"delta_width\":\"\",\"delta_height\":\"\"},advimage:{\"image_desc\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae/\\u03b5\\u03c0\\u03b5\\u03be\\u03b5\\u03c1\\u03b3\\u03b1\\u03c3\\u03af\\u03b1 \\u03b5\\u03b9\\u03ba\\u03cc\\u03bd\\u03b1\\u03c2\",\"delta_width\":\"\",\"delta_height\":\"\"},advlink:{\"delta_width\":\"50\",\"link_desc\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae/\\u03b5\\u03c0\\u03b5\\u03be\\u03b5\\u03c1\\u03b3\\u03b1\\u03c3\\u03af\\u03b1 \\u03c3\\u03c5\\u03bd\\u03b4\\u03ad\\u03c3\\u03bc\\u03bf\\u03c5\",\"delta_height\":\"\"},xhtmlxtras:{\"attribs_desc\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae/\\u03b5\\u03c0\\u03b5\\u03be\\u03b5\\u03c1\\u03b3\\u03b1\\u03c3\\u03af\\u03b1 \\u03b9\\u03b4\\u03b9\\u03bf\\u03c4\\u03ae\\u03c4\\u03c9\\u03bd\",\"ins_desc\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae\",\"del_desc\":\"\\u0394\\u03b9\\u03b1\\u03b3\\u03c1\\u03b1\\u03c6\\u03ae\",\"acronym_desc\":\"\\u0391\\u03ba\\u03c1\\u03bf\\u03bd\\u03cd\\u03bc\\u03b9\\u03bf\",\"abbr_desc\":\"\\u03a3\\u03c5\\u03bd\\u03c4\\u03bf\\u03bc\\u03bf\\u03b3\\u03c1\\u03b1\\u03c6\\u03af\\u03b1\",\"cite_desc\":\"Citation\",\"attribs_delta_height\":\"\",\"attribs_delta_width\":\"\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\"},style:{desc:\"\\u0395\\u03c0\\u03b5\\u03be\\u03b5\\u03c1\\u03b3\\u03b1\\u03c3\\u03af\\u03b1 \\u03a3\\u03c4\\u03c5\\u03bb CSS\",\"delta_height\":\"\",\"delta_width\":\"\"},paste:{\"plaintext_mode\":\"\\u0397 \\u0395\\u03c0\\u03b9\\u03ba\\u03cc\\u03bb\\u03bb\\u03b7\\u03c3\\u03b7 \\u03b5\\u03af\\u03bd\\u03b1\\u03b9 \\u03c4\\u03ce\\u03c1\\u03b1 \\u03c3\\u03b5 \\u03bb\\u03b5\\u03b9\\u03c4\\u03bf\\u03c5\\u03c1\\u03b3\\u03af\\u03b1 \\u03b1\\u03c0\\u03bb\\u03bf\\u03cd \\u03ba\\u03b5\\u03b9\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5. \\u039a\\u03ac\\u03bd\\u03c4\\u03b5 \\u03ba\\u03bb\\u03b9\\u03ba \\u03be\\u03b1\\u03bd\\u03ac \\u03b3\\u03b9\\u03b1 \\u03bd\\u03b1 \\u03b5\\u03c0\\u03b1\\u03bd\\u03ad\\u03bb\\u03b8\\u03b5\\u03c4\\u03b5 \\u03c3\\u03c4\\u03b7\\u03bd \\u03ba\\u03b1\\u03bd\\u03bf\\u03bd\\u03b9\\u03ba\\u03ae \\u03bb\\u03b5\\u03b9\\u03c4\\u03bf\\u03c5\\u03c1\\u03b3\\u03af\\u03b1 \\u03b5\\u03c0\\u03b9\\u03ba\\u03cc\\u03bb\\u03bb\\u03b7\\u03c3\\u03b7\\u03c2.\",\"plaintext_mode_sticky\":\"\\u0397 \\u0395\\u03c0\\u03b9\\u03ba\\u03cc\\u03bb\\u03bb\\u03b7\\u03c3\\u03b7 \\u03b5\\u03af\\u03bd\\u03b1\\u03b9 \\u03c4\\u03ce\\u03c1\\u03b1 \\u03c3\\u03b5 \\u03bb\\u03b5\\u03b9\\u03c4\\u03bf\\u03c5\\u03c1\\u03b3\\u03af\\u03b1 \\u03b1\\u03c0\\u03bb\\u03bf\\u03cd \\u03ba\\u03b5\\u03b9\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5. \\u039a\\u03ac\\u03bd\\u03c4\\u03b5 \\u03ba\\u03bb\\u03b9\\u03ba \\u03be\\u03b1\\u03bd\\u03ac \\u03b3\\u03b9\\u03b1 \\u03bd\\u03b1 \\u03b5\\u03c0\\u03b1\\u03bd\\u03ad\\u03bb\\u03b8\\u03b5\\u03c4\\u03b5 \\u03c3\\u03c4\\u03b7\\u03bd \\u03ba\\u03b1\\u03bd\\u03bf\\u03bd\\u03b9\\u03ba\\u03ae \\u03bb\\u03b5\\u03b9\\u03c4\\u03bf\\u03c5\\u03c1\\u03b3\\u03af\\u03b1 \\u03b5\\u03c0\\u03b9\\u03ba\\u03cc\\u03bb\\u03bb\\u03b7\\u03c3\\u03b7\\u03c2. \\u0391\\u03c6\\u03bf\\u03cd \\u03b5\\u03c0\\u03b9\\u03ba\\u03bf\\u03bb\\u03bb\\u03ae\\u03c3\\u03b5\\u03c4\\u03b5 \\u03ba\\u03ac\\u03c4\\u03b9 \\u03b8\\u03b1 \\u03b5\\u03c0\\u03b9\\u03c3\\u03c4\\u03c1\\u03ad\\u03c8\\u03b5\\u03c4\\u03b5 \\u03c3\\u03b5 \\u03ba\\u03b1\\u03bd\\u03bf\\u03bd\\u03b9\\u03ba\\u03ae \\u03bb\\u03b5\\u03b9\\u03c4\\u03bf\\u03c5\\u03c1\\u03b3\\u03af\\u03b1 \\u03b5\\u03c0\\u03b9\\u03ba\\u03cc\\u03bb\\u03b7\\u03c3\\u03b7\\u03c2.\",\"selectall_desc\":\"\\u0395\\u03c0\\u03b9\\u03bb\\u03bf\\u03b3\\u03ae \\u03cc\\u03bb\\u03c9\\u03bd\",\"paste_word_desc\":\"\\u0395\\u03c0\\u03b9\\u03ba\\u03cc\\u03bb\\u03bb\\u03b7\\u03c3\\u03b7 \\u03b1\\u03c0\\u03cc \\u03c4\\u03bf Word\",\"paste_text_desc\":\"\\u0395\\u03c0\\u03b9\\u03ba\\u03cc\\u03bb\\u03bb\\u03b7\\u03c3\\u03b7 \\u03c9\\u03c2 \\u03b1\\u03c0\\u03bb\\u03cc \\u03ba\\u03b5\\u03af\\u03bc\\u03b5\\u03bd\\u03bf\"},\"paste_dlg\":{\"word_title\":\"\\u03a7\\u03c1\\u03b7\\u03c3\\u03b9\\u03bc\\u03bf\\u03c0\\u03bf\\u03b9\\u03ae\\u03c3\\u03c4\\u03b5 CTRL+V \\u03b3\\u03b9\\u03b1 \\u03bd\\u03b1 \\u03ba\\u03ac\\u03bd\\u03b5\\u03c4\\u03b5 \\u03b5\\u03c0\\u03b9\\u03ba\\u03cc\\u03bb\\u03bb\\u03b7\\u03c3\\u03b7 \\u03ba\\u03b5\\u03b9\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5 \\u03c3\\u03c4\\u03bf \\u03c0\\u03b1\\u03c1\\u03ac\\u03b8\\u03c5\\u03c1\\u03bf.\",\"text_linebreaks\":\"\\u039d\\u03b1 \\u03ba\\u03c1\\u03b1\\u03c4\\u03b7\\u03b8\\u03bf\\u03cd\\u03bd \\u03c4\\u03b1 linebreaks\",\"text_title\":\"\\u03a7\\u03c1\\u03b7\\u03c3\\u03b9\\u03bc\\u03bf\\u03c0\\u03bf\\u03b9\\u03ae\\u03c3\\u03c4\\u03b5 CTRL+V \\u03b3\\u03b9\\u03b1 \\u03bd\\u03b1 \\u03ba\\u03ac\\u03bd\\u03b5\\u03c4\\u03b5 \\u03b5\\u03c0\\u03b9\\u03ba\\u03cc\\u03bb\\u03bb\\u03b7\\u03c3\\u03b7 \\u03ba\\u03b5\\u03b9\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5 \\u03c3\\u03c4\\u03bf \\u03c0\\u03b1\\u03c1\\u03ac\\u03b8\\u03c5\\u03c1\\u03bf.\"},table:{\"cellprops_delta_width\":\"60\",cell:\"\\u039a\\u03b5\\u03bb\\u03af\",col:\"\\u03a3\\u03c4\\u03ae\\u03bb\\u03b7\",row:\"\\u0393\\u03c1\\u03b1\\u03bc\\u03bc\\u03ae\",del:\"\\u0394\\u03b9\\u03b1\\u03b3\\u03c1\\u03b1\\u03c6\\u03ae \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1\",\"copy_row_desc\":\"\\u0391\\u03bd\\u03c4\\u03b9\\u03b3\\u03c1\\u03b1\\u03c6\\u03ae \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ae\\u03c2 \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1\",\"cut_row_desc\":\"\\u0391\\u03c0\\u03bf\\u03ba\\u03bf\\u03c0\\u03ae \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ae\\u03c2 \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1\",\"paste_row_after_desc\":\"\\u0395\\u03c0\\u03b9\\u03ba\\u03cc\\u03bb\\u03bb\\u03b7\\u03c3\\u03b7 \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ae\\u03c2 \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1 \\u03bc\\u03b5\\u03c4\\u03ac\",\"paste_row_before_desc\":\"\\u0395\\u03c0\\u03b9\\u03ba\\u03cc\\u03bb\\u03bb\\u03b7\\u03c3\\u03b7 \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ae\\u03c2 \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1 \\u03c0\\u03c1\\u03b9\\u03bd\",\"props_desc\":\"\\u0399\\u03b4\\u03b9\\u03cc\\u03c4\\u03b7\\u03c4\\u03b5\\u03c2 \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1\",\"cell_desc\":\"\\u0399\\u03b4\\u03b9\\u03cc\\u03c4\\u03b7\\u03c4\\u03b5\\u03c2 \\u03ba\\u03b5\\u03bb\\u03b9\\u03bf\\u03cd \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1\",\"row_desc\":\"\\u0399\\u03b4\\u03b9\\u03cc\\u03c4\\u03b7\\u03c4\\u03b5\\u03c2 \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ae\\u03c2 \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1\",\"merge_cells_desc\":\"\\u03a3\\u03c5\\u03b3\\u03c7\\u03ce\\u03bd\\u03b5\\u03c5\\u03c3\\u03b7 \\u03ba\\u03b5\\u03bb\\u03b9\\u03ce\\u03bd \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1\",\"split_cells_desc\":\"\\u0394\\u03b9\\u03b1\\u03c7\\u03c9\\u03c1\\u03b9\\u03c3\\u03bc\\u03cc\\u03c2 \\u03c3\\u03c5\\u03b3\\u03c7\\u03c9\\u03bd\\u03b5\\u03c5\\u03bc\\u03ad\\u03bd\\u03c9\\u03bd \\u03ba\\u03b5\\u03bb\\u03b9\\u03ce\\u03bd \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1\",\"delete_col_desc\":\"\\u0394\\u03b9\\u03b1\\u03b3\\u03c1\\u03b1\\u03c6\\u03ae \\u03c3\\u03c4\\u03ae\\u03bb\\u03b7\\u03c2\",\"col_after_desc\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae \\u03c3\\u03c4\\u03ae\\u03bb\\u03b7\\u03c2 \\u03bc\\u03b5\\u03c4\\u03ac\",\"col_before_desc\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae \\u03c3\\u03c4\\u03ae\\u03bb\\u03b7\\u03c2 \\u03c0\\u03c1\\u03b9\\u03bd\",\"delete_row_desc\":\"\\u0394\\u03b9\\u03b1\\u03b3\\u03c1\\u03b1\\u03c6\\u03ae \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ae\\u03c2\",\"row_after_desc\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ae\\u03c2 \\u03bc\\u03b5\\u03c4\\u03ac\",\"row_before_desc\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ae\\u03c2 \\u03c0\\u03c1\\u03b9\\u03bd\",desc:\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae \\u03bd\\u03ad\\u03bf\\u03c5 \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1\",\"merge_cells_delta_height\":\"\",\"merge_cells_delta_width\":\"\",\"table_delta_height\":\"\",\"table_delta_width\":\"\",\"cellprops_delta_height\":\"\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\"},autosave:{\"warning_message\":\"\\u0395\\u03ac\\u03bd \\u03b5\\u03c0\\u03b1\\u03bd\\u03b1\\u03c6\\u03ad\\u03c1\\u03b5\\u03c4\\u03b5 \\u03c4\\u03bf \\u03b1\\u03c0\\u03bf\\u03b8\\u03b7\\u03ba\\u03b5\\u03c5\\u03bc\\u03ad\\u03bd\\u03bf \\u03c0\\u03b5\\u03c1\\u03b9\\u03b5\\u03c7\\u03cc\\u03bc\\u03b5\\u03bd\\u03bf, \\u03b8\\u03b1 \\u03c7\\u03ac\\u03c3\\u03b5\\u03c4\\u03b5 \\u03c4\\u03bf \\u03c0\\u03b5\\u03c1\\u03b9\\u03b5\\u03c7\\u03cc\\u03bc\\u03b5\\u03bd\\u03bf \\u03c0\\u03bf\\u03c5 \\u03b2\\u03c1\\u03af\\u03c3\\u03ba\\u03b5\\u03c4\\u03b1\\u03b9 \\u03b1\\u03c5\\u03c4\\u03ae \\u03c4\\u03b7 \\u03c3\\u03c4\\u03b9\\u03b3\\u03bc\\u03ae \\u03c3\\u03c4\\u03bf\\u03bd editor.nn\\u03a3\\u03af\\u03b3\\u03bf\\u03c5\\u03c1\\u03b1 \\u03bd\\u03b1 \\u03b3\\u03af\\u03bd\\u03b5\\u03b9 \\u03b5\\u03c0\\u03b1\\u03bd\\u03b1\\u03c6\\u03bf\\u03c1\\u03ac \\u03c4\\u03bf\\u03c5 \\u03b1\\u03c0\\u03bf\\u03b8\\u03b7\\u03ba\\u03b5\\u03c5\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5 \\u03c0\\u03b5\\u03c1\\u03b9\\u03b5\\u03c7\\u03bf\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5;.\",\"restore_content\":\"\\u0395\\u03c0\\u03b1\\u03bd\\u03b1\\u03c6\\u03bf\\u03c1\\u03ac \\u03c0\\u03b5\\u03c1\\u03b9\\u03b5\\u03c7\\u03bf\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5 \\u03c0\\u03bf\\u03c5 \\u03b1\\u03c0\\u03bf\\u03b8\\u03b7\\u03ba\\u03b5\\u03cd\\u03b8\\u03b7\\u03ba\\u03b5 \\u03b1\\u03c5\\u03c4\\u03cc\\u03bc\\u03b1\\u03c4\\u03b1.\",\"unload_msg\":\"\\u039f\\u03b9 \\u03b1\\u03bb\\u03bb\\u03b1\\u03b3\\u03ad\\u03c2 \\u03c0\\u03bf\\u03c5 \\u03ba\\u03ac\\u03bd\\u03b1\\u03c4\\u03b5 \\u03b8\\u03b1 \\u03c7\\u03b1\\u03b8\\u03bf\\u03cd\\u03bd \\u03b1\\u03bd \\u03c6\\u03cd\\u03b3\\u03b5\\u03c4\\u03b5 \\u03c3\\u03b5 \\u03ac\\u03bb\\u03bb\\u03b7 \\u03c3\\u03b5\\u03bb\\u03af\\u03b4\\u03b1.\"},fullscreen:{desc:\"\\u0395\\u03bd\\u03b1\\u03bb\\u03bb\\u03b1\\u03b3\\u03ae \\u03c0\\u03bb\\u03ae\\u03c1\\u03bf\\u03c5\\u03c2 \\u03bf\\u03b8\\u03cc\\u03bd\\u03b7\\u03c2\"},media:{\"delta_width\":\"50\",edit:\"\\u0395\\u03c0\\u03b5\\u03be\\u03b5\\u03c1\\u03b3\\u03b1\\u03c3\\u03af\\u03b1 \\u03b5\\u03bd\\u03c3\\u03c9\\u03bc\\u03b1\\u03c4\\u03c9\\u03bc\\u03ad\\u03bd\\u03c9\\u03bd media\",desc:\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae/\\u03b5\\u03c0\\u03b5\\u03be\\u03b5\\u03c1\\u03b3\\u03b1\\u03c3\\u03af\\u03b1 \\u03b5\\u03bd\\u03c3\\u03c9\\u03bc\\u03b1\\u03c4\\u03c9\\u03bc\\u03ad\\u03bd\\u03c9\\u03bd media\",\"delta_height\":\"\"},fullpage:{desc:\"\\u0399\\u03b4\\u03b9\\u03cc\\u03c4\\u03b7\\u03c4\\u03b5\\u03c2 \\u03b5\\u03b3\\u03b3\\u03c1\\u03ac\\u03c6\\u03bf\\u03c5\",\"delta_width\":\"140\",\"delta_height\":\"\"},template:{desc:\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae \\u03c0\\u03b5\\u03c1\\u03b9\\u03b5\\u03c7\\u03bf\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5 \\u03b3\\u03b9\\u03b1 \\u03c0\\u03c1\\u03bf\\u03ba\\u03b1\\u03b8\\u03bf\\u03c1\\u03b9\\u03c3\\u03bc\\u03ad\\u03bd\\u03bf \\u03c0\\u03c1\\u03cc\\u03c4\\u03c5\\u03c0\\u03bf\"},visualchars:{desc:\"\\u039f\\u03c0\\u03c4\\u03b9\\u03ba\\u03bf\\u03af \\u03c7\\u03b1\\u03c1\\u03b1\\u03ba\\u03c4\\u03ae\\u03c1\\u03b5\\u03c2 \\u03b5\\u03bb\\u03ad\\u03b3\\u03c7\\u03bf\\u03c5 \\u03bd\\u03b1\\u03b9/\\u03cc\\u03c7\\u03b9.\"},spellchecker:{desc:\"\\u0395\\u03bd\\u03b1\\u03bb\\u03bb\\u03b1\\u03b3\\u03ae \\u03bf\\u03c1\\u03b8\\u03bf\\u03b3\\u03c1\\u03b1\\u03c6\\u03b9\\u03ba\\u03bf\\u03cd \\u03b5\\u03bb\\u03ad\\u03b3\\u03c7\\u03bf\\u03c5\",menu:\"\\u03a1\\u03c5\\u03b8\\u03bc\\u03af\\u03c3\\u03b5\\u03b9\\u03c2 \\u03bf\\u03c1\\u03b8\\u03bf\\u03b3\\u03c1\\u03b1\\u03c6\\u03b9\\u03ba\\u03bf\\u03cd \\u03b5\\u03bb\\u03ad\\u03b3\\u03c7\\u03bf\\u03c5\",\"ignore_word\":\"\\u03a0\\u03b1\\u03c1\\u03ac\\u03b2\\u03bb\\u03b5\\u03c8\\u03b7 \\u03bb\\u03ad\\u03be\\u03b7\\u03c2\",\"ignore_words\":\"\\u03a0\\u03b1\\u03c1\\u03ac\\u03b2\\u03bb\\u03b5\\u03c8\\u03b7 \\u03cc\\u03bb\\u03c9\\u03bd\",langs:\"\\u0393\\u03bb\\u03ce\\u03c3\\u03c3\\u03b5\\u03c2\",wait:\"\\u03a0\\u03b1\\u03c1\\u03b1\\u03ba\\u03b1\\u03bb\\u03ce \\u03c0\\u03b5\\u03c1\\u03b9\\u03bc\\u03ad\\u03bd\\u03b5\\u03c4\\u03b5...\",sug:\"\\u03a0\\u03c1\\u03bf\\u03c4\\u03ac\\u03c3\\u03b5\\u03b9\\u03c2\",\"no_sug\":\"\\u03a7\\u03c9\\u03c1\\u03af\\u03c2 \\u03c0\\u03c1\\u03bf\\u03c4\\u03ac\\u03c3\\u03b5\\u03b9\\u03c2\",\"no_mpell\":\"\\u0394\\u03b5 \\u03b2\\u03c1\\u03ad\\u03b8\\u03b7\\u03ba\\u03b1\\u03bd \\u03bf\\u03c1\\u03b8\\u03bf\\u03b3\\u03c1\\u03b1\\u03c6\\u03b9\\u03ba\\u03ac \\u03bb\\u03ac\\u03b8\\u03b7.\",\"learn_word\":\"\\u0395\\u03ba\\u03bc\\u03ac\\u03b8\\u03b7\\u03c3\\u03b7 \\u03bb\\u03ad\\u03be\\u03b7\\u03c2\"},pagebreak:{desc:\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae \\u03b1\\u03bb\\u03bb\\u03b1\\u03b3\\u03ae\\u03c2 \\u03c3\\u03b5\\u03bb\\u03af\\u03b4\\u03b1\\u03c2.\"},advlist:{def:\"\\u03a0\\u03c1\\u03bf\\u03ba\\u03b1\\u03b8\\u03bf\\u03c1\\u03b9\\u03c3\\u03bc\\u03ad\\u03bd\\u03bf\",circle:\"\\u039a\\u03cd\\u03ba\\u03bb\\u03bf\\u03c2\",disc:\"\\u0394\\u03af\\u03c3\\u03ba\\u03bf\\u03c2\",square:\"\\u03a4\\u03b5\\u03c4\\u03c1\\u03ac\\u03b3\\u03c9\\u03bd\\u03bf\",types:\"Types\",\"lower_alpha\":\"Lower Alpha\",\"lower_greek\":\"Lower Greek\",\"lower_roman\":\"Lower Roman\",\"upper_alpha\":\"Upper Alpha\",\"upper_roman\":\"Upper Roman\"},colors:{\"333300\":\"\\u03a3\\u03ba\\u03bf\\u03cd\\u03c1\\u03bf \\u039b\\u03b1\\u03b4\\u03af\",\"993300\":\"\\u03a0\\u03bf\\u03c1\\u03c4\\u03bf\\u03ba\\u03b1\\u03bb\\u03af \\u03c4\\u03b7\\u03c2 \\u03a6\\u03c9\\u03c4\\u03b9\\u03ac\\u03c2\",\"000000\":\"\\u039c\\u03b1\\u03cd\\u03c1\\u03bf\",\"003300\":\"\\u03a3\\u03ba\\u03bf\\u03cd\\u03c1\\u03bf \\u03a0\\u03c1\\u03ac\\u03c3\\u03b9\\u03bd\\u03bf\",\"003366\":\"\\u03a3\\u03ba\\u03bf\\u03cd\\u03c1\\u03bf \\u0393\\u03b1\\u03bb\\u03ac\\u03b6\\u03b9\\u03bf\",\"000080\":\"\\u0392\\u03b1\\u03b8\\u03cd \\u0393\\u03b1\\u03bb\\u03ac\\u03b6\\u03b9\\u03bf\",\"333399\":\"\\u039b\\u03bf\\u03c5\\u03bb\\u03b1\\u03ba\\u03af\",\"333333\":\"\\u03a0\\u03bf\\u03bb\\u03cd \\u03a3\\u03ba\\u03bf\\u03cd\\u03c1\\u03bf \\u0393\\u03ba\\u03c1\\u03af\",\"800000\":\"\\u039a\\u03b1\\u03c3\\u03c4\\u03b1\\u03bd\\u03cc\",FF6600:\"\\u03a0\\u03bf\\u03c1\\u03c4\\u03bf\\u03ba\\u03b1\\u03bb\\u03af\",\"808000\":\"\\u039b\\u03b1\\u03b4\\u03af\",\"008000\":\"\\u03a0\\u03c1\\u03ac\\u03c3\\u03b9\\u03bd\\u03bf\",\"008080\":\"\\u039a\\u03c5\\u03c0\\u03b1\\u03c1\\u03b9\\u03c3\\u03c3\\u03af\",\"0000FF\":\"\\u039c\\u03c0\\u03bb\\u03ad\",\"666699\":\"\\u0393\\u03ba\\u03c1\\u03af \\u039c\\u03c0\\u03bb\\u03ad\",\"808080\":\"\\u0393\\u03ba\\u03c1\\u03af\",FF0000:\"\\u039a\\u03cc\\u03ba\\u03ba\\u03b9\\u03bd\\u03bf\",FF9900:\"\\u039a\\u03b5\\u03c7\\u03c1\\u03b9\\u03bc\\u03c0\\u03b1\\u03c1\\u03af\",\"99CC00\":\"\\u039a\\u03af\\u03c4\\u03c1\\u03b9\\u03bd\\u03bf \\u0393\\u03ba\\u03c1\\u03af\",\"339966\":\"\\u0398\\u03b1\\u03bb\\u03b1\\u03c3\\u03c3\\u03cc\\u03c1\\u03c7\\u03bf\\u03c5\\u03c2 (\\u03a0\\u03c1\\u03ac\\u03c3\\u03c3\\u03b9\\u03bd\\u03bf \\u03c4\\u03b7\\u03c2 \\u0398\\u03ac\\u03bb\\u03bb\\u03b1\\u03c3\\u03b1\\u03c2)\",\"33CCCC\":\"\\u03a4\\u03c5\\u03c1\\u03ba\\u03bf\\u03c5\\u03ac\\u03b6\",\"3366FF\":\"\\u0392\\u03b1\\u03c3\\u03b9\\u03bb\\u03b9\\u03ba\\u03cc \\u039c\\u03c0\\u03bb\\u03ad\",\"800080\":\"\\u039c\\u03ce\\u03b2\",\"999999\":\"\\u039c\\u03ad\\u03c4\\u03c1\\u03b9\\u03bf \\u0393\\u03ba\\u03c1\\u03af\",FF00FF:\"\\u03a0\\u03bf\\u03c1\\u03c6\\u03c5\\u03c1\\u03cc\",FFCC00:\"\\u03a7\\u03c1\\u03c5\\u03c3\\u03cc\",FFFF00:\"\\u039a\\u03af\\u03c4\\u03c1\\u03b9\\u03bd\\u03bf\",\"00FF00\":\"\\u0391\\u03c3\\u03b2\\u03b5\\u03c3\\u03c4\\u03ae\",\"00CCFF\":\"\\u039c\\u03c0\\u03bb\\u03ad \\u039f\\u03c5\\u03c1\\u03b1\\u03bd\\u03bf\\u03cd\",\"993366\":\"\\u039a\\u03b1\\u03c6\\u03ad\",C0C0C0:\"\\u0391\\u03c3\\u03b9\\u03bc\\u03ad\\u03bd\\u03b9\\u03bf\",FF99CC:\"\\u03a1\\u03cc\\u03b6\",FFCC99:\"\\u03a1\\u03bf\\u03b4\\u03b1\\u03ba\\u03b9\\u03bd\\u03af\",FFFF99:\"\\u0391\\u03bd\\u03bf\\u03b9\\u03c7\\u03c4\\u03cc \\u039a\\u03af\\u03c4\\u03c1\\u03b9\\u03bd\\u03bf\",CCFFCC:\"\\u0391\\u03bd\\u03bf\\u03b9\\u03c7\\u03c4\\u03cc \\u03a0\\u03c1\\u03ac\\u03c3\\u03b9\\u03bd\\u03bf\",CCFFFF:\"\\u0391\\u03bd\\u03bf\\u03b9\\u03c7\\u03c4\\u03cc \\u039a\\u03c5\\u03b1\\u03bd\\u03cc\",\"99CCFF\":\"\\u0393\\u03b1\\u03bb\\u03ac\\u03b6\\u03b9\\u03bf \\u039f\\u03c5\\u03c1\\u03b1\\u03bd\\u03bf\\u03cd\",CC99FF:\"\\u0394\\u03b1\\u03bc\\u03b1\\u03c3\\u03ba\\u03b9\\u03bd\\u03af\",FFFFFF:\"\\u0386\\u03c3\\u03c0\\u03c1\\u03bf\",\"00FFFF\":\"Aqua\"},aria:{\"rich_text_area\":\"\\u03a0\\u03b5\\u03c1\\u03b9\\u03bf\\u03c7\\u03ae \\u03b5\\u03bc\\u03c0\\u03bb\\u03bf\\u03c5\\u03c4\\u03b9\\u03c3\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5 \\u03ba\\u03b5\\u03b9\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5 \"},wordcount:{words:\"\\u039b\\u03ad\\u03be\\u03b5\\u03b9\\u03c2:\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/en.js",
    "content": "tinyMCE.addI18n({en:{common:{\"more_colors\":\"More Colors...\",\"invalid_data\":\"Error: Invalid values entered, these are marked in red.\",\"popup_blocked\":\"Sorry, but we have noticed that your popup-blocker has disabled a window that provides application functionality. You will need to disable popup blocking on this site in order to fully utilize this tool.\",\"clipboard_no_support\":\"Currently not supported by your browser, use keyboard shortcuts instead.\",\"clipboard_msg\":\"Copy/Cut/Paste is not available in Mozilla and Firefox.\\nDo you want more information about this issue?\",\"not_set\":\"-- Not Set --\",\"class_name\":\"Class\",browse:\"Browse\",close:\"Close\",cancel:\"Cancel\",update:\"Update\",insert:\"Insert\",apply:\"Apply\",\"edit_confirm\":\"Do you want to use the WYSIWYG mode for this textarea?\",\"invalid_data_number\":\"{#field} must be a number\",\"invalid_data_min\":\"{#field} must be a number greater than {#min}\",\"invalid_data_size\":\"{#field} must be a number or percentage\",value:\"(value)\"},contextmenu:{full:\"Full\",right:\"Right\",center:\"Center\",left:\"Left\",align:\"Alignment\"},insertdatetime:{\"day_short\":\"Sun,Mon,Tue,Wed,Thu,Fri,Sat,Sun\",\"day_long\":\"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday\",\"months_short\":\"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec\",\"months_long\":\"January,February,March,April,May,June,July,August,September,October,November,December\",\"inserttime_desc\":\"Insert Time\",\"insertdate_desc\":\"Insert Date\",\"time_fmt\":\"%H:%M:%S\",\"date_fmt\":\"%Y-%m-%d\"},print:{\"print_desc\":\"Print\"},preview:{\"preview_desc\":\"Preview\"},directionality:{\"rtl_desc\":\"Direction Right to Left\",\"ltr_desc\":\"Direction Left to Right\"},layer:{content:\"New layer...\",\"absolute_desc\":\"Toggle Absolute Positioning\",\"backward_desc\":\"Move Backward\",\"forward_desc\":\"Move Forward\",\"insertlayer_desc\":\"Insert New Layer\"},save:{\"save_desc\":\"Save\",\"cancel_desc\":\"Cancel All Changes\"},nonbreaking:{\"nonbreaking_desc\":\"Insert Non-Breaking Space Character\"},iespell:{download:\"ieSpell not detected. Do you want to install it now?\",\"iespell_desc\":\"Check Spelling\"},advhr:{\"delta_height\":\"\",\"delta_width\":\"\",\"advhr_desc\":\"Insert Horizontal Line\"},emotions:{\"delta_height\":\"\",\"delta_width\":\"\",\"emotions_desc\":\"Emotions\"},searchreplace:{\"replace_desc\":\"Find/Replace\",\"delta_width\":\"\",\"delta_height\":\"\",\"search_desc\":\"Find\"},advimage:{\"delta_width\":\"\",\"image_desc\":\"Insert/Edit Image\",\"delta_height\":\"\"},advlink:{\"delta_height\":\"\",\"delta_width\":\"\",\"link_desc\":\"Insert/Edit Link\"},xhtmlxtras:{\"attribs_delta_height\":\"\",\"attribs_delta_width\":\"\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\",\"attribs_desc\":\"Insert/Edit Attributes\",\"ins_desc\":\"Insertion\",\"del_desc\":\"Deletion\",\"acronym_desc\":\"Acronym\",\"abbr_desc\":\"Abbreviation\",\"cite_desc\":\"Citation\"},style:{\"delta_height\":\"\",\"delta_width\":\"\",desc:\"Edit CSS Style\"},paste:{\"plaintext_mode_stick\":\"Paste is now in plain text mode. Click again to toggle back to regular paste mode.\",\"plaintext_mode\":\"Paste is now in plain text mode. Click again to toggle back to regular paste mode. After you paste something you will be returned to regular paste mode.\",\"selectall_desc\":\"Select All\",\"paste_word_desc\":\"Paste from Word\",\"paste_text_desc\":\"Paste as Plain Text\"},\"paste_dlg\":{\"word_title\":\"Use Ctrl+V on your keyboard to paste the text into the window.\",\"text_linebreaks\":\"Keep Linebreaks\",\"text_title\":\"Use Ctrl+V on your keyboard to paste the text into the window.\"},table:{\"merge_cells_delta_height\":\"\",\"merge_cells_delta_width\":\"\",\"table_delta_height\":\"\",\"table_delta_width\":\"\",\"cellprops_delta_height\":\"\",\"cellprops_delta_width\":\"\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\",cell:\"Cell\",col:\"Column\",row:\"Row\",del:\"Delete Table\",\"copy_row_desc\":\"Copy Table Row\",\"cut_row_desc\":\"Cut Table Row\",\"paste_row_after_desc\":\"Paste Table Row After\",\"paste_row_before_desc\":\"Paste Table Row Before\",\"props_desc\":\"Table Properties\",\"cell_desc\":\"Table Cell Properties\",\"row_desc\":\"Table Row Properties\",\"merge_cells_desc\":\"Merge Table Cells\",\"split_cells_desc\":\"Split Merged Table Cells\",\"delete_col_desc\":\"Delete Column\",\"col_after_desc\":\"Insert Column After\",\"col_before_desc\":\"Insert Column Before\",\"delete_row_desc\":\"Delete Row\",\"row_after_desc\":\"Insert Row After\",\"row_before_desc\":\"Insert Row Before\",desc:\"Insert/Edit Table\"},autosave:{\"warning_message\":\"If you restore the saved content, you will lose all the content that is currently in the editor.\\n\\nAre you sure you want to restore the saved content?\",\"restore_content\":\"Restore auto-saved content.\",\"unload_msg\":\"The changes you made will be lost if you navigate away from this page.\"},fullscreen:{desc:\"Toggle Full Screen Mode\"},media:{\"delta_height\":\"\",\"delta_width\":\"\",edit:\"Edit Embedded Media\",desc:\"Insert/Edit Embedded Media\"},fullpage:{desc:\"Document Properties\",\"delta_width\":\"\",\"delta_height\":\"\"},template:{desc:\"Insert Predefined Template Content\"},visualchars:{desc:\"Show/Hide Visual Control Characters\"},spellchecker:{desc:\"Toggle Spell Checker\",menu:\"Spell Checker Settings\",\"ignore_word\":\"Ignore Word\",\"ignore_words\":\"Ignore All\",langs:\"Languages\",wait:\"Please wait...\",sug:\"Suggestions\",\"no_sug\":\"No Suggestions\",\"no_mpell\":\"No misspellings found.\",\"learn_word\":\"Learn word\"},pagebreak:{desc:\"Insert Page Break for Printing\"},advlist:{types:\"Types\",def:\"Default\",\"lower_alpha\":\"Lower Alpha\",\"lower_greek\":\"Lower Greek\",\"lower_roman\":\"Lower Roman\",\"upper_alpha\":\"Upper Alpha\",\"upper_roman\":\"Upper Roman\",circle:\"Circle\",disc:\"Disc\",square:\"Square\"},colors:{\"333300\":\"Dark olive\",\"993300\":\"Burnt orange\",\"000000\":\"Black\",\"003300\":\"Dark green\",\"003366\":\"Dark azure\",\"000080\":\"Navy Blue\",\"333399\":\"Indigo\",\"333333\":\"Very dark gray\",\"800000\":\"Maroon\",FF6600:\"Orange\",\"808000\":\"Olive\",\"008000\":\"Green\",\"008080\":\"Teal\",\"0000FF\":\"Blue\",\"666699\":\"Grayish blue\",\"808080\":\"Gray\",FF0000:\"Red\",FF9900:\"Amber\",\"99CC00\":\"Yellow green\",\"339966\":\"Sea green\",\"33CCCC\":\"Turquoise\",\"3366FF\":\"Royal blue\",\"800080\":\"Purple\",\"999999\":\"Medium gray\",FF00FF:\"Magenta\",FFCC00:\"Gold\",FFFF00:\"Yellow\",\"00FF00\":\"Lime\",\"00FFFF\":\"Aqua\",\"00CCFF\":\"Sky blue\",\"993366\":\"Brown\",C0C0C0:\"Silver\",FF99CC:\"Pink\",FFCC99:\"Peach\",FFFF99:\"Light yellow\",CCFFCC:\"Pale green\",CCFFFF:\"Pale cyan\",\"99CCFF\":\"Light sky blue\",CC99FF:\"Plum\",FFFFFF:\"White\"},aria:{\"rich_text_area\":\"Rich Text Area\"},wordcount:{words:\"Words:\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/es.js",
    "content": "tinyMCE.addI18n({es:{common:{\"more_colors\":\"M\\u00e1s colores\",\"invalid_data\":\"Error: Introdujo un valor no v\\u00e1lido, est\\u00e1n marcados en rojo.\",\"popup_blocked\":\"Lo sentimos, su bloqueo de ventanas emergentes ha deshabilitado una ventana que provee funcionalidades a la aplicaci\\u00f3n. Necesita deshabilitar este bloqueo en este sitio para poder utilizar todas las funciones.\",\"clipboard_no_support\":\"Su navegador no soporta las funciones de cortapapeles, use los accesos por teclado.\",\"clipboard_msg\":\"Copiar/Cortar/Pegar no se encuentra disponible en Mozilla y Firefox.\\\\n \\u00bfDesea obtener m\\u00e1s informaci\\u00f3n acerca de este tema?\",\"not_set\":\"-- Ninguno --\",\"class_name\":\"Clase\",browse:\"Examinar\",close:\"Cerrar\",cancel:\"Cancelar\",update:\"Actualizar\",insert:\"Insertar\",apply:\"Aplicar\",\"edit_confirm\":\" \\u00bfDesea utilizar el modo WYSIWYG para esta caja de texto?\"},contextmenu:{full:\"Justificado\",right:\"Derecha\",center:\"Centrado\",left:\"Izquierda\",align:\"Alineaci\\u00f3n\"},insertdatetime:{\"day_short\":\"Dom,Lun,Mar,Mie,Jue,Vie,Sab,Dom\",\"day_long\":\"Domingo,Lunes,Martes,Mi\\u00e9rcoles,Jueves,Viernes,S\\u00e1bado,Domingo\",\"months_short\":\"Ene,Feb,Mar,Abr,May,Jun,Jul,Ago,Sep,Oct,Nov,Dic\",\"months_long\":\"Enero,Febrero,Marzo,Abril,Mayo,Junio,Julio,Agosto,Septiembre,Octubre,Noviembre,Diciembre\",\"inserttime_desc\":\"Insertar hora\",\"insertdate_desc\":\"Insertar fecha\",\"time_fmt\":\"%H:%M:%S\",\"date_fmt\":\"%d-%m-%Y\"},print:{\"print_desc\":\"Imprimir\"},preview:{\"preview_desc\":\"Vista previa\"},directionality:{\"rtl_desc\":\"Direcci\\u00f3n derecha a izquierda\",\"ltr_desc\":\"Direcci\\u00f3n izquierda a derecha\"},layer:{content:\"Nueva capa...\",\"absolute_desc\":\"Cambiar a posici\\u00f3n absoluta\",\"backward_desc\":\"Retroceder\",\"forward_desc\":\"Avanzar\",\"insertlayer_desc\":\"Insertar nueva capa\"},save:{\"save_desc\":\"Guardar\",\"cancel_desc\":\"Cancelar todos los cambios\"},nonbreaking:{\"nonbreaking_desc\":\"Insertar caracter de espacio \\'non-breaking\\'\"},iespell:{download:\"No se detect\\u00f3 \\'ieSpell\\'.  \\u00bfDesea instalarlo ahora?\",\"iespell_desc\":\"Corrector ortogr\\u00e1fico\"},advhr:{\"advhr_desc\":\"Regla horizontal\",\"delta_height\":\"\",\"delta_width\":\"\"},emotions:{\"emotions_desc\":\"Emoticones\",\"delta_height\":\"\",\"delta_width\":\"\"},searchreplace:{\"replace_desc\":\"Buscar/Reemplazar\",\"search_desc\":\"Buscar\",\"delta_width\":\"\",\"delta_height\":\"\"},advimage:{\"image_desc\":\"Insertar/editar imagen\",\"delta_width\":\"\",\"delta_height\":\"\"},advlink:{\"link_desc\":\"Insertar/editar hiperv\\u00ednculo\",\"delta_height\":\"\",\"delta_width\":\"\"},xhtmlxtras:{\"attribs_desc\":\"Insertar/Editar atributos\",\"ins_desc\":\"Inserci\\u00f3n\",\"del_desc\":\"Borrado\",\"acronym_desc\":\"Acr\\u00f3nimo\",\"abbr_desc\":\"Abreviatura\",\"cite_desc\":\"Cita\",\"attribs_delta_height\":\"\",\"attribs_delta_width\":\"\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\"},style:{desc:\"Editar Estilo CSS\",\"delta_height\":\"\",\"delta_width\":\"\"},paste:{\"plaintext_mode\":\"Paste is now in plain text mode. Click again to toggle back to regular paste mode.\",\"plaintext_mode_sticky\":\"Paste is now in plain text mode. Click again to toggle back to regular paste mode. After you paste something you will be returned to regular paste mode.\",\"selectall_desc\":\"Elegir todo\",\"paste_word_desc\":\"Pegar desde Word\",\"paste_text_desc\":\"Pegar como texto plano\"},\"paste_dlg\":{\"word_title\":\"Use CTRL+V en su teclado para pegar el texto en la ventana.\",\"text_linebreaks\":\"Keep linebreaks\",\"text_title\":\"Use CTRL+V en su teclado para pegar el texto en la ventana.\"},table:{cell:\"Celda\",col:\"Columna\",row:\"Fila\",del:\"Eliminar tabla\",\"copy_row_desc\":\"Copiar fila\",\"cut_row_desc\":\"Cortar fila\",\"paste_row_after_desc\":\"Pegar filas (despu\\u00e9s)\",\"paste_row_before_desc\":\"Pegar filas (antes)\",\"props_desc\":\"Propiedades de la tabla\",\"cell_desc\":\"Propiedades de la celda\",\"row_desc\":\"Propiedades de la fila\",\"merge_cells_desc\":\"Vincular celdas\",\"split_cells_desc\":\"Dividir celdas\",\"delete_col_desc\":\"Suprimir columna\",\"col_after_desc\":\"Insertar columna (despu\\u00e9s)\",\"col_before_desc\":\"Insertar columna (antes)\",\"delete_row_desc\":\"Suprimir fila\",\"row_after_desc\":\"Insertar fila (despu\\u00e9s)\",\"row_before_desc\":\"Insertar fila (antes)\",desc:\"Inserta una nueva tabla\",\"merge_cells_delta_height\":\"\",\"merge_cells_delta_width\":\"\",\"table_delta_height\":\"\",\"table_delta_width\":\"\",\"cellprops_delta_height\":\"\",\"cellprops_delta_width\":\"\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\"},autosave:{\"warning_message\":\"Se reestablece en contenido guardado, perder\\u00e1 todo el contenido que est\\u00e1 actualmente en el editor.\\\\n\\\\nEst\\u00e1 seguro de que quiere reestablecer el contenido guardado.\",\"restore_content\":\"Reestablecer contenido guardado autom\\u00e1ticamente\",\"unload_msg\":\"Los cambios realizados se perder\\u00e1n si sale de esta p\\u00e1gina.\"},fullscreen:{desc:\"Cambiar a modo Pantalla Completa\"},media:{edit:\"Editar medio embebido\",desc:\"Insertar/editar medio embebido\",\"delta_height\":\"\",\"delta_width\":\"\"},fullpage:{desc:\"Propiedades del documento\",\"delta_width\":\"Ancho\",\"delta_height\":\"Alto\"},template:{desc:\"Insertar contenido de plantilla predefinida\"},visualchars:{desc:\"Caracteres de control ON/OFF.\"},spellchecker:{desc:\"Cambiar a corrector ortogr\\u00e1fico\",menu:\"Configuraci\\u00f3n de corrector ortogr\\u00e1fico\",\"ignore_word\":\"Ignorar\",\"ignore_words\":\"Ignorar todo\",langs:\"Idiomas\",wait:\"Espere...\",sug:\"Sugerencias\",\"no_sug\":\"Sin sugerencias\",\"no_mpell\":\"No se encontraron errores.\"},pagebreak:{desc:\"Insertar fin de p\\u00e1gina\"},advlist:{types:\"Tipo\",def:\"Preestablecido\",\"lower_alpha\":\"Menos opaco\",\"lower_greek\":\"Menos greek\",\"lower_roman\":\"Menos roman\",\"upper_alpha\":\"M\\u00e1s opaco\",\"upper_roman\":\"M\\u00e1s roman\",circle:\"Circulo\",disc:\"Disc\",square:\"Cuadro\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/fr.js",
    "content": "tinyMCE.addI18n({fr:{common:{\"more_colors\":\"Plus de couleurs\",\"invalid_data\":\"Erreur : saisie de valeurs incorrectes. Elles sont mises en \\u00e9vidence en rouge.\",\"popup_blocked\":\"D\\u00e9sol\\u00e9, nous avons d\\u00e9tect\\u00e9 que votre bloqueur de popup a bloqu\\u00e9 une fen\\u00eatre dont l\\'application a besoin. Vous devez d\\u00e9sactiver votre bloqueur de popup pour pouvoir utiliser cet outil.\",\"clipboard_no_support\":\"Actuellement non support\\u00e9 par votre navigateur.\\\\n Veuillez utiliser les raccourcis clavier \\u00e0 la place.\",\"clipboard_msg\":\"Les fonctions Copier/Couper/Coller ne sont pas valables sur Mozilla et Firefox.\\\\nSouhaitez-vous avoir plus d\\'informations sur ce sujet ?\",\"not_set\":\"-- non d\\u00e9fini --\",\"class_name\":\"Classe\",browse:\"parcourir\",close:\"Fermer\",cancel:\"Annuler\",update:\"Mettre \\u00e0 jour\",insert:\"Ins\\u00e9rer\",apply:\"Appliquer\",\"edit_confirm\":\"Souhaitez-vous utiliser le mode WYSIWYG pour cette zone de texte ?\"},contextmenu:{full:\"Justifi\\u00e9\",right:\"Droite\",center:\"Centr\\u00e9\",left:\"Gauche\",align:\"Alignement\"},insertdatetime:{\"day_short\":\"Dim,Lun,Mar,Mer,Jeu,Ven,Sam,Dim\",\"day_long\":\"Dimanche,Lundi,Mardi,Mercredi,Jeudi,Vendredi,Samedi,Dimanche\",\"months_short\":\"Jan,F\\u00e9v,Mar,Avr,Mai,Juin,Juil,Ao\\u00fbt,Sep,Oct,Nov,D\\u00e9c\",\"months_long\":\"Janvier,F\\u00e9vrier,Mars,Avril,Mai,Juin,Juillet,Ao\\u00fbt,Septembre,Octobre,Novembre,D\\u00e9cembre\",\"inserttime_desc\":\"Ins\\u00e9rer l\\'heure\",\"insertdate_desc\":\"Ins\\u00e9rer la date\",\"time_fmt\":\"%H:%M:%S\",\"date_fmt\":\"%d-%m-%Y\"},print:{\"print_desc\":\"Imprimer\"},preview:{\"preview_desc\":\"Pr\\u00e9visualiser\"},directionality:{\"rtl_desc\":\"\\u00c9criture de droite \\u00e0 gauche\",\"ltr_desc\":\"\\u00c9criture de gauche \\u00e0 droite\"},layer:{content:\"Nouvelle couche\\u2026\",\"absolute_desc\":\"Activer le positionnement absolu\",\"backward_desc\":\"D\\u00e9placer vers l\\'arri\\u00e8re\",\"forward_desc\":\"D\\u00e9placer vers l\\'avant\",\"insertlayer_desc\":\"Ins\\u00e9rer une nouvelle couche\"},save:{\"save_desc\":\"Enregistrer\",\"cancel_desc\":\"Annuler toutes les modifications\"},nonbreaking:{\"nonbreaking_desc\":\"Ins\\u00e9rer une espace ins\\u00e9cable\"},iespell:{download:\"ieSpell n\\'est pas install\\u00e9. Souhaitez-vous l\\'installer maintenant ?\",\"iespell_desc\":\"Lancer le v\\u00e9rificateur d\\'orthographe\"},advhr:{\"delta_height\":\"Ecart de hauteur\",\"delta_width\":\"Ecart de largeur\",\"advhr_desc\":\"Ins\\u00e9rer un trait horizontal\"},emotions:{\"emotions_desc\":\"\\u00c9motic\\u00f4nes\",\"delta_height\":\"\",\"delta_width\":\"\"},searchreplace:{\"replace_desc\":\"Rechercher / remplacer\",\"search_desc\":\"Rechercher\",\"delta_width\":\"\",\"delta_height\":\"\"},advimage:{\"image_desc\":\"Ins\\u00e9rer / \\u00e9diter une image\",\"delta_width\":\"\",\"delta_height\":\"\"},advlink:{\"link_desc\":\"Ins\\u00e9rer / \\u00e9diter un lien\",\"delta_height\":\"\",\"delta_width\":\"\"},xhtmlxtras:{\"attribs_desc\":\"Ins\\u00e9rer / \\u00e9diter les attributs\",\"ins_desc\":\"Ins\\u00e9r\\u00e9\",\"del_desc\":\"Barr\\u00e9\",\"acronym_desc\":\"Acronyme\",\"abbr_desc\":\"Abr\\u00e9viation\",\"cite_desc\":\"Citation\",\"attribs_delta_height\":\"\",\"attribs_delta_width\":\"\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\"},style:{desc:\"\\u00c9diter la feuille de style (CSS)\",\"delta_height\":\"\",\"delta_width\":\"\"},paste:{\"plaintext_mode\":\"Le collage est actuellement en mode texte non format\\u00e9. Cliquez \\u00e0 nouveau pour revenir en mode de collage ordinaire.\",\"plaintext_mode_sticky\":\"Le collage est actuellement en mode texte non format\\u00e9. Cliquez \\u00e0 nouveau pour revenir en mode de collage ordinaire. Apr\\u00e8s avoir coll\\u00e9 quelque chose, vous retournerez en mode de collage ordinaire.\",\"selectall_desc\":\"Tout s\\u00e9lectionner\",\"paste_word_desc\":\"Coller un texte cr\\u00e9\\u00e9 sous Word\",\"paste_text_desc\":\"Coller comme texte brut\"},\"paste_dlg\":{\"word_title\":\"Utilisez CTRL+V sur votre clavier pour coller le texte dans la fen\\u00eatre.\",\"text_linebreaks\":\"Conserver les retours \\u00e0 la ligne\",\"text_title\":\"Utilisez CTRL+V sur votre clavier pour coller le texte dans la fen\\u00eatre.\"},table:{cell:\"Cellule\",col:\"Colonne\",row:\"Ligne\",del:\"Effacer le tableau\",\"copy_row_desc\":\"Copier la ligne\",\"cut_row_desc\":\"Couper la ligne\",\"paste_row_after_desc\":\"Coller la ligne apr\\u00e8s\",\"paste_row_before_desc\":\"Coller la ligne avant\",\"props_desc\":\"Propri\\u00e9t\\u00e9s du tableau\",\"cell_desc\":\"Propri\\u00e9t\\u00e9s de la cellule\",\"row_desc\":\"Propri\\u00e9t\\u00e9s de la ligne\",\"merge_cells_desc\":\"Fusionner les cellules\",\"split_cells_desc\":\"Scinder les cellules fusionn\\u00e9es\",\"delete_col_desc\":\"Effacer la colonne\",\"col_after_desc\":\"Ins\\u00e9rer une colonne apr\\u00e8s\",\"col_before_desc\":\"Ins\\u00e9rer une colonne avant\",\"delete_row_desc\":\"Effacer la ligne\",\"row_after_desc\":\"Ins\\u00e9rer une ligne apr\\u00e8s\",\"row_before_desc\":\"Ins\\u00e9rer une ligne avant\",desc:\"Ins\\u00e9rer un nouveau tableau\",\"merge_cells_delta_height\":\"\",\"merge_cells_delta_width\":\"\",\"table_delta_height\":\"\",\"table_delta_width\":\"\",\"cellprops_delta_height\":\"\",\"cellprops_delta_width\":\"\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\"},autosave:{\"warning_message\":\"Si vous restaurez le contenu sauv\\u00e9, vous perdrez le contenu qui est actuellement dans l\\'\\u00e9diteur.\\\\n\\\\n\\u00cates-vous s\\u00fbr de vouloir restaurer le contenu sauv\\u00e9 ?\",\"restore_content\":\"Restaurer le contenu auto-sauvegard\\u00e9.\",\"unload_msg\":\"Les modifications apport\\u00e9es seront perdus si vous quittez cette page.\"},fullscreen:{desc:\"Passer en mode plein \\u00e9cran\"},media:{edit:\"\\u00c9diter un m\\u00e9dia incorpor\\u00e9\",desc:\"Ins\\u00e9rer / \\u00e9diter un m\\u00e9dia incorpor\\u00e9\",\"delta_height\":\"\",\"delta_width\":\"\"},fullpage:{desc:\"Propri\\u00e9t\\u00e9s du document\",\"delta_width\":\"\",\"delta_height\":\"\"},template:{desc:\"Ins\\u00e9rer un mod\\u00e8le pr\\u00e9d\\u00e9fini.\"},visualchars:{desc:\"Activer les caract\\u00e8res de mise en page.\"},spellchecker:{desc:\"Activer le v\\u00e9rificateur d\\'orthographe\",menu:\"Param\\u00e8tres du v\\u00e9rificateur d\\'orthographe\",\"ignore_word\":\"Ignorer le mot\",\"ignore_words\":\"Tout ignorer\",langs:\"Langues\",wait:\"Veuillez patienter\\u2026\",sug:\"Suggestions\",\"no_sug\":\"Aucune suggestion\",\"no_mpell\":\"Aucune erreur trouv\\u00e9e.\"},pagebreak:{desc:\"Ins\\u00e9rer un saut de page.\"},advlist:{types:\"Types\",def:\"D\\u00e9faut\",\"lower_alpha\":\"Alpha minuscule\",\"lower_greek\":\"Grec minuscule\",\"lower_roman\":\"Romain minuscule\",\"upper_alpha\":\"Alpha majuscule\",\"upper_roman\":\"Romain majuscule\",circle:\"Cercle\",disc:\"Disque\",square:\"Carr\\u00e9\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/he.js",
    "content": "tinyMCE.addI18n({he:{common:{\"more_colors\":\"\\u05e2\\u05d5\\u05d3 \\u05e6\\u05d1\\u05e2\\u05d9\\u05dd\",\"invalid_data\":\"\\u05e9\\u05d2\\u05d9\\u05d0\\u05d4: \\u05d4\\u05d5\\u05e7\\u05dc\\u05d3 \\u05de\\u05d9\\u05d3\\u05e2 \\u05dc\\u05d0 \\u05ea\\u05e7\\u05e0\\u05d9. \\u05d4\\u05de\\u05d9\\u05d3\\u05e2 \\u05e1\\u05d5\\u05de\\u05df \\u05d1\\u05d0\\u05d3\\u05d5\\u05dd.\",\"popup_blocked\":\"\\u05d7\\u05d5\\u05e1\\u05dd \\u05e4\\u05e8\\u05d9\\u05d8\\u05d9\\u05dd \\u05de\\u05d5\\u05e7\\u05e4\\u05e6\\u05d9\\u05dd \\u05de\\u05e0\\u05e2 \\u05de\\u05d7\\u05dc\\u05d5\\u05df \\u05d7\\u05e9\\u05d5\\u05d1 \\u05de\\u05dc\\u05d4\\u05e4\\u05ea\\u05d7,\\u05d0\\u05dd \\u05d1\\u05e8\\u05e6\\u05d5\\u05e0\\u05da \\u05dc\\u05d4\\u05e9\\u05ea\\u05de\\u05e9 \\u05d1\\u05db\\u05dc\\u05d9 \\u05d6\\u05d4 \\u05e2\\u05dc\\u05d9\\u05da \\u05dc\\u05d1\\u05d8\\u05dc \\u05d0\\u05ea \\u05d7\\u05d5\\u05e1\\u05dd \\u05d4\\u05e4\\u05e8\\u05d9\\u05d8\\u05d9\\u05dd\",\"clipboard_no_support\":\"\\u05db\\u05e8\\u05d2\\u05e2 \\u05dc\\u05d0 \\u05e0\\u05ea\\u05de\\u05da \\u05e2\\u05dc \\u05d9\\u05d3\\u05d9 \\u05d4\\u05d3\\u05e4\\u05d3\\u05e4\\u05df \\u05e9\\u05dc\\u05da. \\u05d4\\u05e9\\u05ea\\u05de\\u05e9 \\u05d1\\u05e7\\u05d9\\u05e6\\u05d5\\u05e8\\u05d9 \\u05d4\\u05de\\u05e7\\u05dc\\u05d3\\u05ea.\",\"clipboard_msg\":\"\\n        \\u05d4\\u05e2\\u05ea\\u05e7\\u05d4/\\u05d2\\u05d6\\u05d9\\u05e8\\u05d4 \\u05d5\\u05d4\\u05d3\\u05d1\\u05e7\\u05d4 \\u05d0\\u05d9\\u05e0\\u05dd \\u05d6\\u05de\\u05d9\\u05e0\\u05d9\\u05dd \\u05d1 Mozilla \\u05d5\\u05d1-Firefox.\\n        \\u05d4\\u05d0\\u05dd \\u05d1\\u05e8\\u05e6\\u05d5\\u05e0\\u05da \\u05dc\\u05e7\\u05d1\\u05dc \\u05de\\u05d9\\u05d3\\u05e2 \\u05e0\\u05d5\\u05e1\\u05e3 \\u05e2\\u05dc \\u05d4\\u05e0\\u05d5\\u05e9\\u05d0?\\n      \",\"not_set\":\"-- \\u05dc\\u05d0 \\u05d4\\u05d5\\u05d2\\u05d3\\u05e8 --\",\"class_name\":\"\\u05de\\u05d7\\u05dc\\u05e7\\u05d4\",browse:\"\\u05e2\\u05d9\\u05d5\\u05df\",close:\"\\u05e1\\u05d2\\u05d9\\u05e8\\u05d4\",cancel:\"\\u05d1\\u05d9\\u05d8\\u05d5\\u05dc\",update:\"\\u05e2\\u05d3\\u05db\\u05d5\\u05df\",insert:\"\\u05d4\\u05d5\\u05e1\\u05e4\\u05d4\",apply:\"\\u05d0\\u05d9\\u05e9\\u05d5\\u05e8\",\"edit_confirm\":\"\\u05d1\\u05e8\\u05e6\\u05d5\\u05e0\\u05da \\u05dc\\u05d4\\u05e9\\u05ea\\u05de\\u05e9 \\u05d1\\u05e2\\u05d5\\u05e8\\u05da \\u05d4\\u05de\\u05ea\\u05e7\\u05d3\\u05dd?\",\"invalid_data_number\":\"{#field} \\u05d7\\u05d9\\u05d9\\u05d1 \\u05dc\\u05d4\\u05d9\\u05d5\\u05ea \\u05de\\u05e1\\u05e4\\u05e8\",\"invalid_data_min\":\"{#field} \\u05d4\\u05de\\u05e1\\u05e4\\u05e8 \\u05d7\\u05d9\\u05d9\\u05d1 \\u05dc\\u05d4\\u05d9\\u05d5\\u05ea \\u05d2\\u05d3\\u05d5\\u05dc \\u05de-{#min}\",\"invalid_data_size\":\"{#field} \\u05d4\\u05e2\\u05e8\\u05da \\u05d7\\u05d9\\u05d9\\u05d1 \\u05dc\\u05d4\\u05d9\\u05d5\\u05ea \\u05de\\u05e1\\u05e4\\u05e8 \\u05d0\\u05d5 \\u05d0\\u05d7\\u05d5\\u05d6\",value:\"(\\u05e2\\u05e8\\u05da)\"},contextmenu:{full:\"\\u05e9\\u05e0\\u05d9 \\u05d4\\u05e6\\u05d3\\u05d3\\u05d9\\u05dd\",right:\"\\u05d9\\u05de\\u05d9\\u05df\",center:\"\\u05d0\\u05de\\u05e6\\u05e2\",left:\"\\u05e9\\u05de\\u05d0\\u05dc\",align:\"\\u05d9\\u05d9\\u05e9\\u05d5\\u05e8\"},insertdatetime:{\"day_short\":\"\\u05d9\\u05d5\\u05dd \\u05d0\\',\\u05d9\\u05d5\\u05dd \\u05d1\\',\\u05d9\\u05d5\\u05dd \\u05d2\\',\\u05d9\\u05d5\\u05dd \\u05d3\\',\\u05d9\\u05d5\\u05dd \\u05d4\\',\\u05d9\\u05d5\\u05dd \\u05d5\\',\\u05e9\\u05d1\\u05ea,\\u05d9\\u05d5\\u05dd \\u05d0\\'\",\"day_long\":\"\\u05d9\\u05d5\\u05dd \\u05e8\\u05d0\\u05e9\\u05d5\\u05df,\\u05d9\\u05d5\\u05dd \\u05e9\\u05e0\\u05d9,\\u05d9\\u05d5\\u05dd \\u05e9\\u05dc\\u05d9\\u05e9\\u05d9,\\u05d9\\u05d5\\u05dd \\u05e8\\u05d1\\u05d9\\u05e2\\u05d9,\\u05d9\\u05d5\\u05dd \\u05d7\\u05de\\u05d9\\u05e9\\u05d9,\\u05d9\\u05d5\\u05dd \\u05e9\\u05d9\\u05e9,\\u05d9\\u05d5\\u05dd \\u05e9\\u05d1\\u05ea,\\u05d9\\u05d5\\u05dd \\u05e8\\u05d0\\u05e9\\u05d5\\u05df\",\"months_short\":\"\\u05d9\\u05e0\\u05d5\\u05d0\\u05e8,\\u05e4\\u05d1\\u05e8\\u05d5\\u05d0\\u05e8,\\u05de\\u05e8\\u05e5,\\u05d0\\u05e4\\u05e8\\u05d9\\u05dc,\\u05de\\u05d0\\u05d9,\\u05d9\\u05d5\\u05e0\\u05e2,\\u05d9\\u05d5\\u05dc\\u05d9,\\u05d0\\u05d5\\u05d2\\u05d5\\u05e1\\u05d8,\\u05e1\\u05e4\\u05d8\\u05de\\u05d1\\u05e8,\\u05d0\\u05d5\\u05e7\\u05d8\\u05d5\\u05d1\\u05e8,\\u05e0\\u05d5\\u05d1\\u05de\\u05d1\\u05e8,\\u05d3\\u05e6\\u05de\\u05d1\\u05e8\",\"months_long\":\"\\u05d9\\u05e0\\u05d5\\u05d0\\u05e8,\\u05e4\\u05d1\\u05e8\\u05d5\\u05d0\\u05e8,\\u05de\\u05e8\\u05e5,\\u05d0\\u05e4\\u05e8\\u05d9\\u05dc,\\u05de\\u05d0\\u05d9,\\u05d9\\u05d5\\u05e0\\u05e2,\\u05d9\\u05d5\\u05dc\\u05d9,\\u05d0\\u05d5\\u05d2\\u05d5\\u05e1\\u05d8,\\u05e1\\u05e4\\u05d8\\u05de\\u05d1\\u05e8,\\u05d0\\u05d5\\u05e7\\u05d8\\u05d5\\u05d1\\u05e8,\\u05e0\\u05d5\\u05d1\\u05de\\u05d1\\u05e8,\\u05d3\\u05e6\\u05de\\u05d1\\u05e8\",\"inserttime_desc\":\"\\u05d4\\u05d5\\u05e1\\u05e4\\u05ea \\u05d6\\u05de\\u05df\",\"insertdate_desc\":\"\\u05d4\\u05d5\\u05e1\\u05e4\\u05ea \\u05ea\\u05d0\\u05e8\\u05d9\\u05da\",\"time_fmt\":\"%H:%M:%S\",\"date_fmt\":\"%d-%m-%Y\"},print:{\"print_desc\":\"\\u05d4\\u05d3\\u05e4\\u05e1\\u05d4\"},preview:{\"preview_desc\":\"\\u05ea\\u05e6\\u05d5\\u05d2\\u05d4 \\u05de\\u05e7\\u05d3\\u05d9\\u05de\\u05d4\"},directionality:{\"rtl_desc\":\"\\u05db\\u05d9\\u05d5\\u05d5\\u05df \\u05d8\\u05e7\\u05e1\\u05d8 \\u05de\\u05d9\\u05de\\u05d9\\u05df \\u05dc\\u05e9\\u05de\\u05d0\\u05dc\",\"ltr_desc\":\"\\u05db\\u05d9\\u05d5\\u05d5\\u05df \\u05d8\\u05e7\\u05e1\\u05d8 \\u05de\\u05e9\\u05de\\u05d0\\u05dc \\u05dc\\u05d9\\u05de\\u05d9\\u05df\"},layer:{content:\"\\u05e9\\u05db\\u05d1\\u05d4 \\u05d7\\u05d3\\u05e9\\u05d4...\",\"absolute_desc\":\"\\u05d1\\u05d7\\u05d9\\u05e8\\u05ea \\u05de\\u05d9\\u05e7\\u05d5\\u05dd \\u05de\\u05d5\\u05d7\\u05dc\\u05d8\",\"backward_desc\":\"\\u05d4\\u05e2\\u05d1\\u05e8\\u05d4 \\u05d0\\u05d7\\u05d5\\u05e8\\u05d4\",\"forward_desc\":\"\\u05d4\\u05e2\\u05d1\\u05e8\\u05d4 \\u05e7\\u05d3\\u05d9\\u05de\\u05d4\",\"insertlayer_desc\":\"\\u05d4\\u05d5\\u05e1\\u05e4\\u05ea \\u05e9\\u05db\\u05d1\\u05d4 \\u05d7\\u05d3\\u05e9\\u05d4\"},save:{\"save_desc\":\"\\u05e9\\u05de\\u05d9\\u05e8\\u05d4\",\"cancel_desc\":\"\\u05d1\\u05d9\\u05d8\\u05d5\\u05dc \\u05db\\u05dc \\u05d4\\u05e9\\u05d9\\u05e0\\u05d5\\u05d9\\u05dd\"},nonbreaking:{\"nonbreaking_desc\":\"\\u05d4\\u05d5\\u05e1\\u05e4\\u05ea \\u05e8\\u05d5\\u05d5\\u05d7\"},iespell:{download:\" \\u05dc\\u05d0 \\u05e0\\u05de\\u05e6\\u05d0 ieSpell. \\u05d4\\u05d0\\u05dd \\u05d1\\u05e8\\u05e6\\u05d5\\u05e0\\u05da \\u05dc\\u05d4\\u05ea\\u05e7\\u05d9\\u05df?\",\"iespell_desc\":\"\\u05d1\\u05d3\\u05d9\\u05e7\\u05ea \\u05d0\\u05d9\\u05d5\\u05ea \\u05d1\\u05d0\\u05e0\\u05d2\\u05dc\\u05d9\\u05ea\"},advhr:{\"advhr_desc\":\"\\u05e7\\u05d5 \\u05d0\\u05d5\\u05e4\\u05e7\\u05d9\",\"delta_height\":\"\",\"delta_width\":\"\"},emotions:{\"emotions_desc\":\"\\u05e1\\u05de\\u05d9\\u05d9\\u05dc\\u05d9\\u05dd\",\"delta_height\":\"\",\"delta_width\":\"\"},searchreplace:{\"replace_desc\":\"\\u05d4\\u05d7\\u05dc\\u05e4\\u05d4\",\"search_desc\":\"\\u05d7\\u05d9\\u05e4\\u05d5\\u05e9\",\"delta_width\":\"\",\"delta_height\":\"\"},advimage:{\"image_desc\":\"\\u05d4\\u05d5\\u05e1\\u05e4\\u05d4/\\u05e2\\u05e8\\u05d9\\u05db\\u05ea \\u05ea\\u05de\\u05d5\\u05e0\\u05d4\",\"delta_width\":\"\",\"delta_height\":\"\"},advlink:{\"link_desc\":\"\\u05d4\\u05d5\\u05e1\\u05e4\\u05ea/\\u05e2\\u05e8\\u05d9\\u05db\\u05ea \\u05e7\\u05d9\\u05e9\\u05d5\\u05e8\",\"delta_height\":\"\",\"delta_width\":\"\"},xhtmlxtras:{\"attribs_desc\":\"\\u05d4\\u05db\\u05e0\\u05e1/\\u05e2\\u05e8\\u05d5\\u05da \\u05ea\\u05db\\u05d5\\u05e0\\u05d5\\u05ea\",\"ins_desc\":\"\\u05d4\\u05db\\u05e0\\u05e1\\u05d4\",\"del_desc\":\"\\u05de\\u05d7\\u05d9\\u05e7\\u05d4\",\"acronym_desc\":\"\\u05e8\\u05d0\\u05e9\\u05d9 \\u05ea\\u05d9\\u05d1\\u05d5\\u05ea\",\"abbr_desc\":\"\\u05e7\\u05d9\\u05e6\\u05d5\\u05e8\",\"cite_desc\":\"\\u05e6\\u05d9\\u05d8\\u05d5\\u05d8\",\"attribs_delta_height\":\"\",\"attribs_delta_width\":\"\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\"},style:{desc:\"\\u05e2\\u05d3\\u05db\\u05d5\\u05df \\u05d4\\u05d2\\u05d3\\u05e8\\u05d5\\u05ea CSS\",\"delta_height\":\"\",\"delta_width\":\"\"},paste:{\"plaintext_mode\":\"Paste is now in plain text mode. Click again to toggle back to regular paste mode.\",\"plaintext_mode_sticky\":\"Paste is now in plain text mode. Click again to toggle back to regular paste mode. After you paste something you will be returned to regular paste mode.\",\"selectall_desc\":\"\\u05d1\\u05d7\\u05e8 \\u05d4\\u05db\\u05dc\",\"paste_word_desc\":\"\\u05d4\\u05d3\\u05d1\\u05e7\\u05d4 \\u05de-WORD\",\"paste_text_desc\":\"\\u05d4\\u05d3\\u05d1\\u05e7\\u05d4 \\u05db\\u05d8\\u05e7\\u05e1\\u05d8 \\u05d1\\u05dc\\u05d1\\u05d3\"},\"paste_dlg\":{\"word_title\":\"\\u05d4\\u05d3\\u05d1\\u05d9\\u05e7\\u05d5 \\u05d1\\u05d7\\u05dc\\u05d5\\u05df \\u05d6\\u05d4 \\u05d0\\u05ea \\u05d4\\u05d8\\u05e7\\u05e1\\u05d8 \\u05d1\\u05d0\\u05de\\u05e6\\u05e2\\u05d5\\u05ea \\u05d4\\u05de\\u05e7\\u05e9\\u05d9\\u05dd CTRL+V.\",\"text_linebreaks\":\"\\u05d4\\u05e9\\u05d0\\u05e8 \\u05d0\\u05ea \\u05e9\\u05d5\\u05e8\\u05d5\\u05ea \\u05d4\\u05e8\\u05d5\\u05d5\\u05d7\",\"text_title\":\"\\u05d4\\u05d3\\u05d1\\u05d9\\u05e7\\u05d5 \\u05d1\\u05d7\\u05dc\\u05d5\\u05df \\u05d6\\u05d4 \\u05d0\\u05ea \\u05d4\\u05d8\\u05e7\\u05e1\\u05d8 \\u05d1\\u05d0\\u05de\\u05e6\\u05e2\\u05d5\\u05ea \\u05d4\\u05de\\u05e7\\u05e9\\u05d9\\u05dd CTRL+V.\"},table:{cell:\"\\u05ea\\u05d0\",col:\"\\u05e2\\u05de\\u05d5\\u05d3\\u05d4\",row:\"\\u05e9\\u05d5\\u05e8\\u05d4\",del:\"\\u05de\\u05d7\\u05d9\\u05e7\\u05ea \\u05d8\\u05d1\\u05dc\\u05d4\",\"copy_row_desc\":\"\\u05d4\\u05e2\\u05ea\\u05e7\\u05ea \\u05e9\\u05d5\\u05e8\\u05d4 \\u05d1\\u05d8\\u05d1\\u05dc\\u05d4\",\"cut_row_desc\":\"\\u05d2\\u05d6\\u05d9\\u05e8\\u05ea \\u05e9\\u05d5\\u05e8\\u05d4 \\u05d1\\u05d8\\u05d1\\u05dc\\u05d4\",\"paste_row_after_desc\":\"\\u05d4\\u05d3\\u05d1\\u05e7\\u05ea \\u05e9\\u05d5\\u05e8\\u05d4 \\u05d1\\u05d8\\u05d1\\u05dc\\u05d4 \\u05d0\\u05d7\\u05e8\\u05d9\",\"paste_row_before_desc\":\"\\u05d4\\u05d3\\u05d1\\u05e7\\u05ea \\u05e9\\u05d5\\u05e8\\u05d4 \\u05d1\\u05d8\\u05d1\\u05dc\\u05d4 \\u05dc\\u05e4\\u05e0\\u05d9\",\"props_desc\":\"\\u05ea\\u05db\\u05d5\\u05e0\\u05d5\\u05ea \\u05d4\\u05d8\\u05d1\\u05dc\\u05d4\",\"cell_desc\":\"\\u05ea\\u05db\\u05d5\\u05e0\\u05d5\\u05ea \\u05ea\\u05d0 \\u05d1\\u05d8\\u05d1\\u05dc\\u05d4\",\"row_desc\":\"\\u05ea\\u05db\\u05d5\\u05e0\\u05d5\\u05ea \\u05e9\\u05d5\\u05e8\\u05d4 \\u05d1\\u05d8\\u05d1\\u05dc\\u05d4\",\"merge_cells_desc\":\"\\u05d0\\u05d9\\u05d7\\u05d5\\u05d3 \\u05ea\\u05d0\\u05d9\\u05dd \\u05d1\\u05d8\\u05d1\\u05dc\\u05d4\",\"split_cells_desc\":\"\\u05e4\\u05d9\\u05e6\\u05d5\\u05dc \\u05ea\\u05d0\\u05d9\\u05dd \\u05d1\\u05d8\\u05d1\\u05dc\\u05d4\",\"delete_col_desc\":\"\\u05d4\\u05e1\\u05e8\\u05ea \\u05e2\\u05de\\u05d5\\u05d3\\u05d4\",\"col_after_desc\":\"\\u05d4\\u05db\\u05e0\\u05e1\\u05ea \\u05e2\\u05de\\u05d5\\u05d3\\u05d4 \\u05de\\u05e9\\u05de\\u05d0\\u05dc\",\"col_before_desc\":\"\\u05d4\\u05db\\u05e0\\u05e1\\u05ea \\u05e2\\u05de\\u05d5\\u05d3\\u05d4 \\u05de\\u05d9\\u05de\\u05d9\\u05df\",\"delete_row_desc\":\"\\u05de\\u05d7\\u05d9\\u05e7\\u05ea \\u05e9\\u05d5\\u05e8\\u05d4\",\"row_after_desc\":\"\\u05d4\\u05db\\u05e0\\u05e1\\u05ea \\u05e9\\u05d5\\u05e8\\u05d4 \\u05de\\u05ea\\u05d7\\u05ea\",\"row_before_desc\":\"\\u05d4\\u05db\\u05e0\\u05e1\\u05ea \\u05e9\\u05d5\\u05e8\\u05d4 \\u05de\\u05e2\\u05dc\",desc:\"\\u05d4\\u05db\\u05e0\\u05e1\\u05ea \\u05d0\\u05d5 \\u05e2\\u05e8\\u05d9\\u05db\\u05ea \\u05d8\\u05d1\\u05dc\\u05d4\",\"merge_cells_delta_height\":\"\",\"merge_cells_delta_width\":\"\",\"table_delta_height\":\"\",\"table_delta_width\":\"\",\"cellprops_delta_height\":\"\",\"cellprops_delta_width\":\"\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\"},autosave:{\"warning_message\":\"\\u05d0\\u05dd \\u05ea\\u05e9\\u05d7\\u05d6\\u05e8 \\u05d0\\u05ea \\u05d4\\u05ea\\u05d5\\u05db\\u05df \\u05dc\\u05d2\\u05e8\\u05d9\\u05e1\\u05d0 \\u05d4\\u05e9\\u05de\\u05d5\\u05e8\\u05d4, \\u05ea\\u05d0\\u05d1\\u05d3 \\u05d0\\u05ea \\u05db\\u05dc \\u05d4\\u05ea\\u05d5\\u05db\\u05df \\u05e9\\u05e0\\u05de\\u05e6\\u05d0 \\u05db\\u05e2\\u05ea \\u05d1\\u05e2\\u05d5\\u05e8\\u05da. \\u05d4\\u05d0\\u05dd \\u05d0\\u05ea\\u05d4 \\u05d1\\u05d8\\u05d5\\u05d7 \\u05e9\\u05d0\\u05ea\\u05d4 \\u05e8\\u05d5\\u05e6\\u05d4 \\u05dc\\u05e9\\u05d7\\u05d6\\u05e8 \\u05d0\\u05ea \\u05d4\\u05ea\\u05d5\\u05db\\u05df \\u05dc\\u05d2\\u05d9\\u05e8\\u05e1\\u05d0 \\u05d4\\u05e9\\u05de\\u05d5\\u05e8\\u05d4?.\",\"restore_content\":\"\\u05e9\\u05d7\\u05d6\\u05d5\\u05e8 \\u05dc\\u05d2\\u05d9\\u05e8\\u05e1\\u05d0 \\u05e9\\u05de\\u05d5\\u05e8\\u05d4 \\u05d0\\u05d5\\u05d8\\u05d5\\u05de\\u05d8\\u05d9\\u05ea\",\"unload_msg\":\"\\u05d4\\u05e9\\u05d9\\u05e0\\u05d5\\u05d9\\u05d9\\u05dd \\u05e9\\u05d1\\u05d9\\u05e6\\u05e2\\u05ea \\u05dc\\u05d0 \\u05d9\\u05e9\\u05de\\u05e8\\u05d5 \\u05d0\\u05dd \\u05ea\\u05e2\\u05d1\\u05d5\\u05e8 \\u05de\\u05d3\\u05e3 \\u05d6\\u05d4\"},fullscreen:{desc:\"\\u05de\\u05e2\\u05d1\\u05e8 \\u05dc\\u05de\\u05e1\\u05da \\u05de\\u05dc\\u05d0/\\u05d7\\u05dc\\u05e7\\u05d9\"},media:{edit:\"\\u05e2\\u05e8\\u05d9\\u05db\\u05ea \\u05e1\\u05e8\\u05d8\\u05d5\\u05df\",desc:\"\\u05d4\\u05d5\\u05e1\\u05e4\\u05ea/\\u05e2\\u05e8\\u05d9\\u05db\\u05ea \\u05e1\\u05e8\\u05d8\\u05d5\\u05df\",\"delta_height\":\"\",\"delta_width\":\"\"},fullpage:{desc:\"\\u05de\\u05d0\\u05e4\\u05d9\\u05d9\\u05e0\\u05d9 \\u05e2\\u05de\\u05d5\\u05d3\",\"delta_width\":\"\",\"delta_height\":\"\"},template:{desc:\"Insert predefined template content\"},visualchars:{desc:\"\\u05d4\\u05e6\\u05d2/\\u05d4\\u05e1\\u05ea\\u05e8 \\u05ea\\u05d5\\u05d5\\u05d9 \\u05d1\\u05e7\\u05e8\\u05d4\"},spellchecker:{desc:\"\\u05d4\\u05e4\\u05e2\\u05dc\\u05ea \\u05d1\\u05d5\\u05d3\\u05e7 \\u05d0\\u05d9\\u05d5\\u05ea\",menu:\"\\u05d4\\u05d2\\u05d3\\u05e8\\u05d5\\u05ea \\u05d1\\u05d5\\u05d3\\u05e7 \\u05d0\\u05d9\\u05d5\\u05ea\",\"ignore_word\":\"\\u05dc\\u05d4\\u05ea\\u05e2\\u05dc\\u05dd \\u05de\\u05d4\\u05de\\u05d9\\u05dc\\u05d4\",\"ignore_words\":\"\\u05dc\\u05d4\\u05ea\\u05e2\\u05dc\\u05dd \\u05de\\u05d4\\u05db\\u05dc\",langs:\"\\u05e9\\u05e4\\u05d5\\u05ea\",wait:\"\\u05e0\\u05d0 \\u05dc\\u05d4\\u05de\\u05ea\\u05d9\\u05df..\",sug:\"\\u05d4\\u05e6\\u05e2\\u05d5\\u05ea\",\"no_sug\":\"\\u05d0\\u05d9\\u05df \\u05d4\\u05e6\\u05e2\\u05d5\\u05ea\",\"no_mpell\":\"\\u05dc\\u05d0 \\u05e0\\u05de\\u05e6\\u05d0\\u05d5 \\u05e9\\u05d2\\u05d9\\u05d0\\u05d5\\u05ea \\u05d0\\u05d9\\u05d5\\u05ea\",\"learn_word\":\"\\u05dc\\u05de\\u05d3 \\u05de\\u05d9\\u05dc\\u05d9\\u05dd\"},pagebreak:{desc:\"\\u05d4\\u05d5\\u05e1\\u05e4\\u05ea \\u05de\\u05e2\\u05d1\\u05e8 \\u05d3\\u05e3\"},advlist:{types:\"\\u05e1\\u05d5\\u05d2\\u05d9\\u05dd\",def:\"\\u05d1\\u05e8\\u05d9\\u05e8\\u05ea \\u05de\\u05d7\\u05d3\\u05dc\",\"lower_alpha\":\"\\u05d0\\u05dc\\u05e4\\u05d0 \\u05ea\\u05d7\\u05ea\\u05d9\",\"lower_greek\":\"\\u05d9\\u05d5\\u05d5\\u05e0\\u05d9 \\u05ea\\u05d7\\u05ea\\u05d9\",\"lower_roman\":\"\\u05e8\\u05d5\\u05de\\u05d0\\u05d9 \\u05ea\\u05d7\\u05ea\\u05d9\",\"upper_alpha\":\"\\u05d0\\u05dc\\u05e4\\u05d0 \\u05e2\\u05d9\\u05dc\\u05d9\",\"upper_roman\":\"\\u05e8\\u05d5\\u05de\\u05d0\\u05d9 \\u05e2\\u05d9\\u05dc\\u05d9\",circle:\"\\u05e2\\u05d2\\u05d5\\u05dc\",disc:\"\\u05d3\\u05d9\\u05e1\\u05e7\",square:\"\\u05de\\u05e8\\u05d5\\u05d1\\u05e2\"},colors:{\"333300\":\"\\u05d6\\u05d9\\u05ea \\u05db\\u05d4\\u05d4\",\"993300\":\"\\u05db\\u05ea\\u05d5\\u05dd \\u05db\\u05d4\\u05d4\",\"000000\":\"\\u05e9\\u05d7\\u05d5\\u05e8\",\"003300\":\"\\u05d9\\u05e8\\u05d5\\u05e7 \\u05db\\u05d4\\u05d4\",\"003366\":\"\\u05d8\\u05d5\\u05e8\\u05e7\\u05d9\\u05d6 \\u05db\\u05d4\\u05d4\",\"000080\":\"\\u05db\\u05d7\\u05d5\\u05dc \\u05e6\\u05d9\",\"333399\":\"\\u05d0\\u05d9\\u05e0\\u05d3\\u05d9\\u05d2\\u05d5\",\"333333\":\"\\u05d0\\u05e4\\u05d5\\u05e8 \\u05db\\u05d4\\u05d4 \\u05de\\u05d0\\u05d5\\u05d3\",\"800000\":\"\\u05e2\\u05e8\\u05de\\u05d5\\u05e0\\u05d9\",FF6600:\"\\u05db\\u05ea\\u05d5\\u05dd\",\"808000\":\"\\u05d6\\u05d9\\u05ea\",\"008000\":\"\\u05d9\\u05e8\\u05d5\\u05e7\",\"008080\":\"\\u05d9\\u05e8\\u05d5\\u05e7-\\u05db\\u05d7\\u05d5\\u05dc \\u05e2\\u05de\\u05d5\\u05e7\",\"0000FF\":\"\\u05db\\u05d7\\u05d5\\u05dc\",\"666699\":\"\\u05db\\u05d7\\u05d5\\u05dc \\u05d0\\u05e4\\u05e8\\u05e4\\u05e8\",\"808080\":\"\\u05d0\\u05e4\\u05d5\\u05e8\",FF0000:\"\\u05d0\\u05d3\\u05d5\\u05dd\",FF9900:\"\\u05e2\\u05e0\\u05d1\\u05e8\",\"99CC00\":\"\\u05d9\\u05e8\\u05d5\\u05e7 \\u05e6\\u05d4\\u05d1\\u05d4\\u05d1\",\"339966\":\"\\u05d9\\u05e8\\u05d5\\u05e7 \\u05d9\\u05dd\",\"33CCCC\":\"\\u05d8\\u05d5\\u05e8\\u05e7\\u05d9\\u05d6\",\"3366FF\":\"\\u05db\\u05d7\\u05d5\\u05dc \\u05e8\\u05d5\\u05d9\\u05d0\\u05dc\",\"800080\":\"\\u05e1\\u05d2\\u05d5\\u05dc\",\"999999\":\"\\u05d0\\u05e4\\u05d5\\u05e8 \\u05d1\\u05d9\\u05e0\\u05d9\\u05d9\\u05dd\",FF00FF:\"\\u05e1\\u05d2\\u05d5\\u05dc-\\u05d5\\u05e8\\u05d5\\u05d3 (\\u05de\\u05d2\\u05f3\\u05e0\\u05d8\\u05d4)\",FFCC00:\"\\u05d6\\u05d4\\u05d1\",FFFF00:\"\\u05e6\\u05d4\\u05d5\\u05d1\",\"00FF00\":\"\\u05dc\\u05d9\\u05d9\\u05dd\",\"00FFFF\":\"\\u05d8\\u05d5\\u05e8\\u05e7\\u05d9\\u05d6 \\u05de\\u05d9\\u05dd\",\"00CCFF\":\"\\u05ea\\u05db\\u05dc\\u05ea\",\"993366\":\"\\u05d7\\u05d5\\u05dd\",C0C0C0:\"\\u05db\\u05e1\\u05e3\",FF99CC:\"\\u05d5\\u05e8\\u05d5\\u05d3\",FFCC99:\"\\u05d0\\u05e4\\u05e8\\u05e1\\u05e7\",FFFF99:\"\\u05e6\\u05d4\\u05d5\\u05d1 \\u05d1\\u05d4\\u05d9\\u05e8\",CCFFCC:\"\\u05d9\\u05e8\\u05d5\\u05e7 \\u05d7\\u05d9\\u05d5\\u05d5\\u05e8\",CCFFFF:\"\\u05d8\\u05d5\\u05e8\\u05e7\\u05d9\\u05d6 \\u05d1\\u05d4\\u05d9\\u05e8\",\"99CCFF\":\"\\u05ea\\u05db\\u05dc\\u05ea \\u05d1\\u05d4\\u05d9\\u05e8\",CC99FF:\"\\u05d5\\u05e8\\u05d5\\u05d3 \\u05e2\\u05de\\u05d5\\u05e7\",FFFFFF:\"\\u05dc\\u05d1\\u05df\"},aria:{\"rich_text_area\":\"\\u05d0\\u05d6\\u05d5\\u05e8 \\u05e2\\u05d5\\u05e8\\u05da \\u05d8\\u05e7\\u05e1\\u05d8 \\u05e2\\u05e9\\u05d9\\u05e8\"},wordcount:{words:\"\\u05de\\u05d9\\u05dc\\u05d9\\u05dd:\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/hr.js",
    "content": "tinyMCE.addI18n({hr:{common:{more_colors:\"Vi\\u0161e boja\",invalid_data:\"Gre\\u0161ka: Une\\u0161ene su nevaljane vrijednosti, ozna\\u010dene su crvenom bojom.\",popup_blocked:\"Oprostite, izgleda da je va\\u0161 popup-blocker onemogu\\u0107io prozor u sklopu ovog programa. Morate onemogu\\u0107iti blokiranje popup prozora da bi u potpunosti iskoristili ovaj alat.\",clipboard_no_support:\"Trenuta\\u010dno va\\u0161 preglednik ne podr\\u017eava ovu opciju, poku\\u0161ajte koristiti tipkovni\\u010dku kraticu.\",clipboard_msg:\"Kopiraj/Izre\\u017ei/Zalijepi nije dostupno Mozilla i Firefox preglednicima.\\\\nVi\\u0161e informacija?\",not_set:\"-- Nije postavljeno --\",class_name:\"Klasa\",browse:\"Pregled\",close:\"Zatvori\",cancel:\"Odustani\",update:\"Obnovi\",insert:\"Umetni\",apply:\"Primjeni\",edit_confirm:\"\\u017delite li koristiti WYSIWYG na\\u010din rada za ovo tekstualno polje?\"},contextmenu:{full:\"Puno\",right:\"Desno\",center:\"Sredina\",left:\"Lijevo\",align:\"Poravnavanje\"},insertdatetime:{day_short:\"ned,pon,uto,sri,\\u010det,pet,sub,ned\",day_long:\"nedjelja,ponedjeljak,utorak,srijeda,\\u010detvrtak,petak,subota,nedjelja\",months_short:\"sij,velj,o\\u017eu,tra,svi,lip,srp,kol,ruj,lis,stu,pro\",months_long:\"sije\\u010danj,velja\\u010da,o\\u017eujak,travanj,svibanj,lipanj,srpanj,kolovoz,rujan,listopad,studeni,prosinac\",inserttime_desc:\"Umetni vrijeme\",insertdate_desc:\"Umetni datum\",time_fmt:\"%H:%M:%S\",date_fmt:\"%d.%m.%Y.\"},print:{print_desc:\"Ispis\"},preview:{preview_desc:\"Prikaz\"},directionality:{rtl_desc:\"S desna na lijevo\",ltr_desc:\"S lijeva na desno\"},layer:{content:\"Novi sloj...\",absolute_desc:\"Uklju\\u010di/isklju\\u010di apsolutno pozicioniranje\",backward_desc:\"Pomakni natrag\",forward_desc:\"Pomakni naprijed\",insertlayer_desc:\"Umetni novi sloj\"},save:{save_desc:\"Spremi\",cancel_desc:\"Odustani od svih promjena\"},nonbreaking:{nonbreaking_desc:\"Umetni razmak\"},iespell:{download:\"Provjera pravopisa nije postaljena. Postaviti sada?\",iespell_desc:\"Pokreni provjeru pravopisa\"},advhr:{advhr_desc:\"Vodoravna crta\",delta_height:\"\",delta_width:\"\"},emotions:{emotions_desc:\"Emocije\",delta_height:\"\",delta_width:\"\"},searchreplace:{replace_desc:\"Prona\\u0111i/Zamijeni\",search_desc:\"Prona\\u0111i\",delta_width:\"\",delta_height:\"\"},advimage:{image_desc:\"Umetni/uredi sliku\",delta_width:\"\",delta_height:\"\"},advlink:{delta_width:\"100\",link_desc:\"Insert/edit link\",delta_height:\"\"},xhtmlxtras:{attribs_desc:\"Umetni/uredi atribute\",ins_desc:\"Unos\",del_desc:\"Brisanje\",acronym_desc:\"Akronim\",abbr_desc:\"Kratica\",cite_desc:\"Citat\",attribs_delta_height:\"\",attribs_delta_width:\"\",ins_delta_height:\"\",ins_delta_width:\"\",del_delta_height:\"\",del_delta_width:\"\",acronym_delta_height:\"\",acronym_delta_width:\"\",abbr_delta_height:\"\",abbr_delta_width:\"\",cite_delta_height:\"\",cite_delta_width:\"\"},style:{desc:\"Uredi CSS\",delta_height:\"\",delta_width:\"\"},paste:{plaintext_mode:\"Paste is now in plain text mode. Click again to toggle back to regular paste mode.\",plaintext_mode_sticky:\"Paste is now in plain text mode. Click again to toggle back to regular paste mode. After you paste something you will be returned to regular paste mode.\",selectall_desc:\"Odaberi sve\",paste_word_desc:\"Zalijepi iz Worda\",paste_text_desc:\"Zalijepi kao obi\\u010dni tekst\"},paste_dlg:{word_title:\"Koristite CTRL+V na tipkovnici da zalijepite tekst u prozor.\",text_linebreaks:\"Zadr\\u017ei prijelome\",text_title:\"Koristite CTRL+V na tipkovnici da zalijepite tekst u prozor.\"},table:{cell:\"\\u0106elija\",col:\"Stupac\",row:\"Redak\",del:\"Izbri\\u0161i tablicu\",copy_row_desc:\"Kopiraj redak\",cut_row_desc:\"Izre\\u017ei redak\",paste_row_after_desc:\"Zalijepi redak ispod\",paste_row_before_desc:\"Zalijepi redak iznad\",props_desc:\"Svojstva tablice\",cell_desc:\"Svojstva \\u0107elije\",row_desc:\"Svojstva retka\",merge_cells_desc:\"Spoji \\u0107elije\",split_cells_desc:\"Razdvoji spojene \\u0107elije\",delete_col_desc:\"Ukloni stupac\",col_after_desc:\"Umetni stupac desno\",col_before_desc:\"Umetni stupac lijevo\",delete_row_desc:\"Izbri\\u0161i redak\",row_after_desc:\"Umetni redak ispod\",row_before_desc:\"Umetni redak iznad\",desc:\"Nova tablica\",merge_cells_delta_height:\"\",merge_cells_delta_width:\"\",table_delta_height:\"\",table_delta_width:\"\",cellprops_delta_height:\"\",cellprops_delta_width:\"\",rowprops_delta_height:\"\",rowprops_delta_width:\"\"},autosave:{warning_message:\"If you restore the saved content, you will lose all the content that is currently in the editor.\\\\n\\\\nAre you sure you want to restore the saved content?.\",restore_content:\"Restore auto-saved content.\",unload_msg:\"Promjene u dokumentu \\u0107e biti izgubljene ako iza\\u0111ete s ove stranice.\"},fullscreen:{desc:\"Uklju\\u010di/isklju\\u010di prikaz preko cijelog ekrana\"},media:{edit:\"Edit embedded media\",desc:\"Insert / edit embedded media\",delta_height:\"\",delta_width:\"\"},fullpage:{desc:\"Svojstva dokumenta\",delta_width:\"\",delta_height:\"\"},template:{desc:\"Umetni sadr\\u017eaj iz predlo\\u017eak\"},visualchars:{desc:\"Vizualni kontrolni znakovi uklju\\u010deni/isklju\\u010deni.\"},spellchecker:{desc:\"Uklju\\u010di/isklju\\u010di provjeru pravopisa\",menu:\"Postavke provjere pravopisa\",ignore_word:\"Zanemari rije\\u010d\",ignore_words:\"Zanemari sver\",langs:\"Jezici\",wait:\"Pri\\u010dekajte...\",sug:\"Prijedlozi\",no_sug:\"Nema prijedloga\",no_mpell:\"Nije prona\\u0111ena nijedna pravopisna gre\\u0161ke.\"},pagebreak:{desc:\"Umetni prijelom.\"},advlist:{types:\"Types\",def:\"Default\",lower_alpha:\"Lower alpha\",lower_greek:\"Lower greek\",lower_roman:\"Lower roman\",upper_alpha:\"Upper alpha\",upper_roman:\"Upper roman\",circle:\"Circle\",disc:\"Disc\",square:\"Square\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/hu.js",
    "content": "tinyMCE.addI18n({hu:{common:{\"more_colors\":\"Tov\\u00e1bbi sz\\u00ednek...\",\"invalid_data\":\"Hiba: Az \\u00e9rv\\u00e9nytelen adatok, pirossal jel\\u00f6lve.\",\"popup_blocked\":\"A felugr\\u00f3 ablakok tilt\\u00e1sa miatt nem siker\\u00fclt megjelen\\u00edteni egy, az alkalmaz\\u00e1shoz sz\\u00fcks\\u00e9ges ablakot. Enged\\u00e9lyezze a b\\u00f6ng\\u00e9sz\\u0151j\\u00e9ben a felugr\\u00f3 ablakokat, hogy minden funkci\\u00f3t haszn\\u00e1lhasson.\",\"clipboard_no_support\":\"Jelenleg nem t\\u00e1mogatja a b\\u00f6ng\\u00e9sz\\u0151je, haszn\\u00e1lja a billenty\\u0171kombin\\u00e1ci\\u00f3kat helyette.\",\"clipboard_msg\":\"A M\\u00e1sol\\u00e1s/Kiv\\u00e1g\\u00e1s/Besz\\u00far\\u00e1s funkci\\u00f3k nem \\u00e9rhet\\u0151k el Mozilla \\u00e9s Firefox alatt.\\nK\\u00edv\\u00e1n t\\u00f6bbet megtudni err\\u0151l a t\\u00e9m\\u00e1r\\u00f3l?\",\"not_set\":\"-- Nincs megadva --\",\"class_name\":\"Oszt\\u00e1ly\",browse:\"Tall\\u00f3z\\u00e1s\",close:\"Bez\\u00e1r\\u00e1s\",cancel:\"M\\u00e9gsem\",update:\"Friss\\u00edt\\u00e9s\",insert:\"Besz\\u00far\\u00e1s\",apply:\"Alkalmaz\",\"edit_confirm\":\"Haszn\\u00e1lni k\\u00edv\\u00e1nja a (WYSIWYG) sz\\u00f6vegszerkeszt\\u0151 m\\u00f3dot ebben a sz\\u00f6vegdobozban?\",\"invalid_data_number\":\"{#field} sz\\u00e1m kell legyen\",\"invalid_data_min\":\"{#field} egy nagyobb sz\\u00e1m kell legyen, mint {#min}\",\"invalid_data_size\":\"{#field} egy sz\\u00e1m vagy sz\\u00e1zal\\u00e9k kell legyen\",value:\"(\\u00e9rt\\u00e9k)\"},contextmenu:{full:\"Sorkiz\\u00e1rt\",right:\"Jobbra\",center:\"K\\u00f6z\\u00e9pre\",left:\"Balra\",align:\"Igaz\\u00edt\\u00e1s\"},insertdatetime:{\"day_short\":\"V,H,K,Sze,Cs,P,Szo,V\",\"day_long\":\"vas\\u00e1rnap,h\\u00e9tf\\u0151,kedd,szerda,cs\\u00fct\\u00f6rt\\u00f6k,p\\u00e9ntek,szombat,vas\\u00e1rnap\",\"months_short\":\"Jan,Feb,M\\u00e1r,\\u00c1pr,M\\u00e1j,J\\u00fan,J\\u00fal,Aug,Szept,Okt,Nov,Dec\",\"months_long\":\"janu\\u00e1r,febru\\u00e1r,m\\u00e1rcius,\\u00e1prilis,m\\u00e1jus,j\\u00fanius,j\\u00falius,augusztus,szeptember,okt\\u00f3ber,november,december\",\"inserttime_desc\":\"Id\\u0151 besz\\u00far\\u00e1sa\",\"insertdate_desc\":\"D\\u00e1tum besz\\u00far\\u00e1sa\",\"time_fmt\":\"%H:%M:%S\",\"date_fmt\":\"%Y. %m. %d.\"},print:{\"print_desc\":\"Nyomtat\\u00e1s\"},preview:{\"preview_desc\":\"El\\u0151n\\u00e9zet\"},directionality:{\"rtl_desc\":\"Jobbr\\u00f3l balra\",\"ltr_desc\":\"Balr\\u00f3l jobbra\"},layer:{content:\"\\u00daj r\\u00e9teg...\",\"absolute_desc\":\"Abszol\\u00fat poz\\u00edci\\u00f3 megad\\u00e1s ki-/bekapcsol\\u00e1sa\",\"backward_desc\":\"Mozgat\\u00e1s h\\u00e1tra\",\"forward_desc\":\"Mozgat\\u00e1s el\\u0151re\",\"insertlayer_desc\":\"\\u00daj r\\u00e9teg besz\\u00far\\u00e1sa\"},save:{\"save_desc\":\"Ment\\u00e9s\",\"cancel_desc\":\"Minden m\\u00f3dos\\u00edt\\u00e1s elvet\\u00e9se\"},nonbreaking:{\"nonbreaking_desc\":\"Nem (sor)t\\u00f6rhet\\u0151 sz\\u00f3k\\u00f6z besz\\u00far\\u00e1sa\"},iespell:{download:\"ieSpell nem tal\\u00e1lhat\\u00f3. Telep\\u00edti most?\",\"iespell_desc\":\"Helyes\\u00edr\\u00e1s-ellen\\u0151rz\\u00e9s futtat\\u00e1sa\"},advhr:{\"advhr_desc\":\"V\\u00edzszintes vonal\",\"delta_height\":\"\",\"delta_width\":\"\"},emotions:{\"emotions_desc\":\"Hangulatjelek\",\"delta_height\":\"\",\"delta_width\":\"\"},searchreplace:{\"replace_desc\":\"Keres\\u00e9s/Csere\",\"search_desc\":\"Keres\\u00e9s\",\"delta_width\":\"\",\"delta_height\":\"\"},advimage:{\"image_desc\":\"K\\u00e9p besz\\u00far\\u00e1sa/szerkeszt\\u00e9se\",\"delta_width\":\"\",\"delta_height\":\"\"},advlink:{\"link_desc\":\"Link besz\\u00far\\u00e1sa/szerkeszt\\u00e9se\",\"delta_height\":\"\",\"delta_width\":\"\"},xhtmlxtras:{\"attribs_desc\":\"Tulajdons\\u00e1gok besz\\u00far\\u00e1sa/szerkeszt\\u00e9se\",\"ins_desc\":\"Besz\\u00far\\u00e1s\",\"del_desc\":\"T\\u00f6r\\u00f6l\\u00e9s\",\"acronym_desc\":\"Bet\\u0171sz\\u00f3\",\"abbr_desc\":\"R\\u00f6vid\\u00edt\\u00e9s\",\"cite_desc\":\"Id\\u00e9zet\",\"attribs_delta_height\":\"\",\"attribs_delta_width\":\"\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\"},style:{desc:\"CSS st\\u00edlus szerkeszt\\u00e9se\",\"delta_height\":\"\",\"delta_width\":\"\"},paste:{\"plaintext_mode\":\"A besz\\u00far\\u00e1s mostant\\u00f3l egyszer\\u0171 sz\\u00f6veg m\\u00f3dban van. Kattintson ide \\u00fajra ezen m\\u00f3d ki/be kapcsol\\u00e1s\\u00e1hoz.\",\"plaintext_mode_sticky\":\"A besz\\u00far\\u00e1s mostant\\u00f3l egyszer\\u0171 sz\\u00f6veg m\\u00f3dban van. Kattintson ide \\u00fajra ezen m\\u00f3d ki/be kapcsol\\u00e1s\\u00e1hoz. Miut\\u00e1n besz\\u00far valamit, visszaker\\u00fcl norm\\u00e1l m\\u00f3dba.\",\"selectall_desc\":\"Mindent kijel\\u00f6l\",\"paste_word_desc\":\"Besz\\u00far\\u00e1s Wordb\\u0151l\",\"paste_text_desc\":\"Besz\\u00far\\u00e1s egyszer\\u0171 sz\\u00f6vegk\\u00e9nt\"},\"paste_dlg\":{\"word_title\":\"Haszn\\u00e1lja a Ctrl V-t a billenty\\u0171zet\\u00e9n a sz\\u00f6veg beilleszt\\u00e9shez.\",\"text_linebreaks\":\"Sort\\u00f6r\\u00e9sek megtart\\u00e1sa\",\"text_title\":\"Haszn\\u00e1lja a Ctrl V-t a billenty\\u0171zet\\u00e9n a sz\\u00f6veg beilleszt\\u00e9shez.\"},table:{cell:\"Cella\",col:\"Oszlop\",row:\"Sor\",del:\"T\\u00e1bl\\u00e1zat t\\u00f6rl\\u00e9se\",\"copy_row_desc\":\"Sor m\\u00e1sol\\u00e1sa\",\"cut_row_desc\":\"Sor kiv\\u00e1g\\u00e1sa\",\"paste_row_after_desc\":\"Sor bem\\u00e1sol\\u00e1sa ut\\u00e1na\",\"paste_row_before_desc\":\"Sor bem\\u00e1sol\\u00e1sa el\\u00e9\",\"props_desc\":\"T\\u00e1bl\\u00e1zat tulajdons\\u00e1gai\",\"cell_desc\":\"Cella tulajdons\\u00e1gai\",\"row_desc\":\"Sor tulajdons\\u00e1gai\",\"merge_cells_desc\":\"Cell\\u00e1k egyes\\u00edt\\u00e9se\",\"split_cells_desc\":\"Egyes\\u00edtett cell\\u00e1k feloszt\\u00e1sa\",\"delete_col_desc\":\"Oszlop t\\u00f6rl\\u00e9se\",\"col_after_desc\":\"Oszlop besz\\u00far\\u00e1sa ut\\u00e1na\",\"col_before_desc\":\"Oszlop besz\\u00far\\u00e1sa el\\u00e9\",\"delete_row_desc\":\"Sor t\\u00f6rl\\u00e9se\",\"row_after_desc\":\"Sor besz\\u00far\\u00e1sa ut\\u00e1na\",\"row_before_desc\":\"Sor besz\\u00far\\u00e1sa el\\u00e9\",desc:\"T\\u00e1bl\\u00e1zat besz\\u00far\\u00e1sa/szerkeszt\\u00e9se\",\"merge_cells_delta_height\":\"\",\"merge_cells_delta_width\":\"\",\"table_delta_height\":\"\",\"table_delta_width\":\"\",\"cellprops_delta_height\":\"\",\"cellprops_delta_width\":\"\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\"},autosave:{\"warning_message\":\"Ha visszat\\u00f6lti a mentett be\\u00e1ll\\u00edt\\u00e1sokat, a jelenlegi \\u00e1llapot elv\\u00e9sz.\\n\\nBiztosan visszat\\u00f6lti a mentett \\u00e1llapotot?\",\"restore_content\":\"Automatikus ment\\u00e9s bet\\u00f6lt\\u00e9se.\",\"unload_msg\":\"A m\\u00f3dos\\u00edt\\u00e1sok nem lesznek mentve, ha elhagyja az oldalt.\"},fullscreen:{desc:\"Teljesk\\u00e9perny\\u0151s m\\u00f3d ki-/bekapcsol\\u00e1sa\"},media:{edit:\"Be\\u00e1gyazott m\\u00e9dia szerkeszt\\u00e9se\",desc:\"Be\\u00e1gyazott m\\u00e9dia besz\\u00far\\u00e1sa/szerkeszt\\u00e9se\",\"delta_height\":\"\",\"delta_width\":\"\"},fullpage:{desc:\"Dokumentum tulajdons\\u00e1gai\",\"delta_width\":\"\",\"delta_height\":\"\"},template:{desc:\"Sablon beilleszt\\u00e9se\"},visualchars:{desc:\"Vizu\\u00e1lis vez\\u00e9rl\\u0151karakterek be-/kikapcsol\\u00e1sa\"},spellchecker:{desc:\"Helyes\\u00edr\\u00e1s-ellen\\u0151rz\\u0151 ki-/bekapcsol\\u00e1sa\",menu:\"Helyes\\u00edr\\u00e1s-ellen\\u0151rz\\u0151 be\\u00e1ll\\u00edt\\u00e1sok\",\"ignore_word\":\"Sz\\u00f3 kihagy\\u00e1sa\",\"ignore_words\":\"Mindet kihagy\",langs:\"Nyelvek\",wait:\"K\\u00e9rem, v\\u00e1rjon...\",sug:\"Aj\\u00e1nl\\u00e1sok\",\"no_sug\":\"Nincs aj\\u00e1nl\\u00e1s\",\"no_mpell\":\"Nem tal\\u00e1ltam helyes\\u00edr\\u00e1si hib\\u00e1t.\",\"learn_word\":\"Sz\\u00f3 megjegyz\\u00e9se\"},pagebreak:{desc:\"Oldalt\\u00f6r\\u00e9s besz\\u00far\\u00e1sa a nyomtat\\u00e1shoz\"},advlist:{types:\"T\\u00edpusok\",def:\"Alap\\u00e9rtelmezett\",\"lower_alpha\":\"Kisbet\\u0171s abc\",\"lower_greek\":\"Kisbet\\u0171s g\\u00f6r\\u00f6g\",\"lower_roman\":\"Kisbet\\u0171s r\\u00f3mai\",\"upper_alpha\":\"Nagybet\\u0171s ABC\",\"upper_roman\":\"Nagybet\\u0171s r\\u00f3mai\",circle:\"Karika\",disc:\"P\\u00f6tty\",square:\"N\\u00e9gyzet\"},colors:{\"333300\":\"S\\u00f6t\\u00e9t ol\\u00edv\",\"993300\":\"\\u00c9g\\u0151 narancs\",\"000000\":\"Fekete\",\"003300\":\"S\\u00f6t\\u00e9t z\\u00f6ld\",\"003366\":\"S\\u00f6t\\u00e9t az\\u00far\",\"000080\":\"Tenger k\\u00e9k\",\"333399\":\"Indig\\u00f3\",\"333333\":\"Nagyon s\\u00f6t\\u00e9tsz\\u00fcrke\",\"800000\":\"Gesztenyebarna\",FF6600:\"Narancs\",\"808000\":\"Ol\\u00edv\",\"008000\":\"Z\\u00f6ld\",\"008080\":\"P\\u00e1vak\\u00e9k\",\"0000FF\":\"K\\u00e9k\",\"666699\":\"Sz\\u00fcrk\\u00e9s k\\u00e9k\",\"808080\":\"Sz\\u00fcrke\",FF0000:\"V\\u00f6r\\u00f6s\",FF9900:\"Borosty\\u00e1ns\\u00e1rga\",\"99CC00\":\"S\\u00e1rg\\u00e1s z\\u00f6ld\",\"339966\":\"Tengerz\\u00f6ld\",\"33CCCC\":\"T\\u00fcrk\\u00edz\",\"3366FF\":\"Kir\\u00e1lyk\\u00e9k\",\"800080\":\"B\\u00edbor\",\"999999\":\"K\\u00f6z\\u00e9psz\\u00fcrke\",FF00FF:\"B\\u00edborv\\u00f6r\\u00f6s\",FFCC00:\"Arany\",FFFF00:\"S\\u00e1rga\",\"00FF00\":\"Vil\\u00e1gos borosty\\u00e1n\",\"00FFFF\":\"V\\u00edz\",\"00CCFF\":\"\\u00c9gk\\u00e9k\",\"993366\":\"Barna\",C0C0C0:\"Ez\\u00fcst\",FF99CC:\"R\\u00f3zsasz\\u00edn\",FFCC99:\"Barack\",FFFF99:\"Vil\\u00e1gos s\\u00e1rga\",CCFFCC:\"Halv\\u00e1ny z\\u00f6ld\",CCFFFF:\"Halv\\u00e1ny ci\\u00e1n\",\"99CCFF\":\"Vil\\u00e1gos \\u00e9gk\\u00e9k\",CC99FF:\"Szilvak\\u00e9k\",FFFFFF:\"Feh\\u00e9r\"},aria:{\"rich_text_area\":\"Rich Text mez\\u0151\"},wordcount:{words:\"Szavak sz\\u00e1ma: \"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/hy.js",
    "content": "tinyMCE.addI18n({hy:{common:{\"more_colors\":\"\\u0547\\u0561\\u057f \\u0563\\u0578\\u0582\\u0575\\u0576\\u0565\\u0580\",\"invalid_data\":\"\\u054d\\u056d\\u0561\\u056c: \\u0546\\u0565\\u0580\\u0561\\u056e\\u057e\\u0561\\u056e \\u0567 \\u057d\\u056d\\u0561\\u056c \\u0561\\u0580\\u056a\\u0565\\u0584, \\u0563\\u0578\\u0582\\u0576\\u0561\\u0576\\u0577\\u057e\\u0561\\u056e \\u0567 \\u056f\\u0561\\u0580\\u0574\\u056b\\u0580\\u0578\\u057e\",\"popup_blocked\":\"Sorry, but we have noticed that your popup-blocker has disabled a window that provides application functionality. You will need to disable popup blocking on this site in order to fully utilize this tool\",\"clipboard_no_support\":\"\\u054f\\u057e\\u0575\\u0561\\u056c \\u057a\\u0561\\u0570\\u056b\\u0576 \\u0579\\u056b \\u0568\\u0576\\u0564\\u0578\\u0582\\u0576\\u057e\\u0578\\u0582\\u0574 \\u0541\\u0565\\u0580 \\u0562\\u0580\\u0561\\u0578\\u0582\\u0566\\u0565\\u0580\\u056b \\u056f\\u0578\\u0572\\u0574\\u056b\\u0581, \\u0585\\u0563\\u057f\\u0561\\u0563\\u0578\\u0580\\u056e\\u0565\\u0584 \\u0570\\u0561\\u057a\\u0561\\u057e\\u0578\\u0582\\u0574\\u0576\\u0565\\u0580\",\"clipboard_msg\":\"\\u054a\\u0561\\u057f\\u0573\\u0565\\u0576\\u0565\\u056c / \\u053f\\u057f\\u0580\\u0565\\u056c / \\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c (\\u0574\\u0561\\u057f\\u0579\\u0565\\u056c\\u056b \\u0579\\u0567 Mozilla \\u0587 Firefox \\u0562\\u0580\\u0561\\u0578\\u0582\\u0566\\u0565\\u0580\\u0576\\u0565\\u0580\\u0578\\u0582\\u0574) \\\\ n \\u0541\\u0565\\u0566 \\u0570\\u0565\\u057f\\u0561\\u0584\\u0580\\u0584\\u056b\\u055e\\u0580 \\u0567 \\u0561\\u0575\\u0564 \\u056b\\u0576\\u0586\\u0578\\u0580\\u0574\\u0561\\u0581\\u056b\\u0561\\u0576\",\"not_set\":\"- \\u0568\\u0576\\u057f\\u0580\\u0565\\u056c -\",\"class_name\":\"\\u0534\\u0561\\u057d\",browse:\"\\u0534\\u056b\\u057f\\u0565\\u056c\",close:\"\\u0553\\u0561\\u056f\\u0565\\u056c\",cancel:\"\\u0549\\u0565\\u0572\\u0575\\u0561\\u056c\",update:\"\\u0539\\u0561\\u0580\\u0574\\u0561\\u0581\\u0576\\u0565\\u056c\",insert:\"\\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c\",apply:\"\\u0540\\u0561\\u057d\\u057f\\u0561\\u057f\\u0565\\u056c\",\"edit_confirm\":\"\\u0442\\u0440\\u0435\\u0431\\u0443\\u0435\\u0442\\u0441\\u044f \\u0438\\u0441\\u043f\\u043e\\u043b\\u044c\\u0437\\u043e\\u0432\\u0430\\u0442\\u044c WYSIWYG \\u0440\\u0435\\u0436\\u0438\\u043c \\u0434\\u043b\\u044f \\u044d\\u0442\\u043e\\u0433\\u043e \\u043f\\u043e\\u043b\\u044f?\",\"invalid_data_number\":\"{#field} must be a number\",\"invalid_data_min\":\"{#field} must be a number greater than {#min}\",\"invalid_data_size\":\"{#field} must be a number or percentage\",value:\"(value)\"},contextmenu:{full:\"\\u0538\\u057d\\u057f \\u056c\\u0561\\u0575\\u0576\\u0578\\u0582\\u0569\\u0575\\u0561\\u0576\",right:\"\\u0538\\u057d\\u057f \\u0561\\u057b \\u0565\\u0566\\u0580\\u056b\",center:\"\\u053f\\u0565\\u0576\\u057f\\u0580\\u0578\\u0576\\u0561\\u0581\\u0576\\u0565\\u056c\",left:\"\\u0538\\u057d\\u057f \\u0571\\u0561\\u056d \\u0565\\u0566\\u0580\\u056b\",align:\"\\u0540\\u0561\\u057e\\u0561\\u057d\\u0561\\u0580\\u0565\\u0581\\u0578\\u0582\\u0574\"},insertdatetime:{\"day_short\":\"\\u053f\\u056b\\u0580, \\u0535\\u0580\\u056f, \\u0535\\u0580\\u0584, \\u0549\\u0580\\u0584, \\u0540\\u0576\\u0563, \\u0548\\u0582\\u0580\\u0562, \\u0547\\u0562\\u0569, \\u053f\\u056b\\u0580\",\"day_long\":\"\\u056f\\u056b\\u0580\\u0561\\u056f\\u056b, \\u0565\\u0580\\u056f\\u0578\\u0582\\u0577\\u0561\\u0562\\u0569\\u056b, \\u0565\\u0580\\u0565\\u0584\\u0577\\u0561\\u0562\\u0569\\u056b, \\u0579\\u0578\\u0580\\u0565\\u0584\\u0577\\u0561\\u0562\\u0569\\u056b, \\u0570\\u056b\\u0576\\u0563\\u0577\\u0561\\u0562\\u0569\\u056b, \\u0578\\u0582\\u0580\\u0562\\u0561\\u0569, \\u0577\\u0561\\u0562\\u0561\\u0569, \\u056f\\u056b\\u0580\\u0561\\u056f\\u056b\",\"months_short\":\"\\u0570\\u0578\\u0582\\u0576, \\u0583\\u0565\\u057f, \\u0574\\u0561\\u0580\\u057f, \\u0561\\u057a\\u0580, \\u0574\\u0561\\u0575\\u056b\\u057d, \\u0570\\u0578\\u0582\\u0576, \\u0570\\u0578\\u0582\\u056c, \\u0585\\u0563\\u057d\\u057f, \\u057d\\u0565\\u057a\\u057f, \\u0570\\u0578\\u056f\\u057f, \\u0576\\u0578\\u0575, \\u0564\\u0565\\u056f\",\"months_long\":\"\\u0570\\u0578\\u0582\\u0576\\u057e\\u0561\\u0580, \\u0583\\u0565\\u057f\\u0580\\u057e\\u0561\\u0580, \\u0574\\u0561\\u0580\\u057f, \\u0561\\u057a\\u0580\\u056b\\u056c, \\u0574\\u0561\\u0575\\u056b\\u057d, \\u0570\\u0578\\u0582\\u0576\\u056b\\u057d, \\u0570\\u0578\\u0582\\u056c\\u056b\\u057d, \\u0585\\u0563\\u0578\\u057d\\u057f\\u0578\\u057d, \\u057d\\u0565\\u057a\\u057f\\u0565\\u0574\\u0562\\u0565\\u0580, \\u0570\\u0578\\u056f\\u057f\\u0565\\u0574\\u0562\\u0565\\u0580, \\u0576\\u0578\\u0575\\u0565\\u0574\\u0562\\u0565\\u0580, \\u0564\\u0565\\u056f\\u057f\\u0565\\u0574\\u0562\\u0565\\u0580\",\"inserttime_desc\":\"\\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c \\u056a\\u0561\\u0574\\u0561\\u0576\\u0561\\u056f\",\"insertdate_desc\":\"\\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c \\u0561\\u0574\\u057d\\u0561\\u0569\\u056b\\u057e\",\"time_fmt\":\"% H:% M:% S\",\"date_fmt\":\"% d.% m.% Y\"},print:{\"print_desc\":\"\\u054f\\u057a\\u0565\\u056c\"},preview:{\"preview_desc\":\"\\u0534\\u056b\\u057f\\u0565\\u056c\"},directionality:{\"rtl_desc\":\"\\u0548\\u0582\\u0572\\u0572\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\\u0568\\u055d \\u0561\\u057b\\u056b\\u0581 \\u0571\\u0561\\u056d\",\"ltr_desc\":\"\\u0548\\u0582\\u0572\\u0572\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\\u0568\\u055d \\u0571\\u0561\\u056d\\u056b\\u0581 \\u0561\\u057b\"},layer:{content:\"\\u0546\\u0578\\u0580 \\u0577\\u0565\\u0580\\u057f ...\",\"absolute_desc\":\"\\u053f\\u056b\\u0580\\u0561\\u057c\\u0565\\u056c \\u0562\\u0561\\u0581\\u0561\\u0580\\u0571\\u0561\\u056f \\u057f\\u0565\\u0572\\u0561\\u056f\\u0561\\u0575\\u0578\\u0582\\u0574\",\"backward_desc\":\"\\u054f\\u0565\\u0572\\u0561\\u0583\\u0578\\u056d\\u0565\\u056c \\u0565\\u057f\",\"forward_desc\":\"\\u054e\\u0565\\u0580\\u0587\",\"insertlayer_desc\":\"\\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c \\u0576\\u0578\\u0580 \\u0577\\u0565\\u0580\\u057f\"},save:{\"save_desc\":\"\\u054a\\u0561\\u0570\\u057a\\u0561\\u0576\\u0565\\u056c\",\"cancel_desc\":\"\\u0549\\u0565\\u0572\\u0561\\u0580\\u056f\\u0565\\u056c \\u0562\\u0561\\u056c\\u0561\\u0580 \\u0583\\u0578\\u0583\\u0578\\u056d\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\\u0576\\u0565\\u0580\\u0568\"},nonbreaking:{\"nonbreaking_desc\":\"\\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c \\u0562\\u0561\\u0581\\u0561\\u0580\\u056f\"},iespell:{download:\"ieSpell \\u057a\\u056c\\u0561\\u0563\\u056b\\u0576\\u0568 \\u0579\\u056b \\u0563\\u057f\\u0576\\u057e\\u0565\\u056c\\u0589 \\u0551\\u0561\\u0576\\u056f\\u0561\\u0576\\u0578\\u0582\\u055e\\u0574 \\u0565\\u0584 \\u057f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c\",\"iespell_desc\":\"\\u054f\\u0561\\u057c\\u0561\\u057d\\u056d\\u0561\\u056c\\u0576\\u0565\\u0580\\u056b \\u057d\\u057f\\u0578\\u0582\\u0563\\u0578\\u0582\\u0574\"},advhr:{\"advhr_desc\":\"\\u0540\\u0561\\u0580\\u056b\\u0566\\u0578\\u0576\\u0561\\u056f\\u0561\\u0576 \\u0562\\u0561\\u056a\\u0561\\u0576\\u056b\\u0579\",\"delta_height\":\"\",\"delta_width\":\"\"},emotions:{\"emotions_desc\":\"\\u054d\\u0574\\u0561\\u0575\\u056c\\u056b\\u056f\\u0576\\u0565\\u0580\",\"delta_height\":\"\",\"delta_width\":\"\"},searchreplace:{\"replace_desc\":\"\\u0548\\u0580\\u0578\\u0576\\u0565\\u056c / \\u0553\\u0578\\u0583\\u0578\\u056d\\u0565\\u056c\",\"search_desc\":\"\\u0548\\u0580\\u0578\\u0576\\u0565\\u056c\",\"delta_width\":\"\",\"delta_height\":\"\"},advimage:{\"delta_width\":\"200\",\"image_desc\":\"\\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c / \\u0583\\u0578\\u0583\\u0578\\u056d\\u0565\\u056c \\u0576\\u056f\\u0561\\u0580\",\"delta_height\":\"\"},advlink:{\"delta_width\":\"200\",\"link_desc\":\"\\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c / \\u0583\\u0578\\u0583\\u0578\\u056d\\u0565\\u056c \\u0570\\u0572\\u0578\\u0582\\u0574\",\"delta_height\":\"\"},xhtmlxtras:{\"attribs_desc\":\"\\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c / \\u0583\\u0578\\u0583\\u0578\\u056d\\u0565\\u056c \\u0561\\u057f\\u0580\\u056b\\u0562\\u0578\\u0582\\u057f\\u0576\\u0565\\u0580\\u0568\",\"ins_desc\":\"Insertion\",\"del_desc\":\"Deletion\",\"acronym_desc\":\"Acronym\",\"abbr_desc\":\"Abbreviation\",\"cite_desc\":\"Citation\",\"attribs_delta_height\":\"\",\"attribs_delta_width\":\"\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\"},style:{desc:\"\\u053d\\u0574\\u0562\\u0561\\u0563\\u0580\\u0565\\u056c CSS \\u0578\\u0573\\u0565\\u0580\\u0568\",\"delta_height\":\"\",\"delta_width\":\"\"},paste:{\"selectall_desc\":\"\\u0538\\u0576\\u057f\\u0580\\u0565\\u056c \\u0562\\u0578\\u056c\\u0578\\u0580\\u0568\",\"paste_word_desc\":\"\\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c Word \\u056e\\u0580\\u0561\\u0563\\u0580\\u056b\\u0581\",\"paste_text_desc\":\"\\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c \\u0578\\u0580\\u057a\\u0565\\u057d \\u057f\\u0565\\u0584\\u057d\\u057f\",\"plaintext_mode\":\"Paste is now in plain text mode. Click again to toggle back to regular paste mode.\",\"plaintext_mode_sticky\":\"Paste is now in plain text mode. Click again to toggle back to regular paste mode. After you paste something you will be returned to regular paste mode.\"},\"paste_dlg\":{\"word_title\":\"\\u0555\\u0563\\u057f\\u0561\\u0563\\u0578\\u0580\\u056e\\u0565\\u0584 CTRL + V \\u057a\\u0561\\u057f\\u0573\\u0565\\u0576\\u057e\\u0561\\u056e \\u057f\\u0565\\u0584\\u057d\\u057f\\u056b \\u057f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0574\\u0561\\u0576 \\u0570\\u0561\\u0574\\u0561\\u0580\",\"text_linebreaks\":\"\\u054a\\u0561\\u0570\\u057a\\u0561\\u0576\\u0565\\u056c \\u057f\\u0578\\u0572\\u0561\\u0564\\u0561\\u0580\\u0571\\u0565\\u0580\\u0568\",\"text_title\":\"\\u0555\\u0563\\u057f\\u0561\\u0563\\u0578\\u0580\\u056e\\u0565\\u0584 CTRL + V \\u057a\\u0561\\u057f\\u0573\\u0565\\u0576\\u057e\\u0561\\u056e \\u057f\\u0565\\u0584\\u057d\\u057f\\u056b \\u057f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0574\\u0561\\u0576 \\u0570\\u0561\\u0574\\u0561\\u0580\"},table:{\"cellprops_delta_width\":\"30\",cell:\"\\u042f\\u0447\\u0435\\u0439\\u043a\\u0430\",col:\"\\u041f\\u043e\\u043b\\u0435\",row:\"\\u0421\\u0442\\u0440\\u043e\\u043a\\u0430\",del:\"\\u0423\\u0434\\u0430\\u043b\\u0438\\u0442\\u044c \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0443\",\"copy_row_desc\":\"\\u041a\\u043e\\u043f\\u0438\\u0440\\u043e\\u0432\\u0430\\u0442\\u044c \\u0441\\u0442\\u0440\\u043e\\u043a\\u0443 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u044b\",\"cut_row_desc\":\"\\u0412\\u044b\\u0440\\u0435\\u0437\\u0430\\u0442\\u044c \\u0441\\u0442\\u0440\\u043e\\u043a\\u0443 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u044b\",\"paste_row_after_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u044c \\u0441\\u0442\\u0440\\u043e\\u043a\\u0443 \\u043f\\u043e\\u0441\\u043b\\u0435\",\"paste_row_before_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u044c \\u0441\\u0442\\u0440\\u043e\\u043a\\u0443 \\u0434\\u043e\",\"props_desc\":\"\\u0421\\u0432\\u043e\\u0439\\u0441\\u0442\\u0432\\u0430 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u044b\",\"cell_desc\":\"\\u0421\\u0432\\u043e\\u0439\\u0441\\u0442\\u0432\\u0430 \\u044f\\u0447\\u0435\\u0439\\u043a\\u0438 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u044b\",\"row_desc\":\"\\u0421\\u0432\\u043e\\u0439\\u0441\\u0442\\u0432\\u0430 \\u0441\\u0442\\u0440\\u043e\\u043a\\u0435 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u044b\",\"merge_cells_desc\":\"\\u041e\\u0431\\u044a\\u0435\\u0434\\u0438\\u043d\\u0438\\u0442\\u044c \\u044f\\u0447\\u0435\\u0439\\u043a\\u0438\",\"split_cells_desc\":\"\\u0420\\u0430\\u0437\\u0434\\u0435\\u043b\\u0438\\u0442\\u044c \\u044f\\u0447\\u0435\\u0439\\u043a\\u0438\",\"delete_col_desc\":\"\\u0423\\u0434\\u0430\\u043b\\u0438\\u0442\\u044c \\u0441\\u0442\\u043e\\u043b\\u0431\\u0435\\u0446\",\"col_after_desc\":\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\u0441\\u0442\\u043e\\u043b\\u0431\\u0435\\u0446 \\u043f\\u043e\\u0441\\u043b\\u0435\",\"col_before_desc\":\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\u0441\\u0442\\u043e\\u043b\\u0431\\u0435\\u0446 \\u0434\\u043e\",\"delete_row_desc\":\"\\u0423\\u0434\\u0430\\u043b\\u0438\\u0442\\u044c \\u0441\\u0442\\u0440\\u043e\\u043a\\u0443\",\"row_after_desc\":\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\u0441\\u0442\\u0440\\u043e\\u043a\\u0443 \\u043f\\u043e\\u0441\\u043b\\u0435\",\"row_before_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u044c \\u0441\\u0442\\u0440\\u043e\\u043a\\u0443 \\u0434\\u043e\",desc:\"\\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c \\u0576\\u0578\\u0580 \\u0561\\u0572\\u0575\\u0578\\u0582\\u057d\\u0561\\u056f\",\"merge_cells_delta_height\":\"\",\"merge_cells_delta_width\":\"\",\"table_delta_height\":\"\",\"table_delta_width\":\"\",\"cellprops_delta_height\":\"\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\"},autosave:{\"unload_msg\":\"\\u0418\\u0437\\u043c\\u0435\\u043d\\u0435\\u043d\\u0438\\u044f, \\u043a\\u043e\\u0442\\u043e\\u0440\\u044b\\u0435 \\u0432\\u044b \\u0441\\u0434\\u0435\\u043b\\u0430\\u043b\\u0438, \\u0431\\u0443\\u0434\\u0443\\u0442 \\u043f\\u043e\\u0442\\u0435\\u0440\\u044f\\u043d\\u044b, \\u0435\\u0441\\u043b\\u0438 \\u0432\\u044b \\u043f\\u0435\\u0440\\u0435\\u0439\\u0434\\u0435\\u0442\\u0435 \\u0441 \\u044d\\u0442\\u043e\\u0439 \\u0441\\u0442\\u0440\\u0430\\u043d\\u0438\\u0446\\u044b.\",\"warning_message\":\"If you restore the saved content, you will lose all the content that is currently in the editor.\\n\\nAre you sure you want to restore the saved content?\",\"restore_content\":\"Restore auto-saved content.\"},fullscreen:{desc:\"\\u041f\\u0435\\u0440\\u0435\\u043a\\u043b\\u044e\\u0447\\u0438\\u0442\\u044c\\u0441\\u044f \\u043d\\u0430 \\u0432\\u0435\\u0441\\u044c \\u044d\\u043a\\u0440\\u0430\\u043d\"},media:{edit:\"\\u0420\\u0435\\u0434\\u0430\\u043a\\u0442\\u0438\\u0440\\u043e\\u0432\\u0430\\u0442\\u044c embedded media\",desc:\"\\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c / \\u0583\\u0578\\u0583\\u0578\\u056d\\u0565\\u056c \\u0574\\u0565\\u0564\\u056b\\u0561\",\"delta_height\":\"\",\"delta_width\":\"\"},fullpage:{desc:\"\\u0421\\u0432\\u043e\\u0439\\u0441\\u0442\\u0432\\u0430 \\u0434\\u043e\\u043a\\u0443\\u043c\\u0435\\u043d\\u0442\\u0430\",\"delta_width\":\"\",\"delta_height\":\"\"},template:{desc:\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u044c \\u0448\\u0430\\u0431\\u043b\\u043e\\u043d\\u043d\\u044b\\u0439 \\u043a\\u043e\\u043d\\u0442\\u0435\\u043d\\u0442\"},visualchars:{desc:\"Visual control characters on / off\"},spellchecker:{desc:\"\\u041f\\u0435\\u0440\\u0435\\u043a\\u043b\\u044e\\u0447\\u0438\\u0442\\u044c \\u043f\\u0440\\u043e\\u0432\\u0435\\u0440\\u043a\\u0443\",menu:\"\\u041d\\u0430\\u0441\\u0442\\u0440\\u043e\\u0439\\u043a\\u0438 \\u043f\\u0440\\u043e\\u0432\\u0435\\u0440\\u043a\\u0438\",\"ignore_word\":\"\\u0418\\u0433\\u043d\\u043e\\u0440\\u0438\\u0440\\u043e\\u0432\\u0430\\u0442\\u044c \\u0441\\u043b\\u043e\\u0432\\u043e\",\"ignore_words\":\"\\u0418\\u0433\\u043d\\u043e\\u0440\\u0438\\u0440\\u043e\\u0432\\u0430\\u0442\\u044c \\u0432\\u0441\\u0435\",langs:\"\\u042f\\u0437\\u044b\\u043a\\u0438\",wait:\"\\u041f\\u043e\\u0436\\u0430\\u043b\\u0443\\u0439\\u0441\\u0442\\u0430, \\u043f\\u043e\\u0434\\u043e\\u0436\\u0434\\u0438\\u0442\\u0435 ...\",sug:\"\\u0412\\u0430\\u0440\\u0438\\u0430\\u043d\\u0442\\u044b\",\"no_sug\":\"\\u041d\\u0435\\u0442 \\u0432\\u0430\\u0440\\u0438\\u0430\\u043d\\u0442\\u043e\\u0432\",\"no_mpell\":\"\\u041e\\u0448\\u0438\\u0431\\u043e\\u043a \\u043d\\u0435 \\u043d\\u0430\\u0439\\u0434\\u0435\\u043d\\u043e\",\"learn_word\":\"Learn word\"},pagebreak:{desc:\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u044c \\u0440\\u0430\\u0437\\u0434\\u0435\\u043b\\u0438\\u0442\\u0435\\u043b\\u044c \\u0441\\u0442\\u0440\\u0430\\u043d\\u0438\\u0446\\u044b\"},advlist:{types:\"Types\",def:\"Default\",\"lower_alpha\":\"Lower Alpha\",\"lower_greek\":\"Lower Greek\",\"lower_roman\":\"Lower Roman\",\"upper_alpha\":\"Upper Alpha\",\"upper_roman\":\"Upper Roman\",circle:\"Circle\",disc:\"Disc\",square:\"Square\"},colors:{\"333300\":\"Dark olive\",\"993300\":\"Burnt orange\",\"000000\":\"Black\",\"003300\":\"Dark green\",\"003366\":\"Dark azure\",\"000080\":\"Navy Blue\",\"333399\":\"Indigo\",\"333333\":\"Very dark gray\",\"800000\":\"Maroon\",FF6600:\"Orange\",\"808000\":\"Olive\",\"008000\":\"Green\",\"008080\":\"Teal\",\"0000FF\":\"Blue\",\"666699\":\"Grayish blue\",\"808080\":\"Gray\",FF0000:\"Red\",FF9900:\"Amber\",\"99CC00\":\"Yellow green\",\"339966\":\"Sea green\",\"33CCCC\":\"Turquoise\",\"3366FF\":\"Royal blue\",\"800080\":\"Purple\",\"999999\":\"Medium gray\",FF00FF:\"Magenta\",FFCC00:\"Gold\",FFFF00:\"Yellow\",\"00FF00\":\"Lime\",\"00FFFF\":\"Aqua\",\"00CCFF\":\"Sky blue\",\"993366\":\"Brown\",C0C0C0:\"Silver\",FF99CC:\"Pink\",FFCC99:\"Peach\",FFFF99:\"Light yellow\",CCFFCC:\"Pale green\",CCFFFF:\"Pale cyan\",\"99CCFF\":\"Light sky blue\",CC99FF:\"Plum\",FFFFFF:\"White\"},aria:{\"rich_text_area\":\"Rich Text Area\"},wordcount:{words:\"Words\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/it.js",
    "content": "tinyMCE.addI18n({it:{common:{\"more_colors\":\"Colori aggiuntivi...\",\"invalid_data\":\"Errore: valori inseriti non validi, sono marcati in rosso.\",\"popup_blocked\":\"Spiacente, ma il blocco popup ha disabilitato una finestra che fornisce funzionalit\\u00e0 dell\\'applicazione. Si deve disabilitare il blocco popup per questo sito per poter utlizzare appieno questo strumento.\",\"clipboard_no_support\":\"Attualmente non supportato dal  browser in uso, usare le scorciatoie da tastiera.\",\"clipboard_msg\":\"Copia/Taglia/Incolla non \\u00e8 disponibile in Mozilla e Firefox.\\nSi desidera avere maggiori informazioni su questo problema?\",\"not_set\":\"-- Non impostato --\",\"class_name\":\"Classe\",browse:\"Sfoglia\",close:\"Chiudi\",cancel:\"Annulla\",update:\"Aggiorna\",insert:\"Inserisci\",apply:\"Applica\",\"edit_confirm\":\"Usare la modalit\\u00e0 WYSIWYG per questa textarea?\",\"invalid_data_number\":\"{#field} deve essere un numero\",\"invalid_data_min\":\"{#field} deve essere un numero maggiore di {#min}\",\"invalid_data_size\":\"{#field} deve essere un numero o una percentuale\",value:\"(valore)\"},contextmenu:{full:\"Giustifica\",right:\"Allinea a destra\",center:\"Centra\",left:\"Allinea a sinistra\",align:\"Allineamento\"},insertdatetime:{\"day_short\":\"Dom,Lun,Mar,Mer,Gio,Ven,Sab,Dom\",\"day_long\":\"Domenica,Luned\\u00ec,Marted\\u00ec,Mercoled\\u00ec,Gioved\\u00ec,Venerd\\u00ec,Sabato,Domenica\",\"months_short\":\"Gen,Feb,Mar,Apr,Mag,Giu,Lug,Ago,Set,Ott,Nov,Dic\",\"months_long\":\"Gennaio,Febbraio,Marzo,Aprile,Maggio,Giugno,Luglio,Agosto,Settembre,Ottobre,Novembre,Dicembre\",\"inserttime_desc\":\"Inserisci ora\",\"insertdate_desc\":\"Inserisci data\",\"time_fmt\":\"%H:%M:%S\",\"date_fmt\":\"%Y-%m-%d\"},print:{\"print_desc\":\"Stampa\"},preview:{\"preview_desc\":\"Anteprima\"},directionality:{\"rtl_desc\":\"Direzione da destra a sinistra\",\"ltr_desc\":\"Direzione da sinistra a destra\"},layer:{content:\"Nuovo layer...\",\"absolute_desc\":\"Attiva/Disattiva posizionamento assoluto\",\"backward_desc\":\"Porta in sfondo\",\"forward_desc\":\"Porta in rilievo\",\"insertlayer_desc\":\"Inserisci nuovo layer\"},save:{\"save_desc\":\"Salva\",\"cancel_desc\":\"Cancella tutte le modifiche\"},nonbreaking:{\"nonbreaking_desc\":\"Inserisci uno spazio\"},iespell:{download:\"ieSpell non rilevato. Installarlo ora?\",\"iespell_desc\":\"Esegui controllo ortografico\"},advhr:{\"advhr_desc\":\"Riga orizzontale\",\"delta_height\":\"\",\"delta_width\":\"\"},emotions:{\"emotions_desc\":\"Faccine\",\"delta_height\":\"\",\"delta_width\":\"\"},searchreplace:{\"replace_desc\":\"Trova/Sostituisci\",\"search_desc\":\"Trova\",\"delta_width\":\"\",\"delta_height\":\"\"},advimage:{\"image_desc\":\"Inserisci/modifica immagine\",\"delta_width\":\"\",\"delta_height\":\"\"},advlink:{\"link_desc\":\"Inserisci/modifica collegamento\",\"delta_height\":\"\",\"delta_width\":\"\"},xhtmlxtras:{\"attribs_desc\":\"Inserisci/modifica attributi\",\"ins_desc\":\"Inserimento\",\"del_desc\":\"Cancellamento\",\"acronym_desc\":\"Acronimo\",\"abbr_desc\":\"Abbreviazione\",\"cite_desc\":\"Citazione\",\"attribs_delta_height\":\"\",\"attribs_delta_width\":\"\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\"},style:{desc:\"Modifica stile CSS\",\"delta_height\":\"\",\"delta_width\":\"\"},paste:{\"plaintext_mode\":\"Incolla adesso e in modalit\\u00e0 testo. Clicca nuovamente per tornare alla modalit\\u00e0 normale.\",\"plaintext_mode_sticky\":\"Incolla adesso e in modalit\\u00e0 testo. Clicca nuovamente per tornare alla modalit\\u00e0 normale. Dopo che avrai incollato qualcosa tornerai alla modalit\\u00e0 normale\",\"selectall_desc\":\"Seleziona tutto\",\"paste_word_desc\":\"Incolla da Word\",\"paste_text_desc\":\"Incolla come testo semplice\"},\"paste_dlg\":{\"word_title\":\"Premere CTRL+V sulla tastiera per incollare il testo nella finestra.\",\"text_linebreaks\":\"Mantieni interruzioni di riga\",\"text_title\":\"Premere CTRL+V sulla tastiera per incollare il testo nella finestra.\"},table:{cell:\"Cella\",col:\"Colonna\",row:\"Riga\",del:\"Elimina tabella\",\"copy_row_desc\":\"Copia riga\",\"cut_row_desc\":\"Taglia riga\",\"paste_row_after_desc\":\"Incolla riga dopo\",\"paste_row_before_desc\":\"Incolla riga prima\",\"props_desc\":\"Propriet\\u00e0 tabella\",\"cell_desc\":\"Propriet\\u00e0 cella\",\"row_desc\":\"Propriet\\u00e0 riga\",\"merge_cells_desc\":\"Unisci celle\",\"split_cells_desc\":\"Separa celle\",\"delete_col_desc\":\"Elimina colonna\",\"col_after_desc\":\"Inserisci colonna dopo\",\"col_before_desc\":\"Inserisci colonna prima\",\"delete_row_desc\":\"Elimina riga\",\"row_after_desc\":\"Inserisci riga dopo\",\"row_before_desc\":\"Inserisci riga prima\",desc:\"Inserisci una nuova tabella\",\"merge_cells_delta_height\":\"\",\"merge_cells_delta_width\":\"\",\"table_delta_height\":\"\",\"table_delta_width\":\"\",\"cellprops_delta_height\":\"\",\"cellprops_delta_width\":\"\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\"},autosave:{\"warning_message\":\"Se ripristini i dati salvati automaticamente perderai i dati attuali dell\\'editor\\n\\nSei sicuro di voler ripristinare i dati?.\",\"restore_content\":\"Ripristina i dati salvati automaticamente\",\"unload_msg\":\"I cambiamenti effettuati saranno persi se si abbandona la pagina corrente.\"},fullscreen:{desc:\"Attiva/disattiva modalit\\u00e0 a tutto schermo\"},media:{edit:\"Modifica file multimediale\",desc:\"Inserisci/modifica file multimediale\",\"delta_height\":\"\",\"delta_width\":\"\"},fullpage:{desc:\"Propriet\\u00e0 Documento\",\"delta_width\":\"\",\"delta_height\":\"\"},template:{desc:\"Inserisci contenuto da modello predefinito\"},visualchars:{desc:\"Attiva/disattiva caratteri di controllo visuale.\"},spellchecker:{desc:\"Attiva/disattiva controllo ortografico\",menu:\"Impostazioni controllo ortografico\",\"ignore_word\":\"Ignora parola\",\"ignore_words\":\"Ignora tutto\",langs:\"Lingue\",wait:\"Attendere prego...\",sug:\"Suggerimenti\",\"no_sug\":\"Nessun suggerimento\",\"no_mpell\":\"Nessun errore rilevato.\",\"learn_word\":\"Learn word\"},pagebreak:{desc:\"Inserisci intterruzione di pagina.\"},advlist:{types:\"Tipi\",def:\"Default\",\"lower_alpha\":\"Minuscolo alfanumerico\",\"lower_greek\":\"Minuscolo lettera greca\",\"lower_roman\":\"Minuscolo lettere romane\",\"upper_alpha\":\"Maiuscolo alfanumerico\",\"upper_roman\":\"Maiuscolo lettere romane\",circle:\"Cerchio\",disc:\"Punto\",square:\"Quadrato\"},colors:{\"333300\":\"Verde oliva scuro\",\"993300\":\"Arancio bruciato\",\"000000\":\"Nero\",\"003300\":\"Verde scuro\",\"003366\":\"Azzurro scuro\",\"000080\":\"Blu navy\",\"333399\":\"Indaco\",\"333333\":\"Grigio molto scuro\",\"800000\":\"Marrone\",FF6600:\"Arancione\",\"808000\":\"Verde oliva\",\"008000\":\"Verde\",\"008080\":\"Verde azzurro\",\"0000FF\":\"Blu\",\"666699\":\"Grigio blu\",\"808080\":\"Grigio\",FF0000:\"Rosso\",FF9900:\"Ambra\",\"99CC00\":\"Giallo verde\",\"339966\":\"Verde acqua\",\"33CCCC\":\"Turchese\",\"3366FF\":\"Blu royal\",\"800080\":\"Porpora\",\"999999\":\"Grigio topo\",FF00FF:\"Magenta\",FFCC00:\"Oro\",FFFF00:\"Giallo\",\"00FF00\":\"Lime\",\"00FFFF\":\"Acqua\",\"00CCFF\":\"Blu cielo\",\"993366\":\"Vinaccia\",C0C0C0:\"Argento\",FF99CC:\"Rosa\",FFCC99:\"Pesca\",FFFF99:\"Giallo chiaro\",CCFFCC:\"Verde chiaro\",CCFFFF:\"Ciano chiaro\",\"99CCFF\":\"Blu cielo chiaro\",CC99FF:\"Prugna\",FFFFFF:\"Bianco\"},aria:{\"rich_text_area\":\"Area testo formattato\"},wordcount:{words:\"Parole:\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/ka.js",
    "content": "tinyMCE.addI18n({ka:{common:{\"more_colors\":\"\\u10e1\\u10ee\\u10d5\\u10d0 \\u10e4\\u10d4\\u10e0\\u10d4\\u10d1\\u10d8...\",\"invalid_data\":\"\\u10e8\\u10d4\\u10ea\\u10d3\\u10dd\\u10db\\u10d0: \\u10e8\\u10d4\\u10e7\\u10d5\\u10d0\\u10dc\\u10d8\\u10da\\u10d8\\u10d0 \\u10d0\\u10e0\\u10d0 \\u10e1\\u10ec\\u10dd\\u10e0\\u10d8 \\u10db\\u10dc\\u10d8\\u10e8\\u10d5\\u10dc\\u10da\\u10d4\\u10dd\\u10d1\\u10d0, \\u10d8\\u10e1 \\u10db\\u10dd\\u10dc\\u10d8\\u10e1\\u10dc\\u10e3\\u10da\\u10d8\\u10d0 \\u10ec\\u10d8\\u10d7\\u10da\\u10d0\\u10d3.\",\"popup_blocked\":\"\\u0411\\u043b\\u043e\\u043a\\u0438\\u0440\\u0430\\u0442\\u043e\\u0440 \\u0432\\u0441\\u043f\\u043b\\u044b\\u0432\\u0430\\u044e\\u0449\\u0438\\u0445 \\u043e\\u043a\\u043e\\u043d \\u0437\\u0430\\u043a\\u0440\\u044b\\u043b \\u043d\\u0435\\u043e\\u0431\\u0445\\u043e\\u0434\\u0438\\u043c\\u043e\\u0435 \\u043e\\u043a\\u043d\\u043e. \\u0414\\u043b\\u044f \\u043f\\u043e\\u043b\\u043d\\u043e\\u0446\\u0435\\u043d\\u043d\\u043e\\u0439 \\u0440\\u0430\\u0431\\u043e\\u0442\\u044b, \\u043e\\u0442\\u043a\\u043b\\u044e\\u0447\\u0438\\u0442\\u0435 \\u0431\\u043b\\u043e\\u043a\\u0438\\u0440\\u043e\\u0432\\u043a\\u0443 \\u043d\\u0430 \\u044d\\u0442\\u043e\\u043c \\u0441\\u0430\\u0439\\u0442\\u0435.\",\"clipboard_no_support\":\"\\u10d0\\u10e0 \\u10d0\\u10e5\\u10d5\\u10e1 \\u10d7\\u10e5\\u10d5\\u10d4\\u10dc\\u10d8 \\u10d1\\u10e0\\u10d0\\u10e3\\u10d6\\u10d4\\u10e0\\u10d8\\u10e1 \\u10db\\u10ee\\u10d0\\u10e0\\u10d3\\u10d0\\u10ed\\u10d4\\u10e0\\u10d0. \\u10d2\\u10d0\\u10db\\u10dd\\u10d8\\u10e7\\u10d4\\u10dc\\u10d4\\u10d7 \\u10d9\\u10da\\u10d0\\u10d5\\u10d8\\u10d0\\u10e2\\u10e3\\u10e0\\u10e3\\u10da\\u10d8 \\u10e8\\u10d4\\u10db\\u10dd\\u10d9\\u10da\\u10d4\\u10d1\\u10d4\\u10d1\\u10d8.\",\"clipboard_msg\":\"\\u10d9\\u10dd\\u10de\\u10d8\\u10e0\\u10d4\\u10d1\\u10d0, \\u10d0\\u10db\\u10dd\\u10ed\\u10e0\\u10d0 \\u10d3\\u10d0 \\u10e9\\u10d0\\u10e1\\u10db\\u10d0 Firefox-\\u10e8\\u10d8 \\u10d0\\u10e0 \\u10db\\u10e3\\u10e8\\u10d0\\u10dd\\u10d1\\u10e1.\\\\r\\n\\u10d2\\u10e1\\u10e3\\u10e0\\u10d7 \\u10db\\u10d8\\u10d8\\u10e6\\u10dd\\u10d7 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d8\\u10d7\\u10d8 \\u10d8\\u10dc\\u10e4\\u10dd\\u10e0\\u10db\\u10d0\\u10ea\\u10d8\\u10d0?\",\"not_set\":\"- \\u10d0\\u10e0 \\u10d0\\u10e0\\u10d8\\u10e1 \\u10d3\\u10d0\\u10e7\\u10d4\\u10dc\\u10d4\\u10d1\\u10e3\\u10da\\u10d8 -\",\"class_name\":\"\\u10d9\\u10da\\u10d0\\u10e1\\u10d8\",browse:\"\\u10d3\\u10d0\\u10d7\\u10d5\\u10d0\\u10da\\u10d8\\u10d4\\u10e0\\u10d4\\u10d1\\u10d0\",close:\"\\u10d3\\u10d0\\u10ee\\u10e3\\u10e0\\u10d5\\u10d0\",cancel:\"\\u10d2\\u10d0\\u10e3\\u10e5\\u10db\\u10d4\\u10d1\\u10d0\",update:\"\\u10d2\\u10d0\\u10dc\\u10d0\\u10ee\\u10da\\u10d4\\u10d1\\u10d0\",insert:\"\\u10e9\\u10d0\\u10e1\\u10db\\u10d0\",apply:\"\\u10d2\\u10d0\\u10db\\u10dd\\u10e7\\u10d4\\u10dc\\u10d4\\u10d1\\u10d0\",\"edit_confirm\":\"\\u10d2\\u10d0\\u10db\\u10dd\\u10d5\\u10d8\\u10e7\\u10d4\\u10dc\\u10dd\\u10d7 \\u10d0\\u10db \\u10d5\\u10d4\\u10da\\u10d8\\u10e1\\u10d7\\u10d5\\u10d8\\u10e1 WYSIWYG \\u10e0\\u10d4\\u10df\\u10d8\\u10db\\u10d8?\",\"invalid_data_number\":\"{#field} must be a number\",\"invalid_data_min\":\"{#field} must be a number greater than {#min}\",\"invalid_data_size\":\"{#field} must be a number or percentage\",value:\"(value)\"},contextmenu:{full:\"\\u10e1\\u10d8\\u10d2\\u10d0\\u10dc\\u10d4\\u10d6\\u10d4\",right:\"\\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10d4\\u10dc\\u10d0 \\u10d9\\u10d8\\u10d3\\u10d4\\u10d6\\u10d4\",center:\"\\u10ea\\u10d4\\u10dc\\u10e2\\u10e0\\u10d6\\u10d4\",left:\"\\u10db\\u10d0\\u10e0\\u10ea\\u10ee\\u10d4\\u10dc\\u10d0 \\u10d9\\u10d8\\u10d3\\u10d4\\u10d6\\u10d4\",align:\"\\u10d2\\u10d0\\u10e1\\u10ec\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\"},insertdatetime:{\"day_short\":\"\\u10d9\\u10d5,\\u10dd\\u10e0\\u10e8,\\u10e1\\u10d0\\u10db\\u10e8,\\u10dd\\u10d7\\u10ee\\u10e8,\\u10ee\\u10e3\\u10d7,\\u10de\\u10d0\\u10e0,\\u10e8\\u10d0\\u10d1,\\u10d9\\u10d5\",\"day_long\":\"\\u10d9\\u10d5\\u10d8\\u10e0\\u10d0,\\u10dd\\u10e0\\u10e8\\u10d0\\u10d1\\u10d0\\u10d7\\u10d8,\\u10e1\\u10d0\\u10db\\u10e8\\u10d0\\u10d1\\u10d0\\u10d7\\u10d8,\\u10dd\\u10d7\\u10ee\\u10e8\\u10d0\\u10d1\\u10d0\\u10d7\\u10d8,\\u10ee\\u10e3\\u10d7\\u10e8\\u10d0\\u10d1\\u10d0\\u10d7\\u10d8,\\u10de\\u10d0\\u10e0\\u10d0\\u10e1\\u10d9\\u10d4\\u10d5\\u10d8,\\u10e8\\u10d0\\u10d1\\u10d0\\u10d7\\u10d8,\\u10d9\\u10d5\\u10d8\\u10e0\\u10d0\",\"months_short\":\"\\u10d8\\u10d0\\u10dc,\\u10d7\\u10d4\\u10d1,\\u10db\\u10d0\\u10e0\\u10e2,\\u10d0\\u10de\\u10e0,\\u10db\\u10d0\\u10d8\\u10e1\\u10d8,\\u10d8\\u10d5\\u10dc,\\u10d8\\u10d5\\u10da,\\u10d0\\u10d2\\u10d5,\\u10e1\\u10d4\\u10e5,\\u10dd\\u10e5\\u10e2,\\u10dc\\u10dd\\u10d4\\u10db,\\u10d3\\u10d4\\u10d9\",\"months_long\":\"\\u10d8\\u10d0\\u10dc\\u10d5\\u10d0\\u10e0\\u10d8,\\u10d7\\u10d4\\u10d1\\u10d4\\u10e0\\u10d5\\u10d0\\u10da\\u10d8,\\u10db\\u10d0\\u10e0\\u10e2\\u10d8,\\u10d0\\u10de\\u10e0\\u10d8\\u10da\\u10d8,\\u10db\\u10d0\\u10d8\\u10e1\\u10d8,\\u10d8\\u10d5\\u10dc\\u10d8\\u10e1\\u10d8,\\u10d8\\u10d5\\u10da\\u10d8\\u10e1\\u10d8,\\u10d0\\u10d2\\u10d5\\u10d8\\u10e1\\u10e2\\u10dd,\\u10e1\\u10d4\\u10e5\\u10e2\\u10d4\\u10db\\u10d1\\u10d4\\u10e0\\u10d8,\\u10dd\\u10e5\\u10e2\\u10dd\\u10db\\u10d1\\u10d4\\u10e0\\u10d8,\\u10dc\\u10dd\\u10d4\\u10db\\u10d1\\u10d4\\u10e0\\u10d8,\\u10d3\\u10d4\\u10d9\\u10d4\\u10db\\u10d1\\u10d4\\u10e0\\u10d8\",\"inserttime_desc\":\"\\u10d3\\u10e0\\u10dd\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0\",\"insertdate_desc\":\"\\u10d7\\u10d0\\u10e0\\u10d8\\u10e6\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0\",\"time_fmt\":\"%H:%M:%S\",\"date_fmt\":\"%d.%m.%Y\"},print:{\"print_desc\":\"\\u10d1\\u10d4\\u10ed\\u10d3\\u10d5\\u10d0\"},preview:{\"preview_desc\":\"\\u10ec\\u10d8\\u10dc\\u10d0\\u10e1\\u10ec\\u10d0\\u10e0\\u10d8 \\u10d3\\u10d0\\u10d7\\u10d5\\u10d0\\u10da\\u10d8\\u10d4\\u10e0\\u10d4\\u10d1\\u10d0\"},directionality:{\"rtl_desc\":\"\\u10db\\u10d8\\u10db\\u10d0\\u10e0\\u10d7\\u10e3\\u10da\\u10d4\\u10d1\\u10d0 \\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10dc\\u10d8\\u10d3\\u10d0\\u10dc \\u10db\\u10d0\\u10e0\\u10ea\\u10ee\\u10dc\\u10d8\\u10d5\",\"ltr_desc\":\"\\u10db\\u10d8\\u10db\\u10d0\\u10e0\\u10d7\\u10e3\\u10da\\u10d4\\u10d1\\u10d0 \\u10db\\u10d0\\u10e0\\u10ea\\u10ee\\u10dc\\u10d8\\u10d3\\u10d0\\u10dc \\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10dc\\u10d8\\u10d5\"},layer:{content:\"\\u10d0\\u10ee\\u10d0\\u10da\\u10d8 \\u10e8\\u10e0\\u10d4\",\"absolute_desc\":\"\\u10d0\\u10d1\\u10e1\\u10dd\\u10da\\u10e3\\u10e2\\u10e3\\u10e0\\u10d8 \\u10de\\u10dd\\u10d6\\u10d8\\u10ea\\u10d8\\u10e0\\u10d4\\u10d1\\u10d0\",\"backward_desc\":\"\\u10e3\\u10d9\\u10d0\\u10dc\\u10d0 \\u10de\\u10da\\u10d0\\u10dc\\u10d6\\u10d4\",\"forward_desc\":\"\\u10ec\\u10d8\\u10dc\\u10d0 \\u10de\\u10da\\u10d0\\u10dc\\u10d6\\u10d4\",\"insertlayer_desc\":\"\\u10e8\\u10e0\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0\"},save:{\"save_desc\":\"\\u10e8\\u10d4\\u10dc\\u10d0\\u10ee\\u10d5\\u10d0\",\"cancel_desc\":\"\\u10e7\\u10d5\\u10d4\\u10da\\u10d0 \\u10ea\\u10d5\\u10da\\u10d8\\u10da\\u10d4\\u10d1\\u10d8\\u10e1 \\u10d2\\u10d0\\u10e3\\u10e5\\u10db\\u10d4\\u10d1\\u10d0\"},nonbreaking:{\"nonbreaking_desc\":\"\\u10e3\\u10ec\\u10e7\\u10d5\\u10d4\\u10e2\\u10d8 \\u10d3\\u10d0\\u10e8\\u10dd\\u10e0\\u10d4\\u10d1\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0\"},iespell:{download:\"ieSpell \\u10d0\\u10e0 \\u10d0\\u10e0\\u10d8\\u10e1 \\u10dc\\u10d0\\u10de\\u10dd\\u10d5\\u10dc\\u10d8. \\u10d2\\u10e1\\u10e3\\u10e0\\u10d7 \\u10d3\\u10d0\\u10e7\\u10d4\\u10dc\\u10d4\\u10d1\\u10d0?\",\"iespell_desc\":\"\\u10dd\\u10e0\\u10d7\\u10dd\\u10d2\\u10e0\\u10d0\\u10e4\\u10d8\\u10d8\\u10e1 \\u10e8\\u10d4\\u10db\\u10dd\\u10ec\\u10db\\u10d4\\u10d1\\u10d0\"},advhr:{\"advhr_desc\":\"\\u10d2\\u10d0\\u10db\\u10e7\\u10dd\\u10e4\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0\",\"delta_height\":\"\",\"delta_width\":\"\"},emotions:{\"emotions_desc\":\"\\u10e1\\u10db\\u10d0\\u10d8\\u10da\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0\",\"delta_height\":\"\",\"delta_width\":\"\"},searchreplace:{\"replace_desc\":\"\\u10e8\\u10d4\\u10ea\\u10d5\\u10da\\u10d0\",\"search_desc\":\"\\u10de\\u10dd\\u10d5\\u10dc\\u10d0\",\"delta_width\":\"\",\"delta_height\":\"\"},advimage:{\"delta_width\":\"200\",\"image_desc\":\"\\u10d2\\u10d0\\u10db\\u10dd\\u10e1\\u10d0\\u10ee\\u10e3\\u10da\\u10d4\\u10d1\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0/\\u10e0\\u10d4\\u10d3\\u10d0\\u10e5\\u10e2\\u10d8\\u10e0\\u10d4\\u10d1\\u10d0\",\"delta_height\":\"\"},advlink:{\"delta_width\":\"200\",\"link_desc\":\"\\u10d1\\u10db\\u10e3\\u10da\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0/\\u10e0\\u10d4\\u10d3\\u10d0\\u10e5\\u10e2\\u10d8\\u10e0\\u10d4\\u10d1\\u10d0\",\"delta_height\":\"\"},xhtmlxtras:{\"attribs_desc\":\"\\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0/\\u10e8\\u10d4\\u10ea\\u10d5\\u10da\\u10d0\",\"ins_desc\":\"\\u10e8\\u10d4\\u10ea\\u10d5\\u10da\\u10d0\",\"del_desc\":\"\\u10ec\\u10d0\\u10e8\\u10da\\u10d0\",\"acronym_desc\":\"\\u10d0\\u10d1\\u10e0\\u10d4\\u10d5\\u10d8\\u10d0\\u10ea\\u10d8\\u10d0\",\"abbr_desc\":\"\\u10e8\\u10d4\\u10db\\u10dd\\u10d9\\u10da\\u10d4\\u10d1\\u10d0\",\"cite_desc\":\"\\u10ea\\u10d8\\u10e2\\u10d8\\u10e0\\u10d4\\u10d1\\u10d0\",\"attribs_delta_height\":\"\",\"attribs_delta_width\":\"\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\"},style:{desc:\"CSS \\u10e1\\u10e2\\u10d8\\u10da\\u10d8\\u10e1 \\u10e0\\u10d4\\u10d3\\u10d0\\u10e5\\u10e2\\u10d8\\u10e0\\u10d4\\u10d1\\u10d0\",\"delta_height\":\"\",\"delta_width\":\"\"},paste:{\"plaintext_mode\":\"Paste is now in plain text mode. Click again to toggle back to regular paste mode.\",\"plaintext_mode_sticky\":\"Paste is now in plain text mode. Click again to toggle back to regular paste mode. After you paste something you will be returned to regular paste mode.\",\"selectall_desc\":\"\\u10e2\\u10d5\\u10d4\\u10da\\u10d0\\u10e4\\u10e0\\u10d8\\u10e1 \\u10db\\u10dd\\u10dc\\u10d8\\u10e8\\u10d5\\u10dc\\u10d0\",\"paste_word_desc\":\"Word-\\u10d8\\u10d3\\u10dc \\u10e9\\u10d0\\u10e1\\u10db\\u10d0\",\"paste_text_desc\":\"\\u10e9\\u10d0\\u10e1\\u10d5\\u10d8 \\u10e0\\u10dd\\u10d2\\u10dd\\u10e0\\u10ea \\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\"},\"paste_dlg\":{\"word_title\":\"\\u0418\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\\u10e1 \\u10e9\\u10d0\\u10e1\\u10d0\\u10e1\\u10db\\u10d4\\u10da\\u10d0\\u10d3 \\u10d2\\u10d0\\u10db\\u10dd\\u10d8\\u10e7\\u10d4\\u10dc\\u10d4\\u10d7 \\u10d9\\u10da\\u10d0\\u10d5\\u10d8\\u10d0\\u10e2\\u10e3\\u10e0\\u10e3\\u10da\\u10d8 \\u10d9\\u10dd\\u10db\\u10d1\\u10d8\\u10dc\\u10d0\\u10ea\\u10d8\\u10d0 CTRL+V.\",\"text_linebreaks\":\"\\u10d2\\u10d0\\u10d3\\u10d0\\u10e2\\u10d0\\u10dc\\u10d8\\u10da\\u10d8 \\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d4\\u10d1\\u10d8\\u10e1 \\u10e8\\u10d4\\u10dc\\u10d0\\u10ee\\u10d5\\u10d0\",\"text_title\":\"\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\\u10e1 \\u10e9\\u10d0\\u10e1\\u10d0\\u10e1\\u10db\\u10d4\\u10da\\u10d0\\u10d3 \\u10d2\\u10d0\\u10db\\u10dd\\u10d8\\u10e7\\u10d4\\u10dc\\u10d4\\u10d7 \\u10d9\\u10da\\u10d0\\u10d5\\u10d8\\u10d0\\u10e2\\u10e3\\u10e0\\u10e3\\u10da\\u10d8 \\u10d9\\u10dd\\u10db\\u10d1\\u10d8\\u10dc\\u10d0\\u10ea\\u10d8\\u10d0 CTRL+V.\"},table:{\"cellprops_delta_width\":\"30\",cell:\"\\u10e3\\u10ef\\u10e0\\u10d0\",col:\"\\u10e1\\u10d5\\u10d4\\u10e2\\u10d8\",row:\"\\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d8\",del:\"\\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d8\\u10e1 \\u10ec\\u10d0\\u10e8\\u10da\\u10d0\",\"copy_row_desc\":\"\\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d8\\u10e1 \\u10d9\\u10dd\\u10de\\u10d8\\u10e0\\u10d4\\u10d1\\u10d0\",\"cut_row_desc\":\"\\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d8\\u10e1 \\u10d0\\u10db\\u10dd\\u10ed\\u10e0\\u10d0\",\"paste_row_after_desc\":\"\\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d8\\u10e1 \\u10e5\\u10d5\\u10d4\\u10db\\u10dd\\u10d7 \\u10d3\\u10d0\\u10db\\u10d4\\u10e2\\u10d4\\u10d1\\u10d0\",\"paste_row_before_desc\":\"\\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d8\\u10e1 \\u10d6\\u10d4\\u10db\\u10dd\\u10d7 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0\",\"props_desc\":\"\\u10ea\\u10ee\\u10e0\\u10d8\\u10da\\u10d8\\u10e1 \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d8\\u10d4\\u10d1\\u10d8\",\"cell_desc\":\"\\u10e3\\u10ef\\u10e0\\u10d8\\u10e1 \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"row_desc\":\"\\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d8\\u10e1 \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"merge_cells_desc\":\"\\u10e3\\u10ef\\u10e0\\u10d4\\u10d1\\u10d8\\u10e1 \\u10d2\\u10d0\\u10d4\\u10e0\\u10d7\\u10d8\\u10d0\\u10dc\\u10d4\\u10d1\\u10d0\",\"split_cells_desc\":\"\\u10e3\\u10ef\\u10e0\\u10d8\\u10e1 \\u10d2\\u10d0\\u10e7\\u10dd\\u10e4\\u10d0\",\"delete_col_desc\":\"\\u10e1\\u10d5\\u10d4\\u10e2\\u10d8\\u10e1 \\u10ec\\u10d0\\u10e8\\u10da\\u10d0\",\"col_after_desc\":\"\\u10e1\\u10d5\\u10d4\\u10e2\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0 \\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10dc\\u10d8\\u10d5\",\"col_before_desc\":\"\\u10e1\\u10d5\\u10d4\\u10e2\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0 \\u10db\\u10d0\\u10e0\\u10ea\\u10ee\\u10dc\\u10d8\\u10d5\",\"delete_row_desc\":\"\\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d8\\u10e1 \\u10ec\\u10d0\\u10e8\\u10da\\u10d0\",\"row_after_desc\":\"\\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0 \\u10e5\\u10d5\\u10d4\\u10db\\u10dd\\u10d7\",\"row_before_desc\":\"\\u10e1\\u10e2\\u10d8\\u10e5\\u10dd\\u10dc\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0 \\u10d6\\u10d4\\u10db\\u10dd\\u10d7\",desc:\"\\u10ea\\u10ee\\u10e0\\u10d8\\u10da\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0/\\u10e0\\u10d4\\u10d3\\u10d0\\u10e5\\u10e2\\u10d8\\u10e0\\u10d4\\u10d1\\u10d0\",\"merge_cells_delta_height\":\"\",\"merge_cells_delta_width\":\"\",\"table_delta_height\":\"\",\"table_delta_width\":\"\",\"cellprops_delta_height\":\"\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\"},autosave:{\"warning_message\":\"\\u10e7\\u10d5\\u10d4\\u10da\\u10d0 \\u10ea\\u10d5\\u10da\\u10d8\\u10da\\u10d4\\u10d1\\u10d0 \\u10d8\\u10e5\\u10dc\\u10d4\\u10d1\\u10d0 \\u10d3\\u10d0\\u10d9\\u10d0\\u10e0\\u10d2\\u10e3\\u10da\\u10d8.\\n\\n\\u10d2\\u10d0\\u10dc\\u10d5\\u10d0\\u10d2\\u10e0\\u10eb\\u10dd\\u10d7 \\u10d0\\u10d5\\u10e0\\u10dd\\u10db\\u10d0\\u10e2\\u10e3\\u10e0\\u10d0\\u10d3 \\u10d3\\u10d0\\u10db\\u10d0\\u10ee\\u10e1\\u10dd\\u10d5\\u10e0\\u10d4\\u10d1\\u10e3\\u10da\\u10d8\\u10e1 \\u10d0\\u10e6\\u10d3\\u10d2\\u10d4\\u10dc\\u10d0?\",\"restore_content\":\"\\u10d0\\u10d5\\u10e2\\u10dd\\u10db\\u10d0\\u10e2\\u10e3\\u10e0\\u10d0\\u10d3 \\u10d3\\u10d0\\u10db\\u10d0\\u10ee\\u10e1\\u10dd\\u10d5\\u10e0\\u10d4\\u10d1\\u10e3\\u10da\\u10d8\\u10e1 \\u10d0\\u10e6\\u10d3\\u10d2\\u10d4\\u10dc\\u10d0\",\"unload_msg\":\"\\u10d7\\u10e3 \\u10d7\\u10e5\\u10d5\\u10d4\\u10dc \\u10d3\\u10d0\\u10e2\\u10dd\\u10d5\\u10d4\\u10d1\\u10d7 \\u10db\\u10dd\\u10ea\\u10d4\\u10db\\u10e3\\u10da \\u10d2\\u10d5\\u10d4\\u10e0\\u10d3\\u10e1, \\u10e7\\u10d5\\u10d4\\u10da\\u10d0 \\u10ea\\u10d5\\u10da\\u10d8\\u10da\\u10d4\\u10d1\\u10d0 \\u10d8\\u10e5\\u10dc\\u10d4\\u10d1\\u10d0 \\u10d3\\u10d0\\u10d9\\u10d0\\u10e0\\u10d2\\u10e3\\u10da\\u10d8.\"},fullscreen:{desc:\"\\u10e1\\u10e0\\u10e3\\u10da\\u10d4\\u10d9\\u10e0\\u10d0\\u10dc\\u10d8\\u10d0\\u10dc\\u10d8 \\u10e0\\u10d4\\u10df\\u10d8\\u10db\\u10d8\"},media:{edit:\"\\u10d9\\u10da\\u10d8\\u10d9\\u10d8\\u10e1 \\u10db\\u10d0\\u10ee\\u10d0\\u10e1\\u10d8\\u10d0\\u10d7\\u10d4\\u10d1\\u10da\\u10d4\\u10d1\\u10d8\",desc:\"\\u10d9\\u10da\\u10d8\\u10de\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0/\\u10e0\\u10d4\\u10d3\\u10d0\\u10e5\\u10e2\\u10d8\\u10e0\\u10d4\\u10d1\\u10d0\",\"delta_height\":\"\",\"delta_width\":\"\"},fullpage:{desc:\"\\u10d3\\u10dd\\u10d9\\u10e3\\u10db\\u10d4\\u10dc\\u10e2\\u10d8\\u10e1 \\u10db\\u10d0\\u10ee\\u10d0\\u10e1\\u10d8\\u10d0\\u10d7\\u10d4\\u10d1\\u10da\\u10d4\\u10d1\\u10d8\",\"delta_width\":\"\",\"delta_height\":\"\"},template:{desc:\"\\u10e8\\u10d0\\u10d1\\u10da\\u10dd\\u10dc\\u10d8\\u10e1 \\u10d2\\u10d0\\u10db\\u10dd\\u10e7\\u10d4\\u10dc\\u10d4\\u10d1\\u10d0\"},visualchars:{desc:\"\\u10e7\\u10d5\\u10d4\\u10da\\u10d0 \\u10dc\\u10d8\\u10e8\\u10d0\\u10dc\\u10d8\"},spellchecker:{desc:\"\\u10db\\u10d0\\u10e0\\u10d7\\u10da\\u10ec\\u10d4\\u10e0\\u10d0\",menu:\"\\u10db\\u10d0\\u10e0\\u10d7\\u10da\\u10ec\\u10d4\\u10e0\\u10d8\\u10e1 \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"ignore_word\":\"\\u10d2\\u10d0\\u10db\\u10dd\\u10d5\\u10e2\\u10dd\\u10d5\\u10dd\\u10d7\",\"ignore_words\":\"\\u10d2\\u10d0\\u10db\\u10dd\\u10d5\\u10e2\\u10dd\\u10d5\\u10dd\\u10d7 \\u10e7\\u10d5\\u10d4\\u10da\\u10d0\",langs:\"\\u10d4\\u10dc\\u10d4\\u10d1\\u10d8\",wait:\"\\u10d2\\u10d7\\u10ee\\u10dd\\u10d5\\u10d7, \\u10d3\\u10d0\\u10d8\\u10ea\\u10d0\\u10d3\\u10dd\\u10d7...\",sug:\"\\u10d5\\u10d0\\u10e0\\u10d8\\u10d0\\u10dc\\u10e2\\u10d4\\u10d1\\u10d8\",\"no_sug\":\"\\u10e3\\u10d5\\u10d0\\u10e0\\u10d8\\u10d0\\u10dc\\u10e2\\u10dd\\u10d7\",\"no_mpell\":\"\\u10e8\\u10d4\\u10ea\\u10d3\\u10dd\\u10db\\u10d4\\u10d1\\u10d8 \\u10d0\\u10e6\\u10db\\u10dd\\u10e9\\u10d4\\u10dc\\u10d8\\u10da\\u10d8 \\u10d0\\u10e0 \\u10d8\\u10e7\\u10dd.\",\"learn_word\":\"Learn word\"},pagebreak:{desc:\"\\u10d2\\u10d5\\u10d4\\u10e0\\u10d3\\u10d8\\u10e1 \\u10d2\\u10d0\\u10db\\u10e7\\u10dd\\u10e4\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0\"},advlist:{types:\"\\u10e1\\u10d8\\u10db\\u10d1\\u10dd\\u10da\\u10dd\\u10d4\\u10d1\\u10d8\",def:\"\\u10e1\\u10e2\\u10d0\\u10dc\\u10d3\\u10d0\\u10e0\\u10e2\\u10e3\\u10da\\u10d8\",\"lower_alpha\":\"\\u10dc\\u10e3\\u10e1\\u10ee\\u10e3\\u10e0\\u10d8 \\u10d0\\u10e1\\u10dd\\u10d4\\u10d1\\u10d8\",\"lower_greek\":\"\\u10dc\\u10e3\\u10e1\\u10ee\\u10e3\\u10e0\\u10d8 \\u10d1\\u10d4\\u10e0\\u10eb\\u10dc\\u10e3\\u10da\\u10d8 \\u10d0\\u10e1\\u10dd\\u10d4\\u10d1\\u10d8\",\"lower_roman\":\"\\u10dc\\u10e3\\u10e1\\u10ee\\u10e3\\u10e0\\u10d8 \\u10da\\u10d0\\u10d7\\u10d8\\u10dc\\u10e3\\u10e0\\u10d8 \\u10d0\\u10e1\\u10dd\\u10d4\\u10d1\\u10d8\",\"upper_alpha\":\"\\u10d0\\u10e1\\u10dd\\u10db\\u10d7\\u10d0\\u10d5\\u10e0\\u10e3\\u10da\\u10d8 \\u10d0\\u10e1\\u10dd\\u10d4\\u10d1\\u10d8\",\"upper_roman\":\"\\u10d0\\u10e1\\u10dd\\u10db\\u10d7\\u10d0\\u10d5\\u10e0\\u10e3\\u10da\\u10d8 \\u10da\\u10d0\\u10d7\\u10d8\\u10dc\\u10e3\\u10e0\\u10d8 \\u10d0\\u10e1\\u10dd\\u10d4\\u10d1\\u10d8\",circle:\"\\u10ec\\u10e0\\u10d4\\u10d4\\u10d1\\u10d8\",disc:\"\\u10d3\\u10d8\\u10e1\\u10d9\\u10d4\\u10d1\\u10d8\",square:\"\\u10d9\\u10d5\\u10d0\\u10d3\\u10e0\\u10d0\\u10e2\\u10d4\\u10d1\\u10d8\"},colors:{\"333300\":\"Dark olive\",\"993300\":\"Burnt orange\",\"000000\":\"Black\",\"003300\":\"Dark green\",\"003366\":\"Dark azure\",\"000080\":\"Navy Blue\",\"333399\":\"Indigo\",\"333333\":\"Very dark gray\",\"800000\":\"Maroon\",FF6600:\"Orange\",\"808000\":\"Olive\",\"008000\":\"Green\",\"008080\":\"Teal\",\"0000FF\":\"Blue\",\"666699\":\"Grayish blue\",\"808080\":\"Gray\",FF0000:\"Red\",FF9900:\"Amber\",\"99CC00\":\"Yellow green\",\"339966\":\"Sea green\",\"33CCCC\":\"Turquoise\",\"3366FF\":\"Royal blue\",\"800080\":\"Purple\",\"999999\":\"Medium gray\",FF00FF:\"Magenta\",FFCC00:\"Gold\",FFFF00:\"Yellow\",\"00FF00\":\"Lime\",\"00FFFF\":\"Aqua\",\"00CCFF\":\"Sky blue\",\"993366\":\"Brown\",C0C0C0:\"Silver\",FF99CC:\"Pink\",FFCC99:\"Peach\",FFFF99:\"Light yellow\",CCFFCC:\"Pale green\",CCFFFF:\"Pale cyan\",\"99CCFF\":\"Light sky blue\",CC99FF:\"Plum\",FFFFFF:\"White\"},aria:{\"rich_text_area\":\"Rich Text Area\"},wordcount:{words:\"Words\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/ko.js",
    "content": "tinyMCE.addI18n({ko:{common:{\"more_colors\":\"\\uadf8 \\uc678\\uc758 \\uc0c9\",\"invalid_data\":\"\\uc624\\ub958: \\ubd80\\uc801\\ud569\\ud55c \\uac12\\uc774 \\uc785\\ub825\\ub418\\uc5b4 \\ube68\\uac04\\uc0c9\\uc73c\\ub85c \\ud45c\\uc2dc\\ub418\\uc5c8\\uc2b5\\ub2c8\\ub2e4.\",\"popup_blocked\":\"\\ud504\\ub85c\\uadf8\\ub7a8 \\uae30\\ub2a5\\uc744 \\uc704\\ud55c \\ucc3d\\uc744 \\uc5f4\\ub824\\uace0 \\ud588\\uc73c\\ub098 \\ud31d\\uc5c5 \\ucc28\\ub2e8 \\uae30\\ub2a5\\uc73c\\ub85c \\uc0ac\\uc6a9\\ud560 \\uc218 \\uc5c6\\uac8c\\ub41c \\uac83 \\uac19\\uc2b5\\ub2c8\\ub2e4. \\ubaa8\\ub4e0 \\uae30\\ub2a5\\uc744 \\uc0ac\\uc6a9\\ud558\\uc2dc\\ub824\\uba74 \\uc774 \\uc2f8\\uc774\\ud2b8\\uc758 \\ud31d\\uc5c5 \\ucc28\\ub2e8\\uc744 \\ud574\\uc81c\\ud558\\uc154\\uc57c \\ud569\\ub2c8\\ub2e4.\",\"clipboard_no_support\":\"\\ube0c\\ub77c\\uc6b0\\uc800\\uc5d0\\uc11c \\uc9c0\\uc6d0\\ud558\\uc9c0 \\uc54a\\uc73c\\ubbc0\\ub85c \\ub300\\uc2e0 \\ub2e8\\ucd95\\ud0a4\\ub97c \\uc0ac\\uc6a9\\ud574\\uc8fc\\uc138\\uc694.\",\"clipboard_msg\":\"Mozilla \\ubc0fFirefox\\uc5d0\\uc11c\\ub294 \\ubcf5\\uc0ac/\\uc798\\ub77c\\ub0b4\\uae30/\\ubd99\\uc774\\uae30\\ub97c \\uc0ac\\uc6a9\\ud560 \\uc218 \\uc5c6\\uc2b5\\ub2c8\\ub2e4.\\n\\uc774 \\ubb38\\uc81c\\uc5d0 \\ub300\\ud574 \\ub354 \\uc790\\uc138\\ud55c \\uc0ac\\ud56d\\uc744 \\ubcf4\\uc2dc\\uaca0\\uc2b5\\ub2c8\\uae4c?\",\"not_set\":\"-- \\ubbf8\\uc124\\uc815 --\",\"class_name\":\"\\ud074\\ub798\\uc2a4\",browse:\"\\ucc3e\\uc544\\ubcf4\\uae30\",close:\"\\ub2eb\\uae30\",cancel:\"\\ucde8\\uc18c\",update:\"\\uac31\\uc2e0\",insert:\"\\uc0bd\\uc785\",apply:\"\\uc801\\uc6a9\",\"edit_confirm\":\"\\uc774 \\ud14d\\uc2a4\\ud2b8 \\uc601\\uc5ed\\uc5d0 WYSIWYG \\ubaa8\\ub4dc\\ub97c \\uc0ac\\uc6a9\\ud558\\uc2dc\\uaca0\\uc2b5\\ub2c8\\uae4c?\",\"invalid_data_number\":\"{#field}\\ub294 \\uc22b\\uc790\\uc5ec\\uc57c \\ud569\\ub2c8\\ub2e4\",\"invalid_data_min\":\"{#field}\\ub294 {#min}\\ubcf4\\ub2e4 \\ud070 \\uc218\\uc5ec\\uc57c \\ud569\\ub2c8\\ub2e4\",\"invalid_data_size\":\"{#field}\\ub294 \\uc22b\\uc790\\ub098 \\ubc31\\ubd84\\uc728\\uc774\\uc5b4\\uc57c \\ud569\\ub2c8\\ub2e4\",value:\"(\\uac12)\"},contextmenu:{full:\"\\uc591\\ucabd \\ub9de\\ucda4\",right:\"\\uc624\\ub978\\ucabd \\ub9de\\ucda4\",center:\"\\uac00\\uc6b4\\ub370 \\ub9de\\ucda4\",left:\"\\uc67c\\ucabd \\ub9de\\ucda4\",align:\"\\uc904 \\ub9de\\ucda4\"},insertdatetime:{\"day_short\":\"\\uc77c,\\uc6d4,\\ud654,\\uc218,\\ubaa9,\\uae08,\\ud1a0,\\uc77c\",\"day_long\":\"\\uc77c\\uc694\\uc77c,\\uc6d4\\uc694\\uc77c,\\ud654\\uc694\\uc77c,\\uc218\\uc694\\uc77c,\\ubaa9\\uc694\\uc77c,\\uae08\\uc694\\uc77c,\\ud1a0\\uc694\\uc77c,\\uc77c\\uc694\\uc77c\",\"months_short\":\"1,2,3,4,5,6,7,8,9,10,11,12\",\"months_long\":\"1\\uc6d4,2\\uc6d4,3\\uc6d4,4\\uc6d4,5\\uc6d4,6\\uc6d4,7\\uc6d4,8\\uc6d4,9\\uc6d4,10\\uc6d4,11\\uc6d4,12\\uc6d4\",\"inserttime_desc\":\"\\uc2dc\\uac04 \\uc0bd\\uc785\",\"insertdate_desc\":\"\\ub0a0\\uc9dc \\uc0bd\\uc785\",\"time_fmt\":\"%H:%M:%S\",\"date_fmt\":\"%Y-%m-%d\"},print:{\"print_desc\":\"\\uc778\\uc1c4\"},preview:{\"preview_desc\":\"\\ubbf8\\ub9ac \\ubcf4\\uae30\"},directionality:{\"rtl_desc\":\"\\ubb38\\uc790\\ubc29\\ud5a5\\uc744 \\uc624\\ub978\\ucabd\\uc5d0\\uc11c \\uc67c\\ucabd\\uc73c\\ub85c\",\"ltr_desc\":\"\\ubb38\\uc790\\ubc29\\ud5a5\\uc744 \\uc67c\\ucabd\\uc5d0\\uc11c \\uc624\\ub978\\ucabd\\uc73c\\ub85c\"},layer:{content:\"\\uc0c8 \\ub808\\uc774\\uc5b4...\",\"absolute_desc\":\"\\uc808\\ub300 \\uc704\\uce58 \\ubc29\\uc2dd\\uc73c\\ub85c \\uc804\\ud658\",\"backward_desc\":\"\\ub4a4\\ub85c \\uc774\\ub3d9\",\"forward_desc\":\"\\uc55e\\uc73c\\ub85c \\uc774\\ub3d9\",\"insertlayer_desc\":\"\\uc0c8 \\ub808\\uc774\\uc5b4 \\uc0bd\\uc785\"},save:{\"save_desc\":\"\\uc800\\uc7a5\",\"cancel_desc\":\"\\ubcc0\\uacbd \\ub0b4\\uc6a9 \\uc804\\ubd80 \\ucde8\\uc18c\"},nonbreaking:{\"nonbreaking_desc\":\"\\uc904\\ubc14\\uafc8\\ub418\\uc9c0 \\uc54a\\ub294 \\ube48\\uce78 \\uc0bd\\uc785\"},iespell:{download:\"ieSpell\\uc774 \\ubc1c\\uacac\\ub418\\uc9c0 \\uc54a\\uc558\\uc2b5\\ub2c8\\ub2e4.\\n\\uc778\\uc2a4\\ud1a8 \\ud558\\uc2dc\\uaca0\\uc2b5\\ub2c8\\uae4c?\",\"iespell_desc\":\"\\ucca0\\uc790 \\uac80\\uc0ac\"},advhr:{\"advhr_desc\":\"\\uad6c\\ubd84\\uc120 \\uc0bd\\uc785\",\"delta_height\":\"\",\"delta_width\":\"\"},emotions:{\"emotions_desc\":\"\\uc774\\ubaa8\\ud2f0\\ucf58\",\"delta_height\":\"\",\"delta_width\":\"\"},searchreplace:{\"replace_desc\":\"\\ucc3e\\uae30/\\ubc14\\uafb8\\uae30\",\"search_desc\":\"\\ucc3e\\uae30\",\"delta_width\":\"\",\"delta_height\":\"\"},advimage:{\"image_desc\":\"\\uc774\\ubbf8\\uc9c0 \\uc0bd\\uc785/\\ud3b8\\uc9d1\",\"delta_width\":\"\",\"delta_height\":\"\"},advlink:{\"link_desc\":\"\\ub9c1\\ud06c \\uc0bd\\uc785/\\ud3b8\\uc9d1\",\"delta_height\":\"\",\"delta_width\":\"\"},xhtmlxtras:{\"attribs_delta_height\":\"\",\"attribs_desc\":\"\\uc18d\\uc131 \\uc0bd\\uc785/\\ud3b8\\uc9d1\",\"ins_desc\":\"\\uc0bd\\uc785\",\"del_desc\":\"\\uc0ad\\uc81c\",\"acronym_desc\":\"\\uba38\\ub9bf\\uae00\\uc790\",\"abbr_desc\":\"\\uc57d\\uc5b4\",\"cite_desc\":\"\\uc778\\uc6a9\",\"attribs_delta_width\":\"\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\"},style:{desc:\"CSS \\uc11c\\uc2dd \\ud3b8\\uc9d1\",\"delta_height\":\"\",\"delta_width\":\"\"},paste:{\"plaintext_mode\":\"\\ubd99\\uc5ec\\ub123\\uae30\\uac00 \\uc774\\uc81c \\ud3c9\\ubb38 \\ud14d\\uc2a4\\ud2b8 \\ubaa8\\ub4dc\\uac00 \\ub410\\uc2b5\\ub2c8\\ub2e4. \\ub2e4\\uc2dc \\ud074\\ub9ad\\ud558\\uba74 \\uc815\\uc0c1 \\ubd99\\uc5ec\\ub123\\uae30 \\ubaa8\\ub4dc\\ub85c \\ub3cc\\uc544\\uac11\\ub2c8\\ub2e4.\",\"plaintext_mode_sticky\":\"\\ubd99\\uc5ec\\ub123\\uae30\\uac00 \\uc774\\uc81c \\ud3c9\\ubb38 \\ud14d\\uc2a4\\ud2b8 \\ubaa8\\ub4dc\\uac00 \\ub410\\uc2b5\\ub2c8\\ub2e4. \\ub2e4\\uc2dc \\ud074\\ub9ad\\ud558\\uba74 \\uc815\\uc0c1 \\ubd99\\uc5ec\\ub123\\uae30 \\ubaa8\\ub4dc\\ub85c \\ub3cc\\uc544\\uac11\\ub2c8\\ub2e4. \\ubd99\\uc5ec\\ub123\\uae30\\ub97c \\ud558\\uc2dc\\uba74 \\uc815\\uc0c1 \\ubd99\\uc5ec\\ub123\\uae30 \\ubaa8\\ub4dc\\ub85c \\ub3cc\\uc544\\uac11\\ub2c8\\ub2e4.\",\"selectall_desc\":\"\\ubaa8\\ub450 \\uc120\\ud0dd\",\"paste_word_desc\":\"Word\\ub85c\\ubd80\\ud130 \\ubd99\\uc5ec\\ub123\\uae30\",\"paste_text_desc\":\"\\ud3c9\\ubb38 \\ud14d\\uc2a4\\ud2b8\\ub85c \\ubd99\\uc5ec\\ub123\\uae30\"},\"paste_dlg\":{\"word_title\":\"\\ud0a4\\ubcf4\\ub4dc\\uc5d0\\uc11c Ctrl-V\\ub97c \\uc0ac\\uc6a9\\ud558\\uba74 \\ud14d\\uc2a4\\ud2b8\\ub97c \\ucc3d\\uc5d0 \\ubd99\\uc5ec\\ub123\\uc744 \\uc218 \\uc788\\uc2b5\\ub2c8\\ub2e4.\",\"text_linebreaks\":\"\\uc904\\ubc14\\uafc8 \\uc720\\uc9c0\",\"text_title\":\"\\ud0a4\\ubcf4\\ub4dc\\uc5d0\\uc11c Ctrl-V\\ub97c \\uc0ac\\uc6a9\\ud558\\uba74 \\ud14d\\uc2a4\\ud2b8\\ub97c \\ucc3d\\uc5d0 \\ubd99\\uc5ec\\ub123\\uc744 \\uc218 \\uc788\\uc2b5\\ub2c8\\ub2e4.\"},table:{cell:\"\\uc140\",col:\"\\uc5f4\",row:\"\\ud589\",del:\"\\ud45c \\uc0ad\\uc81c\",\"copy_row_desc\":\"\\ud589 \\ubcf5\\uc0ac\",\"cut_row_desc\":\"\\ud589 \\uc798\\ub77c\\ub0b4\\uae30\",\"paste_row_after_desc\":\"\\uc544\\ub798\\uc5d0 \\ud589 \\ubd99\\uc5ec\\ub123\\uae30\",\"paste_row_before_desc\":\"\\uc704\\uc5d0 \\ud589 \\ubd99\\uc5ec\\ub123\\uae30\",\"props_desc\":\"\\ud45c \\uc18d\\uc131\",\"cell_desc\":\"\\uc140 \\uc18d\\uc131\",\"row_desc\":\"\\ud589 \\uc18d\\uc131\",\"merge_cells_desc\":\"\\uc140 \\ubcd1\\ud569\",\"split_cells_desc\":\"\\ubcd1\\ud569\\ub41c \\uc140 \\ubd84\\ub9ac\",\"delete_col_desc\":\"\\uc5f4 \\uc0ad\\uc81c\",\"col_after_desc\":\"\\ub4a4\\uc5d0 \\uc5f4 \\uc0bd\\uc785\",\"col_before_desc\":\"\\uc55e\\uc5d0 \\uc5f4 \\uc0bd\\uc785\",\"delete_row_desc\":\"\\ud589 \\uc0ad\\uc81c\",\"row_after_desc\":\"\\uc544\\ub798\\uc5d0 \\ud589 \\uc0bd\\uc785\",\"row_before_desc\":\"\\uc704\\uc5d0 \\ud589 \\uc0bd\\uc785\",desc:\"\\ud45c \\uc0bd\\uc785/\\ud3b8\\uc9d1\",\"merge_cells_delta_height\":\"\",\"merge_cells_delta_width\":\"\",\"table_delta_height\":\"\",\"table_delta_width\":\"\",\"cellprops_delta_height\":\"\",\"cellprops_delta_width\":\"\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\"},autosave:{\"warning_message\":\"\\uc800\\uc7a5\\ub41c \\ub0b4\\uc6a9\\uc744 \\ubcf5\\uad6c\\ud558\\uba74 \\ud604\\uc7ac\\uc758 \\ub0b4\\uc6a9\\uc740 \\uc0ad\\uc81c\\ub429\\ub2c8\\ub2e4.\\n\\n\\uc815\\ub9d0 \\uc800\\uc7a5\\ub41c \\ub0b4\\uc6a9\\uc744 \\ubcf5\\uad6c\\ud558\\uc2dc\\uaca0\\uc2b5\\ub2c8\\uae4c?\",\"restore_content\":\"\\uc790\\ub3d9 \\uc800\\uc7a5\\ub41c \\ub0b4\\uc6a9 \\ubcf5\\uad6c\",\"unload_msg\":\"\\ub2e4\\ub978 \\ud398\\uc774\\uc9c0\\ub85c \\uc774\\ub3d9\\ud558\\uba74 \\ud3b8\\uc9d1\\ud55c \\ub0b4\\uc6a9\\uc774 \\ucde8\\uc18c\\ub429\\ub2c8\\ub2e4.\"},fullscreen:{desc:\"\\uc804\\uccb4 \\ud654\\uba74 \\ubaa8\\ub4dc \\uc804\\ud658\"},media:{edit:\"\\ubbf8\\ub514\\uc5b4 \\ud3b8\\uc9d1\",desc:\"\\ubbf8\\ub514\\uc5b4 \\uc0bd\\uc785/\\ud3b8\\uc9d1\",\"delta_height\":\"\",\"delta_width\":\"\"},fullpage:{desc:\"\\ubb38\\uc11c \\uc18d\\uc131\",\"delta_width\":\"\",\"delta_height\":\"\"},template:{desc:\"\\ubbf8\\ub9ac \\uc815\\uc758\\ub41c \\ud15c\\ud50c\\ub9bf \\uc0bd\\uc785\"},visualchars:{desc:\"\\uc81c\\uc5b4 \\ubb38\\uc790 \\ud45c\\uc2dc \\uc804\\ud658\"},spellchecker:{desc:\"\\uc2a4\\ud3a0\\ub9c1 \\uac80\\uc0ac \\uc791\\ub3d9 \\uc804\\ud658\",menu:\"\\uc2a4\\ud3a0\\ub9c1 \\uac80\\uc0ac \\uc124\\uc815\",\"ignore_word\":\"\\ub2e8\\uc5b4 \\ubb34\\uc2dc\",\"ignore_words\":\"\\ubaa8\\ub450 \\ubb34\\uc2dc\",langs:\"\\uc5b8\\uc5b4\",wait:\"\\uae30\\ub2e4\\ub824 \\uc8fc\\uc138\\uc694...\",sug:\"\\ud6c4\\ubcf4\",\"no_sug\":\"\\ud6c4\\ubcf4 \\uc5c6\\uc74c\",\"no_mpell\":\"\\uc624\\ud0c8\\uc790\\uac00 \\ubc1c\\uacac\\ub418\\uc9c0 \\uc54a\\uc558\\uc2b5\\ub2c8\\ub2e4.\",\"learn_word\":\"\\ub2e8\\uc5b4 \\uae30\\uc5b5\"},pagebreak:{desc:\"\\uc778\\uc1c4\\uc6a9\\uc73c\\ub85c \\ud398\\uc774\\uc9c0 \\ub098\\ub214\"},advlist:{types:\"\\uc885\\ub958\",def:\"\\uae30\\ubcf8\",\"lower_alpha\":\"\\uc601\\ubb38 \\uc18c\\ubb38\\uc790\",\"lower_greek\":\"\\uadf8\\ub9ac\\uc2a4\\uc5b4 \\uc18c\\ubb38\\uc790\",\"lower_roman\":\"\\ub85c\\ub9c8\\uc790 \\uc18c\\ubb38\\uc790\",\"upper_alpha\":\"\\uc601\\ubb38 \\ub300\\ubb38\\uc790\",\"upper_roman\":\"\\ub85c\\ub9c8\\uc790 \\ub300\\ubb38\\uc790\",circle:\"\\uc18d\\uc774 \\ube48 \\uc6d0\",disc:\"\\uc18d\\uc774 \\ucc2c \\uc6d0\",square:\"\\uc0ac\\uac01\\ud615\"},colors:{\"333300\":\"Dark olive\",\"993300\":\"Burnt orange\",\"000000\":\"Black\",\"003300\":\"Dark green\",\"003366\":\"Dark azure\",\"000080\":\"Navy Blue\",\"333399\":\"Indigo\",\"333333\":\"Very dark gray\",\"800000\":\"Maroon\",FF6600:\"Orange\",\"808000\":\"Olive\",\"008000\":\"Green\",\"008080\":\"Teal\",\"0000FF\":\"Blue\",\"666699\":\"Grayish blue\",\"808080\":\"Gray\",FF0000:\"Red\",FF9900:\"Amber\",\"99CC00\":\"Yellow green\",\"339966\":\"Sea green\",\"33CCCC\":\"Turquoise\",\"3366FF\":\"Royal blue\",\"800080\":\"Purple\",\"999999\":\"Medium gray\",FF00FF:\"Magenta\",FFCC00:\"Gold\",FFFF00:\"Yellow\",\"00FF00\":\"Lime\",\"00FFFF\":\"Aqua\",\"00CCFF\":\"Sky blue\",\"993366\":\"Brown\",C0C0C0:\"Silver\",FF99CC:\"Pink\",FFCC99:\"Peach\",FFFF99:\"Light yellow\",CCFFCC:\"Pale green\",CCFFFF:\"Pale cyan\",\"99CCFF\":\"Light sky blue\",CC99FF:\"Plum\",FFFFFF:\"White\"},aria:{\"rich_text_area\":\"\\uae00 \\uc791\\uc131 \\uc601\\uc5ed\"},wordcount:{words:\"\\ub2e8\\uc5b4:\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/nb.js",
    "content": "tinyMCE.addI18n({nb:{common:{\"more_colors\":\"Flere farger\",\"invalid_data\":\"Feil: Ugyldige verdier er skrevet inn, disse er merket med r\\u00f8dt.\",\"popup_blocked\":\"Beklager, det er registrert at du har en popup-sperre aktivert i nettleseren. Du m\\u00e5 oppheve popup-sperren for nettstedet for \\u00e5 f\\u00e5 tilgang til dette verkt\\u00f8yet\",\"clipboard_no_support\":\"For tiden ikke st\\u00f8ttet av din nettleser, benytt tastatursnarveier i stedet.\",\"clipboard_msg\":\"Klipp ut / Kopier /Lim inn fungerer ikke i Mozilla og Firefox. Vil du vite mer om dette?\",\"not_set\":\"-- ikke satt --\",\"class_name\":\"Klasse\",browse:\"Bla gjennom\",close:\"Lukk\",cancel:\"Avbryt\",update:\"Oppdater\",insert:\"Sett inn\",apply:\"Legg til\",\"edit_confirm\":\"Vil du benytte WYSIWYG-editoren for dette tekstfeltet?\",\"invalid_data_number\":\"{#field} m\\u00e5 v\\u00e6re et nummer\",\"invalid_data_min\":\"{#field} m\\u00e5 v\\u00e6re en nummer st\\u00f8rre en {#min}\",\"invalid_data_size\":\"{#field} m\\u00e5 v\\u00e6re et nummer eller prosent\",value:\"(verdi)\"},contextmenu:{full:\"Full\",right:\"H\\u00f8yre\",center:\"Midtstill\",left:\"Venstre\",align:\"Justering\"},insertdatetime:{\"day_short\":\"s\\u00f8n,man,tir,ons,tor,fre,l\\u00f8r,s\\u00f8n\",\"day_long\":\"s\\u00f8ndag,mandag,tirsdag,onsdag,torsdag,fredag,l\\u00f8rdag,s\\u00f8ndag\",\"months_short\":\"jan,feb,mar,apr,mai,jun,jul,aug,sep,oct,nov,des\",\"months_long\":\"januar,februar,mars,april,mai,juni,juli,august,september,oktober,november,desember\",\"inserttime_desc\":\"Sett inn tidspunkt\",\"insertdate_desc\":\"Sett inn dato\",\"time_fmt\":\"%H:%M:%S\",\"date_fmt\":\"%Y-%m-%d\"},print:{\"print_desc\":\"Skriv ut\"},preview:{\"preview_desc\":\"Forh\\u00e5ndsvisning\"},directionality:{\"rtl_desc\":\"Retning h\\u00f8yre mot venstre\",\"ltr_desc\":\"Retning venstre mot h\\u00f8yre\"},layer:{content:\"Nytt lag ...\",\"absolute_desc\":\"Sl\\u00e5 p\\u00e5/av absolutt plassering\",\"backward_desc\":\"Flytt bakover\",\"forward_desc\":\"Flytt framover\",\"insertlayer_desc\":\"Sett inn nytt lag\"},save:{\"save_desc\":\"Lagre\",\"cancel_desc\":\"Kanseller alle endringer\"},nonbreaking:{\"nonbreaking_desc\":\"Sett inn hardt mellomrom\"},iespell:{download:\"ieSpell ikke funnet. \\u00d8nsker du \\u00e5 installere ieSpell n\\u00e5?\",\"iespell_desc\":\"Kj\\u00f8rer rettskrivningskontroll\"},advhr:{\"advhr_desc\":\"Horisontal linje\",\"delta_height\":\"\",\"delta_width\":\"\"},emotions:{\"delta_height\":\"\",\"emotions_desc\":\"Hum\\u00f8rfjes\",\"delta_width\":\"\"},searchreplace:{\"replace_desc\":\"S\\u00f8k/Erstatt\",\"search_desc\":\"S\\u00f8k\",\"delta_width\":\"\",\"delta_height\":\"\"},advimage:{\"image_desc\":\"Sett inn / endre bilde\",\"delta_width\":\"\",\"delta_height\":\"\"},advlink:{\"link_desc\":\"Sett inn / endre lenke\",\"delta_height\":\"\",\"delta_width\":\"\"},xhtmlxtras:{\"attribs_desc\":\"Sett inn / endre Egenskaper\",\"ins_desc\":\"Innsetting\",\"del_desc\":\"Sletting\",\"acronym_desc\":\"Akronym\",\"abbr_desc\":\"Forkortelse\",\"cite_desc\":\"Sitat\",\"attribs_delta_height\":\"\",\"attribs_delta_width\":\"\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\"},style:{desc:\"Rediger CSS-stil\",\"delta_height\":\"\",\"delta_width\":\"\"},paste:{\"plaintext_mode\":\"\\'Lim inn\\' er n\\u00e5 i \\'ren tekst\\'-modus. Klikk en gang til for \\u00e5 g\\u00e5 tilbake til normal modus.\",\"plaintext_mode_sticky\":\"\\'Lim inn\\' er n\\u00e5 i \\'ren tekst\\'-modus. Klikk en gang til for \\u00e5 g\\u00e5 tilbake til normal modus. Etter at du har limt inn noe vil du bli tatt tilbake til normal modus.\",\"selectall_desc\":\"Merk alt\",\"paste_word_desc\":\"Lim inn fra Word\",\"paste_text_desc\":\"Lim inn som ren tekst\"},\"paste_dlg\":{\"word_title\":\"Bruk CTRL+V p\\u00e5 tastaturet for \\u00e5 lime inn i dette vinduet.\",\"text_linebreaks\":\"Behold tekstbryting\",\"text_title\":\"Bruk CTRL+V p\\u00e5 tastaturet for \\u00e5 lime inn i dette vinduet.\"},table:{cell:\"Celle\",col:\"Kolonne\",row:\"Rad\",del:\"Slett tabell\",\"copy_row_desc\":\"Kopier rad\",\"cut_row_desc\":\"Fjern rad\",\"paste_row_after_desc\":\"Lim inn rad etter\",\"paste_row_before_desc\":\"Lim inn rad foran\",\"props_desc\":\"Tabellegenskaper\",\"cell_desc\":\"Celleegenskaper\",\"row_desc\":\"Radegenskaper\",\"merge_cells_desc\":\"Sl\\u00e5 sammen celler\",\"split_cells_desc\":\"Del celler\",\"delete_col_desc\":\"Fjern kolonne\",\"col_after_desc\":\"Sett inn kolonne etter\",\"col_before_desc\":\"Sett inn kolonne foran\",\"delete_row_desc\":\"Fjern rad\",\"row_after_desc\":\"Sett inn rad etter\",\"row_before_desc\":\"Sett inn rad foran\",desc:\"Sett inn ny tabell\",\"merge_cells_delta_height\":\"\",\"merge_cells_delta_width\":\"\",\"table_delta_height\":\"\",\"table_delta_width\":\"\",\"cellprops_delta_height\":\"\",\"cellprops_delta_width\":\"\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\"},autosave:{\"warning_message\":\"Om du gjenoppretter lagret innhold vil du miste alt innhold som n\\u00e5 er i tekstbehandleren.\\n\\nEr du sikker p\\u00e5 at du \\u00f8nsker \\u00e5 gjenopprette lagret innhold?\",\"restore_content\":\"Gjenopprett autolagret innhold.\",\"unload_msg\":\"Endringene du gjorde g\\u00e5r tapt dersom du velger \\u00e5 forlate denne siden!\"},fullscreen:{desc:\"Skift til/fra fullskjermmodus\"},media:{edit:\"Endre inkludert objekt\",desc:\"Sett inn / rediger inkludert objekt\",\"delta_height\":\"\",\"delta_width\":\"\"},fullpage:{desc:\"Dokumentegenskaper\",\"delta_width\":\"\",\"delta_height\":\"\"},template:{desc:\"Sett inn forh\\u00e5ndsdefinert malinnhold\"},visualchars:{desc:\"Visuelle kontrolltegn p\\u00e5/av\"},spellchecker:{desc:\"Stavekontroll p\\u00e5/av\",menu:\"Vis meny\",\"ignore_word\":\"Ignorer ord\",\"ignore_words\":\"Ignorer alt\",langs:\"Spr\\u00e5k\",wait:\"Vennligst vent ...\",sug:\"Forslag\",\"no_sug\":\"Ingen forslag\",\"no_mpell\":\"Ingen stavefeil funnet\",\"learn_word\":\"L\\u00e6r ord\"},pagebreak:{desc:\"Sett inn sideskift\"},advlist:{types:\"Typer\",def:\"Standard\",\"lower_alpha\":\"Liten alfa\",\"lower_greek\":\"Liten gresk\",\"lower_roman\":\"Liten romersk\",\"upper_alpha\":\"Stor alfa\",\"upper_roman\":\"Stor romersk\",circle:\"Sirkel\",disc:\"Disk\",square:\"Firkant\"},colors:{\"333300\":\"M\\u00f8rk oliven\",\"993300\":\"Brent oransje\",\"000000\":\"Sort\",\"003300\":\"M\\u00f8rk gr\\u00f8nn\",\"003366\":\"M\\u00f8rk asurbl\\u00e5\",\"000080\":\"Marinebl\\u00e5\",\"333399\":\"Indigo\",\"333333\":\"Veldig m\\u00f8rk gr\\u00e5\",\"800000\":\"R\\u00f8dbrun\",FF6600:\"Oransje\",\"808000\":\"Oliven\",\"008000\":\"Gr\\u00f8nn\",\"008080\":\"Bl\\u00e5gr\\u00f8nn\",\"0000FF\":\"Bl\\u00e5\",\"666699\":\"Gr\\u00e5bl\\u00e5\",\"808080\":\"Gr\\u00e5\",FF0000:\"R\\u00f8d\",FF9900:\"Rav\",\"99CC00\":\"Gulgr\\u00f8nn\",\"339966\":\"Sj\\u00f8gr\\u00f8nn\",\"33CCCC\":\"Turkis\",\"3366FF\":\"Kongebl\\u00e5\",\"800080\":\"Lilla\",\"999999\":\"Mellomgr\\u00e5\",FF00FF:\"Magenta\",FFCC00:\"Gull\",FFFF00:\"Gul\",\"00FF00\":\"Lime\",\"00FFFF\":\"Turkis\",\"00CCFF\":\"Himmelbl\\u00e5\",\"993366\":\"Brun\",C0C0C0:\"S\\u00f8lv\",FF99CC:\"Rosa\",FFCC99:\"Fersken\",FFFF99:\"Lysegul\",CCFFCC:\"Blekgr\\u00f8nn\",CCFFFF:\"Blekbl\\u00e5\",\"99CCFF\":\"Lys himmelbl\\u00e5\",CC99FF:\"Plomme\",FFFFFF:\"Hvit\"},aria:{\"rich_text_area\":\"Rikt tekstfelt\"},wordcount:{words:\"Ord\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/nl.js",
    "content": "tinyMCE.addI18n({nl:{common:{\"more_colors\":\"Meer kleuren\",\"invalid_data\":\"Fout: Er zijn ongeldige waardes ingevoerd, deze zijn rood gemarkeerd.\",\"popup_blocked\":\"U zult uw popup-blocker tijdelijk moeten uitschakelen voor deze website om gebruik te kunnen maken van alle functies van deze teksteditor.\",\"clipboard_no_support\":\"Kopi\\u00ebren/knippen/plakken wordt niet ondersteund door uw browser, gebruik hiervoor de sneltoetsen.\",\"clipboard_msg\":\"Kopi\\u00ebren/knippen/plakken is niet beschikbaar in Mozilla en Firefox.\\\\nWilt u meer informatie over deze beperking?\",\"not_set\":\"- Standaard -\",\"class_name\":\"Klasse\",browse:\"Bladeren\",close:\"Sluiten\",cancel:\"Annuleren\",update:\"Bijwerken\",insert:\"Invoegen\",apply:\"Toepassen\",\"edit_confirm\":\"Weet u zeker dat u tekst in WYSIWYG mode wilt bewerken in dit tekstveld?\"},contextmenu:{full:\"Uitvullen\",right:\"Rechts\",center:\"Centreren\",left:\"Links\",align:\"Uitlijning\"},insertdatetime:{\"day_short\":\"zo,ma,di,wo,do,vr,za,zo\",\"day_long\":\"Zondag,Maandag,Dinsdag,Woensdag,Donderdag,Vrijdag,Zaterdag,Zondag\",\"months_short\":\"Jan,Feb,Mar,Apr,Mei,Jun,Jul,Aug,Sep,Okt,Nov,Dec\",\"months_long\":\"Januari,Februari,Maart,April,Mei,Juni,Juli,Augustus,September,Oktober,November,December\",\"inserttime_desc\":\"Tijd invoegen\",\"insertdate_desc\":\"Datum invoegen\",\"time_fmt\":\"%H:%M:%S\",\"date_fmt\":\"%d-%m-%Y\"},print:{\"print_desc\":\"Afdrukken\"},preview:{\"preview_desc\":\"Voorbeeld\"},directionality:{\"rtl_desc\":\"Van rechts naar links\",\"ltr_desc\":\"Van links naar rechts\"},layer:{content:\"Nieuwe laag...\",\"absolute_desc\":\"Absoluut positioneren inschakelen\",\"backward_desc\":\"Vorige laag\",\"forward_desc\":\"Volgende laag\",\"insertlayer_desc\":\"Nieuwe laag invoegen\"},save:{\"save_desc\":\"Opslaan\",\"cancel_desc\":\"Alle wijzigingen annuleren\"},nonbreaking:{\"nonbreaking_desc\":\"Open ruimte invoegen\"},iespell:{download:\"ieSpell niet gevonden. Wilt u deze nu installeren?\",\"iespell_desc\":\"Spellingcontrole\"},advhr:{\"advhr_desc\":\"Scheidingslijn\",\"delta_height\":\"\",\"delta_width\":\"\"},emotions:{\"emotions_desc\":\"Emoties\",\"delta_height\":\"\",\"delta_width\":\"\"},searchreplace:{\"replace_desc\":\"Zoeken/Vervangen\",\"search_desc\":\"Zoeken\",\"delta_width\":\"\",\"delta_height\":\"\"},advimage:{\"image_desc\":\"Afbeelding invoegen/bewerken\",\"delta_width\":\"\",\"delta_height\":\"\"},advlink:{\"link_desc\":\"Link invoegen/bewerken\",\"delta_height\":\"\",\"delta_width\":\"\"},xhtmlxtras:{\"attribs_desc\":\"Attributen invoegen/bewerken\",\"ins_desc\":\"Ingevoegd\",\"del_desc\":\"Verwijderd\",\"acronym_desc\":\"Synoniem\",\"abbr_desc\":\"Afkorting\",\"cite_desc\":\"Citaat\",\"attribs_delta_height\":\"\",\"attribs_delta_width\":\"\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\"},style:{desc:\"CSS Stijl bewerken\",\"delta_height\":\"\",\"delta_width\":\"\"},paste:{\"plaintext_mode\":\"Plakken is nu in plattetekstmoduse. Klik nog een keer om terug te gaan naar normaal plakken.\",\"plaintext_mode_sticky\":\"Plakken is nu in plattetekstmodus. Klik nog een keer om terug te gaan naar normaal plakken. Nadat u iets plakt, keert u terug naar normaal plakken.\",\"selectall_desc\":\"Alles selecteren\",\"paste_word_desc\":\"Vanuit Word plakken\",\"paste_text_desc\":\"Als platte tekst plakken\"},\"paste_dlg\":{\"word_title\":\"Gebruik Ctrl+V om tekst in het venster te plakken.\",\"text_linebreaks\":\"Regelafbreking bewaren\",\"text_title\":\"Gebruik Ctrl+V om tekst in het venster te plakken.\"},table:{cell:\"Cel\",col:\"Kolom\",row:\"Rij\",del:\"Tabel verwijderen\",\"copy_row_desc\":\"Rij kopi\\u00ebren\",\"cut_row_desc\":\"Rij knippen\",\"paste_row_after_desc\":\"Rij onder plakken\",\"paste_row_before_desc\":\"Rij boven plakken\",\"props_desc\":\"Tabeleigenschappen\",\"cell_desc\":\"Cel-eigenschappen\",\"row_desc\":\"Rij-eigenschappen\",\"merge_cells_desc\":\"Cellen samenvoegen\",\"split_cells_desc\":\"Cellen splitsen\",\"delete_col_desc\":\"Kolom verwijderen\",\"col_after_desc\":\"Kolom rechts invoegen\",\"col_before_desc\":\"Kolom links invoegen\",\"delete_row_desc\":\"Rij verwijderen\",\"row_after_desc\":\"Rij onder invoegen\",\"row_before_desc\":\"Rij boven invoegen\",desc:\"Nieuwe tabel invoegen\",\"merge_cells_delta_height\":\"\",\"merge_cells_delta_width\":\"\",\"table_delta_height\":\"\",\"table_delta_width\":\"\",\"cellprops_delta_height\":\"\",\"cellprops_delta_width\":\"\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\"},autosave:{\"warning_message\":\"Als u de opgeslagen inhoud laadt, verliest u de inhoud die zich momenteel in de editor bevindt.\\\\n\\\\nWeet u zeker dat u de opgeslagen inhoud wilt laden?\",\"restore_content\":\"Automatisch opgeslagen inhoud laden.\",\"unload_msg\":\"De wijzigingen zullen verloren gaan als u nu deze pagina verlaat.\"},fullscreen:{desc:\"Volledig scherm\"},media:{edit:\"Media bewerken\",desc:\"Media invoegen/bewerken\",\"delta_height\":\"\",\"delta_width\":\"\"},fullpage:{desc:\"Documenteigenschappen\",\"delta_width\":\"\",\"delta_height\":\"\"},template:{desc:\"Voorgedefinieerd sjabloon invoegen\"},visualchars:{desc:\"Zichtbare symbolen\"},spellchecker:{desc:\"Spellingcontrole\",menu:\"Instellingen spellingcontrole\",\"ignore_word\":\"Woord negeren\",\"ignore_words\":\"Alles negeren\",langs:\"Talen\",wait:\"Een ogenblik geduld\\u2026\",sug:\"Suggesties\",\"no_sug\":\"Geen suggesties\",\"no_mpell\":\"Geen spelfouten gevonden.\"},pagebreak:{desc:\"Pagina-einde invoegen\"},advlist:{types:\"Types\",def:\"Standaard\",\"lower_alpha\":\"Alfa (klein)\",\"lower_greek\":\"Griekse letters (klein)\",\"lower_roman\":\"Romeinse letters (klein)\",\"upper_alpha\":\"Alfa (groot)\",\"upper_roman\":\"Romeinse letters (groot)\",circle:\"Cirkel\",disc:\"Schijf\",square:\"Vierkant\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/pl.js",
    "content": "tinyMCE.addI18n({pl:{common:{\"more_colors\":\"Wi\\u0119cej kolor\\u00f3w\",\"invalid_data\":\"B\\u0142\\u0105d: Zosta\\u0142y wprowadzone b\\u0142\\u0119dne dane, s\\u0105 zaznaczone na czerwono.\",\"popup_blocked\":\"Zauwa\\u017cyli\\u015bmy, \\u017ce opcja blokowania wyskakuj\\u0105cych okienek wy\\u0142\\u0105czy\\u0142a okno, kt\\u00f3re dostarcza funkcjonalno\\u015b\\u0107 aplikacji. Aby w pe\\u0142ni wykorzysta\\u0107 to narz\\u0119dzie musisz wy\\u0142\\u0105czy\\u0107 blokowanie wyskakuj\\u0105cych okienek na tej stronie.\",\"clipboard_no_support\":\"Aktualnie nie jest obs\\u0142ugiwany przez Twoj\\u0105 przegl\\u0105dark\\u0119, u\\u017cyj skr\\u00f3t\\u00f3w klawiaturowych w zamian.\",\"clipboard_msg\":\"Akcje Kopiuj/Wytnij/Wklej nie s\\u0105 dost\\u0119pne w Mozilli i Firefox.\\\\nCzy chcesz wi\\u0119cej informacji o tym problemie?\",\"not_set\":\"-- Brak --\",\"class_name\":\"Klasa\",browse:\"Przegl\\u0105daj\",close:\"Zamknij\",cancel:\"Anuluj\",update:\"Aktualizuj\",insert:\"Wstaw\",apply:\"Zastosuj\",\"edit_confirm\":\"Czy chcesz u\\u017cy\\u0107 trybu WYSIWYG dla tego pola formularza?\"},contextmenu:{full:\"Wyjustuj\",right:\"Do prawej\",center:\"Do \\u015brodka\",left:\"Do lewej\",align:\"Wyr\\u00f3wnanie\"},insertdatetime:{\"day_short\":\"N,Pn,Wt,\\u015ar,Cz,Pt,So,N\",\"day_long\":\"Niedziela, Poniedzia\\u0142ek, Wtorek, \\u015aroda, Czwartek, Pi\\u0105tek, Sobota, Niedziela\",\"months_short\":\"Sty,Lut,Mar,Kwi,Maj,Cze,Lip,Sie,Wrz,Pa\\u017a,Lis,Gru\",\"months_long\":\"Stycze\\u0144, Luty, Marzec, Kwiecie\\u0144, Maj, Czerwiec, Lipiec, Sierpie\\u0144, Wrzesie\\u0144, Pa\\u017adziernik, Listopad, Grudzie\\u0144\",\"inserttime_desc\":\"Wstaw czas\",\"insertdate_desc\":\"Wstaw dat\\u0119\",\"time_fmt\":\"%H:%M:%S\",\"date_fmt\":\"%Y-%m-%d\"},print:{\"print_desc\":\"Drukuj\"},preview:{\"preview_desc\":\"Podgl\\u0105d\"},directionality:{\"rtl_desc\":\"Kierunek od prawej do lewej\",\"ltr_desc\":\"Kierunek od lewej do prawej\"},layer:{content:\"Nowa warstwa...\",\"absolute_desc\":\"Prze\\u0142\\u0105cz pozycjonowanie absolutne\",\"backward_desc\":\"Przesu\\u0144 pod sp\\u00f3d\",\"forward_desc\":\"Przesu\\u0144 na wierzch\",\"insertlayer_desc\":\"Wstaw now\\u0105 warstw\\u0119\"},save:{\"save_desc\":\"Zachowaj\",\"cancel_desc\":\"Anuluj wszystkie zmiany\"},nonbreaking:{\"nonbreaking_desc\":\"Wstaw tward\\u0105 spacj\\u0119\"},iespell:{download:\"ieSpell nie wykryte. Czy przeprowadzi\\u0107 instalacj\\u0119 tego komponentu?\",\"iespell_desc\":\"Sprawd\\u017a pisowni\\u0119\"},advhr:{\"advhr_desc\":\"Pozioma linia\",\"delta_height\":\"\",\"delta_width\":\"\"},emotions:{\"emotions_desc\":\"Emotikony\",\"delta_height\":\"\",\"delta_width\":\"\"},searchreplace:{\"replace_desc\":\"Znajd\\u017a/zamie\\u0144\",\"search_desc\":\"Znajd\\u017a\",\"delta_width\":\"\",\"delta_height\":\"\"},advimage:{\"image_desc\":\"Wstaw/edytuj obraz\",\"delta_width\":\"\",\"delta_height\":\"\"},advlink:{\"link_desc\":\"Wstaw/edytuj link\",\"delta_height\":\"\",\"delta_width\":\"\"},xhtmlxtras:{\"attribs_desc\":\"Wstaw / Edytuj atrybuty\",\"ins_desc\":\"Wstawienie\",\"del_desc\":\"Usuni\\u0119cie\",\"acronym_desc\":\"Akronim\",\"abbr_desc\":\"Skr\\u00f3t\",\"cite_desc\":\"Cytat\",\"attribs_delta_height\":\"\",\"attribs_delta_width\":\"\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\"},style:{desc:\"Edytuj Style CSS\",\"delta_height\":\"\",\"delta_width\":\"\"},paste:{\"plaintext_mode\":\"Wklejanie jest teraz dost\\u0119pne w trybie tekstowym. Kliknij ponownie, aby prze\\u0142\\u0105czy\\u0107 si\\u0119 z powrotem do trybu wklejania sformatowanego tekstu.\",\"plaintext_mode_sticky\":\"Wklejanie jest teraz dost\\u0119pne w trybie tekstowym. Kliknij ponownie, aby prze\\u0142\\u0105czy\\u0107 si\\u0119 z powrotem do trybu wklejania sformatowanego tekstu. Po wklejeniu tekstu nast\\u0105pi powr\\u00f3t do trybu wklejania sformatowanego tekstu.\",\"selectall_desc\":\"Zaznacz wszystko\",\"paste_word_desc\":\"Wklej z Worda\",\"paste_text_desc\":\"Wklej jako zwyk\\u0142y tekst\"},\"paste_dlg\":{\"word_title\":\"U\\u017cyj CTRL+V na swojej klawiaturze \\u017ceby wklei\\u0107 tekst do okna.\",\"text_linebreaks\":\"Zachowaj ko\\u0144ce linii.\",\"text_title\":\"U\\u017cyj CTRL+V na swojej klawiaturze \\u017ceby wklei\\u0107 tekst do okna.\"},table:{cell:\"Kom\\u00f3rka\",col:\"Kolumna\",row:\"Wiersz\",del:\"Usu\\u0144 tabel\\u0119\",\"copy_row_desc\":\"Kopiuj wiersz...\",\"cut_row_desc\":\"Wytnij wiersz...\",\"paste_row_after_desc\":\"Wklej wiersz po...\",\"paste_row_before_desc\":\"Wklej wiersz przed...\",\"props_desc\":\"W\\u0142a\\u015bciwo\\u015bci tabeli\",\"cell_desc\":\"W\\u0142a\\u015bciwo\\u015bci kom\\u00f3rki\",\"row_desc\":\"W\\u0142a\\u015bciwo\\u015bci wiersza\",\"merge_cells_desc\":\"Po\\u0142\\u0105cz kom\\u00f3rki\",\"split_cells_desc\":\"Podziel po\\u0142\\u0105czone kom\\u00f3rki\",\"delete_col_desc\":\"Usu\\u0144 kolumn\\u0119\",\"col_after_desc\":\"Wstaw kolumn\\u0119 po...\",\"col_before_desc\":\"Wstaw kolumn\\u0119 przed...\",\"delete_row_desc\":\"Usu\\u0144 wiersz\",\"row_after_desc\":\"Wstaw nowy wiersz po...\",\"row_before_desc\":\"Wstaw nowy wiersz przed...\",desc:\"Wstaw now\\u0105 tabel\\u0119\",\"merge_cells_delta_height\":\"\",\"merge_cells_delta_width\":\"\",\"table_delta_height\":\"\",\"table_delta_width\":\"\",\"cellprops_delta_height\":\"\",\"cellprops_delta_width\":\"\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\"},autosave:{\"warning_message\":\"Je\\u015bli przywr\\u00f3cisz zapisan\\u0105 tre\\u015b\\u0107, stracisz ca\\u0142\\u0105 tre\\u015b\\u0107, kt\\u00f3ra teraz si\\u0119 znajduje w edytorze.\\\\n\\\\nJeste\\u015b pewien, \\u017ce chcesz przywr\\u00f3ci\\u0107 zapisan\\u0105 tre\\u015b\\u0107?\",\"restore_content\":\"Przywr\\u00f3\\u0107 tre\\u015b\\u0107 zapisan\\u0105 automatycznie.\",\"unload_msg\":\"Zmiany, kt\\u00f3rych dokona\\u0142e\\u015b zostan\\u0105 utracone je\\u015bli opu\\u015bcisz t\\u0119 stron\\u0119.\"},fullscreen:{desc:\"Prze\\u0142\\u0105cz tryb pe\\u0142noekranowy\"},media:{\"delta_height\":\"\",edit:\"Edytuj wbudowane media\",desc:\"Wstaw/edytuj wbudowane media\",\"delta_width\":\"\"},fullpage:{desc:\"W\\u0142a\\u015bciwo\\u015bci dokumentu\",\"delta_width\":\"\",\"delta_height\":\"\"},template:{desc:\"Wstaw tre\\u015b\\u0107 szablonu\"},visualchars:{desc:\"W\\u0142\\u0105cz/wy\\u0142\\u0105cz znaki kontrolne.\"},spellchecker:{desc:\"Sprawdzanie pisowni\",menu:\"Ustawienia sprawdzania pisowni\",\"ignore_word\":\"Ignoruj s\\u0142owo\",\"ignore_words\":\"Ignoruj wszystkie\",langs:\"J\\u0119zyki\",wait:\"Prosz\\u0119 czeka\\u0107...\",sug:\"Sugestie\",\"no_sug\":\"Brak sugestii\",\"no_mpell\":\"Nie znaleziono b\\u0142\\u0119d\\u00f3w.\"},pagebreak:{desc:\"Wstaw znak nowej strony.\"},advlist:{types:\"Rodzaje\",def:\"Domy\\u015blny\",\"lower_alpha\":\"Ma\\u0142e alfabetu\",\"lower_greek\":\"Ma\\u0142e greckie\",\"lower_roman\":\"Ma\\u0142e rzymskie\",\"upper_alpha\":\"Du\\u017ce alfabetu\",\"upper_roman\":\"Du\\u017ce rzymskie\",circle:\"Ko\\u0142o\",disc:\"Elipsa\",square:\"Kwadrat\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/pt.js",
    "content": "tinyMCE.addI18n({pt:{common:{\"more_colors\":\"Mais Cores\",\"invalid_data\":\"Erro: Valores inv\\u00e1lidos marcados em vermelho.\",\"popup_blocked\":\"Detectamos que o seu bloqueador de popups bloqueou uma janela que \\u00e9 essencial para a aplica\\u00e7\\u00e3o. Voc\\u00ea precisa desativar o bloqueador de janelas de popups para utilizar esta ferramenta.\",\"clipboard_no_support\":\"O seu browser n\\u00e3o suporta esta fun\\u00e7\\u00e3o, use os atalhos do teclado.\",\"clipboard_msg\":\"Copiar/recortar/colar n\\u00e3o est\\u00e1 dispon\\u00edvel no Mozilla e Firefox.\\\\nDeseja mais informa\\u00e7\\u00f5es sobre este problema?\",\"not_set\":\"-- N/A --\",\"class_name\":\"Classe\",browse:\"Procurar\",close:\"Fechar\",cancel:\"Cancelar\",update:\"Atualizar\",insert:\"Inserir\",apply:\"Aplicar\",\"edit_confirm\":\"Deseja usar o modo de edi\\u00e7\\u00e3o avan\\u00e7ado neste campo de texto?\"},contextmenu:{full:\"Justificado\",right:\"Direita\",center:\"Centro\",left:\"Esquerda\",align:\"Alinhamento\"},insertdatetime:{\"day_short\":\"Dom,Seg,Ter,Qua,Qui,Sex,Sab,Dom\",\"day_long\":\"Domingo,Segunda-feira,Ter\\u00e7a-feira,Quarta-feira,Quinta-feira,Sexta-feira,S\\u00e1bado,Domingo\",\"months_short\":\"Jan,Fev,Mar,Abr,Mai,Jun,Jul,Ago,Set,Out,Nov,Dez\",\"months_long\":\"Janeiro,Fevereiro,Mar\\u00e7o,Abril,Maio,Junho,Julho,Agosto,Setembro,Outubro,Novembro,Dezembro\",\"inserttime_desc\":\"Inserir hora\",\"insertdate_desc\":\"Inserir data\",\"time_fmt\":\"%H:%M:%S\",\"date_fmt\":\"%d-%m-%Y\"},print:{\"print_desc\":\"Imprimir\"},preview:{\"preview_desc\":\"Pr\\u00e9-visualizar\"},directionality:{\"rtl_desc\":\"Da direita para esquerda\",\"ltr_desc\":\"Da esquerda para direita\"},layer:{content:\"Nova camada...\",\"absolute_desc\":\"Alternar o posicionamento absoluto\",\"backward_desc\":\"Mover para tr\\u00e1s\",\"forward_desc\":\"Mover para frente\",\"insertlayer_desc\":\"Inserir nova camada\"},save:{\"save_desc\":\"Salvar\",\"cancel_desc\":\"Cancelar todas as altera\\u00e7\\u00f5es\"},nonbreaking:{\"nonbreaking_desc\":\"Inserir um espa\\u00e7o \\\"sem quebra\\\"\"},iespell:{download:\"Plugin de ortografia n\\u00e3o-detectado. Deseja instalar agora?\",\"iespell_desc\":\"Verificar ortografia\"},advhr:{\"advhr_desc\":\"Separador horizontal\",\"delta_height\":\"\",\"delta_width\":\"\"},emotions:{\"emotions_desc\":\"Emoticons\",\"delta_height\":\"\",\"delta_width\":\"\"},searchreplace:{\"replace_desc\":\"Localizar/substituir\",\"search_desc\":\"Localizar\",\"delta_width\":\"\",\"delta_height\":\"\"},advimage:{\"image_desc\":\"Inserir/editar imagem\",\"delta_width\":\"\",\"delta_height\":\"\"},advlink:{\"link_desc\":\"Inserir/editar hyperlink\",\"delta_height\":\"\",\"delta_width\":\"\"},xhtmlxtras:{\"attribs_desc\":\"Inserir/Editar atributos\",\"ins_desc\":\"Inserir\",\"del_desc\":\"Apagar\",\"acronym_desc\":\"Acr\\u00f4nimo\",\"abbr_desc\":\"Abrevia\\u00e7\\u00e3o\",\"cite_desc\":\"Cita\\u00e7\\u00e3o\",\"attribs_delta_height\":\"\",\"attribs_delta_width\":\"\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\"},style:{desc:\"Editar CSS\",\"delta_height\":\"\",\"delta_width\":\"\"},paste:{\"plaintext_mode\":\"Comando colar est\\u00e1 em modo texto simples. Clique novamente para voltar para o modo normal.\",\"plaintext_mode_sticky\":\"Comando colar est\\u00e1 em modo texto simples. Clique novamente para voltar para o modo normal. Depois de colar alguma coisa retornar\\u00e1 para o modo normal.\",\"selectall_desc\":\"Selecionar tudo\",\"paste_word_desc\":\"Colar (copiado do WORD)\",\"paste_text_desc\":\"Colar como texto simples\"},\"paste_dlg\":{\"word_title\":\"Use CTRL+V para colar o texto na janela.\",\"text_linebreaks\":\"Manter quebras de linha\",\"text_title\":\"Use CTRL+V para colar o texto na janela.\"},table:{cell:\"C\\u00e9lula\",col:\"Coluna\",row:\"Linha\",del:\"Apagar tabela\",\"copy_row_desc\":\"Copiar linha\",\"cut_row_desc\":\"Recortar linha\",\"paste_row_after_desc\":\"Colar linha depois\",\"paste_row_before_desc\":\"Colar linha antes\",\"props_desc\":\"Propriedades da tabela\",\"cell_desc\":\"Propriedades das c\\u00e9lulas\",\"row_desc\":\"Propriedades das linhas\",\"merge_cells_desc\":\"Unir c\\u00e9lulas\",\"split_cells_desc\":\"Dividir c\\u00e9lulas\",\"delete_col_desc\":\"Remover coluna\",\"col_after_desc\":\"Inserir coluna depois\",\"col_before_desc\":\"Inserir coluna antes\",\"delete_row_desc\":\"Apagar linha\",\"row_after_desc\":\"Inserir linha depois\",\"row_before_desc\":\"Inserir linha antes\",desc:\"Inserir nova tabela\",\"merge_cells_delta_height\":\"\",\"merge_cells_delta_width\":\"\",\"table_delta_height\":\"\",\"table_delta_width\":\"\",\"cellprops_delta_height\":\"\",\"cellprops_delta_width\":\"\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\"},autosave:{\"warning_message\":\"Se restaurar o conte\\u00fado, voc\\u00ea ir\\u00e1 perder tudo que est\\u00e1 atualmente no editor.\\\\n\\\\nTem certeza que quer restaurar o conte\\u00fado salvo?\",\"restore_content\":\"Restaura conte\\u00fado salvo automaticamente.\",\"unload_msg\":\"As mudan\\u00e7as efetuadas ser\\u00e3o perdidas se sair desta p\\u00e1gina.\"},fullscreen:{desc:\"Tela Inteira\"},media:{edit:\"Editar m\\u00eddia incorporada\",desc:\"Inserir/Editar m\\u00eddia incorporada\",\"delta_height\":\"\",\"delta_width\":\"\"},fullpage:{desc:\"Propriedades do Documento\",\"delta_width\":\"\",\"delta_height\":\"\"},template:{desc:\"Inserir template\"},visualchars:{desc:\"Caracteres de controle visual ligado/desligado\"},spellchecker:{desc:\"Alternar verifica\\u00e7\\u00e3o ortogr\\u00e1fica\",menu:\"Configura\\u00e7\\u00f5es de ortografia\",\"ignore_word\":\"Ignorar palavra\",\"ignore_words\":\"Ignorar tudo\",langs:\"Linguagens\",wait:\"Aguarde...\",sug:\"Sugest\\u00f5es\",\"no_sug\":\"Sem sugest\\u00f5es\",\"no_mpell\":\"N\\u00e3o foram detectados erros de ortografia.\"},pagebreak:{desc:\"Inserir quebra de p\\u00e1gina.\"},advlist:{types:\"Tipos\",def:\"Padr\\u00e3o\",\"lower_alpha\":\"Alfabeto min\\u00fasculo\",\"lower_greek\":\"Alfabeto grego\",\"lower_roman\":\"Num. romanos min\\u00fasculos\",\"upper_alpha\":\"Alfabeto mai\\u00fasculos\",\"upper_roman\":\"Num. romanos mai\\u00fasculos\",circle:\"C\\u00edrculo\",disc:\"Disco\",square:\"Quadrado\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/ro.js",
    "content": "tinyMCE.addI18n({ro:{common:{more_colors:\"Mai multe culori\",invalid_data:\"Ave\\u0163i erori. Datele gre\\u015fite sunt \\u00een ro\\u015fu.\",popup_blocked:\"Ne pare r\\u0103u, dar un popup-blocker a dezativat o fereastr\\u0103 care d\\u0103 func\\u0163ionalitate aplica\\u0163iei.Trebuie s\\u0103 dezactiva\\u0163i acel popup-blocker pentru acest site pentru a folosi aplica\\u0163ia la capacitate maxim\\u0103.\",clipboard_no_support:\"Deocamdat\\u0103 nu este suportat\\u0103 de browser. V\\u0103 rug\\u0103m s\\u0103 folosi\\u0163i combina\\u0163ii de taste.\",clipboard_msg:\"Copiere/T\\u0103iere/Lipire nu sunt disponibile \\u00een  Mozilla \\u015fi Firefox.\\\\nDori\\u0163i mai multe informa\\u0163ii despre aceast\\u0103 problem\\u0103?\",not_set:\"-- Nestat\\u0103 --\",class_name:\"Clas\\u0103\",browse:\"R\\u0103sfoie\\u015fte\",close:\"\\u00cenchide\",cancel:\"Anulare\",update:\"Actualizeaz\\u0103\",insert:\"Insereaz\\u0103\",apply:\"Aplic\\u0103\",edit_confirm:\"Dori\\u0163i s\\u0103 folosi\\u0163i un editor avansat pentru aceast\\u0103 zon\\u0103 de text?\"},contextmenu:{full:\"Justify\",right:\"Dreapta\",center:\"Centru\",left:\"St\\u00e2nga\",align:\"Aliniere\"},insertdatetime:{day_short:\"Dum,Lun,Mar,Mie,Joi,Vin,S\\u00e2m,Dum\",day_long:\"Duminic\\u0103,Luni,Mar\\u0163i,Miercuri,Joi,Vineri,S\\u00e2mb\\u0103t\\u0103,Duminic\\u0103\",months_short:\"Ian,Feb,Mar,Apr,Mai,Iun,Iul,Aug,Sep,Oct,Noi,Dec\",months_long:\"Ianuarie,Februarie,Martie,Aprilie,Mai,Iunie,Iulie,August,Septembrie,Octombrie,Noiembrie,Decembrie \",inserttime_desc:\"Insereaz\\u0103 or\\u0103\",insertdate_desc:\"Insereaz\\u0103 dat\\u0103\",time_fmt:\"%H:%M:%S\",date_fmt:\"%Y-%m-%d\"},print:{print_desc:\"Imprimare\"},preview:{preview_desc:\"Previzualizare\"},directionality:{rtl_desc:\"Direc\\u0163ia de la dreapta la st\\u00e2nga\",ltr_desc:\"Direc\\u0163ia de la st\\u00e2nga la dreapta\"},layer:{content:\"Strat nou ...\",absolute_desc:\"Pozi\\u0163ionare absolut\\u0103\",backward_desc:\"Mut\\u0103 \\u00eenapoi\",forward_desc:\"Mut\\u0103 \\u00eenainte\",insertlayer_desc:\"Insereaz\\u0103 stat nou\"},save:{save_desc:\"Salveaz\\u0103\",cancel_desc:\"Anuleaz\\u0103 toate schimb\\u0103rile\"},nonbreaking:{nonbreaking_desc:\"Insereaz\\u0103 caracterul spa\\u0163iu\"},iespell:{download:\"ieSpell nu a fost detectat. Dori\\u0163i s\\u0103-l instala\\u0163i?\",iespell_desc:\"Ruleaz\\u0103 corectorul de limb\\u0103\"},advhr:{advhr_desc:\"Linie orizontal\\u0103\",delta_height:\"\",delta_width:\"\"},emotions:{emotions_desc:\"Figurine\",delta_height:\"\",delta_width:\"\"},searchreplace:{replace_desc:\"Caut\\u0103/\\u00cenlocuie\\u015fte\",search_desc:\"Caut\\u0103\",delta_width:\"\",delta_height:\"\"},advimage:{image_desc:\"Inserare/editare imagine\",delta_width:\"\",delta_height:\"\"},advlink:{link_desc:\"Inserare/editare leg\\u0103tur\\u0103\",delta_height:\"\",delta_width:\"\"},xhtmlxtras:{attribs_desc:\"Insereaz\\u0103/editeaz\\u0103 atribute\",ins_desc:\"Inserare\",del_desc:\"\\u015etergere\",acronym_desc:\"Acronim\",abbr_desc:\"Abreviere\",cite_desc:\"Citat\",attribs_delta_height:\"\",attribs_delta_width:\"\",ins_delta_height:\"\",ins_delta_width:\"\",del_delta_height:\"\",del_delta_width:\"\",acronym_delta_height:\"\",acronym_delta_width:\"\",abbr_delta_height:\"\",abbr_delta_width:\"\",cite_delta_height:\"\",cite_delta_width:\"\"},style:{desc:\"Editare CSS\",delta_height:\"\",delta_width:\"\"},paste:{plaintext_mode:\"Lipirea este acum \\u00een modul text simplu. Ap\\u0103sa\\u0163i din nou pentru comutarea la modul normal de lipire.\",plaintext_mode_sticky:\"Lipirea este acum \\u00een modul text simplu. Ap\\u0103sa\\u0163i aici pentru comutarea la modul normal de lipire. Dup\\u0103 ce ve\\u0163i lipi ceva ve\\u0163i reveni la modul normal de lipire.\",selectall_desc:\"Selecteaz\\u0103 tot\",paste_word_desc:\"Lipire din Word\",paste_text_desc:\"Lipire ca text simplu\"},paste_dlg:{word_title:\"Folosi\\u0163i CTRL+V pentru a lipi \\u00een aceast\\u0103 zon\\u0103.\",text_linebreaks:\"P\\u0103streaz\\u0103 separatoarele de linii.\",text_title:\"Folosi\\u0163i CTRL+V pentru a lipi \\u00een aceast\\u0103 zon\\u0103.\"},table:{cell:\"Celul\\u0103\",col:\"Coloan\\u0103\",row:\"R\\u00e2nd\",del:\"\\u015eterge tabel\",copy_row_desc:\"Copiaz\\u0103 r\\u00e2nd\",cut_row_desc:\"Taie r\\u00e2nd\",paste_row_after_desc:\"Lipe\\u015fte r\\u00e2nd dup\\u0103\",paste_row_before_desc:\"Lipe\\u015fte r\\u00e2nd \\u00eenainte\",props_desc:\"Propriet\\u0103\\u0163i tabel\",cell_desc:\"Propriet\\u0103\\u0163i celul\\u0103\",row_desc:\"Propriet\\u0103\\u0163i r\\u00e2nd\",merge_cells_desc:\"Uni\\u0163i celule\",split_cells_desc:\"Separa\\u0163i celule unite\",delete_col_desc:\"\\u015eterge coloan\\u0103\",col_after_desc:\"Inserare coloan\\u0103 dup\\u0103\",col_before_desc:\"Inserare coloan\\u0103 \\u00eenainte\",delete_row_desc:\"\\u015eterge r\\u00e2nd\",row_after_desc:\"Inserare r\\u00e2nd dup\\u0103\",row_before_desc:\"Inserare r\\u00e2nd \\u00eenainte\",desc:\"Insereaz\\u0103 tabel nou\",merge_cells_delta_height:\"\",merge_cells_delta_width:\"\",table_delta_height:\"\",table_delta_width:\"\",cellprops_delta_height:\"\",cellprops_delta_width:\"\",rowprops_delta_height:\"\",rowprops_delta_width:\"\"},autosave:{warning_message:\"Daca restaurati continutul salvat vei pierde tot continutul existent din editor.\\\\n\\\\nSigur doriti sa restaurati continutul salvat?.\",restore_content:\"Restaureaz\\u0103 con\\u0163inutul salvat automat.\",unload_msg:\"Modific\\u0103rile nu vor fi salvate.\"},fullscreen:{desc:\"Mod ecran complet\"},media:{edit:\"Editeaz\\u0103 media\",desc:\"Insereaz\\u0103 / editeaz\\u0103 media\",delta_height:\"\",delta_width:\"\"},fullpage:{desc:\"Propriet\\u0103\\u0163i document\",delta_width:\"\",delta_height:\"\"},template:{desc:\"Insereaz\\u0103 un \\u015fablon predefinit\"},visualchars:{desc:\"Comut\\u0103 caracterele vizuale de control\"},spellchecker:{desc:\"Activare/dezactivare dic\\u0163ionar\",menu:\"Set\\u0103ri dic\\u0163ionar\",ignore_word:\"Ignor\\u0103 cuv\\u00e2nt\",ignore_words:\"Ignor\\u0103 toate\",langs:\"Limbi\",wait:\"V\\u0103 rog a\\u015ftepta\\u0163i...\",sug:\"Sugestii\",no_sug:\"Nu sunt sugestii.\",no_mpell:\"Nu sunt gre\\u015feli.\"},pagebreak:{desc:\"Insereaz\\u0103 un separator de pagin\\u0103\"},advlist:{types:\"Tipuri\",def:\"Implicit\",lower_alpha:\"Minuscule alfabetice\",lower_greek:\"Minuscule grece\\u015fti\",lower_roman:\"Minuscule romane\",upper_alpha:\"Majuscule alfabetice\",upper_roman:\"Majuscule romane\",circle:\"Cerc\",disc:\"Disc\",square:\"P\\u0103trat\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/ru.js",
    "content": "tinyMCE.addI18n({ru:{common:{\"more_colors\":\"\\u0414\\u0440\\u0443\\u0433\\u0438\\u0435 \\u0446\\u0432\\u0435\\u0442\\u0430...\",\"invalid_data\":\"\\u041e\\u0448\\u0438\\u0431\\u043a\\u0430: \\u0412\\u0432\\u0435\\u0434\\u0435\\u043d\\u043e \\u043d\\u0435\\u0432\\u0435\\u0440\\u043d\\u043e\\u0435 \\u0437\\u043d\\u0430\\u0447\\u0435\\u043d\\u0438\\u0435, \\u043e\\u043d\\u043e \\u043e\\u0442\\u043c\\u0435\\u0447\\u0435\\u043d\\u043e \\u043a\\u0440\\u0430\\u0441\\u043d\\u044b\\u043c.\",\"popup_blocked\":\"\\u0411\\u043b\\u043e\\u043a\\u0438\\u0440\\u0430\\u0442\\u043e\\u0440 \\u0432\\u0441\\u043f\\u043b\\u044b\\u0432\\u0430\\u044e\\u0449\\u0438\\u0445 \\u043e\\u043a\\u043e\\u043d \\u0437\\u0430\\u043a\\u0440\\u044b\\u043b \\u043d\\u0435\\u043e\\u0431\\u0445\\u043e\\u0434\\u0438\\u043c\\u043e\\u0435 \\u043e\\u043a\\u043d\\u043e. \\u0414\\u043b\\u044f \\u043f\\u043e\\u043b\\u043d\\u043e\\u0446\\u0435\\u043d\\u043d\\u043e\\u0439 \\u0440\\u0430\\u0431\\u043e\\u0442\\u044b, \\u043e\\u0442\\u043a\\u043b\\u044e\\u0447\\u0438\\u0442\\u0435 \\u0431\\u043b\\u043e\\u043a\\u0438\\u0440\\u043e\\u0432\\u043a\\u0443 \\u043d\\u0430 \\u044d\\u0442\\u043e\\u043c \\u0441\\u0430\\u0439\\u0442\\u0435.\",\"clipboard_no_support\":\"\\u041d\\u0435 \\u043f\\u043e\\u0434\\u0434\\u0435\\u0440\\u0436\\u0438\\u0432\\u0430\\u0435\\u0442\\u0441\\u044f \\u0412\\u0430\\u0448\\u0438\\u043c \\u0431\\u0440\\u0430\\u0443\\u0437\\u0435\\u0440\\u043e\\u043c, \\u0438\\u0441\\u043f\\u043e\\u043b\\u044c\\u0437\\u0443\\u0439\\u0442\\u0435 \\u0433\\u043e\\u0440\\u044f\\u0447\\u0438\\u0435 \\u043a\\u043b\\u0430\\u0432\\u0438\\u0448\\u0438.\",\"clipboard_msg\":\"\\u041a\\u043e\\u043f\\u0438\\u0440\\u043e\\u0432\\u0430\\u043d\\u0438\\u0435, \\u0432\\u044b\\u0440\\u0435\\u0437\\u043a\\u0430 \\u0438 \\u0432\\u0441\\u0442\\u0430\\u0432\\u043a\\u0430 \\u043d\\u0435 \\u0440\\u0430\\u0431\\u043e\\u0442\\u0430\\u044e\\u0442 \\u0432 Firefox.\\\\r\\\\n\\u0425\\u043e\\u0442\\u0438\\u0442\\u0435 \\u043f\\u043e\\u043b\\u0443\\u0447\\u0438\\u0442\\u044c \\u0431\\u043e\\u043b\\u0435\\u0435 \\u043f\\u043e\\u0434\\u0440\\u043e\\u0431\\u043d\\u0443\\u044e \\u0438\\u043d\\u0444\\u043e\\u0440\\u043c\\u0430\\u0446\\u0438\\u044e?\",\"not_set\":\"- \\u041d\\u0435 \\u0443\\u0441\\u0442\\u0430\\u043d\\u043e\\u0432\\u043b\\u0435\\u043d\\u043e -\",\"class_name\":\"\\u041a\\u043b\\u0430\\u0441\\u0441\",browse:\"\\u041f\\u0440\\u043e\\u0441\\u043c\\u043e\\u0442\\u0440\",close:\"\\u0417\\u0430\\u043a\\u0440\\u044b\\u0442\\u044c\",cancel:\"\\u041e\\u0442\\u043c\\u0435\\u043d\\u0438\\u0442\\u044c\",update:\"\\u041e\\u0431\\u043d\\u043e\\u0432\\u0438\\u0442\\u044c\",insert:\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u044c\",apply:\"\\u041f\\u0440\\u0438\\u043c\\u0435\\u043d\\u0438\\u0442\\u044c\",\"edit_confirm\":\"\\u0418\\u0441\\u043f\\u043e\\u043b\\u044c\\u0437\\u043e\\u0432\\u0430\\u0442\\u044c WYSIWYG \\u0440\\u0435\\u0436\\u0438\\u043c \\u0434\\u043b\\u044f \\u044d\\u0442\\u043e\\u0433\\u043e \\u043f\\u043e\\u043b\\u044f?\"},contextmenu:{full:\"\\u041f\\u043e \\u0448\\u0438\\u0440\\u0438\\u043d\\u0435\",right:\"\\u041f\\u043e \\u043f\\u0440\\u0430\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",center:\"\\u041f\\u043e \\u0446\\u0435\\u043d\\u0442\\u0440\\u0443\",left:\"\\u041f\\u043e \\u043b\\u0435\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",align:\"\\u0412\\u044b\\u0440\\u0430\\u0432\\u043d\\u0438\\u0432\\u0430\\u043d\\u0438\\u0435\"},insertdatetime:{\"day_short\":\"\\u0432\\u0441,\\u043f\\u043d,\\u0432\\u0442,\\u0441\\u0440,\\u0447\\u0442,\\u043f\\u0442,\\u0441\\u0431,\\u0432\\u0441\",\"day_long\":\"\\u0432\\u043e\\u0441\\u043a\\u0440\\u0435\\u0441\\u0435\\u043d\\u044c\\u0435,\\u043f\\u043e\\u043d\\u0435\\u0434\\u0435\\u043b\\u044c\\u043d\\u0438\\u043a,\\u0432\\u0442\\u043e\\u0440\\u043d\\u0438\\u043a,\\u0441\\u0440\\u0435\\u0434\\u0430,\\u0447\\u0435\\u0442\\u0432\\u0435\\u0440\\u0433,\\u043f\\u044f\\u0442\\u043d\\u0438\\u0446\\u0430,\\u0441\\u0443\\u0431\\u0431\\u043e\\u0442\\u0430,\\u0432\\u043e\\u0441\\u043a\\u0440\\u0435\\u0441\\u0435\\u043d\\u044c\\u0435\",\"months_short\":\"\\u044f\\u043d\\u0432,\\u0444\\u0435\\u0432,\\u043c\\u0430\\u0440\\u0442,\\u0430\\u043f\\u0440,\\u043c\\u0430\\u0439,\\u0438\\u044e\\u043d\\u044c,\\u0438\\u044e\\u043b\\u044c,\\u0430\\u0432\\u0433,\\u0441\\u0435\\u043d,\\u043e\\u043a\\u0442,\\u043d\\u043e\\u044f,\\u0434\\u0435\\u043a\",\"months_long\":\"\\u044f\\u043d\\u0432\\u0430\\u0440\\u044c,\\u0444\\u0435\\u0432\\u0440\\u0430\\u043b\\u044c,\\u043c\\u0430\\u0440\\u0442,\\u0430\\u043f\\u0440\\u0435\\u043b\\u044c,\\u043c\\u0430\\u0439,\\u0438\\u044e\\u043d\\u044c,\\u0438\\u044e\\u043b\\u044c,\\u0430\\u0432\\u0433\\u0443\\u0441\\u0442,\\u0441\\u0435\\u043d\\u0442\\u044f\\u0431\\u0440\\u044c,\\u043e\\u043a\\u0442\\u044f\\u0431\\u0440\\u044c,\\u043d\\u043e\\u044f\\u0431\\u0440\\u044c,\\u0434\\u0435\\u043a\\u0430\\u0431\\u0440\\u044c\",\"inserttime_desc\":\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\u0432\\u0440\\u0435\\u043c\\u044f\",\"insertdate_desc\":\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\u0434\\u0430\\u0442\\u0443\",\"time_fmt\":\"%H:%M:%S\",\"date_fmt\":\"%d.%m.%Y\"},print:{\"print_desc\":\"\\u041f\\u0435\\u0447\\u0430\\u0442\\u044c\"},preview:{\"preview_desc\":\"\\u041f\\u0440\\u0435\\u0434\\u0432\\u0430\\u0440\\u0438\\u0442\\u0435\\u043b\\u044c\\u043d\\u044b\\u0439 \\u043f\\u0440\\u043e\\u0441\\u043c\\u043e\\u0442\\u0440\"},directionality:{\"rtl_desc\":\"\\u041d\\u0430\\u043f\\u0440\\u0430\\u0432\\u043b\\u0435\\u043d\\u0438\\u0435 \\u0441\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043d\\u0430\\u043b\\u0435\\u0432\\u043e\",\"ltr_desc\":\"\\u041d\\u0430\\u043f\\u0440\\u0430\\u0432\\u043b\\u0435\\u043d\\u0438\\u0435 \\u0441\\u043b\\u0435\\u0432\\u0430 \\u043d\\u0430\\u043f\\u0440\\u0430\\u0432\\u043e\"},layer:{content:\"\\u041d\\u043e\\u0432\\u044b\\u0439 \\u0441\\u043b\\u043e\\u0439\",\"absolute_desc\":\"\\u0410\\u0431\\u0441\\u043e\\u043b\\u044e\\u0442\\u043d\\u043e\\u0435 \\u043f\\u043e\\u0437\\u0438\\u0446\\u0438\\u0440\\u043e\\u0432\\u0430\\u043d\\u0438\\u0435\",\"backward_desc\":\"\\u041d\\u0430 \\u0437\\u0430\\u0434\\u043d\\u0438\\u0439 \\u043f\\u043b\\u0430\\u043d\",\"forward_desc\":\"\\u041d\\u0430 \\u043f\\u0435\\u0440\\u0435\\u0434\\u043d\\u0438\\u0439 \\u043f\\u043b\\u0430\\u043d\",\"insertlayer_desc\":\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\u0441\\u043b\\u043e\\u0439\"},save:{\"save_desc\":\"\\u0421\\u043e\\u0445\\u0440\\u0430\\u043d\\u0438\\u0442\\u044c\",\"cancel_desc\":\"\\u041e\\u0442\\u043c\\u0435\\u043d\\u0438\\u0442\\u044c \\u0432\\u0441\\u0435 \\u0438\\u0437\\u043c\\u0435\\u043d\\u0435\\u043d\\u0438\\u044f\"},nonbreaking:{\"nonbreaking_desc\":\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\u043d\\u0435\\u0440\\u0430\\u0437\\u0440\\u044b\\u0432\\u043d\\u044b\\u0439 \\u043f\\u0440\\u043e\\u0431\\u0435\\u043b\"},iespell:{download:\"ieSpell \\u043d\\u0435 \\u043d\\u0430\\u0439\\u0434\\u0435\\u043d. \\u0416\\u0435\\u043b\\u0430\\u0435\\u0442\\u0435 \\u0443\\u0441\\u0442\\u0430\\u043d\\u043e\\u0432\\u0438\\u0442\\u044c?\",\"iespell_desc\":\"\\u041f\\u0440\\u043e\\u0432\\u0435\\u0440\\u0438\\u0442\\u044c \\u043e\\u0440\\u0444\\u043e\\u0433\\u0440\\u0430\\u0444\\u0438\\u044e\"},advhr:{\"advhr_desc\":\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\u0440\\u0430\\u0437\\u0434\\u0435\\u043b\\u0438\\u0442\\u0435\\u043b\\u044c\",\"delta_height\":\"\",\"delta_width\":\"\"},emotions:{\"emotions_desc\":\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\u0441\\u043c\\u0430\\u0439\\u043b\",\"delta_height\":\"\",\"delta_width\":\"\"},searchreplace:{\"replace_desc\":\"\\u0417\\u0430\\u043c\\u0435\\u043d\\u0438\\u0442\\u044c\",\"search_desc\":\"\\u041d\\u0430\\u0439\\u0442\\u0438\",\"delta_width\":\"\",\"delta_height\":\"\"},advimage:{\"delta_width\":\"200\",\"image_desc\":\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c/\\u0418\\u0437\\u043c\\u0435\\u043d\\u0438\\u0442\\u044c \\u0438\\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u0438\\u0435\",\"delta_height\":\"\"},advlink:{\"delta_width\":\"200\",\"link_desc\":\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c/\\u0418\\u0437\\u043c\\u0435\\u043d\\u0438\\u0442\\u044c \\u0441\\u0441\\u044b\\u043b\\u043a\\u0443\",\"delta_height\":\"\"},xhtmlxtras:{\"attribs_desc\":\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c/\\u0418\\u0437\\u043c\\u0435\\u043d\\u0438\\u0442\\u044c \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\",\"ins_desc\":\"\\u0417\\u0430\\u043c\\u0435\\u043d\\u0430\",\"del_desc\":\"\\u0423\\u0434\\u0430\\u043b\\u0435\\u043d\\u0438\\u0435\",\"acronym_desc\":\"\\u0410\\u0431\\u0431\\u0440\\u0435\\u0432\\u0438\\u0430\\u0446\\u0438\\u044f\",\"abbr_desc\":\"\\u0421\\u043e\\u043a\\u0440\\u0430\\u0449\\u0435\\u043d\\u0438\\u0435\",\"cite_desc\":\"\\u0426\\u0438\\u0442\\u0438\\u0440\\u043e\\u0432\\u0430\\u043d\\u0438\\u0435\",\"attribs_delta_height\":\"\",\"attribs_delta_width\":\"\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\"},style:{desc:\"\\u0420\\u0435\\u0434\\u0430\\u043a\\u0442\\u0438\\u0440\\u043e\\u0432\\u0430\\u0442\\u044c CSS \\u0441\\u0442\\u0438\\u043b\\u044c\",\"delta_height\":\"\",\"delta_width\":\"\"},paste:{\"plaintext_mode\":\"Paste is now in plain text mode. Click again to toggle back to regular paste mode.\",\"plaintext_mode_sticky\":\"Paste is now in plain text mode. Click again to toggle back to regular paste mode. After you paste something you will be returned to regular paste mode.\",\"selectall_desc\":\"\\u0412\\u044b\\u0434\\u0435\\u043b\\u0438\\u0442\\u044c \\u0432\\u0441\\u0435\",\"paste_word_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u044c \\u0438\\u0437 Word\",\"paste_text_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u044c \\u043a\\u0430\\u043a \\u0442\\u0435\\u043a\\u0441\\u0442\"},\"paste_dlg\":{\"word_title\":\"\\u0418\\u0441\\u043f\\u043e\\u043b\\u044c\\u0437\\u0443\\u0439\\u0442\\u0435 CTRL+V \\u0434\\u043b\\u044f \\u0432\\u0441\\u0442\\u0430\\u0432\\u043a\\u0438 \\u0442\\u0435\\u043a\\u0441\\u0442\\u0430 \\u0432 \\u043e\\u043a\\u043d\\u043e.\",\"text_linebreaks\":\"\\u0421\\u043e\\u0445\\u0440\\u0430\\u043d\\u0438\\u0442\\u044c \\u043f\\u0435\\u0440\\u0435\\u043d\\u043e\\u0441\\u044b \\u0441\\u0442\\u0440\\u043e\\u043a\",\"text_title\":\"\\u0418\\u0441\\u043f\\u043e\\u043b\\u044c\\u0437\\u0443\\u0439\\u0442\\u0435 CTRL+V \\u0434\\u043b\\u044f \\u0432\\u0441\\u0442\\u0430\\u0432\\u043a\\u0438 \\u0442\\u0435\\u043a\\u0441\\u0442\\u0430 \\u0432 \\u043e\\u043a\\u043d\\u043e.\"},table:{\"cellprops_delta_width\":\"30\",cell:\"\\u042f\\u0447\\u0435\\u0439\\u043a\\u0430\",col:\"\\u0421\\u0442\\u043e\\u043b\\u0431\\u0435\\u0446\",row:\"\\u0421\\u0442\\u0440\\u043e\\u043a\\u0430\",del:\"\\u0423\\u0434\\u0430\\u043b\\u0438\\u0442\\u044c \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0443\",\"copy_row_desc\":\"\\u041a\\u043e\\u043f\\u0438\\u0440\\u043e\\u0432\\u0430\\u0442\\u044c \\u0441\\u0442\\u0440\\u043e\\u043a\\u0443\",\"cut_row_desc\":\"\\u0412\\u044b\\u0440\\u0435\\u0437\\u0430\\u0442\\u044c \\u0441\\u0442\\u0440\\u043e\\u043a\\u0443\",\"paste_row_after_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u044c \\u0441\\u0442\\u0440\\u043e\\u043a\\u0443 \\u0441\\u043d\\u0438\\u0437\\u0443\",\"paste_row_before_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u044c \\u0441\\u0442\\u0440\\u043e\\u043a\\u0443 \\u0441\\u0432\\u0435\\u0440\\u0445\\u0443\",\"props_desc\":\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u044b\",\"cell_desc\":\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b \\u044f\\u0447\\u0435\\u0439\\u043a\\u0438\",\"row_desc\":\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b \\u0441\\u0442\\u0440\\u043e\\u043a\\u0438\",\"merge_cells_desc\":\"\\u041e\\u0431\\u044a\\u0435\\u0434\\u0438\\u043d\\u0438\\u0442\\u044c \\u044f\\u0447\\u0435\\u0439\\u043a\\u0438\",\"split_cells_desc\":\"\\u0420\\u0430\\u0437\\u0431\\u0438\\u0442\\u044c \\u044f\\u0447\\u0435\\u0439\\u043a\\u0443\",\"delete_col_desc\":\"\\u0423\\u0434\\u0430\\u043b\\u0438\\u0442\\u044c \\u0441\\u0442\\u043e\\u043b\\u0431\\u0435\\u0446\",\"col_after_desc\":\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\u0441\\u0442\\u043e\\u043b\\u0431\\u0435\\u0446 \\u0441\\u043f\\u0440\\u0430\\u0432\\u0430\",\"col_before_desc\":\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\u0441\\u0442\\u043e\\u043b\\u0431\\u0435\\u0446 \\u0441\\u043b\\u0435\\u0432\\u0430\",\"delete_row_desc\":\"\\u0423\\u0434\\u0430\\u043b\\u0438\\u0442\\u044c \\u0441\\u0442\\u0440\\u043e\\u043a\\u0443\",\"row_after_desc\":\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\u0441\\u0442\\u0440\\u043e\\u043a\\u0443 \\u0441\\u043d\\u0438\\u0437\\u0443\",\"row_before_desc\":\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\u0441\\u0442\\u0440\\u043e\\u043a\\u0443 \\u0441\\u0432\\u0435\\u0440\\u0445\\u0443\",desc:\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u043b\\u0435\\u043d\\u0438\\u0435/\\u0418\\u0437\\u043c\\u0435\\u043d\\u0435\\u043d\\u0438\\u0435 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u044b\",\"merge_cells_delta_height\":\"\",\"merge_cells_delta_width\":\"\",\"table_delta_height\":\"\",\"table_delta_width\":\"\",\"cellprops_delta_height\":\"\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\"},autosave:{\"warning_message\":\"\\u0412\\u0441\\u0435 \\u043f\\u0440\\u043e\\u0438\\u0437\\u0432\\u0435\\u0434\\u0435\\u043d\\u043d\\u044b\\u0435 \\u0438\\u0437\\u043c\\u0435\\u043d\\u0435\\u043d\\u0438\\u044f \\u0431\\u0443\\u0434\\u0443\\u0442 \\u0443\\u0442\\u0435\\u0440\\u044f\\u043d\\u044b.\\\\n\\\\n\\u041f\\u0440\\u043e\\u0434\\u043e\\u043b\\u0436\\u0438\\u0442\\u044c \\u0432\\u043e\\u0441\\u0441\\u0442\\u0430\\u043d\\u043e\\u0432\\u043b\\u0435\\u043d\\u0438\\u0435 \\u0430\\u0432\\u0442\\u043e\\u043c\\u0430\\u0442\\u0438\\u0447\\u0435\\u0441\\u043a\\u043e\\u0433\\u043e \\u0441\\u043e\\u0445\\u0440\\u0430\\u043d\\u0435\\u043d\\u0438\\u044f?\",\"restore_content\":\"\\u0412\\u043e\\u0441\\u0441\\u0442\\u0430\\u043d\\u043e\\u0432\\u0438\\u0442\\u044c \\u0430\\u0432\\u0442\\u043e\\u043c\\u0430\\u0442\\u0438\\u0447\\u0435\\u0441\\u043a\\u043e\\u0435 \\u0441\\u043e\\u0445\\u0440\\u0430\\u043d\\u0435\\u043d\\u0438\\u0435\",\"unload_msg\":\"\\u041f\\u0440\\u043e\\u0438\\u0437\\u0432\\u0435\\u0434\\u0435\\u043d\\u043d\\u044b\\u0435 \\u0438\\u0437\\u043c\\u0435\\u043d\\u0435\\u043d\\u0438\\u044f \\u0431\\u0443\\u0434\\u0443\\u0442 \\u0443\\u0442\\u0435\\u0440\\u044f\\u043d\\u044b, \\u0435\\u0441\\u043b\\u0438 \\u0412\\u044b \\u0443\\u0439\\u0434\\u0435\\u0442\\u0435 \\u0441 \\u044d\\u0442\\u043e\\u0439 \\u0441\\u0442\\u0440\\u0430\\u043d\\u0438\\u0446\\u044b.\"},fullscreen:{desc:\"\\u041f\\u043e\\u043b\\u043d\\u043e\\u044d\\u043a\\u0440\\u0430\\u043d\\u043d\\u044b\\u0439 \\u0440\\u0435\\u0436\\u0438\\u043c\"},media:{edit:\"\\u0421\\u0432\\u043e\\u0439\\u0441\\u0442\\u0432\\u0430 \\u043a\\u043b\\u0438\\u043f\\u0430\",desc:\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c/\\u0418\\u0437\\u043c\\u0435\\u043d\\u0438\\u0442\\u044c \\u043a\\u043b\\u0438\\u043f\",\"delta_height\":\"\",\"delta_width\":\"\"},fullpage:{desc:\"\\u0421\\u0432\\u043e\\u0439\\u0441\\u0442\\u0432\\u0430 \\u0434\\u043e\\u043a\\u0443\\u043c\\u0435\\u043d\\u0442\\u0430\",\"delta_width\":\"\",\"delta_height\":\"\"},template:{desc:\"\\u0418\\u0441\\u043f\\u043e\\u043b\\u044c\\u0437\\u043e\\u0432\\u0430\\u0442\\u044c \\u0448\\u0430\\u0431\\u043b\\u043e\\u043d\"},visualchars:{desc:\"\\u0412\\u0441\\u0435 \\u0437\\u043d\\u0430\\u043a\\u0438\"},spellchecker:{desc:\"\\u041f\\u0440\\u0430\\u0432\\u043e\\u043f\\u0438\\u0441\\u0430\\u043d\\u0438\\u0435\",menu:\"\\u0421\\u0432\\u043e\\u0439\\u0441\\u0442\\u0432\\u0430 \\u043f\\u0440\\u043e\\u0432\\u0435\\u0440\\u043a\\u0438 \\u043f\\u0440\\u0430\\u0432\\u043e\\u043f\\u0438\\u0441\\u0430\\u043d\\u0438\\u044f\",\"ignore_word\":\"\\u041f\\u0440\\u043e\\u043f\\u0443\\u0441\\u0442\\u0438\\u0442\\u044c\",\"ignore_words\":\"\\u041f\\u0440\\u043e\\u043f\\u0443\\u0441\\u0442\\u0438\\u0442\\u044c \\u0432\\u0441\\u0435\",langs:\"\\u042f\\u0437\\u044b\\u043a\\u0438\",wait:\"\\u041f\\u043e\\u0436\\u0430\\u043b\\u0443\\u0439\\u0441\\u0442\\u0430, \\u043f\\u043e\\u0434\\u043e\\u0436\\u0434\\u0438\\u0442\\u0435...\",sug:\"\\u0412\\u0430\\u0440\\u0438\\u0430\\u043d\\u0442\\u044b\",\"no_sug\":\"\\u041d\\u0435\\u0442 \\u0432\\u0430\\u0440\\u0438\\u0430\\u043d\\u0442\\u043e\\u0432\",\"no_mpell\":\"\\u041e\\u0448\\u0438\\u0431\\u043e\\u043a \\u043d\\u0435 \\u043e\\u0431\\u043d\\u0430\\u0440\\u0443\\u0436\\u0435\\u043d\\u043e.\"},pagebreak:{desc:\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\u0440\\u0430\\u0437\\u0440\\u044b\\u0432 \\u0441\\u0442\\u0440\\u0430\\u043d\\u0438\\u0446\\u044b\"},advlist:{types:\"\\u0421\\u0438\\u043c\\u0432\\u043e\\u043b\\u044b\",def:\"\\u0421\\u0442\\u0430\\u043d\\u0434\\u0430\\u0440\\u0442\\u043d\\u044b\\u0435\",\"lower_alpha\":\"\\u0421\\u0442\\u0440\\u043e\\u0447\\u043d\\u044b\\u0435 \\u043b\\u0430\\u0442\\u0438\\u043d\\u0441\\u043a\\u0438\\u0435 \\u0431\\u0443\\u043a\\u0432\\u044b\",\"lower_greek\":\"\\u0421\\u0442\\u0440\\u043e\\u0447\\u043d\\u044b\\u0435 \\u0433\\u0440\\u0435\\u0447\\u0435\\u0441\\u043a\\u0438\\u0435 \\u0431\\u0443\\u043a\\u0432\\u044b\",\"lower_roman\":\"\\u0421\\u0442\\u0440\\u043e\\u0447\\u043d\\u044b\\u0435 \\u0440\\u0438\\u043c\\u0441\\u043a\\u0438\\u0435 \\u0446\\u0438\\u0444\\u0440\\u044b\",\"upper_alpha\":\"\\u0417\\u0430\\u0433\\u043b\\u0430\\u0432\\u043d\\u044b\\u0435 \\u043b\\u0430\\u0442\\u0438\\u043d\\u0441\\u043a\\u0438\\u0435 \\u0431\\u0443\\u043a\\u0432\\u044b\",\"upper_roman\":\"\\u0417\\u0430\\u0433\\u043b\\u0430\\u0432\\u043d\\u044b\\u0435 \\u0440\\u0438\\u043c\\u0441\\u043a\\u0438\\u0435 \\u0446\\u0438\\u0444\\u0440\\u044b\",circle:\"\\u041a\\u0440\\u0443\\u0433\\u0438\",disc:\"\\u041e\\u043a\\u0440\\u0443\\u0436\\u043d\\u043e\\u0441\\u0442\\u0438\",square:\"\\u041a\\u0432\\u0430\\u0434\\u0440\\u0430\\u0442\\u044b\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/sr.js",
    "content": "tinyMCE.addI18n({sr:{common:{more_colors:\"Vi\\u0161e boja\",invalid_data:\"Gre\\u0161ka: Une\\u0161ene su pogre\\u0161ne vrednosti, ozna\\u010dene su crvenom bojom.\",popup_blocked:\"Oprostite, izgleda da je va\\u0161 popup-blocker onemogu\\u0107io prozor u sklopu ovog programa. Morate isklju\\u010diti blokiranje popup prozora da bi u potpunosti iskoristili ovaj alat.\",clipboard_no_support:\"Trenuta\\u010dno va\\u0161 pretra\\u017eiva\\u010d ne podr\\u017eava ovu opciju, poku\\u0161ajte preko pre\\u010dice na tastaturi.\",clipboard_msg:\"Kopiraj/Iseci/Zalepi nije dostupno Mozilla i Firefox preglednicima.\\\\nVi\\u0161e informacija?\",not_set:\"-- Nije postavljeno --\",class_name:\"Klasa\",browse:\"Potra\\u017ei\",close:\"Zatvori\",cancel:\"Odustani\",update:\"A\\u017euriraj\",insert:\"Ubaci\",apply:\"Primeni\",edit_confirm:\"Da li \\u017eelite da koristite WYSIWYG na\\u010din rada za ovo tekstualno polje?\"},contextmenu:{full:\"Poravnato\",right:\"Desno\",center:\"Centrirano\",left:\"Levo\",align:\"Poravnanje\"},insertdatetime:{day_short:\"ned,pon,uto,sre,\\u010det,pet,sub,ned\",day_long:\"nedelja,ponedjeljak,utorak,sreda,\\u010detvrtak,petak,subota,nedelja\",months_short:\"jan,feb,mar,apr,maj,jun,jul,avg,sep,okt,nov,dec\",months_long:\"januar,februar,mart,april,maj,juni,juli,avgust,septembar,oktobar,novembar,decembar\",inserttime_desc:\"Ubaci vreme\",insertdate_desc:\"Ubaci datum\",time_fmt:\"%H:%M:%S\",date_fmt:\"%d.%m.%Y.\"},print:{print_desc:\"\\u0160tampaj\"},preview:{preview_desc:\"Pregled\"},directionality:{rtl_desc:\"S desna na levo\",ltr_desc:\"S leva na desno\"},layer:{content:\"Novi sloj...\",absolute_desc:\"Uklju\\u010di/isklju\\u010di apsolutno pozicioniranje\",backward_desc:\"Pomeri nazad\",forward_desc:\"Pomeri napred\",insertlayer_desc:\"Ubaci novi sloj\"},save:{save_desc:\"Sa\\u010duvaj\",cancel_desc:\"Odustani od svih promena\"},nonbreaking:{nonbreaking_desc:\"Ubaci razmak\"},iespell:{download:\"Provera pravopisa nije instalirana. Sada instalirati?\",iespell_desc:\"Proveri pravopis\"},advhr:{advhr_desc:\"Horizontalna crta\",delta_height:\"\",delta_width:\"\"},emotions:{emotions_desc:\"Smajli\",delta_height:\"\",delta_width:\"\"},searchreplace:{replace_desc:\"Prona\\u0111i/Zameni\",search_desc:\"Prona\\u0111i\",delta_width:\"\",delta_height:\"\"},advimage:{image_desc:\"Ubaci/uredi sliku\",delta_width:\"\",delta_height:\"\"},advlink:{link_desc:\"Ubaci/izmeni link\",delta_height:\"\",delta_width:\"\"},xhtmlxtras:{attribs_desc:\"Ubaci/izmeni atribute\",ins_desc:\"Unos\",del_desc:\"Brisanje\",acronym_desc:\"Akronim\",abbr_desc:\"Skra\\u0107enica\",cite_desc:\"Citat\",attribs_delta_height:\"\",attribs_delta_width:\"\",ins_delta_height:\"\",ins_delta_width:\"\",del_delta_height:\"\",del_delta_width:\"\",acronym_delta_height:\"\",acronym_delta_width:\"\",abbr_delta_height:\"\",abbr_delta_width:\"\",cite_delta_height:\"\",cite_delta_width:\"\"},style:{desc:\"Uredi CSS\",delta_height:\"\",delta_width:\"\"},paste:{plaintext_mode:\"Paste is now in plain text mode. Click again to toggle back to regular paste mode.\",plaintext_mode_sticky:\"Paste is now in plain text mode. Click again to toggle back to regular paste mode. After you paste something you will be returned to regular paste mode.\",selectall_desc:\"Odaberi sve\",paste_word_desc:\"Zalepi iz Worda\",paste_text_desc:\"Zalepi kao obi\\u010dni tekst\"},paste_dlg:{word_title:\"Koristite CTRL+V na tastaturi da zalepite tekst u prozor.\",text_linebreaks:\"Zadr\\u017ei prelome\",text_title:\"Koristite CTRL+V na tastaturi da zalepite tekst u prozor.\"},table:{cell:\"\\u0106elija\",col:\"Kolona\",row:\"Red\",del:\"Obri\\u0161i tabelu\",copy_row_desc:\"Kopiraj red\",cut_row_desc:\"Iseci red\",paste_row_after_desc:\"Zalepi red ispod\",paste_row_before_desc:\"Zalepi red iznad\",props_desc:\"Svojstva tabelee\",cell_desc:\"Svojstva \\u0107elije\",row_desc:\"Svojstva reda\",merge_cells_desc:\"Spoji \\u0107elije\",split_cells_desc:\"Razdvoji spojene \\u0107elije\",delete_col_desc:\"Obri\\u0161i kolonu\",col_after_desc:\"Ubaci kolonu desno\",col_before_desc:\"Ubaci kolonu levo\",delete_row_desc:\"Obri\\u0161i red\",row_after_desc:\"Ubaci red ispod\",row_before_desc:\"Ubaci red iznad\",desc:\"Nova tabela\",merge_cells_delta_height:\"\",merge_cells_delta_width:\"\",table_delta_height:\"\",table_delta_width:\"\",cellprops_delta_height:\"\",cellprops_delta_width:\"\",rowprops_delta_height:\"\",rowprops_delta_width:\"\"},autosave:{warning_message:\"If you restore the saved content, you will lose all the content that is currently in the editor.\\\\n\\\\nAre you sure you want to restore the saved content?.\",restore_content:\"Restore auto-saved content.\",unload_msg:\"Izmene u dokumentu \\u0107e biti izgubljene ako iza\\u0111ete s ove stranice.\"},fullscreen:{desc:\"Uklju\\u010di/isklju\\u010di prikaz preko celog ekrana\"},media:{edit:\"Uredi medije\",desc:\"Ubaci / uredi medije\",delta_height:\"\",delta_width:\"\"},fullpage:{desc:\"Svojstva dokumenta\",delta_width:\"\",delta_height:\"\"},template:{desc:\"Ubaci sadr\\u017eaj iz \\u0161ablona\"},visualchars:{desc:\"Vizuelni kontrolni znakovi uklju\\u010deni/isklju\\u010deni.\"},spellchecker:{desc:\"Uklju\\u010di/isklju\\u010di proveru pravopisa\",menu:\"Postavke provere pravopisa\",ignore_word:\"Zanemari re\\u010d\",ignore_words:\"Zanemari sve\",langs:\"Jezici\",wait:\"Sa\\u010dekajte...\",sug:\"Predlozi\",no_sug:\"Nema predloga\",no_mpell:\"Nije prona\\u0111ena nijedna pravopisna gre\\u0161ka.\"},pagebreak:{desc:\"Ubaci prelom.\"},advlist:{types:\"Types\",def:\"Default\",lower_alpha:\"Lower alpha\",lower_greek:\"Lower greek\",lower_roman:\"Lower roman\",upper_alpha:\"Upper alpha\",upper_roman:\"Upper roman\",circle:\"Circle\",disc:\"Disc\",square:\"Square\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/sv.js",
    "content": "tinyMCE.addI18n({sv:{common:{\"more_colors\":\"Fler f\\u00e4rger\",\"invalid_data\":\"Fel: Inkorrekta v\\u00e4rden har matats in, dessa \\u00e4r markerade i r\\u00f6tt.\",\"popup_blocked\":\"Popup blockerare detekterad. St\\u00e4ng av den s\\u00e5 att dialogerna kan \\u00f6ppnas.\",\"clipboard_no_support\":\"Funktionen \\u00e4r inte tillg\\u00e4nglig i din webbl\\u00e4sare, anv\\u00e4nd tangentbordsgenv\\u00e4garna i st\\u00e4llet.\",\"clipboard_msg\":\"Kopiera/klipp ut/klistra in \\u00e4r inte tillg\\u00e4ngligt i din webbl\\u00e4sare.\\\\nVill du veta mer?\",\"not_set\":\"-- Inte satt --\",\"class_name\":\"Klass\",browse:\"Bl\\u00e4ddra\",close:\"St\\u00e4ng\",cancel:\"Avbryt\",update:\"Uppdatera\",insert:\"Infoga\",apply:\"Applicera\",\"edit_confirm\":\"Vill du anv\\u00e4nda WYSIWYG f\\u00f6r denna textarea?\"},contextmenu:{full:\"Utfyllnad\",right:\"H\\u00f6ger\",center:\"Centrerad\",left:\"V\\u00e4nster\",align:\"Justering\"},insertdatetime:{\"day_short\":\"S\\u00f6n,M\\u00e5n,Tis,Ons,Tors,Fre,L\\u00f6r,S\\u00f6n\",\"day_long\":\"S\\u00f6ndag,M\\u00e5ndag,Tisdag,Onsdag,Torsdag,Fredag,L\\u00f6rdag,S\\u00f6ndag\",\"months_short\":\"Jan,Feb,Mar,Apr,Maj,Jun,Jul,Aug,Sep,Okt,Nov,Dec\",\"months_long\":\"Januari,Februari,Mars,April,Maj,Juni,Juli,Augusti,September,Oktober,November,December\",\"inserttime_desc\":\"Infoga tid\",\"insertdate_desc\":\"Infoga datum\",\"time_fmt\":\"%H:%M:%S\",\"date_fmt\":\"%Y-%m-%d \"},print:{\"print_desc\":\"Skriv ut\"},preview:{\"preview_desc\":\"F\\u00f6rhandsgranska\"},directionality:{\"rtl_desc\":\"Skriftl\\u00e4ge - h\\u00f6ger till v\\u00e4nster\",\"ltr_desc\":\"Skriftl\\u00e4ge - v\\u00e4nster till h\\u00f6ger\"},layer:{content:\"Nytt lager...\",\"absolute_desc\":\"Sl\\u00e5 av/p\\u00e5 absolut positionering\",\"backward_desc\":\"Flytta bak\\u00e5t\",\"forward_desc\":\"Flytta fram\\u00e5t\",\"insertlayer_desc\":\"Infoga nytt lager\"},save:{\"save_desc\":\"Spara\",\"cancel_desc\":\"Hoppa \\u00f6ver alla f\\u00f6r\\u00e4ndringar\"},nonbreaking:{\"nonbreaking_desc\":\"Infoga icke radbrytande mellanslag\"},iespell:{download:\"ieSpell kunde inte hittas, vill du installera denna nu?\",\"iespell_desc\":\"R\\u00e4ttstava\"},advhr:{\"advhr_desc\":\"Horisontell skiljelinje\",\"delta_height\":\"\",\"delta_width\":\"\"},emotions:{\"emotions_desc\":\"Smileys\",\"delta_height\":\"\",\"delta_width\":\"\"},searchreplace:{\"replace_desc\":\"S\\u00f6k/ers\\u00e4tt\",\"search_desc\":\"S\\u00f6k\",\"delta_width\":\"\",\"delta_height\":\"\"},advimage:{\"image_desc\":\"Infoga/redigera bild\",\"delta_width\":\"\",\"delta_height\":\"\"},advlink:{\"link_desc\":\"Infoga/redigera l\\u00e4nk\",\"delta_height\":\"\",\"delta_width\":\"\"},xhtmlxtras:{\"attribs_desc\":\"Redigera attribut\",\"ins_desc\":\"Markera som tillagt\",\"del_desc\":\"Markera som struket\",\"acronym_desc\":\"Akronym\",\"abbr_desc\":\"F\\u00f6rkortning\",\"cite_desc\":\"citat\",\"attribs_delta_height\":\"\",\"attribs_delta_width\":\"\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\"},style:{desc:\"Redigera inline CSS\",\"delta_height\":\"\",\"delta_width\":\"\"},paste:{\"plaintext_mode\":\"Inklistring \\u00e4r nu i textl\\u00e4ge.\",\"plaintext_mode_sticky\":\"Inklistring \\u00e4r nu i textl\\u00e4ge. Efter att du klistrat in kommer den att \\u00e5terg\\u00e5 till normall\\u00e4ge.\",\"selectall_desc\":\"Markera allt\",\"paste_word_desc\":\"Klistra in fr\\u00e5n Word\",\"paste_text_desc\":\"Klistra in som text\"},\"paste_dlg\":{\"word_title\":\"Anv\\u00e4nd ctrl-v p\\u00e5 ditt tangentbord f\\u00f6r att klistra in i detta f\\u00f6nster.\",\"text_linebreaks\":\"Spara radbrytningar\",\"text_title\":\"Anv\\u00e4nd ctrl-v p\\u00e5 ditt tangentbord f\\u00f6r att klistra in i detta f\\u00f6nster.\"},table:{cell:\"Cell\",col:\"Kolumn\",row:\"Rad\",del:\"Radera tabell\",\"copy_row_desc\":\"Klistra in rad\",\"cut_row_desc\":\"Klipp ut rad\",\"paste_row_after_desc\":\"Klistra in rad efter\",\"paste_row_before_desc\":\"Klistra in rad ovanf\\u00f6r\",\"props_desc\":\"Tabellinst\\u00e4llningar\",\"cell_desc\":\"Tabellcellsinst\\u00e4llningar\",\"row_desc\":\"Tabellradsinst\\u00e4llningar\",\"merge_cells_desc\":\"Sammanfoga celler\",\"split_cells_desc\":\"Separera sammansatta celler\",\"delete_col_desc\":\"Radera kolumn\",\"col_after_desc\":\"Infoga kolumn efter\",\"col_before_desc\":\"Infoga kolumn f\\u00f6re\",\"delete_row_desc\":\"Radera rad\",\"row_after_desc\":\"Infoga ny rad efter\",\"row_before_desc\":\"Infoga ny rad f\\u00f6re\",desc:\"Infoga/redigera ny tabell\",\"merge_cells_delta_height\":\"\",\"merge_cells_delta_width\":\"\",\"table_delta_height\":\"\",\"table_delta_width\":\"\",\"cellprops_delta_height\":\"\",\"cellprops_delta_width\":\"\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\"},autosave:{\"warning_message\":\"Om du \\u00e5terskapar inneh\\u00e5ll s\\u00e5 kommer det nuvarande inneh\\u00e5llet i f\\u00e4ltet att raderas.\\\\n\\\\n\\u00c4r du s\\u00e4ker p\\u00e5 att du vill g\\u00f6ra detta?\",\"restore_content\":\"\\u00c5terskapa automatiskt sparat inneh\\u00e5ll.\",\"unload_msg\":\"De f\\u00f6r\\u00e4ndringar som du gjort kommer att g\\u00e5 f\\u00f6rlorade om du l\\u00e4mnar sidan.\"},fullscreen:{desc:\"Sl\\u00e5 av/p\\u00e5 fullsk\\u00e4rmsl\\u00e4ge\"},media:{edit:\"Redigera inb\\u00e4ddad media\",desc:\"Infoga/redigera inb\\u00e4ddad media\",\"delta_height\":\"\",\"delta_width\":\"\"},fullpage:{desc:\"Dokumentinst\\u00e4llningar\",\"delta_width\":\"\",\"delta_height\":\"\"},template:{desc:\"Infoga en f\\u00e4rdig mall\"},visualchars:{desc:\"Visa osynliga tecken\"},spellchecker:{desc:\"Sl\\u00e5 av/p\\u00e5 r\\u00e4ttstavningskontroll\",menu:\"R\\u00e4ttstavningsinst\\u00e4llningar\",\"ignore_word\":\"Ignorera ord\",\"ignore_words\":\"Ignorera alla\",langs:\"Spr\\u00e5k\",wait:\"Var god v\\u00e4nta...\",sug:\"F\\u00f6rslag\",\"no_sug\":\"Inga f\\u00f6rslag\",\"no_mpell\":\"Inga felstavningar funna.\"},pagebreak:{desc:\"Infoga sidbrytning\"},advlist:{types:\"Typer\",def:\"Default\",\"lower_alpha\":\"Lower alpha\",\"lower_greek\":\"Lower greek\",\"lower_roman\":\"Lower roman\",\"upper_alpha\":\"Upper alpha\",\"upper_roman\":\"Upper roman\",circle:\"Cirkel\",disc:\"Disc\",square:\"Fyrkant\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/tr.js",
    "content": "tinyMCE.addI18n({tr:{common:{\"more_colors\":\"Daha fazla renk\",\"invalid_data\":\"Hata: Ge\\u00e7ersiz de\\u011fer girildi, bunlar k\\u0131rm\\u0131z\\u0131yla i\\u015faretlenmi\\u015ftir.\",\"popup_blocked\":\"\\u00dczg\\u00fcn\\u00fcz, a\\u00e7\\u0131l\\u0131r pencere engelleyiciniz uygulama i\\u00e7in gerekli bir pencereyi engelledi. Bu arac\\u0131 tam olarak kullanabilmek i\\u00e7in a\\u00e7\\u0131l\\u0131r pencere engelleyicisini kapat\\u0131n\\u0131z.\",\"clipboard_no_support\":\"\\u015eu an kulland\\u0131\\u011f\\u0131n\\u0131z taray\\u0131c\\u0131n\\u0131z klavye k\\u0131sayollar\\u0131n\\u0131 desteklememektedir.\",\"clipboard_msg\":\"Mozilla Firefox da Kes/Kopyala/Yap\\u0131\\u015ft\\u0131r \\u00f6zelli\\u011fi kullan\\u0131lmamaktad\\u0131r. \\nBu konu hakk\\u0131nda bilgi almak ister misiniz?\",\"not_set\":\"-- Ayarlanmad\\u0131 --\",\"class_name\":\"S\\u0131n\\u0131f\",browse:\"G\\u00f6zat\",close:\"Kapat\",cancel:\"\\u0130ptal\",update:\"G\\u00fcncelle\",insert:\"Ekle\",apply:\"Uygula\",\"edit_confirm\":\"Metin giri\\u015fi i\\u00e7in WYSIWYG modunu kullanmak ister misiniz?\",\"invalid_data_number\":\"{#field} rakam olmal\\u0131\",\"invalid_data_min\":\"{#field}, {#min} de\\u011ferinden b\\u00fcy\\u00fck ve rakam olmal\\u0131\",\"invalid_data_size\":\"{#field} rakam veya y\\u00fczde olmal\\u0131\",value:\"(de\\u011fer)\"},contextmenu:{full:\"Tam\",right:\"Sa\\u011f\",center:\"Orta\",left:\"Sol\",align:\"Hizalama\"},insertdatetime:{\"day_short\":\"Paz,Pzt,Sal,\\u00c7r\\u015f,Per,Cum,Cts\",\"day_long\":\"Pazar,Pazartesi,Sal\\u0131,\\u00c7ar\\u015famba,Per\\u015fembe,Cuma,Cumartesi\",\"months_short\":\"Oca,\\u015eub,Mar,Nis,May,Haz,Tem,A\\u011fu,Eyl,Eki,Kas,Ara\",\"months_long\":\"Ocak,\\u015eubat,Mart,Nisan,May\\u0131s,Haziran,Temmuz,A\\u011fustos,Eyl\\u00fcl,Ekim,Kas\\u0131m,Aral\\u0131k\",\"inserttime_desc\":\"Saat ekle\",\"insertdate_desc\":\"Tarih ekle\",\"time_fmt\":\"%H:%M:%S\",\"date_fmt\":\"%d-%m-%Y\"},print:{\"print_desc\":\"Yazd\\u0131r\"},preview:{\"preview_desc\":\"\\u00d6nizleme\"},directionality:{\"rtl_desc\":\"Soldan sa\\u011fa y\\u00f6nlendir\",\"ltr_desc\":\"Sa\\u011fdan sola y\\u00f6nlendir\"},layer:{content:\"Yeni katman...\",\"absolute_desc\":\"Mutlaka konumu de\\u011fi\\u015ftir\",\"backward_desc\":\"Arkaya al\",\"forward_desc\":\"\\u00d6ne getir\",\"insertlayer_desc\":\"Yeni katman ekle\"},save:{\"save_desc\":\"Kaydet\",\"cancel_desc\":\"T\\u00fcm de\\u011fi\\u015fiklikleri iptal et\"},nonbreaking:{\"nonbreaking_desc\":\"B\\u00f6l\\u00fcnemez bo\\u015fluk karakteri ekle\"},iespell:{download:\"ieSpell bulunamad\\u0131. \\u015eimdi kurmak ister misiniz?\",\"iespell_desc\":\"\\u0130mla kontrol\\u00fcn\\u00fc ba\\u015flat\"},advhr:{\"advhr_desc\":\"Yatay \\u00e7izgi\",\"delta_height\":\"\",\"delta_width\":\"\"},emotions:{\"emotions_desc\":\"\\u0130fadeler\",\"delta_height\":\"\",\"delta_width\":\"\"},searchreplace:{\"replace_desc\":\"Bul/De\\u011fi\\u015ftir\",\"search_desc\":\"Bul\",\"delta_width\":\"\",\"delta_height\":\"\"},advimage:{\"delta_width\":\"Geni\\u015flik_fark\\u0131\",\"image_desc\":\"Resim ekle/d\\u00fczenle\",\"delta_height\":\"Y\\u00fckseklik_fark\\u0131\"},advlink:{\"link_desc\":\"Ba\\u011flant\\u0131 ekle/d\\u00fczenle\",\"delta_height\":\"\",\"delta_width\":\"\"},xhtmlxtras:{\"attribs_desc\":\"Nitelik ekle/d\\u00fczenle\",\"ins_desc\":\"Ekleme\",\"del_desc\":\"Silme\",\"acronym_desc\":\"K\\u0131sa ad\",\"abbr_desc\":\"K\\u0131saltma\",\"cite_desc\":\"Al\\u0131nt\\u0131\",\"attribs_delta_height\":\"\",\"attribs_delta_width\":\"\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\"},style:{desc:\"CSS Stilini D\\u00fczenle\",\"delta_height\":\"\",\"delta_width\":\"\"},paste:{\"plaintext_mode\":\"D\\u00fcz metin modunda yap\\u0131\\u015ft\\u0131r. Normal yap\\u0131\\u015ft\\u0131rma moduna ge\\u00e7mek i\\u00e7in tekrar t\\u0131klay\\u0131n.\",\"plaintext_mode_sticky\":\"D\\u00fcz metin modunda yap\\u0131\\u015ft\\u0131r. Normal yap\\u0131\\u015ft\\u0131rma moduna ge\\u00e7mek i\\u00e7in tekrar t\\u0131klay\\u0131n. Yap\\u0131\\u015ft\\u0131rma i\\u015fleminden sonra normal yap\\u0131\\u015ft\\u0131rma moduna ge\\u00e7ilecektir.\",\"selectall_desc\":\"T\\u00fcm\\u00fcn\\u00fc se\\u00e7\",\"paste_word_desc\":\"Word\\'den yap\\u0131\\u015ft\\u0131r\",\"paste_text_desc\":\"D\\u00fcz metin olarak yap\\u0131\\u015ft\\u0131r\"},\"paste_dlg\":{\"word_title\":\"Pencereye metin yap\\u0131\\u015ft\\u0131rmak i\\u00e7in klavyeden CTRL+V i kullan\\u0131n.\",\"text_linebreaks\":\"Sat\\u0131r kesmelerini tut\",\"text_title\":\"Pencereye metin yap\\u0131\\u015ft\\u0131rmak i\\u00e7in klavyeden CTRL+V i kullan\\u0131n.\"},table:{cell:\"H\\u00fccre\",col:\"S\\u00fctun\",row:\"Sat\\u0131r\",del:\"Tablo sil\",\"copy_row_desc\":\"Tablo sat\\u0131r\\u0131n\\u0131 kopyala\",\"cut_row_desc\":\"Tablo sat\\u0131r\\u0131n\\u0131 kes\",\"paste_row_after_desc\":\"Alt\\u0131na tablo sat\\u0131r\\u0131 yap\\u0131\\u015ft\\u0131r\",\"paste_row_before_desc\":\"\\u00dcst\\u00fcne tablo sat\\u0131r\\u0131 yap\\u0131\\u015ft\\u0131r\",\"props_desc\":\"Tablo \\u00f6zellikleri\",\"cell_desc\":\"Tablo h\\u00fccre \\u00f6zellikleri\",\"row_desc\":\"Tablo sat\\u0131r \\u00f6zellikleri\",\"merge_cells_desc\":\"Tablo h\\u00fccrelerini birle\\u015ftir\",\"split_cells_desc\":\"Birle\\u015ftirilmi\\u015f tablo h\\u00fccrelerini b\\u00f6l\",\"delete_col_desc\":\"S\\u00fctun sil\",\"col_after_desc\":\"Sa\\u011f\\u0131na s\\u00fctun ekle\",\"col_before_desc\":\"Soluna s\\u00fctun ekle\",\"delete_row_desc\":\"Sat\\u0131r sil\",\"row_after_desc\":\"Alt\\u0131na sat\\u0131r ekle\",\"row_before_desc\":\"\\u00dcst\\u00fcne sat\\u0131r ekle\",desc:\"Yeni tablo ekle\",\"merge_cells_delta_height\":\"\",\"merge_cells_delta_width\":\"\",\"table_delta_height\":\"\",\"table_delta_width\":\"\",\"cellprops_delta_height\":\"\",\"cellprops_delta_width\":\"\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\"},autosave:{\"warning_message\":\"E\\u011fer geri y\\u00fckleme i\\u00e7eri\\u011fe otomatik kay\\u0131t edilirse, edit\\u00f6rde varolan t\\u00fcm i\\u00e7eri\\u011fi kaybedebilirsiniz.\\n\\nGeri y\\u00fcklemenin i\\u00e7eri\\u011fe kaydedilmesini istedi\\u011finizden emin misiniz?\",\"restore_content\":\"Geri y\\u00fckleme i\\u00e7eri\\u011fe otomatik kaydedildi.\",\"unload_msg\":\"Bu sayfadan \\u00e7\\u0131karsan\\u0131z yapt\\u0131\\u011f\\u0131n\\u0131z de\\u011fi\\u015fiklikler kaybolabilir.\"},fullscreen:{desc:\"Tam ekran modunu a\\u00e7/kapat\"},media:{edit:\"T\\u00fcmle\\u015fik medya d\\u00fczenle\",desc:\"T\\u00fcmle\\u015fik medya ekle / d\\u00fczenle\",\"delta_height\":\"\",\"delta_width\":\"\"},fullpage:{desc:\"Belge \\u00f6zellikleri\",\"delta_width\":\"\",\"delta_height\":\"\"},template:{desc:\"\\u00d6ntan\\u0131ml\\u0131 i\\u00e7erik \\u015fablonu kullan\"},visualchars:{desc:\"G\\u00f6rsel karakter kontrol\\u00fc a\\u00e7\\u0131k/kapal\\u0131.\"},spellchecker:{desc:\"\\u0130mla kontrol\\u00fcn\\u00fc a\\u00e7/kapat\",menu:\"\\u0130mla kontrol\\u00fc ayarlar\\u0131\",\"ignore_word\":\"S\\u00f6zc\\u00fc\\u011f\\u00fc yoksay\",\"ignore_words\":\"T\\u00fcm\\u00fcn\\u00fc yoksay\",langs:\"Diller\",wait:\"L\\u00fctfen bekleyin...\",sug:\"\\u00d6neriler\",\"no_sug\":\"\\u00d6neri yok\",\"no_mpell\":\"\\u0130mla hatas\\u0131 bulunamad\\u0131.\",\"learn_word\":\"S\\u00f6zc\\u00fc\\u011f\\u00fc \\u00f6\\u011fren\"},pagebreak:{desc:\"Sayfa sonu ekle.\"},advlist:{types:\"Tipler\",def:\"Varsay\\u0131lan\",\"lower_alpha\":\"K\\u00fc\\u00e7\\u00fck harf alfa\",\"lower_greek\":\"K\\u00fc\\u00e7\\u00fck harf grek\",\"lower_roman\":\"K\\u00fc\\u00e7\\u00fck harf roman\",\"upper_alpha\":\"B\\u00fcy\\u00fck harf alfa\",\"upper_roman\":\"B\\u00fcy\\u00fck harf roman\",circle:\"\\u00c7ember\",disc:\"Daire\",square:\"Kare\"},colors:{\"333300\":\"Dark olive\",\"993300\":\"Burnt orange\",\"000000\":\"Black\",\"003300\":\"Dark green\",\"003366\":\"Dark azure\",\"000080\":\"Navy Blue\",\"333399\":\"Indigo\",\"333333\":\"Very dark gray\",\"800000\":\"Maroon\",FF6600:\"Orange\",\"808000\":\"Olive\",\"008000\":\"Green\",\"008080\":\"Teal\",\"0000FF\":\"Blue\",\"666699\":\"Grayish blue\",\"808080\":\"Gray\",FF0000:\"Red\",FF9900:\"Amber\",\"99CC00\":\"Yellow green\",\"339966\":\"Sea green\",\"33CCCC\":\"Turquoise\",\"3366FF\":\"Royal blue\",\"800080\":\"Purple\",\"999999\":\"Medium gray\",FF00FF:\"Magenta\",FFCC00:\"Gold\",FFFF00:\"Yellow\",\"00FF00\":\"Lime\",\"00FFFF\":\"Aqua\",\"00CCFF\":\"Sky blue\",\"993366\":\"Brown\",C0C0C0:\"Silver\",FF99CC:\"Pink\",FFCC99:\"Peach\",FFFF99:\"Light yellow\",CCFFCC:\"Pale green\",CCFFFF:\"Pale cyan\",\"99CCFF\":\"Light sky blue\",CC99FF:\"Plum\",FFFFFF:\"White\"},aria:{\"rich_text_area\":\"Zengin Metin Alan\\u0131\"},wordcount:{words:\"Kelimeler:\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/uk.js",
    "content": "tinyMCE.addI18n({uk:{common:{\"more_colors\":\"\\u0411\\u0456\\u043b\\u044c\\u0448\\u0435 \\u043a\\u043e\\u043b\\u044c\\u043e\\u0440\\u0456\\u0432\",\"invalid_data\":\"\\u041f\\u043e\\u043c\\u0438\\u043b\\u043a\\u0430: \\u0412\\u0432\\u0435\\u0434\\u0435\\u043d\\u043e \\u043f\\u043e\\u043c\\u0438\\u043b\\u043a\\u043e\\u0432\\u0435 \\u0437\\u043d\\u0430\\u0447\\u0435\\u043d\\u043d\\u044f, \\u0432\\u0456\\u0434\\u043c\\u0456\\u0447\\u0435\\u043d\\u0435 \\u0447\\u0435\\u0440\\u0432\\u043e\\u043d\\u0438\\u043c.\",\"popup_blocked\":\"\\u0414\\u0443\\u0436\\u0435 \\u043f\\u0440\\u0438\\u043a\\u0440\\u043e, \\u0430\\u043b\\u0435 \\u0432\\u0430\\u0448 \\u0431\\u0440\\u0430\\u0443\\u0437\\u0435\\u0440 \\u0437\\u0430\\u0431\\u043b\\u043e\\u043a\\u0443\\u0432\\u0430\\u0432 \\u0432\\u0438\\u0440\\u0438\\u043d\\u0430\\u044e\\u0447\\u0435 \\u0432\\u0456\\u043a\\u043d\\u043e. \\u0411\\u0443\\u0434\\u044c \\u043b\\u0430\\u0441\\u043a\\u0430, \\u043d\\u0430\\u043b\\u0430\\u0448\\u0442\\u0443\\u0439\\u0442\\u0435 \\u0431\\u0440\\u0430\\u0443\\u0437\\u0435\\u0440 \\u0442\\u0430\\u043a, \\u0449\\u043e\\u0431 \\u0432\\u0456\\u043d \\u0434\\u043e\\u0437\\u0432\\u043e\\u043b\\u044f\\u0432 \\u0432\\u0438\\u0440\\u0438\\u043d\\u0430\\u044e\\u0447\\u0456 \\u0432\\u0456\\u043a\\u043d\\u0430 \\u0437 \\u0446\\u044c\\u043e\\u0433\\u043e \\u0441\\u0430\\u0439\\u0442\\u0443.\",\"clipboard_no_support\":\"\\u041d\\u0430\\u0440\\u0430\\u0437\\u0456 \\u0446\\u044f \\u0444\\u0443\\u043d\\u043a\\u0446\\u0456\\u044f \\u043d\\u0435 \\u0434\\u043e\\u0441\\u0442\\u0443\\u043f\\u043d\\u0430 \\u0432 \\u0432\\u0430\\u0448\\u043e\\u043c\\u0443 \\u0431\\u0440\\u0430\\u0443\\u0437\\u0435\\u0440\\u0456, \\u0430\\u043b\\u0435 \\u0432\\u0438 \\u043c\\u043e\\u0436\\u0435\\u0442\\u0435 \\u0432\\u0438\\u043a\\u043e\\u0440\\u0438\\u0441\\u0442\\u043e\\u0432\\u0443\\u0432\\u0430\\u0442\\u0438 \\u043a\\u043b\\u0430\\u0432\\u0456\\u0430\\u0442\\u0443\\u0440\\u0443 \\u0437\\u0430\\u043c\\u0456\\u0441\\u0442\\u044c \\u0446\\u044c\\u043e\\u0433\\u043e.\",\"clipboard_msg\":\"\\u041a\\u043e\\u043f\\u0456\\u044e\\u0432\\u0430\\u0442\\u0438/\\u0412\\u0438\\u0440\\u0456\\u0437\\u0430\\u0442\\u0438/\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438 \\u043d\\u0435 \\u0434\\u043e\\u0441\\u0442\\u0443\\u043f\\u043d\\u043e \\u0432 Mozilla \\u0442\\u0430 Firefox.\\n\\u0412\\u0430\\u043c \\u0446\\u0456\\u043a\\u0430\\u0432\\u0430 \\u0456\\u043d\\u0444\\u043e\\u0440\\u043c\\u0430\\u0446\\u0456\\u044f \\u043f\\u0440\\u043e \\u0446\\u0435?\",\"not_set\":\"-- \\u043d\\u0435 \\u0432\\u0438\\u0431\\u0440\\u0430\\u043d\\u043e --\",\"class_name\":\"\\u041a\\u043b\\u0430\\u0441\",browse:\"\\u041f\\u0435\\u0440\\u0435\\u0433\\u043b\\u044f\\u0434\",close:\"\\u0417\\u0430\\u043a\\u0440\\u0438\\u0442\\u0438\",cancel:\"\\u0412\\u0456\\u0434\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438\",update:\"\\u041e\\u043d\\u043e\\u0432\\u0438\\u0442\\u0438\",insert:\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438\",apply:\"\\u0417\\u0430\\u0441\\u0442\\u043e\\u0441\\u0443\\u0432\\u0430\\u0442\\u0438\",\"edit_confirm\":\"\\u0412\\u0438 \\u0431\\u0430\\u0436\\u0430\\u0454\\u0442\\u0435 \\u0432\\u0438\\u043a\\u043e\\u0440\\u0438\\u0441\\u0442\\u043e\\u0432\\u0443\\u0432\\u0430\\u0442\\u0438 WYSIWYG \\u0440\\u0435\\u0436\\u0438\\u043c \\u0434\\u043b\\u044f \\u0446\\u044c\\u043e\\u0433\\u043e \\u043f\\u043e\\u043b\\u044f?\",\"invalid_data_number\":\"{#field} \\u043f\\u043e\\u0432\\u0438\\u043d\\u043d\\u0435 \\u0431\\u0443\\u0442\\u0438 \\u0447\\u0438\\u0441\\u043b\\u043e\\u043c\",\"invalid_data_min\":\"{#field} \\u0447\\u0438\\u0441\\u043b\\u043e \\u043f\\u043e\\u0432\\u0438\\u043d\\u043d\\u0435 \\u0431\\u0443\\u0442\\u0438 \\u0431\\u0456\\u043b\\u044c\\u0448\\u0435 \\u043d\\u0456\\u0436 {#min}\",\"invalid_data_size\":\"{#field} \\u043f\\u043e\\u0432\\u0438\\u043d\\u043d\\u0435 \\u0431\\u0443\\u0442\\u0438 \\u0447\\u0438\\u0441\\u043b\\u043e\\u043c \\u0430\\u0431\\u043e \\u0432\\u0456\\u0434\\u0441\\u043e\\u0442\\u043a\\u043e\\u043c\",value:\"(\\u0437\\u043d\\u0430\\u0447\\u0435\\u043d\\u043d\\u044f)\"},contextmenu:{full:\"\\u041f\\u043e \\u0448\\u0438\\u0440\\u0438\\u043d\\u0456\",right:\"\\u041f\\u043e \\u043f\\u0440\\u0430\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",center:\"\\u041f\\u043e \\u0446\\u0435\\u043d\\u0442\\u0440\\u0443\",left:\"\\u041f\\u043e \\u043b\\u0456\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",align:\"\\u0412\\u0438\\u0440\\u0456\\u0432\\u043d\\u044e\\u0432\\u0430\\u043d\\u043d\\u044f\"},insertdatetime:{\"day_short\":\"\\u041d\\u0434,\\u041f\\u043d,\\u0412\\u0442,\\u0421\\u0440,\\u0427\\u0442,\\u041f\\u0442,\\u0421\\u0431,\\u041d\\u0434\",\"day_long\":\"\\u041d\\u0435\\u0434\\u0456\\u043b\\u044f,\\u041f\\u043e\\u043d\\u0435\\u0434\\u0456\\u043b\\u043e\\u043a,\\u0412\\u0456\\u0432\\u0442\\u043e\\u0440\\u043e\\u043a,\\u0421\\u0435\\u0440\\u0435\\u0434\\u0430,\\u0427\\u0435\\u0442\\u0432\\u0435\\u0440,\\u041f\\'\\u044f\\u0442\\u043d\\u0438\\u0446\\u044f,\\u0421\\u0443\\u0431\\u043e\\u0442\\u0430,\\u041d\\u0435\\u0434\\u0456\\u043b\\u044f\",\"months_short\":\"\\u0421\\u0456\\u0447,\\u041b\\u044e\\u0442,\\u0411\\u0435\\u0440,\\u041a\\u0432\\u0456,\\u0422\\u0440\\u0430,\\u0427\\u0435\\u0440,\\u041b\\u0438\\u043f,\\u0421\\u0435\\u0440,\\u0412\\u0435\\u0440,\\u0416\\u043e\\u0432,\\u041b\\u0438\\u0441,\\u0413\\u0440\\u0443\",\"months_long\":\"\\u0421\\u0456\\u0447\\u0435\\u043d\\u044c,\\u041b\\u044e\\u0442\\u0438\\u0439,\\u0411\\u0435\\u0440\\u0435\\u0437\\u0435\\u043d\\u044c,\\u041a\\u0432\\u0456\\u0442\\u0435\\u043d\\u044c,\\u0422\\u0440\\u0430\\u0432\\u0435\\u043d\\u044c,\\u0427\\u0435\\u0440\\u0432\\u0435\\u043d\\u044c,\\u041b\\u0438\\u043f\\u0435\\u043d\\u044c,\\u0421\\u0435\\u0440\\u043f\\u0435\\u043d\\u044c,\\u0412\\u0435\\u0440\\u0435\\u0441\\u0435\\u043d\\u044c,\\u0416\\u043e\\u0432\\u0442\\u0435\\u043d\\u044c,\\u041b\\u0438\\u0441\\u0442\\u043e\\u043f\\u0430\\u0434,\\u0413\\u0440\\u0443\\u0434\\u0435\\u043d\\u044c\",\"inserttime_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438 \\u0447\\u0430\\u0441\",\"insertdate_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438 \\u0434\\u0430\\u0442\\u0443\",\"time_fmt\":\"%H:%M:%S\",\"date_fmt\":\"%d.%m.%Y\"},print:{\"print_desc\":\"\\u0414\\u0440\\u0443\\u043a\\u0443\\u0432\\u0430\\u0442\\u0438\"},preview:{\"preview_desc\":\"\\u041f\\u0435\\u0440\\u0435\\u0433\\u043b\\u044f\\u0434\"},directionality:{\"rtl_desc\":\"\\u041d\\u0430\\u043f\\u0440\\u044f\\u043c \\u0441\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043d\\u0430\\u043b\\u0456\\u0432\\u043e\",\"ltr_desc\":\"\\u041d\\u0430\\u043f\\u0440\\u044f\\u043c \\u0437\\u043b\\u0456\\u0432\\u0430 \\u043d\\u0430\\u043f\\u0440\\u0430\\u0432\\u043e\"},layer:{content:\"\\u041d\\u043e\\u0432\\u0438\\u0439 \\u043f\\u0440\\u043e\\u0448\\u0430\\u0440\\u043e\\u043a...\",\"absolute_desc\":\"\\u041f\\u0435\\u0440\\u0435\\u043c\\u0438\\u043a\\u043d\\u0443\\u0442\\u0438 \\u0430\\u0431\\u0441\\u043e\\u043b\\u044e\\u0442\\u043d\\u0435 \\u043f\\u043e\\u0437\\u0438\\u0446\\u0456\\u044e\\u0432\\u0430\\u043d\\u043d\\u044f\",\"backward_desc\":\"\\u041f\\u0435\\u0440\\u0435\\u043c\\u0456\\u0441\\u0442\\u0438\\u0442\\u0438 \\u043d\\u0430\\u0437\\u0430\\u0434\",\"forward_desc\":\"\\u041f\\u0435\\u0440\\u0435\\u043c\\u0456\\u0441\\u0442\\u0438\\u0442\\u0438 \\u0432\\u043f\\u0435\\u0440\\u0435\\u0434\",\"insertlayer_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438 \\u043d\\u043e\\u0432\\u0438\\u0439 \\u043f\\u0440\\u043e\\u0448\\u0430\\u0440\\u043e\\u043a\"},save:{\"save_desc\":\"\\u0417\\u0431\\u0435\\u0440\\u0435\\u0433\\u0442\\u0438\",\"cancel_desc\":\"\\u0412\\u0456\\u0434\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438 \\u0432\\u0441\\u0456 \\u0437\\u043c\\u0456\\u043d\\u0438\"},nonbreaking:{\"nonbreaking_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438 \\u043d\\u0435\\u0440\\u043e\\u0437\\u0440\\u0438\\u0432\\u043d\\u0438\\u0439 \\u043f\\u0440\\u043e\\u043c\\u0456\\u0436\\u043e\\u043a\"},iespell:{download:\"\\u0414\\u043e\\u0434\\u0430\\u0442\\u043e\\u043a ieSpell \\u043d\\u0435 \\u0437\\u043d\\u0430\\u0439\\u0434\\u0435\\u043d\\u043e. \\u0411\\u0430\\u0436\\u0430\\u0454\\u0442\\u0435 \\u0432\\u0441\\u0442\\u0430\\u043d\\u043e\\u0432\\u0438\\u0442\\u0438?\",\"iespell_desc\":\"\\u0417\\u0430\\u043f\\u0443\\u0441\\u0442\\u0438\\u0442\\u0438 \\u043f\\u0435\\u0440\\u0435\\u0432\\u0456\\u0440\\u043a\\u0443 \\u043e\\u0440\\u0444\\u043e\\u0433\\u0440\\u0430\\u0444\\u0456\\u0457\"},advhr:{\"advhr_desc\":\"\\u0413\\u043e\\u0440\\u0438\\u0437\\u043e\\u043d\\u0442\\u0430\\u043b\\u044c\\u043d\\u0438\\u0439 \\u0440\\u043e\\u0437\\u0434\\u0456\\u043b\\u044c\\u043d\\u0438\\u043a\",\"delta_height\":\"\",\"delta_width\":\"\"},emotions:{\"emotions_desc\":\"\\u0421\\u043c\\u0430\\u0439\\u043b\\u0438\",\"delta_height\":\"\",\"delta_width\":\"\"},searchreplace:{\"replace_desc\":\"\\u0428\\u0443\\u043a\\u0430\\u0442\\u0438/\\u0417\\u0430\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438\",\"search_desc\":\"\\u0428\\u0443\\u043a\\u0430\\u0442\\u0438\",\"delta_width\":\"\",\"delta_height\":\"\"},advimage:{\"delta_width\":\"200\",\"image_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438/\\u0437\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438 \\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u043d\\u044f\",\"delta_height\":\"\"},advlink:{\"delta_width\":\"200\",\"link_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438/\\u0437\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438 \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f\",\"delta_height\":\"\"},xhtmlxtras:{\"attribs_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438/\\u0437\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438 \\u0430\\u0442\\u0440\\u0438\\u0431\\u0443\\u0442\\u0438\",\"ins_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u043a\\u0430\",\"del_desc\":\"\\u0412\\u0438\\u0434\\u0430\\u043b\\u0435\\u043d\\u043d\\u044f\",\"acronym_desc\":\"\\u0410\\u043a\\u0440\\u043e\\u043d\\u0456\\u043c\",\"abbr_desc\":\"\\u0410\\u0431\\u0440\\u0435\\u0432\\u0456\\u0430\\u0442\\u0443\\u0440\\u0430\",\"cite_desc\":\"\\u0426\\u0438\\u0442\\u0430\\u0442\\u0430\",\"attribs_delta_height\":\"\",\"attribs_delta_width\":\"\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\"},style:{desc:\"\\u0420\\u0435\\u0434\\u0430\\u0433\\u0443\\u0432\\u0430\\u0442\\u0438 CSS \\u0441\\u0442\\u0438\\u043b\\u044c\",\"delta_height\":\"\",\"delta_width\":\"\"},paste:{\"plaintext_mode\":\"\\u0412 \\u0434\\u0430\\u043d\\u0438\\u0439 \\u0447\\u0430\\u0441 \\u0412\\u0441\\u0442\\u0430\\u0432\\u043a\\u0430 \\u0432 \\u0440\\u0435\\u0436\\u0438\\u043c\\u0456 \\u0437\\u0432\\u0438\\u0447\\u0430\\u0439\\u043d\\u043e\\u0433\\u043e \\u0442\\u0435\\u043a\\u0441\\u0442\\u0443. \\u041d\\u0430\\u0442\\u0438\\u0441\\u043d\\u0456\\u0442\\u044c \\u0437\\u043d\\u043e\\u0432\\u0443 \\u0434\\u043b\\u044f \\u043f\\u0435\\u0440\\u0435\\u043c\\u0438\\u043a\\u0430\\u043d\\u043d\\u044f \\u043d\\u0430\\u0437\\u0430\\u0434 \\u0432 \\u0437\\u0432\\u0438\\u0447\\u0430\\u0439\\u043d\\u0438\\u0439 \\u0440\\u0435\\u0436\\u0438\\u043c \\u0412\\u0441\\u0442\\u0430\\u0432\\u043a\\u0438.\",\"plaintext_mode_sticky\":\"\\u0412 \\u0434\\u0430\\u043d\\u0438\\u0439 \\u0447\\u0430\\u0441 \\u0412\\u0441\\u0442\\u0430\\u0432\\u043a\\u0430 \\u0432 \\u0440\\u0435\\u0436\\u0438\\u043c\\u0456 \\u0437\\u0432\\u0438\\u0447\\u0430\\u0439\\u043d\\u043e\\u0433\\u043e \\u0442\\u0435\\u043a\\u0441\\u0442\\u0443. \\u041d\\u0430\\u0442\\u0438\\u0441\\u043d\\u0456\\u0442\\u044c \\u0437\\u043d\\u043e\\u0432\\u0443 \\u0434\\u043b\\u044f \\u043f\\u0435\\u0440\\u0435\\u043c\\u0438\\u043a\\u0430\\u043d\\u043d\\u044f \\u043d\\u0430\\u0437\\u0430\\u0434 \\u0432 \\u0437\\u0432\\u0438\\u0447\\u0430\\u0439\\u043d\\u0438\\u0439 \\u0440\\u0435\\u0436\\u0438\\u043c \\u0412\\u0441\\u0442\\u0430\\u0432\\u043a\\u0438.. \\u041f\\u0456\\u0441\\u043b\\u044f \\u0442\\u043e\\u0433\\u043e, \\u044f\\u043a \\u0412\\u0438 \\u0449\\u043e-\\u043d\\u0435\\u0431\\u0443\\u0434\\u044c \\u0432\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0435, \\u0412\\u0438 \\u043f\\u043e\\u0432\\u0435\\u0440\\u043d\\u0435\\u0442\\u0435\\u0441\\u044c \\u0432 \\u0437\\u0432\\u0438\\u0447\\u0430\\u0439\\u043d\\u043c\\u0439 \\u0440\\u0435\\u0436\\u0438\\u043c \\u0412\\u0441\\u0442\\u0430\\u0432\\u043a\\u0438.\",\"selectall_desc\":\"\\u0412\\u0438\\u0434\\u0456\\u043b\\u0438\\u0442\\u0438 \\u0432\\u0441\\u0435\",\"paste_word_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438 \\u0437 Word\",\"paste_text_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438 \\u044f\\u043a \\u0442\\u0435\\u043a\\u0441\\u0442\"},\"paste_dlg\":{\"word_title\":\"\\u0412\\u0438\\u043a\\u043e\\u0440\\u0438\\u0441\\u0442\\u043e\\u0432\\u0443\\u0439\\u0442\\u0435 CTRL+V \\u0434\\u043b\\u044f \\u0432\\u0441\\u0442\\u0430\\u0432\\u043a\\u0438 \\u0442\\u0435\\u043a\\u0441\\u0442\\u0443 \\u0443 \\u0432\\u0456\\u043a\\u043d\\u043e.\",\"text_linebreaks\":\"\\u0417\\u0431\\u0435\\u0440\\u0456\\u0433\\u0430\\u0442\\u0438 \\u043f\\u0435\\u0440\\u0435\\u043d\\u043e\\u0441\\u0438 \\u0440\\u044f\\u0434\\u043a\\u0456\\u0432\",\"text_title\":\"\\u0412\\u0438\\u043a\\u043e\\u0440\\u0438\\u0441\\u0442\\u043e\\u0432\\u0443\\u0439\\u0442\\u0435 CTRL+V \\u0434\\u043b\\u044f \\u0432\\u0441\\u0442\\u0430\\u0432\\u043a\\u0438 \\u0442\\u0435\\u043a\\u0441\\u0442\\u0443 \\u0443 \\u0432\\u0456\\u043a\\u043d\\u043e.\"},table:{\"cellprops_delta_width\":\"30\",cell:\"\\u041a\\u043e\\u043c\\u0456\\u0440\\u043a\\u0430\",col:\"\\u0421\\u0442\\u043e\\u0432\\u043f\\u0435\\u0446\\u044c\",row:\"\\u0420\\u044f\\u0434\\u043e\\u043a\",del:\"\\u0412\\u0438\\u0434\\u0430\\u043b\\u0438\\u0442\\u0438 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u044e\",\"copy_row_desc\":\"\\u041a\\u043e\\u043f\\u0456\\u044e\\u0432\\u0430\\u0442\\u0438 \\u0440\\u044f\\u0434\\u043e\\u043a \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0456\",\"cut_row_desc\":\"\\u0412\\u0438\\u0440\\u0456\\u0437\\u0430\\u0442\\u0438 \\u0440\\u044f\\u0434\\u043e\\u043a \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0456\",\"paste_row_after_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438 \\u0440\\u044f\\u0434\\u043e\\u043a \\u043f\\u0456\\u0441\\u043b\\u044f\",\"paste_row_before_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438 \\u0440\\u044f\\u0434\\u043e\\u043a \\u0434\\u043e\",\"props_desc\":\"\\u0412\\u043b\\u0430\\u0441\\u0442\\u0438\\u0432\\u043e\\u0441\\u0442\\u0456 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0456\",\"cell_desc\":\"\\u0412\\u043b\\u0430\\u0441\\u0442\\u0438\\u0432\\u043e\\u0441\\u0442\\u0456 \\u043a\\u043e\\u043c\\u0456\\u0440\\u043a\\u0438 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0456\",\"row_desc\":\"\\u0412\\u043b\\u0430\\u0441\\u0442\\u0438\\u0432\\u043e\\u0441\\u0442\\u0456 \\u0440\\u044f\\u0434\\u043a\\u0443 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0456\",\"merge_cells_desc\":\"\\u041e\\u0431\\'\\u0454\\u0434\\u043d\\u0430\\u0442\\u0438 \\u043a\\u043e\\u043c\\u0456\\u0440\\u043a\\u0438\",\"split_cells_desc\":\"\\u0420\\u043e\\u0437\\u0434\\u0456\\u043b\\u0438\\u0442\\u0438 \\u043a\\u043e\\u043c\\u0456\\u0440\\u043a\\u0438\",\"delete_col_desc\":\"\\u0412\\u0438\\u0434\\u0430\\u043b\\u0438\\u0442\\u0438 \\u0441\\u0442\\u043e\\u0432\\u043f\\u0435\\u0446\\u044c\",\"col_after_desc\":\"\\u0414\\u043e\\u0434\\u0430\\u0442\\u0438 \\u0441\\u0442\\u043e\\u0432\\u043f\\u0435\\u0446\\u044c \\u043f\\u0456\\u0441\\u043b\\u044f\",\"col_before_desc\":\"\\u0414\\u043e\\u0434\\u0430\\u0442\\u0438 \\u0441\\u0442\\u043e\\u0432\\u043f\\u0435\\u0446\\u044c \\u0434\\u043e\",\"delete_row_desc\":\"\\u0412\\u0438\\u0434\\u0430\\u043b\\u0438\\u0442\\u0438 \\u0440\\u044f\\u0434\\u043e\\u043a\",\"row_after_desc\":\"\\u0414\\u043e\\u0434\\u0430\\u0442\\u0438 \\u0440\\u044f\\u0434\\u043e\\u043a \\u043f\\u0456\\u0441\\u043b\\u044f\",\"row_before_desc\":\"\\u0414\\u043e\\u0434\\u0430\\u0442\\u0438 \\u0440\\u044f\\u0434\\u043e\\u043a \\u0434\\u043e\",desc:\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438 \\u043d\\u043e\\u0432\\u0443 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u044e\",\"merge_cells_delta_height\":\"\",\"merge_cells_delta_width\":\"\",\"table_delta_height\":\"\",\"table_delta_width\":\"\",\"cellprops_delta_height\":\"\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\"},autosave:{\"warning_message\":\"\\u042f\\u043a\\u0449\\u043e \\u0432\\u0456\\u0434\\u043d\\u043e\\u0432\\u0438\\u0442\\u0438 \\u0437\\u0431\\u0435\\u0440\\u0435\\u0436\\u0435\\u043d\\u0438\\u0439 \\u0432\\u043c\\u0456\\u0441\\u0442, \\u0442\\u043e \\u0432\\u0438 \\u0432\\u0442\\u0440\\u0430\\u0442\\u0438\\u0442\\u0435 \\u0432\\u0435\\u0441\\u044c \\u0432\\u043c\\u0456\\u0441\\u0442, \\u044f\\u043a\\u0438\\u0439 \\u0432 \\u0434\\u0430\\u043d\\u0438\\u0439 \\u0447\\u0430\\u0441 \\u0437\\u043d\\u0430\\u0445\\u043e\\u0434\\u0438\\u0442\\u044c\\u0441\\u044f \\u0432 \\u0440\\u0435\\u0434\\u0430\\u043a\\u0442\\u043e\\u0440\\u0456. \\n\\n\\u0412\\u0438 \\u0432\\u043f\\u0435\\u0432\\u043d\\u0435\\u043d\\u0456, \\u0449\\u043e \\u0445\\u043e\\u0447\\u0435\\u0442\\u0435 \\u0432\\u0456\\u0434\\u043d\\u043e\\u0432\\u0438\\u0442\\u0438 \\u0437\\u0431\\u0435\\u0440\\u0435\\u0436\\u0435\\u043d\\u0438\\u0439 \\u0437\\u043c\\u0456\\u0441\\u0442?.\",\"restore_content\":\"\\u0412\\u0456\\u0434\\u043d\\u043e\\u0432\\u043b\\u0435\\u043d\\u043d\\u044f \\u0430\\u0432\\u0442\\u043e\\u043c\\u0430\\u0442\\u0438\\u0447\\u043d\\u043e \\u0437\\u0431\\u0435\\u0440\\u0435\\u0436\\u0435\\u043d\\u043e\\u0433\\u043e \\u0432\\u043c\\u0456\\u0441\\u0442\\u0443.\",\"unload_msg\":\"\\u0417\\u043c\\u0456\\u043d\\u0438, \\u044f\\u043a\\u0456 \\u0432\\u0438 \\u0437\\u0440\\u043e\\u0431\\u0438\\u043b\\u0438, \\u0431\\u0443\\u0434\\u0443\\u0442\\u044c \\u0432\\u0442\\u0440\\u0430\\u0447\\u0435\\u043d\\u0456, \\u044f\\u043a\\u0449\\u043e \\u0432\\u0438 \\u043f\\u0435\\u0440\\u0435\\u0439\\u0434\\u0435\\u0442\\u0435 \\u0437 \\u0446\\u0456\\u0454\\u0457 \\u0441\\u0442\\u043e\\u0440\\u0456\\u043d\\u043a\\u0438.\"},fullscreen:{desc:\"\\u041f\\u0435\\u0440\\u0435\\u043c\\u043a\\u043d\\u0443\\u0442\\u0438 \\u043d\\u0430 \\u0432\\u0435\\u0441\\u044c \\u0435\\u043a\\u0440\\u0430\\u043d\"},media:{edit:\"\\u0420\\u0435\\u0434\\u0430\\u0433\\u0443\\u0432\\u0430\\u0442\\u0438 \\u0432\\u0431\\u0443\\u0434\\u043e\\u0432\\u0430\\u043d\\u0456 \\u043c\\u0435\\u0434\\u0456\\u0430\",desc:\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438 / \\u0440\\u0435\\u0434\\u0430\\u0433\\u0443\\u0432\\u0430\\u0442\\u0438 \\u0432\\u0431\\u0443\\u0434\\u043e\\u0432\\u0430\\u043d\\u0456 \\u043c\\u0435\\u0434\\u0456\\u0430\",\"delta_height\":\"\",\"delta_width\":\"\"},fullpage:{desc:\"\\u0412\\u043b\\u0430\\u0441\\u0442\\u0438\\u0432\\u043e\\u0441\\u0442\\u0456 \\u0434\\u043e\\u043a\\u0443\\u043c\\u0435\\u043d\\u0442\\u0430\",\"delta_width\":\"\",\"delta_height\":\"\"},template:{desc:\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438 \\u0448\\u0430\\u0431\\u043b\\u043e\\u043d\\u043d\\u0438\\u0439 \\u043a\\u043e\\u043d\\u0442\\u0435\\u043d\\u0442\"},visualchars:{desc:\"\\u0412\\u0456\\u0437\\u0443\\u0430\\u043b\\u044c\\u043d\\u0438\\u0439 \\u043a\\u043e\\u043d\\u0442\\u0440\\u043e\\u043b\\u044c \\u0441\\u0438\\u043c\\u0432\\u043e\\u043b\\u0456\\u0432 \\u0432\\u0432\\u0456\\u043c\\u043a\\u043d\\u0435\\u043d\\u043d\\u044f / \\u0432\\u0438\\u043c\\u043a\\u043d\\u0435\\u043d\\u043d\\u044f.\"},spellchecker:{desc:\"\\u041f\\u0435\\u0440\\u0435\\u043a\\u043b\\u044e\\u0447\\u0438\\u0442\\u0438 \\u043f\\u0435\\u0440\\u0435\\u0432\\u0456\\u0440\\u043a\\u0443\",menu:\"\\u041d\\u0430\\u043b\\u0430\\u0448\\u0442\\u0443\\u0432\\u0430\\u043d\\u043d\\u044f \\u043f\\u0435\\u0440\\u0435\\u0432\\u0456\\u0440\\u043a\\u0438\",\"ignore_word\":\"\\u0406\\u0433\\u043d\\u043e\\u0440\\u0443\\u0432\\u0430\\u0442\\u0438 \\u0441\\u043b\\u043e\\u0432\\u043e\",\"ignore_words\":\"\\u0406\\u0433\\u043d\\u043e\\u0440\\u0443\\u0432\\u0430\\u0442\\u0438 \\u0432\\u0441\\u0435\",langs:\"\\u041c\\u043e\\u0432\\u0438\",wait:\"\\u0411\\u0443\\u0434\\u044c \\u043b\\u0430\\u0441\\u043a\\u0430, \\u0437\\u0430\\u0447\\u0435\\u043a\\u0430\\u0439\\u0442\\u0435...\",sug:\"\\u0412\\u0430\\u0440\\u0456\\u0430\\u043d\\u0442\\u0438\",\"no_sug\":\"\\u041d\\u0435\\u043c\\u0430\\u0454 \\u0432\\u0430\\u0440\\u0456\\u0430\\u043d\\u0442\\u0456\\u0432\",\"no_mpell\":\"\\u041f\\u043e\\u043c\\u0438\\u043b\\u043e\\u043a \\u043d\\u0435 \\u0437\\u043d\\u0430\\u0439\\u0434\\u0435\\u043d\\u043e.\",\"learn_word\":\"\\u0417\\u0430\\u043f\\u0430\\u043c\\'\\u044f\\u0442\\u0430\\u0442\\u0438 \\u0441\\u043b\\u043e\\u0432\\u043e\"},pagebreak:{desc:\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438 \\u0440\\u043e\\u0437\\u0434\\u0456\\u043b\\u044c\\u043d\\u0438\\u043a \\u0441\\u0442\\u043e\\u0440\\u0456\\u043d\\u043a\\u0438.\"},advlist:{types:\"\\u0422\\u0438\\u043f\\u0438\",def:\"\\u0417\\u0430 \\u0437\\u0430\\u043c\\u043e\\u0432\\u0447\\u0430\\u043d\\u043d\\u044f\\u043c\",\"lower_alpha\":\"Lower alpha\",\"lower_greek\":\"Lower greek\",\"lower_roman\":\"Lower roman\",\"upper_alpha\":\"Upper alpha\",\"upper_roman\":\"Upper roman\",circle:\"\\u041a\\u043e\\u043b\\u043e\",disc:\"\\u0414\\u0438\\u0441\\u043a\",square:\"\\u041a\\u0432\\u0430\\u0434\\u0440\\u0430\\u0442\"},colors:{\"333300\":\"\\u0422\\u0435\\u043c\\u043d\\u043e-\\u043e\\u043b\\u0438\\u0432\\u043a\\u043e\\u0432\\u0438\\u0439\",\"993300\":\"\\u041f\\u043e\\u043c\\u0430\\u0440\\u0430\\u043d\\u0447\\u0435\\u0432\\u0438\\u0439\",\"000000\":\"\\u0427\\u043e\\u0440\\u043d\\u0438\\u0439\",\"003300\":\"\\u0422\\u0435\\u043c\\u043d\\u043e-\\u0437\\u0435\\u043b\\u0435\\u043d\\u0438\\u0439\",FF6600:\"\\u041e\\u0440\\u0430\\u043d\\u0436\\u0435\\u0432\\u0438\\u0439\",\"808000\":\"\\u041e\\u043b\\u0438\\u0432\\u043a\\u043e\\u0432\\u0438\\u0439\",\"008000\":\"\\u0417\\u0435\\u043b\\u0435\\u043d\\u0438\\u0439\",\"0000FF\":\"\\u0421\\u0438\\u043d\\u0456\\u0439\",\"666699\":\"\\u0421\\u0456\\u0440\\u043e-\\u0433\\u043e\\u043b\\u0443\\u0431\\u0438\\u0439\",\"808080\":\"\\u0421\\u0456\\u0440\\u0438\\u0439\",FF0000:\"\\u0427\\u0435\\u0440\\u0432\\u043e\\u043d\\u0438\\u0439\",\"99CC00\":\"\\u0416\\u043e\\u0432\\u0442\\u043e-\\u0437\\u0435\\u043b\\u0435\\u043d\\u0438\\u0439\",\"339966\":\"Sea green \",FFCC00:\"\\u0417\\u043e\\u043b\\u043e\\u0442\\u0438\\u0439\",FFFF00:\"\\u0416\\u043e\\u0432\\u0442\\u0438\\u0439\",\"993366\":\"\\u041a\\u043e\\u0440\\u0438\\u0447\\u043d\\u0435\\u0432\\u0438\\u0439\",C0C0C0:\"\\u0421\\u0440\\u0456\\u0431\\u043b\\u044f\\u0441\\u0442\\u0438\\u0439\",FF99CC:\"\\u0420\\u043e\\u0436\\u0435\\u0432\\u0438\\u0439\",FFFF99:\"\\u0421\\u0432\\u0456\\u0442\\u043b\\u043e \\u0436\\u043e\\u0432\\u0442\\u0438\\u0439\",CC99FF:\"\\u0421\\u043b\\u0438\\u0432\\u043e\\u0432\\u0438\\u0439\",FFFFFF:\"\\u0411\\u0456\\u043b\\u0438\\u0439\",\"003366\":\"Dark azure\",\"000080\":\"Navy Blue\",\"333399\":\"Indigo\",\"333333\":\"Very dark gray\",\"800000\":\"Maroon\",\"008080\":\"Teal\",FF9900:\"Amber\",\"33CCCC\":\"Turquoise\",\"3366FF\":\"Royal blue\",\"800080\":\"Purple\",\"999999\":\"Medium gray\",FF00FF:\"Magenta\",\"00FF00\":\"Lime\",\"00FFFF\":\"Aqua\",\"00CCFF\":\"Sky blue\",FFCC99:\"Peach\",CCFFCC:\"Pale green\",CCFFFF:\"Pale cyan\",\"99CCFF\":\"Light sky blue\"},aria:{\"rich_text_area\":\"\\u0412\\u0456\\u0437\\u0443\\u0430\\u043b\\u044c\\u043d\\u0438\\u0439 \\u0440\\u0435\\u0434\\u0430\\u043a\\u0442\\u043e\\u0440\"},wordcount:{words:\"\\u0421\\u043b\\u0456\\u0432:\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/zh-tw.js",
    "content": "tinyMCE.addI18n({\"zh-tw\":{common:{\"more_colors\":\"\\u5176\\u4ed6\\u984f\\u8272\",\"invalid_data\":\"\\u7d05\\u8272\\u6a19\\u793a\\u8d77\\u4f86\\u7684\\u5730\\u65b9\\u6709\\u932f\\u8aa4\",\"popup_blocked\":\"\\u4f60\\u770b\\u7db2\\u9801\\u7684\\u8edf\\u9ad4\\u4e0d\\u652f\\u63f4\\u9019\\u500b\\u529f\\u80fd\\uff0c\\u8acb\\u6539\\u8b8a\\u8edf\\u9ad4\\u6709\\u95dc\\u5f48\\u8df3\\u8996\\u7a97\\u8a2d\\u5b9a\\uff0c\\u8acb\\u5141\\u8a31\\u4ed6\\uff0c\\u7a0b\\u5f0f\\u624d\\u80fd\\u6b63\\u5e38\\u904b\\u4f5c\",\"clipboard_no_support\":\"\\u4f60\\u770b\\u7db2\\u9801\\u7684\\u8edf\\u9ad4\\u4e0d\\u652f\\u63f4\\u9019\\u500b\\u529f\\u80fd\\uff0c\\u8acb\\u4f7f\\u7528\\u9375\\u76e4\\u4e0a\\u7684\\u5feb\\u901f\\u9375\\u8a66\\u8a66\\u770b\\uff0c\\u656c\\u8acb\\u898b\\u8ad2\",\"clipboard_msg\":\"\\u4f60\\u770b\\u7db2\\u9801\\u7684\\u8edf\\u9ad4\\u4e0d\\u652f\\u63f4\\u529f\\u80fd\\u5594\\uff01\\u5efa\\u8b70\\u4f7f\\u7528\\u9375\\u76e4\\u4e0a\\u7684 Ctrl   X (\\u526a\\u4e0b) \\u6216 Ctrl   V (\\u8cbc\\u4e0a) \\u4ee3\\u66ff\",\"not_set\":\"- \\u672a\\u8a2d\\u5b9a -\",\"class_name\":\"Class \\u985e\\u5225\",browse:\"\\u700f\\u89bd\",close:\"\\u95dc\\u9589\\u756b\\u9762\",cancel:\"\\u53d6\\u6d88\",update:\"\\u66f4\\u65b0\",insert:\"\\u52a0\\u5165\",apply:\"\\u9810\\u89bd\",\"edit_confirm\":\"\\u4f60\\u8981\\u4f7f\\u7528\\u300c\\u6587\\u5b57\\u7de8\\u8f2f\\u5668\\u300d\\u4f86\\u7de8\\u8f2f\\u4f60\\u7684\\u6587\\u7ae0\\u55ce\\uff1f\",\"invalid_data_number\":\"{#field} \\u61c9\\u8a72\\u8981\\u586b\\u6578\\u5b57\",\"invalid_data_min\":\"{#field} \\u4f60\\u586b\\u5beb\\u7684\\u6578\\u5b57\\uff0c\\u5fc5\\u9808\\u5927\\u65bc {#min}\",\"invalid_data_size\":\"{#field} \\u61c9\\u8a72\\u8981\\u586b\\u5beb\\u6578\\u5b57 \\u6216 \\u767e\\u5206\\u6bd4 (%)\",value:\"(value)\"},contextmenu:{full:\"\\u5206\\u6563\\u5c0d\\u9f4a\",right:\"\\u5411\\u53f3\\u908a\",center:\"\\u7f6e\\u4e2d\",left:\"\\u5411\\u5de6\\u908a\",align:\"\\u5c0d\\u9f4a\\u65b9\\u5f0f\"},insertdatetime:{\"day_short\":\"\\u9031\\u4e00,\\u9031\\u4e8c,\\u9031\\u4e09,\\u9031\\u56db,\\u9031\\u4e94,\\u9031\\u516d,\\u9031\\u65e5\",\"day_long\":\"\\u661f\\u671f\\u4e00,\\u661f\\u671f\\u4e8c,\\u661f\\u671f\\u4e09,\\u661f\\u671f\\u56db,\\u661f\\u671f\\u4e94,\\u661f\\u671f\\u516d,\\u661f\\u671f\\u65e5\",\"months_short\":\"\\u4e00\\u6708,\\u4e8c\\u6708,\\u4e09\\u6708,\\u56db\\u6708,\\u4e94\\u6708,\\u516d\\u6708,\\u4e03\\u6708,\\u516b\\u6708,\\u4e5d\\u6708,\\u5341\\u6708,\\u5341\\u4e00\\u6708,\\u5341\\u4e8c\\u6708\",\"months_long\":\"\\u4e00\\u6708,\\u4e8c\\u6708,\\u4e09\\u6708,\\u56db\\u6708,\\u4e94\\u6708,\\u516d\\u6708,\\u4e03\\u6708,\\u516b\\u6708,\\u4e5d\\u6708,\\u5341\\u6708,\\u5341\\u4e00\\u6708,\\u5341\\u4e8c\\u6708\",\"inserttime_desc\":\"\\u6642\\u9593\",\"insertdate_desc\":\"\\u65e5\\u671f\",\"time_fmt\":\"%H:%M:%S\",\"date_fmt\":\"%Y-%m-%d\"},print:{\"print_desc\":\"\\u5217\\u5370\"},preview:{\"preview_desc\":\"\\u9810\\u89bd\"},directionality:{\"rtl_desc\":\"\\u5f9e\\u53f3\\u908a\\u5230\\u5de6\\u908a\",\"ltr_desc\":\"\\u5f9e\\u5de6\\u908a\\u5230\\u53f3\\u908a\"},layer:{content:\"\\u65b0\\u589e\\u7db2\\u9801\\u5716\\u5c64\",\"absolute_desc\":\"\\u5b9a\\u4f4d\",\"backward_desc\":\"\\u653e\\u5230\\u5f8c\\u9762\",\"forward_desc\":\"\\u6392\\u5728\\u524d\\u9762\",\"insertlayer_desc\":\"\\u65b0\\u589e\\u7db2\\u9801\\u5716\\u5c64\"},save:{\"save_desc\":\"\\u5b58\\u6a94\",\"cancel_desc\":\"\\u5168\\u90e8\\u53d6\\u6d88\"},nonbreaking:{\"nonbreaking_desc\":\"\\u52a0\\u5165\\u4e0d\\u65b7\\u884c\\u7684\\u7b26\\u865f\"},iespell:{download:\"\\u7a0b\\u5f0f\\u627e\\u4e0d\\u5230 ieSpell \\uff0c\\u4f60\\u8981\\u5b89\\u88dd\\u5b83\\u55ce\\uff1f\",\"iespell_desc\":\"\\u6aa2\\u67e5\\u82f1\\u6587\\u8a9e\\u6cd5\"},advhr:{\"delta_height\":\"\\u9ad8\",\"delta_width\":\"\\u5bec\",\"advhr_desc\":\"\\u6c34\\u5e73\\u7dda\"},emotions:{\"delta_height\":\"\",\"emotions_desc\":\"\\u8868\\u60c5\\u7b26\\u865f\",\"delta_width\":\"\"},searchreplace:{\"replace_desc\":\"\\u641c\\u5c0b\\u53d6\\u4ee3\",\"search_desc\":\"\\u641c\\u5c0b\",\"delta_width\":\"\",\"delta_height\":\"\"},advimage:{\"image_desc\":\"\\u52a0\\u5165 / \\u7de8\\u8f2f\\u5716\\u7247\",\"delta_width\":\"\",\"delta_height\":\"\"},advlink:{\"link_desc\":\"\\u52a0\\u5165 / \\u7de8\\u8f2f\\u7db2\\u5740\",\"delta_height\":\"\",\"delta_width\":\"\"},xhtmlxtras:{\"attribs_desc\":\"\\u65b0\\u589e / \\u7de8\\u8f2f\\u5c6c\\u6027\",\"ins_desc\":\"\\u65b0\\u589e\",\"del_desc\":\"\\u522a\\u9664\",\"acronym_desc\":\"\\u982d\\u5b57\\u8a9e (\\u975e\\u4e00\\u822c\\u82f1\\u6587\\u7e2e\\u5beb)\",\"abbr_desc\":\"\\u82f1\\u6587\\u7e2e\\u5beb\",\"cite_desc\":\"\\u5f15\\u7528\",\"attribs_delta_height\":\"\",\"attribs_delta_width\":\"\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\"},style:{desc:\"\\u7de8\\u8f2f CSS \\u6a23\\u5f0f\",\"delta_height\":\"\",\"delta_width\":\"\"},paste:{\"plaintext_mode\":\"\\u73fe\\u5728\\u662f\\u7d14\\u6587\\u5b57\\u8cbc\\u4e0a\\u6a21\\u5f0f\\uff0c\\u4f60\\u73fe\\u5728\\u8cbc\\u4e0a\\u7684\\u8cc7\\u6599\\u53ea\\u6703\\u51fa\\u73fe\\u6587\\u5b57\",\"plaintext_mode_sticky\":\"\\u73fe\\u5728\\u662f\\u7d14\\u6587\\u5b57\\u8cbc\\u4e0a\\u6a21\\u5f0f\\uff0c\\u4f60\\u73fe\\u5728\\u8cbc\\u4e0a\\u7684\\u8cc7\\u6599\\u53ea\\u6703\\u51fa\\u73fe\\u6587\\u5b57\\uff0c\\u4f46\\u4f60\\u8cbc\\u4e0a\\u8cc7\\u6599\\u5f8c\\u5c07\\u56de\\u5230\\u4e00\\u822c\\u6a21\\u5f0f\\u53ef\\u4ee5\\u8cbc\\u4e0a\\u5716\\u7247\\u3001\\u5f71\\u7247\\u7b49\\u7b49\",\"selectall_desc\":\"\\u5168\\u9078\",\"paste_word_desc\":\"\\u5f9e Word \\u8cbc\\u4e0a\",\"paste_text_desc\":\"\\u53ea\\u8cbc\\u4e0a\\u6587\\u5b57\"},\"paste_dlg\":{\"word_title\":\"\\u8acb\\u6309\\u9375\\u76e4\\u4e0a\\u7684 Ctrl   C (\\u8907\\u88fd) \\u8cc7\\u6599\\u5230\\u756b\\u9762\\u4e0a\",\"text_linebreaks\":\"\\u4fdd\\u7559\\u6587\\u7ae0\\u4e2d\\u7684\\u63db\\u884c\",\"text_title\":\"\\u8acb\\u6309\\u9375\\u76e4\\u4e0a\\u7684 Ctrl   C (\\u8cbc\\u4e0a) \\u8cc7\\u6599\\u5230\\u756b\\u9762\\u4e0a\"},table:{cell:\"\\u5132\\u5b58\\u683c\",col:\"\\u6b04\",row:\"\\u5217\",del:\"\\u522a\\u9664\\u8868\\u683c\",\"copy_row_desc\":\"\\u8907\\u88fd\\u8868\\u683c\\u4e0a\\u7684\\u5217\",\"cut_row_desc\":\"\\u526a\\u4e0b\\u8868\\u683c\\u7684\\u5217\",\"paste_row_after_desc\":\"\\u8cbc\\u5728\\u9019\\u689d\\u5217\\u7684\\u5f8c\\u9762\",\"paste_row_before_desc\":\"\\u8cbc\\u5728\\u9019\\u689d\\u5217\\u7684\\u524d\\u9762\",\"props_desc\":\"\\u8868\\u683c\\u8a2d\\u5b9a\",\"cell_desc\":\"\\u5132\\u5b58\\u683c\\u7684\\u8a2d\\u5b9a\",\"row_desc\":\"\\u5217\\u7684\\u8a2d\\u5b9a\",\"merge_cells_desc\":\"\\u5408\\u4f75\\u8868\\u683c\",\"split_cells_desc\":\"\\u5206\\u5272\\u5132\\u5b58\\u683c\",\"delete_col_desc\":\"\\u79fb\\u9664\\u8868\\u683c\\u6b04\\u4f4d\",\"col_after_desc\":\"\\u5728\\u53f3\\u908a\\u52a0\\u5165\\u4e00\\u500b\\u6b04\\u4f4d\",\"col_before_desc\":\"\\u5728\\u5de6\\u908a\\u52a0\\u5165\\u4e00\\u500b\\u6b04\\u4f4d\",\"delete_row_desc\":\"\\u522a\\u9664\\u9019\\u6574\\u5217\",\"row_after_desc\":\"\\u5728\\u4e0b\\u65b9\\u52a0\\u5165\\u4e00\\u5217\",\"row_before_desc\":\"\\u5728\\u4e0a\\u65b9\\u52a0\\u5165\\u4e00\\u5217\",desc:\"\\u65b0\\u589e\\u4e00\\u500b\\u8868\\u683c\",\"merge_cells_delta_height\":\"\",\"merge_cells_delta_width\":\"\",\"table_delta_height\":\"\",\"table_delta_width\":\"\",\"cellprops_delta_height\":\"\",\"cellprops_delta_width\":\"\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\"},autosave:{\"warning_message\":\"\\u5982\\u679c\\u4f60\\u8981\\u9084\\u539f\\u8cc7\\u6599\\u7684\\u8a71\\uff0c\\u4f60\\u73fe\\u5728\\u7684\\u6587\\u7ae0\\u5c07\\u88ab\\u522a\\u9664\\uff0c\\u78ba\\u5b9a\\u8981\\u9084\\u539f\\u55ce\\uff1f\",\"restore_content\":\"\\u9084\\u539f\",\"unload_msg\":\"\\u4f60\\u5982\\u679c\\u96e2\\u958b\\u9019\\u500b\\u756b\\u9762\\uff0c\\u7a0b\\u5f0f\\u6703\\u79fb\\u9664\\u6587\\u7ae0\\u5099\\u4efd (\\u4f46\\u4e0d\\u5f71\\u97ff\\u5230\\u7db2\\u7ad9\\u904b\\u4f5c)\"},fullscreen:{desc:\"\\u653e\\u5927\\u5230\\u6574\\u500b\\u87a2\\u5e55\"},media:{\"delta_height\":\"\",edit:\"\\u6539\\u8b8a\\u8a2d\\u5b9a\",desc:\"\\u52a0\\u5165\\u5d4c\\u5165\\u8a9e\\u6cd5\",\"delta_width\":\"\"},fullpage:{desc:\"\\u9801\\u9762\\u5c6c\\u6027\",\"delta_width\":\"\",\"delta_height\":\"\"},template:{desc:\"\\u4f7f\\u7528\\u7248\\u578b\"},visualchars:{desc:\"\\u986f\\u793a\\u96b1\\u85cf\\u7684\\u5b57\"},spellchecker:{desc:\"\\u4f7f\\u7528\\u82f1\\u6587\\u8a9e\\u6cd5\\u6aa2\\u67e5\",menu:\"\\u8a2d\\u5b9a\",\"ignore_word\":\"\\u5ffd\\u7565\",\"ignore_words\":\"\\u5168\\u90e8\\u5ffd\\u7565\",langs:\"\\u8a9e\\u8a00\",wait:\"\\u7a0d\\u7b49\",sug:\"\\u62fc\\u5b57\\u5efa\\u8b70\",\"no_sug\":\"\\u7121\",\"no_mpell\":\"\\u6c92\\u6709\\u8a9e\\u6cd5\\u4e0a\\u7684\\u554f\\u984c\",\"learn_word\":\"\\u81ea\\u52d5\\u5b78\\u7fd2\\u529f\\u80fd\"},pagebreak:{desc:\"\\u52a0\\u4e0a\\u5206\\u9801\\u7b26\\u865f\"},advlist:{types:\"\\u5f62\\u5f0f\",def:\"\\u9810\\u8a2d\",\"lower_alpha\":\"\\u5c0f\\u5beb\\u7684\\u82f1\\u6587\",\"lower_greek\":\"\\u5e0c\\u81d8\\u6587\",\"lower_roman\":\"\\u5c0f\\u5beb\\u7684\\u7f85\\u99ac\\u6578\\u5b57\",\"upper_alpha\":\"\\u5927\\u5beb\\u7684\\u82f1\\u6587\",\"upper_roman\":\"\\u5927\\u5beb\\u7684\\u7f85\\u99ac\\u6578\\u5b57\",circle:\"\\u7a7a\\u5fc3\\u7684\\u5713\\u5708\\u5708\",disc:\"\\u5713\\u5708\\u5708\",square:\"\\u6b63\\u65b9\\u5f62\"},colors:{\"333300\":\"Dark olive\",\"993300\":\"Burnt orange\",\"000000\":\"Black\",\"003300\":\"Dark green\",\"003366\":\"Dark azure\",\"000080\":\"Navy Blue\",\"333399\":\"Indigo\",\"333333\":\"Very dark gray\",\"800000\":\"Maroon\",FF6600:\"Orange\",\"808000\":\"Olive\",\"008000\":\"Green\",\"008080\":\"Teal\",\"0000FF\":\"Blue\",\"666699\":\"Grayish blue\",\"808080\":\"Gray\",FF0000:\"Red\",FF9900:\"Amber\",\"99CC00\":\"Yellow green\",\"339966\":\"Sea green\",\"33CCCC\":\"Turquoise\",\"3366FF\":\"Royal blue\",\"800080\":\"Purple\",\"999999\":\"Medium gray\",FF00FF:\"Magenta\",FFCC00:\"Gold\",FFFF00:\"Yellow\",\"00FF00\":\"Lime\",\"00FFFF\":\"Aqua\",\"00CCFF\":\"Sky blue\",\"993366\":\"Brown\",C0C0C0:\"Silver\",FF99CC:\"Pink\",FFCC99:\"Peach\",FFFF99:\"Light yellow\",CCFFCC:\"Pale green\",CCFFFF:\"Pale cyan\",\"99CCFF\":\"Light sky blue\",CC99FF:\"Plum\",FFFFFF:\"White\"},aria:{\"rich_text_area\":\"\\u6587\\u5b57\\u7de8\\u8f2f\\u5340\"},wordcount:{words:\"\\u6587\\u7ae0\\u5167\\u7684\\u5b57\\u6578: \"}}});"
  },
  {
    "path": "newscoop/js/tinymce/langs/zh.js",
    "content": "tinyMCE.addI18n({zh:{common:{\"more_colors\":\"\\u66f4\\u591a\\u989c\\u8272\",\"invalid_data\":\"\\u9519\\u8bef\\uff1a\\u7ea2\\u8272\\u8868\\u793a\\u8f93\\u5165\\u503c\\u65e0\\u6548\\u3002\",\"popup_blocked\":\"\\u5f88\\u62b1\\u6b49\\uff0c\\u6211\\u4eec\\u6ce8\\u610f\\u5230\\u60a8\\u7684\\u6d4f\\u89c8\\u5668\\u4e0d\\u5141\\u8bb8\\u5f39\\u51fa\\u7a97\\u53e3\\u3002\\u8bf7\\u4e3a\\u6b64\\u7ad9\\u89e3\\u9664\\u8be5\\u9650\\u5236\\uff0c\\u4ee5\\u6709\\u6548\\u5229\\u7528\\u6b64\\u7f16\\u8f91\\u5668\\u5de5\\u5177\\u3002\",\"clipboard_no_support\":\"\\u60a8\\u7684\\u6d4f\\u89c8\\u5668\\u4e0d\\u652f\\u6301\\u6b64\\u529f\\u80fd\\uff0c\\u8bf7\\u4f7f\\u7528\\u952e\\u76d8\\u5feb\\u6377\\u952e\\u64cd\\u4f5c\\u3002\",\"clipboard_msg\":\"Mozilla\\u548cFirefox\\u4e0d\\u652f\\u6301\\u590d\\u5236/\\u526a\\u5207/\\u7c98\\u8d34\\u3002\\n\\u60a8\\u9700\\u8981\\u5173\\u4e8e\\u6b64\\u95ee\\u9898\\u66f4\\u8fdb\\u4e00\\u6b65\\u7684\\u4fe1\\u606f\\u5417\\uff1f\",\"not_set\":\"--\\u5c1a\\u672a\\u8bbe\\u5b9a--\",\"class_name\":\"\\u7c7b\",browse:\"\\u6d4f\\u89c8\",close:\"\\u5173\\u95ed\",cancel:\"\\u53d6\\u6d88\",update:\"\\u66f4\\u65b0\",insert:\"\\u63d2\\u5165\",apply:\"\\u5e94\\u7528\",\"edit_confirm\":\"\\u662f\\u5426\\u4e3a\\u8be5\\u6587\\u672c\\u6846\\u542f\\u7528WYSIWYG\\u6a21\\u5f0f\\uff1f\",\"invalid_data_number\":\"{#field} \\u5fc5\\u987b\\u662f\\u6570\\u5b57\",\"invalid_data_min\":\"{#field} \\u5fc5\\u987b\\u662f\\u5927\\u4e8e{#min}\\u7684\\u6570\\u5b57\",\"invalid_data_size\":\"{#field} \\u5fc5\\u987b\\u662f\\u6570\\u5b57\\u6216\\u767e\\u5206\\u6bd4\",value:\"(\\u503c)\"},contextmenu:{full:\"\\u4e24\\u7aef\\u5bf9\\u9f50\",right:\"\\u9760\\u53f3\\u5bf9\\u9f50\",center:\"\\u5c45\\u4e2d\\u5bf9\\u9f50\",left:\"\\u9760\\u5de6\\u5bf9\\u9f50\",align:\"\\u5bf9\\u9f50\"},insertdatetime:{\"day_short\":\"\\u65e5,\\u4e00,\\u4e8c,\\u4e09,\\u56db,\\u4e94,\\u516d\",\"day_long\":\"\\u661f\\u671f\\u65e5,\\u661f\\u671f\\u4e00,\\u661f\\u671f\\u4e8c,\\u661f\\u671f\\u4e09,\\u661f\\u671f\\u56db,\\u661f\\u671f\\u4e94,\\u661f\\u671f\\u516d,\\u661f\\u671f\\u65e5\",\"months_short\":\"1\\u6708,2\\u6708,3\\u6708,4\\u6708,5\\u6708,6\\u6708,7\\u6708,8\\u6708,9\\u6708,10\\u6708,11\\u6708,12\\u6708\",\"months_long\":\"\\u4e00\\u6708,\\u4e8c\\u6708,\\u53c2\\u6708,\\u56db\\u6708,\\u4e94\\u6708,\\u516d\\u6708,\\u4e03\\u6708,\\u516b\\u6708,\\u4e5d\\u6708,\\u5341\\u6708,\\u5341\\u4e00\\u6708,\\u5341\\u4e8c\\u6708\",\"inserttime_desc\":\"\\u63d2\\u5165\\u5f53\\u524d\\u65f6\\u95f4\",\"insertdate_desc\":\"\\u63d2\\u5165\\u5f53\\u524d\\u65e5\\u671f\",\"time_fmt\":\"%H:%M:%S\",\"date_fmt\":\"%Y/%m/%d\"},print:{\"print_desc\":\"\\u6253\\u5370\"},preview:{\"preview_desc\":\"\\u9884\\u89c8\"},directionality:{\"rtl_desc\":\"\\u4ece\\u53f3\\u5230\\u5de6\",\"ltr_desc\":\"\\u4ece\\u5de6\\u5230\\u53f3\"},layer:{content:\"\\u65b0\\u5efa\\u56fe\\u5c42\\u2026\",\"absolute_desc\":\"\\u5207\\u6362\\u5230\\u7edd\\u5bf9\\u4f4d\\u7f6e\",\"backward_desc\":\"\\u79fb\\u81f3\\u540e\\u65b9\",\"forward_desc\":\"\\u79fb\\u81f3\\u524d\\u65b9\",\"insertlayer_desc\":\"\\u63d2\\u5165\\u56fe\\u5c42\"},save:{\"save_desc\":\"\\u4fdd\\u5b58\",\"cancel_desc\":\"\\u53d6\\u6d88\\u6240\\u6709\\u4fee\\u6539\"},nonbreaking:{\"nonbreaking_desc\":\"\\u63d2\\u5165\\u7a7a\\u683c\"},iespell:{download:\"\\u672a\\u68c0\\u6d4b\\u5230ieSpell\\u63d2\\u4ef6\\uff0c\\u662f\\u5426\\u73b0\\u5728\\u5b89\\u88c5\\uff1f\",\"iespell_desc\":\"\\u62fc\\u5199\\u68c0\\u67e5\"},advhr:{\"advhr_desc\":\"\\u6c34\\u5e73\\u7ebf\",\"delta_height\":\"\",\"delta_width\":\"\"},emotions:{\"delta_height\":\"\",\"delta_width\":\"\",\"emotions_desc\":\"\\u8868\\u60c5\"},searchreplace:{\"replace_desc\":\"\\u67e5\\u627e/\\u66ff\\u6362\",\"delta_width\":\"\",\"delta_height\":\"\",\"search_desc\":\"\\u67e5\\u627e\"},advimage:{\"delta_width\":\"\",\"image_desc\":\"\\u63d2\\u5165/\\u7f16\\u8f91\\u56fe\\u7247\",\"delta_height\":\"\"},advlink:{\"delta_height\":\"\",\"delta_width\":\"\",\"link_desc\":\"\\u63d2\\u5165/\\u7f16\\u8f91\\u94fe\\u63a5\"},xhtmlxtras:{\"attribs_delta_height\":\"60\",\"attribs_delta_width\":\"40\",\"attribs_desc\":\"\\u63d2\\u5165/\\u7f16\\u8f91\\u5c5e\\u6027\",\"ins_desc\":\"\\u63d2\\u5165\",\"del_desc\":\"\\u5220\\u9664\",\"acronym_desc\":\"\\u9996\\u5b57\\u6bcd\\u7f29\\u5199\",\"abbr_desc\":\"\\u7f29\\u5199\",\"cite_desc\":\"\\u5f15\\u7528\",\"ins_delta_height\":\"\",\"ins_delta_width\":\"\",\"del_delta_height\":\"\",\"del_delta_width\":\"\",\"acronym_delta_height\":\"\",\"acronym_delta_width\":\"\",\"abbr_delta_height\":\"\",\"abbr_delta_width\":\"\",\"cite_delta_height\":\"\",\"cite_delta_width\":\"\"},style:{\"delta_height\":\"\",\"delta_width\":\"\",desc:\"\\u7f16\\u8f91CSS\"},paste:{\"plaintext_mode\":\"\\u5f53\\u524d\\u4e3a\\u7eaf\\u6587\\u5b57\\u7c98\\u8d34\\u6a21\\u5f0f\\uff0c\\u8bf7\\u518d\\u70b9\\u51fb\\u4e00\\u6b21\\u5207\\u6362\\u56de\\u4e00\\u822c\\u7c98\\u8d34\\u6a21\\u5f0f\\u3002\",\"plaintext_mode_sticky\":\"\\u5f53\\u524d\\u4e3a\\u666e\\u901a\\u7c98\\u8d34\\u6a21\\u5f0f\\uff0c\\u8bf7\\u518d\\u70b9\\u51fb\\u4e00\\u6b21\\u5207\\u6362\\u56de\\u7eaf\\u6587\\u5b57\\u7c98\\u8d34\\u6a21\\u5f0f\\u3002\\u5f53\\u5b8c\\u6210\\u7c98\\u8d34\\u52a8\\u4f5c\\u540e\\u5c06\\u4f1a\\u5207\\u6362\\u6210\\u666e\\u901a\\u7c98\\u8d34\\u6a21\\u5f0f\\u3002\",\"selectall_desc\":\"\\u5168\\u9009\",\"paste_word_desc\":\"\\u4eceWord\\u7c98\\u8d34\",\"paste_text_desc\":\"\\u7c98\\u8d34\\u4e3a\\u7eaf\\u6587\\u672c\"},\"paste_dlg\":{\"word_title\":\"\\u8bf7\\u4f7f\\u7528CTRL V\\u5c06\\u5185\\u5bb9\\u7c98\\u8d34\\u4e0a\\u3002\",\"text_linebreaks\":\"\\u4fdd\\u7559\\u5206\\u884c\\u7b26\",\"text_title\":\"\\u8bf7\\u4f7f\\u7528CTRL V\\u5c06\\u5185\\u5bb9\\u7c98\\u8d34\\u4e0a\\u3002\"},table:{\"merge_cells_delta_height\":\"40\",\"merge_cells_delta_width\":\"40\",\"table_delta_height\":\"60\",\"table_delta_width\":\"40\",\"cellprops_delta_height\":\"10\",\"cellprops_delta_width\":\"10\",\"rowprops_delta_height\":\"\",\"rowprops_delta_width\":\"\",cell:\"\\u5355\\u5143\\u683c\",col:\"\\u5217\",row:\"\\u884c\",del:\"\\u5220\\u9664\\u8868\\u683c\",\"copy_row_desc\":\"\\u590d\\u5236\\u884c\",\"cut_row_desc\":\"\\u526a\\u5207\\u884c\",\"paste_row_after_desc\":\"\\u7c98\\u8d34\\u884c\\u5230\\u4e0b\\u65b9\",\"paste_row_before_desc\":\"\\u7c98\\u8d34\\u884c\\u5230\\u4e0a\\u65b9\",\"props_desc\":\"\\u8868\\u683c\\u5c5e\\u6027\",\"cell_desc\":\"\\u5355\\u5143\\u683c\\u5c5e\\u6027\",\"row_desc\":\"\\u884c\\u5c5e\\u6027\",\"merge_cells_desc\":\"\\u5408\\u5e76\\u5355\\u5143\\u683c\",\"split_cells_desc\":\"\\u5206\\u5272\\u5355\\u5143\\u683c\",\"delete_col_desc\":\"\\u5220\\u9664\\u5217\",\"col_after_desc\":\"\\u5728\\u53f3\\u4fa7\\u63d2\\u5165\\u5217\",\"col_before_desc\":\"\\u5728\\u5de6\\u4fa7\\u63d2\\u5165\\u5217\",\"delete_row_desc\":\"\\u5220\\u9664\\u884c\",\"row_after_desc\":\"\\u5728\\u4e0b\\u65b9\\u63d2\\u5165\\u884c\",\"row_before_desc\":\"\\u5728\\u4e0a\\u65b9\\u63d2\\u5165\\u884c\",desc:\"\\u63d2\\u5165/\\u7f16\\u8f91\\u8868\\u683c\"},autosave:{\"warning_message\":\"\\u5982\\u679c\\u60a8\\u8981\\u8fd8\\u539f\\u81f3\\u4e0a\\u6b21\\u4fdd\\u5b58\\u7684\\u5185\\u5bb9\\uff0c\\u5c06\\u4f1a\\u4e22\\u5931\\u76ee\\u524d\\u6b63\\u5728\\u7f16\\u8f91\\u7684\\u5185\\u5bb9\\u3002\\n\\n\\u60a8\\u786e\\u5b9a\\u8981\\u8fd8\\u539f\\u81f3\\u4e0a\\u6b21\\u4fdd\\u5b58\\u7684\\u5185\\u5bb9\\u5417\\uff1f\",\"restore_content\":\"\\u8fd8\\u539f\\u81ea\\u52a8\\u4fdd\\u5b58\\u7684\\u5185\\u5bb9\\u3002\",\"unload_msg\":\"\\u5982\\u679c\\u60a8\\u76f4\\u63a5\\u79bb\\u5f00\\u6b64\\u9875\\u5c06\\u4f1a\\u4e22\\u5931\\u60a8\\u6240\\u7f16\\u8f91\\u7684\\u5185\\u5bb9\\u3002\"},fullscreen:{desc:\"\\u5168\\u5c4f\"},media:{\"delta_height\":\"\",\"delta_width\":\"\",edit:\"\\u7f16\\u8f91\\u5d4c\\u5165\\u7684\\u5a92\\u4f53\",desc:\"\\u63d2\\u5165/\\u7f16\\u8f91\\u5d4c\\u5165\\u7684\\u5a92\\u4f53\"},fullpage:{desc:\"\\u6587\\u4ef6\\u5c5e\\u6027\",\"delta_width\":\"\",\"delta_height\":\"\"},template:{desc:\"\\u63d2\\u5165\\u5df2\\u5b9a\\u4e49\\u7684\\u6837\\u677f\"},visualchars:{desc:\"\\u663e\\u793a/\\u9690\\u85cf\\u975e\\u53ef\\u89c1\\u5b57\\u7b26\\u3002\"},spellchecker:{desc:\"\\u5f00/\\u5173\\u62fc\\u5199\\u68c0\\u67e5\",menu:\"\\u62fc\\u5199\\u68c0\\u67e5\\u8bbe\\u5b9a\",\"ignore_word\":\"\\u5ffd\\u7565\",\"ignore_words\":\"\\u5168\\u90e8\\u5ffd\\u7565\",langs:\"\\u8bed\\u8a00\",wait:\"\\u8bf7\\u7a0d\\u5019\\u2026\",sug:\"\\u5efa\\u8bae\",\"no_sug\":\"\\u65e0\\u5efa\\u8bae\",\"no_mpell\":\"\\u65e0\\u62fc\\u5199\\u9519\\u8bef\",\"learn_word\":\"\\u52a0\\u5165\\u8bcd\\u6c47\"},pagebreak:{desc:\"\\u63d2\\u5165\\u5206\\u9875\\u7b26\\u53f7\"},advlist:{types:\"\\u7c7b\\u578b\",def:\"\\u9ed8\\u8ba4\",\"lower_alpha\":\"\\u5c0f\\u5199\\u82f1\\u6587\\u5b57\",\"lower_greek\":\"\\u5c0f\\u5199\\u5e0c\\u814a\\u5b57\",\"lower_roman\":\"\\u5c0f\\u5199\\u7f57\\u9a6c\\u5b57\",\"upper_alpha\":\"\\u5927\\u5199\\u82f1\\u6587\\u5b57\",\"upper_roman\":\"\\u5927\\u5199\\u7f57\\u9a6c\\u5b57\",circle:\"\\u5706\\u5708\",disc:\"\\u5706\\u70b9\",square:\"\\u65b9\\u5757\"},colors:{\"333300\":\"\\u6df1\\u6a44\\u6984\\u8272\",\"993300\":\"\\u7126\\u6a59\\u8272\",\"000000\":\"\\u9ed1\\u8272\",\"003300\":\"\\u6df1\\u7eff\\u8272\",\"003366\":\"\\u6df1\\u5929\\u84dd\\u8272\",\"000080\":\"\\u6d77\\u6d0b\\u84dd\",\"333399\":\"\\u975b\\u84dd\\u8272\",\"333333\":\"\\u6697\\u7070\\u8272\",\"800000\":\"\\u6817\\u8272\",FF6600:\"\\u6a59\\u8272\",\"808000\":\"\\u6a44\\u6984\\u8272\",\"008000\":\"\\u7eff\\u8272\",\"008080\":\"\\u6c34\\u9e2d\\u8272\",\"0000FF\":\"\\u84dd\\u8272\",\"666699\":\"\\u7070\\u84dd\\u8272\",\"808080\":\"\\u7070\\u8272\",FF0000:\"\\u7ea2\\u8272\",FF9900:\"\\u7425\\u73c0\\u8272\",\"99CC00\":\"\\u9ec4\\u7eff\\u8272\",\"339966\":\"\\u6d77\\u7eff\\u8272\",\"33CCCC\":\"\\u7eff\\u677e\\u8272\",\"3366FF\":\"\\u5b9d\\u84dd\\u8272\",\"800080\":\"\\u7d2b\\u8272\",\"999999\":\"\\u4e2d\\u7070\\u8272\",FF00FF:\"\\u6d0b\\u7ea2\\u8272\",FFCC00:\"\\u91d1\\u8272\",FFFF00:\"\\u9ec4\\u8272\",\"00FF00\":\"\\u83b1\\u59c6\\u7eff\\u8272\",\"00FFFF\":\"\\u6c34\\u7eff\\u8272\",\"00CCFF\":\"\\u5929\\u84dd\\u8272\",\"993366\":\"\\u68d5\\u8272\",C0C0C0:\"\\u94f6\\u8272\",FF99CC:\"\\u7c89\\u7ea2\\u8272\",FFCC99:\"\\u871c\\u6843\\u8272\",FFFF99:\"\\u6de1\\u9ec4\\u8272\",CCFFCC:\"\\u6de1\\u7eff\\u8272\",CCFFFF:\"\\u6de1\\u84dd\\u8272\",\"99CCFF\":\"\\u6d45\\u5929\\u84dd\\u8272\",CC99FF:\"\\u6768\\u674e\\u8272\",FFFFFF:\"\\u767d\\u8272\"},aria:{\"rich_text_area\":\"\\u5bcc\\u6587\\u672c\\u533a\"},wordcount:{words:\"\\u5b57\\u6570\\uff1a\"}}});"
  },
  {
    "path": "newscoop/js/tinymce/license.txt",
    "content": "\t\t  GNU LESSER GENERAL PUBLIC LICENSE\r\n\t\t       Version 2.1, February 1999\r\n\r\n Copyright (C) 1991, 1999 Free Software Foundation, Inc.\r\n 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA\r\n Everyone is permitted to copy and distribute verbatim copies\r\n of this license document, but changing it is not allowed.\r\n\r\n[This is the first released version of the Lesser GPL.  It also counts\r\n as the successor of the GNU Library Public License, version 2, hence\r\n the version number 2.1.]\r\n\r\n\t\t\t    Preamble\r\n\r\n  The licenses for most software are designed to take away your\r\nfreedom to share and change it.  By contrast, the GNU General Public\r\nLicenses are intended to guarantee your freedom to share and change\r\nfree software--to make sure the software is free for all its users.\r\n\r\n  This license, the Lesser General Public License, applies to some\r\nspecially designated software packages--typically libraries--of the\r\nFree Software Foundation and other authors who decide to use it.  You\r\ncan use it too, but we suggest you first think carefully about whether\r\nthis license or the ordinary General Public License is the better\r\nstrategy to use in any particular case, based on the explanations below.\r\n\r\n  When we speak of free software, we are referring to freedom of use,\r\nnot price.  Our General Public Licenses are designed to make sure that\r\nyou have the freedom to distribute copies of free software (and charge\r\nfor this service if you wish); that you receive source code or can get\r\nit if you want it; that you can change the software and use pieces of\r\nit in new free programs; and that you are informed that you can do\r\nthese things.\r\n\r\n  To protect your rights, we need to make restrictions that forbid\r\ndistributors to deny you these rights or to ask you to surrender these\r\nrights.  These restrictions translate to certain responsibilities for\r\nyou if you distribute copies of the library or if you modify it.\r\n\r\n  For example, if you distribute copies of the library, whether gratis\r\nor for a fee, you must give the recipients all the rights that we gave\r\nyou.  You must make sure that they, too, receive or can get the source\r\ncode.  If you link other code with the library, you must provide\r\ncomplete object files to the recipients, so that they can relink them\r\nwith the library after making changes to the library and recompiling\r\nit.  And you must show them these terms so they know their rights.\r\n\r\n  We protect your rights with a two-step method: (1) we copyright the\r\nlibrary, and (2) we offer you this license, which gives you legal\r\npermission to copy, distribute and/or modify the library.\r\n\r\n  To protect each distributor, we want to make it very clear that\r\nthere is no warranty for the free library.  Also, if the library is\r\nmodified by someone else and passed on, the recipients should know\r\nthat what they have is not the original version, so that the original\r\nauthor's reputation will not be affected by problems that might be\r\nintroduced by others.\r\n\r\n  Finally, software patents pose a constant threat to the existence of\r\nany free program.  We wish to make sure that a company cannot\r\neffectively restrict the users of a free program by obtaining a\r\nrestrictive license from a patent holder.  Therefore, we insist that\r\nany patent license obtained for a version of the library must be\r\nconsistent with the full freedom of use specified in this license.\r\n\r\n  Most GNU software, including some libraries, is covered by the\r\nordinary GNU General Public License.  This license, the GNU Lesser\r\nGeneral Public License, applies to certain designated libraries, and\r\nis quite different from the ordinary General Public License.  We use\r\nthis license for certain libraries in order to permit linking those\r\nlibraries into non-free programs.\r\n\r\n  When a program is linked with a library, whether statically or using\r\na shared library, the combination of the two is legally speaking a\r\ncombined work, a derivative of the original library.  The ordinary\r\nGeneral Public License therefore permits such linking only if the\r\nentire combination fits its criteria of freedom.  The Lesser General\r\nPublic License permits more lax criteria for linking other code with\r\nthe library.\r\n\r\n  We call this license the \"Lesser\" General Public License because it\r\ndoes Less to protect the user's freedom than the ordinary General\r\nPublic License.  It also provides other free software developers Less\r\nof an advantage over competing non-free programs.  These disadvantages\r\nare the reason we use the ordinary General Public License for many\r\nlibraries.  However, the Lesser license provides advantages in certain\r\nspecial circumstances.\r\n\r\n  For example, on rare occasions, there may be a special need to\r\nencourage the widest possible use of a certain library, so that it becomes\r\na de-facto standard.  To achieve this, non-free programs must be\r\nallowed to use the library.  A more frequent case is that a free\r\nlibrary does the same job as widely used non-free libraries.  In this\r\ncase, there is little to gain by limiting the free library to free\r\nsoftware only, so we use the Lesser General Public License.\r\n\r\n  In other cases, permission to use a particular library in non-free\r\nprograms enables a greater number of people to use a large body of\r\nfree software.  For example, permission to use the GNU C Library in\r\nnon-free programs enables many more people to use the whole GNU\r\noperating system, as well as its variant, the GNU/Linux operating\r\nsystem.\r\n\r\n  Although the Lesser General Public License is Less protective of the\r\nusers' freedom, it does ensure that the user of a program that is\r\nlinked with the Library has the freedom and the wherewithal to run\r\nthat program using a modified version of the Library.\r\n\r\n  The precise terms and conditions for copying, distribution and\r\nmodification follow.  Pay close attention to the difference between a\r\n\"work based on the library\" and a \"work that uses the library\".  The\r\nformer contains code derived from the library, whereas the latter must\r\nbe combined with the library in order to run.\r\n\r\n\t\t  GNU LESSER GENERAL PUBLIC LICENSE\r\n   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\r\n\r\n  0. This License Agreement applies to any software library or other\r\nprogram which contains a notice placed by the copyright holder or\r\nother authorized party saying it may be distributed under the terms of\r\nthis Lesser General Public License (also called \"this License\").\r\nEach licensee is addressed as \"you\".\r\n\r\n  A \"library\" means a collection of software functions and/or data\r\nprepared so as to be conveniently linked with application programs\r\n(which use some of those functions and data) to form executables.\r\n\r\n  The \"Library\", below, refers to any such software library or work\r\nwhich has been distributed under these terms.  A \"work based on the\r\nLibrary\" means either the Library or any derivative work under\r\ncopyright law: that is to say, a work containing the Library or a\r\nportion of it, either verbatim or with modifications and/or translated\r\nstraightforwardly into another language.  (Hereinafter, translation is\r\nincluded without limitation in the term \"modification\".)\r\n\r\n  \"Source code\" for a work means the preferred form of the work for\r\nmaking modifications to it.  For a library, complete source code means\r\nall the source code for all modules it contains, plus any associated\r\ninterface definition files, plus the scripts used to control compilation\r\nand installation of the library.\r\n\r\n  Activities other than copying, distribution and modification are not\r\ncovered by this License; they are outside its scope.  The act of\r\nrunning a program using the Library is not restricted, and output from\r\nsuch a program is covered only if its contents constitute a work based\r\non the Library (independent of the use of the Library in a tool for\r\nwriting it).  Whether that is true depends on what the Library does\r\nand what the program that uses the Library does.\r\n  \r\n  1. You may copy and distribute verbatim copies of the Library's\r\ncomplete source code as you receive it, in any medium, provided that\r\nyou conspicuously and appropriately publish on each copy an\r\nappropriate copyright notice and disclaimer of warranty; keep intact\r\nall the notices that refer to this License and to the absence of any\r\nwarranty; and distribute a copy of this License along with the\r\nLibrary.\r\n\r\n  You may charge a fee for the physical act of transferring a copy,\r\nand you may at your option offer warranty protection in exchange for a\r\nfee.\r\n\r\n  2. You may modify your copy or copies of the Library or any portion\r\nof it, thus forming a work based on the Library, and copy and\r\ndistribute such modifications or work under the terms of Section 1\r\nabove, provided that you also meet all of these conditions:\r\n\r\n    a) The modified work must itself be a software library.\r\n\r\n    b) You must cause the files modified to carry prominent notices\r\n    stating that you changed the files and the date of any change.\r\n\r\n    c) You must cause the whole of the work to be licensed at no\r\n    charge to all third parties under the terms of this License.\r\n\r\n    d) If a facility in the modified Library refers to a function or a\r\n    table of data to be supplied by an application program that uses\r\n    the facility, other than as an argument passed when the facility\r\n    is invoked, then you must make a good faith effort to ensure that,\r\n    in the event an application does not supply such function or\r\n    table, the facility still operates, and performs whatever part of\r\n    its purpose remains meaningful.\r\n\r\n    (For example, a function in a library to compute square roots has\r\n    a purpose that is entirely well-defined independent of the\r\n    application.  Therefore, Subsection 2d requires that any\r\n    application-supplied function or table used by this function must\r\n    be optional: if the application does not supply it, the square\r\n    root function must still compute square roots.)\r\n\r\nThese requirements apply to the modified work as a whole.  If\r\nidentifiable sections of that work are not derived from the Library,\r\nand can be reasonably considered independent and separate works in\r\nthemselves, then this License, and its terms, do not apply to those\r\nsections when you distribute them as separate works.  But when you\r\ndistribute the same sections as part of a whole which is a work based\r\non the Library, the distribution of the whole must be on the terms of\r\nthis License, whose permissions for other licensees extend to the\r\nentire whole, and thus to each and every part regardless of who wrote\r\nit.\r\n\r\nThus, it is not the intent of this section to claim rights or contest\r\nyour rights to work written entirely by you; rather, the intent is to\r\nexercise the right to control the distribution of derivative or\r\ncollective works based on the Library.\r\n\r\nIn addition, mere aggregation of another work not based on the Library\r\nwith the Library (or with a work based on the Library) on a volume of\r\na storage or distribution medium does not bring the other work under\r\nthe scope of this License.\r\n\r\n  3. You may opt to apply the terms of the ordinary GNU General Public\r\nLicense instead of this License to a given copy of the Library.  To do\r\nthis, you must alter all the notices that refer to this License, so\r\nthat they refer to the ordinary GNU General Public License, version 2,\r\ninstead of to this License.  (If a newer version than version 2 of the\r\nordinary GNU General Public License has appeared, then you can specify\r\nthat version instead if you wish.)  Do not make any other change in\r\nthese notices.\r\n\r\n  Once this change is made in a given copy, it is irreversible for\r\nthat copy, so the ordinary GNU General Public License applies to all\r\nsubsequent copies and derivative works made from that copy.\r\n\r\n  This option is useful when you wish to copy part of the code of\r\nthe Library into a program that is not a library.\r\n\r\n  4. You may copy and distribute the Library (or a portion or\r\nderivative of it, under Section 2) in object code or executable form\r\nunder the terms of Sections 1 and 2 above provided that you accompany\r\nit with the complete corresponding machine-readable source code, which\r\nmust be distributed under the terms of Sections 1 and 2 above on a\r\nmedium customarily used for software interchange.\r\n\r\n  If distribution of object code is made by offering access to copy\r\nfrom a designated place, then offering equivalent access to copy the\r\nsource code from the same place satisfies the requirement to\r\ndistribute the source code, even though third parties are not\r\ncompelled to copy the source along with the object code.\r\n\r\n  5. A program that contains no derivative of any portion of the\r\nLibrary, but is designed to work with the Library by being compiled or\r\nlinked with it, is called a \"work that uses the Library\".  Such a\r\nwork, in isolation, is not a derivative work of the Library, and\r\ntherefore falls outside the scope of this License.\r\n\r\n  However, linking a \"work that uses the Library\" with the Library\r\ncreates an executable that is a derivative of the Library (because it\r\ncontains portions of the Library), rather than a \"work that uses the\r\nlibrary\".  The executable is therefore covered by this License.\r\nSection 6 states terms for distribution of such executables.\r\n\r\n  When a \"work that uses the Library\" uses material from a header file\r\nthat is part of the Library, the object code for the work may be a\r\nderivative work of the Library even though the source code is not.\r\nWhether this is true is especially significant if the work can be\r\nlinked without the Library, or if the work is itself a library.  The\r\nthreshold for this to be true is not precisely defined by law.\r\n\r\n  If such an object file uses only numerical parameters, data\r\nstructure layouts and accessors, and small macros and small inline\r\nfunctions (ten lines or less in length), then the use of the object\r\nfile is unrestricted, regardless of whether it is legally a derivative\r\nwork.  (Executables containing this object code plus portions of the\r\nLibrary will still fall under Section 6.)\r\n\r\n  Otherwise, if the work is a derivative of the Library, you may\r\ndistribute the object code for the work under the terms of Section 6.\r\nAny executables containing that work also fall under Section 6,\r\nwhether or not they are linked directly with the Library itself.\r\n\r\n  6. As an exception to the Sections above, you may also combine or\r\nlink a \"work that uses the Library\" with the Library to produce a\r\nwork containing portions of the Library, and distribute that work\r\nunder terms of your choice, provided that the terms permit\r\nmodification of the work for the customer's own use and reverse\r\nengineering for debugging such modifications.\r\n\r\n  You must give prominent notice with each copy of the work that the\r\nLibrary is used in it and that the Library and its use are covered by\r\nthis License.  You must supply a copy of this License.  If the work\r\nduring execution displays copyright notices, you must include the\r\ncopyright notice for the Library among them, as well as a reference\r\ndirecting the user to the copy of this License.  Also, you must do one\r\nof these things:\r\n\r\n    a) Accompany the work with the complete corresponding\r\n    machine-readable source code for the Library including whatever\r\n    changes were used in the work (which must be distributed under\r\n    Sections 1 and 2 above); and, if the work is an executable linked\r\n    with the Library, with the complete machine-readable \"work that\r\n    uses the Library\", as object code and/or source code, so that the\r\n    user can modify the Library and then relink to produce a modified\r\n    executable containing the modified Library.  (It is understood\r\n    that the user who changes the contents of definitions files in the\r\n    Library will not necessarily be able to recompile the application\r\n    to use the modified definitions.)\r\n\r\n    b) Use a suitable shared library mechanism for linking with the\r\n    Library.  A suitable mechanism is one that (1) uses at run time a\r\n    copy of the library already present on the user's computer system,\r\n    rather than copying library functions into the executable, and (2)\r\n    will operate properly with a modified version of the library, if\r\n    the user installs one, as long as the modified version is\r\n    interface-compatible with the version that the work was made with.\r\n\r\n    c) Accompany the work with a written offer, valid for at\r\n    least three years, to give the same user the materials\r\n    specified in Subsection 6a, above, for a charge no more\r\n    than the cost of performing this distribution.\r\n\r\n    d) If distribution of the work is made by offering access to copy\r\n    from a designated place, offer equivalent access to copy the above\r\n    specified materials from the same place.\r\n\r\n    e) Verify that the user has already received a copy of these\r\n    materials or that you have already sent this user a copy.\r\n\r\n  For an executable, the required form of the \"work that uses the\r\nLibrary\" must include any data and utility programs needed for\r\nreproducing the executable from it.  However, as a special exception,\r\nthe materials to be distributed need not include anything that is\r\nnormally distributed (in either source or binary form) with the major\r\ncomponents (compiler, kernel, and so on) of the operating system on\r\nwhich the executable runs, unless that component itself accompanies\r\nthe executable.\r\n\r\n  It may happen that this requirement contradicts the license\r\nrestrictions of other proprietary libraries that do not normally\r\naccompany the operating system.  Such a contradiction means you cannot\r\nuse both them and the Library together in an executable that you\r\ndistribute.\r\n\r\n  7. You may place library facilities that are a work based on the\r\nLibrary side-by-side in a single library together with other library\r\nfacilities not covered by this License, and distribute such a combined\r\nlibrary, provided that the separate distribution of the work based on\r\nthe Library and of the other library facilities is otherwise\r\npermitted, and provided that you do these two things:\r\n\r\n    a) Accompany the combined library with a copy of the same work\r\n    based on the Library, uncombined with any other library\r\n    facilities.  This must be distributed under the terms of the\r\n    Sections above.\r\n\r\n    b) Give prominent notice with the combined library of the fact\r\n    that part of it is a work based on the Library, and explaining\r\n    where to find the accompanying uncombined form of the same work.\r\n\r\n  8. You may not copy, modify, sublicense, link with, or distribute\r\nthe Library except as expressly provided under this License.  Any\r\nattempt otherwise to copy, modify, sublicense, link with, or\r\ndistribute the Library is void, and will automatically terminate your\r\nrights under this License.  However, parties who have received copies,\r\nor rights, from you under this License will not have their licenses\r\nterminated so long as such parties remain in full compliance.\r\n\r\n  9. You are not required to accept this License, since you have not\r\nsigned it.  However, nothing else grants you permission to modify or\r\ndistribute the Library or its derivative works.  These actions are\r\nprohibited by law if you do not accept this License.  Therefore, by\r\nmodifying or distributing the Library (or any work based on the\r\nLibrary), you indicate your acceptance of this License to do so, and\r\nall its terms and conditions for copying, distributing or modifying\r\nthe Library or works based on it.\r\n\r\n  10. Each time you redistribute the Library (or any work based on the\r\nLibrary), the recipient automatically receives a license from the\r\noriginal licensor to copy, distribute, link with or modify the Library\r\nsubject to these terms and conditions.  You may not impose any further\r\nrestrictions on the recipients' exercise of the rights granted herein.\r\nYou are not responsible for enforcing compliance by third parties with\r\nthis License.\r\n\r\n  11. If, as a consequence of a court judgment or allegation of patent\r\ninfringement or for any other reason (not limited to patent issues),\r\nconditions are imposed on you (whether by court order, agreement or\r\notherwise) that contradict the conditions of this License, they do not\r\nexcuse you from the conditions of this License.  If you cannot\r\ndistribute so as to satisfy simultaneously your obligations under this\r\nLicense and any other pertinent obligations, then as a consequence you\r\nmay not distribute the Library at all.  For example, if a patent\r\nlicense would not permit royalty-free redistribution of the Library by\r\nall those who receive copies directly or indirectly through you, then\r\nthe only way you could satisfy both it and this License would be to\r\nrefrain entirely from distribution of the Library.\r\n\r\nIf any portion of this section is held invalid or unenforceable under any\r\nparticular circumstance, the balance of the section is intended to apply,\r\nand the section as a whole is intended to apply in other circumstances.\r\n\r\nIt is not the purpose of this section to induce you to infringe any\r\npatents or other property right claims or to contest validity of any\r\nsuch claims; this section has the sole purpose of protecting the\r\nintegrity of the free software distribution system which is\r\nimplemented by public license practices.  Many people have made\r\ngenerous contributions to the wide range of software distributed\r\nthrough that system in reliance on consistent application of that\r\nsystem; it is up to the author/donor to decide if he or she is willing\r\nto distribute software through any other system and a licensee cannot\r\nimpose that choice.\r\n\r\nThis section is intended to make thoroughly clear what is believed to\r\nbe a consequence of the rest of this License.\r\n\r\n  12. If the distribution and/or use of the Library is restricted in\r\ncertain countries either by patents or by copyrighted interfaces, the\r\noriginal copyright holder who places the Library under this License may add\r\nan explicit geographical distribution limitation excluding those countries,\r\nso that distribution is permitted only in or among countries not thus\r\nexcluded.  In such case, this License incorporates the limitation as if\r\nwritten in the body of this License.\r\n\r\n  13. The Free Software Foundation may publish revised and/or new\r\nversions of the Lesser General Public License from time to time.\r\nSuch new versions will be similar in spirit to the present version,\r\nbut may differ in detail to address new problems or concerns.\r\n\r\nEach version is given a distinguishing version number.  If the Library\r\nspecifies a version number of this License which applies to it and\r\n\"any later version\", you have the option of following the terms and\r\nconditions either of that version or of any later version published by\r\nthe Free Software Foundation.  If the Library does not specify a\r\nlicense version number, you may choose any version ever published by\r\nthe Free Software Foundation.\r\n\r\n  14. If you wish to incorporate parts of the Library into other free\r\nprograms whose distribution conditions are incompatible with these,\r\nwrite to the author to ask for permission.  For software which is\r\ncopyrighted by the Free Software Foundation, write to the Free\r\nSoftware Foundation; we sometimes make exceptions for this.  Our\r\ndecision will be guided by the two goals of preserving the free status\r\nof all derivatives of our free software and of promoting the sharing\r\nand reuse of software generally.\r\n\r\n\t\t\t    NO WARRANTY\r\n\r\n  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO\r\nWARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.\r\nEXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR\r\nOTHER PARTIES PROVIDE THE LIBRARY \"AS IS\" WITHOUT WARRANTY OF ANY\r\nKIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE\r\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\r\nPURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE\r\nLIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME\r\nTHE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\r\n\r\n  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN\r\nWRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY\r\nAND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU\r\nFOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR\r\nCONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE\r\nLIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING\r\nRENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A\r\nFAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF\r\nSUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH\r\nDAMAGES.\r\n\r\n\t\t     END OF TERMS AND CONDITIONS\r\n\r\n           How to Apply These Terms to Your New Libraries\r\n\r\n  If you develop a new library, and you want it to be of the greatest\r\npossible use to the public, we recommend making it free software that\r\neveryone can redistribute and change.  You can do so by permitting\r\nredistribution under these terms (or, alternatively, under the terms of the\r\nordinary General Public License).\r\n\r\n  To apply these terms, attach the following notices to the library.  It is\r\nsafest to attach them to the start of each source file to most effectively\r\nconvey the exclusion of warranty; and each file should have at least the\r\n\"copyright\" line and a pointer to where the full notice is found.\r\n\r\n    <one line to give the library's name and a brief idea of what it does.>\r\n    Copyright (C) <year>  <name of author>\r\n\r\n    This library is free software; you can redistribute it and/or\r\n    modify it under the terms of the GNU Lesser General Public\r\n    License as published by the Free Software Foundation; either\r\n    version 2.1 of the License, or (at your option) any later version.\r\n\r\n    This library is distributed in the hope that it will be useful,\r\n    but WITHOUT ANY WARRANTY; without even the implied warranty of\r\n    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\r\n    Lesser General Public License for more details.\r\n\r\n    You should have received a copy of the GNU Lesser General Public\r\n    License along with this library; if not, write to the Free Software\r\n    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA\r\n\r\nAlso add information on how to contact you by electronic and paper mail.\r\n\r\nYou should also get your employer (if you work as a programmer) or your\r\nschool, if any, to sign a \"copyright disclaimer\" for the library, if\r\nnecessary.  Here is a sample; alter the names:\r\n\r\n  Yoyodyne, Inc., hereby disclaims all copyright interest in the\r\n  library `Frob' (a library for tweaking knobs) written by James Random Hacker.\r\n\r\n  <signature of Ty Coon>, 1 April 1990\r\n  Ty Coon, President of Vice\r\n\r\nThat's all there is to it!\r\n\r\n\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/css/advhr.css",
    "content": "input.radio {border:1px none #000; background:transparent; vertical-align:middle;}\r\n.panel_wrapper div.current {height:80px;}\r\n#width {width:50px; vertical-align:middle;}\r\n#width2 {width:50px; vertical-align:middle;}\r\n#size {width:100px;}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/editor_plugin.js",
    "content": "(function(){tinymce.create(\"tinymce.plugins.AdvancedHRPlugin\",{init:function(a,b){a.addCommand(\"mceAdvancedHr\",function(){a.windowManager.open({file:b+\"/rule.htm\",width:250+parseInt(a.getLang(\"advhr.delta_width\",0)),height:160+parseInt(a.getLang(\"advhr.delta_height\",0)),inline:1},{plugin_url:b})});a.addButton(\"advhr\",{title:\"advhr.advhr_desc\",cmd:\"mceAdvancedHr\"});a.onNodeChange.add(function(d,c,e){c.setActive(\"advhr\",e.nodeName==\"HR\")});a.onClick.add(function(c,d){d=d.target;if(d.nodeName===\"HR\"){c.selection.select(d)}})},getInfo:function(){return{longname:\"Advanced HR\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advhr\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}}});tinymce.PluginManager.add(\"advhr\",tinymce.plugins.AdvancedHRPlugin)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\ttinymce.create('tinymce.plugins.AdvancedHRPlugin', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\t// Register commands\r\n\t\t\ted.addCommand('mceAdvancedHr', function() {\r\n\t\t\t\ted.windowManager.open({\r\n\t\t\t\t\tfile : url + '/rule.htm',\r\n\t\t\t\t\twidth : 250 + parseInt(ed.getLang('advhr.delta_width', 0)),\r\n\t\t\t\t\theight : 160 + parseInt(ed.getLang('advhr.delta_height', 0)),\r\n\t\t\t\t\tinline : 1\r\n\t\t\t\t}, {\r\n\t\t\t\t\tplugin_url : url\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\t// Register buttons\r\n\t\t\ted.addButton('advhr', {\r\n\t\t\t\ttitle : 'advhr.advhr_desc',\r\n\t\t\t\tcmd : 'mceAdvancedHr'\r\n\t\t\t});\r\n\r\n\t\t\ted.onNodeChange.add(function(ed, cm, n) {\r\n\t\t\t\tcm.setActive('advhr', n.nodeName == 'HR');\r\n\t\t\t});\r\n\r\n\t\t\ted.onClick.add(function(ed, e) {\r\n\t\t\t\te = e.target;\r\n\r\n\t\t\t\tif (e.nodeName === 'HR')\r\n\t\t\t\t\ted.selection.select(e);\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Advanced HR',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advhr',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('advhr', tinymce.plugins.AdvancedHRPlugin);\r\n})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/js/rule.js",
    "content": "var AdvHRDialog = {\r\n\tinit : function(ed) {\r\n\t\tvar dom = ed.dom, f = document.forms[0], n = ed.selection.getNode(), w;\r\n\r\n\t\tw = dom.getAttrib(n, 'width');\r\n\t\tf.width.value = w ? parseInt(w) : (dom.getStyle('width') || '');\r\n\t\tf.size.value = dom.getAttrib(n, 'size') || parseInt(dom.getStyle('height')) || '';\r\n\t\tf.noshade.checked = !!dom.getAttrib(n, 'noshade') || !!dom.getStyle('border-width');\r\n\t\tselectByValue(f, 'width2', w.indexOf('%') != -1 ? '%' : 'px');\r\n\t},\r\n\r\n\tupdate : function() {\r\n\t\tvar ed = tinyMCEPopup.editor, h, f = document.forms[0], st = '';\r\n\r\n\t\th = '<hr';\r\n\r\n\t\tif (f.size.value) {\r\n\t\t\th += ' size=\"' + f.size.value + '\"';\r\n\t\t\tst += ' height:' + f.size.value + 'px;';\r\n\t\t}\r\n\r\n\t\tif (f.width.value) {\r\n\t\t\th += ' width=\"' + f.width.value + (f.width2.value == '%' ? '%' : '') + '\"';\r\n\t\t\tst += ' width:' + f.width.value + (f.width2.value == '%' ? '%' : 'px') + ';';\r\n\t\t}\r\n\r\n\t\tif (f.noshade.checked) {\r\n\t\t\th += ' noshade=\"noshade\"';\r\n\t\t\tst += ' border-width: 1px; border-style: solid; border-color: #CCCCCC; color: #ffffff;';\r\n\t\t}\r\n\r\n\t\tif (ed.settings.inline_styles)\r\n\t\t\th += ' style=\"' + tinymce.trim(st) + '\"';\r\n\r\n\t\th += ' />';\r\n\r\n\t\ted.execCommand(\"mceInsertContent\", false, h);\r\n\t\ttinyMCEPopup.close();\r\n\t}\r\n};\r\n\r\ntinyMCEPopup.requireLangPack();\r\ntinyMCEPopup.onInit.add(AdvHRDialog.init, AdvHRDialog);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/ar_dlg.js",
    "content": "tinyMCE.addI18n('ar.advhr_dlg',{size:\"\\u0627\\u0644\\u0627\\u0631\\u062a\\u0641\\u0627\\u0639\",noshade:\"\\u0644\\u0627 \\u0638\\u0644\",width:\"\\u0627\\u0644\\u0639\\u0631\\u0636\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/az_dlg.js",
    "content": "tinyMCE.addI18n('az.advhr_dlg',{size:\"H\\u00fcnd\\u00fcrl\\u00fcy\\u00fc\",noshade:\"K\\u00f6lg\\u0259 yoxdur\",width:\"Eni\",normal:\"Normal\",widthunits:\"Units\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/be_dlg.js",
    "content": "tinyMCE.addI18n('be.advhr_dlg',{size:\"\\u0412\\u044b\\u0448\\u044b\\u043d\\u044f\",noshade:\"\\u0411\\u0435\\u0437 \\u0446\\u0435\\u043d\\u044e\",width:\"\\u0428\\u044b\\u0440\\u044b\\u043d\\u044f\",normal:\"\\u0417\\u0432\\u044b\\u0447\\u0430\\u0439\\u043d\\u0430\\u044f\",widthunits:\"\\u0410\\u0434\\u0437\\u0456\\u043d\\u043a\\u0456 \\u0432\\u044b\\u043c\\u044f\\u0440\\u044d\\u043d\\u043d\\u044f\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/cs_dlg.js",
    "content": "tinyMCE.addI18n('cs.advhr_dlg',{size:\"V\\u00fd\\u0161ka\",noshade:\"Bez st\\u00ednu\",width:\"\\u0160\\u00ed\\u0159ka\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/da_dlg.js",
    "content": "tinyMCE.addI18n('da.advhr_dlg',{size:\"H\\u00f8jde\",noshade:\"Ingen skygge\",width:\"Bredde\",normal:\"Normal\",widthunits:\"Enheder\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/de_dlg.js",
    "content": "tinyMCE.addI18n('de.advhr_dlg',{size:\"H\\u00f6he\",noshade:\"Kein Schatten\",width:\"Breite\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/el_dlg.js",
    "content": "tinyMCE.addI18n('el.advhr_dlg',{size:\"\\u038e\\u03c8\\u03bf\\u03c2\",noshade:\"\\u03a7\\u03c9\\u03c1\\u03af\\u03c2 \\u03c3\\u03ba\\u03b9\\u03ac\",width:\"\\u03a0\\u03bb\\u03ac\\u03c4\\u03bf\\u03c2\",normal:\"\\u039a\\u03b1\\u03bd\\u03bf\\u03bd\\u03b9\\u03ba\\u03cc\",widthunits:\"\\u039c\\u03bf\\u03bd\\u03ac\\u03b4\\u03b1\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/en_dlg.js",
    "content": "tinyMCE.addI18n('en.advhr_dlg',{size:\"Height\",noshade:\"No Shadow\",width:\"Width\",normal:\"Normal\",widthunits:\"Units\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/es_dlg.js",
    "content": "tinyMCE.addI18n('es.advhr_dlg',{size:\"Alto\",noshade:\"Sin sombra\",width:\"Ancho\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/fr_dlg.js",
    "content": "tinyMCE.addI18n('fr.advhr_dlg',{size:\"Hauteur\",noshade:\"Pas d\\'ombre\",width:\"Largeur\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/he_dlg.js",
    "content": "tinyMCE.addI18n('he.advhr_dlg',{size:\"\\u05d2\\u05d5\\u05d1\\u05d4\",noshade:\"\\u05dc\\u05dc\\u05d0 \\u05e6\\u05dc\",width:\"\\u05e8\\u05d5\\u05d7\\u05d1\",normal:\"\\u05e8\\u05d2\\u05d9\\u05dc\",widthunits:\"\\u05d9\\u05d7\\u05d9\\u05d3\\u05d5\\u05ea\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/hr_dlg.js",
    "content": "tinyMCE.addI18n('hr.advhr_dlg',{size:\"Visina\",noshade:\"Bez sjene\",width:\"\\u0160irina\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/hu_dlg.js",
    "content": "tinyMCE.addI18n('hu.advhr_dlg',{size:\"Magass\\u00e1g\",noshade:\"Nincs \\u00e1rny\\u00e9k\",width:\"Sz\\u00e9less\\u00e9g\",normal:\"Norm\\u00e1l\",widthunits:\"M\\u00e9rt\\u00e9kegys\\u00e9gek\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/hy_dlg.js",
    "content": "tinyMCE.addI18n('hy.advhr_dlg',{size:\"\\u0532\\u0561\\u0580\\u0571\\u0580\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\",noshade:\"\\u0531\\u057c\\u0561\\u0576\\u0581 \\u057d\\u057f\\u057e\\u0565\\u0580\\u056b\",width:\"\\u053c\\u0561\\u0575\\u0576\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\",normal:\"Normal\",widthunits:\"Units\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/it_dlg.js",
    "content": "tinyMCE.addI18n('it.advhr_dlg',{size:\"Altezza\",noshade:\"Senza ombreggiatura\",width:\"Larghezza\",normal:\"Normale\",widthunits:\"Unit\\u00e0\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/ka_dlg.js",
    "content": "tinyMCE.addI18n('ka.advhr_dlg',{size:\"\\u10e1\\u10d8\\u10db\\u10d0\\u10e6\\u10da\\u10d4\",noshade:\"\\u10e9\\u10e0\\u10d3\\u10d8\\u10da\\u10d8\\u10e1 \\u10d2\\u10d0\\u10e0\\u10d4\\u10e8\\u10d4\",width:\"\\u10e1\\u10d8\\u10d2\\u10d0\\u10dc\\u10d4\",normal:\"Normal\",widthunits:\"Units\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/ko_dlg.js",
    "content": "tinyMCE.addI18n('ko.advhr_dlg',{size:\"\\ub192\\uc774\",noshade:\"\\uadf8\\ub9bc\\uc790 \\uc5c6\\uc74c\",width:\"\\ud3ed\",normal:\"\\ubcf4\\ud1b5\",widthunits:\"\\ub2e8\\uc704\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/nb_dlg.js",
    "content": "tinyMCE.addI18n('nb.advhr_dlg',{size:\"St\\u00f8rrelse\",noshade:\"Ingen skygge\",width:\"Bredde\",normal:\"Normal\",widthunits:\"Enheter\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/nl_dlg.js",
    "content": "tinyMCE.addI18n('nl.advhr_dlg',{size:\"Hoogte\",noshade:\"Geen schaduw\",width:\"Breedte\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/pl_dlg.js",
    "content": "tinyMCE.addI18n('pl.advhr_dlg',{size:\"Wysoko\\u015b\\u0107\",noshade:\"Bez cienia\",width:\"Szeroko\\u015b\\u0107\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/pt_dlg.js",
    "content": "tinyMCE.addI18n('pt.advhr_dlg',{size:\"Altura\",noshade:\"Sem sombra\",width:\"Largura\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/ro_dlg.js",
    "content": "tinyMCE.addI18n('ro.advhr_dlg',{size:\"\\u00cen\\u0103l\\u0163ime\",noshade:\"F\\u0103r\\u0103 umbre\",width:\"L\\u0103\\u0163ime\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/ru_dlg.js",
    "content": "tinyMCE.addI18n('ru.advhr_dlg',{size:\"\\u0412\\u044b\\u0441\\u043e\\u0442\\u0430\",noshade:\"\\u0411\\u0435\\u0437 \\u0442\\u0435\\u043d\\u0438\",width:\"\\u0428\\u0438\\u0440\\u0438\\u043d\\u0430\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/sr_dlg.js",
    "content": "tinyMCE.addI18n('sr.advhr_dlg',{size:\"Visina\",noshade:\"Bez sen\\u010denja\",width:\"\\u0160irina\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/sv_dlg.js",
    "content": "tinyMCE.addI18n('sv.advhr_dlg',{size:\"H\\u00f6jd\",noshade:\"Ingen skugga\",width:\"Bredd\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/tr_dlg.js",
    "content": "tinyMCE.addI18n('tr.advhr_dlg',{size:\"Y\\u00fckseklik\",noshade:\"G\\u00f6lge yok\",width:\"Geni\\u015flik\",normal:\"Normal\",widthunits:\"Birimler\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/uk_dlg.js",
    "content": "tinyMCE.addI18n('uk.advhr_dlg',{size:\"\\u0412\\u0438\\u0441\\u043e\\u0442\\u0430\",noshade:\"\\u0411\\u0435\\u0437 \\u0442\\u0456\\u043d\\u0456\",width:\"\\u0428\\u0438\\u0440\\u0438\\u043d\\u0430\",normal:\"\\u041d\\u043e\\u0440\\u043c\\u0430\\u043b\\u044c\\u043d\\u0438\\u0439\",widthunits:\"\\u041e\\u0434\\u0438\\u043d\\u0438\\u0446\\u0456 \\u0432\\u0438\\u043c\\u0456\\u0440\\u0443\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/zh-tw_dlg.js",
    "content": "tinyMCE.addI18n('zh-tw.advhr_dlg',{size:\"\\u9ad8\",noshade:\"\\u7121\\u9670\\u5f71\\u6548\\u679c\",width:\"\\u5bec\",normal:\"Normal\",widthunits:\"Units\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/langs/zh_dlg.js",
    "content": "tinyMCE.addI18n('zh.advhr_dlg',{size:\"\\u9ad8\",noshade:\"\\u65e0\\u9634\\u5f71\",width:\"\\u5bbd\",normal:\"\\u6807\\u51c6\",widthunits:\"\\u5355\\u4f4d\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advhr/rule.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#advhr.advhr_desc}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/rule.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/form_utils.js\"></script>\r\n\t<link href=\"css/advhr.css\" rel=\"stylesheet\" type=\"text/css\" />\r\n</head>\r\n<body role=\"application\">\r\n<form onsubmit=\"AdvHRDialog.update();return false;\" action=\"#\">\r\n\t<div class=\"tabs\">\r\n\t\t<ul>\r\n\t\t\t<li id=\"general_tab\" class=\"current\" aria-controls=\"general_panel\"><span><a href=\"javascript:mcTabs.displayTab('general_tab','general_panel');\" onmousedown=\"return false;\">{#advhr.advhr_desc}</a></span></li>\r\n\t\t</ul>\r\n\t</div>\r\n\r\n\t<div class=\"panel_wrapper\">\r\n\t\t<div id=\"general_panel\" class=\"panel current\">\r\n\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t\t<tr role=\"group\" aria-labelledby=\"width_label\">\r\n\t\t\t\t\t\t<td><label id=\"width_label\" for=\"width\">{#advhr_dlg.width}</label></td>\r\n\t\t\t\t\t\t<td class=\"nowrap\">\r\n\t\t\t\t\t\t\t<input id=\"width\" name=\"width\" type=\"text\" value=\"\" class=\"mceFocus\" />\r\n\t\t\t\t\t\t\t<span style=\"display:none;\" id=\"width_unit_label\">{#advhr_dlg.widthunits}</span>\r\n\t\t\t\t\t\t\t<select name=\"width2\" id=\"width2\" aria-labelledby=\"width_unit_label\">\r\n\t\t\t\t\t\t\t\t<option value=\"\">px</option>\r\n\t\t\t\t\t\t\t\t<option value=\"%\">%</option>\r\n\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td><label for=\"size\">{#advhr_dlg.size}</label></td>\r\n\t\t\t\t\t\t<td><select id=\"size\" name=\"size\">\r\n\t\t\t\t\t\t\t<option value=\"\">{#advhr_dlg.normal}</option>\r\n\t\t\t\t\t\t\t<option value=\"1\">1</option>\r\n\t\t\t\t\t\t\t<option value=\"2\">2</option>\r\n\t\t\t\t\t\t\t<option value=\"3\">3</option>\r\n\t\t\t\t\t\t\t<option value=\"4\">4</option>\r\n\t\t\t\t\t\t\t<option value=\"5\">5</option>\r\n\t\t\t\t\t\t</select></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td><label for=\"noshade\">{#advhr_dlg.noshade}</label></td>\r\n\t\t\t\t\t\t<td><input type=\"checkbox\" name=\"noshade\" id=\"noshade\" class=\"radio\" /></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t</table>\r\n\t\t</div>\r\n\t</div>\r\n\r\n\t<div class=\"mceActionPanel\">\r\n\t\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#insert}\" />\r\n\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t</div>\r\n</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/css/advimage.css",
    "content": "#src_list, #over_list, #out_list {width:280px;}\r\n.mceActionPanel {margin-top:7px;}\r\n.alignPreview {border:1px solid #000; width:140px; height:140px; overflow:hidden; padding:5px;}\r\n.checkbox {border:0;}\r\n.panel_wrapper div.current {height:305px;}\r\n#prev {margin:0; border:1px solid #000; width:428px; height:150px; overflow:auto;}\r\n#align, #classlist {width:150px;}\r\n#width, #height {vertical-align:middle; width:50px; text-align:center;}\r\n#vspace, #hspace, #border {vertical-align:middle; width:30px; text-align:center;}\r\n#class_list {width:180px;}\r\ninput {width: 280px;}\r\n#constrain, #onmousemovecheck {width:auto;}\r\n#id, #dir, #lang, #usemap, #longdesc {width:200px;}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/editor_plugin.js",
    "content": "(function(){tinymce.create(\"tinymce.plugins.AdvancedImagePlugin\",{init:function(a,b){a.addCommand(\"mceAdvImage\",function(){if(a.dom.getAttrib(a.selection.getNode(),\"class\",\"\").indexOf(\"mceItem\")!=-1){return}a.windowManager.open({file:b+\"/image.htm\",width:480+parseInt(a.getLang(\"advimage.delta_width\",0)),height:385+parseInt(a.getLang(\"advimage.delta_height\",0)),inline:1},{plugin_url:b})});a.addButton(\"image\",{title:\"advimage.image_desc\",cmd:\"mceAdvImage\"})},getInfo:function(){return{longname:\"Advanced image\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advimage\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}}});tinymce.PluginManager.add(\"advimage\",tinymce.plugins.AdvancedImagePlugin)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\ttinymce.create('tinymce.plugins.AdvancedImagePlugin', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\t// Register commands\r\n\t\t\ted.addCommand('mceAdvImage', function() {\r\n\t\t\t\t// Internal image object like a flash placeholder\r\n\t\t\t\tif (ed.dom.getAttrib(ed.selection.getNode(), 'class', '').indexOf('mceItem') != -1)\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\ted.windowManager.open({\r\n\t\t\t\t\tfile : url + '/image.htm',\r\n\t\t\t\t\twidth : 480 + parseInt(ed.getLang('advimage.delta_width', 0)),\r\n\t\t\t\t\theight : 385 + parseInt(ed.getLang('advimage.delta_height', 0)),\r\n\t\t\t\t\tinline : 1\r\n\t\t\t\t}, {\r\n\t\t\t\t\tplugin_url : url\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\t// Register buttons\r\n\t\t\ted.addButton('image', {\r\n\t\t\t\ttitle : 'advimage.image_desc',\r\n\t\t\t\tcmd : 'mceAdvImage'\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Advanced image',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advimage',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('advimage', tinymce.plugins.AdvancedImagePlugin);\r\n})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/image.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#advimage_dlg.dialog_title}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/form_utils.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/validate.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/editable_selects.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/image.js\"></script>\r\n\t<link href=\"css/advimage.css\" rel=\"stylesheet\" type=\"text/css\" />\r\n</head>\r\n<body id=\"advimage\" style=\"display: none\" role=\"application\" aria-labelledby=\"app_title\">\r\n\t<span id=\"app_title\" style=\"display:none\">{#advimage_dlg.dialog_title}</span>\r\n\t<form onsubmit=\"ImageDialog.insert();return false;\" action=\"#\"> \r\n\t\t<div class=\"tabs\">\r\n\t\t\t<ul>\r\n\t\t\t\t<li id=\"general_tab\" class=\"current\" aria-controls=\"general_panel\"><span><a href=\"javascript:mcTabs.displayTab('general_tab','general_panel');\" onmousedown=\"return false;\">{#advimage_dlg.tab_general}</a></span></li>\r\n\t\t\t\t<li id=\"appearance_tab\" aria-controls=\"appearance_panel\"><span><a href=\"javascript:mcTabs.displayTab('appearance_tab','appearance_panel');\" onmousedown=\"return false;\">{#advimage_dlg.tab_appearance}</a></span></li>\r\n\t\t\t\t<li id=\"advanced_tab\" aria-controls=\"advanced_panel\"><span><a href=\"javascript:mcTabs.displayTab('advanced_tab','advanced_panel');\" onmousedown=\"return false;\">{#advimage_dlg.tab_advanced}</a></span></li>\r\n\t\t\t</ul>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"panel_wrapper\">\r\n\t\t\t<div id=\"general_panel\" class=\"panel current\">\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t\t<legend>{#advimage_dlg.general}</legend>\r\n\r\n\t\t\t\t\t\t<table role=\"presentation\" class=\"properties\">\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"srclabel\" for=\"src\">{#advimage_dlg.src}</label></td>\r\n\t\t\t\t\t\t\t\t<td colspan=\"2\"><table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr> \r\n\t\t\t\t\t\t\t\t\t\t<td><input name=\"src\" type=\"text\" id=\"src\" value=\"\" class=\"mceFocus\" onchange=\"ImageDialog.showPreviewImage(this.value);\" aria-required=\"true\" /></td> \r\n\t\t\t\t\t\t\t\t\t\t<td id=\"srcbrowsercontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table></td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<td><label for=\"src_list\">{#advimage_dlg.image_list}</label></td>\r\n\t\t\t\t\t\t\t\t<td><select id=\"src_list\" name=\"src_list\" onchange=\"document.getElementById('src').value=this.options[this.selectedIndex].value;document.getElementById('alt').value=this.options[this.selectedIndex].text;document.getElementById('title').value=this.options[this.selectedIndex].text;ImageDialog.showPreviewImage(this.options[this.selectedIndex].value);\"><option value=\"\"></option></select></td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr> \r\n\t\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"altlabel\" for=\"alt\">{#advimage_dlg.alt}</label></td> \r\n\t\t\t\t\t\t\t\t<td colspan=\"2\"><input id=\"alt\" name=\"alt\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t\t\t</tr> \r\n\t\t\t\t\t\t\t<tr> \r\n\t\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"titlelabel\" for=\"title\">{#advimage_dlg.title}</label></td> \r\n\t\t\t\t\t\t\t\t<td colspan=\"2\"><input id=\"title\" name=\"title\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#advimage_dlg.preview}</legend>\r\n\t\t\t\t\t<div id=\"prev\"></div>\r\n\t\t\t\t</fieldset>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div id=\"appearance_panel\" class=\"panel\">\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#advimage_dlg.tab_appearance}</legend>\r\n\r\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t\t\t<tr> \r\n\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"alignlabel\" for=\"align\">{#advimage_dlg.align}</label></td> \r\n\t\t\t\t\t\t\t<td><select id=\"align\" name=\"align\" onchange=\"ImageDialog.updateStyle('align');ImageDialog.changeAppearance();\"> \r\n\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"baseline\">{#advimage_dlg.align_baseline}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"top\">{#advimage_dlg.align_top}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"middle\">{#advimage_dlg.align_middle}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"bottom\">{#advimage_dlg.align_bottom}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"text-top\">{#advimage_dlg.align_texttop}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"text-bottom\">{#advimage_dlg.align_textbottom}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"left\">{#advimage_dlg.align_left}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"right\">{#advimage_dlg.align_right}</option>\r\n\t\t\t\t\t\t\t\t</select> \r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td rowspan=\"6\" valign=\"top\">\r\n\t\t\t\t\t\t\t\t<div class=\"alignPreview\">\r\n\t\t\t\t\t\t\t\t\t<img id=\"alignSampleImg\" src=\"img/sample.gif\" alt=\"{#advimage_dlg.example_img}\" />\r\n\t\t\t\t\t\t\t\t\tLorem ipsum, Dolor sit amet, consectetuer adipiscing loreum ipsum edipiscing elit, sed diam\r\n\t\t\t\t\t\t\t\t\tnonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.Loreum ipsum\r\n\t\t\t\t\t\t\t\t\tedipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam\r\n\t\t\t\t\t\t\t\t\terat volutpat.\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr role=\"group\" aria-labelledby=\"widthlabel\">\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"widthlabel\" for=\"width\">{#advimage_dlg.dimensions}</label></td>\r\n\t\t\t\t\t\t\t<td class=\"nowrap\">\r\n\t\t\t\t\t\t\t\t<span style=\"display:none\" id=\"width_voiceLabel\">{#advimage_dlg.width}</span>\r\n\t\t\t\t\t\t\t\t<input name=\"width\" type=\"text\" id=\"width\" value=\"\" size=\"5\" maxlength=\"5\" class=\"size\" onchange=\"ImageDialog.changeHeight();\" aria-labelledby=\"width_voiceLabel\" /> x \r\n\t\t\t\t\t\t\t\t<span style=\"display:none\" id=\"height_voiceLabel\">{#advimage_dlg.height}</span>\r\n\t\t\t\t\t\t\t\t<input name=\"height\" type=\"text\" id=\"height\" value=\"\" size=\"5\" maxlength=\"5\" class=\"size\" onchange=\"ImageDialog.changeWidth();\" aria-labelledby=\"height_voiceLabel\" /> px\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td>&nbsp;</td>\r\n\t\t\t\t\t\t\t<td><table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input id=\"constrain\" type=\"checkbox\" name=\"constrain\" class=\"checkbox\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label id=\"constrainlabel\" for=\"constrain\">{#advimage_dlg.constrain_proportions}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"vspacelabel\" for=\"vspace\">{#advimage_dlg.vspace}</label></td> \r\n\t\t\t\t\t\t\t<td><input name=\"vspace\" type=\"text\" id=\"vspace\" value=\"\" size=\"3\" maxlength=\"3\" class=\"number\" onchange=\"ImageDialog.updateStyle('vspace');ImageDialog.changeAppearance();\" onblur=\"ImageDialog.updateStyle('vspace');ImageDialog.changeAppearance();\" />\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr> \r\n\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"hspacelabel\" for=\"hspace\">{#advimage_dlg.hspace}</label></td> \r\n\t\t\t\t\t\t\t<td><input name=\"hspace\" type=\"text\" id=\"hspace\" value=\"\" size=\"3\" maxlength=\"3\" class=\"number\" onchange=\"ImageDialog.updateStyle('hspace');ImageDialog.changeAppearance();\" onblur=\"ImageDialog.updateStyle('hspace');ImageDialog.changeAppearance();\" /></td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"borderlabel\" for=\"border\">{#advimage_dlg.border}</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"border\" name=\"border\" type=\"text\" value=\"\" size=\"3\" maxlength=\"3\" class=\"number\" onchange=\"ImageDialog.updateStyle('border');ImageDialog.changeAppearance();\" onblur=\"ImageDialog.updateStyle('border');ImageDialog.changeAppearance();\" /></td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"class_list\">{#class_name}</label></td>\r\n\t\t\t\t\t\t\t<td colspan=\"2\"><select id=\"class_list\" name=\"class_list\" class=\"mceEditableSelect\"><option value=\"\"></option></select></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"stylelabel\" for=\"style\">{#advimage_dlg.style}</label></td> \r\n\t\t\t\t\t\t\t<td colspan=\"2\"><input id=\"style\" name=\"style\" type=\"text\" value=\"\" onchange=\"ImageDialog.changeAppearance();\" /></td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<!-- <tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"classeslabel\" for=\"classes\">{#advimage_dlg.classes}</label></td> \r\n\t\t\t\t\t\t\t<td colspan=\"2\"><input id=\"classes\" name=\"classes\" type=\"text\" value=\"\" onchange=\"selectByValue(this.form,'classlist',this.value,true);\" /></td> \r\n\t\t\t\t\t\t</tr> -->\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div id=\"advanced_panel\" class=\"panel\">\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#advimage_dlg.swap_image}</legend>\r\n\r\n\t\t\t\t\t<input type=\"checkbox\" id=\"onmousemovecheck\" name=\"onmousemovecheck\" class=\"checkbox\" onclick=\"ImageDialog.setSwapImage(this.checked);\" aria-controls=\"onmouseoversrc onmouseoutsrc\" />\r\n\t\t\t\t\t<label id=\"onmousemovechecklabel\" for=\"onmousemovecheck\">{#advimage_dlg.alt_image}</label>\r\n\r\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"4\" cellspacing=\"0\" width=\"100%\">\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"onmouseoversrclabel\" for=\"onmouseoversrc\">{#advimage_dlg.mouseover}</label></td> \r\n\t\t\t\t\t\t\t\t<td><table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\"> \r\n\t\t\t\t\t\t\t\t\t<tr> \r\n\t\t\t\t\t\t\t\t\t\t<td><input id=\"onmouseoversrc\" name=\"onmouseoversrc\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t\t\t\t\t\t<td id=\"onmouseoversrccontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table></td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<td><label for=\"over_list\">{#advimage_dlg.image_list}</label></td>\r\n\t\t\t\t\t\t\t\t<td><select id=\"over_list\" name=\"over_list\" onchange=\"document.getElementById('onmouseoversrc').value=this.options[this.selectedIndex].value;\"><option value=\"\"></option></select></td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr> \r\n\t\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"onmouseoutsrclabel\" for=\"onmouseoutsrc\">{#advimage_dlg.mouseout}</label></td> \r\n\t\t\t\t\t\t\t\t<td class=\"column2\"><table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\"> \r\n\t\t\t\t\t\t\t\t\t<tr> \r\n\t\t\t\t\t\t\t\t\t\t<td><input id=\"onmouseoutsrc\" name=\"onmouseoutsrc\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t\t\t\t\t\t<td id=\"onmouseoutsrccontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr> \r\n\t\t\t\t\t\t\t\t</table></td> \r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<td><label for=\"out_list\">{#advimage_dlg.image_list}</label></td>\r\n\t\t\t\t\t\t\t\t<td><select id=\"out_list\" name=\"out_list\" onchange=\"document.getElementById('onmouseoutsrc').value=this.options[this.selectedIndex].value;\"><option value=\"\"></option></select></td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#advimage_dlg.misc}</legend>\r\n\r\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"idlabel\" for=\"id\">{#advimage_dlg.id}</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"id\" name=\"id\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"dirlabel\" for=\"dir\">{#advimage_dlg.langdir}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"dir\" name=\"dir\" onchange=\"ImageDialog.changeAppearance();\"> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"ltr\">{#advimage_dlg.ltr}</option> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"rtl\">{#advimage_dlg.rtl}</option> \r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"langlabel\" for=\"lang\">{#advimage_dlg.langcode}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<input id=\"lang\" name=\"lang\" type=\"text\" value=\"\" />\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"usemaplabel\" for=\"usemap\">{#advimage_dlg.map}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<input id=\"usemap\" name=\"usemap\" type=\"text\" value=\"\" />\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"longdesclabel\" for=\"longdesc\">{#advimage_dlg.long_desc}</label></td>\r\n\t\t\t\t\t\t\t<td><table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input id=\"longdesc\" name=\"longdesc\" type=\"text\" value=\"\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"longdesccontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t</table></td> \r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"mceActionPanel\">\r\n\t\t\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#insert}\" />\r\n\t\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t\t</div>\r\n\t</form>\r\n</body> \r\n</html> \r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/js/image.js",
    "content": "var ImageDialog = {\r\n\tpreInit : function() {\r\n\t\tvar url;\r\n\r\n\t\ttinyMCEPopup.requireLangPack();\r\n\r\n\t\tif (url = tinyMCEPopup.getParam(\"external_image_list_url\"))\r\n\t\t\tdocument.write('<script language=\"javascript\" type=\"text/javascript\" src=\"' + tinyMCEPopup.editor.documentBaseURI.toAbsolute(url) + '\"></script>');\r\n\t},\r\n\r\n\tinit : function(ed) {\r\n\t\tvar f = document.forms[0], nl = f.elements, ed = tinyMCEPopup.editor, dom = ed.dom, n = ed.selection.getNode(), fl = tinyMCEPopup.getParam('external_image_list', 'tinyMCEImageList');\r\n\r\n\t\ttinyMCEPopup.resizeToInnerSize();\r\n\t\tthis.fillClassList('class_list');\r\n\t\tthis.fillFileList('src_list', fl);\r\n\t\tthis.fillFileList('over_list', fl);\r\n\t\tthis.fillFileList('out_list', fl);\r\n\t\tTinyMCE_EditableSelects.init();\r\n\r\n\t\tif (n.nodeName == 'IMG') {\r\n\t\t\tnl.src.value = dom.getAttrib(n, 'src');\r\n\t\t\tnl.width.value = dom.getAttrib(n, 'width');\r\n\t\t\tnl.height.value = dom.getAttrib(n, 'height');\r\n\t\t\tnl.alt.value = dom.getAttrib(n, 'alt');\r\n\t\t\tnl.title.value = dom.getAttrib(n, 'title');\r\n\t\t\tnl.vspace.value = this.getAttrib(n, 'vspace');\r\n\t\t\tnl.hspace.value = this.getAttrib(n, 'hspace');\r\n\t\t\tnl.border.value = this.getAttrib(n, 'border');\r\n\t\t\tselectByValue(f, 'align', this.getAttrib(n, 'align'));\r\n\t\t\tselectByValue(f, 'class_list', dom.getAttrib(n, 'class'), true, true);\r\n\t\t\tnl.style.value = dom.getAttrib(n, 'style');\r\n\t\t\tnl.id.value = dom.getAttrib(n, 'id');\r\n\t\t\tnl.dir.value = dom.getAttrib(n, 'dir');\r\n\t\t\tnl.lang.value = dom.getAttrib(n, 'lang');\r\n\t\t\tnl.usemap.value = dom.getAttrib(n, 'usemap');\r\n\t\t\tnl.longdesc.value = dom.getAttrib(n, 'longdesc');\r\n\t\t\tnl.insert.value = ed.getLang('update');\r\n\r\n\t\t\tif (/^\\s*this.src\\s*=\\s*\\'([^\\']+)\\';?\\s*$/.test(dom.getAttrib(n, 'onmouseover')))\r\n\t\t\t\tnl.onmouseoversrc.value = dom.getAttrib(n, 'onmouseover').replace(/^\\s*this.src\\s*=\\s*\\'([^\\']+)\\';?\\s*$/, '$1');\r\n\r\n\t\t\tif (/^\\s*this.src\\s*=\\s*\\'([^\\']+)\\';?\\s*$/.test(dom.getAttrib(n, 'onmouseout')))\r\n\t\t\t\tnl.onmouseoutsrc.value = dom.getAttrib(n, 'onmouseout').replace(/^\\s*this.src\\s*=\\s*\\'([^\\']+)\\';?\\s*$/, '$1');\r\n\r\n\t\t\tif (ed.settings.inline_styles) {\r\n\t\t\t\t// Move attribs to styles\r\n\t\t\t\tif (dom.getAttrib(n, 'align'))\r\n\t\t\t\t\tthis.updateStyle('align');\r\n\r\n\t\t\t\tif (dom.getAttrib(n, 'hspace'))\r\n\t\t\t\t\tthis.updateStyle('hspace');\r\n\r\n\t\t\t\tif (dom.getAttrib(n, 'border'))\r\n\t\t\t\t\tthis.updateStyle('border');\r\n\r\n\t\t\t\tif (dom.getAttrib(n, 'vspace'))\r\n\t\t\t\t\tthis.updateStyle('vspace');\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Setup browse button\r\n\t\tdocument.getElementById('srcbrowsercontainer').innerHTML = getBrowserHTML('srcbrowser','src','image','theme_advanced_image');\r\n\t\tif (isVisible('srcbrowser'))\r\n\t\t\tdocument.getElementById('src').style.width = '260px';\r\n\r\n\t\t// Setup browse button\r\n\t\tdocument.getElementById('onmouseoversrccontainer').innerHTML = getBrowserHTML('overbrowser','onmouseoversrc','image','theme_advanced_image');\r\n\t\tif (isVisible('overbrowser'))\r\n\t\t\tdocument.getElementById('onmouseoversrc').style.width = '260px';\r\n\r\n\t\t// Setup browse button\r\n\t\tdocument.getElementById('onmouseoutsrccontainer').innerHTML = getBrowserHTML('outbrowser','onmouseoutsrc','image','theme_advanced_image');\r\n\t\tif (isVisible('outbrowser'))\r\n\t\t\tdocument.getElementById('onmouseoutsrc').style.width = '260px';\r\n\r\n\t\t// If option enabled default contrain proportions to checked\r\n\t\tif (ed.getParam(\"advimage_constrain_proportions\", true))\r\n\t\t\tf.constrain.checked = true;\r\n\r\n\t\t// Check swap image if valid data\r\n\t\tif (nl.onmouseoversrc.value || nl.onmouseoutsrc.value)\r\n\t\t\tthis.setSwapImage(true);\r\n\t\telse\r\n\t\t\tthis.setSwapImage(false);\r\n\r\n\t\tthis.changeAppearance();\r\n\t\tthis.showPreviewImage(nl.src.value, 1);\r\n\t},\r\n\r\n\tinsert : function(file, title) {\r\n\t\tvar ed = tinyMCEPopup.editor, t = this, f = document.forms[0];\r\n\r\n\t\tif (f.src.value === '') {\r\n\t\t\tif (ed.selection.getNode().nodeName == 'IMG') {\r\n\t\t\t\ted.dom.remove(ed.selection.getNode());\r\n\t\t\t\ted.execCommand('mceRepaint');\r\n\t\t\t}\r\n\r\n\t\t\ttinyMCEPopup.close();\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (tinyMCEPopup.getParam(\"accessibility_warnings\", 1)) {\r\n\t\t\tif (!f.alt.value) {\r\n\t\t\t\ttinyMCEPopup.confirm(tinyMCEPopup.getLang('advimage_dlg.missing_alt'), function(s) {\r\n\t\t\t\t\tif (s)\r\n\t\t\t\t\t\tt.insertAndClose();\r\n\t\t\t\t});\r\n\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tt.insertAndClose();\r\n\t},\r\n\r\n\tinsertAndClose : function() {\r\n\t\tvar ed = tinyMCEPopup.editor, f = document.forms[0], nl = f.elements, v, args = {}, el;\r\n\r\n\t\ttinyMCEPopup.restoreSelection();\r\n\r\n\t\t// Fixes crash in Safari\r\n\t\tif (tinymce.isWebKit)\r\n\t\t\ted.getWin().focus();\r\n\r\n\t\tif (!ed.settings.inline_styles) {\r\n\t\t\targs = {\r\n\t\t\t\tvspace : nl.vspace.value,\r\n\t\t\t\thspace : nl.hspace.value,\r\n\t\t\t\tborder : nl.border.value,\r\n\t\t\t\talign : getSelectValue(f, 'align')\r\n\t\t\t};\r\n\t\t} else {\r\n\t\t\t// Remove deprecated values\r\n\t\t\targs = {\r\n\t\t\t\tvspace : '',\r\n\t\t\t\thspace : '',\r\n\t\t\t\tborder : '',\r\n\t\t\t\talign : ''\r\n\t\t\t};\r\n\t\t}\r\n\r\n\t\ttinymce.extend(args, {\r\n\t\t\tsrc : nl.src.value.replace(/ /g, '%20'),\r\n\t\t\twidth : nl.width.value,\r\n\t\t\theight : nl.height.value,\r\n\t\t\talt : nl.alt.value,\r\n\t\t\ttitle : nl.title.value,\r\n\t\t\t'class' : getSelectValue(f, 'class_list'),\r\n\t\t\tstyle : nl.style.value,\r\n\t\t\tid : nl.id.value,\r\n\t\t\tdir : nl.dir.value,\r\n\t\t\tlang : nl.lang.value,\r\n\t\t\tusemap : nl.usemap.value,\r\n\t\t\tlongdesc : nl.longdesc.value\r\n\t\t});\r\n\r\n\t\targs.onmouseover = args.onmouseout = '';\r\n\r\n\t\tif (f.onmousemovecheck.checked) {\r\n\t\t\tif (nl.onmouseoversrc.value)\r\n\t\t\t\targs.onmouseover = \"this.src='\" + nl.onmouseoversrc.value + \"';\";\r\n\r\n\t\t\tif (nl.onmouseoutsrc.value)\r\n\t\t\t\targs.onmouseout = \"this.src='\" + nl.onmouseoutsrc.value + \"';\";\r\n\t\t}\r\n\r\n\t\tel = ed.selection.getNode();\r\n\r\n\t\tif (el && el.nodeName == 'IMG') {\r\n\t\t\ted.dom.setAttribs(el, args);\r\n\t\t} else {\r\n\t\t\ttinymce.each(args, function(value, name) {\r\n\t\t\t\tif (value === \"\") {\r\n\t\t\t\t\tdelete args[name];\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\ted.execCommand('mceInsertContent', false, tinyMCEPopup.editor.dom.createHTML('img', args), {skip_undo : 1});\r\n\t\t\ted.undoManager.add();\r\n\t\t}\r\n\r\n\t\ttinyMCEPopup.editor.execCommand('mceRepaint');\r\n\t\ttinyMCEPopup.editor.focus();\r\n\t\ttinyMCEPopup.close();\r\n\t},\r\n\r\n\tgetAttrib : function(e, at) {\r\n\t\tvar ed = tinyMCEPopup.editor, dom = ed.dom, v, v2;\r\n\r\n\t\tif (ed.settings.inline_styles) {\r\n\t\t\tswitch (at) {\r\n\t\t\t\tcase 'align':\r\n\t\t\t\t\tif (v = dom.getStyle(e, 'float'))\r\n\t\t\t\t\t\treturn v;\r\n\r\n\t\t\t\t\tif (v = dom.getStyle(e, 'vertical-align'))\r\n\t\t\t\t\t\treturn v;\r\n\r\n\t\t\t\t\tbreak;\r\n\r\n\t\t\t\tcase 'hspace':\r\n\t\t\t\t\tv = dom.getStyle(e, 'margin-left')\r\n\t\t\t\t\tv2 = dom.getStyle(e, 'margin-right');\r\n\r\n\t\t\t\t\tif (v && v == v2)\r\n\t\t\t\t\t\treturn parseInt(v.replace(/[^0-9]/g, ''));\r\n\r\n\t\t\t\t\tbreak;\r\n\r\n\t\t\t\tcase 'vspace':\r\n\t\t\t\t\tv = dom.getStyle(e, 'margin-top')\r\n\t\t\t\t\tv2 = dom.getStyle(e, 'margin-bottom');\r\n\t\t\t\t\tif (v && v == v2)\r\n\t\t\t\t\t\treturn parseInt(v.replace(/[^0-9]/g, ''));\r\n\r\n\t\t\t\t\tbreak;\r\n\r\n\t\t\t\tcase 'border':\r\n\t\t\t\t\tv = 0;\r\n\r\n\t\t\t\t\ttinymce.each(['top', 'right', 'bottom', 'left'], function(sv) {\r\n\t\t\t\t\t\tsv = dom.getStyle(e, 'border-' + sv + '-width');\r\n\r\n\t\t\t\t\t\t// False or not the same as prev\r\n\t\t\t\t\t\tif (!sv || (sv != v && v !== 0)) {\r\n\t\t\t\t\t\t\tv = 0;\r\n\t\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tif (sv)\r\n\t\t\t\t\t\t\tv = sv;\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tif (v)\r\n\t\t\t\t\t\treturn parseInt(v.replace(/[^0-9]/g, ''));\r\n\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif (v = dom.getAttrib(e, at))\r\n\t\t\treturn v;\r\n\r\n\t\treturn '';\r\n\t},\r\n\r\n\tsetSwapImage : function(st) {\r\n\t\tvar f = document.forms[0];\r\n\r\n\t\tf.onmousemovecheck.checked = st;\r\n\t\tsetBrowserDisabled('overbrowser', !st);\r\n\t\tsetBrowserDisabled('outbrowser', !st);\r\n\r\n\t\tif (f.over_list)\r\n\t\t\tf.over_list.disabled = !st;\r\n\r\n\t\tif (f.out_list)\r\n\t\t\tf.out_list.disabled = !st;\r\n\r\n\t\tf.onmouseoversrc.disabled = !st;\r\n\t\tf.onmouseoutsrc.disabled  = !st;\r\n\t},\r\n\r\n\tfillClassList : function(id) {\r\n\t\tvar dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl;\r\n\r\n\t\tif (v = tinyMCEPopup.getParam('theme_advanced_styles')) {\r\n\t\t\tcl = [];\r\n\r\n\t\t\ttinymce.each(v.split(';'), function(v) {\r\n\t\t\t\tvar p = v.split('=');\r\n\r\n\t\t\t\tcl.push({'title' : p[0], 'class' : p[1]});\r\n\t\t\t});\r\n\t\t} else\r\n\t\t\tcl = tinyMCEPopup.editor.dom.getClasses();\r\n\r\n\t\tif (cl.length > 0) {\r\n\t\t\tlst.options.length = 0;\r\n\t\t\tlst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('not_set'), '');\r\n\r\n\t\t\ttinymce.each(cl, function(o) {\r\n\t\t\t\tlst.options[lst.options.length] = new Option(o.title || o['class'], o['class']);\r\n\t\t\t});\r\n\t\t} else\r\n\t\t\tdom.remove(dom.getParent(id, 'tr'));\r\n\t},\r\n\r\n\tfillFileList : function(id, l) {\r\n\t\tvar dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl;\r\n\r\n\t\tl = typeof(l) === 'function' ? l() : window[l];\r\n\t\tlst.options.length = 0;\r\n\r\n\t\tif (l && l.length > 0) {\r\n\t\t\tlst.options[lst.options.length] = new Option('', '');\r\n\r\n\t\t\ttinymce.each(l, function(o) {\r\n\t\t\t\tlst.options[lst.options.length] = new Option(o[0], o[1]);\r\n\t\t\t});\r\n\t\t} else\r\n\t\t\tdom.remove(dom.getParent(id, 'tr'));\r\n\t},\r\n\r\n\tresetImageData : function() {\r\n\t\tvar f = document.forms[0];\r\n\r\n\t\tf.elements.width.value = f.elements.height.value = '';\r\n\t},\r\n\r\n\tupdateImageData : function(img, st) {\r\n\t\tvar f = document.forms[0];\r\n\r\n\t\tif (!st) {\r\n\t\t\tf.elements.width.value = img.width;\r\n\t\t\tf.elements.height.value = img.height;\r\n\t\t}\r\n\r\n\t\tthis.preloadImg = img;\r\n\t},\r\n\r\n\tchangeAppearance : function() {\r\n\t\tvar ed = tinyMCEPopup.editor, f = document.forms[0], img = document.getElementById('alignSampleImg');\r\n\r\n\t\tif (img) {\r\n\t\t\tif (ed.getParam('inline_styles')) {\r\n\t\t\t\ted.dom.setAttrib(img, 'style', f.style.value);\r\n\t\t\t} else {\r\n\t\t\t\timg.align = f.align.value;\r\n\t\t\t\timg.border = f.border.value;\r\n\t\t\t\timg.hspace = f.hspace.value;\r\n\t\t\t\timg.vspace = f.vspace.value;\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n\r\n\tchangeHeight : function() {\r\n\t\tvar f = document.forms[0], tp, t = this;\r\n\r\n\t\tif (!f.constrain.checked || !t.preloadImg) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (f.width.value == \"\" || f.height.value == \"\")\r\n\t\t\treturn;\r\n\r\n\t\ttp = (parseInt(f.width.value) / parseInt(t.preloadImg.width)) * t.preloadImg.height;\r\n\t\tf.height.value = tp.toFixed(0);\r\n\t},\r\n\r\n\tchangeWidth : function() {\r\n\t\tvar f = document.forms[0], tp, t = this;\r\n\r\n\t\tif (!f.constrain.checked || !t.preloadImg) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (f.width.value == \"\" || f.height.value == \"\")\r\n\t\t\treturn;\r\n\r\n\t\ttp = (parseInt(f.height.value) / parseInt(t.preloadImg.height)) * t.preloadImg.width;\r\n\t\tf.width.value = tp.toFixed(0);\r\n\t},\r\n\r\n\tupdateStyle : function(ty) {\r\n\t\tvar dom = tinyMCEPopup.dom, b, bStyle, bColor, v, isIE = tinymce.isIE, f = document.forms[0], img = dom.create('img', {style : dom.get('style').value});\r\n\r\n\t\tif (tinyMCEPopup.editor.settings.inline_styles) {\r\n\t\t\t// Handle align\r\n\t\t\tif (ty == 'align') {\r\n\t\t\t\tdom.setStyle(img, 'float', '');\r\n\t\t\t\tdom.setStyle(img, 'vertical-align', '');\r\n\r\n\t\t\t\tv = getSelectValue(f, 'align');\r\n\t\t\t\tif (v) {\r\n\t\t\t\t\tif (v == 'left' || v == 'right')\r\n\t\t\t\t\t\tdom.setStyle(img, 'float', v);\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\timg.style.verticalAlign = v;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Handle border\r\n\t\t\tif (ty == 'border') {\r\n\t\t\t\tb = img.style.border ? img.style.border.split(' ') : [];\r\n\t\t\t\tbStyle = dom.getStyle(img, 'border-style');\r\n\t\t\t\tbColor = dom.getStyle(img, 'border-color');\r\n\r\n\t\t\t\tdom.setStyle(img, 'border', '');\r\n\r\n\t\t\t\tv = f.border.value;\r\n\t\t\t\tif (v || v == '0') {\r\n\t\t\t\t\tif (v == '0')\r\n\t\t\t\t\t\timg.style.border = isIE ? '0' : '0 none none';\r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\tif (b.length == 3 && b[isIE ? 2 : 1])\r\n\t\t\t\t\t\t\tbStyle = b[isIE ? 2 : 1];\r\n\t\t\t\t\t\telse if (!bStyle || bStyle == 'none')\r\n\t\t\t\t\t\t\tbStyle = 'solid';\r\n\t\t\t\t\t\tif (b.length == 3 && b[isIE ? 0 : 2])\r\n\t\t\t\t\t\t\tbColor = b[isIE ? 0 : 2];\r\n\t\t\t\t\t\telse if (!bColor || bColor == 'none')\r\n\t\t\t\t\t\t\tbColor = 'black';\r\n\t\t\t\t\t\timg.style.border = v + 'px ' + bStyle + ' ' + bColor;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Handle hspace\r\n\t\t\tif (ty == 'hspace') {\r\n\t\t\t\tdom.setStyle(img, 'marginLeft', '');\r\n\t\t\t\tdom.setStyle(img, 'marginRight', '');\r\n\r\n\t\t\t\tv = f.hspace.value;\r\n\t\t\t\tif (v) {\r\n\t\t\t\t\timg.style.marginLeft = v + 'px';\r\n\t\t\t\t\timg.style.marginRight = v + 'px';\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Handle vspace\r\n\t\t\tif (ty == 'vspace') {\r\n\t\t\t\tdom.setStyle(img, 'marginTop', '');\r\n\t\t\t\tdom.setStyle(img, 'marginBottom', '');\r\n\r\n\t\t\t\tv = f.vspace.value;\r\n\t\t\t\tif (v) {\r\n\t\t\t\t\timg.style.marginTop = v + 'px';\r\n\t\t\t\t\timg.style.marginBottom = v + 'px';\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Merge\r\n\t\t\tdom.get('style').value = dom.serializeStyle(dom.parseStyle(img.style.cssText), 'img');\r\n\t\t}\r\n\t},\r\n\r\n\tchangeMouseMove : function() {\r\n\t},\r\n\r\n\tshowPreviewImage : function(u, st) {\r\n\t\tif (!u) {\r\n\t\t\ttinyMCEPopup.dom.setHTML('prev', '');\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (!st && tinyMCEPopup.getParam(\"advimage_update_dimensions_onchange\", true))\r\n\t\t\tthis.resetImageData();\r\n\r\n\t\tu = tinyMCEPopup.editor.documentBaseURI.toAbsolute(u);\r\n\r\n\t\tif (!st)\r\n\t\t\ttinyMCEPopup.dom.setHTML('prev', '<img id=\"previewImg\" src=\"' + u + '\" border=\"0\" onload=\"ImageDialog.updateImageData(this);\" onerror=\"ImageDialog.resetImageData();\" />');\r\n\t\telse\r\n\t\t\ttinyMCEPopup.dom.setHTML('prev', '<img id=\"previewImg\" src=\"' + u + '\" border=\"0\" onload=\"ImageDialog.updateImageData(this, 1);\" />');\r\n\t}\r\n};\r\n\r\nImageDialog.preInit();\r\ntinyMCEPopup.onInit.add(ImageDialog.init, ImageDialog);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/ar_dlg.js",
    "content": "tinyMCE.addI18n('ar.advimage_dlg',{image_list:\"Image list\",align_right:\"\\u064a\\u0645\\u064a\\u0646\",align_left:\"\\u064a\\u0633\\u0627\\u0631\",align_textbottom:\"\\u0627\\u0633\\u0641\\u0644 \\u0627\\u0644\\u0646\\u0635\",align_texttop:\"\\u0627\\u0639\\u0644\\u0649 \\u0627\\u0644\\u0646\\u0635\",align_bottom:\"\\u0627\\u0633\\u0641\\u0644\",align_middle:\"Middle\",align_top:\"\\u0627\\u0644\\u0627\\u0639\\u0644\\u0649\",align_baseline:\"Baseline\",align:\"Alignment\",hspace:\"Horizontal space\",vspace:\"Vertical space\",dimensions:\"Dimensions\",border:\"Border\",list:\"Image list\",alt:\"Image description\",src:\"Image URL\",dialog_title:\"Insert/edit image\",missing_alt:\"Are you sure you want to continue without including an Image Description? Without it the image may not be accessible to some users with disabilities, or to those using a text browser, or browsing the Web with images turned off.\",example_img:\"Appearance preview image\",misc:\"Miscellaneous\",mouseout:\"for mouse out\",mouseover:\"for mouse over\",alt_image:\"Alternative image\",swap_image:\"Swap image\",map:\"Image map\",id:\"Id\",rtl:\"Right to left\",ltr:\"Left to right\",classes:\"Classes\",style:\"Style\",long_desc:\"Long description link\",langcode:\"Language code\",langdir:\"Language direction\",constrain_proportions:\"Constrain proportions\",preview:\"\\u0645\\u0634\\u0627\\u0647\\u062f\\u0647\",title:\"\\u0627\\u0644\\u0639\\u0646\\u0648\\u0627\\u0646\",general:\"\\u0639\\u0627\\u0645\",tab_advanced:\"\\u062e\\u064a\\u0627\\u0631\\u0627\\u062a \\u0645\\u062a\\u0642\\u062f\\u0645\\u0647\",tab_appearance:\"\\u0627\\u0644\\u0645\\u0638\\u0647\\u0631\",tab_general:\"\\u0639\\u0627\\u0645\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/az_dlg.js",
    "content": "tinyMCE.addI18n('az.advimage_dlg',{\"image_list\":\"\\u015e\\u0259kil siyah\\u0131s\\u0131\",\"align_right\":\"Sa\\u011fa\",\"align_left\":\"Sola\",\"align_textbottom\":\"M\\u0259tn a\\u015fa\\u011f\\u0131s\\u0131 il\\u0259\",\"align_texttop\":\"M\\u0259tn yuxar\\u0131 il\\u0259\",\"align_bottom\":\"A\\u015fa\\u011f\\u0131 il\\u0259\",\"align_middle\":\"M\\u0259rk\\u0259z il\\u0259\",\"align_top\":\"Yuxar\\u0131 il\\u0259\",\"align_baseline\":\"Bin\\u00f6vr\\u0259 il\\u0259\",align:\"Tarazla\\u015fd\\u0131rma\",hspace:\"\\u00dcf\\u00fcqi f\\u0259za\",vspace:\"\\u015eaquli f\\u0259za\",dimensions:\"\\u00d6l\\u00e7\\u00fcl\\u0259r\",border:\"S\\u0259rh\\u0259d\",list:\"\\u015e\\u0259kil siyah\\u0131s\\u0131\",alt:\"\\u015e\\u0259kil t\\u0259sviri\",src:\"\\u015e\\u0259kil \\u00fcnvan\\u0131\",\"dialog_title\":\"\\u015e\\u0259kil \\u0259lav\\u0259/redakt\\u0259 et\",\"missing_alt\":\"\\u018fminsiniz ki, \\u015f\\u0259kl\\u0259 t\\u0259svir yazmadan davam etm\\u0259k ist\\u0259yirsiniz? T\\u0259svirsiz \\u015f\\u0259kil i\\u015f qabiliyy\\u0259ti a\\u015fa\\u011f\\u0131 olan v\\u0259 ya \\u015f\\u0259klin s\\u00f6nd\\u00fcr\\u00fclm\\u00fc\\u015f funksiyas\\u0131 il\\u0259 m\\u0259tn b\\u0259l\\u0259d\\u00e7isind\\u0259n istifad\\u0259 ed\\u0259n istifad\\u0259\\u00e7il\\u0259r\\u0259 \\u0259l\\u00e7atmaz ola bil\\u0259r.\",\"example_img\":\"Xarici g\\u00f6r\\u00fcn\\u00fc\\u015f\\u0259 ilkin bax\\u0131\\u015f\",misc:\"M\\u00fcxt\\u0259lif\",mouseout:\"si\\u00e7an\\u0131 uzaqla\\u015fd\\u0131rd\\u0131qda\",mouseover:\"si\\u00e7an\\u0131 g\\u0259tirdikd\\u0259\",\"alt_image\":\"Alternativ \\u015f\\u0259kil\",\"swap_image\":\"\\u015e\\u0259kli d\\u0259yi\\u015f\",map:\"X\\u0259rit\\u0259-\\u015f\\u0259kil\",id:\"\\u0130dentifikator\",rtl:\"Sa\\u011fda-sola\",ltr:\"Solda-sa\\u011fa\",classes:\"Sinifl\\u0259r\",style:\"Stil\",\"long_desc\":\"\\u018ftrafl\\u0131 t\\u0259svir\\u0259 ke\\u00e7id\",langcode:\"Dil kodu\",langdir:\"Dilin istiqam\\u0259tl\\u0259ndirilm\\u0259si\",\"constrain_proportions\":\"Proporsiyalar\\u0131 saxla\",preview:\"\\u0130lkin bax\\u0131\\u015f\",title:\"Ad\\u0131\",general:\"\\u00dcmumi\",\"tab_advanced\":\"\\u018flav\\u0259\",\"tab_appearance\":\"G\\u00f6r\\u00fcn\\u00fc\\u015f\",\"tab_general\":\"\\u00dcmumi\",width:\"Width\",height:\"Height\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/be_dlg.js",
    "content": "tinyMCE.addI18n('be.advimage_dlg',{\"image_list\":\"\\u0421\\u043f\\u0456\\u0441 \\u043c\\u0430\\u043b\\u044e\\u043d\\u043a\\u0430\\u045e\",\"align_right\":\"\\u041f\\u0430 \\u043f\\u0440\\u0430\\u0432\\u044b\\u043c \\u043a\\u0440\\u0430\\u0456\",\"align_left\":\"\\u041f\\u0430 \\u043b\\u0435\\u0432\\u044b\\u043c \\u043a\\u0440\\u0430\\u0456\",\"align_textbottom\":\"\\u041f\\u0430 \\u043d\\u0456\\u0437\\u0435 \\u0442\\u044d\\u043a\\u0441\\u0442\\u0443\",\"align_texttop\":\"\\u041f\\u0430 \\u0432\\u0435\\u0440\\u0441\\u0435 \\u0442\\u044d\\u043a\\u0441\\u0442\\u0443\",\"align_bottom\":\"\\u041f\\u0430 \\u043d\\u0456\\u0437\\u0435\",\"align_middle\":\"\\u041f\\u0430 \\u0446\\u044d\\u043d\\u0442\\u0440\\u044b\",\"align_top\":\"\\u041f\\u0430 \\u0432\\u0435\\u0440\\u0441\\u0435\",\"align_baseline\":\"\\u041f\\u0430 \\u0431\\u0430\\u0437\\u0430\\u0432\\u0430\\u0439 \\u043b\\u0456\\u043d\\u0456\\u0456\",align:\"\\u0412\\u044b\\u0440\\u0430\\u045e\\u043d\\u043e\\u045e\\u0432\\u0430\\u043d\\u043d\\u0435\",hspace:\"\\u0413\\u0430\\u0440\\u044b\\u0437\\u0430\\u043d\\u0442\\u0430\\u043b\\u044c\\u043d\\u044b \\u0432\\u043e\\u0434\\u0441\\u0442\\u0443\\u043f\",vspace:\"\\u0412\\u0435\\u0440\\u0442\\u044b\\u043a\\u0430\\u043b\\u044c\\u043d\\u044b \\u0432\\u043e\\u0434\\u0441\\u0442\\u0443\\u043f\",dimensions:\"\\u041f\\u0430\\u043c\\u0435\\u0440\\u044b\",border:\"\\u041c\\u044f\\u0436\\u0430\",list:\"\\u0421\\u043f\\u0456\\u0441 \\u043c\\u0430\\u043b\\u044e\\u043d\\u043a\\u0430\\u045e\",alt:\"\\u0410\\u043f\\u0456\\u0441\\u0430\\u043d\\u043d\\u0435 \\u043c\\u0430\\u043b\\u044e\\u043d\\u043a\\u0430\",src:\"\\u0410\\u0434\\u0440\\u0430\\u0441 \\u043c\\u0430\\u043b\\u044e\\u043d\\u043a\\u0430\",\"dialog_title\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c/\\u0440\\u044d\\u0434\\u0430\\u0433\\u0430\\u0432\\u0430\\u0446\\u044c \\u043c\\u0430\\u043b\\u044e\\u043d\\u0430\\u043a\",\"missing_alt\":\"\\u0412\\u044b \\u045e\\u043f\\u044d\\u045e\\u043d\\u0435\\u043d\\u044b\\u044f, \\u0448\\u0442\\u043e \\u0436\\u0430\\u0434\\u0430\\u0435\\u0446\\u0435 \\u043f\\u0440\\u0430\\u0446\\u044f\\u0433\\u043d\\u0443\\u0446\\u044c \\u0431\\u0435\\u0437 \\u0430\\u043f\\u0456\\u0441\\u0430\\u043d\\u043d\\u044f \\u043c\\u0430\\u043b\\u044e\\u043d\\u043a\\u0430? \\u0411\\u0435\\u0437 \\u044f\\u0433\\u043e \\u043c\\u0430\\u043b\\u044e\\u043d\\u0430\\u043a \\u043c\\u043e\\u0436\\u0430 \\u0431\\u044b\\u0446\\u044c \\u043d\\u0435\\u0434\\u0430\\u0441\\u0442\\u0443\\u043f\\u043d\\u0430 \\u043a\\u0430\\u0440\\u044b\\u0441\\u0442\\u0430\\u043b\\u044c\\u043d\\u0456\\u043a\\u0430\\u043c \\u0437 \\u0430\\u0431\\u043c\\u0435\\u0436\\u0430\\u0432\\u0430\\u043d\\u0430\\u0439 \\u043f\\u0440\\u0430\\u0446\\u0430\\u0437\\u0434\\u043e\\u043b\\u044c\\u043d\\u0430\\u0441\\u0446\\u044e, \\u0430\\u0431\\u043e \\u043a\\u0430\\u0440\\u044b\\u0441\\u0442\\u0430\\u043b\\u044c\\u043d\\u0456\\u043a\\u0430\\u043c \\u0442\\u044d\\u043a\\u0441\\u0442\\u0430\\u0432\\u044b\\u0445 \\u0431\\u0440\\u0430\\u045e\\u0437\\u0435\\u0440\\u0430\\u045e, \\u0430\\u0431\\u043e \\u044f\\u043a\\u0456\\u044f \\u0433\\u043b\\u044f\\u0434\\u0437\\u044f\\u0446\\u044c \\u0441\\u0442\\u0430\\u0440\\u043e\\u043d\\u043a\\u0456 \\u0437 \\u0430\\u0434\\u043a\\u043b\\u044e\\u0447\\u0430\\u043d\\u044b\\u043c\\u0456 \\u043c\\u0430\\u043b\\u044e\\u043d\\u043a\\u0430\\u043c\\u0456.\",\"example_img\":\"\\u041f\\u0440\\u044b\\u043a\\u043b\\u0430\\u0434 \\u043c\\u0430\\u043b\\u044e\\u043d\\u043a\\u0443\",misc:\"\\u0414\\u0430\\u0434\\u0430\\u0442\\u043a\\u043e\\u0432\\u044b\\u044f \\u043f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b\",mouseout:\"\\u041f\\u0440\\u044b \\u0430\\u0434\\u0432\\u044f\\u0434\\u0437\\u0435\\u043d\\u043d\\u0456 \\u043c\\u044b\\u0448\\u044b\",mouseover:\"\\u041f\\u0440\\u044b \\u043d\\u0430\\u0432\\u044f\\u0434\\u0437\\u0435\\u043d\\u043d\\u0456 \\u043c\\u044b\\u0448\\u044b\",\"alt_image\":\"\\u0410\\u043b\\u044c\\u0442\\u044d\\u0440\\u043d\\u0430\\u0442\\u044b\\u045e\\u043d\\u044b \\u043c\\u0430\\u043b\\u044e\\u043d\\u0430\\u043a\",\"swap_image\":\"\\u041f\\u0430\\u043c\\u044f\\u043d\\u044f\\u0446\\u044c \\u043c\\u0430\\u043b\\u044e\\u043d\\u0430\\u043a\",map:\"\\u041c\\u0430\\u043b\\u044e\\u043d\\u0430\\u043a-\\u043a\\u0430\\u0440\\u0442\\u0430\",id:\"\\u0406\\u0434\\u044d\\u043d\\u0442\\u044b\\u0444\\u0456\\u043a\\u0430\\u0442\\u0430\\u0440\",rtl:\"\\u0421\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043d\\u0430\\u043b\\u0435\\u0432\\u0430\",ltr:\"\\u0417\\u043b\\u0435\\u0432\\u0430 \\u043d\\u0430\\u043f\\u0440\\u0430\\u0432\\u0430\",classes:\"\\u041a\\u043b\\u0430\\u0441\\u044b\",style:\"\\u0421\\u0442\\u044b\\u043b\\u044c\",\"long_desc\":\"\\u0421\\u043f\\u0430\\u0441\\u044b\\u043b\\u043a\\u0430 \\u043d\\u0430 \\u043f\\u0430\\u0434\\u0440\\u0430\\u0431\\u044f\\u0437\\u043d\\u0430\\u0435 \\u0430\\u043f\\u0456\\u0441\\u0430\\u043d\\u043d\\u0435\",langcode:\"\\u041a\\u043e\\u0434 \\u043c\\u043e\\u0432\\u044b\",langdir:\"\\u041a\\u0456\\u0440\\u0443\\u043d\\u0430\\u043a \\u043c\\u043e\\u0432\\u044b\",\"constrain_proportions\":\"\\u0417\\u0430\\u0445\\u043e\\u045e\\u0432\\u0430\\u0446\\u044c \\u043f\\u0440\\u0430\\u043f\\u043e\\u0440\\u0446\\u044b\\u0456\",preview:\"\\u041f\\u0430\\u043f\\u044f\\u0440\\u044d\\u0434\\u043d\\u0456 \\u043f\\u0440\\u0430\\u0433\\u043b\\u044f\\u0434\",title:\"\\u041d\\u0430\\u0437\\u0432\\u0430\",general:\"\\u0410\\u0433\\u0443\\u043b\\u044c\\u043d\\u044b\\u044f\",\"tab_advanced\":\"\\u0414\\u0430\\u0434\\u0430\\u0442\\u043a\\u043e\\u0432\\u044b\\u044f\",\"tab_appearance\":\"\\u0412\\u043e\\u043d\\u043a\\u0430\\u0432\\u044b \\u0432\\u044b\\u0433\\u043b\\u044f\\u0434\",\"tab_general\":\"\\u0410\\u0433\\u0443\\u043b\\u044c\\u043d\\u044b\\u044f\",width:\"\\u0428\\u044b\\u0440\\u044b\\u043d\\u044f\",height:\"\\u0412\\u044b\\u0448\\u044b\\u043d\\u044f\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/cs_dlg.js",
    "content": "tinyMCE.addI18n('cs.advimage_dlg',{image_list:\"Seznam obr\\u00e1zk\\u016f\",align_right:\"Vpravo\",align_left:\"Vlevo\",align_textbottom:\"Se spodkem \\u0159\\u00e1dku\",align_texttop:\"S vrchem \\u0159\\u00e1dku\",align_bottom:\"Dol\\u016f\",align_middle:\"Na st\\u0159ed \\u0159\\u00e1dku\",align_top:\"Nahoru\",align_baseline:\"Na z\\u00e1kladnu\",align:\"Zarovn\\u00e1n\\u00ed\",hspace:\"Horizont\\u00e1ln\\u00ed odsazen\\u00ed\",vspace:\"Vertik\\u00e1ln\\u00ed odsazen\\u00ed\",dimensions:\"Rozm\\u011bry\",border:\"R\\u00e1me\\u010dek\",list:\"Seznam obr\\u00e1zk\\u016f\",alt:\"Popis obr\\u00e1zku\",src:\"URL obr\\u00e1zku\",dialog_title:\"Vlo\\u017eit/upravit obr\\u00e1zek\",missing_alt:\"Skute\\u010dn\\u011b chcete pokra\\u010dovat bez vlo\\u017een\\u00e9ho popisu obr\\u00e1zku? Bez popisu m\\u016f\\u017ee b\\u00fdt obr\\u00e1zek nep\\u0159\\u00edstupn\\u00fd u\\u017eivatel\\u016fm se zrakov\\u00fdm posti\\u017een\\u00edm, u\\u017eivatel\\u016fm textov\\u00fdch prohl\\u00ed\\u017ee\\u010d\\u016f nebo u\\u017eivatel\\u016fm, kte\\u0159\\u00ed maj\\u00ed vypnuto zobrazov\\u00e1n\\u00ed obr\\u00e1zk\\u016f.\",example_img:\"P\\u0159\\u00edklad obr\\u00e1zku\",misc:\"R\\u016fzn\\u00e9\",mouseout:\"Po odjet\\u00ed my\\u0161i...\",mouseover:\"P\\u0159i najet\\u00ed my\\u0161i...\",alt_image:\"Alternativn\\u00ed obr\\u00e1zek\",swap_image:\"P\\u0159epnout obr\\u00e1zek\",map:\"Obr\\u00e1zkov\\u00e1 mapa\",id:\"ID\",rtl:\"Zprava doleva\",ltr:\"Zleva doprava\",classes:\"T\\u0159\\u00eddy\",style:\"Styl\",long_desc:\"Dlouh\\u00fd popis\",langcode:\"K\\u00f3d jazyka\",langdir:\"Sm\\u011br textu\",constrain_proportions:\"Zachovat proporce\",preview:\"N\\u00e1hled\",title:\"Titulek\",general:\"Obecn\\u00e9 parametry\",tab_advanced:\"Roz\\u0161\\u00ed\\u0159en\\u00e9\",tab_appearance:\"Vzhled\",tab_general:\"Obecn\\u00e9\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/da_dlg.js",
    "content": "tinyMCE.addI18n('da.advimage_dlg',{\"image_list\":\"Billedliste\",\"align_right\":\"H\\u00f8jre\",\"align_left\":\"Venstre\",\"align_textbottom\":\"Tekstbund\",\"align_texttop\":\"Teksttop\",\"align_bottom\":\"Bund\",\"align_middle\":\"Midte\",\"align_top\":\"Top\",\"align_baseline\":\"Grundlinje\",align:\"Justering\",hspace:\"Horisontal afstand\",vspace:\"Vertikal afstand\",dimensions:\"Dimensioner\",border:\"Kant\",list:\"Billedliste\",alt:\"Billedbeskrivelse\",src:\"Billed-URL\",\"dialog_title\":\"Inds\\u00e6t/rediger billede\",\"missing_alt\":\"Er du sikker p\\u00e5, at du vil forts\\u00e6tte uden at inkludere en billedebeskrivelse? Uden denne er billedet m\\u00e5ske ikke tilg\\u00e6ngeligt for nogle brugere med handicaps, eller for dem der bruger en tekstbrowser, eller som browser internettet med billeder sl\\u00e5et fra.\",\"example_img\":\"Forh\\u00e5ndsvisning af billede\",misc:\"Diverse\",mouseout:\"for mus-ud\",mouseover:\"for mus-over\",\"alt_image\":\"Alternativt billede\",\"swap_image\":\"Byt billede\",map:\"Billede map\",id:\"Id\",rtl:\"H\\u00f8jre til venstre\",ltr:\"Venstre til h\\u00f8jre\",classes:\"Klasser\",style:\"Stil\",\"long_desc\":\"Lang beskrivelseslink\",langcode:\"Sprogkode\",langdir:\"Sprogretning\",\"constrain_proportions\":\"Bibehold proportioner\",preview:\"Vis\",title:\"Titel\",general:\"Generelt\",\"tab_advanced\":\"Avanceret\",\"tab_appearance\":\"Udseende\",\"tab_general\":\"Generelt\",width:\"Bredde\",height:\"H\\u00f8jde\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/de_dlg.js",
    "content": "tinyMCE.addI18n('de.advimage_dlg',{image_list:\"Bilderliste\",align_right:\"Rechts\",align_left:\"Links\",align_textbottom:\"Unten im Text\",align_texttop:\"Oben im Text\",align_bottom:\"Unten\",align_middle:\"Mittig\",align_top:\"Oben\",align_baseline:\"Zeile\",align:\"Ausrichtung\",hspace:\"Horizontaler Abstand\",vspace:\"Vertikaler Abstand\",dimensions:\"Ausma\\u00dfe\",border:\"Rahmen\",list:\"Bilderliste\",alt:\"Beschreibung\",src:\"Adresse\",dialog_title:\"Bild einf\\u00fcgen/bearbeiten\",missing_alt:\"Wollen Sie wirklich keine Beschreibung eingeben? Bestimmte Benutzer mit k\\u00f6rperlichen Einschr\\u00e4nkungen k\\u00f6nnen so nicht darauf zugreifen, ebenso solche, die einen Textbrowser benutzen oder die Anzeige von Bildern deaktiviert haben.\",example_img:\"Aussehen der Vorschau\",misc:\"Verschiedenes\",mouseout:\"bei keinem Mauskontakt\",mouseover:\"bei Mauskontakt\",alt_image:\"Alternatives Bild\",swap_image:\"Bild austauschen\",map:\"Image-Map\",id:\"ID\",rtl:\"Rechts nach links\",ltr:\"Links nach rechts\",classes:\"Klassen\",style:\"Format\",long_desc:\"Ausf\\u00fchrliche Beschreibung\",langcode:\"Sprachcode\",langdir:\"Schriftrichtung\",constrain_proportions:\"Seitenverh\\u00e4ltnis beibehalten\",preview:\"Vorschau\",title:\"Titel\",general:\"Allgemein\",tab_advanced:\"Erweitert\",tab_appearance:\"Aussehen\",tab_general:\"Allgemein\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/el_dlg.js",
    "content": "tinyMCE.addI18n('el.advimage_dlg',{\"image_list\":\"\\u039b\\u03af\\u03c3\\u03c4\\u03b1 \\u03b5\\u03b9\\u03ba\\u03cc\\u03bd\\u03c9\\u03bd\",\"align_right\":\"\\u0394\\u03b5\\u03be\\u03b9\\u03ac\",\"align_left\":\"\\u0391\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac\",\"align_textbottom\":\"\\u039a\\u03b5\\u03af\\u03bc\\u03b5\\u03bd\\u03bf \\u03ba\\u03ac\\u03c4\\u03c9\",\"align_texttop\":\"\\u039a\\u03b5\\u03af\\u03bc\\u03b5\\u03bd\\u03bf \\u03c0\\u03ac\\u03bd\\u03c9\",\"align_bottom\":\"\\u039a\\u03ac\\u03c4\\u03c9\",\"align_middle\":\"\\u039c\\u03ad\\u03c3\\u03b7\",\"align_top\":\"\\u03a0\\u03ac\\u03bd\\u03c9\",\"align_baseline\":\"\\u0393\\u03c1\\u03b1\\u03bc\\u03bc\\u03ae \\u03c3\\u03c4\\u03bf\\u03af\\u03c7\\u03b9\\u03c3\\u03b7\\u03c2 \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ac\\u03c4\\u03c9\\u03bd\",align:\"\\u03a3\\u03c4\\u03bf\\u03af\\u03c7\\u03b9\\u03c3\\u03b7\",hspace:\"\\u0391\\u03c0\\u03cc\\u03c3\\u03c4\\u03b1\\u03c3\\u03b7 \\u03bf\\u03c1\\u03b9\\u03b6\\u03cc\\u03bd\\u03c4\\u03b9\\u03b1\",vspace:\"\\u0391\\u03c0\\u03cc\\u03c3\\u03c4\\u03b1\\u03c3\\u03b7 \\u03ba\\u03ac\\u03b8\\u03b5\\u03c4\\u03b7\",dimensions:\"\\u0394\\u03b9\\u03b1\\u03c3\\u03c4\\u03ac\\u03c3\\u03b5\\u03b9\\u03c2\",border:\"\\u03a0\\u03bb\\u03b1\\u03af\\u03c3\\u03b9\\u03bf\",list:\"\\u039b\\u03af\\u03c3\\u03c4\\u03b1 \\u03b5\\u03b9\\u03ba\\u03cc\\u03bd\\u03c9\\u03bd\",alt:\"\\u03a0\\u03b5\\u03c1\\u03b9\\u03b3\\u03c1\\u03b1\\u03c6\\u03ae \\u03b5\\u03b9\\u03ba\\u03cc\\u03bd\\u03b1\\u03c2\",src:\"\\u0394\\u03b9\\u03b1\\u03b4\\u03c1\\u03bf\\u03bc\\u03ae URL \\u03b5\\u03b9\\u03ba\\u03cc\\u03bd\\u03b1\\u03c2\",\"dialog_title\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae/\\u03b5\\u03c0\\u03b5\\u03be\\u03b5\\u03c1\\u03b3\\u03b1\\u03c3\\u03af\\u03b1 \\u03b5\\u03b9\\u03ba\\u03cc\\u03bd\\u03b1\\u03c2\",\"missing_alt\":\"\\u03a3\\u03af\\u03b3\\u03bf\\u03c5\\u03c1\\u03b1 \\u03b8\\u03ad\\u03bb\\u03b5\\u03c4\\u03b5 \\u03bd\\u03b1 \\u03c3\\u03c5\\u03bd\\u03b5\\u03c7\\u03af\\u03c3\\u03b5\\u03c4\\u03b5 \\u03c7\\u03c9\\u03c1\\u03af\\u03c2 \\u03c0\\u03b5\\u03c1\\u03b9\\u03b3\\u03c1\\u03b1\\u03c6\\u03ae \\u03b5\\u03b9\\u03ba\\u03cc\\u03bd\\u03b1\\u03c2; \\u03a7\\u03c9\\u03c1\\u03af\\u03c2 \\u03b1\\u03c5\\u03c4\\u03ae\\u03bd\\u03b7 \\u03b5\\u03b9\\u03ba\\u03cc\\u03bd\\u03b1 \\u03bc\\u03c0\\u03bf\\u03c1\\u03b5\\u03af \\u03bd\\u03b1 \\u03bc\\u03b7\\u03bd \\u03b5\\u03af\\u03bd\\u03b1\\u03b9 \\u03c0\\u03c1\\u03bf\\u03c3\\u03b2\\u03ac\\u03c3\\u03b9\\u03bc\\u03b7 \\u03c3\\u03b5 \\u03ba\\u03ac\\u03c0\\u03bf\\u03b9\\u03bf\\u03c5\\u03c2 \\u03c7\\u03c1\\u03ae\\u03c3\\u03c4\\u03b5\\u03c2 \\u03bc\\u03b5 \\u03c0\\u03c1\\u03bf\\u03b2\\u03bb\\u03ae\\u03bc\\u03b1\\u03c4\\u03b1, \\u03ae \\u03c3\\'\\u03b1\\u03c5\\u03c4\\u03bf\\u03cd\\u03c2 \\u03c0\\u03bf\\u03c5 \\u03c7\\u03c1\\u03b7\\u03c3\\u03b9\\u03bc\\u03bf\\u03c0\\u03bf\\u03b9\\u03bf\\u03cd\\u03bd \\u03c6\\u03c5\\u03bb\\u03bb\\u03bf\\u03bc\\u03b5\\u03c4\\u03c1\\u03b7\\u03c4\\u03ae \\u03ba\\u03b5\\u03b9\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5, \\u03ae \\u03b2\\u03bb\\u03ad\\u03c0\\u03bf\\u03c5\\u03bd \\u03c4\\u03bf \\u0399\\u03bd\\u03c4\\u03b5\\u03c1\\u03bd\\u03b5\\u03c4 \\u03c7\\u03c9\\u03c1\\u03af\\u03c2 \\u03b5\\u03b9\\u03ba\\u03cc\\u03bd\\u03b5\\u03c2.\",\"example_img\":\"\\u0394\\u03bf\\u03ba\\u03b9\\u03bc\\u03b1\\u03c3\\u03c4\\u03b9\\u03ba\\u03ae \\u03b5\\u03b9\\u03ba\\u03cc\\u03bd\\u03b1\",misc:\"\\u0394\\u03b9\\u03ac\\u03c6\\u03bf\\u03c1\\u03b1\",mouseout:\"\\u03b3\\u03b9\\u03b1 mouse out\",mouseover:\"\\u03b3\\u03b9\\u03b1 mouse over\",\"alt_image\":\"\\u0395\\u03bd\\u03b1\\u03bb\\u03bb\\u03b1\\u03ba\\u03c4\\u03b9\\u03ba\\u03ae \\u03b5\\u03b9\\u03ba\\u03cc\\u03bd\\u03b1\",\"swap_image\":\"\\u0391\\u03bd\\u03c4\\u03b1\\u03bb\\u03bb\\u03b1\\u03b3\\u03ae \\u03b5\\u03b9\\u03ba\\u03cc\\u03bd\\u03b1\\u03c2\",map:\"\\u03a7\\u03ac\\u03c1\\u03c4\\u03b7\\u03c2 \\u03b5\\u03b9\\u03ba\\u03cc\\u03bd\\u03b1\\u03c2\",id:\"Id\",rtl:\"\\u0394\\u03b5\\u03be\\u03b9\\u03ac \\u03c0\\u03c1\\u03bf\\u03c2 \\u03b1\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac\",ltr:\"\\u0391\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac \\u03c0\\u03c1\\u03bf\\u03c2 \\u03b4\\u03b5\\u03be\\u03b9\\u03ac\",classes:\"\\u039a\\u03bb\\u03ac\\u03c3\\u03b5\\u03b9\\u03c2\",style:\"\\u03a3\\u03c4\\u03c5\\u03bb\",\"long_desc\":\"\\u03a3\\u03cd\\u03bd\\u03b4\\u03b5\\u03c3\\u03bc\\u03bf\\u03c2 \\u03c0\\u03bb\\u03ae\\u03c1\\u03bf\\u03c5\\u03c2 \\u03c0\\u03b5\\u03c1\\u03b9\\u03b3\\u03c1\\u03b1\\u03c6\\u03ae\\u03c2\",langcode:\"\\u039a\\u03c9\\u03b4\\u03b9\\u03ba\\u03cc\\u03c2 \\u03b3\\u03bb\\u03ce\\u03c3\\u03c3\\u03b1\\u03c2\",langdir:\"\\u039a\\u03b1\\u03c4\\u03b5\\u03cd\\u03b8\\u03c5\\u03bd\\u03c3\\u03b7 \\u03b3\\u03bb\\u03ce\\u03c3\\u03c3\\u03b1\\u03c2\",\"constrain_proportions\":\"\\u0394\\u03b9\\u03b1\\u03c4\\u03ae\\u03c1\\u03b7\\u03c3\\u03b7 \\u03b1\\u03bd\\u03b1\\u03bb\\u03bf\\u03b3\\u03af\\u03b1\\u03c2 \\u03c0\\u03bb. - \\u03cd\\u03c8\\u03bf\\u03c5\\u03c2\",preview:\"\\u03a0\\u03c1\\u03bf\\u03b5\\u03c0\\u03b9\\u03c3\\u03ba\\u03cc\\u03c0\\u03b7\\u03c3\\u03b7\",title:\"\\u03a4\\u03af\\u03c4\\u03bb\\u03bf\\u03c2\",general:\"\\u0393\\u03b5\\u03bd\\u03b9\\u03ba\\u03ac\",\"tab_advanced\":\"\\u0393\\u03b9\\u03b1 \\u03c0\\u03c1\\u03bf\\u03c7\\u03c9\\u03c1\\u03b7\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5\\u03c2\",\"tab_appearance\":\"\\u0395\\u03bc\\u03c6\\u03ac\\u03bd\\u03b9\\u03c3\\u03b7\",\"tab_general\":\"\\u0393\\u03b5\\u03bd\\u03b9\\u03ba\\u03ac\",width:\"\\u03a0\\u03bb\\u03ac\\u03c4\\u03bf\\u03c2\",height:\"\\u038e\\u03c8\\u03bf\\u03c2\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/en_dlg.js",
    "content": "tinyMCE.addI18n('en.advimage_dlg',{\"image_list\":\"Image List\",\"align_right\":\"Right\",\"align_left\":\"Left\",\"align_textbottom\":\"Text Bottom\",\"align_texttop\":\"Text Top\",\"align_bottom\":\"Bottom\",\"align_middle\":\"Middle\",\"align_top\":\"Top\",\"align_baseline\":\"Baseline\",align:\"Alignment\",hspace:\"Horizontal Space\",vspace:\"Vertical Space\",dimensions:\"Dimensions\",border:\"Border\",list:\"Image List\",alt:\"Image Description\",src:\"Image URL\",\"dialog_title\":\"Insert/Edit Image\",\"missing_alt\":\"Are you sure you want to continue without including an Image Description? Without it the image may not be accessible to some users with disabilities, or to those using a text browser, or browsing the Web with images turned off.\",\"example_img\":\"Appearance Preview Image\",misc:\"Miscellaneous\",mouseout:\"For Mouse Out\",mouseover:\"For Mouse Over\",\"alt_image\":\"Alternative Image\",\"swap_image\":\"Swap Image\",map:\"Image Map\",id:\"ID\",rtl:\"Right to Left\",ltr:\"Left to Right\",classes:\"Classes\",style:\"Style\",\"long_desc\":\"Long Description Link\",langcode:\"Language Code\",langdir:\"Language Direction\",\"constrain_proportions\":\"Constrain Proportions\",preview:\"Preview\",title:\"Title\",general:\"General\",\"tab_advanced\":\"Advanced\",\"tab_appearance\":\"Appearance\",\"tab_general\":\"General\",width:\"Width\",height:\"Height\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/es_dlg.js",
    "content": "tinyMCE.addI18n('es.advimage_dlg',{image_list:\"Lista de imagen\",align_right:\"Derecha\",align_left:\"Izquierda\",align_textbottom:\"Texto abajo\",align_texttop:\"Texto arriba\",align_bottom:\"Debajo\",align_middle:\"Medio\",align_top:\"Arriba\",align_baseline:\"L\\u00ednea base\",align:\"Alineaci\\u00f3n\",hspace:\"Espacio horizontal\",vspace:\"Espacio vertical\",dimensions:\"Dimensiones\",border:\"Bordes\",list:\"Lista de imagen\",alt:\"Descripci\\u00f3n de la imagen\",src:\"URL de la imagen\",dialog_title:\"Insertar/editar imagen\",missing_alt:\" \\u00bfEsta seguro de continuar sin introducir una descripci\\u00f3n a la imagen? Sin ella puede no ser accesible para usuarios con discapacidades, o para aquellos que usen navegadores de modo texto, o tengan deshabilitadas las im\\u00e1genes de la p\\u00e1gina.\",example_img:\"Vista previa de la imagen\",misc:\"Miscel\\u00e1neo\",mouseout:\"para mouseout\",mouseover:\"para mouseover\",alt_image:\"Imagen alternativa\",swap_image:\"Intercambiar imagen\",map:\"Mapa de imagen\",id:\"Id\",rtl:\"Derecha a izquierda\",ltr:\"Izquierda a derecha\",classes:\"Clases\",style:\"Estilos\",long_desc:\"V\\u00ednculo para descripci\\u00f3n larga\",langcode:\"C\\u00f3digo del lenguaje\",langdir:\"Direcci\\u00f3n del lenguaje\",constrain_proportions:\"Bloquear relaci\\u00f3n de aspecto\",preview:\"Vista previa\",title:\"T\\u00edtulo\",general:\"General\",tab_advanced:\"Avanzado\",tab_appearance:\"Apariencia\",tab_general:\"General\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/fr_dlg.js",
    "content": "tinyMCE.addI18n('fr.advimage_dlg',{image_list:\"Liste d\\'images\",align_right:\"Droite (flottant)\",align_left:\"Gauche (flottant)\",align_textbottom:\"Texte en bas\",align_texttop:\"Texte en haut\",align_bottom:\"En bas\",align_middle:\"Au milieu\",align_top:\"En haut\",align_baseline:\"Normal\",align:\"Alignement\",hspace:\"Espacement horizontal\",vspace:\"Espacement vertical\",dimensions:\"Dimensions\",border:\"Bordure\",list:\"Liste d\\'images\",alt:\"Description de l\\'image\",src:\"URL de l\\'image\",dialog_title:\"Ins\\u00e9rer / \\u00e9diter une image\",missing_alt:\"\\u00cates-vous s\\u00fbr de vouloir continuer sans d\\u00e9finir de description pour l\\'image ? Sans elle, l\\'image peut ne pas \\u00eatre accessible \\u00e0 certains utilisateurs handicap\\u00e9s, ceux utilisant un navigateur texte ou ceux qui naviguent sans affichage des images.\",example_img:\"Apparence de l\\'image\",misc:\"Divers\",mouseout:\"\\u00e0 la sortie de la souris\",mouseover:\"au survol de la souris\",alt_image:\"Image alternative\",swap_image:\"Image de remplacement\",map:\"Image cliquable\",id:\"Id\",rtl:\"De droite \\u00e0 gauche\",ltr:\"De gauche \\u00e0 droite\",classes:\"Classes\",style:\"Style\",long_desc:\"Description longue du lien\",langcode:\"Code de la langue\",langdir:\"Sens de lecture\",constrain_proportions:\"Conserver les proportions\",preview:\"Pr\\u00e9visualisation\",title:\"Titre\",general:\"G\\u00e9n\\u00e9ral\",tab_advanced:\"Avanc\\u00e9\",tab_appearance:\"Apparence\",tab_general:\"G\\u00e9n\\u00e9ral\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/he_dlg.js",
    "content": "tinyMCE.addI18n('he.advimage_dlg',{\"image_list\":\"\\u05e8\\u05e9\\u05d9\\u05de\\u05ea \\u05ea\\u05de\\u05d5\\u05e0\\u05d5\\u05ea\",\"align_right\":\"\\u05dc\\u05d9\\u05de\\u05d9\\u05df\",\"align_left\":\"\\u05dc\\u05e9\\u05de\\u05d0\\u05dc\",\"align_textbottom\":\"\\u05d8\\u05e7\\u05e1\\u05d8 \\u05ea\\u05d7\\u05ea\\u05d5\\u05df\",\"align_texttop\":\"\\u05d8\\u05e7\\u05e1\\u05d8 \\u05e2\\u05dc\\u05d9\\u05d5\\u05df\",\"align_bottom\":\"\\u05ea\\u05d7\\u05ea\\u05d9\\u05ea\",\"align_middle\":\"\\u05d0\\u05de\\u05e6\\u05e2\",\"align_top\":\"\\u05e2\\u05dc\\u05d9\\u05d5\\u05df\",\"align_baseline\":\"\\u05e7\\u05d5 \\u05d1\\u05e1\\u05d9\\u05e1\\u05d9\",align:\"\\u05d9\\u05e9\\u05d5\\u05e8\",hspace:\"\\u05e7\\u05d5 \\u05d0\\u05d5\\u05e4\\u05e7\\u05d9\",vspace:\"\\u05e7\\u05d5 \\u05d0\\u05e0\\u05db\\u05d9\",dimensions:\"\\u05de\\u05d9\\u05de\\u05d3\\u05d9\\u05dd\",border:\"\\u05d2\\u05d1\\u05d5\\u05dc\",list:\"\\u05e8\\u05e9\\u05d9\\u05de\\u05ea \\u05ea\\u05de\\u05d5\\u05e0\\u05d5\\u05ea\",alt:\"\\u05ea\\u05d9\\u05d0\\u05d5\\u05e8 \\u05d4\\u05ea\\u05de\\u05d5\\u05e0\\u05d4\",src:\"URL \\u05e9\\u05dc \\u05d4\\u05ea\\u05de\\u05d5\\u05e0\\u05d4\",\"dialog_title\":\"\\u05d4\\u05d5\\u05e1\\u05e4\\u05d4/\\u05e2\\u05e8\\u05d9\\u05db\\u05ea \\u05ea\\u05de\\u05d5\\u05e0\\u05d4\",\"missing_alt\":\"\\u05dc\\u05d4\\u05de\\u05e9\\u05d9\\u05da \\u05de\\u05d1\\u05dc\\u05d9 \\u05dc\\u05d4\\u05d5\\u05e1\\u05d9\\u05e3 \\u05ea\\u05d9\\u05d0\\u05d5\\u05e8 \\u05dc\\u05ea\\u05de\\u05d5\\u05e0\\u05d4?\",\"example_img\":\"\\u05ea\\u05e6\\u05d5\\u05d2\\u05d4 \\u05de\\u05e7\\u05d3\\u05d9\\u05de\\u05d4 \\u05e9\\u05dc \\u05d4\\u05ea\\u05de\\u05d5\\u05e0\\u05d4\",misc:\"\\u05e9\\u05d5\\u05e0\\u05d5\\u05ea\",mouseout:\"\\u05d4\\u05e1\\u05de\\u05df \\u05e2\\u05d1\\u05e8 \\u05d0\\u05ea \\u05d4\\u05ea\\u05de\\u05d5\\u05e0\\u05d4\",mouseover:\"\\u05d1\\u05e2\\u05ea \\u05de\\u05e2\\u05d1\\u05e8 \\u05d4\\u05e1\\u05de\\u05df \\u05e2\\u05dc \\u05d4\\u05ea\\u05de\\u05d5\\u05e0\\u05d4\",\"alt_image\":\"\\u05ea\\u05de\\u05d5\\u05e0\\u05d4 \\u05d7\\u05dc\\u05d9\\u05e4\\u05d9\\u05ea\",\"swap_image\":\"\\u05d4\\u05d7\\u05dc\\u05e4\\u05ea \\u05ea\\u05de\\u05d5\\u05e0\\u05d4\",map:\"Image map\",id:\"Id\",rtl:\"\\u05de\\u05d9\\u05de\\u05d9\\u05df \\u05dc\\u05e9\\u05de\\u05d0\\u05dc\",ltr:\"\\u05de\\u05e9\\u05de\\u05d0\\u05dc \\u05dc\\u05d9\\u05de\\u05d9\\u05df\",classes:\"Classes\",style:\"\\u05e1\\u05d2\\u05e0\\u05d5\\u05df\",\"long_desc\":\"\\u05ea\\u05d9\\u05d0\\u05d5\\u05e8 \\u05e7\\u05d9\\u05e9\\u05d5\\u05e8 \\u05d0\\u05e8\\u05d5\\u05da\",langcode:\"\\u05e7\\u05d5\\u05d3 \\u05d4\\u05e9\\u05e4\\u05d4\",langdir:\"\\u05db\\u05d9\\u05d5\\u05d5\\u05df \\u05d4\\u05e9\\u05e4\\u05d4\",\"constrain_proportions\":\"\\u05e9\\u05de\\u05d9\\u05e8\\u05d4 \\u05e2\\u05dc \\u05e4\\u05e8\\u05d5\\u05e4\\u05d5\\u05e8\\u05e6\\u05d9\\u05d5\\u05ea\",preview:\"\\u05ea\\u05e6\\u05d5\\u05d2\\u05d4 \\u05de\\u05e7\\u05d3\\u05d9\\u05de\\u05d4\",title:\"\\u05db\\u05d5\\u05ea\\u05e8\\u05ea\",general:\"\\u05db\\u05dc\\u05dc\\u05d9\",\"tab_advanced\":\"\\u05de\\u05ea\\u05e7\\u05d3\\u05dd\",\"tab_appearance\":\"\\u05de\\u05e8\\u05d0\\u05d4\",\"tab_general\":\"\\u05db\\u05dc\\u05dc\\u05d9\",width:\"\\u05e8\\u05d5\\u05d7\\u05d1\",height:\"\\u05d2\\u05d5\\u05d1\\u05d4\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/hr_dlg.js",
    "content": "tinyMCE.addI18n('hr.advimage_dlg',{image_list:\"Lista slika\",align_right:\"Desno\",align_left:\"Lijevo\",align_textbottom:\"Dno teksta\",align_texttop:\"Vrh teksta\",align_bottom:\"Dno\",align_middle:\"Sredina\",align_top:\"Vrh\",align_baseline:\"Osnovna linija\",align:\"Poravnavanje\",hspace:\"Vodoravni razmak\",vspace:\"Okomiti razmak\",dimensions:\"Dimenzije\",border:\"Obrub\",list:\"Lista slika\",alt:\"Opis slike\",src:\"URL slike\",dialog_title:\"Umetni/uredi sliku\",missing_alt:\"Jeste li sigurni da \\u017eelite izostaviti opis slike? Slika mo\\u017ee biti nedostupna ljudima s pote\\u0161ko\\u0107ama ili onima koji koriste preglednike bez prikaza slika.\",example_img:\"Prikaz slike\",misc:\"Razno\",mouseout:\"za izlazak mi\\u0161a van slike\",mouseover:\"za prelazak mi\\u0161a preko slike\",alt_image:\"Alternativna slika\",swap_image:\"Izmjenjiva slika\",map:\"Karta slike\",id:\"Id\",rtl:\"S desna na lijevo\",ltr:\"S lijeva na desno\",classes:\"Klase\",style:\"Stil\",long_desc:\"Poveznica dugog opisa\",langcode:\"Kod jezika\",langdir:\"Smjer jezika\",constrain_proportions:\"Zadr\\u017ei proporcije\",preview:\"Prikaz\",title:\"Naslov\",general:\"Osnovno\",tab_advanced:\"Napredno\",tab_appearance:\"Izgled\",tab_general:\"Osnovno\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/hu_dlg.js",
    "content": "tinyMCE.addI18n('hu.advimage_dlg',{\"image_list\":\"K\\u00e9plista\",\"align_right\":\"Jobbra\",\"align_left\":\"Balra\",\"align_textbottom\":\"Sz\\u00f6veg alj\\u00e1hoz\",\"align_texttop\":\"Sz\\u00f6veg tetej\\u00e9hez\",\"align_bottom\":\"Lentre\",\"align_middle\":\"K\\u00f6z\\u00e9pre\",\"align_top\":\"Fentre\",\"align_baseline\":\"Alapvonalhoz\",align:\"Igaz\\u00edt\\u00e1s\",hspace:\"V\\u00edzszintes t\\u00e1vols\\u00e1g\",vspace:\"F\\u00fcgg\\u0151leges t\\u00e1vols\\u00e1g\",dimensions:\"M\\u00e9retek\",border:\"Keret\",list:\"K\\u00e9plista\",alt:\"K\\u00e9p helyettes\\u00edt\\u0151 sz\\u00f6vege\",src:\"K\\u00e9p internet c\\u00edme\",\"dialog_title\":\"K\\u00e9p besz\\u00far\\u00e1sa/szerkeszt\\u00e9se\",\"missing_alt\":\"Biztosan folytatja k\\u00e9pet le\\u00edr\\u00f3 sz\\u00f6veg n\\u00e9lk\\u00fcl? En\\u00e9lk\\u00fcl a fogyat\\u00e9koss\\u00e1ggal \\u00e9l\\u0151k, sz\\u00f6veges b\\u00f6ng\\u00e9sz\\u0151t haszn\\u00e1l\\u00f3k \\u00e9s a k\\u00e9pek megjelen\\u00edt\\u00e9s\\u00e9t letilt\\u00f3 felhaszn\\u00e1l\\u00f3k h\\u00e1tr\\u00e1nyba ker\\u00fclnek.\",\"example_img\":\"El\\u0151n\\u00e9zeti k\\u00e9p megjelen\\u00edt\\u00e9se\",misc:\"Vegyes\",mouseout:\"K\\u00e9p az eg\\u00e9rkurzor lev\\u00e9telekor\",mouseover:\"K\\u00e9p az eg\\u00e9rkurzor f\\u00f6l\\u00e9vitelekor\",\"alt_image\":\"Alternat\\u00edv k\\u00e9p\",\"swap_image\":\"K\\u00e9pcsere\",map:\"K\\u00e9p t\\u00e9rk\\u00e9p\",id:\"ID\",rtl:\"Jobbr\\u00f3l balra\",ltr:\"Balr\\u00f3l jobbra\",classes:\"Oszt\\u00e1lyok\",style:\"CSS St\\u00edlus\",\"long_desc\":\"B\\u0151vebb le\\u00edr\\u00e1s\\u00fa link\",langcode:\"Nyelv k\\u00f3d\",langdir:\"Nyelv \\u00edr\\u00e1s ir\\u00e1ny\",\"constrain_proportions\":\"Ar\\u00e1nytart\\u00e1s\",preview:\"El\\u0151n\\u00e9zet\",title:\"C\\u00edm\",general:\"\\u00c1ltal\\u00e1nos\",\"tab_advanced\":\"Halad\\u00f3\",\"tab_appearance\":\"Megjelen\\u00e9s\",\"tab_general\":\"\\u00c1ltal\\u00e1nos\",width:\"Sz\\u00e9less\\u00e9g\",height:\"Magass\\u00e1g\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/hy_dlg.js",
    "content": "tinyMCE.addI18n('hy.advimage_dlg',{\"image_list\":\"\\u0546\\u056f\\u0561\\u0580\\u0576\\u0565\\u0580\\u056b \\u0581\\u0561\\u0576\\u056f\",\"align_right\":\"\\u0538\\u057d\\u057f \\u0561\\u057b \\u0565\\u0566\\u0580\\u056b\",\"align_left\":\"\\u0538\\u057d\\u057f \\u0571\\u0561\\u056d \\u0565\\u0566\\u0580\\u056b\",\"align_textbottom\":\"\\u0538\\u057d\\u057f \\u057f\\u0565\\u0584\\u057d\\u057f\\u056b \\u057d\\u057f\\u0578\\u0580\\u056b\\u0576 \\u0565\\u0566\\u0580\\u056b\",\"align_texttop\":\"\\u0538\\u057d\\u057f \\u057f\\u0565\\u0584\\u057d\\u057f\\u056b \\u057e\\u0565\\u0580\\u056b\\u0576 \\u0565\\u0566\\u0580\\u056b\",\"align_bottom\":\"\\u0538\\u057d\\u057f \\u057d\\u057f\\u0578\\u0580\\u056b\\u0576 \\u0565\\u0566\\u0580\\u056b\",\"align_middle\":\"\\u053f\\u0565\\u0576\\u057f\\u0580\\u0578\\u0576\\u0561\\u0581\\u0576\\u0565\\u056c\",\"align_top\":\"\\u0538\\u057d\\u057f \\u057e\\u0565\\u0580\\u056b \\u0565\\u0566\\u0580\\u056b\",\"align_baseline\":\"\\u0538\\u057d\\u057f \\u0562\\u0561\\u0566\\u0561\\u0575\\u056b\\u0576 \\u0563\\u056e\\u056b\",align:\"\\u0540\\u0561\\u057e\\u0561\\u057d\\u0561\\u0580\\u0565\\u0581\\u0578\\u0582\\u0574\",hspace:\"\\u0540\\u0578\\u0580\\u056b\\u0566. \\u0570\\u0565\\u057c\\u0561\\u0581\\u0578\\u0582\\u0574\",vspace:\"\\u0548\\u0582\\u0572\\u0572. \\u0570\\u0565\\u057c\\u0561\\u0581\\u0578\\u0582\\u0574\",dimensions:\"\\u0549\\u0561\\u0583\\u057d\\u0565\\u0580\",border:\"\\u0535\\u0566\\u0580\",list:\"\\u0546\\u056f\\u0561\\u0580\\u0576\\u0565\\u0580\\u056b \\u0581\\u0561\\u0576\\u056f\",alt:\"\\u0546\\u056f\\u0561\\u0580\\u0561\\u0563\\u0580\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\",src:\"\\u0546\\u056f\\u0561\\u0580\\u056b \\u0570\\u0561\\u057d\\u0581\\u0565\",\"dialog_title\":\"\\u0531\\u057e\\u0565\\u056c\\u0561\\u0581\\u0576\\u0565\\u056c / \\u0583\\u0578\\u0583\\u0578\\u056d\\u0565\\u056c \\u0576\\u056f\\u0561\\u0580\",\"missing_alt\":\"\\u0534\\u0578\\u0582\\u0584 \\u056b\\u0580\\u0578\\u055e\\u0584 \\u0579\\u0565\\u0584 \\u0581\\u0561\\u0576\\u056f\\u0561\\u0576\\u0578\\u0582\\u0574 \\u0576\\u056f\\u0561\\u0580\\u0561\\u0563\\u0580\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576 \\u0576\\u0565\\u0580\\u0561\\u057c\\u0565\\u056c\\u0589\",\"example_img\":\"\\u0546\\u056f\\u0561\\u0580\\u056b \\u0564\\u056b\\u057f\\u0574\\u0561\\u0576 \\u057f\\u0565\\u057d\\u0584\",misc:\"\\u0531\\u0575\\u056c\",mouseout:\"\\u0570\\u0565\\u057c\\u0561\\u0581\\u0574\\u0561\\u0576 \\u057a\\u0561\\u0570\\u056b\\u0576\",mouseover:\"\\u0544\\u0578\\u057f\\u0565\\u0581\\u0574\\u0561\\u0576 \\u057a\\u0561\\u0570\\u056b\\u0576\",\"alt_image\":\"\\u0531\\u056c\\u057f\\u0565\\u0580\\u0576\\u0561\\u057f\\u056b\\u057e \\u0576\\u056f\\u0561\\u0580\",\"swap_image\":\"Swap\",map:\"\\u0546\\u056f\\u0561\\u0580\\u056b map\",id:\"Id\",rtl:\"\\u0531\\u057b\\u056b\\u0581 \\u0571\\u0561\\u056d\",ltr:\"\\u0541\\u0561\\u056d\\u056b\\u0581 \\u0561\\u057b\",classes:\"\\u0534\\u0561\\u057d\\u0565\\u0580\",style:\"\\u0548\\u0573\",\"long_desc\":\"\\u0544\\u0561\\u0576\\u0580\\u0561\\u0574\\u0561\\u057d\\u0576 \\u0562\\u0561\\u0581\\u0561\\u057f\\u0580\\u0578\\u0582\\u0569\\u0575\\u0561\\u0576 \\u0570\\u0572\\u0578\\u0582\\u0574\",langcode:\"\\u053c\\u0565\\u0566\\u057e\\u056b \\u056f\\u0578\\u0564\",langdir:\"\\u053c\\u0565\\u0566\\u057e\\u056b \\u0578\\u0582\\u0572\\u0572\\u057e\\u0561\\u056e\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\\u0568\",\"constrain_proportions\":\"\\u054a\\u0561\\u0570\\u057a\\u0561\\u0576\\u0565\\u056c \\u0579\\u0561\\u0583\\u0565\\u0580\\u056b \\u0570\\u0561\\u0580\\u0561\\u0562\\u0565\\u0580\\u0561\\u056f\\u0581\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\\u0568\",preview:\"\\u0546\\u0561\\u056d\\u0561\\u0564\\u056b\\u057f\\u0578\\u0582\\u0574\",title:\"\\u054e\\u0565\\u0580\\u0576\\u0561\\u0563\\u056b\\u0580\",general:\"\\u0540\\u056b\\u0574\\u0576\\u0561\\u056f\\u0561\\u0576\",\"tab_advanced\":\"\\u053c\\u0580\\u0561\\u0581\\u0578\\u0582\\u0581\\u056b\\u0579\",\"tab_appearance\":\"\\u054f\\u0565\\u057d\\u0584\",\"tab_general\":\"\\u0540\\u056b\\u0574\\u0576\\u0561\\u056f\\u0561\\u0576\",width:\"Width\",height:\"Height\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/it_dlg.js",
    "content": "tinyMCE.addI18n('it.advimage_dlg',{\"image_list\":\"Lista immagini\",\"align_right\":\"A destra\",\"align_left\":\"A sinistra\",\"align_textbottom\":\"In basso al testo\",\"align_texttop\":\"In alto al testo\",\"align_bottom\":\"In basso\",\"align_middle\":\"In mezzo\",\"align_top\":\"In alto\",\"align_baseline\":\"Alla base\",align:\"Allineamento\",hspace:\"Spaziatura orizzontale\",vspace:\"Spaziatura verticale\",dimensions:\"Dimensioni\",border:\"Bordo\",list:\"Lista immagini\",alt:\"Descrizione immagine\",src:\"URL immagine\",\"dialog_title\":\"Inserisci/modifica immagine\",\"missing_alt\":\"Sicuro di continuare senza includere una descrizione dell\\'immagine? Senza di essa l\\'immagine pu\\u00f2 non essere accessibile ad alcuni utenti con disabilit\\u00e0, o per coloro che usano un browser testuale oppure che hanno disabilitato la visualizzazione delle immagini nel loro browser.\",\"example_img\":\"Anteprima aspetto immagine\",misc:\"Impostazioni varie\",mouseout:\"quando mouse fuori\",mouseover:\"quando mouse sopra\",\"alt_image\":\"Immagine alternativa\",\"swap_image\":\"Sostituisci immagine\",map:\"Immagine come mappa\",id:\"Id\",rtl:\"Destra verso sinistraa\",ltr:\"Sinistra verso destra\",classes:\"Classe\",style:\"Stile\",\"long_desc\":\"Descrizione del collegamento\",langcode:\"codice lingua\",langdir:\"Direzione testo\",\"constrain_proportions\":\"Mantieni proporzioni\",preview:\"Anteprima\",title:\"Titolo\",general:\"Generale\",\"tab_advanced\":\"Avanzate\",\"tab_appearance\":\"Aspetto\",\"tab_general\":\"Generale\",width:\"Larghezza\",height:\"Altezza\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/ka_dlg.js",
    "content": "tinyMCE.addI18n('ka.advimage_dlg',{\"image_list\":\"\\u10d2\\u10d0\\u10db\\u10dd\\u10e1\\u10d0\\u10ee\\u10e3\\u10da\\u10d4\\u10d1\\u10d4\\u10d1\\u10d8\\u10e1 \\u10e1\\u10d8\\u10d0\",\"align_right\":\"\\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10d4\\u10dc\\u10d0 \\u10d9\\u10d8\\u10d3\\u10d4\\u10d6\\u10d4\",\"align_left\":\"\\u10db\\u10d0\\u10e0\\u10ea\\u10ee\\u10d4\\u10dc\\u10d0 \\u10d9\\u10d8\\u10d3\\u10d4\\u10d6\\u10d4\",\"align_textbottom\":\"\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\\u10e1 \\u10e5\\u10d5\\u10d4\\u10d3\\u10d0 \\u10d9\\u10d8\\u10d3\\u10d4\\u10d6\\u10d4\",\"align_texttop\":\"\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\\u10e1 \\u10d6\\u10d4\\u10d3\\u10d0 \\u10d9\\u10d8\\u10d3\\u10d4\\u10d6\\u10d4\",\"align_bottom\":\"\\u10e5\\u10d5\\u10d4\\u10d3\\u10d0 \\u10d9\\u10d8\\u10d3\\u10d4\\u10d6\\u10d4\",\"align_middle\":\"\\u10ea\\u10d4\\u10dc\\u10e2\\u10e0\\u10d6\\u10d4\",\"align_top\":\"\\u10d6\\u10d4\\u10d3\\u10d0 \\u10d9\\u10d8\\u10d3\\u10d4\\u10d6\\u10d4\",\"align_baseline\":\"\\u10e1\\u10d0\\u10d1\\u10d0\\u10d6\\u10d8\\u10e1\\u10dd \\u10ee\\u10d0\\u10d6\\u10d6\\u10d4\",align:\"\\u10db\\u10dd\\u10e1\\u10ec\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\",hspace:\"\\u10f0\\u10dd\\u10e0\\u10d8\\u10d6\\u10dd\\u10dc\\u10e2. \\u10d3\\u10d0\\u10e8\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\",vspace:\"\\u10d5\\u10d4\\u10e0\\u10e2. \\u10d3\\u10d0\\u10e8\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\",dimensions:\"\\u10d6\\u10dd\\u10db\\u10d4\\u10d1\\u10d8\",border:\"\\u10e9\\u10d0\\u10e0\\u10e9\\u10dd\",list:\"\\u10e1\\u10d8\\u10d0\",alt:\"\\u10d0\\u10e6\\u10ec\\u10d4\\u10e0\\u10d0\",src:\"\\u10db\\u10d8\\u10e1\\u10d0\\u10db\\u10d0\\u10e0\\u10d7\\u10d8\",\"dialog_title\":\"\\u10d2\\u10d0\\u10db\\u10dd\\u10e1\\u10d0\\u10ee\\u10e3\\u10da\\u10d4\\u10d1\\u10d8\\u10e1 \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"missing_alt\":\"\\u10d0\\u10e0 \\u10d2\\u10e1\\u10e3\\u10e0\\u10d7 \\u10d0\\u10e6\\u10ec\\u10d4\\u10e0\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0? \\u10d0\\u10e6\\u10ec\\u10d4\\u10e0\\u10d8\\u10e1 \\u10d2\\u10d0\\u10e0\\u10d4\\u10e8\\u10d4 \\u10e1\\u10e3\\u10e0\\u10d0\\u10d7\\u10d8 \\u10e8\\u10d4\\u10d8\\u10eb\\u10da\\u10d4\\u10d1\\u10d0 \\u10d6\\u10dd\\u10d2\\u10d8 \\u10db\\u10dc\\u10d0\\u10ee\\u10d5\\u10d4\\u10da\\u10d8\\u10e1\\u10d7\\u10d5\\u10d8\\u10e1 \\u10d8\\u10e7\\u10dd\\u10e1 \\u10db\\u10d8\\u10e3\\u10ec\\u10d5\\u10d3\\u10dd\\u10db\\u10d4\\u10da\\u10d8.\",\"example_img\":\"\\u10d2\\u10d0\\u10db\\u10dd\\u10e1\\u10d0\\u10ee\\u10e3\\u10da\\u10d4\\u10d1\\u10d8\\u10e1 \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",misc:\"\\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d8\\u10d7\\u10d8 \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",mouseout:\"\\u10e1\\u10d8\\u10db\\u10e8\\u10d5\\u10d8\\u10d3\\u10d4\\u10e8\\u10d8\",mouseover:\"\\u10d9\\u10e3\\u10e0\\u10e1\\u10dd\\u10e0\\u10d8\\u10e1 \\u10db\\u10d8\\u10e7\\u10d5\\u10d0\\u10dc\\u10d8\\u10e1\\u10d0\\u10e1\",\"alt_image\":\"\\u10d0\\u10da\\u10e2\\u10d4\\u10e0\\u10dc\\u10d0\\u10e2\\u10d8\\u10e3\\u10da\\u10d8 \\u10d2\\u10d0\\u10db\\u10dd\\u10e1\\u10d0\\u10ee\\u10e3\\u10da\\u10d4\\u10d1\\u10d0\",\"swap_image\":\"\\u10d3\\u10d8\\u10dc\\u10d0\\u10db\\u10d8\\u10e3\\u10e0\\u10d8 \\u10d2\\u10d0\\u10db\\u10dd\\u10e1\\u10d0\\u10ee\\u10e3\\u10da\\u10d4\\u10d1\\u10d0\",map:\"\\u10d1\\u10db\\u10e3\\u10da\\u10d4\\u10d1\\u10d8\\u10e1 \\u10e0\\u10e3\\u10e5\\u10d0\",id:\"\\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d8\\u10e1 \\u10e1\\u10d0\\u10ee\\u10d4\\u10da\\u10ec\\u10dd\\u10d3\\u10d4\\u10d1\\u10d0\",rtl:\"\\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10dc\\u10d8\\u10d3\\u10d0\\u10dc \\u10db\\u10d0\\u10e0\\u10ea\\u10e1\\u10dc\\u10d8\\u10d5\",ltr:\"\\u10db\\u10d0\\u10e0\\u10ea\\u10ee\\u10dc\\u10d8\\u10d3\\u10d0\\u10dc \\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10dc\\u10d8\\u10d5\",classes:\"\\u10d9\\u10da\\u10d0\\u10e1\\u10d4\\u10d1\\u10d8\",style:\"\\u10e1\\u10e2\\u10d8\\u10da\\u10d8\",\"long_desc\":\"\\u10d1\\u10db\\u10e3\\u10da\\u10d8 \\u10e1\\u10e0\\u10e3\\u10da \\u10d0\\u10e6\\u10ec\\u10d4\\u10e0\\u10d0\\u10d6\\u10d4\",langcode:\"\\u10d4\\u10dc\\u10d8\\u10e1 \\u10d9\\u10dd\\u10d3\\u10d8\",langdir:\"\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\\u10e1 \\u10db\\u10d8\\u10db\\u10d0\\u10e0\\u10d7\\u10e3\\u10da\\u10d4\\u10d1\\u10d0\",\"constrain_proportions\":\"\\u10de\\u10e0\\u10dd\\u10de\\u10dd\\u10e0\\u10ea\\u10d8\\u10d4\\u10d1\\u10d8\\u10e1 \\u10e8\\u10d4\\u10dc\\u10d0\\u10ee\\u10d5\\u10d0\",preview:\"\\u10ec\\u10d8\\u10dc\\u10d0\\u10e1\\u10ec\\u10d0\\u10e0 \\u10d3\\u10d0\\u10d7\\u10d5\\u10d0\\u10da\\u10d8\\u10d4\\u10e0\\u10d4\\u10d1\\u10d0\",title:\"\\u10e1\\u10d0\\u10d7\\u10d0\\u10e3\\u10e0\\u10d8\",general:\"\\u10e1\\u10d0\\u10d4\\u10e0\\u10d7\\u10dd \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"tab_advanced\":\"\\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d8\\u10d7\",\"tab_appearance\":\"\\u10db\\u10d3\\u10d2\\u10dd\\u10db\\u10d0\\u10e0\\u10d4\\u10dd\\u10d1\\u10d0\",\"tab_general\":\"\\u10e1\\u10d0\\u10d4\\u10e0\\u10d7\\u10dd\",width:\"Width\",height:\"Height\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/ko_dlg.js",
    "content": "tinyMCE.addI18n('ko.advimage_dlg',{\"image_list\":\"\\uc774\\ubbf8\\uc9c0 \\ubaa9\\ub85d\",\"align_right\":\"\\uc624\\ub978\\ucabd\",\"align_left\":\"\\uc67c\\ucabd\",\"align_textbottom\":\"\\ubb38\\uc790 \\ud558\\ub2e8\",\"align_texttop\":\"\\ubb38\\uc790 \\uc0c1\\ub2e8\",\"align_bottom\":\"\\ud558\\ub2e8\",\"align_middle\":\"\\uc911\\uc559\",\"align_top\":\"\\uc0c1\\ub2e8\",\"align_baseline\":\"\\uae30\\uc900\\uc120\",align:\"\\uc904\\ub9de\\ucda4\",hspace:\"\\uc88c\\uc6b0 \\uc5ec\\ubc31\",vspace:\"\\uc0c1\\ud558 \\uc5ec\\ubc31\",dimensions:\"\\ud06c\\uae30\",border:\"\\ud14c\\ub450\\ub9ac \\uc120\",list:\"\\uc774\\ubbf8\\uc9c0 \\ubaa9\\ub85d\",alt:\"\\uc774\\ubbf8\\uc9c0 \\uc124\\uba85\",src:\"\\uc774\\ubbf8\\uc9c0 URL\",\"dialog_title\":\"\\uc774\\ubbf8\\uc9c0 \\uc0bd\\uc785/\\ud3b8\\uc9d1\",\"missing_alt\":\"\\uc774\\ubbf8\\uc9c0 \\uc124\\uba85\\uc744 \\ub123\\uc9c0 \\uc54a\\uace0 \\uc9c4\\ud589\\ud558\\uc2dc\\uaca0\\uc2b5\\ub2c8\\uae4c? \\uc774\\ubbf8\\uc9c0 \\uc124\\uba85\\uc774 \\uc5c6\\uc73c\\uba74 \\uc7a5\\uc560\\uac00 \\uc788\\ub294 \\uc77c\\ubd80 \\uc0ac\\uc6a9\\uc790\\ub098 \\ud14d\\uc2a4\\ud2b8 \\ube0c\\ub77c\\uc6b0\\uc800 \\uc0ac\\uc6a9\\uc790, \\uc774\\ubbf8\\uc9c0 \\ud45c\\uc2dc\\ub97c \\ub048 \\uc0c1\\ud0dc\\uc5d0\\uc11c \\uc6f9\\uc744 \\ubcf4\\ub294 \\uc0ac\\uc6a9\\uc790\\ub294 \\uc774\\ubbf8\\uc9c0\\ub97c \\uc561\\uc138\\uc2a4\\ud558\\uc9c0 \\ubabb\\ud560 \\uc218 \\uc788\\uc2b5\\ub2c8\\ub2e4.\",\"example_img\":\"\\ubbf8\\ub9ac \\ubcf4\\uae30 \\uc774\\ubbf8\\uc9c0\",misc:\"\\uae30\\ud0c0\",mouseout:\"\\ub9c8\\uc6b0\\uc2a4 \\ube7c\\ub0c8\\uc744 \\ub54c\",mouseover:\"\\ub9c8\\uc6b0\\uc2a4 \\uc62c\\ub838\\uc744 \\ub54c\",\"alt_image\":\"\\ub300\\uccb4 \\uc774\\ubbf8\\uc9c0\",\"swap_image\":\"\\ub864 \\uc624\\ubc84 \\ud6a8\\uacfc\",map:\"\\uc774\\ubbf8\\uc9c0 \\ub9f5\",id:\"ID\",rtl:\"\\uc624\\ub978\\ucabd\\uc5d0\\uc11c \\uc67c\\ucabd\\uc73c\\ub85c\",ltr:\"\\uc67c\\ucabd\\uc5d0\\uc11c \\uc624\\ub978\\ucabd\\uc73c\\ub85c\",classes:\"\\ud074\\ub798\\uc2a4\",style:\"\\uc11c\\uc2dd\",\"long_desc\":\"\\uae34 \\uc124\\uba85 \\ub9c1\\ud06c\",langcode:\"\\uc5b8\\uc5b4 \\ucf54\\ub4dc\",langdir:\"\\ubb38\\uc790 \\ubc29\\ud5a5\",\"constrain_proportions\":\"\\uc885\\ud6a1\\ube44 \\ubcf4\\uc874\",preview:\"\\ubbf8\\ub9ac \\ubcf4\\uae30\",title:\"\\uc81c\\ubaa9\",general:\"\\uc77c\\ubc18\",\"tab_advanced\":\"\\uc138\\ubd80 \\uc0ac\\ud56d\",\"tab_appearance\":\"\\ud45c\\uc2dc\",\"tab_general\":\"\\uc77c\\ubc18\",width:\"\\ud3ed\",height:\"\\ub192\\uc774\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/nb_dlg.js",
    "content": "tinyMCE.addI18n('nb.advimage_dlg',{\"image_list\":\"Bildeliste\",\"align_right\":\"H\\u00f8yre\",\"align_left\":\"Venstre\",\"align_textbottom\":\"Tekst bunn\",\"align_texttop\":\"Tekst topp\",\"align_bottom\":\"Bunn\",\"align_middle\":\"Midtstilt\",\"align_top\":\"Topp\",\"align_baseline\":\"Grunnlinje\",align:\"Justering\",hspace:\"Horisontal avstand\",vspace:\"Vertikal avstand\",dimensions:\"Dimensjoner\",border:\"Ramme\",list:\"Bildeliste\",alt:\"Bildebeskrivelse\",src:\"Bildets URL\",\"dialog_title\":\"Sett inn / endre bilde\",\"missing_alt\":\"Er du sikker p\\u00e5 at du vil fortsette uten \\u00e5 sette inn en bildebeskrivelse? Uten en beskrivelse vil ikke bildet gi mening for enkelte funksjonshemmede eller for personer som bruker en nettleser med bildevisning avsl\\u00e5tt.\",\"example_img\":\"Utseende Forh\\u00e5ndsvisning bilde\",misc:\"Annet\",mouseout:\"for musepeker utenfor\",mouseover:\"for musepeker p\\u00e5\",\"alt_image\":\"Alternativt bilde\",\"swap_image\":\"Bytt bilde\",map:\"Bildekart\",id:\"Id\",rtl:\"H\\u00f8yre  mot venstre\",ltr:\"Venstre mot h\\u00f8yre\",classes:\"Klasser\",style:\"Stil\",\"long_desc\":\"Lang beskrivelse\",langcode:\"Spr\\u00e5kkode\",langdir:\"Skriftretning\",\"constrain_proportions\":\"Behold st\\u00f8rrelsesforhold\",preview:\"Forh\\u00e5ndsvisning\",title:\"Tittel\",general:\"Generelt\",\"tab_advanced\":\"Avansert\",\"tab_appearance\":\"Utseende\",\"tab_general\":\"Generelt\",width:\"Bredde\",height:\"H\\u00f8yde\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/nl_dlg.js",
    "content": "tinyMCE.addI18n('nl.advimage_dlg',{image_list:\"Lijst\",align_right:\"Rechts\",align_left:\"Links\",align_textbottom:\"Onderkant tekst\",align_texttop:\"Bovenkant tekst\",align_bottom:\"Onder\",align_middle:\"Midden\",align_top:\"Boven\",align_baseline:\"Basislijn\",align:\"Uitlijning\",hspace:\"Horizontale ruimte\",vspace:\"Verticale ruimte\",dimensions:\"Afmetingen\",border:\"Rand\",list:\"Lijst\",alt:\"Beschrijving\",src:\"Bestand/URL\",dialog_title:\"Afbeelding invoegen/bewerken\",missing_alt:\"Wilt u de afbeelding zonder beschrijving invoegen? De afbeelding wordt dan mogelijk niet opgemerkt door mensen met een visuele handicap, of welke zonder afbeeldingen browsen.\",example_img:\"Voorbeeldweergave\",misc:\"Diversen\",mouseout:\"Bij muis uit\",mouseover:\"Bij muis over\",alt_image:\"Alternatieve afbeeldingen\",swap_image:\"Afbeelding wisselen\",map:\"Afbeeldingsplattegrond\",id:\"Id\",rtl:\"Van rechts naar links\",ltr:\"Van links naar rechts\",classes:\"Klasses\",style:\"Stijl\",long_desc:\"Uitgebreide beschrijving\",langcode:\"Taalcode\",langdir:\"Taalrichting\",constrain_proportions:\"Verhouding behouden\",preview:\"Voorbeeld\",title:\"Titel\",general:\"Algemeen\",tab_advanced:\"Geavanceerd\",tab_appearance:\"Weergave\",tab_general:\"Algemeen\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/pl_dlg.js",
    "content": "tinyMCE.addI18n('pl.advimage_dlg',{image_list:\"Lista obrazk\\u00f3w\",align_right:\"Prawy\",align_left:\"Lewy\",align_textbottom:\"Tekst dolny\",align_texttop:\"Tekst g\\u00f3rny\",align_bottom:\"Dolny\",align_middle:\"\\u015arodkowy\",align_top:\"G\\u00f3rny\",align_baseline:\"G\\u0142\\u00f3wna linia\",align:\"Wyr\\u00f3wnanie\",hspace:\"Poziomy odstep\",vspace:\"Pionowy odstep\",dimensions:\"Rozmiary\",border:\"Obramowanie\",list:\"Lista obrazk\\u00f3w\",alt:\"Opis obrazka\",src:\"URL obrazka\",dialog_title:\"Wklej/edytuj obraz\",missing_alt:\"Czy jeste\\u015b pewien, \\u017ce chcesz kontynuowa\\u0107 bez opisu obrazka? Obrazek bez opisu mo\\u017ce nie by\\u0107 dost\\u0119pny dla u\\u017cytkownik\\u00f3w kt\\u00f3rzy u\\u017cywaj\\u0105 tekstowej przegl\\u0105darki, lub przegl\\u0105daj\\u0105cych stron\\u0119 z wy\\u0142\\u0105czonymi obrazkami.\",example_img:\"Podgl\\u0105d wygl\\u0105du obrazka\",misc:\"R\\u00f3\\u017cne\",mouseout:\"for mouse out\",mouseover:\"for mouse over\",alt_image:\"alternatywny obrazek\",swap_image:\"Wymiana obrazka\",map:\"Mapa obrazu\",id:\"Id\",rtl:\"Prawy do lewego\",ltr:\"Lewy do prawego\",classes:\"Klasa\",style:\"Styl\",long_desc:\"D\\u0142ugi opis linku\",langcode:\"Kod j\\u0119zyka\",langdir:\"Kierunek j\\u0119zyka\",constrain_proportions:\"Zachowaj proporcje\",preview:\"Podgl\\u0105d\",title:\"Tytu\\u0142\",general:\"Og\\u00f3lny\",tab_advanced:\"Zaawansowany\",tab_appearance:\"Prezentacja\",tab_general:\"Og\\u00f3lny\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/pt_dlg.js",
    "content": "tinyMCE.addI18n('pt.advimage_dlg',{image_list:\"Lista de imagens\",align_right:\"Direita\",align_left:\"Esquerda\",align_textbottom:\"Base do texto\",align_texttop:\"Topo do texto\",align_bottom:\"Abaixo\",align_middle:\"Meio\",align_top:\"Topo\",align_baseline:\"Sobre a linha de texto\",align:\"Alinhamento\",hspace:\"Espa\\u00e7o horizontal\",vspace:\"Espa\\u00e7o vertical\",dimensions:\"Dimens\\u00f5es\",border:\"Limite\",list:\"Lista de imagens\",alt:\"Descri\\u00e7\\u00e3o da imagem\",src:\"Endere\\u00e7o da imagem\",dialog_title:\"Inserir/editar imagem\",missing_alt:\"Tem certeza que deseja continuar sem acrescentar uma descri\\u00e7\\u00e3o \\u00e0 imagem? (Isto pode gerar problemas de acessibilidade em alguns navegadores)\",example_img:\"Pr\\u00e9-Visualiza\\u00e7\\u00e3o\",misc:\"Misto\",mouseout:\"mouseout\",mouseover:\"mouseover\",alt_image:\"Imagem alternativa\",swap_image:\"Trocar imagem\",map:\"Mapa de imagem\",id:\"Id\",rtl:\"Da direita para a esquerda\",ltr:\"Da esquerda para a direita\",classes:\"Classes\",style:\"Estilo\",long_desc:\"Descri\\u00e7\\u00e3o extensa\",langcode:\"C\\u00f3digo do idioma\",langdir:\"Dire\\u00e7\\u00e3o do texto\",constrain_proportions:\"Manter propor\\u00e7\\u00f5es\",preview:\"Pr\\u00e9-Visualiza\\u00e7\\u00e3o\",title:\"T\\u00edtulo\",general:\"Geral\",tab_advanced:\"Avan\\u00e7ado\",tab_appearance:\"Apar\\u00eancia\",tab_general:\"Geral\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/ro_dlg.js",
    "content": "tinyMCE.addI18n('ro.advimage_dlg',{image_list:\"List\\u0103 de imagini\",align_right:\"Dreapta\",align_left:\"St\\u00e2nga\",align_textbottom:\"Textul jos\",align_texttop:\"Textul sus\",align_bottom:\"Jos\",align_middle:\"La mijloc\",align_top:\"Sus\",align_baseline:\"Baseline\",align:\"Aliniere\",hspace:\"Spa\\u0163iu orizontal\",vspace:\"Spa\\u0163iu vertical\",dimensions:\"Dimensiuni\",border:\"Bordur\\u0103\",list:\"List\\u0103 imagini\",alt:\"Descriere imagine\",src:\"URL imagine\",dialog_title:\"Inserare/editare imagine\",missing_alt:\"Sigur dori\\u0163i s\\u0103 continua\\u0163i f\\u0103r\\u0103 a introduce o descriere a imaginii?\",example_img:\"Imagine mic\\u0103\",misc:\"Diverse\",mouseout:\"Pentru maus \\u00een afar\\u0103\",mouseover:\"Pentru maus deasupra\",alt_image:\"Imagine alternativ\\u0103\",swap_image:\"Schimb\\u0103 imaginea\",map:\"Hart\\u0103 imagine\",id:\"Id\",rtl:\"De la dreapta la st\\u00e2nga\",ltr:\"De la st\\u00e2nga la dreapta\",classes:\"Clase\",style:\"Stil\",long_desc:\"Descriere leg\\u0103tur\\u0103\",langcode:\"Cod limb\\u0103\",langdir:\"Direc\\u0163ie limb\\u0103\",constrain_proportions:\"Men\\u0163ine propor\\u0163ii\",preview:\"Previzualizare\",title:\"Titlu\",general:\"General\",tab_advanced:\"Avansat\",tab_appearance:\"Afi\\u015fare\",tab_general:\"General\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/ru_dlg.js",
    "content": "tinyMCE.addI18n('ru.advimage_dlg',{image_list:\"\\u0421\\u043f\\u0438\\u0441\\u043e\\u043a \\u043a\\u0430\\u0440\\u0442\\u0438\\u043d\\u043e\\u043a\",align_right:\"\\u041f\\u043e \\u043f\\u0440\\u0430\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",align_left:\"\\u041f\\u043e \\u043b\\u0435\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",align_textbottom:\"\\u041f\\u043e \\u043d\\u0438\\u0436\\u043d\\u0435\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e \\u0442\\u0435\\u043a\\u0441\\u0442\\u0430\",align_texttop:\"\\u041f\\u043e \\u0432\\u0435\\u0440\\u0445\\u043d\\u0435\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e \\u0442\\u0435\\u043a\\u0441\\u0442\\u0430\",align_bottom:\"\\u041f\\u043e \\u043d\\u0438\\u0436\\u043d\\u0435\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",align_middle:\"\\u041f\\u043e \\u0446\\u0435\\u043d\\u0442\\u0440\\u0443\",align_top:\"\\u041f\\u043e \\u0432\\u0435\\u0440\\u0445\\u043d\\u0435\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",align_baseline:\"\\u041f\\u043e \\u0431\\u0430\\u0437\\u043e\\u0432\\u043e\\u0439 \\u043b\\u0438\\u043d\\u0438\\u0438\",align:\"\\u0412\\u044b\\u0440\\u0430\\u0432\\u043d\\u0438\\u0432\\u0430\\u043d\\u0438\\u0435\",hspace:\"\\u0413\\u043e\\u0440\\u0438\\u0437. \\u043e\\u0442\\u0441\\u0442\\u0443\\u043f\",vspace:\"\\u0412\\u0435\\u0440\\u0442. \\u043e\\u0442\\u0441\\u0442\\u0443\\u043f\",dimensions:\"\\u0420\\u0430\\u0437\\u043c\\u0435\\u0440\",border:\"\\u0413\\u0440\\u0430\\u043d\\u0438\\u0446\\u0430\",list:\"\\u0421\\u043f\\u0438\\u0441\\u043e\\u043a\",alt:\"\\u041e\\u043f\\u0438\\u0441\\u0430\\u043d\\u0438\\u0435\",src:\"\\u0410\\u0434\\u0440\\u0435\\u0441\",dialog_title:\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b \\u0438\\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u0438\\u044f\",missing_alt:\"\\u041f\\u0440\\u043e\\u0434\\u043e\\u043b\\u0436\\u0438\\u0442\\u044c \\u0431\\u0435\\u0437 \\u043e\\u043f\\u0438\\u0441\\u0430\\u043d\\u0438\\u044f? \\u0411\\u0435\\u0437 \\u044d\\u0442\\u043e\\u0433\\u043e \\u0438\\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u0438\\u0435 \\u0431\\u0443\\u0434\\u0435\\u0442 \\u043d\\u0435\\u0434\\u043e\\u0441\\u0442\\u0443\\u043f\\u043d\\u043e \\u043d\\u0435\\u043a\\u043e\\u0442\\u043e\\u0440\\u044b\\u043c \\u043f\\u043e\\u043b\\u044c\\u0437\\u043e\\u0432\\u0430\\u0442\\u0435\\u043b\\u044f\\u043c.\",example_img:\"\\u041f\\u0440\\u0438\\u043c\\u0435\\u0440 \\u0438\\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u0438\\u044f\",misc:\"\\u0414\\u043e\\u043f\\u043e\\u043b\\u043d\\u0438\\u0442\\u0435\\u043b\\u044c\\u043d\\u044b\\u0435 \\u043f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b\",mouseout:\"\\u0412 \\u043f\\u043e\\u043a\\u043e\\u0435\",mouseover:\"\\u041f\\u0440\\u0438 \\u043d\\u0430\\u0432\\u0435\\u0434\\u0435\\u043d\\u0438\\u0438\",alt_image:\"\\u0410\\u043b\\u044c\\u0442\\u0435\\u0440\\u043d\\u0430\\u0442\\u0438\\u0432\\u043d\\u043e\\u0435 \\u0438\\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u0438\\u0435\",swap_image:\"\\u0414\\u0438\\u043d\\u0430\\u043c\\u0438\\u0447\\u0435\\u0441\\u043a\\u043e\\u0435 \\u0438\\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u0438\\u0435\",map:\"\\u041a\\u0430\\u0440\\u0442\\u0430 \\u0441\\u0441\\u044b\\u043b\\u043e\\u043a\",id:\"\\u0418\\u043c\\u044f \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\\u0430\",rtl:\"\\u0421\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043d\\u0430\\u043b\\u0435\\u0432\\u043e\",ltr:\"\\u0421\\u043b\\u0435\\u0432\\u0430 \\u043d\\u0430\\u043f\\u0440\\u0430\\u0432\\u043e\",classes:\"\\u041a\\u043b\\u0430\\u0441\\u0441\\u044b\",style:\"\\u0421\\u0442\\u0438\\u043b\\u044c\",long_desc:\"\\u0421\\u0441\\u044b\\u043b\\u043a\\u0430 \\u043d\\u0430 \\u043f\\u043e\\u043b\\u043d\\u043e\\u0435 \\u043e\\u043f\\u0438\\u0441\\u0430\\u043d\\u0438\\u0435\",langcode:\"\\u041a\\u043e\\u0434 \\u044f\\u0437\\u044b\\u043a\\u0430\",langdir:\"\\u041d\\u0430\\u043f\\u0440\\u0430\\u0432\\u043b\\u0435\\u043d\\u0438\\u0435 \\u0442\\u0435\\u043a\\u0441\\u0442\\u0430\",constrain_proportions:\"\\u0421\\u043e\\u0445\\u0440\\u0430\\u043d\\u0438\\u0442\\u044c \\u043f\\u0440\\u043e\\u043f\\u043e\\u0440\\u0446\\u0438\\u0438\",preview:\"\\u041f\\u0435\\u0434\\u0432\\u0430\\u0440\\u0438\\u0442\\u0435\\u043b\\u044c\\u043d\\u044b\\u0439 \\u043f\\u0440\\u043e\\u0441\\u043c\\u043e\\u0442\\u0440\",title:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a\",general:\"\\u041e\\u0431\\u0449\\u0438\\u0435 \\u043f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b\",tab_advanced:\"\\u0414\\u043e\\u043f\\u043e\\u043b\\u043d\\u0438\\u0442\\u0435\\u043b\\u044c\\u043d\\u043e\",tab_appearance:\"\\u041f\\u043e\\u043b\\u043e\\u0436\\u0435\\u043d\\u0438\\u0435\",tab_general:\"\\u041e\\u0431\\u0449\\u0435\\u0435\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/sr_dlg.js",
    "content": "tinyMCE.addI18n('sr.advimage_dlg',{image_list:\"Lista slika\",align_right:\"Desno\",align_left:\"Levo\",align_textbottom:\"Dno teksta\",align_texttop:\"Vrh teksta\",align_bottom:\"Dno\",align_middle:\"Sredina\",align_top:\"Vrh\",align_baseline:\"Osnovna linija\",align:\"Poravnavanje\",hspace:\"Horizontalni razmak\",vspace:\"Vertikalni razmak\",dimensions:\"Dimenzije\",border:\"Ivice\",list:\"Lista slika\",alt:\"Opis slike\",src:\"URL slike\",dialog_title:\"Ubaci/uredi sliku\",missing_alt:\"Da li ste sigurni da \\u017eelite da izostavite opis slike? Slika mo\\u017ee biti nedostupna ljudima s pote\\u0161ko\\u0107ama ili onima koji koriste pretra\\u017eiva\\u010de bez prikaza slika.\",example_img:\"Prikaz slike\",misc:\"Razno\",mouseout:\"za izlazak mi\\u0161a sa slike\",mouseover:\"za prelazak mi\\u0161a preko slike\",alt_image:\"Alternativna slika\",swap_image:\"Promeni slika\",map:\"Mapa slike\",id:\"Id\",rtl:\"S desna na levo\",ltr:\"S leva na desno\",classes:\"Klase\",style:\"Stil\",long_desc:\"Link dugog opisa\",langcode:\"Kod jezika\",langdir:\"Smer jezika\",constrain_proportions:\"Zadr\\u017ei proporcije\",preview:\"Pregled\",title:\"Naslov\",general:\"Osnovno\",tab_advanced:\"Napredno\",tab_appearance:\"Izgled\",tab_general:\"Osnovno\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/sv_dlg.js",
    "content": "tinyMCE.addI18n('sv.advimage_dlg',{\"image_list\":\"Bildlista\",\"align_right\":\"H\\u00f6ger\",\"align_left\":\"V\\u00e4nster\",\"align_textbottom\":\"Botten av texten\",\"align_texttop\":\"Toppen av texten\",\"align_bottom\":\"Botten\",\"align_middle\":\"Mitten\",\"align_top\":\"Toppen\",\"align_baseline\":\"Baslinje\",align:\"Justering\",hspace:\"Horisontalrymd\",vspace:\"Vertikalrymd\",dimensions:\"Dimensioner\",border:\"Ram\",list:\"Bildlista\",alt:\"Bildens beskrivning\",src:\"Bildens URL\",\"dialog_title\":\"Infoga/redigera bild\",\"missing_alt\":\"Vill du forts\\u00e4tta utan bildbeskrivning. Icke grafiska webbl\\u00e4sare kommer inte kunna tolka bilden f\\u00f6r anv\\u00e4ndaren.\",\"example_img\":\"Exempelbild\",misc:\"\\u00d6vrigt\",mouseout:\"vid musen utanf\\u00f6r\",mouseover:\"vid musen ovanf\\u00f6r\",\"alt_image\":\"Alternativbild\",\"swap_image\":\"Utbytningsbild\",map:\"L\\u00e4nkkarta\",id:\"Id\",rtl:\"H\\u00f6ger till v\\u00e4nster\",ltr:\"V\\u00e4nster till h\\u00f6ger\",classes:\"Klasser\",style:\"Stil\",\"long_desc\":\"L\\u00e5ng beskrivning\",langcode:\"Spr\\u00e5kkod\",langdir:\"Skriftriktning\",\"constrain_proportions\":\"Bibeh\\u00e5ll proportionerna\",preview:\"F\\u00f6rhandsvisning\",title:\"Titel\",general:\"Generellt\",\"tab_advanced\":\"Avancerat\",\"tab_appearance\":\"Utseende\",\"tab_general\":\"Generellt\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/tr_dlg.js",
    "content": "tinyMCE.addI18n('tr.advimage_dlg',{\"image_list\":\"Resim listesi\",\"align_right\":\"Sa\\u011f\",\"align_left\":\"Sol\",\"align_textbottom\":\"Metin altta\",\"align_texttop\":\"Metin \\u00fcstte\",\"align_bottom\":\"Alt\",\"align_middle\":\"Orta\",\"align_top\":\"\\u00dcst\",\"align_baseline\":\"Taban hizas\\u0131\",align:\"Hizalama\",hspace:\"Yatay bo\\u015fluk\",vspace:\"Dikey bo\\u015fluk\",dimensions:\"Boyutlar\",border:\"Kenarl\\u0131k\",list:\"Resim listesi\",alt:\"Resim a\\u00e7\\u0131klamas\\u0131\",src:\"Resmin URL\\'si\",\"dialog_title\":\"Resim ekle/d\\u00fczenle\",\"missing_alt\":\"Resim a\\u00e7\\u0131klamas\\u0131 girmeden devam etmek istedi\\u011finize emini misiniz? Bu olmadan taray\\u0131c\\u0131da resimleri kapatanlar, metin bazl\\u0131 taray\\u0131c\\u0131lar veya resim baz\\u0131 engelli kullan\\u0131c\\u0131lar g\\u00f6remeyeceklerdir.\",\"example_img\":\"Resim \\u00f6nizleme g\\u00f6r\\u00fcn\\u00fcm\\u00fc\",misc:\"\\u00c7e\\u015fitli\",mouseout:\"Fare d\\u0131\\u015f\\u0131ndayken\",mouseover:\"Fare \\u00fczerindeyken\",\"alt_image\":\"Alternatif resim\",\"swap_image\":\"Resmi takas et\",map:\"Resim haritas\\u0131\",id:\"Id\",rtl:\"Soldan sa\\u011fa\",ltr:\"Sa\\u011fdan sola\",classes:\"S\\u0131n\\u0131fla\",style:\"Stil\",\"long_desc\":\"Uzun a\\u00e7\\u0131klamal\\u0131 ba\\u011flant\\u0131\",langcode:\"Dil kodu\",langdir:\"Dil y\\u00f6n\\u00fc\",\"constrain_proportions\":\"Oran\\u0131 s\\u0131n\\u0131rla\",preview:\"\\u00d6nizleme\",title:\"Ba\\u015fl\\u0131k\",general:\"Genel\",\"tab_advanced\":\"Geli\\u015fmi\\u015f\",\"tab_appearance\":\"G\\u00f6r\\u00fcn\\u00fcm\",\"tab_general\":\"Genel\",width:\"Geni\\u015flik\",height:\"Y\\u00fckseklik\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/uk_dlg.js",
    "content": "tinyMCE.addI18n('uk.advimage_dlg',{\"image_list\":\"\\u0421\\u043f\\u0438\\u0441\\u043e\\u043a \\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u044c\",\"align_right\":\"\\u041f\\u043e \\u043f\\u0440\\u0430\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"align_left\":\"\\u041f\\u043e \\u043b\\u0456\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"align_textbottom\":\"\\u041f\\u043e \\u043d\\u0438\\u0436\\u043d\\u044c\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e \\u0442\\u0435\\u043a\\u0441\\u0442\\u0443\",\"align_texttop\":\"\\u041f\\u043e \\u0432\\u0435\\u0440\\u0445\\u043d\\u044c\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e \\u0442\\u0435\\u043a\\u0441\\u0442\\u0443\",\"align_bottom\":\"\\u041f\\u043e \\u043d\\u0438\\u0436\\u043d\\u044c\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"align_middle\":\"\\u041f\\u043e \\u0446\\u0435\\u043d\\u0442\\u0440\\u0443\",\"align_top\":\"\\u041f\\u043e \\u0432\\u0435\\u0440\\u0445\\u043d\\u044c\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"align_baseline\":\"\\u041f\\u043e \\u0431\\u0430\\u0437\\u043e\\u0432\\u0456\\u0439 \\u043b\\u0456\\u043d\\u0456\\u0457\",align:\"\\u0412\\u0438\\u0440\\u0456\\u0432\\u043d\\u044e\\u0432\\u0430\\u043d\\u043d\\u044f\",hspace:\"\\u0413\\u043e\\u0440\\u0438\\u0437. \\u0432\\u0456\\u0434\\u0441\\u0442\\u0443\\u043f\",vspace:\"\\u0412\\u0435\\u0440\\u0442. \\u0432\\u0456\\u0434\\u0441\\u0442\\u0443\\u043f\",dimensions:\"\\u0420\\u043e\\u0437\\u043c\\u0456\\u0440\\u0438\",border:\"\\u0420\\u0430\\u043c\\u043a\\u0430\",list:\"\\u0421\\u043f\\u0438\\u0441\\u043e\\u043a \\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u044c\",alt:\"\\u041e\\u043f\\u0438\\u0441\",src:\"\\u041f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f \\u043d\\u0430 \\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u043d\\u044f\",\"dialog_title\":\"\\u0414\\u043e\\u0434\\u0430\\u0442\\u0438/\\u0437\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438 \\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u043d\\u044f\",\"missing_alt\":\"\\u0412\\u0438 \\u0432\\u043f\\u0435\\u0432\\u043d\\u0435\\u043d\\u043d\\u0456, \\u0449\\u043e \\u0431\\u0430\\u0436\\u0430\\u0454\\u0442\\u0435 \\u043f\\u0440\\u043e\\u0434\\u043e\\u0432\\u0436\\u0438\\u0442\\u0438 \\u0431\\u0435\\u0437 \\u043e\\u043f\\u0438\\u0441\\u0443 \\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u043d\\u044f? \\u0411\\u0435\\u0437 \\u0446\\u044c\\u043e\\u0433\\u043e, \\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u043d\\u044f \\u043d\\u0435 \\u0431\\u0443\\u0434\\u0435 \\u0434\\u043e\\u0441\\u0442\\u0443\\u043f\\u043d\\u0438\\u043c \\u0434\\u0435\\u044f\\u043a\\u0438\\u043c \\u043a\\u043e\\u0440\\u0438\\u0441\\u0442\\u0443\\u0432\\u0430\\u0447\\u0430\\u043c \\u0437 \\u0432\\u0430\\u0434\\u0430\\u043c\\u0438, \\u0430\\u0431\\u043e \\u0442\\u0438\\u043c, \\u0445\\u0442\\u043e \\u043a\\u043e\\u0440\\u0438\\u0442\\u0443\\u0454\\u0442\\u044c\\u0441\\u044f \\u0442\\u0435\\u043a\\u0441\\u0442\\u043e\\u0432\\u0438\\u043c\\u0438 \\u043f\\u0435\\u0440\\u0435\\u0433\\u043b\\u044f\\u0434\\u0430\\u0447\\u0430\\u043c\\u0438, \\u0430\\u0431\\u043e \\u043f\\u0440\\u043e\\u0433\\u043b\\u044f\\u0434\\u0430\\u0454 \\u0456\\u043d\\u0442\\u0435\\u0440\\u043d\\u0435\\u0442 \\u0441\\u0442\\u043e\\u0440\\u0456\\u043d\\u043a\\u0438 \\u0437 \\u0432\\u0438\\u043c\\u043a\\u043d\\u0435\\u043d\\u0438\\u043c\\u0438 \\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u043d\\u044f\\u043c\\u0438.\",\"example_img\":\"\\u0412\\u0438\\u0433\\u043b\\u044f\\u0434 \\u043f\\u0435\\u0440\\u0435\\u0433\\u043b\\u044f\\u0434\\u0443 \\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u043d\\u044f\",misc:\"\\u0406\\u043d\\u0448\\u0435\",mouseout:\"\\u043f\\u0440\\u0438 \\u0432\\u0456\\u0434\\u0432\\u0435\\u0434\\u0435\\u043d\\u043d\\u0456\",mouseover:\"\\u043f\\u0440\\u0438 \\u043d\\u0430\\u0432\\u0435\\u0434\\u0435\\u043d\\u043d\\u0456\",\"alt_image\":\"\\u0410\\u043b\\u044c\\u0442\\u0435\\u0440\\u043d\\u0430\\u0442\\u0438\\u0432\\u043d\\u0435 \\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u043d\\u044f\",\"swap_image\":\"\\u0417\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u043d\\u044f \\u0437\\u0430\\u043c\\u0456\\u043d\\u043d\\u0438\\u043a\",map:\"\\u041c\\u0430\\u043f\\u0430 \\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u043d\\u044f\",id:\"\\u0406\\u0434\\u0435\\u043d\\u0442\\u0438\\u0444\\u0456\\u043a\\u0430\\u0442\\u043e\\u0440\",rtl:\"\\u0421\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043b\\u0456\\u0432\\u043e\\u0440\\u0443\\u0447\",ltr:\"\\u0417\\u043b\\u0456\\u0432\\u0430 \\u043f\\u0440\\u0430\\u0432\\u043e\\u0440\\u0443\\u0447\",classes:\"\\u041a\\u043b\\u0430\\u0441\\u0438\",style:\"\\u0421\\u0442\\u0438\\u043b\\u044c\",\"long_desc\":\"\\u041f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f \\u043d\\u0430 \\u043f\\u043e\\u0432\\u043d\\u0438\\u0439 \\u043e\\u043f\\u0438\\u0441\",langcode:\"\\u041a\\u043e\\u0434 \\u043c\\u043e\\u0432\\u0438\",langdir:\"\\u041d\\u0430\\u043f\\u0440\\u044f\\u043c\\u043e\\u043a \\u043c\\u043e\\u0432\\u0438\",\"constrain_proportions\":\"\\u0417\\u0431\\u0435\\u0440\\u0456\\u0433\\u0430\\u0442\\u0438 \\u043f\\u0440\\u043e\\u043f\\u043e\\u0440\\u0446\\u0456\\u0457\",preview:\"\\u041f\\u0435\\u0440\\u0435\\u0433\\u043b\\u044f\\u0434\",title:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a\",general:\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u044c\\u043d\\u0435\",\"tab_advanced\":\"\\u0414\\u043e\\u0434\\u0430\\u0442\\u043a\\u043e\\u0432\\u043e\",\"tab_appearance\":\"\\u0412\\u0438\\u0433\\u043b\\u044f\\u0434\",\"tab_general\":\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u044c\\u043d\\u0435\",width:\"\\u0428\\u0438\\u0440\\u0438\\u043d\\u0430\",height:\"\\u0412\\u0438\\u0441\\u043e\\u0442\\u0430\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/zh-tw_dlg.js",
    "content": "tinyMCE.addI18n('zh-tw.advimage_dlg',{\"image_list\":\"\\u5716\\u7247\\u6e05\\u55ae\",\"align_right\":\"\\u5411\\u53f3\\u5c0d\\u9f4a\",\"align_left\":\"\\u5411\\u5de6\\u5c0d\\u9f4a\",\"align_textbottom\":\"\\u6587\\u5b57\\u4e0b\\u65b9\",\"align_texttop\":\"\\u6587\\u81ea\\u4e0a\\u65b9\",\"align_bottom\":\"\\u4e0b\\u65b9\",\"align_middle\":\"\\u4e2d\\u9593\",\"align_top\":\"\\u4e0a\\u65b9\",\"align_baseline\":\"\\u57fa\\u6e96\\u7dda\",align:\"\\u5c0d\\u9f4a\\u65b9\\u5f0f\",hspace:\"\\u6c34\\u5e73\\u8ddd\\u96e2\",vspace:\"\\u5782\\u76f4\\u8ddd\\u96e2\",dimensions:\"\\u5c3a\\u5bf8\",border:\"\\u6846\\u67b6\",list:\"\\u5716\\u7247\\u6e05\\u55ae\",alt:\"\\u5716\\u7247\\u8aaa\\u660e\",src:\"\\u5716\\u7247 URL\",\"dialog_title\":\"\\u52a0\\u5165 / \\u8a2d\\u5b9a\\u5716\\u7247\",\"missing_alt\":\"\\u60a8\\u7684\\u5716\\u7247\\u6c92\\u6709\\u8aaa\\u660e\\uff0c\\u9019\\u53ef\\u80fd\\u6703\\u8b93\\u4e00\\u4e9b\\u7db2\\u53cb\\u700f\\u89bd\\u6642\\u6709\\u4e9b\\u9ebb\\u7169\\uff0c\\u60a8\\u78ba\\u5b9a\\u8981\\u5ffd\\u7565\\u5b83\\u55ce\\uff1f\",\"example_img\":\"\\u9810\\u89bd\\u5716\\u7247\",misc:\"\\u5176\\u4ed6\\u8a2d\\u5b9a\",mouseout:\"\\u6ed1\\u9f20\\u79fb\\u958b\\u7684\\u6642\\u5019\",mouseover:\"\\u6ed1\\u9f20\\u79fb\\u5230\\u5716\\u7247\\u4e0a\\u7684\\u6642\\u5019\",\"alt_image\":\"\\u66ff\\u63db\\u5716\\u7247\",\"swap_image\":\"\\u66f4\\u63db\\u5716\\u7247\\u6548\\u679c\",map:\"\\u5f71\\u50cf\\u5730\\u5716\",id:\"\\u5716\\u7247\\u7684 ID\",rtl:\"\\u5411\\u53f3\\u908a\\u5230\\u5de6\\u908a\",ltr:\"\\u5411\\u5de6\\u908a\\u5230\\u53f3\\u908a\",classes:\"\\u985e\\u5225 (Class)\",style:\"\\u6a23\\u5f0f\",\"long_desc\":\"\\u66ff\\u4ee3\\u5716\\u7247\",langcode:\"\\u8a9e\\u7cfb\\u4ee3\\u865f\",langdir:\"\\u66f8\\u5beb\\u65b9\\u5411\",\"constrain_proportions\":\"\\u7dad\\u6301\\u5716\\u7247\\u6bd4\\u4f8b\",preview:\"\\u9810\\u89bd\",title:\"\\u6a19\\u984c\",general:\"\\u4e00\\u822c\",\"tab_advanced\":\"\\u5176\\u4ed6\\u8a2d\\u5b9a\",\"tab_appearance\":\"\\u5916\\u89c0\\u6a23\\u5f0f\",\"tab_general\":\"\\u4e00\\u822c\",width:\"Width\",height:\"Height\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advimage/langs/zh_dlg.js",
    "content": "tinyMCE.addI18n('zh.advimage_dlg',{\"image_list\":\"\\u56fe\\u7247\\u6e05\\u5355\",\"align_right\":\"\\u9760\\u53f3\",\"align_left\":\"\\u9760\\u5de6\",\"align_textbottom\":\"\\u6587\\u5b57\\u4e0b\\u65b9\",\"align_texttop\":\"\\u6587\\u5b57\\u4e0a\\u65b9\",\"align_bottom\":\"\\u9760\\u4e0b\",\"align_middle\":\"\\u5782\\u76f4\\u5c45\\u4e2d\",\"align_top\":\"\\u9760\\u4e0a\",\"align_baseline\":\"\\u57fa\\u51c6\\u7ebf\",align:\"\\u5bf9\\u9f50\\u65b9\\u5f0f\",hspace:\"\\u6c34\\u5e73\\u95f4\\u8ddd\",vspace:\"\\u5782\\u76f4\\u95f4\\u8ddd\",dimensions:\"\\u5c3a\\u5bf8\",border:\"\\u8fb9\\u6846\",list:\"\\u56fe\\u7247\\u6e05\\u5355\",alt:\"\\u56fe\\u7247\\u8bf4\\u660e\",src:\"\\u56fe\\u7247URL\",\"dialog_title\":\"\\u63d2\\u5165/\\u7f16\\u8f91\\u56fe\\u7247\",\"missing_alt\":\"\\u60a8\\u5c1a\\u672a\\u586b\\u5199\\u56fe\\u7247\\u8bf4\\u660e\\u6587\\u5b57\\uff0c\\u662f\\u5426\\u8981\\u7ee7\\u7eed\\uff1f\\u5982\\u679c\\u4e0d\\u586b\\u5199\\u8bf4\\u660e\\u6587\\u5b57\\uff0c\\u5bf9\\u4f7f\\u7528\\u975e\\u53ef\\u89c6\\u6216\\u5bf9\\u8bbe\\u5b9a\\u4e3a\\u4e0d\\u663e\\u793a\\u56fe\\u7247\\u7684\\u6d4f\\u89c8\\u5668\\u4f7f\\u7528\\u8005\\u5c06\\u66f4\\u96be\\u9605\\u8bfb\\u6216\\u7406\\u89e3\\u6b64\\u56fe\\u7247\\u3002\",\"example_img\":\"\\u56fe\\u7247\\u9884\\u89c8\",misc:\"\\u5176\\u5b83\",mouseout:\"\\u9f20\\u6807\\u79fb\\u51fa\",mouseover:\"\\u9f20\\u6807\\u79fb\\u5165\",\"alt_image\":\"\\u66ff\\u4ee3\\u56fe\\u7247\",\"swap_image\":\"\\u56fe\\u7247\\u5207\\u6362\",map:\"\\u56fe\\u7247\\u70ed\\u533a\",id:\"ID\",rtl:\"\\u4ece\\u53f3\\u5230\\u5de6\",ltr:\"\\u4ece\\u5de6\\u5230\\u53f3\",classes:\"\\u7c7b\",style:\"\\u6837\\u5f0f\",\"long_desc\":\"\\u957f\\u94fe\\u63a5\",langcode:\"\\u8bed\\u8a00\\u4ee3\\u7801\",langdir:\"\\u8bed\\u8a00\\u4e66\\u5199\\u65b9\\u5411\",\"constrain_proportions\":\"\\u7ea6\\u675f\\u6bd4\\u4f8b\",preview:\"\\u9884\\u89c8\",title:\"\\u56fe\\u7247\\u6807\\u9898\",general:\"\\u666e\\u901a\",\"tab_advanced\":\"\\u9ad8\\u7ea7\",\"tab_appearance\":\"\\u5916\\u89c2\",\"tab_general\":\"\\u666e\\u901a\",width:\"\\u5bbd\",height:\"\\u9ad8\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/css/advlink.css",
    "content": ".mceLinkList, .mceAnchorList, #targetlist {width:280px;}\r\n.mceActionPanel {margin-top:7px;}\r\n.panel_wrapper div.current {height:320px;}\r\n#classlist, #title, #href {width:280px;}\r\n#popupurl, #popupname {width:200px;}\r\n#popupwidth, #popupheight, #popupleft, #popuptop {width:30px;vertical-align:middle;text-align:center;}\r\n#id, #style, #classes, #target, #dir, #hreflang, #lang, #charset, #type, #rel, #rev, #tabindex, #accesskey {width:200px;}\r\n#events_panel input {width:200px;}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/editor_plugin.js",
    "content": "(function(){tinymce.create(\"tinymce.plugins.AdvancedLinkPlugin\",{init:function(a,b){this.editor=a;a.addCommand(\"mceAdvLink\",function(){var c=a.selection;if(c.isCollapsed()&&!a.dom.getParent(c.getNode(),\"A\")){return}a.windowManager.open({file:b+\"/link.htm\",width:480+parseInt(a.getLang(\"advlink.delta_width\",0)),height:400+parseInt(a.getLang(\"advlink.delta_height\",0)),inline:1},{plugin_url:b})});a.addButton(\"link\",{title:\"advlink.link_desc\",cmd:\"mceAdvLink\"});a.addShortcut(\"ctrl+k\",\"advlink.advlink_desc\",\"mceAdvLink\");a.onNodeChange.add(function(d,c,f,e){c.setDisabled(\"link\",e&&f.nodeName!=\"A\");c.setActive(\"link\",f.nodeName==\"A\"&&!f.name)})},getInfo:function(){return{longname:\"Advanced link\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlink\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}}});tinymce.PluginManager.add(\"advlink\",tinymce.plugins.AdvancedLinkPlugin)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\ttinymce.create('tinymce.plugins.AdvancedLinkPlugin', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\tthis.editor = ed;\r\n\r\n\t\t\t// Register commands\r\n\t\t\ted.addCommand('mceAdvLink', function() {\r\n\t\t\t\tvar se = ed.selection;\r\n\r\n\t\t\t\t// No selection and not in link\r\n\t\t\t\tif (se.isCollapsed() && !ed.dom.getParent(se.getNode(), 'A'))\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\ted.windowManager.open({\r\n\t\t\t\t\tfile : url + '/link.htm',\r\n\t\t\t\t\twidth : 480 + parseInt(ed.getLang('advlink.delta_width', 0)),\r\n\t\t\t\t\theight : 400 + parseInt(ed.getLang('advlink.delta_height', 0)),\r\n\t\t\t\t\tinline : 1\r\n\t\t\t\t}, {\r\n\t\t\t\t\tplugin_url : url\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\t// Register buttons\r\n\t\t\ted.addButton('link', {\r\n\t\t\t\ttitle : 'advlink.link_desc',\r\n\t\t\t\tcmd : 'mceAdvLink'\r\n\t\t\t});\r\n\r\n\t\t\ted.addShortcut('ctrl+k', 'advlink.advlink_desc', 'mceAdvLink');\r\n\r\n\t\t\ted.onNodeChange.add(function(ed, cm, n, co) {\r\n\t\t\t\tcm.setDisabled('link', co && n.nodeName != 'A');\r\n\t\t\t\tcm.setActive('link', n.nodeName == 'A' && !n.name);\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Advanced link',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlink',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('advlink', tinymce.plugins.AdvancedLinkPlugin);\r\n})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/js/advlink.js",
    "content": "/* Functions for the advlink plugin popup */\r\n\r\ntinyMCEPopup.requireLangPack();\r\n\r\nvar templates = {\r\n\t\"window.open\" : \"window.open('${url}','${target}','${options}')\"\r\n};\r\n\r\nfunction preinit() {\r\n\tvar url;\r\n\r\n\tif (url = tinyMCEPopup.getParam(\"external_link_list_url\"))\r\n\t\tdocument.write('<script language=\"javascript\" type=\"text/javascript\" src=\"' + tinyMCEPopup.editor.documentBaseURI.toAbsolute(url) + '\"></script>');\r\n}\r\n\r\nfunction changeClass() {\r\n\tvar f = document.forms[0];\r\n\r\n\tf.classes.value = getSelectValue(f, 'classlist');\r\n}\r\n\r\nfunction init() {\r\n\ttinyMCEPopup.resizeToInnerSize();\r\n\r\n\tvar formObj = document.forms[0];\r\n\tvar inst = tinyMCEPopup.editor;\r\n\tvar elm = inst.selection.getNode();\r\n\tvar action = \"insert\";\r\n\tvar html;\r\n\r\n\tdocument.getElementById('hrefbrowsercontainer').innerHTML = getBrowserHTML('hrefbrowser','href','file','advlink');\r\n\tdocument.getElementById('popupurlbrowsercontainer').innerHTML = getBrowserHTML('popupurlbrowser','popupurl','file','advlink');\r\n\tdocument.getElementById('targetlistcontainer').innerHTML = getTargetListHTML('targetlist','target');\r\n\r\n\t// Link list\r\n\thtml = getLinkListHTML('linklisthref','href');\r\n\tif (html == \"\")\r\n\t\tdocument.getElementById(\"linklisthrefrow\").style.display = 'none';\r\n\telse\r\n\t\tdocument.getElementById(\"linklisthrefcontainer\").innerHTML = html;\r\n\r\n\t// Anchor list\r\n\thtml = getAnchorListHTML('anchorlist','href');\r\n\tif (html == \"\")\r\n\t\tdocument.getElementById(\"anchorlistrow\").style.display = 'none';\r\n\telse\r\n\t\tdocument.getElementById(\"anchorlistcontainer\").innerHTML = html;\r\n\r\n\t// Resize some elements\r\n\tif (isVisible('hrefbrowser'))\r\n\t\tdocument.getElementById('href').style.width = '260px';\r\n\r\n\tif (isVisible('popupurlbrowser'))\r\n\t\tdocument.getElementById('popupurl').style.width = '180px';\r\n\r\n\telm = inst.dom.getParent(elm, \"A\");\r\n\tif (elm != null && elm.nodeName == \"A\")\r\n\t\taction = \"update\";\r\n\r\n\tformObj.insert.value = tinyMCEPopup.getLang(action, 'Insert', true); \r\n\r\n\tsetPopupControlsDisabled(true);\r\n\r\n\tif (action == \"update\") {\r\n\t\tvar href = inst.dom.getAttrib(elm, 'href');\r\n\t\tvar onclick = inst.dom.getAttrib(elm, 'onclick');\r\n\r\n\t\t// Setup form data\r\n\t\tsetFormValue('href', href);\r\n\t\tsetFormValue('title', inst.dom.getAttrib(elm, 'title'));\r\n\t\tsetFormValue('id', inst.dom.getAttrib(elm, 'id'));\r\n\t\tsetFormValue('style', inst.dom.getAttrib(elm, \"style\"));\r\n\t\tsetFormValue('rel', inst.dom.getAttrib(elm, 'rel'));\r\n\t\tsetFormValue('rev', inst.dom.getAttrib(elm, 'rev'));\r\n\t\tsetFormValue('charset', inst.dom.getAttrib(elm, 'charset'));\r\n\t\tsetFormValue('hreflang', inst.dom.getAttrib(elm, 'hreflang'));\r\n\t\tsetFormValue('dir', inst.dom.getAttrib(elm, 'dir'));\r\n\t\tsetFormValue('lang', inst.dom.getAttrib(elm, 'lang'));\r\n\t\tsetFormValue('tabindex', inst.dom.getAttrib(elm, 'tabindex', typeof(elm.tabindex) != \"undefined\" ? elm.tabindex : \"\"));\r\n\t\tsetFormValue('accesskey', inst.dom.getAttrib(elm, 'accesskey', typeof(elm.accesskey) != \"undefined\" ? elm.accesskey : \"\"));\r\n\t\tsetFormValue('type', inst.dom.getAttrib(elm, 'type'));\r\n\t\tsetFormValue('onfocus', inst.dom.getAttrib(elm, 'onfocus'));\r\n\t\tsetFormValue('onblur', inst.dom.getAttrib(elm, 'onblur'));\r\n\t\tsetFormValue('onclick', onclick);\r\n\t\tsetFormValue('ondblclick', inst.dom.getAttrib(elm, 'ondblclick'));\r\n\t\tsetFormValue('onmousedown', inst.dom.getAttrib(elm, 'onmousedown'));\r\n\t\tsetFormValue('onmouseup', inst.dom.getAttrib(elm, 'onmouseup'));\r\n\t\tsetFormValue('onmouseover', inst.dom.getAttrib(elm, 'onmouseover'));\r\n\t\tsetFormValue('onmousemove', inst.dom.getAttrib(elm, 'onmousemove'));\r\n\t\tsetFormValue('onmouseout', inst.dom.getAttrib(elm, 'onmouseout'));\r\n\t\tsetFormValue('onkeypress', inst.dom.getAttrib(elm, 'onkeypress'));\r\n\t\tsetFormValue('onkeydown', inst.dom.getAttrib(elm, 'onkeydown'));\r\n\t\tsetFormValue('onkeyup', inst.dom.getAttrib(elm, 'onkeyup'));\r\n\t\tsetFormValue('target', inst.dom.getAttrib(elm, 'target'));\r\n\t\tsetFormValue('classes', inst.dom.getAttrib(elm, 'class'));\r\n\r\n\t\t// Parse onclick data\r\n\t\tif (onclick != null && onclick.indexOf('window.open') != -1)\r\n\t\t\tparseWindowOpen(onclick);\r\n\t\telse\r\n\t\t\tparseFunction(onclick);\r\n\r\n\t\t// Select by the values\r\n\t\tselectByValue(formObj, 'dir', inst.dom.getAttrib(elm, 'dir'));\r\n\t\tselectByValue(formObj, 'rel', inst.dom.getAttrib(elm, 'rel'));\r\n\t\tselectByValue(formObj, 'rev', inst.dom.getAttrib(elm, 'rev'));\r\n\t\tselectByValue(formObj, 'linklisthref', href);\r\n\r\n\t\tif (href.charAt(0) == '#')\r\n\t\t\tselectByValue(formObj, 'anchorlist', href);\r\n\r\n\t\taddClassesToList('classlist', 'advlink_styles');\r\n\r\n\t\tselectByValue(formObj, 'classlist', inst.dom.getAttrib(elm, 'class'), true);\r\n\t\tselectByValue(formObj, 'targetlist', inst.dom.getAttrib(elm, 'target'), true);\r\n\t} else\r\n\t\taddClassesToList('classlist', 'advlink_styles');\r\n}\r\n\r\nfunction checkPrefix(n) {\r\n\tif (n.value && Validator.isEmail(n) && !/^\\s*mailto:/i.test(n.value) && confirm(tinyMCEPopup.getLang('advlink_dlg.is_email')))\r\n\t\tn.value = 'mailto:' + n.value;\r\n\r\n\tif (/^\\s*www\\./i.test(n.value) && confirm(tinyMCEPopup.getLang('advlink_dlg.is_external')))\r\n\t\tn.value = 'http://' + n.value;\r\n}\r\n\r\nfunction setFormValue(name, value) {\r\n\tdocument.forms[0].elements[name].value = value;\r\n}\r\n\r\nfunction parseWindowOpen(onclick) {\r\n\tvar formObj = document.forms[0];\r\n\r\n\t// Preprocess center code\r\n\tif (onclick.indexOf('return false;') != -1) {\r\n\t\tformObj.popupreturn.checked = true;\r\n\t\tonclick = onclick.replace('return false;', '');\r\n\t} else\r\n\t\tformObj.popupreturn.checked = false;\r\n\r\n\tvar onClickData = parseLink(onclick);\r\n\r\n\tif (onClickData != null) {\r\n\t\tformObj.ispopup.checked = true;\r\n\t\tsetPopupControlsDisabled(false);\r\n\r\n\t\tvar onClickWindowOptions = parseOptions(onClickData['options']);\r\n\t\tvar url = onClickData['url'];\r\n\r\n\t\tformObj.popupname.value = onClickData['target'];\r\n\t\tformObj.popupurl.value = url;\r\n\t\tformObj.popupwidth.value = getOption(onClickWindowOptions, 'width');\r\n\t\tformObj.popupheight.value = getOption(onClickWindowOptions, 'height');\r\n\r\n\t\tformObj.popupleft.value = getOption(onClickWindowOptions, 'left');\r\n\t\tformObj.popuptop.value = getOption(onClickWindowOptions, 'top');\r\n\r\n\t\tif (formObj.popupleft.value.indexOf('screen') != -1)\r\n\t\t\tformObj.popupleft.value = \"c\";\r\n\r\n\t\tif (formObj.popuptop.value.indexOf('screen') != -1)\r\n\t\t\tformObj.popuptop.value = \"c\";\r\n\r\n\t\tformObj.popuplocation.checked = getOption(onClickWindowOptions, 'location') == \"yes\";\r\n\t\tformObj.popupscrollbars.checked = getOption(onClickWindowOptions, 'scrollbars') == \"yes\";\r\n\t\tformObj.popupmenubar.checked = getOption(onClickWindowOptions, 'menubar') == \"yes\";\r\n\t\tformObj.popupresizable.checked = getOption(onClickWindowOptions, 'resizable') == \"yes\";\r\n\t\tformObj.popuptoolbar.checked = getOption(onClickWindowOptions, 'toolbar') == \"yes\";\r\n\t\tformObj.popupstatus.checked = getOption(onClickWindowOptions, 'status') == \"yes\";\r\n\t\tformObj.popupdependent.checked = getOption(onClickWindowOptions, 'dependent') == \"yes\";\r\n\r\n\t\tbuildOnClick();\r\n\t}\r\n}\r\n\r\nfunction parseFunction(onclick) {\r\n\tvar formObj = document.forms[0];\r\n\tvar onClickData = parseLink(onclick);\r\n\r\n\t// TODO: Add stuff here\r\n}\r\n\r\nfunction getOption(opts, name) {\r\n\treturn typeof(opts[name]) == \"undefined\" ? \"\" : opts[name];\r\n}\r\n\r\nfunction setPopupControlsDisabled(state) {\r\n\tvar formObj = document.forms[0];\r\n\r\n\tformObj.popupname.disabled = state;\r\n\tformObj.popupurl.disabled = state;\r\n\tformObj.popupwidth.disabled = state;\r\n\tformObj.popupheight.disabled = state;\r\n\tformObj.popupleft.disabled = state;\r\n\tformObj.popuptop.disabled = state;\r\n\tformObj.popuplocation.disabled = state;\r\n\tformObj.popupscrollbars.disabled = state;\r\n\tformObj.popupmenubar.disabled = state;\r\n\tformObj.popupresizable.disabled = state;\r\n\tformObj.popuptoolbar.disabled = state;\r\n\tformObj.popupstatus.disabled = state;\r\n\tformObj.popupreturn.disabled = state;\r\n\tformObj.popupdependent.disabled = state;\r\n\r\n\tsetBrowserDisabled('popupurlbrowser', state);\r\n}\r\n\r\nfunction parseLink(link) {\r\n\tlink = link.replace(new RegExp('&#39;', 'g'), \"'\");\r\n\r\n\tvar fnName = link.replace(new RegExp(\"\\\\s*([A-Za-z0-9\\.]*)\\\\s*\\\\(.*\", \"gi\"), \"$1\");\r\n\r\n\t// Is function name a template function\r\n\tvar template = templates[fnName];\r\n\tif (template) {\r\n\t\t// Build regexp\r\n\t\tvar variableNames = template.match(new RegExp(\"'?\\\\$\\\\{[A-Za-z0-9\\.]*\\\\}'?\", \"gi\"));\r\n\t\tvar regExp = \"\\\\s*[A-Za-z0-9\\.]*\\\\s*\\\\(\";\r\n\t\tvar replaceStr = \"\";\r\n\t\tfor (var i=0; i<variableNames.length; i++) {\r\n\t\t\t// Is string value\r\n\t\t\tif (variableNames[i].indexOf(\"'${\") != -1)\r\n\t\t\t\tregExp += \"'(.*)'\";\r\n\t\t\telse // Number value\r\n\t\t\t\tregExp += \"([0-9]*)\";\r\n\r\n\t\t\treplaceStr += \"$\" + (i+1);\r\n\r\n\t\t\t// Cleanup variable name\r\n\t\t\tvariableNames[i] = variableNames[i].replace(new RegExp(\"[^A-Za-z0-9]\", \"gi\"), \"\");\r\n\r\n\t\t\tif (i != variableNames.length-1) {\r\n\t\t\t\tregExp += \"\\\\s*,\\\\s*\";\r\n\t\t\t\treplaceStr += \"<delim>\";\r\n\t\t\t} else\r\n\t\t\t\tregExp += \".*\";\r\n\t\t}\r\n\r\n\t\tregExp += \"\\\\);?\";\r\n\r\n\t\t// Build variable array\r\n\t\tvar variables = [];\r\n\t\tvariables[\"_function\"] = fnName;\r\n\t\tvar variableValues = link.replace(new RegExp(regExp, \"gi\"), replaceStr).split('<delim>');\r\n\t\tfor (var i=0; i<variableNames.length; i++)\r\n\t\t\tvariables[variableNames[i]] = variableValues[i];\r\n\r\n\t\treturn variables;\r\n\t}\r\n\r\n\treturn null;\r\n}\r\n\r\nfunction parseOptions(opts) {\r\n\tif (opts == null || opts == \"\")\r\n\t\treturn [];\r\n\r\n\t// Cleanup the options\r\n\topts = opts.toLowerCase();\r\n\topts = opts.replace(/;/g, \",\");\r\n\topts = opts.replace(/[^0-9a-z=,]/g, \"\");\r\n\r\n\tvar optionChunks = opts.split(',');\r\n\tvar options = [];\r\n\r\n\tfor (var i=0; i<optionChunks.length; i++) {\r\n\t\tvar parts = optionChunks[i].split('=');\r\n\r\n\t\tif (parts.length == 2)\r\n\t\t\toptions[parts[0]] = parts[1];\r\n\t}\r\n\r\n\treturn options;\r\n}\r\n\r\nfunction buildOnClick() {\r\n\tvar formObj = document.forms[0];\r\n\r\n\tif (!formObj.ispopup.checked) {\r\n\t\tformObj.onclick.value = \"\";\r\n\t\treturn;\r\n\t}\r\n\r\n\tvar onclick = \"window.open('\";\r\n\tvar url = formObj.popupurl.value;\r\n\r\n\tonclick += url + \"','\";\r\n\tonclick += formObj.popupname.value + \"','\";\r\n\r\n\tif (formObj.popuplocation.checked)\r\n\t\tonclick += \"location=yes,\";\r\n\r\n\tif (formObj.popupscrollbars.checked)\r\n\t\tonclick += \"scrollbars=yes,\";\r\n\r\n\tif (formObj.popupmenubar.checked)\r\n\t\tonclick += \"menubar=yes,\";\r\n\r\n\tif (formObj.popupresizable.checked)\r\n\t\tonclick += \"resizable=yes,\";\r\n\r\n\tif (formObj.popuptoolbar.checked)\r\n\t\tonclick += \"toolbar=yes,\";\r\n\r\n\tif (formObj.popupstatus.checked)\r\n\t\tonclick += \"status=yes,\";\r\n\r\n\tif (formObj.popupdependent.checked)\r\n\t\tonclick += \"dependent=yes,\";\r\n\r\n\tif (formObj.popupwidth.value != \"\")\r\n\t\tonclick += \"width=\" + formObj.popupwidth.value + \",\";\r\n\r\n\tif (formObj.popupheight.value != \"\")\r\n\t\tonclick += \"height=\" + formObj.popupheight.value + \",\";\r\n\r\n\tif (formObj.popupleft.value != \"\") {\r\n\t\tif (formObj.popupleft.value != \"c\")\r\n\t\t\tonclick += \"left=\" + formObj.popupleft.value + \",\";\r\n\t\telse\r\n\t\t\tonclick += \"left='+(screen.availWidth/2-\" + (formObj.popupwidth.value/2) + \")+',\";\r\n\t}\r\n\r\n\tif (formObj.popuptop.value != \"\") {\r\n\t\tif (formObj.popuptop.value != \"c\")\r\n\t\t\tonclick += \"top=\" + formObj.popuptop.value + \",\";\r\n\t\telse\r\n\t\t\tonclick += \"top='+(screen.availHeight/2-\" + (formObj.popupheight.value/2) + \")+',\";\r\n\t}\r\n\r\n\tif (onclick.charAt(onclick.length-1) == ',')\r\n\t\tonclick = onclick.substring(0, onclick.length-1);\r\n\r\n\tonclick += \"');\";\r\n\r\n\tif (formObj.popupreturn.checked)\r\n\t\tonclick += \"return false;\";\r\n\r\n\t// tinyMCE.debug(onclick);\r\n\r\n\tformObj.onclick.value = onclick;\r\n\r\n\tif (formObj.href.value == \"\")\r\n\t\tformObj.href.value = url;\r\n}\r\n\r\nfunction setAttrib(elm, attrib, value) {\r\n\tvar formObj = document.forms[0];\r\n\tvar valueElm = formObj.elements[attrib.toLowerCase()];\r\n\tvar dom = tinyMCEPopup.editor.dom;\r\n\r\n\tif (typeof(value) == \"undefined\" || value == null) {\r\n\t\tvalue = \"\";\r\n\r\n\t\tif (valueElm)\r\n\t\t\tvalue = valueElm.value;\r\n\t}\r\n\r\n\t// Clean up the style\r\n\tif (attrib == 'style')\r\n\t\tvalue = dom.serializeStyle(dom.parseStyle(value), 'a');\r\n\r\n\tdom.setAttrib(elm, attrib, value);\r\n}\r\n\r\nfunction getAnchorListHTML(id, target) {\r\n\tvar ed = tinyMCEPopup.editor, nodes = ed.dom.select('a'), name, i, len, html = \"\";\r\n\r\n\tfor (i=0, len=nodes.length; i<len; i++) {\r\n\t\tif ((name = ed.dom.getAttrib(nodes[i], \"name\")) != \"\")\r\n\t\t\thtml += '<option value=\"#' + name + '\">' + name + '</option>';\r\n\t}\r\n\r\n\tif (html == \"\")\r\n\t\treturn \"\";\r\n\r\n\thtml = '<select id=\"' + id + '\" name=\"' + id + '\" class=\"mceAnchorList\"'\r\n\t\t+ ' onchange=\"this.form.' + target + '.value=this.options[this.selectedIndex].value\"'\r\n\t\t+ '>'\r\n\t\t+ '<option value=\"\">---</option>'\r\n\t\t+ html\r\n\t\t+ '</select>';\r\n\r\n\treturn html;\r\n}\r\n\r\nfunction insertAction() {\r\n\tvar inst = tinyMCEPopup.editor;\r\n\tvar elm, elementArray, i;\r\n\r\n\telm = inst.selection.getNode();\r\n\tcheckPrefix(document.forms[0].href);\r\n\r\n\telm = inst.dom.getParent(elm, \"A\");\r\n\r\n\t// Remove element if there is no href\r\n\tif (!document.forms[0].href.value) {\r\n\t\ti = inst.selection.getBookmark();\r\n\t\tinst.dom.remove(elm, 1);\r\n\t\tinst.selection.moveToBookmark(i);\r\n\t\ttinyMCEPopup.execCommand(\"mceEndUndoLevel\");\r\n\t\ttinyMCEPopup.close();\r\n\t\treturn;\r\n\t}\r\n\r\n\t// Create new anchor elements\r\n\tif (elm == null) {\r\n\t\tinst.getDoc().execCommand(\"unlink\", false, null);\r\n\t\ttinyMCEPopup.execCommand(\"mceInsertLink\", false, \"#mce_temp_url#\", {skip_undo : 1});\r\n\r\n\t\telementArray = tinymce.grep(inst.dom.select(\"a\"), function(n) {return inst.dom.getAttrib(n, 'href') == '#mce_temp_url#';});\r\n\t\tfor (i=0; i<elementArray.length; i++)\r\n\t\t\tsetAllAttribs(elm = elementArray[i]);\r\n\t} else\r\n\t\tsetAllAttribs(elm);\r\n\r\n\t// Don't move caret if selection was image\r\n\tif (elm.childNodes.length != 1 || elm.firstChild.nodeName != 'IMG') {\r\n\t\tinst.focus();\r\n\t\tinst.selection.select(elm);\r\n\t\tinst.selection.collapse(0);\r\n\t\ttinyMCEPopup.storeSelection();\r\n\t}\r\n\r\n\ttinyMCEPopup.execCommand(\"mceEndUndoLevel\");\r\n\ttinyMCEPopup.close();\r\n}\r\n\r\nfunction setAllAttribs(elm) {\r\n\tvar formObj = document.forms[0];\r\n\tvar href = formObj.href.value.replace(/ /g, '%20');\r\n\tvar target = getSelectValue(formObj, 'targetlist');\r\n\r\n\tsetAttrib(elm, 'href', href);\r\n\tsetAttrib(elm, 'title');\r\n\tsetAttrib(elm, 'target', target == '_self' ? '' : target);\r\n\tsetAttrib(elm, 'id');\r\n\tsetAttrib(elm, 'style');\r\n\tsetAttrib(elm, 'class', getSelectValue(formObj, 'classlist'));\r\n\tsetAttrib(elm, 'rel');\r\n\tsetAttrib(elm, 'rev');\r\n\tsetAttrib(elm, 'charset');\r\n\tsetAttrib(elm, 'hreflang');\r\n\tsetAttrib(elm, 'dir');\r\n\tsetAttrib(elm, 'lang');\r\n\tsetAttrib(elm, 'tabindex');\r\n\tsetAttrib(elm, 'accesskey');\r\n\tsetAttrib(elm, 'type');\r\n\tsetAttrib(elm, 'onfocus');\r\n\tsetAttrib(elm, 'onblur');\r\n\tsetAttrib(elm, 'onclick');\r\n\tsetAttrib(elm, 'ondblclick');\r\n\tsetAttrib(elm, 'onmousedown');\r\n\tsetAttrib(elm, 'onmouseup');\r\n\tsetAttrib(elm, 'onmouseover');\r\n\tsetAttrib(elm, 'onmousemove');\r\n\tsetAttrib(elm, 'onmouseout');\r\n\tsetAttrib(elm, 'onkeypress');\r\n\tsetAttrib(elm, 'onkeydown');\r\n\tsetAttrib(elm, 'onkeyup');\r\n\r\n\t// Refresh in old MSIE\r\n\tif (tinyMCE.isMSIE5)\r\n\t\telm.outerHTML = elm.outerHTML;\r\n}\r\n\r\nfunction getSelectValue(form_obj, field_name) {\r\n\tvar elm = form_obj.elements[field_name];\r\n\r\n\tif (!elm || elm.options == null || elm.selectedIndex == -1)\r\n\t\treturn \"\";\r\n\r\n\treturn elm.options[elm.selectedIndex].value;\r\n}\r\n\r\nfunction getLinkListHTML(elm_id, target_form_element, onchange_func) {\r\n\tif (typeof(tinyMCELinkList) == \"undefined\" || tinyMCELinkList.length == 0)\r\n\t\treturn \"\";\r\n\r\n\tvar html = \"\";\r\n\r\n\thtml += '<select id=\"' + elm_id + '\" name=\"' + elm_id + '\"';\r\n\thtml += ' class=\"mceLinkList\" onfoc2us=\"tinyMCE.addSelectAccessibility(event, this, window);\" onchange=\"this.form.' + target_form_element + '.value=';\r\n\thtml += 'this.options[this.selectedIndex].value;';\r\n\r\n\tif (typeof(onchange_func) != \"undefined\")\r\n\t\thtml += onchange_func + '(\\'' + target_form_element + '\\',this.options[this.selectedIndex].text,this.options[this.selectedIndex].value);';\r\n\r\n\thtml += '\"><option value=\"\">---</option>';\r\n\r\n\tfor (var i=0; i<tinyMCELinkList.length; i++)\r\n\t\thtml += '<option value=\"' + tinyMCELinkList[i][1] + '\">' + tinyMCELinkList[i][0] + '</option>';\r\n\r\n\thtml += '</select>';\r\n\r\n\treturn html;\r\n\r\n\t// tinyMCE.debug('-- image list start --', html, '-- image list end --');\r\n}\r\n\r\nfunction getTargetListHTML(elm_id, target_form_element) {\r\n\tvar targets = tinyMCEPopup.getParam('theme_advanced_link_targets', '').split(';');\r\n\tvar html = '';\r\n\r\n\thtml += '<select id=\"' + elm_id + '\" name=\"' + elm_id + '\" onf2ocus=\"tinyMCE.addSelectAccessibility(event, this, window);\" onchange=\"this.form.' + target_form_element + '.value=';\r\n\thtml += 'this.options[this.selectedIndex].value;\">';\r\n\thtml += '<option value=\"_self\">' + tinyMCEPopup.getLang('advlink_dlg.target_same') + '</option>';\r\n\thtml += '<option value=\"_blank\">' + tinyMCEPopup.getLang('advlink_dlg.target_blank') + ' (_blank)</option>';\r\n\thtml += '<option value=\"_parent\">' + tinyMCEPopup.getLang('advlink_dlg.target_parent') + ' (_parent)</option>';\r\n\thtml += '<option value=\"_top\">' + tinyMCEPopup.getLang('advlink_dlg.target_top') + ' (_top)</option>';\r\n\r\n\tfor (var i=0; i<targets.length; i++) {\r\n\t\tvar key, value;\r\n\r\n\t\tif (targets[i] == \"\")\r\n\t\t\tcontinue;\r\n\r\n\t\tkey = targets[i].split('=')[0];\r\n\t\tvalue = targets[i].split('=')[1];\r\n\r\n\t\thtml += '<option value=\"' + key + '\">' + value + ' (' + key + ')</option>';\r\n\t}\r\n\r\n\thtml += '</select>';\r\n\r\n\treturn html;\r\n}\r\n\r\n// While loading\r\npreinit();\r\ntinyMCEPopup.onInit.add(init);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/ar_dlg.js",
    "content": "tinyMCE.addI18n('ar.advlink_dlg',{target_name:\"\\u0627\\u0633\\u0645 \\u0627\\u0644\\u0647\\u062f\\u0641\",classes:\"\\u0635\\u0646\\u0641\",style:\"\\u0634\\u0643\\u0644\",id:\"Id\",popup_position:\"\\u0645\\u0648\\u0642\\u0639 (X/Y)\",langdir:\"\\u0627\\u062a\\u062c\\u0627\\u0647 \\u0627\\u0644\\u0644\\u063a\\u0629\",popup_size:\"\\u062d\\u062c\\u0645\",popup_dependent:\"\\u062e\\u0627\\u0636\\u0639 (Mozilla/Firefox only)\",popup_resizable:\"\\u062a\\u063a\\u064a\\u064a\\u0631 \\u062d\\u062c\\u0645 \\u0646\\u0627\\u0641\\u0630\\u0629\",popup_location:\"\\u0639\\u0631\\u0636 \\u0634\\u0631\\u064a\\u0637 \\u0627\\u0644\\u0645\\u0648\\u0642\\u0639\",popup_menubar:\"\\u0639\\u0631\\u0636 \\u0634\\u0631\\u064a\\u0637 \\u0627\\u0644\\u0642\\u0648\\u0627\\u0626\\u0645\",popup_toolbar:\"\\u0625\\u0638\\u0647\\u0627\\u0631 \\u0634\\u0631\\u064a\\u0637 \\u0627\\u0644\\u0623\\u062f\\u0648\\u0627\\u062a\",popup_statusbar:\"\\u0639\\u0631\\u0636 \\u0634\\u0631\\u064a\\u0637 \\u0627\\u0644\\u062d\\u0627\\u0644\\u0629\",popup_scrollbars:\"\\u0639\\u0631\\u0636 \\u0623\\u0634\\u0631\\u0637\\u0629 \\u0627\\u0644\\u062a\\u0645\\u0631\\u064a\\u0631\",popup_return:\"\\u0625\\u062f\\u0631\\u0627\\u062c \\'\\u0639\\u0648\\u062f\\u0629 \\u0643\\u0627\\u0630\\u0628\\u0629\\' \\'return false\\'\",popup_name:\"\\u0627\\u0633\\u0645 \\u0627\\u0644\\u0646\\u0627\\u0641\\u0630\\u0629\",popup_url:\"\\u0631\\u0627\\u0628\\u0637 \\u0637\\u0641\\u0648 \\u0639\\u0644\\u0649 \\u0627\\u0644\\u0633\\u0637\\u062d\",popup:\"\\u062c\\u0627\\u0641\\u0627 \\u0633\\u0643\\u0631\\u064a\\u0628\\u062a\",target_blank:\"\\u0641\\u064a \\u0641\\u062a\\u062d \\u0646\\u0627\\u0641\\u0630\\u0629 \\u062c\\u062f\\u064a\\u062f\\u0629\",target_top:\"\\u0641\\u062a\\u062d \\u0641\\u064a \\u0627\\u0644\\u0625\\u0637\\u0627\\u0631 \\u0627\\u0644\\u0639\\u0644\\u0648\\u064a (\\u064a\\u062d\\u0644 \\u0645\\u062d\\u0644 \\u0643\\u0627\\u0641\\u0629 \\u0627\\u0644\\u0625\\u0637\\u0627\\u0631\\u0627\\u062a)\",target_parent:\"\\u0641\\u062a\\u062d \\u0641\\u064a \\u0627\\u0644\\u0625\\u0637\\u0627\\u0631 \\u0627\\u0644\\u0623\\u0635\\u0644\",target_same:\"\\u0641\\u062a\\u062d \\u0641\\u064a \\u0647\\u0630\\u0627 \\u0627\\u0644\\u0625\\u0637\\u0627\\u0631\",anchor_names:\"\\u0645\\u0631\\u062a\\u0643\\u0632\\u0627\\u062a\",popup_opts:\"\\u062e\\u064a\\u0627\\u0631\\u0627\\u062a\",advanced_props:\"\\u062e\\u0635\\u0627\\u0626\\u0635 \\u0645\\u062a\\u0642\\u062f\\u0645\\u0629\",event_props:\"\\u0623\\u062d\\u062f\\u0627\\u062b\",popup_props:\"\\u062e\\u0635\\u0627\\u0626\\u0635 \\u0645\\u0631\\u0628\\u0639 \\u0637\\u0641\\u0648 \\u0639\\u0644\\u0649 \\u0627\\u0644\\u0633\\u0637\\u062d \",general_props:\"\\u0627\\u0644\\u062e\\u0635\\u0627\\u0626\\u0635 \\u0627\\u0644\\u0639\\u0627\\u0645\\u0629\",advanced_tab:\"\\u0645\\u062a\\u0642\\u062f\\u0645\",events_tab:\"\\u0623\\u062d\\u062f\\u0627\\u062b\",popup_tab:\"\\u064a\\u0645\\u0631\\u0628\\u0639 \\u0637\\u0641\\u0648 \\u0639\\u0644\\u0649 \\u0627\\u0644\\u0633\\u0637\\u062d\",general_tab:\"\\u0639\\u0627\\u0645\",list:\"\\u0642\\u0627\\u0626\\u0645\\u0647 \\u0627\\u0644\\u0645\\u0648\\u0627\\u0642\\u0639\",is_external:\"\\u0627\\u0644\\u0631\\u0627\\u0628\\u0637 \\u064a\\u0628\\u062f\\u0648  \\u0627\\u0646\\u0647 \\u0644\\u0645\\u0648\\u0642\\u0639 \\u062e\\u0627\\u0631\\u062c\\u0649 \\u0647\\u0644 \\u062a\\u0631\\u064a\\u062f \\u0627\\u0646 \\u0646\\u0636\\u0639 http://\",is_email:\"\\u0627\\u0644\\u0631\\u0627\\u0628\\u0637 \\u0631\\u0628\\u0645\\u0627 \\u0628\\u0631\\u064a\\u062f \\u0627\\u0644\\u0627\\u0643\\u062a\\u0631\\u0648\\u0646\\u0649 \\u0647\\u0644 \\u062a\\u0631\\u064a\\u062f \\u0627\\u0646 \\u0646\\u0636\\u0639 \\u0648\\u0633\\u0645 \\u0631\\u0627\\u0628\\u0637 \\u0627\\u0644\\u0628\\u0631\\u064a\\u062f\",titlefield:\"\\u0627\\u0633\\u0645 \\u0627\\u0644\\u0631\\u0627\\u0628\\u0637\",target:\"Target\",url:\"\\u0639\\u0646\\u0648\\u0627\\u0646 \\u0627\\u0644\\u0631\\u0627\\u0628\\u0637\",title:\"\\u0627\\u062f\\u062e\\u0627\\u0644 -\\u062a\\u0639\\u062f\\u064a\\u0644 \\u0631\\u0627\\u0628\\u0637\",link_list:\"\\u0642\\u0627\\u0626\\u0645\\u0629 \\u0627\\u0644\\u0631\\u0648\\u0627\\u0628\\u0637\",rtl:\"\\u0645\\u0646 \\u0627\\u0644\\u064a\\u0645\\u064a\\u0646 \\u0625\\u0644\\u0649 \\u0627\\u0644\\u064a\\u0633\\u0627\\u0631\",ltr:\"\\u0645\\u0646 \\u0627\\u0644\\u064a\\u0633\\u0627\\u0631 \\u0625\\u0644\\u0649 \\u0627\\u0644\\u064a\\u0645\\u064a\\u0646\",accesskey:\"\\u0645\\u0641\\u062a\\u0627\\u062d \\u0627\\u0644\\u0648\\u0635\\u0648\\u0644\",tabindex:\"  Tab \\u0641\\u0647\\u0631\\u0633\",rev:\"\\u0639\\u0644\\u0627\\u0642\\u0629 \\u0627\\u0644\\u0647\\u062f\\u0641 \\u0644\\u0635\\u0641\\u062d\\u0629\",rel:\"\\u0627\\u0644\\u0639\\u0644\\u0627\\u0642\\u0629 \\u0627\\u0644\\u0635\\u0641\\u062d\\u0629 \\u0644\\u0627\\u0633\\u062a\\u0647\\u062f\\u0627\\u0641\",mime:\"\\u0627\\u0644\\u0647\\u062f\\u0641 \\u0646\\u0648\\u0639 \\u0627\\u0644\\u0645\\u0644\\u0641\",encoding:\"\\u0631\\u0645\\u0632 \\u0627\\u0644\\u0644\\u063a\\u0629\",langcode:\"Language code\",target_langcode:\"\\u0644\\u063a\\u0629 \\u0627\\u0644\\u0647\\u062f\\u0641\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/az_dlg.js",
    "content": "tinyMCE.addI18n('az.advlink_dlg',{\"target_name\":\"H\\u0259d\\u0259f ad\\u0131\",classes:\"Sinifl\\u0259r\",style:\"Sil\",id:\"\\u0130dentifikator\",\"popup_position\":\"M\\u00f6vqe (X/Y)\",langdir:\"Dil istiqam\\u0259ti\",\"popup_size\":\"\\u00f6l\\u00e7\\u00fc\",\"popup_dependent\":\"As\\u0131l\\u0131 olan (yaln\\u0131z Mozilla/Firefox)\",\"popup_resizable\":\"P\\u0259nc\\u0259r\\u0259 \\u00f6l\\u00e7\\u00fcs\\u00fcn\\u00fc d\\u0259yi\\u015fil\\u0259n et\",\"popup_location\":\"\\u00dcnvan s\\u0259trini g\\u00f6st\\u0259r\",\"popup_menubar\":\"Menyu s\\u0259trini g\\u00f6st\\u0259r\",\"popup_toolbar\":\"Al\\u0259tl\\u0259r panelini g\\u00f6st\\u0259r\",\"popup_statusbar\":\"M\\u0259tn v\\u0259ziyy\\u0259tini g\\u00f6st\\u0259r\",\"popup_scrollbars\":\"F\\u0131rlanan\\u0131n zolaqlar\\u0131n\\u0131 g\\u00f6st\\u0259r\",\"popup_return\":\"\\'return false\\' \\u0259lav\\u0259 et\",\"popup_name\":\"P\\u0259nc\\u0259r\\u0259nin ad\\u0131\",\"popup_url\":\"\\u00dcz\\u0259 \\u00e7\\u0131xan p\\u0259nc\\u0259r\\u0259nin \\u00fcnvan\\u0131\",popup:\"\\u00dcz\\u0259 \\u00e7\\u0131xan Javascript-p\\u0259nc\\u0259r\\u0259\",\"target_blank\":\"Yeni p\\u0259nc\\u0259r\\u0259d\\u0259 a\\u00e7\",\"target_top\":\"Yuxar\\u0131 \\u00e7\\u0259r\\u00e7iv\\u0259d\\u0259 a\\u00e7 (dig\\u0259rl\\u0259rini d\\u0259 doldurur)\",\"target_parent\":\"Ana p\\u0259nc\\u0259r\\u0259d\\u0259 a\\u00e7 / \\u00e7\\u0259r\\u00e7iv\\u0259\",\"target_same\":\"Bu p\\u0259nc\\u0259r\\u0259d\\u0259 a\\u00e7 / \\u00e7\\u0259r\\u00e7iv\\u0259\",\"anchor_names\":\"L\\u00f6vb\\u0259r\",\"popup_opts\":\"Parametrl\\u0259r\",\"advanced_props\":\"\\u018flav\\u0259 x\\u00fcsusiyy\\u0259tl\\u0259r\",\"event_props\":\"Hadis\\u0259l\\u0259r\",\"popup_props\":\"\\u00dcz\\u0259 \\u00e7\\u0131xan p\\u0259nc\\u0259r\\u0259l\\u0259rin x\\u00fcsusiyy\\u0259tl\\u0259ti\",\"general_props\":\"\\u00dcmumi x\\u00fcsusiyy\\u0259tl\\u0259ri\",\"advanced_tab\":\"\\u018flav\\u0259l\\u0259r\",\"events_tab\":\"Hadis\\u0259l\\u0259r\",\"popup_tab\":\"\\u00dcz\\u0259 \\u00e7\\u0131xan p\\u0259nc\\u0259r\\u0259\",\"general_tab\":\"\\u00dcmumi\",list:\"Ke\\u00e7id siyah\\u0131s\\u0131\",\"is_external\":\"Daxil edil\\u0259n \\u00fcnvan xarici ke\\u00e7id\\u0259 b\\u0259nz\\u0259yir. http:// prefiksini \\u0259lav\\u0259 etm\\u0259k ist\\u0259yirsiniz?\",\"is_email\":\"Daxil edil\\u0259n \\u00fcnvan e-po\\u00e7ta b\\u0259nz\\u0259yir. mailto: prefiksini \\u0259lav\\u0259 etm\\u0259k ist\\u0259yirsiniz?\",titlefield:\"Ad\\u0131\",target:\"H\\u0259d\\u0259f\",url:\"Ke\\u00e7id \\u00fcnvan\\u0131\",title:\"Ke\\u00e7idi \\u0259lav\\u0259/redakt\\u0259 et\",\"link_list\":\"Ke\\u00e7id siyah\\u0131s\\u0131\",rtl:\"Sa\\u011fda-sola\",ltr:\"Solda-sa\\u011fa\",accesskey:\"Giri\\u015f klavi\\u015fi\",tabindex:\"Hesab indeksi\",rev:\"H\\u0259d\\u0259fin p\\u0259nc\\u0259r\\u0259y\\u0259 m\\u00fcnasib\\u0259ti\",rel:\"P\\u0259nc\\u0259r\\u0259nin h\\u0259d\\u0259f\\u0259 m\\u00fcnasib\\u0259ti\",mime:\"H\\u0259d\\u0259fli MIME-n\\u00f6v\",encoding:\"H\\u0259d\\u0259fli kodla\\u015fd\\u0131rma\",langcode:\"Dil kodu\",\"target_langcode\":\"H\\u0259d\\u0259fli dil\",width:\"Width\",height:\"Height\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/be_dlg.js",
    "content": "tinyMCE.addI18n('be.advlink_dlg',{\"target_name\":\"\\u0406\\u043c\\u044f \\u043c\\u044d\\u0442\\u044b\",classes:\"\\u041a\\u043b\\u0430\\u0441\\u044b\",style:\"\\u0421\\u0442\\u044b\\u043b\\u044c\",id:\"\\u0406\\u0434\\u044d\\u043d\\u0442\\u044b\\u0444\\u0456\\u043a\\u0430\\u0442\\u0430\\u0440\",\"popup_position\":\"\\u041f\\u0430\\u0437\\u0456\\u0446\\u044b\\u044f (X/Y)\",langdir:\"\\u041a\\u0456\\u0440\\u0443\\u043d\\u0430\\u043a \\u043c\\u043e\\u0432\\u044b\",\"popup_size\":\"\\u041f\\u0430\\u043c\\u0435\\u0440\",\"popup_dependent\":\"\\u0417\\u0430\\u043b\\u0435\\u0436\\u043d\\u044b\\u044f (\\u0442\\u043e\\u043b\\u044c\\u043a\\u0456 Mozilla/Firefox)\",\"popup_resizable\":\"\\u0414\\u0430\\u0437\\u0432\\u043e\\u043b\\u0456\\u0446\\u044c \\u0437\\u043c\\u044f\\u043d\\u044f\\u0446\\u044c \\u043f\\u0430\\u043c\\u0435\\u0440\",\"popup_location\":\"\\u041f\\u0430\\u043a\\u0430\\u0437\\u0430\\u0446\\u044c \\u0440\\u0430\\u0434\\u043e\\u043a \\u0430\\u0434\\u0440\\u0430\\u0441\\u0443\",\"popup_menubar\":\"\\u041f\\u0430\\u043a\\u0430\\u0437\\u0430\\u0446\\u044c \\u0440\\u0430\\u0434\\u043e\\u043a \\u043c\\u0435\\u043d\\u044e\",\"popup_toolbar\":\"\\u041f\\u0430\\u043a\\u0430\\u0437\\u0430\\u0446\\u044c \\u043f\\u0430\\u043d\\u044d\\u043b\\u0456 \\u043f\\u0440\\u044b\\u043b\\u0430\\u0434\",\"popup_statusbar\":\"\\u041f\\u0430\\u043a\\u0430\\u0437\\u0430\\u0446\\u044c \\u0440\\u0430\\u0434\\u043e\\u043a \\u0441\\u0442\\u0430\\u043d\\u0443\",\"popup_scrollbars\":\"\\u041f\\u0430\\u043a\\u0430\\u0437\\u0430\\u0446\\u044c \\u043f\\u0430\\u043b\\u043e\\u0441\\u044b \\u043f\\u0440\\u0430\\u0433\\u043e\\u0440\\u0442\\u043a\\u0456\",\"popup_return\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\'return false\\'\",\"popup_name\":\"\\u041d\\u0430\\u0437\\u0432\\u0430 \\u0430\\u043a\\u043d\\u0430\",\"popup_url\":\"\\u0410\\u0434\\u0440\\u0430\\u0441 \\u0443\\u0441\\u043f\\u043b\\u044b\\u0432\\u0430\\u043b\\u044c\\u043d\\u0430\\u0433\\u0430 \\u0430\\u043a\\u043d\\u0430\",popup:\"\\u0423\\u0441\\u043f\\u043b\\u044b\\u0432\\u0430\\u043b\\u044c\\u043d\\u0430\\u0435 Javascript-\\u0430\\u043a\\u043d\\u043e\",\"target_blank\":\"\\u0410\\u0434\\u043a\\u0440\\u044b\\u0446\\u044c \\u0443 \\u043d\\u043e\\u0432\\u044b\\u043c \\u0430\\u043a\\u043d\\u0435\",\"target_top\":\"\\u0410\\u0434\\u043a\\u0440\\u044b\\u0446\\u044c \\u0443 \\u0432\\u0435\\u0440\\u0445\\u043d\\u0456\\u043c \\u0444\\u0440\\u044d\\u0439\\u043c\\u0435 (\\u0437\\u0430\\u043c\\u044f\\u0448\\u0447\\u0430\\u0435 \\u045e\\u0441\\u0451 \\u0430\\u0441\\u0442\\u0430\\u0442\\u043d\\u0456\\u044f)\",\"target_parent\":\"\\u0410\\u0434\\u043a\\u0440\\u044b\\u0446\\u044c \\u0443 \\u0431\\u0430\\u0446\\u044c\\u043a\\u043e\\u045e\\u0441\\u043a\\u0456\\u043c \\u0430\\u043a\\u043d\\u0435 / \\u0444\\u0440\\u044d\\u0439\\u043c\\u0435\",\"target_same\":\"\\u0410\\u0434\\u043a\\u0440\\u044b\\u0446\\u044c \\u0443 \\u0433\\u044d\\u0442\\u044b\\u043c \\u0430\\u043a\\u043d\\u0435 / \\u0444\\u0440\\u044d\\u0439\\u043c\\u0435\",\"anchor_names\":\"\\u042f\\u043a\\u0430\\u0440\\u044b\",\"popup_opts\":\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b\",\"advanced_props\":\"\\u0414\\u0430\\u0434\\u0430\\u0442\\u043a\\u043e\\u0432\\u044b\\u044f \\u045e\\u043b\\u0430\\u0441\\u0446\\u0456\\u0432\\u0430\\u0441\\u0446\\u0456\",\"event_props\":\"\\u041f\\u0430\\u0434\\u0437\\u0435\\u0456\",\"popup_props\":\"\\u0423\\u043b\\u0430\\u0441\\u0446\\u0456\\u0432\\u0430\\u0441\\u0446\\u0456 \\u045e\\u0441\\u043f\\u043b\\u044b\\u0432\\u0430\\u043b\\u044c\\u043d\\u0430\\u0433\\u0430 \\u0430\\u043a\\u043d\\u0430\",\"general_props\":\"\\u0410\\u0433\\u0443\\u043b\\u044c\\u043d\\u044b\\u044f \\u045e\\u043b\\u0430\\u0441\\u0446\\u0456\\u0432\\u0430\\u0441\\u0446\\u0456\",\"advanced_tab\":\"\\u0414\\u0430\\u0434\\u0430\\u0442\\u043a\\u043e\\u0432\\u044b\\u044f\",\"events_tab\":\"\\u041f\\u0430\\u0434\\u0437\\u0435\\u0456\",\"popup_tab\":\"\\u0423\\u0441\\u043f\\u043b\\u044b\\u0432\\u0430\\u043b\\u044c\\u043d\\u0430\\u0435 \\u0430\\u043a\\u043d\\u043e\",\"general_tab\":\"\\u0410\\u0433\\u0443\\u043b\\u044c\\u043d\\u044b\\u044f\",list:\"\\u0421\\u043f\\u0456\\u0441 \\u0441\\u043f\\u0430\\u0441\\u044b\\u043b\\u0430\\u043a\",\"is_external\":\"\\u0423\\u0432\\u0435\\u0434\\u0437\\u0435\\u043d\\u044b \\u0430\\u0434\\u0440\\u0430\\u0441 \\u043f\\u0430\\u0434\\u043e\\u0431\\u043d\\u044b \\u043d\\u0430 \\u0432\\u043e\\u043d\\u043a\\u0430\\u0432\\u0443\\u044e \\u0441\\u043f\\u0430\\u0441\\u044b\\u043b\\u043a\\u0443, \\u0432\\u044b \\u0436\\u0430\\u0434\\u0430\\u0435\\u0446\\u0435 \\u0434\\u0430\\u0434\\u0430\\u0446\\u044c \\u043f\\u0440\\u044d\\u0444\\u0456\\u043a\\u0441 http://?\",\"is_email\":\"\\u0423\\u0432\\u0435\\u0434\\u0437\\u0435\\u043d\\u044b \\u0430\\u0434\\u0440\\u0430\\u0441 \\u043f\\u0430\\u0434\\u043e\\u0431\\u043d\\u044b \\u043d\\u0430 email, \\u0432\\u044b \\u0436\\u0430\\u0434\\u0430\\u0435\\u0446\\u0435 \\u0434\\u0430\\u0434\\u0430\\u0446\\u044c \\u043f\\u0440\\u044d\\u0444\\u0456\\u043a\\u0441 mailto:?\",titlefield:\"\\u041d\\u0430\\u0437\\u0432\\u0430\",target:\"\\u041c\\u044d\\u0442\\u0430\",url:\"\\u0410\\u0434\\u0440\\u0430\\u0441 \\u0441\\u043f\\u0430\\u0441\\u044b\\u043b\\u043a\\u0456\",title:\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c/\\u0440\\u044d\\u0434\\u0430\\u0433\\u0430\\u0432\\u0430\\u0446\\u044c \\u0441\\u043f\\u0430\\u0441\\u044b\\u043b\\u043a\\u0443\",\"link_list\":\"\\u0421\\u043f\\u0456\\u0441 \\u0441\\u043f\\u0430\\u0441\\u044b\\u043b\\u0430\\u043a\",rtl:\"\\u0421\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043d\\u0430\\u043b\\u0435\\u0432\\u0430\",ltr:\"\\u0417\\u043b\\u0435\\u0432\\u0430 \\u043d\\u0430\\u043f\\u0440\\u0430\\u0432\\u0430\",accesskey:\"\\u041a\\u043b\\u0430\\u0432\\u0456\\u0448\\u0430 \\u0434\\u043e\\u0441\\u0442\\u0443\\u043f\\u0443\",tabindex:\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u043e\\u0432\\u0430\\u043a\",rev:\"\\u0421\\u0442\\u0430\\u045e\\u043b\\u0435\\u043d\\u043d\\u0435 \\u043c\\u044d\\u0442\\u0430 \\u0434\\u0430 \\u0441\\u0442\\u0430\\u0440\\u043e\\u043d\\u043a\\u0456\",rel:\"\\u0421\\u0442\\u0430\\u045e\\u043b\\u0435\\u043d\\u043d\\u0435 \\u0441\\u0442\\u0430\\u0440\\u043e\\u043d\\u043a\\u0430 \\u0434\\u0430 \\u043c\\u044d\\u0442\\u044b\",mime:\"\\u041c\\u044d\\u0442\\u0430\\u0432\\u044b MIME-\\u0442\\u044b\\u043f\",encoding:\"\\u041a\\u0430\\u0434\\u0437\\u0456\\u0440\\u043e\\u045e\\u043a\\u0430 \\u043c\\u044d\\u0442\\u044b\",langcode:\"\\u041a\\u043e\\u0434 \\u043c\\u043e\\u0432\\u044b\",\"target_langcode\":\"\\u041c\\u043e\\u0432\\u0430 \\u043c\\u044d\\u0442\\u044b\",width:\"\\u0428\\u044b\\u0440\\u044b\\u043d\\u044f\",height:\"\\u0412\\u044b\\u0448\\u044b\\u043d\\u044f\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/cs_dlg.js",
    "content": "tinyMCE.addI18n('cs.advlink_dlg',{target_name:\"N\\u00e1zev c\\u00edle\",classes:\"T\\u0159\\u00eddy\",style:\"Styl\",id:\"ID\",popup_position:\"Um\\u00edst\\u011bn\\u00ed (X/Y)\",langdir:\"Sm\\u011br textu\",popup_size:\"Velikost\",popup_dependent:\"Z\\u00e1vislost (pouze Mozilla/Firefox)\",popup_resizable:\"Umo\\u017enit zm\\u011bnu velikosti\",popup_location:\"Zobrazit pole s adresou\",popup_menubar:\"Zobrazit nab\\u00eddku\",popup_toolbar:\"Zobrazit n\\u00e1strojovou li\\u0161tu\",popup_statusbar:\"Zobrazit stavov\\u00fd \\u0159\\u00e1dek\",popup_scrollbars:\"Zobrazit posuvn\\u00edky\",popup_return:\"Vlo\\u017eit \\'return false\\'\",popup_name:\"N\\u00e1zev okna\",popup_url:\"URL vyskakovac\\u00edho okna\",popup:\"Javascriptov\\u00e9 okno\",target_blank:\"Otev\\u0159\\u00edt v nov\\u00e9m okn\\u011b/r\\u00e1mu\",target_top:\"Otev\\u0159\\u00edt v hlavn\\u00edm okn\\u011b/r\\u00e1mu (nahradit v\\u0161echny r\\u00e1my)\",target_parent:\"Otev\\u0159\\u00edt v nad\\u0159azen\\u00e9m okn\\u011b/r\\u00e1mu\",target_same:\"Otev\\u0159\\u00edt v tomto okn\\u011b/r\\u00e1mu\",anchor_names:\"Z\\u00e1lo\\u017eka\",popup_opts:\"Mo\\u017enosti\",advanced_props:\"Roz\\u0161\\u00ed\\u0159en\\u00e9 parametry\",event_props:\"Ud\\u00e1losti\",popup_props:\"Vlastnosti vyskakovac\\u00edho okna\",general_props:\"Obecn\\u00e9 parametry\",advanced_tab:\"Roz\\u0161\\u00ed\\u0159en\\u00e9\",events_tab:\"Ud\\u00e1losti\",popup_tab:\"Vyskakovac\\u00ed okno\",general_tab:\"Obecn\\u00e9\",list:\"Seznam odkaz\\u016f\",is_external:\"Zadan\\u00e9 URL vypad\\u00e1 jako extern\\u00ed odkaz, chcete doplnit povinn\\u00fd prefix http://?\",is_email:\"Zadan\\u00e9 URL vypad\\u00e1 jako e-mailov\\u00e1 adresa, chcete doplnit povinn\\u00fd prefix mailto:?\",titlefield:\"Titulek\",target:\"C\\u00edl\",url:\"URL odkazu\",title:\"Vlo\\u017eit/upravit odkaz\",link_list:\"Seznam odkaz\\u016f\",rtl:\"Zprava doleva\",ltr:\"Zleva doprava\",accesskey:\"Kl\\u00e1vesov\\u00e1 zkratka\",tabindex:\"Po\\u0159ad\\u00ed pro tabul\\u00e1tor\",rev:\"Vztah c\\u00edle ke str\\u00e1nce\",rel:\"Vztah str\\u00e1nky k c\\u00edli\",mime:\"MIME typ\",encoding:\"K\\u00f3dov\\u00e1n\\u00ed\",langcode:\"K\\u00f3d jazyka\",target_langcode:\"Jazyk c\\u00edle\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/da_dlg.js",
    "content": "tinyMCE.addI18n('da.advlink_dlg',{\"target_name\":\"Destinationsnavn\",classes:\"Klasser\",style:\"Stil\",id:\"Id\",\"popup_position\":\"Position (X/Y)\",langdir:\"Sprogretning\",\"popup_size\":\"St\\u00f8rrelse\",\"popup_dependent\":\"Afh\\u00e6ngig (Kun Mozilla/Firefox)\",\"popup_resizable\":\"Lad det v\\u00e6re muligt at \\u00e6ndre st\\u00f8rrelsen p\\u00e5 vinduet\",\"popup_location\":\"Vis adresselinje\",\"popup_menubar\":\"Vis menulinje\",\"popup_toolbar\":\"Vis v\\u00e6rkt\\u00f8jslinjer\",\"popup_statusbar\":\"Vis statuslinje\",\"popup_scrollbars\":\"Vis rullepanel\",\"popup_return\":\"Inds\\u00e6t \\'return false\\'\",\"popup_name\":\"Vinduesnavn\",\"popup_url\":\"Popup URL\",popup:\"Javascript popup\",\"target_blank\":\"\\u00c5ben i nyt vindue\",\"target_top\":\"\\u00c5ben i \\u00f8verste vindue / ramme (erstatter alle rammer)\",\"target_parent\":\"\\u00c5ben i overliggende vindue / ramme\",\"target_same\":\"\\u00c5ben i dette vindue / ramme\",\"anchor_names\":\"Ankre\",\"popup_opts\":\"Indstillinger\",\"advanced_props\":\"Avancerede egenskaber\",\"event_props\":\"H\\u00e6ndelser\",\"popup_props\":\"Popup egenskaber\",\"general_props\":\"Generelle egenskaber\",\"advanced_tab\":\"Advanceret\",\"events_tab\":\"H\\u00e6ndelser\",\"popup_tab\":\"Popup\",\"general_tab\":\"Generelt\",list:\"Liste over links\",\"is_external\":\"Den URL, der er indtastet, ser ud til at v\\u00e6re et eksternt link. Vil du have tilf\\u00f8jet det p\\u00e5kr\\u00e6vede http:// foran?\",\"is_email\":\"Den URL, der er indtastet, ser ud til at v\\u00e6re en emailadresse. Vil du have tilf\\u00f8jet det p\\u00e5kr\\u00e6vede mailto: foran?\",titlefield:\"Titel\",target:\"M\\u00e5l\",url:\"Link URL\",title:\"Inds\\u00e6t/rediger link\",\"link_list\":\"Liste over links\",rtl:\"H\\u00f8jre mod venstre\",ltr:\"Venstre mod h\\u00f8jre\",accesskey:\"Genvejstast\",tabindex:\"Tabindex\",rev:\"Relativ destination til side\",rel:\"Relativ side til destination\",mime:\"Destinations-MIME-type\",encoding:\"Destinationstegns\\u00e6t\",langcode:\"Sprogkode\",\"target_langcode\":\"Destinationssprog\",width:\"Bredde\",height:\"H\\u00f8jde\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/de_dlg.js",
    "content": "tinyMCE.addI18n('de.advlink_dlg',{target_name:\"Name der Zielseite\",classes:\"Klassen\",style:\"Format\",id:\"ID\",popup_position:\"Position (X/Y)\",langdir:\"Schriftrichtung\",popup_size:\"Gr\\u00f6\\u00dfe\",popup_dependent:\"Vom Elternfenster abh\\u00e4ngig <br /> (nur Mozilla/Firefox) \",popup_resizable:\"Vergr\\u00f6\\u00dfern des Fenster zulassen\",popup_location:\"Adressleiste anzeigen\",popup_menubar:\"Browsermen\\u00fc anzeigen\",popup_toolbar:\"Werkzeugleisten anzeigen\",popup_statusbar:\"Statusleiste anzeigen\",popup_scrollbars:\"Scrollbalken anzeigen\",popup_return:\"Link trotz Popup folgen\",popup_name:\"Name des Fensters\",popup_url:\"Popup-Adresse\",popup:\"JavaScript-Popup\",target_blank:\"In neuem Fenster \\u00f6ffnen\",target_top:\"Im obersten Frame \\u00f6ffnen (sprengt das Frameset)\",target_parent:\"Im \\u00fcbergeordneten Fenster/Frame \\u00f6ffnen\",target_same:\"Im selben Fenster/Frame \\u00f6ffnen\",anchor_names:\"Anker\",popup_opts:\"Optionen\",advanced_props:\"Erweiterte Eigenschaften\",event_props:\"Ereignisse\",popup_props:\"Popup-Eigenschaften\",general_props:\"Allemeine Eigenschaften\",advanced_tab:\"Erweitert\",events_tab:\"Ereignisse\",popup_tab:\"Popup\",general_tab:\"Allgemein\",list:\"Linkliste\",is_external:\"Diese Adresse scheint ein externer Link zu sein. M\\u00f6chten Sie das dazu ben\\u00f6tigte \\\"http://\\\" voranstellen?\",is_email:\"Diese Adresse scheint eine E-Mail-Adresse zu sein. M\\u00f6chten Sie das dazu ben\\u00f6tigte \\\"mailto:\\\" voranstellen?\",titlefield:\"Titel\",target:\"Fenster\",url:\"Adresse\",title:\"Link einf\\u00fcgen/bearbeiten\",link_list:\"Linkliste\",rtl:\"Rechts nach links\",ltr:\"Links nach rechts\",accesskey:\"Tastenk\\u00fcrzel\",tabindex:\"Tabindex\",rev:\"Beziehung des Linkziels zur Seite\",rel:\"Beziehung der Seite zum Linkziel\",mime:\"MIME-Type der Zielseite\",encoding:\"Zeichenkodierung der Zielseite\",langcode:\"Sprachcode\",target_langcode:\"Sprache der Zielseite\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/el_dlg.js",
    "content": "tinyMCE.addI18n('el.advlink_dlg',{\"target_name\":\"\\u038c\\u03bd\\u03bf\\u03bc\\u03b1 \\u03c3\\u03c4\\u03cc\\u03c7\\u03bf\\u03c5\",classes:\"\\u039a\\u03bb\\u03ac\\u03c3\\u03b5\\u03b9\\u03c2\",style:\"\\u03a3\\u03c4\\u03c5\\u03bb\",id:\"Id\",\"popup_position\":\"\\u0398\\u03ad\\u03c3\\u03b7 (X/Y)\",langdir:\"\\u039a\\u03b1\\u03c4\\u03b5\\u03cd\\u03b8\\u03c5\\u03bd\\u03c3\\u03b7 \\u03b3\\u03bb\\u03ce\\u03c3\\u03c3\\u03b1\\u03c2\",\"popup_size\":\"\\u039c\\u03ad\\u03b3\\u03b5\\u03b8\\u03bf\\u03c2\",\"popup_dependent\":\"\\u0395\\u03be\\u03b1\\u03c1\\u03c4\\u03ce\\u03bc\\u03b5\\u03bd\\u03bf (\\u03bc\\u03cc\\u03bd\\u03bf \\u03b3\\u03b9\\u03b1 Mozilla/Firefox)\",\"popup_resizable\":\"\\u039d\\u03b1 \\u03b1\\u03bb\\u03bb\\u03ac\\u03b6\\u03bf\\u03c5\\u03bd \\u03bf\\u03b9 \\u03b4\\u03b9\\u03b1\\u03c3\\u03c4\\u03ac\\u03c3\\u03b5\\u03b9\\u03c2 \\u03c4\\u03bf\\u03c5 \\u03c0\\u03b1\\u03c1\\u03b1\\u03b8\\u03cd\\u03c1\\u03bf\\u03c5\",\"popup_location\":\"\\u0395\\u03bc\\u03c6\\u03ac\\u03bd\\u03b9\\u03c3\\u03b7 \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ae\\u03c2 \\u03c4\\u03bf\\u03c0\\u03bf\\u03b8\\u03b5\\u03c3\\u03af\\u03b1\\u03c2\",\"popup_menubar\":\"\\u0395\\u03bc\\u03c6\\u03ac\\u03bd\\u03b9\\u03c3\\u03b7 \\u03bc\\u03b5\\u03bd\\u03bf\\u03cd\",\"popup_toolbar\":\"\\u0395\\u03bc\\u03c6\\u03ac\\u03bd\\u03b9\\u03c3\\u03b7 \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ce\\u03bd \\u03b5\\u03c1\\u03b3\\u03b1\\u03bb\\u03b5\\u03af\\u03c9\\u03bd\",\"popup_statusbar\":\"\\u0395\\u03bc\\u03c6\\u03ac\\u03bd\\u03b9\\u03c3\\u03b7 \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ae\\u03c2 \\u03ba\\u03b1\\u03c4\\u03ac\\u03c3\\u03c4\\u03b1\\u03c3\\u03b7\\u03c2\",\"popup_scrollbars\":\"\\u0395\\u03bc\\u03c6\\u03ac\\u03bd\\u03b9\\u03c3\\u03b7 \\u03c1\\u03ac\\u03b2\\u03b4\\u03c9\\u03bd \\u03ba\\u03cd\\u03bb\\u03b9\\u03c3\\u03b7\\u03c2\",\"popup_return\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae \\'return false\\'\",\"popup_name\":\"\\u038c\\u03bd\\u03bf\\u03bc\\u03b1 \\u03c0\\u03b1\\u03c1\\u03b1\\u03b8\\u03cd\\u03c1\\u03bf\\u03c5\",\"popup_url\":\"\\u0394\\u03b9\\u03b1\\u03b4\\u03c1\\u03bf\\u03bc\\u03ae URL \\u03c4\\u03bf\\u03c5 Popup\",popup:\"Javascript popup\",\"target_blank\":\"\\u0386\\u03bd\\u03bf\\u03b9\\u03b3\\u03bc\\u03b1 \\u03c3\\u03b5 \\u03bd\\u03ad\\u03bf \\u03c0\\u03b1\\u03c1\\u03ac\\u03b8\\u03c5\\u03c1\\u03bf\",\"target_top\":\"\\u0386\\u03bd\\u03bf\\u03b9\\u03b3\\u03bc\\u03b1 \\u03c3\\u03c4\\u03bf \\u03c0\\u03b9\\u03bf \\u03c0\\u03ac\\u03bd\\u03c9 frame (\\u03b1\\u03bd\\u03c4\\u03b9\\u03ba\\u03b1\\u03b8\\u03b9\\u03c3\\u03c4\\u03ac \\u03cc\\u03bb\\u03b1 \\u03c4\\u03b1 frames)\",\"target_parent\":\"\\u0386\\u03bd\\u03bf\\u03b9\\u03b3\\u03bc\\u03b1 \\u03c3\\u03c4\\u03bf \\u03b3\\u03bf\\u03bd\\u03b9\\u03ba\\u03cc window / frame\",\"target_same\":\"\\u0386\\u03bd\\u03bf\\u03b9\\u03b3\\u03bc\\u03b1 \\u03c3\\u03b5 \\u03af\\u03b4\\u03b9\\u03bf \\u03c0\\u03b1\\u03c1\\u03ac\\u03b8\\u03c5\\u03c1\\u03bf / frame\",\"anchor_names\":\"Anchors\",\"popup_opts\":\"\\u0395\\u03c0\\u03b9\\u03bb\\u03bf\\u03b3\\u03ad\\u03c2\",\"advanced_props\":\"\\u03a0\\u03c1\\u03bf\\u03c7\\u03c9\\u03c1\\u03b7\\u03bc\\u03ad\\u03bd\\u03b5\\u03c2 \\u03b9\\u03b4\\u03b9\\u03cc\\u03c4\\u03b7\\u03c4\\u03b5\\u03c2\",\"event_props\":\"\\u0393\\u03b5\\u03b3\\u03bf\\u03bd\\u03cc\\u03c4\\u03b1\",\"popup_props\":\"\\u0399\\u03b4\\u03b9\\u03cc\\u03c4\\u03b7\\u03c4\\u03b5\\u03c2 Popup\",\"general_props\":\"\\u0393\\u03b5\\u03bd\\u03b9\\u03ba\\u03ad\\u03c2 \\u03b9\\u03b4\\u03b9\\u03cc\\u03c4\\u03b7\\u03c4\\u03b5\\u03c2\",\"advanced_tab\":\"\\u0393\\u03b9\\u03b1 \\u03c0\\u03c1\\u03bf\\u03c7\\u03c9\\u03c1\\u03b7\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5\\u03c2\",\"events_tab\":\"\\u0393\\u03b5\\u03b3\\u03bf\\u03bd\\u03cc\\u03c4\\u03b1\",\"popup_tab\":\"Popup\",\"general_tab\":\"\\u0393\\u03b5\\u03bd\\u03b9\\u03ba\\u03ac\",list:\"\\u039b\\u03af\\u03c3\\u03c4\\u03b1 \\u03c3\\u03c5\\u03bd\\u03b4\\u03ad\\u03c3\\u03bc\\u03c9\\u03bd\",\"is_external\":\"\\u0397 \\u03b4\\u03b9\\u03b1\\u03b4\\u03c1\\u03bf\\u03bc\\u03ae URL \\u03c0\\u03bf\\u03c5 \\u03b5\\u03b9\\u03c3\\u03ac\\u03b3\\u03b1\\u03c4\\u03b5 \\u03c6\\u03b1\\u03af\\u03bd\\u03b5\\u03c4\\u03b1\\u03b9 \\u03bd\\u03b1 \\u03b5\\u03af\\u03bd\\u03b1\\u03b9 \\u03b5\\u03be\\u03c9\\u03c4\\u03b5\\u03c1\\u03b9\\u03ba\\u03cc\\u03c2 \\u03c3\\u03cd\\u03bd\\u03b4\\u03b5\\u03c3\\u03bc\\u03bf\\u03c2, \\u03bd\\u03b1 \\u03c0\\u03c1\\u03bf\\u03c3\\u03c4\\u03b5\\u03b8\\u03b5\\u03af \\u03c4\\u03bf \\u03b1\\u03c0\\u03b1\\u03c1\\u03b1\\u03af\\u03c4\\u03b7\\u03c4\\u03bf http:// ;\",\"is_email\":\"\\u0397 \\u03b4\\u03b9\\u03b1\\u03b4\\u03c1\\u03bf\\u03bc\\u03ae URL \\u03c0\\u03bf\\u03c5 \\u03b5\\u03b9\\u03c3\\u03ac\\u03b3\\u03b1\\u03c4\\u03b5 \\u03c6\\u03b1\\u03af\\u03bd\\u03b5\\u03c4\\u03b1\\u03b9 \\u03bd\\u03b1 \\u03b5\\u03af\\u03bd\\u03b1\\u03b9 email, \\u03bd\\u03b1 \\u03c0\\u03c1\\u03bf\\u03c3\\u03c4\\u03b5\\u03b8\\u03b5\\u03af \\u03c4\\u03bf \\u03b1\\u03c0\\u03b1\\u03c1\\u03b1\\u03af\\u03c4\\u03b7\\u03c4\\u03bf mailto: ;\",titlefield:\"\\u03a4\\u03af\\u03c4\\u03bb\\u03bf\\u03c2\",target:\"\\u03a3\\u03c4\\u03cc\\u03c7\\u03bf\\u03c2\",url:\"\\u0394\\u03b9\\u03b1\\u03b4\\u03c1\\u03bf\\u03bc\\u03ae URL \\u03c3\\u03c5\\u03bd\\u03b4\\u03ad\\u03c3\\u03bc\\u03bf\\u03c5\",title:\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae/\\u03b5\\u03c0\\u03b5\\u03be\\u03b5\\u03c1\\u03b3\\u03b1\\u03c3\\u03af\\u03b1 \\u03c3\\u03c5\\u03bd\\u03b4\\u03ad\\u03c3\\u03bc\\u03bf\\u03c5\",\"link_list\":\"\\u039b\\u03af\\u03c3\\u03c4\\u03b1 \\u03c3\\u03c5\\u03bd\\u03b4\\u03ad\\u03c3\\u03bc\\u03c9\\u03bd\",rtl:\"\\u0394\\u03b5\\u03be\\u03b9\\u03ac \\u03c0\\u03c1\\u03bf\\u03c2 \\u03b1\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac\",ltr:\"\\u0391\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac \\u03c0\\u03c1\\u03bf\\u03c2 \\u03b4\\u03b5\\u03be\\u03b9\\u03ac\",accesskey:\"\\u03a0\\u03bb\\u03ae\\u03ba\\u03c4\\u03c1\\u03bf \\u03c0\\u03c1\\u03cc\\u03c3\\u03b2\\u03b1\\u03c3\\u03b7\\u03c2\",tabindex:\"Tabindex\",rev:\"\\u03a3\\u03c7\\u03ad\\u03c3\\u03b7 \\u03c3\\u03c4\\u03cc\\u03c7\\u03bf\\u03c5 \\u03c0\\u03c1\\u03bf\\u03c2 \\u03c3\\u03b5\\u03bb\\u03af\\u03b4\\u03b1 (REV)\",rel:\"\\u03a3\\u03c7\\u03ad\\u03c3\\u03b7 \\u03c3\\u03b5\\u03bb\\u03af\\u03b4\\u03b1\\u03c2 \\u03c0\\u03c1\\u03bf\\u03c2 \\u03c3\\u03c4\\u03cc\\u03c7\\u03bf (REL)\",mime:\"\\u03a4\\u03cd\\u03c0\\u03bf\\u03c2 MIME \\u03c3\\u03c4\\u03cc\\u03c7\\u03bf\\u03c5\",encoding:\"\\u039a\\u03c9\\u03b4\\u03b9\\u03ba\\u03bf\\u03c0\\u03bf\\u03af\\u03b7\\u03c3\\u03b7 \\u03c7\\u03b1\\u03c1\\u03b1\\u03ba\\u03c4\\u03ae\\u03c1\\u03c9\\u03bd \\u03c3\\u03c4\\u03cc\\u03c7\\u03bf\\u03c5\",langcode:\"\\u039a\\u03c9\\u03b4\\u03b9\\u03ba\\u03cc\\u03c2 \\u03b3\\u03bb\\u03ce\\u03c3\\u03c3\\u03b1\\u03c2\",\"target_langcode\":\"\\u0393\\u03bb\\u03ce\\u03c3\\u03c3\\u03b1 \\u03c3\\u03c4\\u03cc\\u03c7\\u03bf\\u03c5\",width:\"\\u03a0\\u03bb\\u03ac\\u03c4\\u03bf\\u03c2\",height:\"\\u038e\\u03c8\\u03bf\\u03c2\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/en_dlg.js",
    "content": "tinyMCE.addI18n('en.advlink_dlg',{\"target_name\":\"Target Name\",classes:\"Classes\",style:\"Style\",id:\"ID\",\"popup_position\":\"Position (X/Y)\",langdir:\"Language Direction\",\"popup_size\":\"Size\",\"popup_dependent\":\"Dependent (Mozilla/Firefox Only)\",\"popup_resizable\":\"Make Window Resizable\",\"popup_location\":\"Show Location Bar\",\"popup_menubar\":\"Show Menu Bar\",\"popup_toolbar\":\"Show Toolbars\",\"popup_statusbar\":\"Show Status Bar\",\"popup_scrollbars\":\"Show Scrollbars\",\"popup_return\":\"Insert \\'return false\\'\",\"popup_name\":\"Window Name\",\"popup_url\":\"Popup URL\",popup:\"JavaScript Popup\",\"target_blank\":\"Open in New Window\",\"target_top\":\"Open in Top Frame (Replaces All Frames)\",\"target_parent\":\"Open in Parent Window/Frame\",\"target_same\":\"Open in This Window/Frame\",\"anchor_names\":\"Anchors\",\"popup_opts\":\"Options\",\"advanced_props\":\"Advanced Properties\",\"event_props\":\"Events\",\"popup_props\":\"Popup Properties\",\"general_props\":\"General Properties\",\"advanced_tab\":\"Advanced\",\"events_tab\":\"Events\",\"popup_tab\":\"Popup\",\"general_tab\":\"General\",list:\"Link List\",\"is_external\":\"The URL you entered seems to be an external link. Do you want to add the required http:// prefix?\",\"is_email\":\"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?\",titlefield:\"Title\",target:\"Target\",url:\"Link URL\",title:\"Insert/Edit Link\",\"link_list\":\"Link List\",rtl:\"Right to Left\",ltr:\"Left to Right\",accesskey:\"AccessKey\",tabindex:\"TabIndex\",rev:\"Relationship Target to Page\",rel:\"Relationship Page to Target\",mime:\"Target MIME Type\",encoding:\"Target Character Encoding\",langcode:\"Language Code\",\"target_langcode\":\"Target Language\",width:\"Width\",height:\"Height\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/es_dlg.js",
    "content": "tinyMCE.addI18n('es.advlink_dlg',{target_name:\"Nombre del Target\",classes:\"Clases\",style:\"Estilo\",id:\"Id\",popup_position:\"Posici\\u00f3n (X/Y)\",langdir:\"Direcci\\u00f3n del lenguaje\",popup_size:\"Tama\\u00f1o\",popup_dependent:\"Dependientes (s\\u00f3lo Mozilla/Firefox)\",popup_resizable:\"Permitir cambiar el tama\\u00f1o de la ventana\",popup_location:\"Barra de localizaci\\u00f3n\",popup_menubar:\"Barra de men\\u00fa\",popup_toolbar:\"Barra de herramientas\",popup_statusbar:\"Barra de estado\",popup_scrollbars:\"Barras de desplazamiento\",popup_return:\"Insertar \\'return false\\'\",popup_name:\"Nombre de la ventana\",popup_url:\"URL de la ventana emergente\",popup:\"Javascript popup\",target_blank:\"Abrir en ventana nueva\",target_top:\"Abrir en el marco superior (reemplaza todos los marcos)\",target_parent:\"Abrir en ventana padre / marco\",target_same:\"Abrir en esta ventana / marco\",anchor_names:\"Anclas\",popup_opts:\"Opciones\",advanced_props:\"Propiedades avanzadas\",event_props:\"Eventos\",popup_props:\"Propiedades de ventanas emergentes\",general_props:\"Propiedades generales\",advanced_tab:\"Avanzado\",events_tab:\"Eventos\",popup_tab:\"Ventana emergente\",general_tab:\"General\",list:\"Lista de v\\u00ednculos\",is_external:\"La URL que ha introducido parece ser un v\\u00ednculo externo,  \\u00bfdesea agregar el prefijo http:// necesario?\",is_email:\"La URL que ha introducido parece ser una direci\\u00f3n de correo,  \\u00bfdesea agregar el prefijo mailto: necesario?\",titlefield:\"T\\u00edtulo\",target:\"Destino\",url:\"URL del hiperv\\u00ednculo\",title:\"Insertar/editar hiperv\\u00ednculo\",link_list:\"Lista de v\\u00ednculo\",rtl:\"Derecha a izquierda\",ltr:\"Izquierda a derecha\",accesskey:\"Tecla de acceso\",tabindex:\"Indice de tabulaci\\u00f3n\",rev:\"Relaci\\u00f3n target a p\\u00e1gina\",rel:\"Relaci\\u00f3n p\\u00e1gina a target\",mime:\"Tipo MIME del Target\",encoding:\"Codificaci\\u00f3n de caracteres del Target\",langcode:\"C\\u00f3digo del lenguaje\",target_langcode:\"Lenguaje del Target\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/fr_dlg.js",
    "content": "tinyMCE.addI18n('fr.advlink_dlg',{target_name:\"Nom de la cible\",classes:\"Classes\",style:\"Style\",id:\"Id\",popup_position:\"Position (X/Y)\",langdir:\"Sens de lecture\",popup_size:\"Taille\",popup_dependent:\"D\\u00e9pendante (seulement sous Mozilla/Firefox)\",popup_resizable:\"Autoriser le redimensionnement de la fen\\u00eatre\",popup_location:\"Afficher la barre d\\'adresse\",popup_menubar:\"Afficher la barre de menu\",popup_toolbar:\"Afficher la barre d\\'outils\",popup_statusbar:\"Afficher la barre d\\'\\u00e9tat\",popup_scrollbars:\"Afficher les ascenseurs\",popup_return:\"Ins\\u00e9rer \\'return false\\'\",popup_name:\"Nom de la fen\\u00eatre\",popup_url:\"URL de la popup\",popup:\"Popup Javascript\",target_blank:\"Ouvrir dans une nouvelle fen\\u00eatre\",target_top:\"Ouvrir dans le cadre principal (remplace tous les cadres)\",target_parent:\"Ouvrir dans la fen\\u00eatre / le cadre parent\",target_same:\"Ouvrir dans cette fen\\u00eatre / dans ce cadre\",anchor_names:\"Ancres\",popup_opts:\"Options\",advanced_props:\"Propri\\u00e9t\\u00e9s avanc\\u00e9es\",event_props:\"\\u00c9v\\u00e8nements\",popup_props:\"Propri\\u00e9t\\u00e9s de la popup\",general_props:\"Propri\\u00e9t\\u00e9s g\\u00e9n\\u00e9rales\",advanced_tab:\"Avanc\\u00e9\",events_tab:\"\\u00c9v\\u00e8nements\",popup_tab:\"Popup\",general_tab:\"G\\u00e9n\\u00e9ral\",list:\"Liste de liens\",is_external:\"L\\'URL que vous avez saisie semble \\u00eatre une adresse web externe. Souhaitez-vous ajouter le pr\\u00e9fixe \\u00ab http:// \\u00bb ?\",is_email:\"L\\'URL que vous avez saisie semble \\u00eatre une adresse e-mail, souhaitez-vous ajouter le pr\\u00e9fixe \\u00ab mailto: \\u00bb ?\",titlefield:\"Titre\",target:\"Cible\",url:\"URL du lien\",title:\"Ins\\u00e9rer / \\u00e9diter un lien\",link_list:\"Liste des liens\",rtl:\"Droite \\u00e0 gauche\",ltr:\"Gauche \\u00e0 droite\",accesskey:\"Touche d\\'acc\\u00e8s rapide\",tabindex:\"Tabindex\",rev:\"Relation de la cible \\u00e0 la page\",rel:\"Relation de la page \\u00e0 la cible\",mime:\"Type MIME de la cible\",encoding:\"Encodage de la cible\",langcode:\"Code de la langue\",target_langcode:\"Langue de la cible\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/he_dlg.js",
    "content": "tinyMCE.addI18n('he.advlink_dlg',{\"target_name\":\"Target name\",classes:\"Classes\",style:\"\\u05e1\\u05d2\\u05e0\\u05d5\\u05df\",id:\"\\u05de\\u05e1\\u05e4\\u05e8 \\u05e1\\u05d9\\u05d3\\u05d5\\u05e8\\u05d9\",\"popup_position\":\"\\u05de\\u05d9\\u05e7\\u05d5\\u05dd (X/Y)\",langdir:\"\\u05db\\u05d9\\u05d5\\u05d5\\u05df \\u05d4\\u05e9\\u05e4\\u05d4\",\"popup_size\":\"\\u05d2\\u05d5\\u05d3\\u05dc\",\"popup_dependent\":\"Dependent (Mozilla/Firefox only)\",\"popup_resizable\":\"\\u05d7\\u05dc\\u05d5\\u05df \\u05d3\\u05d9\\u05e0\\u05d0\\u05de\\u05d9(resizable)\",\"popup_location\":\"\\u05d4\\u05e6\\u05d2\\u05ea location bar \",\"popup_menubar\":\"\\u05d4\\u05e6\\u05d2\\u05ea \\u05ea\\u05e4\\u05e8\\u05d9\\u05d8\",\"popup_toolbar\":\"\\u05d4\\u05e6\\u05d2\\u05ea \\u05e1\\u05e8\\u05d2\\u05dc\\u05d9 \\u05db\\u05dc\\u05d9\\u05dd\",\"popup_statusbar\":\"\\u05d4\\u05e6\\u05d2\\u05ea \\u05e9\\u05d5\\u05e8\\u05ea \\u05e1\\u05d8\\u05d0\\u05d8\\u05d5\\u05e1\",\"popup_scrollbars\":\"\\u05d4\\u05e6\\u05d2\\u05ea \\u05e4\\u05e1 \\u05d2\\u05dc\\u05d9\\u05dc\\u05d4\",\"popup_return\":\"\\u05d9\\u05e9 \\u05dc\\u05d4\\u05db\\u05e0\\u05d9\\u05e1 \\'return false\\'\",\"popup_name\":\"\\u05e9\\u05dd \\u05d4\\u05d7\\u05dc\\u05d5\\u05df\",\"popup_url\":\"\\u05d7\\u05dc\\u05d5\\u05df \\u05de\\u05d5\\u05e7\\u05e4\\u05e5 URL\",popup:\"\\u05d7\\u05dc\\u05d5\\u05df \\u05de\\u05d5\\u05e7\\u05e4\\u05e5 javascript\",\"target_blank\":\"\\u05e4\\u05ea\\u05d9\\u05d7\\u05d4 \\u05d1\\u05d7\\u05dc\\u05d5\\u05df \\u05d7\\u05d3\\u05e9\",\"target_top\":\"\\u05e4\\u05ea\\u05d9\\u05d7\\u05d4 \\u05d1\\u05d7\\u05dc\\u05d5\\u05df \\u05d4\\u05d1\\u05df \\u05d4\\u05e8\\u05d0\\u05e9\\u05d9(\\u05de\\u05d7\\u05dc\\u05d9\\u05e3 \\u05d0\\u05ea \\u05db\\u05dc \\u05d7\\u05dc\\u05d5\\u05e0\\u05d5\\u05ea \\u05d4\\u05d1\\u05e0\\u05d9\\u05dd)\",\"target_parent\":\"\\u05e4\\u05ea\\u05d9\\u05d7\\u05d4 \\u05d1\\u05dc\\u05d5\\u05df \\u05d4\\u05d0\\u05d1\\u05d0/\\u05d7\\u05dc\\u05d5\\u05df \\u05d1\\u05df\",\"target_same\":\"\\u05e4\\u05ea\\u05d9\\u05d7\\u05d4 \\u05d1\\u05d7\\u05dc\\u05d5\\u05df \\u05d7\\u05d3\\u05e9/\\u05d7\\u05dc\\u05d5\\u05df \\u05d1\\u05df\",\"anchor_names\":\"\\u05e7\\u05d9\\u05e9\\u05d5\\u05e8 \\u05dc\\u05e1\\u05d9\\u05de\\u05e0\\u05d9\\u05d4\",\"popup_opts\":\"\\u05d0\\u05e4\\u05e9\\u05e8\\u05d5\\u05d9\\u05d5\\u05ea\",\"advanced_props\":\"\\u05ea\\u05db\\u05d5\\u05e0\\u05d5\\u05ea \\u05de\\u05ea\\u05e7\\u05d3\\u05de\\u05d5\\u05ea\",\"event_props\":\"\\u05de\\u05d0\\u05d5\\u05e8\\u05e2\\u05d5\\u05ea\",\"popup_props\":\"\\u05ea\\u05db\\u05d5\\u05e0\\u05d5\\u05ea \\u05d7\\u05dc\\u05d5\\u05df \\u05de\\u05d5\\u05e7\\u05e4\\u05e5\",\"general_props\":\"\\u05ea\\u05db\\u05d5\\u05e0\\u05d5\\u05ea \\u05db\\u05dc\\u05dc\\u05d9\\u05d5\\u05ea\",\"advanced_tab\":\"\\u05de\\u05ea\\u05e7\\u05d3\\u05dd\",\"events_tab\":\"\\u05d0\\u05e8\\u05d5\\u05e2\\u05d9\\u05dd\",\"popup_tab\":\"\\u05d7\\u05dc\\u05d5\\u05df \\u05de\\u05d5\\u05e7\\u05e4\\u05e5\",\"general_tab\":\"\\u05db\\u05dc\\u05dc\\u05d9\",list:\"\\u05e8\\u05e9\\u05d9\\u05de\\u05ea \\u05e7\\u05d9\\u05e9\\u05d5\\u05e8\\u05d9\\u05dd\",\"is_external\":\"\\u05db\\u05ea\\u05d5\\u05d1\\u05ea \\u05d4-URL \\u05e9\\u05d4\\u05d5\\u05db\\u05e0\\u05e1\\u05d4 \\u05d4\\u05d9\\u05d0 \\u05db\\u05db\\u05dc \\u05d4\\u05e0\\u05e8\\u05d0\\u05d4 \\u05e7\\u05d9\\u05e9\\u05d5\\u05e8 \\u05d7\\u05d9\\u05e6\\u05d5\\u05e0\\u05d9 \\u05d4\\u05d0\\u05dd \\u05d1\\u05e8\\u05e6\\u05d5\\u05e0\\u05da \\u05dc\\u05d4\\u05d5\\u05e1\\u05d9\\u05e3 \\u05d0\\u05ea \\u05d4\\u05e7\\u05d9\\u05d3\\u05d5\\u05de\\u05ea http:// \\u05d4\\u05e0\\u05d3\\u05e8\\u05e9\\u05ea?\",\"is_email\":\"\\u05db\\u05ea\\u05d5\\u05d1\\u05ea \\u05d4-URL \\u05e9\\u05d4\\u05d5\\u05db\\u05e0\\u05e1\\u05d4 \\u05d4\\u05d9\\u05d0 \\u05db\\u05db\\u05dc \\u05d4\\u05e0\\u05e8\\u05d0\\u05d4 \\u05db\\u05ea\\u05d5\\u05d1\\u05ea \\u05de\\u05d9\\u05d9\\u05dc \\u05d4\\u05d0\\u05dd \\u05d1\\u05e8\\u05e6\\u05d5\\u05e0\\u05da \\u05dc\\u05d4\\u05d5\\u05e1\\u05d9\\u05e3 \\u05d0\\u05ea \\u05d4\\u05e7\\u05d9\\u05d3\\u05d5\\u05de\\u05ea MAILTO \\u05d4\\u05e0\\u05d3\\u05e8\\u05e9\\u05ea?\",titlefield:\"\\u05db\\u05d5\\u05ea\\u05e8\\u05ea \\u05d4\\u05e7\\u05d9\\u05e9\\u05d5\\u05e8\",target:\"\\u05d9\\u05e2\\u05d3\",url:\"\\u05db\\u05ea\\u05d5\\u05d1\\u05ea \\u05d4\\u05e7\\u05d9\\u05e9\\u05d5\\u05e8\",title:\"\\u05d4\\u05d5\\u05e1\\u05e4\\u05d4/\\u05e2\\u05e8\\u05d9\\u05db\\u05ea \\u05e7\\u05d9\\u05e9\\u05d5\\u05e8\",\"link_list\":\"\\u05e8\\u05e9\\u05d9\\u05de\\u05ea \\u05e7\\u05d9\\u05e9\\u05d5\\u05e8\\u05d9\\u05dd\",rtl:\"\\u05de\\u05d9\\u05de\\u05d9\\u05df \\u05dc\\u05e9\\u05de\\u05d0\\u05dc\",ltr:\"\\u05de\\u05e9\\u05de\\u05d0\\u05dc \\u05dc\\u05d9\\u05de\\u05d9\\u05df\",accesskey:\"Accesskey\",tabindex:\"Tabindex\",rev:\"Relationship target to page\",rel:\"Relationship page to target\",mime:\"Target MIME type\",encoding:\"Target character encoding\",langcode:\"\\u05e7\\u05d5\\u05d3 \\u05d4\\u05e9\\u05e4\\u05d4\",\"target_langcode\":\"Target language\",width:\"\\u05e8\\u05d5\\u05d7\\u05d1\",height:\"\\u05d2\\u05d5\\u05d1\\u05d4\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/hr_dlg.js",
    "content": "tinyMCE.addI18n('hr.advlink_dlg',{target_name:\"Ime mete\",classes:\"Klasa\",style:\"Stil\",id:\"Id\",popup_position:\"Pozicija (X/Y)\",langdir:\"Smjer jezika\",popup_size:\"Veli\\u010dina\",popup_dependent:\"Ovisan (samo za Mozilla/Firefox)\",popup_resizable:\"Prozor promjenjive veli\\u010dine\",popup_location:\"Poka\\u017ei traku lokacije\",popup_menubar:\"Poka\\u017ei izbornik\",popup_toolbar:\"Poka\\u017ei alatne trake\",popup_statusbar:\"Poka\\u017ei statusnu traku\",popup_scrollbars:\"Poka\\u017ei kliza\\u010de\",popup_return:\"Umetni \\'return false\\'\",popup_name:\"Ime prozora\",popup_url:\"Popup URL\",popup:\"Javascript popup\",target_blank:\"Otvori u novom prozoru\",target_top:\"Otvori u gornjem okviru (zamjenjuje sve okvire)\",target_parent:\"Otvori u izvornom prozoru / okvir\",target_same:\"Otovori u novom prozoru / okviru\",anchor_names:\"Sidra\",popup_opts:\"Opcije\",advanced_props:\"Napredna svojstva\",event_props:\"Doga\\u0111aji\",popup_props:\"Svojstva popup prozora\",general_props:\"Osnovna svojstva\",advanced_tab:\"Napredno\",events_tab:\"Doga\\u0111aj\",popup_tab:\"Popup\",general_tab:\"Osnovno\",list:\"Lista poveznica\",is_external:\"URL koji ste unijeli izgleda kao vanjska poveznica, \\u017eelite li dodati potrebni http:// prefiks?\",is_email:\"URL koji ste unijeli izgleda kao e-mail adresa, \\u017eelite li dodati potrebni mailto: prefiks?\",titlefield:\"Naslov\",target:\"Meta\",url:\"URL poveznice\",title:\"Umetni/uredi poveznicu\",link_list:\"Lista poveznica\",rtl:\"S desna na lijevo\",ltr:\"S lijeva na desno\",accesskey:\"Accesskey\",tabindex:\"Tabindex\",rev:\"Odnos mete prema stranici\",rel:\"Odnos stranice prema meti\",mime:\"MIME tip\",encoding:\"Kodiranje znakova\",langcode:\"Kod jezika\",target_langcode:\"Jezik\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/hu_dlg.js",
    "content": "tinyMCE.addI18n('hu.advlink_dlg',{\"target_name\":\"C\\u00e9l neve\",classes:\"Oszt\\u00e1lyok\",style:\"St\\u00edlus\",id:\"ID\",\"popup_position\":\" (X/Y) Poz\\u00edci\\u00f3\",langdir:\"Nyelv \\u00edr\\u00e1s ir\\u00e1ny\",\"popup_size\":\"M\\u00e9ret\",\"popup_dependent\":\"F\\u00fcgg\\u0151 (csak Mozilla/Firefox)\",\"popup_resizable\":\"\\u00c1tm\\u00e9retezhet\\u0151 ablak k\\u00e9sz\\u00edt\\u00e9se\",\"popup_location\":\"C\\u00edm mez\\u0151 mutat\\u00e1sa\",\"popup_menubar\":\"Men\\u00fcsor mutat\\u00e1sa\",\"popup_toolbar\":\"Eszk\\u00f6zsor mutat\\u00e1sa\",\"popup_statusbar\":\"St\\u00e1tuszsor mutat\\u00e1sa\",\"popup_scrollbars\":\"G\\u00f6rget\\u0151s\\u00e1vok mutat\\u00e1sa\",\"popup_return\":\"\\'return false\\' besz\\u00far\\u00e1sa\",\"popup_name\":\"Ablakn\\u00e9v\",\"popup_url\":\"Felugr\\u00f3 ablak URL\",popup:\"JavaScript felugr\\u00f3 ablak\",\"target_blank\":\"Megnyit\\u00e1s \\u00faj ablakban \",\"target_top\":\"Megnyit\\u00e1s azonos ablakban/keretben legfel\\u00fcl\",\"target_parent\":\"Megnyit\\u00e1s sz\\u00fcl\\u0151 ablakban/keretben \",\"target_same\":\"Megnyit\\u00e1s azonos ablakban/keretben \",\"anchor_names\":\"Horgonyok\",\"popup_opts\":\"Be\\u00e1ll\\u00edt\\u00e1sok\",\"advanced_props\":\"Halad\\u00f3 tulajdons\\u00e1gok\",\"event_props\":\"Esem\\u00e9nyek\",\"popup_props\":\"Felugr\\u00f3 ablak tulajdons\\u00e1gai\",\"general_props\":\"\\u00c1ltal\\u00e1nos tulajdons\\u00e1gok\",\"advanced_tab\":\"Halad\\u00f3\",\"events_tab\":\"Esem\\u00e9nyek\",\"popup_tab\":\"Felugr\\u00f3 ablak\",\"general_tab\":\"\\u00c1ltal\\u00e1nos\",list:\"Link lista\",\"is_external\":\"A be\\u00edrt URL k\\u00fcls\\u0151 hivatkoz\\u00e1snak t\\u0171nik, k\\u00edv\\u00e1nja a sz\\u00fcks\\u00e9ges http://  -t el\\u00e9 tenni?\",\"is_email\":\"A be\\u00edrt URL e-mail c\\u00edmnek t\\u0171nik, k\\u00edv\\u00e1nja a sz\\u00fcks\\u00e9ges mailto: el\\u0151tagot el\\u00e9 tenni?\",titlefield:\"C\\u00edm\",target:\"C\\u00e9l (target)\",url:\"Link URL\",title:\"Hivatkoz\\u00e1s besz\\u00far\\u00e1s/szerkeszt\\u00e9s\",\"link_list\":\"Link lista\",rtl:\"Jobbr\\u00f3l balra\",ltr:\"Balr\\u00f3l jobbra\",accesskey:\"Gyorsgomb\",tabindex:\"Tabindex\",rev:\"C\\u00e9l kapcsolata az oldallal\",rel:\"Oldal kapcsolata a c\\u00e9llal\",mime:\"C\\u00e9l MIME t\\u00edpus\",encoding:\"C\\u00e9l karakterk\\u00f3dol\\u00e1s\",langcode:\"Nyelv k\\u00f3d\",\"target_langcode\":\"C\\u00e9l nyelv\",width:\"Sz\\u00e9less\\u00e9g\",height:\"Magass\\u00e1g\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/hy_dlg.js",
    "content": "tinyMCE.addI18n('hy.advlink_dlg',{\"target_name\":\"Target name\",classes:\"\\u0534\\u0561\\u057d\\u0565\\u0580\",style:\"\\u0548\\u0573\",id:\"Id\",\"popup_position\":\"\\u054f\\u0565\\u0572\\u0561\\u056f\\u0561\\u0575\\u0578\\u0582\\u0574 (X / Y)\",langdir:\"\\u0548\\u0582\\u0572\\u0572\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\",\"popup_size\":\"\\u0549\\u0561\\u0583\\u057d\",\"popup_dependent\":\"Dependent (\\u0574\\u056b\\u0561\\u0575\\u0576 Mozilla / Firefox)\",\"popup_resizable\":\"\\u0539\\u0578\\u0582\\u0575\\u056c\\u0561\\u057f\\u0580\\u0565\\u056c \\u0579\\u0561\\u0583\\u0565\\u0580\\u056b \\u0583\\u0578\\u0583\\u0578\\u056d\\u0578\\u0582\\u0574\",\"popup_location\":\"\\u0551\\u0578\\u0582\\u0581\\u0561\\u0564\\u0580\\u0565\\u056c location \\u057e\\u0561\\u0570\\u0561\\u0576\\u0561\\u056f\\u0568\",\"popup_menubar\":\"\\u0551\\u0578\\u0582\\u0581\\u0561\\u0564\\u0580\\u0565\\u056c \\u0574\\u0565\\u0576\\u0575\\u0578\\u0582\\u0576\",\"popup_toolbar\":\"\\u0551\\u0578\\u0582\\u0581\\u0561\\u0564\\u0580\\u0565\\u056c \\u0563\\u0578\\u0580\\u056e\\u056b\\u0584\\u0561\\u0575\\u056b\\u0576 \\u057e\\u0561\\u0570\\u0561\\u0576\\u0561\\u056f\\u0576\\u0565\\u0580\\u0568\",\"popup_statusbar\":\"\\u0551\\u0578\\u0582\\u0581\\u0561\\u0564\\u0580\\u0565\\u056c \\u057d\\u057f\\u0561\\u057f\\u0578\\u0582\\u057d\\u0568\",\"popup_scrollbars\":\"\\u0551\\u0578\\u0582\\u0581\\u0561\\u0564\\u0580\\u0565\\u056c \\u057d\\u0584\\u0580\\u0578\\u056c\\u056c\\u0576\\u0565\\u0580\\u0568\",\"popup_return\":\"\\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c \\'return false\\'\",\"popup_name\":\"\\u054a\\u0561\\u057f\\u0578\\u0582\\u0570\\u0561\\u0576\\u056b \\u0561\\u0576\\u057e\\u0561\\u0576\\u0578\\u0582\\u0574\",\"popup_url\":\"Popup URL\",popup:\"Javascript popup\",\"target_blank\":\"\\u0532\\u0561\\u0581\\u0565\\u056c \\u0576\\u0578\\u0580 \\u057a\\u0561\\u057f\\u0578\\u0582\\u0570\\u0561\\u0576\\u0578\\u0582\\u0574\",\"target_top\":\"\\u0532\\u0561\\u0581\\u0565\\u056c \\u057e\\u0565\\u0580\\u056b\\u0576 \\u0586\\u0580\\u0565\\u0575\\u0574\\u0578\\u0582\\u0574 (\\u0583\\u0578\\u0583\\u0578\\u056d\\u0565\\u056c \\u0562\\u0578\\u056c\\u0578\\u0580 \\u0586\\u0580\\u0565\\u0575\\u0574\\u0565\\u0580\\u0568)\",\"target_parent\":\"\\u0532\\u0561\\u0581\\u0565\\u056c \\u0570\\u056b\\u0574\\u0576\\u0561\\u056f\\u0561\\u0576 \\u057a\\u0561\\u057f\\u0578\\u0582\\u0570\\u0561\\u0576\\u0578\\u0582\\u0574 / \\u0586\\u0580\\u0565\\u0575\\u0574\\u0578\\u0582\\u0574\",\"target_same\":\"\\u0532\\u0561\\u0581\\u0565\\u056c \\u0561\\u0575\\u057d \\u057a\\u0561\\u057f\\u0578\\u0582\\u0570\\u0561\\u0576\\u0578\\u0582\\u0574 / \\u0586\\u0580\\u0565\\u0575\\u0574\\u0578\\u0582\\u0574\",\"anchor_names\":\"\\u053d\\u0561\\u0580\\u056b\\u057d\\u056d\",\"popup_opts\":\"\\u054a\\u0561\\u0580\\u0561\\u0574\\u0565\\u057f\\u0580\\u0565\\u0580\",\"advanced_props\":\"\\u053c\\u0580\\u0561\\u0581\\u0578\\u0582\\u0581\\u056b\\u0579 \\u0564\\u0565\\u057a\\u0584\\u0565\\u0580\",\"event_props\":\"\\u0534\\u0565\\u057a\\u0584\\u0565\\u0580\",\"popup_props\":\"Popup \\u057a\\u0561\\u0580\\u0561\\u0574\\u0565\\u057f\\u0580\\u0565\\u0580\",\"general_props\":\"\\u0538\\u0576\\u0564\\u0570\\u0561\\u0576\\u0578\\u0582\\u0580 \\u057a\\u0561\\u0580\\u0561\\u0574\\u0565\\u057f\\u0580\\u0565\\u0580\",\"advanced_tab\":\"\\u053c\\u0580\\u0561\\u0581\\u0578\\u0582\\u0581\\u056b\\u0579\",\"events_tab\":\"\\u0534\\u0565\\u057a\\u0584\\u0565\\u0580\",\"popup_tab\":\"Popup\",\"general_tab\":\"\\u0540\\u056b\\u0574\\u0576\\u0561\\u056f\\u0561\\u0576\",list:\"\\u0540\\u0572\\u0578\\u0582\\u0574\\u0576\\u0565\\u0580\\u056b \\u0581\\u0561\\u0576\\u056f\",\"is_external\":\"\\u0546\\u0565\\u0580\\u0561\\u056e\\u057e\\u0561\\u056e URL \\u0570\\u0561\\u057d\\u0581\\u0565\\u0576 \\u0576\\u0574\\u0561\\u0576 \\u0567 \\u0561\\u0580\\u057f\\u0561\\u0584\\u056b\\u0576 \\u0570\\u0572\\u0574\\u0561\\u0576, \\u0534\\u0578\\u0582\\u0584 \\u0581\\u0561\\u0576\\u056f\\u0561\\u0576\\u0578\\u0582\\u055e\\u0574 \\u0565\\u0584 \\u0561\\u057e\\u0565\\u056c\\u0561\\u0581\\u0576\\u0565\\u056c http://\",\"is_email\":\"\\u0546\\u0565\\u0580\\u0561\\u056e\\u057e\\u0561\\u056e URL \\u0570\\u0561\\u057d\\u0581\\u0565\\u0576 \\u0576\\u0574\\u0561\\u0576 \\u0567 email \\u0570\\u0561\\u057d\\u0581\\u0565\\u056b, \\u0534\\u0578\\u0582\\u0584 \\u0581\\u0561\\u0576\\u056f\\u0561\\u0576\\u0578\\u0582\\u055e\\u0574 \\u0565\\u0584 \\u0561\\u057e\\u0565\\u056c\\u0561\\u0581\\u0576\\u0565\\u056c mailto:\",titlefield:\"\\u054e\\u0565\\u0580\\u0576\\u0561\\u0563\\u056b\\u0580\",target:\"\\u0532\\u0561\\u0581\\u0565\\u056c ...\",url:\"\\u0540\\u0561\\u057d\\u0581\\u0565\",title:\"\\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c / \\u0583\\u0578\\u0583\\u0578\\u056d\\u0565\\u056c \\u0570\\u0572\\u0578\\u0582\\u0574\",\"link_list\":\"\\u0540\\u0572\\u0578\\u0582\\u0574\\u0576\\u0565\\u0580\\u056b \\u0581\\u0561\\u0576\\u056f\",rtl:\"\\u0531\\u057b\\u056b\\u0581 \\u0571\\u0561\\u056d\",ltr:\"\\u0541\\u0561\\u056d\\u056b\\u0581 \\u0561\\u057b\",accesskey:\"Accesskey\",tabindex:\"Tabindex\",rev:\"Relationship target to page\",rel:\"Relationship page to target\",mime:\"Target MIME type\",encoding:\"Target character encoding\",langcode:\"\\u053c\\u0565\\u0566\\u057e\\u056b \\u056f\\u0578\\u0564\",\"target_langcode\":\"Target language\",width:\"Width\",height:\"Height\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/it_dlg.js",
    "content": "tinyMCE.addI18n('it.advlink_dlg',{\"target_name\":\"Nome target\",classes:\"Classe\",style:\"Stile\",id:\"Id\",\"popup_position\":\"Posizione (X/Y)\",langdir:\"Direzione del testo\",\"popup_size\":\"Dimensioni\",\"popup_dependent\":\"Dipendente (Solo in Mozilla/Firefox)\",\"popup_resizable\":\"Rendi la finestra ridimensionabile\",\"popup_location\":\"Mostra barra navigazione\",\"popup_menubar\":\"Mostra barra menu\",\"popup_toolbar\":\"Mostra barre strumenti\",\"popup_statusbar\":\"Mostra barra di stato\",\"popup_scrollbars\":\"Mostra barre di scorrimento\",\"popup_return\":\"Inserisci \\'return false\\'\",\"popup_name\":\"Nome finestra\",\"popup_url\":\"URL Popup\",popup:\"Popup Javascript\",\"target_blank\":\"Apri in una nuova finestra\",\"target_top\":\"Apri nella cornice superiore (sostituisce tutte le cornici)\",\"target_parent\":\"Apri nella finestra / cornice genitore\",\"target_same\":\"Apri in questa finestra / cornice\",\"anchor_names\":\"Ancore\",\"popup_opts\":\"Opzioni\",\"advanced_props\":\"Propriet\\u00e0 avanzate\",\"event_props\":\"Eventi\",\"popup_props\":\"Propriet\\u00e0 popup\",\"general_props\":\"Propriet\\u00e0 generali\",\"advanced_tab\":\"Avanzate\",\"events_tab\":\"Eventi\",\"popup_tab\":\"Popup\",\"general_tab\":\"Generale\",list:\"Lista collegamenti\",\"is_external\":\"L\\'URL inserito sembra essere un link esterno. Aggiungere il necessario prefisso http:// ?\",\"is_email\":\"L\\'URL inserito sembra essere un indirizzo email. Aggiungere il necessario prefisso mailto: ?\",titlefield:\"Titolo\",target:\"Target\",url:\"URL collegamento\",title:\"Inserisci/modifica link\",\"link_list\":\"Lista collegamenti\",rtl:\"Destra verso sinistra\",ltr:\"Sinistra verso destra\",accesskey:\"Carattere di accesso\",tabindex:\"Indice tabulazione\",rev:\"Relazione da target a pagina\",rel:\"Relazione da pagina a target\",mime:\"Tipo MIME del target\",encoding:\"Codifica carattere del target\",langcode:\"Lingua\",\"target_langcode\":\"Lingua del target\",width:\"Larghezza\",height:\"Altezza\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/ka_dlg.js",
    "content": "tinyMCE.addI18n('ka.advlink_dlg',{\"target_name\":\"\\u10db\\u10d8\\u10d6\\u10dc\\u10d8\\u10e1 \\u10e1\\u10d0\\u10ee\\u10d4\\u10da\\u10d8\",classes:\"\\u10d9\\u10da\\u10d0\\u10e1\\u10d4\\u10d1\\u10d8\",style:\"\\u10e1\\u10e2\\u10d8\\u10da\\u10d8\",id:\"\\u10e1\\u10d0\\u10ee\\u10d4\\u10da\\u10d8\",\"popup_position\":\"\\u10de\\u10dd\\u10d6\\u10d8\\u10ea\\u10d8\\u10d0 (X/Y)\",langdir:\"\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\\u10e1 \\u10db\\u10d8\\u10db\\u10d0\\u10e0\\u10d7\\u10e3\\u10da\\u10d1\\u10d0\",\"popup_size\":\"\\u10d6\\u10dd\\u10db\\u10d0\",\"popup_dependent\":\"\\u10d3\\u10d0\\u10db\\u10dd\\u10d9\\u10d8\\u10d3\\u10d4\\u10d1\\u10e3\\u10da\\u10d4\\u10d1\\u10d0 (\\u10db\\u10ee\\u10dd\\u10da\\u10dd\\u10d3 Firefox)\",\"popup_resizable\":\"\\u10d6\\u10dd\\u10db\\u10d8\\u10e1 \\u10ea\\u10d5\\u10da\\u10d8\\u10da\\u10d4\\u10d1\\u10d8\\u10e1 \\u10d3\\u10d0\\u10e8\\u10d5\\u10d4\\u10d1\\u10d0\",\"popup_location\":\"\\u10d2\\u10d0\\u10dc\\u10da\\u10d0\\u10d2\\u10d4\\u10d1\\u10d8\\u10e1 \\u10de\\u10d0\\u10dc\\u10d4\\u10da\\u10d8\\u10e1 \\u10d2\\u10d0\\u10db\\u10dd\\u10e9\\u10d4\\u10dc\\u10d0\",\"popup_menubar\":\"\\u10db\\u10d4\\u10dc\\u10d8\\u10e3\\u10e1 \\u10d2\\u10d0\\u10db\\u10dd\\u10e9\\u10d4\\u10dc\\u10d0\",\"popup_toolbar\":\"\\u10d8\\u10dc\\u10e1\\u10e2\\u10e0\\u10e3\\u10db\\u10d4\\u10dc\\u10e2\\u10d4\\u10d1\\u10d8\\u10e1 \\u10de\\u10d0\\u10dc\\u10d4\\u10da\\u10d8\\u10e1 \\u10d2\\u10d0\\u10db\\u10dd\\u10e9\\u10d4\\u10dc\\u10d0\",\"popup_statusbar\":\"\\u10db\\u10d3\\u10d2\\u10dd\\u10db\\u10d0\\u10e0\\u10d4\\u10dd\\u10d1\\u10d8\\u10e1 \\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d8\\u10e1 \\u10d2\\u10d0\\u10db\\u10dd\\u10e9\\u10d4\\u10dc\\u10d0\",\"popup_scrollbars\":\"\\u10d2\\u10d0\\u10d3\\u10d0\\u10ee\\u10d5\\u10d4\\u10d5\\u10d8\\u10e1 \\u10d5\\u10d4\\u10da\\u10d4\\u10d1\\u10d8\\u10e1 \\u10d2\\u10d0\\u10db\\u10dd\\u10e9\\u10d4\\u10dc\\u10d0\",\"popup_return\":\"\\'return false\\' \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0\",\"popup_name\":\"\\u10e4\\u10d0\\u10dc\\u10ef\\u10e0\\u10d8\\u10e1 \\u10e1\\u10d0\\u10d7\\u10d0\\u10e3\\u10e0\\u10d8\",\"popup_url\":\"\\u10db\\u10d8\\u10e1\\u10d0\\u10db\\u10d0\\u10e0\\u10d7\\u10d8\",popup:\"\\u10d2\\u10d0\\u10e8\\u10da\\u10d0 Java-\\u10e1 \\u10d2\\u10d0\\u10db\\u10dd\\u10e7\\u10d4\\u10dc\\u10d4\\u10d1\\u10d8\\u10d7\",\"target_blank\":\"\\u10d0\\u10ee\\u10d0\\u10da \\u10e4\\u10d0\\u10dc\\u10ef\\u10d0\\u10e0\\u10d0\\u10e8\\u10d8 \\u10d2\\u10d0\\u10ee\\u10e1\\u10dc\\u10d0\",\"target_top\":\"\\u10d6\\u10d4\\u10d3\\u10d0 \\u10d9\\u10d0\\u10d3\\u10e0\\u10e8\\u10d8 \\u10d2\\u10d0\\u10ee\\u10e1\\u10dc\\u10d0\",\"target_parent\":\"\\u10e1\\u10d0\\u10d9\\u10e3\\u10d7\\u10d0\\u10e0\\u10d0 \\u10e4\\u10d0\\u10dc\\u10ef\\u10d0\\u10e0\\u10d0\\u10e8\\u10d8 \\u10d2\\u10d0\\u10ee\\u10e1\\u10dc\\u10d0\",\"target_same\":\"\\u10db\\u10dd\\u10ea\\u10d4\\u10db\\u10e3\\u10da \\u10e4\\u10d0\\u10dc\\u10ef\\u10d0\\u10e0\\u10d0\\u10e8\\u10d8 \\u10d2\\u10d0\\u10ee\\u10e1\\u10dc\\u10d0\",\"anchor_names\":\"\\u10e6\\u10e3\\u10d6\\u10d4\\u10d1\\u10d8\",\"popup_opts\":\"\\u10db\\u10d0\\u10ee\\u10d0\\u10e1\\u10d8\\u10d0\\u10d7\\u10d4\\u10d1\\u10da\\u10d4\\u10d1\\u10d8\",\"advanced_props\":\"\\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d8\\u10d7\\u10d8 \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"event_props\":\"\\u10db\\u10dd\\u10d5\\u10da\\u10d4\\u10dc\\u10d4\\u10d1\\u10d8\\u10e1 \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"popup_props\":\"\\u10d2\\u10d0\\u10e8\\u10da\\u10d8\\u10e1 \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"general_props\":\"\\u10e1\\u10d0\\u10d4\\u10e0\\u10d7\\u10dd \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"advanced_tab\":\"\\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d8\\u10d7\",\"events_tab\":\"\\u10db\\u10dd\\u10d5\\u10da\\u10d4\\u10dc\\u10d0\",\"popup_tab\":\"\\u10d2\\u10d0\\u10e8\\u10da\\u10d0\",\"general_tab\":\"\\u10e1\\u10d0\\u10d4\\u10e0\\u10d7\\u10dd\",list:\"\\u10e1\\u10d8\\u10d0\",\"is_external\":\"\\u10e8\\u10d4\\u10e7\\u10d5\\u10d0\\u10dc\\u10d8\\u10da\\u10d8 \\u10db\\u10d8\\u10e1\\u10d0\\u10db\\u10d0\\u10e0\\u10d7\\u10d8 \\u10d2\\u10d0\\u10d5\\u10e1 \\u10d2\\u10d0\\u10e0\\u10d4 \\u10d1\\u10db\\u10e3\\u10da\\u10e1, \\u10d3\\u10d0\\u10d5\\u10d0\\u10db\\u10d0\\u10d7\\u10dd\\u10e2 \\u10de\\u10e0\\u10d4\\u10e4\\u10d8\\u10e5\\u10e1\\u10d8 http://?\",\"is_email\":\" \\u10e8\\u10d4\\u10e7\\u10d5\\u10d0\\u10dc\\u10d8\\u10da\\u10d8 \\u10db\\u10d8\\u10e1\\u10d0\\u10db\\u10d0\\u10e0\\u10d7\\u10d8 \\u10d2\\u10d0\\u10d5\\u10e1 \\u10d4\\u10da.\\u10e4\\u10dd\\u10e1\\u10e2\\u10d8\\u10e1 \\u10db\\u10d8\\u10e1\\u10d0\\u10db\\u10d0\\u10e0\\u10d7\\u10e1, \\u10d3\\u10d0\\u10d5\\u10d0\\u10db\\u10d0\\u10e2\\u10dd\\u10d7 \\u10de\\u10e0\\u10d4\\u10e4\\u10d8\\u10e5\\u10e1\\u10d8 mailto:?\",titlefield:\"\\u10e1\\u10d0\\u10d7\\u10d0\\u10e3\\u10e0\\u10d8\",target:\"\\u10db\\u10d8\\u10d6\\u10d0\\u10dc\\u10d8\",url:\"\\u10db\\u10d8\\u10e1\\u10d0\\u10db\\u10d0\\u10e0\\u10d7\\u10d8\",title:\"\\u10d1\\u10db\\u10e3\\u10da\\u10d8\\u10e1 \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"link_list\":\"\\u10d1\\u10db\\u10e3\\u10da\\u10d4\\u10d1\\u10d8\\u10e1 \\u10e1\\u10d8\\u10d0\",rtl:\"\\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10dc\\u10d8\\u10d3\\u10d0\\u10dc \\u10db\\u10d0\\u10e0\\u10ea\\u10ee\\u10dc\\u10d8\\u10d5\",ltr:\"\\u10db\\u10d0\\u10e0\\u10ea\\u10ee\\u10dc\\u10d8\\u10d3\\u10d0\\u10dc \\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10dc\\u10d8\\u10d5\",accesskey:\"\\u10e8\\u10d4\\u10e0\\u10ec\\u10d4\\u10d5\\u10d8\\u10e1 \\u10d2\\u10d0\\u10e1\\u10d0\\u10e6\\u10d4\\u10d1\\u10d8\",tabindex:\"\\u10e1\\u10d0\\u10d7\\u10d0\\u10e3\\u10e0\\u10d8\",rev:\"\\u10db\\u10d8\\u10d6\\u10dc\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10dd\\u10d9\\u10d8\\u10d3\\u10d4\\u10d1\\u10e3\\u10da\\u10d4\\u10d1\\u10d0 \\u10d2\\u10d5\\u10d4\\u10e0\\u10d3\\u10d7\\u10d0\\u10dc\",rel:\"\\u10d2\\u10d5\\u10d4\\u10e0\\u10d3\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10dd\\u10d9\\u10d8\\u10d3\\u10d4\\u10d1\\u10e3\\u10da\\u10d4\\u10d1\\u10d0 \\u10db\\u10d8\\u10d6\\u10d0\\u10dc\\u10d7\\u10d0\\u10dc\",mime:\"MIME \\u10db\\u10d8\\u10d6\\u10dc\\u10d8\\u10e1 \\u10e2\\u10d8\\u10de\\u10d8\",encoding:\"\\u10db\\u10d8\\u10d6\\u10dc\\u10d8\\u10e1 \\u10d9\\u10dd\\u10d3\\u10d8\\u10e0\\u10d4\\u10d1\\u10d0\",langcode:\"\\u10d4\\u10dc\\u10d8\\u10e1 \\u10d9\\u10dd\\u10d3\\u10d8\",\"target_langcode\":\"\\u10db\\u10d8\\u10d6\\u10dc\\u10d8\\u10e1 \\u10d4\\u10dc\\u10d0\",width:\"Width\",height:\"Height\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/ko_dlg.js",
    "content": "tinyMCE.addI18n('ko.advlink_dlg',{\"target_name\":\"Target \\uc774\\ub984\",classes:\"\\ud074\\ub798\\uc2a4\",style:\"\\uc11c\\uc2dd\",id:\"ID\",\"popup_position\":\"\\uc704\\uce58(X/Y)\",langdir:\"\\ubb38\\uc790 \\ubc29\\ud5a5\",\"popup_size\":\"\\ud06c\\uae30\",\"popup_dependent\":\"\\uc5f0\\ub3d9 (Mozilla/Firefox\\ub9cc)\",\"popup_resizable\":\"\\ucc3d \\ud06c\\uae30 \\ubcc0\\uacbd \\uac00\\ub2a5\",\"popup_location\":\"\\uc8fc\\uc18c \\ud45c\\uc2dc\\uc904 \\ubcf4\\uc784\",\"popup_menubar\":\"\\uba54\\ub274 \\ud45c\\uc2dc\\uc904 \\ubcf4\\uc784\",\"popup_toolbar\":\"\\ub3c4\\uad6c \\ubaa8\\uc74c \\ubcf4\\uc784\",\"popup_statusbar\":\"\\uc0c1\\ud0dc \\ud45c\\uc2dc\\uc904 \\ubcf4\\uc784\",\"popup_scrollbars\":\"\\uc2a4\\ud06c\\ub864\\ubc14 \\ubcf4\\uc784\",\"popup_return\":\"\\'return false\\' \\uc0bd\\uc785\",\"popup_name\":\"\\ucc3d \\uc774\\ub984\",\"popup_url\":\"\\ud31d\\uc5c5 URL\",popup:\"Javascript \\ud31d\\uc5c5\",\"target_blank\":\"\\uc0c8 \\ucc3d\\uc73c\\ub85c \\uc5f4\\uae30\",\"target_top\":\"\\ucd5c\\uc0c1\\uc704 \\ud504\\ub808\\uc784\\uc5d0 \\uc5f4\\uae30 (\\ubaa8\\ub4e0 \\ud504\\ub808\\uc784\\uc774 \\ubc14\\ub01c)\",\"target_parent\":\"\\ubd80\\ubaa8 \\ucc3d/\\ud504\\ub808\\uc784\\uc5d0 \\uc5f4\\uae30\",\"target_same\":\"\\uc774 \\ucc3d/\\ud504\\ub808\\uc784\\uc5d0 \\uc5f4\\uae30\",\"anchor_names\":\"\\uc575\\ucee4\",\"popup_opts\":\"\\uc635\\uc158\",\"advanced_props\":\"\\uc138\\ubd80 \\uc18d\\uc131\",\"event_props\":\"\\uc774\\ubca4\\ud2b8\",\"popup_props\":\"\\ud31d\\uc5c5 \\uc18d\\uc131\",\"general_props\":\"\\uc77c\\ubc18 \\uc18d\\uc131\",\"advanced_tab\":\"\\uc138\\ubd80 \\uc0ac\\ud56d\",\"events_tab\":\"\\uc774\\ubca4\\ud2b8\",\"popup_tab\":\"\\ud31d\\uc5c5\",\"general_tab\":\"\\uc77c\\ubc18\",list:\"\\ub9c1\\ud06c \\ubaa9\\ub85d\",\"is_external\":\"\\uc785\\ub825\\ud558\\uc2e0 URL\\uc740 \\uc678\\ubd80 \\ub9c1\\ud06c\\ub85c \\ud310\\ub2e8\\ub429\\ub2c8\\ub2e4. URL \\uc55e\\uc5d0 \\ud544\\uc218\\uc801\\uc778 http://\\ub97c \\ubd99\\uc774\\uc2dc\\uaca0\\uc2b5\\ub2c8\\uae4c?\",\"is_email\":\"\\uc785\\ub825\\ud558\\uc2e0 URL\\uc740 e\\uba54\\uc77c \\uc8fc\\uc18c\\ub85c \\ud310\\ub2e8\\ub429\\ub2c8\\ub2e4. URL \\uc55e\\uc5d0 \\ud544\\uc218\\uc801\\uc778 mailto:\\ub97c \\ubd99\\uc774\\uc2dc\\uaca0\\uc2b5\\ub2c8\\uae4c?\",titlefield:\"\\uc81c\\ubaa9\",target:\"Target\",url:\"\\ub9c1\\ud06c URL\",title:\"\\ub9c1\\ud06c \\uc0bd\\uc785/\\ud3b8\\uc9d1\",\"link_list\":\"\\ub9c1\\ud06c \\ubaa9\\ub85d\",rtl:\"\\uc624\\ub978\\ucabd\\uc5d0\\uc11c \\uc67c\\ucabd\\uc73c\\ub85c\",ltr:\"\\uc67c\\ucabd\\uc5d0\\uc11c \\uc624\\ub978\\ucabd\\uc73c\\ub85c\",accesskey:\"\\uc561\\uc138\\uc2a4 \\ud0a4\",tabindex:\"\\ud0ed \\uc778\\ub371\\uc2a4\",rev:\"\\ub9c1\\ud06c\\ub85c\\ubd80\\ud130\\uc758 \\uad00\\uacc4\",rel:\"\\ub9c1\\ud06c\\uc5d0 \\uad00\\uacc4\",mime:\"\\ud0c0\\uac9f MIME \\uc720\\ud615\",encoding:\"\\ud0c0\\uac9f \\ubb38\\uc790 \\uc778\\ucf54\\ub529\",langcode:\"\\uc5b8\\uc5b4 \\ucf54\\ub4dc\",\"target_langcode\":\"\\ud0c0\\uac9f \\uc5b8\\uc5b4\",width:\"\\ud3ed\",height:\"\\ub192\\uc774\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/nb_dlg.js",
    "content": "tinyMCE.addI18n('nb.advlink_dlg',{\"target_name\":\"M\\u00e5lnavn\",classes:\"Klasser\",style:\"Stil\",id:\"Id\",\"popup_position\":\"Posisjon (X/Y)\",langdir:\"Skriftretning\",\"popup_size\":\"St\\u00f8rrelse\",\"popup_dependent\":\"Avhengig vindu (bare i Mozilla/Firefox)\",\"popup_resizable\":\"Gj\\u00f8r vinduet skalerbart\",\"popup_location\":\"Vis plasseringslinje\",\"popup_menubar\":\"Vis menylinje\",\"popup_toolbar\":\"Vis verkt\\u00f8ylinjer\",\"popup_statusbar\":\"Vis statuslinje\",\"popup_scrollbars\":\"Vis rullefelt\",\"popup_return\":\"Sett inn \\'return false\\'\",\"popup_name\":\"Vindunavn\",\"popup_url\":\"Popup URL\",popup:\"Javascript-popup\",\"target_blank\":\"\\u00c5pne i nytt vindu\",\"target_top\":\"\\u00c5pne i toppvindu (erstatter alle rammer)\",\"target_parent\":\"\\u00c5pne i overordnet vindu/ramme\",\"target_same\":\"\\u00c5pne i samme vindu/ramme\",\"anchor_names\":\"Anker\",\"popup_opts\":\"Innstillinger\",\"advanced_props\":\"Generelle egenskaper\",\"event_props\":\"Hendelser\",\"popup_props\":\"Popup-egenskaper\",\"general_props\":\"Generelle egenskaper\",\"advanced_tab\":\"Avansert\",\"events_tab\":\"Hendelser\",\"popup_tab\":\"Popup\",\"general_tab\":\"Generelt\",list:\"Lenkeliste\",\"is_external\":\"URL\\'en du oppga synes \\u00e5 v\\u00e6re en ekstern lenke, \\u00f8nsker du \\u00e5 legge til den n\\u00f8dvendige http:// prefix?\",\"is_email\":\"URL\\'en du oppga synes \\u00e5 v\\u00e6re en email adresse, \\u00f8nsker du \\u00e5 legge til den n\\u00f8dvendige mailto: prefix?\",titlefield:\"Tittel\",target:\"M\\u00e5l\",url:\"Lenkens URL\",title:\"Sett inn / rediger lenke\",\"link_list\":\"Lenkeliste\",rtl:\"H\\u00f8yre  mot venstre\",ltr:\"Venstre mot h\\u00f8yre\",accesskey:\"Hurtigtast\",tabindex:\"Tabulatorindeks\",rev:\"M\\u00e5lets forhold til siden\",rel:\"Sidens forhold til m\\u00e5let\",mime:\"M\\u00e5lets MIME-type\",encoding:\"Tegnkonvertering\",langcode:\"Spr\\u00e5kkode\",\"target_langcode\":\"M\\u00e5lspr\\u00e5k\",width:\"Bredde\",height:\"H\\u00f8yde\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/nl_dlg.js",
    "content": "tinyMCE.addI18n('nl.advlink_dlg',{target_name:\"Doel\",classes:\"Klassen\",style:\"Stijl\",id:\"Id\",popup_position:\"Positie (X/Y)\",langdir:\"Taalrichting\",popup_size:\"Grootte\",popup_dependent:\"Afhankelijk (Alleen Mozilla/Firefox)\",popup_resizable:\"Aanpasbaar venster\",popup_location:\"Lokatiebalk weergeven\",popup_menubar:\"Menubalk weergeven\",popup_toolbar:\"Werkbalk weergeven\",popup_statusbar:\"Statusbalk weergeven\",popup_scrollbars:\"Scrollbalken weergeven\",popup_return:\"\\'return false\\' invoegen\",popup_name:\"Venstertitel\",popup_url:\"Popup URL\",popup:\"Javascript popup\",target_blank:\"In nieuw venster openen\",target_top:\"In bovenste frame openen (vervangt gehele pagina)\",target_parent:\"In bovenliggend venster / frame openen\",target_same:\"In dit venster / frame openen\",anchor_names:\"Ankers\",popup_opts:\"Opties\",advanced_props:\"Geavanceerde eigenschappen\",event_props:\"Gebeurtenissen\",popup_props:\"Popup eigenschappen\",general_props:\"Algemene eigenschappen\",advanced_tab:\"Geavanceerd\",events_tab:\"Gebeurtenissen\",popup_tab:\"Popup\",general_tab:\"Algemeen\",list:\"Lijst\",is_external:\"De ingevoerde URL lijkt op een externe link. Wilt u de vereiste http:// tekst voorvoegen?\",is_email:\"De ingevoerde URL lijkt op een e-mailadres. Wilt u de vereiste mailto: tekst voorvoegen?\",titlefield:\"Titel\",target:\"Doel\",url:\"URL\",title:\"Link invoegen/bewerken\",link_list:\"Lijst\",rtl:\"Van rechts naar links\",ltr:\"Van links naar rechts\",accesskey:\"Toegangstoets\",tabindex:\"Tabvolgorde\",rev:\"Relatie van doel tot pagina\",rel:\"Relatie van pagina tot doel\",mime:\"MIME type\",encoding:\"Taalcodering\",langcode:\"Taalcode\",target_langcode:\"Taal\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/pl_dlg.js",
    "content": "tinyMCE.addI18n('pl.advlink_dlg',{target_name:\"Cel\",classes:\"Klasy\",style:\"Wz\\u00f3r\",id:\"Id\",popup_position:\"Pozycja (X/Y)\",langdir:\"Kierunek czytania tekstu\",popup_size:\"Rozmiar\",popup_dependent:\"Podleg\\u0142y (Mozilla/Firefox wy\\u0142\\u0105cznie)\",popup_resizable:\"Stw\\u00f3rz okno z w\\u0142a\\u015bciwo\\u015bciami zmiany rozmiaru\",popup_location:\"Poka\\u017c pasek adresu\",popup_menubar:\"Poka\\u017c pasek menu\",popup_toolbar:\"Poka\\u017c narz\\u0119dzia\",popup_statusbar:\"Poka\\u017c pasek statusu\",popup_scrollbars:\"Poka\\u017c paski przewijania\",popup_return:\"Wklej \\'return false\\'\",popup_name:\"Nazwa okiena\",popup_url:\"URL okienka\",popup:\"Wyskakuj\\u0105ce okienko\",target_blank:\"Otw\\u00f3rz w nowym oknie\",target_top:\"Otw\\u00f3rz w g\\u00f3rnej ramce (zamie\\u0144 wszystkie ramki)\",target_parent:\"Otw\\u00f3rz w nadrz\\u0119dnej oknie / ramce\",target_same:\"Otw\\u00f3rz w tym oknie / ramce\",anchor_names:\"Kotwice\",popup_opts:\"Opcje\",advanced_props:\"Zaawansowae w\\u0142a\\u015bciwo\\u015bci\",event_props:\"Wydarzenia\",popup_props:\"Popup w\\u0142a\\u015bciwo\\u015bci\",general_props:\"Og\\u00f3lne w\\u0142a\\u015bciwo\\u015bci\",advanced_tab:\"Zaawansowany\",events_tab:\"Wydarzenia\",popup_tab:\"Popup\",general_tab:\"Og\\u00f3lny\",list:\"Lista link\\u00f3w\",is_external:\"Podany adres wydaje si\\u0119 by\\u0107 zewn\\u0119trznym linkiem, czy chcesz doda\\u0107 wymagany prefix http:// ?\",is_email:\"Podany adres wydaje si\\u0119 by\\u0107 adresem emailowym, czy chcesz doda\\u0107 wymagany prefix mailto: ?\",titlefield:\"Tytu\\u0142\",target:\"Cel\",url:\"Link URL\",title:\"Wstaw/edytuj link\",link_list:\"Lista odno\\u015bnik\\u00f3w\",rtl:\"Kierunek z prawej do lewej\",ltr:\"Kierunek z lewej do prawej\",accesskey:\"Klawisz skr\\u00f3tu\",tabindex:\"Tabindex\",rev:\"Relacje celu do strony\",rel:\"Relacje strony do celu\",mime:\"Cel MIME type\",encoding:\"Kodowanie znak\\u00f3w celu\",langcode:\"Kod j\\u0119zyka\",target_langcode:\"Docelowy kod j\\u0119zyka\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/pt_dlg.js",
    "content": "tinyMCE.addI18n('pt.advlink_dlg',{target_name:\"Nome do alvo\",classes:\"Classes\",style:\"Estilo\",id:\"Id\",popup_position:\"Posi\\u00e7\\u00e3o (X/Y)\",langdir:\"Dire\\u00e7\\u00e3o do texto\",popup_size:\"Tamanho\",popup_dependent:\"Dependente (Mozilla/Firefox apenas)\",popup_resizable:\"Permitir altera\\u00e7\\u00e3o do tamanho da janela\",popup_location:\"Mostrar a barra de endere\\u00e7os\",popup_menubar:\"Mostrar a barra de menu\",popup_toolbar:\"Mostrar a barra de ferramentas\",popup_statusbar:\"Mostrar a barra de status\",popup_scrollbars:\"Mostrar as barras de scroll\",popup_return:\"Inserir \\\"return false\\\"\",popup_name:\"Nome da janela\",popup_url:\"URL do popup\",popup:\"Popup javascript\",target_blank:\"Abrir numa nova janela\",target_top:\"Abrir na p\\u00e1gina inteira (substitui todos os quadros)\",target_parent:\"Abrir na janela/quadro pai\",target_same:\"Abrir nesta janela/quadro\",anchor_names:\"\\u00c2ncoras\",popup_opts:\"Op\\u00e7\\u00f5es\",advanced_props:\"Propriedades avan\\u00e7adas\",event_props:\"Eventos\",popup_props:\"Propriedades de popup\",general_props:\"Propriedades gerais\",advanced_tab:\"Avan\\u00e7ado\",events_tab:\"Eventos\",popup_tab:\"Popup\",general_tab:\"Geral\",list:\"Lista de hyperlinks\",is_external:\"A URL digitada parece conduzir a um link externo. Deseja acrescentar o prefixo necess\\u00e1rio http://?\",is_email:\"A URL digitada parece ser um endere\\u00e7o de e-mail. Deseja acrescentar o prefixo necess\\u00e1rio mailto:?\",titlefield:\"T\\u00edtulo\",target:\"Alvo\",url:\"URL do hyperlink\",title:\"Inserir/editar hyperlink\",link_list:\"Lista de hyperlinks\",rtl:\"Da direita para a esquerda\",ltr:\"Da esquerda para a direita\",accesskey:\"Chave de acesso\",tabindex:\"Tabindex\",rev:\"Rela\\u00e7\\u00e3o alvo/p\\u00e1gina\",rel:\"Rela\\u00e7\\u00e3o p\\u00e1gina/alvo\",mime:\"Tipo MIME alvo\",encoding:\"Codifica\\u00e7\\u00e3o de caracteres\",langcode:\"C\\u00f3digo do idioma\",target_langcode:\"Idioma alvo\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/ro_dlg.js",
    "content": "tinyMCE.addI18n('ro.advlink_dlg',{target_name:\"Nume \\u0163int\\u0103\",classes:\"Clase\",style:\"Stil\",id:\"Id\",popup_position:\"Pozi\\u0163ie (X/Y)\",langdir:\"Direc\\u0163ie limb\\u0103\",popup_size:\"M\\u0103rime\",popup_dependent:\"Dependent (Mozilla/Firefox)?\",popup_resizable:\"Fereastr\\u0103 redimensionabil\\u0103?\",popup_location:\"Arat\\u0103 bara de adrese\",popup_menubar:\"Arat\\u0103 meniul\",popup_toolbar:\"Arat\\u0103 toolbar-uri\",popup_statusbar:\"Arat\\u0103 bara de stare\",popup_scrollbars:\"Arat\\u0103 barele de derulare\",popup_return:\"Insereaz\\u0103 \\'return false\\'\",popup_name:\"Nume fereastr\\u0103\",popup_url:\"URL Popup\",popup:\"Javascript Popup\",target_blank:\"Deschide \\u00een fereastr\\u0103 nou\\u0103\",target_top:\"Deschide \\u00een frame-ul cel mai mare (\\u00eenlocuie\\u015fte celelalte frame-uri)\",target_parent:\"Deschide leg\\u0103tura \\u00een fereastra/cadrul p\\u0103rinte\",target_same:\"Deschide leg\\u0103tura \\u00een aceea\\u015fi fereastr\\u0103/acela\\u015fi cadru\",anchor_names:\"Ancore\",popup_opts:\"Op\\u0163iuni\",advanced_props:\"Propriet\\u0103\\u0163i avansate\",event_props:\"Evenimente\",popup_props:\"Propriet\\u0103\\u0163i popup\",general_props:\"Propriet\\u0103\\u0163i generale\",advanced_tab:\"Avansat\",events_tab:\"Evenimente\",popup_tab:\"Popup\",general_tab:\"General\",list:\"List\\u0103 de leg\\u0103turi\",is_external:\"URL-ul pe care l-a\\u0163i introdus pare a fi o leg\\u0103tur\\u0103 extern\\u0103. Dori\\u0163i s\\u0103 adaug \\u015fi prefixul http:// necesar?\",is_email:\"URL-ul pe care l-a\\u0163i introdus pare a fi o adres\\u0103 de e-mail. Dori\\u0163i s\\u0103 adaug \\u015fi prefixul mailto: necesar?\",titlefield:\"Titlu\",target:\"\\u0162int\\u0103\",url:\"URL leg\\u0103tur\\u0103\",title:\"Insereaz\\u0103/editeaz\\u0103 link\",link_list:\"List\\u0103 leg\\u0103turi\",rtl:\"Dreapta la st\\u00e2nga\",ltr:\"St\\u00e2nga la dreapta\",accesskey:\"Cheie de acces\",tabindex:\"Tabindex\",rev:\"Rela\\u0163ia \\u0163intei cu pagina\",rel:\"Rela\\u0163ia paginii cu \\u0163inta\",mime:\"MIME type \\u0163int\\u0103\",encoding:\"Set de caractere \\u0163int\\u0103\",langcode:\"Cod limb\\u0103\",target_langcode:\"Limb\\u0103\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/ru_dlg.js",
    "content": "tinyMCE.addI18n('ru.advlink_dlg',{target_name:\"\\u0418\\u043c\\u044f \\u0446\\u0435\\u043b\\u0438\",classes:\"\\u041a\\u043b\\u0430\\u0441\\u0441\\u044b\",style:\"\\u0421\\u0442\\u0438\\u043b\\u044c\",id:\"\\u0418\\u043c\\u044f\",popup_position:\"\\u041f\\u043e\\u0437\\u0438\\u0446\\u0438\\u044f (X/Y)\",langdir:\"\\u041d\\u0430\\u043f\\u0440\\u0430\\u0432\\u043b\\u0435\\u043d\\u0438\\u0435 \\u0442\\u0435\\u043a\\u0441\\u0442\\u0430\",popup_size:\"\\u0420\\u0430\\u0437\\u043c\\u0435\\u0440\",popup_dependent:\"\\u0417\\u0430\\u0432\\u0438\\u0441\\u0438\\u043c\\u043e\\u0441\\u0442\\u044c (\\u0442\\u043e\\u043b\\u044c\\u043a\\u043e \\u0434\\u043b\\u044f Firefox)\",popup_resizable:\"\\u0420\\u0430\\u0437\\u0440\\u0435\\u0448\\u0430\\u0442\\u044c \\u0438\\u0437\\u043c\\u0435\\u043d\\u044f\\u0442\\u044c \\u0440\\u0430\\u0437\\u043c\\u0435\\u0440\",popup_location:\"\\u041e\\u0442\\u043e\\u0431\\u0440\\u0430\\u0436\\u0430\\u0442\\u044c \\u043f\\u0430\\u043d\\u0435\\u043b\\u044c \\u0440\\u0430\\u0441\\u043f\\u043e\\u043b\\u043e\\u0436\\u0435\\u043d\\u0438\\u044f\",popup_menubar:\"\\u041e\\u0442\\u043e\\u0431\\u0440\\u0430\\u0436\\u0430\\u0442\\u044c \\u043c\\u0435\\u043d\\u044e\",popup_toolbar:\"\\u041e\\u0442\\u043e\\u0431\\u0440\\u0430\\u0436\\u0430\\u0442\\u044c \\u043f\\u0430\\u043d\\u0435\\u043b\\u0438 \\u0438\\u043d\\u0441\\u0442\\u0440\\u0443\\u043c\\u0435\\u043d\\u0442\\u043e\\u0432\",popup_statusbar:\"\\u041e\\u0442\\u043e\\u0431\\u0440\\u0430\\u0436\\u0430\\u0442\\u044c \\u0441\\u0442\\u0440\\u043e\\u043a\\u0443 \\u0441\\u043e\\u0441\\u0442\\u043e\\u044f\\u043d\\u0438\\u044f\",popup_scrollbars:\"\\u041e\\u0442\\u043e\\u0431\\u0440\\u0430\\u0436\\u0430\\u0442\\u044c \\u043f\\u043e\\u043b\\u043e\\u0441\\u044b \\u043f\\u0440\\u043e\\u043a\\u0440\\u0443\\u0442\\u043a\\u0438\",popup_return:\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\'return false\\'\",popup_name:\"\\u041d\\u0430\\u0437\\u0432\\u0430\\u043d\\u0438\\u0435 \\u043e\\u043a\\u043d\\u0430\",popup_url:\"\\u0410\\u0434\\u0440\\u0435\\u0441\",popup:\"\\u0420\\u0430\\u0437\\u0432\\u0435\\u0440\\u0442\\u044b\\u0432\\u0430\\u043d\\u0438\\u0435 \\u0441 \\u0438\\u0441\\u043f\\u043e\\u043b\\u044c\\u0437\\u043e\\u0432\\u0430\\u043d\\u0438\\u0435\\u043c Java\",target_blank:\"\\u041e\\u0442\\u043a\\u0440\\u044b\\u0442\\u044c \\u0432 \\u043d\\u043e\\u0432\\u043e\\u043c \\u043e\\u043a\\u043d\\u0435\",target_top:\"\\u041e\\u0442\\u043a\\u0440\\u044b\\u0442\\u044c \\u0432 \\u0432\\u0435\\u0440\\u0445\\u043d\\u0435\\u043c \\u043a\\u0430\\u0434\\u0440\\u0435 (\\u0437\\u0430\\u043c\\u0435\\u043d\\u0438\\u0442\\u044c \\u0432\\u0441\\u0435 \\u043a\\u0430\\u0434\\u0440\\u044b)\",target_parent:\"\\u041e\\u0442\\u043a\\u0440\\u044b\\u0442\\u044c \\u0432 \\u0440\\u043e\\u0434\\u0438\\u0442\\u0435\\u043b\\u044c\\u0441\\u043a\\u043e\\u043c \\u043e\\u043a\\u043d\\u0435/\\u043a\\u0430\\u0434\\u0440\\u0435\",target_same:\"\\u041e\\u0442\\u043a\\u0440\\u044b\\u0442\\u044c \\u0432 \\u044d\\u0442\\u043e\\u043c \\u043e\\u043a\\u043d\\u0435/\\u043a\\u0430\\u0434\\u0440\\u0435\",anchor_names:\"\\u042f\\u043a\\u043e\\u0440\\u044f\",popup_opts:\"\\u0421\\u0432\\u043e\\u0439\\u0441\\u0442\\u0432\\u0430\",advanced_props:\"\\u0414\\u043e\\u043f\\u043e\\u043b\\u043d\\u0438\\u0442\\u0435\\u043b\\u044c\\u043d\\u044b\\u0435 \\u043f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b\",event_props:\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b \\u0441\\u043e\\u0431\\u044b\\u0442\\u0438\\u0439\",popup_props:\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b \\u0440\\u0430\\u0437\\u0432\\u0435\\u0440\\u0442\\u044b\\u0432\\u0430\\u043d\\u0438\\u044f\",general_props:\"\\u041e\\u0431\\u0449\\u0438\\u0435 \\u043f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b\",advanced_tab:\"\\u0414\\u043e\\u043f\\u043e\\u043b\\u043d\\u0438\\u0442\\u0435\\u043b\\u044c\\u043d\\u043e\",events_tab:\"\\u0421\\u043e\\u0431\\u044b\\u0442\\u0438\\u044f\",popup_tab:\"\\u0420\\u0430\\u0437\\u0432\\u0435\\u0440\\u0442\\u044b\\u0432\\u0430\\u043d\\u0438\\u0435\",general_tab:\"\\u041e\\u0431\\u0449\\u0435\\u0435\",list:\"\\u0421\\u043f\\u0438\\u0441\\u043e\\u043a\",is_external:\"\\u0412\\u0432\\u0435\\u0434\\u0435\\u043d\\u043d\\u044b\\u0439 \\u0430\\u0434\\u0440\\u0435\\u0441 \\u043d\\u0430\\u043f\\u043e\\u043c\\u0438\\u043d\\u0430\\u0435\\u0442 \\u0432\\u043d\\u0435\\u0448\\u043d\\u044e\\u044e \\u0441\\u0441\\u044b\\u043b\\u043a\\u0443, \\u0434\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\u043f\\u0440\\u0435\\u0444\\u0438\\u043a\\u0441 http://?\",is_email:\"\\u0412\\u0432\\u0435\\u0434\\u0435\\u043d\\u043d\\u044b\\u0439 \\u0430\\u0434\\u0440\\u0435\\u0441 \\u043d\\u0430\\u043f\\u043e\\u043c\\u0438\\u043d\\u0430\\u0435\\u0442 \\u044d\\u043b\\u0435\\u043a\\u0442\\u0440\\u043e\\u043d\\u043d\\u0443\\u044e \\u043f\\u043e\\u0447\\u0442\\u0443, \\u0434\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\u043f\\u0440\\u0435\\u0444\\u0438\\u043a\\u0441 mailto:?\",titlefield:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a\",target:\"\\u0426\\u0435\\u043b\\u044c\",url:\"\\u0410\\u0434\\u0440\\u0435\\u0441\",title:\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b \\u0441\\u0441\\u044b\\u043b\\u043a\\u0438\",link_list:\"\\u0421\\u043f\\u0438\\u0441\\u043e\\u043a \\u0441\\u0441\\u044b\\u043b\\u043e\\u043a\",rtl:\"\\u0421\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043d\\u0430\\u043b\\u0435\\u0432\\u043e\",ltr:\"\\u0421\\u043b\\u0435\\u0432\\u0430 \\u043d\\u0430\\u043f\\u0440\\u0430\\u0432\\u043e\",accesskey:\"\\u041a\\u043b\\u044e\\u0447 \\u0434\\u043e\\u0441\\u0442\\u0443\\u043f\\u0430\",tabindex:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a\",rev:\"\\u041e\\u0442\\u043d\\u043e\\u0448\\u0435\\u043d\\u0438\\u0435 \\u0446\\u0435\\u043b\\u0438 \\u043a \\u0441\\u0442\\u0440\\u0430\\u043d\\u0438\\u0446\\u0435\",rel:\"\\u041e\\u0442\\u043d\\u043e\\u0448\\u0435\\u043d\\u0438\\u0435 \\u0441\\u0442\\u0440\\u0430\\u043d\\u0438\\u0446\\u044b \\u043a \\u0446\\u0435\\u043b\\u0438\",mime:\"MIME \\u0442\\u0438\\u043f \\u0446\\u0435\\u043b\\u0438\",encoding:\"\\u041a\\u043e\\u0434\\u0438\\u0440\\u043e\\u0432\\u043a\\u0430 \\u0446\\u0435\\u043b\\u0438\",langcode:\"\\u041a\\u043e\\u0434 \\u044f\\u0437\\u044b\\u043a\\u0430\",target_langcode:\"\\u042f\\u0437\\u044b\\u043a \\u0446\\u0435\\u043b\\u0438\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/sr_dlg.js",
    "content": "tinyMCE.addI18n('sr.advlink_dlg',{target_name:\"Ime mete\",classes:\"Klasa\",style:\"Stil\",id:\"Id\",popup_position:\"Pozicija (X/Y)\",langdir:\"Smer jezika\",popup_size:\"Veli\\u010dina\",popup_dependent:\"Zavistan (samo za Mozilla/Firefox)\",popup_resizable:\"Prozor promenljive veli\\u010dine\",popup_location:\"Prika\\u017ei traku lokacije\",popup_menubar:\"Prika\\u017ei Meni\",popup_toolbar:\"Prika\\u017ei trake sa alatima\",popup_statusbar:\"Prika\\u017ei statusnu traku\",popup_scrollbars:\"Prika\\u017ei kliza\\u010de\",popup_return:\"Ubaci \\'return false\\'\",popup_name:\"Ime prozora\",popup_url:\"Popup URL\",popup:\"Javascript popup\",target_blank:\"Otvori u novom prozoru\",target_top:\"Otvori u gornjem ramu (zamenjuje sve ramove)\",target_parent:\"Otvori u izvornom prozoru / ramu\",target_same:\"Otovori u novom prozoru / ramu\",anchor_names:\"Sidra\",popup_opts:\"Opcije\",advanced_props:\"Napredna svojstva\",event_props:\"Doga\\u0111aji\",popup_props:\"Detalji popup prozora\",general_props:\"Detalji\",advanced_tab:\"Napredno\",events_tab:\"Doga\\u0111aji\",popup_tab:\"Popup\",general_tab:\"Op\\u0161te opcije\",list:\"Lista linkova\",is_external:\"URL koji ste uneli izgleda kao spolja\\u0161nji link, da li \\u017eelite da dodate neophodni http:// prefiks?\",is_email:\"URL koji ste uneli izgleda kao e-mail adresa, da li \\u017eelite da dodate neophodni mailto: prefiks?\",titlefield:\"Naslov\",target:\"Meta\",url:\"URL link\",title:\"Ubaci/izmeni link\",link_list:\"Lista linkova\",rtl:\"S desna na levo\",ltr:\"S leva na desno\",accesskey:\"Taster za pristup\",tabindex:\"Tabindex\",rev:\"Odnos mete prema stranici\",rel:\"Odnos stranice prema meti\",mime:\"MIME tip\",encoding:\"Kodiranje znakova\",langcode:\"Kod jezika\",target_langcode:\"Jezik\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/sv_dlg.js",
    "content": "tinyMCE.addI18n('sv.advlink_dlg',{\"target_name\":\"M\\u00e5lnamn\",classes:\"Klasser\",style:\"Stil\",id:\"Id\",\"popup_position\":\"Position (x/y)\",langdir:\"Skriftriktning\",\"popup_size\":\"Storlek\",\"popup_dependent\":\"Beroende av (Mozilla/Firefox enbart)\",\"popup_resizable\":\"Skalbart f\\u00f6nster\",\"popup_location\":\"Adressraden\",\"popup_menubar\":\"Menyrad\",\"popup_toolbar\":\"Verktygsf\\u00e4lt\",\"popup_statusbar\":\"Statusf\\u00e4lt\",\"popup_scrollbars\":\"Rullningslister\",\"popup_return\":\"Infoga \\'return false\\'\",\"popup_name\":\"F\\u00f6nsternamn\",\"popup_url\":\"Popup URL\",popup:\"Javascript popup\",\"target_blank\":\"\\u00d6ppna i nytt f\\u00f6nster\",\"target_top\":\"\\u00d6ppna i toppramen (ers\\u00e4tter alla ramar)\",\"target_parent\":\"\\u00d6ppna i \\u00f6verliggande f\\u00f6nster/ram\",\"target_same\":\"\\u00d6ppna i detta f\\u00f6nster/ram\",\"anchor_names\":\"Bokm\\u00e4rken\",\"popup_opts\":\"Inst\\u00e4llningar\",\"advanced_props\":\"Avancerade inst\\u00e4llningar\",\"event_props\":\"H\\u00e4ndelser\",\"popup_props\":\"Popup-inst\\u00e4llningar\",\"general_props\":\"Generella inst\\u00e4llningar\",\"advanced_tab\":\"Avancerat\",\"events_tab\":\"H\\u00e4ndelser\",\"popup_tab\":\"Popup\",\"general_tab\":\"Generellt\",list:\"L\\u00e4nklista\",\"is_external\":\"L\\u00e4nken du angav verkar vara en extern adress. Vill du infoga http:// prefixet p\\u00e5 l\\u00e4nken?\",\"is_email\":\"L\\u00e4nken du angav verkar vara en e-post adress. Vill du infoga mailto: prefixet p\\u00e5 l\\u00e4nken?\",titlefield:\"Titel\",target:\"M\\u00e5l\",url:\"L\\u00e4nkens URL\",title:\"Infoga/redigera l\\u00e4nk\",\"link_list\":\"L\\u00e4nklista\",rtl:\"H\\u00f6ger till v\\u00e4nster\",ltr:\"V\\u00e4nster till h\\u00f6ger\",accesskey:\"Snabbtangent\",tabindex:\"Tabbindex\",rev:\"Omv\\u00e4nd relation (rev)\",rel:\"Relation (rel attribut)\",mime:\"MIME type\",encoding:\"Teckenformattering\",langcode:\"Spr\\u00e5kkod\",\"target_langcode\":\"M\\u00e5lspr\\u00e5k\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/tr_dlg.js",
    "content": "tinyMCE.addI18n('tr.advlink_dlg',{\"target_name\":\"Hedef ad\\u0131\",classes:\"S\\u0131n\\u0131fla\",style:\"Stil\",id:\"Id\",\"popup_position\":\"Konum (X/Y)\",langdir:\"Dil y\\u00f6n\\u00fc\",\"popup_size\":\"Boyut\",\"popup_dependent\":\"Ba\\u011f\\u0131ml\\u0131 (Sadece Mozilla Firefox)\",\"popup_resizable\":\"Pencereyi boyutland\\u0131r\\u0131labilir yap\",\"popup_location\":\"Aderes \\u00e7ubu\\u011funu g\\u00f6ster\",\"popup_menubar\":\"Men\\u00fc \\u00e7ubu\\u011funu g\\u00f6ster\",\"popup_toolbar\":\"Ara\\u00e7 kutusunu g\\u00f6ster\",\"popup_statusbar\":\"Durum \\u00e7ubu\\u011funu g\\u00f6ster\",\"popup_scrollbars\":\"Kayd\\u0131rma \\u00e7ubuklar\\u0131n\\u0131 g\\u00f6ster\",\"popup_return\":\"Ekle \\'return false\\'\",\"popup_name\":\"Pencere ad\\u0131\",\"popup_url\":\"A\\u00e7\\u0131l\\u0131r pencere URL\\'si\",popup:\"Javascript a\\u00e7\\u0131l\\u0131r pencere\",\"target_blank\":\"Yeni pencerede a\\u00e7\",\"target_top\":\"\\u00dcst \\u00e7er\\u00e7evede a\\u00e7 (t\\u00fcm \\u00e7er\\u00e7eveleri de\\u011fi\\u015ftir) \",\"target_parent\":\"Ana pencerede / \\u00e7er\\u00e7evede a\\u00e7\",\"target_same\":\"Pencerede / \\u00e7er\\u00e7evede a\\u00e7\",\"anchor_names\":\"Nesne tutucular\",\"popup_opts\":\"Se\\u00e7enekler\",\"advanced_props\":\"Geli\\u015fmi\\u015f \\u00f6zellikler\",\"event_props\":\"Olaylar\",\"popup_props\":\"A\\u00e7\\u0131l\\u0131r pencere \\u00f6zellikleri\",\"general_props\":\"Genel \\u00f6zellikler\",\"advanced_tab\":\"Geli\\u015fmi\\u015f\",\"events_tab\":\"Olaylar\",\"popup_tab\":\"A\\u00e7\\u0131l\\u0131r pencere\",\"general_tab\":\"Genel\",list:\"Ba\\u011flant\\u0131 listesi\",\"is_external\":\"Girdi\\u011fiz URL d\\u0131\\u015f ba\\u011flant\\u0131 gibi g\\u00f6r\\u00fcn\\u00fcyor; gerekli olan http:// \\u00f6nekinin eklenmesini ister misiniz?\",\"is_email\":\"Girdi\\u011finiz URL e-posta adresi gibi g\\u00f6r\\u00fcn\\u00fcyor; gerekli olan mailto: \\u00f6nekinin eklenmesini ister misiniz? prefix?\",titlefield:\"Ba\\u015fl\\u0131k\",target:\"Hedef\",url:\"Ba\\u011flant\\u0131 URL\\'si\",title:\"Ba\\u011flant\\u0131 ekle/d\\u00fczenle\",\"link_list\":\"Ba\\u011flant\\u0131 listesi\",rtl:\"Soldan sa\\u011fa\",ltr:\"Sa\\u011fdan sola\",accesskey:\"Eri\\u015fim tu\\u015fu\",tabindex:\"Sekme indeksi\",rev:\"Sayfadan hedefe ili\\u015fki\",rel:\"Hedeften sayfaya ili\\u015fki\",mime:\"Hedef MIME tipi\",encoding:\"Hedef karakter kodlama\",langcode:\"Dil kodu\",\"target_langcode\":\"Hedef dil\",width:\"Geni\\u015flik\",height:\"Y\\u00fckseklik\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/uk_dlg.js",
    "content": "tinyMCE.addI18n('uk.advlink_dlg',{\"target_name\":\"\\u041d\\u0430\\u0437\\u0432\\u0430 \\u0446\\u0456\\u043b\\u0456\",classes:\"\\u041a\\u043b\\u0430\\u0441\\u0438\",style:\"\\u0421\\u0442\\u0438\\u043b\\u044c\",id:\"\\u0406\\u0434\\u0435\\u043d\\u0442\\u0438\\u0444\\u0456\\u043a\\u0430\\u0442\\u043e\\u0440\",\"popup_position\":\"\\u041f\\u043e\\u0437\\u0438\\u0446\\u0456\\u044f (X/Y)\",langdir:\"\\u041d\\u0430\\u043f\\u0440\\u044f\\u043c \\u043c\\u043e\\u0432\\u0438\",\"popup_size\":\"\\u0420\\u043e\\u0437\\u043c\\u0456\\u0440\",\"popup_dependent\":\"\\u0417\\u0430\\u043b\\u0435\\u0436\\u043d\\u0438\\u0439 (\\u043b\\u0438\\u0448\\u0435 \\u0434\\u043b\\u044f Mozilla/Firefox)\",\"popup_resizable\":\"\\u0414\\u043e\\u0437\\u0432\\u043e\\u043b\\u044f\\u0442\\u0438 \\u0437\\u043c\\u0456\\u043d\\u044e\\u0432\\u0430\\u0442\\u0438 \\u0440\\u043e\\u0437\\u043c\\u0456\\u0440\",\"popup_location\":\"\\u041f\\u043e\\u043a\\u0430\\u0437\\u0443\\u0432\\u0430\\u0442\\u0438 \\u043f\\u0430\\u043d\\u0435\\u043b\\u044c location\",\"popup_menubar\":\"\\u041f\\u043e\\u043a\\u0430\\u0437\\u0443\\u0432\\u0430\\u0442\\u0438 \\u043c\\u0435\\u043d\\u044e\",\"popup_toolbar\":\"\\u041f\\u043e\\u043a\\u0430\\u0437\\u0443\\u0432\\u0430\\u0442\\u0438 \\u043f\\u0430\\u043d\\u0435\\u043b\\u0456 \\u0456\\u043d\\u0441\\u0442\\u0440\\u0443\\u043c\\u0435\\u043d\\u0442\\u0456\\u0432\",\"popup_statusbar\":\"\\u041f\\u043e\\u043a\\u0430\\u0437\\u0443\\u0432\\u0430\\u0442\\u0438 \\u0441\\u0442\\u0430\\u0442\\u0443\\u0441\",\"popup_scrollbars\":\"\\u041f\\u043e\\u043a\\u0430\\u0437\\u0443\\u0432\\u0430\\u0442\\u0438 \\u0441\\u043a\\u0440\\u043e\\u043b\\u0435\\u0440\\u0438\",\"popup_return\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438 \\'return false\\'\",\"popup_name\":\"\\u041d\\u0430\\u0437\\u0432\\u0430 \\u0432\\u0456\\u043a\\u043d\\u0430\",\"popup_url\":\"\\u041f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f \\u043d\\u0430 \\u0432\\u0438\\u0440\\u0438\\u043d\\u0430\\u044e\\u0447\\u0435 \\u0432\\u0456\\u043a\\u043d\\u043e\",popup:\"\\u0412\\u0438\\u0440\\u0438\\u043d\\u0430\\u044e\\u0447\\u0435 \\u0432\\u0456\\u043a\\u043d\\u043e Javascript\",\"target_blank\":\"\\u0412\\u0456\\u0434\\u043a\\u0440\\u0438\\u0442\\u0438 \\u0432 \\u043d\\u043e\\u0432\\u043e\\u043c\\u0443 \\u0432\\u0456\\u043a\\u043d\\u0456\",\"target_top\":\"\\u0412\\u0456\\u0434\\u043a\\u0440\\u0438\\u0442\\u0438 \\u0443 \\u0432\\u0435\\u0440\\u0445\\u043d\\u044c\\u043e\\u043c\\u0443 \\u0444\\u0440\\u0435\\u0439\\u043c\\u0456 (\\u0437\\u0430\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438 \\u0432\\u0441\\u0456 \\u0444\\u0440\\u0435\\u0439\\u043c\\u0438)\",\"target_parent\":\"\\u0412\\u0456\\u0434\\u043a\\u0440\\u0438\\u0442\\u0438 \\u0432 \\u0431\\u0430\\u0442\\u044c\\u043a\\u0456\\u0432\\u0441\\u044c\\u043a\\u043e\\u043c\\u0443 \\u0432\\u0456\\u043a\\u043d\\u0456 / \\u0444\\u0440\\u0435\\u0439\\u043c\\u0456\",\"target_same\":\"\\u0412\\u0456\\u0434\\u043a\\u0440\\u0438\\u0442\\u0438 \\u0432 \\u0446\\u044c\\u043e\\u043c\\u0443 \\u0436 \\u0432\\u0456\\u043a\\u043d\\u0456 / \\u0444\\u0440\\u0435\\u0439\\u043c\\u0456\",\"anchor_names\":\"\\u042f\\u043a\\u043e\\u0440\\u0456\",\"popup_opts\":\"\\u0412\\u043b\\u0430\\u0441\\u0442\\u0438\\u0432\\u043e\\u0441\\u0442\\u0456\",\"advanced_props\":\"\\u0420\\u043e\\u0437\\u0448\\u0438\\u0440\\u0435\\u043d\\u0456 \\u0432\\u043b\\u0430\\u0441\\u0442\\u0438\\u0432\\u043e\\u0441\\u0442\\u0456\",\"event_props\":\"\\u041f\\u043e\\u0434\\u0456\\u0457\",\"popup_props\":\"\\u0412\\u043b\\u0430\\u0441\\u0442\\u0438\\u0432\\u043e\\u0441\\u0442\\u0456 \\u0432\\u0438\\u0440\\u0438\\u043d\\u0430\\u044e\\u0447\\u043e\\u0433\\u043e \\u0432\\u0456\\u043a\\u043d\\u0430\",\"general_props\":\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u044c\\u043d\\u0456 \\u0432\\u043b\\u0430\\u0441\\u0442\\u0438\\u0432\\u043e\\u0441\\u0442\\u0456\",\"advanced_tab\":\"\\u0414\\u043e\\u0434\\u0430\\u0442\\u043a\\u043e\\u0432\\u043e\",\"events_tab\":\"\\u041f\\u043e\\u0434\\u0456\\u0457\",\"popup_tab\":\"\\u0412\\u0438\\u0440\\u0438\\u043d\\u0430\\u044e\\u0447\\u0435 \\u0432\\u0456\\u043a\\u043d\\u043e\",\"general_tab\":\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u044c\\u043d\\u0435\",list:\"\\u0421\\u043f\\u0438\\u0441\\u043e\\u043a \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u044c\",\"is_external\":\"\\u0412\\u0432\\u0435\\u0434\\u0435\\u043d\\u0435 \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f \\u0441\\u0445\\u043e\\u0436\\u0435 \\u043d\\u0430 \\u0437\\u043e\\u0432\\u043d\\u0456\\u0448\\u043d\\u0454 \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f, \\u0432\\u0438 \\u0431\\u0430\\u0436\\u0430\\u0454\\u0442\\u0435 \\u0434\\u043e\\u0434\\u0430\\u0442\\u0438 \\u043f\\u043e\\u0442\\u0440\\u0456\\u0431\\u043d\\u0438\\u0439 \\u043f\\u0440\\u0435\\u0444\\u0456\\u043a\\u0441 http://?\",\"is_email\":\"\\u0412\\u0432\\u0435\\u0434\\u0435\\u043d\\u0435 \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f \\u0441\\u0445\\u043e\\u0436\\u0435 \\u043d\\u0430 \\u0430\\u0434\\u0440\\u0435\\u0441\\u0443 \\u0435\\u043b\\u0435\\u043a\\u0442\\u0440\\u043e\\u043d\\u043d\\u043e\\u0457 \\u043f\\u043e\\u0448\\u0442\\u0438, \\u0432\\u0438 \\u0431\\u0430\\u0436\\u0430\\u0454\\u0442\\u0435 \\u0434\\u043e\\u0434\\u0430\\u0442\\u0438 \\u043f\\u043e\\u0442\\u0440\\u0456\\u0431\\u043d\\u0438\\u0439 \\u043f\\u0440\\u0435\\u0444\\u0456\\u043a\\u0441 mailto:?\",titlefield:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a\",target:\"\\u0412\\u0456\\u0434\\u043a\\u0440\\u0438\\u0442\\u0438 \\u0432...\",url:\"\\u0410\\u0434\\u0440\\u0435\\u0441\\u0430\",title:\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438/\\u0437\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438 \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f\",\"link_list\":\"\\u0421\\u043f\\u0438\\u0441\\u043e\\u043a \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u044c\",rtl:\"\\u0421\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043b\\u0456\\u0432\\u043e\\u0440\\u0443\\u0447\",ltr:\"\\u0417\\u043b\\u0456\\u0432\\u0430 \\u043f\\u0440\\u0430\\u0432\\u043e\\u0440\\u0443\\u0447\",accesskey:\"\\u041a\\u043b\\u0430\\u0432\\u0456\\u0448\\u0430 \\u0434\\u043e\\u0441\\u0442\\u0443\\u043f\\u0443\",tabindex:\"\\u0422\\u0430\\u0431\\u0456\\u043d\\u0434\\u0435\\u043a\\u0441\",rev:\"\\u0417\\u0432\\'\\u044f\\u0437\\u043e\\u043a \\u043c\\u0456\\u0436 \\u0446\\u0456\\u043b\\u043b\\u044e \\u0442\\u0430 \\u0441\\u0442\\u043e\\u0440\\u0456\\u043d\\u043a\\u043e\\u044e\",rel:\"\\u0417\\u0432\\'\\u044f\\u0437\\u043e\\u043a \\u043c\\u0456\\u0436 \\u0441\\u0442\\u043e\\u0440\\u0456\\u043d\\u043a\\u043e\\u044e \\u0442\\u0430 \\u0446\\u0456\\u043b\\u043b\\u044e\",mime:\"MIME \\u0442\\u0438\\u043f \\u0446\\u0456\\u043b\\u0456\",encoding:\"\\u041a\\u043e\\u0434\\u0443\\u0432\\u0430\\u043d\\u043d\\u044f \\u0446\\u0456\\u043b\\u0456\",langcode:\"\\u041a\\u043e\\u0434 \\u043c\\u043e\\u0432\\u0438\",\"target_langcode\":\"\\u041c\\u043e\\u0432\\u0430 \\u0446\\u0456\\u043b\\u0456\",width:\"\\u0428\\u0438\\u0440\\u0438\\u043d\\u0430\",height:\"\\u0412\\u0438\\u0441\\u043e\\u0442\\u0430\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/zh-tw_dlg.js",
    "content": "tinyMCE.addI18n('zh-tw.advlink_dlg',{\"target_name\":\"\\u76ee\\u6a19\\u540d\\u7a31\",classes:\"\\u985e\\u5225 (Class)\",style:\"\\u6a23\\u5f0f\",id:\"\\u9023\\u7d50\\u7684 ID\",\"popup_position\":\"\\u4f4d\\u7f6e (X/Y)\",langdir:\"\\u66f8\\u5beb\\u65b9\\u5411\",\"popup_size\":\"\\u5927\\u5c0f\",\"popup_dependent\":\"\\u9650\\u5236 (\\u50c5 Firefox \\u652f\\u63f4)\",\"popup_resizable\":\"\\u53ef\\u4ee5\\u8abf\\u6574\\u8996\\u7a97\\u5927\\u5c0f\",\"popup_location\":\"\\u986f\\u793a\\u7db2\\u5740\\u5217\",\"popup_menubar\":\"\\u986f\\u793a\\u7a0b\\u5f0f\\u9078\\u55ae\",\"popup_toolbar\":\"\\u986f\\u793a\\u5de5\\u5177\\u5217\",\"popup_statusbar\":\"\\u986f\\u793a\\u72c0\\u614b\\u5217\",\"popup_scrollbars\":\"\\u986f\\u793a\\u7db2\\u9801\\u6372\\u8ef8\",\"popup_return\":\"\\u52a0\\u5165\\u4e00\\u500b Javascript Return False \\u8a9e\\u6cd5\",\"popup_name\":\"\\u8996\\u7a97\\u540d\\u7a31\",\"popup_url\":\"\\u5f48\\u8df3\\u8996\\u7a97\\u7684\\u7db2\\u5740\",popup:\"\\u4f7f\\u7528 Javascript \\u7a0b\\u5f0f\\u8a9e\\u8a00\\u505a\\u5f48\\u8df3\\u6548\\u679c\",\"target_blank\":\"\\u958b\\u4e00\\u500b\\u65b0\\u8996\\u7a97\",\"target_top\":\"\\u76f4\\u63a5\\u958b\\u555f (\\u6846\\u67b6\\u4e5f\\u84cb\\u6389)\",\"target_parent\":\"\\u958b\\u5728\\u4e3b\\u8981\\u756b\\u9762\",\"target_same\":\"\\u76f4\\u63a5\\u958b\\u555f\",\"anchor_names\":\"\\u9328\\u9ede (\\u66f8\\u7c64)\",\"popup_opts\":\"\\u9078\\u9805\",\"advanced_props\":\"\\u66f4\\u591a\\u8a2d\\u5b9a\",\"event_props\":\"\\u4e8b\\u4ef6\",\"popup_props\":\"\\u5f48\\u8df3\\u8a2d\\u5b9a\",\"general_props\":\"\\u4e00\\u822c\",\"advanced_tab\":\"\\u66f4\\u591a\",\"events_tab\":\"\\u7a0b\\u5f0f\\u4e8b\\u4ef6\",\"popup_tab\":\"\\u5f48\\u8df3\\u8996\\u7a97\",\"general_tab\":\"\\u4e00\\u822c\",list:\"\\u9023\\u7d50\\u6e05\\u55ae\",\"is_external\":\"\\u60a8\\u7684\\u7db2\\u5740\\u5c11\\u597d\\u50cf\\u52a0\\u5165\\u4e00\\u500b http:// \\u8a9e\\u6cd5\\uff0c\\u8981\\u5e6b\\u60a8\\u4fee\\u6b63\\u55ce\\uff1f\",\"is_email\":\"\\u60a8\\u7684 E-Mail \\u5c11\\u597d\\u50cf\\u52a0\\u5165\\u4e00\\u500b mailto: \\u8a9e\\u6cd5\\uff0c\\u8981\\u5e6b\\u60a8\\u4fee\\u6b63\\u55ce\\uff1f\",titlefield:\"\\u6a19\\u984c\",target:\"\\u958b\\u555f\\u65b9\\u5f0f\",url:\"\\u9023\\u7d50 URL\",title:\"\\u52a0\\u5165 / \\u7de8\\u8f2f\\u7db2\\u5740\\u9023\\u7d50\",\"link_list\":\"\\u9023\\u7d50\\u6e05\\u55ae\",rtl:\"\\u5f9e\\u53f3\\u908a\\u5230\\u5de6\\u908a\",ltr:\"\\u5f9e\\u5de6\\u908a\\u5230\\u53f3\\u908a\",accesskey:\"HTML \\u5feb\\u901f\\u9375\",tabindex:\"Tab \\u7d22\\u5f15\\u4f4d\\u7f6e (Tabindex)\",rev:\"\\u9023\\u7d50\\u8207\\u7db2\\u9801\\u7684\\u95dc\\u4fc2\",rel:\"\\u7db2\\u9801\\u8207\\u9023\\u7d50\\u7684\\u95dc\\u4fc2\",mime:\"\\u9023\\u7d50\\u7684 MIME \\u985e\\u578b\",encoding:\"\\u9023\\u7d50\\u4e2d\\u7684\\u5b57\\u5143\\u7de8\\u78bc\",langcode:\"\\u8a9e\\u7cfb\\u4ee3\\u865f\",\"target_langcode\":\"\\u9023\\u7d50\\u7684\\u8a9e\\u8a00\",width:\"Width\",height:\"Height\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/langs/zh_dlg.js",
    "content": "tinyMCE.addI18n('zh.advlink_dlg',{\"target_name\":\"\\u94fe\\u63a5\\u76ee\\u6807\\u540d\\u79f0\",classes:\"\\u7c7b\",style:\"\\u6837\\u5f0f\",id:\"ID\",\"popup_position\":\"\\u4f4d\\u7f6e(X/Y)\",langdir:\"\\u8bed\\u8a00\\u4e66\\u5199\\u65b9\\u5411\",\"popup_size\":\"\\u5927\\u5c0f\",\"popup_dependent\":\"\\u6d4f\\u89c8\\u5668\\u9650\\u5236(\\u4ec5\\u652f\\u6301Mozilla/Firefox)\",\"popup_resizable\":\"\\u53ef\\u8c03\\u6574\\u5927\\u5c0f\\u7684\\u5f39\\u51fa\\u7a97\\u53e3\",\"popup_location\":\"\\u663e\\u793a\\u7f51\\u5740\\u680f\",\"popup_menubar\":\"\\u663e\\u793a\\u83dc\\u5355\\u680f\",\"popup_toolbar\":\"\\u663e\\u793a\\u5de5\\u5177\\u680f\",\"popup_statusbar\":\"\\u663e\\u793a\\u72b6\\u6001\\u680f\",\"popup_scrollbars\":\"\\u663e\\u793a\\u6eda\\u52a8\\u680f\",\"popup_return\":\"\\u63d2\\u5165\\'return false\\'\",\"popup_name\":\"\\u7a97\\u53e3\\u540d\\u79f0\",\"popup_url\":\"\\u5f39\\u51fa\\u7a97\\u53e3\\u7684URL\",popup:\"JavaScript\\u5f39\\u51fa\\u7a97\\u53e3\",\"target_blank\":\"\\u5728\\u65b0\\u7a97\\u53e3\\u6253\\u5f00\\u94fe\\u63a5\",\"target_top\":\"\\u5728top\\u6846\\u67b6\\u6253\\u5f00\\u94fe\\u63a5 (\\u5957\\u7528\\u5728\\u6240\\u6709\\u6846\\u67b6)\",\"target_parent\":\"\\u5728\\u7236(\\u4e0a\\u5c42)\\u7a97\\u53e3/\\u6846\\u67b6\\u6253\\u5f00\\u94fe\\u63a5\",\"target_same\":\"\\u5728\\u5f53\\u524d\\u7a97\\u53e3\\u6253\\u5f00\\u94fe\\u63a5\",\"anchor_names\":\"\\u951a\\u70b9\",\"popup_opts\":\"\\u9009\\u9879\",\"advanced_props\":\"\\u9ad8\\u7ea7\\u5c5e\\u6027\",\"event_props\":\"Javascript\\u4e8b\\u4ef6\",\"popup_props\":\"\\u5f39\\u51fa\\u7a97\\u53e3\\u5c5e\\u6027\",\"general_props\":\"\\u666e\\u901a\\u5c5e\\u6027\",\"advanced_tab\":\"\\u9ad8\\u7ea7\",\"events_tab\":\"Javascript\\u4e8b\\u4ef6\",\"popup_tab\":\"\\u5f39\\u51fa\\u7a97\\u53e3\",\"general_tab\":\"\\u666e\\u901a\",list:\"\\u94fe\\u63a5\\u6e05\\u5355\",\"is_external\":\"\\u60a8\\u6240\\u8f93\\u5165\\u7684URL\\u4f3c\\u4e4e\\u4e3a\\u5916\\u90e8\\u94fe\\u63a5\\uff0c\\u662f\\u5426\\u9700\\u8981\\u52a0\\u4e0ahttp://\\u524d\\u7f00\\uff1f\",\"is_email\":\"\\u60a8\\u8f93\\u5165\\u7684URL\\u4f3c\\u4e4e\\u662f\\u7535\\u5b50\\u90ae\\u4ef6\\u4f4d\\u5740\\uff0c\\u662f\\u5426\\u9700\\u8981\\u52a0\\u4e0amailto:\\u524d\\u7f00\\uff1f\",titlefield:\"\\u94fe\\u63a5\\u6807\\u9898\",target:\"\\u94fe\\u63a5\\u76ee\\u6807\",url:\"URL\\u94fe\\u63a5\",title:\"\\u63d2\\u5165/\\u7f16\\u8f91\\u94fe\\u63a5\",\"link_list\":\"\\u94fe\\u63a5\\u6e05\\u5355\",rtl:\"\\u4ece\\u53f3\\u5230\\u5de6\",ltr:\"\\u4ece\\u5de6\\u5230\\u53f3\",accesskey:\"\\u5feb\\u6377\\u952e\",tabindex:\"Tab\\u7d22\\u5f15\",rev:\"\\u76ee\\u6807\\u5230\\u7f51\\u9875\\u7684\\u5173\\u7cfb\",rel:\"\\u7f51\\u9875\\u5230\\u76ee\\u6807\\u7684\\u5173\\u7cfb\",mime:\"\\u76ee\\u6807MIME\\u7c7b\\u578b\",encoding:\"\\u76ee\\u6807\\u5b57\\u7b26\\u7f16\\u7801\",langcode:\"\\u8bed\\u8a00\\u4ee3\\u7801\",\"target_langcode\":\"\\u76ee\\u6807\\u8bed\\u8a00\",width:\"\\u5bbd\",height:\"\\u9ad8\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlink/link.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#advlink_dlg.title}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/form_utils.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/validate.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/advlink.js\"></script>\r\n\t<link href=\"css/advlink.css\" rel=\"stylesheet\" type=\"text/css\" />\r\n</head>\r\n<body id=\"advlink\" style=\"display: none\" role=\"application\" onload=\"javascript:mcTabs.displayTab('general_tab','general_panel', true);\" aria-labelledby=\"app_label\">\r\n\t<span class=\"mceVoiceLabel\" id=\"app_label\" style=\"display:none;\">{#advlink_dlg.title}</span>\r\n\t<form onsubmit=\"insertAction();return false;\" action=\"#\">\r\n\t\t<div class=\"tabs\" role=\"presentation\">\r\n\t\t\t<ul>\r\n\t\t\t\t<li id=\"general_tab\" class=\"current\" aria-controls=\"general_panel\" ><span><a href=\"javascript:mcTabs.displayTab('general_tab','general_panel');\" onmousedown=\"return false;\">{#advlink_dlg.general_tab}</a></span></li>\r\n\t\t\t\t<li id=\"popup_tab\" aria-controls=\"popup_panel\" ><span><a href=\"javascript:mcTabs.displayTab('popup_tab','popup_panel');\" onmousedown=\"return false;\">{#advlink_dlg.popup_tab}</a></span></li>\r\n\t\t\t\t<li id=\"events_tab\" aria-controls=\"events_panel\"><span><a href=\"javascript:mcTabs.displayTab('events_tab','events_panel');\" onmousedown=\"return false;\">{#advlink_dlg.events_tab}</a></span></li>\r\n\t\t\t\t<li id=\"advanced_tab\" aria-controls=\"advanced_panel\"><span><a href=\"javascript:mcTabs.displayTab('advanced_tab','advanced_panel');\" onmousedown=\"return false;\">{#advlink_dlg.advanced_tab}</a></span></li>\r\n\t\t\t</ul>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"panel_wrapper\" role=\"presentation\">\r\n\t\t\t<div id=\"general_panel\" class=\"panel current\">\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#advlink_dlg.general_props}</legend>\r\n\r\n\t\t\t\t\t<table border=\"0\" cellpadding=\"4\" cellspacing=\"0\" role=\"presentation\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"nowrap\"><label id=\"hreflabel\" for=\"href\">{#advlink_dlg.url}</label></td>\r\n\t\t\t\t\t\t\t\t<td><table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<td><input id=\"href\" name=\"href\" type=\"text\" class=\"mceFocus\" value=\"\" onchange=\"selectByValue(this.form,'linklisthref',this.value);\" aria-required=\"true\" /></td>\r\n\t\t\t\t\t\t\t\t<td id=\"hrefbrowsercontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t</table></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr id=\"linklisthrefrow\">\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"linklisthref\">{#advlink_dlg.list}</label></td>\r\n\t\t\t\t\t\t\t<td colspan=\"2\" id=\"linklisthrefcontainer\"><select id=\"linklisthref\"><option value=\"\"></option></select></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr id=\"anchorlistrow\">\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"anchorlist\">{#advlink_dlg.anchor_names}</label></td>\r\n\t\t\t\t\t\t\t<td colspan=\"2\" id=\"anchorlistcontainer\"><select id=\"anchorlist\"><option value=\"\"></option></select></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label id=\"targetlistlabel\" for=\"targetlist\">{#advlink_dlg.target}</label></td>\r\n\t\t\t\t\t\t\t<td id=\"targetlistcontainer\"><select id=\"targetlist\"><option value=\"\"></option></select></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"nowrap\"><label id=\"titlelabel\" for=\"title\">{#advlink_dlg.titlefield}</label></td>\r\n\t\t\t\t\t\t\t<td><input id=\"title\" name=\"title\" type=\"text\" value=\"\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label id=\"classlabel\" for=\"classlist\">{#class_name}</label></td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t <select id=\"classlist\" name=\"classlist\" onchange=\"changeClass();\">\r\n\t\t\t\t\t\t\t\t\t<option value=\"\" selected=\"selected\">{#not_set}</option>\r\n\t\t\t\t\t\t\t\t </select>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div id=\"popup_panel\" class=\"panel\">\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#advlink_dlg.popup_props}</legend>\r\n\r\n\t\t\t\t\t<input type=\"checkbox\" id=\"ispopup\" name=\"ispopup\" class=\"radio\" onclick=\"setPopupControlsDisabled(!this.checked);buildOnClick();\" />\r\n\t\t\t\t\t<label id=\"ispopuplabel\" for=\"ispopup\">{#advlink_dlg.popup}</label>\r\n\r\n\t\t\t\t\t<table border=\"0\" cellpadding=\"0\" cellspacing=\"4\" role=\"presentation\" >\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"nowrap\"><label for=\"popupurl\">{#advlink_dlg.popup_url}</label>&nbsp;</td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"text\" name=\"popupurl\" id=\"popupurl\" value=\"\" onchange=\"buildOnClick();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"popupurlbrowsercontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"nowrap\"><label for=\"popupname\">{#advlink_dlg.popup_name}</label>&nbsp;</td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" name=\"popupname\" id=\"popupname\" value=\"\" onchange=\"buildOnClick();\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr role=\"group\" aria-labelledby=\"popup_size_label\">\r\n\t\t\t\t\t\t\t<td class=\"nowrap\"><label id=\"popup_size_label\">{#advlink_dlg.popup_size}</label>&nbsp;</td>\r\n\t\t\t\t\t\t\t<td class=\"nowrap\">\r\n\t\t\t\t\t\t\t\t<span style=\"display:none\" id=\"width_voiceLabel\">{#advlink_dlg.width}</span>\r\n\t\t\t\t\t\t\t\t<input type=\"text\" id=\"popupwidth\" name=\"popupwidth\" value=\"\" onchange=\"buildOnClick();\" aria-labelledby=\"width_voiceLabel\" /> x\r\n\t\t\t\t\t\t\t\t<span style=\"display:none\" id=\"height_voiceLabel\">{#advlink_dlg.height}</span>\r\n\t\t\t\t\t\t\t\t<input type=\"text\" id=\"popupheight\" name=\"popupheight\" value=\"\" onchange=\"buildOnClick();\" aria-labelledby=\"height_voiceLabel\" /> px\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr role=\"group\" aria-labelledby=\"popup_position_label center_hint\">\r\n\t\t\t\t\t\t\t<td class=\"nowrap\" id=\"labelleft\"><label id=\"popup_position_label\">{#advlink_dlg.popup_position}</label>&nbsp;</td>\r\n\t\t\t\t\t\t\t<td class=\"nowrap\">\r\n\t\t\t\t\t\t\t\t<span style=\"display:none\" id=\"x_voiceLabel\">X</span>\r\n\t\t\t\t\t\t\t\t<input type=\"text\" id=\"popupleft\" name=\"popupleft\" value=\"\" onchange=\"buildOnClick();\" aria-labelledby=\"x_voiceLabel\" /> /                                \r\n\t\t\t\t\t\t\t\t<span style=\"display:none\" id=\"y_voiceLabel\">Y</span>\r\n\t\t\t\t\t\t\t\t<input type=\"text\" id=\"popuptop\" name=\"popuptop\" value=\"\" onchange=\"buildOnClick();\" aria-labelledby=\"y_voiceLabel\" /> <span id=\"center_hint\">(c /c = center)</span>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\r\n\t\t\t\t\t<fieldset>\r\n\t\t\t\t\t\t<legend>{#advlink_dlg.popup_opts}</legend>\r\n\r\n\t\t\t\t\t\t<table border=\"0\" cellpadding=\"0\" cellspacing=\"4\" role=\"presentation\" >\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" id=\"popuplocation\" name=\"popuplocation\" class=\"checkbox\" onchange=\"buildOnClick();\" /></td>\r\n\t\t\t\t\t\t\t\t<td class=\"nowrap\"><label id=\"popuplocationlabel\" for=\"popuplocation\">{#advlink_dlg.popup_location}</label></td>\r\n\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" id=\"popupscrollbars\" name=\"popupscrollbars\" class=\"checkbox\" onchange=\"buildOnClick();\" /></td>\r\n\t\t\t\t\t\t\t\t<td class=\"nowrap\"><label id=\"popupscrollbarslabel\" for=\"popupscrollbars\">{#advlink_dlg.popup_scrollbars}</label></td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" id=\"popupmenubar\" name=\"popupmenubar\" class=\"checkbox\" onchange=\"buildOnClick();\" /></td>\r\n\t\t\t\t\t\t\t\t<td class=\"nowrap\"><label id=\"popupmenubarlabel\" for=\"popupmenubar\">{#advlink_dlg.popup_menubar}</label></td>\r\n\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" id=\"popupresizable\" name=\"popupresizable\" class=\"checkbox\" onchange=\"buildOnClick();\" /></td>\r\n\t\t\t\t\t\t\t\t<td class=\"nowrap\"><label id=\"popupresizablelabel\" for=\"popupresizable\">{#advlink_dlg.popup_resizable}</label></td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" id=\"popuptoolbar\" name=\"popuptoolbar\" class=\"checkbox\" onchange=\"buildOnClick();\" /></td>\r\n\t\t\t\t\t\t\t\t<td class=\"nowrap\"><label id=\"popuptoolbarlabel\" for=\"popuptoolbar\">{#advlink_dlg.popup_toolbar}</label></td>\r\n\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" id=\"popupdependent\" name=\"popupdependent\" class=\"checkbox\" onchange=\"buildOnClick();\" /></td>\r\n\t\t\t\t\t\t\t\t<td class=\"nowrap\"><label id=\"popupdependentlabel\" for=\"popupdependent\">{#advlink_dlg.popup_dependent}</label></td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" id=\"popupstatus\" name=\"popupstatus\" class=\"checkbox\" onchange=\"buildOnClick();\" /></td>\r\n\t\t\t\t\t\t\t\t<td class=\"nowrap\"><label id=\"popupstatuslabel\" for=\"popupstatus\">{#advlink_dlg.popup_statusbar}</label></td>\r\n\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" id=\"popupreturn\" name=\"popupreturn\" class=\"checkbox\" onchange=\"buildOnClick();\" checked=\"checked\" /></td>\r\n\t\t\t\t\t\t\t\t<td class=\"nowrap\"><label id=\"popupreturnlabel\" for=\"popupreturn\">{#advlink_dlg.popup_return}</label></td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t</table>\r\n\t\t\t\t\t</fieldset>\r\n\t\t\t\t</fieldset>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div id=\"advanced_panel\" class=\"panel\">\r\n\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#advlink_dlg.advanced_props}</legend>\r\n\r\n\t\t\t\t\t<table border=\"0\" cellpadding=\"0\" cellspacing=\"4\" role=\"presentation\" >\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"idlabel\" for=\"id\">{#advlink_dlg.id}</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"id\" name=\"id\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label id=\"stylelabel\" for=\"style\">{#advlink_dlg.style}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"style\" name=\"style\" value=\"\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label id=\"classeslabel\" for=\"classes\">{#advlink_dlg.classes}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"classes\" name=\"classes\" value=\"\" onchange=\"selectByValue(this.form,'classlist',this.value,true);\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label id=\"targetlabel\" for=\"target\">{#advlink_dlg.target_name}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"target\" name=\"target\" value=\"\" onchange=\"selectByValue(this.form,'targetlist',this.value,true);\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"dirlabel\" for=\"dir\">{#advlink_dlg.langdir}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"dir\" name=\"dir\"> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"ltr\">{#advlink_dlg.ltr}</option> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"rtl\">{#advlink_dlg.rtl}</option> \r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label id=\"hreflanglabel\" for=\"hreflang\">{#advlink_dlg.target_langcode}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"hreflang\" name=\"hreflang\" value=\"\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"langlabel\" for=\"lang\">{#advlink_dlg.langcode}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<input id=\"lang\" name=\"lang\" type=\"text\" value=\"\" />\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label id=\"charsetlabel\" for=\"charset\">{#advlink_dlg.encoding}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"charset\" name=\"charset\" value=\"\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label id=\"typelabel\" for=\"type\">{#advlink_dlg.mime}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"type\" name=\"type\" value=\"\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label id=\"rellabel\" for=\"rel\">{#advlink_dlg.rel}</label></td>\r\n\t\t\t\t\t\t\t<td><select id=\"rel\" name=\"rel\"> \r\n\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"lightbox\">Lightbox</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"alternate\">Alternate</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"designates\">Designates</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"stylesheet\">Stylesheet</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"start\">Start</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"next\">Next</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"prev\">Prev</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"contents\">Contents</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"index\">Index</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"glossary\">Glossary</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"copyright\">Copyright</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"chapter\">Chapter</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"subsection\">Subsection</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"appendix\">Appendix</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"help\">Help</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"bookmark\">Bookmark</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"nofollow\">No Follow</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"tag\">Tag</option>\r\n\t\t\t\t\t\t\t\t</select> \r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label id=\"revlabel\" for=\"rev\">{#advlink_dlg.rev}</label></td>\r\n\t\t\t\t\t\t\t<td><select id=\"rev\" name=\"rev\"> \r\n\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"alternate\">Alternate</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"designates\">Designates</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"stylesheet\">Stylesheet</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"start\">Start</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"next\">Next</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"prev\">Prev</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"contents\">Contents</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"index\">Index</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"glossary\">Glossary</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"copyright\">Copyright</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"chapter\">Chapter</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"subsection\">Subsection</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"appendix\">Appendix</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"help\">Help</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"bookmark\">Bookmark</option> \r\n\t\t\t\t\t\t\t\t</select> \r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label id=\"tabindexlabel\" for=\"tabindex\">{#advlink_dlg.tabindex}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"tabindex\" name=\"tabindex\" value=\"\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label id=\"accesskeylabel\" for=\"accesskey\">{#advlink_dlg.accesskey}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"accesskey\" name=\"accesskey\" value=\"\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div id=\"events_panel\" class=\"panel\">\r\n\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#advlink_dlg.event_props}</legend>\r\n\r\n\t\t\t\t\t<table border=\"0\" cellpadding=\"0\" cellspacing=\"4\" role=\"presentation\" >\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"onfocus\">onfocus</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"onfocus\" name=\"onfocus\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"onblur\">onblur</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"onblur\" name=\"onblur\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"onclick\">onclick</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"onclick\" name=\"onclick\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"ondblclick\">ondblclick</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"ondblclick\" name=\"ondblclick\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"onmousedown\">onmousedown</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"onmousedown\" name=\"onmousedown\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"onmouseup\">onmouseup</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"onmouseup\" name=\"onmouseup\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"onmouseover\">onmouseover</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"onmouseover\" name=\"onmouseover\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"onmousemove\">onmousemove</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"onmousemove\" name=\"onmousemove\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"onmouseout\">onmouseout</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"onmouseout\" name=\"onmouseout\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"onkeypress\">onkeypress</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"onkeypress\" name=\"onkeypress\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"onkeydown\">onkeydown</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"onkeydown\" name=\"onkeydown\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"onkeyup\">onkeyup</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"onkeyup\" name=\"onkeyup\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"mceActionPanel\">\r\n\t\t\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#insert}\" />\r\n\t\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t\t</div>\r\n\t</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlist/editor_plugin.js",
    "content": "(function(){var a=tinymce.each;tinymce.create(\"tinymce.plugins.AdvListPlugin\",{init:function(b,c){var d=this;d.editor=b;function e(g){var f=[];a(g.split(/,/),function(h){f.push({title:\"advlist.\"+(h==\"default\"?\"def\":h.replace(/-/g,\"_\")),styles:{listStyleType:h==\"default\"?\"\":h}})});return f}d.numlist=b.getParam(\"advlist_number_styles\")||e(\"default,lower-alpha,lower-greek,lower-roman,upper-alpha,upper-roman\");d.bullist=b.getParam(\"advlist_bullet_styles\")||e(\"default,circle,disc,square\");if(tinymce.isIE&&/MSIE [2-7]/.test(navigator.userAgent)){d.isIE7=true}},createControl:function(d,b){var f=this,e,i,g=f.editor;if(d==\"numlist\"||d==\"bullist\"){if(f[d][0].title==\"advlist.def\"){i=f[d][0]}function c(j,l){var k=true;a(l.styles,function(n,m){if(g.dom.getStyle(j,m)!=n){k=false;return false}});return k}function h(){var k,l=g.dom,j=g.selection;k=l.getParent(j.getNode(),\"ol,ul\");if(!k||k.nodeName==(d==\"bullist\"?\"OL\":\"UL\")||c(k,i)){g.execCommand(d==\"bullist\"?\"InsertUnorderedList\":\"InsertOrderedList\")}if(i){k=l.getParent(j.getNode(),\"ol,ul\");if(k){l.setStyles(k,i.styles);k.removeAttribute(\"data-mce-style\")}}g.focus()}e=b.createSplitButton(d,{title:\"advanced.\"+d+\"_desc\",\"class\":\"mce_\"+d,onclick:function(){h()}});e.onRenderMenu.add(function(j,k){k.onHideMenu.add(function(){if(f.bookmark){g.selection.moveToBookmark(f.bookmark);f.bookmark=0}});k.onShowMenu.add(function(){var n=g.dom,m=n.getParent(g.selection.getNode(),\"ol,ul\"),l;if(m||i){l=f[d];a(k.items,function(o){var p=true;o.setSelected(0);if(m&&!o.isDisabled()){a(l,function(q){if(q.id==o.id){if(!c(m,q)){p=false;return false}}});if(p){o.setSelected(1)}}});if(!m){k.items[i.id].setSelected(1)}}g.focus();if(tinymce.isIE){f.bookmark=g.selection.getBookmark(1)}});k.add({id:g.dom.uniqueId(),title:\"advlist.types\",\"class\":\"mceMenuItemTitle\",titleItem:true}).setDisabled(1);a(f[d],function(l){if(f.isIE7&&l.styles.listStyleType==\"lower-greek\"){return}l.id=g.dom.uniqueId();k.add({id:l.id,title:l.title,onclick:function(){i=l;h()}})})});return e}},getInfo:function(){return{longname:\"Advanced lists\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlist\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}}});tinymce.PluginManager.add(\"advlist\",tinymce.plugins.AdvListPlugin)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/advlist/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\tvar each = tinymce.each;\r\n\r\n\ttinymce.create('tinymce.plugins.AdvListPlugin', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tt.editor = ed;\r\n\r\n\t\t\tfunction buildFormats(str) {\r\n\t\t\t\tvar formats = [];\r\n\r\n\t\t\t\teach(str.split(/,/), function(type) {\r\n\t\t\t\t\tformats.push({\r\n\t\t\t\t\t\ttitle : 'advlist.' + (type == 'default' ? 'def' : type.replace(/-/g, '_')),\r\n\t\t\t\t\t\tstyles : {\r\n\t\t\t\t\t\t\tlistStyleType : type == 'default' ? '' : type\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\r\n\t\t\t\treturn formats;\r\n\t\t\t};\r\n\r\n\t\t\t// Setup number formats from config or default\r\n\t\t\tt.numlist = ed.getParam(\"advlist_number_styles\") || buildFormats(\"default,lower-alpha,lower-greek,lower-roman,upper-alpha,upper-roman\");\r\n\t\t\tt.bullist = ed.getParam(\"advlist_bullet_styles\") || buildFormats(\"default,circle,disc,square\");\r\n\r\n\t\t\tif (tinymce.isIE && /MSIE [2-7]/.test(navigator.userAgent))\r\n\t\t\t\tt.isIE7 = true;\r\n\t\t},\r\n\r\n\t\tcreateControl: function(name, cm) {\r\n\t\t\tvar t = this, btn, format, editor = t.editor;\r\n\r\n\t\t\tif (name == 'numlist' || name == 'bullist') {\r\n\t\t\t\t// Default to first item if it's a default item\r\n\t\t\t\tif (t[name][0].title == 'advlist.def')\r\n\t\t\t\t\tformat = t[name][0];\r\n\r\n\t\t\t\tfunction hasFormat(node, format) {\r\n\t\t\t\t\tvar state = true;\r\n\r\n\t\t\t\t\teach(format.styles, function(value, name) {\r\n\t\t\t\t\t\t// Format doesn't match\r\n\t\t\t\t\t\tif (editor.dom.getStyle(node, name) != value) {\r\n\t\t\t\t\t\t\tstate = false;\r\n\t\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\treturn state;\r\n\t\t\t\t};\r\n\r\n\t\t\t\tfunction applyListFormat() {\r\n\t\t\t\t\tvar list, dom = editor.dom, sel = editor.selection;\r\n\r\n\t\t\t\t\t// Check for existing list element\r\n\t\t\t\t\tlist = dom.getParent(sel.getNode(), 'ol,ul');\r\n\r\n\t\t\t\t\t// Switch/add list type if needed\r\n\t\t\t\t\tif (!list || list.nodeName == (name == 'bullist' ? 'OL' : 'UL') || hasFormat(list, format))\r\n\t\t\t\t\t\teditor.execCommand(name == 'bullist' ? 'InsertUnorderedList' : 'InsertOrderedList');\r\n\r\n\t\t\t\t\t// Append styles to new list element\r\n\t\t\t\t\tif (format) {\r\n\t\t\t\t\t\tlist = dom.getParent(sel.getNode(), 'ol,ul');\r\n\t\t\t\t\t\tif (list) {\r\n\t\t\t\t\t\t\tdom.setStyles(list, format.styles);\r\n\t\t\t\t\t\t\tlist.removeAttribute('data-mce-style');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\teditor.focus();\r\n\t\t\t\t};\r\n\r\n\t\t\t\tbtn = cm.createSplitButton(name, {\r\n\t\t\t\t\ttitle : 'advanced.' + name + '_desc',\r\n\t\t\t\t\t'class' : 'mce_' + name,\r\n\t\t\t\t\tonclick : function() {\r\n\t\t\t\t\t\tapplyListFormat();\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\tbtn.onRenderMenu.add(function(btn, menu) {\r\n\t\t\t\t\tmenu.onHideMenu.add(function() {\r\n\t\t\t\t\t\tif (t.bookmark) {\r\n\t\t\t\t\t\t\teditor.selection.moveToBookmark(t.bookmark);\r\n\t\t\t\t\t\t\tt.bookmark = 0;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tmenu.onShowMenu.add(function() {\r\n\t\t\t\t\t\tvar dom = editor.dom, list = dom.getParent(editor.selection.getNode(), 'ol,ul'), fmtList;\r\n\r\n\t\t\t\t\t\tif (list || format) {\r\n\t\t\t\t\t\t\tfmtList = t[name];\r\n\r\n\t\t\t\t\t\t\t// Unselect existing items\r\n\t\t\t\t\t\t\teach(menu.items, function(item) {\r\n\t\t\t\t\t\t\t\tvar state = true;\r\n\r\n\t\t\t\t\t\t\t\titem.setSelected(0);\r\n\r\n\t\t\t\t\t\t\t\tif (list && !item.isDisabled()) {\r\n\t\t\t\t\t\t\t\t\teach(fmtList, function(fmt) {\r\n\t\t\t\t\t\t\t\t\t\tif (fmt.id == item.id) {\r\n\t\t\t\t\t\t\t\t\t\t\tif (!hasFormat(list, fmt)) {\r\n\t\t\t\t\t\t\t\t\t\t\t\tstate = false;\r\n\t\t\t\t\t\t\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\t\t\tif (state)\r\n\t\t\t\t\t\t\t\t\t\titem.setSelected(1);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\t// Select the current format\r\n\t\t\t\t\t\t\tif (!list)\r\n\t\t\t\t\t\t\t\tmenu.items[format.id].setSelected(1);\r\n\t\t\t\t\t\t}\r\n\t\r\n\t\t\t\t\t\teditor.focus();\r\n\r\n\t\t\t\t\t\t// IE looses it's selection so store it away and restore it later\r\n\t\t\t\t\t\tif (tinymce.isIE) {\r\n\t\t\t\t\t\t\tt.bookmark = editor.selection.getBookmark(1);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tmenu.add({id : editor.dom.uniqueId(), title : 'advlist.types', 'class' : 'mceMenuItemTitle', titleItem: true}).setDisabled(1);\r\n\r\n\t\t\t\t\teach(t[name], function(item) {\r\n\t\t\t\t\t\t// IE<8 doesn't support lower-greek, skip it\r\n\t\t\t\t\t\tif (t.isIE7 && item.styles.listStyleType == 'lower-greek')\r\n\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\titem.id = editor.dom.uniqueId();\r\n\r\n\t\t\t\t\t\tmenu.add({id : item.id, title : item.title, onclick : function() {\r\n\t\t\t\t\t\t\tformat = item;\r\n\t\t\t\t\t\t\tapplyListFormat();\r\n\t\t\t\t\t\t}});\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\r\n\t\t\t\treturn btn;\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Advanced lists',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlist',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('advlist', tinymce.plugins.AdvListPlugin);\r\n})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/autolink/editor_plugin.js",
    "content": "(function(){tinymce.create(\"tinymce.plugins.AutolinkPlugin\",{init:function(a,b){var c=this;if(tinyMCE.isIE){return}a.onKeyDown.add(function(d,f){if(f.keyCode==13){return c.handleEnter(d)}});a.onKeyPress.add(function(d,f){if(f.which==41){return c.handleEclipse(d)}});a.onKeyUp.add(function(d,f){if(f.keyCode==32){return c.handleSpacebar(d)}})},handleEclipse:function(a){this.parseCurrentLine(a,-1,\"(\",true)},handleSpacebar:function(a){this.parseCurrentLine(a,0,\"\",true)},handleEnter:function(a){this.parseCurrentLine(a,-1,\"\",false)},parseCurrentLine:function(i,d,b,g){var a,f,c,n,k,m,h,e,j;a=i.selection.getRng().cloneRange();if(a.startOffset<5){e=a.endContainer.previousSibling;if(e==null){if(a.endContainer.firstChild==null||a.endContainer.firstChild.nextSibling==null){return}e=a.endContainer.firstChild.nextSibling}j=e.length;a.setStart(e,j);a.setEnd(e,j);if(a.endOffset<5){return}f=a.endOffset;n=e}else{n=a.endContainer;if(n.nodeType!=3&&n.firstChild){while(n.nodeType!=3&&n.firstChild){n=n.firstChild}a.setStart(n,0);a.setEnd(n,n.nodeValue.length)}if(a.endOffset==1){f=2}else{f=a.endOffset-1-d}}c=f;do{a.setStart(n,f-2);a.setEnd(n,f-1);f-=1}while(a.toString()!=\" \"&&a.toString()!=\"\"&&a.toString().charCodeAt(0)!=160&&(f-2)>=0&&a.toString()!=b);if(a.toString()==b||a.toString().charCodeAt(0)==160){a.setStart(n,f);a.setEnd(n,c);f+=1}else{if(a.startOffset==0){a.setStart(n,0);a.setEnd(n,c)}else{a.setStart(n,f);a.setEnd(n,c)}}m=a.toString();h=m.match(/^(https?:\\/\\/|ssh:\\/\\/|ftp:\\/\\/|file:\\/|www\\.)(.+)$/i);if(h){if(h[1]==\"www.\"){h[1]=\"http://www.\"}k=i.selection.getBookmark();i.selection.setRng(a);tinyMCE.execCommand(\"createlink\",false,h[1]+h[2]);i.selection.moveToBookmark(k);if(tinyMCE.isWebKit){i.selection.collapse(false);var l=Math.min(n.length,c+1);a.setStart(n,l);a.setEnd(n,l);i.selection.setRng(a)}}},getInfo:function(){return{longname:\"Autolink\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autolink\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}}});tinymce.PluginManager.add(\"autolink\",tinymce.plugins.AutolinkPlugin)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/autolink/editor_plugin_src.js",
    "content": "/**\n * editor_plugin_src.js\n *\n * Copyright 2011, Moxiecode Systems AB\n * Released under LGPL License.\n *\n * License: http://tinymce.moxiecode.com/license\n * Contributing: http://tinymce.moxiecode.com/contributing\n */\n\n(function() {\n\ttinymce.create('tinymce.plugins.AutolinkPlugin', {\n\t/**\n\t* Initializes the plugin, this will be executed after the plugin has been created.\n\t* This call is done before the editor instance has finished it's initialization so use the onInit event\n\t* of the editor instance to intercept that event.\n\t*\n\t* @param {tinymce.Editor} ed Editor instance that the plugin is initialized in.\n\t* @param {string} url Absolute URL to where the plugin is located.\n\t*/\n\n\tinit : function(ed, url) {\n\t\tvar t = this;\n\n\t\t// Internet Explorer has built-in automatic linking\n\t\tif (tinyMCE.isIE)\n\t\t\treturn;\n\n\t\t// Add a key down handler\n\t\ted.onKeyDown.add(function(ed, e) {\n\t\t\tif (e.keyCode == 13)\n\t\t\t\treturn t.handleEnter(ed);\n\t\t\t});\n\n\t\ted.onKeyPress.add(function(ed, e) {\n\t\t\tif (e.which == 41)\n\t\t\t\treturn t.handleEclipse(ed);\n\t\t});\n\n\t\t// Add a key up handler\n\t\ted.onKeyUp.add(function(ed, e) {\n\t\t\tif (e.keyCode == 32)\n\t\t\t\treturn t.handleSpacebar(ed);\n\t\t\t});\n\t       },\n\n\t\thandleEclipse : function(ed) {\n\t\t\tthis.parseCurrentLine(ed, -1, '(', true);\n\t\t},\n\n\t\thandleSpacebar : function(ed) {\n\t\t\t this.parseCurrentLine(ed, 0, '', true);\n\t\t },\n\n\t\thandleEnter : function(ed) {\n\t\t\tthis.parseCurrentLine(ed, -1, '', false);\n\t\t},\n\n\t\tparseCurrentLine : function(ed, end_offset, delimiter, goback) {\n\t\t\tvar r, end, start, endContainer, bookmark, text, matches, prev, len;\n\n\t\t\t// We need at least five characters to form a URL,\n\t\t\t// hence, at minimum, five characters from the beginning of the line.\n\t\t\tr = ed.selection.getRng().cloneRange();\n\t\t\tif (r.startOffset < 5) {\n\t\t\t\t// During testing, the caret is placed inbetween two text nodes. \n\t\t\t\t// The previous text node contains the URL.\n\t\t\t\tprev = r.endContainer.previousSibling;\n\t\t\t\tif (prev == null) {\n\t\t\t\t\tif (r.endContainer.firstChild == null || r.endContainer.firstChild.nextSibling == null)\n\t\t\t\t\t\treturn;\n\n\t\t\t\t\tprev = r.endContainer.firstChild.nextSibling;\n\t\t\t\t}\n\t\t\t\tlen = prev.length;\n\t\t\t\tr.setStart(prev, len);\n\t\t\t\tr.setEnd(prev, len);\n\n\t\t\t\tif (r.endOffset < 5)\n\t\t\t\t\treturn;\n\n\t\t\t\tend = r.endOffset;\n\t\t\t\tendContainer = prev;\n\t\t\t} else {\n\t\t\t\tendContainer = r.endContainer;\n\n\t\t\t\t// Get a text node\n\t\t\t\tif (endContainer.nodeType != 3 && endContainer.firstChild) {\n\t\t\t\t\twhile (endContainer.nodeType != 3 && endContainer.firstChild)\n\t\t\t\t\t\tendContainer = endContainer.firstChild;\n\n\t\t\t\t\tr.setStart(endContainer, 0);\n\t\t\t\t\tr.setEnd(endContainer, endContainer.nodeValue.length);\n\t\t\t\t}\n\n\t\t\t\tif (r.endOffset == 1)\n\t\t\t\t\tend = 2;\n\t\t\t\telse\n\t\t\t\t\tend = r.endOffset - 1 - end_offset;\n\t\t\t}\n\n\t\t\tstart = end;\n\n\t\t\tdo\n\t\t\t{\n\t\t\t\t// Move the selection one character backwards.\n\t\t\t\tr.setStart(endContainer, end - 2);\n\t\t\t\tr.setEnd(endContainer, end - 1);\n\t\t\t\tend -= 1;\n\n\t\t\t\t// Loop until one of the following is found: a blank space, &nbsp;, delimeter, (end-2) >= 0\n\t\t\t} while (r.toString() != ' ' && r.toString() != '' && r.toString().charCodeAt(0) != 160 && (end -2) >= 0 && r.toString() != delimiter);\n\n\t\t\tif (r.toString() == delimiter || r.toString().charCodeAt(0) == 160) {\n\t\t\t\tr.setStart(endContainer, end);\n\t\t\t\tr.setEnd(endContainer, start);\n\t\t\t\tend += 1;\n\t\t\t} else if (r.startOffset == 0) {\n\t\t\t\tr.setStart(endContainer, 0);\n\t\t\t\tr.setEnd(endContainer, start);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tr.setStart(endContainer, end);\n\t\t\t\tr.setEnd(endContainer, start);\n\t\t\t}\n\n\t\t\ttext = r.toString();\n\t\t\tmatches = text.match(/^(https?:\\/\\/|ssh:\\/\\/|ftp:\\/\\/|file:\\/|www\\.)(.+)$/i);\n\n\t\t\tif (matches) {\n\t\t\t\tif (matches[1] == 'www.') {\n\t\t\t\t\tmatches[1] = 'http://www.';\n\t\t\t\t}\n\n\t\t\t\tbookmark = ed.selection.getBookmark();\n\n\t\t\t\ted.selection.setRng(r);\n\t\t\t\ttinyMCE.execCommand('createlink',false, matches[1] + matches[2]);\n\t\t\t\ted.selection.moveToBookmark(bookmark);\n\n\t\t\t\t// TODO: Determine if this is still needed.\n\t\t\t\tif (tinyMCE.isWebKit) {\n\t\t\t\t\t// move the caret to its original position\n\t\t\t\t\ted.selection.collapse(false);\n\t\t\t\t\tvar max = Math.min(endContainer.length, start + 1);\n\t\t\t\t\tr.setStart(endContainer, max);\n\t\t\t\t\tr.setEnd(endContainer, max);\n\t\t\t\t\ted.selection.setRng(r);\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t* Returns information about the plugin as a name/value array.\n\t\t* The current keys are longname, author, authorurl, infourl and version.\n\t\t*\n\t\t* @return {Object} Name/value array containing information about the plugin.\n\t\t*/\n\t\tgetInfo : function() {\n\t\t\treturn {\n\t\t\t\tlongname : 'Autolink',\n\t\t\t\tauthor : 'Moxiecode Systems AB',\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autolink',\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\n\t\t\t};\n\t\t}\n\t});\n\n\t// Register plugin\n\ttinymce.PluginManager.add('autolink', tinymce.plugins.AutolinkPlugin);\n})();\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/autoresize/editor_plugin.js",
    "content": "(function(){tinymce.create(\"tinymce.plugins.AutoResizePlugin\",{init:function(a,c){var d=this,e=0;if(a.getParam(\"fullscreen_is_enabled\")){return}function b(){var i=a.getDoc(),f=i.body,k=i.documentElement,h=tinymce.DOM,j=d.autoresize_min_height,g;g=tinymce.isIE?f.scrollHeight:i.body.offsetHeight;if(g>d.autoresize_min_height){j=g}if(d.autoresize_max_height&&g>d.autoresize_max_height){j=d.autoresize_max_height;a.getBody().style.overflowY=\"auto\"}else{a.getBody().style.overflowY=\"hidden\"}if(j!==e){h.setStyle(h.get(a.id+\"_ifr\"),\"height\",j+\"px\");e=j}if(d.throbbing){a.setProgressState(false);a.setProgressState(true)}}d.editor=a;d.autoresize_min_height=parseInt(a.getParam(\"autoresize_min_height\",a.getElement().offsetHeight));d.autoresize_max_height=parseInt(a.getParam(\"autoresize_max_height\",0));a.onInit.add(function(f){f.dom.setStyle(f.getBody(),\"paddingBottom\",f.getParam(\"autoresize_bottom_margin\",50)+\"px\")});a.onChange.add(b);a.onSetContent.add(b);a.onPaste.add(b);a.onKeyUp.add(b);a.onPostRender.add(b);if(a.getParam(\"autoresize_on_init\",true)){a.onInit.add(function(g,f){g.setProgressState(true);d.throbbing=true;g.getBody().style.overflowY=\"hidden\"});a.onLoadContent.add(function(g,f){b();setTimeout(function(){b();g.setProgressState(false);d.throbbing=false},1250)})}a.addCommand(\"mceAutoResize\",b)},getInfo:function(){return{longname:\"Auto Resize\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autoresize\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}}});tinymce.PluginManager.add(\"autoresize\",tinymce.plugins.AutoResizePlugin)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/autoresize/editor_plugin_src.js",
    "content": "/**\n * editor_plugin_src.js\n *\n * Copyright 2009, Moxiecode Systems AB\n * Released under LGPL License.\n *\n * License: http://tinymce.moxiecode.com/license\n * Contributing: http://tinymce.moxiecode.com/contributing\n */\n\n(function() {\n\t/**\n\t * Auto Resize\n\t * \n\t * This plugin automatically resizes the content area to fit its content height.\n\t * It will retain a minimum height, which is the height of the content area when\n\t * it's initialized.\n\t */\n\ttinymce.create('tinymce.plugins.AutoResizePlugin', {\n\t\t/**\n\t\t * Initializes the plugin, this will be executed after the plugin has been created.\n\t\t * This call is done before the editor instance has finished it's initialization so use the onInit event\n\t\t * of the editor instance to intercept that event.\n\t\t *\n\t\t * @param {tinymce.Editor} ed Editor instance that the plugin is initialized in.\n\t\t * @param {string} url Absolute URL to where the plugin is located.\n\t\t */\n\t\tinit : function(ed, url) {\n\t\t\tvar t = this, oldSize = 0;\n\n\t\t\tif (ed.getParam('fullscreen_is_enabled'))\n\t\t\t\treturn;\n\n\t\t\t/**\n\t\t\t * This method gets executed each time the editor needs to resize.\n\t\t\t */\n\t\t\tfunction resize() {\n\t\t\t\tvar d = ed.getDoc(), b = d.body, de = d.documentElement, DOM = tinymce.DOM, resizeHeight = t.autoresize_min_height, myHeight;\n\n\t\t\t\t// Get height differently depending on the browser used\n\t\t\t\tmyHeight = tinymce.isIE ? b.scrollHeight : d.body.offsetHeight;\n\n\t\t\t\t// Don't make it smaller than the minimum height\n\t\t\t\tif (myHeight > t.autoresize_min_height)\n\t\t\t\t\tresizeHeight = myHeight;\n\n\t\t\t\t// If a maximum height has been defined don't exceed this height\n\t\t\t\tif (t.autoresize_max_height && myHeight > t.autoresize_max_height) {\n\t\t\t\t\tresizeHeight = t.autoresize_max_height;\n\t\t\t\t\ted.getBody().style.overflowY = \"auto\";\n\t\t\t\t} else\n\t\t\t\t\ted.getBody().style.overflowY = \"hidden\";\n\n\t\t\t\t// Resize content element\n\t\t\t\tif (resizeHeight !== oldSize) {\n\t\t\t\t\tDOM.setStyle(DOM.get(ed.id + '_ifr'), 'height', resizeHeight + 'px');\n\t\t\t\t\toldSize = resizeHeight;\n\t\t\t\t}\n\n\t\t\t\t// if we're throbbing, we'll re-throb to match the new size\n\t\t\t\tif (t.throbbing) {\n\t\t\t\t\ted.setProgressState(false);\n\t\t\t\t\ted.setProgressState(true);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tt.editor = ed;\n\n\t\t\t// Define minimum height\n\t\t\tt.autoresize_min_height = parseInt( ed.getParam('autoresize_min_height', ed.getElement().offsetHeight) );\n\n\t\t\t// Define maximum height\t\n\t\t\tt.autoresize_max_height = parseInt( ed.getParam('autoresize_max_height', 0) );\n\n\t\t\t// Add padding at the bottom for better UX\n\t\t\ted.onInit.add(function(ed){\n\t\t\t\ted.dom.setStyle(ed.getBody(), 'paddingBottom', ed.getParam('autoresize_bottom_margin', 50) + 'px');\n\t\t\t});\n\n\t\t\t// Add appropriate listeners for resizing content area\n\t\t\ted.onChange.add(resize);\n\t\t\ted.onSetContent.add(resize);\n\t\t\ted.onPaste.add(resize);\n\t\t\ted.onKeyUp.add(resize);\n\t\t\ted.onPostRender.add(resize);\n\n\t\t\tif (ed.getParam('autoresize_on_init', true)) {\n\t\t\t\t// Things to do when the editor is ready\n\t\t\t\ted.onInit.add(function(ed, l) {\n\t\t\t\t\t// Show throbber until content area is resized properly\n\t\t\t\t\ted.setProgressState(true);\n\t\t\t\t\tt.throbbing = true;\n\n\t\t\t\t\t// Hide scrollbars\n\t\t\t\t\ted.getBody().style.overflowY = \"hidden\";\n\t\t\t\t});\n\n\t\t\t\ted.onLoadContent.add(function(ed, l) {\n\t\t\t\t\tresize();\n\n\t\t\t\t\t// Because the content area resizes when its content CSS loads,\n\t\t\t\t\t// and we can't easily add a listener to its onload event,\n\t\t\t\t\t// we'll just trigger a resize after a short loading period\n\t\t\t\t\tsetTimeout(function() {\n\t\t\t\t\t\tresize();\n\n\t\t\t\t\t\t// Disable throbber\n\t\t\t\t\t\ted.setProgressState(false);\n\t\t\t\t\t\tt.throbbing = false;\n\t\t\t\t\t}, 1250);\n\t\t\t\t});\n\t\t\t}\n\n\t\t\t// Register the command so that it can be invoked by using tinyMCE.activeEditor.execCommand('mceExample');\n\t\t\ted.addCommand('mceAutoResize', resize);\n\t\t},\n\n\t\t/**\n\t\t * Returns information about the plugin as a name/value array.\n\t\t * The current keys are longname, author, authorurl, infourl and version.\n\t\t *\n\t\t * @return {Object} Name/value array containing information about the plugin.\n\t\t */\n\t\tgetInfo : function() {\n\t\t\treturn {\n\t\t\t\tlongname : 'Auto Resize',\n\t\t\t\tauthor : 'Moxiecode Systems AB',\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autoresize',\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\n\t\t\t};\n\t\t}\n\t});\n\n\t// Register plugin\n\ttinymce.PluginManager.add('autoresize', tinymce.plugins.AutoResizePlugin);\n})();\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/autosave/editor_plugin.js",
    "content": "(function(e){var c=\"autosave\",g=\"restoredraft\",b=true,f,d,a=e.util.Dispatcher;e.create(\"tinymce.plugins.AutoSave\",{init:function(i,j){var h=this,l=i.settings;h.editor=i;function k(n){var m={s:1000,m:60000};n=/^(\\d+)([ms]?)$/.exec(\"\"+n);return(n[2]?m[n[2]]:1)*parseInt(n)}e.each({ask_before_unload:b,interval:\"30s\",retention:\"20m\",minlength:50},function(n,m){m=c+\"_\"+m;if(l[m]===f){l[m]=n}});l.autosave_interval=k(l.autosave_interval);l.autosave_retention=k(l.autosave_retention);i.addButton(g,{title:c+\".restore_content\",onclick:function(){if(i.getContent({draft:true}).replace(/\\s|&nbsp;|<\\/?p[^>]*>|<br[^>]*>/gi,\"\").length>0){i.windowManager.confirm(c+\".warning_message\",function(m){if(m){h.restoreDraft()}})}else{h.restoreDraft()}}});i.onNodeChange.add(function(){var m=i.controlManager;if(m.get(g)){m.setDisabled(g,!h.hasDraft())}});i.onInit.add(function(){if(i.controlManager.get(g)){h.setupStorage(i);setInterval(function(){h.storeDraft();i.nodeChanged()},l.autosave_interval)}});h.onStoreDraft=new a(h);h.onRestoreDraft=new a(h);h.onRemoveDraft=new a(h);if(!d){window.onbeforeunload=e.plugins.AutoSave._beforeUnloadHandler;d=b}},getInfo:function(){return{longname:\"Auto save\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autosave\",version:e.majorVersion+\".\"+e.minorVersion}},getExpDate:function(){return new Date(new Date().getTime()+this.editor.settings.autosave_retention).toUTCString()},setupStorage:function(i){var h=this,k=c+\"_test\",j=\"OK\";h.key=c+i.id;e.each([function(){if(localStorage){localStorage.setItem(k,j);if(localStorage.getItem(k)===j){localStorage.removeItem(k);return localStorage}}},function(){if(sessionStorage){sessionStorage.setItem(k,j);if(sessionStorage.getItem(k)===j){sessionStorage.removeItem(k);return sessionStorage}}},function(){if(e.isIE){i.getElement().style.behavior=\"url('#default#userData')\";return{autoExpires:b,setItem:function(l,n){var m=i.getElement();m.setAttribute(l,n);m.expires=h.getExpDate();try{m.save(\"TinyMCE\")}catch(o){}},getItem:function(l){var m=i.getElement();try{m.load(\"TinyMCE\");return m.getAttribute(l)}catch(n){return null}},removeItem:function(l){i.getElement().removeAttribute(l)}}}},],function(l){try{h.storage=l();if(h.storage){return false}}catch(m){}})},storeDraft:function(){var i=this,l=i.storage,j=i.editor,h,k;if(l){if(!l.getItem(i.key)&&!j.isDirty()){return}k=j.getContent({draft:true});if(k.length>j.settings.autosave_minlength){h=i.getExpDate();if(!i.storage.autoExpires){i.storage.setItem(i.key+\"_expires\",h)}i.storage.setItem(i.key,k);i.onStoreDraft.dispatch(i,{expires:h,content:k})}}},restoreDraft:function(){var h=this,j=h.storage,i;if(j){i=j.getItem(h.key);if(i){h.editor.setContent(i);h.onRestoreDraft.dispatch(h,{content:i})}}},hasDraft:function(){var h=this,k=h.storage,i,j;if(k){j=!!k.getItem(h.key);if(j){if(!h.storage.autoExpires){i=new Date(k.getItem(h.key+\"_expires\"));if(new Date().getTime()<i.getTime()){return b}h.removeDraft()}else{return b}}}return false},removeDraft:function(){var h=this,k=h.storage,i=h.key,j;if(k){j=k.getItem(i);k.removeItem(i);k.removeItem(i+\"_expires\");if(j){h.onRemoveDraft.dispatch(h,{content:j})}}},\"static\":{_beforeUnloadHandler:function(h){var i;e.each(tinyMCE.editors,function(j){if(j.plugins.autosave){j.plugins.autosave.storeDraft()}if(j.getParam(\"fullscreen_is_enabled\")){return}if(!i&&j.isDirty()&&j.getParam(\"autosave_ask_before_unload\")){i=j.getLang(\"autosave.unload_msg\")}});return i}}});e.PluginManager.add(\"autosave\",e.plugins.AutoSave)})(tinymce);"
  },
  {
    "path": "newscoop/js/tinymce/plugins/autosave/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n *\r\n * Adds auto-save capability to the TinyMCE text editor to rescue content\r\n * inadvertently lost. This plugin was originally developed by Speednet\r\n * and that project can be found here: http://code.google.com/p/tinyautosave/\r\n *\r\n * TECHNOLOGY DISCUSSION:\r\n * \r\n * The plugin attempts to use the most advanced features available in the current browser to save\r\n * as much content as possible.  There are a total of four different methods used to autosave the\r\n * content.  In order of preference, they are:\r\n * \r\n * 1. localStorage - A new feature of HTML 5, localStorage can store megabytes of data per domain\r\n * on the client computer. Data stored in the localStorage area has no expiration date, so we must\r\n * manage expiring the data ourselves.  localStorage is fully supported by IE8, and it is supposed\r\n * to be working in Firefox 3 and Safari 3.2, but in reality is is flaky in those browsers.  As\r\n * HTML 5 gets wider support, the AutoSave plugin will use it automatically. In Windows Vista/7,\r\n * localStorage is stored in the following folder:\r\n * C:\\Users\\[username]\\AppData\\Local\\Microsoft\\Internet Explorer\\DOMStore\\[tempFolder]\r\n * \r\n * 2. sessionStorage - A new feature of HTML 5, sessionStorage works similarly to localStorage,\r\n * except it is designed to expire after a certain amount of time.  Because the specification\r\n * around expiration date/time is very loosely-described, it is preferrable to use locaStorage and\r\n * manage the expiration ourselves.  sessionStorage has similar storage characteristics to\r\n * localStorage, although it seems to have better support by Firefox 3 at the moment.  (That will\r\n * certainly change as Firefox continues getting better at HTML 5 adoption.)\r\n * \r\n * 3. UserData - A very under-exploited feature of Microsoft Internet Explorer, UserData is a\r\n * way to store up to 128K of data per \"document\", or up to 1MB of data per domain, on the client\r\n * computer.  The feature is available for IE 5+, which makes it available for every version of IE\r\n * supported by TinyMCE.  The content is persistent across browser restarts and expires on the\r\n * date/time specified, just like a cookie.  However, the data is not cleared when the user clears\r\n * cookies on the browser, which makes it well-suited for rescuing autosaved content.  UserData,\r\n * like other Microsoft IE browser technologies, is implemented as a behavior attached to a\r\n * specific DOM object, so in this case we attach the behavior to the same DOM element that the\r\n * TinyMCE editor instance is attached to.\r\n */\r\n\r\n(function(tinymce) {\r\n\t// Setup constants to help the compressor to reduce script size\r\n\tvar PLUGIN_NAME = 'autosave',\r\n\t\tRESTORE_DRAFT = 'restoredraft',\r\n\t\tTRUE = true,\r\n\t\tundefined,\r\n\t\tunloadHandlerAdded,\r\n\t\tDispatcher = tinymce.util.Dispatcher;\r\n\r\n\t/**\r\n\t * This plugin adds auto-save capability to the TinyMCE text editor to rescue content\r\n\t * inadvertently lost. By using localStorage.\r\n\t *\r\n\t * @class tinymce.plugins.AutoSave\r\n\t */\r\n\ttinymce.create('tinymce.plugins.AutoSave', {\r\n\t\t/**\r\n\t\t * Initializes the plugin, this will be executed after the plugin has been created.\r\n\t\t * This call is done before the editor instance has finished it's initialization so use the onInit event\r\n\t\t * of the editor instance to intercept that event.\r\n\t\t *\r\n\t\t * @method init\r\n\t\t * @param {tinymce.Editor} ed Editor instance that the plugin is initialized in.\r\n\t\t * @param {string} url Absolute URL to where the plugin is located.\r\n\t\t */\r\n\t\tinit : function(ed, url) {\r\n\t\t\tvar self = this, settings = ed.settings;\r\n\r\n\t\t\tself.editor = ed;\r\n\r\n\t\t\t// Parses the specified time string into a milisecond number 10m, 10s etc.\r\n\t\t\tfunction parseTime(time) {\r\n\t\t\t\tvar multipels = {\r\n\t\t\t\t\ts : 1000,\r\n\t\t\t\t\tm : 60000\r\n\t\t\t\t};\r\n\r\n\t\t\t\ttime = /^(\\d+)([ms]?)$/.exec('' + time);\r\n\r\n\t\t\t\treturn (time[2] ? multipels[time[2]] : 1) * parseInt(time);\r\n\t\t\t};\r\n\r\n\t\t\t// Default config\r\n\t\t\ttinymce.each({\r\n\t\t\t\task_before_unload : TRUE,\r\n\t\t\t\tinterval : '30s',\r\n\t\t\t\tretention : '20m',\r\n\t\t\t\tminlength : 50\r\n\t\t\t}, function(value, key) {\r\n\t\t\t\tkey = PLUGIN_NAME + '_' + key;\r\n\r\n\t\t\t\tif (settings[key] === undefined)\r\n\t\t\t\t\tsettings[key] = value;\r\n\t\t\t});\r\n\r\n\t\t\t// Parse times\r\n\t\t\tsettings.autosave_interval = parseTime(settings.autosave_interval);\r\n\t\t\tsettings.autosave_retention = parseTime(settings.autosave_retention);\r\n\r\n\t\t\t// Register restore button\r\n\t\t\ted.addButton(RESTORE_DRAFT, {\r\n\t\t\t\ttitle : PLUGIN_NAME + \".restore_content\",\r\n\t\t\t\tonclick : function() {\r\n\t\t\t\t\tif (ed.getContent({draft: true}).replace(/\\s|&nbsp;|<\\/?p[^>]*>|<br[^>]*>/gi, \"\").length > 0) {\r\n\t\t\t\t\t\t// Show confirm dialog if the editor isn't empty\r\n\t\t\t\t\t\ted.windowManager.confirm(\r\n\t\t\t\t\t\t\tPLUGIN_NAME + \".warning_message\",\r\n\t\t\t\t\t\t\tfunction(ok) {\r\n\t\t\t\t\t\t\t\tif (ok)\r\n\t\t\t\t\t\t\t\t\tself.restoreDraft();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t} else\r\n\t\t\t\t\t\tself.restoreDraft();\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t// Enable/disable restoredraft button depending on if there is a draft stored or not\r\n\t\t\ted.onNodeChange.add(function() {\r\n\t\t\t\tvar controlManager = ed.controlManager;\r\n\r\n\t\t\t\tif (controlManager.get(RESTORE_DRAFT))\r\n\t\t\t\t\tcontrolManager.setDisabled(RESTORE_DRAFT, !self.hasDraft());\r\n\t\t\t});\r\n\r\n\t\t\ted.onInit.add(function() {\r\n\t\t\t\t// Check if the user added the restore button, then setup auto storage logic\r\n\t\t\t\tif (ed.controlManager.get(RESTORE_DRAFT)) {\r\n\t\t\t\t\t// Setup storage engine\r\n\t\t\t\t\tself.setupStorage(ed);\r\n\r\n\t\t\t\t\t// Auto save contents each interval time\r\n\t\t\t\t\tsetInterval(function() {\r\n\t\t\t\t\t\tself.storeDraft();\r\n\t\t\t\t\t\ted.nodeChanged();\r\n\t\t\t\t\t}, settings.autosave_interval);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t/**\r\n\t\t\t * This event gets fired when a draft is stored to local storage.\r\n\t\t\t *\r\n\t\t\t * @event onStoreDraft\r\n\t\t\t * @param {tinymce.plugins.AutoSave} sender Plugin instance sending the event.\r\n\t\t\t * @param {Object} draft Draft object containing the HTML contents of the editor.\r\n\t\t\t */\r\n\t\t\tself.onStoreDraft = new Dispatcher(self);\r\n\r\n\t\t\t/**\r\n\t\t\t * This event gets fired when a draft is restored from local storage.\r\n\t\t\t *\r\n\t\t\t * @event onStoreDraft\r\n\t\t\t * @param {tinymce.plugins.AutoSave} sender Plugin instance sending the event.\r\n\t\t\t * @param {Object} draft Draft object containing the HTML contents of the editor.\r\n\t\t\t */\r\n\t\t\tself.onRestoreDraft = new Dispatcher(self);\r\n\r\n\t\t\t/**\r\n\t\t\t * This event gets fired when a draft removed/expired.\r\n\t\t\t *\r\n\t\t\t * @event onRemoveDraft\r\n\t\t\t * @param {tinymce.plugins.AutoSave} sender Plugin instance sending the event.\r\n\t\t\t * @param {Object} draft Draft object containing the HTML contents of the editor.\r\n\t\t\t */\r\n\t\t\tself.onRemoveDraft = new Dispatcher(self);\r\n\r\n\t\t\t// Add ask before unload dialog only add one unload handler\r\n\t\t\tif (!unloadHandlerAdded) {\r\n\t\t\t\twindow.onbeforeunload = tinymce.plugins.AutoSave._beforeUnloadHandler;\r\n\t\t\t\tunloadHandlerAdded = TRUE;\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * Returns information about the plugin as a name/value array.\r\n\t\t * The current keys are longname, author, authorurl, infourl and version.\r\n\t\t *\r\n\t\t * @method getInfo\r\n\t\t * @return {Object} Name/value array containing information about the plugin.\r\n\t\t */\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Auto save',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autosave',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * Returns an expiration date UTC string.\r\n\t\t *\r\n\t\t * @method getExpDate\r\n\t\t * @return {String} Expiration date UTC string.\r\n\t\t */\r\n\t\tgetExpDate : function() {\r\n\t\t\treturn new Date(\r\n\t\t\t\tnew Date().getTime() + this.editor.settings.autosave_retention\r\n\t\t\t).toUTCString();\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * This method will setup the storage engine. If the browser has support for it.\r\n\t\t *\r\n\t\t * @method setupStorage\r\n\t\t */\r\n\t\tsetupStorage : function(ed) {\r\n\t\t\tvar self = this, testKey = PLUGIN_NAME + '_test', testVal = \"OK\";\r\n\r\n\t\t\tself.key = PLUGIN_NAME + ed.id;\r\n\r\n\t\t\t// Loop though each storage engine type until we find one that works\r\n\t\t\ttinymce.each([\r\n\t\t\t\tfunction() {\r\n\t\t\t\t\t// Try HTML5 Local Storage\r\n\t\t\t\t\tif (localStorage) {\r\n\t\t\t\t\t\tlocalStorage.setItem(testKey, testVal);\r\n\r\n\t\t\t\t\t\tif (localStorage.getItem(testKey) === testVal) {\r\n\t\t\t\t\t\t\tlocalStorage.removeItem(testKey);\r\n\r\n\t\t\t\t\t\t\treturn localStorage;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\r\n\t\t\t\tfunction() {\r\n\t\t\t\t\t// Try HTML5 Session Storage\r\n\t\t\t\t\tif (sessionStorage) {\r\n\t\t\t\t\t\tsessionStorage.setItem(testKey, testVal);\r\n\r\n\t\t\t\t\t\tif (sessionStorage.getItem(testKey) === testVal) {\r\n\t\t\t\t\t\t\tsessionStorage.removeItem(testKey);\r\n\r\n\t\t\t\t\t\t\treturn sessionStorage;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\r\n\t\t\t\tfunction() {\r\n\t\t\t\t\t// Try IE userData\r\n\t\t\t\t\tif (tinymce.isIE) {\r\n\t\t\t\t\t\ted.getElement().style.behavior = \"url('#default#userData')\";\r\n\r\n\t\t\t\t\t\t// Fake localStorage on old IE\r\n\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\tautoExpires : TRUE,\r\n\r\n\t\t\t\t\t\t\tsetItem : function(key, value) {\r\n\t\t\t\t\t\t\t\tvar userDataElement = ed.getElement();\r\n\r\n\t\t\t\t\t\t\t\tuserDataElement.setAttribute(key, value);\r\n\t\t\t\t\t\t\t\tuserDataElement.expires = self.getExpDate();\r\n\r\n\t\t\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t\t\tuserDataElement.save(\"TinyMCE\");\r\n\t\t\t\t\t\t\t\t} catch (e) {\r\n\t\t\t\t\t\t\t\t\t// Ignore, saving might fail if \"Userdata Persistence\" is disabled in IE\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t},\r\n\r\n\t\t\t\t\t\t\tgetItem : function(key) {\r\n\t\t\t\t\t\t\t\tvar userDataElement = ed.getElement();\r\n\r\n\t\t\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t\t\tuserDataElement.load(\"TinyMCE\");\r\n\t\t\t\t\t\t\t\t\treturn userDataElement.getAttribute(key);\r\n\t\t\t\t\t\t\t\t} catch (e) {\r\n\t\t\t\t\t\t\t\t\t// Ignore, loading might fail if \"Userdata Persistence\" is disabled in IE\r\n\t\t\t\t\t\t\t\t\treturn null;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t},\r\n\r\n\t\t\t\t\t\t\tremoveItem : function(key) {\r\n\t\t\t\t\t\t\t\ted.getElement().removeAttribute(key);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t], function(setup) {\r\n\t\t\t\t// Try executing each function to find a suitable storage engine\r\n\t\t\t\ttry {\r\n\t\t\t\t\tself.storage = setup();\r\n\r\n\t\t\t\t\tif (self.storage)\r\n\t\t\t\t\t\treturn false;\r\n\t\t\t\t} catch (e) {\r\n\t\t\t\t\t// Ignore\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * This method will store the current contents in the the storage engine.\r\n\t\t *\r\n\t\t * @method storeDraft\r\n\t\t */\r\n\t\tstoreDraft : function() {\r\n\t\t\tvar self = this, storage = self.storage, editor = self.editor, expires, content;\r\n\r\n\t\t\t// Is the contents dirty\r\n\t\t\tif (storage) {\r\n\t\t\t\t// If there is no existing key and the contents hasn't been changed since\r\n\t\t\t\t// it's original value then there is no point in saving a draft\r\n\t\t\t\tif (!storage.getItem(self.key) && !editor.isDirty())\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\t// Store contents if the contents if longer than the minlength of characters\r\n\t\t\t\tcontent = editor.getContent({draft: true});\r\n\t\t\t\tif (content.length > editor.settings.autosave_minlength) {\r\n\t\t\t\t\texpires = self.getExpDate();\r\n\r\n\t\t\t\t\t// Store expiration date if needed IE userData has auto expire built in\r\n\t\t\t\t\tif (!self.storage.autoExpires)\r\n\t\t\t\t\t\tself.storage.setItem(self.key + \"_expires\", expires);\r\n\r\n\t\t\t\t\tself.storage.setItem(self.key, content);\r\n\t\t\t\t\tself.onStoreDraft.dispatch(self, {\r\n\t\t\t\t\t\texpires : expires,\r\n\t\t\t\t\t\tcontent : content\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * This method will restore the contents from the storage engine back to the editor.\r\n\t\t *\r\n\t\t * @method restoreDraft\r\n\t\t */\r\n\t\trestoreDraft : function() {\r\n\t\t\tvar self = this, storage = self.storage, content;\r\n\r\n\t\t\tif (storage) {\r\n\t\t\t\tcontent = storage.getItem(self.key);\r\n\r\n\t\t\t\tif (content) {\r\n\t\t\t\t\tself.editor.setContent(content);\r\n\t\t\t\t\tself.onRestoreDraft.dispatch(self, {\r\n\t\t\t\t\t\tcontent : content\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * This method will return true/false if there is a local storage draft available.\r\n\t\t *\r\n\t\t * @method hasDraft\r\n\t\t * @return {boolean} true/false state if there is a local draft.\r\n\t\t */\r\n\t\thasDraft : function() {\r\n\t\t\tvar self = this, storage = self.storage, expDate, exists;\r\n\r\n\t\t\tif (storage) {\r\n\t\t\t\t// Does the item exist at all\r\n\t\t\t\texists = !!storage.getItem(self.key);\r\n\t\t\t\tif (exists) {\r\n\t\t\t\t\t// Storage needs autoexpire\r\n\t\t\t\t\tif (!self.storage.autoExpires) {\r\n\t\t\t\t\t\texpDate = new Date(storage.getItem(self.key + \"_expires\"));\r\n\r\n\t\t\t\t\t\t// Contents hasn't expired\r\n\t\t\t\t\t\tif (new Date().getTime() < expDate.getTime())\r\n\t\t\t\t\t\t\treturn TRUE;\r\n\r\n\t\t\t\t\t\t// Remove it if it has\r\n\t\t\t\t\t\tself.removeDraft();\r\n\t\t\t\t\t} else\r\n\t\t\t\t\t\treturn TRUE;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\treturn false;\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * Removes the currently stored draft.\r\n\t\t *\r\n\t\t * @method removeDraft\r\n\t\t */\r\n\t\tremoveDraft : function() {\r\n\t\t\tvar self = this, storage = self.storage, key = self.key, content;\r\n\r\n\t\t\tif (storage) {\r\n\t\t\t\t// Get current contents and remove the existing draft\r\n\t\t\t\tcontent = storage.getItem(key);\r\n\t\t\t\tstorage.removeItem(key);\r\n\t\t\t\tstorage.removeItem(key + \"_expires\");\r\n\r\n\t\t\t\t// Dispatch remove event if we had any contents\r\n\t\t\t\tif (content) {\r\n\t\t\t\t\tself.onRemoveDraft.dispatch(self, {\r\n\t\t\t\t\t\tcontent : content\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t\"static\" : {\r\n\t\t\t// Internal unload handler will be called before the page is unloaded\r\n\t\t\t_beforeUnloadHandler : function(e) {\r\n\t\t\t\tvar msg;\r\n\r\n\t\t\t\ttinymce.each(tinyMCE.editors, function(ed) {\r\n\t\t\t\t\t// Store a draft for each editor instance\r\n\t\t\t\t\tif (ed.plugins.autosave)\r\n\t\t\t\t\t\ted.plugins.autosave.storeDraft();\r\n\r\n\t\t\t\t\t// Never ask in fullscreen mode\r\n\t\t\t\t\tif (ed.getParam(\"fullscreen_is_enabled\"))\r\n\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t// Setup a return message if the editor is dirty\r\n\t\t\t\t\tif (!msg && ed.isDirty() && ed.getParam(\"autosave_ask_before_unload\"))\r\n\t\t\t\t\t\tmsg = ed.getLang(\"autosave.unload_msg\");\r\n\t\t\t\t});\r\n\r\n\t\t\t\treturn msg;\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n\r\n\ttinymce.PluginManager.add('autosave', tinymce.plugins.AutoSave);\r\n})(tinymce);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/autosave/langs/en.js",
    "content": "tinyMCE.addI18n('en.autosave',{\r\nrestore_content: \"Restore auto-saved content\",\r\nwarning_message: \"If you restore the saved content, you will lose all the content that is currently in the editor.\\n\\nAre you sure you want to restore the saved content?\"\r\n});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/bbcode/editor_plugin.js",
    "content": "(function(){tinymce.create(\"tinymce.plugins.BBCodePlugin\",{init:function(a,b){var d=this,c=a.getParam(\"bbcode_dialect\",\"punbb\").toLowerCase();a.onBeforeSetContent.add(function(e,f){f.content=d[\"_\"+c+\"_bbcode2html\"](f.content)});a.onPostProcess.add(function(e,f){if(f.set){f.content=d[\"_\"+c+\"_bbcode2html\"](f.content)}if(f.get){f.content=d[\"_\"+c+\"_html2bbcode\"](f.content)}})},getInfo:function(){return{longname:\"BBCode Plugin\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/bbcode\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}},_punbb_html2bbcode:function(a){a=tinymce.trim(a);function b(c,d){a=a.replace(c,d)}b(/<a.*?href=\\\"(.*?)\\\".*?>(.*?)<\\/a>/gi,\"[url=$1]$2[/url]\");b(/<font.*?color=\\\"(.*?)\\\".*?class=\\\"codeStyle\\\".*?>(.*?)<\\/font>/gi,\"[code][color=$1]$2[/color][/code]\");b(/<font.*?color=\\\"(.*?)\\\".*?class=\\\"quoteStyle\\\".*?>(.*?)<\\/font>/gi,\"[quote][color=$1]$2[/color][/quote]\");b(/<font.*?class=\\\"codeStyle\\\".*?color=\\\"(.*?)\\\".*?>(.*?)<\\/font>/gi,\"[code][color=$1]$2[/color][/code]\");b(/<font.*?class=\\\"quoteStyle\\\".*?color=\\\"(.*?)\\\".*?>(.*?)<\\/font>/gi,\"[quote][color=$1]$2[/color][/quote]\");b(/<span style=\\\"color: ?(.*?);\\\">(.*?)<\\/span>/gi,\"[color=$1]$2[/color]\");b(/<font.*?color=\\\"(.*?)\\\".*?>(.*?)<\\/font>/gi,\"[color=$1]$2[/color]\");b(/<span style=\\\"font-size:(.*?);\\\">(.*?)<\\/span>/gi,\"[size=$1]$2[/size]\");b(/<font>(.*?)<\\/font>/gi,\"$1\");b(/<img.*?src=\\\"(.*?)\\\".*?\\/>/gi,\"[img]$1[/img]\");b(/<span class=\\\"codeStyle\\\">(.*?)<\\/span>/gi,\"[code]$1[/code]\");b(/<span class=\\\"quoteStyle\\\">(.*?)<\\/span>/gi,\"[quote]$1[/quote]\");b(/<strong class=\\\"codeStyle\\\">(.*?)<\\/strong>/gi,\"[code][b]$1[/b][/code]\");b(/<strong class=\\\"quoteStyle\\\">(.*?)<\\/strong>/gi,\"[quote][b]$1[/b][/quote]\");b(/<em class=\\\"codeStyle\\\">(.*?)<\\/em>/gi,\"[code][i]$1[/i][/code]\");b(/<em class=\\\"quoteStyle\\\">(.*?)<\\/em>/gi,\"[quote][i]$1[/i][/quote]\");b(/<u class=\\\"codeStyle\\\">(.*?)<\\/u>/gi,\"[code][u]$1[/u][/code]\");b(/<u class=\\\"quoteStyle\\\">(.*?)<\\/u>/gi,\"[quote][u]$1[/u][/quote]\");b(/<\\/(strong|b)>/gi,\"[/b]\");b(/<(strong|b)>/gi,\"[b]\");b(/<\\/(em|i)>/gi,\"[/i]\");b(/<(em|i)>/gi,\"[i]\");b(/<\\/u>/gi,\"[/u]\");b(/<span style=\\\"text-decoration: ?underline;\\\">(.*?)<\\/span>/gi,\"[u]$1[/u]\");b(/<u>/gi,\"[u]\");b(/<blockquote[^>]*>/gi,\"[quote]\");b(/<\\/blockquote>/gi,\"[/quote]\");b(/<br \\/>/gi,\"\\n\");b(/<br\\/>/gi,\"\\n\");b(/<br>/gi,\"\\n\");b(/<p>/gi,\"\");b(/<\\/p>/gi,\"\\n\");b(/&nbsp;|\\u00a0/gi,\" \");b(/&quot;/gi,'\"');b(/&lt;/gi,\"<\");b(/&gt;/gi,\">\");b(/&amp;/gi,\"&\");return a},_punbb_bbcode2html:function(a){a=tinymce.trim(a);function b(c,d){a=a.replace(c,d)}b(/\\n/gi,\"<br />\");b(/\\[b\\]/gi,\"<strong>\");b(/\\[\\/b\\]/gi,\"</strong>\");b(/\\[i\\]/gi,\"<em>\");b(/\\[\\/i\\]/gi,\"</em>\");b(/\\[u\\]/gi,\"<u>\");b(/\\[\\/u\\]/gi,\"</u>\");b(/\\[url=([^\\]]+)\\](.*?)\\[\\/url\\]/gi,'<a href=\"$1\">$2</a>');b(/\\[url\\](.*?)\\[\\/url\\]/gi,'<a href=\"$1\">$1</a>');b(/\\[img\\](.*?)\\[\\/img\\]/gi,'<img src=\"$1\" />');b(/\\[color=(.*?)\\](.*?)\\[\\/color\\]/gi,'<font color=\"$1\">$2</font>');b(/\\[code\\](.*?)\\[\\/code\\]/gi,'<span class=\"codeStyle\">$1</span>&nbsp;');b(/\\[quote.*?\\](.*?)\\[\\/quote\\]/gi,'<span class=\"quoteStyle\">$1</span>&nbsp;');return a}});tinymce.PluginManager.add(\"bbcode\",tinymce.plugins.BBCodePlugin)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/bbcode/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\ttinymce.create('tinymce.plugins.BBCodePlugin', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\tvar t = this, dialect = ed.getParam('bbcode_dialect', 'punbb').toLowerCase();\r\n\r\n\t\t\ted.onBeforeSetContent.add(function(ed, o) {\r\n\t\t\t\to.content = t['_' + dialect + '_bbcode2html'](o.content);\r\n\t\t\t});\r\n\r\n\t\t\ted.onPostProcess.add(function(ed, o) {\r\n\t\t\t\tif (o.set)\r\n\t\t\t\t\to.content = t['_' + dialect + '_bbcode2html'](o.content);\r\n\r\n\t\t\t\tif (o.get)\r\n\t\t\t\t\to.content = t['_' + dialect + '_html2bbcode'](o.content);\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'BBCode Plugin',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/bbcode',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t},\r\n\r\n\t\t// Private methods\r\n\r\n\t\t// HTML -> BBCode in PunBB dialect\r\n\t\t_punbb_html2bbcode : function(s) {\r\n\t\t\ts = tinymce.trim(s);\r\n\r\n\t\t\tfunction rep(re, str) {\r\n\t\t\t\ts = s.replace(re, str);\r\n\t\t\t};\r\n\r\n\t\t\t// example: <strong> to [b]\r\n\t\t\trep(/<a.*?href=\\\"(.*?)\\\".*?>(.*?)<\\/a>/gi,\"[url=$1]$2[/url]\");\r\n\t\t\trep(/<font.*?color=\\\"(.*?)\\\".*?class=\\\"codeStyle\\\".*?>(.*?)<\\/font>/gi,\"[code][color=$1]$2[/color][/code]\");\r\n\t\t\trep(/<font.*?color=\\\"(.*?)\\\".*?class=\\\"quoteStyle\\\".*?>(.*?)<\\/font>/gi,\"[quote][color=$1]$2[/color][/quote]\");\r\n\t\t\trep(/<font.*?class=\\\"codeStyle\\\".*?color=\\\"(.*?)\\\".*?>(.*?)<\\/font>/gi,\"[code][color=$1]$2[/color][/code]\");\r\n\t\t\trep(/<font.*?class=\\\"quoteStyle\\\".*?color=\\\"(.*?)\\\".*?>(.*?)<\\/font>/gi,\"[quote][color=$1]$2[/color][/quote]\");\r\n\t\t\trep(/<span style=\\\"color: ?(.*?);\\\">(.*?)<\\/span>/gi,\"[color=$1]$2[/color]\");\r\n\t\t\trep(/<font.*?color=\\\"(.*?)\\\".*?>(.*?)<\\/font>/gi,\"[color=$1]$2[/color]\");\r\n\t\t\trep(/<span style=\\\"font-size:(.*?);\\\">(.*?)<\\/span>/gi,\"[size=$1]$2[/size]\");\r\n\t\t\trep(/<font>(.*?)<\\/font>/gi,\"$1\");\r\n\t\t\trep(/<img.*?src=\\\"(.*?)\\\".*?\\/>/gi,\"[img]$1[/img]\");\r\n\t\t\trep(/<span class=\\\"codeStyle\\\">(.*?)<\\/span>/gi,\"[code]$1[/code]\");\r\n\t\t\trep(/<span class=\\\"quoteStyle\\\">(.*?)<\\/span>/gi,\"[quote]$1[/quote]\");\r\n\t\t\trep(/<strong class=\\\"codeStyle\\\">(.*?)<\\/strong>/gi,\"[code][b]$1[/b][/code]\");\r\n\t\t\trep(/<strong class=\\\"quoteStyle\\\">(.*?)<\\/strong>/gi,\"[quote][b]$1[/b][/quote]\");\r\n\t\t\trep(/<em class=\\\"codeStyle\\\">(.*?)<\\/em>/gi,\"[code][i]$1[/i][/code]\");\r\n\t\t\trep(/<em class=\\\"quoteStyle\\\">(.*?)<\\/em>/gi,\"[quote][i]$1[/i][/quote]\");\r\n\t\t\trep(/<u class=\\\"codeStyle\\\">(.*?)<\\/u>/gi,\"[code][u]$1[/u][/code]\");\r\n\t\t\trep(/<u class=\\\"quoteStyle\\\">(.*?)<\\/u>/gi,\"[quote][u]$1[/u][/quote]\");\r\n\t\t\trep(/<\\/(strong|b)>/gi,\"[/b]\");\r\n\t\t\trep(/<(strong|b)>/gi,\"[b]\");\r\n\t\t\trep(/<\\/(em|i)>/gi,\"[/i]\");\r\n\t\t\trep(/<(em|i)>/gi,\"[i]\");\r\n\t\t\trep(/<\\/u>/gi,\"[/u]\");\r\n\t\t\trep(/<span style=\\\"text-decoration: ?underline;\\\">(.*?)<\\/span>/gi,\"[u]$1[/u]\");\r\n\t\t\trep(/<u>/gi,\"[u]\");\r\n\t\t\trep(/<blockquote[^>]*>/gi,\"[quote]\");\r\n\t\t\trep(/<\\/blockquote>/gi,\"[/quote]\");\r\n\t\t\trep(/<br \\/>/gi,\"\\n\");\r\n\t\t\trep(/<br\\/>/gi,\"\\n\");\r\n\t\t\trep(/<br>/gi,\"\\n\");\r\n\t\t\trep(/<p>/gi,\"\");\r\n\t\t\trep(/<\\/p>/gi,\"\\n\");\r\n\t\t\trep(/&nbsp;|\\u00a0/gi,\" \");\r\n\t\t\trep(/&quot;/gi,\"\\\"\");\r\n\t\t\trep(/&lt;/gi,\"<\");\r\n\t\t\trep(/&gt;/gi,\">\");\r\n\t\t\trep(/&amp;/gi,\"&\");\r\n\r\n\t\t\treturn s; \r\n\t\t},\r\n\r\n\t\t// BBCode -> HTML from PunBB dialect\r\n\t\t_punbb_bbcode2html : function(s) {\r\n\t\t\ts = tinymce.trim(s);\r\n\r\n\t\t\tfunction rep(re, str) {\r\n\t\t\t\ts = s.replace(re, str);\r\n\t\t\t};\r\n\r\n\t\t\t// example: [b] to <strong>\r\n\t\t\trep(/\\n/gi,\"<br />\");\r\n\t\t\trep(/\\[b\\]/gi,\"<strong>\");\r\n\t\t\trep(/\\[\\/b\\]/gi,\"</strong>\");\r\n\t\t\trep(/\\[i\\]/gi,\"<em>\");\r\n\t\t\trep(/\\[\\/i\\]/gi,\"</em>\");\r\n\t\t\trep(/\\[u\\]/gi,\"<u>\");\r\n\t\t\trep(/\\[\\/u\\]/gi,\"</u>\");\r\n\t\t\trep(/\\[url=([^\\]]+)\\](.*?)\\[\\/url\\]/gi,\"<a href=\\\"$1\\\">$2</a>\");\r\n\t\t\trep(/\\[url\\](.*?)\\[\\/url\\]/gi,\"<a href=\\\"$1\\\">$1</a>\");\r\n\t\t\trep(/\\[img\\](.*?)\\[\\/img\\]/gi,\"<img src=\\\"$1\\\" />\");\r\n\t\t\trep(/\\[color=(.*?)\\](.*?)\\[\\/color\\]/gi,\"<font color=\\\"$1\\\">$2</font>\");\r\n\t\t\trep(/\\[code\\](.*?)\\[\\/code\\]/gi,\"<span class=\\\"codeStyle\\\">$1</span>&nbsp;\");\r\n\t\t\trep(/\\[quote.*?\\](.*?)\\[\\/quote\\]/gi,\"<span class=\\\"quoteStyle\\\">$1</span>&nbsp;\");\r\n\r\n\t\t\treturn s; \r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('bbcode', tinymce.plugins.BBCodePlugin);\r\n})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/assets/dialog.js",
    "content": "// Dialog v3.0 - Copyright (c) 2003-2004 interactivetools.com, inc.\n// This copyright notice MUST stay intact for use (see license.txt).\n//\n// Portions (c) dynarch.com, 2003-2004\n//\n// A free WYSIWYG editor replacement for <textarea> fields.\n// For full source code and docs, visit http://www.interactivetools.com/\n//\n// Version 3.0 developed by Mihai Bazon.\n//   http://dynarch.com/mishoo\n//\n// $Id: dialog.js 5087 2006-06-01 21:54:08Z paul $\n\n// Though \"Dialog\" looks like an object, it isn't really an object.  Instead\n// it's just namespace for protecting global symbols.\n\nfunction Dialog(url, action, init) {\n\tif (typeof init == \"undefined\") {\n\t\tinit = window;\t// pass this window object by default\n\t}\n\tDialog._geckoOpenModal(url, action, init);\n};\n\nDialog._parentEvent = function(ev) {\n\tsetTimeout( function() { if (Dialog._modal && !Dialog._modal.closed) { Dialog._modal.focus() } }, 50);\n\tif (Dialog._modal && !Dialog._modal.closed) {\n\t\tDialog._stopEvent(ev);\n\t}\n};\n\n\n// should be a function, the return handler of the currently opened dialog.\nDialog._return = null;\n\n// constant, the currently opened dialog\nDialog._modal = null;\n\n// the dialog will read it's args from this variable\nDialog._arguments = null;\n\nDialog._geckoOpenModal = function(url, action, init) {\n\t//var urlLink = \"hadialog\"+url.toString();\n\tvar myURL = \"hadialog\"+url;\n\tvar regObj = /\\W/g;\n\tmyURL = myURL.replace(regObj,'_');\n\tvar dlg = window.open(url, myURL,\n\t\t\t      \"toolbar=no,menubar=no,personalbar=no,width=10,height=10,\" +\n\t\t\t      \"scrollbars=no,resizable=yes,modal=yes,dependable=yes\");\n\tDialog._modal = dlg;\n\tDialog._arguments = init;\n\n\t// capture some window's events\n\tfunction capwin(w) {\n\t\tDialog._addEvent(w, \"click\", Dialog._parentEvent);\n\t\tDialog._addEvent(w, \"mousedown\", Dialog._parentEvent);\n\t\tDialog._addEvent(w, \"focus\", Dialog._parentEvent);\n\t};\n\t// release the captured events\n\tfunction relwin(w) {\n\t\tDialog._removeEvent(w, \"click\", Dialog._parentEvent);\n\t\tDialog._removeEvent(w, \"mousedown\", Dialog._parentEvent);\n\t\tDialog._removeEvent(w, \"focus\", Dialog._parentEvent);\n\t};\n\tcapwin(window);\n\t// capture other frames\n\tfor (var i = 0; i < window.frames.length; capwin(window.frames[i++]));\n\t// make up a function to be called when the Dialog ends.\n\tDialog._return = function (val) {\n\t\tif (val && action) {\n\t\t\taction(val);\n\t\t}\n\t\trelwin(window);\n\t\t// capture other frames\n\t\tfor (var i = 0; i < window.frames.length; relwin(window.frames[i++]));\n\t\tDialog._modal = null;\n\t};\n};\n\n\n// event handling\n\nDialog._addEvent = function(el, evname, func) {\n\tif (Dialog.is_ie) {\n\t\tel.attachEvent(\"on\" + evname, func);\n\t} else {\n\t\tel.addEventListener(evname, func, true);\n\t}\n};\n\n\nDialog._removeEvent = function(el, evname, func) {\n\tif (Dialog.is_ie) {\n\t\tel.detachEvent(\"on\" + evname, func);\n\t} else {\n\t\tel.removeEventListener(evname, func, true);\n\t}\n};\n\n\nDialog._stopEvent = function(ev) {\n\tif (Dialog.is_ie) {\n\t\tev.cancelBubble = true;\n\t\tev.returnValue = false;\n\t} else {\n\t\tev.preventDefault();\n\t\tev.stopPropagation();\n\t}\n};\n\nDialog.agt = navigator.userAgent.toLowerCase();\nDialog.is_ie\t   = ((Dialog.agt.indexOf(\"msie\") != -1) && (Dialog.agt.indexOf(\"opera\") == -1));\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/assets/images.js",
    "content": "/**\n * Functions for the image listing, used by images.php only\n * @author $Author: paul $\n * @version $Id: images.js 5087 2006-06-01 21:54:08Z paul $\n * @package ImageManager\n */\n\n\tfunction i18n(str) {\n\t\tif(I18N)\n\t\t  return (I18N[str] || str);\n\t\telse\n\t\t\treturn str;\n\t};\n\n\tfunction changeDir(newDir)\n\t{\n\t\tshowMessage('Loading');\n\t\tlocation.href = \"images.php?dir=\"+newDir;\n\t}\n\n\n\tfunction newFolder(dir, newDir)\n\t{\n\t\tlocation.href = \"images.php?dir=\"+dir+\"&newDir=\"+newDir;\n\t}\n\n\t//update the dir list in the parent window.\n\tfunction updateDir(newDir)\n\t{\n\t\tvar selection = window.top.document.getElementById('dirPath');\n\t\tif(selection)\n\t\t{\n\t\t\tfor(var i = 0; i < selection.length; i++)\n\t\t\t{\n\t\t\t\tvar thisDir = selection.options[i].text;\n\t\t\t\tif(thisDir == newDir)\n\t\t\t\t{\n\t\t\t\t\tselection.selectedIndex = i;\n\t\t\t\t\tshowMessage('Loading');\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction selectImage(p_image_template_id, p_filename, p_alt)\n\t{\n\t\tvar topDoc = window.top.document;\n\n\t\tvar obj = topDoc.getElementById('f_image_template_id');\n\t\tobj.value = p_image_template_id;\n\n\t\tvar obj = topDoc.getElementById('f_url');\n\t\tobj.value = p_filename;\n\n\t\tvar obj = topDoc.getElementById('f_alt');\n\t\tobj.value = p_alt;\n\n\t\tvar obj = topDoc.getElementById('f_caption');\n\t\tobj.value = p_alt;\n\n\t\t//alert('f_image_template_id: '+p_image_template_id+', f_url: '+p_filename+', f_alt: '+p_alt);\n\t}\n\n\tfunction showMessage(newMessage)\n\t{\n\t\tvar topDoc = window.top.document;\n\n\t\tvar message = topDoc.getElementById('message');\n\t\tvar messages = topDoc.getElementById('messages');\n\t\tif(message && messages)\n\t\t{\n\t\t\tif(message.firstChild)\n\t\t\t\tmessage.removeChild(message.firstChild);\n\n\t\t\tmessage.appendChild(topDoc.createTextNode(i18n(newMessage)));\n\n\t\t\tmessages.style.display = \"block\";\n\t\t}\n\t}\n\n\tfunction addEvent(obj, evType, fn)\n\t{\n\t\tif (obj.addEventListener) { obj.addEventListener(evType, fn, true); return true; }\n\t\telse if (obj.attachEvent) {  var r = obj.attachEvent(\"on\"+evType, fn);  return r;  }\n\t\telse {  return false; }\n\t}\n\n\tfunction confirmDeleteFile(file)\n\t{\n\t\tif(confirm(i18n(\"Delete file?\")))\n\t\t\treturn true;\n\n\t\treturn false;\n\t}\n\n\tfunction confirmDeleteDir(dir, count)\n\t{\n\t\tif(count > 0)\n\t\t{\n\t\t\talert(i18n(\"Please delete all files/folders inside the folder you wish to delete first.\"));\n\t\t\treturn;\n\t\t}\n\n\t\tif(confirm(i18n(\"Delete folder?\")))\n\t\t\treturn true;\n\n\t\treturn false;\n\t}\n\n\taddEvent(window, 'load', init);"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/assets/manager.js",
    "content": "/**\n * Functions for the ImageManager, used by manager.php only\n * @author $Author: paul $\n * @version $Id: manager.js 5087 2006-06-01 21:54:08Z paul $\n * @package ImageManager\n */\n\n\t//Translation\n//\tfunction i18n(str) {\n//\t\tif(I18N)\n//\t\t  return (I18N[str] || str);\n//\t\telse\n//\t\t\treturn str;\n//\t};\n\n\n\t//set the alignment options\n\tfunction setAlign(align)\n\t{\n\t\tvar selection = document.getElementById('f_align');\n\t\tfor(var i = 0; i < selection.length; i++)\n\t\t{\n\t\t\tif(selection.options[i].value == align)\n\t\t\t{\n\t\t\t\tselection.selectedIndex = i;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\t//initialise the form\n\tinit = function ()\n\t{\n\t\t__dlg_init();\n\n\t\t__dlg_translate('ImageManager');\n\n\t\tvar uploadForm = document.getElementById('uploadForm');\n\t\tif(uploadForm) uploadForm.target = 'imgManager';\n\n\t\tvar param = window.dialogArguments;\n\t\tif (param)\n\t\t{\n\t\t\tdocument.getElementById(\"f_image_template_id\").value = param[\"f_image_template_id\"];\n\t\t\tdocument.getElementById(\"f_url\").value = param[\"f_url\"];\n\t\t\tdocument.getElementById(\"f_alt\").value = param[\"f_alt\"];\n\t\t\tdocument.getElementById(\"f_caption\").value = param[\"f_caption\"];\n\t\t\tdocument.getElementById(\"f_border\").value = param[\"f_border\"];\n\t\t\tdocument.getElementById(\"f_vert\").value = param[\"f_vert\"];\n\t\t\tdocument.getElementById(\"f_horiz\").value = param[\"f_horiz\"];\n\t\t\tdocument.getElementById(\"f_width\").value = param[\"f_width\"];\n\t\t\tdocument.getElementById(\"f_height\").value = param[\"f_height\"];\n\t\t\tsetAlign(param[\"f_align\"]);\n\t\t}\n\n\t\tdocument.getElementById(\"f_alt\").focus();\n\t}\n\n\n\tfunction onCancel()\n\t{\n\t\t__dlg_close(null);\n\t\treturn false;\n\t};\n\n\tfunction onOK()\n\t{\n\t\t// pass data back to the calling window\n\t\t//var fields = [\"f_url\", \"f_alt\", \"f_align\", \"f_border\",\n\t\t//\t\t\t  \"f_horiz\", \"f_vert\", \"f_height\", \"f_width\"];\n\t\tvar fields = [\"f_url\", \"f_alt\", \"f_align\", \"f_caption\", \"f_image_template_id\"];\n\t\tvar param = new Object();\n\t\t//var debugMsg = \"\";\n\t\tfor (var i in fields)\n\t\t{\n\t\t\tvar id = fields[i];\n\t\t\tvar el = document.getElementById(id);\n\t\t\tif(id == \"f_url\" && el.value.indexOf('://') < 0 )\n\t\t\t\tparam[id] = makeURL(base_url,el.value);\n\t\t\telse\n\t\t\t\tparam[id] = el.value;\n\t\t\t//debugMsg += id + \":\" + param[id];\n\t\t}\n\t\t//alert(debugMsg);\n\t\t//__dlg_close(param);\n\t\ttinyMCEPopup.close();\n\t\treturn false;\n\t};\n\n\t//similar to the Files::makeFile() in Files.php\n\tfunction makeURL(pathA, pathB)\n\t{\n\t\tif(pathA.substring(pathA.length-1) != '/')\n\t\t\tpathA += '/';\n\n\t\tif(pathB.charAt(0) == '/');\n\t\t\tpathB = pathB.substring(1);\n\n\t\treturn pathA+pathB;\n\t}\n\n\n\tfunction updateDir(selection)\n\t{\n\t\tvar newDir = selection.options[selection.selectedIndex].value;\n\t\tchangeDir(newDir);\n\t}\n\n\tfunction goUpDir()\n\t{\n\t\tvar selection = document.getElementById('dirPath');\n\t\tvar currentDir = selection.options[selection.selectedIndex].text;\n\t\tif(currentDir.length < 2)\n\t\t\treturn false;\n\t\tvar dirs = currentDir.split('/');\n\n\t\tvar search = '';\n\n\t\tfor(var i = 0; i < dirs.length - 2; i++)\n\t\t{\n\t\t\tsearch += dirs[i]+'/';\n\t\t}\n\n\t\tfor(var i = 0; i < selection.length; i++)\n\t\t{\n\t\t\tvar thisDir = selection.options[i].text;\n\t\t\tif(thisDir == search)\n\t\t\t{\n\t\t\t\tselection.selectedIndex = i;\n\t\t\t\tvar newDir = selection.options[i].value;\n\t\t\t\tchangeDir(newDir);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction changeDir(newDir)\n\t{\n\t\tif(typeof imgManager != 'undefined')\n\t\t\timgManager.changeDir(newDir);\n\t}\n\n\tfunction toggleConstrains(constrains)\n\t{\n\t\tvar lockImage = document.getElementById('imgLock');\n\t\tvar constrains = document.getElementById('constrain_prop');\n\n\t\tif(constrains.checked)\n\t\t{\n\t\t\tlockImage.src = \"img/locked.gif\";\n\t\t\tcheckConstrains('width')\n\t\t}\n\t\telse\n\t\t{\n\t\t\tlockImage.src = \"img/unlocked.gif\";\n\t\t}\n\t}\n\n\tfunction checkConstrains(changed)\n\t{\n\t\t//alert(document.form1.constrain_prop);\n\t\tvar constrains = document.getElementById('constrain_prop');\n\n\t\tif(constrains.checked)\n\t\t{\n\t\t\tvar obj = document.getElementById('orginal_width');\n\t\t\tvar orginal_width = parseInt(obj.value);\n\t\t\tvar obj = document.getElementById('orginal_height');\n\t\t\tvar orginal_height = parseInt(obj.value);\n\n\t\t\tvar widthObj = document.getElementById('f_width');\n\t\t\tvar heightObj = document.getElementById('f_height');\n\n\t\t\tvar width = parseInt(widthObj.value);\n\t\t\tvar height = parseInt(heightObj.value);\n\n\t\t\tif(orginal_width > 0 && orginal_height > 0)\n\t\t\t{\n\t\t\t\tif(changed == 'width' && width > 0) {\n\t\t\t\t\theightObj.value = parseInt((width/orginal_width)*orginal_height);\n\t\t\t\t}\n\n\t\t\t\tif(changed == 'height' && height > 0) {\n\t\t\t\t\twidthObj.value = parseInt((height/orginal_height)*orginal_width);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction showMessage(newMessage)\n\t{\n\t\tvar message = document.getElementById('message');\n\t\tvar messages = document.getElementById('messages');\n\t\tif(message.firstChild)\n\t\t\tmessage.removeChild(message.firstChild);\n\n\t\tmessage.appendChild(document.createTextNode(i18n(newMessage)));\n\n\t\tmessages.style.display = \"block\";\n\t}\n\n\tfunction addEvent(obj, evType, fn)\n\t{\n\t\tif (obj.addEventListener) { obj.addEventListener(evType, fn, true); return true; }\n\t\telse if (obj.attachEvent) {  var r = obj.attachEvent(\"on\"+evType, fn);  return r;  }\n\t\telse {  return false; }\n\t}\n\n\tfunction doUpload()\n\t{\n\n\t\tvar uploadForm = document.getElementById('uploadForm');\n\t\tif(uploadForm)\n\t\t\tshowMessage('Uploading');\n\t}\n\n\tfunction refresh()\n\t{\n\t\tvar selection = document.getElementById('dirPath');\n\t\tupdateDir(selection);\n\t}\n\n\n\tfunction newFolder()\n\t{\n\t\tvar selection = document.getElementById('dirPath');\n\t\tvar dir = selection.options[selection.selectedIndex].value;\n\n\t\tDialog(\"newFolder.html\", function(param)\n\t\t{\n\t\t\tif (!param) // user must have pressed Cancel\n\t\t\t\treturn false;\n\t\t\telse\n\t\t\t{\n\t\t\t\tvar folder = param['f_foldername'];\n\t\t\t\tif(folder == thumbdir)\n\t\t\t\t{\n\t\t\t\t\talert(i18n('Invalid folder name, please choose another folder name.'));\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\n\t\t\t\tif (folder && folder != '' && typeof imgManager != 'undefined')\n\t\t\t\t\timgManager.newFolder(dir, encodeURI(folder));\n\t\t\t}\n\t\t}, null);\n\t}\n\n\taddEvent(window, 'load', init);\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/assets/popup.js",
    "content": "// htmlArea v3.0 - Copyright (c) 2002, 2003 interactivetools.com, inc.\n// This copyright notice MUST stay intact for use (see license.txt).\n//\n// Portions (c) dynarch.com, 2003\n//\n// A free WYSIWYG editor replacement for <textarea> fields.\n// For full source code and docs, visit http://www.interactivetools.com/\n//\n// Version 3.0 developed by Mihai Bazon.\n//   http://dynarch.com/mishoo\n//\n// $Id: popup.js 5087 2006-06-01 21:54:08Z paul $\n\n// Slightly modified for the ImageManager, window resizing is done only\n// by each window's script. Added translation for a few other HTML elements.\n\nfunction getAbsolutePos(el) {\n\tvar r = { x: el.offsetLeft, y: el.offsetTop };\n\tif (el.offsetParent) {\n\t\tvar tmp = getAbsolutePos(el.offsetParent);\n\t\tr.x += tmp.x;\n\t\tr.y += tmp.y;\n\t}\n\treturn r;\n};\n\nfunction comboSelectValue(c, val) {\n\tvar ops = c.getElementsByTagName(\"option\");\n\tfor (var i = ops.length; --i >= 0;) {\n\t\tvar op = ops[i];\n\t\top.selected = (op.value == val);\n\t}\n\tc.value = val;\n};\n\nfunction __dlg_onclose() {\n\tif(opener && opener.Dialog && opener.Dialog._arguments) {\n\t\tif(opener.Dialog._return)\n\t\t\topener.Dialog._return(null);\n\t}\n};\n\nfunction __dlg_init(bottom) {\n\tvar body = document.body;\n\tvar body_height = 0;\n\tif (typeof bottom == \"undefined\") {\n\t\tvar div = document.createElement(\"div\");\n\t\tbody.appendChild(div);\n\t\tvar pos = getAbsolutePos(div);\n\t\tbody_height = pos.y;\n\t} else {\n\t\tvar pos = getAbsolutePos(bottom);\n\t\tbody_height = pos.y + bottom.offsetHeight;\n\t}\n\tif(opener && opener.Dialog && opener.Dialog._arguments)\n\t\twindow.dialogArguments = opener.Dialog._arguments;\n\tif (!document.all) {\n\t\t//window.sizeToContent();\n\t\t//window.sizeToContent();\t// for reasons beyond understanding,\n\t\t\t\t\t// only if we call it twice we get the\n\t\t\t\t\t// correct size.\n\t\twindow.addEventListener(\"unload\", __dlg_onclose, true);\n\t\t// center on parent\n\t\tvar x = opener.screenX + (opener.outerWidth - window.outerWidth) / 2;\n\t\tvar y = opener.screenY + (opener.outerHeight - window.outerHeight) / 2;\n\t\twindow.moveTo(x, y);\n\t\t//window.innerWidth = body.offsetWidth + 5;\n\t\t//window.innerHeight = body_height + 2;\n\t} else {\n\t\t// window.dialogHeight = body.offsetHeight + 50 + \"px\";\n\t\t// window.dialogWidth = body.offsetWidth + \"px\";\n\t\t//window.resizeTo(body.offsetWidth, body_height);\n\t\tvar ch = body.clientHeight;\n\t\tvar cw = body.clientWidth;\n\t\t//window.resizeBy(body.offsetWidth - cw, body_height - ch);\n\t\tvar W = body.offsetWidth;\n\t\tvar H = 2 * body_height - ch;\n\t\tif(ch <= 0) H = body_height;\n\t\tvar x = (screen.availWidth - W) / 2;\n\t\tvar y = (screen.availHeight - H) / 2;\n\t\t\n\t\twindow.moveTo(x, y);\n\t}\n\tdocument.body.onkeypress = __dlg_close_on_esc;\n};\n\nfunction __dlg_translate(i18n) {\n\tvar types = [\"span\", \"option\", \"td\", \"button\", \"div\", \"label\", \"a\",\"img\", \"legend\"];\n\tfor (var type in types) {\n\t\tvar spans = document.getElementsByTagName(types[type]);\n\t\tfor (var i = spans.length; --i >= 0;) {\n\t\t\tvar span = spans[i];\n\t\t\tif (span.firstChild && span.firstChild.data) {\t\t\t\t\n\t\t\t\tvar txt = i18n[span.firstChild.data];\n\t\t\t\tif (txt) span.firstChild.data = txt;\n\t\t\t}\n\t\t\tif(span.title){\n\t\t\t\tvar txt = i18n[span.title];\n\t\t\t\tif(txt) span.title = txt;\n\t\t\t}\n\t\t\tif(span.alt){\n\t\t\t\tvar txt = i18n[span.alt];\n\t\t\t\tif(txt) span.alt = txt;\n\t\t\t}\n\t\t}\n\t}\n\tvar txt = i18n[document.title];\n\tif (txt)\n\t\tdocument.title = txt;\n};\n\n// closes the dialog and passes the return info upper.\nfunction __dlg_close(val) {\n\t//opener.Dialog._return(val);\n\ttinyMCEPopup.close();\n};\n\nfunction __dlg_close_on_esc(ev) {\n\tev || (ev = window.event);\n\tif (ev.keyCode == 27) {\n\t\twindow.close();\n\t\treturn false;\n\t}\n\treturn true;\n};\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/attachments.php",
    "content": "<?php\n/**\n * Show a list of attachments in a long horizontal table.\n * @author $Author: holman $\n */\n\n// set SCRIPT_FILE for correct attachment urls\n$_SERVER['SCRIPT_NAME'] = preg_replace('#js/.*$#', 'admin.php', $_SERVER['SCRIPT_NAME']);\n\n$GLOBALS['g_campsiteDir'] = dirname(dirname(dirname(dirname(dirname(__FILE__)))));\n\nrequire_once $GLOBALS['g_campsiteDir'] . '/application.php';\n$application->bootstrap();\n\n$userId = Zend_Auth::getInstance()->getIdentity();\n$userTmp = new User($userId);\nif (!$userTmp->exists() || !$userTmp->isAdmin()) {\n\theader(\"Location: /$ADMIN/login.php\");\n\texit(0);\n}\nunset($userTmp);\nrequire_once('config.inc.php');\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/lib_campsite.php\");\nrequire_once('classes/AttachmentManager.php');\n\n$manager = new AttachmentManager($AMConfig);\n\n$languageSelected = (isset($_REQUEST['language_selected']) && is_numeric($_REQUEST['language_selected']))\n    ? $_REQUEST['language_selected'] : null;\n$articleId = (isset($_REQUEST['article_id']) && is_numeric($_REQUEST['article_id']))\n    ? $_REQUEST['article_id'] : null;\n\n// Get the list of files and directories\n$list = array();\nif (!is_null($articleId)) {\n    $list = $manager->getFiles($articleId, $languageSelected);\n}\n\n\n/**\n * Draw the files in a table.\n */\nfunction drawFiles($list, &$manager)\n{\n    global $languageSelected, $Campsite;\n\n    $counter = 0;\n    foreach($list as $entry => $file)\n    {\n        $counter++;\n        $languageId = ($file['attachment']->getLanguageId()) ? $file['attachment']->getLanguageId() : $languageSelected;\n        $downloadURL = $file['attachment']->getAttachmentUrl() . '?g_download=1';\n?>\n    <td>\n      <table width=\"100\" cellpadding=\"0\" cellspacing=\"0\">\n      <tr>\n        <td class=\"block\" id=\"block_<?php echo $counter; ?>\" onclick=\"CampsiteAttachmentDialog.select(<?php echo $file['attachment']->getAttachmentId(); ?>, '<?php echo $downloadURL; ?>', '<?php echo camp_javascriptspecialchars($file[\"attachment\"]->getDescription($languageId)); ?>', '<?php echo $counter; ?>');\">\n          <a href=\"javascript:;\" onclick=\"CampsiteAttachmentDialog.select(<?php echo $file['attachment']->getAttachmentId(); ?>, '<?php echo $downloadURL; ?>', '<?php echo camp_javascriptspecialchars($file[\"attachment\"]->getDescription($languageId)); ?>');\" title=\"<?php echo addslashes($file['attachment']->getDescription($languageId)); ?>\"><?php echo $file['attachment']->getFileName(); ?></a><br />\n       <?php echo htmlspecialchars($file['attachment']->getDescription($languageId)); ?>\n        </td>\n      </tr>\n      </table>\n    </td>\n  <?php\n  }//foreach\n}//function drawFiles\n\n\nfunction drawNoResults()\n{\n?>\n<table width=\"100%\">\n  <tr>\n    <td class=\"noResult\"><script>document.write(i18n(\"No Attachments Found\"));</script></td>\n  </tr>\n</table>\n<?php\n} // fn drawNoResults\n\n\nfunction drawErrorBase(&$manager)\n{\n?>\n<table width=\"100%\">\n  <tr>\n    <td class=\"error\">Unable to read the directory: <?php echo $manager->config['base_dir']; ?></td>\n  </tr>\n</table>\n<?php\n} // fn drawErrorBase\n?>\n<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\n<html>\n<head>\n  <title>Image List</title>\n  <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\n  <link href=\"css/attachmentlist.css\" rel=\"stylesheet\" type=\"text/css\" />\n  <script type=\"text/javascript\" src=\"assets/dialog.js\"></script>\n  <script type=\"text/javascript\">\n  /*<![CDATA[*/\n      if(window.top)\n          I18N = window.top.I18N;\n\n      function hideMessage()\n      {\n          var topDoc = window.top.document;\n          var messages = topDoc.getElementById('messages');\n          if(messages)\n              messages.style.display = \"none\";\n      }\n\n      init = function()\n      {\n          hideMessage();\n          var topDoc = window.top.document;\n      }\n\n      function editImage(image)\n      {\n\t  var url = \"editor.php?img=\"+image;\n\t  Dialog(url, function(param)\n\t  {\n\t      if (!param) // user must have pressed Cancel\n\t\t  return false;\n\t      else\n\t\t  return true;\n\t  }, null);\n      }\n/*]]>*/\n    </script>\n\n  <script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\n  <script type=\"text/javascript\" src=\"js/campsiteattachment.js\"></script>\n  <script type=\"text/javascript\" src=\"assets/images.js\"></script>\n</head>\n<body>\n<?php if ($manager->isValidBase() == false) { drawErrorBase($manager); }\n      elseif(count($list) > 0) { ?>\n  <table>\n  <tr>\n<?php drawFiles($list, $manager); ?>\n  </tr>\n  </table>\n\n<?php\n    $firstAttachment = array_shift($list);\n    if (!empty($firstAttachment)) {\n        $downloadURL = $firstAttachment['attachment']->getAttachmentUrl() . '?g_download=1';\n        $languageId = $firstAttachment['attachment']->getLanguageId();\n        if (empty($languageId)) {\n            $languageId = (int) $_REQUEST['language_selected'];\n        }\n?>\n  <!-- automatically select the first attachment -->\n  <script>\n    CampsiteAttachmentDialog.select(<?php echo $firstAttachment['attachment']->getAttachmentId(); ?>, '<?php echo $downloadURL; ?>', '<?php echo htmlspecialchars($firstAttachment[\"attachment\"]->getDescription($languageId)); ?>');\n  </script>\n<?php } ?>\n\n<?php } else { drawNoResults(); } ?>\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/classes/AttachmentManager.php",
    "content": "<?php\n/**\n * ImageManager, list attachment files\n * @author $Author: holman $\n * @version $Id: AttachmentManager.php 5087 2009-04-10 08:34:08Z holman $\n */\n\nrequire_once('Files.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleAttachment.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Attachment.php');\n\n/**\n * AttachmentManager Class.\n * @author $Author: holman $\n * @version $Id: AttachmentManager.php 5087 2009-04-10 08:34:08Z holman $\n */\nclass AttachmentManager\n{\n    /**\n     * Configuration array.\n     */\n    var $m_config;\n\n    /**\n     * Array of directory information.\n     */\n    var $m_dirs;\n\n\n    /**\n     * Constructor. Create a new Attachment Manager instance.\n     * @param array $config configuration array, see config.inc.php\n     */\n    function __construct($p_config)\n    {\n        $this->m_config = $p_config;\n    }\n\n\n    /**\n     * Get the base directory.\n     * @return string base dir, see config.inc.php\n     */\n    function getBaseDir()\n    {\n        return $this->m_config['base_dir'];\n    }\n\n\n    /**\n     * Get the base URL.\n     * @return string base url, see config.inc.php\n     */\n    function getBaseURL()\n    {\n        return $this->m_config['base_url'];\n    }\n\n\n    /**\n     *\n     */\n    function isValidBase()\n    {\n        return is_dir($this->getBaseDir());\n    }\n\n\n    /**\n     * Get all the files and directories of a relative path.\n     *\n     * @param string $p_articleId\n     *\n     * @return array of file and path information.\n     * <code>\n     *   array('url'=>'full url',\n     *         'storage'=>'full file path')\n     * </code>\n     */\n    function getFiles($p_articleId, $p_languageId = null)\n    {\n        $files = array();\n\n\tif ($this->isValidBase() == false)\n\t    return $files;\n\n\t$articleAttachments = ArticleAttachment::GetAttachmentsByArticleNumber($p_articleId, $p_languageId);\n\tforeach ($articleAttachments as $articleAttachment) {\n\t    if (!$this->m_config['validate_files']) {\n\t        $file['attachment'] = $articleAttachment;\n\t\t$file['url'] = $articleAttachment->getAttachmentUrl();\n\t\t$file['storage'] = $articleAttachment->getStorageLocation();\n\t\t$files[$articleAttachment->getAttachmentId()] = $file;\n\t    }\n\t}\n\n\tksort($files);\n\treturn $files;\n    } // fn getFiles\n\n\n    /**\n     * Count the number of files and directories in a given folder\n     * minus the thumbnail folders and thumbnails.\n     */\n    function countFiles($path)\n    {\n        $total = 0;\n\n\tif (is_dir($path)) {\n\t    $d = @dir($path);\n\n\t    while (false !== ($entry = $d->read())) {\n\t        //echo $entry.\"<br>\";\n\t        if (substr($entry,0,1) != '.'\n\t\t        && $this->isThumbDir($entry) == false\n\t\t        && $this->isTmpFile($entry) == false\n\t\t        && $this->isThumb($entry) == false) {\n\t\t    $total++;\n\t\t}\n\t    }\n\t    $d->close();\n\t}\n\treturn $total;\n    } // fn countFiles\n\n\n    /**\n     * Check if the given file is a tmp file.\n     * @param string $file file name\n     * @return boolean true if it is a tmp file, false otherwise\n     */\n    function isTmpFile($file)\n    {\n        $len = strlen($this->m_config['tmp_prefix']);\n\tif (substr($file,0,$len) == $this->m_config['tmp_prefix'])\n\t    return true;\n\telse\n\t    return false;\n    }\n\n\n    /**\n     * Check if the given path is part of the subdirectories\n     * under the base_dir.\n     * @param string $path the relative path to be checked\n     * @return boolean true if the path exists, false otherwise\n     */\n    function validRelativePath($path)\n    {\n        $dirs = $this->getDirs();\n\tif ($path == '/')\n\t    return true;\n\t//check the path given in the url against the\n\t//list of paths in the system.\n\tfor($i = 0; $i < count($dirs); $i++) {\n\t    $key = key($dirs);\n\t    //we found the path\n\t    if ($key == $path)\n\t        return true;\n\n\t    next($dirs);\n\t}\n\treturn false;\n    }\n\n\n    /**\n     * Get the URL of the relative file.\n     * basically appends the relative file to the\n     * base_url given in config.inc.php\n     * @param string $relative a file the relative to the base_dir\n     * @return string the URL of the relative file.\n     */\n    function getFileURL($relative)\n    {\n        return Files::makeFile($this->getBaseURL(),$relative);\n    }\n\n\n    /**\n     * Get the fullpath to a relative file.\n     * @param string $relative the relative file.\n     * @return string the full path, .ie. the base_dir + relative.\n     */\n    function getFullPath($relative)\n    {\n        return Files::makeFile($this->getBaseDir(),$relative);\n    }\n\n\n    /**\n     * Get the default thumbnail.\n     * @return string default thumbnail, empty string if\n     * the thumbnail doesn't exist.\n     */\n    function getDefaultThumb()\n    {\n      if (is_file($this->m_config['default_thumbnail']))\n\t  return $this->m_config['default_thumbnail'];\n      else\n\t  return '';\n    }\n\n} // class AttachmentManager\n\n?>"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/classes/Files.php",
    "content": "<?php\n/**\n * File Utilities.\n * @author $Author: paul $\n * @version $Id: Files.php 5087 2006-06-01 21:54:08Z paul $\n * @package ImageManager\n */\n\ndefine('FILE_ERROR_NO_SOURCE', 100);\ndefine('FILE_ERROR_COPY_FAILED', 101);\ndefine('FILE_ERROR_DST_DIR_FAILED', 102);\ndefine('FILE_COPY_OK', 103);\n\n/**\n * File Utilities\n * @author $Author: paul $\n * @version $Id: Files.php 5087 2006-06-01 21:54:08Z paul $\n * @package ImageManager\n * @subpackage files\n */\nclass Files \n{\n\t\n\t/**\n\t * Copy a file from source to destination. If unique == true, then if\n\t * the destination exists, it will be renamed by appending an increamenting \n\t * counting number.\n\t * @param string $source where the file is from, full path to the files required\n\t * @param string $destination_file name of the new file, just the filename\n\t * @param string $destination_dir where the files, just the destination dir,\n\t * e.g., /www/html/gallery/\n\t * @param boolean $unique create unique destination file if true.\n\t * @return string the new copied filename, else error if anything goes bad.\n\t */\n\tfunction copyFile($source, $destination_dir, $destination_file, $unique=true) \n\t{\n\t\tif(!(file_exists($source) && is_file($source))) \n\t\t\treturn FILE_ERROR_NO_SOURCE;\n\n\t\t$destination_dir = Files::fixPath($destination_dir);\n\n\t\tif(!is_dir($destination_dir)) \n\t\t\tReturn FILE_ERROR_DST_DIR_FAILED;\n\n\t\t$filename = Files::escape($destination_file);\n\n\t\tif($unique) \n\t\t{\n\t\t\t$dotIndex = strrpos($destination_file, '.');\n\t\t\t$ext = '';\n\t\t\tif(is_int($dotIndex)) \n\t\t\t{\n\t\t\t\t$ext = substr($destination_file, $dotIndex);\n\t\t\t\t$base = substr($destination_file, 0, $dotIndex);\n\t\t\t}\n\t\t\t$counter = 0;\n\t\t\twhile(is_file($destination_dir.$filename)) \n\t\t\t{\n\t\t\t\t$counter++;\n\t\t\t\t$filename = $base.'_'.$counter.$ext;\n\t\t\t}\n\t\t}\n\n\t\tif (!copy($source, $destination_dir.$filename))\n\t\t\treturn FILE_ERROR_COPY_FAILED;\n\t\t\n\t\t//verify that it copied, new file must exists\n\t\tif (is_file($destination_dir.$filename))\n\t\t\tReturn $filename;\n\t\telse\n\t\t\treturn FILE_ERROR_COPY_FAILED;\n\t}\n\n\t/**\n\t * Create a new folder.\n\t * @param string $newFolder specifiy the full path of the new folder.\n\t * @return boolean true if the new folder is created, false otherwise.\n\t */\n\tfunction createFolder($newFolder) \n\t{\n\t\tmkdir ($newFolder, 0777);\n\t\treturn chmod($newFolder, 0777);\n\t}\n\n\n\t/**\n\t * Escape the filenames, any non-word characters will be\n\t * replaced by an underscore.\n\t * @param string $filename the orginal filename\n\t * @return string the escaped safe filename\n\t */\n\tfunction escape($filename) \n\t{\n\t\tReturn preg_replace('/[^\\w\\._]/', '_', $filename);\n\t}\n\n\t/**\n\t * Delete a file.\n\t * @param string $file file to be deleted\n\t * @return boolean true if deleted, false otherwise.\n\t */\n\tfunction delFile($file) \n\t{\n\t\tif(is_file($file)) \n\t\t\tReturn unlink($file);\n\t\telse\n\t\t\tReturn false;\n\t}\n\n\t/**\n\t * Delete folder(s), can delete recursively.\n\t * @param string $folder the folder to be deleted.\n\t * @param boolean $recursive if true, all files and sub-directories\n\t * are delete. If false, tries to delete the folder, can throw\n\t * error if the directory is not empty.\n\t * @return boolean true if deleted.\n\t */\n\tfunction delFolder($folder, $recursive=false) \n\t{\n\t\t$deleted = true;\n\t\tif($recursive) \n\t\t{\n\t\t\t$d = dir($folder);\n\t\t\twhile (false !== ($entry = $d->read())) \n\t\t\t{\n\t\t\t\tif ($entry != '.' && $entry != '..')\n\t\t\t\t{\n\t\t\t\t\t$obj = Files::fixPath($folder).$entry;\n\t\t\t\t\t//var_dump($obj);\n\t\t\t\t\tif (is_file($obj))\n\t\t\t\t\t{\n\t\t\t\t\t\t$deleted &= Files::delFile($obj);\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t\telse if(is_dir($obj))\n\t\t\t\t\t{\n\t\t\t\t\t\t$deleted &= Files::delFolder($obj, $recursive);\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t}\n\t\t\t$d->close();\n\n\t\t}\n\n\t\t//$folder= $folder.'/thumbs';\n\t\t//var_dump($folder);\n\t\tif(is_dir($folder)) \n\t\t\t$deleted &= rmdir($folder);\n\t\telse\n\t\t\t$deleted &= false;\n\n\t\tReturn $deleted;\n\t}\n\n\t/**\n\t * Append a / to the path if required.\n\t * @param string $path the path\n\t * @return string path with trailing /\n\t */\n\tfunction fixPath($path) \n\t{\n\t\t//append a slash to the path if it doesn't exists.\n\t\tif(!(substr($path,-1) == '/'))\n\t\t\t$path .= '/';\n\t\tReturn $path;\n\t}\n\n\t/**\n\t * Concat two paths together. Basically $pathA+$pathB\n\t * @param string $pathA path one\n\t * @param string $pathB path two\n\t * @return string a trailing slash combinded path.\n\t */\n\tfunction makePath($pathA, $pathB) \n\t{\n\t\t$pathA = Files::fixPath($pathA);\n\t\tif(substr($pathB,0,1)=='/')\n\t\t\t$pathB = substr($pathB,1);\n\t\tReturn Files::fixPath($pathA.$pathB);\n\t}\n\n\t/**\n\t * Similar to makePath, but the second parameter\n\t * is not only a path, it may contain say a file ending.\n\t * @param string $pathA the leading path\n\t * @param string $pathB the ending path with file\n\t * @return string combined file path.\n\t */\n\tfunction makeFile($pathA, $pathB) \n\t{\t\t\n\t\t$pathA = Files::fixPath($pathA);\n\t\tif(substr($pathB,0,1)=='/')\n\t\t\t$pathB = substr($pathB,1);\n\t\t\n\t\tReturn $pathA.$pathB;\n\t}\n\n\t\n\t/**\n\t * Format the file size, limits to Mb.\n\t * @param int $size the raw filesize\n\t * @return string formated file size.\n\t */\n\tfunction formatSize($size) \n\t{\n\t\tif($size < 1024) \n\t\t\treturn $size.' bytes';\t\n\t\telse if($size >= 1024 && $size < 1024*1024) \n\t\t\treturn sprintf('%01.2f',$size/1024.0).' Kb';\t\n\t\telse\n\t\t\treturn sprintf('%01.2f',$size/(1024.0*1024)).' Mb';\t\n\t}\n}\n\n?>"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/config.inc.php",
    "content": "<?php\n/**\n * Attachment Manager configuration file.\n * @author $Author: holman $\n */\n$GLOBALS['g_campsiteDir'] = dirname(dirname(dirname(dirname(dirname(__FILE__)))));\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/User.php');\n\nrequire_once $GLOBALS['g_campsiteDir'] . '/application.php';\n$application->bootstrap();\n\n$userId = Zend_Auth::getInstance()->getIdentity();\n$userTmp = new User($userId);\nif (!$userTmp->exists() || !$userTmp->isAdmin()) {\n\theader(\"Location: /$ADMIN/login.php\");\n\texit(0);\n}\nunset($userTmp);\n\nrequire_once($GLOBALS['g_campsiteDir'].'/conf/configuration.php');\n\nglobal $Campsite;\n\n/*\n File system path to the directory you want to manage the images\n for multiple user systems, set it dynamically.\n\n NOTE: This directory requires write access by PHP. That is,\n       PHP must be able to create files in this directory.\n\t   Able to create directories is nice, but not necessary.\n*/\n$AMConfig['base_dir'] = $Campsite['FILE_DIRECTORY'];\n\n/*\n The URL to the above path, the web browser needs to be able to see it.\n It can be protected via .htaccess on apache or directory permissions on IIS,\n check you web server documentation for futher information on directory protection\n If this directory needs to be publicly accessiable, remove scripting capabilities\n for this directory (i.e. disable PHP, Perl, CGI). We only want to store assets\n in this directory and its subdirectories.\n*/\n$AMConfig['base_url'] = $Campsite['FILE_BASE_URL'];\n\n/*\n  The prefix for thumbnail files, something like .thumb will do. The\n  thumbnails files will be named as \"prefix_imagefile.ext\", that is,\n  prefix + orginal filename.\n*/\n$AMConfig['num_dirs_level_1'] = '1000';\n\n/*\n  Thumbnail can also be stored in a directory, this directory\n  will be created by PHP. If PHP is in safe mode, this parameter\n  is ignored, you can not create directories.\n\n  If you do not want to store thumbnails in a directory, set this\n  to false or empty string '';\n*/\n$AMConfig['num_dirs_level_2'] = '1000';\n\n/*\n  Possible values: true, false\n\n TRUE -  Allow the user to create new sub-directories in the\n         $IMConfig['base_dir'].\n\n FALSE - No directory creation.\n\n NOTE: If $IMConfig['safe_mode'] = true, this parameter\n       is ignored, you can not create directories\n*/\n$AMConfig['tmp_dir'] = '/tmp/';\n\n/*\n  Possible values: true, false\n\n TRUE -  Show the directory dropdown at the top of the\n \t\t \"Insert Image\" window.\n\n FALSE - Do not show the directory dropdown control at the top\n \t\t of the \"Insert Image\" window.\n*/\n$AMConfig['show_dirs'] = false;\n\n/*\n  Possible values: true, false\n\n  TRUE - Allow the user to upload files.\n\n  FALSE - No uploading allowed.\n*/\n$AMConfig['allow_upload'] = false;\n\n/*\n Possible values: true, false\n\n TRUE - If set to true, uploaded files will be validated based on the\n        function getImageSize, if we can get the image dimensions then\n        I guess this should be a valid image. Otherwise the file will be rejected.\n\n FALSE - All uploaded files will be processed.\n\n NOTE: If uploading is not allowed, this parameter is ignored.\n*/\n$AMConfig['validate_files'] = false;\n\n/*\n The default thumbnail if the thumbnails can not be created, either\n due to error or bad image file.\n*/\n$AMConfig['default_thumbnail'] = 'img/default.gif';\n?>\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/css/attachmentlist.css",
    "content": "body { margin: 0; padding: 0; }\n.block { height: 98px; width: 98px; border: 1px solid threedface; text-align: center; behavior: url(hover.htc ); }\n.block a img { border: 0 none; }\n.block:hover, .block.hover{ background-color: #ffc; }\n.edit { font-size: 9pt; font-family: \"MS Sans Serif\", Geneva, sans-serif; padding-top: 3px;}\n.edit a { border: 1px solid white; padding: 3px; }\n.edit a:hover { border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight; background-color: #ffc; }\n.edit a img { border: 0 none; vertical-align: bottom; }\n.noResult { font-size:large; font-weight:bold; color:#ccc; font-family: Helvetica, sans-serif;  text-align: center;  padding-top: 60px;   }\n.error { color:#c00; font-weight:bold; font-size: medium; font-family: Helvetica, sans-serif; text-align: center;  padding-top: 65px;}"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/css/campsiteattachment.css",
    "content": "html, body {  background-color: ButtonFace;  color: ButtonText; font: 11px Tahoma,Verdana,sans-serif; margin: 0; padding: 0;}\nbody { padding: 5px; }\nfieldset { padding: 0;}\n.title { background-color: #ddf; color: #000; font-weight: bold; font-size: 120%; padding: 3px 10px; margin-bottom: 10px; border-bottom: 1px  solid black; letter-spacing: 2px;}\nform { padding: 0px;  margin: 0 auto; width: 550px;}\n.dirWidth { width: 70%; }\na { padding: 5px; border: 1px solid ButtonFace;\t}\t\na img\t{ border: 0; }\t\na:hover { border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight; }\n.dirs {\tpadding: 1em; \t}\n.attachmentFrame { width: 525px; height: 145px; margin: 0 auto; margin-top: 1em; background-color: White;}\n.smallWidth{ width: 4em; }\n.largelWidth{ width: 22em; }\n.inputTable { margin: 1em auto; }\nselect, input, button { font: 11px Tahoma,Verdana,sans-serif; }\n.buttons { width: 70px; text-align: center; }\n.clearboth{ clear: both; }\n#messages { position: relative; left: 175px; top: 115px; background-color: white; width:200px;  float: left; margin-top: -52px; border: 1px solid #ccc; text-align: center; padding: 15px; }\n#message  { font-size: 15px; font-weight: bold; color: #69c; }\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/editor_plugin.js",
    "content": "(function(){tinymce.PluginManager.requireLangPack('campsiteattachment');tinymce.create('tinymce.plugins.campsiteattachment',{init:function(ed,url){this.editor=ed;editorId=typeof ed.settings.fullscreen_editor_id!='undefined'?ed.settings.fullscreen_editor_id:ed.editorId;articleNo=editorId.substring(editorId.lastIndexOf('_')+1);topDoc=window.top.document;langId=topDoc.getElementById('f_language_selected').value;ed.addCommand('mcecampsiteattachment',function(){var se=ed.selection;if(se.isCollapsed()&&!ed.dom.getParent(se.getNode(),'A')){alert(ed.getLang('campsiteattachment.select_to_link'));return}var action='';var elm=se.getNode();elm=ed.dom.getParent(elm,\"A\");if(elm!=null&&elm.nodeName==\"A\"){action=\"update\"}if(action=='update'){var href=ed.dom.getAttrib(elm,'href')}ed.windowManager.open({file:url+'/popup.php?article_id='+articleNo+'&language_selected='+langId,width:580,height:330,inline:1},{plugin_url:url})});ed.addButton('campsiteattachment',{title:'campsiteattachment.editor_button',cmd:'mcecampsiteattachment',image:url+'/img/newscoopattachment.gif'});ed.addShortcut('ctrl+h','campsiteattachment.campsiteattachment_desc','mcecampsiteattachment');ed.onNodeChange.add(function(ed,cm,n,co){cm.setDisabled('link',co&&n.nodeName!='A');cm.setActive('link',n.nodeName=='A'&&!n.name)})},getInfo:function(){return{longname:'Newscoop - File Attachment',author:'Sourcefabric',authorurl:'http://www.sourcefabric.org',infourl:'http://dev.sourcefabric.org/browse/CS',version:'3.2'}}});tinymce.PluginManager.add('campsiteattachment',tinymce.plugins.campsiteattachment)})();\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/editor_plugin_src.js",
    "content": "/**\n * $Id: editor_plugin_src.js 539 2009-04-06 14:39:58Z holman $\n *\n * @author Campware\n * @copyright Copyright 2009, Campware - MDLF, All rights reserved.\n */\n\n(function() {\n    tinymce.PluginManager.requireLangPack('campsiteattachment');\n\n    tinymce.create('tinymce.plugins.campsiteattachment', {\n        init : function(ed, url) {\n            this.editor = ed;\n            editorId = typeof ed.settings.fullscreen_editor_id != 'undefined' ? \n        \t\t\ted.settings.fullscreen_editor_id : ed.editorId;\n            articleNo = editorId.substring(editorId.lastIndexOf('_')+1);\n            topDoc = window.top.document;\n            langId = topDoc.getElementById('f_language_selected').value;\n\n            // Register commands\n            ed.addCommand('mcecampsiteattachment', function() {\n                var se = ed.selection;\n\n                // No selection and not in link\n                if (se.isCollapsed() && !ed.dom.getParent(se.getNode(), 'A')) {\n                    alert(ed.getLang('campsiteattachment.select_to_link'));\n                    return;\n                }\n\n                var action = '';\n                var elm = se.getNode();\n                elm = ed.dom.getParent(elm, \"A\");\n                if (elm != null && elm.nodeName == \"A\") {\n                    action = \"update\";\n                }\n                if (action == 'update') {\n                    var href = ed.dom.getAttrib(elm, 'href');\n                }\n\n                ed.windowManager.open({\n                    file : url + '/popup.php?article_id=' + articleNo + '&language_selected=' + langId,\n                    width : 580,\n                    height : 330,\n                    inline : 1\n                }, {\n                    plugin_url : url\n                });\n            });\n\n            // Register buttons\n            ed.addButton('campsiteattachment', {\n                title : 'campsiteattachment.editor_button',\n                cmd : 'mcecampsiteattachment',\n                image : url + '/img/newscoopattachment.gif'\n            });\n\n            ed.addShortcut('ctrl+h', 'campsiteattachment.editor_button', 'mcecampsiteattachment');\n\n            ed.onNodeChange.add(function(ed, cm, n, co) {\n                cm.setDisabled('link', co && n.nodeName != 'A');\n                cm.setActive('link', n.nodeName == 'A' && !n.name);\n            });\n        },\n\n        getInfo : function() {\n            return {\n                longname : 'Newscoop - File Attachment',\n                author : 'Sourcefabric',\n                authorurl : 'http://www.sourcefabric.org',\n                infourl : 'http://dev.sourcefabric.org/browse/CS',\n                version : '3.2'\n            };\n        }\n    });\n\n    // Register plugin\n    tinymce.PluginManager.add('campsiteattachment', tinymce.plugins.campsiteattachment);\n})();\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/js/campsiteattachment.js",
    "content": "/* Functions for the campsiteattachment plugin popup */\r\n\r\ntinyMCEPopup.requireLangPack();\r\n\r\nvar CampsiteAttachmentDialog = {\r\n\r\n    init : function(ed) {\r\n\ttinyMCEPopup.resizeToInnerSize();\r\n\r\n\tvar formObj = document.forms[0];\r\n\tvar inst = tinyMCEPopup.editor;\r\n\tvar elm = inst.selection.getNode();\r\n\tvar action = \"insert\";\r\n\tvar html;\r\n\r\n\telm = inst.dom.getParent(elm, \"A\");\r\n\tif (elm != null && elm.nodeName == \"A\")\r\n\t    action = \"update\";\r\n\r\n\tformObj.insert.value = tinyMCEPopup.getLang(action, 'Insert', true); \r\n\r\n\tif (action == \"update\")\r\n\t    var href = inst.dom.getAttrib(elm, 'href');\r\n    },\r\n\r\n    insert : function() {\r\n\tvar ed = tinyMCEPopup.editor;\r\n\tvar dom = ed.dom;\r\n\tvar topDoc = window.top.document;\r\n\r\n\ted.selection.setContent(dom.createHTML('a', {\r\n\t\t    href : topDoc.getElementById('f_url').value,\r\n\t\t    title : topDoc.getElementById('f_description').value\r\n\t    }, ed.selection.getContent()));\r\n\ttinyMCEPopup.close();\r\n    },\r\n\r\n    select : function(p_attachment_id, p_filename, p_description, p_selected) {\r\n\tvar topDoc = window.top.document;\r\n\r\n\tvar obj = topDoc.getElementById('f_attachment_id');\r\n\tobj.value = p_attachment_id;\r\n\r\n\tvar obj = topDoc.getElementById('f_url');\r\n\tobj.value = p_filename;\r\n\r\n\tvar obj = topDoc.getElementById('f_description');\r\n\tobj.value = p_description;\r\n\r\n\tvar allPageTags = new Array();\r\n\tallPageTags = document.getElementsByTagName('*');\r\n\tfor (i = 0; i < allPageTags.length; i++) {\r\n\t    if (allPageTags[i].className == 'block') {\r\n\t\tallPageTags[i].style.backgroundColor='';\r\n\t    }\r\n\t}\r\n\r\n\tdocument.getElementById('block_'+p_selected).style.backgroundColor='#FFC';\r\n    },\r\n\r\n    close : function() {\r\n\ttinyMCEPopup.close();\r\n    }\r\n};\r\n\r\n// While loading\r\ntinyMCEPopup.onInit.add(init);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/ar.js",
    "content": "tinyMCE.addI18n('ar.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/ar_dlg.js",
    "content": "tinyMCE.addI18n('ar.campsiteattachment_dlg',{\n    title: \"Insert link to article file\",\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/az.js",
    "content": "tinyMCE.addI18n('az.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/be.js",
    "content": "tinyMCE.addI18n('be.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/cs.js",
    "content": "tinyMCE.addI18n('cs.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/cs_dlg.js",
    "content": "tinyMCE.addI18n('cs.campsiteattachment_dlg',{\n    title:\"Insert link to article file\",\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/da.js",
    "content": "tinyMCE.addI18n('da.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/de.js",
    "content": "tinyMCE.addI18n('de.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/de_dlg.js",
    "content": "tinyMCE.addI18n('de.campsiteattachment_dlg',{\n    title: \"Insert link to article file\",\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/el.js",
    "content": "tinyMCE.addI18n('el.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/el_dlg.js",
    "content": "tinyMCE.addI18n('el.campsiteattachment_dlg',{\n    title: \"Insert link to article file\",\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/en.js",
    "content": "tinyMCE.addI18n('en.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/en_dlg.js",
    "content": "tinyMCE.addI18n('en.campsiteattachment_dlg',{\n    title: \"Insert link to article file\",\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/es.js",
    "content": "tinyMCE.addI18n('es.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"Debe seleccionar un texto antes de crear un enlace al archivo\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/es_dlg.js",
    "content": "tinyMCE.addI18n('es.campsiteattachment_dlg',{\n    title: \"Insertar enlace a archivo adjunto del art&iacute;culo\",\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/fr.js",
    "content": "tinyMCE.addI18n('fr.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/fr_dlg.js",
    "content": "tinyMCE.addI18n('fr.campsiteattachment_dlg',{\n    title: \"Insert link to article file\",\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/he.js",
    "content": "tinyMCE.addI18n('he.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/hr.js",
    "content": "tinyMCE.addI18n('hr.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/hr_dlg.js",
    "content": "tinyMCE.addI18n('hr.campsiteattachment_dlg',{\n    title: \"Insert link to article file\",\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/hu.js",
    "content": "tinyMCE.addI18n('hu.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/it.js",
    "content": "tinyMCE.addI18n('it.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/it_dlg.js",
    "content": "tinyMCE.addI18n('it.campsiteattachment_dlg',{\n    title: \"Insert link to article file\",\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/ka.js",
    "content": "tinyMCE.addI18n('ka.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/ko.js",
    "content": "tinyMCE.addI18n('ko.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/nl.js",
    "content": "tinyMCE.addI18n('nl.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/nl_dlg.js",
    "content": "tinyMCE.addI18n('nl.campsiteattachment_dlg',{\n    title: \"Insert link to article file\",\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/pl.js",
    "content": "tinyMCE.addI18n('pl.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/pl_dlg.js",
    "content": "tinyMCE.addI18n('pl.campsiteattachment_dlg',{\n    title: \"Insert link to article file\",\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/pt.js",
    "content": "tinyMCE.addI18n('pt.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/pt_dlg.js",
    "content": "tinyMCE.addI18n('pt.campsiteattachment_dlg',{\n    title:\"Insert link to article file\",\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/ro.js",
    "content": "tinyMCE.addI18n('ro.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/ro_dlg.js",
    "content": "tinyMCE.addI18n('ro.campsiteattachment_dlg',{\n    title: \"Insert link to article file\",\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/ru.js",
    "content": "tinyMCE.addI18n('ru.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/ru_dlg.js",
    "content": "tinyMCE.addI18n('ru.campsiteattachment_dlg',{\n    title: \"Insert link to article file\",\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/sr.js",
    "content": "tinyMCE.addI18n('sr.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link:\"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/sr_dlg.js",
    "content": "tinyMCE.addI18n('sr.campsiteattachment_dlg',{\n    title:\"Insert link to article file\",\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/sv.js",
    "content": "tinyMCE.addI18n('sv.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/sv_dlg.js",
    "content": "tinyMCE.addI18n('sv.campsiteattachment_dlg',{\n    title: \"Insert link to article file\",\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/tr.js",
    "content": "tinyMCE.addI18n('tr.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/uk.js",
    "content": "tinyMCE.addI18n('uk.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/langs/zh.js",
    "content": "tinyMCE.addI18n('zh.campsiteattachment',{\n    editor_button: \"File Attachment\",\n    select_to_link: \"You need to select some text before creating a link to a file\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteattachment/popup.php",
    "content": "<?php\r\n$GLOBALS['g_campsiteDir'] = dirname(dirname(dirname(dirname(dirname(__FILE__)))));\r\n\r\nrequire_once $GLOBALS['g_campsiteDir'] . '/application.php';\r\n$application->bootstrap();\r\n\r\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/User.php');\r\n\r\n$userId = Zend_Auth::getInstance()->getIdentity();\r\n$userTmp = new User($userId);\r\nif (!$userTmp->exists() || !$userTmp->isAdmin()) {\r\n\theader(\"Location: /$ADMIN/login.php\");\r\n\texit(0);\r\n}\r\nunset($userTmp);\r\n\r\nrequire_once('config.inc.php');\r\n\r\n?>\r\n<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\r\n<html>\r\n<head>\r\n  <title>{#campsiteattachment_dlg.title}</title>\r\n\r\n  <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\r\n  <link href=\"css/campsiteattachment.css\" rel=\"stylesheet\" type=\"text/css\" />\r\n  <script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n  <script type=\"text/javascript\" src=\"js/campsiteattachment.js\"></script>\r\n  <script type=\"text/javascript\" src=\"assets/popup.js\"></script>\r\n  <script type=\"text/javascript\" src=\"assets/dialog.js\"></script>\r\n  <script type=\"text/javascript\" src=\"assets/manager.js\"></script>\r\n</head>\r\n<body>\r\n  <form action=\"attachments.php\" id=\"uploadForm\" method=\"post\">\r\n  <fieldset>\r\n    <div class=\"dirs\">\r\n      <iframe src=\"attachments.php?article_id=<?php echo $_REQUEST['article_id']; ?>&language_selected=<?php echo $_REQUEST['language_selected']; ?>\" name=\"attachmentsManager\" id=\"attachmentsManager\" class=\"attachmentFrame\" scrolling=\"auto\" title=\"Attachment Selection\" frameborder=\"0\"></iframe>\r\n    </div>\r\n  </fieldset>\r\n\r\n  <!-- file attachment properties -->\r\n  <table class=\"inputTable\">\r\n    <input type=\"hidden\" id=\"f_attachment_id\" value=\"\" />\r\n    <input type=\"hidden\" id=\"f_url\" value=\"\" />\r\n    <input type=\"hidden\" id=\"f_description\" value=\"\" />\r\n  </table>\r\n  <!--// file attachment properties -->\r\n  <div style=\"text-align: right;\">\r\n    <hr />\r\n    <button type=\"button\" class=\"buttons\" onclick=\"CampsiteAttachmentDialog.insert();\">OK</button>\r\n    <button type=\"button\" class=\"buttons\" onclick=\"CampsiteAttachmentDialog.close();\">Cancel</button>\r\n  </div>\r\n  </form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitebreak/campsitebreak.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#campsitebreak_dlg.title}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/campsitebreak.js\"></script>\r\n</head>\r\n<body style=\"display: none\">\r\n\t<div align=\"center\">\r\n\t\t<div class=\"title\">{#campsitebreak_dlg.title}:<br /><br /></div>\r\n\r\n\t\t<table border=\"0\" cellspacing=\"0\" cellpadding=\"4\">\r\n\t\t  <tr>\r\n\t\t\t<td><a href=\"javascript:CampsitebreakDialog.insert('<!--break-->');\"><img src=\"img/smiley-cool.gif\" width=\"18\" height=\"18\" border=\"0\" alt=\"{#campsitebreak_dlg.cool}\" title=\"{#campsitebreak_dlg.cool}\" /></a></td>\r\n\t\t  </tr>\r\n\t\t</table>\r\n\t</div>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitebreak/editor_plugin.js",
    "content": "(function(){tinymce.create('tinymce.plugins.CampsitebreakPlugin',{init:function(ed,url){ed.addCommand('mceCampsitebreak',function(){ed.windowManager.open({file:url+'/campsitebreak.htm',width:250,height:160,inline:1},{plugin_url:url})});ed.addButton('campsitebreak',{title:'campsitebreak.campsitebreak_desc',cmd:'mceCampsitebreak',image:url+'/img/drupalbreak.gif'})},getInfo:function(){return{longname:'Campsitebreak',author:'campware.org',authorurl:'http://campware.org',infourl:'http://campware.org',version:tinymce.majorVersion+\".\"+tinymce.minorVersion}}});tinymce.PluginManager.add('campsitebreak',tinymce.plugins.CampsitebreakPlugin)})();\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitebreak/editor_plugin_src.js",
    "content": "/**\n * $Id: editor_plugin_src.js 520 2008-01-07 16:30:32Z spocke $\n *\n * @author Moxiecode\n * @copyright Copyright  2004-2008, Moxiecode Systems AB, All rights reserved.\n */\n\n(function() {\n    tinymce.create('tinymce.plugins.CampsitebreakPlugin', {\n        init : function(ed, url) {\n            // Register commands\n            ed.addCommand('mceCampsitebreak', function() {\n                ed.windowManager.open({\n                    file : url + '/campsitebreak.htm',\n                    width : 250,\n                    height : 160,\n                    inline : 1\n                }, {\n                    plugin_url : url\n                });\n            });\n\n            // Register buttons\n            ed.addButton('campsitebreak', {title : 'campsitebreak.campsitebreak_desc', cmd : 'mceCampsitebreak', image : url + '/img/drupalbreak.gif'});\n        },\n\n        getInfo : function() {\n            return {\n                longname : 'Campsitebreak',\n                author : 'campware.org',\n                authorurl : 'http://campware.org',\n                infourl : 'http://campware.org',\n                version : tinymce.majorVersion + \".\" + tinymce.minorVersion\n            };\n        }\n    });\n\n    // Register plugin\n    tinymce.PluginManager.add('campsitebreak', tinymce.plugins.CampsitebreakPlugin);\n})();\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitebreak/js/campsitebreak.js",
    "content": "tinyMCEPopup.requireLangPack();\r\n\r\nvar CampsitebreakDialog = {\r\n\tinit : function(ed) {\r\n\t\ttinyMCEPopup.resizeToInnerSize();\r\n\t},\r\n\r\n\tinsert : function(string) {\r\n\t\tvar ed = tinyMCEPopup.editor, dom = ed.dom;\r\n\r\n\t\ttinyMCEPopup.execCommand('mceInsertContent', false, dom.createHTML('dummy', {}, string));\r\n\r\n\t\ttinyMCEPopup.close();\r\n\t}\r\n};\r\n\r\ntinyMCEPopup.onInit.add(CampsitebreakDialog.init, CampsitebreakDialog);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitebreak/langs/cs_dlg.js",
    "content": "tinyMCE.addI18n('cs.campsitebreak_dlg',{\r\ntitle:\"Vlo\\u017Eit emotikon\",\r\ndesc:\"Emotikony\",\r\ncool:\"Cool\",\r\ncry:\"Cry\",\r\nembarassed:\"Embarassed\",\r\nfoot_in_mouth:\"Foot in mouth\",\r\nfrown:\"Frown\",\r\ninnocent:\"Innocent\",\r\nkiss:\"Kiss\",\r\nlaughing:\"Laughing\",\r\nmoney_mouth:\"Money mouth\",\r\nsealed:\"Sealed\",\r\nsmile:\"Smile\",\r\nsurprised:\"Surprised\",\r\ntongue_out:\"Tongue out\",\r\nundecided:\"Undecided\",\r\nwink:\"Wink\",\r\nyell:\"Yell\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitebreak/langs/en_dlg.js",
    "content": "tinyMCE.addI18n('en.campsitebreak_dlg',{\r\ntitle:\"Insert emotion\",\r\ndesc:\"Emotions\",\r\ncool:\"Cool\",\r\ncry:\"Cry\",\r\nembarassed:\"Embarassed\",\r\nfoot_in_mouth:\"Foot in mouth\",\r\nfrown:\"Frown\",\r\ninnocent:\"Innocent\",\r\nkiss:\"Kiss\",\r\nlaughing:\"Laughing\",\r\nmoney_mouth:\"Money mouth\",\r\nsealed:\"Sealed\",\r\nsmile:\"Smile\",\r\nsurprised:\"Surprised\",\r\ntongue_out:\"Tongue out\",\r\nundecided:\"Undecided\",\r\nwink:\"Wink\",\r\nyell:\"Yell\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitebreak/langs/es_dlg.js",
    "content": "tinyMCE.addI18n('es.campsitebreak_dlg',{\r\ntitle:\"Insertar emoticon\",\r\ndesc:\"Emoticones\",\r\ncool:\"Todo bien\",\r\ncry:\"Llora\",\r\nembarassed:\"Verg\\u00FCenza\",\r\nfoot_in_mouth:\"Pie en la boca\",\r\nfrown:\"Triste\",\r\ninnocent:\"Inocente\",\r\nkiss:\"Beso\",\r\nlaughing:\"Risa\",\r\nmoney_mouth:\"Dinero boca\",\r\nsealed:\"Sellado\",\r\nsmile:\"Sonrisa\",\r\nsurprised:\"Sorprendido\",\r\ntongue_out:\"Lengua fuera\",\r\nundecided:\"Indeciso\",\r\nwink:\"Gui\\u00F1o\",\r\nyell:\"Enfadado\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitebreak/langs/fr_dlg.js",
    "content": "tinyMCE.addI18n('fr.campsitebreak_dlg',{\r\ntitle:\"Ins\\u00E9rer \\u00E9motion\",\r\ndesc:\"\\u00C9motions\",\r\ncool:\"Cool\",\r\ncry:\"En pleurs\",\r\nembarassed:\"Embarass\\u00E9\",\r\nfoot_in_mouth:\"Pied de nez\",\r\nfrown:\"D\\u00E9\\u00E7u\",\r\ninnocent:\"Innocent\",\r\nkiss:\"Bisou\",\r\nlaughing:\"Rigolant\",\r\nmoney_mouth:\"Avare\",\r\nsealed:\"Bouche cousue\",\r\nsmile:\"Sourire\",\r\nsurprised:\"Surpris\",\r\ntongue_out:\"Langue tir\\u00E9e\",\r\nundecided:\"Non d\\u00E9cid\\u00E9\",\r\nwink:\"Clin d'oeil\",\r\nyell:\"Criant\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitebreak/langs/it_dlg.js",
    "content": "tinyMCE.addI18n('it.campsitebreak_dlg',{\r\ntitle:\"Inserisci faccina\",\r\ndesc:\"Faccina\",\r\ncool:\"Fico\",\r\ncry:\"Piango\",\r\nembarassed:\"Imbarazzato\",\r\nfoot_in_mouth:\"Piede in bocca\",\r\nfrown:\"Triste\",\r\ninnocent:\"Santarellino\",\r\nkiss:\"Bacio\",\r\nlaughing:\"Risatona\",\r\nmoney_mouth:\"Bocca danarosa\",\r\nsealed:\"Bocca sigillata\",\r\nsmile:\"Sorridente\",\r\nsurprised:\"Sorpreso\",\r\ntongue_out:\"Linguaccia\",\r\nundecided:\"Indeciso\",\r\nwink:\"Occhiolino\",\r\nyell:\"Arrabbiato\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitebreak/langs/pt_dlg.js",
    "content": "tinyMCE.addI18n('pt.campsitebreak_dlg',{\r\ntitle:\"Inserir emoticon\",\r\ndesc:\"Emoticons\",\r\ncool:\"Legal\",\r\ncry:\"Chor\\u00E3o\",\r\nembarassed:\"Embara\\u00E7ado\",\r\nfoot_in_mouth:\"Falei bobagem\",\r\nfrown:\"Decep\\u00E7\\u00E3o\",\r\ninnocent:\"Inocente\",\r\nkiss:\"Beijo\",\r\nlaughing:\"Riso\",\r\nmoney_mouth:\"Olho no dinheiro\",\r\nsealed:\"Bico calado\",\r\nsmile:\"Sorriso\",\r\nsurprised:\"Surpresa\",\r\ntongue_out:\"L\\u00EDngua de fora\",\r\nundecided:\"Indeciso\",\r\nwink:\"Piscadela\",\r\nyell:\"Ira\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitebreak/langs/ro_dlg.js",
    "content": "tinyMCE.addI18n('ro.campsitebreak_dlg',{\r\ntitle:\"Insereaz\\u0103 emoticon\",\r\ndesc:\"Emo\\u0163ii\",\r\ncool:\"Cool\",\r\ncry:\"Trist\",\r\nembarassed:\"Ru\\u015Finat\",\r\nfoot_in_mouth:\"Picior \\u00EEn gur\\u0103\",\r\nfrown:\"\\u00CEncruntat\",\r\ninnocent:\"Nevinovat\",\r\nkiss:\"Pupic\",\r\nlaughing:\"R\\u00E2de\",\r\nmoney_mouth:\"Bani \\u00EEn gur\\u0103\",\r\nsealed:\"Sigilat\",\r\nsmile:\"Z\\u00E2mbet\",\r\nsurprised:\"Surprins\",\r\ntongue_out:\"Cu limba afar\\u0103\",\r\nundecided:\"Indecis\",\r\nwink:\"Face cu ochiul\",\r\nyell:\"\\u0162ipa\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitebreak/langs/ru_dlg.js",
    "content": "tinyMCE.addI18n('ru.campsitebreak_dlg',{\r\ntitle:\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u044C \\u0441\\u043C\\u0430\\u0439\\u043B\\u0438\\u043A\",\r\ndesc:\"\\u0421\\u043C\\u0430\\u0439\\u043B\\u0438\\u043A\\u0438\",\r\ncool:\"\\u041A\\u043B\\u0451\\u0432\\u044B\\u0439\",\r\ncry:\"\\u041F\\u043B\\u0430\\u0447\\u0435\\u0442\",\r\nembarassed:\"\\u041E\\u0431\\u0430\\u043B\\u0434\\u0435\\u043B\",\r\nfoot_in_mouth:\"\\u041D\\u043E\\u0433\\u0430 \\u0432\\u043E \\u0440\\u0442\\u0443\",\r\nfrown:\"\\u0425\\u043C\\u0443\\u0440\\u044B\\u0439\",\r\ninnocent:\"\\u041D\\u0435\\u0432\\u0438\\u043D\\u043D\\u043E\\u0441\\u0442\\u044C\",\r\nkiss:\"\\u041F\\u043E\\u0446\\u0435\\u043B\\u0443\\u0439\",\r\nlaughing:\"\\u0421\\u043C\\u0435\\u0451\\u0442\\u0441\\u044F\",\r\nmoney_mouth:\"\\u041C\\u043D\\u043E\\u0433\\u043E \\u0434\\u0435\\u043D\\u0435\\u0433\",\r\nsealed:\"\\u0417\\u0430\\u043F\\u0435\\u0447\\u0430\\u0442\\u0430\\u043D\\u043E\",\r\nsmile:\"\\u0423\\u043B\\u044B\\u0431\\u0430\\u0435\\u0442\\u0441\\u044F\",\r\nsurprised:\"\\u0423\\u0434\\u0438\\u0432\\u043B\\u0451\\u043D\",\r\ntongue_out:\"\\u041F\\u043E\\u043A\\u0430\\u0437\\u044B\\u0432\\u0430\\u0435\\u0442 \\u044F\\u0437\\u044B\\u043A\",\r\nundecided:\"\\u0412 \\u043D\\u0435\\u0440\\u0435\\u0448\\u0438\\u0442\\u0435\\u043B\\u044C\\u043D\\u043E\\u0441\\u0442\\u0438\",\r\nwink:\"\\u041F\\u043E\\u0434\\u043C\\u0438\\u0433\\u0438\\u0432\\u0430\\u0435\\u0442\",\r\nyell:\"\\u0412\\u043E\\u043F\\u0438\\u0442\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitebreak/langs/sr_dlg.js",
    "content": "tinyMCE.addI18n('sr.campsitebreak_dlg',{\r\ntitle:\"Umetni emociju\",\r\ndesc:\"Emocije\",\r\ncool:\"Cool\",\r\ncry:\"Pla\\u010D\",\r\nembarassed:\"Sramim se\",\r\nfoot_in_mouth:\"Izlanuo se\",\r\nfrown:\"Mr\\u0161ti se\",\r\ninnocent:\"Nevina\\u0161ce\",\r\nkiss:\"Poljubac\",\r\nlaughing:\"Smeh\",\r\nmoney_mouth:\"Bogata\\u0161\",\r\nsealed:\"\\u0160utim\",\r\nsmile:\"Osmeh\",\r\nsurprised:\"Iznena\\u0111en\",\r\ntongue_out:\"Belji se\",\r\nundecided:\"Neodlu\\u010Dan\",\r\nwink:\"Namigiva\",\r\nyell:\"Vi\\u010De\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/assets/dialog.js",
    "content": "// Dialog v3.0 - Copyright (c) 2003-2004 interactivetools.com, inc.\n// This copyright notice MUST stay intact for use (see license.txt).\n//\n// Portions (c) dynarch.com, 2003-2004\n//\n// A free WYSIWYG editor replacement for <textarea> fields.\n// For full source code and docs, visit http://www.interactivetools.com/\n//\n// Version 3.0 developed by Mihai Bazon.\n//   http://dynarch.com/mishoo\n//\n// $Id: dialog.js 5087 2006-06-01 21:54:08Z paul $\n\n// Though \"Dialog\" looks like an object, it isn't really an object.  Instead\n// it's just namespace for protecting global symbols.\n\nfunction Dialog(url, action, init) {\n\tif (typeof init == \"undefined\") {\n\t\tinit = window;\t// pass this window object by default\n\t}\n\tDialog._geckoOpenModal(url, action, init);\n};\n\nDialog._parentEvent = function(ev) {\n\tsetTimeout( function() { if (Dialog._modal && !Dialog._modal.closed) { Dialog._modal.focus() } }, 50);\n\tif (Dialog._modal && !Dialog._modal.closed) {\n\t\tDialog._stopEvent(ev);\n\t}\n};\n\n\n// should be a function, the return handler of the currently opened dialog.\nDialog._return = null;\n\n// constant, the currently opened dialog\nDialog._modal = null;\n\n// the dialog will read it's args from this variable\nDialog._arguments = null;\n\nDialog._geckoOpenModal = function(url, action, init) {\n\t//var urlLink = \"hadialog\"+url.toString();\n\tvar myURL = \"hadialog\"+url;\n\tvar regObj = /\\W/g;\n\tmyURL = myURL.replace(regObj,'_');\n\tvar dlg = window.open(url, myURL,\n\t\t\t      \"toolbar=no,menubar=no,personalbar=no,width=10,height=10,\" +\n\t\t\t      \"scrollbars=no,resizable=yes,modal=yes,dependable=yes\");\n\tDialog._modal = dlg;\n\tDialog._arguments = init;\n\n\t// capture some window's events\n\tfunction capwin(w) {\n\t\tDialog._addEvent(w, \"click\", Dialog._parentEvent);\n\t\tDialog._addEvent(w, \"mousedown\", Dialog._parentEvent);\n\t\tDialog._addEvent(w, \"focus\", Dialog._parentEvent);\n\t};\n\t// release the captured events\n\tfunction relwin(w) {\n\t\tDialog._removeEvent(w, \"click\", Dialog._parentEvent);\n\t\tDialog._removeEvent(w, \"mousedown\", Dialog._parentEvent);\n\t\tDialog._removeEvent(w, \"focus\", Dialog._parentEvent);\n\t};\n\tcapwin(window);\n\t// capture other frames\n\tfor (var i = 0; i < window.frames.length; capwin(window.frames[i++]));\n\t// make up a function to be called when the Dialog ends.\n\tDialog._return = function (val) {\n\t\tif (val && action) {\n\t\t\taction(val);\n\t\t}\n\t\trelwin(window);\n\t\t// capture other frames\n\t\tfor (var i = 0; i < window.frames.length; relwin(window.frames[i++]));\n\t\tDialog._modal = null;\n\t};\n};\n\n\n// event handling\n\nDialog._addEvent = function(el, evname, func) {\n\tif (Dialog.is_ie) {\n\t\tel.attachEvent(\"on\" + evname, func);\n\t} else {\n\t\tel.addEventListener(evname, func, true);\n\t}\n};\n\n\nDialog._removeEvent = function(el, evname, func) {\n\tif (Dialog.is_ie) {\n\t\tel.detachEvent(\"on\" + evname, func);\n\t} else {\n\t\tel.removeEventListener(evname, func, true);\n\t}\n};\n\n\nDialog._stopEvent = function(ev) {\n\tif (Dialog.is_ie) {\n\t\tev.cancelBubble = true;\n\t\tev.returnValue = false;\n\t} else {\n\t\tev.preventDefault();\n\t\tev.stopPropagation();\n\t}\n};\n\nDialog.agt = navigator.userAgent.toLowerCase();\nDialog.is_ie\t   = ((Dialog.agt.indexOf(\"msie\") != -1) && (Dialog.agt.indexOf(\"opera\") == -1));\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/assets/images.js",
    "content": "/**\n * Functions for the image listing, used by images.php only\n * @author $Author: paul $\n * @version $Id: images.js 5087 2006-06-01 21:54:08Z paul $\n * @package ImageManager\n */\n\n\tfunction i18n(str) {\n\t\tif(I18N)\n\t\t  return (I18N[str] || str);\n\t\telse\n\t\t\treturn str;\n\t};\n\n\tfunction changeDir(newDir)\n\t{\n\t\tshowMessage('Loading');\n\t\tlocation.href = \"images.php?dir=\"+newDir;\n\t}\n\n\n\tfunction newFolder(dir, newDir)\n\t{\n\t\tlocation.href = \"images.php?dir=\"+dir+\"&newDir=\"+newDir;\n\t}\n\n\t//update the dir list in the parent window.\n\tfunction updateDir(newDir)\n\t{\n\t\tvar selection = window.top.document.getElementById('dirPath');\n\t\tif(selection)\n\t\t{\n\t\t\tfor(var i = 0; i < selection.length; i++)\n\t\t\t{\n\t\t\t\tvar thisDir = selection.options[i].text;\n\t\t\t\tif(thisDir == newDir)\n\t\t\t\t{\n\t\t\t\t\tselection.selectedIndex = i;\n\t\t\t\t\tshowMessage('Loading');\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction selectImage(p_image_template_id, p_filename, p_alt)\n\t{\n\t\tvar topDoc = window.top.document;\n\n\t\tvar obj = topDoc.getElementById('f_image_template_id');\n\t\tobj.value = p_image_template_id;\n\n\t\tvar obj = topDoc.getElementById('f_url');\n\t\tobj.value = p_filename;\n\n\t\tvar obj = topDoc.getElementById('f_alt');\n\t\tobj.value = p_alt;\n\n\t\tvar obj = topDoc.getElementById('f_caption');\n\t\tobj.value = p_alt;\n\n\t\t//alert('f_image_template_id: '+p_image_template_id+', f_url: '+p_filename+', f_alt: '+p_alt);\n\t}\n\n\tfunction showMessage(newMessage)\n\t{\n\t\tvar topDoc = window.top.document;\n\n\t\tvar message = topDoc.getElementById('message');\n\t\tvar messages = topDoc.getElementById('messages');\n\t\tif(message && messages)\n\t\t{\n\t\t\tif(message.firstChild)\n\t\t\t\tmessage.removeChild(message.firstChild);\n\n\t\t\tmessage.appendChild(topDoc.createTextNode(i18n(newMessage)));\n\n\t\t\tmessages.style.display = \"block\";\n\t\t}\n\t}\n\n\tfunction addEvent(obj, evType, fn)\n\t{\n\t\tif (obj.addEventListener) { obj.addEventListener(evType, fn, true); return true; }\n\t\telse if (obj.attachEvent) {  var r = obj.attachEvent(\"on\"+evType, fn);  return r;  }\n\t\telse {  return false; }\n\t}\n\n\tfunction confirmDeleteFile(file)\n\t{\n\t\tif(confirm(i18n(\"Delete file?\")))\n\t\t\treturn true;\n\n\t\treturn false;\n\t}\n\n\tfunction confirmDeleteDir(dir, count)\n\t{\n\t\tif(count > 0)\n\t\t{\n\t\t\talert(i18n(\"Please delete all files/folders inside the folder you wish to delete first.\"));\n\t\t\treturn;\n\t\t}\n\n\t\tif(confirm(i18n(\"Delete folder?\")))\n\t\t\treturn true;\n\n\t\treturn false;\n\t}\n\n\taddEvent(window, 'load', init);"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/assets/manager.js",
    "content": "/**\n * Functions for the ImageManager, used by manager.php only\n * @author $Author: paul $\n * @version $Id: manager.js 5087 2006-06-01 21:54:08Z paul $\n * @package ImageManager\n */\n\n\t//Translation\n//\tfunction i18n(str) {\n//\t\tif(I18N)\n//\t\t  return (I18N[str] || str);\n//\t\telse\n//\t\t\treturn str;\n//\t};\n\n\n\t//set the alignment options\n\tfunction setAlign(align)\n\t{\n\t\tvar selection = document.getElementById('f_align');\n\t\tfor(var i = 0; i < selection.length; i++)\n\t\t{\n\t\t\tif(selection.options[i].value == align)\n\t\t\t{\n\t\t\t\tselection.selectedIndex = i;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\t//initialise the form\n\tinit = function ()\n\t{\n\t\t__dlg_init();\n\n\t\t__dlg_translate('ImageManager');\n\n\t\tvar uploadForm = document.getElementById('uploadForm');\n\t\tif(uploadForm) uploadForm.target = 'imgManager';\n\n\t\tvar param = window.dialogArguments;\n\t\tif (param)\n\t\t{\n\t\t\tdocument.getElementById(\"f_image_template_id\").value = param[\"f_image_template_id\"];\n\t\t\tdocument.getElementById(\"f_url\").value = param[\"f_url\"];\n\t\t\tdocument.getElementById(\"f_alt\").value = param[\"f_alt\"];\n\t\t\tdocument.getElementById(\"f_caption\").value = param[\"f_caption\"];\n\t\t\tdocument.getElementById(\"f_border\").value = param[\"f_border\"];\n\t\t\tdocument.getElementById(\"f_vert\").value = param[\"f_vert\"];\n\t\t\tdocument.getElementById(\"f_horiz\").value = param[\"f_horiz\"];\n\t\t\tdocument.getElementById(\"f_width\").value = param[\"f_width\"];\n\t\t\tdocument.getElementById(\"f_height\").value = param[\"f_height\"];\n\t\t\tsetAlign(param[\"f_align\"]);\n\t\t}\n\n\t\tdocument.getElementById(\"f_alt\").focus();\n\t}\n\n\n\tfunction onCancel()\n\t{\n\t\t__dlg_close(null);\n\t\treturn false;\n\t};\n\n\tfunction onOK()\n\t{\n\t\t// pass data back to the calling window\n\t\t//var fields = [\"f_url\", \"f_alt\", \"f_align\", \"f_border\",\n\t\t//\t\t\t  \"f_horiz\", \"f_vert\", \"f_height\", \"f_width\"];\n\t\tvar fields = [\"f_url\", \"f_alt\", \"f_align\", \"f_caption\", \"f_image_template_id\"];\n\t\tvar param = new Object();\n\t\t//var debugMsg = \"\";\n\t\tfor (var i in fields)\n\t\t{\n\t\t\tvar id = fields[i];\n\t\t\tvar el = document.getElementById(id);\n\t\t\tif(id == \"f_url\" && el.value.indexOf('://') < 0 )\n\t\t\t\tparam[id] = makeURL(base_url,el.value);\n\t\t\telse\n\t\t\t\tparam[id] = el.value;\n\t\t\t//debugMsg += id + \":\" + param[id];\n\t\t}\n\t\t//alert(debugMsg);\n\t\t//__dlg_close(param);\n\t\ttinyMCEPopup.close();\n\t\treturn false;\n\t};\n\n\t//similar to the Files::makeFile() in Files.php\n\tfunction makeURL(pathA, pathB)\n\t{\n\t\tif(pathA.substring(pathA.length-1) != '/')\n\t\t\tpathA += '/';\n\n\t\tif(pathB.charAt(0) == '/');\n\t\t\tpathB = pathB.substring(1);\n\n\t\treturn pathA+pathB;\n\t}\n\n\n\tfunction updateDir(selection)\n\t{\n\t\tvar newDir = selection.options[selection.selectedIndex].value;\n\t\tchangeDir(newDir);\n\t}\n\n\tfunction goUpDir()\n\t{\n\t\tvar selection = document.getElementById('dirPath');\n\t\tvar currentDir = selection.options[selection.selectedIndex].text;\n\t\tif(currentDir.length < 2)\n\t\t\treturn false;\n\t\tvar dirs = currentDir.split('/');\n\n\t\tvar search = '';\n\n\t\tfor(var i = 0; i < dirs.length - 2; i++)\n\t\t{\n\t\t\tsearch += dirs[i]+'/';\n\t\t}\n\n\t\tfor(var i = 0; i < selection.length; i++)\n\t\t{\n\t\t\tvar thisDir = selection.options[i].text;\n\t\t\tif(thisDir == search)\n\t\t\t{\n\t\t\t\tselection.selectedIndex = i;\n\t\t\t\tvar newDir = selection.options[i].value;\n\t\t\t\tchangeDir(newDir);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction changeDir(newDir)\n\t{\n\t\tif(typeof imgManager != 'undefined')\n\t\t\timgManager.changeDir(newDir);\n\t}\n\n\tfunction toggleConstrains(constrains)\n\t{\n\t\tvar lockImage = document.getElementById('imgLock');\n\t\tvar constrains = document.getElementById('constrain_prop');\n\n\t\tif(constrains.checked)\n\t\t{\n\t\t\tlockImage.src = \"img/locked.gif\";\n\t\t\tcheckConstrains('width')\n\t\t}\n\t\telse\n\t\t{\n\t\t\tlockImage.src = \"img/unlocked.gif\";\n\t\t}\n\t}\n\n\tfunction checkConstrains(changed)\n\t{\n\t\t//alert(document.form1.constrain_prop);\n\t\tvar constrains = document.getElementById('constrain_prop');\n\n\t\tif(constrains.checked)\n\t\t{\n\t\t\tvar obj = document.getElementById('orginal_width');\n\t\t\tvar orginal_width = parseInt(obj.value);\n\t\t\tvar obj = document.getElementById('orginal_height');\n\t\t\tvar orginal_height = parseInt(obj.value);\n\n\t\t\tvar widthObj = document.getElementById('f_width');\n\t\t\tvar heightObj = document.getElementById('f_height');\n\n\t\t\tvar width = parseInt(widthObj.value);\n\t\t\tvar height = parseInt(heightObj.value);\n\n\t\t\tif(orginal_width > 0 && orginal_height > 0)\n\t\t\t{\n\t\t\t\tif(changed == 'width' && width > 0) {\n\t\t\t\t\theightObj.value = parseInt((width/orginal_width)*orginal_height);\n\t\t\t\t}\n\n\t\t\t\tif(changed == 'height' && height > 0) {\n\t\t\t\t\twidthObj.value = parseInt((height/orginal_height)*orginal_width);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction showMessage(newMessage)\n\t{\n\t\tvar message = document.getElementById('message');\n\t\tvar messages = document.getElementById('messages');\n\t\tif(message.firstChild)\n\t\t\tmessage.removeChild(message.firstChild);\n\n\t\tmessage.appendChild(document.createTextNode(i18n(newMessage)));\n\n\t\tmessages.style.display = \"block\";\n\t}\n\n\tfunction addEvent(obj, evType, fn)\n\t{\n\t\tif (obj.addEventListener) { obj.addEventListener(evType, fn, true); return true; }\n\t\telse if (obj.attachEvent) {  var r = obj.attachEvent(\"on\"+evType, fn);  return r;  }\n\t\telse {  return false; }\n\t}\n\n\tfunction doUpload()\n\t{\n\n\t\tvar uploadForm = document.getElementById('uploadForm');\n\t\tif(uploadForm)\n\t\t\tshowMessage('Uploading');\n\t}\n\n\tfunction refresh()\n\t{\n\t\tvar selection = document.getElementById('dirPath');\n\t\tupdateDir(selection);\n\t}\n\n\n\tfunction newFolder()\n\t{\n\t\tvar selection = document.getElementById('dirPath');\n\t\tvar dir = selection.options[selection.selectedIndex].value;\n\n\t\tDialog(\"newFolder.html\", function(param)\n\t\t{\n\t\t\tif (!param) // user must have pressed Cancel\n\t\t\t\treturn false;\n\t\t\telse\n\t\t\t{\n\t\t\t\tvar folder = param['f_foldername'];\n\t\t\t\tif(folder == thumbdir)\n\t\t\t\t{\n\t\t\t\t\talert(i18n('Invalid folder name, please choose another folder name.'));\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\n\t\t\t\tif (folder && folder != '' && typeof imgManager != 'undefined')\n\t\t\t\t\timgManager.newFolder(dir, encodeURI(folder));\n\t\t\t}\n\t\t}, null);\n\t}\n\n\taddEvent(window, 'load', init);\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/assets/popup.js",
    "content": "// htmlArea v3.0 - Copyright (c) 2002, 2003 interactivetools.com, inc.\n// This copyright notice MUST stay intact for use (see license.txt).\n//\n// Portions (c) dynarch.com, 2003\n//\n// A free WYSIWYG editor replacement for <textarea> fields.\n// For full source code and docs, visit http://www.interactivetools.com/\n//\n// Version 3.0 developed by Mihai Bazon.\n//   http://dynarch.com/mishoo\n//\n// $Id: popup.js 5087 2006-06-01 21:54:08Z paul $\n\n// Slightly modified for the ImageManager, window resizing is done only\n// by each window's script. Added translation for a few other HTML elements.\n\nfunction getAbsolutePos(el) {\n\tvar r = { x: el.offsetLeft, y: el.offsetTop };\n\tif (el.offsetParent) {\n\t\tvar tmp = getAbsolutePos(el.offsetParent);\n\t\tr.x += tmp.x;\n\t\tr.y += tmp.y;\n\t}\n\treturn r;\n};\n\nfunction comboSelectValue(c, val) {\n\tvar ops = c.getElementsByTagName(\"option\");\n\tfor (var i = ops.length; --i >= 0;) {\n\t\tvar op = ops[i];\n\t\top.selected = (op.value == val);\n\t}\n\tc.value = val;\n};\n\nfunction __dlg_onclose() {\n\tif(opener && opener.Dialog && opener.Dialog._arguments) {\n\t\tif(opener.Dialog._return)\n\t\t\topener.Dialog._return(null);\n\t}\n};\n\nfunction __dlg_init(bottom) {\n\tvar body = document.body;\n\tvar body_height = 0;\n\tif (typeof bottom == \"undefined\") {\n\t\tvar div = document.createElement(\"div\");\n\t\tbody.appendChild(div);\n\t\tvar pos = getAbsolutePos(div);\n\t\tbody_height = pos.y;\n\t} else {\n\t\tvar pos = getAbsolutePos(bottom);\n\t\tbody_height = pos.y + bottom.offsetHeight;\n\t}\n\tif(opener && opener.Dialog && opener.Dialog._arguments)\n\t\twindow.dialogArguments = opener.Dialog._arguments;\n\tif (!document.all) {\n\t\t//window.sizeToContent();\n\t\t//window.sizeToContent();\t// for reasons beyond understanding,\n\t\t\t\t\t// only if we call it twice we get the\n\t\t\t\t\t// correct size.\n\t\twindow.addEventListener(\"unload\", __dlg_onclose, true);\n\t\t// center on parent\n\t\tvar x = opener.screenX + (opener.outerWidth - window.outerWidth) / 2;\n\t\tvar y = opener.screenY + (opener.outerHeight - window.outerHeight) / 2;\n\t\twindow.moveTo(x, y);\n\t\t//window.innerWidth = body.offsetWidth + 5;\n\t\t//window.innerHeight = body_height + 2;\n\t} else {\n\t\t// window.dialogHeight = body.offsetHeight + 50 + \"px\";\n\t\t// window.dialogWidth = body.offsetWidth + \"px\";\n\t\t//window.resizeTo(body.offsetWidth, body_height);\n\t\tvar ch = body.clientHeight;\n\t\tvar cw = body.clientWidth;\n\t\t//window.resizeBy(body.offsetWidth - cw, body_height - ch);\n\t\tvar W = body.offsetWidth;\n\t\tvar H = 2 * body_height - ch;\n\t\tif(ch <= 0) H = body_height;\n\t\tvar x = (screen.availWidth - W) / 2;\n\t\tvar y = (screen.availHeight - H) / 2;\n\t\t\n\t\twindow.moveTo(x, y);\n\t}\n\tdocument.body.onkeypress = __dlg_close_on_esc;\n};\n\nfunction __dlg_translate(i18n) {\n\tvar types = [\"span\", \"option\", \"td\", \"button\", \"div\", \"label\", \"a\",\"img\", \"legend\"];\n\tfor (var type in types) {\n\t\tvar spans = document.getElementsByTagName(types[type]);\n\t\tfor (var i = spans.length; --i >= 0;) {\n\t\t\tvar span = spans[i];\n\t\t\tif (span.firstChild && span.firstChild.data) {\t\t\t\t\n\t\t\t\tvar txt = i18n[span.firstChild.data];\n\t\t\t\tif (txt) span.firstChild.data = txt;\n\t\t\t}\n\t\t\tif(span.title){\n\t\t\t\tvar txt = i18n[span.title];\n\t\t\t\tif(txt) span.title = txt;\n\t\t\t}\n\t\t\tif(span.alt){\n\t\t\t\tvar txt = i18n[span.alt];\n\t\t\t\tif(txt) span.alt = txt;\n\t\t\t}\n\t\t}\n\t}\n\tvar txt = i18n[document.title];\n\tif (txt)\n\t\tdocument.title = txt;\n};\n\n// closes the dialog and passes the return info upper.\nfunction __dlg_close(val) {\n\t//opener.Dialog._return(val);\n\ttinyMCEPopup.close();\n};\n\nfunction __dlg_close_on_esc(ev) {\n\tev || (ev = window.event);\n\tif (ev.keyCode == 27) {\n\t\twindow.close();\n\t\treturn false;\n\t}\n\treturn true;\n};\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/classes/Files.php",
    "content": "<?php\n/**\n * File Utilities.\n * @author $Author: paul $\n * @version $Id: Files.php 5087 2006-06-01 21:54:08Z paul $\n * @package ImageManager\n */\n\ndefine('FILE_ERROR_NO_SOURCE', 100);\ndefine('FILE_ERROR_COPY_FAILED', 101);\ndefine('FILE_ERROR_DST_DIR_FAILED', 102);\ndefine('FILE_COPY_OK', 103);\n\n/**\n * File Utilities\n * @author $Author: paul $\n * @version $Id: Files.php 5087 2006-06-01 21:54:08Z paul $\n * @package ImageManager\n * @subpackage files\n */\nclass Files \n{\n\t\n\t/**\n\t * Copy a file from source to destination. If unique == true, then if\n\t * the destination exists, it will be renamed by appending an increamenting \n\t * counting number.\n\t * @param string $source where the file is from, full path to the files required\n\t * @param string $destination_file name of the new file, just the filename\n\t * @param string $destination_dir where the files, just the destination dir,\n\t * e.g., /www/html/gallery/\n\t * @param boolean $unique create unique destination file if true.\n\t * @return string the new copied filename, else error if anything goes bad.\n\t */\n\tfunction copyFile($source, $destination_dir, $destination_file, $unique=true) \n\t{\n\t\tif(!(file_exists($source) && is_file($source))) \n\t\t\treturn FILE_ERROR_NO_SOURCE;\n\n\t\t$destination_dir = Files::fixPath($destination_dir);\n\n\t\tif(!is_dir($destination_dir)) \n\t\t\tReturn FILE_ERROR_DST_DIR_FAILED;\n\n\t\t$filename = Files::escape($destination_file);\n\n\t\tif($unique) \n\t\t{\n\t\t\t$dotIndex = strrpos($destination_file, '.');\n\t\t\t$ext = '';\n\t\t\tif(is_int($dotIndex)) \n\t\t\t{\n\t\t\t\t$ext = substr($destination_file, $dotIndex);\n\t\t\t\t$base = substr($destination_file, 0, $dotIndex);\n\t\t\t}\n\t\t\t$counter = 0;\n\t\t\twhile(is_file($destination_dir.$filename)) \n\t\t\t{\n\t\t\t\t$counter++;\n\t\t\t\t$filename = $base.'_'.$counter.$ext;\n\t\t\t}\n\t\t}\n\n\t\tif (!copy($source, $destination_dir.$filename))\n\t\t\treturn FILE_ERROR_COPY_FAILED;\n\t\t\n\t\t//verify that it copied, new file must exists\n\t\tif (is_file($destination_dir.$filename))\n\t\t\tReturn $filename;\n\t\telse\n\t\t\treturn FILE_ERROR_COPY_FAILED;\n\t}\n\n\t/**\n\t * Create a new folder.\n\t * @param string $newFolder specifiy the full path of the new folder.\n\t * @return boolean true if the new folder is created, false otherwise.\n\t */\n\tfunction createFolder($newFolder) \n\t{\n\t\tmkdir ($newFolder, 0777);\n\t\treturn chmod($newFolder, 0777);\n\t}\n\n\n\t/**\n\t * Escape the filenames, any non-word characters will be\n\t * replaced by an underscore.\n\t * @param string $filename the orginal filename\n\t * @return string the escaped safe filename\n\t */\n\tfunction escape($filename) \n\t{\n\t\tReturn preg_replace('/[^\\w\\._]/', '_', $filename);\n\t}\n\n\t/**\n\t * Delete a file.\n\t * @param string $file file to be deleted\n\t * @return boolean true if deleted, false otherwise.\n\t */\n\tfunction delFile($file) \n\t{\n\t\tif(is_file($file)) \n\t\t\tReturn unlink($file);\n\t\telse\n\t\t\tReturn false;\n\t}\n\n\t/**\n\t * Delete folder(s), can delete recursively.\n\t * @param string $folder the folder to be deleted.\n\t * @param boolean $recursive if true, all files and sub-directories\n\t * are delete. If false, tries to delete the folder, can throw\n\t * error if the directory is not empty.\n\t * @return boolean true if deleted.\n\t */\n\tfunction delFolder($folder, $recursive=false) \n\t{\n\t\t$deleted = true;\n\t\tif($recursive) \n\t\t{\n\t\t\t$d = dir($folder);\n\t\t\twhile (false !== ($entry = $d->read())) \n\t\t\t{\n\t\t\t\tif ($entry != '.' && $entry != '..')\n\t\t\t\t{\n\t\t\t\t\t$obj = Files::fixPath($folder).$entry;\n\t\t\t\t\t//var_dump($obj);\n\t\t\t\t\tif (is_file($obj))\n\t\t\t\t\t{\n\t\t\t\t\t\t$deleted &= Files::delFile($obj);\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t\telse if(is_dir($obj))\n\t\t\t\t\t{\n\t\t\t\t\t\t$deleted &= Files::delFolder($obj, $recursive);\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t}\n\t\t\t$d->close();\n\n\t\t}\n\n\t\t//$folder= $folder.'/thumbs';\n\t\t//var_dump($folder);\n\t\tif(is_dir($folder)) \n\t\t\t$deleted &= rmdir($folder);\n\t\telse\n\t\t\t$deleted &= false;\n\n\t\tReturn $deleted;\n\t}\n\n\t/**\n\t * Append a / to the path if required.\n\t * @param string $path the path\n\t * @return string path with trailing /\n\t */\n\tstatic function fixPath($path) \n\t{\n\t\t//append a slash to the path if it doesn't exists.\n\t\tif(!(substr($path,-1) == '/'))\n\t\t\t$path .= '/';\n\t\tReturn $path;\n\t}\n\n\t/**\n\t * Concat two paths together. Basically $pathA+$pathB\n\t * @param string $pathA path one\n\t * @param string $pathB path two\n\t * @return string a trailing slash combinded path.\n\t */\n\tstatic function makePath($pathA, $pathB) \n\t{\n\t\t$pathA = Files::fixPath($pathA);\n\t\tif(substr($pathB,0,1)=='/')\n\t\t\t$pathB = substr($pathB,1);\n\t\tReturn Files::fixPath($pathA.$pathB);\n\t}\n\n\t/**\n\t * Similar to makePath, but the second parameter\n\t * is not only a path, it may contain say a file ending.\n\t * @param string $pathA the leading path\n\t * @param string $pathB the ending path with file\n\t * @return string combined file path.\n\t */\n\tfunction makeFile($pathA, $pathB) \n\t{\t\t\n\t\t$pathA = Files::fixPath($pathA);\n\t\tif(substr($pathB,0,1)=='/')\n\t\t\t$pathB = substr($pathB,1);\n\t\t\n\t\tReturn $pathA.$pathB;\n\t}\n\n\t\n\t/**\n\t * Format the file size, limits to Mb.\n\t * @param int $size the raw filesize\n\t * @return string formated file size.\n\t */\n\tfunction formatSize($size) \n\t{\n\t\tif($size < 1024) \n\t\t\treturn $size.' bytes';\t\n\t\telse if($size >= 1024 && $size < 1024*1024) \n\t\t\treturn sprintf('%01.2f',$size/1024.0).' Kb';\t\n\t\telse\n\t\t\treturn sprintf('%01.2f',$size/(1024.0*1024)).' Mb';\t\n\t}\n}\n\n?>"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/classes/ImageManager.php",
    "content": "<?php\n/**\n * ImageManager, list images, directories, and thumbnails.\n * @author $Author: paul $\n * @version $Id: ImageManager.php 5087 2006-06-01 21:54:08Z paul $\n * @package ImageManager\n */\n\nrequire_once('Files.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleImage.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Image.php');\n\n/**\n * ImageManager Class.\n * @author $Author: paul $\n * @version $Id: ImageManager.php 5087 2006-06-01 21:54:08Z paul $\n */\nclass ImageManager\n{\n\t/**\n\t * Configuration array.\n\t */\n\tvar $config;\n\n\t/**\n\t * Array of directory information.\n\t */\n\tvar $dirs;\n\n\t/**\n\t * Constructor. Create a new Image Manager instance.\n\t * @param array $config configuration array, see config.inc.php\n\t */\n\tfunction __construct($config)\n\t{\n\t\t$this->config = $config;\n\t}\n\n\t/**\n\t * Get the base directory.\n\t * @return string base dir, see config.inc.php\n\t */\n\tfunction getBaseDir()\n\t{\n\t\tReturn $this->config['base_dir'];\n\t}\n\n\t/**\n\t * Get the base URL.\n\t * @return string base url, see config.inc.php\n\t */\n\tfunction getBaseURL()\n\t{\n\t\tReturn $this->config['base_url'];\n\t}\n\n\tfunction isValidBase()\n\t{\n\t\treturn is_dir($this->getBaseDir());\n\t}\n\n\t/**\n\t * Get the tmp file prefix.\n     * @return string tmp file prefix.\n\t */\n\tfunction getTmpPrefix()\n\t{\n\t\tReturn $this->config['tmp_prefix'];\n\t}\n\n\t/**\n\t * Get the sub directories in the base dir.\n\t * Each array element contain\n\t * the relative path (relative to the base dir) as key and the\n\t * full path as value.\n\t * @return array of sub directries\n\t * <code>array('path name' => 'full directory path', ...)</code>\n\t */\n\tfunction getDirs()\n\t{\n\t\tif(is_null($this->dirs))\n\t\t{\n\t\t\t$dirs = $this->_dirs($this->getBaseDir(),'/');\n\t\t\tksort($dirs);\n\t\t\t$this->dirs = $dirs;\n\t\t}\n\t\treturn $this->dirs;\n\t}\n\n\t/**\n\t * Recursively travese the directories to get a list\n\t * of accessable directories.\n\t * @param string $base the full path to the current directory\n\t * @param string $path the relative path name\n\t * @return array of accessiable sub-directories\n\t * <code>array('path name' => 'full directory path', ...)</code>\n\t */\n\tfunction _dirs($base, $path)\n\t{\n\t\t$base = Files::fixPath($base);\n\t\t$dirs = array();\n\n\t\tif($this->isValidBase() == false)\n\t\t\treturn $dirs;\n\n\t\t$d = @dir($base);\n\n\t\twhile (false !== ($entry = $d->read()))\n\t\t{\n\t\t\t//If it is a directory, and it doesn't start with\n\t\t\t// a dot, and if is it not the thumbnail directory\n\t\t\tif(is_dir($base.$entry)\n\t\t\t\t&& substr($entry,0,1) != '.'\n\t\t\t\t&& $this->isThumbDir($entry) == false)\n\t\t\t{\n\t\t\t\t$relative = Files::fixPath($path.$entry);\n\t\t\t\t$fullpath = Files::fixPath($base.$entry);\n\t\t\t\t$dirs[$relative] = $fullpath;\n\t\t\t\t$dirs = array_merge($dirs, $this->_dirs($fullpath, $relative));\n\t\t\t}\n\t\t}\n\t\t$d->close();\n\n\t\tReturn $dirs;\n\t}\n\n\t/**\n\t * Get all the files and directories of a relative path.\n\t *\n\t * @param string $path relative path to be base path.\n\t *\n\t * @return array of file and path information.\n\t * <code>\n\t *   array(0 => array('relative'=>'fullpath',...),\n\t *\t\t   1 => array('filename'=>fileinfo array(),...)\n\t * </code>\n\t * fileinfo array:\n\t * <code>\n\t *   array('url'=>'full url',\n\t *         'relative'=>'relative to base',\n\t *         'fullpath'=>'full file path',\n\t *         'image'=>imageInfo array() false if not image,\n\t *         'stat' => filestat)\n\t * </code>\n\t */\n\tfunction getFiles($path, $articleId)\n\t{\n\t\t$files = array();\n\t\t$dirs = array();\n\n\t\tif($this->isValidBase() == false)\n\t\t\treturn array($files,$dirs);\n\n\t\t$path = Files::fixPath($path);\n\t\t$base = Files::fixPath($this->getBaseDir());\n\t\t$fullpath = Files::makePath($base,$path);\n\n\t\t$articleImages = ArticleImage::GetImagesByArticleNumber($articleId);\n\t\tforeach ($articleImages as $articleImage) {\n\t\t\t$image = $articleImage->getImage();\n\t\t\t$img = $this->getImageInfo($image->getImageStorageLocation());\n\t\t\tif (is_array($img) || !$this->config['validate_images']) {\n\t\t\t\t$file['template_id'] = $articleImage->getTemplateId();\n\t\t\t\t$file['url'] = $image->getImageUrl();\n\t\t\t\t$file['image'] = $img;\n\t\t\t\t$file['image_object'] = $image;\n\t\t\t\t$file['alt'] = htmlspecialchars($image->getDescription(), ENT_QUOTES);\n\t\t\t\t$files[$articleImage->getTemplateId()] = $file;\n\t\t\t}\n\t\t}\n\n\t\tksort($dirs);\n\t\tksort($files);\n\t\treturn array($dirs, $files);\n\t}\n\n\n\tfunction getImageByNumber($articleId, $imageNumber)\n\t{\n\t    $articleImage = new ArticleImage($articleId, null, $imageNumber);\n\t    $image = $articleImage->getImage();\n\t    return $image;\n\t}\n\n\n\t/**\n\t * Count the number of files and directories in a given folder\n\t * minus the thumbnail folders and thumbnails.\n\t */\n\tfunction countFiles($path)\n\t{\n\t\t$total = 0;\n\n\t\tif(is_dir($path))\n\t\t{\n\t\t\t$d = @dir($path);\n\n\t\t\twhile (false !== ($entry = $d->read()))\n\t\t\t{\n\t\t\t\t//echo $entry.\"<br>\";\n\t\t\t\tif(substr($entry,0,1) != '.'\n\t\t\t\t\t&& $this->isThumbDir($entry) == false\n\t\t\t\t\t&& $this->isTmpFile($entry) == false\n\t\t\t\t\t&& $this->isThumb($entry) == false)\n\t\t\t\t{\n\t\t\t\t\t$total++;\n\t\t\t\t}\n\t\t\t}\n\t\t\t$d->close();\n\t\t}\n\t\treturn $total;\n\t}\n\n\t/**\n\t * Get image size information.\n\t * @param string $file the image file\n\t * @return array of getImageSize information,\n\t *  false if the file is not an image.\n\t */\n\tfunction getImageInfo($file)\n\t{\n\t\tReturn @getImageSize($file);\n\t}\n\n\t/**\n\t * Check if the file contains the thumbnail prefix.\n\t * @param string $file filename to be checked\n\t * @return true if the file contains the thumbnail prefix, false otherwise.\n\t */\n\tfunction isThumb($file)\n\t{\n\t\t$len = strlen($this->config['thumbnail_prefix']);\n\t\tif(substr($file,0,$len)==$this->config['thumbnail_prefix'])\n\t\t\tReturn true;\n\t\telse\n\t\t\tReturn false;\n\t}\n\n\t/**\n\t * Check if the given directory is a thumbnail directory.\n\t * @param string $entry directory name\n\t * @return true if it is a thumbnail directory, false otherwise\n\t */\n\tfunction isThumbDir($entry)\n\t{\n\t\tif($this->config['thumbnail_dir'] == false\n\t\t\t|| strlen(trim($this->config['thumbnail_dir'])) == 0)\n\t\t\tReturn false;\n\t\telse\n\t\t\tReturn ($entry == $this->config['thumbnail_dir']);\n\t}\n\n\t/**\n\t * Check if the given file is a tmp file.\n\t * @param string $file file name\n\t * @return boolean true if it is a tmp file, false otherwise\n\t */\n\tfunction isTmpFile($file)\n\t{\n\t\t$len = strlen($this->config['tmp_prefix']);\n\t\tif(substr($file,0,$len)==$this->config['tmp_prefix'])\n\t\t\tReturn true;\n\t\telse\n\t\t\tReturn false;\n\t}\n\n\t/**\n\t * For a given image file, get the respective thumbnail filename\n\t * no file existence check is done.\n\t * @param string $fullpathfile the full path to the image file\n\t * @return string of the thumbnail file\n\t */\n\tfunction getThumbName($fullpathfile)\n\t{\n\t\t$path_parts = pathinfo($fullpathfile);\n\n\t\t$filenameParts = preg_split(\"[-.]\", $path_parts['basename']);\n\t\t$imageId = $filenameParts[2];\n\t\t$extension = $filenameParts[3];\n\t\t$thumbnail = $this->config['thumbnail_prefix'].$imageId.'.'.$extension;\n\t\t//$thumbnail = $this->config['thumbnail_prefix'].$path_parts['basename'];\n\n\t\tif($this->config['safe_mode'] == true\n\t\t\t|| strlen(trim($this->config['thumbnail_dir'])) == 0)\n\t\t{\n\t\t\tReturn Files::makeFile($path_parts['dirname'],$thumbnail);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tif(strlen(trim($this->config['thumbnail_dir'])) > 0)\n\t\t\t{\n\t\t\t\t$path = Files::makePath($path_parts['dirname'],$this->config['thumbnail_dir']);\n\t\t\t\tif(!is_dir($path))\n\t\t\t\t\tFiles::createFolder($path);\n\t\t\t\tReturn Files::makeFile($path,$thumbnail);\n\t\t\t}\n\t\t\telse //should this ever happen?\n\t\t\t{\n\t\t\t\t//error_log('ImageManager: Error in creating thumbnail name');\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Similar to getThumbName, but returns the URL, base on the\n\t * given base_url in config.inc.php\n\t * @param string $relative the relative image file name,\n\t * relative to the base_dir path\n\t * @return string the url of the thumbnail\n\t */\n\tfunction getThumbURL($relative)\n\t{\n\t\t$path_parts = pathinfo($relative);\n\t\t$filenameParts = preg_split(\"[-.]\", $path_parts['basename']);\n\t\t$imageId = $filenameParts[2];\n\t\t$extension = $filenameParts[3];\n\t\t$thumbnail = $this->config['thumbnail_prefix'].$imageId.'.'.$extension;\n\t\t//$thumbnail = $this->config['thumbnail_prefix'].$path_parts['basename'];\n\n\t\tif($path_parts['dirname']=='\\\\') $path_parts['dirname']='/';\n\n\t\tif($this->config['safe_mode'] == true\n\t\t\t|| strlen(trim($this->config['thumbnail_dir'])) == 0)\n\t\t{\n\t\t\tReturn Files::makeFile($this->getBaseURL(),$thumbnail);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tif(strlen(trim($this->config['thumbnail_dir'])) > 0)\n\t\t\t{\n\t\t\t\t$path = Files::makePath($path_parts['dirname'],$this->config['thumbnail_dir']);\n\t\t\t\t$url_path = Files::makePath($this->getBaseURL(), $path);\n\t\t\t\tReturn Files::makeFile($url_path,$thumbnail);\n\t\t\t}\n\t\t\telse //should this ever happen?\n\t\t\t{\n\t\t\t\t//error_log('ImageManager: Error in creating thumbnail url');\n\t\t\t}\n\n\t\t}\n\t}\n\n\t/**\n\t * Check if the given path is part of the subdirectories\n\t * under the base_dir.\n\t * @param string $path the relative path to be checked\n\t * @return boolean true if the path exists, false otherwise\n\t */\n\tfunction validRelativePath($path)\n\t{\n\t\t$dirs = $this->getDirs();\n\t\tif($path == '/')\n\t\t\tReturn true;\n\t\t//check the path given in the url against the\n\t\t//list of paths in the system.\n\t\tfor($i = 0; $i < count($dirs); $i++)\n\t\t{\n\t\t\t$key = key($dirs);\n\t\t\t//we found the path\n\t\t\tif($key == $path)\n\t\t\t\tReturn true;\n\n\t\t\tnext($dirs);\n\t\t}\n\t\tReturn false;\n\t}\n\n\t/**\n\t * Process uploaded files, assumes the file is in\n\t * $_FILES['upload'] and $_POST['dir'] is set.\n\t * The dir must be relative to the base_dir and exists.\n\t * If 'validate_images' is set to true, only file with\n\t * image dimensions will be accepted.\n\t * @return null\n\t */\n\tfunction processUploads()\n\t{\n\t\tif($this->isValidBase() == false)\n\t\t\treturn;\n\n\t\t$relative = null;\n\n\t\tif(isset($_POST['dir']))\n\t\t\t$relative = rawurldecode($_POST['dir']);\n\t\telse\n\t\t\treturn;\n\n\t\t//check for the file, and must have valid relative path\n\t\tif(isset($_FILES['upload']) && $this->validRelativePath($relative))\n\t\t{\n\t\t\t$this->_processFiles($relative, $_FILES['upload']);\n\t\t}\n\t}\n\n\t/**\n\t * Process upload files. The file must be an\n\t * uploaded file. If 'validate_images' is set to\n\t * true, only images will be processed. Any duplicate\n\t * file will be renamed. See Files::copyFile for details\n\t * on renaming.\n\t * @param string $relative the relative path where the file\n\t * should be copied to.\n\t * @param array $file the uploaded file from $_FILES\n\t * @return boolean true if the file was processed successfully,\n\t * false otherwise\n\t */\n\tfunction _processFiles($relative, $file)\n\t{\n\n\t\tif($file['error']!=0)\n\t\t{\n\t\t\tReturn false;\n\t\t}\n\n\t\tif(!is_file($file['tmp_name']))\n\t\t{\n\t\t\tReturn false;\n\t\t}\n\n\t\tif(!is_uploaded_file($file['tmp_name']))\n\t\t{\n\t\t\tFiles::delFile($file['tmp_name']);\n\t\t\tReturn false;\n\t\t}\n\n\n\t\tif($this->config['validate_images'] == true)\n\t\t{\n\t\t\t$imgInfo = @getImageSize($file['tmp_name']);\n\t\t\tif(!is_array($imgInfo))\n\t\t\t{\n\t\t\t\tFiles::delFile($file['tmp_name']);\n\t\t\t\tReturn false;\n\t\t\t}\n\t\t}\n\n\t\t//now copy the file\n\t\t$path = Files::makePath($this->getBaseDir(),$relative);\n\t\t$result = Files::copyFile($file['tmp_name'], $path, $file['name']);\n\n\t\t//no copy error\n\t\tif(!is_int($result))\n\t\t{\n\t\t\tFiles::delFile($file['tmp_name']);\n\t\t\tReturn true;\n\t\t}\n\n\t\t//delete tmp files.\n\t\tFiles::delFile($file['tmp_name']);\n\t\tReturn false;\n\t}\n\n\t/**\n\t * Get the URL of the relative file.\n\t * basically appends the relative file to the\n\t * base_url given in config.inc.php\n\t * @param string $relative a file the relative to the base_dir\n\t * @return string the URL of the relative file.\n\t */\n\tfunction getFileURL($relative)\n\t{\n\t\tReturn Files::makeFile($this->getBaseURL(),$relative);\n\t}\n\n\t/**\n\t * Get the fullpath to a relative file.\n\t * @param string $relative the relative file.\n\t * @return string the full path, .ie. the base_dir + relative.\n\t */\n\tfunction getFullPath($relative)\n\t{\n\t\tReturn Files::makeFile($this->getBaseDir(),$relative);;\n\t}\n\n\t/**\n\t * Get the default thumbnail.\n\t * @return string default thumbnail, empty string if\n\t * the thumbnail doesn't exist.\n\t */\n\tfunction getDefaultThumb()\n\t{\n\t\tif(is_file($this->config['default_thumbnail']))\n\t\t\tReturn $this->config['default_thumbnail'];\n\t\telse\n\t\t\tReturn '';\n\t}\n\n\n\t/**\n\t * Get the thumbnail url to be displayed.\n\t * If the thumbnail exists, and it is up-to-date\n\t * the thumbnail url will be returns. If the\n\t * file is not an image, a default image will be returned.\n\t * If it is an image file, and no thumbnail exists or\n\t * the thumbnail is out-of-date (i.e. the thumbnail\n\t * modified time is less than the original file)\n\t * then a thumbs.php?img=filename.jpg is returned.\n\t * The thumbs.php url will generate a new thumbnail\n\t * on the fly. If the image is less than the dimensions\n\t * of the thumbnails, the image will be display instead.\n\t * @param string $relative the relative image file.\n\t * @return string the url of the thumbnail, be it\n\t * actually thumbnail or a script to generate the\n\t * thumbnail on the fly.\n\t */\n\tfunction getThumbnail($relative)\n\t{\n\t\t$fullpath = Files::makeFile($this->getBaseDir(),$relative);\n\n\t\t//not a file???\n\t\tif(!is_file($fullpath))\n\t\t\tReturn $this->getDefaultThumb();\n\n\t\t$imgInfo = @getImageSize($fullpath);\n\n\t\t//not an image\n\t\tif(!is_array($imgInfo))\n\t\t\tReturn $this->getDefaultThumb();\n\n\t\t//the original image is smaller than thumbnails,\n\t\t//so just return the url to the original image.\n\t\tif ($imgInfo[0] <= $this->config['thumbnail_width']\n\t\t && $imgInfo[1] <= $this->config['thumbnail_height'])\n\t\t\tReturn $this->getFileURL($relative);\n\n\t\t$thumbnail = $this->getThumbName($fullpath);\n\n\t\t//check for thumbnails, if exists and\n\t\t// it is up-to-date, return the thumbnail url\n\t\tif(is_file($thumbnail))\n\t\t{\n\t\t\tif(filemtime($thumbnail) >= filemtime($fullpath))\n\t\t\t\tReturn $this->getThumbURL($relative);\n\t\t}\n\n\t\t//well, no thumbnail was found, so ask the thumbs.php\n\t\t//to generate the thumbnail on the fly.\n\t\tReturn 'thumbs.php?img='.rawurlencode($relative);\n\t}\n\n\t/**\n\t * Delete and specified files.\n\t * @return boolean true if delete, false otherwise\n\t */\n\tfunction deleteFiles()\n\t{\n\t\tif(isset($_GET['delf']))\n\t\t\t$this->_delFile(rawurldecode($_GET['delf']));\n\t}\n\n\t/**\n\t * Delete and specified directories.\n\t * @return boolean true if delete, false otherwise\n\t */\n\tfunction deleteDirs()\n\t{\n\t\t if(isset($_GET['deld']))\n\t\t\treturn $this->_delDir(rawurldecode($_GET['deld']));\n\t\t else\n\t\t\t Return false;\n\t}\n\n\t/**\n\t * Delete the relative file, and any thumbnails.\n\t * @param string $relative the relative file.\n\t * @return boolean true if deleted, false otherwise.\n\t */\n\tfunction _delFile($relative)\n\t{\n\t\t$fullpath = Files::makeFile($this->getBaseDir(),$relative);\n\n\t\t//check that the file is an image\n\t\tif($this->config['validate_images'] == true)\n\t\t{\n\t\t\tif(!is_array($this->getImageInfo($fullpath)))\n\t\t\t\treturn false; //hmmm not an Image!!???\n\t\t}\n\n\t\t$thumbnail = $this->getThumbName($fullpath);\n\n\t\tif(Files::delFile($fullpath))\n\t\t\tReturn Files::delFile($thumbnail);\n\t\telse\n\t\t\tReturn false;\n\t}\n\n\t/**\n\t * Delete directories recursively.\n\t * @param string $relative the relative path to be deleted.\n\t * @return boolean true if deleted, false otherwise.\n\t */\n\tfunction _delDir($relative)\n\t{\n\t\t$fullpath = Files::makePath($this->getBaseDir(),$relative);\n\t\tif($this->countFiles($fullpath) <= 0)\n\t\t\treturn Files::delFolder($fullpath,true); //delete recursively.\n\t\telse\n\t\t\tReturn false;\n\t}\n\n\t/**\n\t * Create new directories.\n\t * If in safe_mode, nothing happens.\n\t * @return boolean true if created, false otherwise.\n\t */\n\tfunction processNewDir()\n\t{\n\t\tif($this->config['safe_mode'] == true)\n\t\t\tReturn false;\n\n\t\tif(isset($_GET['newDir']) && isset($_GET['dir']))\n\t\t{\n\t\t\t$newDir = rawurldecode($_GET['newDir']);\n\t\t\t$dir = rawurldecode($_GET['dir']);\n\t\t\t$path = Files::makePath($this->getBaseDir(),$dir);\n\t\t\t$fullpath = Files::makePath($path, Files::escape($newDir));\n\t\t\tif(is_dir($fullpath))\n\t\t\t\tReturn false;\n\n\t\t\tReturn Files::createFolder($fullpath);\n\t\t}\n\t}\n}\n\n?>\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/config.inc.php",
    "content": "<?php\n/**\n * Image Manager configuration file.\n * @author $Author: holman $\n * @author $Author: vlad $\n * @package ImageManager\n */\n$GLOBALS['g_campsiteDir'] = dirname(dirname(dirname(dirname(dirname(__FILE__)))));\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/User.php');\n\nrequire_once $GLOBALS['g_campsiteDir'] . '/application.php';\n$application->bootstrap();\n\n$userId = Zend_Auth::getInstance()->getIdentity();\n$userTmp = new User($userId);\nif (!$userTmp->exists() || !$userTmp->isAdmin()) {\n\theader(\"Location: /$ADMIN/login.php\");\n\texit(0);\n}\nunset($userTmp);\n\n\nrequire_once($GLOBALS['g_campsiteDir'].'/conf/configuration.php');\n\nglobal $Campsite;\n\n\n/*\n File system path to the directory you want to manage the images\n for multiple user systems, set it dynamically.\n\n NOTE: This directory requires write access by PHP. That is,\n       PHP must be able to create files in this directory.\n\t   Able to create directories is nice, but not necessary.\n*/\n$IMConfig['base_dir'] = $Campsite['IMAGE_DIRECTORY'];\n\n/*\n The URL to the above path, the web browser needs to be able to see it.\n It can be protected via .htaccess on apache or directory permissions on IIS,\n check you web server documentation for futher information on directory protection\n If this directory needs to be publicly accessiable, remove scripting capabilities\n for this directory (i.e. disable PHP, Perl, CGI). We only want to store assets\n in this directory and its subdirectories.\n*/\n$IMConfig['base_url'] = $Campsite['IMAGE_BASE_URL'];\n\n/*\n  Possible values: true, false\n\n  TRUE - If PHP on the web server is in safe mode, set this to true.\n         SAFE MODE restrictions: directory creation will not be possible,\n\t\t only the GD library can be used, other libraries require\n\t\t Safe Mode to be off.\n\n  FALSE - Set to false if PHP on the web server is not in safe mode.\n*/\n$IMConfig['safe_mode'] = false;\n\n/*\n Possible values: 'GD', 'IM', or 'NetPBM'\n\n The image manipulation library to use, either GD or ImageMagick or NetPBM.\n If you have safe mode ON, or don't have the binaries to other packages,\n your choice is 'GD' only. Other packages require Safe Mode to be off.\n*/\ndefine('IMAGE_CLASS', 'GD');\n\n\n/*\n After defining which library to use, if it is NetPBM or IM, you need to\n specify where the binary for the selected library are. And of course\n your server and PHP must be able to execute them (i.e. safe mode is OFF).\n GD does not require the following definition.\n*/\ndefine('IMAGE_TRANSFORM_LIB_PATH', 'C:/\"Program Files\"/ImageMagick-5.5.7-Q16/');\n\n\n/* ==============  OPTIONAL SETTINGS ============== */\n\n\n/*\n  The prefix for thumbnail files, something like .thumb will do. The\n  thumbnails files will be named as \"prefix_imagefile.ext\", that is,\n  prefix + orginal filename.\n*/\n$IMConfig['thumbnail_prefix'] = 'cms-thumb-';\n\n/*\n  Thumbnail can also be stored in a directory, this directory\n  will be created by PHP. If PHP is in safe mode, this parameter\n  is ignored, you can not create directories.\n\n  If you do not want to store thumbnails in a directory, set this\n  to false or empty string '';\n*/\n$IMConfig['thumbnail_dir'] = 'thumbnails';\n\n/*\n  Possible values: true, false\n\n TRUE -  Allow the user to create new sub-directories in the\n         $IMConfig['base_dir'].\n\n FALSE - No directory creation.\n\n NOTE: If $IMConfig['safe_mode'] = true, this parameter\n       is ignored, you can not create directories\n*/\n$IMConfig['allow_new_dir'] = false;\n\n/*\n  Possible values: true, false\n\n TRUE -  Show the directory dropdown at the top of the\n \t\t \"Insert Image\" window.\n\n FALSE - Do not show the directory dropdown control at the top\n \t\t of the \"Insert Image\" window.\n*/\n$IMConfig['show_dirs'] = false;\n\n/*\n  Possible values: true, false\n\n  TRUE - Allow the user to upload files.\n\n  FALSE - No uploading allowed.\n*/\n$IMConfig['allow_upload'] = false;\n\n/*\n Possible values: true, false\n\n TRUE - If set to true, uploaded files will be validated based on the\n        function getImageSize, if we can get the image dimensions then\n        I guess this should be a valid image. Otherwise the file will be rejected.\n\n FALSE - All uploaded files will be processed.\n\n NOTE: If uploading is not allowed, this parameter is ignored.\n*/\n$IMConfig['validate_images'] = false;\n\n/*\n The default thumbnail if the thumbnails can not be created, either\n due to error or bad image file.\n*/\n$IMConfig['default_thumbnail'] = 'img/default.gif';\n\n/*\n  Thumbnail dimensions.\n*/\n$IMConfig['thumbnail_width'] = 64;\n$IMConfig['thumbnail_height'] = 64;\n\n/*\n  Image Editor temporary filename prefix.\n*/\n$IMConfig['tmp_prefix'] = '.editor_';\n?>\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/css/campsiteimage.css",
    "content": "html, body {  background-color: ButtonFace;  color: ButtonText; font: 11px Tahoma,Verdana,sans-serif; margin: 0; padding: 0;}\nbody { padding: 5px; }\nfieldset { padding: 0;}\n.title { background-color: #ddf; color: #000; font-weight: bold; font-size: 120%; padding: 3px 10px; margin-bottom: 10px; border-bottom: 1px  solid black; letter-spacing: 2px;}\nform { padding: 0px;  margin: 0 auto; width: 550px;}\n.dirWidth { width: 70%; }\na { padding: 5px; border: 1px solid ButtonFace;\t}\t\na img\t{ border: 0; }\t\na:hover { border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight; }\n.dirs {\tpadding: 1em; \t}\n.imageFrame { width: 525px; height: 145px; margin: 0 auto; margin-top: 1em; background-color: White;}\n.smallWidth{ width: 4em; }\n.largelWidth{ width: 22em; }\n.inputTable { margin: 1em auto; }\nselect, input, button { font: 11px Tahoma,Verdana,sans-serif; }\n.buttons { width: 70px; text-align: center; }\n.clearboth{ clear: both; }\n#messages { position: relative; left: 175px; top: 115px; background-color: white; width:200px;  float: left; margin-top: -52px; border: 1px solid #ccc; text-align: center; padding: 15px; }\n#message  { font-size: 15px; font-weight: bold; color: #69c; }\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/css/campsiteinternallink.css",
    "content": ".mceLinkList, .mceAnchorList, #targetlist {width:280px;}\r\n.mceActionPanel {margin-top:7px;}\r\n.panel_wrapper div.current {height:320px;}\r\n#classlist, #title, #href {width:280px;}\r\n#popupurl, #popupname {width:200px;}\r\n#popupwidth, #popupheight, #popupleft, #popuptop {width:30px;vertical-align:middle;text-align:center;}\r\n#id, #style, #classes, #target, #dir, #hreflang, #lang, #charset, #type, #rel, #rev, #tabindex, #accesskey {width:200px;}\r\n#events_panel input {width:200px;}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/css/imagelist.css",
    "content": "body { margin: 0; padding: 0; }\n.block { height: 98px; width: 98px; border: 1px solid threedface; text-align: center; behavior: url(hover.htc ); }\n.block a img { border: 0 none; }\n.block:hover, .block.hover{ background-color: #ffc; }\n.edit { font-size: 9pt; font-family: \"MS Sans Serif\", Geneva, sans-serif; padding-top: 3px;}\n.edit a { border: 1px solid white; padding: 3px; }\n.edit a:hover { border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight; background-color: #ffc; }\n.edit a img { border: 0 none; vertical-align: bottom; }\n.noResult { font-size:large; font-weight:bold; color:#ccc; font-family: Helvetica, sans-serif;  text-align: center;  padding-top: 60px;   }\n.error { color:#c00; font-weight:bold; font-size: medium; font-family: Helvetica, sans-serif; text-align: center;  padding-top: 65px;}"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/editor_plugin.js",
    "content": "(function(){tinymce.PluginManager.requireLangPack(\"campsiteimage\");tinymce.create(\"tinymce.plugins.campsiteimage\",{init:function(ed,url){this.editor=ed;editorId=typeof ed.settings.fullscreen_editor_id!=\"undefined\"?ed.settings.fullscreen_editor_id:ed.editorId;articleNo=editorId.substring(editorId.lastIndexOf(\"_\")+1);ed.addCommand(\"mcecampsiteimage\",function(){var se=ed.selection;var url_params=\"\";if(!se.isCollapsed()||ed.dom.getParent(se.getNode(),\"IMG\")){var action=\"\";var elm=se.getNode();elm=ed.dom.getParent(elm,\"IMG\");if(elm!=null&&elm.nodeName==\"IMG\"){action=\"update\";}if(action==\"update\"){var elmId=ed.dom.getAttrib(elm,\"id\");url_params=\"&image_id=\"+elmId;if(ed.dom.getAttrib(elm,\"alt\")!==null){url_params+=\"&image_alt=\"+encodeURIComponent(ed.dom.getAttrib(elm,\"alt\"));}if(ed.dom.getAttrib(elm,\"title\")!==null){url_params+=\"&image_title=\"+encodeURIComponent(ed.dom.getAttrib(elm,\"title\"));}if(ed.dom.getAttrib(elm,\"align\")!==null){url_params+=\"&image_alignment=\"+escape(ed.dom.getAttrib(elm,\"align\"));}if(ed.dom.getAttrib(elm,\"width\")!==null&&ed.dom.getAttrib(elm,\"width\")!=\"\"){url_params+=\"&image_resize_width=\"+escape(ed.dom.getAttrib(elm,\"width\"));}if(ed.dom.getAttrib(elm,\"height\")!==null&&ed.dom.getAttrib(elm,\"height\")!=\"\"){url_params+=\"&image_resize_height=\"+escape(ed.dom.getAttrib(elm,\"height\"));}if(ed.dom.getAttrib(elm,\"ratio\")!==null&&ed.dom.getAttrib(elm,\"ratio\")!=\"\"){url_params+=\"&image_ratio=\"+escape(ed.dom.getAttrib(elm,\"ratio\"));}else{if(elmId.lastIndexOf(\"_\")>0){url_params+=\"&image_ratio=\"+elmId.substring(elmId.lastIndexOf(\"_\")+1);}}}}ed.windowManager.open({file:url+\"/popup.php?time=\"+(new Date().getTime())+\"&article_id=\"+articleNo+url_params,width:580,height:430,inline:1},{plugin_url:url});});ed.addButton(\"campsiteimage\",{title:\"campsiteimage.editor_button\",cmd:\"mcecampsiteimage\",image:url+\"/img/campsiteimage.gif\"});ed.addShortcut(\"ctrl+g\",\"campsiteimage.editor_button\",\"mcecampsiteimage\");ed.onNodeChange.add(function(ed,cm,n,co){cm.setDisabled(\"link\",co&&n.nodeName!=\"A\");cm.setActive(\"link\",n.nodeName==\"A\"&&!n.name);});},getInfo:function(){return{longname:\"Newscoop - Image insertion\",author:\"Sourcefabric\",authorurl:\"http://www.sourcefabric.org\",infourl:\"http://dev.sourcefabric.org/browse/CS\",version:\"3.4\"};}});tinymce.PluginManager.add(\"campsiteimage\",tinymce.plugins.campsiteimage);})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/editor_plugin_src.js",
    "content": "/**\n * $Id: editor_plugin_src.js 539 2008-01-14 19:08:58Z holman $\n *\n * @author Campware\n * @copyright Copyright 2008-2009, Campware - MDLF, All rights reserved.\n */\n\n(function() {\n    tinymce.PluginManager.requireLangPack('campsiteimage');\n\n    tinymce.create('tinymce.plugins.campsiteimage', {\n        init : function(ed, url) {\n            this.editor = ed;\n            editorId = typeof ed.settings.fullscreen_editor_id != 'undefined' ?\n        \t\t\ted.settings.fullscreen_editor_id : ed.editorId;\n            articleNo = editorId.substring(editorId.lastIndexOf('_')+1);\n\n            // Register commands\n            ed.addCommand('mcecampsiteimage', function() {\n                var se = ed.selection;\n                var url_params = '';\n\n                if (!se.isCollapsed() || ed.dom.getParent(se.getNode(), 'IMG')) {\n                    var action = '';\n                    var elm = se.getNode();\n                    elm = ed.dom.getParent(elm, \"IMG\");\n                    if (elm != null && elm.nodeName == \"IMG\")\n                        action = \"update\";\n\n                    if (action == 'update') {\n                        var elmId = ed.dom.getAttrib(elm, 'id');\n                        url_params = '&image_id=' + elmId;\n                        if (ed.dom.getAttrib(elm, 'alt') !== null)\n                            url_params += '&image_alt=' + encodeURIComponent(ed.dom.getAttrib(elm, 'alt'));\n                        if (ed.dom.getAttrib(elm, 'title') !== null)\n                            url_params += '&image_title=' + encodeURIComponent(ed.dom.getAttrib(elm, 'title'));\n                        if (ed.dom.getAttrib(elm, 'align') !== null)\n                            url_params += '&image_alignment=' + escape(ed.dom.getAttrib(elm, 'align'));\n                        if (ed.dom.getAttrib(elm, 'width') !== null && ed.dom.getAttrib(elm, 'width') != '')\n                            url_params += '&image_resize_width=' + escape(ed.dom.getAttrib(elm, 'width'));\n                        if (ed.dom.getAttrib(elm, 'height') !== null && ed.dom.getAttrib(elm, 'height') != '')\n                            url_params += '&image_resize_height=' + escape(ed.dom.getAttrib(elm, 'height'));\n                        if (ed.dom.getAttrib(elm, 'ratio') !== null && ed.dom.getAttrib(elm, 'ratio') != '')\n                            url_params += '&image_ratio=' + escape(ed.dom.getAttrib(elm, 'ratio'));\n                        else\n                            if (elmId.lastIndexOf('_') > 0)\n                                url_params += '&image_ratio=' + elmId.substring(elmId.lastIndexOf('_')+1);\n                    }\n                }\n\n                ed.windowManager.open({\n                    file : url + '/popup.php?time='+(new Date().getTime())+'&article_id=' + articleNo + url_params,\n                    width : 580,\n                    height : 430,\n                    inline : 1\n                }, {\n                    plugin_url : url\n                });\n            });\n\n            // Register buttons\n            ed.addButton('campsiteimage', {\n                title : 'campsiteimage.editor_button',\n                cmd : 'mcecampsiteimage',\n                image : url + '/img/campsiteimage.gif'\n            });\n\n            ed.addShortcut('ctrl+g', 'campsiteimage.editor_button', 'mcecampsiteimage');\n\n            ed.onNodeChange.add(function(ed, cm, n, co) {\n                cm.setDisabled('link', co && n.nodeName != 'A');\n                cm.setActive('link', n.nodeName == 'A' && !n.name);\n            });\n        },\n\n        getInfo : function() {\n            return {\n                longname : 'Newscoop - Image insertion',\n                author : 'Sourcefabric',\n                authorurl : 'http://www.sourcefabric.org',\n                infourl : 'http://dev.sourcefabric.org/browse/CS',\n                version : '3.4'\n            };\n        }\n    });\n\n    // Register plugin\n    tinymce.PluginManager.add('campsiteimage', tinymce.plugins.campsiteimage);\n})();\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/images.php",
    "content": "<?php\n/**\n * Show a list of images in a long horizontal table.\n * @author $Author: holman $\n * @author $Author: vlad $\n * @package ImageManager\n */\n\nheader(\"Expires: Mon, 26 Jul 1997 05:00:00 GMT\");\nheader(\"Cache-Control: no-cache\");\nheader(\"Pragma: no-cache\");\n\n// function to escape javascript parameters in function called in attribute\nfunction escape_js_param($str) {\n    $str = str_replace('\"','\\x22',$str);\n    $str = str_replace('\\'','\\x27',$str);\n    $str = str_replace('&#039;','\\x27',$str);\n    $str = str_replace('&quot;','\\x22',$str);\n    return $str;\n}\n\n$GLOBALS['g_campsiteDir'] = dirname(dirname(dirname(dirname(dirname(__FILE__)))));\nrequire_once $GLOBALS['g_campsiteDir'] . '/application.php';\n$application->bootstrap();\n\n// Only logged in admin users allowed\n$userId = Zend_Auth::getInstance()->getIdentity();\n$userTmp = new User($userId);\nif (!$userTmp->exists() || !$userTmp->isAdmin()) {\n    header(\"Location: /$ADMIN/login.php\");\n    exit(0);\n}\nunset($userTmp);\n\nrequire_once('config.inc.php');\nrequire_once('classes/ImageManager.php');\n\n$Campsite['IMAGE_BASE_URL'] = str_replace('/js/tinymce/plugins/campsiteimage', '', $Campsite['SUBDIR']) . '/images/';\n$Campsite['THUMBNAIL_BASE_URL'] = $Campsite['IMAGE_BASE_URL'] . 'thumbnails/';\n\n//default path is /\n$relative = '/';\n$manager = new ImageManager($IMConfig);\n$refreshDir = false;\n\n// Check for any sub-directory request.\n// Check that the requested sub-directory exists and valid.\nif (isset($_REQUEST['dir'])) {\n    $path = rawurldecode($_REQUEST['dir']);\n    if ($manager->validRelativePath($path)) {\n        $relative = $path;\n    }\n}\n\n$manager = new ImageManager($IMConfig);\n$articleId = (isset($_REQUEST['article_id']) && is_numeric($_REQUEST['article_id']))\n    ? $_REQUEST['article_id'] : null;\n\n// Get the list of files and directories\n$list = array();\nif (!is_null($articleId)) {\n    $list = $manager->getFiles($relative, $articleId);\n}\n\nif (isset($_REQUEST['image_id'])) {\n    $image = $manager->getImageByNumber($articleId, $_REQUEST['image_id']);\n    $imageAltOpt = '';\n    $imageTitleOpt = '';\n    if (isset($_REQUEST['image_alt'])) {\n        $imageAltOpt = $_REQUEST['image_alt'];\n    }\n    if (isset($_REQUEST['image_title'])) {\n        $imageTitleOpt = $_REQUEST['image_title'];\n    }\n    if (isset($_REQUEST['image_alignment'])) {\n        $imageAlignOpt = $_REQUEST['image_alignment'];\n    }\n    if (isset($_REQUEST['image_ratio'])) {\n        $imageRatioOpt = $_REQUEST['image_ratio'];\n    }\n    if (isset($_REQUEST['image_resize_width'])) {\n        $imageResizeWidthOpt = $_REQUEST['image_resize_width'];\n    }\n    if (isset($_REQUEST['image_resize_height'])) {\n        $imageResizeHeightOpt = $_REQUEST['image_resize_height'];\n    }\n}\n\n/* ================= OUTPUT/DRAW FUNCTIONS ======================= */\n\n/**\n * Draw the files in an table.\n */\nfunction drawFiles($list, &$manager)\n{\n        global $relative, $image;\n    $first = true;\n    foreach($list as $entry => $file)\n    {\n        if (isset($image) && is_object($image)) {\n            if ($image->getImageId() == $file['image_object']->getImageId()) {\n?>\n        <td>\n            <table width=\"100\" cellpadding=\"0\" cellspacing=\"0\">\n            <tr>\n                <td class=\"block\" id=\"block_<?php echo $file['template_id']; ?>\">\n                                <img src=\"<?php echo $file['image_object']->getThumbnailUrl(); ?>\" alt=\"<?php echo $file['alt']; ?>\"/>\n                        </td></tr><tr><td class=\"edit\">\n        <?php\n        if ($file['image']) {\n            echo $file['image'][0].'x'.$file['image'][1];\n        }\n        else {\n            echo \" \";\n        }\n        ?>\n                        </td>\n                        </tr></table></td>\n        <?php\n            }\n        } else {\n    ?>\n        <td>\n            <table width=\"100\" cellpadding=\"0\" cellspacing=\"0\">\n            <tr>\n                        <td class=\"block\" id=\"block_<?php echo $file['template_id']; ?>\" onclick=\"CampsiteImageDialog.select(<?php echo $file['template_id']; ?>, '<?php echo $file['image_object']->getImageUrl(); ?>', '<?php echo  escape_js_param($file['alt']); ?>', '<?php echo  escape_js_param($file['alt']); ?>');\">\n        <a href=\"javascript:;\" onclick=\"CampsiteImageDialog.select(<?php echo $file['template_id']; ?>, '<?php echo $file['image_object']->getImageUrl(); ?>', '<?php echo  escape_js_param($file['alt']); ?>', '<?php echo  escape_js_param($file['alt']); ?>', '', '', '', '', '<?php echo($file['image'][0]); ?>', '<?php echo($file['image'][1]); ?>');\" title=\"<?php echo  escape_js_param($file['alt']); ?>\"><img src=\"<?php echo $file['image_object']->getThumbnailUrl(); ?>\" alt=\"<?php echo  escape_js_param($file['alt']); ?>\"/></a>\n                        </td></tr><tr><td class=\"edit\">\n        <?php\n        if ($file['image']) {\n            echo $file['image'][0].'x'.$file['image'][1];\n        }\n        else {\n            echo \" \";\n        }\n        ?>\n                        </td>\n                        </tr></table></td>\n    <?php   } ?>\n      <?php\n      if ($first == true) { ?><script>CampsiteImageDialog.select(<?php echo $file['template_id']; ?>, '<?php echo $file['image_object']->getImageUrl(); ?>', '<?php echo  escape_js_param($file['alt']); ?>', '<?php echo  escape_js_param($file['alt']); ?>', '', '', '', '', '<?php echo($file['image'][0]); ?>', '<?php echo($file['image'][1]); ?>');</script><?php }\n      $first = false;\n    }//foreach\n}//function drawFiles\n\n\n/**\n * Draw the directory.\n */\nfunction drawDirs($list, &$manager)\n{\n    global $relative;\n\n    foreach($list as $path => $dir)\n    { ?>\n        <td><table width=\"100\" cellpadding=\"0\" cellspacing=\"0\"><tr><td class=\"block\">\n        <a href=\"images.php?dir=<?php echo rawurlencode($path); ?>\" onclick=\"updateDir('<?php echo $path; ?>')\" title=\"<?php echo $dir['entry']; ?>\"><img src=\"img/folder.gif\" height=\"80\" width=\"80\" alt=\"<?php echo $dir['entry']; ?>\" /></a>\n        </td></tr><tr>\n        <td class=\"edit\">\n            <a href=\"images.php?dir=<?php echo $relative; ?>&amp;deld=<?php echo rawurlencode($path); ?>\" title=\"Trash\" onclick=\"return confirmDeleteDir('<?php echo $dir['entry']; ?>', <?php echo $dir['count']; ?>);\"><img src=\"img/edit_trash.gif\" height=\"15\" width=\"15\" alt=\"Trash\"/></a>\n            <?php echo $dir['entry']; ?>\n        </td>\n        </tr></table></td>\n      <?php\n    } //foreach\n}//function drawDirs\n\n\n/**\n * No directories and no files.\n */\nfunction drawNoResults()\n{\n?>\n<table width=\"100%\">\n  <tr>\n    <td class=\"noResult\"><script>document.write(i18n(\"No Images Found\"));</script></td>\n  </tr>\n</table>\n<?php\n}\n\n/**\n * No directories and no files.\n */\nfunction drawErrorBase(&$manager)\n{\n?>\n<table width=\"100%\">\n  <tr>\n    <td class=\"error\">Unable to read the directory: <?php echo $manager->config['base_dir']; ?></td>\n  </tr>\n</table>\n<?php\n}\n\n?>\n<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\n\n<html>\n<head>\n    <title>Image List</title>\n    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\n    <link href=\"/js/tinymce/plugins/campsiteimage/css/imagelist.css\" rel=\"stylesheet\" type=\"text/css\" />\n    <script type=\"text/javascript\" src=\"/js/tinymce/plugins/campsiteimage/assets/dialog.js\"></script>\n<script type=\"text/javascript\">\n/*<![CDATA[*/\n\n    if(window.top)\n        I18N = window.top.I18N;\n\n    function hideMessage()\n    {\n        var topDoc = window.top.document;\n        var messages = topDoc.getElementById('messages');\n        if(messages)\n            messages.style.display = \"none\";\n    }\n\n    init = function()\n    {\n        hideMessage();\n        var topDoc = window.top.document;\n\n<?php\n    //we need to refesh the drop directory list\n    //save the current dir, delete all select options\n    //add the new list, re-select the saved dir.\n    if($refreshDir)\n    {\n        $dirs = $manager->getDirs();\n?>\n        var selection = topDoc.getElementById('dirPath');\n        var currentDir = selection.options[selection.selectedIndex].text;\n\n        while(selection.length > 0)\n        {   selection.remove(0); }\n\n        selection.options[selection.length] = new Option(\"/\",\"<?php echo rawurlencode('/'); ?>\");\n        <?php foreach($dirs as $relative=>$fullpath) { ?>\n        selection.options[selection.length] = new Option(\"<?php echo $relative; ?>\",\"<?php echo rawurlencode($relative); ?>\");\n        <?php } ?>\n\n        for(var i = 0; i < selection.length; i++)\n        {\n            var thisDir = selection.options[i].text;\n            if(thisDir == currentDir)\n            {\n                selection.selectedIndex = i;\n                break;\n            }\n        }\n<?php } ?>\n    }\n\n    function editImage(image)\n    {\n        var url = \"editor.php?img=\"+image;\n        Dialog(url, function(param)\n        {\n            if (!param) // user must have pressed Cancel\n                return false;\n            else\n            {\n                return true;\n            }\n        }, null);\n    }\n\n<?php\n\n    $preferencesService = \\Zend_Registry::get('container')->getService('preferences');\n    $richtextCaption = $preferencesService->MediaRichTextCaptions;\n    $captionLimit = $preferencesService->MediaCaptionLength;\n\n    if ($richtextCaption == 'Y') { ?>\n      var captionsEnabled = true;\n      var captionLimit = <?php echo (int) $captionLimit; ?>;\n<?php } else { ?>\n      var captionsEnabled = false;\n<?php } ?>\n\n/*]]>*/\n</script>\n<script type=\"text/javascript\" src=\"/js/tinymce/tiny_mce_popup.js\"></script>\n<script type=\"text/javascript\" src=\"/js/tinymce/plugins/campsiteimage/js/campsiteimage.js?v=4.3.2\"></script>\n<script type=\"text/javascript\" src=\"/js/tinymce/plugins/campsiteimage/assets/images.js\"></script>\n</head>\n\n<body>\n<?php if ($manager->isValidBase() == false) { drawErrorBase($manager); }\n    elseif(count($list[0]) > 0 || count($list[1]) > 0) { ?>\n<table>\n    <tr>\n    <?php drawDirs($list[0], $manager); ?>\n    <?php drawFiles($list[1], $manager); ?>\n    </tr>\n</table>\n\n    <?php\n    if (isset($image) && is_object($image)) {\n        if (strpos($_REQUEST['image_id'], '_') === false) {\n            $templateId = $_REQUEST['image_id'];\n        } else {\n            list($templateId, $imageRatio) = explode('_', $_REQUEST['image_id']);\n        }\n        $imageUrl = $image->getImageUrl();\n        if (!empty($imageAltOpt)) {\n            $imageAlt = $imageAltOpt;\n        } else {\n            $imageAlt = $image->getDescription();\n        }\n\n        if (!empty($imageTitleOpt)) {\n            $imageTitle = $imageTitleOpt;\n        } else {\n            $imageTitle = $image->getDescription();\n        }\n\n        $imageAlign = (!empty($imageAlignOpt)) ? $imageAlignOpt : '';\n        $imageRatio = (!empty($imageRatioOpt)) ? $imageRatioOpt : '';\n        $imageResizeWidth = (!empty($imageResizeWidthOpt)) ? $imageResizeWidthOpt : '';\n        $imageResizeHeight = (!empty($imageResizeHeightOpt)) ? $imageResizeHeightOpt : '';\n    } else {\n        $firstImage = array_shift($list[1]);\n        if (!empty($firstImage)) {\n            $templateId = $firstImage['template_id'];\n            $imageUrl = $firstImage['image_object']->getImageUrl();\n            $imageAlt = $firstImage['alt'];\n            $imageTitle = $imageAlt;\n            $imageAlign = '';\n            $imageRatio = '';\n            $imageResizeWidth = '';\n            $imageResizeHeight = '';\n        }\n    }\n    ?>\n    <!-- automatically select the image -->\n    <script>\n        CampsiteImageDialog.select(<?php echo $templateId; ?>, '<?php echo $imageUrl; ?>', '<?php echo htmlspecialchars_decode($imageAlt); ?>', '<?php echo htmlspecialchars_decode(urldecode($imageTitle)); ?>', '<?php echo $imageAlign; ?>', '<?php echo $imageRatio; ?>', '<?php echo $imageResizeWidth; ?>', '<?php echo $imageResizeHeight; ?>');\n    </script>\n<?php } else { drawNoResults(); } ?>\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/js/campsiteimage.js",
    "content": "/* Functions for the campsiteimage plugin popup */\r\n\r\ntinyMCEPopup.requireLangPack();\r\n\r\nvar CampsiteImageDialog = {\r\n    init : function(ed) {\r\n        if (captionsEnabled) {\r\n            ed.windowManager.params.mce_height = ed.windowManager.params.mce_height + 100;\r\n        }\r\n        tinyMCEPopup.resizeToInnerSize();\r\n    },\r\n\r\n    edit_insert : function(command) {\r\n        var ed = tinyMCEPopup.editor, dom = ed.dom;\r\n        var topDoc = window.top.document;\r\n        var re = /\\\"/;\r\n        if (!captionsEnabled) {\r\n            var alt = topDoc.getElementById('f_alt').value;\r\n            var caption = topDoc.getElementById('f_caption').value;\r\n\r\n            if ((alt.match(re)) || (caption.match(re))) {\r\n                alert('Double quotes are not allowed for Alt and Caption fields.\\nUse single quotes or double single quotes instead.');\r\n                return false;\r\n            }\r\n        } else {\r\n            if (!validateTinyMCEEditors()) {\r\n                return false;\r\n            }\r\n        }\r\n\r\n        var shrinkRatio = topDoc.getElementById('f_ratio').value;\r\n\r\n        if (shrinkRatio < 1 || shrinkRatio > 99) {\r\n            shrinkRatio = '';\r\n        }\r\n        else {\r\n            shrinkRatio = '_' + shrinkRatio;\r\n        }\r\n\r\n        if (command == 'insert') var mce_command = 'mceInsertContent';\r\n        if (command == 'edit') var mce_command = 'mceReplaceContent';\r\n\r\n        var width = topDoc.getElementById('f_original_width').value;\r\n        var height = topDoc.getElementById('f_original_height').value;\r\n\r\n        if (topDoc.getElementById('f_ratio').value != '') {\r\n            width = width * topDoc.getElementById('f_ratio').value * 0.01;\r\n            height = height * topDoc.getElementById('f_ratio').value * 0.01;\r\n        }\r\n\r\n        if (topDoc.getElementById('f_resize_width').value != '' && topDoc.getElementById('f_resize_width').value != topDoc.getElementById('f_original_width').value && topDoc.getElementById('f_resize_width').value != width) width = topDoc.getElementById('f_resize_width').value;\r\n        if (topDoc.getElementById('f_resize_height').value != '' && topDoc.getElementById('f_resize_height').value != topDoc.getElementById('f_original_height').value && topDoc.getElementById('f_resize_height').value != height) height = topDoc.getElementById('f_resize_height').value;\r\n\r\n        var element = dom.createHTML('img', {\r\n            src : topDoc.getElementById('f_url').value,\r\n            align : topDoc.getElementById('f_align').value,\r\n            id : topDoc.getElementById('f_image_template_id').value + shrinkRatio,\r\n            title : captionsEnabled ? tinyMCE.editors['f_caption'].getContent({format : 'html'}) : topDoc.getElementById('f_caption').value.replace(/<\\/?[^>]+(>|$)/g, \"\"),\r\n            alt : topDoc.getElementById('f_alt').value.replace(/<\\/?[^>]+(>|$)/g, \"\"),\r\n            width : width,\r\n            height : height\r\n        });\r\n        tinyMCEPopup.execCommand(mce_command, false, element);\r\n        return(tinyMCEPopup.close());\r\n    },\r\n\r\n    insert : function() {\r\n        return(CampsiteImageDialog.edit_insert('insert'));\r\n    },\r\n\r\n    edit : function() {\r\n        return(CampsiteImageDialog.edit_insert('edit'));\r\n    },\r\n\r\n    select : function(p_image_template_id, p_filename, p_alt, p_title, p_align, p_ratio, p_width, p_height, p_original_width, p_original_height) {\r\n\r\n        var topDoc = window.top.document;\r\n\r\n        var obj = topDoc.getElementById('f_image_template_id');\r\n        obj.value = p_image_template_id;\r\n\r\n        var obj = topDoc.getElementById('f_url');\r\n        obj.value = p_filename;\r\n\r\n        var obj = topDoc.getElementById('f_alt');\r\n        obj.value = p_alt.replace(/<\\/?[^>]+(>|$)/g, \"\");\r\n\r\n        var obj = topDoc.getElementById('f_caption');\r\n        if (typeof(captionsEnabled) !== 'undefined' && captionsEnabled) {\r\n            obj.value = p_title;\r\n            tinyMCE.editors['f_caption'].setContent(p_title, {format : 'html'});\r\n        } else {\r\n            obj.value = p_title.replace(/<\\/?[^>]+(>|$)/g, \"\");\r\n        }\r\n\r\n        var obj = topDoc.getElementById('f_align');\r\n        obj.value = p_align;\r\n\r\n        if (p_ratio != undefined && p_ratio != '') {\r\n            var obj = topDoc.getElementById('f_ratio');\r\n            obj.value = p_ratio;\r\n        }\r\n\r\n        if (p_width != undefined && p_width != '') {\r\n            var obj = topDoc.getElementById('f_resize_width');\r\n            obj.value = p_width;\r\n\r\n            var obj = topDoc.getElementById('f_original_width');\r\n            obj.value = p_width;\r\n        }\r\n        if (p_height != undefined && p_height != '') {\r\n            var obj = topDoc.getElementById('f_resize_height');\r\n            obj.value = p_height;\r\n\r\n            var obj = topDoc.getElementById('f_original_height');\r\n            obj.value = p_height;\r\n        }\r\n\r\n        if (p_original_width != undefined && p_original_width != '') {\r\n            var obj = topDoc.getElementById('f_original_width');\r\n            obj.value = p_original_width;\r\n        }\r\n        if (p_original_height != undefined && p_original_height != '') {\r\n            var obj = topDoc.getElementById('f_original_height');\r\n            obj.value = p_original_height;\r\n        }\r\n\r\n        var allPageTags = new Array();\r\n        allPageTags = document.getElementsByTagName('*');\r\n        for (i = 0; i < allPageTags.length; i++) {\r\n            if (allPageTags[i].className == 'block') {\r\n                allPageTags[i].style.backgroundColor='';\r\n            }\r\n        }\r\n\r\n        document.getElementById('block_'+p_image_template_id).style.backgroundColor='#FFC';\r\n    },\r\n\r\n    close : function() {\r\n        tinyMCEPopup.close();\r\n    }\r\n};\r\n\r\n// While loading\r\ntinyMCEPopup.onInit.add(CampsiteImageDialog.init);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/ar.js",
    "content": "tinyMCE.addI18n('ar.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/ar_dlg.js",
    "content": "tinyMCE.addI18n('ar.campsiteimage_dlg',{\n    title: \"Insert image\",\n    language: \"Language\",\n    section: \"Section\",\n    article: \"Article\",\n    publication: \"Publication\",\n    general_tab: \"General\",\n    general_props: \"General properties\",\n    issue: \"Issue\",\n    target: \"Target\",\n    target_same: \"Open in this window / frame\",\n    target_parent: \"Open in parent window / frame\",\n    target_top: \"Open in top frame (replaces all frames)\",\n    target_blank: \"Open in new window\",\n    id: \"Id\",\n    style: \"Style\",\n    classes: \"Classes\",\n    target_name: \"Target name\",\n    langdir: \"Language direction\",\n    target_langcode: \"Target language\",\n    langcode: \"Language code\",\n    encoding: \"Target character encoding\",\n    mime: \"Target MIME type\",\n    rel: \"Relationship page to target\",\n    rev: \"Relationship target to page\",\n    tabindex: \"Tabindex\",\n    accesskey: \"Accesskey\",\n    ltr: \"Left to right\",\n    rtl: \"Right to left\",\n    link_list: \"Link list\",\n    is_email: \"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external: \"The URL you entered seems to external link, do you want to add the required http:// prefix?\",\n    caption: \"Caption\",\n    alt: \"Alt\",\n    alignment: \"Alignment\",\n    positiontitle: \"Positioning of this image\",\n    notset: \"Not set\",\n    left: \"Left\",\n    right: \"Right\",\n    middle: \"Middle\",\n    resizeratio: \"Resizing Ratio\",\n    resizewidth: \"Resizing Width\",\n    resizeheight: \"Resizing Height\",\n    edit: \"Edit\",\n    ok: \"OK\",\n    cancel: \"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/az.js",
    "content": "tinyMCE.addI18n('az.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/az_dlg.js",
    "content": "tinyMCE.addI18n('az.campsiteimage_dlg',{\n    title: \"Insert image\",\n    language: \"Language\",\n    section: \"Section\",\n    article: \"Article\",\n    publication: \"Publication\",\n    general_tab: \"General\",\n    general_props: \"General properties\",\n    issue: \"Issue\",\n    target: \"Target\",\n    target_same: \"Open in this window / frame\",\n    target_parent: \"Open in parent window / frame\",\n    target_top: \"Open in top frame (replaces all frames)\",\n    target_blank: \"Open in new window\",\n    id: \"Id\",\n    style: \"Style\",\n    classes: \"Classes\",\n    target_name: \"Target name\",\n    langdir: \"Language direction\",\n    target_langcode: \"Target language\",\n    langcode: \"Language code\",\n    encoding: \"Target character encoding\",\n    mime: \"Target MIME type\",\n    rel: \"Relationship page to target\",\n    rev: \"Relationship target to page\",\n    tabindex: \"Tabindex\",\n    accesskey: \"Accesskey\",\n    ltr: \"Left to right\",\n    rtl: \"Right to left\",\n    link_list: \"Link list\",\n    is_email: \"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external: \"The URL you entered seems to external link, do you want to add the required http:// prefix?\",\n    caption: \"Caption\",\n    alt: \"Alt\",\n    alignment: \"Alignment\",\n    positiontitle: \"Positioning of this image\",\n    notset: \"Not set\",\n    left: \"Left\",\n    right: \"Right\",\n    middle: \"Middle\",\n    resizeratio: \"Resizing Ratio\",\n    resizenotice: \"Resize ratio is overridden by the width/height settings\",\n    resizewidth: \"Resizing Width\",\n    resizeheight: \"Resizing Height\",\n    edit: \"Edit\",\n    ok: \"OK\",\n    cancel: \"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/be.js",
    "content": "tinyMCE.addI18n('be.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/be_dlg.js",
    "content": "tinyMCE.addI18n('be.campsiteimage_dlg',{\n    title: \"Insert image\",\n    language: \"Language\",\n    section: \"Section\",\n    article: \"Article\",\n    publication: \"Publication\",\n    general_tab: \"General\",\n    general_props: \"General properties\",\n    issue: \"Issue\",\n    target: \"Target\",\n    target_same: \"Open in this window / frame\",\n    target_parent: \"Open in parent window / frame\",\n    target_top: \"Open in top frame (replaces all frames)\",\n    target_blank: \"Open in new window\",\n    id: \"Id\",\n    style: \"Style\",\n    classes: \"Classes\",\n    target_name: \"Target name\",\n    langdir: \"Language direction\",\n    target_langcode: \"Target language\",\n    langcode: \"Language code\",\n    encoding: \"Target character encoding\",\n    mime: \"Target MIME type\",\n    rel: \"Relationship page to target\",\n    rev: \"Relationship target to page\",\n    tabindex: \"Tabindex\",\n    accesskey: \"Accesskey\",\n    ltr: \"Left to right\",\n    rtl: \"Right to left\",\n    link_list: \"Link list\",\n    is_email: \"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external: \"The URL you entered seems to external link, do you want to add the required http:// prefix?\",\n    caption: \"Caption\",\n    alt: \"Alt\",\n    alignment: \"Alignment\",\n    positiontitle: \"Positioning of this image\",\n    notset: \"Not set\",\n    left: \"Left\",\n    right: \"Right\",\n    middle: \"Middle\",\n    resizeratio: \"Resizing Ratio\",\n    resizenotice: \"Resize ratio is overridden by the width/height settings\",\n    resizewidth: \"Resizing Width\",\n    resizeheight: \"Resizing Height\",\n    edit: \"Edit\",\n    ok: \"OK\",\n    cancel: \"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/cs.js",
    "content": "tinyMCE.addI18n('cs.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/cs_dlg.js",
    "content": "tinyMCE.addI18n('cs.campsiteimage_dlg',{\n    title: \"Vlo\\u017Eit/upravit odkaz\",\n    url: \"URL odkazu\",\n    target: \"C\\u00EDl\",\n    titlefield: \"Titulek\",\n    is_email: \"Zadan\\u00E9 URL vypad\\u00E1 jako e-mailov\\u00E1 adresa, chcete doplnit prefix mailto:?\",\n    is_external: \"Zadan\\u00E9 URL vypad\\u00E1 jako extern\\u00ED odkaz, chtete doplnit prefix http://?\",\n    list: \"Seznam odkaz\\u016F\",\n    general_tab: \"Hlavn\\u00ED\",\n    popup_tab: \"Vyskakovac\\u00ED okno\",\n    events_tab: \"Ud\\u00E1losti\",\n    advanced_tab: \"Pokro\\u010Dil\\u00E9\",\n    general_props: \"Hlavn\\u00ED nastaven\\u00ED\",\n    popup_props: \"Vlastnosti vyskakovac\\u00EDho okna\",\n    event_props: \"Ud\\u00E1losti\",\n    advanced_props: \"Pokro\\u010Dil\\u00E9 nastaven\\u00ED\",\n    popup_opts: \"Volby\",\n    anchor_names: \"Kotva\",\n    target_same: \"Otev\\u0159\\u00EDt v tomto okn\\u011B/r\\u00E1mu\",\n    target_parent: \"Otev\\u0159\\u00EDt v nad\\u0159azen\\u00E9m okn\\u011B/r\\u00E1mu\",\n    target_top: \"Otev\\u0159\\u00EDt v hlavn\\u00EDm okn\\u011B/r\\u00E1mu (nahradit v\\u0161echny r\\u00E1my)\",\n    target_blank: \"Otev\\u0159\\u00EDt v nov\\u00E9m okn\\u011B/r\\u00E1mu\",\n    popup: \"Javascriptov\\u00E9 okno\",\n    popup_url: \"URL vyskakovac\\u00EDho okna\",\n    popup_name: \"N\\u00E1zev okna\",\n    popup_return: \"Vlo\\u017Eit 'return false'\",\n    popup_scrollbars: \"Zobrazit posuvn\\u00EDky\",\n    popup_statusbar: \"Zobrazit stavov\\u00FD \\u0159\\u00E1dek\",\n    popup_toolbar: \"Zobrazit n\\u00E1strojovou li\\u0161tu\",\n    popup_menubar: \"Zobrazit menu\",\n    popup_location: \"Zobrazit pole s adresou\",\n    popup_resizable: \"Umo\\u017Enit zm\\u011Bnu velikosti vytvo\\u0159en\\u00E9ho okna\",\n    popup_dependent: \"Z\\u00E1vislost (pouze Mozilla/Firefox)\",\n    popup_size: \"Velikost\",\n    popup_position: \"Pozice (X/Y)\",\n    id: \"ID\",\n    style: \"Styl\",\n    classes: \"T\\u0159\\u00EDdy\",\n    target_name: \"N\\u00E1zev c\\u00EDle\",\n    langdir: \"Sm\\u011Br textu\",\n    target_langcode: \"Jazyk c\\u00EDle\",\n    langcode: \"K\\u00F3d jazyka\",\n    encoding: \"K\\u00F3dov\\u00E1n\\u00ED\",\n    mime: \"MIME typ\",\n    rel: \"rel\",\n    rev: \"rev\",\n    tabindex: \"Tabindex\",\n    accesskey: \"P\\u0159\\u00EDstupov\\u00E1 kl\\u00E1vesa\",\n    ltr: \"Zleva doprava\",\n    rtl: \"Zprava doleva\",\n    link_list: \"Seznam odkaz\\u016F\",\n    caption: \"Caption\",\n    alt: \"Alt\",\n    alignment: \"Alignment\",\n    positiontitle: \"Positioning of this image\",\n    notset: \"Not set\",\n    left: \"Left\",\n    right: \"Right\",\n    middle: \"Middle\",\n    resizeratio: \"Resizing Ratio\",\n    resizewidth: \"Resizing Width\",\n    resizeheight: \"Resizing Height\",\n    edit: \"Edit\",\n    ok: \"OK\",\n    cancel: \"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/da.js",
    "content": "tinyMCE.addI18n('da.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/da_dlg.js",
    "content": "tinyMCE.addI18n('da.campsiteimage_dlg',{\n    title: \"Insert image\",\n    language: \"Language\",\n    section: \"Section\",\n    article: \"Article\",\n    publication: \"Publication\",\n    general_tab: \"General\",\n    general_props: \"General properties\",\n    issue: \"Issue\",\n    target: \"Target\",\n    target_same: \"Open in this window / frame\",\n    target_parent: \"Open in parent window / frame\",\n    target_top: \"Open in top frame (replaces all frames)\",\n    target_blank: \"Open in new window\",\n    id: \"Id\",\n    style: \"Style\",\n    classes: \"Classes\",\n    target_name: \"Target name\",\n    langdir: \"Language direction\",\n    target_langcode: \"Target language\",\n    langcode: \"Language code\",\n    encoding: \"Target character encoding\",\n    mime: \"Target MIME type\",\n    rel: \"Relationship page to target\",\n    rev: \"Relationship target to page\",\n    tabindex: \"Tabindex\",\n    accesskey: \"Accesskey\",\n    ltr: \"Left to right\",\n    rtl: \"Right to left\",\n    link_list: \"Link list\",\n    is_email: \"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external: \"The URL you entered seems to external link, do you want to add the required http:// prefix?\",\n    caption: \"Caption\",\n    alt: \"Alt\",\n    alignment: \"Alignment\",\n    positiontitle: \"Positioning of this image\",\n    notset: \"Not set\",\n    left: \"Left\",\n    right: \"Right\",\n    middle: \"Middle\",\n    resizeratio: \"Resizing Ratio\",\n    resizenotice: \"Resize ratio is overridden by the width/height settings\",\n    resizewidth: \"Resizing Width\",\n    resizeheight: \"Resizing Height\",\n    edit: \"Edit\",\n    ok: \"OK\",\n    cancel: \"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/de.js",
    "content": "tinyMCE.addI18n('de.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/de_dlg.js",
    "content": "tinyMCE.addI18n('de.campsiteimage_dlg',{\n    title: \"Insert image\",\n    language: \"Language\",\n    section: \"Section\",\n    article: \"Article\",\n    publication: \"Publication\",\n    general_tab: \"General\",\n    general_props: \"General properties\",\n    issue: \"Issue\",\n    target: \"Target\",\n    target_same: \"Open in this window / frame\",\n    target_parent: \"Open in parent window / frame\",\n    target_top: \"Open in top frame (replaces all frames)\",\n    target_blank: \"Open in new window\",\n    id: \"Id\",\n    style: \"Style\",\n    classes: \"Classes\",\n    target_name: \"Target name\",\n    langdir: \"Language direction\",\n    target_langcode: \"Target language\",\n    langcode: \"Language code\",\n    encoding: \"Target character encoding\",\n    mime: \"Target MIME type\",\n    rel: \"Relationship page to target\",\n    rev: \"Relationship target to page\",\n    tabindex: \"Tabindex\",\n    accesskey: \"Accesskey\",\n    ltr: \"Left to right\",\n    rtl: \"Right to left\",\n    link_list: \"Link list\",\n    is_email: \"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external: \"The URL you entered seems to external link, do you want to add the required http:// prefix?\",\n    caption: \"Caption\",\n    alt: \"Alt\",\n    alignment: \"Alignment\",\n    positiontitle: \"Positioning of this image\",\n    notset: \"Not set\",\n    left: \"Left\",\n    right: \"Right\",\n    middle: \"Middle\",\n    resizeratio: \"Resizing Ratio\",\n    resizenotice: \"Resize-Verhältnis ist außer Kraft gesetzt durch die Breite / Höhe-Einstellungen\",\n    resizewidth: \"Resizing Width\",\n    resizeheight: \"Resizing Height\",\n    edit: \"Edit\",\n    ok: \"OK\",\n    cancel: \"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/el.js",
    "content": "tinyMCE.addI18n('el.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/el_dlg.js",
    "content": "tinyMCE.addI18n('el.campsiteimage_dlg',{\ntitle:\"Insert image\",\nlanguage:\"Language\",\nsection:\"Section\",\narticle:\"Article\",\npublication:\"Publication\",\ngeneral_tab:\"General\",\ngeneral_props:\"General properties\",\nissue:\"Issue\",\ntarget:\"Target\",\ntarget_same:\"Open in this window / frame\",\ntarget_parent:\"Open in parent window / frame\",\ntarget_top:\"Open in top frame (replaces all frames)\",\ntarget_blank:\"Open in new window\",\nid:\"Id\",\nstyle:\"Style\",\nclasses:\"Classes\",\ntarget_name:\"Target name\",\nlangdir:\"Language direction\",\ntarget_langcode:\"Target language\",\nlangcode:\"Language code\",\nencoding:\"Target character encoding\",\nmime:\"Target MIME type\",\nrel:\"Relationship page to target\",\nrev:\"Relationship target to page\",\ntabindex:\"Tabindex\",\naccesskey:\"Accesskey\",\nltr:\"Left to right\",\nrtl:\"Right to left\",\nlink_list:\"Link list\",\nis_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\nis_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\",\ncaption:\"Caption\",\nalt:\"Alt\",\nalignment:\"Alignment\",\npositiontitle:\"Positioning of this image\",\nnotset:\"Not set\",\nleft:\"Left\",\nright:\"Right\",\nmiddle:\"Middle\",\nresizeratio:\"Resizing Ratio\",\nresizewidth:\"Resizing Width\",\nresizeheight:\"Resizing Height\",\nedit:\"Edit\",\nok:\"OK\",\ncancel:\"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/en.js",
    "content": "tinyMCE.addI18n('en.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/en_dlg.js",
    "content": "tinyMCE.addI18n('en.campsiteimage_dlg',{\n    title: \"Insert image\",\n    language: \"Language\",\n    section: \"Section\",\n    article: \"Article\",\n    publication: \"Publication\",\n    general_tab: \"General\",\n    general_props: \"General properties\",\n    issue: \"Issue\",\n    target: \"Target\",\n    target_same: \"Open in this window / frame\",\n    target_parent: \"Open in parent window / frame\",\n    target_top: \"Open in top frame (replaces all frames)\",\n    target_blank: \"Open in new window\",\n    id: \"Id\",\n    style: \"Style\",\n    classes: \"Classes\",\n    target_name: \"Target name\",\n    langdir: \"Language direction\",\n    target_langcode: \"Target language\",\n    langcode: \"Language code\",\n    encoding: \"Target character encoding\",\n    mime: \"Target MIME type\",\n    rel: \"Relationship page to target\",\n    rev: \"Relationship target to page\",\n    tabindex: \"Tabindex\",\n    accesskey: \"Accesskey\",\n    ltr: \"Left to right\",\n    rtl: \"Right to left\",\n    link_list: \"Link list\",\n    is_email: \"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external: \"The URL you entered seems to external link, do you want to add the required http:// prefix?\",\n    caption: \"Caption\",\n    alt: \"Alt\",\n    alignment: \"Alignment\",\n    positiontitle: \"Positioning of this image\",\n    notset: \"Not set\",\n    left: \"Left\",\n    right: \"Right\",\n    middle: \"Middle\",\n    resizeratio: \"Resizing Ratio\",\n    resizenotice: \"Resize ratio is overridden by the width/height settings\",\n    resizewidth: \"Resizing Width\",\n    resizeheight: \"Resizing Height\",\n    edit: \"Edit\",\n    ok: \"OK\",\n    cancel: \"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/es.js",
    "content": "tinyMCE.addI18n('es.campsiteimage',{\n    editor_button: \"Insertar imagen\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/es_dlg.js",
    "content": "tinyMCE.addI18n('es.campsiteimage_dlg',{\n    title: \"Insertar/editar hiperv\\u00EDnculo interno\",\n    url: \"URL del hiperv\\u00EDnculo\",\n    target: \"Destino\",\n    titlefield: \"T\\u00EDtulo\",\n    is_email: \"La URL que ha introducido parece ser una direci\\u00F3n de correo, \\u00BFdesea agregar el prefijo mailto: necesario?\",\n    is_external: \"La URL que ha introducido parece ser un v\\u00EDnculo externo, \\u00BFdesea agregar el prefijo http:// necesario?\",\n    list: \"Lista de v\\u00EDnculos\",\n    general_tab: \"General\",\n    popup_tab: \"Ventana emergente\",\n    events_tab: \"Eventos\",\n    advanced_tab: \"Avanzado\",\n    general_props: \"Propiedades generales\",\n    popup_props: \"Propiedades de ventanas emergentes\",\n    event_props: \"Eventos\",\n    advanced_props: \"Propiedades avanzadas\",\n    popup_opts: \"Opciones\",\n    anchor_names: \"Anclas\",\n    target_same: \"Abrir en esta ventana / marco\",\n    target_parent: \"Abrir en ventana padre / marco\",\n    target_top: \"Abrir en el marco superior (reemplaza todos los marcos)\",\n    target_blank: \"Abrir en ventana nueva\",\n    popup: \"Javascript popup\",\n    popup_url: \"URL de la ventana emergente\",\n    popup_name: \"Nombre de la ventana\",\n    popup_return: \"Insertar 'return false'\",\n    popup_scrollbars: \"Barras de desplazamiento\",\n    popup_statusbar: \"Barra de estado\",\n    popup_toolbar: \"Barra de herramientas\",\n    popup_menubar: \"Barra de men\\u00FA\",\n    popup_location: \"Barra de localizaci\\u00F3n\",\n    popup_resizable: \"Permitir cambiar el tama\\u00F1o de la ventana\",\n    popup_dependent: \"Dependientes (s\\u00F3lo Mozilla/Firefox)\",\n    popup_size: \"Tama\\u00F1o\",\n    popup_position: \"Posici\\u00F3n (X/Y)\",\n    id: \"Id\",\n    style: \"Estilo\",\n    classes: \"Clases\",\n    target_name: \"Nombre del Target\",\n    langdir: \"Direcci\\u00F3n del lenguaje\",\n    target_langcode: \"Lenguaje del Target\",\n    langcode: \"C\\u00F3digo del lenguaje\",\n    encoding: \"Codificaci\\u00F3n de caracteres del Target\",\n    mime: \"Tipo MIME del Target\",\n    rel: \"Relaci\\u00F3n p\\u00E1gina a target\",\n    rev: \"Relaci\\u00F3n target a p\\u00E1gina\",\n    tabindex: \"\\u00CDndice de tabulaci\\u00F3n\",\n    accesskey: \"Tecla de acceso\",\n    ltr: \"Izquierda a derecha\",\n    rtl: \"Derecha a izquierda\",\n    link_list: \"Lista de v\\u00EDnculo\",\n    caption: \"Caption\",\n    alt: \"Alt\",\n    alignment: \"Alignment\",\n    positiontitle: \"Positioning of this image\",\n    notset: \"Not set\",\n    left: \"Left\",\n    right: \"Right\",\n    middle: \"Middle\",\n    resizeratio: \"Resizing Ratio\",\n    resizewidth: \"Resizing Width\",\n    resizeheight: \"Resizing Height\",\n    edit: \"Edit\",\n    ok: \"OK\",\n    cancel: \"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/fr.js",
    "content": "tinyMCE.addI18n('fr.campsiteimage',{\n    editor_button: \"Ins\\u00E9rer/\\u00C9diter lien\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/fr_dlg.js",
    "content": "tinyMCE.addI18n('fr.campsiteimage_dlg',{\ntitle:\"Ins\\u00E9rer/\\u00C9diter lien\",\nurl:\"URL du lien\",\ntarget:\"Cible\",\ntitlefield:\"Titre\",\nis_email:\"L'url que vous avez entr\\u00E9 semble \\u00EAtre une adresse e-mail, voulez-vous ajouter le pr\\u00E9fixe mailto:\\u00A0?\",\nis_external:\"L'url que vous avez entr\\u00E9 semble \\u00EAtre une adresse web externe, voulez-vous ajouter le pr\\u00E9fixe http://\\u00A0?\",\nlist:\"Liste de liens\",\ngeneral_tab:\"G\\u00E9n\\u00E9ral\",\npopup_tab:\"Popup\",\nevents_tab:\"\\u00C9v\\u00E9nements\",\nadvanced_tab:\"Advanc\\u00E9\",\ngeneral_props:\"Propri\\u00E9t\\u00E9s g\\u00E9n\\u00E9rales\",\npopup_props:\"Propri\\u00E9t\\u00E9s du popup\",\nevent_props:\"\\u00C9v\\u00E9nements\",\nadvanced_props:\"Propri\\u00E9t\\u00E9s avanc\\u00E9es\",\npopup_opts:\"Options\",\nanchor_names:\"Ancres\",\ntarget_same:\"Ouvrir dans cette fen\\u00EAtre / dans ce cadre\",\ntarget_parent:\"Ouvrir dans la fen\\u00EAtre / le cadre parent\",\ntarget_top:\"Ouvrir dans le cadre principal (Remplace tous les cadres)\",\ntarget_blank:\"Ouvrir dans une nouvelle fen\\u00EAtre\",\npopup:\"Popup en Javascript\",\npopup_url:\"URL du popup\",\npopup_name:\"Nom de la fen\\u00EAtre\",\npopup_return:\"Ins\\u00E9rer 'return false'\",\npopup_scrollbars:\"Afficher les ascenseurs\",\npopup_statusbar:\"Afficher la barre de status\",\npopup_toolbar:\"Afficher la barre d'outils\",\npopup_menubar:\"Afficher la barre de menu\",\npopup_location:\"Afficher la barre d'adresse\",\npopup_resizable:\"Rendre la fen\\u00EAtre redimensionable\",\npopup_dependent:\"D\\u00E9pendent (Seulement sous Mozilla/Firefox)\",\npopup_size:\"Taille\",\npopup_position:\"Position (X/Y)\",\nid:\"Id\",\nstyle:\"Style\",\nclasses:\"Classes\",\ntarget_name:\"Nom de la cible\",\nlangdir:\"Sens de lecture\",\ntarget_langcode:\"Langue de la cible\",\nlangcode:\"Code de la langue\",\nencoding:\"Encodage de la cible\",\nmime:\"Type MIME de la cible\",\nrel:\"Relation de la page \\u00E0 la cible\",\nrev:\"Relation de la cible \\u00E0 la page\",\ntabindex:\"Tabindex\",\naccesskey:\"Touche d'acc\\u00E8s rapide\",\nltr:\"Gauche \\u00E0 droite\",\nrtl:\"Droite \\u00E0 gauche\",\nlink_list:\"Liste des liens\",\ncaption:\"Caption\",\nalt:\"Alt\",\nalignment:\"Alignment\",\npositiontitle:\"Positioning of this image\",\nnotset:\"Not set\",\nleft:\"Left\",\nright:\"Right\",\nmiddle:\"Middle\",\nresizeratio:\"Resizing Ratio\",\nresizenotice:\"Ratio de redimensionnement est écrasée par les paramètres de largeur / hauteur\"\nresizewidth:\"Resizing Width\",\nresizeheight:\"Resizing Height\",\nedit:\"Edit\",\nok:\"OK\",\ncancel:\"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/he.js",
    "content": "tinyMCE.addI18n('he.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/he_dlg.js",
    "content": "tinyMCE.addI18n('he.campsiteimage_dlg',{\n    title: \"Insert image\",\n    language: \"Language\",\n    section: \"Section\",\n    article: \"Article\",\n    publication: \"Publication\",\n    general_tab: \"General\",\n    general_props: \"General properties\",\n    issue: \"Issue\",\n    target: \"Target\",\n    target_same: \"Open in this window / frame\",\n    target_parent: \"Open in parent window / frame\",\n    target_top: \"Open in top frame (replaces all frames)\",\n    target_blank: \"Open in new window\",\n    id: \"Id\",\n    style: \"Style\",\n    classes: \"Classes\",\n    target_name: \"Target name\",\n    langdir: \"Language direction\",\n    target_langcode: \"Target language\",\n    langcode: \"Language code\",\n    encoding: \"Target character encoding\",\n    mime: \"Target MIME type\",\n    rel: \"Relationship page to target\",\n    rev: \"Relationship target to page\",\n    tabindex: \"Tabindex\",\n    accesskey: \"Accesskey\",\n    ltr: \"Left to right\",\n    rtl: \"Right to left\",\n    link_list: \"Link list\",\n    is_email: \"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external: \"The URL you entered seems to external link, do you want to add the required http:// prefix?\",\n    caption: \"Caption\",\n    alt: \"Alt\",\n    alignment: \"Alignment\",\n    positiontitle: \"Positioning of this image\",\n    notset: \"Not set\",\n    left: \"Left\",\n    right: \"Right\",\n    middle: \"Middle\",\n    resizeratio: \"Resizing Ratio\",\n    resizenotice: \"Resize ratio is overridden by the width/height settings\",\n    resizewidth: \"Resizing Width\",\n    resizeheight: \"Resizing Height\",\n    edit: \"Edit\",\n    ok: \"OK\",\n    cancel: \"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/hr.js",
    "content": "tinyMCE.addI18n('hr.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/hr_dlg.js",
    "content": "tinyMCE.addI18n('hr.campsiteimage_dlg',{\ntitle:\"Insert image\",\nlanguage:\"Language\",\nsection:\"Section\",\narticle:\"Article\",\npublication:\"Publication\",\ngeneral_tab:\"General\",\ngeneral_props:\"General properties\",\nissue:\"Issue\",\ntarget:\"Target\",\ntarget_same:\"Open in this window / frame\",\ntarget_parent:\"Open in parent window / frame\",\ntarget_top:\"Open in top frame (replaces all frames)\",\ntarget_blank:\"Open in new window\",\nid:\"Id\",\nstyle:\"Style\",\nclasses:\"Classes\",\ntarget_name:\"Target name\",\nlangdir:\"Language direction\",\ntarget_langcode:\"Target language\",\nlangcode:\"Language code\",\nencoding:\"Target character encoding\",\nmime:\"Target MIME type\",\nrel:\"Relationship page to target\",\nrev:\"Relationship target to page\",\ntabindex:\"Tabindex\",\naccesskey:\"Accesskey\",\nltr:\"Left to right\",\nrtl:\"Right to left\",\nlink_list:\"Link list\",\nis_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\nis_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\",\ncaption:\"Caption\",\nalt:\"Alt\",\nalignment:\"Alignment\",\npositiontitle:\"Positioning of this image\",\nnotset:\"Not set\",\nleft:\"Left\",\nright:\"Right\",\nmiddle:\"Middle\",\nresizeratio:\"Resizing Ratio\",\nresizewidth:\"Resizing Width\",\nresizeheight:\"Resizing Height\",\nedit:\"Edit\",\nok:\"OK\",\ncancel:\"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/hu.js",
    "content": "tinyMCE.addI18n('hu.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/hu_dlg.js",
    "content": "tinyMCE.addI18n('hu.campsiteimage_dlg',{\n    title: \"Insert image\",\n    language: \"Language\",\n    section: \"Section\",\n    article: \"Article\",\n    publication: \"Publication\",\n    general_tab: \"General\",\n    general_props: \"General properties\",\n    issue: \"Issue\",\n    target: \"Target\",\n    target_same: \"Open in this window / frame\",\n    target_parent: \"Open in parent window / frame\",\n    target_top: \"Open in top frame (replaces all frames)\",\n    target_blank: \"Open in new window\",\n    id: \"Id\",\n    style: \"Style\",\n    classes: \"Classes\",\n    target_name: \"Target name\",\n    langdir: \"Language direction\",\n    target_langcode: \"Target language\",\n    langcode: \"Language code\",\n    encoding: \"Target character encoding\",\n    mime: \"Target MIME type\",\n    rel: \"Relationship page to target\",\n    rev: \"Relationship target to page\",\n    tabindex: \"Tabindex\",\n    accesskey: \"Accesskey\",\n    ltr: \"Left to right\",\n    rtl: \"Right to left\",\n    link_list: \"Link list\",\n    is_email: \"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external: \"The URL you entered seems to external link, do you want to add the required http:// prefix?\",\n    caption: \"Caption\",\n    alt: \"Alt\",\n    alignment: \"Alignment\",\n    positiontitle: \"Positioning of this image\",\n    notset: \"Not set\",\n    left: \"Left\",\n    right: \"Right\",\n    middle: \"Middle\",\n    resizeratio: \"Resizing Ratio\",\n    resizenotice: \"Resize ratio is overridden by the width/height settings\",\n    resizewidth: \"Resizing Width\",\n    resizeheight: \"Resizing Height\",\n    edit: \"Edit\",\n    ok: \"OK\",\n    cancel: \"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/it.js",
    "content": "tinyMCE.addI18n('it.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/it_dlg.js",
    "content": "tinyMCE.addI18n('it.campsiteimage_dlg',{\ntitle:\"Inserisci/modifica link\",\nurl:\"URL collegamento\",\ntarget:\"Target\",\ntitlefield:\"Titolo\",\nis_email:\"L'URL inserito sembra essere un indirizzo email. Aggiungere il necessario prefisso mailto: ?\",\nis_external:\"L'URL inserito sembra essere un link esterno. Aggiungere il necessario prefisso http:// ?\",\nlist:\"Lista collegamenti\",\ngeneral_tab:\"Generale\",\npopup_tab:\"Popup\",\nevents_tab:\"Eventi\",\nadvanced_tab:\"Avanzate\",\ngeneral_props:\"Propriet\\u00E0 generali\",\npopup_props:\"Propriet\\u00E0 popup\",\nevent_props:\"Eventi\",\nadvanced_props:\"Propriet\\u00E0 avanzate\",\npopup_opts:\"Opzioni\",\nanchor_names:\"Ancore\",\ntarget_same:\"Apri in questa finestra / cornice\",\ntarget_parent:\"Apri nella finestra / cornice genitore\",\ntarget_top:\"Apri nella cornice superiore (sostituisce tutte le cornici)\",\ntarget_blank:\"Apri in una nuova finestra\",\npopup:\"Popup Javascript\",\npopup_url:\"URL Popup\",\npopup_name:\"Nome finestra\",\npopup_return:\"Inserisci 'return false'\",\npopup_scrollbars:\"Mostra barre di scorrimento\",\npopup_statusbar:\"Mostra barra di stato\",\npopup_toolbar:\"Mostra barre strumenti\",\npopup_menubar:\"Mostra barra menu\",\npopup_location:\"Mostra barra navigazione\",\npopup_resizable:\"Rendi la finestra ridimensionabile\",\npopup_dependent:\"Dipendente (Solo in Mozilla/Firefox)\",\npopup_size:\"Dimensioni\",\npopup_position:\"Posizione (X/Y)\",\nid:\"Id\",\nstyle:\"Stile\",\nclasses:\"Classe\",\ntarget_name:\"Nome target\",\nlangdir:\"Direzione del testo\",\ntarget_langcode:\"Lingua del target\",\nlangcode:\"Lingua\",\nencoding:\"Codifica carattere del target\",\nmime:\"Tipo MIME del target\",\nrel:\"Relazione da pagina a target\",\nrev:\"Relazione da target a pagina\",\ntabindex:\"Indice tabulazione\",\naccesskey:\"Carattere di accesso\",\nltr:\"Sinistra verso destra\",\nrtl:\"Destra verso sinistra\",\nlink_list:\"Lista collegamenti\",\ncaption:\"Caption\",\nalt:\"Alt\",\nalignment:\"Alignment\",\npositiontitle:\"Positioning of this image\",\nnotset:\"Not set\",\nleft:\"Left\",\nright:\"Right\",\nmiddle:\"Middle\",\nresizeratio:\"Resizing Ratio\",\nresizewidth:\"Resizing Width\",\nresizeheight:\"Resizing Height\",\nedit:\"Edit\",\nok:\"OK\",\ncancel:\"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/ka.js",
    "content": "tinyMCE.addI18n('ka.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/ka_dlg.js",
    "content": "tinyMCE.addI18n('ka.campsiteimage_dlg',{\n    title: \"Insert image\",\n    language: \"Language\",\n    section: \"Section\",\n    article: \"Article\",\n    publication: \"Publication\",\n    general_tab: \"General\",\n    general_props: \"General properties\",\n    issue: \"Issue\",\n    target: \"Target\",\n    target_same: \"Open in this window / frame\",\n    target_parent: \"Open in parent window / frame\",\n    target_top: \"Open in top frame (replaces all frames)\",\n    target_blank: \"Open in new window\",\n    id: \"Id\",\n    style: \"Style\",\n    classes: \"Classes\",\n    target_name: \"Target name\",\n    langdir: \"Language direction\",\n    target_langcode: \"Target language\",\n    langcode: \"Language code\",\n    encoding: \"Target character encoding\",\n    mime: \"Target MIME type\",\n    rel: \"Relationship page to target\",\n    rev: \"Relationship target to page\",\n    tabindex: \"Tabindex\",\n    accesskey: \"Accesskey\",\n    ltr: \"Left to right\",\n    rtl: \"Right to left\",\n    link_list: \"Link list\",\n    is_email: \"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external: \"The URL you entered seems to external link, do you want to add the required http:// prefix?\",\n    caption: \"Caption\",\n    alt: \"Alt\",\n    alignment: \"Alignment\",\n    positiontitle: \"Positioning of this image\",\n    notset: \"Not set\",\n    left: \"Left\",\n    right: \"Right\",\n    middle: \"Middle\",\n    resizeratio: \"Resizing Ratio\",\n    resizenotice: \"Resize ratio is overridden by the width/height settings\",\n    resizewidth: \"Resizing Width\",\n    resizeheight: \"Resizing Height\",\n    edit: \"Edit\",\n    ok: \"OK\",\n    cancel: \"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/ko.js",
    "content": "tinyMCE.addI18n('ko.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/ko_dlg.js",
    "content": "tinyMCE.addI18n('ko.campsiteimage_dlg',{\n    title: \"Insert image\",\n    language: \"Language\",\n    section: \"Section\",\n    article: \"Article\",\n    publication: \"Publication\",\n    general_tab: \"General\",\n    general_props: \"General properties\",\n    issue: \"Issue\",\n    target: \"Target\",\n    target_same: \"Open in this window / frame\",\n    target_parent: \"Open in parent window / frame\",\n    target_top: \"Open in top frame (replaces all frames)\",\n    target_blank: \"Open in new window\",\n    id: \"Id\",\n    style: \"Style\",\n    classes: \"Classes\",\n    target_name: \"Target name\",\n    langdir: \"Language direction\",\n    target_langcode: \"Target language\",\n    langcode: \"Language code\",\n    encoding: \"Target character encoding\",\n    mime: \"Target MIME type\",\n    rel: \"Relationship page to target\",\n    rev: \"Relationship target to page\",\n    tabindex: \"Tabindex\",\n    accesskey: \"Accesskey\",\n    ltr: \"Left to right\",\n    rtl: \"Right to left\",\n    link_list: \"Link list\",\n    is_email: \"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external: \"The URL you entered seems to external link, do you want to add the required http:// prefix?\",\n    caption: \"Caption\",\n    alt: \"Alt\",\n    alignment: \"Alignment\",\n    positiontitle: \"Positioning of this image\",\n    notset: \"Not set\",\n    left: \"Left\",\n    right: \"Right\",\n    middle: \"Middle\",\n    resizeratio: \"Resizing Ratio\",\n    resizenotice: \"Resize ratio is overridden by the width/height settings\",\n    resizewidth: \"Resizing Width\",\n    resizeheight: \"Resizing Height\",\n    edit: \"Edit\",\n    ok: \"OK\",\n    cancel: \"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/nl.js",
    "content": "tinyMCE.addI18n('nl.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/nl_dlg.js",
    "content": "tinyMCE.addI18n('nl.campsiteimage_dlg',{\ntitle:\"Insert image\",\nlanguage:\"Language\",\nsection:\"Section\",\narticle:\"Article\",\npublication:\"Publication\",\ngeneral_tab:\"General\",\ngeneral_props:\"General properties\",\nissue:\"Issue\",\ntarget:\"Target\",\ntarget_same:\"Open in this window / frame\",\ntarget_parent:\"Open in parent window / frame\",\ntarget_top:\"Open in top frame (replaces all frames)\",\ntarget_blank:\"Open in new window\",\nid:\"Id\",\nstyle:\"Style\",\nclasses:\"Classes\",\ntarget_name:\"Target name\",\nlangdir:\"Language direction\",\ntarget_langcode:\"Target language\",\nlangcode:\"Language code\",\nencoding:\"Target character encoding\",\nmime:\"Target MIME type\",\nrel:\"Relationship page to target\",\nrev:\"Relationship target to page\",\ntabindex:\"Tabindex\",\naccesskey:\"Accesskey\",\nltr:\"Left to right\",\nrtl:\"Right to left\",\nlink_list:\"Link list\",\nis_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\nis_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\",\ncaption:\"Caption\",\nalt:\"Alt\",\nalignment:\"Alignment\",\npositiontitle:\"Positioning of this image\",\nnotset:\"Not set\",\nleft:\"Left\",\nright:\"Right\",\nmiddle:\"Middle\",\nresizeratio:\"Resizing Ratio\",\nresizewidth:\"Resizing Width\",\nresizeheight:\"Resizing Height\",\nedit:\"Edit\",\nok:\"OK\",\ncancel:\"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/pl.js",
    "content": "tinyMCE.addI18n('pl.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/pl_dlg.js",
    "content": "tinyMCE.addI18n('pl.campsiteimage_dlg',{\ntitle:\"Wstaw obraz\",\nlanguage:\"Język\",\nsection:\"Sekcja\",\narticle:\"Artykuł\",\npublication:\"Publikacja\",\ngeneral_tab:\"Ogólne\",\ngeneral_props:\"Ostawienia ogólne\",\nissue:\"Wydanie\",\ntarget:\"Cel\",\ntarget_same:\"Otwórz w tym samym oknie / ramce\",\ntarget_parent:\"Otwórz w nadrzędnym oknie / ramce\",\ntarget_top:\"Otwórz w najwyższym oknie\",\ntarget_blank:\"Otwórz w nowym oknie\",\nid:\"Id\",\nstyle:\"Style\",\nclasses:\"Klasy\",\ntarget_name:\"Nazwa celu\",\nlangdir:\"Kierunek tekstu\",\ntarget_langcode:\"Język docelowy\",\nlangcode:\"Kod języka\",\nencoding:\"Kodowanie\",\nmime:\"DOcelowy typ MIME\",\nrel:\"Relacja strony do celu\",\nrev:\"Relacja targetu do strony\",\ntabindex:\"Indeks tabulacji\",\naccesskey:\"Klawisz dostępu\",\nltr:\"Od lewej do prawej\",\nrtl:\"Od prawej do lewej\",\nlink_list:\"Lista linków\",\nis_email:\"Podany url wygląda na adres email, chcesz dodać do niego wymagant prefix 'mailto:'?\",\nis_external:\"Podany url wygląda na link zewnętrzny, chcesz dodać do niego wymagant prefix protokołu http:// ?\",\ncaption:\"Opis\",\nalt:\"Alt\",\nalignment:\"Wyrównanie\",\npositiontitle:\"Pozycja obrazka\",\nnotset:\"Nie ustawione\",\nleft:\"Lewa\",\nright:\"Prawa\",\nmiddle:\"Środek\",\nresizeratio:\"Stopień powiększenia\",\nresizewidth:\"Szerokość\",\nresizeheight:\"Wysokość\",\nedit:\"Edycja\",\nok:\"OK\",\ncancel:\"Anuluj\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/pt.js",
    "content": "tinyMCE.addI18n('pt.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/pt_dlg.js",
    "content": "tinyMCE.addI18n('pt.campsiteimage_dlg',{\ntitle:\"Inserir/editar hyperlink\",\nurl:\"URL do hyperlink\",\ntarget:\"Alvo\",\ntitlefield:\"T\\u00EDtulo\",\nis_email:\"A URL digitada parece ser um endere\\u00E7o de e-mail. Deseja acrescentar o (necess\\u00E1rio) prefixo mailto:?\",\nis_external:\"A URL digitada parece conduzir a um link externo. Deseja acrescentar o (necess\\u00E1rio) prefixo http://?\",\nlist:\"Lista de hyperlinks\",\ngeneral_tab:\"Geral\",\npopup_tab:\"Popup\",\nevents_tab:\"Eventos\",\nadvanced_tab:\"Avan\\u00E7ado\",\ngeneral_props:\"Propriedades gerais\",\npopup_props:\"Propriedades de popup\",\nevent_props:\"Eventos\",\nadvanced_props:\"Propriedades avan\\u00E7adas\",\npopup_opts:\"Op\\u00E7\\u00F5es\",\nanchor_names:\"\\u00E0\\u0082ncoras\",\ntarget_same:\"Abrir nessa janela/quadro\",\ntarget_parent:\"Abrir na janela/quadro pai\",\ntarget_top:\"Abrir na p\\u00E1gina inteira (substitui todos os quadros)\",\ntarget_blank:\"Abrir em nova janela\",\npopup:\"Popup javascript\",\npopup_url:\"URL do popup\",\npopup_name:\"Nome da janela\",\npopup_return:\"Inserir 'return false'\",\npopup_scrollbars:\"Mostrar barras de rolagem\",\npopup_statusbar:\"Mostrar barra de status\",\npopup_toolbar:\"Mostrar barras de ferramentas\",\npopup_menubar:\"Mostrar barra de menu\",\npopup_location:\"Mostrar barra de endere\\u00E7os\",\npopup_resizable:\"Permitir altera\\u00E7\\u00E3o do tamanho da janela\",\npopup_dependent:\"Dependente (Mozilla/Firefox apenas)\",\npopup_size:\"Tamanho\",\npopup_position:\"Posi\\u00E7\\u00E3o (X/Y)\",\nid:\"Id\",\nstyle:\"Estilo\",\nclasses:\"Classes\",\ntarget_name:\"Nome do alvo\",\nlangdir:\"Dire\\u00E7\\u00E3o do texto\",\ntarget_langcode:\"linguagem alvo\",\nlangcode:\"C\\u00F3digo da linguagem\",\nencoding:\"Codifica\\u00E7\\u00E3o de caracteres\",\nmime:\"Tipo MIME alvo\",\nrel:\"Rela\\u00E7\\u00E3o p\\u00E1gina/alvo\",\nrev:\"Rela\\u00E7\\u00E3o alvo/p\\u00E1gina\",\ntabindex:\"Tabindex\",\naccesskey:\"Chave de acesso\",\nltr:\"Esquerda para direita\",\nrtl:\"Direita para esquerda\",\nlink_list:\"Lista de hyperlinks\",\ncaption:\"Caption\",\nalt:\"Alt\",\nalignment:\"Alignment\",\npositiontitle:\"Positioning of this image\",\nnotset:\"Not set\",\nleft:\"Left\",\nright:\"Right\",\nmiddle:\"Middle\",\nresizeratio:\"Resizing Ratio\",\nresizewidth:\"Resizing Width\",\nresizeheight:\"Resizing Height\",\nedit:\"Edit\",\nok:\"OK\",\ncancel:\"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/ro.js",
    "content": "tinyMCE.addI18n('ro.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/ro_dlg.js",
    "content": "tinyMCE.addI18n('ro.campsiteimage_dlg',{\ntitle:\"Insereaz\\u0103/editeaz\\u0103 link\",\nurl:\"URL link\",\ntarget:\"\\u0162int\\u0103\",\ntitlefield:\"Titlu\",\nis_email:\"URL-ul pe care l-a\\u0163i introdus pare a fi o adres\\u0103 de email, dori\\u0163i s\\u0103 adaug \\u015Fi prefixul mailto: necesar?\",\nis_external:\"URL-ul pe care l-a\\u0163i introdus pare a fi un link extern, dori\\u0163i s\\u0103 adaug \\u015Fi prefixul http:// necesar?\",\nlist:\"List\\u0103 linkuri\",\ngeneral_tab:\"General\",\npopup_tab:\"Popup\",\nevents_tab:\"Evenimente\",\nadvanced_tab:\"Avansat\",\ngeneral_props:\"Propriet\\u0103\\u0163i generale\",\npopup_props:\"Propriet\\u0103\\u0163i popup\",\nevent_props:\"Evenimente\",\nadvanced_props:\"Propriet\\u0103\\u0163i avansate\",\npopup_opts:\"Op\\u0163iuni\",\nanchor_names:\"Ancore\",\ntarget_same:\"Deschide link \\u00EEn aceast\\u0103 fereastr\\u0103 / acest frame\",\ntarget_parent:\"Deschide link \\u00EEn fereastr\\u0103 / frame-ul p\\u0103rinte\",\ntarget_top:\"Deschide \\u00EEn frame-ul cel mai mare (\\u00EEnlocuie\\u015Fte celelalte frame-uri)\",\ntarget_blank:\"Deschide \\u00EEn fereastr\\u0103 nou\\u0103\",\npopup:\"Popup Javascript\",\npopup_url:\"Popup URL\",\npopup_name:\"Nume fereastr\\u0103\",\npopup_return:\"Insereaz\\u0103 'return false'\",\npopup_scrollbars:\"Arat\\u0103 b\\u0103ri de derulare\",\npopup_statusbar:\"Arat\\u0103 bara de stare\",\npopup_toolbar:\"Arat\\u0103 toolbar-uri\",\npopup_menubar:\"Arat\\u0103 meniul\",\npopup_location:\"Arat\\u0103 bara de adres\\u0103\",\npopup_resizable:\"Fereastr\\u0103 redimensionabil\\u0103?\",\npopup_dependent:\"Dependent (Mozilla/Firefox)?\",\npopup_size:\"M\\u0103rime\",\npopup_position:\"Pozi\\u0163ie (X/Y)\",\nid:\"Id\",\nstyle:\"Stil\",\nclasses:\"Clase\",\ntarget_name:\"Nume \\u0163int\\u0103\",\nlangdir:\"Direc\\u0163ie limb\\u0103\",\ntarget_langcode:\"Limb\\u0103\",\nlangcode:\"Cod limb\\u0103\",\nencoding:\"Set de caractere \\u0163int\\u0103\",\nmime:\"MIME type \\u0163int\\u0103\",\nrel:\"Rela\\u0163ia paginii cu \\u0163inta\",\nrev:\"Rela\\u0163ia \\u0163intei cu pagina\",\ntabindex:\"Tabindex\",\naccesskey:\"Cheie de acces\",\nltr:\"St\\u00E2nga la dreapta\",\nrtl:\"Dreapta la st\\u00E2nga\",\nlink_list:\"List\\u0103 linkuri\",\ncaption:\"Caption\",\nalt:\"Alt\",\nalignment:\"Alignment\",\npositiontitle:\"Positioning of this image\",\nnotset:\"Not set\",\nleft:\"St\\u00E2nga\",\nright:\"Dreapta\",\nmiddle:\"Centru\",\nresizeratio:\"Resizing Ratio\",\nresizewidth:\"Resizing Width\",\nresizeheight:\"Resizing Height\",\nedit:\"Edit\",\nok:\"OK\",\ncancel:\"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/ru.js",
    "content": "tinyMCE.addI18n('ru.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/ru_dlg.js",
    "content": "tinyMCE.addI18n('ru.campsiteimage_dlg',{\ntitle:\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u044C/\\u0440\\u0435\\u0434\\u0430\\u043A\\u0442\\u0438\\u0440\\u043E\\u0432\\u0430\\u0442\\u044C \\u0441\\u0441\\u044B\\u043B\\u043A\\u0443\",\nurl:\"\\u0410\\u0434\\u0440\\u0435\\u0441 \\u0441\\u0441\\u044B\\u043B\\u043A\\u0438\",\ntarget:\"\\u0426\\u0435\\u043B\\u044C\",\ntitlefield:\"\\u041D\\u0430\\u0437\\u0432\\u0430\\u043D\\u0438\\u0435\",\nis_email:\"\\u0412\\u0432\\u0435\\u0434\\u0451\\u043D\\u043D\\u044B\\u0439 \\u0430\\u0434\\u0440\\u0435\\u0441 \\u043F\\u043E\\u0445\\u043E\\u0436 \\u043D\\u0430 email, \\u0432\\u044B \\u0445\\u043E\\u0442\\u0438\\u0442\\u0435 \\u0434\\u043E\\u0431\\u0430\\u0432\\u0438\\u0442\\u044C \\u043F\\u0440\\u0435\\u0444\\u0438\\u043A\\u0441 mailto:?\",\nis_external:\"\\u0412\\u0432\\u0435\\u0434\\u0451\\u043D\\u043D\\u044B\\u0439 \\u0430\\u0434\\u0440\\u0435\\u0441 \\u043F\\u043E\\u0445\\u043E\\u0436 \\u043D\\u0430 \\u0432\\u043D\\u0435\\u0448\\u043D\\u044E\\u044E \\u0441\\u0441\\u044B\\u043B\\u043A\\u0443, \\u0432\\u044B \\u0445\\u043E\\u0442\\u0438\\u0442\\u0435 \\u0434\\u043E\\u0431\\u0430\\u0432\\u0438\\u0442\\u044C \\u043F\\u0440\\u0435\\u0444\\u0438\\u043A\\u0441 http://?\",\nlist:\"\\u0421\\u043F\\u0438\\u0441\\u043E\\u043A \\u0441\\u0441\\u044B\\u043B\\u043E\\u043A\",\ngeneral_tab:\"\\u041E\\u0431\\u0449\\u0438\\u0435\",\npopup_tab:\"\\u0412\\u0441\\u043F\\u043B\\u044B\\u0432\\u0430\\u044E\\u0449\\u0435\\u0435 \\u043E\\u043A\\u043D\\u043E\",\nevents_tab:\"\\u0421\\u043E\\u0431\\u044B\\u0442\\u0438\\u044F\",\nadvanced_tab:\"\\u0414\\u043E\\u043F\\u043E\\u043B\\u043D\\u0438\\u0442\\u0435\\u043B\\u044C\\u043D\\u044B\\u0435\",\ngeneral_props:\"\\u041E\\u0431\\u0449\\u0438\\u0435 \\u0441\\u0432\\u043E\\u0439\\u0441\\u0442\\u0432\\u0430\",\npopup_props:\"\\u0421\\u0432\\u043E\\u0439\\u0441\\u0442\\u0432\\u0430 \\u0432\\u0441\\u043F\\u043B\\u044B\\u0432\\u0430\\u044E\\u0449\\u0435\\u0433\\u043E \\u043E\\u043A\\u043D\\u0430\",\nevent_props:\"\\u0421\\u043E\\u0431\\u044B\\u0442\\u0438\\u044F\",\nadvanced_props:\"\\u0414\\u043E\\u043F\\u043E\\u043B\\u043D\\u0438\\u0442\\u0435\\u043B\\u044C\\u043D\\u044B\\u0435 \\u0441\\u0432\\u043E\\u0439\\u0441\\u0442\\u0432\\u0430\",\npopup_opts:\"\\u041F\\u0430\\u0440\\u0430\\u043C\\u0435\\u0442\\u0440\\u044B\",\nanchor_names:\"\\u042F\\u043A\\u043E\\u0440\\u044F\",\ntarget_same:\"\\u041E\\u0442\\u043A\\u0440\\u044B\\u0442\\u044C \\u0432 \\u044D\\u0442\\u043E\\u043C \\u043E\\u043A\\u043D\\u0435 / \\u0444\\u0440\\u0435\\u0439\\u043C\\u0435\",\ntarget_parent:\"\\u041E\\u0442\\u043A\\u0440\\u044B\\u0442\\u044C \\u0432 \\u0440\\u043E\\u0434\\u0438\\u0442\\u0435\\u043B\\u044C\\u0441\\u043A\\u043E\\u043C \\u043E\\u043A\\u043D\\u0435 / \\u0444\\u0440\\u0435\\u0439\\u043C\\u0435\",\ntarget_top:\"\\u041E\\u0442\\u043A\\u0440\\u044B\\u0442\\u044C \\u0432 \\u0432\\u0435\\u0440\\u0445\\u043D\\u0435\\u043C \\u0444\\u0440\\u0435\\u0439\\u043C\\u0435 (\\u0437\\u0430\\u043C\\u0435\\u0449\\u0430\\u0435\\u0442 \\u0432\\u0441\\u0435 \\u043E\\u0441\\u0442\\u0430\\u043B\\u044C\\u043D\\u044B\\u0435)\",\ntarget_blank:\"\\u041E\\u0442\\u043A\\u0440\\u044B\\u0442\\u044C \\u0432 \\u043D\\u043E\\u0432\\u043E\\u043C \\u043E\\u043A\\u043D\\u0435\",\npopup:\"\\u0412\\u0441\\u043F\\u043B\\u044B\\u0432\\u0430\\u044E\\u0449\\u0435\\u0435 Javascript-\\u043E\\u043A\\u043D\\u043E\",\npopup_url:\"\\u0410\\u0434\\u0440\\u0435\\u0441 \\u0432\\u0441\\u043F\\u043B\\u044B\\u0432\\u0430\\u044E\\u0449\\u0435\\u0433\\u043E \\u043E\\u043A\\u043D\\u0430\",\npopup_name:\"\\u041D\\u0430\\u0437\\u0432\\u0430\\u043D\\u0438\\u0435 \\u043E\\u043A\\u043D\\u0430\",\npopup_return:\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u044C 'return false'\",\npopup_scrollbars:\"\\u041F\\u043E\\u043A\\u0430\\u0437\\u0430\\u0442\\u044C \\u043F\\u043E\\u043B\\u043E\\u0441\\u044B \\u043F\\u0440\\u043E\\u043A\\u0440\\u0443\\u0442\\u043A\\u0438\",\npopup_statusbar:\"\\u041F\\u043E\\u043A\\u0430\\u0437\\u0430\\u0442\\u044C \\u0441\\u0442\\u0440\\u043E\\u043A\\u0443 \\u0441\\u043E\\u0441\\u0442\\u043E\\u044F\\u043D\\u0438\\u044F\",\npopup_toolbar:\"\\u041F\\u043E\\u043A\\u0430\\u0437\\u0430\\u0442\\u044C \\u043F\\u0430\\u043D\\u0435\\u043B\\u0438 \\u0438\\u043D\\u0441\\u0442\\u0440\\u0443\\u043C\\u0435\\u043D\\u0442\\u043E\\u0432\",\npopup_menubar:\"\\u041F\\u043E\\u043A\\u0430\\u0437\\u0430\\u0442\\u044C \\u0441\\u0442\\u0440\\u043E\\u043A\\u0443 \\u043C\\u0435\\u043D\\u044E\",\npopup_location:\"\\u041F\\u043E\\u043A\\u0430\\u0437\\u0430\\u0442\\u044C \\u0441\\u0442\\u0440\\u043E\\u043A\\u0443 \\u0430\\u0434\\u0440\\u0435\\u0441\\u0430\",\npopup_resizable:\"\\u0421\\u0434\\u0435\\u043B\\u0430\\u0442\\u044C \\u0440\\u0430\\u0437\\u043C\\u0435\\u0440 \\u043E\\u043A\\u043D\\u0430 \\u0438\\u0437\\u043C\\u0435\\u043D\\u044F\\u0435\\u043C\\u044B\\u043C\",\npopup_dependent:\"\\u0417\\u0430\\u0432\\u0438\\u0441\\u0438\\u043C\\u044B\\u0435 (\\u0442\\u043E\\u043B\\u044C\\u043A\\u043E Mozilla/Firefox)\",\npopup_size:\"\\u0420\\u0430\\u0437\\u043C\\u0435\\u0440\",\npopup_position:\"\\u041F\\u043E\\u0437\\u0438\\u0446\\u0438\\u044F (X/Y)\",\nid:\"\\u0418\\u0434\\u0435\\u043D\\u0442\\u0438\\u0444\\u0438\\u043A\\u0430\\u0442\\u043E\\u0440\",\nstyle:\"\\u0421\\u0442\\u0438\\u043B\\u044C\",\nclasses:\"\\u041A\\u043B\\u0430\\u0441\\u0441\\u044B\",\ntarget_name:\"\\u041D\\u0430\\u0437\\u0432\\u0430\\u043D\\u0438\\u0435 \\u0446\\u0435\\u043B\\u0438\",\nlangdir:\"\\u041D\\u0430\\u043F\\u0440\\u0430\\u0432\\u043B\\u0435\\u043D\\u0438\\u0435 \\u044F\\u0437\\u044B\\u043A\\u0430\",\ntarget_langcode:\"\\u0426\\u0435\\u043B\\u0435\\u0432\\u043E\\u0439 \\u044F\\u0437\\u044B\\u043A\",\nlangcode:\"\\u041A\\u043E\\u0434 \\u044F\\u0437\\u044B\\u043A\\u0430\",\nencoding:\"\\u0426\\u0435\\u043B\\u0435\\u0432\\u0430\\u044F \\u043A\\u043E\\u0434\\u0438\\u0440\\u043E\\u0432\\u043A\\u0430\",\nmime:\"\\u0426\\u0435\\u043B\\u0435\\u0432\\u043E\\u0439 MIME-\\u0442\\u0438\\u043F\",\nrel:\"\\u041E\\u0442\\u043D\\u043E\\u0448\\u0435\\u043D\\u0438\\u0435 \\u0441\\u0442\\u0440\\u0430\\u043D\\u0438\\u0446\\u0430 \\u043A \\u0446\\u0435\\u043B\\u0438\",\nrev:\"\\u041E\\u0442\\u043D\\u043E\\u0448\\u0435\\u043D\\u0438\\u0435 \\u0446\\u0435\\u043B\\u044C \\u043A \\u0441\\u0442\\u0440\\u0430\\u043D\\u0438\\u0446\\u0435\",\ntabindex:\"\\u0418\\u043D\\u0434\\u0435\\u043A\\u0441 \\u0442\\u0430\\u0431\\u0443\\u043B\\u044F\\u0446\\u0438\\u0438\",\naccesskey:\"\\u041A\\u043B\\u0430\\u0432\\u0438\\u0448\\u0430 \\u0434\\u043E\\u0441\\u0442\\u0443\\u043F\\u0430\",\nltr:\"\\u0421\\u043B\\u0435\\u0432\\u0430 \\u043D\\u0430\\u043F\\u0440\\u0430\\u0432\\u043E\",\nrtl:\"\\u0421\\u043F\\u0440\\u0430\\u0432\\u0430 \\u043D\\u0430\\u043B\\u0435\\u0432\\u043E\",\nlink_list:\"\\u0421\\u043F\\u0438\\u0441\\u043E\\u043A \\u0441\\u0441\\u044B\\u043B\\u043E\\u043A\",\ncaption:\"Caption\",\nalt:\"Alt\",\nalignment:\"Alignment\",\npositiontitle:\"Positioning of this image\",\nnotset:\"Not set\",\nleft:\"Left\",\nright:\"Right\",\nmiddle:\"Middle\",\nresizeratio:\"Resizing Ratio\",\nresizewidth:\"Resizing Width\",\nresizeheight:\"Resizing Height\",\nedit:\"Edit\",\nok:\"OK\",\ncancel:\"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/sr.js",
    "content": "tinyMCE.addI18n('sr.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/sr_dlg.js",
    "content": "tinyMCE.addI18n('sr.campsiteimage_dlg',{\ntitle:\"Umetni/uredi poveznicu\",\nurl:\"URL poveznice\",\ntarget:\"Meta\",\ntitlefield:\"Naslov\",\nis_email:\"URL koji ste uneli izgleda kao e-mail adresa, \\u017Eelite li dodati potrebni mailto: prefiks?\",\nis_external:\"URL koji ste uneli izgleda kao vanjska poveznica, \\u017Eelite li dodati potrebni http:// prefiks?\",\nlist:\"Lista poveznica\",\ngeneral_tab:\"Osnovno\",\npopup_tab:\"Popup\",\nevents_tab:\"Doga\\u0111aj\",\nadvanced_tab:\"Napredno\",\ngeneral_props:\"Osnovna svojstva\",\npopup_props:\"Svojstva popup prozora\",\nevent_props:\"Doga\\u0111aji\",\nadvanced_props:\"Napredna svojstva\",\npopup_opts:\"Opcije\",\nanchor_names:\"Sidra\",\ntarget_same:\"Otovori u novom prozoru / okviru\",\ntarget_parent:\"Otvori u izvornom prozoru / okvir\",\ntarget_top:\"Otvori u gornjem okviru (zamjenjuje sve okvire)\",\ntarget_blank:\"Otvori u novom prozoru\",\npopup:\"Javascript popup\",\npopup_url:\"Popup URL\",\npopup_name:\"Ime prozora\",\npopup_return:\"Umetni 'return false'\",\npopup_scrollbars:\"Poka\\u017Ei kliza\\u010De\",\npopup_statusbar:\"Poka\\u017Ei statusnu traku\",\npopup_toolbar:\"Poka\\u017Ei alatne trake\",\npopup_menubar:\"Poka\\u017Ei izbornik\",\npopup_location:\"Poka\\u017Ei traku lokacije\",\npopup_resizable:\"Prozor promjenjive veli\\u010Dine\",\npopup_dependent:\"Ovisan (samo za Mozilla/Firefox)\",\npopup_size:\"Veli\\u010Dina\",\npopup_position:\"Pozicija (X/Y)\",\nid:\"Id\",\nstyle:\"Stil\",\nclasses:\"Klasa\",\ntarget_name:\"Ime mete\",\nlangdir:\"Smjer jezika\",\ntarget_langcode:\"Jezik\",\nlangcode:\"Kod jezika\",\nencoding:\"Kodiranje znakova\",\nmime:\"MIME tip\",\nrel:\"Odnos stranice prema meti\",\nrev:\"Odnos mete prema stranici\",\ntabindex:\"Tabindex\",\naccesskey:\"Accesskey\",\nltr:\"S leva na desno\",\nrtl:\"S desna na levo\",\nlink_list:\"Lista poveznica\",\ncaption:\"Caption\",\nalt:\"Alt\",\nalignment:\"Alignment\",\npositiontitle:\"Positioning of this image\",\nnotset:\"Not set\",\nleft:\"Left\",\nright:\"Right\",\nmiddle:\"Middle\",\nresizeratio:\"Resizing Ratio\",\nresizewidth:\"Resizing Width\",\nresizeheight:\"Resizing Height\",\nedit:\"Edit\",\nok:\"OK\",\ncancel:\"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/sv.js",
    "content": "tinyMCE.addI18n('sv.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/sv_dlg.js",
    "content": "tinyMCE.addI18n('sv.campsiteimage_dlg',{\ntitle:\"Insert image\",\nlanguage:\"Language\",\nsection:\"Section\",\narticle:\"Article\",\npublication:\"Publication\",\ngeneral_tab:\"General\",\ngeneral_props:\"General properties\",\nissue:\"Issue\",\ntarget:\"Target\",\ntarget_same:\"Open in this window / frame\",\ntarget_parent:\"Open in parent window / frame\",\ntarget_top:\"Open in top frame (replaces all frames)\",\ntarget_blank:\"Open in new window\",\nid:\"Id\",\nstyle:\"Style\",\nclasses:\"Classes\",\ntarget_name:\"Target name\",\nlangdir:\"Language direction\",\ntarget_langcode:\"Target language\",\nlangcode:\"Language code\",\nencoding:\"Target character encoding\",\nmime:\"Target MIME type\",\nrel:\"Relationship page to target\",\nrev:\"Relationship target to page\",\ntabindex:\"Tabindex\",\naccesskey:\"Accesskey\",\nltr:\"Left to right\",\nrtl:\"Right to left\",\nlink_list:\"Link list\",\nis_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\nis_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\",\ncaption:\"Caption\",\nalt:\"Alt\",\nalignment:\"Alignment\",\npositiontitle:\"Positioning of this image\",\nnotset:\"Not set\",\nleft:\"Left\",\nright:\"Right\",\nmiddle:\"Middle\",\nresizeratio:\"Resizing Ratio\",\nresizewidth:\"Resizing Width\",\nresizeheight:\"Resizing Height\",\nedit:\"Edit\",\nok:\"OK\",\ncancel:\"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/tr.js",
    "content": "tinyMCE.addI18n('tr.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/tr_dlg.js",
    "content": "tinyMCE.addI18n('tr.campsiteimage_dlg',{\n    title: \"Insert image\",\n    language: \"Language\",\n    section: \"Section\",\n    article: \"Article\",\n    publication: \"Publication\",\n    general_tab: \"General\",\n    general_props: \"General properties\",\n    issue: \"Issue\",\n    target: \"Target\",\n    target_same: \"Open in this window / frame\",\n    target_parent: \"Open in parent window / frame\",\n    target_top: \"Open in top frame (replaces all frames)\",\n    target_blank: \"Open in new window\",\n    id: \"Id\",\n    style: \"Style\",\n    classes: \"Classes\",\n    target_name: \"Target name\",\n    langdir: \"Language direction\",\n    target_langcode: \"Target language\",\n    langcode: \"Language code\",\n    encoding: \"Target character encoding\",\n    mime: \"Target MIME type\",\n    rel: \"Relationship page to target\",\n    rev: \"Relationship target to page\",\n    tabindex: \"Tabindex\",\n    accesskey: \"Accesskey\",\n    ltr: \"Left to right\",\n    rtl: \"Right to left\",\n    link_list: \"Link list\",\n    is_email: \"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external: \"The URL you entered seems to external link, do you want to add the required http:// prefix?\",\n    caption: \"Caption\",\n    alt: \"Alt\",\n    alignment: \"Alignment\",\n    positiontitle: \"Positioning of this image\",\n    notset: \"Not set\",\n    left: \"Left\",\n    right: \"Right\",\n    middle: \"Middle\",\n    resizeratio: \"Resizing Ratio\",\n    resizenotice: \"Resize ratio is overridden by the width/height settings\",\n    resizewidth: \"Resizing Width\",\n    resizeheight: \"Resizing Height\",\n    edit: \"Edit\",\n    ok: \"OK\",\n    cancel: \"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/uk.js",
    "content": "tinyMCE.addI18n('uk.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/uk_dlg.js",
    "content": "tinyMCE.addI18n('uk.campsiteimage_dlg',{\n    title: \"Insert image\",\n    language: \"Language\",\n    section: \"Section\",\n    article: \"Article\",\n    publication: \"Publication\",\n    general_tab: \"General\",\n    general_props: \"General properties\",\n    issue: \"Issue\",\n    target: \"Target\",\n    target_same: \"Open in this window / frame\",\n    target_parent: \"Open in parent window / frame\",\n    target_top: \"Open in top frame (replaces all frames)\",\n    target_blank: \"Open in new window\",\n    id: \"Id\",\n    style: \"Style\",\n    classes: \"Classes\",\n    target_name: \"Target name\",\n    langdir: \"Language direction\",\n    target_langcode: \"Target language\",\n    langcode: \"Language code\",\n    encoding: \"Target character encoding\",\n    mime: \"Target MIME type\",\n    rel: \"Relationship page to target\",\n    rev: \"Relationship target to page\",\n    tabindex: \"Tabindex\",\n    accesskey: \"Accesskey\",\n    ltr: \"Left to right\",\n    rtl: \"Right to left\",\n    link_list: \"Link list\",\n    is_email: \"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external: \"The URL you entered seems to external link, do you want to add the required http:// prefix?\",\n    caption: \"Caption\",\n    alt: \"Alt\",\n    alignment: \"Alignment\",\n    positiontitle: \"Positioning of this image\",\n    notset: \"Not set\",\n    left: \"Left\",\n    right: \"Right\",\n    middle: \"Middle\",\n    resizeratio: \"Resizing Ratio\",\n    resizenotice: \"Resize ratio is overridden by the width/height settings\",\n    resizewidth: \"Resizing Width\",\n    resizeheight: \"Resizing Height\",\n    edit: \"Edit\",\n    ok: \"OK\",\n    cancel: \"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/zh.js",
    "content": "tinyMCE.addI18n('zh.campsiteimage',{\n    editor_button: \"Insert image\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/langs/zh_dlg.js",
    "content": "tinyMCE.addI18n('zh.campsiteimage_dlg',{\n    title: \"Insert image\",\n    language: \"Language\",\n    section: \"Section\",\n    article: \"Article\",\n    publication: \"Publication\",\n    general_tab: \"General\",\n    general_props: \"General properties\",\n    issue: \"Issue\",\n    target: \"Target\",\n    target_same: \"Open in this window / frame\",\n    target_parent: \"Open in parent window / frame\",\n    target_top: \"Open in top frame (replaces all frames)\",\n    target_blank: \"Open in new window\",\n    id: \"Id\",\n    style: \"Style\",\n    classes: \"Classes\",\n    target_name: \"Target name\",\n    langdir: \"Language direction\",\n    target_langcode: \"Target language\",\n    langcode: \"Language code\",\n    encoding: \"Target character encoding\",\n    mime: \"Target MIME type\",\n    rel: \"Relationship page to target\",\n    rev: \"Relationship target to page\",\n    tabindex: \"Tabindex\",\n    accesskey: \"Accesskey\",\n    ltr: \"Left to right\",\n    rtl: \"Right to left\",\n    link_list: \"Link list\",\n    is_email: \"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external: \"The URL you entered seems to external link, do you want to add the required http:// prefix?\",\n    caption: \"Caption\",\n    alt: \"Alt\",\n    alignment: \"Alignment\",\n    positiontitle: \"Positioning of this image\",\n    notset: \"Not set\",\n    left: \"Left\",\n    right: \"Right\",\n    middle: \"Middle\",\n    resizeratio: \"Resizing Ratio\",\n    resizenotice: \"Resize ratio is overridden by the width/height settings\",\n    resizewidth: \"Resizing Width\",\n    resizeheight: \"Resizing Height\",\n    edit: \"Edit\",\n    ok: \"OK\",\n    cancel: \"Cancel\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteimage/popup.php",
    "content": "<?php\n$GLOBALS['g_campsiteDir'] = dirname(dirname(dirname(dirname(dirname(__FILE__)))));\n\n// run zend\nrequire_once $GLOBALS['g_campsiteDir'] . '/application.php';\n$application->bootstrap();\n\n/**\n * The main GUI for the ImageManager.\n * @author $Author: paul $\n * @author $Author: vlad $\n * @version $Id: manager.php 5087 2006-06-01 21:54:08Z paul $\n * @package ImageManager\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/User.php');\n\n$userId = Zend_Auth::getInstance()->getIdentity();\n$userTmp = new User($userId);\nif (!$userTmp->exists() || !$userTmp->isAdmin()) {\n    header(\"Location: /$ADMIN/login.php\");\n    exit(0);\n}\nunset($userTmp);\n\nrequire_once('config.inc.php');\nrequire_once('classes/ImageManager.php');\n\n$manager = new ImageManager($IMConfig);\n$imageParams = '';\nif (isset($_REQUEST['image_id'])) {\n    $imageParams = '&image_id=' . $_REQUEST['image_id'];\n    if (isset($_REQUEST['image_alt'])) {\n        $imageParams .= '&image_alt=' . str_replace('\\\\', '', $_REQUEST['image_alt']);\n    }\n    if (isset($_REQUEST['image_title'])) {\n        $imageParams .= '&image_title=' . urlencode(str_replace('\\\\', '', $_REQUEST['image_title']));\n    }\n    if (isset($_REQUEST['image_alignment'])) {\n        if (in_array($_REQUEST['image_alignment'], array('left','right','middle'))) {\n            $imageParams .= '&image_alignment=' . $_REQUEST['image_alignment'];\n        }\n    }\n    if (isset($_REQUEST['image_ratio'])) {\n        $imageParams .= '&image_ratio=' . (int) $_REQUEST['image_ratio'];\n    }\n    if (isset($_REQUEST['image_resize_width'])) {\n        $imageParams .= '&image_resize_width=' . (int) $_REQUEST['image_resize_width'];\n    }\n    if (isset($_REQUEST['image_resize_height'])) {\n        $imageParams .= '&image_resize_height=' . (int) $_REQUEST['image_resize_height'];\n    }\n}\n\n$preferencesService = \\Zend_Registry::get('container')->getService('preferences');\n$richtextCaption = $preferencesService->MediaRichTextCaptions;\n$captionLimit = $preferencesService->MediaCaptionLength;\n\n?>\n<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\n<html>\n<head>\n  <title>{#campsiteimage_dlg.title}</title>\n\n  <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\n  <link href=\"/js/tinymce/plugins/campsiteimage/css/campsiteimage.css\" rel=\"stylesheet\" type=\"text/css\" />\n  <script type=\"text/javascript\" src=\"/js/jquery/jquery-1.7.1.min.js\"></script>\n  <script type=\"text/javascript\" src=\"/js/jquery/jquery-ui-1.8.6.custom.min.js\"></script>\n  <script type=\"text/javascript\" src=\"/js/tinymce/tiny_mce_popup.js\"></script>\n  <script type=\"text/javascript\">\n  <?php\n    require_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/media-archive/editor_load_tinymce.php\");\n\n    if ($richtextCaption == 'Y') { ?>\n      var captionsEnabled = true;\n      var captionLimit = <?php echo (int) $captionLimit; ?>;\n  <?php } else { ?>\n      var captionsEnabled = false;\n  <?php } ?>\n  </script>\n  <script type=\"text/javascript\" src=\"/js/tinymce/plugins/campsiteimage/js/campsiteimage.js?v=4.3.2\"></script>\n  <script type=\"text/javascript\" src=\"/js/tinymce/plugins/campsiteimage/assets/popup.js\"></script>\n  <script type=\"text/javascript\" src=\"/js/tinymce/plugins/campsiteimage/assets/dialog.js\"></script>\n  <script type=\"text/javascript\" src=\"/js/tinymce/plugins/campsiteimage/assets/manager.js\"></script>\n</head>\n<body>\n  <form action=\"images.php\" id=\"uploadForm\" method=\"post\" enctype=\"multipart/form-data\" onSubmit=\"<?php\n    if ($richtextCaption == 'Y') {\n        echo 'return validateTinyMCEEditors();';\n    }\n?>\">\n  <fieldset>\n    <div class=\"dirs\">\n      <iframe src=\"/js/tinymce/plugins/campsiteimage/images.php?article_id=<?php echo $_REQUEST['article_id'] . $imageParams.'&time='.time(); ?>\" name=\"imgManager\" id=\"imgManager\" class=\"imageFrame\" scrolling=\"auto\" title=\"Image Selection\" frameborder=\"0\"></iframe>\n    </div>\n  </fieldset>\n\n  <!-- image properties -->\n  <table class=\"inputTable\">\n    <input type=\"hidden\" id=\"f_image_template_id\" value=\"\" />\n    <input type=\"hidden\" id=\"f_url\" value=\"\" />\n    <input type=\"hidden\" id=\"f_vert\" value=\"\" />\n    <input type=\"hidden\" id=\"f_horiz\" value=\"\" />\n    <input type=\"hidden\" id=\"f_border\" value=\"\" />\n    <input type=\"hidden\" id=\"f_width\" value=\"\" />\n    <input type=\"hidden\" id=\"f_height\" value=\"\" />\n    <input type=\"hidden\" id=\"orginal_width\" />\n    <input type=\"hidden\" id=\"orginal_height\" />\n    <tr>\n      <td align=\"right\"><label for=\"f_alt\">{#campsiteimage_dlg.alt}</label></td>\n      <td><input type=\"text\" id=\"f_alt\" class=\"largelWidth\" value=\"\" /></td>\n    </tr>\n    <tr>\n      <td align=\"right\"><label for=\"f_caption\">{#campsiteimage_dlg.caption}</label></td>\n      <td>\n          <?php\n            if ($richtextCaption == 'Y') {\n              $user = \\Zend_Registry::get('container')->getService('user');\n              $languageSelectedObj = new Language((int) camp_session_get('LoginLanguageId', 0));\n              $editorLanguage = !empty($_COOKIE['TOL_Language']) ? $_COOKIE['TOL_Language'] : $languageSelectedObj->getCode();\n\n              editor_load_tinymce('f_caption', $user->getCurrentUser(), $editorLanguage, array('max_chars' => $captionLimit, 'toolbar_length' => 19));\n          ?>\n              <textarea name=\"f_caption\" id=\"f_caption\" rows=\"8\" cols=\"70\"></textarea>\n          <?php } else { ?>\n              <input type=\"text\" id=\"f_caption\" name=\"f_caption\" class=\"largelWidth\" value=\"\" />\n          <?php } ?>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"right\"><label for=\"f_align\">{#campsiteimage_dlg.alignment}:</label></td>\n      <td>\n        <select size=\"1\" id=\"f_align\"  title=\"{#campsiteimage_dlg.positiontitle}\">\n          <option value=\"\">{#campsiteimage_dlg.notset}</option>\n          <option value=\"left\">{#campsiteimage_dlg.left}</option>\n          <option value=\"right\">{#campsiteimage_dlg.right}</option>\n          <option value=\"middle\">{#campsiteimage_dlg.middle}</option>\n        </select>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"right\"><label for=\"f_ratio\">{#campsiteimage_dlg.resizeratio}:</label></td>\n      <td><input type=\"text\" id=\"f_ratio\" class=\"largelWidth\" value=\"\" /></td>\n    </tr>\n    <tr>\n      <td colspan=\"2\" align=\"right\"><small>{#campsiteimage_dlg.resizenotice}</small></td>\n    </tr>\n    <tr>\n      <td align=\"right\"><label for=\"f_resize_width\">{#campsiteimage_dlg.resizewidth}:</label></td>\n      <td><input type=\"hidden\" id=\"f_original_width\" value=\"\" /><input type=\"text\" id=\"f_resize_width\" class=\"largelWidth\" value=\"\" /></td>\n    </tr>\n    <tr>\n      <td align=\"right\"><label for=\"f_resize_height\">{#campsiteimage_dlg.resizeheight}:</label></td>\n      <td><input type=\"hidden\" id=\"f_original_height\" value=\"\" /><input type=\"text\" id=\"f_resize_height\" class=\"largelWidth\" value=\"\" /></td>\n    </tr>\n    </table>\n    <!--// image properties -->\n    <div style=\"text-align: right;\">\n      <hr />\n      <?php if (isset($_REQUEST['image_id'])) { ?>\n      <button type=\"button\" class=\"buttons\" onclick=\"CampsiteImageDialog.insert();\">{#campsiteimage_dlg.edit}</button>\n      <?php } else { ?>\n      <button type=\"button\" class=\"buttons\" onclick=\"CampsiteImageDialog.insert();\">{#campsiteimage_dlg.ok}</button>\n      <?php } ?>\n      <button type=\"button\" class=\"buttons\" onclick=\"CampsiteImageDialog.close();\">{#campsiteimage_dlg.cancel}</button>\n    </div>\n  </form>\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/css/campsiteinternallink.css",
    "content": ".mceLinkList, .mceAnchorList, #targetlist {width:280px;}\r\n.mceActionPanel {margin-top:7px;}\r\n.panel_wrapper div.current {height:280px;}\r\n#classlist, #title, #href {width:280px;}\r\n#popupurl, #popupname {width:200px;}\r\n#popupwidth, #popupheight, #popupleft, #popuptop {width:30px;vertical-align:middle;text-align:center;}\r\n#id, #style, #classes, #target, #dir, #hreflang, #lang, #charset, #type, #rel, #rev, #tabindex, #accesskey {width:200px;}\r\n#events_panel input {width:200px;}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/editor_plugin.js",
    "content": "(function(){tinymce.PluginManager.requireLangPack('campsiteinternallink');tinymce.create('tinymce.plugins.campsiteinternallink',{init:function(ed,url){this.editor=ed;ed.addCommand('mcecampsiteinternallink',function(){var se=ed.selection;var url_params='';if(se.isCollapsed()&&!ed.dom.getParent(se.getNode(),'A')){alert(ed.getLang('campsiteinternallink.select_text'));return}var action='';var elm=se.getNode();elm=ed.dom.getParent(elm,\"A\");if(elm!=null&&elm.nodeName==\"A\"){action=\"update\"}if(action=='update'){var href=ed.dom.getAttrib(elm,'href');publication=getURLVar('IdPublication',href);language=getURLVar('IdLanguage',href);issue=getURLVar('NrIssue',href);section=getURLVar('NrSection',href);article=getURLVar('NrArticle',href);url_params='?IdLanguage='+language+'&IdPublication='+publication+'&NrIssue='+issue+'&NrSection='+section+'&NrArticle='+article}ed.windowManager.open({file:url+'/link.php'+url_params,width:480,height:360,inline:1},{plugin_url:url})});ed.addButton('campsiteinternallink',{title:'campsiteinternallink.editor_button',cmd:'mcecampsiteinternallink',image:url+'/img/newscoopinternallink.gif'});ed.addShortcut('ctrl+k','campsiteinternallink.editor_button','mcecampsiteinternallink');ed.onNodeChange.add(function(ed,cm,n,co){cm.setDisabled('link',co&&n.nodeName!='A');cm.setActive('link',n.nodeName=='A'&&!n.name)})},getInfo:function(){return{longname:'Newscoop - Internal Link',author:'Sourcefabric',authorurl:'http://www.sourcefabric.org',infourl:'http://dev.sourcefabric.org/browse/CS',version:'3.2'}}});tinymce.PluginManager.add('campsiteinternallink',tinymce.plugins.campsiteinternallink)})();function getURLVar(urlVarName,href){var urlHalves=String(href).split('?');var urlVarValue='';if(urlHalves[1]){var urlVars=urlHalves[1].split('&');for(i=0;i<=(urlVars.length);i++){if(urlVars[i]){var urlVarPair=urlVars[i].split('=');if(urlVarPair[0]&&urlVarPair[0]==urlVarName){urlVarValue=urlVarPair[1]}}}}return urlVarValue}\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/editor_plugin_src.js",
    "content": "/**\n * $Id: editor_plugin_src.js 539 2008-01-14 19:08:58Z holman $\n *\n * @author Campware\n * @copyright Copyright 2008-2009, Campware - MDLF, All rights reserved.\n */\n\n(function() {\n    tinymce.PluginManager.requireLangPack('campsiteinternallink');\n\n    tinymce.create('tinymce.plugins.campsiteinternallink', {\n        init : function(ed, url) {\n            this.editor = ed;\n\n    \t    // Register commands\n    \t    ed.addCommand('mcecampsiteinternallink', function() {\n    \t        var se = ed.selection;\n    \t        var url_params = '';\n\n                // No selection and not in link\n                if (se.isCollapsed() && !ed.dom.getParent(se.getNode(), 'A')) {\n                    alert(ed.getLang('campsiteinternallink.select_text'));\n                    return;\n                }\n\n                var action = '';\n                var elm = se.getNode();\n                elm = ed.dom.getParent(elm, \"A\");\n                if (elm != null && elm.nodeName == \"A\") {\n                    action = \"update\";\n                }\n\n                if (action == 'update') {\n                    var href = ed.dom.getAttrib(elm, 'href');\n\n                    publication = getURLVar('IdPublication', href);\n                    language = getURLVar('IdLanguage', href);\n                    issue = getURLVar('NrIssue', href);\n                    section = getURLVar('NrSection', href);\n                    article = getURLVar('NrArticle', href);\n\n                    url_params = '?IdLanguage=' + language\n                        + '&IdPublication=' + publication\n                        + '&NrIssue=' + issue\n                        + '&NrSection=' + section\n                        + '&NrArticle=' + article;\n                }\n\n                ed.windowManager.open({\n                    file : url + '/link.php' + url_params,\n                    width : 480,\n                    height : 360,\n                    inline : 1\n                }, {\n                    plugin_url : url\n                });\n            });\n\n            // Register buttons\n            ed.addButton('campsiteinternallink', {\n                title : 'campsiteinternallink.editor_button',\n                cmd : 'mcecampsiteinternallink',\n                image : url + '/img/newscoopinternallink.gif'\n            });\n\n            ed.addShortcut('ctrl+k', 'campsiteinternallink.editor_button', 'mcecampsiteinternallink');\n\n            ed.onNodeChange.add(function(ed, cm, n, co) {\n                cm.setDisabled('link', co && n.nodeName != 'A');\n                cm.setActive('link', n.nodeName == 'A' && !n.name);\n            });\n        },\n\n        getInfo : function() {\n            return {\n                longname : 'Newscoop - Internal Link',\n                author : 'Sourcefabric',\n                authorurl : 'http://www.sourcefabric.org',\n                infourl : 'http://dev.sourcefabric.org/browse/CS',\n                version : '3.2'\n            };\n        }\n    });\n\n    // Register plugin\n    tinymce.PluginManager.add('campsiteinternallink', tinymce.plugins.campsiteinternallink);\n})();\n\n\nfunction getURLVar(urlVarName, href) {\n    //divide the URL in half at the '?'\n    var urlHalves = String(href).split('?');\n    var urlVarValue = '';\n\n    if (urlHalves[1]) {\n        //load all the name/value pairs into an array\n        var urlVars = urlHalves[1].split('&');\n        //loop over the list, and find the specified url variable\n        for(i=0; i<=(urlVars.length); i++){\n            if(urlVars[i]){\n                //load the name/value pair into an array\n                var urlVarPair = urlVars[i].split('=');\n                if (urlVarPair[0] && urlVarPair[0] == urlVarName) {\n                    //I found a variable that matches, load it's value into the return variable\n                    urlVarValue = urlVarPair[1];\n                }\n            }\n        }\n    }\n    return urlVarValue;\n}\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/js/campsiteinternallink.js",
    "content": "/* Functions for the campsiteinternallink plugin popup */\r\n\r\ntinyMCEPopup.requireLangPack();\r\n\r\nvar templates = {\r\n    \"window.open\" : \"window.open('${url}','${target}','${options}')\"\r\n};\r\n\r\nfunction preinit() {\r\n    var url;\r\n\r\n    if (url = tinyMCEPopup.getParam(\"external_link_list_url\"))\r\n\tdocument.write('<script language=\"javascript\" type=\"text/javascript\" src=\"' + tinyMCEPopup.editor.documentBaseURI.toAbsolute(url) + '\"></script>');\r\n}\r\n\r\nfunction changeClass() {\r\n    var f = document.forms[0];\r\n\r\n    f.classes.value = getSelectValue(f, 'classlist');\r\n}\r\n\r\nfunction init() {\r\n    tinyMCEPopup.resizeToInnerSize();\r\n\r\n    var formObj = document.forms[0];\r\n    var inst = tinyMCEPopup.editor;\r\n    var elm = inst.selection.getNode();\r\n    var action = \"insert\";\r\n    var html;\r\n\r\n    document.getElementById('targetlistcontainer').innerHTML = getTargetListHTML('targetlist','target');\r\n\r\n    elm = inst.dom.getParent(elm, \"A\");\r\n    if (elm != null && elm.nodeName == \"A\")\r\n\taction = \"update\";\r\n\r\n    formObj.insert.value = tinyMCEPopup.getLang(action, 'Insert', true);\r\n\r\n    if (action == \"update\") {\r\n\tvar href = inst.dom.getAttrib(elm, 'href');\r\n\r\n\tselectByValue(formObj, 'targetlist', inst.dom.getAttrib(elm, 'target'), true);\r\n    }\r\n\r\n    addClassesToList('classlist', 'campsiteinternallink_styles');\r\n}\r\n\r\nfunction checkPrefix(n) {\r\n    if (n.value && Validator.isEmail(n) && !/^\\s*mailto:/i.test(n.value) && confirm(tinyMCEPopup.getLang('campsiteinternallink.is_email')))\r\n\tn.value = 'mailto:' + n.value;\r\n\r\n    if (/^\\s*www./i.test(n.value) && confirm(tinyMCEPopup.getLang('campsiteinternallink.is_external')))\r\n\tn.value = 'http://' + n.value;\r\n}\r\n\r\nfunction setFormValue(name, value) {\r\n    document.forms[0].elements[name].value = value;\r\n}\r\n\r\nfunction parseWindowOpen(onclick) {\r\n    var formObj = document.forms[0];\r\n\r\n    // Preprocess center code\r\n    if (onclick.indexOf('return false;') != -1) {\r\n\tformObj.popupreturn.checked = true;\r\n\tonclick = onclick.replace('return false;', '');\r\n    } else\r\n\tformObj.popupreturn.checked = false;\r\n\r\n    var onClickData = parseLink(onclick);\r\n\r\n    if (onClickData != null) {\r\n\tformObj.ispopup.checked = true;\r\n\tsetPopupControlsDisabled(false);\r\n\r\n\tvar onClickWindowOptions = parseOptions(onClickData['options']);\r\n\tvar url = onClickData['url'];\r\n\r\n\tformObj.popupname.value = onClickData['target'];\r\n\tformObj.popupurl.value = url;\r\n\tformObj.popupwidth.value = getOption(onClickWindowOptions, 'width');\r\n\tformObj.popupheight.value = getOption(onClickWindowOptions, 'height');\r\n\r\n\tformObj.popupleft.value = getOption(onClickWindowOptions, 'left');\r\n\tformObj.popuptop.value = getOption(onClickWindowOptions, 'top');\r\n\r\n\tif (formObj.popupleft.value.indexOf('screen') != -1)\r\n\t    formObj.popupleft.value = \"c\";\r\n\r\n\tif (formObj.popuptop.value.indexOf('screen') != -1)\r\n\t    formObj.popuptop.value = \"c\";\r\n\r\n\tformObj.popuplocation.checked = getOption(onClickWindowOptions, 'location') == \"yes\";\r\n\tformObj.popupscrollbars.checked = getOption(onClickWindowOptions, 'scrollbars') == \"yes\";\r\n\tformObj.popupmenubar.checked = getOption(onClickWindowOptions, 'menubar') == \"yes\";\r\n\tformObj.popupresizable.checked = getOption(onClickWindowOptions, 'resizable') == \"yes\";\r\n\tformObj.popuptoolbar.checked = getOption(onClickWindowOptions, 'toolbar') == \"yes\";\r\n\tformObj.popupstatus.checked = getOption(onClickWindowOptions, 'status') == \"yes\";\r\n\tformObj.popupdependent.checked = getOption(onClickWindowOptions, 'dependent') == \"yes\";\r\n\r\n\tbuildOnClick();\r\n    }\r\n}\r\n\r\nfunction parseFunction(onclick) {\r\n    var formObj = document.forms[0];\r\n    var onClickData = parseLink(onclick);\r\n\r\n    // TODO: Add stuff here\r\n}\r\n\r\nfunction getOption(opts, name) {\r\n    return typeof(opts[name]) == \"undefined\" ? \"\" : opts[name];\r\n}\r\n\r\nfunction setPopupControlsDisabled(state) {\r\n    var formObj = document.forms[0];\r\n\r\n    formObj.popupname.disabled = state;\r\n    formObj.popupurl.disabled = state;\r\n    formObj.popupwidth.disabled = state;\r\n    formObj.popupheight.disabled = state;\r\n    formObj.popupleft.disabled = state;\r\n    formObj.popuptop.disabled = state;\r\n    formObj.popuplocation.disabled = state;\r\n    formObj.popupscrollbars.disabled = state;\r\n    formObj.popupmenubar.disabled = state;\r\n    formObj.popupresizable.disabled = state;\r\n    formObj.popuptoolbar.disabled = state;\r\n    formObj.popupstatus.disabled = state;\r\n    formObj.popupreturn.disabled = state;\r\n    formObj.popupdependent.disabled = state;\r\n\r\n    setBrowserDisabled('popupurlbrowser', state);\r\n}\r\n\r\n\r\nfunction getURLVar(urlVarName, href) {\r\n    //divide the URL in half at the '?'\r\n    var urlHalves = String(href).split('?');\r\n    var urlVarValue = '';\r\n\r\n    if(urlHalves[1]){\r\n\t//load all the name/value pairs into an array\r\n\tvar urlVars = urlHalves[1].split('&');\r\n\t//loop over the list, and find the specified url variable\r\n\tfor(i=0; i<=(urlVars.length); i++){\r\n\t    if(urlVars[i]){\r\n\t\t//load the name/value pair into an array\r\n\t\tvar urlVarPair = urlVars[i].split('=');\r\n\t\tif (urlVarPair[0] && urlVarPair[0] == urlVarName) {\r\n\t\t    //I found a variable that matches, load it's value into the return variable\r\n\t\t    urlVarValue = urlVarPair[1];\r\n\t\t}\r\n\t    }\r\n\t}\r\n    }\r\n    return urlVarValue;\r\n}\r\n\r\n\r\nfunction parseLink(link) {\r\n    link = link.replace(new RegExp('&#39;', 'g'), \"'\");\r\n\r\n    var fnName = link.replace(new RegExp(\"\\\\s*([A-Za-z0-9\\.]*)\\\\s*\\\\(.*\", \"gi\"), \"$1\");\r\n\r\n    // Is function name a template function\r\n    var template = templates[fnName];\r\n    if (template) {\r\n\t// Build regexp\r\n\tvar variableNames = template.match(new RegExp(\"'?\\\\$\\\\{[A-Za-z0-9\\.]*\\\\}'?\", \"gi\"));\r\n\tvar regExp = \"\\\\s*[A-Za-z0-9\\.]*\\\\s*\\\\(\";\r\n\tvar replaceStr = \"\";\r\n\tfor (var i=0; i<variableNames.length; i++) {\r\n\t    // Is string value\r\n\t    if (variableNames[i].indexOf(\"'${\") != -1)\r\n\t\tregExp += \"'(.*)'\";\r\n\t    else // Number value\r\n\t\tregExp += \"([0-9]*)\";\r\n\r\n\t    replaceStr += \"$\" + (i+1);\r\n\r\n\t    // Cleanup variable name\r\n\t    variableNames[i] = variableNames[i].replace(new RegExp(\"[^A-Za-z0-9]\", \"gi\"), \"\");\r\n\r\n\t    if (i != variableNames.length-1) {\r\n\t\tregExp += \"\\\\s*,\\\\s*\";\r\n\t\treplaceStr += \"<delim>\";\r\n\t    } else\r\n\t\tregExp += \".*\";\r\n\t}\r\n\r\n\tregExp += \"\\\\);?\";\r\n\r\n\t// Build variable array\r\n\tvar variables = [];\r\n\tvariables[\"_function\"] = fnName;\r\n\tvar variableValues = link.replace(new RegExp(regExp, \"gi\"), replaceStr).split('<delim>');\r\n\tfor (var i=0; i<variableNames.length; i++)\r\n\t    variables[variableNames[i]] = variableValues[i];\r\n\r\n\treturn variables;\r\n    }\r\n\r\n    return null;\r\n}\r\n\r\nfunction parseOptions(opts) {\r\n    if (opts == null || opts == \"\")\r\n\treturn [];\r\n\r\n    // Cleanup the options\r\n    opts = opts.toLowerCase();\r\n    opts = opts.replace(/;/g, \",\");\r\n    opts = opts.replace(/[^0-9a-z=,]/g, \"\");\r\n\r\n    var optionChunks = opts.split(',');\r\n    var options = [];\r\n\r\n    for (var i=0; i<optionChunks.length; i++) {\r\n\tvar parts = optionChunks[i].split('=');\r\n\r\n\tif (parts.length == 2)\r\n\t    options[parts[0]] = parts[1];\r\n    }\r\n\r\n    return options;\r\n}\r\n\r\nfunction buildOnClick() {\r\n    var formObj = document.forms[0];\r\n\r\n    if (!formObj.ispopup.checked) {\r\n\tformObj.onclick.value = \"\";\r\n\treturn;\r\n    }\r\n\r\n    var onclick = \"window.open('\";\r\n    var url = formObj.popupurl.value;\r\n\r\n    onclick += url + \"','\";\r\n    onclick += formObj.popupname.value + \"','\";\r\n\r\n    if (formObj.popuplocation.checked)\r\n\tonclick += \"location=yes,\";\r\n\r\n    if (formObj.popupscrollbars.checked)\r\n\tonclick += \"scrollbars=yes,\";\r\n\r\n    if (formObj.popupmenubar.checked)\r\n\tonclick += \"menubar=yes,\";\r\n\r\n    if (formObj.popupresizable.checked)\r\n\tonclick += \"resizable=yes,\";\r\n\r\n    if (formObj.popuptoolbar.checked)\r\n\tonclick += \"toolbar=yes,\";\r\n\r\n    if (formObj.popupstatus.checked)\r\n\tonclick += \"status=yes,\";\r\n\r\n    if (formObj.popupdependent.checked)\r\n\tonclick += \"dependent=yes,\";\r\n\r\n    if (formObj.popupwidth.value != \"\")\r\n\tonclick += \"width=\" + formObj.popupwidth.value + \",\";\r\n\r\n    if (formObj.popupheight.value != \"\")\r\n\tonclick += \"height=\" + formObj.popupheight.value + \",\";\r\n\r\n    if (formObj.popupleft.value != \"\") {\r\n\tif (formObj.popupleft.value != \"c\")\r\n\t    onclick += \"left=\" + formObj.popupleft.value + \",\";\r\n\telse\r\n\t    onclick += \"left='+(screen.availWidth/2-\" + (formObj.popupwidth.value/2) + \")+',\";\r\n    }\r\n\r\n    if (formObj.popuptop.value != \"\") {\r\n\tif (formObj.popuptop.value != \"c\")\r\n\t    onclick += \"top=\" + formObj.popuptop.value + \",\";\r\n\telse\r\n\t    onclick += \"top='+(screen.availHeight/2-\" + (formObj.popupheight.value/2) + \")+',\";\r\n    }\r\n\r\n    if (onclick.charAt(onclick.length-1) == ',')\r\n\tonclick = onclick.substring(0, onclick.length-1);\r\n\r\n    onclick += \"');\";\r\n\r\n    if (formObj.popupreturn.checked)\r\n\tonclick += \"return false;\";\r\n\r\n    // tinyMCE.debug(onclick);\r\n\r\n    formObj.onclick.value = onclick;\r\n\r\n    if (formObj.href.value == \"\")\r\n\tformObj.href.value = url;\r\n}\r\n\r\nfunction setAttrib(elm, attrib, value) {\r\n    var formObj = document.forms[0];\r\n    var valueElm = formObj.elements[attrib.toLowerCase()];\r\n    var dom = tinyMCEPopup.editor.dom;\r\n\r\n    if (typeof(value) == \"undefined\" || value == null) {\r\n\tvalue = \"\";\r\n\r\n\tif (valueElm)\r\n\t    value = valueElm.value;\r\n    }\r\n\r\n    // Clean up the style\r\n    if (attrib == 'style')\r\n\tvalue = dom.serializeStyle(dom.parseStyle(value));\r\n\r\n    dom.setAttrib(elm, attrib, value);\r\n}\r\n\r\nfunction getAnchorListHTML(id, target) {\r\n    var inst = tinyMCEPopup.editor;\r\n    var nodes = inst.dom.select('a.mceItemAnchor,img.mceItemAnchor'), name, i;\r\n    var html = \"\";\r\n\r\n    html += '<select id=\"' + id + '\" name=\"' + id + '\" class=\"mceAnchorList\" o2nfocus=\"tinyMCE.addSelectAccessibility(event, this, window);\" onchange=\"this.form.' + target + '.value=';\r\n    html += 'this.options[this.selectedIndex].value;\">';\r\n    html += '<option value=\"\">---</option>';\r\n\r\n    for (i=0; i<nodes.length; i++) {\r\n\tif ((name = inst.dom.getAttrib(nodes[i], \"name\")) != \"\")\r\n\t    html += '<option value=\"#' + name + '\">' + name + '</option>';\r\n    }\r\n\r\n    html += '</select>';\r\n\r\n    return html;\r\n}\r\n\r\nfunction insertAction() {\r\n    var inst = tinyMCEPopup.editor;\r\n    var elm, elementArray, i;\r\n\r\n    languageId = document.getElementById(\"IdLanguage\").value;\r\n    publicationElement = document.getElementById(\"IdPublication\");\r\n    publicationId = publicationElement ? publicationElement.value : 0;\r\n    issueElement = document.getElementById(\"NrIssue\");\r\n    issueId = issueElement ? issueElement.value : 0;\r\n    sectionElement = document.getElementById(\"NrSection\");\r\n    sectionId = sectionElement ? sectionElement.value : 0;\r\n    articleElement = document.getElementById(\"NrArticle\");\r\n    articleId = articleElement? articleElement.value : 0;\r\n    targetElement = document.getElementById(\"targetlist\");\r\n    target = targetElement ? targetElement.value : '';\r\n\r\n    // User must at least specify language and publication.\r\n    if ((languageId <= 0) || (publicationId <= 0)) {\r\n\talert(\"You must specify the language and the publication.\");\r\n\treturn false;\r\n    }\r\n\r\n    // Pass data back to the calling window.\r\n    var param = new Object();\r\n    param[\"f_href\"] = \"/campsite/campsite_internal_link?IdPublication=\"+publicationId\r\n\t+\"&IdLanguage=\"+languageId;\r\n    if (issueId > 0) {\r\n\tparam[\"f_href\"] += \"&NrIssue=\" + issueId;\r\n    }\r\n    if (sectionId > 0) {\r\n\tparam[\"f_href\"] += \"&NrSection=\" + sectionId;\r\n    }\r\n    if (articleId > 0) {\r\n\tparam[\"f_href\"] += \"&NrArticle=\" + articleId;\r\n    }\r\n    if (target != '') {\r\n\tif (target == \"_other\") {\r\n\t    param[\"f_target\"] = document.getElementById(\"f_other_target\").value;\r\n\t}\r\n\telse {\r\n\t    param[\"f_target\"] = target;\r\n\t}\r\n    }\r\n    else {\r\n\tparam[\"f_target\"] = \"\";\r\n    }\r\n    param[\"f_title\"] = \"\";\r\n\r\n    elm = inst.dom.getParent(inst.selection.getNode(), \"A\");\r\n\r\n    tinyMCEPopup.execCommand(\"mceBeginUndoLevel\");\r\n\r\n    // Create new anchor elements\r\n    if (elm == null) {\r\n\ttinyMCEPopup.execCommand(\"CreateLink\", false, \"#mce_temp_url#\", {skip_undo : 1});\r\n\telementArray = tinymce.grep(inst.dom.select(\"a\"), function(n) {return inst.dom.getAttrib(n, 'href') == '#mce_temp_url#';});\r\n\tfor (i=0; i<elementArray.length; i++)\r\n\t    setAllAttribs(elm = elementArray[i]);\r\n    }\r\n    setAllAttribs(elm, param[\"f_href\"]);\r\n\r\n    tinyMCEPopup.execCommand(\"mceEndUndoLevel\");\r\n    tinyMCEPopup.close();\r\n}\r\n\r\nfunction setAllAttribs(elm, href) {\r\n    var formObj = document.forms[0];\r\n    var target = getSelectValue(formObj, 'targetlist');\r\n\r\n    setAttrib(elm, 'href', href);\r\n    setAttrib(elm, 'mce_href', href);\r\n    setAttrib(elm, 'title');\r\n    setAttrib(elm, 'target', target == '_self' ? '' : target);\r\n    setAttrib(elm, 'id');\r\n    setAttrib(elm, 'style');\r\n    setAttrib(elm, 'class', getSelectValue(formObj, 'classlist'));\r\n    setAttrib(elm, 'rel');\r\n    setAttrib(elm, 'rev');\r\n    setAttrib(elm, 'charset');\r\n    setAttrib(elm, 'hreflang');\r\n    setAttrib(elm, 'dir');\r\n    setAttrib(elm, 'lang');\r\n    setAttrib(elm, 'tabindex');\r\n    setAttrib(elm, 'accesskey');\r\n    setAttrib(elm, 'type');\r\n    setAttrib(elm, 'onfocus');\r\n    setAttrib(elm, 'onblur');\r\n    setAttrib(elm, 'onclick');\r\n    setAttrib(elm, 'ondblclick');\r\n    setAttrib(elm, 'onmousedown');\r\n    setAttrib(elm, 'onmouseup');\r\n    setAttrib(elm, 'onmouseover');\r\n    setAttrib(elm, 'onmousemove');\r\n    setAttrib(elm, 'onmouseout');\r\n    setAttrib(elm, 'onkeypress');\r\n    setAttrib(elm, 'onkeydown');\r\n    setAttrib(elm, 'onkeyup');\r\n\r\n    // Refresh in old MSIE\r\n    if (tinyMCE.isMSIE5)\r\n\telm.outerHTML = elm.outerHTML;\r\n}\r\n\r\nfunction getSelectValue(form_obj, field_name) {\r\n    var elm = form_obj.elements[field_name];\r\n\r\n    if (elm == null || elm.options == null)\r\n\treturn \"\";\r\n\r\n    return elm.options[elm.selectedIndex].value;\r\n}\r\n\r\nfunction getLinkListHTML(elm_id, target_form_element, onchange_func) {\r\n    if (typeof(tinyMCELinkList) == \"undefined\" || tinyMCELinkList.length == 0)\r\n\treturn \"\";\r\n\r\n    var html = \"\";\r\n\r\n    html += '<select id=\"' + elm_id + '\" name=\"' + elm_id + '\"';\r\n    html += ' class=\"mceLinkList\" onfoc2us=\"tinyMCE.addSelectAccessibility(event, this, window);\" onchange=\"this.form.' + target_form_element + '.value=';\r\n    html += 'this.options[this.selectedIndex].value;';\r\n\r\n    if (typeof(onchange_func) != \"undefined\")\r\n\thtml += onchange_func + '(\\'' + target_form_element + '\\',this.options[this.selectedIndex].text,this.options[this.selectedIndex].value);';\r\n\r\n    html += '\"><option value=\"\">---</option>';\r\n\r\n    for (var i=0; i<tinyMCELinkList.length; i++)\r\n\thtml += '<option value=\"' + tinyMCELinkList[i][1] + '\">' + tinyMCELinkList[i][0] + '</option>';\r\n\r\n    html += '</select>';\r\n\r\n    return html;\r\n\r\n    // tinyMCE.debug('-- image list start --', html, '-- image list end --');\r\n}\r\n\r\nfunction getTargetListHTML(elm_id, target_form_element) {\r\n    var targets = tinyMCEPopup.getParam('theme_advanced_link_targets', '').split(';');\r\n    var html = '';\r\n\r\n    html += '<select id=\"' + elm_id + '\" name=\"' + elm_id + '\" onf2ocus=\"tinyMCE.addSelectAccessibility(event, this, window);\" onchange=\"this.form.' + target_form_element + '.value=';\r\n    html += 'this.options[this.selectedIndex].value;\">';\r\n    html += '<option value=\"_self\">' + tinyMCEPopup.getLang('campsiteinternallink_dlg.target_same') + '</option>';\r\n    html += '<option value=\"_blank\">' + tinyMCEPopup.getLang('campsiteinternallink_dlg.target_blank') + ' (_blank)</option>';\r\n    html += '<option value=\"_parent\">' + tinyMCEPopup.getLang('campsiteinternallink_dlg.target_parent') + ' (_parent)</option>';\r\n    html += '<option value=\"_top\">' + tinyMCEPopup.getLang('campsiteinternallink_dlg.target_top') + ' (_top)</option>';\r\n\r\n    for (var i=0; i<targets.length; i++) {\r\n\tvar key, value;\r\n\r\n\tif (targets[i] == \"\")\r\n\t    continue;\r\n\r\n\tkey = targets[i].split('=')[0];\r\n\tvalue = targets[i].split('=')[1];\r\n\r\n\thtml += '<option value=\"' + key + '\">' + value + ' (' + key + ')</option>';\r\n    }\r\n\r\n    html += '</select>';\r\n\r\n    return html;\r\n}\r\n\r\n// While loading\r\npreinit();\r\ntinyMCEPopup.onInit.add(init);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/ar.js",
    "content": "tinyMCE.addI18n('ar.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/ar_dlg.js",
    "content": "tinyMCE.addI18n('ar.campsiteinternallink_dlg',{\n    title:\"Insert/edit internal link\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"General properties\",\n    issue:\"Issue\",\n    target:\"Target\",\n    target_same:\"Open in this window / frame\",\n    target_parent:\"Open in parent window / frame\",\n    target_top:\"Open in top frame (replaces all frames)\",\n    target_blank:\"Open in new window\",\n    id:\"Id\",\n    style:\"Style\",\n    classes:\"Classes\",\n    target_name:\"Target name\",\n    langdir:\"Language direction\",\n    target_langcode:\"Target language\",\n    langcode:\"Language code\",\n    encoding:\"Target character encoding\",\n    mime:\"Target MIME type\",\n    rel:\"Relationship page to target\",\n    rev:\"Relationship target to page\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Accesskey\",\n    ltr:\"Left to right\",\n    rtl:\"Right to left\",\n    link_list:\"Link list\",\n    is_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/az.js",
    "content": "tinyMCE.addI18n('az.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/az_dlg.js",
    "content": "tinyMCE.addI18n('az.campsiteinternallink_dlg',{\n    title:\"Insert/edit internal link\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"General properties\",\n    issue:\"Issue\",\n    target:\"Target\",\n    target_same:\"Open in this window / frame\",\n    target_parent:\"Open in parent window / frame\",\n    target_top:\"Open in top frame (replaces all frames)\",\n    target_blank:\"Open in new window\",\n    id:\"Id\",\n    style:\"Style\",\n    classes:\"Classes\",\n    target_name:\"Target name\",\n    langdir:\"Language direction\",\n    target_langcode:\"Target language\",\n    langcode:\"Language code\",\n    encoding:\"Target character encoding\",\n    mime:\"Target MIME type\",\n    rel:\"Relationship page to target\",\n    rev:\"Relationship target to page\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Accesskey\",\n    ltr:\"Left to right\",\n    rtl:\"Right to left\",\n    link_list:\"Link list\",\n    is_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/be.js",
    "content": "tinyMCE.addI18n('be.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/be_dlg.js",
    "content": "tinyMCE.addI18n('be.campsiteinternallink_dlg',{\n    title:\"Insert/edit internal link\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"General properties\",\n    issue:\"Issue\",\n    target:\"Target\",\n    target_same:\"Open in this window / frame\",\n    target_parent:\"Open in parent window / frame\",\n    target_top:\"Open in top frame (replaces all frames)\",\n    target_blank:\"Open in new window\",\n    id:\"Id\",\n    style:\"Style\",\n    classes:\"Classes\",\n    target_name:\"Target name\",\n    langdir:\"Language direction\",\n    target_langcode:\"Target language\",\n    langcode:\"Language code\",\n    encoding:\"Target character encoding\",\n    mime:\"Target MIME type\",\n    rel:\"Relationship page to target\",\n    rev:\"Relationship target to page\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Accesskey\",\n    ltr:\"Left to right\",\n    rtl:\"Right to left\",\n    link_list:\"Link list\",\n    is_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/cs.js",
    "content": "tinyMCE.addI18n('cs.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/cs_dlg.js",
    "content": "tinyMCE.addI18n('cs.campsiteinternallink_dlg',{\n    title:\"Vlo\\u017Eit/upravit odkaz\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"Hlavn\\u00ED\",\n    general_props:\"Hlavn\\u00ED nastaven\\u00ED\",\n    issue:\"Issue\",\n    target:\"C\\u00EDl\",\n    target_same:\"Otev\\u0159\\u00EDt v tomto okn\\u011B/r\\u00E1mu\",\n    target_parent:\"Otev\\u0159\\u00EDt v nad\\u0159azen\\u00E9m okn\\u011B/r\\u00E1mu\",\n    target_top:\"Otev\\u0159\\u00EDt v hlavn\\u00EDm okn\\u011B/r\\u00E1mu (nahradit v\\u0161echny r\\u00E1my)\",\n    target_blank:\"Otev\\u0159\\u00EDt v nov\\u00E9m okn\\u011B/r\\u00E1mu\",\n    id:\"ID\",\n    style:\"Styl\",\n    classes:\"T\\u0159\\u00EDdy\",\n    target_name:\"N\\u00E1zev c\\u00EDle\",\n    langdir:\"Sm\\u011Br textu\",\n    target_langcode:\"Jazyk c\\u00EDle\",\n    langcode:\"K\\u00F3d jazyka\",\n    encoding:\"K\\u00F3dov\\u00E1n\\u00ED\",\n    mime:\"MIME typ\",\n    rel:\"rel\",\n    rev:\"rev\",\n    tabindex:\"Tabindex\",\n    accesskey:\"P\\u0159\\u00EDstupov\\u00E1 kl\\u00E1vesa\",\n    ltr:\"Zleva doprava\",\n    rtl:\"Zprava doleva\",\n    link_list:\"Seznam odkaz\\u016F\",\n    is_email:\"Zadan\\u00E9 URL vypad\\u00E1 jako e-mailov\\u00E1 adresa, chcete doplnit prefix mailto:?\",\n    is_external:\"Zadan\\u00E9 URL vypad\\u00E1 jako extern\\u00ED odkaz, chtete doplnit prefix http://?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/da.js",
    "content": "tinyMCE.addI18n('da.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/da_dlg.js",
    "content": "tinyMCE.addI18n('da.campsiteinternallink_dlg',{\n    title:\"Insert/edit internal link\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"General properties\",\n    issue:\"Issue\",\n    target:\"Target\",\n    target_same:\"Open in this window / frame\",\n    target_parent:\"Open in parent window / frame\",\n    target_top:\"Open in top frame (replaces all frames)\",\n    target_blank:\"Open in new window\",\n    id:\"Id\",\n    style:\"Style\",\n    classes:\"Classes\",\n    target_name:\"Target name\",\n    langdir:\"Language direction\",\n    target_langcode:\"Target language\",\n    langcode:\"Language code\",\n    encoding:\"Target character encoding\",\n    mime:\"Target MIME type\",\n    rel:\"Relationship page to target\",\n    rev:\"Relationship target to page\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Accesskey\",\n    ltr:\"Left to right\",\n    rtl:\"Right to left\",\n    link_list:\"Link list\",\n    is_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/de.js",
    "content": "tinyMCE.addI18n('de.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/de_dlg.js",
    "content": "tinyMCE.addI18n('de.campsiteinternallink_dlg',{\n    title:\"Insert/edit internal link\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"General properties\",\n    issue:\"Issue\",\n    target:\"Target\",\n    target_same:\"Open in this window / frame\",\n    target_parent:\"Open in parent window / frame\",\n    target_top:\"Open in top frame (replaces all frames)\",\n    target_blank:\"Open in new window\",\n    id:\"Id\",\n    style:\"Style\",\n    classes:\"Classes\",\n    target_name:\"Target name\",\n    langdir:\"Language direction\",\n    target_langcode:\"Target language\",\n    langcode:\"Language code\",\n    encoding:\"Target character encoding\",\n    mime:\"Target MIME type\",\n    rel:\"Relationship page to target\",\n    rev:\"Relationship target to page\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Accesskey\",\n    ltr:\"Left to right\",\n    rtl:\"Right to left\",\n    link_list:\"Link list\",\n    is_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/el.js",
    "content": "tinyMCE.addI18n('el.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/el_dlg.js",
    "content": "tinyMCE.addI18n('el.campsiteinternallink_dlg',{\n    title:\"Insert/edit internal link\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"General properties\",\n    issue:\"Issue\",\n    target:\"Target\",\n    target_same:\"Open in this window / frame\",\n    target_parent:\"Open in parent window / frame\",\n    target_top:\"Open in top frame (replaces all frames)\",\n    target_blank:\"Open in new window\",\n    id:\"Id\",\n    style:\"Style\",\n    classes:\"Classes\",\n    target_name:\"Target name\",\n    langdir:\"Language direction\",\n    target_langcode:\"Target language\",\n    langcode:\"Language code\",\n    encoding:\"Target character encoding\",\n    mime:\"Target MIME type\",\n    rel:\"Relationship page to target\",\n    rev:\"Relationship target to page\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Accesskey\",\n    ltr:\"Left to right\",\n    rtl:\"Right to left\",\n    link_list:\"Link list\",\n    is_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/en.js",
    "content": "tinyMCE.addI18n('en.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/en_dlg.js",
    "content": "tinyMCE.addI18n('en.campsiteinternallink_dlg',{\n    title:\"Insert/edit internal link\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"General properties\",\n    issue:\"Issue\",\n    target:\"Target\",\n    target_same:\"Open in this window / frame\",\n    target_parent:\"Open in parent window / frame\",\n    target_top:\"Open in top frame (replaces all frames)\",\n    target_blank:\"Open in new window\",\n    id:\"Id\",\n    style:\"Style\",\n    classes:\"Classes\",\n    target_name:\"Target name\",\n    langdir:\"Language direction\",\n    target_langcode:\"Target language\",\n    langcode:\"Language code\",\n    encoding:\"Target character encoding\",\n    mime:\"Target MIME type\",\n    rel:\"Relationship page to target\",\n    rev:\"Relationship target to page\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Accesskey\",\n    ltr:\"Left to right\",\n    rtl:\"Right to left\",\n    link_list:\"Link list\",\n    is_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/es.js",
    "content": "tinyMCE.addI18n('es.campsiteinternallink',{\n    editor_button: \"Insertar/editar hiperv\\u00EDnculo interno\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/es_dlg.js",
    "content": "tinyMCE.addI18n('es.campsiteinternallink_dlg',{\n    title:\"Insertar/editar hiperv\\u00EDnculo interno\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"Propiedades generales\",\n    issue:\"Issue\",\n    target:\"Destino\",\n    target_same:\"Abrir en esta ventana / marco\",\n    target_parent:\"Abrir en ventana padre / marco\",\n    target_top:\"Abrir en el marco superior (reemplaza todos los marcos)\",\n    target_blank:\"Abrir en ventana nueva\",\n    id:\"Id\",\n    style:\"Estilo\",\n    classes:\"Clases\",\n    target_name:\"Nombre del Target\",\n    langdir:\"Direcci\\u00F3n del lenguaje\",\n    target_langcode:\"Lenguaje del Target\",\n    langcode:\"C\\u00F3digo del lenguaje\",\n    encoding:\"Codificaci\\u00F3n de caracteres del Target\",\n    mime:\"Tipo MIME del Target\",\n    rel:\"Relaci\\u00F3n p\\u00E1gina a target\",\n    rev:\"Relaci\\u00F3n target a p\\u00E1gina\",\n    tabindex:\"\\u00CDndice de tabulaci\\u00F3n\",\n    accesskey:\"Tecla de acceso\",\n    ltr:\"Izquierda a derecha\",\n    rtl:\"Derecha a izquierda\",\n    link_list:\"Lista de v\\u00EDnculo\",\n    is_email:\"La URL que ha introducido parece ser una direci\\u00F3n de correo, \\u00BFdesea agregar el prefijo mailto: necesario?\",\n    is_external:\"La URL que ha introducido parece ser un v\\u00EDnculo externo, \\u00BFdesea agregar el prefijo http:// necesario?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/fr.js",
    "content": "tinyMCE.addI18n('fr.campsiteinternallink',{\n    editor_button: \"Ins\\u00E9rer/\\u00C9diter lien\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/fr_dlg.js",
    "content": "tinyMCE.addI18n('fr.campsiteinternallink_dlg',{\n    title:\"Ins\\u00E9rer/\\u00C9diter lien\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"G\\u00E9n\\u00E9ral\",\n    general_props:\"Propri\\u00E9t\\u00E9s g\\u00E9n\\u00E9rales\",\n    issue:\"Issue\",\n    target:\"Cible\",\n    target_same:\"Ouvrir dans cette fen\\u00EAtre / dans ce cadre\",\n    target_parent:\"Ouvrir dans la fen\\u00EAtre / le cadre parent\",\n    target_top:\"Ouvrir dans le cadre principal (Remplace tous les cadres)\",\n    target_blank:\"Ouvrir dans une nouvelle fen\\u00EAtre\",\n    id:\"Id\",\n    style:\"Style\",\n    classes:\"Classes\",\n    target_name:\"Nom de la cible\",\n    langdir:\"Sens de lecture\",\n    target_langcode:\"Langue de la cible\",\n    langcode:\"Code de la langue\",\n    encoding:\"Encodage de la cible\",\n    mime:\"Type MIME de la cible\",\n    rel:\"Relation de la page \\u00E0 la cible\",\n    rev:\"Relation de la cible \\u00E0 la page\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Touche d'acc\\u00E8s rapide\",\n    ltr:\"Gauche \\u00E0 droite\",\n    rtl:\"Droite \\u00E0 gauche\",\n    link_list:\"Liste des liens\",\n    is_email:\"L'url que vous avez entr\\u00E9 semble \\u00EAtre une adresse e-mail, voulez-vous ajouter le pr\\u00E9fixe mailto:\\u00A0?\",\n    is_external:\"L'url que vous avez entr\\u00E9 semble \\u00EAtre une adresse web externe, voulez-vous ajouter le pr\\u00E9fixe http://\\u00A0?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/he.js",
    "content": "tinyMCE.addI18n('he.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/he_dlg.js",
    "content": "tinyMCE.addI18n('he.campsiteinternallink_dlg',{\n    title:\"Insert/edit internal link\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"General properties\",\n    issue:\"Issue\",\n    target:\"Target\",\n    target_same:\"Open in this window / frame\",\n    target_parent:\"Open in parent window / frame\",\n    target_top:\"Open in top frame (replaces all frames)\",\n    target_blank:\"Open in new window\",\n    id:\"Id\",\n    style:\"Style\",\n    classes:\"Classes\",\n    target_name:\"Target name\",\n    langdir:\"Language direction\",\n    target_langcode:\"Target language\",\n    langcode:\"Language code\",\n    encoding:\"Target character encoding\",\n    mime:\"Target MIME type\",\n    rel:\"Relationship page to target\",\n    rev:\"Relationship target to page\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Accesskey\",\n    ltr:\"Left to right\",\n    rtl:\"Right to left\",\n    link_list:\"Link list\",\n    is_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/hr.js",
    "content": "tinyMCE.addI18n('hr.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/hr_dlg.js",
    "content": "tinyMCE.addI18n('hr.campsiteinternallink_dlg',{\n    title:\"Insert/edit internal link\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"General properties\",\n    issue:\"Issue\",\n    target:\"Target\",\n    target_same:\"Open in this window / frame\",\n    target_parent:\"Open in parent window / frame\",\n    target_top:\"Open in top frame (replaces all frames)\",\n    target_blank:\"Open in new window\",\n    id:\"Id\",\n    style:\"Style\",\n    classes:\"Classes\",\n    target_name:\"Target name\",\n    langdir:\"Language direction\",\n    target_langcode:\"Target language\",\n    langcode:\"Language code\",\n    encoding:\"Target character encoding\",\n    mime:\"Target MIME type\",\n    rel:\"Relationship page to target\",\n    rev:\"Relationship target to page\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Accesskey\",\n    ltr:\"Left to right\",\n    rtl:\"Right to left\",\n    link_list:\"Link list\",\n    is_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/hu.js",
    "content": "tinyMCE.addI18n('hu.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/hu_dlg.js",
    "content": "tinyMCE.addI18n('hu.campsiteinternallink_dlg',{\n    title:\"Insert/edit internal link\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"General properties\",\n    issue:\"Issue\",\n    target:\"Target\",\n    target_same:\"Open in this window / frame\",\n    target_parent:\"Open in parent window / frame\",\n    target_top:\"Open in top frame (replaces all frames)\",\n    target_blank:\"Open in new window\",\n    id:\"Id\",\n    style:\"Style\",\n    classes:\"Classes\",\n    target_name:\"Target name\",\n    langdir:\"Language direction\",\n    target_langcode:\"Target language\",\n    langcode:\"Language code\",\n    encoding:\"Target character encoding\",\n    mime:\"Target MIME type\",\n    rel:\"Relationship page to target\",\n    rev:\"Relationship target to page\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Accesskey\",\n    ltr:\"Left to right\",\n    rtl:\"Right to left\",\n    link_list:\"Link list\",\n    is_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/hy.js",
    "content": "tinyMCE.addI18n('hy.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/hy_dlg.js",
    "content": "tinyMCE.addI18n('hy.campsiteinternallink_dlg',{\n    title:\"Insert/edit internal link\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"General properties\",\n    issue:\"Issue\",\n    target:\"Target\",\n    target_same:\"Open in this window / frame\",\n    target_parent:\"Open in parent window / frame\",\n    target_top:\"Open in top frame (replaces all frames)\",\n    target_blank:\"Open in new window\",\n    id:\"Id\",\n    style:\"Style\",\n    classes:\"Classes\",\n    target_name:\"Target name\",\n    langdir:\"Language direction\",\n    target_langcode:\"Target language\",\n    langcode:\"Language code\",\n    encoding:\"Target character encoding\",\n    mime:\"Target MIME type\",\n    rel:\"Relationship page to target\",\n    rev:\"Relationship target to page\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Accesskey\",\n    ltr:\"Left to right\",\n    rtl:\"Right to left\",\n    link_list:\"Link list\",\n    is_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/it.js",
    "content": "tinyMCE.addI18n('it.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/it_dlg.js",
    "content": "tinyMCE.addI18n('it.campsiteinternallink_dlg',{\n    title:\"Inserisci/modifica link\",\n    language:\"Lingua\",\n    section:\"Sezione\",\n    article:\"Articolo\",\n    publication:\"Pubblicazione\",\n    general_tab:\"Generale\",\n    general_props:\"Propriet\\u00E0 generali\",\n    issue:\"Edizione\",\n    target:\"Target\",\n    target_same:\"Apri in questa finestra / cornice\",\n    target_parent:\"Apri nella finestra / cornice genitore\",\n    target_top:\"Apri nella cornice superiore (sostituisce tutte le cornici)\",\n    target_blank:\"Apri in una nuova finestra\",\n    id:\"Id\",\n    style:\"Stile\",\n    classes:\"Classe\",\n    target_name:\"Nome target\",\n    langdir:\"Direzione del testo\",\n    target_langcode:\"Lingua del target\",\n    langcode:\"Lingua\",\n    encoding:\"Codifica carattere del target\",\n    mime:\"Tipo MIME del target\",\n    rel:\"Relazione da pagina a target\",\n    rev:\"Relazione da target a pagina\",\n    tabindex:\"Indice tabulazione\",\n    accesskey:\"Carattere di accesso\",\n    ltr:\"Sinistra verso destra\",\n    rtl:\"Destra verso sinistra\",\n    link_list:\"Lista collegamenti\",\n    is_email:\"L'URL inserito sembra essere un indirizzo email. Aggiungere il necessario prefisso mailto: ?\",\n    is_external:\"L'URL inserito sembra essere un link esterno. Aggiungere il necessario prefisso http:// ?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/ka.js",
    "content": "tinyMCE.addI18n('ka.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/ka_dlg.js",
    "content": "tinyMCE.addI18n('ka.campsiteinternallink_dlg',{\n    title:\"Insert/edit internal link\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"General properties\",\n    issue:\"Issue\",\n    target:\"Target\",\n    target_same:\"Open in this window / frame\",\n    target_parent:\"Open in parent window / frame\",\n    target_top:\"Open in top frame (replaces all frames)\",\n    target_blank:\"Open in new window\",\n    id:\"Id\",\n    style:\"Style\",\n    classes:\"Classes\",\n    target_name:\"Target name\",\n    langdir:\"Language direction\",\n    target_langcode:\"Target language\",\n    langcode:\"Language code\",\n    encoding:\"Target character encoding\",\n    mime:\"Target MIME type\",\n    rel:\"Relationship page to target\",\n    rev:\"Relationship target to page\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Accesskey\",\n    ltr:\"Left to right\",\n    rtl:\"Right to left\",\n    link_list:\"Link list\",\n    is_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/ko.js",
    "content": "tinyMCE.addI18n('ko.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/ko_dlg.js",
    "content": "tinyMCE.addI18n('ko.campsiteinternallink_dlg',{\n    title:\"Insert/edit internal link\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"General properties\",\n    issue:\"Issue\",\n    target:\"Target\",\n    target_same:\"Open in this window / frame\",\n    target_parent:\"Open in parent window / frame\",\n    target_top:\"Open in top frame (replaces all frames)\",\n    target_blank:\"Open in new window\",\n    id:\"Id\",\n    style:\"Style\",\n    classes:\"Classes\",\n    target_name:\"Target name\",\n    langdir:\"Language direction\",\n    target_langcode:\"Target language\",\n    langcode:\"Language code\",\n    encoding:\"Target character encoding\",\n    mime:\"Target MIME type\",\n    rel:\"Relationship page to target\",\n    rev:\"Relationship target to page\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Accesskey\",\n    ltr:\"Left to right\",\n    rtl:\"Right to left\",\n    link_list:\"Link list\",\n    is_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/nb.js",
    "content": "tinyMCE.addI18n('nb.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/nb_dlg.js",
    "content": "tinyMCE.addI18n('en.campsiteinternallink_dlg',{\n    title:\"Insert/edit internal link\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"General properties\",\n    issue:\"Issue\",\n    target:\"Target\",\n    target_same:\"Open in this window / frame\",\n    target_parent:\"Open in parent window / frame\",\n    target_top:\"Open in top frame (replaces all frames)\",\n    target_blank:\"Open in new window\",\n    id:\"Id\",\n    style:\"Style\",\n    classes:\"Classes\",\n    target_name:\"Target name\",\n    langdir:\"Language direction\",\n    target_langcode:\"Target language\",\n    langcode:\"Language code\",\n    encoding:\"Target character encoding\",\n    mime:\"Target MIME type\",\n    rel:\"Relationship page to target\",\n    rev:\"Relationship target to page\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Accesskey\",\n    ltr:\"Left to right\",\n    rtl:\"Right to left\",\n    link_list:\"Link list\",\n    is_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/nl.js",
    "content": "tinyMCE.addI18n('nl.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text:\"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/nl_dlg.js",
    "content": "tinyMCE.addI18n('nl.campsiteinternallink_dlg',{\n    title:\"Insert/edit internal link\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"General properties\",\n    issue:\"Issue\",\n    target:\"Target\",\n    target_same:\"Open in this window / frame\",\n    target_parent:\"Open in parent window / frame\",\n    target_top:\"Open in top frame (replaces all frames)\",\n    target_blank:\"Open in new window\",\n    id:\"Id\",\n    style:\"Style\",\n    classes:\"Classes\",\n    target_name:\"Target name\",\n    langdir:\"Language direction\",\n    target_langcode:\"Target language\",\n    langcode:\"Language code\",\n    encoding:\"Target character encoding\",\n    mime:\"Target MIME type\",\n    rel:\"Relationship page to target\",\n    rev:\"Relationship target to page\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Accesskey\",\n    ltr:\"Left to right\",\n    rtl:\"Right to left\",\n    link_list:\"Link list\",\n    is_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/pl.js",
    "content": "tinyMCE.addI18n('pl.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text:\"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/pl_dlg.js",
    "content": "tinyMCE.addI18n('pl.campsiteinternallink_dlg',{\n    title:\"Insert/edit internal link\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"General properties\",\n    issue:\"Issue\",\n    target:\"Target\",\n    target_same:\"Open in this window / frame\",\n    target_parent:\"Open in parent window / frame\",\n    target_top:\"Open in top frame (replaces all frames)\",\n    target_blank:\"Open in new window\",\n    id:\"Id\",\n    style:\"Style\",\n    classes:\"Classes\",\n    target_name:\"Target name\",\n    langdir:\"Language direction\",\n    target_langcode:\"Target language\",\n    langcode:\"Language code\",\n    encoding:\"Target character encoding\",\n    mime:\"Target MIME type\",\n    rel:\"Relationship page to target\",\n    rev:\"Relationship target to page\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Accesskey\",\n    ltr:\"Left to right\",\n    rtl:\"Right to left\",\n    link_list:\"Link list\",\n    is_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/pt.js",
    "content": "tinyMCE.addI18n('pt.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/pt_dlg.js",
    "content": "tinyMCE.addI18n('pt.campsiteinternallink_dlg',{\n    title:\"Inserir/editar hyperlink\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"Geral\",\n    general_props:\"Propriedades gerais\",\n    issue:\"Issue\",\n    target:\"Alvo\",\n    target_same:\"Abrir nessa janela/quadro\",\n    target_parent:\"Abrir na janela/quadro pai\",\n    target_top:\"Abrir na p\\u00E1gina inteira (substitui todos os quadros)\",\n    target_blank:\"Abrir em nova janela\",\n    id: \"Id\",\n    style:\"Estilo\",\n    classes:\"Classes\",\n    target_name:\"Nome do alvo\",\n    langdir:\"Dire\\u00E7\\u00E3o do texto\",\n    target_langcode:\"linguagem alvo\",\n    langcode:\"C\\u00F3digo da linguagem\",\n    encoding:\"Codifica\\u00E7\\u00E3o de caracteres\",\n    mime:\"Tipo MIME alvo\",\n    rel:\"Rela\\u00E7\\u00E3o p\\u00E1gina/alvo\",\n    rev:\"Rela\\u00E7\\u00E3o alvo/p\\u00E1gina\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Chave de acesso\",\n    ltr:\"Esquerda para direita\",\n    rtl:\"Direita para esquerda\",\n    link_list:\"Lista de hyperlinks\",\n    is_email:\"A URL digitada parece ser um endere\\u00E7o de e-mail. Deseja acrescentar o (necess\\u00E1rio) prefixo mailto:?\",\n    is_external:\"A URL digitada parece conduzir a um link externo. Deseja acrescentar o (necess\\u00E1rio) prefixo http://?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/ro.js",
    "content": "tinyMCE.addI18n('ro.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/ro_dlg.js",
    "content": "tinyMCE.addI18n('ro.campsiteinternallink_dlg',{\n    title:\"Insereaz\\u0103/editeaz\\u0103 link\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"Propriet\\u0103\\u0163i generale\",\n    issue:\"Issue\",\n    target:\"\\u0162int\\u0103\",\n    target_same:\"Deschide link \\u00EEn aceast\\u0103 fereastr\\u0103 / acest frame\",\n    target_parent:\"Deschide link \\u00EEn fereastr\\u0103 / frame-ul p\\u0103rinte\",\n    target_top:\"Deschide \\u00EEn frame-ul cel mai mare (\\u00EEnlocuie\\u015Fte celelalte frame-uri)\",\n    target_blank:\"Deschide \\u00EEn fereastr\\u0103 nou\\u0103\",\n    id:\"Id\",\n    style:\"Stil\",\n    classes:\"Clase\",\n    target_name:\"Nume \\u0163int\\u0103\",\n    langdir:\"Direc\\u0163ie limb\\u0103\",\n    target_langcode:\"Limb\\u0103\",\n    langcode:\"Cod limb\\u0103\",\n    encoding:\"Set de caractere \\u0163int\\u0103\",\n    mime:\"MIME type \\u0163int\\u0103\",\n    rel:\"Rela\\u0163ia paginii cu \\u0163inta\",\n    rev:\"Rela\\u0163ia \\u0163intei cu pagina\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Cheie de acces\",\n    ltr:\"St\\u00E2nga la dreapta\",\n    rtl:\"Dreapta la st\\u00E2nga\",\n    link_list:\"List\\u0103 linkuri\",\n    is_email:\"URL-ul pe care l-a\\u0163i introdus pare a fi o adres\\u0103 de email, dori\\u0163i s\\u0103 adaug \\u015Fi prefixul mailto: necesar?\",\n    is_external:\"URL-ul pe care l-a\\u0163i introdus pare a fi un link extern, dori\\u0163i s\\u0103 adaug \\u015Fi prefixul http:// necesar?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/ru.js",
    "content": "tinyMCE.addI18n('ru.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/ru_dlg.js",
    "content": "tinyMCE.addI18n('ru.campsiteinternallink_dlg',{\n    title:\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u044C/\\u0440\\u0435\\u0434\\u0430\\u043A\\u0442\\u0438\\u0440\\u043E\\u0432\\u0430\\u0442\\u044C \\u0441\\u0441\\u044B\\u043B\\u043A\\u0443\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"\\u041E\\u0431\\u0449\\u0438\\u0435\",\n    general_props:\"\\u041E\\u0431\\u0449\\u0438\\u0435 \\u0441\\u0432\\u043E\\u0439\\u0441\\u0442\\u0432\\u0430\",\n    issue:\"Issue\",\n    target:\"\\u0426\\u0435\\u043B\\u044C\",\n    target_same:\"\\u041E\\u0442\\u043A\\u0440\\u044B\\u0442\\u044C \\u0432 \\u044D\\u0442\\u043E\\u043C \\u043E\\u043A\\u043D\\u0435 / \\u0444\\u0440\\u0435\\u0439\\u043C\\u0435\",\n    target_parent:\"\\u041E\\u0442\\u043A\\u0440\\u044B\\u0442\\u044C \\u0432 \\u0440\\u043E\\u0434\\u0438\\u0442\\u0435\\u043B\\u044C\\u0441\\u043A\\u043E\\u043C \\u043E\\u043A\\u043D\\u0435 / \\u0444\\u0440\\u0435\\u0439\\u043C\\u0435\",\n    target_top:\"\\u041E\\u0442\\u043A\\u0440\\u044B\\u0442\\u044C \\u0432 \\u0432\\u0435\\u0440\\u0445\\u043D\\u0435\\u043C \\u0444\\u0440\\u0435\\u0439\\u043C\\u0435 (\\u0437\\u0430\\u043C\\u0435\\u0449\\u0430\\u0435\\u0442 \\u0432\\u0441\\u0435 \\u043E\\u0441\\u0442\\u0430\\u043B\\u044C\\u043D\\u044B\\u0435)\",\n    target_blank:\"\\u041E\\u0442\\u043A\\u0440\\u044B\\u0442\\u044C \\u0432 \\u043D\\u043E\\u0432\\u043E\\u043C \\u043E\\u043A\\u043D\\u0435\",\n    id:\"\\u0418\\u0434\\u0435\\u043D\\u0442\\u0438\\u0444\\u0438\\u043A\\u0430\\u0442\\u043E\\u0440\",\n    style:\"\\u0421\\u0442\\u0438\\u043B\\u044C\",\n    classes:\"\\u041A\\u043B\\u0430\\u0441\\u0441\\u044B\",\n    target_name:\"\\u041D\\u0430\\u0437\\u0432\\u0430\\u043D\\u0438\\u0435 \\u0446\\u0435\\u043B\\u0438\",\n    langdir:\"\\u041D\\u0430\\u043F\\u0440\\u0430\\u0432\\u043B\\u0435\\u043D\\u0438\\u0435 \\u044F\\u0437\\u044B\\u043A\\u0430\",\n    target_langcode:\"\\u0426\\u0435\\u043B\\u0435\\u0432\\u043E\\u0439 \\u044F\\u0437\\u044B\\u043A\",\n    langcode:\"\\u041A\\u043E\\u0434 \\u044F\\u0437\\u044B\\u043A\\u0430\",\n    encoding:\"\\u0426\\u0435\\u043B\\u0435\\u0432\\u0430\\u044F \\u043A\\u043E\\u0434\\u0438\\u0440\\u043E\\u0432\\u043A\\u0430\",\n    mime:\"\\u0426\\u0435\\u043B\\u0435\\u0432\\u043E\\u0439 MIME-\\u0442\\u0438\\u043F\",\n    rel:\"\\u041E\\u0442\\u043D\\u043E\\u0448\\u0435\\u043D\\u0438\\u0435 \\u0441\\u0442\\u0440\\u0430\\u043D\\u0438\\u0446\\u0430 \\u043A \\u0446\\u0435\\u043B\\u0438\",\n    rev:\"\\u041E\\u0442\\u043D\\u043E\\u0448\\u0435\\u043D\\u0438\\u0435 \\u0446\\u0435\\u043B\\u044C \\u043A \\u0441\\u0442\\u0440\\u0430\\u043D\\u0438\\u0446\\u0435\",\n    tabindex:\"\\u0418\\u043D\\u0434\\u0435\\u043A\\u0441 \\u0442\\u0430\\u0431\\u0443\\u043B\\u044F\\u0446\\u0438\\u0438\",\n    accesskey:\"\\u041A\\u043B\\u0430\\u0432\\u0438\\u0448\\u0430 \\u0434\\u043E\\u0441\\u0442\\u0443\\u043F\\u0430\",\n    ltr:\"\\u0421\\u043B\\u0435\\u0432\\u0430 \\u043D\\u0430\\u043F\\u0440\\u0430\\u0432\\u043E\",\n    rtl:\"\\u0421\\u043F\\u0440\\u0430\\u0432\\u0430 \\u043D\\u0430\\u043B\\u0435\\u0432\\u043E\",\n    link_list:\"\\u0421\\u043F\\u0438\\u0441\\u043E\\u043A \\u0441\\u0441\\u044B\\u043B\\u043E\\u043A\",\n    is_email:\"\\u0412\\u0432\\u0435\\u0434\\u0451\\u043D\\u043D\\u044B\\u0439 \\u0430\\u0434\\u0440\\u0435\\u0441 \\u043F\\u043E\\u0445\\u043E\\u0436 \\u043D\\u0430 email, \\u0432\\u044B \\u0445\\u043E\\u0442\\u0438\\u0442\\u0435 \\u0434\\u043E\\u0431\\u0430\\u0432\\u0438\\u0442\\u044C \\u043F\\u0440\\u0435\\u0444\\u0438\\u043A\\u0441 mailto:?\",\n    is_external:\"\\u0412\\u0432\\u0435\\u0434\\u0451\\u043D\\u043D\\u044B\\u0439 \\u0430\\u0434\\u0440\\u0435\\u0441 \\u043F\\u043E\\u0445\\u043E\\u0436 \\u043D\\u0430 \\u0432\\u043D\\u0435\\u0448\\u043D\\u044E\\u044E \\u0441\\u0441\\u044B\\u043B\\u043A\\u0443, \\u0432\\u044B \\u0445\\u043E\\u0442\\u0438\\u0442\\u0435 \\u0434\\u043E\\u0431\\u0430\\u0432\\u0438\\u0442\\u044C \\u043F\\u0440\\u0435\\u0444\\u0438\\u043A\\u0441 http://?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/sr.js",
    "content": "tinyMCE.addI18n('sr.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/sr_dlg.js",
    "content": "tinyMCE.addI18n('sr.campsiteinternallink_dlg',{\n    title:\"Umetni/uredi poveznicu\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"Osnovno\",\n    general_props:\"Osnovna svojstva\",\n    issue:\"Issue\",\n    target:\"Meta\",\n    target_same:\"Otovori u novom prozoru / okviru\",\n    target_parent:\"Otvori u izvornom prozoru / okvir\",\n    target_top:\"Otvori u gornjem okviru (zamjenjuje sve okvire)\",\n    target_blank:\"Otvori u novom prozoru\",\n    id:\"Id\",\n    style:\"Stil\",\n    classes:\"Klasa\",\n    target_name:\"Ime mete\",\n    langdir:\"Smjer jezika\",\n    target_langcode:\"Jezik\",\n    langcode:\"Kod jezika\",\n    encoding:\"Kodiranje znakova\",\n    mime:\"MIME tip\",\n    rel:\"Odnos stranice prema meti\",\n    rev:\"Odnos mete prema stranici\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Accesskey\",\n    ltr:\"S leva na desno\",\n    rtl:\"S desna na levo\",\n    link_list:\"Lista poveznica\",\n    is_email:\"URL koji ste uneli izgleda kao e-mail adresa, \\u017Eelite li dodati potrebni mailto: prefiks?\",\n    is_external:\"URL koji ste uneli izgleda kao vanjska poveznica, \\u017Eelite li dodati potrebni http:// prefiks?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/sv.js",
    "content": "tinyMCE.addI18n('sv.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/sv_dlg.js",
    "content": "tinyMCE.addI18n('sv.campsiteinternallink_dlg',{\n    title:\"Insert/edit internal link\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"General properties\",\n    issue:\"Issue\",\n    target:\"Target\",\n    target_same:\"Open in this window / frame\",\n    target_parent:\"Open in parent window / frame\",\n    target_top:\"Open in top frame (replaces all frames)\",\n    target_blank:\"Open in new window\",\n    id:\"Id\",\n    style:\"Style\",\n    classes:\"Classes\",\n    target_name:\"Target name\",\n    langdir:\"Language direction\",\n    target_langcode:\"Target language\",\n    langcode:\"Language code\",\n    encoding:\"Target character encoding\",\n    mime:\"Target MIME type\",\n    rel:\"Relationship page to target\",\n    rev:\"Relationship target to page\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Accesskey\",\n    ltr:\"Left to right\",\n    rtl:\"Right to left\",\n    link_list:\"Link list\",\n    is_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/tr.js",
    "content": "tinyMCE.addI18n('tr.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/tr_dlg.js",
    "content": "tinyMCE.addI18n('tr.campsiteinternallink_dlg',{\n    title:\"Insert/edit internal link\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"General properties\",\n    issue:\"Issue\",\n    target:\"Target\",\n    target_same:\"Open in this window / frame\",\n    target_parent:\"Open in parent window / frame\",\n    target_top:\"Open in top frame (replaces all frames)\",\n    target_blank:\"Open in new window\",\n    id:\"Id\",\n    style:\"Style\",\n    classes:\"Classes\",\n    target_name:\"Target name\",\n    langdir:\"Language direction\",\n    target_langcode:\"Target language\",\n    langcode:\"Language code\",\n    encoding:\"Target character encoding\",\n    mime:\"Target MIME type\",\n    rel:\"Relationship page to target\",\n    rev:\"Relationship target to page\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Accesskey\",\n    ltr:\"Left to right\",\n    rtl:\"Right to left\",\n    link_list:\"Link list\",\n    is_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/uk.js",
    "content": "tinyMCE.addI18n('uk.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/uk_dlg.js",
    "content": "tinyMCE.addI18n('uk.campsiteinternallink_dlg',{\n    title:\"Insert/edit internal link\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"General properties\",\n    issue:\"Issue\",\n    target:\"Target\",\n    target_same:\"Open in this window / frame\",\n    target_parent:\"Open in parent window / frame\",\n    target_top:\"Open in top frame (replaces all frames)\",\n    target_blank:\"Open in new window\",\n    id:\"Id\",\n    style:\"Style\",\n    classes:\"Classes\",\n    target_name:\"Target name\",\n    langdir:\"Language direction\",\n    target_langcode:\"Target language\",\n    langcode:\"Language code\",\n    encoding:\"Target character encoding\",\n    mime:\"Target MIME type\",\n    rel:\"Relationship page to target\",\n    rev:\"Relationship target to page\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Accesskey\",\n    ltr:\"Left to right\",\n    rtl:\"Right to left\",\n    link_list:\"Link list\",\n    is_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/zh-tw.js",
    "content": "tinyMCE.addI18n('zh-tw.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/zh-tw_dlg.js",
    "content": "tinyMCE.addI18n('zh-tw.campsiteinternallink_dlg',{\n    title:\"Insert/edit internal link\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"General properties\",\n    issue:\"Issue\",\n    target:\"Target\",\n    target_same:\"Open in this window / frame\",\n    target_parent:\"Open in parent window / frame\",\n    target_top:\"Open in top frame (replaces all frames)\",\n    target_blank:\"Open in new window\",\n    id:\"Id\",\n    style:\"Style\",\n    classes:\"Classes\",\n    target_name:\"Target name\",\n    langdir:\"Language direction\",\n    target_langcode:\"Target language\",\n    langcode:\"Language code\",\n    encoding:\"Target character encoding\",\n    mime:\"Target MIME type\",\n    rel:\"Relationship page to target\",\n    rev:\"Relationship target to page\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Accesskey\",\n    ltr:\"Left to right\",\n    rtl:\"Right to left\",\n    link_list:\"Link list\",\n    is_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/zh.js",
    "content": "tinyMCE.addI18n('zh.campsiteinternallink',{\n    editor_button: \"Insert/edit internal link\",\n    select_text: \"You need to select some text before creating a link\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/langs/zh_dlg.js",
    "content": "tinyMCE.addI18n('zh.campsiteinternallink_dlg',{\n    title:\"Insert/edit internal link\",\n    language:\"Language\",\n    section:\"Section\",\n    article:\"Article\",\n    publication:\"Publication\",\n    general_tab:\"General\",\n    general_props:\"General properties\",\n    issue:\"Issue\",\n    target:\"Target\",\n    target_same:\"Open in this window / frame\",\n    target_parent:\"Open in parent window / frame\",\n    target_top:\"Open in top frame (replaces all frames)\",\n    target_blank:\"Open in new window\",\n    id:\"Id\",\n    style:\"Style\",\n    classes:\"Classes\",\n    target_name:\"Target name\",\n    langdir:\"Language direction\",\n    target_langcode:\"Target language\",\n    langcode:\"Language code\",\n    encoding:\"Target character encoding\",\n    mime:\"Target MIME type\",\n    rel:\"Relationship page to target\",\n    rev:\"Relationship target to page\",\n    tabindex:\"Tabindex\",\n    accesskey:\"Accesskey\",\n    ltr:\"Left to right\",\n    rtl:\"Right to left\",\n    link_list:\"Link list\",\n    is_email:\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\n    is_external:\"The URL you entered seems to external link, do you want to add the required http:// prefix?\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsiteinternallink/link.php",
    "content": "<?php\r\n/**\r\n * Notes about this file:\r\n * - If the text in the editor is already hyperlinked, then this file is called with the\r\n *   arguments in the URL, like \"filename.php?IdPublication=1&IdLanguage=2&...\"\r\n * - Everytime a menu item is changed, the file is re-fetched with the same arguments\r\n *       set in the POST.\r\n *\r\n */\r\n$GLOBALS['g_campsiteDir'] = dirname(dirname(dirname(dirname(dirname(__FILE__)))));\r\n\r\n// run zend\r\nrequire_once $GLOBALS['g_campsiteDir'] . '/application.php';\r\n$application->bootstrap();\r\n\r\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/User.php');\r\n\r\n$userId = Zend_Auth::getInstance()->getIdentity();\r\n$userTmp = new User($userId);\r\nif (!$userTmp->exists() || !$userTmp->isAdmin()) {\r\n\theader(\"Location: /$ADMIN/login.php\");\r\n\texit(0);\r\n}\r\nunset($userTmp);\r\n\r\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\r\nrequire_once($GLOBALS['g_campsiteDir'].'/conf/configuration.php');\r\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/camp_html.php\");\r\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\r\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Publication.php');\r\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Issue.php');\r\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Section.php');\r\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\r\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\r\n\r\n$maxSelectLength = 60;\r\n$languageId = Input::get('IdLanguage', 'int', 0, true);\r\n$publicationId = Input::get('IdPublication', 'int', 0, true);\r\n$sectionId = Input::get('NrSection', 'int', 0, true);\r\n$issueId = Input::get('NrIssue', 'int', 0, true);\r\n$articleId = Input::get('NrArticle', 'int', 0, true);\r\n$target = Input::get('targetlist', 'string', '', true);\r\n$languages = Language::GetLanguages(null, null, null, array(), array(), true);\r\n$publications = Publication::GetPublications();\r\nif (($languageId != 0) && ($publicationId != 0)) {\r\n        $issues = Issue::GetIssues($publicationId, $languageId, null, null, null, false, null, true);\r\n}\r\nif (($languageId != 0) && ($publicationId != 0) && ($issueId != 0)) {\r\n        $sections = Section::GetSections($publicationId, $issueId, $languageId, null, null, null, true);\r\n}\r\nif (($languageId != 0) && ($publicationId != 0) && ($issueId != 0) && ($sectionId != 0)) {\r\n        $articles = Article::GetArticles($publicationId, $issueId, $sectionId, $languageId);\r\n}\r\n?>\r\n\r\n<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n  <title>{#campsiteinternallink_dlg.title}</title>\r\n\r\n  <script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n  <script type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n  <script type=\"text/javascript\" src=\"../../utils/form_utils.js\"></script>\r\n  <script type=\"text/javascript\" src=\"../../utils/validate.js\"></script>\r\n  <script type=\"text/javascript\" src=\"js/campsiteinternallink.js\"></script>\r\n  <link href=\"css/campsiteinternallink.css\" rel=\"stylesheet\" type=\"text/css\" />\r\n  <base target=\"_self\" />\r\n</head>\r\n<body id=\"campsiteinternallink\" style=\"display: none\">\r\n  <form onsubmit=\"insertAction();return false;\" action=\"#\">\r\n  <div class=\"tabs\">\r\n    <ul>\r\n      <li id=\"general_tab\" class=\"current\"><span><a href=\"javascript:mcTabs.displayTab('general_tab','general_panel');\" onmousedown=\"return false;\">{#campsiteinternallink_dlg.general_tab}</a></span></li>\r\n    </ul>\r\n  </div>\r\n  <div class=\"panel_wrapper\">\r\n    <div id=\"general_panel\" class=\"panel current\">\r\n      <fieldset>\r\n        <legend>{#campsiteinternallink_dlg.general_props}</legend>\r\n\r\n        <table border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n        <tr>\r\n          <td nowrap=\"nowrap\"><label id=\"hreflabel\" for=\"href\">{#campsiteinternallink_dlg.language}</label></td>\r\n          <td>\r\n            <table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n            <tr>\r\n              <td>\r\n                <input type=\"hidden\" name=\"language\" id=\"language\" />\r\n                <select name=\"IdLanguage\" id=\"IdLanguage\" onchange=\"this.form.submit();\">\r\n                  <option value=\"0\">?</option>\r\n                  <?php\r\n                  foreach ($languages as $language) {\r\n                      $languageName = substr($language->getName(), 0, $maxSelectLength);\r\n                      camp_html_select_option($language->getLanguageId(), $languageId, $languageName);\r\n                  }\r\n                  ?>\r\n                </select>\r\n              </td>\r\n              <td id=\"hrefbrowsercontainer\">&nbsp;</td>\r\n            </tr>\r\n            </table>\r\n          </td>\r\n        </tr>\r\n        <tr id=\"pickpublicationfrom\">\r\n          <td class=\"column1\"><label for=\"pickpublication\">{#campsiteinternallink_dlg.publication}</label></td>\r\n          <td colspan=\"2\" id=\"pickpublicationcontainer\">\r\n            <input type=\"hidden\" name=\"publication\" id=\"publication\" />\r\n            <select name=\"IdPublication\" id=\"IdPublication\" onchange=\"this.form.submit();\" <?php if ($languageId == 0){ ?>disabled<?php } ?>>\r\n              <option value=\"0\">?</option>\r\n              <?php\r\n              foreach ($publications as $publication) {\r\n                  $publicationName = substr($publication->getName(), 0, $maxSelectLength);\r\n                  camp_html_select_option($publication->getPublicationId(), $publicationId, $publicationName);\r\n              }\r\n              ?>\r\n            </select>\r\n          </td>\r\n        </tr>\r\n        <tr>\r\n          <td class=\"column1\"><label for=\"pickissue\">{#campsiteinternallink_dlg.issue}</label></td>\r\n          <td colspan=\"2\" id=\"pickissuecontainer\">\r\n            <select name=\"NrIssue\" id=\"NrIssue\" onchange=\"this.form.submit();\" <?php if (($languageId == 0) || ($publicationId == 0)) { ?>disabled<?php } ?>>\r\n              <option value=\"0\">?</option>\r\n              <?php\r\n              if (($languageId != 0) && ($publicationId != 0)) {\r\n                  foreach ($issues as $issue) {\r\n                      $issueName = substr($issue->getName(), 0, $maxSelectLength);\r\n                      camp_html_select_option($issue->getIssueNumber(), $issueId, $issueName);\r\n                  }\r\n              }\r\n              ?>\r\n            </select>\r\n          </td>\r\n        </tr>\r\n        <tr>\r\n          <td><label id=\"picksectionfrom\" for=\"picksection\">{#campsiteinternallink_dlg.section}</label></td>\r\n          <td id=\"picksectioncontainer\">\r\n            <select name=\"NrSection\" id=\"NrSection\" onchange=\"this.form.submit();\" <?php if (($languageId == 0) || ($publicationId == 0) || ($issueId == 0)) { ?>disabled<?php } ?>>\r\n              <option value=\"0\">?</option>\r\n              <?php\r\n              if (($languageId != 0) && ($publicationId != 0) && ($issueId != 0)) {\r\n                  foreach ($sections as $section) {\r\n                      $sectionName = substr($section->getName(), 0, $maxSelectLength);\r\n                      camp_html_select_option($section->getSectionNumber(), $sectionId, $sectionName);\r\n                  }\r\n              }\r\n              ?>\r\n            </select>\r\n          </td>\r\n        </tr>\r\n        <tr>\r\n          <td nowrap=\"nowrap\"><label id=\"pickarticlefrom\" for=\"article\">{#campsiteinternallink_dlg.article}</label></td>\r\n          <td id=\"pickarticlecontainer\">\r\n            <select name=\"NrArticle\" id=\"NrArticle\" onchange=\"this.form.submit();\" <?php if (($languageId == 0) || ($publicationId == 0) || ($issueId == 0) || ($sectionId == 0)) { ?>disabled<?php } ?>>\r\n              <option value=\"0\">?</option>\r\n              <?php\r\n              if (($languageId != 0) && ($publicationId != 0) && ($issueId != 0) && ($sectionId != 0)) {\r\n                  foreach ($articles as $article) {\r\n                      $articleName = substr($article->getTitle(), 0, $maxSelectLength);\r\n                      camp_html_select_option($article->getArticleNumber(), $articleId, $articleName);\r\n                  }\r\n              }\r\n              ?>\r\n            </select>\r\n          </td>\r\n        </tr>\r\n        <tr>\r\n          <input type=\"hidden\" name=\"target\" id=\"target\" />\r\n          <td class=\"column1\"><label id=\"targetlistlabel\" for=\"targetlist\">{#campsiteinternallink_dlg.target}</label></td>\r\n          <td id=\"targetlistcontainer\">&nbsp;</td>\r\n        </tr>\r\n      </table>\r\n      </fieldset>\r\n    </div>\r\n  </div>\r\n  <div class=\"mceActionPanel\">\r\n    <div style=\"float: left\">\r\n      <input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#insert}\" />\r\n    </div>\r\n    <div style=\"float: right\">\r\n      <input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n    </div>\r\n  </div>\r\n  </form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitemedia/assets/dialog.js",
    "content": "// Dialog v3.0 - Copyright (c) 2003-2004 interactivetools.com, inc.\n// This copyright notice MUST stay intact for use (see license.txt).\n//\n// Portions (c) dynarch.com, 2003-2004\n//\n// A free WYSIWYG editor replacement for <textarea> fields.\n// For full source code and docs, visit http://www.interactivetools.com/\n//\n// Version 3.0 developed by Mihai Bazon.\n//   http://dynarch.com/mishoo\n//\n// $Id: dialog.js 5087 2006-06-01 21:54:08Z paul $\n\n// Though \"Dialog\" looks like an object, it isn't really an object.  Instead\n// it's just namespace for protecting global symbols.\n\nfunction Dialog(url, action, init) {\n\tif (typeof init == \"undefined\") {\n\t\tinit = window;\t// pass this window object by default\n\t}\n\tDialog._geckoOpenModal(url, action, init);\n};\n\nDialog._parentEvent = function(ev) {\n\tsetTimeout( function() { if (Dialog._modal && !Dialog._modal.closed) { Dialog._modal.focus() } }, 50);\n\tif (Dialog._modal && !Dialog._modal.closed) {\n\t\tDialog._stopEvent(ev);\n\t}\n};\n\n\n// should be a function, the return handler of the currently opened dialog.\nDialog._return = null;\n\n// constant, the currently opened dialog\nDialog._modal = null;\n\n// the dialog will read it's args from this variable\nDialog._arguments = null;\n\nDialog._geckoOpenModal = function(url, action, init) {\n\t//var urlLink = \"hadialog\"+url.toString();\n\tvar myURL = \"hadialog\"+url;\n\tvar regObj = /\\W/g;\n\tmyURL = myURL.replace(regObj,'_');\n\tvar dlg = window.open(url, myURL,\n\t\t\t      \"toolbar=no,menubar=no,personalbar=no,width=10,height=10,\" +\n\t\t\t      \"scrollbars=no,resizable=yes,modal=yes,dependable=yes\");\n\tDialog._modal = dlg;\n\tDialog._arguments = init;\n\n\t// capture some window's events\n\tfunction capwin(w) {\n\t\tDialog._addEvent(w, \"click\", Dialog._parentEvent);\n\t\tDialog._addEvent(w, \"mousedown\", Dialog._parentEvent);\n\t\tDialog._addEvent(w, \"focus\", Dialog._parentEvent);\n\t};\n\t// release the captured events\n\tfunction relwin(w) {\n\t\tDialog._removeEvent(w, \"click\", Dialog._parentEvent);\n\t\tDialog._removeEvent(w, \"mousedown\", Dialog._parentEvent);\n\t\tDialog._removeEvent(w, \"focus\", Dialog._parentEvent);\n\t};\n\tcapwin(window);\n\t// capture other frames\n\tfor (var i = 0; i < window.frames.length; capwin(window.frames[i++]));\n\t// make up a function to be called when the Dialog ends.\n\tDialog._return = function (val) {\n\t\tif (val && action) {\n\t\t\taction(val);\n\t\t}\n\t\trelwin(window);\n\t\t// capture other frames\n\t\tfor (var i = 0; i < window.frames.length; relwin(window.frames[i++]));\n\t\tDialog._modal = null;\n\t};\n};\n\n\n// event handling\n\nDialog._addEvent = function(el, evname, func) {\n\tif (Dialog.is_ie) {\n\t\tel.attachEvent(\"on\" + evname, func);\n\t} else {\n\t\tel.addEventListener(evname, func, true);\n\t}\n};\n\n\nDialog._removeEvent = function(el, evname, func) {\n\tif (Dialog.is_ie) {\n\t\tel.detachEvent(\"on\" + evname, func);\n\t} else {\n\t\tel.removeEventListener(evname, func, true);\n\t}\n};\n\n\nDialog._stopEvent = function(ev) {\n\tif (Dialog.is_ie) {\n\t\tev.cancelBubble = true;\n\t\tev.returnValue = false;\n\t} else {\n\t\tev.preventDefault();\n\t\tev.stopPropagation();\n\t}\n};\n\nDialog.agt = navigator.userAgent.toLowerCase();\nDialog.is_ie\t   = ((Dialog.agt.indexOf(\"msie\") != -1) && (Dialog.agt.indexOf(\"opera\") == -1));\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitemedia/assets/images.js",
    "content": "/**\n * Functions for the image listing, used by images.php only\n * @author $Author: paul $\n * @version $Id: images.js 5087 2006-06-01 21:54:08Z paul $\n * @package ImageManager\n */\n\n\tfunction i18n(str) {\n\t\tif(I18N)\n\t\t  return (I18N[str] || str);\n\t\telse\n\t\t\treturn str;\n\t};\n\n\tfunction changeDir(newDir)\n\t{\n\t\tshowMessage('Loading');\n\t\tlocation.href = \"images.php?dir=\"+newDir;\n\t}\n\n\n\tfunction newFolder(dir, newDir)\n\t{\n\t\tlocation.href = \"images.php?dir=\"+dir+\"&newDir=\"+newDir;\n\t}\n\n\t//update the dir list in the parent window.\n\tfunction updateDir(newDir)\n\t{\n\t\tvar selection = window.top.document.getElementById('dirPath');\n\t\tif(selection)\n\t\t{\n\t\t\tfor(var i = 0; i < selection.length; i++)\n\t\t\t{\n\t\t\t\tvar thisDir = selection.options[i].text;\n\t\t\t\tif(thisDir == newDir)\n\t\t\t\t{\n\t\t\t\t\tselection.selectedIndex = i;\n\t\t\t\t\tshowMessage('Loading');\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction selectImage(p_image_template_id, p_filename, p_alt)\n\t{\n\t\tvar topDoc = window.top.document;\n\n\t\tvar obj = topDoc.getElementById('f_image_template_id');\n\t\tobj.value = p_image_template_id;\n\n\t\tvar obj = topDoc.getElementById('f_url');\n\t\tobj.value = p_filename;\n\n\t\tvar obj = topDoc.getElementById('f_alt');\n\t\tobj.value = p_alt;\n\n\t\tvar obj = topDoc.getElementById('f_caption');\n\t\tobj.value = p_alt;\n\n\t\t//alert('f_image_template_id: '+p_image_template_id+', f_url: '+p_filename+', f_alt: '+p_alt);\n\t}\n\n\tfunction showMessage(newMessage)\n\t{\n\t\tvar topDoc = window.top.document;\n\n\t\tvar message = topDoc.getElementById('message');\n\t\tvar messages = topDoc.getElementById('messages');\n\t\tif(message && messages)\n\t\t{\n\t\t\tif(message.firstChild)\n\t\t\t\tmessage.removeChild(message.firstChild);\n\n\t\t\tmessage.appendChild(topDoc.createTextNode(i18n(newMessage)));\n\n\t\t\tmessages.style.display = \"block\";\n\t\t}\n\t}\n\n\tfunction addEvent(obj, evType, fn)\n\t{\n\t\tif (obj.addEventListener) { obj.addEventListener(evType, fn, true); return true; }\n\t\telse if (obj.attachEvent) {  var r = obj.attachEvent(\"on\"+evType, fn);  return r;  }\n\t\telse {  return false; }\n\t}\n\n\tfunction confirmDeleteFile(file)\n\t{\n\t\tif(confirm(i18n(\"Delete file?\")))\n\t\t\treturn true;\n\n\t\treturn false;\n\t}\n\n\tfunction confirmDeleteDir(dir, count)\n\t{\n\t\tif(count > 0)\n\t\t{\n\t\t\talert(i18n(\"Please delete all files/folders inside the folder you wish to delete first.\"));\n\t\t\treturn;\n\t\t}\n\n\t\tif(confirm(i18n(\"Delete folder?\")))\n\t\t\treturn true;\n\n\t\treturn false;\n\t}\n\n\taddEvent(window, 'load', init);"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitemedia/assets/manager.js",
    "content": "/**\n * Functions for the ImageManager, used by manager.php only\n * @author $Author: paul $\n * @version $Id: manager.js 5087 2006-06-01 21:54:08Z paul $\n * @package ImageManager\n */\n\n\t//Translation\n//\tfunction i18n(str) {\n//\t\tif(I18N)\n//\t\t  return (I18N[str] || str);\n//\t\telse\n//\t\t\treturn str;\n//\t};\n\n\n\t//set the alignment options\n\tfunction setAlign(align)\n\t{\n\t\tvar selection = document.getElementById('f_align');\n\t\tfor(var i = 0; i < selection.length; i++)\n\t\t{\n\t\t\tif(selection.options[i].value == align)\n\t\t\t{\n\t\t\t\tselection.selectedIndex = i;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\t//initialise the form\n\tinit = function ()\n\t{\n\t\t__dlg_init();\n\n\t\t__dlg_translate('ImageManager');\n\n\t\tvar uploadForm = document.getElementById('uploadForm');\n\t\tif(uploadForm) uploadForm.target = 'imgManager';\n\n\t\tvar param = window.dialogArguments;\n\t\tif (param)\n\t\t{\n\t\t\tdocument.getElementById(\"f_image_template_id\").value = param[\"f_image_template_id\"];\n\t\t\tdocument.getElementById(\"f_url\").value = param[\"f_url\"];\n\t\t\tdocument.getElementById(\"f_alt\").value = param[\"f_alt\"];\n\t\t\tdocument.getElementById(\"f_caption\").value = param[\"f_caption\"];\n\t\t\tdocument.getElementById(\"f_border\").value = param[\"f_border\"];\n\t\t\tdocument.getElementById(\"f_vert\").value = param[\"f_vert\"];\n\t\t\tdocument.getElementById(\"f_horiz\").value = param[\"f_horiz\"];\n\t\t\tdocument.getElementById(\"f_width\").value = param[\"f_width\"];\n\t\t\tdocument.getElementById(\"f_height\").value = param[\"f_height\"];\n\t\t\tsetAlign(param[\"f_align\"]);\n\t\t}\n\n\t\tdocument.getElementById(\"f_alt\").focus();\n\t}\n\n\n\tfunction onCancel()\n\t{\n\t\t__dlg_close(null);\n\t\treturn false;\n\t};\n\n\tfunction onOK()\n\t{\n\t\t// pass data back to the calling window\n\t\t//var fields = [\"f_url\", \"f_alt\", \"f_align\", \"f_border\",\n\t\t//\t\t\t  \"f_horiz\", \"f_vert\", \"f_height\", \"f_width\"];\n\t\tvar fields = [\"f_url\", \"f_alt\", \"f_align\", \"f_caption\", \"f_image_template_id\"];\n\t\tvar param = new Object();\n\t\t//var debugMsg = \"\";\n\t\tfor (var i in fields)\n\t\t{\n\t\t\tvar id = fields[i];\n\t\t\tvar el = document.getElementById(id);\n\t\t\tif(id == \"f_url\" && el.value.indexOf('://') < 0 )\n\t\t\t\tparam[id] = makeURL(base_url,el.value);\n\t\t\telse\n\t\t\t\tparam[id] = el.value;\n\t\t\t//debugMsg += id + \":\" + param[id];\n\t\t}\n\t\t//alert(debugMsg);\n\t\t//__dlg_close(param);\n\t\ttinyMCEPopup.close();\n\t\treturn false;\n\t};\n\n\t//similar to the Files::makeFile() in Files.php\n\tfunction makeURL(pathA, pathB)\n\t{\n\t\tif(pathA.substring(pathA.length-1) != '/')\n\t\t\tpathA += '/';\n\n\t\tif(pathB.charAt(0) == '/');\n\t\t\tpathB = pathB.substring(1);\n\n\t\treturn pathA+pathB;\n\t}\n\n\n\tfunction updateDir(selection)\n\t{\n\t\tvar newDir = selection.options[selection.selectedIndex].value;\n\t\tchangeDir(newDir);\n\t}\n\n\tfunction goUpDir()\n\t{\n\t\tvar selection = document.getElementById('dirPath');\n\t\tvar currentDir = selection.options[selection.selectedIndex].text;\n\t\tif(currentDir.length < 2)\n\t\t\treturn false;\n\t\tvar dirs = currentDir.split('/');\n\n\t\tvar search = '';\n\n\t\tfor(var i = 0; i < dirs.length - 2; i++)\n\t\t{\n\t\t\tsearch += dirs[i]+'/';\n\t\t}\n\n\t\tfor(var i = 0; i < selection.length; i++)\n\t\t{\n\t\t\tvar thisDir = selection.options[i].text;\n\t\t\tif(thisDir == search)\n\t\t\t{\n\t\t\t\tselection.selectedIndex = i;\n\t\t\t\tvar newDir = selection.options[i].value;\n\t\t\t\tchangeDir(newDir);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction changeDir(newDir)\n\t{\n\t\tif(typeof imgManager != 'undefined')\n\t\t\timgManager.changeDir(newDir);\n\t}\n\n\tfunction toggleConstrains(constrains)\n\t{\n\t\tvar lockImage = document.getElementById('imgLock');\n\t\tvar constrains = document.getElementById('constrain_prop');\n\n\t\tif(constrains.checked)\n\t\t{\n\t\t\tlockImage.src = \"img/locked.gif\";\n\t\t\tcheckConstrains('width')\n\t\t}\n\t\telse\n\t\t{\n\t\t\tlockImage.src = \"img/unlocked.gif\";\n\t\t}\n\t}\n\n\tfunction checkConstrains(changed)\n\t{\n\t\t//alert(document.form1.constrain_prop);\n\t\tvar constrains = document.getElementById('constrain_prop');\n\n\t\tif(constrains.checked)\n\t\t{\n\t\t\tvar obj = document.getElementById('orginal_width');\n\t\t\tvar orginal_width = parseInt(obj.value);\n\t\t\tvar obj = document.getElementById('orginal_height');\n\t\t\tvar orginal_height = parseInt(obj.value);\n\n\t\t\tvar widthObj = document.getElementById('f_width');\n\t\t\tvar heightObj = document.getElementById('f_height');\n\n\t\t\tvar width = parseInt(widthObj.value);\n\t\t\tvar height = parseInt(heightObj.value);\n\n\t\t\tif(orginal_width > 0 && orginal_height > 0)\n\t\t\t{\n\t\t\t\tif(changed == 'width' && width > 0) {\n\t\t\t\t\theightObj.value = parseInt((width/orginal_width)*orginal_height);\n\t\t\t\t}\n\n\t\t\t\tif(changed == 'height' && height > 0) {\n\t\t\t\t\twidthObj.value = parseInt((height/orginal_height)*orginal_width);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction showMessage(newMessage)\n\t{\n\t\tvar message = document.getElementById('message');\n\t\tvar messages = document.getElementById('messages');\n\t\tif(message.firstChild)\n\t\t\tmessage.removeChild(message.firstChild);\n\n\t\tmessage.appendChild(document.createTextNode(i18n(newMessage)));\n\n\t\tmessages.style.display = \"block\";\n\t}\n\n\tfunction addEvent(obj, evType, fn)\n\t{\n\t\tif (obj.addEventListener) { obj.addEventListener(evType, fn, true); return true; }\n\t\telse if (obj.attachEvent) {  var r = obj.attachEvent(\"on\"+evType, fn);  return r;  }\n\t\telse {  return false; }\n\t}\n\n\tfunction doUpload()\n\t{\n\n\t\tvar uploadForm = document.getElementById('uploadForm');\n\t\tif(uploadForm)\n\t\t\tshowMessage('Uploading');\n\t}\n\n\tfunction refresh()\n\t{\n\t\tvar selection = document.getElementById('dirPath');\n\t\tupdateDir(selection);\n\t}\n\n\n\tfunction newFolder()\n\t{\n\t\tvar selection = document.getElementById('dirPath');\n\t\tvar dir = selection.options[selection.selectedIndex].value;\n\n\t\tDialog(\"newFolder.html\", function(param)\n\t\t{\n\t\t\tif (!param) // user must have pressed Cancel\n\t\t\t\treturn false;\n\t\t\telse\n\t\t\t{\n\t\t\t\tvar folder = param['f_foldername'];\n\t\t\t\tif(folder == thumbdir)\n\t\t\t\t{\n\t\t\t\t\talert(i18n('Invalid folder name, please choose another folder name.'));\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\n\t\t\t\tif (folder && folder != '' && typeof imgManager != 'undefined')\n\t\t\t\t\timgManager.newFolder(dir, encodeURI(folder));\n\t\t\t}\n\t\t}, null);\n\t}\n\n\taddEvent(window, 'load', init);\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitemedia/assets/popup.js",
    "content": "// htmlArea v3.0 - Copyright (c) 2002, 2003 interactivetools.com, inc.\n// This copyright notice MUST stay intact for use (see license.txt).\n//\n// Portions (c) dynarch.com, 2003\n//\n// A free WYSIWYG editor replacement for <textarea> fields.\n// For full source code and docs, visit http://www.interactivetools.com/\n//\n// Version 3.0 developed by Mihai Bazon.\n//   http://dynarch.com/mishoo\n//\n// $Id: popup.js 5087 2006-06-01 21:54:08Z paul $\n\n// Slightly modified for the ImageManager, window resizing is done only\n// by each window's script. Added translation for a few other HTML elements.\n\nfunction getAbsolutePos(el) {\n\tvar r = { x: el.offsetLeft, y: el.offsetTop };\n\tif (el.offsetParent) {\n\t\tvar tmp = getAbsolutePos(el.offsetParent);\n\t\tr.x += tmp.x;\n\t\tr.y += tmp.y;\n\t}\n\treturn r;\n};\n\nfunction comboSelectValue(c, val) {\n\tvar ops = c.getElementsByTagName(\"option\");\n\tfor (var i = ops.length; --i >= 0;) {\n\t\tvar op = ops[i];\n\t\top.selected = (op.value == val);\n\t}\n\tc.value = val;\n};\n\nfunction __dlg_onclose() {\n\tif(opener.Dialog._return)\n\t\topener.Dialog._return(null);\n};\n\nfunction __dlg_init(bottom) {\n\tvar body = document.body;\n\tvar body_height = 0;\n\tif (typeof bottom == \"undefined\") {\n\t\tvar div = document.createElement(\"div\");\n\t\tbody.appendChild(div);\n\t\tvar pos = getAbsolutePos(div);\n\t\tbody_height = pos.y;\n\t} else {\n\t\tvar pos = getAbsolutePos(bottom);\n\t\tbody_height = pos.y + bottom.offsetHeight;\n\t}\n\tif(opener && opener.Dialog && opener.Dialog._arguments)\n\t\twindow.dialogArguments = opener.Dialog._arguments;\n\tif (!document.all) {\n\t\t//window.sizeToContent();\n\t\t//window.sizeToContent();\t// for reasons beyond understanding,\n\t\t\t\t\t// only if we call it twice we get the\n\t\t\t\t\t// correct size.\n\t\twindow.addEventListener(\"unload\", __dlg_onclose, true);\n\t\t// center on parent\n\t\tvar x = opener.screenX + (opener.outerWidth - window.outerWidth) / 2;\n\t\tvar y = opener.screenY + (opener.outerHeight - window.outerHeight) / 2;\n\t\twindow.moveTo(x, y);\n\t\t//window.innerWidth = body.offsetWidth + 5;\n\t\t//window.innerHeight = body_height + 2;\n\t} else {\n\t\t// window.dialogHeight = body.offsetHeight + 50 + \"px\";\n\t\t// window.dialogWidth = body.offsetWidth + \"px\";\n\t\t//window.resizeTo(body.offsetWidth, body_height);\n\t\tvar ch = body.clientHeight;\n\t\tvar cw = body.clientWidth;\n\t\t//window.resizeBy(body.offsetWidth - cw, body_height - ch);\n\t\tvar W = body.offsetWidth;\n\t\tvar H = 2 * body_height - ch;\n\t\tif(ch <= 0) H = body_height;\n\t\tvar x = (screen.availWidth - W) / 2;\n\t\tvar y = (screen.availHeight - H) / 2;\n\t\t\n\t\twindow.moveTo(x, y);\n\t}\n\tdocument.body.onkeypress = __dlg_close_on_esc;\n};\n\nfunction __dlg_translate(i18n) {\n\tvar types = [\"span\", \"option\", \"td\", \"button\", \"div\", \"label\", \"a\",\"img\", \"legend\"];\n\tfor (var type in types) {\n\t\tvar spans = document.getElementsByTagName(types[type]);\n\t\tfor (var i = spans.length; --i >= 0;) {\n\t\t\tvar span = spans[i];\n\t\t\tif (span.firstChild && span.firstChild.data) {\t\t\t\t\n\t\t\t\tvar txt = i18n[span.firstChild.data];\n\t\t\t\tif (txt) span.firstChild.data = txt;\n\t\t\t}\n\t\t\tif(span.title){\n\t\t\t\tvar txt = i18n[span.title];\n\t\t\t\tif(txt) span.title = txt;\n\t\t\t}\n\t\t\tif(span.alt){\n\t\t\t\tvar txt = i18n[span.alt];\n\t\t\t\tif(txt) span.alt = txt;\n\t\t\t}\n\t\t}\n\t}\n\tvar txt = i18n[document.title];\n\tif (txt)\n\t\tdocument.title = txt;\n};\n\n// closes the dialog and passes the return info upper.\nfunction __dlg_close(val) {\n\t//opener.Dialog._return(val);\n\ttinyMCEPopup.close();\n};\n\nfunction __dlg_close_on_esc(ev) {\n\tev || (ev = window.event);\n\tif (ev.keyCode == 27) {\n\t\twindow.close();\n\t\treturn false;\n\t}\n\treturn true;\n};\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitemedia/attachments.php",
    "content": "<?php\n/**\n * Show a list of attachments in a long horizontal table.\n * @author $Author: holman $\n */\n$GLOBALS['g_campsiteDir'] = dirname(dirname(dirname(dirname(dirname(__FILE__)))));\n\n// run zend\nrequire_once $GLOBALS['g_campsiteDir'] . '/application.php';\n$application->bootstrap();\n\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/User.php');\n\n$userId = Zend_Auth::getInstance()->getIdentity();\n$userTmp = new User($userId);\nif (!$userTmp->exists() || !$userTmp->isAdmin()) {\n\theader(\"Location: /$ADMIN/login.php\");\n\texit(0);\n}\nunset($userTmp);\n\nrequire_once('config.inc.php');\nrequire_once('classes/AttachmentManager.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/lib_campsite.php\");\n\n$Campsite['SUBDIR'] = str_replace('/js/tinymce/plugins/campsitemedia', '', $Campsite['SUBDIR']);\n\n$manager = new AttachmentManager($AMConfig);\n\n$languageSelected = (isset($_REQUEST['language_selected']) && is_numeric($_REQUEST['language_selected']))\n    ? $_REQUEST['language_selected'] : null;\n$articleId = (isset($_REQUEST['article_id']) && is_numeric($_REQUEST['article_id']))\n    ? $_REQUEST['article_id'] : null;\n\n// Get the list of files and directories\n$list = array();\nif (!is_null($articleId)) {\n    $list = $manager->getFiles($articleId, $languageSelected);\n}\n\n\n/**\n * Draw the files in a table.\n */\nfunction drawFiles($list, &$manager)\n{\n    global $languageSelected, $Campsite;\n\n    $counter = 0;\n    foreach($list as $entry => $file)\n    {\n        $counter++;\n        $languageId = ($file['attachment']->getLanguageId()) ? $file['attachment']->getLanguageId() : $languageSelected;\n        $downloadURL = $Campsite['SUBDIR'] . '/attachment/' . basename($file['attachment']->getStorageLocation());\n?>\n    <td>\n      <table width=\"100\" cellpadding=\"0\" cellspacing=\"0\">\n      <tr>\n        <td class=\"block\" id=\"block_<?php echo $counter; ?>\" onclick=\"CampsiteMediaDialog.select(<?php echo $file['attachment']->getAttachmentId(); ?>, '<?php echo $downloadURL; ?>', '<?php echo htmlspecialchars($file[\"attachment\"]->getDescription($languageId)); ?>', '<?php echo $counter; ?>');\">\n          <a href=\"javascript:;\" onclick=\"CampsiteMediaDialog.select(<?php echo $file['attachment']->getAttachmentId(); ?>, '<?php echo $downloadURL; ?>', '<?php echo htmlspecialchars($file[\"attachment\"]->getDescription($languageId)); ?>');\" title=\"<?php echo htmlspecialchars($file['attachment']->getDescription($languageId)); ?>\"><?php echo $file['attachment']->getFileName(); ?></a><br />\n       <?php echo htmlspecialchars($file['attachment']->getDescription($languageId)); ?>\n        </td>\n      </tr>\n      </table>\n    </td>\n  <?php\n  }//foreach\n}//function drawFiles\n\n\nfunction drawNoResults()\n{\n  $translator = \\Zend_Registry::get('container')->getService('translator');\n?>\n<table width=\"100%\">\n  <tr>\n    <td class=\"noResult\"><?php echo $translator->trans(\"No Media Files Found\", array(), 'tiny_media_plugin'); ?></td>\n  </tr>\n</table>\n<?php\n} // fn drawNoResults\n\n\nfunction drawErrorBase(&$manager)\n{\n?>\n<table width=\"100%\">\n  <tr>\n    <td class=\"error\">Unable to read the directory: <?php echo $manager->config['base_dir']; ?></td>\n  </tr>\n</table>\n<?php\n} // fn drawErrorBase\n?>\n<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\n<html>\n<head>\n  <title>Image List</title>\n  <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\n  <link href=\"css/attachmentlist.css\" rel=\"stylesheet\" type=\"text/css\" />\n  <script type=\"text/javascript\" src=\"assets/dialog.js\"></script>\n  <script type=\"text/javascript\">\n  /*<![CDATA[*/\n      if(window.top)\n          I18N = window.top.I18N;\n\n      function hideMessage()\n      {\n          var topDoc = window.top.document;\n          var messages = topDoc.getElementById('messages');\n          if(messages)\n              messages.style.display = \"none\";\n      }\n\n      init = function()\n      {\n          hideMessage();\n          var topDoc = window.top.document;\n      }\n\n      function editImage(image)\n      {\n\t  var url = \"editor.php?img=\"+image;\n\t  Dialog(url, function(param)\n\t  {\n\t      if (!param) // user must have pressed Cancel\n\t\t  return false;\n\t      else\n\t\t  return true;\n\t  }, null);\n      }\n/*]]>*/\n    </script>\n\n  <script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\n  <script type=\"text/javascript\" src=\"js/campsitemedia.js\"></script>\n  <script type=\"text/javascript\" src=\"assets/images.js\"></script>\n</head>\n<body>\n<?php if ($manager->isValidBase() == false) { drawErrorBase($manager); }\n      elseif(count($list) > 0) { ?>\n  <table>\n  <tr>\n<?php drawFiles($list, $manager); ?>\n  </tr>\n  </table>\n\n<?php\n    $firstAttachment = array_shift($list);\n    if (!empty($firstAttachment)) {\n        $downloadURL = $Campsite['SUBDIR'] . '/attachment/' . basename($firstAttachment['attachment']->getStorageLocation());\n?>\n  <!-- automatically select the first attachment -->\n  <script>\n    CampsiteMediaDialog.select(<?php echo $firstAttachment['attachment']->getAttachmentId(); ?>, '<?php echo $downloadURL; ?>', '<?php echo htmlspecialchars($file[\"attachment\"]->getDescription($languageId)); ?>');\n  </script>\n<?php } ?>\n\n<?php } else { drawNoResults(); } ?>\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitemedia/classes/AttachmentManager.php",
    "content": "<?php\n/**\n * ImageManager, list attachment files\n * @author $Author: holman $\n * @version $Id: AttachmentManager.php 5087 2009-04-10 08:34:08Z holman $\n */\n\nrequire_once('Files.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/ArticleAttachment.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Attachment.php');\n\n/**\n * AttachmentManager Class.\n * @author $Author: holman $\n * @version $Id: AttachmentManager.php 5087 2009-04-10 08:34:08Z holman $\n */\nclass AttachmentManager\n{\n    /**\n     * Configuration array.\n     */\n    var $m_config;\n\n    /**\n     * Array of directory information.\n     */\n    var $m_dirs;\n\n\n    /**\n     * Constructor. Create a new Attachment Manager instance.\n     * @param array $config configuration array, see config.inc.php\n     */\n    function __construct($p_config)\n    {\n        $this->m_config = $p_config;\n    }\n\n\n    /**\n     * Get the base directory.\n     * @return string base dir, see config.inc.php\n     */\n    function getBaseDir()\n    {\n        return $this->m_config['base_dir'];\n    }\n\n\n    /**\n     * Get the base URL.\n     * @return string base url, see config.inc.php\n     */\n    function getBaseURL()\n    {\n        return $this->m_config['base_url'];\n    }\n\n\n    /**\n     *\n     */\n    function isValidBase()\n    {\n        return is_dir($this->getBaseDir());\n    }\n\n\n    /**\n     * Get all the files and directories of a relative path.\n     *\n     * @param string $p_articleId\n     *\n     * @return array of file and path information.\n     * <code>\n     *   array('url'=>'full url',\n     *         'storage'=>'full file path')\n     * </code>\n     */\n    function getFiles($p_articleId, $p_languageId = null, $p_filter = true)\n    {\n        $files = array();\n\n\tif ($this->isValidBase() == false)\n\t    return $files;\n\n\t$mediaFormats = array();\n\tif ($p_filter == true) {\n\t    $mediaFormats = explode(',', $this->m_config['media_formats']);\n\t}\n\t$articleAttachments = ArticleAttachment::GetAttachmentsByArticleNumber($p_articleId, $p_languageId);\n\tforeach ($articleAttachments as $articleAttachment) {\n\t    if (!$this->m_config['validate_files']) {\n\t        if (in_array($articleAttachment->getExtension(), $mediaFormats)) {\n\t\t  $file['attachment'] = $articleAttachment;\n\t\t  $file['url'] = $articleAttachment->getAttachmentUrl();\n\t\t  $file['storage'] = $articleAttachment->getStorageLocation();\n\t\t  $files[$articleAttachment->getAttachmentId()] = $file;\n\t\t}\n\t    }\n\t}\n\n\tksort($files);\n\treturn $files;\n    } // fn getFiles\n\n\n    /**\n     * Count the number of files and directories in a given folder\n     * minus the thumbnail folders and thumbnails.\n     */\n    function countFiles($path)\n    {\n        $total = 0;\n\n\tif (is_dir($path)) {\n\t    $d = @dir($path);\n\n\t    while (false !== ($entry = $d->read())) {\n\t        //echo $entry.\"<br>\";\n\t        if (substr($entry,0,1) != '.'\n\t\t        && $this->isThumbDir($entry) == false\n\t\t        && $this->isTmpFile($entry) == false\n\t\t        && $this->isThumb($entry) == false) {\n\t\t    $total++;\n\t\t}\n\t    }\n\t    $d->close();\n\t}\n\treturn $total;\n    } // fn countFiles\n\n\n    /**\n     * Check if the given file is a tmp file.\n     * @param string $file file name\n     * @return boolean true if it is a tmp file, false otherwise\n     */\n    function isTmpFile($file)\n    {\n        $len = strlen($this->config['tmp_prefix']);\n\tif (substr($file,0,$len) == $this->config['tmp_prefix'])\n\t    return true;\n\telse\n\t    return false;\n    }\n\n\n    /**\n     * Check if the given path is part of the subdirectories\n     * under the base_dir.\n     * @param string $path the relative path to be checked\n     * @return boolean true if the path exists, false otherwise\n     */\n    function validRelativePath($path)\n    {\n        $dirs = $this->getDirs();\n\tif ($path == '/')\n\t    return true;\n\t//check the path given in the url against the\n\t//list of paths in the system.\n\tfor($i = 0; $i < count($dirs); $i++) {\n\t    $key = key($dirs);\n\t    //we found the path\n\t    if ($key == $path)\n\t        return true;\n\n\t    next($dirs);\n\t}\n\treturn false;\n    }\n\n\n    /**\n     * Get the URL of the relative file.\n     * basically appends the relative file to the\n     * base_url given in config.inc.php\n     * @param string $relative a file the relative to the base_dir\n     * @return string the URL of the relative file.\n     */\n    function getFileURL($relative)\n    {\n        return Files::makeFile($this->getBaseURL(),$relative);\n    }\n\n\n    /**\n     * Get the fullpath to a relative file.\n     * @param string $relative the relative file.\n     * @return string the full path, .ie. the base_dir + relative.\n     */\n    function getFullPath($relative)\n    {\n        return Files::makeFile($this->getBaseDir(),$relative);\n    }\n\n\n    /**\n     * Get the default thumbnail.\n     * @return string default thumbnail, empty string if\n     * the thumbnail doesn't exist.\n     */\n    function getDefaultThumb()\n    {\n      if (is_file($this->config['default_thumbnail']))\n\t  return $this->config['default_thumbnail'];\n      else\n\t  return '';\n    }\n\n} // class AttachmentManager\n\n?>\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitemedia/classes/Files.php",
    "content": "<?php\n/**\n * File Utilities.\n * @author $Author: paul $\n * @version $Id: Files.php 5087 2006-06-01 21:54:08Z paul $\n * @package ImageManager\n */\n\ndefine('FILE_ERROR_NO_SOURCE', 100);\ndefine('FILE_ERROR_COPY_FAILED', 101);\ndefine('FILE_ERROR_DST_DIR_FAILED', 102);\ndefine('FILE_COPY_OK', 103);\n\n/**\n * File Utilities\n * @author $Author: paul $\n * @version $Id: Files.php 5087 2006-06-01 21:54:08Z paul $\n * @package ImageManager\n * @subpackage files\n */\nclass Files \n{\n\t\n\t/**\n\t * Copy a file from source to destination. If unique == true, then if\n\t * the destination exists, it will be renamed by appending an increamenting \n\t * counting number.\n\t * @param string $source where the file is from, full path to the files required\n\t * @param string $destination_file name of the new file, just the filename\n\t * @param string $destination_dir where the files, just the destination dir,\n\t * e.g., /www/html/gallery/\n\t * @param boolean $unique create unique destination file if true.\n\t * @return string the new copied filename, else error if anything goes bad.\n\t */\n\tfunction copyFile($source, $destination_dir, $destination_file, $unique=true) \n\t{\n\t\tif(!(file_exists($source) && is_file($source))) \n\t\t\treturn FILE_ERROR_NO_SOURCE;\n\n\t\t$destination_dir = Files::fixPath($destination_dir);\n\n\t\tif(!is_dir($destination_dir)) \n\t\t\tReturn FILE_ERROR_DST_DIR_FAILED;\n\n\t\t$filename = Files::escape($destination_file);\n\n\t\tif($unique) \n\t\t{\n\t\t\t$dotIndex = strrpos($destination_file, '.');\n\t\t\t$ext = '';\n\t\t\tif(is_int($dotIndex)) \n\t\t\t{\n\t\t\t\t$ext = substr($destination_file, $dotIndex);\n\t\t\t\t$base = substr($destination_file, 0, $dotIndex);\n\t\t\t}\n\t\t\t$counter = 0;\n\t\t\twhile(is_file($destination_dir.$filename)) \n\t\t\t{\n\t\t\t\t$counter++;\n\t\t\t\t$filename = $base.'_'.$counter.$ext;\n\t\t\t}\n\t\t}\n\n\t\tif (!copy($source, $destination_dir.$filename))\n\t\t\treturn FILE_ERROR_COPY_FAILED;\n\t\t\n\t\t//verify that it copied, new file must exists\n\t\tif (is_file($destination_dir.$filename))\n\t\t\tReturn $filename;\n\t\telse\n\t\t\treturn FILE_ERROR_COPY_FAILED;\n\t}\n\n\t/**\n\t * Create a new folder.\n\t * @param string $newFolder specifiy the full path of the new folder.\n\t * @return boolean true if the new folder is created, false otherwise.\n\t */\n\tfunction createFolder($newFolder) \n\t{\n\t\tmkdir ($newFolder, 0777);\n\t\treturn chmod($newFolder, 0777);\n\t}\n\n\n\t/**\n\t * Escape the filenames, any non-word characters will be\n\t * replaced by an underscore.\n\t * @param string $filename the orginal filename\n\t * @return string the escaped safe filename\n\t */\n\tfunction escape($filename) \n\t{\n\t\tReturn preg_replace('/[^\\w\\._]/', '_', $filename);\n\t}\n\n\t/**\n\t * Delete a file.\n\t * @param string $file file to be deleted\n\t * @return boolean true if deleted, false otherwise.\n\t */\n\tfunction delFile($file) \n\t{\n\t\tif(is_file($file)) \n\t\t\tReturn unlink($file);\n\t\telse\n\t\t\tReturn false;\n\t}\n\n\t/**\n\t * Delete folder(s), can delete recursively.\n\t * @param string $folder the folder to be deleted.\n\t * @param boolean $recursive if true, all files and sub-directories\n\t * are delete. If false, tries to delete the folder, can throw\n\t * error if the directory is not empty.\n\t * @return boolean true if deleted.\n\t */\n\tfunction delFolder($folder, $recursive=false) \n\t{\n\t\t$deleted = true;\n\t\tif($recursive) \n\t\t{\n\t\t\t$d = dir($folder);\n\t\t\twhile (false !== ($entry = $d->read())) \n\t\t\t{\n\t\t\t\tif ($entry != '.' && $entry != '..')\n\t\t\t\t{\n\t\t\t\t\t$obj = Files::fixPath($folder).$entry;\n\t\t\t\t\t//var_dump($obj);\n\t\t\t\t\tif (is_file($obj))\n\t\t\t\t\t{\n\t\t\t\t\t\t$deleted &= Files::delFile($obj);\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t\telse if(is_dir($obj))\n\t\t\t\t\t{\n\t\t\t\t\t\t$deleted &= Files::delFolder($obj, $recursive);\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t}\n\t\t\t$d->close();\n\n\t\t}\n\n\t\t//$folder= $folder.'/thumbs';\n\t\t//var_dump($folder);\n\t\tif(is_dir($folder)) \n\t\t\t$deleted &= rmdir($folder);\n\t\telse\n\t\t\t$deleted &= false;\n\n\t\tReturn $deleted;\n\t}\n\n\t/**\n\t * Append a / to the path if required.\n\t * @param string $path the path\n\t * @return string path with trailing /\n\t */\n\tfunction fixPath($path) \n\t{\n\t\t//append a slash to the path if it doesn't exists.\n\t\tif(!(substr($path,-1) == '/'))\n\t\t\t$path .= '/';\n\t\tReturn $path;\n\t}\n\n\t/**\n\t * Concat two paths together. Basically $pathA+$pathB\n\t * @param string $pathA path one\n\t * @param string $pathB path two\n\t * @return string a trailing slash combinded path.\n\t */\n\tfunction makePath($pathA, $pathB) \n\t{\n\t\t$pathA = Files::fixPath($pathA);\n\t\tif(substr($pathB,0,1)=='/')\n\t\t\t$pathB = substr($pathB,1);\n\t\tReturn Files::fixPath($pathA.$pathB);\n\t}\n\n\t/**\n\t * Similar to makePath, but the second parameter\n\t * is not only a path, it may contain say a file ending.\n\t * @param string $pathA the leading path\n\t * @param string $pathB the ending path with file\n\t * @return string combined file path.\n\t */\n\tfunction makeFile($pathA, $pathB) \n\t{\t\t\n\t\t$pathA = Files::fixPath($pathA);\n\t\tif(substr($pathB,0,1)=='/')\n\t\t\t$pathB = substr($pathB,1);\n\t\t\n\t\tReturn $pathA.$pathB;\n\t}\n\n\t\n\t/**\n\t * Format the file size, limits to Mb.\n\t * @param int $size the raw filesize\n\t * @return string formated file size.\n\t */\n\tfunction formatSize($size) \n\t{\n\t\tif($size < 1024) \n\t\t\treturn $size.' bytes';\t\n\t\telse if($size >= 1024 && $size < 1024*1024) \n\t\t\treturn sprintf('%01.2f',$size/1024.0).' Kb';\t\n\t\telse\n\t\t\treturn sprintf('%01.2f',$size/(1024.0*1024)).' Mb';\t\n\t}\n}\n\n?>"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitemedia/config.inc.php",
    "content": "<?php\n/**\n * Attachment Manager configuration file.\n * @author $Author: holman $\n */\n$GLOBALS['g_campsiteDir'] = dirname(dirname(dirname(dirname(dirname(__FILE__)))));\n\n// run zend\nrequire_once $GLOBALS['g_campsiteDir'] . '/application.php';\n$application->bootstrap();\n\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/User.php');\n\n$userId = Zend_Auth::getInstance()->getIdentity();\n$userTmp = new User($userId);\nif (!$userTmp->exists() || !$userTmp->isAdmin()) {\n\theader(\"Location: /$ADMIN/login.php\");\n\texit(0);\n}\nunset($userTmp);\n\nrequire_once($GLOBALS['g_campsiteDir'].'/conf/configuration.php');\n\nglobal $Campsite;\n\n/*\n File system path to the directory you want to manage the images\n for multiple user systems, set it dynamically.\n\n NOTE: This directory requires write access by PHP. That is,\n       PHP must be able to create files in this directory.\n\t   Able to create directories is nice, but not necessary.\n*/\n$AMConfig['base_dir'] = $Campsite['FILE_DIRECTORY'];\n\n/*\n The URL to the above path, the web browser needs to be able to see it.\n It can be protected via .htaccess on apache or directory permissions on IIS,\n check you web server documentation for futher information on directory protection\n If this directory needs to be publicly accessiable, remove scripting capabilities\n for this directory (i.e. disable PHP, Perl, CGI). We only want to store assets\n in this directory and its subdirectories.\n*/\n$AMConfig['base_url'] = $Campsite['FILE_BASE_URL'];\n\n/*\n  The prefix for thumbnail files, something like .thumb will do. The\n  thumbnails files will be named as \"prefix_imagefile.ext\", that is,\n  prefix + orginal filename.\n*/\n$AMConfig['num_dirs_level_1'] = '1000';\n\n/*\n  Thumbnail can also be stored in a directory, this directory\n  will be created by PHP. If PHP is in safe mode, this parameter\n  is ignored, you can not create directories.\n\n  If you do not want to store thumbnails in a directory, set this\n  to false or empty string '';\n*/\n$AMConfig['num_dirs_level_2'] = '1000';\n\n/*\n  Possible values: true, false\n\n TRUE -  Allow the user to create new sub-directories in the\n         $IMConfig['base_dir'].\n\n FALSE - No directory creation.\n\n NOTE: If $IMConfig['safe_mode'] = true, this parameter\n       is ignored, you can not create directories\n*/\n$AMConfig['tmp_dir'] = '/tmp/';\n\n/*\n  Possible values: true, false\n\n TRUE -  Show the directory dropdown at the top of the\n \t\t \"Insert Image\" window.\n\n FALSE - Do not show the directory dropdown control at the top\n \t\t of the \"Insert Image\" window.\n*/\n$AMConfig['show_dirs'] = false;\n\n/*\n  Possible values: true, false\n\n  TRUE - Allow the user to upload files.\n\n  FALSE - No uploading allowed.\n*/\n$AMConfig['allow_upload'] = false;\n\n/*\n Possible values: true, false\n\n TRUE - If set to true, uploaded files will be validated based on the\n        function getImageSize, if we can get the image dimensions then\n        I guess this should be a valid image. Otherwise the file will be rejected.\n\n FALSE - All uploaded files will be processed.\n\n NOTE: If uploading is not allowed, this parameter is ignored.\n*/\n$AMConfig['validate_files'] = false;\n\n/*\n The default thumbnail if the thumbnails can not be created, either\n due to error or bad image file.\n*/\n$AMConfig['default_thumbnail'] = 'img/default.gif';\n\n/*\n Valid media formats\n*/\n$AMConfig['media_formats'] = 'swf,flv,mov,qt,mpg,mp3,mp4,mpeg,avi,wmv,wm,asf,asx,wmx,wvx,rm,ra,ram';\n?>\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitemedia/css/attachmentlist.css",
    "content": "body { margin: 0; padding: 0; }\n.block { height: 98px; width: 98px; border: 1px solid threedface; text-align: center; behavior: url(hover.htc ); }\n.block a img { border: 0 none; }\n.block:hover, .block.hover{ background-color: #ffc; }\n.edit { font-size: 9pt; font-family: \"MS Sans Serif\", Geneva, sans-serif; padding-top: 3px;}\n.edit a { border: 1px solid white; padding: 3px; }\n.edit a:hover { border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight; background-color: #ffc; }\n.edit a img { border: 0 none; vertical-align: bottom; }\n.noResult { font-size:large; font-weight:bold; color:#ccc; font-family: Helvetica, sans-serif;  text-align: center;  padding-top: 60px;   }\n.error { color:#c00; font-weight:bold; font-size: medium; font-family: Helvetica, sans-serif; text-align: center;  padding-top: 65px;}"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitemedia/css/campsitemedia.css",
    "content": "html, body {  background-color: ButtonFace;  color: ButtonText; font: 11px Tahoma,Verdana,sans-serif; margin: 0; padding: 0;}\nbody { padding: 5px; }\nfieldset { padding: 0;}\n.title { background-color: #ddf; color: #000; font-weight: bold; font-size: 120%; padding: 3px 10px; margin-bottom: 10px; border-bottom: 1px  solid black; letter-spacing: 2px;}\nform { padding: 0px;  margin: 0 auto; width: 550px;}\n.dirWidth { width: 70%; }\na { padding: 5px; border: 1px solid ButtonFace;\t}\t\na img\t{ border: 0; }\t\na:hover { border-color: ButtonHighlight ButtonShadow ButtonShadow ButtonHighlight; }\n.dirs {\tpadding: 1em; \t}\n.attachmentFrame { width: 525px; height: 145px; margin: 0 auto; margin-top: 1em; background-color: White;}\n.smallWidth{ width: 4em; }\n.largelWidth{ width: 22em; }\n.inputTable { margin: 1em auto; }\nselect, input, button { font: 11px Tahoma,Verdana,sans-serif; }\n.buttons { width: 70px; text-align: center; }\n.clearboth{ clear: both; }\n#messages { position: relative; left: 175px; top: 115px; background-color: white; width:200px;  float: left; margin-top: -52px; border: 1px solid #ccc; text-align: center; padding: 15px; }\n#message  { font-size: 15px; font-weight: bold; color: #69c; }\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitemedia/js/campsitemedia.js",
    "content": "/* Functions for the campsitemedia plugin popup */\r\n\r\ntinyMCEPopup.requireLangPack();\r\n\r\nvar CampsiteMediaDialog = {\r\n\r\n    init : function(ed) {\r\n\ttinyMCEPopup.resizeToInnerSize();\r\n\r\n\tvar formObj = document.forms[0];\r\n\tvar inst = tinyMCEPopup.editor;\r\n\tvar elm = inst.selection.getNode();\r\n\tvar action = \"insert\";\r\n\tvar html;\r\n\r\n\telm = inst.dom.getParent(elm, \"A\");\r\n\tif (elm != null && elm.nodeName == \"A\")\r\n\t    action = \"update\";\r\n\r\n\tformObj.insert.value = tinyMCEPopup.getLang(action, 'Insert', true);\r\n\r\n\tif (action == \"update\")\r\n\t    var href = inst.dom.getAttrib(elm, 'href');\r\n    },\r\n\r\n    insert : function(url) {\r\n\tvar ed = tinyMCEPopup.editor;\r\n\tvar dom = ed.dom;\r\n\tvar topDoc = window.top.document;\r\n\tvar parentWin = tinyMCEPopup.getWindowArg(\"window\");\r\n\r\n\tparentWin.document.getElementById('src').value = url + topDoc.getElementById('f_url').value;\r\n\ted.selection.setContent(dom.createHTML('a', {\r\n\t\t    href : topDoc.getElementById('f_url').value,\r\n\t\t    title : topDoc.getElementById('f_description').value\r\n\t    }, ed.selection.getContent()));\r\n\ttinyMCEPopup.close();\r\n    },\r\n\r\n    select : function(p_attachment_id, p_filename, p_description, p_selected) {\r\n\tvar topDoc = window.top.document;\r\n\r\n\tvar obj = topDoc.getElementById('f_attachment_id');\r\n\tobj.value = p_attachment_id;\r\n\r\n\tvar obj = topDoc.getElementById('f_url');\r\n\tobj.value = p_filename;\r\n\r\n\tvar obj = topDoc.getElementById('f_description');\r\n\tobj.value = p_description;\r\n\r\n\tvar allPageTags = new Array();\r\n\tallPageTags = document.getElementsByTagName('*');\r\n\tfor (i = 0; i < allPageTags.length; i++) {\r\n\t    if (allPageTags[i].className == 'block') {\r\n\t\tallPageTags[i].style.backgroundColor='';\r\n\t    }\r\n\t}\r\n\r\n\tdocument.getElementById('block_'+p_selected).style.backgroundColor='#FFC';\r\n    },\r\n\r\n    close : function() {\r\n\ttinyMCEPopup.close();\r\n    }\r\n};\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitemedia/langs/cs_dlg.js",
    "content": "tinyMCE.addI18n('cs.campsiteattachment_dlg',{\r\ntitle:\"Insert link to article file\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitemedia/langs/en_dlg.js",
    "content": "tinyMCE.addI18n('en.campsiteattachment_dlg',{\r\ndesc:\"File Attachment\",\r\ntitle:\"Insert link to article file\",\r\nselect:\"Select\",\r\ncancel:\"Cancel\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitemedia/langs/es_dlg.js",
    "content": "tinyMCE.addI18n('es.campsiteattachment_dlg',{\r\ntitle:\"Insertar enlace a archivo adjunto del art&iacute;culo\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitemedia/langs/fr_dlg.js",
    "content": "tinyMCE.addI18n('fr.campsiteattachment_dlg',{\r\ntitle:\"Insert link to article file\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitemedia/langs/it_dlg.js",
    "content": "tinyMCE.addI18n('it.campsiteattachment_dlg',{\r\ntitle:\"Insert link to article file\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitemedia/langs/pt_dlg.js",
    "content": "tinyMCE.addI18n('pt.campsiteattachment_dlg',{\r\ntitle:\"Insert link to article file\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitemedia/langs/ro_dlg.js",
    "content": "tinyMCE.addI18n('ro.campsiteattachment_dlg',{\r\ntitle:\"Insert link to article file\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitemedia/langs/ru_dlg.js",
    "content": "tinyMCE.addI18n('ru.campsiteattachment_dlg',{\r\ntitle:\"Insert link to article file\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitemedia/langs/sr_dlg.js",
    "content": "tinyMCE.addI18n('sr.campsiteattachment_dlg',{\r\ntitle:\"Insert link to article file\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/campsitemedia/popup.php",
    "content": "<?php\r\n$GLOBALS['g_campsiteDir'] = dirname(dirname(dirname(dirname(dirname(__FILE__)))));\r\n\r\n// run zend\r\nrequire_once $GLOBALS['g_campsiteDir'] . '/application.php';\r\n$application->bootstrap();\r\n\r\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/User.php');\r\n\r\n$userId = Zend_Auth::getInstance()->getIdentity();\r\n$userTmp = new User($userId);\r\nif (!$userTmp->exists() || !$userTmp->isAdmin()) {\r\n\theader(\"Location: /$ADMIN/login.php\");\r\n\texit(0);\r\n}\r\nunset($userTmp);\r\n\r\nrequire_once('config.inc.php');\r\nrequire_once($GLOBALS['g_campsiteDir'].'/conf/configuration.php');\r\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\r\nrequire_once($GLOBALS['g_campsiteDir'].\"/$ADMIN_DIR/lib_campsite.php\");\r\n$translator = \\Zend_Registry::get('container')->getService('translator');\r\n?>\r\n<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\r\n<html>\r\n<head>\r\n  <title><?php echo $translator->trans('Insert media file', array(), 'tiny_media_plugin'); ?></title>\r\n\r\n  <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\r\n  <link href=\"css/campsitemedia.css\" rel=\"stylesheet\" type=\"text/css\" />\r\n  <script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n  <script type=\"text/javascript\" src=\"js/campsitemedia.js\"></script>\r\n  <script type=\"text/javascript\" src=\"assets/popup.js\"></script>\r\n  <script type=\"text/javascript\" src=\"assets/dialog.js\"></script>\r\n  <script type=\"text/javascript\" src=\"assets/manager.js\"></script>\r\n</head>\r\n<body>\r\n  <form action=\"attachments.php\" id=\"uploadForm\" method=\"post\">\r\n  <fieldset>\r\n    <div class=\"dirs\">\r\n      <iframe src=\"attachments.php?article_id=<?php echo $_REQUEST['article_id']; ?>&language_selected=<?php echo $_REQUEST['language_selected']; ?>\" name=\"attachmentsManager\" id=\"attachmentsManager\" class=\"attachmentFrame\" scrolling=\"auto\" title=\"Media File Selection\" frameborder=\"0\"></iframe>\r\n    </div>\r\n  </fieldset>\r\n\r\n  <!-- file attachment properties -->\r\n  <table class=\"inputTable\">\r\n    <input type=\"hidden\" id=\"f_attachment_id\" value=\"\" />\r\n    <input type=\"hidden\" id=\"f_url\" value=\"\" />\r\n    <input type=\"hidden\" id=\"f_description\" value=\"\" />\r\n  </table>\r\n  <!--// file attachment properties -->\r\n  <div style=\"text-align: right;\">\r\n    <hr />\r\n    <button type=\"button\" class=\"buttons\" onclick=\"CampsiteMediaDialog.insert('');\"><?php echo $translator->trans('Select', array(), 'tiny_media_plugin'); ?></button>\r\n    <button type=\"button\" class=\"buttons\" onclick=\"CampsiteMediaDialog.close();\"><?php echo $translator->trans('Cancel'); ?></button>\r\n  </div>\r\n  </form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/codehighlighting.htm",
    "content": "<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#codehighlighting.codehighlighting_title}</title>\r\n\t<script language=\"javascript\" type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script language=\"javascript\" type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script language=\"javascript\" type=\"text/javascript\" src=\"../../utils/form_utils.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/editable_selects.js\"></script>\r\n\t<script language=\"javascript\" type=\"text/javascript\" src=\"js/codehighlighting.js\">\r\n</script>\r\n\t<link rel=\"stylesheet\" type=\"text/css\" href=\"css/codehighlighting.css\" />\r\n\t<base target=\"_self\" />\r\n</head>\r\n<body onload=\"\" style=\"display: none; margin: 4px;\">\r\n<form onsubmit=\"return false;\" action=\"#\">\r\n\t<div class=\"Container\">\r\n        {#codehighlighting.codehighlighting_langaugepicker}:\r\n        <select id=\"ProgrammingLangauges\" style=\"width: 113px\">\r\n            <option selected=\"selected\" value=\"c-sharp\">C#</option>\r\n            <option value=\"c++\">C++</option>\r\n            <option value=\"css \">CSS</option>\r\n            <option value=\"java\">Java</option>\r\n            <option value=\"javascript\">Java Script</option>\r\n            <option value=\"php\">PHP</option>\r\n            <option value=\"ruby\">Ruby</option>\r\n            <option value=\"vb.net\">VB</option>\r\n            <option value=\"xhtml\">XML/HTML</option>\r\n            <option value=\"sql\">Sql</option>\r\n            <option value=\"delphi\">Delphi</option>\r\n            <option value=\"python\">Python</option>\r\n        </select>\r\n        <br />\r\n        {#codehighlighting.codehighlighting_pagecode}:<br />\r\n        <textarea id=\"CodeArea\" class=\"CodeArea\"></textarea><br />\r\n        <div class=\"Options\">\r\n         <input id=\"nogutter\" type=\"checkbox\"  />\r\n         <label id=\"nogutter_lable\" >{#codehighlighting.codehighlighting_nogutter}</label>\r\n         <input id=\"collapse\" type=\"checkbox\"  />\r\n         <label id=\"collapse_label\" >{#codehighlighting.codehighlighting_collapse}</label> <br />\r\n         <input id=\"nocontrols\" type=\"checkbox\"  />\r\n         <label id=\"nocontrols_label\" >{#codehighlighting.codehighlighting_nocontrols}</label>\r\n         <input id=\"showcolumns\" type=\"checkbox\"  />\r\n         <label id=\"showcolumns_label\" >{#codehighlighting.codehighlighting_showcolumns}</label>\r\n        </div>\r\n        <div class=\"Actions\">\r\n        <input id=\"cancel\" type=\"button\" value=\"{#cancel}\" language=\"javascript\" onclick=\"return Cancel_Button_onclick()\" />\r\n        <input id=\"insert\" type=\"button\" value=\"{#insert}\" language=\"javascript\" onclick=\"return Save_Button_onclick()\" /></div>\r\n        </div>\r\n</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/css/codehighlighting.css",
    "content": "body\r\n{\r\n    width:530px;\r\n    height: 500px;\r\n    direction:ltr;\r\n    text-align:left;\r\n}\r\n.Container\r\n{\r\n    padding-left:5px;\r\n    padding-top:5px;\r\n}\r\n.CodeArea\r\n{\r\n    width:500px;\r\n    height:400px;\r\n    direction:ltr;\r\n    text-align:left;\r\n}\r\n\r\n.Actions\r\n{\r\n    padding-top:5px;\r\n    padding-right:24px;\r\n    float:right;\r\n}\r\n\r\n.Options\r\n{\r\n    float:left;\r\n    text-align:left;\r\n}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/editor_plugin.js",
    "content": "﻿(function(){tinymce.PluginManager.requireLangPack('codehighlighting');tinymce.create('tinymce.plugins.codehighlighting',{init:function(ed,url){ed.addCommand('mceaddcodehighlight',function(){ed.windowManager.open({file:url+'/codehighlighting.htm',width:530+ed.getLang('codehighlighting.delta_width',0),height:500+ed.getLang('codehighlighting.delta_height',0),inline:1},{plugin_url:url,some_custom_arg:'custom arg'})});ed.addButton('codehighlighting',{title:'codehighlighting.codehighlighting_button_desc',cmd:'mceaddcodehighlight',image:url+'/img/codehighlight.gif'});ed.onNodeChange.add(function(ed,cm,n){cm.setActive('codehighlighting',n.nodeName=='IMG')})},getInfo:function(){return{longname:'codehighlighting',author:'Nawaf M Al Badia',authorurl:'http://weblogs.asp.net/nawaf/',infourl:'http://weblogs.asp.net/nawaf/',version:\"1.0\"}}});tinymce.PluginManager.add('codehighlighting',tinymce.plugins.codehighlighting)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/editor_plugin_src.js",
    "content": "﻿/**\r\n * @author Nawaf M Al Badia\r\n * @version 1.0 April 2008\r\n */\r\n\r\n(function() {\r\n\t// Load plugin specific language pack\r\n\ttinymce.PluginManager.requireLangPack('codehighlighting');\r\n\r\n\ttinymce.create('tinymce.plugins.codehighlighting', {\r\n\t\t/**\r\n\t\t * Initializes the plugin, this will be executed after the plugin has been created.\r\n\t\t * This call is done before the editor instance has finished it's initialization so use the onInit event\r\n\t\t * of the editor instance to intercept that event.\r\n\t\t *\r\n\t\t * @param {tinymce.Editor} ed Editor instance that the plugin is initialized in.\r\n\t\t * @param {string} url Absolute URL to where the plugin is located.\r\n\t\t */\r\n\t\tinit : function(ed, url) {\r\n\t\t\t// Register the command so that it can be invoked by using tinyMCE.activeEditor.execCommand('mceExample');\r\n\t\t\ted.addCommand('mceaddcodehighlight', function() {\r\n\t\t\t\ted.windowManager.open({\r\n\t\t\t\t\tfile : url + '/codehighlighting.htm',\r\n\t\t\t\t\twidth : 530 + ed.getLang('codehighlighting.delta_width', 0),\r\n\t\t\t\t\theight : 500 + ed.getLang('codehighlighting.delta_height', 0),\r\n\t\t\t\t\tinline : 1\r\n\t\t\t\t}, {\r\n\t\t\t\t\tplugin_url : url, // Plugin absolute URL\r\n\t\t\t\t\tsome_custom_arg : 'custom arg' // Custom argument\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\t// Register example button\r\n\t\t\ted.addButton('codehighlighting', {\r\n\t\t\t\ttitle : 'codehighlighting.codehighlighting_button_desc',\r\n\t\t\t\tcmd : 'mceaddcodehighlight',\r\n\t\t\t\timage : url + '/img/codehighlight.gif'\r\n\t\t\t});\r\n\r\n\t\t\t// Add a node change handler, selects the button in the UI when a image is selected\r\n\t\t\ted.onNodeChange.add(function(ed, cm, n) {\r\n\t\t\t\tcm.setActive('codehighlighting', n.nodeName == 'IMG');\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * @return {Object} Name/value array containing information about the plugin.\r\n\t\t */\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'codehighlighting',\r\n\t\t\t\tauthor : 'Nawaf M Al Badia',\r\n\t\t\t\tauthorurl : 'http://weblogs.asp.net/nawaf/',\r\n\t\t\t\tinfourl : 'http://weblogs.asp.net/nawaf/',\r\n\t\t\t\tversion : \"1.0\"\r\n\t\t\t};\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('codehighlighting', tinymce.plugins.codehighlighting);\r\n})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/js/codehighlighting.js",
    "content": "\r\n\t function  Save_Button_onclick() {\r\n\t var lang = document.getElementById(\"ProgrammingLangauges\").value;\r\n\t var code =  WrapCode(lang);\r\n\t code = code + document.getElementById(\"CodeArea\").value;\r\n\t code = code + \"</pre> \"\r\n     if (document.getElementById(\"CodeArea\").value == ''){\r\n\t\ttinyMCEPopup.close();\r\n\t\treturn false;\r\n\t}\r\n\ttinyMCEPopup.execCommand('mceInsertContent', false, code);\r\n\ttinyMCEPopup.close();\r\n    }\r\n    \r\n    function  WrapCode(lang)\r\n    {\r\n       var options = \"\";\r\n       if (document.getElementById(\"nogutter\").checked == true)\r\n       options = \":nogutter\";\r\n       \r\n       if (document.getElementById(\"collapse\").checked == true)\r\n       options = options + \":collapse\";\r\n              \r\n       if (document.getElementById(\"nocontrols\").checked == true)\r\n       options = options + \":nocontrols\";\r\n              \r\n       if (document.getElementById(\"showcolumns\").checked == true)\r\n       options = options + \":showcolumns\";\r\n       \n       return \"<pre name='code' class='brush:\"+lang+options+\"'>\";\r\n    }\r\n\r\n    function Cancel_Button_onclick()\r\n    {\r\n    \t    tinyMCEPopup.close();\r\n    \t    return false;\r\n    }"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/ar.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('ar.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/az.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('az.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/be.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('be.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/cs.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('cs.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/da.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('da.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/de.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('de.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/el.js",
    "content": "// Greek lang variables\r\ntinyMCE.addI18n('el.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/en.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('en.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/en_dlg.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('en.codehighlighting_dlg',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/es.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('es.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/fr.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('fr.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/he.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('he.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/hr.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('hr.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/hu.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('hu.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/it.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('it.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/ka.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('ka.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/ko.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('ko.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/nl.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('nl.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/pl.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('pl.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/pt.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('pt.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/ro.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('ro.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/ru.js",
    "content": "tinyMCE.addI18n('ru.codehighlighting',{\r\ncodehighlighting_desc : \"Подсветка кода\",\r\ncodehighlighting_title : \"Подсветка кода\",\r\ncodehighlighting_langaugepicker : \"Выберите язык\",\r\ncodehighlighting_pagecode : \"Вставьте код здесь\",\r\ncodehighlighting_button_desc: \"Вставить код\",\r\ncodehighlighting_nogutter : \"Убрать канал\",\r\ncodehighlighting_collapse : \"Свернуть\",\r\ncodehighlighting_nocontrols : \"Убрать управление\",\r\ncodehighlighting_showcolumns : \"Показать колонки\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/sr.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('sr.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/sv.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('sv.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/tr.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('tr.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/uk.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('uk.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/zh.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('zh.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/codehighlighting/langs/zh_TW.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('zh_TW.codehighlighting',{\r\ncodehighlighting_desc : \"Code Highlighting\",\r\ncodehighlighting_title : \"Code Highlighting\",\r\ncodehighlighting_langaugepicker : \"Choose the language\",\r\ncodehighlighting_pagecode : \"Paste your code here\",\r\ncodehighlighting_button_desc: \"Insert code\",\r\ncodehighlighting_nogutter : \"No Gutter\",\r\ncodehighlighting_collapse : \"Collapse\",\r\ncodehighlighting_nocontrols : \"No Controls\",\r\ncodehighlighting_showcolumns : \"Show Columns\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/contextmenu/editor_plugin.js",
    "content": "(function(){var a=tinymce.dom.Event,c=tinymce.each,b=tinymce.DOM;tinymce.create(\"tinymce.plugins.ContextMenu\",{init:function(e){var h=this,f,d,i;h.editor=e;d=e.settings.contextmenu_never_use_native;h.onContextMenu=new tinymce.util.Dispatcher(this);f=e.onContextMenu.add(function(j,k){if((i!==0?i:k.ctrlKey)&&!d){return}a.cancel(k);if(k.target.nodeName==\"IMG\"){j.selection.select(k.target)}h._getMenu(j).showMenu(k.clientX||k.pageX,k.clientY||k.pageY);a.add(j.getDoc(),\"click\",function(l){g(j,l)});j.nodeChanged()});e.onRemove.add(function(){if(h._menu){h._menu.removeAll()}});function g(j,k){i=0;if(k&&k.button==2){i=k.ctrlKey;return}if(h._menu){h._menu.removeAll();h._menu.destroy();a.remove(j.getDoc(),\"click\",g)}}e.onMouseDown.add(g);e.onKeyDown.add(g);e.onKeyDown.add(function(j,k){if(k.shiftKey&&!k.ctrlKey&&!k.altKey&&k.keyCode===121){a.cancel(k);f(j,k)}})},getInfo:function(){return{longname:\"Contextmenu\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/contextmenu\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}},_getMenu:function(e){var g=this,d=g._menu,j=e.selection,f=j.isCollapsed(),h=j.getNode()||e.getBody(),i,k;if(d){d.removeAll();d.destroy()}k=b.getPos(e.getContentAreaContainer());d=e.controlManager.createDropMenu(\"contextmenu\",{offset_x:k.x+e.getParam(\"contextmenu_offset_x\",0),offset_y:k.y+e.getParam(\"contextmenu_offset_y\",0),constrain:1,keyboard_focus:true});g._menu=d;d.add({title:\"advanced.cut_desc\",icon:\"cut\",cmd:\"Cut\"}).setDisabled(f);d.add({title:\"advanced.copy_desc\",icon:\"copy\",cmd:\"Copy\"}).setDisabled(f);d.add({title:\"advanced.paste_desc\",icon:\"paste\",cmd:\"Paste\"});if((h.nodeName==\"A\"&&!e.dom.getAttrib(h,\"name\"))||!f){d.addSeparator();d.add({title:\"advanced.link_desc\",icon:\"link\",cmd:e.plugins.advlink?\"mceAdvLink\":\"mceLink\",ui:true});d.add({title:\"advanced.unlink_desc\",icon:\"unlink\",cmd:\"UnLink\"})}d.addSeparator();d.add({title:\"advanced.image_desc\",icon:\"image\",cmd:e.plugins.advimage?\"mceAdvImage\":\"mceImage\",ui:true});d.addSeparator();i=d.addMenu({title:\"contextmenu.align\"});i.add({title:\"contextmenu.left\",icon:\"justifyleft\",cmd:\"JustifyLeft\"});i.add({title:\"contextmenu.center\",icon:\"justifycenter\",cmd:\"JustifyCenter\"});i.add({title:\"contextmenu.right\",icon:\"justifyright\",cmd:\"JustifyRight\"});i.add({title:\"contextmenu.full\",icon:\"justifyfull\",cmd:\"JustifyFull\"});g.onContextMenu.dispatch(g,d,h,f);return d}});tinymce.PluginManager.add(\"contextmenu\",tinymce.plugins.ContextMenu)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/contextmenu/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\tvar Event = tinymce.dom.Event, each = tinymce.each, DOM = tinymce.DOM;\r\n\r\n\t/**\r\n\t * This plugin a context menu to TinyMCE editor instances.\r\n\t *\r\n\t * @class tinymce.plugins.ContextMenu\r\n\t */\r\n\ttinymce.create('tinymce.plugins.ContextMenu', {\r\n\t\t/**\r\n\t\t * Initializes the plugin, this will be executed after the plugin has been created.\r\n\t\t * This call is done before the editor instance has finished it's initialization so use the onInit event\r\n\t\t * of the editor instance to intercept that event.\r\n\t\t *\r\n\t\t * @method init\r\n\t\t * @param {tinymce.Editor} ed Editor instance that the plugin is initialized in.\r\n\t\t * @param {string} url Absolute URL to where the plugin is located.\r\n\t\t */\r\n\t\tinit : function(ed) {\r\n\t\t\tvar t = this, showMenu, contextmenuNeverUseNative, realCtrlKey;\r\n\r\n\t\t\tt.editor = ed;\r\n\r\n\t\t\tcontextmenuNeverUseNative = ed.settings.contextmenu_never_use_native;\r\n\r\n\t\t\t/**\r\n\t\t\t * This event gets fired when the context menu is shown.\r\n\t\t\t *\r\n\t\t\t * @event onContextMenu\r\n\t\t\t * @param {tinymce.plugins.ContextMenu} sender Plugin instance sending the event.\r\n\t\t\t * @param {tinymce.ui.DropMenu} menu Drop down menu to fill with more items if needed.\r\n\t\t\t */\r\n\t\t\tt.onContextMenu = new tinymce.util.Dispatcher(this);\r\n\r\n\t\t\tshowMenu = ed.onContextMenu.add(function(ed, e) {\r\n\t\t\t\t// Block TinyMCE menu on ctrlKey and work around Safari issue\r\n\t\t\t\tif ((realCtrlKey !== 0 ? realCtrlKey : e.ctrlKey) && !contextmenuNeverUseNative)\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\tEvent.cancel(e);\r\n\r\n\t\t\t\t// Select the image if it's clicked. WebKit would other wise expand the selection\r\n\t\t\t\tif (e.target.nodeName == 'IMG')\r\n\t\t\t\t\ted.selection.select(e.target);\r\n\r\n\t\t\t\tt._getMenu(ed).showMenu(e.clientX || e.pageX, e.clientY || e.pageY);\r\n\t\t\t\tEvent.add(ed.getDoc(), 'click', function(e) {\r\n\t\t\t\t\thide(ed, e);\r\n\t\t\t\t});\r\n\r\n\t\t\t\ted.nodeChanged();\r\n\t\t\t});\r\n\r\n\t\t\ted.onRemove.add(function() {\r\n\t\t\t\tif (t._menu)\r\n\t\t\t\t\tt._menu.removeAll();\r\n\t\t\t});\r\n\r\n\t\t\tfunction hide(ed, e) {\r\n\t\t\t\trealCtrlKey = 0;\r\n\r\n\t\t\t\t// Since the contextmenu event moves\r\n\t\t\t\t// the selection we need to store it away\r\n\t\t\t\tif (e && e.button == 2) {\r\n\t\t\t\t\trealCtrlKey = e.ctrlKey;\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (t._menu) {\r\n\t\t\t\t\tt._menu.removeAll();\r\n\t\t\t\t\tt._menu.destroy();\r\n\t\t\t\t\tEvent.remove(ed.getDoc(), 'click', hide);\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\t\t\ted.onMouseDown.add(hide);\r\n\t\t\ted.onKeyDown.add(hide);\r\n\t\t\ted.onKeyDown.add(function(ed, e) {\r\n\t\t\t\tif (e.shiftKey && !e.ctrlKey && !e.altKey && e.keyCode === 121) {\r\n\t\t\t\t\tEvent.cancel(e);\r\n\t\t\t\t\tshowMenu(ed, e);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * Returns information about the plugin as a name/value array.\r\n\t\t * The current keys are longname, author, authorurl, infourl and version.\r\n\t\t *\r\n\t\t * @method getInfo\r\n\t\t * @return {Object} Name/value array containing information about the plugin.\r\n\t\t */\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Contextmenu',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/contextmenu',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t},\r\n\r\n\t\t_getMenu : function(ed) {\r\n\t\t\tvar t = this, m = t._menu, se = ed.selection, col = se.isCollapsed(), el = se.getNode() || ed.getBody(), am, p;\r\n\r\n\t\t\tif (m) {\r\n\t\t\t\tm.removeAll();\r\n\t\t\t\tm.destroy();\r\n\t\t\t}\r\n\r\n\t\t\tp = DOM.getPos(ed.getContentAreaContainer());\r\n\r\n\t\t\tm = ed.controlManager.createDropMenu('contextmenu', {\r\n\t\t\t\toffset_x : p.x + ed.getParam('contextmenu_offset_x', 0),\r\n\t\t\t\toffset_y : p.y + ed.getParam('contextmenu_offset_y', 0),\r\n\t\t\t\tconstrain : 1,\r\n\t\t\t\tkeyboard_focus: true\r\n\t\t\t});\r\n\r\n\t\t\tt._menu = m;\r\n\r\n\t\t\tm.add({title : 'advanced.cut_desc', icon : 'cut', cmd : 'Cut'}).setDisabled(col);\r\n\t\t\tm.add({title : 'advanced.copy_desc', icon : 'copy', cmd : 'Copy'}).setDisabled(col);\r\n\t\t\tm.add({title : 'advanced.paste_desc', icon : 'paste', cmd : 'Paste'});\r\n\r\n\t\t\tif ((el.nodeName == 'A' && !ed.dom.getAttrib(el, 'name')) || !col) {\r\n\t\t\t\tm.addSeparator();\r\n\t\t\t\tm.add({title : 'advanced.link_desc', icon : 'link', cmd : ed.plugins.advlink ? 'mceAdvLink' : 'mceLink', ui : true});\r\n\t\t\t\tm.add({title : 'advanced.unlink_desc', icon : 'unlink', cmd : 'UnLink'});\r\n\t\t\t}\r\n\r\n\t\t\tm.addSeparator();\r\n\t\t\tm.add({title : 'advanced.image_desc', icon : 'image', cmd : ed.plugins.advimage ? 'mceAdvImage' : 'mceImage', ui : true});\r\n\r\n\t\t\tm.addSeparator();\r\n\t\t\tam = m.addMenu({title : 'contextmenu.align'});\r\n\t\t\tam.add({title : 'contextmenu.left', icon : 'justifyleft', cmd : 'JustifyLeft'});\r\n\t\t\tam.add({title : 'contextmenu.center', icon : 'justifycenter', cmd : 'JustifyCenter'});\r\n\t\t\tam.add({title : 'contextmenu.right', icon : 'justifyright', cmd : 'JustifyRight'});\r\n\t\t\tam.add({title : 'contextmenu.full', icon : 'justifyfull', cmd : 'JustifyFull'});\r\n\r\n\t\t\tt.onContextMenu.dispatch(t, m, el, col);\r\n\r\n\t\t\treturn m;\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('contextmenu', tinymce.plugins.ContextMenu);\r\n})();\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/directionality/editor_plugin.js",
    "content": "(function(){tinymce.create(\"tinymce.plugins.Directionality\",{init:function(a,b){var c=this;c.editor=a;a.addCommand(\"mceDirectionLTR\",function(){var d=a.dom.getParent(a.selection.getNode(),a.dom.isBlock);if(d){if(a.dom.getAttrib(d,\"dir\")!=\"ltr\"){a.dom.setAttrib(d,\"dir\",\"ltr\")}else{a.dom.setAttrib(d,\"dir\",\"\")}}a.nodeChanged()});a.addCommand(\"mceDirectionRTL\",function(){var d=a.dom.getParent(a.selection.getNode(),a.dom.isBlock);if(d){if(a.dom.getAttrib(d,\"dir\")!=\"rtl\"){a.dom.setAttrib(d,\"dir\",\"rtl\")}else{a.dom.setAttrib(d,\"dir\",\"\")}}a.nodeChanged()});a.addButton(\"ltr\",{title:\"directionality.ltr_desc\",cmd:\"mceDirectionLTR\"});a.addButton(\"rtl\",{title:\"directionality.rtl_desc\",cmd:\"mceDirectionRTL\"});a.onNodeChange.add(c._nodeChange,c)},getInfo:function(){return{longname:\"Directionality\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/directionality\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}},_nodeChange:function(b,a,e){var d=b.dom,c;e=d.getParent(e,d.isBlock);if(!e){a.setDisabled(\"ltr\",1);a.setDisabled(\"rtl\",1);return}c=d.getAttrib(e,\"dir\");a.setActive(\"ltr\",c==\"ltr\");a.setDisabled(\"ltr\",0);a.setActive(\"rtl\",c==\"rtl\");a.setDisabled(\"rtl\",0)}});tinymce.PluginManager.add(\"directionality\",tinymce.plugins.Directionality)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/directionality/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\ttinymce.create('tinymce.plugins.Directionality', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tt.editor = ed;\r\n\r\n\t\t\ted.addCommand('mceDirectionLTR', function() {\r\n\t\t\t\tvar e = ed.dom.getParent(ed.selection.getNode(), ed.dom.isBlock);\r\n\r\n\t\t\t\tif (e) {\r\n\t\t\t\t\tif (ed.dom.getAttrib(e, \"dir\") != \"ltr\")\r\n\t\t\t\t\t\ted.dom.setAttrib(e, \"dir\", \"ltr\");\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\ted.dom.setAttrib(e, \"dir\", \"\");\r\n\t\t\t\t}\r\n\r\n\t\t\t\ted.nodeChanged();\r\n\t\t\t});\r\n\r\n\t\t\ted.addCommand('mceDirectionRTL', function() {\r\n\t\t\t\tvar e = ed.dom.getParent(ed.selection.getNode(), ed.dom.isBlock);\r\n\r\n\t\t\t\tif (e) {\r\n\t\t\t\t\tif (ed.dom.getAttrib(e, \"dir\") != \"rtl\")\r\n\t\t\t\t\t\ted.dom.setAttrib(e, \"dir\", \"rtl\");\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\ted.dom.setAttrib(e, \"dir\", \"\");\r\n\t\t\t\t}\r\n\r\n\t\t\t\ted.nodeChanged();\r\n\t\t\t});\r\n\r\n\t\t\ted.addButton('ltr', {title : 'directionality.ltr_desc', cmd : 'mceDirectionLTR'});\r\n\t\t\ted.addButton('rtl', {title : 'directionality.rtl_desc', cmd : 'mceDirectionRTL'});\r\n\r\n\t\t\ted.onNodeChange.add(t._nodeChange, t);\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Directionality',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/directionality',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t},\r\n\r\n\t\t// Private methods\r\n\r\n\t\t_nodeChange : function(ed, cm, n) {\r\n\t\t\tvar dom = ed.dom, dir;\r\n\r\n\t\t\tn = dom.getParent(n, dom.isBlock);\r\n\t\t\tif (!n) {\r\n\t\t\t\tcm.setDisabled('ltr', 1);\r\n\t\t\t\tcm.setDisabled('rtl', 1);\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tdir = dom.getAttrib(n, 'dir');\r\n\t\t\tcm.setActive('ltr', dir == \"ltr\");\r\n\t\t\tcm.setDisabled('ltr', 0);\r\n\t\t\tcm.setActive('rtl', dir == \"rtl\");\r\n\t\t\tcm.setDisabled('rtl', 0);\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('directionality', tinymce.plugins.Directionality);\r\n})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/editor_plugin.js",
    "content": "(function(a){a.create(\"tinymce.plugins.EmotionsPlugin\",{init:function(b,c){b.addCommand(\"mceEmotion\",function(){b.windowManager.open({file:c+\"/emotions.htm\",width:250+parseInt(b.getLang(\"emotions.delta_width\",0)),height:160+parseInt(b.getLang(\"emotions.delta_height\",0)),inline:1},{plugin_url:c})});b.addButton(\"emotions\",{title:\"emotions.emotions_desc\",cmd:\"mceEmotion\"})},getInfo:function(){return{longname:\"Emotions\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/emotions\",version:a.majorVersion+\".\"+a.minorVersion}}});a.PluginManager.add(\"emotions\",a.plugins.EmotionsPlugin)})(tinymce);"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function(tinymce) {\r\n\ttinymce.create('tinymce.plugins.EmotionsPlugin', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\t// Register commands\r\n\t\t\ted.addCommand('mceEmotion', function() {\r\n\t\t\t\ted.windowManager.open({\r\n\t\t\t\t\tfile : url + '/emotions.htm',\r\n\t\t\t\t\twidth : 250 + parseInt(ed.getLang('emotions.delta_width', 0)),\r\n\t\t\t\t\theight : 160 + parseInt(ed.getLang('emotions.delta_height', 0)),\r\n\t\t\t\t\tinline : 1\r\n\t\t\t\t}, {\r\n\t\t\t\t\tplugin_url : url\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\t// Register buttons\r\n\t\t\ted.addButton('emotions', {title : 'emotions.emotions_desc', cmd : 'mceEmotion'});\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Emotions',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/emotions',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('emotions', tinymce.plugins.EmotionsPlugin);\r\n})(tinymce);"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/emotions.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#emotions_dlg.title}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/emotions.js\"></script>\r\n</head>\r\n<body style=\"display: none\" role=\"application\" aria-labelledby=\"app_title\">\r\n<span style=\"display:none;\" id=\"app_title\">{#emotions_dlg.title}</span>\r\n<div align=\"center\">\r\n\t<div class=\"title\">{#emotions_dlg.title}:<br /><br /></div>\r\n\r\n\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"4\">\r\n\t\t<tr>\r\n\t\t\t<td><a href=\"javascript:EmotionsDialog.insert('smiley-cool.gif','emotions_dlg.cool');\"><img src=\"img/smiley-cool.gif\" width=\"18\" height=\"18\" border=\"0\" alt=\"{#emotions_dlg.cool}\" title=\"{#emotions_dlg.cool}\" /></a></td>\r\n\t\t\t<td><a href=\"javascript:EmotionsDialog.insert('smiley-cry.gif','emotions_dlg.cry');\"><img src=\"img/smiley-cry.gif\" width=\"18\" height=\"18\" border=\"0\" alt=\"{#emotions_dlg.cry}\" title=\"{#emotions_dlg.cry}\" /></a></td>\r\n\t\t\t<td><a href=\"javascript:EmotionsDialog.insert('smiley-embarassed.gif','emotions_dlg.embarassed');\"><img src=\"img/smiley-embarassed.gif\" width=\"18\" height=\"18\" border=\"0\" alt=\"{#emotions_dlg.embarassed}\" title=\"{#emotions_dlg.embarassed}\" /></a></td>\r\n\t\t\t<td><a href=\"javascript:EmotionsDialog.insert('smiley-foot-in-mouth.gif','emotions_dlg.foot_in_mouth');\"><img src=\"img/smiley-foot-in-mouth.gif\" width=\"18\" height=\"18\" border=\"0\" alt=\"{#emotions_dlg.foot_in_mouth}\" title=\"{#emotions_dlg.foot_in_mouth}\" /></a></td>\r\n\t\t</tr>\r\n\t\t<tr>\r\n\t\t\t<td><a href=\"javascript:EmotionsDialog.insert('smiley-frown.gif','emotions_dlg.frown');\"><img src=\"img/smiley-frown.gif\" width=\"18\" height=\"18\" border=\"0\" alt=\"{#emotions_dlg.frown}\" title=\"{#emotions_dlg.frown}\" /></a></td>\r\n\t\t\t<td><a href=\"javascript:EmotionsDialog.insert('smiley-innocent.gif','emotions_dlg.innocent');\"><img src=\"img/smiley-innocent.gif\" width=\"18\" height=\"18\" border=\"0\" alt=\"{#emotions_dlg.innocent}\" title=\"{#emotions_dlg.innocent}\" /></a></td>\r\n\t\t\t<td><a href=\"javascript:EmotionsDialog.insert('smiley-kiss.gif','emotions_dlg.kiss');\"><img src=\"img/smiley-kiss.gif\" width=\"18\" height=\"18\" border=\"0\" alt=\"{#emotions_dlg.kiss}\" title=\"{#emotions_dlg.kiss}\" /></a></td>\r\n\t\t\t<td><a href=\"javascript:EmotionsDialog.insert('smiley-laughing.gif','emotions_dlg.laughing');\"><img src=\"img/smiley-laughing.gif\" width=\"18\" height=\"18\" border=\"0\" alt=\"{#emotions_dlg.laughing}\" title=\"{#emotions_dlg.laughing}\" /></a></td>\r\n\t\t</tr>\r\n\t\t<tr>\r\n\t\t\t<td><a href=\"javascript:EmotionsDialog.insert('smiley-money-mouth.gif','emotions_dlg.money_mouth');\"><img src=\"img/smiley-money-mouth.gif\" width=\"18\" height=\"18\" border=\"0\" alt=\"{#emotions_dlg.money_mouth}\" title=\"{#emotions_dlg.money_mouth}\" /></a></td>\r\n\t\t\t<td><a href=\"javascript:EmotionsDialog.insert('smiley-sealed.gif','emotions_dlg.sealed');\"><img src=\"img/smiley-sealed.gif\" width=\"18\" height=\"18\" border=\"0\" alt=\"{#emotions_dlg.sealed}\" title=\"{#emotions_dlg.sealed}\" /></a></td>\r\n\t\t\t<td><a href=\"javascript:EmotionsDialog.insert('smiley-smile.gif','emotions_dlg.smile');\"><img src=\"img/smiley-smile.gif\" width=\"18\" height=\"18\" border=\"0\" alt=\"{#emotions_dlg.smile}\" title=\"{#emotions_dlg.smile}\" /></a></td>\r\n\t\t\t<td><a href=\"javascript:EmotionsDialog.insert('smiley-surprised.gif','emotions_dlg.surprised');\"><img src=\"img/smiley-surprised.gif\" width=\"18\" height=\"18\" border=\"0\" alt=\"{#emotions_dlg.surprised}\" title=\"{#emotions_dlg.surprised}\" /></a></td>\r\n\t\t</tr>\r\n\t\t<tr>\r\n\t\t\t<td><a href=\"javascript:EmotionsDialog.insert('smiley-tongue-out.gif','emotions_dlg.tongue_out');\"><img src=\"img/smiley-tongue-out.gif\" width=\"18\" height=\"18\" border=\"0\" alt=\"{#emotions_dlg.tongue-out}\" title=\"{#emotions_dlg.tongue_out}\" /></a></td>\r\n\t\t\t<td><a href=\"javascript:EmotionsDialog.insert('smiley-undecided.gif','emotions_dlg.undecided');\"><img src=\"img/smiley-undecided.gif\" width=\"18\" height=\"18\" border=\"0\" alt=\"{#emotions_dlg.undecided}\" title=\"{#emotions_dlg.undecided}\" /></a></td>\r\n\t\t\t<td><a href=\"javascript:EmotionsDialog.insert('smiley-wink.gif','emotions_dlg.wink');\"><img src=\"img/smiley-wink.gif\" width=\"18\" height=\"18\" border=\"0\" alt=\"{#emotions_dlg.wink}\" title=\"{#emotions_dlg.wink}\" /></a></td>\r\n\t\t\t<td><a href=\"javascript:EmotionsDialog.insert('smiley-yell.gif','emotions_dlg.yell');\"><img src=\"img/smiley-yell.gif\" width=\"18\" height=\"18\" border=\"0\" alt=\"{#emotions_dlg.yell}\" title=\"{#emotions_dlg.yell}\" /></a></td>\r\n\t\t</tr>\r\n\t</table>\r\n</div>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/js/emotions.js",
    "content": "tinyMCEPopup.requireLangPack();\r\n\r\nvar EmotionsDialog = {\r\n\tinit : function(ed) {\r\n\t\ttinyMCEPopup.resizeToInnerSize();\r\n\t},\r\n\r\n\tinsert : function(file, title) {\r\n\t\tvar ed = tinyMCEPopup.editor, dom = ed.dom;\r\n\r\n\t\ttinyMCEPopup.execCommand('mceInsertContent', false, dom.createHTML('img', {\r\n\t\t\tsrc : tinyMCEPopup.getWindowArg('plugin_url') + '/img/' + file,\r\n\t\t\talt : ed.getLang(title),\r\n\t\t\ttitle : ed.getLang(title),\r\n\t\t\tborder : 0\r\n\t\t}));\r\n\r\n\t\ttinyMCEPopup.close();\r\n\t}\r\n};\r\n\r\ntinyMCEPopup.onInit.add(EmotionsDialog.init, EmotionsDialog);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/ar_dlg.js",
    "content": "tinyMCE.addI18n('ar.emotions_dlg',{cry:\"\\u0628\\u0643\\u0627\\u0621\",cool:\"\\u062c\\u064a\\u062f\",desc:\"\\u0627\\u0644\\u0648\\u0633\\u0648\\u0645\",title:\"\\u0627\\u0636\\u0627\\u0641\\u0647 \\u0648\\u0633\\u0645 \\u062a\\u0639\\u0631\\u0628\\u064a\\u0631\\u0649\",yell:\"\\u064a\\u0635\\u064a\\u062d\",wink:\"\\u063a\\u0645\\u0632\\u0629\",undecided:\"\\u0628\\u0639\\u062f\",tongue_out:\"\\u0627\\u0644\\u0644\\u0633\\u0627\\u0646 \\u062e\\u0627\\u0631\\u062c\",surprised:\"\\u0645\\u0646\\u062f\\u0647\\u0634\\u0629\",smile:\"\\u0627\\u0628\\u062a\\u0633\\u0627\\u0645\\u0629\",sealed:\"\\u0627\\u0644\\u0645\\u062e\\u062a\\u0648\\u0645\\u0629\",money_mouth:\"\\u0645\\u062d\\u0628 \\u0627\\u0644\\u0645\\u0627\\u0644\",laughing:\"\\u0627\\u0644\\u0636\\u062d\\u0643\",kiss:\"\\u0642\\u0628\\u0644\\u0647\",innocent:\"\\u0627\\u0644\\u0628\\u0631\\u0627\\u0621\\u0647\",frown:\"\\u0627\\u0644\\u062a\\u062c\\u0647\\u0645\",foot_in_mouth:\"\\u062d\\u0632\\u0627\\u0621 \\u0641\\u0649 \\u0627\\u0644\\u0641\\u0645 (\\u0627\\u062e\\u0631\\u0635)\",embarassed:\"\\u0627\\u062d\\u0631\\u0627\\u062c\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/az_dlg.js",
    "content": "tinyMCE.addI18n('az.emotions_dlg',{cry:\"A\\u011flay\\u0131r\",cool:\"Bomba\",desc:\"Smayllar\",title:\"Smayl \\u0259lav\\u0259 et\",yell:\"Ba\\u011f\\u0131r\\u0131r\",wink:\"G\\u00f6z vurur\",undecided:\"Q\\u0259rars\\u0131zl\\u0131qda\",\"tongue_out\":\"Dil g\\u00f6st\\u0259rir\",surprised:\"T\\u0259\\u0259c\\u00fcbl\\u0259nib\",smile:\"G\\u00fcl\\u00fcms\\u0259yir\",sealed:\"M\\u00f6h\\u00fcrl\\u0259nib\",\"money_mouth\":\"\\u00c7oxlu pul\",laughing:\"G\\u00fcl\\u00fcr\",kiss:\"\\u00d6p\\u00fc\\u015f\",innocent:\"G\\u00fcnahs\\u0131z\",frown:\"Qa\\u015fqabaql\\u0131\",\"foot_in_mouth\":\"Ayaqlar_m\\u0259nim_a\\u011fz\\u0131ma!\",embarassed:\"Mat qalm\\u0131\\u015f\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/be_dlg.js",
    "content": "tinyMCE.addI18n('be.emotions_dlg',{cry:\"\\u041f\\u043b\\u0430\\u0447\\u0430\",cool:\"\\u041a\\u043b\\u0451\\u0432\\u044b\",desc:\"\\u0421\\u043c\\u0430\\u0439\\u043b\\u0456\\u043a\\u0456\",title:\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u0441\\u043c\\u0430\\u0439\\u043b\\u0456\\u043a\",yell:\"\\u041b\\u044f\\u043c\\u0430\\u043d\\u0442\\u0443\\u0435\",wink:\"\\u041f\\u0430\\u0434\\u043c\\u0456\\u0440\\u0433\\u0432\\u0430\\u0435\",undecided:\"\\u0423 \\u043d\\u0435\\u0440\\u0430\\u0448\\u0443\\u0447\\u0430\\u0441\\u0446\\u0456\",\"tongue_out\":\"\\u041f\\u0430\\u043a\\u0430\\u0437\\u0432\\u0430\\u0435 \\u044f\\u0437\\u044b\\u043a\",surprised:\"\\u0417\\u0434\\u0437\\u0456\\u045e\\u043b\\u0435\\u043d\\u044b\",smile:\"\\u0423\\u0441\\u043c\\u0456\\u0445\\u0430\\u0435\\u0446\\u0446\\u0430\",sealed:\"\\u041c\\u0430\\u045e\\u0447\\u044b\\u0446\\u044c\",\"money_mouth\":\"\\u0428\\u043c\\u0430\\u0442 \\u0433\\u0440\\u043e\\u0448\\u0430\\u0439\",laughing:\"\\u0421\\u043c\\u044f\\u0435\\u0446\\u0446\\u0430\",kiss:\"\\u041f\\u0430\\u0446\\u0430\\u043b\\u0443\\u043d\\u0430\\u043a\",innocent:\"\\u041d\\u044f\\u0432\\u0456\\u043d\\u043d\\u0430\\u0441\\u0446\\u044c\",frown:\"\\u0425\\u043c\\u0443\\u0440\\u043d\\u044b\",\"foot_in_mouth\":\"\\u0423 \\u0440\\u043e\\u0442 \\u043c\\u043d\\u0435 \\u043d\\u043e\\u0433\\u0456!\",embarassed:\"\\u0427\\u044b\\u0440\\u0432\\u0430\\u043d\\u0435\\u0435\",usage:\"\\u0412\\u044b\\u043a\\u0430\\u0440\\u044b\\u0441\\u0442\\u043e\\u045e\\u0432\\u0430\\u0439\\u0446\\u0435 \\u043a\\u043b\\u0430\\u0432\\u0456\\u0448\\u044b \\\"\\u041d\\u0430\\u043b\\u0435\\u0432\\u0430\\\" \\u0456 \\\"\\u041d\\u0430\\u043f\\u0440\\u0430\\u0432\\u0430\\\" \\u0434\\u043b\\u044f \\u043d\\u0430\\u0432\\u0456\\u0433\\u0430\\u0446\\u044b\\u0456.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/cs_dlg.js",
    "content": "tinyMCE.addI18n('cs.emotions_dlg',{cry:\"Pla\\u010d\\u00edc\\u00ed\",cool:\"\\u00da\\u017easn\\u00fd\",desc:\"Emotikony\",title:\"Vlo\\u017eit emotikonu\",yell:\"K\\u0159i\\u010d\\u00edc\\u00ed\",wink:\"Mrkaj\\u00edc\\u00ed\",undecided:\"Nerozhodn\\u00fd\",tongue_out:\"S vyplazen\\u00fdm jazykem\",surprised:\"P\\u0159ekvapen\\u00fd\",smile:\"Usm\\u00edvaj\\u00edc\\u00ed se\",sealed:\"Ml\\u010d\\u00edc\\u00ed\",money_mouth:\"Je na prachy\",laughing:\"Sm\\u011bj\\u00edc\\u00ed se\",kiss:\"L\\u00edbaj\\u00edc\\u00ed\",innocent:\"Nevinn\\u00fd\",frown:\"Zamra\\u010den\\u00fd\",foot_in_mouth:\"\\u0160l\\u00e1pnul vedle\",embarassed:\"Rozpa\\u010dit\\u00fd\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/da_dlg.js",
    "content": "tinyMCE.addI18n('da.emotions_dlg',{cry:\"Gr\\u00e6de\",cool:\"Cool\",desc:\"Hum\\u00f8rikoner\",title:\"Inds\\u00e6t hum\\u00f8rikon\",yell:\"R\\u00e5be\",wink:\"Vink\",undecided:\"Ubeslutsom\",\"tongue_out\":\"Tunge ud\",surprised:\"Overrasket\",smile:\"Smil\",sealed:\"Lukket\",\"money_mouth\":\"Pengemund\",laughing:\"Grine\",kiss:\"Kys\",innocent:\"Uskyldig\",frown:\"Forskr\\u00e6kket\",\"foot_in_mouth\":\"Fod i munden\",embarassed:\"Flov\",usage:\"Brug venstre og h\\u00f8jre piletaster til at navigere\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/de_dlg.js",
    "content": "tinyMCE.addI18n('de.emotions_dlg',{cry:\"Weinend\",cool:\"Cool\",desc:\"Smilies\",title:\"Smiley einf\\u00fcgen\",yell:\"Br\\u00fcllend\",wink:\"Zwinkernd\",undecided:\"Unentschlossen\",tongue_out:\"Zunge raus\",surprised:\"\\u00dcberrascht\",smile:\"L\\u00e4chelnd\",sealed:\"Verschlossen\",money_mouth:\"Geld\",laughing:\"Lachend\",kiss:\"K\\u00fcssend\",innocent:\"Unschuldig\",frown:\"Stirnrunzelnd\",foot_in_mouth:\"Reingefallen\",embarassed:\"Verlegen\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/el_dlg.js",
    "content": "tinyMCE.addI18n('el.emotions_dlg',{cry:\"\\u0394\\u03b1\\u03ba\\u03c1\\u03c5\\u03c3\\u03bc\\u03ad\\u03bd\\u03bf\\u03c2\",cool:\"\\u0386\\u03bd\\u03b5\\u03c4\\u03bf\\u03c2\",desc:\"\\u03a3\\u03c5\\u03bd\\u03b1\\u03b9\\u03c3\\u03b8\\u03ae\\u03bc\\u03b1\\u03c4\\u03b1\",title:\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae \\u03c3\\u03c5\\u03bd\\u03b1\\u03b9\\u03c3\\u03b8\\u03ae\\u03bc\\u03b1\\u03c4\\u03bf\\u03c2\",yell:\"\\u03a6\\u03c9\\u03bd\\u03ac\\u03b6\\u03c9\",wink:\"\\u039a\\u03bb\\u03b5\\u03af\\u03c3\\u03b9\\u03bc\\u03bf \\u03bc\\u03b1\\u03c4\\u03b9\\u03bf\\u03cd\",undecided:\"\\u0391\\u03bd\\u03b1\\u03c0\\u03bf\\u03c6\\u03ac\\u03c3\\u03b9\\u03c3\\u03c4\\u03bf\\u03c2\",\"tongue_out\":\"\\u0393\\u03bb\\u03ce\\u03c3\\u03c3\\u03b1 \\u03ad\\u03be\\u03c9\",surprised:\"\\u0388\\u03ba\\u03c0\\u03bb\\u03b7\\u03ba\\u03c4\\u03bf\\u03c2\",smile:\"\\u03a7\\u03b1\\u03bc\\u03cc\\u03b3\\u03b5\\u03bb\\u03bf\",sealed:\"\\u03a3\\u03c6\\u03c1\\u03b1\\u03b3\\u03b9\\u03c3\\u03bc\\u03ad\\u03bd\\u03bf \\u03c3\\u03c4\\u03cc\\u03bc\\u03b1\",\"money_mouth\":\"\\u039b\\u03b5\\u03c6\\u03c4\\u03ac \\u03c9\\u03c2 \\u03c3\\u03c4\\u03cc\\u03bc\\u03b1\",laughing:\"\\u0393\\u03ad\\u03bb\\u03b9\\u03bf\",kiss:\"\\u03a6\\u03b9\\u03bb\\u03af\",innocent:\"\\u0391\\u03b8\\u03ce\\u03bf\\u03c2\",frown:\"\\u039a\\u03b1\\u03c4\\u03c3\\u03bf\\u03c5\\u03c6\\u03b9\\u03b1\\u03c3\\u03bc\\u03ad\\u03bd\\u03bf\\u03c2\",\"foot_in_mouth\":\"\\u039a\\u03bb\\u03c9\\u03c4\\u03c3\\u03b9\\u03ac \\u03c3\\u03c4\\u03bf \\u03c3\\u03c4\\u03cc\\u03bc\\u03b1\",embarassed:\"\\u0391\\u03bc\\u03ae\\u03c7\\u03b1\\u03bd\\u03bf\\u03c2\",usage:\"\\u03a7\\u03c1\\u03b7\\u03c3\\u03b9\\u03bc\\u03bf\\u03c0\\u03bf\\u03b9\\u03ae\\u03c3\\u03c4\\u03b5 \\u03c4\\u03bf \\u03b1\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03cc \\u03ba\\u03b1\\u03b9 \\u03c4\\u03bf \\u03b4\\u03b5\\u03be\\u03af \\u03b2\\u03ad\\u03bb\\u03bf\\u03c2 \\u03b3\\u03b9\\u03b1 \\u03bd\\u03b1 \\u03c0\\u03b5\\u03c1\\u03b9\\u03b7\\u03b3\\u03b7\\u03b8\\u03b5\\u03af\\u03c4\\u03b5.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/en_dlg.js",
    "content": "tinyMCE.addI18n('en.emotions_dlg',{cry:\"Cry\",cool:\"Cool\",desc:\"Emotions\",title:\"Insert Emotion\",yell:\"Yell\",wink:\"Wink\",undecided:\"Undecided\",\"tongue_out\":\"Tongue Out\",surprised:\"Surprised\",smile:\"Smile\",sealed:\"Sealed\",\"money_mouth\":\"Money Mouth\",laughing:\"Laughing\",kiss:\"Kiss\",innocent:\"Innocent\",frown:\"Frown\",\"foot_in_mouth\":\"Foot in Mouth\",embarassed:\"Embarassed\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/es_dlg.js",
    "content": "tinyMCE.addI18n('es.emotions_dlg',{cry:\"Llora\",cool:\"Todo bien\",desc:\"Emoticones\",title:\"Insertar emoticon\",yell:\"Enfadado\",wink:\"Gui\\u00f1o\",undecided:\"Indeciso\",tongue_out:\"Lengua fuera\",surprised:\"Sorprendido\",smile:\"Sonrisa\",sealed:\"Sellado\",money_mouth:\"Dinero boca\",laughing:\"Risa\",kiss:\"Beso\",innocent:\"Inocente\",frown:\"Triste\",foot_in_mouth:\"Pie en la boca\",embarassed:\"Verg\\u00fcenza\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/fr_dlg.js",
    "content": "tinyMCE.addI18n('fr.emotions_dlg',{cry:\"En pleurs\",cool:\"Cool\",desc:\"\\u00c9motic\\u00f4nes\",title:\"Ins\\u00e9rer une \\u00e9motic\\u00f4ne\",yell:\"Criant\",wink:\"Clin d\\'\\u0153il\",undecided:\"Incertain\",tongue_out:\"Langue tir\\u00e9e\",surprised:\"Surpris\",smile:\"Sourire\",sealed:\"Bouche cousue\",money_mouth:\"Avare\",laughing:\"Rigolant\",kiss:\"Bisou\",innocent:\"Innocent\",frown:\"D\\u00e9\\u00e7u\",foot_in_mouth:\"Pied de nez\",embarassed:\"Embarrass\\u00e9\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/he_dlg.js",
    "content": "tinyMCE.addI18n('he.emotions_dlg',{cry:\"\\u05d1\\u05d5\\u05db\\u05d4\",cool:\"\\u05de\\u05d2\\u05e0\\u05d9\\u05d1\",desc:\"\\u05e1\\u05de\\u05d9\\u05d9\\u05dc\\u05d9\\u05dd\",title:\"\\u05d4\\u05d5\\u05e1\\u05e4\\u05ea \\u05e1\\u05de\\u05d9\\u05d9\\u05dc\\u05d9\",yell:\"\\u05e6\\u05e2\\u05e7\\u05d4\",wink:\"\\u05e7\\u05e8\\u05d9\\u05e6\\u05d4\",undecided:\"\\u05d4\\u05e1\\u05e0\\u05e0\\u05d9\",\"tongue_out\":\"\\u05dc\\u05e9\\u05d5\\u05df \\u05d1\\u05d7\\u05d5\\u05e5\",surprised:\"\\u05de\\u05d5\\u05e4\\u05ea\\u05e2\",smile:\"\\u05d7\\u05d9\\u05d5\\u05da\",sealed:\"\\u05d0\\u05d8\\u05d5\\u05dd\",\"money_mouth\":\"\\u05db\\u05e1\\u05e3\",laughing:\"\\u05e6\\u05d5\\u05d7\\u05e7\",kiss:\"\\u05e0\\u05e9\\u05d9\\u05e7\\u05d4\",innocent:\"\\u05ea\\u05de\\u05d9\\u05dd\",frown:\"\\u05de\\u05d6\\u05e2\\u05d9\\u05e3 \\u05d0\\u05ea \\u05d4\\u05e4\\u05d4\",\"foot_in_mouth\":\"\\u05e8\\u05d2\\u05dc \\u05d1\\u05e4\\u05d4\",embarassed:\"\\u05e0\\u05d1\\u05d5\\u05da\",usage:\"\\u05d4\\u05e9\\u05ea\\u05de\\u05e9\\u05d5 \\u05d1\\u05d7\\u05e5 \\u05d9\\u05de\\u05d9\\u05e0\\u05d4 \\u05d5\\u05e9\\u05de\\u05d0\\u05dc\\u05d4 \\u05dc\\u05e0\\u05d9\\u05d5\\u05d5\\u05d8\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/hr_dlg.js",
    "content": "tinyMCE.addI18n('hr.emotions_dlg',{cry:\"Pla\\u010d\",cool:\"Cool\",desc:\"Emocije\",title:\"Umetni emociju\",yell:\"Vi\\u010de\",wink:\"Namigiva\",undecided:\"Neodlu\\u010dan\",tongue_out:\"Belji se\",surprised:\"Iznena\\u0111en\",smile:\"Osmijeh\",sealed:\"\\u0160utim\",money_mouth:\"Bogata\\u0161\",laughing:\"Smijeh\",kiss:\"Poljubac\",innocent:\"Nevina\\u0161ce\",frown:\"Mr\\u0161ti se\",foot_in_mouth:\"Izlanuo se\",embarassed:\"Sramim se\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/hu_dlg.js",
    "content": "tinyMCE.addI18n('hu.emotions_dlg',{cry:\"S\\u00edr\\u00f3s\",cool:\"Kir\\u00e1ly\",desc:\"Hangulatjelek\",title:\"Hangulatjel besz\\u00far\\u00e1sa\",yell:\"\\u00dcv\\u00f6lt\\u00e9s\",wink:\"Kacsint\\u00e1s\",undecided:\"Hat\\u00e1rozatlan\",\"tongue_out\":\"Nyelv\\u00f6lt\\u00e9s\",surprised:\"Meglepett\",smile:\"Vigyor\",sealed:\"Lakat a sz\\u00e1j\\u00e1n\",\"money_mouth\":\"P\\u00e9nz besz\\u00e9l\",laughing:\"Nevet\\u00e9s\",kiss:\"Cs\\u00f3k\",innocent:\"\\u00c1rtatlan\",frown:\"Rosszall\",\"foot_in_mouth\":\"L\\u00e1b a sz\\u00e1jban\",embarassed:\"Zavarban van\",usage:\"A navig\\u00e1l\\u00e1shoz haszn\\u00e1ld a bal \\u00e9s jobb oldali nyilat.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/hy_dlg.js",
    "content": "tinyMCE.addI18n('hy.emotions_dlg',{cry:\"Cry\",cool:\"Cool\",desc:\"\\u054d\\u0574\\u0561\\u0575\\u056c\\u056b\\u056f\\u0576\\u0565\\u0580\",title:\"\\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c \\u057d\\u0574\\u0561\\u0575\\u056c\\u056b\\u056f\",yell:\"Yell\",wink:\"Wink\",undecided:\"Undecided\",\"tongue_out\":\"Tongue out\",surprised:\"Surprised\",smile:\"Smile\",sealed:\"Sealed\",\"money_mouth\":\"Money mouth\",laughing:\"Laughing\",kiss:\"Kiss\",innocent:\"Innocent\",frown:\"Frown\",\"foot_in_mouth\":\"Foot in mouth\",embarassed:\"Embarassed\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/it_dlg.js",
    "content": "tinyMCE.addI18n('it.emotions_dlg',{cry:\"Piango\",cool:\"Fico\",desc:\"Faccina\",title:\"Inserisci faccina\",yell:\"Arrabbiato\",wink:\"Occhiolino\",undecided:\"Indeciso\",\"tongue_out\":\"Linguaccia\",surprised:\"Sorpreso\",smile:\"Sorridente\",sealed:\"Bocca sigillata\",\"money_mouth\":\"Bocca danarosa\",laughing:\"Risatona\",kiss:\"Bacio\",innocent:\"Santarellino\",frown:\"Triste\",\"foot_in_mouth\":\"Piede in bocca\",embarassed:\"Imbarazzato\",usage:\"Utilizza le freccie sinistra e destra per navigare.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/ka_dlg.js",
    "content": "tinyMCE.addI18n('ka.emotions_dlg',{cry:\"\\u10d5\\u10e2\\u10d8\\u10e0\\u10d8\\u10d5\\u10d0\\u10e0\",cool:\"\\u10db\\u10d0\\u10d2\\u10d0\\u10e0\\u10d8\\u10d0!\",desc:\"\\u10e1\\u10db\\u10d0\\u10d8\\u10da\\u10d4\\u10d1\\u10d8\",title:\"\\u10e1\\u10db\\u10d0\\u10d8\\u10da\\u10d8\\u10e1 \\u10d0\\u10e0\\u10e9\\u10d4\\u10d5\\u10d0\",yell:\"\\u10d5\\u10e7\\u10d5\\u10d8\\u10e0\\u10d8\\u10d5\\u10d0\\u10e0\",wink:\"\\u10d7\\u10d5\\u10d0\\u10da\\u10e1 \\u10d2\\u10d8\\u10de\\u10d0\\u10ed\\u10e3\\u10dc\\u10d4\\u10d1\",undecided:\"\\u10d5\\u10d4\\u10e0 \\u10d2\\u10d0\\u10d3\\u10d0\\u10d5\\u10ec\\u10e7\\u10d5\\u10d8\\u10e2\\u10d4\",\"tongue_out\":\"\\u10d4\\u10dc\\u10d0\\u10e1 \\u10d2\\u10d8\\u10e7\\u10dd\\u10e4\",surprised:\"\\u10d2\\u10d0\\u10db\\u10d8\\u10d9\\u10d5\\u10d8\\u10e0\\u10d3\\u10d0\",smile:\"\\u10d5\\u10d8\\u10e6\\u10d8\\u10db\\u10d8\",sealed:\"\\u10e1\\u10d0\\u10d8\\u10d3\\u10e3\\u10db\\u10da\\u10dd \\u10e9\\u10d4\\u10db\\u10d7\\u10d0\\u10dc \\u10d4\\u10e0\\u10d7\\u10d0\\u10d3 \\u10db\\u10dd\\u10d9\\u10d5\\u10d3\\u10d4\\u10d1\\u10d0\",\"money_mouth\":\"\\u10e4\\u10e3\\u10da\\u10d8! \\u10e4\\u10e3\\u10da\\u10d8!\",laughing:\"\\u10d2\\u10e0\\u10d4\\u10e9\\u10d8\\u10ee\\u10d0 \\u10db\\u10d0\\u10d8\\u10dc\\u10ea \\u10e0\\u10d0 \\u10d3\\u10d4\\u10d1\\u10d8\\u10da\\u10d8\\u10d0!\",kiss:\"\\u10d2\\u10d9\\u10dd\\u10ea\\u10dc\\u10d8\",innocent:\"\\u10e3\\u10db\\u10d0\\u10dc\\u10d9\\u10dd \\u10d5\\u10d0\\u10e0\",frown:\"\\u10d5\\u10d8\\u10e6\\u10e0\\u10e3\\u10d1\\u10da\\u10d4\\u10d1\\u10d8\",\"foot_in_mouth\":\"\\u10e2\\u10e4\\u10e3\\u10d8\",embarassed:\"\\u10d2\\u10d0\\u10d5\\u10ec\\u10d8\\u10d7\\u10da\\u10d3\\u10d8\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/ko_dlg.js",
    "content": "tinyMCE.addI18n('ko.emotions_dlg',{cry:\"\\uc6b8\\uc74c\",cool:\"\\ucfe8\\ud568\",desc:\"\\uc774\\ubaa8\\ud2f0\\ucf58\",title:\"\\uc774\\ubaa8\\ud2f0\\ucf58 \\uc0bd\\uc785\",yell:\"\\uace0\\ud568\",wink:\"\\uc719\\ud06c\",undecided:\"\\uace0\\ubbfc\",\"tongue_out\":\"\\uba54\\ub871\",surprised:\"\\ub180\\ub78c\",smile:\"\\ubbf8\\uc18c\",sealed:\"\\ubd09\\uc778\",\"money_mouth\":\"\\ub3c8\",laughing:\"\\uc6c3\\uc74c\",kiss:\"\\ud0a4\\uc2a4\",innocent:\"\\uc21c\\uc9c4\",frown:\"\\ucc21\\uadf8\\ub9b0 \\uc5bc\\uad74\",\"foot_in_mouth\":\"\\uc2e4\\uc5b8\",embarassed:\"\\ubd80\\ub044\\ub7ec\\uc6c0\",usage:\"\\uc88c\\uc6b0 \\ud654\\uc0b4\\ud45c\\ub97c \\uc0ac\\uc6a9\\ud574 \\uc120\\ud0dd\\ud558\\uc2e4 \\uc218 \\uc788\\uc2b5\\ub2c8\\ub2e4.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/nb_dlg.js",
    "content": "tinyMCE.addI18n('nb.emotions_dlg',{cry:\"Gr\\u00e5ter\",cool:\"Kul\",desc:\"Hum\\u00f8rfjes\",title:\"Sett inn hum\\u00f8rfjes\",yell:\"Rope\",wink:\"Blunke\",undecided:\"Skeptisk\",\"tongue_out\":\"Rekke tunge\",surprised:\"Overrasket\",smile:\"Smile\",sealed:\"Hemmelig\",\"money_mouth\":\"Penger i munnen\",laughing:\"Ler\",kiss:\"Kyss\",innocent:\"Uskyldig\",frown:\"Skuffet\",\"foot_in_mouth\":\"Fot i munnen\",embarassed:\"Flau\",usage:\"Bruk venstre og h\\u00f8yre piltast for \\u00e5 navigere.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/nl_dlg.js",
    "content": "tinyMCE.addI18n('nl.emotions_dlg',{cry:\"Huilen\",cool:\"Stoer\",desc:\"Emoties\",title:\"Emotie invoegen\",yell:\"Roepen\",wink:\"Knipogen\",undecided:\"Onbeslist\",tongue_out:\"Tong uitsteken\",surprised:\"Verrast\",smile:\"Lachen\",sealed:\"Afgesloten\",money_mouth:\"Hebberig\",laughing:\"Lachen\",kiss:\"Zoenen\",innocent:\"Onschuldig\",frown:\"Wenkbrauw ophalen\",foot_in_mouth:\"Verstomd\",embarassed:\"Schamen\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/pl_dlg.js",
    "content": "tinyMCE.addI18n('pl.emotions_dlg',{cry:\"Cry\",cool:\"Cool\",desc:\"Emotikony\",title:\"Wstaw emotikon\\u0119\",yell:\"Yell\",wink:\"Wink\",undecided:\"Undecided\",tongue_out:\"Tongue out\",surprised:\"Surprised\",smile:\"Smile\",sealed:\"Sealed\",money_mouth:\"Money mouth\",laughing:\"Laughing\",kiss:\"Kiss\",innocent:\"Innocent\",frown:\"Frown\",foot_in_mouth:\"Foot in mouth\",embarassed:\"Embarassed\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/pt_dlg.js",
    "content": "tinyMCE.addI18n('pt.emotions_dlg',{cry:\"Chor\\u00e3o\",cool:\"Fixe\",desc:\"Emoticons\",title:\"Inserir emoticon\",yell:\"Irado\",wink:\"Piscadela\",undecided:\"Indeciso\",tongue_out:\"L\\u00edngua de fora\",surprised:\"Surpresa\",smile:\"Sorriso\",sealed:\"Boca Fechada\",money_mouth:\"Avarez\",laughing:\"Riso\",kiss:\"Beijo\",innocent:\"Inocente\",frown:\"Decep\\u00e7\\u00e3o\",foot_in_mouth:\"Disse asneira\",embarassed:\"Embara\\u00e7ado\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/ro_dlg.js",
    "content": "tinyMCE.addI18n('ro.emotions_dlg',{cry:\"Trist\",cool:\"Cool\",desc:\"Figurine emotive\",title:\"Insereaz\\u0103 o figurin\\u0103\",yell:\"\\u0162ip\\u0103\",wink:\"Face cu ochiul\",undecided:\"Indecis\",tongue_out:\"Cu limba afar\\u0103\",surprised:\"Surprins\",smile:\"Z\\u00e2mbet\",sealed:\"Sigilat\",money_mouth:\"Bani \\u00een gur\\u0103\",laughing:\"R\\u00e2de\",kiss:\"Pupic\",innocent:\"Nevinovat\",frown:\"\\u00cencruntat\",foot_in_mouth:\"Picior \\u00een gur\\u0103\",embarassed:\"Ru\\u015finat\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/ru_dlg.js",
    "content": "tinyMCE.addI18n('ru.emotions_dlg',{cry:\"Cry\",cool:\"Cool\",desc:\"\\u0421\\u043c\\u0430\\u0439\\u043b\\u044b\",title:\"\\u0412\\u044b\\u0431\\u043e\\u0440 \\u0441\\u043c\\u0430\\u0439\\u043b\\u0430\",yell:\"Yell\",wink:\"Wink\",undecided:\"Undecided\",tongue_out:\"Tongue out\",surprised:\"Surprised\",smile:\"Smile\",sealed:\"Sealed\",money_mouth:\"Money mouth\",laughing:\"Laughing\",kiss:\"Kiss\",innocent:\"Innocent\",frown:\"Frown\",foot_in_mouth:\"Foot in mouth\",embarassed:\"Embarassed\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/sr_dlg.js",
    "content": "tinyMCE.addI18n('sr.emotions_dlg',{cry:\"Pla\\u010dem\",cool:\"Cool\",desc:\"Smajli\",title:\"Ubaci smajlija\",yell:\"Vi\\u010dem\",wink:\"Namigujem\",undecided:\"Neodlu\\u010dan\",tongue_out:\"Plezim se\",surprised:\"Iznena\\u0111en\",smile:\"Osmeh\",sealed:\"\\u0106utim\",money_mouth:\"Bogata\\u0161\",laughing:\"Smeh\",kiss:\"Poljubac\",innocent:\"Nevina\\u0161ce\",frown:\"Tu\\u017ean sam\",foot_in_mouth:\"Izletelo mi\",embarassed:\"Stidim se\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/sv_dlg.js",
    "content": "tinyMCE.addI18n('sv.emotions_dlg',{cry:\"Gr\\u00e5ter\",cool:\"Cool\",desc:\"Smileys\",title:\"Infoga smiley\",yell:\"Skrikandes\",wink:\"Fl\\u00f6rt\",undecided:\"Obest\\u00e4md\",\"tongue_out\":\"Tungan ute\",surprised:\"F\\u00f6rv\\u00e5nad\",smile:\"Glad\",sealed:\"Tyst\",\"money_mouth\":\"Guld i mun\",laughing:\"Skrattande\",kiss:\"Kyss\",innocent:\"Oskyldig\",frown:\"Rynkar p\\u00e5 n\\u00e4san\",\"foot_in_mouth\":\"Foten i munnen\",embarassed:\"Sk\\u00e4ms\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/tr_dlg.js",
    "content": "tinyMCE.addI18n('tr.emotions_dlg',{cry:\"A\\u011flayan\",cool:\"Sakin\",desc:\"\\u0130fadeler\",title:\"\\u0130fade ekle\",yell:\"Ba\\u011f\\u0131rma\",wink:\"G\\u00f6z k\\u0131rpma\",undecided:\"Karars\\u0131z\",\"tongue_out\":\"Dil \\u00e7\\u0131karma\",surprised:\"\\u015ea\\u015f\\u0131rma\",smile:\"G\\u00fcl\\u00fcmseme\",sealed:\"Gizli\",\"money_mouth\":\"Para g\\u00f6z\",laughing:\"Kahkaha\",kiss:\"\\u00d6p\\u00fcc\\u00fck\",innocent:\"Masum\",frown:\"As\\u0131k\",\"foot_in_mouth\":\"Pot k\\u0131rm\\u0131\\u015f\",embarassed:\"Utanga\\u00e7\",usage:\"Gezinmek i\\u00e7in sa\\u011f ve sol oklar\\u0131 kullan\\u0131n.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/uk_dlg.js",
    "content": "tinyMCE.addI18n('uk.emotions_dlg',{cry:\"\\u041f\\u043b\\u0430\\u0447\",cool:\"Cool\",desc:\"\\u041f\\u043e\\u0441\\u043c\\u0456\\u0448\\u043a\\u0438\",title:\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438 \\u043f\\u043e\\u0441\\u043c\\u0456\\u0448\\u043a\\u0443\",yell:\"\\u0417\\u043e\\u0439\\u043a\",wink:\"\\u041f\\u0456\\u0434\\u043c\\u043e\\u0440\\u0433\\u0443\\u0454\",undecided:\"\\u041d\\u0435\\u0440\\u0456\\u0448\\u0443\\u0447\\u0456\\u0441\\u0442\\u044c\",\"tongue_out\":\"\\u041f\\u043e\\u043a\\u0430\\u0437\\u0443\\u0454 \\u044f\\u0437\\u0438\\u043a\\u0430\",surprised:\"\\u0417\\u0434\\u0438\\u0432\\u043e\\u0432\\u0430\\u043d\\u0456\\u0441\\u0442\\u044c\",smile:\"\\u041f\\u043e\\u0441\\u043c\\u0456\\u0448\\u043a\\u0430\",sealed:\"Sealed\",\"money_mouth\":\"\\u0413\\u0440\\u043e\\u0449\\u0456 \\u0432 \\u0440\\u043e\\u0442\\u0456\",laughing:\"\\u0421\\u043c\\u0456\\u0445\",kiss:\"\\u041f\\u043e\\u0446\\u0456\\u043b\\u0443\\u043d\\u043e\\u043a\",innocent:\"\\u041d\\u0435\\u0432\\u0438\\u043d\\u043d\\u0456\\u0441\\u0442\\u044c\",frown:\"\\u041d\\u0430\\u0441\\u0443\\u043f\\u043b\\u0435\\u043d\\u043d\\u0456\\u0441\\u0442\\u044c\",\"foot_in_mouth\":\"\\u041d\\u043e\\u0433\\u0430 \\u0432 \\u0440\\u043e\\u0442\\u0456\",embarassed:\"\\u0417\\u0431\\u0435\\u043d\\u0442\\u0435\\u0436\\u0435\\u043d\\u043d\\u044f\",usage:\"\\u0412\\u0438\\u043a\\u043e\\u0440\\u0438\\u0441\\u0442\\u043e\\u0432\\u0443\\u0439\\u0442\\u0435 \\u0441\\u0442\\u0440\\u0456\\u043b\\u043a\\u0438 \\u0432\\u043b\\u0456\\u0432\\u043e \\u0442\\u0430 \\u0432\\u043f\\u0440\\u0430\\u0432\\u043e \\u0434\\u043b\\u044f \\u043d\\u0430\\u0432\\u0456\\u0433\\u0430\\u0446\\u0456\\u0457\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/zh-tw_dlg.js",
    "content": "tinyMCE.addI18n('zh-tw.emotions_dlg',{cry:\"\\u597d\\u60f3\\u54ed\",cool:\"\\u9177\\u554a\\uff01\",desc:\"\\u8868\\u60c5\",title:\"\\u4f7f\\u7528\\u8868\\u60c5\\u7b26\\u865f\",yell:\"\\u554a\\u554a\\u554a\\u554a\\uff01\",wink:\"Wink\\uff01\",undecided:\"\\u597d\\u7336\\u8c6b\",\"tongue_out\":\"\\u5566~\",surprised:\"\\u7d66\\u4f60\\u4e00\\u500b\\u9a5a\\u559c\\uff01\",smile:\"\\u5fae\\u7b11\",sealed:\"(\\u4e0d\\u80fd\\u8aaa)\",\"money_mouth\":\"\\u9322\\u9322\\u9322\",laughing:\"\\u54c8\\u54c8\",kiss:\"\\u89aa\\u4e00\\u500b\",innocent:\"\\u88dd\\u7121\\u8f9c\",frown:\"\\u7709\\u982d\\u6df1\\u9396\",\"foot_in_mouth\":\"\\u5931\\u8a00\",embarassed:\"\\u597d\\u5c37\\u5c2c\\u2026\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/emotions/langs/zh_dlg.js",
    "content": "tinyMCE.addI18n('zh.emotions_dlg',{cry:\"\\u54ed\\u6ce3\",cool:\"\\u9177\",desc:\"\\u8868\\u60c5\",title:\"\\u63d2\\u5165\\u8868\\u60c5\",yell:\"\\u5927\\u53eb\",wink:\"\\u7728\\u773c\",undecided:\"\\u601d\\u8003\",\"tongue_out\":\"\\u5410\\u820c\\u5934\",surprised:\"\\u60ca\\u8bb6\",smile:\"\\u5fae\\u7b11\",sealed:\"\\u4fdd\\u5bc6\",\"money_mouth\":\"\\u53d1\\u8d22\",laughing:\"\\u5927\\u7b11\",kiss:\"\\u543b\",innocent:\"\\u5929\\u771f\",frown:\"\\u76b1\\u7709\",\"foot_in_mouth\":\"\\u54a7\\u5634\",embarassed:\"\\u5c34\\u5c2c\",usage:\"\\u4f7f\\u7528\\u5de6\\u53f3\\u65b9\\u5411\\u952e\\u5207\\u6362\\u3002\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/example/dialog.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#example_dlg.title}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/dialog.js\"></script>\r\n</head>\r\n<body>\r\n\r\n<form onsubmit=\"ExampleDialog.insert();return false;\" action=\"#\">\r\n\t<p>Here is a example dialog.</p>\r\n\t<p>Selected text: <input id=\"someval\" name=\"someval\" type=\"text\" class=\"text\" /></p>\r\n\t<p>Custom arg: <input id=\"somearg\" name=\"somearg\" type=\"text\" class=\"text\" /></p>\r\n\r\n\t<div class=\"mceActionPanel\">\r\n\t\t<input type=\"button\" id=\"insert\" name=\"insert\" value=\"{#insert}\" onclick=\"ExampleDialog.insert();\" />\r\n\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t</div>\r\n</form>\r\n\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/example/editor_plugin.js",
    "content": "(function(){tinymce.PluginManager.requireLangPack(\"example\");tinymce.create(\"tinymce.plugins.ExamplePlugin\",{init:function(a,b){a.addCommand(\"mceExample\",function(){a.windowManager.open({file:b+\"/dialog.htm\",width:320+parseInt(a.getLang(\"example.delta_width\",0)),height:120+parseInt(a.getLang(\"example.delta_height\",0)),inline:1},{plugin_url:b,some_custom_arg:\"custom arg\"})});a.addButton(\"example\",{title:\"example.desc\",cmd:\"mceExample\",image:b+\"/img/example.gif\"});a.onNodeChange.add(function(d,c,e){c.setActive(\"example\",e.nodeName==\"IMG\")})},createControl:function(b,a){return null},getInfo:function(){return{longname:\"Example plugin\",author:\"Some author\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/example\",version:\"1.0\"}}});tinymce.PluginManager.add(\"example\",tinymce.plugins.ExamplePlugin)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/example/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\t// Load plugin specific language pack\r\n\ttinymce.PluginManager.requireLangPack('example');\r\n\r\n\ttinymce.create('tinymce.plugins.ExamplePlugin', {\r\n\t\t/**\r\n\t\t * Initializes the plugin, this will be executed after the plugin has been created.\r\n\t\t * This call is done before the editor instance has finished it's initialization so use the onInit event\r\n\t\t * of the editor instance to intercept that event.\r\n\t\t *\r\n\t\t * @param {tinymce.Editor} ed Editor instance that the plugin is initialized in.\r\n\t\t * @param {string} url Absolute URL to where the plugin is located.\r\n\t\t */\r\n\t\tinit : function(ed, url) {\r\n\t\t\t// Register the command so that it can be invoked by using tinyMCE.activeEditor.execCommand('mceExample');\r\n\t\t\ted.addCommand('mceExample', function() {\r\n\t\t\t\ted.windowManager.open({\r\n\t\t\t\t\tfile : url + '/dialog.htm',\r\n\t\t\t\t\twidth : 320 + parseInt(ed.getLang('example.delta_width', 0)),\r\n\t\t\t\t\theight : 120 + parseInt(ed.getLang('example.delta_height', 0)),\r\n\t\t\t\t\tinline : 1\r\n\t\t\t\t}, {\r\n\t\t\t\t\tplugin_url : url, // Plugin absolute URL\r\n\t\t\t\t\tsome_custom_arg : 'custom arg' // Custom argument\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\t// Register example button\r\n\t\t\ted.addButton('example', {\r\n\t\t\t\ttitle : 'example.desc',\r\n\t\t\t\tcmd : 'mceExample',\r\n\t\t\t\timage : url + '/img/example.gif'\r\n\t\t\t});\r\n\r\n\t\t\t// Add a node change handler, selects the button in the UI when a image is selected\r\n\t\t\ted.onNodeChange.add(function(ed, cm, n) {\r\n\t\t\t\tcm.setActive('example', n.nodeName == 'IMG');\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * Creates control instances based in the incomming name. This method is normally not\r\n\t\t * needed since the addButton method of the tinymce.Editor class is a more easy way of adding buttons\r\n\t\t * but you sometimes need to create more complex controls like listboxes, split buttons etc then this\r\n\t\t * method can be used to create those.\r\n\t\t *\r\n\t\t * @param {String} n Name of the control to create.\r\n\t\t * @param {tinymce.ControlManager} cm Control manager to use inorder to create new control.\r\n\t\t * @return {tinymce.ui.Control} New control instance or null if no control was created.\r\n\t\t */\r\n\t\tcreateControl : function(n, cm) {\r\n\t\t\treturn null;\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * Returns information about the plugin as a name/value array.\r\n\t\t * The current keys are longname, author, authorurl, infourl and version.\r\n\t\t *\r\n\t\t * @return {Object} Name/value array containing information about the plugin.\r\n\t\t */\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Example plugin',\r\n\t\t\t\tauthor : 'Some author',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/example',\r\n\t\t\t\tversion : \"1.0\"\r\n\t\t\t};\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('example', tinymce.plugins.ExamplePlugin);\r\n})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/example/js/dialog.js",
    "content": "tinyMCEPopup.requireLangPack();\r\n\r\nvar ExampleDialog = {\r\n\tinit : function() {\r\n\t\tvar f = document.forms[0];\r\n\r\n\t\t// Get the selected contents as text and place it in the input\r\n\t\tf.someval.value = tinyMCEPopup.editor.selection.getContent({format : 'text'});\r\n\t\tf.somearg.value = tinyMCEPopup.getWindowArg('some_custom_arg');\r\n\t},\r\n\r\n\tinsert : function() {\r\n\t\t// Insert the contents from the input into the document\r\n\t\ttinyMCEPopup.editor.execCommand('mceInsertContent', false, document.forms[0].someval.value);\r\n\t\ttinyMCEPopup.close();\r\n\t}\r\n};\r\n\r\ntinyMCEPopup.onInit.add(ExampleDialog.init, ExampleDialog);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/example/langs/en.js",
    "content": "tinyMCE.addI18n('en.example',{\r\n\tdesc : 'This is just a template button'\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/example/langs/en_dlg.js",
    "content": "tinyMCE.addI18n('en.example_dlg',{\r\n\ttitle : 'This is just a example title'\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/example_dependency/editor_plugin.js",
    "content": "(function(){tinymce.create(\"tinymce.plugins.ExampleDependencyPlugin\",{init:function(a,b){},getInfo:function(){return{longname:\"Example Dependency plugin\",author:\"Some author\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/example_dependency\",version:\"1.0\"}}});tinymce.PluginManager.add(\"example_dependency\",tinymce.plugins.ExampleDependencyPlugin,[\"example\"])})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/example_dependency/editor_plugin_src.js",
    "content": "/**\n * editor_plugin_src.js\n *\n * Copyright 2009, Moxiecode Systems AB\n * Released under LGPL License.\n *\n * License: http://tinymce.moxiecode.com/license\n * Contributing: http://tinymce.moxiecode.com/contributing\n */\n\n(function() {\n\n\ttinymce.create('tinymce.plugins.ExampleDependencyPlugin', {\n\t\t/**\n\t\t * Initializes the plugin, this will be executed after the plugin has been created.\n\t\t * This call is done before the editor instance has finished it's initialization so use the onInit event\n\t\t * of the editor instance to intercept that event.\n\t\t *\n\t\t * @param {tinymce.Editor} ed Editor instance that the plugin is initialized in.\n\t\t * @param {string} url Absolute URL to where the plugin is located.\n\t\t */\n\t\tinit : function(ed, url) {\n\t\t},\n\n\n\t\t/**\n\t\t * Returns information about the plugin as a name/value array.\n\t\t * The current keys are longname, author, authorurl, infourl and version.\n\t\t *\n\t\t * @return {Object} Name/value array containing information about the plugin.\n\t\t */\n\t\tgetInfo : function() {\n\t\t\treturn {\n\t\t\t\tlongname : 'Example Dependency plugin',\n\t\t\t\tauthor : 'Some author',\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/example_dependency',\n\t\t\t\tversion : \"1.0\"\n\t\t\t};\n\t\t}\n\t});\n\n\t/**\n\t * Register the plugin, specifying the list of the plugins that this plugin depends on.  They are specified in a list, with the list loaded in order.\n\t * plugins in this list will be initialised when this plugin is initialized. (before the init method is called).\n\t * plugins in a depends list should typically be specified using the short name).  If neccesary this can be done\n\t * with an object which has the url to the plugin and the shortname.\n\t */\n\ttinymce.PluginManager.add('example_dependency', tinymce.plugins.ExampleDependencyPlugin, ['example']);\n})();\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/css/fullpage.css",
    "content": "/* Hide the advanced tab */\r\n#advanced_tab {\r\n\tdisplay: none;\r\n}\r\n\r\n#metatitle, #metakeywords, #metadescription, #metaauthor, #metacopyright {\r\n\twidth: 280px;\r\n}\r\n\r\n#doctype, #docencoding {\r\n\twidth: 200px;\r\n}\r\n\r\n#langcode {\r\n\twidth: 30px;\r\n}\r\n\r\n#bgimage {\r\n\twidth: 220px;\t\r\n}\r\n\r\n#fontface {\r\n\twidth: 240px;\r\n}\r\n\r\n#leftmargin, #rightmargin, #topmargin, #bottommargin {\r\n\twidth: 50px;\r\n}\r\n\r\n.panel_wrapper div.current {\r\n\theight: 400px;\r\n}\r\n\r\n#stylesheet, #style {\r\n\twidth: 240px;\r\n}\r\n\r\n#doctypes {\r\n\twidth: 200px;\r\n}\r\n\r\n/* Head list classes */\r\n\r\n.headlistwrapper {\r\n\twidth: 100%;\r\n}\r\n\r\n.selected {\r\n\tborder: 1px solid #0A246A;\r\n\tbackground-color: #B6BDD2;\r\n}\r\n\r\n.toolbar {\r\n\twidth: 100%;\r\n}\r\n\r\n#headlist {\r\n\twidth: 100%;\r\n\tmargin-top: 3px;\r\n\tfont-size: 11px;\r\n}\r\n\r\n#info, #title_element, #meta_element, #script_element, #style_element, #base_element, #link_element, #comment_element, #unknown_element {\r\n\tdisplay: none;\r\n}\r\n\r\n#addmenu {\r\n\tposition: absolute;\r\n\tborder: 1px solid gray;\r\n\tdisplay: none;\r\n\tz-index: 100;\r\n\tbackground-color: white;\r\n}\r\n\r\n#addmenu a {\r\n\tdisplay: block;\r\n\twidth: 100%;\r\n\tline-height: 20px;\r\n\ttext-decoration: none;\r\n\tbackground-color: white;\r\n}\r\n\r\n#addmenu a:hover {\r\n\tbackground-color: #B6BDD2;\r\n\tcolor: black;\r\n}\r\n\r\n#addmenu span {\r\n\tpadding-left: 10px;\r\n\tpadding-right: 10px;\r\n}\r\n\r\n#updateElementPanel {\r\n\tdisplay: none;\r\n}\r\n\r\n#script_element .panel_wrapper div.current {\r\n\theight: 108px;\r\n}\r\n\r\n#style_element .panel_wrapper div.current {\r\n\theight: 108px;\r\n}\r\n\r\n#link_element  .panel_wrapper div.current {\r\n\theight: 140px;\r\n}\r\n\r\n#element_script_value {\r\n\twidth: 100%;\r\n\theight: 100px;\r\n}\r\n\r\n#element_comment_value {\r\n\twidth: 100%;\r\n\theight: 120px;\r\n}\r\n\r\n#element_style_value {\r\n\twidth: 100%;\r\n\theight: 100px;\r\n}\r\n\r\n#element_title, #element_script_src, #element_meta_name, #element_meta_content, #element_base_href, #element_link_href, #element_link_title {\r\n\twidth: 250px;\r\n}\r\n\r\n.updateElementButton {\r\n\tmargin-top: 3px;\r\n}\r\n\r\n/* MSIE specific styles */\r\n\r\n* html .addbutton, * html .removebutton, * html .moveupbutton, * html .movedownbutton {\r\n\twidth: 22px;\r\n\theight: 22px;\r\n}\r\n\r\ntextarea {\r\n\theight: 55px;\r\n}\r\n\r\n.panel_wrapper div.current {height:420px;}"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/editor_plugin.js",
    "content": "(function(){var b=tinymce.each,a=tinymce.html.Node;tinymce.create(\"tinymce.plugins.FullPagePlugin\",{init:function(c,d){var e=this;e.editor=c;c.addCommand(\"mceFullPageProperties\",function(){c.windowManager.open({file:d+\"/fullpage.htm\",width:430+parseInt(c.getLang(\"fullpage.delta_width\",0)),height:495+parseInt(c.getLang(\"fullpage.delta_height\",0)),inline:1},{plugin_url:d,data:e._htmlToData()})});c.addButton(\"fullpage\",{title:\"fullpage.desc\",cmd:\"mceFullPageProperties\"});c.onBeforeSetContent.add(e._setContent,e);c.onGetContent.add(e._getContent,e)},getInfo:function(){return{longname:\"Fullpage\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/fullpage\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}},_htmlToData:function(){var f=this._parseHeader(),h={},c,i,g,e=this.editor;function d(l,j){var k=l.attr(j);return k||\"\"}h.fontface=e.getParam(\"fullpage_default_fontface\",\"\");h.fontsize=e.getParam(\"fullpage_default_fontsize\",\"\");i=f.firstChild;if(i.type==7){h.xml_pi=true;g=/encoding=\"([^\"]+)\"/.exec(i.value);if(g){h.docencoding=g[1]}}i=f.getAll(\"#doctype\")[0];if(i){h.doctype=\"<!DOCTYPE\"+i.value+\">\"}i=f.getAll(\"title\")[0];if(i&&i.firstChild){h.metatitle=i.firstChild.value}b(f.getAll(\"meta\"),function(m){var k=m.attr(\"name\"),j=m.attr(\"http-equiv\"),l;if(k){h[\"meta\"+k.toLowerCase()]=m.attr(\"content\")}else{if(j==\"Content-Type\"){l=/charset\\s*=\\s*(.*)\\s*/gi.exec(m.attr(\"content\"));if(l){h.docencoding=l[1]}}}});i=f.getAll(\"html\")[0];if(i){h.langcode=d(i,\"lang\")||d(i,\"xml:lang\")}i=f.getAll(\"link\")[0];if(i&&i.attr(\"rel\")==\"stylesheet\"){h.stylesheet=i.attr(\"href\")}i=f.getAll(\"body\")[0];if(i){h.langdir=d(i,\"dir\");h.style=d(i,\"style\");h.visited_color=d(i,\"vlink\");h.link_color=d(i,\"link\");h.active_color=d(i,\"alink\")}return h},_dataToHtml:function(g){var f,d,h,j,k,e=this.editor.dom;function c(n,l,m){n.attr(l,m?m:undefined)}function i(l){if(d.firstChild){d.insert(l,d.firstChild)}else{d.append(l)}}f=this._parseHeader();d=f.getAll(\"head\")[0];if(!d){j=f.getAll(\"html\")[0];d=new a(\"head\",1);if(j.firstChild){j.insert(d,j.firstChild,true)}else{j.append(d)}}j=f.firstChild;if(g.xml_pi){k='version=\"1.0\"';if(g.docencoding){k+=' encoding=\"'+g.docencoding+'\"'}if(j.type!=7){j=new a(\"xml\",7);f.insert(j,f.firstChild,true)}j.value=k}else{if(j&&j.type==7){j.remove()}}j=f.getAll(\"#doctype\")[0];if(g.doctype){if(!j){j=new a(\"#doctype\",10);if(g.xml_pi){f.insert(j,f.firstChild)}else{i(j)}}j.value=g.doctype.substring(9,g.doctype.length-1)}else{if(j){j.remove()}}j=f.getAll(\"title\")[0];if(g.metatitle){if(!j){j=new a(\"title\",1);j.append(new a(\"#text\",3)).value=g.metatitle;i(j)}}if(g.docencoding){j=null;b(f.getAll(\"meta\"),function(l){if(l.attr(\"http-equiv\")==\"Content-Type\"){j=l}});if(!j){j=new a(\"meta\",1);j.attr(\"http-equiv\",\"Content-Type\");j.shortEnded=true;i(j)}j.attr(\"content\",\"text/html; charset=\"+g.docencoding)}b(\"keywords,description,author,copyright,robots\".split(\",\"),function(m){var l=f.getAll(\"meta\"),n,p,o=g[\"meta\"+m];for(n=0;n<l.length;n++){p=l[n];if(p.attr(\"name\")==m){if(o){p.attr(\"content\",o)}else{p.remove()}return}}if(o){j=new a(\"meta\",1);j.attr(\"name\",m);j.attr(\"content\",o);j.shortEnded=true;i(j)}});j=f.getAll(\"link\")[0];if(j&&j.attr(\"rel\")==\"stylesheet\"){if(g.stylesheet){j.attr(\"href\",g.stylesheet)}else{j.remove()}}else{if(g.stylesheet){j=new a(\"link\",1);j.attr({rel:\"stylesheet\",text:\"text/css\",href:g.stylesheet});j.shortEnded=true;i(j)}}j=f.getAll(\"body\")[0];if(j){c(j,\"dir\",g.langdir);c(j,\"style\",g.style);c(j,\"vlink\",g.visited_color);c(j,\"link\",g.link_color);c(j,\"alink\",g.active_color);e.setAttribs(this.editor.getBody(),{style:g.style,dir:g.dir,vLink:g.visited_color,link:g.link_color,aLink:g.active_color})}j=f.getAll(\"html\")[0];if(j){c(j,\"lang\",g.langcode);c(j,\"xml:lang\",g.langcode)}h=new tinymce.html.Serializer({validate:false,indent:true,apply_source_formatting:true,indent_before:\"head,html,body,meta,title,script,link,style\",indent_after:\"head,html,body,meta,title,script,link,style\"}).serialize(f);this.head=h.substring(0,h.indexOf(\"</body>\"))},_parseHeader:function(){return new tinymce.html.DomParser({validate:false,root_name:\"#document\"}).parse(this.head)},_setContent:function(g,d){var m=this,i,c,h=d.content,f,l=\"\",e=m.editor.dom,j;function k(n){return n.replace(/<\\/?[A-Z]+/g,function(o){return o.toLowerCase()})}if(d.format==\"raw\"&&m.head){return}if(d.source_view&&g.getParam(\"fullpage_hide_in_source_view\")){return}h=h.replace(/<(\\/?)BODY/gi,\"<$1body\");i=h.indexOf(\"<body\");if(i!=-1){i=h.indexOf(\">\",i);m.head=k(h.substring(0,i+1));c=h.indexOf(\"</body\",i);if(c==-1){c=h.length}d.content=h.substring(i+1,c);m.foot=k(h.substring(c))}else{m.head=this._getDefaultHeader();m.foot=\"\\n</body>\\n</html>\"}f=m._parseHeader();b(f.getAll(\"style\"),function(n){if(n.firstChild){l+=n.firstChild.value}});j=f.getAll(\"body\")[0];if(j){e.setAttribs(m.editor.getBody(),{style:j.attr(\"style\")||\"\",dir:j.attr(\"dir\")||\"\",vLink:j.attr(\"vlink\")||\"\",link:j.attr(\"link\")||\"\",aLink:j.attr(\"alink\")||\"\"})}e.remove(\"fullpage_styles\");if(l){e.add(m.editor.getDoc().getElementsByTagName(\"head\")[0],\"style\",{id:\"fullpage_styles\"},l);j=e.get(\"fullpage_styles\");if(j.styleSheet){j.styleSheet.cssText=l}}},_getDefaultHeader:function(){var f=\"\",c=this.editor,e,d=\"\";if(c.getParam(\"fullpage_default_xml_pi\")){f+='<?xml version=\"1.0\" encoding=\"'+c.getParam(\"fullpage_default_encoding\",\"ISO-8859-1\")+'\" ?>\\n'}f+=c.getParam(\"fullpage_default_doctype\",'<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">');f+=\"\\n<html>\\n<head>\\n\";if(e=c.getParam(\"fullpage_default_title\")){f+=\"<title>\"+e+\"</title>\\n\"}if(e=c.getParam(\"fullpage_default_encoding\")){f+='<meta http-equiv=\"Content-Type\" content=\"text/html; charset='+e+'\" />\\n'}if(e=c.getParam(\"fullpage_default_font_family\")){d+=\"font-family: \"+e+\";\"}if(e=c.getParam(\"fullpage_default_font_size\")){d+=\"font-size: \"+e+\";\"}if(e=c.getParam(\"fullpage_default_text_color\")){d+=\"color: \"+e+\";\"}f+=\"</head>\\n<body\"+(d?' style=\"'+d+'\"':\"\")+\">\\n\";return f},_getContent:function(d,e){var c=this;if(!e.source_view||!d.getParam(\"fullpage_hide_in_source_view\")){e.content=tinymce.trim(c.head)+\"\\n\"+tinymce.trim(e.content)+\"\\n\"+tinymce.trim(c.foot)}}});tinymce.PluginManager.add(\"fullpage\",tinymce.plugins.FullPagePlugin)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\tvar each = tinymce.each, Node = tinymce.html.Node;\r\n\r\n\ttinymce.create('tinymce.plugins.FullPagePlugin', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tt.editor = ed;\r\n\r\n\t\t\t// Register commands\r\n\t\t\ted.addCommand('mceFullPageProperties', function() {\r\n\t\t\t\ted.windowManager.open({\r\n\t\t\t\t\tfile : url + '/fullpage.htm',\r\n\t\t\t\t\twidth : 430 + parseInt(ed.getLang('fullpage.delta_width', 0)),\r\n\t\t\t\t\theight : 495 + parseInt(ed.getLang('fullpage.delta_height', 0)),\r\n\t\t\t\t\tinline : 1\r\n\t\t\t\t}, {\r\n\t\t\t\t\tplugin_url : url,\r\n\t\t\t\t\tdata : t._htmlToData()\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\t// Register buttons\r\n\t\t\ted.addButton('fullpage', {title : 'fullpage.desc', cmd : 'mceFullPageProperties'});\r\n\r\n\t\t\ted.onBeforeSetContent.add(t._setContent, t);\r\n\t\t\ted.onGetContent.add(t._getContent, t);\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Fullpage',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/fullpage',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t},\r\n\r\n\t\t// Private plugin internal methods\r\n\r\n\t\t_htmlToData : function() {\r\n\t\t\tvar headerFragment = this._parseHeader(), data = {}, nodes, elm, matches, editor = this.editor;\r\n\r\n\t\t\tfunction getAttr(elm, name) {\r\n\t\t\t\tvar value = elm.attr(name);\r\n\r\n\t\t\t\treturn value || '';\r\n\t\t\t};\r\n\r\n\t\t\t// Default some values\r\n\t\t\tdata.fontface = editor.getParam(\"fullpage_default_fontface\", \"\");\r\n\t\t\tdata.fontsize = editor.getParam(\"fullpage_default_fontsize\", \"\");\r\n\r\n\t\t\t// Parse XML PI\r\n\t\t\telm = headerFragment.firstChild;\r\n\t\t\tif (elm.type == 7) {\r\n\t\t\t\tdata.xml_pi = true;\r\n\t\t\t\tmatches = /encoding=\"([^\"]+)\"/.exec(elm.value);\r\n\t\t\t\tif (matches)\r\n\t\t\t\t\tdata.docencoding = matches[1];\r\n\t\t\t}\r\n\r\n\t\t\t// Parse doctype\r\n\t\t\telm = headerFragment.getAll('#doctype')[0];\r\n\t\t\tif (elm)\r\n\t\t\t\tdata.doctype = '<!DOCTYPE' + elm.value + \">\"; \r\n\r\n\t\t\t// Parse title element\r\n\t\t\telm = headerFragment.getAll('title')[0];\r\n\t\t\tif (elm && elm.firstChild) {\r\n\t\t\t\tdata.metatitle = elm.firstChild.value;\r\n\t\t\t}\r\n\r\n\t\t\t// Parse meta elements\r\n\t\t\teach(headerFragment.getAll('meta'), function(meta) {\r\n\t\t\t\tvar name = meta.attr('name'), httpEquiv = meta.attr('http-equiv'), matches;\r\n\r\n\t\t\t\tif (name)\r\n\t\t\t\t\tdata['meta' + name.toLowerCase()] = meta.attr('content');\r\n\t\t\t\telse if (httpEquiv == \"Content-Type\") {\r\n\t\t\t\t\tmatches = /charset\\s*=\\s*(.*)\\s*/gi.exec(meta.attr('content'));\r\n\r\n\t\t\t\t\tif (matches)\r\n\t\t\t\t\t\tdata.docencoding = matches[1];\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t// Parse html attribs\r\n\t\t\telm = headerFragment.getAll('html')[0];\r\n\t\t\tif (elm)\r\n\t\t\t\tdata.langcode = getAttr(elm, 'lang') || getAttr(elm, 'xml:lang');\r\n\t\r\n\t\t\t// Parse stylesheet\r\n\t\t\telm = headerFragment.getAll('link')[0];\r\n\t\t\tif (elm && elm.attr('rel') == 'stylesheet')\r\n\t\t\t\tdata.stylesheet = elm.attr('href');\r\n\r\n\t\t\t// Parse body parts\r\n\t\t\telm = headerFragment.getAll('body')[0];\r\n\t\t\tif (elm) {\r\n\t\t\t\tdata.langdir = getAttr(elm, 'dir');\r\n\t\t\t\tdata.style = getAttr(elm, 'style');\r\n\t\t\t\tdata.visited_color = getAttr(elm, 'vlink');\r\n\t\t\t\tdata.link_color = getAttr(elm, 'link');\r\n\t\t\t\tdata.active_color = getAttr(elm, 'alink');\r\n\t\t\t}\r\n\r\n\t\t\treturn data;\r\n\t\t},\r\n\r\n\t\t_dataToHtml : function(data) {\r\n\t\t\tvar headerFragment, headElement, html, elm, value, dom = this.editor.dom;\r\n\r\n\t\t\tfunction setAttr(elm, name, value) {\r\n\t\t\t\telm.attr(name, value ? value : undefined);\r\n\t\t\t};\r\n\r\n\t\t\tfunction addHeadNode(node) {\r\n\t\t\t\tif (headElement.firstChild)\r\n\t\t\t\t\theadElement.insert(node, headElement.firstChild);\r\n\t\t\t\telse\r\n\t\t\t\t\theadElement.append(node);\r\n\t\t\t};\r\n\r\n\t\t\theaderFragment = this._parseHeader();\r\n\t\t\theadElement = headerFragment.getAll('head')[0];\r\n\t\t\tif (!headElement) {\r\n\t\t\t\telm = headerFragment.getAll('html')[0];\r\n\t\t\t\theadElement = new Node('head', 1);\r\n\r\n\t\t\t\tif (elm.firstChild)\r\n\t\t\t\t\telm.insert(headElement, elm.firstChild, true);\r\n\t\t\t\telse\r\n\t\t\t\t\telm.append(headElement);\r\n\t\t\t}\r\n\r\n\t\t\t// Add/update/remove XML-PI\r\n\t\t\telm = headerFragment.firstChild;\r\n\t\t\tif (data.xml_pi) {\r\n\t\t\t\tvalue = 'version=\"1.0\"';\r\n\r\n\t\t\t\tif (data.docencoding)\r\n\t\t\t\t\tvalue += ' encoding=\"' + data.docencoding + '\"';\r\n\r\n\t\t\t\tif (elm.type != 7) {\r\n\t\t\t\t\telm = new Node('xml', 7);\r\n\t\t\t\t\theaderFragment.insert(elm, headerFragment.firstChild, true);\r\n\t\t\t\t}\r\n\r\n\t\t\t\telm.value = value;\r\n\t\t\t} else if (elm && elm.type == 7)\r\n\t\t\t\telm.remove();\r\n\r\n\t\t\t// Add/update/remove doctype\r\n\t\t\telm = headerFragment.getAll('#doctype')[0];\r\n\t\t\tif (data.doctype) {\r\n\t\t\t\tif (!elm) {\r\n\t\t\t\t\telm = new Node('#doctype', 10);\r\n\r\n\t\t\t\t\tif (data.xml_pi)\r\n\t\t\t\t\t\theaderFragment.insert(elm, headerFragment.firstChild);\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\taddHeadNode(elm);\r\n\t\t\t\t}\r\n\r\n\t\t\t\telm.value = data.doctype.substring(9, data.doctype.length - 1);\r\n\t\t\t} else if (elm)\r\n\t\t\t\telm.remove();\r\n\r\n\t\t\t// Add/update/remove title\r\n\t\t\telm = headerFragment.getAll('title')[0];\r\n\t\t\tif (data.metatitle) {\r\n\t\t\t\tif (!elm) {\r\n\t\t\t\t\telm = new Node('title', 1);\r\n\t\t\t\t\telm.append(new Node('#text', 3)).value = data.metatitle;\r\n\t\t\t\t\taddHeadNode(elm);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Add meta encoding\r\n\t\t\tif (data.docencoding) {\r\n\t\t\t\telm = null;\r\n\t\t\t\teach(headerFragment.getAll('meta'), function(meta) {\r\n\t\t\t\t\tif (meta.attr('http-equiv') == 'Content-Type')\r\n\t\t\t\t\t\telm = meta;\r\n\t\t\t\t});\r\n\r\n\t\t\t\tif (!elm) {\r\n\t\t\t\t\telm = new Node('meta', 1);\r\n\t\t\t\t\telm.attr('http-equiv', 'Content-Type');\r\n\t\t\t\t\telm.shortEnded = true;\r\n\t\t\t\t\taddHeadNode(elm);\r\n\t\t\t\t}\r\n\r\n\t\t\t\telm.attr('content', 'text/html; charset=' + data.docencoding);\r\n\t\t\t}\r\n\r\n\t\t\t// Add/update/remove meta\r\n\t\t\teach('keywords,description,author,copyright,robots'.split(','), function(name) {\r\n\t\t\t\tvar nodes = headerFragment.getAll('meta'), i, meta, value = data['meta' + name];\r\n\r\n\t\t\t\tfor (i = 0; i < nodes.length; i++) {\r\n\t\t\t\t\tmeta = nodes[i];\r\n\r\n\t\t\t\t\tif (meta.attr('name') == name) {\r\n\t\t\t\t\t\tif (value)\r\n\t\t\t\t\t\t\tmeta.attr('content', value);\r\n\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\tmeta.remove();\r\n\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (value) {\r\n\t\t\t\t\telm = new Node('meta', 1);\r\n\t\t\t\t\telm.attr('name', name);\r\n\t\t\t\t\telm.attr('content', value);\r\n\t\t\t\t\telm.shortEnded = true;\r\n\r\n\t\t\t\t\taddHeadNode(elm);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t// Add/update/delete link\r\n\t\t\telm = headerFragment.getAll('link')[0];\r\n\t\t\tif (elm && elm.attr('rel') == 'stylesheet') {\r\n\t\t\t\tif (data.stylesheet)\r\n\t\t\t\t\telm.attr('href', data.stylesheet);\r\n\t\t\t\telse\r\n\t\t\t\t\telm.remove();\r\n\t\t\t} else if (data.stylesheet) {\r\n\t\t\t\telm = new Node('link', 1);\r\n\t\t\t\telm.attr({\r\n\t\t\t\t\trel : 'stylesheet',\r\n\t\t\t\t\ttext : 'text/css',\r\n\t\t\t\t\thref : data.stylesheet\r\n\t\t\t\t});\r\n\t\t\t\telm.shortEnded = true;\r\n\r\n\t\t\t\taddHeadNode(elm);\r\n\t\t\t}\r\n\r\n\t\t\t// Update body attributes\r\n\t\t\telm = headerFragment.getAll('body')[0];\r\n\t\t\tif (elm) {\r\n\t\t\t\tsetAttr(elm, 'dir', data.langdir);\r\n\t\t\t\tsetAttr(elm, 'style', data.style);\r\n\t\t\t\tsetAttr(elm, 'vlink', data.visited_color);\r\n\t\t\t\tsetAttr(elm, 'link', data.link_color);\r\n\t\t\t\tsetAttr(elm, 'alink', data.active_color);\r\n\r\n\t\t\t\t// Update iframe body as well\r\n\t\t\t\tdom.setAttribs(this.editor.getBody(), {\r\n\t\t\t\t\tstyle : data.style,\r\n\t\t\t\t\tdir : data.dir,\r\n\t\t\t\t\tvLink : data.visited_color,\r\n\t\t\t\t\tlink : data.link_color,\r\n\t\t\t\t\taLink : data.active_color\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\t// Set html attributes\r\n\t\t\telm = headerFragment.getAll('html')[0];\r\n\t\t\tif (elm) {\r\n\t\t\t\tsetAttr(elm, 'lang', data.langcode);\r\n\t\t\t\tsetAttr(elm, 'xml:lang', data.langcode);\r\n\t\t\t}\r\n\r\n\t\t\t// Serialize header fragment and crop away body part\r\n\t\t\thtml = new tinymce.html.Serializer({\r\n\t\t\t\tvalidate: false,\r\n\t\t\t\tindent: true,\r\n\t\t\t\tapply_source_formatting : true,\r\n\t\t\t\tindent_before: 'head,html,body,meta,title,script,link,style',\r\n\t\t\t\tindent_after: 'head,html,body,meta,title,script,link,style'\r\n\t\t\t}).serialize(headerFragment);\r\n\r\n\t\t\tthis.head = html.substring(0, html.indexOf('</body>'));\r\n\t\t},\r\n\r\n\t\t_parseHeader : function() {\r\n\t\t\t// Parse the contents with a DOM parser\r\n\t\t\treturn new tinymce.html.DomParser({\r\n\t\t\t\tvalidate: false,\r\n\t\t\t\troot_name: '#document'\r\n\t\t\t}).parse(this.head);\r\n\t\t},\r\n\r\n\t\t_setContent : function(ed, o) {\r\n\t\t\tvar self = this, startPos, endPos, content = o.content, headerFragment, styles = '', dom = self.editor.dom, elm;\r\n\r\n\t\t\tfunction low(s) {\r\n\t\t\t\treturn s.replace(/<\\/?[A-Z]+/g, function(a) {\r\n\t\t\t\t\treturn a.toLowerCase();\r\n\t\t\t\t})\r\n\t\t\t};\r\n\r\n\t\t\t// Ignore raw updated if we already have a head, this will fix issues with undo/redo keeping the head/foot separate\r\n\t\t\tif (o.format == 'raw' && self.head)\r\n\t\t\t\treturn;\r\n\r\n\t\t\tif (o.source_view && ed.getParam('fullpage_hide_in_source_view'))\r\n\t\t\t\treturn;\r\n\r\n\t\t\t// Parse out head, body and footer\r\n\t\t\tcontent = content.replace(/<(\\/?)BODY/gi, '<$1body');\r\n\t\t\tstartPos = content.indexOf('<body');\r\n\r\n\t\t\tif (startPos != -1) {\r\n\t\t\t\tstartPos = content.indexOf('>', startPos);\r\n\t\t\t\tself.head = low(content.substring(0, startPos + 1));\r\n\r\n\t\t\t\tendPos = content.indexOf('</body', startPos);\r\n\t\t\t\tif (endPos == -1)\r\n\t\t\t\t\tendPos = content.length;\r\n\r\n\t\t\t\to.content = content.substring(startPos + 1, endPos);\r\n\t\t\t\tself.foot = low(content.substring(endPos));\r\n\t\t\t} else {\r\n\t\t\t\tself.head = this._getDefaultHeader();\r\n\t\t\t\tself.foot = '\\n</body>\\n</html>';\r\n\t\t\t}\r\n\r\n\t\t\t// Parse header and update iframe\r\n\t\t\theaderFragment = self._parseHeader();\r\n\t\t\teach(headerFragment.getAll('style'), function(node) {\r\n\t\t\t\tif (node.firstChild)\r\n\t\t\t\t\tstyles += node.firstChild.value;\r\n\t\t\t});\r\n\r\n\t\t\telm = headerFragment.getAll('body')[0];\r\n\t\t\tif (elm) {\r\n\t\t\t\tdom.setAttribs(self.editor.getBody(), {\r\n\t\t\t\t\tstyle : elm.attr('style') || '',\r\n\t\t\t\t\tdir : elm.attr('dir') || '',\r\n\t\t\t\t\tvLink : elm.attr('vlink') || '',\r\n\t\t\t\t\tlink : elm.attr('link') || '',\r\n\t\t\t\t\taLink : elm.attr('alink') || ''\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tdom.remove('fullpage_styles');\r\n\r\n\t\t\tif (styles) {\r\n\t\t\t\tdom.add(self.editor.getDoc().getElementsByTagName('head')[0], 'style', {id : 'fullpage_styles'}, styles);\r\n\r\n\t\t\t\t// Needed for IE 6/7\r\n\t\t\t\telm = dom.get('fullpage_styles');\r\n\t\t\t\tif (elm.styleSheet)\r\n\t\t\t\t\telm.styleSheet.cssText = styles;\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t_getDefaultHeader : function() {\r\n\t\t\tvar header = '', editor = this.editor, value, styles = '';\r\n\r\n\t\t\tif (editor.getParam('fullpage_default_xml_pi'))\r\n\t\t\t\theader += '<?xml version=\"1.0\" encoding=\"' + editor.getParam('fullpage_default_encoding', 'ISO-8859-1') + '\" ?>\\n';\r\n\r\n\t\t\theader += editor.getParam('fullpage_default_doctype', '<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">');\r\n\t\t\theader += '\\n<html>\\n<head>\\n';\r\n\r\n\t\t\tif (value = editor.getParam('fullpage_default_title'))\r\n\t\t\t\theader += '<title>' + value + '</title>\\n';\r\n\r\n\t\t\tif (value = editor.getParam('fullpage_default_encoding'))\r\n\t\t\t\theader += '<meta http-equiv=\"Content-Type\" content=\"text/html; charset=' + value + '\" />\\n';\r\n\r\n\t\t\tif (value = editor.getParam('fullpage_default_font_family'))\r\n\t\t\t\tstyles += 'font-family: ' + value + ';';\r\n\r\n\t\t\tif (value = editor.getParam('fullpage_default_font_size'))\r\n\t\t\t\tstyles += 'font-size: ' + value + ';';\r\n\r\n\t\t\tif (value = editor.getParam('fullpage_default_text_color'))\r\n\t\t\t\tstyles += 'color: ' + value + ';';\r\n\r\n\t\t\theader += '</head>\\n<body' + (styles ? ' style=\"' + styles + '\"' : '') + '>\\n';\r\n\r\n\t\t\treturn header;\r\n\t\t},\r\n\r\n\t\t_getContent : function(ed, o) {\r\n\t\t\tvar self = this;\r\n\r\n\t\t\tif (!o.source_view || !ed.getParam('fullpage_hide_in_source_view'))\r\n\t\t\t\to.content = tinymce.trim(self.head) + '\\n' + tinymce.trim(o.content) + '\\n' + tinymce.trim(self.foot);\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('fullpage', tinymce.plugins.FullPagePlugin);\r\n})();\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/fullpage.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#fullpage_dlg.title}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/form_utils.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/fullpage.js\"></script>\r\n\t<link href=\"css/fullpage.css\" rel=\"stylesheet\" type=\"text/css\" />\r\n</head>\r\n<body id=\"fullpage\" style=\"display: none\">\r\n<form onsubmit=\"FullPageDialog.update();return false;\" name=\"fullpage\" action=\"#\">\r\n\t\t<div class=\"tabs\">\r\n\t\t\t<ul>\r\n\t\t\t\t<li id=\"meta_tab\" class=\"current\"><span><a href=\"javascript:mcTabs.displayTab('meta_tab','meta_panel');\" onmousedown=\"return false;\">{#fullpage_dlg.meta_tab}</a></span></li>\r\n\t\t\t\t<li id=\"appearance_tab\"><span><a href=\"javascript:mcTabs.displayTab('appearance_tab','appearance_panel');\" onmousedown=\"return false;\">{#fullpage_dlg.appearance_tab}</a></span></li>\r\n\t\t\t</ul>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"panel_wrapper\">\r\n\t\t\t<div id=\"meta_panel\" class=\"panel current\">\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#fullpage_dlg.meta_props}</legend>\r\n\r\n\t\t\t\t\t<table border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"nowrap\"><label for=\"metatitle\">{#fullpage_dlg.meta_title}</label>&nbsp;</td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"metatitle\" name=\"metatitle\" value=\"\" class=\"mceFocus\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"nowrap\"><label for=\"metakeywords\">{#fullpage_dlg.meta_keywords}</label>&nbsp;</td>\r\n\t\t\t\t\t\t\t<td><textarea id=\"metakeywords\" name=\"metakeywords\" rows=\"4\"></textarea></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"nowrap\"><label for=\"metadescription\">{#fullpage_dlg.meta_description}</label>&nbsp;</td>\r\n\t\t\t\t\t\t\t<td><textarea id=\"metadescription\" name=\"metadescription\" rows=\"4\"></textarea></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"nowrap\"><label for=\"metaauthor\">{#fullpage_dlg.author}</label>&nbsp;</td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"metaauthor\" name=\"metaauthor\" value=\"\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"nowrap\"><label for=\"metacopyright\">{#fullpage_dlg.copyright}</label>&nbsp;</td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"metacopyright\" name=\"metacopyright\" value=\"\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"nowrap\"><label for=\"metarobots\">{#fullpage_dlg.meta_robots}</label>&nbsp;</td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"metarobots\" name=\"metarobots\">\r\n\t\t\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t\t\t\t<option value=\"index,follow\">{#fullpage_dlg.meta_index_follow}</option>\r\n\t\t\t\t\t\t\t\t\t\t\t<option value=\"index,nofollow\">{#fullpage_dlg.meta_index_nofollow}</option>\r\n\t\t\t\t\t\t\t\t\t\t\t<option value=\"noindex,follow\">{#fullpage_dlg.meta_noindex_follow}</option>\r\n\t\t\t\t\t\t\t\t\t\t\t<option value=\"noindex,nofollow\">{#fullpage_dlg.meta_noindex_nofollow}</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#fullpage_dlg.langprops}</legend>\r\n\r\n\t\t\t\t\t<table border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"docencoding\">{#fullpage_dlg.encoding}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"docencoding\" name=\"docencoding\"> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"nowrap\"><label for=\"doctype\">{#fullpage_dlg.doctypes}</label>&nbsp;</td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"doctype\" name=\"doctype\">\r\n\t\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"nowrap\"><label for=\"langcode\">{#fullpage_dlg.langcode}</label>&nbsp;</td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"langcode\" name=\"langcode\" value=\"\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"langdir\">{#fullpage_dlg.langdir}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"langdir\" name=\"langdir\"> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"ltr\">{#fullpage_dlg.ltr}</option> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"rtl\">{#fullpage_dlg.rtl}</option> \r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"nowrap\"><label for=\"xml_pi\">{#fullpage_dlg.xml_pi}</label>&nbsp;</td>\r\n\t\t\t\t\t\t\t<td><input type=\"checkbox\" id=\"xml_pi\" name=\"xml_pi\" class=\"checkbox\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div id=\"appearance_panel\" class=\"panel\">\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#fullpage_dlg.appearance_textprops}</legend>\r\n\r\n\t\t\t\t\t<table border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"fontface\">{#fullpage_dlg.fontface}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"fontface\" name=\"fontface\" onchange=\"FullPageDialog.changedStyleProp();\">\r\n\t\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"fontsize\">{#fullpage_dlg.fontsize}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"fontsize\" name=\"fontsize\" onchange=\"FullPageDialog.changedStyleProp();\">\r\n\t\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"textcolor\">{#fullpage_dlg.textcolor}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input id=\"textcolor\" name=\"textcolor\" type=\"text\" value=\"\" size=\"9\" onchange=\"updateColor('textcolor_pick','textcolor');FullPageDialog.changedStyleProp();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"textcolor_pickcontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#fullpage_dlg.appearance_bgprops}</legend>\r\n\r\n\t\t\t\t\t<table border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"bgimage\">{#fullpage_dlg.bgimage}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input id=\"bgimage\" name=\"bgimage\" type=\"text\" value=\"\" onchange=\"FullPageDialog.changedStyleProp();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"bgimage_pickcontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"bgcolor\">{#fullpage_dlg.bgcolor}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input id=\"bgcolor\" name=\"bgcolor\" type=\"text\" value=\"\" size=\"9\" onchange=\"updateColor('bgcolor_pick','bgcolor');FullPageDialog.changedStyleProp();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"bgcolor_pickcontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#fullpage_dlg.appearance_marginprops}</legend>\r\n\r\n\t\t\t\t\t<table border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"leftmargin\">{#fullpage_dlg.left_margin}</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"leftmargin\" name=\"leftmargin\" type=\"text\" value=\"\" onchange=\"FullPageDialog.changedStyleProp();\" /></td>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"rightmargin\">{#fullpage_dlg.right_margin}</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"rightmargin\" name=\"rightmargin\" type=\"text\" value=\"\" onchange=\"FullPageDialog.changedStyleProp();\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"topmargin\">{#fullpage_dlg.top_margin}</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"topmargin\" name=\"topmargin\" type=\"text\" value=\"\" onchange=\"FullPageDialog.changedStyleProp();\" /></td>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"bottommargin\">{#fullpage_dlg.bottom_margin}</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"bottommargin\" name=\"bottommargin\" type=\"text\" value=\"\" onchange=\"FullPageDialog.changedStyleProp();\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#fullpage_dlg.appearance_linkprops}</legend>\r\n\r\n\t\t\t\t\t<table border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"link_color\">{#fullpage_dlg.link_color}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input id=\"link_color\" name=\"link_color\" type=\"text\" value=\"\" size=\"9\" onchange=\"updateColor('link_color_pick','link_color');FullPageDialog.changedStyleProp();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"link_color_pickcontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"visited_color\">{#fullpage_dlg.visited_color}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input id=\"visited_color\" name=\"visited_color\" type=\"text\" value=\"\" size=\"9\" onchange=\"updateColor('visited_color_pick','visited_color');FullPageDialog.changedStyleProp();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"visited_color_pickcontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"active_color\">{#fullpage_dlg.active_color}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input id=\"active_color\" name=\"active_color\" type=\"text\" value=\"\" size=\"9\" onchange=\"updateColor('active_color_pick','active_color');FullPageDialog.changedStyleProp();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"active_color_pickcontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td>&nbsp;</td>\r\n\t\t\t\t\t\t\t<td>&nbsp;</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#fullpage_dlg.appearance_style}</legend>\r\n\r\n\t\t\t\t\t<table border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"stylesheet\">{#fullpage_dlg.stylesheet}</label></td> \r\n\t\t\t\t\t\t\t<td><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input id=\"stylesheet\" name=\"stylesheet\" type=\"text\" value=\"\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"stylesheet_browsercontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"style\">{#fullpage_dlg.style}</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"style\" name=\"style\" type=\"text\" value=\"\" onchange=\"FullPageDialog.changedStyle();\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"mceActionPanel\">\r\n\t\t\t<input type=\"submit\" id=\"insert\" name=\"update\" value=\"{#update}\" />\r\n\t\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t\t</div>\r\n</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/js/fullpage.js",
    "content": "/**\r\n * fullpage.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\ttinyMCEPopup.requireLangPack();\r\n\r\n\tvar defaultDocTypes = \r\n\t\t'XHTML 1.0 Transitional=<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">,' +\r\n\t\t'XHTML 1.0 Frameset=<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Frameset//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd\">,' +\r\n\t\t'XHTML 1.0 Strict=<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">,' +\r\n\t\t'XHTML 1.1=<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.1//EN\" \"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd\">,' +\r\n\t\t'HTML 4.01 Transitional=<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">,' +\r\n\t\t'HTML 4.01 Strict=<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\" \"http://www.w3.org/TR/html4/strict.dtd\">,' +\r\n\t\t'HTML 4.01 Frameset=<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Frameset//EN\" \"http://www.w3.org/TR/html4/frameset.dtd\">';\r\n\r\n\tvar defaultEncodings = \r\n\t\t'Western european (iso-8859-1)=iso-8859-1,' +\r\n\t\t'Central European (iso-8859-2)=iso-8859-2,' +\r\n\t\t'Unicode (UTF-8)=utf-8,' +\r\n\t\t'Chinese traditional (Big5)=big5,' +\r\n\t\t'Cyrillic (iso-8859-5)=iso-8859-5,' +\r\n\t\t'Japanese (iso-2022-jp)=iso-2022-jp,' +\r\n\t\t'Greek (iso-8859-7)=iso-8859-7,' +\r\n\t\t'Korean (iso-2022-kr)=iso-2022-kr,' +\r\n\t\t'ASCII (us-ascii)=us-ascii';\r\n\r\n\tvar defaultFontNames = 'Arial=arial,helvetica,sans-serif;Courier New=courier new,courier,monospace;Georgia=georgia,times new roman,times,serif;Tahoma=tahoma,arial,helvetica,sans-serif;Times New Roman=times new roman,times,serif;Verdana=verdana,arial,helvetica,sans-serif;Impact=impact;WingDings=wingdings';\r\n\tvar defaultFontSizes = '10px,11px,12px,13px,14px,15px,16px';\r\n\r\n\tfunction setVal(id, value) {\r\n\t\tvar elm = document.getElementById(id);\r\n\r\n\t\tif (elm) {\r\n\t\t\tvalue = value || '';\r\n\r\n\t\t\tif (elm.nodeName == \"SELECT\")\r\n\t\t\t\tselectByValue(document.forms[0], id, value);\r\n\t\t\telse if (elm.type == \"checkbox\")\r\n\t\t\t\telm.checked = !!value;\r\n\t\t\telse\r\n\t\t\t\telm.value = value;\r\n\t\t}\r\n\t};\r\n\r\n\tfunction getVal(id) {\r\n\t\tvar elm = document.getElementById(id);\r\n\r\n\t\tif (elm.nodeName == \"SELECT\")\r\n\t\t\treturn elm.options[elm.selectedIndex].value;\r\n\r\n\t\tif (elm.type == \"checkbox\")\r\n\t\t\treturn elm.checked;\r\n\r\n\t\treturn elm.value;\r\n\t};\r\n\r\n\twindow.FullPageDialog = {\r\n\t\tchangedStyle : function() {\r\n\t\t\tvar val, styles = tinyMCEPopup.editor.dom.parseStyle(getVal('style'));\r\n\r\n\t\t\tsetVal('fontface', styles['font-face']);\r\n\t\t\tsetVal('fontsize', styles['font-size']);\r\n\t\t\tsetVal('textcolor', styles['color']);\r\n\r\n\t\t\tif (val = styles['background-image'])\r\n\t\t\t\tsetVal('bgimage', val.replace(new RegExp(\"url\\\\('?([^']*)'?\\\\)\", 'gi'), \"$1\"));\r\n\t\t\telse\r\n\t\t\t\tsetVal('bgimage', '');\r\n\r\n\t\t\tsetVal('bgcolor', styles['background-color']);\r\n\r\n\t\t\t// Reset margin form elements\r\n\t\t\tsetVal('topmargin', '');\r\n\t\t\tsetVal('rightmargin', '');\r\n\t\t\tsetVal('bottommargin', '');\r\n\t\t\tsetVal('leftmargin', '');\r\n\r\n\t\t\t// Expand margin\r\n\t\t\tif (val = styles['margin']) {\r\n\t\t\t\tval = val.split(' ');\r\n\t\t\t\tstyles['margin-top'] = val[0] || '';\r\n\t\t\t\tstyles['margin-right'] = val[1] || val[0] || '';\r\n\t\t\t\tstyles['margin-bottom'] = val[2] || val[0] || '';\r\n\t\t\t\tstyles['margin-left'] = val[3] || val[0] || '';\r\n\t\t\t}\r\n\r\n\t\t\tif (val = styles['margin-top'])\r\n\t\t\t\tsetVal('topmargin', val.replace(/px/, ''));\r\n\r\n\t\t\tif (val = styles['margin-right'])\r\n\t\t\t\tsetVal('rightmargin', val.replace(/px/, ''));\r\n\r\n\t\t\tif (val = styles['margin-bottom'])\r\n\t\t\t\tsetVal('bottommargin', val.replace(/px/, ''));\r\n\r\n\t\t\tif (val = styles['margin-left'])\r\n\t\t\t\tsetVal('leftmargin', val.replace(/px/, ''));\r\n\r\n\t\t\tupdateColor('bgcolor_pick', 'bgcolor');\r\n\t\t\tupdateColor('textcolor_pick', 'textcolor');\r\n\t\t},\r\n\r\n\t\tchangedStyleProp : function() {\r\n\t\t\tvar val, dom = tinyMCEPopup.editor.dom, styles = dom.parseStyle(getVal('style'));\r\n\t\r\n\t\t\tstyles['font-face'] = getVal('fontface');\r\n\t\t\tstyles['font-size'] = getVal('fontsize');\r\n\t\t\tstyles['color'] = getVal('textcolor');\r\n\t\t\tstyles['background-color'] = getVal('bgcolor');\r\n\r\n\t\t\tif (val = getVal('bgimage'))\r\n\t\t\t\tstyles['background-image'] = \"url('\" + val + \"')\";\r\n\t\t\telse\r\n\t\t\t\tstyles['background-image'] = '';\r\n\r\n\t\t\tdelete styles['margin'];\r\n\r\n\t\t\tif (val = getVal('topmargin'))\r\n\t\t\t\tstyles['margin-top'] = val + \"px\";\r\n\t\t\telse\r\n\t\t\t\tstyles['margin-top'] = '';\r\n\r\n\t\t\tif (val = getVal('rightmargin'))\r\n\t\t\t\tstyles['margin-right'] = val + \"px\";\r\n\t\t\telse\r\n\t\t\t\tstyles['margin-right'] = '';\r\n\r\n\t\t\tif (val = getVal('bottommargin'))\r\n\t\t\t\tstyles['margin-bottom'] = val + \"px\";\r\n\t\t\telse\r\n\t\t\t\tstyles['margin-bottom'] = '';\r\n\r\n\t\t\tif (val = getVal('leftmargin'))\r\n\t\t\t\tstyles['margin-left'] = val + \"px\";\r\n\t\t\telse\r\n\t\t\t\tstyles['margin-left'] = '';\r\n\r\n\t\t\t// Serialize, parse and reserialize this will compress redundant styles\r\n\t\t\tsetVal('style', dom.serializeStyle(dom.parseStyle(dom.serializeStyle(styles))));\r\n\t\t\tthis.changedStyle();\r\n\t\t},\r\n\t\t\r\n\t\tupdate : function() {\r\n\t\t\tvar data = {};\r\n\r\n\t\t\ttinymce.each(tinyMCEPopup.dom.select('select,input,textarea'), function(node) {\r\n\t\t\t\tdata[node.id] = getVal(node.id);\r\n\t\t\t});\r\n\r\n\t\t\ttinyMCEPopup.editor.plugins.fullpage._dataToHtml(data);\r\n\t\t\ttinyMCEPopup.close();\r\n\t\t}\r\n\t};\r\n\t\r\n\tfunction init() {\r\n\t\tvar form = document.forms[0], i, item, list, editor = tinyMCEPopup.editor;\r\n\r\n\t\t// Setup doctype select box\r\n\t\tlist = editor.getParam(\"fullpage_doctypes\", defaultDocTypes).split(',');\r\n\t\tfor (i = 0; i < list.length; i++) {\r\n\t\t\titem = list[i].split('=');\r\n\r\n\t\t\tif (item.length > 1)\r\n\t\t\t\taddSelectValue(form, 'doctype', item[0], item[1]);\r\n\t\t}\r\n\r\n\t\t// Setup fonts select box\r\n\t\tlist = editor.getParam(\"fullpage_fonts\", defaultFontNames).split(';');\r\n\t\tfor (i = 0; i < list.length; i++) {\r\n\t\t\titem = list[i].split('=');\r\n\r\n\t\t\tif (item.length > 1)\r\n\t\t\t\taddSelectValue(form, 'fontface', item[0], item[1]);\r\n\t\t}\r\n\r\n\t\t// Setup fontsize select box\r\n\t\tlist = editor.getParam(\"fullpage_fontsizes\", defaultFontSizes).split(',');\r\n\t\tfor (i = 0; i < list.length; i++)\r\n\t\t\taddSelectValue(form, 'fontsize', list[i], list[i]);\r\n\r\n\t\t// Setup encodings select box\r\n\t\tlist = editor.getParam(\"fullpage_encodings\", defaultEncodings).split(',');\r\n\t\tfor (i = 0; i < list.length; i++) {\r\n\t\t\titem = list[i].split('=');\r\n\r\n\t\t\tif (item.length > 1)\r\n\t\t\t\taddSelectValue(form, 'docencoding', item[0], item[1]);\r\n\t\t}\r\n\r\n\t\t// Setup color pickers\r\n\t\tdocument.getElementById('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor');\r\n\t\tdocument.getElementById('link_color_pickcontainer').innerHTML = getColorPickerHTML('link_color_pick','link_color');\r\n\t\tdocument.getElementById('visited_color_pickcontainer').innerHTML = getColorPickerHTML('visited_color_pick','visited_color');\r\n\t\tdocument.getElementById('active_color_pickcontainer').innerHTML = getColorPickerHTML('active_color_pick','active_color');\r\n\t\tdocument.getElementById('textcolor_pickcontainer').innerHTML = getColorPickerHTML('textcolor_pick','textcolor');\r\n\t\tdocument.getElementById('stylesheet_browsercontainer').innerHTML = getBrowserHTML('stylesheetbrowser','stylesheet','file','fullpage');\r\n\t\tdocument.getElementById('bgimage_pickcontainer').innerHTML = getBrowserHTML('bgimage_browser','bgimage','image','fullpage');\r\n\r\n\t\t// Resize some elements\r\n\t\tif (isVisible('stylesheetbrowser'))\r\n\t\t\tdocument.getElementById('stylesheet').style.width = '220px';\r\n\r\n\t\tif (isVisible('link_href_browser'))\r\n\t\t\tdocument.getElementById('element_link_href').style.width = '230px';\r\n\r\n\t\tif (isVisible('bgimage_browser'))\r\n\t\t\tdocument.getElementById('bgimage').style.width = '210px';\r\n\r\n\t\t// Update form\r\n\t\ttinymce.each(tinyMCEPopup.getWindowArg('data'), function(value, key) {\r\n\t\t\tsetVal(key, value);\r\n\t\t});\r\n\r\n\t\tFullPageDialog.changedStyle();\r\n\r\n\t\t// Update colors\r\n\t\tupdateColor('textcolor_pick', 'textcolor');\r\n\t\tupdateColor('bgcolor_pick', 'bgcolor');\r\n\t\tupdateColor('visited_color_pick', 'visited_color');\r\n\t\tupdateColor('active_color_pick', 'active_color');\r\n\t\tupdateColor('link_color_pick', 'link_color');\r\n\t};\r\n\r\n\ttinyMCEPopup.onInit.add(init);\r\n})();\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/ar_dlg.js",
    "content": "tinyMCE.addI18n('ar.fullpage_dlg',{title:\"Document properties\",meta_tab:\"\\u0639\\u0627\\u0645\",appearance_tab:\"Appearance\",advanced_tab:\"Advanced\",meta_props:\"Meta information\",langprops:\"Language and encoding\",meta_title:\"Title\",meta_keywords:\"Keywords\",meta_description:\"Description\",meta_robots:\"Robots\",doctypes:\"Doctype\",langcode:\"Language code\",langdir:\"Language direction\",ltr:\"Left to right\",rtl:\"Right to left\",xml_pi:\"XML declaration\",encoding:\"Character encoding\",appearance_bgprops:\"Background properties\",appearance_marginprops:\"Body margins\",appearance_linkprops:\"Link colors\",appearance_textprops:\"Text properties\",bgcolor:\"Background color\",bgimage:\"Background image\",left_margin:\"Left margin\",right_margin:\"Right margin\",top_margin:\"Top margin\",bottom_margin:\"Bottom margin\",text_color:\"Text color\",font_size:\"Font size\",font_face:\"Font face\",link_color:\"Link color\",hover_color:\"Hover color\",visited_color:\"Visited color\",active_color:\"Active color\",textcolor:\"Color\",fontsize:\"Font size\",fontface:\"Font family\",meta_index_follow:\"Index and follow the links\",meta_index_nofollow:\"Index and don\\'t follow the links\",meta_noindex_follow:\"Do not index but follow the links\",meta_noindex_nofollow:\"Do not index and don\\\\\\'t follow the links\",appearance_style:\"Stylesheet and style properties\",stylesheet:\"Stylesheet\",style:\"Style\",author:\"Author\",copyright:\"Copyright\",add:\"Add new element\",remove:\"Remove selected element\",moveup:\"Move selected element up\",movedown:\"Move selected element down\",head_elements:\"Head elements\",info:\"Information\",add_title:\"Title element\",add_meta:\"Meta element\",add_script:\"Script element\",add_style:\"Style element\",add_link:\"Link element\",add_base:\"Base element\",add_comment:\"Comment node\",title_element:\"Title element\",script_element:\"Script element\",style_element:\"Style element\",base_element:\"Base element\",link_element:\"Link element\",meta_element:\"Meta element\",comment_element:\"Comment\",src:\"Src\",language:\"Language\",href:\"Href\",target:\"Target\",type:\"Type\",charset:\"Charset\",defer:\"Defer\",media:\"Media\",properties:\"Properties\",name:\"Name\",value:\"Value\",content:\"Content\",rel:\"Rel\",rev:\"Rev\",hreflang:\"Href lang\",general_props:\"\\u0639\\u0627\\u0645\",advanced_props:\"Advanced\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/az_dlg.js",
    "content": "tinyMCE.addI18n('az.fullpage_dlg',{title:\"S\\u0259n\\u0259d x\\u00fcsusiyy\\u0259tl\\u0259ri\",\"meta_tab\":\"\\u00dcmumi\",\"appearance_tab\":\"G\\u00f6r\\u00fcn\\u00fc\\u015f\",\"advanced_tab\":\"\\u018flav\\u0259l\\u0259r\",\"meta_props\":\"Meta m\\u0259lumat\",langprops:\"Dil v\\u0259 kodla\\u015fd\\u0131rma\",\"meta_title\":\"Ba\\u015fl\\u0131q\",\"meta_keywords\":\"A\\u00e7ar s\\u00f6zl\\u0259ri\",\"meta_description\":\"T\\u0259svir\",\"meta_robots\":\"Robotlar\",doctypes:\"S\\u0259n\\u0259d n\\u00f6v\\u00fc\",langcode:\"Dil kodu\",langdir:\"Dil istiqam\\u0259ti\",ltr:\"Soldan sa\\u011fa\",rtl:\"Sa\\u011fdan sola\",\"xml_pi\":\"XML t\\u0259rifi\",encoding:\"\\u0130\\u015far\\u0259 kodla\\u015fd\\u0131rmas\\u0131\",\"appearance_bgprops\":\"Arxa plan x\\u00fcsusiyy\\u0259tl\\u0259ri\",\"appearance_marginprops\":\"G\\u00f6vd\\u0259 k\\u0259narlar\\u0131\",\"appearance_linkprops\":\"Ke\\u00e7id r\\u0259ngl\\u0259ri\",\"appearance_textprops\":\"M\\u0259tn x\\u00fcsusiyy\\u0259tl\\u0259ri\",bgcolor:\"Arxa plan r\\u0259ngi\",bgimage:\"Arxa plan \\u015f\\u0259kli\",\"left_margin\":\"Sol bo\\u015fluq\",\"right_margin\":\"Sa\\u011f bo\\u015fluq\",\"top_margin\":\"\\u00dcst bo\\u015fluq\",\"bottom_margin\":\"Alt bo\\u015fluq\",\"text_color\":\"M\\u0259tn r\\u0259ngi\",\"font_size\":\"\\u015erift \\u00f6l\\u00e7\\u00fcs\\u00fc\",\"font_face\":\"\\u015erift n\\u00f6v\\u00fc\",\"link_color\":\"Ke\\u00e7id r\\u0259ngi\",\"hover_color\":\"\\u00dcz\\u0259rind\\u0259ki r\\u0259ng\",\"visited_color\":\"Bax\\u0131lm\\u0131\\u015f r\\u0259ng\",\"active_color\":\"Aktiv r\\u0259ng\",textcolor:\"R\\u0259ng\",fontsize:\"\\u015erift \\u00f6l\\u00e7\\u00fcs\\u00fc\",fontface:\"\\u015erift ail\\u0259si\",\"meta_index_follow\":\"\\u0130ndeks et v\\u0259 ke\\u00e7idi izl\\u0259\",\"meta_index_nofollow\":\"\\u0130ndeks et lakin ke\\u00e7idi izl\\u0259m\\u0259\",\"meta_noindex_follow\":\"\\u0130ndeks etm\\u0259 lakin ke\\u00e7idi izl\\u0259\",\"meta_noindex_nofollow\":\"\\u0130ndeks etm\\u0259 v\\u0259 ke\\u00e7idl\\u0259ri izl\\u0259m\\u0259\",\"appearance_style\":\"Stil v\\u0259r\\u0259qi v\\u0259 x\\u00fcsusiyy\\u0259tl\\u0259ri\",stylesheet:\"Stil v\\u0259r\\u0259qi\",style:\"Stil\",author:\"M\\u00fc\\u0259llif\",copyright:\"M\\u00fc\\u0259llif h\\u00fcququ\",add:\"Yeni element \\u0259lav\\u0259 et\",remove:\"Se\\u00e7ilmi\\u015f elementi sil\",moveup:\"Se\\u00e7il\\u0259n elementi yuxar\\u0131 \\u00e7\\u0259k\",movedown:\"Se\\u00e7il\\u0259n elementi a\\u015fa\\u011f\\u0131 \\u00e7\\u0259k\",\"head_elements\":\"Ba\\u015f elementl\\u0259r\",info:\"M\\u0259lumat\",\"add_title\":\"Ba\\u015fl\\u0131q elementi\",\"add_meta\":\"Meta elementi\",\"add_script\":\"Skript elementi\",\"add_style\":\"Stil elementi\",\"add_link\":\"Ke\\u00e7id elementi\",\"add_base\":\"Baza elementi\",\"add_comment\":\"\\u015e\\u0259rh d\\u00fcy\\u00fcn\\u00fc\",\"title_element\":\"Ba\\u015fl\\u0131q elementi\",\"script_element\":\"Skript elementi\",\"style_element\":\"Stil elementi\",\"base_element\":\"Baza elementi\",\"link_element\":\"Ke\\u00e7id elementi\",\"meta_element\":\"Meta elementi\",\"comment_element\":\"\\u015e\\u0259rh\",src:\"Src\",language:\"Dil\",href:\"Href\",target:\"H\\u0259d\\u0259f\",type:\"N\\u00f6v\",charset:\"\\u00c7arset\",defer:\"T\\u0259xir\\u0259 sal\",media:\"Media\",properties:\"X\\u00fcsusiyy\\u0259tl\\u0259r\",name:\"Ad\\u0131\",value:\"D\\u0259y\\u0259r\",content:\"M\\u0259zmun\",rel:\"Rel\",rev:\"Rev\",hreflang:\"Href dili\",\"general_props\":\"\\u00dcmumi\",\"advanced_props\":\"\\u018flav\\u0259l\\u0259r\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/be_dlg.js",
    "content": "tinyMCE.addI18n('be.fullpage_dlg',{title:\"\\u0423\\u043b\\u0430\\u0441\\u0446\\u0456\\u0432\\u0430\\u0441\\u0446\\u0456 \\u0434\\u0430\\u043a\\u0443\\u043c\\u0435\\u043d\\u0442\\u0443\",\"meta_tab\":\"\\u0410\\u0433\\u0443\\u043b\\u044c\\u043d\\u044b\\u044f\",\"appearance_tab\":\"\\u0412\\u0456\\u0434\",\"advanced_tab\":\"\\u0414\\u0430\\u0434\\u0430\\u0442\\u043a\\u043e\\u0432\\u0430\",\"meta_props\":\"\\u041c\\u044d\\u0442\\u0430 \\u0456\\u043d\\u0444\\u0430\\u0440\\u043c\\u0430\\u0446\\u044b\\u0456\",langprops:\"\\u041c\\u043e\\u0432\\u0430 \\u0456 \\u043a\\u0430\\u0434\\u0437\\u0456\\u0440\\u043e\\u045e\\u043a\\u0456\",\"meta_title\":\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u043e\\u0432\\u0430\\u043a\",\"meta_keywords\":\"\\u0410\\u0441\\u043d\\u043e\\u045e\\u043d\\u044b\\u044f \\u0441\\u043b\\u043e\\u0432\\u044b\",\"meta_description\":\"\\u0410\\u043f\\u0456\\u0441\\u0430\\u043d\\u043d\\u0435\",\"meta_robots\":\"\\u0420\\u043e\\u0431\\u0430\\u0442\\u044b\",doctypes:\"\\u0422\\u044b\\u043f\",langcode:\"\\u041a\\u043e\\u0434 \\u043c\\u043e\\u0432\\u044b\",langdir:\"\\u041d\\u0430\\u043f\\u0440\\u0430\\u043c\\u0430\\u043a \\u0442\\u044d\\u043a\\u0441\\u0442\\u0443\",ltr:\"\\u0417\\u043b\\u0435\\u0432\\u0430 \\u043d\\u0430\\u043f\\u0440\\u0430\\u0432\\u0430\",rtl:\"\\u0421\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043d\\u0430\\u043b\\u0435\\u0432\\u0430\",\"xml_pi\":\"\\u0410\\u0431\\'\\u044f\\u045e\\u043b\\u0435\\u043d\\u043d\\u0435 XML\",encoding:\"\\u041a\\u0430\\u0434\\u0437\\u0456\\u0440\\u043e\\u045e\\u043a\\u0430\",\"appearance_bgprops\":\"\\u0423\\u043b\\u0430\\u0441\\u0446\\u0456\\u0432\\u0430\\u0441\\u0446\\u0456 \\u0444\\u043e\\u043d\\u0443\",\"appearance_marginprops\":\"\\u0412\\u043e\\u0434\\u0441\\u0442\\u0443\\u043f\\u044b\",\"appearance_linkprops\":\"\\u041a\\u043e\\u043b\\u0435\\u0440 \\u0441\\u043f\\u0430\\u0441\\u044b\\u043b\\u0430\\u043a\",\"appearance_textprops\":\"\\u0423\\u043b\\u0430\\u0441\\u0446\\u0456\\u0432\\u0430\\u0441\\u0446\\u0456 \\u0442\\u044d\\u043a\\u0441\\u0442\\u0443\",bgcolor:\"\\u041a\\u043e\\u043b\\u0435\\u0440 \\u0444\\u043e\\u043d\\u0443\",bgimage:\"\\u0424\\u043e\\u043d\\u0430\\u0432\\u044b \\u043c\\u0430\\u043b\\u044e\\u043d\\u0430\\u043a\",\"left_margin\":\"\\u0412\\u043e\\u0434\\u0441\\u0442\\u0443\\u043f \\u0437\\u043b\\u0435\\u0432\\u0430\",\"right_margin\":\"\\u0412\\u043e\\u0434\\u0441\\u0442\\u0443\\u043f \\u0441\\u043f\\u0440\\u0430\\u0432\\u0430\",\"top_margin\":\"\\u0412\\u043e\\u0434\\u0441\\u0442\\u0443\\u043f \\u0437\\u0432\\u0435\\u0440\\u0445\\u0443\",\"bottom_margin\":\"\\u0412\\u043e\\u0434\\u0441\\u0442\\u0443\\u043f \\u0437\\u043d\\u0456\\u0437\\u0443\",\"text_color\":\"\\u041a\\u043e\\u043b\\u0435\\u0440 \\u0442\\u044d\\u043a\\u0441\\u0442\\u0443\",\"font_size\":\"\\u041f\\u0430\\u043c\\u0435\\u0440 \\u0448\\u0440\\u044b\\u0444\\u0442\\u0430\",\"font_face\":\"\\u0428\\u0440\\u044b\\u0444\\u0442\",\"link_color\":\"\\u041a\\u043e\\u043b\\u0435\\u0440 \\u0441\\u043f\\u0430\\u0441\\u044b\\u043b\\u043a\\u0456\",\"hover_color\":\"\\u041a\\u043e\\u043b\\u0435\\u0440 \\u0441\\u043f\\u0430\\u0441\\u044b\\u043b\\u043a\\u0456 \\u043f\\u0440\\u044b \\u043d\\u0430\\u0432\\u044f\\u0434\\u0437\\u0435\\u043d\\u043d\\u0456\",\"visited_color\":\"\\u041a\\u043e\\u043b\\u0435\\u0440 \\u043d\\u0430\\u0446\\u0456\\u0441\\u043d\\u0443\\u0442\\u0430\\u0439 \\u0441\\u043f\\u0430\\u0441\\u044b\\u043b\\u043a\\u0456\",\"active_color\":\"\\u041a\\u043e\\u043b\\u0435\\u0440 \\u0430\\u043a\\u0442\\u044b\\u045e\\u043d\\u0430\\u0439 \\u0441\\u043f\\u0430\\u0441\\u044b\\u043b\\u043a\\u0456\",textcolor:\"\\u041a\\u043e\\u043b\\u0435\\u0440\",fontsize:\"\\u041f\\u0430\\u043c\\u0435\\u0440 \\u0448\\u0440\\u044b\\u0444\\u0442\\u0430\",fontface:\"\\u0421\\u044f\\u043c\\u0435\\u0439\\u0441\\u0442\\u0432\\u0430 \\u0448\\u0440\\u044b\\u0444\\u0442\\u043e\\u045e\",\"meta_index_follow\":\"Index and follow the links\",\"meta_index_nofollow\":\"Index and don\\'t follow the links\",\"meta_noindex_follow\":\"Do not index but follow the links\",\"meta_noindex_nofollow\":\"Do not index and don\\\\\\'t follow the links\",\"appearance_style\":\"\\u041b\\u0456\\u0441\\u0442 \\u0456 \\u045e\\u043b\\u0430\\u0441\\u0446\\u0456\\u0432\\u0430\\u0441\\u0446\\u0456 \\u0441\\u0442\\u044b\\u043b\\u044f\\u045e\",stylesheet:\"\\u041b\\u0456\\u0441\\u0442 \\u0441\\u0442\\u044b\\u043b\\u044f\\u045e\",style:\"\\u0421\\u0442\\u044b\\u043b\\u044c\",author:\"\\u0410\\u045e\\u0442\\u0430\\u0440\",copyright:\"\\u041a\\u0430\\u043f\\u0456\\u0440\\u0430\\u0439\\u0442\",add:\"\\u0414\\u0430\\u0434\\u0430\\u0446\\u044c \\u043d\\u043e\\u0432\\u044b \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\",remove:\"\\u0412\\u044b\\u0434\\u0430\\u043b\\u0456\\u0446\\u044c \\u0432\\u044b\\u043b\\u0443\\u0447\\u0430\\u043d\\u044b \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\",moveup:\"\\u041f\\u0435\\u0440\\u0430\\u043c\\u044f\\u0441\\u0446\\u0456\\u0446\\u044c \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 \\u0443\\u0432\\u0435\\u0440\\u0445\",movedown:\"\\u041f\\u0435\\u0440\\u0430\\u043c\\u044f\\u0441\\u0446\\u0456\\u0446\\u044c \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 \\u0443\\u043d\\u0456\\u0437\",\"head_elements\":\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Header\",info:\"\\u0406\\u043d\\u0444\\u0430\\u0440\\u043c\\u0430\\u0446\\u044b\\u044f\",\"add_title\":\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Title\",\"add_meta\":\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Meta\",\"add_script\":\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Script\",\"add_style\":\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Style\",\"add_link\":\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Link\",\"add_base\":\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Base\",\"add_comment\":\"\\u041a\\u0430\\u043c\\u0435\\u043d\\u0442\\u0430\\u0440\\u044b\\u0439\",\"title_element\":\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Title\",\"script_element\":\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Script\",\"style_element\":\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Style\",\"base_element\":\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Base\",\"link_element\":\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Link\",\"meta_element\":\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Meta\",\"comment_element\":\"\\u041a\\u0430\\u043c\\u0435\\u043d\\u0442\\u0430\\u0440\\u044b\\u0439\",src:\"Src\",language:\"\\u041c\\u043e\\u0432\\u0430\",href:\"\\u0421\\u043f\\u0430\\u0441\\u044b\\u043b\\u043a\\u0430\",target:\"\\u041c\\u044d\\u0442\\u0430\",type:\"\\u0422\\u044b\\u043f\",charset:\"\\u041a\\u0430\\u0434\\u0437\\u0456\\u0440\\u043e\\u045e\\u043a\\u0430\",defer:\"\\u0410\\u0434\\u0442\\u044d\\u0440\\u043c\\u0456\\u043d\\u043e\\u045e\\u043a\\u0430\",media:\"\\u041c\\u0435\\u0434\\u044b\\u044f\",properties:\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b\",name:\"\\u041d\\u0430\\u0437\\u0432\\u0430\",value:\"\\u0417\\u043d\\u0430\\u0447\\u044d\\u043d\\u043d\\u0435\",content:\"\\u0417\\u043c\\u0435\\u0441\\u0446\\u0456\\u0432\\u0430\",rel:\"Rel\",rev:\"Rev\",hreflang:\"\\u041c\\u043e\\u0432\\u0430 \\u0441\\u043f\\u0430\\u0441\\u044b\\u043b\\u043a\\u0456\",\"general_props\":\"\\u0410\\u0433\\u0443\\u043b\\u044c\\u043d\\u0430\\u0435\",\"advanced_props\":\"\\u0414\\u0430\\u0434\\u0430\\u0442\\u043a\\u043e\\u0432\\u0430\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/cs_dlg.js",
    "content": "tinyMCE.addI18n('cs.fullpage_dlg',{title:\"Vlastnosti dokumentu\",meta_tab:\"Obecn\\u00e9\",appearance_tab:\"Vzhled\",advanced_tab:\"Roz\\u0161\\u00ed\\u0159en\\u00e9\",meta_props:\"Meta informace\",langprops:\"Jazyk a k\\u00f3dov\\u00e1n\\u00ed\",meta_title:\"Titulek\",meta_keywords:\"Kl\\u00ed\\u010dov\\u00e1 slova\",meta_description:\"Popis\",meta_robots:\"Roboti\",doctypes:\"Typ dokumentu\",langcode:\"K\\u00f3d jazyka\",langdir:\"Sm\\u011br textu\",ltr:\"Zleva doprava\",rtl:\"Zprava doleva\",xml_pi:\"XML deklarace\",encoding:\"K\\u00f3dov\\u00e1n\\u00ed\",appearance_bgprops:\"Vlastnosti pozad\\u00ed\",appearance_marginprops:\"Okraje t\\u011bla dokumentu\",appearance_linkprops:\"Vlastnosti odkaz\\u016f\",appearance_textprops:\"Vlastnosti textu\",bgcolor:\"Barva pozad\\u00ed\",bgimage:\"Obr\\u00e1zek pozad\\u00ed\",left_margin:\"Lev\\u00fd okraj\",right_margin:\"Prav\\u00fd okraj\",top_margin:\"Horn\\u00ed okraj\",bottom_margin:\"Spodn\\u00ed okraj\",text_color:\"Barva textu\",font_size:\"Velikost p\\u00edsma\",font_face:\"Typ p\\u00edsma\",link_color:\"Barva odkazu\",hover_color:\"Barva zvolen\\u00e9ho odkazu\",visited_color:\"Barva nav\\u0161t\\u00edven\\u00e9ho odkazu\",active_color:\"Barva aktivn\\u00edho odkazu\",textcolor:\"Barva\",fontsize:\"Velikost p\\u00edsma\",fontface:\"Typ p\\u00edsma\",meta_index_follow:\"Indexovat a sledovat odkazy\",meta_index_nofollow:\"Indexovat a nesledovat odkazy\",meta_noindex_follow:\"Neindexovat, ale sledovat odkazy\",meta_noindex_nofollow:\"Neindexovat a nesledovat odkazy\",appearance_style:\"Vlastnosti styl\\u016f\",stylesheet:\"Stylopis\",style:\"Styl\",author:\"Autor\",copyright:\"Autorsk\\u00e1 pr\\u00e1va\",add:\"P\\u0159idat nov\\u00fd element\",remove:\"Odebrat ozna\\u010den\\u00fd element\",moveup:\"P\\u0159esu\\u0148 ozna\\u010den\\u00fd element v\\u00fd\\u0161\",movedown:\"P\\u0159esu\\u0148 ozna\\u010den\\u00fd element n\\u00ed\\u017e\",head_elements:\"Hlavi\\u010dky\",info:\"Informace\",add_title:\"Vlo\\u017eit titulek\",add_meta:\"Vlo\\u017eit meta informace\",add_script:\"Vlo\\u017eit skript\",add_style:\"Vlo\\u017eit styl\",add_link:\"Vlo\\u017eit nezobrazovan\\u00fd odkaz\",add_base:\"Vlo\\u017eit z\\u00e1kladn\\u00ed um\\u00edst\\u011bn\\u00ed\",add_comment:\"Vlo\\u017eit koment\\u00e1\\u0159\",title_element:\"Titulek\",script_element:\"Skript\",style_element:\"Styl\",base_element:\"Z\\u00e1kladn\\u00ed um\\u00edst\\u011bn\\u00ed\",link_element:\"Nezobrazovan\\u00fd odkaz\",meta_element:\"Meta informace\",comment_element:\"Koment\\u00e1\\u0159\",src:\"Zdroj\",language:\"Jazyk\",href:\"Soubor/URL\",target:\"C\\u00edl\",type:\"Typ\",charset:\"Znakov\\u00e1 sada\",defer:\"Odlo\\u017eit (defer)\",media:\"M\\u00e9dia\",properties:\"Vlastnosti\",name:\"N\\u00e1zev\",value:\"Hodnota\",content:\"Obsah\",rel:\"Vztah str\\u00e1nky k c\\u00edli\",rev:\"Vztah c\\u00edle ke str\\u00e1nce\",hreflang:\"Jazyk odkazu\",general_props:\"Obecn\\u00e9 parametry\",advanced_props:\"Roz\\u0161\\u00ed\\u0159en\\u00e9 parametry\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/da_dlg.js",
    "content": "tinyMCE.addI18n('da.fullpage_dlg',{title:\"Dokumentegenskaber\",\"meta_tab\":\"Generelt\",\"appearance_tab\":\"Udseende\",\"advanced_tab\":\"Advanceret\",\"meta_props\":\"Meta-information\",langprops:\"Sprog og kodning\",\"meta_title\":\"Titel\",\"meta_keywords\":\"N\\u00f8gleord\",\"meta_description\":\"Beskrivelse\",\"meta_robots\":\"Robots\",doctypes:\"Doctype\",langcode:\"Sprogkode\",langdir:\"Sprogretning\",ltr:\"Venstre mod h\\u00f8jre\",rtl:\"H\\u00f8jre md venstre\",\"xml_pi\":\"XML declaration\",encoding:\"Tegns\\u00e6t\",\"appearance_bgprops\":\"Baggrundsegenskaber\",\"appearance_marginprops\":\"Body margins\",\"appearance_linkprops\":\"Link farver\",\"appearance_textprops\":\"Tekstegenskaber\",bgcolor:\"Baggrundsfarve\",bgimage:\"Baggrundsbillede\",\"left_margin\":\"Venstre margin\",\"right_margin\":\"H\\u00f8jre margin\",\"top_margin\":\"Topmargin\",\"bottom_margin\":\"Bundmargin\",\"text_color\":\"Tekstfarve\",\"font_size\":\"Skriftst\\u00f8rrelse\",\"font_face\":\"Skrifttype\",\"link_color\":\"Linkfarve\",\"hover_color\":\"Farve ved aktivering\",\"visited_color\":\"Farve efter museklik\",\"active_color\":\"Farve ved museklik\",textcolor:\"Farve\",fontsize:\"Skriftst\\u00f8rrelse\",fontface:\"Skrifttype\",\"meta_index_follow\":\"Indeks og f\\u00f8lg links\",\"meta_index_nofollow\":\"Indeks og f\\u00f8lg ikke links\",\"meta_noindex_follow\":\"Ingen indeks, men f\\u00f8lg links\",\"meta_noindex_nofollow\":\"Ingen indeks og f\\u00f8lg ikke links\",\"appearance_style\":\"Stylesheet og style-egenskaber\",stylesheet:\"Stylesheet\",style:\"Style\",author:\"Forfatter\",copyright:\"Copyright\",add:\"Tilf\\u00f8j nyt element\",remove:\"Slet valgte element\",moveup:\"Flyt valgte element op\",movedown:\"Flyt valgte element ned\",\"head_elements\":\"Hovedelement\",info:\"Information\",\"add_title\":\"Titelelement\",\"add_meta\":\"Meta-element\",\"add_script\":\"Script-element\",\"add_style\":\"Style-element\",\"add_link\":\"Link-element\",\"add_base\":\"Base-element\",\"add_comment\":\"Kommentar-node\",\"title_element\":\"Titelelement\",\"script_element\":\"Script-element\",\"style_element\":\"Style-element\",\"base_element\":\"Base-element\",\"link_element\":\"Link-element\",\"meta_element\":\"Meta-element\",\"comment_element\":\"Kommentar\",src:\"Src\",language:\"Sprog\",href:\"Href\",target:\"Destination\",type:\"Type\",charset:\"Tegns\\u00e6t\",defer:\"Defer\",media:\"Media\",properties:\"Egenskaber\",name:\"Navn\",value:\"V\\u00e6rdi\",content:\"Indhold\",rel:\"Rel\",rev:\"Rev\",hreflang:\"Href lang\",\"general_props\":\"Generelt\",\"advanced_props\":\"Advanceret\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/de_dlg.js",
    "content": "tinyMCE.addI18n('de.fullpage_dlg',{title:\"Dokument-Eigenschaften\",meta_tab:\"Allgemein\",appearance_tab:\"Aussehen\",advanced_tab:\"Erweitert\",meta_props:\"Meta-Information\",langprops:\"Sprache und Codierung\",meta_title:\"Titel\",meta_keywords:\"Keywords\",meta_description:\"Beschreibung\",meta_robots:\"Robots\",doctypes:\"DocType\",langcode:\"Sprachcode\",langdir:\"Sprachrichtung\",ltr:\"Links nach Rechts\",rtl:\"Rechts nach Links\",xml_pi:\"XML Deklaration\",encoding:\"Zeichencodierung\",appearance_bgprops:\"Hintergrund-Eigenschaften\",appearance_marginprops:\"Abst\\u00e4nde des Body\",appearance_linkprops:\"Linkfarben\",appearance_textprops:\"Text-Eigenschaften\",bgcolor:\"Hintergrundfarbe\",bgimage:\"Hintergrundbild\",left_margin:\"Linker Abstand\",right_margin:\"Rechter Abstand\",top_margin:\"Oberer Abstand\",bottom_margin:\"Unterer Abstand\",text_color:\"Textfarbe\",font_size:\"Schriftgr\\u00f6\\u00dfe\",font_face:\"Schriftart\",link_color:\"Linkfarbe\",hover_color:\"Hover-Farbe\",visited_color:\"Visited-Farbe\",active_color:\"Active-Farbe\",textcolor:\"Farbe\",fontsize:\"Schriftgr\\u00f6\\u00dfe\",fontface:\"Schriftart\",meta_index_follow:\"Indizieren und den Links folgen\",meta_index_nofollow:\"Indizieren, aber den Links nicht folgen\",meta_noindex_follow:\"Nicht indizieren, aber den Links folgen\",meta_noindex_nofollow:\"Nicht indizieren und auch nicht den Links folgen\",appearance_style:\"CSS-Stylesheet und Stileigenschaften\",stylesheet:\"CSS-Stylesheet\",style:\"CSS-Stil\",author:\"Autor\",copyright:\"Copyright\",add:\"Neues Element hinzuf\\u00fcgen\",remove:\"Ausgew\\u00e4hltes Element entfernen\",moveup:\"Ausgew\\u00e4hltes Element nach oben bewegen\",movedown:\"Ausgew\\u00e4hltes Element nach unten bewegen\",head_elements:\"\\u00dcberschriftenelemente\",info:\"Information\",add_title:\"Titel-Element\",add_meta:\"Meta-Element\",add_script:\"Script-Element\",add_style:\"Style-Element\",add_link:\"Link-Element\",add_base:\"Base-Element\",add_comment:\"HTML-Kommentar\",title_element:\"Titel-Element\",script_element:\"Script-Element\",style_element:\"Style-Element\",base_element:\"Base-Element\",link_element:\"Link-Element\",meta_element:\"Meta_Element\",comment_element:\"Kommentar\",src:\"Src\",language:\"Sprache\",href:\"Href\",target:\"Ziel\",type:\"Typ\",charset:\"Zeichensatz\",defer:\"Defer\",media:\"Media\",properties:\"Eigenschaften\",name:\"Name\",value:\"Wert\",content:\"Inhalt\",rel:\"Rel\",rev:\"Rev\",hreflang:\"Href lang\",general_props:\"Allgemein\",advanced_props:\"Erweitert\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/el_dlg.js",
    "content": "tinyMCE.addI18n('el.fullpage_dlg',{title:\"\\u0399\\u03b4\\u03b9\\u03cc\\u03c4\\u03b7\\u03c4\\u03b5\\u03c2 \\u03b5\\u03b3\\u03b3\\u03c1\\u03ac\\u03c6\\u03bf\\u03c5\",\"meta_tab\":\"\\u0393\\u03b5\\u03bd\\u03b9\\u03ba\\u03ac\",\"appearance_tab\":\"\\u0395\\u03bc\\u03c6\\u03ac\\u03bd\\u03b9\\u03c3\\u03b7\",\"advanced_tab\":\"\\u0393\\u03b9\\u03b1 \\u03c0\\u03c1\\u03bf\\u03c7\\u03c9\\u03c1\\u03b7\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5\\u03c2\",\"meta_props\":\"\\u039c\\u03b5\\u03c4\\u03b1-\\u03c0\\u03bb\\u03b7\\u03c1\\u03bf\\u03c6\\u03bf\\u03c1\\u03af\\u03b5\\u03c2\",langprops:\"\\u0393\\u03bb\\u03ce\\u03c3\\u03c3\\u03b1 \\u03ba\\u03b1\\u03b9 \\u03ba\\u03c9\\u03b4\\u03b9\\u03ba\\u03bf\\u03c0\\u03bf\\u03af\\u03b7\\u03c3\\u03b7\",\"meta_title\":\"\\u03a4\\u03af\\u03c4\\u03bb\\u03bf\\u03c2\",\"meta_keywords\":\"\\u039b\\u03ad\\u03be\\u03b5\\u03b9\\u03c2 \\u03ba\\u03bb\\u03b5\\u03b9\\u03b4\\u03b9\\u03ac\",\"meta_description\":\"\\u03a0\\u03b5\\u03c1\\u03b9\\u03b3\\u03c1\\u03b1\\u03c6\\u03ae\",\"meta_robots\":\"\\u03a1\\u03bf\\u03bc\\u03c0\\u03cc\\u03c4\",doctypes:\"Doctype\",langcode:\"\\u039a\\u03c9\\u03b4\\u03b9\\u03ba\\u03cc\\u03c2 \\u03b3\\u03bb\\u03ce\\u03c3\\u03c3\\u03b1\\u03c2\",langdir:\"\\u039a\\u03b1\\u03c4\\u03b5\\u03cd\\u03b8\\u03c5\\u03bd\\u03c3\\u03b7 \\u03b3\\u03bb\\u03ce\\u03c3\\u03c3\\u03b1\\u03c2\",ltr:\"\\u0391\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac \\u03c0\\u03c1\\u03bf\\u03c2 \\u03b4\\u03b5\\u03be\\u03b9\\u03ac\",rtl:\"\\u0394\\u03b5\\u03be\\u03b9\\u03ac \\u03c0\\u03c1\\u03bf\\u03c2 \\u03b1\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac\",\"xml_pi\":\"\\u0394\\u03ae\\u03bb\\u03c9\\u03c3\\u03b7 XML\",encoding:\"\\u039a\\u03c9\\u03b4\\u03b9\\u03ba\\u03bf\\u03c0\\u03bf\\u03af\\u03b7\\u03c3\\u03b7 \\u03c7\\u03b1\\u03c1\\u03b1\\u03ba\\u03c4\\u03ae\\u03c1\\u03c9\\u03bd\",\"appearance_bgprops\":\"\\u0399\\u03b4\\u03b9\\u03cc\\u03c4\\u03b7\\u03c4\\u03b5\\u03c2 \\u03c6\\u03cc\\u03bd\\u03c4\\u03bf\\u03c5\",\"appearance_marginprops\":\"\\u03a0\\u03b5\\u03c1\\u03b9\\u03b8\\u03ce\\u03c1\\u03b9\\u03b1 \\u03c3\\u03ce\\u03bc\\u03b1\\u03c4\\u03bf\\u03c2\",\"appearance_linkprops\":\"\\u03a7\\u03c1\\u03ce\\u03bc\\u03b1\\u03c4\\u03b1 \\u03c3\\u03c5\\u03bd\\u03b4\\u03ad\\u03c3\\u03bc\\u03c9\\u03bd\",\"appearance_textprops\":\"\\u0399\\u03b4\\u03b9\\u03cc\\u03c4\\u03b7\\u03c4\\u03b5\\u03c2 \\u03ba\\u03b5\\u03b9\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5\",bgcolor:\"\\u03a7\\u03c1\\u03ce\\u03bc\\u03b1 \\u03c6\\u03cc\\u03bd\\u03c4\\u03bf\\u03c5\",bgimage:\"\\u0395\\u03b9\\u03ba\\u03cc\\u03bd\\u03b1 \\u03c6\\u03cc\\u03bd\\u03c4\\u03bf\\u03c5\",\"left_margin\":\"\\u0391\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03cc \\u03c0\\u03b5\\u03c1\\u03b9\\u03b8\\u03ce\\u03c1\\u03b9\\u03bf\",\"right_margin\":\"\\u0394\\u03b5\\u03be\\u03b9\\u03cc \\u03c0\\u03b5\\u03c1\\u03b9\\u03b8\\u03ce\\u03c1\\u03b9\\u03bf\",\"top_margin\":\"\\u03a0\\u03ac\\u03bd\\u03c9 \\u03c0\\u03b5\\u03c1\\u03b9\\u03b8\\u03ce\\u03c1\\u03b9\\u03bf\",\"bottom_margin\":\"\\u039a\\u03ac\\u03c4\\u03c9 \\u03c0\\u03b5\\u03c1\\u03b9\\u03b8\\u03ce\\u03c1\\u03b9\\u03bf\",\"text_color\":\"\\u03a7\\u03c1\\u03ce\\u03bc\\u03b1 \\u03ba\\u03b5\\u03b9\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5\",\"font_size\":\"\\u039c\\u03ad\\u03b3\\u03b5\\u03b8\\u03bf\\u03c2 \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ac\\u03c4\\u03c9\\u03bd\",\"font_face\":\"\\u0393\\u03c1\\u03b1\\u03bc\\u03bc\\u03b1\\u03c4\\u03bf\\u03c3\\u03b5\\u03b9\\u03c1\\u03ac\",\"link_color\":\"\\u03a7\\u03c1\\u03ce\\u03bc\\u03b1 \\u03c3\\u03c5\\u03bd\\u03b4\\u03ad\\u03c3\\u03bc\\u03bf\\u03c5\",\"hover_color\":\"\\u03a7\\u03c1\\u03ce\\u03bc\\u03b1 \\u03c3\\u03c5\\u03bd\\u03b4\\u03ad\\u03c3\\u03bc\\u03bf\\u03c5 (Hover)\",\"visited_color\":\"\\u03a7\\u03c1\\u03ce\\u03bc\\u03b1 \\u03c3\\u03c5\\u03bd\\u03b4\\u03ad\\u03c3\\u03bc\\u03bf\\u03c5 (Visited)\",\"active_color\":\"\\u03a7\\u03c1\\u03ce\\u03bc\\u03b1 \\u03c3\\u03c5\\u03bd\\u03b4\\u03ad\\u03c3\\u03bc\\u03bf\\u03c5 (Active)\",textcolor:\"\\u03a7\\u03c1\\u03ce\\u03bc\\u03b1\",fontsize:\"\\u039c\\u03ad\\u03b3\\u03b5\\u03b8\\u03bf\\u03c2 \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ac\\u03c4\\u03c9\\u03bd\",fontface:\"\\u0393\\u03c1\\u03b1\\u03bc\\u03bc\\u03b1\\u03c4\\u03bf\\u03c3\\u03b5\\u03b9\\u03c1\\u03ac\",\"meta_index_follow\":\"\\u039a\\u03b1\\u03c4\\u03b1\\u03c7\\u03ce\\u03c1\\u03b7\\u03c3\\u03b7 \\u03ba\\u03b1\\u03b9 \\u03bd\\u03b1 \\u03b1\\u03ba\\u03bf\\u03bb\\u03bf\\u03c5\\u03b8\\u03b7\\u03b8\\u03bf\\u03cd\\u03bd \\u03bf\\u03b9 \\u03c3\\u03cd\\u03bd\\u03b4\\u03b5\\u03c3\\u03bc\\u03bf\\u03b9\",\"meta_index_nofollow\":\"\\u039a\\u03b1\\u03c4\\u03b1\\u03c7\\u03ce\\u03c1\\u03b7\\u03c3\\u03b7 \\u03ba\\u03b1\\u03b9 \\u03bd\\u03b1 \\u03bc\\u03b7\\u03bd \\u03b1\\u03ba\\u03bf\\u03bb\\u03bf\\u03c5\\u03b8\\u03b7\\u03b8\\u03bf\\u03cd\\u03bd \\u03bf\\u03b9 \\u03c3\\u03cd\\u03bd\\u03b4\\u03b5\\u03c3\\u03bc\\u03bf\\u03b9\",\"meta_noindex_follow\":\"\\u03a7\\u03c9\\u03c1\\u03af\\u03c2 \\u03ba\\u03b1\\u03c4\\u03b1\\u03c7\\u03ce\\u03c1\\u03b7\\u03c3\\u03b7 \\u03ba\\u03b1\\u03b9 \\u03bd\\u03b1 \\u03b1\\u03ba\\u03bf\\u03bb\\u03bf\\u03c5\\u03b8\\u03b7\\u03b8\\u03bf\\u03cd\\u03bd \\u03bf\\u03b9 \\u03c3\\u03cd\\u03bd\\u03b4\\u03b5\\u03c3\\u03bc\\u03bf\\u03b9\",\"meta_noindex_nofollow\":\"\\u03a7\\u03c9\\u03c1\\u03af\\u03c2 \\u03ba\\u03b1\\u03c4\\u03b1\\u03c7\\u03ce\\u03c1\\u03b7\\u03c3\\u03b7 \\u03ba\\u03b1\\u03b9 \\u03bd\\u03b1 \\u03bc\\u03b7\\u03bd \\u03b1\\u03ba\\u03bf\\u03bb\\u03bf\\u03c5\\u03b8\\u03b7\\u03b8\\u03bf\\u03cd\\u03bd \\u03bf\\u03b9 \\u03c3\\u03cd\\u03bd\\u03b4\\u03b5\\u03c3\\u03bc\\u03bf\\u03b9\",\"appearance_style\":\"\\u0399\\u03b4\\u03b9\\u03cc\\u03c4\\u03b7\\u03c4\\u03b5\\u03c2 \\u03c3\\u03c4\\u03c5\\u03bb \\u03ba\\u03b1\\u03b9 \\u03b1\\u03c1\\u03c7\\u03b5\\u03af\\u03bf\\u03c5 \\u03c3\\u03c4\\u03c5\\u03bb\",stylesheet:\"\\u0391\\u03c1\\u03c7\\u03b5\\u03af\\u03bf \\u03c3\\u03c4\\u03c5\\u03bb\",style:\"\\u03a3\\u03c4\\u03c5\\u03bb\",author:\"\\u03a3\\u03c5\\u03b3\\u03b3\\u03c1\\u03b1\\u03c6\\u03ad\\u03b1\\u03c2\",copyright:\"\\u0394\\u03b9\\u03ba\\u03b1\\u03af\\u03c9\\u03bc\\u03b1 \\u03ba\\u03b1\\u03c4\\u03b1\\u03c3\\u03ba\\u03b5\\u03c5\\u03b1\\u03c3\\u03c4\\u03ae\",add:\"\\u03a0\\u03c1\\u03bf\\u03c3\\u03b8\\u03ae\\u03ba\\u03b7 \\u03c3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf\\u03c5\",remove:\"\\u0391\\u03c6\\u03b1\\u03af\\u03c1\\u03b5\\u03c3\\u03b7 \\u03b5\\u03c0\\u03b9\\u03bb\\u03b5\\u03b3\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5 \\u03c3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf\\u03c5\",moveup:\"\\u039c\\u03b5\\u03c4\\u03b1\\u03ba\\u03af\\u03bd\\u03b7\\u03c3\\u03b7 \\u03b5\\u03c0\\u03b9\\u03bb\\u03b5\\u03b3\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5 \\u03c3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf\\u03c5 \\u03c0\\u03ac\\u03bd\\u03c9\",movedown:\"\\u039c\\u03b5\\u03c4\\u03b1\\u03ba\\u03af\\u03bd\\u03b7\\u03c3\\u03b7 \\u03b5\\u03c0\\u03b9\\u03bb\\u03b5\\u03b3\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5 \\u03c3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf\\u03c5 \\u03ba\\u03ac\\u03c4\\u03c9\",\"head_elements\":\"\\u03a3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03b1 \\u03ba\\u03b5\\u03c6\\u03b1\\u03bb\\u03ae\\u03c2\",info:\"\\u03a0\\u03bb\\u03b7\\u03c1\\u03bf\\u03c6\\u03bf\\u03c1\\u03af\\u03b5\\u03c2\",\"add_title\":\"\\u03a3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf \\u03c4\\u03af\\u03c4\\u03bb\\u03bf\\u03c5\",\"add_meta\":\"\\u03a3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf \\u03bc\\u03b5\\u03c4\\u03b1-\\u03c0\\u03bb\\u03b7\\u03c1\\u03bf\\u03c6\\u03bf\\u03c1\\u03af\\u03b1\\u03c2\",\"add_script\":\"\\u03a3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf Script\",\"add_style\":\"\\u03a3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf \\u03c3\\u03c4\\u03c5\\u03bb\",\"add_link\":\"\\u03a3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf \\u03c3\\u03c5\\u03bd\\u03b4\\u03ad\\u03c3\\u03bc\\u03bf\\u03c5\",\"add_base\":\"\\u03a3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf \\u03b2\\u03ac\\u03c3\\u03b7\\u03c2\",\"add_comment\":\"\\u039a\\u03cc\\u03bc\\u03b2\\u03bf\\u03c2 \\u03c3\\u03c7\\u03bf\\u03bb\\u03af\\u03bf\\u03c5\",\"title_element\":\"\\u03a3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf \\u03c4\\u03af\\u03c4\\u03bb\\u03bf\\u03c5\",\"script_element\":\"\\u03a3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf Script\",\"style_element\":\"\\u03a3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf \\u03c3\\u03c4\\u03c5\\u03bb\",\"base_element\":\"\\u03a3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf \\u03b2\\u03ac\\u03c3\\u03b7\\u03c2\",\"link_element\":\"\\u03a3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf \\u03c3\\u03c5\\u03bd\\u03b4\\u03ad\\u03c3\\u03bc\\u03bf\\u03c5\",\"meta_element\":\"\\u03a3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf \\u03bc\\u03b5\\u03c4\\u03b1-\\u03c0\\u03bb\\u03b7\\u03c1\\u03bf\\u03c6\\u03bf\\u03c1\\u03af\\u03b1\\u03c2\",\"comment_element\":\"\\u03a3\\u03c7\\u03cc\\u03bb\\u03b9\\u03bf\",src:\"\\u03a0\\u03b7\\u03b3\\u03ae\",language:\"\\u0393\\u03bb\\u03ce\\u03c3\\u03c3\\u03b1\",href:\"Href\",target:\"\\u03a3\\u03c4\\u03cc\\u03c7\\u03bf\\u03c2\",type:\"\\u03a4\\u03cd\\u03c0\\u03bf\\u03c2\",charset:\"\\u03a3\\u03b5\\u03c4 \\u03c7\\u03b1\\u03c1\\u03b1\\u03ba\\u03c4\\u03ae\\u03c1\\u03c9\\u03bd\",defer:\"Defer\",media:\"Media\",properties:\"\\u0399\\u03b4\\u03b9\\u03cc\\u03c4\\u03b7\\u03c4\\u03b5\\u03c2\",name:\"\\u038c\\u03bd\\u03bf\\u03bc\\u03b1\",value:\"\\u03a4\\u03b9\\u03bc\\u03ae\",content:\"\\u03a0\\u03b5\\u03c1\\u03b9\\u03b5\\u03c7\\u03cc\\u03bc\\u03b5\\u03bd\\u03bf\",rel:\"Rel\",rev:\"Rev\",hreflang:\"\\u0393\\u03bb\\u03ce\\u03c3\\u03c3\\u03b1 Href\",\"general_props\":\"\\u0393\\u03b5\\u03bd\\u03b9\\u03ba\\u03ac\",\"advanced_props\":\"\\u0393\\u03b9\\u03b1 \\u03c0\\u03c1\\u03bf\\u03c7\\u03c9\\u03c1\\u03b7\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5\\u03c2\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/en_dlg.js",
    "content": "tinyMCE.addI18n('en.fullpage_dlg',{title:\"Document Properties\",\"meta_tab\":\"General\",\"appearance_tab\":\"Appearance\",\"advanced_tab\":\"Advanced\",\"meta_props\":\"Meta Information\",langprops:\"Language and Encoding\",\"meta_title\":\"Title\",\"meta_keywords\":\"Keywords\",\"meta_description\":\"Description\",\"meta_robots\":\"Robots\",doctypes:\"Doctype\",langcode:\"Language Code\",langdir:\"Language Direction\",ltr:\"Left to Right\",rtl:\"Right to Left\",\"xml_pi\":\"XML Declaration\",encoding:\"Character Encoding\",\"appearance_bgprops\":\"Background Properties\",\"appearance_marginprops\":\"Body Margins\",\"appearance_linkprops\":\"Link Colors\",\"appearance_textprops\":\"Text Properties\",bgcolor:\"Background Color\",bgimage:\"Background Image\",\"left_margin\":\"Left Margin\",\"right_margin\":\"Right Margin\",\"top_margin\":\"Top Margin\",\"bottom_margin\":\"Bottom Margin\",\"text_color\":\"Text Color\",\"font_size\":\"Font Size\",\"font_face\":\"Font Face\",\"link_color\":\"Link Color\",\"hover_color\":\"Hover Color\",\"visited_color\":\"Visited Color\",\"active_color\":\"Active Color\",textcolor:\"Color\",fontsize:\"Font Size\",fontface:\"Font Family\",\"meta_index_follow\":\"Index and Follow the Links\",\"meta_index_nofollow\":\"Index and Don\\'t Follow the Links\",\"meta_noindex_follow\":\"Do Not Index but Follow the Links\",\"meta_noindex_nofollow\":\"Do Not Index and Don\\'t Follow the Links\",\"appearance_style\":\"Stylesheet and Style Properties\",stylesheet:\"Stylesheet\",style:\"Style\",author:\"Author\",copyright:\"Copyright\",add:\"Add New Element\",remove:\"Remove Selected Element\",moveup:\"Move Selected Element Up\",movedown:\"Move Selected Element Down\",\"head_elements\":\"Head Elements\",info:\"Information\",\"add_title\":\"Title Element\",\"add_meta\":\"Meta Element\",\"add_script\":\"Script Element\",\"add_style\":\"Style Element\",\"add_link\":\"Link Element\",\"add_base\":\"Base Element\",\"add_comment\":\"Comment Node\",\"title_element\":\"Title Element\",\"script_element\":\"Script Element\",\"style_element\":\"Style Element\",\"base_element\":\"Base Element\",\"link_element\":\"Link Element\",\"meta_element\":\"Meta Element\",\"comment_element\":\"Comment\",src:\"Source\",language:\"Language\",href:\"HREF\",target:\"Target\",type:\"Type\",charset:\"Charset\",defer:\"Defer\",media:\"Media\",properties:\"Properties\",name:\"Name\",value:\"Value\",content:\"Content\",rel:\"Rel\",rev:\"Rev\",hreflang:\"HREF Lang\",\"general_props\":\"General\",\"advanced_props\":\"Advanced\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/es_dlg.js",
    "content": "tinyMCE.addI18n('es.fullpage_dlg',{title:\"Propiedades del documento\",meta_tab:\"General\",appearance_tab:\"Apariencia\",advanced_tab:\"Avanzado\",meta_props:\"Informaci\\u00f3n Meta\",langprops:\"Lenguaje y codificaci\\u00f3n\",meta_title:\"T\\u00edtulo\",meta_keywords:\"Palabras clave\",meta_description:\"Descripci\\u00f3n\",meta_robots:\"Robots\",doctypes:\"Tipo de doc.\",langcode:\"C\\u00f3digo del lenguaje\",langdir:\"Direcci\\u00f3n del lenguaje\",ltr:\"Izquierda a derecha\",rtl:\"Derecha a izquierda\",xml_pi:\"Declaraci\\u00f3n XML\",encoding:\"Codificaci\\u00f3n de caracteres\",appearance_bgprops:\"Propiedades del fondo\",appearance_marginprops:\"M\\u00e1rgenes\",appearance_linkprops:\"Colores del v\\u00ednculo\",appearance_textprops:\"Propiedades de texto\",bgcolor:\"Color de fondo\",bgimage:\"Imagen de fondo\",left_margin:\"Margen izquierdo\",right_margin:\"Margen derecho\",top_margin:\"Margen superior\",bottom_margin:\"Margen inferior\",text_color:\"Color del texto\",font_size:\"Tama\\u00f1o de fuente\",font_face:\"Fuente\",link_color:\"Color de v\\u00ednculo\",hover_color:\"Color rat\\u00f3n encima\",visited_color:\"Color visitado\",active_color:\"Color activo\",textcolor:\"Color\",fontsize:\"Tama\\u00f1o de fuente\",fontface:\"Fuente\",meta_index_follow:\"Indexar y seguir los v\\u00ednculos\",meta_index_nofollow:\"Indexar y no seguir los v\\u00ednculos\",meta_noindex_follow:\"No indexar pero seguir v\\u00ednculos\",meta_noindex_nofollow:\"No indexar y no seguir v\\u00ednculos\",appearance_style:\"Propiedades de hoja de estilos y estilo\",stylesheet:\"Hoja de estilo\",style:\"Estilo\",author:\"Autor\",copyright:\"Copyright\",add:\"Agregar nuevo elemento\",remove:\"Eliminar elemento seleccionado\",moveup:\"Mover elemento seleccionado hacia arriba\",movedown:\"Mover elemento seleccionado hacia abajo\",head_elements:\"Elemento Head\",info:\"Informaci\\u00f3n\",add_title:\"Elemento Title\",add_meta:\"Elemento Meta\",add_script:\"Elemento Script\",add_style:\"Elemento Style\",add_link:\"Elemento Link\",add_base:\"Elemento Base\",add_comment:\"Nodo Comment\",title_element:\"Elemento Title\",script_element:\"Elemento Script\",style_element:\"Elemento Style\",base_element:\"Elemento Base\",link_element:\"Elemento Link\",meta_element:\"Elemento Meta\",comment_element:\"Comentario\",src:\"Src\",language:\"Lenguaje\",href:\"Href\",target:\"Target\",type:\"Tipo\",charset:\"Charset\",defer:\"Defer\",media:\"Medio\",properties:\"Propiedades\",name:\"Nombre\",value:\"Valor\",content:\"Contenido\",rel:\"Rel\",rev:\"Rev\",hreflang:\"Href lang\",general_props:\"General\",advanced_props:\"Avanzado\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/fr_dlg.js",
    "content": "tinyMCE.addI18n('fr.fullpage_dlg',{title:\"Propri\\u00e9t\\u00e9s du document\",meta_tab:\"G\\u00e9n\\u00e9ral\",appearance_tab:\"Apparence\",advanced_tab:\"Avanc\\u00e9\",meta_props:\"Metadonn\\u00e9es\",langprops:\"Langue et encodage\",meta_title:\"Titre\",meta_keywords:\"Mots-cl\\u00e9s\",meta_description:\"Description\",meta_robots:\"Robots\",doctypes:\"Doctype\",langcode:\"Code de la langue\",langdir:\"Sens de lecture\",ltr:\"De gauche \\u00e0 droite\",rtl:\"De droite \\u00e0 gauche\",xml_pi:\"D\\u00e9claration XML\",encoding:\"Encodage des caract\\u00e8res\",appearance_bgprops:\"Propri\\u00e9t\\u00e9s du fond\",appearance_marginprops:\"Marge du corps de la page\",appearance_linkprops:\"Couleurs des liens\",appearance_textprops:\"Propri\\u00e9t\\u00e9s du texte\",bgcolor:\"Couleur de fond\",bgimage:\"Image de fond\",left_margin:\"Marge de gauche\",right_margin:\"Marge de droite\",top_margin:\"Marge du haut\",bottom_margin:\"Marge du bas\",text_color:\"Couleur du texte\",font_size:\"Taille de la police\",font_face:\"Nom de la police\",link_color:\"Couleur des liens\",hover_color:\"Couleur au survol\",visited_color:\"Couleur des liens visit\\u00e9s\",active_color:\"Couleur du lien actif\",textcolor:\"Couleur\",fontsize:\"Taille de police\",fontface:\"Nom de la police\",meta_index_follow:\"Indexer et suivre les liens\",meta_index_nofollow:\"Indexer et ne pas suivre les liens\",meta_noindex_follow:\"Ne pas indexer et suivre les liens\",meta_noindex_nofollow:\"Ne pas indexer et ne pas suivre les liens\",appearance_style:\"Propri\\u00e9t\\u00e9s de la feuille de style et du style\",stylesheet:\"Feuille de style\",style:\"Style\",author:\"Auteur\",copyright:\"Copyright\",add:\"Ajouter un nouvel \\u00e9l\\u00e9ment\",remove:\"Retirer l\\'\\u00e9l\\u00e9ment s\\u00e9lectionn\\u00e9\",moveup:\"D\\u00e9placer l\\'\\u00e9l\\u00e9ment s\\u00e9lectionn\\u00e9 vers le haut\",movedown:\"D\\u00e9placer l\\'\\u00e9l\\u00e9ment s\\u00e9lectionn\\u00e9 vers le bas\",head_elements:\"\\u00c9l\\u00e9ments d\\'en-t\\u00eate\",info:\"Information\",add_title:\"\\u00c9l\\u00e9ment de titre\",add_meta:\"\\u00c9l\\u00e9ment Meta\",add_script:\"\\u00c9l\\u00e9ment de script\",add_style:\"\\u00c9l\\u00e9ment de style\",add_link:\"\\u00c9l\\u00e9ment de lien\",add_base:\"\\u00c9l\\u00e9ment de base\",add_comment:\"Commentaire\",title_element:\"\\u00c9l\\u00e9ment de titre\",script_element:\"\\u00c9l\\u00e9ment de script\",style_element:\"\\u00c9l\\u00e9ment de style\",base_element:\"\\u00c9l\\u00e9ment de base\",link_element:\"\\u00c9l\\u00e9ment de lien\",meta_element:\"\\u00c9l\\u00e9ment Meta\",comment_element:\"Commentaire\",src:\"Source\",language:\"Langue\",href:\"Href\",target:\"Cible\",type:\"Type\",charset:\"Charset\",defer:\"D\\u00e9f\\u00e9rer\",media:\"M\\u00e9dia\",properties:\"Propri\\u00e9t\\u00e9s\",name:\"Nom\",value:\"Valeur\",content:\"Contenu\",rel:\"Rel\",rev:\"Rev\",hreflang:\"langue Href\",general_props:\"G\\u00e9n\\u00e9ral\",advanced_props:\"Avanc\\u00e9\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/he_dlg.js",
    "content": "tinyMCE.addI18n('he.fullpage_dlg',{title:\"\\u05de\\u05d0\\u05e4\\u05d9\\u05d9\\u05e0\\u05d9 \\u05de\\u05e1\\u05de\\u05da\",\"meta_tab\":\"\\u05db\\u05dc\\u05dc\\u05d9\",\"appearance_tab\":\"\\u05de\\u05e8\\u05d0\\u05d4\",\"advanced_tab\":\"\\u05de\\u05ea\\u05e7\\u05d3\\u05dd\",\"meta_props\":\"\\u05ea\\u05d2\\u05d9 \\u05de\\u05d8\\u05d4\",langprops:\"\\u05e9\\u05e4\\u05d4 \\u05d5\\u05e7\\u05d9\\u05d3\\u05d5\\u05d3\",\"meta_title\":\"\\u05db\\u05d5\\u05ea\\u05e8\\u05ea\",\"meta_keywords\":\"\\u05de\\u05d9\\u05dc\\u05d5\\u05ea \\u05de\\u05e4\\u05ea\\u05d7\",\"meta_description\":\"\\u05ea\\u05d9\\u05d0\\u05d5\\u05e8\",\"meta_robots\":\"\\u05e8\\u05d5\\u05d1\\u05d5\\u05d8\\u05d9\\u05dd\",doctypes:\"Doctype\",langcode:\"\\u05e7\\u05d5\\u05d3 \\u05d4\\u05e9\\u05e4\\u05d4\",langdir:\"\\u05db\\u05d9\\u05d5\\u05d5\\u05df \\u05d4\\u05e9\\u05e4\\u05d4\",ltr:\"\\u05de\\u05e9\\u05de\\u05d0\\u05dc \\u05dc\\u05d9\\u05de\\u05d9\\u05df\",rtl:\"\\u05de\\u05d9\\u05de\\u05d9\\u05df \\u05dc\\u05e9\\u05de\\u05d0\\u05dc\",\"xml_pi\":\"XML declaration\",encoding:\"\\u05e7\\u05d9\\u05d3\\u05d5\\u05d3 \\u05ea\\u05d5\\u05d5\\u05d9\\u05dd\",\"appearance_bgprops\":\"\\u05de\\u05d0\\u05e4\\u05d9\\u05d9\\u05e0\\u05d9 \\u05e8\\u05e7\\u05e2\",\"appearance_marginprops\":\"Body margins\",\"appearance_linkprops\":\"\\u05e6\\u05d1\\u05e2 \\u05e7\\u05d9\\u05e9\\u05d5\\u05e8\\u05d9\\u05dd\",\"appearance_textprops\":\"Text properties\",bgcolor:\"\\u05e6\\u05d1\\u05e2 \\u05e8\\u05e7\\u05e2\",bgimage:\"\\u05ea\\u05de\\u05d5\\u05e0\\u05ea \\u05e8\\u05e7\\u05e2\",\"left_margin\":\"\\u05e9\\u05d5\\u05dc\\u05d9\\u05d9\\u05dd \\u05e9\\u05de\\u05d0\\u05dc\\u05d9\\u05d9\\u05dd\",\"right_margin\":\"\\u05e9\\u05d5\\u05dc\\u05d9\\u05d9\\u05dd \\u05d9\\u05de\\u05e0\\u05d9\\u05d9\\u05dd\",\"top_margin\":\"\\u05e9\\u05d5\\u05dc\\u05d9\\u05d9\\u05dd \\u05e2\\u05dc\\u05d9\\u05d5\\u05e0\\u05d9\\u05dd\",\"bottom_margin\":\"\\u05e9\\u05d5\\u05dc\\u05d9\\u05d9\\u05dd \\u05ea\\u05d7\\u05ea\\u05d9\\u05d9\\u05dd\",\"text_color\":\"\\u05e6\\u05d1\\u05e2 \\u05d8\\u05e7\\u05e1\\u05d8\",\"font_size\":\"\\u05d2\\u05d5\\u05d3\\u05dc \\u05d2\\u05d5\\u05e4\\u05df\",\"font_face\":\"\\u05e1\\u05d5\\u05d2 \\u05d2\\u05d5\\u05e4\\u05df\",\"link_color\":\"\\u05e6\\u05d1\\u05e2 \\u05e7\\u05d9\\u05e9\\u05d5\\u05e8\",\"hover_color\":\"\\u05e6\\u05d1\\u05e2 \\u05e7\\u05d9\\u05e9\\u05d5\\u05e8 \\u05d1\\u05de\\u05e2\\u05d1\\u05e8 \\u05e2\\u05db\\u05d1\\u05e8\",\"visited_color\":\"\\u05e6\\u05d1\\u05e2 \\u05e7\\u05d9\\u05e9\\u05d5\\u05e8 \\u05e9\\u05e0\\u05e6\\u05e4\\u05d4\",\"active_color\":\"\\u05e6\\u05d1\\u05e2 \\u05e7\\u05d9\\u05e9\\u05d5\\u05e8 \\u05e4\\u05e2\\u05d9\\u05dc\",textcolor:\"\\u05e6\\u05d1\\u05e2\",fontsize:\"\\u05d2\\u05d5\\u05d3\\u05dc \\u05d2\\u05d5\\u05e4\\u05df\",fontface:\"\\u05d2\\u05d5\\u05e4\\u05df\",\"meta_index_follow\":\"Index and follow the links\",\"meta_index_nofollow\":\"Index and don\\'t follow the links\",\"meta_noindex_follow\":\"Do not index but follow the links\",\"meta_noindex_nofollow\":\"Do not index and don\\\\\\'t follow the links\",\"appearance_style\":\"Stylesheet and style properties\",stylesheet:\"\\u05e1\\u05d2\\u05e0\\u05d5\\u05df \\u05e2\\u05d9\\u05e6\\u05d5\\u05d1\",style:\"\\u05e2\\u05d9\\u05e6\\u05d5\\u05d1\",author:\"\\u05db\\u05d5\\u05ea\\u05d1\",copyright:\"\\u05d6\\u05db\\u05d5\\u05d9\\u05d5\\u05ea \\u05d9\\u05d5\\u05e6\\u05e8\\u05d9\\u05dd\",add:\"\\u05d4\\u05d5\\u05e1\\u05e3 \\u05d0\\u05dc\\u05de\\u05e0\\u05d8 \\u05d7\\u05d3\\u05e9\",remove:\"Remove selected element\",moveup:\"Move selected element up\",movedown:\"Move selected element down\",\"head_elements\":\"Head elements\",info:\"\\u05de\\u05d9\\u05d3\\u05e2\",\"add_title\":\"Title element\",\"add_meta\":\"Meta element\",\"add_script\":\"Script element\",\"add_style\":\"Style element\",\"add_link\":\"Link element\",\"add_base\":\"Base element\",\"add_comment\":\"Comment node\",\"title_element\":\"Title element\",\"script_element\":\"Script element\",\"style_element\":\"\\u05d0\\u05dc\\u05de\\u05e0\\u05d8 \\u05e2\\u05d9\\u05e6\\u05d5\\u05d1\",\"base_element\":\"\\u05d0\\u05dc\\u05de\\u05e0\\u05d8 \\u05d1\\u05e1\\u05d9\\u05e1\",\"link_element\":\"\\u05d0\\u05dc\\u05de\\u05e0\\u05d8 \\u05e7\\u05d9\\u05e9\\u05d5\\u05e8\",\"meta_element\":\"Meta element\",\"comment_element\":\"\\u05ea\\u05d2\\u05d5\\u05d1\\u05d4\",src:\"\\u05db\\u05ea\\u05d5\\u05d1\\u05ea \\u05de\\u05e7\\u05d5\\u05e8\",language:\"\\u05e9\\u05e4\\u05d4\",href:\"HREF\",target:\"\\u05d9\\u05e2\\u05d3\",type:\"\\u05e1\\u05d5\\u05d2\",charset:\"\\u05e7\\u05d9\\u05d3\\u05d5\\u05d3\",defer:\"Defer\",media:\"\\u05de\\u05d3\\u05d9\\u05d4\",properties:\"\\u05de\\u05d0\\u05e4\\u05d9\\u05d9\\u05e0\\u05d9\\u05dd\",name:\"\\u05e9\\u05dd\",value:\"\\u05e2\\u05e8\\u05da\",content:\"\\u05ea\\u05d5\\u05db\\u05df\",rel:\"Rel\",rev:\"Rev\",hreflang:\"Href lang\",\"general_props\":\"\\u05db\\u05dc\\u05dc\\u05d9\",\"advanced_props\":\"\\u05de\\u05ea\\u05e7\\u05d3\\u05dd\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/hr_dlg.js",
    "content": "tinyMCE.addI18n('hr.fullpage_dlg',{title:\"Svojstva dokumenta\",meta_tab:\"Osnovno\",appearance_tab:\"Izgled\",advanced_tab:\"Napredno\",meta_props:\"Meta informacije\",langprops:\"Jezik i kodiranje\",meta_title:\"Naslov\",meta_keywords:\"Klju\\u010dne rije\\u010di\",meta_description:\"Opis\",meta_robots:\"Robots\",doctypes:\"Doctype\",langcode:\"Kod jezika\",langdir:\"Smjer jezika\",ltr:\"S lijeva na desno\",rtl:\"S desna na lijevo\",xml_pi:\"XML deklaracija\",encoding:\"Kodiranje znakova\",appearance_bgprops:\"Svojstva pozadine\",appearance_marginprops:\"Margina\",appearance_linkprops:\"Boja poveznica\",appearance_textprops:\"Svojstva teksta\",bgcolor:\"Boja pozadine\",bgimage:\"Pozadinska slika\",left_margin:\"Lijeva margina\",right_margin:\"Desna margina\",top_margin:\"Gornja margina\",bottom_margin:\"Donja margina\",text_color:\"Boja teksta\",font_size:\"Veli\\u010dina pisma\",font_face:\"Pismo\",link_color:\"Boja poveznice\",hover_color:\"Boja poveznice ispod mi\\u0161a\",visited_color:\"Boja posje\\u0107ene poveznice\",active_color:\"Boja aktivne poveznice\",textcolor:\"Boja\",fontsize:\"Veli\\u010dina pisma\",fontface:\"Skupina pisama\",meta_index_follow:\"Indeksiraj i slijedi poveznice\",meta_index_nofollow:\"Indeksiraj i ne slijedi poveznice\",meta_noindex_follow:\"Ne indeksiraj i slijedi poveznice\",meta_noindex_nofollow:\"Ne indeksiraj i ne slijedi poveznice\",appearance_style:\"CSS i svojstva stila\",stylesheet:\"CSS\",style:\"Stil\",author:\"Autor\",copyright:\"Autorska prava\",add:\"Dodaj novi element\",remove:\"Ukloni odabrani element\",moveup:\"Pomakni odabrani element prema gore\",movedown:\"Pomakni odabrani element prema dolje\",head_elements:\"Zaglavni elementi\",info:\"Informacije\",add_title:\"Naslovni element\",add_meta:\"Meta element\",add_script:\"Skriptni element\",add_style:\"Sitlski element\",add_link:\"Element poveznice\",add_base:\"Osnovni element\",add_comment:\"Komentar\",title_element:\"Naslovni element\",script_element:\"Skriptni element\",style_element:\"Stilski element\",base_element:\"Osnovni element\",link_element:\"Element poveznice\",meta_element:\"Meta element\",comment_element:\"Komentar\",src:\"Src\",language:\"Jezik\",href:\"Href\",target:\"Meta\",type:\"Type\",charset:\"Charset\",defer:\"Defer\",media:\"Media\",properties:\"Svojstva\",name:\"Ime\",value:\"Vrijednost\",content:\"Sadr\\u017eaj\",rel:\"Rel\",rev:\"Rev\",hreflang:\"Href lang\",general_props:\"Osnovno\",advanced_props:\"Napredno\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/hu_dlg.js",
    "content": "tinyMCE.addI18n('hu.fullpage_dlg',{title:\"Dokumentum tulajdons\\u00e1gai\",\"meta_tab\":\"\\u00c1ltal\\u00e1nos\",\"appearance_tab\":\"Megjelen\\u00e9s\",\"advanced_tab\":\"Halad\\u00f3\",\"meta_props\":\"Meta inform\\u00e1ci\\u00f3\",langprops:\"Nyelv \\u00e9s k\\u00f3dol\\u00e1s\",\"meta_title\":\"C\\u00edm\",\"meta_keywords\":\"Kulcsszavak\",\"meta_description\":\"Le\\u00edr\\u00e1s\",\"meta_robots\":\"Robotok\",doctypes:\"Dokumentum t\\u00edpus\",langcode:\"Nyelvk\\u00f3d\",langdir:\"\\u00cdr\\u00e1s ir\\u00e1nya\",ltr:\"Balr\\u00f3l jobra\",rtl:\"Jobbr\\u00f3l balra\",\"xml_pi\":\"XML deklar\\u00e1ci\\u00f3\",encoding:\"Karakterk\\u00f3dol\\u00e1s\",\"appearance_bgprops\":\"H\\u00e1tt\\u00e9r tulajdons\\u00e1gai\",\"appearance_marginprops\":\"Body marg\\u00f3k\",\"appearance_linkprops\":\"Link sz\\u00ednek\",\"appearance_textprops\":\"Sz\\u00f6veg tulajdons\\u00e1gai\",bgcolor:\"H\\u00e1tt\\u00e9rsz\\u00edn\",bgimage:\"H\\u00e1tt\\u00e9rk\\u00e9p\",\"left_margin\":\"Bal marg\\u00f3\",\"right_margin\":\"Jobb marg\\u00f3\",\"top_margin\":\"Fels\\u0151 marg\\u00f3\",\"bottom_margin\":\"Als\\u00f3 marg\\u00f3\",\"text_color\":\"Sz\\u00f6vegsz\\u00edn\",\"font_size\":\"Bet\\u0171m\\u00e9ret\",\"font_face\":\"Bet\\u0171t\\u00edpus\",\"link_color\":\"Link sz\\u00edn\",\"hover_color\":\"Sz\\u00edn eg\\u00e9r fel\\u00e9vitelekor\",\"visited_color\":\"Sz\\u00edn, ha l\\u00e1togatott\",\"active_color\":\"Akt\\u00edv sz\\u00edn\",textcolor:\"Sz\\u00edn\",fontsize:\"Bet\\u0171m\\u00e9ret\",fontface:\"Bet\\u0171 csal\\u00e1d\",\"meta_index_follow\":\"Linkek indexel\\u00e9se \\u00e9s k\\u00f6vet\\u00e9se\",\"meta_index_nofollow\":\"Indexel, de nem k\\u00f6veti a linkeket\",\"meta_noindex_follow\":\"Nincs indexel\\u00e9s, de van link-k\\u00f6vet\\u00e9s\",\"meta_noindex_nofollow\":\"Nem indexel \\u00e9s nem k\\u00f6veti a linkeket\",\"appearance_style\":\"Stylesheet \\u00e9s style tulajdons\\u00e1gok\",stylesheet:\"St\\u00edluslap\",style:\"St\\u00edlus\",author:\"Szerz\\u0151\",copyright:\"Copyright\",add:\"\\u00daj elem hozz\\u00e1ad\\u00e1sa\",remove:\"Kijel\\u00f6lt elem t\\u00f6rl\\u00e9se\",moveup:\"Kijel\\u00f6lt elem felfel\\u00e9 mozgat\\u00e1sa\",movedown:\"Kijel\\u00f6lt elem lefel\\u00e9 mozgat\\u00e1sa\",\"head_elements\":\"Fej elemek\",info:\"Inform\\u00e1ci\\u00f3\",\"add_title\":\"C\\u00edm elem\",\"add_meta\":\"Meta elem\",\"add_script\":\"Script elem\",\"add_style\":\"Style elem\",\"add_link\":\"Link elem\",\"add_base\":\"Base elem\",\"add_comment\":\"Comment elem\",\"title_element\":\"Title elem\",\"script_element\":\"Script elem\",\"style_element\":\"Style elem\",\"base_element\":\"Base elem\",\"link_element\":\"Link elem\",\"meta_element\":\"Meta elem\",\"comment_element\":\"Megjegyz\\u00e9s\",src:\"Forr\\u00e1s\",language:\"Nyelv\",href:\"HREF\",target:\"C\\u00e9l\",type:\"T\\u00edpus\",charset:\"Charset\",defer:\"Defer\",media:\"M\\u00e9dia\",properties:\"Tulajdons\\u00e1gok\",name:\"N\\u00e9v\",value:\"\\u00c9rt\\u00e9k\",content:\"Tartalom\",rel:\"Rel\",rev:\"Rev\",hreflang:\"HREF nyelv\",\"general_props\":\"\\u00c1ltal\\u00e1nos\",\"advanced_props\":\"Halad\\u00f3\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/hy_dlg.js",
    "content": "tinyMCE.addI18n('hy.fullpage_dlg',{title:\"\\u0421\\u0432\\u043e\\u0439\\u0441\\u0442\\u0432\\u0430 \\u0434\\u043e\\u043a\\u0443\\u043c\\u0435\\u043d\\u0442\\u0430\",\"meta_tab\":\"\\u041e\\u0431\\u0449\\u0435\\u0435\",\"appearance_tab\":\"\\u0412\\u0438\\u0434\",\"advanced_tab\":\"\\u0414\\u043e\\u043f\\u043e\\u043b\\u043d\\u0438\\u0442\\u0435\\u043b\\u044c\\u043d\\u043e\",\"meta_props\":\"\\u0426\\u0435\\u043b\\u044c \\u0438\\u043d\\u0444\\u043e\\u0440\\u043c\\u0430\\u0446\\u0438\\u0438\",langprops:\"\\u042f\\u0437\\u044b\\u043a \\u0438 \\u043a\\u043e\\u0434\\u0438\\u0440\\u043e\\u0432\\u0430\\u043d\\u0438\\u044f\",\"meta_title\":\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a\",\"meta_keywords\":\"\\u041a\\u043b\\u044e\\u0447\\u0435\\u0432\\u044b\\u0435 \\u0441\\u043b\\u043e\\u0432\\u0430\",\"meta_description\":\"\\u041e\\u043f\\u0438\\u0441\\u0430\\u043d\\u0438\\u0435\",\"meta_robots\":\"\\u0420\\u0430\\u0431\\u043e\\u0442\\u044b\",doctypes:\"Doctype\",langcode:\"\\u041a\\u043e\\u0434 \\u044f\\u0437\\u044b\\u043a\\u0430\",langdir:\"\\u041d\\u0430\\u043f\\u0440\\u0430\\u0432\\u043b\\u0435\\u043d\\u0438\\u0435 \\u044f\\u0437\\u044b\\u043a\\u0430\",ltr:\"\\u0421\\u043b\\u0435\\u0432\\u0430 \\u043d\\u0430\\u043f\\u0440\\u0430\\u0432\\u043e\",rtl:\"\\u0421\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043d\\u0430\\u043b\\u0435\\u0432\\u043e\",\"xml_pi\":\"XML declaration\",encoding:\"\\u041a\\u043e\\u0434\\u0438\\u0440\\u043e\\u0432\\u043a\\u0430\",\"appearance_bgprops\":\"\\u0421\\u0432\\u043e\\u0439\\u0441\\u0442\\u0432\\u0430 \\u0444\\u043e\\u043d\\u0430\",\"appearance_marginprops\":\"\\u041e\\u0442\\u0441\\u0442\\u0443\\u043f\\u044b\",\"appearance_linkprops\":\"\\u0426\\u0432\\u0435\\u0442 \\u0441\\u0441\\u044b\\u043b\\u043e\\u043a\",\"appearance_textprops\":\"\\u0421\\u0432\\u043e\\u0439\\u0441\\u0442\\u0432\\u0430 \\u0442\\u0435\\u043a\\u0441\\u0442\\u0430\",bgcolor:\"\\u0426\\u0432\\u0435\\u0442 \\u0444\\u043e\\u043d\\u0430\",bgimage:\"\\u0424\\u043e\\u043d\\u043e\\u0432\\u043e\\u0435 \\u0438\\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u0438\\u0435\",\"left_margin\":\"\\u041e\\u0442\\u0441\\u0442\\u0443\\u043f \\u0441\\u043b\\u0435\\u0432\\u0430\",\"right_margin\":\"\\u041e\\u0442\\u0441\\u0442\\u0443\\u043f \\u0441\\u043f\\u0440\\u0430\\u0432\\u0430\",\"top_margin\":\"\\u041e\\u0442\\u0441\\u0442\\u0443\\u043f \\u0441\\u0432\\u0435\\u0440\\u0445\\u0443\",\"bottom_margin\":\"\\u041e\\u0442\\u0441\\u0442\\u0443\\u043f \\u0441\\u043d\\u0438\\u0437\\u0443\",\"text_color\":\"\\u0426\\u0432\\u0435\\u0442 \\u0442\\u0435\\u043a\\u0441\\u0442\\u0430\",\"font_size\":\"\\u0420\\u0430\\u0437\\u043c\\u0435\\u0440 \\u0448\\u0440\\u0438\\u0444\\u0442\\u0430\",\"font_face\":\"\\u0428\\u0440\\u0438\\u0444\\u0442\",\"link_color\":\"\\u0426\\u0432\\u0435\\u0442 \\u0441\\u0441\\u044b\\u043b\\u043a\\u0438\",\"hover_color\":\"\\u0426\\u0432\\u0435\\u0442 \\u0441\\u0441\\u044b\\u043b\\u043a\\u0438 \\u043f\\u0440\\u0438 \\u043d\\u0430\\u0432\\u0435\\u0434\\u0435\\u043d\\u0438\\u0438\",\"visited_color\":\"\\u0426\\u0432\\u0435\\u0442 \\u043d\\u0430\\u0436\\u0430\\u0442\\u043e\\u0439 \\u0441\\u0441\\u044b\\u043b\\u043a\\u0438\",\"active_color\":\"\\u0426\\u0432\\u0435\\u0442 \\u0430\\u043a\\u0442\\u0438\\u0432\\u043d\\u043e\\u0439 \\u0441\\u0441\\u044b\\u043b\\u043a\\u0438\",textcolor:\"\\u0426\\u0432\\u0435\\u0442\",fontsize:\"\\u0420\\u0430\\u0437\\u043c\\u0435\\u0440 \\u0448\\u0440\\u0438\\u0444\\u0442\\u0430\",fontface:\"\\u0421\\u0435\\u043c\\u0435\\u0439\\u0441\\u0442\\u0432\\u043e \\u0448\\u0440\\u0438\\u0444\\u0442\\u0430\",\"meta_index_follow\":\"Index and follow the links\",\"meta_index_nofollow\":\"Index and don\\'t follow the links\",\"meta_noindex_follow\":\"Do not index but follow the links\",\"meta_noindex_nofollow\":\"Do not index and don \\\\ \\'t follow the links\",\"appearance_style\":\"Stylesheet and style properties\",stylesheet:\"Stylesheet\",style:\"\\u0421\\u0442\\u0438\\u043b\\u044c\",author:\"\\u0410\\u0432\\u0442\\u043e\\u0440\",copyright:\"\\u041a\\u043e\\u043f\\u0438\\u0440\\u0430\\u0439\\u0442\",add:\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\u043d\\u043e\\u0432\\u044b\\u0439 \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\",remove:\"\\u0423\\u0434\\u0430\\u043b\\u0438\\u0442\\u044c \\u0432\\u044b\\u0434\\u0435\\u043b\\u0435\\u043d\\u043d\\u044b\\u0439 \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\",moveup:\"\\u041f\\u0435\\u0440\\u0435\\u043c\\u0435\\u0441\\u0442\\u0438\\u0442\\u044c \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 \\u0432\\u0432\\u0435\\u0440\\u0445\",movedown:\"\\u041f\\u0435\\u0440\\u0435\\u043c\\u0435\\u0441\\u0442\\u0438\\u0442\\u044c \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 \\u0432\\u043d\\u0438\\u0437\",\"head_elements\":\"Head elements\",info:\"\\u0418\\u043d\\u0444\\u043e\\u0440\\u043c\\u0430\\u0446\\u0438\\u044f\",\"add_title\":\"Title element\",\"add_meta\":\"Meta element\",\"add_script\":\"Script element\",\"add_style\":\"Style element\",\"add_link\":\"Link element\",\"add_base\":\"Base element\",\"add_comment\":\"Comment node\",\"title_element\":\"Title element\",\"script_element\":\"Script element\",\"style_element\":\"Style element\",\"base_element\":\"Base element\",\"link_element\":\"Link element\",\"meta_element\":\"Meta \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\",\"comment_element\":\"\\u041a\\u043e\\u043c\\u043c\\u0435\\u043d\\u0442\\u0430\\u0440\\u0438\\u0439\",src:\"Src\",language:\"\\u042f\\u0437\\u044b\\u043a\",href:\"Href\",target:\"Target\",type:\"Type\",charset:\"Charset\",defer:\"Defer\",media:\"Media\",properties:\"Properties\",name:\"\\u041d\\u0430\\u0437\\u0432\\u0430\\u043d\\u0438\\u0435\",value:\"\\u0417\\u043d\\u0430\\u0447\\u0435\\u043d\\u0438\\u0435\",content:\"\\u0421\\u043e\\u0434\\u0435\\u0440\\u0436\\u0430\\u043d\\u0438\\u0435\",rel:\"Rel\",rev:\"Rev\",hreflang:\"Href lang\",\"general_props\":\"\\u041e\\u0431\\u0449\\u0435\\u0435\",\"advanced_props\":\"\\u0414\\u043e\\u043f\\u043e\\u043b\\u043d\\u0438\\u0442\\u0435\\u043b\\u044c\\u043d\\u043e\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/it_dlg.js",
    "content": "tinyMCE.addI18n('it.fullpage_dlg',{title:\"Propriet\\u00e0 Documento\",\"meta_tab\":\"Generale\",\"appearance_tab\":\"Aspetto\",\"advanced_tab\":\"Avanzate\",\"meta_props\":\"Informazioni Metatag\",langprops:\"Lingua e codifica\",\"meta_title\":\"Titolo\",\"meta_keywords\":\"Parole chiave\",\"meta_description\":\"Descrizione\",\"meta_robots\":\"Robots\",doctypes:\"Doctype\",langcode:\"Codice lingua\",langdir:\"Direzione testo\",ltr:\"Sinistra verso destra\",rtl:\"Destra verso sinistra\",\"xml_pi\":\"Dichiarazione XML\",encoding:\"Codifica carattere\",\"appearance_bgprops\":\"Propriet\\u00e0 sfondo\",\"appearance_marginprops\":\"Margini body\",\"appearance_linkprops\":\"Colori collegamenti\",\"appearance_textprops\":\"Propriet\\u00e0 testo\",bgcolor:\"Colore sfondo\",bgimage:\"Immagine sfondo\",\"left_margin\":\"Margine sinistro\",\"right_margin\":\"Margine destro\",\"top_margin\":\"Margine superiore\",\"bottom_margin\":\"Margine inferiore\",\"text_color\":\"Colore testo\",\"font_size\":\"Dimensione carattere\",\"font_face\":\"Tipo carattere\",\"link_color\":\"Colore collegamento\",\"hover_color\":\"Colore \\\\\\'Hover\\\\\\'\",\"visited_color\":\"Colore \\\\\\'Visited\\\\\\'\",\"active_color\":\"Colore \\\\\\'Active\\\\\\'\",textcolor:\"Colore\",fontsize:\"Dimensione carattere\",fontface:\"Famiglia carattere\",\"meta_index_follow\":\"Indicizzare e seguire collegamenti\",\"meta_index_nofollow\":\"Indicizzare e non segure collegamenti\",\"meta_noindex_follow\":\"Non indicizzare ma seguire collegamenti\",\"meta_noindex_nofollow\":\"Non indicizzare e non seguire collegamenti\",\"appearance_style\":\"Propriet\\u00e0 stili e fogli di stile\",stylesheet:\"Fogli di stile\",style:\"Stile\",author:\"Autore\",copyright:\"Copyright\",add:\"Aggiungi nuovo elemento\",remove:\"Rimuovi elemento selezionato\",moveup:\"Sposta elemento selezionato in alto\",movedown:\"Sposta elemento selezionato in basso\",\"head_elements\":\"Elementi Head\",info:\"Informazioni\",\"add_title\":\"Elemento Titolo\",\"add_meta\":\"Elemento Meta\",\"add_script\":\"Elemento Script\",\"add_style\":\"Elemento Style\",\"add_link\":\"Elemento Link\",\"add_base\":\"Elemento Base\",\"add_comment\":\"Nodo Commento\",\"title_element\":\"Elemento Titolo\",\"script_element\":\"Elemento Script\",\"style_element\":\"Elemento Style\",\"base_element\":\"Elemento Base\",\"link_element\":\"Elemento Link\",\"meta_element\":\"Elemento Meta\",\"comment_element\":\"Commento\",src:\"Sorgente\",language:\"Linguaggio\",href:\"Href\",target:\"Target\",type:\"Tipo\",charset:\"Set caratteri\",defer:\"Defer\",media:\"Media\",properties:\"Propriet\\u00e0\",name:\"Nome\",value:\"Valore\",content:\"Contenuto\",rel:\"Rel\",rev:\"Rev\",hreflang:\"Href lang\",\"general_props\":\"Generale\",\"advanced_props\":\"Avanzate\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/ka_dlg.js",
    "content": "tinyMCE.addI18n('ka.fullpage_dlg',{title:\"\\u10d3\\u10dd\\u10d9\\u10e3\\u10db\\u10d4\\u10dc\\u10e2\\u10d8\\u10e1 \\u10db\\u10d0\\u10ee\\u10d0\\u10e1\\u10d8\\u10d0\\u10d7\\u10d4\\u10d1\\u10da\\u10d4\\u10d1\\u10d8\",\"meta_tab\":\"\\u10e1\\u10d0\\u10d4\\u10e0\\u10d7\\u10dd\",\"appearance_tab\":\"\\u10e9\\u10d5\\u10d4\\u10dc\\u10d4\\u10d1\\u10d0\",\"advanced_tab\":\"\\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d8\\u10d7\",\"meta_props\":\"\\u10d8\\u10dc\\u10e4\\u10dd\\u10e0\\u10db\\u10d0\\u10ea\\u10d8\\u10d8\\u10e1 \\u10db\\u10d8\\u10d6\\u10d0\\u10dc\\u10d8\",langprops:\"\\u10d4\\u10dc\\u10d0 \\u10d3\\u10d0 \\u10d9\\u10dd\\u10d3\\u10d8\\u10e0\\u10d4\\u10d1\\u10d0\",\"meta_title\":\"\\u10e1\\u10d0\\u10d7\\u10d0\\u10e3\\u10e0\\u10d8\",\"meta_keywords\":\"\\u10e1\\u10d0\\u10d9\\u10d5\\u10d0\\u10dc\\u10eb\\u10dd \\u10e1\\u10d8\\u10e2\\u10e7\\u10d5\\u10d4\\u10d1\\u10d8\",\"meta_description\":\"\\u10d0\\u10e0\\u10ec\\u10d4\\u10e0\\u10d0\",\"meta_robots\":\"\\u10dc\\u10d0\\u10db\\u10e3\\u10e8\\u10d4\\u10d5\\u10e0\\u10d4\\u10d1\\u10d8\",doctypes:\"\\u10e2\\u10d8\\u10de\\u10d8\",langcode:\"\\u10d4\\u10dc\\u10d8\\u10e1 \\u10d9\\u10dd\\u10d3\\u10d8\",langdir:\"\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\\u10e1 \\u10db\\u10d8\\u10db\\u10d0\\u10e0\\u10d7\\u10e3\\u10da\\u10d4\\u10d1\\u10d0\",ltr:\"\\u10db\\u10d0\\u10e0\\u10ea\\u10e1\\u10dc\\u10d8\\u10d3\\u10d0\\u10dc \\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10dc\\u10d8\\u10d5\",rtl:\"\\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10dc\\u10d8\\u10d3\\u10d0\\u10dc \\u10db\\u10d0\\u10e0\\u10ea\\u10ee\\u10dc\\u10d8\\u10d5\",\"xml_pi\":\"XML \\u10d2\\u10d0\\u10dc\\u10ea\\u10ee\\u10d0\\u10d3\\u10d4\\u10d1\\u10d0\",encoding:\"\\u10d9\\u10dd\\u10d3\\u10d8\\u10e0\\u10d4\\u10d1\\u10d0\",\"appearance_bgprops\":\"\\u10e4\\u10dd\\u10dc\\u10d8\\u10e1 \\u10db\\u10d0\\u10ee\\u10d0\\u10e1\\u10d8\\u10d0\\u10d7\\u10d4\\u10d1\\u10da\\u10d4\\u10d1\\u10d8\",\"appearance_marginprops\":\"\\u10d3\\u10d0\\u10e8\\u10dd\\u10e0\\u10d4\\u10d1\\u10d4\\u10d1\\u10d8\",\"appearance_linkprops\":\"\\u10d1\\u10db\\u10e3\\u10da\\u10d4\\u10d1\\u10d8\\u10e1 \\u10e4\\u10d4\\u10e0\\u10d8\",\"appearance_textprops\":\"\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\\u10e1 \\u10db\\u10d0\\u10d0\\u10e1\\u10d8\\u10d0\\u10d7\\u10d4\\u10d1\\u10da\\u10d4\\u10d1\\u10d8\",bgcolor:\"\\u10e4\\u10dd\\u10dc\\u10d8\\u10e1 \\u10e4\\u10d4\\u10e0\\u10d8\",bgimage:\"\\u10e4\\u10dd\\u10dc\\u10e3\\u10e0\\u10d8 \\u10d2\\u10d0\\u10db\\u10dd\\u10e1\\u10d0\\u10ee\\u10e3\\u10da\\u10d4\\u10d1\\u10d0\",\"left_margin\":\"\\u10d3\\u10d0\\u10e8\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0 \\u10db\\u10d0\\u10e0\\u10ea\\u10e1\\u10dc\\u10d8\\u10d3\\u10d0\\u10dc\",\"right_margin\":\"\\u10d3\\u10d0\\u10e8\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0 \\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10dc\\u10d8\\u10d3\\u10d0\\u10dc\",\"top_margin\":\"\\u10d3\\u10d0\\u10e8\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0 \\u10d6\\u10d4\\u10db\\u10dd\\u10d3\\u10d0\\u10dc\",\"bottom_margin\":\"\\u10d3\\u10d0\\u10e8\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0 \\u10e5\\u10d5\\u10d4\\u10db\\u10dd\\u10d3\\u10d0\\u10dc\",\"text_color\":\"\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\\u10e1 \\u10e4\\u10d4\\u10e0\\u10d8\",\"font_size\":\"\\u10e8\\u10e0\\u10d8\\u10e4\\u10e2\\u10d8\\u10e1 \\u10d6\\u10dd\\u10db\\u10d0\",\"font_face\":\"\\u10e8\\u10e0\\u10d8\\u10e4\\u10e2\\u10d8\",\"link_color\":\"\\u10d1\\u10db\\u10e3\\u10da\\u10d8\\u10e1 \\u10e4\\u10d4\\u10e0\\u10d8\",\"hover_color\":\"\\u10d1\\u10db\\u10e3\\u10da\\u10d8\\u10e1 \\u10e4\\u10d4\\u10e0\\u10d8 \\u10d2\\u10d0\\u10d0\\u10e5\\u10e2\\u10d8\\u10e3\\u10e0\\u10d4\\u10d1\\u10d8\\u10e1\\u10d0\\u10e1\",\"visited_color\":\"\\u10d2\\u10d0\\u10d0\\u10e5\\u10e2\\u10d8\\u10e3\\u10e0\\u10d4\\u10d1\\u10e3\\u10da\\u10d8 \\u10d1\\u10db\\u10e3\\u10da\\u10d8\\u10e1 \\u10e4\\u10d4\\u10e0\\u10d8\",\"active_color\":\"\\u10d0\\u10e5\\u10e2\\u10d8\\u10e3\\u10e0\\u10d8 \\u10d1\\u10db\\u10e3\\u10da\\u10d8\\u10e1 \\u10e4\\u10d4\\u10e0\\u10d8\",textcolor:\"\\u10e4\\u10d4\\u10e0\\u10d8\",fontsize:\"\\u10e8\\u10e0\\u10d8\\u10e4\\u10e2\\u10d8\\u10e1 \\u10d6\\u10dd\\u10db\\u10d0\",fontface:\"\\u10e8\\u10e0\\u10d8\\u10e4\\u10e2\\u10d8\\u10e1 \\u10d9\\u10d0\\u10e2\\u10d4\\u10d2\\u10dd\\u10e0\\u10d8\\u10d0\",\"meta_index_follow\":\"\\u10d3\\u10d0\\u10d5\\u10d0\\u10d8\\u10dc\\u10d3\\u10d4\\u10e5\\u10e1\\u10dd\\u10d7 \\u10d3\\u10d0 \\u10d2\\u10d0\\u10d5\\u10e7\\u10d5\\u10d4\\u10d7 \\u10d1\\u10db\\u10e3\\u10da\\u10d4\\u10d1\\u10e1\",\"meta_index_nofollow\":\"\\u10d3\\u10d0\\u10d5\\u10d0\\u10d8\\u10dc\\u10d3\\u10d4\\u10e5\\u10e1\\u10dd\\u10d7 \\u10d3\\u10d0 \\u10d0\\u10e0 \\u10d2\\u10d0\\u10d5\\u10e7\\u10d5\\u10d4\\u10d7 \\u10d1\\u10db\\u10e3\\u10da\\u10d4\\u10d1\\u10e1\",\"meta_noindex_follow\":\"\\u10d0\\u10e0 \\u10d3\\u10d0\\u10d5\\u10d0\\u10d8\\u10dc\\u10d3\\u10d4\\u10e5\\u10e1\\u10dd\\u10d7, \\u10db\\u10d0\\u10d2\\u10e0\\u10d0\\u10db \\u10d1\\u10db\\u10e3\\u10da\\u10d4\\u10d1\\u10e1 \\u10d2\\u10d0\\u10d5\\u10e7\\u10d5\\u10d4\\u10d7\",\"meta_noindex_nofollow\":\"\\u10d0\\u10e0 \\u10d3\\u10d0\\u10d5\\u10d0\\u10d8\\u10dc\\u10d3\\u10d4\\u10e5\\u10e1\\u10dd\\u10d7 \\u10d3\\u10d0 \\u10d0\\u10e0 \\u10d2\\u10d0\\u10d5\\u10e7\\u10d5\\u10d4\\u10d7 \\u10d1\\u10db\\u10e3\\u10da\\u10d4\\u10d1\\u10e1\",\"appearance_style\":\"\\u10e1\\u10e2\\u10d8\\u10da\\u10d4\\u10d1\\u10d8\\u10e1 \\u10db\\u10d0\\u10e9\\u10d5\\u10d4\\u10dc\\u10d4\\u10d1\\u10da\\u10d4\\u10d1\\u10d8 \\u10d3\\u10d0 \\u10e1\\u10d8\\u10d0\",stylesheet:\"\\u10e1\\u10e2\\u10d8\\u10da\\u10d4\\u10d1\\u10d8\\u10e1 \\u10e1\\u10d8\\u10d0\",style:\"\\u10e1\\u10e2\\u10d8\\u10da\\u10d8\",author:\"\\u10d0\\u10d5\\u10e2\\u10dd\\u10e0\\u10d8\",copyright:\"\\u10d9\\u10dd\\u10de\\u10d8\\u10e0\\u10d0\\u10d8\\u10e2\\u10d8\",add:\"\\u10d0\\u10ee\\u10d0\\u10da\\u10d8 \\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0\",remove:\"\\u10db\\u10dd\\u10dc\\u10d8\\u10e8\\u10dc\\u10e3\\u10da\\u10d8 \\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d8\\u10e1 \\u10ec\\u10d0\\u10e8\\u10da\\u10d0\",moveup:\"\\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d8\\u10e1 \\u10d6\\u10d4\\u10db\\u10dd\\u10d7 \\u10d2\\u10d0\\u10d3\\u10d0\\u10d0\\u10d3\\u10d2\\u10d8\\u10da\\u10d4\\u10d1\\u10d0\",movedown:\"\\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d8\\u10e1 \\u10e5\\u10d5\\u10d4\\u10db\\u10dd\\u10d7 \\u10d2\\u10d0\\u10d3\\u10d0\\u10d0\\u10d3\\u10d2\\u10d8\\u10da\\u10d4\\u10d1\\u10d0\",\"head_elements\":\"\\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d8 Header\",info:\"\\u10d8\\u10dc\\u10e4\\u10dd\\u10e0\\u10db\\u10d0\\u10ea\\u10d8\\u10d0\",\"add_title\":\"\\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d8 Title\",\"add_meta\":\"\\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d8 Meta\",\"add_script\":\"\\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d8 Script\",\"add_style\":\"\\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d8 Style\",\"add_link\":\"\\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d8 Link\",\"add_base\":\"\\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d8 Base\",\"add_comment\":\"\\u10d9\\u10dd\\u10db\\u10d4\\u10dc\\u10e2\\u10d0\\u10e0\\u10d8\",\"title_element\":\"\\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d8 Title\",\"script_element\":\"\\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d8 Script\",\"style_element\":\"\\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d8 Style\",\"base_element\":\"\\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d8 Base\",\"link_element\":\"\\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d8 Link\",\"meta_element\":\"\\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d8 Meta\",\"comment_element\":\"\\u10d9\\u10dd\\u10db\\u10d4\\u10dc\\u10e2\\u10d8\\u10d0\\u10e0\\u10d8\",src:\"Src\",language:\"\\u10d4\\u10dc\\u10d0\",href:\"\\u10d1\\u10db\\u10e3\\u10da\\u10d8\",target:\"\\u10db\\u10d8\\u10d6\\u10d0\\u10dc\\u10d8\",type:\"\\u10e2\\u10d8\\u10de\\u10d8\",charset:\"\\u10d9\\u10dd\\u10d3\\u10d8\\u10e0\\u10d4\\u10d1\\u10d0\",defer:\"\\u10d2\\u10d0\\u10d3\\u10d0\\u10e2\\u10d0\\u10dc\\u10d0\",media:\"\\u10db\\u10d4\\u10d3\\u10d8\\u10d0\",properties:\"\\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",name:\"\\u10e1\\u10d0\\u10ee\\u10d4\\u10da\\u10ec\\u10dd\\u10d3\\u10d4\\u10d1\\u10d0\",value:\"\\u10db\\u10d0\\u10e9\\u10d5\\u10d4\\u10dc\\u10d4\\u10d1\\u10d4\\u10da\\u10d8\",content:\"\\u10e8\\u10d8\\u10dc\\u10d0\\u10d0\\u10e0\\u10e1\\u10d8\",rel:\"Rel\",rev:\"Rev\",hreflang:\"\\u10d4\\u10dc\\u10d8\\u10e1 \\u10d1\\u10db\\u10e3\\u10da\\u10d8\",\"general_props\":\"\\u10e1\\u10d0\\u10d4\\u10e0\\u10d7\\u10dd\",\"advanced_props\":\"\\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d8\\u10d7\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/ko_dlg.js",
    "content": "tinyMCE.addI18n('ko.fullpage_dlg',{title:\"\\ubb38\\uc11c \\uc18d\\uc131\",\"meta_tab\":\"\\uc77c\\ubc18\",\"appearance_tab\":\"\\ud45c\\uc2dc\",\"advanced_tab\":\"\\uc138\\ubd80 \\uc0ac\\ud56d\",\"meta_props\":\"\\uba54\\ud0c0 \\uc815\\ubcf4\",langprops:\"\\uc5b8\\uc5b4 \\ubc0f \\uc778\\ucf54\\ub529\",\"meta_title\":\"\\uc81c\\ubaa9\",\"meta_keywords\":\"\\ud0a4\\uc6cc\\ub4dc\",\"meta_description\":\"\\uc124\\uba85\",\"meta_robots\":\"\\ub85c\\ubd07\",doctypes:\"Doctype\",langcode:\"\\uc5b8\\uc5b4 \\ucf54\\ub4dc\",langdir:\"\\ubb38\\uc790 \\ubc29\\ud5a5\",ltr:\"\\uc67c\\ucabd\\uc5d0\\uc11c \\uc624\\ub978\\ucabd\\uc73c\\ub85c\",rtl:\"\\uc624\\ub978\\ucabd\\uc5d0\\uc11c \\uc67c\\ucabd\\uc73c\\ub85c\",\"xml_pi\":\"XML \\uc120\\uc5b8\",encoding:\"\\ubb38\\uc790 \\uc778\\ucf54\\ub529\",\"appearance_bgprops\":\"\\ubc30\\uacbd \\uc18d\\uc131\",\"appearance_marginprops\":\"Body \\ub9c8\\uc9c4\",\"appearance_linkprops\":\"\\ub9c1\\ud06c\\uc0c9\",\"appearance_textprops\":\"\\ud14d\\uc2a4\\ud2b8 \\uc18d\\uc131\",bgcolor:\"\\ubc30\\uacbd\\uc0c9\",bgimage:\"\\ubc30\\uacbd \\uc774\\ubbf8\\uc9c0\",\"left_margin\":\"\\uc67c\\ucabd \\ub9c8\\uc9c4\",\"right_margin\":\"\\uc624\\ub978\\ucabd \\ub9c8\\uc9c4\",\"top_margin\":\"\\uc704 \\ub9c8\\uc9c4\",\"bottom_margin\":\"\\uc544\\ub798 \\ub9c8\\uc9c4\",\"text_color\":\"\\ubb38\\uc790\\uc0c9\",\"font_size\":\"\\uae00\\uaf34 \\ud06c\\uae30\",\"font_face\":\"\\uae00\\uaf34\\uba85\",\"link_color\":\"\\ub9c1\\ud06c\\uc0c9\",\"hover_color\":\"\\ub9c1\\ud06c\\uc0c9(hover)\",\"visited_color\":\"\\ub9c1\\ud06c\\uc0c9(visited)\",\"active_color\":\"\\ub9c1\\ud06c\\uc0c9(active)\",textcolor:\"\\uc0c9\",fontsize:\"\\uae00\\uaf34 \\ud06c\\uae30\",fontface:\"\\uae00\\uaf34\\uad70\",\"meta_index_follow\":\"\\ubaa8\\ub450 \\ud5c8\\uac00\",\"meta_index_nofollow\":\"\\ud398\\uc774\\uc9c0\\ub97c \\ud5c8\\uac00\\ud558\\uc9c0\\ub9cc \\ub9c1\\ud06c \\uae08\\uc9c0\",\"meta_noindex_follow\":\"\\ud398\\uc774\\uc9c0\\ub97c \\uae08\\uc9c0\\ud558\\uace0 \\ub9c1\\ud06c \\ud5c8\\uac00\",\"meta_noindex_nofollow\":\"\\ubaa8\\ub450 \\uae08\\uc9c0\",\"appearance_style\":\"\\uc2a4\\ud0c0\\uc77c\\uc2dc\\ud2b8 \\ubc0f \\uc11c\\uc2dd \\uc18d\\uc131\",stylesheet:\"\\uc2a4\\ud0c0\\uc77c\\uc2dc\\ud2b8\",style:\"\\uc11c\\uc2dd\",author:\"\\uc81c\\uc791\\uc790\",copyright:\"\\uc800\\uc791\\uad8c\",add:\"\\uc0c8 \\uc694\\uc18c \\ucd94\\uac00\",remove:\"\\uc120\\ud0dd\\ud55c \\uc694\\uc18c \\uc0ad\\uc81c\",moveup:\"\\uc120\\ud0dd\\ud55c \\uc694\\uc18c\\ub97c \\uc704\\ub85c \\uc774\\ub3d9\",movedown:\"\\uc120\\ud0dd\\ud55c \\uc694\\uc18c\\ub97c \\uc544\\ub798\\ub85c \\uc774\\ub3d9\",\"head_elements\":\"Head \\uc694\\uc18c\",info:\"\\uc815\\ubcf4\",\"add_title\":\"Title \\uc694\\uc18c\",\"add_meta\":\"Meta \\uc694\\uc18c\",\"add_script\":\"Script \\uc694\\uc18c\",\"add_style\":\"Style \\uc694\\uc18c\",\"add_link\":\"Link \\uc694\\uc18c\",\"add_base\":\"Base \\uc694\\uc18c\",\"add_comment\":\"\\uc8fc\\uc11d \\uc694\\uc18c\",\"title_element\":\"Title \\uc694\\uc18c\",\"script_element\":\"Script \\uc694\\uc18c\",\"style_element\":\"Style \\uc694\\uc18c\",\"base_element\":\"Base \\uc694\\uc18c\",\"link_element\":\"Link \\uc694\\uc18c\",\"meta_element\":\"Meta \\uc694\\uc18c\",\"comment_element\":\"\\uc8fc\\uc11d\",src:\"Src\",language:\"Language\",href:\"Href\",target:\"Target\",type:\"Type\",charset:\"Charset\",defer:\"Defer\",media:\"Media\",properties:\"\\uc18d\\uc131\",name:\"\\uc774\\ub984\",value:\"\\uac12\",content:\"\\ub0b4\\uc6a9\",rel:\"Rel\",rev:\"Rev\",hreflang:\"Href lang\",\"general_props\":\"\\uc77c\\ubc18\",\"advanced_props\":\"\\uc138\\ubd80 \\uc0ac\\ud56d\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/nb_dlg.js",
    "content": "tinyMCE.addI18n('nb.fullpage_dlg',{title:\"Dokumentegenskaper\",\"meta_tab\":\"Generelt\",\"appearance_tab\":\"Utseende\",\"advanced_tab\":\"Avansert\",\"meta_props\":\"Metainformasjon\",langprops:\"Spr\\u00e5k og koding\",\"meta_title\":\"Tittel\",\"meta_keywords\":\"N\\u00f8kkelord\",\"meta_description\":\"Beskrivelse\",\"meta_robots\":\"Roboter\",doctypes:\"Doctype\",langcode:\"Spr\\u00e5kkode\",langdir:\"Skriftretning\",ltr:\"Venstre mot h\\u00f8yre\",rtl:\"H\\u00f8yre mot venstre\",\"xml_pi\":\"XML-deklarasjon\",encoding:\"Tegnkonvertering\",\"appearance_bgprops\":\"Bakgrunnsegenskaper\",\"appearance_marginprops\":\"Body-marg\",\"appearance_linkprops\":\"Lenkefarger\",\"appearance_textprops\":\"Tekstegenskaper\",bgcolor:\"Bakgrunn\",bgimage:\"Bakgrunnsbilde\",\"left_margin\":\"Venstre marg\",\"right_margin\":\"H\\u00f8yre marg\",\"top_margin\":\"Toppmarg\",\"bottom_margin\":\"Bunnmarg\",\"text_color\":\"Farge\",\"font_size\":\"Skriftst\\u00f8rrelse\",\"font_face\":\"Skrifttype\",\"link_color\":\"Lenkefarge\",\"hover_color\":\"Mus over-farge\",\"visited_color\":\"Bes\\u00f8kt-farge\",\"active_color\":\"Aktive farge\",textcolor:\"Farge\",fontsize:\"Skriftst\\u00f8rrelse\",fontface:\"Skrifttype\",\"meta_index_follow\":\"Indekser, og f\\u00f8lg lenkene\",\"meta_index_nofollow\":\"Indekser, men ikke f\\u00f8lg lenkene\",\"meta_noindex_follow\":\"Ikke indekser, men f\\u00f8lg lenkene\",\"meta_noindex_nofollow\":\"Ikke indekser, og ikke f\\u00f8lg lenkene\",\"appearance_style\":\"Stilark og stilegenskaper\",stylesheet:\"Stilark\",style:\"Stil\",author:\"Forfatter\",copyright:\"Copyright\",add:\"Legg til nytt element\",remove:\"Fjern\",moveup:\"Flytt markert element opp\",movedown:\"Flytt markert element ned\",\"head_elements\":\"Overskriftselementer\",info:\"Informasjon\",\"add_title\":\"Tittelelement\",\"add_meta\":\"Metaelement\",\"add_script\":\"Skriptelement\",\"add_style\":\"Stilelement\",\"add_link\":\"Lenkeelement\",\"add_base\":\"Basiselement\",\"add_comment\":\"Kommentarnode\",\"title_element\":\"Tittelelement\",\"script_element\":\"Skriptelement\",\"style_element\":\"Stilelement\",\"base_element\":\"Basiselement\",\"link_element\":\"Lenkeelement\",\"meta_element\":\"Metaelement\",\"comment_element\":\"Kommentar\",src:\"Skjerm\",language:\"Spr\\u00e5k\",href:\"Href\",target:\"M\\u00e5l\",type:\"Type\",charset:\"Tegnsett\",defer:\"Defer\",media:\"Objekt\",properties:\"Egenskaper\",name:\"Navn\",value:\"Verdi\",content:\"Innhold\",rel:\"Sidens forhold til m\\u00e5let\",rev:\"M\\u00e5lets forhold til siden\",hreflang:\"Href lang\",\"general_props\":\"Generelt\",\"advanced_props\":\"Avasert\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/nl_dlg.js",
    "content": "tinyMCE.addI18n('nl.fullpage_dlg',{title:\"Documenteigenschappen\",meta_tab:\"Algemeen\",appearance_tab:\"Weergave\",advanced_tab:\"Geavanceerd\",meta_props:\"Meta informatie\",langprops:\"Taal en codering\",meta_title:\"Titel\",meta_keywords:\"Sleutelwoorden\",meta_description:\"Beschrijving\",meta_robots:\"Robots\",doctypes:\"Doctype\",langcode:\"Taalcode\",langdir:\"Taalrichting\",ltr:\"Van links naar rechts\",rtl:\"Van rechts naar links\",xml_pi:\"XML toewijzing\",encoding:\"Karaktercodering\",appearance_bgprops:\"Achtergrondeigenschappen\",appearance_marginprops:\"Bodymarge\",appearance_linkprops:\"Linkkleuren\",appearance_textprops:\"Teksteigenschappen\",bgcolor:\"Achtergrondkleur\",bgimage:\"Achtergrondafbeelding\",left_margin:\"Linkermarge\",right_margin:\"Rechtermarge\",top_margin:\"Bovenmarge\",bottom_margin:\"Ondermarge\",text_color:\"Tekstkleur\",font_size:\"Tekengrootte\",font_face:\"Lettertype\",link_color:\"Linkkleur\",hover_color:\"Hoverkleur\",visited_color:\"Bezocht kleur\",active_color:\"Actieve kleur\",textcolor:\"Kleur\",fontsize:\"Tekengrootte\",fontface:\"Lettertype\",meta_index_follow:\"Links indexeren en volgen\",meta_index_nofollow:\"Links indexeren maar niet volgen\",meta_noindex_follow:\"Links volgen maar niet indexeren\",meta_noindex_nofollow:\"Links niet indexeren en niet volgen\",appearance_style:\"Stijlblad en stijleigenschappen\",stylesheet:\"Stijlblad\",style:\"Stijl\",author:\"Auteur\",copyright:\"Copyright\",add:\"Nieuw element toevoegen\",remove:\"Geselecteerde elementen verwijderen\",moveup:\"Geselecteerde elementen omhoog verplaatsen\",movedown:\"Geselecteerde elementen omlaag verplaatsen\",head_elements:\"Kopelementen\",info:\"Informatie\",add_title:\"Titelelement\",add_meta:\"Meta-element\",add_script:\"Scriptelement\",add_style:\"Stijlelement\",add_link:\"Linkelement\",add_base:\"Basiselement\",add_comment:\"Opmerkingknooppunt\",title_element:\"Titelelement\",script_element:\"Scriptelement\",style_element:\"Stijlelement\",base_element:\"Basiselement\",link_element:\"Linkelement\",meta_element:\"Meta-element\",comment_element:\"Opmerking\",src:\"Bron\",language:\"Taal\",href:\"Href\",target:\"Doel\",type:\"Type\",charset:\"Karakterset\",defer:\"Uitstellen\",media:\"Media\",properties:\"Eigenschappen\",name:\"Naam\",value:\"Waarde\",content:\"Inhoud\",rel:\"Rel\",rev:\"Rev\",hreflang:\"Href taal\",general_props:\"Algemeen\",advanced_props:\"Geavanceerd\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/pl_dlg.js",
    "content": "tinyMCE.addI18n('pl.fullpage_dlg',{title:\"W\\u0142a\\u015bciwo\\u015bci dokumentu\",meta_tab:\"Og\\u00f3lne\",appearance_tab:\"Wygl\\u0105d\",advanced_tab:\"Zaawansowane\",meta_props:\"Meta informacje\",langprops:\"J\\u0119zyk i kodowanie\",meta_title:\"Tytu\\u0142\",meta_keywords:\"S\\u0142owa kluczowe\",meta_description:\"Opis\",meta_robots:\"Roboty\",doctypes:\"Typ dokumentu\",langcode:\"Oznaczenie kodowe j\\u0119zyka\",langdir:\"Kierunek czytania tekstu\",ltr:\"Kierunek z lewej do prawej\",rtl:\"Kierunek z prawej do lewej\",xml_pi:\"XML deklaracja\",encoding:\"Kodowanie znak\\u00f3w\",appearance_bgprops:\"W\\u0142a\\u015bciwo\\u015bci t\\u0142a\",appearance_marginprops:\"Marginesy strony\",appearance_linkprops:\"Kolor odno\\u015bnik\\u00f3w\",appearance_textprops:\"W\\u0142a\\u015bciwo\\u015bci tekstu\",bgcolor:\"Kolor t\\u0142a\",bgimage:\"Obrazek t\\u0142a\",left_margin:\"Lewy margines\",right_margin:\"Prawy margines\",top_margin:\"G\\u00f3rny margines\",bottom_margin:\"Dolny margines\",text_color:\"Kolor tekstu\",font_size:\"Rozmiar czcionki\",font_face:\"Czcionka\",link_color:\"Kolor odno\\u015bnika\",hover_color:\"Kolor po najechaniu myszk\\u0105\",visited_color:\"Kolor odwiedzonych link\\u00f3w\",active_color:\"Kolor aktywnych link\\u00f3w\",textcolor:\"Kolor\",fontsize:\"Rozmiar czcionki\",fontface:\"Rodzaj czcionki\",meta_index_follow:\"Indeksuj i pod\\u0105\\u017caj za linkami\",meta_index_nofollow:\"Indeksuj i nie pod\\u0105\\u017caj za odno\\u015bnikami\",meta_noindex_follow:\"Nie indeksuj i pod\\u0105\\u017caj za odno\\u015bnikami\",meta_noindex_nofollow:\"Nie indeksuj i nie pod\\u0105\\u017caj za odno\\u015bnikami\",appearance_style:\"Arkusze i w\\u0142a\\u015bciwo\\u015bci styl\\u00f3w\",stylesheet:\"Arkusz styl\\u00f3w\",style:\"Styl\",author:\"Autor\",copyright:\"Prawa autorskie\",add:\"Dodaj nowy element\",remove:\"Usu\\u0144 wybrany element\",moveup:\"Przesu\\u0144 wybrane element do g\\u00f3ry\",movedown:\"Przesu\\u0144 wybrane element w d\\u00f3\\u0142\",head_elements:\"Elementy nag\\u0142\\u00f3wka\",info:\"Informacja\",add_title:\"Tytu\\u0142\",add_meta:\"Meta tag\",add_script:\"Skrypt\",add_style:\"Styl\",add_link:\"Odno\\u015bnik\",add_base:\"Baza\",add_comment:\"Komentarz\",title_element:\"Tytu\\u0142\",script_element:\"Skrypt\",style_element:\"Styl\",base_element:\"Baza\",link_element:\"Odno\\u015bnik\",meta_element:\"Meta tag\",comment_element:\"Komentarz\",src:\"\\u0139\\u0161r\\u00f3d\\u0142o\",language:\"J\\u0119zyk\",href:\"Odno\\u015bnik\",target:\"Cel\",type:\"Typ\",charset:\"Kodowanie\",defer:\"Defer\",media:\"Media\",properties:\"W\\u0142a\\u015bciwo\\u015bci\",name:\"Nazwa\",value:\"Warto\\u015b\\u0107\",content:\"Zawarto\\u015b\\u0107\",rel:\"Rel\",rev:\"Rev\",hreflang:\"J\\u0119zyk odno\\u015bnika\",general_props:\"G\\u0142\\u00f3wne\",advanced_props:\"Zaawansowane\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/pt_dlg.js",
    "content": "tinyMCE.addI18n('pt.fullpage_dlg',{title:\"Propriedades do documento\",meta_tab:\"Geral\",appearance_tab:\"Apar\\u00eancia\",advanced_tab:\"Avan\\u00e7ado\",meta_props:\"Meta-informa\\u00e7\\u00e3o\",langprops:\"Idioma e codifica\\u00e7\\u00e3o\",meta_title:\"T\\u00edtulo\",meta_keywords:\"Palavras-chave\",meta_description:\"Descri\\u00e7\\u00e3o\",meta_robots:\"Robots\",doctypes:\"Doctype\",langcode:\"C\\u00f3digo do idioma\",langdir:\"Dire\\u00e7\\u00e3o do texto\",ltr:\"Esquerda para direita\",rtl:\"Direita para esquerda\",xml_pi:\"Declara\\u00e7\\u00e3o XML\",encoding:\"Codifica\\u00e7\\u00e3o de caracteres\",appearance_bgprops:\"Propriedades do plano de fundo\",appearance_marginprops:\"Margens (BODY)\",appearance_linkprops:\"Cores dos links\",appearance_textprops:\"Propriedades de texto\",bgcolor:\"Cor de fundo\",bgimage:\"Imagem de fundo\",left_margin:\"Margem esquerda\",right_margin:\"Margem direita\",top_margin:\"Margem topo\",bottom_margin:\"Margem base\",text_color:\"Cor do texto\",font_size:\"Tamanho fonte\",font_face:\"Fonte\",link_color:\"Cores dos links\",hover_color:\"Hover\",visited_color:\"Visitado\",active_color:\"Ativo\",textcolor:\"Cor\",fontsize:\"Tamanho fonte\",fontface:\"Fonte\",meta_index_follow:\"Indexar e seguir os hyperlinks\",meta_index_nofollow:\"Indexar e n\\u00e3o seguir os hyperlinks\",meta_noindex_follow:\"Seguir hyperlinks, mas n\\u00e3o indexar\",meta_noindex_nofollow:\"N\\u00e3o indexar / n\\u00e3o seguir hyperlinks.\",appearance_style:\"Propriedades de folhas de estilo\",stylesheet:\"Folha de estilo\",style:\"Estilo\",author:\"Autor\",copyright:\"Copyright\",add:\"Acrescentar novo elemento\",remove:\"Remover elemento selecionado\",moveup:\"Subir elemento selecionado\",movedown:\"Descer elemento selecionado\",head_elements:\"Elementos HEAD\",info:\"Informa\\u00e7\\u00e3o\",add_title:\"TITLE\",add_meta:\"META\",add_script:\"SCRIPT\",add_style:\"STYLE\",add_link:\"LINK\",add_base:\"BASE\",add_comment:\"Coment\\u00e1rio\",title_element:\"TITLE\",script_element:\"SCRIPT\",style_element:\"STYLE\",base_element:\"BASE\",link_element:\"LINK\",meta_element:\"META\",comment_element:\"Coment\\u00e1rio\",src:\"src\",language:\"Idioma\",href:\"href\",target:\"Alvo\",type:\"Tipo\",charset:\"Charset\",defer:\"Adiar\",media:\"Media\",properties:\"Propriedades\",name:\"Nome\",value:\"Valor\",content:\"Conte\\u00fado\",rel:\"rel\",rev:\"rev\",hreflang:\"href lang\",general_props:\"Geral\",advanced_props:\"Avan\\u00e7ado\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/ro_dlg.js",
    "content": "tinyMCE.addI18n('ro.fullpage_dlg',{title:\"Propriet\\u0103\\u0163i document\",meta_tab:\"General\",appearance_tab:\"Aparen\\u0163\\u0103\",advanced_tab:\"Avansat\",meta_props:\"Meta informa\\u0163ii\",langprops:\"Limb\\u0103 \\u015fi codare\",meta_title:\"Titlu\",meta_keywords:\"Cuvinte cheie\",meta_description:\"Descriere\",meta_robots:\"Robo\\u0163i\",doctypes:\"Doctype\",langcode:\"Cod limb\\u0103\",langdir:\"Direc\\u0163ie limb\\u0103\",ltr:\"De la st\\u00e2nga la dreapta\",rtl:\"De la dreapta la st\\u00e2nga\",xml_pi:\"Declara\\u0163ie XML\",encoding:\"Cod caractere\",appearance_bgprops:\"Propriet\\u0103\\u0163i fundal\",appearance_marginprops:\"Margini corp\",appearance_linkprops:\"Culoare leg\\u0103turi\",appearance_textprops:\"Propriet\\u0103\\u0163i text\",bgcolor:\"Culoare de fundal\",bgimage:\"Imagine de fundal\",left_margin:\"Margine st\\u00e2nga\",right_margin:\"Margine dreapta\",top_margin:\"Margine sus\",bottom_margin:\"Margine jos\",text_color:\"Culoare text\",font_size:\"Dimensiune font\",font_face:\"Tip font\",link_color:\"Culoare leg\\u0103tur\\u0103\",hover_color:\"Culoare leg\\u0103tur\\u0103 la maus deasupra\",visited_color:\"Leg\\u0103tur\\u0103 vizitat\\u0103\",active_color:\"Leg\\u0103tur\\u0103 activ\\u0103\",textcolor:\"Culoare\",fontsize:\"Dimensiune font\",fontface:\"Tip font\",meta_index_follow:\"Indexeaz\\u0103 \\u015fi urm\\u0103re\\u015fte aceste leg\\u0103turi\",meta_index_nofollow:\"Indexeaz\\u0103 \\u015fi nu urm\\u0103ri aceste leg\\u0103turi\",meta_noindex_follow:\"Nu indexa, dar urm\\u0103re\\u015fte aceste leg\\u0103turi\",meta_noindex_nofollow:\"Nu indexa \\u015fi nu urm\\u0103ri aceste leg\\u0103turi\",appearance_style:\"Stil\",stylesheet:\"Foaie de stil\",style:\"Stil\",author:\"Autor\",copyright:\"Copyright\",add:\"Adaug\\u0103 un element\",remove:\"\\u015eterge element selectat\",moveup:\"Mut\\u0103 elementul selectat \\u00een sus\",movedown:\"Mut\\u0103 elementul selectat \\u00een jos\",head_elements:\"Elemente de antet\",info:\"Informa\\u0163ii\",add_title:\"Titlu\",add_meta:\"Meta\",add_script:\"Script\",add_style:\"Stil\",add_link:\"Link\",add_base:\"Base\",add_comment:\"Comentariu\",title_element:\"Title\",script_element:\"Script\",style_element:\"Stil\",base_element:\"Base\",link_element:\"Link\",meta_element:\"Meta\",comment_element:\"Comentariu\",src:\"Src\",language:\"Limb\\u0103\",href:\"Href\",target:\"\\u0162int\\u0103\",type:\"Tip\",charset:\"Set de caractere\",defer:\"Defer\",media:\"Media\",properties:\"Propriet\\u0103\\u0163i\",name:\"Nume\",value:\"Valoare\",content:\"Con\\u0163inut\",rel:\"Rel\",rev:\"Rev\",hreflang:\"Href lang\",general_props:\"General\",advanced_props:\"Avansat\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/ru_dlg.js",
    "content": "tinyMCE.addI18n('ru.fullpage_dlg',{title:\"\\u0421\\u0432\\u043e\\u0439\\u0441\\u0442\\u0432\\u0430 \\u0434\\u043e\\u043a\\u0443\\u043c\\u0435\\u043d\\u0442\\u0430\",meta_tab:\"\\u041e\\u0431\\u0449\\u0435\\u0435\",appearance_tab:\"\\u0412\\u0438\\u0434\",advanced_tab:\"\\u0414\\u043e\\u043f\\u043e\\u043b\\u043d\\u0438\\u0442\\u0435\\u043b\\u044c\\u043d\\u043e\",meta_props:\"\\u0426\\u0435\\u043b\\u044c \\u0438\\u043d\\u0444\\u043e\\u0440\\u043c\\u0430\\u0446\\u0438\\u0438\",langprops:\"\\u042f\\u0437\\u044b\\u043a \\u0438 \\u043a\\u043e\\u0434\\u0438\\u0440\\u043e\\u0432\\u0430\\u043d\\u0438\\u044f\",meta_title:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a\",meta_keywords:\"\\u041a\\u043b\\u044e\\u0447\\u0435\\u0432\\u044b\\u0435 \\u0441\\u043b\\u043e\\u0432\\u0430\",meta_description:\"\\u041e\\u043f\\u0438\\u0441\\u0430\\u043d\\u0438\\u0435\",meta_robots:\"\\u0420\\u0430\\u0431\\u043e\\u0442\\u044b\",doctypes:\"\\u0422\\u0438\\u043f\",langcode:\"\\u041a\\u043e\\u0434 \\u044f\\u0437\\u044b\\u043a\\u0430\",langdir:\"\\u041d\\u0430\\u043f\\u0440\\u0430\\u0432\\u043b\\u0435\\u043d\\u0438\\u0435 \\u0442\\u0435\\u043a\\u0441\\u0442\\u0430\",ltr:\"\\u0421\\u043b\\u0435\\u0432\\u0430 \\u043d\\u0430\\u043f\\u0440\\u0430\\u0432\\u043e\",rtl:\"\\u0421\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043d\\u0430\\u043b\\u0435\\u0432\\u043e\",xml_pi:\"\\u041e\\u0431\\u044a\\u044f\\u0432\\u043b\\u0435\\u043d\\u0438\\u0435 XML\",encoding:\"\\u041a\\u043e\\u0434\\u0438\\u0440\\u043e\\u0432\\u043a\\u0430\",appearance_bgprops:\"\\u0421\\u0432\\u043e\\u0439\\u0441\\u0442\\u0432\\u0430 \\u0444\\u043e\\u043d\\u0430\",appearance_marginprops:\"\\u041e\\u0442\\u0441\\u0442\\u0443\\u043f\\u044b\",appearance_linkprops:\"\\u0426\\u0432\\u0435\\u0442 \\u0441\\u0441\\u044b\\u043b\\u043e\\u043a\",appearance_textprops:\"\\u0421\\u0432\\u043e\\u0439\\u0441\\u0442\\u0432\\u0430 \\u0442\\u0435\\u043a\\u0441\\u0442\\u0430\",bgcolor:\"\\u0426\\u0432\\u0435\\u0442 \\u0444\\u043e\\u043d\\u0430\",bgimage:\"\\u0424\\u043e\\u043d\\u043e\\u0432\\u043e\\u0435 \\u0438\\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u0438\\u0435\",left_margin:\"\\u041e\\u0442\\u0441\\u0442\\u0443\\u043f \\u0441\\u043b\\u0435\\u0432\\u0430\",right_margin:\"\\u041e\\u0442\\u0441\\u0442\\u0443\\u043f \\u0441\\u043f\\u0440\\u0430\\u0432\\u0430\",top_margin:\"\\u041e\\u0442\\u0441\\u0442\\u0443\\u043f \\u0441\\u0432\\u0435\\u0440\\u0445\\u0443\",bottom_margin:\"\\u041e\\u0442\\u0441\\u0442\\u0443\\u043f \\u0441\\u043d\\u0438\\u0437\\u0443\",text_color:\"\\u0426\\u0432\\u0435\\u0442 \\u0442\\u0435\\u043a\\u0441\\u0442\\u0430\",font_size:\"\\u0420\\u0430\\u0437\\u043c\\u0435\\u0440 \\u0448\\u0440\\u0438\\u0444\\u0442\\u0430\",font_face:\"\\u0428\\u0440\\u0438\\u0444\\u0442\",link_color:\"\\u0426\\u0432\\u0435\\u0442 \\u0441\\u0441\\u044b\\u043b\\u043a\\u0438\",hover_color:\"\\u0426\\u0432\\u0435\\u0442 \\u0441\\u0441\\u044b\\u043b\\u043a\\u0438 \\u043f\\u0440\\u0438 \\u043d\\u0430\\u0432\\u0435\\u0434\\u0435\\u043d\\u0438\\u0438\",visited_color:\"\\u0426\\u0432\\u0435\\u0442 \\u043d\\u0430\\u0436\\u0430\\u0442\\u043e\\u0439 \\u0441\\u0441\\u044b\\u043b\\u043a\\u0438\",active_color:\"\\u0426\\u0432\\u0435\\u0442 \\u0430\\u043a\\u0442\\u0438\\u0432\\u043d\\u043e\\u0439 \\u0441\\u0441\\u044b\\u043b\\u043a\\u0438\",textcolor:\"\\u0426\\u0432\\u0435\\u0442\",fontsize:\"\\u0420\\u0430\\u0437\\u043c\\u0435\\u0440 \\u0448\\u0440\\u0438\\u0444\\u0442\\u0430\",fontface:\"\\u0421\\u0435\\u043c\\u0435\\u0439\\u0441\\u0442\\u0432\\u043e \\u0448\\u0440\\u0438\\u0444\\u0442\\u043e\\u0432\",meta_index_follow:\"Index and follow the links\",meta_index_nofollow:\"Index and don\\'t follow the links\",meta_noindex_follow:\"Do not index but follow the links\",meta_noindex_nofollow:\"Do not index and don \\\\ \\'t follow the links\",appearance_style:\"\\u041b\\u0438\\u0441\\u0442 \\u0438 \\u0441\\u0432\\u043e\\u0439\\u0441\\u0442\\u0432\\u0430 \\u0441\\u0442\\u0438\\u043b\\u0435\\u0439\",stylesheet:\"\\u041b\\u0438\\u0441\\u0442 \\u0441\\u0442\\u0438\\u043b\\u0435\\u0439\",style:\"\\u0421\\u0442\\u0438\\u043b\\u044c\",author:\"\\u0410\\u0432\\u0442\\u043e\\u0440\",copyright:\"\\u041a\\u043e\\u043f\\u0438\\u0440\\u0430\\u0439\\u0442\",add:\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\u043d\\u043e\\u0432\\u044b\\u0439 \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\",remove:\"\\u0423\\u0434\\u0430\\u043b\\u0438\\u0442\\u044c \\u0432\\u044b\\u0434\\u0435\\u043b\\u0435\\u043d\\u043d\\u044b\\u0439 \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\",moveup:\"\\u041f\\u0435\\u0440\\u0435\\u043c\\u0435\\u0441\\u0442\\u0438\\u0442\\u044c \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 \\u0432\\u0432\\u0435\\u0440\\u0445\",movedown:\"\\u041f\\u0435\\u0440\\u0435\\u043c\\u0435\\u0441\\u0442\\u0438\\u0442\\u044c \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 \\u0432\\u043d\\u0438\\u0437\",head_elements:\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Header\",info:\"\\u0418\\u043d\\u0444\\u043e\\u0440\\u043c\\u0430\\u0446\\u0438\\u044f\",add_title:\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Title\",add_meta:\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Meta\",add_script:\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Script\",add_style:\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Style\",add_link:\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Link\",add_base:\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Base\",add_comment:\"\\u041a\\u043e\\u043c\\u043c\\u0435\\u043d\\u0442\\u0430\\u0440\\u0438\\u0439\",title_element:\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Title\",script_element:\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Script\",style_element:\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Style\",base_element:\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Base\",link_element:\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Link\",meta_element:\"\\u042d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 Meta\",comment_element:\"\\u041a\\u043e\\u043c\\u043c\\u0435\\u043d\\u0442\\u0430\\u0440\\u0438\\u0439\",src:\"Src\",language:\"\\u042f\\u0437\\u044b\\u043a\",href:\"\\u0441\\u0441\\u044b\\u043b\\u043a\\u0430\",target:\"\\u0426\\u0435\\u043b\\u044c\",type:\"Type\",charset:\"\\u041a\\u043e\\u0434\\u0438\\u0440\\u043e\\u0432\\u043a\\u0430\",defer:\"\\u041e\\u0442\\u0441\\u0440\\u043e\\u0447\\u043a\\u0430\",media:\"\\u041c\\u0435\\u0434\\u0438\\u0430\",properties:\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b\",name:\"\\u041d\\u0430\\u0437\\u0432\\u0430\\u043d\\u0438\\u0435\",value:\"\\u0417\\u043d\\u0430\\u0447\\u0435\\u043d\\u0438\\u0435\",content:\"\\u0421\\u043e\\u0434\\u0435\\u0440\\u0436\\u0430\\u043d\\u0438\\u0435\",rel:\"Rel\",rev:\"Rev\",hreflang:\"\\u042f\\u0437\\u044b\\u043a \\u0441\\u0441\\u044b\\u043b\\u043a\\u0438\",general_props:\"\\u041e\\u0431\\u0449\\u0435\\u0435\",advanced_props:\"\\u0414\\u043e\\u043f\\u043e\\u043b\\u043d\\u0438\\u0442\\u0435\\u043b\\u044c\\u043d\\u043e\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/sr_dlg.js",
    "content": "tinyMCE.addI18n('sr.fullpage_dlg',{title:\"Svojstva dokumenta\",meta_tab:\"Osnovno\",appearance_tab:\"Izgled\",advanced_tab:\"Napredno\",meta_props:\"Meta informacije\",langprops:\"Jezik i kodiranje\",meta_title:\"Naslov\",meta_keywords:\"Klju\\u010dne re\\u010di\",meta_description:\"Opis\",meta_robots:\"Robots\",doctypes:\"Doctype\",langcode:\"Kod jezika\",langdir:\"Smjer jezika\",ltr:\"S leva na desno\",rtl:\"S desna na levo\",xml_pi:\"XML deklaracija\",encoding:\"Kodiranje znakova\",appearance_bgprops:\"Svojstva pozadine\",appearance_marginprops:\"Margina\",appearance_linkprops:\"Boja linka\",appearance_textprops:\"Svojstva teksta\",bgcolor:\"Boja pozadine\",bgimage:\"Pozadinska slika\",left_margin:\"Leva margina\",right_margin:\"Desna margina\",top_margin:\"Gornja margina\",bottom_margin:\"Donja margina\",text_color:\"Boja teksta\",font_size:\"Veli\\u010dina pisma\",font_face:\"Pismo\",link_color:\"Boja linka\",hover_color:\"Boja linka ispod mi\\u0161a\",visited_color:\"Boja posje\\u0107enog linka\",active_color:\"Boja aktivnog linka\",textcolor:\"Boja\",fontsize:\"Veli\\u010dina pisma\",fontface:\"Skupina pisama\",meta_index_follow:\"Indeksiraj i sledi linkove\",meta_index_nofollow:\"Indeksiraj i ne sledi linkove\",meta_noindex_follow:\"Ne indeksiraj i sledi linkove\",meta_noindex_nofollow:\"Ne indeksiraj i ne sledi linkove\",appearance_style:\"CSS i svojstva stila\",stylesheet:\"CSS\",style:\"Stil\",author:\"Autor\",copyright:\"Autorska prava\",add:\"Dodaj novi element\",remove:\"Ukloni odabrani element\",moveup:\"Pomakni odabrani element prema gore\",movedown:\"Pomakni odabrani element prema dolje\",head_elements:\"Zaglavni elementi\",info:\"Informacije\",add_title:\"Naslovni element\",add_meta:\"Meta element\",add_script:\"Skriptni element\",add_style:\"Sitlski element\",add_link:\"Element linka\",add_base:\"Osnovni element\",add_comment:\"Komentar\",title_element:\"Naslovni element\",script_element:\"Skriptni element\",style_element:\"Stilski element\",base_element:\"Osnovni element\",link_element:\"Element linka\",meta_element:\"Meta element\",comment_element:\"Komentar\",src:\"Src\",language:\"Jezik\",href:\"Href\",target:\"Meta\",type:\"Type\",charset:\"Charset\",defer:\"Defer\",media:\"Media\",properties:\"Svojstva\",name:\"Ime\",value:\"Vrednost\",content:\"Sadr\\u017eaj\",rel:\"Rel\",rev:\"Rev\",hreflang:\"Href lang\",general_props:\"Osnovno\",advanced_props:\"Napredno\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/sv_dlg.js",
    "content": "tinyMCE.addI18n('sv.fullpage_dlg',{title:\"Dokumentinst\\u00e4llningar\",\"meta_tab\":\"Generella\",\"appearance_tab\":\"Utseende\",\"advanced_tab\":\"Avancerat\",\"meta_props\":\"Metainformation\",langprops:\"Spr\\u00e5k och kodning\",\"meta_title\":\"Titel\",\"meta_keywords\":\"Nyckelord\",\"meta_description\":\"Bekrivning\",\"meta_robots\":\"Robots\",doctypes:\"Doctype\",langcode:\"Spr\\u00e5kkod\",langdir:\"Skriftriktning\",ltr:\"V\\u00e4nster till h\\u00f6ger\",rtl:\"H\\u00f6ger till v\\u00e4nster\",\"xml_pi\":\"XML deklaration\",encoding:\"Teckenkodning\",\"appearance_bgprops\":\"Bakgrundsinst\\u00e4llningar\",\"appearance_marginprops\":\"Body marginaler\",\"appearance_linkprops\":\"L\\u00e4nkf\\u00e4rger\",\"appearance_textprops\":\"Textinst\\u00e4llningar\",bgcolor:\"Bakgrundsf\\u00e4rg\",bgimage:\"Bakgrundsbild\",\"left_margin\":\"V\\u00e4nstermarginal\",\"right_margin\":\"H\\u00f6germarginal\",\"top_margin\":\"Toppmarginal\",\"bottom_margin\":\"Bottenmarginal\",\"text_color\":\"Textf\\u00e4rg\",\"font_size\":\"Textstorlek\",\"font_face\":\"Textstil\",\"link_color\":\"L\\u00e4nkf\\u00e4rg\",\"hover_color\":\"Hover f\\u00e4rg\",\"visited_color\":\"Visited f\\u00e4rg\",\"active_color\":\"Active f\\u00e4rg\",textcolor:\"F\\u00e4rg\",fontsize:\"Textstorlek\",fontface:\"Textstil\",\"meta_index_follow\":\"Indexera och f\\u00f6lj l\\u00e4nkar\",\"meta_index_nofollow\":\"Indexera men f\\u00f6lj ej l\\u00e4nkar\",\"meta_noindex_follow\":\"Indexera inte men f\\u00f6lj l\\u00e4nkar\",\"meta_noindex_nofollow\":\"Indexera inte och f\\u00f6lj ej l\\u00e4nkar\",\"appearance_style\":\"Stilmall och stilegenskaper\",stylesheet:\"Stilmall\",style:\"Stil\",author:\"F\\u00f6rfattare\",copyright:\"Copyright\",add:\"L\\u00e4gg till element\",remove:\"Radera det markerade elementet\",moveup:\"Flytta det markerade elementet upp\\u00e5t\",movedown:\"Flytta det markerade elementet ned\\u00e5t\",\"head_elements\":\"Head element\",info:\"Information\",\"add_title\":\"Titel-element\",\"add_meta\":\"Meta-element\",\"add_script\":\"Script-element\",\"add_style\":\"Stil-element\",\"add_link\":\"L\\u00e4nk-element\",\"add_base\":\"Base-element\",\"add_comment\":\"Kommentarsnod\",\"title_element\":\"Titel-element\",\"script_element\":\"Script-element\",\"style_element\":\"Style-element\",\"base_element\":\"Base-element\",\"link_element\":\"Link-element\",\"meta_element\":\"Meta-element\",\"comment_element\":\"Comment-element\",src:\"Src\",language:\"Spr\\u00e5k\",href:\"Href\",target:\"M\\u00e5l\",type:\"Typ\",charset:\"Teckenupps\\u00e4ttning\",defer:\"Defer\",media:\"Media\",properties:\"Egenskaper\",name:\"Name\",value:\"Value\",content:\"Inneh\\u00e5ll\",rel:\"Rel\",rev:\"Rev\",hreflang:\"Href lang\",\"general_props\":\"Generellt\",\"advanced_props\":\"Avancerat\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/tr_dlg.js",
    "content": "tinyMCE.addI18n('tr.fullpage_dlg',{title:\"Belge \\u00f6zellikleri\",\"meta_tab\":\"Genel\",\"appearance_tab\":\"G\\u00f6r\\u00fcn\\u00fcm\",\"advanced_tab\":\"Geli\\u015fmi\\u015f\",\"meta_props\":\"Meta bilgisi\",langprops:\"Dil ve kodlama\",\"meta_title\":\"Ba\\u015fl\\u0131k\",\"meta_keywords\":\"Anahtar kelimeler\",\"meta_description\":\"A\\u00e7\\u0131klama\",\"meta_robots\":\"Robotlar\",doctypes:\"Belge tipi\",langcode:\"Dil kodu\",langdir:\"Dil y\\u00f6n\\u00fc\",ltr:\"Sa\\u011fdan sola\",rtl:\"Soldan sa\\u011fa\",\"xml_pi\":\"XML tan\\u0131m\\u0131\",encoding:\"Karakter kodlamas\\u0131\",\"appearance_bgprops\":\"Arkaplan \\u00f6zellikleri\",\"appearance_marginprops\":\"G\\u00f6vde bo\\u015fluklar\\u0131\",\"appearance_linkprops\":\"Ba\\u011flant\\u0131 renkleri\",\"appearance_textprops\":\"Metin \\u00f6zellikleri\",bgcolor:\"Arkaplan rengi\",bgimage:\"Arkaplan resmi\",\"left_margin\":\"Sol bo\\u015fluk\",\"right_margin\":\"Sa\\u011f bo\\u015fluk\",\"top_margin\":\"\\u00dcst bo\\u015fluk\",\"bottom_margin\":\"Alt bo\\u015fluk\",\"text_color\":\"Metin rengi\",\"font_size\":\"Yaz\\u0131 boyutu\",\"font_face\":\"Yaz\\u0131 tipi\",\"link_color\":\"Ba\\u011flant\\u0131 rengi\",\"hover_color\":\"Fare \\u00fcst\\u00fcnde rengi\",\"visited_color\":\"Ziyaret edilmi\\u015f ba\\u011flant\\u0131 rengi\",\"active_color\":\"Ge\\u00e7erli renk\",textcolor:\"Renk\",fontsize:\"Yaz\\u0131 boyutu\",fontface:\"Yaz\\u0131 tipi\",\"meta_index_follow\":\"\\u0130ndeksle ve ba\\u011flant\\u0131lar\\u0131 izle.\",\"meta_index_nofollow\":\"\\u0130ndeksle ve ba\\u011flant\\u0131lar\\u0131 izleme.\",\"meta_noindex_follow\":\"\\u0130ndeksleme ama ba\\u011flant\\u0131lar\\u0131 izle.\",\"meta_noindex_nofollow\":\"\\u0130ndeksleme ve ba\\u011flant\\u0131lar\\u0131 izleme.\",\"appearance_style\":\"Stil ve stil sayfas\\u0131 \\u00f6zellikleri\",stylesheet:\"Stil sayfas\\u0131\",style:\"Stil\",author:\"Yazar\",copyright:\"Telik hakk\\u0131\",add:\"Yeni nesne ekle\",remove:\"Se\\u00e7ili nesneyi kald\\u0131r\",moveup:\"Se\\u00e7ili nesneyi yukar\\u0131 ta\\u015f\\u0131\",movedown:\"Se\\u00e7ili nesneyi a\\u015fa\\u011f\\u0131 ta\\u015f\\u0131\",\"head_elements\":\"Ba\\u015fl\\u0131k nesneleri\",info:\"Bilgi\",\"add_title\":\"Ba\\u015fl\\u0131k nesnesi\",\"add_meta\":\"Meta nesnesi\",\"add_script\":\"Script nesnesi\",\"add_style\":\"Stil nesnesi\",\"add_link\":\"Ba\\u011flant\\u0131 nesnesi\",\"add_base\":\"Temel nesne\",\"add_comment\":\"Yorum d\\u00fc\\u011f\\u00fcm\\u00fc\",\"title_element\":\"Ba\\u015fl\\u0131k nesnesi\",\"script_element\":\"Script nesnesi\",\"style_element\":\"Stil nesnesi\",\"base_element\":\"Temel nesne\",\"link_element\":\"Ba\\u011flant\\u0131 nesnesi\",\"meta_element\":\"Meta nesnesi\",\"comment_element\":\"Yorum\",src:\"Src\",language:\"Dil\",href:\"Href\",target:\"Hedef\",type:\"Tip\",charset:\"Karakter seti\",defer:\"Erteleme\",media:\"Medya\",properties:\"\\u00d6zellikler\",name:\"\\u0130sim\",value:\"De\\u011fer\",content:\"\\u0130\\u00e7erik\",rel:\"Rel\",rev:\"Rev\",hreflang:\"Href dili\",\"general_props\":\"Genel\",\"advanced_props\":\"Geli\\u015fmi\\u015f\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/uk_dlg.js",
    "content": "tinyMCE.addI18n('uk.fullpage_dlg',{title:\"\\u0412\\u043b\\u0430\\u0441\\u0442\\u0438\\u0432\\u043e\\u0441\\u0442\\u0456 \\u0434\\u043e\\u043a\\u0443\\u043c\\u0435\\u043d\\u0442\\u0430\",\"meta_tab\":\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u044c\\u043d\\u0435\",\"appearance_tab\":\"\\u0412\\u0438\\u0433\\u043b\\u044f\\u0434\",\"advanced_tab\":\"\\u0414\\u043e\\u0434\\u0430\\u0442\\u043a\\u043e\\u0432\\u043e\",\"meta_props\":\"\\u041c\\u0435\\u0442\\u0430 \\u0456\\u043d\\u0444\\u043e\\u0440\\u043c\\u0430\\u0446\\u0456\\u044f\",langprops:\"\\u041c\\u043e\\u0432\\u0430 \\u0442\\u0430 \\u043a\\u043e\\u0434\\u0443\\u0432\\u0430\\u043d\\u043d\\u044f\",\"meta_title\":\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a\",\"meta_keywords\":\"\\u041a\\u043b\\u044e\\u0447\\u043e\\u0432\\u0456 \\u0441\\u043b\\u043e\\u0432\\u0430\",\"meta_description\":\"\\u041e\\u043f\\u0438\\u0441\",\"meta_robots\":\"\\u0420\\u043e\\u0431\\u043e\\u0442\\u0438\",doctypes:\"Doctype\",langcode:\"\\u041a\\u043e\\u0434 \\u043c\\u043e\\u0432\\u0438\",langdir:\"\\u041d\\u0430\\u043f\\u0440\\u044f\\u043c \\u043c\\u043e\\u0432\\u0438\",ltr:\"\\u0417\\u043b\\u0456\\u0432\\u0430 \\u043f\\u0440\\u0430\\u0432\\u043e\\u0440\\u0443\\u0447\",rtl:\"\\u0421\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043b\\u0456\\u0432\\u043e\\u0440\\u0443\\u0447\",\"xml_pi\":\"\\u041e\\u0431\\'\\u044f\\u0432\\u043b\\u0435\\u043d\\u043d\\u044f XML\",encoding:\"\\u041a\\u043e\\u0434\\u0443\\u0432\\u0430\\u043d\\u043d\\u044f \\u0441\\u0438\\u043c\\u0432\\u043e\\u043b\\u0456\\u0432\",\"appearance_bgprops\":\"\\u0412\\u043b\\u0430\\u0441\\u0442\\u0438\\u0432\\u043e\\u0441\\u0442\\u0456 \\u0444\\u043e\\u043d\\u0443\",\"appearance_marginprops\":\"\\u0412\\u0456\\u0434\\u0441\\u0442\\u0443\\u043f\\u0438\",\"appearance_linkprops\":\"\\u041a\\u043e\\u043b\\u0456\\u0440 \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u044c\",\"appearance_textprops\":\"\\u0412\\u043b\\u0430\\u0441\\u0442\\u0438\\u0432\\u043e\\u0441\\u0442\\u0456 \\u0442\\u0435\\u043a\\u0441\\u0442\\u0443\",bgcolor:\"\\u041a\\u043e\\u043b\\u0456\\u0440 \\u0444\\u043e\\u043d\\u0443\",bgimage:\"\\u0424\\u043e\\u043d\\u043e\\u0432\\u0435 \\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u043d\\u044f\",\"left_margin\":\"\\u0412\\u0456\\u0434\\u0441\\u0442\\u0443\\u043f \\u0437\\u043b\\u0456\\u0432\\u0430\",\"right_margin\":\"\\u0412\\u0456\\u0434\\u0441\\u0442\\u0443\\u043f \\u0441\\u043f\\u0440\\u0430\\u0432\\u0430\",\"top_margin\":\"\\u0412\\u0456\\u0434\\u0441\\u0442\\u0443\\u043f \\u0437\\u0432\\u0435\\u0440\\u0445\\u0443\",\"bottom_margin\":\"\\u0412\\u0456\\u0434\\u0441\\u0442\\u0443\\u043f \\u0437\\u043d\\u0438\\u0437\\u0443\",\"text_color\":\"\\u041a\\u043e\\u043b\\u0456\\u0440 \\u0442\\u0435\\u043a\\u0441\\u0442\\u0443\",\"font_size\":\"\\u0420\\u043e\\u0437\\u043c\\u0456\\u0440 \\u0448\\u0440\\u0438\\u0444\\u0442\\u0430\",\"font_face\":\"\\u0428\\u0440\\u0438\\u0444\\u0442\",\"link_color\":\"\\u041a\\u043e\\u043b\\u0456\\u0440 \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f\",\"hover_color\":\"\\u041a\\u043e\\u043b\\u0456\\u0440 \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f \\u043f\\u0440\\u0438 \\u043d\\u0430\\u0432\\u0435\\u0434\\u0435\\u043d\\u043d\\u0456\",\"visited_color\":\"\\u041a\\u043e\\u043b\\u0456\\u0440 \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f \\u043f\\u0440\\u0438 \\u043d\\u0430\\u0442\\u0438\\u0441\\u043d\\u0435\\u043d\\u043d\\u0456\",\"active_color\":\"\\u041a\\u043e\\u043b\\u0456\\u0440 \\u0430\\u043a\\u0442\\u0438\\u0432\\u043d\\u043e\\u0433\\u043e \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f\",textcolor:\"\\u041a\\u043e\\u043b\\u0456\\u0440\",fontsize:\"\\u0420\\u043e\\u0437\\u043c\\u0456\\u0440 \\u0448\\u0440\\u0438\\u0444\\u0442\\u0430\",fontface:\"\\u0421\\u0456\\u043c\\u0435\\u0439\\u0441\\u0442\\u0432\\u043e \\u0448\\u0440\\u0438\\u0444\\u0442\\u0430\",\"meta_index_follow\":\"\\u0406\\u043d\\u0434\\u0435\\u043a\\u0441\\u0443\\u0432\\u0430\\u0442\\u0438 \\u0456 \\u0439\\u0442\\u0438 \\u0437\\u0430 \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f\\u043c\\u0438\",\"meta_index_nofollow\":\"\\u0406\\u043d\\u0434\\u0435\\u043a\\u0441\\u0443\\u0432\\u0430\\u0442\\u0438 \\u0456 \\u043d\\u0435 \\u0439\\u0442\\u0438 \\u0437\\u0430 \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f\\u043c\\u0438\",\"meta_noindex_follow\":\"\\u041d\\u0435 \\u0456\\u043d\\u0434\\u0435\\u043a\\u0441\\u0443\\u0432\\u0430\\u0442\\u0438, \\u0430\\u043b\\u0435 \\u0439\\u0442\\u0438 \\u0437\\u0430 \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f\\u043c\\u0438\",\"meta_noindex_nofollow\":\"\\u041d\\u0435 \\u0456\\u043d\\u0434\\u0435\\u043a\\u0441\\u0443\\u0432\\u0430\\u0442\\u0438 \\u0456 \\u043d\\u0435 \\u0439\\u0442\\u0438 \\u0437\\u0430 \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f\\u043c\\u0438\",\"appearance_style\":\"\\u0422\\u0430\\u0431\\u043b\\u0438\\u0446\\u044f \\u0441\\u0442\\u0438\\u043b\\u044e \\u0442\\u0430 \\u0432\\u043b\\u0430\\u0441\\u0442\\u0438\\u0432\\u043e\\u0441\\u0442\\u0456 \\u0441\\u0442\\u0438\\u043b\\u044e\",stylesheet:\"\\u0422\\u0430\\u0431\\u043b\\u0438\\u0446\\u044f \\u0441\\u0442\\u0438\\u043b\\u044e\",style:\"\\u0421\\u0442\\u0438\\u043b\\u044c\",author:\"\\u0410\\u0432\\u0442\\u043e\\u0440\",copyright:\"\\u0410\\u0432\\u0442\\u043e\\u0440\\u0441\\u044c\\u043a\\u0435 \\u043f\\u0440\\u0430\\u0432\\u043e\",add:\"\\u0414\\u043e\\u0434\\u0430\\u0442\\u0438 \\u043d\\u043e\\u0432\\u0438\\u0439 \\u0435\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\",remove:\"\\u0412\\u0438\\u0434\\u0430\\u043b\\u0438\\u0442\\u0438 \\u0432\\u0438\\u0434\\u0456\\u043b\\u0435\\u043d\\u0438\\u0439 \\u0435\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\",moveup:\"\\u041f\\u0435\\u0440\\u0435\\u043c\\u0456\\u0441\\u0442\\u0438\\u0442\\u0438 \\u0435\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 \\u0432\\u0433\\u043e\\u0440\\u0443\",movedown:\"\\u041f\\u0435\\u0440\\u0435\\u043c\\u0456\\u0441\\u0442\\u0438\\u0442\\u0438 \\u0435\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 \\u0432\\u043d\\u0438\\u0437\",\"head_elements\":\"Head \\u0435\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\\u0438\",info:\"\\u0406\\u043d\\u0444\\u043e\\u0440\\u043c\\u0430\\u0446\\u0456\\u044f\",\"add_title\":\"Title \\u0435\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\",\"add_meta\":\"Meta \\u0435\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\",\"add_script\":\"Script \\u0435\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\",\"add_style\":\"Style \\u0435\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\",\"add_link\":\"Link \\u0435\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\",\"add_base\":\"Base \\u0435\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\",\"add_comment\":\"\\u0412\\u0443\\u0437\\u043e\\u043b \\u043a\\u043e\\u043c\\u0435\\u043d\\u0442\\u0430\\u0440\\u044f\",\"title_element\":\"Title \\u0435\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\",\"script_element\":\"Script \\u0435\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\",\"style_element\":\"Style \\u0435\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\",\"base_element\":\"Base \\u0435\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\",\"link_element\":\"Link \\u0435\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\",\"meta_element\":\"Meta \\u0435\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\",\"comment_element\":\"\\u041a\\u043e\\u043c\\u0435\\u043d\\u0442\\u0430\\u0440\",src:\"\\u0414\\u0436\\u0435\\u0440\\u0435\\u043b\\u043e\",language:\"\\u041c\\u043e\\u0432\\u0430\",href:\"\\u041f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f\",target:\"\\u0426\\u0456\\u043b\\u044c\",type:\"\\u0422\\u0438\\u043f\",charset:\"\\u041a\\u043e\\u0434\\u0443\\u0432\\u0430\\u043d\\u043d\\u044f\",defer:\"Defer\",media:\"\\u041c\\u0435\\u0434\\u0456\\u0430\",properties:\"\\u0412\\u043b\\u0430\\u0441\\u0442\\u0438\\u0432\\u043e\\u0441\\u0442\\u0456\",name:\"\\u041d\\u0430\\u0437\\u0432\\u0430\",value:\"\\u0417\\u043d\\u0430\\u0447\\u0435\\u043d\\u043d\\u044f\",content:\"\\u0417\\u043c\\u0456\\u0441\\u0442\",rel:\"\\u0417\\u0432\\'\\u044f\\u0437\\u043e\\u043a\",rev:\"Rev\",hreflang:\"\\u041c\\u043e\\u0432\\u0430 \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f\",\"general_props\":\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u044c\\u043d\\u0435\",\"advanced_props\":\"\\u0414\\u043e\\u0434\\u0430\\u0442\\u043a\\u043e\\u0432\\u043e\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/zh-tw_dlg.js",
    "content": "tinyMCE.addI18n('zh-tw.fullpage_dlg',{title:\"\\u9801\\u9762\\u8a2d\\u5b9a\",\"meta_tab\":\"\\u4e00\\u822c\",\"appearance_tab\":\"\\u5916\\u89c0\",\"advanced_tab\":\"\\u66f4\\u591a\\u8a2d\\u5b9a\",\"meta_props\":\"Meta \\u8cc7\\u8a0a\",langprops:\"\\u8a9e\\u8a00\\u8207\\u7de8\\u78bc\\u8a2d\\u5b9a\",\"meta_title\":\"\\u6a19\\u984c\",\"meta_keywords\":\"\\u95dc\\u9375\\u5b57\",\"meta_description\":\"\\u63cf\\u8ff0\",\"meta_robots\":\"\\u641c\\u5c0b\\u5f15\\u64ce\\u7684\\u6a5f\\u5668\\u4eba\",doctypes:\"\\u6587\\u4ef6\\u985e\\u578b (Doctype)\",langcode:\"\\u8a9e\\u8a00\\u7de8\\u78bc\",langdir:\"\\u66f8\\u5beb\\u65b9\\u5f0f\",ltr:\"\\u5f9e\\u5de6\\u5230\\u53f3\",rtl:\"\\u5f9e\\u53f3\\u5230\\u5de6\",\"xml_pi\":\"XML \\u5b9a\\u7fa9 (XML declaration)\",encoding:\"\\u5b57\\u5143\\u7de8\\u78bc\",\"appearance_bgprops\":\"\\u80cc\\u666f\\u8a2d\\u5b9a\",\"appearance_marginprops\":\"\\u7db2\\u9801\\u7684\\u908a\\u8ddd\",\"appearance_linkprops\":\"\\u9023\\u7d50\\u7684\\u984f\\u8272\",\"appearance_textprops\":\"\\u6587\\u5b57\\u8a2d\\u5b9a\",bgcolor:\"\\u80cc\\u666f\\u984f\\u8272\",bgimage:\"\\u80cc\\u666f\\u5716\",\"left_margin\":\"\\u5de6\\u908a\\u8ddd\",\"right_margin\":\"\\u53f3\\u908a\\u8ddd\",\"top_margin\":\"\\u4e0a\\u65b9\\u908a\\u8ddd\",\"bottom_margin\":\"\\u4e0b\\u65b9\\u908a\\u8ddd\",\"text_color\":\"\\u6587\\u5b57\\u984f\\u8272\",\"font_size\":\"\\u5b57\\u9ad4\\u5927\\u5c0f\",\"font_face\":\"\\u5b57\\u9ad4\\u6a23\\u5f0f\",\"link_color\":\"\\u9810\\u8a2d\\u7684\\u984f\\u8272\\u6a23\\u5f0f\",\"hover_color\":\"\\u6ed1\\u9f20\\u79fb\\u904e\\u53bb\\u7684\\u984f\\u8272\\u6a23\\u5f0f\",\"visited_color\":\"\\u9ede\\u904e\\u5f8c\\u7684\\u984f\\u8272\\u6a23\\u5f0f\",\"active_color\":\"\\u6309\\u4e0b\\u53bb\\u5f8c\\u7684\\u984f\\u8272\",textcolor:\"\\u984f\\u8272\",fontsize:\"\\u6309\\u4e0b\\u53bb\\u5f8c\\u7684\\u984f\\u8272\\u6a23\\u5f0f\",fontface:\"\\u5b57\\u9ad4\\u6a23\\u5f0f\",\"meta_index_follow\":\"\\u516c\\u958b\\u7d66\\u641c\\u5c0b\\u5f15\\u64ce\\u77e5\\u9053\",\"meta_index_nofollow\":\"\\u544a\\u8a34\\u641c\\u5c0b\\u5f15\\u64ce\\u53ef\\u4ee5\\u5206\\u4eab\\u9023\\u7d50\\u7d66\\u5927\\u5bb6\\uff0c\\u4f46\\u4e0d\\u8981\\u8b93\\u641c\\u5c0b\\u5f15\\u64ce\\u5f9e\\u9019\\u88e1\\u627e\\u8cc7\\u6599\",\"meta_noindex_follow\":\"\\u544a\\u8a34\\u641c\\u5c0b\\u5f15\\u64ce\\u4e0d\\u8981\\u8b93\\u5927\\u5bb6\\u77e5\\u9053\\u6709\\u9019\\u500b\\u9023\\u7d50\\uff0c\\u53ea\\u8b93\\u641c\\u5c0b\\u5f15\\u64ce\\u77e5\\u9053\\u3001\\u627e\\u8cc7\\u6599\",\"meta_noindex_nofollow\":\"\\u544a\\u8a34\\u641c\\u5c0b\\u5f15\\u64ce\\u8df3\\u904e\\u9019\\u500b\\u9023\\u7d50\",\"appearance_style\":\"\\u6a23\\u5f0f\\u8868\\u8207\\u6a23\\u5f0f\\u7684\\u5c6c\\u6027\\u8a2d\\u5b9a\",stylesheet:\"\\u6a23\\u5f0f\\u8868\",style:\"\\u6a23\\u5f0f\",author:\"\\u9328\\u9ede (\\u66f8\\u7c64)\",copyright:\"\\u8457\\u4f5c/\\u6388\\u6b0a\",add:\"\\u65b0\\u589e HTML \\u6a19\\u7c64\",remove:\"\\u522a\\u9664\\u6240\\u9078\\u7684\\u6a19\\u7c64\",moveup:\"\\u79fb\\u52d5\\u9078\\u64c7\\u7684\\u6a19\\u7c64 (\\u5f80\\u4e0a)\",movedown:\"\\u79fb\\u52d5\\u9078\\u64c7\\u7684\\u6a19\\u7c64 (\\u5f80\\u4e0b)\",\"head_elements\":\"HTML \\u7684 Head \\u6a19\\u7c64\",info:\"\\u8cc7\\u8a0a\",\"add_title\":\"HTML \\u7684 Title \\u6a19\\u7c64\",\"add_meta\":\"HTML \\u7684 Meta \\u6a19\\u7c64\",\"add_script\":\"HTML \\u7684 Script \\u6a19\\u7c64\",\"add_style\":\"HTML \\u7684 Style \\u6a19\\u7c64\",\"add_link\":\"HTML \\u7684 Link \\u6a19\\u7c64\",\"add_base\":\"HTML \\u7684 Base \\u6a19\\u7c64\",\"add_comment\":\"\\u8a3b\\u6587\",\"title_element\":\"HTML \\u7684 Title \\u6a19\\u7c64\",\"script_element\":\"HTML \\u7684 Script \\u6a19\\u7c64\",\"style_element\":\"HTML \\u7684 Style \\u6a19\\u7c64\",\"base_element\":\"HTML \\u7684 Base \\u6a19\\u7c64\",\"link_element\":\"HTML \\u7684 Link \\u6a19\\u7c64\",\"meta_element\":\"HTML \\u7684 Meta \\u6a19\\u7c64\",\"comment_element\":\"\\u8a3b\\u89e3\",src:\"\\u4f86\\u6e90\",language:\"\\u8a9e\\u8a00\",href:\"\\u9023\\u7d50\\u4f4d\\u7f6e\",target:\"\\u958b\\u555f\\u65b9\\u5f0f\",type:\"\\u5f62\\u5f0f\",charset:\"\\u5b57\\u5143\",defer:\"\\u5ef6\\u7de9\",media:\"\\u5f71\\u97f3/\\u5a92\\u9ad4\",properties:\"\\u5c6c\\u6027\",name:\"\\u540d\\u7a31\",value:\"\\u503c\",content:\"\\u5167\\u5bb9\",rel:\"\\u8a72\\u9023\\u7d50\\u662f\\u4ec0\\u9ebc (Rel)\",rev:\"\\u8a72\\u9023\\u7d50\\u8207\\u7db2\\u7ad9\\u7684\\u95dc\\u4fc2 (Rev)\",hreflang:\"\\u8a72\\u9023\\u7d50\\u7684\\u8a9e\\u7cfb\",\"general_props\":\"\\u4e00\\u822c\",\"advanced_props\":\"\\u66f4\\u591a\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullpage/langs/zh_dlg.js",
    "content": "tinyMCE.addI18n('zh.fullpage_dlg',{title:\"\\u6587\\u4ef6\\u5c5e\\u6027\",\"meta_tab\":\"\\u666e\\u901a\",\"appearance_tab\":\"\\u5916\\u89c2\",\"advanced_tab\":\"\\u9ad8\\u7ea7\",\"meta_props\":\"Meta\\u4fe1\\u606f\",langprops:\"\\u8bed\\u8a00\\u548c\\u7f16\\u7801\",\"meta_title\":\"\\u6807\\u9898\",\"meta_keywords\":\"\\u5173\\u952e\\u5b57\",\"meta_description\":\"\\u63cf\\u8ff0\",\"meta_robots\":\"Robots\",doctypes:\"DocType\",langcode:\"\\u8bed\\u8a00\\u4ee3\\u7801\",langdir:\"\\u6587\\u5b57\\u4e66\\u5199\\u65b9\\u5411\",ltr:\"\\u4ece\\u5de6\\u5230\\u53f3\",rtl:\"\\u4ece\\u53f3\\u5230\\u5de6\",\"xml_pi\":\"XML\\u7533\\u660e\",encoding:\"\\u5b57\\u7b26\\u7f16\\u7801\",\"appearance_bgprops\":\"\\u80cc\\u666f\\u989c\\u8272\",\"appearance_marginprops\":\"\\u5916\\u8fb9\\u8ddd\",\"appearance_linkprops\":\"\\u94fe\\u63a5\\u989c\\u8272\",\"appearance_textprops\":\"\\u6587\\u5b57\\u5c5e\\u6027\",bgcolor:\"\\u80cc\\u666f\\u989c\\u8272\",bgimage:\"\\u80cc\\u666f\\u56fe\\u7247\",\"left_margin\":\"\\u5de6\\u8fb9\\u8ddd\",\"right_margin\":\"\\u53f3\\u8fb9\\u8ddd\",\"top_margin\":\"\\u4e0a\\u8fb9\\u8ddd\",\"bottom_margin\":\"\\u4e0b\\u8fb9\\u8ddd\",\"text_color\":\"\\u5b57\\u4f53\\u989c\\u8272\",\"font_size\":\"\\u5b57\\u4f53\\u5927\\u5c0f\",\"font_face\":\"\\u5b57\\u4f53\",\"link_color\":\"\\u94fe\\u63a5\\u989c\\u8272\",\"hover_color\":\"\\u9f20\\u6807\\u79fb\\u5165\\u540e\\u94fe\\u63a5\\u989c\\u8272\",\"visited_color\":\"\\u8bbf\\u95ee\\u8fc7\\u7684\\u94fe\\u63a5\\u989c\\u8272\",\"active_color\":\"\\u6fc0\\u6d3b\\u7684\\u94fe\\u63a5\\u989c\\u8272\",textcolor:\"\\u5b57\\u4f53\\u989c\\u8272\",fontsize:\"\\u5b57\\u4f53\\u5927\\u5c0f\",fontface:\"\\u5b57\\u4f53\",\"meta_index_follow\":\"\\u7d22\\u5f15\\u5e76\\u94fe\\u63a5\",\"meta_index_nofollow\":\"\\u7d22\\u5f15\\u4f46\\u4e0d\\u94fe\\u63a5\",\"meta_noindex_follow\":\"\\u4e0d\\u7d22\\u5f15\\u4f46\\u94fe\\u63a5\",\"meta_noindex_nofollow\":\"\\u4e0d\\u7d22\\u5f15\\u4e5f\\u4e0d\\u94fe\\u63a5\",\"appearance_style\":\"\\u6837\\u5f0f\\u8868\\u4e0e\\u6837\\u5f0f\\u5c5e\\u6027\",stylesheet:\"\\u6837\\u5f0f\\u8868\",style:\"\\u6837\\u5f0f\",author:\"\\u4f5c\\u8005\",copyright:\"\\u7248\\u6743\\u7533\\u660e\",add:\"\\u65b0\\u589e\\u5143\\u7d20\",remove:\"\\u5220\\u9664\\u9009\\u62e9\\u7684\\u5143\\u7d20\",moveup:\"\\u4e0a\\u79fb\\u9009\\u62e9\\u7684\\u5143\\u7d20\",movedown:\"\\u4e0b\\u79fb\\u9009\\u62e9\\u7684\\u5143\\u7d20\",\"head_elements\":\"head\\u5143\\u7d20\",info:\"\\u4fe1\\u606f\",\"add_title\":\"title\\u5143\\u7d20\",\"add_meta\":\"meta\\u5143\\u7d20\",\"add_script\":\"script\\u5143\\u7d20\",\"add_style\":\"style\\u5143\\u7d20\",\"add_link\":\"link\\u5143\\u7d20\",\"add_base\":\"base\\u5143\\u7d20\",\"add_comment\":\"\\u6ce8\\u91ca\",\"title_element\":\"title\\u5143\\u7d20\",\"script_element\":\"script\\u5143\\u7d20\",\"style_element\":\"style\\u5143\\u7d20\",\"base_element\":\"base\\u5143\\u7d20\",\"link_element\":\"link\\u5143\\u7d20\",\"meta_element\":\"meta\\u5143\\u7d20\",\"comment_element\":\"\\u6ce8\\u91ca\",src:\"src\",language:\"\\u8bed\\u8a00\",href:\"href\",target:\"\\u76ee\\u6807\",type:\"\\u7c7b\\u578b\",charset:\"\\u5b57\\u5143\",defer:\"Defer\",media:\"\\u591a\\u5a92\\u4f53\",properties:\"\\u5c5e\\u6027\",name:\"\\u540d\\u79f0\",value:\"\\u503c\",content:\"\\u5185\\u5bb9\",rel:\"rel\",rev:\"rev\",hreflang:\"href lang\",\"general_props\":\"\\u666e\\u901a\",\"advanced_props\":\"\\u9ad8\\u7ea7\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullscreen/editor_plugin.js",
    "content": "(function(){var a=tinymce.DOM;tinymce.create(\"tinymce.plugins.FullScreenPlugin\",{init:function(d,e){var f=this,g={},c,b;f.editor=d;d.addCommand(\"mceFullScreen\",function(){var i,j=a.doc.documentElement;if(d.getParam(\"fullscreen_is_enabled\")){if(d.getParam(\"fullscreen_new_window\")){closeFullscreen()}else{a.win.setTimeout(function(){tinymce.dom.Event.remove(a.win,\"resize\",f.resizeFunc);tinyMCE.get(d.getParam(\"fullscreen_editor_id\")).setContent(d.getContent());tinyMCE.remove(d);a.remove(\"mce_fullscreen_container\");j.style.overflow=d.getParam(\"fullscreen_html_overflow\");a.setStyle(a.doc.body,\"overflow\",d.getParam(\"fullscreen_overflow\"));a.win.scrollTo(d.getParam(\"fullscreen_scrollx\"),d.getParam(\"fullscreen_scrolly\"));tinyMCE.settings=tinyMCE.oldSettings},10)}return}if(d.getParam(\"fullscreen_new_window\")){i=a.win.open(e+\"/fullscreen.htm\",\"mceFullScreenPopup\",\"fullscreen=yes,menubar=no,toolbar=no,scrollbars=no,resizable=yes,left=0,top=0,width=\"+screen.availWidth+\",height=\"+screen.availHeight);try{i.resizeTo(screen.availWidth,screen.availHeight)}catch(h){}}else{tinyMCE.oldSettings=tinyMCE.settings;g.fullscreen_overflow=a.getStyle(a.doc.body,\"overflow\",1)||\"auto\";g.fullscreen_html_overflow=a.getStyle(j,\"overflow\",1);c=a.getViewPort();g.fullscreen_scrollx=c.x;g.fullscreen_scrolly=c.y;if(tinymce.isOpera&&g.fullscreen_overflow==\"visible\"){g.fullscreen_overflow=\"auto\"}if(tinymce.isIE&&g.fullscreen_overflow==\"scroll\"){g.fullscreen_overflow=\"auto\"}if(tinymce.isIE&&(g.fullscreen_html_overflow==\"visible\"||g.fullscreen_html_overflow==\"scroll\")){g.fullscreen_html_overflow=\"auto\"}if(g.fullscreen_overflow==\"0px\"){g.fullscreen_overflow=\"\"}a.setStyle(a.doc.body,\"overflow\",\"hidden\");j.style.overflow=\"hidden\";c=a.getViewPort();a.win.scrollTo(0,0);if(tinymce.isIE){c.h-=1}if(tinymce.isIE6){b=\"absolute;top:\"+c.y}else{b=\"fixed;top:0\"}n=a.add(a.doc.body,\"div\",{id:\"mce_fullscreen_container\",style:\"position:\"+b+\";left:0;width:\"+c.w+\"px;height:\"+c.h+\"px;z-index:200000;\"});a.add(n,\"div\",{id:\"mce_fullscreen\"});tinymce.each(d.settings,function(k,l){g[l]=k});g.id=\"mce_fullscreen\";g.width=n.clientWidth;g.height=n.clientHeight-15;g.fullscreen_is_enabled=true;g.fullscreen_editor_id=d.id;g.theme_advanced_resizing=false;g.save_onsavecallback=function(){d.setContent(tinyMCE.get(g.id).getContent());d.execCommand(\"mceSave\")};tinymce.each(d.getParam(\"fullscreen_settings\"),function(m,l){g[l]=m});if(g.theme_advanced_toolbar_location===\"external\"){g.theme_advanced_toolbar_location=\"top\"}f.fullscreenEditor=new tinymce.Editor(\"mce_fullscreen\",g);f.fullscreenEditor.onInit.add(function(){f.fullscreenEditor.setContent(d.getContent());f.fullscreenEditor.focus()});f.fullscreenEditor.render();f.fullscreenElement=new tinymce.dom.Element(\"mce_fullscreen_container\");f.fullscreenElement.update();f.resizeFunc=tinymce.dom.Event.add(a.win,\"resize\",function(){var o=tinymce.DOM.getViewPort(),l=f.fullscreenEditor,k,m;k=l.dom.getSize(l.getContainer().firstChild);m=l.dom.getSize(l.getContainer().getElementsByTagName(\"iframe\")[0]);l.theme.resizeTo(o.w-k.w+m.w,o.h-k.h+m.h)})}});d.addButton(\"fullscreen\",{title:\"fullscreen.desc\",cmd:\"mceFullScreen\"});d.onNodeChange.add(function(i,h){h.setActive(\"fullscreen\",i.getParam(\"fullscreen_is_enabled\"))})},getInfo:function(){return{longname:\"Fullscreen\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/fullscreen\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}}});tinymce.PluginManager.add(\"fullscreen\",tinymce.plugins.FullScreenPlugin)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullscreen/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\tvar DOM = tinymce.DOM;\r\n\r\n\ttinymce.create('tinymce.plugins.FullScreenPlugin', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\tvar t = this, s = {}, vp, posCss;\r\n\r\n\t\t\tt.editor = ed;\r\n\r\n\t\t\t// Register commands\r\n\t\t\ted.addCommand('mceFullScreen', function() {\r\n\t\t\t\tvar win, de = DOM.doc.documentElement;\r\n\r\n\t\t\t\tif (ed.getParam('fullscreen_is_enabled')) {\r\n\t\t\t\t\tif (ed.getParam('fullscreen_new_window'))\r\n\t\t\t\t\t\tcloseFullscreen(); // Call to close in new window\r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\tDOM.win.setTimeout(function() {\r\n\t\t\t\t\t\t\ttinymce.dom.Event.remove(DOM.win, 'resize', t.resizeFunc);\r\n\t\t\t\t\t\t\ttinyMCE.get(ed.getParam('fullscreen_editor_id')).setContent(ed.getContent());\r\n\t\t\t\t\t\t\ttinyMCE.remove(ed);\r\n\t\t\t\t\t\t\tDOM.remove('mce_fullscreen_container');\r\n\t\t\t\t\t\t\tde.style.overflow = ed.getParam('fullscreen_html_overflow');\r\n\t\t\t\t\t\t\tDOM.setStyle(DOM.doc.body, 'overflow', ed.getParam('fullscreen_overflow'));\r\n\t\t\t\t\t\t\tDOM.win.scrollTo(ed.getParam('fullscreen_scrollx'), ed.getParam('fullscreen_scrolly'));\r\n\t\t\t\t\t\t\ttinyMCE.settings = tinyMCE.oldSettings; // Restore old settings\r\n\t\t\t\t\t\t}, 10);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (ed.getParam('fullscreen_new_window')) {\r\n\t\t\t\t\twin = DOM.win.open(url + \"/fullscreen.htm\", \"mceFullScreenPopup\", \"fullscreen=yes,menubar=no,toolbar=no,scrollbars=no,resizable=yes,left=0,top=0,width=\" + screen.availWidth + \",height=\" + screen.availHeight);\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\twin.resizeTo(screen.availWidth, screen.availHeight);\r\n\t\t\t\t\t} catch (e) {\r\n\t\t\t\t\t\t// Ignore\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttinyMCE.oldSettings = tinyMCE.settings; // Store old settings\r\n\t\t\t\t\ts.fullscreen_overflow = DOM.getStyle(DOM.doc.body, 'overflow', 1) || 'auto';\r\n\t\t\t\t\ts.fullscreen_html_overflow = DOM.getStyle(de, 'overflow', 1);\r\n\t\t\t\t\tvp = DOM.getViewPort();\r\n\t\t\t\t\ts.fullscreen_scrollx = vp.x;\r\n\t\t\t\t\ts.fullscreen_scrolly = vp.y;\r\n\r\n\t\t\t\t\t// Fixes an Opera bug where the scrollbars doesn't reappear\r\n\t\t\t\t\tif (tinymce.isOpera && s.fullscreen_overflow == 'visible')\r\n\t\t\t\t\t\ts.fullscreen_overflow = 'auto';\r\n\r\n\t\t\t\t\t// Fixes an IE bug where horizontal scrollbars would appear\r\n\t\t\t\t\tif (tinymce.isIE && s.fullscreen_overflow == 'scroll')\r\n\t\t\t\t\t\ts.fullscreen_overflow = 'auto';\r\n\r\n\t\t\t\t\t// Fixes an IE bug where the scrollbars doesn't reappear\r\n\t\t\t\t\tif (tinymce.isIE && (s.fullscreen_html_overflow == 'visible' || s.fullscreen_html_overflow == 'scroll'))\r\n\t\t\t\t\t\ts.fullscreen_html_overflow = 'auto'; \r\n\r\n\t\t\t\t\tif (s.fullscreen_overflow == '0px')\r\n\t\t\t\t\t\ts.fullscreen_overflow = '';\r\n\r\n\t\t\t\t\tDOM.setStyle(DOM.doc.body, 'overflow', 'hidden');\r\n\t\t\t\t\tde.style.overflow = 'hidden'; //Fix for IE6/7\r\n\t\t\t\t\tvp = DOM.getViewPort();\r\n\t\t\t\t\tDOM.win.scrollTo(0, 0);\r\n\r\n\t\t\t\t\tif (tinymce.isIE)\r\n\t\t\t\t\t\tvp.h -= 1;\r\n\r\n\t\t\t\t\t// Use fixed position if it exists\r\n\t\t\t\t\tif (tinymce.isIE6)\r\n\t\t\t\t\t\tposCss = 'absolute;top:' + vp.y;\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\tposCss = 'fixed;top:0';\r\n\r\n\t\t\t\t\tn = DOM.add(DOM.doc.body, 'div', {\r\n\t\t\t\t\t\tid : 'mce_fullscreen_container', \r\n\t\t\t\t\t\tstyle : 'position:' + posCss + ';left:0;width:' + vp.w + 'px;height:' + vp.h + 'px;z-index:200000;'});\r\n\t\t\t\t\tDOM.add(n, 'div', {id : 'mce_fullscreen'});\r\n\r\n\t\t\t\t\ttinymce.each(ed.settings, function(v, n) {\r\n\t\t\t\t\t\ts[n] = v;\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\ts.id = 'mce_fullscreen';\r\n\t\t\t\t\ts.width = n.clientWidth;\r\n\t\t\t\t\ts.height = n.clientHeight - 15;\r\n\t\t\t\t\ts.fullscreen_is_enabled = true;\r\n\t\t\t\t\ts.fullscreen_editor_id = ed.id;\r\n\t\t\t\t\ts.theme_advanced_resizing = false;\r\n\t\t\t\t\ts.save_onsavecallback = function() {\r\n\t\t\t\t\t\ted.setContent(tinyMCE.get(s.id).getContent());\r\n\t\t\t\t\t\ted.execCommand('mceSave');\r\n\t\t\t\t\t};\r\n\r\n\t\t\t\t\ttinymce.each(ed.getParam('fullscreen_settings'), function(v, k) {\r\n\t\t\t\t\t\ts[k] = v;\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tif (s.theme_advanced_toolbar_location === 'external')\r\n\t\t\t\t\t\ts.theme_advanced_toolbar_location = 'top';\r\n\r\n\t\t\t\t\tt.fullscreenEditor = new tinymce.Editor('mce_fullscreen', s);\r\n\t\t\t\t\tt.fullscreenEditor.onInit.add(function() {\r\n\t\t\t\t\t\tt.fullscreenEditor.setContent(ed.getContent());\r\n\t\t\t\t\t\tt.fullscreenEditor.focus();\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tt.fullscreenEditor.render();\r\n\r\n\t\t\t\t\tt.fullscreenElement = new tinymce.dom.Element('mce_fullscreen_container');\r\n\t\t\t\t\tt.fullscreenElement.update();\r\n\t\t\t\t\t//document.body.overflow = 'hidden';\r\n\r\n\t\t\t\t\tt.resizeFunc = tinymce.dom.Event.add(DOM.win, 'resize', function() {\r\n\t\t\t\t\t\tvar vp = tinymce.DOM.getViewPort(), fed = t.fullscreenEditor, outerSize, innerSize;\r\n\r\n\t\t\t\t\t\t// Get outer/inner size to get a delta size that can be used to calc the new iframe size\r\n\t\t\t\t\t\touterSize = fed.dom.getSize(fed.getContainer().firstChild);\r\n\t\t\t\t\t\tinnerSize = fed.dom.getSize(fed.getContainer().getElementsByTagName('iframe')[0]);\r\n\r\n\t\t\t\t\t\tfed.theme.resizeTo(vp.w - outerSize.w + innerSize.w, vp.h - outerSize.h + innerSize.h);\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t// Register buttons\r\n\t\t\ted.addButton('fullscreen', {title : 'fullscreen.desc', cmd : 'mceFullScreen'});\r\n\r\n\t\t\ted.onNodeChange.add(function(ed, cm) {\r\n\t\t\t\tcm.setActive('fullscreen', ed.getParam('fullscreen_is_enabled'));\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Fullscreen',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/fullscreen',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('fullscreen', tinymce.plugins.FullScreenPlugin);\r\n})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/fullscreen/fullscreen.htm",
    "content": "<!DOCTYPE html>\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title></title>\r\n\t<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce.js\"></script>\r\n\t<script type=\"text/javascript\">\r\n\t\tfunction patchCallback(settings, key) {\r\n\t\t\tif (settings[key])\r\n\t\t\t\tsettings[key] = \"window.opener.\" + settings[key];\r\n\t\t}\r\n\r\n\t\tvar settings = {}, paSe = window.opener.tinyMCE.activeEditor.settings, oeID = window.opener.tinyMCE.activeEditor.id;\r\n\r\n\t\t// Clone array\r\n\t\tfor (var n in paSe)\r\n\t\t\tsettings[n] = paSe[n];\r\n\r\n\t\t// Override options for fullscreen\r\n\t\tfor (var n in paSe.fullscreen_settings)\r\n\t\t\tsettings[n] = paSe.fullscreen_settings[n];\r\n\r\n\t\t// Patch callbacks, make them point to window.opener\r\n\t\tpatchCallback(settings, 'urlconverter_callback');\r\n\t\tpatchCallback(settings, 'insertlink_callback');\r\n\t\tpatchCallback(settings, 'insertimage_callback');\r\n\t\tpatchCallback(settings, 'setupcontent_callback');\r\n\t\tpatchCallback(settings, 'save_callback');\r\n\t\tpatchCallback(settings, 'onchange_callback');\r\n\t\tpatchCallback(settings, 'init_instance_callback');\r\n\t\tpatchCallback(settings, 'file_browser_callback');\r\n\t\tpatchCallback(settings, 'cleanup_callback');\r\n\t\tpatchCallback(settings, 'execcommand_callback');\r\n\t\tpatchCallback(settings, 'oninit');\r\n\r\n\t\t// Set options\r\n\t\tdelete settings.id;\r\n\t\tsettings['mode'] = 'exact';\r\n\t\tsettings['elements'] = 'fullscreenarea';\r\n\t\tsettings['add_unload_trigger'] = false;\r\n\t\tsettings['ask'] = false;\r\n\t\tsettings['document_base_url'] = window.opener.tinyMCE.activeEditor.documentBaseURI.getURI();\r\n\t\tsettings['fullscreen_is_enabled'] = true;\r\n\t\tsettings['fullscreen_editor_id'] = oeID;\r\n\t\tsettings['theme_advanced_resizing'] = false;\r\n\t\tsettings['strict_loading_mode'] = true;\r\n\r\n\t\tsettings.save_onsavecallback = function() {\r\n\t\t\twindow.opener.tinyMCE.get(oeID).setContent(tinyMCE.get('fullscreenarea').getContent({format : 'raw'}), {format : 'raw'});\r\n\t\t\twindow.opener.tinyMCE.get(oeID).execCommand('mceSave');\r\n\t\t\twindow.close();\r\n\t\t};\r\n\r\n\t\tfunction unloadHandler(e) {\r\n\t\t\tmoveContent();\r\n\t\t}\r\n\r\n\t\tfunction moveContent() {\r\n\t\t\twindow.opener.tinyMCE.get(oeID).setContent(tinyMCE.activeEditor.getContent());\r\n\t\t}\r\n\r\n\t\tfunction closeFullscreen() {\r\n\t\t\tmoveContent();\r\n\t\t\twindow.close();\r\n\t\t}\r\n\r\n\t\tfunction doParentSubmit() {\r\n\t\t\tmoveContent();\r\n\r\n\t\t\tif (window.opener.tinyMCE.selectedInstance.formElement.form)\r\n\t\t\t\twindow.opener.tinyMCE.selectedInstance.formElement.form.submit();\r\n\r\n\t\t\twindow.close();\r\n\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tfunction render() {\r\n\t\t\tvar e = document.getElementById('fullscreenarea'), vp, ed, ow, oh, dom = tinymce.DOM;\r\n\r\n\t\t\te.value = window.opener.tinyMCE.get(oeID).getContent();\r\n\r\n\t\t\tvp = dom.getViewPort();\r\n\t\t\tsettings.width = vp.w;\r\n\t\t\tsettings.height = vp.h - 15;\r\n\r\n\t\t\ttinymce.dom.Event.add(window, 'resize', function() {\r\n\t\t\t\tvar vp = dom.getViewPort();\r\n\r\n\t\t\t\ttinyMCE.activeEditor.theme.resizeTo(vp.w, vp.h);\r\n\t\t\t});\r\n\r\n\t\t\ttinyMCE.init(settings);\r\n\t\t}\r\n\r\n\t\t// Add onunload\r\n\t\ttinymce.dom.Event.add(window, \"beforeunload\", unloadHandler);\r\n\t</script>\r\n</head>\r\n<body style=\"margin:0;overflow:hidden;width:100%;height:100%\" scrolling=\"no\" scroll=\"no\">\r\n<form onsubmit=\"doParentSubmit();\">\r\n<textarea id=\"fullscreenarea\" style=\"width:100%; height:100%\"></textarea>\r\n</form>\r\n\r\n<script type=\"text/javascript\">\r\n\trender();\r\n</script>\r\n\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iespell/editor_plugin.js",
    "content": "(function(){tinymce.create(\"tinymce.plugins.IESpell\",{init:function(a,b){var c=this,d;if(!tinymce.isIE){return}c.editor=a;a.addCommand(\"mceIESpell\",function(){try{d=new ActiveXObject(\"ieSpell.ieSpellExtension\");d.CheckDocumentNode(a.getDoc().documentElement)}catch(f){if(f.number==-2146827859){a.windowManager.confirm(a.getLang(\"iespell.download\"),function(e){if(e){window.open(\"http://www.iespell.com/download.php\",\"ieSpellDownload\",\"\")}})}else{a.windowManager.alert(\"Error Loading ieSpell: Exception \"+f.number)}}});a.addButton(\"iespell\",{title:\"iespell.iespell_desc\",cmd:\"mceIESpell\"})},getInfo:function(){return{longname:\"IESpell (IE Only)\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/iespell\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}}});tinymce.PluginManager.add(\"iespell\",tinymce.plugins.IESpell)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iespell/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\ttinymce.create('tinymce.plugins.IESpell', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\tvar t = this, sp;\r\n\r\n\t\t\tif (!tinymce.isIE)\r\n\t\t\t\treturn;\r\n\r\n\t\t\tt.editor = ed;\r\n\r\n\t\t\t// Register commands\r\n\t\t\ted.addCommand('mceIESpell', function() {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tsp = new ActiveXObject(\"ieSpell.ieSpellExtension\");\r\n\t\t\t\t\tsp.CheckDocumentNode(ed.getDoc().documentElement);\r\n\t\t\t\t} catch (e) {\r\n\t\t\t\t\tif (e.number == -2146827859) {\r\n\t\t\t\t\t\ted.windowManager.confirm(ed.getLang(\"iespell.download\"), function(s) {\r\n\t\t\t\t\t\t\tif (s)\r\n\t\t\t\t\t\t\t\twindow.open('http://www.iespell.com/download.php', 'ieSpellDownload', '');\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t} else\r\n\t\t\t\t\t\ted.windowManager.alert(\"Error Loading ieSpell: Exception \" + e.number);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t// Register buttons\r\n\t\t\ted.addButton('iespell', {title : 'iespell.iespell_desc', cmd : 'mceIESpell'});\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'IESpell (IE Only)',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/iespell',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('iespell', tinymce.plugins.IESpell);\r\n})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/editor_plugin.js",
    "content": "(function() {\r\n\ttinymce.PluginManager.requireLangPack('iframe');\r\n\ttinymce.create('tinymce.plugins.iframe', {\r\n\t\tinit : function(ed, url) {\r\n\r\n\t\t\ted.addCommand('mce_iframe', function() {\r\n\t\t\t\ted.windowManager.open({\r\n\t\t\t\t\tfile : url + '/window.html',\r\n\t\t\t\t\twidth : 360 + ed.getLang('iframe.delta_width', 0),\r\n\t\t\t\t\theight : 210 + ed.getLang('iframe.delta_height', 0),\r\n\t\t\t\t\tinline : 1\r\n\t\t\t\t}, {\r\n\t\t\t\t\tplugin_url : url\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\ted.addButton('iframe', {\r\n\t\t\t\ttitle : 'iframe.desc',\r\n\t\t\t\tcmd : 'mce_iframe',\r\n\t\t\t\timage : url + '/iframe.gif'\r\n\t\t\t});\r\n\t\t},\r\n\t\t\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\t\tlongname  : 'iframe',\r\n\t\t\t\t\tauthor \t  : 'Duwial Hakvoort',\r\n\t\t\t\t\tauthorurl : 'http://www.exed.nl',\r\n\t\t\t\t\tinfourl   : 'http://www.exed.nl',\r\n\t\t\t\t\tversion   : \"1.0\"\r\n\t\t\t};\r\n\t\t}\r\n\t});\r\n\r\n\ttinymce.PluginManager.add('iframe', tinymce.plugins.iframe);\r\n})();\r\n\r\n\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/ar.js",
    "content": "tinyMCE.addI18n('ar.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/az.js",
    "content": "tinyMCE.addI18n('az.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/be.js",
    "content": "tinyMCE.addI18n('be.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/cs.js",
    "content": "tinyMCE.addI18n('cs.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/da.js",
    "content": "tinyMCE.addI18n('da.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/de.js",
    "content": "tinyMCE.addI18n('de.iframe',{\ndesc:\"Iframe einfügen\",\nerror:\"Keine gültige URL eingegeben.\",\nurl:\"URL\",\nheight:\"Höhe\",\nwidth:\"Breite\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/el.js",
    "content": "tinyMCE.addI18n('el.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/en.js",
    "content": "tinyMCE.addI18n('en.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/es.js",
    "content": "tinyMCE.addI18n('es.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/fr.js",
    "content": "tinyMCE.addI18n('fr.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/he.js",
    "content": "tinyMCE.addI18n('he.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/hr.js",
    "content": "tinyMCE.addI18n('hr.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/hu.js",
    "content": "tinyMCE.addI18n('hu.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/it.js",
    "content": "tinyMCE.addI18n('it.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/ka.js",
    "content": "tinyMCE.addI18n('ka.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/ko.js",
    "content": "tinyMCE.addI18n('ko.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/nl.js",
    "content": "tinyMCE.addI18n('nl.iframe',{\ndesc:\"Iframe invoegen\",\nerror:\"de URL is niet ingevuld.\",\nurl:\"URL\",\nheight:\"Hoogte\",\nwidth:\"Breedte\"\n});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/pl.js",
    "content": "tinyMCE.addI18n('pl.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/pt.js",
    "content": "tinyMCE.addI18n('pt.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/ro.js",
    "content": "tinyMCE.addI18n('ro.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/ru.js",
    "content": "tinyMCE.addI18n('ru.iframe',{\ndesc:\"Втавить карту/фрейм\",\nerror:\"URL неверный.\",\nurl:\"URL\",\nheight:\"Высота\",\nwidth:\"Ширина\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/sr.js",
    "content": "tinyMCE.addI18n('sr.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/sv.js",
    "content": "tinyMCE.addI18n('sv.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/tr.js",
    "content": "tinyMCE.addI18n('tr.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/uk.js",
    "content": "tinyMCE.addI18n('uk.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/zh.js",
    "content": "tinyMCE.addI18n('zh.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/langs/zh_TW.js",
    "content": "tinyMCE.addI18n('zh_TW.iframe',{\ndesc:\"Insert Map/Other iframe\",\nerror:\"URL is not valid.\",\nurl:\"URL\",\nheight:\"Height\",\nwidth:\"Width\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/iframe/window.html",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#iframe.desc}</title>\r\n\t<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\r\n\t<script language=\"javascript\" type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script language=\"javascript\" type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script language=\"javascript\" type=\"text/javascript\" src=\"../../utils/form_utils.js\"></script>\r\n\t<script language=\"javascript\" type=\"text/javascript\">\r\n\tfunction init() {\r\n\t\ttinyMCEPopup.resizeToInnerSize();\r\n\t}\r\n\r\n\tfunction insertiframe() {\r\n\t\tvar iframetext;\r\n\r\n\t\tvar iframeUrl = document.getElementById('iframeUrl').value;\r\n\t\tvar iframeWidth = document.getElementById('iframeWidth').value;\r\n\t\tvar iframeHeight = document.getElementById('iframeHeight').value;\r\n\r\n\t\tif(iframeUrl == '') {\r\n\t\t\talert('{#iframe.error}');\r\n\t\t} else {\r\n\r\n\t\t\tif(iframeWidth == '') {\r\n\t\t\t\tiframeWidth = '100%';\r\n\t\t\t}\r\n\r\n\t\t\tif(iframeHeight == '') {\r\n\t\t\t\tiframeHeight = '200';\r\n\t\t\t}\r\n\r\n\t\t\tiframetext = '<br style=\"clear: both;\" /><iframe src=\"'+ iframeUrl +'\" width=\"'+ iframeWidth +'\" height=\"'+ iframeHeight +'\" frameborder=\"0\"></iframe><br style=\"clear: both;\" />';\r\n\r\n\t\t\tif(window.tinyMCE) {\r\n\t\t\t\ttinyMCEPopup.editor.execCommand('mceInsertContent', false, iframetext);\r\n\t\t\t\ttinyMCEPopup.editor.execCommand('mceRepaint');\r\n\t\t\t\ttinyMCEPopup.close();\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn;\r\n\t}\r\n\t</script>\r\n\t<base target=\"_self\" />\r\n</head>\r\n<body id=\"link\" onload=\"tinyMCEPopup.executeOnLoad('init();');document.body.style.display='';document.getElementById('iframeUrl').focus();\" style=\"display: none\">\r\n\t<form name=\"iframe\" action=\"#\">\r\n\t<div class=\"tabs\">\r\n\t\t<ul>\r\n\t\t\t<li id=\"iframe_tab\" class=\"current\"><span><a href=\"javascript:mcTabs.displayTab('iframe_tab','iframe_panel');\" onmousedown=\"return false;\">{#iframe.desc}</a></span></li>\r\n\t\t</ul>\r\n\t</div>\r\n\r\n\t<div class=\"panel_wrapper\">\r\n\t\t<!-- iframe panel -->\r\n\t\t<div id=\"iframe_panel\" class=\"panel current\">\r\n\t\t<br />\r\n\t\t<table border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n         <tr>\r\n            <td nowrap=\"nowrap\"><label for=\"iframeUrl\">{#iframe.url}</label></td>\r\n            <td><input type=\"text\" id=\"iframeUrl\" name=\"iframeUrl\" style=\"width: 190px\" />\r\n            </td>\r\n          </tr>\r\n         <tr>\r\n            <td nowrap=\"nowrap\"><label for=\"iframeWidth\">{#iframe.width}</label></td>\r\n            <td><input type=\"text\" id=\"iframeWidth\" name=\"iframeWidth\" style=\"width: 190px\" />\r\n            </td>\r\n          </tr>\r\n         <tr>\r\n            <td nowrap=\"nowrap\"><label for=\"iframeHeight\">{#iframe.height}</label></td>\r\n            <td><input type=\"text\" id=\"iframeHeight\" name=\"iframeHeight\" style=\"width: 190px\" />\r\n            </td>\r\n          </tr>\r\n\r\n        </table>\r\n\t\t</div>\r\n\t\t<!-- end iframe panel -->\r\n\r\n\r\n\t</div>\r\n\r\n\t<div class=\"mceActionPanel\">\r\n\t\t<div style=\"float: left\">\r\n\t\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t\t</div>\r\n\r\n\t\t<div style=\"float: right\">\r\n\t\t\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#insert}\" onclick=\"insertiframe();\" />\r\n\t\t</div>\r\n\t</div>\r\n</form>\r\n</body>\r\n</html>"
  },
  {
    "path": "newscoop/js/tinymce/plugins/inlinepopups/editor_plugin.js",
    "content": "(function(){var d=tinymce.DOM,b=tinymce.dom.Element,a=tinymce.dom.Event,e=tinymce.each,c=tinymce.is;tinymce.create(\"tinymce.plugins.InlinePopups\",{init:function(f,g){f.onBeforeRenderUI.add(function(){f.windowManager=new tinymce.InlineWindowManager(f);d.loadCSS(g+\"/skins/\"+(f.settings.inlinepopups_skin||\"clearlooks2\")+\"/window.css\")})},getInfo:function(){return{longname:\"InlinePopups\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/inlinepopups\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}}});tinymce.create(\"tinymce.InlineWindowManager:tinymce.WindowManager\",{InlineWindowManager:function(f){var g=this;g.parent(f);g.zIndex=300000;g.count=0;g.windows={}},open:function(s,j){var z=this,i,k=\"\",r=z.editor,g=0,v=0,h,m,o,q,l,x,y,n;s=s||{};j=j||{};if(!s.inline){return z.parent(s,j)}n=z._frontWindow();if(n&&d.get(n.id+\"_ifr\")){n.focussedElement=d.get(n.id+\"_ifr\").contentWindow.document.activeElement}if(!s.type){z.bookmark=r.selection.getBookmark(1)}i=d.uniqueId();h=d.getViewPort();s.width=parseInt(s.width||320);s.height=parseInt(s.height||240)+(tinymce.isIE?8:0);s.min_width=parseInt(s.min_width||150);s.min_height=parseInt(s.min_height||100);s.max_width=parseInt(s.max_width||2000);s.max_height=parseInt(s.max_height||2000);s.left=s.left||Math.round(Math.max(h.x,h.x+(h.w/2)-(s.width/2)));s.top=s.top||Math.round(Math.max(h.y,h.y+(h.h/2)-(s.height/2)));s.movable=s.resizable=true;j.mce_width=s.width;j.mce_height=s.height;j.mce_inline=true;j.mce_window_id=i;j.mce_auto_focus=s.auto_focus;z.features=s;z.params=j;z.onOpen.dispatch(z,s,j);if(s.type){k+=\" mceModal\";if(s.type){k+=\" mce\"+s.type.substring(0,1).toUpperCase()+s.type.substring(1)}s.resizable=false}if(s.statusbar){k+=\" mceStatusbar\"}if(s.resizable){k+=\" mceResizable\"}if(s.minimizable){k+=\" mceMinimizable\"}if(s.maximizable){k+=\" mceMaximizable\"}if(s.movable){k+=\" mceMovable\"}z._addAll(d.doc.body,[\"div\",{id:i,role:\"dialog\",\"aria-labelledby\":s.type?i+\"_content\":i+\"_title\",\"class\":(r.settings.inlinepopups_skin||\"clearlooks2\")+(tinymce.isIE&&window.getSelection?\" ie9\":\"\"),style:\"width:100px;height:100px\"},[\"div\",{id:i+\"_wrapper\",\"class\":\"mceWrapper\"+k},[\"div\",{id:i+\"_top\",\"class\":\"mceTop\"},[\"div\",{\"class\":\"mceLeft\"}],[\"div\",{\"class\":\"mceCenter\"}],[\"div\",{\"class\":\"mceRight\"}],[\"span\",{id:i+\"_title\"},s.title||\"\"]],[\"div\",{id:i+\"_middle\",\"class\":\"mceMiddle\"},[\"div\",{id:i+\"_left\",\"class\":\"mceLeft\",tabindex:\"0\"}],[\"span\",{id:i+\"_content\"}],[\"div\",{id:i+\"_right\",\"class\":\"mceRight\",tabindex:\"0\"}]],[\"div\",{id:i+\"_bottom\",\"class\":\"mceBottom\"},[\"div\",{\"class\":\"mceLeft\"}],[\"div\",{\"class\":\"mceCenter\"}],[\"div\",{\"class\":\"mceRight\"}],[\"span\",{id:i+\"_status\"},\"Content\"]],[\"a\",{\"class\":\"mceMove\",tabindex:\"-1\",href:\"javascript:;\"}],[\"a\",{\"class\":\"mceMin\",tabindex:\"-1\",href:\"javascript:;\",onmousedown:\"return false;\"}],[\"a\",{\"class\":\"mceMax\",tabindex:\"-1\",href:\"javascript:;\",onmousedown:\"return false;\"}],[\"a\",{\"class\":\"mceMed\",tabindex:\"-1\",href:\"javascript:;\",onmousedown:\"return false;\"}],[\"a\",{\"class\":\"mceClose\",tabindex:\"-1\",href:\"javascript:;\",onmousedown:\"return false;\"}],[\"a\",{id:i+\"_resize_n\",\"class\":\"mceResize mceResizeN\",tabindex:\"-1\",href:\"javascript:;\"}],[\"a\",{id:i+\"_resize_s\",\"class\":\"mceResize mceResizeS\",tabindex:\"-1\",href:\"javascript:;\"}],[\"a\",{id:i+\"_resize_w\",\"class\":\"mceResize mceResizeW\",tabindex:\"-1\",href:\"javascript:;\"}],[\"a\",{id:i+\"_resize_e\",\"class\":\"mceResize mceResizeE\",tabindex:\"-1\",href:\"javascript:;\"}],[\"a\",{id:i+\"_resize_nw\",\"class\":\"mceResize mceResizeNW\",tabindex:\"-1\",href:\"javascript:;\"}],[\"a\",{id:i+\"_resize_ne\",\"class\":\"mceResize mceResizeNE\",tabindex:\"-1\",href:\"javascript:;\"}],[\"a\",{id:i+\"_resize_sw\",\"class\":\"mceResize mceResizeSW\",tabindex:\"-1\",href:\"javascript:;\"}],[\"a\",{id:i+\"_resize_se\",\"class\":\"mceResize mceResizeSE\",tabindex:\"-1\",href:\"javascript:;\"}]]]);d.setStyles(i,{top:-10000,left:-10000});if(tinymce.isGecko){d.setStyle(i,\"overflow\",\"auto\")}if(!s.type){g+=d.get(i+\"_left\").clientWidth;g+=d.get(i+\"_right\").clientWidth;v+=d.get(i+\"_top\").clientHeight;v+=d.get(i+\"_bottom\").clientHeight}d.setStyles(i,{top:s.top,left:s.left,width:s.width+g,height:s.height+v});y=s.url||s.file;if(y){if(tinymce.relaxedDomain){y+=(y.indexOf(\"?\")==-1?\"?\":\"&\")+\"mce_rdomain=\"+tinymce.relaxedDomain}y=tinymce._addVer(y)}if(!s.type){d.add(i+\"_content\",\"iframe\",{id:i+\"_ifr\",src:'javascript:\"\"',frameBorder:0,style:\"border:0;width:10px;height:10px\"});d.setStyles(i+\"_ifr\",{width:s.width,height:s.height});d.setAttrib(i+\"_ifr\",\"src\",y)}else{d.add(i+\"_wrapper\",\"a\",{id:i+\"_ok\",\"class\":\"mceButton mceOk\",href:\"javascript:;\",onmousedown:\"return false;\"},\"Ok\");if(s.type==\"confirm\"){d.add(i+\"_wrapper\",\"a\",{\"class\":\"mceButton mceCancel\",href:\"javascript:;\",onmousedown:\"return false;\"},\"Cancel\")}d.add(i+\"_middle\",\"div\",{\"class\":\"mceIcon\"});d.setHTML(i+\"_content\",s.content.replace(\"\\n\",\"<br />\"));a.add(i,\"keyup\",function(f){var p=27;if(f.keyCode===p){s.button_func(false);return a.cancel(f)}});a.add(i,\"keydown\",function(f){var t,p=9;if(f.keyCode===p){t=d.select(\"a.mceCancel\",i+\"_wrapper\")[0];if(t&&t!==f.target){t.focus()}else{d.get(i+\"_ok\").focus()}return a.cancel(f)}})}o=a.add(i,\"mousedown\",function(t){var u=t.target,f,p;f=z.windows[i];z.focus(i);if(u.nodeName==\"A\"||u.nodeName==\"a\"){if(u.className==\"mceClose\"){z.close(null,i);return a.cancel(t)}else{if(u.className==\"mceMax\"){f.oldPos=f.element.getXY();f.oldSize=f.element.getSize();p=d.getViewPort();p.w-=2;p.h-=2;f.element.moveTo(p.x,p.y);f.element.resizeTo(p.w,p.h);d.setStyles(i+\"_ifr\",{width:p.w-f.deltaWidth,height:p.h-f.deltaHeight});d.addClass(i+\"_wrapper\",\"mceMaximized\")}else{if(u.className==\"mceMed\"){f.element.moveTo(f.oldPos.x,f.oldPos.y);f.element.resizeTo(f.oldSize.w,f.oldSize.h);f.iframeElement.resizeTo(f.oldSize.w-f.deltaWidth,f.oldSize.h-f.deltaHeight);d.removeClass(i+\"_wrapper\",\"mceMaximized\")}else{if(u.className==\"mceMove\"){return z._startDrag(i,t,u.className)}else{if(d.hasClass(u,\"mceResize\")){return z._startDrag(i,t,u.className.substring(13))}}}}}}});q=a.add(i,\"click\",function(f){var p=f.target;z.focus(i);if(p.nodeName==\"A\"||p.nodeName==\"a\"){switch(p.className){case\"mceClose\":z.close(null,i);return a.cancel(f);case\"mceButton mceOk\":case\"mceButton mceCancel\":s.button_func(p.className==\"mceButton mceOk\");return a.cancel(f)}}});a.add([i+\"_left\",i+\"_right\"],\"focus\",function(p){var t=d.get(i+\"_ifr\");if(t){var f=t.contentWindow.document.body;var u=d.select(\":input:enabled,*[tabindex=0]\",f);if(p.target.id===(i+\"_left\")){u[u.length-1].focus()}else{u[0].focus()}}else{d.get(i+\"_ok\").focus()}});x=z.windows[i]={id:i,mousedown_func:o,click_func:q,element:new b(i,{blocker:1,container:r.getContainer()}),iframeElement:new b(i+\"_ifr\"),features:s,deltaWidth:g,deltaHeight:v};x.iframeElement.on(\"focus\",function(){z.focus(i)});if(z.count==0&&z.editor.getParam(\"dialog_type\",\"modal\")==\"modal\"){d.add(d.doc.body,\"div\",{id:\"mceModalBlocker\",\"class\":(z.editor.settings.inlinepopups_skin||\"clearlooks2\")+\"_modalBlocker\",style:{zIndex:z.zIndex-1}});d.show(\"mceModalBlocker\");d.setAttrib(d.doc.body,\"aria-hidden\",\"true\")}else{d.setStyle(\"mceModalBlocker\",\"z-index\",z.zIndex-1)}if(tinymce.isIE6||/Firefox\\/2\\./.test(navigator.userAgent)||(tinymce.isIE&&!d.boxModel)){d.setStyles(\"mceModalBlocker\",{position:\"absolute\",left:h.x,top:h.y,width:h.w-2,height:h.h-2})}d.setAttrib(i,\"aria-hidden\",\"false\");z.focus(i);z._fixIELayout(i,1);if(d.get(i+\"_ok\")){d.get(i+\"_ok\").focus()}z.count++;return x},focus:function(h){var g=this,f;if(f=g.windows[h]){f.zIndex=this.zIndex++;f.element.setStyle(\"zIndex\",f.zIndex);f.element.update();h=h+\"_wrapper\";d.removeClass(g.lastId,\"mceFocus\");d.addClass(h,\"mceFocus\");g.lastId=h;if(f.focussedElement){f.focussedElement.focus()}else{if(d.get(h+\"_ok\")){d.get(f.id+\"_ok\").focus()}else{if(d.get(f.id+\"_ifr\")){d.get(f.id+\"_ifr\").focus()}}}}},_addAll:function(k,h){var g,l,f=this,j=tinymce.DOM;if(c(h,\"string\")){k.appendChild(j.doc.createTextNode(h))}else{if(h.length){k=k.appendChild(j.create(h[0],h[1]));for(g=2;g<h.length;g++){f._addAll(k,h[g])}}}},_startDrag:function(v,G,E){var o=this,u,z,C=d.doc,f,l=o.windows[v],h=l.element,y=h.getXY(),x,q,F,g,A,s,r,j,i,m,k,n,B;g={x:0,y:0};A=d.getViewPort();A.w-=2;A.h-=2;j=G.screenX;i=G.screenY;m=k=n=B=0;u=a.add(C,\"mouseup\",function(p){a.remove(C,\"mouseup\",u);a.remove(C,\"mousemove\",z);if(f){f.remove()}h.moveBy(m,k);h.resizeBy(n,B);q=h.getSize();d.setStyles(v+\"_ifr\",{width:q.w-l.deltaWidth,height:q.h-l.deltaHeight});o._fixIELayout(v,1);return a.cancel(p)});if(E!=\"Move\"){D()}function D(){if(f){return}o._fixIELayout(v,0);d.add(C.body,\"div\",{id:\"mceEventBlocker\",\"class\":\"mceEventBlocker \"+(o.editor.settings.inlinepopups_skin||\"clearlooks2\"),style:{zIndex:o.zIndex+1}});if(tinymce.isIE6||(tinymce.isIE&&!d.boxModel)){d.setStyles(\"mceEventBlocker\",{position:\"absolute\",left:A.x,top:A.y,width:A.w-2,height:A.h-2})}f=new b(\"mceEventBlocker\");f.update();x=h.getXY();q=h.getSize();s=g.x+x.x-A.x;r=g.y+x.y-A.y;d.add(f.get(),\"div\",{id:\"mcePlaceHolder\",\"class\":\"mcePlaceHolder\",style:{left:s,top:r,width:q.w,height:q.h}});F=new b(\"mcePlaceHolder\")}z=a.add(C,\"mousemove\",function(w){var p,H,t;D();p=w.screenX-j;H=w.screenY-i;switch(E){case\"ResizeW\":m=p;n=0-p;break;case\"ResizeE\":n=p;break;case\"ResizeN\":case\"ResizeNW\":case\"ResizeNE\":if(E==\"ResizeNW\"){m=p;n=0-p}else{if(E==\"ResizeNE\"){n=p}}k=H;B=0-H;break;case\"ResizeS\":case\"ResizeSW\":case\"ResizeSE\":if(E==\"ResizeSW\"){m=p;n=0-p}else{if(E==\"ResizeSE\"){n=p}}B=H;break;case\"mceMove\":m=p;k=H;break}if(n<(t=l.features.min_width-q.w)){if(m!==0){m+=n-t}n=t}if(B<(t=l.features.min_height-q.h)){if(k!==0){k+=B-t}B=t}n=Math.min(n,l.features.max_width-q.w);B=Math.min(B,l.features.max_height-q.h);m=Math.max(m,A.x-(s+A.x));k=Math.max(k,A.y-(r+A.y));m=Math.min(m,(A.w+A.x)-(s+q.w+A.x));k=Math.min(k,(A.h+A.y)-(r+q.h+A.y));if(m+k!==0){if(s+m<0){m=0}if(r+k<0){k=0}F.moveTo(s+m,r+k)}if(n+B!==0){F.resizeTo(q.w+n,q.h+B)}return a.cancel(w)});return a.cancel(G)},resizeBy:function(g,h,i){var f=this.windows[i];if(f){f.element.resizeBy(g,h);f.iframeElement.resizeBy(g,h)}},close:function(i,k){var g=this,f,j=d.doc,h,k;k=g._findId(k||i);if(!g.windows[k]){g.parent(i);return}g.count--;if(g.count==0){d.remove(\"mceModalBlocker\");d.setAttrib(d.doc.body,\"aria-hidden\",\"false\");g.editor.focus()}if(f=g.windows[k]){g.onClose.dispatch(g);a.remove(j,\"mousedown\",f.mousedownFunc);a.remove(j,\"click\",f.clickFunc);a.clear(k);a.clear(k+\"_ifr\");d.setAttrib(k+\"_ifr\",\"src\",'javascript:\"\"');f.element.remove();delete g.windows[k];h=g._frontWindow();if(h){g.focus(h.id)}}},_frontWindow:function(){var g,f=0;e(this.windows,function(h){if(h.zIndex>f){g=h;f=h.zIndex}});return g},setTitle:function(f,g){var h;f=this._findId(f);if(h=d.get(f+\"_title\")){h.innerHTML=d.encode(g)}},alert:function(g,f,j){var i=this,h;h=i.open({title:i,type:\"alert\",button_func:function(k){if(f){f.call(k||i,k)}i.close(null,h.id)},content:d.encode(i.editor.getLang(g,g)),inline:1,width:400,height:130})},confirm:function(g,f,j){var i=this,h;h=i.open({title:i,type:\"confirm\",button_func:function(k){if(f){f.call(k||i,k)}i.close(null,h.id)},content:d.encode(i.editor.getLang(g,g)),inline:1,width:400,height:130})},_findId:function(f){var g=this;if(typeof(f)==\"string\"){return f}e(g.windows,function(h){var i=d.get(h.id+\"_ifr\");if(i&&f==i.contentWindow){f=h.id;return false}});return f},_fixIELayout:function(i,h){var f,g;if(!tinymce.isIE6){return}e([\"n\",\"s\",\"w\",\"e\",\"nw\",\"ne\",\"sw\",\"se\"],function(j){var k=d.get(i+\"_resize_\"+j);d.setStyles(k,{width:h?k.clientWidth:\"\",height:h?k.clientHeight:\"\",cursor:d.getStyle(k,\"cursor\",1)});d.setStyle(i+\"_bottom\",\"bottom\",\"-1px\");k=0});if(f=this.windows[i]){f.element.hide();f.element.show();e(d.select(\"div,a\",i),function(k,j){if(k.currentStyle.backgroundImage!=\"none\"){g=new Image();g.src=k.currentStyle.backgroundImage.replace(/url\\(\\\"(.+)\\\"\\)/,\"$1\")}});d.get(i).style.filter=\"\"}}});tinymce.PluginManager.add(\"inlinepopups\",tinymce.plugins.InlinePopups)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/inlinepopups/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\tvar DOM = tinymce.DOM, Element = tinymce.dom.Element, Event = tinymce.dom.Event, each = tinymce.each, is = tinymce.is;\r\n\r\n\ttinymce.create('tinymce.plugins.InlinePopups', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\t// Replace window manager\r\n\t\t\ted.onBeforeRenderUI.add(function() {\r\n\t\t\t\ted.windowManager = new tinymce.InlineWindowManager(ed);\r\n\t\t\t\tDOM.loadCSS(url + '/skins/' + (ed.settings.inlinepopups_skin || 'clearlooks2') + \"/window.css\");\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'InlinePopups',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/inlinepopups',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t}\r\n\t});\r\n\r\n\ttinymce.create('tinymce.InlineWindowManager:tinymce.WindowManager', {\r\n\t\tInlineWindowManager : function(ed) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tt.parent(ed);\r\n\t\t\tt.zIndex = 300000;\r\n\t\t\tt.count = 0;\r\n\t\t\tt.windows = {};\r\n\t\t},\r\n\r\n\t\topen : function(f, p) {\r\n\t\t\tvar t = this, id, opt = '', ed = t.editor, dw = 0, dh = 0, vp, po, mdf, clf, we, w, u, parentWindow;\r\n\r\n\t\t\tf = f || {};\r\n\t\t\tp = p || {};\r\n\r\n\t\t\t// Run native windows\r\n\t\t\tif (!f.inline)\r\n\t\t\t\treturn t.parent(f, p);\r\n\r\n\t\t\tparentWindow = t._frontWindow();\r\n\t\t\tif (parentWindow && DOM.get(parentWindow.id + '_ifr')) {\r\n\t\t\t\tparentWindow.focussedElement = DOM.get(parentWindow.id + '_ifr').contentWindow.document.activeElement;\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t// Only store selection if the type is a normal window\r\n\t\t\tif (!f.type)\r\n\t\t\t\tt.bookmark = ed.selection.getBookmark(1);\r\n\r\n\t\t\tid = DOM.uniqueId();\r\n\t\t\tvp = DOM.getViewPort();\r\n\t\t\tf.width = parseInt(f.width || 320);\r\n\t\t\tf.height = parseInt(f.height || 240) + (tinymce.isIE ? 8 : 0);\r\n\t\t\tf.min_width = parseInt(f.min_width || 150);\r\n\t\t\tf.min_height = parseInt(f.min_height || 100);\r\n\t\t\tf.max_width = parseInt(f.max_width || 2000);\r\n\t\t\tf.max_height = parseInt(f.max_height || 2000);\r\n\t\t\tf.left = f.left || Math.round(Math.max(vp.x, vp.x + (vp.w / 2.0) - (f.width / 2.0)));\r\n\t\t\tf.top = f.top || Math.round(Math.max(vp.y, vp.y + (vp.h / 2.0) - (f.height / 2.0)));\r\n\t\t\tf.movable = f.resizable = true;\r\n\t\t\tp.mce_width = f.width;\r\n\t\t\tp.mce_height = f.height;\r\n\t\t\tp.mce_inline = true;\r\n\t\t\tp.mce_window_id = id;\r\n\t\t\tp.mce_auto_focus = f.auto_focus;\r\n\r\n\t\t\t// Transpose\r\n//\t\t\tpo = DOM.getPos(ed.getContainer());\r\n//\t\t\tf.left -= po.x;\r\n//\t\t\tf.top -= po.y;\r\n\r\n\t\t\tt.features = f;\r\n\t\t\tt.params = p;\r\n\t\t\tt.onOpen.dispatch(t, f, p);\r\n\r\n\t\t\tif (f.type) {\r\n\t\t\t\topt += ' mceModal';\r\n\r\n\t\t\t\tif (f.type)\r\n\t\t\t\t\topt += ' mce' + f.type.substring(0, 1).toUpperCase() + f.type.substring(1);\r\n\r\n\t\t\t\tf.resizable = false;\r\n\t\t\t}\r\n\r\n\t\t\tif (f.statusbar)\r\n\t\t\t\topt += ' mceStatusbar';\r\n\r\n\t\t\tif (f.resizable)\r\n\t\t\t\topt += ' mceResizable';\r\n\r\n\t\t\tif (f.minimizable)\r\n\t\t\t\topt += ' mceMinimizable';\r\n\r\n\t\t\tif (f.maximizable)\r\n\t\t\t\topt += ' mceMaximizable';\r\n\r\n\t\t\tif (f.movable)\r\n\t\t\t\topt += ' mceMovable';\r\n\r\n\t\t\t// Create DOM objects\r\n\t\t\tt._addAll(DOM.doc.body, \r\n\t\t\t\t['div', {id : id, role : 'dialog', 'aria-labelledby': f.type ? id + '_content' : id + '_title', 'class' : (ed.settings.inlinepopups_skin || 'clearlooks2') + (tinymce.isIE && window.getSelection ? ' ie9' : ''), style : 'width:100px;height:100px'}, \r\n\t\t\t\t\t['div', {id : id + '_wrapper', 'class' : 'mceWrapper' + opt},\r\n\t\t\t\t\t\t['div', {id : id + '_top', 'class' : 'mceTop'}, \r\n\t\t\t\t\t\t\t['div', {'class' : 'mceLeft'}],\r\n\t\t\t\t\t\t\t['div', {'class' : 'mceCenter'}],\r\n\t\t\t\t\t\t\t['div', {'class' : 'mceRight'}],\r\n\t\t\t\t\t\t\t['span', {id : id + '_title'}, f.title || '']\r\n\t\t\t\t\t\t],\r\n\r\n\t\t\t\t\t\t['div', {id : id + '_middle', 'class' : 'mceMiddle'}, \r\n\t\t\t\t\t\t\t['div', {id : id + '_left', 'class' : 'mceLeft', tabindex : '0'}],\r\n\t\t\t\t\t\t\t['span', {id : id + '_content'}],\r\n\t\t\t\t\t\t\t['div', {id : id + '_right', 'class' : 'mceRight', tabindex : '0'}]\r\n\t\t\t\t\t\t],\r\n\r\n\t\t\t\t\t\t['div', {id : id + '_bottom', 'class' : 'mceBottom'},\r\n\t\t\t\t\t\t\t['div', {'class' : 'mceLeft'}],\r\n\t\t\t\t\t\t\t['div', {'class' : 'mceCenter'}],\r\n\t\t\t\t\t\t\t['div', {'class' : 'mceRight'}],\r\n\t\t\t\t\t\t\t['span', {id : id + '_status'}, 'Content']\r\n\t\t\t\t\t\t],\r\n\r\n\t\t\t\t\t\t['a', {'class' : 'mceMove', tabindex : '-1', href : 'javascript:;'}],\r\n\t\t\t\t\t\t['a', {'class' : 'mceMin', tabindex : '-1', href : 'javascript:;', onmousedown : 'return false;'}],\r\n\t\t\t\t\t\t['a', {'class' : 'mceMax', tabindex : '-1', href : 'javascript:;', onmousedown : 'return false;'}],\r\n\t\t\t\t\t\t['a', {'class' : 'mceMed', tabindex : '-1', href : 'javascript:;', onmousedown : 'return false;'}],\r\n\t\t\t\t\t\t['a', {'class' : 'mceClose', tabindex : '-1', href : 'javascript:;', onmousedown : 'return false;'}],\r\n\t\t\t\t\t\t['a', {id : id + '_resize_n', 'class' : 'mceResize mceResizeN', tabindex : '-1', href : 'javascript:;'}],\r\n\t\t\t\t\t\t['a', {id : id + '_resize_s', 'class' : 'mceResize mceResizeS', tabindex : '-1', href : 'javascript:;'}],\r\n\t\t\t\t\t\t['a', {id : id + '_resize_w', 'class' : 'mceResize mceResizeW', tabindex : '-1', href : 'javascript:;'}],\r\n\t\t\t\t\t\t['a', {id : id + '_resize_e', 'class' : 'mceResize mceResizeE', tabindex : '-1', href : 'javascript:;'}],\r\n\t\t\t\t\t\t['a', {id : id + '_resize_nw', 'class' : 'mceResize mceResizeNW', tabindex : '-1', href : 'javascript:;'}],\r\n\t\t\t\t\t\t['a', {id : id + '_resize_ne', 'class' : 'mceResize mceResizeNE', tabindex : '-1', href : 'javascript:;'}],\r\n\t\t\t\t\t\t['a', {id : id + '_resize_sw', 'class' : 'mceResize mceResizeSW', tabindex : '-1', href : 'javascript:;'}],\r\n\t\t\t\t\t\t['a', {id : id + '_resize_se', 'class' : 'mceResize mceResizeSE', tabindex : '-1', href : 'javascript:;'}]\r\n\t\t\t\t\t]\r\n\t\t\t\t]\r\n\t\t\t);\r\n\r\n\t\t\tDOM.setStyles(id, {top : -10000, left : -10000});\r\n\r\n\t\t\t// Fix gecko rendering bug, where the editors iframe messed with window contents\r\n\t\t\tif (tinymce.isGecko)\r\n\t\t\t\tDOM.setStyle(id, 'overflow', 'auto');\r\n\r\n\t\t\t// Measure borders\r\n\t\t\tif (!f.type) {\r\n\t\t\t\tdw += DOM.get(id + '_left').clientWidth;\r\n\t\t\t\tdw += DOM.get(id + '_right').clientWidth;\r\n\t\t\t\tdh += DOM.get(id + '_top').clientHeight;\r\n\t\t\t\tdh += DOM.get(id + '_bottom').clientHeight;\r\n\t\t\t}\r\n\r\n\t\t\t// Resize window\r\n\t\t\tDOM.setStyles(id, {top : f.top, left : f.left, width : f.width + dw, height : f.height + dh});\r\n\r\n\t\t\tu = f.url || f.file;\r\n\t\t\tif (u) {\r\n\t\t\t\tif (tinymce.relaxedDomain)\r\n\t\t\t\t\tu += (u.indexOf('?') == -1 ? '?' : '&') + 'mce_rdomain=' + tinymce.relaxedDomain;\r\n\r\n\t\t\t\tu = tinymce._addVer(u);\r\n\t\t\t}\r\n\r\n\t\t\tif (!f.type) {\r\n\t\t\t\tDOM.add(id + '_content', 'iframe', {id : id + '_ifr', src : 'javascript:\"\"', frameBorder : 0, style : 'border:0;width:10px;height:10px'});\r\n\t\t\t\tDOM.setStyles(id + '_ifr', {width : f.width, height : f.height});\r\n\t\t\t\tDOM.setAttrib(id + '_ifr', 'src', u);\r\n\t\t\t} else {\r\n\t\t\t\tDOM.add(id + '_wrapper', 'a', {id : id + '_ok', 'class' : 'mceButton mceOk', href : 'javascript:;', onmousedown : 'return false;'}, 'Ok');\r\n\r\n\t\t\t\tif (f.type == 'confirm')\r\n\t\t\t\t\tDOM.add(id + '_wrapper', 'a', {'class' : 'mceButton mceCancel', href : 'javascript:;', onmousedown : 'return false;'}, 'Cancel');\r\n\r\n\t\t\t\tDOM.add(id + '_middle', 'div', {'class' : 'mceIcon'});\r\n\t\t\t\tDOM.setHTML(id + '_content', f.content.replace('\\n', '<br />'));\r\n\t\t\t\t\r\n\t\t\t\tEvent.add(id, 'keyup', function(evt) {\r\n\t\t\t\t\tvar VK_ESCAPE = 27;\r\n\t\t\t\t\tif (evt.keyCode === VK_ESCAPE) {\r\n\t\t\t\t\t\tf.button_func(false);\r\n\t\t\t\t\t\treturn Event.cancel(evt);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\tEvent.add(id, 'keydown', function(evt) {\r\n\t\t\t\t\tvar cancelButton, VK_TAB = 9;\r\n\t\t\t\t\tif (evt.keyCode === VK_TAB) {\r\n\t\t\t\t\t\tcancelButton = DOM.select('a.mceCancel', id + '_wrapper')[0];\r\n\t\t\t\t\t\tif (cancelButton && cancelButton !== evt.target) {\r\n\t\t\t\t\t\t\tcancelButton.focus();\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tDOM.get(id + '_ok').focus();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\treturn Event.cancel(evt);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\t// Register events\r\n\t\t\tmdf = Event.add(id, 'mousedown', function(e) {\r\n\t\t\t\tvar n = e.target, w, vp;\r\n\r\n\t\t\t\tw = t.windows[id];\r\n\t\t\t\tt.focus(id);\r\n\r\n\t\t\t\tif (n.nodeName == 'A' || n.nodeName == 'a') {\r\n\t\t\t\t\tif (n.className == 'mceClose') {\r\n\t\t\t\t\t\tt.close(null, id);\r\n\t\t\t\t\t\treturn Event.cancel(e);\r\n\t\t\t\t\t} else if (n.className == 'mceMax') {\r\n\t\t\t\t\t\tw.oldPos = w.element.getXY();\r\n\t\t\t\t\t\tw.oldSize = w.element.getSize();\r\n\r\n\t\t\t\t\t\tvp = DOM.getViewPort();\r\n\r\n\t\t\t\t\t\t// Reduce viewport size to avoid scrollbars\r\n\t\t\t\t\t\tvp.w -= 2;\r\n\t\t\t\t\t\tvp.h -= 2;\r\n\r\n\t\t\t\t\t\tw.element.moveTo(vp.x, vp.y);\r\n\t\t\t\t\t\tw.element.resizeTo(vp.w, vp.h);\r\n\t\t\t\t\t\tDOM.setStyles(id + '_ifr', {width : vp.w - w.deltaWidth, height : vp.h - w.deltaHeight});\r\n\t\t\t\t\t\tDOM.addClass(id + '_wrapper', 'mceMaximized');\r\n\t\t\t\t\t} else if (n.className == 'mceMed') {\r\n\t\t\t\t\t\t// Reset to old size\r\n\t\t\t\t\t\tw.element.moveTo(w.oldPos.x, w.oldPos.y);\r\n\t\t\t\t\t\tw.element.resizeTo(w.oldSize.w, w.oldSize.h);\r\n\t\t\t\t\t\tw.iframeElement.resizeTo(w.oldSize.w - w.deltaWidth, w.oldSize.h - w.deltaHeight);\r\n\r\n\t\t\t\t\t\tDOM.removeClass(id + '_wrapper', 'mceMaximized');\r\n\t\t\t\t\t} else if (n.className == 'mceMove')\r\n\t\t\t\t\t\treturn t._startDrag(id, e, n.className);\r\n\t\t\t\t\telse if (DOM.hasClass(n, 'mceResize'))\r\n\t\t\t\t\t\treturn t._startDrag(id, e, n.className.substring(13));\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tclf = Event.add(id, 'click', function(e) {\r\n\t\t\t\tvar n = e.target;\r\n\r\n\t\t\t\tt.focus(id);\r\n\r\n\t\t\t\tif (n.nodeName == 'A' || n.nodeName == 'a') {\r\n\t\t\t\t\tswitch (n.className) {\r\n\t\t\t\t\t\tcase 'mceClose':\r\n\t\t\t\t\t\t\tt.close(null, id);\r\n\t\t\t\t\t\t\treturn Event.cancel(e);\r\n\r\n\t\t\t\t\t\tcase 'mceButton mceOk':\r\n\t\t\t\t\t\tcase 'mceButton mceCancel':\r\n\t\t\t\t\t\t\tf.button_func(n.className == 'mceButton mceOk');\r\n\t\t\t\t\t\t\treturn Event.cancel(e);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\t\r\n\t\t\t// Make sure the tab order loops within the dialog.\r\n\t\t\tEvent.add([id + '_left', id + '_right'], 'focus', function(evt) {\r\n\t\t\t\tvar iframe = DOM.get(id + '_ifr');\r\n\t\t\t\tif (iframe) {\r\n\t\t\t\t\tvar body = iframe.contentWindow.document.body;\r\n\t\t\t\t\tvar focusable = DOM.select(':input:enabled,*[tabindex=0]', body);\r\n\t\t\t\t\tif (evt.target.id === (id + '_left')) {\r\n\t\t\t\t\t\tfocusable[focusable.length - 1].focus();\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tfocusable[0].focus();\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tDOM.get(id + '_ok').focus();\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\t\r\n\t\t\t// Add window\r\n\t\t\tw = t.windows[id] = {\r\n\t\t\t\tid : id,\r\n\t\t\t\tmousedown_func : mdf,\r\n\t\t\t\tclick_func : clf,\r\n\t\t\t\telement : new Element(id, {blocker : 1, container : ed.getContainer()}),\r\n\t\t\t\tiframeElement : new Element(id + '_ifr'),\r\n\t\t\t\tfeatures : f,\r\n\t\t\t\tdeltaWidth : dw,\r\n\t\t\t\tdeltaHeight : dh\r\n\t\t\t};\r\n\r\n\t\t\tw.iframeElement.on('focus', function() {\r\n\t\t\t\tt.focus(id);\r\n\t\t\t});\r\n\r\n\t\t\t// Setup blocker\r\n\t\t\tif (t.count == 0 && t.editor.getParam('dialog_type', 'modal') == 'modal') {\r\n\t\t\t\tDOM.add(DOM.doc.body, 'div', {\r\n\t\t\t\t\tid : 'mceModalBlocker',\r\n\t\t\t\t\t'class' : (t.editor.settings.inlinepopups_skin || 'clearlooks2') + '_modalBlocker',\r\n\t\t\t\t\tstyle : {zIndex : t.zIndex - 1}\r\n\t\t\t\t});\r\n\r\n\t\t\t\tDOM.show('mceModalBlocker'); // Reduces flicker in IE\r\n\t\t\t\tDOM.setAttrib(DOM.doc.body, 'aria-hidden', 'true');\r\n\t\t\t} else\r\n\t\t\t\tDOM.setStyle('mceModalBlocker', 'z-index', t.zIndex - 1);\r\n\r\n\t\t\tif (tinymce.isIE6 || /Firefox\\/2\\./.test(navigator.userAgent) || (tinymce.isIE && !DOM.boxModel))\r\n\t\t\t\tDOM.setStyles('mceModalBlocker', {position : 'absolute', left : vp.x, top : vp.y, width : vp.w - 2, height : vp.h - 2});\r\n\r\n\t\t\tDOM.setAttrib(id, 'aria-hidden', 'false');\r\n\t\t\tt.focus(id);\r\n\t\t\tt._fixIELayout(id, 1);\r\n\r\n\t\t\t// Focus ok button\r\n\t\t\tif (DOM.get(id + '_ok'))\r\n\t\t\t\tDOM.get(id + '_ok').focus();\r\n\t\t\tt.count++;\r\n\r\n\t\t\treturn w;\r\n\t\t},\r\n\r\n\t\tfocus : function(id) {\r\n\t\t\tvar t = this, w;\r\n\r\n\t\t\tif (w = t.windows[id]) {\r\n\t\t\t\tw.zIndex = this.zIndex++;\r\n\t\t\t\tw.element.setStyle('zIndex', w.zIndex);\r\n\t\t\t\tw.element.update();\r\n\r\n\t\t\t\tid = id + '_wrapper';\r\n\t\t\t\tDOM.removeClass(t.lastId, 'mceFocus');\r\n\t\t\t\tDOM.addClass(id, 'mceFocus');\r\n\t\t\t\tt.lastId = id;\r\n\t\t\t\t\r\n\t\t\t\tif (w.focussedElement) {\r\n\t\t\t\t\tw.focussedElement.focus();\r\n\t\t\t\t} else if (DOM.get(id + '_ok')) {\r\n\t\t\t\t\tDOM.get(w.id + '_ok').focus();\r\n\t\t\t\t} else if (DOM.get(w.id + '_ifr')) {\r\n\t\t\t\t\tDOM.get(w.id + '_ifr').focus();\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t_addAll : function(te, ne) {\r\n\t\t\tvar i, n, t = this, dom = tinymce.DOM;\r\n\r\n\t\t\tif (is(ne, 'string'))\r\n\t\t\t\tte.appendChild(dom.doc.createTextNode(ne));\r\n\t\t\telse if (ne.length) {\r\n\t\t\t\tte = te.appendChild(dom.create(ne[0], ne[1]));\r\n\r\n\t\t\t\tfor (i=2; i<ne.length; i++)\r\n\t\t\t\t\tt._addAll(te, ne[i]);\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t_startDrag : function(id, se, ac) {\r\n\t\t\tvar t = this, mu, mm, d = DOM.doc, eb, w = t.windows[id], we = w.element, sp = we.getXY(), p, sz, ph, cp, vp, sx, sy, sex, sey, dx, dy, dw, dh;\r\n\r\n\t\t\t// Get positons and sizes\r\n//\t\t\tcp = DOM.getPos(t.editor.getContainer());\r\n\t\t\tcp = {x : 0, y : 0};\r\n\t\t\tvp = DOM.getViewPort();\r\n\r\n\t\t\t// Reduce viewport size to avoid scrollbars while dragging\r\n\t\t\tvp.w -= 2;\r\n\t\t\tvp.h -= 2;\r\n\r\n\t\t\tsex = se.screenX;\r\n\t\t\tsey = se.screenY;\r\n\t\t\tdx = dy = dw = dh = 0;\r\n\r\n\t\t\t// Handle mouse up\r\n\t\t\tmu = Event.add(d, 'mouseup', function(e) {\r\n\t\t\t\tEvent.remove(d, 'mouseup', mu);\r\n\t\t\t\tEvent.remove(d, 'mousemove', mm);\r\n\r\n\t\t\t\tif (eb)\r\n\t\t\t\t\teb.remove();\r\n\r\n\t\t\t\twe.moveBy(dx, dy);\r\n\t\t\t\twe.resizeBy(dw, dh);\r\n\t\t\t\tsz = we.getSize();\r\n\t\t\t\tDOM.setStyles(id + '_ifr', {width : sz.w - w.deltaWidth, height : sz.h - w.deltaHeight});\r\n\t\t\t\tt._fixIELayout(id, 1);\r\n\r\n\t\t\t\treturn Event.cancel(e);\r\n\t\t\t});\r\n\r\n\t\t\tif (ac != 'Move')\r\n\t\t\t\tstartMove();\r\n\r\n\t\t\tfunction startMove() {\r\n\t\t\t\tif (eb)\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\tt._fixIELayout(id, 0);\r\n\r\n\t\t\t\t// Setup event blocker\r\n\t\t\t\tDOM.add(d.body, 'div', {\r\n\t\t\t\t\tid : 'mceEventBlocker',\r\n\t\t\t\t\t'class' : 'mceEventBlocker ' + (t.editor.settings.inlinepopups_skin || 'clearlooks2'),\r\n\t\t\t\t\tstyle : {zIndex : t.zIndex + 1}\r\n\t\t\t\t});\r\n\r\n\t\t\t\tif (tinymce.isIE6 || (tinymce.isIE && !DOM.boxModel))\r\n\t\t\t\t\tDOM.setStyles('mceEventBlocker', {position : 'absolute', left : vp.x, top : vp.y, width : vp.w - 2, height : vp.h - 2});\r\n\r\n\t\t\t\teb = new Element('mceEventBlocker');\r\n\t\t\t\teb.update();\r\n\r\n\t\t\t\t// Setup placeholder\r\n\t\t\t\tp = we.getXY();\r\n\t\t\t\tsz = we.getSize();\r\n\t\t\t\tsx = cp.x + p.x - vp.x;\r\n\t\t\t\tsy = cp.y + p.y - vp.y;\r\n\t\t\t\tDOM.add(eb.get(), 'div', {id : 'mcePlaceHolder', 'class' : 'mcePlaceHolder', style : {left : sx, top : sy, width : sz.w, height : sz.h}});\r\n\t\t\t\tph = new Element('mcePlaceHolder');\r\n\t\t\t};\r\n\r\n\t\t\t// Handle mouse move/drag\r\n\t\t\tmm = Event.add(d, 'mousemove', function(e) {\r\n\t\t\t\tvar x, y, v;\r\n\r\n\t\t\t\tstartMove();\r\n\r\n\t\t\t\tx = e.screenX - sex;\r\n\t\t\t\ty = e.screenY - sey;\r\n\r\n\t\t\t\tswitch (ac) {\r\n\t\t\t\t\tcase 'ResizeW':\r\n\t\t\t\t\t\tdx = x;\r\n\t\t\t\t\t\tdw = 0 - x;\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase 'ResizeE':\r\n\t\t\t\t\t\tdw = x;\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase 'ResizeN':\r\n\t\t\t\t\tcase 'ResizeNW':\r\n\t\t\t\t\tcase 'ResizeNE':\r\n\t\t\t\t\t\tif (ac == \"ResizeNW\") {\r\n\t\t\t\t\t\t\tdx = x;\r\n\t\t\t\t\t\t\tdw = 0 - x;\r\n\t\t\t\t\t\t} else if (ac == \"ResizeNE\")\r\n\t\t\t\t\t\t\tdw = x;\r\n\r\n\t\t\t\t\t\tdy = y;\r\n\t\t\t\t\t\tdh = 0 - y;\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase 'ResizeS':\r\n\t\t\t\t\tcase 'ResizeSW':\r\n\t\t\t\t\tcase 'ResizeSE':\r\n\t\t\t\t\t\tif (ac == \"ResizeSW\") {\r\n\t\t\t\t\t\t\tdx = x;\r\n\t\t\t\t\t\t\tdw = 0 - x;\r\n\t\t\t\t\t\t} else if (ac == \"ResizeSE\")\r\n\t\t\t\t\t\t\tdw = x;\r\n\r\n\t\t\t\t\t\tdh = y;\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase 'mceMove':\r\n\t\t\t\t\t\tdx = x;\r\n\t\t\t\t\t\tdy = y;\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Boundary check\r\n\t\t\t\tif (dw < (v = w.features.min_width - sz.w)) {\r\n\t\t\t\t\tif (dx !== 0)\r\n\t\t\t\t\t\tdx += dw - v;\r\n\r\n\t\t\t\t\tdw = v;\r\n\t\t\t\t}\r\n\t\r\n\t\t\t\tif (dh < (v = w.features.min_height - sz.h)) {\r\n\t\t\t\t\tif (dy !== 0)\r\n\t\t\t\t\t\tdy += dh - v;\r\n\r\n\t\t\t\t\tdh = v;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tdw = Math.min(dw, w.features.max_width - sz.w);\r\n\t\t\t\tdh = Math.min(dh, w.features.max_height - sz.h);\r\n\t\t\t\tdx = Math.max(dx, vp.x - (sx + vp.x));\r\n\t\t\t\tdy = Math.max(dy, vp.y - (sy + vp.y));\r\n\t\t\t\tdx = Math.min(dx, (vp.w + vp.x) - (sx + sz.w + vp.x));\r\n\t\t\t\tdy = Math.min(dy, (vp.h + vp.y) - (sy + sz.h + vp.y));\r\n\r\n\t\t\t\t// Move if needed\r\n\t\t\t\tif (dx + dy !== 0) {\r\n\t\t\t\t\tif (sx + dx < 0)\r\n\t\t\t\t\t\tdx = 0;\r\n\t\r\n\t\t\t\t\tif (sy + dy < 0)\r\n\t\t\t\t\t\tdy = 0;\r\n\r\n\t\t\t\t\tph.moveTo(sx + dx, sy + dy);\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Resize if needed\r\n\t\t\t\tif (dw + dh !== 0)\r\n\t\t\t\t\tph.resizeTo(sz.w + dw, sz.h + dh);\r\n\r\n\t\t\t\treturn Event.cancel(e);\r\n\t\t\t});\r\n\r\n\t\t\treturn Event.cancel(se);\r\n\t\t},\r\n\r\n\t\tresizeBy : function(dw, dh, id) {\r\n\t\t\tvar w = this.windows[id];\r\n\r\n\t\t\tif (w) {\r\n\t\t\t\tw.element.resizeBy(dw, dh);\r\n\t\t\t\tw.iframeElement.resizeBy(dw, dh);\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tclose : function(win, id) {\r\n\t\t\tvar t = this, w, d = DOM.doc, fw, id;\r\n\r\n\t\t\tid = t._findId(id || win);\r\n\r\n\t\t\t// Probably not inline\r\n\t\t\tif (!t.windows[id]) {\r\n\t\t\t\tt.parent(win);\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tt.count--;\r\n\r\n\t\t\tif (t.count == 0) {\r\n\t\t\t\tDOM.remove('mceModalBlocker');\r\n\t\t\t\tDOM.setAttrib(DOM.doc.body, 'aria-hidden', 'false');\r\n\t\t\t\tt.editor.focus();\r\n\t\t\t}\r\n\r\n\t\t\tif (w = t.windows[id]) {\r\n\t\t\t\tt.onClose.dispatch(t);\r\n\t\t\t\tEvent.remove(d, 'mousedown', w.mousedownFunc);\r\n\t\t\t\tEvent.remove(d, 'click', w.clickFunc);\r\n\t\t\t\tEvent.clear(id);\r\n\t\t\t\tEvent.clear(id + '_ifr');\r\n\r\n\t\t\t\tDOM.setAttrib(id + '_ifr', 'src', 'javascript:\"\"'); // Prevent leak\r\n\t\t\t\tw.element.remove();\r\n\t\t\t\tdelete t.windows[id];\r\n\r\n\t\t\t\tfw = t._frontWindow();\r\n\r\n\t\t\t\tif (fw)\r\n\t\t\t\t\tt.focus(fw.id);\r\n\t\t\t}\r\n\t\t},\r\n\t\t\r\n\t\t// Find front most window\r\n\t\t_frontWindow : function() {\r\n\t\t\tvar fw, ix = 0;\r\n\t\t\t// Find front most window and focus that\r\n\t\t\teach (this.windows, function(w) {\r\n\t\t\t\tif (w.zIndex > ix) {\r\n\t\t\t\t\tfw = w;\r\n\t\t\t\t\tix = w.zIndex;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\treturn fw;\r\n\t\t},\r\n\r\n\t\tsetTitle : function(w, ti) {\r\n\t\t\tvar e;\r\n\r\n\t\t\tw = this._findId(w);\r\n\r\n\t\t\tif (e = DOM.get(w + '_title'))\r\n\t\t\t\te.innerHTML = DOM.encode(ti);\r\n\t\t},\r\n\r\n\t\talert : function(txt, cb, s) {\r\n\t\t\tvar t = this, w;\r\n\r\n\t\t\tw = t.open({\r\n\t\t\t\ttitle : t,\r\n\t\t\t\ttype : 'alert',\r\n\t\t\t\tbutton_func : function(s) {\r\n\t\t\t\t\tif (cb)\r\n\t\t\t\t\t\tcb.call(s || t, s);\r\n\r\n\t\t\t\t\tt.close(null, w.id);\r\n\t\t\t\t},\r\n\t\t\t\tcontent : DOM.encode(t.editor.getLang(txt, txt)),\r\n\t\t\t\tinline : 1,\r\n\t\t\t\twidth : 400,\r\n\t\t\t\theight : 130\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tconfirm : function(txt, cb, s) {\r\n\t\t\tvar t = this, w;\r\n\r\n\t\t\tw = t.open({\r\n\t\t\t\ttitle : t,\r\n\t\t\t\ttype : 'confirm',\r\n\t\t\t\tbutton_func : function(s) {\r\n\t\t\t\t\tif (cb)\r\n\t\t\t\t\t\tcb.call(s || t, s);\r\n\r\n\t\t\t\t\tt.close(null, w.id);\r\n\t\t\t\t},\r\n\t\t\t\tcontent : DOM.encode(t.editor.getLang(txt, txt)),\r\n\t\t\t\tinline : 1,\r\n\t\t\t\twidth : 400,\r\n\t\t\t\theight : 130\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t// Internal functions\r\n\r\n\t\t_findId : function(w) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tif (typeof(w) == 'string')\r\n\t\t\t\treturn w;\r\n\r\n\t\t\teach(t.windows, function(wo) {\r\n\t\t\t\tvar ifr = DOM.get(wo.id + '_ifr');\r\n\r\n\t\t\t\tif (ifr && w == ifr.contentWindow) {\r\n\t\t\t\t\tw = wo.id;\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\treturn w;\r\n\t\t},\r\n\r\n\t\t_fixIELayout : function(id, s) {\r\n\t\t\tvar w, img;\r\n\r\n\t\t\tif (!tinymce.isIE6)\r\n\t\t\t\treturn;\r\n\r\n\t\t\t// Fixes the bug where hover flickers and does odd things in IE6\r\n\t\t\teach(['n','s','w','e','nw','ne','sw','se'], function(v) {\r\n\t\t\t\tvar e = DOM.get(id + '_resize_' + v);\r\n\r\n\t\t\t\tDOM.setStyles(e, {\r\n\t\t\t\t\twidth : s ? e.clientWidth : '',\r\n\t\t\t\t\theight : s ? e.clientHeight : '',\r\n\t\t\t\t\tcursor : DOM.getStyle(e, 'cursor', 1)\r\n\t\t\t\t});\r\n\r\n\t\t\t\tDOM.setStyle(id + \"_bottom\", 'bottom', '-1px');\r\n\r\n\t\t\t\te = 0;\r\n\t\t\t});\r\n\r\n\t\t\t// Fixes graphics glitch\r\n\t\t\tif (w = this.windows[id]) {\r\n\t\t\t\t// Fixes rendering bug after resize\r\n\t\t\t\tw.element.hide();\r\n\t\t\t\tw.element.show();\r\n\r\n\t\t\t\t// Forced a repaint of the window\r\n\t\t\t\t//DOM.get(id).style.filter = '';\r\n\r\n\t\t\t\t// IE has a bug where images used in CSS won't get loaded\r\n\t\t\t\t// sometimes when the cache in the browser is disabled\r\n\t\t\t\t// This fix tries to solve it by loading the images using the image object\r\n\t\t\t\teach(DOM.select('div,a', id), function(e, i) {\r\n\t\t\t\t\tif (e.currentStyle.backgroundImage != 'none') {\r\n\t\t\t\t\t\timg = new Image();\r\n\t\t\t\t\t\timg.src = e.currentStyle.backgroundImage.replace(/url\\(\\\"(.+)\\\"\\)/, '$1');\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\tDOM.get(id).style.filter = '';\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('inlinepopups', tinymce.plugins.InlinePopups);\r\n})();\r\n\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/inlinepopups/skins/clearlooks2/window.css",
    "content": "/* Clearlooks 2 */\n\n/* Reset */\n.clearlooks2, .clearlooks2 div, .clearlooks2 span, .clearlooks2 a {vertical-align:baseline; text-align:left; position:absolute; border:0; padding:0; margin:0; background:transparent; font-family:Arial,Verdana; font-size:11px; color:#000; text-decoration:none; font-weight:normal; width:auto; height:auto; overflow:hidden; display:block}\n\n/* General */\n.clearlooks2 {position:absolute; direction:ltr}\n.clearlooks2 .mceWrapper {position:static}\n.mceEventBlocker {position:fixed; left:0; top:0; background:url(img/horizontal.gif) no-repeat 0 -75px; width:100%; height:100%}\n.clearlooks2 .mcePlaceHolder {border:1px solid #000; background:#888; top:0; left:0; opacity:0.5; -ms-filter:'alpha(opacity=50)'; filter:alpha(opacity=50)}\n.clearlooks2_modalBlocker {position:fixed; left:0; top:0; width:100%; height:100%; background:#FFF; opacity:0.6; -ms-filter:'alpha(opacity=60)'; filter:alpha(opacity=60); display:none}\n\n/* Top */\n.clearlooks2 .mceTop, .clearlooks2 .mceTop div {top:0; width:100%; height:23px}\n.clearlooks2 .mceTop .mceLeft {width:6px; background:url(img/corners.gif)}\n.clearlooks2 .mceTop .mceCenter {right:6px; width:100%; height:23px; background:url(img/horizontal.gif) 12px 0; clip:rect(auto auto auto 12px)}\n.clearlooks2 .mceTop .mceRight {right:0; width:6px; height:23px; background:url(img/corners.gif) -12px 0}\n.clearlooks2 .mceTop span {width:100%; text-align:center; vertical-align:middle; line-height:23px; font-weight:bold}\n.clearlooks2 .mceFocus .mceTop .mceLeft {background:url(img/corners.gif) -6px 0}\n.clearlooks2 .mceFocus .mceTop .mceCenter {background:url(img/horizontal.gif) 0 -23px}\n.clearlooks2 .mceFocus .mceTop .mceRight {background:url(img/corners.gif) -18px 0}\n.clearlooks2 .mceFocus .mceTop span {color:#FFF}\n\n/* Middle */\n.clearlooks2 .mceMiddle, .clearlooks2 .mceMiddle div {top:0}\n.clearlooks2 .mceMiddle {width:100%; height:100%; clip:rect(23px auto auto auto)}\n.clearlooks2 .mceMiddle .mceLeft {left:0; width:5px; height:100%; background:url(img/vertical.gif) -5px 0}\n.clearlooks2 .mceMiddle span {top:23px; left:5px; width:100%; height:100%; background:#FFF}\n.clearlooks2 .mceMiddle .mceRight {right:0; width:5px; height:100%; background:url(img/vertical.gif)}\n\n/* Bottom */\n.clearlooks2 .mceBottom, .clearlooks2 .mceBottom div {height:6px}\n.clearlooks2 .mceBottom {left:0; bottom:0; width:100%}\n.clearlooks2 .mceBottom div {top:0}\n.clearlooks2 .mceBottom .mceLeft {left:0; width:5px; background:url(img/corners.gif) -34px -6px}\n.clearlooks2 .mceBottom .mceCenter {left:5px; width:100%; background:url(img/horizontal.gif) 0 -46px}\n.clearlooks2 .mceBottom .mceRight {right:0; width:5px; background: url(img/corners.gif) -34px 0}\n.clearlooks2 .mceBottom span {display:none}\n.clearlooks2 .mceStatusbar .mceBottom, .clearlooks2 .mceStatusbar .mceBottom div {height:23px}\n.clearlooks2 .mceStatusbar .mceBottom .mceLeft {background:url(img/corners.gif) -29px 0}\n.clearlooks2 .mceStatusbar .mceBottom .mceCenter {background:url(img/horizontal.gif) 0 -52px}\n.clearlooks2 .mceStatusbar .mceBottom .mceRight {background:url(img/corners.gif) -24px 0}\n.clearlooks2 .mceStatusbar .mceBottom span {display:block; left:7px; font-family:Arial, Verdana; font-size:11px; line-height:23px}\n\n/* Actions */\n.clearlooks2 a {width:29px; height:16px; top:3px;}\n.clearlooks2 .mceClose {right:6px; background:url(img/buttons.gif) -87px 0}\n.clearlooks2 .mceMin {display:none; right:68px; background:url(img/buttons.gif) 0 0}\n.clearlooks2 .mceMed {display:none; right:37px; background:url(img/buttons.gif) -29px 0}\n.clearlooks2 .mceMax {display:none; right:37px; background:url(img/buttons.gif) -58px 0}\n.clearlooks2 .mceMove {display:none;width:100%;cursor:move;background:url(img/corners.gif) no-repeat -100px -100px}\n.clearlooks2 .mceMovable .mceMove {display:block}\n.clearlooks2 .mceFocus .mceClose {right:6px; background:url(img/buttons.gif) -87px -16px}\n.clearlooks2 .mceFocus .mceMin {right:68px; background:url(img/buttons.gif) 0 -16px}\n.clearlooks2 .mceFocus .mceMed {right:37px; background:url(img/buttons.gif) -29px -16px}\n.clearlooks2 .mceFocus .mceMax {right:37px; background:url(img/buttons.gif) -58px -16px}\n.clearlooks2 .mceFocus .mceClose:hover {right:6px; background:url(img/buttons.gif) -87px -32px}\n.clearlooks2 .mceFocus .mceClose:hover {right:6px; background:url(img/buttons.gif) -87px -32px}\n.clearlooks2 .mceFocus .mceMin:hover {right:68px; background:url(img/buttons.gif) 0 -32px}\n.clearlooks2 .mceFocus .mceMed:hover {right:37px; background:url(img/buttons.gif) -29px -32px}\n.clearlooks2 .mceFocus .mceMax:hover {right:37px; background:url(img/buttons.gif) -58px -32px}\n\n/* Resize */\n.clearlooks2 .mceResize {top:auto; left:auto; display:none; width:5px; height:5px; background:url(img/horizontal.gif) no-repeat 0 -75px}\n.clearlooks2 .mceResizable .mceResize {display:block}\n.clearlooks2 .mceResizable .mceMin, .clearlooks2 .mceMax {display:none}\n.clearlooks2 .mceMinimizable .mceMin {display:block}\n.clearlooks2 .mceMaximizable .mceMax {display:block}\n.clearlooks2 .mceMaximized .mceMed {display:block}\n.clearlooks2 .mceMaximized .mceMax {display:none}\n.clearlooks2 a.mceResizeN {top:0; left:0; width:100%; cursor:n-resize}\n.clearlooks2 a.mceResizeNW {top:0; left:0; cursor:nw-resize}\n.clearlooks2 a.mceResizeNE {top:0; right:0; cursor:ne-resize}\n.clearlooks2 a.mceResizeW {top:0; left:0; height:100%; cursor:w-resize;}\n.clearlooks2 a.mceResizeE {top:0; right:0; height:100%; cursor:e-resize}\n.clearlooks2 a.mceResizeS {bottom:0; left:0; width:100%; cursor:s-resize}\n.clearlooks2 a.mceResizeSW {bottom:0; left:0; cursor:sw-resize}\n.clearlooks2 a.mceResizeSE {bottom:0; right:0; cursor:se-resize}\n\n/* Alert/Confirm */\n.clearlooks2 .mceButton {font-weight:bold; bottom:10px; width:80px; height:30px; background:url(img/button.gif); line-height:30px; vertical-align:middle; text-align:center; outline:0}\n.clearlooks2 .mceMiddle .mceIcon {left:15px; top:35px; width:32px; height:32px}\n.clearlooks2 .mceAlert .mceMiddle span, .clearlooks2 .mceConfirm .mceMiddle span {background:transparent;left:60px; top:35px; width:320px; height:50px; font-weight:bold; overflow:auto; white-space:normal}\n.clearlooks2 a:hover {font-weight:bold;}\n.clearlooks2 .mceAlert .mceMiddle, .clearlooks2 .mceConfirm .mceMiddle {background:#D6D7D5}\n.clearlooks2 .mceAlert .mceOk {left:50%; top:auto; margin-left: -40px}\n.clearlooks2 .mceAlert .mceIcon {background:url(img/alert.gif)}\n.clearlooks2 .mceConfirm .mceOk {left:50%; top:auto; margin-left: -90px}\n.clearlooks2 .mceConfirm .mceCancel {left:50%; top:auto}\n.clearlooks2 .mceConfirm .mceIcon {background:url(img/confirm.gif)}\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/inlinepopups/template.htm",
    "content": "<!-- <!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\"> -->\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n<title>Template for dialogs</title>\r\n<link rel=\"stylesheet\" type=\"text/css\" href=\"skins/clearlooks2/window.css\" />\r\n</head>\r\n<body>\r\n\r\n<div class=\"mceEditor\">\r\n\t<div class=\"clearlooks2\" style=\"width:400px; height:100px; left:10px;\">\r\n\t\t<div class=\"mceWrapper\">\r\n\t\t\t<div class=\"mceTop\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<div class=\"mceCenter\"></div>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t\t<span>Blured</span>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"mceMiddle\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<span>Content</span>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"mceBottom\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<div class=\"mceCenter\"></div>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t\t<span>Statusbar text.</span>\r\n\t\t\t</div>\r\n\r\n\t\t\t<a class=\"mceMove\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMin\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMax\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMed\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceClose\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeN\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeS\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeE\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeNW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeNE\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeSW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeSE\" href=\"#\"></a>\r\n\t\t</div>\r\n\t</div>\r\n\r\n\t<div class=\"clearlooks2\" style=\"width:400px; height:100px; left:420px;\">\r\n\t\t<div class=\"mceWrapper mceMovable mceFocus\">\r\n\t\t\t<div class=\"mceTop\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<div class=\"mceCenter\"></div>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t\t<span>Focused</span>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"mceMiddle\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<span>Content</span>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"mceBottom\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<div class=\"mceCenter\"></div>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t\t<span>Statusbar text.</span>\r\n\t\t\t</div>\r\n\r\n\t\t\t<a class=\"mceMove\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMin\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMax\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMed\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceClose\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeN\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeS\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeE\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeNW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeNE\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeSW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeSE\" href=\"#\"></a>\r\n\t\t</div>\r\n\t</div>\r\n\r\n\t<div class=\"clearlooks2\" style=\"width:400px; height:100px; left:10px; top:120px;\">\r\n\t\t<div class=\"mceWrapper mceMovable mceFocus mceStatusbar\">\r\n\t\t\t<div class=\"mceTop\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<div class=\"mceCenter\"></div>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t\t<span>Statusbar</span>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"mceMiddle\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<span>Content</span>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"mceBottom\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<div class=\"mceCenter\"></div>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t\t<span>Statusbar text.</span>\r\n\t\t\t</div>\r\n\r\n\t\t\t<a class=\"mceMove\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMin\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMax\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMed\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceClose\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeN\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeS\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeE\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeNW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeNE\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeSW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeSE\" href=\"#\"></a>\r\n\t\t</div>\r\n\t</div>\r\n\r\n\t<div class=\"clearlooks2\" style=\"width:400px; height:100px; left:420px; top:120px;\">\r\n\t\t<div class=\"mceWrapper mceMovable mceFocus mceStatusbar mceResizable\">\r\n\t\t\t<div class=\"mceTop\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<div class=\"mceCenter\"></div>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t\t<span>Statusbar, Resizable</span>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"mceMiddle\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<span>Content</span>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"mceBottom\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<div class=\"mceCenter\"></div>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t\t<span>Statusbar text.</span>\r\n\t\t\t</div>\r\n\r\n\t\t\t<a class=\"mceMove\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMin\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMax\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMed\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceClose\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeN\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeS\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeE\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeNW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeNE\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeSW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeSE\" href=\"#\"></a>\r\n\t\t</div>\r\n\t</div>\r\n\r\n\t<div class=\"clearlooks2\" style=\"width:400px; height:100px; left:10px; top:230px;\">\r\n\t\t<div class=\"mceWrapper mceMovable mceFocus mceResizable mceMaximizable\">\r\n\t\t\t<div class=\"mceTop\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<div class=\"mceCenter\"></div>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t\t<span>Resizable, Maximizable</span>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"mceMiddle\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<span>Content</span>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"mceBottom\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<div class=\"mceCenter\"></div>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t\t<span>Statusbar text.</span>\r\n\t\t\t</div>\r\n\r\n\t\t\t<a class=\"mceMove\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMin\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMax\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMed\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceClose\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeN\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeS\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeE\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeNW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeNE\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeSW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeSE\" href=\"#\"></a>\r\n\t\t</div>\r\n\t</div>\r\n\r\n\t<div class=\"clearlooks2\" style=\"width:400px; height:100px; left:420px; top:230px;\">\r\n\t\t<div class=\"mceWrapper mceMovable mceStatusbar mceResizable mceMaximizable\">\r\n\t\t\t<div class=\"mceTop\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<div class=\"mceCenter\"></div>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t\t<span>Blurred, Maximizable, Statusbar, Resizable</span>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"mceMiddle\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<span>Content</span>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"mceBottom\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<div class=\"mceCenter\"></div>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t\t<span>Statusbar text.</span>\r\n\t\t\t</div>\r\n\r\n\t\t\t<a class=\"mceMove\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMin\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMax\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMed\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceClose\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeN\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeS\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeE\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeNW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeNE\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeSW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeSE\" href=\"#\"></a>\r\n\t\t</div>\r\n\t</div>\r\n\r\n\t<div class=\"clearlooks2\" style=\"width:400px; height:100px; left:10px; top:340px;\">\r\n\t\t<div class=\"mceWrapper mceMovable mceFocus mceResizable mceMaximized mceMinimizable mceMaximizable\">\r\n\t\t\t<div class=\"mceTop\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<div class=\"mceCenter\"></div>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t\t<span>Maximized, Maximizable, Minimizable</span>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"mceMiddle\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<span>Content</span>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"mceBottom\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<div class=\"mceCenter\"></div>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t\t<span>Statusbar text.</span>\r\n\t\t\t</div>\r\n\r\n\t\t\t<a class=\"mceMove\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMin\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMax\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMed\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceClose\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeN\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeS\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeE\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeNW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeNE\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeSW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeSE\" href=\"#\"></a>\r\n\t\t</div>\r\n\t</div>\r\n\r\n\t<div class=\"clearlooks2\" style=\"width:400px; height:100px; left:420px; top:340px;\">\r\n\t\t<div class=\"mceWrapper mceMovable mceStatusbar mceResizable mceMaximized mceMinimizable mceMaximizable\">\r\n\t\t\t<div class=\"mceTop\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<div class=\"mceCenter\"></div>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t\t<span>Blured</span>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"mceMiddle\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<span>Content</span>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"mceBottom\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<div class=\"mceCenter\"></div>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t\t<span>Statusbar text.</span>\r\n\t\t\t</div>\r\n\r\n\t\t\t<a class=\"mceMove\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMin\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMax\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceMed\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceClose\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeN\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeS\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeE\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeNW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeNE\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeSW\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceResize mceResizeSE\" href=\"#\"></a>\r\n\t\t</div>\r\n\t</div>\r\n\r\n\t<div class=\"clearlooks2\" style=\"width:400px; height:130px; left:10px; top:450px;\">\r\n\t\t<div class=\"mceWrapper mceMovable mceFocus mceModal mceAlert\">\r\n\t\t\t<div class=\"mceTop\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<div class=\"mceCenter\"></div>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t\t<span>Alert</span>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"mceMiddle\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<span>\r\n\t\t\t\t\tThis is a very long error message. This is a very long error message.\r\n\t\t\t\t\tThis is a very long error message. This is a very long error message.\r\n\t\t\t\t\tThis is a very long error message. This is a very long error message.\r\n\t\t\t\t\tThis is a very long error message. This is a very long error message.\r\n\t\t\t\t\tThis is a very long error message. This is a very long error message.\r\n\t\t\t\t\tThis is a very long error message. This is a very long error message.\r\n\t\t\t\t</span>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t\t<div class=\"mceIcon\"></div>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"mceBottom\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<div class=\"mceCenter\"></div>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t</div>\r\n\r\n\t\t\t<a class=\"mceMove\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceButton mceOk\" href=\"#\">Ok</a>\r\n\t\t\t<a class=\"mceClose\" href=\"#\"></a>\r\n\t\t</div>\r\n\t</div>\r\n\r\n\t<div class=\"clearlooks2\" style=\"width:400px; height:130px; left:420px; top:450px;\">\r\n\t\t<div class=\"mceWrapper mceMovable mceFocus mceModal mceConfirm\">\r\n\t\t\t<div class=\"mceTop\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<div class=\"mceCenter\"></div>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t\t<span>Confirm</span>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"mceMiddle\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<span>\r\n\t\t\t\t\tThis is a very long error message. This is a very long error message.\r\n\t\t\t\t\tThis is a very long error message. This is a very long error message.\r\n\t\t\t\t\tThis is a very long error message. This is a very long error message.\r\n\t\t\t\t\tThis is a very long error message. This is a very long error message.\r\n\t\t\t\t\tThis is a very long error message. This is a very long error message.\r\n\t\t\t\t\tThis is a very long error message. This is a very long error message.\r\n\t\t\t\t\t</span>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t\t<div class=\"mceIcon\"></div>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"mceBottom\">\r\n\t\t\t\t<div class=\"mceLeft\"></div>\r\n\t\t\t\t<div class=\"mceCenter\"></div>\r\n\t\t\t\t<div class=\"mceRight\"></div>\r\n\t\t\t</div>\r\n\r\n\t\t\t<a class=\"mceMove\" href=\"#\"></a>\r\n\t\t\t<a class=\"mceButton mceOk\" href=\"#\">Ok</a>\r\n\t\t\t<a class=\"mceButton mceCancel\" href=\"#\">Cancel</a>\r\n\t\t\t<a class=\"mceClose\" href=\"#\"></a>\r\n\t\t</div>\r\n\t</div>\r\n</div>\r\n\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/insertdatetime/editor_plugin.js",
    "content": "(function(){tinymce.create(\"tinymce.plugins.InsertDateTime\",{init:function(a,b){var c=this;c.editor=a;a.addCommand(\"mceInsertDate\",function(){var d=c._getDateTime(new Date(),a.getParam(\"plugin_insertdate_dateFormat\",a.getLang(\"insertdatetime.date_fmt\")));a.execCommand(\"mceInsertContent\",false,d)});a.addCommand(\"mceInsertTime\",function(){var d=c._getDateTime(new Date(),a.getParam(\"plugin_insertdate_timeFormat\",a.getLang(\"insertdatetime.time_fmt\")));a.execCommand(\"mceInsertContent\",false,d)});a.addButton(\"insertdate\",{title:\"insertdatetime.insertdate_desc\",cmd:\"mceInsertDate\"});a.addButton(\"inserttime\",{title:\"insertdatetime.inserttime_desc\",cmd:\"mceInsertTime\"})},getInfo:function(){return{longname:\"Insert date/time\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/insertdatetime\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}},_getDateTime:function(e,a){var c=this.editor;function b(g,d){g=\"\"+g;if(g.length<d){for(var f=0;f<(d-g.length);f++){g=\"0\"+g}}return g}a=a.replace(\"%D\",\"%m/%d/%y\");a=a.replace(\"%r\",\"%I:%M:%S %p\");a=a.replace(\"%Y\",\"\"+e.getFullYear());a=a.replace(\"%y\",\"\"+e.getYear());a=a.replace(\"%m\",b(e.getMonth()+1,2));a=a.replace(\"%d\",b(e.getDate(),2));a=a.replace(\"%H\",\"\"+b(e.getHours(),2));a=a.replace(\"%M\",\"\"+b(e.getMinutes(),2));a=a.replace(\"%S\",\"\"+b(e.getSeconds(),2));a=a.replace(\"%I\",\"\"+((e.getHours()+11)%12+1));a=a.replace(\"%p\",\"\"+(e.getHours()<12?\"AM\":\"PM\"));a=a.replace(\"%B\",\"\"+c.getLang(\"insertdatetime.months_long\").split(\",\")[e.getMonth()]);a=a.replace(\"%b\",\"\"+c.getLang(\"insertdatetime.months_short\").split(\",\")[e.getMonth()]);a=a.replace(\"%A\",\"\"+c.getLang(\"insertdatetime.day_long\").split(\",\")[e.getDay()]);a=a.replace(\"%a\",\"\"+c.getLang(\"insertdatetime.day_short\").split(\",\")[e.getDay()]);a=a.replace(\"%%\",\"%\");return a}});tinymce.PluginManager.add(\"insertdatetime\",tinymce.plugins.InsertDateTime)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/insertdatetime/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\ttinymce.create('tinymce.plugins.InsertDateTime', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tt.editor = ed;\r\n\r\n\t\t\ted.addCommand('mceInsertDate', function() {\r\n\t\t\t\tvar str = t._getDateTime(new Date(), ed.getParam(\"plugin_insertdate_dateFormat\", ed.getLang('insertdatetime.date_fmt')));\r\n\r\n\t\t\t\ted.execCommand('mceInsertContent', false, str);\r\n\t\t\t});\r\n\r\n\t\t\ted.addCommand('mceInsertTime', function() {\r\n\t\t\t\tvar str = t._getDateTime(new Date(), ed.getParam(\"plugin_insertdate_timeFormat\", ed.getLang('insertdatetime.time_fmt')));\r\n\r\n\t\t\t\ted.execCommand('mceInsertContent', false, str);\r\n\t\t\t});\r\n\r\n\t\t\ted.addButton('insertdate', {title : 'insertdatetime.insertdate_desc', cmd : 'mceInsertDate'});\r\n\t\t\ted.addButton('inserttime', {title : 'insertdatetime.inserttime_desc', cmd : 'mceInsertTime'});\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Insert date/time',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/insertdatetime',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t},\r\n\r\n\t\t// Private methods\r\n\r\n\t\t_getDateTime : function(d, fmt) {\r\n\t\t\tvar ed = this.editor;\r\n\r\n\t\t\tfunction addZeros(value, len) {\r\n\t\t\t\tvalue = \"\" + value;\r\n\r\n\t\t\t\tif (value.length < len) {\r\n\t\t\t\t\tfor (var i=0; i<(len-value.length); i++)\r\n\t\t\t\t\t\tvalue = \"0\" + value;\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn value;\r\n\t\t\t};\r\n\r\n\t\t\tfmt = fmt.replace(\"%D\", \"%m/%d/%y\");\r\n\t\t\tfmt = fmt.replace(\"%r\", \"%I:%M:%S %p\");\r\n\t\t\tfmt = fmt.replace(\"%Y\", \"\" + d.getFullYear());\r\n\t\t\tfmt = fmt.replace(\"%y\", \"\" + d.getYear());\r\n\t\t\tfmt = fmt.replace(\"%m\", addZeros(d.getMonth()+1, 2));\r\n\t\t\tfmt = fmt.replace(\"%d\", addZeros(d.getDate(), 2));\r\n\t\t\tfmt = fmt.replace(\"%H\", \"\" + addZeros(d.getHours(), 2));\r\n\t\t\tfmt = fmt.replace(\"%M\", \"\" + addZeros(d.getMinutes(), 2));\r\n\t\t\tfmt = fmt.replace(\"%S\", \"\" + addZeros(d.getSeconds(), 2));\r\n\t\t\tfmt = fmt.replace(\"%I\", \"\" + ((d.getHours() + 11) % 12 + 1));\r\n\t\t\tfmt = fmt.replace(\"%p\", \"\" + (d.getHours() < 12 ? \"AM\" : \"PM\"));\r\n\t\t\tfmt = fmt.replace(\"%B\", \"\" + ed.getLang(\"insertdatetime.months_long\").split(',')[d.getMonth()]);\r\n\t\t\tfmt = fmt.replace(\"%b\", \"\" + ed.getLang(\"insertdatetime.months_short\").split(',')[d.getMonth()]);\r\n\t\t\tfmt = fmt.replace(\"%A\", \"\" + ed.getLang(\"insertdatetime.day_long\").split(',')[d.getDay()]);\r\n\t\t\tfmt = fmt.replace(\"%a\", \"\" + ed.getLang(\"insertdatetime.day_short\").split(',')[d.getDay()]);\r\n\t\t\tfmt = fmt.replace(\"%%\", \"%\");\r\n\r\n\t\t\treturn fmt;\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('insertdatetime', tinymce.plugins.InsertDateTime);\r\n})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/layer/editor_plugin.js",
    "content": "(function(){function a(b){do{if(b.className&&b.className.indexOf(\"mceItemLayer\")!=-1){return b}}while(b=b.parentNode)}tinymce.create(\"tinymce.plugins.Layer\",{init:function(b,c){var d=this;d.editor=b;b.addCommand(\"mceInsertLayer\",d._insertLayer,d);b.addCommand(\"mceMoveForward\",function(){d._move(1)});b.addCommand(\"mceMoveBackward\",function(){d._move(-1)});b.addCommand(\"mceMakeAbsolute\",function(){d._toggleAbsolute()});b.addButton(\"moveforward\",{title:\"layer.forward_desc\",cmd:\"mceMoveForward\"});b.addButton(\"movebackward\",{title:\"layer.backward_desc\",cmd:\"mceMoveBackward\"});b.addButton(\"absolute\",{title:\"layer.absolute_desc\",cmd:\"mceMakeAbsolute\"});b.addButton(\"insertlayer\",{title:\"layer.insertlayer_desc\",cmd:\"mceInsertLayer\"});b.onInit.add(function(){var e=b.dom;if(tinymce.isIE){b.getDoc().execCommand(\"2D-Position\",false,true)}});b.onMouseUp.add(function(f,h){var g=a(h.target);if(g){f.dom.setAttrib(g,\"data-mce-style\",\"\")}});b.onMouseDown.add(function(f,j){var h=j.target,i=f.getDoc(),g;if(tinymce.isGecko){if(a(h)){if(i.designMode!==\"on\"){i.designMode=\"on\";h=i.body;g=h.parentNode;g.removeChild(h);g.appendChild(h)}}else{if(i.designMode==\"on\"){i.designMode=\"off\"}}}});b.onNodeChange.add(d._nodeChange,d);b.onVisualAid.add(d._visualAid,d)},getInfo:function(){return{longname:\"Layer\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/layer\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}},_nodeChange:function(c,b,f){var d,e;d=this._getParentLayer(f);e=c.dom.getParent(f,\"DIV,P,IMG\");if(!e){b.setDisabled(\"absolute\",1);b.setDisabled(\"moveforward\",1);b.setDisabled(\"movebackward\",1)}else{b.setDisabled(\"absolute\",0);b.setDisabled(\"moveforward\",!d);b.setDisabled(\"movebackward\",!d);b.setActive(\"absolute\",d&&d.style.position.toLowerCase()==\"absolute\")}},_visualAid:function(b,d,c){var f=b.dom;tinymce.each(f.select(\"div,p\",d),function(g){if(/^(absolute|relative|fixed)$/i.test(g.style.position)){if(c){f.addClass(g,\"mceItemVisualAid\")}else{f.removeClass(g,\"mceItemVisualAid\")}f.addClass(g,\"mceItemLayer\")}})},_move:function(j){var c=this.editor,g,h=[],f=this._getParentLayer(c.selection.getNode()),e=-1,k=-1,b;b=[];tinymce.walk(c.getBody(),function(d){if(d.nodeType==1&&/^(absolute|relative|static)$/i.test(d.style.position)){b.push(d)}},\"childNodes\");for(g=0;g<b.length;g++){h[g]=b[g].style.zIndex?parseInt(b[g].style.zIndex):0;if(e<0&&b[g]==f){e=g}}if(j<0){for(g=0;g<h.length;g++){if(h[g]<h[e]){k=g;break}}if(k>-1){b[e].style.zIndex=h[k];b[k].style.zIndex=h[e]}else{if(h[e]>0){b[e].style.zIndex=h[e]-1}}}else{for(g=0;g<h.length;g++){if(h[g]>h[e]){k=g;break}}if(k>-1){b[e].style.zIndex=h[k];b[k].style.zIndex=h[e]}else{b[e].style.zIndex=h[e]+1}}c.execCommand(\"mceRepaint\")},_getParentLayer:function(b){return this.editor.dom.getParent(b,function(c){return c.nodeType==1&&/^(absolute|relative|static)$/i.test(c.style.position)})},_insertLayer:function(){var c=this.editor,e=c.dom,d=e.getPos(e.getParent(c.selection.getNode(),\"*\")),b=c.getBody();c.dom.add(b,\"div\",{style:{position:\"absolute\",left:d.x,top:(d.y>20?d.y:20),width:100,height:100},\"class\":\"mceItemVisualAid mceItemLayer\"},c.selection.getContent()||c.getLang(\"layer.content\"));if(tinymce.isIE){e.setHTML(b,b.innerHTML)}},_toggleAbsolute:function(){var b=this.editor,c=this._getParentLayer(b.selection.getNode());if(!c){c=b.dom.getParent(b.selection.getNode(),\"DIV,P,IMG\")}if(c){if(c.style.position.toLowerCase()==\"absolute\"){b.dom.setStyles(c,{position:\"\",left:\"\",top:\"\",width:\"\",height:\"\"});b.dom.removeClass(c,\"mceItemVisualAid\");b.dom.removeClass(c,\"mceItemLayer\")}else{if(c.style.left==\"\"){c.style.left=20+\"px\"}if(c.style.top==\"\"){c.style.top=20+\"px\"}if(c.style.width==\"\"){c.style.width=c.width?(c.width+\"px\"):\"100px\"}if(c.style.height==\"\"){c.style.height=c.height?(c.height+\"px\"):\"100px\"}c.style.position=\"absolute\";b.dom.setAttrib(c,\"data-mce-style\",\"\");b.addVisual(b.getBody())}b.execCommand(\"mceRepaint\");b.nodeChanged()}}});tinymce.PluginManager.add(\"layer\",tinymce.plugins.Layer)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/layer/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\tfunction findParentLayer(node) {\r\n\t\tdo {\r\n\t\t\tif (node.className && node.className.indexOf('mceItemLayer') != -1) {\r\n\t\t\t\treturn node;\r\n\t\t\t}\r\n\t\t} while (node = node.parentNode);\r\n\t};\r\n\r\n\ttinymce.create('tinymce.plugins.Layer', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tt.editor = ed;\r\n\r\n\t\t\t// Register commands\r\n\t\t\ted.addCommand('mceInsertLayer', t._insertLayer, t);\r\n\r\n\t\t\ted.addCommand('mceMoveForward', function() {\r\n\t\t\t\tt._move(1);\r\n\t\t\t});\r\n\r\n\t\t\ted.addCommand('mceMoveBackward', function() {\r\n\t\t\t\tt._move(-1);\r\n\t\t\t});\r\n\r\n\t\t\ted.addCommand('mceMakeAbsolute', function() {\r\n\t\t\t\tt._toggleAbsolute();\r\n\t\t\t});\r\n\r\n\t\t\t// Register buttons\r\n\t\t\ted.addButton('moveforward', {title : 'layer.forward_desc', cmd : 'mceMoveForward'});\r\n\t\t\ted.addButton('movebackward', {title : 'layer.backward_desc', cmd : 'mceMoveBackward'});\r\n\t\t\ted.addButton('absolute', {title : 'layer.absolute_desc', cmd : 'mceMakeAbsolute'});\r\n\t\t\ted.addButton('insertlayer', {title : 'layer.insertlayer_desc', cmd : 'mceInsertLayer'});\r\n\r\n\t\t\ted.onInit.add(function() {\r\n\t\t\t\tvar dom = ed.dom;\r\n\r\n\t\t\t\tif (tinymce.isIE)\r\n\t\t\t\t\ted.getDoc().execCommand('2D-Position', false, true);\r\n\t\t\t});\r\n\r\n\t\t\t// Remove serialized styles when selecting a layer since it might be changed by a drag operation\r\n\t\t\ted.onMouseUp.add(function(ed, e) {\r\n\t\t\t\tvar layer = findParentLayer(e.target);\r\n\t\r\n\t\t\t\tif (layer) {\r\n\t\t\t\t\ted.dom.setAttrib(layer, 'data-mce-style', '');\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t// Fixes edit focus issues with layers on Gecko\r\n\t\t\t// This will enable designMode while inside a layer and disable it when outside\r\n\t\t\ted.onMouseDown.add(function(ed, e) {\r\n\t\t\t\tvar node = e.target, doc = ed.getDoc(), parent;\r\n\r\n\t\t\t\tif (tinymce.isGecko) {\r\n\t\t\t\t\tif (findParentLayer(node)) {\r\n\t\t\t\t\t\tif (doc.designMode !== 'on') {\r\n\t\t\t\t\t\t\tdoc.designMode = 'on';\r\n\r\n\t\t\t\t\t\t\t// Repaint caret\r\n\t\t\t\t\t\t\tnode = doc.body;\r\n\t\t\t\t\t\t\tparent = node.parentNode;\r\n\t\t\t\t\t\t\tparent.removeChild(node);\r\n\t\t\t\t\t\t\tparent.appendChild(node);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else if (doc.designMode == 'on') {\r\n\t\t\t\t\t\tdoc.designMode = 'off';\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\ted.onNodeChange.add(t._nodeChange, t);\r\n\t\t\ted.onVisualAid.add(t._visualAid, t);\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Layer',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/layer',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t},\r\n\r\n\t\t// Private methods\r\n\r\n\t\t_nodeChange : function(ed, cm, n) {\r\n\t\t\tvar le, p;\r\n\r\n\t\t\tle = this._getParentLayer(n);\r\n\t\t\tp = ed.dom.getParent(n, 'DIV,P,IMG');\r\n\r\n\t\t\tif (!p) {\r\n\t\t\t\tcm.setDisabled('absolute', 1);\r\n\t\t\t\tcm.setDisabled('moveforward', 1);\r\n\t\t\t\tcm.setDisabled('movebackward', 1);\r\n\t\t\t} else {\r\n\t\t\t\tcm.setDisabled('absolute', 0);\r\n\t\t\t\tcm.setDisabled('moveforward', !le);\r\n\t\t\t\tcm.setDisabled('movebackward', !le);\r\n\t\t\t\tcm.setActive('absolute', le && le.style.position.toLowerCase() == \"absolute\");\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t// Private methods\r\n\r\n\t\t_visualAid : function(ed, e, s) {\r\n\t\t\tvar dom = ed.dom;\r\n\r\n\t\t\ttinymce.each(dom.select('div,p', e), function(e) {\r\n\t\t\t\tif (/^(absolute|relative|fixed)$/i.test(e.style.position)) {\r\n\t\t\t\t\tif (s)\r\n\t\t\t\t\t\tdom.addClass(e, 'mceItemVisualAid');\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\tdom.removeClass(e, 'mceItemVisualAid');\r\n\r\n\t\t\t\t\tdom.addClass(e, 'mceItemLayer');\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t_move : function(d) {\r\n\t\t\tvar ed = this.editor, i, z = [], le = this._getParentLayer(ed.selection.getNode()), ci = -1, fi = -1, nl;\r\n\r\n\t\t\tnl = [];\r\n\t\t\ttinymce.walk(ed.getBody(), function(n) {\r\n\t\t\t\tif (n.nodeType == 1 && /^(absolute|relative|static)$/i.test(n.style.position))\r\n\t\t\t\t\tnl.push(n); \r\n\t\t\t}, 'childNodes');\r\n\r\n\t\t\t// Find z-indexes\r\n\t\t\tfor (i=0; i<nl.length; i++) {\r\n\t\t\t\tz[i] = nl[i].style.zIndex ? parseInt(nl[i].style.zIndex) : 0;\r\n\r\n\t\t\t\tif (ci < 0 && nl[i] == le)\r\n\t\t\t\t\tci = i;\r\n\t\t\t}\r\n\r\n\t\t\tif (d < 0) {\r\n\t\t\t\t// Move back\r\n\r\n\t\t\t\t// Try find a lower one\r\n\t\t\t\tfor (i=0; i<z.length; i++) {\r\n\t\t\t\t\tif (z[i] < z[ci]) {\r\n\t\t\t\t\t\tfi = i;\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (fi > -1) {\r\n\t\t\t\t\tnl[ci].style.zIndex = z[fi];\r\n\t\t\t\t\tnl[fi].style.zIndex = z[ci];\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (z[ci] > 0)\r\n\t\t\t\t\t\tnl[ci].style.zIndex = z[ci] - 1;\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\t// Move forward\r\n\r\n\t\t\t\t// Try find a higher one\r\n\t\t\t\tfor (i=0; i<z.length; i++) {\r\n\t\t\t\t\tif (z[i] > z[ci]) {\r\n\t\t\t\t\t\tfi = i;\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (fi > -1) {\r\n\t\t\t\t\tnl[ci].style.zIndex = z[fi];\r\n\t\t\t\t\tnl[fi].style.zIndex = z[ci];\r\n\t\t\t\t} else\r\n\t\t\t\t\tnl[ci].style.zIndex = z[ci] + 1;\r\n\t\t\t}\r\n\r\n\t\t\ted.execCommand('mceRepaint');\r\n\t\t},\r\n\r\n\t\t_getParentLayer : function(n) {\r\n\t\t\treturn this.editor.dom.getParent(n, function(n) {\r\n\t\t\t\treturn n.nodeType == 1 && /^(absolute|relative|static)$/i.test(n.style.position);\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t_insertLayer : function() {\r\n\t\t\tvar ed = this.editor, dom = ed.dom, p = dom.getPos(dom.getParent(ed.selection.getNode(), '*')), body = ed.getBody();\r\n\r\n\t\t\ted.dom.add(body, 'div', {\r\n\t\t\t\tstyle : {\r\n\t\t\t\t\tposition : 'absolute',\r\n\t\t\t\t\tleft : p.x,\r\n\t\t\t\t\ttop : (p.y > 20 ? p.y : 20),\r\n\t\t\t\t\twidth : 100,\r\n\t\t\t\t\theight : 100\r\n\t\t\t\t},\r\n\t\t\t\t'class' : 'mceItemVisualAid mceItemLayer'\r\n\t\t\t}, ed.selection.getContent() || ed.getLang('layer.content'));\r\n\r\n\t\t\t// Workaround for IE where it messes up the JS engine if you insert a layer on IE 6,7\r\n\t\t\tif (tinymce.isIE)\r\n\t\t\t\tdom.setHTML(body, body.innerHTML);\r\n\t\t},\r\n\r\n\t\t_toggleAbsolute : function() {\r\n\t\t\tvar ed = this.editor, le = this._getParentLayer(ed.selection.getNode());\r\n\r\n\t\t\tif (!le)\r\n\t\t\t\tle = ed.dom.getParent(ed.selection.getNode(), 'DIV,P,IMG');\r\n\r\n\t\t\tif (le) {\r\n\t\t\t\tif (le.style.position.toLowerCase() == \"absolute\") {\r\n\t\t\t\t\ted.dom.setStyles(le, {\r\n\t\t\t\t\t\tposition : '',\r\n\t\t\t\t\t\tleft : '',\r\n\t\t\t\t\t\ttop : '',\r\n\t\t\t\t\t\twidth : '',\r\n\t\t\t\t\t\theight : ''\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\ted.dom.removeClass(le, 'mceItemVisualAid');\r\n\t\t\t\t\ted.dom.removeClass(le, 'mceItemLayer');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (le.style.left == \"\")\r\n\t\t\t\t\t\tle.style.left = 20 + 'px';\r\n\r\n\t\t\t\t\tif (le.style.top == \"\")\r\n\t\t\t\t\t\tle.style.top = 20 + 'px';\r\n\r\n\t\t\t\t\tif (le.style.width == \"\")\r\n\t\t\t\t\t\tle.style.width = le.width ? (le.width + 'px') : '100px';\r\n\r\n\t\t\t\t\tif (le.style.height == \"\")\r\n\t\t\t\t\t\tle.style.height = le.height ? (le.height + 'px') : '100px';\r\n\r\n\t\t\t\t\tle.style.position = \"absolute\";\r\n\r\n\t\t\t\t\ted.dom.setAttrib(le, 'data-mce-style', '');\r\n\t\t\t\t\ted.addVisual(ed.getBody());\r\n\t\t\t\t}\r\n\r\n\t\t\t\ted.execCommand('mceRepaint');\r\n\t\t\t\ted.nodeChanged();\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('layer', tinymce.plugins.Layer);\r\n})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/legacyoutput/editor_plugin.js",
    "content": "(function(a){a.onAddEditor.addToTop(function(c,b){b.settings.inline_styles=false});a.create(\"tinymce.plugins.LegacyOutput\",{init:function(b){b.onInit.add(function(){var c=\"p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img\",e=a.explode(b.settings.font_size_style_values),d=b.schema;b.formatter.register({alignleft:{selector:c,attributes:{align:\"left\"}},aligncenter:{selector:c,attributes:{align:\"center\"}},alignright:{selector:c,attributes:{align:\"right\"}},alignfull:{selector:c,attributes:{align:\"justify\"}},bold:[{inline:\"b\",remove:\"all\"},{inline:\"strong\",remove:\"all\"},{inline:\"span\",styles:{fontWeight:\"bold\"}}],italic:[{inline:\"i\",remove:\"all\"},{inline:\"em\",remove:\"all\"},{inline:\"span\",styles:{fontStyle:\"italic\"}}],underline:[{inline:\"u\",remove:\"all\"},{inline:\"span\",styles:{textDecoration:\"underline\"},exact:true}],strikethrough:[{inline:\"strike\",remove:\"all\"},{inline:\"span\",styles:{textDecoration:\"line-through\"},exact:true}],fontname:{inline:\"font\",attributes:{face:\"%value\"}},fontsize:{inline:\"font\",attributes:{size:function(f){return a.inArray(e,f.value)+1}}},forecolor:{inline:\"font\",styles:{color:\"%value\"}},hilitecolor:{inline:\"font\",styles:{backgroundColor:\"%value\"}}});a.each(\"b,i,u,strike\".split(\",\"),function(f){d.addValidElements(f+\"[*]\")});if(!d.getElementRule(\"font\")){d.addValidElements(\"font[face|size|color|style]\")}a.each(c.split(\",\"),function(f){var h=d.getElementRule(f),g;if(h){if(!h.attributes.align){h.attributes.align={};h.attributesOrder.push(\"align\")}}});b.onNodeChange.add(function(g,k){var j,f,h,i;f=g.dom.getParent(g.selection.getNode(),\"font\");if(f){h=f.face;i=f.size}if(j=k.get(\"fontselect\")){j.select(function(l){return l==h})}if(j=k.get(\"fontsizeselect\")){j.select(function(m){var l=a.inArray(e,m.fontSize);return l+1==i})}})})},getInfo:function(){return{longname:\"LegacyOutput\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/legacyoutput\",version:a.majorVersion+\".\"+a.minorVersion}}});a.PluginManager.add(\"legacyoutput\",a.plugins.LegacyOutput)})(tinymce);"
  },
  {
    "path": "newscoop/js/tinymce/plugins/legacyoutput/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n *\r\n * This plugin will force TinyMCE to produce deprecated legacy output such as font elements, u elements, align\r\n * attributes and so forth. There are a few cases where these old items might be needed for example in email applications or with Flash\r\n *\r\n * However you should NOT use this plugin if you are building some system that produces web contents such as a CMS. All these elements are\r\n * not apart of the newer specifications for HTML and XHTML.\r\n */\r\n\r\n(function(tinymce) {\r\n\t// Override inline_styles setting to force TinyMCE to produce deprecated contents\r\n\ttinymce.onAddEditor.addToTop(function(tinymce, editor) {\r\n\t\teditor.settings.inline_styles = false;\r\n\t});\r\n\r\n\t// Create the legacy ouput plugin\r\n\ttinymce.create('tinymce.plugins.LegacyOutput', {\r\n\t\tinit : function(editor) {\r\n\t\t\teditor.onInit.add(function() {\r\n\t\t\t\tvar alignElements = 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img',\r\n\t\t\t\t\tfontSizes = tinymce.explode(editor.settings.font_size_style_values),\r\n\t\t\t\t\tschema = editor.schema;\r\n\r\n\t\t\t\t// Override some internal formats to produce legacy elements and attributes\r\n\t\t\t\teditor.formatter.register({\r\n\t\t\t\t\t// Change alignment formats to use the deprecated align attribute\r\n\t\t\t\t\talignleft : {selector : alignElements, attributes : {align : 'left'}},\r\n\t\t\t\t\taligncenter : {selector : alignElements, attributes : {align : 'center'}},\r\n\t\t\t\t\talignright : {selector : alignElements, attributes : {align : 'right'}},\r\n\t\t\t\t\talignfull : {selector : alignElements, attributes : {align : 'justify'}},\r\n\r\n\t\t\t\t\t// Change the basic formatting elements to use deprecated element types\n\t\t\t\t\tbold : [\r\n\t\t\t\t\t\t{inline : 'b', remove : 'all'},\r\n\t\t\t\t\t\t{inline : 'strong', remove : 'all'},\r\n\t\t\t\t\t\t{inline : 'span', styles : {fontWeight : 'bold'}}\r\n\t\t\t\t\t],\r\n\t\t\t\t\titalic : [\r\n\t\t\t\t\t\t{inline : 'i', remove : 'all'},\r\n\t\t\t\t\t\t{inline : 'em', remove : 'all'},\r\n\t\t\t\t\t\t{inline : 'span', styles : {fontStyle : 'italic'}}\r\n\t\t\t\t\t],\r\n\t\t\t\t\tunderline : [\r\n\t\t\t\t\t\t{inline : 'u', remove : 'all'},\r\n\t\t\t\t\t\t{inline : 'span', styles : {textDecoration : 'underline'}, exact : true}\r\n\t\t\t\t\t],\r\n\t\t\t\t\tstrikethrough : [\r\n\t\t\t\t\t\t{inline : 'strike', remove : 'all'},\r\n\t\t\t\t\t\t{inline : 'span', styles : {textDecoration: 'line-through'}, exact : true}\r\n\t\t\t\t\t],\n\r\n\t\t\t\t\t// Change font size and font family to use the deprecated font element\r\n\t\t\t\t\tfontname : {inline : 'font', attributes : {face : '%value'}},\r\n\t\t\t\t\tfontsize : {\r\n\t\t\t\t\t\tinline : 'font',\r\n\t\t\t\t\t\tattributes : {\r\n\t\t\t\t\t\t\tsize : function(vars) {\r\n\t\t\t\t\t\t\t\treturn tinymce.inArray(fontSizes, vars.value) + 1;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t},\r\n\r\n\t\t\t\t\t// Setup font elements for colors as well\r\n\t\t\t\t\tforecolor : {inline : 'font', styles : {color : '%value'}},\r\n\t\t\t\t\thilitecolor : {inline : 'font', styles : {backgroundColor : '%value'}}\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// Check that deprecated elements are allowed if not add them\r\n\t\t\t\ttinymce.each('b,i,u,strike'.split(','), function(name) {\r\n\t\t\t\t\tschema.addValidElements(name + '[*]');\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// Add font element if it's missing\r\n\t\t\t\tif (!schema.getElementRule(\"font\"))\r\n\t\t\t\t\tschema.addValidElements(\"font[face|size|color|style]\");\r\n\r\n\t\t\t\t// Add the missing and depreacted align attribute for the serialization engine\r\n\t\t\t\ttinymce.each(alignElements.split(','), function(name) {\r\n\t\t\t\t\tvar rule = schema.getElementRule(name), found;\r\n\r\n\t\t\t\t\tif (rule) {\r\n\t\t\t\t\t\tif (!rule.attributes.align) {\r\n\t\t\t\t\t\t\trule.attributes.align = {};\r\n\t\t\t\t\t\t\trule.attributesOrder.push('align');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// Listen for the onNodeChange event so that we can do special logic for the font size and font name drop boxes\r\n\t\t\t\teditor.onNodeChange.add(function(editor, control_manager) {\r\n\t\t\t\t\tvar control, fontElm, fontName, fontSize;\r\n\r\n\t\t\t\t\t// Find font element get it's name and size\r\n\t\t\t\t\tfontElm = editor.dom.getParent(editor.selection.getNode(), 'font');\r\n\t\t\t\t\tif (fontElm) {\r\n\t\t\t\t\t\tfontName = fontElm.face;\r\n\t\t\t\t\t\tfontSize = fontElm.size;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Select/unselect the font name in droplist\r\n\t\t\t\t\tif (control = control_manager.get('fontselect')) {\r\n\t\t\t\t\t\tcontrol.select(function(value) {\r\n\t\t\t\t\t\t\treturn value == fontName;\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Select/unselect the font size in droplist\r\n\t\t\t\t\tif (control = control_manager.get('fontsizeselect')) {\r\n\t\t\t\t\t\tcontrol.select(function(value) {\r\n\t\t\t\t\t\t\tvar index = tinymce.inArray(fontSizes, value.fontSize);\r\n\r\n\t\t\t\t\t\t\treturn index + 1 == fontSize;\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'LegacyOutput',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/legacyoutput',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('legacyoutput', tinymce.plugins.LegacyOutput);\r\n})(tinymce);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/lists/editor_plugin.js",
    "content": "(function(){var e=tinymce.each,r=tinymce.dom.Event,g;function p(t,s){while(t&&(t.nodeType===8||(t.nodeType===3&&/^[ \\t\\n\\r]*$/.test(t.nodeValue)))){t=s(t)}return t}function b(s){return p(s,function(t){return t.previousSibling})}function i(s){return p(s,function(t){return t.nextSibling})}function d(s,u,t){return s.dom.getParent(u,function(v){return tinymce.inArray(t,v)!==-1})}function n(s){return s&&(s.tagName===\"OL\"||s.tagName===\"UL\")}function c(u,v){var t,w,s;t=b(u.lastChild);while(n(t)){w=t;t=b(w.previousSibling)}if(w){s=v.create(\"li\",{style:\"list-style-type: none;\"});v.split(u,w);v.insertAfter(s,w);s.appendChild(w);s.appendChild(w);u=s.previousSibling}return u}function m(t,s,u){t=a(t,s,u);return o(t,s,u)}function a(u,s,v){var t=b(u.previousSibling);if(t){return h(t,u,s?t:false,v)}else{return u}}function o(u,t,v){var s=i(u.nextSibling);if(s){return h(u,s,t?s:false,v)}else{return u}}function h(u,s,t,v){if(l(u,s,!!t,v)){return f(u,s,t)}else{if(u&&u.tagName===\"LI\"&&n(s)){u.appendChild(s)}}return s}function l(u,t,s,v){if(!u||!t){return false}else{if(u.tagName===\"LI\"&&t.tagName===\"LI\"){return t.style.listStyleType===\"none\"||j(t)}else{if(n(u)){return(u.tagName===t.tagName&&(s||u.style.listStyleType===t.style.listStyleType))||q(t)}else{if(v&&u.tagName===\"P\"&&t.tagName===\"P\"){return true}else{return false}}}}}function q(t){var s=i(t.firstChild),u=b(t.lastChild);return s&&u&&n(t)&&s===u&&(n(s)||s.style.listStyleType===\"none\"||j(s))}function j(u){var t=i(u.firstChild),s=b(u.lastChild);return t&&s&&t===s&&n(t)}function f(w,v,s){var u=b(w.lastChild),t=i(v.firstChild);if(w.tagName===\"P\"){w.appendChild(w.ownerDocument.createElement(\"br\"))}while(v.firstChild){w.appendChild(v.firstChild)}if(s){w.style.listStyleType=s.style.listStyleType}v.parentNode.removeChild(v);h(u,t,false);return w}function k(t,u){var s;if(!u.is(t,\"li,ol,ul\")){s=u.getParent(t,\"li\");if(s){t=s}}return t}tinymce.create(\"tinymce.plugins.Lists\",{init:function(A,y){var w=0;var t=1;var H=2;var J=3;var z=J;function C(M){return M.keyCode===9&&(A.queryCommandState(\"InsertUnorderedList\")||A.queryCommandState(\"InsertOrderedList\"))}function x(){var M=B();var O=M.parentNode.parentNode;var N=M.parentNode.lastChild===M;return N&&!u(O)&&K(M)}function u(M){if(n(M)){return M.parentNode&&M.parentNode.tagName===\"LI\"}else{return M.tagName===\"LI\"}}function D(){return A.selection.isCollapsed()&&K(B())}function B(){var M=A.selection.getStart();return((M.tagName==\"BR\"||M.tagName==\"\")&&M.parentNode.tagName==\"LI\")?M.parentNode:M}function K(M){var N=M.childNodes.length;if(M.tagName===\"LI\"){return N==0?true:N==1&&(M.firstChild.tagName==\"\"||F(M)||G(M))}return false}function F(M){return tinymce.isWebKit&&M.firstChild.nodeName==\"BR\"}function G(M){var N=tinymce.grep(M.parentNode.childNodes,function(Q){return Q.nodeName==\"LI\"});var O=M==N[N.length-1];var P=M.firstChild;return tinymce.isIE9&&O&&(P.nodeValue==String.fromCharCode(160)||P.nodeValue==String.fromCharCode(32))}function L(M){return M.keyCode===13}function I(M){if(C(M)){return w}else{if(L(M)&&x()){return H}else{if(L(M)&&D()){return t}else{return J}}}}function s(M,N){if(z==w||z==t){return r.cancel(N)}}function v(P,R){var U;if(!tinymce.isGecko){return}var N=P.selection.getStart();if(R.keyCode!=8||N.tagName!==\"IMG\"){return}function O(Y){var Z=Y.firstChild;var X=null;do{if(!Z){break}if(Z.tagName===\"LI\"){X=Z}}while(Z=Z.nextSibling);return X}function W(Y,X){while(Y.childNodes.length>0){X.appendChild(Y.childNodes[0])}}U=N.parentNode.previousSibling;if(!U){return}var S;if(U.tagName===\"UL\"||U.tagName===\"OL\"){S=U}else{if(U.previousSibling&&(U.previousSibling.tagName===\"UL\"||U.previousSibling.tagName===\"OL\")){S=U.previousSibling}else{return}}var V=O(S);var M=P.dom.createRng();M.setStart(V,1);M.setEnd(V,1);P.selection.setRng(M);P.selection.collapse(true);var Q=P.selection.getBookmark();var T=N.parentNode.cloneNode(true);if(T.tagName===\"P\"||T.tagName===\"DIV\"){W(T,V)}else{V.appendChild(T)}N.parentNode.parentNode.removeChild(N.parentNode);P.selection.moveToBookmark(Q)}function E(M){var N=A.dom.getParent(M,\"ol,ul\");if(N!=null){var O=N.lastChild;O.appendChild(A.getDoc().createElement(\"\"));A.selection.setCursorLocation(O,0)}}this.ed=A;A.addCommand(\"Indent\",this.indent,this);A.addCommand(\"Outdent\",this.outdent,this);A.addCommand(\"InsertUnorderedList\",function(){this.applyList(\"UL\",\"OL\")},this);A.addCommand(\"InsertOrderedList\",function(){this.applyList(\"OL\",\"UL\")},this);A.onInit.add(function(){A.editorCommands.addCommands({outdent:function(){var N=A.selection,O=A.dom;function M(P){P=O.getParent(P,O.isBlock);return P&&(parseInt(A.dom.getStyle(P,\"margin-left\")||0,10)+parseInt(A.dom.getStyle(P,\"padding-left\")||0,10))>0}return M(N.getStart())||M(N.getEnd())||A.queryCommandState(\"InsertOrderedList\")||A.queryCommandState(\"InsertUnorderedList\")}},\"state\")});A.onKeyUp.add(function(N,O){if(z==w){N.execCommand(O.shiftKey?\"Outdent\":\"Indent\",true,null);z=J;return r.cancel(O)}else{if(z==t){var M=B();var Q=N.settings.list_outdent_on_enter===true||O.shiftKey;N.execCommand(Q?\"Outdent\":\"Indent\",true,null);if(tinymce.isIE){E(M)}return r.cancel(O)}else{if(z==H){if(tinymce.isIE8){var P=N.getDoc().createTextNode(\"\\uFEFF\");N.selection.getNode().appendChild(P)}else{if(tinymce.isIE9){N.execCommand(\"Outdent\");return r.cancel(O)}}}}}});A.onKeyDown.add(function(M,N){z=I(N)});A.onKeyDown.add(s);A.onKeyDown.add(v);A.onKeyPress.add(s)},applyList:function(y,v){var C=this,z=C.ed,I=z.dom,s=[],H=false,u=false,w=false,B,G=z.selection.getSelectedBlocks();function E(t){if(t&&t.tagName===\"BR\"){I.remove(t)}}function F(M){var N=I.create(y),t;function L(O){if(O.style.marginLeft||O.style.paddingLeft){C.adjustPaddingFunction(false)(O)}}if(M.tagName===\"LI\"){}else{if(M.tagName===\"P\"||M.tagName===\"DIV\"||M.tagName===\"BODY\"){K(M,function(P,O,Q){J(P,O,M.tagName===\"BODY\"?null:P.parentNode);t=P.parentNode;L(t);E(O)});if(M.tagName===\"P\"||G.length>1){I.split(t.parentNode.parentNode,t.parentNode)}m(t.parentNode,true);return}else{t=I.create(\"li\");I.insertAfter(t,M);t.appendChild(M);L(M);M=t}}I.insertAfter(N,M);N.appendChild(M);m(N,true);s.push(M)}function J(Q,L,O){var t,P=Q,N,M;while(!I.isBlock(Q.parentNode)&&Q.parentNode!==I.getRoot()){Q=I.split(Q.parentNode,Q.previousSibling);Q=Q.nextSibling;P=Q}if(O){t=O.cloneNode(true);Q.parentNode.insertBefore(t,Q);while(t.firstChild){I.remove(t.firstChild)}t=I.rename(t,\"li\")}else{t=I.create(\"li\");Q.parentNode.insertBefore(t,Q)}while(P&&P!=L){N=P.nextSibling;t.appendChild(P);P=N}if(t.childNodes.length===0){t.innerHTML='<br _mce_bogus=\"1\" />'}F(t)}function K(Q,T){var N,R,O=3,L=1,t=\"br,ul,ol,p,div,h1,h2,h3,h4,h5,h6,table,blockquote,address,pre,form,center,dl\";function P(X,U){var V=I.createRng(),W;g.keep=true;z.selection.moveToBookmark(g);g.keep=false;W=z.selection.getRng(true);if(!U){U=X.parentNode.lastChild}V.setStartBefore(X);V.setEndAfter(U);return !(V.compareBoundaryPoints(O,W)>0||V.compareBoundaryPoints(L,W)<=0)}function S(U){if(U.nextSibling){return U.nextSibling}if(!I.isBlock(U.parentNode)&&U.parentNode!==I.getRoot()){return S(U.parentNode)}}N=Q.firstChild;var M=false;e(I.select(t,Q),function(V){var U;if(V.hasAttribute&&V.hasAttribute(\"_mce_bogus\")){return true}if(P(N,V)){I.addClass(V,\"_mce_tagged_br\");N=S(V)}});M=(N&&P(N,undefined));N=Q.firstChild;e(I.select(t,Q),function(V){var U=S(V);if(V.hasAttribute&&V.hasAttribute(\"_mce_bogus\")){return true}if(I.hasClass(V,\"_mce_tagged_br\")){T(N,V,R);R=null}else{R=V}N=U});if(M){T(N,undefined,R)}}function D(t){K(t,function(M,L,N){J(M,L);E(L);E(N)})}function A(t){if(tinymce.inArray(s,t)!==-1){return}if(t.parentNode.tagName===v){I.split(t.parentNode,t);F(t);o(t.parentNode,false)}s.push(t)}function x(M){var O,N,L,t;if(tinymce.inArray(s,M)!==-1){return}M=c(M,I);while(I.is(M.parentNode,\"ol,ul,li\")){I.split(M.parentNode,M)}s.push(M);M=I.rename(M,\"p\");L=m(M,false,z.settings.force_br_newlines);if(L===M){O=M.firstChild;while(O){if(I.isBlock(O)){O=I.split(O.parentNode,O);t=true;N=O.nextSibling&&O.nextSibling.firstChild}else{N=O.nextSibling;if(t&&O.tagName===\"BR\"){I.remove(O)}t=false}O=N}}}e(G,function(t){t=k(t,I);if(t.tagName===v||(t.tagName===\"LI\"&&t.parentNode.tagName===v)){u=true}else{if(t.tagName===y||(t.tagName===\"LI\"&&t.parentNode.tagName===y)){H=true}else{w=true}}});if(w||u||G.length===0){B={LI:A,H1:F,H2:F,H3:F,H4:F,H5:F,H6:F,P:F,BODY:F,DIV:G.length>1?F:D,defaultAction:D}}else{B={defaultAction:x}}this.process(B)},indent:function(){var u=this.ed,w=u.dom,x=[];function s(z){var y=w.create(\"li\",{style:\"list-style-type: none;\"});w.insertAfter(y,z);return y}function t(B){var y=s(B),D=w.getParent(B,\"ol,ul\"),C=D.tagName,E=w.getStyle(D,\"list-style-type\"),A={},z;if(E!==\"\"){A.style=\"list-style-type: \"+E+\";\"}z=w.create(C,A);y.appendChild(z);return z}function v(z){if(!d(u,z,x)){z=c(z,w);var y=t(z);y.appendChild(z);m(y.parentNode,false);m(y,false);x.push(z)}}this.process({LI:v,defaultAction:this.adjustPaddingFunction(true)})},outdent:function(){var v=this,u=v.ed,w=u.dom,s=[];function x(t){var z,y,A;if(!d(u,t,s)){if(w.getStyle(t,\"margin-left\")!==\"\"||w.getStyle(t,\"padding-left\")!==\"\"){return v.adjustPaddingFunction(false)(t)}A=w.getStyle(t,\"text-align\",true);if(A===\"center\"||A===\"right\"){w.setStyle(t,\"text-align\",\"left\");return}t=c(t,w);z=t.parentNode;y=t.parentNode.parentNode;if(y.tagName===\"P\"){w.split(y,t.parentNode)}else{w.split(z,t);if(y.tagName===\"LI\"){w.split(y,t)}else{if(!w.is(y,\"ol,ul\")){w.rename(t,\"p\")}}}s.push(t)}}this.process({LI:x,defaultAction:this.adjustPaddingFunction(false)});e(s,m)},process:function(y){var D=this,w=D.ed.selection,z=D.ed.dom,C,u;function x(s){z.removeClass(s,\"_mce_act_on\");if(!s||s.nodeType!==1){return}s=k(s,z);var t=y[s.tagName];if(!t){t=y.defaultAction}t(s)}function v(s){D.splitSafeEach(s.childNodes,x)}function B(s,t){return t>=0&&s.hasChildNodes()&&t<s.childNodes.length&&s.childNodes[t].tagName===\"BR\"}C=w.getSelectedBlocks();if(C.length===0){C=[z.getRoot()]}u=w.getRng(true);if(!u.collapsed){if(B(u.endContainer,u.endOffset-1)){u.setEnd(u.endContainer,u.endOffset-1);w.setRng(u)}if(B(u.startContainer,u.startOffset)){u.setStart(u.startContainer,u.startOffset+1);w.setRng(u)}}if(tinymce.isIE8){var E=D.ed.selection.getNode();if(E.tagName===\"LI\"&&!(E.parentNode.lastChild===E)){var A=D.ed.getDoc().createTextNode(\"\\uFEFF\");E.appendChild(A)}}g=w.getBookmark();y.OL=y.UL=v;D.splitSafeEach(C,x);w.moveToBookmark(g);g=null;D.ed.execCommand(\"mceRepaint\")},splitSafeEach:function(t,s){if(tinymce.isGecko&&(/Firefox\\/[12]\\.[0-9]/.test(navigator.userAgent)||/Firefox\\/3\\.[0-4]/.test(navigator.userAgent))){this.classBasedEach(t,s)}else{e(t,s)}},classBasedEach:function(v,u){var w=this.ed.dom,s,t;e(v,function(x){w.addClass(x,\"_mce_act_on\")});s=w.select(\"._mce_act_on\");while(s.length>0){t=s.shift();w.removeClass(t,\"_mce_act_on\");u(t);s=w.select(\"._mce_act_on\")}},adjustPaddingFunction:function(u){var s,v,t=this.ed;s=t.settings.indentation;v=/[a-z%]+/i.exec(s);s=parseInt(s,10);return function(w){var y,x;y=parseInt(t.dom.getStyle(w,\"margin-left\")||0,10)+parseInt(t.dom.getStyle(w,\"padding-left\")||0,10);if(u){x=y+s}else{x=y-s}t.dom.setStyle(w,\"padding-left\",\"\");t.dom.setStyle(w,\"margin-left\",x>0?x+v:\"\")}},getInfo:function(){return{longname:\"Lists\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/lists\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}}});tinymce.PluginManager.add(\"lists\",tinymce.plugins.Lists)}());"
  },
  {
    "path": "newscoop/js/tinymce/plugins/lists/editor_plugin_src.js",
    "content": "/**\n * editor_plugin_src.js\n *\n * Copyright 2011, Moxiecode Systems AB\n * Released under LGPL License.\n *\n * License: http://tinymce.moxiecode.com/license\n * Contributing: http://tinymce.moxiecode.com/contributing\n */\n\n(function() {\n\tvar each = tinymce.each, Event = tinymce.dom.Event, bookmark;\n\n\t// Skips text nodes that only contain whitespace since they aren't semantically important.\n\tfunction skipWhitespaceNodes(e, next) {\n\t\twhile (e && (e.nodeType === 8 || (e.nodeType === 3 && /^[ \\t\\n\\r]*$/.test(e.nodeValue)))) {\n\t\t\te = next(e);\n\t\t}\n\t\treturn e;\n\t}\n\n\tfunction skipWhitespaceNodesBackwards(e) {\n\t\treturn skipWhitespaceNodes(e, function(e) {\n\t\t\treturn e.previousSibling;\n\t\t});\n\t}\n\n\tfunction skipWhitespaceNodesForwards(e) {\n\t\treturn skipWhitespaceNodes(e, function(e) {\n\t\t\treturn e.nextSibling;\n\t\t});\n\t}\n\n\tfunction hasParentInList(ed, e, list) {\n\t\treturn ed.dom.getParent(e, function(p) {\n\t\t\treturn tinymce.inArray(list, p) !== -1;\n\t\t});\n\t}\n\n\tfunction isList(e) {\n\t\treturn e && (e.tagName === 'OL' || e.tagName === 'UL');\n\t}\n\n\tfunction splitNestedLists(element, dom) {\n\t\tvar tmp, nested, wrapItem;\n\t\ttmp = skipWhitespaceNodesBackwards(element.lastChild);\n\t\twhile (isList(tmp)) {\n\t\t\tnested = tmp;\n\t\t\ttmp = skipWhitespaceNodesBackwards(nested.previousSibling);\n\t\t}\n\t\tif (nested) {\n\t\t\twrapItem = dom.create('li', { style: 'list-style-type: none;'});\n\t\t\tdom.split(element, nested);\n\t\t\tdom.insertAfter(wrapItem, nested);\n\t\t\twrapItem.appendChild(nested);\n\t\t\twrapItem.appendChild(nested);\n\t\t\telement = wrapItem.previousSibling;\n\t\t}\n\t\treturn element;\n\t}\n\n\tfunction attemptMergeWithAdjacent(e, allowDifferentListStyles, mergeParagraphs) {\n\t\te = attemptMergeWithPrevious(e, allowDifferentListStyles, mergeParagraphs);\n\t\treturn attemptMergeWithNext(e, allowDifferentListStyles, mergeParagraphs);\n\t}\n\n\tfunction attemptMergeWithPrevious(e, allowDifferentListStyles, mergeParagraphs) {\n\t\tvar prev = skipWhitespaceNodesBackwards(e.previousSibling);\n\t\tif (prev) {\n\t\t\treturn attemptMerge(prev, e, allowDifferentListStyles ? prev : false, mergeParagraphs);\n\t\t} else {\n\t\t\treturn e;\n\t\t}\n\t}\n\n\tfunction attemptMergeWithNext(e, allowDifferentListStyles, mergeParagraphs) {\n\t\tvar next = skipWhitespaceNodesForwards(e.nextSibling);\n\t\tif (next) {\n\t\t\treturn attemptMerge(e, next, allowDifferentListStyles ? next : false, mergeParagraphs);\n\t\t} else {\n\t\t\treturn e;\n\t\t}\n\t}\n\n\tfunction attemptMerge(e1, e2, differentStylesMasterElement, mergeParagraphs) {\n\t\tif (canMerge(e1, e2, !!differentStylesMasterElement, mergeParagraphs)) {\n\t\t\treturn merge(e1, e2, differentStylesMasterElement);\n\t\t} else if (e1 && e1.tagName === 'LI' && isList(e2)) {\n\t\t\t// Fix invalidly nested lists.\n\t\t\te1.appendChild(e2);\n\t\t}\n\t\treturn e2;\n\t}\n\n\tfunction canMerge(e1, e2, allowDifferentListStyles, mergeParagraphs) {\n\t\tif (!e1 || !e2) {\n\t\t\treturn false;\n\t\t} else if (e1.tagName === 'LI' && e2.tagName === 'LI') {\n\t\t\treturn e2.style.listStyleType === 'none' || containsOnlyAList(e2);\n\t\t} else if (isList(e1)) {\n\t\t\treturn (e1.tagName === e2.tagName && (allowDifferentListStyles || e1.style.listStyleType === e2.style.listStyleType)) || isListForIndent(e2);\n\t\t} else if (mergeParagraphs && e1.tagName === 'P' && e2.tagName === 'P') {\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tfunction isListForIndent(e) {\n\t\tvar firstLI = skipWhitespaceNodesForwards(e.firstChild), lastLI = skipWhitespaceNodesBackwards(e.lastChild);\n\t\treturn firstLI && lastLI && isList(e) && firstLI === lastLI && (isList(firstLI) || firstLI.style.listStyleType === 'none' || containsOnlyAList(firstLI));\n\t}\n\n\tfunction containsOnlyAList(e) {\n\t\tvar firstChild = skipWhitespaceNodesForwards(e.firstChild), lastChild = skipWhitespaceNodesBackwards(e.lastChild);\n\t\treturn firstChild && lastChild && firstChild === lastChild && isList(firstChild);\n\t}\n\n\tfunction merge(e1, e2, masterElement) {\n\t\tvar lastOriginal = skipWhitespaceNodesBackwards(e1.lastChild), firstNew = skipWhitespaceNodesForwards(e2.firstChild);\n\t\tif (e1.tagName === 'P') {\n\t\t\te1.appendChild(e1.ownerDocument.createElement('br'));\n\t\t}\n\t\twhile (e2.firstChild) {\n\t\t\te1.appendChild(e2.firstChild);\n\t\t}\n\t\tif (masterElement) {\n\t\t\te1.style.listStyleType = masterElement.style.listStyleType;\n\t\t}\n\t\te2.parentNode.removeChild(e2);\n\t\tattemptMerge(lastOriginal, firstNew, false);\n\t\treturn e1;\n\t}\n\n\tfunction findItemToOperateOn(e, dom) {\n\t\tvar item;\n\t\tif (!dom.is(e, 'li,ol,ul')) {\n\t\t\titem = dom.getParent(e, 'li');\n\t\t\tif (item) {\n\t\t\t\te = item;\n\t\t\t}\n\t\t}\n\t\treturn e;\n\t}\n\n\ttinymce.create('tinymce.plugins.Lists', {\n\t\tinit: function(ed, url) {\n\t\t\tvar LIST_TABBING = 0;\n\t\t\tvar LIST_EMPTY_ITEM = 1;\n\t\t\tvar LIST_ESCAPE = 2;\n\t\t\tvar LIST_UNKNOWN = 3;\n\t\t\tvar state = LIST_UNKNOWN;\n\n\t\t\tfunction isTabInList(e) {\n\t\t\t\treturn e.keyCode === 9 && (ed.queryCommandState('InsertUnorderedList') || ed.queryCommandState('InsertOrderedList'));\n\t\t\t}\n\n\t\t\tfunction isOnLastListItem() {\n\t\t\t\tvar li = getLi();\n\t\t\t\tvar grandParent = li.parentNode.parentNode;\n\t\t\t\tvar isLastItem = li.parentNode.lastChild === li;\n\t\t\t\treturn isLastItem && !isNestedList(grandParent) && isEmptyListItem(li);\n\t\t\t}\n\n\t\t\tfunction isNestedList(grandParent) {\n\t\t\t\tif (isList(grandParent)) {\n\t\t\t\t\treturn grandParent.parentNode && grandParent.parentNode.tagName === 'LI';\n\t\t\t\t} else {\n\t\t\t\t\treturn  grandParent.tagName === 'LI';\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfunction isInEmptyListItem() {\n\t\t\t\treturn ed.selection.isCollapsed() && isEmptyListItem(getLi());\n\t\t\t}\n\n\t\t\tfunction getLi() {\n\t\t\t\tvar n = ed.selection.getStart();\n\t\t\t\t// Get start will return BR if the LI only contains a BR or an empty element as we use these to fix caret position\n\t\t\t\treturn ((n.tagName == 'BR' || n.tagName == '') && n.parentNode.tagName == 'LI') ? n.parentNode : n;\n\t\t\t}\n\n\t\t\tfunction isEmptyListItem(li) {\n\t\t\t\tvar numChildren = li.childNodes.length;\n\t\t\t\tif (li.tagName === 'LI') {\n\t\t\t\t\treturn numChildren == 0 ? true : numChildren == 1 && (li.firstChild.tagName == '' || isEmptyWebKitLi(li) || isEmptyIE9Li(li));\n\t\t\t\t}\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tfunction isEmptyWebKitLi(li) {\n\t\t\t\t// Check for empty LI or a LI with just a child that is a BR since Gecko and WebKit uses BR elements to place the caret\n\t\t\t\treturn tinymce.isWebKit && li.firstChild.nodeName == 'BR';\n\t\t\t}\n\n\t\t\tfunction isEmptyIE9Li(li) {\n\t\t\t\t// only consider this to be last item if there is no list item content or that content is nbsp or space since IE9 creates these\n\t\t\t\tvar lis = tinymce.grep(li.parentNode.childNodes, function(n) {return n.nodeName == 'LI'});\n\t\t\t\tvar isLastLi = li == lis[lis.length - 1];\n\t\t\t\tvar child = li.firstChild;\n\t\t\t\treturn tinymce.isIE9 && isLastLi && (child.nodeValue == String.fromCharCode(160) || child.nodeValue == String.fromCharCode(32));\n\t\t\t}\n\n\t\t\tfunction isEnter(e) {\n\t\t\t\treturn e.keyCode === 13;\n\t\t\t}\n\n\t\t\tfunction getListKeyState(e) {\n\t\t\t\tif (isTabInList(e)) {\n\t\t\t\t\treturn LIST_TABBING;\n\t\t\t\t} else if (isEnter(e) && isOnLastListItem()) {\n\t\t\t\t\treturn LIST_ESCAPE;\n\t\t\t\t} else if (isEnter(e) && isInEmptyListItem()) {\n\t\t\t\t\treturn LIST_EMPTY_ITEM;\n\t\t\t\t} else {\n\t\t\t\t\treturn LIST_UNKNOWN;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfunction cancelEnterAndTab(_, e) {\n\t\t\t\tif (state == LIST_TABBING || state == LIST_EMPTY_ITEM) {\n\t\t\t\t\treturn Event.cancel(e);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfunction imageJoiningListItem(ed, e) {\n\t\t\t\tvar prevSibling;\n\n\t\t\t\tif (!tinymce.isGecko)\n\t\t\t\t\treturn;\n\n\t\t\t\tvar n = ed.selection.getStart();\n\t\t\t\tif (e.keyCode != 8 || n.tagName !== 'IMG')\n\t\t\t\t\treturn;\n\n\t\t\t\tfunction lastLI(node) {\n\t\t\t\t\tvar child = node.firstChild;\n\t\t\t\t\tvar li = null;\n\t\t\t\t\tdo {\n\t\t\t\t\t\tif (!child)\n\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\tif (child.tagName === 'LI')\n\t\t\t\t\t\t\tli = child;\n\t\t\t\t\t} while (child = child.nextSibling);\n\n\t\t\t\t\treturn li;\n\t\t\t\t}\n\n\t\t\t\tfunction addChildren(parentNode, destination) {\n\t\t\t\t\twhile (parentNode.childNodes.length > 0)\n\t\t\t\t\t\tdestination.appendChild(parentNode.childNodes[0]);\n\t\t\t\t}\n\n\t\t\t\t// Check if there is a previous sibling\n\t\t\t\tprevSibling = n.parentNode.previousSibling;\n\t\t\t\tif (!prevSibling)\n\t\t\t\t\treturn;\n\n\t\t\t\tvar ul;\n\t\t\t\tif (prevSibling.tagName === 'UL' || prevSibling.tagName === 'OL')\n\t\t\t\t\tul = prevSibling;\n\t\t\t\telse if (prevSibling.previousSibling && (prevSibling.previousSibling.tagName === 'UL' || prevSibling.previousSibling.tagName === 'OL'))\n\t\t\t\t\tul = prevSibling.previousSibling;\n\t\t\t\telse\n\t\t\t\t\treturn;\n\n\t\t\t\tvar li = lastLI(ul);\n\n\t\t\t\t// move the caret to the end of the list item\n\t\t\t\tvar rng = ed.dom.createRng();\n\t\t\t\trng.setStart(li, 1);\n\t\t\t\trng.setEnd(li, 1);\n\t\t\t\ted.selection.setRng(rng);\n\t\t\t\ted.selection.collapse(true);\n\n\t\t\t\t// save a bookmark at the end of the list item\n\t\t\t\tvar bookmark = ed.selection.getBookmark();\n\n\t\t\t\t// copy the image an its text to the list item\n\t\t\t\tvar clone = n.parentNode.cloneNode(true);\n\t\t\t\tif (clone.tagName === 'P' || clone.tagName === 'DIV')\n\t\t\t\t\taddChildren(clone, li);\n\t\t\t\telse\n\t\t\t\t\tli.appendChild(clone);\n\n\t\t\t\t// remove the old copy of the image\n\t\t\t\tn.parentNode.parentNode.removeChild(n.parentNode);\n\n\t\t\t\t// move the caret where we saved the bookmark\n\t\t\t\ted.selection.moveToBookmark(bookmark);\n\t\t\t}\n\n\t\t\t// fix the cursor position to ensure it is correct in IE\n\t\t\tfunction setCursorPositionToOriginalLi(li) {\n\t\t\t\tvar list = ed.dom.getParent(li, 'ol,ul');\n\t\t\t\tif (list != null) {\n\t\t\t\t\tvar lastLi = list.lastChild;\n\t\t\t\t\tlastLi.appendChild(ed.getDoc().createElement(''));\n\t\t\t\t\ted.selection.setCursorLocation(lastLi, 0);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.ed = ed;\n\t\t\ted.addCommand('Indent', this.indent, this);\n\t\t\ted.addCommand('Outdent', this.outdent, this);\n\t\t\ted.addCommand('InsertUnorderedList', function() {\n\t\t\t\tthis.applyList('UL', 'OL');\n\t\t\t}, this);\n\t\t\ted.addCommand('InsertOrderedList', function() {\n\t\t\t\tthis.applyList('OL', 'UL');\n\t\t\t}, this);\n\n\t\t\ted.onInit.add(function() {\n\t\t\t\ted.editorCommands.addCommands({\n\t\t\t\t\t'outdent': function() {\n\t\t\t\t\t\tvar sel = ed.selection, dom = ed.dom;\n\n\t\t\t\t\t\tfunction hasStyleIndent(n) {\n\t\t\t\t\t\t\tn = dom.getParent(n, dom.isBlock);\n\t\t\t\t\t\t\treturn n && (parseInt(ed.dom.getStyle(n, 'margin-left') || 0, 10) + parseInt(ed.dom.getStyle(n, 'padding-left') || 0, 10)) > 0;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn hasStyleIndent(sel.getStart()) || hasStyleIndent(sel.getEnd()) || ed.queryCommandState('InsertOrderedList') || ed.queryCommandState('InsertUnorderedList');\n\t\t\t\t\t}\n\t\t\t\t}, 'state');\n\t\t\t});\n\n\t\t\ted.onKeyUp.add(function(ed, e) {\n\t\t\t\tif (state == LIST_TABBING) {\n\t\t\t\t\ted.execCommand(e.shiftKey ? 'Outdent' : 'Indent', true, null);\n\t\t\t\t\tstate = LIST_UNKNOWN;\n\t\t\t\t\treturn Event.cancel(e);\n\t\t\t\t} else if (state == LIST_EMPTY_ITEM) {\n\t\t\t\t\tvar li = getLi();\n\t\t\t\t\tvar shouldOutdent =  ed.settings.list_outdent_on_enter === true || e.shiftKey;\n\t\t\t\t\ted.execCommand(shouldOutdent ? 'Outdent' : 'Indent', true, null);\n\t\t\t\t\tif (tinymce.isIE) {\n\t\t\t\t\t\tsetCursorPositionToOriginalLi(li);\n\t\t\t\t\t}\n\t\t\t\t\treturn Event.cancel(e);\n\t\t\t\t} else if (state == LIST_ESCAPE) {\n\t\t\t\t\tif (tinymce.isIE8) {\n\t\t\t\t\t\t// append a zero sized nbsp so that caret is positioned correctly in IE8 after escaping and applying formatting.\n\t\t\t\t\t\t// if there is no text then applying formatting for e.g a H1 to the P tag immediately following list after\n\t\t\t\t\t\t// escaping from it will cause the caret to be positioned on the last li instead of staying the in P tag.\n\t\t\t\t\t\tvar n = ed.getDoc().createTextNode('\\uFEFF');\n\t\t\t\t\t\ted.selection.getNode().appendChild(n);\n\t\t\t\t\t} else if (tinymce.isIE9) {\n\t\t\t\t\t\t// IE9 does not escape the list so we use outdent to do this and cancel the default behaviour\n\t\t\t\t\t\ted.execCommand('Outdent');\n\t\t\t\t\t\treturn Event.cancel(e);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t\ted.onKeyDown.add(function(_, e) { state = getListKeyState(e); });\n\t\t\ted.onKeyDown.add(cancelEnterAndTab);\n\t\t\ted.onKeyDown.add(imageJoiningListItem);\n\t\t\ted.onKeyPress.add(cancelEnterAndTab);\n\t\t},\n\n\t\tapplyList: function(targetListType, oppositeListType) {\n\t\t\tvar t = this, ed = t.ed, dom = ed.dom, applied = [], hasSameType = false, hasOppositeType = false, hasNonList = false, actions,\n\t\t\t\t\tselectedBlocks = ed.selection.getSelectedBlocks();\n\n\t\t\tfunction cleanupBr(e) {\n\t\t\t\tif (e && e.tagName === 'BR') {\n\t\t\t\t\tdom.remove(e);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfunction makeList(element) {\n\t\t\t\tvar list = dom.create(targetListType), li;\n\n\t\t\t\tfunction adjustIndentForNewList(element) {\n\t\t\t\t\t// If there's a margin-left, outdent one level to account for the extra list margin.\n\t\t\t\t\tif (element.style.marginLeft || element.style.paddingLeft) {\n\t\t\t\t\t\tt.adjustPaddingFunction(false)(element);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (element.tagName === 'LI') {\n\t\t\t\t\t// No change required.\n\t\t\t\t} else if (element.tagName === 'P' || element.tagName === 'DIV' || element.tagName === 'BODY') {\n\t\t\t\t\tprocessBrs(element, function(startSection, br, previousBR) {\n\t\t\t\t\t\tdoWrapList(startSection, br, element.tagName === 'BODY' ? null : startSection.parentNode);\n\t\t\t\t\t\tli = startSection.parentNode;\n\t\t\t\t\t\tadjustIndentForNewList(li);\n\t\t\t\t\t\tcleanupBr(br);\n\t\t\t\t\t});\n\t\t\t\t\tif (element.tagName === 'P' || selectedBlocks.length > 1) {\n\t\t\t\t\t\tdom.split(li.parentNode.parentNode, li.parentNode);\n\t\t\t\t\t}\n\t\t\t\t\tattemptMergeWithAdjacent(li.parentNode, true);\n\t\t\t\t\treturn;\n\t\t\t\t} else {\n\t\t\t\t\t// Put the list around the element.\n\t\t\t\t\tli = dom.create('li');\n\t\t\t\t\tdom.insertAfter(li, element);\n\t\t\t\t\tli.appendChild(element);\n\t\t\t\t\tadjustIndentForNewList(element);\n\t\t\t\t\telement = li;\n\t\t\t\t}\n\t\t\t\tdom.insertAfter(list, element);\n\t\t\t\tlist.appendChild(element);\n\t\t\t\tattemptMergeWithAdjacent(list, true);\n\t\t\t\tapplied.push(element);\n\t\t\t}\n\n\t\t\tfunction doWrapList(start, end, template) {\n\t\t\t\tvar li, n = start, tmp, i;\n\t\t\t\twhile (!dom.isBlock(start.parentNode) && start.parentNode !== dom.getRoot()) {\n\t\t\t\t\tstart = dom.split(start.parentNode, start.previousSibling);\n\t\t\t\t\tstart = start.nextSibling;\n\t\t\t\t\tn = start;\n\t\t\t\t}\n\t\t\t\tif (template) {\n\t\t\t\t\tli = template.cloneNode(true);\n\t\t\t\t\tstart.parentNode.insertBefore(li, start);\n\t\t\t\t\twhile (li.firstChild) dom.remove(li.firstChild);\n\t\t\t\t\tli = dom.rename(li, 'li');\n\t\t\t\t} else {\n\t\t\t\t\tli = dom.create('li');\n\t\t\t\t\tstart.parentNode.insertBefore(li, start);\n\t\t\t\t}\n\t\t\t\twhile (n && n != end) {\n\t\t\t\t\ttmp = n.nextSibling;\n\t\t\t\t\tli.appendChild(n);\n\t\t\t\t\tn = tmp;\n\t\t\t\t}\n\t\t\t\tif (li.childNodes.length === 0) {\n\t\t\t\t\tli.innerHTML = '<br _mce_bogus=\"1\" />';\n\t\t\t\t}\n\t\t\t\tmakeList(li);\n\t\t\t}\n\n\t\t\tfunction processBrs(element, callback) {\n\t\t\t\tvar startSection, previousBR, END_TO_START = 3, START_TO_END = 1,\n\t\t\t\t\t\tbreakElements = 'br,ul,ol,p,div,h1,h2,h3,h4,h5,h6,table,blockquote,address,pre,form,center,dl';\n\n\t\t\t\tfunction isAnyPartSelected(start, end) {\n\t\t\t\t\tvar r = dom.createRng(), sel;\n\t\t\t\t\tbookmark.keep = true;\n\t\t\t\t\ted.selection.moveToBookmark(bookmark);\n\t\t\t\t\tbookmark.keep = false;\n\t\t\t\t\tsel = ed.selection.getRng(true);\n\t\t\t\t\tif (!end) {\n\t\t\t\t\t\tend = start.parentNode.lastChild;\n\t\t\t\t\t}\n\t\t\t\t\tr.setStartBefore(start);\n\t\t\t\t\tr.setEndAfter(end);\n\t\t\t\t\treturn !(r.compareBoundaryPoints(END_TO_START, sel) > 0 || r.compareBoundaryPoints(START_TO_END, sel) <= 0);\n\t\t\t\t}\n\n\t\t\t\tfunction nextLeaf(br) {\n\t\t\t\t\tif (br.nextSibling)\n\t\t\t\t\t\treturn br.nextSibling;\n\t\t\t\t\tif (!dom.isBlock(br.parentNode) && br.parentNode !== dom.getRoot())\n\t\t\t\t\t\treturn nextLeaf(br.parentNode);\n\t\t\t\t}\n\n\t\t\t\t// Split on BRs within the range and process those.\n\t\t\t\tstartSection = element.firstChild;\n\t\t\t\t// First mark the BRs that have any part of the previous section selected.\n\t\t\t\tvar trailingContentSelected = false;\n\t\t\t\teach(dom.select(breakElements, element), function(br) {\n\t\t\t\t\tvar b;\n\t\t\t\t\tif (br.hasAttribute && br.hasAttribute('_mce_bogus')) {\n\t\t\t\t\t\treturn true; // Skip the bogus Brs that are put in to appease Firefox and Safari.\n\t\t\t\t\t}\n\t\t\t\t\tif (isAnyPartSelected(startSection, br)) {\n\t\t\t\t\t\tdom.addClass(br, '_mce_tagged_br');\n\t\t\t\t\t\tstartSection = nextLeaf(br);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\ttrailingContentSelected = (startSection && isAnyPartSelected(startSection, undefined));\n\t\t\t\tstartSection = element.firstChild;\n\t\t\t\teach(dom.select(breakElements, element), function(br) {\n\t\t\t\t\t// Got a section from start to br.\n\t\t\t\t\tvar tmp = nextLeaf(br);\n\t\t\t\t\tif (br.hasAttribute && br.hasAttribute('_mce_bogus')) {\n\t\t\t\t\t\treturn true; // Skip the bogus Brs that are put in to appease Firefox and Safari.\n\t\t\t\t\t}\n\t\t\t\t\tif (dom.hasClass(br, '_mce_tagged_br')) {\n\t\t\t\t\t\tcallback(startSection, br, previousBR);\n\t\t\t\t\t\tpreviousBR = null;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tpreviousBR = br;\n\t\t\t\t\t}\n\t\t\t\t\tstartSection = tmp;\n\t\t\t\t});\n\t\t\t\tif (trailingContentSelected) {\n\t\t\t\t\tcallback(startSection, undefined, previousBR);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfunction wrapList(element) {\n\t\t\t\tprocessBrs(element, function(startSection, br, previousBR) {\n\t\t\t\t\t// Need to indent this part\n\t\t\t\t\tdoWrapList(startSection, br);\n\t\t\t\t\tcleanupBr(br);\n\t\t\t\t\tcleanupBr(previousBR);\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tfunction changeList(element) {\n\t\t\t\tif (tinymce.inArray(applied, element) !== -1) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (element.parentNode.tagName === oppositeListType) {\n\t\t\t\t\tdom.split(element.parentNode, element);\n\t\t\t\t\tmakeList(element);\n\t\t\t\t\tattemptMergeWithNext(element.parentNode, false);\n\t\t\t\t}\n\t\t\t\tapplied.push(element);\n\t\t\t}\n\n\t\t\tfunction convertListItemToParagraph(element) {\n\t\t\t\tvar child, nextChild, mergedElement, splitLast;\n\t\t\t\tif (tinymce.inArray(applied, element) !== -1) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\telement = splitNestedLists(element, dom);\n\t\t\t\twhile (dom.is(element.parentNode, 'ol,ul,li')) {\n\t\t\t\t\tdom.split(element.parentNode, element);\n\t\t\t\t}\n\t\t\t\t// Push the original element we have from the selection, not the renamed one.\n\t\t\t\tapplied.push(element);\n\t\t\t\telement = dom.rename(element, 'p');\n\t\t\t\tmergedElement = attemptMergeWithAdjacent(element, false, ed.settings.force_br_newlines);\n\t\t\t\tif (mergedElement === element) {\n\t\t\t\t\t// Now split out any block elements that can't be contained within a P.\n\t\t\t\t\t// Manually iterate to ensure we handle modifications correctly (doesn't work with tinymce.each)\n\t\t\t\t\tchild = element.firstChild;\n\t\t\t\t\twhile (child) {\n\t\t\t\t\t\tif (dom.isBlock(child)) {\n\t\t\t\t\t\t\tchild = dom.split(child.parentNode, child);\n\t\t\t\t\t\t\tsplitLast = true;\n\t\t\t\t\t\t\tnextChild = child.nextSibling && child.nextSibling.firstChild;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tnextChild = child.nextSibling;\n\t\t\t\t\t\t\tif (splitLast && child.tagName === 'BR') {\n\t\t\t\t\t\t\t\tdom.remove(child);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tsplitLast = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tchild = nextChild;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\teach(selectedBlocks, function(e) {\n\t\t\t\te = findItemToOperateOn(e, dom);\n\t\t\t\tif (e.tagName === oppositeListType || (e.tagName === 'LI' && e.parentNode.tagName === oppositeListType)) {\n\t\t\t\t\thasOppositeType = true;\n\t\t\t\t} else if (e.tagName === targetListType || (e.tagName === 'LI' && e.parentNode.tagName === targetListType)) {\n\t\t\t\t\thasSameType = true;\n\t\t\t\t} else {\n\t\t\t\t\thasNonList = true;\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tif (hasNonList || hasOppositeType || selectedBlocks.length === 0) {\n\t\t\t\tactions = {\n\t\t\t\t\t'LI': changeList,\n\t\t\t\t\t'H1': makeList,\n\t\t\t\t\t'H2': makeList,\n\t\t\t\t\t'H3': makeList,\n\t\t\t\t\t'H4': makeList,\n\t\t\t\t\t'H5': makeList,\n\t\t\t\t\t'H6': makeList,\n\t\t\t\t\t'P': makeList,\n\t\t\t\t\t'BODY': makeList,\n\t\t\t\t\t'DIV': selectedBlocks.length > 1 ? makeList : wrapList,\n\t\t\t\t\tdefaultAction: wrapList\n\t\t\t\t};\n\t\t\t} else {\n\t\t\t\tactions = {\n\t\t\t\t\tdefaultAction: convertListItemToParagraph\n\t\t\t\t};\n\t\t\t}\n\t\t\tthis.process(actions);\n\t\t},\n\n\t\tindent: function() {\n\t\t\tvar ed = this.ed, dom = ed.dom, indented = [];\n\n\t\t\tfunction createWrapItem(element) {\n\t\t\t\tvar wrapItem = dom.create('li', { style: 'list-style-type: none;'});\n\t\t\t\tdom.insertAfter(wrapItem, element);\n\t\t\t\treturn wrapItem;\n\t\t\t}\n\n\t\t\tfunction createWrapList(element) {\n\t\t\t\tvar wrapItem = createWrapItem(element),\n\t\t\t\t\t\tlist = dom.getParent(element, 'ol,ul'),\n\t\t\t\t\t\tlistType = list.tagName,\n\t\t\t\t\t\tlistStyle = dom.getStyle(list, 'list-style-type'),\n\t\t\t\t\t\tattrs = {},\n\t\t\t\t\t\twrapList;\n\t\t\t\tif (listStyle !== '') {\n\t\t\t\t\tattrs.style = 'list-style-type: ' + listStyle + ';';\n\t\t\t\t}\n\t\t\t\twrapList = dom.create(listType, attrs);\n\t\t\t\twrapItem.appendChild(wrapList);\n\t\t\t\treturn wrapList;\n\t\t\t}\n\n\t\t\tfunction indentLI(element) {\n\t\t\t\tif (!hasParentInList(ed, element, indented)) {\n\t\t\t\t\telement = splitNestedLists(element, dom);\n\t\t\t\t\tvar wrapList = createWrapList(element);\n\t\t\t\t\twrapList.appendChild(element);\n\t\t\t\t\tattemptMergeWithAdjacent(wrapList.parentNode, false);\n\t\t\t\t\tattemptMergeWithAdjacent(wrapList, false);\n\t\t\t\t\tindented.push(element);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.process({\n\t\t\t\t'LI': indentLI,\n\t\t\t\tdefaultAction: this.adjustPaddingFunction(true)\n\t\t\t});\n\n\t\t},\n\n\t\toutdent: function() {\n\t\t\tvar t = this, ed = t.ed, dom = ed.dom, outdented = [];\n\n\t\t\tfunction outdentLI(element) {\n\t\t\t\tvar listElement, targetParent, align;\n\t\t\t\tif (!hasParentInList(ed, element, outdented)) {\n\t\t\t\t\tif (dom.getStyle(element, 'margin-left') !== '' || dom.getStyle(element, 'padding-left') !== '') {\n\t\t\t\t\t\treturn t.adjustPaddingFunction(false)(element);\n\t\t\t\t\t}\n\t\t\t\t\talign = dom.getStyle(element, 'text-align', true);\n\t\t\t\t\tif (align === 'center' || align === 'right') {\n\t\t\t\t\t\tdom.setStyle(element, 'text-align', 'left');\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\telement = splitNestedLists(element, dom);\n\t\t\t\t\tlistElement = element.parentNode;\n\t\t\t\t\ttargetParent = element.parentNode.parentNode;\n\t\t\t\t\tif (targetParent.tagName === 'P') {\n\t\t\t\t\t\tdom.split(targetParent, element.parentNode);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tdom.split(listElement, element);\n\t\t\t\t\t\tif (targetParent.tagName === 'LI') {\n\t\t\t\t\t\t\t// Nested list, need to split the LI and go back out to the OL/UL element.\n\t\t\t\t\t\t\tdom.split(targetParent, element);\n\t\t\t\t\t\t} else if (!dom.is(targetParent, 'ol,ul')) {\n\t\t\t\t\t\t\tdom.rename(element, 'p');\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\toutdented.push(element);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.process({\n\t\t\t\t'LI': outdentLI,\n\t\t\t\tdefaultAction: this.adjustPaddingFunction(false)\n\t\t\t});\n\n\t\t\teach(outdented, attemptMergeWithAdjacent);\n\t\t},\n\n\t\tprocess: function(actions) {\n\t\t\tvar t = this, sel = t.ed.selection, dom = t.ed.dom, selectedBlocks, r;\n\n\t\t\tfunction processElement(element) {\n\t\t\t\tdom.removeClass(element, '_mce_act_on');\n\t\t\t\tif (!element || element.nodeType !== 1) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\telement = findItemToOperateOn(element, dom);\n\t\t\t\tvar action = actions[element.tagName];\n\t\t\t\tif (!action) {\n\t\t\t\t\taction = actions.defaultAction;\n\t\t\t\t}\n\t\t\t\taction(element);\n\t\t\t}\n\n\t\t\tfunction recurse(element) {\n\t\t\t\tt.splitSafeEach(element.childNodes, processElement);\n\t\t\t}\n\n\t\t\tfunction brAtEdgeOfSelection(container, offset) {\n\t\t\t\treturn offset >= 0 && container.hasChildNodes() && offset < container.childNodes.length &&\n\t\t\t\t\t\tcontainer.childNodes[offset].tagName === 'BR';\n\t\t\t}\n\n\t\t\tselectedBlocks = sel.getSelectedBlocks();\n\t\t\tif (selectedBlocks.length === 0) {\n\t\t\t\tselectedBlocks = [ dom.getRoot() ];\n\t\t\t}\n\n\t\t\tr = sel.getRng(true);\n\t\t\tif (!r.collapsed) {\n\t\t\t\tif (brAtEdgeOfSelection(r.endContainer, r.endOffset - 1)) {\n\t\t\t\t\tr.setEnd(r.endContainer, r.endOffset - 1);\n\t\t\t\t\tsel.setRng(r);\n\t\t\t\t}\n\t\t\t\tif (brAtEdgeOfSelection(r.startContainer, r.startOffset)) {\n\t\t\t\t\tr.setStart(r.startContainer, r.startOffset + 1);\n\t\t\t\t\tsel.setRng(r);\n\t\t\t\t}\n\t\t\t}\n\n\n\t\t\tif (tinymce.isIE8) {\n\t\t\t\t// append a zero sized nbsp so that caret is restored correctly using bookmark\n\t\t\t\tvar s = t.ed.selection.getNode();\n\t\t\t\tif (s.tagName === 'LI' && !(s.parentNode.lastChild === s)) {\n\t\t\t\t\tvar i = t.ed.getDoc().createTextNode('\\uFEFF');\n\t\t\t\t\ts.appendChild(i);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tbookmark = sel.getBookmark();\n\t\t\tactions.OL = actions.UL = recurse;\n\t\t\tt.splitSafeEach(selectedBlocks, processElement);\n\t\t\tsel.moveToBookmark(bookmark);\n\t\t\tbookmark = null;\n\t\t\t// Avoids table or image handles being left behind in Firefox.\n\t\t\tt.ed.execCommand('mceRepaint');\n\t\t},\n\n\t\tsplitSafeEach: function(elements, f) {\n\t\t\tif (tinymce.isGecko && (/Firefox\\/[12]\\.[0-9]/.test(navigator.userAgent) ||\n\t\t\t\t\t/Firefox\\/3\\.[0-4]/.test(navigator.userAgent))) {\n\t\t\t\tthis.classBasedEach(elements, f);\n\t\t\t} else {\n\t\t\t\teach(elements, f);\n\t\t\t}\n\t\t},\n\n\t\tclassBasedEach: function(elements, f) {\n\t\t\tvar dom = this.ed.dom, nodes, element;\n\t\t\t// Mark nodes\n\t\t\teach(elements, function(element) {\n\t\t\t\tdom.addClass(element, '_mce_act_on');\n\t\t\t});\n\t\t\tnodes = dom.select('._mce_act_on');\n\t\t\twhile (nodes.length > 0) {\n\t\t\t\telement = nodes.shift();\n\t\t\t\tdom.removeClass(element, '_mce_act_on');\n\t\t\t\tf(element);\n\t\t\t\tnodes = dom.select('._mce_act_on');\n\t\t\t}\n\t\t},\n\n\t\tadjustPaddingFunction: function(isIndent) {\n\t\t\tvar indentAmount, indentUnits, ed = this.ed;\n\t\t\tindentAmount = ed.settings.indentation;\n\t\t\tindentUnits = /[a-z%]+/i.exec(indentAmount);\n\t\t\tindentAmount = parseInt(indentAmount, 10);\n\t\t\treturn function(element) {\n\t\t\t\tvar currentIndent, newIndentAmount;\n\t\t\t\tcurrentIndent = parseInt(ed.dom.getStyle(element, 'margin-left') || 0, 10) + parseInt(ed.dom.getStyle(element, 'padding-left') || 0, 10);\n\t\t\t\tif (isIndent) {\n\t\t\t\t\tnewIndentAmount = currentIndent + indentAmount;\n\t\t\t\t} else {\n\t\t\t\t\tnewIndentAmount = currentIndent - indentAmount;\n\t\t\t\t}\n\t\t\t\ted.dom.setStyle(element, 'padding-left', '');\n\t\t\t\ted.dom.setStyle(element, 'margin-left', newIndentAmount > 0 ? newIndentAmount + indentUnits : '');\n\t\t\t};\n\t\t},\n\n\t\tgetInfo: function() {\n\t\t\treturn {\n\t\t\t\tlongname : 'Lists',\n\t\t\t\tauthor : 'Moxiecode Systems AB',\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/lists',\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\n\t\t\t};\n\t\t}\n\t});\n\ttinymce.PluginManager.add(\"lists\", tinymce.plugins.Lists);\n}());\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/css/media.css",
    "content": "#id, #name, #hspace, #vspace, #class_name, #align { width: 100px }\r\n#hspace, #vspace { width: 50px }\r\n#flash_quality, #flash_align, #flash_scale, #flash_salign, #flash_wmode { width: 100px }\r\n#flash_base, #flash_flashvars, #html5_altsource1, #html5_altsource2, #html5_poster { width: 240px }\r\n#width, #height { width: 40px }\r\n#src, #media_type { width: 250px }\r\n#class { width: 120px }\r\n#prev { margin: 0; border: 1px solid black; width: 380px; height: 260px; overflow: auto }\r\n.panel_wrapper div.current { height: 420px; overflow: auto }\r\n#flash_options, #shockwave_options, #qt_options, #wmp_options, #rmp_options { display: none }\r\n.mceAddSelectValue { background-color: #DDDDDD }\r\n#qt_starttime, #qt_endtime, #qt_fov, #qt_href, #qt_moveid, #qt_moviename, #qt_node, #qt_pan, #qt_qtsrc, #qt_qtsrcchokespeed, #qt_target, #qt_tilt, #qt_urlsubstituten, #qt_volume { width: 70px }\r\n#wmp_balance, #wmp_baseurl, #wmp_captioningid, #wmp_currentmarker, #wmp_currentposition, #wmp_defaultframe, #wmp_playcount, #wmp_rate, #wmp_uimode, #wmp_volume { width: 70px }\r\n#rmp_console, #rmp_numloop, #rmp_controls, #rmp_scriptcallbacks { width: 70px }\r\n#shockwave_swvolume, #shockwave_swframe, #shockwave_swurl, #shockwave_swstretchvalign, #shockwave_swstretchhalign, #shockwave_swstretchstyle { width: 90px }\r\n#qt_qtsrc { width: 200px }\r\niframe {border: 1px solid gray}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/editor_plugin.js",
    "content": "(function(){var d=tinymce.explode(\"id,name,width,height,style,align,class,hspace,vspace,bgcolor,type\"),h=tinymce.makeMap(d.join(\",\")),b=tinymce.html.Node,f,a,g=tinymce.util.JSON,e;f=[[\"Flash\",\"d27cdb6e-ae6d-11cf-96b8-444553540000\",\"application/x-shockwave-flash\",\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0\"],[\"ShockWave\",\"166b1bca-3f9c-11cf-8075-444553540000\",\"application/x-director\",\"http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0\"],[\"WindowsMedia\",\"6bf52a52-394a-11d3-b153-00c04f79faa6,22d6f312-b0f6-11d0-94ab-0080c74c7e95,05589fa1-c356-11ce-bf01-00aa0055595a\",\"application/x-mplayer2\",\"http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701\"],[\"QuickTime\",\"02bf25d5-8c17-4b23-bc80-d3488abddc6b\",\"video/quicktime\",\"http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0\"],[\"RealMedia\",\"cfcdaa03-8be4-11cf-b84b-0020afbbccfa\",\"audio/x-pn-realaudio-plugin\",\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0\"],[\"Java\",\"8ad9c840-044e-11d1-b3e9-00805f499d93\",\"application/x-java-applet\",\"http://java.sun.com/products/plugin/autodl/jinstall-1_5_0-windows-i586.cab#Version=1,5,0,0\"],[\"Silverlight\",\"dfeaf541-f3e1-4c24-acac-99c30715084a\",\"application/x-silverlight-2\"],[\"Iframe\"],[\"Video\"],[\"EmbeddedAudio\"],[\"Audio\"]];function c(m){var l,j,k;if(m&&!m.splice){j=[];for(k=0;true;k++){if(m[k]){j[k]=m[k]}else{break}}return j}return m}tinymce.create(\"tinymce.plugins.MediaPlugin\",{init:function(n,j){var r=this,l={},m,p,q,k;function o(i){return i&&i.nodeName===\"IMG\"&&n.dom.hasClass(i,\"mceItemMedia\")}r.editor=n;r.url=j;a=\"\";for(m=0;m<f.length;m++){k=f[m][0];q={name:k,clsids:tinymce.explode(f[m][1]||\"\"),mimes:tinymce.explode(f[m][2]||\"\"),codebase:f[m][3]};for(p=0;p<q.clsids.length;p++){l[\"clsid:\"+q.clsids[p]]=q}for(p=0;p<q.mimes.length;p++){l[q.mimes[p]]=q}l[\"mceItem\"+k]=q;l[k.toLowerCase()]=q;a+=(a?\"|\":\"\")+k}tinymce.each(n.getParam(\"media_types\",\"video=mp4,m4v,ogv,webm;silverlight=xap;flash=swf,flv;shockwave=dcr;quicktime=mov,qt,mpg,mpeg;shockwave=dcr;windowsmedia=avi,wmv,wm,asf,asx,wmx,wvx;realmedia=rm,ra,ram;java=jar;audio=mp3,ogg\").split(\";\"),function(v){var s,u,t;v=v.split(/=/);u=tinymce.explode(v[1].toLowerCase());for(s=0;s<u.length;s++){t=l[v[0].toLowerCase()];if(t){l[u[s]]=t}}});a=new RegExp(\"write(\"+a+\")\\\\(([^)]+)\\\\)\");r.lookup=l;n.onPreInit.add(function(){n.schema.addValidElements(\"object[id|style|width|height|classid|codebase|*],param[name|value],embed[id|style|width|height|type|src|*],video[*],audio[*],source[*]\");n.parser.addNodeFilter(\"object,embed,video,audio,script,iframe\",function(s){var t=s.length;while(t--){r.objectToImg(s[t])}});n.serializer.addNodeFilter(\"img\",function(s,u,t){var v=s.length,w;while(v--){w=s[v];if((w.attr(\"class\")||\"\").indexOf(\"mceItemMedia\")!==-1){r.imgToObject(w,t)}}})});n.onInit.add(function(){if(n.theme&&n.theme.onResolveName){n.theme.onResolveName.add(function(i,s){if(s.name===\"img\"&&n.dom.hasClass(s.node,\"mceItemMedia\")){s.name=\"media\"}})}if(n&&n.plugins.contextmenu){n.plugins.contextmenu.onContextMenu.add(function(s,t,i){if(i.nodeName===\"IMG\"&&i.className.indexOf(\"mceItemMedia\")!==-1){t.add({title:\"media.edit\",icon:\"media\",cmd:\"mceMedia\"})}})}});n.addCommand(\"mceMedia\",function(){var s,i;i=n.selection.getNode();if(o(i)){s=n.dom.getAttrib(i,\"data-mce-json\");if(s){s=g.parse(s);tinymce.each(d,function(t){var u=n.dom.getAttrib(i,t);if(u){s[t]=u}});s.type=r.getType(i.className).name.toLowerCase()}}if(!s){s={type:\"flash\",video:{sources:[]},params:{}}}n.windowManager.open({file:j+\"/media.htm\",width:430+parseInt(n.getLang(\"media.delta_width\",0)),height:500+parseInt(n.getLang(\"media.delta_height\",0)),inline:1},{plugin_url:j,data:s})});n.addButton(\"media\",{title:\"media.desc\",cmd:\"mceMedia\"});n.onNodeChange.add(function(s,i,t){i.setActive(\"media\",o(t))})},convertUrl:function(k,n){var j=this,m=j.editor,l=m.settings,o=l.url_converter,i=l.url_converter_scope||j;if(!k){return k}if(n){return m.documentBaseURI.toAbsolute(k)}return o.call(i,k,\"src\",\"object\")},getInfo:function(){return{longname:\"Media\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/media\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}},dataToImg:function(m,k){var r=this,o=r.editor,p=o.documentBaseURI,j,q,n,l;m.params.src=r.convertUrl(m.params.src,k);q=m.video.attrs;if(q){q.src=r.convertUrl(q.src,k)}if(q){q.poster=r.convertUrl(q.poster,k)}j=c(m.video.sources);if(j){for(l=0;l<j.length;l++){j[l].src=r.convertUrl(j[l].src,k)}}n=r.editor.dom.create(\"img\",{id:m.id,style:m.style,align:m.align,hspace:m.hspace,vspace:m.vspace,src:r.editor.theme.url+\"/img/trans.gif\",\"class\":\"mceItemMedia mceItem\"+r.getType(m.type).name,\"data-mce-json\":g.serialize(m,\"'\")});n.width=m.width||(m.type==\"audio\"?\"300\":\"320\");n.height=m.height||(m.type==\"audio\"?\"32\":\"240\");return n},dataToHtml:function(i,j){return this.editor.serializer.serialize(this.dataToImg(i,j),{forced_root_block:\"\",force_absolute:j})},htmlToData:function(k){var j,i,l;l={type:\"flash\",video:{sources:[]},params:{}};j=this.editor.parser.parse(k);i=j.getAll(\"img\")[0];if(i){l=g.parse(i.attr(\"data-mce-json\"));l.type=this.getType(i.attr(\"class\")).name.toLowerCase();tinymce.each(d,function(m){var n=i.attr(m);if(n){l[m]=n}})}return l},getType:function(m){var k,j,l;j=tinymce.explode(m,\" \");for(k=0;k<j.length;k++){l=this.lookup[j[k]];if(l){return l}}},imgToObject:function(z,o){var u=this,p=u.editor,C,H,j,t,I,y,G,w,k,E,s,q,A,D,m,x,l,B,F;function r(i,n){var M,L,N,K,J;J=p.getParam(\"flash_video_player_url\",u.convertUrl(u.url+\"/moxieplayer.swf\"));if(J){M=p.documentBaseURI;G.params.src=J;if(p.getParam(\"flash_video_player_absvideourl\",true)){i=M.toAbsolute(i||\"\",true);n=M.toAbsolute(n||\"\",true)}N=\"\";L=p.getParam(\"flash_video_player_flashvars\",{url:\"$url\",poster:\"$poster\"});tinymce.each(L,function(P,O){P=P.replace(/\\$url/,i||\"\");P=P.replace(/\\$poster/,n||\"\");if(P.length>0){N+=(N?\"&\":\"\")+O+\"=\"+escape(P)}});if(N.length){G.params.flashvars=N}K=p.getParam(\"flash_video_player_params\",{allowfullscreen:true,allowscriptaccess:true});tinymce.each(K,function(P,O){G.params[O]=\"\"+P})}}G=z.attr(\"data-mce-json\");if(!G){return}G=g.parse(G);q=this.getType(z.attr(\"class\"));B=z.attr(\"data-mce-style\");if(!B){B=z.attr(\"style\");if(B){B=p.dom.serializeStyle(p.dom.parseStyle(B,\"img\"))}}if(q.name===\"Iframe\"){x=new b(\"iframe\",1);tinymce.each(d,function(i){var n=z.attr(i);if(i==\"class\"&&n){n=n.replace(/mceItem.+ ?/g,\"\")}if(n&&n.length>0){x.attr(i,n)}});for(I in G.params){x.attr(I,G.params[I])}x.attr({style:B,src:G.params.src});z.replace(x);return}if(this.editor.settings.media_use_script){x=new b(\"script\",1).attr(\"type\",\"text/javascript\");y=new b(\"#text\",3);y.value=\"write\"+q.name+\"(\"+g.serialize(tinymce.extend(G.params,{width:z.attr(\"width\"),height:z.attr(\"height\")}))+\");\";x.append(y);z.replace(x);return}if(q.name===\"Video\"&&G.video.sources[0]){C=new b(\"video\",1).attr(tinymce.extend({id:z.attr(\"id\"),width:z.attr(\"width\"),height:z.attr(\"height\"),style:B},G.video.attrs));if(G.video.attrs){l=G.video.attrs.poster}k=G.video.sources=c(G.video.sources);for(A=0;A<k.length;A++){if(/\\.mp4$/.test(k[A].src)){m=k[A].src}}if(!k[0].type){C.attr(\"src\",k[0].src);k.splice(0,1)}for(A=0;A<k.length;A++){w=new b(\"source\",1).attr(k[A]);w.shortEnded=true;C.append(w)}if(m){r(m,l);q=u.getType(\"flash\")}else{G.params.src=\"\"}}if(q.name===\"Audio\"&&G.video.sources[0]){F=new b(\"audio\",1).attr(tinymce.extend({id:z.attr(\"id\"),width:z.attr(\"width\"),height:z.attr(\"height\"),style:B},G.video.attrs));if(G.video.attrs){l=G.video.attrs.poster}k=G.video.sources=c(G.video.sources);if(!k[0].type){F.attr(\"src\",k[0].src);k.splice(0,1)}for(A=0;A<k.length;A++){w=new b(\"source\",1).attr(k[A]);w.shortEnded=true;F.append(w)}G.params.src=\"\"}if(q.name===\"EmbeddedAudio\"){j=new b(\"embed\",1);j.shortEnded=true;j.attr({id:z.attr(\"id\"),width:z.attr(\"width\"),height:z.attr(\"height\"),style:B,type:z.attr(\"type\")});for(I in G.params){j.attr(I,G.params[I])}tinymce.each(d,function(i){if(G[i]&&i!=\"type\"){j.attr(i,G[i])}});G.params.src=\"\"}if(G.params.src){if(/\\.flv$/i.test(G.params.src)){r(G.params.src,\"\")}if(o&&o.force_absolute){G.params.src=p.documentBaseURI.toAbsolute(G.params.src)}H=new b(\"object\",1).attr({id:z.attr(\"id\"),width:z.attr(\"width\"),height:z.attr(\"height\"),style:B});tinymce.each(d,function(i){var n=G[i];if(i==\"class\"&&n){n=n.replace(/mceItem.+ ?/g,\"\")}if(n&&i!=\"type\"){H.attr(i,n)}});for(I in G.params){s=new b(\"param\",1);s.shortEnded=true;y=G.params[I];if(I===\"src\"&&q.name===\"WindowsMedia\"){I=\"url\"}s.attr({name:I,value:y});H.append(s)}if(this.editor.getParam(\"media_strict\",true)){H.attr({data:G.params.src,type:q.mimes[0]})}else{H.attr({classid:\"clsid:\"+q.clsids[0],codebase:q.codebase});j=new b(\"embed\",1);j.shortEnded=true;j.attr({id:z.attr(\"id\"),width:z.attr(\"width\"),height:z.attr(\"height\"),style:B,type:q.mimes[0]});for(I in G.params){j.attr(I,G.params[I])}tinymce.each(d,function(i){if(G[i]&&i!=\"type\"){j.attr(i,G[i])}});H.append(j)}if(G.object_html){y=new b(\"#text\",3);y.raw=true;y.value=G.object_html;H.append(y)}if(C){C.append(H)}}if(C){if(G.video_html){y=new b(\"#text\",3);y.raw=true;y.value=G.video_html;C.append(y)}}if(F){if(G.video_html){y=new b(\"#text\",3);y.raw=true;y.value=G.video_html;F.append(y)}}var v=C||F||H||j;if(v){z.replace(v)}else{z.remove()}},objectToImg:function(C){var L,k,F,s,M,N,y,A,x,G,E,t,q,I,B,l,K,o,H=this.lookup,m,z,v=this.editor.settings.url_converter,n=this.editor.settings.url_converter_scope,w,r,D,j;function u(i){return new tinymce.html.Serializer({inner:true,validate:false}).serialize(i)}function J(O,i){return H[(O.attr(i)||\"\").toLowerCase()]}function p(O){var i=O.replace(/^.*\\.([^.]+)$/,\"$1\");return H[i.toLowerCase()||\"\"]}if(!C.parent){return}if(C.name===\"script\"){if(C.firstChild){m=a.exec(C.firstChild.value)}if(!m){return}o=m[1];K={video:{},params:g.parse(m[2])};A=K.params.width;x=K.params.height}K=K||{video:{},params:{}};M=new b(\"img\",1);M.attr({src:this.editor.theme.url+\"/img/trans.gif\"});N=C.name;if(N===\"video\"||N==\"audio\"){F=C;L=C.getAll(\"object\")[0];k=C.getAll(\"embed\")[0];A=F.attr(\"width\");x=F.attr(\"height\");y=F.attr(\"id\");K.video={attrs:{},sources:[]};z=K.video.attrs;for(N in F.attributes.map){z[N]=F.attributes.map[N]}B=C.attr(\"src\");if(B){K.video.sources.push({src:v.call(n,B,\"src\",C.name)})}l=F.getAll(\"source\");for(E=0;E<l.length;E++){B=l[E].remove();K.video.sources.push({src:v.call(n,B.attr(\"src\"),\"src\",\"source\"),type:B.attr(\"type\"),media:B.attr(\"media\")})}if(z.poster){z.poster=v.call(n,z.poster,\"poster\",C.name)}}if(C.name===\"object\"){L=C;k=C.getAll(\"embed\")[0]}if(C.name===\"embed\"){k=C}if(C.name===\"iframe\"){s=C;o=\"Iframe\"}if(L){A=A||L.attr(\"width\");x=x||L.attr(\"height\");G=G||L.attr(\"style\");y=y||L.attr(\"id\");w=w||L.attr(\"hspace\");r=r||L.attr(\"vspace\");D=D||L.attr(\"align\");j=j||L.attr(\"bgcolor\");K.name=L.attr(\"name\");I=L.getAll(\"param\");for(E=0;E<I.length;E++){q=I[E];N=q.remove().attr(\"name\");if(!h[N]){K.params[N]=q.attr(\"value\")}}K.params.src=K.params.src||L.attr(\"data\")}if(k){A=A||k.attr(\"width\");x=x||k.attr(\"height\");G=G||k.attr(\"style\");y=y||k.attr(\"id\");w=w||k.attr(\"hspace\");r=r||k.attr(\"vspace\");D=D||k.attr(\"align\");j=j||k.attr(\"bgcolor\");for(N in k.attributes.map){if(!h[N]&&!K.params[N]){K.params[N]=k.attributes.map[N]}}}if(s){A=s.attr(\"width\");x=s.attr(\"height\");G=G||s.attr(\"style\");y=s.attr(\"id\");w=s.attr(\"hspace\");r=s.attr(\"vspace\");D=s.attr(\"align\");j=s.attr(\"bgcolor\");tinymce.each(d,function(i){M.attr(i,s.attr(i))});for(N in s.attributes.map){if(!h[N]&&!K.params[N]){K.params[N]=s.attributes.map[N]}}}if(K.params.movie){K.params.src=K.params.src||K.params.movie;delete K.params.movie}if(K.params.src){K.params.src=v.call(n,K.params.src,\"src\",\"object\")}if(F){if(C.name===\"video\"){o=H.video.name}else{if(C.name===\"audio\"){o=H.audio.name}}}if(L&&!o){o=(J(L,\"clsid\")||J(L,\"classid\")||J(L,\"type\")||{}).name}if(k&&!o){o=(J(k,\"type\")||p(K.params.src)||{}).name}if(k&&o==\"EmbeddedAudio\"){K.params.type=k.attr(\"type\")}C.replace(M);if(k){k.remove()}if(L){t=u(L.remove());if(t){K.object_html=t}}if(F){t=u(F.remove());if(t){K.video_html=t}}K.hspace=w;K.vspace=r;K.align=D;K.bgcolor=j;M.attr({id:y,\"class\":\"mceItemMedia mceItem\"+(o||\"Flash\"),style:G,width:A||(C.name==\"audio\"?\"300\":\"320\"),height:x||(C.name==\"audio\"?\"32\":\"240\"),hspace:w,vspace:r,align:D,bgcolor:j,\"data-mce-json\":g.serialize(K,\"'\")})}});tinymce.PluginManager.add(\"media\",tinymce.plugins.MediaPlugin)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\tvar rootAttributes = tinymce.explode('id,name,width,height,style,align,class,hspace,vspace,bgcolor,type'), excludedAttrs = tinymce.makeMap(rootAttributes.join(',')), Node = tinymce.html.Node,\r\n\t\tmediaTypes, scriptRegExp, JSON = tinymce.util.JSON, mimeTypes;\r\n\r\n\t// Media types supported by this plugin\r\n\tmediaTypes = [\r\n\t\t// Type, clsid:s, mime types, codebase\r\n\t\t[\"Flash\", \"d27cdb6e-ae6d-11cf-96b8-444553540000\", \"application/x-shockwave-flash\", \"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0\"],\r\n\t\t[\"ShockWave\", \"166b1bca-3f9c-11cf-8075-444553540000\", \"application/x-director\", \"http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0\"],\r\n\t\t[\"WindowsMedia\", \"6bf52a52-394a-11d3-b153-00c04f79faa6,22d6f312-b0f6-11d0-94ab-0080c74c7e95,05589fa1-c356-11ce-bf01-00aa0055595a\", \"application/x-mplayer2\", \"http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701\"],\r\n\t\t[\"QuickTime\", \"02bf25d5-8c17-4b23-bc80-d3488abddc6b\", \"video/quicktime\", \"http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0\"],\r\n\t\t[\"RealMedia\", \"cfcdaa03-8be4-11cf-b84b-0020afbbccfa\", \"audio/x-pn-realaudio-plugin\", \"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0\"],\r\n\t\t[\"Java\", \"8ad9c840-044e-11d1-b3e9-00805f499d93\", \"application/x-java-applet\", \"http://java.sun.com/products/plugin/autodl/jinstall-1_5_0-windows-i586.cab#Version=1,5,0,0\"],\r\n\t\t[\"Silverlight\", \"dfeaf541-f3e1-4c24-acac-99c30715084a\", \"application/x-silverlight-2\"],\r\n\t\t[\"Iframe\"],\r\n\t\t[\"Video\"],\r\n\t\t[\"EmbeddedAudio\"],\r\n\t\t[\"Audio\"]\r\n\t];\r\n\r\n\tfunction toArray(obj) {\r\n\t\tvar undef, out, i;\r\n\r\n\t\tif (obj && !obj.splice) {\r\n\t\t\tout = [];\r\n\r\n\t\t\tfor (i = 0; true; i++) {\r\n\t\t\t\tif (obj[i])\r\n\t\t\t\t\tout[i] = obj[i];\r\n\t\t\t\telse\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\r\n\t\t\treturn out;\r\n\t\t}\r\n\r\n\t\treturn obj;\r\n\t};\r\n\r\n\ttinymce.create('tinymce.plugins.MediaPlugin', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\tvar self = this, lookup = {}, i, y, item, name;\r\n\r\n\t\t\tfunction isMediaImg(node) {\r\n\t\t\t\treturn node && node.nodeName === 'IMG' && ed.dom.hasClass(node, 'mceItemMedia');\r\n\t\t\t};\r\n\r\n\t\t\tself.editor = ed;\r\n\t\t\tself.url = url;\r\n\r\n\t\t\t// Parse media types into a lookup table\r\n\t\t\tscriptRegExp = '';\r\n\t\t\tfor (i = 0; i < mediaTypes.length; i++) {\r\n\t\t\t\tname = mediaTypes[i][0];\r\n\r\n\t\t\t\titem = {\r\n\t\t\t\t\tname : name,\r\n\t\t\t\t\tclsids : tinymce.explode(mediaTypes[i][1] || ''),\r\n\t\t\t\t\tmimes : tinymce.explode(mediaTypes[i][2] || ''),\r\n\t\t\t\t\tcodebase : mediaTypes[i][3]\r\n\t\t\t\t};\r\n\r\n\t\t\t\tfor (y = 0; y < item.clsids.length; y++)\r\n\t\t\t\t\tlookup['clsid:' + item.clsids[y]] = item;\r\n\r\n\t\t\t\tfor (y = 0; y < item.mimes.length; y++)\r\n\t\t\t\t\tlookup[item.mimes[y]] = item;\r\n\r\n\t\t\t\tlookup['mceItem' + name] = item;\r\n\t\t\t\tlookup[name.toLowerCase()] = item;\r\n\r\n\t\t\t\tscriptRegExp += (scriptRegExp ? '|' : '') + name;\r\n\t\t\t}\r\n\r\n\t\t\t// Handle the media_types setting\r\n\t\t\ttinymce.each(ed.getParam(\"media_types\",\r\n\t\t\t\t\"video=mp4,m4v,ogv,webm;\" +\r\n\t\t\t\t\"silverlight=xap;\" +\r\n\t\t\t\t\"flash=swf,flv;\" +\r\n\t\t\t\t\"shockwave=dcr;\" +\r\n\t\t\t\t\"quicktime=mov,qt,mpg,mpeg;\" +\r\n\t\t\t\t\"shockwave=dcr;\" +\r\n\t\t\t\t\"windowsmedia=avi,wmv,wm,asf,asx,wmx,wvx;\" +\r\n\t\t\t\t\"realmedia=rm,ra,ram;\" +\r\n\t\t\t\t\"java=jar;\" +\r\n\t\t\t\t\"audio=mp3,ogg\"\r\n\t\t\t).split(';'), function(item) {\r\n\t\t\t\tvar i, extensions, type;\r\n\r\n\t\t\t\titem = item.split(/=/);\r\n\t\t\t\textensions = tinymce.explode(item[1].toLowerCase());\r\n\t\t\t\tfor (i = 0; i < extensions.length; i++) {\r\n\t\t\t\t\ttype = lookup[item[0].toLowerCase()];\r\n\r\n\t\t\t\t\tif (type)\r\n\t\t\t\t\t\tlookup[extensions[i]] = type;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tscriptRegExp = new RegExp('write(' + scriptRegExp + ')\\\\(([^)]+)\\\\)');\r\n\t\t\tself.lookup = lookup;\r\n\r\n\t\t\ted.onPreInit.add(function() {\r\n\t\t\t\t// Allow video elements\r\n\t\t\t\ted.schema.addValidElements('object[id|style|width|height|classid|codebase|*],param[name|value],embed[id|style|width|height|type|src|*],video[*],audio[*],source[*]');\r\n\r\n\t\t\t\t// Convert video elements to image placeholder\r\n\t\t\t\ted.parser.addNodeFilter('object,embed,video,audio,script,iframe', function(nodes) {\r\n\t\t\t\t\tvar i = nodes.length;\r\n\r\n\t\t\t\t\twhile (i--)\r\n\t\t\t\t\t\tself.objectToImg(nodes[i]);\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// Convert image placeholders to video elements\r\n\t\t\t\ted.serializer.addNodeFilter('img', function(nodes, name, args) {\r\n\t\t\t\t\tvar i = nodes.length, node;\r\n\r\n\t\t\t\t\twhile (i--) {\r\n\t\t\t\t\t\tnode = nodes[i];\r\n\t\t\t\t\t\tif ((node.attr('class') || '').indexOf('mceItemMedia') !== -1)\r\n\t\t\t\t\t\t\tself.imgToObject(node, args);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\ted.onInit.add(function() {\r\n\t\t\t\t// Display \"media\" instead of \"img\" in element path\r\n\t\t\t\tif (ed.theme && ed.theme.onResolveName) {\r\n\t\t\t\t\ted.theme.onResolveName.add(function(theme, path_object) {\r\n\t\t\t\t\t\tif (path_object.name === 'img' && ed.dom.hasClass(path_object.node, 'mceItemMedia'))\r\n\t\t\t\t\t\t\tpath_object.name = 'media';\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Add contect menu if it's loaded\r\n\t\t\t\tif (ed && ed.plugins.contextmenu) {\r\n\t\t\t\t\ted.plugins.contextmenu.onContextMenu.add(function(plugin, menu, element) {\r\n\t\t\t\t\t\tif (element.nodeName === 'IMG' && element.className.indexOf('mceItemMedia') !== -1)\r\n\t\t\t\t\t\t\tmenu.add({title : 'media.edit', icon : 'media', cmd : 'mceMedia'});\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t// Register commands\r\n\t\t\ted.addCommand('mceMedia', function() {\r\n\t\t\t\tvar data, img;\r\n\r\n\t\t\t\timg = ed.selection.getNode();\r\n\t\t\t\tif (isMediaImg(img)) {\r\n\t\t\t\t\tdata = ed.dom.getAttrib(img, 'data-mce-json');\r\n\t\t\t\t\tif (data) {\r\n\t\t\t\t\t\tdata = JSON.parse(data);\r\n\r\n\t\t\t\t\t\t// Add some extra properties to the data object\r\n\t\t\t\t\t\ttinymce.each(rootAttributes, function(name) {\r\n\t\t\t\t\t\t\tvar value = ed.dom.getAttrib(img, name);\r\n\r\n\t\t\t\t\t\t\tif (value)\r\n\t\t\t\t\t\t\t\tdata[name] = value;\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\tdata.type = self.getType(img.className).name.toLowerCase();\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (!data) {\r\n\t\t\t\t\tdata = {\r\n\t\t\t\t\t\ttype : 'flash',\r\n\t\t\t\t\t\tvideo: {sources:[]},\r\n\t\t\t\t\t\tparams: {}\r\n\t\t\t\t\t};\r\n\t\t\t\t}\r\n\r\n\t\t\t\ted.windowManager.open({\r\n\t\t\t\t\tfile : url + '/media.htm',\r\n\t\t\t\t\twidth : 430 + parseInt(ed.getLang('media.delta_width', 0)),\r\n\t\t\t\t\theight : 500 + parseInt(ed.getLang('media.delta_height', 0)),\r\n\t\t\t\t\tinline : 1\r\n\t\t\t\t}, {\r\n\t\t\t\t\tplugin_url : url,\r\n\t\t\t\t\tdata : data\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\t// Register buttons\r\n\t\t\ted.addButton('media', {title : 'media.desc', cmd : 'mceMedia'});\r\n\r\n\t\t\t// Update media selection status\r\n\t\t\ted.onNodeChange.add(function(ed, cm, node) {\r\n\t\t\t\tcm.setActive('media', isMediaImg(node));\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tconvertUrl : function(url, force_absolute) {\r\n\t\t\tvar self = this, editor = self.editor, settings = editor.settings,\r\n\t\t\t\turlConverter = settings.url_converter,\r\n\t\t\t\turlConverterScope = settings.url_converter_scope || self;\r\n\r\n\t\t\tif (!url)\r\n\t\t\t\treturn url;\r\n\r\n\t\t\tif (force_absolute)\r\n\t\t\t\treturn editor.documentBaseURI.toAbsolute(url);\r\n\r\n\t\t\treturn urlConverter.call(urlConverterScope, url, 'src', 'object');\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Media',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/media',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * Converts the JSON data object to an img node.\r\n\t\t */\r\n\t\tdataToImg : function(data, force_absolute) {\r\n\t\t\tvar self = this, editor = self.editor, baseUri = editor.documentBaseURI, sources, attrs, img, i;\r\n\r\n\t\t\tdata.params.src = self.convertUrl(data.params.src, force_absolute);\r\n\r\n\t\t\tattrs = data.video.attrs;\r\n\t\t\tif (attrs)\r\n\t\t\t\tattrs.src = self.convertUrl(attrs.src, force_absolute);\r\n\r\n\t\t\tif (attrs)\r\n\t\t\t\tattrs.poster = self.convertUrl(attrs.poster, force_absolute);\r\n\r\n\t\t\tsources = toArray(data.video.sources);\r\n\t\t\tif (sources) {\r\n\t\t\t\tfor (i = 0; i < sources.length; i++)\r\n\t\t\t\t\tsources[i].src = self.convertUrl(sources[i].src, force_absolute);\r\n\t\t\t}\r\n\r\n\t\t\timg = self.editor.dom.create('img', {\r\n\t\t\t\tid : data.id,\r\n\t\t\t\tstyle : data.style,\r\n\t\t\t\talign : data.align,\r\n\t\t\t\thspace : data.hspace,\r\n\t\t\t\tvspace : data.vspace,\r\n\t\t\t\tsrc : self.editor.theme.url + '/img/trans.gif',\r\n\t\t\t\t'class' : 'mceItemMedia mceItem' + self.getType(data.type).name,\r\n\t\t\t\t'data-mce-json' : JSON.serialize(data, \"'\")\r\n\t\t\t});\r\n\r\n\t\t\timg.width = data.width || (data.type == 'audio' ? \"300\" : \"320\");\r\n\t\t\timg.height = data.height || (data.type == 'audio' ? \"32\" : \"240\");\r\n\r\n\t\t\treturn img;\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * Converts the JSON data object to a HTML string.\r\n\t\t */\r\n\t\tdataToHtml : function(data, force_absolute) {\r\n\t\t\treturn this.editor.serializer.serialize(this.dataToImg(data, force_absolute), {forced_root_block : '', force_absolute : force_absolute});\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * Converts the JSON data object to a HTML string.\r\n\t\t */\r\n\t\thtmlToData : function(html) {\r\n\t\t\tvar fragment, img, data;\r\n\r\n\t\t\tdata = {\r\n\t\t\t\ttype : 'flash',\r\n\t\t\t\tvideo: {sources:[]},\r\n\t\t\t\tparams: {}\r\n\t\t\t};\r\n\r\n\t\t\tfragment = this.editor.parser.parse(html);\r\n\t\t\timg = fragment.getAll('img')[0];\r\n\r\n\t\t\tif (img) {\r\n\t\t\t\tdata = JSON.parse(img.attr('data-mce-json'));\r\n\t\t\t\tdata.type = this.getType(img.attr('class')).name.toLowerCase();\r\n\r\n\t\t\t\t// Add some extra properties to the data object\r\n\t\t\t\ttinymce.each(rootAttributes, function(name) {\r\n\t\t\t\t\tvar value = img.attr(name);\r\n\r\n\t\t\t\t\tif (value)\r\n\t\t\t\t\t\tdata[name] = value;\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\treturn data;\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * Get type item by extension, class, clsid or mime type.\r\n\t\t *\r\n\t\t * @method getType\r\n\t\t * @param {String} value Value to get type item by.\r\n\t\t * @return {Object} Type item object or undefined.\r\n\t\t */\r\n\t\tgetType : function(value) {\r\n\t\t\tvar i, values, typeItem;\r\n\r\n\t\t\t// Find type by checking the classes\r\n\t\t\tvalues = tinymce.explode(value, ' ');\r\n\t\t\tfor (i = 0; i < values.length; i++) {\r\n\t\t\t\ttypeItem = this.lookup[values[i]];\r\n\r\n\t\t\t\tif (typeItem)\r\n\t\t\t\t\treturn typeItem;\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * Converts a tinymce.html.Node image element to video/object/embed.\r\n\t\t */\r\n\t\timgToObject : function(node, args) {\r\n\t\t\tvar self = this, editor = self.editor, video, object, embed, iframe, name, value, data,\r\n\t\t\t\tsource, sources, params, param, typeItem, i, item, mp4Source, replacement,\r\n\t\t\t\tposterSrc, style, audio;\r\n\r\n\t\t\t// Adds the flash player\r\n\t\t\tfunction addPlayer(video_src, poster_src) {\r\n\t\t\t\tvar baseUri, flashVars, flashVarsOutput, params, flashPlayer;\r\n\r\n\t\t\t\tflashPlayer = editor.getParam('flash_video_player_url', self.convertUrl(self.url + '/moxieplayer.swf'));\r\n\t\t\t\tif (flashPlayer) {\r\n\t\t\t\t\tbaseUri = editor.documentBaseURI;\r\n\t\t\t\t\tdata.params.src = flashPlayer;\r\n\r\n\t\t\t\t\t// Convert the movie url to absolute urls\r\n\t\t\t\t\tif (editor.getParam('flash_video_player_absvideourl', true)) {\r\n\t\t\t\t\t\tvideo_src = baseUri.toAbsolute(video_src || '', true);\r\n\t\t\t\t\t\tposter_src = baseUri.toAbsolute(poster_src || '', true);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Generate flash vars\r\n\t\t\t\t\tflashVarsOutput = '';\r\n\t\t\t\t\tflashVars = editor.getParam('flash_video_player_flashvars', {url : '$url', poster : '$poster'});\r\n\t\t\t\t\ttinymce.each(flashVars, function(value, name) {\r\n\t\t\t\t\t\t// Replace $url and $poster variables in flashvars value\r\n\t\t\t\t\t\tvalue = value.replace(/\\$url/, video_src || '');\r\n\t\t\t\t\t\tvalue = value.replace(/\\$poster/, poster_src || '');\r\n\r\n\t\t\t\t\t\tif (value.length > 0)\r\n\t\t\t\t\t\t\tflashVarsOutput += (flashVarsOutput ? '&' : '') + name + '=' + escape(value);\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tif (flashVarsOutput.length)\r\n\t\t\t\t\t\tdata.params.flashvars = flashVarsOutput;\r\n\r\n\t\t\t\t\tparams = editor.getParam('flash_video_player_params', {\r\n\t\t\t\t\t\tallowfullscreen: true,\r\n\t\t\t\t\t\tallowscriptaccess: true\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\ttinymce.each(params, function(value, name) {\r\n\t\t\t\t\t\tdata.params[name] = \"\" + value;\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\t\t\tdata = node.attr('data-mce-json');\r\n\t\t\tif (!data)\r\n\t\t\t\treturn;\r\n\r\n\t\t\tdata = JSON.parse(data);\r\n\t\t\ttypeItem = this.getType(node.attr('class'));\r\n\r\n\t\t\tstyle = node.attr('data-mce-style')\r\n\t\t\tif (!style) {\r\n\t\t\t\tstyle = node.attr('style');\r\n\r\n\t\t\t\tif (style)\r\n\t\t\t\t\tstyle = editor.dom.serializeStyle(editor.dom.parseStyle(style, 'img'));\r\n\t\t\t}\r\n\r\n\t\t\t// Handle iframe\r\n\t\t\tif (typeItem.name === 'Iframe') {\r\n\t\t\t\treplacement = new Node('iframe', 1);\r\n\r\n\t\t\t\ttinymce.each(rootAttributes, function(name) {\r\n\t\t\t\t\tvar value = node.attr(name);\r\n\r\n\t\t\t\t\tif (name == 'class' && value)\r\n\t\t\t\t\t\tvalue = value.replace(/mceItem.+ ?/g, '');\r\n\r\n\t\t\t\t\tif (value && value.length > 0)\r\n\t\t\t\t\t\treplacement.attr(name, value);\r\n\t\t\t\t});\r\n\r\n\t\t\t\tfor (name in data.params)\r\n\t\t\t\t\treplacement.attr(name, data.params[name]);\r\n\r\n\t\t\t\treplacement.attr({\r\n\t\t\t\t\tstyle: style,\r\n\t\t\t\t\tsrc: data.params.src\r\n\t\t\t\t});\r\n\r\n\t\t\t\tnode.replace(replacement);\r\n\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\t// Handle scripts\r\n\t\t\tif (this.editor.settings.media_use_script) {\r\n\t\t\t\treplacement = new Node('script', 1).attr('type', 'text/javascript');\r\n\r\n\t\t\t\tvalue = new Node('#text', 3);\r\n\t\t\t\tvalue.value = 'write' + typeItem.name + '(' + JSON.serialize(tinymce.extend(data.params, {\r\n\t\t\t\t\twidth: node.attr('width'),\r\n\t\t\t\t\theight: node.attr('height')\r\n\t\t\t\t})) + ');';\r\n\r\n\t\t\t\treplacement.append(value);\r\n\t\t\t\tnode.replace(replacement);\r\n\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\t// Add HTML5 video element\r\n\t\t\tif (typeItem.name === 'Video' && data.video.sources[0]) {\r\n\t\t\t\t// Create new object element\r\n\t\t\t\tvideo = new Node('video', 1).attr(tinymce.extend({\r\n\t\t\t\t\tid : node.attr('id'),\r\n\t\t\t\t\twidth: node.attr('width'),\r\n\t\t\t\t\theight: node.attr('height'),\r\n\t\t\t\t\tstyle : style\r\n\t\t\t\t}, data.video.attrs));\r\n\r\n\t\t\t\t// Get poster source and use that for flash fallback\r\n\t\t\t\tif (data.video.attrs)\r\n\t\t\t\t\tposterSrc = data.video.attrs.poster;\r\n\r\n\t\t\t\tsources = data.video.sources = toArray(data.video.sources);\r\n\t\t\t\tfor (i = 0; i < sources.length; i++) {\r\n\t\t\t\t\tif (/\\.mp4$/.test(sources[i].src))\r\n\t\t\t\t\t\tmp4Source = sources[i].src;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (!sources[0].type) {\r\n\t\t\t\t\tvideo.attr('src', sources[0].src);\r\n\t\t\t\t\tsources.splice(0, 1);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tfor (i = 0; i < sources.length; i++) {\r\n\t\t\t\t\tsource = new Node('source', 1).attr(sources[i]);\r\n\t\t\t\t\tsource.shortEnded = true;\r\n\t\t\t\t\tvideo.append(source);\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Create flash fallback for video if we have a mp4 source\r\n\t\t\t\tif (mp4Source) {\r\n\t\t\t\t\taddPlayer(mp4Source, posterSrc);\r\n\t\t\t\t\ttypeItem = self.getType('flash');\r\n\t\t\t\t} else\r\n\t\t\t\t\tdata.params.src = '';\r\n\t\t\t}\r\n\r\n\t\t\t// Add HTML5 audio element\r\n\t\t\tif (typeItem.name === 'Audio' && data.video.sources[0]) {\r\n\t\t\t\t// Create new object element\r\n\t\t\t\taudio = new Node('audio', 1).attr(tinymce.extend({\r\n\t\t\t\t\tid : node.attr('id'),\r\n\t\t\t\t\twidth: node.attr('width'),\r\n\t\t\t\t\theight: node.attr('height'),\r\n\t\t\t\t\tstyle : style\r\n\t\t\t\t}, data.video.attrs));\r\n\r\n\t\t\t\t// Get poster source and use that for flash fallback\r\n\t\t\t\tif (data.video.attrs)\r\n\t\t\t\t\tposterSrc = data.video.attrs.poster;\r\n\r\n\t\t\t\tsources = data.video.sources = toArray(data.video.sources);\r\n\t\t\t\tif (!sources[0].type) {\r\n\t\t\t\t\taudio.attr('src', sources[0].src);\r\n\t\t\t\t\tsources.splice(0, 1);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tfor (i = 0; i < sources.length; i++) {\r\n\t\t\t\t\tsource = new Node('source', 1).attr(sources[i]);\r\n\t\t\t\t\tsource.shortEnded = true;\r\n\t\t\t\t\taudio.append(source);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tdata.params.src = '';\r\n\t\t\t}\r\n\r\n\t\t\tif (typeItem.name === 'EmbeddedAudio') {\r\n\t\t\t\tembed = new Node('embed', 1);\r\n\t\t\t\tembed.shortEnded = true;\r\n\t\t\t\tembed.attr({\r\n\t\t\t\t\tid: node.attr('id'),\r\n\t\t\t\t\twidth: node.attr('width'),\r\n\t\t\t\t\theight: node.attr('height'),\r\n\t\t\t\t\tstyle : style,\r\n\t\t\t\t\ttype: node.attr('type')\r\n\t\t\t\t});\r\n\r\n\t\t\t\tfor (name in data.params)\r\n\t\t\t\t\tembed.attr(name, data.params[name]);\r\n\r\n\t\t\t\ttinymce.each(rootAttributes, function(name) {\r\n\t\t\t\t\tif (data[name] && name != 'type')\r\n\t\t\t\t\t\tembed.attr(name, data[name]);\r\n\t\t\t\t});\r\n\r\n\t\t\t\tdata.params.src = '';\r\n\t\t\t}\r\n\r\n\t\t\t// Do we have a params src then we can generate object\r\n\t\t\tif (data.params.src) {\r\n\t\t\t\t// Is flv movie add player for it\r\n\t\t\t\tif (/\\.flv$/i.test(data.params.src))\r\n\t\t\t\t\taddPlayer(data.params.src, '');\r\n\r\n\t\t\t\tif (args && args.force_absolute)\r\n\t\t\t\t\tdata.params.src = editor.documentBaseURI.toAbsolute(data.params.src);\r\n\r\n\t\t\t\t// Create new object element\r\n\t\t\t\tobject = new Node('object', 1).attr({\r\n\t\t\t\t\tid : node.attr('id'),\r\n\t\t\t\t\twidth: node.attr('width'),\r\n\t\t\t\t\theight: node.attr('height'),\r\n\t\t\t\t\tstyle : style\r\n\t\t\t\t});\r\n\r\n\t\t\t\ttinymce.each(rootAttributes, function(name) {\r\n\t\t\t\t\tvar value = data[name];\r\n\r\n\t\t\t\t\tif (name == 'class' && value)\r\n\t\t\t\t\t\tvalue = value.replace(/mceItem.+ ?/g, '');\r\n\r\n\t\t\t\t\tif (value && name != 'type')\r\n\t\t\t\t\t\tobject.attr(name, value);\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// Add params\r\n\t\t\t\tfor (name in data.params) {\r\n\t\t\t\t\tparam = new Node('param', 1);\r\n\t\t\t\t\tparam.shortEnded = true;\r\n\t\t\t\t\tvalue = data.params[name];\r\n\r\n\t\t\t\t\t// Windows media needs to use url instead of src for the media URL\r\n\t\t\t\t\tif (name === 'src' && typeItem.name === 'WindowsMedia')\r\n\t\t\t\t\t\tname = 'url';\r\n\r\n\t\t\t\t\tparam.attr({name: name, value: value});\r\n\t\t\t\t\tobject.append(param);\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Setup add type and classid if strict is disabled\r\n\t\t\t\tif (this.editor.getParam('media_strict', true)) {\r\n\t\t\t\t\tobject.attr({\r\n\t\t\t\t\t\tdata: data.params.src,\r\n\t\t\t\t\t\ttype: typeItem.mimes[0]\r\n\t\t\t\t\t});\r\n\t\t\t\t} else {\r\n\t\t\t\t\tobject.attr({\r\n\t\t\t\t\t\tclassid: \"clsid:\" + typeItem.clsids[0],\r\n\t\t\t\t\t\tcodebase: typeItem.codebase\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tembed = new Node('embed', 1);\r\n\t\t\t\t\tembed.shortEnded = true;\r\n\t\t\t\t\tembed.attr({\r\n\t\t\t\t\t\tid: node.attr('id'),\r\n\t\t\t\t\t\twidth: node.attr('width'),\r\n\t\t\t\t\t\theight: node.attr('height'),\r\n\t\t\t\t\t\tstyle : style,\r\n\t\t\t\t\t\ttype: typeItem.mimes[0]\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tfor (name in data.params)\r\n\t\t\t\t\t\tembed.attr(name, data.params[name]);\r\n\r\n\t\t\t\t\ttinymce.each(rootAttributes, function(name) {\r\n\t\t\t\t\t\tif (data[name] && name != 'type')\r\n\t\t\t\t\t\t\tembed.attr(name, data[name]);\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tobject.append(embed);\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Insert raw HTML\r\n\t\t\t\tif (data.object_html) {\r\n\t\t\t\t\tvalue = new Node('#text', 3);\r\n\t\t\t\t\tvalue.raw = true;\r\n\t\t\t\t\tvalue.value = data.object_html;\r\n\t\t\t\t\tobject.append(value);\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Append object to video element if it exists\r\n\t\t\t\tif (video)\r\n\t\t\t\t\tvideo.append(object);\r\n\t\t\t}\r\n\r\n\t\t\tif (video) {\r\n\t\t\t\t// Insert raw HTML\r\n\t\t\t\tif (data.video_html) {\r\n\t\t\t\t\tvalue = new Node('#text', 3);\r\n\t\t\t\t\tvalue.raw = true;\r\n\t\t\t\t\tvalue.value = data.video_html;\r\n\t\t\t\t\tvideo.append(value);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (audio) {\r\n\t\t\t\t// Insert raw HTML\r\n\t\t\t\tif (data.video_html) {\r\n\t\t\t\t\tvalue = new Node('#text', 3);\r\n\t\t\t\t\tvalue.raw = true;\r\n\t\t\t\t\tvalue.value = data.video_html;\r\n\t\t\t\t\taudio.append(value);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tvar n = video || audio || object || embed;\r\n\t\t\tif (n)\r\n\t\t\t\tnode.replace(n);\r\n\t\t\telse\r\n\t\t\t\tnode.remove();\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * Converts a tinymce.html.Node video/object/embed to an img element.\r\n\t\t *\r\n\t\t * The video/object/embed will be converted into an image placeholder with a JSON data attribute like this:\r\n\t\t * <img class=\"mceItemMedia mceItemFlash\" width=\"100\" height=\"100\" data-mce-json=\"{..}\" />\r\n\t\t *\r\n\t\t * The JSON structure will be like this:\r\n\t\t * {'params':{'flashvars':'something','quality':'high','src':'someurl'}, 'video':{'sources':[{src: 'someurl', type: 'video/mp4'}]}}\r\n\t\t */\r\n\t\tobjectToImg : function(node) {\r\n\t\t\tvar object, embed, video, iframe, img, name, id, width, height, style, i, html,\r\n\t\t\t\tparam, params, source, sources, data, type, lookup = this.lookup,\r\n\t\t\t\tmatches, attrs, urlConverter = this.editor.settings.url_converter,\r\n\t\t\t\turlConverterScope = this.editor.settings.url_converter_scope,\r\n\t\t\t\thspace, vspace, align, bgcolor;\r\n\r\n\t\t\tfunction getInnerHTML(node) {\r\n\t\t\t\treturn new tinymce.html.Serializer({\r\n\t\t\t\t\tinner: true,\r\n\t\t\t\t\tvalidate: false\r\n\t\t\t\t}).serialize(node);\r\n\t\t\t};\r\n\r\n\t\t\tfunction lookupAttribute(o, attr) {\r\n\t\t\t\treturn lookup[(o.attr(attr) || '').toLowerCase()];\r\n\t\t\t}\r\n\r\n\t\t\tfunction lookupExtension(src) {\r\n\t\t\t\tvar ext = src.replace(/^.*\\.([^.]+)$/, '$1');\r\n\t\t\t\treturn lookup[ext.toLowerCase() || ''];\r\n\t\t\t}\r\n\r\n\t\t\t// If node isn't in document\r\n\t\t\tif (!node.parent)\r\n\t\t\t\treturn;\r\n\r\n\t\t\t// Handle media scripts\r\n\t\t\tif (node.name === 'script') {\r\n\t\t\t\tif (node.firstChild)\r\n\t\t\t\t\tmatches = scriptRegExp.exec(node.firstChild.value);\r\n\r\n\t\t\t\tif (!matches)\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\ttype = matches[1];\r\n\t\t\t\tdata = {video : {}, params : JSON.parse(matches[2])};\r\n\t\t\t\twidth = data.params.width;\r\n\t\t\t\theight = data.params.height;\r\n\t\t\t}\r\n\r\n\t\t\t// Setup data objects\r\n\t\t\tdata = data || {\r\n\t\t\t\tvideo : {},\r\n\t\t\t\tparams : {}\r\n\t\t\t};\r\n\r\n\t\t\t// Setup new image object\r\n\t\t\timg = new Node('img', 1);\r\n\t\t\timg.attr({\r\n\t\t\t\tsrc : this.editor.theme.url + '/img/trans.gif'\r\n\t\t\t});\r\n\r\n\t\t\t// Video element\r\n\t\t\tname = node.name;\r\n\t\t\tif (name === 'video' || name == 'audio') {\r\n\t\t\t\tvideo = node;\r\n\t\t\t\tobject = node.getAll('object')[0];\r\n\t\t\t\tembed = node.getAll('embed')[0];\r\n\t\t\t\twidth = video.attr('width');\r\n\t\t\t\theight = video.attr('height');\r\n\t\t\t\tid = video.attr('id');\r\n\t\t\t\tdata.video = {attrs : {}, sources : []};\r\n\r\n\t\t\t\t// Get all video attributes\r\n\t\t\t\tattrs = data.video.attrs;\r\n\t\t\t\tfor (name in video.attributes.map)\r\n\t\t\t\t\tattrs[name] = video.attributes.map[name];\r\n\r\n\t\t\t\tsource = node.attr('src');\r\n\t\t\t\tif (source)\r\n\t\t\t\t\tdata.video.sources.push({src : urlConverter.call(urlConverterScope, source, 'src', node.name)});\r\n\r\n\t\t\t\t// Get all sources\r\n\t\t\t\tsources = video.getAll(\"source\");\r\n\t\t\t\tfor (i = 0; i < sources.length; i++) {\r\n\t\t\t\t\tsource = sources[i].remove();\r\n\r\n\t\t\t\t\tdata.video.sources.push({\r\n\t\t\t\t\t\tsrc: urlConverter.call(urlConverterScope, source.attr('src'), 'src', 'source'),\r\n\t\t\t\t\t\ttype: source.attr('type'),\r\n\t\t\t\t\t\tmedia: source.attr('media')\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Convert the poster URL\r\n\t\t\t\tif (attrs.poster)\r\n\t\t\t\t\tattrs.poster = urlConverter.call(urlConverterScope, attrs.poster, 'poster', node.name);\r\n\t\t\t}\r\n\r\n\t\t\t// Object element\r\n\t\t\tif (node.name === 'object') {\r\n\t\t\t\tobject = node;\r\n\t\t\t\tembed = node.getAll('embed')[0];\r\n\t\t\t}\r\n\r\n\t\t\t// Embed element\r\n\t\t\tif (node.name === 'embed')\r\n\t\t\t\tembed = node;\r\n\r\n\t\t\t// Iframe element\r\n\t\t\tif (node.name === 'iframe') {\r\n\t\t\t\tiframe = node;\r\n\t\t\t\ttype = 'Iframe';\r\n\t\t\t}\r\n\r\n\t\t\tif (object) {\r\n\t\t\t\t// Get width/height\r\n\t\t\t\twidth = width || object.attr('width');\r\n\t\t\t\theight = height || object.attr('height');\r\n\t\t\t\tstyle = style || object.attr('style');\r\n\t\t\t\tid = id || object.attr('id');\r\n\t\t\t\thspace = hspace || object.attr('hspace');\r\n\t\t\t\tvspace = vspace || object.attr('vspace');\r\n\t\t\t\talign = align || object.attr('align');\r\n\t\t\t\tbgcolor = bgcolor || object.attr('bgcolor');\r\n\t\t\t\tdata.name = object.attr('name');\r\n\r\n\t\t\t\t// Get all object params\r\n\t\t\t\tparams = object.getAll(\"param\");\r\n\t\t\t\tfor (i = 0; i < params.length; i++) {\r\n\t\t\t\t\tparam = params[i];\r\n\t\t\t\t\tname = param.remove().attr('name');\r\n\r\n\t\t\t\t\tif (!excludedAttrs[name])\r\n\t\t\t\t\t\tdata.params[name] = param.attr('value');\r\n\t\t\t\t}\r\n\r\n\t\t\t\tdata.params.src = data.params.src || object.attr('data');\r\n\t\t\t}\r\n\r\n\t\t\tif (embed) {\r\n\t\t\t\t// Get width/height\r\n\t\t\t\twidth = width || embed.attr('width');\r\n\t\t\t\theight = height || embed.attr('height');\r\n\t\t\t\tstyle = style || embed.attr('style');\r\n\t\t\t\tid = id || embed.attr('id');\r\n\t\t\t\thspace = hspace || embed.attr('hspace');\r\n\t\t\t\tvspace = vspace || embed.attr('vspace');\r\n\t\t\t\talign = align || embed.attr('align');\r\n\t\t\t\tbgcolor = bgcolor || embed.attr('bgcolor');\r\n\r\n\t\t\t\t// Get all embed attributes\r\n\t\t\t\tfor (name in embed.attributes.map) {\r\n\t\t\t\t\tif (!excludedAttrs[name] && !data.params[name])\r\n\t\t\t\t\t\tdata.params[name] = embed.attributes.map[name];\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (iframe) {\r\n\t\t\t\t// Get width/height\r\n\t\t\t\twidth = iframe.attr('width');\r\n\t\t\t\theight = iframe.attr('height');\r\n\t\t\t\tstyle = style || iframe.attr('style');\r\n\t\t\t\tid = iframe.attr('id');\r\n\t\t\t\thspace = iframe.attr('hspace');\r\n\t\t\t\tvspace = iframe.attr('vspace');\r\n\t\t\t\talign = iframe.attr('align');\r\n\t\t\t\tbgcolor = iframe.attr('bgcolor');\r\n\r\n\t\t\t\ttinymce.each(rootAttributes, function(name) {\r\n\t\t\t\t\timg.attr(name, iframe.attr(name));\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// Get all iframe attributes\r\n\t\t\t\tfor (name in iframe.attributes.map) {\r\n\t\t\t\t\tif (!excludedAttrs[name] && !data.params[name])\r\n\t\t\t\t\t\tdata.params[name] = iframe.attributes.map[name];\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Use src not movie\r\n\t\t\tif (data.params.movie) {\r\n\t\t\t\tdata.params.src = data.params.src || data.params.movie;\r\n\t\t\t\tdelete data.params.movie;\r\n\t\t\t}\r\n\r\n\t\t\t// Convert the URL to relative/absolute depending on configuration\r\n\t\t\tif (data.params.src)\r\n\t\t\t\tdata.params.src = urlConverter.call(urlConverterScope, data.params.src, 'src', 'object');\r\n\r\n\t\t\tif (video) {\r\n\t\t\t\tif (node.name === 'video')\r\n\t\t\t\t\ttype = lookup.video.name;\r\n\t\t\t\telse if (node.name === 'audio')\r\n\t\t\t\t\ttype = lookup.audio.name;\r\n\t\t\t}\r\n\r\n\t\t\tif (object && !type)\r\n\t\t\t\ttype = (lookupAttribute(object, 'clsid') || lookupAttribute(object, 'classid') || lookupAttribute(object, 'type') || {}).name;\r\n\r\n\t\t\tif (embed && !type)\r\n\t\t\t\ttype = (lookupAttribute(embed, 'type') || lookupExtension(data.params.src) || {}).name;\r\n\r\n\t\t\t// for embedded audio we preserve the original specified type\r\n\t\t\tif (embed && type == 'EmbeddedAudio') {\r\n\t\t\t\tdata.params.type = embed.attr('type');\r\n\t\t\t}\r\n\r\n\t\t\t// Replace the video/object/embed element with a placeholder image containing the data\r\n\t\t\tnode.replace(img);\r\n\r\n\t\t\t// Remove embed\r\n\t\t\tif (embed)\r\n\t\t\t\tembed.remove();\r\n\r\n\t\t\t// Serialize the inner HTML of the object element\r\n\t\t\tif (object) {\r\n\t\t\t\thtml = getInnerHTML(object.remove());\r\n\r\n\t\t\t\tif (html)\r\n\t\t\t\t\tdata.object_html = html;\r\n\t\t\t}\r\n\r\n\t\t\t// Serialize the inner HTML of the video element\r\n\t\t\tif (video) {\r\n\t\t\t\thtml = getInnerHTML(video.remove());\r\n\r\n\t\t\t\tif (html)\r\n\t\t\t\t\tdata.video_html = html;\r\n\t\t\t}\r\n\r\n\t\t\tdata.hspace = hspace;\r\n\t\t\tdata.vspace = vspace;\r\n\t\t\tdata.align = align;\r\n\t\t\tdata.bgcolor = bgcolor;\r\n\r\n\t\t\t// Set width/height of placeholder\r\n\t\t\timg.attr({\r\n\t\t\t\tid : id,\r\n\t\t\t\t'class' : 'mceItemMedia mceItem' + (type || 'Flash'),\r\n\t\t\t\tstyle : style,\r\n\t\t\t\twidth : width || (node.name == 'audio' ? \"300\" : \"320\"),\r\n\t\t\t\theight : height || (node.name == 'audio' ? \"32\" : \"240\"),\r\n\t\t\t\thspace : hspace,\r\n\t\t\t\tvspace : vspace,\r\n\t\t\t\talign : align,\r\n\t\t\t\tbgcolor : bgcolor,\r\n\t\t\t\t\"data-mce-json\" : JSON.serialize(data, \"'\")\r\n\t\t\t});\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('media', tinymce.plugins.MediaPlugin);\r\n})();\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/js/embed.js",
    "content": "/**\r\n * This script contains embed functions for common plugins. This scripts are complety free to use for any purpose.\r\n */\r\n\r\nfunction writeFlash(p) {\r\n\twriteEmbed(\r\n\t\t'D27CDB6E-AE6D-11cf-96B8-444553540000',\r\n\t\t'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0',\r\n\t\t'application/x-shockwave-flash',\r\n\t\tp\r\n\t);\r\n}\r\n\r\nfunction writeShockWave(p) {\r\n\twriteEmbed(\r\n\t'166B1BCA-3F9C-11CF-8075-444553540000',\r\n\t'http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0',\r\n\t'application/x-director',\r\n\t\tp\r\n\t);\r\n}\r\n\r\nfunction writeQuickTime(p) {\r\n\twriteEmbed(\r\n\t\t'02BF25D5-8C17-4B23-BC80-D3488ABDDC6B',\r\n\t\t'http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0',\r\n\t\t'video/quicktime',\r\n\t\tp\r\n\t);\r\n}\r\n\r\nfunction writeRealMedia(p) {\r\n\twriteEmbed(\r\n\t\t'CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA',\r\n\t\t'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0',\r\n\t\t'audio/x-pn-realaudio-plugin',\r\n\t\tp\r\n\t);\r\n}\r\n\r\nfunction writeWindowsMedia(p) {\r\n\tp.url = p.src;\r\n\twriteEmbed(\r\n\t\t'6BF52A52-394A-11D3-B153-00C04F79FAA6',\r\n\t\t'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701',\r\n\t\t'application/x-mplayer2',\r\n\t\tp\r\n\t);\r\n}\r\n\r\nfunction writeEmbed(cls, cb, mt, p) {\r\n\tvar h = '', n;\r\n\r\n\th += '<object classid=\"clsid:' + cls + '\" codebase=\"' + cb + '\"';\r\n\th += typeof(p.id) != \"undefined\" ? 'id=\"' + p.id + '\"' : '';\r\n\th += typeof(p.name) != \"undefined\" ? 'name=\"' + p.name + '\"' : '';\r\n\th += typeof(p.width) != \"undefined\" ? 'width=\"' + p.width + '\"' : '';\r\n\th += typeof(p.height) != \"undefined\" ? 'height=\"' + p.height + '\"' : '';\r\n\th += typeof(p.align) != \"undefined\" ? 'align=\"' + p.align + '\"' : '';\r\n\th += '>';\r\n\r\n\tfor (n in p)\r\n\t\th += '<param name=\"' + n + '\" value=\"' + p[n] + '\">';\r\n\r\n\th += '<embed type=\"' + mt + '\"';\r\n\r\n\tfor (n in p)\r\n\t\th += n + '=\"' + p[n] + '\" ';\r\n\r\n\th += '></embed></object>';\r\n\r\n\tdocument.write(h);\r\n}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/js/media.js",
    "content": "(function() {\r\n\tvar url;\r\n\r\n\tif (url = tinyMCEPopup.getParam(\"media_external_list_url\"))\r\n\t\tdocument.write('<script language=\"javascript\" type=\"text/javascript\" src=\"' + tinyMCEPopup.editor.documentBaseURI.toAbsolute(url) + '\"></script>');\r\n\r\n\tfunction get(id) {\r\n\t\treturn document.getElementById(id);\r\n\t}\r\n\r\n\tfunction clone(obj) {\r\n\t\tvar i, len, copy, attr;\r\n\r\n\t\tif (null == obj || \"object\" != typeof obj)\r\n\t\t\treturn obj;\r\n\r\n\t\t// Handle Array\r\n\t\tif ('length' in obj) {\r\n\t\t\tcopy = [];\r\n\r\n\t\t\tfor (i = 0, len = obj.length; i < len; ++i) {\r\n\t\t\t\tcopy[i] = clone(obj[i]);\r\n\t\t\t}\r\n\r\n\t\t\treturn copy;\r\n\t\t}\r\n\r\n\t\t// Handle Object\r\n\t\tcopy = {};\r\n\t\tfor (attr in obj) {\r\n\t\t\tif (obj.hasOwnProperty(attr))\r\n\t\t\t\tcopy[attr] = clone(obj[attr]);\r\n\t\t}\r\n\r\n\t\treturn copy;\r\n\t}\r\n\r\n\tfunction getVal(id) {\r\n\t\tvar elm = get(id);\r\n\r\n\t\tif (elm.nodeName == \"SELECT\")\r\n\t\t\treturn elm.options[elm.selectedIndex].value;\r\n\r\n\t\tif (elm.type == \"checkbox\")\r\n\t\t\treturn elm.checked;\r\n\r\n\t\treturn elm.value;\r\n\t}\r\n\r\n\tfunction setVal(id, value, name) {\r\n\t\tif (typeof(value) != 'undefined') {\r\n\t\t\tvar elm = get(id);\r\n\r\n\t\t\tif (elm.nodeName == \"SELECT\")\r\n\t\t\t\tselectByValue(document.forms[0], id, value);\r\n\t\t\telse if (elm.type == \"checkbox\") {\r\n\t\t\t\tif (typeof(value) == 'string') {\r\n\t\t\t\t\tvalue = value.toLowerCase();\r\n\t\t\t\t\tvalue = (!name && value === 'true') || (name && value === name.toLowerCase());\r\n\t\t\t\t}\r\n\t\t\t\telm.checked = !!value;\r\n\t\t\t} else\r\n\t\t\t\telm.value = value;\r\n\t\t}\r\n\t}\r\n\r\n\twindow.Media = {\r\n\t\tinit : function() {\r\n\t\t\tvar html, editor;\r\n\r\n\t\t\tthis.editor = editor = tinyMCEPopup.editor;\r\n\r\n\t\t\t// Setup file browsers and color pickers\r\n\t\t\tget('filebrowsercontainer').innerHTML = getBrowserHTML('filebrowser','src','media','media');\r\n\t\t\tget('qtsrcfilebrowsercontainer').innerHTML = getBrowserHTML('qtsrcfilebrowser','quicktime_qtsrc','media','media');\r\n\t\t\tget('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor');\r\n\t\t\tget('video_altsource1_filebrowser').innerHTML = getBrowserHTML('video_filebrowser_altsource1','video_altsource1','media','media');\r\n\t\t\tget('video_altsource2_filebrowser').innerHTML = getBrowserHTML('video_filebrowser_altsource2','video_altsource2','media','media');\r\n\t\t\tget('audio_altsource1_filebrowser').innerHTML = getBrowserHTML('audio_filebrowser_altsource1','audio_altsource1','media','media');\r\n\t\t\tget('audio_altsource2_filebrowser').innerHTML = getBrowserHTML('audio_filebrowser_altsource2','audio_altsource2','media','media');\r\n\t\t\tget('video_poster_filebrowser').innerHTML = getBrowserHTML('filebrowser_poster','video_poster','media','image');\r\n\r\n\t\t\thtml = this.getMediaListHTML('medialist', 'src', 'media', 'media');\r\n\t\t\tif (html == \"\")\r\n\t\t\t\tget(\"linklistrow\").style.display = 'none';\r\n\t\t\telse\r\n\t\t\t\tget(\"linklistcontainer\").innerHTML = html;\r\n\r\n\t\t\tif (isVisible('filebrowser'))\r\n\t\t\t\tget('src').style.width = '230px';\r\n\r\n\t\t\tif (isVisible('video_filebrowser_altsource1'))\r\n\t\t\t\tget('video_altsource1').style.width = '220px';\r\n\r\n\t\t\tif (isVisible('video_filebrowser_altsource2'))\r\n\t\t\t\tget('video_altsource2').style.width = '220px';\r\n\r\n\t\t\tif (isVisible('audio_filebrowser_altsource1'))\r\n\t\t\t\tget('audio_altsource1').style.width = '220px';\r\n\r\n\t\t\tif (isVisible('audio_filebrowser_altsource2'))\r\n\t\t\t\tget('audio_altsource2').style.width = '220px';\r\n\r\n\t\t\tif (isVisible('filebrowser_poster'))\r\n\t\t\t\tget('video_poster').style.width = '220px';\r\n\r\n\t\t\teditor.dom.setOuterHTML(get('media_type'), this.getMediaTypeHTML(editor));\r\n\r\n\t\t\tthis.data = clone(tinyMCEPopup.getWindowArg('data'));\r\n\t\t\tthis.dataToForm();\r\n\t\t\tthis.preview();\r\n\r\n\t\t\tupdateColor('bgcolor_pick', 'bgcolor');\r\n\t\t},\r\n\r\n\t\tinsert : function() {\r\n\t\t\tvar editor = tinyMCEPopup.editor;\r\n\r\n\t\t\tthis.formToData();\r\n\t\t\teditor.execCommand('mceRepaint');\r\n\t\t\ttinyMCEPopup.restoreSelection();\r\n\t\t\teditor.selection.setNode(editor.plugins.media.dataToImg(this.data));\r\n\t\t\ttinyMCEPopup.close();\r\n\t\t},\r\n\r\n\t\tpreview : function() {\r\n\t\t\tget('prev').innerHTML = this.editor.plugins.media.dataToHtml(this.data, true);\r\n\t\t},\r\n\r\n\t\tmoveStates : function(to_form, field) {\r\n\t\t\tvar data = this.data, editor = this.editor,\r\n\t\t\t\tmediaPlugin = editor.plugins.media, ext, src, typeInfo, defaultStates, src;\r\n\r\n\t\t\tdefaultStates = {\r\n\t\t\t\t// QuickTime\r\n\t\t\t\tquicktime_autoplay : true,\r\n\t\t\t\tquicktime_controller : true,\r\n\r\n\t\t\t\t// Flash\r\n\t\t\t\tflash_play : true,\r\n\t\t\t\tflash_loop : true,\r\n\t\t\t\tflash_menu : true,\r\n\r\n\t\t\t\t// WindowsMedia\r\n\t\t\t\twindowsmedia_autostart : true,\r\n\t\t\t\twindowsmedia_enablecontextmenu : true,\r\n\t\t\t\twindowsmedia_invokeurls : true,\r\n\r\n\t\t\t\t// RealMedia\r\n\t\t\t\trealmedia_autogotourl : true,\r\n\t\t\t\trealmedia_imagestatus : true\r\n\t\t\t};\r\n\r\n\t\t\tfunction parseQueryParams(str) {\r\n\t\t\t\tvar out = {};\r\n\r\n\t\t\t\tif (str) {\r\n\t\t\t\t\ttinymce.each(str.split('&'), function(item) {\r\n\t\t\t\t\t\tvar parts = item.split('=');\r\n\r\n\t\t\t\t\t\tout[unescape(parts[0])] = unescape(parts[1]);\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn out;\r\n\t\t\t};\r\n\r\n\t\t\tfunction setOptions(type, names) {\r\n\t\t\t\tvar i, name, formItemName, value, list;\r\n\r\n\t\t\t\tif (type == data.type || type == 'global') {\r\n\t\t\t\t\tnames = tinymce.explode(names);\r\n\t\t\t\t\tfor (i = 0; i < names.length; i++) {\r\n\t\t\t\t\t\tname = names[i];\r\n\t\t\t\t\t\tformItemName = type == 'global' ? name : type + '_' + name;\r\n\r\n\t\t\t\t\t\tif (type == 'global')\r\n\t\t\t\t\t\t\tlist = data;\r\n\t\t\t\t\t\telse if (type == 'video' || type == 'audio') {\r\n\t\t\t\t\t\t\tlist = data.video.attrs;\r\n\r\n\t\t\t\t\t\t\tif (!list && !to_form)\r\n\t\t\t\t\t\t\t\tdata.video.attrs = list = {};\r\n\t\t\t\t\t\t} else\r\n\t\t\t\t\t\t\tlist = data.params;\r\n\r\n\t\t\t\t\t\tif (list) {\r\n\t\t\t\t\t\t\tif (to_form) {\r\n\t\t\t\t\t\t\t\tsetVal(formItemName, list[name], type == 'video' || type == 'audio' ? name : '');\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tdelete list[name];\r\n\r\n\t\t\t\t\t\t\t\tvalue = getVal(formItemName);\r\n\t\t\t\t\t\t\t\tif ((type == 'video' || type == 'audio') && value === true)\r\n\t\t\t\t\t\t\t\t\tvalue = name;\r\n\r\n\t\t\t\t\t\t\t\tif (defaultStates[formItemName]) {\r\n\t\t\t\t\t\t\t\t\tif (value !== defaultStates[formItemName]) {\r\n\t\t\t\t\t\t\t\t\t\tvalue = \"\" + value;\r\n\t\t\t\t\t\t\t\t\t\tlist[name] = value;\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t} else if (value) {\r\n\t\t\t\t\t\t\t\t\tvalue = \"\" + value;\r\n\t\t\t\t\t\t\t\t\tlist[name] = value;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (!to_form) {\r\n\t\t\t\tdata.type = get('media_type').options[get('media_type').selectedIndex].value;\r\n\t\t\t\tdata.width = getVal('width');\r\n\t\t\t\tdata.height = getVal('height');\r\n\r\n\t\t\t\t// Switch type based on extension\r\n\t\t\t\tsrc = getVal('src');\r\n\t\t\t\tif (field == 'src') {\r\n\t\t\t\t\text = src.replace(/^.*\\.([^.]+)$/, '$1');\r\n\t\t\t\t\tif (typeInfo = mediaPlugin.getType(ext))\r\n\t\t\t\t\t\tdata.type = typeInfo.name.toLowerCase();\r\n\r\n\t\t\t\t\tsetVal('media_type', data.type);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (data.type == \"video\" || data.type == \"audio\") {\r\n\t\t\t\t\tif (!data.video.sources)\r\n\t\t\t\t\t\tdata.video.sources = [];\r\n\r\n\t\t\t\t\tdata.video.sources[0] = {src: getVal('src')};\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Hide all fieldsets and show the one active\r\n\t\t\tget('video_options').style.display = 'none';\r\n\t\t\tget('audio_options').style.display = 'none';\r\n\t\t\tget('flash_options').style.display = 'none';\r\n\t\t\tget('quicktime_options').style.display = 'none';\r\n\t\t\tget('shockwave_options').style.display = 'none';\r\n\t\t\tget('windowsmedia_options').style.display = 'none';\r\n\t\t\tget('realmedia_options').style.display = 'none';\r\n\t\t\tget('embeddedaudio_options').style.display = 'none';\r\n\r\n\t\t\tif (get(data.type + '_options'))\r\n\t\t\t\tget(data.type + '_options').style.display = 'block';\r\n\r\n\t\t\tsetVal('media_type', data.type);\r\n\r\n\t\t\tsetOptions('flash', 'play,loop,menu,swliveconnect,quality,scale,salign,wmode,base,flashvars');\r\n\t\t\tsetOptions('quicktime', 'loop,autoplay,cache,controller,correction,enablejavascript,kioskmode,autohref,playeveryframe,targetcache,scale,starttime,endtime,target,qtsrcchokespeed,volume,qtsrc');\r\n\t\t\tsetOptions('shockwave', 'sound,progress,autostart,swliveconnect,swvolume,swstretchstyle,swstretchhalign,swstretchvalign');\r\n\t\t\tsetOptions('windowsmedia', 'autostart,enabled,enablecontextmenu,fullscreen,invokeurls,mute,stretchtofit,windowlessvideo,balance,baseurl,captioningid,currentmarker,currentposition,defaultframe,playcount,rate,uimode,volume');\r\n\t\t\tsetOptions('realmedia', 'autostart,loop,autogotourl,center,imagestatus,maintainaspect,nojava,prefetch,shuffle,console,controls,numloop,scriptcallbacks');\r\n\t\t\tsetOptions('video', 'poster,autoplay,loop,muted,preload,controls');\r\n\t\t\tsetOptions('audio', 'autoplay,loop,preload,controls');\r\n\t\t\tsetOptions('embeddedaudio', 'autoplay,loop,controls');\r\n\t\t\tsetOptions('global', 'id,name,vspace,hspace,bgcolor,align,width,height');\r\n\r\n\t\t\tif (to_form) {\r\n\t\t\t\tif (data.type == 'video') {\r\n\t\t\t\t\tif (data.video.sources[0])\r\n\t\t\t\t\t\tsetVal('src', data.video.sources[0].src);\r\n\r\n\t\t\t\t\tsrc = data.video.sources[1];\r\n\t\t\t\t\tif (src)\r\n\t\t\t\t\t\tsetVal('video_altsource1', src.src);\r\n\r\n\t\t\t\t\tsrc = data.video.sources[2];\r\n\t\t\t\t\tif (src)\r\n\t\t\t\t\t\tsetVal('video_altsource2', src.src);\r\n                } else if (data.type == 'audio') {\r\n                    if (data.video.sources[0])\r\n                        setVal('src', data.video.sources[0].src);\r\n                    \r\n                    src = data.video.sources[1];\r\n                    if (src)\r\n                        setVal('audio_altsource1', src.src);\r\n                    \r\n                    src = data.video.sources[2];\r\n                    if (src)\r\n                        setVal('audio_altsource2', src.src);\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// Check flash vars\r\n\t\t\t\t\tif (data.type == 'flash') {\r\n\t\t\t\t\t\ttinymce.each(editor.getParam('flash_video_player_flashvars', {url : '$url', poster : '$poster'}), function(value, name) {\r\n\t\t\t\t\t\t\tif (value == '$url')\r\n\t\t\t\t\t\t\t\tdata.params.src = parseQueryParams(data.params.flashvars)[name] || data.params.src || '';\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tsetVal('src', data.params.src);\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tsrc = getVal(\"src\");\r\n\r\n\t\t\t\t// YouTube *NEW*\r\n\t\t\t\tif (src.match(/youtu.be\\/[a-z1-9.-_]+/)) {\r\n\t\t\t\t\tdata.width = 425;\r\n\t\t\t\t\tdata.height = 350;\r\n\t\t\t\t\tdata.params.frameborder = '0';\r\n\t\t\t\t\tdata.type = 'iframe';\r\n\t\t\t\t\tsrc = 'http://www.youtube.com/embed/' + src.match(/youtu.be\\/([a-z1-9.-_]+)/)[1];\r\n\t\t\t\t\tsetVal('src', src);\r\n\t\t\t\t\tsetVal('media_type', data.type);\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// YouTube\r\n\t\t\t\tif (src.match(/youtube.com(.+)v=([^&]+)/)) {\r\n\t\t\t\t\tdata.width = 425;\r\n\t\t\t\t\tdata.height = 350;\r\n\t\t\t\t\tdata.params.frameborder = '0';\r\n\t\t\t\t\tdata.type = 'iframe';\r\n\t\t\t\t\tsrc = 'http://www.youtube.com/embed/' + src.match(/v=([^&]+)/)[1];\r\n\t\t\t\t\tsetVal('src', src);\r\n\t\t\t\t\tsetVal('media_type', data.type);\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Google video\r\n\t\t\t\tif (src.match(/video.google.com(.+)docid=([^&]+)/)) {\r\n\t\t\t\t\tdata.width = 425;\r\n\t\t\t\t\tdata.height = 326;\r\n\t\t\t\t\tdata.type = 'flash';\r\n\t\t\t\t\tsrc = 'http://video.google.com/googleplayer.swf?docId=' + src.match(/docid=([^&]+)/)[1] + '&hl=en';\r\n\t\t\t\t\tsetVal('src', src);\r\n\t\t\t\t\tsetVal('media_type', data.type);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (data.type == 'video') {\r\n\t\t\t\t\tif (!data.video.sources)\r\n\t\t\t\t\t\tdata.video.sources = [];\r\n\r\n\t\t\t\t\tdata.video.sources[0] = {src : src};\r\n\r\n\t\t\t\t\tsrc = getVal(\"video_altsource1\");\r\n\t\t\t\t\tif (src)\r\n\t\t\t\t\t\tdata.video.sources[1] = {src : src};\r\n\r\n\t\t\t\t\tsrc = getVal(\"video_altsource2\");\r\n\t\t\t\t\tif (src)\r\n\t\t\t\t\t\tdata.video.sources[2] = {src : src};\r\n                } else if (data.type == 'audio') {\r\n                    if (!data.video.sources)\r\n                        data.video.sources = [];\r\n                    \r\n                    data.video.sources[0] = {src : src};\r\n                    \r\n                    src = getVal(\"audio_altsource1\");\r\n                    if (src)\r\n                        data.video.sources[1] = {src : src};\r\n                    \r\n                    src = getVal(\"audio_altsource2\");\r\n                    if (src)\r\n                        data.video.sources[2] = {src : src};\r\n\t\t\t\t} else\r\n\t\t\t\t\tdata.params.src = src;\r\n\r\n\t\t\t\t// Set default size\r\n                setVal('width', data.width || (data.type == 'audio' ? 300 : 320));\r\n                setVal('height', data.height || (data.type == 'audio' ? 32 : 240));\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tdataToForm : function() {\r\n\t\t\tthis.moveStates(true);\r\n\t\t},\r\n\r\n\t\tformToData : function(field) {\r\n\t\t\tif (field == \"width\" || field == \"height\")\r\n\t\t\t\tthis.changeSize(field);\r\n\r\n\t\t\tif (field == 'source') {\r\n\t\t\t\tthis.moveStates(false, field);\r\n\t\t\t\tsetVal('source', this.editor.plugins.media.dataToHtml(this.data));\r\n\t\t\t\tthis.panel = 'source';\r\n\t\t\t} else {\r\n\t\t\t\tif (this.panel == 'source') {\r\n\t\t\t\t\tthis.data = clone(this.editor.plugins.media.htmlToData(getVal('source')));\r\n\t\t\t\t\tthis.dataToForm();\r\n\t\t\t\t\tthis.panel = '';\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.moveStates(false, field);\r\n\t\t\t\tthis.preview();\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tbeforeResize : function() {\r\n            this.width = parseInt(getVal('width') || (this.data.type == 'audio' ? \"300\" : \"320\"), 10);\r\n            this.height = parseInt(getVal('height') || (this.data.type == 'audio' ? \"32\" : \"240\"), 10);\r\n\t\t},\r\n\r\n\t\tchangeSize : function(type) {\r\n\t\t\tvar width, height, scale, size;\r\n\r\n\t\t\tif (get('constrain').checked) {\r\n                width = parseInt(getVal('width') || (this.data.type == 'audio' ? \"300\" : \"320\"), 10);\r\n                height = parseInt(getVal('height') || (this.data.type == 'audio' ? \"32\" : \"240\"), 10);\r\n\r\n\t\t\t\tif (type == 'width') {\r\n\t\t\t\t\tthis.height = Math.round((width / this.width) * height);\r\n\t\t\t\t\tsetVal('height', this.height);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.width = Math.round((height / this.height) * width);\r\n\t\t\t\t\tsetVal('width', this.width);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tgetMediaListHTML : function() {\r\n\t\t\tif (typeof(tinyMCEMediaList) != \"undefined\" && tinyMCEMediaList.length > 0) {\r\n\t\t\t\tvar html = \"\";\r\n\r\n\t\t\t\thtml += '<select id=\"linklist\" name=\"linklist\" style=\"width: 250px\" onchange=\"this.form.src.value=this.options[this.selectedIndex].value;Media.formToData(\\'src\\');\">';\r\n\t\t\t\thtml += '<option value=\"\">---</option>';\r\n\r\n\t\t\t\tfor (var i=0; i<tinyMCEMediaList.length; i++)\r\n\t\t\t\t\thtml += '<option value=\"' + tinyMCEMediaList[i][1] + '\">' + tinyMCEMediaList[i][0] + '</option>';\r\n\r\n\t\t\t\thtml += '</select>';\r\n\r\n\t\t\t\treturn html;\r\n\t\t\t}\r\n\r\n\t\t\treturn \"\";\r\n\t\t},\r\n\r\n\t\tgetMediaTypeHTML : function(editor) {\r\n\t\t\tvar html = \"\";\r\n\t\t\thtml += '<select id=\"media_type\" name=\"media_type\" onchange=\"Media.formToData(\\'type\\');\">';\r\n\t\t\thtml += '<option value=\"video\">HTML5 Video</option>';\r\n\t\t\thtml += '<option value=\"audio\">HTML5 Audio</option>';\r\n\t\t\thtml += '<option value=\"flash\">Flash</option>';\r\n\t\t\thtml += '<option value=\"quicktime\">QuickTime</option>';\r\n\t\t\thtml += '<option value=\"shockwave\">Shockwave</option>';\r\n\t\t\thtml += '<option value=\"windowsmedia\">Windows Media</option>';\r\n\t\t\thtml += '<option value=\"realmedia\">Real Media</option>';\r\n\t\t\thtml += '<option value=\"iframe\">Iframe</option>';\r\n\r\n\t\t\tif (editor.getParam('media_embedded_audio', false)) {\r\n\t\t\t\thtml += '<option value=\"embeddedaudio\">Embedded Audio</option>';\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\thtml += '</select>';\r\n\t\t\treturn html;\r\n\t\t}\r\n\t};\r\n\r\n\ttinyMCEPopup.requireLangPack();\r\n\ttinyMCEPopup.onInit.add(function() {\r\n\t\tMedia.init();\r\n\t});\r\n})();\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/ar_dlg.js",
    "content": "tinyMCE.addI18n('ar.media_dlg',{list:\"List\",file:\"File/URL\",advanced:\"Advanced\",general:\"\\u0639\\u0627\\u0645\",title:\"Insert / edit embedded media\",align_top_left:\"Top left\",align_center:\"Center\",align_left:\"\\u064a\\u0633\\u0627\\u0631\",align_bottom:\"\\u0627\\u0633\\u0641\\u0644\",align_right:\"\\u064a\\u0645\\u064a\\u0646\",align_top:\"\\u0627\\u0644\\u0627\\u0639\\u0644\\u0649\",qt_stream_warn:\"Streamed rtsp resources should be added to the QT Src field under the advanced tab.\\\\nYou should also add a non streamed version to the Src field..\",qtsrc:\"QT Src\",progress:\"Progress\",sound:\"Sound\",swstretchvalign:\"Stretch V-Align\",swstretchhalign:\"Stretch H-Align\",swstretchstyle:\"Stretch style\",scriptcallbacks:\"Script callbacks\",align_top_right:\"Top right\",uimode:\"UI Mode\",rate:\"Rate\",playcount:\"Play count\",defaultframe:\"Default frame\",currentposition:\"Current position\",currentmarker:\"Current marker\",captioningid:\"Captioning id\",baseurl:\"Base URL\",balance:\"Balance\",windowlessvideo:\"Windowless video\",stretchtofit:\"Stretch to fit\",mute:\"Mute\",invokeurls:\"Invoke URLs\",fullscreen:\"Fullscreen\",enabled:\"Enabled\",autostart:\"Auto start\",volume:\"Volume\",target:\"Target\",qtsrcchokespeed:\"Choke speed\",href:\"Href\",endtime:\"End time\",starttime:\"Start time\",enablejavascript:\"Enable JavaScript\",correction:\"No correction\",targetcache:\"Target cache\",playeveryframe:\"Play every frame\",kioskmode:\"Kiosk mode\",controller:\"Controller\",menu:\"Show menu\",loop:\"Loop\",play:\"Auto play\",hspace:\"H-Space\",vspace:\"V-Space\",class_name:\"Class\",name:\"Name\",id:\"Id\",type:\"Type\",size:\"Dimensions\",preview:\"Preview\",constrain_proportions:\"Constrain proportions\",controls:\"Controls\",numloop:\"Num loops\",console:\"Console\",cache:\"Cache\",autohref:\"AutoHREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Flashvars\",base:\"Base\",bgcolor:\"Background\",wmode:\"WMode\",salign:\"SAlign\",align:\"Align\",scale:\"Scale\",quality:\"Quality\",shuffle:\"Shuffle\",prefetch:\"Prefetch\",nojava:\"No java\",maintainaspect:\"Maintain aspect\",imagestatus:\"Image status\",center:\"Center\",autogotourl:\"Auto goto URL\",shockwave_options:\"Shockwave options\",rmp_options:\"Real media player options\",wmp_options:\"Windows media player options\",qt_options:\"Quicktime options\",flash_options:\"Flash options\",hidden:\"Hidden\",align_bottom_left:\"Bottom left\",align_bottom_right:\"Bottom right\",flv_options:\"Flash video options\",flv_scalemode:\"Scale mode\",flv_buffer:\"Buffer\",flv_startimage:\"Start image\",flv_starttime:\"Start time\",flv_defaultvolume:\"Default volumne\",flv_hiddengui:\"Hidden GUI\",flv_autostart:\"Auto start\",flv_loop:\"Loop\",flv_showscalemodes:\"Show scale modes\",flv_smoothvideo:\"Smooth video\",flv_jscallback:\"JS Callback\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/az_dlg.js",
    "content": "tinyMCE.addI18n('az.media_dlg',{list:\"Siyah\\u0131\",file:\"Fayl/\\u00fcnvan\",advanced:\"\\u018flav\\u0259l\\u0259r\",general:\"\\u00dcmumi\",title:\"Mediya-obyekti \\u0259lav\\u0259/redakt\\u0259 et\",\"align_top_left\":\"\\u00dcst sol\",\"align_center\":\"M\\u0259tk\\u0259z\",\"align_left\":\"Sol\",\"align_bottom\":\"Alt\",\"align_right\":\"Sa\\u011f\",\"align_top\":\"\\u00dcst\",\"qt_stream_warn\":\"Haz\\u0131rki ax\\u0131lan rtsp m\\u0259nb\\u0259l\\u0259ri QT Src sah\\u0259sin\\u0259 \\u0259lav\\u0259 edilm\\u0259lidir.\\nSiz h\\u0259m\\u00e7inin Src sah\\u0259sin\\u0259 qeyri-ax\\u0131lan versiyan\\u0131 da \\u0259lav\\u0259 etm\\u0259lisiniz..\",qtsrc:\"QT Src\",progress:\"\\u0130l\\u0259rl\\u0259yi\\u015f\",sound:\"S\\u0259s\",swstretchvalign:\"Uzat D-D\\u00fczl\\u0259ndir\",swstretchhalign:\"Uzat Y-D\\u00fczl\\u0259ndir\",swstretchstyle:\"Uzatma stili\",scriptcallbacks:\"Skript \\u00e7a\\u011f\\u0131r\\u0131mlar\\u0131\",\"align_top_right\":\"\\u00dcst sa\\u011f\",uimode:\"UI \\u00dcsulu\",rate:\"Norma\",playcount:\"Oynatma say\\u0131\",defaultframe:\"Susmaya g\\u00f6r\\u0259 \\u00e7\\u0259r\\u00e7iv\\u0259\",currentposition:\"Haz\\u0131rki m\\u00f6vqe\",currentmarker:\"Haz\\u0131rki marker\",captioningid:\"Ba\\u015fl\\u0131qland\\u0131rma id\",baseurl:\"Baza URL\",balance:\"Balans\",windowlessvideo:\"P\\u0259nc\\u0259r\\u0259siz vide\",stretchtofit:\"S\\u0131\\u011facaq q\\u0259d\\u0259r \\u00f6l\\u00e7\\u00fcl\\u0259ndir\",mute:\"S\\u0259ssiz\",invokeurls:\"\\u00c7a\\u011f\\u0131r\\u0131lacaq URL \\u00fcnvanlar\",fullscreen:\"Tam ekran\",enabled:\"Yan\\u0131l\\u0131b\",autostart:\"Avtomatik ba\\u015flat\",volume:\"S\\u0259s\",target:\"H\\u0259d\\u0259f\",qtsrcchokespeed:\"Drossel s\\u00fcr\\u0259ti\",href:\"Href\",endtime:\"Bit\\u0259c\\u0259k zaman\",starttime:\"Ba\\u015flan\\u011f\\u0131c zaman\",enablejavascript:\"JavaScript-i yand\\u0131r\",correction:\"D\\u0259yi\\u015fiklik yoxdur\",targetcache:\"H\\u0259d\\u0259f ke\\u015f\",playeveryframe:\"H\\u0259r \\u00e7\\u0259r\\u00e7iv\\u0259ni oynat\",kioskmode:\"Kiosk \\u00fcsulu\",controller:\"\\u0130dar\\u0259\\u00e7i\",menu:\"Menyunu g\\u00f6st\\u0259r\",loop:\"\\u0130lm\\u0259k\",play:\"Avtomatik oynat\",hspace:\"\\u00dcf\\u00fcqi f\\u0259za\",vspace:\"\\u015eaquli f\\u0259za\",\"class_name\":\"Sinif\",name:\"Ad\\u0131\",id:\"\\u0130dentifikator\",type:\"N\\u00f6v\",size:\"\\u00d6\\u00e7\\u00fcl\\u0259ri\",preview:\"\\u0130lkin bax\\u0131\\u015f\",\"constrain_proportions\":\"Proporsiyalar\\u0131 saxla\",controls:\"Kontroller\",numloop:\"R\\u0259q\\u0259mli ilm\\u0259l\\u0259r\",console:\"Konsol\",cache:\"Ke\\u015f\",autohref:\"AutoHREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Flashvars\",base:\"T\\u0259m\\u0259l\",bgcolor:\"Fon\",wmode:\"WMode\",salign:\"SAlign\",align:\"Tarazla\\u015fmaq\",scale:\"Miqyas\",quality:\"Keyfiyy\\u0259t\",shuffle:\"Qar\\u0131\\u015fd\\u0131r\",prefetch:\"\\u00d6n-g\\u0259tirm\\u0259\",nojava:\"Java yox\",maintainaspect:\"Aspekti qoru\",imagestatus:\"\\u015e\\u0259kil statusu\",center:\"M\\u0259rk\\u0259z\",autogotourl:\"Avtomatik gedil\\u0259c\\u0259k URL\",\"shockwave_options\":\"Shockwave nizamlamalar\\u0131\",\"rmp_options\":\"Real media player nizamlamalar\\u0131\",\"wmp_options\":\"Windows media player nizamlamalar\\u0131\",\"qt_options\":\"Quicktime nizamlamalar\\u0131\",\"flash_options\":\"Flash nizamlamalar\\u0131\",hidden:\"Gizli\",\"align_bottom_left\":\"A\\u015fa\\u011f\\u0131 sol\",\"align_bottom_right\":\"A\\u015fa\\u011f\\u0131 sa\\u011f\",\"html5_video_options\":\"HTML5 Video Options\",altsource1:\"Alternative source 1\",altsource2:\"Alternative source 2\",preload:\"Preload\",poster:\"Poster\",source:\"Source\",\"html5_audio_options\":\"Audio Options\",\"preload_none\":\"Don\\'t Preload\",\"preload_metadata\":\"Preload video metadata\",\"preload_auto\":\"Let user\\'s browser decide\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/be_dlg.js",
    "content": "tinyMCE.addI18n('be.media_dlg',{list:\"\\u0421\\u043f\\u0456\\u0441\",file:\"\\u0424\\u0430\\u0439\\u043b/\\u0430\\u0434\\u0440\\u0430\\u0441\",advanced:\"\\u0414\\u0430\\u0434\\u0430\\u0442\\u043a\\u043e\\u0432\\u0430\",general:\"\\u0410\\u0433\\u0443\\u043b\\u044c\\u043d\\u044b\\u044f\",title:\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c/\\u0440\\u044d\\u0434\\u0430\\u0433\\u0430\\u0432\\u0430\\u0446\\u044c \\u043c\\u0435\\u0434\\u044b\\u044f-\\u0430\\u0431\\'\\u0435\\u043a\\u0442\",\"align_top_left\":\"\\u041f\\u0430 \\u043b\\u0435\\u0432\\u0430\\u043c\\u0443 \\u0432\\u0435\\u0440\\u0445\\u043d\\u044f\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"align_center\":\"\\u041f\\u0430 \\u0446\\u044d\\u043d\\u0442\\u0440\\u044b\",\"align_left\":\"\\u041f\\u0430 \\u043b\\u0435\\u0432\\u0430\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"align_bottom\":\"\\u041f\\u0430 \\u043d\\u0456\\u0436\\u043d\\u044f\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"align_right\":\"\\u041f\\u0430 \\u043f\\u0440\\u0430\\u0432\\u0430\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"align_top\":\"\\u041f\\u0430 \\u0432\\u0435\\u0440\\u0445\\u043d\\u044f\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"qt_stream_warn\":\"\\u041f\\u0430\\u0442\\u043e\\u043a\\u0430\\u0432\\u044b\\u044f RTSP \\u0440\\u044d\\u0441\\u0443\\u0440\\u0441\\u044b \\u043f\\u0430\\u0432\\u0456\\u043d\\u044b \\u0431\\u044b\\u0446\\u044c \\u0434\\u0430\\u0434\\u0430\\u043d\\u044b\\u044f \\u045e \\u043f\\u043e\\u043b\\u0435 QT Src \\u043f\\u0430\\u0434 \\u0443\\u043a\\u043b\\u0430\\u0434\\u043a\\u0430\\u0439 \\u0414\\u0430\\u0434\\u0430\\u0442\\u043a\\u043e\\u0432\\u0430.\\n\\u0412\\u044b \\u0442\\u0430\\u043a\\u0441\\u0430\\u043c\\u0430 \\u043f\\u0430\\u0432\\u0456\\u043d\\u044b \\u0434\\u0430\\u0434\\u0430\\u0446\\u044c \\u043d\\u0435 \\u043f\\u0430\\u0442\\u043e\\u043a\\u0430\\u0432\\u044b\\u044f \\u0432\\u0435\\u0440\\u0441\\u0456\\u0456 \\u045e \\u043f\\u043e\\u043b\\u0435 \\u041a\\u0440\\u044b\\u043d\\u0456\\u0446\\u0430.\",qtsrc:\"QT Src\",progress:\"\\u041f\\u0440\\u0430\\u0433\\u0440\\u044d\\u0441\",sound:\"\\u0413\\u0443\\u043a\",swstretchvalign:\"\\u0412\\u0435\\u0440\\u0442. \\u0432\\u044b\\u0440-\\u044f \\u0440\\u0430\\u0441\\u0446\\u044f\\u0436\\u044d\\u043d\\u043d\\u0456\",swstretchhalign:\"\\u0413\\u0430\\u0440. \\u0432\\u044b\\u0440-\\u044f \\u0440\\u0430\\u0441\\u0446\\u044f\\u0436\\u044d\\u043d\\u043d\\u0456\",swstretchstyle:\"\\u0421\\u0442\\u044b\\u043b\\u044c \\u0440\\u0430\\u0441\\u0446\\u044f\\u0436\\u044d\\u043d\\u043d\\u044f\",scriptcallbacks:\"\\u041f\\u0430\\u0434\\u0442\\u0440\\u044b\\u043c\\u043a\\u0430 \\u0441\\u043a\\u0440\\u044b\\u043f\\u0442\\u0430\",\"align_top_right\":\"\\u041f\\u0430 \\u043f\\u0440\\u0430\\u0432\\u0430\\u043c\\u0443 \\u0432\\u0435\\u0440\\u0445\\u043d\\u0456\\u043c \\u043a\\u0440\\u0430\\u0456\",uimode:\"\\u0420\\u044d\\u0436\\u044b\\u043c \\u0456\\u043d\\u0442\\u044d\\u0440\\u0444\\u0435\\u0439\\u0441\\u0443\",rate:\"\\u0420\\u044d\\u0439\\u0442\\u044b\\u043d\\u0433\",playcount:\"\\u041b\\u0456\\u0447\\u044b\\u043b\\u044c\\u043d\\u0456\\u043a \\u043f\\u0440\\u0430\\u0439\\u0433\\u0440\\u0430\\u0432\\u0430\\u043d\\u043d\\u044f\",defaultframe:\"\\u0410\\u0441\\u043d\\u043e\\u045e\\u043d\\u044b \\u043a\\u0430\\u0434\\u0440\",currentposition:\"\\u0411\\u044f\\u0433\\u0443\\u0447\\u0430\\u044f \\u043f\\u0430\\u0437\\u0456\\u0446\\u044b\\u044f\",currentmarker:\"\\u0411\\u044f\\u0433\\u0443\\u0447\\u044b \\u043c\\u0430\\u0440\\u043a\\u0435\\u0440\",captioningid:\"\\u0406\\u043c\\u044f \\u0441\\u0443\\u0431\\u0442\\u044b\\u0442\\u0440\\u0430\\u045e\",baseurl:\"\\u0411\\u0430\\u0437\\u0430\\u0432\\u044b \\u0430\\u0434\\u0440\\u0430\\u0441\",balance:\"\\u0411\\u0430\\u043b\\u0430\\u043d\\u0441\",windowlessvideo:\"\\u0410\\u043a\\u043e\\u043d\\u043d\\u0430\\u0435 \\u0432\\u0456\\u0434\\u044d\\u0430\",stretchtofit:\"\\u041f\\u0430\\u0434 \\u043f\\u0430\\u043c\\u0435\\u0440 \\u0430\\u043a\\u043d\\u0430\",mute:\"\\u0411\\u0435\\u0437 \\u0433\\u0443\\u043a\\u0443\",invokeurls:\"\\u0412\\u044b\\u043a\\u043b\\u0456\\u043a\\u0430\\u0446\\u044c \\u0430\\u0434\\u0440\\u0430\\u0441\",fullscreen:\"\\u041d\\u0430 \\u045e\\u0432\\u0435\\u0441\\u044c \\u044d\\u043a\\u0440\\u0430\\u043d\",enabled:\"\\u0423\\u043a\\u043b\\u044e\\u0447\\u0430\\u043d\\u0430\",autostart:\"\\u0410\\u045e\\u0442\\u0430\\u0437\\u0430\\u043f\\u0443\\u0441\\u043a\",volume:\"\\u0413\\u0443\\u0447\\u043d\\u0430\\u0441\\u0446\\u044c\",target:\"\\u041c\\u044d\\u0442\\u0430\",qtsrcchokespeed:\"Choke speed\",href:\"\\u0421\\u043f\\u0430\\u0441\\u044b\\u043b\\u043a\\u0430\",endtime:\"\\u0427\\u0430\\u0441 \\u0437\\u0430\\u043a\\u0430\\u043d\\u0447\\u044d\\u043d\\u043d\\u044f\",starttime:\"\\u0427\\u0430\\u0441 \\u043f\\u0430\\u0447\\u0430\\u0442\\u043a\\u0443\",enablejavascript:\"\\u0423\\u043a\\u043b\\u044e\\u0447\\u044b\\u0446\\u044c JavaScript\",correction:\"\\u0411\\u0435\\u0437 \\u043a\\u0430\\u0440\\u044d\\u043a\\u0446\\u0456\\u0440\\u043e\\u045e\\u043a\\u0443\",targetcache:\"\\u041a\\u044d\\u0448 \\u043c\\u044d\\u0442\\u044b\",playeveryframe:\"\\u041f\\u0440\\u0430\\u0439\\u0433\\u0440\\u0430\\u0446\\u044c \\u043a\\u043e\\u0436\\u043d\\u044b \\u043a\\u0430\\u0434\\u0440\",kioskmode:\"\\u0420\\u044d\\u0436\\u044b\\u043c \\u041a\\u0456\\u0451\\u0441\\u043a\",controller:\"\\u041a\\u0456\\u0440\\u0430\\u0432\\u0430\\u043d\\u043d\\u0435\",menu:\"\\u0410\\u0434\\u043b\\u044e\\u0441\\u0442\\u0440\\u043e\\u045e\\u0432\\u0430\\u0446\\u044c \\u043c\\u0435\\u043d\\u044e\",loop:\"\\u041f\\u0430\\u045e\\u0442\\u043e\\u0440\",play:\"\\u041f\\u0440\\u0430\\u0439\\u0433\\u0440\\u0430\\u0432\\u0430\\u0446\\u044c \\u0430\\u045e\\u0442\\u0430\\u043c\\u0430\\u0442\\u044b\\u0447\\u043d\\u0430\",hspace:\"\\u0413\\u0430\\u0440. \\u0432\\u043e\\u0434\\u0441\\u0442\\u0443\\u043f\",vspace:\"\\u0412\\u0435\\u0440\\u0442. \\u0432\\u043e\\u0434\\u0441\\u0442\\u0443\\u043f\",\"class_name\":\"\\u041a\\u043b\\u0430\\u0441\",name:\"\\u041d\\u0430\\u0437\\u0432\\u0430\",id:\"\\u0406\\u0434\\u044d\\u043d\\u0442\\u044b\\u0444\\u0456\\u043a\\u0430\\u0442\\u0430\\u0440\",type:\"\\u0422\\u044b\\u043f\",size:\"\\u041f\\u0430\\u043c\\u0435\\u0440\\u044b\",preview:\"\\u041f\\u0430\\u043f\\u044f\\u0440\\u044d\\u0434\\u043d\\u0456 \\u043f\\u0440\\u0430\\u0433\\u043b\\u044f\\u0434\",\"constrain_proportions\":\"\\u0417\\u0430\\u0445\\u043e\\u045e\\u0432\\u0430\\u0446\\u044c \\u043f\\u0440\\u0430\\u043f\\u043e\\u0440\\u0446\\u044b\\u0456\",controls:\"\\u041a\\u0456\\u0440\\u0430\\u0432\\u0430\\u043d\\u043d\\u0435\",numloop:\"\\u041f\\u0430\\u045e\\u0442\\u043e\\u0440\\u044b\",console:\"\\u041a\\u0430\\u043d\\u0441\\u043e\\u043b\\u044c\",cache:\"\\u041a\\u044d\\u0448\",autohref:\"\\u0410\\u045e\\u0442\\u0430-\\u0441\\u043f\\u0430\\u0441\\u044b\\u043b\\u043a\\u0430\",liveconnect:\"SWLiveConnect\",flashvars:\"Flash \\u043a\\u0430\\u043c\\u0430\\u043d\\u0434\\u044b\",base:\"\\u0410\\u0441\\u043d\\u043e\\u0432\\u0430\",bgcolor:\"\\u0424\\u043e\\u043d\",wmode:\"\\u0410\\u043a\\u043d\\u043e\",salign:\"\\u0412\\u044b\\u0440-\\u043d\\u0435\",align:\"\\u0412\\u044b\\u0440\\u0430\\u045e\\u043d\\u043e\\u045e\\u0432\\u0430\\u043d\\u043d\\u0435\",scale:\"\\u041c\\u0430\\u0448\\u0442\\u0430\\u0431\",quality:\"\\u042f\\u043a\\u0430\\u0441\\u0446\\u044c\",shuffle:\"\\u0423\\u0440\\u043e\\u0441\\u043a\\u0456\\u0434\",prefetch:\"\\u041f\\u0430\\u043f\\u0435\\u0440\\u0430\\u0434\\u0436\\u0430\\u043b\\u044c\\u043d\\u0430\\u044f \\u0432\\u044b\\u0431\\u0430\\u0440\\u043a\\u0430\",nojava:\"\\u0411\\u0435\\u0437 Java\",maintainaspect:\"\\u0417\\u0430\\u043f\\u043e\\u043c\\u043d\\u0456\\u0446\\u044c \\u043f\\u0430\\u043c\\u0435\\u0440\",imagestatus:\"\\u0421\\u0442\\u0430\\u0442\\u0443\\u0441 \\u043c\\u0430\\u043b\\u044e\\u043d\\u043a\\u0430\",center:\"\\u0426\\u044d\\u043d\\u0442\\u0440\",autogotourl:\"\\u0410\\u045e\\u0442\\u0430\\u043f\\u0435\\u0440\\u0430\\u0445\\u043e\\u0434 \\u043f\\u0430 \\u0430\\u0434\\u0440\\u0430\\u0441\\u0443\",\"shockwave_options\":\"\\u041e\\u043f\\u0446\\u044b\\u0456 Shockwave\",\"rmp_options\":\"\\u041e\\u043f\\u0446\\u044b\\u0456 Real Media Player\",\"wmp_options\":\"\\u041e\\u043f\\u0446\\u044b\\u0456 Windows Media Player\",\"qt_options\":\"\\u041e\\u043f\\u0446\\u044b\\u0456 QuickTime\",\"flash_options\":\"\\u041e\\u043f\\u0446\\u044b\\u0456 Flash\",hidden:\"\\u0421\\u0445\\u0430\\u0432\\u0430\\u043d\\u044b\",\"align_bottom_left\":\"\\u041f\\u0430 \\u043b\\u0435\\u0432\\u0430\\u043c\\u0443 \\u043d\\u0456\\u0436\\u043d\\u044f\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"align_bottom_right\":\"\\u041f\\u0430 \\u043f\\u0440\\u0430\\u0432\\u0430\\u043c\\u0443 \\u043d\\u0456\\u0436\\u043d\\u044f\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",flash:\"\\u0423\\u0441\\u0442\\u0430\\u045e\\u043a\\u0430 flash \\u0444\\u0430\\u0439\\u043b\\u0430\",quicktime:\"\\u0423\\u0441\\u0442\\u0430\\u045e\\u043a\\u0430 quicktime \\u0444\\u0430\\u0439\\u043b\\u0430\",\"embedded_audio_options\":\"\\u041e\\u043f\\u0446\\u044b\\u0456 \\u045e\\u043a\\u0430\\u0440\\u0430\\u043d\\u0451\\u043d\\u0430\\u0433\\u0430 \\u0430\\u045e\\u0434\\u044b\\u0451\",windowsmedia:\"\\u0423\\u0441\\u0442\\u0430\\u045e\\u043a\\u0430 windowsmedia \\u0444\\u0430\\u0439\\u043b\\u0430\",realmedia:\"\\u0423\\u0441\\u0442\\u0430\\u045e\\u043a\\u0430 realmedia \\u0444\\u0430\\u0439\\u043b\\u0430\",shockwave:\"\\u0423\\u0441\\u0442\\u0430\\u045e\\u043a\\u0430 shockwave \\u0444\\u0430\\u0439\\u043b\\u0430\",audio:\"\\u0423\\u0441\\u0442\\u0430\\u045e\\u043a\\u0430 \\u0430\\u045e\\u0434\\u044b\\u0451 \\u0444\\u0430\\u0439\\u043b\\u0430\",video:\"\\u0423\\u0441\\u0442\\u0430\\u045e\\u043a\\u0430 \\u0432\\u0456\\u0434\\u044d\\u0430 \\u0444\\u0430\\u0439\\u043b\\u0430\",\"html5_video_options\":\"\\u041e\\u043f\\u0446\\u044b\\u0456 HTML5 Video\",altsource1:\"\\u0410\\u043b\\u044c\\u0442\\u044d\\u0440\\u043d\\u0430\\u0442\\u044b\\u045e\\u043d\\u0430\\u044f \\u043a\\u0440\\u044b\\u043d\\u0456\\u0446\\u0430 1\",altsource2:\"\\u0410\\u043b\\u044c\\u0442\\u044d\\u0440\\u043d\\u0430\\u0442\\u044b\\u045e\\u043d\\u0430\\u044f \\u043a\\u0440\\u044b\\u043d\\u0456\\u0446\\u0430 2\",preload:\"\\u041f\\u0430\\u043f\\u044f\\u0440\\u044d\\u0434\\u043d\\u044f\\u044f \\u0437\\u0430\\u0433\\u0440\\u0443\\u0437\\u043a\\u0430\",poster:\"\\u041f\\u043e\\u0441\\u0442\\u044d\\u0440\",source:\"\\u041a\\u0440\\u044b\\u043d\\u0456\\u0446\\u0430\",\"html5_audio_options\":\"\\u041e\\u043f\\u0446\\u044b\\u0456 \\u0430\\u045e\\u0434\\u044b\\u0451\",\"preload_none\":\"\\u0411\\u0435\\u0437 \\u043f\\u0430\\u043f\\u044f\\u0440\\u044d\\u0434\\u043d\\u044f\\u0439 \\u0437\\u0430\\u0433\\u0440\\u0443\\u0437\\u043a\\u0456\",\"preload_metadata\":\"\\u041f\\u0430\\u043f\\u044f\\u0440\\u044d\\u0434\\u043d\\u044f\\u044f \\u0437\\u0430\\u0433\\u0440\\u0443\\u0437\\u043a\\u0430 \\u043c\\u0435\\u0442\\u0430\\u0434\\u0430\\u043d\\u044b\\u0445 \\u0432\\u0456\\u0434\\u044d\\u0430\",\"preload_auto\":\"\\u041d\\u0430 \\u043c\\u0435\\u0440\\u043a\\u0430\\u0432\\u0430\\u043d\\u043d\\u0435 \\u0431\\u0440\\u0430\\u045e\\u0437\\u0435\\u0440\\u0430\",iframe:\"\\u0423\\u0441\\u0442\\u0430\\u045e\\u043a\\u0430 iframe \\u0444\\u0430\\u0439\\u043b\\u0430\",embeddedaudio:\"\\u0423\\u0441\\u0442\\u0430\\u045e\\u043a\\u0430 embeddedaudio \\u0444\\u0430\\u0439\\u043b\\u0430\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/cs_dlg.js",
    "content": "tinyMCE.addI18n('cs.media_dlg',{list:\"Seznam\",file:\"Soubor/URL\",advanced:\"Roz\\u0161\\u00ed\\u0159en\\u00e9\",general:\"Obecn\\u00e9\",title:\"Vlo\\u017eit/upravit vkl\\u00e1dan\\u00e1 m\\u00e9dia\",align_top_left:\"Nahoru vlevo\",align_center:\"Na st\\u0159ed\",align_left:\"Vlevo\",align_bottom:\"Dol\\u016f\",align_right:\"Vpravo\",align_top:\"Nahoru\",qt_stream_warn:\"Streamovan\\u00e9 rtsp zdroje mohou b\\u00fdt p\\u0159id\\u00e1ny do pole \\'Soubor/URL streamu pro QT\\' na z\\u00e1lo\\u017ece \\'Roz\\u0161\\u00ed\\u0159en\\u00e9\\'.\\\\nYM\\u016f\\u017eete tak\\u00e9 p\\u0159idat nestreamovanou verzi do pole \\'Soubor/URL\\'.\",qtsrc:\"Soubor/URL streamu pro QT\",progress:\"Pr\\u016fb\\u011bh\",sound:\"Zvuk\",swstretchvalign:\"Zarovn\\u00e1n\\u00ed vert. rozta\\u017een\\u00ed\",swstretchhalign:\"Zarovn\\u00e1n\\u00ed horiz. rozta\\u017een\\u00ed\",swstretchstyle:\"Styl rozta\\u017een\\u00ed\",scriptcallbacks:\"Skripty zp\\u011btn\\u00fdch vol\\u00e1n\\u00ed\",align_top_right:\"Nahoru vpravo\",uimode:\"Re\\u017eim ovl\\u00e1dac\\u00edho panelu\",rate:\"Relativn\\u00ed rychlost\",playcount:\"Po\\u010det p\\u0159ehr\\u00e1n\\u00ed\",defaultframe:\"V\\u00fdchoz\\u00ed sn\\u00edmek\",currentposition:\"Aktu\\u00e1ln\\u00ed pozice\",currentmarker:\"Aktu\\u00e1ln\\u00ed z\\u00e1lo\\u017eka\",captioningid:\"ID popisku m\\u00e9dia\",baseurl:\"Z\\u00e1kladn\\u00ed URL\",balance:\"Vyv\\u00e1\\u017een\\u00ed\",windowlessvideo:\"Video bez okna\",stretchtofit:\"Rozt\\u00e1hnout do okna\",mute:\"Ztlumit\",invokeurls:\"Po\\u017eadovat URL\",fullscreen:\"Cel\\u00e1 obrazovka\",enabled:\"Povolit ovl\\u00e1dac\\u00ed panel\",autostart:\"Automatick\\u00e9 spu\\u0161t\\u011bn\\u00ed\",volume:\"Hlasitost\",target:\"C\\u00edl\",qtsrcchokespeed:\"Sn\\u00ed\\u017een\\u00ed rychlosti\",href:\"Odkaz\",endtime:\"\\u010cas ukon\\u010den\\u00ed\",starttime:\"Po\\u010d\\u00e1te\\u010dn\\u00ed \\u010das\",enablejavascript:\"Povolit Javascript\",correction:\"Bez korekc\\u00ed\",targetcache:\"C\\u00edlov\\u00e1 mezipam\\u011b\\u0165\",playeveryframe:\"P\\u0159ehr\\u00e1t ka\\u017ed\\u00fd sn\\u00edmek\",kioskmode:\"Zak\\u00e1zat ukl\\u00e1d\\u00e1n\\u00ed\",controller:\"Ovl\\u00e1dac\\u00ed panel\",menu:\"Zobrazit nab\\u00eddku\",loop:\"Opakov\\u00e1n\\u00ed\",play:\"Automatick\\u00e9 p\\u0159ehr\\u00e1v\\u00e1n\\u00ed\",hspace:\"Horizont\\u00e1ln\\u00ed odsazen\\u00ed\",vspace:\"Vertik\\u00e1ln\\u00ed odsazen\\u00ed\",class_name:\"T\\u0159\\u00edda\",name:\"N\\u00e1zev\",id:\"ID\",type:\"Typ\",size:\"Rozm\\u011bry\",preview:\"N\\u00e1hled\",constrain_proportions:\"Zachovat proporce\",controls:\"Ovl\\u00e1dac\\u00ed panel\",numloop:\"Po\\u010det opakov\\u00e1n\\u00ed\",console:\"Konzola\",cache:\"Mezipam\\u011b\\u0165\",autohref:\"Automatick\\u00e9 na\\u010dten\\u00ed\",liveconnect:\"Spustit Javu (SWLiveConnect)\",flashvars:\"Parametry (Flashvars)\",base:\"Z\\u00e1kladn\\u00ed slo\\u017eka\",bgcolor:\"Pozad\\u00ed\",wmode:\"Re\\u017eim okna\",salign:\"Zarovn\\u00e1n\\u00ed okna\",align:\"Zarovn\\u00e1n\\u00ed\",scale:\"Pom\\u011br\",quality:\"Kvalita\",shuffle:\"N\\u00e1hodn\\u011b\",prefetch:\"P\\u0159edna\\u010dten\\u00ed\",nojava:\"Nespout\\u011bt Javu\",maintainaspect:\"Zachovat pom\\u011br stran\",imagestatus:\"Stav obrazu\",center:\"Na st\\u0159ed\",autogotourl:\"Automatick\\u00fd p\\u0159echod na URL\",shockwave_options:\"Mo\\u017enosti Shockwave\",rmp_options:\"Mo\\u017enosti p\\u0159ehr\\u00e1va\\u010de Real media\",wmp_options:\"Mo\\u017enosti p\\u0159ehr\\u00e1va\\u010de Windows media\",qt_options:\"Mo\\u017enosti Quicktime\",flash_options:\"Mo\\u017enosti Flashe\",hidden:\"Skr\\u00fdt\",align_bottom_left:\"Dol\\u016f vlevo\",align_bottom_right:\"Dol\\u016f vpravo\",flv_options:\"Mo\\u017enosti Flash video\",flv_scalemode:\"Zm\\u011bna velikosti\",flv_buffer:\"Z\\u00e1sobn\\u00edk\",flv_startimage:\"Po\\u010d\\u00e1te\\u010dn\\u00ed obr\\u00e1zek\",flv_starttime:\"Po\\u010d\\u00e1te\\u010dn\\u00ed \\u010das\",flv_defaultvolume:\"V\\u00fdchoz\\u00ed hlasitost\",flv_hiddengui:\"Skryt\\u00fd ovl\\u00e1dac\\u00ed panel\",flv_autostart:\"Automatick\\u00e9 spu\\u0161t\\u011bn\\u00ed\",flv_loop:\"Opakov\\u00e1n\\u00ed\",flv_showscalemodes:\"Zobrazit volby zm\\u011bny velikosti\",flv_smoothvideo:\"Vyhlazen\\u00e9 video\",flv_jscallback:\"Zp\\u011btn\\u00e9 vol\\u00e1n\\u00ed Javascriptu\",html5_video_options:\"Mo\\u017enosti HTML5 video\",altsource1:\"Alternativn\\u00ed zdroj 1\",altsource2:\"Alternativn\\u00ed zdroj 2\",preload:\"P\\u0159edna\\u010d\\u00edst\",poster:\"Obr\\u00e1zek (zobraz\\u00ed se p\\u0159i nedostupnosti videa)\",source:\"Zdroj\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/da_dlg.js",
    "content": "tinyMCE.addI18n('da.media_dlg',{list:\"Liste\",file:\"Fil/URL\",advanced:\"Avanceret\",general:\"Generelt\",title:\"Inds\\u00e6t/rediger indlejret mediefil\",\"align_top_left\":\"\\u00d8verste venstre hj\\u00f8rne\",\"align_center\":\"Centreret\",\"align_left\":\"Venstre\",\"align_bottom\":\"Bund\",\"align_right\":\"H\\u00f8jret\",\"align_top\":\"Top\",\"qt_stream_warn\":\"Streamede rtsp resourcer skal tilf\\u00f8jes til QT Src feltet under tabben avanceret.\\nDu skal ogs\\u00e5 tilf\\u00f8je en ikke streamet version til Src feltet..\",qtsrc:\"QT Src\",progress:\"Fremskridt\",sound:\"Lyd\",swstretchvalign:\"Str\\u00e6k V-justering\",swstretchhalign:\"Str\\u00e6k H-justering\",swstretchstyle:\"Str\\u00e6k stil\",scriptcallbacks:\"Script callbacks\",\"align_top_right\":\"\\u00d8verste h\\u00f8jre hj\\u00f8rne\",uimode:\"UI-tilstand\",rate:\"Vurder\",playcount:\"Afspil indhold\",defaultframe:\"Standard ramme\",currentposition:\"Aktuel position\",currentmarker:\"Aktuel mark\\u00f8r\",captioningid:\"Captioning id\",baseurl:\"Base URL\",balance:\"Balance\",windowlessvideo:\"Vinduesl\\u00f8s video\",stretchtofit:\"Str\\u00e6k for at tilpasse\",mute:\"Lydl\\u00f8s\",invokeurls:\"Aktiver URL\\'er\",fullscreen:\"Fuldsk\\u00e6rm\",enabled:\"Valgt\",autostart:\"Afspil automatisk\",volume:\"Lydstyrke\",target:\"M\\u00e5l\",qtsrcchokespeed:\"Choke-hastighed\",href:\"Href\",endtime:\"Sluttidspunkt\",starttime:\"Starttidspunkt\",enablejavascript:\"Tillad JavaScript\",correction:\"Ingen korrektion\",targetcache:\"M\\u00e5l-cache\",playeveryframe:\"Afsplil alle rammer\",kioskmode:\"Kiosk-tilstand\",controller:\"Controller\",menu:\"Vis menu\",loop:\"Gentag\",play:\"Start\",hspace:\"H-afstand\",vspace:\"V-afstand\",\"class_name\":\"Klasse\",name:\"Navn\",id:\"Id\",type:\"Type\",size:\"Dimensioner\",preview:\"Vis udskrift\",\"constrain_proportions\":\"Bevar proportioner\",controls:\"Kontroller\",numloop:\"Antal loops\",console:\"Konsol\",cache:\"Cache\",autohref:\"AutoHREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Flashvars\",base:\"Base\",bgcolor:\"Baggrund\",wmode:\"WMode\",salign:\"SAlign\",align:\"Juster\",scale:\"Skaler\",quality:\"Kvalitet\",shuffle:\"Bland\",prefetch:\"Forh\\u00e5ndshent\",nojava:\"Ingen java\",maintainaspect:\"Bevar aspekt\",imagestatus:\"Billedstatus\",center:\"Center\",autogotourl:\"Auto g\\u00e5 til URL\",\"shockwave_options\":\"Shockwave options\",\"rmp_options\":\"Real media player egenskaber\",\"wmp_options\":\"Windows media player egenskaber\",\"qt_options\":\"Quicktime egenskaber\",\"flash_options\":\"Flash egenskaber\",hidden:\"Skjul\",\"align_bottom_left\":\"Nederste venstre hj\\u00f8rne\",\"align_bottom_right\":\"\\u00d8verste h\\u00f8jre hj\\u00f8rne\",flash:\"Flash\",quicktime:\"Quicktime\",\"embedded_audio_options\":\"Indstillinger for indlejret audio\",windowsmedia:\"Windows Media\",realmedia:\"Realmedia\",shockwave:\"Shockwave\",audio:\"Lyd\",video:\"Video\",\"html5_video_options\":\"HTML5 Video Indstillinger\",altsource1:\"Alternativ kilde 1\",altsource2:\"Alternativ kilde 2\",preload:\"Forudindl\\u00e6s\",poster:\"Poster\",source:\"Kilde\",\"html5_audio_options\":\"Audio indstillinger\",\"preload_none\":\"Preindl\\u00e6s ikke\",\"preload_metadata\":\"Preindl\\u00e6s video metadata\",\"preload_auto\":\"Lad brugerens browser v\\u00e6lge\",iframe:\"iframe\",embeddedaudio:\"Indlejret lyd\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/de_dlg.js",
    "content": "tinyMCE.addI18n('de.media_dlg',{list:\"Liste\",file:\"Datei/URL\",advanced:\"Erweitert\",general:\"Allgemein\",title:\"Multimedia-Inhalte einf\\u00fcgen/bearbeiten\",align_top_left:\"Oben Links\",align_center:\"Zentriert\",align_left:\"Links\",align_bottom:\"Unten\",align_right:\"Rechts\",align_top:\"Oben\",qt_stream_warn:\"In den Erweiterten Einstellungen sollten im Feld \\'QT Src\\' gestreamte RTSP Resourcen hinzugef\\u00fcgt werden.\\\\nZus\\u00e4tzlich sollten Sie dort auch eine nicht-gestreamte Resource angeben.\",qtsrc:\"Angabe zu QT Src\",progress:\"Fortschritt\",sound:\"Ton\",swstretchvalign:\"Stretch V-Ausrichtung\",swstretchhalign:\"Stretch H-Ausrichtung\",swstretchstyle:\"Stretch-Art\",scriptcallbacks:\"Script callbacks\",align_top_right:\"Oben Rechts\",uimode:\"UI Modus\",rate:\"Rate\",playcount:\"Z\\u00e4hler\",defaultframe:\"Frame-Voreinstellung\",currentposition:\"Aktuelle Position\",currentmarker:\"Aktueller Marker\",captioningid:\"Captioning id\",baseurl:\"Base URL\",balance:\"Balance\",windowlessvideo:\"Fensterloses Video\",stretchtofit:\"Anzeigefl\\u00e4che an verf\\u00fcgbaren Platz anpassen\",mute:\"Stumm\",invokeurls:\"Invoke URLs\",fullscreen:\"Vollbild\",enabled:\"Aktiviert\",autostart:\"Autostart\",volume:\"Lautst\\u00e4rke\",target:\"Ziel\",qtsrcchokespeed:\"Choke speed\",href:\"Href\",endtime:\"Endzeitpunkt\",starttime:\"Startzeitpunkt\",enablejavascript:\"JavaScript aktivieren\",correction:\"Ohne Korrektur\",targetcache:\"Ziel zwischenspeichern\",playeveryframe:\"Jeden Frame abspielen\",kioskmode:\"Kioskmodus\",controller:\"Controller\",menu:\"Men\\u00fc anzeigen\",loop:\"Wiederholung\",play:\"Automatisches Abspielen\",hspace:\"Horizontaler Abstand\",vspace:\"Vertikaler Abstand\",class_name:\"CSS-Klasse\",name:\"Name\",id:\"Id\",type:\"Typ\",size:\"Abmessungen\",preview:\"Vorschau\",constrain_proportions:\"Proportionen erhalten\",controls:\"Steuerung\",numloop:\"Anzahl Wiederholungen\",console:\"Konsole\",cache:\"Zwischenspeicher\",autohref:\"AutoHREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Flashvariablen\",base:\"Base\",bgcolor:\"Hintergrund\",wmode:\"WMode\",salign:\"S-Ausrichtung\",align:\"Ausrichtung\",scale:\"Skalierung\",quality:\"Qualit\\u00e4t\",shuffle:\"Zuf\\u00e4llige Wiedergabe\",prefetch:\"Prefetch\",nojava:\"Kein Java\",maintainaspect:\"Bildverh\\u00e4ltnis beibehalten\",imagestatus:\"Bildstatus\",center:\"Zentriert\",autogotourl:\"Auto goto URL\",shockwave_options:\"Shockwave-Optionen\",rmp_options:\"Optionen f\\u00fcr Real Media Player\",wmp_options:\"Optionen f\\u00fcr Windows Media Player\",qt_options:\"Quicktime-Optionen\",flash_options:\"Flash-Optionen\",hidden:\"Versteckt\",align_bottom_left:\"Unten Links\",align_bottom_right:\"Unten Rechts\",flv_options:\"Optionen f\\u00fcr Flash Video\",flv_scalemode:\"Skalierungsmodus\",flv_buffer:\"Puffer\",flv_startimage:\"Startbild\",flv_starttime:\"Startzeitpunkt\",flv_defaultvolume:\"Standardlautst\\u00e4rke\",flv_hiddengui:\"Versteckte GUI\",flv_autostart:\"Autostart\",flv_loop:\"Wiederholung\",flv_showscalemodes:\"Skalierungsmodi anzeigen\",flv_smoothvideo:\"Smooth Video\",flv_jscallback:\"JS Callback\",html5_video_options:\"HTML5 Video Optionen\",altsource1:\"Alternative Quelle 1\",altsource2:\"Alternative Quelle 2\",preload:\"Preload\",poster:\"Poster\",source:\"Quelle\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/el_dlg.js",
    "content": "tinyMCE.addI18n('el.media_dlg',{list:\"\\u039b\\u03af\\u03c3\\u03c4\\u03b1\",file:\"\\u0391\\u03c1\\u03c7\\u03b5\\u03af\\u03bf/URL\",advanced:\"\\u0393\\u03b9\\u03b1 \\u03c0\\u03c1\\u03bf\\u03c7\\u03c9\\u03c1\\u03b7\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5\\u03c2\",general:\"\\u0393\\u03b5\\u03bd\\u03b9\\u03ba\\u03ac\",title:\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae/\\u03b5\\u03c0\\u03b5\\u03be\\u03b5\\u03c1\\u03b3\\u03b1\\u03c3\\u03af\\u03b1 \\u03b5\\u03bd\\u03c3\\u03c9\\u03bc\\u03b1\\u03c4\\u03c9\\u03bc\\u03ad\\u03bd\\u03c9\\u03bd media\",\"align_top_left\":\"\\u03a0\\u03ac\\u03bd\\u03c9 \\u03b1\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac\",\"align_center\":\"\\u039a\\u03ad\\u03bd\\u03c4\\u03c1\\u03bf\",\"align_left\":\"\\u0391\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac\",\"align_bottom\":\"\\u039a\\u03ac\\u03c4\\u03c9\",\"align_right\":\"\\u0394\\u03b5\\u03be\\u03b9\\u03ac\",\"align_top\":\"\\u03a0\\u03ac\\u03bd\\u03c9\",\"qt_stream_warn\":\"\\u03a0\\u03b7\\u03b3\\u03ad\\u03c2 \\u03c1\\u03bf\\u03ce\\u03bd rtsp \\u03b8\\u03b1 \\u03c0\\u03c1\\u03ad\\u03c0\\u03b5\\u03b9 \\u03bd\\u03b1 \\u03c0\\u03c1\\u03bf\\u03c3\\u03c4\\u03b5\\u03b8\\u03bf\\u03cd\\u03bd \\u03c3\\u03c4\\u03bf \\u03c0\\u03b5\\u03b4\\u03af\\u03bf \\u03a0\\u03b7\\u03b3\\u03ae QT \\u03ba\\u03ac\\u03c4\\u03c9 \\u03b1\\u03c0\\u03cc \\u03c4\\u03b7\\u03bd \\u03ba\\u03b1\\u03c1\\u03c4\\u03ad\\u03bb\\u03b1 \\u0393\\u03b9\\u03b1 \\u03c0\\u03c1\\u03bf\\u03c7\\u03c9\\u03c1\\u03b7\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5\\u03c2.\\n\\u0395\\u03c0\\u03af\\u03c3\\u03b7\\u03c2 \\u03ba\\u03b1\\u03bb\\u03cc \\u03b8\\u03b1 \\u03ae\\u03c4\\u03b1\\u03bd \\u03bd\\u03b1 \\u03c0\\u03c1\\u03bf\\u03c3\\u03b8\\u03ad\\u03c3\\u03b5\\u03c4\\u03b5 \\u03bc\\u03b9\\u03b1 \\u03b1\\u03c0\\u03bb\\u03ae (\\u03cc\\u03c7\\u03b9 \\u03c1\\u03bf\\u03ae\\u03c2) \\u03c0\\u03b7\\u03b3\\u03ae..\",qtsrc:\"\\u03a0\\u03b7\\u03b3\\u03ae \\u03b1\\u03c1\\u03c7\\u03b5\\u03af\\u03bf\\u03c5\",progress:\"\\u03a0\\u03c1\\u03cc\\u03bf\\u03b4\\u03bf\\u03c2\",sound:\"\\u0389\\u03c7\\u03bf\\u03c2\",swstretchvalign:\"\\u039a\\u03b1\\u03c4\\u03b1\\u03ba\\u03cc\\u03c1\\u03c5\\u03c6\\u03b7 \\u03b5\\u03c0\\u03ad\\u03ba\\u03c4\\u03b1\\u03c3\\u03b7\",swstretchhalign:\"\\u039f\\u03c1\\u03b9\\u03b6\\u03cc\\u03bd\\u03c4\\u03b9\\u03b1 \\u03b5\\u03c0\\u03ad\\u03ba\\u03c4\\u03b1\\u03c3\\u03b7\",swstretchstyle:\"\\u03a3\\u03c4\\u03c5\\u03bb \\u03b5\\u03c0\\u03ad\\u03ba\\u03c4\\u03b1\\u03c3\\u03b7\\u03c2\",scriptcallbacks:\"Script callbacks\",\"align_top_right\":\"\\u03a0\\u03ac\\u03bd\\u03c9 \\u03b4\\u03b5\\u03be\\u03b9\\u03ac\",uimode:\"\\u039b\\u03b5\\u03b9\\u03c4\\u03bf\\u03c5\\u03c1\\u03b3\\u03af\\u03b1 UI\",rate:\"\\u03a1\\u03c5\\u03b8\\u03bc\\u03cc\\u03c2\",playcount:\"\\u03a0\\u03cc\\u03c3\\u03b5\\u03c2 \\u03c6\\u03bf\\u03c1\\u03ad\\u03c2 \\u03b8\\u03b1 \\u03c0\\u03b1\\u03af\\u03be\\u03b5\\u03b9\",defaultframe:\"\\u03a0\\u03c1\\u03bf\\u03b5\\u03c0\\u03b9\\u03bb\\u03b5\\u03b3\\u03bc\\u03ad\\u03bd\\u03bf \\u03ba\\u03b1\\u03c1\\u03ad\",currentposition:\"\\u03a4\\u03c1\\u03ad\\u03c7\\u03bf\\u03c5\\u03c3\\u03b1 \\u03b8\\u03ad\\u03c3\\u03b7\",currentmarker:\"\\u03a4\\u03c1\\u03ad\\u03c7\\u03bf\\u03bd \\u03c3\\u03b7\\u03bc\\u03ac\\u03b4\\u03b9\",captioningid:\"Captioning id\",baseurl:\"URL \\u03b2\\u03ac\\u03c3\\u03b7\\u03c2\",balance:\"\\u0399\\u03c3\\u03bf\\u03c1\\u03c1\\u03bf\\u03c0\\u03af\\u03b1\",windowlessvideo:\"\\u0392\\u03af\\u03bd\\u03c4\\u03b5\\u03bf \\u03c7\\u03c9\\u03c1\\u03af\\u03c2 \\u03c0\\u03b1\\u03c1\\u03ac\\u03b8\\u03c5\\u03c1\\u03bf\",stretchtofit:\"\\u0395\\u03c0\\u03ad\\u03ba\\u03c4\\u03b1\\u03c3\\u03b7 \\u03ce\\u03c3\\u03c4\\u03b5 \\u03bd\\u03b1 \\u03c7\\u03c9\\u03c1\\u03ad\\u03c3\\u03b5\\u03b9\",mute:\"\\u03a3\\u03af\\u03b3\\u03b1\\u03c3\\u03b7\",invokeurls:\"\\u039a\\u03bb\\u03ae\\u03c3\\u03b7 URLs\",fullscreen:\"\\u03a0\\u03bb\\u03ae\\u03c1\\u03b7\\u03c2 \\u03bf\\u03b8\\u03cc\\u03bd\\u03b7\",enabled:\"\\u0395\\u03bd\\u03b5\\u03c1\\u03b3\\u03bf\\u03c0\\u03bf\\u03af\\u03b7\\u03c3\\u03b7\",autostart:\"\\u0391\\u03c5\\u03c4\\u03cc\\u03bc\\u03b1\\u03c4\\u03b7 \\u03b5\\u03ba\\u03ba\\u03af\\u03bd\\u03b7\\u03c3\\u03b7\",volume:\"\\u0388\\u03bd\\u03c4\\u03b1\\u03c3\\u03b7\",target:\"\\u03a3\\u03c4\\u03cc\\u03c7\\u03bf\\u03c2\",qtsrcchokespeed:\"Choke speed\",href:\"Href\",endtime:\"\\u03a7\\u03c1\\u03cc\\u03bd\\u03bf\\u03c2 \\u03bb\\u03ae\\u03be\\u03b7\\u03c2\",starttime:\"\\u03a7\\u03c1\\u03cc\\u03bd\\u03bf\\u03c2 \\u03ad\\u03bd\\u03b1\\u03c1\\u03be\\u03b7\\u03c2\",enablejavascript:\"\\u0395\\u03bd\\u03b5\\u03c1\\u03b3\\u03bf\\u03c0\\u03bf\\u03af\\u03b7\\u03c3\\u03b7 JavaScript\",correction:\"\\u03a7\\u03c9\\u03c1\\u03af\\u03c2 \\u03b4\\u03b9\\u03cc\\u03c1\\u03b8\\u03c9\\u03c3\\u03b7\",targetcache:\"\\u039c\\u03bd\\u03ae\\u03bc\\u03b7 cache \\u03c3\\u03c4\\u03cc\\u03c7\\u03bf\\u03c5\",playeveryframe:\"\\u03a0\\u03b1\\u03af\\u03be\\u03b9\\u03bc\\u03bf \\u03cc\\u03bb\\u03c9\\u03bd \\u03c4\\u03c9\\u03bd \\u03ba\\u03b1\\u03c1\\u03ad\",kioskmode:\"\\u039b\\u03b5\\u03b9\\u03c4\\u03bf\\u03c5\\u03c1\\u03b3\\u03af\\u03b1 Kiosk\",controller:\"\\u0395\\u03bb\\u03b5\\u03b3\\u03ba\\u03c4\\u03ae\\u03c2\",menu:\"\\u0395\\u03bc\\u03c6\\u03ac\\u03bd\\u03b9\\u03c3\\u03b7 \\u03bc\\u03b5\\u03bd\\u03bf\\u03cd\",loop:\"\\u0395\\u03c0\\u03b1\\u03bd\\u03ac\\u03bb\\u03b7\\u03c8\\u03b7\",play:\"\\u0391\\u03c5\\u03c4\\u03cc\\u03bc\\u03b1\\u03c4\\u03bf \\u03b5\\u03ba\\u03ba\\u03af\\u03bd\\u03b7\\u03c3\\u03b7\",hspace:\"\\u0391\\u03c0\\u03cc\\u03c3\\u03c4\\u03b1\\u03c3\\u03b7 \\u03bf\\u03c1\\u03b9\\u03b6\\u03cc\\u03bd\\u03c4\\u03b9\\u03b1\",vspace:\"\\u0391\\u03c0\\u03cc\\u03c3\\u03c4\\u03b1\\u03c3\\u03b7 \\u03ba\\u03ac\\u03b8\\u03b5\\u03c4\\u03b7\",\"class_name\":\"\\u039a\\u03bb\\u03ac\\u03c3\\u03b7\",name:\"\\u038c\\u03bd\\u03bf\\u03bc\\u03b1\",id:\"Id\",type:\"\\u03a4\\u03cd\\u03c0\\u03bf\\u03c2\",size:\"\\u0394\\u03b9\\u03b1\\u03c3\\u03c4\\u03ac\\u03c3\\u03b5\\u03b9\\u03c2\",preview:\"\\u03a0\\u03c1\\u03bf\\u03b5\\u03c0\\u03b9\\u03c3\\u03ba\\u03cc\\u03c0\\u03b7\\u03c3\\u03b7\",\"constrain_proportions\":\"\\u0394\\u03b9\\u03b1\\u03c4\\u03ae\\u03c1\\u03b7\\u03c3\\u03b7 \\u03b1\\u03bd\\u03b1\\u03bb\\u03bf\\u03b3\\u03af\\u03b1\\u03c2 \\u03c0\\u03bb. - \\u03cd\\u03c8\\u03bf\\u03c5\\u03c2\",controls:\"\\u03a7\\u03b5\\u03b9\\u03c1\\u03b9\\u03c3\\u03c4\\u03ae\\u03c1\\u03b9\\u03b1\",numloop:\"\\u03a0\\u03cc\\u03c3\\u03b5\\u03c2 \\u03c6\\u03bf\\u03c1\\u03ad\\u03c2 \\u03b8\\u03b1 \\u03c0\\u03b1\\u03af\\u03be\\u03b5\\u03b9\",console:\"\\u039a\\u03bf\\u03bd\\u03c3\\u03cc\\u03bb\\u03b1\",cache:\"\\u039c\\u03bd\\u03ae\\u03bc\\u03b7 cache\",autohref:\"AutoHREF\",liveconnect:\"SWLiveConnect\",flashvars:\"\\u039c\\u03b5\\u03c4\\u03b1\\u03b2\\u03bb\\u03b7\\u03c4\\u03ad\\u03c2 Flash\",base:\"\\u0392\\u03ac\\u03c3\\u03b7\",bgcolor:\"\\u03a6\\u03cc\\u03bd\\u03c4\\u03bf\",wmode:\"WMode\",salign:\"SAlign\",align:\"\\u03a3\\u03c4\\u03bf\\u03af\\u03c7\\u03b9\\u03c3\\u03b7\",scale:\"\\u039a\\u03bb\\u03af\\u03bc\\u03b1\\u03ba\\u03b1\",quality:\"\\u03a0\\u03bf\\u03b9\\u03cc\\u03c4\\u03b7\\u03c4\\u03b1\",shuffle:\"\\u03a4\\u03c5\\u03c7\\u03b1\\u03af\\u03b1 \\u03c3\\u03b5\\u03b9\\u03c1\\u03ac\",prefetch:\"\\u03a0\\u03c1\\u03bf\\u03c6\\u03cc\\u03c1\\u03c4\\u03c9\\u03c3\\u03b7\",nojava:\"\\u03a7\\u03c9\\u03c1\\u03af\\u03c2 java\",maintainaspect:\"\\u0394\\u03b9\\u03b1\\u03c4\\u03ae\\u03c1\\u03b7\\u03c3\\u03b7 \\u03b1\\u03bd\\u03b1\\u03bb\\u03bf\\u03b3\\u03af\\u03b1\\u03c2 \\u03c0\\u03bb. - \\u03cd\\u03c8\\u03bf\\u03c5\\u03c2\",imagestatus:\"\\u039a\\u03b1\\u03c4\\u03ac\\u03c3\\u03c4\\u03b1\\u03c3\\u03b7 \\u03b5\\u03b9\\u03ba\\u03cc\\u03bd\\u03b1\\u03c2\",center:\"\\u039a\\u03ad\\u03bd\\u03c4\\u03c1\\u03bf\",autogotourl:\"\\u0391\\u03c5\\u03c4\\u03cc\\u03bc\\u03b1\\u03c4\\u03b7 \\u03bc\\u03b5\\u03c4\\u03ac\\u03b2\\u03b1\\u03c3\\u03b7 \\u03c3\\u03c4\\u03bf URL\",\"shockwave_options\":\"\\u0395\\u03c0\\u03b9\\u03bb\\u03bf\\u03b3\\u03ad\\u03c2 Shockwave\",\"rmp_options\":\"\\u0395\\u03c0\\u03b9\\u03bb\\u03bf\\u03b3\\u03ad\\u03c2 Real media player\",\"wmp_options\":\"\\u0395\\u03c0\\u03b9\\u03bb\\u03bf\\u03b3\\u03ad\\u03c2 Windows media player\",\"qt_options\":\"\\u0395\\u03c0\\u03b9\\u03bb\\u03bf\\u03b3\\u03ad\\u03c2 Quicktime\",\"flash_options\":\"\\u0395\\u03c0\\u03b9\\u03bb\\u03bf\\u03b3\\u03ad\\u03c2 Flash\",hidden:\"\\u039a\\u03c1\\u03c5\\u03c6\\u03cc\",\"align_bottom_left\":\"\\u039a\\u03ac\\u03c4\\u03c9 \\u03b1\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac\",\"align_bottom_right\":\"\\u039a\\u03ac\\u03c4\\u03c9 \\u03b4\\u03b5\\u03be\\u03b9\\u03ac\",\"html5_video_options\":\"\\u0395\\u03c0\\u03b9\\u03bb\\u03bf\\u03b3\\u03ad\\u03c2 HTML5 Video\",altsource1:\"\\u0395\\u03bd\\u03b1\\u03bb\\u03bb\\u03b1\\u03ba\\u03c4\\u03b9\\u03ba\\u03ae \\u03c0\\u03b7\\u03b3\\u03ae 1\",altsource2:\"\\u0395\\u03bd\\u03b1\\u03bb\\u03bb\\u03b1\\u03ba\\u03c4\\u03b9\\u03ba\\u03ae \\u03c0\\u03b7\\u03b3\\u03ae 2\",preload:\"\\u03a0\\u03c1\\u03bf\\u03c6\\u03cc\\u03c1\\u03c4\\u03c9\\u03c3\\u03b7\",poster:\"\\u0391\\u03c6\\u03af\\u03c3\\u03b1\",source:\"\\u03a0\\u03b7\\u03b3\\u03ae\",\"html5_audio_options\":\"\\u0395\\u03c0\\u03b9\\u03bb\\u03bf\\u03b3\\u03ad\\u03c2 \\u03ae\\u03c7\\u03bf\\u03c5\",flash:\"\",quicktime:\"\",\"embedded_audio_options\":\"Embedded Audio Options\",windowsmedia:\"\",realmedia:\"\",shockwave:\"\",audio:\"\",video:\"\",\"preload_none\":\"Don\\'t Preload\",\"preload_metadata\":\"Preload video metadata\",\"preload_auto\":\"Let user\\'s browser decide\",iframe:\"\",embeddedaudio:\"\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/en_dlg.js",
    "content": "tinyMCE.addI18n('en.media_dlg',{list:\"List\",file:\"File/URL\",advanced:\"Advanced\",general:\"General\",title:\"Insert/Edit Embedded Media\",\"align_top_left\":\"Top Left\",\"align_center\":\"Center\",\"align_left\":\"Left\",\"align_bottom\":\"Bottom\",\"align_right\":\"Right\",\"align_top\":\"Top\",\"qt_stream_warn\":\"Streamed RTSP resources should be added to the QT Source field under the Advanced tab.\\nYou should also add a non-streamed version to the Source field.\",qtsrc:\"QT Source\",progress:\"Progress\",sound:\"Sound\",swstretchvalign:\"Stretch V-Align\",swstretchhalign:\"Stretch H-Align\",swstretchstyle:\"Stretch Style\",scriptcallbacks:\"Script Callbacks\",\"align_top_right\":\"Top Right\",uimode:\"UI Mode\",rate:\"Rate\",playcount:\"Play Count\",defaultframe:\"Default Frame\",currentposition:\"Current Position\",currentmarker:\"Current Marker\",captioningid:\"Captioning ID\",baseurl:\"Base URL\",balance:\"Balance\",windowlessvideo:\"Windowless Video\",stretchtofit:\"Stretch to Fit\",mute:\"Mute\",invokeurls:\"Invoke URLs\",fullscreen:\"Full Screen\",enabled:\"Enabled\",autostart:\"Auto Start\",volume:\"Volume\",target:\"Target\",qtsrcchokespeed:\"Choke Speed\",href:\"HREF\",endtime:\"End Time\",starttime:\"Start Time\",enablejavascript:\"Enable JavaScript\",correction:\"No Correction\",targetcache:\"Target Cache\",playeveryframe:\"Play Every Frame\",kioskmode:\"Kiosk Mode\",controller:\"Controller\",menu:\"Show Menu\",loop:\"Loop\",play:\"Auto Play\",hspace:\"H-Space\",vspace:\"V-Space\",\"class_name\":\"Class\",name:\"Name\",id:\"ID\",type:\"Type\",size:\"Dimensions\",preview:\"Preview\",\"constrain_proportions\":\"Constrain Proportions\",controls:\"Controls\",numloop:\"Num Loops\",console:\"Console\",cache:\"Cache\",autohref:\"Auto HREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Flash Vars\",base:\"Base\",bgcolor:\"Background\",wmode:\"WMode\",salign:\"SAlign\",align:\"Align\",scale:\"Scale\",quality:\"Quality\",shuffle:\"Shuffle\",prefetch:\"Prefetch\",nojava:\"No Java\",maintainaspect:\"Maintain Aspect\",imagestatus:\"Image Status\",center:\"Center\",autogotourl:\"Auto Goto URL\",\"shockwave_options\":\"Shockwave Options\",\"rmp_options\":\"Real Media Player Options\",\"wmp_options\":\"Windows Media Player Options\",\"qt_options\":\"QuickTime Options\",\"flash_options\":\"Flash Options\",hidden:\"Hidden\",\"align_bottom_left\":\"Bottom Left\",\"align_bottom_right\":\"Bottom Right\",\"html5_video_options\":\"HTML5 Video Options\",altsource1:\"Alternative source 1\",altsource2:\"Alternative source 2\",preload:\"Preload\",poster:\"Poster\",source:\"Source\",\"html5_audio_options\":\"Audio Options\",\"preload_none\":\"Don\\'t Preload\",\"preload_metadata\":\"Preload video metadata\",\"preload_auto\":\"Let user\\'s browser decide\", \"embedded_audio_options\":\"Embedded Audio Options\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/es_dlg.js",
    "content": "tinyMCE.addI18n('es.media_dlg',{list:\"Lista\",file:\"Archivo/URL\",advanced:\"Avanzado\",general:\"General\",title:\"Insertar/editar medio embebido\",align_top_left:\"Arriba Izda.\",align_center:\"Centrado\",align_left:\"Izquierda\",align_bottom:\"Debajo\",align_right:\"Derecha\",align_top:\"Arriba\",qt_stream_warn:\"Los recursos rtsp de Streaming deber\\u00edan a\\u00f1adirse en el campo QT Src de la pesta\\u00f1a avanzada.\\\\nAdem\\u00e1s deber\\u00eda a\\u00f1adir una versi\\u00f3n no Streaming en el campo Src.\",qtsrc:\"QT Src\",progress:\"Progreso\",sound:\"Sonido\",swstretchvalign:\"Alin. V. Estiramiento\",swstretchhalign:\"Alin. H. Estiramiento\",swstretchstyle:\"Estilo estiramiento\",scriptcallbacks:\"Script callbacks\",align_top_right:\"Arriba Dcha.\",uimode:\"Modo UI\",rate:\"Ratio\",playcount:\"Cuantas reproducciones\",defaultframe:\"Frame predet.\",currentposition:\"Posici\\u00f3n actual\",currentmarker:\"Marcador actual\",captioningid:\"Captioning id\",baseurl:\"URL Base\",balance:\"Balance\",windowlessvideo:\"Video sin ventana\",stretchtofit:\"Estirar para ajustar\",mute:\"Silencio\",invokeurls:\"Invocar URLs\",fullscreen:\"Pantalla Completa\",enabled:\"Habilitado\",autostart:\"Comienzo Autom\\u00e1tico\",volume:\"Volumen\",target:\"Target\",qtsrcchokespeed:\"Vel. de choque\",href:\"Href\",endtime:\"Fin\",starttime:\"Inicio\",enablejavascript:\"Habilitar JavaScript\",correction:\"Sin correci\\u00f3n\",targetcache:\"Target cache\",playeveryframe:\"Reproducir todo los frames\",kioskmode:\"Kiosk mode\",controller:\"Controller\",menu:\"Mostrar Men\\u00fa\",loop:\"Repetitivo\",play:\"Comienzo Autom\\u00e1tico\",hspace:\"H-Space\",vspace:\"V-Space\",class_name:\"Clase\",name:\"Nombre\",id:\"Id\",type:\"Tipo\",size:\"Dimensiones\",preview:\"Vista Previa\",constrain_proportions:\"Bloquear relaci\\u00f3n de aspecto\",controls:\"Controles\",numloop:\"N\\u00fam. repeticiones\",console:\"Consola\",cache:\"Cach\\u00e9\",autohref:\"AutoHREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Flashvars\",base:\"Base\",bgcolor:\"Fondo\",wmode:\"WMode\",salign:\"SAlign\",align:\"Alineaci\\u00f3n\",scale:\"Scale\",quality:\"Calidad\",shuffle:\"Aleatorio\",prefetch:\"Preb\\u00fasqueda\",nojava:\"No java\",maintainaspect:\"Mantener aspecto\",imagestatus:\"Estado de imagen\",center:\"Centrado\",autogotourl:\"Ir a URL autom\\u00e1t.\",shockwave_options:\"Opciones Shockwave\",rmp_options:\"Opciones Real media player\",wmp_options:\"Opciones Windows media player\",qt_options:\"Opciones Quicktime\",flash_options:\"Opciones Flash\",hidden:\"Hidden\",align_bottom_left:\"Debajo Izda.\",align_bottom_right:\"Debajo Dcha.\",flv_options:\"Opciones Video Flash\",flv_scalemode:\"Modo escalado\",flv_buffer:\"Buffer\",flv_startimage:\"Imagen inicio\",flv_starttime:\"Tiempo inicio\",flv_defaultvolume:\"Volumen predet.\",flv_hiddengui:\"Ocultar GUI\",flv_autostart:\"Inicio auto.\",flv_loop:\"Repetitivo\",flv_showscalemodes:\"Mostrar modos escala\",flv_smoothvideo:\"Video suave\",flv_jscallback:\"JS Callback\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/fr_dlg.js",
    "content": "tinyMCE.addI18n('fr.media_dlg',{list:\"Liste\",file:\"Fichier / URL\",advanced:\"Avanc\\u00e9\",general:\"G\\u00e9n\\u00e9ral\",title:\"Ins\\u00e9rer / \\u00e9diter un fichier m\\u00e9dia\",align_top_left:\"En haut \\u00e0 gauche\",align_center:\"Centr\\u00e9\",align_left:\"Gauche\",align_bottom:\"Bas\",align_right:\"Droite\",align_top:\"Haut\",qt_stream_warn:\"Les ressources rtsp en streaming doivent \\u00eatre ajout\\u00e9es au champ \\u00ab Source QT \\u00bb dans l\\'onglet avanc\\u00e9.\\\\nVous devriez aussi ajouter une version n\\'\\u00e9tant pas en streaming au champ \\u00ab source QT \\u00bb.\",qtsrc:\"Source QT\",progress:\"Progression\",sound:\"Son\",swstretchvalign:\"Stretch vertical\",swstretchhalign:\"Stretch horizontal\",swstretchstyle:\"Stretch style\",scriptcallbacks:\"Callback de script\",align_top_right:\"En haut \\u00e0 droite\",uimode:\"Mode UI\",rate:\"Taux\",playcount:\"Compteur\",defaultframe:\"Image par d\\u00e9faut\",currentposition:\"Position actuelle\",currentmarker:\"Marqueur actuel\",captioningid:\"ID sous-titrage\",baseurl:\"Adresse de base\",balance:\"Balance\",windowlessvideo:\"Vid\\u00e9o sans fen\\u00eatre\",stretchtofit:\"\\u00c9tendre pour adapter la taille\",mute:\"Muet\",invokeurls:\"Invoquer URLs\",fullscreen:\"Plein \\u00e9cran\",enabled:\"Activ\\u00e9\",autostart:\"Lire automatiquement\",volume:\"Volume\",target:\"Cible\",qtsrcchokespeed:\"D\\u00e9bit maximum\",href:\"Href\",endtime:\"Fin\",starttime:\"D\\u00e9but\",enablejavascript:\"Activer le JavaScript\",correction:\"Pas de correction\",targetcache:\"Cache cible\",playeveryframe:\"Jouer toutes les images\",kioskmode:\"Mode kiosque\",controller:\"Contr\\u00f4leur\",menu:\"Afficher le menu\",loop:\"Lire en boucle\",play:\"Lecture automatique\",hspace:\"Espacement horizontal\",vspace:\"Espacement vertical\",class_name:\"Classe\",name:\"Nom\",id:\"Id\",type:\"Type\",size:\"Dimensions\",preview:\"Pr\\u00e9visualisation\",constrain_proportions:\"Conserver les proportions\",controls:\"Contr\\u00f4les\",numloop:\"Nombre de tours\",console:\"Console\",cache:\"Cache\",autohref:\"AutoHREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Variables flash\",base:\"Base\",bgcolor:\"Fond\",wmode:\"WMode\",salign:\"SAlign\",align:\"Alignement\",scale:\"\\u00c9chelle\",quality:\"Qualit\\u00e9\",shuffle:\"Al\\u00e9atoire\",prefetch:\"Pr\\u00e9chargement\",nojava:\"Pas java\",maintainaspect:\"Maintenir l\\'aspect\",imagestatus:\"Statut de l\\'image\",center:\"Centrer\",autogotourl:\"Aller automatiquement \\u00e0 l\\'URL\",shockwave_options:\"Options Shockwave\",rmp_options:\"Options Real media player\",wmp_options:\"Windows media player options\",qt_options:\"Options Quicktime\",flash_options:\"Options Flash\",hidden:\"Cach\\u00e9\",align_bottom_left:\"En bas \\u00e0 gauche\",align_bottom_right:\"En bas \\u00e0 droite\",flv_options:\"Options de la vid\\u00e9o Flash\",flv_scalemode:\"\\u00c9chelle\",flv_buffer:\"Tampon\",flv_startimage:\"Image de d\\u00e9marrage\",flv_starttime:\"Temps au d\\u00e9but\",flv_defaultvolume:\"Volume par d\\u00e9faut\",flv_hiddengui:\"Interface utilisateur cach\\u00e9e\",flv_autostart:\"D\\u00e9marrage automatique\",flv_loop:\"En boucle\",flv_showscalemodes:\"Montrer les diff\\u00e9rentes \\u00e9chelles\",flv_smoothvideo:\"Vid\\u00e9o adoucie\",flv_jscallback:\"Callback JavaScript\",html5_video_options:\"Options Vid\\u00e9o HTML 5\",altsource1:\"Source alternative 1\",altsource2:\"Source alternative 2\",preload:\"Pr\\u00e9chargement\",poster:\"Poster\",source:\"Source\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/he_dlg.js",
    "content": "tinyMCE.addI18n('he.media_dlg',{list:\"\\u05e8\\u05e9\\u05d9\\u05de\\u05d4\",file:\"\\u05db\\u05ea\\u05d5\\u05d1\\u05ea \\u05d4\\u05e7\\u05d5\\u05d1\\u05e5\",advanced:\"\\u05de\\u05ea\\u05e7\\u05d3\\u05dd\",general:\"\\u05db\\u05dc\\u05dc\\u05d9\",title:\"\\u05d4\\u05d5\\u05e1\\u05e4\\u05ea/\\u05e2\\u05e8\\u05d9\\u05db\\u05ea \\u05e1\\u05e8\\u05d8\\u05d5\\u05df\",\"align_top_left\":\"\\u05e9\\u05de\\u05d0\\u05dc \\u05dc\\u05de\\u05e2\\u05dc\\u05d4\",\"align_center\":\"\\u05de\\u05e8\\u05db\\u05d6\",\"align_left\":\"\\u05dc\\u05e9\\u05de\\u05d0\\u05dc\",\"align_bottom\":\"\\u05dc\\u05de\\u05d8\\u05d4\",\"align_right\":\"\\u05d9\\u05de\\u05d9\\u05df\",\"align_top\":\"\\u05dc\\u05de\\u05e2\\u05dc\\u05d4\",\"qt_stream_warn\":\"Streamed rtsp resources should be added to the QT Src field under the advanced tab.\\nYou should also add a non streamed version to the Src field..\",qtsrc:\"QT Src\",progress:\"\\u05d4\\u05ea\\u05e7\\u05d3\\u05de\\u05d5\\u05ea\",sound:\"\\u05e6\\u05dc\\u05d9\\u05dc\",swstretchvalign:\"Stretch V-Align\",swstretchhalign:\"Stretch H-Align\",swstretchstyle:\"Stretch style\",scriptcallbacks:\"Script callbacks\",\"align_top_right\":\"\\u05d9\\u05de\\u05d9\\u05df \\u05dc\\u05de\\u05e2\\u05dc\\u05d4\",uimode:\"\\u05de\\u05e6\\u05d1 \\u05ea\\u05e6\\u05d5\\u05d2\\u05d4\",rate:\"\\u05e7\\u05e6\\u05d1\",playcount:\"\\u05de\\u05e1\\u05e4\\u05e8 \\u05d4\\u05e9\\u05de\\u05e2\\u05d5\\u05ea\",defaultframe:\"\\u05e4\\u05e8\\u05d9\\u05d9\\u05dd \\u05d1\\u05e8\\u05d9\\u05e8\\u05ea \\u05de\\u05d7\\u05d3\\u05dc\",currentposition:\"\\u05de\\u05d9\\u05e7\\u05d5\\u05dd \\u05e0\\u05d5\\u05db\\u05d7\\u05d9\",currentmarker:\"\\u05e1\\u05de\\u05df \\u05e0\\u05d5\\u05db\\u05d7\\u05d9\",captioningid:\"Captioning id\",baseurl:\"Base URL\",balance:\"Balance\",windowlessvideo:\"Windowless video\",stretchtofit:\"\\u05de\\u05ea\\u05d7 \\u05dc\\u05d4\\u05ea\\u05d0\\u05de\\u05d4\",mute:\"\\u05d4\\u05e9\\u05ea\\u05e7\",invokeurls:\"Invoke URLs\",fullscreen:\"\\u05de\\u05e1\\u05da \\u05de\\u05dc\\u05d0\",enabled:\"\\u05de\\u05d5\\u05e4\\u05e2\\u05dc\",autostart:\"\\u05d4\\u05ea\\u05d7\\u05dc \\u05d0\\u05d5\\u05d8\\u05d5\\u05de\\u05d8\\u05d9\\u05ea\",volume:\"\\u05e2\\u05d5\\u05e6\\u05de\\u05d4\",target:\"\\u05de\\u05d8\\u05e8\\u05d4\",qtsrcchokespeed:\"Choke speed\",href:\"Href\",endtime:\"\\u05d6\\u05de\\u05df \\u05e1\\u05d9\\u05d5\\u05dd\",starttime:\"\\u05d6\\u05de\\u05df \\u05d4\\u05ea\\u05d7\\u05dc\\u05d4\",enablejavascript:\"\\u05d0\\u05e4\\u05e9\\u05e8 JavaScript\",correction:\"\\u05dc\\u05dc\\u05d0 \\u05ea\\u05d9\\u05e7\\u05d5\\u05df\",targetcache:\"Target cache\",playeveryframe:\"\\u05e0\\u05d2\\u05df \\u05db\\u05dc \\u05e4\\u05e8\\u05d9\\u05d9\\u05dd\",kioskmode:\"Kiosk mode\",controller:\"Controller\",menu:\"\\u05d4\\u05e6\\u05d2\\u05ea \\u05ea\\u05e4\\u05e8\\u05d9\\u05d8\",loop:\"\\u05e0\\u05d2\\u05d9\\u05e0\\u05d4 \\u05de\\u05d7\\u05d6\\u05d5\\u05e8\\u05d9\\u05ea\",play:\"\\u05e0\\u05d2\\u05d9\\u05e0\\u05d4 \\u05d0\\u05d5\\u05d8\\u05d5\\u05de\\u05d8\\u05d9\\u05ea \\u05e2\\u05dd \\u05d4\\u05d8\\u05e2\\u05d9\\u05e0\\u05d4\",hspace:\"\\u05e8\\u05d5\\u05d5\\u05d7 \\u05d0\\u05d5\\u05e4\\u05e7\\u05d9\",vspace:\"\\u05e8\\u05d5\\u05d5\\u05d7 \\u05d0\\u05e0\\u05db\\u05d9\",\"class_name\":\"\\u05de\\u05d7\\u05dc\\u05e7\\u05d4\",name:\"\\u05e9\\u05dd\",id:\"Id\",type:\"\\u05e1\\u05d5\\u05d2\",size:\"\\u05e8\\u05d5\\u05d7\\u05d1 \\u05d5\\u05d2\\u05d5\\u05d1\\u05d4\",preview:\"\\u05ea\\u05e6\\u05d5\\u05d2\\u05d4 \\u05de\\u05e7\\u05d3\\u05d9\\u05de\\u05d4\",\"constrain_proportions\":\"\\u05e9\\u05de\\u05d5\\u05e8 \\u05e2\\u05dc \\u05e4\\u05e8\\u05d5\\u05e4\\u05d5\\u05e8\\u05e6\\u05d9\\u05d5\\u05ea\",controls:\"Controls\",numloop:\"Num loops\",console:\"Console\",cache:\"Cache\",autohref:\"AutoHREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Flashvars\",base:\"\\u05de\\u05e7\\u05d5\\u05e8\",bgcolor:\"\\u05e6\\u05d1\\u05e2 \\u05e8\\u05e7\\u05e2\",wmode:\"WMode\",salign:\"SAlign\",align:\"\\u05d9\\u05d9\\u05e9\\u05d5\\u05e8\",scale:\"Scale\",quality:\"\\u05d0\\u05d9\\u05db\\u05d5\\u05ea \\u05d4\\u05e1\\u05e8\\u05d8\\u05d5\\u05df\",shuffle:\"Shuffle\",prefetch:\"Prefetch\",nojava:\"No java\",maintainaspect:\"Maintain aspect\",imagestatus:\"Image status\",center:\"\\u05de\\u05e8\\u05db\\u05d6\",autogotourl:\"Auto goto URL\",\"shockwave_options\":\"\\u05d0\\u05e4\\u05e9\\u05e8\\u05d5\\u05d9\\u05d5\\u05ea Shockwave\",\"rmp_options\":\"\\u05d0\\u05e4\\u05e9\\u05e8\\u05d5\\u05d9\\u05d5\\u05ea \\u05e0\\u05d2\\u05df Real Media\",\"wmp_options\":\"\\u05d0\\u05e4\\u05e9\\u05e8\\u05d5\\u05d9\\u05d5\\u05ea \\u05de\\u05d3\\u05d9\\u05d4 \\u05e4\\u05dc\\u05d9\\u05d9\\u05e8\",\"qt_options\":\"\\u05d0\\u05e4\\u05e9\\u05e8\\u05d5\\u05d9\\u05d5\\u05ea Quicktime\",\"flash_options\":\"\\u05d0\\u05e4\\u05e9\\u05e8\\u05d5\\u05d9\\u05d5\\u05ea \\u05e4\\u05dc\\u05d0\\u05e9\",hidden:\"Hidden\",\"align_bottom_left\":\"\\u05dc\\u05de\\u05d8\\u05d4 \\u05de\\u05e9\\u05de\\u05d0\\u05dc\",\"align_bottom_right\":\"\\u05dc\\u05de\\u05d8\\u05d4 \\u05de\\u05d9\\u05de\\u05d9\\u05df\",flash:\"Flash\",quicktime:\"quicktime\",\"embedded_audio_options\":\"\\u05d0\\u05e4\\u05e9\\u05e8\\u05d5\\u05d9\\u05d5\\u05ea \\u05d0\\u05d5\\u05d3\\u05d9\\u05d5 \\u05de\\u05e9\\u05d5\\u05dc\\u05d1\",windowsmedia:\"windowsmedia\",realmedia:\"realmedia\",shockwave:\"shockwave\",audio:\"audio\",video:\"video\",\"html5_video_options\":\"\\u05d0\\u05e4\\u05e9\\u05e8\\u05d5\\u05d9\\u05d5\\u05ea \\u05d5\\u05d9\\u05d3\\u05d0\\u05d5 HTML5\",altsource1:\"\\u05de\\u05e7\\u05d5\\u05e8 \\u05d7\\u05dc\\u05d5\\u05e4\\u05d9 1\",altsource2:\"\\u05de\\u05e7\\u05d5\\u05e8 \\u05d7\\u05dc\\u05d5\\u05e4\\u05d9 2\",preload:\"Preload\",poster:\"\\u05e4\\u05d5\\u05e1\\u05d8\\u05e8\",source:\"\\u05de\\u05e7\\u05d5\\u05e8\",\"html5_audio_options\":\"\\u05d0\\u05e4\\u05e9\\u05e8\\u05d5\\u05d9\\u05d5\\u05ea \\u05d0\\u05d5\\u05d3\\u05d9\\u05d5\",\"preload_none\":\"Don\\'t Preload\",\"preload_metadata\":\"\\u05d8\\u05e2\\u05df \\u05de\\u05d8\\u05d4-\\u05d8\\u05d0\\u05d2 \\u05dc\\u05d5\\u05d5\\u05d9\\u05d3\\u05d0\\u05d5\",\"preload_auto\":\"\\u05d0\\u05ea\\u05df \\u05dc\\u05d3\\u05e4\\u05d3\\u05e4\\u05df \\u05dc\\u05d1\\u05d7\\u05d5\\u05e8\",iframe:\"iframe\",embeddedaudio:\"embeddedaudio \"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/hr_dlg.js",
    "content": "tinyMCE.addI18n('hr.media_dlg',{list:\"List\",file:\"File/URL\",advanced:\"Advanced\",general:\"General\",title:\"Insert / edit embedded media\",align_top_left:\"Top left\",align_center:\"Center\",align_left:\"Left\",align_bottom:\"Bottom\",align_right:\"Right\",align_top:\"Top\",qt_stream_warn:\"Streamed rtsp resources should be added to the QT Src field under the advanced tab.\\\\nYou should also add a non streamed version to the Src field..\",qtsrc:\"QT Src\",progress:\"Progress\",sound:\"Sound\",swstretchvalign:\"Stretch V-Align\",swstretchhalign:\"Stretch H-Align\",swstretchstyle:\"Stretch style\",scriptcallbacks:\"Script callbacks\",align_top_right:\"Top right\",uimode:\"UI Mode\",rate:\"Rate\",playcount:\"Play count\",defaultframe:\"Default frame\",currentposition:\"Current position\",currentmarker:\"Current marker\",captioningid:\"Captioning id\",baseurl:\"Base URL\",balance:\"Balance\",windowlessvideo:\"Windowless video\",stretchtofit:\"Stretch to fit\",mute:\"Mute\",invokeurls:\"Invoke URLs\",fullscreen:\"Fullscreen\",enabled:\"Enabled\",autostart:\"Auto start\",volume:\"Volume\",target:\"Target\",qtsrcchokespeed:\"Choke speed\",href:\"Href\",endtime:\"End time\",starttime:\"Start time\",enablejavascript:\"Enable JavaScript\",correction:\"No correction\",targetcache:\"Target cache\",playeveryframe:\"Play every frame\",kioskmode:\"Kiosk mode\",controller:\"Controller\",menu:\"Show menu\",loop:\"Loop\",play:\"Auto play\",hspace:\"H-Space\",vspace:\"V-Space\",class_name:\"Class\",name:\"Name\",id:\"Id\",type:\"Type\",size:\"Dimensions\",preview:\"Preview\",constrain_proportions:\"Constrain proportions\",controls:\"Controls\",numloop:\"Num loops\",console:\"Console\",cache:\"Cache\",autohref:\"AutoHREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Flashvars\",base:\"Base\",bgcolor:\"Background\",wmode:\"WMode\",salign:\"SAlign\",align:\"Align\",scale:\"Scale\",quality:\"Quality\",shuffle:\"Shuffle\",prefetch:\"Prefetch\",nojava:\"No java\",maintainaspect:\"Maintain aspect\",imagestatus:\"Image status\",center:\"Center\",autogotourl:\"Auto goto URL\",shockwave_options:\"Shockwave options\",rmp_options:\"Real media player options\",wmp_options:\"Windows media player options\",qt_options:\"Quicktime options\",flash_options:\"Flash options\",hidden:\"Hidden\",align_bottom_left:\"Bottom left\",align_bottom_right:\"Bottom right\",flv_options:\"Flash video options\",flv_scalemode:\"Scale mode\",flv_buffer:\"Buffer\",flv_startimage:\"Start image\",flv_starttime:\"Start time\",flv_defaultvolume:\"Default volumne\",flv_hiddengui:\"Hidden GUI\",flv_autostart:\"Auto start\",flv_loop:\"Loop\",flv_showscalemodes:\"Show scale modes\",flv_smoothvideo:\"Smooth video\",flv_jscallback:\"JS Callback\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/hu_dlg.js",
    "content": "tinyMCE.addI18n('hu.media_dlg',{list:\"Lista\",file:\"F\\u00e1jl/URL\",advanced:\"Halad\\u00f3\",general:\"\\u00c1ltal\\u00e1nos\",title:\"Be\\u00e1gyazott m\\u00e9dia besz\\u00far\\u00e1sa/szerkeszt\\u00e9se\",\"align_top_left\":\"Bal-fent\",\"align_center\":\"K\\u00f6z\\u00e9pen\",\"align_left\":\"Balra\",\"align_bottom\":\"Lent\",\"align_right\":\"Jobbra\",\"align_top\":\"Fent\",\"qt_stream_warn\":\"Streamelt rtsp forr\\u00e1sok a QT Src mez\\u0151be val\\u00f3k a halad\\u00f3 lapon.\\nHozz\\u00e1 kellene adnia egy nem streamelt verzi\\u00f3t a Src mez\\u0151ben.\",qtsrc:\"QT Src\",progress:\"Folyamat\",sound:\"Hang\",swstretchvalign:\"Ny\\u00fajt\\u00e1s F-igaz\\u00edt\\u00e1s\",swstretchhalign:\"Ny\\u00fajt\\u00e1s V-igaz\\u00edt\\u00e1s\",swstretchstyle:\"Ny\\u00fajt\\u00e1s st\\u00edlusa\",scriptcallbacks:\"Script callbacks\",\"align_top_right\":\"Jobbra fent\",uimode:\"UI M\\u00f3d\",rate:\"\\u00c9rt\\u00e9kel\\u00e9s\",playcount:\"Lej\\u00e1tsz\\u00e1ssz\\u00e1m\",defaultframe:\"Alap\\u00e9rtelmezett frame\",currentposition:\"Aktu\\u00e1lis poz\\u00edci\\u00f3\",currentmarker:\"Aktu\\u00e1lis marker\",captioningid:\"Captioning id\",baseurl:\"Alap URL\",balance:\"Balance\",windowlessvideo:\"Ablak n\\u00e9lk\\u00fcli vide\\u00f3\",stretchtofit:\"Ny\\u00fajtva igaz\\u00edt\\u00e1s\",mute:\"N\\u00e9ma\",invokeurls:\"URL-ek bevon\\u00e1sa\",fullscreen:\"Teljes k\\u00e9perny\\u0151\",enabled:\"Enged\\u00e9lyezve\",autostart:\"Automatikus kezd\\u00e9s\",volume:\"Hanger\\u0151\",target:\"C\\u00e9l\",qtsrcchokespeed:\"Folyt\\u00e1s sebess\\u00e9ge\",href:\"Href\",endtime:\"Z\\u00e1r\\u00f3 id\\u0151\",starttime:\"Kezd\\u00e9si id\\u0151\",enablejavascript:\"JavaScript enged\\u00e9se\",correction:\"Nincs jav\\u00edt\\u00e1s\",targetcache:\"C\\u00e9l cache\",playeveryframe:\"Minden kocka lej\\u00e1tsz\\u00e1sa\",kioskmode:\"Kiosk m\\u00f3d\",controller:\"Vez\\u00e9rl\\u0151\",menu:\"Men\\u00fc mutat\\u00e1sa\",loop:\"Ism\\u00e9tl\\u00e9s\",play:\"Automatikus lej\\u00e1tsz\\u00e1s\",hspace:\"V\\u00edzszintes-t\\u00e1v\",vspace:\"F\\u00fcgg\\u0151leges-t\\u00e1v\",\"class_name\":\"Oszt\\u00e1ly\",name:\"N\\u00e9v\",id:\"ID\",type:\"T\\u00edpus\",size:\"M\\u00e9retek\",preview:\"El\\u0151n\\u00e9zet\",\"constrain_proportions\":\"Ar\\u00e1nytart\\u00e1s\",controls:\"Kezel\\u0151k\",numloop:\"Ism\\u00e9tl\\u00e9ssz\\u00e1m\",console:\"Konzol\",cache:\"Cache\",autohref:\"AutoHREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Flashvars\",base:\"Base\",bgcolor:\"H\\u00e1tt\\u00e9r\",wmode:\"WM\\u00f3d\",salign:\"SElrendez\\u00e9s\",align:\"Elrendez\\u00e9s\",scale:\"Nagy\\u00edt\\u00e1s\",quality:\"Min\\u0151s\\u00e9g\",shuffle:\"V\\u00e9letlenszer\\u0171\",prefetch:\"El\\u0151t\\u00f6lt\\u00e9s\",nojava:\"Nincs Java\",maintainaspect:\"Ar\\u00e1nytart\\u00e1s\",imagestatus:\"K\\u00e9p \\u00e1llapot\",center:\"K\\u00f6z\\u00e9pre\",autogotourl:\"Automatikus URL-re ugr\\u00e1s\",\"shockwave_options\":\"Shockwave be\\u00e1ll\\u00edt\\u00e1sai\",\"rmp_options\":\"Real Media Player be\\u00e1ll\\u00edt\\u00e1sai\",\"wmp_options\":\"Windows Media Player be\\u00e1ll\\u00edt\\u00e1sai\",\"qt_options\":\"Quicktime be\\u00e1ll\\u00edt\\u00e1sai\",\"flash_options\":\"Flash be\\u00e1ll\\u00edt\\u00e1sai\",hidden:\"Rejtett\",\"align_bottom_left\":\"Bal-lent\",\"align_bottom_right\":\"Bal-jobbra\",flash:\"flash\",quicktime:\"quicktime\",\"embedded_audio_options\":\"Be\\u00e1gyazott hang be\\u00e1ll\\u00edt\\u00e1sok\",windowsmedia:\"windows m\\u00e9dia\",realmedia:\"realmedia\",shockwave:\"shockwave\",audio:\"hang\",video:\"vide\\u00f3\",\"html5_video_options\":\"HTML5 Vide\\u00f3 Be\\u00e1ll\\u00edt\\u00e1sok\",altsource1:\"Alternat\\u00edv forr\\u00e1s 1\",altsource2:\"Alternat\\u00edv forr\\u00e1s 2\",preload:\"El\\u0151t\\u00f6lt\\u00e9s\",poster:\"Hozz\\u00e1ad\\u00f3\",source:\"Forr\\u00e1s\",\"html5_audio_options\":\"Audi\\u00f3 Be\\u00e1ll\\u00edt\\u00e1sok\",\"preload_none\":\"Nincs el\\u0151reolvas\\u00e1s\",\"preload_metadata\":\"Vide\\u00f3 metaadatok el\\u0151reolvas\\u00e1sa\",\"preload_auto\":\"Hagyjuk a felhaszn\\u00e1l\\u00f3 b\\u00f6ng\\u00e9sz\\u0151j\\u00e9nek eld\\u00f6nteni\",iframe:\"iframe (keret)\",embeddedaudio:\"be\\u00e1gyazott hang\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/hy_dlg.js",
    "content": "tinyMCE.addI18n('hy.media_dlg',{list:\"\\u0421\\u043f\\u0438\\u0441\\u043e\\u043a\",file:\"\\u0424\\u0430\\u0439\\u043b / URL\",advanced:\"\\u0414\\u043e\\u043f\\u043e\\u043b\\u043d\\u0438\\u0442\\u0435\\u043b\\u044c\\u043d\\u043e\",general:\"\\u041e\\u0431\\u0449\\u0435\\u0435\",title:\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u044c / \\u0440\\u0435\\u0434\\u0430\\u043a\\u0442\\u0438\\u0440\\u043e\\u0432\\u0430\\u0442\\u044c embedded media\",\"align_top_left\":\"Top left\",\"align_center\":\"Center\",\"align_left\":\"Left\",\"align_bottom\":\"Bottom\",\"align_right\":\"Right\",\"align_top\":\"Top\",\"qt_stream_warn\":\"Streamed rtsp resources should be added to the QT Src field under the advanced tab \\\\ nYou should also add a non streamed version to the Src field ..\",qtsrc:\"QT Src\",progress:\"Progress\",sound:\"Sound\",swstretchvalign:\"Stretch V-Align\",swstretchhalign:\"Stretch H-Align\",swstretchstyle:\"Stretch style\",scriptcallbacks:\"Script callbacks\",\"align_top_right\":\"Top right\",uimode:\"UI Mode\",rate:\"Rate\",playcount:\"Play count\",defaultframe:\"Default frame\",currentposition:\"Current position\",currentmarker:\"Current marker\",captioningid:\"Captioning id\",baseurl:\"Base URL\",balance:\"\\u0411\\u0430\\u043b\\u0430\\u043d\\u0441\",windowlessvideo:\"Windowless video\",stretchtofit:\"Stretch to fit\",mute:\"Mute\",invokeurls:\"Invoke URLs\",fullscreen:\"Fullscreen\",enabled:\"Enabled\",autostart:\"\\u0410\\u0432\\u0442\\u043e\\u0441\\u0442\\u0430\\u0440\\u0442\",volume:\"\\u0413\\u0440\\u043e\\u043c\\u043a\\u043e\\u0441\\u0442\\u044c\",target:\"Target\",qtsrcchokespeed:\"Choke speed\",href:\"Href\",endtime:\"End time\",starttime:\"Start time\",enablejavascript:\"Enable JavaScript\",correction:\"No correction\",targetcache:\"Target cache\",playeveryframe:\"Play every frame\",kioskmode:\"Kiosk mode\",controller:\"Controller\",menu:\"\\u041f\\u043e\\u043a\\u0430\\u0437\\u044b\\u0432\\u0430\\u0442\\u044c \\u043c\\u0435\\u043d\\u044e\",loop:\"\\u041b\\u0443\\u043f\",play:\"\\u0410\\u0432\\u0442\\u043e\\u043f\\u043b\\u0435\\u0439\",hspace:\"\\u0433\\u043e\\u0440. \\u043e\\u0442\\u0441\\u0442\\u0443\\u043f\",vspace:\"\\u0432\\u0435\\u0440\\u0442. \\u043e\\u0442\\u0441\\u0442\\u0443\\u043f\",\"class_name\":\"\\u041a\\u043b\\u0430\\u0441\\u0441\",name:\"\\u041d\\u0430\\u0437\\u0432\\u0430\\u043d\\u0438\\u0435\",id:\"Id\",type:\"\\u0422\\u0438\\u043f\",size:\"\\u0420\\u0430\\u0437\\u043c\\u0435\\u0440\\u044b\",preview:\"\\u041f\\u0440\\u043e\\u0441\\u043c\\u043e\\u0442\\u0440\",\"constrain_proportions\":\"\\u0421\\u043e\\u0445\\u0440\\u0430\\u043d\\u044f\\u0442\\u044c \\u043f\\u0440\\u043e\\u043f\\u043e\\u0440\\u0446\\u0438\\u0438\",controls:\"Controls\",numloop:\"Num loops\",console:\"Console\",cache:\"\\u041a\\u044d\\u0448\",autohref:\"AutoHREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Flashvars\",base:\"Base\",bgcolor:\"\\u0424\\u043e\\u043d\",wmode:\"WMode\",salign:\"SAlign\",align:\"Align\",scale:\"Scale\",quality:\"\\u041a\\u0430\\u0447\\u0435\\u0441\\u0442\\u0432\\u043e\",shuffle:\"Shuffle\",prefetch:\"Prefetch\",nojava:\"No java\",maintainaspect:\"Maintain aspect\",imagestatus:\"Image status\",center:\"Center\",autogotourl:\"Auto goto URL\",\"shockwave_options\":\"Shockwave options\",\"rmp_options\":\"Real media player options\",\"wmp_options\":\"Windows media player options\",\"qt_options\":\"Quicktime options\",\"flash_options\":\"Flash options\",hidden:\"Hidden\",\"align_bottom_left\":\"Bottom left\",\"align_bottom_right\":\"Bottom right\",\"html5_video_options\":\"HTML5 Video Options\",altsource1:\"Alternative source 1\",altsource2:\"Alternative source 2\",preload:\"Preload\",poster:\"Poster\",source:\"Source\",\"html5_audio_options\":\"Audio Options\",\"preload_none\":\"Don\\'t Preload\",\"preload_metadata\":\"Preload video metadata\",\"preload_auto\":\"Let user\\'s browser decide\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/it_dlg.js",
    "content": "tinyMCE.addI18n('it.media_dlg',{list:\"Lista\",file:\"File/URL\",advanced:\"Avanzate\",general:\"Generale\",title:\"Inserisci/modifica file multimediale\",\"align_top_left\":\"Alto a sinistra\",\"align_center\":\"Centro\",\"align_left\":\"Sinistra\",\"align_bottom\":\"Basso\",\"align_right\":\"Destra\",\"align_top\":\"Alto\",\"qt_stream_warn\":\"Le risorse rstp \\'streamed\\' devono essere aggiunte al campo Sorgente QT nella tabella Avanzate.\\nSi dovrebbe inserire anche una versione non \\'streamed\\' al campo Sorgente..\",qtsrc:\"Sorgente QT\",progress:\"Avanzamento\",sound:\"Suono\",swstretchvalign:\"Tratto V-Allineamento\",swstretchhalign:\"Tratto H-Allineamento\",swstretchstyle:\"Stile Tratto\",scriptcallbacks:\"Script richiamato\",\"align_top_right\":\"Alto a destra\",uimode:\"Modalit\\u00e0 Interfaccia Utente\",rate:\"Qualit\\u00e0\",playcount:\"Conteggio esecuzione\",defaultframe:\"Frame predefinito\",currentposition:\"Posizione corrente\",currentmarker:\"Indicatore corrente\",captioningid:\"Didascalia dell\\'Id\",baseurl:\"URL base\",balance:\"Bilanciamento\",windowlessvideo:\"Video senza finestra\",stretchtofit:\"Adatta dimensioni\",mute:\"Muto\",invokeurls:\"Invoca URLs\",fullscreen:\"Tutto schermo\",enabled:\"Abilitato\",autostart:\"Avvio automatico\",volume:\"Volume\",target:\"Target\",qtsrcchokespeed:\"Velocit\\u00e0 cursore\",href:\"Href\",endtime:\"Ora fine\",starttime:\"Ora inizio\",enablejavascript:\"Abilita JavaScript\",correction:\"Nessuna Correzione\",targetcache:\"Cache del target\",playeveryframe:\"Esegui ogni frame\",kioskmode:\"Modalit\\u00e0 Kiosk\",controller:\"Controller\",menu:\"Mostra menu\",loop:\"Riproduzione ciclica\",play:\"Esecuzione automatica\",hspace:\"H-Spazio\",vspace:\"V-Spazio\",\"class_name\":\"Classe\",name:\"Nome\",id:\"Id\",type:\"Tipo\",size:\"Dimensioni\",preview:\"Anteprima\",\"constrain_proportions\":\"Mantieni Proporzioni\",controls:\"Controlli\",numloop:\"Numero Cicli\",console:\"Console\",cache:\"Cache\",autohref:\"AutoHREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Flashvars\",base:\"Base\",bgcolor:\"Sfondo\",wmode:\"WMode\",salign:\"SAlign\",align:\"Allineamento\",scale:\"Scala\",quality:\"Qualit\\u00e0\",shuffle:\"Shuffle\",prefetch:\"Precaricamento\",nojava:\"No java\",maintainaspect:\"Mantieni Aspetto\",imagestatus:\"Stato Immagine\",center:\"Centra\",autogotourl:\"Vai a URL automatico\",\"shockwave_options\":\"Opzioni Shockwave\",\"rmp_options\":\"Opzioni Real media player\",\"wmp_options\":\"Opzioni Windows media player\",\"qt_options\":\"Opzioni Quicktime\",\"flash_options\":\"Opzioni Flash\",hidden:\"Nascosto\",\"align_bottom_left\":\"Basso a Sinistra\",\"align_bottom_right\":\"Basso a Destra\",flash:\"flash\",quicktime:\"quicktime\",\"embedded_audio_options\":\"Opzioni Audio Embedded\",windowsmedia:\"windowsmedia\",realmedia:\"realmedia\",shockwave:\"shockwave\",audio:\"audio\",video:\"video\",\"html5_video_options\":\"Opzioni Video HTML5\",altsource1:\"Sorgente alternativa 1\",altsource2:\"Sorgente alternativa 2\",preload:\"Precarica\",poster:\"Poster\",source:\"Sorgente\",\"html5_audio_options\":\"Opzioni Audio\",\"preload_none\":\"Non Precaricare\",\"preload_metadata\":\"Precarica i metadati video\",\"preload_auto\":\"Lascia decidere al browser dell\\'utente\",iframe:\"iframe\",embeddedaudio:\"embeddedaudio\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/ka_dlg.js",
    "content": "tinyMCE.addI18n('ka.media_dlg',{list:\"\\u10e9\\u10d0\\u10db\\u10dd\\u10dc\\u10d0\\u10d7\\u10d5\\u10d0\\u10da\\u10d8\",file:\"\\u10db\\u10d8\\u10e1\\u10d0\\u10db\\u10d0\\u10e0\\u10d7\\u10d8\",advanced:\"\\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d8\\u10d7\",general:\"\\u10e1\\u10d0\\u10d4\\u10e0\\u10d7\\u10dd\",title:\"\\u10d9\\u10da\\u10d8\\u10de\\u10d8\\u10e1 \\u10db\\u10d0\\u10ee\\u10d0\\u10e1\\u10d8\\u10d0\\u10d7\\u10d4\\u10d1\\u10da\\u10d4\\u10d1\\u10d8\",\"align_top_left\":\"\\u10db\\u10d0\\u10e0\\u10ea\\u10ee\\u10d4\\u10dc\\u10d0 \\u10d6\\u10d4\\u10d3\\u10d0 \\u10d9\\u10e3\\u10d7\\u10ee\\u10d4\",\"align_center\":\"\\u10ea\\u10d4\\u10dc\\u10e2\\u10e0\\u10d8\",\"align_left\":\"\\u10db\\u10d0\\u10e0\\u10ea\\u10ee\\u10d4\\u10dc\\u10d0 \\u10d9\\u10d8\\u10d3\\u10d4\\u10d6\\u10d4\",\"align_bottom\":\"\\u10e5\\u10d5\\u10d4\\u10d3\\u10d0 \\u10d9\\u10d8\\u10d3\\u10d4\\u10d6\\u10d4\",\"align_right\":\"\\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10d4\\u10dc\\u10d0 \\u10d9\\u10d8\\u10d3\\u10d4\\u10d6\\u10d4\",\"align_top\":\"\\u10d6\\u10d4\\u10d3\\u10d0 \\u10d9\\u10d8\\u10d3\\u10d4\\u10d6\\u10d4\",\"qt_stream_warn\":\"\\u10dc\\u10d0\\u10d9\\u10d0\\u10d3\\u10dd\\u10d5\\u10d0\\u10dc\\u10d8 rtsp \\u10e0\\u10d4\\u10e1\\u10e3\\u10e0\\u10e1\\u10d4\\u10d1\\u10d8 \\u10e3\\u10dc\\u10d3\\u10d0 \\u10e9\\u10d0\\u10d0\\u10db\\u10d0\\u10e2\\u10dd\\u10d7 QT Src \\u10d5\\u10d4\\u10da\\u10e8\\u10d8, \\\"\\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d8\\u10d7\\\" \\u10d2\\u10d5\\u10d4\\u10e0\\u10d3\\u10d6\\u10d4.\\n\\u10ee\\u10dd\\u10da\\u10dd \\u10d0\\u10e0\\u10d0 \\u10dc\\u10d0\\u10d9\\u10d0\\u10d3\\u10dd\\u10d5\\u10d0\\u10dc\\u10d8 \\u10d5\\u10d4\\u10e0\\u10e1\\u10d8\\u10d0 - Src \\u10d5\\u10d4\\u10da\\u10e8\\u10d8.\",qtsrc:\"QT Src\",progress:\"\\u10de\\u10e0\\u10dd\\u10d2\\u10e0\\u10d4\\u10e1\\u10d8\",sound:\"\\u10ee\\u10db\\u10d0\",swstretchvalign:\"\\u10d5\\u10d4\\u10e0\\u10e2. \\u10d2\\u10d0\\u10e1\\u10ec\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0 \\u10d2\\u10d0\\u10ec\\u10d4\\u10da\\u10d5\\u10d8\\u10d7\",swstretchhalign:\"\\u10f0\\u10dd\\u10e0\\u10d8\\u10d6. \\u10d2\\u10d0\\u10e1\\u10ec\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0 \\u10d2\\u10d0\\u10ec\\u10d4\\u10da\\u10d5\\u10d8\\u10d7\",swstretchstyle:\"\\u10d2\\u10d0\\u10ec\\u10d4\\u10da\\u10d5\\u10d8\\u10e1 \\u10e1\\u10e2\\u10d8\\u10da\\u10d8\",scriptcallbacks:\"\\u10e1\\u10e5\\u10e0\\u10d8\\u10de\\u10e2\\u10d8\\u10e1 \\u10db\\u10ee\\u10d0\\u10e0\\u10d3\\u10d0\\u10ed\\u10d4\\u10e0\\u10d0\",\"align_top_right\":\"\\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10d4\\u10dc\\u10d0 \\u10d6\\u10d4\\u10d3\\u10d0 \\u10d9\\u10e3\\u10d7\\u10ee\\u10d4\",uimode:\"\\u10d8\\u10dc\\u10e2\\u10d4\\u10e0\\u10e4\\u10d4\\u10d8\\u10e1\\u10d8\\u10e1 \\u10e0\\u10d4\\u10df\\u10d8\\u10db\\u10d8\",rate:\"\\u10e0\\u10d4\\u10d8\\u10e2\\u10d8\\u10dc\\u10d2\\u10d8\",playcount:\"\\u10dc\\u10d0\\u10ee\\u10d5\\u10d4\\u10d1\\u10d8\\u10e1 \\u10db\\u10d7\\u10d5\\u10da\\u10d4\\u10da\\u10d8\",defaultframe:\"\\u10db\\u10d7\\u10d0\\u10d5\\u10d0\\u10e0\\u10d8 \\u10d9\\u10d0\\u10d3\\u10e0\\u10d8\",currentposition:\"\\u10db\\u10dd\\u10ea\\u10d4\\u10db\\u10e3\\u10da\\u10d8 \\u10de\\u10dd\\u10d6\\u10d8\\u10ea\\u10d8\\u10d0\",currentmarker:\"\\u10db\\u10dd\\u10ea\\u10d4\\u10db\\u10e3\\u10da\\u10d8 \\u10db\\u10d0\\u10e0\\u10d9\\u10d4\\u10e0\\u10d8\",captioningid:\"\\u10e1\\u10e3\\u10d1\\u10e2\\u10d8\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\\u10e1 \\u10e1\\u10d0\\u10ee\\u10d4\\u10da\\u10d8\",baseurl:\"\\u10e1\\u10d0\\u10d1\\u10d0\\u10d6\\u10d8\\u10e1\\u10dd \\u10db\\u10d8\\u10e1\\u10d0\\u10db\\u10d0\\u10e0\\u10d7\\u10d8\",balance:\"\\u10d1\\u10d0\\u10da\\u10d0\\u10dc\\u10e1\\u10d8\",windowlessvideo:\"\\u10e4\\u10d0\\u10dc\\u10ef\\u10e0\\u10d8\\u10e1 \\u10d5\\u10d8\\u10d3\\u10d4\\u10dd\",stretchtofit:\"\\u10e4\\u10d0\\u10dc\\u10ef\\u10e0\\u10d8\\u10e1 \\u10d6\\u10dd\\u10db\\u10d0\\u10d6\\u10d4\",mute:\"\\u10ee\\u10db\\u10d8\\u10e1 \\u10d2\\u10d0\\u10e0\\u10d4\\u10e8\\u10d4\",invokeurls:\"\\u10db\\u10d8\\u10e1\\u10d0\\u10db\\u10d0\\u10e0\\u10d7\\u10d8\\u10e1 \\u10d2\\u10d0\\u10db\\u10dd\\u10eb\\u10d0\\u10ee\\u10d4\\u10d1\\u10d0\",fullscreen:\"\\u10db\\u10d7\\u10d4\\u10da \\u10d4\\u10d9\\u10e0\\u10d0\\u10dc\\u10d6\\u10d4\",enabled:\"\\u10e9\\u10d0\\u10e0\\u10d7\\u10e3\\u10da\\u10d8\\u10d0\",autostart:\"\\u10d0\\u10d5\\u10e2\\u10dd\\u10d2\\u10d0\\u10e8\\u10d5\\u10d4\\u10d1\\u10d0\",volume:\"\\u10ee\\u10db\\u10d0\",target:\"\\u10db\\u10d8\\u10d6\\u10d0\\u10dc\\u10d8\",qtsrcchokespeed:\"\\u10e1\\u10d8\\u10ee\\u10e8\\u10d8\\u10e0\\u10d4\",href:\"\\u10d1\\u10db\\u10e3\\u10da\\u10d8\",endtime:\"\\u10d3\\u10d0\\u10e1\\u10e0\\u10e3\\u10da\\u10d4\\u10d1\\u10d8\\u10e1 \\u10d3\\u10e0\\u10dd\",starttime:\"\\u10d3\\u10d0\\u10ec\\u10e7\\u10d4\\u10d1\\u10d8\\u10e1 \\u10d3\\u10e0\\u10dd\",enablejavascript:\"JavaScript-\\u10d8\\u10e1 \\u10e9\\u10d0\\u10e0\\u10d7\\u10d5\\u10d0\",correction:\"\\u10d9\\u10dd\\u10e0\\u10d4\\u10e5\\u10e2\\u10d8\\u10e0\\u10d4\\u10d1\\u10d8\\u10e1 \\u10d2\\u10d0\\u10e0\\u10d4\\u10e8\\u10d4\",targetcache:\"\\u10e5\\u10d4\\u10e8\\u10d8\",playeveryframe:\"\\u10e7\\u10d5\\u10d4\\u10da\\u10d0 \\u10d9\\u10d0\\u10d3\\u10e0\\u10d8\\u10e1 \\u10d0\\u10e1\\u10d0\\u10ee\\u10d5\\u10d0\",kioskmode:\"\\u10d9\\u10d8\\u10dd\\u10e1\\u10d9\\u10d8\\u10e1 \\u10e0\\u10d4\\u10df\\u10d8\\u10db\\u10d8\",controller:\"\\u10db\\u10d0\\u10e0\\u10d7\\u10d5\\u10d0\",menu:\"\\u10db\\u10d4\\u10dc\\u10d8\\u10e3\\u10e1 \\u10d2\\u10d0\\u10db\\u10dd\\u10e9\\u10d4\\u10dc\\u10d0\",loop:\"\\u10d2\\u10d0\\u10db\\u10d4\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\",play:\"\\u10d0\\u10d5\\u10e2\\u10dd\\u10d2\\u10d0\\u10e8\\u10d5\\u10d4\\u10d1\\u10d0\",hspace:\"\\u10f0\\u10dd\\u10e0\\u10d8\\u10d6. \\u10d3\\u10d0\\u10e8\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\",vspace:\"\\u10d5\\u10d4\\u10e0\\u10e2. \\u10d3\\u10d0\\u10e8\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\",\"class_name\":\"\\u10d9\\u10da\\u10d0\\u10e1\\u10d8\",name:\"\\u10e1\\u10d0\\u10ee\\u10d4\\u10da\\u10ec\\u10dd\\u10d3\\u10d4\\u10d1\\u10d0\",id:\"\\u10d8\\u10d3\\u10d4\\u10dc\\u10e2\\u10d8\\u10e4\\u10d8\\u10d9\\u10d0\\u10e2\\u10dd\\u10e0\\u10d8\",type:\"\\u10e2\\u10d8\\u10de\\u10d8\",size:\"\\u10d6\\u10dd\\u10db\\u10d4\\u10d1\\u10d8\",preview:\"\\u10ec\\u10d8\\u10dc\\u10d0\\u10e1\\u10ec\\u10d0\\u10e0\\u10d8 \\u10d3\\u10d0\\u10d7\\u10d5\\u10d0\\u10da\\u10d8\\u10d4\\u10e0\\u10d4\\u10d1\\u10d0\",\"constrain_proportions\":\"\\u10de\\u10e0\\u10dd\\u10de\\u10dd\\u10e0\\u10ea\\u10d8\\u10d4\\u10d1\\u10d8\\u10e1 \\u10e8\\u10d4\\u10dc\\u10d0\\u10e0\\u10e9\\u10e3\\u10dc\\u10d4\\u10d1\\u10d0\",controls:\"\\u10db\\u10d0\\u10e0\\u10d7\\u10d5\\u10d0\",numloop:\"\\u10d2\\u10d0\\u10db\\u10d4\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\\u10d7\\u10d0 \\u10e0\\u10d8\\u10ea\\u10ee\\u10d5\\u10d8\",console:\"\\u10d9\\u10dd\\u10dc\\u10e1\\u10dd\\u10da\\u10d8\",cache:\"\\u10e5\\u10d4\\u10e8\\u10d8\",autohref:\"\\u10d0\\u10d5\\u10e2\\u10dd \\u10d1\\u10db\\u10e3\\u10da\\u10d8\",liveconnect:\"SWLiveConnect\",flashvars:\"Flas \\u10d1\\u10e0\\u10eb\\u10d0\\u10dc\\u10d4\\u10d1\\u10d4\\u10d1\\u10d8\",base:\"Base\",bgcolor:\"\\u10e4\\u10dd\\u10dc\\u10d8\",wmode:\"\\u10e4\\u10d0\\u10dc\\u10ef\\u10d0\\u10e0\\u10d0\",salign:\"\\u10d2\\u10d0\\u10e1\\u10ec\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\",align:\"\\u10d2\\u10d0\\u10e1\\u10ec\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\",scale:\"\\u10db\\u10d8\\u10d3\\u10d0\\u10db\\u10dd\",quality:\"\\u10ee\\u10d0\\u10e0\\u10d8\\u10e1\\u10ee\\u10d8\",shuffle:\"\\u0412 \\u0440\\u0430\\u0437\\u0431\\u0440\\u043e\\u0441\",prefetch:\"\\u10d0\\u10db\\u10dd\\u10d9\\u10e0\\u10d4\\u10e4\\u10d0\",nojava:\"Java-\\u10e1 \\u10d2\\u10d0\\u10e0\\u10d4\\u10e8\\u10d4\",maintainaspect:\"\\u10d6\\u10dd\\u10db\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10ee\\u10e1\\u10dd\\u10d5\\u10e0\\u10d4\\u10d1\\u10d0\",imagestatus:\"\\u10d2\\u10d0\\u10db\\u10dd\\u10e1\\u10d0\\u10ee\\u10e3\\u10da\\u10d4\\u10d1\\u10d8\\u10e1 \\u10e1\\u10e2\\u10d0\\u10e2\\u10e3\\u10e1\\u10d8\",center:\"\\u10ea\\u10d4\\u10dc\\u10e2\\u10e0\\u10d8\",autogotourl:\"\\u10db\\u10d8\\u10e1\\u10d0\\u10db\\u10d0\\u10e0\\u10d7\\u10d6\\u10d4 \\u10d0\\u10d5\\u10e2\\u10dd \\u10d2\\u10d0\\u10d3\\u10d0\\u10e1\\u10d5\\u10da\\u10d0\",\"shockwave_options\":\"Shockwave \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"rmp_options\":\"Real Media \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"wmp_options\":\"Windows Media \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"qt_options\":\"Quicktime \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"flash_options\":\"Flash \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",hidden:\"\\u10d3\\u10d0\\u10e4\\u10d0\\u10e0\\u10e3\\u10da\\u10d8\",\"align_bottom_left\":\"\\u10db\\u10d0\\u10e0\\u10ea\\u10ee\\u10d4\\u10dc\\u10d0 \\u10e5\\u10d5\\u10d4\\u10d3\\u10d0 \\u10d9\\u10e3\\u10d7\\u10ee\\u10d4\",\"align_bottom_right\":\"\\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10d4\\u10dc\\u10d0 \\u10e5\\u10d5\\u10d4\\u10d3\\u10d0 \\u10d9\\u10e3\\u10d7\\u10ee\\u10d4\",\"html5_video_options\":\"HTML5-\\u10d5\\u10d8\\u10d3\\u10d4\\u10dd\\u10e1 \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",altsource1:\"\\u10d0\\u10da\\u10e2\\u10d4\\u10e0\\u10dc\\u10d0\\u10e2\\u10d8\\u10e3\\u10da\\u10d8 \\u10ec\\u10e7\\u10d0\\u10e0\\u10dd 1\",altsource2:\"\\u10d0\\u10da\\u10e2\\u10d4\\u10e0\\u10dc\\u10d0\\u10e2\\u10d8\\u10e3\\u10da\\u10d8 \\u10ec\\u10e7\\u10d0\\u10e0\\u10dd 2\",preload:\"\\u10ec\\u10d8\\u10dc\\u10d0\\u10e1\\u10ec\\u10d0\\u10e0\\u10d8 \\u10e9\\u10d0\\u10db\\u10dd\\u10e2\\u10d5\\u10d8\\u10e0\\u10d7\\u10d5\\u10d0\",poster:\"\\u10de\\u10dd\\u10e1\\u10e2\\u10d4\\u10e0\\u10d8\",source:\"\\u10ec\\u10e7\\u10d0\\u10e0\\u10dd\",\"html5_audio_options\":\"Audio Options\",\"preload_none\":\"Don\\'t Preload\",\"preload_metadata\":\"Preload video metadata\",\"preload_auto\":\"Let user\\'s browser decide\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/ko_dlg.js",
    "content": "tinyMCE.addI18n('ko.media_dlg',{list:\"\\ubaa9\\ub85d\",file:\"\\ud30c\\uc77c/URL\",advanced:\"\\uace0\\uae09\",general:\"\\uc77c\\ubc18\",title:\"\\ubbf8\\ub514\\uc5b4 \\uc0bd\\uc785/\\ud3b8\\uc9d1\",\"align_top_left\":\"Top left\",\"align_center\":\"Center\",\"align_left\":\"Left\",\"align_bottom\":\"Bottom\",\"align_right\":\"Right\",\"align_top\":\"Top\",\"qt_stream_warn\":\"QT Src \\ud544\\ub4dc\\uc5d0 \\uc2a4\\ud2b8\\ub9ac\\ubc0d rtsp \\ub9ac\\uc18c\\uc2a4\\ub97c \\ucd94\\uac00\\ud574\\uc57c \\ud569\\ub2c8\\ub2e4.\\n\\ub610\\ub294 Src \\ud544\\ub4dc\\uc5d0 \\ube44 \\uc2a4\\ud2b8\\ub9ac\\ubc0d \\ubc84\\uc804\\uc744 \\ucd94\\uac00\\ud574\\uc57c \\ud569\\ub2c8\\ub2e4.\",qtsrc:\"QT Src\",progress:\"\\uc9c4\\ud589\",sound:\"\\uc18c\\ub9ac\",swstretchvalign:\"\\uac00\\ub85c\\ub85c \\ub298\\ub9ac\\uae30\",swstretchhalign:\"\\uc138\\ub85c\\ub85c \\ub298\\ub9ac\\uae30\",swstretchstyle:\"Stretch style\",scriptcallbacks:\"Script callbacks\",\"align_top_right\":\"\\uc0c1\\ub2e8 \\uc624\\ub978\\ucabd\",uimode:\"UI \\ubaa8\\ub4dc\",rate:\"\\ube44\\uc728\",playcount:\"\\uc2e4\\ud589 \\ud68c\\uc218\",defaultframe:\"\\uae30\\ubcf8 \\ud504\\ub808\\uc784\",currentposition:\"\\ud604\\uc7ac \\uc704\\uce58\",currentmarker:\"\\ud604\\uc7ac \\ud45c\\uc2dc\",captioningid:\"\\uc790\\ub9c9 id\",baseurl:\"\\uae30\\ubcf8 URL\",balance:\"\\uade0\\ud615\",windowlessvideo:\"\\ud14c\\ub450\\ub9ac\\uc5c6\\uc570\",stretchtofit:\"\\uc54c\\ub9de\\uac8c \\ub9de\\ucd94\\uae30\",mute:\"\\ubb34\\uc74c\",invokeurls:\"Invoke URLs\",fullscreen:\"\\uc804\\uccb4\\ud654\\uba74\",enabled:\"\\ud65c\\uc131\",autostart:\"\\uc790\\ub3d9 \\uc2dc\\uc791\",volume:\"\\ubcfc\\ub968\",target:\"\\ud0c0\\uac9f\",qtsrcchokespeed:\"Choke speed\",href:\"Href\",endtime:\"End time\",starttime:\"Start time\",enablejavascript:\"JavaScript\\ub97c \\ud5c8\\uac00\",correction:\"\\uc633\\ubc14\\ub974\\uc9c0 \\uc54a\\uc74c\",targetcache:\"\\ud0c0\\uac9f \\uce90\\uc26c\",playeveryframe:\"\\ubaa8\\ub4e0 \\ud504\\ub808\\uc784 \\uc7ac\\uc0dd\",kioskmode:\"Kiosk mode\",controller:\"Controller\",menu:\"\\uba54\\ub274 \\ud45c\\uc2dc\",loop:\"\\uc5f0\\uc18d \\uc7ac\\uc0dd\",play:\"\\uc790\\ub3d9 \\uc7ac\\uc0dd\",hspace:\"\\uc88c\\uc6b0 \\uc5ec\\ubc31\",vspace:\"\\uc0c1\\ud558 \\uc5ec\\ubc31\",\"class_name\":\"Class\",name:\"Name\",id:\"Id\",type:\"\\ud0c0\\uc785\",size:\"\\ud06c\\uae30\",preview:\"\\ubbf8\\ub9ac\\ubcf4\\uae30\",\"constrain_proportions\":\"\\uc885\\ud6a1\\ube44 \\uc720\\uc9c0\",controls:\"Controls\",numloop:\"Num loops\",console:\"Console\",cache:\"Cache\",autohref:\"\\uc790\\ub3d9 HREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Flashvars\",base:\"Base\",bgcolor:\"Background\",wmode:\"WMode\",salign:\"SAlign\",align:\"\\uc815\\ub82c\",scale:\"\\uc2a4\\ucf00\\uc77c\",quality:\"\\ud488\\uc9c8\",shuffle:\"Shuffle\",prefetch:\"Prefetch\",nojava:\"No java\",maintainaspect:\"Maintain aspect\",imagestatus:\"Image status\",center:\"Center\",autogotourl:\"\\uc790\\ub3d9\\uc73c\\ub85c URL\\ub85c \\uac00\\uae30\",\"shockwave_options\":\"Shockwave \\uc635\\uc158\",\"rmp_options\":\"Real media player \\uc635\\uc158\",\"wmp_options\":\"\\uc708\\ub3c4\\uc6b0\\uc988 \\ubbf8\\ub514\\uc5b4 \\ud50c\\ub808\\uc774\\uc5b4 \\uc635\\uc158\",\"qt_options\":\"\\ud035\\ud0c0\\uc784 \\uc635\\uc158\",\"flash_options\":\"\\ud50c\\ub798\\uc26c \\uc635\\uc158\",hidden:\"Hidden\",\"align_bottom_left\":\"Bottom left\",\"align_bottom_right\":\"Bottom right\",flash:\"flash\",quicktime:\"\\ud035\\ud0c0\\uc784\",\"embedded_audio_options\":\"\\uc0bd\\uc785\\ub41c \\uc624\\ub514\\uc624 \\uc635\\uc158\",windowsmedia:\"\\uc708\\ub3c4\\uc6b0\\uc988 \\ubbf8\\ub514\\uc5b4\",realmedia:\"\\ub9ac\\uc5bc\\ubbf8\\ub514\\uc5b4\",shockwave:\"\\uc1fd\\uc6e8\\uc774\\ube0c(shockwave)\",audio:\"\\uc624\\ub514\\uc624\",video:\"\\ube44\\ub514\\uc624(Video)\",\"html5_video_options\":\"HTML5 \\ube44\\ub514\\uc624 \\uc635\\uc158\",altsource1:\"\\ub300\\uccb4 \\uc18c\\uc2a4 1\",altsource2:\"\\ub300\\uccb4 \\uc18c\\uc2a4 2\",preload:\"\\ubbf8\\ub9ac\\ubd88\\ub7ec\\uc624\\uae30\",poster:\"Poster \\uc18d\\uc131\",source:\"\\uc18c\\uc2a4\",\"html5_audio_options\":\"\\uc624\\ub514\\uc624 \\uc635\\uc158\",\"preload_none\":\"\\ubbf8\\ub9ac\\ubd88\\ub7ec\\uc624\\uc9c0 \\uc54a\\uae30\",\"preload_metadata\":\"\\ub3d9\\uc601\\uc0c1 \\uba54\\ud0c0\\ub370\\uc774\\ud130 \\uc608\\uce21\",\"preload_auto\":\"\\uc0ac\\uc6a9\\uc790 \\ube0c\\ub77c\\uc6b0\\uc800\\uc5d0 \\ub530\\ub77c\\uc11c\",iframe:\"iframe\",embeddedaudio:\"\\ub0b4\\uc7a5\\uc74c\\uc131\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/nb_dlg.js",
    "content": "tinyMCE.addI18n('nb.media_dlg',{list:\"Liste\",file:\"Fil/URL\",advanced:\"Avansert\",general:\"Generelt\",title:\"Sett inn / rediger inkludert objekt\",\"align_top_left\":\"Topp venstre\",\"align_center\":\"Midtstill\",\"align_left\":\"Venstre\",\"align_bottom\":\"Bunn\",\"align_right\":\"H\\u00f8yre\",\"align_top\":\"Topp\",\"qt_stream_warn\":\"Streamede rtsp-ressurser b\\u00f8r legges til QT Src-felt i avansert-fanen.\\nDu b\\u00f8r ogs\\u00e5 legge til en ikke-streamet versjon i Src-felt\",qtsrc:\"QT Src\",progress:\"Framdrift\",sound:\"Lyd\",swstretchvalign:\"Strekk V-justering\",swstretchhalign:\"Strekk H-justering\",swstretchstyle:\"Strekkstil\",scriptcallbacks:\"Skript-referanser\",\"align_top_right\":\"Topp h\\u00f8yre\",uimode:\"UI-modus\",rate:\"Rate\",playcount:\"Teller\",defaultframe:\"Standardramme\",currentposition:\"Aktiv posisjon\",currentmarker:\"Aktiv mark\\u00f8r\",captioningid:\"Fang opp id\",baseurl:\"Utgangsadresse (URL)\",balance:\"Balanse\",windowlessvideo:\"Video uten vindu\",stretchtofit:\"Strekk for \\u00e5 passe inn\",mute:\"Demp\",invokeurls:\"Aktiviser URL-er\",fullscreen:\"Fullskjerm\",enabled:\"Kj\\u00f8rbar\",autostart:\"Autostart\",volume:\"Volum\",target:\"M\\u00e5l\",qtsrcchokespeed:\"Choke-hastighet\",href:\"Href\",endtime:\"Stopptid\",starttime:\"Starttid\",enablejavascript:\"Tillat Javaskript\",correction:\"Ingen korreksjon\",targetcache:\"M\\u00e5l-mellomlagring\",playeveryframe:\"Spill hver ramme\",kioskmode:\"Kiosk-modus\",controller:\"Kontroller\",menu:\"Vis meny\",loop:\"L\\u00f8kke\",play:\"Autostart\",hspace:\"Horisontal avstand\",vspace:\"Vertikal avstand\",\"class_name\":\"Klasse\",name:\"Navn\",id:\"Id\",type:\"Type\",size:\"St\\u00f8rrelse\",preview:\"Forh\\u00e5ndsvisning\",\"constrain_proportions\":\"Behold st\\u00f8rrelsesforhold\",controls:\"Kontroller\",numloop:\"Antall gjennoml\\u00f8p\",console:\"Konsoll\",cache:\"Mellomlager\",autohref:\"AutoHREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Flash-variabler\",base:\"Base\",bgcolor:\"Bakgrunn\",wmode:\"W-modus\",salign:\"S-justering\",align:\"Justering\",scale:\"Skalering\",quality:\"Kvalitet\",shuffle:\"Miks\",prefetch:\"Forh\\u00e5ndsregistrer\",nojava:\"Ingen Java\",maintainaspect:\"Behold st\\u00f8rrelsesforhold\",imagestatus:\"Bildestatus\",center:\"Midtstill\",autogotourl:\"Auto-g\\u00e5-til-URL\",\"shockwave_options\":\"Shockwave-innstillinger\",\"rmp_options\":\"Real mediaplayer-innstillinger\",\"wmp_options\":\"Windows mediaplayer-innstillinger\",\"qt_options\":\"Quicktime-innstillinger\",\"flash_options\":\"Flash-egenskaper\",hidden:\"Skjult\",\"align_bottom_left\":\"Bunn venstre\",\"align_bottom_right\":\"Bunn h\\u00f8yre\",flash:\"flash\",quicktime:\"quicktime\",\"embedded_audio_options\":\"Innebygd lyd-valg\",windowsmedia:\"windowsmedia\",realmedia:\"realmedia\",shockwave:\"shockwave\",audio:\"lyd\",video:\"video\",\"html5_video_options\":\"HTML5-videovalg\",altsource1:\"Alternativ kilde 1\",altsource2:\"Alternativ kilde 2\",preload:\"Forh\\u00e5ndsvis\",poster:\"Poster\",source:\"Kilde\",\"html5_audio_options\":\"Lydvalg\",\"preload_none\":\"Ikke forh\\u00e5ndslast\",\"preload_metadata\":\"Forh\\u00e5ndslast videos metadata\",\"preload_auto\":\"La nettleser bestemme\",iframe:\"iframe\",embeddedaudio:\"embeddedaudio\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/nl_dlg.js",
    "content": "tinyMCE.addI18n('nl.media_dlg',{list:\"Lijst\",file:\"Bestand/URL\",advanced:\"Geavanceerd\",general:\"Algemeen\",title:\"Media invoegen/bewerken\",align_top_left:\"Linksboven\",align_center:\"Centreren\",align_left:\"Links\",align_bottom:\"Onder\",align_right:\"Rechts\",align_top:\"Boven\",qt_stream_warn:\"Gestreamde RTSP bronnen dienen op het tabblad geavanceerd bij Quicktime bron te worden opgegeven.\\\\nDe niet-gestreamde versie kan dan bij het tabblad algemeen worden opgegeven.\",qtsrc:\"Quicktime bron\",progress:\"Voortgang\",sound:\"Geluid\",swstretchvalign:\"V-Schaal\",swstretchhalign:\"H-Schaal\",swstretchstyle:\"Schaal\",scriptcallbacks:\"Script callbacks\",align_top_right:\"Rechtsboven\",uimode:\"UI Modus\",rate:\"Snelheid\",playcount:\"Afspeelteller\",defaultframe:\"Standaard frame\",currentposition:\"Huidige positie\",currentmarker:\"Huidige markering\",captioningid:\"Ondertiteling id\",baseurl:\"Basis URL\",balance:\"Balans\",windowlessvideo:\"Video zonder venster\",stretchtofit:\"Passend maken\",mute:\"Dempen\",invokeurls:\"URLs laden\",fullscreen:\"Volledig scherm\",enabled:\"Ingeschakeld\",autostart:\"Automatisch afspelen\",volume:\"Volume\",target:\"Doel\",qtsrcchokespeed:\"Chokesnelheid\",href:\"Href\",endtime:\"Eindtijd\",starttime:\"Starttijd\",enablejavascript:\"JavaScript Inschakelen\",correction:\"Geen correctie\",targetcache:\"Doelcache\",playeveryframe:\"Elk frame afspelen\",kioskmode:\"Kioskmodus\",controller:\"Controller\",menu:\"Menu weergeven\",loop:\"Herhalen\",play:\"Automatisch afspelen\",hspace:\"H-Ruimte\",vspace:\"V-Ruimte\",class_name:\"Klasse\",name:\"Naam\",id:\"Id\",type:\"Type\",size:\"Afmetingen\",preview:\"Voorbeeld\",constrain_proportions:\"Verhouding bewaren\",controls:\"Bediening\",numloop:\"Aantal herhalingen\",console:\"Console\",cache:\"Cache\",autohref:\"AutoHREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Variabelen\",base:\"Basis\",bgcolor:\"Achtergrond\",wmode:\"WMode\",salign:\"Schaaluitlijning\",align:\"Uitlijning\",scale:\"Schaal\",quality:\"Kwaliteit\",shuffle:\"Willekeurige volgorde\",prefetch:\"Voorladen\",nojava:\"Geen java\",maintainaspect:\"Verhouding bewaren\",imagestatus:\"Afbeeldingstatus\",center:\"Centreren\",autogotourl:\"Automatisch naar URL\",shockwave_options:\"Shockwave opties\",rmp_options:\"Real mediaspeler opties\",wmp_options:\"Windows mediaspeler opties\",qt_options:\"Quicktime opties\",flash_options:\"Flash opties\",hidden:\"Verborgen\",align_bottom_left:\"Linksonder\",align_bottom_right:\"Rechtsonder\",flv_options:\"Flash video-opties\",flv_scalemode:\"Schaalmodus\",flv_buffer:\"Buffer\",flv_startimage:\"Startafbeelding\",flv_starttime:\"Starttijd\",flv_defaultvolume:\"Standaard volume\",flv_hiddengui:\"GUI verbergen\",flv_autostart:\"Automatisch afspelen\",flv_loop:\"Herhalen\",flv_showscalemodes:\"Schaalmodus weergeven\",flv_smoothvideo:\"Soepele video\",flv_jscallback:\"JS Callback\",html5_video_options:\"HTML5 Video Opties\",altsource1:\"Alternatieve bron 1\",altsource2:\"Alternatieve bron 2\",preload:\"Voorladen\",poster:\"Poster\",source:\"Bron\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/pl_dlg.js",
    "content": "tinyMCE.addI18n('pl.media_dlg',{list:\"Lista\",file:\"Plik/URL\",advanced:\"Zaawansowany\",general:\"G\\u0142\\u00f3wne\",title:\"Wstaw/Edytuj wbudowane media\",align_top_left:\"G\\u00f3rny lewy\",align_center:\"\\u015arodek\",align_left:\"Lewo\",align_bottom:\"D\\u00f3\\u0142\",align_right:\"Prawo\",align_top:\"G\\u00f3ra\",qt_stream_warn:\"Emitowane \\u017ar\\u00f3d\\u0142a rtsp powinny by\\u0107 dodane do pola QT Src w zak\\u0142adce zaawansowane.nPowiniene\\u015b r\\u00f3wnie\\u017c doda\\u0107 niestrumieniow\\u0105 wersj\\u0119 do pola Src.\",qtsrc:\"QT Src\",progress:\"Post\\u0119p\",sound:\"D\\u017awi\\u0119k\",swstretchvalign:\"Wyr\\u00f3wnaj w pionie\",swstretchhalign:\"Wyr\\u00f3wnaj w poziomie\",swstretchstyle:\"Styl rozci\\u0105gania\",scriptcallbacks:\"Funkcje zwrotne skryptu\",align_top_right:\"G\\u00f3rny prawy\",uimode:\"UI Mode\",rate:\"Tempo\",playcount:\"Ilo\\u015b\\u0107 odtworze\\u0144\",defaultframe:\"Domy\\u015blna ramka\",currentposition:\"Aktualna pozycja\",currentmarker:\"Aktualny znacznik\",captioningid:\"Captioning id\",baseurl:\"Base URL\",balance:\"Balans\",windowlessvideo:\"Wideo bez okienka\",stretchtofit:\"Rozci\\u0105gnij aby dopasowa\\u0107\",mute:\"Wycisz\",invokeurls:\"Odwo\\u0142aj si\\u0119 do URLs\",fullscreen:\"Pe\\u0142ny ekran\",enabled:\"Aktywny\",autostart:\"Auto start\",volume:\"G\\u0142o\\u015bno\\u015b\\u0107\",target:\"Kom\\u00f3rka\",qtsrcchokespeed:\"Choke speed\",href:\"Href\",endtime:\"Ko\\u0144cowy czas\",starttime:\"Pocz\\u0105tkowy czas\",enablejavascript:\"W\\u0142\\u0105cz JavaScript\",correction:\"Bez korekcji\",targetcache:\"Target cache\",playeveryframe:\"Odtwarzaj ka\\u017cd\\u0105 ramk\\u0119\",kioskmode:\"Tryb kiosku\",controller:\"Kontroler\",menu:\"Poka\\u017c menu\",loop:\"Zap\\u0119tlenie\",play:\"Autoodtwarzanie\",hspace:\"H-Space\",vspace:\"V-Space\",class_name:\"Klasa\",name:\"Nazwa\",id:\"Id\",type:\"Typ\",size:\"Wymiary\",preview:\"Podgl\\u0105d\",constrain_proportions:\"Zachowaj proporcje\",controls:\"Controls\",numloop:\"Liczba powt\\u00f3rze\\u0144\",console:\"Konsola\",cache:\"Cache\",autohref:\"AutoHREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Flashvars\",base:\"Baza\",bgcolor:\"T\\u0142o\",wmode:\"WMode\",salign:\"SAlign\",align:\"Wyr\\u00f3wnaj\",scale:\"Skala\",quality:\"Jako\\u015b\\u0107\",shuffle:\"Losuj\",prefetch:\"Prze\\u0142aduj\",nojava:\"Bez javy\",maintainaspect:\"Utrzymaj aspekt\",imagestatus:\"Obraz statusu\",center:\"Wy\\u015brodkuj\",autogotourl:\"Automatycznie przejd\\u017a pod adres\",shockwave_options:\"Opcje Shockwave\",rmp_options:\"Opcje Real media player\",wmp_options:\"Opcje Windows media player\",qt_options:\"Opcje Quicktime\",flash_options:\"Opcje flasha\",hidden:\"Ukryty\",align_bottom_left:\"Dolny lewy\",align_bottom_right:\"Dolny prawy\",flv_options:\"Opcje wideo flasha\",flv_scalemode:\"Tryb skalowania\",flv_buffer:\"Bufor\",flv_startimage:\"Obraz startowy\",flv_starttime:\"Czas startu\",flv_defaultvolume:\"Domy\\u015blna g\\u0142o\\u015bno\\u015b\\u0107\",flv_hiddengui:\"Ukryte GUI\",flv_autostart:\"Autostart\",flv_loop:\"Zap\\u0119tlaj\",flv_showscalemodes:\"Pokazuj tryby skali\",flv_smoothvideo:\"P\\u0142ynne wideo\",flv_jscallback:\"Funkcja zwrotna JS\",html5_video_options:\"Opcje HTML5 Video\",altsource1:\"Alternatywne \\u017ar\\u00f3d\\u0142o 1\",altsource2:\"Alternatywne \\u017ar\\u00f3d\\u0142o 2\",preload:\"Prze\\u0142aduj\",poster:\"Obraz\",source:\"\\u0179r\\u00f3d\\u0142o\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/pt_dlg.js",
    "content": "tinyMCE.addI18n('pt.media_dlg',{list:\"Lista\",file:\"Arquivo/URL\",advanced:\"Avan\\u00e7ado\",general:\"Geral\",title:\"Inserir/Editar m\\u00eddia incorporada\",align_top_left:\"Topo esquerda\",align_center:\"Centro\",align_left:\"Esquerda\",align_bottom:\"Abaixo\",align_right:\"Direita\",align_top:\"Topo\",qt_stream_warn:\"Fluxos de recursos rtsp devem ser acrescentados ao campo QT Src no Modo Avan\\u00e7ado.\\\\Numa vers\\u00e3o sem fluxo tamb\\u00e9m deve ser acrescentada ao campo Src.\",qtsrc:\"QT Src\",progress:\"Progresso\",sound:\"Som\",swstretchvalign:\"For\\u00e7ar V-Alinhamento\",swstretchhalign:\"For\\u00e7ar H-Alinhamento\",swstretchstyle:\"For\\u00e7ar Estilo\",scriptcallbacks:\"Retornos de script\",align_top_right:\"Topo direita\",uimode:\"Modo UI\",rate:\"Taxa\",playcount:\"Contagem de ouvintes\",defaultframe:\"Frame padr\\u00e3o\",currentposition:\"Posi\\u00e7\\u00e3o atual\",currentmarker:\"Marcador atual\",captioningid:\"Id de legenda\",baseurl:\"URL Base\",balance:\"Stereo\",windowlessvideo:\"V\\u00eddeo sem janela\",stretchtofit:\"Estender\",mute:\"Mudo\",invokeurls:\"Chamar URLs\",fullscreen:\"Tela inteira\",enabled:\"Ativado\",autostart:\"Execu\\u00e7\\u00e3o autom\\u00e1tica\",volume:\"Volume\",target:\"Alvo\",qtsrcchokespeed:\"Diminuir Velocidade\",href:\"Link\",endtime:\"Hora do fim\",starttime:\"Hora de in\\u00edcio\",enablejavascript:\"Disponibilizar javaScript\",correction:\"Sem correc\\u00e7\\u00f5es\",targetcache:\"Cache alvo\",playeveryframe:\"Executar todas as frames\",kioskmode:\"Modo Quiosque\",controller:\"Controlador\",menu:\"Mostrar menu\",loop:\"Repeti\\u00e7\\u00e3o autom\\u00e1tica\",play:\"Execu\\u00e7\\u00e3o autom\\u00e1tica\",hspace:\"Espa\\u00e7o horizontal\",vspace:\"Espa\\u00e7o vertical\",class_name:\"Classe\",name:\"Nome\",id:\"Id\",type:\"Tipo\",size:\"Dimens\\u00f5es\",preview:\"Previs\\u00e3o\",constrain_proportions:\"Manter propor\\u00e7\\u00f5es\",controls:\"Controles\",numloop:\"Repeti\\u00e7\\u00f5es\",console:\"Console\",cache:\"Cache\",autohref:\"AutoHREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Flashvars\",base:\"Base\",bgcolor:\"Fundo\",wmode:\"WMode\",salign:\"SAlign\",align:\"Alinhamento\",scale:\"Escala\",quality:\"Qualidade\",shuffle:\"Aleat\\u00f3rio\",prefetch:\"Pr\\u00e9-buscar\",nojava:\"Sem java\",maintainaspect:\"Manter aspecto\",imagestatus:\"Status da imagem\",center:\"Centro\",autogotourl:\"Auto abrir URL\",shockwave_options:\"Op\\u00e7\\u00f5es Shockwave\",rmp_options:\"Op\\u00e7\\u00f5es Real Media Player\",wmp_options:\"Op\\u00e7\\u00f5es Windows Media Player\",qt_options:\"Op\\u00e7\\u00f5es Quicktime\",flash_options:\"Op\\u00e7\\u00f5es Flash\",hidden:\"Oculto\",align_bottom_left:\"Abaixo esquerda\",align_bottom_right:\"Abaixo direita\",flv_options:\"Op\\u00e7\\u00f5es de Flash video\",flv_scalemode:\"Modo escala\",flv_buffer:\"Buffer\",flv_startimage:\"Imagem inicial\",flv_starttime:\"Hora inicial\",flv_defaultvolume:\"Volume padr\\u00e3o\",flv_hiddengui:\"GUI oculta\",flv_autostart:\"Execu\\u00e7\\u00e3o Autom\\u00e1tica\",flv_loop:\"Repeti\\u00e7\\u00e3o\",flv_showscalemodes:\"Mostrar modos escala\",flv_smoothvideo:\"Suavilizar video\",flv_jscallback:\"Retorno de JS\",html5_video_options:\"Op\\u00e7\\u00f5es de v\\u00eddeo HTML5\",altsource1:\"C\\u00f3digo alternativo 1\",altsource2:\"C\\u00f3digo alternativo 2\",preload:\"Pr\\u00e9-carregar\",poster:\"Poster\",source:\"Fonte\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/ro_dlg.js",
    "content": "tinyMCE.addI18n('ro.media_dlg',{list:\"List\\u0103\",file:\"Fi\\u015fier/URL\",advanced:\"Avansat\\u0103\",general:\"General\",title:\"Insereaz\\u0103 / editeaz\\u0103 media\",align_top_left:\"St\\u00e2nga sus\",align_center:\"Centru\",align_left:\"St\\u00e2nga\",align_bottom:\"Jos\",align_right:\"Dreapta\",align_top:\"Sus\",qt_stream_warn:\"Streamed rtsp resources should be added to the QT Src field under the advanced tab.\\\\nYou should also add a non streamed version to the Src field..\",qtsrc:\"QT Src\",progress:\"Progres\",sound:\"Sunet\",swstretchvalign:\"Stretch V-Aliniere\",swstretchhalign:\"Stretch H-Aliniere\",swstretchstyle:\"Stil strech\",scriptcallbacks:\"Script callback\",align_top_right:\"Dreapta sus\",uimode:\"Mod UI\",rate:\"Vot\",playcount:\"Numar red\\u0103ri\",defaultframe:\"Frame implicit\",currentposition:\"Pozi\\u0163ie curent\\u0103\",currentmarker:\"Marcator curent\",captioningid:\"Titlu id\",baseurl:\"URL baz\\u0103\",balance:\"Balan\\u0163\\u0103\",windowlessvideo:\"Video f\\u0103r\\u0103 fereastr\\u0103\",stretchtofit:\"\\u00centinde pentru a se \\u00eencadra\",mute:\"Mut\",invokeurls:\"Invoc\\u0103 URL-uri\",fullscreen:\"Ecran complet\",enabled:\"Activat\",autostart:\"Pornire automat\\u0103\",volume:\"Volum\",target:\"Tin\\u0163a\",qtsrcchokespeed:\"Choke speed\",href:\"Href\",endtime:\"Timp de sf\\u00e2r\\u015fit\",starttime:\"Timp de \\u00eenceput\",enablejavascript:\"Activeaz\\u0103 JavaScript\",correction:\"F\\u0103r\\u0103 corecturi\",targetcache:\"Target cache\",playeveryframe:\"Red\\u0103 fiecare frame\",kioskmode:\"Mod Kiosk\",controller:\"Controler\",menu:\"Arat\\u0103 meniu\",loop:\"Repetare\",play:\"Redare automat\\u0103\",hspace:\"H-Space\",vspace:\"V-Space\",class_name:\"Clas\\u0103\",name:\"Nume\",id:\"Id\",type:\"Tip\",size:\"Dimensiuni\",preview:\"Previzualizare\",constrain_proportions:\"Men\\u0163inere propor\\u0163ii\",controls:\"Controale\",numloop:\"Num\\u0103r de repet\\u0103ri\",console:\"Consola\",cache:\"Cache\",autohref:\"AutoHREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Variabile Flash\",base:\"URL de baza\",bgcolor:\"Fundal\",wmode:\"WMode\",salign:\"SAlign\",align:\"Aliniere\",scale:\"Scar\\u0103\",quality:\"Calitate\",shuffle:\"Aleator\",prefetch:\"Prefetch\",nojava:\"F\\u0103r\\u0103 java\",maintainaspect:\"Men\\u0163ine aspect\",imagestatus:\"Status imagine\",center:\"Centru\",autogotourl:\"Auto goto URL\",shockwave_options:\"Op\\u0163iuni Shockwave\",rmp_options:\"Op\\u0163iuni Real media player\",wmp_options:\"Op\\u0163iuni Windows media player\",qt_options:\"Op\\u0163iuni QuickTime\",flash_options:\"Op\\u0163iuni Flash\",hidden:\"Ascuns\",align_bottom_left:\"St\\u00e2nga jos\",align_bottom_right:\"Dreapta jos\",flv_options:\"Op\\u0163iuni Flash video\",flv_scalemode:\"Moduri scal\\u0103\",flv_buffer:\"Buffer\",flv_startimage:\"Imagine start \",flv_starttime:\"Timp start\",flv_defaultvolume:\"Volum implicit\",flv_hiddengui:\"GUI ascuns\",flv_autostart:\"Auto pornire\",flv_loop:\"Repetare\",flv_showscalemodes:\"Afi\\u015fare moduri scalare\",flv_smoothvideo:\"Smooth video\",flv_jscallback:\"JS Callback\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/ru_dlg.js",
    "content": "tinyMCE.addI18n('ru.media_dlg',{list:\"\\u0421\\u043f\\u0438\\u0441\\u043e\\u043a\",file:\"\\u0410\\u0434\\u0440\\u0435\\u0441\",advanced:\"\\u0414\\u043e\\u043f\\u043e\\u043b\\u043d\\u0438\\u0442\\u0435\\u043b\\u044c\\u043d\\u043e\",general:\"\\u041e\\u0431\\u0449\\u0435\\u0435\",title:\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b \\u043a\\u043b\\u0438\\u043f\\u0430\",align_top_left:\"\\u041f\\u043e \\u043b\\u0435\\u0432\\u043e\\u043c\\u0443 \\u0432\\u0435\\u0440\\u0445\\u043d\\u0435\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",align_center:\"\\u041f\\u043e \\u0446\\u0435\\u043d\\u0442\\u0440\\u0443\",align_left:\"\\u041f\\u043e \\u043b\\u0435\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",align_bottom:\"\\u041f\\u043e \\u043d\\u0438\\u0436\\u043d\\u0435\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",align_right:\"\\u041f\\u043e \\u043f\\u0440\\u0430\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",align_top:\"\\u041f\\u043e \\u0432\\u0435\\u0440\\u0445\\u043d\\u0435\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",qt_stream_warn:\"\\u041f\\u043e\\u0442\\u043e\\u043a\\u043e\\u0432\\u044b\\u0435 rtsp \\u0440\\u0435\\u0441\\u0443\\u0440\\u0441\\u044b \\u0434\\u043e\\u043b\\u0436\\u043d\\u044b \\u0431\\u044b\\u0442\\u044c \\u0432 \\u043f\\u043e\\u043b\\u0435 QT Src.\",qtsrc:\"QT Src\",progress:\"\\u041f\\u0440\\u043e\\u0433\\u0440\\u0435\\u0441\\u0441\",sound:\"\\u0417\\u0432\\u0443\\u043a\",swstretchvalign:\"\\u0412\\u0435\\u0440. \\u0432\\u044b\\u0440-\\u0435 \\u0440\\u0430\\u0441\\u0442\\u044f\\u0436\\u0435\\u043d\\u0438\\u044f\",swstretchhalign:\"\\u0413\\u043e\\u0440. \\u0432\\u044b\\u0440-\\u0435 \\u0440\\u0430\\u0441\\u0442\\u044f\\u0436\\u0435\\u043d\\u0438\\u044f\",swstretchstyle:\"\\u0421\\u0442\\u0438\\u043b\\u044c \\u0440\\u0430\\u0441\\u0442\\u044f\\u0436\\u0435\\u043d\\u0438\\u0435\",scriptcallbacks:\"\\u041f\\u043e\\u0434\\u0434\\u0435\\u0440\\u0436\\u043a\\u0430 \\u0441\\u043a\\u0440\\u0438\\u043f\\u0442\\u0430\",align_top_right:\"\\u041f\\u043e \\u043f\\u0440\\u0430\\u0432\\u043e\\u043c\\u0443 \\u0432\\u0435\\u0440\\u0445\\u043d\\u0435\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",uimode:\"\\u0420\\u0435\\u0436\\u0438\\u043c \\u0438\\u043d\\u0442\\u0435\\u0440\\u0444\\u0435\\u0439\\u0441\\u0430\",rate:\"\\u0420\\u0435\\u0439\\u0442\\u0438\\u043d\\u0433\",playcount:\"\\u0429\\u0435\\u0442\\u0447\\u0438\\u043a \\u0432\\u043e\\u0441\\u043f\\u0440\\u043e\\u0438\\u0437\\u0432\\u0435\\u0434\\u0435\\u043d\\u0438\\u0439\",defaultframe:\"\\u041e\\u0441\\u043d\\u043e\\u0432\\u043d\\u043e\\u0439 \\u043a\\u0430\\u0434\\u0440\",currentposition:\"\\u0422\\u0435\\u043a\\u0443\\u0449\\u0430\\u044f \\u043f\\u043e\\u0437\\u0438\\u0446\\u0438\\u044f\",currentmarker:\"\\u0422\\u0435\\u043a\\u0443\\u0449\\u0438\\u0439 \\u043c\\u0430\\u0440\\u043a\\u0435\\u0440\",captioningid:\"\\u0418\\u043c\\u044f \\u0441\\u0443\\u0431\\u0442\\u0438\\u0442\\u0440\\u043e\\u0432\",baseurl:\"\\u0411\\u0430\\u0437\\u043e\\u0440\\u0432\\u044b\\u0439 \\u0430\\u0434\\u0440\\u0435\\u0441\",balance:\"\\u0411\\u0430\\u043b\\u0430\\u043d\\u0441\",windowlessvideo:\"\\u041e\\u043a\\u043e\\u043d\\u043d\\u043e\\u0435 \\u0432\\u0438\\u0434\\u0435\\u043e\",stretchtofit:\"\\u041f\\u043e\\u0434 \\u0440\\u0430\\u0437\\u043c\\u0435\\u0440 \\u043e\\u043a\\u043d\\u0430\",mute:\"\\u0411\\u0435\\u0437 \\u0437\\u0432\\u0443\\u043a\\u0430\",invokeurls:\"\\u0412\\u044b\\u0437\\u0432\\u0430\\u0442\\u044c \\u0430\\u0434\\u0440\\u0435\\u0441\",fullscreen:\"\\u041d\\u0430 \\u0432\\u0435\\u0441\\u044c \\u044d\\u043a\\u0440\\u0430\\u043d\",enabled:\"\\u0412\\u043a\\u043b\\u044e\\u0447\\u0435\\u043d\\u043e\",autostart:\"\\u0410\\u0432\\u0442\\u043e\\u0437\\u0430\\u043f\\u0443\\u0441\\u043a\",volume:\"\\u0413\\u0440\\u043e\\u043c\\u043a\\u043e\\u0441\\u0442\\u044c\",target:\"\\u0426\\u0435\\u043b\\u044c\",qtsrcchokespeed:\"Choke speed\",href:\"\\u0421\\u0441\\u044b\\u043b\\u043a\\u0430\",endtime:\"\\u0412\\u0440\\u0435\\u043c\\u044f \\u043e\\u043a\\u043e\\u043d\\u0447\\u0430\\u043d\\u0438\\u044f\",starttime:\"\\u0412\\u0440\\u0435\\u043c\\u044f \\u043d\\u0430\\u0447\\u0430\\u043b\\u0430\",enablejavascript:\"\\u0412\\u043a\\u043b\\u044e\\u0447\\u0438\\u0442\\u044c JavaScript\",correction:\"\\u0411\\u0435\\u0437 \\u043a\\u043e\\u0440\\u0440\\u0435\\u043a\\u0442\\u0438\\u0440\\u043e\\u0432\\u043a\\u0438\",targetcache:\"\\u041a\\u044d\\u0448 \\u0446\\u0435\\u043b\\u0438\",playeveryframe:\"\\u0412\\u043e\\u0441\\u043f\\u0440\\u043e\\u0438\\u0437\\u0432\\u0435\\u0441\\u0442\\u0438 \\u043a\\u0430\\u0436\\u0434\\u044b\\u0439 \\u043a\\u0430\\u0434\\u0440\",kioskmode:\"\\u0420\\u0435\\u0436\\u0438\\u043c \\u043a\\u0438\\u043e\\u0441\\u043a\",controller:\"\\u0423\\u043f\\u0440\\u0430\\u0432\\u043b\\u0435\\u043d\\u0438\\u0435\",menu:\"\\u041f\\u043e\\u043a\\u0430\\u0437\\u044b\\u0432\\u0430\\u0442\\u044c \\u043c\\u0435\\u043d\\u044e\",loop:\"\\u041f\\u043e\\u0432\\u0442\\u043e\\u0440\",play:\"\\u0410\\u0432\\u0442\\u0437\\u0430\\u043f\\u0443\\u0441\\u043a\",hspace:\"\\u0413\\u043e\\u0440. \\u043e\\u0442\\u0441\\u0442\\u0443\\u043f\",vspace:\"\\u0412\\u0435\\u0440\\u0442. \\u043e\\u0442\\u0441\\u0442\\u0443\\u043f\",class_name:\"\\u041a\\u043b\\u0430\\u0441\\u0441\",name:\"\\u041d\\u0430\\u0437\\u0432\\u0430\\u043d\\u0438\\u0435\",id:\"\\u0418\\u043c\\u044f\",type:\"\\u0422\\u0438\\u043f\",size:\"\\u0420\\u0430\\u0437\\u043c\\u0435\\u0440\\u044b\",preview:\"\\u041f\\u0440\\u0435\\u0434\\u0432\\u0430\\u0440\\u0438\\u0442\\u0435\\u043b\\u044c\\u043d\\u044b\\u0439 \\u043f\\u0440\\u043e\\u0441\\u043c\\u043e\\u0442\\u0440\",constrain_proportions:\"\\u0421\\u043e\\u0445\\u0440\\u0430\\u043d\\u044f\\u0442\\u044c \\u043f\\u0440\\u043e\\u043f\\u043e\\u0440\\u0446\\u0438\\u0438\",controls:\"\\u0423\\u043f\\u0440\\u0430\\u0432\\u043b\\u0435\\u043d\\u0438\\u0435\",numloop:\"\\u041f\\u043e\\u0432\\u0442\\u043e\\u0440\\u044b\",console:\"\\u041a\\u043e\\u043d\\u0441\\u043e\\u043b\\u044c\",cache:\"\\u041a\\u044d\\u0448\",autohref:\"\\u0410\\u0432\\u0442\\u043e-\\u0441\\u0441\\u044b\\u043b\\u043a\\u0430\",liveconnect:\"SWLiveConnect\",flashvars:\"Flash \\u043a\\u043e\\u043c\\u0430\\u043d\\u0434\\u044b\",base:\"Base\",bgcolor:\"\\u0424\\u043e\\u043d\",wmode:\"\\u041e\\u043a\\u043d\\u043e\",salign:\"\\u0412\\u044b\\u0440-\\u0435\",align:\"\\u0412\\u044b\\u0440\\u0430\\u0432\\u043d\\u0438\\u0432\\u0430\\u043d\\u0438\\u0435\",scale:\"\\u041e\\u0431\\u043b\\u0430\\u0441\\u0442\\u044c\",quality:\"\\u041a\\u0430\\u0447\\u0435\\u0441\\u0442\\u0432\\u043e\",shuffle:\"\\u0412 \\u0440\\u0430\\u0437\\u0431\\u0440\\u043e\\u0441\",prefetch:\"\\u0423\\u043f\\u0440\\u0435\\u0436\\u0434\\u0430\\u044e\\u0449\\u0430\\u044f \\u0432\\u044b\\u0431\\u043e\\u0440\\u043a\\u0430\",nojava:\"\\u0411\\u0435\\u0437 Java\",maintainaspect:\"\\u0417\\u0430\\u043f\\u043e\\u043c\\u043d\\u0438\\u0442\\u044c \\u0440\\u0430\\u0437\\u043c\\u0435\\u0440\",imagestatus:\"\\u0421\\u0442\\u0430\\u0442\\u0443\\u0441 \\u0438\\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u0438\\u044f\",center:\"\\u0426\\u0435\\u043d\\u0442\\u0440\",autogotourl:\"\\u0410\\u0432\\u0442\\u043e\\u043f\\u0435\\u0440\\u0435\\u0445\\u043e\\u0434 \\u043d\\u0430 \\u0430\\u0434\\u0440\\u0435\\u0441\",shockwave_options:\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b Shockwave\",rmp_options:\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b Real Media\",wmp_options:\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b Windows Media\",qt_options:\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b Quicktime\",flash_options:\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b Flash\",hidden:\"\\u0421\\u043a\\u0440\\u044b\\u0442\\u044b\\u0439\",align_bottom_left:\"\\u041f\\u043e \\u043b\\u0435\\u0432\\u043e\\u043c\\u0443 \\u043d\\u0438\\u0436\\u043d\\u0435\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",align_bottom_right:\"\\u041f\\u043e \\u043f\\u0440\\u0430\\u0432\\u043e\\u043c\\u0443 \\u043d\\u0438\\u0436\\u043d\\u0435\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",flv_options:\"\\u041d\\u0430\\u0441\\u0442\\u0440\\u043e\\u0439\\u043a\\u0438 Flash\",flv_scalemode:\"\\u041c\\u0430\\u0441\\u0448\\u0442\\u0430\\u0431\",flv_buffer:\"\\u0411\\u0443\\u0444\\u0435\\u0440\",flv_startimage:\"\\u0421\\u0442\\u0430\\u0440\\u0442\\u043e\\u0432\\u043e\\u0435 \\u0438\\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u0438\\u0435\",flv_starttime:\"\\u0421\\u0442\\u0430\\u0440\\u0442\\u043e\\u0432\\u043e\\u0435 \\u0432\\u0440\\u0435\\u043c\\u044f\",flv_defaultvolume:\"\\u0421\\u0442\\u0430\\u043d\\u0434\\u0430\\u0440\\u0442\\u043d\\u044b\\u0439 \\u0437\\u0432\\u0443\\u043a\",flv_hiddengui:\"\\u0421\\u043a\\u0440\\u044b\\u0442\\u044b\\u0439 \\u0438\\u043d\\u0442\\u0435\\u0440\\u0444\\u0435\\u0439\\u0441\",flv_autostart:\"\\u0410\\u0432\\u0442\\u043e\\u0437\\u0430\\u043f\\u0443\\u0441\\u043a\",flv_loop:\"\\u041f\\u043e\\u0432\\u0442\\u043e\\u0440\",flv_showscalemodes:\"\\u0420\\u0435\\u0436\\u0438\\u043c \\u043c\\u0430\\u0441\\u0448\\u0442\\u0430\\u0431\\u0430\",flv_smoothvideo:\"\\u041f\\u043b\\u0430\\u0432\\u043d\\u043e\\u0435 \\u0432\\u0438\\u0434\\u0435\\u043e\",flv_jscallback:\"\\u041f\\u043e\\u0434\\u0434\\u0435\\u0440\\u0436\\u043a\\u0430 JS\",html5_video_options:\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b HTML5 Video\",altsource1:\"\\u0410\\u043b\\u044c\\u0442\\u0435\\u0440\\u043d\\u0430\\u0442\\u0438\\u0432\\u043d\\u044b\\u0439 \\u0438\\u0441\\u0442\\u043e\\u0447\\u043d\\u0438\\u043a 1\",altsource2:\"\\u0410\\u043b\\u044c\\u0442\\u0435\\u0440\\u043d\\u0430\\u0442\\u0438\\u0432\\u043d\\u044b\\u0439 \\u0438\\u0441\\u0442\\u043e\\u0447\\u043d\\u0438\\u043a 2\",preload:\"\\u041f\\u0440\\u0435\\u0434\\u0437\\u0430\\u0433\\u0440\\u0443\\u0437\\u043a\\u0430\",poster:\"\\u041f\\u043e\\u0441\\u0442\\u0435\\u0440\",source:\"\\u0418\\u0441\\u0442\\u043e\\u0447\\u043d\\u0438\\u043a\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/sr_dlg.js",
    "content": "tinyMCE.addI18n('sr.media_dlg',{list:\"List\",file:\"File/URL\",advanced:\"Advanced\",general:\"General\",title:\"Insert / edit embedded media\",align_top_left:\"Top left\",align_center:\"Center\",align_left:\"Left\",align_bottom:\"Bottom\",align_right:\"Right\",align_top:\"Top\",qt_stream_warn:\"Streamed rtsp resources should be added to the QT Src field under the advanced tab.\\\\nYou should also add a non streamed version to the Src field..\",qtsrc:\"QT Src\",progress:\"Progress\",sound:\"Sound\",swstretchvalign:\"Stretch V-Align\",swstretchhalign:\"Stretch H-Align\",swstretchstyle:\"Stretch style\",scriptcallbacks:\"Script callbacks\",align_top_right:\"Top right\",uimode:\"UI Mode\",rate:\"Rate\",playcount:\"Play count\",defaultframe:\"Default frame\",currentposition:\"Current position\",currentmarker:\"Current marker\",captioningid:\"Captioning id\",baseurl:\"Base URL\",balance:\"Balance\",windowlessvideo:\"Windowless video\",stretchtofit:\"Stretch to fit\",mute:\"Mute\",invokeurls:\"Invoke URLs\",fullscreen:\"Fullscreen\",enabled:\"Enabled\",autostart:\"Auto start\",volume:\"Volume\",target:\"Target\",qtsrcchokespeed:\"Choke speed\",href:\"Href\",endtime:\"End time\",starttime:\"Start time\",enablejavascript:\"Enable JavaScript\",correction:\"No correction\",targetcache:\"Target cache\",playeveryframe:\"Play every frame\",kioskmode:\"Kiosk mode\",controller:\"Controller\",menu:\"Show menu\",loop:\"Loop\",play:\"Auto play\",hspace:\"H-Space\",vspace:\"V-Space\",class_name:\"Class\",name:\"Name\",id:\"Id\",type:\"Type\",size:\"Dimensions\",preview:\"Preview\",constrain_proportions:\"Constrain proportions\",controls:\"Controls\",numloop:\"Num loops\",console:\"Console\",cache:\"Cache\",autohref:\"AutoHREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Flashvars\",base:\"Base\",bgcolor:\"Background\",wmode:\"WMode\",salign:\"SAlign\",align:\"Align\",scale:\"Scale\",quality:\"Quality\",shuffle:\"Shuffle\",prefetch:\"Prefetch\",nojava:\"No java\",maintainaspect:\"Maintain aspect\",imagestatus:\"Image status\",center:\"Center\",autogotourl:\"Auto goto URL\",shockwave_options:\"Shockwave options\",rmp_options:\"Real media player options\",wmp_options:\"Windows media player options\",qt_options:\"Quicktime options\",flash_options:\"Flash options\",hidden:\"Hidden\",align_bottom_left:\"Bottom left\",align_bottom_right:\"Bottom right\",flv_options:\"Flash video options\",flv_scalemode:\"Scale mode\",flv_buffer:\"Buffer\",flv_startimage:\"Start image\",flv_starttime:\"Start time\",flv_defaultvolume:\"Default volumne\",flv_hiddengui:\"Hidden GUI\",flv_autostart:\"Auto start\",flv_loop:\"Loop\",flv_showscalemodes:\"Show scale modes\",flv_smoothvideo:\"Smooth video\",flv_jscallback:\"JS Callback\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/sv_dlg.js",
    "content": "tinyMCE.addI18n('sv.media_dlg',{list:\"Lista\",file:\"Fil/URL\",advanced:\"Avancerat\",general:\"Generellt\",title:\"Infoga/redigera inb\\u00e4ddad media\",\"align_top_left\":\"Top left\",\"align_center\":\"Center\",\"align_left\":\"Left\",\"align_bottom\":\"Bottom\",\"align_right\":\"Right\",\"align_top\":\"Top\",\"qt_stream_warn\":\"Streamed rtsp resources should be added to the QT Src field under the advanced tab.\\\\nYou should also add a non streamed version to the Src field..\",qtsrc:\"QT Src\",progress:\"Progress\",sound:\"Sound\",swstretchvalign:\"Stretch V-Align\",swstretchhalign:\"Stretch H-Align\",swstretchstyle:\"Stretch style\",scriptcallbacks:\"Script callbacks\",\"align_top_right\":\"Top right\",uimode:\"UI Mode\",rate:\"Rate\",playcount:\"Play count\",defaultframe:\"Default frame\",currentposition:\"Current position\",currentmarker:\"Current marker\",captioningid:\"Captioning id\",baseurl:\"Base URL\",balance:\"Balance\",windowlessvideo:\"Windowless video\",stretchtofit:\"Stretch to fit\",mute:\"Mute\",invokeurls:\"Invoke URLs\",fullscreen:\"Fullsk\\u00e4rm\",enabled:\"Enabled\",autostart:\"Starta automatiskt\",volume:\"Volym\",target:\"Target\",qtsrcchokespeed:\"Choke speed\",href:\"Href\",endtime:\"End time\",starttime:\"Start time\",enablejavascript:\"Enable JavaScript\",correction:\"No correction\",targetcache:\"Target cache\",playeveryframe:\"Spela varje bildruta\",kioskmode:\"Kiosk mode\",controller:\"Controller\",menu:\"Visa menyn\",loop:\"Loopa\",play:\"Spela upp automatiskt\",hspace:\"H-Space\",vspace:\"V-Space\",\"class_name\":\"Klass\",name:\"Namn\",id:\"Id\",type:\"Typ\",size:\"Dimensioner\",preview:\"F\\u00f6rhandsvisning\",\"constrain_proportions\":\"Bibeh\\u00e5ll proportionerna\",controls:\"Controls\",numloop:\"Num loops\",console:\"Console\",cache:\"Cache\",autohref:\"AutoHREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Flashvars\",base:\"Base\",bgcolor:\"Bakgrundsf\\u00e4rg\",wmode:\"WMode\",salign:\"SAlign\",align:\"Justera\",scale:\"Skala\",quality:\"Kvalit\\u00e9\",shuffle:\"Shuffle\",prefetch:\"Prefetch\",nojava:\"No java\",maintainaspect:\"Maintain aspect\",imagestatus:\"Image status\",center:\"Center\",autogotourl:\"Auto goto URL\",\"shockwave_options\":\"Shockwave options\",\"rmp_options\":\"Real media player options\",\"wmp_options\":\"Windows media player options\",\"qt_options\":\"Quicktime options\",\"flash_options\":\"Flash options\",hidden:\"Hidden\",\"align_bottom_left\":\"Bottom left\",\"align_bottom_right\":\"Bottom right\",\"flv_options\":\"Flash video options\",\"flv_scalemode\":\"Scale mode\",\"flv_buffer\":\"Buffer\",\"flv_startimage\":\"Start image\",\"flv_starttime\":\"Start time\",\"flv_defaultvolume\":\"Default volumne\",\"flv_hiddengui\":\"Hidden GUI\",\"flv_autostart\":\"Auto start\",\"flv_loop\":\"Loop\",\"flv_showscalemodes\":\"Show scale modes\",\"flv_smoothvideo\":\"Smooth video\",\"flv_jscallback\":\"JS Callback\",\"html5_video_options\":\"HTML5 Filmegenskaper\",altsource1:\"Alternativk\\u00e4lla 1\",altsource2:\"Alternativk\\u00e4lla 2\",preload:\"Preload\",poster:\"Poster\",source:\"Source\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/tr_dlg.js",
    "content": "tinyMCE.addI18n('tr.media_dlg',{list:\"Listele\",file:\"Dosya/URL\",advanced:\"Geli\\u015fmi\\u015f\",general:\"Genel\",title:\"T\\u00fcmle\\u015fik medya ekle / d\\u00fczenle\",\"align_top_left\":\"Sol \\u00fcst\",\"align_center\":\"Orta\",\"align_left\":\"Sol\",\"align_bottom\":\"Alt\",\"align_right\":\"Sa\\u011f\",\"align_top\":\"\\u00dcst\",\"qt_stream_warn\":\"Ak\\u0131\\u015f rtsp kaynaklar\\u0131 geli\\u015fmi\\u015f alt\\u0131ndaki QT Kay. alan\\u0131na girilmeli.\\nKay. alan\\u0131na ayr\\u0131ca ak\\u0131\\u015fkan olmayan eklenir.\",qtsrc:\"QT Kay.\",progress:\"\\u0130lerle\",sound:\"Ses\",swstretchvalign:\"Esnetme D-Hiza\",swstretchhalign:\"Esnetme Y-Hiza\",swstretchstyle:\"Esnetme stili\",scriptcallbacks:\"Script \\u00e7a\\u011f\\u0131r\",\"align_top_right\":\"Sa\\u011f \\u00fcst\",uimode:\"UI Modu\",rate:\"Oran\",playcount:\"Oynatma say\\u0131s\\u0131\",defaultframe:\"Varsay\\u0131lan \\u00e7er\\u00e7eve\",currentposition:\"Se\\u00e7ili konum\",currentmarker:\"Se\\u00e7ili i\\u015faret\\u00e7i\",captioningid:\"Ba\\u015fl\\u0131k id\",baseurl:\"Ge\\u00e7erli URL\",balance:\"Denge\",windowlessvideo:\"Penceresiz video\",stretchtofit:\"S\\u0131\\u011facak \\u015fekilde boyutland\\u0131r\",mute:\"Sessiz\",invokeurls:\"Ba\\u015flatma URL\\'si\",fullscreen:\"Tam ekran\",enabled:\"Aktif\",autostart:\"Otomatik ba\\u015flat\",volume:\"Ses d\\u00fczeyi\",target:\"Hedef\",qtsrcchokespeed:\"S\\u0131k\\u0131\\u015ft\\u0131rma h\\u0131z\\u0131\",href:\"Href\",endtime:\"Biti\\u015f zaman\\u0131\",starttime:\"Ba\\u015flang\\u0131\\u00e7 zaman\\u0131\",enablejavascript:\"Javascript Aktif\",correction:\"D\\u00fczeltme yok\",targetcache:\"Hedef \\u00f6nbellek\",playeveryframe:\"Her \\u00e7er\\u00e7eveyi oynat\",kioskmode:\"Kiosk modu\",controller:\"Kontroller\",menu:\"Men\\u00fcy\\u00fc g\\u00f6ster\",loop:\"D\\u00f6nd\\u00fcr\",play:\"Otomatik oynat\",hspace:\"Yatay bo\\u015fluk\",vspace:\"Dikey bo\\u015fluk\",\"class_name\":\"S\\u0131n\\u0131f\",name:\"\\u0130sim\",id:\"Id\",type:\"Tip\",size:\"Boyutlar\",preview:\"\\u00d6nizleme\",\"constrain_proportions\":\"Oran\\u0131 s\\u0131n\\u0131rla\",controls:\"Kontroller\",numloop:\"D\\u00f6ng\\u00fc say\\u0131s\\u0131\",console:\"Konsol\",cache:\"\\u00d6nbellek\",autohref:\"AutoHREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Flash de\\u011fi\\u015fkeni\",base:\"Taban\",bgcolor:\"Arkaplan\",wmode:\"WModu\",salign:\"SHizala\",align:\"Hizala\",scale:\"\\u00d6l\\u00e7ek\",quality:\"Kalite\",shuffle:\"Kar\\u0131\\u015ft\\u0131r\",prefetch:\"\\u00d6n belle\\u011fe al\",nojava:\"Java yok\",maintainaspect:\"Orant\\u0131y\\u0131 koru\",imagestatus:\"Resim durumu\",center:\"Orta\",autogotourl:\"URL\\'e otomatik git\",\"shockwave_options\":\"Shockware se\\u00e7enekleri\",\"rmp_options\":\"Real media player se\\u00e7enekleri\",\"wmp_options\":\"Windows media player se\\u00e7enekleri\",\"qt_options\":\"Quicktime se\\u00e7enekleri\",\"flash_options\":\"Flash se\\u00e7enekleri\",hidden:\"Gizli\",\"align_bottom_left\":\"Sol alt\",\"align_bottom_right\":\"Sa\\u011f alt\",flash:\"flash\",quicktime:\"quicktime\",\"embedded_audio_options\":\"G\\u00f6m\\u00fcl\\u00fc Ses Ayarlar\\u0131\",windowsmedia:\"windowsmedia\",realmedia:\"realmedia\",shockwave:\"shockwave\",audio:\"ses\",video:\"video\",\"html5_video_options\":\"HTML5 Video Ayarlar\\u0131\",altsource1:\"Alternatif Kaynak 1\",altsource2:\"Alternatif Kaynak 2\",preload:\"\\u00d6ny\\u00fckleme\",poster:\"Poster\",source:\"Kaynak\",\"html5_audio_options\":\"Ses Ayarlar\\u0131\",\"preload_none\":\"\\u00d6ny\\u00fckleme Yapma\",\"preload_metadata\":\"Vide metadata \\u00f6ny\\u00fckleme\",\"preload_auto\":\"Kullan\\u0131c\\u0131n\\u0131n taray\\u0131c\\u0131s\\u0131 karar versin\",iframe:\"iframe\",embeddedaudio:\"g\\u00f6m\\u00fcl\\u00fc ses\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/uk_dlg.js",
    "content": "tinyMCE.addI18n('uk.media_dlg',{list:\"\\u0421\\u043f\\u0438\\u0441\\u043e\\u043a\",file:\"\\u0424\\u0430\\u0439\\u043b/URL\",advanced:\"\\u0414\\u043e\\u0434\\u0430\\u0442\\u043a\\u043e\\u0432\\u043e\",general:\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u044c\\u043d\\u0435\",title:\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438 / \\u0440\\u0435\\u0434\\u0430\\u0433\\u0443\\u0432\\u0430\\u0442\\u0438 \\u0432\\u0431\\u0443\\u0434\\u043e\\u0432\\u0430\\u043d\\u0456 \\u043c\\u0435\\u0434\\u0456\\u0430\",\"align_top_left\":\"\\u0417\\u0432\\u0435\\u0440\\u0445\\u0443 \\u0437\\u043b\\u0456\\u0432\\u0430\",\"align_center\":\"\\u0426\\u0435\\u043d\\u0442\\u0440\",\"align_left\":\"\\u041b\\u0456\\u0432\\u043e\",\"align_bottom\":\"\\u041d\\u0438\\u0437\",\"align_right\":\"\\u041f\\u0440\\u0430\\u0432\\u043e\",\"align_top\":\"\\u0412\\u0435\\u0440\\u0445\",\"qt_stream_warn\":\"Streamed rtsp resources should be added to the QT Src field under the advanced tab.\\nYou should also add a non streamed version to the Src field..\",qtsrc:\"\\u0414\\u0436\\u0435\\u0440\\u0435\\u043b\\u043e QT\",progress:\"\\u0425\\u0456\\u0434\",sound:\"\\u0417\\u0432\\u0443\\u043a\",swstretchvalign:\"\\u0420\\u043e\\u0437\\u0442\\u044f\\u0433\\u043d\\u0443\\u0442\\u0438 \\u0432\\u0435\\u0440\\u0442. \\u0432\\u0438\\u0440\\u0456\\u0432\\u043d\\u044e\\u0430\\u043d\\u043d\\u044f\",swstretchhalign:\"\\u0420\\u043e\\u0437\\u0442\\u044f\\u0433\\u043d\\u0443\\u0442\\u0438 \\u0433\\u043e\\u0440\\u0438\\u0437. \\u0432\\u0438\\u0440\\u0456\\u0432\\u043d\\u044e\\u0430\\u043d\\u043d\\u044f\",swstretchstyle:\"\\u0420\\u043e\\u0437\\u0442\\u044f\\u0433\\u043d\\u0443\\u0442\\u0438\\u0439 \\u0441\\u0442\\u0438\\u043b\\u044c\",scriptcallbacks:\"\\u0417\\u0432\\u043e\\u0440\\u043e\\u0442\\u043d\\u0456\\u0439 \\u0432\\u0438\\u043a\\u043b\\u0438\\u043a \\u0441\\u0446\\u0435\\u043d\\u0430\\u0440\\u0456\\u044e\",\"align_top_right\":\"\\u0417\\u0432\\u0435\\u0440\\u0445\\u0443 \\u0437\\u043f\\u0440\\u0430\\u0432\\u0430\",uimode:\"\\u0420\\u0435\\u0436\\u0438\\u043c \\u0456\\u043d\\u0442\\u0435\\u0440\\u0444\\u0435\\u0439\\u0441\\u0443\",rate:\"\\u0428\\u0432\\u0438\\u0434\\u043a\\u0456\\u0441\\u0442\\u044c\",playcount:\"\\u041a\\u0456\\u043b\\u044c\\u043a\\u0456\\u0441\\u0442\\u044c \\u043f\\u0440\\u043e\\u0433\\u0440\\u0430\\u0432\\u0430\\u043d\\u044c\",defaultframe:\"\\u041a\\u0430\\u0434\\u0440 \\u0437\\u0430 \\u0437\\u0430\\u043c\\u043e\\u0432\\u0447\\u0430\\u043d\\u043d\\u044f\\u043c\",currentposition:\"\\u041f\\u043e\\u0442\\u043e\\u0447\\u043d\\u0430 \\u043f\\u043e\\u0437\\u0438\\u0446\\u0456\\u044f\",currentmarker:\"\\u041f\\u043e\\u0442\\u043e\\u0447\\u043d\\u0438\\u0439 \\u043c\\u0430\\u0440\\u043a\\u0435\\u0440\",captioningid:\"\\u0406\\u0434\\u0435\\u043d\\u0442\\u0438\\u0444\\u0456\\u043a\\u0430\\u0442\\u043e\\u0440 \\u043d\\u0430\\u0434\\u043f\\u0438\\u0441\\u0443\",baseurl:\"\\u041e\\u0441\\u043d\\u043e\\u0432\\u043d\\u0435 \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f\",balance:\"\\u0411\\u0430\\u043b\\u0430\\u043d\\u0441\",windowlessvideo:\"Windowless video\",stretchtofit:\"\\u0417\\u043c\\u0435\\u043d\\u0448\\u0438\\u0442\\u0438, \\u0449\\u043e\\u0431 \\u0432\\u043c\\u0456\\u0441\\u0442\\u0438\\u043b\\u043e\\u0441\\u044c\",mute:\"\\u0417\\u0430\\u0433\\u043b\\u0443\\u0448\\u0438\\u0442\\u0438\",invokeurls:\"\\u0412\\u0438\\u043a\\u043b\\u0438\\u043a\\u0430\\u0442\\u0438 URLs\",fullscreen:\"\\u041f\\u043e\\u0432\\u043d\\u0438\\u0439 \\u0435\\u043a\\u0440\\u0430\\u043d\",enabled:\"\\u0414\\u043e\\u0437\\u0432\\u043e\\u043b\\u0435\\u043d\\u0438\\u0439\",autostart:\"\\u0410\\u0432\\u0442\\u043e\\u0441\\u0442\\u0430\\u0440\\u0442\",volume:\"\\u0413\\u0443\\u0447\\u043d\\u0456\\u0441\\u0442\\u044c\",target:\"\\u0426\\u0456\\u043b\\u044c\",qtsrcchokespeed:\"\\u0428\\u0432\\u0438\\u0434\\u043a\\u0456\\u0441\\u0442\\u044c \\u0437\\u0430\\u0433\\u0430\\u0441\\u0430\\u043d\\u043d\\u044f\",href:\"\\u041f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f\",endtime:\"\\u0427\\u0430\\u0441 \\u043a\\u0456\\u043d\\u0446\\u044f\",starttime:\"\\u0427\\u0430\\u0441 \\u043f\\u043e\\u0447\\u0430\\u0442\\u043a\\u0443\",enablejavascript:\"\\u0414\\u043e\\u0437\\u0432\\u043e\\u043b\\u0438\\u0442\\u0438 JavaScript\",correction:\"\\u0411\\u0435\\u0437 \\u043a\\u043e\\u0440\\u0435\\u043a\\u0446\\u0456\\u0457\",targetcache:\"\\u0426\\u0456\\u043b\\u044c\\u043e\\u0432\\u0438\\u0439 \\u043a\\u0435\\u0448\",playeveryframe:\"\\u041f\\u0440\\u043e\\u0433\\u0440\\u0430\\u0432\\u0430\\u0442\\u0438 \\u043a\\u043e\\u0436\\u0435\\u043d \\u043a\\u0430\\u0434\\u0440\",kioskmode:\"\\u041f\\u043e\\u0432\\u043d\\u043e\\u0435\\u043a\\u0440\\u0430\\u043d\\u043d\\u0438\\u0439 \\u0440\\u0435\\u0436\\u0438\\u043c\",controller:\"\\u041a\\u043e\\u043d\\u0442\\u0440\\u043e\\u043b\\u0435\\u0440\",menu:\"\\u041f\\u043e\\u043a\\u0430\\u0437\\u0443\\u0432\\u0430\\u0442\\u0438 \\u043c\\u0435\\u043d\\u044e\",loop:\"\\u041f\\u043e\\u0432\\u0442\\u043e\\u0440\\u044e\\u0432\\u0430\\u0442\\u0438\",play:\"\\u0410\\u0432\\u0442\\u043e\\u043f\\u0440\\u043e\\u0433\\u0440\\u0430\\u0432\\u043d\\u043d\\u044f\",hspace:\"\\u0433\\u043e\\u0440.\\u0432\\u0456\\u0434\\u0441\\u0442\\u0443\\u043f\",vspace:\"\\u0432\\u0435\\u0440\\u0442.\\u0432\\u0456\\u0434\\u0441\\u0442\\u0443\\u043f\",\"class_name\":\"\\u041a\\u043b\\u0430\\u0441\",name:\"\\u041d\\u0430\\u0437\\u0432\\u0430\",id:\"\\u0406\\u0434\\u0435\\u043d\\u0442\\u0438\\u0444\\u0456\\u043a\\u0430\\u0442\\u043e\\u0440\",type:\"\\u0422\\u0438\\u043f\",size:\"\\u0420\\u043e\\u0437\\u043c\\u0456\\u0440\\u0438\",preview:\"\\u041f\\u0435\\u0440\\u0435\\u0433\\u043b\\u044f\\u0434\",\"constrain_proportions\":\"\\u0417\\u0431\\u0435\\u0440\\u0456\\u0433\\u0430\\u0442\\u0438 \\u043f\\u0440\\u043e\\u043f\\u043e\\u0440\\u0446\\u0456\\u0457\",controls:\"\\u041a\\u0435\\u0440\\u0443\\u0432\\u0430\\u043d\\u043d\\u044f\",numloop:\"\\u041a\\u0456\\u043b\\u044c\\u043a\\u0456\\u0441\\u0442\\u044c \\u0446\\u0438\\u043a\\u043b\\u0456\\u0432\",console:\"\\u041a\\u043e\\u043d\\u0441\\u043e\\u043b\\u044c\",cache:\"\\u041a\\u0435\\u0448\",autohref:\"AutoHREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Flash-\\u043f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u0438\",base:\"\\u0411\\u0430\\u0437\\u0430\",bgcolor:\"\\u0424\\u043e\\u043d\",wmode:\"W-\\u0440\\u0435\\u0436\\u0438\\u043c\",salign:\"S-\\u0412\\u0438\\u0440\\u0456\\u0432\\u043d\\u044e\\u0432\\u0430\\u043d\\u043d\\u044f\",align:\"\\u0412\\u0438\\u0440\\u0456\\u0432\\u043d\\u044e\\u0432\\u0430\\u043d\\u043d\\u044f\",scale:\"\\u041c\\u0430\\u0441\\u0448\\u0442\\u0430\\u0431\\u0443\\u0432\\u0430\\u043d\\u043d\\u044f\",quality:\"\\u042f\\u043a\\u0456\\u0441\\u0442\\u044c\",shuffle:\"\\u041f\\u0435\\u0440\\u0435\\u0442\\u0430\\u0441\\u0443\\u0432\\u0430\\u0442\\u0438\",prefetch:\"\\u041f\\u043e\\u043f\\u0435\\u0440\\u0435\\u0434\\u043d\\u0454 \\u0432\\u0438\\u043b\\u0443\\u0447\\u0435\\u043d\\u043d\\u044f\",nojava:\"\\u0411\\u0435\\u0437 Java\",maintainaspect:\"\\u0412\\u0434\\u0435\\u0440\\u0436\\u0443\\u0432\\u0430\\u0442\\u0438 \\u0440\\u0430\\u043a\\u0443\\u0440\\u0441\",imagestatus:\"\\u0421\\u0442\\u0430\\u0442\\u0443\\u0441 \\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u043d\\u044f\",center:\"\\u041f\\u043e \\u0446\\u0435\\u043d\\u0442\\u0440\\u0443\",autogotourl:\"\\u041f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f \\u0430\\u0432\\u0442\\u043e\\u043f\\u0435\\u0440\\u0435\\u0445\\u043e\\u0434\\u0443\",\"shockwave_options\":\"\\u041e\\u043f\\u0446\\u0456\\u0457 Shockwave\",\"rmp_options\":\"\\u041e\\u043f\\u0446\\u0456\\u0457 Real media player\",\"wmp_options\":\"\\u041e\\u043f\\u0446\\u0456\\u0457 Windows media player\",\"qt_options\":\"\\u041e\\u043f\\u0446\\u0456\\u0457 Quicktime\",\"flash_options\":\"\\u041e\\u043f\\u0446\\u0456\\u0457 Flash\",hidden:\"\\u041f\\u0440\\u0438\\u0445\\u043e\\u0432\\u0430\\u043d\\u0438\\u0439\",\"align_bottom_left\":\"\\u0417\\u043d\\u0438\\u0437\\u0443 \\u0437\\u043b\\u0456\\u0432\\u0430\",\"align_bottom_right\":\"\\u0417\\u043d\\u0438\\u0437\\u0443 \\u0437\\u043f\\u0440\\u0430\\u0432\\u0430\",flash:\"flash\",quicktime:\"quicktime\",\"embedded_audio_options\":\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u0438 \\u0432\\u0431\\u0443\\u0434\\u043e\\u0432\\u0430\\u043d\\u043e\\u0433\\u043e \\u0437\\u0432\\u0443\\u043a\\u0443\",windowsmedia:\"windowsmedia\",realmedia:\"realmedia\",shockwave:\"shockwave\",audio:\"audio\",video:\"video\",\"html5_video_options\":\"\\u0412\\u0456\\u0434\\u0435\\u043e \\u043e\\u043f\\u0446\\u0456\\u0457 HTML5\",altsource1:\"\\u0410\\u043b\\u0442\\u0435\\u0440\\u043d\\u0430\\u0442\\u0438\\u0432\\u043d\\u0435 \\u0434\\u0436\\u0435\\u0440\\u0435\\u043b\\u043e 1\",altsource2:\"\\u0410\\u043b\\u044c\\u0442\\u0435\\u0440\\u043d\\u0430\\u0442\\u0438\\u0432\\u043d\\u0435 \\u0434\\u0436\\u0435\\u0440\\u0435\\u043b\\u043e 2\",preload:\"\\u041f\\u043e\\u043f\\u0435\\u0440\\u0435\\u0434\\u043d\\u0454 \\u0437\\u0430\\u0432\\u0430\\u043d\\u0442\\u0430\\u0436\\u0435\\u043d\\u043d\\u044f\",poster:\"\\u041f\\u043e\\u0441\\u0442\\u0435\\u0440\",source:\"\\u0414\\u0436\\u0435\\u0440\\u0435\\u043b\\u043e\",\"html5_audio_options\":\"\\u0410\\u0443\\u0434\\u0456\\u043e \\u043e\\u043f\\u0446\\u0456\\u0457\",\"preload_none\":\"\\u0411\\u0435\\u0437 \\u043f\\u043e\\u043f\\u0435\\u0440\\u0435\\u0434\\u043d\\u044c\\u043e\\u0457 \\u0437\\u0430\\u0433\\u0440\\u0443\\u0437\\u043a\\u0438\",\"preload_metadata\":\"\\u041f\\u043e\\u043f\\u0435\\u0440\\u0435\\u0434\\u043d\\u044f \\u0437\\u0430\\u0433\\u0440\\u0443\\u0437\\u043a\\u0430 \\u043c\\u0435\\u0442\\u0430\\u0434\\u0430\\u043d\\u0438\\u0445 \\u0432\\u0456\\u0434\\u0435\\u043e\",\"preload_auto\":\"\\u041d\\u0430 \\u0440\\u043e\\u0437\\u0441\\u0443\\u0434 \\u0431\\u0440\\u0430\\u0443\\u0437\\u0435\\u0440\\u0430\",iframe:\"iframe\",embeddedaudio:\"embeddedaudio\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/zh-tw_dlg.js",
    "content": "tinyMCE.addI18n('zh-tw.media_dlg',{\"qt_stream_warn\":\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\",source:\"\\u5d4c\\u5165\\u539f\\u59cb\\u6a94\",list:\"List\",file:\"File/URL\",advanced:\"Advanced\",general:\"General\",title:\"Insert/Edit Embedded Media\",\"align_top_left\":\"Top Left\",\"align_center\":\"Center\",\"align_left\":\"Left\",\"align_bottom\":\"Bottom\",\"align_right\":\"Right\",\"align_top\":\"Top\",qtsrc:\"QT Source\",progress:\"Progress\",sound:\"Sound\",swstretchvalign:\"Stretch V-Align\",swstretchhalign:\"Stretch H-Align\",swstretchstyle:\"Stretch Style\",scriptcallbacks:\"Script Callbacks\",\"align_top_right\":\"Top Right\",uimode:\"UI Mode\",rate:\"Rate\",playcount:\"Play Count\",defaultframe:\"Default Frame\",currentposition:\"Current Position\",currentmarker:\"Current Marker\",captioningid:\"Captioning ID\",baseurl:\"Base URL\",balance:\"Balance\",windowlessvideo:\"Windowless Video\",stretchtofit:\"Stretch to Fit\",mute:\"Mute\",invokeurls:\"Invoke URLs\",fullscreen:\"Full Screen\",enabled:\"Enabled\",autostart:\"Auto Start\",volume:\"Volume\",target:\"Target\",qtsrcchokespeed:\"Choke Speed\",href:\"HREF\",endtime:\"End Time\",starttime:\"Start Time\",enablejavascript:\"Enable JavaScript\",correction:\"No Correction\",targetcache:\"Target Cache\",playeveryframe:\"Play Every Frame\",kioskmode:\"Kiosk Mode\",controller:\"Controller\",menu:\"Show Menu\",loop:\"Loop\",play:\"Auto Play\",hspace:\"H-Space\",vspace:\"V-Space\",\"class_name\":\"Class\",name:\"Name\",id:\"ID\",type:\"Type\",size:\"Dimensions\",preview:\"Preview\",\"constrain_proportions\":\"Constrain Proportions\",controls:\"Controls\",numloop:\"Num Loops\",console:\"Console\",cache:\"Cache\",autohref:\"Auto HREF\",liveconnect:\"SWLiveConnect\",flashvars:\"Flash Vars\",base:\"Base\",bgcolor:\"Background\",wmode:\"WMode\",salign:\"SAlign\",align:\"Align\",scale:\"Scale\",quality:\"Quality\",shuffle:\"Shuffle\",prefetch:\"Prefetch\",nojava:\"No Java\",maintainaspect:\"Maintain Aspect\",imagestatus:\"Image Status\",center:\"Center\",autogotourl:\"Auto Goto URL\",\"shockwave_options\":\"Shockwave Options\",\"rmp_options\":\"Real Media Player Options\",\"wmp_options\":\"Windows Media Player Options\",\"qt_options\":\"QuickTime Options\",\"flash_options\":\"Flash Options\",hidden:\"Hidden\",\"align_bottom_left\":\"Bottom Left\",\"align_bottom_right\":\"Bottom Right\",\"html5_video_options\":\"HTML5 Video Options\",altsource1:\"Alternative source 1\",altsource2:\"Alternative source 2\",preload:\"Preload\",poster:\"Poster\",\"html5_audio_options\":\"Audio Options\",\"preload_none\":\"Don\\'t Preload\",\"preload_metadata\":\"Preload video metadata\",\"preload_auto\":\"Let user\\'s browser decide\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/langs/zh_dlg.js",
    "content": "tinyMCE.addI18n('zh.media_dlg',{list:\"\\u5217\\u8868\",file:\"\\u6587\\u4ef6/URL\",advanced:\"\\u9ad8\\u7ea7\",general:\"\\u666e\\u901a\",title:\"\\u63d2\\u5165/\\u7f16\\u8f91\\u5d4c\\u5165\\u5a92\\u4f53\",\"align_top_left\":\"\\u5de6\\u4e0a\",\"align_center\":\"\\u5c45\\u4e2d\",\"align_left\":\"\\u9760\\u5de6\",\"align_bottom\":\"\\u9760\\u4e0b\",\"align_right\":\"\\u9760\\u53f3\",\"align_top\":\"\\u9760\\u4e0a\",\"qt_stream_warn\":\"\\u6d41\\u5a92\\u4f53RTSP\\u8d44\\u6e90\\u5e94\\u5728\\u2018\\u9ad8\\u7ea7\\u2019\\u4e2d\\u7684QT src\\u680f\\u76ee\\u4e2d\\u586b\\u5199\\u3002\\n\\u540c\\u65f6\\u5728src\\u680f\\u4f4d\\u4e2d\\u586b\\u5199\\u975e\\u6d41\\u5a92\\u4f53\\u7f51\\u5740\\u3002\",qtsrc:\"QT src\",progress:\"\\u8fdb\\u5ea6\",sound:\"\\u58f0\\u97f3\",swstretchvalign:\"\\u8c03\\u6574\\u81f3\\u5782\\u76f4\\u5bf9\\u9f50\",swstretchhalign:\"\\u8c03\\u6574\\u81f3\\u6c34\\u5e73\\u5bf9\\u9f50\",swstretchstyle:\"\\u8c03\\u6574\\u6837\\u5f0f\",scriptcallbacks:\"Script\\u8c03\\u7528\",\"align_top_right\":\"\\u53f3\\u4e0a\",uimode:\"\\u9762\\u677f\\u6a21\\u5f0f\",rate:\"\\u6bd4\\u4f8b\",playcount:\"\\u64ad\\u653e\\u6b21\\u6570\",defaultframe:\"\\u9884\\u8bbe\\u753b\\u9762\",currentposition:\"\\u5f53\\u524d\\u4f4d\\u7f6e\",currentmarker:\"\\u5f53\\u524d\\u6807\\u8bb0\",captioningid:\"\\u5b57\\u5e55ID\",baseurl:\"\\u6839URL\",balance:\"\\u5e73\\u8861\",windowlessvideo:\"\\u65e0\\u7a97\\u53e3\\u64ad\\u653e\",stretchtofit:\"\\u8c03\\u81f3\\u6700\\u4f73\\u5927\\u5c0f\",mute:\"\\u9759\\u97f3\",invokeurls:\"\\u5f15\\u7528\\u7684URLs\",fullscreen:\"\\u5168\\u5c4f\",enabled:\"\\u53ef\\u7528\",autostart:\"\\u81ea\\u52a8\\u64ad\\u653e\",volume:\"\\u97f3\\u91cf\",target:\"\\u76ee\\u6807\",qtsrcchokespeed:\"\\u9650\\u5236\\u901f\\u5ea6\",href:\"\\u8d85\\u94fe\\u63a5\",endtime:\"\\u7ed3\\u675f\\u65f6\\u95f4\",starttime:\"\\u5f00\\u59cb\\u65f6\\u95f4\",enablejavascript:\"\\u542f\\u7528JavaScript\",correction:\"\\u66f4\\u6b63\",targetcache:\"\\u76ee\\u6807\\u7f13\\u5b58\",playeveryframe:\"\\u9010\\u683c\\u64ad\\u653e\",kioskmode:\"Kiosk\\u6a21\\u5f0f\",controller:\"\\u63a7\\u5236\\u53f0\",menu:\"\\u663e\\u793a\\u83dc\\u5355\",loop:\"\\u5faa\\u73af\\u64ad\\u653e\",play:\"\\u81ea\\u52a8\\u64ad\\u653e\",hspace:\"\\u6c34\\u5e73\\u95f4\\u8ddd\",vspace:\"\\u5782\\u76f4\\u95f4\\u8ddd\",\"class_name\":\"\\u7c7b\",name:\"\\u540d\\u79f0\",id:\"ID\",type:\"\\u7c7b\\u578b\",size:\"\\u5927\\u5c0f\",preview:\"\\u9884\\u89c8\",\"constrain_proportions\":\"\\u56fa\\u5b9a\\u6bd4\\u4f8b\",controls:\"\\u63a7\\u5236\",numloop:\"\\u5faa\\u73af\\u6b21\\u6570\",console:\"\\u63a7\\u5236\\u53f0\",cache:\"\\u7f13\\u5b58\",autohref:\"\\u81ea\\u52a8\\u8bbe\\u7f6e\\u8d85\\u94fe\\u63a5\",liveconnect:\"SWLiveConnect\",flashvars:\"Flash\\u53c2\\u6570\",base:\"\\u6839\",bgcolor:\"\\u80cc\\u666f\\u989c\\u8272\",wmode:\"\\u7a97\\u53e3\\u6a21\\u5f0f\",salign:\"\\u5bf9\\u9f50\\u4f4d\\u7f6e\",align:\"\\u5bf9\\u9f50\",scale:\"\\u7f29\\u653e\",quality:\"\\u54c1\\u8d28\",shuffle:\"\\u968f\\u673a\",prefetch:\"\\u9884\\u8f7d\",nojava:\"\\u7981\\u6b62Java\",maintainaspect:\"\\u56fa\\u5b9a\\u6bd4\\u4f8b\",imagestatus:\"\\u56fe\\u7247\\u72b6\\u6001\",center:\"\\u5c45\\u4e2d\",autogotourl:\"\\u81ea\\u52a8\\u8df3\\u8f6cURL\",\"shockwave_options\":\"Shockwave\\u9009\\u9879\",\"rmp_options\":\"Real Media Player\\u9009\\u9879\",\"wmp_options\":\"Windows Media Player\\u9009\\u9879\",\"qt_options\":\"Quick Time\\u9009\\u9879\",\"flash_options\":\"Flash\\u9009\\u9879\",hidden:\"\\u9690\\u85cf\",\"align_bottom_left\":\"\\u5de6\\u4e0b\",\"align_bottom_right\":\"\\u53f3\\u4e0b\",flash:\"Flash\",quicktime:\"QuickTime\",\"embedded_audio_options\":\"\\u5d4c\\u5165\\u58f0\\u97f3\\u9009\\u9879\",windowsmedia:\"Windows Media\",realmedia:\"Real Media\",shockwave:\"Shockwave\",audio:\"HTML5\\u97f3\\u9891\",video:\"HTML5\\u89c6\\u9891\",\"html5_video_options\":\"HTML5\\u89c6\\u9891\\u9009\\u9879\",altsource1:\"\\u66ff\\u4ee3\\u6765\\u6e901\",altsource2:\"\\u66ff\\u4ee3\\u6765\\u6e902\",preload:\"\\u9884\\u8f7d\\u5165\",poster:\"\\u5f71\\u7247\\u7f29\\u56fe\",source:\"\\u6e90\",\"html5_audio_options\":\"\\u58f0\\u97f3\\u9009\\u9879\",\"preload_none\":\"\\u4e0d\\u9884\\u8f7d\\u5165\",\"preload_metadata\":\"\\u9884\\u8f7d\\u5165\\u89c6\\u9891Metadata\",\"preload_auto\":\"\\u8ba9\\u7528\\u6237\\u6d4f\\u89c8\\u5668\\u51b3\\u5b9a\",iframe:\"Iframe\",embeddedaudio:\"\\u5d4c\\u5165\\u58f0\\u97f3\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/media/media.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#media_dlg.title}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/media.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/validate.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/form_utils.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/editable_selects.js\"></script>\r\n\t<link href=\"css/media.css\" rel=\"stylesheet\" type=\"text/css\" />\r\n</head>\r\n<body style=\"display: none\" role=\"application\">\r\n<form onsubmit=\"Media.insert();return false;\" action=\"#\">\r\n\t\t<div class=\"tabs\" role=\"presentation\">\r\n\t\t\t<ul>\r\n\t\t\t\t<li id=\"general_tab\" class=\"current\" aria-controls=\"general_panel\"><span><a href=\"javascript:mcTabs.displayTab('general_tab','general_panel');Media.formToData();\" onmousedown=\"return false;\">{#media_dlg.general}</a></span></li>\r\n\t\t\t\t<li id=\"advanced_tab\" aria-controls=\"advanced_panel\"><span><a href=\"javascript:mcTabs.displayTab('advanced_tab','advanced_panel');Media.formToData();\" onmousedown=\"return false;\">{#media_dlg.advanced}</a></span></li>\r\n\t\t\t\t<li id=\"source_tab\" aria-controls=\"source_panel\"><span><a href=\"javascript:mcTabs.displayTab('source_tab','source_panel');Media.formToData('source');\" onmousedown=\"return false;\">{#media_dlg.source}</a></span></li>\r\n\t\t\t</ul>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"panel_wrapper\">\r\n\t\t\t<div id=\"general_panel\" class=\"panel current\">\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#media_dlg.general}</legend>\r\n\r\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<td><label for=\"media_type\">{#media_dlg.type}</label></td>\r\n\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t<select id=\"media_type\"></select>\r\n\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"src\">{#media_dlg.file}</label></td>\r\n\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input id=\"src\" name=\"src\" type=\"text\" value=\"\" class=\"mceFocus\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"filebrowsercontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr id=\"linklistrow\">\r\n\t\t\t\t\t\t\t\t<td><label for=\"linklist\">{#media_dlg.list}</label></td>\r\n\t\t\t\t\t\t\t\t<td id=\"linklistcontainer\"><select id=\"linklist\"><option value=\"\"></option></select></td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<td><label for=\"width\">{#media_dlg.size}</label></td>\r\n\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<td><input type=\"text\" id=\"width\" name=\"width\" value=\"\" class=\"size\" onchange=\"Media.formToData('width');\" onfocus=\"Media.beforeResize();\" /> x <input type=\"text\" id=\"height\" name=\"height\" value=\"\" class=\"size\" onfocus=\"Media.beforeResize();\" onchange=\"Media.formToData('height');\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>&nbsp;&nbsp;<input id=\"constrain\" type=\"checkbox\" name=\"constrain\" class=\"checkbox\" checked=\"checked\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t\t<td><label id=\"constrainlabel\" for=\"constrain\">{#media_dlg.constrain_proportions}</label></td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#media_dlg.preview}</legend>\r\n\t\t\t\t\t<div id=\"prev\"></div>\r\n\t\t\t\t</fieldset>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div id=\"advanced_panel\" class=\"panel\">\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#media_dlg.advanced}</legend>\r\n\r\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"4\" cellspacing=\"0\" width=\"100%\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"id\">{#media_dlg.id}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"id\" name=\"id\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t<td><label for=\"name\">{#media_dlg.name}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"name\" name=\"name\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"align\">{#media_dlg.align}</label></td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"align\" name=\"align\" onchange=\"Media.formToData();\">\r\n\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"top\">{#media_dlg.align_top}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"right\">{#media_dlg.align_right}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"bottom\">{#media_dlg.align_bottom}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"left\">{#media_dlg.align_left}</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td><label for=\"bgcolor\">{#media_dlg.bgcolor}</label></td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input id=\"bgcolor\" name=\"bgcolor\" type=\"text\" value=\"\" size=\"9\" onchange=\"updateColor('bgcolor_pick','bgcolor');Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"bgcolor_pickcontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"vspace\">{#media_dlg.vspace}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"vspace\" name=\"vspace\" class=\"number\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t<td><label for=\"hspace\">{#media_dlg.hspace}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"hspace\" name=\"hspace\" class=\"number\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\r\n\t\t\t\t<fieldset id=\"video_options\">\r\n\t\t\t\t\t<legend>{#media_dlg.html5_video_options}</legend>\r\n\r\n\t\t\t\t\t<table role=\"presentation\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"video_altsource1\">{#media_dlg.altsource1}</label></td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"text\" id=\"video_altsource1\" name=\"video_altsource1\" onchange=\"Media.formToData();\" style=\"width: 240px\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"video_altsource1_filebrowser\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"video_altsource2\">{#media_dlg.altsource2}</label></td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"text\" id=\"video_altsource2\" name=\"video_altsource2\" onchange=\"Media.formToData();\" style=\"width: 240px\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"video_altsource2_filebrowser\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"video_poster\">{#media_dlg.poster}</label></td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"text\" id=\"video_poster\" name=\"video_poster\" onchange=\"Media.formToData();\" style=\"width: 240px\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"video_poster_filebrowser\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"video_preload\">{#media_dlg.preload}</label></td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"video_preload\" name=\"video_preload\" onchange=\"Media.formToData();\">\r\n\t\t\t\t\t\t\t\t\t<option value=\"none\">{#media_dlg.preload_none}</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"metadata\">{#media_dlg.preload_metadata}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"auto\">{#media_dlg.preload_auto}</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\r\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"video_autoplay\" name=\"video_autoplay\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"video_autoplay\">{#media_dlg.play}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"video_muted\" name=\"video_muted\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"video_muted\">{#media_dlg.mute}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"video_loop\" name=\"video_loop\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td><label for=\"video_loop\">{#media_dlg.loop}</label></td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"video_controls\" name=\"video_controls\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"video_controls\">{#media_dlg.controls}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\r\n\t\t\t\t<fieldset id=\"embeddedaudio_options\">\r\n\t\t\t\t\t<legend>{#media_dlg.embedded_audio_options}</legend>\r\n\r\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"embeddedaudio_autoplay\" name=\"audio_autoplay\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"audio_autoplay\">{#media_dlg.play}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"embeddedaudio_loop\" name=\"audio_loop\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"audio_loop\">{#media_dlg.loop}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"embeddedaudio_controls\" name=\"audio_controls\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"audio_controls\">{#media_dlg.controls}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\r\n\t\t\t\t<fieldset id=\"audio_options\">\r\n\t\t\t\t\t<legend>{#media_dlg.html5_audio_options}</legend>\r\n\r\n\t\t\t\t\t<table role=\"presentation\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"audio_altsource1\">{#media_dlg.altsource1}</label></td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"text\" id=\"audio_altsource1\" name=\"audio_altsource1\" onchange=\"Media.formToData();\" style=\"width: 240px\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"audio_altsource1_filebrowser\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"audio_altsource2\">{#media_dlg.altsource2}</label></td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"text\" id=\"audio_altsource2\" name=\"audio_altsource2\" onchange=\"Media.formToData();\" style=\"width: 240px\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"audio_altsource2_filebrowser\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"audio_preload\">{#media_dlg.preload}</label></td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"audio_preload\" name=\"audio_preload\" onchange=\"Media.formToData();\">\r\n\t\t\t\t\t\t\t\t\t<option value=\"none\">{#media_dlg.preload_none}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"metadata\">{#media_dlg.preload_metadata}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"auto\">{#media_dlg.preload_auto}</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\r\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"audio_autoplay\" name=\"audio_autoplay\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"audio_autoplay\">{#media_dlg.play}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"audio_loop\" name=\"audio_loop\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"audio_loop\">{#media_dlg.loop}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"audio_controls\" name=\"audio_controls\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"audio_controls\">{#media_dlg.controls}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\r\n\t\t\t\t<fieldset id=\"flash_options\">\r\n\t\t\t\t\t<legend>{#media_dlg.flash_options}</legend>\r\n\r\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"flash_quality\">{#media_dlg.quality}</label></td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"flash_quality\" name=\"flash_quality\" onchange=\"Media.formToData();\">\r\n\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"high\">high</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"low\">low</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"autolow\">autolow</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"autohigh\">autohigh</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"best\">best</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td><label for=\"flash_scale\">{#media_dlg.scale}</label></td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"flash_scale\" name=\"flash_scale\" onchange=\"Media.formToData();\">\r\n\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"showall\">showall</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"noborder\">noborder</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"exactfit\">exactfit</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"noscale\">noscale</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"flash_wmode\">{#media_dlg.wmode}</label></td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"flash_wmode\" name=\"flash_wmode\" onchange=\"Media.formToData();\">\r\n\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"window\">window</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"opaque\">opaque</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"transparent\">transparent</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td><label for=\"flash_salign\">{#media_dlg.salign}</label></td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"flash_salign\" name=\"flash_salign\" onchange=\"Media.formToData();\">\r\n\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"l\">{#media_dlg.align_left}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"t\">{#media_dlg.align_top}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"r\">{#media_dlg.align_right}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"b\">{#media_dlg.align_bottom}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"tl\">{#media_dlg.align_top_left}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"tr\">{#media_dlg.align_top_right}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"bl\">{#media_dlg.align_bottom_left}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"br\">{#media_dlg.align_bottom_right}</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"flash_play\" name=\"flash_play\" checked=\"checked\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"flash_play\">{#media_dlg.play}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"flash_loop\" name=\"flash_loop\" checked=\"checked\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"flash_loop\">{#media_dlg.loop}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"flash_menu\" name=\"flash_menu\" checked=\"checked\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"flash_menu\">{#media_dlg.menu}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"flash_swliveconnect\" name=\"flash_swliveconnect\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"flash_swliveconnect\">{#media_dlg.liveconnect}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\r\n\t\t\t\t\t<table role=\"presentation\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"flash_base\">{#media_dlg.base}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"flash_base\" name=\"flash_base\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"flash_flashvars\">{#media_dlg.flashvars}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"flash_flashvars\" name=\"flash_flashvars\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\r\n\t\t\t\t<fieldset id=\"quicktime_options\">\r\n\t\t\t\t\t<legend>{#media_dlg.qt_options}</legend>\r\n\r\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"quicktime_loop\" name=\"quicktime_loop\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"quicktime_loop\">{#media_dlg.loop}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"quicktime_autoplay\" name=\"quicktime_autoplay\" checked=\"checked\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"quicktime_autoplay\">{#media_dlg.play}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"quicktime_cache\" name=\"quicktime_cache\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"quicktime_cache\">{#media_dlg.cache}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"quicktime_controller\" name=\"quicktime_controller\" checked=\"checked\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"quicktime_controller\">{#media_dlg.controller}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"quicktime_correction\" name=\"quicktime_correction\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"quicktime_correction\">{#media_dlg.correction}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"quicktime_enablejavascript\" name=\"quicktime_enablejavascript\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"quicktime_enablejavascript\">{#media_dlg.enablejavascript}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"quicktime_kioskmode\" name=\"quicktime_kioskmode\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"quicktime_kioskmode\">{#media_dlg.kioskmode}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"quicktime_autohref\" name=\"quicktime_autohref\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"quicktime_autohref\">{#media_dlg.autohref}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"quicktime_playeveryframe\" name=\"quicktime_playeveryframe\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"quicktime_playeveryframe\">{#media_dlg.playeveryframe}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"quicktime_targetcache\" name=\"quicktime_targetcache\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"quicktime_targetcache\">{#media_dlg.targetcache}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"quicktime_scale\">{#media_dlg.scale}</label></td>\r\n\t\t\t\t\t\t\t<td><select id=\"quicktime_scale\" name=\"quicktime_scale\" class=\"mceEditableSelect\" onchange=\"Media.formToData();\">\r\n\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t\t<option value=\"tofit\">tofit</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"aspect\">aspect</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td colspan=\"2\">&nbsp;</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"quicktime_starttime\">{#media_dlg.starttime}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"quicktime_starttime\" name=\"quicktime_starttime\" onchange=\"Media.formToData();\" /></td>\r\n\r\n\t\t\t\t\t\t\t<td><label for=\"quicktime_endtime\">{#media_dlg.endtime}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"quicktime_endtime\" name=\"quicktime_endtime\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"quicktime_target\">{#media_dlg.target}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"quicktime_target\" name=\"quicktime_target\" onchange=\"Media.formToData();\" /></td>\r\n\r\n\t\t\t\t\t\t\t<td><label for=\"quicktime_href\">{#media_dlg.href}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"quicktime_href\" name=\"quicktime_href\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"quicktime_qtsrcchokespeed\">{#media_dlg.qtsrcchokespeed}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"quicktime_qtsrcchokespeed\" name=\"quicktime_qtsrcchokespeed\" onchange=\"Media.formToData();\" /></td>\r\n\r\n\t\t\t\t\t\t\t<td><label for=\"quicktime_volume\">{#media_dlg.volume}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"quicktime_volume\" name=\"quicktime_volume\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"quicktime_qtsrc\">{#media_dlg.qtsrc}</label></td>\r\n\t\t\t\t\t\t\t<td colspan=\"4\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"text\" id=\"quicktime_qtsrc\" name=\"quicktime_qtsrc\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"qtsrcfilebrowsercontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\r\n\t\t\t\t<fieldset id=\"windowsmedia_options\">\r\n\t\t\t\t\t<legend>{#media_dlg.wmp_options}</legend>\r\n\r\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"windowsmedia_autostart\" name=\"windowsmedia_autostart\" checked=\"checked\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"windowsmedia_autostart\">{#media_dlg.autostart}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"windowsmedia_enabled\" name=\"windowsmedia_enabled\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"windowsmedia_enabled\">{#media_dlg.enabled}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"windowsmedia_enablecontextmenu\" name=\"windowsmedia_enablecontextmenu\" checked=\"checked\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"windowsmedia_enablecontextmenu\">{#media_dlg.menu}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"windowsmedia_fullscreen\" name=\"windowsmedia_fullscreen\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"windowsmedia_fullscreen\">{#media_dlg.fullscreen}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"windowsmedia_invokeurls\" name=\"windowsmedia_invokeurls\" checked=\"checked\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"windowsmedia_invokeurls\">{#media_dlg.invokeurls}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"windowsmedia_mute\" name=\"windowsmedia_mute\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"windowsmedia_mute\">{#media_dlg.mute}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"windowsmedia_stretchtofit\" name=\"windowsmedia_stretchtofit\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"windowsmedia_stretchtofit\">{#media_dlg.stretchtofit}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"windowsmedia_windowlessvideo\" name=\"windowsmedia_windowlessvideo\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"windowsmedia_windowlessvideo\">{#media_dlg.windowlessvideo}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"windowsmedia_balance\">{#media_dlg.balance}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"windowsmedia_balance\" name=\"windowsmedia_balance\" onchange=\"Media.formToData();\" /></td>\r\n\r\n\t\t\t\t\t\t\t<td><label for=\"windowsmedia_baseurl\">{#media_dlg.baseurl}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"windowsmedia_baseurl\" name=\"windowsmedia_baseurl\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"windowsmedia_captioningid\">{#media_dlg.captioningid}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"windowsmedia_captioningid\" name=\"windowsmedia_captioningid\" onchange=\"Media.formToData();\" /></td>\r\n\r\n\t\t\t\t\t\t\t<td><label for=\"windowsmedia_currentmarker\">{#media_dlg.currentmarker}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"windowsmedia_currentmarker\" name=\"windowsmedia_currentmarker\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"windowsmedia_currentposition\">{#media_dlg.currentposition}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"windowsmedia_currentposition\" name=\"windowsmedia_currentposition\" onchange=\"Media.formToData();\" /></td>\r\n\r\n\t\t\t\t\t\t\t<td><label for=\"windowsmedia_defaultframe\">{#media_dlg.defaultframe}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"windowsmedia_defaultframe\" name=\"windowsmedia_defaultframe\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"windowsmedia_playcount\">{#media_dlg.playcount}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"windowsmedia_playcount\" name=\"windowsmedia_playcount\" onchange=\"Media.formToData();\" /></td>\r\n\r\n\t\t\t\t\t\t\t<td><label for=\"windowsmedia_rate\">{#media_dlg.rate}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"windowsmedia_rate\" name=\"windowsmedia_rate\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"windowsmedia_uimode\">{#media_dlg.uimode}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"windowsmedia_uimode\" name=\"windowsmedia_uimode\" onchange=\"Media.formToData();\" /></td>\r\n\r\n\t\t\t\t\t\t\t<td><label for=\"windowsmedia_volume\">{#media_dlg.volume}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"windowsmedia_volume\" name=\"windowsmedia_volume\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\r\n\t\t\t\t<fieldset id=\"realmedia_options\">\r\n\t\t\t\t\t<legend>{#media_dlg.rmp_options}</legend>\r\n\r\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"realmedia_autostart\" name=\"realmedia_autostart\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"realmedia_autostart\">{#media_dlg.autostart}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"realmedia_loop\" name=\"realmedia_loop\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"realmedia_loop\">{#media_dlg.loop}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"realmedia_autogotourl\" name=\"realmedia_autogotourl\" checked=\"checked\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"realmedia_autogotourl\">{#media_dlg.autogotourl}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"realmedia_center\" name=\"realmedia_center\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"realmedia_center\">{#media_dlg.center}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"realmedia_imagestatus\" name=\"realmedia_imagestatus\" checked=\"checked\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"realmedia_imagestatus\">{#media_dlg.imagestatus}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"realmedia_maintainaspect\" name=\"realmedia_maintainaspect\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"realmedia_maintainaspect\">{#media_dlg.maintainaspect}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"realmedia_nojava\" name=\"realmedia_nojava\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"realmedia_nojava\">{#media_dlg.nojava}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"realmedia_prefetch\" name=\"realmedia_prefetch\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"realmedia_prefetch\">{#media_dlg.prefetch}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"realmedia_shuffle\" name=\"realmedia_shuffle\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"realmedia_shuffle\">{#media_dlg.shuffle}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t&nbsp;\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"realmedia_console\">{#media_dlg.console}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"realmedia_console\" name=\"realmedia_console\" onchange=\"Media.formToData();\" /></td>\r\n\r\n\t\t\t\t\t\t\t<td><label for=\"realmedia_controls\">{#media_dlg.controls}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"realmedia_controls\" name=\"realmedia_controls\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"realmedia_numloop\">{#media_dlg.numloop}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"realmedia_numloop\" name=\"realmedia_numloop\" onchange=\"Media.formToData();\" /></td>\r\n\r\n\t\t\t\t\t\t\t<td><label for=\"realmedia_scriptcallbacks\">{#media_dlg.scriptcallbacks}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"realmedia_scriptcallbacks\" name=\"realmedia_scriptcallbacks\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\r\n\t\t\t\t<fieldset id=\"shockwave_options\">\r\n\t\t\t\t\t<legend>{#media_dlg.shockwave_options}</legend>\r\n\r\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"shockwave_swstretchstyle\">{#media_dlg.swstretchstyle}</label></td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"shockwave_swstretchstyle\" name=\"shockwave_swstretchstyle\" onchange=\"Media.formToData();\">\r\n\t\t\t\t\t\t\t\t\t<option value=\"none\">{#not_set}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"meet\">Meet</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"fill\">Fill</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"stage\">Stage</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td><label for=\"shockwave_swvolume\">{#media_dlg.volume}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"shockwave_swvolume\" name=\"shockwave_swvolume\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"shockwave_swstretchhalign\">{#media_dlg.swstretchhalign}</label></td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"shockwave_swstretchhalign\" name=\"shockwave_swstretchhalign\" onchange=\"Media.formToData();\">\r\n\t\t\t\t\t\t\t\t\t<option value=\"none\">{#not_set}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"left\">{#media_dlg.align_left}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"center\">{#media_dlg.align_center}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"right\">{#media_dlg.align_right}</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td><label for=\"shockwave_swstretchvalign\">{#media_dlg.swstretchvalign}</label></td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"shockwave_swstretchvalign\" name=\"shockwave_swstretchvalign\" onchange=\"Media.formToData();\">\r\n\t\t\t\t\t\t\t\t\t<option value=\"none\">{#not_set}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"meet\">Meet</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"fill\">Fill</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"stage\">Stage</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"shockwave_autostart\" name=\"shockwave_autostart\" onchange=\"Media.formToData();\" checked=\"checked\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"shockwave_autostart\">{#media_dlg.autostart}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"shockwave_sound\" name=\"shockwave_sound\" onchange=\"Media.formToData();\" checked=\"checked\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"shockwave_sound\">{#media_dlg.sound}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"shockwave_swliveconnect\" name=\"shockwave_swliveconnect\" onchange=\"Media.formToData();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"shockwave_swliveconnect\">{#media_dlg.liveconnect}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input type=\"checkbox\" class=\"checkbox\" id=\"shockwave_progress\" name=\"shockwave_progress\" onchange=\"Media.formToData();\" checked=\"checked\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td><label for=\"shockwave_progress\">{#media_dlg.progress}</label></td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div id=\"source_panel\" class=\"panel\">\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#media_dlg.source}</legend>\r\n\t\t\t\t\t<textarea id=\"source\" style=\"width: 99%; height: 390px\"></textarea>\r\n\t\t\t\t</fieldset>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"mceActionPanel\">\r\n\t\t\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#insert}\" />\r\n\t\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t\t</div>\r\n\t</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/nonbreaking/editor_plugin.js",
    "content": "(function(){tinymce.create(\"tinymce.plugins.Nonbreaking\",{init:function(a,b){var c=this;c.editor=a;a.addCommand(\"mceNonBreaking\",function(){a.execCommand(\"mceInsertContent\",false,(a.plugins.visualchars&&a.plugins.visualchars.state)?'<span data-mce-bogus=\"1\" class=\"mceItemHidden mceItemNbsp\">&nbsp;</span>':\"&nbsp;\")});a.addButton(\"nonbreaking\",{title:\"nonbreaking.nonbreaking_desc\",cmd:\"mceNonBreaking\"});if(a.getParam(\"nonbreaking_force_tab\")){a.onKeyDown.add(function(d,f){if(f.keyCode==9){f.preventDefault();d.execCommand(\"mceNonBreaking\");d.execCommand(\"mceNonBreaking\");d.execCommand(\"mceNonBreaking\")}})}},getInfo:function(){return{longname:\"Nonbreaking space\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/nonbreaking\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}}});tinymce.PluginManager.add(\"nonbreaking\",tinymce.plugins.Nonbreaking)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/nonbreaking/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\ttinymce.create('tinymce.plugins.Nonbreaking', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tt.editor = ed;\r\n\r\n\t\t\t// Register commands\r\n\t\t\ted.addCommand('mceNonBreaking', function() {\r\n\t\t\t\ted.execCommand('mceInsertContent', false, (ed.plugins.visualchars && ed.plugins.visualchars.state) ? '<span data-mce-bogus=\"1\" class=\"mceItemHidden mceItemNbsp\">&nbsp;</span>' : '&nbsp;');\r\n\t\t\t});\r\n\r\n\t\t\t// Register buttons\r\n\t\t\ted.addButton('nonbreaking', {title : 'nonbreaking.nonbreaking_desc', cmd : 'mceNonBreaking'});\r\n\r\n\t\t\tif (ed.getParam('nonbreaking_force_tab')) {\r\n\t\t\t\ted.onKeyDown.add(function(ed, e) {\r\n\t\t\t\t\tif (e.keyCode == 9) {\r\n\t\t\t\t\t\te.preventDefault();\r\n\t\r\n\t\t\t\t\t\ted.execCommand('mceNonBreaking');\r\n\t\t\t\t\t\ted.execCommand('mceNonBreaking');\r\n\t\t\t\t\t\ted.execCommand('mceNonBreaking');\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Nonbreaking space',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/nonbreaking',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t}\r\n\r\n\t\t// Private methods\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('nonbreaking', tinymce.plugins.Nonbreaking);\r\n})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/noneditable/editor_plugin.js",
    "content": "(function(){var a=tinymce.dom.Event;tinymce.create(\"tinymce.plugins.NonEditablePlugin\",{init:function(d,e){var f=this,c,b,g;f.editor=d;c=d.getParam(\"noneditable_editable_class\",\"mceEditable\");b=d.getParam(\"noneditable_noneditable_class\",\"mceNonEditable\");d.onNodeChange.addToTop(function(i,h,l){var k,j;k=i.dom.getParent(i.selection.getStart(),function(m){return i.dom.hasClass(m,b)});j=i.dom.getParent(i.selection.getEnd(),function(m){return i.dom.hasClass(m,b)});if(k||j){g=1;f._setDisabled(1);return false}else{if(g==1){f._setDisabled(0);g=0}}})},getInfo:function(){return{longname:\"Non editable elements\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/noneditable\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}},_block:function(c,d){var b=d.keyCode;if((b>32&&b<41)||(b>111&&b<124)){return}return a.cancel(d)},_setDisabled:function(d){var c=this,b=c.editor;tinymce.each(b.controlManager.controls,function(e){e.setDisabled(d)});if(d!==c.disabled){if(d){b.onKeyDown.addToTop(c._block);b.onKeyPress.addToTop(c._block);b.onKeyUp.addToTop(c._block);b.onPaste.addToTop(c._block);b.onContextMenu.addToTop(c._block)}else{b.onKeyDown.remove(c._block);b.onKeyPress.remove(c._block);b.onKeyUp.remove(c._block);b.onPaste.remove(c._block);b.onContextMenu.remove(c._block)}c.disabled=d}}});tinymce.PluginManager.add(\"noneditable\",tinymce.plugins.NonEditablePlugin)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/noneditable/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\tvar Event = tinymce.dom.Event;\r\n\r\n\ttinymce.create('tinymce.plugins.NonEditablePlugin', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\tvar t = this, editClass, nonEditClass, state;\r\n\r\n\t\t\tt.editor = ed;\r\n\t\t\teditClass = ed.getParam(\"noneditable_editable_class\", \"mceEditable\");\r\n\t\t\tnonEditClass = ed.getParam(\"noneditable_noneditable_class\", \"mceNonEditable\");\r\n\r\n\t\t\ted.onNodeChange.addToTop(function(ed, cm, n) {\r\n\t\t\t\tvar sc, ec;\r\n\r\n\t\t\t\t// Block if start or end is inside a non editable element\r\n\t\t\t\tsc = ed.dom.getParent(ed.selection.getStart(), function(n) {\r\n\t\t\t\t\treturn ed.dom.hasClass(n, nonEditClass);\r\n\t\t\t\t});\r\n\r\n\t\t\t\tec = ed.dom.getParent(ed.selection.getEnd(), function(n) {\r\n\t\t\t\t\treturn ed.dom.hasClass(n, nonEditClass);\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// Block or unblock\r\n\t\t\t\tif (sc || ec) {\r\n\t\t\t\t\tstate = 1;\r\n\t\t\t\t\tt._setDisabled(1);\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t} else if (state == 1) {\r\n\t\t\t\t\tt._setDisabled(0);\r\n\t\t\t\t\tstate = 0;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Non editable elements',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/noneditable',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t},\r\n\r\n\t\t_block : function(ed, e) {\r\n\t\t\tvar k = e.keyCode;\r\n\r\n\t\t\t// Don't block arrow keys, pg up/down, and F1-F12\r\n\t\t\tif ((k > 32 && k < 41) || (k > 111 && k < 124))\r\n\t\t\t\treturn;\r\n\r\n\t\t\treturn Event.cancel(e);\r\n\t\t},\r\n\r\n\t\t_setDisabled : function(s) {\r\n\t\t\tvar t = this, ed = t.editor;\r\n\r\n\t\t\ttinymce.each(ed.controlManager.controls, function(c) {\r\n\t\t\t\tc.setDisabled(s);\r\n\t\t\t});\r\n\r\n\t\t\tif (s !== t.disabled) {\r\n\t\t\t\tif (s) {\r\n\t\t\t\t\ted.onKeyDown.addToTop(t._block);\r\n\t\t\t\t\ted.onKeyPress.addToTop(t._block);\r\n\t\t\t\t\ted.onKeyUp.addToTop(t._block);\r\n\t\t\t\t\ted.onPaste.addToTop(t._block);\r\n\t\t\t\t\ted.onContextMenu.addToTop(t._block);\r\n\t\t\t\t} else {\r\n\t\t\t\t\ted.onKeyDown.remove(t._block);\r\n\t\t\t\t\ted.onKeyPress.remove(t._block);\r\n\t\t\t\t\ted.onKeyUp.remove(t._block);\r\n\t\t\t\t\ted.onPaste.remove(t._block);\r\n\t\t\t\t\ted.onContextMenu.remove(t._block);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tt.disabled = s;\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('noneditable', tinymce.plugins.NonEditablePlugin);\r\n})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/pagebreak/editor_plugin.js",
    "content": "(function(){tinymce.create(\"tinymce.plugins.PageBreakPlugin\",{init:function(b,d){var f='<img src=\"'+b.theme.url+'/img/trans.gif\" class=\"mcePageBreak mceItemNoResize\" />',a=\"mcePageBreak\",c=b.getParam(\"pagebreak_separator\",\"<!-- pagebreak -->\"),e;e=new RegExp(c.replace(/[\\?\\.\\*\\[\\]\\(\\)\\{\\}\\+\\^\\$\\:]/g,function(g){return\"\\\\\"+g}),\"g\");b.addCommand(\"mcePageBreak\",function(){b.execCommand(\"mceInsertContent\",0,f)});b.addButton(\"pagebreak\",{title:\"pagebreak.desc\",cmd:a});b.onInit.add(function(){if(b.theme.onResolveName){b.theme.onResolveName.add(function(g,h){if(h.node.nodeName==\"IMG\"&&b.dom.hasClass(h.node,a)){h.name=\"pagebreak\"}})}});b.onClick.add(function(g,h){h=h.target;if(h.nodeName===\"IMG\"&&g.dom.hasClass(h,a)){g.selection.select(h)}});b.onNodeChange.add(function(h,g,i){g.setActive(\"pagebreak\",i.nodeName===\"IMG\"&&h.dom.hasClass(i,a))});b.onBeforeSetContent.add(function(g,h){h.content=h.content.replace(e,f)});b.onPostProcess.add(function(g,h){if(h.get){h.content=h.content.replace(/<img[^>]+>/g,function(i){if(i.indexOf('class=\"mcePageBreak')!==-1){i=c}return i})}})},getInfo:function(){return{longname:\"PageBreak\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/pagebreak\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}}});tinymce.PluginManager.add(\"pagebreak\",tinymce.plugins.PageBreakPlugin)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/pagebreak/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\ttinymce.create('tinymce.plugins.PageBreakPlugin', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\tvar pb = '<img src=\"' + ed.theme.url + '/img/trans.gif\" class=\"mcePageBreak mceItemNoResize\" />', cls = 'mcePageBreak', sep = ed.getParam('pagebreak_separator', '<!-- pagebreak -->'), pbRE;\r\n\r\n\t\t\tpbRE = new RegExp(sep.replace(/[\\?\\.\\*\\[\\]\\(\\)\\{\\}\\+\\^\\$\\:]/g, function(a) {return '\\\\' + a;}), 'g');\r\n\r\n\t\t\t// Register commands\r\n\t\t\ted.addCommand('mcePageBreak', function() {\r\n\t\t\t\ted.execCommand('mceInsertContent', 0, pb);\r\n\t\t\t});\r\n\r\n\t\t\t// Register buttons\r\n\t\t\ted.addButton('pagebreak', {title : 'pagebreak.desc', cmd : cls});\r\n\r\n\t\t\ted.onInit.add(function() {\r\n\t\t\t\tif (ed.theme.onResolveName) {\r\n\t\t\t\t\ted.theme.onResolveName.add(function(th, o) {\r\n\t\t\t\t\t\tif (o.node.nodeName == 'IMG' && ed.dom.hasClass(o.node, cls))\r\n\t\t\t\t\t\t\to.name = 'pagebreak';\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\ted.onClick.add(function(ed, e) {\r\n\t\t\t\te = e.target;\r\n\r\n\t\t\t\tif (e.nodeName === 'IMG' && ed.dom.hasClass(e, cls))\r\n\t\t\t\t\ted.selection.select(e);\r\n\t\t\t});\r\n\r\n\t\t\ted.onNodeChange.add(function(ed, cm, n) {\r\n\t\t\t\tcm.setActive('pagebreak', n.nodeName === 'IMG' && ed.dom.hasClass(n, cls));\r\n\t\t\t});\r\n\r\n\t\t\ted.onBeforeSetContent.add(function(ed, o) {\r\n\t\t\t\to.content = o.content.replace(pbRE, pb);\r\n\t\t\t});\r\n\r\n\t\t\ted.onPostProcess.add(function(ed, o) {\r\n\t\t\t\tif (o.get)\r\n\t\t\t\t\to.content = o.content.replace(/<img[^>]+>/g, function(im) {\r\n\t\t\t\t\t\tif (im.indexOf('class=\"mcePageBreak') !== -1)\r\n\t\t\t\t\t\t\tim = sep;\r\n\r\n\t\t\t\t\t\treturn im;\r\n\t\t\t\t\t});\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'PageBreak',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/pagebreak',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('pagebreak', tinymce.plugins.PageBreakPlugin);\r\n})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/editor_plugin.js",
    "content": "(function(){var c=tinymce.each,a={paste_auto_cleanup_on_paste:true,paste_enable_default_filters:true,paste_block_drop:false,paste_retain_style_properties:\"none\",paste_strip_class_attributes:\"mso\",paste_remove_spans:false,paste_remove_styles:false,paste_remove_styles_if_webkit:true,paste_convert_middot_lists:true,paste_convert_headers_to_strong:false,paste_dialog_width:\"450\",paste_dialog_height:\"400\",paste_text_use_dialog:false,paste_text_sticky:false,paste_text_sticky_default:false,paste_text_notifyalways:false,paste_text_linebreaktype:\"combined\",paste_text_replacements:[[/\\u2026/g,\"...\"],[/[\\x93\\x94\\u201c\\u201d]/g,'\"'],[/[\\x60\\x91\\x92\\u2018\\u2019]/g,\"'\"]]};function b(d,e){return d.getParam(e,a[e])}tinymce.create(\"tinymce.plugins.PastePlugin\",{init:function(d,e){var f=this;f.editor=d;f.url=e;f.onPreProcess=new tinymce.util.Dispatcher(f);f.onPostProcess=new tinymce.util.Dispatcher(f);f.onPreProcess.add(f._preProcess);f.onPostProcess.add(f._postProcess);f.onPreProcess.add(function(i,j){d.execCallback(\"paste_preprocess\",i,j)});f.onPostProcess.add(function(i,j){d.execCallback(\"paste_postprocess\",i,j)});d.onKeyDown.addToTop(function(i,j){if(((tinymce.isMac?j.metaKey:j.ctrlKey)&&j.keyCode==86)||(j.shiftKey&&j.keyCode==45)){return false}});d.pasteAsPlainText=b(d,\"paste_text_sticky_default\");function h(l,j){var k=d.dom,i;f.onPreProcess.dispatch(f,l);l.node=k.create(\"div\",0,l.content);if(tinymce.isGecko){i=d.selection.getRng(true);if(i.startContainer==i.endContainer&&i.startContainer.nodeType==3){if(l.node.childNodes.length===1&&/^(p|h[1-6]|pre)$/i.test(l.node.firstChild.nodeName)&&l.content.indexOf(\"__MCE_ITEM__\")===-1){k.remove(l.node.firstChild,true)}}}f.onPostProcess.dispatch(f,l);l.content=d.serializer.serialize(l.node,{getInner:1,forced_root_block:\"\"});if((!j)&&(d.pasteAsPlainText)){f._insertPlainText(l.content);if(!b(d,\"paste_text_sticky\")){d.pasteAsPlainText=false;d.controlManager.setActive(\"pastetext\",false)}}else{f._insert(l.content)}}d.addCommand(\"mceInsertClipboardContent\",function(i,j){h(j,true)});if(!b(d,\"paste_text_use_dialog\")){d.addCommand(\"mcePasteText\",function(j,i){var k=tinymce.util.Cookie;d.pasteAsPlainText=!d.pasteAsPlainText;d.controlManager.setActive(\"pastetext\",d.pasteAsPlainText);if((d.pasteAsPlainText)&&(!k.get(\"tinymcePasteText\"))){if(b(d,\"paste_text_sticky\")){d.windowManager.alert(d.translate(\"paste.plaintext_mode_sticky\"))}else{d.windowManager.alert(d.translate(\"paste.plaintext_mode\"))}if(!b(d,\"paste_text_notifyalways\")){k.set(\"tinymcePasteText\",\"1\",new Date(new Date().getFullYear()+1,12,31))}}})}d.addButton(\"pastetext\",{title:\"paste.paste_text_desc\",cmd:\"mcePasteText\"});d.addButton(\"selectall\",{title:\"paste.selectall_desc\",cmd:\"selectall\"});function g(s){var l,p,j,t,k=d.selection,o=d.dom,q=d.getBody(),i,r;if(s.clipboardData||o.doc.dataTransfer){r=(s.clipboardData||o.doc.dataTransfer).getData(\"Text\");if(d.pasteAsPlainText){s.preventDefault();h({content:o.encode(r).replace(/\\r?\\n/g,\"<br />\")});return}}if(o.get(\"_mcePaste\")){return}l=o.add(q,\"div\",{id:\"_mcePaste\",\"class\":\"mcePaste\",\"data-mce-bogus\":\"1\"},\"\\uFEFF\\uFEFF\");if(q!=d.getDoc().body){i=o.getPos(d.selection.getStart(),q).y}else{i=q.scrollTop+o.getViewPort(d.getWin()).y}o.setStyles(l,{position:\"absolute\",left:tinymce.isGecko?-40:0,top:i-25,width:1,height:1,overflow:\"hidden\"});if(tinymce.isIE){t=k.getRng();j=o.doc.body.createTextRange();j.moveToElementText(l);j.execCommand(\"Paste\");o.remove(l);if(l.innerHTML===\"\\uFEFF\\uFEFF\"){d.execCommand(\"mcePasteWord\");s.preventDefault();return}k.setRng(t);k.setContent(\"\");setTimeout(function(){h({content:l.innerHTML})},0);return tinymce.dom.Event.cancel(s)}else{function m(n){n.preventDefault()}o.bind(d.getDoc(),\"mousedown\",m);o.bind(d.getDoc(),\"keydown\",m);p=d.selection.getRng();l=l.firstChild;j=d.getDoc().createRange();j.setStart(l,0);j.setEnd(l,2);k.setRng(j);window.setTimeout(function(){var u=\"\",n;if(!o.select(\"div.mcePaste > div.mcePaste\").length){n=o.select(\"div.mcePaste\");c(n,function(w){var v=w.firstChild;if(v&&v.nodeName==\"DIV\"&&v.style.marginTop&&v.style.backgroundColor){o.remove(v,1)}c(o.select(\"span.Apple-style-span\",w),function(x){o.remove(x,1)});c(o.select(\"br[data-mce-bogus]\",w),function(x){o.remove(x)});if(w.parentNode.className!=\"mcePaste\"){u+=w.innerHTML}})}else{u=\"<p>\"+o.encode(r).replace(/\\r?\\n\\r?\\n/g,\"</p><p>\").replace(/\\r?\\n/g,\"<br />\")+\"</p>\"}c(o.select(\"div.mcePaste\"),function(v){o.remove(v)});if(p){k.setRng(p)}h({content:u});o.unbind(d.getDoc(),\"mousedown\",m);o.unbind(d.getDoc(),\"keydown\",m)},0)}}if(b(d,\"paste_auto_cleanup_on_paste\")){if(tinymce.isOpera||/Firefox\\/2/.test(navigator.userAgent)){d.onKeyDown.addToTop(function(i,j){if(((tinymce.isMac?j.metaKey:j.ctrlKey)&&j.keyCode==86)||(j.shiftKey&&j.keyCode==45)){g(j)}})}else{d.onPaste.addToTop(function(i,j){return g(j)})}}d.onInit.add(function(){d.controlManager.setActive(\"pastetext\",d.pasteAsPlainText);if(b(d,\"paste_block_drop\")){d.dom.bind(d.getBody(),[\"dragend\",\"dragover\",\"draggesture\",\"dragdrop\",\"drop\",\"drag\"],function(i){i.preventDefault();i.stopPropagation();return false})}});f._legacySupport()},getInfo:function(){return{longname:\"Paste text/word\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/paste\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}},_preProcess:function(g,e){var k=this.editor,j=e.content,p=tinymce.grep,n=tinymce.explode,f=tinymce.trim,l,i;function d(h){c(h,function(o){if(o.constructor==RegExp){j=j.replace(o,\"\")}else{j=j.replace(o[0],o[1])}})}if(k.settings.paste_enable_default_filters==false){return}if(tinymce.isIE&&document.documentMode>=9){d([[/(?:<br>&nbsp;[\\s\\r\\n]+|<br>)*(<\\/?(h[1-6r]|p|div|address|pre|form|table|tbody|thead|tfoot|th|tr|td|li|ol|ul|caption|blockquote|center|dl|dt|dd|dir|fieldset)[^>]*>)(?:<br>&nbsp;[\\s\\r\\n]+|<br>)*/g,\"$1\"]]);d([[/<br><br>/g,\"<BR><BR>\"],[/<br>/g,\" \"],[/<BR><BR>/g,\"<br>\"]])}if(/class=\"?Mso|style=\"[^\"]*\\bmso-|w:WordDocument/i.test(j)||e.wordContent){e.wordContent=true;d([/^\\s*(&nbsp;)+/gi,/(&nbsp;|<br[^>]*>)+\\s*$/gi]);if(b(k,\"paste_convert_headers_to_strong\")){j=j.replace(/<p [^>]*class=\"?MsoHeading\"?[^>]*>(.*?)<\\/p>/gi,\"<p><strong>$1</strong></p>\")}if(b(k,\"paste_convert_middot_lists\")){d([[/<!--\\[if !supportLists\\]-->/gi,\"$&__MCE_ITEM__\"],[/(<span[^>]+(?:mso-list:|:\\s*symbol)[^>]+>)/gi,\"$1__MCE_ITEM__\"],[/(<p[^>]+(?:MsoListParagraph)[^>]+>)/gi,\"$1__MCE_ITEM__\"]])}d([/<!--[\\s\\S]+?-->/gi,/<(!|script[^>]*>.*?<\\/script(?=[>\\s])|\\/?(\\?xml(:\\w+)?|img|meta|link|style|\\w:\\w+)(?=[\\s\\/>]))[^>]*>/gi,[/<(\\/?)s>/gi,\"<$1strike>\"],[/&nbsp;/gi,\"\\u00a0\"]]);do{l=j.length;j=j.replace(/(<[a-z][^>]*\\s)(?:id|name|language|type|on\\w+|\\w+:\\w+)=(?:\"[^\"]*\"|\\w+)\\s?/gi,\"$1\")}while(l!=j.length);if(b(k,\"paste_retain_style_properties\").replace(/^none$/i,\"\").length==0){j=j.replace(/<\\/?span[^>]*>/gi,\"\")}else{d([[/<span\\s+style\\s*=\\s*\"\\s*mso-spacerun\\s*:\\s*yes\\s*;?\\s*\"\\s*>([\\s\\u00a0]*)<\\/span>/gi,function(o,h){return(h.length>0)?h.replace(/./,\" \").slice(Math.floor(h.length/2)).split(\"\").join(\"\\u00a0\"):\"\"}],[/(<[a-z][^>]*)\\sstyle=\"([^\"]*)\"/gi,function(t,h,r){var u=[],o=0,q=n(f(r).replace(/&quot;/gi,\"'\"),\";\");c(q,function(s){var w,y,z=n(s,\":\");function x(A){return A+((A!==\"0\")&&(/\\d$/.test(A)))?\"px\":\"\"}if(z.length==2){w=z[0].toLowerCase();y=z[1].toLowerCase();switch(w){case\"mso-padding-alt\":case\"mso-padding-top-alt\":case\"mso-padding-right-alt\":case\"mso-padding-bottom-alt\":case\"mso-padding-left-alt\":case\"mso-margin-alt\":case\"mso-margin-top-alt\":case\"mso-margin-right-alt\":case\"mso-margin-bottom-alt\":case\"mso-margin-left-alt\":case\"mso-table-layout-alt\":case\"mso-height\":case\"mso-width\":case\"mso-vertical-align-alt\":u[o++]=w.replace(/^mso-|-alt$/g,\"\")+\":\"+x(y);return;case\"horiz-align\":u[o++]=\"text-align:\"+y;return;case\"vert-align\":u[o++]=\"vertical-align:\"+y;return;case\"font-color\":case\"mso-foreground\":u[o++]=\"color:\"+y;return;case\"mso-background\":case\"mso-highlight\":u[o++]=\"background:\"+y;return;case\"mso-default-height\":u[o++]=\"min-height:\"+x(y);return;case\"mso-default-width\":u[o++]=\"min-width:\"+x(y);return;case\"mso-padding-between-alt\":u[o++]=\"border-collapse:separate;border-spacing:\"+x(y);return;case\"text-line-through\":if((y==\"single\")||(y==\"double\")){u[o++]=\"text-decoration:line-through\"}return;case\"mso-zero-height\":if(y==\"yes\"){u[o++]=\"display:none\"}return}if(/^(mso|column|font-emph|lang|layout|line-break|list-image|nav|panose|punct|row|ruby|sep|size|src|tab-|table-border|text-(?!align|decor|indent|trans)|top-bar|version|vnd|word-break)/.test(w)){return}u[o++]=w+\":\"+z[1]}});if(o>0){return h+' style=\"'+u.join(\";\")+'\"'}else{return h}}]])}}if(b(k,\"paste_convert_headers_to_strong\")){d([[/<h[1-6][^>]*>/gi,\"<p><strong>\"],[/<\\/h[1-6][^>]*>/gi,\"</strong></p>\"]])}d([[/Version:[\\d.]+\\nStartHTML:\\d+\\nEndHTML:\\d+\\nStartFragment:\\d+\\nEndFragment:\\d+/gi,\"\"]]);i=b(k,\"paste_strip_class_attributes\");if(i!==\"none\"){function m(q,o){if(i===\"all\"){return\"\"}var h=p(n(o.replace(/^([\"'])(.*)\\1$/,\"$2\"),\" \"),function(r){return(/^(?!mso)/i.test(r))});return h.length?' class=\"'+h.join(\" \")+'\"':\"\"}j=j.replace(/ class=\"([^\"]+)\"/gi,m);j=j.replace(/ class=([\\-\\w]+)/gi,m)}if(b(k,\"paste_remove_spans\")){j=j.replace(/<\\/?span[^>]*>/gi,\"\")}e.content=j},_postProcess:function(g,i){var f=this,e=f.editor,h=e.dom,d;if(e.settings.paste_enable_default_filters==false){return}if(i.wordContent){c(h.select(\"a\",i.node),function(j){if(!j.href||j.href.indexOf(\"#_Toc\")!=-1){h.remove(j,1)}});if(b(e,\"paste_convert_middot_lists\")){f._convertLists(g,i)}d=b(e,\"paste_retain_style_properties\");if((tinymce.is(d,\"string\"))&&(d!==\"all\")&&(d!==\"*\")){d=tinymce.explode(d.replace(/^none$/i,\"\"));c(h.select(\"*\",i.node),function(m){var n={},k=0,l,o,j;if(d){for(l=0;l<d.length;l++){o=d[l];j=h.getStyle(m,o);if(j){n[o]=j;k++}}}h.setAttrib(m,\"style\",\"\");if(d&&k>0){h.setStyles(m,n)}else{if(m.nodeName==\"SPAN\"&&!m.className){h.remove(m,true)}}})}}if(b(e,\"paste_remove_styles\")||(b(e,\"paste_remove_styles_if_webkit\")&&tinymce.isWebKit)){c(h.select(\"*[style]\",i.node),function(j){j.removeAttribute(\"style\");j.removeAttribute(\"data-mce-style\")})}else{if(tinymce.isWebKit){c(h.select(\"*\",i.node),function(j){j.removeAttribute(\"data-mce-style\")})}}},_convertLists:function(g,e){var i=g.editor.dom,h,l,d=-1,f,m=[],k,j;c(i.select(\"p\",e.node),function(t){var q,u=\"\",s,r,n,o;for(q=t.firstChild;q&&q.nodeType==3;q=q.nextSibling){u+=q.nodeValue}u=t.innerHTML.replace(/<\\/?\\w+[^>]*>/gi,\"\").replace(/&nbsp;/g,\"\\u00a0\");if(/^(__MCE_ITEM__)+[\\u2022\\u00b7\\u00a7\\u00d8o\\u25CF]\\s*\\u00a0*/.test(u)){s=\"ul\"}if(/^__MCE_ITEM__\\s*\\w+\\.\\s*\\u00a0+/.test(u)){s=\"ol\"}if(s){f=parseFloat(t.style.marginLeft||0);if(f>d){m.push(f)}if(!h||s!=k){h=i.create(s);i.insertAfter(h,t)}else{if(f>d){h=l.appendChild(i.create(s))}else{if(f<d){n=tinymce.inArray(m,f);o=i.getParents(h.parentNode,s);h=o[o.length-1-n]||h}}}c(i.select(\"span\",t),function(v){var p=v.innerHTML.replace(/<\\/?\\w+[^>]*>/gi,\"\");if(s==\"ul\"&&/^__MCE_ITEM__[\\u2022\\u00b7\\u00a7\\u00d8o\\u25CF]/.test(p)){i.remove(v)}else{if(/^__MCE_ITEM__[\\s\\S]*\\w+\\.(&nbsp;|\\u00a0)*\\s*/.test(p)){i.remove(v)}}});r=t.innerHTML;if(s==\"ul\"){r=t.innerHTML.replace(/__MCE_ITEM__/g,\"\").replace(/^[\\u2022\\u00b7\\u00a7\\u00d8o\\u25CF]\\s*(&nbsp;|\\u00a0)+\\s*/,\"\")}else{r=t.innerHTML.replace(/__MCE_ITEM__/g,\"\").replace(/^\\s*\\w+\\.(&nbsp;|\\u00a0)+\\s*/,\"\")}l=h.appendChild(i.create(\"li\",0,r));i.remove(t);d=f;k=s}else{h=d=0}});j=e.node.innerHTML;if(j.indexOf(\"__MCE_ITEM__\")!=-1){e.node.innerHTML=j.replace(/__MCE_ITEM__/g,\"\")}},_insert:function(f,d){var e=this.editor,g=e.selection.getRng();if(!e.selection.isCollapsed()&&g.startContainer!=g.endContainer){e.getDoc().execCommand(\"Delete\",false,null)}e.execCommand(\"mceInsertContent\",false,f,{skip_undo:d})},_insertPlainText:function(g){var d=this.editor,e=b(d,\"paste_text_linebreaktype\"),i=b(d,\"paste_text_replacements\"),f=tinymce.is;function h(j){c(j,function(k){if(k.constructor==RegExp){g=g.replace(k,\"\")}else{g=g.replace(k[0],k[1])}})}if((typeof(g)===\"string\")&&(g.length>0)){if(/<(?:p|br|h[1-6]|ul|ol|dl|table|t[rdh]|div|blockquote|fieldset|pre|address|center)[^>]*>/i.test(g)){h([/[\\n\\r]+/g])}else{h([/\\r+/g])}h([[/<\\/(?:p|h[1-6]|ul|ol|dl|table|div|blockquote|fieldset|pre|address|center)>/gi,\"\\n\\n\"],[/<br[^>]*>|<\\/tr>/gi,\"\\n\"],[/<\\/t[dh]>\\s*<t[dh][^>]*>/gi,\"\\t\"],/<[a-z!\\/?][^>]*>/gi,[/&nbsp;/gi,\" \"],[/(?:(?!\\n)\\s)*(\\n+)(?:(?!\\n)\\s)*/gi,\"$1\"],[/\\n{3,}/g,\"\\n\\n\"]]);g=d.dom.decode(tinymce.html.Entities.encodeRaw(g));if(f(i,\"array\")){h(i)}else{if(f(i,\"string\")){h(new RegExp(i,\"gi\"))}}if(e==\"none\"){h([[/\\n+/g,\" \"]])}else{if(e==\"br\"){h([[/\\n/g,\"<br />\"]])}else{if(e==\"p\"){h([[/\\n+/g,\"</p><p>\"],[/^(.*<\\/p>)(<p>)$/,\"<p>$1\"]])}else{h([[/\\n\\n/g,\"</p><p>\"],[/^(.*<\\/p>)(<p>)$/,\"<p>$1\"],[/\\n/g,\"<br />\"]])}}}d.execCommand(\"mceInsertContent\",false,g)}},_legacySupport:function(){var e=this,d=e.editor;d.addCommand(\"mcePasteWord\",function(){d.windowManager.open({file:e.url+\"/pasteword.htm\",width:parseInt(b(d,\"paste_dialog_width\")),height:parseInt(b(d,\"paste_dialog_height\")),inline:1})});if(b(d,\"paste_text_use_dialog\")){d.addCommand(\"mcePasteText\",function(){d.windowManager.open({file:e.url+\"/pastetext.htm\",width:parseInt(b(d,\"paste_dialog_width\")),height:parseInt(b(d,\"paste_dialog_height\")),inline:1})})}d.addButton(\"pasteword\",{title:\"paste.paste_word_desc\",cmd:\"mcePasteWord\"})}});tinymce.PluginManager.add(\"paste\",tinymce.plugins.PastePlugin)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\tvar each = tinymce.each,\r\n\t\tdefs = {\r\n\t\t\tpaste_auto_cleanup_on_paste : true,\r\n\t\t\tpaste_enable_default_filters : true,\r\n\t\t\tpaste_block_drop : false,\r\n\t\t\tpaste_retain_style_properties : \"none\",\r\n\t\t\tpaste_strip_class_attributes : \"mso\",\r\n\t\t\tpaste_remove_spans : false,\r\n\t\t\tpaste_remove_styles : false,\r\n\t\t\tpaste_remove_styles_if_webkit : true,\r\n\t\t\tpaste_convert_middot_lists : true,\r\n\t\t\tpaste_convert_headers_to_strong : false,\r\n\t\t\tpaste_dialog_width : \"450\",\r\n\t\t\tpaste_dialog_height : \"400\",\r\n\t\t\tpaste_text_use_dialog : false,\r\n\t\t\tpaste_text_sticky : false,\r\n\t\t\tpaste_text_sticky_default : false,\r\n\t\t\tpaste_text_notifyalways : false,\r\n\t\t\tpaste_text_linebreaktype : \"combined\",\r\n\t\t\tpaste_text_replacements : [\r\n\t\t\t\t[/\\u2026/g, \"...\"],\r\n\t\t\t\t[/[\\x93\\x94\\u201c\\u201d]/g, '\"'],\r\n\t\t\t\t[/[\\x60\\x91\\x92\\u2018\\u2019]/g, \"'\"]\r\n\t\t\t]\r\n\t\t};\r\n\r\n\tfunction getParam(ed, name) {\r\n\t\treturn ed.getParam(name, defs[name]);\r\n\t}\r\n\r\n\ttinymce.create('tinymce.plugins.PastePlugin', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tt.editor = ed;\r\n\t\t\tt.url = url;\r\n\r\n\t\t\t// Setup plugin events\r\n\t\t\tt.onPreProcess = new tinymce.util.Dispatcher(t);\r\n\t\t\tt.onPostProcess = new tinymce.util.Dispatcher(t);\r\n\r\n\t\t\t// Register default handlers\r\n\t\t\tt.onPreProcess.add(t._preProcess);\r\n\t\t\tt.onPostProcess.add(t._postProcess);\r\n\r\n\t\t\t// Register optional preprocess handler\r\n\t\t\tt.onPreProcess.add(function(pl, o) {\r\n\t\t\t\ted.execCallback('paste_preprocess', pl, o);\r\n\t\t\t});\r\n\r\n\t\t\t// Register optional postprocess\r\n\t\t\tt.onPostProcess.add(function(pl, o) {\r\n\t\t\t\ted.execCallback('paste_postprocess', pl, o);\r\n\t\t\t});\r\n\r\n\t\t\ted.onKeyDown.addToTop(function(ed, e) {\r\n\t\t\t\t// Block ctrl+v from adding an undo level since the default logic in tinymce.Editor will add that\r\n\t\t\t\tif (((tinymce.isMac ? e.metaKey : e.ctrlKey) && e.keyCode == 86) || (e.shiftKey && e.keyCode == 45))\r\n\t\t\t\t\treturn false; // Stop other listeners\r\n\t\t\t});\r\n\r\n\t\t\t// Initialize plain text flag\r\n\t\t\ted.pasteAsPlainText = getParam(ed, 'paste_text_sticky_default');\r\n\r\n\t\t\t// This function executes the process handlers and inserts the contents\r\n\t\t\t// force_rich overrides plain text mode set by user, important for pasting with execCommand\r\n\t\t\tfunction process(o, force_rich) {\r\n\t\t\t\tvar dom = ed.dom, rng;\r\n\r\n\t\t\t\t// Execute pre process handlers\r\n\t\t\t\tt.onPreProcess.dispatch(t, o);\r\n\r\n\t\t\t\t// Create DOM structure\r\n\t\t\t\to.node = dom.create('div', 0, o.content);\r\n\r\n\t\t\t\t// If pasting inside the same element and the contents is only one block\r\n\t\t\t\t// remove the block and keep the text since Firefox will copy parts of pre and h1-h6 as a pre element\r\n\t\t\t\tif (tinymce.isGecko) {\r\n\t\t\t\t\trng = ed.selection.getRng(true);\r\n\t\t\t\t\tif (rng.startContainer == rng.endContainer && rng.startContainer.nodeType == 3) {\r\n\t\t\t\t\t\t// Is only one block node and it doesn't contain word stuff\r\n\t\t\t\t\t\tif (o.node.childNodes.length === 1 && /^(p|h[1-6]|pre)$/i.test(o.node.firstChild.nodeName) && o.content.indexOf('__MCE_ITEM__') === -1)\r\n\t\t\t\t\t\t\tdom.remove(o.node.firstChild, true);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Execute post process handlers\r\n\t\t\t\tt.onPostProcess.dispatch(t, o);\r\n\r\n\t\t\t\t// Serialize content\r\n\t\t\t\to.content = ed.serializer.serialize(o.node, {getInner : 1, forced_root_block : ''});\r\n\r\n\t\t\t\t// Plain text option active?\r\n\t\t\t\tif ((!force_rich) && (ed.pasteAsPlainText)) {\r\n\t\t\t\t\tt._insertPlainText(o.content);\r\n\r\n\t\t\t\t\tif (!getParam(ed, \"paste_text_sticky\")) {\r\n\t\t\t\t\t\ted.pasteAsPlainText = false;\r\n\t\t\t\t\t\ted.controlManager.setActive(\"pastetext\", false);\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tt._insert(o.content);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Add command for external usage\r\n\t\t\ted.addCommand('mceInsertClipboardContent', function(u, o) {\r\n\t\t\t\tprocess(o, true);\r\n\t\t\t});\r\n\r\n\t\t\tif (!getParam(ed, \"paste_text_use_dialog\")) {\r\n\t\t\t\ted.addCommand('mcePasteText', function(u, v) {\r\n\t\t\t\t\tvar cookie = tinymce.util.Cookie;\r\n\r\n\t\t\t\t\ted.pasteAsPlainText = !ed.pasteAsPlainText;\r\n\t\t\t\t\ted.controlManager.setActive('pastetext', ed.pasteAsPlainText);\r\n\r\n\t\t\t\t\tif ((ed.pasteAsPlainText) && (!cookie.get(\"tinymcePasteText\"))) {\r\n\t\t\t\t\t\tif (getParam(ed, \"paste_text_sticky\")) {\r\n\t\t\t\t\t\t\ted.windowManager.alert(ed.translate('paste.plaintext_mode_sticky'));\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\ted.windowManager.alert(ed.translate('paste.plaintext_mode'));\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tif (!getParam(ed, \"paste_text_notifyalways\")) {\r\n\t\t\t\t\t\t\tcookie.set(\"tinymcePasteText\", \"1\", new Date(new Date().getFullYear() + 1, 12, 31))\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\ted.addButton('pastetext', {title: 'paste.paste_text_desc', cmd: 'mcePasteText'});\r\n\t\t\ted.addButton('selectall', {title: 'paste.selectall_desc', cmd: 'selectall'});\r\n\r\n\t\t\t// This function grabs the contents from the clipboard by adding a\r\n\t\t\t// hidden div and placing the caret inside it and after the browser paste\r\n\t\t\t// is done it grabs that contents and processes that\r\n\t\t\tfunction grabContent(e) {\r\n\t\t\t\tvar n, or, rng, oldRng, sel = ed.selection, dom = ed.dom, body = ed.getBody(), posY, textContent;\r\n\r\n\t\t\t\t// Check if browser supports direct plaintext access\r\n\t\t\t\tif (e.clipboardData || dom.doc.dataTransfer) {\r\n\t\t\t\t\ttextContent = (e.clipboardData || dom.doc.dataTransfer).getData('Text');\r\n\r\n\t\t\t\t\tif (ed.pasteAsPlainText) {\r\n\t\t\t\t\t\te.preventDefault();\r\n\t\t\t\t\t\tprocess({content : dom.encode(textContent).replace(/\\r?\\n/g, '<br />')});\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (dom.get('_mcePaste'))\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\t// Create container to paste into\r\n\t\t\t\tn = dom.add(body, 'div', {id : '_mcePaste', 'class' : 'mcePaste', 'data-mce-bogus' : '1'}, '\\uFEFF\\uFEFF');\r\n\r\n\t\t\t\t// If contentEditable mode we need to find out the position of the closest element\r\n\t\t\t\tif (body != ed.getDoc().body)\r\n\t\t\t\t\tposY = dom.getPos(ed.selection.getStart(), body).y;\r\n\t\t\t\telse\r\n\t\t\t\t\tposY = body.scrollTop + dom.getViewPort(ed.getWin()).y;\r\n\r\n\t\t\t\t// Styles needs to be applied after the element is added to the document since WebKit will otherwise remove all styles\r\n\t\t\t\t// If also needs to be in view on IE or the paste would fail\r\n\t\t\t\tdom.setStyles(n, {\r\n\t\t\t\t\tposition : 'absolute',\r\n\t\t\t\t\tleft : tinymce.isGecko ? -40 : 0, // Need to move it out of site on Gecko since it will othewise display a ghost resize rect for the div\r\n\t\t\t\t\ttop : posY - 25,\r\n\t\t\t\t\twidth : 1,\r\n\t\t\t\t\theight : 1,\r\n\t\t\t\t\toverflow : 'hidden'\r\n\t\t\t\t});\r\n\r\n\t\t\t\tif (tinymce.isIE) {\r\n\t\t\t\t\t// Store away the old range\r\n\t\t\t\t\toldRng = sel.getRng();\r\n\r\n\t\t\t\t\t// Select the container\r\n\t\t\t\t\trng = dom.doc.body.createTextRange();\r\n\t\t\t\t\trng.moveToElementText(n);\r\n\t\t\t\t\trng.execCommand('Paste');\r\n\r\n\t\t\t\t\t// Remove container\r\n\t\t\t\t\tdom.remove(n);\r\n\r\n\t\t\t\t\t// Check if the contents was changed, if it wasn't then clipboard extraction failed probably due\r\n\t\t\t\t\t// to IE security settings so we pass the junk though better than nothing right\r\n\t\t\t\t\tif (n.innerHTML === '\\uFEFF\\uFEFF') {\r\n\t\t\t\t\t\ted.execCommand('mcePasteWord');\r\n\t\t\t\t\t\te.preventDefault();\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Restore the old range and clear the contents before pasting\r\n\t\t\t\t\tsel.setRng(oldRng);\r\n\t\t\t\t\tsel.setContent('');\r\n\r\n\t\t\t\t\t// For some odd reason we need to detach the the mceInsertContent call from the paste event\r\n\t\t\t\t\t// It's like IE has a reference to the parent element that you paste in and the selection gets messed up\r\n\t\t\t\t\t// when it tries to restore the selection\r\n\t\t\t\t\tsetTimeout(function() {\r\n\t\t\t\t\t\t// Process contents\r\n\t\t\t\t\t\tprocess({content : n.innerHTML});\r\n\t\t\t\t\t}, 0);\r\n\r\n\t\t\t\t\t// Block the real paste event\r\n\t\t\t\t\treturn tinymce.dom.Event.cancel(e);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tfunction block(e) {\r\n\t\t\t\t\t\te.preventDefault();\r\n\t\t\t\t\t};\r\n\r\n\t\t\t\t\t// Block mousedown and click to prevent selection change\r\n\t\t\t\t\tdom.bind(ed.getDoc(), 'mousedown', block);\r\n\t\t\t\t\tdom.bind(ed.getDoc(), 'keydown', block);\r\n\r\n\t\t\t\t\tor = ed.selection.getRng();\r\n\r\n\t\t\t\t\t// Move select contents inside DIV\r\n\t\t\t\t\tn = n.firstChild;\r\n\t\t\t\t\trng = ed.getDoc().createRange();\r\n\t\t\t\t\trng.setStart(n, 0);\r\n\t\t\t\t\trng.setEnd(n, 2);\r\n\t\t\t\t\tsel.setRng(rng);\r\n\r\n\t\t\t\t\t// Wait a while and grab the pasted contents\r\n\t\t\t\t\twindow.setTimeout(function() {\r\n\t\t\t\t\t\tvar h = '', nl;\r\n\r\n\t\t\t\t\t\t// Paste divs duplicated in paste divs seems to happen when you paste plain text so lets first look for that broken behavior in WebKit\r\n\t\t\t\t\t\tif (!dom.select('div.mcePaste > div.mcePaste').length) {\r\n\t\t\t\t\t\t\tnl = dom.select('div.mcePaste');\r\n\r\n\t\t\t\t\t\t\t// WebKit will split the div into multiple ones so this will loop through then all and join them to get the whole HTML string\r\n\t\t\t\t\t\t\teach(nl, function(n) {\r\n\t\t\t\t\t\t\t\tvar child = n.firstChild;\r\n\r\n\t\t\t\t\t\t\t\t// WebKit inserts a DIV container with lots of odd styles\r\n\t\t\t\t\t\t\t\tif (child && child.nodeName == 'DIV' && child.style.marginTop && child.style.backgroundColor) {\r\n\t\t\t\t\t\t\t\t\tdom.remove(child, 1);\r\n\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t// Remove apply style spans\r\n\t\t\t\t\t\t\t\teach(dom.select('span.Apple-style-span', n), function(n) {\r\n\t\t\t\t\t\t\t\t\tdom.remove(n, 1);\r\n\t\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\t\t// Remove bogus br elements\r\n\t\t\t\t\t\t\t\teach(dom.select('br[data-mce-bogus]', n), function(n) {\r\n\t\t\t\t\t\t\t\t\tdom.remove(n);\r\n\t\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\t\t// WebKit will make a copy of the DIV for each line of plain text pasted and insert them into the DIV\r\n\t\t\t\t\t\t\t\tif (n.parentNode.className != 'mcePaste')\r\n\t\t\t\t\t\t\t\t\th += n.innerHTML;\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t// Found WebKit weirdness so force the content into paragraphs this seems to happen when you paste plain text from Nodepad etc\r\n\t\t\t\t\t\t\t// So this logic will replace double enter with paragraphs and single enter with br so it kind of looks the same\r\n\t\t\t\t\t\t\th = '<p>' + dom.encode(textContent).replace(/\\r?\\n\\r?\\n/g, '</p><p>').replace(/\\r?\\n/g, '<br />') + '</p>';\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// Remove the nodes\r\n\t\t\t\t\t\teach(dom.select('div.mcePaste'), function(n) {\r\n\t\t\t\t\t\t\tdom.remove(n);\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t// Restore the old selection\r\n\t\t\t\t\t\tif (or)\r\n\t\t\t\t\t\t\tsel.setRng(or);\r\n\r\n\t\t\t\t\t\tprocess({content : h});\r\n\r\n\t\t\t\t\t\t// Unblock events ones we got the contents\r\n\t\t\t\t\t\tdom.unbind(ed.getDoc(), 'mousedown', block);\r\n\t\t\t\t\t\tdom.unbind(ed.getDoc(), 'keydown', block);\r\n\t\t\t\t\t}, 0);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Check if we should use the new auto process method\t\t\t\r\n\t\t\tif (getParam(ed, \"paste_auto_cleanup_on_paste\")) {\r\n\t\t\t\t// Is it's Opera or older FF use key handler\r\n\t\t\t\tif (tinymce.isOpera || /Firefox\\/2/.test(navigator.userAgent)) {\r\n\t\t\t\t\ted.onKeyDown.addToTop(function(ed, e) {\r\n\t\t\t\t\t\tif (((tinymce.isMac ? e.metaKey : e.ctrlKey) && e.keyCode == 86) || (e.shiftKey && e.keyCode == 45))\r\n\t\t\t\t\t\t\tgrabContent(e);\r\n\t\t\t\t\t});\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// Grab contents on paste event on Gecko and WebKit\r\n\t\t\t\t\ted.onPaste.addToTop(function(ed, e) {\r\n\t\t\t\t\t\treturn grabContent(e);\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\ted.onInit.add(function() {\r\n\t\t\t\ted.controlManager.setActive(\"pastetext\", ed.pasteAsPlainText);\r\n\r\n\t\t\t\t// Block all drag/drop events\r\n\t\t\t\tif (getParam(ed, \"paste_block_drop\")) {\r\n\t\t\t\t\ted.dom.bind(ed.getBody(), ['dragend', 'dragover', 'draggesture', 'dragdrop', 'drop', 'drag'], function(e) {\r\n\t\t\t\t\t\te.preventDefault();\r\n\t\t\t\t\t\te.stopPropagation();\r\n\r\n\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t// Add legacy support\r\n\t\t\tt._legacySupport();\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Paste text/word',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/paste',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t},\r\n\r\n\t\t_preProcess : function(pl, o) {\r\n\t\t\tvar ed = this.editor,\r\n\t\t\t\th = o.content,\r\n\t\t\t\tgrep = tinymce.grep,\r\n\t\t\t\texplode = tinymce.explode,\r\n\t\t\t\ttrim = tinymce.trim,\r\n\t\t\t\tlen, stripClass;\r\n\r\n\t\t\t//console.log('Before preprocess:' + o.content);\r\n\r\n\t\t\tfunction process(items) {\r\n\t\t\t\teach(items, function(v) {\r\n\t\t\t\t\t// Remove or replace\r\n\t\t\t\t\tif (v.constructor == RegExp)\r\n\t\t\t\t\t\th = h.replace(v, '');\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\th = h.replace(v[0], v[1]);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\tif (ed.settings.paste_enable_default_filters == false) {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\t// IE9 adds BRs before/after block elements when contents is pasted from word or for example another browser\r\n\t\t\tif (tinymce.isIE && document.documentMode >= 9) {\r\n\t\t\t\t// IE9 adds BRs before/after block elements when contents is pasted from word or for example another browser\r\n\t\t\t\tprocess([[/(?:<br>&nbsp;[\\s\\r\\n]+|<br>)*(<\\/?(h[1-6r]|p|div|address|pre|form|table|tbody|thead|tfoot|th|tr|td|li|ol|ul|caption|blockquote|center|dl|dt|dd|dir|fieldset)[^>]*>)(?:<br>&nbsp;[\\s\\r\\n]+|<br>)*/g, '$1']]);\r\n\r\n\t\t\t\t// IE9 also adds an extra BR element for each soft-linefeed and it also adds a BR for each word wrap break\r\n\t\t\t\tprocess([\r\n\t\t\t\t\t[/<br><br>/g, '<BR><BR>'], // Replace multiple BR elements with uppercase BR to keep them intact\r\n\t\t\t\t\t[/<br>/g, ' '], // Replace single br elements with space since they are word wrap BR:s\r\n\t\t\t\t\t[/<BR><BR>/g, '<br>'] // Replace back the double brs but into a single BR\r\n\t\t\t\t]);\r\n\t\t\t}\r\n\r\n\t\t\t// Detect Word content and process it more aggressive\r\n\t\t\tif (/class=\"?Mso|style=\"[^\"]*\\bmso-|w:WordDocument/i.test(h) || o.wordContent) {\r\n\t\t\t\to.wordContent = true;\t\t\t// Mark the pasted contents as word specific content\r\n\t\t\t\t//console.log('Word contents detected.');\r\n\r\n\t\t\t\t// Process away some basic content\r\n\t\t\t\tprocess([\r\n\t\t\t\t\t/^\\s*(&nbsp;)+/gi,\t\t\t\t// &nbsp; entities at the start of contents\r\n\t\t\t\t\t/(&nbsp;|<br[^>]*>)+\\s*$/gi\t\t// &nbsp; entities at the end of contents\r\n\t\t\t\t]);\r\n\r\n\t\t\t\tif (getParam(ed, \"paste_convert_headers_to_strong\")) {\r\n\t\t\t\t\th = h.replace(/<p [^>]*class=\"?MsoHeading\"?[^>]*>(.*?)<\\/p>/gi, \"<p><strong>$1</strong></p>\");\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (getParam(ed, \"paste_convert_middot_lists\")) {\r\n\t\t\t\t\tprocess([\r\n\t\t\t\t\t\t[/<!--\\[if !supportLists\\]-->/gi, '$&__MCE_ITEM__'],\t\t\t\t\t// Convert supportLists to a list item marker\r\n\t\t\t\t\t\t[/(<span[^>]+(?:mso-list:|:\\s*symbol)[^>]+>)/gi, '$1__MCE_ITEM__'],\t\t// Convert mso-list and symbol spans to item markers\r\n\t\t\t\t\t\t[/(<p[^>]+(?:MsoListParagraph)[^>]+>)/gi, '$1__MCE_ITEM__']\t\t\t\t// Convert mso-list and symbol paragraphs to item markers (FF)\r\n\t\t\t\t\t]);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tprocess([\r\n\t\t\t\t\t// Word comments like conditional comments etc\r\n\t\t\t\t\t/<!--[\\s\\S]+?-->/gi,\r\n\r\n\t\t\t\t\t// Remove comments, scripts (e.g., msoShowComment), XML tag, VML content, MS Office namespaced tags, and a few other tags\r\n\t\t\t\t\t/<(!|script[^>]*>.*?<\\/script(?=[>\\s])|\\/?(\\?xml(:\\w+)?|img|meta|link|style|\\w:\\w+)(?=[\\s\\/>]))[^>]*>/gi,\r\n\r\n\t\t\t\t\t// Convert <s> into <strike> for line-though\r\n\t\t\t\t\t[/<(\\/?)s>/gi, \"<$1strike>\"],\r\n\r\n\t\t\t\t\t// Replace nsbp entites to char since it's easier to handle\r\n\t\t\t\t\t[/&nbsp;/gi, \"\\u00a0\"]\r\n\t\t\t\t]);\r\n\r\n\t\t\t\t// Remove bad attributes, with or without quotes, ensuring that attribute text is really inside a tag.\r\n\t\t\t\t// If JavaScript had a RegExp look-behind, we could have integrated this with the last process() array and got rid of the loop. But alas, it does not, so we cannot.\r\n\t\t\t\tdo {\r\n\t\t\t\t\tlen = h.length;\r\n\t\t\t\t\th = h.replace(/(<[a-z][^>]*\\s)(?:id|name|language|type|on\\w+|\\w+:\\w+)=(?:\"[^\"]*\"|\\w+)\\s?/gi, \"$1\");\r\n\t\t\t\t} while (len != h.length);\r\n\r\n\t\t\t\t// Remove all spans if no styles is to be retained\r\n\t\t\t\tif (getParam(ed, \"paste_retain_style_properties\").replace(/^none$/i, \"\").length == 0) {\r\n\t\t\t\t\th = h.replace(/<\\/?span[^>]*>/gi, \"\");\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// We're keeping styles, so at least clean them up.\r\n\t\t\t\t\t// CSS Reference: http://msdn.microsoft.com/en-us/library/aa155477.aspx\r\n\r\n\t\t\t\t\tprocess([\r\n\t\t\t\t\t\t// Convert <span style=\"mso-spacerun:yes\">___</span> to string of alternating breaking/non-breaking spaces of same length\r\n\t\t\t\t\t\t[/<span\\s+style\\s*=\\s*\"\\s*mso-spacerun\\s*:\\s*yes\\s*;?\\s*\"\\s*>([\\s\\u00a0]*)<\\/span>/gi,\r\n\t\t\t\t\t\t\tfunction(str, spaces) {\r\n\t\t\t\t\t\t\t\treturn (spaces.length > 0)? spaces.replace(/./, \" \").slice(Math.floor(spaces.length/2)).split(\"\").join(\"\\u00a0\") : \"\";\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t],\r\n\r\n\t\t\t\t\t\t// Examine all styles: delete junk, transform some, and keep the rest\r\n\t\t\t\t\t\t[/(<[a-z][^>]*)\\sstyle=\"([^\"]*)\"/gi,\r\n\t\t\t\t\t\t\tfunction(str, tag, style) {\r\n\t\t\t\t\t\t\t\tvar n = [],\r\n\t\t\t\t\t\t\t\t\ti = 0,\r\n\t\t\t\t\t\t\t\t\ts = explode(trim(style).replace(/&quot;/gi, \"'\"), \";\");\r\n\r\n\t\t\t\t\t\t\t\t// Examine each style definition within the tag's style attribute\r\n\t\t\t\t\t\t\t\teach(s, function(v) {\r\n\t\t\t\t\t\t\t\t\tvar name, value,\r\n\t\t\t\t\t\t\t\t\t\tparts = explode(v, \":\");\r\n\r\n\t\t\t\t\t\t\t\t\tfunction ensureUnits(v) {\r\n\t\t\t\t\t\t\t\t\t\treturn v + ((v !== \"0\") && (/\\d$/.test(v)))? \"px\" : \"\";\r\n\t\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t\tif (parts.length == 2) {\r\n\t\t\t\t\t\t\t\t\t\tname = parts[0].toLowerCase();\r\n\t\t\t\t\t\t\t\t\t\tvalue = parts[1].toLowerCase();\r\n\r\n\t\t\t\t\t\t\t\t\t\t// Translate certain MS Office styles into their CSS equivalents\r\n\t\t\t\t\t\t\t\t\t\tswitch (name) {\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"mso-padding-alt\":\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"mso-padding-top-alt\":\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"mso-padding-right-alt\":\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"mso-padding-bottom-alt\":\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"mso-padding-left-alt\":\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"mso-margin-alt\":\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"mso-margin-top-alt\":\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"mso-margin-right-alt\":\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"mso-margin-bottom-alt\":\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"mso-margin-left-alt\":\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"mso-table-layout-alt\":\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"mso-height\":\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"mso-width\":\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"mso-vertical-align-alt\":\r\n\t\t\t\t\t\t\t\t\t\t\t\tn[i++] = name.replace(/^mso-|-alt$/g, \"\") + \":\" + ensureUnits(value);\r\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"horiz-align\":\r\n\t\t\t\t\t\t\t\t\t\t\t\tn[i++] = \"text-align:\" + value;\r\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"vert-align\":\r\n\t\t\t\t\t\t\t\t\t\t\t\tn[i++] = \"vertical-align:\" + value;\r\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"font-color\":\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"mso-foreground\":\r\n\t\t\t\t\t\t\t\t\t\t\t\tn[i++] = \"color:\" + value;\r\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"mso-background\":\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"mso-highlight\":\r\n\t\t\t\t\t\t\t\t\t\t\t\tn[i++] = \"background:\" + value;\r\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"mso-default-height\":\r\n\t\t\t\t\t\t\t\t\t\t\t\tn[i++] = \"min-height:\" + ensureUnits(value);\r\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"mso-default-width\":\r\n\t\t\t\t\t\t\t\t\t\t\t\tn[i++] = \"min-width:\" + ensureUnits(value);\r\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"mso-padding-between-alt\":\r\n\t\t\t\t\t\t\t\t\t\t\t\tn[i++] = \"border-collapse:separate;border-spacing:\" + ensureUnits(value);\r\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"text-line-through\":\r\n\t\t\t\t\t\t\t\t\t\t\t\tif ((value == \"single\") || (value == \"double\")) {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tn[i++] = \"text-decoration:line-through\";\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\t\t\t\t\t\tcase \"mso-zero-height\":\r\n\t\t\t\t\t\t\t\t\t\t\t\tif (value == \"yes\") {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tn[i++] = \"display:none\";\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t\t\t// Eliminate all MS Office style definitions that have no CSS equivalent by examining the first characters in the name\r\n\t\t\t\t\t\t\t\t\t\tif (/^(mso|column|font-emph|lang|layout|line-break|list-image|nav|panose|punct|row|ruby|sep|size|src|tab-|table-border|text-(?!align|decor|indent|trans)|top-bar|version|vnd|word-break)/.test(name)) {\r\n\t\t\t\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t\t\t// If it reached this point, it must be a valid CSS style\r\n\t\t\t\t\t\t\t\t\t\tn[i++] = name + \":\" + parts[1];\t\t// Lower-case name, but keep value case\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\t\t// If style attribute contained any valid styles the re-write it; otherwise delete style attribute.\r\n\t\t\t\t\t\t\t\tif (i > 0) {\r\n\t\t\t\t\t\t\t\t\treturn tag + ' style=\"' + n.join(';') + '\"';\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\treturn tag;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t]\r\n\t\t\t\t\t]);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Replace headers with <strong>\r\n\t\t\tif (getParam(ed, \"paste_convert_headers_to_strong\")) {\r\n\t\t\t\tprocess([\r\n\t\t\t\t\t[/<h[1-6][^>]*>/gi, \"<p><strong>\"],\r\n\t\t\t\t\t[/<\\/h[1-6][^>]*>/gi, \"</strong></p>\"]\r\n\t\t\t\t]);\r\n\t\t\t}\r\n\r\n\t\t\tprocess([\r\n\t\t\t\t// Copy paste from Java like Open Office will produce this junk on FF\r\n\t\t\t\t[/Version:[\\d.]+\\nStartHTML:\\d+\\nEndHTML:\\d+\\nStartFragment:\\d+\\nEndFragment:\\d+/gi, '']\r\n\t\t\t]);\r\n\r\n\t\t\t// Class attribute options are: leave all as-is (\"none\"), remove all (\"all\"), or remove only those starting with mso (\"mso\").\r\n\t\t\t// Note:-  paste_strip_class_attributes: \"none\", verify_css_classes: true is also a good variation.\r\n\t\t\tstripClass = getParam(ed, \"paste_strip_class_attributes\");\r\n\r\n\t\t\tif (stripClass !== \"none\") {\r\n\t\t\t\tfunction removeClasses(match, g1) {\r\n\t\t\t\t\t\tif (stripClass === \"all\")\r\n\t\t\t\t\t\t\treturn '';\r\n\r\n\t\t\t\t\t\tvar cls = grep(explode(g1.replace(/^([\"'])(.*)\\1$/, \"$2\"), \" \"),\r\n\t\t\t\t\t\t\tfunction(v) {\r\n\t\t\t\t\t\t\t\treturn (/^(?!mso)/i.test(v));\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t);\r\n\r\n\t\t\t\t\t\treturn cls.length ? ' class=\"' + cls.join(\" \") + '\"' : '';\r\n\t\t\t\t};\r\n\r\n\t\t\t\th = h.replace(/ class=\"([^\"]+)\"/gi, removeClasses);\r\n\t\t\t\th = h.replace(/ class=([\\-\\w]+)/gi, removeClasses);\r\n\t\t\t}\r\n\r\n\t\t\t// Remove spans option\r\n\t\t\tif (getParam(ed, \"paste_remove_spans\")) {\r\n\t\t\t\th = h.replace(/<\\/?span[^>]*>/gi, \"\");\r\n\t\t\t}\r\n\r\n\t\t\t//console.log('After preprocess:' + h);\r\n\r\n\t\t\to.content = h;\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * Various post process items.\r\n\t\t */\r\n\t\t_postProcess : function(pl, o) {\r\n\t\t\tvar t = this, ed = t.editor, dom = ed.dom, styleProps;\r\n\r\n\t\t\tif (ed.settings.paste_enable_default_filters == false) {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\tif (o.wordContent) {\r\n\t\t\t\t// Remove named anchors or TOC links\r\n\t\t\t\teach(dom.select('a', o.node), function(a) {\r\n\t\t\t\t\tif (!a.href || a.href.indexOf('#_Toc') != -1)\r\n\t\t\t\t\t\tdom.remove(a, 1);\r\n\t\t\t\t});\r\n\r\n\t\t\t\tif (getParam(ed, \"paste_convert_middot_lists\")) {\r\n\t\t\t\t\tt._convertLists(pl, o);\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Process styles\r\n\t\t\t\tstyleProps = getParam(ed, \"paste_retain_style_properties\"); // retained properties\r\n\r\n\t\t\t\t// Process only if a string was specified and not equal to \"all\" or \"*\"\r\n\t\t\t\tif ((tinymce.is(styleProps, \"string\")) && (styleProps !== \"all\") && (styleProps !== \"*\")) {\r\n\t\t\t\t\tstyleProps = tinymce.explode(styleProps.replace(/^none$/i, \"\"));\r\n\r\n\t\t\t\t\t// Retains some style properties\r\n\t\t\t\t\teach(dom.select('*', o.node), function(el) {\r\n\t\t\t\t\t\tvar newStyle = {}, npc = 0, i, sp, sv;\r\n\r\n\t\t\t\t\t\t// Store a subset of the existing styles\r\n\t\t\t\t\t\tif (styleProps) {\r\n\t\t\t\t\t\t\tfor (i = 0; i < styleProps.length; i++) {\r\n\t\t\t\t\t\t\t\tsp = styleProps[i];\r\n\t\t\t\t\t\t\t\tsv = dom.getStyle(el, sp);\r\n\r\n\t\t\t\t\t\t\t\tif (sv) {\r\n\t\t\t\t\t\t\t\t\tnewStyle[sp] = sv;\r\n\t\t\t\t\t\t\t\t\tnpc++;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// Remove all of the existing styles\r\n\t\t\t\t\t\tdom.setAttrib(el, 'style', '');\r\n\r\n\t\t\t\t\t\tif (styleProps && npc > 0)\r\n\t\t\t\t\t\t\tdom.setStyles(el, newStyle); // Add back the stored subset of styles\r\n\t\t\t\t\t\telse // Remove empty span tags that do not have class attributes\r\n\t\t\t\t\t\t\tif (el.nodeName == 'SPAN' && !el.className)\r\n\t\t\t\t\t\t\t\tdom.remove(el, true);\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Remove all style information or only specifically on WebKit to avoid the style bug on that browser\r\n\t\t\tif (getParam(ed, \"paste_remove_styles\") || (getParam(ed, \"paste_remove_styles_if_webkit\") && tinymce.isWebKit)) {\r\n\t\t\t\teach(dom.select('*[style]', o.node), function(el) {\r\n\t\t\t\t\tel.removeAttribute('style');\r\n\t\t\t\t\tel.removeAttribute('data-mce-style');\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tif (tinymce.isWebKit) {\r\n\t\t\t\t\t// We need to compress the styles on WebKit since if you paste <img border=\"0\" /> it will become <img border=\"0\" style=\"... lots of junk ...\" />\r\n\t\t\t\t\t// Removing the mce_style that contains the real value will force the Serializer engine to compress the styles\r\n\t\t\t\t\teach(dom.select('*', o.node), function(el) {\r\n\t\t\t\t\t\tel.removeAttribute('data-mce-style');\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * Converts the most common bullet and number formats in Office into a real semantic UL/LI list.\r\n\t\t */\r\n\t\t_convertLists : function(pl, o) {\r\n\t\t\tvar dom = pl.editor.dom, listElm, li, lastMargin = -1, margin, levels = [], lastType, html;\r\n\r\n\t\t\t// Convert middot lists into real semantic lists\r\n\t\t\teach(dom.select('p', o.node), function(p) {\r\n\t\t\t\tvar sib, val = '', type, html, idx, parents;\r\n\r\n\t\t\t\t// Get text node value at beginning of paragraph\r\n\t\t\t\tfor (sib = p.firstChild; sib && sib.nodeType == 3; sib = sib.nextSibling)\r\n\t\t\t\t\tval += sib.nodeValue;\r\n\r\n\t\t\t\tval = p.innerHTML.replace(/<\\/?\\w+[^>]*>/gi, '').replace(/&nbsp;/g, '\\u00a0');\r\n\r\n\t\t\t\t// Detect unordered lists look for bullets\r\n\t\t\t\tif (/^(__MCE_ITEM__)+[\\u2022\\u00b7\\u00a7\\u00d8o\\u25CF]\\s*\\u00a0*/.test(val))\r\n\t\t\t\t\ttype = 'ul';\r\n\r\n\t\t\t\t// Detect ordered lists 1., a. or ixv.\r\n\t\t\t\tif (/^__MCE_ITEM__\\s*\\w+\\.\\s*\\u00a0+/.test(val))\r\n\t\t\t\t\ttype = 'ol';\r\n\r\n\t\t\t\t// Check if node value matches the list pattern: o&nbsp;&nbsp;\r\n\t\t\t\tif (type) {\r\n\t\t\t\t\tmargin = parseFloat(p.style.marginLeft || 0);\r\n\r\n\t\t\t\t\tif (margin > lastMargin)\r\n\t\t\t\t\t\tlevels.push(margin);\r\n\r\n\t\t\t\t\tif (!listElm || type != lastType) {\r\n\t\t\t\t\t\tlistElm = dom.create(type);\r\n\t\t\t\t\t\tdom.insertAfter(listElm, p);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t// Nested list element\r\n\t\t\t\t\t\tif (margin > lastMargin) {\r\n\t\t\t\t\t\t\tlistElm = li.appendChild(dom.create(type));\r\n\t\t\t\t\t\t} else if (margin < lastMargin) {\r\n\t\t\t\t\t\t\t// Find parent level based on margin value\r\n\t\t\t\t\t\t\tidx = tinymce.inArray(levels, margin);\r\n\t\t\t\t\t\t\tparents = dom.getParents(listElm.parentNode, type);\r\n\t\t\t\t\t\t\tlistElm = parents[parents.length - 1 - idx] || listElm;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Remove middot or number spans if they exists\r\n\t\t\t\t\teach(dom.select('span', p), function(span) {\r\n\t\t\t\t\t\tvar html = span.innerHTML.replace(/<\\/?\\w+[^>]*>/gi, '');\r\n\r\n\t\t\t\t\t\t// Remove span with the middot or the number\r\n\t\t\t\t\t\tif (type == 'ul' && /^__MCE_ITEM__[\\u2022\\u00b7\\u00a7\\u00d8o\\u25CF]/.test(html))\r\n\t\t\t\t\t\t\tdom.remove(span);\r\n\t\t\t\t\t\telse if (/^__MCE_ITEM__[\\s\\S]*\\w+\\.(&nbsp;|\\u00a0)*\\s*/.test(html))\r\n\t\t\t\t\t\t\tdom.remove(span);\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\thtml = p.innerHTML;\r\n\r\n\t\t\t\t\t// Remove middot/list items\r\n\t\t\t\t\tif (type == 'ul')\r\n\t\t\t\t\t\thtml = p.innerHTML.replace(/__MCE_ITEM__/g, '').replace(/^[\\u2022\\u00b7\\u00a7\\u00d8o\\u25CF]\\s*(&nbsp;|\\u00a0)+\\s*/, '');\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\thtml = p.innerHTML.replace(/__MCE_ITEM__/g, '').replace(/^\\s*\\w+\\.(&nbsp;|\\u00a0)+\\s*/, '');\r\n\r\n\t\t\t\t\t// Create li and add paragraph data into the new li\r\n\t\t\t\t\tli = listElm.appendChild(dom.create('li', 0, html));\r\n\t\t\t\t\tdom.remove(p);\r\n\r\n\t\t\t\t\tlastMargin = margin;\r\n\t\t\t\t\tlastType = type;\r\n\t\t\t\t} else\r\n\t\t\t\t\tlistElm = lastMargin = 0; // End list element\r\n\t\t\t});\r\n\r\n\t\t\t// Remove any left over makers\r\n\t\t\thtml = o.node.innerHTML;\r\n\t\t\tif (html.indexOf('__MCE_ITEM__') != -1)\r\n\t\t\t\to.node.innerHTML = html.replace(/__MCE_ITEM__/g, '');\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * Inserts the specified contents at the caret position.\r\n\t\t */\r\n\t\t_insert : function(h, skip_undo) {\r\n\t\t\tvar ed = this.editor, r = ed.selection.getRng();\r\n\r\n\t\t\t// First delete the contents seems to work better on WebKit when the selection spans multiple list items or multiple table cells.\r\n\t\t\tif (!ed.selection.isCollapsed() && r.startContainer != r.endContainer)\r\n\t\t\t\ted.getDoc().execCommand('Delete', false, null);\r\n\r\n\t\t\ted.execCommand('mceInsertContent', false, h, {skip_undo : skip_undo});\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * Instead of the old plain text method which tried to re-create a paste operation, the\r\n\t\t * new approach adds a plain text mode toggle switch that changes the behavior of paste.\r\n\t\t * This function is passed the same input that the regular paste plugin produces.\r\n\t\t * It performs additional scrubbing and produces (and inserts) the plain text.\r\n\t\t * This approach leverages all of the great existing functionality in the paste\r\n\t\t * plugin, and requires minimal changes to add the new functionality.\r\n\t\t * Speednet - June 2009\r\n\t\t */\r\n\t\t_insertPlainText : function(content) {\r\n\t\t\tvar ed = this.editor,\r\n\t\t\t\tlinebr = getParam(ed, \"paste_text_linebreaktype\"),\r\n\t\t\t\trl = getParam(ed, \"paste_text_replacements\"),\r\n\t\t\t\tis = tinymce.is;\r\n\r\n\t\t\tfunction process(items) {\r\n\t\t\t\teach(items, function(v) {\r\n\t\t\t\t\tif (v.constructor == RegExp)\r\n\t\t\t\t\t\tcontent = content.replace(v, \"\");\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\tcontent = content.replace(v[0], v[1]);\r\n\t\t\t\t});\r\n\t\t\t};\r\n\r\n\t\t\tif ((typeof(content) === \"string\") && (content.length > 0)) {\r\n\t\t\t\t// If HTML content with line-breaking tags, then remove all cr/lf chars because only tags will break a line\r\n\t\t\t\tif (/<(?:p|br|h[1-6]|ul|ol|dl|table|t[rdh]|div|blockquote|fieldset|pre|address|center)[^>]*>/i.test(content)) {\r\n\t\t\t\t\tprocess([\r\n\t\t\t\t\t\t/[\\n\\r]+/g\r\n\t\t\t\t\t]);\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// Otherwise just get rid of carriage returns (only need linefeeds)\r\n\t\t\t\t\tprocess([\r\n\t\t\t\t\t\t/\\r+/g\r\n\t\t\t\t\t]);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tprocess([\r\n\t\t\t\t\t[/<\\/(?:p|h[1-6]|ul|ol|dl|table|div|blockquote|fieldset|pre|address|center)>/gi, \"\\n\\n\"],\t\t// Block tags get a blank line after them\r\n\t\t\t\t\t[/<br[^>]*>|<\\/tr>/gi, \"\\n\"],\t\t\t\t// Single linebreak for <br /> tags and table rows\r\n\t\t\t\t\t[/<\\/t[dh]>\\s*<t[dh][^>]*>/gi, \"\\t\"],\t\t// Table cells get tabs betweem them\r\n\t\t\t\t\t/<[a-z!\\/?][^>]*>/gi,\t\t\t\t\t\t// Delete all remaining tags\r\n\t\t\t\t\t[/&nbsp;/gi, \" \"],\t\t\t\t\t\t\t// Convert non-break spaces to regular spaces (remember, *plain text*)\r\n\t\t\t\t\t[/(?:(?!\\n)\\s)*(\\n+)(?:(?!\\n)\\s)*/gi, \"$1\"],// Cool little RegExp deletes whitespace around linebreak chars.\r\n\t\t\t\t\t[/\\n{3,}/g, \"\\n\\n\"]\t\t\t\t\t\t\t// Max. 2 consecutive linebreaks\r\n\t\t\t\t]);\r\n\r\n\t\t\t\tcontent = ed.dom.decode(tinymce.html.Entities.encodeRaw(content));\r\n\r\n\t\t\t\t// Perform default or custom replacements\r\n\t\t\t\tif (is(rl, \"array\")) {\r\n\t\t\t\t\tprocess(rl);\r\n\t\t\t\t} else if (is(rl, \"string\")) {\r\n\t\t\t\t\tprocess(new RegExp(rl, \"gi\"));\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Treat paragraphs as specified in the config\r\n\t\t\t\tif (linebr == \"none\") {\r\n\t\t\t\t\t// Convert all line breaks to space\r\n\t\t\t\t\tprocess([\r\n\t\t\t\t\t\t[/\\n+/g, \" \"]\r\n\t\t\t\t\t]);\r\n\t\t\t\t} else if (linebr == \"br\") {\r\n\t\t\t\t\t// Convert all line breaks to <br />\r\n\t\t\t\t\tprocess([\r\n\t\t\t\t\t\t[/\\n/g, \"<br />\"]\r\n\t\t\t\t\t]);\r\n\t\t\t\t} else if (linebr == \"p\") {\r\n\t\t\t\t\t// Convert all line breaks to <p>...</p>\r\n\t\t\t\t\tprocess([\r\n\t\t\t\t\t\t[/\\n+/g, \"</p><p>\"],\r\n\t\t\t\t\t\t[/^(.*<\\/p>)(<p>)$/, '<p>$1']\r\n\t\t\t\t\t]);\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// defaults to \"combined\"\r\n\t\t\t\t\t// Convert single line breaks to <br /> and double line breaks to <p>...</p>\r\n\t\t\t\t\tprocess([\r\n\t\t\t\t\t\t[/\\n\\n/g, \"</p><p>\"],\r\n\t\t\t\t\t\t[/^(.*<\\/p>)(<p>)$/, '<p>$1'],\r\n\t\t\t\t\t\t[/\\n/g, \"<br />\"]\r\n\t\t\t\t\t]);\r\n\t\t\t\t}\r\n\r\n\t\t\t\ted.execCommand('mceInsertContent', false, content);\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * This method will open the old style paste dialogs. Some users might want the old behavior but still use the new cleanup engine.\r\n\t\t */\r\n\t\t_legacySupport : function() {\r\n\t\t\tvar t = this, ed = t.editor;\r\n\r\n\t\t\t// Register command(s) for backwards compatibility\r\n\t\t\ted.addCommand(\"mcePasteWord\", function() {\r\n\t\t\t\ted.windowManager.open({\r\n\t\t\t\t\tfile: t.url + \"/pasteword.htm\",\r\n\t\t\t\t\twidth: parseInt(getParam(ed, \"paste_dialog_width\")),\r\n\t\t\t\t\theight: parseInt(getParam(ed, \"paste_dialog_height\")),\r\n\t\t\t\t\tinline: 1\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\tif (getParam(ed, \"paste_text_use_dialog\")) {\r\n\t\t\t\ted.addCommand(\"mcePasteText\", function() {\r\n\t\t\t\t\ted.windowManager.open({\r\n\t\t\t\t\t\tfile : t.url + \"/pastetext.htm\",\r\n\t\t\t\t\t\twidth: parseInt(getParam(ed, \"paste_dialog_width\")),\r\n\t\t\t\t\t\theight: parseInt(getParam(ed, \"paste_dialog_height\")),\r\n\t\t\t\t\t\tinline : 1\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\t// Register button for backwards compatibility\r\n\t\t\ted.addButton(\"pasteword\", {title : \"paste.paste_word_desc\", cmd : \"mcePasteWord\"});\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add(\"paste\", tinymce.plugins.PastePlugin);\r\n})();\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/js/pastetext.js",
    "content": "tinyMCEPopup.requireLangPack();\r\n\r\nvar PasteTextDialog = {\r\n\tinit : function() {\r\n\t\tthis.resize();\r\n\t},\r\n\r\n\tinsert : function() {\r\n\t\tvar h = tinyMCEPopup.dom.encode(document.getElementById('content').value), lines;\r\n\r\n\t\t// Convert linebreaks into paragraphs\r\n\t\tif (document.getElementById('linebreaks').checked) {\r\n\t\t\tlines = h.split(/\\r?\\n/);\r\n\t\t\tif (lines.length > 1) {\r\n\t\t\t\th = '';\r\n\t\t\t\ttinymce.each(lines, function(row) {\r\n\t\t\t\t\th += '<p>' + row + '</p>';\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\ttinyMCEPopup.editor.execCommand('mceInsertClipboardContent', false, {content : h});\r\n\t\ttinyMCEPopup.close();\r\n\t},\r\n\r\n\tresize : function() {\r\n\t\tvar vp = tinyMCEPopup.dom.getViewPort(window), el;\r\n\r\n\t\tel = document.getElementById('content');\r\n\r\n\t\tel.style.width  = (vp.w - 20) + 'px';\r\n\t\tel.style.height = (vp.h - 90) + 'px';\r\n\t}\r\n};\r\n\r\ntinyMCEPopup.onInit.add(PasteTextDialog.init, PasteTextDialog);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/js/pasteword.js",
    "content": "tinyMCEPopup.requireLangPack();\r\n\r\nvar PasteWordDialog = {\r\n\tinit : function() {\r\n\t\tvar ed = tinyMCEPopup.editor, el = document.getElementById('iframecontainer'), ifr, doc, css, cssHTML = '';\r\n\r\n\t\t// Create iframe\r\n\t\tel.innerHTML = '<iframe id=\"iframe\" src=\"javascript:\\'\\';\" frameBorder=\"0\" style=\"border: 1px solid gray\"></iframe>';\r\n\t\tifr = document.getElementById('iframe');\r\n\t\tdoc = ifr.contentWindow.document;\r\n\r\n\t\t// Force absolute CSS urls\r\n\t\tcss = [ed.baseURI.toAbsolute(\"themes/\" + ed.settings.theme + \"/skins/\" + ed.settings.skin + \"/content.css\")];\r\n\t\tcss = css.concat(tinymce.explode(ed.settings.content_css) || []);\r\n\t\ttinymce.each(css, function(u) {\r\n\t\t\tcssHTML += '<link href=\"' + ed.documentBaseURI.toAbsolute('' + u) + '\" rel=\"stylesheet\" type=\"text/css\" />';\r\n\t\t});\r\n\r\n\t\t// Write content into iframe\r\n\t\tdoc.open();\r\n\t\tdoc.write('<html><head>' + cssHTML + '</head><body class=\"mceContentBody\" spellcheck=\"false\"></body></html>');\r\n\t\tdoc.close();\r\n\r\n\t\tdoc.designMode = 'on';\r\n\t\tthis.resize();\r\n\r\n\t\twindow.setTimeout(function() {\r\n\t\t\tifr.contentWindow.focus();\r\n\t\t}, 10);\r\n\t},\r\n\r\n\tinsert : function() {\r\n\t\tvar h = document.getElementById('iframe').contentWindow.document.body.innerHTML;\r\n\r\n\t\ttinyMCEPopup.editor.execCommand('mceInsertClipboardContent', false, {content : h, wordContent : true});\r\n\t\ttinyMCEPopup.close();\r\n\t},\r\n\r\n\tresize : function() {\r\n\t\tvar vp = tinyMCEPopup.dom.getViewPort(window), el;\r\n\r\n\t\tel = document.getElementById('iframe');\r\n\r\n\t\tif (el) {\r\n\t\t\tel.style.width  = (vp.w - 20) + 'px';\r\n\t\t\tel.style.height = (vp.h - 90) + 'px';\r\n\t\t}\r\n\t}\r\n};\r\n\r\ntinyMCEPopup.onInit.add(PasteWordDialog.init, PasteWordDialog);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/ar_dlg.js",
    "content": "tinyMCE.addI18n('ar.paste_dlg',{word_title:\"\\u0627\\u0633\\u062a\\u062e\\u062f\\u0627\\u0645  \\u0639\\u0644\\u0649 \\u0644\\u0648\\u062d\\u0629 \\u0627\\u0644\\u0645\\u0641\\u0627\\u062a\\u064a\\u062d \\u0644\\u0644\\u0635\\u0642 \\u0627\\u0644\\u0646\\u0635 \\u0641\\u064a \\u0627\\u0644\\u0625\\u0637\\u0627\\u0631.( CTRL+V )\",text_linebreaks:\"\\u0627\\u062d\\u062a\\u0641\\u0638 \\u0628\\u0641\\u0648\\u0627\\u0635\\u0644 \\u0627\\u0644\\u0623\\u0633\\u0637\\u0631\",text_title:\"\\u0627\\u0633\\u062a\\u062e\\u062f\\u0627\\u0645  \\u0639\\u0644\\u0649 \\u0644\\u0648\\u062d\\u0629 \\u0627\\u0644\\u0645\\u0641\\u0627\\u062a\\u064a\\u062d \\u0644\\u0644\\u0635\\u0642 \\u0627\\u0644\\u0646\\u0635 \\u0641\\u064a \\u0627\\u0644\\u0625\\u0637\\u0627\\u0631.( CTRL+V )\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/az_dlg.js",
    "content": "tinyMCE.addI18n('az.paste_dlg',{\"word_title\":\"P\\u0259nc\\u0259r\\u0259y\\u0259 s\\u00f6z \\u0259lav\\u0259 etm\\u0259k \\u00fc\\u00e7\\u00fcn CTRL+V klavi\\u015f birl\\u0259\\u015fm\\u0259sini istifad\\u0259 edin.\",\"text_linebreaks\":\"S\\u0259tr s\\u0131nmalar\\u0131n\\u0131 saxla\",\"text_title\":\"P\\u0259nc\\u0259r\\u0259y\\u0259 m\\u0259tn \\u0259lav\\u0259 etm\\u0259k \\u00fc\\u00e7\\u00fcn CTRL+V klavi\\u015f birl\\u0259\\u015fm\\u0259sini istifad\\u0259 edin.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/be_dlg.js",
    "content": "tinyMCE.addI18n('be.paste_dlg',{\"word_title\":\"\\u0412\\u044b\\u043a\\u0430\\u0440\\u044b\\u0441\\u0442\\u0430\\u0439\\u0446\\u0435 \\u0441\\u043f\\u0430\\u043b\\u0443\\u0447\\u044d\\u043d\\u043d\\u0435 \\u043a\\u043b\\u0430\\u0432\\u0456\\u0448 CTRL+V \\u043a\\u0430\\u0431 \\u0443\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u0442\\u044d\\u043a\\u0441\\u0442 \\u0443 \\u0430\\u043a\\u043d\\u043e.\",\"text_linebreaks\":\"\\u0417\\u0430\\u0445\\u043e\\u045e\\u0432\\u0430\\u0446\\u044c \\u043f\\u0430\\u0440\\u044b\\u0432\\u044b \\u0440\\u0430\\u0434\\u043a\\u043e\\u045e\",\"text_title\":\"\\u0412\\u044b\\u043a\\u0430\\u0440\\u044b\\u0441\\u0442\\u0430\\u0439\\u0446\\u0435 \\u0441\\u043f\\u0430\\u043b\\u0443\\u0447\\u044d\\u043d\\u043d\\u0435 \\u043a\\u043b\\u0430\\u0432\\u0456\\u0448 CTRL+V \\u043a\\u0430\\u0431 \\u0443\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u0442\\u044d\\u043a\\u0441\\u0442 \\u0443 \\u0430\\u043a\\u043d\\u043e.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/cs_dlg.js",
    "content": "tinyMCE.addI18n('cs.paste_dlg',{word_title:\"Pou\\u017eijte CTRL+V pro vlo\\u017een\\u00ed textu do okna.\",text_linebreaks:\"Zachovat zalamov\\u00e1n\\u00ed \\u0159\\u00e1dk\\u016f\",text_title:\"Pou\\u017eijte CTRL+V pro vlo\\u017een\\u00ed textu do okna.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/da_dlg.js",
    "content": "tinyMCE.addI18n('da.paste_dlg',{\"word_title\":\"Anvend CTRL+V p\\u00e5 tastaturet for at inds\\u00e6tte teksten.\",\"text_linebreaks\":\"Bevar linieskift\",\"text_title\":\"Anvend CTRL+V p\\u00e5 tastaturet for at inds\\u00e6tte teksten.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/de_dlg.js",
    "content": "tinyMCE.addI18n('de.paste_dlg',{word_title:\"Dr\\u00fccken Sie auf Ihrer Tastatur Strg+V, um den Text einzuf\\u00fcgen.\",text_linebreaks:\"Zeilenumbr\\u00fcche beibehalten\",text_title:\"Dr\\u00fccken Sie auf Ihrer Tastatur Strg+V, um den Text einzuf\\u00fcgen.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/el_dlg.js",
    "content": "tinyMCE.addI18n('el.paste_dlg',{\"word_title\":\"\\u03a7\\u03c1\\u03b7\\u03c3\\u03b9\\u03bc\\u03bf\\u03c0\\u03bf\\u03b9\\u03ae\\u03c3\\u03c4\\u03b5 CTRL+V \\u03b3\\u03b9\\u03b1 \\u03bd\\u03b1 \\u03ba\\u03ac\\u03bd\\u03b5\\u03c4\\u03b5 \\u03b5\\u03c0\\u03b9\\u03ba\\u03cc\\u03bb\\u03bb\\u03b7\\u03c3\\u03b7 \\u03ba\\u03b5\\u03b9\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5 \\u03c3\\u03c4\\u03bf \\u03c0\\u03b1\\u03c1\\u03ac\\u03b8\\u03c5\\u03c1\\u03bf.\",\"text_linebreaks\":\"\\u039d\\u03b1 \\u03ba\\u03c1\\u03b1\\u03c4\\u03b7\\u03b8\\u03bf\\u03cd\\u03bd \\u03c4\\u03b1 linebreaks\",\"text_title\":\"\\u03a7\\u03c1\\u03b7\\u03c3\\u03b9\\u03bc\\u03bf\\u03c0\\u03bf\\u03b9\\u03ae\\u03c3\\u03c4\\u03b5 CTRL+V \\u03b3\\u03b9\\u03b1 \\u03bd\\u03b1 \\u03ba\\u03ac\\u03bd\\u03b5\\u03c4\\u03b5 \\u03b5\\u03c0\\u03b9\\u03ba\\u03cc\\u03bb\\u03bb\\u03b7\\u03c3\\u03b7 \\u03ba\\u03b5\\u03b9\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5 \\u03c3\\u03c4\\u03bf \\u03c0\\u03b1\\u03c1\\u03ac\\u03b8\\u03c5\\u03c1\\u03bf.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/en_dlg.js",
    "content": "tinyMCE.addI18n('en.paste_dlg',{\"word_title\":\"Use Ctrl+V on your keyboard to paste the text into the window.\",\"text_linebreaks\":\"Keep Linebreaks\",\"text_title\":\"Use Ctrl+V on your keyboard to paste the text into the window.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/es_dlg.js",
    "content": "tinyMCE.addI18n('es.paste_dlg',{word_title:\"Use CTRL+V en su teclado para pegar el texto en la ventana.\",text_linebreaks:\"Keep linebreaks\",text_title:\"Use CTRL+V en su teclado para pegar el texto en la ventana.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/fr_dlg.js",
    "content": "tinyMCE.addI18n('fr.paste_dlg',{word_title:\"Utilisez CTRL+V sur votre clavier pour coller le texte dans la fen\\u00eatre.\",text_linebreaks:\"Conserver les retours \\u00e0 la ligne\",text_title:\"Utilisez CTRL+V sur votre clavier pour coller le texte dans la fen\\u00eatre.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/he_dlg.js",
    "content": "tinyMCE.addI18n('he.paste_dlg',{\"word_title\":\"\\u05d4\\u05d3\\u05d1\\u05d9\\u05e7\\u05d5 \\u05d1\\u05d7\\u05dc\\u05d5\\u05df \\u05d6\\u05d4 \\u05d0\\u05ea \\u05d4\\u05d8\\u05e7\\u05e1\\u05d8 \\u05d1\\u05d0\\u05de\\u05e6\\u05e2\\u05d5\\u05ea \\u05d4\\u05de\\u05e7\\u05e9\\u05d9\\u05dd CTRL+V.\",\"text_linebreaks\":\"\\u05d4\\u05e9\\u05d0\\u05e8 \\u05d0\\u05ea \\u05e9\\u05d5\\u05e8\\u05d5\\u05ea \\u05d4\\u05e8\\u05d5\\u05d5\\u05d7\",\"text_title\":\"\\u05d4\\u05d3\\u05d1\\u05d9\\u05e7\\u05d5 \\u05d1\\u05d7\\u05dc\\u05d5\\u05df \\u05d6\\u05d4 \\u05d0\\u05ea \\u05d4\\u05d8\\u05e7\\u05e1\\u05d8 \\u05d1\\u05d0\\u05de\\u05e6\\u05e2\\u05d5\\u05ea \\u05d4\\u05de\\u05e7\\u05e9\\u05d9\\u05dd CTRL+V.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/hr_dlg.js",
    "content": "tinyMCE.addI18n('hr.paste_dlg',{word_title:\"Koristite CTRL+V na tipkovnici da zalijepite tekst u prozor.\",text_linebreaks:\"Zadr\\u017ei prijelome\",text_title:\"Koristite CTRL+V na tipkovnici da zalijepite tekst u prozor.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/hu_dlg.js",
    "content": "tinyMCE.addI18n('hu.paste_dlg',{\"word_title\":\"Haszn\\u00e1lja a Ctrl V-t a billenty\\u0171zet\\u00e9n a sz\\u00f6veg beilleszt\\u00e9shez.\",\"text_linebreaks\":\"Sort\\u00f6r\\u00e9sek megtart\\u00e1sa\",\"text_title\":\"Haszn\\u00e1lja a Ctrl V-t a billenty\\u0171zet\\u00e9n a sz\\u00f6veg beilleszt\\u00e9shez.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/hy_dlg.js",
    "content": "tinyMCE.addI18n('hy.paste_dlg',{\"word_title\":\"\\u0555\\u0563\\u057f\\u0561\\u0563\\u0578\\u0580\\u056e\\u0565\\u0584 CTRL + V \\u057a\\u0561\\u057f\\u0573\\u0565\\u0576\\u057e\\u0561\\u056e \\u057f\\u0565\\u0584\\u057d\\u057f\\u056b \\u057f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0574\\u0561\\u0576 \\u0570\\u0561\\u0574\\u0561\\u0580\",\"text_linebreaks\":\"\\u054a\\u0561\\u0570\\u057a\\u0561\\u0576\\u0565\\u056c \\u057f\\u0578\\u0572\\u0561\\u0564\\u0561\\u0580\\u0571\\u0565\\u0580\\u0568\",\"text_title\":\"\\u0555\\u0563\\u057f\\u0561\\u0563\\u0578\\u0580\\u056e\\u0565\\u0584 CTRL + V \\u057a\\u0561\\u057f\\u0573\\u0565\\u0576\\u057e\\u0561\\u056e \\u057f\\u0565\\u0584\\u057d\\u057f\\u056b \\u057f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0574\\u0561\\u0576 \\u0570\\u0561\\u0574\\u0561\\u0580\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/it_dlg.js",
    "content": "tinyMCE.addI18n('it.paste_dlg',{\"word_title\":\"Premere CTRL+V sulla tastiera per incollare il testo nella finestra.\",\"text_linebreaks\":\"Mantieni interruzioni di riga\",\"text_title\":\"Premere CTRL+V sulla tastiera per incollare il testo nella finestra.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/ka_dlg.js",
    "content": "tinyMCE.addI18n('ka.paste_dlg',{\"word_title\":\"\\u0418\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\\u10e1 \\u10e9\\u10d0\\u10e1\\u10d0\\u10e1\\u10db\\u10d4\\u10da\\u10d0\\u10d3 \\u10d2\\u10d0\\u10db\\u10dd\\u10d8\\u10e7\\u10d4\\u10dc\\u10d4\\u10d7 \\u10d9\\u10da\\u10d0\\u10d5\\u10d8\\u10d0\\u10e2\\u10e3\\u10e0\\u10e3\\u10da\\u10d8 \\u10d9\\u10dd\\u10db\\u10d1\\u10d8\\u10dc\\u10d0\\u10ea\\u10d8\\u10d0 CTRL+V.\",\"text_linebreaks\":\"\\u10d2\\u10d0\\u10d3\\u10d0\\u10e2\\u10d0\\u10dc\\u10d8\\u10da\\u10d8 \\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d4\\u10d1\\u10d8\\u10e1 \\u10e8\\u10d4\\u10dc\\u10d0\\u10ee\\u10d5\\u10d0\",\"text_title\":\"\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\\u10e1 \\u10e9\\u10d0\\u10e1\\u10d0\\u10e1\\u10db\\u10d4\\u10da\\u10d0\\u10d3 \\u10d2\\u10d0\\u10db\\u10dd\\u10d8\\u10e7\\u10d4\\u10dc\\u10d4\\u10d7 \\u10d9\\u10da\\u10d0\\u10d5\\u10d8\\u10d0\\u10e2\\u10e3\\u10e0\\u10e3\\u10da\\u10d8 \\u10d9\\u10dd\\u10db\\u10d1\\u10d8\\u10dc\\u10d0\\u10ea\\u10d8\\u10d0 CTRL+V.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/ko_dlg.js",
    "content": "tinyMCE.addI18n('ko.paste_dlg',{\"word_title\":\"\\ud0a4\\ubcf4\\ub4dc\\uc5d0\\uc11c Ctrl-V\\ub97c \\uc0ac\\uc6a9\\ud558\\uba74 \\ud14d\\uc2a4\\ud2b8\\ub97c \\ucc3d\\uc5d0 \\ubd99\\uc5ec\\ub123\\uc744 \\uc218 \\uc788\\uc2b5\\ub2c8\\ub2e4.\",\"text_linebreaks\":\"\\uc904\\ubc14\\uafc8 \\uc720\\uc9c0\",\"text_title\":\"\\ud0a4\\ubcf4\\ub4dc\\uc5d0\\uc11c Ctrl-V\\ub97c \\uc0ac\\uc6a9\\ud558\\uba74 \\ud14d\\uc2a4\\ud2b8\\ub97c \\ucc3d\\uc5d0 \\ubd99\\uc5ec\\ub123\\uc744 \\uc218 \\uc788\\uc2b5\\ub2c8\\ub2e4.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/nb_dlg.js",
    "content": "tinyMCE.addI18n('nb.paste_dlg',{\"word_title\":\"Bruk CTRL+V p\\u00e5 tastaturet for \\u00e5 lime inn i dette vinduet.\",\"text_linebreaks\":\"Behold tekstbryting\",\"text_title\":\"Bruk CTRL+V p\\u00e5 tastaturet for \\u00e5 lime inn i dette vinduet.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/nl_dlg.js",
    "content": "tinyMCE.addI18n('nl.paste_dlg',{word_title:\"Gebruik Ctrl+V om tekst in het venster te plakken.\",text_linebreaks:\"Regelafbreking bewaren\",text_title:\"Gebruik Ctrl+V om tekst in het venster te plakken.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/pl_dlg.js",
    "content": "tinyMCE.addI18n('pl.paste_dlg',{word_title:\"U\\u017cyj CTRL+V na swojej klawiaturze \\u017ceby wklei\\u0107 tekst do okna.\",text_linebreaks:\"Zachowaj ko\\u0144ce linii.\",text_title:\"U\\u017cyj CTRL+V na swojej klawiaturze \\u017ceby wklei\\u0107 tekst do okna.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/pt_dlg.js",
    "content": "tinyMCE.addI18n('pt.paste_dlg',{word_title:\"Use CTRL+V para colar o texto na janela.\",text_linebreaks:\"Manter quebras de linha\",text_title:\"Use CTRL+V para colar o texto na janela.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/ro_dlg.js",
    "content": "tinyMCE.addI18n('ro.paste_dlg',{word_title:\"Folosi\\u0163i CTRL+V pentru a lipi \\u00een aceast\\u0103 zon\\u0103.\",text_linebreaks:\"P\\u0103streaz\\u0103 separatoarele de linii.\",text_title:\"Folosi\\u0163i CTRL+V pentru a lipi \\u00een aceast\\u0103 zon\\u0103.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/ru_dlg.js",
    "content": "tinyMCE.addI18n('ru.paste_dlg',{word_title:\"\\u0418\\u0441\\u043f\\u043e\\u043b\\u044c\\u0437\\u0443\\u0439\\u0442\\u0435 CTRL+V \\u0434\\u043b\\u044f \\u0432\\u0441\\u0442\\u0430\\u0432\\u043a\\u0438 \\u0442\\u0435\\u043a\\u0441\\u0442\\u0430 \\u0432 \\u043e\\u043a\\u043d\\u043e.\",text_linebreaks:\"\\u0421\\u043e\\u0445\\u0440\\u0430\\u043d\\u0438\\u0442\\u044c \\u043f\\u0435\\u0440\\u0435\\u043d\\u043e\\u0441\\u044b \\u0441\\u0442\\u0440\\u043e\\u043a\",text_title:\"\\u0418\\u0441\\u043f\\u043e\\u043b\\u044c\\u0437\\u0443\\u0439\\u0442\\u0435 CTRL+V \\u0434\\u043b\\u044f \\u0432\\u0441\\u0442\\u0430\\u0432\\u043a\\u0438 \\u0442\\u0435\\u043a\\u0441\\u0442\\u0430 \\u0432 \\u043e\\u043a\\u043d\\u043e.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/sr_dlg.js",
    "content": "tinyMCE.addI18n('sr.paste_dlg',{word_title:\"Koristite CTRL+V na tastaturi da zalepite tekst u prozor.\",text_linebreaks:\"Zadr\\u017ei prelome\",text_title:\"Koristite CTRL+V na tastaturi da zalepite tekst u prozor.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/sv_dlg.js",
    "content": "tinyMCE.addI18n('sv.paste_dlg',{\"word_title\":\"Anv\\u00e4nd ctrl-v p\\u00e5 ditt tangentbord f\\u00f6r att klistra in i detta f\\u00f6nster.\",\"text_linebreaks\":\"Spara radbrytningar\",\"text_title\":\"Anv\\u00e4nd ctrl-v p\\u00e5 ditt tangentbord f\\u00f6r att klistra in i detta f\\u00f6nster.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/tr_dlg.js",
    "content": "tinyMCE.addI18n('tr.paste_dlg',{\"word_title\":\"Pencereye metin yap\\u0131\\u015ft\\u0131rmak i\\u00e7in klavyeden CTRL+V i kullan\\u0131n.\",\"text_linebreaks\":\"Sat\\u0131r kesmelerini tut\",\"text_title\":\"Pencereye metin yap\\u0131\\u015ft\\u0131rmak i\\u00e7in klavyeden CTRL+V i kullan\\u0131n.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/uk_dlg.js",
    "content": "tinyMCE.addI18n('uk.paste_dlg',{\"word_title\":\"\\u0412\\u0438\\u043a\\u043e\\u0440\\u0438\\u0441\\u0442\\u043e\\u0432\\u0443\\u0439\\u0442\\u0435 CTRL+V \\u0434\\u043b\\u044f \\u0432\\u0441\\u0442\\u0430\\u0432\\u043a\\u0438 \\u0442\\u0435\\u043a\\u0441\\u0442\\u0443 \\u0443 \\u0432\\u0456\\u043a\\u043d\\u043e.\",\"text_linebreaks\":\"\\u0417\\u0431\\u0435\\u0440\\u0456\\u0433\\u0430\\u0442\\u0438 \\u043f\\u0435\\u0440\\u0435\\u043d\\u043e\\u0441\\u0438 \\u0440\\u044f\\u0434\\u043a\\u0456\\u0432\",\"text_title\":\"\\u0412\\u0438\\u043a\\u043e\\u0440\\u0438\\u0441\\u0442\\u043e\\u0432\\u0443\\u0439\\u0442\\u0435 CTRL+V \\u0434\\u043b\\u044f \\u0432\\u0441\\u0442\\u0430\\u0432\\u043a\\u0438 \\u0442\\u0435\\u043a\\u0441\\u0442\\u0443 \\u0443 \\u0432\\u0456\\u043a\\u043d\\u043e.\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/zh-tw_dlg.js",
    "content": "tinyMCE.addI18n('zh-tw.paste_dlg',{\"word_title\":\"\\u8acb\\u6309\\u9375\\u76e4\\u4e0a\\u7684 Ctrl   C (\\u8907\\u88fd) \\u8cc7\\u6599\\u5230\\u756b\\u9762\\u4e0a\",\"text_linebreaks\":\"\\u4fdd\\u7559\\u6587\\u7ae0\\u4e2d\\u7684\\u63db\\u884c\",\"text_title\":\"\\u8acb\\u6309\\u9375\\u76e4\\u4e0a\\u7684 Ctrl   C (\\u8cbc\\u4e0a) \\u8cc7\\u6599\\u5230\\u756b\\u9762\\u4e0a\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/langs/zh_dlg.js",
    "content": "tinyMCE.addI18n('zh.paste_dlg',{\"word_title\":\"\\u8bf7\\u4f7f\\u7528CTRL V\\u5c06\\u5185\\u5bb9\\u7c98\\u8d34\\u4e0a\\u3002\",\"text_linebreaks\":\"\\u4fdd\\u7559\\u5206\\u884c\\u7b26\",\"text_title\":\"\\u8bf7\\u4f7f\\u7528CTRL V\\u5c06\\u5185\\u5bb9\\u7c98\\u8d34\\u4e0a\\u3002\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/pastetext.htm",
    "content": "<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#paste.paste_text_desc}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/pastetext.js\"></script>\r\n</head>\r\n<body onresize=\"PasteTextDialog.resize();\" style=\"display:none; overflow:hidden;\">\r\n\t<form name=\"source\" onsubmit=\"return PasteTextDialog.insert();\" action=\"#\">\r\n\t\t<div style=\"float: left\" class=\"title\">{#paste.paste_text_desc}</div>\r\n\r\n\t\t<div style=\"float: right\">\r\n\t\t\t<input type=\"checkbox\" name=\"linebreaks\" id=\"linebreaks\" class=\"wordWrapCode\" checked=\"checked\" /><label for=\"linebreaks\">{#paste_dlg.text_linebreaks}</label>\r\n\t\t</div>\r\n\r\n\t\t<br style=\"clear: both\" />\r\n\r\n\t\t<div>{#paste_dlg.text_title}</div>\r\n\r\n\t\t<textarea id=\"content\" name=\"content\" rows=\"15\" cols=\"100\" style=\"width: 100%; height: 100%; font-family: 'Courier New',Courier,mono; font-size: 12px;\" dir=\"ltr\" wrap=\"soft\" class=\"mceFocus\"></textarea>\r\n\r\n\t\t<div class=\"mceActionPanel\">\r\n\t\t\t<input type=\"submit\" name=\"insert\" value=\"{#insert}\" id=\"insert\" />\r\n\t\t\t<input type=\"button\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" id=\"cancel\" />\r\n\t\t</div>\r\n\t</form>\r\n</body> \r\n</html>"
  },
  {
    "path": "newscoop/js/tinymce/plugins/paste/pasteword.htm",
    "content": "<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#paste.paste_word_desc}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/pasteword.js\"></script>\r\n</head>\r\n<body onresize=\"PasteWordDialog.resize();\" style=\"display:none; overflow:hidden;\">\r\n\t<form name=\"source\" onsubmit=\"return PasteWordDialog.insert();\" action=\"#\">\r\n\t\t<div class=\"title\">{#paste.paste_word_desc}</div>\r\n\r\n\t\t<div>{#paste_dlg.word_title}</div>\r\n\r\n\t\t<div id=\"iframecontainer\"></div>\r\n\r\n\t\t<div class=\"mceActionPanel\">\r\n\t\t\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#insert}\" />\r\n\t\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t\t</div>\r\n\t</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/preview/editor_plugin.js",
    "content": "(function(){tinymce.create(\"tinymce.plugins.Preview\",{init:function(a,b){var d=this,c=tinymce.explode(a.settings.content_css);d.editor=a;tinymce.each(c,function(f,e){c[e]=a.documentBaseURI.toAbsolute(f)});a.addCommand(\"mcePreview\",function(){a.windowManager.open({file:a.getParam(\"plugin_preview_pageurl\",b+\"/preview.html\"),width:parseInt(a.getParam(\"plugin_preview_width\",\"550\")),height:parseInt(a.getParam(\"plugin_preview_height\",\"600\")),resizable:\"yes\",scrollbars:\"yes\",popup_css:c?c.join(\",\"):a.baseURI.toAbsolute(\"themes/\"+a.settings.theme+\"/skins/\"+a.settings.skin+\"/content.css\"),inline:a.getParam(\"plugin_preview_inline\",1)},{base:a.documentBaseURI.getURI()})});a.addButton(\"preview\",{title:\"preview.preview_desc\",cmd:\"mcePreview\"})},getInfo:function(){return{longname:\"Preview\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/preview\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}}});tinymce.PluginManager.add(\"preview\",tinymce.plugins.Preview)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/preview/editor_plugin_src.js",
    "content": "/**\n * editor_plugin_src.js\n *\n * Copyright 2009, Moxiecode Systems AB\n * Released under LGPL License.\n *\n * License: http://tinymce.moxiecode.com/license\n * Contributing: http://tinymce.moxiecode.com/contributing\n */\n\n(function() {\n\ttinymce.create('tinymce.plugins.Preview', {\n\t\tinit : function(ed, url) {\n\t\t\tvar t = this, css = tinymce.explode(ed.settings.content_css);\n\n\t\t\tt.editor = ed;\n\n\t\t\t// Force absolute CSS urls\t\n\t\t\ttinymce.each(css, function(u, k) {\n\t\t\t\tcss[k] = ed.documentBaseURI.toAbsolute(u);\n\t\t\t});\n\n\t\t\ted.addCommand('mcePreview', function() {\n\t\t\t\ted.windowManager.open({\n\t\t\t\t\tfile : ed.getParam(\"plugin_preview_pageurl\", url + \"/preview.html\"),\n\t\t\t\t\twidth : parseInt(ed.getParam(\"plugin_preview_width\", \"550\")),\n\t\t\t\t\theight : parseInt(ed.getParam(\"plugin_preview_height\", \"600\")),\n\t\t\t\t\tresizable : \"yes\",\n\t\t\t\t\tscrollbars : \"yes\",\n\t\t\t\t\tpopup_css : css ? css.join(',') : ed.baseURI.toAbsolute(\"themes/\" + ed.settings.theme + \"/skins/\" + ed.settings.skin + \"/content.css\"),\n\t\t\t\t\tinline : ed.getParam(\"plugin_preview_inline\", 1)\n\t\t\t\t}, {\n\t\t\t\t\tbase : ed.documentBaseURI.getURI()\n\t\t\t\t});\n\t\t\t});\n\n\t\t\ted.addButton('preview', {title : 'preview.preview_desc', cmd : 'mcePreview'});\n\t\t},\n\n\t\tgetInfo : function() {\n\t\t\treturn {\n\t\t\t\tlongname : 'Preview',\n\t\t\t\tauthor : 'Moxiecode Systems AB',\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/preview',\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\n\t\t\t};\n\t\t}\n\t});\n\n\t// Register plugin\n\ttinymce.PluginManager.add('preview', tinymce.plugins.Preview);\n})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/preview/example.html",
    "content": "<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n<script language=\"javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n<script type=\"text/javascript\" src=\"jscripts/embed.js\"></script>\r\n<script type=\"text/javascript\">\r\ntinyMCEPopup.onInit.add(function(ed) {\r\n\tvar dom = tinyMCEPopup.dom;\r\n\r\n\t// Load editor content_css\r\n\ttinymce.each(ed.settings.content_css.split(','), function(u) {\r\n\t\tdom.loadCSS(ed.documentBaseURI.toAbsolute(u));\r\n\t});\r\n\r\n\t// Place contents inside div container\r\n\tdom.setHTML('content', ed.getContent());\r\n});\r\n</script>\r\n<title>Example of a custom preview page</title>\r\n</head>\r\n<body>\r\n\r\nEditor contents: <br />\r\n<div id=\"content\">\r\n<!-- Gets filled with editor contents -->\r\n</div>\r\n\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/preview/jscripts/embed.js",
    "content": "/**\r\n * This script contains embed functions for common plugins. This scripts are complety free to use for any purpose.\r\n */\r\n\r\nfunction writeFlash(p) {\r\n\twriteEmbed(\r\n\t\t'D27CDB6E-AE6D-11cf-96B8-444553540000',\r\n\t\t'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0',\r\n\t\t'application/x-shockwave-flash',\r\n\t\tp\r\n\t);\r\n}\r\n\r\nfunction writeShockWave(p) {\r\n\twriteEmbed(\r\n\t'166B1BCA-3F9C-11CF-8075-444553540000',\r\n\t'http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0',\r\n\t'application/x-director',\r\n\t\tp\r\n\t);\r\n}\r\n\r\nfunction writeQuickTime(p) {\r\n\twriteEmbed(\r\n\t\t'02BF25D5-8C17-4B23-BC80-D3488ABDDC6B',\r\n\t\t'http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0',\r\n\t\t'video/quicktime',\r\n\t\tp\r\n\t);\r\n}\r\n\r\nfunction writeRealMedia(p) {\r\n\twriteEmbed(\r\n\t\t'CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA',\r\n\t\t'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0',\r\n\t\t'audio/x-pn-realaudio-plugin',\r\n\t\tp\r\n\t);\r\n}\r\n\r\nfunction writeWindowsMedia(p) {\r\n\tp.url = p.src;\r\n\twriteEmbed(\r\n\t\t'6BF52A52-394A-11D3-B153-00C04F79FAA6',\r\n\t\t'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701',\r\n\t\t'application/x-mplayer2',\r\n\t\tp\r\n\t);\r\n}\r\n\r\nfunction writeEmbed(cls, cb, mt, p) {\r\n\tvar h = '', n;\r\n\r\n\th += '<object classid=\"clsid:' + cls + '\" codebase=\"' + cb + '\"';\r\n\th += typeof(p.id) != \"undefined\" ? 'id=\"' + p.id + '\"' : '';\r\n\th += typeof(p.name) != \"undefined\" ? 'name=\"' + p.name + '\"' : '';\r\n\th += typeof(p.width) != \"undefined\" ? 'width=\"' + p.width + '\"' : '';\r\n\th += typeof(p.height) != \"undefined\" ? 'height=\"' + p.height + '\"' : '';\r\n\th += typeof(p.align) != \"undefined\" ? 'align=\"' + p.align + '\"' : '';\r\n\th += '>';\r\n\r\n\tfor (n in p)\r\n\t\th += '<param name=\"' + n + '\" value=\"' + p[n] + '\">';\r\n\r\n\th += '<embed type=\"' + mt + '\"';\r\n\r\n\tfor (n in p)\r\n\t\th += n + '=\"' + p[n] + '\" ';\r\n\r\n\th += '></embed></object>';\r\n\r\n\tdocument.write(h);\r\n}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/preview/preview.html",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n<script type=\"text/javascript\" src=\"jscripts/embed.js\"></script>\r\n<script type=\"text/javascript\"><!--\r\ndocument.write('<base href=\"' + tinyMCEPopup.getWindowArg(\"base\") + '\">');\r\n// -->\r\n</script>\r\n<title>{#preview.preview_desc}</title>\r\n</head>\r\n<body id=\"content\">\r\n<script type=\"text/javascript\">\r\n\tdocument.write(tinyMCEPopup.editor.getContent());\r\n</script>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/print/editor_plugin.js",
    "content": "(function(){tinymce.create(\"tinymce.plugins.Print\",{init:function(a,b){a.addCommand(\"mcePrint\",function(){a.getWin().print()});a.addButton(\"print\",{title:\"print.print_desc\",cmd:\"mcePrint\"})},getInfo:function(){return{longname:\"Print\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/print\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}}});tinymce.PluginManager.add(\"print\",tinymce.plugins.Print)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/print/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\ttinymce.create('tinymce.plugins.Print', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\ted.addCommand('mcePrint', function() {\r\n\t\t\t\ted.getWin().print();\r\n\t\t\t});\r\n\r\n\t\t\ted.addButton('print', {title : 'print.print_desc', cmd : 'mcePrint'});\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Print',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/print',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('print', tinymce.plugins.Print);\r\n})();\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/save/editor_plugin.js",
    "content": "(function(){tinymce.create(\"tinymce.plugins.Save\",{init:function(a,b){var c=this;c.editor=a;a.addCommand(\"mceSave\",c._save,c);a.addCommand(\"mceCancel\",c._cancel,c);a.addButton(\"save\",{title:\"save.save_desc\",cmd:\"mceSave\"});a.addButton(\"cancel\",{title:\"save.cancel_desc\",cmd:\"mceCancel\"});a.onNodeChange.add(c._nodeChange,c);a.addShortcut(\"ctrl+s\",a.getLang(\"save.save_desc\"),\"mceSave\")},getInfo:function(){return{longname:\"Save\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/save\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}},_nodeChange:function(b,a,c){var b=this.editor;if(b.getParam(\"save_enablewhendirty\")){a.setDisabled(\"save\",!b.isDirty());a.setDisabled(\"cancel\",!b.isDirty())}},_save:function(){var c=this.editor,a,e,d,b;a=tinymce.DOM.get(c.id).form||tinymce.DOM.getParent(c.id,\"form\");if(c.getParam(\"save_enablewhendirty\")&&!c.isDirty()){return}tinyMCE.triggerSave();if(e=c.getParam(\"save_onsavecallback\")){if(c.execCallback(\"save_onsavecallback\",c)){c.startContent=tinymce.trim(c.getContent({format:\"raw\"}));c.nodeChanged()}return}if(a){c.isNotDirty=true;if(a.onsubmit==null||a.onsubmit()!=false){a.submit()}c.nodeChanged()}else{c.windowManager.alert(\"Error: No form element found.\")}},_cancel:function(){var a=this.editor,c,b=tinymce.trim(a.startContent);if(c=a.getParam(\"save_oncancelcallback\")){a.execCallback(\"save_oncancelcallback\",a);return}a.setContent(b);a.undoManager.clear();a.nodeChanged()}});tinymce.PluginManager.add(\"save\",tinymce.plugins.Save)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/save/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\ttinymce.create('tinymce.plugins.Save', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tt.editor = ed;\r\n\r\n\t\t\t// Register commands\r\n\t\t\ted.addCommand('mceSave', t._save, t);\r\n\t\t\ted.addCommand('mceCancel', t._cancel, t);\r\n\r\n\t\t\t// Register buttons\r\n\t\t\ted.addButton('save', {title : 'save.save_desc', cmd : 'mceSave'});\r\n\t\t\ted.addButton('cancel', {title : 'save.cancel_desc', cmd : 'mceCancel'});\r\n\r\n\t\t\ted.onNodeChange.add(t._nodeChange, t);\r\n\t\t\ted.addShortcut('ctrl+s', ed.getLang('save.save_desc'), 'mceSave');\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Save',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/save',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t},\r\n\r\n\t\t// Private methods\r\n\r\n\t\t_nodeChange : function(ed, cm, n) {\r\n\t\t\tvar ed = this.editor;\r\n\r\n\t\t\tif (ed.getParam('save_enablewhendirty')) {\r\n\t\t\t\tcm.setDisabled('save', !ed.isDirty());\r\n\t\t\t\tcm.setDisabled('cancel', !ed.isDirty());\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t// Private methods\r\n\r\n\t\t_save : function() {\r\n\t\t\tvar ed = this.editor, formObj, os, i, elementId;\r\n\r\n\t\t\tformObj = tinymce.DOM.get(ed.id).form || tinymce.DOM.getParent(ed.id, 'form');\r\n\r\n\t\t\tif (ed.getParam(\"save_enablewhendirty\") && !ed.isDirty())\r\n\t\t\t\treturn;\r\n\r\n\t\t\ttinyMCE.triggerSave();\r\n\r\n\t\t\t// Use callback instead\r\n\t\t\tif (os = ed.getParam(\"save_onsavecallback\")) {\r\n\t\t\t\tif (ed.execCallback('save_onsavecallback', ed)) {\r\n\t\t\t\t\ted.startContent = tinymce.trim(ed.getContent({format : 'raw'}));\r\n\t\t\t\t\ted.nodeChanged();\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tif (formObj) {\r\n\t\t\t\ted.isNotDirty = true;\r\n\r\n\t\t\t\tif (formObj.onsubmit == null || formObj.onsubmit() != false)\r\n\t\t\t\t\tformObj.submit();\r\n\r\n\t\t\t\ted.nodeChanged();\r\n\t\t\t} else\r\n\t\t\t\ted.windowManager.alert(\"Error: No form element found.\");\r\n\t\t},\r\n\r\n\t\t_cancel : function() {\r\n\t\t\tvar ed = this.editor, os, h = tinymce.trim(ed.startContent);\r\n\r\n\t\t\t// Use callback instead\r\n\t\t\tif (os = ed.getParam(\"save_oncancelcallback\")) {\r\n\t\t\t\ted.execCallback('save_oncancelcallback', ed);\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\ted.setContent(h);\r\n\t\t\ted.undoManager.clear();\r\n\t\t\ted.nodeChanged();\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('save', tinymce.plugins.Save);\r\n})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/css/searchreplace.css",
    "content": ".panel_wrapper {height:85px;}\r\n.panel_wrapper div.current {height:85px;}\r\n\r\n/* IE */\r\n* html .panel_wrapper {height:100px;}\r\n* html .panel_wrapper div.current {height:100px;}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/editor_plugin.js",
    "content": "(function(){tinymce.create(\"tinymce.plugins.SearchReplacePlugin\",{init:function(a,c){function b(d){window.focus();a.windowManager.open({file:c+\"/searchreplace.htm\",width:420+parseInt(a.getLang(\"searchreplace.delta_width\",0)),height:170+parseInt(a.getLang(\"searchreplace.delta_height\",0)),inline:1,auto_focus:0},{mode:d,search_string:a.selection.getContent({format:\"text\"}),plugin_url:c})}a.addCommand(\"mceSearch\",function(){b(\"search\")});a.addCommand(\"mceReplace\",function(){b(\"replace\")});a.addButton(\"search\",{title:\"searchreplace.search_desc\",cmd:\"mceSearch\"});a.addButton(\"replace\",{title:\"searchreplace.replace_desc\",cmd:\"mceReplace\"});a.addShortcut(\"ctrl+f\",\"searchreplace.search_desc\",\"mceSearch\")},getInfo:function(){return{longname:\"Search/Replace\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/searchreplace\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}}});tinymce.PluginManager.add(\"searchreplace\",tinymce.plugins.SearchReplacePlugin)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\ttinymce.create('tinymce.plugins.SearchReplacePlugin', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\tfunction open(m) {\r\n\t\t\t\t// Keep IE from writing out the f/r character to the editor\r\n\t\t\t\t// instance while initializing a new dialog. See: #3131190\r\n\t\t\t\twindow.focus();\r\n\r\n\t\t\t\ted.windowManager.open({\r\n\t\t\t\t\tfile : url + '/searchreplace.htm',\r\n\t\t\t\t\twidth : 420 + parseInt(ed.getLang('searchreplace.delta_width', 0)),\r\n\t\t\t\t\theight : 170 + parseInt(ed.getLang('searchreplace.delta_height', 0)),\r\n\t\t\t\t\tinline : 1,\r\n\t\t\t\t\tauto_focus : 0\r\n\t\t\t\t}, {\r\n\t\t\t\t\tmode : m,\r\n\t\t\t\t\tsearch_string : ed.selection.getContent({format : 'text'}),\r\n\t\t\t\t\tplugin_url : url\r\n\t\t\t\t});\r\n\t\t\t};\r\n\r\n\t\t\t// Register commands\r\n\t\t\ted.addCommand('mceSearch', function() {\r\n\t\t\t\topen('search');\r\n\t\t\t});\r\n\r\n\t\t\ted.addCommand('mceReplace', function() {\r\n\t\t\t\topen('replace');\r\n\t\t\t});\r\n\r\n\t\t\t// Register buttons\r\n\t\t\ted.addButton('search', {title : 'searchreplace.search_desc', cmd : 'mceSearch'});\r\n\t\t\ted.addButton('replace', {title : 'searchreplace.replace_desc', cmd : 'mceReplace'});\r\n\r\n\t\t\ted.addShortcut('ctrl+f', 'searchreplace.search_desc', 'mceSearch');\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Search/Replace',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/searchreplace',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('searchreplace', tinymce.plugins.SearchReplacePlugin);\r\n})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/js/searchreplace.js",
    "content": "tinyMCEPopup.requireLangPack();\r\n\r\nvar SearchReplaceDialog = {\r\n\tinit : function(ed) {\r\n\t\tvar t = this, f = document.forms[0], m = tinyMCEPopup.getWindowArg(\"mode\");\r\n\r\n\t\tt.switchMode(m);\r\n\r\n\t\tf[m + '_panel_searchstring'].value = tinyMCEPopup.getWindowArg(\"search_string\");\r\n\r\n\t\t// Focus input field\r\n\t\tf[m + '_panel_searchstring'].focus();\r\n\t\t\r\n\t\tmcTabs.onChange.add(function(tab_id, panel_id) {\r\n\t\t\tt.switchMode(tab_id.substring(0, tab_id.indexOf('_')));\r\n\t\t});\r\n\t},\r\n\r\n\tswitchMode : function(m) {\r\n\t\tvar f, lm = this.lastMode;\r\n\r\n\t\tif (lm != m) {\r\n\t\t\tf = document.forms[0];\r\n\r\n\t\t\tif (lm) {\r\n\t\t\t\tf[m + '_panel_searchstring'].value = f[lm + '_panel_searchstring'].value;\r\n\t\t\t\tf[m + '_panel_backwardsu'].checked = f[lm + '_panel_backwardsu'].checked;\r\n\t\t\t\tf[m + '_panel_backwardsd'].checked = f[lm + '_panel_backwardsd'].checked;\r\n\t\t\t\tf[m + '_panel_casesensitivebox'].checked = f[lm + '_panel_casesensitivebox'].checked;\r\n\t\t\t}\r\n\r\n\t\t\tmcTabs.displayTab(m + '_tab',  m + '_panel');\r\n\t\t\tdocument.getElementById(\"replaceBtn\").style.display = (m == \"replace\") ? \"inline\" : \"none\";\r\n\t\t\tdocument.getElementById(\"replaceAllBtn\").style.display = (m == \"replace\") ? \"inline\" : \"none\";\r\n\t\t\tthis.lastMode = m;\r\n\t\t}\r\n\t},\r\n\r\n\tsearchNext : function(a) {\r\n\t\tvar ed = tinyMCEPopup.editor, se = ed.selection, r = se.getRng(), f, m = this.lastMode, s, b, fl = 0, w = ed.getWin(), wm = ed.windowManager, fo = 0;\r\n\r\n\t\t// Get input\r\n\t\tf = document.forms[0];\r\n\t\ts = f[m + '_panel_searchstring'].value;\r\n\t\tb = f[m + '_panel_backwardsu'].checked;\r\n\t\tca = f[m + '_panel_casesensitivebox'].checked;\r\n\t\trs = f['replace_panel_replacestring'].value;\r\n\r\n\t\tif (tinymce.isIE) {\r\n\t\t\tr = ed.getDoc().selection.createRange();\r\n\t\t}\r\n\r\n\t\tif (s == '')\r\n\t\t\treturn;\r\n\r\n\t\tfunction fix() {\r\n\t\t\t// Correct Firefox graphics glitches\r\n\t\t\t// TODO: Verify if this is actually needed any more, maybe it was for very old FF versions? \r\n\t\t\tr = se.getRng().cloneRange();\r\n\t\t\ted.getDoc().execCommand('SelectAll', false, null);\r\n\t\t\tse.setRng(r);\r\n\t\t};\r\n\r\n\t\tfunction replace() {\r\n\t\t\ted.selection.setContent(rs); // Needs to be duplicated due to selection bug in IE\r\n\t\t};\r\n\r\n\t\t// IE flags\r\n\t\tif (ca)\r\n\t\t\tfl = fl | 4;\r\n\r\n\t\tswitch (a) {\r\n\t\t\tcase 'all':\r\n\t\t\t\t// Move caret to beginning of text\r\n\t\t\t\ted.execCommand('SelectAll');\r\n\t\t\t\ted.selection.collapse(true);\r\n\r\n\t\t\t\tif (tinymce.isIE) {\r\n\t\t\t\t\ted.focus();\r\n\t\t\t\t\tr = ed.getDoc().selection.createRange();\r\n\r\n\t\t\t\t\twhile (r.findText(s, b ? -1 : 1, fl)) {\r\n\t\t\t\t\t\tr.scrollIntoView();\r\n\t\t\t\t\t\tr.select();\r\n\t\t\t\t\t\treplace();\r\n\t\t\t\t\t\tfo = 1;\r\n\r\n\t\t\t\t\t\tif (b) {\r\n\t\t\t\t\t\t\tr.moveEnd(\"character\", -(rs.length)); // Otherwise will loop forever\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\ttinyMCEPopup.storeSelection();\r\n\t\t\t\t} else {\r\n\t\t\t\t\twhile (w.find(s, ca, b, false, false, false, false)) {\r\n\t\t\t\t\t\treplace();\r\n\t\t\t\t\t\tfo = 1;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (fo)\r\n\t\t\t\t\ttinyMCEPopup.alert(ed.getLang('searchreplace_dlg.allreplaced'));\r\n\t\t\t\telse\r\n\t\t\t\t\ttinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound'));\r\n\r\n\t\t\t\treturn;\r\n\r\n\t\t\tcase 'current':\r\n\t\t\t\tif (!ed.selection.isCollapsed())\r\n\t\t\t\t\treplace();\r\n\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\r\n\t\tse.collapse(b);\r\n\t\tr = se.getRng();\r\n\r\n\t\t// Whats the point\r\n\t\tif (!s)\r\n\t\t\treturn;\r\n\r\n\t\tif (tinymce.isIE) {\r\n\t\t\ted.focus();\r\n\t\t\tr = ed.getDoc().selection.createRange();\r\n\r\n\t\t\tif (r.findText(s, b ? -1 : 1, fl)) {\r\n\t\t\t\tr.scrollIntoView();\r\n\t\t\t\tr.select();\r\n\t\t\t} else\r\n\t\t\t\ttinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound'));\r\n\r\n\t\t\ttinyMCEPopup.storeSelection();\r\n\t\t} else {\r\n\t\t\tif (!w.find(s, ca, b, false, false, false, false))\r\n\t\t\t\ttinyMCEPopup.alert(ed.getLang('searchreplace_dlg.notfound'));\r\n\t\t\telse\r\n\t\t\t\tfix();\r\n\t\t}\r\n\t}\r\n};\r\n\r\ntinyMCEPopup.onInit.add(SearchReplaceDialog.init, SearchReplaceDialog);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/ar_dlg.js",
    "content": "tinyMCE.addI18n('ar.searchreplace_dlg',{findwhat:\"\\u0627\\u0628\\u062d\\u062b \\u0639\\u0646\",replacewith:\"\\u0627\\u0633\\u062a\\u0628\\u062f\\u0644 \\u0628\",direction:\"\\u0627\\u0644\\u0627\\u062a\\u062c\\u0627\\u0647\\u0627\\u062a\",up:\"\\u0627\\u0644\\u0627\\u0639\\u0644\\u0649\",down:\"\\u0627\\u0644\\u0627\\u0633\\u0641\\u0644\",mcase:\"\\u062d\\u0627\\u0644\\u0647 \\u0627\\u0644\\u062a\\u0637\\u0627\\u0628\\u0642\",findnext:\"\\u0627\\u0628\\u062d\\u062b \\u0639\\u0646 \\u0627\\u0644\\u062a\\u0627\\u0644\\u0649\",allreplaced:\"\\u062a\\u0645\\u062a \\u0639\\u0645\\u0644\\u064a\\u0647 \\u0627\\u0644\\u0627\\u0633\\u062a\\u0628\\u062f\\u0627\\u0644\",searchnext_desc:\"\\u0628\\u062d\\u062b \\u0645\\u0631\\u0647 \\u0627\\u062e\\u0631\\u0649\",notfound:\"\\u0644\\u0642\\u062f \\u0627\\u0646\\u062a\\u0647\\u0649 \\u0627\\u0644\\u0628\\u062d\\u062b \\u0648\\u0644\\u0645 \\u0646\\u0639\\u062b\\u0631 \\u0639\\u0644\\u0649 \\u0627\\u0649 \\u0646\\u062a\\u064a\\u062c\\u0647\",search_title:\"\\u0628\\u062d\\u062b\",replace_title:\"\\u0628\\u062d\\u062b/\\u0627\\u0633\\u062a\\u0628\\u062f\\u0627\\u0644\",replaceall:\"\\u0627\\u0633\\u062a\\u0628\\u062f\\u0627\\u0644 \\u0627\\u0644\\u0643\\u0644\",replace:\"\\u0627\\u0633\\u062a\\u062f\\u0627\\u0644\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/az_dlg.js",
    "content": "tinyMCE.addI18n('az.searchreplace_dlg',{findwhat:\"N\\u0259 axtar\\u0131ls\\u0131n\",replacewith:\"N\\u0259y\\u0259 d\\u0259yi\\u015filsin\",direction:\"\\u0130stiqam\\u0259tl\\u0259ndirm\\u0259\",up:\"Yuxar\\u0131\",down:\"A\\u015fa\\u011f\\u0131\",mcase:\"Registr\\u0131 n\\u0259z\\u0259r\\u0259 al\",findnext:\"Sonrak\\u0131n\\u0131 axtar\",allreplaced:\"B\\u00fct\\u00fcn qar\\u015f\\u0131la\\u015fm\\u0131\\u015f s\\u0259trl\\u0259r d\\u0259yi\\u015fdirildi.\",\"searchnext_desc\":\"S\\u00f6zl\\u0259ri axtar\",notfound:\"Axtar\\u0131\\u015f bitdi. S\\u0259tr tap\\u0131lmad\\u0131.\",\"search_title\":\"Axtar\",\"replace_title\":\"Axtar/D\\u0259yi\\u015f\",replaceall:\"Ham\\u0131s\\u0131n\\u0131 d\\u0259yi\\u015f\",replace:\"D\\u0259yi\\u015f\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/be_dlg.js",
    "content": "tinyMCE.addI18n('be.searchreplace_dlg',{findwhat:\"\\u0428\\u0442\\u043e \\u0437\\u043d\\u0430\\u0439\\u0441\\u0446\\u0456\",replacewith:\"\\u0417\\u0430\\u043c\\u044f\\u043d\\u0456\\u0446\\u044c \\u043d\\u0430\",direction:\"\\u041a\\u0456\\u0440\\u0443\\u043d\\u0430\\u043a\",up:\"\\u0423\\u0432\\u0435\\u0440\\u0445\",down:\"\\u0423\\u043d\\u0456\\u0437\",mcase:\"\\u0423\\u043b\\u0456\\u0447\\u0432\\u0430\\u0446\\u044c \\u0440\\u044d\\u0433\\u0456\\u0441\\u0442\\u0440\",findnext:\"\\u0417\\u043d\\u0430\\u0439\\u0441\\u0446\\u0456 \\u0434\\u0430\\u043b\\u0435\\u0439\",allreplaced:\"\\u0423\\u0441\\u0435 \\u0441\\u0443\\u0441\\u0442\\u0440\\u0430\\u043a\\u0430\\u0435\\u043c\\u044b\\u044f \\u0440\\u0430\\u0434\\u043a\\u0456 \\u0431\\u044b\\u043b\\u0456 \\u0437\\u0430\\u043c\\u0435\\u043d\\u0435\\u043d\\u044b\\u044f.\",\"searchnext_desc\":\"\\u0417\\u043d\\u0430\\u0439\\u0441\\u0446\\u0456 \\u0437\\u043d\\u043e\\u045e\",notfound:\"\\u041f\\u043e\\u0448\\u0443\\u043a \\u0441\\u043a\\u043e\\u043d\\u0447\\u0430\\u043d\\u044b. \\u0420\\u0430\\u0434\\u043e\\u043a \\u043d\\u0435 \\u0437\\u043d\\u043e\\u0439\\u0434\\u0437\\u0435\\u043d\\u044b.\",\"search_title\":\"\\u0417\\u043d\\u0430\\u0439\\u0441\\u0446\\u0456\",\"replace_title\":\"\\u0417\\u043d\\u0430\\u0439\\u0441\\u0446\\u0456/\\u0417\\u0430\\u043c\\u044f\\u043d\\u0456\\u0446\\u044c\",replaceall:\"\\u0417\\u0430\\u043c\\u044f\\u043d\\u0456\\u0446\\u044c \\u0443\\u0441\\u0451\",replace:\"\\u0417\\u0430\\u043c\\u044f\\u043d\\u0456\\u0446\\u044c\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/cs_dlg.js",
    "content": "tinyMCE.addI18n('cs.searchreplace_dlg',{findwhat:\"Co hledat\",replacewith:\"\\u010c\\u00edm nahradit\",direction:\"Sm\\u011br\",up:\"Nahoru\",down:\"Dol\\u016f\",mcase:\"Rozli\\u0161ovat velikost\",findnext:\"Naj\\u00edt dal\\u0161\\u00ed\",allreplaced:\"V\\u0161echny v\\u00fdskyty byly nahrazeny.\",searchnext_desc:\"Naj\\u00edt dal\\u0161\\u00ed\",notfound:\"Hled\\u00e1n\\u00ed bylo dokon\\u010deno. Hledan\\u00fd text nebyl nalezen.\",search_title:\"Naj\\u00edt\",replace_title:\"Naj\\u00edt/nahradit\",replaceall:\"Nahradit v\\u0161e\",replace:\"Nahradit\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/da_dlg.js",
    "content": "tinyMCE.addI18n('da.searchreplace_dlg',{findwhat:\"S\\u00f8g efter\",replacewith:\"Erstat med\",direction:\"Retning\",up:\"Op\",down:\"Ned\",mcase:\"Forskel p\\u00e5 store og sm\\u00e5 bogstaver\",findnext:\"Find n\\u00e6ste\",allreplaced:\"Alle forekomster af s\\u00f8gestrengen er erstattet.\",\"searchnext_desc\":\"S\\u00f8g igen\",notfound:\"S\\u00f8gningen gav intet resultat.\",\"search_title\":\"S\\u00f8g\",\"replace_title\":\"S\\u00f8g / erstat\",replaceall:\"Erstat alle\",replace:\"Erstat\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/de_dlg.js",
    "content": "tinyMCE.addI18n('de.searchreplace_dlg',{findwhat:\"Zu suchender Text\",replacewith:\"Ersetzen durch\",direction:\"Suchrichtung\",up:\"Aufw\\u00e4rts\",down:\"Abw\\u00e4rts\",mcase:\"Gro\\u00df-/Kleinschreibung beachten\",findnext:\"Weitersuchen\",allreplaced:\"Alle Vorkommen der Zeichenkette wurden ersetzt.\",searchnext_desc:\"Weitersuchen\",notfound:\"Die Suche ist am Ende angelangt. Die Zeichenkette konnte nicht gefunden werden.\",search_title:\"Suchen\",replace_title:\"Suchen/Ersetzen\",replaceall:\"Alle ersetzen\",replace:\"Ersetzen\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/el_dlg.js",
    "content": "tinyMCE.addI18n('el.searchreplace_dlg',{findwhat:\"\\u0395\\u03cd\\u03c1\\u03b5\\u03c3\\u03b7 \\u03c4\\u03bf\\u03c5\",replacewith:\"\\u0391\\u03bd\\u03c4\\u03b9\\u03ba\\u03b1\\u03c4\\u03ac\\u03c3\\u03c4\\u03b1\\u03c3\\u03b7 \\u03bc\\u03b5\",direction:\"\\u039a\\u03b1\\u03c4\\u03b5\\u03cd\\u03b8\\u03c5\\u03bd\\u03c3\\u03b7\",up:\"\\u03a0\\u03ac\\u03bd\\u03c9\",down:\"\\u039a\\u03ac\\u03c4\\u03c9\",mcase:\"\\u03a4\\u03b1\\u03af\\u03c1\\u03b9\\u03b1\\u03c3\\u03bc\\u03b1 \\u03ba\\u03b5\\u03c6\\u03b1\\u03bb\\u03b1\\u03af\\u03b1/\\u03bc\\u03b9\\u03ba\\u03c1\\u03ac\",findnext:\"\\u0392\\u03c1\\u03b5\\u03c2 \\u03b5\\u03c0\\u03cc\\u03bc\\u03b5\\u03bd\\u03bf\",allreplaced:\"\\u038c\\u03bb\\u03b5\\u03c2 \\u03bf\\u03b9 \\u03b5\\u03bc\\u03c6\\u03b1\\u03bd\\u03af\\u03c3\\u03b5\\u03b9\\u03c2 \\u03c4\\u03bf\\u03c5 \\u03b6\\u03b7\\u03c4\\u03bf\\u03cd\\u03bc\\u03b5\\u03bd\\u03bf\\u03c5 \\u03ba\\u03b5\\u03b9\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5 \\u03b1\\u03bd\\u03c4\\u03b9\\u03ba\\u03b1\\u03c4\\u03b1\\u03c3\\u03c4\\u03ac\\u03b8\\u03b7\\u03ba\\u03b1\\u03bd.\",\"searchnext_desc\":\"\\u0395\\u03cd\\u03c1\\u03b5\\u03c3\\u03b7 \\u03be\\u03b1\\u03bd\\u03ac\",notfound:\"\\u0397 \\u03b1\\u03bd\\u03b1\\u03b6\\u03ae\\u03c4\\u03b7\\u03c3\\u03b7 \\u03c4\\u03b5\\u03bb\\u03b5\\u03af\\u03c9\\u03c3\\u03b5. \\u03a4\\u03bf \\u03b6\\u03b7\\u03c4\\u03bf\\u03cd\\u03bc\\u03b5\\u03bd\\u03bf \\u03ba\\u03b5\\u03af\\u03bc\\u03b5\\u03bd\\u03bf \\u03b4\\u03b5\\u03bd \\u03b2\\u03c1\\u03ad\\u03b8\\u03b7\\u03ba\\u03b5.\",\"search_title\":\"\\u0395\\u03cd\\u03c1\\u03b5\\u03c3\\u03b7\",\"replace_title\":\"\\u0395\\u03cd\\u03c1\\u03b5\\u03c3\\u03b7/\\u0391\\u03bd\\u03b1\\u03b6\\u03ae\\u03c4\\u03b7\\u03c3\\u03b7\",replaceall:\"\\u0391\\u03bd\\u03c4\\u03b9\\u03ba\\u03b1\\u03c4. \\u03cc\\u03bb\\u03c9\\u03bd\",replace:\"\\u0391\\u03bd\\u03c4\\u03b9\\u03ba\\u03b1\\u03c4\\u03ac\\u03c3\\u03c4\\u03b1\\u03c3\\u03b7\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/en_dlg.js",
    "content": "tinyMCE.addI18n('en.searchreplace_dlg',{findwhat:\"Find What\",replacewith:\"Replace with\",direction:\"Direction\",up:\"Up\",down:\"Down\",mcase:\"Match Case\",findnext:\"Find Next\",allreplaced:\"All occurrences of the search string were replaced.\",\"searchnext_desc\":\"Find Again\",notfound:\"The search has been completed. The search string could not be found.\",\"search_title\":\"Find\",\"replace_title\":\"Find/Replace\",replaceall:\"Replace All\",replace:\"Replace\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/es_dlg.js",
    "content": "tinyMCE.addI18n('es.searchreplace_dlg',{findwhat:\"Qu\\u00e9 buscar\",replacewith:\"Reemplazar por\",direction:\"Direcci\\u00f3n\",up:\"Arriba\",down:\"Abajo\",mcase:\"Min\\u00fas./May\\u00fas.\",findnext:\"Buscar siguiente\",allreplaced:\"Se ha reemplazado el texto.\",searchnext_desc:\"Buscar de nuevo\",notfound:\"La b\\u00fasqueda se ha completado. No se encontr\\u00f3 el texto introducido.\",search_title:\"Buscar\",replace_title:\"Buscar/Reemplazar\",replaceall:\"Reemplazar todo\",replace:\"Reemplazar\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/fr_dlg.js",
    "content": "tinyMCE.addI18n('fr.searchreplace_dlg',{findwhat:\"Rechercher ceci\",replacewith:\"Remplacer par\",direction:\"Direction\",up:\"Vers le haut\",down:\"Vers le bas\",mcase:\"Sensible \\u00e0 la casse\",findnext:\"Rechercher le suivant\",allreplaced:\"Toutes les occurrences de la cha\\u00eene recherch\\u00e9e ont \\u00e9t\\u00e9 remplac\\u00e9es.\",searchnext_desc:\"Suivant\",notfound:\"La recherche est termin\\u00e9e. La cha\\u00eene recherch\\u00e9e n\\'a pas \\u00e9t\\u00e9 trouv\\u00e9e.\",search_title:\"Rechercher\",replace_title:\"Rechercher / remplacer\",replaceall:\"Tout remplacer\",replace:\"Remplacer\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/he_dlg.js",
    "content": "tinyMCE.addI18n('he.searchreplace_dlg',{findwhat:\"\\u05dc\\u05d7\\u05e4\\u05e9 \\u05d0\\u05ea\",replacewith:\"\\u05dc\\u05d4\\u05d7\\u05dc\\u05d9\\u05e3 \\u05d1\",direction:\"\\u05db\\u05d9\\u05d5\\u05d5\\u05df\",up:\"\\u05dc\\u05de\\u05e2\\u05dc\\u05d4\",down:\"\\u05dc\\u05de\\u05d8\\u05d4\",mcase:\"\\u05d4\\u05ea\\u05d0\\u05dd \\u05d0\\u05d5\\u05ea\\u05d9\\u05d5\\u05ea \\u05e8\\u05d9\\u05e9\\u05d9\\u05d5\\u05ea\",findnext:\"\\u05d7\\u05e4\\u05e9 \\u05d0\\u05ea \\u05d4\\u05d1\\u05d0\",allreplaced:\"\\u05db\\u05dc \\u05e4\\u05e8\\u05d9\\u05d8\\u05d9 \\u05d4\\u05d7\\u05d9\\u05e4\\u05d5\\u05e9 \\u05d4\\u05d5\\u05d7\\u05dc\\u05e4\\u05d5\",\"searchnext_desc\":\"\\u05d7\\u05d9\\u05e4\\u05d5\\u05e9 \\u05d4\\u05d1\\u05d0\",notfound:\"\\u05d4\\u05d7\\u05d9\\u05e4\\u05d5\\u05e9 \\u05d4\\u05e1\\u05ea\\u05d9\\u05d9\\u05dd. \\u05e4\\u05e8\\u05d9\\u05d8 \\u05d4\\u05d7\\u05d9\\u05e4\\u05d5\\u05e9 \\u05dc\\u05d0 \\u05e0\\u05de\\u05e6\\u05d0.\",\"search_title\":\"\\u05d7\\u05d9\\u05e4\\u05d5\\u05e9\",\"replace_title\":\"\\u05d7\\u05d9\\u05e4\\u05d5\\u05e9 \\u05d5\\u05d4\\u05d7\\u05dc\\u05e4\\u05d4\",replaceall:\"\\u05d4\\u05d7\\u05dc\\u05e4\\u05ea \\u05d4\\u05db\\u05dc\",replace:\"\\u05d4\\u05d7\\u05dc\\u05e4\\u05d4\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/hr_dlg.js",
    "content": "tinyMCE.addI18n('hr.searchreplace_dlg',{findwhat:\"Prona\\u0111i tekst\",replacewith:\"Zamijeni sa\",direction:\"Smjer\",up:\"Gore\",down:\"Dolje\",mcase:\"Match case\",findnext:\"Prona\\u0111i sljede\\u0107e\",allreplaced:\"Sva pojavljivanja tra\\u017eenog teksta su zamijenjena.\",searchnext_desc:\"Prona\\u0111i opet\",notfound:\"Pretra\\u017eivanje je zavr\\u0161eno. Tra\\u017eeni tekst nije prona\\u0111en.\",search_title:\"Prona\\u0111i\",replace_title:\"Prona\\u0111i/Zamijeni\",replaceall:\"Zamijeni sve\",replace:\"Zamijeni\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/hu_dlg.js",
    "content": "tinyMCE.addI18n('hu.searchreplace_dlg',{findwhat:\"Mit keres\",replacewith:\"Mire cser\\u00e9l\",direction:\"Ir\\u00e1ny\",up:\"Fel\",down:\"Le\",mcase:\"Kis- \\u00e9s nagybet\\u0171k megk\\u00fcl\\u00f6nb\\u00f6ztet\\u00e9se\",findnext:\"K\\u00f6vetkez\\u0151 keres\\u00e9se\",allreplaced:\"A keresett r\\u00e9szsz\\u00f6veg minden el\\u0151fordul\\u00e1sa cser\\u00e9lve lett.\",\"searchnext_desc\":\"Keres\\u00e9s megint\",notfound:\"A keres\\u00e9s v\\u00e9get \\u00e9rt. A keresett sz\\u00f6vegr\\u00e9sz nem tal\\u00e1lhat\\u00f3.\",\"search_title\":\"Keres\\u00e9s\",\"replace_title\":\"Keres\\u00e9s/Csere\",replaceall:\"\\u00d6sszes cser\\u00e9je\",replace:\"Csere\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/hy_dlg.js",
    "content": "tinyMCE.addI18n('hy.searchreplace_dlg',{findwhat:\"\\u0548\\u0580\\u0578\\u0576\\u0565\\u056c\",replacewith:\"\\u0553\\u0578\\u0583\\u0578\\u056d\\u0565\\u056c\",direction:\"\\u0548\\u0582\\u0572\\u0572\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\",up:\"\\u054e\\u0565\\u0580\\u0587 \",down:\"\\u0546\\u0565\\u0580\\u0584\\u0587\",mcase:\"\\u0540\\u0561\\u0577\\u057e\\u056b \\u0561\\u057c\\u0576\\u0565\\u056c \\u057c\\u0565\\u0563\\u056b\\u057d\\u057f\\u0578\\u0580\\u0568\",findnext:\"\\u0533\\u057f\\u0576\\u0565\\u056c \\u0570\\u0561\\u057b\\u0578\\u0580\\u0564\\u0568\",allreplaced:\"\\u0532\\u0578\\u056c\\u0578\\u0580 \\u0563\\u057f\\u0576\\u057e\\u0561\\u056e\\u0576\\u0565\\u0580\\u0568 \\u0583\\u0578\\u0583\\u0578\\u056d\\u057e\\u0565\\u0581\\u056b\\u0576\",\"searchnext_desc\":\"\\u0546\\u0578\\u0580\\u056b\\u0581 \\u0578\\u0580\\u0578\\u0576\\u0565\\u056c\",notfound:\"\\u0548\\u0580\\u0578\\u0576\\u0578\\u0582\\u0574\\u0568 \\u0561\\u057e\\u0561\\u0580\\u057f\\u057e\\u0565\\u0581\\u0589 \\u0548\\u0579\\u056b\\u0576\\u0579 \\u0579\\u056b \\u0563\\u057f\\u0576\\u057e\\u0565\\u056c\",\"search_title\":\"\\u0548\\u0580\\u0578\\u0576\\u0565\\u056c\",\"replace_title\":\"\\u0548\\u0580\\u0578\\u0576\\u0565\\u056c / \\u0553\\u0578\\u0583\\u0578\\u056d\\u0565\\u056c\",replaceall:\"\\u0553\\u0578\\u0583\\u0578\\u056d\\u0565\\u056c \\u0562\\u0561\\u056c\\u0578\\u0580\\u0568\",replace:\"\\u0553\\u0578\\u0583\\u0578\\u056d\\u0565\\u056c\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/it_dlg.js",
    "content": "tinyMCE.addI18n('it.searchreplace_dlg',{findwhat:\"Trova:\",replacewith:\"Sostituisci con:\",direction:\"Direzione\",up:\"Avanti\",down:\"Indietro\",mcase:\"Maiuscole/minuscole\",findnext:\"Trova succ.\",allreplaced:\"Tutte le occorrenze del criterio di ricerca sono state sostituite.\",\"searchnext_desc\":\"Trova successivo\",notfound:\"Ricerca completata. Nessun risultato trovato.\",\"search_title\":\"Trova\",\"replace_title\":\"Trova/Sostituisci\",replaceall:\"Sost. tutto\",replace:\"Sostituisci\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/ka_dlg.js",
    "content": "tinyMCE.addI18n('ka.searchreplace_dlg',{findwhat:\"\\u10eb\\u10d4\\u10d5\\u10dc\\u10d0\",replacewith:\"\\u10e8\\u10d4\\u10ea\\u10d5\\u10da\\u10d0 ..\",direction:\"\\u10db\\u10d8\\u10db\\u10d0\\u10e0\\u10d7\\u10e3\\u10da\\u10d4\\u10d1\\u10d0\",up:\"\\u10d6\\u10d4\\u10db\\u10dd\\u10d7 \",down:\"\\u10e5\\u10d5\\u10d4\\u10db\\u10dd\\u10d7\",mcase:\"\\u10e0\\u10d4\\u10d2\\u10d8\\u10e1\\u10e2\\u10e0\\u10d8\\u10e1 \\u10d2\\u10d0\\u10d7\\u10d5\\u10d0\\u10da\\u10d8\\u10e1\\u10ec\\u10d8\\u10dc\\u10d4\\u10d1\\u10d0\",findnext:\"\\u10d8\\u10de\\u10dd\\u10d5\\u10dc\\u10d4 \\u10e8\\u10d4\\u10db\\u10d3\\u10d4\\u10d2\",allreplaced:\"\\u10e7\\u10d5\\u10d4\\u10da\\u10d0 \\u10db\\u10dc\\u10d8\\u10e8\\u10dc\\u10d4\\u10da\\u10dd\\u10d1\\u10d0 \\u10e8\\u10d4\\u10ea\\u10d5\\u10da\\u10d8\\u10da\\u10d8\\u10d0.\",\"searchnext_desc\":\"\\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d8\\u10d7 \\u10de\\u10dd\\u10d5\\u10dc\\u10d0\",notfound:\"\\u10eb\\u10d4\\u10d1\\u10dc\\u10d0 \\u10d3\\u10d0\\u10e1\\u10e0\\u10e3\\u10da\\u10d4\\u10d1\\u10e3\\u10da\\u10d8\\u10d0. \\u10e8\\u10d4\\u10e1\\u10d0\\u10e2\\u10e7\\u10d5\\u10d8\\u10e1\\u10d1\\u10d8 \\u10d0\\u10e0 \\u10d0\\u10e0\\u10d8\\u10e1 \\u10dc\\u10d0\\u10de\\u10dd\\u10d5\\u10dc\\u10d8.\",\"search_title\":\"\\u10eb\\u10d8\\u10d4\\u10d1\\u10d0\",\"replace_title\":\"\\u10db\\u10dd\\u10eb\\u10d4\\u10d1\\u10dc\\u10d0 \\u10d3\\u10d0 \\u10e8\\u10d4\\u10ea\\u10d5\\u10da\\u10d0\",replaceall:\"\\u10e7\\u10d5\\u10d4\\u10da\\u10d0\\u10e4\\u10d4\\u10e0\\u10d8\\u10e1 \\u10e8\\u10d4\\u10ea\\u10d5\\u10da\\u10d0\",replace:\"\\u10e8\\u10d4\\u10ea\\u10d5\\u10da\\u10d0\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/ko_dlg.js",
    "content": "tinyMCE.addI18n('ko.searchreplace_dlg',{findwhat:\"\\ucc3e\\uc744 \\ub0b4\\uc6a9\",replacewith:\"\\ubc14\\uafc0 \\ub0b4\\uc6a9\",direction:\"\\ubc29\\ud5a5\",up:\"\\uc704\\ub85c\",down:\"\\uc544\\ub798\\ub85c\",mcase:\"\\ub300\\uc18c\\ubb38\\uc790 \\uad6c\\ubcc4\",findnext:\"\\ub2e4\\uc74c \\ucc3e\\uae30\",allreplaced:\"\\uac80\\uc0c9 \\ubb38\\uc790\\uc5f4\\uc744 \\ubaa8\\ub450 \\ucc3e\\uc544 \\ubc14\\uafe8\\uc2b5\\ub2c8\\ub2e4.\",\"searchnext_desc\":\"\\ub2e4\\uc2dc \\ucc3e\\uae30\",notfound:\"\\uac80\\uc0c9\\uc774 \\uc644\\ub8cc\\ub410\\uc2b5\\ub2c8\\ub2e4. \\uac80\\uc0c9 \\ubb38\\uc790\\uc5f4\\uc744 \\ucc3e\\uc744 \\uc218 \\uc5c6\\uc2b5\\ub2c8\\ub2e4.\",\"search_title\":\"\\ucc3e\\uae30\",\"replace_title\":\"\\ucc3e\\uae30/\\ubc14\\uafb8\\uae30\",replaceall:\"\\ubaa8\\ub450 \\ubc14\\uafb8\\uae30\",replace:\"\\ubc14\\uafb8\\uae30\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/nb_dlg.js",
    "content": "tinyMCE.addI18n('nb.searchreplace_dlg',{findwhat:\"Finn hva\",replacewith:\"Erstatt med\",direction:\"Retning\",up:\"Oppover\",down:\"Nedover\",mcase:\"Skill mellom store og sm\\u00e5 tegn\",findnext:\"Finn neste\",allreplaced:\"Alle forekomster av s\\u00f8kestrengen er erstattet.\",\"searchnext_desc\":\"S\\u00f8k igjen\",notfound:\"S\\u00f8ket er avsluttet. Fant ikke s\\u00f8kestrengen.\",\"search_title\":\"S\\u00f8k\",\"replace_title\":\"S\\u00f8k/Erstatt\",replaceall:\"Erstatt alt\",replace:\"Erstatt\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/nl_dlg.js",
    "content": "tinyMCE.addI18n('nl.searchreplace_dlg',{findwhat:\"Zoeken naar\",replacewith:\"Vervangen door\",direction:\"Richting\",up:\"Omhoog\",down:\"Omlaag\",mcase:\"Identieke hoofdletters/kleine letters\",findnext:\"Zoeken\",allreplaced:\"Alle instanties van de zoekterm zijn vervangen.\",searchnext_desc:\"Opnieuw zoeken\",notfound:\"Het doorzoeken is voltooid. De zoekterm kon niet meer worden gevonden.\",search_title:\"Zoeken\",replace_title:\"Zoeken/Vervangen\",replaceall:\"Alles verv.\",replace:\"Vervangen\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/pl_dlg.js",
    "content": "tinyMCE.addI18n('pl.searchreplace_dlg',{findwhat:\"Znajd\\u017a...\",replacewith:\"Zamie\\u0144 z...\",direction:\"Kierunek\",up:\"W g\\u00f3r\\u0119\",down:\"W d\\u00f3\\u0142\",mcase:\"Dopasuj wielko\\u015b\\u0107 liter\",findnext:\"Znajd\\u017a nast\\u0119pny\",allreplaced:\"Wszystkie wyst\\u0105pienia szukanego fragmentu zosta\\u0142y zast\\u0105pione.\",searchnext_desc:\"Znajd\\u017a ponownie\",notfound:\"Wyszukiwanie zako\\u0144czone. Poszukiwany fragment nie zosta\\u0142 znaleziony.\",search_title:\"Znajd\\u017a\",replace_title:\"Znajd\\u017a/Zamie\\u0144\",replaceall:\"Zamien wszystko\",replace:\"Zamie\\u0144\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/pt_dlg.js",
    "content": "tinyMCE.addI18n('pt.searchreplace_dlg',{findwhat:\"Localizar\",replacewith:\"Substituir com\",direction:\"Dire\\u00e7\\u00e3o\",up:\"Acima\",down:\"Abaixo\",mcase:\"Diferenciar mai\\u00fasculas\",findnext:\"Localizar pr\\u00f3ximo\",allreplaced:\"Todas as substitui\\u00e7\\u00f5es foram efetuadas.\",searchnext_desc:\"Localizar novamente\",notfound:\"A pesquisa foi conclu\\u00edda sem resultados.\",search_title:\"Localizar\",replace_title:\"Localizar/substituir\",replaceall:\"Substituir todos\",replace:\"Substituir\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/ro_dlg.js",
    "content": "tinyMCE.addI18n('ro.searchreplace_dlg',{findwhat:\"Termen c\\u0103utat:\",replacewith:\"\\u00cenlocuie\\u015fte cu:\",direction:\"Direc\\u0163ia\",up:\"\\u00cen sus\",down:\"\\u00cen jos\",mcase:\"Conteaz\\u0103 litere mici/mari?\",findnext:\"Caut\\u0103 urm\\u0103torul\",allreplaced:\"Toate instan\\u0163ele termenului c\\u0103utat au fost \\u00eenlocuite.\",searchnext_desc:\"Caut\\u0103 din nou\",notfound:\"C\\u0103utarea a fost terminat\\u0103. Nu am g\\u0103sit termenul c\\u0103utat.\",search_title:\"Caut\\u0103\",replace_title:\"Caut\\u0103/\\u00eenlocuie\\u015fte\",replaceall:\"\\u00cenlocuie\\u015fte toate\",replace:\"\\u00cenlocuie\\u015fte\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/ru_dlg.js",
    "content": "tinyMCE.addI18n('ru.searchreplace_dlg',{findwhat:\"\\u041f\\u043e\\u0438\\u0441\\u043a\",replacewith:\"\\u0417\\u0430\\u043c\\u0435\\u043d\\u0438\\u0442\\u044c \\u043d\\u0430\",direction:\"\\u041d\\u0430\\u043f\\u0440\\u0430\\u0432\\u043b\\u0435\\u043d\\u0438\\u0435\",up:\"\\u0412\\u0432\\u0435\\u0440\\u0445 \",down:\"\\u0412\\u043d\\u0438\\u0437\",mcase:\"\\u0423\\u0447\\u0438\\u0442\\u044b\\u0432\\u0430\\u0442\\u044c \\u0440\\u0435\\u0433\\u0438\\u0441\\u0442\\u0440\",findnext:\"\\u041d\\u0430\\u0439\\u0442\\u0438 \\u0434\\u0430\\u043b\\u0435\\u0435\",allreplaced:\"\\u0412\\u0441\\u0435 \\u0441\\u043e\\u043e\\u0442\\u0432\\u0435\\u0442\\u0441\\u0442\\u0432\\u0438\\u044f \\u043f\\u043e\\u0438\\u0441\\u043a\\u0430 \\u0431\\u044b\\u043b\\u0438 \\u0437\\u0430\\u043c\\u0435\\u043d\\u0435\\u043d\\u044b.\",searchnext_desc:\"\\u041d\\u0430\\u0439\\u0442\\u0438 \\u0435\\u0449\\u0435\",notfound:\"\\u041f\\u043e\\u0438\\u0441\\u043a \\u0437\\u0430\\u0432\\u0435\\u0440\\u0448\\u0435\\u043d. \\u0421\\u043e\\u043e\\u0442\\u0432\\u0435\\u0441\\u0442\\u0432\\u0438\\u0439 \\u043d\\u0435 \\u043d\\u0430\\u0439\\u0434\\u0435\\u043d\\u043e.\",search_title:\"\\u041f\\u043e\\u0438\\u0441\\u043a\",replace_title:\"\\u041f\\u043e\\u0438\\u0441\\u043a \\u0438 \\u0437\\u0430\\u043c\\u0435\\u043d\\u0430\",replaceall:\"\\u0417\\u0430\\u043c\\u0435\\u043d\\u0438\\u0442\\u044c \\u0432\\u0441\\u0435\",replace:\"\\u0417\\u0430\\u043c\\u0435\\u043d\\u0430\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/sr_dlg.js",
    "content": "tinyMCE.addI18n('sr.searchreplace_dlg',{findwhat:\"Prona\\u0111i tekst\",replacewith:\"Zameni sa\",direction:\"Smer\",up:\"Gore\",down:\"Dole\",mcase:\"Slaganje\",findnext:\"Prona\\u0111i slede\\u0107e\",allreplaced:\"Sva pojavljivanja tra\\u017eenog teksta su zamenjena.\",searchnext_desc:\"Prona\\u0111i opet\",notfound:\"Pretra\\u017eivanje je zavr\\u0161eno. Tra\\u017eeni tekst nije prona\\u0111en.\",search_title:\"Prona\\u0111i\",replace_title:\"Prona\\u0111i/Zameni\",replaceall:\"Zameni sve\",replace:\"Zameni\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/sv_dlg.js",
    "content": "tinyMCE.addI18n('sv.searchreplace_dlg',{findwhat:\"Hitta vad\",replacewith:\"Ers\\u00e4tt med\",direction:\"Riktning\",up:\"Upp\\u00e5t\",down:\"Ner\\u00e5t\",mcase:\"Matcha gemener/versaler\",findnext:\"Hitta n\\u00e4sta\",allreplaced:\"Alla st\\u00e4llen d\\u00e4r s\\u00f6kstr\\u00e4ngen kunde hittas har ersatts.\",\"searchnext_desc\":\"S\\u00f6k igen\",notfound:\"S\\u00f6kningen har slutf\\u00f6rts. S\\u00f6kstr\\u00e4ngen kunde inte hittas.\",\"search_title\":\"S\\u00f6k\",\"replace_title\":\"S\\u00f6k/ers\\u00e4tt\",replaceall:\"Ers\\u00e4tt alla\",replace:\"Ers\\u00e4tt\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/tr_dlg.js",
    "content": "tinyMCE.addI18n('tr.searchreplace_dlg',{findwhat:\"Aranan\",replacewith:\"Yeni de\\u011fer\",direction:\"Y\\u00f6n\",up:\"Yukar\\u0131\",down:\"A\\u015fa\\u011f\\u0131\",mcase:\"B\\u00fcy\\u00fck/k\\u00fc\\u00e7\\u00fck duyarl\\u0131\",findnext:\"Sonrakini bul\",allreplaced:\"Aranan metin bulundu\\u011fu yerlede de\\u011fi\\u015ftirildi.\",\"searchnext_desc\":\"Tekrar ara\",notfound:\"Arama tamamland\\u0131. Aranan metin bulunamad\\u0131.\",\"search_title\":\"Bul\",\"replace_title\":\"Bul/De\\u011fi\\u015ftir\",replaceall:\"T\\u00fcm\\u00fcn\\u00fc de\\u011fi\\u015ftir\",replace:\"De\\u011fi\\u015ftir\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/uk_dlg.js",
    "content": "tinyMCE.addI18n('uk.searchreplace_dlg',{findwhat:\"\\u0417\\u043d\\u0430\\u0439\\u0442\\u0438\",replacewith:\"\\u0417\\u0430\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438 \\u043d\\u0430\",direction:\"\\u041d\\u0430\\u043f\\u0440\\u044f\\u043c\\u043e\\u043a \\u043f\\u043e\\u0448\\u0443\\u043a\\u0443\",up:\"\\u0412\\u0433\\u043e\\u0440\\u0443\",down:\"\\u0412\\u043d\\u0438\\u0437\",mcase:\"\\u0412\\u0440\\u0430\\u0445\\u043e\\u0432\\u0443\\u0432\\u0430\\u0442\\u0438 \\u0440\\u0435\\u0454\\u0441\\u0442\\u0440\",findnext:\"\\u0417\\u043d\\u0430\\u0439\\u0442\\u0438 \\u043d\\u0430\\u0441\\u0442\\u0443\\u043f\\u043d\\u0435\",allreplaced:\"\\u0412\\u0441\\u0456 \\u0432\\u0445\\u043e\\u0434\\u0436\\u0435\\u043d\\u043d\\u044f \\u0440\\u044f\\u0434\\u043a\\u0430 \\u0431\\u0443\\u043b\\u0438 \\u0437\\u0430\\u043c\\u0456\\u043d\\u0435\\u043d\\u0456.\",\"searchnext_desc\":\"\\u0417\\u043d\\u0430\\u0439\\u0442\\u0438 \\u0449\\u0435\",notfound:\"\\u041f\\u043e\\u0448\\u0443\\u043a \\u0437\\u0430\\u0432\\u0435\\u0440\\u0448\\u0435\\u043d\\u043e. \\u041f\\u043e\\u0448\\u0443\\u043a\\u043e\\u0432\\u0438\\u0439 \\u0440\\u044f\\u0434\\u043e\\u043a \\u043d\\u0435 \\u0437\\u043d\\u0430\\u0439\\u0434\\u0435\\u043d\\u043e.\",\"search_title\":\"\\u0428\\u0443\\u043a\\u0430\\u0442\\u0438\",\"replace_title\":\"\\u0428\\u0443\\u043a\\u0430\\u0442\\u0438/\\u0417\\u0430\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438\",replaceall:\"\\u0417\\u0430\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438 \\u0432\\u0441\\u0435\",replace:\"\\u0417\\u0430\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/zh-tw_dlg.js",
    "content": "tinyMCE.addI18n('zh-tw.searchreplace_dlg',{findwhat:\"\\u5c0b\\u627e\",replacewith:\"\\u53d6\\u4ee3\\u6210\",direction:\"\\u5c0b\\u627e\\u7684\\u65b9\\u5411\",up:\"\\u5f80\\u4e0a\\u627e\",down:\"\\u5f80\\u4e0b\\u627e\",mcase:\"\\u5927\\u5c0f\\u5beb\\u5340\\u5206\\u958b\\u4f86\",findnext:\"\\u627e\\u4e0b\\u4e00\\u500b\",allreplaced:\"\\u53d6\\u4ee3\\u5b8c\\u6210\",\"searchnext_desc\":\"\\u518d\\u627e\\u4e00\\u6b21\",notfound:\"\\u627e\\u4e0d\\u5230\\u7b26\\u5408\\u7684\\u8cc7\\u6599\",\"search_title\":\"\\u5c0b\\u627e\",\"replace_title\":\"\\u5c0b\\u627e / \\u53d6\\u4ee3\",replaceall:\"\\u5168\\u90e8\\u53d6\\u4ee3\",replace:\"\\u53d6\\u4ee3\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/langs/zh_dlg.js",
    "content": "tinyMCE.addI18n('zh.searchreplace_dlg',{findwhat:\"\\u67e5\\u627e\\u76ee\\u6807\",replacewith:\"\\u66ff\\u6362\\u4e3a\",direction:\"\\u5bfb\\u627e\\u65b9\\u5411\",up:\"\\u5411\\u4e0a\",down:\"\\u5411\\u4e0b\",mcase:\"\\u533a\\u5206\\u5927\\u5c0f\\u5199\",findnext:\"\\u67e5\\u627e\\u4e0b\\u4e00\\u4e2a\",allreplaced:\"\\u6240\\u6709\\u7b26\\u5408\\u7684\\u5b57\\u7b26\\u4e32\\u90fd\\u5df2\\u88ab\\u66ff\\u6362\\u3002\",\"searchnext_desc\":\"\\u7ee7\\u7eed\\u67e5\\u627e\",notfound:\"\\u5b8c\\u6210\\u641c\\u7d22\\uff0c\\u672a\\u627e\\u5230\\u641c\\u7d22\\u9879\\u3002\",\"search_title\":\"\\u67e5\\u627e\",\"replace_title\":\"\\u67e5\\u627e/\\u66ff\\u6362\",replaceall:\"\\u5168\\u90e8\\u66ff\\u6362\",replace:\"\\u66ff\\u6362\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/searchreplace/searchreplace.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#searchreplace_dlg.replace_title}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/form_utils.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/searchreplace.js\"></script>\r\n\t<link rel=\"stylesheet\" type=\"text/css\" href=\"css/searchreplace.css\" />\r\n</head>\r\n<body style=\"display:none;\" role=\"application\" aria-labelledby=\"app_title\">\r\n<span id=\"app_title\" style=\"display:none\">{#searchreplace_dlg.replace_title}</span>\r\n<form onsubmit=\"SearchReplaceDialog.searchNext('none');return false;\" action=\"#\">\r\n\t<div class=\"tabs\">\r\n\t\t<ul>\r\n\t\t\t<li id=\"search_tab\" aria-controls=\"search_panel\"><span><a href=\"javascript:SearchReplaceDialog.switchMode('search');\" onmousedown=\"return false;\">{#searchreplace.search_desc}</a></span></li>\r\n\t\t\t<li id=\"replace_tab\" aria-controls=\"replace_panel\"><span><a href=\"javascript:SearchReplaceDialog.switchMode('replace');\" onmousedown=\"return false;\">{#searchreplace_dlg.replace}</a></span></li>\r\n\t\t</ul>\r\n\t</div>\r\n\r\n\t<div class=\"panel_wrapper\">\r\n\t\t<div id=\"search_panel\" class=\"panel\">\r\n\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"2\">\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td><label for=\"search_panel_searchstring\">{#searchreplace_dlg.findwhat}</label></td>\r\n\t\t\t\t\t<td><input type=\"text\" id=\"search_panel_searchstring\" name=\"search_panel_searchstring\" style=\"width: 200px\" aria-required=\"true\" /></td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"direction\">\r\n\t\t\t\t\t\t\t<tr role=\"group\" aria-labelledby=\"search_panel_backwards_label\">\r\n\t\t\t\t\t\t\t\t<td><label id=\"search_panel_backwards_label\">{#searchreplace_dlg.direction}</label></td>\r\n\t\t\t\t\t\t\t\t<td><input id=\"search_panel_backwardsu\" name=\"search_panel_backwards\" class=\"radio\" type=\"radio\" /></td>\r\n\t\t\t\t\t\t\t\t<td><label for=\"search_panel_backwardsu\">{#searchreplace_dlg.up}</label></td>\r\n\t\t\t\t\t\t\t\t<td><input id=\"search_panel_backwardsd\" name=\"search_panel_backwards\" class=\"radio\" type=\"radio\" checked=\"checked\" /></td>\r\n\t\t\t\t\t\t\t\t<td><label for=\"search_panel_backwardsd\">{#searchreplace_dlg.down}</label></td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t</table>\r\n\t\t\t\t\t</td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<td><input id=\"search_panel_casesensitivebox\" name=\"search_panel_casesensitivebox\" class=\"checkbox\" type=\"checkbox\" /></td>\r\n\t\t\t\t\t\t\t\t<td><label for=\"search_panel_casesensitivebox\">{#searchreplace_dlg.mcase}</label></td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t</table>\r\n\t\t\t\t\t</td>\r\n\t\t\t\t</tr>\r\n\t\t\t</table>\r\n\t\t</div>\r\n\r\n\t\t<div id=\"replace_panel\" class=\"panel\">\r\n\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"2\">\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td><label for=\"replace_panel_searchstring\">{#searchreplace_dlg.findwhat}</label></td>\r\n\t\t\t\t\t<td><input type=\"text\" id=\"replace_panel_searchstring\" name=\"replace_panel_searchstring\" style=\"width: 200px\" aria-required=\"true\" /></td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td><label for=\"replace_panel_replacestring\">{#searchreplace_dlg.replacewith}</label></td>\r\n\t\t\t\t\t<td><input type=\"text\" id=\"replace_panel_replacestring\" name=\"replace_panel_replacestring\" style=\"width: 200px\" aria-required=\"true\" /></td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"direction\">\r\n\t\t\t\t\t\t\t<tr role=\"group\" aria-labelledby=\"replace_panel_dir_label\">\r\n\t\t\t\t\t\t\t\t<td><label id=\"replace_panel_dir_label\">{#searchreplace_dlg.direction}</label></td>\r\n\t\t\t\t\t\t\t\t<td><input id=\"replace_panel_backwardsu\" name=\"replace_panel_backwards\" class=\"radio\" type=\"radio\" /></td>\r\n\t\t\t\t\t\t\t\t<td><label for=\"replace_panel_backwardsu\">{#searchreplace_dlg.up}</label></td>\r\n\t\t\t\t\t\t\t\t<td><input id=\"replace_panel_backwardsd\" name=\"replace_panel_backwards\" class=\"radio\" type=\"radio\" checked=\"checked\" /></td>\r\n\t\t\t\t\t\t\t\t<td><label for=\"replace_panel_backwardsd\">{#searchreplace_dlg.down}</label></td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t</table>\r\n\t\t\t\t\t</td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<td><input id=\"replace_panel_casesensitivebox\" name=\"replace_panel_casesensitivebox\" class=\"checkbox\" type=\"checkbox\" /></td>\r\n\t\t\t\t\t\t\t\t<td><label for=\"replace_panel_casesensitivebox\">{#searchreplace_dlg.mcase}</label></td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t</table>\r\n\t\t\t\t\t</td>\r\n\t\t\t\t</tr>\r\n\t\t\t</table>\r\n\t\t</div>\r\n\r\n\t</div>\r\n\r\n\t<div class=\"mceActionPanel\">\r\n\t\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#searchreplace_dlg.findnext}\" />\r\n\t\t<input type=\"button\" class=\"button\" id=\"replaceBtn\" name=\"replaceBtn\" value=\"{#searchreplace_dlg.replace}\" onclick=\"SearchReplaceDialog.searchNext('current');\" />\r\n\t\t<input type=\"button\" class=\"button\" id=\"replaceAllBtn\" name=\"replaceAllBtn\" value=\"{#searchreplace_dlg.replaceall}\" onclick=\"SearchReplaceDialog.searchNext('all');\" />\r\n\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t</div>\r\n</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/spellchecker/css/content.css",
    "content": ".mceItemHiddenSpellWord {background:url(../img/wline.gif) repeat-x bottom left; cursor:default;}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/spellchecker/editor_plugin.js",
    "content": "(function(){var a=tinymce.util.JSONRequest,c=tinymce.each,b=tinymce.DOM;tinymce.create(\"tinymce.plugins.SpellcheckerPlugin\",{getInfo:function(){return{longname:\"Spellchecker\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/spellchecker\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}},init:function(e,f){var g=this,d;g.url=f;g.editor=e;g.rpcUrl=e.getParam(\"spellchecker_rpc_url\",\"{backend}\");if(g.rpcUrl==\"{backend}\"){if(tinymce.isIE){return}g.hasSupport=true;e.onContextMenu.addToTop(function(h,i){if(g.active){return false}})}e.addCommand(\"mceSpellCheck\",function(){if(g.rpcUrl==\"{backend}\"){g.editor.getBody().spellcheck=g.active=!g.active;return}if(!g.active){e.setProgressState(1);g._sendRPC(\"checkWords\",[g.selectedLang,g._getWords()],function(h){if(h.length>0){g.active=1;g._markWords(h);e.setProgressState(0);e.nodeChanged()}else{e.setProgressState(0);if(e.getParam(\"spellchecker_report_no_misspellings\",true)){e.windowManager.alert(\"spellchecker.no_mpell\")}}})}else{g._done()}});if(e.settings.content_css!==false){e.contentCSS.push(f+\"/css/content.css\")}e.onClick.add(g._showMenu,g);e.onContextMenu.add(g._showMenu,g);e.onBeforeGetContent.add(function(){if(g.active){g._removeWords()}});e.onNodeChange.add(function(i,h){h.setActive(\"spellchecker\",g.active)});e.onSetContent.add(function(){g._done()});e.onBeforeGetContent.add(function(){g._done()});e.onBeforeExecCommand.add(function(h,i){if(i==\"mceFullScreen\"){g._done()}});g.languages={};c(e.getParam(\"spellchecker_languages\",\"+English=en,Danish=da,Dutch=nl,Finnish=fi,French=fr,German=de,Italian=it,Polish=pl,Portuguese=pt,Spanish=es,Swedish=sv\",\"hash\"),function(i,h){if(h.indexOf(\"+\")===0){h=h.substring(1);g.selectedLang=i}g.languages[h]=i})},createControl:function(h,d){var f=this,g,e=f.editor;if(h==\"spellchecker\"){if(f.rpcUrl==\"{backend}\"){if(f.hasSupport){g=d.createButton(h,{title:\"spellchecker.desc\",cmd:\"mceSpellCheck\",scope:f})}return g}g=d.createSplitButton(h,{title:\"spellchecker.desc\",cmd:\"mceSpellCheck\",scope:f});g.onRenderMenu.add(function(j,i){i.add({title:\"spellchecker.langs\",\"class\":\"mceMenuItemTitle\"}).setDisabled(1);c(f.languages,function(n,m){var p={icon:1},l;p.onclick=function(){if(n==f.selectedLang){return}l.setSelected(1);f.selectedItem.setSelected(0);f.selectedItem=l;f.selectedLang=n};p.title=m;l=i.add(p);l.setSelected(n==f.selectedLang);if(n==f.selectedLang){f.selectedItem=l}})});return g}},_walk:function(i,g){var h=this.editor.getDoc(),e;if(h.createTreeWalker){e=h.createTreeWalker(i,NodeFilter.SHOW_TEXT,null,false);while((i=e.nextNode())!=null){g.call(this,i)}}else{tinymce.walk(i,g,\"childNodes\")}},_getSeparators:function(){var e=\"\",d,f=this.editor.getParam(\"spellchecker_word_separator_chars\",'\\\\s!\"#$%&()*+,-./:;<=>?@[]^_{|}\\u201d\\u201c');for(d=0;d<f.length;d++){e+=\"\\\\\"+f.charAt(d)}return e},_getWords:function(){var e=this.editor,g=[],d=\"\",f={},h=[];this._walk(e.getBody(),function(i){if(i.nodeType==3){d+=i.nodeValue+\" \"}});if(e.getParam(\"spellchecker_word_pattern\")){h=d.match(\"(\"+e.getParam(\"spellchecker_word_pattern\")+\")\",\"gi\")}else{d=d.replace(new RegExp(\"([0-9]|[\"+this._getSeparators()+\"])\",\"g\"),\" \");d=tinymce.trim(d.replace(/(\\s+)/g,\" \"));h=d.split(\" \")}c(h,function(i){if(!f[i]){g.push(i);f[i]=1}});return g},_removeWords:function(e){var f=this.editor,h=f.dom,g=f.selection,d=g.getBookmark();c(h.select(\"span\").reverse(),function(i){if(i&&(h.hasClass(i,\"mceItemHiddenSpellWord\")||h.hasClass(i,\"mceItemHidden\"))){if(!e||h.decode(i.innerHTML)==e){h.remove(i,1)}}});g.moveToBookmark(d)},_markWords:function(l){var g=this.editor,f=g.dom,j=g.getDoc(),h=g.selection,i=h.getBookmark(),d=[],k=l.join(\"|\"),m=this._getSeparators(),e=new RegExp(\"(^|[\"+m+\"])(\"+k+\")(?=[\"+m+\"]|$)\",\"g\");this._walk(g.getBody(),function(o){if(o.nodeType==3){d.push(o)}});c(d,function(t){var r,q,o,s,p=t.nodeValue;if(e.test(p)){p=f.encode(p);q=f.create(\"span\",{\"class\":\"mceItemHidden\"});if(tinymce.isIE){p=p.replace(e,\"$1<mcespell>$2</mcespell>\");while((s=p.indexOf(\"<mcespell>\"))!=-1){o=p.substring(0,s);if(o.length){r=j.createTextNode(f.decode(o));q.appendChild(r)}p=p.substring(s+10);s=p.indexOf(\"</mcespell>\");o=p.substring(0,s);p=p.substring(s+11);q.appendChild(f.create(\"span\",{\"class\":\"mceItemHiddenSpellWord\"},o))}if(p.length){r=j.createTextNode(f.decode(p));q.appendChild(r)}}else{q.innerHTML=p.replace(e,'$1<span class=\"mceItemHiddenSpellWord\">$2</span>')}f.replace(q,t)}});h.moveToBookmark(i)},_showMenu:function(h,j){var i=this,h=i.editor,d=i._menu,l,k=h.dom,g=k.getViewPort(h.getWin()),f=j.target;j=0;if(!d){d=h.controlManager.createDropMenu(\"spellcheckermenu\",{\"class\":\"mceNoIcons\"});i._menu=d}if(k.hasClass(f,\"mceItemHiddenSpellWord\")){d.removeAll();d.add({title:\"spellchecker.wait\",\"class\":\"mceMenuItemTitle\"}).setDisabled(1);i._sendRPC(\"getSuggestions\",[i.selectedLang,k.decode(f.innerHTML)],function(m){var e;d.removeAll();if(m.length>0){d.add({title:\"spellchecker.sug\",\"class\":\"mceMenuItemTitle\"}).setDisabled(1);c(m,function(n){d.add({title:n,onclick:function(){k.replace(h.getDoc().createTextNode(n),f);i._checkDone()}})});d.addSeparator()}else{d.add({title:\"spellchecker.no_sug\",\"class\":\"mceMenuItemTitle\"}).setDisabled(1)}if(h.getParam(\"show_ignore_words\",true)){e=i.editor.getParam(\"spellchecker_enable_ignore_rpc\",\"\");d.add({title:\"spellchecker.ignore_word\",onclick:function(){var n=f.innerHTML;k.remove(f,1);i._checkDone();if(e){h.setProgressState(1);i._sendRPC(\"ignoreWord\",[i.selectedLang,n],function(o){h.setProgressState(0)})}}});d.add({title:\"spellchecker.ignore_words\",onclick:function(){var n=f.innerHTML;i._removeWords(k.decode(n));i._checkDone();if(e){h.setProgressState(1);i._sendRPC(\"ignoreWords\",[i.selectedLang,n],function(o){h.setProgressState(0)})}}})}if(i.editor.getParam(\"spellchecker_enable_learn_rpc\")){d.add({title:\"spellchecker.learn_word\",onclick:function(){var n=f.innerHTML;k.remove(f,1);i._checkDone();h.setProgressState(1);i._sendRPC(\"learnWord\",[i.selectedLang,n],function(o){h.setProgressState(0)})}})}d.update()});l=b.getPos(h.getContentAreaContainer());d.settings.offset_x=l.x;d.settings.offset_y=l.y;h.selection.select(f);l=k.getPos(f);d.showMenu(l.x,l.y+f.offsetHeight-g.y);return tinymce.dom.Event.cancel(j)}else{d.hideMenu()}},_checkDone:function(){var e=this,d=e.editor,g=d.dom,f;c(g.select(\"span\"),function(h){if(h&&g.hasClass(h,\"mceItemHiddenSpellWord\")){f=true;return false}});if(!f){e._done()}},_done:function(){var d=this,e=d.active;if(d.active){d.active=0;d._removeWords();if(d._menu){d._menu.hideMenu()}if(e){d.editor.nodeChanged()}}},_sendRPC:function(e,g,d){var f=this;a.sendRPC({url:f.rpcUrl,method:e,params:g,success:d,error:function(i,h){f.editor.setProgressState(0);f.editor.windowManager.alert(i.errstr||(\"Error response: \"+h.responseText))}})}});tinymce.PluginManager.add(\"spellchecker\",tinymce.plugins.SpellcheckerPlugin)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/spellchecker/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\tvar JSONRequest = tinymce.util.JSONRequest, each = tinymce.each, DOM = tinymce.DOM;\r\n\r\n\ttinymce.create('tinymce.plugins.SpellcheckerPlugin', {\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Spellchecker',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/spellchecker',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t},\r\n\r\n\t\tinit : function(ed, url) {\r\n\t\t\tvar t = this, cm;\r\n\r\n\t\t\tt.url = url;\r\n\t\t\tt.editor = ed;\r\n\t\t\tt.rpcUrl = ed.getParam(\"spellchecker_rpc_url\", \"{backend}\");\r\n\r\n\t\t\tif (t.rpcUrl == '{backend}') {\r\n\t\t\t\t// Sniff if the browser supports native spellchecking (Don't know of a better way)\r\n\t\t\t\tif (tinymce.isIE)\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\tt.hasSupport = true;\r\n\r\n\t\t\t\t// Disable the context menu when spellchecking is active\r\n\t\t\t\ted.onContextMenu.addToTop(function(ed, e) {\r\n\t\t\t\t\tif (t.active)\r\n\t\t\t\t\t\treturn false;\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\t// Register commands\r\n\t\t\ted.addCommand('mceSpellCheck', function() {\r\n\t\t\t\tif (t.rpcUrl == '{backend}') {\r\n\t\t\t\t\t// Enable/disable native spellchecker\r\n\t\t\t\t\tt.editor.getBody().spellcheck = t.active = !t.active;\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (!t.active) {\r\n\t\t\t\t\ted.setProgressState(1);\r\n\t\t\t\t\tt._sendRPC('checkWords', [t.selectedLang, t._getWords()], function(r) {\r\n\t\t\t\t\t\tif (r.length > 0) {\r\n\t\t\t\t\t\t\tt.active = 1;\r\n\t\t\t\t\t\t\tt._markWords(r);\r\n\t\t\t\t\t\t\ted.setProgressState(0);\r\n\t\t\t\t\t\t\ted.nodeChanged();\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\ted.setProgressState(0);\r\n\r\n\t\t\t\t\t\t\tif (ed.getParam('spellchecker_report_no_misspellings', true))\r\n\t\t\t\t\t\t\t\ted.windowManager.alert('spellchecker.no_mpell');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t} else\r\n\t\t\t\t\tt._done();\r\n\t\t\t});\r\n\r\n\t\t\tif (ed.settings.content_css !== false)\r\n\t\t\t\ted.contentCSS.push(url + '/css/content.css');\r\n\r\n\t\t\ted.onClick.add(t._showMenu, t);\r\n\t\t\ted.onContextMenu.add(t._showMenu, t);\r\n\t\t\ted.onBeforeGetContent.add(function() {\r\n\t\t\t\tif (t.active)\r\n\t\t\t\t\tt._removeWords();\r\n\t\t\t});\r\n\r\n\t\t\ted.onNodeChange.add(function(ed, cm) {\r\n\t\t\t\tcm.setActive('spellchecker', t.active);\r\n\t\t\t});\r\n\r\n\t\t\ted.onSetContent.add(function() {\r\n\t\t\t\tt._done();\r\n\t\t\t});\r\n\r\n\t\t\ted.onBeforeGetContent.add(function() {\r\n\t\t\t\tt._done();\r\n\t\t\t});\r\n\r\n\t\t\ted.onBeforeExecCommand.add(function(ed, cmd) {\r\n\t\t\t\tif (cmd == 'mceFullScreen')\r\n\t\t\t\t\tt._done();\r\n\t\t\t});\r\n\r\n\t\t\t// Find selected language\r\n\t\t\tt.languages = {};\r\n\t\t\teach(ed.getParam('spellchecker_languages', '+English=en,Danish=da,Dutch=nl,Finnish=fi,French=fr,German=de,Italian=it,Polish=pl,Portuguese=pt,Spanish=es,Swedish=sv', 'hash'), function(v, k) {\r\n\t\t\t\tif (k.indexOf('+') === 0) {\r\n\t\t\t\t\tk = k.substring(1);\r\n\t\t\t\t\tt.selectedLang = v;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tt.languages[k] = v;\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tcreateControl : function(n, cm) {\r\n\t\t\tvar t = this, c, ed = t.editor;\r\n\r\n\t\t\tif (n == 'spellchecker') {\r\n\t\t\t\t// Use basic button if we use the native spellchecker\r\n\t\t\t\tif (t.rpcUrl == '{backend}') {\r\n\t\t\t\t\t// Create simple toggle button if we have native support\r\n\t\t\t\t\tif (t.hasSupport)\r\n\t\t\t\t\t\tc = cm.createButton(n, {title : 'spellchecker.desc', cmd : 'mceSpellCheck', scope : t});\r\n\r\n\t\t\t\t\treturn c;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tc = cm.createSplitButton(n, {title : 'spellchecker.desc', cmd : 'mceSpellCheck', scope : t});\r\n\r\n\t\t\t\tc.onRenderMenu.add(function(c, m) {\r\n\t\t\t\t\tm.add({title : 'spellchecker.langs', 'class' : 'mceMenuItemTitle'}).setDisabled(1);\r\n\t\t\t\t\teach(t.languages, function(v, k) {\r\n\t\t\t\t\t\tvar o = {icon : 1}, mi;\r\n\r\n\t\t\t\t\t\to.onclick = function() {\r\n\t\t\t\t\t\t\tif (v == t.selectedLang) {\r\n\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\tmi.setSelected(1);\r\n\t\t\t\t\t\t\tt.selectedItem.setSelected(0);\r\n\t\t\t\t\t\t\tt.selectedItem = mi;\r\n\t\t\t\t\t\t\tt.selectedLang = v;\r\n\t\t\t\t\t\t};\r\n\r\n\t\t\t\t\t\to.title = k;\r\n\t\t\t\t\t\tmi = m.add(o);\r\n\t\t\t\t\t\tmi.setSelected(v == t.selectedLang);\r\n\r\n\t\t\t\t\t\tif (v == t.selectedLang)\r\n\t\t\t\t\t\t\tt.selectedItem = mi;\r\n\t\t\t\t\t})\r\n\t\t\t\t});\r\n\r\n\t\t\t\treturn c;\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t// Internal functions\r\n\r\n\t\t_walk : function(n, f) {\r\n\t\t\tvar d = this.editor.getDoc(), w;\r\n\r\n\t\t\tif (d.createTreeWalker) {\r\n\t\t\t\tw = d.createTreeWalker(n, NodeFilter.SHOW_TEXT, null, false);\r\n\r\n\t\t\t\twhile ((n = w.nextNode()) != null)\r\n\t\t\t\t\tf.call(this, n);\r\n\t\t\t} else\r\n\t\t\t\ttinymce.walk(n, f, 'childNodes');\r\n\t\t},\r\n\r\n\t\t_getSeparators : function() {\r\n\t\t\tvar re = '', i, str = this.editor.getParam('spellchecker_word_separator_chars', '\\\\s!\"#$%&()*+,-./:;<=>?@[\\]^_{|}\\u201d\\u201c');\r\n\r\n\t\t\t// Build word separator regexp\r\n\t\t\tfor (i=0; i<str.length; i++)\r\n\t\t\t\tre += '\\\\' + str.charAt(i);\r\n\r\n\t\t\treturn re;\r\n\t\t},\r\n\r\n\t\t_getWords : function() {\r\n\t\t\tvar ed = this.editor, wl = [], tx = '', lo = {}, rawWords = [];\r\n\r\n\t\t\t// Get area text\r\n\t\t\tthis._walk(ed.getBody(), function(n) {\r\n\t\t\t\tif (n.nodeType == 3)\r\n\t\t\t\t\ttx += n.nodeValue + ' ';\r\n\t\t\t});\r\n\r\n\t\t\t// split the text up into individual words\r\n\t\t\tif (ed.getParam('spellchecker_word_pattern')) {\r\n\t\t\t\t// look for words that match the pattern\r\n\t\t\t\trawWords = tx.match('(' + ed.getParam('spellchecker_word_pattern') + ')', 'gi');\r\n\t\t\t} else {\r\n\t\t\t\t// Split words by separator\r\n\t\t\t\ttx = tx.replace(new RegExp('([0-9]|[' + this._getSeparators() + '])', 'g'), ' ');\r\n\t\t\t\ttx = tinymce.trim(tx.replace(/(\\s+)/g, ' '));\r\n\t\t\t\trawWords = tx.split(' ');\r\n\t\t\t}\r\n\r\n\t\t\t// Build word array and remove duplicates\r\n\t\t\teach(rawWords, function(v) {\r\n\t\t\t\tif (!lo[v]) {\r\n\t\t\t\t\twl.push(v);\r\n\t\t\t\t\tlo[v] = 1;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\treturn wl;\r\n\t\t},\r\n\r\n\t\t_removeWords : function(w) {\r\n\t\t\tvar ed = this.editor, dom = ed.dom, se = ed.selection, b = se.getBookmark();\r\n\r\n\t\t\teach(dom.select('span').reverse(), function(n) {\r\n\t\t\t\tif (n && (dom.hasClass(n, 'mceItemHiddenSpellWord') || dom.hasClass(n, 'mceItemHidden'))) {\r\n\t\t\t\t\tif (!w || dom.decode(n.innerHTML) == w)\r\n\t\t\t\t\t\tdom.remove(n, 1);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tse.moveToBookmark(b);\r\n\t\t},\r\n\r\n\t\t_markWords : function(wl) {\r\n\t\t\tvar ed = this.editor, dom = ed.dom, doc = ed.getDoc(), se = ed.selection, b = se.getBookmark(), nl = [],\r\n\t\t\t\tw = wl.join('|'), re = this._getSeparators(), rx = new RegExp('(^|[' + re + '])(' + w + ')(?=[' + re + ']|$)', 'g');\r\n\r\n\t\t\t// Collect all text nodes\r\n\t\t\tthis._walk(ed.getBody(), function(n) {\r\n\t\t\t\tif (n.nodeType == 3) {\r\n\t\t\t\t\tnl.push(n);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t// Wrap incorrect words in spans\r\n\t\t\teach(nl, function(n) {\r\n\t\t\t\tvar node, elem, txt, pos, v = n.nodeValue;\r\n\r\n\t\t\t\tif (rx.test(v)) {\r\n\t\t\t\t\t// Encode the content\r\n\t\t\t\t\tv = dom.encode(v);\r\n\t\t\t\t\t// Create container element\r\n\t\t\t\t\telem = dom.create('span', {'class' : 'mceItemHidden'});\r\n\r\n\t\t\t\t\t// Following code fixes IE issues by creating text nodes\r\n\t\t\t\t\t// using DOM methods instead of innerHTML.\r\n\t\t\t\t\t// Bug #3124: <PRE> elements content is broken after spellchecking.\r\n\t\t\t\t\t// Bug #1408: Preceding whitespace characters are removed\r\n\t\t\t\t\t// @TODO: I'm not sure that both are still issues on IE9.\r\n\t\t\t\t\tif (tinymce.isIE) {\r\n\t\t\t\t\t\t// Enclose mispelled words with temporal tag\r\n\t\t\t\t\t\tv = v.replace(rx, '$1<mcespell>$2</mcespell>');\r\n\t\t\t\t\t\t// Loop over the content finding mispelled words\r\n\t\t\t\t\t\twhile ((pos = v.indexOf('<mcespell>')) != -1) {\r\n\t\t\t\t\t\t\t// Add text node for the content before the word\r\n\t\t\t\t\t\t\ttxt = v.substring(0, pos);\r\n\t\t\t\t\t\t\tif (txt.length) {\r\n\t\t\t\t\t\t\t\tnode = doc.createTextNode(dom.decode(txt));\r\n\t\t\t\t\t\t\t\telem.appendChild(node);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\tv = v.substring(pos+10);\r\n\t\t\t\t\t\t\tpos = v.indexOf('</mcespell>');\r\n\t\t\t\t\t\t\ttxt = v.substring(0, pos);\r\n\t\t\t\t\t\t\tv = v.substring(pos+11);\r\n\t\t\t\t\t\t\t// Add span element for the word\r\n\t\t\t\t\t\t\telem.appendChild(dom.create('span', {'class' : 'mceItemHiddenSpellWord'}, txt));\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t// Add text node for the rest of the content\r\n\t\t\t\t\t\tif (v.length) {\r\n\t\t\t\t\t\t\tnode = doc.createTextNode(dom.decode(v));\r\n\t\t\t\t\t\t\telem.appendChild(node);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t// Other browsers preserve whitespace characters on innerHTML usage\r\n\t\t\t\t\t\telem.innerHTML = v.replace(rx, '$1<span class=\"mceItemHiddenSpellWord\">$2</span>');\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Finally, replace the node with the container\r\n\t\t\t\t\tdom.replace(elem, n);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tse.moveToBookmark(b);\r\n\t\t},\r\n\r\n\t\t_showMenu : function(ed, e) {\r\n\t\t\tvar t = this, ed = t.editor, m = t._menu, p1, dom = ed.dom, vp = dom.getViewPort(ed.getWin()), wordSpan = e.target;\r\n\r\n\t\t\te = 0; // Fixes IE memory leak\r\n\r\n\t\t\tif (!m) {\r\n\t\t\t\tm = ed.controlManager.createDropMenu('spellcheckermenu', {'class' : 'mceNoIcons'});\r\n\t\t\t\tt._menu = m;\r\n\t\t\t}\r\n\r\n\t\t\tif (dom.hasClass(wordSpan, 'mceItemHiddenSpellWord')) {\r\n\t\t\t\tm.removeAll();\r\n\t\t\t\tm.add({title : 'spellchecker.wait', 'class' : 'mceMenuItemTitle'}).setDisabled(1);\r\n\r\n\t\t\t\tt._sendRPC('getSuggestions', [t.selectedLang, dom.decode(wordSpan.innerHTML)], function(r) {\r\n\t\t\t\t\tvar ignoreRpc;\r\n\r\n\t\t\t\t\tm.removeAll();\r\n\r\n\t\t\t\t\tif (r.length > 0) {\r\n\t\t\t\t\t\tm.add({title : 'spellchecker.sug', 'class' : 'mceMenuItemTitle'}).setDisabled(1);\r\n\t\t\t\t\t\teach(r, function(v) {\r\n\t\t\t\t\t\t\tm.add({title : v, onclick : function() {\r\n\t\t\t\t\t\t\t\tdom.replace(ed.getDoc().createTextNode(v), wordSpan);\r\n\t\t\t\t\t\t\t\tt._checkDone();\r\n\t\t\t\t\t\t\t}});\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\tm.addSeparator();\r\n\t\t\t\t\t} else\r\n\t\t\t\t\t\tm.add({title : 'spellchecker.no_sug', 'class' : 'mceMenuItemTitle'}).setDisabled(1);\r\n\r\n\t\t\t\t\tif (ed.getParam('show_ignore_words', true)) {\r\n\t\t\t\t\t\tignoreRpc = t.editor.getParam(\"spellchecker_enable_ignore_rpc\", '');\r\n\t\t\t\t\t\tm.add({\r\n\t\t\t\t\t\t\ttitle : 'spellchecker.ignore_word',\r\n\t\t\t\t\t\t\tonclick : function() {\r\n\t\t\t\t\t\t\t\tvar word = wordSpan.innerHTML;\r\n\r\n\t\t\t\t\t\t\t\tdom.remove(wordSpan, 1);\r\n\t\t\t\t\t\t\t\tt._checkDone();\r\n\r\n\t\t\t\t\t\t\t\t// tell the server if we need to\r\n\t\t\t\t\t\t\t\tif (ignoreRpc) {\r\n\t\t\t\t\t\t\t\t\ted.setProgressState(1);\r\n\t\t\t\t\t\t\t\t\tt._sendRPC('ignoreWord', [t.selectedLang, word], function(r) {\r\n\t\t\t\t\t\t\t\t\t\ted.setProgressState(0);\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\tm.add({\r\n\t\t\t\t\t\t\ttitle : 'spellchecker.ignore_words',\r\n\t\t\t\t\t\t\tonclick : function() {\r\n\t\t\t\t\t\t\t\tvar word = wordSpan.innerHTML;\r\n\r\n\t\t\t\t\t\t\t\tt._removeWords(dom.decode(word));\r\n\t\t\t\t\t\t\t\tt._checkDone();\r\n\r\n\t\t\t\t\t\t\t\t// tell the server if we need to\r\n\t\t\t\t\t\t\t\tif (ignoreRpc) {\r\n\t\t\t\t\t\t\t\t\ted.setProgressState(1);\r\n\t\t\t\t\t\t\t\t\tt._sendRPC('ignoreWords', [t.selectedLang, word], function(r) {\r\n\t\t\t\t\t\t\t\t\t\ted.setProgressState(0);\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (t.editor.getParam(\"spellchecker_enable_learn_rpc\")) {\r\n\t\t\t\t\t\tm.add({\r\n\t\t\t\t\t\t\ttitle : 'spellchecker.learn_word',\r\n\t\t\t\t\t\t\tonclick : function() {\r\n\t\t\t\t\t\t\t\tvar word = wordSpan.innerHTML;\r\n\r\n\t\t\t\t\t\t\t\tdom.remove(wordSpan, 1);\r\n\t\t\t\t\t\t\t\tt._checkDone();\r\n\r\n\t\t\t\t\t\t\t\ted.setProgressState(1);\r\n\t\t\t\t\t\t\t\tt._sendRPC('learnWord', [t.selectedLang, word], function(r) {\r\n\t\t\t\t\t\t\t\t\ted.setProgressState(0);\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tm.update();\r\n\t\t\t\t});\r\n\r\n\t\t\t\tp1 = DOM.getPos(ed.getContentAreaContainer());\r\n\t\t\t\tm.settings.offset_x = p1.x;\r\n\t\t\t\tm.settings.offset_y = p1.y;\r\n\r\n\t\t\t\ted.selection.select(wordSpan);\r\n\t\t\t\tp1 = dom.getPos(wordSpan);\r\n\t\t\t\tm.showMenu(p1.x, p1.y + wordSpan.offsetHeight - vp.y);\r\n\r\n\t\t\t\treturn tinymce.dom.Event.cancel(e);\r\n\t\t\t} else\r\n\t\t\t\tm.hideMenu();\r\n\t\t},\r\n\r\n\t\t_checkDone : function() {\r\n\t\t\tvar t = this, ed = t.editor, dom = ed.dom, o;\r\n\r\n\t\t\teach(dom.select('span'), function(n) {\r\n\t\t\t\tif (n && dom.hasClass(n, 'mceItemHiddenSpellWord')) {\r\n\t\t\t\t\to = true;\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tif (!o)\r\n\t\t\t\tt._done();\r\n\t\t},\r\n\r\n\t\t_done : function() {\r\n\t\t\tvar t = this, la = t.active;\r\n\r\n\t\t\tif (t.active) {\r\n\t\t\t\tt.active = 0;\r\n\t\t\t\tt._removeWords();\r\n\r\n\t\t\t\tif (t._menu)\r\n\t\t\t\t\tt._menu.hideMenu();\r\n\r\n\t\t\t\tif (la)\r\n\t\t\t\t\tt.editor.nodeChanged();\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t_sendRPC : function(m, p, cb) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tJSONRequest.sendRPC({\r\n\t\t\t\turl : t.rpcUrl,\r\n\t\t\t\tmethod : m,\r\n\t\t\t\tparams : p,\r\n\t\t\t\tsuccess : cb,\r\n\t\t\t\terror : function(e, x) {\r\n\t\t\t\t\tt.editor.setProgressState(0);\r\n\t\t\t\t\tt.editor.windowManager.alert(e.errstr || ('Error response: ' + x.responseText));\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('spellchecker', tinymce.plugins.SpellcheckerPlugin);\r\n})();\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/css/props.css",
    "content": "#text_font {width:250px;}\r\n#text_size {width:70px;}\r\n.mceAddSelectValue {background:#DDD;}\r\nselect, #block_text_indent, #box_width, #box_height, #box_padding_top, #box_padding_right, #box_padding_bottom, #box_padding_left {width:70px;}\r\n#box_margin_top, #box_margin_right, #box_margin_bottom, #box_margin_left, #positioning_width, #positioning_height, #positioning_zindex {width:70px;}\r\n#positioning_placement_top, #positioning_placement_right, #positioning_placement_bottom, #positioning_placement_left {width:70px;}\r\n#positioning_clip_top, #positioning_clip_right, #positioning_clip_bottom, #positioning_clip_left {width:70px;}\r\n.panel_wrapper div.current {padding-top:10px;height:230px;}\r\n.delim {border-left:1px solid gray;}\r\n.tdelim {border-bottom:1px solid gray;}\r\n#block_display {width:145px;}\r\n#list_type {width:115px;}\r\n.disabled {background:#EEE;}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/editor_plugin.js",
    "content": "(function(){tinymce.create(\"tinymce.plugins.StylePlugin\",{init:function(a,b){a.addCommand(\"mceStyleProps\",function(){a.windowManager.open({file:b+\"/props.htm\",width:480+parseInt(a.getLang(\"style.delta_width\",0)),height:320+parseInt(a.getLang(\"style.delta_height\",0)),inline:1},{plugin_url:b,style_text:a.selection.getNode().style.cssText})});a.addCommand(\"mceSetElementStyle\",function(d,c){if(e=a.selection.getNode()){a.dom.setAttrib(e,\"style\",c);a.execCommand(\"mceRepaint\")}});a.onNodeChange.add(function(d,c,f){c.setDisabled(\"styleprops\",f.nodeName===\"BODY\")});a.addButton(\"styleprops\",{title:\"style.desc\",cmd:\"mceStyleProps\"})},getInfo:function(){return{longname:\"Style\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/style\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}}});tinymce.PluginManager.add(\"style\",tinymce.plugins.StylePlugin)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\ttinymce.create('tinymce.plugins.StylePlugin', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\t// Register commands\r\n\t\t\ted.addCommand('mceStyleProps', function() {\r\n\t\t\t\ted.windowManager.open({\r\n\t\t\t\t\tfile : url + '/props.htm',\r\n\t\t\t\t\twidth : 480 + parseInt(ed.getLang('style.delta_width', 0)),\r\n\t\t\t\t\theight : 320 + parseInt(ed.getLang('style.delta_height', 0)),\r\n\t\t\t\t\tinline : 1\r\n\t\t\t\t}, {\r\n\t\t\t\t\tplugin_url : url,\r\n\t\t\t\t\tstyle_text : ed.selection.getNode().style.cssText\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\ted.addCommand('mceSetElementStyle', function(ui, v) {\r\n\t\t\t\tif (e = ed.selection.getNode()) {\r\n\t\t\t\t\ted.dom.setAttrib(e, 'style', v);\r\n\t\t\t\t\ted.execCommand('mceRepaint');\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\ted.onNodeChange.add(function(ed, cm, n) {\r\n\t\t\t\tcm.setDisabled('styleprops', n.nodeName === 'BODY');\r\n\t\t\t});\r\n\r\n\t\t\t// Register buttons\r\n\t\t\ted.addButton('styleprops', {title : 'style.desc', cmd : 'mceStyleProps'});\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Style',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/style',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('style', tinymce.plugins.StylePlugin);\r\n})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/js/props.js",
    "content": "tinyMCEPopup.requireLangPack();\r\n\r\nvar defaultFonts = \"\" + \r\n\t\"Arial, Helvetica, sans-serif=Arial, Helvetica, sans-serif;\" + \r\n\t\"Times New Roman, Times, serif=Times New Roman, Times, serif;\" + \r\n\t\"Courier New, Courier, mono=Courier New, Courier, mono;\" + \r\n\t\"Times New Roman, Times, serif=Times New Roman, Times, serif;\" + \r\n\t\"Georgia, Times New Roman, Times, serif=Georgia, Times New Roman, Times, serif;\" + \r\n\t\"Verdana, Arial, Helvetica, sans-serif=Verdana, Arial, Helvetica, sans-serif;\" + \r\n\t\"Geneva, Arial, Helvetica, sans-serif=Geneva, Arial, Helvetica, sans-serif\";\r\n\r\nvar defaultSizes = \"9;10;12;14;16;18;24;xx-small;x-small;small;medium;large;x-large;xx-large;smaller;larger\";\r\nvar defaultMeasurement = \"+pixels=px;points=pt;inches=in;centimetres=cm;millimetres=mm;picas=pc;ems=em;exs=ex;%\";\r\nvar defaultSpacingMeasurement = \"pixels=px;points=pt;inches=in;centimetres=cm;millimetres=mm;picas=pc;+ems=em;exs=ex;%\";\r\nvar defaultIndentMeasurement = \"pixels=px;+points=pt;inches=in;centimetres=cm;millimetres=mm;picas=pc;ems=em;exs=ex;%\";\r\nvar defaultWeight = \"normal;bold;bolder;lighter;100;200;300;400;500;600;700;800;900\";\r\nvar defaultTextStyle = \"normal;italic;oblique\";\r\nvar defaultVariant = \"normal;small-caps\";\r\nvar defaultLineHeight = \"normal\";\r\nvar defaultAttachment = \"fixed;scroll\";\r\nvar defaultRepeat = \"no-repeat;repeat;repeat-x;repeat-y\";\r\nvar defaultPosH = \"left;center;right\";\r\nvar defaultPosV = \"top;center;bottom\";\r\nvar defaultVAlign = \"baseline;sub;super;top;text-top;middle;bottom;text-bottom\";\r\nvar defaultDisplay = \"inline;block;list-item;run-in;compact;marker;table;inline-table;table-row-group;table-header-group;table-footer-group;table-row;table-column-group;table-column;table-cell;table-caption;none\";\r\nvar defaultBorderStyle = \"none;solid;dashed;dotted;double;groove;ridge;inset;outset\";\r\nvar defaultBorderWidth = \"thin;medium;thick\";\r\nvar defaultListType = \"disc;circle;square;decimal;lower-roman;upper-roman;lower-alpha;upper-alpha;none\";\r\n\r\nfunction init() {\r\n\tvar ce = document.getElementById('container'), h;\r\n\r\n\tce.style.cssText = tinyMCEPopup.getWindowArg('style_text');\r\n\r\n\th = getBrowserHTML('background_image_browser','background_image','image','advimage');\r\n\tdocument.getElementById(\"background_image_browser\").innerHTML = h;\r\n\r\n\tdocument.getElementById('text_color_pickcontainer').innerHTML = getColorPickerHTML('text_color_pick','text_color');\r\n\tdocument.getElementById('background_color_pickcontainer').innerHTML = getColorPickerHTML('background_color_pick','background_color');\r\n\tdocument.getElementById('border_color_top_pickcontainer').innerHTML = getColorPickerHTML('border_color_top_pick','border_color_top');\r\n\tdocument.getElementById('border_color_right_pickcontainer').innerHTML = getColorPickerHTML('border_color_right_pick','border_color_right');\r\n\tdocument.getElementById('border_color_bottom_pickcontainer').innerHTML = getColorPickerHTML('border_color_bottom_pick','border_color_bottom');\r\n\tdocument.getElementById('border_color_left_pickcontainer').innerHTML = getColorPickerHTML('border_color_left_pick','border_color_left');\r\n\r\n\tfillSelect(0, 'text_font', 'style_font', defaultFonts, ';', true);\r\n\tfillSelect(0, 'text_size', 'style_font_size', defaultSizes, ';', true);\r\n\tfillSelect(0, 'text_size_measurement', 'style_font_size_measurement', defaultMeasurement, ';', true);\r\n\tfillSelect(0, 'text_case', 'style_text_case', \"capitalize;uppercase;lowercase\", ';', true);\r\n\tfillSelect(0, 'text_weight', 'style_font_weight', defaultWeight, ';', true);\r\n\tfillSelect(0, 'text_style', 'style_font_style', defaultTextStyle, ';', true);\r\n\tfillSelect(0, 'text_variant', 'style_font_variant', defaultVariant, ';', true);\r\n\tfillSelect(0, 'text_lineheight', 'style_font_line_height', defaultLineHeight, ';', true);\r\n\tfillSelect(0, 'text_lineheight_measurement', 'style_font_line_height_measurement', defaultMeasurement, ';', true);\r\n\r\n\tfillSelect(0, 'background_attachment', 'style_background_attachment', defaultAttachment, ';', true);\r\n\tfillSelect(0, 'background_repeat', 'style_background_repeat', defaultRepeat, ';', true);\r\n\r\n\tfillSelect(0, 'background_hpos_measurement', 'style_background_hpos_measurement', defaultMeasurement, ';', true);\r\n\tfillSelect(0, 'background_vpos_measurement', 'style_background_vpos_measurement', defaultMeasurement, ';', true);\r\n\r\n\tfillSelect(0, 'background_hpos', 'style_background_hpos', defaultPosH, ';', true);\r\n\tfillSelect(0, 'background_vpos', 'style_background_vpos', defaultPosV, ';', true);\r\n\r\n\tfillSelect(0, 'block_wordspacing', 'style_wordspacing', 'normal', ';', true);\r\n\tfillSelect(0, 'block_wordspacing_measurement', 'style_wordspacing_measurement', defaultSpacingMeasurement, ';', true);\r\n\tfillSelect(0, 'block_letterspacing', 'style_letterspacing', 'normal', ';', true);\r\n\tfillSelect(0, 'block_letterspacing_measurement', 'style_letterspacing_measurement', defaultSpacingMeasurement, ';', true);\r\n\tfillSelect(0, 'block_vertical_alignment', 'style_vertical_alignment', defaultVAlign, ';', true);\r\n\tfillSelect(0, 'block_text_align', 'style_text_align', \"left;right;center;justify\", ';', true);\r\n\tfillSelect(0, 'block_whitespace', 'style_whitespace', \"normal;pre;nowrap\", ';', true);\r\n\tfillSelect(0, 'block_display', 'style_display', defaultDisplay, ';', true);\r\n\tfillSelect(0, 'block_text_indent_measurement', 'style_text_indent_measurement', defaultIndentMeasurement, ';', true);\r\n\r\n\tfillSelect(0, 'box_width_measurement', 'style_box_width_measurement', defaultMeasurement, ';', true);\r\n\tfillSelect(0, 'box_height_measurement', 'style_box_height_measurement', defaultMeasurement, ';', true);\r\n\tfillSelect(0, 'box_float', 'style_float', 'left;right;none', ';', true);\r\n\tfillSelect(0, 'box_clear', 'style_clear', 'left;right;both;none', ';', true);\r\n\tfillSelect(0, 'box_padding_left_measurement', 'style_padding_left_measurement', defaultMeasurement, ';', true);\r\n\tfillSelect(0, 'box_padding_top_measurement', 'style_padding_top_measurement', defaultMeasurement, ';', true);\r\n\tfillSelect(0, 'box_padding_bottom_measurement', 'style_padding_bottom_measurement', defaultMeasurement, ';', true);\r\n\tfillSelect(0, 'box_padding_right_measurement', 'style_padding_right_measurement', defaultMeasurement, ';', true);\r\n\tfillSelect(0, 'box_margin_left_measurement', 'style_margin_left_measurement', defaultMeasurement, ';', true);\r\n\tfillSelect(0, 'box_margin_top_measurement', 'style_margin_top_measurement', defaultMeasurement, ';', true);\r\n\tfillSelect(0, 'box_margin_bottom_measurement', 'style_margin_bottom_measurement', defaultMeasurement, ';', true);\r\n\tfillSelect(0, 'box_margin_right_measurement', 'style_margin_right_measurement', defaultMeasurement, ';', true);\r\n\r\n\tfillSelect(0, 'border_style_top', 'style_border_style_top', defaultBorderStyle, ';', true);\r\n\tfillSelect(0, 'border_style_right', 'style_border_style_right', defaultBorderStyle, ';', true);\r\n\tfillSelect(0, 'border_style_bottom', 'style_border_style_bottom', defaultBorderStyle, ';', true);\r\n\tfillSelect(0, 'border_style_left', 'style_border_style_left', defaultBorderStyle, ';', true);\r\n\r\n\tfillSelect(0, 'border_width_top', 'style_border_width_top', defaultBorderWidth, ';', true);\r\n\tfillSelect(0, 'border_width_right', 'style_border_width_right', defaultBorderWidth, ';', true);\r\n\tfillSelect(0, 'border_width_bottom', 'style_border_width_bottom', defaultBorderWidth, ';', true);\r\n\tfillSelect(0, 'border_width_left', 'style_border_width_left', defaultBorderWidth, ';', true);\r\n\r\n\tfillSelect(0, 'border_width_top_measurement', 'style_border_width_top_measurement', defaultMeasurement, ';', true);\r\n\tfillSelect(0, 'border_width_right_measurement', 'style_border_width_right_measurement', defaultMeasurement, ';', true);\r\n\tfillSelect(0, 'border_width_bottom_measurement', 'style_border_width_bottom_measurement', defaultMeasurement, ';', true);\r\n\tfillSelect(0, 'border_width_left_measurement', 'style_border_width_left_measurement', defaultMeasurement, ';', true);\r\n\r\n\tfillSelect(0, 'list_type', 'style_list_type', defaultListType, ';', true);\r\n\tfillSelect(0, 'list_position', 'style_list_position', \"inside;outside\", ';', true);\r\n\r\n\tfillSelect(0, 'positioning_type', 'style_positioning_type', \"absolute;relative;static\", ';', true);\r\n\tfillSelect(0, 'positioning_visibility', 'style_positioning_visibility', \"inherit;visible;hidden\", ';', true);\r\n\r\n\tfillSelect(0, 'positioning_width_measurement', 'style_positioning_width_measurement', defaultMeasurement, ';', true);\r\n\tfillSelect(0, 'positioning_height_measurement', 'style_positioning_height_measurement', defaultMeasurement, ';', true);\r\n\tfillSelect(0, 'positioning_overflow', 'style_positioning_overflow', \"visible;hidden;scroll;auto\", ';', true);\r\n\r\n\tfillSelect(0, 'positioning_placement_top_measurement', 'style_positioning_placement_top_measurement', defaultMeasurement, ';', true);\r\n\tfillSelect(0, 'positioning_placement_right_measurement', 'style_positioning_placement_right_measurement', defaultMeasurement, ';', true);\r\n\tfillSelect(0, 'positioning_placement_bottom_measurement', 'style_positioning_placement_bottom_measurement', defaultMeasurement, ';', true);\r\n\tfillSelect(0, 'positioning_placement_left_measurement', 'style_positioning_placement_left_measurement', defaultMeasurement, ';', true);\r\n\r\n\tfillSelect(0, 'positioning_clip_top_measurement', 'style_positioning_clip_top_measurement', defaultMeasurement, ';', true);\r\n\tfillSelect(0, 'positioning_clip_right_measurement', 'style_positioning_clip_right_measurement', defaultMeasurement, ';', true);\r\n\tfillSelect(0, 'positioning_clip_bottom_measurement', 'style_positioning_clip_bottom_measurement', defaultMeasurement, ';', true);\r\n\tfillSelect(0, 'positioning_clip_left_measurement', 'style_positioning_clip_left_measurement', defaultMeasurement, ';', true);\r\n\r\n\tTinyMCE_EditableSelects.init();\r\n\tsetupFormData();\r\n\tshowDisabledControls();\r\n}\r\n\r\nfunction setupFormData() {\r\n\tvar ce = document.getElementById('container'), f = document.forms[0], s, b, i;\r\n\r\n\t// Setup text fields\r\n\r\n\tselectByValue(f, 'text_font', ce.style.fontFamily, true, true);\r\n\tselectByValue(f, 'text_size', getNum(ce.style.fontSize), true, true);\r\n\tselectByValue(f, 'text_size_measurement', getMeasurement(ce.style.fontSize));\r\n\tselectByValue(f, 'text_weight', ce.style.fontWeight, true, true);\r\n\tselectByValue(f, 'text_style', ce.style.fontStyle, true, true);\r\n\tselectByValue(f, 'text_lineheight', getNum(ce.style.lineHeight), true, true);\r\n\tselectByValue(f, 'text_lineheight_measurement', getMeasurement(ce.style.lineHeight));\r\n\tselectByValue(f, 'text_case', ce.style.textTransform, true, true);\r\n\tselectByValue(f, 'text_variant', ce.style.fontVariant, true, true);\r\n\tf.text_color.value = tinyMCEPopup.editor.dom.toHex(ce.style.color);\r\n\tupdateColor('text_color_pick', 'text_color');\r\n\tf.text_underline.checked = inStr(ce.style.textDecoration, 'underline');\r\n\tf.text_overline.checked = inStr(ce.style.textDecoration, 'overline');\r\n\tf.text_linethrough.checked = inStr(ce.style.textDecoration, 'line-through');\r\n\tf.text_blink.checked = inStr(ce.style.textDecoration, 'blink');\r\n\r\n\t// Setup background fields\r\n\r\n\tf.background_color.value = tinyMCEPopup.editor.dom.toHex(ce.style.backgroundColor);\r\n\tupdateColor('background_color_pick', 'background_color');\r\n\tf.background_image.value = ce.style.backgroundImage.replace(new RegExp(\"url\\\\('?([^']*)'?\\\\)\", 'gi'), \"$1\");\r\n\tselectByValue(f, 'background_repeat', ce.style.backgroundRepeat, true, true);\r\n\tselectByValue(f, 'background_attachment', ce.style.backgroundAttachment, true, true);\r\n\tselectByValue(f, 'background_hpos', getNum(getVal(ce.style.backgroundPosition, 0)), true, true);\r\n\tselectByValue(f, 'background_hpos_measurement', getMeasurement(getVal(ce.style.backgroundPosition, 0)));\r\n\tselectByValue(f, 'background_vpos', getNum(getVal(ce.style.backgroundPosition, 1)), true, true);\r\n\tselectByValue(f, 'background_vpos_measurement', getMeasurement(getVal(ce.style.backgroundPosition, 1)));\r\n\r\n\t// Setup block fields\r\n\r\n\tselectByValue(f, 'block_wordspacing', getNum(ce.style.wordSpacing), true, true);\r\n\tselectByValue(f, 'block_wordspacing_measurement', getMeasurement(ce.style.wordSpacing));\r\n\tselectByValue(f, 'block_letterspacing', getNum(ce.style.letterSpacing), true, true);\r\n\tselectByValue(f, 'block_letterspacing_measurement', getMeasurement(ce.style.letterSpacing));\r\n\tselectByValue(f, 'block_vertical_alignment', ce.style.verticalAlign, true, true);\r\n\tselectByValue(f, 'block_text_align', ce.style.textAlign, true, true);\r\n\tf.block_text_indent.value = getNum(ce.style.textIndent);\r\n\tselectByValue(f, 'block_text_indent_measurement', getMeasurement(ce.style.textIndent));\r\n\tselectByValue(f, 'block_whitespace', ce.style.whiteSpace, true, true);\r\n\tselectByValue(f, 'block_display', ce.style.display, true, true);\r\n\r\n\t// Setup box fields\r\n\r\n\tf.box_width.value = getNum(ce.style.width);\r\n\tselectByValue(f, 'box_width_measurement', getMeasurement(ce.style.width));\r\n\r\n\tf.box_height.value = getNum(ce.style.height);\r\n\tselectByValue(f, 'box_height_measurement', getMeasurement(ce.style.height));\r\n\tselectByValue(f, 'box_float', ce.style.cssFloat || ce.style.styleFloat, true, true);\r\n\r\n\tselectByValue(f, 'box_clear', ce.style.clear, true, true);\r\n\r\n\tsetupBox(f, ce, 'box_padding', 'padding', '');\r\n\tsetupBox(f, ce, 'box_margin', 'margin', '');\r\n\r\n\t// Setup border fields\r\n\r\n\tsetupBox(f, ce, 'border_style', 'border', 'Style');\r\n\tsetupBox(f, ce, 'border_width', 'border', 'Width');\r\n\tsetupBox(f, ce, 'border_color', 'border', 'Color');\r\n\r\n\tupdateColor('border_color_top_pick', 'border_color_top');\r\n\tupdateColor('border_color_right_pick', 'border_color_right');\r\n\tupdateColor('border_color_bottom_pick', 'border_color_bottom');\r\n\tupdateColor('border_color_left_pick', 'border_color_left');\r\n\r\n\tf.elements.border_color_top.value = tinyMCEPopup.editor.dom.toHex(f.elements.border_color_top.value);\r\n\tf.elements.border_color_right.value = tinyMCEPopup.editor.dom.toHex(f.elements.border_color_right.value);\r\n\tf.elements.border_color_bottom.value = tinyMCEPopup.editor.dom.toHex(f.elements.border_color_bottom.value);\r\n\tf.elements.border_color_left.value = tinyMCEPopup.editor.dom.toHex(f.elements.border_color_left.value);\r\n\r\n\t// Setup list fields\r\n\r\n\tselectByValue(f, 'list_type', ce.style.listStyleType, true, true);\r\n\tselectByValue(f, 'list_position', ce.style.listStylePosition, true, true);\r\n\tf.list_bullet_image.value = ce.style.listStyleImage.replace(new RegExp(\"url\\\\('?([^']*)'?\\\\)\", 'gi'), \"$1\");\r\n\r\n\t// Setup box fields\r\n\r\n\tselectByValue(f, 'positioning_type', ce.style.position, true, true);\r\n\tselectByValue(f, 'positioning_visibility', ce.style.visibility, true, true);\r\n\tselectByValue(f, 'positioning_overflow', ce.style.overflow, true, true);\r\n\tf.positioning_zindex.value = ce.style.zIndex ? ce.style.zIndex : \"\";\r\n\r\n\tf.positioning_width.value = getNum(ce.style.width);\r\n\tselectByValue(f, 'positioning_width_measurement', getMeasurement(ce.style.width));\r\n\r\n\tf.positioning_height.value = getNum(ce.style.height);\r\n\tselectByValue(f, 'positioning_height_measurement', getMeasurement(ce.style.height));\r\n\r\n\tsetupBox(f, ce, 'positioning_placement', '', '', ['top', 'right', 'bottom', 'left']);\r\n\r\n\ts = ce.style.clip.replace(new RegExp(\"rect\\\\('?([^']*)'?\\\\)\", 'gi'), \"$1\");\r\n\ts = s.replace(/,/g, ' ');\r\n\r\n\tif (!hasEqualValues([getVal(s, 0), getVal(s, 1), getVal(s, 2), getVal(s, 3)])) {\r\n\t\tf.positioning_clip_top.value = getNum(getVal(s, 0));\r\n\t\tselectByValue(f, 'positioning_clip_top_measurement', getMeasurement(getVal(s, 0)));\r\n\t\tf.positioning_clip_right.value = getNum(getVal(s, 1));\r\n\t\tselectByValue(f, 'positioning_clip_right_measurement', getMeasurement(getVal(s, 1)));\r\n\t\tf.positioning_clip_bottom.value = getNum(getVal(s, 2));\r\n\t\tselectByValue(f, 'positioning_clip_bottom_measurement', getMeasurement(getVal(s, 2)));\r\n\t\tf.positioning_clip_left.value = getNum(getVal(s, 3));\r\n\t\tselectByValue(f, 'positioning_clip_left_measurement', getMeasurement(getVal(s, 3)));\r\n\t} else {\r\n\t\tf.positioning_clip_top.value = getNum(getVal(s, 0));\r\n\t\tselectByValue(f, 'positioning_clip_top_measurement', getMeasurement(getVal(s, 0)));\r\n\t\tf.positioning_clip_right.value = f.positioning_clip_bottom.value = f.positioning_clip_left.value;\r\n\t}\r\n\r\n//\tsetupBox(f, ce, '', 'border', 'Color');\r\n}\r\n\r\nfunction getMeasurement(s) {\r\n\treturn s.replace(/^([0-9.]+)(.*)$/, \"$2\");\r\n}\r\n\r\nfunction getNum(s) {\r\n\tif (new RegExp('^(?:[0-9.]+)(?:[a-z%]+)$', 'gi').test(s))\r\n\t\treturn s.replace(/[^0-9.]/g, '');\r\n\r\n\treturn s;\r\n}\r\n\r\nfunction inStr(s, n) {\r\n\treturn new RegExp(n, 'gi').test(s);\r\n}\r\n\r\nfunction getVal(s, i) {\r\n\tvar a = s.split(' ');\r\n\r\n\tif (a.length > 1)\r\n\t\treturn a[i];\r\n\r\n\treturn \"\";\r\n}\r\n\r\nfunction setValue(f, n, v) {\r\n\tif (f.elements[n].type == \"text\")\r\n\t\tf.elements[n].value = v;\r\n\telse\r\n\t\tselectByValue(f, n, v, true, true);\r\n}\r\n\r\nfunction setupBox(f, ce, fp, pr, sf, b) {\r\n\tif (typeof(b) == \"undefined\")\r\n\t\tb = ['Top', 'Right', 'Bottom', 'Left'];\r\n\r\n\tif (isSame(ce, pr, sf, b)) {\r\n\t\tf.elements[fp + \"_same\"].checked = true;\r\n\r\n\t\tsetValue(f, fp + \"_top\", getNum(ce.style[pr + b[0] + sf]));\r\n\t\tf.elements[fp + \"_top\"].disabled = false;\r\n\r\n\t\tf.elements[fp + \"_right\"].value = \"\";\r\n\t\tf.elements[fp + \"_right\"].disabled = true;\r\n\t\tf.elements[fp + \"_bottom\"].value = \"\";\r\n\t\tf.elements[fp + \"_bottom\"].disabled = true;\r\n\t\tf.elements[fp + \"_left\"].value = \"\";\r\n\t\tf.elements[fp + \"_left\"].disabled = true;\r\n\r\n\t\tif (f.elements[fp + \"_top_measurement\"]) {\r\n\t\t\tselectByValue(f, fp + '_top_measurement', getMeasurement(ce.style[pr + b[0] + sf]));\r\n\t\t\tf.elements[fp + \"_left_measurement\"].disabled = true;\r\n\t\t\tf.elements[fp + \"_bottom_measurement\"].disabled = true;\r\n\t\t\tf.elements[fp + \"_right_measurement\"].disabled = true;\r\n\t\t}\r\n\t} else {\r\n\t\tf.elements[fp + \"_same\"].checked = false;\r\n\r\n\t\tsetValue(f, fp + \"_top\", getNum(ce.style[pr + b[0] + sf]));\r\n\t\tf.elements[fp + \"_top\"].disabled = false;\r\n\r\n\t\tsetValue(f, fp + \"_right\", getNum(ce.style[pr + b[1] + sf]));\r\n\t\tf.elements[fp + \"_right\"].disabled = false;\r\n\r\n\t\tsetValue(f, fp + \"_bottom\", getNum(ce.style[pr + b[2] + sf]));\r\n\t\tf.elements[fp + \"_bottom\"].disabled = false;\r\n\r\n\t\tsetValue(f, fp + \"_left\", getNum(ce.style[pr + b[3] + sf]));\r\n\t\tf.elements[fp + \"_left\"].disabled = false;\r\n\r\n\t\tif (f.elements[fp + \"_top_measurement\"]) {\r\n\t\t\tselectByValue(f, fp + '_top_measurement', getMeasurement(ce.style[pr + b[0] + sf]));\r\n\t\t\tselectByValue(f, fp + '_right_measurement', getMeasurement(ce.style[pr + b[1] + sf]));\r\n\t\t\tselectByValue(f, fp + '_bottom_measurement', getMeasurement(ce.style[pr + b[2] + sf]));\r\n\t\t\tselectByValue(f, fp + '_left_measurement', getMeasurement(ce.style[pr + b[3] + sf]));\r\n\t\t\tf.elements[fp + \"_left_measurement\"].disabled = false;\r\n\t\t\tf.elements[fp + \"_bottom_measurement\"].disabled = false;\r\n\t\t\tf.elements[fp + \"_right_measurement\"].disabled = false;\r\n\t\t}\r\n\t}\r\n}\r\n\r\nfunction isSame(e, pr, sf, b) {\r\n\tvar a = [], i, x;\r\n\r\n\tif (typeof(b) == \"undefined\")\r\n\t\tb = ['Top', 'Right', 'Bottom', 'Left'];\r\n\r\n\tif (typeof(sf) == \"undefined\" || sf == null)\r\n\t\tsf = \"\";\r\n\r\n\ta[0] = e.style[pr + b[0] + sf];\r\n\ta[1] = e.style[pr + b[1] + sf];\r\n\ta[2] = e.style[pr + b[2] + sf];\r\n\ta[3] = e.style[pr + b[3] + sf];\r\n\r\n\tfor (i=0; i<a.length; i++) {\r\n\t\tif (a[i] == null)\r\n\t\t\treturn false;\r\n\r\n\t\tfor (x=0; x<a.length; x++) {\r\n\t\t\tif (a[x] != a[i])\r\n\t\t\t\treturn false;\r\n\t\t}\r\n\t}\r\n\r\n\treturn true;\r\n};\r\n\r\nfunction hasEqualValues(a) {\r\n\tvar i, x;\r\n\r\n\tfor (i=0; i<a.length; i++) {\r\n\t\tif (a[i] == null)\r\n\t\t\treturn false;\r\n\r\n\t\tfor (x=0; x<a.length; x++) {\r\n\t\t\tif (a[x] != a[i])\r\n\t\t\t\treturn false;\r\n\t\t}\r\n\t}\r\n\r\n\treturn true;\r\n}\r\n\r\nfunction applyAction() {\r\n\tvar ce = document.getElementById('container'), ed = tinyMCEPopup.editor;\r\n\r\n\tgenerateCSS();\r\n\r\n\ttinyMCEPopup.restoreSelection();\r\n\ted.dom.setAttrib(ed.selection.getSelectedBlocks(), 'style', tinyMCEPopup.editor.dom.serializeStyle(tinyMCEPopup.editor.dom.parseStyle(ce.style.cssText)));\r\n}\r\n\r\nfunction updateAction() {\r\n\tapplyAction();\r\n\ttinyMCEPopup.close();\r\n}\r\n\r\nfunction generateCSS() {\r\n\tvar ce = document.getElementById('container'), f = document.forms[0], num = new RegExp('[0-9]+', 'g'), s, t;\r\n\r\n\tce.style.cssText = \"\";\r\n\r\n\t// Build text styles\r\n\tce.style.fontFamily = f.text_font.value;\r\n\tce.style.fontSize = f.text_size.value + (isNum(f.text_size.value) ? (f.text_size_measurement.value || 'px') : \"\");\r\n\tce.style.fontStyle = f.text_style.value;\r\n\tce.style.lineHeight = f.text_lineheight.value + (isNum(f.text_lineheight.value) ? f.text_lineheight_measurement.value : \"\");\r\n\tce.style.textTransform = f.text_case.value;\r\n\tce.style.fontWeight = f.text_weight.value;\r\n\tce.style.fontVariant = f.text_variant.value;\r\n\tce.style.color = f.text_color.value;\r\n\r\n\ts = \"\";\r\n\ts += f.text_underline.checked ? \" underline\" : \"\";\r\n\ts += f.text_overline.checked ? \" overline\" : \"\";\r\n\ts += f.text_linethrough.checked ? \" line-through\" : \"\";\r\n\ts += f.text_blink.checked ? \" blink\" : \"\";\r\n\ts = s.length > 0 ? s.substring(1) : s;\r\n\r\n\tif (f.text_none.checked)\r\n\t\ts = \"none\";\r\n\r\n\tce.style.textDecoration = s;\r\n\r\n\t// Build background styles\r\n\r\n\tce.style.backgroundColor = f.background_color.value;\r\n\tce.style.backgroundImage = f.background_image.value != \"\" ? \"url(\" + f.background_image.value + \")\" : \"\";\r\n\tce.style.backgroundRepeat = f.background_repeat.value;\r\n\tce.style.backgroundAttachment = f.background_attachment.value;\r\n\r\n\tif (f.background_hpos.value != \"\") {\r\n\t\ts = \"\";\r\n\t\ts += f.background_hpos.value + (isNum(f.background_hpos.value) ? f.background_hpos_measurement.value : \"\") + \" \";\r\n\t\ts += f.background_vpos.value + (isNum(f.background_vpos.value) ? f.background_vpos_measurement.value : \"\");\r\n\t\tce.style.backgroundPosition = s;\r\n\t}\r\n\r\n\t// Build block styles\r\n\r\n\tce.style.wordSpacing = f.block_wordspacing.value + (isNum(f.block_wordspacing.value) ? f.block_wordspacing_measurement.value : \"\");\r\n\tce.style.letterSpacing = f.block_letterspacing.value + (isNum(f.block_letterspacing.value) ? f.block_letterspacing_measurement.value : \"\");\r\n\tce.style.verticalAlign = f.block_vertical_alignment.value;\r\n\tce.style.textAlign = f.block_text_align.value;\r\n\tce.style.textIndent = f.block_text_indent.value + (isNum(f.block_text_indent.value) ? f.block_text_indent_measurement.value : \"\");\r\n\tce.style.whiteSpace = f.block_whitespace.value;\r\n\tce.style.display = f.block_display.value;\r\n\r\n\t// Build box styles\r\n\r\n\tce.style.width = f.box_width.value + (isNum(f.box_width.value) ? f.box_width_measurement.value : \"\");\r\n\tce.style.height = f.box_height.value + (isNum(f.box_height.value) ? f.box_height_measurement.value : \"\");\r\n\tce.style.styleFloat = f.box_float.value;\r\n\tce.style.cssFloat = f.box_float.value;\r\n\r\n\tce.style.clear = f.box_clear.value;\r\n\r\n\tif (!f.box_padding_same.checked) {\r\n\t\tce.style.paddingTop = f.box_padding_top.value + (isNum(f.box_padding_top.value) ? f.box_padding_top_measurement.value : \"\");\r\n\t\tce.style.paddingRight = f.box_padding_right.value + (isNum(f.box_padding_right.value) ? f.box_padding_right_measurement.value : \"\");\r\n\t\tce.style.paddingBottom = f.box_padding_bottom.value + (isNum(f.box_padding_bottom.value) ? f.box_padding_bottom_measurement.value : \"\");\r\n\t\tce.style.paddingLeft = f.box_padding_left.value + (isNum(f.box_padding_left.value) ? f.box_padding_left_measurement.value : \"\");\r\n\t} else\r\n\t\tce.style.padding = f.box_padding_top.value + (isNum(f.box_padding_top.value) ? f.box_padding_top_measurement.value : \"\");\t\t\r\n\r\n\tif (!f.box_margin_same.checked) {\r\n\t\tce.style.marginTop = f.box_margin_top.value + (isNum(f.box_margin_top.value) ? f.box_margin_top_measurement.value : \"\");\r\n\t\tce.style.marginRight = f.box_margin_right.value + (isNum(f.box_margin_right.value) ? f.box_margin_right_measurement.value : \"\");\r\n\t\tce.style.marginBottom = f.box_margin_bottom.value + (isNum(f.box_margin_bottom.value) ? f.box_margin_bottom_measurement.value : \"\");\r\n\t\tce.style.marginLeft = f.box_margin_left.value + (isNum(f.box_margin_left.value) ? f.box_margin_left_measurement.value : \"\");\r\n\t} else\r\n\t\tce.style.margin = f.box_margin_top.value + (isNum(f.box_margin_top.value) ? f.box_margin_top_measurement.value : \"\");\t\t\r\n\r\n\t// Build border styles\r\n\r\n\tif (!f.border_style_same.checked) {\r\n\t\tce.style.borderTopStyle = f.border_style_top.value;\r\n\t\tce.style.borderRightStyle = f.border_style_right.value;\r\n\t\tce.style.borderBottomStyle = f.border_style_bottom.value;\r\n\t\tce.style.borderLeftStyle = f.border_style_left.value;\r\n\t} else\r\n\t\tce.style.borderStyle = f.border_style_top.value;\r\n\r\n\tif (!f.border_width_same.checked) {\r\n\t\tce.style.borderTopWidth = f.border_width_top.value + (isNum(f.border_width_top.value) ? f.border_width_top_measurement.value : \"\");\r\n\t\tce.style.borderRightWidth = f.border_width_right.value + (isNum(f.border_width_right.value) ? f.border_width_right_measurement.value : \"\");\r\n\t\tce.style.borderBottomWidth = f.border_width_bottom.value + (isNum(f.border_width_bottom.value) ? f.border_width_bottom_measurement.value : \"\");\r\n\t\tce.style.borderLeftWidth = f.border_width_left.value + (isNum(f.border_width_left.value) ? f.border_width_left_measurement.value : \"\");\r\n\t} else\r\n\t\tce.style.borderWidth = f.border_width_top.value + (isNum(f.border_width_top.value) ? f.border_width_top_measurement.value : \"\");\r\n\r\n\tif (!f.border_color_same.checked) {\r\n\t\tce.style.borderTopColor = f.border_color_top.value;\r\n\t\tce.style.borderRightColor = f.border_color_right.value;\r\n\t\tce.style.borderBottomColor = f.border_color_bottom.value;\r\n\t\tce.style.borderLeftColor = f.border_color_left.value;\r\n\t} else\r\n\t\tce.style.borderColor = f.border_color_top.value;\r\n\r\n\t// Build list styles\r\n\r\n\tce.style.listStyleType = f.list_type.value;\r\n\tce.style.listStylePosition = f.list_position.value;\r\n\tce.style.listStyleImage = f.list_bullet_image.value != \"\" ? \"url(\" + f.list_bullet_image.value + \")\" : \"\";\r\n\r\n\t// Build positioning styles\r\n\r\n\tce.style.position = f.positioning_type.value;\r\n\tce.style.visibility = f.positioning_visibility.value;\r\n\r\n\tif (ce.style.width == \"\")\r\n\t\tce.style.width = f.positioning_width.value + (isNum(f.positioning_width.value) ? f.positioning_width_measurement.value : \"\");\r\n\r\n\tif (ce.style.height == \"\")\r\n\t\tce.style.height = f.positioning_height.value + (isNum(f.positioning_height.value) ? f.positioning_height_measurement.value : \"\");\r\n\r\n\tce.style.zIndex = f.positioning_zindex.value;\r\n\tce.style.overflow = f.positioning_overflow.value;\r\n\r\n\tif (!f.positioning_placement_same.checked) {\r\n\t\tce.style.top = f.positioning_placement_top.value + (isNum(f.positioning_placement_top.value) ? f.positioning_placement_top_measurement.value : \"\");\r\n\t\tce.style.right = f.positioning_placement_right.value + (isNum(f.positioning_placement_right.value) ? f.positioning_placement_right_measurement.value : \"\");\r\n\t\tce.style.bottom = f.positioning_placement_bottom.value + (isNum(f.positioning_placement_bottom.value) ? f.positioning_placement_bottom_measurement.value : \"\");\r\n\t\tce.style.left = f.positioning_placement_left.value + (isNum(f.positioning_placement_left.value) ? f.positioning_placement_left_measurement.value : \"\");\r\n\t} else {\r\n\t\ts = f.positioning_placement_top.value + (isNum(f.positioning_placement_top.value) ? f.positioning_placement_top_measurement.value : \"\");\r\n\t\tce.style.top = s;\r\n\t\tce.style.right = s;\r\n\t\tce.style.bottom = s;\r\n\t\tce.style.left = s;\r\n\t}\r\n\r\n\tif (!f.positioning_clip_same.checked) {\r\n\t\ts = \"rect(\";\r\n\t\ts += (isNum(f.positioning_clip_top.value) ? f.positioning_clip_top.value + f.positioning_clip_top_measurement.value : \"auto\") + \" \";\r\n\t\ts += (isNum(f.positioning_clip_right.value) ? f.positioning_clip_right.value + f.positioning_clip_right_measurement.value : \"auto\") + \" \";\r\n\t\ts += (isNum(f.positioning_clip_bottom.value) ? f.positioning_clip_bottom.value + f.positioning_clip_bottom_measurement.value : \"auto\") + \" \";\r\n\t\ts += (isNum(f.positioning_clip_left.value) ? f.positioning_clip_left.value + f.positioning_clip_left_measurement.value : \"auto\");\r\n\t\ts += \")\";\r\n\r\n\t\tif (s != \"rect(auto auto auto auto)\")\r\n\t\t\tce.style.clip = s;\r\n\t} else {\r\n\t\ts = \"rect(\";\r\n\t\tt = isNum(f.positioning_clip_top.value) ? f.positioning_clip_top.value + f.positioning_clip_top_measurement.value : \"auto\";\r\n\t\ts += t + \" \";\r\n\t\ts += t + \" \";\r\n\t\ts += t + \" \";\r\n\t\ts += t + \")\";\r\n\r\n\t\tif (s != \"rect(auto auto auto auto)\")\r\n\t\t\tce.style.clip = s;\r\n\t}\r\n\r\n\tce.style.cssText = ce.style.cssText;\r\n}\r\n\r\nfunction isNum(s) {\r\n\treturn new RegExp('[0-9]+', 'g').test(s);\r\n}\r\n\r\nfunction showDisabledControls() {\r\n\tvar f = document.forms, i, a;\r\n\r\n\tfor (i=0; i<f.length; i++) {\r\n\t\tfor (a=0; a<f[i].elements.length; a++) {\r\n\t\t\tif (f[i].elements[a].disabled)\r\n\t\t\t\ttinyMCEPopup.editor.dom.addClass(f[i].elements[a], \"disabled\");\r\n\t\t\telse\r\n\t\t\t\ttinyMCEPopup.editor.dom.removeClass(f[i].elements[a], \"disabled\");\r\n\t\t}\r\n\t}\r\n}\r\n\r\nfunction fillSelect(f, s, param, dval, sep, em) {\r\n\tvar i, ar, p, se;\r\n\r\n\tf = document.forms[f];\r\n\tsep = typeof(sep) == \"undefined\" ? \";\" : sep;\r\n\r\n\tif (em)\r\n\t\taddSelectValue(f, s, \"\", \"\");\r\n\r\n\tar = tinyMCEPopup.getParam(param, dval).split(sep);\r\n\tfor (i=0; i<ar.length; i++) {\r\n\t\tse = false;\r\n\r\n\t\tif (ar[i].charAt(0) == '+') {\r\n\t\t\tar[i] = ar[i].substring(1);\r\n\t\t\tse = true;\r\n\t\t}\r\n\r\n\t\tp = ar[i].split('=');\r\n\r\n\t\tif (p.length > 1) {\r\n\t\t\taddSelectValue(f, s, p[0], p[1]);\r\n\r\n\t\t\tif (se)\r\n\t\t\t\tselectByValue(f, s, p[1]);\r\n\t\t} else {\r\n\t\t\taddSelectValue(f, s, p[0], p[0]);\r\n\r\n\t\t\tif (se)\r\n\t\t\t\tselectByValue(f, s, p[0]);\r\n\t\t}\r\n\t}\r\n}\r\n\r\nfunction toggleSame(ce, pre) {\r\n\tvar el = document.forms[0].elements, i;\r\n\r\n\tif (ce.checked) {\r\n\t\tel[pre + \"_top\"].disabled = false;\r\n\t\tel[pre + \"_right\"].disabled = true;\r\n\t\tel[pre + \"_bottom\"].disabled = true;\r\n\t\tel[pre + \"_left\"].disabled = true;\r\n\r\n\t\tif (el[pre + \"_top_measurement\"]) {\r\n\t\t\tel[pre + \"_top_measurement\"].disabled = false;\r\n\t\t\tel[pre + \"_right_measurement\"].disabled = true;\r\n\t\t\tel[pre + \"_bottom_measurement\"].disabled = true;\r\n\t\t\tel[pre + \"_left_measurement\"].disabled = true;\r\n\t\t}\r\n\t} else {\r\n\t\tel[pre + \"_top\"].disabled = false;\r\n\t\tel[pre + \"_right\"].disabled = false;\r\n\t\tel[pre + \"_bottom\"].disabled = false;\r\n\t\tel[pre + \"_left\"].disabled = false;\r\n\r\n\t\tif (el[pre + \"_top_measurement\"]) {\r\n\t\t\tel[pre + \"_top_measurement\"].disabled = false;\r\n\t\t\tel[pre + \"_right_measurement\"].disabled = false;\r\n\t\t\tel[pre + \"_bottom_measurement\"].disabled = false;\r\n\t\t\tel[pre + \"_left_measurement\"].disabled = false;\r\n\t\t}\r\n\t}\r\n\r\n\tshowDisabledControls();\r\n}\r\n\r\nfunction synch(fr, to) {\r\n\tvar f = document.forms[0];\r\n\r\n\tf.elements[to].value = f.elements[fr].value;\r\n\r\n\tif (f.elements[fr + \"_measurement\"])\r\n\t\tselectByValue(f, to + \"_measurement\", f.elements[fr + \"_measurement\"].value);\r\n}\r\n\r\ntinyMCEPopup.onInit.add(init);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/ar_dlg.js",
    "content": "tinyMCE.addI18n('ar.style_dlg',{text_lineheight:\"Line height\",text_variant:\"Variant\",text_style:\"Style\",text_weight:\"Weight\",text_size:\"Size\",text_font:\"Font\",text_props:\"Text\",positioning_tab:\"Positioning\",list_tab:\"List\",border_tab:\"Border\",box_tab:\"Box\",block_tab:\"Block\",background_tab:\"Background\",text_tab:\"Text\",apply:\"Apply\",title:\"Edit CSS Style\",clip:\"Clip\",placement:\"Placement\",overflow:\"Overflow\",zindex:\"Z-index\",visibility:\"Visibility\",positioning_type:\"Type\",position:\"Position\",bullet_image:\"Bullet image\",list_type:\"Type\",color:\"Color\",height:\"Height\",width:\"Width\",style:\"Style\",margin:\"Margin\",left:\"\\u064a\\u0633\\u0627\\u0631\",bottom:\"\\u0627\\u0633\\u0641\\u0644\",right:\"\\u064a\\u0645\\u064a\\u0646\",top:\"\\u0627\\u0644\\u0627\\u0639\\u0644\\u0649\",same:\"Same for all\",padding:\"Padding\",box_clear:\"Clear\",box_float:\"Float\",box_height:\"Height\",box_width:\"Width\",block_display:\"Display\",block_whitespace:\"Whitespace\",block_text_indent:\"Text indent\",block_text_align:\"Text align\",block_vertical_alignment:\"Vertical alignment\",block_letterspacing:\"Letter spacing\",block_wordspacing:\"Word spacing\",background_vpos:\"Vertical position\",background_hpos:\"Horizontal position\",background_attachment:\"Attachment\",background_repeat:\"Repeat\",background_image:\"Background image\",background_color:\"Background color\",text_none:\"none\",text_blink:\"blink\",text_case:\"Case\",text_striketrough:\"strikethrough\",text_underline:\"underline\",text_overline:\"overline\",text_decoration:\"Decoration\",text_color:\"Color\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/az_dlg.js",
    "content": "tinyMCE.addI18n('az.style_dlg',{\"text_lineheight\":\"S\\u0259tr h\\u00fcnd\\u00fcrl\\u00fcy\\u00fc\",\"text_variant\":\"Variant\",\"text_style\":\"Stil\",\"text_weight\":\"\\u00c7\\u0259kisi\",\"text_size\":\"\\u00d6l\\u00e7\\u00fcs\\u00fc\",\"text_font\":\"\\u015erift\",\"text_props\":\"M\\u0259tn\",\"positioning_tab\":\"M\\u00f6vqe\",\"list_tab\":\"Siyah\\u0131\",\"border_tab\":\"S\\u0259rh\\u0259d\",\"box_tab\":\"Konteyner\",\"block_tab\":\"Blok\",\"background_tab\":\"Fon\",\"text_tab\":\"M\\u0259tn\",apply:\"T\\u0259tbiq et\",title:\"CSS stili redakt\\u0259 et\",clip:\"K\\u0259sm\\u0259k\",placement:\"Yerl\\u0259\\u015fdirm\\u0259\",overflow:\"Axma\",zindex:\"Z-indeks\",visibility:\"G\\u00f6r\\u00fcn\\u00fc\\u015f\",\"positioning_type\":\"N\\u00f6v\",position:\"M\\u00f6vqe\",\"bullet_image\":\"Marker \\u015f\\u0259kli\",\"list_type\":\"N\\u00f6v\",color:\"R\\u0259ng\",height:\"H\\u00fcnd\\u00fcrl\\u00fck\",width:\"En\",style:\"Stil\",margin:\"Sah\\u0259l\\u0259r\",left:\"Soldan\",bottom:\"A\\u015fa\\u011f\\u0131dan\",right:\"Sa\\u011fdan\",top:\"Yuxar\\u0131dan\",same:\"Ham\\u0131s\\u0131 \\u00fc\\u00e7\\u00fcn eyni\",padding:\"Doldurma\",\"box_clear\":\"T\\u0259mizl\\u0259\",\"box_float\":\"\\u00dcz\\u0259n\",\"box_height\":\"Uzunlu\\u011fu\",\"box_width\":\"Eni\",\"block_display\":\"N\\u00fcmayis\",\"block_whitespace\":\"Bo\\u015fluq\",\"block_text_indent\":\"M\\u0259tn bo\\u015flu\\u011fu\",\"block_text_align\":\"M\\u0259tn tara\\u015fla\\u015fd\\u0131r\\u0131lmas\\u0131\",\"block_vertical_alignment\":\"\\u015eaquli tarazla\\u015fd\\u0131r\\u0131lma\",\"block_letterspacing\":\"Simvol aras\\u0131 bo\\u015fluqlar\",\"block_wordspacing\":\"S\\u00f6zaras\\u0131 bo\\u015fluqlar\",\"background_vpos\":\"\\u015eaquli m\\u00f6vqe\",\"background_hpos\":\"\\u00dcf\\u00fcqi m\\u00f6vqe\",\"background_attachment\":\"B\\u0259rkitm\\u0259k\",\"background_repeat\":\"T\\u0259krar\",\"background_image\":\"fon \\u015f\\u0259kli\",\"background_color\":\"Fon r\\u0259ngi\",\"text_none\":\"he\\u00e7 biri\",\"text_blink\":\"Yan\\u0131b-s\\u00f6n\\u0259n\",\"text_case\":\"Registr\",\"text_striketrough\":\"\\u00fcst\\u00fcnd\\u0259n x\\u0259tt\",\"text_underline\":\"alt\\u0131ndan x\\u0259tt\",\"text_overline\":\"\\u00fcz\\u0259rind\\u0259n x\\u0259tt\",\"text_decoration\":\"B\\u0259z\\u0259k\",\"text_color\":\"\\u015e\\u0259kil\",text:\"Text\",background:\"Background\",block:\"Block\",box:\"Box\",border:\"Border\",list:\"List\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/be_dlg.js",
    "content": "tinyMCE.addI18n('be.style_dlg',{\"text_lineheight\":\"\\u0412\\u044b\\u0448\\u044b\\u043d\\u044f \\u0440\\u0430\\u0434\\u043a\\u0430\",\"text_variant\":\"\\u0412\\u0430\\u0440\\u044b\\u044f\\u043d\\u0442\",\"text_style\":\"\\u0421\\u0442\\u044b\\u043b\\u044c\",\"text_weight\":\"\\u0422\\u0430\\u045e\\u0448\\u0447\\u044b\\u043d\\u044f\",\"text_size\":\"\\u041f\\u0430\\u043c\\u0435\\u0440\",\"text_font\":\"\\u0428\\u0440\\u044b\\u0444\\u0442\",\"text_props\":\"\\u0422\\u044d\\u043a\\u0441\\u0442\",\"positioning_tab\":\"\\u041f\\u0430\\u0437\\u0456\\u0446\\u044b\\u044f\\u043d\\u0430\\u0432\\u0430\\u043d\\u043d\\u0435\",\"list_tab\":\"\\u0421\\u043f\\u0456\\u0441\",\"border_tab\":\"\\u041c\\u044f\\u0436\\u0430\",\"box_tab\":\"\\u041a\\u0430\\u043d\\u0442\\u044d\\u0439\\u043d\\u0435\\u0440\",\"block_tab\":\"\\u0411\\u043b\\u043e\\u043a\",\"background_tab\":\"\\u0424\\u043e\\u043d\",\"text_tab\":\"\\u0422\\u044d\\u043a\\u0441\\u0442\",apply:\"\\u0423\\u0436\\u044b\\u0446\\u044c\",title:\"\\u0420\\u044d\\u0434\\u0430\\u0433\\u0430\\u0432\\u0430\\u0446\\u044c \\u0441\\u0442\\u044b\\u043b\\u044c CSS\",clip:\"\\u0410\\u0431\\u0440\\u0430\\u0437\\u0430\\u043d\\u043d\\u0435\",placement:\"\\u0420\\u0430\\u0437\\u043c\\u044f\\u0448\\u0447\\u044d\\u043d\\u043d\\u0435\",overflow:\"\\u041f\\u0435\\u0440\\u0430\\u043f\\u0430\\u045e\\u043d\\u0435\\u043d\\u043d\\u0435\",zindex:\"Z-\\u0430\\u0437\\u043d\\u0430\\u0447\\u043d\\u0456\\u043a\",visibility:\"\\u0411\\u0430\\u0447\\u043d\\u0430\\u0441\\u0446\\u044c\",\"positioning_type\":\"\\u0422\\u044b\\u043f\",position:\"\\u041f\\u0430\\u0437\\u0456\\u0446\\u044b\\u044f\",\"bullet_image\":\"\\u041c\\u0430\\u0440\\u043a\\u0435\\u0440\",\"list_type\":\"\\u0422\\u044b\\u043f\",color:\"\\u041a\\u043e\\u043b\\u0435\\u0440\",height:\"\\u0412\\u044b\\u0448\\u044b\\u043d\\u044f\",width:\"\\u0428\\u044b\\u0440\\u044b\\u043d\\u044f\",style:\"\\u0421\\u0442\\u044b\\u043b\\u044c\",margin:\"\\u0412\\u043e\\u0434\\u0441\\u0442\\u0443\\u043f\",left:\"\\u0417\\u043b\\u0435\\u0432\\u0430\",bottom:\"\\u0417\\u043d\\u0456\\u0437\\u0443\",right:\"\\u0421\\u043f\\u0440\\u0430\\u0432\\u0430\",top:\"\\u0417\\u0432\\u0435\\u0440\\u0445\\u0443\",same:\"\\u0410\\u0434\\u043d\\u043e\\u043b\\u044c\\u043a\\u0430\\u0432\\u0430 \\u0434\\u043b\\u044f \\u045e\\u0441\\u0456\\u0445\",padding:\"\\u041f\\u0430\\u043b\\u0456\",\"box_clear\":\"\\u0410\\u0447\\u044b\\u0441\\u0446\\u0456\\u0446\\u044c\",\"box_float\":\"\\u041f\\u043b\\u0430\\u0432\\u0430\\u044e\\u0447\\u044b\",\"box_height\":\"\\u0412\\u044b\\u0448\\u044b\\u043d\\u044f\",\"box_width\":\"\\u0428\\u044b\\u0440\\u044b\\u043d\\u044f\",\"block_display\":\"\\u0410\\u0434\\u043b\\u044e\\u0441\\u0442\\u0440\\u0430\\u0432\\u0430\\u043d\\u043d\\u0435\",\"block_whitespace\":\"\\u041f\\u0440\\u0430\\u0431\\u0435\\u043b\",\"block_text_indent\":\"\\u0412\\u043e\\u0434\\u0441\\u0442\\u0443\\u043f \\u0442\\u044d\\u043a\\u0441\\u0442\\u0443\",\"block_text_align\":\"\\u0412\\u044b\\u0440\\u0430\\u045e\\u043d\\u043e\\u045e\\u0432\\u0430\\u043d\\u043d\\u0435 \\u0442\\u044d\\u043a\\u0441\\u0442\\u0443\",\"block_vertical_alignment\":\"\\u0412\\u0435\\u0440\\u0442\\u044b\\u043a\\u0430\\u043b\\u044c\\u043d\\u0430\\u0435 \\u0432\\u044b\\u0440\\u0430\\u045e\\u043d\\u043e\\u045e\\u0432\\u0430\\u043d\\u043d\\u0435\",\"block_letterspacing\":\"\\u041f\\u0440\\u0430\\u043c\\u0435\\u0436\\u043a\\u0456 \\u043f\\u0430\\u043c\\u0456\\u0436 \\u043b\\u0456\\u0442\\u0430\\u0440\\u0430\\u043c\\u0456\",\"block_wordspacing\":\"\\u041f\\u0440\\u0430\\u043c\\u0435\\u0436\\u043a\\u0456 \\u043f\\u0430\\u043c\\u0456\\u0436 \\u0441\\u043b\\u043e\\u0432\\u0430\\u043c\\u0456\",\"background_vpos\":\"\\u0412\\u0435\\u0440\\u0442\\u044b\\u043a\\u0430\\u043b\\u044c\\u043d\\u0430\\u044f \\u043f\\u0430\\u0437\\u0456\\u0446\\u044b\\u044f\",\"background_hpos\":\"\\u0413\\u0430\\u0440\\u044b\\u0437\\u0430\\u043d\\u0442\\u0430\\u043b\\u044c\\u043d\\u0430\\u044f \\u043f\\u0430\\u0437\\u0456\\u0446\\u044b\\u044f\",\"background_attachment\":\"\\u041f\\u0440\\u044b\\u043c\\u0430\\u0446\\u0430\\u0432\\u0430\\u043d\\u043d\\u0435\",\"background_repeat\":\"\\u041f\\u0430\\u045e\\u0442\\u043e\\u0440\",\"background_image\":\"\\u0424\\u043e\\u043d\\u0430\\u0432\\u044b \\u043c\\u0430\\u043b\\u044e\\u043d\\u0430\\u043a\",\"background_color\":\"\\u041a\\u043e\\u043b\\u0435\\u0440 \\u0444\\u043e\\u043d\\u0443\",\"text_none\":\"\\u0411\\u0435\\u0437 \\u0443\\u0441\\u044f\\u0433\\u043e\",\"text_blink\":\"\\u041c\\u0456\\u0433\\u0430\\u0442\\u043b\\u0456\\u0432\\u044b\",\"text_case\":\"\\u0420\\u044d\\u0433\\u0456\\u0441\\u0442\\u0440\",\"text_striketrough\":\"\\u041f\\u0435\\u0440\\u0430\\u043a\\u0440\\u044d\\u0441\\u043b\\u0435\\u043d\\u044b\",\"text_underline\":\"\\u041f\\u0430\\u0434\\u043a\\u0440\\u044d\\u0441\\u043b\\u0435\\u043d\\u044b\",\"text_overline\":\"\\u041d\\u0430\\u0434\\u043a\\u0440\\u044d\\u0441\\u043b\\u0435\\u043d\\u044b\",\"text_decoration\":\"\\u0410\\u0444\\u0430\\u0440\\u043c\\u043b\\u0435\\u043d\\u043d\\u0435\",\"text_color\":\"\\u041a\\u043e\\u043b\\u0435\\u0440\",text:\"\\u0422\\u044d\\u043a\\u0441\\u0442\",background:\"\\u0424\\u043e\\u043d\",block:\"\\u0411\\u043b\\u043e\\u043a\",box:\"\\u041a\\u0430\\u043d\\u0442\\u044d\\u0439\\u043d\\u0435\\u0440\",border:\"\\u041c\\u044f\\u0436\\u0430\",list:\"\\u0421\\u043f\\u0456\\u0441\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/cs_dlg.js",
    "content": "tinyMCE.addI18n('cs.style_dlg',{text_lineheight:\"V\\u00fd\\u0161ka \\u0159\\u00e1dku\",text_variant:\"Varianta\",text_style:\"Styl textu\",text_weight:\"Tu\\u010dnost p\\u00edsma\",text_size:\"Velikost\",text_font:\"P\\u00edsmo\",text_props:\"Text\",positioning_tab:\"Um\\u00edst\\u011bn\\u00ed\",list_tab:\"Seznam\",border_tab:\"Ohrani\\u010den\\u00ed\",box_tab:\"Box\",block_tab:\"Blok\",background_tab:\"Pozad\\u00ed\",text_tab:\"Text\",apply:\"Pou\\u017e\\u00edt\",title:\"Upravit CSS styl\",clip:\"O\\u0159ez\\u00e1n\\u00ed (clip)\",placement:\"Um\\u00edst\\u011bni\",overflow:\"P\\u0159ete\\u010den\\u00ed (overflow)\",zindex:\"Z-index\",visibility:\"Viditelnost\",positioning_type:\"Typ\",position:\"Um\\u00edst\\u011bn\\u00ed\",bullet_image:\"Styl odr\\u00e1\\u017eek\",list_type:\"Typ\",color:\"Barva\",height:\"V\\u00fd\\u0161ka\",width:\"\\u0160\\u00ed\\u0159ka\",style:\"Styl\",margin:\"Okraje (margin)\",left:\"Vlevo\",bottom:\"Dole\",right:\"Vpravo\",top:\"Naho\\u0159e\",same:\"Stejn\\u00e9 pro v\\u0161echny\",padding:\"Odsazen\\u00ed (padding)\",box_clear:\"Vy\\u010distit\",box_float:\"Plovouc\\u00ed\",box_height:\"V\\u00fd\\u0161ka\",box_width:\"\\u0160\\u00ed\\u0159ka\",block_display:\"Blokov\\u00e9 zobrazen\\u00ed\",block_whitespace:\"Zalamov\\u00e1n\\u00ed textu\",block_text_indent:\"Odsazen\\u00ed textu\",block_text_align:\"Zarovn\\u00e1n\\u00ed textu\",block_vertical_alignment:\"Vertik\\u00e1ln\\u00ed zarovn\\u00e1n\\u00ed\",block_letterspacing:\"Rozestup znak\\u016f\",block_wordspacing:\"Rozestup slov\",background_vpos:\"Vertik\\u00e1ln\\u00ed um\\u00edst\\u011bn\\u00ed\",background_hpos:\"Horizont\\u00e1ln\\u00ed um\\u00edst\\u011bn\\u00ed\",background_attachment:\"Rolov\\u00e1n\\u00ed\",background_repeat:\"Opakov\\u00e1n\\u00ed\",background_image:\"Obr\\u00e1zek pozad\\u00ed\",background_color:\"Barva pozad\\u00ed\",text_none:\"\\u017e\\u00e1dn\\u00e1\",text_blink:\"blik\\u00e1n\\u00ed\",text_case:\"Velk\\u00e1 p\\u00edsmena\",text_striketrough:\"p\\u0159e\\u0161krtnut\\u00ed\",text_underline:\"podtr\\u017een\\u00ed\",text_overline:\"nadtr\\u017een\\u00ed\",text_decoration:\"Dekorace\",text_color:\"Barva\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/da_dlg.js",
    "content": "tinyMCE.addI18n('da.style_dlg',{\"text_lineheight\":\"Linieh\\u00f8jde\",\"text_variant\":\"Variant\",\"text_style\":\"Stil\",\"text_weight\":\"V\\u00e6gt\",\"text_size\":\"St\\u00f8rrelse\",\"text_font\":\"Skrifttype\",\"text_props\":\"Tekst\",\"positioning_tab\":\"Positionering\",\"list_tab\":\"Liste\",\"border_tab\":\"Kant\",\"box_tab\":\"Boks\",\"block_tab\":\"Blok\",\"background_tab\":\"Baggrund\",\"text_tab\":\"Tekst\",apply:\"Anvend\",title:\"Rediger CSS stil\",clip:\"Klip\",placement:\"Placering\",overflow:\"Overl\\u00f8b\",zindex:\"Z-index\",visibility:\"Synlighed\",\"positioning_type\":\"Type\",position:\"Position\",\"bullet_image\":\"Punktopstillings-billede\",\"list_type\":\"Type\",color:\"Farve\",height:\"H\\u00f8jde\",width:\"Bredde\",style:\"Style\",margin:\"Margin\",left:\"Venstre\",bottom:\"Bund\",right:\"H\\u00f8jre\",top:\"Top\",same:\"Ens for alle\",padding:\"Afstand til indhold\",\"box_clear\":\"Ryd\",\"box_float\":\"Flydende\",\"box_height\":\"H\\u00f8jde\",\"box_width\":\"Bredde\",\"block_display\":\"Vis\",\"block_whitespace\":\"Mellemrum\",\"block_text_indent\":\"Tekstindrykning\",\"block_text_align\":\"Tekstjustering\",\"block_vertical_alignment\":\"Vertikal justering\",\"block_letterspacing\":\"Afstand mellem bogstaver\",\"block_wordspacing\":\"Afstand mellem ord\",\"background_vpos\":\"Vertikal position\",\"background_hpos\":\"Horisontal position\",\"background_attachment\":\"Vedh\\u00e6ftede fil\",\"background_repeat\":\"Gentag\",\"background_image\":\"Baggrundsbillede\",\"background_color\":\"Baggrundsfarve\",\"text_none\":\"ingen\",\"text_blink\":\"blink\",\"text_case\":\"Vesaltilstand\",\"text_striketrough\":\"gennemstreget\",\"text_underline\":\"understreget\",\"text_overline\":\"overstreget\",\"text_decoration\":\"Dekoration\",\"text_color\":\"Farve\",text:\"Tekst\",background:\"Baggrund\",block:\"Blok\",box:\"Boks\",border:\"Kant\",list:\"Liste\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/de_dlg.js",
    "content": "tinyMCE.addI18n('de.style_dlg',{text_lineheight:\"Zeilenh\\u00f6he\",text_variant:\"Variante\",text_style:\"Stil\",text_weight:\"Dicke\",text_size:\"Gr\\u00f6\\u00dfe\",text_font:\"Schriftart\",text_props:\"Text\",positioning_tab:\"Positionierung\",list_tab:\"Liste\",border_tab:\"Rahmen\",box_tab:\"Box\",block_tab:\"Block\",background_tab:\"Hintergrund\",text_tab:\"Text\",apply:\"\\u00dcbernehmen\",title:\"CSS-Styles bearbeiten\",clip:\"Ausschnitt\",placement:\"Platzierung\",overflow:\"Verhalten bei \\u00dcbergr\\u00f6\\u00dfe\",zindex:\"Z-Wert\",visibility:\"Sichtbar\",positioning_type:\"Art der Positionierung\",position:\"Positionierung\",bullet_image:\"Listenpunkt-Grafik\",list_type:\"Listenpunkt-Art\",color:\"Textfarbe\",height:\"H\\u00f6he\",width:\"Breite\",style:\"Format\",margin:\"\\u00c4u\\u00dferer Abstand\",left:\"Links\",bottom:\"Unten\",right:\"Rechts\",top:\"Oben\",same:\"Alle gleich\",padding:\"Innerer Abstand\",box_clear:\"Umflie\\u00dfung verhindern\",box_float:\"Umflie\\u00dfung\",box_height:\"H\\u00f6he\",box_width:\"Breite\",block_display:\"Umbruchverhalten\",block_whitespace:\"Automatischer Umbruch\",block_text_indent:\"Einr\\u00fcckung\",block_text_align:\"Ausrichtung\",block_vertical_alignment:\"Vertikale Ausrichtung\",block_letterspacing:\"Buchstabenabstand\",block_wordspacing:\"Wortabstand\",background_vpos:\"Position Y\",background_hpos:\"Position X\",background_attachment:\"Wasserzeicheneffekt\",background_repeat:\"Wiederholung\",background_image:\"Hintergrundbild\",background_color:\"Hintergrundfarbe\",text_none:\"keine\",text_blink:\"blinkend\",text_case:\"Schreibung\",text_striketrough:\"durchgestrichen\",text_underline:\"unterstrichen\",text_overline:\"\\u00fcberstrichen\",text_decoration:\"Gestaltung\",text_color:\"Farbe\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/el_dlg.js",
    "content": "tinyMCE.addI18n('el.style_dlg',{\"text_lineheight\":\"\\u038e\\u03c8\\u03bf\\u03c2 \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ae\\u03c2\",\"text_variant\":\"\\u03a0\\u03b1\\u03c1\\u03b1\\u03bb\\u03bb\\u03b1\\u03b3\\u03ae\",\"text_style\":\"\\u03a3\\u03c4\\u03c5\\u03bb\",\"text_weight\":\"\\u0392\\u03ac\\u03c1\\u03bf\\u03c2\",\"text_size\":\"\\u039c\\u03ad\\u03b3\\u03b5\\u03b8\\u03bf\\u03c2 \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ac\\u03c4\\u03c9\\u03bd\",\"text_font\":\"\\u0393\\u03c1\\u03b1\\u03bc\\u03bc\\u03b1\\u03c4\\u03bf\\u03c3\\u03b5\\u03b9\\u03c1\\u03ac\",\"text_props\":\"\\u039a\\u03b5\\u03af\\u03bc\\u03b5\\u03bd\\u03bf\",\"positioning_tab\":\"\\u03a4\\u03bf\\u03c0\\u03bf\\u03b8\\u03ad\\u03c4\\u03b7\\u03c3\\u03b7\",\"list_tab\":\"\\u039b\\u03af\\u03c3\\u03c4\\u03b1\",\"border_tab\":\"\\u03a0\\u03bb\\u03b1\\u03af\\u03c3\\u03b9\\u03bf\",\"box_tab\":\"\\u039a\\u03bf\\u03c5\\u03c4\\u03af\",\"block_tab\":\"\\u039c\\u03c0\\u03bb\\u03bf\\u03ba\",\"background_tab\":\"\\u03a6\\u03cc\\u03bd\\u03c4\\u03bf\",\"text_tab\":\"\\u039a\\u03b5\\u03af\\u03bc\\u03b5\\u03bd\\u03bf\",apply:\"\\u0395\\u03c6\\u03b1\\u03c1\\u03bc\\u03bf\\u03b3\\u03ae\",title:\"\\u0395\\u03c0\\u03b5\\u03be\\u03b5\\u03c1\\u03b3\\u03b1\\u03c3\\u03af\\u03b1 \\u03a3\\u03c4\\u03c5\\u03bb CSS\",clip:\"Clip\",placement:\"\\u03a4\\u03bf\\u03c0\\u03bf\\u03b8\\u03ad\\u03c4\\u03b7\\u03c3\\u03b7\",overflow:\"\\u03a5\\u03c0\\u03b5\\u03c1\\u03c7\\u03b5\\u03af\\u03bb\\u03b9\\u03c3\\u03b7\",zindex:\"Z-index\",visibility:\"\\u039f\\u03c1\\u03b1\\u03c4\\u03cc\\u03c4\\u03b7\\u03c4\\u03b1\",\"positioning_type\":\"\\u03a4\\u03cd\\u03c0\\u03bf\\u03c2\",position:\"\\u0398\\u03ad\\u03c3\\u03b7\",\"bullet_image\":\"\\u0395\\u03b9\\u03ba\\u03cc\\u03bd\\u03b1 \\u03c4\\u03b5\\u03bb\\u03b5\\u03af\\u03b1\\u03c2\",\"list_type\":\"\\u03a4\\u03cd\\u03c0\\u03bf\\u03c2\",color:\"\\u03a7\\u03c1\\u03ce\\u03bc\\u03b1\",height:\"\\u038e\\u03c8\\u03bf\\u03c2\",width:\"\\u03a0\\u03bb\\u03ac\\u03c4\\u03bf\\u03c2\",style:\"\\u03a3\\u03c4\\u03c5\\u03bb\",margin:\"\\u03a0\\u03b5\\u03c1\\u03b9\\u03b8\\u03ce\\u03c1\\u03b9\\u03bf\",left:\"\\u0391\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac\",bottom:\"\\u039a\\u03ac\\u03c4\\u03c9\",right:\"\\u0394\\u03b5\\u03be\\u03b9\\u03ac\",top:\"\\u03a0\\u03ac\\u03bd\\u03c9\",same:\"\\u038a\\u03b4\\u03b9\\u03bf \\u03b3\\u03b9\\u03b1 \\u03cc\\u03bb\\u03b1\",padding:\"\\u0393\\u03ad\\u03bc\\u03b9\\u03c3\\u03bc\\u03b1\",\"box_clear\":\"Clear\",\"box_float\":\"Float\",\"box_height\":\"\\u038e\\u03c8\\u03bf\\u03c2\",\"box_width\":\"\\u03a0\\u03bb\\u03ac\\u03c4\\u03bf\\u03c2\",\"block_display\":\"\\u0395\\u03bc\\u03c6\\u03ac\\u03bd\\u03b9\\u03c3\\u03b7\",\"block_whitespace\":\"\\u039a\\u03b5\\u03bd\\u03cc\\u03c2 \\u03c7\\u03ce\\u03c1\\u03bf\\u03c2\",\"block_text_indent\":\"\\u0395\\u03c3\\u03bf\\u03c7\\u03ae \\u03ba\\u03b5\\u03b9\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5\",\"block_text_align\":\"\\u03a3\\u03c4\\u03bf\\u03af\\u03c7\\u03b9\\u03c3\\u03b7 \\u03ba\\u03b5\\u03b9\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5\",\"block_vertical_alignment\":\"\\u039a\\u03b1\\u03c4\\u03b1\\u03ba\\u03cc\\u03c1\\u03c5\\u03c6\\u03b7 \\u03c3\\u03c4\\u03bf\\u03af\\u03c7\\u03b9\\u03c3\\u03b7\",\"block_letterspacing\":\"\\u0391\\u03c0\\u03cc\\u03c3\\u03c4\\u03b1\\u03c3\\u03b7 \\u03c7\\u03b1\\u03c1\\u03b1\\u03ba\\u03c4\\u03ae\\u03c1\\u03c9\\u03bd\",\"block_wordspacing\":\"\\u0391\\u03c0\\u03cc\\u03c3\\u03c4\\u03b1\\u03c3\\u03b7 \\u03bb\\u03ad\\u03be\\u03b5\\u03c9\\u03bd\",\"background_vpos\":\"\\u039a\\u03b1\\u03c4\\u03b1\\u03ba\\u03cc\\u03c1\\u03c5\\u03c6\\u03b7 \\u03b8\\u03ad\\u03c3\\u03b7\",\"background_hpos\":\"\\u039f\\u03c1\\u03b9\\u03b6\\u03cc\\u03bd\\u03c4\\u03b9\\u03b1 \\u03b8\\u03ad\\u03c3\\u03b7\",\"background_attachment\":\"\\u03a0\\u03c1\\u03bf\\u03c3\\u03ac\\u03c1\\u03c4\\u03b7\\u03bc\\u03b1\",\"background_repeat\":\"\\u0395\\u03c0\\u03b1\\u03bd\\u03ac\\u03bb\\u03b7\\u03c8\\u03b7\",\"background_image\":\"\\u0395\\u03b9\\u03ba\\u03cc\\u03bd\\u03b1 \\u03c6\\u03cc\\u03bd\\u03c4\\u03bf\\u03c5\",\"background_color\":\"\\u03a7\\u03c1\\u03ce\\u03bc\\u03b1 \\u03c6\\u03cc\\u03bd\\u03c4\\u03bf\\u03c5\",\"text_none\":\"\\u039a\\u03b1\\u03bc\\u03af\\u03b1\",\"text_blink\":\"\\u039d\\u03b1 \\u03b1\\u03bd\\u03b1\\u03b2\\u03bf\\u03c3\\u03b2\\u03ae\\u03bd\\u03b5\\u03b9\",\"text_case\":\"\\u039a\\u03b5\\u03c6./\\u039c\\u03b9\\u03ba\\u03c1\\u03ac\",\"text_striketrough\":\"\\u0394\\u03b9\\u03b1\\u03b3\\u03c1\\u03ac\\u03bc\\u03bc\\u03b9\\u03c3\\u03b7\",\"text_underline\":\"\\u03a5\\u03c0\\u03bf\\u03b3\\u03c1\\u03ac\\u03bc\\u03bc\\u03b9\\u03c3\\u03b7\",\"text_overline\":\"\\u03a5\\u03c0\\u03b5\\u03c1\\u03b3\\u03c1\\u03ac\\u03bc\\u03bc\\u03b9\\u03c3\\u03b7\",\"text_decoration\":\"\\u0394\\u03b9\\u03b1\\u03ba\\u03cc\\u03c3\\u03bc\\u03b7\\u03c3\\u03b7\",\"text_color\":\"\\u03a7\\u03c1\\u03ce\\u03bc\\u03b1\",text:\"\\u039a\\u03b5\\u03af\\u03bc\\u03b5\\u03bd\\u03bf\",background:\"\\u03a6\\u03cc\\u03bd\\u03c4\\u03bf\",box:\"\\u039a\\u03bf\\u03c5\\u03c4\\u03af\",border:\"\\u03a0\\u03b5\\u03c1\\u03af\\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03b1\",list:\"\\u039b\\u03af\\u03c3\\u03c4\\u03b1\",block:\"Block\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/en_dlg.js",
    "content": "tinyMCE.addI18n('en.style_dlg',{\"text_lineheight\":\"Line Height\",\"text_variant\":\"Variant\",\"text_style\":\"Style\",\"text_weight\":\"Weight\",\"text_size\":\"Size\",\"text_font\":\"Font\",\"text_props\":\"Text\",\"positioning_tab\":\"Positioning\",\"list_tab\":\"List\",\"border_tab\":\"Border\",\"box_tab\":\"Box\",\"block_tab\":\"Block\",\"background_tab\":\"Background\",\"text_tab\":\"Text\",apply:\"Apply\",title:\"Edit CSS Style\",clip:\"Clip\",placement:\"Placement\",overflow:\"Overflow\",zindex:\"Z-index\",visibility:\"Visibility\",\"positioning_type\":\"Type\",position:\"Position\",\"bullet_image\":\"Bullet Image\",\"list_type\":\"Type\",color:\"Color\",height:\"Height\",width:\"Width\",style:\"Style\",margin:\"Margin\",left:\"Left\",bottom:\"Bottom\",right:\"Right\",top:\"Top\",same:\"Same for All\",padding:\"Padding\",\"box_clear\":\"Clear\",\"box_float\":\"Float\",\"box_height\":\"Height\",\"box_width\":\"Width\",\"block_display\":\"Display\",\"block_whitespace\":\"Whitespace\",\"block_text_indent\":\"Text Indent\",\"block_text_align\":\"Text Align\",\"block_vertical_alignment\":\"Vertical Alignment\",\"block_letterspacing\":\"Letter Spacing\",\"block_wordspacing\":\"Word Spacing\",\"background_vpos\":\"Vertical Position\",\"background_hpos\":\"Horizontal Position\",\"background_attachment\":\"Attachment\",\"background_repeat\":\"Repeat\",\"background_image\":\"Background Image\",\"background_color\":\"Background Color\",\"text_none\":\"None\",\"text_blink\":\"Blink\",\"text_case\":\"Case\",\"text_striketrough\":\"Strikethrough\",\"text_underline\":\"Underline\",\"text_overline\":\"Overline\",\"text_decoration\":\"Decoration\",\"text_color\":\"Color\",text:\"Text\",background:\"Background\",block:\"Block\",box:\"Box\",border:\"Border\",list:\"List\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/es_dlg.js",
    "content": "tinyMCE.addI18n('es.style_dlg',{text_lineheight:\"Ancho de la fila\",text_variant:\"Variante\",text_style:\"Estilo\",text_weight:\"Peso\",text_size:\"Tama\\u00f1o\",text_font:\"Fuente\",text_props:\"Texto\",positioning_tab:\"Posici\\u00f3n\",list_tab:\"Lista\",border_tab:\"Borde\",box_tab:\"Caja\",block_tab:\"Bloque\",background_tab:\"Fondo\",text_tab:\"Texto\",apply:\"Aplicar\",title:\"Editar Estilo CSS\",clip:\"Clip\",placement:\"Placement\",overflow:\"Overflow\",zindex:\"Z-index\",visibility:\"Visibilidad\",positioning_type:\"Tipo\",position:\"Posici\\u00f3n\",bullet_image:\"Imagen de la vi\\u00f1eta\",list_type:\"Tipo\",color:\"Color\",height:\"Alto\",width:\"Ancho\",style:\"Estilo\",margin:\"Margen\",left:\"Izquierda\",bottom:\"Debajo\",right:\"Derecha\",top:\"Arriba\",same:\"Lo mismo en todos\",padding:\"Padding\",box_clear:\"Clear\",box_float:\"Float\",box_height:\"Alto\",box_width:\"Ancho\",block_display:\"Display\",block_whitespace:\"Espacio en blanco\",block_text_indent:\"Sangr\\u00eda\",block_text_align:\"Alineaci\\u00f3n del texto\",block_vertical_alignment:\"Alineaci\\u00f3n vertical\",block_letterspacing:\"Espacio entre letra\",block_wordspacing:\"Espacio entre palabra\",background_vpos:\"Posici\\u00f3n vertical\",background_hpos:\"Posici\\u00f3n horizontal\",background_attachment:\"Adjunto\",background_repeat:\"Repetici\\u00f3n\",background_image:\"Imagen de fondo\",background_color:\"Color de fondo\",text_none:\"Ninguno\",text_blink:\"Parpadeo\",text_case:\"Min\\u00fas./May\\u00fas.\",text_striketrough:\"Tachado\",text_underline:\"Subrayado\",text_overline:\"Subrayado superior\",text_decoration:\"Decorativos\",text_color:\"Color\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/fr_dlg.js",
    "content": "tinyMCE.addI18n('fr.style_dlg',{text_lineheight:\"Hauteur de ligne\",text_variant:\"Variante\",text_style:\"Style\",text_weight:\"Gras\",text_size:\"Taille\",text_font:\"Police\",text_props:\"Texte\",positioning_tab:\"Positionnement\",list_tab:\"Liste\",border_tab:\"Bordure\",box_tab:\"Bo\\u00eete\",block_tab:\"Bloc\",background_tab:\"Fond\",text_tab:\"Texte\",apply:\"Appliquer\",title:\"\\u00c9diter la feuille de style\",clip:\"Clip\",placement:\"Placement\",overflow:\"D\\u00e9bordement\",zindex:\"Z-index\",visibility:\"Visibilit\\u00e9\",positioning_type:\"Type\",position:\"Position\",bullet_image:\"Image de puce\",list_type:\"Type\",color:\"Couleur\",height:\"Hauteur\",width:\"Largeur\",style:\"Style\",margin:\"Marge\",left:\"Gauche\",bottom:\"Bas\",right:\"Droit\",top:\"Haut\",same:\"Identique pour tous\",padding:\"Espacement\",box_clear:\"Vider\",box_float:\"Flottant\",box_height:\"Hauteur\",box_width:\"Largeur\",block_display:\"Affichage\",block_whitespace:\"Fin de ligne\",block_text_indent:\"Indentation du texte\",block_text_align:\"Alignement du texte\",block_vertical_alignment:\"Alignement vertical\",block_letterspacing:\"Espacement des lettres\",block_wordspacing:\"Espacement des mots \",background_vpos:\"Position verticale\",background_hpos:\"Position horizontale\",background_attachment:\"Attachement\",background_repeat:\"R\\u00e9p\\u00e9ter\",background_image:\"Image de fond\",background_color:\"Couleur de fond\",text_none:\"aucun\",text_blink:\"clignotant\",text_case:\"Casse\",text_striketrough:\"barr\\u00e9\",text_underline:\"soulign\\u00e9\",text_overline:\"ligne au-dessus\",text_decoration:\"D\\u00e9coration\",text_color:\"Couleur\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/he_dlg.js",
    "content": "tinyMCE.addI18n('he.style_dlg',{\"text_lineheight\":\"\\u05d2\\u05d5\\u05d1\\u05d4 \\u05e9\\u05d5\\u05e8\\u05d4\",\"text_variant\":\"\\u05de\\u05e9\\u05ea\\u05e0\\u05d4\",\"text_style\":\"\\u05e1\\u05d2\\u05e0\\u05d5\\u05df\",\"text_weight\":\"\\u05e2\\u05d5\\u05d1\\u05d9\",\"text_size\":\"\\u05d2\\u05d5\\u05d3\\u05dc\",\"text_font\":\"\\u05e4\\u05d5\\u05e0\\u05d8\",\"text_props\":\"\\u05d8\\u05e7\\u05e1\\u05d8\",\"positioning_tab\":\"\\u05de\\u05d9\\u05e7\\u05d5\\u05dd\",\"list_tab\":\"\\u05e8\\u05e9\\u05d9\\u05de\\u05d4\",\"border_tab\":\"\\u05d2\\u05d1\\u05d5\\u05dc\",\"box_tab\":\"\\u05e7\\u05d5\\u05e4\\u05e1\\u05d0\",\"block_tab\":\"\\u05d7\\u05e1\\u05d5\\u05dd\",\"background_tab\":\"\\u05e8\\u05e7\\u05e2\",\"text_tab\":\"\\u05d8\\u05e7\\u05e1\\u05d8\",apply:\"\\u05d4\\u05d7\\u05dc\",title:\"\\u05e2\\u05d3\\u05db\\u05d5\\u05df \\u05d4\\u05d2\\u05d3\\u05e8\\u05d5\\u05ea CSS\",clip:\"\\u05e7\\u05dc\\u05d9\\u05e4\",placement:\"\\u05de\\u05d9\\u05e7\\u05d5\\u05dd\",overflow:\"\\u05d2\\u05dc\\u05d9\\u05e9\\u05d4\",zindex:\"Z-index\",visibility:\"\\u05e8\\u05d0\\u05d5\\u05ea\",\"positioning_type\":\"\\u05e1\\u05d5\\u05d2\",position:\"\\u05de\\u05d9\\u05e7\\u05d5\\u05dd\",\"bullet_image\":\"\\u05ea\\u05de\\u05d5\\u05e0\\u05ea \\u05ea\\u05d1\\u05dc\\u05d9\\u05d8\",\"list_type\":\"\\u05e1\\u05d5\\u05d2\",color:\"\\u05e6\\u05d1\\u05e2\",height:\"\\u05d2\\u05d5\\u05d1\\u05d4\",width:\"\\u05e8\\u05d5\\u05d7\\u05d1\",style:\"\\u05e1\\u05d2\\u05e0\\u05d5\\u05df\",margin:\"\\u05e9\\u05d5\\u05dc\\u05d9\\u05d9\\u05dd\",left:\"\\u05e9\\u05de\\u05d0\\u05dc\",bottom:\"\\u05ea\\u05d7\\u05ea\\u05d9\\u05ea\",right:\"\\u05d9\\u05de\\u05d9\\u05df\",top:\"\\u05e2\\u05dc\\u05d9\\u05d5\\u05df\",same:\"\\u05d0\\u05d5\\u05ea\\u05d5 \\u05d3\\u05d1\\u05e8 \\u05e2\\u05d1\\u05d5\\u05e8 \\u05db\\u05d5\\u05dc\\u05dd\",padding:\"\\u05e8\\u05d9\\u05e4\\u05d5\\u05d3\",\"box_clear\":\"\\u05e0\\u05e7\\u05d4\",\"box_float\":\"\\u05d4\\u05e6\\u05e4\\u05d4\",\"box_height\":\"\\u05d2\\u05d5\\u05d1\\u05d4\",\"box_width\":\"\\u05e8\\u05d5\\u05d7\\u05d1\",\"block_display\":\"\\u05d4\\u05e6\\u05d2\",\"block_whitespace\":\"\\u05e8\\u05d5\\u05d5\\u05d7\",\"block_text_indent\":\"\\u05d4\\u05d6\\u05d7\\u05d4\",\"block_text_align\":\"\\u05d9\\u05d9\\u05e9\\u05d5\\u05e8 \\u05d8\\u05e7\\u05e1\\u05d8\",\"block_vertical_alignment\":\"\\u05d9\\u05d9\\u05e9\\u05d5\\u05e8 \\u05d0\\u05e0\\u05db\\u05d9\",\"block_letterspacing\":\"\\u05de\\u05e8\\u05d7\\u05e7 \\u05d1\\u05d9\\u05df \\u05d0\\u05d5\\u05ea\\u05d9\\u05d5\\u05ea\",\"block_wordspacing\":\"\\u05de\\u05e8\\u05d7\\u05e7 \\u05d1\\u05d9\\u05df \\u05de\\u05d9\\u05dc\\u05d9\\u05dd\",\"background_vpos\":\"\\u05de\\u05d9\\u05e7\\u05d5\\u05dd \\u05e8\\u05d5\\u05d7\\u05d1\\u05d9\",\"background_hpos\":\"\\u05de\\u05d9\\u05e7\\u05d5\\u05dd \\u05d0\\u05d5\\u05e4\\u05e7\\u05d9\",\"background_attachment\":\"\\u05e7\\u05d1\\u05e6\\u05d9\\u05dd \\u05de\\u05e6\\u05d5\\u05e8\\u05e4\\u05d9\\u05dd\",\"background_repeat\":\"\\u05d7\\u05d6\\u05d5\\u05e8\",\"background_image\":\"\\u05ea\\u05de\\u05d5\\u05e0\\u05ea \\u05e8\\u05e7\\u05e2\",\"background_color\":\"\\u05e6\\u05d1\\u05e2 \\u05e8\\u05e7\\u05e2\",\"text_none\":\"\\u05dc\\u05dc\\u05d0\",\"text_blink\":\"\\u05d4\\u05d1\\u05d4\\u05d5\\u05d1\",\"text_case\":\"Case\",\"text_striketrough\":\"\\u05e7\\u05d5 \\u05d7\\u05d5\\u05e6\\u05d4\",\"text_underline\":\"\\u05e9\\u05d5\\u05e8\\u05d4 \\u05de\\u05ea\\u05d7\\u05ea\",\"text_overline\":\"\\u05e9\\u05d5\\u05e8\\u05d4 \\u05de\\u05e2\\u05dc\",\"text_decoration\":\"\\u05e2\\u05d9\\u05e6\\u05d5\\u05d1\",\"text_color\":\"\\u05e6\\u05d1\\u05e2\",text:\"\\u05d8\\u05e7\\u05e1\\u05d8\",background:\"\\u05e8\\u05e7\\u05e2\",block:\"\\u05d1\\u05dc\\u05d5\\u05e7\",box:\"\\u05ea\\u05d9\\u05d1\\u05d4\",border:\"\\u05d2\\u05d1\\u05d5\\u05dc\",list:\"\\u05e8\\u05e9\\u05d9\\u05de\\u05d4\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/hr_dlg.js",
    "content": "tinyMCE.addI18n('hr.style_dlg',{text_lineheight:\"Line height\",text_variant:\"Variant\",text_style:\"Style\",text_weight:\"Weight\",text_size:\"Size\",text_font:\"Font\",text_props:\"Text\",positioning_tab:\"Positioning\",list_tab:\"List\",border_tab:\"Border\",box_tab:\"Box\",block_tab:\"Block\",background_tab:\"Background\",text_tab:\"Text\",apply:\"Apply\",title:\"Edit CSS Style\",clip:\"Clip\",placement:\"Placement\",overflow:\"Overflow\",zindex:\"Z-index\",visibility:\"Visibility\",positioning_type:\"Type\",position:\"Position\",bullet_image:\"Bullet image\",list_type:\"Type\",color:\"Color\",height:\"Height\",width:\"Width\",style:\"Style\",margin:\"Margin\",left:\"Left\",bottom:\"Bottom\",right:\"Right\",top:\"Top\",same:\"Same for all\",padding:\"Padding\",box_clear:\"Clear\",box_float:\"Float\",box_height:\"Height\",box_width:\"Width\",block_display:\"Display\",block_whitespace:\"Whitespace\",block_text_indent:\"Text indent\",block_text_align:\"Text align\",block_vertical_alignment:\"Vertical alignment\",block_letterspacing:\"Letter spacing\",block_wordspacing:\"Word spacing\",background_vpos:\"Vertical position\",background_hpos:\"Horizontal position\",background_attachment:\"Attachment\",background_repeat:\"Repeat\",background_image:\"Background image\",background_color:\"Background color\",text_none:\"none\",text_blink:\"blink\",text_case:\"Case\",text_striketrough:\"strikethrough\",text_underline:\"underline\",text_overline:\"overline\",text_decoration:\"Decoration\",text_color:\"Color\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/hu_dlg.js",
    "content": "tinyMCE.addI18n('hu.style_dlg',{\"text_lineheight\":\"Sormagass\\u00e1g\",\"text_variant\":\"V\\u00e1ltozat\",\"text_style\":\"St\\u00edlus\",\"text_weight\":\"Sz\\u00e9less\\u00e9g\",\"text_size\":\"M\\u00e9ret\",\"text_font\":\"Bet\\u0171t\\u00edpus\",\"text_props\":\"Sz\\u00f6veg\",\"positioning_tab\":\"Poz\\u00edci\\u00f3\",\"list_tab\":\"Lista\",\"border_tab\":\"Keret\",\"box_tab\":\"Doboz\",\"block_tab\":\"Blokk\",\"background_tab\":\"H\\u00e1tt\\u00e9r\",\"text_tab\":\"Sz\\u00f6veg\",apply:\"Alkalmaz\",title:\"CSS st\\u00edlus szerkest\\u00e9se\",clip:\"Lev\\u00e1g\\u00e1s\",placement:\"Elhelyez\\u00e9s\",overflow:\"Kifut\\u00e1s\",zindex:\"Z-index\",visibility:\"L\\u00e1that\\u00f3s\\u00e1g\",\"positioning_type\":\"T\\u00edpus\",position:\"Poz\\u00edci\\u00f3\",\"bullet_image\":\"Elemk\\u00e9p\",\"list_type\":\"T\\u00edpus\",color:\"Sz\\u00edn\",height:\"Magass\\u00e1g\",width:\"Sz\\u00e9less\\u00e9g\",style:\"St\\u00edlus\",margin:\"Marg\\u00f3\",left:\"Balra\",bottom:\"Lent\",right:\"Jobbra\",top:\"Fel\\u00fcl\",same:\"Mindenhol ugyanaz\",padding:\"Bels\\u0151 marg\\u00f3\",\"box_clear\":\"Lebeg\\u00e9s (float) t\\u00f6rl\\u00e9se\",\"box_float\":\"Lebeg\\u00e9s (float)\",\"box_height\":\"Magass\\u00e1g\",\"box_width\":\"Sz\\u00e9less\\u00e9g\",\"block_display\":\"Megjelen\\u00edt\\u00e9s\",\"block_whitespace\":\"T\\u00e9rk\\u00f6z\",\"block_text_indent\":\"Sz\\u00f6veg beh\\u00faz\\u00e1sa\",\"block_text_align\":\"Sz\\u00f6veg igaz\\u00edt\\u00e1sa\",\"block_vertical_alignment\":\"F\\u00fcgg\\u0151leges igaz\\u00edt\\u00e1s\",\"block_letterspacing\":\"Bet\\u0171t\\u00e1vols\\u00e1g\",\"block_wordspacing\":\"Sz\\u00f3t\\u00e1vols\\u00e1g\",\"background_vpos\":\"F\\u00fcgg\\u0151leges hely\",\"background_hpos\":\"V\\u00edzszintes hely\",\"background_attachment\":\"Csatolm\\u00e1ny\",\"background_repeat\":\"Ism\\u00e9tl\\u00e9s\",\"background_image\":\"H\\u00e1tt\\u00e9rk\\u00e9p\",\"background_color\":\"H\\u00e1tt\\u00e9rsz\\u00edn\",\"text_none\":\"egyik sem\",\"text_blink\":\"villog\\u00e1s\",\"text_case\":\"eset\",\"text_striketrough\":\"\\u00e1th\\u00fazott\",\"text_underline\":\"al\\u00e1h\\u00fazott\",\"text_overline\":\"fel\\u00fclh\\u00fazott\",\"text_decoration\":\"dekor\\u00e1ci\\u00f3\",\"text_color\":\"sz\\u00edn\",text:\"Sz\\u00f6veg\",background:\"H\\u00e1tt\\u00e9r\",block:\"Blokk\",box:\"Doboz\",border:\"Keret\",list:\"Lista\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/hy_dlg.js",
    "content": "tinyMCE.addI18n('hy.style_dlg',{\"text_lineheight\":\"\\u054f\\u0578\\u0572\\u056b \\u0562\\u0561\\u0580\\u0571\\u0580\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\",\"text_variant\":\"Variant\",\"text_style\":\"\\u0548\\u0573\",\"text_weight\":\"\\u0540\\u0561\\u057d\\u057f\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\",\"text_size\":\"\\u0549\\u0561\\u0583\\u057d\",\"text_font\":\"\\u054f\\u0561\\u057c\\u0561\\u057f\\u0565\\u057d\\u0561\\u056f\",\"text_props\":\"\\u054f\\u0565\\u0584\\u057d\\u057f\",\"positioning_tab\":\"\\u054f\\u0565\\u0572\\u0561\\u056f\\u0561\\u0575\\u0578\\u0582\\u0574\",\"list_tab\":\"\\u0551\\u0578\\u0582\\u0581\\u0561\\u056f\",\"border_tab\":\"\\u0535\\u0566\\u0580\",\"box_tab\":\"Box\",\"block_tab\":\"\\u0532\\u056c\\u0578\\u056f\",\"background_tab\":\"\\u0556\\u0578\\u0576\",\"text_tab\":\"\\u054f\\u0565\\u0584\\u057d\\u057f\",apply:\"\\u0540\\u0561\\u057d\\u057f\\u0561\\u057f\\u0565\\u056c\",title:\"CSS \\u0578\\u0573\\u0565\\u0580\\u056b \\u056d\\u0574\\u0562\\u0561\\u0563\\u0580\\u0578\\u0582\\u0574\",clip:\"Clip\",placement:\"Placement\",overflow:\"Overflow\",zindex:\"Z-index\",visibility:\"\\u054f\\u0565\\u057d\\u0561\\u0576\\u0565\\u056c\\u056b\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\",\"positioning_type\":\"\\u054f\\u0565\\u057d\\u0561\\u056f\",position:\"\\u0534\\u056b\\u0580\\u0584\",\"bullet_image\":\"Bullet image\",\"list_type\":\"\\u054f\\u0565\\u057d\\u0561\\u056f\",color:\"\\u0533\\u0578\\u0582\\u0575\\u0576\",height:\"\\u0532\\u0561\\u0580\\u0571\\u0580\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\",width:\"\\u053c\\u0561\\u0575\\u0576\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\",style:\"\\u0548\\u0573\",margin:\"Margin\",left:\"\\u0541\\u0561\\u056d\\u056b\\u0581\",bottom:\"\\u0546\\u0565\\u0580\\u0584\\u0587\\u056b\\u0581\",right:\"\\u0531\\u057b\\u056b\\u0581\",top:\"\\u054e\\u0565\\u0580\\u0587\\u056b\\u0581\",same:\"\\u0544\\u056b\\u0587\\u0576\\u0578\\u0582\\u0575\\u0576 \\u0561\\u0574\\u0565\\u0576 \\u056b\\u0576\\u0579\\u056b \\u0570\\u0561\\u0574\\u0561\\u0580\",padding:\"Padding\",\"box_clear\":\"Clear\",\"box_float\":\"Float\",\"box_height\":\"\\u0532\\u0561\\u0580\\u0571\\u0580\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\",\"box_width\":\"\\u053c\\u0561\\u0575\\u0576\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\",\"block_display\":\"Display\",\"block_whitespace\":\"Whitespace\",\"block_text_indent\":\"Text indent\",\"block_text_align\":\"\\u054f\\u0565\\u0584\\u057d\\u057f\\u056b \\u0570\\u0561\\u057e\\u0561\\u057d\\u0561\\u0580\\u0565\\u0581\\u0578\\u0582\\u0574\",\"block_vertical_alignment\":\"\\u0548\\u0582\\u0572\\u0572\\u0561\\u0570\\u0561\\u0575\\u0561\\u0581 \\u0570\\u0561\\u057e\\u0561\\u057d\\u0561\\u0580\\u0565\\u0581\\u0578\\u0582\\u0574\",\"block_letterspacing\":\"\\u0532\\u0561\\u0581\\u0561\\u0580\\u056f\\u0576\\u0565\\u0580 \\u057f\\u0561\\u057c\\u0565\\u0580\\u056b \\u0574\\u056b\\u057b\\u0587\",\"block_wordspacing\":\"\\u0532\\u0561\\u0581\\u0561\\u0580\\u056f\\u0576\\u0565\\u0580 \\u0562\\u0561\\u057c\\u0565\\u0580\\u056b \\u0574\\u056b\\u057b\\u0587\",\"background_vpos\":\"\\u0548\\u0582\\u0572\\u0572\\u0561\\u0570\\u0561\\u0575\\u0561\\u0581 \\u057f\\u0565\\u0572\\u0561\\u056f\\u0561\\u0575\\u0578\\u0582\\u0574\",\"background_hpos\":\"\\u0540\\u0578\\u0580\\u056b\\u0566\\u0578\\u0576\\u0561\\u056f\\u0561\\u0576 \\u057f\\u0565\\u0572\\u0561\\u056f\\u0561\\u0575\\u0578\\u0582\\u0574\",\"background_attachment\":\"Attachment\",\"background_repeat\":\"\\u053f\\u0580\\u056f\\u0576\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\",\"background_image\":\"\\u0556\\u0578\\u0576\\u0561\\u0575\\u056b\\u0576 \\u0576\\u056f\\u0561\\u0580\",\"background_color\":\"\\u0556\\u0578\\u0576\\u056b \\u0563\\u0578\\u0582\\u0575\\u0576\",\"text_none\":\"\\u0578\\u0579\\u056b\\u0576\\u0579\",\"text_blink\":\"\\u0569\\u0561\\u0580\\u0569\\u0578\\u0582\\u0574\\u0576\\u0565\\u0580\",\"text_case\":\"Case\",\"text_striketrough\":\"\\u0561\\u0580\\u057f\\u0561\\u0563\\u056e\\u057e\\u0561\\u056e\",\"text_underline\":\"\\u057d\\u057f\\u0578\\u0580\\u056b\\u0576 \\u0563\\u056b\\u056e\",\"text_overline\":\"\\u057e\\u0565\\u0580\\u056b\\u0576 \\u0563\\u056b\\u056e\",\"text_decoration\":\"\\u0541\\u0587\\u0561\\u057e\\u0578\\u0580\\u0578\\u0582\\u0574\",\"text_color\":\"\\u0533\\u0578\\u0582\\u0575\\u0576\",text:\"Text\",background:\"Background\",block:\"Block\",box:\"Box\",border:\"Border\",list:\"List\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/it_dlg.js",
    "content": "tinyMCE.addI18n('it.style_dlg',{\"text_lineheight\":\"Altezza linea\",\"text_variant\":\"Variante\",\"text_style\":\"Stile\",\"text_weight\":\"Spessore\",\"text_size\":\"Dimensione\",\"text_font\":\"Carattere\",\"text_props\":\"Testo\",\"positioning_tab\":\"Posizionamento\",\"list_tab\":\"Liste\",\"border_tab\":\"Bordi\",\"box_tab\":\"Contenitore\",\"block_tab\":\"Blocco\",\"background_tab\":\"Sfondo\",\"text_tab\":\"Testo\",apply:\"Applica\",title:\"Modifica stile CSS\",clip:\"Clip\",placement:\"Piazzamento\",overflow:\"Overflow\",zindex:\"Z-index\",visibility:\"Visibilit\\u00e0\",\"positioning_type\":\"Tipo\",position:\"Posizione\",\"bullet_image\":\"Immagine Punto\",\"list_type\":\"Tipo\",color:\"Colore\",height:\"Altezza\",width:\"Larghezza\",style:\"Stile\",margin:\"Margine\",left:\"Sinistro\",bottom:\"Inferiore\",right:\"Destro\",top:\"Superiore\",same:\"Uguale per tutti\",padding:\"Spazio dal bordo\",\"box_clear\":\"Pulito\",\"box_float\":\"Fluttuante\",\"box_height\":\"Altezza\",\"box_width\":\"Larghezza\",\"block_display\":\"Visualizzazione\",\"block_whitespace\":\"Whitespace\",\"block_text_indent\":\"Indentazione testo\",\"block_text_align\":\"Allineamento testo\",\"block_vertical_alignment\":\"Allineamento verticale\",\"block_letterspacing\":\"Spaziatura caratteri\",\"block_wordspacing\":\"Spaziatura parole\",\"background_vpos\":\"Posizione verticale\",\"background_hpos\":\"Posizione orizzontale\",\"background_attachment\":\"Allegato\",\"background_repeat\":\"Repetizione\",\"background_image\":\"Immagine sfondo\",\"background_color\":\"Colore sfondo\",\"text_none\":\"nessuna\",\"text_blink\":\"lampeggiante\",\"text_case\":\"Tipo\",\"text_striketrough\":\"barrato\",\"text_underline\":\"sottolineato\",\"text_overline\":\"sopralineato\",\"text_decoration\":\"Decorazione\",\"text_color\":\"Colore\",text:\"Testo\",background:\"Sfondo\",block:\"Blocco\",box:\"Box\",border:\"Bordo\",list:\"Lista\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/ka_dlg.js",
    "content": "tinyMCE.addI18n('ka.style_dlg',{\"text_lineheight\":\"\\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d8\\u10e1 \\u10e1\\u10d8\\u10db\\u10d0\\u10e6\\u10da\\u10d4\",\"text_variant\":\"\\u10d5\\u10d0\\u10e0\\u10d8\\u10d0\\u10dc\\u10e2\\u10d8\",\"text_style\":\"\\u10e1\\u10e2\\u10d8\\u10da\\u10d8\",\"text_weight\":\"\\u10e1\\u10d8\\u10e1\\u10e5\\u10d4\",\"text_size\":\"\\u10d6\\u10dd\\u10db\\u10d0\",\"text_font\":\"\\u10e8\\u10e0\\u10d8\\u10e4\\u10e2\\u10d8\",\"text_props\":\"\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\",\"positioning_tab\":\"\\u10de\\u10dd\\u10d6\\u10d8\\u10ea\\u10d8\\u10dd\\u10dc\\u10d8\\u10e0\\u10d4\\u10d1\\u10d0\",\"list_tab\":\"\\u10e1\\u10d8\\u10d0\",\"border_tab\":\"\\u10e1\\u10d0\\u10d6\\u10e6\\u10d5\\u10d0\\u10e0\\u10d8\",\"box_tab\":\"\\u10d9\\u10d8\\u10d3\\u10d4\\u10d4\\u10d1\\u10d8\",\"block_tab\":\"\\u10d1\\u10da\\u10dd\\u10d9\\u10d8\",\"background_tab\":\"\\u10e4\\u10dd\\u10dc\\u10d8\",\"text_tab\":\"\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\",apply:\"\\u10d2\\u10d0\\u10db\\u10dd\\u10d5\\u10d8\\u10e7\\u10d4\\u10dc\\u10dd\\u10d7\",title:\"CSS \\u10e1\\u10e2\\u10d8\\u10da\\u10d8\\u10e1 \\u10e0\\u10d4\\u10d3\\u10d0\\u10e5\\u10e2\\u10dd\\u10e0\\u10d8\",clip:\"\\u10db\\u10dd\\u10d9\\u10d5\\u10d4\\u10d7\\u10d0\",placement:\"\\u10d2\\u10d0\\u10dc\\u10d7\\u10d0\\u10d5\\u10e1\\u10d4\\u10d1\\u10d0\",overflow:\"\\u10d2\\u10d0\\u10d3\\u10d0\\u10d5\\u10e1\\u10d4\\u10d1\\u10d0\",zindex:\"Z-\\u10d8\\u10dc\\u10d3\\u10d4\\u10e5\\u10e1\\u10d8\",visibility:\"\\u10ee\\u10d8\\u10da\\u10d5\\u10d0\\u10d3\\u10dd\\u10d1\\u10d0\",\"positioning_type\":\"\\u10e2\\u10d8\\u10de\\u10d8\",position:\"\\u10de\\u10dd\\u10d6\\u10d8\\u10ea\\u10d8\\u10d0\",\"bullet_image\":\"\\u10db\\u10d0\\u10e0\\u10d9\\u10d4\\u10e0\\u10d8\",\"list_type\":\"\\u10e2\\u10d8\\u10de\\u10d8\",color:\"\\u10e4\\u10d4\\u10e0\\u10d8\",height:\"\\u10e1\\u10d8\\u10db\\u10d0\\u10e6\\u10da\\u10d4\",width:\"\\u10e1\\u10d8\\u10d2\\u10d0\\u10dc\\u10d4\",style:\"\\u10e1\\u10e2\\u10d8\\u10da\\u10d8\",margin:\"\\u10d3\\u10d0\\u10e8\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\",left:\"\\u10db\\u10d0\\u10e0\\u10ea\\u10ee\\u10dc\\u10d8\\u10d5\",bottom:\"\\u10e5\\u10d5\\u10d4\\u10db\\u10dd\\u10d7\",right:\"\\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10dc\\u10d8\\u10d5\",top:\"\\u10d6\\u10d4\\u10db\\u10dd\\u10d7\",same:\"\\u10e7\\u10d5\\u10d4\\u10da\\u10d0\\u10e1\\u10d7\\u10d5\\u10d8\\u10e1 \\u10d4\\u10e0\\u10d7\\u10dc\\u10d0\\u10d4\\u10e0\\u10d0\\u10d3\",padding:\"\\u10db\\u10d8\\u10dc\\u10d3\\u10d5\\u10e0\\u10d4\\u10d1\\u10d8\",\"box_clear\":\"\\u10db\\u10dd\\u10e1\\u10e3\\u10e4\\u10d7\\u10d0\\u10d5\\u10d4\\u10d1\\u10d0\",\"box_float\":\"\\u10db\\u10dd\\u10ea\\u10e3\\u10e0\\u10d0\\u10d5\\u10d4\",\"box_height\":\"\\u10e1\\u10d8\\u10db\\u10d0\\u10e6\\u10da\\u10d4\",\"box_width\":\"\\u10e1\\u10d8\\u10d2\\u10d0\\u10dc\\u10d4\",\"block_display\":\"\\u10d0\\u10e1\\u10d0\\u10ee\\u10d5\\u10d0\",\"block_whitespace\":\"\\u10e1\\u10d8\\u10d5\\u10e0\\u10ea\\u10d4\",\"block_text_indent\":\"\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\\u10e1 \\u10d3\\u10d0\\u10e8\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\",\"block_text_align\":\"\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\\u10e1 \\u10d2\\u10d0\\u10e1\\u10ec\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\",\"block_vertical_alignment\":\"\\u10d5\\u10d4\\u10e0\\u10e2\\u10d8\\u10d9\\u10d0\\u10da\\u10e3\\u10e0\\u10d8 \\u10d2\\u10d0\\u10e1\\u10ec\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\",\"block_letterspacing\":\"\\u10d0\\u10e1\\u10dd\\u10d4\\u10d1\\u10e1 \\u10e8\\u10dd\\u10e0\\u10d8\\u10e1 \\u10d3\\u10d0\\u10e8\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\",\"block_wordspacing\":\"\\u10e1\\u10d8\\u10e2\\u10e7\\u10d5\\u10d4\\u10d1\\u10e1 \\u10e8\\u10dd\\u10e0\\u10d8\\u10e1 \\u10d3\\u10d0\\u10e8\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\",\"background_vpos\":\"\\u10d5\\u10d4\\u10e0\\u10e2\\u10d8\\u10d9\\u10d0\\u10da\\u10e3\\u10e0\\u10d8 \\u10de\\u10dd\\u10d6\\u10d8\\u10ea\\u10d8\\u10d0\",\"background_hpos\":\"\\u10f0\\u10dd\\u10e0\\u10d8\\u10d6\\u10dd\\u10dc\\u10e2\\u10d0\\u10da\\u10e3\\u10e0\\u10d8 \\u10de\\u10dd\\u10d6\\u10d8\\u10ea\\u10d8\\u10d0\",\"background_attachment\":\"\\u10db\\u10d8\\u10d1\\u10db\\u10d0\",\"background_repeat\":\"\\u10d2\\u10d0\\u10db\\u10d4\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\",\"background_image\":\"\\u10e4\\u10dd\\u10dc\\u10d8\\u10e1 \\u10d2\\u10d0\\u10db\\u10dd\\u10e1\\u10d0\\u10ee\\u10e3\\u10da\\u10d4\\u10d1\\u10d0\",\"background_color\":\"\\u10e4\\u10dd\\u10dc\\u10d8\\u10e1 \\u10e4\\u10d4\\u10e0\\u10d8\",\"text_none\":\"\\u10e7\\u10d5\\u10d4\\u10da\\u10d0\\u10e4\\u10e0\\u10d8\\u10e1 \\u10d2\\u10d0\\u10e0\\u10d4\\u10e8\\u10d4\",\"text_blink\":\"\\u10db\\u10dd\\u10ea\\u10d8\\u10db\\u10ea\\u10d8\\u10db\\u10d4\",\"text_case\":\"\\u10e0\\u10d4\\u10d2\\u10d8\\u10e1\\u10e2\\u10e0\\u10d8\",\"text_striketrough\":\"\\u10d2\\u10d0\\u10d3\\u10d0\\u10ee\\u10d0\\u10d6\\u10e3\\u10da\\u10d8\",\"text_underline\":\"\\u10db\\u10dd\\u10ee\\u10d0\\u10d6\\u10e3\\u10da\\u10d8\",\"text_overline\":\"\\u10d6\\u10d4\\u10d3\\u10d0 \\u10ee\\u10d0\\u10d6\\u10d8\\u10d7\",\"text_decoration\":\"\\u10d2\\u10d0\\u10e4\\u10dd\\u10e0\\u10db\\u10d4\\u10d1\\u10d0\",\"text_color\":\"\\u10e4\\u10d4\\u10e0\\u10d8\",text:\"Text\",background:\"Background\",block:\"Block\",box:\"Box\",border:\"Border\",list:\"List\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/ko_dlg.js",
    "content": "tinyMCE.addI18n('ko.style_dlg',{\"text_lineheight\":\"\\ud589 \\ub192\\uc774\",\"text_variant\":\"\\ubcc0\\uacbd\",\"text_style\":\"\\uc2a4\\ud0c0\\uc77c\",\"text_weight\":\"\\uad75\\uae30\",\"text_size\":\"\\ud06c\\uae30\",\"text_font\":\"\\uae00\\uaf34\",\"text_props\":\"\\ud14d\\uc2a4\\ud2b8\",\"positioning_tab\":\"\\uc704\\uce58\",\"list_tab\":\"\\ub9ac\\uc2a4\\ud2b8\",\"border_tab\":\"\\ud14c\\ub450\\ub9ac\\uc120\",\"box_tab\":\"\\ubc15\\uc2a4\",\"block_tab\":\"\\ube14\\ub85d\",\"background_tab\":\"\\ubc30\\uacbd\",\"text_tab\":\"\\ud14d\\uc2a4\\ud2b8\",apply:\"\\uc801\\uc6a9\",title:\"CSS \\ud3b8\\uc9d1\",clip:\"Clip\",placement:\"\\uc704\\uce58(placement)\",overflow:\"\\uc624\\ubc84\\ud50c\\ub85c\\uc6b0\",zindex:\"Z-index\",visibility:\"\\uac00\\uc2dc\\uc131\",\"positioning_type\":\"\\ud0c0\\uc785\",position:\"\\uc704\\uce58\",\"bullet_image\":\"\\ubd88\\ub9bf \\uc774\\ubbf8\\uc9c0\",\"list_type\":\"\\ubaa9\\ub85d\\uc885\\ub958\",color:\"\\uc0c9\",height:\"\\ub192\\uc774\",width:\"\\ud3ed\",style:\"\\uc2a4\\ud0c0\\uc77c\",margin:\"\\ub9c8\\uc9c4\",left:\"\\uc88c\",bottom:\"\\ud558\",right:\"\\uc6b0\",top:\"\\uc0c1\",same:\"\\ubaa8\\ub450 \\ub611\\uac19\\uc774\",padding:\"padding\",\"box_clear\":\"Clear\",\"box_float\":\"float\",\"box_height\":\"\\ub192\\uc774\",\"box_width\":\"\\ud3ed\",\"block_display\":\"\\ud45c\\uc2dc\",\"block_whitespace\":\"\\uacf5\\ubc31 \\ubb38\\uc790\",\"block_text_indent\":\"\\ub4e4\\uc5ec\\uc4f0\\uae30\",\"block_text_align\":\"\\uc88c\\uc6b0 \\ub9de\\ucda4\",\"block_vertical_alignment\":\"\\uc138\\ub85c \\ub9de\\ucda4\",\"block_letterspacing\":\"\\ubb38\\uc790 \\uac04\\uaca9\",\"block_wordspacing\":\"\\ub2e8\\uc5b4 \\uac04\\uaca9\",\"background_vpos\":\"\\uc138\\ub85c \\uc704\\uce58\",\"background_hpos\":\"\\uac00\\ub85c \\uc704\\uce58\",\"background_attachment\":\"\\ucca8\\ubd80\",\"background_repeat\":\"\\ubc18\\ubcf5\",\"background_image\":\"\\ubc30\\uacbd \\uc774\\ubbf8\\uc9c0\",\"background_color\":\"\\ubc30\\uacbd\\uc0c9\",\"text_none\":\"\\uc5c6\\uc74c\",\"text_blink\":\"\\uc810\\uba78\",\"text_case\":\"\\ub300/\\uc18c\\ubb38\\uc790\",\"text_striketrough\":\"\\ucde8\\uc18c\\uc120\",\"text_underline\":\"\\ubc11\\uc904\",\"text_overline\":\"\\uc717\\uc904\",\"text_decoration\":\"\\uc7a5\\uc2dd\",\"text_color\":\"\\uc0c9\",text:\"\\ud14d\\uc2a4\\ud2b8\",background:\"\\ubc30\\uacbd\",block:\"\\ube14\\ub85d\",box:\"\\ubc15\\uc2a4\",border:\"\\ud14c\\ub450\\ub9ac\\uc120\",list:\"\\ubaa9\\ub85d\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/nb_dlg.js",
    "content": "tinyMCE.addI18n('nb.style_dlg',{\"text_lineheight\":\"Linjeh\\u00f8yde\",\"text_variant\":\"Variant\",\"text_style\":\"Skriftstil\",\"text_weight\":\"Skriftvekt\",\"text_size\":\"Skriftst\\u00f8rrelse\",\"text_font\":\"Skrifttype\",\"text_props\":\"Skriftegenskaper\",\"positioning_tab\":\"Posisjon\",\"list_tab\":\"Liste\",\"border_tab\":\"Ramme\",\"box_tab\":\"Boks\",\"block_tab\":\"Blokk\",\"background_tab\":\"Bakgrunn\",\"text_tab\":\"Tekst\",apply:\"Legg til\",title:\"Rediger CSS-stil\",clip:\"Klipp\",placement:\"Plassering\",overflow:\"Overfyll\",zindex:\"Z-indeks\",visibility:\"Synlighet\",\"positioning_type\":\"Type\",position:\"Posisjon\",\"bullet_image\":\"Punktbilde\",\"list_type\":\"Type\",color:\"Farge\",height:\"H\\u00f8yde\",width:\"Bredde\",style:\"Stil\",margin:\"Marg\",left:\"Venstre\",bottom:\"Bunn\",right:\"H\\u00f8yre\",top:\"Topp\",same:\"Lik i alle\",padding:\"Utfylling\",\"box_clear\":\"Slett\",\"box_float\":\"Flyt\",\"box_height\":\"H\\u00f8yde\",\"box_width\":\"Bredde\",\"block_display\":\"Framvising\",\"block_whitespace\":\"Mellomrom\",\"block_text_indent\":\"Innrykk\",\"block_text_align\":\"Justering\",\"block_vertical_alignment\":\"Vertikal justering\",\"block_letterspacing\":\"Bokstavmellomrom\",\"block_wordspacing\":\"Ordmellomrom\",\"background_vpos\":\"Vertikal posisjon\",\"background_hpos\":\"Horisontal posisjon\",\"background_attachment\":\"Vedlegg\",\"background_repeat\":\"Gjenta\",\"background_image\":\"Bakgrunnsbilde\",\"background_color\":\"Bakgrunnsfarge\",\"text_none\":\"Ingen\",\"text_blink\":\"Blink\",\"text_case\":\"Store / sm\\u00e5 bokstaver\",\"text_striketrough\":\"Gjennomstreking\",\"text_underline\":\"Senke skrift\",\"text_overline\":\"Heve skrift\",\"text_decoration\":\"Dekorasjon\",\"text_color\":\"Farge\",text:\"Tekst\",background:\"Bakgrunn\",block:\"Blokk\",box:\"Boks\",border:\"Ramme\",list:\"Liste\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/nl_dlg.js",
    "content": "tinyMCE.addI18n('nl.style_dlg',{text_lineheight:\"Lijnhoogte\",text_variant:\"Variant\",text_style:\"Stijl\",text_weight:\"Gewicht\",text_size:\"Tekengrootte\",text_font:\"Lettertype\",text_props:\"Tekst\",positioning_tab:\"Positionering\",list_tab:\"Lijst\",border_tab:\"Rand\",box_tab:\"Box\",block_tab:\"Blok\",background_tab:\"Achtergrond\",text_tab:\"Tekst\",apply:\"Toepassen\",title:\"CSS Stijl bewerken\",clip:\"Clip\",placement:\"Plaatsing\",overflow:\"Overvloeien\",zindex:\"Z-index\",visibility:\"Zichtbaarheid\",positioning_type:\"Type\",position:\"Positie\",bullet_image:\"Opsommingsteken\",list_type:\"Type\",color:\"Kleur\",height:\"Hoogte\",width:\"Breedte\",style:\"Stijl\",margin:\"Marge\",left:\"Links\",bottom:\"Onder\",right:\"Rechts\",top:\"Boven\",same:\"Alles hetzelfde\",padding:\"Opening\",box_clear:\"Vrijhouden\",box_float:\"Zweven\",box_height:\"Hoogte\",box_width:\"Breedte\",block_display:\"Weergave\",block_whitespace:\"Witruimte\",block_text_indent:\"Inspringen\",block_text_align:\"Tekstuitlijning\",block_vertical_alignment:\"Verticale uitlijning\",block_letterspacing:\"Letterruimte\",block_wordspacing:\"Woordruimte\",background_vpos:\"Verticale positie\",background_hpos:\"Horizontale positie\",background_attachment:\"Bijlage\",background_repeat:\"Herhalen\",background_image:\"Achtergrondafbeelding\",background_color:\"Achtergrondkleur\",text_none:\"Niets\",text_blink:\"Knipperen\",text_case:\"Hoofdlettergebruik\",text_striketrough:\"Doorhalen\",text_underline:\"Onderstrepen\",text_overline:\"Overhalen\",text_decoration:\"Decoratie\",text_color:\"Kleur\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/pl_dlg.js",
    "content": "tinyMCE.addI18n('pl.style_dlg',{text_lineheight:\"Linia wysoko\\u015bci\",text_variant:\"Wariant\",text_style:\"Styl\",text_weight:\"Waga\",text_size:\"Rozmiar\",text_font:\"Wz\\u00f3r czcionki\",text_props:\"Tekst\",positioning_tab:\"Pozycjonowanie\",list_tab:\"Lista\",border_tab:\"Obramowanie\",box_tab:\"Box\",block_tab:\"Zablokuj\",background_tab:\"T\\u0142o\",text_tab:\"Text\",apply:\"Zastosuj\",title:\"Edytuj CSS Style\",clip:\"Clip\",placement:\"Umieszczenie\",overflow:\"Przepe\\u0142niony\",zindex:\"Z-index\",visibility:\"Widoczno\\u015b\\u0107\",positioning_type:\"Typ\",position:\"Pozycja\",bullet_image:\"Obrazek listy\",list_type:\"Typ\",color:\"Kolor\",height:\"Wysoko\\u015b\\u0107\",width:\"Szeroko\\u015b\\u0107\",style:\"Styl\",margin:\"Margines\",left:\"Lewy\",bottom:\"D\\u00f3\\u0142\",right:\"Prawy\",top:\"G\\u00f3ra\",same:\"To samo dla wszystkich\",padding:\"Odst\\u0119py\",box_clear:\"Wyczy\\u015b\\u0107\",box_float:\"P\\u0142ywanie\",box_height:\"Wysoko\\u015b\\u0107\",box_width:\"Szeroko\\u015b\\u0107\",block_display:\"Widoczno\\u015b\\u0107\",block_whitespace:\"Bia\\u0142a przestrze\\u0144\",block_text_indent:\"Akapit w tek\\u015bcie\",block_text_align:\"Wyr\\u00f3wna\\u0107 tekst\",block_vertical_alignment:\"Pionowe wyr\\u00f3wnanie\",block_letterspacing:\"Odst\\u0119p mi\\u0119dzy literami\",block_wordspacing:\"Odst\\u0119p mi\\u0119dzy wyrazami\",background_vpos:\"Pozycja pionowa\",background_hpos:\"Pozycja pozioma\",background_attachment:\"Za\\u0142\\u0105cznik\",background_repeat:\"Powt\\u00f3rz\",background_image:\"Obrazek t\\u0142a\",background_color:\"Kolor t\\u0142a\",text_none:\"\\u017baden\",text_blink:\"Miganie\",text_case:\"Case\",text_striketrough:\"Przekre\\u015blenie\",text_underline:\"Podkre\\u015blenie\",text_overline:\"Nadkre\\u015blenie\",text_decoration:\"Dekoracja\",text_color:\"Kolor\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/pt_dlg.js",
    "content": "tinyMCE.addI18n('pt.style_dlg',{text_lineheight:\"Altura da linha\",text_variant:\"Variante\",text_style:\"Estilo\",text_weight:\"Peso\",text_size:\"Tamanho\",text_font:\"Fonte\",text_props:\"Texto\",positioning_tab:\"Posicionamento\",list_tab:\"Lista\",border_tab:\"Limites\",box_tab:\"Caixa\",block_tab:\"Bloco\",background_tab:\"Fundo\",text_tab:\"Texto\",apply:\"Aplicar\",title:\"Editar CSS\",clip:\"Clip\",placement:\"Posicionamento\",overflow:\"Overflow\",zindex:\"Z-index\",visibility:\"Visibilidade\",positioning_type:\"Tipo\",position:\"Posi\\u00e7\\u00e3o\",bullet_image:\"Imagem de lista\",list_type:\"Tipo\",color:\"Cor\",height:\"Altura\",width:\"Largura\",style:\"Estilo\",margin:\"Margem\",left:\"Esquerda\",bottom:\"Abaixo\",right:\"Direita\",top:\"Topo\",same:\"O mesmo para todos\",padding:\"Padding\",box_clear:\"Clear\",box_float:\"Float\",box_height:\"Altura\",box_width:\"Largura\",block_display:\"Display\",block_whitespace:\"Espa\\u00e7o\",block_text_indent:\"Indent\",block_text_align:\"Alinhamento de texto\",block_vertical_alignment:\"Alinhamento vertical\",block_letterspacing:\"Espa\\u00e7amento de letras\",block_wordspacing:\"Espa\\u00e7amento de palavras\",background_vpos:\"Posi\\u00e7\\u00e3o vertical\",background_hpos:\"Posi\\u00e7\\u00e3o horizontal\",background_attachment:\"Fixar\",background_repeat:\"Repetir\",background_image:\"Imagem de fundo\",background_color:\"Cor de fundo\",text_none:\"nenhum\",text_blink:\"Piscar\",text_case:\"Mai\\u00fascula\",text_striketrough:\"Riscado\",text_underline:\"Sublinhado\",text_overline:\"Sobrelinha\",text_decoration:\"Decora\\u00e7\\u00e3o\",text_color:\"Cor\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/ro_dlg.js",
    "content": "tinyMCE.addI18n('ro.style_dlg',{text_lineheight:\"\\u00cen\\u0103l\\u0163ime linie\",text_variant:\"Variant\\u0103\",text_style:\"Stil\",text_weight:\"Greutate\",text_size:\"M\\u0103rime\",text_font:\"Font\",text_props:\"Text\",positioning_tab:\"Pozi\\u0163ionare\",list_tab:\"List\\u0103\",border_tab:\"Bordur\\u0103\",box_tab:\"Box\",block_tab:\"Block\",background_tab:\"Fundal\",text_tab:\"Text\",apply:\"Aplic\\u0103\",title:\"Editare CSS\",clip:\"Clip\",placement:\"Plasament\",overflow:\"Overflow\",zindex:\"Z-index\",visibility:\"Vizibilitate\",positioning_type:\"Tip\",position:\"Pozi\\u0163ionare\",bullet_image:\"Imagine\",list_type:\"Tip\",color:\"Culoare\",height:\"\\u00cen\\u0103l\\u0163ime\",width:\"L\\u0103\\u0163ime\",style:\"Stil\",margin:\"Margini\",left:\"St\\u00e2nga\",bottom:\"Jos\",right:\"Dreapta\",top:\"Sus\",same:\"La fel pentru toate\",padding:\"Margini interne\",box_clear:\"Normal\\u0103\",box_float:\"Plutitoare\",box_height:\"\\u00cen\\u0103l\\u0163ime\",box_width:\"L\\u0103\\u0163ime\",block_display:\"Afi\\u015fare\",block_whitespace:\"Spa\\u0163iu alb\",block_text_indent:\"Indentare text\",block_text_align:\"Aliniere text\",block_vertical_alignment:\"Aliniere vertical\\u0103\",block_letterspacing:\"Spa\\u0163iere litere\",block_wordspacing:\"Spa\\u0163iere cuvinte\",background_vpos:\"Pozi\\u0163ionare vertical\\u0103\",background_hpos:\"Pozi\\u0163ionare orizontal\\u0103\",background_attachment:\"Ata\\u015fament\",background_repeat:\"Repet\\u0103\",background_image:\"Imagine fundal\",background_color:\"Culoare fundal\",text_none:\"Nici unul\",text_blink:\"Clipire\",text_case:\"Caz\",text_striketrough:\"T\\u0103iere\",text_underline:\"Sub linie\",text_overline:\"Peste linie\",text_decoration:\"Decora\\u0163ii\",text_color:\"Culoare\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/ru_dlg.js",
    "content": "tinyMCE.addI18n('ru.style_dlg',{text_lineheight:\"\\u0412\\u044b\\u0441\\u043e\\u0442\\u0430 \\u0441\\u0442\\u0440\\u043e\\u043a\\u0438\",text_variant:\"\\u0412\\u0430\\u0440\\u0438\\u0430\\u043d\\u0442\",text_style:\"\\u0421\\u0442\\u0438\\u043b\\u044c\",text_weight:\"\\u0422\\u043e\\u043b\\u0449\\u0438\\u043d\\u0430\",text_size:\"\\u0420\\u0430\\u0437\\u043c\\u0435\\u0440\",text_font:\"\\u0428\\u0440\\u0438\\u0444\\u0442\",text_props:\"\\u0422\\u0435\\u043a\\u0441\\u0442\",positioning_tab:\"\\u041f\\u043e\\u043b\\u043e\\u0436\\u0435\\u043d\\u0438\\u0435\",list_tab:\"\\u0421\\u043f\\u0438\\u0441\\u043e\\u043a\",border_tab:\"\\u0413\\u0440\\u0430\\u043d\\u0438\\u0446\\u0430\",box_tab:\"\\u041a\\u0440\\u0430\\u044f\",block_tab:\"\\u0411\\u043b\\u043e\\u043a\",background_tab:\"\\u0424\\u043e\\u043d\",text_tab:\"\\u0422\\u0435\\u043a\\u0441\\u0442\",apply:\"\\u041f\\u0440\\u0438\\u043c\\u0435\\u043d\\u0438\\u0442\\u044c\",title:\"\\u0420\\u0435\\u0434\\u0430\\u043a\\u0442\\u043e\\u0440 CSS \\u0441\\u0442\\u0438\\u043b\\u044f\",clip:\"\\u041e\\u0442\\u0441\\u0435\\u0447\\u0435\\u043d\\u0438\\u0435\",placement:\"\\u0420\\u0430\\u0437\\u043c\\u0435\\u0449\\u0435\\u043d\\u0438\\u0435\",overflow:\"\\u041f\\u0435\\u0440\\u0435\\u043f\\u043e\\u043b\\u043d\\u0435\\u043d\\u0435\",zindex:\"Z-\\u0438\\u043d\\u0434\\u0435\\u043a\\u0441\",visibility:\"\\u0412\\u0438\\u0434\\u0438\\u043c\\u043e\\u0441\\u0442\\u044c\",positioning_type:\"\\u0422\\u0438\\u043f\",position:\"\\u041f\\u043e\\u0437\\u0438\\u0446\\u0438\\u044f\",bullet_image:\"\\u041c\\u0430\\u0440\\u043a\\u0435\\u0440\",list_type:\"\\u0422\\u0438\\u043f\",color:\"\\u0426\\u0432\\u0435\\u0442\",height:\"\\u0412\\u044b\\u0441\\u043e\\u0442\\u0430\",width:\"\\u0428\\u0438\\u0440\\u0438\\u043d\\u0430\",style:\"\\u0421\\u0442\\u0438\\u043b\\u044c\",margin:\"\\u041e\\u0442\\u0441\\u0442\\u0443\\u043f\\u044b\",left:\"\\u0421\\u043b\\u0435\\u0432\\u0430\",bottom:\"\\u0421\\u043d\\u0438\\u0437\\u0443\",right:\"\\u0421\\u043f\\u0440\\u0430\\u0432\\u0430\",top:\"\\u0412\\u0432\\u0435\\u0440\\u0445\",same:\"\\u041e\\u0434\\u0438\\u043d\\u0430\\u043a\\u043e\\u0432\\u043e \\u0434\\u043b\\u044f \\u0432\\u0441\\u0435\\u0445\",padding:\"\\u041f\\u043e\\u043b\\u044f\",box_clear:\"\\u042f\\u0432\\u043d\\u044b\\u0439\",box_float:\"\\u041f\\u043b\\u0430\\u0432\\u0430\\u044e\\u0449\\u0438\\u0439\",box_height:\"\\u0412\\u044b\\u0441\\u043e\\u0442\\u0430\",box_width:\"\\u0428\\u0438\\u0440\\u0438\\u043d\\u0430\",block_display:\"\\u041e\\u0442\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u0438\\u0435\",block_whitespace:\"\\u041f\\u0440\\u043e\\u0431\\u0435\\u043b\",block_text_indent:\"\\u041e\\u0442\\u0441\\u0442\\u0443\\u043f \\u0442\\u0435\\u043a\\u0441\\u0442\\u0430\",block_text_align:\"\\u0412\\u044b\\u0440\\u0430\\u0432\\u043d\\u0438\\u0432\\u0430\\u043d\\u0438\\u0435 \\u0442\\u0435\\u043a\\u0441\\u0442\\u0430\",block_vertical_alignment:\"\\u0412\\u0435\\u0440\\u0442\\u0438\\u043a\\u0430\\u043b\\u044c\\u043d\\u043e\\u0435 \\u0432\\u044b\\u0440\\u0430\\u0432\\u043d\\u0438\\u0432\\u0430\\u043d\\u0438\\u0435\",block_letterspacing:\"\\u041e\\u0442\\u0441\\u0442\\u0443\\u043f\\u044b \\u043c\\u0435\\u0436\\u0434\\u0443 \\u0431\\u0443\\u043a\\u0432\\u0430\\u043c\\u0438\",block_wordspacing:\"\\u041e\\u0442\\u0441\\u0442\\u0443\\u043f\\u044b \\u043c\\u0435\\u0436\\u0434\\u0443 \\u0441\\u043b\\u043e\\u0432\\u0430\\u043c\\u0438\",background_vpos:\"\\u0412\\u0435\\u0440\\u0442\\u0438\\u043a\\u0430\\u043b\\u044c\\u043d\\u0430\\u044f \\u043f\\u043e\\u0437\\u0438\\u0446\\u0438\\u044f\",background_hpos:\"\\u0413\\u043e\\u0440\\u0438\\u0437\\u043e\\u043d\\u0442\\u0430\\u043b\\u044c\\u043d\\u0430\\u044f \\u043f\\u043e\\u0437\\u0438\\u0446\\u0438\\u044f\",background_attachment:\"\\u041f\\u0440\\u0438\\u0432\\u044f\\u0437\\u043a\\u0430\",background_repeat:\"\\u041f\\u043e\\u0432\\u0442\\u043e\\u0440\",background_image:\"\\u0424\\u043e\\u043d\\u043e\\u0432\\u043e\\u0435 \\u0438\\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u0438\\u0435\",background_color:\"\\u0426\\u0432\\u0435\\u0442 \\u0444\\u043e\\u043d\\u0430\",text_none:\"\\u0411\\u0435\\u0437 \\u0432\\u0441\\u0435\\u0433\\u043e\",text_blink:\"\\u041c\\u0435\\u0440\\u0446\\u0430\\u044e\\u0449\\u0438\\u0439\",text_case:\"\\u0420\\u0435\\u0433\\u0438\\u0441\\u0442\\u0440\",text_striketrough:\"\\u0417\\u0430\\u0447\\u0435\\u0440\\u043a\\u043d\\u0443\\u0442\\u044b\\u0439\",text_underline:\"\\u041f\\u043e\\u0434\\u0447\\u0435\\u0440\\u043a\\u043d\\u0443\\u0442\\u044b\\u0439\",text_overline:\"\\u0421 \\u0432\\u0435\\u0440\\u0445\\u043d\\u0435\\u0439 \\u0447\\u0435\\u0440\\u0442\\u043e\\u0439\",text_decoration:\"\\u041e\\u0444\\u043e\\u0440\\u043c\\u043b\\u0435\\u043d\\u0438\\u0435\",text_color:\"\\u0426\\u0432\\u0435\\u0442\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/sr_dlg.js",
    "content": "tinyMCE.addI18n('sr.style_dlg',{text_lineheight:\"Line height\",text_variant:\"Variant\",text_style:\"Style\",text_weight:\"Weight\",text_size:\"Size\",text_font:\"Font\",text_props:\"Text\",positioning_tab:\"Positioning\",list_tab:\"List\",border_tab:\"Border\",box_tab:\"Box\",block_tab:\"Block\",background_tab:\"Background\",text_tab:\"Text\",apply:\"Apply\",title:\"Edit CSS Style\",clip:\"Clip\",placement:\"Placement\",overflow:\"Overflow\",zindex:\"Z-index\",visibility:\"Visibility\",positioning_type:\"Type\",position:\"Position\",bullet_image:\"Bullet image\",list_type:\"Type\",color:\"Color\",height:\"Height\",width:\"Width\",style:\"Style\",margin:\"Margin\",left:\"Left\",bottom:\"Bottom\",right:\"Right\",top:\"Top\",same:\"Same for all\",padding:\"Padding\",box_clear:\"Clear\",box_float:\"Float\",box_height:\"Height\",box_width:\"Width\",block_display:\"Display\",block_whitespace:\"Whitespace\",block_text_indent:\"Text indent\",block_text_align:\"Text align\",block_vertical_alignment:\"Vertical alignment\",block_letterspacing:\"Letter spacing\",block_wordspacing:\"Word spacing\",background_vpos:\"Vertical position\",background_hpos:\"Horizontal position\",background_attachment:\"Attachment\",background_repeat:\"Repeat\",background_image:\"Background image\",background_color:\"Background color\",text_none:\"none\",text_blink:\"blink\",text_case:\"Case\",text_striketrough:\"strikethrough\",text_underline:\"underline\",text_overline:\"overline\",text_decoration:\"Decoration\",text_color:\"Color\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/sv_dlg.js",
    "content": "tinyMCE.addI18n('sv.style_dlg',{\"text_lineheight\":\"Radh\\u00f6jd\",\"text_variant\":\"Variant\",\"text_style\":\"Stil\",\"text_weight\":\"Tjocklek\",\"text_size\":\"Storlek\",\"text_font\":\"Typsnitt\",\"text_props\":\"Text\",\"positioning_tab\":\"Positionering\",\"list_tab\":\"Listor\",\"border_tab\":\"Ramar\",\"box_tab\":\"Box\",\"block_tab\":\"Block\",\"background_tab\":\"Bakgrund\",\"text_tab\":\"Text\",apply:\"Applicera\",title:\"Redigera inline CSS\",clip:\"Besk\\u00e4rning\",placement:\"Placering\",overflow:\"\\u00d6\\u0096verfl\\u00f6de\",zindex:\"Z-index\",visibility:\"Synlighet\",\"positioning_type\":\"Positionstyp\",position:\"Position\",\"bullet_image\":\"Punktbild\",\"list_type\":\"Listtyp\",color:\"F\\u00e4rg\",height:\"H\\u00f6jd\",width:\"Bredd\",style:\"Stil\",margin:\"Marginal\",left:\"V\\u00e4nster\",bottom:\"Botten\",right:\"H\\u00f6ger\",top:\"Toppen\",same:\"Samma f\\u00f6r alla\",padding:\"Padding\",\"box_clear\":\"Clear\",\"box_float\":\"Float\",\"box_height\":\"H\\u00f6jd\",\"box_width\":\"Bredd\",\"block_display\":\"Display\",\"block_whitespace\":\"Whitespace\",\"block_text_indent\":\"Textindrag\",\"block_text_align\":\"Textjustering\",\"block_vertical_alignment\":\"Vertikal justering\",\"block_letterspacing\":\"Teckenmellanrum\",\"block_wordspacing\":\"Ordavbrytning\",\"background_vpos\":\"Vertikal position\",\"background_hpos\":\"Horisontell position\",\"background_attachment\":\"F\\u00e4stpunkt\",\"background_repeat\":\"Upprepning\",\"background_image\":\"Bakgrundsbild\",\"background_color\":\"Bakgrundsf\\u00e4rg\",\"text_none\":\"Inget\",\"text_blink\":\"Blinka\",\"text_case\":\"Sm\\u00e5/stora\",\"text_striketrough\":\"Genomstruken\",\"text_underline\":\"Understruken\",\"text_overline\":\"\\u00d6verstruken\",\"text_decoration\":\"Dekoration\",\"text_color\":\"F\\u00e4rg\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/tr_dlg.js",
    "content": "tinyMCE.addI18n('tr.style_dlg',{\"text_lineheight\":\"\\u00c7izgi y\\u00fcksekli\\u011fi\",\"text_variant\":\"De\\u011fi\\u015fken\",\"text_style\":\"Stil\",\"text_weight\":\"Kal\\u0131nl\\u0131k\",\"text_size\":\"Boyut\",\"text_font\":\"Yaz\\u0131 tipi\",\"text_props\":\"Metin\",\"positioning_tab\":\"Konumland\\u0131rma\",\"list_tab\":\"Listele\",\"border_tab\":\"Kenarl\\u0131k\",\"box_tab\":\"Kutu\",\"block_tab\":\"Blok\",\"background_tab\":\"Arkaplan\",\"text_tab\":\"Metin\",apply:\"Uygula\",title:\"CSS Stilini D\\u00fczenle\",clip:\"K\\u0131rp\",placement:\"Yerle\\u015ftir\",overflow:\"Ta\\u015fma\",zindex:\"Z-indeksi\",visibility:\"G\\u00f6r\\u00fcn\\u00fcrl\\u00fck\",\"positioning_type\":\"Tip\",position:\"Konum\",\"bullet_image\":\"Madde imi resmi\",\"list_type\":\"Tip\",color:\"Renk\",height:\"Y\\u00fckseklik\",width:\"Geni\\u015flik\",style:\"Stil\",margin:\"Kenar bo\\u015flu\\u011fu\",left:\"Sol\",bottom:\"Alt\",right:\"Sa\\u011f\",top:\"\\u00dcst\",same:\"T\\u00fcm\\u00fc i\\u00e7in\",padding:\"Dolgu\",\"box_clear\":\"Serbest\",\"box_float\":\"Kayan\",\"box_height\":\"Y\\u00fckseklik\",\"box_width\":\"Geni\\u015flik\",\"block_display\":\"G\\u00f6r\\u00fcnt\\u00fcle\",\"block_whitespace\":\"Bo\\u015fluk\",\"block_text_indent\":\"Metnin girintisini art\\u0131r\",\"block_text_align\":\"Metin hizala\",\"block_vertical_alignment\":\"Dikey hizalama\",\"block_letterspacing\":\"harf bo\\u015flu\\u011fu\",\"block_wordspacing\":\"Kelime bo\\u015flu\\u011fu\",\"background_vpos\":\"Dikey konum\",\"background_hpos\":\"Yatay konum\",\"background_attachment\":\"Eklenti\",\"background_repeat\":\"Tekrarla\",\"background_image\":\"Arkaplan resmi\",\"background_color\":\"Arkaplan rengi\",\"text_none\":\"hi\\u00e7biri\",\"text_blink\":\"yan\\u0131p s\\u00f6nen\",\"text_case\":\"Ko\\u015ful\",\"text_striketrough\":\"\\u00fcst\\u00fc \\u00e7izgili\",\"text_underline\":\"alt \\u00e7izgi\",\"text_overline\":\"\\u00fcst \\u00e7izgi\",\"text_decoration\":\"Dekorasyon\",\"text_color\":\"Renk\",text:\"Yaz\\u0131\",background:\"Arkaplan\",block:\"Blok\",box:\"Kutu\",border:\"S\\u0131n\\u0131r\",list:\"Liste\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/uk_dlg.js",
    "content": "tinyMCE.addI18n('uk.style_dlg',{\"text_lineheight\":\"\\u0412\\u0438\\u0441\\u043e\\u0442\\u0430 \\u0440\\u044f\\u0434\\u043a\\u0443\",\"text_variant\":\"\\u0412\\u0430\\u0440\\u0456\\u0430\\u043d\\u0442\",\"text_style\":\"\\u0421\\u0442\\u0438\\u043b\\u044c\",\"text_weight\":\"\\u0422\\u043e\\u0432\\u0449\\u0438\\u043d\\u0430\",\"text_size\":\"\\u0420\\u043e\\u0437\\u043c\\u0456\\u0440\",\"text_font\":\"\\u0428\\u0440\\u0438\\u0444\\u0442\",\"text_props\":\"\\u0422\\u0435\\u043a\\u0441\\u0442\",\"positioning_tab\":\"\\u041f\\u043e\\u0437\\u0438\\u0446\\u0456\\u043e\\u043d\\u0443\\u0432\\u0430\\u043d\\u043d\\u044f\",\"list_tab\":\"\\u0421\\u043f\\u0438\\u0441\\u043e\\u043a\",\"border_tab\":\"\\u0420\\u0430\\u043c\\u043a\\u0430\",\"box_tab\":\"\\u042f\\u0449\\u0438\\u043a(box)\",\"block_tab\":\"\\u0411\\u043b\\u043e\\u043a\",\"background_tab\":\"\\u0424\\u043e\\u043d\",\"text_tab\":\"\\u0422\\u0435\\u043a\\u0441\\u0442\",apply:\"\\u0417\\u0430\\u0441\\u0442\\u043e\\u0441\\u0443\\u0432\\u0430\\u0442\\u0438\",title:\"\\u0420\\u0435\\u0434\\u0430\\u0433\\u0443\\u0432\\u0430\\u043d\\u043d\\u044f CSS \\u0441\\u0442\\u0438\\u043b\\u044e\",clip:\"\\u0421\\u043a\\u0440\\u0456\\u043f\\u043b\\u0435\\u043d\\u043d\\u044f\",placement:\"\\u0420\\u043e\\u0437\\u043c\\u0456\\u0449\\u0435\\u043d\\u043d\\u044f\",overflow:\"\\u041f\\u0435\\u0440\\u0435\\u043f\\u043e\\u0432\\u043d\\u0435\\u043d\\u043d\\u044f\",zindex:\"Z-\\u0456\\u043d\\u0434\\u0435\\u043a\\u0441\",visibility:\"\\u0412\\u0438\\u0434\\u0438\\u043c\\u0456\\u0441\\u0442\\u044c\",\"positioning_type\":\"\\u0422\\u0438\\u043f\",position:\"\\u041f\\u043e\\u0437\\u0438\\u0446\\u0456\\u044f\",\"bullet_image\":\"\\u0417\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u043d\\u044f \\u0437\\u043d\\u0430\\u0447\\u043a\\u0430 \\u0432 \\u0441\\u043f\\u0438\\u0441\\u043a\\u0443\",\"list_type\":\"\\u0422\\u0438\\u043f\",color:\"\\u041a\\u043e\\u043b\\u0456\\u0440\",height:\"\\u0412\\u0438\\u0441\\u043e\\u0442\\u0430\",width:\"\\u0428\\u0438\\u0440\\u0438\\u043d\\u0430\",style:\"\\u0421\\u0442\\u0438\\u043b\\u044c\",margin:\"Margin\",left:\"\\u041b\\u0456\\u0432\\u043e\\u0440\\u0443\\u0447\",bottom:\"\\u0417\\u043d\\u0438\\u0437\\u0443\",right:\"\\u041f\\u0440\\u0430\\u0432\\u043e\\u0440\\u0443\\u0447\",top:\"\\u0412\\u0433\\u043e\\u0440\\u0443\",same:\"\\u041e\\u0434\\u043d\\u0430\\u043a\\u043e\\u0435 \\u0434\\u043b\\u044f \\u0432\\u0441\\u0456\\u0445\",padding:\"\\u0412\\u043d\\u0443\\u0442\\u0440\\u0456\\u0448\\u043d\\u0456\\u0439 \\u0432\\u0456\\u0434\\u0441\\u0442\\u0443\\u043f\",\"box_clear\":\"\\u041e\\u0447\\u0438\\u0441\\u0442\\u043a\\u0430\",\"box_float\":\"\\u041f\\u043b\\u0430\\u0432\\u0430\\u043d\\u043d\\u044f\",\"box_height\":\"\\u0412\\u0438\\u0441\\u043e\\u0442\\u0430\",\"box_width\":\"\\u0428\\u0438\\u0440\\u0438\\u043d\\u0430\",\"block_display\":\"\\u0412\\u0456\\u0434\\u043e\\u0431\\u0440\\u0430\\u0436\\u0430\\u0442\\u0438\",\"block_whitespace\":\"\\u041f\\u0440\\u043e\\u0431\\u0456\\u043b\",\"block_text_indent\":\"\\u0412\\u0456\\u0434\\u0441\\u0442\\u0443\\u043f\",\"block_text_align\":\"\\u0412\\u0438\\u0440\\u0456\\u0432\\u043d\\u044e\\u0432\\u0430\\u043d\\u043d\\u044f \\u0442\\u0435\\u043a\\u0441\\u0442\\u0443\",\"block_vertical_alignment\":\"\\u0412\\u0435\\u0440\\u0442\\u0438\\u043a\\u0430\\u043b\\u044c\\u043d\\u0435 \\u0432\\u0438\\u0440\\u0456\\u0432\\u043d\\u044e\\u0432\\u0430\\u043d\\u043d\\u044f\",\"block_letterspacing\":\"\\u0412\\u0456\\u0434\\u0441\\u0442\\u0443\\u043f\\u0438 \\u043c\\u0456\\u0436 \\u043b\\u0456\\u0442\\u0435\\u0440\\u0430\\u043c\\u0438\",\"block_wordspacing\":\"\\u0412\\u0456\\u0434\\u0441\\u0442\\u0443\\u043f\\u0438 \\u043c\\u0456\\u0436 \\u0441\\u043b\\u043e\\u0432\\u0430\\u043c\\u0438\",\"background_vpos\":\"\\u0412\\u0435\\u0440\\u0442\\u0438\\u043a\\u0430\\u043b\\u044c\\u043d\\u0430 \\u043f\\u043e\\u0437\\u0438\\u0446\\u0456\\u044f\",\"background_hpos\":\"\\u0413\\u043e\\u0440\\u0438\\u0437\\u043e\\u043d\\u0442\\u0430\\u043b\\u044c\\u043d\\u0430 \\u043f\\u043e\\u0437\\u0438\\u0446\\u0456\\u044f\",\"background_attachment\":\"\\u0412\\u043a\\u043b\\u0430\\u0434\\u0435\\u043d\\u043d\\u044f\",\"background_repeat\":\"\\u041f\\u043e\\u0432\\u0442\\u043e\\u0440\",\"background_image\":\"\\u0424\\u043e\\u043d\\u043e\\u0432\\u0435 \\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u043d\\u044f\",\"background_color\":\"\\u041a\\u043e\\u043b\\u0456\\u0440 \\u0444\\u043e\\u043d\\u0443\",\"text_none\":\"\\u041d\\u0456\\u0447\\u043e\\u0433\\u043e\",\"text_blink\":\"\\u041c\\u0435\\u0440\\u0435\\u0445\\u0442\\u0456\\u043d\\u043d\\u044f\",\"text_case\":\"\\u0420\\u0435\\u0433\\u0456\\u0441\\u0442\\u0440\",\"text_striketrough\":\"\\u0417\\u0430\\u043a\\u0440\\u0435\\u0441\\u043b\\u0435\\u043d\\u0438\\u0439\",\"text_underline\":\"\\u041f\\u0456\\u0434\\u043a\\u0440\\u0435\\u0441\\u043b\\u0435\\u043d\\u0438\\u0439\",\"text_overline\":\"\\u041d\\u0430\\u0434\\u043a\\u0440\\u0435\\u0441\\u043b\\u0435\\u043d\\u0438\\u0439\",\"text_decoration\":\"\\u041e\\u0444\\u043e\\u0440\\u043c\\u043b\\u0435\\u043d\\u043d\\u044f\",\"text_color\":\"\\u041a\\u043e\\u043b\\u0456\\u0440\",text:\"\\u0422\\u0435\\u043a\\u0441\\u0442\",background:\"\\u0424\\u043e\\u043d\",block:\"\\u0411\\u043b\\u043e\\u043a\",box:\"\\u041a\\u043e\\u043d\\u0442\\u0435\\u0439\\u043d\\u0435\\u0440\",border:\"\\u0413\\u0440\\u0430\\u043d\\u0438\\u0446\\u0456\",list:\"\\u0421\\u043f\\u0438\\u0441\\u043e\\u043a\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/zh-tw_dlg.js",
    "content": "tinyMCE.addI18n('zh-tw.style_dlg',{\"text_lineheight\":\"\\u6587\\u5b57\\u884c\\u9ad8\",\"text_variant\":\"\\u7279\\u6b8a\\u5b57\\u9ad4\",\"text_style\":\"\\u6a23\\u5f0f\",\"text_weight\":\"\\u5b57\\u9ad4\\u7c97\\u7d30\",\"text_size\":\"\\u5b57\\u9ad4\\u5927\\u5c0f\",\"text_font\":\"\\u5b57\\u9ad4\",\"text_props\":\"\\u5b57\\u578b\",\"positioning_tab\":\"\\u4f4d\\u7f6e\",\"list_tab\":\"\\u5217\\u8868\",\"border_tab\":\"\\u908a\\u6846\",\"box_tab\":\"\\u65b9\\u584a\",\"block_tab\":\"\\u5340\\u584a\",\"background_tab\":\"\\u80cc\\u666f\",\"text_tab\":\"\\u5b57\\u578b\",apply:\"\\u5957\\u7528\",title:\"\\u7de8\\u8f2f CSS \\u6a23\\u5f0f\",clip:\"\\u526a\\u8f2f\",placement:\"\\u653e\\u7f6e\",overflow:\"\\u5377\\u8ef8\\u8a2d\\u5b9a (Overflow)\",zindex:\"Z \\u8ef8\",visibility:\"\\u80fd\\u898b\\u5ea6\",\"positioning_type\":\"\\u5f62\\u5f0f\",position:\"\\u4f4d\\u7f6e\",\"bullet_image\":\"\\u9805\\u76ee\\u7b26\\u865f (\\u6709\\u5716\\u7247)\",\"list_type\":\"\\u5f62\\u5f0f\",color:\"\\u984f\\u8272\",height:\"\\u9ad8\\u5ea6\",width:\"\\u5bec\\u5ea6\",style:\"\\u6a23\\u5f0f\",margin:\"\\u908a\\u8ddd\",left:\"\\u5de6\\u908a\",bottom:\"\\u4e0b\\u65b9\",right:\"\\u53f3\\u908a\",top:\"\\u4e0a\\u65b9\",same:\"\\u5168\\u90e8\\u4e00\\u6a23\",padding:\"\\u5167\\u8ddd\",\"box_clear\":\"\\u79fb\\u9664\\u6d6e\\u52d5\\u6548\\u679c\",\"box_float\":\"\\u6d6e\\u52d5\\u6548\\u679c\",\"box_height\":\"\\u9ad8\\u5ea6\",\"box_width\":\"\\u9ad8\\u5ea6\",\"block_display\":\"\\u986f\\u793a\",\"block_whitespace\":\"\\u7a7a\\u683c\",\"block_text_indent\":\"\\u6587\\u5b57\\u7e2e\\u6392\",\"block_text_align\":\"\\u6587\\u5b57\\u5c0d\\u9f4a\",\"block_vertical_alignment\":\"\\u5782\\u76f4\\u5c0d\\u9f4a\",\"block_letterspacing\":\"\\u6587\\u5b57\\u9593\\u9694\",\"block_wordspacing\":\"\\u5b57\\u8a5e\\u9593\\u9694\",\"background_vpos\":\"\\u5782\\u76f4\",\"background_hpos\":\"\\u6c34\\u5e73\",\"background_attachment\":\"\\u9644\\u4ef6\",\"background_repeat\":\"\\u91cd\\u8907\",\"background_image\":\"\\u80cc\\u666f\\u5716\\u7247\",\"background_color\":\"\\u80cc\\u666f\\u984f\\u8272\",\"text_none\":\"\\u7121\",\"text_blink\":\"\\u9583\\u720d\\u6548\\u679c\",\"text_case\":\"\\u5b57\\u9ad4\\u6a23\\u5f0f\",\"text_striketrough\":\"\\u522a\\u9664\\u7dda\",\"text_underline\":\"\\u5e95\\u7dda\",\"text_overline\":\"\\u4e00\\u689d\\u7dda\\u5728\\u4e0a\\u9762\",\"text_decoration\":\"\\u7dda\\u689d\\u6a23\\u5f0f\",\"text_color\":\"\\u984f\\u8272\",text:\"Text\",background:\"Background\",block:\"Block\",box:\"Box\",border:\"Border\",list:\"List\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/langs/zh_dlg.js",
    "content": "tinyMCE.addI18n('zh.style_dlg',{\"text_lineheight\":\"\\u884c\\u9ad8\",\"text_variant\":\"\\u7279\\u6b8a\\u5b57\\u4f53\",\"text_style\":\"\\u6837\\u5f0f\",\"text_weight\":\"\\u7c97\\u4f53\",\"text_size\":\"\\u5b57\\u4f53\\u5927\\u5c0f\",\"text_font\":\"\\u5b57\\u4f53\",\"text_props\":\"\\u6587\\u5b57\",\"positioning_tab\":\"\\u4f4d\\u7f6e\",\"list_tab\":\"\\u5217\\u8868\",\"border_tab\":\"\\u8fb9\\u6846\",\"box_tab\":\"\\u65b9\\u76d2\",\"block_tab\":\"\\u533a\\u5757\",\"background_tab\":\"\\u80cc\\u666f\",\"text_tab\":\"\\u6587\\u5b57\",apply:\"\\u5e94\\u7528\",title:\"\\u7f16\\u8f91CSS\",clip:\"\\u526a\\u8f91\",placement:\"\\u653e\\u7f6e\",overflow:\"\\u6ea2\\u51fa\",zindex:\"Z\\u8f74\\u5750\\u6807\",visibility:\"\\u53ef\\u89c1\",\"positioning_type\":\"\\u7c7b\\u578b\",position:\"\\u4f4d\\u7f6e\",\"bullet_image\":\"\\u56fe\\u7247\\u9879\\u76ee\\u7b26\\u53f7\",\"list_type\":\"\\u7c7b\\u578b\",color:\"\\u989c\\u8272\",height:\"\\u9ad8\",width:\"\\u5bbd\",style:\"\\u6837\\u5f0f\",margin:\"\\u5916\\u8fb9\\u8ddd\",left:\"\\u5de6\",bottom:\"\\u4e0b\",right:\"\\u53f3\",top:\"\\u4e0a\",same:\"\\u4e00\\u81f4\",padding:\"\\u5185\\u8fb9\\u8ddd\",\"box_clear\":\"\\u6e05\\u9664\\u6d6e\\u52a8\",\"box_float\":\"\\u6d6e\\u52a8\",\"box_height\":\"\\u9ad8\",\"box_width\":\"\\u5bbd\",\"block_display\":\"\\u663e\\u793a\",\"block_whitespace\":\"\\u7a7a\\u683c\",\"block_text_indent\":\"\\u6587\\u5b57\\u7f29\\u8fdb\",\"block_text_align\":\"\\u6587\\u5b57\\u5bf9\\u9f50\",\"block_vertical_alignment\":\"\\u5782\\u76f4\\u5bf9\\u9f50\",\"block_letterspacing\":\"\\u5b57\\u95f4\\u8ddd\",\"block_wordspacing\":\"\\u8bcd\\u95f4\\u8ddd\",\"background_vpos\":\"\\u5782\\u76f4\\u4f4d\\u7f6e\",\"background_hpos\":\"\\u6c34\\u5e73\\u4f4d\\u7f6e\",\"background_attachment\":\"\\u9644\\u4ef6\",\"background_repeat\":\"\\u91cd\\u590d\",\"background_image\":\"\\u80cc\\u666f\\u56fe\\u7247\",\"background_color\":\"\\u80cc\\u666f\\u989c\\u8272\",\"text_none\":\"\\u65e0\",\"text_blink\":\"\\u95ea\\u70c1\",\"text_case\":\"\\u5b57\\u578b\",\"text_striketrough\":\"\\u5220\\u9664\\u7ebf\",\"text_underline\":\"\\u4e0b\\u5212\\u7ebf\",\"text_overline\":\"\\u4e0a\\u5212\\u7ebf\",\"text_decoration\":\"\\u88c5\\u9970\",\"text_color\":\"\\u989c\\u8272\",text:\"\\u6587\\u5b57\",background:\"\\u80cc\\u666f\",block:\"\\u533a\\u5757\",box:\"\\u65b9\\u76d2\",border:\"\\u8fb9\\u6846\",list:\"\\u5217\\u8868\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/style/props.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\n<head>\n\t<title>{#style_dlg.title}</title>\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\n\t<script type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\n\t<script type=\"text/javascript\" src=\"../../utils/editable_selects.js\"></script>\n\t<script type=\"text/javascript\" src=\"../../utils/form_utils.js\"></script>\n\t<script type=\"text/javascript\" src=\"js/props.js\"></script>\n\t<link href=\"css/props.css\" rel=\"stylesheet\" type=\"text/css\" />\n</head>\n\n<body id=\"styleprops\" style=\"display: none\" role=\"application\" aria-labelledby=\"app_title\">\n<span id=\"app_title\" style=\"display:none\">{#style_dlg.title}</span>\n<form onsubmit=\"updateAction();return false;\" action=\"#\">\n<div class=\"tabs\">\n\t<ul>\n\t\t<li id=\"text_tab\" class=\"current\" aria-controls=\"text_panel\"><span><a href=\"javascript:mcTabs.displayTab('text_tab','text_panel');\" onMouseDown=\"return false;\">{#style_dlg.text_tab}</a></span></li>\n\t\t<li id=\"background_tab\" aria-controls=\"background_panel\"><span><a href=\"javascript:mcTabs.displayTab('background_tab','background_panel');\" onMouseDown=\"return false;\">{#style_dlg.background_tab}</a></span></li>\n\t\t<li id=\"block_tab\" aria-controls=\"block_panel\"><span><a href=\"javascript:mcTabs.displayTab('block_tab','block_panel');\" onMouseDown=\"return false;\">{#style_dlg.block_tab}</a></span></li>\n\t\t<li id=\"box_tab\" aria-controls=\"box_panel\"><span><a href=\"javascript:mcTabs.displayTab('box_tab','box_panel');\" onMouseDown=\"return false;\">{#style_dlg.box_tab}</a></span></li>\n\t\t<li id=\"border_tab\" aria-controls=\"border_panel\"><span><a href=\"javascript:mcTabs.displayTab('border_tab','border_panel');\" onMouseDown=\"return false;\">{#style_dlg.border_tab}</a></span></li>\n\t\t<li id=\"list_tab\" aria-controls=\"list_panel\"><span><a href=\"javascript:mcTabs.displayTab('list_tab','list_panel');\" onMouseDown=\"return false;\">{#style_dlg.list_tab}</a></span></li>\n\t\t<li id=\"positioning_tab\" aria-controls=\"positioning_panel\"><span><a href=\"javascript:mcTabs.displayTab('positioning_tab','positioning_panel');\" onMouseDown=\"return false;\">{#style_dlg.positioning_tab}</a></span></li>\n\t</ul>\n</div>\n\n<div class=\"panel_wrapper\">\n<div id=\"text_panel\" class=\"panel current\">\n\t<fieldset>\n\t\t<legend>{#style_dlg.text}</legend>\n\t\t<table role=\"presentation\" border=\"0\" width=\"100%\">\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"text_font\">{#style_dlg.text_font}</label></td>\n\t\t\t\t<td colspan=\"3\">\n\t\t\t\t\t<select id=\"text_font\" name=\"text_font\" class=\"mceEditableSelect mceFocus\"></select>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"text_size\">{#style_dlg.text_size}</label></td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><select id=\"text_size\" name=\"text_size\" class=\"mceEditableSelect\"></select></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"text_size_measurement_label\" for=\"text_size_measurement\" style=\"display: none; visibility: hidden;\">Text Size Measurement Unit</label>\n\t\t\t\t\t\t\t\t<select id=\"text_size_measurement\" name=\"text_size_measurement\" aria-labelledby=\"text_size_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t\t<td><label for=\"text_weight\">{#style_dlg.text_weight}</label></td>\n\t\t\t\t<td>\n\t\t\t\t\t<select id=\"text_weight\" name=\"text_weight\"></select>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"text_style\">{#style_dlg.text_style}</label></td>\n\t\t\t\t<td>\n\t\t\t\t\t<select id=\"text_style\" name=\"text_style\" class=\"mceEditableSelect\"></select>\n\t\t\t\t</td>\n\t\t\t\t<td><label for=\"text_variant\">{#style_dlg.text_variant}</label></td>\n\t\t\t\t<td>\n\t\t\t\t\t<select id=\"text_variant\" name=\"text_variant\"></select>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"text_lineheight\">{#style_dlg.text_lineheight}</label></td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<select id=\"text_lineheight\" name=\"text_lineheight\" class=\"mceEditableSelect\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"text_lineheight_measurement_label\" for=\"text_lineheight_measurement\" style=\"display: none; visibility: hidden;\">Line Height Measurement Unit</label>\n\t\t\t\t\t\t\t\t<select id=\"text_lineheight_measurement\" name=\"text_lineheight_measurement\" aria-labelledby=\"text_lineheight_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t\t<td><label for=\"text_case\">{#style_dlg.text_case}</label></td>\n\t\t\t\t<td>\n\t\t\t\t\t<select id=\"text_case\" name=\"text_case\"></select>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"text_color\">{#style_dlg.text_color}</label></td>\n\t\t\t\t<td colspan=\"2\">\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input id=\"text_color\" name=\"text_color\" type=\"text\" value=\"\" size=\"9\" onChange=\"updateColor('text_color_pick','text_color');\" /></td>\n\t\t\t\t\t\t\t<td id=\"text_color_pickcontainer\">&nbsp;</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td valign=\"top\" style=\"vertical-align: top; padding-top: 3px;\">{#style_dlg.text_decoration}</td>\n\t\t\t\t<td colspan=\"2\">\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input id=\"text_underline\" name=\"text_underline\" class=\"checkbox\" type=\"checkbox\" /></td>\n\t\t\t\t\t\t\t<td><label for=\"text_underline\">{#style_dlg.text_underline}</label></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input id=\"text_overline\" name=\"text_overline\" class=\"checkbox\" type=\"checkbox\" /></td>\n\t\t\t\t\t\t\t<td><label for=\"text_overline\">{#style_dlg.text_overline}</label></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input id=\"text_linethrough\" name=\"text_linethrough\" class=\"checkbox\" type=\"checkbox\" /></td>\n\t\t\t\t\t\t\t<td><label for=\"text_linethrough\">{#style_dlg.text_striketrough}</label></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input id=\"text_blink\" name=\"text_blink\" class=\"checkbox\" type=\"checkbox\" /></td>\n\t\t\t\t\t\t\t<td><label for=\"text_blink\">{#style_dlg.text_blink}</label></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input id=\"text_none\" name=\"text_none\" class=\"checkbox\" type=\"checkbox\" /></td>\n\t\t\t\t\t\t\t<td><label for=\"text_none\">{#style_dlg.text_none}</label></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t</table>\n\t</fieldset>\n</div>\n\n<div id=\"background_panel\" class=\"panel\">\n\t<fieldset>\n\t\t<legend>{#style_dlg.background}</legend>\n\t\t<table role=\"presentation\" border=\"0\">\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"background_color\">{#style_dlg.background_color}</label></td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input id=\"background_color\" name=\"background_color\" type=\"text\" value=\"\" size=\"9\" onChange=\"updateColor('background_color_pick','background_color');\" /></td>\n\t\t\t\t\t\t\t<td id=\"background_color_pickcontainer\">&nbsp;</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"background_image\">{#style_dlg.background_image}</label></td>\n\t\t\t\t<td><table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t<tr> \n\t\t\t\t\t\t<td><input id=\"background_image\" name=\"background_image\" type=\"text\" /></td> \n\t\t\t\t\t\t<td id=\"background_image_browser\">&nbsp;</td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"background_repeat\">{#style_dlg.background_repeat}</label></td>\n\t\t\t\t<td><select id=\"background_repeat\" name=\"background_repeat\" class=\"mceEditableSelect\"></select></td>\n\t\t\t</tr>\n\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"background_attachment\">{#style_dlg.background_attachment}</label></td>\n\t\t\t\t<td><select id=\"background_attachment\" name=\"background_attachment\" class=\"mceEditableSelect\"></select></td>\n\t\t\t</tr>\n\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"background_hpos\">{#style_dlg.background_hpos}</label></td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><select id=\"background_hpos\" name=\"background_hpos\" class=\"mceEditableSelect\"></select></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"background_hpos_measurement_label\" for=\"background_hpos_measurement\" style=\"display: none; visibility: hidden;\">Horizontal position measurement unit</label>\n\t\t\t\t\t\t\t\t<select id=\"background_hpos_measurement\" name=\"background_hpos_measurement\" aria-labelledby=\"background_hpos_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"background_vpos\">{#style_dlg.background_vpos}</label></td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><select id=\"background_vpos\" name=\"background_vpos\" class=\"mceEditableSelect\"></select></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\n\t\t\t\t\t\t\t\t<label id=\"background_vpos_measurement_label\" for=\"background_vpos_measurement\" style=\"display: none; visibility: hidden;\">Vertical position measurement unit</label>\n\t\t\t\t\t\t\t\t<select id=\"background_vpos_measurement\" name=\"background_vpos_measurement\" aria-labelledby=\"background_vpos_measurement_label\">></select></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t</table>\n\t</fieldset>\n</div>\n\n<div id=\"block_panel\" class=\"panel\">\n\t<fieldset>\n\t\t<legend>{#style_dlg.block}</legend>\n\t\t<table role=\"presentation\" border=\"0\">\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"block_wordspacing\">{#style_dlg.block_wordspacing}</label></td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><select id=\"block_wordspacing\" name=\"block_wordspacing\" class=\"mceEditableSelect\"></select></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"block_wordspacing_measurement_label\" for=\"block_wordspacing_measurement\" style=\"display: none; visibility: hidden;\">Word spacing measurement unit</label>\n\t\t\t\t\t\t\t\t<select id=\"block_wordspacing_measurement\" name=\"block_wordspacing_measurement\" aria-labelledby=\"block_wordspacing_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"block_letterspacing\">{#style_dlg.block_letterspacing}</label></td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><select id=\"block_letterspacing\" name=\"block_letterspacing\" class=\"mceEditableSelect\"></select></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"block_letterspacing_measurement_label\" for=\"block_letterspacing_measurement\" style=\"display: none; visibility: hidden;\">Letter spacing measurement unit</label>\n\t\t\t\t\t\t\t\t<select id=\"block_letterspacing_measurement\" name=\"block_letterspacing_measurement\" aria-labelledby=\"block_letterspacing_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"block_vertical_alignment\">{#style_dlg.block_vertical_alignment}</label></td>\n\t\t\t\t<td><select id=\"block_vertical_alignment\" name=\"block_vertical_alignment\" class=\"mceEditableSelect\"></select></td>\n\t\t\t</tr>\n\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"block_text_align\">{#style_dlg.block_text_align}</label></td>\n\t\t\t\t<td><select id=\"block_text_align\" name=\"block_text_align\" class=\"mceEditableSelect\"></select></td>\n\t\t\t</tr>\n\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"block_text_indent\">{#style_dlg.block_text_indent}</label></td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"block_text_indent\" name=\"block_text_indent\" /></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"block_text_indent_measurement_label\" for=\"block_text_indent_measurement\" style=\"display: none; visibility: hidden;\">Text Indent Measurement Unit</label>\n\n\t\t\t\t\t\t\t\t<select id=\"block_text_indent_measurement\" name=\"block_text_indent_measurement\" aria-labelledby=\"block_text_indent_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"block_whitespace\">{#style_dlg.block_whitespace}</label></td>\n\t\t\t\t<td><select id=\"block_whitespace\" name=\"block_whitespace\" class=\"mceEditableSelect\"></select></td>\n\t\t\t</tr>\n\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"block_display\">{#style_dlg.block_display}</label></td>\n\t\t\t\t<td><select id=\"block_display\" name=\"block_display\" class=\"mceEditableSelect\"></select></td>\n\t\t\t</tr>\n\t\t</table>\n\t</fieldset>\n</div>\n\n<div id=\"box_panel\" class=\"panel\">\n\t<fieldset>\n\t\t<legend>{#style_dlg.box}</legend>\n\t\t<table role=\"presentation\" border=\"0\">\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"box_width\">{#style_dlg.box_width}</label></td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"box_width\" name=\"box_width\" class=\"mceEditableSelect\" onChange=\"synch('box_width','positioning_width');\" /></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"box_width_measurement_label\" for=\"box_width_measurement\" style=\"display: none; visibility: hidden;\">Box Width Measurement Unit</label>\n\t\t\t\t\t\t\t\t<select id=\"box_width_measurement\" name=\"box_width_measurement\" aria-labelledby=\"box_width_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t\t<td>&nbsp;&nbsp;&nbsp;<label for=\"box_float\">{#style_dlg.box_float}</label></td>\n\t\t\t\t<td><select id=\"box_float\" name=\"box_float\" class=\"mceEditableSelect\"></select></td>\n\t\t\t</tr>\n\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"box_height\">{#style_dlg.box_height}</label></td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"box_height\" name=\"box_height\" class=\"mceEditableSelect\" onChange=\"synch('box_height','positioning_height');\" /></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"box_height_measurement_label\" for=\"box_height_measurement\" style=\"display: none; visibility: hidden;\">Box Height Measurement Unit</label>\n\t\t\t\t\t\t\t\t<select id=\"box_height_measurement\" name=\"box_height_measurement\" aria-labelledby=\"box_height_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t\t<td>&nbsp;&nbsp;&nbsp;<label for=\"box_clear\">{#style_dlg.box_clear}</label></td>\n\t\t\t\t<td><select id=\"box_clear\" name=\"box_clear\" class=\"mceEditableSelect\"></select></td>\n\t\t\t</tr>\n\t\t</table>\n\t</fieldset>\n\n<div style=\"float: left; width: 49%\">\n\t<fieldset>\n\t\t<legend>{#style_dlg.padding}</legend>\n\n\t\t<table role=\"presentation\" border=\"0\">\n\t\t\t<tr>\n\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t<td><input type=\"checkbox\" id=\"box_padding_same\" name=\"box_padding_same\" class=\"checkbox\" checked=\"checked\" onClick=\"toggleSame(this,'box_padding');\" /> <label for=\"box_padding_same\">{#style_dlg.same}</label></td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"box_padding_top\">{#style_dlg.top}</label></td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"box_padding_top\" name=\"box_padding_top\" class=\"mceEditableSelect\" /></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"box_padding_top_measurement_label\" for=\"box_padding_top_measurement\" style=\"display: none; visibility: hidden;\">Padding Top Measurement Unit</label>\n\t\t\t\t\t\t\t\t<select id=\"box_padding_top_measurement\" name=\"box_padding_top_measurement\" aria-labelledby=\"box_padding_top_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"box_padding_right\">{#style_dlg.right}</label></td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"box_padding_right\" name=\"box_padding_right\" class=\"mceEditableSelect\" disabled=\"disabled\" /></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"box_padding_right_measurement_label\" for=\"box_padding_right_measurement\" style=\"display: none; visibility: hidden;\">Padding Right Measurement Unit</label>\n\t\t\t\t\t\t\t\t<select id=\"box_padding_right_measurement\" name=\"box_padding_right_measurement\" disabled=\"disabled\" aria-labelledby=\"box_padding_right_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"box_padding_bottom\">{#style_dlg.bottom}</label></td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"box_padding_bottom\" name=\"box_padding_bottom\" class=\"mceEditableSelect\" disabled=\"disabled\" /></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"box_padding_bottom_measurement_label\" for=\"box_padding_bottom_measurement\" style=\"display: none; visibility: hidden;\">Padding Bottom Measurement Unit</label>\n\t\t\t\t\t\t\t\t<select id=\"box_padding_bottom_measurement\" name=\"box_padding_bottom_measurement\" disabled=\"disabled\" aria-labelledby=\"box_padding_bottom_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"box_padding_left\">{#style_dlg.left}</label></td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"box_padding_left\" name=\"box_padding_left\" class=\"mceEditableSelect\" disabled=\"disabled\" /></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"box_padding_left_measurement_label\" for=\"box_padding_left_measurement\" style=\"display: none; visibility: hidden;\">Padding Left Measurement Unit</label>\n\t\t\t\t\t\t\t\t<select id=\"box_padding_left_measurement\" name=\"box_padding_left_measurement\" disabled=\"disabled\" aria-labelledby=\"box_padding_left_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t</table>\n\t</fieldset>\n</div>\n\n<div style=\"float: right; width: 49%\">\n\t<fieldset>\n\t\t<legend>{#style_dlg.margin}</legend>\n\n\t\t<table role=\"presentation\" border=\"0\">\n\t\t\t<tr>\n\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t<td><input type=\"checkbox\" id=\"box_margin_same\" name=\"box_margin_same\" class=\"checkbox\" checked=\"checked\" onClick=\"toggleSame(this,'box_margin');\" /> <label for=\"box_margin_same\">{#style_dlg.same}</label></td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"box_margin_top\">{#style_dlg.top}</label></td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"box_margin_top\" name=\"box_margin_top\" class=\"mceEditableSelect\" /></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"box_margin_top_measurement_label\" for=\"box_margin_top_measurement\" style=\"display: none; visibility: hidden;\">Margin Top Measurement Unit</label>\n\t\t\t\t\t\t\t\t<select id=\"box_margin_top_measurement\" name=\"box_margin_top_measurement\" aria-labelledby=\"box_margin_top_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"box_margin_right\">{#style_dlg.right}</label></td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"box_margin_right\" name=\"box_margin_right\" class=\"mceEditableSelect\" disabled=\"disabled\" /></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"box_margin_right_measurement_label\" for=\"box_margin_right_measurement\" style=\"display: none; visibility: hidden;\">Margin Right Measurement Unit</label>\n\t\t\t\t\t\t\t\t<select id=\"box_margin_right_measurement\" name=\"box_margin_right_measurement\" disabled=\"disabled\" aria-labelledby=\"box_margin_right_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"box_margin_bottom\">{#style_dlg.bottom}</label></td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"box_margin_bottom\" name=\"box_margin_bottom\" class=\"mceEditableSelect\" disabled=\"disabled\" /></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"box_margin_bottom_measurement_label\" for=\"box_margin_bottom_measurement\" style=\"display: none; visibility: hidden;\">Margin Bottom Measurement Unit</label>\n\t\t\t\t\t\t\t\t<select id=\"box_margin_bottom_measurement\" name=\"box_margin_bottom_measurement\" disabled=\"disabled\" aria-labelledby=\"box_margin_bottom_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td><label for=\"box_margin_left\">{#style_dlg.left}</label></td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"box_margin_left\" name=\"box_margin_left\" class=\"mceEditableSelect\" disabled=\"disabled\" /></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"box_margin_left_measurement_label\" for=\"box_margin_left_measurement\" style=\"display: none; visibility: hidden;\">Margin Left Measurement Unit</label>\n\t\t\t\t\t\t\t\t<select id=\"box_margin_left_measurement\" name=\"box_margin_left_measurement\" disabled=\"disabled\" aria-labelledby=\"box_margin_left_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t</table>\n\t</fieldset>\n</div>\n<br style=\"clear: both\" />\n</div>\n\n<div id=\"border_panel\" class=\"panel\">\n\t<fieldset>\n\t\t<legend>{#style_dlg.border}</legend>\t\n\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" width=\"100%\">\n\t\t<tr>\n\t\t\t<td class=\"tdelim\">&nbsp;</td>\n\t\t\t<td class=\"tdelim delim\">&nbsp;</td>\n\t\t\t<td class=\"tdelim\">{#style_dlg.style}</td>\n\t\t\t<td class=\"tdelim delim\">&nbsp;</td>\n\t\t\t<td class=\"tdelim\">{#style_dlg.width}</td>\n\t\t\t<td class=\"tdelim delim\">&nbsp;</td>\n\t\t\t<td class=\"tdelim\">{#style_dlg.color}</td>\n\t\t</tr>\n\n\t\t<tr>\n\t\t\t<td>&nbsp;</td>\n\t\t\t<td class=\"delim\">&nbsp;</td>\n\t\t\t<td><input type=\"checkbox\" id=\"border_style_same\" name=\"border_style_same\" class=\"checkbox\" checked=\"checked\" onClick=\"toggleSame(this,'border_style');\" /> <label for=\"border_style_same\">{#style_dlg.same}</label></td>\n\t\t\t<td class=\"delim\">&nbsp;</td>\n\t\t\t<td><input type=\"checkbox\" id=\"border_width_same\" name=\"border_width_same\" class=\"checkbox\" checked=\"checked\" onClick=\"toggleSame(this,'border_width');\" /> <label for=\"border_width_same\">{#style_dlg.same}</label></td>\n\t\t\t<td class=\"delim\">&nbsp;</td>\n\t\t\t<td><input type=\"checkbox\" id=\"border_color_same\" name=\"border_color_same\" class=\"checkbox\" checked=\"checked\" onClick=\"toggleSame(this,'border_color');\" /> <label for=\"border_color_same\">{#style_dlg.same}</label></td>\n\t\t</tr>\n\n\t\t<tr>\n\t\t\t<td>{#style_dlg.top}</td>\n\t\t\t<td class=\"delim\">&nbsp;</td>\n\t\t\t<td><select id=\"border_style_top\" name=\"border_style_top\" class=\"mceEditableSelect\"></select></td>\n\t\t\t<td class=\"delim\">&nbsp;</td>\n\t\t\t<td>\n\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><select id=\"border_width_top\" name=\"border_width_top\" class=\"mceEditableSelect\"></select></td>\n\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t<label id=\"border_width_top_measurement_label\" for=\"border_width_top_measurement\" style=\"display: none; visibility: hidden;\">Width top Measurement Unit</label>\n\t\t\t\t\t\t\t<select id=\"border_width_top_measurement\" name=\"border_width_top_measurement\" aria-labelledby=\"border_width_top_measurement_label\"></select>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t\t<td class=\"delim\">&nbsp;</td>\n\t\t\t<td>\n\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><input id=\"border_color_top\" name=\"border_color_top\" type=\"text\" value=\"\" size=\"9\" onChange=\"updateColor('border_color_top_pick','border_color_top');\" /></td>\n\t\t\t\t\t\t<td id=\"border_color_top_pickcontainer\">&nbsp;</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t</tr>\n\n\t\t<tr>\n\t\t\t<td>{#style_dlg.right}</td>\n\t\t\t<td class=\"delim\">&nbsp;</td>\n\t\t\t<td><select id=\"border_style_right\" name=\"border_style_right\" class=\"mceEditableSelect\" disabled=\"disabled\"></select></td>\n\t\t\t<td class=\"delim\">&nbsp;</td>\n\t\t\t<td>\n\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><select id=\"border_width_right\" name=\"border_width_right\" class=\"mceEditableSelect\" disabled=\"disabled\"></select></td>\n\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t<label id=\"border_width_right_measurement_label\" for=\"border_width_right_measurement\" style=\"display: none; visibility: hidden;\">Width Right Measurement Unit</label>\n\t\t\t\t\t\t\t<select id=\"border_width_right_measurement\" name=\"border_width_right_measurement\" disabled=\"disabled\" aria-labelledby=\"border_width_right_measurement_label\"></select>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t\t<td class=\"delim\">&nbsp;</td>\n\t\t\t<td>\n\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><input id=\"border_color_right\" name=\"border_color_right\" type=\"text\" value=\"\" size=\"9\" onChange=\"updateColor('border_color_right_pick','border_color_right');\" disabled=\"disabled\" /></td>\n\t\t\t\t\t\t<td id=\"border_color_right_pickcontainer\">&nbsp;</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t</tr>\n\n\t\t<tr>\n\t\t\t<td>{#style_dlg.bottom}</td>\n\t\t\t<td class=\"delim\">&nbsp;</td>\n\t\t\t<td><select id=\"border_style_bottom\" name=\"border_style_bottom\" class=\"mceEditableSelect\" disabled=\"disabled\"></select></td>\n\t\t\t<td class=\"delim\">&nbsp;</td>\n\t\t\t<td>\n\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><select id=\"border_width_bottom\" name=\"border_width_bottom\" class=\"mceEditableSelect\" disabled=\"disabled\"></select></td>\n\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t<label id=\"border_width_bottom_measurement_label\" for=\"border_width_bottom_measurement\" style=\"display: none; visibility: hidden;\">Width Bottom Measurement Unit</label>\n\t\t\t\t\t\t\t<select id=\"border_width_bottom_measurement\" name=\"border_width_bottom_measurement\" disabled=\"disabled\" aria-labelledby=\"border_width_bottom_measurement_label\"></select>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t\t<td class=\"delim\">&nbsp;</td>\n\t\t\t<td>\n\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><input id=\"border_color_bottom\" name=\"border_color_bottom\" type=\"text\" value=\"\" size=\"9\" onChange=\"updateColor('border_color_bottom_pick','border_color_bottom');\" disabled=\"disabled\" /></td>\n\t\t\t\t\t\t<td id=\"border_color_bottom_pickcontainer\">&nbsp;</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t</tr>\n\n\t\t<tr>\n\t\t\t<td>{#style_dlg.left}</td>\n\t\t\t<td class=\"delim\">&nbsp;</td>\n\t\t\t<td><select id=\"border_style_left\" name=\"border_style_left\" class=\"mceEditableSelect\" disabled=\"disabled\"></select></td>\n\t\t\t<td class=\"delim\">&nbsp;</td>\n\t\t\t<td>\n\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><select id=\"border_width_left\" name=\"border_width_left\" class=\"mceEditableSelect\" disabled=\"disabled\"></select></td>\n\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t<label id=\"border_width_left_measurement_label\" for=\"border_width_left_measurement\" style=\"display: none; visibility: hidden;\">Width Left Measurement Unit</label>\n\t\t\t\t\t\t\t<select id=\"border_width_left_measurement\" name=\"border_width_left_measurement\" disabled=\"disabled\" aria-labelledby=\"border_width_left_measurement_label\"></select>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t\t<td class=\"delim\">&nbsp;</td>\n\t\t\t<td>\n\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td><input id=\"border_color_left\" name=\"border_color_left\" type=\"text\" value=\"\" size=\"9\" onChange=\"updateColor('border_color_left_pick','border_color_left');\" disabled=\"disabled\" /></td>\n\t\t\t\t\t\t<td id=\"border_color_left_pickcontainer\">&nbsp;</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</td>\n\t\t</tr>\n\t\t</table>\n\t</fieldset>\n</div>\n\n<div id=\"list_panel\" class=\"panel\">\n<fieldset>\n\t<legend>{#style_dlg.list}</legend>\n\t<table role=\"presentation\" border=\"0\">\n\t\t<tr>\n\t\t\t<td><label for=\"list_type\">{#style_dlg.list_type}</label></td>\n\t\t\t<td><select id=\"list_type\" name=\"list_type\" class=\"mceEditableSelect\"></select></td>\n\t\t</tr>\n\n\t\t<tr>\n\t\t\t<td><label for=\"list_bullet_image\">{#style_dlg.bullet_image}</label></td>\n\t\t\t<td><input id=\"list_bullet_image\" name=\"list_bullet_image\" type=\"text\" /></td>\n\t\t</tr>\n\n\t\t<tr>\n\t\t\t<td><label for=\"list_position\">{#style_dlg.position}</label></td>\n\t\t\t<td><select id=\"list_position\" name=\"list_position\" class=\"mceEditableSelect\"></select></td>\n\t\t</tr>\n\t</table>\n</fieldset>\n</div>\n\n<div id=\"positioning_panel\" class=\"panel\">\n<fieldset>\n\t<legend>{#style_dlg.position}</legend>\n<table role=\"presentation\" border=\"0\">\n\t<tr>\n\t\t<td><label for=\"positioning_type\">{#style_dlg.positioning_type}</label></td>\n\t\t<td><select id=\"positioning_type\" name=\"positioning_type\" class=\"mceEditableSelect\"></select></td>\n\t\t<td>&nbsp;&nbsp;&nbsp;<label for=\"positioning_visibility\">{#style_dlg.visibility}</label></td>\n\t\t<td><select id=\"positioning_visibility\" name=\"positioning_visibility\" class=\"mceEditableSelect\"></select></td>\n\t</tr>\n\n\t<tr>\n\t\t<td><label for=\"positioning_width\">{#style_dlg.width}</label></td>\n\t\t<td>\n\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t<tr>\n\t\t\t\t\t<td><input type=\"text\" id=\"positioning_width\" name=\"positioning_width\" onChange=\"synch('positioning_width','box_width');\" /></td>\n\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t<td>\n\t\t\t\t\t\t<label id=\"positioning_width_measurement_label\" for=\"positioning_width_measurement\" style=\"display: none; visibility: hidden;\">Positioning width Measurement Unit</label>\n\t\t\t\t\t\t<select id=\"positioning_width_measurement\" name=\"positioning_width_measurement\" aria-labelledby=\"positioning_width_measurement_label\"></select>\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t</table>\n\t\t</td>\n\t\t<td>&nbsp;&nbsp;&nbsp;<label for=\"positioning_zindex\">{#style_dlg.zindex}</label></td>\n\t\t<td><input type=\"text\" id=\"positioning_zindex\" name=\"positioning_zindex\" /></td>\n\t</tr>\n\n\t<tr>\n\t\t<td><label for=\"positioning_height\">{#style_dlg.height}</label></td>\n\t\t<td>\n\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t<tr>\n\t\t\t\t\t<td><input type=\"text\" id=\"positioning_height\" name=\"positioning_height\" onChange=\"synch('positioning_height','box_height');\" /></td>\n\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t<td>\n\t\t\t\t\t\t<label id=\"positioning_height_measurement_label\" for=\"positioning_height_measurement\" style=\"display: none; visibility: hidden;\">Positioning Height Measurement Unit</label>\n\t\t\t\t\t\t<select id=\"positioning_height_measurement\" name=\"positioning_height_measurement\" aria-labelledby=\"positioning_height_measurement_label\"></select>\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t</table>\n\t\t</td>\n\t\t<td>&nbsp;&nbsp;&nbsp;<label for=\"positioning_overflow\">{#style_dlg.overflow}</label></td>\n\t\t<td><select id=\"positioning_overflow\" name=\"positioning_overflow\" class=\"mceEditableSelect\"></select></td>\n\t</tr>\n</table>\n</fieldset>\n\n<div style=\"float: left; width: 49%\">\n\t<fieldset>\n\t\t<legend>{#style_dlg.placement}</legend>\n\n\t\t<table role=\"presentation\" border=\"0\">\n\t\t\t<tr>\n\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t<td><input type=\"checkbox\" id=\"positioning_placement_same\" name=\"positioning_placement_same\" class=\"checkbox\" checked=\"checked\" onClick=\"toggleSame(this,'positioning_placement');\" /> <label for=\"positioning_placement_same\">{#style_dlg.same}</label></td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td>{#style_dlg.top}</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"positioning_placement_top\" name=\"positioning_placement_top\" /></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"positioning_placement_top_measurement_label\" for=\"positioning_placement_top_measurement\" style=\"display: none; visibility: hidden;\">Placement Top Measurement Unit</label>\n\t\t\t\t\t\t\t\t<select id=\"positioning_placement_top_measurement\" name=\"positioning_placement_top_measurement\" aria-labelledby=\"positioning_placement_top_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td>{#style_dlg.right}</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"positioning_placement_right\" name=\"positioning_placement_right\" disabled=\"disabled\" /></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"positioning_placement_right_measurement_label\" for=\"positioning_placement_right_measurement\" style=\"display: none; visibility: hidden;\">Placement Right Measurement Unit</label>\n\t\t\t\t\t\t\t\t<select id=\"positioning_placement_right_measurement\" name=\"positioning_placement_right_measurement\" disabled=\"disabled\" aria-labelledby=\"positioning_placement_right_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td>{#style_dlg.bottom}</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"positioning_placement_bottom\" name=\"positioning_placement_bottom\" disabled=\"disabled\" /></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"positioning_placement_bottom_measurement_label\" for=\"positioning_placement_bottom_measurement\" style=\"display: none; visibility: hidden;\">Placement Bottom Measurement Unit</label>\n\t\t\t\t\t\t\t\t<select id=\"positioning_placement_bottom_measurement\" name=\"positioning_placement_bottom_measurement\" disabled=\"disabled\" aria-labelledby=\"positioning_placement_bottom_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td>{#style_dlg.left}</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"positioning_placement_left\" name=\"positioning_placement_left\" disabled=\"disabled\" /></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"positioning_placement_left_measurement_label\" for=\"positioning_placement_left_measurement\" style=\"display: none; visibility: hidden;\">Placement Left Measurement Unit</label>\n\t\t\t\t\t\t\t\t<select id=\"positioning_placement_left_measurement\" name=\"positioning_placement_left_measurement\" disabled=\"disabled\" aria-labelledby=\"positioning_placement_left_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t</table>\n\t</fieldset>\n</div>\n\n<div style=\"float: right; width: 49%\">\n\t<fieldset>\n\t\t<legend>{#style_dlg.clip}</legend>\n\n\t\t<table role=\"presentation\" border=\"0\">\n\t\t\t<tr>\n\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t<td><input type=\"checkbox\" id=\"positioning_clip_same\" name=\"positioning_clip_same\" class=\"checkbox\" checked=\"checked\" onClick=\"toggleSame(this,'positioning_clip');\" /> <label for=\"positioning_clip_same\">{#style_dlg.same}</label></td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td>{#style_dlg.top}</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"positioning_clip_top\" name=\"positioning_clip_top\" /></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"positioning_clip_top_measurement_label\" for=\"positioning_clip_top_measurement\" style=\"display: none; visibility: hidden;\">Clip Top Measurement Unit</label>\n\t\t\t\t\t\t\t\t<select id=\"positioning_clip_top_measurement\" name=\"positioning_clip_top_measurement\" aria-labelledby=\"positioning_clip_top_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td>{#style_dlg.right}</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"positioning_clip_right\" name=\"positioning_clip_right\" disabled=\"disabled\" /></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"positioning_clip_right_measurement_label\" for=\"positioning_clip_right_measurement\" style=\"display: none; visibility: hidden;\">Clip Right Measurement Unit</label>\n\t\t\t\t\t\t\t\t<select id=\"positioning_clip_right_measurement\" name=\"positioning_clip_right_measurement\" disabled=\"disabled\" aria-labelledby=\"positioning_clip_right_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td>{#style_dlg.bottom}</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"positioning_clip_bottom\" name=\"positioning_clip_bottom\" disabled=\"disabled\" /></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"positioning_clip_bottom_measurement_label\" for=\"positioning_clip_bottom_measurement\" style=\"display: none; visibility: hidden;\">Clip Bottom Measurement Unit</label>\n\t\t\t\t\t\t\t\t<select id=\"positioning_clip_bottom_measurement\" name=\"positioning_clip_bottom_measurement\" disabled=\"disabled\" aria-labelledby=\"positioning_clip_bottom_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td>{#style_dlg.left}</td>\n\t\t\t\t<td>\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"positioning_clip_left\" name=\"positioning_clip_left\" disabled=\"disabled\" /></td>\n\t\t\t\t\t\t\t<td>&nbsp;</td>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<label id=\"positioning_clip_left_measurement_label\" for=\"positioning_clip_left_measurement\" style=\"display: none; visibility: hidden;\">Clip Left Measurement Unit</label>\n\t\t\t\t\t\t\t\t<select id=\"positioning_clip_left_measurement\" name=\"positioning_clip_left_measurement\" disabled=\"disabled\" aria-labelledby=\"positioning_clip_left_measurement_label\"></select>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</table>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t</table>\n\t</fieldset>\n</div>\n<br style=\"clear: both\" />\n</div>\n</div>\n\n<div class=\"mceActionPanel\">\n\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#update}\" />\n\t<input type=\"button\" class=\"button\" id=\"apply\" name=\"apply\" value=\"{#style_dlg.apply}\" onClick=\"applyAction();\" />\n\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onClick=\"tinyMCEPopup.close();\" />\n</div>\n</form>\n\n<div style=\"display: none\">\n\t<div id=\"container\"></div>\n</div>\n\n</body>\n</html>\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/tabfocus/editor_plugin.js",
    "content": "(function(){var c=tinymce.DOM,a=tinymce.dom.Event,d=tinymce.each,b=tinymce.explode;tinymce.create(\"tinymce.plugins.TabFocusPlugin\",{init:function(f,g){function e(i,j){if(j.keyCode===9){return a.cancel(j)}}function h(l,p){var j,m,o,n,k;function q(t){n=c.select(\":input:enabled,*[tabindex]\");function s(v){return v.nodeName===\"BODY\"||(v.type!=\"hidden\"&&!(v.style.display==\"none\")&&!(v.style.visibility==\"hidden\")&&s(v.parentNode))}function i(v){return v.attributes.tabIndex.specified||v.nodeName==\"INPUT\"||v.nodeName==\"TEXTAREA\"}function u(){return tinymce.isIE6||tinymce.isIE7}function r(v){return((!u()||i(v)))&&v.getAttribute(\"tabindex\")!=\"-1\"&&s(v)}d(n,function(w,v){if(w.id==l.id){j=v;return false}});if(t>0){for(m=j+1;m<n.length;m++){if(r(n[m])){return n[m]}}}else{for(m=j-1;m>=0;m--){if(r(n[m])){return n[m]}}}return null}if(p.keyCode===9){k=b(l.getParam(\"tab_focus\",l.getParam(\"tabfocus_elements\",\":prev,:next\")));if(k.length==1){k[1]=k[0];k[0]=\":prev\"}if(p.shiftKey){if(k[0]==\":prev\"){n=q(-1)}else{n=c.get(k[0])}}else{if(k[1]==\":next\"){n=q(1)}else{n=c.get(k[1])}}if(n){if(n.id&&(l=tinymce.get(n.id||n.name))){l.focus()}else{window.setTimeout(function(){if(!tinymce.isWebKit){window.focus()}n.focus()},10)}return a.cancel(p)}}}f.onKeyUp.add(e);if(tinymce.isGecko){f.onKeyPress.add(h);f.onKeyDown.add(e)}else{f.onKeyDown.add(h)}},getInfo:function(){return{longname:\"Tabfocus\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/tabfocus\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}}});tinymce.PluginManager.add(\"tabfocus\",tinymce.plugins.TabFocusPlugin)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/tabfocus/editor_plugin_src.js",
    "content": "/**\n * editor_plugin_src.js\n *\n * Copyright 2009, Moxiecode Systems AB\n * Released under LGPL License.\n *\n * License: http://tinymce.moxiecode.com/license\n * Contributing: http://tinymce.moxiecode.com/contributing\n */\n\n(function() {\n\tvar DOM = tinymce.DOM, Event = tinymce.dom.Event, each = tinymce.each, explode = tinymce.explode;\n\n\ttinymce.create('tinymce.plugins.TabFocusPlugin', {\n\t\tinit : function(ed, url) {\n\t\t\tfunction tabCancel(ed, e) {\n\t\t\t\tif (e.keyCode === 9)\n\t\t\t\t\treturn Event.cancel(e);\n\t\t\t}\n\n\t\t\tfunction tabHandler(ed, e) {\n\t\t\t\tvar x, i, f, el, v;\n\n\t\t\t\tfunction find(d) {\n\t\t\t\t\tel = DOM.select(':input:enabled,*[tabindex]');\n\n\t\t\t\t\tfunction canSelectRecursive(e) {\n\t\t\t\t\t\treturn e.nodeName===\"BODY\" || (e.type != 'hidden' &&\n\t\t\t\t\t\t\t!(e.style.display == \"none\") &&\n\t\t\t\t\t\t\t!(e.style.visibility == \"hidden\") && canSelectRecursive(e.parentNode));\n\t\t\t\t\t}\n\t\t\t\t\tfunction canSelectInOldIe(el) {\n\t\t\t\t\t\treturn el.attributes[\"tabIndex\"].specified || el.nodeName == \"INPUT\" || el.nodeName == \"TEXTAREA\";\n\t\t\t\t\t}\n\t\t\t\t\tfunction isOldIe() {\n\t\t\t\t\t\treturn tinymce.isIE6 || tinymce.isIE7;\n\t\t\t\t\t}\n\t\t\t\t\tfunction canSelect(el) {\n\t\t\t\t\t\treturn ((!isOldIe() || canSelectInOldIe(el))) && el.getAttribute(\"tabindex\") != '-1' && canSelectRecursive(el);\n\t\t\t\t\t}\n\n\t\t\t\t\teach(el, function(e, i) {\n\t\t\t\t\t\tif (e.id == ed.id) {\n\t\t\t\t\t\t\tx = i;\n\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t\tif (d > 0) {\n\t\t\t\t\t\tfor (i = x + 1; i < el.length; i++) {\n\t\t\t\t\t\t\tif (canSelect(el[i]))\n\t\t\t\t\t\t\t\treturn el[i];\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tfor (i = x - 1; i >= 0; i--) {\n\t\t\t\t\t\t\tif (canSelect(el[i]))\n\t\t\t\t\t\t\t\treturn el[i];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\tif (e.keyCode === 9) {\n\t\t\t\t\tv = explode(ed.getParam('tab_focus', ed.getParam('tabfocus_elements', ':prev,:next')));\n\n\t\t\t\t\tif (v.length == 1) {\n\t\t\t\t\t\tv[1] = v[0];\n\t\t\t\t\t\tv[0] = ':prev';\n\t\t\t\t\t}\n\n\t\t\t\t\t// Find element to focus\n\t\t\t\t\tif (e.shiftKey) {\n\t\t\t\t\t\tif (v[0] == ':prev')\n\t\t\t\t\t\t\tel = find(-1);\n\t\t\t\t\t\telse\n\t\t\t\t\t\t\tel = DOM.get(v[0]);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (v[1] == ':next')\n\t\t\t\t\t\t\tel = find(1);\n\t\t\t\t\t\telse\n\t\t\t\t\t\t\tel = DOM.get(v[1]);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (el) {\n\t\t\t\t\t\tif (el.id && (ed = tinymce.get(el.id || el.name)))\n\t\t\t\t\t\t\ted.focus();\n\t\t\t\t\t\telse\n\t\t\t\t\t\t\twindow.setTimeout(function() {\n\t\t\t\t\t\t\t\tif (!tinymce.isWebKit)\n\t\t\t\t\t\t\t\t\twindow.focus();\n\t\t\t\t\t\t\t\tel.focus();\n\t\t\t\t\t\t\t}, 10);\n\n\t\t\t\t\t\treturn Event.cancel(e);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\ted.onKeyUp.add(tabCancel);\n\n\t\t\tif (tinymce.isGecko) {\n\t\t\t\ted.onKeyPress.add(tabHandler);\n\t\t\t\ted.onKeyDown.add(tabCancel);\n\t\t\t} else\n\t\t\t\ted.onKeyDown.add(tabHandler);\n\n\t\t},\n\n\t\tgetInfo : function() {\n\t\t\treturn {\n\t\t\t\tlongname : 'Tabfocus',\n\t\t\t\tauthor : 'Moxiecode Systems AB',\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/tabfocus',\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\n\t\t\t};\n\t\t}\n\t});\n\n\t// Register plugin\n\ttinymce.PluginManager.add('tabfocus', tinymce.plugins.TabFocusPlugin);\n})();\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/cell.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#table_dlg.cell_title}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/form_utils.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/validate.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/editable_selects.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/cell.js\"></script>\r\n\t<link href=\"css/cell.css\" rel=\"stylesheet\" type=\"text/css\" />\r\n</head>\r\n<body id=\"tablecell\" style=\"display: none\" role=\"application\">\r\n\t<form onsubmit=\"updateAction();return false;\" action=\"#\">\r\n\t\t<div class=\"tabs\">\r\n\t\t\t<ul>\r\n\t\t\t\t<li id=\"general_tab\" class=\"current\" aria-controls=\"general_panel\"><span><a href=\"javascript:mcTabs.displayTab('general_tab','general_panel');\" onmousedown=\"return false;\">{#table_dlg.general_tab}</a></span></li>\r\n\t\t\t\t<li id=\"advanced_tab\" aria-controls=\"advanced_panel\"><span><a href=\"javascript:mcTabs.displayTab('advanced_tab','advanced_panel');\" onmousedown=\"return false;\">{#table_dlg.advanced_tab}</a></span></li>\r\n\t\t\t</ul>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"panel_wrapper\">\r\n\t\t\t<div id=\"general_panel\" class=\"panel current\">\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#table_dlg.general_props}</legend>\r\n\r\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"align\">{#table_dlg.align}</label></td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"align\" name=\"align\" class=\"mceFocus\">\r\n\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"center\">{#table_dlg.align_middle}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"left\">{#table_dlg.align_left}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"right\">{#table_dlg.align_right}</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\r\n\t\t\t\t\t\t\t<td><label for=\"celltype\">{#table_dlg.cell_type}</label></td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"celltype\" name=\"celltype\">\r\n\t\t\t\t\t\t\t\t\t<option value=\"td\">{#table_dlg.td}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"th\">{#table_dlg.th}</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"valign\">{#table_dlg.valign}</label></td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"valign\" name=\"valign\">\r\n\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"top\">{#table_dlg.align_top}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"middle\">{#table_dlg.align_middle}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"bottom\">{#table_dlg.align_bottom}</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t\t<td><label for=\"scope\">{#table_dlg.scope}</label></td>\r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"scope\" name=\"scope\">\r\n\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"col\">{#table.col}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"row\">{#table.row}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"rowgroup\">{#table_dlg.rowgroup}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"colgroup\">{#table_dlg.colgroup}</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"width\">{#table_dlg.width}</label></td>\r\n\t\t\t\t\t\t\t<td><input id=\"width\" name=\"width\" type=\"text\" value=\"\" size=\"7\" maxlength=\"7\" onchange=\"changedSize();\" class=\"size\" /></td>\r\n\r\n\t\t\t\t\t\t\t<td><label for=\"height\">{#table_dlg.height}</label></td>\r\n\t\t\t\t\t\t\t<td><input id=\"height\" name=\"height\" type=\"text\" value=\"\" size=\"7\" maxlength=\"7\" onchange=\"changedSize();\" class=\"size\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr id=\"styleSelectRow\">\r\n\t\t\t\t\t\t\t<td><label for=\"class\">{#class_name}</label></td>\r\n\t\t\t\t\t\t\t<td colspan=\"3\">\r\n\t\t\t\t\t\t\t\t<select id=\"class\" name=\"class\" class=\"mceEditableSelect\">\r\n\t\t\t\t\t\t\t\t\t<option value=\"\" selected=\"selected\">{#not_set}</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div id=\"advanced_panel\" class=\"panel\">\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#table_dlg.advanced_props}</legend>\r\n\r\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"4\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"id\">{#table_dlg.id}</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"id\" name=\"id\" type=\"text\" value=\"\" style=\"width: 200px\" /></td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"style\">{#table_dlg.style}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"style\" name=\"style\" value=\"\" style=\"width: 200px;\" onchange=\"changedStyle();\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"dir\">{#table_dlg.langdir}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"dir\" name=\"dir\" style=\"width: 200px\"> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"ltr\">{#table_dlg.ltr}</option> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"rtl\">{#table_dlg.rtl}</option> \r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"lang\">{#table_dlg.langcode}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<input id=\"lang\" name=\"lang\" type=\"text\" value=\"\" style=\"width: 200px\" />\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"backgroundimage\">{#table_dlg.bgimage}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input id=\"backgroundimage\" name=\"backgroundimage\" type=\"text\" value=\"\" style=\"width: 200px\" onchange=\"changedBackgroundImage();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"backgroundimagebrowsercontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr role=\"group\" aria-labelledby=\"bordercolor_label\">\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"bordercolor_label\" for=\"bordercolor\">{#table_dlg.bordercolor}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input id=\"bordercolor\" name=\"bordercolor\" type=\"text\" value=\"\" size=\"9\" onchange=\"updateColor('bordercolor_pick','bordercolor');changedColor();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"bordercolor_pickcontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr role=\"group\" aria-labelledby=\"bgcolor_label\">\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"bgcolor_label\" for=\"bgcolor\">{#table_dlg.bgcolor}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input id=\"bgcolor\" name=\"bgcolor\" type=\"text\" value=\"\" size=\"9\" onchange=\"updateColor('bgcolor_pick','bgcolor');changedColor();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"bgcolor_pickcontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"mceActionPanel\">\r\n\t\t\t<div>\r\n\t\t\t\t<select id=\"action\" name=\"action\">\r\n\t\t\t\t\t<option value=\"cell\">{#table_dlg.cell_cell}</option>\r\n\t\t\t\t\t<option value=\"row\">{#table_dlg.cell_row}</option>\r\n\t\t\t\t\t<option value=\"col\">{#table_dlg.cell_col}</option>\r\n\t\t\t\t\t<option value=\"all\">{#table_dlg.cell_all}</option>\r\n\t\t\t\t</select>\r\n\t\t\t</div>\r\n\r\n\t\t\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#update}\" />\r\n\t\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t\t</div>\r\n\t</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/css/cell.css",
    "content": "/* CSS file for cell dialog in the table plugin */\r\n\r\n.panel_wrapper div.current {\r\n\theight: 200px;\r\n}\r\n\r\n.advfield {\r\n\twidth: 200px;\r\n}\r\n\r\n#action {\r\n\tmargin-bottom: 3px;\r\n}\r\n\r\n#class {\r\n\twidth: 150px;\r\n}"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/css/row.css",
    "content": "/* CSS file for row dialog in the table plugin */\r\n\r\n.panel_wrapper div.current {\r\n\theight: 200px;\r\n}\r\n\r\n.advfield {\r\n\twidth: 200px;\r\n}\r\n\r\n#action {\r\n\tmargin-bottom: 3px;\r\n}\r\n\r\n#rowtype,#align,#valign,#class,#height {\r\n\twidth: 150px;\r\n}\r\n\r\n#height {\r\n\twidth: 50px;\t\r\n}\r\n\r\n.col2 {\r\n\tpadding-left: 20px;\r\n}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/css/table.css",
    "content": "/* CSS file for table dialog in the table plugin */\r\n\r\n.panel_wrapper div.current {\r\n\theight: 245px;\r\n}\r\n\r\n.advfield {\r\n\twidth: 200px;\r\n}\r\n\r\n#class {\r\n\twidth: 150px;\r\n}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/editor_plugin.js",
    "content": "(function(d){var e=d.each;function c(g,h){var j=h.ownerDocument,f=j.createRange(),k;f.setStartBefore(h);f.setEnd(g.endContainer,g.endOffset);k=j.createElement(\"body\");k.appendChild(f.cloneContents());return k.innerHTML.replace(/<(br|img|object|embed|input|textarea)[^>]*>/gi,\"-\").replace(/<[^>]+>/g,\"\").length==0}function a(g,f){return parseInt(g.getAttribute(f)||1)}function b(H,G,K){var g,L,D,o;t();o=G.getParent(K.getStart(),\"th,td\");if(o){L=F(o);D=I();o=z(L.x,L.y)}function A(N,M){N=N.cloneNode(M);N.removeAttribute(\"id\");return N}function t(){var M=0;g=[];e([\"thead\",\"tbody\",\"tfoot\"],function(N){var O=G.select(\"> \"+N+\" tr\",H);e(O,function(P,Q){Q+=M;e(G.select(\"> td, > th\",P),function(W,R){var S,T,U,V;if(g[Q]){while(g[Q][R]){R++}}U=a(W,\"rowspan\");V=a(W,\"colspan\");for(T=Q;T<Q+U;T++){if(!g[T]){g[T]=[]}for(S=R;S<R+V;S++){g[T][S]={part:N,real:T==Q&&S==R,elm:W,rowspan:U,colspan:V}}}})});M+=O.length})}function z(M,O){var N;N=g[O];if(N){return N[M]}}function s(O,M,N){if(O){N=parseInt(N);if(N===1){O.removeAttribute(M,1)}else{O.setAttribute(M,N,1)}}}function j(M){return M&&(G.hasClass(M.elm,\"mceSelected\")||M==o)}function k(){var M=[];e(H.rows,function(N){e(N.cells,function(O){if(G.hasClass(O,\"mceSelected\")||O==o.elm){M.push(N);return false}})});return M}function r(){var M=G.createRng();M.setStartAfter(H);M.setEndAfter(H);K.setRng(M);G.remove(H)}function f(M){var N;d.walk(M,function(P){var O;if(P.nodeType==3){e(G.getParents(P.parentNode,null,M).reverse(),function(Q){Q=A(Q,false);if(!N){N=O=Q}else{if(O){O.appendChild(Q)}}O=Q});if(O){O.innerHTML=d.isIE?\"&nbsp;\":'<br data-mce-bogus=\"1\" />'}return false}},\"childNodes\");M=A(M,false);s(M,\"rowSpan\",1);s(M,\"colSpan\",1);if(N){M.appendChild(N)}else{if(!d.isIE){M.innerHTML='<br data-mce-bogus=\"1\" />'}}return M}function q(){var M=G.createRng();e(G.select(\"tr\",H),function(N){if(N.cells.length==0){G.remove(N)}});if(G.select(\"tr\",H).length==0){M.setStartAfter(H);M.setEndAfter(H);K.setRng(M);G.remove(H);return}e(G.select(\"thead,tbody,tfoot\",H),function(N){if(N.rows.length==0){G.remove(N)}});t();row=g[Math.min(g.length-1,L.y)];if(row){K.select(row[Math.min(row.length-1,L.x)].elm,true);K.collapse(true)}}function u(S,Q,U,R){var P,N,M,O,T;P=g[Q][S].elm.parentNode;for(M=1;M<=U;M++){P=G.getNext(P,\"tr\");if(P){for(N=S;N>=0;N--){T=g[Q+M][N].elm;if(T.parentNode==P){for(O=1;O<=R;O++){G.insertAfter(f(T),T)}break}}if(N==-1){for(O=1;O<=R;O++){P.insertBefore(f(P.cells[0]),P.cells[0])}}}}}function C(){e(g,function(M,N){e(M,function(P,O){var S,R,T,Q;if(j(P)){P=P.elm;S=a(P,\"colspan\");R=a(P,\"rowspan\");if(S>1||R>1){s(P,\"rowSpan\",1);s(P,\"colSpan\",1);for(Q=0;Q<S-1;Q++){G.insertAfter(f(P),P)}u(O,N,R-1,S)}}})})}function p(V,S,Y){var P,O,X,W,U,R,T,M,V,N,Q;if(V){pos=F(V);P=pos.x;O=pos.y;X=P+(S-1);W=O+(Y-1)}else{P=L.x;O=L.y;X=D.x;W=D.y}T=z(P,O);M=z(X,W);if(T&&M&&T.part==M.part){C();t();T=z(P,O).elm;s(T,\"colSpan\",(X-P)+1);s(T,\"rowSpan\",(W-O)+1);for(R=O;R<=W;R++){for(U=P;U<=X;U++){if(!g[R]||!g[R][U]){continue}V=g[R][U].elm;if(V!=T){N=d.grep(V.childNodes);e(N,function(Z){T.appendChild(Z)});if(N.length){N=d.grep(T.childNodes);Q=0;e(N,function(Z){if(Z.nodeName==\"BR\"&&G.getAttrib(Z,\"data-mce-bogus\")&&Q++<N.length-1){T.removeChild(Z)}})}G.remove(V)}}}q()}}function l(Q){var M,S,P,R,T,U,N,V,O;e(g,function(W,X){e(W,function(Z,Y){if(j(Z)){Z=Z.elm;T=Z.parentNode;U=A(T,false);M=X;if(Q){return false}}});if(Q){return !M}});for(R=0;R<g[0].length;R++){if(!g[M][R]){continue}S=g[M][R].elm;if(S!=P){if(!Q){O=a(S,\"rowspan\");if(O>1){s(S,\"rowSpan\",O+1);continue}}else{if(M>0&&g[M-1][R]){V=g[M-1][R].elm;O=a(V,\"rowSpan\");if(O>1){s(V,\"rowSpan\",O+1);continue}}}N=f(S);s(N,\"colSpan\",S.colSpan);U.appendChild(N);P=S}}if(U.hasChildNodes()){if(!Q){G.insertAfter(U,T)}else{T.parentNode.insertBefore(U,T)}}}function h(N){var O,M;e(g,function(P,Q){e(P,function(S,R){if(j(S)){O=R;if(N){return false}}});if(N){return !O}});e(g,function(S,T){var P,Q,R;if(!S[O]){return}P=S[O].elm;if(P!=M){R=a(P,\"colspan\");Q=a(P,\"rowspan\");if(R==1){if(!N){G.insertAfter(f(P),P);u(O,T,Q-1,R)}else{P.parentNode.insertBefore(f(P),P);u(O,T,Q-1,R)}}else{s(P,\"colSpan\",P.colSpan+1)}M=P}})}function n(){var M=[];e(g,function(N,O){e(N,function(Q,P){if(j(Q)&&d.inArray(M,P)===-1){e(g,function(T){var R=T[P].elm,S;S=a(R,\"colSpan\");if(S>1){s(R,\"colSpan\",S-1)}else{G.remove(R)}});M.push(P)}})});q()}function m(){var N;function M(Q){var P,R,O;P=G.getNext(Q,\"tr\");e(Q.cells,function(S){var T=a(S,\"rowSpan\");if(T>1){s(S,\"rowSpan\",T-1);R=F(S);u(R.x,R.y,1,1)}});R=F(Q.cells[0]);e(g[R.y],function(S){var T;S=S.elm;if(S!=O){T=a(S,\"rowSpan\");if(T<=1){G.remove(S)}else{s(S,\"rowSpan\",T-1)}O=S}})}N=k();e(N.reverse(),function(O){M(O)});q()}function E(){var M=k();G.remove(M);q();return M}function J(){var M=k();e(M,function(O,N){M[N]=A(O,true)});return M}function B(O,N){var P=k(),M=P[N?0:P.length-1],Q=M.cells.length;e(g,function(S){var R;Q=0;e(S,function(U,T){if(U.real){Q+=U.colspan}if(U.elm.parentNode==M){R=1}});if(R){return false}});if(!N){O.reverse()}e(O,function(T){var S=T.cells.length,R;for(i=0;i<S;i++){R=T.cells[i];s(R,\"colSpan\",1);s(R,\"rowSpan\",1)}for(i=S;i<Q;i++){T.appendChild(f(T.cells[S-1]))}for(i=Q;i<S;i++){G.remove(T.cells[i])}if(N){M.parentNode.insertBefore(T,M)}else{G.insertAfter(T,M)}})}function F(M){var N;e(g,function(O,P){e(O,function(R,Q){if(R.elm==M){N={x:Q,y:P};return false}});return !N});return N}function w(M){L=F(M)}function I(){var O,N,M;N=M=0;e(g,function(P,Q){e(P,function(S,R){var U,T;if(j(S)){S=g[Q][R];if(R>N){N=R}if(Q>M){M=Q}if(S.real){U=S.colspan-1;T=S.rowspan-1;if(U){if(R+U>N){N=R+U}}if(T){if(Q+T>M){M=Q+T}}}}})});return{x:N,y:M}}function v(S){var P,O,U,T,N,M,Q,R;D=F(S);if(L&&D){P=Math.min(L.x,D.x);O=Math.min(L.y,D.y);U=Math.max(L.x,D.x);T=Math.max(L.y,D.y);N=U;M=T;for(y=O;y<=M;y++){S=g[y][P];if(!S.real){if(P-(S.colspan-1)<P){P-=S.colspan-1}}}for(x=P;x<=N;x++){S=g[O][x];if(!S.real){if(O-(S.rowspan-1)<O){O-=S.rowspan-1}}}for(y=O;y<=T;y++){for(x=P;x<=U;x++){S=g[y][x];if(S.real){Q=S.colspan-1;R=S.rowspan-1;if(Q){if(x+Q>N){N=x+Q}}if(R){if(y+R>M){M=y+R}}}}}G.removeClass(G.select(\"td.mceSelected,th.mceSelected\"),\"mceSelected\");for(y=O;y<=M;y++){for(x=P;x<=N;x++){if(g[y][x]){G.addClass(g[y][x].elm,\"mceSelected\")}}}}}d.extend(this,{deleteTable:r,split:C,merge:p,insertRow:l,insertCol:h,deleteCols:n,deleteRows:m,cutRows:E,copyRows:J,pasteRows:B,getPos:F,setStartCell:w,setEndCell:v})}d.create(\"tinymce.plugins.TablePlugin\",{init:function(g,h){var f,m,j=true;function l(p){var o=g.selection,n=g.dom.getParent(p||o.getNode(),\"table\");if(n){return new b(n,g.dom,o)}}function k(){g.getBody().style.webkitUserSelect=\"\";if(j){g.dom.removeClass(g.dom.select(\"td.mceSelected,th.mceSelected\"),\"mceSelected\");j=false}}e([[\"table\",\"table.desc\",\"mceInsertTable\",true],[\"delete_table\",\"table.del\",\"mceTableDelete\"],[\"delete_col\",\"table.delete_col_desc\",\"mceTableDeleteCol\"],[\"delete_row\",\"table.delete_row_desc\",\"mceTableDeleteRow\"],[\"col_after\",\"table.col_after_desc\",\"mceTableInsertColAfter\"],[\"col_before\",\"table.col_before_desc\",\"mceTableInsertColBefore\"],[\"row_after\",\"table.row_after_desc\",\"mceTableInsertRowAfter\"],[\"row_before\",\"table.row_before_desc\",\"mceTableInsertRowBefore\"],[\"row_props\",\"table.row_desc\",\"mceTableRowProps\",true],[\"cell_props\",\"table.cell_desc\",\"mceTableCellProps\",true],[\"split_cells\",\"table.split_cells_desc\",\"mceTableSplitCells\",true],[\"merge_cells\",\"table.merge_cells_desc\",\"mceTableMergeCells\",true]],function(n){g.addButton(n[0],{title:n[1],cmd:n[2],ui:n[3]})});if(!d.isIE){g.onClick.add(function(n,o){o=o.target;if(o.nodeName===\"TABLE\"){n.selection.select(o);n.nodeChanged()}})}g.onPreProcess.add(function(o,p){var n,q,r,t=o.dom,s;n=t.select(\"table\",p.node);q=n.length;while(q--){r=n[q];t.setAttrib(r,\"data-mce-style\",\"\");if((s=t.getAttrib(r,\"width\"))){t.setStyle(r,\"width\",s);t.setAttrib(r,\"width\",\"\")}if((s=t.getAttrib(r,\"height\"))){t.setStyle(r,\"height\",s);t.setAttrib(r,\"height\",\"\")}}});g.onNodeChange.add(function(q,o,s){var r;s=q.selection.getStart();r=q.dom.getParent(s,\"td,th,caption\");o.setActive(\"table\",s.nodeName===\"TABLE\"||!!r);if(r&&r.nodeName===\"CAPTION\"){r=0}o.setDisabled(\"delete_table\",!r);o.setDisabled(\"delete_col\",!r);o.setDisabled(\"delete_table\",!r);o.setDisabled(\"delete_row\",!r);o.setDisabled(\"col_after\",!r);o.setDisabled(\"col_before\",!r);o.setDisabled(\"row_after\",!r);o.setDisabled(\"row_before\",!r);o.setDisabled(\"row_props\",!r);o.setDisabled(\"cell_props\",!r);o.setDisabled(\"split_cells\",!r);o.setDisabled(\"merge_cells\",!r)});g.onInit.add(function(r){var p,t,q=r.dom,u;f=r.windowManager;r.onMouseDown.add(function(w,z){if(z.button!=2){k();t=q.getParent(z.target,\"td,th\");p=q.getParent(t,\"table\")}});q.bind(r.getDoc(),\"mouseover\",function(C){var A,z,B=C.target;if(t&&(u||B!=t)&&(B.nodeName==\"TD\"||B.nodeName==\"TH\")){z=q.getParent(B,\"table\");if(z==p){if(!u){u=l(z);u.setStartCell(t);r.getBody().style.webkitUserSelect=\"none\"}u.setEndCell(B);j=true}A=r.selection.getSel();try{if(A.removeAllRanges){A.removeAllRanges()}else{A.empty()}}catch(w){}C.preventDefault()}});r.onMouseUp.add(function(F,G){var z,B=F.selection,H,I=B.getSel(),w,C,A,E;if(t){if(u){F.getBody().style.webkitUserSelect=\"\"}function D(J,L){var K=new d.dom.TreeWalker(J,J);do{if(J.nodeType==3&&d.trim(J.nodeValue).length!=0){if(L){z.setStart(J,0)}else{z.setEnd(J,J.nodeValue.length)}return}if(J.nodeName==\"BR\"){if(L){z.setStartBefore(J)}else{z.setEndBefore(J)}return}}while(J=(L?K.next():K.prev()))}H=q.select(\"td.mceSelected,th.mceSelected\");if(H.length>0){z=q.createRng();C=H[0];E=H[H.length-1];z.setStartBefore(C);z.setEndAfter(C);D(C,1);w=new d.dom.TreeWalker(C,q.getParent(H[0],\"table\"));do{if(C.nodeName==\"TD\"||C.nodeName==\"TH\"){if(!q.hasClass(C,\"mceSelected\")){break}A=C}}while(C=w.next());D(A);B.setRng(z)}F.nodeChanged();t=u=p=null}});r.onKeyUp.add(function(w,z){k()});r.onKeyDown.add(function(w,z){n(w)});r.onMouseDown.add(function(w,z){if(z.button!=2){n(w)}});function o(D,z,A,F){var B=3,G=D.dom.getParent(z.startContainer,\"TABLE\"),C,w,E;if(G){C=G.parentNode}w=z.startContainer.nodeType==B&&z.startOffset==0&&z.endOffset==0&&F&&(A.nodeName==\"TR\"||A==C);E=(A.nodeName==\"TD\"||A.nodeName==\"TH\")&&!F;return w||E}function n(A){if(!d.isWebKit){return}var z=A.selection.getRng();var C=A.selection.getNode();var B=A.dom.getParent(z.startContainer,\"TD\");if(!o(A,z,C,B)){return}if(!B){B=C}var w=B.lastChild;while(w.lastChild){w=w.lastChild}z.setEnd(w,w.nodeValue.length);A.selection.setRng(z)}r.plugins.table.fixTableCellSelection=n;if(r&&r.plugins.contextmenu){r.plugins.contextmenu.onContextMenu.add(function(A,w,C){var D,B=r.selection,z=B.getNode()||r.getBody();if(r.dom.getParent(C,\"td\")||r.dom.getParent(C,\"th\")||r.dom.select(\"td.mceSelected,th.mceSelected\").length){w.removeAll();if(z.nodeName==\"A\"&&!r.dom.getAttrib(z,\"name\")){w.add({title:\"advanced.link_desc\",icon:\"link\",cmd:r.plugins.advlink?\"mceAdvLink\":\"mceLink\",ui:true});w.add({title:\"advanced.unlink_desc\",icon:\"unlink\",cmd:\"UnLink\"});w.addSeparator()}if(z.nodeName==\"IMG\"&&z.className.indexOf(\"mceItem\")==-1){w.add({title:\"advanced.image_desc\",icon:\"image\",cmd:r.plugins.advimage?\"mceAdvImage\":\"mceImage\",ui:true});w.addSeparator()}w.add({title:\"table.desc\",icon:\"table\",cmd:\"mceInsertTable\",value:{action:\"insert\"}});w.add({title:\"table.props_desc\",icon:\"table_props\",cmd:\"mceInsertTable\"});w.add({title:\"table.del\",icon:\"delete_table\",cmd:\"mceTableDelete\"});w.addSeparator();D=w.addMenu({title:\"table.cell\"});D.add({title:\"table.cell_desc\",icon:\"cell_props\",cmd:\"mceTableCellProps\"});D.add({title:\"table.split_cells_desc\",icon:\"split_cells\",cmd:\"mceTableSplitCells\"});D.add({title:\"table.merge_cells_desc\",icon:\"merge_cells\",cmd:\"mceTableMergeCells\"});D=w.addMenu({title:\"table.row\"});D.add({title:\"table.row_desc\",icon:\"row_props\",cmd:\"mceTableRowProps\"});D.add({title:\"table.row_before_desc\",icon:\"row_before\",cmd:\"mceTableInsertRowBefore\"});D.add({title:\"table.row_after_desc\",icon:\"row_after\",cmd:\"mceTableInsertRowAfter\"});D.add({title:\"table.delete_row_desc\",icon:\"delete_row\",cmd:\"mceTableDeleteRow\"});D.addSeparator();D.add({title:\"table.cut_row_desc\",icon:\"cut\",cmd:\"mceTableCutRow\"});D.add({title:\"table.copy_row_desc\",icon:\"copy\",cmd:\"mceTableCopyRow\"});D.add({title:\"table.paste_row_before_desc\",icon:\"paste\",cmd:\"mceTablePasteRowBefore\"}).setDisabled(!m);D.add({title:\"table.paste_row_after_desc\",icon:\"paste\",cmd:\"mceTablePasteRowAfter\"}).setDisabled(!m);D=w.addMenu({title:\"table.col\"});D.add({title:\"table.col_before_desc\",icon:\"col_before\",cmd:\"mceTableInsertColBefore\"});D.add({title:\"table.col_after_desc\",icon:\"col_after\",cmd:\"mceTableInsertColAfter\"});D.add({title:\"table.delete_col_desc\",icon:\"delete_col\",cmd:\"mceTableDeleteCol\"})}else{w.add({title:\"table.desc\",icon:\"table\",cmd:\"mceInsertTable\"})}})}if(d.isWebKit){function v(B,M){function F(Q){B.selection.setCursorLocation(Q,0)}function H(R,Q){return R.keyCode==z?Q.previousSibling:Q.nextSibling}function G(R,S){var Q=H(R,S);return Q!==null&&Q.tagName===\"TR\"?Q:null}function C(Q,R){return Q.dom.getParent(R,\"table\")}function O(Q){var R=C(B,Q);return H(M,R)}function A(Q){return Q.keyCode==z||Q.keyCode==I}function D(Q){var S=Q.selection.getNode();var R=Q.dom.getParent(S,\"tr\");return R!==null}function N(R){var Q=0;var S=R;while(S.previousSibling){S=S.previousSibling;Q=Q+a(S,\"colspan\")}return Q}function E(S,Q){var T=0;var R=0;e(S.children,function(U,V){T=T+a(U,\"colspan\");R=V;if(T>Q){return false}});return R}function w(S,T,V){var U=N(S.dom.getParent(T,\"td,th\"));var R=E(V,U);var Q=V.childNodes[R];F(Q)}function L(R,T){var Q=O(R);if(Q!==null){F(Q);return d.dom.Event.cancel(T)}else{var S=T.keyCode==z?R.firstChild:R.lastChild;F(S);return true}}var z=38;var I=40;if(A(M)&&D(B)){var J=B.selection.getNode();var P=B.dom.getParent(J,\"tr\");var K=G(M,P);if(K==null){return L(P,M)}else{w(B,J,K);d.dom.Event.cancel(M);return true}}}r.onKeyDown.add(v)}if(!d.isIE){function s(){var w;for(w=r.getBody().lastChild;w&&w.nodeType==3&&!w.nodeValue.length;w=w.previousSibling){}if(w&&w.nodeName==\"TABLE\"){r.dom.add(r.getBody(),\"p\",null,'<br mce_bogus=\"1\" />')}}if(d.isGecko){r.onKeyDown.add(function(z,B){var w,A,C=z.dom;if(B.keyCode==37||B.keyCode==38){w=z.selection.getRng();A=C.getParent(w.startContainer,\"table\");if(A&&z.getBody().firstChild==A){if(c(w,A)){w=C.createRng();w.setStartBefore(A);w.setEndBefore(A);z.selection.setRng(w);B.preventDefault()}}}})}r.onKeyUp.add(s);r.onSetContent.add(s);r.onVisualAid.add(s);r.onPreProcess.add(function(w,A){var z=A.node.lastChild;if(z&&z.childNodes.length==1&&z.firstChild.nodeName==\"BR\"){w.dom.remove(z)}});s();r.startContent=r.getContent({format:\"raw\"})}});e({mceTableSplitCells:function(n){n.split()},mceTableMergeCells:function(o){var p,q,n;n=g.dom.getParent(g.selection.getNode(),\"th,td\");if(n){p=n.rowSpan;q=n.colSpan}if(!g.dom.select(\"td.mceSelected,th.mceSelected\").length){f.open({url:h+\"/merge_cells.htm\",width:240+parseInt(g.getLang(\"table.merge_cells_delta_width\",0)),height:110+parseInt(g.getLang(\"table.merge_cells_delta_height\",0)),inline:1},{rows:p,cols:q,onaction:function(r){o.merge(n,r.cols,r.rows)},plugin_url:h})}else{o.merge()}},mceTableInsertRowBefore:function(n){n.insertRow(true)},mceTableInsertRowAfter:function(n){n.insertRow()},mceTableInsertColBefore:function(n){n.insertCol(true)},mceTableInsertColAfter:function(n){n.insertCol()},mceTableDeleteCol:function(n){n.deleteCols()},mceTableDeleteRow:function(n){n.deleteRows()},mceTableCutRow:function(n){m=n.cutRows()},mceTableCopyRow:function(n){m=n.copyRows()},mceTablePasteRowBefore:function(n){n.pasteRows(m,true)},mceTablePasteRowAfter:function(n){n.pasteRows(m)},mceTableDelete:function(n){n.deleteTable()}},function(o,n){g.addCommand(n,function(){var p=l();if(p){o(p);g.execCommand(\"mceRepaint\");k()}})});e({mceInsertTable:function(n){f.open({url:h+\"/table.htm\",width:400+parseInt(g.getLang(\"table.table_delta_width\",0)),height:320+parseInt(g.getLang(\"table.table_delta_height\",0)),inline:1},{plugin_url:h,action:n?n.action:0})},mceTableRowProps:function(){f.open({url:h+\"/row.htm\",width:400+parseInt(g.getLang(\"table.rowprops_delta_width\",0)),height:295+parseInt(g.getLang(\"table.rowprops_delta_height\",0)),inline:1},{plugin_url:h})},mceTableCellProps:function(){f.open({url:h+\"/cell.htm\",width:400+parseInt(g.getLang(\"table.cellprops_delta_width\",0)),height:295+parseInt(g.getLang(\"table.cellprops_delta_height\",0)),inline:1},{plugin_url:h})}},function(o,n){g.addCommand(n,function(p,q){o(q)})})}});d.PluginManager.add(\"table\",d.plugins.TablePlugin)})(tinymce);"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/editor_plugin_src.js",
    "content": "/**\n * editor_plugin_src.js\n *\n * Copyright 2009, Moxiecode Systems AB\n * Released under LGPL License.\n *\n * License: http://tinymce.moxiecode.com/license\n * Contributing: http://tinymce.moxiecode.com/contributing\n */\n\n(function(tinymce) {\n\tvar each = tinymce.each;\n\n\t// Checks if the selection/caret is at the start of the specified block element\n\tfunction isAtStart(rng, par) {\n\t\tvar doc = par.ownerDocument, rng2 = doc.createRange(), elm;\n\n\t\trng2.setStartBefore(par);\n\t\trng2.setEnd(rng.endContainer, rng.endOffset);\n\n\t\telm = doc.createElement('body');\n\t\telm.appendChild(rng2.cloneContents());\n\n\t\t// Check for text characters of other elements that should be treated as content\n\t\treturn elm.innerHTML.replace(/<(br|img|object|embed|input|textarea)[^>]*>/gi, '-').replace(/<[^>]+>/g, '').length == 0;\n\t};\n\n\tfunction getSpanVal(td, name) {\n\t\treturn parseInt(td.getAttribute(name) || 1);\n\t}\n\n\t/**\n\t * Table Grid class.\n\t */\n\tfunction TableGrid(table, dom, selection) {\n\t\tvar grid, startPos, endPos, selectedCell;\n\n\t\tbuildGrid();\n\t\tselectedCell = dom.getParent(selection.getStart(), 'th,td');\n\t\tif (selectedCell) {\n\t\t\tstartPos = getPos(selectedCell);\n\t\t\tendPos = findEndPos();\n\t\t\tselectedCell = getCell(startPos.x, startPos.y);\n\t\t}\n\n\t\tfunction cloneNode(node, children) {\n\t\t\tnode = node.cloneNode(children);\n\t\t\tnode.removeAttribute('id');\n\n\t\t\treturn node;\n\t\t}\n\n\t\tfunction buildGrid() {\n\t\t\tvar startY = 0;\n\n\t\t\tgrid = [];\n\n\t\t\teach(['thead', 'tbody', 'tfoot'], function(part) {\n\t\t\t\tvar rows = dom.select('> ' + part + ' tr', table);\n\n\t\t\t\teach(rows, function(tr, y) {\n\t\t\t\t\ty += startY;\n\n\t\t\t\t\teach(dom.select('> td, > th', tr), function(td, x) {\n\t\t\t\t\t\tvar x2, y2, rowspan, colspan;\n\n\t\t\t\t\t\t// Skip over existing cells produced by rowspan\n\t\t\t\t\t\tif (grid[y]) {\n\t\t\t\t\t\t\twhile (grid[y][x])\n\t\t\t\t\t\t\t\tx++;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// Get col/rowspan from cell\n\t\t\t\t\t\trowspan = getSpanVal(td, 'rowspan');\n\t\t\t\t\t\tcolspan = getSpanVal(td, 'colspan');\n\n\t\t\t\t\t\t// Fill out rowspan/colspan right and down\n\t\t\t\t\t\tfor (y2 = y; y2 < y + rowspan; y2++) {\n\t\t\t\t\t\t\tif (!grid[y2])\n\t\t\t\t\t\t\t\tgrid[y2] = [];\n\n\t\t\t\t\t\t\tfor (x2 = x; x2 < x + colspan; x2++) {\n\t\t\t\t\t\t\t\tgrid[y2][x2] = {\n\t\t\t\t\t\t\t\t\tpart : part,\n\t\t\t\t\t\t\t\t\treal : y2 == y && x2 == x,\n\t\t\t\t\t\t\t\t\telm : td,\n\t\t\t\t\t\t\t\t\trowspan : rowspan,\n\t\t\t\t\t\t\t\t\tcolspan : colspan\n\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t});\n\n\t\t\t\tstartY += rows.length;\n\t\t\t});\n\t\t};\n\n\t\tfunction getCell(x, y) {\n\t\t\tvar row;\n\n\t\t\trow = grid[y];\n\t\t\tif (row)\n\t\t\t\treturn row[x];\n\t\t};\n\n\t\tfunction setSpanVal(td, name, val) {\n\t\t\tif (td) {\n\t\t\t\tval = parseInt(val);\n\n\t\t\t\tif (val === 1)\n\t\t\t\t\ttd.removeAttribute(name, 1);\n\t\t\t\telse\n\t\t\t\t\ttd.setAttribute(name, val, 1);\n\t\t\t}\n\t\t}\n\n\t\tfunction isCellSelected(cell) {\n\t\t\treturn cell && (dom.hasClass(cell.elm, 'mceSelected') || cell == selectedCell);\n\t\t};\n\n\t\tfunction getSelectedRows() {\n\t\t\tvar rows = [];\n\n\t\t\teach(table.rows, function(row) {\n\t\t\t\teach(row.cells, function(cell) {\n\t\t\t\t\tif (dom.hasClass(cell, 'mceSelected') || cell == selectedCell.elm) {\n\t\t\t\t\t\trows.push(row);\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\n\t\t\treturn rows;\n\t\t};\n\n\t\tfunction deleteTable() {\n\t\t\tvar rng = dom.createRng();\n\n\t\t\trng.setStartAfter(table);\n\t\t\trng.setEndAfter(table);\n\n\t\t\tselection.setRng(rng);\n\n\t\t\tdom.remove(table);\n\t\t};\n\n\t\tfunction cloneCell(cell) {\n\t\t\tvar formatNode;\n\n\t\t\t// Clone formats\n\t\t\ttinymce.walk(cell, function(node) {\n\t\t\t\tvar curNode;\n\n\t\t\t\tif (node.nodeType == 3) {\n\t\t\t\t\teach(dom.getParents(node.parentNode, null, cell).reverse(), function(node) {\n\t\t\t\t\t\tnode = cloneNode(node, false);\n\n\t\t\t\t\t\tif (!formatNode)\n\t\t\t\t\t\t\tformatNode = curNode = node;\n\t\t\t\t\t\telse if (curNode)\n\t\t\t\t\t\t\tcurNode.appendChild(node);\n\n\t\t\t\t\t\tcurNode = node;\n\t\t\t\t\t});\n\n\t\t\t\t\t// Add something to the inner node\n\t\t\t\t\tif (curNode)\n\t\t\t\t\t\tcurNode.innerHTML = tinymce.isIE ? '&nbsp;' : '<br data-mce-bogus=\"1\" />';\n\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}, 'childNodes');\n\n\t\t\tcell = cloneNode(cell, false);\n\t\t\tsetSpanVal(cell, 'rowSpan', 1);\n\t\t\tsetSpanVal(cell, 'colSpan', 1);\n\n\t\t\tif (formatNode) {\n\t\t\t\tcell.appendChild(formatNode);\n\t\t\t} else {\n\t\t\t\tif (!tinymce.isIE)\n\t\t\t\t\tcell.innerHTML = '<br data-mce-bogus=\"1\" />';\n\t\t\t}\n\n\t\t\treturn cell;\n\t\t};\n\n\t\tfunction cleanup() {\n\t\t\tvar rng = dom.createRng();\n\n\t\t\t// Empty rows\n\t\t\teach(dom.select('tr', table), function(tr) {\n\t\t\t\tif (tr.cells.length == 0)\n\t\t\t\t\tdom.remove(tr);\n\t\t\t});\n\n\t\t\t// Empty table\n\t\t\tif (dom.select('tr', table).length == 0) {\n\t\t\t\trng.setStartAfter(table);\n\t\t\t\trng.setEndAfter(table);\n\t\t\t\tselection.setRng(rng);\n\t\t\t\tdom.remove(table);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Empty header/body/footer\n\t\t\teach(dom.select('thead,tbody,tfoot', table), function(part) {\n\t\t\t\tif (part.rows.length == 0)\n\t\t\t\t\tdom.remove(part);\n\t\t\t});\n\n\t\t\t// Restore selection to start position if it still exists\n\t\t\tbuildGrid();\n\n\t\t\t// Restore the selection to the closest table position\n\t\t\trow = grid[Math.min(grid.length - 1, startPos.y)];\n\t\t\tif (row) {\n\t\t\t\tselection.select(row[Math.min(row.length - 1, startPos.x)].elm, true);\n\t\t\t\tselection.collapse(true);\n\t\t\t}\n\t\t};\n\n\t\tfunction fillLeftDown(x, y, rows, cols) {\n\t\t\tvar tr, x2, r, c, cell;\n\n\t\t\ttr = grid[y][x].elm.parentNode;\n\t\t\tfor (r = 1; r <= rows; r++) {\n\t\t\t\ttr = dom.getNext(tr, 'tr');\n\n\t\t\t\tif (tr) {\n\t\t\t\t\t// Loop left to find real cell\n\t\t\t\t\tfor (x2 = x; x2 >= 0; x2--) {\n\t\t\t\t\t\tcell = grid[y + r][x2].elm;\n\n\t\t\t\t\t\tif (cell.parentNode == tr) {\n\t\t\t\t\t\t\t// Append clones after\n\t\t\t\t\t\t\tfor (c = 1; c <= cols; c++)\n\t\t\t\t\t\t\t\tdom.insertAfter(cloneCell(cell), cell);\n\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (x2 == -1) {\n\t\t\t\t\t\t// Insert nodes before first cell\n\t\t\t\t\t\tfor (c = 1; c <= cols; c++)\n\t\t\t\t\t\t\ttr.insertBefore(cloneCell(tr.cells[0]), tr.cells[0]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\tfunction split() {\n\t\t\teach(grid, function(row, y) {\n\t\t\t\teach(row, function(cell, x) {\n\t\t\t\t\tvar colSpan, rowSpan, newCell, i;\n\n\t\t\t\t\tif (isCellSelected(cell)) {\n\t\t\t\t\t\tcell = cell.elm;\n\t\t\t\t\t\tcolSpan = getSpanVal(cell, 'colspan');\n\t\t\t\t\t\trowSpan = getSpanVal(cell, 'rowspan');\n\n\t\t\t\t\t\tif (colSpan > 1 || rowSpan > 1) {\n\t\t\t\t\t\t\tsetSpanVal(cell, 'rowSpan', 1);\n\t\t\t\t\t\t\tsetSpanVal(cell, 'colSpan', 1);\n\n\t\t\t\t\t\t\t// Insert cells right\n\t\t\t\t\t\t\tfor (i = 0; i < colSpan - 1; i++)\n\t\t\t\t\t\t\t\tdom.insertAfter(cloneCell(cell), cell);\n\n\t\t\t\t\t\t\tfillLeftDown(x, y, rowSpan - 1, colSpan);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\t\t};\n\n\t\tfunction merge(cell, cols, rows) {\n\t\t\tvar startX, startY, endX, endY, x, y, startCell, endCell, cell, children, count;\n\n\t\t\t// Use specified cell and cols/rows\n\t\t\tif (cell) {\n\t\t\t\tpos = getPos(cell);\n\t\t\t\tstartX = pos.x;\n\t\t\t\tstartY = pos.y;\n\t\t\t\tendX = startX + (cols - 1);\n\t\t\t\tendY = startY + (rows - 1);\n\t\t\t} else {\n\t\t\t\t// Use selection\n\t\t\t\tstartX = startPos.x;\n\t\t\t\tstartY = startPos.y;\n\t\t\t\tendX = endPos.x;\n\t\t\t\tendY = endPos.y;\n\t\t\t}\n\n\t\t\t// Find start/end cells\n\t\t\tstartCell = getCell(startX, startY);\n\t\t\tendCell = getCell(endX, endY);\n\n\t\t\t// Check if the cells exists and if they are of the same part for example tbody = tbody\n\t\t\tif (startCell && endCell && startCell.part == endCell.part) {\n\t\t\t\t// Split and rebuild grid\n\t\t\t\tsplit();\n\t\t\t\tbuildGrid();\n\n\t\t\t\t// Set row/col span to start cell\n\t\t\t\tstartCell = getCell(startX, startY).elm;\n\t\t\t\tsetSpanVal(startCell, 'colSpan', (endX - startX) + 1);\n\t\t\t\tsetSpanVal(startCell, 'rowSpan', (endY - startY) + 1);\n\n\t\t\t\t// Remove other cells and add it's contents to the start cell\n\t\t\t\tfor (y = startY; y <= endY; y++) {\n\t\t\t\t\tfor (x = startX; x <= endX; x++) {\n\t\t\t\t\t\tif (!grid[y] || !grid[y][x])\n\t\t\t\t\t\t\tcontinue;\n\n\t\t\t\t\t\tcell = grid[y][x].elm;\n\n\t\t\t\t\t\tif (cell != startCell) {\n\t\t\t\t\t\t\t// Move children to startCell\n\t\t\t\t\t\t\tchildren = tinymce.grep(cell.childNodes);\n\t\t\t\t\t\t\teach(children, function(node) {\n\t\t\t\t\t\t\t\tstartCell.appendChild(node);\n\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\t// Remove bogus nodes if there is children in the target cell\n\t\t\t\t\t\t\tif (children.length) {\n\t\t\t\t\t\t\t\tchildren = tinymce.grep(startCell.childNodes);\n\t\t\t\t\t\t\t\tcount = 0;\n\t\t\t\t\t\t\t\teach(children, function(node) {\n\t\t\t\t\t\t\t\t\tif (node.nodeName == 'BR' && dom.getAttrib(node, 'data-mce-bogus') && count++ < children.length - 1)\n\t\t\t\t\t\t\t\t\t\tstartCell.removeChild(node);\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t// Remove cell\n\t\t\t\t\t\t\tdom.remove(cell);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Remove empty rows etc and restore caret location\n\t\t\t\tcleanup();\n\t\t\t}\n\t\t};\n\n\t\tfunction insertRow(before) {\n\t\t\tvar posY, cell, lastCell, x, rowElm, newRow, newCell, otherCell, rowSpan;\n\n\t\t\t// Find first/last row\n\t\t\teach(grid, function(row, y) {\n\t\t\t\teach(row, function(cell, x) {\n\t\t\t\t\tif (isCellSelected(cell)) {\n\t\t\t\t\t\tcell = cell.elm;\n\t\t\t\t\t\trowElm = cell.parentNode;\n\t\t\t\t\t\tnewRow = cloneNode(rowElm, false);\n\t\t\t\t\t\tposY = y;\n\n\t\t\t\t\t\tif (before)\n\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tif (before)\n\t\t\t\t\treturn !posY;\n\t\t\t});\n\n\t\t\tfor (x = 0; x < grid[0].length; x++) {\n\t\t\t\t// Cell not found could be because of an invalid table structure\n\t\t\t\tif (!grid[posY][x])\n\t\t\t\t\tcontinue;\n\n\t\t\t\tcell = grid[posY][x].elm;\n\n\t\t\t\tif (cell != lastCell) {\n\t\t\t\t\tif (!before) {\n\t\t\t\t\t\trowSpan = getSpanVal(cell, 'rowspan');\n\t\t\t\t\t\tif (rowSpan > 1) {\n\t\t\t\t\t\t\tsetSpanVal(cell, 'rowSpan', rowSpan + 1);\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Check if cell above can be expanded\n\t\t\t\t\t\tif (posY > 0 && grid[posY - 1][x]) {\n\t\t\t\t\t\t\totherCell = grid[posY - 1][x].elm;\n\t\t\t\t\t\t\trowSpan = getSpanVal(otherCell, 'rowSpan');\n\t\t\t\t\t\t\tif (rowSpan > 1) {\n\t\t\t\t\t\t\t\tsetSpanVal(otherCell, 'rowSpan', rowSpan + 1);\n\t\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// Insert new cell into new row\n\t\t\t\t\tnewCell = cloneCell(cell);\n\t\t\t\t\tsetSpanVal(newCell, 'colSpan', cell.colSpan);\n\n\t\t\t\t\tnewRow.appendChild(newCell);\n\n\t\t\t\t\tlastCell = cell;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (newRow.hasChildNodes()) {\n\t\t\t\tif (!before)\n\t\t\t\t\tdom.insertAfter(newRow, rowElm);\n\t\t\t\telse\n\t\t\t\t\trowElm.parentNode.insertBefore(newRow, rowElm);\n\t\t\t}\n\t\t};\n\n\t\tfunction insertCol(before) {\n\t\t\tvar posX, lastCell;\n\n\t\t\t// Find first/last column\n\t\t\teach(grid, function(row, y) {\n\t\t\t\teach(row, function(cell, x) {\n\t\t\t\t\tif (isCellSelected(cell)) {\n\t\t\t\t\t\tposX = x;\n\n\t\t\t\t\t\tif (before)\n\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tif (before)\n\t\t\t\t\treturn !posX;\n\t\t\t});\n\n\t\t\teach(grid, function(row, y) {\n\t\t\t\tvar cell, rowSpan, colSpan;\n\n\t\t\t\tif (!row[posX])\n\t\t\t\t\treturn;\n\n\t\t\t\tcell = row[posX].elm;\n\t\t\t\tif (cell != lastCell) {\n\t\t\t\t\tcolSpan = getSpanVal(cell, 'colspan');\n\t\t\t\t\trowSpan = getSpanVal(cell, 'rowspan');\n\n\t\t\t\t\tif (colSpan == 1) {\n\t\t\t\t\t\tif (!before) {\n\t\t\t\t\t\t\tdom.insertAfter(cloneCell(cell), cell);\n\t\t\t\t\t\t\tfillLeftDown(posX, y, rowSpan - 1, colSpan);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tcell.parentNode.insertBefore(cloneCell(cell), cell);\n\t\t\t\t\t\t\tfillLeftDown(posX, y, rowSpan - 1, colSpan);\n\t\t\t\t\t\t}\n\t\t\t\t\t} else\n\t\t\t\t\t\tsetSpanVal(cell, 'colSpan', cell.colSpan + 1);\n\n\t\t\t\t\tlastCell = cell;\n\t\t\t\t}\n\t\t\t});\n\t\t};\n\n\t\tfunction deleteCols() {\n\t\t\tvar cols = [];\n\n\t\t\t// Get selected column indexes\n\t\t\teach(grid, function(row, y) {\n\t\t\t\teach(row, function(cell, x) {\n\t\t\t\t\tif (isCellSelected(cell) && tinymce.inArray(cols, x) === -1) {\n\t\t\t\t\t\teach(grid, function(row) {\n\t\t\t\t\t\t\tvar cell = row[x].elm, colSpan;\n\n\t\t\t\t\t\t\tcolSpan = getSpanVal(cell, 'colSpan');\n\n\t\t\t\t\t\t\tif (colSpan > 1)\n\t\t\t\t\t\t\t\tsetSpanVal(cell, 'colSpan', colSpan - 1);\n\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\tdom.remove(cell);\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\tcols.push(x);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\n\t\t\tcleanup();\n\t\t};\n\n\t\tfunction deleteRows() {\n\t\t\tvar rows;\n\n\t\t\tfunction deleteRow(tr) {\n\t\t\t\tvar nextTr, pos, lastCell;\n\n\t\t\t\tnextTr = dom.getNext(tr, 'tr');\n\n\t\t\t\t// Move down row spanned cells\n\t\t\t\teach(tr.cells, function(cell) {\n\t\t\t\t\tvar rowSpan = getSpanVal(cell, 'rowSpan');\n\n\t\t\t\t\tif (rowSpan > 1) {\n\t\t\t\t\t\tsetSpanVal(cell, 'rowSpan', rowSpan - 1);\n\t\t\t\t\t\tpos = getPos(cell);\n\t\t\t\t\t\tfillLeftDown(pos.x, pos.y, 1, 1);\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\t// Delete cells\n\t\t\t\tpos = getPos(tr.cells[0]);\n\t\t\t\teach(grid[pos.y], function(cell) {\n\t\t\t\t\tvar rowSpan;\n\n\t\t\t\t\tcell = cell.elm;\n\n\t\t\t\t\tif (cell != lastCell) {\n\t\t\t\t\t\trowSpan = getSpanVal(cell, 'rowSpan');\n\n\t\t\t\t\t\tif (rowSpan <= 1)\n\t\t\t\t\t\t\tdom.remove(cell);\n\t\t\t\t\t\telse\n\t\t\t\t\t\t\tsetSpanVal(cell, 'rowSpan', rowSpan - 1);\n\n\t\t\t\t\t\tlastCell = cell;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t};\n\n\t\t\t// Get selected rows and move selection out of scope\n\t\t\trows = getSelectedRows();\n\n\t\t\t// Delete all selected rows\n\t\t\teach(rows.reverse(), function(tr) {\n\t\t\t\tdeleteRow(tr);\n\t\t\t});\n\n\t\t\tcleanup();\n\t\t};\n\n\t\tfunction cutRows() {\n\t\t\tvar rows = getSelectedRows();\n\n\t\t\tdom.remove(rows);\n\t\t\tcleanup();\n\n\t\t\treturn rows;\n\t\t};\n\n\t\tfunction copyRows() {\n\t\t\tvar rows = getSelectedRows();\n\n\t\t\teach(rows, function(row, i) {\n\t\t\t\trows[i] = cloneNode(row, true);\n\t\t\t});\n\n\t\t\treturn rows;\n\t\t};\n\n\t\tfunction pasteRows(rows, before) {\n\t\t\tvar selectedRows = getSelectedRows(),\n\t\t\t\ttargetRow = selectedRows[before ? 0 : selectedRows.length - 1],\n\t\t\t\ttargetCellCount = targetRow.cells.length;\n\n\t\t\t// Calc target cell count\n\t\t\teach(grid, function(row) {\n\t\t\t\tvar match;\n\n\t\t\t\ttargetCellCount = 0;\n\t\t\t\teach(row, function(cell, x) {\n\t\t\t\t\tif (cell.real)\n\t\t\t\t\t\ttargetCellCount += cell.colspan;\n\n\t\t\t\t\tif (cell.elm.parentNode == targetRow)\n\t\t\t\t\t\tmatch = 1;\n\t\t\t\t});\n\n\t\t\t\tif (match)\n\t\t\t\t\treturn false;\n\t\t\t});\n\n\t\t\tif (!before)\n\t\t\t\trows.reverse();\n\n\t\t\teach(rows, function(row) {\n\t\t\t\tvar cellCount = row.cells.length, cell;\n\n\t\t\t\t// Remove col/rowspans\n\t\t\t\tfor (i = 0; i < cellCount; i++) {\n\t\t\t\t\tcell = row.cells[i];\n\t\t\t\t\tsetSpanVal(cell, 'colSpan', 1);\n\t\t\t\t\tsetSpanVal(cell, 'rowSpan', 1);\n\t\t\t\t}\n\n\t\t\t\t// Needs more cells\n\t\t\t\tfor (i = cellCount; i < targetCellCount; i++)\n\t\t\t\t\trow.appendChild(cloneCell(row.cells[cellCount - 1]));\n\n\t\t\t\t// Needs less cells\n\t\t\t\tfor (i = targetCellCount; i < cellCount; i++)\n\t\t\t\t\tdom.remove(row.cells[i]);\n\n\t\t\t\t// Add before/after\n\t\t\t\tif (before)\n\t\t\t\t\ttargetRow.parentNode.insertBefore(row, targetRow);\n\t\t\t\telse\n\t\t\t\t\tdom.insertAfter(row, targetRow);\n\t\t\t});\n\t\t};\n\n\t\tfunction getPos(target) {\n\t\t\tvar pos;\n\n\t\t\teach(grid, function(row, y) {\n\t\t\t\teach(row, function(cell, x) {\n\t\t\t\t\tif (cell.elm == target) {\n\t\t\t\t\t\tpos = {x : x, y : y};\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\treturn !pos;\n\t\t\t});\n\n\t\t\treturn pos;\n\t\t};\n\n\t\tfunction setStartCell(cell) {\n\t\t\tstartPos = getPos(cell);\n\t\t};\n\n\t\tfunction findEndPos() {\n\t\t\tvar pos, maxX, maxY;\n\n\t\t\tmaxX = maxY = 0;\n\n\t\t\teach(grid, function(row, y) {\n\t\t\t\teach(row, function(cell, x) {\n\t\t\t\t\tvar colSpan, rowSpan;\n\n\t\t\t\t\tif (isCellSelected(cell)) {\n\t\t\t\t\t\tcell = grid[y][x];\n\n\t\t\t\t\t\tif (x > maxX)\n\t\t\t\t\t\t\tmaxX = x;\n\n\t\t\t\t\t\tif (y > maxY)\n\t\t\t\t\t\t\tmaxY = y;\n\n\t\t\t\t\t\tif (cell.real) {\n\t\t\t\t\t\t\tcolSpan = cell.colspan - 1;\n\t\t\t\t\t\t\trowSpan = cell.rowspan - 1;\n\n\t\t\t\t\t\t\tif (colSpan) {\n\t\t\t\t\t\t\t\tif (x + colSpan > maxX)\n\t\t\t\t\t\t\t\t\tmaxX = x + colSpan;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif (rowSpan) {\n\t\t\t\t\t\t\t\tif (y + rowSpan > maxY)\n\t\t\t\t\t\t\t\t\tmaxY = y + rowSpan;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\n\t\t\treturn {x : maxX, y : maxY};\n\t\t};\n\n\t\tfunction setEndCell(cell) {\n\t\t\tvar startX, startY, endX, endY, maxX, maxY, colSpan, rowSpan;\n\n\t\t\tendPos = getPos(cell);\n\n\t\t\tif (startPos && endPos) {\n\t\t\t\t// Get start/end positions\n\t\t\t\tstartX = Math.min(startPos.x, endPos.x);\n\t\t\t\tstartY = Math.min(startPos.y, endPos.y);\n\t\t\t\tendX = Math.max(startPos.x, endPos.x);\n\t\t\t\tendY = Math.max(startPos.y, endPos.y);\n\n\t\t\t\t// Expand end positon to include spans\n\t\t\t\tmaxX = endX;\n\t\t\t\tmaxY = endY;\n\n\t\t\t\t// Expand startX\n\t\t\t\tfor (y = startY; y <= maxY; y++) {\n\t\t\t\t\tcell = grid[y][startX];\n\n\t\t\t\t\tif (!cell.real) {\n\t\t\t\t\t\tif (startX - (cell.colspan - 1) < startX)\n\t\t\t\t\t\t\tstartX -= cell.colspan - 1;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Expand startY\n\t\t\t\tfor (x = startX; x <= maxX; x++) {\n\t\t\t\t\tcell = grid[startY][x];\n\n\t\t\t\t\tif (!cell.real) {\n\t\t\t\t\t\tif (startY - (cell.rowspan - 1) < startY)\n\t\t\t\t\t\t\tstartY -= cell.rowspan - 1;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Find max X, Y\n\t\t\t\tfor (y = startY; y <= endY; y++) {\n\t\t\t\t\tfor (x = startX; x <= endX; x++) {\n\t\t\t\t\t\tcell = grid[y][x];\n\n\t\t\t\t\t\tif (cell.real) {\n\t\t\t\t\t\t\tcolSpan = cell.colspan - 1;\n\t\t\t\t\t\t\trowSpan = cell.rowspan - 1;\n\n\t\t\t\t\t\t\tif (colSpan) {\n\t\t\t\t\t\t\t\tif (x + colSpan > maxX)\n\t\t\t\t\t\t\t\t\tmaxX = x + colSpan;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif (rowSpan) {\n\t\t\t\t\t\t\t\tif (y + rowSpan > maxY)\n\t\t\t\t\t\t\t\t\tmaxY = y + rowSpan;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Remove current selection\n\t\t\t\tdom.removeClass(dom.select('td.mceSelected,th.mceSelected'), 'mceSelected');\n\n\t\t\t\t// Add new selection\n\t\t\t\tfor (y = startY; y <= maxY; y++) {\n\t\t\t\t\tfor (x = startX; x <= maxX; x++) {\n\t\t\t\t\t\tif (grid[y][x])\n\t\t\t\t\t\t\tdom.addClass(grid[y][x].elm, 'mceSelected');\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\t// Expose to public\n\t\ttinymce.extend(this, {\n\t\t\tdeleteTable : deleteTable,\n\t\t\tsplit : split,\n\t\t\tmerge : merge,\n\t\t\tinsertRow : insertRow,\n\t\t\tinsertCol : insertCol,\n\t\t\tdeleteCols : deleteCols,\n\t\t\tdeleteRows : deleteRows,\n\t\t\tcutRows : cutRows,\n\t\t\tcopyRows : copyRows,\n\t\t\tpasteRows : pasteRows,\n\t\t\tgetPos : getPos,\n\t\t\tsetStartCell : setStartCell,\n\t\t\tsetEndCell : setEndCell\n\t\t});\n\t};\n\n\ttinymce.create('tinymce.plugins.TablePlugin', {\n\t\tinit : function(ed, url) {\n\t\t\tvar winMan, clipboardRows, hasCellSelection = true; // Might be selected cells on reload\n\n\t\t\tfunction createTableGrid(node) {\n\t\t\t\tvar selection = ed.selection, tblElm = ed.dom.getParent(node || selection.getNode(), 'table');\n\n\t\t\t\tif (tblElm)\n\t\t\t\t\treturn new TableGrid(tblElm, ed.dom, selection);\n\t\t\t};\n\n\t\t\tfunction cleanup() {\n\t\t\t\t// Restore selection possibilities\n\t\t\t\ted.getBody().style.webkitUserSelect = '';\n\n\t\t\t\tif (hasCellSelection) {\n\t\t\t\t\ted.dom.removeClass(ed.dom.select('td.mceSelected,th.mceSelected'), 'mceSelected');\n\t\t\t\t\thasCellSelection = false;\n\t\t\t\t}\n\t\t\t};\n\n\t\t\t// Register buttons\n\t\t\teach([\n\t\t\t\t['table', 'table.desc', 'mceInsertTable', true],\n\t\t\t\t['delete_table', 'table.del', 'mceTableDelete'],\n\t\t\t\t['delete_col', 'table.delete_col_desc', 'mceTableDeleteCol'],\n\t\t\t\t['delete_row', 'table.delete_row_desc', 'mceTableDeleteRow'],\n\t\t\t\t['col_after', 'table.col_after_desc', 'mceTableInsertColAfter'],\n\t\t\t\t['col_before', 'table.col_before_desc', 'mceTableInsertColBefore'],\n\t\t\t\t['row_after', 'table.row_after_desc', 'mceTableInsertRowAfter'],\n\t\t\t\t['row_before', 'table.row_before_desc', 'mceTableInsertRowBefore'],\n\t\t\t\t['row_props', 'table.row_desc', 'mceTableRowProps', true],\n\t\t\t\t['cell_props', 'table.cell_desc', 'mceTableCellProps', true],\n\t\t\t\t['split_cells', 'table.split_cells_desc', 'mceTableSplitCells', true],\n\t\t\t\t['merge_cells', 'table.merge_cells_desc', 'mceTableMergeCells', true]\n\t\t\t], function(c) {\n\t\t\t\ted.addButton(c[0], {title : c[1], cmd : c[2], ui : c[3]});\n\t\t\t});\n\n\t\t\t// Select whole table is a table border is clicked\n\t\t\tif (!tinymce.isIE) {\n\t\t\t\ted.onClick.add(function(ed, e) {\n\t\t\t\t\te = e.target;\n\n\t\t\t\t\tif (e.nodeName === 'TABLE') {\n\t\t\t\t\t\ted.selection.select(e);\n\t\t\t\t\t\ted.nodeChanged();\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\n\t\t\ted.onPreProcess.add(function(ed, args) {\n\t\t\t\tvar nodes, i, node, dom = ed.dom, value;\n\n\t\t\t\tnodes = dom.select('table', args.node);\n\t\t\t\ti = nodes.length;\n\t\t\t\twhile (i--) {\n\t\t\t\t\tnode = nodes[i];\n\t\t\t\t\tdom.setAttrib(node, 'data-mce-style', '');\n\n\t\t\t\t\tif ((value = dom.getAttrib(node, 'width'))) {\n\t\t\t\t\t\tdom.setStyle(node, 'width', value);\n\t\t\t\t\t\tdom.setAttrib(node, 'width', '');\n\t\t\t\t\t}\n\n\t\t\t\t\tif ((value = dom.getAttrib(node, 'height'))) {\n\t\t\t\t\t\tdom.setStyle(node, 'height', value);\n\t\t\t\t\t\tdom.setAttrib(node, 'height', '');\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\n\t\t\t// Handle node change updates\n\t\t\ted.onNodeChange.add(function(ed, cm, n) {\n\t\t\t\tvar p;\n\n\t\t\t\tn = ed.selection.getStart();\n\t\t\t\tp = ed.dom.getParent(n, 'td,th,caption');\n\t\t\t\tcm.setActive('table', n.nodeName === 'TABLE' || !!p);\n\n\t\t\t\t// Disable table tools if we are in caption\n\t\t\t\tif (p && p.nodeName === 'CAPTION')\n\t\t\t\t\tp = 0;\n\n\t\t\t\tcm.setDisabled('delete_table', !p);\n\t\t\t\tcm.setDisabled('delete_col', !p);\n\t\t\t\tcm.setDisabled('delete_table', !p);\n\t\t\t\tcm.setDisabled('delete_row', !p);\n\t\t\t\tcm.setDisabled('col_after', !p);\n\t\t\t\tcm.setDisabled('col_before', !p);\n\t\t\t\tcm.setDisabled('row_after', !p);\n\t\t\t\tcm.setDisabled('row_before', !p);\n\t\t\t\tcm.setDisabled('row_props', !p);\n\t\t\t\tcm.setDisabled('cell_props', !p);\n\t\t\t\tcm.setDisabled('split_cells', !p);\n\t\t\t\tcm.setDisabled('merge_cells', !p);\n\t\t\t});\n\n\t\t\ted.onInit.add(function(ed) {\n\t\t\t\tvar startTable, startCell, dom = ed.dom, tableGrid;\n\n\t\t\t\twinMan = ed.windowManager;\n\n\t\t\t\t// Add cell selection logic\n\t\t\t\ted.onMouseDown.add(function(ed, e) {\n\t\t\t\t\tif (e.button != 2) {\n\t\t\t\t\t\tcleanup();\n\n\t\t\t\t\t\tstartCell = dom.getParent(e.target, 'td,th');\n\t\t\t\t\t\tstartTable = dom.getParent(startCell, 'table');\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tdom.bind(ed.getDoc(), 'mouseover', function(e) {\n\t\t\t\t\tvar sel, table, target = e.target;\n\n\t\t\t\t\tif (startCell && (tableGrid || target != startCell) && (target.nodeName == 'TD' || target.nodeName == 'TH')) {\n\t\t\t\t\t\ttable = dom.getParent(target, 'table');\n\t\t\t\t\t\tif (table == startTable) {\n\t\t\t\t\t\t\tif (!tableGrid) {\n\t\t\t\t\t\t\t\ttableGrid = createTableGrid(table);\n\t\t\t\t\t\t\t\ttableGrid.setStartCell(startCell);\n\n\t\t\t\t\t\t\t\ted.getBody().style.webkitUserSelect = 'none';\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\ttableGrid.setEndCell(target);\n\t\t\t\t\t\t\thasCellSelection = true;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// Remove current selection\n\t\t\t\t\t\tsel = ed.selection.getSel();\n\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tif (sel.removeAllRanges)\n\t\t\t\t\t\t\t\tsel.removeAllRanges();\n\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\tsel.empty();\n\t\t\t\t\t\t} catch (ex) {\n\t\t\t\t\t\t\t// IE9 might throw errors here\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\ted.onMouseUp.add(function(ed, e) {\n\t\t\t\t\tvar rng, sel = ed.selection, selectedCells, nativeSel = sel.getSel(), walker, node, lastNode, endNode;\n\n\t\t\t\t\t// Move selection to startCell\n\t\t\t\t\tif (startCell) {\n\t\t\t\t\t\tif (tableGrid)\n\t\t\t\t\t\t\ted.getBody().style.webkitUserSelect = '';\n\n\t\t\t\t\t\tfunction setPoint(node, start) {\n\t\t\t\t\t\t\tvar walker = new tinymce.dom.TreeWalker(node, node);\n\n\t\t\t\t\t\t\tdo {\n\t\t\t\t\t\t\t\t// Text node\n\t\t\t\t\t\t\t\tif (node.nodeType == 3 && tinymce.trim(node.nodeValue).length != 0) {\n\t\t\t\t\t\t\t\t\tif (start)\n\t\t\t\t\t\t\t\t\t\trng.setStart(node, 0);\n\t\t\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\t\t\trng.setEnd(node, node.nodeValue.length);\n\n\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t// BR element\n\t\t\t\t\t\t\t\tif (node.nodeName == 'BR') {\n\t\t\t\t\t\t\t\t\tif (start)\n\t\t\t\t\t\t\t\t\t\trng.setStartBefore(node);\n\t\t\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\t\t\trng.setEndBefore(node);\n\n\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} while (node = (start ? walker.next() : walker.prev()));\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// Try to expand text selection as much as we can only Gecko supports cell selection\n\t\t\t\t\t\tselectedCells = dom.select('td.mceSelected,th.mceSelected');\n\t\t\t\t\t\tif (selectedCells.length > 0) {\n\t\t\t\t\t\t\trng = dom.createRng();\n\t\t\t\t\t\t\tnode = selectedCells[0];\n\t\t\t\t\t\t\tendNode = selectedCells[selectedCells.length - 1];\n\t\t\t\t\t\t\trng.setStartBefore(node);\n\t\t\t\t\t\t\trng.setEndAfter(node);\n\n\t\t\t\t\t\t\tsetPoint(node, 1);\n\t\t\t\t\t\t\twalker = new tinymce.dom.TreeWalker(node, dom.getParent(selectedCells[0], 'table'));\n\n\t\t\t\t\t\t\tdo {\n\t\t\t\t\t\t\t\tif (node.nodeName == 'TD' || node.nodeName == 'TH') {\n\t\t\t\t\t\t\t\t\tif (!dom.hasClass(node, 'mceSelected'))\n\t\t\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\t\t\tlastNode = node;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} while (node = walker.next());\n\n\t\t\t\t\t\t\tsetPoint(lastNode);\n\n\t\t\t\t\t\t\tsel.setRng(rng);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\ted.nodeChanged();\n\t\t\t\t\t\tstartCell = tableGrid = startTable = null;\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\ted.onKeyUp.add(function(ed, e) {\n\t\t\t\t\tcleanup();\n\t\t\t\t});\n\n\t\t\t\ted.onKeyDown.add(function (ed, e) {\n\t\t\t\t\tfixTableCellSelection(ed);\n\t\t\t\t});\n\n\t\t\t\ted.onMouseDown.add(function (ed, e) {\n\t\t\t\t\tif (e.button != 2) {\n\t\t\t\t\t\tfixTableCellSelection(ed);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tfunction tableCellSelected(ed, rng, n, currentCell) {\n\t\t\t\t\t// The decision of when a table cell is selected is somewhat involved.  The fact that this code is\n\t\t\t\t\t// required is actually a pointer to the root cause of this bug. A cell is selected when the start \n\t\t\t\t\t// and end offsets are 0, the start container is a text, and the selection node is either a TR (most cases)\n\t\t\t\t\t// or the parent of the table (in the case of the selection containing the last cell of a table).\n\t\t\t\t\tvar TEXT_NODE = 3, table = ed.dom.getParent(rng.startContainer, 'TABLE'), \n\t\t\t\t\ttableParent, allOfCellSelected, tableCellSelection;\n\t\t\t\t\tif (table) \n\t\t\t\t\ttableParent = table.parentNode;\n\t\t\t\t\tallOfCellSelected =rng.startContainer.nodeType == TEXT_NODE && \n\t\t\t\t\t\trng.startOffset == 0 && \n\t\t\t\t\t\trng.endOffset == 0 && \n\t\t\t\t\t\tcurrentCell && \n\t\t\t\t\t\t(n.nodeName==\"TR\" || n==tableParent);\n\t\t\t\t\ttableCellSelection = (n.nodeName==\"TD\"||n.nodeName==\"TH\")&& !currentCell;       \n\t\t\t\t\treturn  allOfCellSelected || tableCellSelection;\n\t\t\t\t\t// return false;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\t// this nasty hack is here to work around some WebKit selection bugs.\n\t\t\t\tfunction fixTableCellSelection(ed) {\n\t\t\t\t\tif (!tinymce.isWebKit)\n\t\t\t\t\t\treturn;\n\n\t\t\t\t\tvar rng = ed.selection.getRng();\n\t\t\t\t\tvar n = ed.selection.getNode();\n\t\t\t\t\tvar currentCell = ed.dom.getParent(rng.startContainer, 'TD');\n\t\t\t\t\n\t\t\t\t\tif (!tableCellSelected(ed, rng, n, currentCell))\n\t\t\t\t\t\treturn;\n\t\t\t\t\t\tif (!currentCell) {\n\t\t\t\t\t\t\tcurrentCell=n;\n\t\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\t// Get the very last node inside the table cell\n\t\t\t\t\tvar end = currentCell.lastChild;\n\t\t\t\t\twhile (end.lastChild)\n\t\t\t\t\t\tend = end.lastChild;\n                    \n\t\t\t\t\t// Select the entire table cell. Nothing outside of the table cell should be selected.\n\t\t\t\t\trng.setEnd(end, end.nodeValue.length);\n\t\t\t\t\ted.selection.setRng(rng);\n\t\t\t\t}\n\t\t\t\ted.plugins.table.fixTableCellSelection=fixTableCellSelection;\n\n\t\t\t\t// Add context menu\n\t\t\t\tif (ed && ed.plugins.contextmenu) {\n\t\t\t\t\ted.plugins.contextmenu.onContextMenu.add(function(th, m, e) {\n\t\t\t\t\t\tvar sm, se = ed.selection, el = se.getNode() || ed.getBody();\n\n\t\t\t\t\t\tif (ed.dom.getParent(e, 'td') || ed.dom.getParent(e, 'th') || ed.dom.select('td.mceSelected,th.mceSelected').length) {\n\t\t\t\t\t\t\tm.removeAll();\n\n\t\t\t\t\t\t\tif (el.nodeName == 'A' && !ed.dom.getAttrib(el, 'name')) {\n\t\t\t\t\t\t\t\tm.add({title : 'advanced.link_desc', icon : 'link', cmd : ed.plugins.advlink ? 'mceAdvLink' : 'mceLink', ui : true});\n\t\t\t\t\t\t\t\tm.add({title : 'advanced.unlink_desc', icon : 'unlink', cmd : 'UnLink'});\n\t\t\t\t\t\t\t\tm.addSeparator();\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif (el.nodeName == 'IMG' && el.className.indexOf('mceItem') == -1) {\n\t\t\t\t\t\t\t\tm.add({title : 'advanced.image_desc', icon : 'image', cmd : ed.plugins.advimage ? 'mceAdvImage' : 'mceImage', ui : true});\n\t\t\t\t\t\t\t\tm.addSeparator();\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tm.add({title : 'table.desc', icon : 'table', cmd : 'mceInsertTable', value : {action : 'insert'}});\n\t\t\t\t\t\t\tm.add({title : 'table.props_desc', icon : 'table_props', cmd : 'mceInsertTable'});\n\t\t\t\t\t\t\tm.add({title : 'table.del', icon : 'delete_table', cmd : 'mceTableDelete'});\n\t\t\t\t\t\t\tm.addSeparator();\n\n\t\t\t\t\t\t\t// Cell menu\n\t\t\t\t\t\t\tsm = m.addMenu({title : 'table.cell'});\n\t\t\t\t\t\t\tsm.add({title : 'table.cell_desc', icon : 'cell_props', cmd : 'mceTableCellProps'});\n\t\t\t\t\t\t\tsm.add({title : 'table.split_cells_desc', icon : 'split_cells', cmd : 'mceTableSplitCells'});\n\t\t\t\t\t\t\tsm.add({title : 'table.merge_cells_desc', icon : 'merge_cells', cmd : 'mceTableMergeCells'});\n\n\t\t\t\t\t\t\t// Row menu\n\t\t\t\t\t\t\tsm = m.addMenu({title : 'table.row'});\n\t\t\t\t\t\t\tsm.add({title : 'table.row_desc', icon : 'row_props', cmd : 'mceTableRowProps'});\n\t\t\t\t\t\t\tsm.add({title : 'table.row_before_desc', icon : 'row_before', cmd : 'mceTableInsertRowBefore'});\n\t\t\t\t\t\t\tsm.add({title : 'table.row_after_desc', icon : 'row_after', cmd : 'mceTableInsertRowAfter'});\n\t\t\t\t\t\t\tsm.add({title : 'table.delete_row_desc', icon : 'delete_row', cmd : 'mceTableDeleteRow'});\n\t\t\t\t\t\t\tsm.addSeparator();\n\t\t\t\t\t\t\tsm.add({title : 'table.cut_row_desc', icon : 'cut', cmd : 'mceTableCutRow'});\n\t\t\t\t\t\t\tsm.add({title : 'table.copy_row_desc', icon : 'copy', cmd : 'mceTableCopyRow'});\n\t\t\t\t\t\t\tsm.add({title : 'table.paste_row_before_desc', icon : 'paste', cmd : 'mceTablePasteRowBefore'}).setDisabled(!clipboardRows);\n\t\t\t\t\t\t\tsm.add({title : 'table.paste_row_after_desc', icon : 'paste', cmd : 'mceTablePasteRowAfter'}).setDisabled(!clipboardRows);\n\n\t\t\t\t\t\t\t// Column menu\n\t\t\t\t\t\t\tsm = m.addMenu({title : 'table.col'});\n\t\t\t\t\t\t\tsm.add({title : 'table.col_before_desc', icon : 'col_before', cmd : 'mceTableInsertColBefore'});\n\t\t\t\t\t\t\tsm.add({title : 'table.col_after_desc', icon : 'col_after', cmd : 'mceTableInsertColAfter'});\n\t\t\t\t\t\t\tsm.add({title : 'table.delete_col_desc', icon : 'delete_col', cmd : 'mceTableDeleteCol'});\n\t\t\t\t\t\t} else\n\t\t\t\t\t\t\tm.add({title : 'table.desc', icon : 'table', cmd : 'mceInsertTable'});\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\t// Fix to allow navigating up and down in a table in WebKit browsers.\n\t\t\t\tif (tinymce.isWebKit) {\n\t\t\t\t\tfunction moveSelection(ed, e) {\n\n\t\t\t\t\t\tfunction moveCursorToStartOfElement(n) {\n\t\t\t\t\t\t\ted.selection.setCursorLocation(n, 0);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tfunction getSibling(event, element) {\n\t\t\t\t\t\t\treturn event.keyCode == UP_ARROW ? element.previousSibling : element.nextSibling;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tfunction getNextRow(e, row) {\n\t\t\t\t\t\t\tvar sibling = getSibling(e, row);\n\t\t\t\t\t\t\treturn sibling !== null && sibling.tagName === 'TR' ? sibling : null;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tfunction getTable(ed, currentRow) {\n\t\t\t\t\t\t\treturn ed.dom.getParent(currentRow, 'table');\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tfunction getTableSibling(currentRow) {\n\t\t\t\t\t\t\tvar table = getTable(ed, currentRow);\n\t\t\t\t\t\t\treturn getSibling(e, table);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tfunction isVerticalMovement(event) {\n\t\t\t\t\t\t\treturn event.keyCode == UP_ARROW || event.keyCode == DOWN_ARROW;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tfunction isInTable(ed) {\n\t\t\t\t\t\t\tvar node = ed.selection.getNode();\n\t\t\t\t\t\t\tvar currentRow = ed.dom.getParent(node, 'tr');\n\t\t\t\t\t\t\treturn currentRow !== null;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tfunction columnIndex(column) {\n\t\t\t\t\t\t\tvar colIndex = 0;\n\t\t\t\t\t\t\tvar c = column;\n\t\t\t\t\t\t\twhile (c.previousSibling) {\n\t\t\t\t\t\t\t\tc = c.previousSibling;\n\t\t\t\t\t\t\t\tcolIndex = colIndex + getSpanVal(c, \"colspan\");\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\treturn colIndex;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tfunction findColumn(rowElement, columnIndex) {\n\t\t\t\t\t\t\tvar c = 0;\n\t\t\t\t\t\t\tvar r = 0;\n\t\t\t\t\t\t\teach(rowElement.children, function(cell, i) {\n\t\t\t\t\t\t\t\tc = c + getSpanVal(cell, \"colspan\");\n\t\t\t\t\t\t\t\tr = i;\n\t\t\t\t\t\t\t\tif (c > columnIndex)\n\t\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\treturn r;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tfunction moveCursorToRow(ed, node, row) {\n\t\t\t\t\t\t\tvar srcColumnIndex = columnIndex(ed.dom.getParent(node, 'td,th'));\n\t\t\t\t\t\t\tvar tgtColumnIndex = findColumn(row, srcColumnIndex)\n\t\t\t\t\t\t\tvar tgtNode = row.childNodes[tgtColumnIndex];\n\t\t\t\t\t\t\tmoveCursorToStartOfElement(tgtNode);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tfunction escapeTable(currentRow, e) {\n\t\t\t\t\t\t\tvar tableSiblingElement = getTableSibling(currentRow);\n\t\t\t\t\t\t\tif (tableSiblingElement !== null) {\n\t\t\t\t\t\t\t\tmoveCursorToStartOfElement(tableSiblingElement);\n\t\t\t\t\t\t\t\treturn tinymce.dom.Event.cancel(e);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tvar element = e.keyCode == UP_ARROW ? currentRow.firstChild : currentRow.lastChild;\n\t\t\t\t\t\t\t\t// rely on default behaviour to escape table after we are in the last cell of the last row\n\t\t\t\t\t\t\t\tmoveCursorToStartOfElement(element);\n\t\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tvar UP_ARROW = 38;\n\t\t\t\t\t\tvar DOWN_ARROW = 40;\n\n\t\t\t\t\t\tif (isVerticalMovement(e) && isInTable(ed)) {\n\t\t\t\t\t\t\tvar node = ed.selection.getNode();\n\t\t\t\t\t\t\tvar currentRow = ed.dom.getParent(node, 'tr');\n\t\t\t\t\t\t\tvar nextRow = getNextRow(e, currentRow);\n\n\t\t\t\t\t\t\t// If we're at the first or last row in the table, we should move the caret outside of the table\n\t\t\t\t\t\t\tif (nextRow == null) {\n\t\t\t\t\t\t\t\treturn escapeTable(currentRow, e);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tmoveCursorToRow(ed, node, nextRow);\n\t\t\t\t\t\t\t\ttinymce.dom.Event.cancel(e);\n\t\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\ted.onKeyDown.add(moveSelection);\n\t\t\t\t}\n\t\t\t\t\t\t\t\t\n\t\t\t\t// Fixes an issue on Gecko where it's impossible to place the caret behind a table\n\t\t\t\t// This fix will force a paragraph element after the table but only when the forced_root_block setting is enabled\n\t\t\t\tif (!tinymce.isIE) {\n\t\t\t\t\tfunction fixTableCaretPos() {\n\t\t\t\t\t\tvar last;\n\n\t\t\t\t\t\t// Skip empty text nodes form the end\n\t\t\t\t\t\tfor (last = ed.getBody().lastChild; last && last.nodeType == 3 && !last.nodeValue.length; last = last.previousSibling) ;\n\n\t\t\t\t\t\tif (last && last.nodeName == 'TABLE')\n\t\t\t\t\t\t\ted.dom.add(ed.getBody(), 'p', null, '<br mce_bogus=\"1\" />');\n\t\t\t\t\t};\n\n\t\t\t\t\t// Fixes an bug where it's impossible to place the caret before a table in Gecko\n\t\t\t\t\t// this fix solves it by detecting when the caret is at the beginning of such a table\n\t\t\t\t\t// and then manually moves the caret infront of the table\n\t\t\t\t\tif (tinymce.isGecko) {\n\t\t\t\t\t\ted.onKeyDown.add(function(ed, e) {\n\t\t\t\t\t\t\tvar rng, table, dom = ed.dom;\n\n\t\t\t\t\t\t\t// On gecko it's not possible to place the caret before a table\n\t\t\t\t\t\t\tif (e.keyCode == 37 || e.keyCode == 38) {\n\t\t\t\t\t\t\t\trng = ed.selection.getRng();\n\t\t\t\t\t\t\t\ttable = dom.getParent(rng.startContainer, 'table');\n\n\t\t\t\t\t\t\t\tif (table && ed.getBody().firstChild == table) {\n\t\t\t\t\t\t\t\t\tif (isAtStart(rng, table)) {\n\t\t\t\t\t\t\t\t\t\trng = dom.createRng();\n\n\t\t\t\t\t\t\t\t\t\trng.setStartBefore(table);\n\t\t\t\t\t\t\t\t\t\trng.setEndBefore(table);\n\n\t\t\t\t\t\t\t\t\t\ted.selection.setRng(rng);\n\n\t\t\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\n\t\t\t\t\ted.onKeyUp.add(fixTableCaretPos);\n\t\t\t\t\ted.onSetContent.add(fixTableCaretPos);\n\t\t\t\t\ted.onVisualAid.add(fixTableCaretPos);\n\n\t\t\t\t\ted.onPreProcess.add(function(ed, o) {\n\t\t\t\t\t\tvar last = o.node.lastChild;\n\n\t\t\t\t\t\tif (last && last.childNodes.length == 1 && last.firstChild.nodeName == 'BR')\n\t\t\t\t\t\t\ted.dom.remove(last);\n\t\t\t\t\t});\n\n\t\t\t\t\tfixTableCaretPos();\n\t\t\t\t\ted.startContent = ed.getContent({format : 'raw'});\n\t\t\t\t}\n\t\t\t});\n\n\t\t\t// Register action commands\n\t\t\teach({\n\t\t\t\tmceTableSplitCells : function(grid) {\n\t\t\t\t\tgrid.split();\n\t\t\t\t},\n\n\t\t\t\tmceTableMergeCells : function(grid) {\n\t\t\t\t\tvar rowSpan, colSpan, cell;\n\n\t\t\t\t\tcell = ed.dom.getParent(ed.selection.getNode(), 'th,td');\n\t\t\t\t\tif (cell) {\n\t\t\t\t\t\trowSpan = cell.rowSpan;\n\t\t\t\t\t\tcolSpan = cell.colSpan;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (!ed.dom.select('td.mceSelected,th.mceSelected').length) {\n\t\t\t\t\t\twinMan.open({\n\t\t\t\t\t\t\turl : url + '/merge_cells.htm',\n\t\t\t\t\t\t\twidth : 240 + parseInt(ed.getLang('table.merge_cells_delta_width', 0)),\n\t\t\t\t\t\t\theight : 110 + parseInt(ed.getLang('table.merge_cells_delta_height', 0)),\n\t\t\t\t\t\t\tinline : 1\n\t\t\t\t\t\t}, {\n\t\t\t\t\t\t\trows : rowSpan,\n\t\t\t\t\t\t\tcols : colSpan,\n\t\t\t\t\t\t\tonaction : function(data) {\n\t\t\t\t\t\t\t\tgrid.merge(cell, data.cols, data.rows);\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tplugin_url : url\n\t\t\t\t\t\t});\n\t\t\t\t\t} else\n\t\t\t\t\t\tgrid.merge();\n\t\t\t\t},\n\n\t\t\t\tmceTableInsertRowBefore : function(grid) {\n\t\t\t\t\tgrid.insertRow(true);\n\t\t\t\t},\n\n\t\t\t\tmceTableInsertRowAfter : function(grid) {\n\t\t\t\t\tgrid.insertRow();\n\t\t\t\t},\n\n\t\t\t\tmceTableInsertColBefore : function(grid) {\n\t\t\t\t\tgrid.insertCol(true);\n\t\t\t\t},\n\n\t\t\t\tmceTableInsertColAfter : function(grid) {\n\t\t\t\t\tgrid.insertCol();\n\t\t\t\t},\n\n\t\t\t\tmceTableDeleteCol : function(grid) {\n\t\t\t\t\tgrid.deleteCols();\n\t\t\t\t},\n\n\t\t\t\tmceTableDeleteRow : function(grid) {\n\t\t\t\t\tgrid.deleteRows();\n\t\t\t\t},\n\n\t\t\t\tmceTableCutRow : function(grid) {\n\t\t\t\t\tclipboardRows = grid.cutRows();\n\t\t\t\t},\n\n\t\t\t\tmceTableCopyRow : function(grid) {\n\t\t\t\t\tclipboardRows = grid.copyRows();\n\t\t\t\t},\n\n\t\t\t\tmceTablePasteRowBefore : function(grid) {\n\t\t\t\t\tgrid.pasteRows(clipboardRows, true);\n\t\t\t\t},\n\n\t\t\t\tmceTablePasteRowAfter : function(grid) {\n\t\t\t\t\tgrid.pasteRows(clipboardRows);\n\t\t\t\t},\n\n\t\t\t\tmceTableDelete : function(grid) {\n\t\t\t\t\tgrid.deleteTable();\n\t\t\t\t}\n\t\t\t}, function(func, name) {\n\t\t\t\ted.addCommand(name, function() {\n\t\t\t\t\tvar grid = createTableGrid();\n\n\t\t\t\t\tif (grid) {\n\t\t\t\t\t\tfunc(grid);\n\t\t\t\t\t\ted.execCommand('mceRepaint');\n\t\t\t\t\t\tcleanup();\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\n\t\t\t// Register dialog commands\n\t\t\teach({\n\t\t\t\tmceInsertTable : function(val) {\n\t\t\t\t\twinMan.open({\n\t\t\t\t\t\turl : url + '/table.htm',\n\t\t\t\t\t\twidth : 400 + parseInt(ed.getLang('table.table_delta_width', 0)),\n\t\t\t\t\t\theight : 320 + parseInt(ed.getLang('table.table_delta_height', 0)),\n\t\t\t\t\t\tinline : 1\n\t\t\t\t\t}, {\n\t\t\t\t\t\tplugin_url : url,\n\t\t\t\t\t\taction : val ? val.action : 0\n\t\t\t\t\t});\n\t\t\t\t},\n\n\t\t\t\tmceTableRowProps : function() {\n\t\t\t\t\twinMan.open({\n\t\t\t\t\t\turl : url + '/row.htm',\n\t\t\t\t\t\twidth : 400 + parseInt(ed.getLang('table.rowprops_delta_width', 0)),\n\t\t\t\t\t\theight : 295 + parseInt(ed.getLang('table.rowprops_delta_height', 0)),\n\t\t\t\t\t\tinline : 1\n\t\t\t\t\t}, {\n\t\t\t\t\t\tplugin_url : url\n\t\t\t\t\t});\n\t\t\t\t},\n\n\t\t\t\tmceTableCellProps : function() {\n\t\t\t\t\twinMan.open({\n\t\t\t\t\t\turl : url + '/cell.htm',\n\t\t\t\t\t\twidth : 400 + parseInt(ed.getLang('table.cellprops_delta_width', 0)),\n\t\t\t\t\t\theight : 295 + parseInt(ed.getLang('table.cellprops_delta_height', 0)),\n\t\t\t\t\t\tinline : 1\n\t\t\t\t\t}, {\n\t\t\t\t\t\tplugin_url : url\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}, function(func, name) {\n\t\t\t\ted.addCommand(name, function(ui, val) {\n\t\t\t\t\tfunc(val);\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\t});\n\n\t// Register plugin\n\ttinymce.PluginManager.add('table', tinymce.plugins.TablePlugin);\n})(tinymce);\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/js/cell.js",
    "content": "tinyMCEPopup.requireLangPack();\r\n\r\nvar ed;\r\n\r\nfunction init() {\r\n\ted = tinyMCEPopup.editor;\r\n\ttinyMCEPopup.resizeToInnerSize();\r\n\r\n\tdocument.getElementById('backgroundimagebrowsercontainer').innerHTML = getBrowserHTML('backgroundimagebrowser','backgroundimage','image','table');\r\n\tdocument.getElementById('bordercolor_pickcontainer').innerHTML = getColorPickerHTML('bordercolor_pick','bordercolor');\r\n\tdocument.getElementById('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor')\r\n\r\n\tvar inst = ed;\r\n\tvar tdElm = ed.dom.getParent(ed.selection.getStart(), \"td,th\");\r\n\tvar formObj = document.forms[0];\r\n\tvar st = ed.dom.parseStyle(ed.dom.getAttrib(tdElm, \"style\"));\r\n\r\n\t// Get table cell data\r\n\tvar celltype = tdElm.nodeName.toLowerCase();\r\n\tvar align = ed.dom.getAttrib(tdElm, 'align');\r\n\tvar valign = ed.dom.getAttrib(tdElm, 'valign');\r\n\tvar width = trimSize(getStyle(tdElm, 'width', 'width'));\r\n\tvar height = trimSize(getStyle(tdElm, 'height', 'height'));\r\n\tvar bordercolor = convertRGBToHex(getStyle(tdElm, 'bordercolor', 'borderLeftColor'));\r\n\tvar bgcolor = convertRGBToHex(getStyle(tdElm, 'bgcolor', 'backgroundColor'));\r\n\tvar className = ed.dom.getAttrib(tdElm, 'class');\r\n\tvar backgroundimage = getStyle(tdElm, 'background', 'backgroundImage').replace(new RegExp(\"url\\\\(['\\\"]?([^'\\\"]*)['\\\"]?\\\\)\", 'gi'), \"$1\");\r\n\tvar id = ed.dom.getAttrib(tdElm, 'id');\r\n\tvar lang = ed.dom.getAttrib(tdElm, 'lang');\r\n\tvar dir = ed.dom.getAttrib(tdElm, 'dir');\r\n\tvar scope = ed.dom.getAttrib(tdElm, 'scope');\r\n\r\n\t// Setup form\r\n\taddClassesToList('class', 'table_cell_styles');\r\n\tTinyMCE_EditableSelects.init();\r\n\r\n\tif (!ed.dom.hasClass(tdElm, 'mceSelected')) {\r\n\t\tformObj.bordercolor.value = bordercolor;\r\n\t\tformObj.bgcolor.value = bgcolor;\r\n\t\tformObj.backgroundimage.value = backgroundimage;\r\n\t\tformObj.width.value = width;\r\n\t\tformObj.height.value = height;\r\n\t\tformObj.id.value = id;\r\n\t\tformObj.lang.value = lang;\r\n\t\tformObj.style.value = ed.dom.serializeStyle(st);\r\n\t\tselectByValue(formObj, 'align', align);\r\n\t\tselectByValue(formObj, 'valign', valign);\r\n\t\tselectByValue(formObj, 'class', className, true, true);\r\n\t\tselectByValue(formObj, 'celltype', celltype);\r\n\t\tselectByValue(formObj, 'dir', dir);\r\n\t\tselectByValue(formObj, 'scope', scope);\r\n\r\n\t\t// Resize some elements\r\n\t\tif (isVisible('backgroundimagebrowser'))\r\n\t\t\tdocument.getElementById('backgroundimage').style.width = '180px';\r\n\r\n\t\tupdateColor('bordercolor_pick', 'bordercolor');\r\n\t\tupdateColor('bgcolor_pick', 'bgcolor');\r\n\t} else\r\n\t\ttinyMCEPopup.dom.hide('action');\r\n}\r\n\r\nfunction updateAction() {\r\n\tvar el, inst = ed, tdElm, trElm, tableElm, formObj = document.forms[0];\r\n\r\n\tif (!AutoValidator.validate(formObj)) {\r\n\t\ttinyMCEPopup.alert(AutoValidator.getErrorMessages(formObj).join('. ') + '.');\r\n\t\treturn false;\r\n\t}\r\n\r\n\ttinyMCEPopup.restoreSelection();\r\n\tel = ed.selection.getStart();\r\n\ttdElm = ed.dom.getParent(el, \"td,th\");\r\n\ttrElm = ed.dom.getParent(el, \"tr\");\r\n\ttableElm = ed.dom.getParent(el, \"table\");\r\n\r\n\t// Cell is selected\r\n\tif (ed.dom.hasClass(tdElm, 'mceSelected')) {\r\n\t\t// Update all selected sells\r\n\t\ttinymce.each(ed.dom.select('td.mceSelected,th.mceSelected'), function(td) {\r\n\t\t\tupdateCell(td);\r\n\t\t});\r\n\r\n\t\ted.addVisual();\r\n\t\ted.nodeChanged();\r\n\t\tinst.execCommand('mceEndUndoLevel');\r\n\t\ttinyMCEPopup.close();\r\n\t\treturn;\r\n\t}\r\n\r\n\tswitch (getSelectValue(formObj, 'action')) {\r\n\t\tcase \"cell\":\r\n\t\t\tvar celltype = getSelectValue(formObj, 'celltype');\r\n\t\t\tvar scope = getSelectValue(formObj, 'scope');\r\n\r\n\t\t\tfunction doUpdate(s) {\r\n\t\t\t\tif (s) {\r\n\t\t\t\t\tupdateCell(tdElm);\r\n\r\n\t\t\t\t\ted.addVisual();\r\n\t\t\t\t\ted.nodeChanged();\r\n\t\t\t\t\tinst.execCommand('mceEndUndoLevel');\r\n\t\t\t\t\ttinyMCEPopup.close();\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\t\t\tif (ed.getParam(\"accessibility_warnings\", 1)) {\r\n\t\t\t\tif (celltype == \"th\" && scope == \"\")\r\n\t\t\t\t\ttinyMCEPopup.confirm(ed.getLang('table_dlg.missing_scope', '', true), doUpdate);\r\n\t\t\t\telse\r\n\t\t\t\t\tdoUpdate(1);\r\n\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tupdateCell(tdElm);\r\n\t\t\tbreak;\r\n\r\n\t\tcase \"row\":\r\n\t\t\tvar cell = trElm.firstChild;\r\n\r\n\t\t\tif (cell.nodeName != \"TD\" && cell.nodeName != \"TH\")\r\n\t\t\t\tcell = nextCell(cell);\r\n\r\n\t\t\tdo {\r\n\t\t\t\tcell = updateCell(cell, true);\r\n\t\t\t} while ((cell = nextCell(cell)) != null);\r\n\r\n\t\t\tbreak;\r\n\r\n\t\tcase \"col\":\r\n\t\t\tvar curr, col = 0, cell = trElm.firstChild, rows = tableElm.getElementsByTagName(\"tr\");\r\n\r\n\t\t\tif (cell.nodeName != \"TD\" && cell.nodeName != \"TH\")\r\n\t\t\t\tcell = nextCell(cell);\r\n\r\n\t\t\tdo {\r\n\t\t\t\tif (cell == tdElm)\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcol += cell.getAttribute(\"colspan\");\r\n\t\t\t} while ((cell = nextCell(cell)) != null);\r\n\r\n\t\t\tfor (var i=0; i<rows.length; i++) {\r\n\t\t\t\tcell = rows[i].firstChild;\r\n\r\n\t\t\t\tif (cell.nodeName != \"TD\" && cell.nodeName != \"TH\")\r\n\t\t\t\t\tcell = nextCell(cell);\r\n\r\n\t\t\t\tcurr = 0;\r\n\t\t\t\tdo {\r\n\t\t\t\t\tif (curr == col) {\r\n\t\t\t\t\t\tcell = updateCell(cell, true);\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcurr += cell.getAttribute(\"colspan\");\r\n\t\t\t\t} while ((cell = nextCell(cell)) != null);\r\n\t\t\t}\r\n\r\n\t\t\tbreak;\r\n\r\n\t\tcase \"all\":\r\n\t\t\tvar rows = tableElm.getElementsByTagName(\"tr\");\r\n\r\n\t\t\tfor (var i=0; i<rows.length; i++) {\r\n\t\t\t\tvar cell = rows[i].firstChild;\r\n\r\n\t\t\t\tif (cell.nodeName != \"TD\" && cell.nodeName != \"TH\")\r\n\t\t\t\t\tcell = nextCell(cell);\r\n\r\n\t\t\t\tdo {\r\n\t\t\t\t\tcell = updateCell(cell, true);\r\n\t\t\t\t} while ((cell = nextCell(cell)) != null);\r\n\t\t\t}\r\n\r\n\t\t\tbreak;\r\n\t}\r\n\r\n\ted.addVisual();\r\n\ted.nodeChanged();\r\n\tinst.execCommand('mceEndUndoLevel');\r\n\ttinyMCEPopup.close();\r\n}\r\n\r\nfunction nextCell(elm) {\r\n\twhile ((elm = elm.nextSibling) != null) {\r\n\t\tif (elm.nodeName == \"TD\" || elm.nodeName == \"TH\")\r\n\t\t\treturn elm;\r\n\t}\r\n\r\n\treturn null;\r\n}\r\n\r\nfunction updateCell(td, skip_id) {\r\n\tvar inst = ed;\r\n\tvar formObj = document.forms[0];\r\n\tvar curCellType = td.nodeName.toLowerCase();\r\n\tvar celltype = getSelectValue(formObj, 'celltype');\r\n\tvar doc = inst.getDoc();\r\n\tvar dom = ed.dom;\r\n\r\n\tif (!skip_id)\r\n\t\tdom.setAttrib(td, 'id', formObj.id.value);\r\n\r\n\tdom.setAttrib(td, 'align', formObj.align.value);\r\n\tdom.setAttrib(td, 'vAlign', formObj.valign.value);\r\n\tdom.setAttrib(td, 'lang', formObj.lang.value);\r\n\tdom.setAttrib(td, 'dir', getSelectValue(formObj, 'dir'));\r\n\tdom.setAttrib(td, 'style', ed.dom.serializeStyle(ed.dom.parseStyle(formObj.style.value)));\r\n\tdom.setAttrib(td, 'scope', formObj.scope.value);\r\n\tdom.setAttrib(td, 'class', getSelectValue(formObj, 'class'));\r\n\r\n\t// Clear deprecated attributes\r\n\ted.dom.setAttrib(td, 'width', '');\r\n\ted.dom.setAttrib(td, 'height', '');\r\n\ted.dom.setAttrib(td, 'bgColor', '');\r\n\ted.dom.setAttrib(td, 'borderColor', '');\r\n\ted.dom.setAttrib(td, 'background', '');\r\n\r\n\t// Set styles\r\n\ttd.style.width = getCSSSize(formObj.width.value);\r\n\ttd.style.height = getCSSSize(formObj.height.value);\r\n\tif (formObj.bordercolor.value != \"\") {\r\n\t\ttd.style.borderColor = formObj.bordercolor.value;\r\n\t\ttd.style.borderStyle = td.style.borderStyle == \"\" ? \"solid\" : td.style.borderStyle;\r\n\t\ttd.style.borderWidth = td.style.borderWidth == \"\" ? \"1px\" : td.style.borderWidth;\r\n\t} else\r\n\t\ttd.style.borderColor = '';\r\n\r\n\ttd.style.backgroundColor = formObj.bgcolor.value;\r\n\r\n\tif (formObj.backgroundimage.value != \"\")\r\n\t\ttd.style.backgroundImage = \"url('\" + formObj.backgroundimage.value + \"')\";\r\n\telse\r\n\t\ttd.style.backgroundImage = '';\r\n\r\n\tif (curCellType != celltype) {\r\n\t\t// changing to a different node type\r\n\t\tvar newCell = doc.createElement(celltype);\r\n\r\n\t\tfor (var c=0; c<td.childNodes.length; c++)\r\n\t\t\tnewCell.appendChild(td.childNodes[c].cloneNode(1));\r\n\r\n\t\tfor (var a=0; a<td.attributes.length; a++)\r\n\t\t\ted.dom.setAttrib(newCell, td.attributes[a].name, ed.dom.getAttrib(td, td.attributes[a].name));\r\n\r\n\t\ttd.parentNode.replaceChild(newCell, td);\r\n\t\ttd = newCell;\r\n\t}\r\n\r\n\tdom.setAttrib(td, 'style', dom.serializeStyle(dom.parseStyle(td.style.cssText)));\r\n\r\n\treturn td;\r\n}\r\n\r\nfunction changedBackgroundImage() {\r\n\tvar formObj = document.forms[0];\r\n\tvar st = ed.dom.parseStyle(formObj.style.value);\r\n\r\n\tst['background-image'] = \"url('\" + formObj.backgroundimage.value + \"')\";\r\n\r\n\tformObj.style.value = ed.dom.serializeStyle(st);\r\n}\r\n\r\nfunction changedSize() {\r\n\tvar formObj = document.forms[0];\r\n\tvar st = ed.dom.parseStyle(formObj.style.value);\r\n\r\n\tvar width = formObj.width.value;\r\n\tif (width != \"\")\r\n\t\tst['width'] = getCSSSize(width);\r\n\telse\r\n\t\tst['width'] = \"\";\r\n\r\n\tvar height = formObj.height.value;\r\n\tif (height != \"\")\r\n\t\tst['height'] = getCSSSize(height);\r\n\telse\r\n\t\tst['height'] = \"\";\r\n\r\n\tformObj.style.value = ed.dom.serializeStyle(st);\r\n}\r\n\r\nfunction changedColor() {\r\n\tvar formObj = document.forms[0];\r\n\tvar st = ed.dom.parseStyle(formObj.style.value);\r\n\r\n\tst['background-color'] = formObj.bgcolor.value;\r\n\tst['border-color'] = formObj.bordercolor.value;\r\n\r\n\tformObj.style.value = ed.dom.serializeStyle(st);\r\n}\r\n\r\nfunction changedStyle() {\r\n\tvar formObj = document.forms[0];\r\n\tvar st = ed.dom.parseStyle(formObj.style.value);\r\n\r\n\tif (st['background-image'])\r\n\t\tformObj.backgroundimage.value = st['background-image'].replace(new RegExp(\"url\\\\('?([^']*)'?\\\\)\", 'gi'), \"$1\");\r\n\telse\r\n\t\tformObj.backgroundimage.value = '';\r\n\r\n\tif (st['width'])\r\n\t\tformObj.width.value = trimSize(st['width']);\r\n\r\n\tif (st['height'])\r\n\t\tformObj.height.value = trimSize(st['height']);\r\n\r\n\tif (st['background-color']) {\r\n\t\tformObj.bgcolor.value = st['background-color'];\r\n\t\tupdateColor('bgcolor_pick','bgcolor');\r\n\t}\r\n\r\n\tif (st['border-color']) {\r\n\t\tformObj.bordercolor.value = st['border-color'];\r\n\t\tupdateColor('bordercolor_pick','bordercolor');\r\n\t}\r\n}\r\n\r\ntinyMCEPopup.onInit.add(init);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/js/merge_cells.js",
    "content": "tinyMCEPopup.requireLangPack();\r\n\r\nvar MergeCellsDialog = {\r\n\tinit : function() {\r\n\t\tvar f = document.forms[0];\r\n\r\n\t\tf.numcols.value = tinyMCEPopup.getWindowArg('cols', 1);\r\n\t\tf.numrows.value = tinyMCEPopup.getWindowArg('rows', 1);\r\n\t},\r\n\r\n\tmerge : function() {\r\n\t\tvar func, f = document.forms[0];\r\n\r\n\t\ttinyMCEPopup.restoreSelection();\r\n\r\n\t\tfunc = tinyMCEPopup.getWindowArg('onaction');\r\n\r\n\t\tfunc({\r\n\t\t\tcols : f.numcols.value,\r\n\t\t\trows : f.numrows.value\r\n\t\t});\r\n\r\n\t\ttinyMCEPopup.close();\r\n\t}\r\n};\r\n\r\ntinyMCEPopup.onInit.add(MergeCellsDialog.init, MergeCellsDialog);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/js/row.js",
    "content": "tinyMCEPopup.requireLangPack();\r\n\r\nfunction init() {\r\n\ttinyMCEPopup.resizeToInnerSize();\r\n\r\n\tdocument.getElementById('backgroundimagebrowsercontainer').innerHTML = getBrowserHTML('backgroundimagebrowser','backgroundimage','image','table');\r\n\tdocument.getElementById('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor');\r\n\r\n\tvar inst = tinyMCEPopup.editor;\r\n\tvar dom = inst.dom;\r\n\tvar trElm = dom.getParent(inst.selection.getStart(), \"tr\");\r\n\tvar formObj = document.forms[0];\r\n\tvar st = dom.parseStyle(dom.getAttrib(trElm, \"style\"));\r\n\r\n\t// Get table row data\r\n\tvar rowtype = trElm.parentNode.nodeName.toLowerCase();\r\n\tvar align = dom.getAttrib(trElm, 'align');\r\n\tvar valign = dom.getAttrib(trElm, 'valign');\r\n\tvar height = trimSize(getStyle(trElm, 'height', 'height'));\r\n\tvar className = dom.getAttrib(trElm, 'class');\r\n\tvar bgcolor = convertRGBToHex(getStyle(trElm, 'bgcolor', 'backgroundColor'));\r\n\tvar backgroundimage = getStyle(trElm, 'background', 'backgroundImage').replace(new RegExp(\"url\\\\(['\\\"]?([^'\\\"]*)['\\\"]?\\\\)\", 'gi'), \"$1\");\r\n\tvar id = dom.getAttrib(trElm, 'id');\r\n\tvar lang = dom.getAttrib(trElm, 'lang');\r\n\tvar dir = dom.getAttrib(trElm, 'dir');\r\n\r\n\tselectByValue(formObj, 'rowtype', rowtype);\r\n\r\n\t// Any cells selected\r\n\tif (dom.select('td.mceSelected,th.mceSelected', trElm).length == 0) {\r\n\t\t// Setup form\r\n\t\taddClassesToList('class', 'table_row_styles');\r\n\t\tTinyMCE_EditableSelects.init();\r\n\r\n\t\tformObj.bgcolor.value = bgcolor;\r\n\t\tformObj.backgroundimage.value = backgroundimage;\r\n\t\tformObj.height.value = height;\r\n\t\tformObj.id.value = id;\r\n\t\tformObj.lang.value = lang;\r\n\t\tformObj.style.value = dom.serializeStyle(st);\r\n\t\tselectByValue(formObj, 'align', align);\r\n\t\tselectByValue(formObj, 'valign', valign);\r\n\t\tselectByValue(formObj, 'class', className, true, true);\r\n\t\tselectByValue(formObj, 'dir', dir);\r\n\r\n\t\t// Resize some elements\r\n\t\tif (isVisible('backgroundimagebrowser'))\r\n\t\t\tdocument.getElementById('backgroundimage').style.width = '180px';\r\n\r\n\t\tupdateColor('bgcolor_pick', 'bgcolor');\r\n\t} else\r\n\t\ttinyMCEPopup.dom.hide('action');\r\n}\r\n\r\nfunction updateAction() {\r\n\tvar inst = tinyMCEPopup.editor, dom = inst.dom, trElm, tableElm, formObj = document.forms[0];\r\n\tvar action = getSelectValue(formObj, 'action');\r\n\r\n\tif (!AutoValidator.validate(formObj)) {\r\n\t\ttinyMCEPopup.alert(AutoValidator.getErrorMessages(formObj).join('. ') + '.');\r\n\t\treturn false;\r\n\t}\r\n\r\n\ttinyMCEPopup.restoreSelection();\r\n\ttrElm = dom.getParent(inst.selection.getStart(), \"tr\");\r\n\ttableElm = dom.getParent(inst.selection.getStart(), \"table\");\r\n\r\n\t// Update all selected rows\r\n\tif (dom.select('td.mceSelected,th.mceSelected', trElm).length > 0) {\r\n\t\ttinymce.each(tableElm.rows, function(tr) {\r\n\t\t\tvar i;\r\n\r\n\t\t\tfor (i = 0; i < tr.cells.length; i++) {\r\n\t\t\t\tif (dom.hasClass(tr.cells[i], 'mceSelected')) {\r\n\t\t\t\t\tupdateRow(tr, true);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tinst.addVisual();\r\n\t\tinst.nodeChanged();\r\n\t\tinst.execCommand('mceEndUndoLevel');\r\n\t\ttinyMCEPopup.close();\r\n\t\treturn;\r\n\t}\r\n\r\n\tswitch (action) {\r\n\t\tcase \"row\":\r\n\t\t\tupdateRow(trElm);\r\n\t\t\tbreak;\r\n\r\n\t\tcase \"all\":\r\n\t\t\tvar rows = tableElm.getElementsByTagName(\"tr\");\r\n\r\n\t\t\tfor (var i=0; i<rows.length; i++)\r\n\t\t\t\tupdateRow(rows[i], true);\r\n\r\n\t\t\tbreak;\r\n\r\n\t\tcase \"odd\":\r\n\t\tcase \"even\":\r\n\t\t\tvar rows = tableElm.getElementsByTagName(\"tr\");\r\n\r\n\t\t\tfor (var i=0; i<rows.length; i++) {\r\n\t\t\t\tif ((i % 2 == 0 && action == \"odd\") || (i % 2 != 0 && action == \"even\"))\r\n\t\t\t\t\tupdateRow(rows[i], true, true);\r\n\t\t\t}\r\n\r\n\t\t\tbreak;\r\n\t}\r\n\r\n\tinst.addVisual();\r\n\tinst.nodeChanged();\r\n\tinst.execCommand('mceEndUndoLevel');\r\n\ttinyMCEPopup.close();\r\n}\r\n\r\nfunction updateRow(tr_elm, skip_id, skip_parent) {\r\n\tvar inst = tinyMCEPopup.editor;\r\n\tvar formObj = document.forms[0];\r\n\tvar dom = inst.dom;\r\n\tvar curRowType = tr_elm.parentNode.nodeName.toLowerCase();\r\n\tvar rowtype = getSelectValue(formObj, 'rowtype');\r\n\tvar doc = inst.getDoc();\r\n\r\n\t// Update row element\r\n\tif (!skip_id)\r\n\t\tdom.setAttrib(tr_elm, 'id', formObj.id.value);\r\n\r\n\tdom.setAttrib(tr_elm, 'align', getSelectValue(formObj, 'align'));\r\n\tdom.setAttrib(tr_elm, 'vAlign', getSelectValue(formObj, 'valign'));\r\n\tdom.setAttrib(tr_elm, 'lang', formObj.lang.value);\r\n\tdom.setAttrib(tr_elm, 'dir', getSelectValue(formObj, 'dir'));\r\n\tdom.setAttrib(tr_elm, 'style', dom.serializeStyle(dom.parseStyle(formObj.style.value)));\r\n\tdom.setAttrib(tr_elm, 'class', getSelectValue(formObj, 'class'));\r\n\r\n\t// Clear deprecated attributes\r\n\tdom.setAttrib(tr_elm, 'background', '');\r\n\tdom.setAttrib(tr_elm, 'bgColor', '');\r\n\tdom.setAttrib(tr_elm, 'height', '');\r\n\r\n\t// Set styles\r\n\ttr_elm.style.height = getCSSSize(formObj.height.value);\r\n\ttr_elm.style.backgroundColor = formObj.bgcolor.value;\r\n\r\n\tif (formObj.backgroundimage.value != \"\")\r\n\t\ttr_elm.style.backgroundImage = \"url('\" + formObj.backgroundimage.value + \"')\";\r\n\telse\r\n\t\ttr_elm.style.backgroundImage = '';\r\n\r\n\t// Setup new rowtype\r\n\tif (curRowType != rowtype && !skip_parent) {\r\n\t\t// first, clone the node we are working on\r\n\t\tvar newRow = tr_elm.cloneNode(1);\r\n\r\n\t\t// next, find the parent of its new destination (creating it if necessary)\r\n\t\tvar theTable = dom.getParent(tr_elm, \"table\");\r\n\t\tvar dest = rowtype;\r\n\t\tvar newParent = null;\r\n\t\tfor (var i = 0; i < theTable.childNodes.length; i++) {\r\n\t\t\tif (theTable.childNodes[i].nodeName.toLowerCase() == dest)\r\n\t\t\t\tnewParent = theTable.childNodes[i];\r\n\t\t}\r\n\r\n\t\tif (newParent == null) {\r\n\t\t\tnewParent = doc.createElement(dest);\r\n\r\n\t\t\tif (theTable.firstChild.nodeName == 'CAPTION')\r\n\t\t\t\tinst.dom.insertAfter(newParent, theTable.firstChild);\r\n\t\t\telse\r\n\t\t\t\ttheTable.insertBefore(newParent, theTable.firstChild);\r\n\t\t}\r\n\r\n\t\t// append the row to the new parent\r\n\t\tnewParent.appendChild(newRow);\r\n\r\n\t\t// remove the original\r\n\t\ttr_elm.parentNode.removeChild(tr_elm);\r\n\r\n\t\t// set tr_elm to the new node\r\n\t\ttr_elm = newRow;\r\n\t}\r\n\r\n\tdom.setAttrib(tr_elm, 'style', dom.serializeStyle(dom.parseStyle(tr_elm.style.cssText)));\r\n}\r\n\r\nfunction changedBackgroundImage() {\r\n\tvar formObj = document.forms[0], dom = tinyMCEPopup.editor.dom;\r\n\tvar st = dom.parseStyle(formObj.style.value);\r\n\r\n\tst['background-image'] = \"url('\" + formObj.backgroundimage.value + \"')\";\r\n\r\n\tformObj.style.value = dom.serializeStyle(st);\r\n}\r\n\r\nfunction changedStyle() {\r\n\tvar formObj = document.forms[0], dom = tinyMCEPopup.editor.dom;\r\n\tvar st = dom.parseStyle(formObj.style.value);\r\n\r\n\tif (st['background-image'])\r\n\t\tformObj.backgroundimage.value = st['background-image'].replace(new RegExp(\"url\\\\('?([^']*)'?\\\\)\", 'gi'), \"$1\");\r\n\telse\r\n\t\tformObj.backgroundimage.value = '';\r\n\r\n\tif (st['height'])\r\n\t\tformObj.height.value = trimSize(st['height']);\r\n\r\n\tif (st['background-color']) {\r\n\t\tformObj.bgcolor.value = st['background-color'];\r\n\t\tupdateColor('bgcolor_pick','bgcolor');\r\n\t}\r\n}\r\n\r\nfunction changedSize() {\r\n\tvar formObj = document.forms[0], dom = tinyMCEPopup.editor.dom;\r\n\tvar st = dom.parseStyle(formObj.style.value);\r\n\r\n\tvar height = formObj.height.value;\r\n\tif (height != \"\")\r\n\t\tst['height'] = getCSSSize(height);\r\n\telse\r\n\t\tst['height'] = \"\";\r\n\r\n\tformObj.style.value = dom.serializeStyle(st);\r\n}\r\n\r\nfunction changedColor() {\r\n\tvar formObj = document.forms[0], dom = tinyMCEPopup.editor.dom;\r\n\tvar st = dom.parseStyle(formObj.style.value);\r\n\r\n\tst['background-color'] = formObj.bgcolor.value;\r\n\r\n\tformObj.style.value = dom.serializeStyle(st);\r\n}\r\n\r\ntinyMCEPopup.onInit.add(init);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/js/table.js",
    "content": "tinyMCEPopup.requireLangPack();\r\n\r\nvar action, orgTableWidth, orgTableHeight, dom = tinyMCEPopup.editor.dom;\r\n\r\nfunction insertTable() {\r\n\tvar formObj = document.forms[0];\r\n\tvar inst = tinyMCEPopup.editor, dom = inst.dom;\r\n\tvar cols = 2, rows = 2, border = 0, cellpadding = -1, cellspacing = -1, align, width, height, className, caption, frame, rules;\r\n\tvar html = '', capEl, elm;\r\n\tvar cellLimit, rowLimit, colLimit;\r\n\r\n\ttinyMCEPopup.restoreSelection();\r\n\r\n\tif (!AutoValidator.validate(formObj)) {\r\n\t\ttinyMCEPopup.alert(AutoValidator.getErrorMessages(formObj).join('. ') + '.');\r\n\t\treturn false;\r\n\t}\r\n\r\n\telm = dom.getParent(inst.selection.getNode(), 'table');\r\n\r\n\t// Get form data\r\n\tcols = formObj.elements['cols'].value;\r\n\trows = formObj.elements['rows'].value;\r\n\tborder = formObj.elements['border'].value != \"\" ? formObj.elements['border'].value : 0;\r\n\tcellpadding = formObj.elements['cellpadding'].value != \"\" ? formObj.elements['cellpadding'].value : \"\";\r\n\tcellspacing = formObj.elements['cellspacing'].value != \"\" ? formObj.elements['cellspacing'].value : \"\";\r\n\talign = getSelectValue(formObj, \"align\");\r\n\tframe = getSelectValue(formObj, \"tframe\");\r\n\trules = getSelectValue(formObj, \"rules\");\r\n\twidth = formObj.elements['width'].value;\r\n\theight = formObj.elements['height'].value;\r\n\tbordercolor = formObj.elements['bordercolor'].value;\r\n\tbgcolor = formObj.elements['bgcolor'].value;\r\n\tclassName = getSelectValue(formObj, \"class\");\r\n\tid = formObj.elements['id'].value;\r\n\tsummary = formObj.elements['summary'].value;\r\n\tstyle = formObj.elements['style'].value;\r\n\tdir = formObj.elements['dir'].value;\r\n\tlang = formObj.elements['lang'].value;\r\n\tbackground = formObj.elements['backgroundimage'].value;\r\n\tcaption = formObj.elements['caption'].checked;\r\n\r\n\tcellLimit = tinyMCEPopup.getParam('table_cell_limit', false);\r\n\trowLimit = tinyMCEPopup.getParam('table_row_limit', false);\r\n\tcolLimit = tinyMCEPopup.getParam('table_col_limit', false);\r\n\r\n\t// Validate table size\r\n\tif (colLimit && cols > colLimit) {\r\n\t\ttinyMCEPopup.alert(inst.getLang('table_dlg.col_limit').replace(/\\{\\$cols\\}/g, colLimit));\r\n\t\treturn false;\r\n\t} else if (rowLimit && rows > rowLimit) {\r\n\t\ttinyMCEPopup.alert(inst.getLang('table_dlg.row_limit').replace(/\\{\\$rows\\}/g, rowLimit));\r\n\t\treturn false;\r\n\t} else if (cellLimit && cols * rows > cellLimit) {\r\n\t\ttinyMCEPopup.alert(inst.getLang('table_dlg.cell_limit').replace(/\\{\\$cells\\}/g, cellLimit));\r\n\t\treturn false;\r\n\t}\r\n\r\n\t// Update table\r\n\tif (action == \"update\") {\r\n\t\tdom.setAttrib(elm, 'cellPadding', cellpadding, true);\r\n\t\tdom.setAttrib(elm, 'cellSpacing', cellspacing, true);\r\n\t\tdom.setAttrib(elm, 'border', border);\r\n\t\tdom.setAttrib(elm, 'align', align);\r\n\t\tdom.setAttrib(elm, 'frame', frame);\r\n\t\tdom.setAttrib(elm, 'rules', rules);\r\n\t\tdom.setAttrib(elm, 'class', className);\r\n\t\tdom.setAttrib(elm, 'style', style);\r\n\t\tdom.setAttrib(elm, 'id', id);\r\n\t\tdom.setAttrib(elm, 'summary', summary);\r\n\t\tdom.setAttrib(elm, 'dir', dir);\r\n\t\tdom.setAttrib(elm, 'lang', lang);\r\n\r\n\t\tcapEl = inst.dom.select('caption', elm)[0];\r\n\r\n\t\tif (capEl && !caption)\r\n\t\t\tcapEl.parentNode.removeChild(capEl);\r\n\r\n\t\tif (!capEl && caption) {\r\n\t\t\tcapEl = elm.ownerDocument.createElement('caption');\r\n\r\n\t\t\tif (!tinymce.isIE)\r\n\t\t\t\tcapEl.innerHTML = '<br data-mce-bogus=\"1\"/>';\r\n\r\n\t\t\telm.insertBefore(capEl, elm.firstChild);\r\n\t\t}\r\n\r\n\t\tif (width && inst.settings.inline_styles) {\r\n\t\t\tdom.setStyle(elm, 'width', width);\r\n\t\t\tdom.setAttrib(elm, 'width', '');\r\n\t\t} else {\r\n\t\t\tdom.setAttrib(elm, 'width', width, true);\r\n\t\t\tdom.setStyle(elm, 'width', '');\r\n\t\t}\r\n\r\n\t\t// Remove these since they are not valid XHTML\r\n\t\tdom.setAttrib(elm, 'borderColor', '');\r\n\t\tdom.setAttrib(elm, 'bgColor', '');\r\n\t\tdom.setAttrib(elm, 'background', '');\r\n\r\n\t\tif (height && inst.settings.inline_styles) {\r\n\t\t\tdom.setStyle(elm, 'height', height);\r\n\t\t\tdom.setAttrib(elm, 'height', '');\r\n\t\t} else {\r\n\t\t\tdom.setAttrib(elm, 'height', height, true);\r\n\t\t\tdom.setStyle(elm, 'height', '');\r\n \t\t}\r\n\r\n\t\tif (background != '')\r\n\t\t\telm.style.backgroundImage = \"url('\" + background + \"')\";\r\n\t\telse\r\n\t\t\telm.style.backgroundImage = '';\r\n\r\n/*\t\tif (tinyMCEPopup.getParam(\"inline_styles\")) {\r\n\t\t\tif (width != '')\r\n\t\t\t\telm.style.width = getCSSSize(width);\r\n\t\t}*/\r\n\r\n\t\tif (bordercolor != \"\") {\r\n\t\t\telm.style.borderColor = bordercolor;\r\n\t\t\telm.style.borderStyle = elm.style.borderStyle == \"\" ? \"solid\" : elm.style.borderStyle;\r\n\t\t\telm.style.borderWidth = border == \"\" ? \"1px\" : border;\r\n\t\t} else\r\n\t\t\telm.style.borderColor = '';\r\n\r\n\t\telm.style.backgroundColor = bgcolor;\r\n\t\telm.style.height = getCSSSize(height);\r\n\r\n\t\tinst.addVisual();\r\n\r\n\t\t// Fix for stange MSIE align bug\r\n\t\t//elm.outerHTML = elm.outerHTML;\r\n\r\n\t\tinst.nodeChanged();\r\n\t\tinst.execCommand('mceEndUndoLevel');\r\n\r\n\t\t// Repaint if dimensions changed\r\n\t\tif (formObj.width.value != orgTableWidth || formObj.height.value != orgTableHeight)\r\n\t\t\tinst.execCommand('mceRepaint');\r\n\r\n\t\ttinyMCEPopup.close();\r\n\t\treturn true;\r\n\t}\r\n\r\n\t// Create new table\r\n\thtml += '<table';\r\n\r\n\thtml += makeAttrib('id', id);\r\n\thtml += makeAttrib('border', border);\r\n\thtml += makeAttrib('cellpadding', cellpadding);\r\n\thtml += makeAttrib('cellspacing', cellspacing);\r\n\thtml += makeAttrib('data-mce-new', '1');\r\n\r\n\tif (width && inst.settings.inline_styles) {\r\n\t\tif (style)\r\n\t\t\tstyle += '; ';\r\n\r\n\t\t// Force px\r\n\t\tif (/^[0-9\\.]+$/.test(width))\r\n\t\t\twidth += 'px';\r\n\r\n\t\tstyle += 'width: ' + width;\r\n\t} else\r\n\t\thtml += makeAttrib('width', width);\r\n\r\n/*\tif (height) {\r\n\t\tif (style)\r\n\t\t\tstyle += '; ';\r\n\r\n\t\tstyle += 'height: ' + height;\r\n\t}*/\r\n\r\n\t//html += makeAttrib('height', height);\r\n\t//html += makeAttrib('bordercolor', bordercolor);\r\n\t//html += makeAttrib('bgcolor', bgcolor);\r\n\thtml += makeAttrib('align', align);\r\n\thtml += makeAttrib('frame', frame);\r\n\thtml += makeAttrib('rules', rules);\r\n\thtml += makeAttrib('class', className);\r\n\thtml += makeAttrib('style', style);\r\n\thtml += makeAttrib('summary', summary);\r\n\thtml += makeAttrib('dir', dir);\r\n\thtml += makeAttrib('lang', lang);\r\n\thtml += '>';\r\n\r\n\tif (caption) {\r\n\t\tif (!tinymce.isIE)\r\n\t\t\thtml += '<caption><br data-mce-bogus=\"1\"/></caption>';\r\n\t\telse\r\n\t\t\thtml += '<caption></caption>';\r\n\t}\r\n\r\n\tfor (var y=0; y<rows; y++) {\r\n\t\thtml += \"<tr>\";\r\n\r\n\t\tfor (var x=0; x<cols; x++) {\r\n\t\t\tif (!tinymce.isIE)\r\n\t\t\t\thtml += '<td><br data-mce-bogus=\"1\"/></td>';\r\n\t\t\telse\r\n\t\t\t\thtml += '<td></td>';\r\n\t\t}\r\n\r\n\t\thtml += \"</tr>\";\r\n\t}\r\n\r\n\thtml += \"</table>\";\r\n\r\n\t// Move table\r\n\tif (inst.settings.fix_table_elements) {\r\n\t\tvar patt = '';\r\n\r\n\t\tinst.focus();\r\n\t\tinst.selection.setContent('<br class=\"_mce_marker\" />');\r\n\r\n\t\ttinymce.each('h1,h2,h3,h4,h5,h6,p'.split(','), function(n) {\r\n\t\t\tif (patt)\r\n\t\t\t\tpatt += ',';\r\n\r\n\t\t\tpatt += n + ' ._mce_marker';\r\n\t\t});\r\n\r\n\t\ttinymce.each(inst.dom.select(patt), function(n) {\r\n\t\t\tinst.dom.split(inst.dom.getParent(n, 'h1,h2,h3,h4,h5,h6,p'), n);\r\n\t\t});\r\n\r\n\t\tdom.setOuterHTML(dom.select('br._mce_marker')[0], html);\r\n\t} else\r\n\t\tinst.execCommand('mceInsertContent', false, html);\r\n\r\n\ttinymce.each(dom.select('table[data-mce-new]'), function(node) {\r\n\t\tvar td = dom.select('td', node);\r\n\r\n\t\ttry {\r\n\t\t\t// IE9 might fail to do this selection\r\n\t\t\tinst.selection.select(td[0], true);\r\n\t\t\tinst.selection.collapse();\r\n\t\t} catch (ex) {\r\n\t\t\t// Ignore\r\n\t\t}\r\n\r\n\t\tdom.setAttrib(node, 'data-mce-new', '');\r\n\t});\r\n\r\n\tinst.addVisual();\r\n\tinst.execCommand('mceEndUndoLevel');\r\n\r\n\ttinyMCEPopup.close();\r\n}\r\n\r\nfunction makeAttrib(attrib, value) {\r\n\tvar formObj = document.forms[0];\r\n\tvar valueElm = formObj.elements[attrib];\r\n\r\n\tif (typeof(value) == \"undefined\" || value == null) {\r\n\t\tvalue = \"\";\r\n\r\n\t\tif (valueElm)\r\n\t\t\tvalue = valueElm.value;\r\n\t}\r\n\r\n\tif (value == \"\")\r\n\t\treturn \"\";\r\n\r\n\t// XML encode it\r\n\tvalue = value.replace(/&/g, '&amp;');\r\n\tvalue = value.replace(/\\\"/g, '&quot;');\r\n\tvalue = value.replace(/</g, '&lt;');\r\n\tvalue = value.replace(/>/g, '&gt;');\r\n\r\n\treturn ' ' + attrib + '=\"' + value + '\"';\r\n}\r\n\r\nfunction init() {\r\n\ttinyMCEPopup.resizeToInnerSize();\r\n\r\n\tdocument.getElementById('backgroundimagebrowsercontainer').innerHTML = getBrowserHTML('backgroundimagebrowser','backgroundimage','image','table');\r\n\tdocument.getElementById('backgroundimagebrowsercontainer').innerHTML = getBrowserHTML('backgroundimagebrowser','backgroundimage','image','table');\r\n\tdocument.getElementById('bordercolor_pickcontainer').innerHTML = getColorPickerHTML('bordercolor_pick','bordercolor');\r\n\tdocument.getElementById('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor');\r\n\r\n\tvar cols = 2, rows = 2, border = tinyMCEPopup.getParam('table_default_border', '0'), cellpadding = tinyMCEPopup.getParam('table_default_cellpadding', ''), cellspacing = tinyMCEPopup.getParam('table_default_cellspacing', '');\r\n\tvar align = \"\", width = \"\", height = \"\", bordercolor = \"\", bgcolor = \"\", className = \"\";\r\n\tvar id = \"\", summary = \"\", style = \"\", dir = \"\", lang = \"\", background = \"\", bgcolor = \"\", bordercolor = \"\", rules = \"\", frame = \"\";\r\n\tvar inst = tinyMCEPopup.editor, dom = inst.dom;\r\n\tvar formObj = document.forms[0];\r\n\tvar elm = dom.getParent(inst.selection.getNode(), \"table\");\r\n\r\n\taction = tinyMCEPopup.getWindowArg('action');\r\n\r\n\tif (!action)\r\n\t\taction = elm ? \"update\" : \"insert\";\r\n\r\n\tif (elm && action != \"insert\") {\r\n\t\tvar rowsAr = elm.rows;\r\n\t\tvar cols = 0;\r\n\t\tfor (var i=0; i<rowsAr.length; i++)\r\n\t\t\tif (rowsAr[i].cells.length > cols)\r\n\t\t\t\tcols = rowsAr[i].cells.length;\r\n\r\n\t\tcols = cols;\r\n\t\trows = rowsAr.length;\r\n\r\n\t\tst = dom.parseStyle(dom.getAttrib(elm, \"style\"));\r\n\t\tborder = trimSize(getStyle(elm, 'border', 'borderWidth'));\r\n\t\tcellpadding = dom.getAttrib(elm, 'cellpadding', \"\");\r\n\t\tcellspacing = dom.getAttrib(elm, 'cellspacing', \"\");\r\n\t\twidth = trimSize(getStyle(elm, 'width', 'width'));\r\n\t\theight = trimSize(getStyle(elm, 'height', 'height'));\r\n\t\tbordercolor = convertRGBToHex(getStyle(elm, 'bordercolor', 'borderLeftColor'));\r\n\t\tbgcolor = convertRGBToHex(getStyle(elm, 'bgcolor', 'backgroundColor'));\r\n\t\talign = dom.getAttrib(elm, 'align', align);\r\n\t\tframe = dom.getAttrib(elm, 'frame');\r\n\t\trules = dom.getAttrib(elm, 'rules');\r\n\t\tclassName = tinymce.trim(dom.getAttrib(elm, 'class').replace(/mceItem.+/g, ''));\r\n\t\tid = dom.getAttrib(elm, 'id');\r\n\t\tsummary = dom.getAttrib(elm, 'summary');\r\n\t\tstyle = dom.serializeStyle(st);\r\n\t\tdir = dom.getAttrib(elm, 'dir');\r\n\t\tlang = dom.getAttrib(elm, 'lang');\r\n\t\tbackground = getStyle(elm, 'background', 'backgroundImage').replace(new RegExp(\"url\\\\(['\\\"]?([^'\\\"]*)['\\\"]?\\\\)\", 'gi'), \"$1\");\r\n\t\tformObj.caption.checked = elm.getElementsByTagName('caption').length > 0;\r\n\r\n\t\torgTableWidth = width;\r\n\t\torgTableHeight = height;\r\n\r\n\t\taction = \"update\";\r\n\t\tformObj.insert.value = inst.getLang('update');\r\n\t}\r\n\r\n\taddClassesToList('class', \"table_styles\");\r\n\tTinyMCE_EditableSelects.init();\r\n\r\n\t// Update form\r\n\tselectByValue(formObj, 'align', align);\r\n\tselectByValue(formObj, 'tframe', frame);\r\n\tselectByValue(formObj, 'rules', rules);\r\n\tselectByValue(formObj, 'class', className, true, true);\r\n\tformObj.cols.value = cols;\r\n\tformObj.rows.value = rows;\r\n\tformObj.border.value = border;\r\n\tformObj.cellpadding.value = cellpadding;\r\n\tformObj.cellspacing.value = cellspacing;\r\n\tformObj.width.value = width;\r\n\tformObj.height.value = height;\r\n\tformObj.bordercolor.value = bordercolor;\r\n\tformObj.bgcolor.value = bgcolor;\r\n\tformObj.id.value = id;\r\n\tformObj.summary.value = summary;\r\n\tformObj.style.value = style;\r\n\tformObj.dir.value = dir;\r\n\tformObj.lang.value = lang;\r\n\tformObj.backgroundimage.value = background;\r\n\r\n\tupdateColor('bordercolor_pick', 'bordercolor');\r\n\tupdateColor('bgcolor_pick', 'bgcolor');\r\n\r\n\t// Resize some elements\r\n\tif (isVisible('backgroundimagebrowser'))\r\n\t\tdocument.getElementById('backgroundimage').style.width = '180px';\r\n\r\n\t// Disable some fields in update mode\r\n\tif (action == \"update\") {\r\n\t\tformObj.cols.disabled = true;\r\n\t\tformObj.rows.disabled = true;\r\n\t}\r\n}\r\n\r\nfunction changedSize() {\r\n\tvar formObj = document.forms[0];\r\n\tvar st = dom.parseStyle(formObj.style.value);\r\n\r\n/*\tvar width = formObj.width.value;\r\n\tif (width != \"\")\r\n\t\tst['width'] = tinyMCEPopup.getParam(\"inline_styles\") ? getCSSSize(width) : \"\";\r\n\telse\r\n\t\tst['width'] = \"\";*/\r\n\r\n\tvar height = formObj.height.value;\r\n\tif (height != \"\")\r\n\t\tst['height'] = getCSSSize(height);\r\n\telse\r\n\t\tst['height'] = \"\";\r\n\r\n\tformObj.style.value = dom.serializeStyle(st);\r\n}\r\n\r\nfunction changedBackgroundImage() {\r\n\tvar formObj = document.forms[0];\r\n\tvar st = dom.parseStyle(formObj.style.value);\r\n\r\n\tst['background-image'] = \"url('\" + formObj.backgroundimage.value + \"')\";\r\n\r\n\tformObj.style.value = dom.serializeStyle(st);\r\n}\r\n\r\nfunction changedBorder() {\r\n\tvar formObj = document.forms[0];\r\n\tvar st = dom.parseStyle(formObj.style.value);\r\n\r\n\t// Update border width if the element has a color\r\n\tif (formObj.border.value != \"\" && formObj.bordercolor.value != \"\")\r\n\t\tst['border-width'] = formObj.border.value + \"px\";\r\n\r\n\tformObj.style.value = dom.serializeStyle(st);\r\n}\r\n\r\nfunction changedColor() {\r\n\tvar formObj = document.forms[0];\r\n\tvar st = dom.parseStyle(formObj.style.value);\r\n\r\n\tst['background-color'] = formObj.bgcolor.value;\r\n\r\n\tif (formObj.bordercolor.value != \"\") {\r\n\t\tst['border-color'] = formObj.bordercolor.value;\r\n\r\n\t\t// Add border-width if it's missing\r\n\t\tif (!st['border-width'])\r\n\t\t\tst['border-width'] = formObj.border.value == \"\" ? \"1px\" : formObj.border.value + \"px\";\r\n\t}\r\n\r\n\tformObj.style.value = dom.serializeStyle(st);\r\n}\r\n\r\nfunction changedStyle() {\r\n\tvar formObj = document.forms[0];\r\n\tvar st = dom.parseStyle(formObj.style.value);\r\n\r\n\tif (st['background-image'])\r\n\t\tformObj.backgroundimage.value = st['background-image'].replace(new RegExp(\"url\\\\(['\\\"]?([^'\\\"]*)['\\\"]?\\\\)\", 'gi'), \"$1\");\r\n\telse\r\n\t\tformObj.backgroundimage.value = '';\r\n\r\n\tif (st['width'])\r\n\t\tformObj.width.value = trimSize(st['width']);\r\n\r\n\tif (st['height'])\r\n\t\tformObj.height.value = trimSize(st['height']);\r\n\r\n\tif (st['background-color']) {\r\n\t\tformObj.bgcolor.value = st['background-color'];\r\n\t\tupdateColor('bgcolor_pick','bgcolor');\r\n\t}\r\n\r\n\tif (st['border-color']) {\r\n\t\tformObj.bordercolor.value = st['border-color'];\r\n\t\tupdateColor('bordercolor_pick','bordercolor');\r\n\t}\r\n}\r\n\r\ntinyMCEPopup.onInit.add(init);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/ar_dlg.js",
    "content": "tinyMCE.addI18n('ar.table_dlg',{rules_border:\"\\u0627\\u0644\\u062d\\u062f\\u0648\\u062f\",rules_box:\"\\u0635\\u0646\\u062f\\u0648\\u0642\",rules_vsides:\"vsides\",rules_rhs:\"rhs\",rules_lhs:\"lhs\",rules_hsides:\"hsides\",rules_below:\"\\u0623\\u062f\\u0646\\u0627\\u0647\",rules_above:\"\\u0623\\u0639\\u0644\\u0649\",rules_void:\"\\u0623\\u0644\\u063a\\u0649\",rules:\"\\u0642\\u0648\\u0627\\u0639\\u062f\",frame_all:\"\\u0643\\u0627\\u0641\\u0629\",frame_cols:\"\\u0623\\u0639\\u0645\\u062f\\u0629\",frame_rows:\"\\u0627\\u0644\\u0635\\u0641\\u0648\\u0641\",frame_groups:\"\\u0627\\u0644\\u0645\\u062c\\u0645\\u0648\\u0639\\u0627\\u062a\",frame_none:\"\\u0644\\u0627 \\u0634\\u064a\\u0621\",frame:\"\\u0627\\u0644\\u0625\\u0637\\u0627\\u0631\",caption:\"\\u0627\\u0644\\u062c\\u062f\\u0648\\u0644 \\u0627\\u0644\\u062a\\u0648\\u0636\\u064a\\u062d\\u064a\\u0629\",missing_scope:\"Are you sure you want to continue without specifying a scope for this table header cell. Without it, it may be difficult for some users with disabilities to understand the content or data displayed of the table.\",cell_limit:\"\\u0644\\u0642\\u062f \\u062a\\u062c\\u0627\\u0648\\u0632\\u062a \\u0627\\u0644\\u062d\\u062f \\u0627\\u0644\\u0623\\u0642\\u0635\\u0649 \\u0644\\u0639\\u062f\\u062f \\u0645\\u0646 \\u0627\\u0644\\u062e\\u0644\\u0627\\u064a\\u0627 {$cells}.\",row_limit:\"\\u0644\\u0642\\u062f \\u062a\\u062c\\u0627\\u0648\\u0632\\u062a \\u0627\\u0644\\u062d\\u062f \\u0627\\u0644\\u0623\\u0642\\u0635\\u0649 \\u0644\\u0639\\u062f\\u062f \\u0627\\u0644\\u0635\\u0641\\u0648\\u0641 {$rows}.\",col_limit:\"\\u0644\\u0642\\u062f \\u062a\\u062c\\u0627\\u0648\\u0632\\u062a \\u0627\\u0644\\u062d\\u062f \\u0627\\u0644\\u0623\\u0642\\u0635\\u0649 \\u0644\\u0639\\u062f\\u062f \\u0623\\u0639\\u0645\\u062f\\u0629 {$cols}.\",colgroup:\"\\u0645\\u062c\\u0645\\u0648\\u0639\\u0629 \\u0623\\u0639\\u0645\\u062f\\u0629 \",rowgroup:\" \\u0645\\u062c\\u0645\\u0648\\u0639\\u0629 \\u0635\\u0641\",scope:\"\\u0646\\u0637\\u0627\\u0642\",tfoot:\"\\u0627\\u0644\\u062c\\u062f\\u0648\\u0644 \\u0627\\u0644\\u0642\\u062f\\u0645\",tbody:\" \\u0627\\u0644\\u062c\\u062f\\u0648\\u0644 \\u062c\\u0633\\u062f\",thead:\"\\u0627\\u0644\\u062c\\u062f\\u0648\\u0644 \\u0631\\u0626\\u064a\\u0633\",row_all:\"\\u062a\\u062d\\u062f\\u064a\\u062b \\u0643\\u0627\\u0641\\u0629 \\u0627\\u0644\\u0635\\u0641\\u0648\\u0641 \\u0641\\u064a \\u0627\\u0644\\u062c\\u062f\\u0648\\u0644\",row_even:\" \\u062a\\u062d\\u062f\\u064a\\u062b \\u0627\\u0644\\u0635\\u0641\\u0648\\u0641 \\u0641\\u064a \\u0627\\u0644\\u062c\\u062f\\u0648\\u0644 \\u0632\\u0648\\u062c\\u0649 \\u0639\\u062f\\u062f\",row_odd:\"\\u062a\\u062d\\u062f\\u064a\\u062b \\u0627\\u0644\\u0635\\u0641\\u0648\\u0641 \\u0641\\u064a \\u0627\\u0644\\u062c\\u062f\\u0648\\u0644 \\u0645\\u0641\\u0631\\u062f\",row_row:\"\\u062a\\u062d\\u062f\\u064a\\u062b \\u0627\\u0644\\u0635\\u0641 \\u0627\\u0644\\u062d\\u0627\\u0644\\u064a\",cell_all:\"\\u062d\\u062f\\u064a\\u062b \\u0643\\u0627\\u0641\\u0629 \\u0627\\u0644\\u062e\\u0644\\u0627\\u064a\\u0627 \\u0641\\u064a \\u0627\\u0644\\u062c\\u062f\\u0648\\u0644\",cell_row:\"\\u062a\\u062d\\u062f\\u064a\\u062b \\u0643\\u0627\\u0641\\u0629 \\u0627\\u0644\\u062e\\u0644\\u0627\\u064a\\u0627 \\u0641\\u064a \\u0627\\u0644\\u0635\\u0641\",cell_cell:\"\\u062a\\u062d\\u062f\\u064a\\u062b \\u0627\\u0644\\u062e\\u0644\\u064a\\u0629 \\u0627\\u0644\\u062d\\u0627\\u0644\\u064a\\u0629\",th:\"\\u0631\\u0623\\u0633\",td:\"\\u0627\\u0644\\u0628\\u064a\\u0627\\u0646\\u0627\\u062a\",summary:\"\\u0645\\u0644\\u062e\\u0635\",bgimage:\"\\u0635\\u0648\\u0631\\u0629 \\u0627\\u0644\\u062e\\u0644\\u0641\\u064a\\u0629\",rtl:\"\\u0645\\u0646 \\u0627\\u0644\\u064a\\u0645\\u064a\\u0646 \\u0625\\u0644\\u0649 \\u0627\\u0644\\u064a\\u0633\\u0627\\u0631\",ltr:\"\\u0645\\u0646 \\u0627\\u0644\\u064a\\u0633\\u0627\\u0631 \\u0625\\u0644\\u0649 \\u0627\\u0644\\u064a\\u0645\\u064a\\u0646\",mime:\"\\u0627\\u0644\\u0647\\u062f\\u0641 \\u0646\\u0648\\u0639 \\u0627\\u0644\\u0645\\u0644\\u0641\",langcode:\"\\u0631\\u0645\\u0632 \\u0627\\u0644\\u0644\\u063a\\u0629\",langdir:\"\\u0627\\u062a\\u062c\\u0627\\u0647 \\u0644\\u063a\\u0629\",style:\"\\u0634\\u0643\\u0644\",id:\"Id\",merge_cells_title:\"\\u062f\\u0645\\u062c \\u0627\\u0644\\u062e\\u0644\\u0627\\u064a\\u0627\",bgcolor:\"\\u0644\\u0648\\u0646 \\u0627\\u0644\\u062e\\u0644\\u0641\\u064a\\u0629\",bordercolor:\"\\u0644\\u0648\\u0646 \\u0627\\u0644\\u062d\\u062f\\u0648\\u062f\",align_bottom:\"\\u0627\\u0633\\u0641\\u0644\",align_top:\"\\u0627\\u0644\\u0627\\u0639\\u0644\\u0649\",valign:\"\\u0627\\u0644\\u0645\\u062d\\u0627\\u0630\\u0627\\u0629 \\u0627\\u0644\\u0639\\u0645\\u0648\\u062f\\u064a\\u0629\",cell_type:\"\\u0646\\u0648\\u0639 \\u0627\\u0644\\u062e\\u0644\\u064a\\u0629\",cell_title:\"\\u062e\\u0635\\u0627\\u0626\\u0635 \\u0627\\u0644\\u062c\\u062f\\u0648\\u0644 \\u0627\\u0644\\u062e\\u0644\\u064a\\u0629\",row_title:\"\\u062e\\u0635\\u0627\\u0626\\u0635 \\u0627\\u0644\\u062c\\u062f\\u0648\\u0644 \\u0627\\u0644\\u0635\\u0641\",align_middle:\"\\u0648\\u0633\\u0637\",align_right:\"\\u064a\\u0645\\u064a\\u0646\",align_left:\"\\u064a\\u0633\\u0627\\u0631\",align_default:\"\\u0627\\u0644\\u0627\\u0641\\u062a\\u0631\\u0627\\u0636\\u064a\",align:\"\\u0627\\u0644\\u0645\\u062d\\u0627\\u0630\\u0627\\u0629\",border:\"\\u0627\\u0644\\u062d\\u062f\\u0648\\u062f\",cellpadding:\"\\u0628\\u0637\\u0627\\u0646\\u0629 \\u0627\\u0644\\u062e\\u0644\\u0627\\u064a\\u0627\",cellspacing:\"\\u0628\\u062a\\u0628\\u0627\\u0639\\u062f \\u0627\\u0644\\u062e\\u0644\\u0627\\u064a\\u0627 \",rows:\"\\u0627\\u0644\\u0635\\u0641\\u0648\\u0641\",cols:\"\\u0623\\u0639\\u0645\\u062f\\u0629\",height:\"\\u0637\\u0648\\u0644\",width:\"\\u0639\\u0631\\u0636\",title:\"\\u0625\\u062f\\u0631\\u0627\\u062c \\u062c\\u062f\\u0648\\u0644 / \\u062a\\u0639\\u062f\\u064a\\u0644\",rowtype:\"\\u0635\\u0641 \\u0641\\u064a \\u062c\\u0632\\u0621 \\u0627\\u0644\\u062c\\u062f\\u0648\\u0644\",advanced_props:\"\\u0627\\u0644\\u062e\\u0635\\u0627\\u0626\\u0635 \\u0627\\u0644\\u0639\\u0627\\u0645\\u0629\",general_props:\"General properties\",advanced_tab:\"\\u0645\\u062a\\u0642\\u062f\\u0645\",general_tab:\"\\u0639\\u0627\\u0645\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/az_dlg.js",
    "content": "tinyMCE.addI18n('az.table_dlg',{\"rules_border\":\"s\\u0259rh\\u0259d\",\"rules_box\":\"konteyner\",\"rules_vsides\":\"\\u015faquli t\\u0259r\\u0259fl\\u0259r\",\"rules_rhs\":\"sa\\u011f \\u00fcf\\u00fcqi t\\u0259r\\u0259fl\\u0259r\",\"rules_lhs\":\"sol \\u00fcf\\u00fcqi t\\u0259r\\u0259fl\\u0259r\",\"rules_hsides\":\"\\u00fcf\\u00fcqi t\\u0259r\\u0259fl\\u0259r\",\"rules_below\":\"a\\u015fa\\u011f\\u0131dan\",\"rules_above\":\"yuxar\\u0131dan\",\"rules_void\":\"he\\u00e7 n\\u0259\",rules:\"X\\u0259ttl\\u0259r\",\"frame_all\":\"ham\\u0131s\\u0131\",\"frame_cols\":\"s\\u00fctunlar\",\"frame_rows\":\"s\\u0259trl\\u0259r\",\"frame_groups\":\"qruplar\",\"frame_none\":\"he\\u00e7n\\u0259\",frame:\"\\u00c7\\u0259r\\u00e7iv\\u0259\",caption:\"C\\u0259dv\\u0259l ba\\u015fl\\u0131\\u011f\\u0131\",\"missing_scope\":\"\\u018fminsiniz ki, ba\\u015fl\\u0131q \\u00f6z\\u0259yinin h\\u0259ddini g\\u00f6st\\u0259rm\\u0259d\\u0259n davam etm\\u0259k ist\\u0259yirsiniz? Bunsuz b\\u0259zi i\\u015f qabiliyy\\u0259ti a\\u015fa\\u011f\\u0131 olan istifad\\u0259\\u00e7il\\u0259r\\u0259 c\\u0259dv\\u0259lin m\\u0259lumatlar\\u0131 v\\u0259 t\\u0259rkibini anlamaq \\u00e7\\u0259tin olacaq.\",\"cell_limit\":\"Siz \\u00f6z\\u0259kl\\u0259rd\\u0259 {$cells} maksimum say\\u0131 a\\u015fd\\u0131n\\u0131z.\",\"row_limit\":\"Siz s\\u0259trl\\u0259rd\\u0259 {$rows} maksimum say\\u0131 a\\u015fd\\u0131n\\u0131z.\",\"col_limit\":\"Siz s\\u00fctunlarda {$cols} maksimum say\\u0131 a\\u015fd\\u0131n\\u0131z.\",colgroup:\"S\\u00fctun qrupu\",rowgroup:\"S\\u0259tr qrupu\",scope:\"H\\u0259dd\",tfoot:\"C\\u0259dv\\u0259lin a\\u015fa\\u011f\\u0131 hiss\\u0259si\",tbody:\"C\\u0259dv\\u0259lin \\u0259sas hiss\\u0259si\",thead:\"C\\u0259dv\\u0259lin yuxar\\u0131 hiss\\u0259si\",\"row_all\":\"C\\u0259dv\\u0259ld\\u0259ki b\\u00fct\\u00fcn s\\u0259trl\\u0259ri yenil\\u0259\",\"row_even\":\"C\\u0259dv\\u0259ld\\u0259ki c\\u00fct (\\u0259d\\u0259d) s\\u0259trl\\u0259ri yenil\\u0259\",\"row_odd\":\"C\\u0259d\\u0259ld\\u0259ki t\\u0259k (\\u0259d\\u0259d) s\\u0259trl\\u0259ri yenil\\u0259\",\"row_row\":\"Haz\\u0131rki s\\u0259tri yenil\\u0259\",\"cell_all\":\"C\\u0259dv\\u0259ld\\u0259ki b\\u00fct\\u00fcn \\u00f6z\\u0259kl\\u0259ri yenil\\u0259\",\"cell_row\":\"S\\u0259trd\\u0259ki b\\u00fct\\u00fcn \\u00f6z\\u0259kl\\u0259ri yenil\\u0259\",\"cell_cell\":\"Haz\\u0131rki \\u00f6z\\u0259yi yenil\\u0259\",th:\"Ba\\u015fl\\u0131q\",td:\"Veril\\u0259nl\\u0259r\",summary:\"X\\u00fclas\\u0259\",bgimage:\"Fon \\u015f\\u0259kli\",rtl:\"Sa\\u011fda-sola\",ltr:\"Solda-sa\\u011fa\",mime:\"H\\u0259d\\u0259fli MIME-n\\u00f6v\",langcode:\"Dil kodu\",langdir:\"Dil istiqam\\u0259ti\",style:\"Stil\",id:\"\\u0130dentifikator\",\"merge_cells_title\":\"\\u00d6z\\u0259k stili\",bgcolor:\"Fon r\\u0259ngi\",bordercolor:\"S\\u0259rh\\u0259d r\\u0259ngi\",\"align_bottom\":\"A\\u015fa\\u011f\\u0131 il\\u0259\",\"align_top\":\"Yuxar\\u0131 il\\u0259\",valign:\"\\u015eaquli tarazla\\u015fma\",\"cell_type\":\"\\u00d6z\\u0259k n\\u00f6v\\u00fc\",\"cell_title\":\"\\u00d6z\\u0259k x\\u00fcsusiyy\\u0259ti\",\"row_title\":\"S\\u0259tr x\\u00fcsusiyy\\u0259ti\",\"align_middle\":\"M\\u0259rk\\u0259z il\\u0259\",\"align_right\":\"Sa\\u011fa\",\"align_left\":\"Sola\",\"align_default\":\"Default\",align:\"Tarazla\\u015fd\\u0131rma\",border:\"S\\u0259rh\\u0259d\",cellpadding:\"\\u00d6z\\u0259kl\\u0259rd\\u0259 doldurma\",cellspacing:\"\\u00d6z\\u0259kl\\u0259r aras\\u0131ndak\\u0131 m\\u0259saf\\u0259\",rows:\"S\\u0259trl\\u0259r\",cols:\"S\\u00fctunlar\",height:\"H\\u00fcnd\\u00fcrl\\u00fcy\\u00fc\",width:\"Eni\",title:\"C\\u0259dv\\u0259li \\u0259lav\\u0259 et/d\\u0259yi\\u015fdir\",rowtype:\"C\\u0259dv\\u0259l hiss\\u0259sind\\u0259ki s\\u0259tr\",\"advanced_props\":\"\\u018flav\\u0259 x\\u00fcsusiyy\\u0259tl\\u0259r\",\"general_props\":\"\\u00dcmumi x\\u00fcsusiyy\\u0259tl\\u0259r\",\"advanced_tab\":\"\\u018flav\\u0259l\\u0259r\",\"general_tab\":\"\\u00dcmumi\",\"cell_col\":\"Update all cells in column\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/be_dlg.js",
    "content": "tinyMCE.addI18n('be.table_dlg',{\"rules_border\":\"\\u043c\\u044f\\u0436\\u0430\",\"rules_box\":\"\\u043a\\u0430\\u043d\\u0442\\u044d\\u0439\\u043d\\u0435\\u0440\",\"rules_vsides\":\"\\u0432\\u0435\\u0440\\u0442\\u044b\\u043a\\u0430\\u043b\\u044c\\u043d\\u044b\\u044f \\u0431\\u0430\\u043a\\u0456\",\"rules_rhs\":\"\\u043f\\u0440\\u0430\\u0432\\u044b\\u044f \\u0433\\u0430\\u0440\\u044b\\u0437\\u0430\\u043d\\u0442\\u0430\\u043b\\u044c\\u043d\\u044b\\u044f \\u0431\\u0430\\u043a\\u0456\",\"rules_lhs\":\"\\u043b\\u0435\\u0432\\u044b\\u044f \\u0433\\u0430\\u0440\\u044b\\u0437\\u0430\\u043d\\u0442\\u0430\\u043b\\u044c\\u043d\\u044b\\u044f \\u0431\\u0430\\u043a\\u0456\",\"rules_hsides\":\"\\u0433\\u0430\\u0440\\u044b\\u0437\\u0430\\u043d\\u0442\\u0430\\u043b\\u044c\\u043d\\u044b\\u044f \\u0431\\u0430\\u043a\\u0456\",\"rules_below\":\"\\u0437\\u043d\\u0456\\u0437\\u0443\",\"rules_above\":\"\\u0437\\u0432\\u0435\\u0440\\u0445\\u0443\",\"rules_void\":\"\\u043d\\u0456\\u0448\\u0442\\u043e\",rules:\"\\u041f\\u0440\\u0430\\u0432\\u0456\\u043b\\u044b\",\"frame_all\":\"\\u0443\\u0441\\u0451\",\"frame_cols\":\"\\u0441\\u043b\\u0443\\u043f\\u043a\\u0456\",\"frame_rows\":\"\\u0440\\u0430\\u0434\\u043a\\u0456\",\"frame_groups\":\"\\u0433\\u0440\\u0443\\u043f\\u044b\",\"frame_none\":\"\\u043d\\u0456\\u0447\\u043e\\u0433\\u0430\",frame:\"\\u0420\\u0430\\u043c\\u043a\\u0430\",caption:\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u043e\\u0432\\u0430\\u043a \\u0442\\u0430\\u0431\\u043b\\u0456\\u0446\\u044b\",\"missing_scope\":\"\\u0412\\u044b \\u0441\\u0430\\u043f\\u0440\\u0430\\u045e\\u0434\\u044b \\u0436\\u0430\\u0434\\u0430\\u0435\\u0446\\u0435 \\u043f\\u0440\\u0430\\u0446\\u044f\\u0433\\u043d\\u0443\\u0446\\u044c \\u0431\\u0435\\u0437 \\u0443\\u043a\\u0430\\u0437\\u0430\\u043d\\u043d\\u044f \\u043c\\u0435\\u0436 \\u0433\\u044d\\u0442\\u0430\\u0439 \\u044f\\u0447\\u044d\\u0439\\u043a\\u0456 \\u0437\\u0430\\u0433\\u0430\\u043b\\u043e\\u045e\\u043a\\u0430? \\u0411\\u0435\\u0437 \\u0433\\u044d\\u0442\\u0430\\u0433\\u0430 \\u043d\\u0435\\u043a\\u0430\\u0442\\u043e\\u0440\\u044b\\u043c \\u043a\\u0430\\u0440\\u044b\\u0441\\u0442\\u0430\\u043b\\u044c\\u043d\\u0456\\u043a\\u0430\\u043c \\u0437 \\u0430\\u0431\\u043c\\u0435\\u0436\\u0430\\u0432\\u0430\\u043d\\u0430\\u0439 \\u043f\\u0440\\u0430\\u0446\\u0430\\u0437\\u0434\\u043e\\u043b\\u044c\\u043d\\u0430\\u0441\\u0446\\u044e \\u043c\\u043e\\u0436\\u0430 \\u0431\\u044b\\u0446\\u044c \\u0446\\u044f\\u0436\\u043a\\u0430 \\u0437\\u0440\\u0430\\u0437\\u0443\\u043c\\u0435\\u0446\\u044c \\u0443\\u0442\\u0440\\u044b\\u043c\\u0430\\u043d\\u043d\\u0435 \\u0430\\u0431\\u043e \\u0434\\u0430\\u043d\\u044b\\u044f \\u0442\\u0430\\u0431\\u043b\\u0456\\u0446\\u044b.\",\"cell_limit\":\"\\u0412\\u044b \\u043f\\u0435\\u0440\\u0430\\u0432\\u044b\\u0441\\u0456\\u043b\\u0456 \\u043c\\u0430\\u043a\\u0441\\u0456\\u043c\\u0430\\u043b\\u044c\\u043d\\u0443\\u044e \\u043a\\u043e\\u043b\\u044c\\u043a\\u0430\\u0441\\u0446\\u044c \\u0443 {$cells} \\u044f\\u0447\\u044d\\u0435\\u043a.\",\"row_limit\":\"\\u0412\\u044b \\u043f\\u0435\\u0440\\u0430\\u0432\\u044b\\u0441\\u0456\\u043b\\u0456 \\u043c\\u0430\\u043a\\u0441\\u0456\\u043c\\u0430\\u043b\\u044c\\u043d\\u0443\\u044e \\u043a\\u043e\\u043b\\u044c\\u043a\\u0430\\u0441\\u0446\\u044c \\u0443 {$rows} \\u0440\\u0430\\u0434\\u043a\\u043e\\u045e.\",\"col_limit\":\"\\u0412\\u044b \\u043f\\u0435\\u0440\\u0430\\u0432\\u044b\\u0441\\u0456\\u043b\\u0456 \\u043c\\u0430\\u043a\\u0441\\u0456\\u043c\\u0430\\u043b\\u044c\\u043d\\u0443\\u044e \\u043a\\u043e\\u043b\\u044c\\u043a\\u0430\\u0441\\u0446\\u044c \\u0443 {$cols} \\u0441\\u043b\\u0443\\u043f\\u043a\\u043e\\u045e.\",colgroup:\"\\u0413\\u0440\\u0443\\u043f\\u0430 \\u0441\\u043b\\u0443\\u043f\\u043a\\u043e\\u045e\",rowgroup:\"\\u0413\\u0440\\u0443\\u043f\\u0430 \\u0440\\u0430\\u0434\\u043a\\u043e\\u045e\",scope:\"\\u041c\\u0435\\u0436\\u044b\",tfoot:\"\\u041d\\u0456\\u0436\\u043d\\u044f\\u044f \\u0447\\u0430\\u0441\\u0442\\u043a\\u0430 \\u0442\\u0430\\u0431\\u043b\\u0456\\u0446\\u044b\",tbody:\"\\u0410\\u0441\\u043d\\u043e\\u045e\\u043d\\u0430\\u044f \\u0447\\u0430\\u0441\\u0442\\u043a\\u0430 \\u0442\\u0430\\u0431\\u043b\\u0456\\u0446\\u044b\",thead:\"\\u0412\\u0435\\u0440\\u0445\\u043d\\u044f\\u044f \\u0447\\u0430\\u0441\\u0442\\u043a\\u0430 \\u0442\\u0430\\u0431\\u043b\\u0456\\u0446\\u044b\",\"row_all\":\"\\u0410\\u0431\\u043d\\u0430\\u0432\\u0456\\u0446\\u044c \\u0443\\u0441\\u0435 \\u0440\\u0430\\u0434\\u043a\\u0456 \\u045e \\u0442\\u0430\\u0431\\u043b\\u0456\\u0446\\u044b\",\"row_even\":\"\\u0410\\u0431\\u043d\\u0430\\u0432\\u0456\\u0446\\u044c \\u0446\\u043e\\u0442\\u043d\\u044b\\u044f \\u0440\\u0430\\u0434\\u043a\\u0456 \\u045e \\u0442\\u0430\\u0431\\u043b\\u0456\\u0446\\u044b\",\"row_odd\":\"\\u0410\\u0431\\u043d\\u0430\\u0432\\u0456\\u0446\\u044c \\u043d\\u044f\\u0446\\u043e\\u0442\\u043d\\u044b\\u044f \\u0440\\u0430\\u0434\\u043a\\u0456 \\u045e \\u0442\\u0430\\u0431\\u043b\\u0456\\u0446\\u044b\",\"row_row\":\"\\u0410\\u0431\\u043d\\u0430\\u0432\\u0456\\u0446\\u044c \\u0431\\u044f\\u0433\\u0443\\u0447\\u044b \\u0440\\u0430\\u0434\\u043e\\u043a\",\"cell_all\":\"\\u0410\\u0431\\u043d\\u0430\\u0432\\u0456\\u0446\\u044c \\u0443\\u0441\\u0435 \\u044f\\u0447\\u044d\\u0439\\u043a\\u0456 \\u045e \\u0442\\u0430\\u0431\\u043b\\u0456\\u0446\\u044b\",\"cell_row\":\"\\u0410\\u0431\\u043d\\u0430\\u0432\\u0456\\u0446\\u044c \\u0443\\u0441\\u0435 \\u044f\\u0447\\u044d\\u0439\\u043a\\u0456 \\u045e \\u0440\\u0430\\u0434\\u043a\\u0443\",\"cell_cell\":\"\\u0410\\u0431\\u043d\\u0430\\u0432\\u0456\\u0446\\u044c \\u0431\\u044f\\u0433\\u0443\\u0447\\u0443\\u044e \\u044f\\u0447\\u044d\\u0439\\u043a\\u0443\",th:\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u043e\\u0432\\u0430\\u043a\",td:\"\\u0414\\u0430\\u043d\\u044b\\u044f\",summary:\"\\u0410\\u0433\\u0443\\u043b\\u044c\\u043d\\u0430\\u0435\",bgimage:\"\\u0424\\u043e\\u043d\\u0430\\u0432\\u044b \\u043c\\u0430\\u043b\\u044e\\u043d\\u0430\\u043a\",rtl:\"\\u0421\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043d\\u0430\\u043b\\u0435\\u0432\\u0430\",ltr:\"\\u0417\\u043b\\u0435\\u0432\\u0430 \\u043d\\u0430\\u043f\\u0440\\u0430\\u0432\\u0430\",mime:\"\\u041c\\u044d\\u0442\\u0430\\u0432\\u044b MIME-\\u0442\\u044b\\u043f\",langcode:\"\\u041a\\u043e\\u0434 \\u043c\\u043e\\u0432\\u044b\",langdir:\"\\u041a\\u0456\\u0440\\u0443\\u043d\\u0430\\u043a \\u043c\\u043e\\u0432\\u044b\",style:\"\\u0421\\u0442\\u044b\\u043b\\u044c\",id:\"\\u0406\\u0434\\u044d\\u043d\\u0442\\u044b\\u0444\\u0456\\u043a\\u0430\\u0442\\u0430\\u0440\",\"merge_cells_title\":\"\\u0417\\u043b\\u0456\\u0446\\u044c \\u044f\\u0447\\u044d\\u0439\\u043a\\u0456\",bgcolor:\"\\u041a\\u043e\\u043b\\u0435\\u0440 \\u0444\\u043e\\u043d\\u0443\",bordercolor:\"\\u041a\\u043e\\u043b\\u0435\\u0440 \\u043c\\u044f\\u0436\\u044b\",\"align_bottom\":\"\\u041f\\u0430 \\u043d\\u0456\\u0437\\u0435\",\"align_top\":\"\\u041f\\u0430 \\u0432\\u0435\\u0440\\u0441\\u0435\",valign:\"\\u0412\\u0435\\u0440\\u0442\\u044b\\u043a\\u0430\\u043b\\u044c\\u043d\\u0430\\u0435 \\u0432\\u044b\\u0440\\u0430\\u045e\\u043d\\u043e\\u045e\\u0432\\u0430\\u043d\\u043d\\u0435\",\"cell_type\":\"\\u0422\\u044b\\u043f \\u044f\\u0447\\u044d\\u0439\\u043a\\u0456\",\"cell_title\":\"\\u0423\\u043b\\u0430\\u0441\\u0446\\u0456\\u0432\\u0430\\u0441\\u0446\\u0456 \\u044f\\u0447\\u044d\\u0439\\u043a\\u0456\",\"row_title\":\"\\u0423\\u043b\\u0430\\u0441\\u0446\\u0456\\u0432\\u0430\\u0441\\u0446\\u0456 \\u0440\\u0430\\u0434\\u043a\\u0430\",\"align_middle\":\"\\u041f\\u0430 \\u0446\\u044d\\u043d\\u0442\\u0440\\u044b\",\"align_right\":\"\\u041d\\u0430\\u043f\\u0440\\u0430\\u0432\\u0430\",\"align_left\":\"\\u041d\\u0430\\u043b\\u0435\\u0432\\u0430\",\"align_default\":\"\\u041f\\u0430 \\u0437\\u043c\\u0430\\u045e\\u0447\\u0430\\u043d\\u043d\\u0456\",align:\"\\u0412\\u044b\\u0440\\u0430\\u045e\\u043d\\u043e\\u045e\\u0432\\u0430\\u043d\\u043d\\u0435\",border:\"\\u041c\\u044f\\u0436\\u0430\",cellpadding:\"\\u0412\\u043e\\u0434\\u0441\\u0442\\u0443\\u043f\\u044b \\u045e \\u044f\\u0447\\u044d\\u0439\\u043a\\u0430\\u0445\",cellspacing:\"\\u0410\\u0434\\u043b\\u0435\\u0433\\u043b\\u0430\\u0441\\u0446\\u044c \\u043f\\u0430\\u043c\\u0456\\u0436 \\u044f\\u0447\\u044d\\u0439\\u043a\\u0430\\u043c\\u0456\",rows:\"\\u0420\\u0430\\u0434\\u043a\\u0456\",cols:\"\\u0421\\u043b\\u0443\\u043f\\u043a\\u0456\",height:\"\\u0412\\u044b\\u0448\\u044b\\u043d\\u044f\",width:\"\\u0428\\u044b\\u0440\\u044b\\u043d\\u044f\",title:\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c/\\u0437\\u043c\\u044f\\u043d\\u0456\\u0446\\u044c \\u0442\\u0430\\u0431\\u043b\\u0456\\u0446\\u0443\",rowtype:\"\\u0422\\u044b\\u043f \\u0440\\u0430\\u0434\\u043a\\u0430\",\"advanced_props\":\"\\u0414\\u0430\\u0434\\u0430\\u0442\\u043a\\u043e\\u0432\\u044b\\u044f \\u045e\\u043b\\u0430\\u0441\\u0446\\u0456\\u0432\\u0430\\u0441\\u0446\\u0456\",\"general_props\":\"\\u0410\\u0433\\u0443\\u043b\\u044c\\u043d\\u044b\\u044f \\u045e\\u043b\\u0430\\u0441\\u0446\\u0456\\u0432\\u0430\\u0441\\u0446\\u0456\",\"advanced_tab\":\"\\u0414\\u0430\\u0434\\u0430\\u0442\\u043a\\u043e\\u0432\\u044b\\u044f\",\"general_tab\":\"\\u0410\\u0433\\u0443\\u043b\\u044c\\u043d\\u044b\\u044f\",\"cell_col\":\"\\u0410\\u0431\\u043d\\u0430\\u0432\\u0456\\u0446\\u044c \\u0443\\u0441\\u0435 \\u044f\\u0447\\u044d\\u0439\\u043a\\u0456 \\u045e \\u0441\\u043b\\u0443\\u043f\\u043a\\u0443\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/cs_dlg.js",
    "content": "tinyMCE.addI18n('cs.table_dlg',{rules_border:\"r\\u00e1me\\u010dek okolo\",rules_box:\"box okolo\",rules_vsides:\"vlevo a vpravo\",rules_rhs:\"vpravo\",rules_lhs:\"vlevo\",rules_hsides:\"naho\\u0159e a dole\",rules_below:\"dole\",rules_above:\"naho\\u0159e\",rules_void:\"\\u017e\\u00e1dn\\u00fd\",rules:\"Vykreslen\\u00ed m\\u0159\\u00ed\\u017eky\",frame_all:\"v\\u0161e\",frame_cols:\"sloupce\",frame_rows:\"\\u0159\\u00e1dky\",frame_groups:\"oblasti a skupiny sloupc\\u016f\",frame_none:\"\\u017e\\u00e1dn\\u00e1\",frame:\"R\\u00e1me\\u010dek tabulky\",caption:\"Nadpis tabulky\",missing_scope:\"Skute\\u010dn\\u011b chcete pokra\\u010dovat bez ur\\u010den\\u00ed oblasti hlavi\\u010dky t\\u00e9to tabulky? Bez n\\u00ed m\\u016f\\u017ee u n\\u011bkter\\u00fdch u\\u017eivatel\\u016f doch\\u00e1zet k ur\\u010dit\\u00fdm probl\\u00e9m\\u016fm p\\u0159i interpretaci a zobrazov\\u00e1n\\u00ed dat v tabulce.\",cell_limit:\"P\\u0159ekro\\u010dili jste maxim\\u00e1ln\\u00ed po\\u010det bun\\u011bk {$cells}.\",row_limit:\"P\\u0159ekro\\u010dili jste maxim\\u00e1ln\\u00ed po\\u010det \\u0159\\u00e1dk\\u016f {$rows}.\",col_limit:\"P\\u0159ekro\\u010dili jste maxim\\u00e1ln\\u00ed po\\u010det sloupc\\u016f {$cols}.\",colgroup:\"Skupina sloupc\\u016f\",rowgroup:\"Skupina \\u0159\\u00e1dk\\u016f\",scope:\"Hlavi\\u010dka pro\",tfoot:\"Pata tabulky\",tbody:\"T\\u011blo tabulky\",thead:\"Hlavi\\u010dka tabulky\",row_all:\"Aktualizovat v\\u0161echny \\u0159\\u00e1dky tabulky\",row_even:\"Aktualizovat sud\\u00e9 \\u0159\\u00e1dky tabulky\",row_odd:\"Aktualizovat lich\\u00e9 \\u0159\\u00e1dky tabulky\",row_row:\"Aktualizovat zvolen\\u00fd \\u0159\\u00e1dek\",cell_all:\"Aktualizovat v\\u0161echny bu\\u0148ky v tabulce\",cell_row:\"Aktualizovat v\\u0161echny bu\\u0148ky v \\u0159\\u00e1dku\",cell_cell:\"Aktualizovat zvolenou bu\\u0148ku\",th:\"Z\\u00e1hlav\\u00ed\",td:\"Data\",summary:\"Shrnut\\u00ed obsahu\",bgimage:\"Obr\\u00e1zek pozad\\u00ed\",rtl:\"Zprava doleva\",ltr:\"Zleva doprava\",mime:\"MIME typ c\\u00edle\",langcode:\"K\\u00f3d jazyka\",langdir:\"Sm\\u011br textu\",style:\"Styl\",id:\"ID\",merge_cells_title:\"Spojit bu\\u0148ky\",bgcolor:\"Barva pozad\\u00ed\",bordercolor:\"Barva r\\u00e1me\\u010dku\",align_bottom:\"Dol\\u016f\",align_top:\"Nahoru\",valign:\"Vertik\\u00e1ln\\u00ed zarovn\\u00e1n\\u00ed\",cell_type:\"Typ bu\\u0148ky\",cell_title:\"Vlastnosti bu\\u0148ky\",row_title:\"Vlastnosti \\u0159\\u00e1dku\",align_middle:\"Na st\\u0159ed\",align_right:\"Vpravo\",align_left:\"Vlevo\",align_default:\"V\\u00fdchoz\\u00ed\",align:\"Zarovn\\u00e1n\\u00ed\",border:\"R\\u00e1me\\u010dek\",cellpadding:\"Odsazen\\u00ed obsahu\",cellspacing:\"Rozestup bun\\u011bk\",rows:\"\\u0158\\u00e1dky\",cols:\"Sloupce\",height:\"V\\u00fd\\u0161ka\",width:\"\\u0160\\u00ed\\u0159ka\",title:\"Vlo\\u017eit/upravit tabulku\",rowtype:\"Typ \\u0159\\u00e1dku\",advanced_props:\"Roz\\u0161\\u00ed\\u0159en\\u00e9 parametry\",general_props:\"Obecn\\u00e9 parametry\",advanced_tab:\"Roz\\u0161\\u00ed\\u0159en\\u00e9\",general_tab:\"Obecn\\u00e9\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/da_dlg.js",
    "content": "tinyMCE.addI18n('da.table_dlg',{\"rules_border\":\"kant\",\"rules_box\":\"boks\",\"rules_vsides\":\"vsides\",\"rules_rhs\":\"rhs\",\"rules_lhs\":\"lhs\",\"rules_hsides\":\"hsides\",\"rules_below\":\"under\",\"rules_above\":\"over\",\"rules_void\":\"void\",rules:\"Regler\",\"frame_all\":\"alle\",\"frame_cols\":\"kolonner\",\"frame_rows\":\"r\\u00e6kker\",\"frame_groups\":\"grupper\",\"frame_none\":\"ingen\",frame:\"Ramme\",caption:\"Tabeloverskrift\",\"missing_scope\":\"Er du sikker p\\u00e5, du vil forts\\u00e6tte uden at angive forklaring for denne overskriftscelle? Uden forklaring vil v\\u00e6re sv\\u00e6rt for f.ek.s blinde at l\\u00e6se og forst\\u00e5 indholdet i tabellen.\",\"cell_limit\":\"Du har overskredet antallet af tilladte celler p\\u00e5 {$cells}.\",\"row_limit\":\"Du har overskredet antallet af tilladte r\\u00e6kker p\\u00e5 {$rows}.\",\"col_limit\":\"Du har overskredet antallet af tilladte kolonner p\\u00e5 {$cols}.\",colgroup:\"Kolonnegruppe\",rowgroup:\"R\\u00e6kkegruppe\",scope:\"Forklaring\",tfoot:\"Tabelfod\",tbody:\"Tabelkrop\",thead:\"Tabelhoved\",\"row_all\":\"Opdater alle r\\u00e6kker\",\"row_even\":\"Opdater lige r\\u00e6kker\",\"row_odd\":\"Opdater ulige r\\u00e6kker\",\"row_row\":\"Opdater aktuelle celle\",\"cell_all\":\"Opdater alle celler i tabellen\",\"cell_row\":\"Opdater alle celler i r\\u00e6kken\",\"cell_cell\":\"Opdater aktuelle celle\",th:\"Hoved\",td:\"Data\",summary:\"Beskrivelse\",bgimage:\"Baggrundsbillede\",rtl:\"H\\u00f8jre mod venstre\",ltr:\"Venstre mod h\\u00f8jre\",mime:\"Destinations-MIME-type\",langcode:\"Sprogkode\",langdir:\"Sprogretning\",style:\"Style\",id:\"Id\",\"merge_cells_title\":\"Flet celler\",bgcolor:\"Baggrundsfarve\",bordercolor:\"Kantfarve\",\"align_bottom\":\"Bund\",\"align_top\":\"Top\",valign:\"Vertikal justering\",\"cell_type\":\"Celletype\",\"cell_title\":\"Celleegenskaber\",\"row_title\":\"R\\u00e6kkeegenskaber\",\"align_middle\":\"Centreret\",\"align_right\":\"H\\u00f8jre\",\"align_left\":\"Venstre\",\"align_default\":\"Standard\",align:\"Justering\",border:\"Kant\",cellpadding:\"Afstand til celleindhold\",cellspacing:\"Afstand mellem celler\",rows:\"R\\u00e6kker\",cols:\"Kolonner\",height:\"H\\u00f8jde\",width:\"Bredde\",title:\"Inds\\u00e6t/rediger tabel\",rowtype:\"R\\u00e6kke i tabel del\",\"advanced_props\":\"Avancerede egenskaber\",\"general_props\":\"Generelle egenskaber\",\"advanced_tab\":\"Avanceret\",\"general_tab\":\"Generelt\",\"cell_col\":\"Opdat\\u00e9r alle celler i en s\\u00f8jle\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/de_dlg.js",
    "content": "tinyMCE.addI18n('de.table_dlg',{rules_border:\"alle 4 Seiten (Border)\",rules_box:\"alle 4 Seiten (Box)\",rules_vsides:\"links und rechts\",rules_rhs:\"nur rechts\",rules_lhs:\"nur links\",rules_hsides:\"oben und unten\",rules_below:\"nur unten\",rules_above:\"nur oben\",rules_void:\"keins\",rules:\"Gitter\",frame_all:\"zwischen allen Zellen\",frame_cols:\"zwischen Spalten\",frame_rows:\"zwischen Zeilen\",frame_groups:\"zwischen Gruppen\",frame_none:\"keine\",frame:\"Rahmen\",caption:\"Beschriftung der Tabelle\",missing_scope:\"Wollen Sie wirklich keine Beziehung f\\u00fcr diese \\u00dcberschrift angeben? Benutzer mit k\\u00f6rperlichen Einschr\\u00e4nkungen k\\u00f6nnten Schwierigkeiten haben, den Inhalt der Tabelle zu verstehen.\",cell_limit:\"Sie haben die maximale Zellenzahl von {$cells} \\u00fcberschritten.\",row_limit:\"Sie haben die maximale Zeilenzahl von {$rows} \\u00fcberschritten.\",col_limit:\"Sie haben die maximale Spaltenzahl von {$cols} \\u00fcberschritten.\",colgroup:\"Horizontal gruppieren\",rowgroup:\"Vertikal gruppieren\",scope:\"Bezug\",tfoot:\"Tabellenfu\\u00df\",tbody:\"Tabelleninhalt\",thead:\"Tabellenkopf\",row_all:\"Alle Zeilen ver\\u00e4ndern\",row_even:\"Gerade Zeilen ver\\u00e4ndern\",row_odd:\"Ungerade Zeilen ver\\u00e4ndern\",row_row:\"Diese Zeile ver\\u00e4ndern\",cell_all:\"Alle Zellen der Tabelle ver\\u00e4ndern\",cell_row:\"Alle Zellen in dieser Zeile ver\\u00e4ndern\",cell_cell:\"Diese Zelle ver\\u00e4ndern\",th:\"\\u00dcberschrift\",td:\"Textzelle\",summary:\"Zusammenfassung\",bgimage:\"Hintergrundbild\",rtl:\"Rechts nach links\",ltr:\"Links nach rechts\",mime:\"MIME-Type des Inhalts\",langcode:\"Sprachcode\",langdir:\"Schriftrichtung\",style:\"Format\",id:\"ID\",merge_cells_title:\"Zellen vereinen\",bgcolor:\"Hintergrundfarbe\",bordercolor:\"Rahmenfarbe\",align_bottom:\"Unten\",align_top:\"Oben\",valign:\"Vertikale Ausrichtung\",cell_type:\"Zellentyp\",cell_title:\"Eigenschaften der Zelle\",row_title:\"Eigenschaften der Zeile\",align_middle:\"Mittig\",align_right:\"Rechts\",align_left:\"Links\",align_default:\"Standard\",align:\"Ausrichtung\",border:\"Rahmen\",cellpadding:\"Abstand innerhalb der Zellen\",cellspacing:\"Zellenabstand\",rows:\"Zeilen\",cols:\"Spalten\",height:\"H\\u00f6he\",width:\"Breite\",title:\"Tabelle einf\\u00fcgen/bearbeiten\",rowtype:\"Gruppierung\",advanced_props:\"Erweiterte Einstellungen\",general_props:\"Allgemeine Einstellungen\",advanced_tab:\"Erweitert\",general_tab:\"Allgemein\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/el_dlg.js",
    "content": "tinyMCE.addI18n('el.table_dlg',{\"rules_border\":\"\\u03c0\\u03bb\\u03b1\\u03af\\u03c3\\u03b9\\u03bf\",\"rules_box\":\"\\u03ba\\u03bf\\u03c5\\u03c4\\u03af\",\"rules_vsides\":\"\\u03ba\\u03ac\\u03b8\\u03b5\\u03c4\\u03b5\\u03c2 \\u03c0\\u03bb\\u03b5\\u03c5\\u03c1\\u03ad\\u03c2\",\"rules_rhs\":\"\\u03b4\\u03b5\\u03be\\u03b9\\u03ac \\u03bf\\u03c1\\u03b9\\u03b6\\u03cc\\u03bd\\u03c4\\u03b9\\u03b1 \\u03c0\\u03bb\\u03b5\\u03c5\\u03c1\\u03ac\",\"rules_lhs\":\"\\u03b1\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ae \\u03bf\\u03c1\\u03b9\\u03b6\\u03cc\\u03bd\\u03c4\\u03b9\\u03b1 \\u03c0\\u03bb\\u03b5\\u03c5\\u03c1\\u03ac\",\"rules_hsides\":\"\\u03bf\\u03c1\\u03b9\\u03b6\\u03cc\\u03bd\\u03c4\\u03b9\\u03b5\\u03c2 \\u03c0\\u03bb\\u03b5\\u03c5\\u03c1\\u03ad\\u03c2\",\"rules_below\":\"\\u03b1\\u03c0\\u03cc \\u03ba\\u03ac\\u03c4\\u03c9\",\"rules_above\":\"\\u03b1\\u03c0\\u03cc \\u03c0\\u03ac\\u03bd\\u03c9\",\"rules_void\":\"\\u03ba\\u03b5\\u03bd\\u03cc\",rules:\"\\u039a\\u03b1\\u03bd\\u03cc\\u03bd\\u03b5\\u03c2\",\"frame_all\":\"\\u03cc\\u03bb\\u03b1\",\"frame_cols\":\"\\u03c3\\u03c4\\u03ae\\u03bb\\u03b5\\u03c2\",\"frame_rows\":\"\\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ad\\u03c2\",\"frame_groups\":\"\\u03bf\\u03bc\\u03ac\\u03b4\\u03b5\\u03c2\",\"frame_none\":\"\\u03ba\\u03b1\\u03bd\\u03ad\\u03bd\\u03b1\",frame:\"Frame\",caption:\"\\u0395\\u03c0\\u03b9\\u03ba\\u03b5\\u03c6\\u03b1\\u03bb\\u03af\\u03b4\\u03b1 \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1\",\"missing_scope\":\"\\u03a3\\u03af\\u03b3\\u03bf\\u03c5\\u03c1\\u03b1 \\u03b8\\u03ad\\u03bb\\u03b5\\u03c4\\u03b5 \\u03bd\\u03b1 \\u03c3\\u03c5\\u03bd\\u03b5\\u03c7\\u03af\\u03c3\\u03b5\\u03c4\\u03b5 \\u03c7\\u03c9\\u03c1\\u03af\\u03c2 \\u03bd\\u03b1 \\u03ad\\u03c7\\u03b5\\u03c4\\u03b5 \\u03ba\\u03b1\\u03b8\\u03bf\\u03c1\\u03af\\u03c3\\u03b5\\u03b9 \\u03c4\\u03b7\\u03bd \\u03b5\\u03bc\\u03b2\\u03ad\\u03bb\\u03b5\\u03b9\\u03b1 \\u03c4\\u03bf\\u03c5 \\u03ba\\u03b5\\u03bb\\u03b9\\u03bf\\u03cd \\u03c4\\u03b7\\u03c2 \\u03ba\\u03bf\\u03c1\\u03c5\\u03c6\\u03ae\\u03c2 \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1. \\u03a7\\u03c9\\u03c1\\u03af\\u03c2 \\u03b1\\u03c5\\u03c4\\u03ae, \\u03bc\\u03c0\\u03bf\\u03c1\\u03b5\\u03af \\u03bd\\u03b1 \\u03b5\\u03af\\u03bd\\u03b1\\u03b9 \\u03b4\\u03cd\\u03c3\\u03ba\\u03bf\\u03bb\\u03bf \\u03b3\\u03b9\\u03b1 \\u03ba\\u03ac\\u03c0\\u03bf\\u03b9\\u03bf\\u03c5\\u03c2 \\u03c7\\u03c1\\u03ae\\u03c3\\u03c4\\u03b5\\u03c2 \\u03bc\\u03b5 \\u03c0\\u03c1\\u03bf\\u03b2\\u03bb\\u03ae\\u03bc\\u03b1\\u03c4\\u03b1 \\u03bd\\u03b1 \\u03ba\\u03b1\\u03c4\\u03b1\\u03bb\\u03ac\\u03b2\\u03bf\\u03c5\\u03bd \\u03c4\\u03bf \\u03c0\\u03b5\\u03c1\\u03b9\\u03b5\\u03c7\\u03cc\\u03bc\\u03b5\\u03bd\\u03bf \\u03c4\\u03bf\\u03c5 \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1.\",\"cell_limit\":\"\\u0388\\u03c7\\u03b5\\u03c4\\u03b5 \\u03be\\u03b5\\u03c0\\u03b5\\u03c1\\u03ac\\u03c3\\u03b5\\u03b9 \\u03c4\\u03bf \\u03cc\\u03c1\\u03b9\\u03bf \\u03c4\\u03c9\\u03bd \\u03ba\\u03b5\\u03bb\\u03b9\\u03ce\\u03bd \\u03c0\\u03bf\\u03c5 \\u03b5\\u03af\\u03bd\\u03b1\\u03b9 {$cells}.\",\"row_limit\":\"\\u0388\\u03c7\\u03b5\\u03c4\\u03b5 \\u03be\\u03b5\\u03c0\\u03b5\\u03c1\\u03ac\\u03c3\\u03b5\\u03b9 \\u03c4\\u03bf \\u03cc\\u03c1\\u03b9\\u03bf \\u03c4\\u03c9\\u03bd \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ce\\u03bd \\u03c0\\u03bf\\u03c5 \\u03b5\\u03af\\u03bd\\u03b1\\u03b9 {$rows}.\",\"col_limit\":\"\\u0388\\u03c7\\u03b5\\u03c4\\u03b5 \\u03be\\u03b5\\u03c0\\u03b5\\u03c1\\u03ac\\u03c3\\u03b5\\u03b9 \\u03c4\\u03bf \\u03cc\\u03c1\\u03b9\\u03bf \\u03c4\\u03c9\\u03bd \\u03c3\\u03c4\\u03b7\\u03bb\\u03c9\\u03bd \\u03c0\\u03bf\\u03c5 \\u03b5\\u03af\\u03bd\\u03b1\\u03b9 {$cols}.\",colgroup:\"\\u039f\\u03bc\\u03ac\\u03b4\\u03b1 \\u03c3\\u03c4\\u03b7\\u03bb\\u03ce\\u03bd\",rowgroup:\"\\u039f\\u03bc\\u03ac\\u03b4\\u03b1 \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ce\\u03bd\",scope:\"\\u0395\\u03bc\\u03b2\\u03ad\\u03bb\\u03b5\\u03b9\\u03b1\",tfoot:\"\\u0392\\u03ac\\u03c3\\u03b7 \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1\",tbody:\"\\u03a3\\u03ce\\u03bc\\u03b1 \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1\",thead:\"\\u039a\\u03bf\\u03c1\\u03c5\\u03c6\\u03ae \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1\",\"row_all\":\"\\u0395\\u03bd\\u03b7\\u03bc\\u03ad\\u03c1\\u03c9\\u03c3\\u03b7 \\u03cc\\u03bb\\u03c9\\u03bd \\u03c4\\u03c9\\u03bd \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ce\\u03bd \\u03c4\\u03bf\\u03c5 \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1\",\"row_even\":\"\\u0395\\u03bd\\u03b7\\u03bc\\u03ad\\u03c1\\u03c9\\u03c3\\u03b7 \\u03c4\\u03c9\\u03bd \\u03b6\\u03c5\\u03b3\\u03ce\\u03bd \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ce\\u03bd \\u03c4\\u03bf\\u03c5 \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1\",\"row_odd\":\"\\u0395\\u03bd\\u03b7\\u03bc\\u03ad\\u03c1\\u03c9\\u03c3\\u03b7 \\u03c4\\u03c9\\u03bd \\u03bc\\u03bf\\u03bd\\u03ce\\u03bd \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ce\\u03bd \\u03c4\\u03bf\\u03c5 \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1\",\"row_row\":\"\\u0395\\u03bd\\u03b7\\u03bc\\u03ad\\u03c1\\u03c9\\u03c3\\u03b7 \\u03c4\\u03b7\\u03c2 \\u03c4\\u03c1\\u03ad\\u03c7\\u03bf\\u03c5\\u03c3\\u03b1\\u03c2 \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ae\\u03c2\",\"cell_all\":\"\\u0395\\u03bd\\u03b7\\u03bc\\u03ad\\u03c1\\u03c9\\u03c3\\u03b7 \\u03cc\\u03bb\\u03c9\\u03bd \\u03c4\\u03c9\\u03bd \\u03ba\\u03b5\\u03bb\\u03b9\\u03ce\\u03bd \\u03c4\\u03bf\\u03c5 \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1\",\"cell_row\":\"\\u0395\\u03bd\\u03b7\\u03bc\\u03ad\\u03c1\\u03c9\\u03c3\\u03b7 \\u03cc\\u03bb\\u03c9\\u03bd \\u03c4\\u03c9\\u03bd \\u03ba\\u03b5\\u03bb\\u03b9\\u03ce\\u03bd \\u03c4\\u03b7\\u03c2 \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ae\\u03c2\",\"cell_cell\":\"\\u0395\\u03bd\\u03b7\\u03bc\\u03ad\\u03c1\\u03c9\\u03c3\\u03b7 \\u03c4\\u03c1\\u03ad\\u03c7\\u03bf\\u03bd\\u03c4\\u03bf\\u03c2 \\u03ba\\u03b5\\u03bb\\u03b9\\u03bf\\u03cd\",th:\"\\u0395\\u03c0\\u03b9\\u03ba\\u03b5\\u03c6\\u03b1\\u03bb\\u03af\\u03b4\\u03b1\",td:\"\\u0394\\u03b5\\u03b4\\u03bf\\u03bc\\u03ad\\u03bd\\u03b1\",summary:\"\\u03a0\\u03b5\\u03c1\\u03af\\u03bb\\u03b7\\u03c8\\u03b7\",bgimage:\"\\u0395\\u03b9\\u03ba\\u03cc\\u03bd\\u03b1 \\u03c6\\u03cc\\u03bd\\u03c4\\u03bf\\u03c5\",rtl:\"\\u0394\\u03b5\\u03be\\u03b9\\u03ac \\u03c0\\u03c1\\u03bf\\u03c2 \\u03b1\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac\",ltr:\"\\u0391\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac \\u03c0\\u03c1\\u03bf\\u03c2 \\u03b4\\u03b5\\u03be\\u03b9\\u03ac\",mime:\"\\u03a4\\u03cd\\u03c0\\u03bf\\u03c2 MIME \\u03c3\\u03c4\\u03cc\\u03c7\\u03bf\\u03c5\",langcode:\"\\u039a\\u03c9\\u03b4\\u03b9\\u03ba\\u03cc\\u03c2 \\u03b3\\u03bb\\u03ce\\u03c3\\u03c3\\u03b1\\u03c2\",langdir:\"\\u039a\\u03b1\\u03c4\\u03b5\\u03cd\\u03b8\\u03c5\\u03bd\\u03c3\\u03b7 \\u03b3\\u03bb\\u03ce\\u03c3\\u03c3\\u03b1\\u03c2\",style:\"\\u03a3\\u03c4\\u03c5\\u03bb\",id:\"Id\",\"merge_cells_title\":\"\\u03a3\\u03c5\\u03b3\\u03c7\\u03ce\\u03bd\\u03b5\\u03c5\\u03c3\\u03b7 \\u03ba\\u03b5\\u03bb\\u03b9\\u03ce\\u03bd \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1\",bgcolor:\"\\u03a7\\u03c1\\u03ce\\u03bc\\u03b1 \\u03c6\\u03cc\\u03bd\\u03c4\\u03bf\\u03c5\",bordercolor:\"\\u03a7\\u03c1\\u03ce\\u03bc\\u03b1 \\u03c0\\u03bb\\u03b1\\u03b9\\u03c3\\u03af\\u03bf\\u03c5\",\"align_bottom\":\"\\u039a\\u03ac\\u03c4\\u03c9\",\"align_top\":\"\\u03a0\\u03ac\\u03bd\\u03c9\",valign:\"\\u039a\\u03b1\\u03c4\\u03b1\\u03ba\\u03cc\\u03c1\\u03c5\\u03c6\\u03b7 \\u03c3\\u03c4\\u03bf\\u03af\\u03c7\\u03b9\\u03c3\\u03b7\",\"cell_type\":\"\\u03a4\\u03cd\\u03c0\\u03bf\\u03c2 \\u03ba\\u03b5\\u03bb\\u03b9\\u03bf\\u03cd\",\"cell_title\":\"\\u0399\\u03b4\\u03b9\\u03cc\\u03c4\\u03b7\\u03c4\\u03b5\\u03c2 \\u03ba\\u03b5\\u03bb\\u03b9\\u03bf\\u03cd \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1\",\"row_title\":\"\\u0399\\u03b4\\u03b9\\u03cc\\u03c4\\u03b7\\u03c4\\u03b5\\u03c2 \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ae\\u03c2 \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1\",\"align_middle\":\"\\u039a\\u03ad\\u03bd\\u03c4\\u03c1\\u03bf\",\"align_right\":\"\\u0394\\u03b5\\u03be\\u03b9\\u03ac\",\"align_left\":\"\\u0391\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac\",\"align_default\":\"\\u03a0\\u03c1\\u03bf\\u03b5\\u03c0\\u03b9\\u03bb\\u03b5\\u03b3\\u03bc\\u03ad\\u03bd\\u03b7\",align:\"\\u03a3\\u03c4\\u03bf\\u03af\\u03c7\\u03b9\\u03c3\\u03b7\",border:\"\\u03a0\\u03bb\\u03b1\\u03af\\u03c3\\u03b9\\u03bf\",cellpadding:\"\\u0393\\u03ad\\u03bc\\u03b9\\u03c3\\u03bc\\u03b1 \\u03ba\\u03b5\\u03bb\\u03b9\\u03ce\\u03bd\",cellspacing:\"\\u0391\\u03c0\\u03cc\\u03c3\\u03c4\\u03b1\\u03c3\\u03b7 \\u03ba\\u03b5\\u03bb\\u03b9\\u03ce\\u03bd\",rows:\"\\u0393\\u03c1\\u03b1\\u03bc\\u03bc\\u03ad\\u03c2\",cols:\"\\u03a3\\u03c4\\u03ae\\u03bb\\u03b5\\u03c2\",height:\"\\u038e\\u03c8\\u03bf\\u03c2\",width:\"\\u03a0\\u03bb\\u03ac\\u03c4\\u03bf\\u03c2\",title:\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae/\\u03b5\\u03c0\\u03b5\\u03be\\u03b5\\u03c1\\u03b3\\u03b1\\u03c3\\u03af\\u03b1 \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1\",rowtype:\"\\u0393\\u03c1\\u03b1\\u03bc\\u03bc\\u03ae \\u03c3\\u03b5 \\u03bc\\u03ad\\u03c1\\u03bf\\u03c2 \\u03c0\\u03af\\u03bd\\u03b1\\u03ba\\u03b1\",\"advanced_props\":\"\\u03a0\\u03c1\\u03bf\\u03c7\\u03c9\\u03c1\\u03b7\\u03bc\\u03ad\\u03bd\\u03b5\\u03c2 \\u03b9\\u03b4\\u03b9\\u03cc\\u03c4\\u03b7\\u03c4\\u03b5\\u03c2\",\"general_props\":\"\\u0393\\u03b5\\u03bd\\u03b9\\u03ba\\u03ad\\u03c2 \\u03b9\\u03b4\\u03b9\\u03cc\\u03c4\\u03b7\\u03c4\\u03b5\\u03c2\",\"advanced_tab\":\"\\u0393\\u03b9\\u03b1 \\u03c0\\u03c1\\u03bf\\u03c7\\u03c9\\u03c1\\u03b7\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5\\u03c2\",\"general_tab\":\"\\u0393\\u03b5\\u03bd\\u03b9\\u03ba\\u03ac\",\"cell_col\":\"\\u0391\\u03bd\\u03b1\\u03bd\\u03ad\\u03c9\\u03c3\\u03b7 \\u03cc\\u03bb\\u03c9\\u03bd \\u03c4\\u03c9\\u03bd \\u03ba\\u03b5\\u03bb\\u03b9\\u03ce\\u03bd \\u03c3\\u03c4\\u03b7\\u03bd \\u03c3\\u03c4\\u03ae\\u03bb\\u03b7\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/en_dlg.js",
    "content": "tinyMCE.addI18n('en.table_dlg',{\"rules_border\":\"border\",\"rules_box\":\"box\",\"rules_vsides\":\"vsides\",\"rules_rhs\":\"rhs\",\"rules_lhs\":\"lhs\",\"rules_hsides\":\"hsides\",\"rules_below\":\"below\",\"rules_above\":\"above\",\"rules_void\":\"void\",rules:\"Rules\",\"frame_all\":\"all\",\"frame_cols\":\"cols\",\"frame_rows\":\"rows\",\"frame_groups\":\"groups\",\"frame_none\":\"none\",frame:\"Frame\",caption:\"Table Caption\",\"missing_scope\":\"Are you sure you want to continue without specifying a scope for this table header cell. Without it, it may be difficult for some users with disabilities to understand the content or data displayed of the table.\",\"cell_limit\":\"You\\'ve exceeded the maximum number of cells of {$cells}.\",\"row_limit\":\"You\\'ve exceeded the maximum number of rows of {$rows}.\",\"col_limit\":\"You\\'ve exceeded the maximum number of columns of {$cols}.\",colgroup:\"Col Group\",rowgroup:\"Row Group\",scope:\"Scope\",tfoot:\"Footer\",tbody:\"Body\",thead:\"Header\",\"row_all\":\"Update All Rows in Table\",\"row_even\":\"Update Even Rows in Table\",\"row_odd\":\"Update Odd Rows in Table\",\"row_row\":\"Update Current Row\",\"cell_all\":\"Update All Cells in Table\",\"cell_row\":\"Update All Cells in Row\",\"cell_cell\":\"Update Current Cell\",th:\"Header\",td:\"Data\",summary:\"Summary\",bgimage:\"Background Image\",rtl:\"Right to Left\",ltr:\"Left to Right\",mime:\"Target MIME Type\",langcode:\"Language Code\",langdir:\"Language Direction\",style:\"Style\",id:\"ID\",\"merge_cells_title\":\"Merge Table Cells\",bgcolor:\"Background Color\",bordercolor:\"Border Color\",\"align_bottom\":\"Bottom\",\"align_top\":\"Top\",valign:\"Vertical Alignment\",\"cell_type\":\"Cell Type\",\"cell_title\":\"Table Cell Properties\",\"row_title\":\"Table Row Properties\",\"align_middle\":\"Center\",\"align_right\":\"Right\",\"align_left\":\"Left\",\"align_default\":\"Default\",align:\"Alignment\",border:\"Border\",cellpadding:\"Cell Padding\",cellspacing:\"Cell Spacing\",rows:\"Rows\",cols:\"Columns\",height:\"Height\",width:\"Width\",title:\"Insert/Edit Table\",rowtype:\"Row Type\",\"advanced_props\":\"Advanced Properties\",\"general_props\":\"General Properties\",\"advanced_tab\":\"Advanced\",\"general_tab\":\"General\",\"cell_col\":\"Update all cells in column\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/es_dlg.js",
    "content": "tinyMCE.addI18n('es.table_dlg',{rules_border:\"border\",rules_box:\"box\",rules_vsides:\"vsides\",rules_rhs:\"rhs\",rules_lhs:\"lhs\",rules_hsides:\"hsides\",rules_below:\"debajo\",rules_above:\"encima\",rules_void:\"vac\\u00edo\",rules:\"Reglas\",frame_all:\"todos\",frame_cols:\"cols\",frame_rows:\"filas\",frame_groups:\"grupos\",frame_none:\"ninguno\",frame:\"Recuadro\",caption:\"Subt\\u00edtulo de la tabla\",missing_scope:\" \\u00bfEst\\u00e1 seguro que desea continuar sin especificar el alcance del encabezado de celda? Sin \\u00e9l podr\\u00eda ser dificultoso para algunos usuarios entender el contenido o los datos mostrados en la tabla.\",cell_limit:\"Ha superado el n\\u00famero m\\u00e1ximo de celdas: {$cells}.\",row_limit:\"Ha superado el n\\u00famero m\\u00e1ximo de filas: {$rows}.\",col_limit:\"Ha superado el n\\u00famero m\\u00e1ximo de columnas: {$cols}.\",colgroup:\"Grupo de columnas\",rowgroup:\"Grupo de filas\",scope:\"Alcance\",tfoot:\"Pie de la tabla\",tbody:\"Cuerpo de la tabla\",thead:\"Encabezado de la tabla\",row_all:\"Actualizar todas las filas\",row_even:\"Actualizar filas pares\",row_odd:\"Actualizar filas impares\",row_row:\"Actualizar fila actual\",cell_all:\"Actualizar todas las celdas en la tabla\",cell_row:\"Actualizar todas las celdas en la fila\",cell_cell:\"Actualizar celda actual\",th:\"Encabezado\",td:\"Datos\",summary:\"Resumen\",bgimage:\"Imagen de fondo\",rtl:\"Derecha a izquierda\",ltr:\"Izquierda a derecha\",mime:\"Tipo MIME\",langcode:\"C\\u00f3digo del lenguaje\",langdir:\"Direcci\\u00f3n del lenguaje\",style:\"Estilo\",id:\"Id\",merge_cells_title:\"Vincular celdas\",bgcolor:\"Color de fondo\",bordercolor:\"Color del borde\",align_bottom:\"Debajo\",align_top:\"Arriba\",valign:\"Alineaci\\u00f3n vertical\",cell_type:\"Tipo de celda\",cell_title:\"Propiedades de la celda\",row_title:\"Propiedades de la fila\",align_middle:\"Centrado\",align_right:\"Derecha\",align_left:\"Izquierda\",align_default:\"Predet.\",align:\"Alineaci\\u00f3n\",border:\"Borde\",cellpadding:\"Relleno de celda\",cellspacing:\"Espaciado de celda\",rows:\"Filas\",cols:\"Cols\",height:\"Alto\",width:\"Ancho\",title:\"Insertar/Modificar tabla\",rowtype:\"Tipo de fila\",advanced_props:\"Propiedades avanzadas\",general_props:\"Propiedades generales\",advanced_tab:\"Avanzado\",general_tab:\"General\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/fr_dlg.js",
    "content": "tinyMCE.addI18n('fr.table_dlg',{rules_border:\"bordure\",rules_box:\"bo\\u00eete\",rules_vsides:\"verticales\",rules_rhs:\"\\u00e0 droite\",rules_lhs:\"\\u00e0 gauche\",rules_hsides:\"horizontales\",rules_below:\"au-dessous\",rules_above:\"au-dessus\",rules_void:\"aucune\",rules:\"R\\u00e8gles\",frame_all:\"tous\",frame_cols:\"colonnes\",frame_rows:\"lignes\",frame_groups:\"groupe\",frame_none:\"aucun\",frame:\"Cadre\",caption:\"Afficher la l\\u00e9gende du tableau\",missing_scope:\"\\u00cates-vous s\\u00fbr de vouloir continuer sans sp\\u00e9cifier de port\\u00e9e pour cette cellule de titre ? Sans port\\u00e9e, cela peut \\u00eatre difficile pour certains utilisateurs de comprendre le contenu ou les donn\\u00e9es affich\\u00e9es dans le tableau.\",cell_limit:\"Vous avez d\\u00e9pass\\u00e9 le nombre maximum de cellules ({$cells}).\",row_limit:\"Vous avez d\\u00e9pass\\u00e9 le nombre maximum de lignes ({$rows}).\",col_limit:\"Vous avez d\\u00e9pass\\u00e9 le nombre maximum de colonnes ({$cols}).\",colgroup:\"Groupe de colonnes\",rowgroup:\"Groupe de lignes\",scope:\"Port\\u00e9e\",tfoot:\"Pied de tableau\",tbody:\"Corps de tableau\",thead:\"En-t\\u00eates de tableau\",row_all:\"Mettre \\u00e0 jour toutes les lignes du tableau\",row_even:\"Mettre \\u00e0 jour les lignes paires\",row_odd:\"Mettre \\u00e0 jour les lignes impaires\",row_row:\"Mettre \\u00e0 jour la ligne courante\",cell_all:\"Mettre \\u00e0 jour toutes les cellules du tableau\",cell_row:\"Mettre \\u00e0 jour toutes les cellules de la ligne\",cell_cell:\"Mettre \\u00e0 jour la cellule courante\",th:\"Titre\",td:\"Donn\\u00e9es\",summary:\"R\\u00e9sum\\u00e9\",bgimage:\"Image de fond\",rtl:\"de droite \\u00e0 gauche\",ltr:\"De gauche \\u00e0 droite\",mime:\"Type MIME de la cible\",langcode:\"Code de la langue\",langdir:\"Sens de lecture\",style:\"Style\",id:\"Id\",merge_cells_title:\"Fusionner les cellules\",bgcolor:\"Couleur du fond\",bordercolor:\"Couleur de la bordure\",align_bottom:\"Bas\",align_top:\"Haut\",valign:\"Alignement vertical\",cell_type:\"Type de cellule\",cell_title:\"Propri\\u00e9t\\u00e9s de la cellule\",row_title:\"Propri\\u00e9t\\u00e9s de la ligne\",align_middle:\"Centr\\u00e9\",align_right:\"Droite\",align_left:\"Gauche\",align_default:\"Par d\\u00e9faut\",align:\"Alignement\",border:\"Bordure\",cellpadding:\"Espacement dans les cellules\",cellspacing:\"Espacement entre les cellules\",rows:\"Lignes\",cols:\"Colonnes\",height:\"Hauteur\",width:\"Largeur\",title:\"Ins\\u00e9rer / modifier un tableau\",rowtype:\"Type de ligne\",advanced_props:\"Propri\\u00e9t\\u00e9s avanc\\u00e9es\",general_props:\"Propri\\u00e9t\\u00e9s g\\u00e9n\\u00e9rales\",advanced_tab:\"Avanc\\u00e9\",general_tab:\"G\\u00e9n\\u00e9ral\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/he_dlg.js",
    "content": "tinyMCE.addI18n('he.table_dlg',{\"rules_border\":\"\\u05d2\\u05d1\\u05d5\\u05dc\",\"rules_box\":\"box\",\"rules_vsides\":\"vsides\",\"rules_rhs\":\"rhs\",\"rules_lhs\":\"lhs\",\"rules_hsides\":\"hsides\",\"rules_below\":\"\\u05de\\u05ea\\u05d7\\u05ea\",\"rules_above\":\"\\u05de\\u05e2\\u05dc\",\"rules_void\":\"void\",rules:\"\\u05d7\\u05d5\\u05e7\\u05d9\\u05dd\",\"frame_all\":\"\\u05d4\\u05db\\u05d5\\u05dc\",\"frame_cols\":\"\\u05e2\\u05de\\u05d5\\u05d3\\u05d5\\u05ea\",\"frame_rows\":\"\\u05e9\\u05d5\\u05e8\\u05d5\\u05ea\",\"frame_groups\":\"\\u05e7\\u05d1\\u05d5\\u05e6\\u05d5\\u05ea\",\"frame_none\":\"\\u05dc\\u05dc\\u05d0\",frame:\"Frame\",caption:\"\\u05db\\u05d5\\u05ea\\u05e8\\u05ea \\u05d4\\u05d8\\u05d1\\u05dc\\u05d4\",\"missing_scope\":\"Are you sure you want to continue without specifying a scope for this table header cell. Without it, it may be difficult for some users with disabilities to understand the content or data displayed of the table.\",\"cell_limit\":\"\\u05d7\\u05e8\\u05d9\\u05d2\\u05d4 \\u05de\\u05de\\u05e1\\u05e4\\u05e8 \\u05d4\\u05de\\u05e7\\u05e1\\u05d9\\u05de\\u05d0\\u05dc\\u05d9 \\u05e9\\u05dc \\u05d4\\u05ea\\u05d0\\u05d9\\u05dd \\u05d1\\u05d8\\u05d1\\u05dc\\u05d4 \\u05e9\\u05dc {$cells}.\",\"row_limit\":\"\\u05d7\\u05e8\\u05d9\\u05d2\\u05d4 \\u05de\\u05de\\u05e1\\u05e4\\u05e8 \\u05d4\\u05de\\u05e7\\u05e1\\u05d9\\u05de\\u05d0\\u05dc\\u05d9 \\u05e9\\u05dc \\u05d4\\u05e9\\u05d5\\u05e8\\u05d5\\u05ea \\u05e9\\u05dc {$rows}.\",\"col_limit\":\"\\u05d7\\u05e8\\u05d9\\u05d2\\u05d4 \\u05de\\u05de\\u05e1\\u05e4\\u05e8 \\u05d4\\u05e2\\u05de\\u05d5\\u05d3\\u05d5\\u05ea \\u05d4\\u05de\\u05e7\\u05e1\\u05d9\\u05de\\u05d0\\u05dc\\u05d9 \\u05e9\\u05dc {$cols}.\",colgroup:\"Col Group\",rowgroup:\"Row Group\",scope:\"Scope\",tfoot:\"\\u05e9\\u05d5\\u05e8\\u05d4 \\u05ea\\u05d7\\u05ea\\u05d9\\u05ea\",tbody:\"\\u05e9\\u05d5\\u05e8\\u05d4 \\u05e8\\u05d2\\u05d9\\u05dc\\u05d4\",thead:\"\\u05e9\\u05d5\\u05e8\\u05ea \\u05db\\u05d5\\u05ea\\u05e8\\u05ea\",\"row_all\":\"\\u05e2\\u05d3\\u05db\\u05d5\\u05df\\u05db\\u05dc \\u05d4\\u05e9\\u05d5\\u05e8\\u05d5\\u05ea \\u05d1\\u05d8\\u05d1\\u05dc\\u05d4\",\"row_even\":\"\\u05e2\\u05d3\\u05db\\u05d5\\u05df \\u05e9\\u05d5\\u05e8\\u05d5\\u05ea \\u05d6\\u05d5\\u05d2\\u05d9\\u05d5\\u05ea \\u05d1\\u05d8\\u05d1\\u05dc\\u05d4\",\"row_odd\":\"\\u05e2\\u05d3\\u05db\\u05d5\\u05df \\u05e9\\u05d5\\u05e8\\u05d5\\u05ea \\u05d0\\u05d9-\\u05d6\\u05d5\\u05d2\\u05d9\\u05d5\\u05ea \\u05d1\\u05d8\\u05d1\\u05dc\\u05d4\",\"row_row\":\"\\u05e2\\u05d3\\u05db\\u05d5\\u05df \\u05e9\\u05d5\\u05e8\\u05d4 \\u05e0\\u05d5\\u05db\\u05d7\\u05d9\\u05ea\",\"cell_all\":\"\\u05e2\\u05d3\\u05db\\u05d5\\u05df \\u05db\\u05dc \\u05ea\\u05d0\\u05d9 \\u05d4\\u05d8\\u05d1\\u05dc\\u05d4\",\"cell_row\":\"\\u05e2\\u05d3\\u05db\\u05d5\\u05df \\u05db\\u05dc \\u05ea\\u05d0\\u05d9 \\u05d4\\u05e9\\u05d5\\u05e8\\u05d4\",\"cell_cell\":\"\\u05e2\\u05d3\\u05db\\u05d5\\u05df \\u05ea\\u05d0 \\u05e0\\u05d5\\u05db\\u05d7\\u05d9\",th:\"\\u05db\\u05d5\\u05ea\\u05e8\\u05ea\",td:\"\\u05ea\\u05d0 \\u05de\\u05d9\\u05d3\\u05e2\",summary:\"\\u05ea\\u05de\\u05e6\\u05d9\\u05ea\",bgimage:\"\\u05ea\\u05de\\u05d5\\u05e0\\u05ea \\u05e8\\u05e7\\u05e2\",rtl:\"\\u05de\\u05d9\\u05de\\u05d9\\u05df \\u05dc\\u05e9\\u05de\\u05d0\\u05dc\",ltr:\"\\u05de\\u05e9\\u05de\\u05d0\\u05dc \\u05dc\\u05d9\\u05de\\u05d9\\u05df\",mime:\"Target MIME type\",langcode:\"\\u05e7\\u05d5\\u05d3 \\u05d4\\u05e9\\u05e4\\u05d4\",langdir:\"\\u05db\\u05d9\\u05d5\\u05d5\\u05df \\u05d4\\u05e9\\u05e4\\u05d4\",style:\"\\u05e2\\u05d9\\u05e6\\u05d5\\u05d1\",id:\"Id\",\"merge_cells_title\":\"\\u05d0\\u05d7\\u05d3 \\u05ea\\u05d0\\u05d9\\u05dd \\u05d1\\u05d8\\u05d1\\u05dc\\u05d4\",bgcolor:\"\\u05e6\\u05d1\\u05e2 \\u05d4\\u05e8\\u05e7\\u05e2\",bordercolor:\"\\u05e6\\u05d1\\u05e2 \\u05d4\\u05d2\\u05d1\\u05d5\\u05dc\",\"align_bottom\":\"\\u05ea\\u05d7\\u05ea\\u05d9\\u05ea\",\"align_top\":\"\\u05e2\\u05dc\\u05d9\\u05d5\\u05df\",valign:\"\\u05d9\\u05e9\\u05d5\\u05e8 \\u05d0\\u05e0\\u05db\\u05d9\",\"cell_type\":\"\\u05e1\\u05d2\\u05e0\\u05d5\\u05df \\u05d4\\u05ea\\u05d0\",\"cell_title\":\"\\u05ea\\u05db\\u05d5\\u05e0\\u05d5\\u05ea \\u05ea\\u05d0 \\u05d1\\u05d8\\u05d1\\u05dc\\u05d4\",\"row_title\":\"\\u05ea\\u05db\\u05d5\\u05e0\\u05d5\\u05ea \\u05e9\\u05d5\\u05e8\\u05d4 \\u05d1\\u05d8\\u05d1\\u05dc\\u05d4\",\"align_middle\":\"\\u05d0\\u05de\\u05e6\\u05e2\",\"align_right\":\"\\u05dc\\u05d9\\u05de\\u05d9\\u05df\",\"align_left\":\"\\u05dc\\u05e9\\u05de\\u05d0\\u05dc\",\"align_default\":\"Default\",align:\"\\u05d9\\u05e9\\u05d5\\u05e8 \\u05d0\\u05d5\\u05e4\\u05e7\\u05d9\",border:\"\\u05d2\\u05d1\\u05d5\\u05dc\",cellpadding:\"Cellpadding\",cellspacing:\"Cellspacing\",rows:\"\\u05e9\\u05d5\\u05e8\\u05d5\\u05ea\",cols:\"\\u05e2\\u05de\\u05d5\\u05d3\\u05d5\\u05ea\",height:\"\\u05d2\\u05d5\\u05d1\\u05d4\",width:\"\\u05e8\\u05d5\\u05d7\\u05d1\",title:\"\\u05d4\\u05d5\\u05e1\\u05e4\\u05ea/\\u05e2\\u05e8\\u05d9\\u05db\\u05ea \\u05d8\\u05d1\\u05dc\\u05d4\",rowtype:\"\\u05e1\\u05d5\\u05d2 \\u05d4\\u05e9\\u05d5\\u05e8\\u05d4 \\u05d1\\u05d8\\u05d1\\u05dc\\u05d4\",\"advanced_props\":\"\\u05ea\\u05db\\u05d5\\u05e0\\u05d5\\u05ea \\u05de\\u05ea\\u05e7\\u05d3\\u05de\\u05d5\\u05ea\",\"general_props\":\"\\u05ea\\u05db\\u05d5\\u05e0\\u05d5\\u05ea \\u05db\\u05dc\\u05dc\\u05d9\\u05d5\\u05ea\",\"advanced_tab\":\"\\u05de\\u05ea\\u05e7\\u05d3\\u05dd\",\"general_tab\":\"\\u05db\\u05dc\\u05dc\\u05d9\",\"cell_col\":\"\\u05e2\\u05d3\\u05db\\u05df \\u05d0\\u05ea \\u05db\\u05dc \\u05d4\\u05ea\\u05d0\\u05d9\\u05dd \\u05d1\\u05d8\\u05d5\\u05e8\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/hr_dlg.js",
    "content": "tinyMCE.addI18n('hr.table_dlg',{rules_border:\"border\",rules_box:\"box\",rules_vsides:\"vsides\",rules_rhs:\"rhs\",rules_lhs:\"lhs\",rules_hsides:\"hsides\",rules_below:\"below\",rules_above:\"above\",rules_void:\"void\",rules:\"Rules\",frame_all:\"all\",frame_cols:\"cols\",frame_rows:\"rows\",frame_groups:\"groups\",frame_none:\"none\",frame:\"Frame\",caption:\"Opis tablice\",missing_scope:\"Are you sure you want to continue without specifying a scope for this table header cell. Without it, it may be difficult for some users with disabilities to understand the content or data displayed of the table.\",cell_limit:\"Prema\\u0161ili ste maksimalni broj \\u0107elija ({$cells}).\",row_limit:\"Prema\\u0161ili ste maksimalni broj redaka ({$rows}).\",col_limit:\"Prema\\u0161ili ste maksimalni broj stupaca ({$cols}).\",colgroup:\"Grupa stupaca\",rowgroup:\"Grupa redaka\",scope:\"Domet\",tfoot:\"Podno\\u017eje tablice\",tbody:\"Tijelo tablice\",thead:\"Zaglavlje tablice\",row_all:\"Primjeni na sve retke u tablici\",row_even:\"Primjeni na parne retke u tablici\",row_odd:\"Primjeni na neparne retke u tablici\",row_row:\"Primjeni na odabrani redak\",cell_all:\"Primjeni na sve \\u0107elije u tablici\",cell_row:\"Primjeni na sve \\u0107elije u retku\",cell_cell:\"Primjeni na odabranu \\u0107eliju\",th:\"Zaglavlje\",td:\"Podatkovna\",summary:\"Sa\\u017eetak\",bgimage:\"Slika pozadine\",rtl:\"S desna na lijevo\",ltr:\"S lijeva na desno\",mime:\"MIME tip\",langcode:\"Kod jezika\",langdir:\"Smjer jezika\",style:\"Stil\",id:\"Id\",merge_cells_title:\"Spoji \\u0107elije\",bgcolor:\"Background color\",bordercolor:\"Boja obruba\",align_bottom:\"Dno\",align_top:\"Vrh\",valign:\"Okomito poravnavanje\",cell_type:\"Tip \\u0107elije\",cell_title:\"Svojstva \\u0107elije\",row_title:\"Svojstva retka\",align_middle:\"Sredina\",align_right:\"Desno\",align_left:\"Lijevo\",align_default:\"Zadano\",align:\"Poravnavanje\",border:\"Obrub\",cellpadding:\"Dopuna \\u0107elije\",cellspacing:\"Razmak \\u0107elija\",rows:\"Redaka\",cols:\"Stupaca\",height:\"Visina\",width:\"\\u0160irina\",title:\"Umetni/uredi tablicu\",rowtype:\"Row in table part\",advanced_props:\"Napredna svojstva\",general_props:\"Osnovna svojstva\",advanced_tab:\"Napredno\",general_tab:\"Osnovno\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/hu_dlg.js",
    "content": "tinyMCE.addI18n('hu.table_dlg',{\"rules_border\":\"keret\",\"rules_box\":\"doboz\",\"rules_vsides\":\"f. oldalak\",\"rules_rhs\":\"rhs\",\"rules_lhs\":\"lhs\",\"rules_hsides\":\"v. oldalak\",\"rules_below\":\"alatta\",\"rules_above\":\"f\\u00f6l\\u00f6tte\",\"rules_void\":\"sehol/\\u00fcres\",rules:\"Vonalak\",\"frame_all\":\"mind\",\"frame_cols\":\"oszlopok\",\"frame_rows\":\"sorok\",\"frame_groups\":\"csoportok\",\"frame_none\":\"nincs\",frame:\"Keret\",caption:\"C\\u00edmsor\",\"missing_scope\":\"Biztosan folytatni akarja an\\u00e9lk\\u00fcl, hogy hat\\u00f3k\\u00f6rt adna ennek a fejl\\u00e9ccell\\u00e1nak? Korl\\u00e1toz\\u00e1sokkal \\u00e9l\\u0151k sz\\u00e1m\\u00e1ra neh\\u00e9z lesz meg\\u00e9rteni a t\\u00e1bl\\u00e1zat tartalm\\u00e1t.\",\"cell_limit\":\"T\\u00fall\\u00e9pte a maxim\\u00e1lis cellasz\\u00e1mot, ami {$cells}.\",\"row_limit\":\"T\\u00fall\\u00e9pte a maxim\\u00e1lis sorsz\\u00e1mot, ami {$rows}.\",\"col_limit\":\"T\\u00fall\\u00e9pte a maxim\\u00e1lis oszlopsz\\u00e1mot, ami {$cols}.\",colgroup:\"Oszlop csoport\",rowgroup:\"Sor csoport\",scope:\"Hat\\u00f3k\\u00f6r\",tfoot:\"T\\u00e1bl\\u00e1zat l\\u00e1bl\\u00e9c\",tbody:\"T\\u00e1bl\\u00e1zat tartalom\",thead:\"T\\u00e1bl\\u00e1zat fejl\\u00e9c\",\"row_all\":\"Minden sor friss\\u00edt\\u00e9se\",\"row_even\":\"P\\u00e1ros sorok friss\\u00edt\\u00e9se\",\"row_odd\":\"P\\u00e1ratlan sorok friss\\u00edt\\u00e9se\",\"row_row\":\"Sor friss\\u00edt\\u00e9se\",\"cell_all\":\"T\\u00e1bl\\u00e1zat \\u00f6sszes cell\\u00e1j\\u00e1nak friss\\u00edt\\u00e9se\",\"cell_row\":\"Sor \\u00f6sszes cell\\u00e1j\\u00e1nak friss\\u00edt\\u00e9se\",\"cell_cell\":\"Cella friss\\u00edt\\u00e9se\",th:\"Fejl\\u00e9c\",td:\"Adat\",summary:\"\\u00d6sszegz\\u00e9s\",bgimage:\"H\\u00e1tt\\u00e9rk\\u00e9p\",rtl:\"Jobbr\\u00f3l balra\",ltr:\"Balr\\u00f3l jobbra\",mime:\"C\\u00e9l MIME t\\u00edpus\",langcode:\"Nyelvk\\u00f3d\",langdir:\"\\u00cdr\\u00e1s ir\\u00e1ny\",style:\"St\\u00edlus\",id:\"ID\",\"merge_cells_title\":\"Cell\\u00e1k Egyes\\u00edt\\u00e9se\",bgcolor:\"H\\u00e1tt\\u00e9rsz\\u00edn\",bordercolor:\"Keretsz\\u00edn\",\"align_bottom\":\"Le\",\"align_top\":\"Fel\",valign:\"F\\u00fcgg\\u0151leges igaz\\u00edt\\u00e1s\",\"cell_type\":\"Cellat\\u00edpus\",\"cell_title\":\"Cella tulajdons\\u00e1gai\",\"row_title\":\"Sor tulajdons\\u00e1gai\",\"align_middle\":\"K\\u00f6z\\u00e9pre\",\"align_right\":\"Jobbra\",\"align_left\":\"Balra\",\"align_default\":\"Alap\\u00e9rtelmezett\",align:\"Igaz\\u00edt\\u00e1s\",border:\"Keret\",cellpadding:\"Cella bels\\u0151 marg\\u00f3\",cellspacing:\"Cella t\\u00e1vols\\u00e1g\",rows:\"Sorok\",cols:\"Oszlopok\",height:\"Magass\\u00e1g\",width:\"Sz\\u00e9less\\u00e9g\",title:\"T\\u00e1bl\\u00e1zat besz\\u00far\\u00e1sa/szerkeszt\\u00e9se\",rowtype:\"Sor a t\\u00e1bl\\u00e1ban\",\"advanced_props\":\"Halad\\u00f3 tulajdons\\u00e1gok\",\"general_props\":\"\\u00c1ltal\\u00e1nos tulajdons\\u00e1gok\",\"advanced_tab\":\"Halad\\u00f3\",\"general_tab\":\"\\u00c1ltal\\u00e1nos\",\"cell_col\":\"\\u00d6sszes cella friss\\u00edt\\u00e9se az oszlopban\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/hy_dlg.js",
    "content": "tinyMCE.addI18n('hy.table_dlg',{\"rules_border\":\"border\",\"rules_box\":\"box\",\"rules_vsides\":\"vsides\",\"rules_rhs\":\"rhs\",\"rules_lhs\":\"lhs\",\"rules_hsides\":\"hsides\",\"rules_below\":\"below\",\"rules_above\":\"above\",\"rules_void\":\"void\",rules:\"Rules\",\"frame_all\":\"all\",\"frame_cols\":\"cols\",\"frame_rows\":\"rows\",\"frame_groups\":\"groups\",\"frame_none\":\"none\",frame:\"\\u0424\\u0440\\u0435\\u0439\\u043c\",caption:\"Table caption\",\"missing_scope\":\"Are you sure you want to continue without specifying a scope for this table header cell. Without it, it may be difficult for some users with disabilities to understand the content or data displayed of the table\",\"cell_limit\":\"You\\'ve exceeded the maximum number of cells of ($ cells)\",\"row_limit\":\"You\\'ve exceeded the maximum number of rows of ($ rows)\",\"col_limit\":\"You\\'ve exceeded the maximum number of columns of ($ cols)\",colgroup:\"Col Group\",rowgroup:\"Row Group\",scope:\"Scope\",tfoot:\"\\u041d\\u0438\\u0436\\u043d\\u044f\\u044f \\u0447\\u0430\\u0441\\u0442\\u0441\\u0438\\u043d\\u0430\",tbody:\"\\u0422\\u0435\\u043b\\u043e \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u044b\",thead:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u044b\",\"row_all\":\"\\u041e\\u0431\\u043d\\u043e\\u0432\\u0438\\u0442\\u044c \\u0432\\u0441\\u0435 \\u0441\\u0442\\u0440\\u043e\\u043a\\u0438 \\u0432 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0435\",\"row_even\":\"\\u041e\\u0431\\u043d\\u043e\\u0432\\u0438\\u0442\\u044c \\u0447\\u0435\\u0442\\u043d\\u044b\\u0435 \\u0441\\u0442\\u0440\\u043e\\u043a\\u0438 \\u0432 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0435\",\"row_odd\":\"\\u041e\\u0431\\u043d\\u043e\\u0432\\u0438\\u0442\\u044c \\u043d\\u0435\\u0447\\u0435\\u0442\\u043d\\u044b\\u0435 \\u0441\\u0442\\u0440\\u043e\\u043a\\u0438 \\u0432 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0435\",\"row_row\":\"\\u041e\\u0431\\u043d\\u043e\\u0432\\u0438\\u0442\\u044c \\u0442\\u0435\\u043a\\u0443\\u0449\\u0443\\u044e \\u0441\\u0442\\u0440\\u043e\\u043a\\u0443\",\"cell_all\":\"\\u041e\\u0431\\u043d\\u043e\\u0432\\u0438\\u0442\\u044c \\u0432\\u0441\\u0435 \\u044f\\u0447\\u0435\\u0439\\u043a\\u0438 \\u0432 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0435\",\"cell_row\":\"\\u041e\\u0431\\u043d\\u043e\\u0432\\u0438\\u0442\\u044c \\u0432\\u0441\\u0435 \\u044f\\u0447\\u0435\\u0439\\u043a\\u0438 \\u0432 \\u0441\\u0442\\u0440\\u043e\\u043a\\u0435\",\"cell_cell\":\"\\u041e\\u0431\\u043d\\u043e\\u0432\\u0438\\u0442\\u044c \\u0442\\u0435\\u043a\\u0443\\u0449\\u0443\\u044e \\u044f\\u0447\\u0435\\u0439\\u043a\\u0443\",th:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a\",td:\"\\u0414\\u0430\\u043d\\u043d\\u044b\\u0435\",summary:\"\\u041e\\u0431\\u0449\\u0435\\u0435\",bgimage:\"\\u0424\\u043e\\u043d\\u043e\\u0432\\u043e\\u0435 \\u0438\\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u0438\\u0435\",rtl:\"\\u0421\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043d\\u0430\\u043b\\u0435\\u0432\\u043e\",ltr:\"\\u0421\\u043b\\u0435\\u0432\\u0430 \\u043d\\u0430\\u043f\\u0440\\u0430\\u0432\\u043e\",mime:\"Target MIME-\\u0442\\u0438\\u043f\",langcode:\"\\u041a\\u043e\\u0434 \\u044f\\u0437\\u044b\\u043a\\u0430\",langdir:\"\\u041d\\u0430\\u043f\\u0440\\u0430\\u0432\\u043b\\u0435\\u043d\\u0438\\u0435 \\u044f\\u0437\\u044b\\u043a\\u0430\",style:\"\\u0421\\u0442\\u0438\\u043b\\u044c\",id:\"Id\",\"merge_cells_title\":\"\\u041e\\u0431\\u044a\\u0435\\u0434\\u0438\\u043d\\u0438\\u0442\\u044c \\u044f\\u0447\\u0435\\u0439\\u043a\\u0438\",bgcolor:\"\\u0446\\u0432\\u0435\\u0442 \\u0444\\u043e\\u043d\\u0430\",bordercolor:\"\\u0446\\u0432\\u0435\\u0442 \\u0433\\u0440\\u0430\\u043d\\u0438\\u0446\\u044b\",\"align_bottom\":\"\\u041f\\u043e \\u043d\\u0438\\u0436\\u043d\\u0435\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"align_top\":\"\\u041f\\u043e \\u0432\\u0435\\u0440\\u0445\\u043d\\u0435\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",valign:\"\\u0412\\u0435\\u0440\\u0442\\u0438\\u043a\\u0430\\u043b\\u044c\\u043d\\u043e\\u0435 \\u0432\\u044b\\u0440\\u0430\\u0432\\u043d\\u0438\\u0432\\u0430\\u043d\\u0438\\u0435\",\"cell_type\":\"\\u0422\\u0438\\u043f \\u044f\\u0447\\u0435\\u0439\\u043a\\u0438\",\"cell_title\":\"\\u0421\\u0432\\u043e\\u0439\\u0441\\u0442\\u0432\\u0430 \\u044f\\u0447\\u0435\\u0439\\u043a\\u0438 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u044b\",\"row_title\":\"\\u0421\\u0432\\u043e\\u0439\\u0441\\u0442\\u0432\\u0430 \\u0441\\u0442\\u0440\\u043e\\u043a\\u0435 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u044b\",\"align_middle\":\"\\u041f\\u043e \\u0446\\u0435\\u043d\\u0442\\u0440\\u0443\",\"align_right\":\"\\u041f\\u043e \\u043f\\u0440\\u0430\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"align_left\":\"\\u041f\\u043e \\u043b\\u0435\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"align_default\":\"\\u041f\\u043e \\u0443\\u043c\\u043e\\u043b\\u0447\\u0430\\u043d\\u0438\\u044e\",align:\"\\u0412\\u044b\\u0440\\u0430\\u0432\\u043d\\u0438\\u0432\\u0430\\u043d\\u0438\\u0435\",border:\"\\u0413\\u0440\\u0430\\u043d\\u0438\\u0446\\u0430\",cellpadding:\"\\u041e\\u0442\\u0441\\u0442\\u0443\\u043f\\u044b \\u0432 \\u044f\\u0447\\u0435\\u0439\\u043a\\u0430\\u0445\",cellspacing:\"\\u0420\\u0430\\u0441\\u0441\\u0442\\u043e\\u044f\\u043d\\u0438\\u0435 \\u043c\\u0435\\u0436\\u0434\\u0443 \\u044f\\u0447\\u0435\\u0439\\u043a\\u0430\\u043c\\u0438\",rows:\"\\u0421\\u0440\\u043e\\u043a\\u0438\",cols:\"\\u0421\\u0442\\u043e\\u043b\\u0431\\u0446\\u044b\",height:\"\\u0412\\u044b\\u0441\\u043e\\u0442\\u0430\",width:\"\\u0428\\u0438\\u0440\\u0438\\u043d\\u0430\",title:\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u043b\\u0435\\u043d\\u0438\\u0435 / \\u0418\\u0437\\u043c\\u0435\\u043d\\u0435\\u043d\\u0438\\u0435 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u044b\",rowtype:\"Row in table part\",\"advanced_props\":\"\\u0420\\u0430\\u0441\\u0448\\u0438\\u0440\\u0435\\u043d\\u043d\\u044b\\u0435 \\u0441\\u0432\\u043e\\u0439\\u0441\\u0442\\u0432\\u0430\",\"general_props\":\"\\u041e\\u0431\\u0449\\u0438\\u0435 \\u0441\\u0432\\u043e\\u0439\\u0441\\u0442\\u0432\\u0430\",\"advanced_tab\":\"\\u0414\\u043e\\u043f\\u043e\\u043b\\u043d\\u0438\\u0442\\u0435\\u043b\\u044c\\u043d\\u043e\",\"general_tab\":\"\\u041e\\u0431\\u0449\\u0435\\u0435\",\"cell_col\":\"Update all cells in column\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/it_dlg.js",
    "content": "tinyMCE.addI18n('it.table_dlg',{\"rules_border\":\"bordo\",\"rules_box\":\"box\",\"rules_vsides\":\"lato vert.\",\"rules_rhs\":\"rhs\",\"rules_lhs\":\"lhs\",\"rules_hsides\":\"lato orizz.\",\"rules_below\":\"sotto\",\"rules_above\":\"sopra\",\"rules_void\":\"vuoto\",rules:\"Regole\",\"frame_all\":\"tutte\",\"frame_cols\":\"colonne\",\"frame_rows\":\"righe\",\"frame_groups\":\"gruppi\",\"frame_none\":\"nessuna\",frame:\"Cornice\",caption:\"Didascalia tabella\",\"missing_scope\":\"Sicuro di proseguire senza aver specificato uno scope per l\\'intestazione di questa tabella? Senza di esso, potrebbe essere difficoltoso per alcuni utenti con disabilit\\u00e0 capire il contenuto o i dati mostrati nella tabella.\",\"cell_limit\":\"Superato il numero massimo di celle di {$cells}.\",\"row_limit\":\"Superato il numero massimo di righe di {$rows}.\",\"col_limit\":\"Superato il numero massimo di colonne di {$cols}.\",colgroup:\"Gruppo colonna\",rowgroup:\"Gruppo riga\",scope:\"Scope\",tfoot:\"Pedice tabella\",tbody:\"Corpo tabella\",thead:\"Intestazione tabella\",\"row_all\":\"Update tutte le righe della tabella\",\"row_even\":\"Aggiorna righe pari della tabella\",\"row_odd\":\"Aggiorna righe dispari della tabella\",\"row_row\":\"Aggiorna riga corrente\",\"cell_all\":\"Aggiorna tutte le celle della tabella\",\"cell_row\":\"Aggiorna tutte le celle della riga\",\"cell_cell\":\"Aggiorna cella corrente\",th:\"Intestazione\",td:\"Data\",summary:\"Sommario\",bgimage:\"Immagine sfondo\",rtl:\"Destra verso sinistra\",ltr:\"Sinistra verso destra\",mime:\"Tipo MIME del target\",langcode:\"Lingua\",langdir:\"Direzione testo\",style:\"Stile\",id:\"Id\",\"merge_cells_title\":\"Unisci celle\",bgcolor:\"Colore sfondo\",bordercolor:\"Colore bordo\",\"align_bottom\":\"In basso\",\"align_top\":\"In alto\",valign:\"Allineamento verticale\",\"cell_type\":\"Tipo cella\",\"cell_title\":\"Propriet\\u00e0 cella\",\"row_title\":\"Propriet\\u00e0 riga\",\"align_middle\":\"Centra\",\"align_right\":\"A destra\",\"align_left\":\"A sinistra\",\"align_default\":\"Predefinito\",align:\"Allineamento\",border:\"Bordo\",cellpadding:\"Padding celle\",cellspacing:\"Spaziatura celle\",rows:\"Righe\",cols:\"Colonne\",height:\"Altezza\",width:\"Larghezza\",title:\"Inserisci/Modifica tabella\",rowtype:\"Riga in una parte di tabella\",\"advanced_props\":\"Propriet\\u00e0 avanzate\",\"general_props\":\"Propriet\\u00e0 generali\",\"advanced_tab\":\"Avanzate\",\"general_tab\":\"Generale\",\"cell_col\":\"Aggiorna tutte le celle della colonna\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/ka_dlg.js",
    "content": "tinyMCE.addI18n('ka.table_dlg',{\"rules_border\":\"\\u10e1\\u10d0\\u10d6\\u10e6\\u10d5\\u10d0\\u10e0\\u10d8\",\"rules_box\":\"\\u10d9\\u10dd\\u10da\\u10dd\\u10e4\\u10d8\",\"rules_vsides\":\"vsides\",\"rules_rhs\":\"rhs\",\"rules_lhs\":\"lhs\",\"rules_hsides\":\"hsides\",\"rules_below\":\"below\",\"rules_above\":\"above\",\"rules_void\":\"void\",rules:\"wesebi\",\"frame_all\":\"\\u10e7\\u10d5\\u10d4\\u10da\\u10d0\",\"frame_cols\":\"\\u10e1\\u10d5\\u10d4\\u10e2\\u10d4\\u10d1\\u10d8\",\"frame_rows\":\"\\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d4\\u10d1\\u10d8\",\"frame_groups\":\"\\u10ef\\u10d2\\u10e3\\u10e4\\u10d4\\u10d1\\u10d8\",\"frame_none\":\"none\",frame:\"\\u10d9\\u10d0\\u10d3\\u10e0\\u10d8\",caption:\"\\u10e1\\u10d0\\u10d7\\u10d0\\u10e3\\u10e0\\u10d8\",\"missing_scope\":\"\\u10d7\\u10e3 \\u10e1\\u10d0\\u10d7\\u10d0\\u10e3\\u10e0\\u10d8 \\u10d0\\u10e0 \\u10d8\\u10e5\\u10dc\\u10d4\\u10d1\\u10d0 \\u10db\\u10d8\\u10d7\\u10d8\\u10d7\\u10d4\\u10d1\\u10e3\\u10da\\u10d8, \\u10e8\\u10d4\\u10d8\\u10eb\\u10da\\u10d4\\u10d1\\u10d0 \\u10e7\\u10d5\\u10d4\\u10da\\u10d0\\u10db \\u10d5\\u10d4\\u10e0 \\u10dc\\u10d0\\u10ee\\u10dd\\u10e1 \\u10d8\\u10dc\\u10e4\\u10dd\\u10e0\\u10db\\u10d0\\u10ea\\u10d8\\u10d0.\",\"cell_limit\":\"\\u10db\\u10d8\\u10e6\\u10ec\\u10d4\\u10e3\\u10da\\u10d8\\u10d0 \\u10db\\u10d0\\u10e5\\u10e1\\u10d8\\u10db\\u10d0\\u10da\\u10e3\\u10e0\\u10d8 \\u10d6\\u10e6\\u10d5\\u10d0\\u10e0\\u10d8, $ \\u10e3\\u10ef\\u10e0\\u10d0.\",\"row_limit\":\"\\u10db\\u10d8\\u10e6\\u10ec\\u10d4\\u10e3\\u10da\\u10d8\\u10d0 \\u10db\\u10d0\\u10e5\\u10e1\\u10d8\\u10db\\u10d0\\u10da\\u10e3\\u10e0\\u10d8 \\u10d6\\u10e6\\u10d5\\u10d0\\u10e0\\u10d8, $ \\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d8.\",\"col_limit\":\"\\u10db\\u10d8\\u10e6\\u10ec\\u10d4\\u10e3\\u10da\\u10d8\\u10d0 \\u10db\\u10d0\\u10e5\\u10e1\\u10d8\\u10db\\u10d0\\u10da\\u10e3\\u10e0\\u10d8 \\u10d6\\u10e6\\u10d5\\u10d0\\u10e0\\u10d8, $ \\u10e1\\u10d5\\u10d4\\u10e2\\u10d8.\",colgroup:\"\\u10e1\\u10d5\\u10d4\\u10e2\\u10d4\\u10d1\\u10d8\\u10e1 \\u10ef\\u10d2\\u10e3\\u10e4\\u10d8\",rowgroup:\"\\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d4\\u10d1\\u10d8\\u10e1 \\u10ef\\u10d2\\u10e3\\u10e4\\u10d8\",scope:\"\\u10db\\u10d8\\u10d3\\u10d0\\u10db\\u10dd\",tfoot:\"\\u10d3\\u10d0\\u10e1\\u10e0\\u10e3\\u10da\\u10d4\\u10d1\\u10d0\",tbody:\"\\u10e1\\u10ee\\u10d4\\u10e3\\u10da\\u10d8\",thead:\"\\u10e1\\u10d0\\u10d7\\u10d0\\u10e3\\u10e0\\u10d8\",\"row_all\":\"\\u10ea\\u10ee\\u10e0\\u10d8\\u10da\\u10e1\\u10d8 \\u10e7\\u10d5\\u10d4\\u10da\\u10d0 \\u10e3\\u10ef\\u10e0\\u10d8\\u10e1 \\u10d2\\u10d0\\u10dc\\u10d0\\u10ee\\u10da\\u10d4\\u10d1\\u10d0\",\"row_even\":\"\\u10ea\\u10ee\\u10e0\\u10d8\\u10da\\u10e8\\u10d8 \\u10da\\u10e3\\u10ec\\u10d8\\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d4\\u10d1\\u10d8\\u10e1 \\u10d2\\u10d0\\u10dc\\u10d0\\u10ee\\u10da\\u10d4\\u10d1\\u10d0\",\"row_odd\":\"\\u10ea\\u10ee\\u10e0\\u10e3\\u10da\\u10e1\\u10d8 \\u10d9\\u10d4\\u10dc\\u10e2\\u10d8 \\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d4\\u10d1\\u10d8\\u10e1 \\u10d2\\u10d0\\u10dc\\u10d0\\u10ee\\u10da\\u10d4\\u10d1\\u10d0\",\"row_row\":\"\\u10db\\u10dd\\u10ea\\u10d4\\u10db\\u10e3\\u10da\\u10d8 \\u10e1\\u10e2\\u10d8\\u10e0\\u10e5\\u10dd\\u10dc\\u10d8\\u10e1 \\u10d2\\u10d0\\u10dc\\u10d0\\u10ee\\u10da\\u10d4\\u10d1\\u10d0\",\"cell_all\":\"\\u10ea\\u10ee\\u10e0\\u10d8\\u10da\\u10e1\\u10d8 \\u10e7\\u10d5\\u10d4\\u10da\\u10d0 \\u10e3\\u10ef\\u10e0\\u10d8\\u10e1 \\u10d2\\u10d0\\u10dc\\u10d0\\u10ee\\u10da\\u10d4\\u10d1\\u10d0\",\"cell_row\":\"\\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10e8\\u10d8 \\u10e7\\u10d5\\u10d4\\u10da\\u10d0 \\u10e3\\u10ef\\u10e0\\u10e1 \\u10d2\\u10d0\\u10dc\\u10d0\\u10ee\\u10da\\u10d4\\u10d1\\u10d0\",\"cell_cell\":\"\\u10db\\u10dd\\u10ea\\u10d4\\u10db\\u10e3\\u10da\\u10d8 \\u10e3\\u10ef\\u10e0\\u10d8\\u10e1 \\u10d2\\u10d0\\u10dc\\u10d0\\u10ee\\u10da\\u10d4\\u10d1\\u10d0\",th:\"\\u10e1\\u10d0\\u10d7\\u10d0\\u10e3\\u10e0\\u10d8\",td:\"\\u10db\\u10dd\\u10dc\\u10d0\\u10ea\\u10d4\\u10db\\u10d4\\u10d1\\u10d8\",summary:\"\\u10e1\\u10d0\\u10d4\\u10e0\\u10d7\\u10dd\",bgimage:\"\\u10e4\\u10dd\\u10dc\\u10e3\\u10e0\\u10d8 \\u10d2\\u10d0\\u10db\\u10dd\\u10e1\\u10d0\\u10ee\\u10e3\\u10da\\u10d1\\u10d0\",rtl:\"\\u10db\\u10d0\\u10e0\\u10d5\\u10dc\\u10d8\\u10d3\\u10d0\\u10dc \\u10db\\u10d0\\u10e0\\u10ea\\u10ee\\u10dc\\u10d8\\u10d5\",ltr:\"\\u10db\\u10d0\\u10e0\\u10ea\\u10ee\\u10dc\\u10d8\\u10d3\\u10d0\\u10dc \\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10dc\\u10d8\\u10d5\",mime:\"MIME \\u10db\\u10d8\\u10d6\\u10dc\\u10d8\\u10e1 \\u10e2\\u10d8\\u10de\\u10d8\",langcode:\"\\u10d4\\u10dc\\u10d8\\u10e1 \\u10d9\\u10dd\\u10d3\\u10d8\",langdir:\"\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\\u10e1 \\u10db\\u10d8\\u10db\\u10d0\\u10e0\\u10d7\\u10e3\\u10da\\u10d4\\u10d1\\u10d0\",style:\"\\u10e1\\u10e2\\u10d8\\u10da\\u10d8\",id:\"\\u10e1\\u10d0\\u10ee\\u10d4\\u10da\\u10d8\",\"merge_cells_title\":\"\\u10e3\\u10ef\\u10e0\\u10d4\\u10d1\\u10d8\\u10e1 \\u10d2\\u10d0\\u10d4\\u10e0\\u10d7\\u10d8\\u10d0\\u10dc\\u10d4\\u10d1\\u10d0\",bgcolor:\"\\u10e8\\u10d4\\u10d5\\u10e1\\u10d4\\u10d1\\u10d8\\u10e1 \\u10e4\\u10d4\\u10e0\\u10d8\",bordercolor:\"\\u10e1\\u10d0\\u10d6\\u10e6\\u10d5\\u10e0\\u10d4\\u10d1\\u10d8\\u10e1 \\u10e4\\u10d4\\u10e0\\u10d8\",\"align_bottom\":\"\\u10e5\\u10d5\\u10d4\\u10d3\\u10d0 \\u10d9\\u10d8\\u10d3\\u10d4\\u10d6\\u10d4\",\"align_top\":\"\\u10d6\\u10d4\\u10d3\\u10d0 \\u10d9\\u10d8\\u10d3\\u10d4\\u10d6\\u10d4\",valign:\"\\u10d5\\u10d4\\u10e0\\u10e2\\u10d8\\u10d9\\u10d0\\u10da\\u10e3\\u10e0\\u10d8 \\u10d2\\u10d0\\u10e1\\u10ec\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\",\"cell_type\":\"\\u10e2\\u10d8\\u10de\\u10d8\",\"cell_title\":\"\\u10e3\\u10ef\\u10e0\\u10d8\\u10e1 \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"row_title\":\"\\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d8\\u10e1 \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"align_middle\":\"\\u10ea\\u10d4\\u10dc\\u10e2\\u10e0\\u10d6\\u10d4\",\"align_right\":\"\\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10d4\\u10dc\\u10d0 \\u10d9\\u10d8\\u10d3\\u10d4\\u10d6\\u10d4\",\"align_left\":\"\\u10db\\u10d0\\u10e0\\u10ea\\u10ee\\u10d4\\u10dc\\u10d0 \\u10d9\\u10d8\\u10d3\\u10d4\\u10d6\\u10d4\",\"align_default\":\"\\u10e1\\u10d0\\u10ec\\u10d8\\u10e1\\u10d0\\u10d3\",align:\"\\u10d2\\u10d0\\u10e1\\u10ec\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\",border:\"\\u10e1\\u10d0\\u10d6\\u10e6\\u10d5\\u10d0\\u10e0\\u10d8\",cellpadding:\"\\u10e3\\u10ef\\u10e0\\u10d4\\u10d1\\u10e1 \\u10e8\\u10dd\\u10e0\\u10d8\\u10e1 \\u10d3\\u10d0\\u10e8\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\",cellspacing:\"\\u10e3\\u10ef\\u10e0\\u10d4\\u10d1\\u10e1 \\u10e8\\u10dd\\u10e0\\u10d8\\u10e1 \\u10d3\\u10d0\\u10e8\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\",rows:\"\\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d4\\u10d1\\u10d8\",cols:\"\\u10e1\\u10d5\\u10d4\\u10e2\\u10d4\\u10d1\\u10d8\",height:\"\\u10e1\\u10d8\\u10db\\u10d0\\u10e6\\u10da\\u10d4\",width:\"\\u10e1\\u10d8\\u10d2\\u10d0\\u10dc\\u10d4\",title:\"\\u10ea\\u10ee\\u10e0\\u10d8\\u10da\\u10d8\\u10e1 \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",rowtype:\"\\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d8\\u10e1 \\u10e0\\u10d8\\u10de\\u10d8\",\"advanced_props\":\"\\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d8\\u10d7\\u10d8 \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"general_props\":\"\\u10e1\\u10d0\\u10d4\\u10e0\\u10d7\\u10dd \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"advanced_tab\":\"\\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d8\\u10d7\",\"general_tab\":\"\\u10e1\\u10d0\\u10d4\\u10e0\\u10d7\\u10dd\",\"cell_col\":\"Update all cells in column\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/ko_dlg.js",
    "content": "tinyMCE.addI18n('ko.table_dlg',{\"rules_border\":\"border\",\"rules_box\":\"box\",\"rules_vsides\":\"\\uc88c\\uc6b0\\ubc94\\uc704\\ub9cc\",\"rules_rhs\":\"\\uc6b0\\uce21 \\ubc94\\uc704\\ub9cc\",\"rules_lhs\":\"\\uc88c\\uce21 \\ubc94\\uc704\\ub9cc\",\"rules_hsides\":\"\\uc0c1\\ud558\\ubc94\\uc704\\ub9cc\",\"rules_below\":\"\\uc544\\ub798\",\"rules_above\":\"\\uc704\",\"rules_void\":\"Void\",rules:\"Rules\",\"frame_all\":\"\\ubaa8\\ub450\",\"frame_cols\":\"\\uc5f4\",\"frame_rows\":\"\\ud589\",\"frame_groups\":\"\\uadf8\\ub8f9\",\"frame_none\":\"\\uc5c6\\uc74c\",frame:\"Frame\",caption:\"\\ud45c \\uc81c\\ubaa9\",\"missing_scope\":\"\\uc774 \\ud45c \\ud5e4\\ub354\\uc140\\uc5d0 scope\\uc18d\\uc131\\uc744 \\uc9c0\\uc815\\ud558\\uc9c0\\uc54a\\uc544\\ub3c4 \\uad1c\\ucc2e\\uc2b5\\ub2c8\\uae4c? \\uc9c0\\uc815\\ud558\\uc9c0 \\uc54a\\ub294 \\uacbd\\uc6b0, \\uc2dc\\uac04\\uc801\\uc73c\\ub85c \\ud14c\\uc774\\ube14\\uc758 \\uad6c\\uc870\\ub97c \\ud30c\\uc545\\ud558\\ub294 \\uac83\\uc774 \\uc5b4\\ub824\\uc6b4 \\ubd84\\uc758 \\uc811\\uadfc\\uc131\\uc774 \\uc800\\ud558\\ud569\\ub2c8\\ub2e4.\",\"cell_limit\":\"\\uc140\\uc218\\uc758 \\uc0c1\\ud55c{$cells}\\ub97c \\ub118\\uc5c8\\uc2b5\\ub2c8\\ub2e4.\",\"row_limit\":\"\\ud589\\uc218\\uc758 \\uc0c1\\ud55c{$rows}\\ub97c \\ub118\\uc5c8\\uc2b5\\ub2c8\\ub2e4.\",\"col_limit\":\"\\uc5f4 \\uc218\\uc758 \\uc0c1\\ud55c{$cols}\\ub97c \\ub118\\uc5c8\\uc2b5\\ub2c8\\ub2e4.\",colgroup:\"\\uc5f4 \\uadf8\\ub8f9\",rowgroup:\"\\ud589 \\uadf8\\ub8f9\",scope:\"Scope\",tfoot:\"\\ubc14\\ub2e5\\uae00\",tbody:\"\\ubcf8\\ubb38\",thead:\"\\uba38\\ub9bf\\uae00\",\"row_all\":\"\\ud45c\\uc758 \\ubaa8\\ub4e0 \\ud589 \\uac31\\uc2e0\",\"row_even\":\"\\ud45c\\uc758 \\uc9dd\\uc218 \\ud589 \\uac31\\uc2e0\",\"row_odd\":\"\\ud45c\\uc758 \\ud640\\uc218 \\ud589 \\uac31\\uc2e0\",\"row_row\":\"\\ud604\\uc7ac \\ud589 \\uac31\\uc2e0\",\"cell_all\":\"\\ud45c\\uc758 \\ubaa8\\ub4e0 \\uc140 \\uac31\\uc2e0\",\"cell_row\":\"\\ud589\\uc758 \\ubaa8\\ub4e0 \\uc140 \\uac31\\uc2e0\",\"cell_cell\":\"\\ud604\\uc7ac \\uc140 \\uac31\\uc2e0\",th:\"\\uba38\\ub9bf\\uae00\",td:\"\\ub370\\uc774\\ud130\",summary:\"\\uc694\\uc57d\",bgimage:\"\\ubc30\\uacbd \\uc774\\ubbf8\\uc9c0\",rtl:\"\\uc624\\ub978\\ucabd\\uc5d0\\uc11c \\uc67c\\ucabd\\uc73c\\ub85c\",ltr:\"\\uc67c\\ucabd\\uc5d0\\uc11c \\uc624\\ub978\\ucabd\\uc73c\\ub85c\",mime:\"Target MIME \\ud0c0\\uc785\",langcode:\"\\uc5b8\\uc5b4 \\ucf54\\ub4dc\",langdir:\"\\ubb38\\uc790 \\ubc29\\ud5a5\",style:\"\\uc11c\\uc2dd\",id:\"ID\",\"merge_cells_title\":\"\\uc140 \\ubcd1\\ud569\",bgcolor:\"\\ubc30\\uacbd\\uc0c9\",bordercolor:\"\\ud14c\\ub450\\ub9ac \\uc0c9\",\"align_bottom\":\"\\ud558\",\"align_top\":\"\\uc0c1\",valign:\"\\uc138\\ub85c \\ub9de\\ucda4\",\"cell_type\":\"\\uc140 \\uc885\\ub958\",\"cell_title\":\"\\uc140 \\uc18d\\uc131\",\"row_title\":\"\\ud589 \\uc18d\\uc131\",\"align_middle\":\"\\uac00\\uc6b4\\ub370 \\ub9de\\ucda4\",\"align_right\":\"\\uc624\\ub978\\ucabd \\ub9de\\ucda4\",\"align_left\":\"\\uc67c\\ucabd \\ub9de\\ucda4\",\"align_default\":\"\\uae30\\ubcf8\\uac12\",align:\"\\uc904 \\ub9de\\ucda4\",border:\"\\ud14c\\ub450\\ub9ac\\uc120\",cellpadding:\"\\uc140\\ub0b4 \\uc5ec\\ubc31\",cellspacing:\"\\uc140 \\uac04\\uaca9\",rows:\"\\ud589\",cols:\"\\uc5f4\",height:\"\\ub192\\uc774\",width:\"\\ud3ed\",title:\"\\ud45c \\uc0bd\\uc785/\\ud3b8\\uc9d1\",rowtype:\"\\ud589 \\uc885\\ub958\",\"advanced_props\":\"\\uc138\\ubd80 \\uc18d\\uc131\",\"general_props\":\"\\uc77c\\ubc18 \\uc18d\\uc131\",\"advanced_tab\":\"\\uc138\\ubd80 \\uc0ac\\ud56d\",\"general_tab\":\"\\uc77c\\ubc18\",\"cell_col\":\"\\uc5f4\\uc758 \\ubaa8\\ub4e0 \\uc140 \\uac31\\uc2e0\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/nb_dlg.js",
    "content": "tinyMCE.addI18n('nb.table_dlg',{\"rules_border\":\"ramme\",\"rules_box\":\"boks\",\"rules_vsides\":\"vsides\",\"rules_rhs\":\"rhs\",\"rules_lhs\":\"lhs\",\"rules_hsides\":\"hsider\",\"rules_below\":\"under\",\"rules_above\":\"over\",\"rules_void\":\"ingen\",rules:\"Streker\",\"frame_all\":\"alle\",\"frame_cols\":\"kolonner\",\"frame_rows\":\"rader\",\"frame_groups\":\"grupper\",\"frame_none\":\"ingen\",frame:\"Ramme\",caption:\"Tabelloverskrift\",\"missing_scope\":\"Er du sikker p\\u00e5 at du vil fortsette uten \\u00e5 angi et omr\\u00e5de for denne overskrifscellen? Uten dette kan det bli vanskelig for enkelte funksjonshemmede brukere \\u00e5 forst\\u00e5 innholdet eller dataene som blir presentert i tabellen.\",\"cell_limit\":\"Du har overskredet maksimalt antall celler p\\u00e5 {$cells}.\",\"row_limit\":\"Du har overskredet maksimalt antall rader p\\u00e5 {$rows}.\",\"col_limit\":\"Du har overskredet maksimalt antall kolonner p\\u00e5 {$cols}.\",colgroup:\"Kolonnegruppe\",rowgroup:\"Radgruppe\",scope:\"Omr\\u00e5de\",tfoot:\"Tabellfot\",tbody:\"Tabellkropp\",thead:\"Tabellhode\",\"row_all\":\"Oppdater alle rader\",\"row_even\":\"Oppdater partallsrader\",\"row_odd\":\"Oppdater oddetallsrader\",\"row_row\":\"Oppdater aktuell rad\",\"cell_all\":\"Oppdater alle celler i tabellen\",\"cell_row\":\"Oppdater alle celler i raden\",\"cell_cell\":\"Oppdater aktuell celle\",th:\"Overskrift\",td:\"Data\",summary:\"Sammendrag\",bgimage:\"Bakgrunnsbilde\",rtl:\"H\\u00f8yre  mot venstre\",ltr:\"Venstre mot h\\u00f8yre\",mime:\"M\\u00e5lets MIME-type\",langcode:\"Spr\\u00e5kkode\",langdir:\"Skriftretning\",style:\"Stil\",id:\"Id\",\"merge_cells_title\":\"Sl\\u00e5 sammen celler\",bgcolor:\"Bakgrunn\",bordercolor:\"Rammefarge\",\"align_bottom\":\"Bunn\",\"align_top\":\"Topp\",valign:\"Vertikal justering\",\"cell_type\":\"Celletype\",\"cell_title\":\"Celleegenskaper\",\"row_title\":\"Radegenskaper\",\"align_middle\":\"Midtstilt\",\"align_right\":\"H\\u00f8yre\",\"align_left\":\"Venstre\",\"align_default\":\"Standard\",align:\"Justering\",border:\"Ramme\",cellpadding:\"Cellefylling\",cellspacing:\"Celleavstand\",rows:\"Rader\",cols:\"Kolonner\",height:\"H\\u00f8yde\",width:\"Bredde\",title:\"Sett inn / rediger tabell\",rowtype:\"Rad i tabell\",\"advanced_props\":\"Generelle egenskaper\",\"general_props\":\"Generelt\",\"advanced_tab\":\"Avansert\",\"general_tab\":\"Generelt\",\"cell_col\":\"Oppdater alle celler i kolonnen\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/nl_dlg.js",
    "content": "tinyMCE.addI18n('nl.table_dlg',{rules_border:\"Rand\",rules_box:\"Box\",rules_vsides:\"Verticale zijden\",rules_rhs:\"Rechterzijkant\",rules_lhs:\"Linkerzijkant\",rules_hsides:\"Horizontale zijden\",rules_below:\"Onder\",rules_above:\"Boven\",rules_void:\"Geen\",rules:\"Hulplijnen\",frame_all:\"Alles\",frame_cols:\"Kolommen\",frame_rows:\"Rijen\",frame_groups:\"Groepen\",frame_none:\"Geen\",frame:\"Frame\",caption:\"Tabelbeschrijving\",missing_scope:\"Weet u zeker dat u door wilt gaan met het toewijzen van een kop zonder een bereik op te geven? Mensen met een visuele handicap kunnen hierdoor waarschijnlijk slecht bij de gegevens.\",cell_limit:\"U heeft het maximale aantal cellen van {$cells} overschreden.\",row_limit:\"U heeft hebt het maximale aantal rijen van {$rows} overschreden.\",col_limit:\"U heeft het maximale aantal kolommen van {$cols} overschreden.\",colgroup:\"Kolomgroep\",rowgroup:\"Rijgroep\",scope:\"Bereik\",tfoot:\"Tabelvoet\",tbody:\"Tabellichaam\",thead:\"Tabelkop\",row_all:\"Alle rijen bijwerken\",row_even:\"Even rijen bijwerken\",row_odd:\"Oneven rijen bijwerken\",row_row:\"Huidige rij bijwerken\",cell_all:\"Alle cellen in tabel bijwerken\",cell_row:\"Alle cellen in rij bijwerken\",cell_cell:\"Huidige cel bijwerken\",th:\"Kop\",td:\"Gegevens\",summary:\"Samenvatting\",bgimage:\"Achtergrondafbeelding\",rtl:\"Van rechts naar links\",ltr:\"Van links naar rechts\",mime:\"Doel MIME type\",langcode:\"Taalcode\",langdir:\"Taalrichting\",style:\"Stijl\",id:\"Id\",merge_cells_title:\"Cellen samenvoegen\",bgcolor:\"Achtergrondkleur\",bordercolor:\"Randkleur\",align_bottom:\"Onder\",align_top:\"Boven\",valign:\"Verticale uitlijning\",cell_type:\"Celtype\",cell_title:\"Celeigenschappen\",row_title:\"Rij-eigenschappen\",align_middle:\"Centreren\",align_right:\"Rechts\",align_left:\"Links\",align_default:\"Standaard\",align:\"Uitlijning\",border:\"Rand\",cellpadding:\"Ruimte in cel\",cellspacing:\"Ruimte om cel\",rows:\"Rijen\",cols:\"Kolommen\",height:\"Hoogte\",width:\"Breedte\",title:\"Tabel invoegen/bewerken\",rowtype:\"Rijtype\",advanced_props:\"Geavanceerde eigenschappen\",general_props:\"Algemene eigenschappen\",advanced_tab:\"Geavanceerd\",general_tab:\"Algemeen\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/pl_dlg.js",
    "content": "tinyMCE.addI18n('pl.table_dlg',{rules_border:\"border\",rules_box:\"box\",rules_vsides:\"vsides\",rules_rhs:\"rhs\",rules_lhs:\"lhs\",rules_hsides:\"hsides\",rules_below:\"pod\",rules_above:\"nad\",rules_void:\"void\",rules:\"Prowadnice\",frame_all:\"wszystkie\",frame_cols:\"kolumny\",frame_rows:\"wiersze\",frame_groups:\"grupy\",frame_none:\"brak\",frame:\"Ramka\",caption:\"Nag\\u0142\\u00f3wek tabeli\",missing_scope:\"Jeste\\u015b pewny \\u017ce chcesz kontynuowa\\u0107 bez definiowania zasi\\u0119gu dla kom\\u00f3rki tabeli. Bez niej, mo\\u017ce by\\u0107 trudne dla niekt\\u00f3rych u\\u017cytkownik\\u00f3w zrozuminie zawarto\\u015bci albo danych wy\\u015bwietlanych poza tabel\\u0105.\",cell_limit:\"Przekroczy\\u0142e\\u015b maksymaln\\u0105 liczb\\u0119 kom\\u00f3rek kt\\u00f3ra wynosi {$cells}.\",row_limit:\"Przekroczy\\u0142e\\u015b maksymaln\\u0105 liczb\\u0119 wierszy kt\\u00f3ra wynosi {$rows}.\",col_limit:\"Przekroczy\\u0142e\\u015b maksymaln\\u0105 liczb\\u0119 kolumn kt\\u00f3ra wynosi {$cols}.\",colgroup:\"Grupa kolumn\",rowgroup:\"Grupa wierszy\",scope:\"Zakres\",tfoot:\"Stopka tabeli\",tbody:\"Cia\\u0142o tabeli\",thead:\"Nag\\u0142\\u00f3wek tabeli\",row_all:\"Zmie\\u0144 wszystkie wiersze\",row_even:\"Zmie\\u0144 parzyste wiersze\",row_odd:\"Zmie\\u0144 nieparzyste wiersze\",row_row:\"Zmie\\u0144 aktualny wiersz\",cell_all:\"Zmie\\u0144 wszytkie kom\\u00f3rki w tabeli\",cell_row:\"Zmie\\u0144 wszytkie kom\\u00f3rki w wierszu\",cell_cell:\"Zmie\\u0144 aktualn\\u0105 kom\\u00f3rk\\u0119\",th:\"Nag\\u0142owek\",td:\"Data\",summary:\"Podsumowanie\",bgimage:\"Obrazek t\\u0142a\",rtl:\"Kierunek z prawej do lewej\",ltr:\"Kierunek z lewej do prawej\",mime:\"Docelowy typ MIME\",langcode:\"Oznaczenie kodowe j\\u0119zyka\",langdir:\"Kierunek czytania tekstu\",style:\"Styl\",id:\"Id\",merge_cells_title:\"Po\\u0142\\u0105cz kom\\u00f3rki\",bgcolor:\"Kolor t\\u0142a\",bordercolor:\"Kolor ramki\",align_bottom:\"D\\u00f3\\u0142\",align_top:\"G\\u00f3ra\",valign:\"Pionowe wyr\\u00f3wnanie\",cell_type:\"Typ kom\\u00f3rki\",cell_title:\"W\\u0142a\\u015bciwo\\u015bci kom\\u00f3rki\",row_title:\"W\\u0142a\\u015bciwo\\u015bci wiersza\",align_middle:\"\\u015arodek\",align_right:\"Prawy\",align_left:\"Lewy\",align_default:\"Domy\\u015blnie\",align:\"Wyr\\u00f3wnanie\",border:\"Ramka\",cellpadding:\"Cellpadding\",cellspacing:\"Cellspacing\",rows:\"Wiersze\",cols:\"Kolumny\",height:\"Wysoko\\u015b\\u0107\",width:\"Szeroko\\u015b\\u0107\",title:\"Wklej/Zmie\\u0144 tabel\\u0119\",rowtype:\"Wiersz w cz\\u0119\\u015bci tabeli\",advanced_props:\"Zaawansowane w\\u0142a\\u015bciwo\\u015bci\",general_props:\"G\\u0142\\u00f3wne w\\u0142a\\u015bciwo\\u015bci\",advanced_tab:\"Zaawansowana\",general_tab:\"G\\u0142\\u00f3wna\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/pt_dlg.js",
    "content": "tinyMCE.addI18n('pt.table_dlg',{rules_border:\"Limites\",rules_box:\"Box\",rules_vsides:\"Vsides\",rules_rhs:\"Rhs\",rules_lhs:\"Lhs\",rules_hsides:\"Hsides\",rules_below:\"abaixo\",rules_above:\"acima\",rules_void:\"void\",rules:\"Regras\",frame_all:\"Todos\",frame_cols:\"colunas\",frame_rows:\"Linhas\",frame_groups:\"Grupos\",frame_none:\"Nenhum\",frame:\"Frame\",caption:\"T\\u00edtulo da tabela\",missing_scope:\"Tem certeza de que quer continuar sem especificar um escopo para esta c\\u00e9lula? (Isso poder\\u00e1 causar dificuldades a usu\\u00e1rios deficientes)\",cell_limit:\"Excedeu o n\\u00famero m\\u00e1ximo de c\\u00e9lulas de {$cells}.\",row_limit:\"Excedeu o n\\u00famero m\\u00e1ximo de linhas de {$rows}.\",col_limit:\"Excedeu o n\\u00famero m\\u00e1ximo de colunas de {$cols}.\",colgroup:\"Grupo colunas\",rowgroup:\"Grupo linhas\",scope:\"Alcance\",tfoot:\"Rodap\\u00e9 da tabela\",tbody:\"Corpo da tabela\",thead:\"Topo da tabela\",row_all:\"Atualizar todas as linhas\",row_even:\"Atualizar linhas pares\",row_odd:\"Atualizar linhas \\u00edmpares\",row_row:\"Atualizar esta linha\",cell_all:\"Atualizar todas as c\\u00e9lulas na tabela\",cell_row:\"Atualizar todas as c\\u00e9lulas na linha\",cell_cell:\"Atualizar esta c\\u00e9lula\",th:\"Campo\",td:\"Dados\",summary:\"Sum\\u00e1rio\",bgimage:\"Imagem de fundo\",rtl:\"Da direita para a esquerda\",ltr:\"Da esquerda para a direita\",mime:\"MIME alvo\",langcode:\"C\\u00f3digo do idioma\",langdir:\"Dire\\u00e7\\u00e3o do texto\",style:\"Estilo\",id:\"Id\",merge_cells_title:\"Unir c\\u00e9lulas\",bgcolor:\"Cor de fundo\",bordercolor:\"Cor dos limites\",align_bottom:\"Abaixo\",align_top:\"Topo\",valign:\"Alinha. vert.\",cell_type:\"Tipo c\\u00e9l.\",cell_title:\"Propriedades de c\\u00e9lulas\",row_title:\"Propriedades de linhas\",align_middle:\"Centro\",align_right:\"Direita\",align_left:\"Esquerda\",align_default:\"Padr\\u00e3o\",align:\"Alinha.\",border:\"Limites\",cellpadding:\"Enchimento da C\\u00e9lula\",cellspacing:\"Espa\\u00e7amento da C\\u00e9lula\",rows:\"Linhas\",cols:\"Colunas\",height:\"Altura\",width:\"Largura\",title:\"Inserir/modificar tabela\",rowtype:\"Linha na parte da tabela\",advanced_props:\"Propriedades avan\\u00e7adas\",general_props:\"Propriedades gerais\",advanced_tab:\"Avan\\u00e7ado\",general_tab:\"Geral\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/ro_dlg.js",
    "content": "tinyMCE.addI18n('ro.table_dlg',{rules_border:\"border\",rules_box:\"box\",rules_vsides:\"vsides\",rules_rhs:\"rhs\",rules_lhs:\"lhs\",rules_hsides:\"hsides\",rules_below:\"dedesubt\",rules_above:\"deasupra\",rules_void:\"gol\",rules:\"Reguli\",frame_all:\"toate\",frame_cols:\"coloane\",frame_rows:\"r\\u00e2nduri\",frame_groups:\"grupuri\",frame_none:\"niciuna\",frame:\"Frame\",caption:\"Titlu tabel\",missing_scope:\"Sigur dori\\u0163i s\\u0103 l\\u0103sa\\u0163i scopul necompletat? \",cell_limit:\"A\\u0163i dep\\u0103\\u015fit num\\u0103rul maxim de celule: {$cells}.\",row_limit:\"A\\u0163i dep\\u0103\\u015fit num\\u0103rul maxim de r\\u00e2nduri: {$rows}.\",col_limit:\"A\\u0163i dep\\u0103\\u015fit num\\u0103rul maxim de coloane: {$cols}.\",colgroup:\"Grupeaz\\u0103 celule\",rowgroup:\"Grupeaz\\u0103 r\\u00e2nduri\",scope:\"Scop\",tfoot:\"Subsol tabel\",tbody:\"Corp tabel\",thead:\"Antet tabel\",row_all:\"Actualizeaz\\u0103 toate r\\u00e2ndurile\",row_even:\"Actualizeaz\\u0103 r\\u00e2ndurile pare\",row_odd:\"Actualizeaz\\u0103 r\\u00e2ndurile impare\",row_row:\"Actualizeaz\\u0103 r\\u00e2nd curent\",cell_all:\"Actualizeaz\\u0103 toate celulele din tabel\",cell_row:\"Actualizeaz\\u0103 toate celulele din r\\u00e2nd\",cell_cell:\"Actualizeaz\\u0103 celula curent\\u0103\",th:\"Antet\",td:\"Date\",summary:\"Sumar\",bgimage:\"Imagine de fundal\",rtl:\"De la dreapta la st\\u00e2nga\",ltr:\"De la st\\u00e2nga la dreapta\",mime:\"MIME type \\u0163int\\u0103\",langcode:\"Cod limb\\u0103\",langdir:\"Direc\\u0163ie limb\\u0103\",style:\"Stil\",id:\"Id\",merge_cells_title:\"Uni\\u0163i celulele\",bgcolor:\"Culoare fundal\",bordercolor:\"Culoare bordur\\u0103\",align_bottom:\"Jos\",align_top:\"Sus\",valign:\"Aliniere vertical\\u0103\",cell_type:\"Tip celul\\u0103\",cell_title:\"Propriet\\u0103\\u0163i celul\\u0103\",row_title:\"Propriet\\u0103\\u0163i r\\u00e2nd\",align_middle:\"Centru\",align_right:\"Dreapta\",align_left:\"St\\u00e2nga\",align_default:\"Implicit\\u0103\",align:\"Aliniere\",border:\"Bordur\\u0103\",cellpadding:\"Spa\\u0163iu \\u00een celule\",cellspacing:\"Spa\\u0163iu \\u00eentre celule\",rows:\"R\\u00e2nduri\",cols:\"Coloane\",height:\"\\u00cen\\u0103l\\u0163ime\",width:\"L\\u0103\\u0163ime\",title:\"Inserare/modificare tabel\",rowtype:\"R\\u0103nd \\u00een tabel\",advanced_props:\"Propriet\\u0103\\u0163i avansate\",general_props:\"Propriet\\u0103\\u0163i generale\",advanced_tab:\"Avansat\",general_tab:\"General\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/ru_dlg.js",
    "content": "tinyMCE.addI18n('ru.table_dlg',{rules_border:\"border\",rules_box:\"box\",rules_vsides:\"vsides\",rules_rhs:\"rhs\",rules_lhs:\"lhs\",rules_hsides:\"hsides\",rules_below:\"below\",rules_above:\"above\",rules_void:\"void\",rules:\"\\u041f\\u0440\\u0430\\u0432\\u0438\\u043b\\u0430\",frame_all:\"all\",frame_cols:\"cols\",frame_rows:\"rows\",frame_groups:\"groups\",frame_none:\"none\",frame:\"\\u041a\\u0430\\u0434\\u0440\",caption:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a\",missing_scope:\"\\u041f\\u0440\\u043e\\u0434\\u043e\\u043b\\u0436\\u0438\\u0442\\u044c \\u0431\\u0435\\u0437 \\u043e\\u043f\\u0440\\u0435\\u0434\\u0435\\u043b\\u043d\\u0438\\u044f \\u043e\\u0431\\u043b\\u0430\\u0441\\u0442\\u0438 \\u0437\\u0430\\u0433\\u043b\\u043e\\u043b\\u0432\\u043a\\u0430? \\u0411\\u0435\\u0437 \\u044d\\u0442\\u043e\\u0433\\u043e \\u0431\\u0443\\u0434\\u0435\\u0442 \\u0437\\u0430\\u0442\\u0440\\u0443\\u0434\\u043d\\u0435\\u043d\\u043e \\u0432\\u043e\\u0441\\u043f\\u0440\\u0438\\u044f\\u0442\\u0438\\u0435 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u044b \\u043d\\u0435\\u043a\\u043e\\u0442\\u043e\\u0440\\u044b\\u043c \\u043f\\u043e\\u043b\\u044c\\u0437\\u043e\\u0432\\u0430\\u0442\\u0435\\u043b\\u044f\\u043c.\",cell_limit:\"\\u0414\\u043e\\u0441\\u0442\\u0438\\u0433\\u043d\\u0443\\u0442 \\u043c\\u0430\\u043a\\u0441\\u0438\\u043c\\u0430\\u043b\\u044c\\u043d\\u0432\\u0439 \\u043f\\u0440\\u0435\\u0434\\u0435\\u043b, \\u0432 $ \\u044f\\u0447\\u0435\\u0435\\u043a.\",row_limit:\"\\u0414\\u043e\\u0441\\u0442\\u0438\\u0433\\u043d\\u0443\\u0442 \\u043c\\u0430\\u043a\\u0441\\u0438\\u043c\\u0430\\u043b\\u044c\\u043d\\u0432\\u0439 \\u043f\\u0440\\u0435\\u0434\\u0435\\u043b, \\u0432 $ \\u0441\\u0442\\u0440\\u043e\\u043a.\",col_limit:\"\\u0414\\u043e\\u0441\\u0442\\u0438\\u0433\\u043d\\u0443\\u0442 \\u043c\\u0430\\u043a\\u0441\\u0438\\u043c\\u0430\\u043b\\u044c\\u043d\\u0432\\u0439 \\u043f\\u0440\\u0435\\u0434\\u0435\\u043b, \\u0432 $ \\u043a\\u043e\\u043b\\u043e\\u043d\\u043e\\u043a.\",colgroup:\"\\u0413\\u0440\\u0443\\u043f\\u043f\\u0430 \\u0441\\u0442\\u043e\\u043b\\u0431\\u0446\\u043e\\u0432\",rowgroup:\"\\u0413\\u0440\\u0443\\u043f\\u043f\\u0430 \\u0441\\u0442\\u0440\\u043e\\u043a\",scope:\"\\u041e\\u0431\\u043b\\u0430\\u0441\\u0442\\u044c\",tfoot:\"\\u0417\\u0430\\u0432\\u0435\\u0440\\u0448\\u0435\\u043d\\u0438\\u0435\",tbody:\"\\u0422\\u0435\\u043b\\u043e\",thead:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a\",row_all:\"\\u041e\\u0431\\u043d\\u043e\\u0432\\u0438\\u0442\\u044c \\u0432\\u0441\\u0435 \\u0441\\u0442\\u0440\\u043e\\u043a\\u0438 \\u0432 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0435\",row_even:\"\\u041e\\u0431\\u043d\\u043e\\u0432\\u0438\\u0442\\u044c \\u0447\\u0435\\u0442\\u043d\\u044b\\u0435 \\u0441\\u0442\\u0440\\u043e\\u043a\\u0438 \\u0432 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0435\",row_odd:\"\\u041e\\u0431\\u043d\\u043e\\u0432\\u0438\\u0442\\u044c \\u043d\\u0435\\u0447\\u0435\\u0442\\u043d\\u044b\\u0435 \\u0441\\u0442\\u0440\\u043e\\u043a\\u0438 \\u0432 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0435\",row_row:\"\\u041e\\u0431\\u043d\\u043e\\u0432\\u0438\\u0442\\u044c \\u0442\\u0435\\u043a\\u0443\\u0449\\u0443\\u044e \\u0441\\u0442\\u0440\\u043e\\u043a\\u0443\",cell_all:\"\\u041e\\u0431\\u043d\\u043e\\u0432\\u0438\\u0442\\u044c \\u0432\\u0441\\u0435 \\u044f\\u0447\\u0435\\u0439\\u043a\\u0438 \\u0432 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0435\",cell_row:\"\\u041e\\u0431\\u043d\\u043e\\u0432\\u0438\\u0442\\u044c \\u0432\\u0441\\u0435 \\u044f\\u0447\\u0435\\u0439\\u043a\\u0438 \\u0432 \\u0441\\u0442\\u0440\\u043e\\u043a\\u0435\",cell_cell:\"\\u041e\\u0431\\u043d\\u043e\\u0432\\u0438\\u0442\\u044c \\u0442\\u0435\\u043a\\u0443\\u0449\\u0443\\u044e \\u044f\\u0447\\u0435\\u0439\\u043a\\u0443\",th:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a\",td:\"\\u0414\\u0430\\u043d\\u043d\\u044b\\u0435\",summary:\"\\u041e\\u0431\\u0449\\u0435\\u0435\",bgimage:\"\\u0424\\u043e\\u043d\\u043e\\u0432\\u043e\\u0435 \\u0438\\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u0438\\u0435\",rtl:\"\\u0421\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043d\\u0430\\u043b\\u0435\\u0432\\u043e\",ltr:\"\\u0421\\u043b\\u0435\\u0432\\u0430 \\u043d\\u0430\\u043f\\u0440\\u0430\\u0432\\u043e\",mime:\"MIME \\u0442\\u0438\\u043f \\u0446\\u0435\\u043b\\u0438\",langcode:\"\\u041a\\u043e\\u0434 \\u044f\\u0437\\u044b\\u043a\\u0430\",langdir:\"\\u041d\\u0430\\u043f\\u0440\\u0430\\u0432\\u043b\\u0435\\u043d\\u0438\\u0435 \\u0442\\u0435\\u043a\\u0441\\u0442\\u0430\",style:\"\\u0421\\u0442\\u0438\\u043b\\u044c\",id:\"\\u0418\\u043c\\u044f\",merge_cells_title:\"\\u041e\\u0431\\u044a\\u0435\\u0434\\u0438\\u043d\\u0438\\u0442\\u044c \\u044f\\u0447\\u0435\\u0439\\u043a\\u0438\",bgcolor:\"\\u0426\\u0432\\u0435\\u0442 \\u0437\\u0430\\u043b\\u0438\\u0432\\u043a\\u0438\",bordercolor:\"\\u0426\\u0432\\u0435\\u0442 \\u0433\\u0440\\u0430\\u043d\\u0438\\u0446\\u044b\",align_bottom:\"\\u041f\\u043e \\u043d\\u0438\\u0436\\u043d\\u0435\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",align_top:\"\\u041f\\u043e \\u0432\\u0435\\u0440\\u0445\\u043d\\u0435\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",valign:\"\\u0412\\u0435\\u0440\\u0442. \\u0432\\u044b\\u0440\\u0430\\u0432\\u043d\\u0438\\u0432\\u0430\\u043d\\u0438\\u0435\",cell_type:\"\\u0422\\u0438\\u043f\",cell_title:\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b \\u044f\\u0447\\u0435\\u0439\\u043a\\u0438\",row_title:\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b \\u0441\\u0442\\u0440\\u043e\\u043a\\u0438\",align_middle:\"\\u041f\\u043e \\u0446\\u0435\\u043d\\u0442\\u0440\\u0443\",align_right:\"\\u041f\\u043e \\u043f\\u0440\\u0430\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",align_left:\"\\u041f\\u043e \\u043b\\u0435\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",align_default:\"\\u041f\\u043e \\u0443\\u043c\\u043e\\u043b\\u0447\\u0430\\u043d\\u0438\\u044e\",align:\"\\u0412\\u044b\\u0440\\u0430\\u0432\\u043d\\u0438\\u0432\\u0430\\u043d\\u0438\\u0435\",border:\"\\u0413\\u0440\\u0430\\u043d\\u0438\\u0446\\u0430\",cellpadding:\"\\u041e\\u0442\\u0441\\u0442\\u0443\\u043f\\u044b \\u0432 \\u044f\\u0447\\u0435\\u0439\\u043a\\u0430\\u0445\",cellspacing:\"\\u0420\\u0430\\u0441\\u0441\\u0442\\u043e\\u044f\\u043d\\u0438\\u0435 \\u043c\\u0435\\u0436\\u0434\\u0443 \\u044f\\u0447\\u0435\\u0439\\u043a\\u0430\\u043c\\u0438\",rows:\"\\u0421\\u0442\\u0440\\u043e\\u043a\\u0438\",cols:\"\\u0421\\u0442\\u043e\\u043b\\u0431\\u0446\\u044b\",height:\"\\u0412\\u044b\\u0441\\u043e\\u0442\\u0430\",width:\"\\u0428\\u0438\\u0440\\u0438\\u043d\\u0430\",title:\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u044b\",rowtype:\"\\u0422\\u0438\\u043f \\u0441\\u0442\\u0440\\u043e\\u043a\\u0438\",advanced_props:\"\\u0414\\u043e\\u043f\\u043e\\u043b\\u043d\\u0438\\u0442\\u0435\\u043b\\u044c\\u043d\\u044b\\u0435 \\u043f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b\",general_props:\"\\u041e\\u0431\\u0449\\u0438\\u0435 \\u043f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b\",advanced_tab:\"\\u0414\\u043e\\u043f\\u043e\\u043b\\u043d\\u0438\\u0442\\u0435\\u043b\\u044c\\u043d\\u043e\",general_tab:\"\\u041e\\u0431\\u0449\\u0435\\u0435\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/sr_dlg.js",
    "content": "tinyMCE.addI18n('sr.table_dlg',{rules_border:\"sve ivice\",rules_box:\"sve strane\",rules_vsides:\"levo i desno\",rules_rhs:\"samo desno\",rules_lhs:\"samo levo\",rules_hsides:\"gornja i donja\",rules_below:\"ispod\",rules_above:\"iznad\",rules_void:\"prazno\",rules:\"Linije\",frame_all:\"sve\",frame_cols:\"kolone\",frame_rows:\"redovi\",frame_groups:\"grupe\",frame_none:\"bez rama\",frame:\"ram\",caption:\"Opis tabele\",missing_scope:\"Da li ste sigurni da \\u017eelite da nastavite a da niste definisali obim \\u0107elije zaglavlja tabele. Kada nije definisan, korisnicima sa smetnjama u razvoju mo\\u017eda ne\\u0107e biti razumljiv njihov sadr\\u017eaj.\",cell_limit:\"Prema\\u0161ili ste maksimalni broj \\u0107elija ({$cells}).\",row_limit:\"Prema\\u0161ili ste maksimalni broj redova ({$rows}).\",col_limit:\"Prema\\u0161ili ste maksimalni broj kolona ({$cols}).\",colgroup:\"Grupa kolona\",rowgroup:\"Grupa redova\",scope:\"Obim\",tfoot:\"Podno\\u017eje tabele\",tbody:\"Sadr\\u017eaj tabele\",thead:\"Zaglavlje tabele\",row_all:\"Primeni na sve redove u tabeli\",row_even:\"Primeni na parne redove u tabeli\",row_odd:\"Primeni na neparne redove u tabeli\",row_row:\"Primeni na izabrani red\",cell_all:\"Primeni na sve \\u0107elije u tabeli\",cell_row:\"Primeni na sve \\u0107elije u redu\",cell_cell:\"Primeni na izabranu \\u0107eliju\",th:\"Zaglavlje\",td:\"Podaci\",summary:\"Prikaz\",bgimage:\"Slika pozadine\",rtl:\"S desna na levo\",ltr:\"S leva na desno\",mime:\"MIME tip\",langcode:\"Kod jezika\",langdir:\"Smer jezika\",style:\"Stil\",id:\"Id\",merge_cells_title:\"Spoji \\u0107elije\",bgcolor:\"Boja pozadine\",bordercolor:\"Boja ivice\",align_bottom:\"Dno\",align_top:\"Vrh\",valign:\"Vertikalno poravnavanje\",cell_type:\"Tip \\u0107elije\",cell_title:\"Svojstva \\u0107elije\",row_title:\"Svojstva reda\",align_middle:\"Sredina\",align_right:\"Desno\",align_left:\"Levo\",align_default:\"Zadato\",align:\"Poravnavanje\",border:\"Ivica\",cellpadding:\"Dopuna \\u0107elije\",cellspacing:\"Razmak \\u0107elija\",rows:\"Redova\",cols:\"Kolona\",height:\"Visina\",width:\"\\u0160irina\",title:\"Ubaci/uredi tabelu\",rowtype:\"Red u tabeli\",advanced_props:\"Napredna svojstva\",general_props:\"Osnovna svojstva\",advanced_tab:\"Napredno\",general_tab:\"Osnovno\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/sv_dlg.js",
    "content": "tinyMCE.addI18n('sv.table_dlg',{\"rules_border\":\"border\",\"rules_box\":\"box\",\"rules_vsides\":\"vsides\",\"rules_rhs\":\"rhs\",\"rules_lhs\":\"lhs\",\"rules_hsides\":\"hsides\",\"rules_below\":\"below\",\"rules_above\":\"above\",\"rules_void\":\"void\",rules:\"Regler\",\"frame_all\":\"all\",\"frame_cols\":\"cols\",\"frame_rows\":\"rows\",\"frame_groups\":\"groups\",\"frame_none\":\"none\",frame:\"Ram\",caption:\"\\u00d6verskrift\",\"missing_scope\":\"\\u00d6\\u0084r du s\\u00e4ker p\\u00e5 att du vill forts\\u00e4tta utan att ange en omfattning, denna underl\\u00e4ttar f\\u00f6r icke-grafiska webbl\\u00e4sare.\",\"cell_limit\":\"Du kan inte skapa en tabell med fler \\u00e4n {$cells} celler.\",\"row_limit\":\"Du kan inte ange fler \\u00e4n {$rows} rader.\",\"col_limit\":\"Du kan inte ange fler \\u00e4n {$cols} kolumner.\",colgroup:\"Kolumngrupp\",rowgroup:\"Radgrupp\",scope:\"Omfattning\",tfoot:\"tabellfot\",tbody:\"tabellkropp\",thead:\"tabellhuvud\",\"row_all\":\"Uppdatera alla rader i tabellen\",\"row_even\":\"Uppdatera j\\u00e4mna rader i tabellen\",\"row_odd\":\"Uppdatera udda rader i tabellen\",\"row_row\":\"Uppdatera nuvarande rad\",\"cell_all\":\"Uppdatera alla celler i tabellen\",\"cell_row\":\"Uppdatera alla celler i raden\",\"cell_cell\":\"Uppdatera nuvarande cell\",th:\"Huvud\",td:\"Data\",summary:\"Sammanfattning\",bgimage:\"Bakgrundsbild\",rtl:\"H\\u00f6ger till v\\u00e4nster\",ltr:\"V\\u00e4nster till h\\u00f6ger\",mime:\"Target MIME type\",langcode:\"Spr\\u00e5kkod\",langdir:\"Skriftriktning\",style:\"Stil\",id:\"Id\",\"merge_cells_title\":\"Sammanfoga celler\",bgcolor:\"Bakgrundsf\\u00e4rg\",bordercolor:\"Ramf\\u00e4rg\",\"align_bottom\":\"Botten\",\"align_top\":\"Toppen\",valign:\"Vertikal justering\",\"cell_type\":\"Celltyp\",\"cell_title\":\"Tabellcellsinst\\u00e4llningar\",\"row_title\":\"Tabellradsinst\\u00e4llningar\",\"align_middle\":\"Mitten\",\"align_right\":\"H\\u00f6ger\",\"align_left\":\"V\\u00e4nster\",\"align_default\":\"Ingen\",align:\"Justering\",border:\"Ram\",cellpadding:\"Cellpadding\",cellspacing:\"Cellspacing\",rows:\"Rader\",cols:\"Kolumner\",height:\"H\\u00f6jd\",width:\"Bredd\",title:\"Infoga/redigera ny tabell\",rowtype:\"Radtyp\",\"advanced_props\":\"Avancerade inst\\u00e4llningar\",\"general_props\":\"Generella inst\\u00e4llningar\",\"advanced_tab\":\"Avancerat\",\"general_tab\":\"Generellt\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/tr_dlg.js",
    "content": "tinyMCE.addI18n('tr.table_dlg',{\"rules_border\":\"kenarl\\u0131k\",\"rules_box\":\"kutu\",\"rules_vsides\":\"dikey kenarlar\",\"rules_rhs\":\"sa\\u011f yatay kenarlar\",\"rules_lhs\":\"sol yatay kenarlar\",\"rules_hsides\":\"yatay kenarlar\",\"rules_below\":\"alt\\u0131nda\",\"rules_above\":\"\\u00fcst\\u00fcnde\",\"rules_void\":\"yok\",rules:\"\\u00c7izgiler\",\"frame_all\":\"t\\u00fcm\\u00fc\",\"frame_cols\":\"s\\u00fctunlar\",\"frame_rows\":\"sat\\u0131rlar\",\"frame_groups\":\"gruplar\",\"frame_none\":\"hi\\u00e7biri\",frame:\"\\u00c7er\\u00e7eve\",caption:\"Tablo ba\\u015fl\\u0131\\u011f\\u0131\",\"missing_scope\":\"Tablo ba\\u015fl\\u0131k h\\u00fccresi i\\u00e7in bir kapsam belirlemeden devam etmek istedi\\u011finize emin misiniz? Bu de\\u011fer olmadan, engelli kullan\\u0131c\\u0131lar  tabloda g\\u00f6sterilen verileri ve i\\u00e7eri\\u011fi anlamas\\u0131 zordur.\",\"cell_limit\":\"Maksimum h\\u00fccre say\\u0131s\\u0131 ($cells) a\\u015f\\u0131ld\\u0131.\",\"row_limit\":\"Maksimum sat\\u0131r say\\u0131s\\u0131 ($rows) a\\u015f\\u0131ld\\u0131.\",\"col_limit\":\"Maksimum s\\u00fctun say\\u0131s\\u0131 ($cols) a\\u015f\\u0131ld\\u0131.\",colgroup:\"S\\u00fctun Grubu\",rowgroup:\"Sat\\u0131r Grubu\",scope:\"Kapsam\",tfoot:\"Tablo Alt\\u0131\",tbody:\"Tablo G\\u00f6vdesi\",thead:\"Tablo Ba\\u015fl\\u0131\\u011f\\u0131\",\"row_all\":\"Tablodaki t\\u00fcm sat\\u0131rlar\\u0131 g\\u00fcncelle\",\"row_even\":\"Tablodaki \\u00e7ift nolu sat\\u0131rlar\\u0131 g\\u00fcncelle\",\"row_odd\":\"Tablodaki tek nolu sat\\u0131rlar\\u0131 g\\u00fcncelle\",\"row_row\":\"Se\\u00e7ili sat\\u0131r\\u0131 g\\u00fcncelle\",\"cell_all\":\"Tablodaki t\\u00fcm h\\u00fccreleri g\\u00fcncelle\",\"cell_row\":\"Sat\\u0131rdaki t\\u00fcm h\\u00fccreleri g\\u00fcncelle\",\"cell_cell\":\"Se\\u00e7ili h\\u00fccreleri g\\u00fcncelle\",th:\"Ba\\u015fl\\u0131k\",td:\"Veri\",summary:\"\\u00d6zet\",bgimage:\"Arkaplan resmi\",rtl:\"Soldan sa\\u011fa\",ltr:\"Sa\\u011fdan sola\",mime:\"Hedef MIME tipi\",langcode:\"Dil kodu\",langdir:\"Dil y\\u00f6n\\u00fc\",style:\"Stil\",id:\"Id\",\"merge_cells_title\":\"Tablo h\\u00fccrelerini birle\\u015ftir\",bgcolor:\"Arkaplan rengi\",bordercolor:\"Kenarl\\u0131k rengi\",\"align_bottom\":\"Alt\",\"align_top\":\"\\u00dcst\",valign:\"Dikey hizalama\",\"cell_type\":\"H\\u00fccre tipi\",\"cell_title\":\"Tablo h\\u00fccre \\u00f6zellikleri\",\"row_title\":\"Tablo sat\\u0131r \\u00f6zellikleri\",\"align_middle\":\"Orta\",\"align_right\":\"Sa\\u011f\",\"align_left\":\"Sol\",\"align_default\":\"Varsay\\u0131lan\",align:\"Hizalama\",border:\"Kenarl\\u0131k\",cellpadding:\"H\\u00fccre d\\u0131\\u015f\\u0131 bo\\u015flu\\u011fu\",cellspacing:\"H\\u00fccre i\\u00e7i bo\\u015flu\\u011fu\",rows:\"Sat\\u0131rlar\",cols:\"S\\u00fctunlar\",height:\"Y\\u00fckseklik\",width:\"Geni\\u015flik\",title:\"Tablo Ekle/D\\u00fczenle\",rowtype:\"Tablo b\\u00f6l\\u00fcm\\u00fcndeki sat\\u0131r\",\"advanced_props\":\"Geli\\u015fmi\\u015f \\u00f6zellikler\",\"general_props\":\"Genel \\u00f6zellikler\",\"advanced_tab\":\"Geli\\u015fmi\\u015f\",\"general_tab\":\"Genel\",\"cell_col\":\"S\\u00fctundaki b\\u00fct\\u00fcn h\\u00fccreleri g\\u00fcncelle\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/uk_dlg.js",
    "content": "tinyMCE.addI18n('uk.table_dlg',{\"rules_border\":\"\\u0440\\u0430\\u043c\\u043a\\u0430\",\"rules_box\":\"\\u0431\\u043e\\u043a\\u0441\",\"rules_vsides\":\"v-\\u0441\\u0442\\u043e\\u0440\\u043e\\u043d\\u0438\",\"rules_rhs\":\"rhs\",\"rules_lhs\":\"lhs\",\"rules_hsides\":\"h-\\u0441\\u0442\\u043e\\u0440\\u043e\\u043d\\u0438\",\"rules_below\":\"\\u0437\\u043d\\u0438\\u0437\\u0443\",\"rules_above\":\"\\u0437\\u0432\\u0435\\u0440\\u0445\\u0443\",\"rules_void\":\"\\u043f\\u0443\\u0441\\u0442\\u043e\",rules:\"\\u041f\\u0440\\u0430\\u0432\\u0438\\u043b\\u0430\",\"frame_all\":\"\\u0432\\u0441\\u0456\",\"frame_cols\":\"\\u0441\\u0442\\u043e\\u0432\\u043f\\u0446\\u0456\",\"frame_rows\":\"\\u0440\\u044f\\u0434\\u043a\\u0438\",\"frame_groups\":\"\\u0433\\u0440\\u0443\\u043f\\u0438\",\"frame_none\":\"\\u043d\\u0456\\u044f\\u043a\\u0438\\u0439\",frame:\"\\u0424\\u0440\\u0435\\u0439\\u043c\",caption:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0456\",\"missing_scope\":\"\\u0412\\u0438 \\u0432\\u043f\\u0435\\u0432\\u043d\\u0435\\u043d\\u0456, \\u0449\\u043e \\u0431\\u0430\\u0436\\u0430\\u0454\\u0442\\u0435 \\u043f\\u0440\\u043e\\u0434\\u043e\\u0432\\u0436\\u0438\\u0442\\u0438 \\u043d\\u0435 \\u0432\\u043a\\u0430\\u0437\\u0430\\u0432\\u0448\\u0438 \\u043c\\u0435\\u0436\\u0456 \\u0434\\u043b\\u044f \\u0446\\u0456\\u0454\\u0457 \\u043a\\u043e\\u043c\\u0456\\u0440\\u043a\\u0438 \\u0437\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043a\\u0443. \\u0411\\u0435\\u0437 \\u0446\\u044c\\u043e\\u0433\\u043e \\u0434\\u0435\\u044f\\u043a\\u0438\\u043c \\u043a\\u043e\\u0440\\u0438\\u0441\\u0442\\u0443\\u0432\\u0430\\u0447\\u0430\\u043c \\u0431\\u0443\\u0434\\u0435 \\u0432\\u0430\\u0436\\u043a\\u043e \\u0437\\u0440\\u043e\\u0437\\u0443\\u043c\\u0456\\u0442\\u0438 \\u0437\\u043c\\u0456\\u0441\\u0442 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0456.\",\"cell_limit\":\"\\u0412\\u0438 \\u043f\\u0435\\u0440\\u0435\\u0432\\u0438\\u0449\\u0438\\u043b\\u0438 \\u043c\\u0430\\u043a\\u0441\\u0438\\u043c\\u0430\\u043b\\u044c\\u043d\\u0443 \\u043a\\u0456\\u043b\\u044c\\u043a\\u0456\\u0441\\u0442\\u044c \\u043a\\u043e\\u043c\\u0456\\u0440\\u043e\\u043a: {$cells}.\",\"row_limit\":\"\\u0412\\u0438 \\u043f\\u0435\\u0440\\u0435\\u0432\\u0438\\u0449\\u0438\\u043b\\u0438 \\u043c\\u0430\\u043a\\u0441\\u0438\\u043c\\u0430\\u043b\\u044c\\u043d\\u0443 \\u043a\\u0456\\u043b\\u044c\\u043a\\u0456\\u0441\\u0442\\u044c \\u0440\\u044f\\u0434\\u043a\\u0456\\u0432: {$rows}.\",\"col_limit\":\"\\u0412\\u0438 \\u043f\\u0435\\u0440\\u0435\\u0432\\u0438\\u0449\\u0438\\u043b\\u0438 \\u043c\\u0430\\u043a\\u0441\\u0438\\u043c\\u0430\\u043b\\u044c\\u043d\\u0443 \\u043a\\u0456\\u043b\\u044c\\u043a\\u0456\\u0441\\u0442\\u044c \\u0441\\u0442\\u043e\\u0432\\u043f\\u0446\\u0456\\u0432: {$cols}.\",colgroup:\"\\u0413\\u0440\\u0443\\u043f\\u0430 \\u0441\\u0442\\u043e\\u0432\\u043f\\u0446\\u0456\\u0432\",rowgroup:\"\\u0413\\u0440\\u0443\\u043f\\u0430 \\u043a\\u043e\\u043c\\u0456\\u0440\\u043e\\u043a\",scope:\"\\u0420\\u043e\\u0437\\u043c\\u0430\\u0445\",tfoot:\"\\u041d\\u0438\\u0436\\u043d\\u044f \\u0447\\u0430\\u0441\\u0442\\u0438\\u043d\\u0430\",tbody:\"\\u0422\\u0456\\u043b\\u043e \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0456\",thead:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0456\",\"row_all\":\"\\u041e\\u043d\\u043e\\u0432\\u0438\\u0442\\u0438 \\u0432\\u0441\\u0456 \\u0440\\u044f\\u0434\\u043a\\u0438 \\u0432 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0456\",\"row_even\":\"\\u041e\\u043d\\u043e\\u0432\\u0438\\u0442\\u0438 \\u043f\\u0430\\u0440\\u043d\\u0456 \\u0440\\u044f\\u0434\\u043a\\u0438 \\u0432 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0456\",\"row_odd\":\"\\u041e\\u043d\\u043e\\u0432\\u0438\\u0442\\u0438 \\u043d\\u0435\\u043f\\u0430\\u0440\\u043d\\u0456 \\u0440\\u044f\\u0434\\u043a\\u0438 \\u0432 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\",\"row_row\":\"\\u041e\\u043d\\u043e\\u0432\\u0438\\u0442\\u0438 \\u043f\\u043e\\u0442\\u043e\\u0447\\u043d\\u0438\\u0439 \\u0440\\u044f\\u0434\\u043e\\u043a\",\"cell_all\":\"\\u041e\\u043d\\u043e\\u0432\\u0438\\u0442\\u0438 \\u0432\\u0441\\u0456 \\u043a\\u043e\\u043c\\u0456\\u0440\\u043a\\u0438 \\u0432 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0456\",\"cell_row\":\"\\u041e\\u043d\\u043e\\u0432\\u0438\\u0442\\u0438 \\u0432\\u0441\\u0456 \\u043a\\u043e\\u043c\\u0456\\u0440\\u043a\\u0438 \\u0432 \\u0440\\u044f\\u0434\\u043a\\u0443\",\"cell_cell\":\"\\u041e\\u043d\\u043e\\u0432\\u0438\\u0442\\u0438 \\u043f\\u043e\\u0442\\u043e\\u0447\\u043d\\u0443 \\u043a\\u043e\\u043c\\u0456\\u0440\\u043a\\u0443\",th:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a\",td:\"\\u0414\\u0430\\u043d\\u043d\\u0456\",summary:\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u044c\\u043d\\u0435\",bgimage:\"\\u0424\\u043e\\u043d\\u043e\\u0432\\u0435 \\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u043d\\u044f\",rtl:\"\\u0421\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043d\\u0430\\u043b\\u0456\\u0432\\u043e\",ltr:\"\\u0417\\u043b\\u0456\\u0432\\u0430 \\u043d\\u0430\\u043f\\u0440\\u0430\\u0432\\u043e\",mime:\"MIME-\\u0442\\u0438\\u043f \\u0446\\u0456\\u043b\\u0456\",langcode:\"\\u041a\\u043e\\u0434 \\u043c\\u043e\\u0432\\u0438\",langdir:\"\\u041d\\u0430\\u043f\\u0440\\u044f\\u043c \\u043c\\u043e\\u0432\\u0438\",style:\"\\u0421\\u0442\\u0438\\u043b\\u044c\",id:\"\\u0406\\u0434\\u0435\\u043d\\u0442\\u0438\\u0444\\u0456\\u043a\\u0430\\u0442\\u043e\\u0440\",\"merge_cells_title\":\"\\u041e\\u0431\\'\\u0454\\u0434\\u043d\\u0430\\u0442\\u0438 \\u043a\\u043e\\u043c\\u0456\\u0440\\u043a\\u0438\",bgcolor:\"\\u041a\\u043e\\u043b\\u0456\\u0440 \\u0444\\u043e\\u043d\\u0443\",bordercolor:\"\\u041a\\u043e\\u043b\\u0456\\u0440 \\u0433\\u0440\\u0430\\u043d\\u0438\\u0446\\u0456\",\"align_bottom\":\"\\u041f\\u043e \\u043d\\u0438\\u0436\\u043d\\u044c\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"align_top\":\"\\u041f\\u043e \\u0432\\u0435\\u0440\\u0445\\u043d\\u0435\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",valign:\"\\u0412\\u0435\\u0440\\u0442\\u0438\\u043a\\u0430\\u043b\\u044c\\u043d\\u0435 \\u0432\\u0438\\u0440\\u0456\\u0432\\u043d\\u044e\\u0432\\u0430\\u043d\\u043d\\u044f\",\"cell_type\":\"\\u0422\\u0438\\u043f \\u043a\\u043e\\u043c\\u0456\\u0440\\u043a\\u0438\",\"cell_title\":\"\\u0412\\u043b\\u0430\\u0441\\u0442\\u0438\\u0432\\u043e\\u0441\\u0442\\u0456 \\u043a\\u043e\\u043c\\u0456\\u0440\\u043a\\u0438 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0456\",\"row_title\":\"\\u0412\\u043b\\u0430\\u0441\\u0442\\u0438\\u0432\\u043e\\u0441\\u0442\\u0456 \\u0440\\u044f\\u0434\\u043a\\u0443 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0456\",\"align_middle\":\"\\u041f\\u043e \\u0446\\u0435\\u043d\\u0442\\u0440\\u0443\",\"align_right\":\"\\u041f\\u043e \\u043f\\u0440\\u0430\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"align_left\":\"\\u041f\\u043e \\u043b\\u0456\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"align_default\":\"\\u0417\\u0430 \\u0437\\u0430\\u043c\\u043e\\u0432\\u0447\\u0430\\u043d\\u043d\\u044f\\u043c\",align:\"\\u0412\\u0438\\u0440\\u0456\\u0432\\u043d\\u044e\\u0432\\u0430\\u043d\\u043d\\u044f\",border:\"\\u0420\\u0430\\u043c\\u043a\\u0430\",cellpadding:\"\\u0412\\u0456\\u0434\\u0441\\u0442\\u0443\\u043f\\u0438 \\u0443 \\u043a\\u043e\\u043c\\u0456\\u0440\\u043a\\u0430\\u0445\",cellspacing:\"\\u0412\\u0456\\u0434\\u0441\\u0442\\u0430\\u043d\\u044c \\u043c\\u0456\\u0436 \\u043a\\u043e\\u043c\\u0456\\u0440\\u043a\\u0430\\u043c\\u0438\",rows:\"\\u0420\\u044f\\u0434\\u043a\\u0438\",cols:\"\\u0421\\u0442\\u043e\\u0432\\u043f\\u0446\\u0456\",height:\"\\u0412\\u0438\\u0441\\u043e\\u0442\\u0430\",width:\"\\u0428\\u0438\\u0440\\u0438\\u043d\\u0430\",title:\"\\u0414\\u043e\\u0434\\u0430\\u0442\\u0438/\\u0417\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u044e\",rowtype:\"\\u0420\\u044f\\u0434\\u043e\\u043a \\u0432 \\u0447\\u0430\\u0441\\u0442\\u0438\\u043d\\u0456 \\u0442\\u0430\\u0431\\u043b\\u0438\\u0446\\u0456\",\"advanced_props\":\"\\u0420\\u043e\\u0437\\u0448\\u0438\\u0440\\u0435\\u043d\\u0456 \\u0432\\u043b\\u0430\\u0441\\u0442\\u0438\\u0432\\u043e\\u0441\\u0442\\u0456\",\"general_props\":\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u044c\\u043d\\u0456 \\u0432\\u043b\\u0430\\u0441\\u0442\\u0438\\u0432\\u043e\\u0441\\u0442\\u0456\",\"advanced_tab\":\"\\u0414\\u043e\\u0434\\u0430\\u0442\\u043a\\u043e\\u0432\\u043e\",\"general_tab\":\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u044c\\u043d\\u0435\",\"cell_col\":\"\\u041e\\u043d\\u043e\\u0432\\u0438\\u0442\\u0438 \\u0432\\u0441\\u0456 \\u043a\\u043b\\u0456\\u0442\\u0438\\u043d\\u043a\\u0438 \\u0432 \\u043a\\u043e\\u043b\\u043e\\u043d\\u0446\\u0456\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/zh-tw_dlg.js",
    "content": "tinyMCE.addI18n('zh-tw.table_dlg',{\"rules_border\":\"\\u908a\\u6846\",\"rules_box\":\"\\u6846\",\"rules_vsides\":\"\\u5782\\u76f4\",\"rules_rhs\":\"\\u53f3\\u908a\",\"rules_lhs\":\"\\u5de6\\u908a\",\"rules_hsides\":\"\\u6c34\\u5e73\",\"rules_below\":\"\\u4e0b\\u65b9\",\"rules_above\":\"\\u4e0a\\u65b9\",\"rules_void\":\"\\u7121\\u6548\",rules:\"\\u898f\\u5247\",\"frame_all\":\"\\u5168\\u90e8\",\"frame_cols\":\"\\u6b04\",\"frame_rows\":\"\\u5217\",\"frame_groups\":\"\\u7fa4\\u7d44\",\"frame_none\":\"\\u7121\",frame:\"\\u6846\\u67b6\",caption:\"\\u8868\\u683c\\u8aaa\\u660e\",\"missing_scope\":\"\\u60a8\\u8868\\u683c\\u7b2c\\u4e00\\u884c\\u7684\\u8868\\u683c\\u6c92\\u6709\\u8a2d\\u5b9a\\u6a19\\u984c\\u5132\\u5b58\\u683c (TH)\\uff0c\\u9019\\u53ef\\u80fd\\u4e0d\\u5229\\u65bc\\u7db2\\u9801 SEO \\u8207 \\u7121\\u969c\\u7919\\u7a7a\\u9593\\u898f\\u7bc4\\uff0c\\u60a8\\u78ba\\u5b9a\\u8981\\u5ffd\\u7565\\u9019\\u500b\\u55ce\\uff1f\",\"cell_limit\":\"\\u8868\\u683c\\u5167\\u7684\\u683c\\u5b57\\u592a\\u591a\\uff0c\\u529f\\u80fd\\u7121\\u6cd5\\u904b\\u4f5c\\uff0c\\u5df2\\u7d93\\u8d85\\u904e {$cells} \\u500b\\u3002\",\"row_limit\":\"\\u8868\\u683c\\u5167\\u7684\\u5217\\u6578\\u592a\\u591a\\uff0c\\u529f\\u80fd\\u7121\\u6cd5\\u904b\\u4f5c\\uff0c\\u5df2\\u7d93\\u8d85\\u904e {$rows} \\u5217\\u3002\",\"col_limit\":\"\\u8868\\u683c\\u5167\\u7684\\u6b04\\u4f4d\\u592a\\u591a\\uff0c\\u529f\\u80fd\\u7121\\u6cd5\\u904b\\u4f5c\\uff0c\\u5df2\\u7d93\\u8d85\\u904e {$cols} \\u6b04\\u3002\",colgroup:\"\\u6b04\\u4f4d\\u7fa4\\u7d44\",rowgroup:\"\\u5217\\u7fa4\\u7d44\",scope:\"\\u5957\\u7528\\u7bc4\\u570d\",tfoot:\"\\u8868\\u683c\\u5c3e\\u90e8\",tbody:\"\\u8868\\u683c\\u4e3b\\u9ad4\",thead:\"\\u8868\\u683c\\u4e0a\\u982d\",\"row_all\":\"\\u66f4\\u65b0\\u5168\\u90e8\\u7684\\u5217\",\"row_even\":\"\\u53ea\\u66f4\\u65b0\\u8868\\u683c\\u4e0a\\u7684\\u5076\\u6578\\u5217\",\"row_odd\":\"\\u53ea\\u66f4\\u65b0\\u8868\\u683c\\u4e0a\\u7684\\u5947\\u6578\\u5217\",\"row_row\":\"\\u53ea\\u66f4\\u65b0\\u76ee\\u524d\\u9019\\u5217\",\"cell_all\":\"\\u66f4\\u65b0\\u5168\\u90e8\\u5132\\u5b58\\u683c\",\"cell_row\":\"\\u66f4\\u65b0\\u76ee\\u524d\\u9019\\u5217\\u4e0a\\u7684\\u683c\\u5b50\",\"cell_cell\":\"\\u66f4\\u65b0\\u76ee\\u524d\\u7684\\u683c\\u5b50\\u5c31\\u597d\",th:\"\\u8868\\u982d\",td:\"\\u8cc7\\u6599\",summary:\"\\u8868\\u683c\\u6458\\u8981\",bgimage:\"\\u80cc\\u666f\\u5716\",rtl:\"\\u5f9e\\u53f3\\u5230\\u5de6\",ltr:\"\\u5f9e\\u5de6\\u5230\\u53f3\",mime:\"\\u76ee\\u6a19 MIME \\u985e\\u578b\",langcode:\"\\u8a9e\\u8a00\\u7de8\\u78bc\",langdir:\"\\u66f8\\u5beb\\u65b9\\u5411\",style:\"\\u6a23\\u5f0f\",id:\"\\u8868\\u683c\\u7684 ID\",\"merge_cells_title\":\"\\u5408\\u4f75\\u5132\\u5b58\\u683c\",bgcolor:\"\\u80cc\\u666f\\u984f\\u8272\",bordercolor:\"\\u908a\\u6846\\u7684\\u984f\\u8272\",\"align_bottom\":\"\\u9760\\u4e0b\",\"align_top\":\"\\u9760\\u4e0a\",valign:\"\\u5782\\u76f4\\u5c0d\\u9f4a\",\"cell_type\":\"\\u5132\\u5b58\\u683c\\u7684\\u5f62\\u5f0f\",\"cell_title\":\"\\u8868\\u683c\\u683c\\u5b50\\u7684\\u5c6c\\u6027\",\"row_title\":\"\\u8868\\u683c\\u5217\\u7684\\u5c6c\\u6027\",\"align_middle\":\"\\u4e2d\\u9593\",\"align_right\":\"\\u53f3\\u908a\",\"align_left\":\"\\u5de6\\u908a\",\"align_default\":\"\\u9810\\u8a2d\",align:\"\\u5c0d\\u9f4a\\u65b9\\u5f0f\",border:\"\\u908a\\u6846\",cellpadding:\"\\u683c\\u5b50\\u7684\\u5167\\u8ddd\",cellspacing:\"\\u683c\\u5b50\\u9593\\u7684\\u8ddd\\u96e2\",rows:\"\\u5217\",cols:\"\\u6b04\",height:\"\\u9ad8\\u5ea6\",width:\"\\u5bec\\u5ea6\",title:\"\\u52a0\\u5165 / \\u8a2d\\u5b9a\\u8868\\u683c\",rowtype:\"\\u76ee\\u524d\\u4f4d\\u7f6e\\u5217\\u7684\\u4f4d\\u7f6e\",\"advanced_props\":\"\\u66f4\\u591a\\u5c6c\\u6027\",\"general_props\":\"\\u5c6c\\u6027\\u8a2d\\u5b9a\",\"advanced_tab\":\"\\u66f4\\u591a\",\"general_tab\":\"\\u4e00\\u822c\",\"cell_col\":\"\\u66f4\\u65b0\\u9019\\u6b04\\u4e0b\\u7684\\u6240\\u6709\\u683c\\u5b50\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/langs/zh_dlg.js",
    "content": "tinyMCE.addI18n('zh.table_dlg',{\"rules_border\":\"\\u8fb9\\u6846\",\"rules_box\":\"\\u65b9\\u76d2\",\"rules_vsides\":\"\\u5782\\u76f4\",\"rules_rhs\":\"\\u53f3\\u8fb9\",\"rules_lhs\":\"\\u5de6\\u8fb9\",\"rules_hsides\":\"\\u6c34\\u5e73\",\"rules_below\":\"\\u4e0b\",\"rules_above\":\"\\u4e0a\",\"rules_void\":\"\\u7a7a\",rules:\"\\u89c4\\u5219\",\"frame_all\":\"\\u5168\\u90e8\",\"frame_cols\":\"\\u5217\\u8868\\u5934\",\"frame_rows\":\"\\u884c\\u8868\\u5934\",\"frame_groups\":\"\\u7fa4\\u7ec4\",\"frame_none\":\"\\u65e0\",frame:\"\\u6846\\u67b6\",caption:\"\\u8868\\u683c\\u6807\\u9898\",\"missing_scope\":\"\\u60a8\\u786e\\u5b9a\\u4e0d\\u4e3a\\u8868\\u5934\\u5355\\u5143\\u683c\\u6307\\u5b9a\\u4e00\\u4e2a\\u8303\\u56f4\\u5417\\uff1f\\u5982\\u679c\\u4e0d\\u6307\\u5b9a\\uff0c\\u5bf9\\u4f7f\\u7528\\u975e\\u53ef\\u89c6\\u6d4f\\u89c8\\u5668\\u7684\\u4f7f\\u7528\\u8005\\u5c06\\u66f4\\u96be\\u9605\\u8bfb\\u6216\\u7406\\u89e3\\u8868\\u683c\\u5185\\u5bb9\\u3002\",\"cell_limit\":\"\\u5df2\\u8fbe\\u5230\\u6700\\u591a {$cells} \\u4e2a\\u5355\\u5143\\u683c\\u7684\\u4e0a\\u9650\\u3002\",\"row_limit\":\"\\u5df2\\u8fbe\\u5230\\u6700\\u591a {$rows} \\u884c\\u5355\\u5143\\u683c\\u7684\\u4e0a\\u9650\\u3002\",\"col_limit\":\"\\u5df2\\u8fbe\\u5230\\u6700\\u591a {$cols} \\u5217\\u5355\\u5143\\u683c\\u7684\\u4e0a\\u9650\\u3002\",colgroup:\"\\u5217\\u7ec4\\u8868\\u5934\",rowgroup:\"\\u884c\\u7ec4\\u8868\\u5934\",scope:\"\\u8868\\u5934\\u8303\\u56f4\",tfoot:\"\\u8868\\u5c3e\",tbody:\"\\u8868\\u683c\\u4e3b\\u4f53\",thead:\"\\u8868\\u5934\",\"row_all\":\"\\u66f4\\u65b0\\u6240\\u6709\\u884c\",\"row_even\":\"\\u66f4\\u65b0\\u5076\\u6570\\u884c\",\"row_odd\":\"\\u66f4\\u65b0\\u5947\\u6570\\u884c\",\"row_row\":\"\\u66f4\\u65b0\\u5f53\\u524d\\u884c\",\"cell_all\":\"\\u66f4\\u65b0\\u6240\\u6709\\u5355\\u5143\\u683c\",\"cell_row\":\"\\u66f4\\u65b0\\u884c\\u4e2d\\u6240\\u6709\\u5355\\u5143\\u683c\",\"cell_cell\":\"\\u66f4\\u65b0\\u5f53\\u524d\\u5355\\u5143\\u683c\",th:\"\\u8868\\u5934\",td:\"\\u8868\\u683c\\u5185\\u5bb9\",summary:\"\\u8868\\u683c\\u6458\\u8981\",bgimage:\"\\u80cc\\u666f\\u56fe\\u7247\",rtl:\"\\u4ece\\u53f3\\u5230\\u5de6\",ltr:\"\\u4ece\\u5de6\\u5230\\u53f3\",mime:\"\\u76ee\\u6807MIME\\u7c7b\\u578b\",langcode:\"\\u8bed\\u8a00\\u4ee3\\u7801\",langdir:\"\\u8bed\\u8a00\\u4e66\\u5199\\u65b9\\u5411\",style:\"\\u6837\\u5f0f\",id:\"ID\",\"merge_cells_title\":\"\\u5408\\u5e76\\u5355\\u5143\\u683c\",bgcolor:\"\\u80cc\\u666f\\u989c\\u8272\",bordercolor:\"\\u8fb9\\u6846\\u989c\\u8272\",\"align_bottom\":\"\\u9760\\u4e0b\",\"align_top\":\"\\u9760\\u4e0a\",valign:\"\\u5782\\u76f4\\u5bf9\\u9f50\",\"cell_type\":\"\\u5355\\u5143\\u683c\\u7c7b\\u578b\",\"cell_title\":\"\\u5355\\u5143\\u683c\\u5c5e\\u6027\",\"row_title\":\"\\u884c\\u5c5e\\u6027\",\"align_middle\":\"\\u5c45\\u4e2d\\u5bf9\\u9f50\",\"align_right\":\"\\u9760\\u53f3\\u5bf9\\u9f50\",\"align_left\":\"\\u9760\\u5de6\\u5bf9\\u9f50\",\"align_default\":\"\\u9ed8\\u8ba4\",align:\"\\u5bf9\\u9f50\\u65b9\\u5411\",border:\"\\u8fb9\\u6846\",cellpadding:\"\\u5355\\u5143\\u683c\\u8fb9\\u8ddd\",cellspacing:\"\\u5355\\u5143\\u683c\\u95f4\\u8ddd\",rows:\"\\u884c\\u6570\",cols:\"\\u5217\\u6570\",height:\"\\u9ad8\",width:\"\\u5bbd\",title:\"\\u63d2\\u5165/\\u7f16\\u8f91\\u5355\\u5143\\u683c\",rowtype:\"\\u884c\\u7c7b\\u578b\",\"advanced_props\":\"\\u9ad8\\u7ea7\\u5c5e\\u6027\",\"general_props\":\"\\u666e\\u901a\\u5c5e\\u6027\",\"advanced_tab\":\"\\u9ad8\\u7ea7\",\"general_tab\":\"\\u666e\\u901a\",\"cell_col\":\"\\u66f4\\u65b0\\u5217\\u4e2d\\u6240\\u6709\\u5355\\u5143\\u683c\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/merge_cells.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#table_dlg.merge_cells_title}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/validate.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/merge_cells.js\"></script>\r\n</head>\r\n<body style=\"margin: 8px\" role=\"application\">\r\n<form onsubmit=\"MergeCellsDialog.merge();return false;\" action=\"#\">\r\n\t<fieldset>\r\n\t\t<legend>{#table_dlg.merge_cells_title}</legend>\r\n\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"3\" width=\"100%\">\r\n\t\t\t<tr>\r\n\t\t\t\t<td><label for=\"numcols\">{#table_dlg.cols}</label>:</td>\r\n\t\t\t\t<td align=\"right\"><input type=\"text\" id=\"numcols\" name=\"numcols\" value=\"\" class=\"number min1 mceFocus\" style=\"width: 30px\" aria-required=\"true\" /></td>\r\n\t\t\t</tr>\r\n\t\t\t<tr>\r\n\t\t\t\t<td><label for=\"numrows\">{#table_dlg.rows}</label>:</td>\r\n\t\t\t\t<td align=\"right\"><input type=\"text\" id=\"numrows\" name=\"numrows\" value=\"\" class=\"number min1\" style=\"width: 30px\" aria-required=\"true\" /></td>\r\n\t\t\t</tr>\r\n\t\t</table>\r\n\t</fieldset>\r\n\r\n\t<div class=\"mceActionPanel\">\r\n\t\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#update}\" />\r\n\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t</div>\r\n</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/row.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#table_dlg.row_title}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/form_utils.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/validate.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/editable_selects.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/row.js\"></script>\r\n\t<link href=\"css/row.css\" rel=\"stylesheet\" type=\"text/css\" />\r\n</head>\r\n<body id=\"tablerow\" style=\"display: none\" role=\"application\">\r\n\t<form onsubmit=\"updateAction();return false;\" action=\"#\">\r\n\t\t<div class=\"tabs\">\r\n\t\t\t<ul>\r\n\t\t\t\t<li id=\"general_tab\" class=\"current\" aria-controls=\"general_panel\"><span><a href=\"javascript:mcTabs.displayTab('general_tab','general_panel');\" onmousedown=\"return false;\">{#table_dlg.general_tab}</a></span></li>\r\n\t\t\t\t<li id=\"advanced_tab\" aria-controls=\"advanced_panel\"><span><a href=\"javascript:mcTabs.displayTab('advanced_tab','advanced_panel');\" onmousedown=\"return false;\">{#table_dlg.advanced_tab}</a></span></li>\r\n\t\t\t</ul>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"panel_wrapper\">\r\n\t\t\t<div id=\"general_panel\" class=\"panel current\">\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#table_dlg.general_props}</legend>\r\n\r\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"rowtype\">{#table_dlg.rowtype}</label></td>\r\n\t\t\t\t\t\t\t<td class=\"col2\">\r\n\t\t\t\t\t\t\t\t<select id=\"rowtype\" name=\"rowtype\" class=\"mceFocus\">\r\n\t\t\t\t\t\t\t\t\t<option value=\"thead\">{#table_dlg.thead}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"tbody\">{#table_dlg.tbody}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"tfoot\">{#table_dlg.tfoot}</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"align\">{#table_dlg.align}</label></td>\r\n\t\t\t\t\t\t\t<td class=\"col2\">\r\n\t\t\t\t\t\t\t\t<select id=\"align\" name=\"align\">\r\n\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"center\">{#table_dlg.align_middle}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"left\">{#table_dlg.align_left}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"right\">{#table_dlg.align_right}</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"valign\">{#table_dlg.valign}</label></td>\r\n\t\t\t\t\t\t\t<td class=\"col2\">\r\n\t\t\t\t\t\t\t\t<select id=\"valign\" name=\"valign\">\r\n\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"top\">{#table_dlg.align_top}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"middle\">{#table_dlg.align_middle}</option>\r\n\t\t\t\t\t\t\t\t\t<option value=\"bottom\">{#table_dlg.align_bottom}</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr id=\"styleSelectRow\">\r\n\t\t\t\t\t\t\t<td><label for=\"class\">{#class_name}</label></td>\r\n\t\t\t\t\t\t\t<td class=\"col2\">\r\n\t\t\t\t\t\t\t\t<select id=\"class\" name=\"class\" class=\"mceEditableSelect\">\r\n\t\t\t\t\t\t\t\t\t<option value=\"\" selected=\"selected\">{#not_set}</option>\r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"height\">{#table_dlg.height}</label></td>\r\n\t\t\t\t\t\t\t<td class=\"col2\"><input name=\"height\" type=\"text\" id=\"height\" value=\"\" size=\"7\" maxlength=\"7\" onchange=\"changedSize();\" class=\"size\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div id=\"advanced_panel\" class=\"panel\">\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#table_dlg.advanced_props}</legend>\r\n\r\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"4\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"id\">{#table_dlg.id}</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"id\" name=\"id\" type=\"text\" value=\"\" style=\"width: 200px\" /></td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"style\">{#table_dlg.style}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"style\" name=\"style\" value=\"\" style=\"width: 200px;\" onchange=\"changedStyle();\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"dir\">{#table_dlg.langdir}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"dir\" name=\"dir\" style=\"width: 200px\"> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"ltr\">{#table_dlg.ltr}</option> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"rtl\">{#table_dlg.rtl}</option> \r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"lang\">{#table_dlg.langcode}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<input id=\"lang\" name=\"lang\" type=\"text\" value=\"\" style=\"width: 200px\" />\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"backgroundimage\">{#table_dlg.bgimage}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input id=\"backgroundimage\" name=\"backgroundimage\" type=\"text\" value=\"\" style=\"width: 200px\" onchange=\"changedBackgroundImage();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"backgroundimagebrowsercontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"bgcolor\" id=\"bgcolor_label\">{#table_dlg.bgcolor}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<span role=\"group\" aria-labelledby=\"bgcolor_label\">\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input id=\"bgcolor\" name=\"bgcolor\" type=\"text\" value=\"\" size=\"9\" onchange=\"updateColor('bgcolor_pick','bgcolor');changedColor();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"bgcolor_pickcontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"mceActionPanel\">\r\n\t\t\t<div>\r\n\t\t\t\t<select id=\"action\" name=\"action\">\r\n\t\t\t\t\t<option value=\"row\">{#table_dlg.row_row}</option>\r\n\t\t\t\t\t<option value=\"odd\">{#table_dlg.row_odd}</option>\r\n\t\t\t\t\t<option value=\"even\">{#table_dlg.row_even}</option>\r\n\t\t\t\t\t<option value=\"all\">{#table_dlg.row_all}</option>\r\n\t\t\t\t</select>\r\n\t\t\t</div>\r\n\r\n\t\t\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#update}\" />\r\n\t\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t\t</div>\r\n\t</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/table/table.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#table_dlg.title}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/form_utils.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/validate.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/editable_selects.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/table.js\"></script>\r\n\t<link href=\"css/table.css\" rel=\"stylesheet\" type=\"text/css\" />\r\n</head>\r\n<body id=\"table\" style=\"display: none\" role=\"application\" aria-labelledby=\"app_title\">\r\n\t<span style=\"display:none;\" id=\"app_title\">{#table_dlg.title}</span>\r\n\t<form onsubmit=\"insertTable();return false;\" action=\"#\">\r\n\t\t<div class=\"tabs\">\r\n\t\t\t<ul>\r\n\t\t\t\t<li id=\"general_tab\" aria-controls=\"general_panel\" class=\"current\"><span><a href=\"javascript:mcTabs.displayTab('general_tab','general_panel');\" onmousedown=\"return false;\">{#table_dlg.general_tab}</a></span></li>\r\n\t\t\t\t<li id=\"advanced_tab\" aria-controls=\"advanced_panel\"><span><a href=\"javascript:mcTabs.displayTab('advanced_tab','advanced_panel');\" onmousedown=\"return false;\">{#table_dlg.advanced_tab}</a></span></li>\r\n\t\t\t</ul>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"panel_wrapper\">\r\n\t\t\t<div id=\"general_panel\" class=\"panel current\">\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#table_dlg.general_props}</legend>\r\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"4\" cellspacing=\"0\" width=\"100%\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label id=\"colslabel\" for=\"cols\">{#table_dlg.cols}</label></td>\r\n\t\t\t\t\t\t\t<td><input id=\"cols\" name=\"cols\" type=\"text\" value=\"\" size=\"3\" maxlength=\"3\" class=\"required number min1 mceFocus\" aria-required=\"true\" /></td>\r\n\t\t\t\t\t\t\t<td><label id=\"rowslabel\" for=\"rows\">{#table_dlg.rows}</label></td>\r\n\t\t\t\t\t\t\t<td><input id=\"rows\" name=\"rows\" type=\"text\" value=\"\" size=\"3\" maxlength=\"3\" class=\"required number min1\" aria-required=\"true\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label id=\"cellpaddinglabel\" for=\"cellpadding\">{#table_dlg.cellpadding}</label></td>\r\n\t\t\t\t\t\t\t<td><input id=\"cellpadding\" name=\"cellpadding\" type=\"text\" value=\"\" size=\"3\" maxlength=\"3\" class=\"number\" /></td>\r\n\t\t\t\t\t\t\t<td><label id=\"cellspacinglabel\" for=\"cellspacing\">{#table_dlg.cellspacing}</label></td>\r\n\t\t\t\t\t\t\t<td><input id=\"cellspacing\" name=\"cellspacing\" type=\"text\" value=\"\" size=\"3\" maxlength=\"3\" class=\"number\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label id=\"alignlabel\" for=\"align\">{#table_dlg.align}</label></td>\r\n\t\t\t\t\t\t\t<td><select id=\"align\" name=\"align\">\r\n\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option>\r\n\t\t\t\t\t\t\t\t<option value=\"center\">{#table_dlg.align_middle}</option>\r\n\t\t\t\t\t\t\t\t<option value=\"left\">{#table_dlg.align_left}</option>\r\n\t\t\t\t\t\t\t\t<option value=\"right\">{#table_dlg.align_right}</option>\r\n\t\t\t\t\t\t\t</select></td>\r\n\t\t\t\t\t\t\t<td><label id=\"borderlabel\" for=\"border\">{#table_dlg.border}</label></td>\r\n\t\t\t\t\t\t\t<td><input id=\"border\" name=\"border\" type=\"text\" value=\"\" size=\"3\" maxlength=\"3\" onchange=\"changedBorder();\" class=\"number\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr id=\"width_row\">\r\n\t\t\t\t\t\t\t<td><label id=\"widthlabel\" for=\"width\">{#table_dlg.width}</label></td>\r\n\t\t\t\t\t\t\t<td><input name=\"width\" type=\"text\" id=\"width\" value=\"\" size=\"7\" maxlength=\"7\" onchange=\"changedSize();\" class=\"size\" /></td>\r\n\t\t\t\t\t\t\t<td><label id=\"heightlabel\" for=\"height\">{#table_dlg.height}</label></td>\r\n\t\t\t\t\t\t\t<td><input name=\"height\" type=\"text\" id=\"height\" value=\"\" size=\"7\" maxlength=\"7\" onchange=\"changedSize();\" class=\"size\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr id=\"styleSelectRow\" >\r\n\t\t\t\t\t\t\t<td><label id=\"classlabel\" for=\"class\">{#class_name}</label></td>\r\n\t\t\t\t\t\t\t<td colspan=\"3\" >\r\n\t\t\t\t\t\t\t <select id=\"class\" name=\"class\" class=\"mceEditableSelect\">\r\n\t\t\t\t\t\t\t\t<option value=\"\" selected=\"selected\">{#not_set}</option>\r\n\t\t\t\t\t\t\t </select></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\" ><label for=\"caption\">{#table_dlg.caption}</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"caption\" name=\"caption\" type=\"checkbox\" class=\"checkbox\" value=\"true\" /></td> \r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div id=\"advanced_panel\" class=\"panel\">\r\n\t\t\t\t<fieldset>\r\n\t\t\t\t\t<legend>{#table_dlg.advanced_props}</legend>\r\n\r\n\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"4\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"id\">{#table_dlg.id}</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"id\" name=\"id\" type=\"text\" value=\"\" class=\"advfield\" /></td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"summary\">{#table_dlg.summary}</label></td> \r\n\t\t\t\t\t\t\t<td><input id=\"summary\" name=\"summary\" type=\"text\" value=\"\" class=\"advfield\" /></td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label for=\"style\">{#table_dlg.style}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"style\" name=\"style\" value=\"\" class=\"advfield\" onchange=\"changedStyle();\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"langlabel\" for=\"lang\">{#table_dlg.langcode}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<input id=\"lang\" name=\"lang\" type=\"text\" value=\"\" class=\"advfield\" />\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"backgroundimage\">{#table_dlg.bgimage}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" aria-labelledby=\"backgroundimage_label\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input id=\"backgroundimage\" name=\"backgroundimage\" type=\"text\" value=\"\" class=\"advfield\" onchange=\"changedBackgroundImage();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"backgroundimagebrowsercontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"tframe\">{#table_dlg.frame}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"tframe\" name=\"tframe\" class=\"advfield\"> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option>\r\n\t\t\t\t\t\t\t\t\t\t<option value=\"void\">{#table_dlg.rules_void}</option>\r\n\t\t\t\t\t\t\t\t\t\t<option value=\"above\">{#table_dlg.rules_above}</option> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"below\">{#table_dlg.rules_below}</option> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"hsides\">{#table_dlg.rules_hsides}</option> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"lhs\">{#table_dlg.rules_lhs}</option> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"rhs\">{#table_dlg.rules_rhs}</option> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"vsides\">{#table_dlg.rules_vsides}</option> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"box\">{#table_dlg.rules_box}</option> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"border\">{#table_dlg.rules_border}</option> \r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"rules\">{#table_dlg.rules}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"rules\" name=\"rules\" class=\"advfield\"> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"none\">{#table_dlg.frame_none}</option>\r\n\t\t\t\t\t\t\t\t\t\t<option value=\"groups\">{#table_dlg.frame_groups}</option>\r\n\t\t\t\t\t\t\t\t\t\t<option value=\"rows\">{#table_dlg.frame_rows}</option>\r\n\t\t\t\t\t\t\t\t\t\t<option value=\"cols\">{#table_dlg.frame_cols}</option>\r\n\t\t\t\t\t\t\t\t\t\t<option value=\"all\">{#table_dlg.frame_all}</option>\r\n\t\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label for=\"dir\">{#table_dlg.langdir}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<select id=\"dir\" name=\"dir\" class=\"advfield\"> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"ltr\">{#table_dlg.ltr}</option> \r\n\t\t\t\t\t\t\t\t\t\t<option value=\"rtl\">{#table_dlg.rtl}</option> \r\n\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr role=\"group\" aria-labelledby=\"bordercolor_label\">\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"bordercolor_label\" for=\"bordercolor\">{#table_dlg.bordercolor}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input id=\"bordercolor\" name=\"bordercolor\" type=\"text\" value=\"\" size=\"9\" onchange=\"updateColor('bordercolor_pick','bordercolor');changedColor();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"bordercolor_pickcontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr role=\"group\" aria-labelledby=\"bgcolor_label\">\r\n\t\t\t\t\t\t\t<td class=\"column1\"><label id=\"bgcolor_label\" for=\"bgcolor\">{#table_dlg.bgcolor}</label></td> \r\n\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\r\n\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t<td><input id=\"bgcolor\" name=\"bgcolor\" type=\"text\" value=\"\" size=\"9\" onchange=\"updateColor('bgcolor_pick','bgcolor');changedColor();\" /></td>\r\n\t\t\t\t\t\t\t\t\t\t<td id=\"bgcolor_pickcontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</td> \r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</fieldset>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"mceActionPanel\">\r\n\t\t\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#insert}\" />\r\n\t\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t\t</div>\r\n\t</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/blank.htm",
    "content": "<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>blank_page</title>\r\n\t<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\r\n\t<script type=\"text/javascript\">\r\n\t\tparent.TemplateDialog.loadCSSFiles(document);\r\n\t</script>\r\n</head>\r\n<body id=\"mceTemplatePreview\" class=\"mceContentBody\">\r\n\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/css/template.css",
    "content": "#frmbody {\r\n\tpadding: 10px;\r\n\tbackground-color: #FFF;\r\n\tborder: 1px solid #CCC;\r\n}\r\n\r\n.frmRow {\r\n\tmargin-bottom: 10px;\r\n}\r\n\r\n#templatesrc {\r\n\tborder: none;\r\n\twidth: 320px;\r\n\theight: 240px;\r\n}\r\n\r\n.title {\r\n\tpadding-bottom: 5px;\r\n}\r\n\r\n.mceActionPanel {\r\n\tpadding-top: 5px;\r\n}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/editor_plugin.js",
    "content": "(function(){var a=tinymce.each;tinymce.create(\"tinymce.plugins.TemplatePlugin\",{init:function(b,c){var d=this;d.editor=b;b.addCommand(\"mceTemplate\",function(e){b.windowManager.open({file:c+\"/template.htm\",width:b.getParam(\"template_popup_width\",750),height:b.getParam(\"template_popup_height\",600),inline:1},{plugin_url:c})});b.addCommand(\"mceInsertTemplate\",d._insertTemplate,d);b.addButton(\"template\",{title:\"template.desc\",cmd:\"mceTemplate\"});b.onPreProcess.add(function(e,g){var f=e.dom;a(f.select(\"div\",g.node),function(h){if(f.hasClass(h,\"mceTmpl\")){a(f.select(\"*\",h),function(i){if(f.hasClass(i,e.getParam(\"template_mdate_classes\",\"mdate\").replace(/\\s+/g,\"|\"))){i.innerHTML=d._getDateTime(new Date(),e.getParam(\"template_mdate_format\",e.getLang(\"template.mdate_format\")))}});d._replaceVals(h)}})})},getInfo:function(){return{longname:\"Template plugin\",author:\"Moxiecode Systems AB\",authorurl:\"http://www.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/template\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}},_insertTemplate:function(i,j){var k=this,g=k.editor,f,c,d=g.dom,b=g.selection.getContent();f=j.content;a(k.editor.getParam(\"template_replace_values\"),function(l,h){if(typeof(l)!=\"function\"){f=f.replace(new RegExp(\"\\\\{\\\\$\"+h+\"\\\\}\",\"g\"),l)}});c=d.create(\"div\",null,f);n=d.select(\".mceTmpl\",c);if(n&&n.length>0){c=d.create(\"div\",null);c.appendChild(n[0].cloneNode(true))}function e(l,h){return new RegExp(\"\\\\b\"+h+\"\\\\b\",\"g\").test(l.className)}a(d.select(\"*\",c),function(h){if(e(h,g.getParam(\"template_cdate_classes\",\"cdate\").replace(/\\s+/g,\"|\"))){h.innerHTML=k._getDateTime(new Date(),g.getParam(\"template_cdate_format\",g.getLang(\"template.cdate_format\")))}if(e(h,g.getParam(\"template_mdate_classes\",\"mdate\").replace(/\\s+/g,\"|\"))){h.innerHTML=k._getDateTime(new Date(),g.getParam(\"template_mdate_format\",g.getLang(\"template.mdate_format\")))}if(e(h,g.getParam(\"template_selected_content_classes\",\"selcontent\").replace(/\\s+/g,\"|\"))){h.innerHTML=b}});k._replaceVals(c);g.execCommand(\"mceInsertContent\",false,c.innerHTML);g.addVisual()},_replaceVals:function(c){var d=this.editor.dom,b=this.editor.getParam(\"template_replace_values\");a(d.select(\"*\",c),function(f){a(b,function(g,e){if(d.hasClass(f,e)){if(typeof(b[e])==\"function\"){b[e](f)}}})})},_getDateTime:function(e,b){if(!b){return\"\"}function c(g,d){var f;g=\"\"+g;if(g.length<d){for(f=0;f<(d-g.length);f++){g=\"0\"+g}}return g}b=b.replace(\"%D\",\"%m/%d/%y\");b=b.replace(\"%r\",\"%I:%M:%S %p\");b=b.replace(\"%Y\",\"\"+e.getFullYear());b=b.replace(\"%y\",\"\"+e.getYear());b=b.replace(\"%m\",c(e.getMonth()+1,2));b=b.replace(\"%d\",c(e.getDate(),2));b=b.replace(\"%H\",\"\"+c(e.getHours(),2));b=b.replace(\"%M\",\"\"+c(e.getMinutes(),2));b=b.replace(\"%S\",\"\"+c(e.getSeconds(),2));b=b.replace(\"%I\",\"\"+((e.getHours()+11)%12+1));b=b.replace(\"%p\",\"\"+(e.getHours()<12?\"AM\":\"PM\"));b=b.replace(\"%B\",\"\"+this.editor.getLang(\"template_months_long\").split(\",\")[e.getMonth()]);b=b.replace(\"%b\",\"\"+this.editor.getLang(\"template_months_short\").split(\",\")[e.getMonth()]);b=b.replace(\"%A\",\"\"+this.editor.getLang(\"template_day_long\").split(\",\")[e.getDay()]);b=b.replace(\"%a\",\"\"+this.editor.getLang(\"template_day_short\").split(\",\")[e.getDay()]);b=b.replace(\"%%\",\"%\");return b}});tinymce.PluginManager.add(\"template\",tinymce.plugins.TemplatePlugin)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\tvar each = tinymce.each;\r\n\r\n\ttinymce.create('tinymce.plugins.TemplatePlugin', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tt.editor = ed;\r\n\r\n\t\t\t// Register commands\r\n\t\t\ted.addCommand('mceTemplate', function(ui) {\r\n\t\t\t\ted.windowManager.open({\r\n\t\t\t\t\tfile : url + '/template.htm',\r\n\t\t\t\t\twidth : ed.getParam('template_popup_width', 750),\r\n\t\t\t\t\theight : ed.getParam('template_popup_height', 600),\r\n\t\t\t\t\tinline : 1\r\n\t\t\t\t}, {\r\n\t\t\t\t\tplugin_url : url\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\ted.addCommand('mceInsertTemplate', t._insertTemplate, t);\r\n\r\n\t\t\t// Register buttons\r\n\t\t\ted.addButton('template', {title : 'template.desc', cmd : 'mceTemplate'});\r\n\r\n\t\t\ted.onPreProcess.add(function(ed, o) {\r\n\t\t\t\tvar dom = ed.dom;\r\n\r\n\t\t\t\teach(dom.select('div', o.node), function(e) {\r\n\t\t\t\t\tif (dom.hasClass(e, 'mceTmpl')) {\r\n\t\t\t\t\t\teach(dom.select('*', e), function(e) {\r\n\t\t\t\t\t\t\tif (dom.hasClass(e, ed.getParam('template_mdate_classes', 'mdate').replace(/\\s+/g, '|')))\r\n\t\t\t\t\t\t\t\te.innerHTML = t._getDateTime(new Date(), ed.getParam(\"template_mdate_format\", ed.getLang(\"template.mdate_format\")));\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\tt._replaceVals(e);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Template plugin',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://www.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/template',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t},\r\n\r\n\t\t_insertTemplate : function(ui, v) {\r\n\t\t\tvar t = this, ed = t.editor, h, el, dom = ed.dom, sel = ed.selection.getContent();\r\n\r\n\t\t\th = v.content;\r\n\r\n\t\t\teach(t.editor.getParam('template_replace_values'), function(v, k) {\r\n\t\t\t\tif (typeof(v) != 'function')\r\n\t\t\t\t\th = h.replace(new RegExp('\\\\{\\\\$' + k + '\\\\}', 'g'), v);\r\n\t\t\t});\r\n\r\n\t\t\tel = dom.create('div', null, h);\r\n\r\n\t\t\t// Find template element within div\r\n\t\t\tn = dom.select('.mceTmpl', el);\r\n\t\t\tif (n && n.length > 0) {\r\n\t\t\t\tel = dom.create('div', null);\r\n\t\t\t\tel.appendChild(n[0].cloneNode(true));\r\n\t\t\t}\r\n\r\n\t\t\tfunction hasClass(n, c) {\r\n\t\t\t\treturn new RegExp('\\\\b' + c + '\\\\b', 'g').test(n.className);\r\n\t\t\t};\r\n\r\n\t\t\teach(dom.select('*', el), function(n) {\r\n\t\t\t\t// Replace cdate\r\n\t\t\t\tif (hasClass(n, ed.getParam('template_cdate_classes', 'cdate').replace(/\\s+/g, '|')))\r\n\t\t\t\t\tn.innerHTML = t._getDateTime(new Date(), ed.getParam(\"template_cdate_format\", ed.getLang(\"template.cdate_format\")));\r\n\r\n\t\t\t\t// Replace mdate\r\n\t\t\t\tif (hasClass(n, ed.getParam('template_mdate_classes', 'mdate').replace(/\\s+/g, '|')))\r\n\t\t\t\t\tn.innerHTML = t._getDateTime(new Date(), ed.getParam(\"template_mdate_format\", ed.getLang(\"template.mdate_format\")));\r\n\r\n\t\t\t\t// Replace selection\r\n\t\t\t\tif (hasClass(n, ed.getParam('template_selected_content_classes', 'selcontent').replace(/\\s+/g, '|')))\r\n\t\t\t\t\tn.innerHTML = sel;\r\n\t\t\t});\r\n\r\n\t\t\tt._replaceVals(el);\r\n\r\n\t\t\ted.execCommand('mceInsertContent', false, el.innerHTML);\r\n\t\t\ted.addVisual();\r\n\t\t},\r\n\r\n\t\t_replaceVals : function(e) {\r\n\t\t\tvar dom = this.editor.dom, vl = this.editor.getParam('template_replace_values');\r\n\r\n\t\t\teach(dom.select('*', e), function(e) {\r\n\t\t\t\teach(vl, function(v, k) {\r\n\t\t\t\t\tif (dom.hasClass(e, k)) {\r\n\t\t\t\t\t\tif (typeof(vl[k]) == 'function')\r\n\t\t\t\t\t\t\tvl[k](e);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t_getDateTime : function(d, fmt) {\r\n\t\t\t\tif (!fmt)\r\n\t\t\t\t\treturn \"\";\r\n\r\n\t\t\t\tfunction addZeros(value, len) {\r\n\t\t\t\t\tvar i;\r\n\r\n\t\t\t\t\tvalue = \"\" + value;\r\n\r\n\t\t\t\t\tif (value.length < len) {\r\n\t\t\t\t\t\tfor (i=0; i<(len-value.length); i++)\r\n\t\t\t\t\t\t\tvalue = \"0\" + value;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\treturn value;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tfmt = fmt.replace(\"%D\", \"%m/%d/%y\");\r\n\t\t\t\tfmt = fmt.replace(\"%r\", \"%I:%M:%S %p\");\r\n\t\t\t\tfmt = fmt.replace(\"%Y\", \"\" + d.getFullYear());\r\n\t\t\t\tfmt = fmt.replace(\"%y\", \"\" + d.getYear());\r\n\t\t\t\tfmt = fmt.replace(\"%m\", addZeros(d.getMonth()+1, 2));\r\n\t\t\t\tfmt = fmt.replace(\"%d\", addZeros(d.getDate(), 2));\r\n\t\t\t\tfmt = fmt.replace(\"%H\", \"\" + addZeros(d.getHours(), 2));\r\n\t\t\t\tfmt = fmt.replace(\"%M\", \"\" + addZeros(d.getMinutes(), 2));\r\n\t\t\t\tfmt = fmt.replace(\"%S\", \"\" + addZeros(d.getSeconds(), 2));\r\n\t\t\t\tfmt = fmt.replace(\"%I\", \"\" + ((d.getHours() + 11) % 12 + 1));\r\n\t\t\t\tfmt = fmt.replace(\"%p\", \"\" + (d.getHours() < 12 ? \"AM\" : \"PM\"));\r\n\t\t\t\tfmt = fmt.replace(\"%B\", \"\" + this.editor.getLang(\"template_months_long\").split(',')[d.getMonth()]);\r\n\t\t\t\tfmt = fmt.replace(\"%b\", \"\" + this.editor.getLang(\"template_months_short\").split(',')[d.getMonth()]);\r\n\t\t\t\tfmt = fmt.replace(\"%A\", \"\" + this.editor.getLang(\"template_day_long\").split(',')[d.getDay()]);\r\n\t\t\t\tfmt = fmt.replace(\"%a\", \"\" + this.editor.getLang(\"template_day_short\").split(',')[d.getDay()]);\r\n\t\t\t\tfmt = fmt.replace(\"%%\", \"%\");\r\n\r\n\t\t\t\treturn fmt;\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('template', tinymce.plugins.TemplatePlugin);\r\n})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/js/template.js",
    "content": "tinyMCEPopup.requireLangPack();\r\n\r\nvar TemplateDialog = {\r\n\tpreInit : function() {\r\n\t\tvar url = tinyMCEPopup.getParam(\"template_external_list_url\");\r\n\r\n\t\tif (url != null)\r\n\t\t\tdocument.write('<sc'+'ript language=\"javascript\" type=\"text/javascript\" src=\"' + tinyMCEPopup.editor.documentBaseURI.toAbsolute(url) + '\"></sc'+'ript>');\r\n\t},\r\n\r\n\tinit : function() {\r\n\t\tvar ed = tinyMCEPopup.editor, tsrc, sel, x, u;\r\n\r\n \t\ttsrc = ed.getParam(\"template_templates\", false);\r\n \t\tsel = document.getElementById('tpath');\r\n\r\n\t\t// Setup external template list\r\n\t\tif (!tsrc && typeof(tinyMCETemplateList) != 'undefined') {\r\n\t\t\tfor (x=0, tsrc = []; x<tinyMCETemplateList.length; x++)\r\n\t\t\t\ttsrc.push({title : tinyMCETemplateList[x][0], src : tinyMCETemplateList[x][1], description : tinyMCETemplateList[x][2]});\r\n\t\t}\r\n\r\n\t\tfor (x=0; x<tsrc.length; x++)\r\n\t\t\tsel.options[sel.options.length] = new Option(tsrc[x].title, tinyMCEPopup.editor.documentBaseURI.toAbsolute(tsrc[x].src));\r\n\r\n\t\tthis.resize();\r\n\t\tthis.tsrc = tsrc;\r\n\t},\r\n\r\n\tresize : function() {\r\n\t\tvar w, h, e;\r\n\r\n\t\tif (!self.innerWidth) {\r\n\t\t\tw = document.body.clientWidth - 50;\r\n\t\t\th = document.body.clientHeight - 160;\r\n\t\t} else {\r\n\t\t\tw = self.innerWidth - 50;\r\n\t\t\th = self.innerHeight - 170;\r\n\t\t}\r\n\r\n\t\te = document.getElementById('templatesrc');\r\n\r\n\t\tif (e) {\r\n\t\t\te.style.height = Math.abs(h) + 'px';\r\n\t\t\te.style.width = Math.abs(w - 5) + 'px';\r\n\t\t}\r\n\t},\r\n\r\n\tloadCSSFiles : function(d) {\r\n\t\tvar ed = tinyMCEPopup.editor;\r\n\r\n\t\ttinymce.each(ed.getParam(\"content_css\", '').split(','), function(u) {\r\n\t\t\td.write('<link href=\"' + ed.documentBaseURI.toAbsolute(u) + '\" rel=\"stylesheet\" type=\"text/css\" />');\r\n\t\t});\r\n\t},\r\n\r\n\tselectTemplate : function(u, ti) {\r\n\t\tvar d = window.frames['templatesrc'].document, x, tsrc = this.tsrc;\r\n\r\n\t\tif (!u)\r\n\t\t\treturn;\r\n\r\n\t\td.body.innerHTML = this.templateHTML = this.getFileContents(u);\r\n\r\n\t\tfor (x=0; x<tsrc.length; x++) {\r\n\t\t\tif (tsrc[x].title == ti)\r\n\t\t\t\tdocument.getElementById('tmpldesc').innerHTML = tsrc[x].description || '';\r\n\t\t}\r\n\t},\r\n\r\n \tinsert : function() {\r\n\t\ttinyMCEPopup.execCommand('mceInsertTemplate', false, {\r\n\t\t\tcontent : this.templateHTML,\r\n\t\t\tselection : tinyMCEPopup.editor.selection.getContent()\r\n\t\t});\r\n\r\n\t\ttinyMCEPopup.close();\r\n\t},\r\n\r\n\tgetFileContents : function(u) {\r\n\t\tvar x, d, t = 'text/plain';\r\n\r\n\t\tfunction g(s) {\r\n\t\t\tx = 0;\r\n\r\n\t\t\ttry {\r\n\t\t\t\tx = new ActiveXObject(s);\r\n\t\t\t} catch (s) {\r\n\t\t\t}\r\n\r\n\t\t\treturn x;\r\n\t\t};\r\n\r\n\t\tx = window.ActiveXObject ? g('Msxml2.XMLHTTP') || g('Microsoft.XMLHTTP') : new XMLHttpRequest();\r\n\r\n\t\t// Synchronous AJAX load file\r\n\t\tx.overrideMimeType && x.overrideMimeType(t);\r\n\t\tx.open(\"GET\", u, false);\r\n\t\tx.send(null);\r\n\r\n\t\treturn x.responseText;\r\n\t}\r\n};\r\n\r\nTemplateDialog.preInit();\r\ntinyMCEPopup.onInit.add(TemplateDialog.init, TemplateDialog);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/ar_dlg.js",
    "content": "tinyMCE.addI18n('ar.template_dlg',{title:\"Templates\",label:\"Template\",desc_label:\"Description\",desc:\"Insert predefined template content\",select:\"Select a template\",preview:\"Preview\",warning:\"Warning: Updating a template with a different one may cause data loss.\",mdate_format:\"%Y-%m-%d %H:%M:%S\",cdate_format:\"%Y-%m-%d %H:%M:%S\",months_long:\"\\u064a\\u0646\\u0627\\u064a\\u0631 \\u060c \\u0641\\u0628\\u0631\\u0627\\u064a\\u0631 \\u060c \\u0622\\u0630\\u0627\\u0631 \\u060c \\u0646\\u064a\\u0633\\u0627\\u0646 \\u060c \\u0623\\u064a\\u0627\\u0631 \\u060c \\u062d\\u0632\\u064a\\u0631\\u0627\\u0646 \\u060c \\u062a\\u0645\\u0648\\u0632 \\u060c \\u0622\\u0628 \\u060c \\u0623\\u064a\\u0644\\u0648\\u0644 / \\u0633\\u0628\\u062a\\u0645\\u0628\\u0631 \\u060c \\u0623\\u0643\\u062a\\u0648\\u0628\\u0631 \\u060c \\u0646\\u0648\\u0641\\u0645\\u0628\\u0631 \\u060c \\u062f\\u064a\\u0633\\u0645\\u0628\\u0631\",months_short:\"\\u064a\\u0646\\u0627\\u064a\\u0631 \\u060c \\u0641\\u0628\\u0631\\u0627\\u064a\\u0631 \\u060c \\u0645\\u0627\\u0631\\u0633 \\u060c \\u0623\\u0628\\u0631\\u064a\\u0644 \\u0648\\u0645\\u0627\\u064a\\u0648 \\u0648\\u064a\\u0648\\u0646\\u064a\\u0648 \\u060c \\u064a\\u0648\\u0644\\u064a\\u0648 \\u060c \\u0623\\u063a\\u0633\\u0637\\u0633 \\u060c \\u0633\\u0628\\u062a\\u0645\\u0628\\u0631 \\u060c \\u0623\\u0643\\u062a\\u0648\\u0628\\u0631 \\u060c \\u0646\\u0648\\u0641\\u0645\\u0628\\u0631 \\u060c \\u062f\\u064a\\u0633\\u0645\\u0628\\u0631\",day_long:\"\\u0627\\u0644\\u0623\\u062d\\u062f \\u060c \\u0627\\u0644\\u0627\\u062b\\u0646\\u064a\\u0646 \\u060c \\u0627\\u0644\\u062b\\u0644\\u0627\\u062b\\u0627\\u0621 \\u060c \\u0627\\u0644\\u0627\\u0631\\u0628\\u0639\\u0627\\u0621 \\u060c \\u0627\\u0644\\u062e\\u0645\\u064a\\u0633 \\u060c \\u0627\\u0644\\u062c\\u0645\\u0639\\u0629 \\u060c \\u0627\\u0644\\u0633\\u0628\\u062a \\u060c \\u0627\\u0644\\u0623\\u062d\\u062f\",day_short:\"\\u0623\\u062d\\u062f \\u060c \\u0627\\u0644\\u0627\\u062b\\u0646\\u064a\\u0646 \\u060c \\u0627\\u0644\\u062b\\u0644\\u0627\\u062b\\u0627\\u0621 \\u060c \\u0627\\u0644\\u0627\\u0631\\u0628\\u0639\\u0627\\u0621 \\u060c \\u0627\\u0644\\u062e\\u0645\\u064a\\u0633 \\u060c \\u0627\\u0644\\u062c\\u0645\\u0639\\u0629 \\u060c \\u0627\\u0644\\u0633\\u0628\\u062a \\u0648\\u0627\\u0644\\u0623\\u062d\\u062f\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/az_dlg.js",
    "content": "tinyMCE.addI18n('az.template_dlg',{title:\"\\u015eablonlar\",label:\"\\u015eablon\",\"desc_label\":\"T\\u0259svir\",desc:\"\\u018fvv\\u0259ld\\u0259n m\\u00fc\\u0259yy\\u0259n edil\\u0259n \\u015fablon daxil et\",select:\"\\u015eablon se\\u00e7\",preview:\"\\u0130lkin bax\\u0131\\u015f\",warning:\"T\\u0259hl\\u00fck\\u0259: Bir \\u015fablonu bir ba\\u015fqas\\u0131yla aktualla\\u015fd\\u0131rmaq m\\u0259lumat itkisin\\u0259 yol a\\u00e7a bil\\u0259r.\",\"mdate_format\":\"%Y-%m-%d %H:%M:%S\",\"cdate_format\":\"%Y-%m-%d %H:%M:%S\",\"months_long\":\"Yanvar,Fevral,Mart,Aprel,May,\\u0130yun,\\u0130yul,Avqust,Sentaybr,Oktaybr,Noyabr,Dekabr\",\"months_short\":\"Yan,Fev,Mar,Ape,May,\\u0130yn,\\u0130yl,Avq,Sen,Okt,Noy,Dek\",\"day_long\":\"Bazar,Bazar ert\\u0259si,\\u00c7\\u0259r\\u015f\\u0259nb\\u0259 ax\\u015fam\\u0131,\\u00c7\\u0259r\\u015f\\u0259nb\\u0259,C\\u00fcm\\u0259 ax\\u015fam\\u0131,C\\u00fcm\\u0259,\\u015e\\u0259nb\\u0259,Bazar\",\"day_short\":\"B,Be,\\u00c7a,\\u00c7,Ca,C,\\u015e,B\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/be_dlg.js",
    "content": "tinyMCE.addI18n('be.template_dlg',{title:\"\\u0428\\u0430\\u0431\\u043b\\u043e\\u043d\\u044b\",label:\"\\u0428\\u0430\\u0431\\u043b\\u043e\\u043d\",\"desc_label\":\"\\u0410\\u043f\\u0456\\u0441\\u0430\\u043d\\u043d\\u0435\",desc:\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u0448\\u0430\\u0431\\u043b\\u043e\\u043d\",select:\"\\u0410\\u0431\\u044f\\u0440\\u044b\\u0446\\u0435 \\u0448\\u0430\\u0431\\u043b\\u043e\\u043d\",preview:\"\\u041f\\u0440\\u0430\\u0433\\u043b\\u044f\\u0434\",warning:\"\\u0423\\u0432\\u0430\\u0433\\u0430: \\u0437\\u043c\\u044f\\u043d\\u0435\\u043d\\u043d\\u0435 \\u0448\\u0430\\u0431\\u043b\\u043e\\u043d\\u0443 \\u043c\\u043e\\u0436\\u0430 \\u043f\\u0440\\u044b\\u0432\\u0435\\u0441\\u0446\\u0456 \\u0434\\u0430 \\u0441\\u0442\\u0440\\u0430\\u0442\\u044b \\u0434\\u0430\\u043d\\u044b\\u0445.\",\"mdate_format\":\"%Y.%m.%d %H:%M:%S\",\"cdate_format\":\"%Y-%m-%d %H:%M:%S\",\"months_long\":\"\\u0421\\u0442\\u0443\\u0434\\u0437\\u0435\\u043d\\u044c,\\u041b\\u044e\\u0442\\u044b,\\u0421\\u0430\\u043a\\u0430\\u0432\\u0456\\u043a,\\u041a\\u0440\\u0430\\u0441\\u0430\\u0432\\u0456\\u043a,\\u041c\\u0430\\u0439,\\u0427\\u044d\\u0440\\u0432\\u0435\\u043d\\u044c,\\u041b\\u0456\\u043f\\u0435\\u043d\\u044c,\\u0410\\u045e\\u0433\\u0443\\u0441\\u0442,\\u0412\\u0435\\u0440\\u0430\\u0441\\u0435\\u043d\\u044c,\\u041a\\u0430\\u0441\\u0442\\u0440\\u044b\\u0447\\u043d\\u0456\\u043a,\\u041b\\u0456\\u0441\\u0442\\u0430\\u043f\\u0430\\u0434,\\u0421\\u043d\\u0435\\u0436\\u0430\\u043d\\u044c\",\"months_short\":\"\\u0421\\u0442\\u0443,\\u041b\\u044e\\u0442,\\u0421\\u0430\\u043a,\\u041a\\u0440\\u0430,\\u041c\\u0430\\u0439,\\u0427\\u044d\\u0440,\\u041b\\u0456\\u043f,\\u0410\\u045e\\u0433,\\u0412\\u0435\\u0440,\\u041a\\u0430\\u0441,\\u041b\\u0456\\u0441,\\u0421\\u043d\\u0435\",\"day_long\":\"\\u041d\\u044f\\u0434\\u0437\\u0435\\u043b\\u044f,\\u041f\\u0430\\u043d\\u044f\\u0434\\u0437\\u0435\\u043b\\u0430\\u043a,\\u0410\\u045e\\u0442\\u043e\\u0440\\u0430\\u043a,\\u0421\\u0435\\u0440\\u0430\\u0434\\u0430,\\u0427\\u0430\\u0446\\u0432\\u0435\\u0440,\\u041f\\u044f\\u0442\\u043d\\u0456\\u0446\\u0430,\\u0421\\u0443\\u0431\\u043e\\u0442\\u0430,\\u041d\\u044f\\u0434\\u0437\\u0435\\u043b\\u044f\",\"day_short\":\"\\u041d\\u0434,\\u041f\\u043d,\\u0410\\u0442,\\u0421\\u0440,\\u0427\\u0446,\\u041f\\u0442,\\u0421\\u0431,\\u041d\\u0434\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/cs_dlg.js",
    "content": "tinyMCE.addI18n('cs.template_dlg',{title:\"\\u0160ablony\",label:\"\\u0160ablona\",desc_label:\"Popis\",desc:\"Vlo\\u017eit p\\u0159eddefinovan\\u00fd obsah ze \\u0161ablony\",select:\"Vybrat \\u0161ablonu\",preview:\"N\\u00e1hled\",warning:\"Upozorn\\u011bn\\u00ed: Aktualizace \\u0161ablony jinou zp\\u016fsob\\u00ed ztr\\u00e1tu dat.\",mdate_format:\"%d.%m.%Y %H:%M:%S\",cdate_format:\"%d.%m.%Y %H:%M:%S\",months_long:\"Leden,\\u00danor,B\\u0159ezen,Duben,Kv\\u011bten,\\u010cerven,\\u010cervenec,Srpen,Z\\u00e1\\u0159\\u00ed,\\u0158\\u00edjen,Listopad,Prosinec\",months_short:\"Led,\\u00dano,B\\u0159e,Dub,Kv\\u011b,\\u010cer,\\u010cvc,Srp,Z\\u00e1\\u0159,\\u0158\\u00edj,Lis,Pro\",day_long:\"Ned\\u011ble,Pond\\u011bl\\u00ed,\\u00dater\\u00fd,St\\u0159eda,\\u010ctvrtek,P\\u00e1tek,Sobota,Ned\\u011ble\",day_short:\"Ne,Po,\\u00dat,St,\\u010ct,P\\u00e1,So,Ne\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/da_dlg.js",
    "content": "tinyMCE.addI18n('da.template_dlg',{title:\"Skabeloner\",label:\"Skabelon\",\"desc_label\":\"Beskrivelse\",desc:\"Inds\\u00e6t pr\\u00e6defineret skabelonindhold\",select:\"V\\u00e6lg en skabelon\",preview:\"Vis udskrift\",warning:\"Advarsel: Opdatering af en skabelon med en anden kan betyde datatab.\",\"mdate_format\":\"%Y-%m-%d %H:%M:%S\",\"cdate_format\":\"%Y-%m-%d %H:%M:%S\",\"months_long\":\"Januar,Februar,Marts,April,Maj,Juni,Juli,August,September,Oktober,November,December\",\"months_short\":\"Jan,Feb,Mar,Apr,Maj,Jun,Jul,Aug,Sep,Okt,Nov,Dec\",\"day_long\":\"S\\u00f8ndag,Mandag,Tirsdag,Onsdag,Torsdag,Fredag,L\\u00f8rdag,S\\u00f8ndag\",\"day_short\":\"S\\u00f8n,Man,Tirs,Ons,Tors,Fre,L\\u00f8r,S\\u00f8n\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/de_dlg.js",
    "content": "tinyMCE.addI18n('de.template_dlg',{title:\"Vorlagen\",label:\"Vorlage\",desc_label:\"Beschreibung\",desc:\"Inhalt aus Vorlage einf\\u00fcgen\",select:\"Vorlage ausw\\u00e4hlen\",preview:\"Vorschau\",warning:\"Warnung: Eine Vorlage mit einer anderen zu aktualisieren kann zu einem Datenverlust f\\u00fchren!\",mdate_format:\"%Y-%m-%d %H:%M:%S\",cdate_format:\"%Y-%m-%d %H:%M:%S\",months_long:\"Januar,Februar,M\\u00e4rz,April,Mai,Juni,Juli,August,September,Oktober,November,Dezember\",months_short:\"Jan,Feb,M\\u00e4r,Apr,Mai,Juni,Juli,Aug,Sept,Okt,Nov,Dez\",day_long:\"Sonntag,Montag,Dienstag,Mittwoch,Donnerstag,Freitag,Samstag,Sonntag\",day_short:\"So,Mo,Di,Mi,Do,Fr,Sa,So\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/el_dlg.js",
    "content": "tinyMCE.addI18n('el.template_dlg',{title:\"\\u03a0\\u03c1\\u03cc\\u03c4\\u03c5\\u03c0\\u03b1\",label:\"\\u03a0\\u03c1\\u03cc\\u03c4\\u03c5\\u03c0\\u03bf\",\"desc_label\":\"\\u03a0\\u03b5\\u03c1\\u03b9\\u03b3\\u03c1\\u03b1\\u03c6\\u03ae\",desc:\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae \\u03c0\\u03b5\\u03c1\\u03b9\\u03b5\\u03c7\\u03bf\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5 \\u03b3\\u03b9\\u03b1 \\u03c0\\u03c1\\u03bf\\u03ba\\u03b1\\u03b8\\u03bf\\u03c1\\u03b9\\u03c3\\u03bc\\u03ad\\u03bd\\u03bf \\u03c0\\u03c1\\u03cc\\u03c4\\u03c5\\u03c0\\u03bf\",select:\"\\u0395\\u03c0\\u03b9\\u03bb\\u03bf\\u03b3\\u03ae \\u03c0\\u03c1\\u03bf\\u03c4\\u03cd\\u03c0\\u03bf\\u03c5\",preview:\"\\u03a0\\u03c1\\u03bf\\u03b5\\u03c0\\u03b9\\u03c3\\u03ba\\u03cc\\u03c0\\u03b7\\u03c3\\u03b7\",warning:\"\\u03a0\\u03c1\\u03bf\\u03c3\\u03bf\\u03c7\\u03ae : \\u0395\\u03bd\\u03b7\\u03bc\\u03b5\\u03c1\\u03ce\\u03bd\\u03bf\\u03bd\\u03c4\\u03b1\\u03c2 \\u03ad\\u03bd\\u03b1 \\u03c0\\u03c1\\u03cc\\u03c4\\u03c5\\u03c0\\u03bf \\u03bc\\u03b5 \\u03ad\\u03bd\\u03b1 \\u03ac\\u03bb\\u03bb\\u03bf, \\u03bc\\u03c0\\u03bf\\u03c1\\u03b5\\u03af \\u03bd\\u03b1 \\u03c0\\u03c1\\u03bf\\u03ba\\u03b1\\u03bb\\u03ad\\u03c3\\u03b5\\u03b9 \\u03b1\\u03c0\\u03ce\\u03bb\\u03b5\\u03b9\\u03b1 \\u03b4\\u03b5\\u03b4\\u03bf\\u03bc\\u03ad\\u03bd\\u03c9\\u03bd.\",\"mdate_format\":\"%Y-%m-%d %H:%M:%S\",\"cdate_format\":\"%Y-%m-%d %H:%M:%S\",\"months_long\":\"\\u0399\\u03b1\\u03bd\\u03bf\\u03c5\\u03ac\\u03c1\\u03b9\\u03bf\\u03c2,\\u03a6\\u03b5\\u03b2\\u03c1\\u03bf\\u03c5\\u03ac\\u03c1\\u03b9\\u03bf\\u03c2,\\u039c\\u03ac\\u03c1\\u03c4\\u03b9\\u03bf\\u03c2,\\u0391\\u03c0\\u03c1\\u03af\\u03bb\\u03b9\\u03bf\\u03c2,\\u039c\\u03ac\\u03b9\\u03bf\\u03c2,\\u0399\\u03bf\\u03cd\\u03bd\\u03b9\\u03bf\\u03c2,\\u0399\\u03bf\\u03cd\\u03bb\\u03b9\\u03bf\\u03c2,\\u0391\\u03cd\\u03b3\\u03bf\\u03c5\\u03c3\\u03c4\\u03bf\\u03c2,\\u03a3\\u03b5\\u03c0\\u03c4\\u03ad\\u03bc\\u03b2\\u03c1\\u03b9\\u03bf\\u03c2,\\u039f\\u03ba\\u03c4\\u03ce\\u03b2\\u03c1\\u03b9\\u03bf\\u03c2,\\u039d\\u03bf\\u03ad\\u03bc\\u03b2\\u03c1\\u03b9\\u03bf\\u03c2,\\u0394\\u03b5\\u03ba\\u03ad\\u03bc\\u03b2\\u03c1\\u03b9\\u03bf\\u03c2\",\"months_short\":\"\\u0399\\u03b1\\u03bd,\\u03a6\\u03b5\\u03b2,\\u039c\\u03ac\\u03c1,\\u0391\\u03c0\\u03c1,\\u039c\\u03ac\\u03b9,\\u0399\\u03bf\\u03cd\\u03bd,\\u0399\\u03bf\\u03cd\\u03bb,\\u0391\\u03cd\\u03b3,\\u03a3\\u03b5\\u03c0,\\u039f\\u03ba\\u03c4,\\u039d\\u03bf\\u03ad,\\u0394\\u03b5\\u03ba\",\"day_long\":\"\\u039a\\u03c5\\u03c1\\u03b9\\u03b1\\u03ba\\u03ae,\\u0394\\u03b5\\u03c5\\u03c4\\u03ad\\u03c1\\u03b1,\\u03a4\\u03c1\\u03af\\u03c4\\u03b7,\\u03a4\\u03b5\\u03c4\\u03ac\\u03c1\\u03c4\\u03b7,\\u03a0\\u03ad\\u03bc\\u03c0\\u03c4\\u03b7,\\u03a0\\u03b1\\u03c1\\u03b1\\u03c3\\u03ba\\u03b5\\u03c5\\u03ae,\\u03a3\\u03ac\\u03b2\\u03b2\\u03b1\\u03c4\\u03bf\",\"day_short\":\"\\u039a\\u03c5,\\u0394\\u03b5,\\u03a4\\u03c1,\\u03a4\\u03b5\\u03c4,\\u03a0\\u03ad\\u03bc,\\u03a0\\u03b1\\u03c1,\\u03a3\\u03b1\\u03b2\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/en_dlg.js",
    "content": "tinyMCE.addI18n('en.template_dlg',{title:\"Templates\",label:\"Template\",\"desc_label\":\"Description\",desc:\"Insert Predefined Template Content\",select:\"Select a Template\",preview:\"Preview\",warning:\"Warning: Updating a template with a different one may cause data loss.\",\"mdate_format\":\"%Y-%m-%d %H:%M:%S\",\"cdate_format\":\"%Y-%m-%d %H:%M:%S\",\"months_long\":\"January,February,March,April,May,June,July,August,September,October,November,December\",\"months_short\":\"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec\",\"day_long\":\"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday\",\"day_short\":\"Sun,Mon,Tue,Wed,Thu,Fri,Sat,Sun\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/es_dlg.js",
    "content": "tinyMCE.addI18n('es.template_dlg',{title:\"Plantillas\",label:\"Plantilla\",desc_label:\"Descripci\\u00f3n\",desc:\"Insertar contenido de plantilla predefinida\",select:\"Elegir plantilla\",preview:\"Vista previa\",warning:\"Cuidado: Actualizar una plantilla con otra puede causar p\\u00e9rdida de datos.\",mdate_format:\"%d-%m-%Y %H:%M:%S\",cdate_format:\"%d-%m-%Y %H:%M:%S\",months_long:\"Enero,Febrero,Marzo,Abril,Mayo,Junio,Julio,Agosto,Septiembre,Octubre,Noviembre,Diciembre\",months_short:\"Ene,Feb,Mar,Abr,May,Jun,Jul,Ago,Sep,Oct,Nov,Dic\",day_long:\"Domingo,Lunes,Martes,Mi\\u00e9rcoles,Jueves,Viernes,S\\u00e1bado,Domingo\",day_short:\"Dom,Lun,Mar,Mie,Jue,Vie,Sab,Dom\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/fr_dlg.js",
    "content": "tinyMCE.addI18n('fr.template_dlg',{title:\"Mod\\u00e8les\",label:\"Mod\\u00e8le\",desc_label:\"Description\",desc:\"Ins\\u00e9rer un mod\\u00e8le pr\\u00e9d\\u00e9fini\",select:\"Choisir un mod\\u00e8le\",preview:\"Pr\\u00e9visualisation\",warning:\"Attention : Mettre \\u00e0 jour un mod\\u00e8le pour un autre peut entra\\u00eener une perte de donn\\u00e9es !\",mdate_format:\"%d/%m/%Y %H:%M:%S\",cdate_format:\"%d/%m/%Y %H:%M:%S\",months_long:\"Janvier,F\\u00e9vrier,Mars,Avril,Mai,Juin,Juillet,Ao\\u00fbt,Septembre,Octobre,Novembre,D\\u00e9cembre\",months_short:\"Jan,F\\u00e9v,Mar,Avr,Mai,Juin,Juil,Ao\\u00fbt,Sep,Oct,Nov,D\\u00e9c\",day_long:\"Dimanche,Lundi,Mardi,Mercredi,Jeudi,Vendredi,Samedi,Dimanche\",day_short:\"Dim,Lun,Mar,Mer,Jeu,Ven,Sam,Dim\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/he_dlg.js",
    "content": "tinyMCE.addI18n('he.template_dlg',{title:\"\\u05ea\\u05d1\\u05e0\\u05d9\\u05d5\\u05ea\",label:\"\\u05ea\\u05d1\\u05e0\\u05d9\\u05ea\",\"desc_label\":\"\\u05ea\\u05d9\\u05d0\\u05d5\\u05e8\",desc:\"Insert predefined template content\",select:\"\\u05d1\\u05d7\\u05e8 \\u05ea\\u05d1\\u05e0\\u05d9\\u05ea\",preview:\"\\u05ea\\u05e6\\u05d5\\u05d2\\u05d4 \\u05de\\u05e7\\u05d3\\u05d9\\u05de\\u05d4\",warning:\"Warning: Updating a template with a different one may cause data loss.\",\"mdate_format\":\"%Y-%m-%d %H:%M:%S\",\"cdate_format\":\"%Y-%m-%d %H:%M:%S\",\"months_long\":\"January,February,March,April,May,June,July,August,September,October,November,December\",\"months_short\":\"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec\",\"day_long\":\"\\u05e8\\u05d0\\u05e9\\u05d5\\u05df,\\u05e9\\u05e0\\u05d9,\\u05e9\\u05dc\\u05d9\\u05e9\\u05d9,\\u05e8\\u05d1\\u05d9\\u05e2\\u05d9,\\u05d7\\u05de\\u05d9\\u05e9\\u05d9,\\u05e9\\u05d9\\u05e9\\u05d9,\\u05e9\\u05d1\\u05ea\",\"day_short\":\"\\u05e8\\u05d0\\u05e9\\u05d5\\u05df,\\u05e9\\u05e0\\u05d9,\\u05e9\\u05dc\\u05d9\\u05e9\\u05d9,\\u05e8\\u05d1\\u05d9\\u05e2\\u05d9,\\u05d7\\u05de\\u05d9\\u05e9\\u05d9,\\u05e9\\u05d9\\u05e9\\u05d9,\\u05e9\\u05d1\\u05ea\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/hr_dlg.js",
    "content": "tinyMCE.addI18n('hr.template_dlg',{title:\"Predlo\\u0161ci\",label:\"Predlo\\u017eak\",desc_label:\"Opis\",desc:\"Umetni sadr\\u017eaj predlo\\u0161ka\",select:\"Odaberite predlo\\u017eak\",preview:\"Prikaz\",warning:\"Upozorenje: Nadopuna predlo\\u0161ka novim mo\\u017ee uzrokovati gubitak podataka.\",mdate_format:\"%d.%m.%Y %H:%M:%S\",cdate_format:\"%d.%m.%Y %H:%M:%S\",months_long:\"sije\\u010danj,velja\\u010da,o\\u017eujak,travanj,svibanj,lipanj,srpanj,kolovoz,rujan,listopad,studeni,prosinac\",months_short:\"sij,velj,o\\u017eu,tra,svi,lip,srp,kol,ruj,lis,stu,pro\",day_long:\"nedjelja,ponedjeljak,utorak,srijeda,\\u010detvrtak,petak,subota,nedjelja\",day_short:\"ned,pon,uto,sri,\\u010det,pet,sub,ned\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/hu_dlg.js",
    "content": "tinyMCE.addI18n('hu.template_dlg',{title:\"Sablon beilleszt\\u00e9se\",label:\"Sablon\",\"desc_label\":\"Le\\u00edr\\u00e1s\",desc:\"Sablon beilleszt\\u00e9se\",select:\"Sablon v\\u00e1laszt\\u00e1sa\",preview:\"El\\u0151n\\u00e9zet\",warning:\"Figyelem: Egy m\\u00e1r alkalmazott sablon friss\\u00edt\\u00e9se m\\u00e1sikkal adatveszt\\u00e9ssel j\\u00e1rhat.\",\"mdate_format\":\"%Y.%m.%d. %H:%M:%S\",\"cdate_format\":\"%Y.%m.%d. %H:%M:%S\",\"months_long\":\"janu\\u00e1r,febru\\u00e1r,m\\u00e1rcius,\\u00e1prilis,m\\u00e1jus,j\\u00fanius,j\\u00falius,augusztus,szeptember,okt\\u00f3ber,november,december\",\"months_short\":\"Jan,Feb,M\\u00e1r,\\u00c1pr,M\\u00e1j,J\\u00fan,J\\u00fal,Aug,Szept,Okt,Nov,Dec\",\"day_long\":\"vas\\u00e1rnap,h\\u00e9tf\\u0151,kedd,szerda,cs\\u00fct\\u00f6rt\\u00f6k,p\\u00e9ntek,szombat,vas\\u00e1rnap\",\"day_short\":\"V,H,K,Sze,Cs,P,Szo,V\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/hy_dlg.js",
    "content": "tinyMCE.addI18n('hy.template_dlg',{title:\"\\u0428\\u0430\\u0431\\u043b\\u043e\\u043d\\u044b\",label:\"\\u0428\\u0430\\u0431\\u043b\\u043e\\u043d\",\"desc_label\":\"\\u041e\\u043f\\u0438\\u0441\\u0430\\u043d\\u0438\\u0435\",desc:\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u044c \\u0448\\u0430\\u0431\\u043b\\u043e\\u043d\\u043d\\u044b\\u0439 \\u043a\\u043e\\u043d\\u0442\\u0435\\u043d\\u0442\",select:\"\\u0412\\u044b\\u0431\\u0435\\u0440\\u0438\\u0442\\u0435 \\u0448\\u0430\\u0431\\u043b\\u043e\\u043d\",preview:\"\\u041f\\u0440\\u043e\\u0441\\u043c\\u043e\\u0442\\u0440\",warning:\"\\u0412\\u043d\\u0438\\u043c\\u0430\\u043d\\u0438\\u0435: \\u043e\\u0431\\u043d\\u043e\\u0432\\u043b\\u0435\\u043d\\u0438\\u044f \\u0448\\u0430\\u0431\\u043b\\u043e\\u043d\\u0430 \\u043d\\u0430 \\u0434\\u0440\\u0443\\u0433\\u043e\\u0439 \\u043c\\u043e\\u0436\\u0435\\u0442 \\u043f\\u0440\\u0438\\u0432\\u0435\\u0441\\u0442\\u0438 \\u043a \\u043f\\u043e\\u0442\\u0435\\u0440\\u044f\\u043c \\u0434\\u0430\\u043d\\u043d\\u044b\\u0445\",\"mdate_format\":\"% Y-% m-% d% H:% M:% S\",\"cdate_format\":\"% Y-% m-% d% H:% M:% S\",\"months_long\":\"\\u044f\\u043d\\u0432\\u0430\\u0440\\u044c, \\u0444\\u0435\\u0432\\u0440\\u0430\\u043b\\u044c, \\u043c\\u0430\\u0440\\u0442, \\u0430\\u043f\\u0440\\u0435\\u043b\\u044c, \\u043c\\u0430\\u0439, \\u0438\\u044e\\u043d\\u044c, \\u0438\\u044e\\u043b\\u044c, \\u0430\\u0432\\u0433\\u0443\\u0441\\u0442, \\u0441\\u0435\\u043d\\u0442\\u044f\\u0431\\u0440\\u044c, \\u043e\\u043a\\u0442\\u044f\\u0431\\u0440\\u044c, \\u043d\\u043e\\u044f\\u0431\\u0440\\u044c, \\u0434\\u0435\\u043a\\u0430\\u0431\\u0440\\u044c\",\"months_short\":\"\\u044f\\u043d\\u0432\\u0430\\u0440\\u044c, \\u0444\\u0435\\u0432\\u0440\\u0430\\u043b\\u044c, \\u043c\\u0430\\u0440\\u0442, \\u0430\\u043f\\u0440\\u0435\\u043b\\u044c, \\u043c\\u0430\\u0439, \\u0438\\u044e\\u043d\\u044c, \\u0438\\u044e\\u043b\\u044c, \\u0430\\u0432\\u0433\\u0443\\u0441\\u0442, \\u0421\\u0435\\u043d\\u0442\\u044f\\u0431\\u0440\\u044c, \\u041e\\u043a\\u0442\\u044f\\u0431\\u0440\\u044c, \\u041d\\u043e\\u044f\\u0431\\u0440\\u044c, \\u0414\\u0435\\u043a\\u0430\\u0431\\u0440\\u044c\",\"day_long\":\"\\u0432\\u043e\\u0441\\u043a\\u0440\\u0435\\u0441\\u0435\\u043d\\u044c\\u0435, \\u043f\\u043e\\u043d\\u0435\\u0434\\u0435\\u043b\\u044c\\u043d\\u0438\\u043a, \\u0432\\u0442\\u043e\\u0440\\u043d\\u0438\\u043a, \\u0441\\u0440\\u0435\\u0434\\u0430, \\u0447\\u0435\\u0442\\u0432\\u0435\\u0440\\u0433, \\u043f\\u044f\\u0442\\u043d\\u0438\\u0446\\u0443, \\u0441\\u0443\\u0431\\u0431\\u043e\\u0442\\u0443, \\u0432\\u043e\\u0441\\u043a\\u0440\\u0435\\u0441\\u0435\\u043d\\u044c\\u0435\",\"day_short\":\"\\u0412\\u0441, \\u041f\\u043d, \\u0412\\u0442, \\u0421\\u0440, \\u0427\\u0442, \\u041f\\u0442, \\u0421\\u0431, \\u0412\\u0441\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/it_dlg.js",
    "content": "tinyMCE.addI18n('it.template_dlg',{title:\"Modelli\",label:\"Modello\",\"desc_label\":\"Descrizione\",desc:\"Inserisci contenuto da modello predefinito\",select:\"Seleziona un modello\",preview:\"Anteprima\",warning:\"Attenzione: Aggiornare un modello con un altro differente pu\\u00f2 causare perdite di dati.\",\"mdate_format\":\"%Y-%m-%d %H:%M:%S\",\"cdate_format\":\"%Y-%m-%d %H:%M:%S\",\"months_long\":\"Gennaio,Febbraio,Marzo,Aprile,Maggio,Giugno,Luglio,Agosto,Settembre,Ottobre,Novembre,Dicembre\",\"months_short\":\"Gen,Feb,Mar,Apr,Mag,Giu,Lug,Ago,Set,Ott,Nov,Dic\",\"day_long\":\"Domenica,Luned\\u00ec,Marted\\u00ec,Mercoled\\u00ec,Gioved\\u00ec,Venerd\\u00ec,Sabato,Domenica\",\"day_short\":\"Dom,Lun,Mar,Mer,Gio,Ven,Sab,Dom\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/ka_dlg.js",
    "content": "tinyMCE.addI18n('ka.template_dlg',{title:\"\\u10e8\\u10d0\\u10d1\\u10da\\u10dd\\u10dc\\u10d4\\u10d1\\u10d8\",label:\"\\u10e8\\u10d0\\u10d1\\u10da\\u10dd\\u10dc\\u10d8\",\"desc_label\":\"\\u10d0\\u10e6\\u10ec\\u10d4\\u10e0\\u10d0\",desc:\"\\u10e8\\u10d0\\u10d1\\u10da\\u10dd\\u10dc\\u10d8\\u10e1 \\u10e9\\u10d0\\u10e1\\u10db\\u10d0\",select:\"\\u10d0\\u10d8\\u10e0\\u10e9\\u10d8\\u10d4\\u10d7 \\u10e8\\u10d0\\u10d1\\u10da\\u10dd\\u10dc\\u10d8\",preview:\"\\u10d3\\u10d0\\u10d7\\u10d5\\u10d0\\u10da\\u10d8\\u10e0\\u10d4\\u10d1\\u10d0\",warning:\"\\u10e7\\u10e3\\u10e0\\u10d0\\u10d3\\u10e6\\u10d4\\u10d1\\u10d0: \\u10e8\\u10d0\\u10d1\\u10da\\u10dd\\u10dc\\u10d8\\u10e1 \\u10d0\\u10e0\\u10e9\\u10d4\\u10d5\\u10d0\\u10db \\u10e8\\u10d4\\u10d8\\u10eb\\u10da\\u10d4\\u10d1\\u10d0 \\u10d2\\u10d0\\u10db\\u10dd\\u10d8\\u10ec\\u10d5\\u10d8\\u10dd\\u10e1 \\u10db\\u10dd\\u10dc\\u10d0\\u10ea\\u10d4\\u10db\\u10d4\\u10d1\\u10d8\\u10e1 \\u10d3\\u10d0\\u10d9\\u10d0\\u10e0\\u10d2\\u10d5\\u10d0/\",\"mdate_format\":\"%Y.%m.%d %H:%M:%S\",\"cdate_format\":\"%Y.%m.%d %H:%M:%S\",\"months_long\":\"\\u10d8\\u10d0\\u10dc\\u10d5\\u10d0\\u10e0\\u10d8,\\u10d7\\u10d4\\u10d1\\u10d4\\u10e0\\u10d5\\u10d0\\u10da\\u10d8,\\u10db\\u10d0\\u10e0\\u10e2\\u10d8,\\u10d0\\u10de\\u10e0\\u10d8\\u10da\\u10d8,\\u10db\\u10d0\\u10d8\\u10e1\\u10d8,\\u10d8\\u10d5\\u10dc\\u10d8\\u10e1\\u10d8,\\u10d8\\u10d5\\u10da\\u10d8\\u10e1\\u10d8,\\u10d0\\u10d2\\u10d5\\u10d8\\u10e1\\u10e2\\u10dd,\\u10e1\\u10d4\\u10e5\\u10e2\\u10d4\\u10db\\u10d1\\u10d4\\u10e0\\u10d8,\\u10dd\\u10e5\\u10e2\\u10dd\\u10db\\u10d1\\u10d4\\u10e0\\u10d8,\\u10dc\\u10dd\\u10d4\\u10db\\u10d1\\u10d4\\u10e0\\u10d8,\\u10d3\\u10d4\\u10d9\\u10d4\\u10db\\u10d1\\u10d4\\u10e0\\u10d8\",\"months_short\":\"\\u10d8\\u10d0\\u10dc,\\u10d7\\u10d4\\u10d1,\\u10db\\u10d0\\u10e0\\u10e2,\\u10d0\\u10de\\u10e0,\\u10db\\u10d0\\u10d8\\u10e1\\u10d8,\\u10d8\\u10d5\\u10dc,\\u10d8\\u10d5\\u10da,\\u10d0\\u10d2\\u10d5,\\u10e1\\u10d4\\u10e5,\\u10dd\\u10e5\\u10e2,\\u10dc\\u10dd\\u10d4\\u10db,\\u10d3\\u10d4\\u10d9\",\"day_long\":\"\\u10d9\\u10d5\\u10d8\\u10e0\\u10d0,\\u10dd\\u10e0\\u10e8\\u10d0\\u10d1\\u10d0\\u10d7\\u10d8,\\u10e1\\u10d0\\u10db\\u10e8\\u10d0\\u10d1\\u10d0\\u10d7\\u10d8,\\u10dd\\u10d7\\u10ee\\u10e8\\u10d0\\u10d1\\u10d0\\u10d7\\u10d8,\\u10ee\\u10e3\\u10d7\\u10e8\\u10d0\\u10d1\\u10d0\\u10d7\\u10d8,\\u10de\\u10d0\\u10e0\\u10d0\\u10e1\\u10d9\\u10d4\\u10d5\\u10d8,\\u10e8\\u10d0\\u10d1\\u10d0\\u10d7\\u10d8,\\u10d9\\u10d5\\u10d8\\u10e0\\u10d0\",\"day_short\":\"\\u10d9\\u10d5,\\u10dd\\u10e0\\u10e8,\\u10e1\\u10d0\\u10db\\u10e8,\\u10dd\\u10d7\\u10ee\\u10e8,\\u10ee\\u10e3\\u10d7,\\u10de\\u10d0\\u10e0,\\u10e8\\u10d0\\u10d1,\\u10d9\\u10d5\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/ko_dlg.js",
    "content": "tinyMCE.addI18n('ko.template_dlg',{title:\"\\ud15c\\ud50c\\ub9bf\",label:\"\\ud15c\\ud50c\\ub9bf\",\"desc_label\":\"\\uc124\\uba85\",desc:\"\\ubbf8\\ub9ac \\uc815\\uc758\\ub41c \\ud15c\\ud50c\\ub9bf \\uc0bd\\uc785\",select:\"\\ud15c\\ud50c\\ub9bf \\uc120\\ud0dd\",preview:\"\\ubbf8\\ub9ac \\ubcf4\\uae30\",warning:\"\\uacbd\\uace0: \\ub2e4\\ub978 \\ud15c\\ud50c\\ub9bf\\uc73c\\ub85c \\ubcc0\\uacbd\\ud558\\uba74 \\ub370\\uc774\\ud130\\uac00 \\uc720\\uc2e4\\ub420 \\uc218 \\uc788\\uc2b5\\ub2c8\\ub2e4.\",\"mdate_format\":\"%Y-%m-%d %H:%M:%S\",\"cdate_format\":\"%Y-%m-%d %H:%M:%S\",\"months_long\":\"1\\uc6d4,2\\uc6d4,3\\uc6d4,4\\uc6d4,5\\uc6d4,6\\uc6d4,7\\uc6d4,8\\uc6d4,9\\uc6d4,10\\uc6d4,11\\uc6d4,12\\uc6d4\",\"months_short\":\"1,2,3,4,5,6,7,8,9,10,11,12\",\"day_long\":\"\\uc77c\\uc694\\uc77c,\\uc6d4\\uc694\\uc77c,\\ud654\\uc694\\uc77c,\\uc218\\uc694\\uc77c,\\ubaa9\\uc694\\uc77c,\\uae08\\uc694\\uc77c,\\ud1a0\\uc694\\uc77c,\\uc77c\\uc694\\uc77c\",\"day_short\":\"\\uc77c,\\uc6d4,\\ud654,\\uc218,\\ubaa9,\\uae08,\\ud1a0,\\uc77c\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/nb_dlg.js",
    "content": "tinyMCE.addI18n('nb.template_dlg',{title:\"Maler\",label:\"Mal\",\"desc_label\":\"Beskrivelse\",desc:\"Sett inn forh\\u00e5ndsdefinert malinnhold\",select:\"Velg en mal\",preview:\"Forh\\u00e5ndsvisning\",warning:\"Advarsel: Utskifting av en mal med en annen kan f\\u00f8re til at data g\\u00e5r tapt.\",\"mdate_format\":\"%Y-%m-%d %H:%M:%S\",\"cdate_format\":\"%Y-%m-%d %H:%M:%S\",\"months_long\":\"januar,februar,mars,april,mai,juni,juli,august,september,oktober,november,desember\",\"months_short\":\"jan,feb,mar,apr,mai,jun,jul,aug,sep,okt,nov,des\",\"day_long\":\"s\\u00f8ndag,mandag,tirsdag,onsdag,torsdag,fredag,l\\u00f8rdag,s\\u00f8ndag\",\"day_short\":\"s\\u00f8n,man,tir,ons,tor,fre,l\\u00f8r,s\\u00f8n\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/nl_dlg.js",
    "content": "tinyMCE.addI18n('nl.template_dlg',{title:\"Sjablonen\",label:\"Sjabloon\",desc_label:\"Beschrijving\",desc:\"Voorgedefinieerd sjabloon invoegen\",select:\"Selecteer een sjabloon\",preview:\"Voorbeeld\",warning:\"Waarschuwing: het bijwerken van een sjabloon met een andere kan het verlies van informatie tot gevolg hebben.\",mdate_format:\"%d-%m-%Y %H:%M:%S\",cdate_format:\"%d-%m-%Y %H:%M:%S\",months_long:\"Januari,Februari,Maart,April,Mei,Juni,Juli,Augustus,September,Oktober,November,December\",months_short:\"Jan,Feb,Mar,Apr,Mei,Jun,Jul,Aug,Sep,Okt,Nov,Dec\",day_long:\"Zondag,Maandag,Dinsdag,Woensdag,Donderdag,Vrijdag,Zaterdag,Zondag\",day_short:\"zo,ma,di,wo,do,vr,za,zo\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/pl_dlg.js",
    "content": "tinyMCE.addI18n('pl.template_dlg',{title:\"Szablony\",label:\"Szablon\",desc_label:\"Opis\",desc:\"Wstaw szablon dokumentu\",select:\"Wybierz szablon\",preview:\"Podgl\\u0105d\",warning:\"Uwaga: Aktualizacja szablon\\u00f3w mo\\u017ce spowodowa\\u0107 utrat\\u0119 danych.\",mdate_format:\"%Y-%m-%d %H:%M:%S\",cdate_format:\"%Y-%m-%d %H:%M:%S\",months_long:\"Stycze\\u0144,Luty,Marzec.Kwiecie\\u0144,Maj,Czerwiec,Lipiec,Sierpie\\u0144,Wrzesie\\u0144,Pa\\u017adziernik,Listopad,Grudzie\\u0144\",months_short:\"Sty,Lut,Mar,Kwi,Maj,Cze,Lip,Sie,Wrz,Pa\\u017a,Lis,Gru\",day_long:\"Niedziela,Poniedzia\\u0142ek,Wtorek,\\u015aroda,Czwartek,Pi\\u0105tek,Sobota,Niedziela\",day_short:\"N,Pn,Wt,\\u015ar,Cz,Pt,So,N\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/pt_dlg.js",
    "content": "tinyMCE.addI18n('pt.template_dlg',{title:\"Templates\",label:\"Template\",desc_label:\"Descri\\u00e7\\u00e3o\",desc:\"Inserir template\",select:\"Selecionar template\",preview:\"Pr\\u00e9-Visualiza\\u00e7\\u00e3o\",warning:\"Aten\\u00e7\\u00e3o: Atualizar um template com outro pode causar a perda de dados.\",mdate_format:\"%d-%m-%Y %H:%M:%S\",cdate_format:\"%d-%m-%Y %H:%M:%S\",months_long:\"Janeiro,Fevereiro,Mar\\u00e7o,Abril,Maio,Junho,Julho,Agosto,Setembro,Outubro,Novembro,Dezembro\",months_short:\"Jan,Fev,Mar,Abr,Mai,Jun,Jul,Ago,Set,Out,Nov,Dez\",day_long:\"Domingo,Segunda-feira,Ter\\u00e7a-feira,Quarta-feira,Quinta-feira,Sexta-feira,S\\u00e1bado,Domingo\",day_short:\"Dom,Seg,Ter,Qua,Qui,Sex,Sab,Dom\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/ro_dlg.js",
    "content": "tinyMCE.addI18n('ro.template_dlg',{title:\"\\u015eabloane\",label:\"\\u015eablon\",desc_label:\"Descriere\",desc:\"Insereaz\\u0103 \\u015fablon\",select:\"Selecteaz\\u0103 \\u015fablon\",preview:\"Previzualizare\",warning:\"Aten\\u0163ie: Schimbarea \\u015fablonului poate provoca pierderi de date\",mdate_format:\"%Y-%m-%d %H:%M:%S\",cdate_format:\"%Y-%m-%d %H:%M:%S\",months_long:\"Ianuarie,Februarie,Martie,Aprilie,Mai,Iunie,Iulie,August,Septembrie,Octombrie,Noiembrie,Decembrie\",months_short:\"Ian,Feb,Mar,Apr,Mai,Iun,Iul,Aug,Sep,Oct,Noi,Dec\",day_long:\"Duminic\\u0103,Luni,Mar\\u0163i,Miercuri,Joi,Vineri,S\\u00e2mb\\u0103t\\u0103,Duminic\\u0103\",day_short:\"Dum,Lun,Mar,Mie,Joi,Vin,S\\u00e2m,Dum\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/ru_dlg.js",
    "content": "tinyMCE.addI18n('ru.template_dlg',{title:\"\\u0428\\u0430\\u0431\\u043b\\u043e\\u043d\\u044b\",label:\"\\u0428\\u0430\\u0431\\u043b\\u043e\\u043d\",desc_label:\"\\u041e\\u043f\\u0438\\u0441\\u0430\\u043d\\u0438\\u0435\",desc:\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u044c \\u0448\\u0430\\u0431\\u043b\\u043e\\u043d\",select:\"\\u0412\\u044b\\u0431\\u0435\\u0440\\u0438\\u0442\\u0435 \\u0448\\u0430\\u0431\\u043b\\u043e\\u043d\",preview:\"\\u041f\\u0440\\u043e\\u0441\\u043c\\u043e\\u0442\\u0440\",warning:\"\\u0412\\u043d\\u0438\\u043c\\u0430\\u043d\\u0438\\u0435: \\u0438\\u0437\\u043c\\u0435\\u043d\\u0435\\u043d\\u0438\\u0435 \\u0448\\u0430\\u0431\\u043b\\u043e\\u043d\\u0430 \\u043c\\u043e\\u0436\\u0435\\u0442 \\u043f\\u0440\\u0438\\u0432\\u0435\\u0441\\u0442\\u0438 \\u043a \\u043f\\u043e\\u0442\\u0435\\u0440\\u044f\\u043c \\u0434\\u0430\\u043d\\u043d\\u044b\\u0445/\",mdate_format:\"%Y.%m.%d %H:%M:%S\",cdate_format:\"%Y.%m.%d %H:%M:%S\",months_long:\"\\u044f\\u043d\\u0432\\u0430\\u0440\\u044c,\\u0444\\u0435\\u0432\\u0440\\u0430\\u043b\\u044c,\\u043c\\u0430\\u0440\\u0442,\\u0430\\u043f\\u0440\\u0435\\u043b\\u044c,\\u043c\\u0430\\u0439,\\u0438\\u044e\\u043d\\u044c,\\u0438\\u044e\\u043b\\u044c,\\u0430\\u0432\\u0433\\u0443\\u0441\\u0442,\\u0441\\u0435\\u043d\\u0442\\u044f\\u0431\\u0440\\u044c,\\u043e\\u043a\\u0442\\u044f\\u0431\\u0440\\u044c,\\u043d\\u043e\\u044f\\u0431\\u0440\\u044c,\\u0434\\u0435\\u043a\\u0430\\u0431\\u0440\\u044c\",months_short:\"\\u044f\\u043d\\u0432,\\u0444\\u0435\\u0432,\\u043c\\u0430\\u0440\\u0442,\\u0430\\u043f\\u0440,\\u043c\\u0430\\u0439,\\u0438\\u044e\\u043d\\u044c,\\u0438\\u044e\\u043b\\u044c,\\u0430\\u0432\\u0433,\\u0441\\u0435\\u043d,\\u043e\\u043a\\u0442,\\u043d\\u043e\\u044f,\\u0434\\u0435\\u043a\",day_long:\"\\u0432\\u043e\\u0441\\u043a\\u0440\\u0435\\u0441\\u0435\\u043d\\u044c\\u0435,\\u043f\\u043e\\u043d\\u0435\\u0434\\u0435\\u043b\\u044c\\u043d\\u0438\\u043a,\\u0432\\u0442\\u043e\\u0440\\u043d\\u0438\\u043a,\\u0441\\u0440\\u0435\\u0434\\u0430,\\u0447\\u0435\\u0442\\u0432\\u0435\\u0440\\u0433,\\u043f\\u044f\\u0442\\u043d\\u0438\\u0446\\u0443,\\u0441\\u0443\\u0431\\u0431\\u043e\\u0442\\u0430,\\u0432\\u043e\\u0441\\u043a\\u0440\\u0435\\u0441\\u0435\\u043d\\u044c\\u0435\",day_short:\"\\u0432\\u0441,\\u043f\\u043d,\\u0432\\u0442,\\u0441\\u0440,\\u0447\\u0442,\\u043f\\u0442,\\u0441\\u0431,\\u0432\\u0441\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/sr_dlg.js",
    "content": "tinyMCE.addI18n('sr.template_dlg',{title:\"\\u0160abloni\",label:\"\\u0160ablon\",desc_label:\"Opis\",desc:\"Ubaci sadr\\u017eaj \\u0161ablona\",select:\"Izaberi \\u0161ablon\",preview:\"Pregled\",warning:\"Upozorenje: Zamena \\u0161ablona novim mo\\u017ee da dovede do gubitka podataka.\",mdate_format:\"%d.%m.%Y %H:%M:%S\",cdate_format:\"%d.%m.%Y %H:%M:%S\",months_long:\"januar,februar,mart,april,maj,juni,juli,avgust,septembar,oktobar,novembar,decembar\",months_short:\"jan,feb,mar,apr,maj,jun,jul,avg,sep,okt,nov,dec\",day_long:\"nedelja,ponedeljak,utorak,sreda,\\u010detvrtak,petak,subota,nedelja\",day_short:\"ned,pon,uto,sri,\\u010det,pet,sub,ned\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/sv_dlg.js",
    "content": "tinyMCE.addI18n('sv.template_dlg',{title:\"Mallar\",label:\"Mall\",\"desc_label\":\"Beskrivning\",desc:\"Infoga en f\\u00e4rdig mall\",select:\"V\\u00e4lj en mall\",preview:\"F\\u00f6rhandsgranska\",warning:\"Varning: Uppdaterar en mall med en ny kan inneb\\u00e4ra att data f\\u00f6rsvinner.\",\"mdate_format\":\"%Y-%m-%d %H:%M:%S\",\"cdate_format\":\"%Y-%m-%d %H:%M:%S\",\"months_long\":\"Januari,Februari,Mars,April,Maj,Juni,Juli,Augusti,September,Oktober,November,December\",\"months_short\":\"Jan,Feb,Mar,Apr,Maj,Jun,Jul,Aug,Sep,Okt,Nov,Dec\",\"day_long\":\"S\\u00f6ndag,M\\u00e5ndag,Tisdag,Onsdag,Torsdag,Fredag,L\\u00f6rdag,S\\u00f6ndag\",\"day_short\":\"S\\u00f6n,M\\u00e5n,Tis,Ons,Tors,Fre,L\\u00f6r,S\\u00f6n\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/tr_dlg.js",
    "content": "tinyMCE.addI18n('tr.template_dlg',{title:\"\\u015eablonlar\",label:\"\\u015eablon\",\"desc_label\":\"A\\u00e7\\u0131klama\",desc:\"\\u00d6ntan\\u0131ml\\u0131 i\\u00e7erik \\u015fablonu kullan\",select:\"\\u015eablonu se\\u00e7\",preview:\"\\u00d6nizleme\",warning:\"Uyar\\u0131: Bir \\u015fablonu bir di\\u011feriyle g\\u00fcncellemek veri kayb\\u0131na yol a\\u00e7abilir.\",\"mdate_format\":\"%d-%m-%Y %H:%M:%S\",\"cdate_format\":\"%d-%m-%Y %H:%M:%S\",\"months_long\":\"Ocak,\\u015eubat,Mart,Nisan,May\\u0131s,Haziran,Temmuz,A\\u011fustos,Eyl\\u00fcl,Ekim,Kas\\u0131m,Aral\\u0131k\",\"months_short\":\"Oca,\\u015eub,Mar,Nis,May,Haz,Tem,A\\u011fu,Eyl,Eki,Kas,Ara\",\"day_long\":\"Pazar,Pazartesi,Sal\\u0131,\\u00c7ar\\u015famba,Per\\u015fembe,Cuma,Cumartesi\",\"day_short\":\"Paz,Pzt,Sal,\\u00c7r\\u015f,Per,Cum,Cts\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/uk_dlg.js",
    "content": "tinyMCE.addI18n('uk.template_dlg',{title:\"\\u0428\\u0430\\u0431\\u043b\\u043e\\u043d\\u0438\",label:\"\\u0428\\u0430\\u0431\\u043b\\u043e\\u043d\",\"desc_label\":\"\\u041e\\u043f\\u0438\\u0441\",desc:\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438 \\u0448\\u0430\\u0431\\u043b\\u043e\\u043d\\u043d\\u0438\\u0439 \\u043a\\u043e\\u043d\\u0442\\u0435\\u043d\\u0442\",select:\"\\u0412\\u0438\\u0431\\u0435\\u0440\\u0456\\u0442\\u044c \\u0448\\u0430\\u0431\\u043b\\u043e\\u043d\",preview:\"\\u041f\\u0435\\u0440\\u0435\\u0433\\u043b\\u044f\\u0434\",warning:\"\\u0423\\u0432\\u0430\\u0433\\u0430: \\u043e\\u043d\\u043e\\u0432\\u043b\\u0435\\u043d\\u043d\\u044f \\u0448\\u0430\\u0431\\u043b\\u043e\\u043d\\u0430 \\u043d\\u0430 \\u0456\\u043d\\u0448\\u0438\\u0439 \\u043c\\u043e\\u0436\\u0435 \\u043f\\u0440\\u0438\\u0432\\u0435\\u0441\\u0442\\u0438 \\u0434\\u043e \\u0432\\u0442\\u0440\\u0430\\u0442 \\u0434\\u0430\\u043d\\u0438\\u0445.\",\"mdate_format\":\"%Y-%m-%d %H:%M:%S\",\"cdate_format\":\"%Y-%m-%d %H:%M:%S\",\"months_long\":\"\\u0421\\u0456\\u0447\\u0435\\u043d\\u044c,\\u041b\\u044e\\u0442\\u0438\\u0439,\\u0411\\u0435\\u0440\\u0435\\u0437\\u0435\\u043d\\u044c,\\u041a\\u0432\\u0456\\u0442\\u0435\\u043d\\u044c,\\u0422\\u0440\\u0430\\u0432\\u0435\\u043d\\u044c,\\u0427\\u0435\\u0440\\u0432\\u0435\\u043d\\u044c,\\u041b\\u0438\\u043f\\u0435\\u043d\\u044c,\\u0421\\u0435\\u0440\\u043f\\u0435\\u043d\\u044c,\\u0412\\u0435\\u0440\\u0435\\u0441\\u0435\\u043d\\u044c,\\u0416\\u043e\\u0432\\u0442\\u0435\\u043d\\u044c,\\u041b\\u0438\\u0441\\u0442\\u043e\\u043f\\u0430\\u0434,\\u0413\\u0440\\u0443\\u0434\\u0435\\u043d\\u044c\",\"months_short\":\"\\u0421\\u0456\\u0447,\\u041b\\u044e\\u0442,\\u0411\\u0435\\u0440,\\u041a\\u0432\\u0456,\\u0422\\u0440\\u0430,\\u0427\\u0435\\u0440,\\u041b\\u0438\\u043f,\\u0421\\u0435\\u0440,\\u0412\\u0435\\u0440,\\u0416\\u043e\\u0432,\\u041b\\u0438\\u0441,\\u0413\\u0440\\u0443\",\"day_long\":\"\\u041d\\u0435\\u0434\\u0456\\u043b\\u044f,\\u041f\\u043e\\u043d\\u0435\\u0434\\u0456\\u043b\\u043e\\u043a,\\u0412\\u0456\\u0432\\u0442\\u043e\\u0440\\u043e\\u043a,\\u0421\\u0435\\u0440\\u0435\\u0434\\u0430,\\u0427\\u0435\\u0442\\u0432\\u0435\\u0440,\\u041f\\'\\u044f\\u0442\\u043d\\u0438\\u0446\\u044f,\\u0421\\u0443\\u0431\\u043e\\u0442\\u0430,\\u041d\\u0435\\u0434\\u0456\\u043b\\u044f\",\"day_short\":\"\\u041d\\u0434,\\u041f\\u043d,\\u0412\\u0442,\\u0421\\u0440,\\u0427\\u0442,\\u041f\\u0442,\\u0421\\u0431,\\u041d\\u0434\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/zh-tw_dlg.js",
    "content": "tinyMCE.addI18n('zh-tw.template_dlg',{title:\"\\u7248\\u578b\",label:\"\\u7248\\u578b\",\"desc_label\":\"\\u8a3b\\u89e3\",desc:\"\\u5957\\u7248\\u7248\\u578b\\u7684\\u5167\\u5bb9\",select:\"\\u9078\\u4e00\\u500b\\u7248\\u578b\",preview:\"\\u9810\\u89bd\",warning:\"\\u66f4\\u65b0\\u7248\\u578b\\u53ef\\u80fd\\u6703\\u628a\\u4e4b\\u524d\\u7684\\u8cc7\\u6599\\u5f04\\u4e0d\\u898b\\u5594\\uff01\",\"mdate_format\":\"%Y-%m-%d %H:%M:%S\",\"cdate_format\":\"%Y-%m-%d %H:%M:%S\",\"months_long\":\"\\u4e00\\u6708,\\u4e8c\\u6708,\\u4e09\\u6708,\\u56db\\u6708,\\u4e94\\u6708,\\u516d\\u6708,\\u4e03\\u6708,\\u516b\\u6708,\\u4e5d\\u6708,\\u5341\\u6708,\\u5341\\u4e00\\u6708,\\u5341\\u4e8c\\u6708\",\"months_short\":\"\\u4e00\\u6708,\\u4e8c\\u6708,\\u4e09\\u6708,\\u56db\\u6708,\\u4e94\\u6708,\\u516d\\u6708,\\u4e03\\u6708,\\u516b\\u6708,\\u4e5d\\u6708,\\u5341\\u6708,\\u5341\\u4e00\\u6708,\\u5341\\u4e8c\\u6708\",\"day_long\":\"\\u661f\\u671f\\u4e00,\\u661f\\u671f\\u4e8c,\\u661f\\u671f\\u4e09,\\u661f\\u671f\\u56db,\\u661f\\u671f\\u4e94,\\u661f\\u671f\\u516d,\\u661f\\u671f\\u65e5\",\"day_short\":\"\\u9031\\u4e00,\\u9031\\u4e8c,\\u9031\\u4e09,\\u9031\\u56db,\\u9031\\u4e94,\\u9031\\u516d,\\u9031\\u65e5\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/langs/zh_dlg.js",
    "content": "tinyMCE.addI18n('zh.template_dlg',{title:\"\\u6837\\u677f\\u6807\\u9898\",label:\"\\u6837\\u677f\",\"desc_label\":\"\\u8bf4\\u660e\",desc:\"\\u63d2\\u5165\\u5df2\\u5b9a\\u4e49\\u7684\\u6837\\u677f\",select:\"\\u9009\\u62e9\\u6837\\u677f\",preview:\"\\u9884\\u89c8\",warning:\"\\u8b66\\u544a\\uff1a\\u5957\\u7528\\u4e0d\\u540c\\u7684\\u6837\\u677f\\u6709\\u53ef\\u80fd\\u5bfc\\u81f4\\u8d44\\u6599\\u6d41\\u5931\\u3002\",\"mdate_format\":\"%Y/%m/%d %H:%M:%S\",\"cdate_format\":\"%Y/%m/%d %H:%M:%S\",\"months_long\":\"\\u4e00\\u6708,\\u4e8c\\u6708,\\u4e09\\u6708,\\u56db\\u6708,\\u4e94\\u6708,\\u516d\\u6708,\\u4e03\\u6708,\\u516b\\u6708,\\u4e5d\\u6708,\\u5341\\u6708,\\u5341\\u4e00\\u6708,\\u5341\\u4e8c\\u6708\",\"months_short\":\"1\\u6708,2\\u6708,3\\u6708,4\\u6708,5\\u6708,6\\u6708,7\\u6708,8\\u6708,9\\u6708,10\\u6708,11\\u6708,12\\u6708\",\"day_long\":\"\\u661f\\u671f\\u65e5,\\u661f\\u671f\\u4e00,\\u661f\\u671f\\u4e8c,\\u661f\\u671f\\u4e09,\\u661f\\u671f\\u56db,\\u661f\\u671f\\u4e94,\\u661f\\u671f\\u516d,\\u661f\\u671f\\u65e5\",\"day_short\":\"\\u65e5,\\u4e00,\\u4e8c,\\u4e09,\\u56db,\\u4e94,\\u516d,\\u65e5\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/template/template.htm",
    "content": "<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#template_dlg.title}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/template.js\"></script>\r\n\t<link href=\"css/template.css\" rel=\"stylesheet\" type=\"text/css\" />\r\n</head>\r\n<body onresize=\"TemplateDialog.resize();\"> \r\n\t<form onsubmit=\"TemplateDialog.insert();return false;\">\r\n\t\t<div id=\"frmbody\">\r\n\t\t\t<div class=\"title\">{#template_dlg.desc}</div>\r\n\t\t\t<div class=\"frmRow\"><label for=\"tpath\" title=\"{#template_dlg.select}\">{#template_dlg.label}:</label>\r\n\t\t\t<select id=\"tpath\" name=\"tpath\" onchange=\"TemplateDialog.selectTemplate(this.options[this.selectedIndex].value, this.options[this.selectedIndex].text);\" class=\"mceFocus\">\r\n\t\t\t\t<option value=\"\">{#template_dlg.select}...</option>\r\n\t\t\t</select>\r\n\t\t\t<span id=\"warning\"></span></div>\r\n\t\t\t<div class=\"frmRow\"><label for=\"tdesc\">{#template_dlg.desc_label}:</label>\r\n\t\t\t<span id=\"tmpldesc\"></span></div>\r\n\t\t\t<fieldset>\r\n\t\t\t\t<legend>{#template_dlg.preview}</legend>\r\n\t\t\t\t<iframe id=\"templatesrc\" name=\"templatesrc\" src=\"blank.htm\" width=\"690\" height=\"400\" frameborder=\"0\"></iframe>\r\n\t\t\t</fieldset>\r\n\t\t</div>\r\n\t\t\r\n\t\t<div class=\"mceActionPanel\">\r\n\t\t\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#insert}\" />\r\n\t\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t\t</div>\r\n\t</form>\r\n</body> \r\n</html> \r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/css/textbox.css",
    "content": "body\r\n{\r\n    width:530px;\r\n    height: 500px;\r\n    direction:ltr;\r\n    text-align:left;\r\n}\r\n.Container\r\n{\r\n    padding-left:5px;\r\n    padding-top:5px;\r\n}\r\n.CodeArea\r\n{\r\n    width:500px;\r\n    height:400px;\r\n    direction:ltr;\r\n    text-align:left;\r\n}\r\n\r\n.Actions\r\n{\r\n    padding-top:5px;\r\n    padding-right:24px;\r\n    float:right;\r\n}\r\n\r\n.Options\r\n{\r\n    float:left;\r\n    text-align:left;\r\n}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/editor_plugin.js",
    "content": "﻿/**\r\n * @author Nawaf M Al Badia\r\n * @version 1.0 April 2008\r\n */\r\n\r\n(function() {\r\n\t// Load plugin specific language pack\r\n\ttinymce.PluginManager.requireLangPack('textbox');\r\n\r\n\ttinymce.create('tinymce.plugins.textbox', {\r\n\t\t/**\r\n\t\t * Initializes the plugin, this will be executed after the plugin has been created.\r\n\t\t * This call is done before the editor instance has finished it's initialization so use the onInit event\r\n\t\t * of the editor instance to intercept that event.\r\n\t\t *\r\n\t\t * @param {tinymce.Editor} ed Editor instance that the plugin is initialized in.\r\n\t\t * @param {string} url Absolute URL to where the plugin is located.\r\n\t\t */\r\n\t\tinit : function(ed, url) {\r\n\t\t\t// Register the command so that it can be invoked by using tinyMCE.activeEditor.execCommand('mceExample');\r\n\t\t\ted.addCommand('mceaddtextbox', function() {\r\n\t\t\t\ted.windowManager.open({\r\n\t\t\t\t\tfile : url + '/textbox.htm',\r\n\t\t\t\t\twidth : 530 + ed.getLang('textbox.delta_width', 0),\r\n\t\t\t\t\theight : 500 + ed.getLang('textbox.delta_height', 0),\r\n\t\t\t\t\tinline : 1\r\n\t\t\t\t}, {\r\n\t\t\t\t\tplugin_url : url, // Plugin absolute URL\r\n\t\t\t\t\tsome_custom_arg : 'custom arg' // Custom argument\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\t// Register example button\r\n\t\t\ted.addButton('textbox', {\r\n\t\t\t\ttitle : 'textbox.textbox_button_desc',\r\n\t\t\t\tcmd : 'mceaddtextbox',\r\n\t\t\t\timage : url + '/img/textbox.gif'\r\n\t\t\t});\r\n\r\n\t\t\t// Add a node change handler, selects the button in the UI when a image is selected\r\n\t\t\ted.onNodeChange.add(function(ed, cm, n) {\r\n\t\t\t\tcm.setActive('textbox', n.nodeName == 'IMG');\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * @return {Object} Name/value array containing information about the plugin.\r\n\t\t */\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'textbox',\r\n\t\t\t\tauthor : 'Nawaf M Al Badia',\r\n\t\t\t\tauthorurl : 'http://weblogs.asp.net/nawaf/',\r\n\t\t\t\tinfourl : 'http://weblogs.asp.net/nawaf/',\r\n\t\t\t\tversion : \"1.0\"\r\n\t\t\t};\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('textbox', tinymce.plugins.textbox);\r\n})();\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/js/textbox.js",
    "content": "\n    function  Save_Button_onclick() {\n        var code =  WrapCode();\n        code = code + document.getElementById(\"CodeArea\").value;\n        code = code + \"</div> \"\n        if (document.getElementById(\"CodeArea\").value == ''){\n            tinyMCEPopup.close();\n            return false;\n        }\n        tinyMCEPopup.execCommand('mceInsertContent', false, code);\n        tinyMCEPopup.close();\n    }\n\n    function  WrapCode()\n    {\n        return \"<div class=\\\"camp-textbox\\\">\";\n    }\n\n    function Cancel_Button_onclick()\n    {\n        tinyMCEPopup.close();\n        return false;\n    }\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/ar.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('ar.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/az.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('az.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/be.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('be.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/cs.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('cs.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/da.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('da.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/de.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('de.textbox',{\r\ntextbox_desc : \"Text Box\",\r\ntextbox_title : \"Text Box\",\r\ntextbox_pagecode : \"Paste/Write your text here\",\r\ntextbox_button_desc: \"Insert\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/el.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('el.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/en.js",
    "content": "// UK lang variables\r\ntinyMCE.addI18n('en.textbox',{\r\ntextbox_desc : \"Text Box\",\r\ntextbox_title : \"Text Box\",\r\ntextbox_pagecode : \"Paste/Write your text here\",\r\ntextbox_button_desc: \"Insert\"\r\n});\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/es.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('es.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/fr.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('fr.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/he.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('he.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/hr.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('hr.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/hu.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('hu.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/hy.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('hy.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/it.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('it.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/ka.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('ka.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/ko.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('ko.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/nb.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('nb.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/nl.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('nl.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/pl.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('pl.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Wklej/Wpisz swój teks tutaj\",\ntextbox_button_desc: \"Wstaw\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/pt.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('pt.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/ro.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('ro.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/ru.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('ru.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/sr.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('sr.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/sv.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('sv.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/tr.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('tr.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/uk.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('uk.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/zh-tw.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('zh-tw.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/langs/zh.js",
    "content": "// UK lang variables\ntinyMCE.addI18n('zh.textbox',{\ntextbox_desc : \"Text Box\",\ntextbox_title : \"Text Box\",\ntextbox_pagecode : \"Paste/Write your text here\",\ntextbox_button_desc: \"Insert\"\n});\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/textbox/textbox.htm",
    "content": "<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#codehighlighting.codehighlighting_title}</title>\r\n\t<script language=\"javascript\" type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script language=\"javascript\" type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script language=\"javascript\" type=\"text/javascript\" src=\"../../utils/form_utils.js\"></script>\r\n\t<script language=\"javascript\" type=\"text/javascript\" src=\"js/textbox.js\">\r\n</script>\r\n\t<link rel=\"stylesheet\" type=\"text/css\" href=\"css/textbox.css\" />\r\n\t<base target=\"_self\" />\r\n</head>\r\n<body onload=\"\" style=\"display: none; margin: 4px;\">\r\n<form onsubmit=\"return false;\" action=\"#\">\r\n\t<div class=\"Container\">\r\n        {#textbox.textbox_pagecode}:<br />\r\n        <textarea id=\"CodeArea\" class=\"CodeArea\"></textarea><br />\r\n        <div class=\"Actions\">\r\n        <input id=\"cancel\" type=\"button\" value=\"{#cancel}\" language=\"javascript\" onclick=\"return Cancel_Button_onclick()\" />\r\n        <input id=\"insert\" type=\"button\" value=\"{#insert}\" language=\"javascript\" onclick=\"return Save_Button_onclick()\" /></div>\r\n        </div>\r\n</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/visualchars/editor_plugin.js",
    "content": "(function(){tinymce.create(\"tinymce.plugins.VisualChars\",{init:function(a,b){var c=this;c.editor=a;a.addCommand(\"mceVisualChars\",c._toggleVisualChars,c);a.addButton(\"visualchars\",{title:\"visualchars.desc\",cmd:\"mceVisualChars\"});a.onBeforeGetContent.add(function(d,e){if(c.state&&e.format!=\"raw\"&&!e.draft){c.state=true;c._toggleVisualChars(false)}})},getInfo:function(){return{longname:\"Visual characters\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/visualchars\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}},_toggleVisualChars:function(m){var p=this,k=p.editor,a,g,j,n=k.getDoc(),o=k.getBody(),l,q=k.selection,e,c,f;p.state=!p.state;k.controlManager.setActive(\"visualchars\",p.state);if(m){f=q.getBookmark()}if(p.state){a=[];tinymce.walk(o,function(b){if(b.nodeType==3&&b.nodeValue&&b.nodeValue.indexOf(\"\\u00a0\")!=-1){a.push(b)}},\"childNodes\");for(g=0;g<a.length;g++){l=a[g].nodeValue;l=l.replace(/(\\u00a0)/g,'<span data-mce-bogus=\"1\" class=\"mceItemHidden mceItemNbsp\">$1</span>');c=k.dom.create(\"div\",null,l);while(node=c.lastChild){k.dom.insertAfter(node,a[g])}k.dom.remove(a[g])}}else{a=k.dom.select(\"span.mceItemNbsp\",o);for(g=a.length-1;g>=0;g--){k.dom.remove(a[g],1)}}q.moveToBookmark(f)}});tinymce.PluginManager.add(\"visualchars\",tinymce.plugins.VisualChars)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/visualchars/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\ttinymce.create('tinymce.plugins.VisualChars', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tt.editor = ed;\r\n\r\n\t\t\t// Register commands\r\n\t\t\ted.addCommand('mceVisualChars', t._toggleVisualChars, t);\r\n\r\n\t\t\t// Register buttons\r\n\t\t\ted.addButton('visualchars', {title : 'visualchars.desc', cmd : 'mceVisualChars'});\r\n\r\n\t\t\ted.onBeforeGetContent.add(function(ed, o) {\r\n\t\t\t\tif (t.state && o.format != 'raw' && !o.draft) {\r\n\t\t\t\t\tt.state = true;\r\n\t\t\t\t\tt._toggleVisualChars(false);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Visual characters',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/visualchars',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t},\r\n\r\n\t\t// Private methods\r\n\r\n\t\t_toggleVisualChars : function(bookmark) {\r\n\t\t\tvar t = this, ed = t.editor, nl, i, h, d = ed.getDoc(), b = ed.getBody(), nv, s = ed.selection, bo, div, bm;\r\n\r\n\t\t\tt.state = !t.state;\r\n\t\t\ted.controlManager.setActive('visualchars', t.state);\r\n\r\n\t\t\tif (bookmark)\r\n\t\t\t\tbm = s.getBookmark();\r\n\r\n\t\t\tif (t.state) {\r\n\t\t\t\tnl = [];\r\n\t\t\t\ttinymce.walk(b, function(n) {\r\n\t\t\t\t\tif (n.nodeType == 3 && n.nodeValue && n.nodeValue.indexOf('\\u00a0') != -1)\r\n\t\t\t\t\t\tnl.push(n);\r\n\t\t\t\t}, 'childNodes');\r\n\r\n\t\t\t\tfor (i = 0; i < nl.length; i++) {\r\n\t\t\t\t\tnv = nl[i].nodeValue;\r\n\t\t\t\t\tnv = nv.replace(/(\\u00a0)/g, '<span data-mce-bogus=\"1\" class=\"mceItemHidden mceItemNbsp\">$1</span>');\r\n\r\n\t\t\t\t\tdiv = ed.dom.create('div', null, nv);\r\n\t\t\t\t\twhile (node = div.lastChild)\r\n\t\t\t\t\t\ted.dom.insertAfter(node, nl[i]);\r\n\r\n\t\t\t\t\ted.dom.remove(nl[i]);\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tnl = ed.dom.select('span.mceItemNbsp', b);\r\n\r\n\t\t\t\tfor (i = nl.length - 1; i >= 0; i--)\r\n\t\t\t\t\ted.dom.remove(nl[i], 1);\r\n\t\t\t}\r\n\r\n\t\t\ts.moveToBookmark(bm);\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('visualchars', tinymce.plugins.VisualChars);\r\n})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/wordcount/editor_plugin.js",
    "content": "(function(){tinymce.create(\"tinymce.plugins.WordCount\",{block:0,id:null,countre:null,cleanre:null,init:function(a,b){var c=this,d=0;c.countre=a.getParam(\"wordcount_countregex\",/[\\w\\u2019\\'-]+/g);c.cleanre=a.getParam(\"wordcount_cleanregex\",/[0-9.(),;:!?%#$?\\'\\\"_+=\\\\\\/-]*/g);c.id=a.id+\"-word-count\";a.onPostRender.add(function(f,e){var g,h;h=f.getParam(\"wordcount_target_id\");if(!h){g=tinymce.DOM.get(f.id+\"_path_row\");if(g){tinymce.DOM.add(g.parentNode,\"div\",{style:\"float: right\"},f.getLang(\"wordcount.words\",\"Words: \")+'<span id=\"'+c.id+'\">0</span>')}}else{tinymce.DOM.add(h,\"span\",{},'<span id=\"'+c.id+'\">0</span>')}});a.onInit.add(function(e){e.selection.onSetContent.add(function(){c._count(e)});c._count(e)});a.onSetContent.add(function(e){c._count(e)});a.onKeyUp.add(function(f,g){if(g.keyCode==d){return}if(13==g.keyCode||8==d||46==d){c._count(f)}d=g.keyCode})},_getCount:function(c){var a=0;var b=c.getContent({format:\"raw\"});if(b){b=b.replace(/\\.\\.\\./g,\" \");b=b.replace(/<.[^<>]*?>/g,\" \").replace(/&nbsp;|&#160;/gi,\" \");b=b.replace(/(\\w+)(&.+?;)+(\\w+)/,\"$1$3\").replace(/&.+?;/g,\" \");b=b.replace(this.cleanre,\"\");var d=b.match(this.countre);if(d){a=d.length}}return a},_count:function(a){var b=this;if(b.block){return}b.block=1;setTimeout(function(){if(!a.destroyed){var c=b._getCount(a);tinymce.DOM.setHTML(b.id,c.toString());setTimeout(function(){b.block=0},2000)}},1)},getInfo:function(){return{longname:\"Word Count plugin\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/wordcount\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}}});tinymce.PluginManager.add(\"wordcount\",tinymce.plugins.WordCount)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/wordcount/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\ttinymce.create('tinymce.plugins.WordCount', {\r\n\t\tblock : 0,\r\n\t\tid : null,\r\n\t\tcountre : null,\r\n\t\tcleanre : null,\r\n\r\n\t\tinit : function(ed, url) {\r\n\t\t\tvar t = this, last = 0;\r\n\r\n\t\t\tt.countre = ed.getParam('wordcount_countregex', /[\\w\\u2019\\'-]+/g); // u2019 == &rsquo;\r\n\t\t\tt.cleanre = ed.getParam('wordcount_cleanregex', /[0-9.(),;:!?%#$?\\'\\\"_+=\\\\\\/-]*/g);\r\n\t\t\tt.id = ed.id + '-word-count';\r\n\r\n\t\t\ted.onPostRender.add(function(ed, cm) {\r\n\t\t\t\tvar row, id;\r\n\r\n\t\t\t\t// Add it to the specified id or the theme advanced path\r\n\t\t\t\tid = ed.getParam('wordcount_target_id');\r\n\t\t\t\tif (!id) {\r\n\t\t\t\t\trow = tinymce.DOM.get(ed.id + '_path_row');\r\n\r\n\t\t\t\t\tif (row)\r\n\t\t\t\t\t\ttinymce.DOM.add(row.parentNode, 'div', {'style': 'float: right'}, ed.getLang('wordcount.words', 'Words: ') + '<span id=\"' + t.id + '\">0</span>');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttinymce.DOM.add(id, 'span', {}, '<span id=\"' + t.id + '\">0</span>');\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\ted.onInit.add(function(ed) {\r\n\t\t\t\ted.selection.onSetContent.add(function() {\r\n\t\t\t\t\tt._count(ed);\r\n\t\t\t\t});\r\n\r\n\t\t\t\tt._count(ed);\r\n\t\t\t});\r\n\r\n\t\t\ted.onSetContent.add(function(ed) {\r\n\t\t\t\tt._count(ed);\r\n\t\t\t});\r\n\r\n\t\t\ted.onKeyUp.add(function(ed, e) {\r\n\t\t\t\tif (e.keyCode == last)\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\tif (13 == e.keyCode || 8 == last || 46 == last)\r\n\t\t\t\t\tt._count(ed);\r\n\r\n\t\t\t\tlast = e.keyCode;\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t_getCount : function(ed) {\r\n\t\t\tvar tc = 0;\r\n\t\t\tvar tx = ed.getContent({ format: 'raw' });\r\n\r\n\t\t\tif (tx) {\r\n\t\t\t\t\ttx = tx.replace(/\\.\\.\\./g, ' '); // convert ellipses to spaces\r\n\t\t\t\t\ttx = tx.replace(/<.[^<>]*?>/g, ' ').replace(/&nbsp;|&#160;/gi, ' '); // remove html tags and space chars\r\n\r\n\t\t\t\t\t// deal with html entities\r\n\t\t\t\t\ttx = tx.replace(/(\\w+)(&.+?;)+(\\w+)/, \"$1$3\").replace(/&.+?;/g, ' ');\r\n\t\t\t\t\ttx = tx.replace(this.cleanre, ''); // remove numbers and punctuation\r\n\r\n\t\t\t\t\tvar wordArray = tx.match(this.countre);\r\n\t\t\t\t\tif (wordArray) {\r\n\t\t\t\t\t\t\ttc = wordArray.length;\r\n\t\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\treturn tc;\r\n\t\t},\r\n\r\n\t\t_count : function(ed) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\t// Keep multiple calls from happening at the same time\r\n\t\t\tif (t.block)\r\n\t\t\t\treturn;\r\n\r\n\t\t\tt.block = 1;\r\n\r\n\t\t\tsetTimeout(function() {\r\n\t\t\t\tif (!ed.destroyed) {\r\n\t\t\t\t\tvar tc = t._getCount(ed);\r\n\t\t\t\t\ttinymce.DOM.setHTML(t.id, tc.toString());\r\n\t\t\t\t\tsetTimeout(function() {t.block = 0;}, 2000);\r\n\t\t\t\t}\r\n\t\t\t}, 1);\r\n\t\t},\r\n\r\n\t\tgetInfo: function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Word Count plugin',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/wordcount',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t}\r\n\t});\r\n\r\n\ttinymce.PluginManager.add('wordcount', tinymce.plugins.WordCount);\r\n})();\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/abbr.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#xhtmlxtras_dlg.title_abbr_element}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/form_utils.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/editable_selects.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/element_common.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/abbr.js\"></script>\r\n\t<link rel=\"stylesheet\" type=\"text/css\" href=\"css/popup.css\" />\r\n</head>\r\n<body style=\"display: none\" role=\"application\" aria-labelledby=\"app_title\">\r\n<span style=\"display:none;\" id=\"app_title\">{#xhtmlxtras_dlg.title_abbr_element}</span>\r\n<form onsubmit=\"insertAbbr();return false;\" action=\"#\">\r\n\t<div class=\"tabs\">\r\n\t\t<ul>\r\n\t\t\t<li id=\"general_tab\" class=\"current\" aria-controls=\"general_panel\"><span><a href=\"javascript:mcTabs.displayTab('general_tab','general_panel');\" onmousedown=\"return false;\">{#xhtmlxtras_dlg.general_tab}</a></span></li>\r\n\t\t\t<!-- <li id=\"events_tab\"><span><a href=\"javascript:mcTabs.displayTab('events_tab','events_panel');\" onmousedown=\"return false;\">{#xhtmlxtras_dlg.events_tab}</a></span></li> -->\r\n\t\t</ul>\r\n\t</div>\r\n\r\n\t<div class=\"panel_wrapper\">\r\n\t\t<div id=\"general_panel\" class=\"panel current\">\r\n\t\t\t<fieldset>\r\n\t\t\t\t<legend>{#xhtmlxtras_dlg.fieldset_attrib_tab}</legend>\r\n\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"4\">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"titlelabel\" for=\"title\">{#xhtmlxtras_dlg.attribute_label_title}</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"title\" name=\"title\" type=\"text\" value=\"\" class=\"field mceFocus\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"idlabel\" for=\"id\">{#xhtmlxtras_dlg.attribute_label_id}</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"id\" name=\"id\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"classlabel\" for=\"class\">{#xhtmlxtras_dlg.attribute_label_class}</label>:</td> \r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t<select id=\"class\" name=\"class\" class=\"field mceEditableSelect\">\r\n\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"stylelabel\" for=\"style\">{#xhtmlxtras_dlg.attribute_label_style}</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"style\" name=\"style\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"dirlabel\" for=\"dir\">{#xhtmlxtras_dlg.attribute_label_langdir}</label>:</td> \r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t<select id=\"dir\" name=\"dir\" class=\"field\"> \r\n\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t<option value=\"ltr\">{#xhtmlxtras_dlg.attribute_option_ltr}</option> \r\n\t\t\t\t\t\t\t\t<option value=\"rtl\">{#xhtmlxtras_dlg.attribute_option_rtl}</option> \r\n\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t</td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"langlabel\" for=\"lang\">{#xhtmlxtras_dlg.attribute_label_langcode}</label>:</td> \r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t<input id=\"lang\" name=\"lang\" type=\"text\" value=\"\" class=\"field\" />\r\n\t\t\t\t\t\t</td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table>\r\n\t\t\t</fieldset>\r\n\t\t</div>\r\n\t\t<div id=\"events_panel\" class=\"panel\">\r\n\t\t\t<fieldset>\r\n\t\t\t\t<legend>{#xhtmlxtras_dlg.fieldset_events_tab}</legend>\r\n\r\n\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"4\">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onfocus\">onfocus</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onfocus\" name=\"onfocus\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onblur\">onblur</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onblur\" name=\"onblur\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onclick\">onclick</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onclick\" name=\"onclick\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"ondblclick\">ondblclick</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"ondblclick\" name=\"ondblclick\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmousedown\">onmousedown</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmousedown\" name=\"onmousedown\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmouseup\">onmouseup</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmouseup\" name=\"onmouseup\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmouseover\">onmouseover</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmouseover\" name=\"onmouseover\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmousemove\">onmousemove</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmousemove\" name=\"onmousemove\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmouseout\">onmouseout</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmouseout\" name=\"onmouseout\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onkeypress\">onkeypress</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onkeypress\" name=\"onkeypress\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onkeydown\">onkeydown</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onkeydown\" name=\"onkeydown\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onkeyup\">onkeyup</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onkeyup\" name=\"onkeyup\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table>\r\n\t\t\t</fieldset>\r\n\t\t</div>\r\n\t</div>\r\n\t<div class=\"mceActionPanel\">\r\n\t\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#update}\" />\r\n\t\t<input type=\"button\" id=\"remove\" name=\"remove\" class=\"button\" value=\"{#xhtmlxtras_dlg.remove}\" onclick=\"removeAbbr();\" style=\"display: none;\" />\r\n\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t</div>\r\n</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/acronym.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#xhtmlxtras_dlg.title_acronym_element}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/form_utils.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/editable_selects.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/element_common.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/acronym.js\"></script>\r\n\t<link rel=\"stylesheet\" type=\"text/css\" href=\"css/popup.css\" />\r\n</head>\r\n<body style=\"display: none\" role=\"application\" aria-labelledby=\"app_title\">\r\n<span style=\"display:none;\" id=\"app_title\">{#xhtmlxtras_dlg.title_acronym_element}</span>\r\n<form onsubmit=\"insertAcronym();return false;\" action=\"#\">\r\n\t<div class=\"tabs\">\r\n\t\t<ul>\r\n\t\t\t<li id=\"general_tab\" class=\"current\" aria-controls=\"general_panel\"><span><a href=\"javascript:mcTabs.displayTab('general_tab','general_panel');\" onmousedown=\"return false;\">{#xhtmlxtras_dlg.general_tab}</a></span></li>\r\n\t\t\t<!-- <li id=\"events_tab\"><span><a href=\"javascript:mcTabs.displayTab('events_tab','events_panel');\" onmousedown=\"return false;\">{#xhtmlxtras_dlg.events_tab}</a></span></li> -->\r\n\t\t</ul>\r\n\t</div>\r\n\r\n\t<div class=\"panel_wrapper\">\r\n\t\t<div id=\"general_panel\" class=\"panel current\">\r\n\t\t\t<fieldset>\r\n\t\t\t\t<legend>{#xhtmlxtras_dlg.fieldset_attrib_tab}</legend>\r\n\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"4\">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"titlelabel\" for=\"title\">{#xhtmlxtras_dlg.attribute_label_title}</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"title\" name=\"title\" type=\"text\" value=\"\" class=\"field mceFocus\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"idlabel\" for=\"id\">{#xhtmlxtras_dlg.attribute_label_id}</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"id\" name=\"id\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"classlabel\" for=\"class\">{#xhtmlxtras_dlg.attribute_label_class}</label>:</td> \r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t<select id=\"class\" name=\"class\" class=\"field mceEditableSelect\">\r\n\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"stylelabel\" for=\"style\">{#xhtmlxtras_dlg.attribute_label_style}</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"style\" name=\"style\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"dirlabel\" for=\"dir\">{#xhtmlxtras_dlg.attribute_label_langdir}</label>:</td> \r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t<select id=\"dir\" name=\"dir\" class=\"field\"> \r\n\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t<option value=\"ltr\">{#xhtmlxtras_dlg.attribute_option_ltr}</option> \r\n\t\t\t\t\t\t\t\t<option value=\"rtl\">{#xhtmlxtras_dlg.attribute_option_rtl}</option> \r\n\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t</td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"langlabel\" for=\"lang\">{#xhtmlxtras_dlg.attribute_label_langcode}</label>:</td> \r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t<input id=\"lang\" name=\"lang\" type=\"text\" value=\"\" class=\"field\" />\r\n\t\t\t\t\t\t</td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table>\r\n\t\t\t</fieldset>\r\n\t\t</div>\r\n\t\t<div id=\"events_panel\" class=\"panel\">\r\n\t\t\t<fieldset>\r\n\t\t\t\t<legend>{#xhtmlxtras_dlg.fieldset_events_tab}</legend>\r\n\r\n\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"4\">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onfocus\">onfocus</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onfocus\" name=\"onfocus\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onblur\">onblur</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onblur\" name=\"onblur\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onclick\">onclick</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onclick\" name=\"onclick\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"ondblclick\">ondblclick</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"ondblclick\" name=\"ondblclick\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmousedown\">onmousedown</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmousedown\" name=\"onmousedown\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmouseup\">onmouseup</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmouseup\" name=\"onmouseup\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmouseover\">onmouseover</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmouseover\" name=\"onmouseover\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmousemove\">onmousemove</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmousemove\" name=\"onmousemove\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmouseout\">onmouseout</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmouseout\" name=\"onmouseout\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onkeypress\">onkeypress</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onkeypress\" name=\"onkeypress\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onkeydown\">onkeydown</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onkeydown\" name=\"onkeydown\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onkeyup\">onkeyup</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onkeyup\" name=\"onkeyup\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table>\r\n\t\t\t</fieldset>\r\n\t\t</div>\r\n\t</div>\r\n\t<div class=\"mceActionPanel\">\r\n\t\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#update}\" />\r\n\t\t<input type=\"button\" id=\"remove\" name=\"remove\" class=\"button\" value=\"{#xhtmlxtras_dlg.remove}\" onclick=\"removeAcronym();\" style=\"display: none;\" />\r\n\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t</div>\r\n</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/attributes.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#xhtmlxtras_dlg.attribs_title}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/editable_selects.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/form_utils.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/attributes.js\"></script>\r\n\t<link rel=\"stylesheet\" type=\"text/css\" href=\"css/attributes.css\" />\r\n</head>\r\n<body style=\"display: none\" role=\"application\" aria-labelledby=\"app_title\">\r\n<span style=\"display:none;\" id=\"app_title\">{#xhtmlxtras_dlg.attribs_title}</span>\r\n<form onsubmit=\"insertAction();return false;\" action=\"#\">\r\n\t<div class=\"tabs\">\r\n\t\t<ul>\r\n\t\t\t<li id=\"general_tab\" class=\"current\" aria-controls=\"general_panel\"><span><a href=\"javascript:mcTabs.displayTab('general_tab','general_panel');\" onmousedown=\"return false;\">{#xhtmlxtras_dlg.attribute_attrib_tab}</a></span></li>\r\n\t\t\t<li id=\"events_tab\" aria-controls=\"events_panel\"><span><a href=\"javascript:mcTabs.displayTab('events_tab','events_panel');\" onmousedown=\"return false;\">{#xhtmlxtras_dlg.attribute_events_tab}</a></span></li>\r\n\t\t</ul>\r\n\t</div>\r\n\r\n\t<div class=\"panel_wrapper\">\r\n\t\t<div id=\"general_panel\" class=\"panel current\">\r\n\t\t\t<fieldset>\r\n\t\t\t\t<legend>{#xhtmlxtras_dlg.attribute_attrib_tab}</legend>\r\n\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"4\">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"titlelabel\" for=\"title\">{#xhtmlxtras_dlg.attribute_label_title}</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"title\" name=\"title\" type=\"text\" value=\"\" class=\"mceFocus\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"idlabel\" for=\"id\">{#xhtmlxtras_dlg.attribute_label_id}</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"id\" name=\"id\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td><label id=\"classlabel\" for=\"classlist\">{#class_name}</label></td>\r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t<select id=\"classlist\" name=\"classlist\" class=\"mceEditableSelect\">\r\n\t\t\t\t\t\t\t\t<option value=\"\" selected=\"selected\">{#not_set}</option>\r\n\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"stylelabel\" for=\"style\">{#xhtmlxtras_dlg.attribute_label_style}</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"style\" name=\"style\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"dirlabel\" for=\"dir\">{#xhtmlxtras_dlg.attribute_label_langdir}</label>:</td> \r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t<select id=\"dir\" name=\"dir\"> \r\n\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t<option value=\"ltr\">{#xhtmlxtras_dlg.option_ltr}</option> \r\n\t\t\t\t\t\t\t\t<option value=\"rtl\">{#xhtmlxtras_dlg.option_rtl}</option> \r\n\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t</td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"langlabel\" for=\"lang\">{#xhtmlxtras_dlg.attribute_label_langcode}</label>:</td> \r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t<input id=\"lang\" name=\"lang\" type=\"text\" value=\"\" />\r\n\t\t\t\t\t\t</td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label id=\"tabindexlabel\" for=\"tabindex\">{#xhtmlxtras_dlg.attribute_label_tabindex}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"tabindex\" name=\"tabindex\" value=\"\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><label id=\"accesskeylabel\" for=\"accesskey\">{#xhtmlxtras_dlg.attribute_label_accesskey}</label></td>\r\n\t\t\t\t\t\t\t<td><input type=\"text\" id=\"accesskey\" name=\"accesskey\" value=\"\" /></td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t</table>\r\n\t\t\t</fieldset>\r\n\t\t</div>\r\n\t\t<div id=\"events_panel\" class=\"panel\">\r\n\t\t\t<fieldset>\r\n\t\t\t\t<legend>{#xhtmlxtras_dlg.attribute_events_tab}</legend>\r\n\r\n\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"4\">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onfocus\">onfocus</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onfocus\" name=\"onfocus\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onblur\">onblur</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onblur\" name=\"onblur\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onclick\">onclick</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onclick\" name=\"onclick\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"ondblclick\">ondblclick</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"ondblclick\" name=\"ondblclick\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmousedown\">onmousedown</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmousedown\" name=\"onmousedown\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmouseup\">onmouseup</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmouseup\" name=\"onmouseup\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmouseover\">onmouseover</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmouseover\" name=\"onmouseover\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmousemove\">onmousemove</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmousemove\" name=\"onmousemove\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmouseout\">onmouseout</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmouseout\" name=\"onmouseout\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onkeypress\">onkeypress</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onkeypress\" name=\"onkeypress\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onkeydown\">onkeydown</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onkeydown\" name=\"onkeydown\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onkeyup\">onkeyup</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onkeyup\" name=\"onkeyup\" type=\"text\" value=\"\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table>\r\n\t\t\t</fieldset>\r\n\t\t</div>\r\n\t</div>\r\n\t<div class=\"mceActionPanel\">\r\n\t\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#insert}\" />\r\n\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t</div>\r\n</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/cite.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#xhtmlxtras_dlg.title_cite_element}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/form_utils.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/editable_selects.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/element_common.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/cite.js\"></script>\r\n\t<link rel=\"stylesheet\" type=\"text/css\" href=\"css/popup.css\" />\r\n</head>\r\n<body style=\"display: none\" role=\"application\" aria-labelledby=\"app_title\">\r\n<span style=\"display:none;\" id=\"app_title\">{#xhtmlxtras_dlg.title_cite_element}</span>\r\n<form onsubmit=\"insertCite();return false;\" action=\"#\">\r\n\t<div class=\"tabs\">\r\n\t\t<ul>\r\n\t\t\t<li id=\"general_tab\" class=\"current\" aria-controls=\"general_panel\"><span><a href=\"javascript:mcTabs.displayTab('general_tab','general_panel');\" onmousedown=\"return false;\">{#xhtmlxtras_dlg.general_tab}</a></span></li>\r\n\t\t\t<!-- <li id=\"events_tab\"><span><a href=\"javascript:mcTabs.displayTab('events_tab','events_panel');\" onmousedown=\"return false;\">{#xhtmlxtras_dlg.events_tab}</a></span></li> -->\r\n\t\t</ul>\r\n\t</div>\r\n\r\n\t<div class=\"panel_wrapper\">\r\n\t\t<div id=\"general_panel\" class=\"panel current\">\r\n\t\t\t<fieldset>\r\n\t\t\t\t<legend>{#xhtmlxtras_dlg.fieldset_attrib_tab}</legend>\r\n\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"4\">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"titlelabel\" for=\"title\">{#xhtmlxtras_dlg.attribute_label_title}</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"title\" name=\"title\" type=\"text\" value=\"\" class=\"field mceFocus\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"idlabel\" for=\"id\">{#xhtmlxtras_dlg.attribute_label_id}</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"id\" name=\"id\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"classlabel\" for=\"class\">{#xhtmlxtras_dlg.attribute_label_class}</label>:</td> \r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t<select id=\"class\" name=\"class\" class=\"field mceEditableSelect\">\r\n\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"stylelabel\" for=\"class\">{#xhtmlxtras_dlg.attribute_label_style}</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"style\" name=\"style\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"dirlabel\" for=\"dir\">{#xhtmlxtras_dlg.attribute_label_langdir}</label>:</td> \r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t<select id=\"dir\" name=\"dir\" class=\"field\"> \r\n\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t<option value=\"ltr\">{#xhtmlxtras_dlg.attribute_option_ltr}</option> \r\n\t\t\t\t\t\t\t\t<option value=\"rtl\">{#xhtmlxtras_dlg.attribute_option_rtl}</option> \r\n\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t</td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"langlabel\" for=\"lang\">{#xhtmlxtras_dlg.attribute_label_langcode}</label>:</td> \r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t<input id=\"lang\" name=\"lang\" type=\"text\" value=\"\" class=\"field\" />\r\n\t\t\t\t\t\t</td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table>\r\n\t\t\t</fieldset>\r\n\t\t</div>\r\n\t\t<div id=\"events_panel\" class=\"panel\">\r\n\t\t\t<fieldset>\r\n\t\t\t\t<legend>{#xhtmlxtras_dlg.fieldset_events_tab}</legend>\r\n\r\n\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"4\">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onfocus\">onfocus</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onfocus\" name=\"onfocus\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onblur\">onblur</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onblur\" name=\"onblur\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onclick\">onclick</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onclick\" name=\"onclick\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"ondblclick\">ondblclick</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"ondblclick\" name=\"ondblclick\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmousedown\">onmousedown</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmousedown\" name=\"onmousedown\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmouseup\">onmouseup</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmouseup\" name=\"onmouseup\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmouseover\">onmouseover</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmouseover\" name=\"onmouseover\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmousemove\">onmousemove</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmousemove\" name=\"onmousemove\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmouseout\">onmouseout</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmouseout\" name=\"onmouseout\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onkeypress\">onkeypress</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onkeypress\" name=\"onkeypress\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onkeydown\">onkeydown</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onkeydown\" name=\"onkeydown\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onkeyup\">onkeyup</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onkeyup\" name=\"onkeyup\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table>\r\n\t\t\t</fieldset>\r\n\t\t</div>\r\n\t</div>\r\n\t<div class=\"mceActionPanel\">\r\n\t\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#update}\" />\r\n\t\t<input type=\"button\" id=\"remove\" name=\"remove\" class=\"button\" value=\"{#xhtmlxtras_dlg.remove}\" onclick=\"removeCite();\" style=\"display: none;\" />\r\n\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t</div>\r\n</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/css/attributes.css",
    "content": ".panel_wrapper div.current {\r\n\theight: 290px;\r\n}\r\n\r\n#id, #style, #title, #dir, #hreflang, #lang, #classlist, #tabindex, #accesskey {\r\n\twidth: 200px;\r\n}\r\n\r\n#events_panel input {\r\n\twidth: 200px;\r\n}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/css/popup.css",
    "content": "input.field, select.field {width:200px;}\r\ninput.picker {width:179px; margin-left: 5px;}\r\ninput.disabled {border-color:#F2F2F2;}\r\nimg.picker {vertical-align:text-bottom; cursor:pointer;}\r\nh1 {padding: 0 0 5px 0;}\r\n.panel_wrapper div.current {height:160px;}\r\n#xhtmlxtrasdel .panel_wrapper div.current, #xhtmlxtrasins .panel_wrapper div.current {height: 230px;}\r\na.browse span {display:block; width:20px; height:20px; background:url('../../../themes/advanced/img/icons.gif') -140px -20px;}\r\n#datetime {width:180px;}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/del.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#xhtmlxtras_dlg.title_del_element}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/form_utils.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/editable_selects.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/element_common.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/del.js\"></script>\r\n\t<link rel=\"stylesheet\" type=\"text/css\" href=\"css/popup.css\" />\r\n</head>\r\n<body id=\"xhtmlxtrasins\" style=\"display: none\" role=\"application\" aria-labelledby=\"app_title\">\r\n<span style=\"display:none;\" id=\"app_title\">{#xhtmlxtras_dlg.title_del_element}</span>\r\n<form onsubmit=\"insertDel();return false;\" action=\"#\">\r\n\t<div class=\"tabs\">\r\n\t\t<ul>\r\n\t\t\t<li id=\"general_tab\" class=\"current\" aria-controls=\"general_panel\"><span><a href=\"javascript:mcTabs.displayTab('general_tab','general_panel');\" onmousedown=\"return false;\">{#xhtmlxtras_dlg.general_tab}</a></span></li>\r\n\t\t\t<!-- <li id=\"events_tab\"><span><a href=\"javascript:mcTabs.displayTab('events_tab','events_panel');\" onmousedown=\"return false;\">{#xhtmlxtras_dlg.events_tab}</a></span></li> -->\r\n\t\t</ul>\r\n\t</div>\r\n\r\n\t<div class=\"panel_wrapper\">\r\n\t\t<div id=\"general_panel\" class=\"panel current\">\r\n\t\t\t<fieldset>\r\n\t\t\t\t<legend>{#xhtmlxtras_dlg.fieldset_general_tab}</legend>\r\n\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"4\">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"datetimelabel\" for=\"datetime\">{#xhtmlxtras_dlg.attribute_label_datetime}</label>:</td>\r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n\t\t\t\t\t\t\t\t<tr> \r\n\t\t\t\t\t\t\t\t\t<td><input id=\"datetime\" name=\"datetime\" type=\"text\" value=\"\" maxlength=\"19\" class=\"field mceFocus\" /></td> \r\n\t\t\t\t\t\t\t\t\t<td><a href=\"javascript:insertDateTime('datetime');\" onmousedown=\"return false;\" class=\"browse\" role=\"button\" aria-labelledby=\"datetimelabel\"><span class=\"datetime\" title=\"{#xhtmlxtras_dlg.insert_date}\"></span></a></td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"citelabel\" for=\"cite\">{#xhtmlxtras_dlg.attribute_label_cite}</label>:</td>\r\n\t\t\t\t\t\t<td><input id=\"cite\" name=\"cite\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table>\r\n\t\t\t</fieldset>\r\n\t\t\t<fieldset>\r\n\t\t\t\t<legend>{#xhtmlxtras_dlg.fieldset_attrib_tab}</legend>\r\n\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"4\">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"titlelabel\" for=\"title\">{#xhtmlxtras_dlg.attribute_label_title}</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"title\" name=\"title\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"idlabel\" for=\"id\">{#xhtmlxtras_dlg.attribute_label_id}</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"id\" name=\"id\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"classlabel\" for=\"class\">{#xhtmlxtras_dlg.attribute_label_class}</label>:</td> \r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t<select id=\"class\" name=\"class\" class=\"field mceEditableSelect\">\r\n\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"stylelabel\" for=\"style\">{#xhtmlxtras_dlg.attribute_label_style}</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"style\" name=\"style\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"dirlabel\" for=\"dir\">{#xhtmlxtras_dlg.attribute_label_langdir}</label>:</td> \r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t<select id=\"dir\" name=\"dir\" class=\"field\"> \r\n\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t<option value=\"ltr\">{#xhtmlxtras_dlg.attribute_option_ltr}</option> \r\n\t\t\t\t\t\t\t\t<option value=\"rtl\">{#xhtmlxtras_dlg.attribute_option_rtl}</option> \r\n\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t</td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"langlabel\" for=\"lang\">{#xhtmlxtras_dlg.attribute_label_langcode}</label>:</td> \r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t<input id=\"lang\" name=\"lang\" type=\"text\" value=\"\" class=\"field\" />\r\n\t\t\t\t\t\t</td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table>\r\n\t\t\t</fieldset>\r\n\t\t</div>\r\n\t\t<div id=\"events_panel\" class=\"panel\">\r\n\t\t\t<fieldset>\r\n\t\t\t\t<legend>{#xhtmlxtras_dlg.fieldset_events_tab}</legend>\r\n\r\n\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"4\">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onfocus\">onfocus</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onfocus\" name=\"onfocus\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onblur\">onblur</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onblur\" name=\"onblur\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onclick\">onclick</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onclick\" name=\"onclick\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"ondblclick\">ondblclick</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"ondblclick\" name=\"ondblclick\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmousedown\">onmousedown</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmousedown\" name=\"onmousedown\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmouseup\">onmouseup</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmouseup\" name=\"onmouseup\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmouseover\">onmouseover</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmouseover\" name=\"onmouseover\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmousemove\">onmousemove</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmousemove\" name=\"onmousemove\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmouseout\">onmouseout</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmouseout\" name=\"onmouseout\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onkeypress\">onkeypress</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onkeypress\" name=\"onkeypress\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onkeydown\">onkeydown</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onkeydown\" name=\"onkeydown\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onkeyup\">onkeyup</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onkeyup\" name=\"onkeyup\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table>\r\n\t\t\t</fieldset>\r\n\t\t</div>\r\n\t</div>\r\n\t<div class=\"mceActionPanel\">\r\n\t\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#update}\" />\r\n\t\t<input type=\"button\" id=\"remove\" name=\"remove\" class=\"button\" value=\"{#xhtmlxtras_dlg.remove}\" onclick=\"removeDel();\" style=\"display: none;\" />\r\n\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t</div>\r\n</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/editor_plugin.js",
    "content": "(function(){tinymce.create(\"tinymce.plugins.XHTMLXtrasPlugin\",{init:function(a,b){a.addCommand(\"mceCite\",function(){a.windowManager.open({file:b+\"/cite.htm\",width:350+parseInt(a.getLang(\"xhtmlxtras.cite_delta_width\",0)),height:250+parseInt(a.getLang(\"xhtmlxtras.cite_delta_height\",0)),inline:1},{plugin_url:b})});a.addCommand(\"mceAcronym\",function(){a.windowManager.open({file:b+\"/acronym.htm\",width:350+parseInt(a.getLang(\"xhtmlxtras.acronym_delta_width\",0)),height:250+parseInt(a.getLang(\"xhtmlxtras.acronym_delta_height\",0)),inline:1},{plugin_url:b})});a.addCommand(\"mceAbbr\",function(){a.windowManager.open({file:b+\"/abbr.htm\",width:350+parseInt(a.getLang(\"xhtmlxtras.abbr_delta_width\",0)),height:250+parseInt(a.getLang(\"xhtmlxtras.abbr_delta_height\",0)),inline:1},{plugin_url:b})});a.addCommand(\"mceDel\",function(){a.windowManager.open({file:b+\"/del.htm\",width:340+parseInt(a.getLang(\"xhtmlxtras.del_delta_width\",0)),height:310+parseInt(a.getLang(\"xhtmlxtras.del_delta_height\",0)),inline:1},{plugin_url:b})});a.addCommand(\"mceIns\",function(){a.windowManager.open({file:b+\"/ins.htm\",width:340+parseInt(a.getLang(\"xhtmlxtras.ins_delta_width\",0)),height:310+parseInt(a.getLang(\"xhtmlxtras.ins_delta_height\",0)),inline:1},{plugin_url:b})});a.addCommand(\"mceAttributes\",function(){a.windowManager.open({file:b+\"/attributes.htm\",width:380+parseInt(a.getLang(\"xhtmlxtras.attr_delta_width\",0)),height:370+parseInt(a.getLang(\"xhtmlxtras.attr_delta_height\",0)),inline:1},{plugin_url:b})});a.addButton(\"cite\",{title:\"xhtmlxtras.cite_desc\",cmd:\"mceCite\"});a.addButton(\"acronym\",{title:\"xhtmlxtras.acronym_desc\",cmd:\"mceAcronym\"});a.addButton(\"abbr\",{title:\"xhtmlxtras.abbr_desc\",cmd:\"mceAbbr\"});a.addButton(\"del\",{title:\"xhtmlxtras.del_desc\",cmd:\"mceDel\"});a.addButton(\"ins\",{title:\"xhtmlxtras.ins_desc\",cmd:\"mceIns\"});a.addButton(\"attribs\",{title:\"xhtmlxtras.attribs_desc\",cmd:\"mceAttributes\"});a.onNodeChange.add(function(d,c,f,e){f=d.dom.getParent(f,\"CITE,ACRONYM,ABBR,DEL,INS\");c.setDisabled(\"cite\",e);c.setDisabled(\"acronym\",e);c.setDisabled(\"abbr\",e);c.setDisabled(\"del\",e);c.setDisabled(\"ins\",e);c.setDisabled(\"attribs\",f&&f.nodeName==\"BODY\");c.setActive(\"cite\",0);c.setActive(\"acronym\",0);c.setActive(\"abbr\",0);c.setActive(\"del\",0);c.setActive(\"ins\",0);if(f){do{c.setDisabled(f.nodeName.toLowerCase(),0);c.setActive(f.nodeName.toLowerCase(),1)}while(f=f.parentNode)}});a.onPreInit.add(function(){a.dom.create(\"abbr\")})},getInfo:function(){return{longname:\"XHTML Xtras Plugin\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",infourl:\"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/xhtmlxtras\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}}});tinymce.PluginManager.add(\"xhtmlxtras\",tinymce.plugins.XHTMLXtrasPlugin)})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/editor_plugin_src.js",
    "content": "/**\r\n * editor_plugin_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\ttinymce.create('tinymce.plugins.XHTMLXtrasPlugin', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\t// Register commands\r\n\t\t\ted.addCommand('mceCite', function() {\r\n\t\t\t\ted.windowManager.open({\r\n\t\t\t\t\tfile : url + '/cite.htm',\r\n\t\t\t\t\twidth : 350 + parseInt(ed.getLang('xhtmlxtras.cite_delta_width', 0)),\r\n\t\t\t\t\theight : 250 + parseInt(ed.getLang('xhtmlxtras.cite_delta_height', 0)),\r\n\t\t\t\t\tinline : 1\r\n\t\t\t\t}, {\r\n\t\t\t\t\tplugin_url : url\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\ted.addCommand('mceAcronym', function() {\r\n\t\t\t\ted.windowManager.open({\r\n\t\t\t\t\tfile : url + '/acronym.htm',\r\n\t\t\t\t\twidth : 350 + parseInt(ed.getLang('xhtmlxtras.acronym_delta_width', 0)),\r\n\t\t\t\t\theight : 250 + parseInt(ed.getLang('xhtmlxtras.acronym_delta_height', 0)),\r\n\t\t\t\t\tinline : 1\r\n\t\t\t\t}, {\r\n\t\t\t\t\tplugin_url : url\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\ted.addCommand('mceAbbr', function() {\r\n\t\t\t\ted.windowManager.open({\r\n\t\t\t\t\tfile : url + '/abbr.htm',\r\n\t\t\t\t\twidth : 350 + parseInt(ed.getLang('xhtmlxtras.abbr_delta_width', 0)),\r\n\t\t\t\t\theight : 250 + parseInt(ed.getLang('xhtmlxtras.abbr_delta_height', 0)),\r\n\t\t\t\t\tinline : 1\r\n\t\t\t\t}, {\r\n\t\t\t\t\tplugin_url : url\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\ted.addCommand('mceDel', function() {\r\n\t\t\t\ted.windowManager.open({\r\n\t\t\t\t\tfile : url + '/del.htm',\r\n\t\t\t\t\twidth : 340 + parseInt(ed.getLang('xhtmlxtras.del_delta_width', 0)),\r\n\t\t\t\t\theight : 310 + parseInt(ed.getLang('xhtmlxtras.del_delta_height', 0)),\r\n\t\t\t\t\tinline : 1\r\n\t\t\t\t}, {\r\n\t\t\t\t\tplugin_url : url\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\ted.addCommand('mceIns', function() {\r\n\t\t\t\ted.windowManager.open({\r\n\t\t\t\t\tfile : url + '/ins.htm',\r\n\t\t\t\t\twidth : 340 + parseInt(ed.getLang('xhtmlxtras.ins_delta_width', 0)),\r\n\t\t\t\t\theight : 310 + parseInt(ed.getLang('xhtmlxtras.ins_delta_height', 0)),\r\n\t\t\t\t\tinline : 1\r\n\t\t\t\t}, {\r\n\t\t\t\t\tplugin_url : url\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\ted.addCommand('mceAttributes', function() {\r\n\t\t\t\ted.windowManager.open({\r\n\t\t\t\t\tfile : url + '/attributes.htm',\r\n\t\t\t\t\twidth : 380 + parseInt(ed.getLang('xhtmlxtras.attr_delta_width', 0)),\r\n\t\t\t\t\theight : 370 + parseInt(ed.getLang('xhtmlxtras.attr_delta_height', 0)),\r\n\t\t\t\t\tinline : 1\r\n\t\t\t\t}, {\r\n\t\t\t\t\tplugin_url : url\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\t// Register buttons\r\n\t\t\ted.addButton('cite', {title : 'xhtmlxtras.cite_desc', cmd : 'mceCite'});\r\n\t\t\ted.addButton('acronym', {title : 'xhtmlxtras.acronym_desc', cmd : 'mceAcronym'});\r\n\t\t\ted.addButton('abbr', {title : 'xhtmlxtras.abbr_desc', cmd : 'mceAbbr'});\r\n\t\t\ted.addButton('del', {title : 'xhtmlxtras.del_desc', cmd : 'mceDel'});\r\n\t\t\ted.addButton('ins', {title : 'xhtmlxtras.ins_desc', cmd : 'mceIns'});\r\n\t\t\ted.addButton('attribs', {title : 'xhtmlxtras.attribs_desc', cmd : 'mceAttributes'});\r\n\r\n\t\t\ted.onNodeChange.add(function(ed, cm, n, co) {\r\n\t\t\t\tn = ed.dom.getParent(n, 'CITE,ACRONYM,ABBR,DEL,INS');\r\n\r\n\t\t\t\tcm.setDisabled('cite', co);\r\n\t\t\t\tcm.setDisabled('acronym', co);\r\n\t\t\t\tcm.setDisabled('abbr', co);\r\n\t\t\t\tcm.setDisabled('del', co);\r\n\t\t\t\tcm.setDisabled('ins', co);\r\n\t\t\t\tcm.setDisabled('attribs', n && n.nodeName == 'BODY');\r\n\t\t\t\tcm.setActive('cite', 0);\r\n\t\t\t\tcm.setActive('acronym', 0);\r\n\t\t\t\tcm.setActive('abbr', 0);\r\n\t\t\t\tcm.setActive('del', 0);\r\n\t\t\t\tcm.setActive('ins', 0);\r\n\r\n\t\t\t\t// Activate all\r\n\t\t\t\tif (n) {\r\n\t\t\t\t\tdo {\r\n\t\t\t\t\t\tcm.setDisabled(n.nodeName.toLowerCase(), 0);\r\n\t\t\t\t\t\tcm.setActive(n.nodeName.toLowerCase(), 1);\r\n\t\t\t\t\t} while (n = n.parentNode);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\ted.onPreInit.add(function() {\r\n\t\t\t\t// Fixed IE issue where it can't handle these elements correctly\r\n\t\t\t\ted.dom.create('abbr');\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'XHTML Xtras Plugin',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tinfourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/xhtmlxtras',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t};\r\n\t\t}\r\n\t});\r\n\r\n\t// Register plugin\r\n\ttinymce.PluginManager.add('xhtmlxtras', tinymce.plugins.XHTMLXtrasPlugin);\r\n})();"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/ins.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#xhtmlxtras_dlg.title_ins_element}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/form_utils.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/editable_selects.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/element_common.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/ins.js\"></script>\r\n\t<link rel=\"stylesheet\" type=\"text/css\" href=\"css/popup.css\" />\r\n</head>\r\n<body id=\"xhtmlxtrasins\" style=\"display: none\" role=\"application\" aria-labelledby=\"app_title\">\r\n<span style=\"display:none;\" id=\"app_title\">{#xhtmlxtras_dlg.title_ins_element}</span>\r\n<form onsubmit=\"insertIns();return false;\" action=\"#\">\r\n\t<div class=\"tabs\">\r\n\t\t<ul>\r\n\t\t\t<li id=\"general_tab\" class=\"current\" aria-controls=\"general_panel\"><span><a href=\"javascript:mcTabs.displayTab('general_tab','general_panel');\" onmousedown=\"return false;\">{#xhtmlxtras_dlg.general_tab}</a></span></li>\r\n\t\t\t<!-- <li id=\"events_tab\"><span><a href=\"javascript:mcTabs.displayTab('events_tab','events_panel');\" onmousedown=\"return false;\">{#xhtmlxtras_dlg.events_tab}</a></span></li> -->\r\n\t\t</ul>\r\n\t</div>\r\n\r\n\t<div class=\"panel_wrapper\">\r\n\t\t<div id=\"general_panel\" class=\"panel current\">\r\n\t\t\t<fieldset>\r\n\t\t\t\t<legend>{#xhtmlxtras_dlg.fieldset_general_tab}</legend>\r\n\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"4\">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"datetimelabel\" for=\"datetime\">{#xhtmlxtras_dlg.attribute_label_datetime}</label>:</td> \r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t<table role=\"presentation\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n\t\t\t\t\t\t\t\t<tr> \r\n\t\t\t\t\t\t\t\t\t<td><input id=\"datetime\" name=\"datetime\" type=\"text\" value=\"\" maxlength=\"19\" class=\"field mceFocus\" /></td> \r\n\t\t\t\t\t\t\t\t\t<td ><a href=\"javascript:insertDateTime('datetime');\" onmousedown=\"return false;\" class=\"browse\" role=\"button\" aria-labelledby=\"datetimelabel\"><span class=\"datetime\" title=\"{#xhtmlxtras_dlg.insert_date}\"></span></a></td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr >\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"citelabel\" for=\"cite\">{#xhtmlxtras_dlg.attribute_label_cite}</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"cite\" name=\"cite\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table>\r\n\t\t\t</fieldset>\r\n\t\t\t<fieldset>\r\n\t\t\t\t<legend>{#xhtmlxtras_dlg.fieldset_attrib_tab}</legend>\r\n\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"4\">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td  class=\"label\"><label id=\"titlelabel\" for=\"title\">{#xhtmlxtras_dlg.attribute_label_title}</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"title\" name=\"title\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"idlabel\" for=\"id\">{#xhtmlxtras_dlg.attribute_label_id}</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"id\" name=\"id\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"classlabel\" for=\"class\">{#xhtmlxtras_dlg.attribute_label_class}</label>:</td> \r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t<select id=\"class\" name=\"class\" class=\"field mceEditableSelect\">\r\n\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"stylelabel\" for=\"style\">{#xhtmlxtras_dlg.attribute_label_style}</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"style\" name=\"style\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"dirlabel\" for=\"dir\">{#xhtmlxtras_dlg.attribute_label_langdir}</label>:</td> \r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t<select id=\"dir\" name=\"dir\" class=\"field\"> \r\n\t\t\t\t\t\t\t\t<option value=\"\">{#not_set}</option> \r\n\t\t\t\t\t\t\t\t<option value=\"ltr\">{#xhtmlxtras_dlg.attribute_option_ltr}</option> \r\n\t\t\t\t\t\t\t\t<option value=\"rtl\">{#xhtmlxtras_dlg.attribute_option_rtl}</option> \r\n\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t</td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label id=\"langlabel\" for=\"lang\">{#xhtmlxtras_dlg.attribute_label_langcode}</label>:</td> \r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t<input id=\"lang\" name=\"lang\" type=\"text\" value=\"\" class=\"field\" />\r\n\t\t\t\t\t\t</td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table>\r\n\t\t\t</fieldset>\r\n\t\t</div>\r\n\t\t<div id=\"events_panel\" class=\"panel\">\r\n\t\t\t<fieldset>\r\n\t\t\t\t<legend>{#xhtmlxtras_dlg.fieldset_events_tab}</legend>\r\n\r\n\t\t\t\t<table role=\"presentation\" border=\"0\" cellpadding=\"0\" cellspacing=\"4\">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onfocus\">onfocus</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onfocus\" name=\"onfocus\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onblur\">onblur</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onblur\" name=\"onblur\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onclick\">onclick</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onclick\" name=\"onclick\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"ondblclick\">ondblclick</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"ondblclick\" name=\"ondblclick\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmousedown\">onmousedown</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmousedown\" name=\"onmousedown\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmouseup\">onmouseup</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmouseup\" name=\"onmouseup\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmouseover\">onmouseover</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmouseover\" name=\"onmouseover\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmousemove\">onmousemove</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmousemove\" name=\"onmousemove\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onmouseout\">onmouseout</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onmouseout\" name=\"onmouseout\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onkeypress\">onkeypress</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onkeypress\" name=\"onkeypress\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onkeydown\">onkeydown</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onkeydown\" name=\"onkeydown\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td class=\"label\"><label for=\"onkeyup\">onkeyup</label>:</td> \r\n\t\t\t\t\t\t<td><input id=\"onkeyup\" name=\"onkeyup\" type=\"text\" value=\"\" class=\"field\" /></td> \r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table>\r\n\t\t\t</fieldset>\r\n\t\t</div>\r\n\t</div>\r\n\t<div class=\"mceActionPanel\">\r\n\t\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#update}\" />\r\n\t\t<input type=\"button\" id=\"remove\" name=\"remove\" class=\"button\" value=\"{#xhtmlxtras_dlg.remove}\" onclick=\"removeIns();\" style=\"display: none;\" />\r\n\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t</div>\r\n</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/js/abbr.js",
    "content": "/**\r\n * abbr.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\nfunction init() {\r\n\tSXE.initElementDialog('abbr');\r\n\tif (SXE.currentAction == \"update\") {\r\n\t\tSXE.showRemoveButton();\r\n\t}\r\n}\r\n\r\nfunction insertAbbr() {\r\n\tSXE.insertElement('abbr');\r\n\ttinyMCEPopup.close();\r\n}\r\n\r\nfunction removeAbbr() {\r\n\tSXE.removeElement('abbr');\r\n\ttinyMCEPopup.close();\r\n}\r\n\r\ntinyMCEPopup.onInit.add(init);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/js/acronym.js",
    "content": "/**\r\n * acronym.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\nfunction init() {\r\n\tSXE.initElementDialog('acronym');\r\n\tif (SXE.currentAction == \"update\") {\r\n\t\tSXE.showRemoveButton();\r\n\t}\r\n}\r\n\r\nfunction insertAcronym() {\r\n\tSXE.insertElement('acronym');\r\n\ttinyMCEPopup.close();\r\n}\r\n\r\nfunction removeAcronym() {\r\n\tSXE.removeElement('acronym');\r\n\ttinyMCEPopup.close();\r\n}\r\n\r\ntinyMCEPopup.onInit.add(init);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/js/attributes.js",
    "content": "/**\r\n * attributes.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\nfunction init() {\r\n\ttinyMCEPopup.resizeToInnerSize();\r\n\tvar inst = tinyMCEPopup.editor;\r\n\tvar dom = inst.dom;\r\n\tvar elm = inst.selection.getNode();\r\n\tvar f = document.forms[0];\r\n\tvar onclick = dom.getAttrib(elm, 'onclick');\r\n\r\n\tsetFormValue('title', dom.getAttrib(elm, 'title'));\r\n\tsetFormValue('id', dom.getAttrib(elm, 'id'));\r\n\tsetFormValue('style', dom.getAttrib(elm, \"style\"));\r\n\tsetFormValue('dir', dom.getAttrib(elm, 'dir'));\r\n\tsetFormValue('lang', dom.getAttrib(elm, 'lang'));\r\n\tsetFormValue('tabindex', dom.getAttrib(elm, 'tabindex', typeof(elm.tabindex) != \"undefined\" ? elm.tabindex : \"\"));\r\n\tsetFormValue('accesskey', dom.getAttrib(elm, 'accesskey', typeof(elm.accesskey) != \"undefined\" ? elm.accesskey : \"\"));\r\n\tsetFormValue('onfocus', dom.getAttrib(elm, 'onfocus'));\r\n\tsetFormValue('onblur', dom.getAttrib(elm, 'onblur'));\r\n\tsetFormValue('onclick', onclick);\r\n\tsetFormValue('ondblclick', dom.getAttrib(elm, 'ondblclick'));\r\n\tsetFormValue('onmousedown', dom.getAttrib(elm, 'onmousedown'));\r\n\tsetFormValue('onmouseup', dom.getAttrib(elm, 'onmouseup'));\r\n\tsetFormValue('onmouseover', dom.getAttrib(elm, 'onmouseover'));\r\n\tsetFormValue('onmousemove', dom.getAttrib(elm, 'onmousemove'));\r\n\tsetFormValue('onmouseout', dom.getAttrib(elm, 'onmouseout'));\r\n\tsetFormValue('onkeypress', dom.getAttrib(elm, 'onkeypress'));\r\n\tsetFormValue('onkeydown', dom.getAttrib(elm, 'onkeydown'));\r\n\tsetFormValue('onkeyup', dom.getAttrib(elm, 'onkeyup'));\r\n\tclassName = dom.getAttrib(elm, 'class');\r\n\r\n\taddClassesToList('classlist', 'advlink_styles');\r\n\tselectByValue(f, 'classlist', className, true);\r\n\r\n\tTinyMCE_EditableSelects.init();\r\n}\r\n\r\nfunction setFormValue(name, value) {\r\n\tif(value && document.forms[0].elements[name]){\r\n\t\tdocument.forms[0].elements[name].value = value;\r\n\t}\r\n}\r\n\r\nfunction insertAction() {\r\n\tvar inst = tinyMCEPopup.editor;\r\n\tvar elm = inst.selection.getNode();\r\n\r\n\tsetAllAttribs(elm);\r\n\ttinyMCEPopup.execCommand(\"mceEndUndoLevel\");\r\n\ttinyMCEPopup.close();\r\n}\r\n\r\nfunction setAttrib(elm, attrib, value) {\r\n\tvar formObj = document.forms[0];\r\n\tvar valueElm = formObj.elements[attrib.toLowerCase()];\r\n\tvar inst = tinyMCEPopup.editor;\r\n\tvar dom = inst.dom;\r\n\r\n\tif (typeof(value) == \"undefined\" || value == null) {\r\n\t\tvalue = \"\";\r\n\r\n\t\tif (valueElm)\r\n\t\t\tvalue = valueElm.value;\r\n\t}\r\n\r\n\tdom.setAttrib(elm, attrib.toLowerCase(), value);\r\n}\r\n\r\nfunction setAllAttribs(elm) {\r\n\tvar f = document.forms[0];\r\n\r\n\tsetAttrib(elm, 'title');\r\n\tsetAttrib(elm, 'id');\r\n\tsetAttrib(elm, 'style');\r\n\tsetAttrib(elm, 'class', getSelectValue(f, 'classlist'));\r\n\tsetAttrib(elm, 'dir');\r\n\tsetAttrib(elm, 'lang');\r\n\tsetAttrib(elm, 'tabindex');\r\n\tsetAttrib(elm, 'accesskey');\r\n\tsetAttrib(elm, 'onfocus');\r\n\tsetAttrib(elm, 'onblur');\r\n\tsetAttrib(elm, 'onclick');\r\n\tsetAttrib(elm, 'ondblclick');\r\n\tsetAttrib(elm, 'onmousedown');\r\n\tsetAttrib(elm, 'onmouseup');\r\n\tsetAttrib(elm, 'onmouseover');\r\n\tsetAttrib(elm, 'onmousemove');\r\n\tsetAttrib(elm, 'onmouseout');\r\n\tsetAttrib(elm, 'onkeypress');\r\n\tsetAttrib(elm, 'onkeydown');\r\n\tsetAttrib(elm, 'onkeyup');\r\n\r\n\t// Refresh in old MSIE\r\n//\tif (tinyMCE.isMSIE5)\r\n//\t\telm.outerHTML = elm.outerHTML;\r\n}\r\n\r\nfunction insertAttribute() {\r\n\ttinyMCEPopup.close();\r\n}\r\n\r\ntinyMCEPopup.onInit.add(init);\r\ntinyMCEPopup.requireLangPack();\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/js/cite.js",
    "content": "/**\r\n * cite.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\nfunction init() {\r\n\tSXE.initElementDialog('cite');\r\n\tif (SXE.currentAction == \"update\") {\r\n\t\tSXE.showRemoveButton();\r\n\t}\r\n}\r\n\r\nfunction insertCite() {\r\n\tSXE.insertElement('cite');\r\n\ttinyMCEPopup.close();\r\n}\r\n\r\nfunction removeCite() {\r\n\tSXE.removeElement('cite');\r\n\ttinyMCEPopup.close();\r\n}\r\n\r\ntinyMCEPopup.onInit.add(init);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/js/del.js",
    "content": "/**\r\n * del.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\nfunction init() {\r\n\tSXE.initElementDialog('del');\r\n\tif (SXE.currentAction == \"update\") {\r\n\t\tsetFormValue('datetime', tinyMCEPopup.editor.dom.getAttrib(SXE.updateElement, 'datetime'));\r\n\t\tsetFormValue('cite', tinyMCEPopup.editor.dom.getAttrib(SXE.updateElement, 'cite'));\r\n\t\tSXE.showRemoveButton();\r\n\t}\r\n}\r\n\r\nfunction setElementAttribs(elm) {\r\n\tsetAllCommonAttribs(elm);\r\n\tsetAttrib(elm, 'datetime');\r\n\tsetAttrib(elm, 'cite');\r\n\telm.removeAttribute('data-mce-new');\r\n}\r\n\r\nfunction insertDel() {\r\n\tvar elm = tinyMCEPopup.editor.dom.getParent(SXE.focusElement, 'DEL');\r\n\r\n\tif (elm == null) {\r\n\t\tvar s = SXE.inst.selection.getContent();\r\n\t\tif(s.length > 0) {\r\n\t\t\tinsertInlineElement('del');\r\n\t\t\tvar elementArray = SXE.inst.dom.select('del[data-mce-new]');\r\n\t\t\tfor (var i=0; i<elementArray.length; i++) {\r\n\t\t\t\tvar elm = elementArray[i];\r\n\t\t\t\tsetElementAttribs(elm);\r\n\t\t\t}\r\n\t\t}\r\n\t} else {\r\n\t\tsetElementAttribs(elm);\r\n\t}\r\n\ttinyMCEPopup.editor.nodeChanged();\r\n\ttinyMCEPopup.execCommand('mceEndUndoLevel');\r\n\ttinyMCEPopup.close();\r\n}\r\n\r\nfunction removeDel() {\r\n\tSXE.removeElement('del');\r\n\ttinyMCEPopup.close();\r\n}\r\n\r\ntinyMCEPopup.onInit.add(init);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/js/element_common.js",
    "content": "/**\r\n * element_common.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\ntinyMCEPopup.requireLangPack();\r\n\r\nfunction initCommonAttributes(elm) {\r\n\tvar formObj = document.forms[0], dom = tinyMCEPopup.editor.dom;\r\n\r\n\t// Setup form data for common element attributes\r\n\tsetFormValue('title', dom.getAttrib(elm, 'title'));\r\n\tsetFormValue('id', dom.getAttrib(elm, 'id'));\r\n\tselectByValue(formObj, 'class', dom.getAttrib(elm, 'class'), true);\r\n\tsetFormValue('style', dom.getAttrib(elm, 'style'));\r\n\tselectByValue(formObj, 'dir', dom.getAttrib(elm, 'dir'));\r\n\tsetFormValue('lang', dom.getAttrib(elm, 'lang'));\r\n\tsetFormValue('onfocus', dom.getAttrib(elm, 'onfocus'));\r\n\tsetFormValue('onblur', dom.getAttrib(elm, 'onblur'));\r\n\tsetFormValue('onclick', dom.getAttrib(elm, 'onclick'));\r\n\tsetFormValue('ondblclick', dom.getAttrib(elm, 'ondblclick'));\r\n\tsetFormValue('onmousedown', dom.getAttrib(elm, 'onmousedown'));\r\n\tsetFormValue('onmouseup', dom.getAttrib(elm, 'onmouseup'));\r\n\tsetFormValue('onmouseover', dom.getAttrib(elm, 'onmouseover'));\r\n\tsetFormValue('onmousemove', dom.getAttrib(elm, 'onmousemove'));\r\n\tsetFormValue('onmouseout', dom.getAttrib(elm, 'onmouseout'));\r\n\tsetFormValue('onkeypress', dom.getAttrib(elm, 'onkeypress'));\r\n\tsetFormValue('onkeydown', dom.getAttrib(elm, 'onkeydown'));\r\n\tsetFormValue('onkeyup', dom.getAttrib(elm, 'onkeyup'));\r\n}\r\n\r\nfunction setFormValue(name, value) {\r\n\tif(document.forms[0].elements[name]) document.forms[0].elements[name].value = value;\r\n}\r\n\r\nfunction insertDateTime(id) {\r\n\tdocument.getElementById(id).value = getDateTime(new Date(), \"%Y-%m-%dT%H:%M:%S\");\r\n}\r\n\r\nfunction getDateTime(d, fmt) {\r\n\tfmt = fmt.replace(\"%D\", \"%m/%d/%y\");\r\n\tfmt = fmt.replace(\"%r\", \"%I:%M:%S %p\");\r\n\tfmt = fmt.replace(\"%Y\", \"\" + d.getFullYear());\r\n\tfmt = fmt.replace(\"%y\", \"\" + d.getYear());\r\n\tfmt = fmt.replace(\"%m\", addZeros(d.getMonth()+1, 2));\r\n\tfmt = fmt.replace(\"%d\", addZeros(d.getDate(), 2));\r\n\tfmt = fmt.replace(\"%H\", \"\" + addZeros(d.getHours(), 2));\r\n\tfmt = fmt.replace(\"%M\", \"\" + addZeros(d.getMinutes(), 2));\r\n\tfmt = fmt.replace(\"%S\", \"\" + addZeros(d.getSeconds(), 2));\r\n\tfmt = fmt.replace(\"%I\", \"\" + ((d.getHours() + 11) % 12 + 1));\r\n\tfmt = fmt.replace(\"%p\", \"\" + (d.getHours() < 12 ? \"AM\" : \"PM\"));\r\n\tfmt = fmt.replace(\"%%\", \"%\");\r\n\r\n\treturn fmt;\r\n}\r\n\r\nfunction addZeros(value, len) {\r\n\tvar i;\r\n\r\n\tvalue = \"\" + value;\r\n\r\n\tif (value.length < len) {\r\n\t\tfor (i=0; i<(len-value.length); i++)\r\n\t\t\tvalue = \"0\" + value;\r\n\t}\r\n\r\n\treturn value;\r\n}\r\n\r\nfunction selectByValue(form_obj, field_name, value, add_custom, ignore_case) {\r\n\tif (!form_obj || !form_obj.elements[field_name])\r\n\t\treturn;\r\n\r\n\tvar sel = form_obj.elements[field_name];\r\n\r\n\tvar found = false;\r\n\tfor (var i=0; i<sel.options.length; i++) {\r\n\t\tvar option = sel.options[i];\r\n\r\n\t\tif (option.value == value || (ignore_case && option.value.toLowerCase() == value.toLowerCase())) {\r\n\t\t\toption.selected = true;\r\n\t\t\tfound = true;\r\n\t\t} else\r\n\t\t\toption.selected = false;\r\n\t}\r\n\r\n\tif (!found && add_custom && value != '') {\r\n\t\tvar option = new Option('Value: ' + value, value);\r\n\t\toption.selected = true;\r\n\t\tsel.options[sel.options.length] = option;\r\n\t}\r\n\r\n\treturn found;\r\n}\r\n\r\nfunction setAttrib(elm, attrib, value) {\r\n\tvar formObj = document.forms[0];\r\n\tvar valueElm = formObj.elements[attrib.toLowerCase()];\r\n\ttinyMCEPopup.editor.dom.setAttrib(elm, attrib, value || valueElm.value);\r\n}\r\n\r\nfunction setAllCommonAttribs(elm) {\r\n\tsetAttrib(elm, 'title');\r\n\tsetAttrib(elm, 'id');\r\n\tsetAttrib(elm, 'class');\r\n\tsetAttrib(elm, 'style');\r\n\tsetAttrib(elm, 'dir');\r\n\tsetAttrib(elm, 'lang');\r\n\t/*setAttrib(elm, 'onfocus');\r\n\tsetAttrib(elm, 'onblur');\r\n\tsetAttrib(elm, 'onclick');\r\n\tsetAttrib(elm, 'ondblclick');\r\n\tsetAttrib(elm, 'onmousedown');\r\n\tsetAttrib(elm, 'onmouseup');\r\n\tsetAttrib(elm, 'onmouseover');\r\n\tsetAttrib(elm, 'onmousemove');\r\n\tsetAttrib(elm, 'onmouseout');\r\n\tsetAttrib(elm, 'onkeypress');\r\n\tsetAttrib(elm, 'onkeydown');\r\n\tsetAttrib(elm, 'onkeyup');*/\r\n}\r\n\r\nSXE = {\r\n\tcurrentAction : \"insert\",\r\n\tinst : tinyMCEPopup.editor,\r\n\tupdateElement : null\r\n}\r\n\r\nSXE.focusElement = SXE.inst.selection.getNode();\r\n\r\nSXE.initElementDialog = function(element_name) {\r\n\taddClassesToList('class', 'xhtmlxtras_styles');\r\n\tTinyMCE_EditableSelects.init();\r\n\r\n\telement_name = element_name.toLowerCase();\r\n\tvar elm = SXE.inst.dom.getParent(SXE.focusElement, element_name.toUpperCase());\r\n\tif (elm != null && elm.nodeName.toUpperCase() == element_name.toUpperCase()) {\r\n\t\tSXE.currentAction = \"update\";\r\n\t}\r\n\r\n\tif (SXE.currentAction == \"update\") {\r\n\t\tinitCommonAttributes(elm);\r\n\t\tSXE.updateElement = elm;\r\n\t}\r\n\r\n\tdocument.forms[0].insert.value = tinyMCEPopup.getLang(SXE.currentAction, 'Insert', true); \r\n}\r\n\r\nSXE.insertElement = function(element_name) {\r\n\tvar elm = SXE.inst.dom.getParent(SXE.focusElement, element_name.toUpperCase()), h, tagName;\r\n\r\n\tif (elm == null) {\r\n\t\tvar s = SXE.inst.selection.getContent();\r\n\t\tif(s.length > 0) {\r\n\t\t\ttagName = element_name;\r\n\r\n\t\t\tinsertInlineElement(element_name);\r\n\t\t\tvar elementArray = tinymce.grep(SXE.inst.dom.select(element_name));\r\n\t\t\tfor (var i=0; i<elementArray.length; i++) {\r\n\t\t\t\tvar elm = elementArray[i];\r\n\r\n\t\t\t\tif (SXE.inst.dom.getAttrib(elm, 'data-mce-new')) {\r\n\t\t\t\t\telm.id = '';\r\n\t\t\t\t\telm.setAttribute('id', '');\r\n\t\t\t\t\telm.removeAttribute('id');\r\n\t\t\t\t\telm.removeAttribute('data-mce-new');\r\n\r\n\t\t\t\t\tsetAllCommonAttribs(elm);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t} else {\r\n\t\tsetAllCommonAttribs(elm);\r\n\t}\r\n\tSXE.inst.nodeChanged();\r\n\ttinyMCEPopup.execCommand('mceEndUndoLevel');\r\n}\r\n\r\nSXE.removeElement = function(element_name){\r\n\telement_name = element_name.toLowerCase();\r\n\telm = SXE.inst.dom.getParent(SXE.focusElement, element_name.toUpperCase());\r\n\tif(elm && elm.nodeName.toUpperCase() == element_name.toUpperCase()){\r\n\t\ttinyMCE.execCommand('mceRemoveNode', false, elm);\r\n\t\tSXE.inst.nodeChanged();\r\n\t\ttinyMCEPopup.execCommand('mceEndUndoLevel');\r\n\t}\r\n}\r\n\r\nSXE.showRemoveButton = function() {\r\n\t\tdocument.getElementById(\"remove\").style.display = '';\r\n}\r\n\r\nSXE.containsClass = function(elm,cl) {\r\n\treturn (elm.className.indexOf(cl) > -1) ? true : false;\r\n}\r\n\r\nSXE.removeClass = function(elm,cl) {\r\n\tif(elm.className == null || elm.className == \"\" || !SXE.containsClass(elm,cl)) {\r\n\t\treturn true;\r\n\t}\r\n\tvar classNames = elm.className.split(\" \");\r\n\tvar newClassNames = \"\";\r\n\tfor (var x = 0, cnl = classNames.length; x < cnl; x++) {\r\n\t\tif (classNames[x] != cl) {\r\n\t\t\tnewClassNames += (classNames[x] + \" \");\r\n\t\t}\r\n\t}\r\n\telm.className = newClassNames.substring(0,newClassNames.length-1); //removes extra space at the end\r\n}\r\n\r\nSXE.addClass = function(elm,cl) {\r\n\tif(!SXE.containsClass(elm,cl)) elm.className ? elm.className += \" \" + cl : elm.className = cl;\r\n\treturn true;\r\n}\r\n\r\nfunction insertInlineElement(en) {\r\n\tvar ed = tinyMCEPopup.editor, dom = ed.dom;\r\n\r\n\ted.getDoc().execCommand('FontName', false, 'mceinline');\r\n\ttinymce.each(dom.select('span,font'), function(n) {\r\n\t\tif (n.style.fontFamily == 'mceinline' || n.face == 'mceinline')\r\n\t\t\tdom.replace(dom.create(en, {'data-mce-new' : 1}), n, 1);\r\n\t});\r\n}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/js/ins.js",
    "content": "/**\r\n * ins.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\nfunction init() {\r\n\tSXE.initElementDialog('ins');\r\n\tif (SXE.currentAction == \"update\") {\r\n\t\tsetFormValue('datetime', tinyMCEPopup.editor.dom.getAttrib(SXE.updateElement, 'datetime'));\r\n\t\tsetFormValue('cite', tinyMCEPopup.editor.dom.getAttrib(SXE.updateElement, 'cite'));\r\n\t\tSXE.showRemoveButton();\r\n\t}\r\n}\r\n\r\nfunction setElementAttribs(elm) {\r\n\tsetAllCommonAttribs(elm);\r\n\tsetAttrib(elm, 'datetime');\r\n\tsetAttrib(elm, 'cite');\r\n\telm.removeAttribute('data-mce-new');\r\n}\r\n\r\nfunction insertIns() {\r\n\tvar elm = tinyMCEPopup.editor.dom.getParent(SXE.focusElement, 'INS');\r\n\r\n\tif (elm == null) {\r\n\t\tvar s = SXE.inst.selection.getContent();\r\n\t\tif(s.length > 0) {\r\n\t\t\tinsertInlineElement('ins');\r\n\t\t\tvar elementArray = SXE.inst.dom.select('ins[data-mce-new]');\r\n\t\t\tfor (var i=0; i<elementArray.length; i++) {\r\n\t\t\t\tvar elm = elementArray[i];\r\n\t\t\t\tsetElementAttribs(elm);\r\n\t\t\t}\r\n\t\t}\r\n\t} else {\r\n\t\tsetElementAttribs(elm);\r\n\t}\r\n\ttinyMCEPopup.editor.nodeChanged();\r\n\ttinyMCEPopup.execCommand('mceEndUndoLevel');\r\n\ttinyMCEPopup.close();\r\n}\r\n\r\nfunction removeIns() {\r\n\tSXE.removeElement('ins');\r\n\ttinyMCEPopup.close();\r\n}\r\n\r\ntinyMCEPopup.onInit.add(init);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/ar_dlg.js",
    "content": "tinyMCE.addI18n('ar.xhtmlxtras_dlg',{attribs_title:\"Insert/Edit Attributes\",option_rtl:\"Right to left\",option_ltr:\"Left to right\",insert_date:\"Insert current date/time\",remove:\"Remove\",title_cite_element:\"Citation Element\",title_abbr_element:\"Abbreviation Element\",title_acronym_element:\"Acronym Element\",title_del_element:\"Deletion Element\",title_ins_element:\"Insertion Element\",fieldset_events_tab:\"Element Events\",fieldset_attrib_tab:\"Element Attributes\",fieldset_general_tab:\"General Settings\",events_tab:\"Events\",attrib_tab:\"Attributes\",general_tab:\"\\u0639\\u0627\\u0645\",attribute_attrib_tab:\"Attributes\",attribute_events_tab:\"Events\",attribute_label_accesskey:\"AccessKey\",attribute_label_tabindex:\"TabIndex\",attribute_label_langcode:\"Language\",attribute_option_rtl:\"Right to left\",attribute_option_ltr:\"Left to right\",attribute_label_langdir:\"Text Direction\",attribute_label_datetime:\"Date/Time\",attribute_label_cite:\"Cite\",attribute_label_style:\"Style\",attribute_label_class:\"Class\",attribute_label_id:\"ID\",attribute_label_title:\"Title\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/az_dlg.js",
    "content": "tinyMCE.addI18n('az.xhtmlxtras_dlg',{\"attribs_title\":\"Atribut \\u0259lav\\u0259/redakt\\u0259 et\",\"option_rtl\":\"Sa\\u011fda-sola\",\"option_ltr\":\"Solda-sa\\u011fa\",\"insert_date\":\"Haz\\u0131rki tarixi/vaxt\\u0131 \\u0259lav\\u0259 et\",remove:\"L\\u0259\\u011fv et\",\"title_cite_element\":\"Sitat elementi\",\"title_abbr_element\":\"Abbreviatura elementi\",\"title_acronym_element\":\"Akronim elementi\",\"title_del_element\":\"Silinmi\\u015f m\\u0259tnin elementi\",\"title_ins_element\":\"\\u018flav\\u0259 edilmi\\u015f m\\u0259tnin elementi\",\"fieldset_events_tab\":\"Element hadis\\u0259l\\u0259ri\",\"fieldset_attrib_tab\":\"Element atributlar\\u0131\",\"fieldset_general_tab\":\"\\u00dcmumi nizamlamalar\",\"events_tab\":\"Hadis\\u0259l\\u0259r\",\"attrib_tab\":\"Atributlar\",\"general_tab\":\"\\u00dcmumi\",\"attribute_attrib_tab\":\"Atributlar\",\"attribute_events_tab\":\"Hadis\\u0259l\\u0259r\",\"attribute_label_accesskey\":\"Giri\\u015f klavi\\u015fi\",\"attribute_label_tabindex\":\"Hesab indeksi\",\"attribute_label_langcode\":\"Dil\",\"attribute_option_rtl\":\"Sa\\u011fda-sola\",\"attribute_option_ltr\":\"Solda-sa\\u011fa\",\"attribute_label_langdir\":\"M\\u0259tnin istiqam\\u0259ti\",\"attribute_label_datetime\":\"Tarix/vaxt\",\"attribute_label_cite\":\"Sitat\",\"attribute_label_style\":\"Stil\",\"attribute_label_class\":\"Sinif\",\"attribute_label_id\":\"\\u0130dentifikator\",\"attribute_label_title\":\"Ad\\u0131\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/be_dlg.js",
    "content": "tinyMCE.addI18n('be.xhtmlxtras_dlg',{\"attribs_title\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c/\\u0440\\u044d\\u0434\\u0430\\u0433\\u0430\\u0432\\u0430\\u0446\\u044c \\u0430\\u0442\\u0440\\u044b\\u0431\\u0443\\u0442\\u044b\",\"option_rtl\":\"\\u0421\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043d\\u0430\\u043b\\u0435\\u0432\\u0430\",\"option_ltr\":\"\\u0417\\u043b\\u0435\\u0432\\u0430 \\u043d\\u0430\\u043f\\u0440\\u0430\\u0432\\u0430\",\"insert_date\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u0431\\u044f\\u0433\\u0443\\u0447\\u0443\\u044e \\u0434\\u0430\\u0442\\u0443/\\u0447\\u0430\\u0441\",remove:\"\\u0412\\u044b\\u0434\\u0430\\u043b\\u0456\\u0446\\u044c\",\"title_cite_element\":\"\\u0426\\u044b\\u0442\\u0430\\u0432\\u0430\\u043d\\u043d\\u0435\",\"title_abbr_element\":\"\\u0410\\u0431\\u0440\\u044d\\u0432\\u0456\\u044f\\u0442\\u0443\\u0440\\u0430\",\"title_acronym_element\":\"\\u0410\\u043a\\u0440\\u043e\\u043d\\u0456\\u043c\",\"title_del_element\":\"\\u0412\\u044b\\u0434\\u0430\\u043b\\u0435\\u043d\\u043d\\u0435\",\"title_ins_element\":\"\\u0417\\u0430\\u043c\\u0435\\u043d\\u0430\",\"fieldset_events_tab\":\"\\u041f\\u0430\\u0434\\u0437\\u0435\\u0456 \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\\u0430\",\"fieldset_attrib_tab\":\"\\u0410\\u0442\\u0440\\u044b\\u0431\\u0443\\u0442\\u044b \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\\u0430\",\"fieldset_general_tab\":\"\\u0410\\u0433\\u0443\\u043b\\u044c\\u043d\\u044b\\u044f \\u043d\\u0430\\u043b\\u0430\\u0434\\u044b\",\"events_tab\":\"\\u041f\\u0430\\u0434\\u0437\\u0435\\u0456\",\"attrib_tab\":\"\\u0410\\u0442\\u0440\\u044b\\u0431\\u0443\\u0442\\u044b\",\"general_tab\":\"\\u0410\\u0433\\u0443\\u043b\\u044c\\u043d\\u044b\\u044f\",\"attribute_attrib_tab\":\"\\u0410\\u0442\\u0440\\u044b\\u0431\\u0443\\u0442\\u044b\",\"attribute_events_tab\":\"\\u041f\\u0430\\u0434\\u0437\\u0435\\u0456\",\"attribute_label_accesskey\":\"\\u041a\\u043b\\u0430\\u0432\\u0456\\u0448\\u0430 \\u0434\\u043e\\u0441\\u0442\\u0443\\u043f\\u0443\",\"attribute_label_tabindex\":\"\\u0410\\u0437\\u043d\\u0430\\u0447\\u043d\\u0456\\u043a \\u0442\\u0430\\u0431\\u0443\\u043b\\u044f\\u0446\\u044b\\u0456\",\"attribute_label_langcode\":\"\\u041c\\u043e\\u0432\\u0430\",\"attribute_option_rtl\":\"\\u0421\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043d\\u0430\\u043b\\u0435\\u0432\\u0430\",\"attribute_option_ltr\":\"\\u0417\\u043b\\u0435\\u0432\\u0430 \\u043d\\u0430\\u043f\\u0440\\u0430\\u0432\\u0430\",\"attribute_label_langdir\":\"\\u041a\\u0456\\u0440\\u0443\\u043d\\u0430\\u043a \\u0442\\u044d\\u043a\\u0441\\u0442\\u0443\",\"attribute_label_datetime\":\"\\u0414\\u0430\\u0442\\u0430/\\u0447\\u0430\\u0441\",\"attribute_label_cite\":\"\\u0412\\u044b\\u043d\\u044f\\u0442\\u043a\\u0430\",\"attribute_label_style\":\"\\u0421\\u0442\\u044b\\u043b\\u044c\",\"attribute_label_class\":\"\\u041a\\u043b\\u0430\\u0441\",\"attribute_label_id\":\"\\u0406\\u0434\\u044d\\u043d\\u0442\\u044b\\u0444\\u0456\\u043a\\u0430\\u0442\\u0430\\u0440\",\"attribute_label_title\":\"\\u041d\\u0430\\u0437\\u0432\\u0430\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/cs_dlg.js",
    "content": "tinyMCE.addI18n('cs.xhtmlxtras_dlg',{attribs_title:\"Vlo\\u017eit/upravit atributy\",option_rtl:\"Zprava doleva\",option_ltr:\"Zleva doprava\",insert_date:\"Vlo\\u017eit aktu\\u00e1ln\\u00ed datum/\\u010das\",remove:\"Odstranit\",title_cite_element:\"Citace\",title_abbr_element:\"Zkratka\",title_acronym_element:\"Akronym\",title_del_element:\"Odstran\\u011bn\\u00fd text\",title_ins_element:\"P\\u0159idan\\u00fd text\",fieldset_events_tab:\"Atributy ud\\u00e1losti\",fieldset_attrib_tab:\"Atributy prvku\",fieldset_general_tab:\"Obecn\\u00e9 parametry\",events_tab:\"Ud\\u00e1losti\",attrib_tab:\"Atributy\",general_tab:\"Obecn\\u00e9\",attribute_attrib_tab:\"Atributy\",attribute_events_tab:\"Ud\\u00e1losti\",attribute_label_accesskey:\"Kl\\u00e1vesov\\u00e1 zkratka\",attribute_label_tabindex:\"Po\\u0159ad\\u00ed pro tabul\\u00e1tor\",attribute_label_langcode:\"Jazyk\",attribute_option_rtl:\"Zprava doleva\",attribute_option_ltr:\"Zleva doprava\",attribute_label_langdir:\"Sm\\u011br textu\",attribute_label_datetime:\"Datum/\\u010cas\",attribute_label_cite:\"Citace\",attribute_label_style:\"Styl\",attribute_label_class:\"T\\u0159\\u00edda\",attribute_label_id:\"ID\",attribute_label_title:\"Titulek\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/da_dlg.js",
    "content": "tinyMCE.addI18n('da.xhtmlxtras_dlg',{\"attribs_title\":\"Inds\\u00e6t/rediger attributter\",\"option_rtl\":\"H\\u00f8jre mod venstre\",\"option_ltr\":\"Venstre mod h\\u00f8jre\",\"insert_date\":\"Inds\\u00e6t nuv\\u00e6rende dato/tid\",remove:\"Slet\",\"title_cite_element\":\"Citationselement\",\"title_abbr_element\":\"Forkortet element\",\"title_acronym_element\":\"Akronym element\",\"title_del_element\":\"Sletteklart element\",\"title_ins_element\":\"Inds\\u00e6tbart element\",\"fieldset_events_tab\":\"Element-h\\u00e6ndelser\",\"fieldset_attrib_tab\":\"Element-attributter\",\"fieldset_general_tab\":\"Genererelle indstillinger\",\"events_tab\":\"H\\u00e6ndelser\",\"attrib_tab\":\"Attributter\",\"general_tab\":\"Generelt\",\"attribute_attrib_tab\":\"Attributter\",\"attribute_events_tab\":\"H\\u00e6ndelser\",\"attribute_label_accesskey\":\"Adgangsn\\u00f8gle\",\"attribute_label_tabindex\":\"Tab-indeks\",\"attribute_label_langcode\":\"Sprog\",\"attribute_option_rtl\":\"H\\u00f8jre mod venstre\",\"attribute_option_ltr\":\"Venstre mod h\\u00f8jre\",\"attribute_label_langdir\":\"Tekstretning\",\"attribute_label_datetime\":\"Dato/tid\",\"attribute_label_cite\":\"Citat\",\"attribute_label_style\":\"Stil\",\"attribute_label_class\":\"Klasse\",\"attribute_label_id\":\"ID\",\"attribute_label_title\":\"Titel\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/de_dlg.js",
    "content": "tinyMCE.addI18n('de.xhtmlxtras_dlg',{attribs_title:\"Attribute einf\\u00fcgen/bearbeiten\",option_rtl:\"Rechts nach links\",option_ltr:\"Links nach rechts\",insert_date:\"Aktuelle Zeit/Datum einf\\u00fcgen\",remove:\"Entfernen\",title_cite_element:\"Quellenangabe\",title_abbr_element:\"Abk\\u00fcrzung\",title_acronym_element:\"Akronym\",title_del_element:\"Entfernter Text\",title_ins_element:\"Eingef\\u00fcgter Text\",fieldset_events_tab:\"Ereignisse\",fieldset_attrib_tab:\"Attribute\",fieldset_general_tab:\"Allgemeine Einstellungen\",events_tab:\"Ereignisse\",attrib_tab:\"Attribute\",general_tab:\"Allgemein\",attribute_attrib_tab:\"Attribute\",attribute_events_tab:\"Ereignisse\",attribute_label_accesskey:\"Tastenk\\u00fcrzel\",attribute_label_tabindex:\"Tabindex\",attribute_label_langcode:\"Sprache\",attribute_option_rtl:\"Rechts nach links\",attribute_option_ltr:\"Links nach rechts\",attribute_label_langdir:\"Schriftrichtung\",attribute_label_datetime:\"Zeit/Datum\",attribute_label_cite:\"Quellenangabe\",attribute_label_style:\"Format\",attribute_label_class:\"Klasse\",attribute_label_id:\"ID\",attribute_label_title:\"Titel\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/el_dlg.js",
    "content": "tinyMCE.addI18n('el.xhtmlxtras_dlg',{\"attribs_title\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae/\\u03b5\\u03c0\\u03b5\\u03be\\u03b5\\u03c1\\u03b3\\u03b1\\u03c3\\u03af\\u03b1 \\u03b9\\u03b4\\u03b9\\u03bf\\u03c4\\u03ae\\u03c4\\u03c9\\u03bd\",\"option_rtl\":\"\\u0394\\u03b5\\u03be\\u03b9\\u03ac \\u03c0\\u03c1\\u03bf\\u03c2 \\u03b1\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac\",\"option_ltr\":\"\\u0391\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac \\u03c0\\u03c1\\u03bf\\u03c2 \\u03b4\\u03b5\\u03be\\u03b9\\u03ac\",\"insert_date\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae \\u03c4\\u03c1\\u03ad\\u03c7\\u03bf\\u03c5\\u03c3\\u03b1\\u03c2 \\u03b7\\u03bc\\u03ad\\u03c1\\u03b1\\u03c2/\\u03ce\\u03c1\\u03b1\\u03c2\",remove:\"\\u0391\\u03c6\\u03b1\\u03af\\u03c1\\u03b5\\u03c3\\u03b7\",\"title_cite_element\":\"Citation \\u03c3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf\\u03c5\",\"title_abbr_element\":\"\\u03a3\\u03c5\\u03bd\\u03c4\\u03bf\\u03bc\\u03bf\\u03b3\\u03c1\\u03b1\\u03c6\\u03af\\u03b1 \\u03c3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf\\u03c5\",\"title_acronym_element\":\"\\u0391\\u03ba\\u03c1\\u03bf\\u03bd\\u03cd\\u03bc\\u03b9\\u03bf \\u03c3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf\\u03c5\",\"title_del_element\":\"\\u0394\\u03b9\\u03b1\\u03b3\\u03c1\\u03b1\\u03c6\\u03ae \\u03c3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf\\u03c5\",\"title_ins_element\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae \\u03c3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf\\u03c5\",\"fieldset_events_tab\":\"\\u0393\\u03b5\\u03b3\\u03bf\\u03bd\\u03cc\\u03c4\\u03b1 \\u03c3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf\\u03c5\",\"fieldset_attrib_tab\":\"\\u0399\\u03b4\\u03b9\\u03cc\\u03c4\\u03b7\\u03c4\\u03b5\\u03c2 \\u03c3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf\\u03c5\",\"fieldset_general_tab\":\"\\u0393\\u03b5\\u03bd\\u03b9\\u03ba\\u03ad\\u03c2 \\u03a1\\u03c5\\u03b8\\u03bc\\u03af\\u03c3\\u03b5\\u03b9\\u03c2\",\"events_tab\":\"\\u0393\\u03b5\\u03b3\\u03bf\\u03bd\\u03cc\\u03c4\\u03b1\",\"attrib_tab\":\"\\u0399\\u03b4\\u03b9\\u03cc\\u03c4\\u03b7\\u03c4\\u03b5\\u03c2\",\"general_tab\":\"\\u0393\\u03b5\\u03bd\\u03b9\\u03ba\\u03ac\",\"attribute_attrib_tab\":\"\\u0399\\u03b4\\u03b9\\u03cc\\u03c4\\u03b7\\u03c4\\u03b5\\u03c2\",\"attribute_events_tab\":\"\\u0393\\u03b5\\u03b3\\u03bf\\u03bd\\u03cc\\u03c4\\u03b1\",\"attribute_label_accesskey\":\"\\u03a0\\u03bb\\u03ae\\u03ba\\u03c4\\u03c1\\u03bf \\u03c0\\u03c1\\u03cc\\u03c3\\u03b2\\u03b1\\u03c3\\u03b7\\u03c2\",\"attribute_label_tabindex\":\"TabIndex\",\"attribute_label_langcode\":\"\\u0393\\u03bb\\u03ce\\u03c3\\u03c3\\u03b1\",\"attribute_option_rtl\":\"\\u0394\\u03b5\\u03be\\u03b9\\u03ac \\u03c0\\u03c1\\u03bf\\u03c2 \\u03b1\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac\",\"attribute_option_ltr\":\"\\u0391\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac \\u03c0\\u03c1\\u03bf\\u03c2 \\u03b4\\u03b5\\u03be\\u03b9\\u03ac\",\"attribute_label_langdir\":\"\\u039a\\u03b1\\u03c4\\u03b5\\u03cd\\u03b8\\u03c5\\u03bd\\u03c3\\u03b7 \\u03ba\\u03b5\\u03b9\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5\",\"attribute_label_datetime\":\"\\u0397\\u03bc\\u03ad\\u03c1\\u03b1/\\u038f\\u03c1\\u03b1\",\"attribute_label_cite\":\"Cite\",\"attribute_label_style\":\"\\u03a3\\u03c4\\u03c5\\u03bb\",\"attribute_label_class\":\"\\u039a\\u03bb\\u03ac\\u03c3\\u03b7\",\"attribute_label_id\":\"ID\",\"attribute_label_title\":\"\\u03a4\\u03af\\u03c4\\u03bb\\u03bf\\u03c2\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/en_dlg.js",
    "content": "tinyMCE.addI18n('en.xhtmlxtras_dlg',{\"attribs_title\":\"Insert/Edit Attributes\",\"option_rtl\":\"Right to Left\",\"option_ltr\":\"Left to Right\",\"insert_date\":\"Insert Current Date/Time\",remove:\"Remove\",\"title_cite_element\":\"Citation Element\",\"title_abbr_element\":\"Abbreviation Element\",\"title_acronym_element\":\"Acronym Element\",\"title_del_element\":\"Deletion Element\",\"title_ins_element\":\"Insertion Element\",\"fieldset_events_tab\":\"Element Events\",\"fieldset_attrib_tab\":\"Element Attributes\",\"fieldset_general_tab\":\"General Settings\",\"events_tab\":\"Events\",\"attrib_tab\":\"Attributes\",\"general_tab\":\"General\",\"attribute_attrib_tab\":\"Attributes\",\"attribute_events_tab\":\"Events\",\"attribute_label_accesskey\":\"AccessKey\",\"attribute_label_tabindex\":\"TabIndex\",\"attribute_label_langcode\":\"Language\",\"attribute_option_rtl\":\"Right to Left\",\"attribute_option_ltr\":\"Left to Right\",\"attribute_label_langdir\":\"Text Direction\",\"attribute_label_datetime\":\"Date/Time\",\"attribute_label_cite\":\"Cite\",\"attribute_label_style\":\"Style\",\"attribute_label_class\":\"Class\",\"attribute_label_id\":\"ID\",\"attribute_label_title\":\"Title\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/es_dlg.js",
    "content": "tinyMCE.addI18n('es.xhtmlxtras_dlg',{attribs_title:\"Insertar/Editar atributos\",option_rtl:\"Derecha a izquierda\",option_ltr:\"Izquierda a derecha\",insert_date:\"Insertar fecha/hora actuales\",remove:\"Suprimir\",title_cite_element:\"Cita\",title_abbr_element:\"Abreviatura\",title_acronym_element:\"Acr\\u00f3nimo\",title_del_element:\"Borrar\",title_ins_element:\"Insertar\",fieldset_events_tab:\"Evento\",fieldset_attrib_tab:\"Atributos\",fieldset_general_tab:\"Configuraci\\u00f3n general\",events_tab:\"Eventos\",attrib_tab:\"Atributos\",general_tab:\"General\",attribute_attrib_tab:\"Atributos\",attribute_events_tab:\"Eventos\",attribute_label_accesskey:\"Tecla de acceso\",attribute_label_tabindex:\"Orden de tabulaci\\u00f3n\",attribute_label_langcode:\"Lenguaje\",attribute_option_rtl:\"Derecha a izquierda\",attribute_option_ltr:\"Izquierda a derecha\",attribute_label_langdir:\"Direcci\\u00f3n de texto\",attribute_label_datetime:\"Fecha/Hora\",attribute_label_cite:\"Cita\",attribute_label_style:\"Estilo\",attribute_label_class:\"Clase\",attribute_label_id:\"ID\",attribute_label_title:\"T\\u00edtulo\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/fr_dlg.js",
    "content": "tinyMCE.addI18n('fr.xhtmlxtras_dlg',{attribs_title:\"Ins\\u00e9rer / \\u00e9diter les attributs\",option_rtl:\"De droite \\u00e0 gauche\",option_ltr:\"De gauche \\u00e0 droite\",insert_date:\"Ins\\u00e9rer la date et l\\'heure actuelles\",remove:\"Enlever\",title_cite_element:\"Citation\",title_abbr_element:\"Abr\\u00e9viation\",title_acronym_element:\"Acronyme\",title_del_element:\"Suppression\",title_ins_element:\"Insertion\",fieldset_events_tab:\"\\u00c9v\\u00e9nements\",fieldset_attrib_tab:\"Attributs\",fieldset_general_tab:\"Param\\u00e8tres g\\u00e9n\\u00e9raux\",events_tab:\"\\u00c9v\\u00e9nements\",attrib_tab:\"Attributs\",general_tab:\"G\\u00e9n\\u00e9ral\",attribute_attrib_tab:\"Attributs\",attribute_events_tab:\"\\u00c9v\\u00e8nements\",attribute_label_accesskey:\"Accesskey\",attribute_label_tabindex:\"TabIndex\",attribute_label_langcode:\"Langue\",attribute_option_rtl:\"De droite \\u00e0 gauche\",attribute_option_ltr:\"De gauche \\u00e0 droite\",attribute_label_langdir:\"Sens de lecture\",attribute_label_datetime:\"Date / heure\",attribute_label_cite:\"Citation\",attribute_label_style:\"Style\",attribute_label_class:\"Classe\",attribute_label_id:\"ID\",attribute_label_title:\"Titre\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/he_dlg.js",
    "content": "tinyMCE.addI18n('he.xhtmlxtras_dlg',{\"attribs_title\":\"\\u05d4\\u05db\\u05e0\\u05e1\\u05ea/\\u05e2\\u05d3\\u05db\\u05d5\\u05df \\u05ea\\u05db\\u05d5\\u05e0\\u05d5\\u05ea\",\"option_rtl\":\"\\u05de\\u05d9\\u05de\\u05d9\\u05df \\u05dc\\u05e9\\u05de\\u05d0\\u05dc\",\"option_ltr\":\"\\u05de\\u05e9\\u05de\\u05d0\\u05dc \\u05dc\\u05d9\\u05de\\u05d9\\u05df\",\"insert_date\":\"\\u05d4\\u05db\\u05e0\\u05e1\\u05ea \\u05d6\\u05de\\u05df/\\u05ea\\u05d0\\u05e8\\u05d9\\u05da \\u05e0\\u05d5\\u05db\\u05d7\\u05d9\",remove:\"\\u05d4\\u05e1\\u05e8\",\"title_cite_element\":\"\\u05e6\\u05d9\\u05d8\\u05d5\\u05d8 \\u05d0\\u05dc\\u05de\\u05e0\\u05d8\",\"title_abbr_element\":\"\\u05e7\\u05d9\\u05e6\\u05d5\\u05e8 \\u05d0\\u05dc\\u05de\\u05e0\\u05d8\",\"title_acronym_element\":\"\\u05e8\\u05d0\\u05e9\\u05d9 \\u05ea\\u05d9\\u05d1\\u05d5\\u05ea \\u05d4\\u05d0\\u05dc\\u05de\\u05e0\\u05d8\",\"title_del_element\":\"\\u05de\\u05d7\\u05d9\\u05e7\\u05ea \\u05d0\\u05dc\\u05de\\u05e0\\u05d8\",\"title_ins_element\":\"\\u05d4\\u05db\\u05e0\\u05e1\\u05ea \\u05d0\\u05dc\\u05de\\u05e0\\u05d8\",\"fieldset_events_tab\":\"\\u05d0\\u05d9\\u05e8\\u05d5\\u05e2\\u05d9 \\u05d4\\u05d0\\u05dc\\u05de\\u05e0\\u05d8\",\"fieldset_attrib_tab\":\" \\u05ea\\u05db\\u05d5\\u05e0\\u05d5\\u05ea \\u05d4\\u05d0\\u05dc\\u05de\\u05e0\\u05d8\",\"fieldset_general_tab\":\"\\u05d4\\u05d2\\u05d3\\u05e8\\u05d5\\u05ea \\u05db\\u05dc\\u05dc\\u05d9\\u05d5\\u05ea\",\"events_tab\":\"\\u05d0\\u05d9\\u05e8\\u05d5\\u05e2\\u05d9\\u05dd\",\"attrib_tab\":\"\\u05ea\\u05db\\u05d5\\u05e0\\u05d5\\u05ea\",\"general_tab\":\"\\u05db\\u05dc\\u05dc\\u05d9\",\"attribute_attrib_tab\":\"\\u05ea\\u05db\\u05d5\\u05e0\\u05d5\\u05ea\",\"attribute_events_tab\":\"\\u05d0\\u05d9\\u05e8\\u05d5\\u05e2\\u05d9\\u05dd\",\"attribute_label_accesskey\":\"AccessKey\",\"attribute_label_tabindex\":\"TabIndex\",\"attribute_label_langcode\":\"\\u05e9\\u05e4\\u05d4\",\"attribute_option_rtl\":\"\\u05de\\u05d9\\u05de\\u05d9\\u05df \\u05dc\\u05e9\\u05de\\u05d0\\u05dc\",\"attribute_option_ltr\":\"\\u05de\\u05e9\\u05de\\u05d0\\u05dc \\u05dc\\u05d9\\u05de\\u05d9\\u05df\",\"attribute_label_langdir\":\"\\u05db\\u05d9\\u05d5\\u05d5\\u05df \\u05d4\\u05d8\\u05e7\\u05e1\\u05d8\",\"attribute_label_datetime\":\"\\u05ea\\u05d0\\u05e8\\u05d9\\u05da/\\u05d6\\u05de\\u05df\",\"attribute_label_cite\":\"\\u05e6\\u05d9\\u05d8\\u05d5\\u05d8\",\"attribute_label_style\":\"\\u05e2\\u05d9\\u05e6\\u05d5\\u05d1\",\"attribute_label_class\":\"\\u05de\\u05d7\\u05dc\\u05e7\\u05d4\",\"attribute_label_id\":\"ID\",\"attribute_label_title\":\"\\u05db\\u05d5\\u05ea\\u05e8\\u05ea\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/hr_dlg.js",
    "content": "tinyMCE.addI18n('hr.xhtmlxtras_dlg',{attribs_title:\"Umetni/uredi atribute\",option_rtl:\"S desna na lijevo\",option_ltr:\"S lijeva na desno\",insert_date:\"Umetni trenuta\\u010dni datum/vrijeme\",remove:\"Ukloni\",title_cite_element:\"Element citata\",title_abbr_element:\"Element kratice\",title_acronym_element:\"Element akronima\",title_del_element:\"Element za brisanje\",title_ins_element:\"Element za unos\",fieldset_events_tab:\"Doga\\u0111aji elemenata\",fieldset_attrib_tab:\"Atributi elemenata\",fieldset_general_tab:\"Osnovne postavke\",events_tab:\"Doga\\u0111aji\",attrib_tab:\"Atributi\",general_tab:\"Osnovno\",attribute_attrib_tab:\"Atributi\",attribute_events_tab:\"Doga\\u0111aji\",attribute_label_accesskey:\"AccessKey\",attribute_label_tabindex:\"TabIndex\",attribute_label_langcode:\"Jezik\",attribute_option_rtl:\"S desna na lijevo\",attribute_option_ltr:\"S lijeva na desno\",attribute_label_langdir:\"Smjer teksta\",attribute_label_datetime:\"Datum/vrijeme\",attribute_label_cite:\"Citat\",attribute_label_style:\"Stil\",attribute_label_class:\"Klasa\",attribute_label_id:\"ID\",attribute_label_title:\"Naslov\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/hu_dlg.js",
    "content": "tinyMCE.addI18n('hu.xhtmlxtras_dlg',{\"attribs_title\":\"Tulajdons\\u00e1gok besz\\u00far\\u00e1sa/szerkeszt\\u00e9se\",\"option_rtl\":\"Jobbr\\u00f3l balra\",\"option_ltr\":\"Balr\\u00f3l jobra\",\"insert_date\":\"Aktu\\u00e1lis d\\u00e1tum/id\\u0151 besz\\u00far\\u00e1sa\",remove:\"Elt\\u00e1vol\\u00edt\\u00e1s\",\"title_cite_element\":\"Id\\u00e9zet elem\",\"title_abbr_element\":\"R\\u00f6vid\\u00edt\\u00e9s elem\",\"title_acronym_element\":\"Bet\\u0171sz\\u00f3 elem\",\"title_del_element\":\"T\\u00f6r\\u00f6lt elem\",\"title_ins_element\":\"Besz\\u00fart elem\",\"fieldset_events_tab\":\"Elem esem\\u00e9nyek\",\"fieldset_attrib_tab\":\"Elem tulajdons\\u00e1gok\",\"fieldset_general_tab\":\"\\u00c1ltal\\u00e1nos be\\u00e1ll\\u00edt\\u00e1sok\",\"events_tab\":\"Esem\\u00e9nyek\",\"attrib_tab\":\"Tulajdons\\u00e1gok\",\"general_tab\":\"\\u00c1ltal\\u00e1nos\",\"attribute_attrib_tab\":\"Tulajdons\\u00e1gok\",\"attribute_events_tab\":\"Esem\\u00e9nyek\",\"attribute_label_accesskey\":\"Gyorsbilenty\\u0171\",\"attribute_label_tabindex\":\"TabIndex\",\"attribute_label_langcode\":\"Nyelv\",\"attribute_option_rtl\":\"Jobbr\\u00f3l balra\",\"attribute_option_ltr\":\"Balr\\u00f3l jobbra\",\"attribute_label_langdir\":\"Sz\\u00f6veg ir\\u00e1nya\",\"attribute_label_datetime\":\"D\\u00e1tum/Id\\u0151\",\"attribute_label_cite\":\"Id\\u00e9zet\",\"attribute_label_style\":\"Style\",\"attribute_label_class\":\"Oszt\\u00e1ly (class)\",\"attribute_label_id\":\"ID\",\"attribute_label_title\":\"C\\u00edm\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/hy_dlg.js",
    "content": "tinyMCE.addI18n('hy.xhtmlxtras_dlg',{\"attribs_title\":\"\\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c / \\u0583\\u0578\\u0583\\u0578\\u056d\\u0565\\u056c \\u0561\\u057f\\u0580\\u056b\\u0562\\u0578\\u0582\\u057f\\u0576\\u0565\\u0580\",\"option_rtl\":\"\\u0531\\u057b\\u056b\\u0581 \\u0571\\u0561\\u056d\",\"option_ltr\":\"\\u0541\\u0561\\u056d\\u056b\\u0581 \\u0561\\u057b\",\"insert_date\":\"\\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c \\u0568\\u0576\\u0569\\u0561\\u0581\\u056b\\u056f \\u0561\\u0574\\u057d\\u0561\\u0569\\u056b\\u057e\\u0568 / \\u056a\\u0561\\u0574\\u0568\",remove:\"\\u0540\\u0565\\u057c\\u0561\\u0581\\u0576\\u0565\\u056c\",\"title_cite_element\":\"Citation Element\",\"title_abbr_element\":\"Abbreviation Element\",\"title_acronym_element\":\"Acronym Element\",\"title_del_element\":\"Deletion Element\",\"title_ins_element\":\"Insertion Element\",\"fieldset_events_tab\":\"Element Events\",\"fieldset_attrib_tab\":\"Element Attributes\",\"fieldset_general_tab\":\"\\u0538\\u0576\\u0564\\u0570\\u0561\\u0576\\u0578\\u0582\\u0580 \\u057a\\u0561\\u0580\\u0561\\u0574\\u0565\\u057f\\u0580\\u0565\\u0580\",\"events_tab\":\"\\u0534\\u0565\\u057a\\u0584\\u0565\\u0580\",\"attrib_tab\":\"\\u0531\\u057f\\u0580\\u056b\\u0562\\u0578\\u0582\\u057f\\u0576\\u0565\\u0580\",\"general_tab\":\"\\u0540\\u056b\\u0574\\u0576\\u0561\\u056f\\u0561\\u0576\",\"attribute_attrib_tab\":\"\\u0531\\u0568\\u0580\\u056b\\u0562\\u0578\\u0582\\u057f\\u0576\\u0565\\u0580\",\"attribute_events_tab\":\"\\u0534\\u0565\\u057a\\u0584\\u0565\\u0580\",\"attribute_label_accesskey\":\"AccessKey\",\"attribute_label_tabindex\":\"TabIndex\",\"attribute_label_langcode\":\"\\u053c\\u0565\\u0566\\u0578\\u0582\",\"attribute_option_rtl\":\"\\u0531\\u057b\\u056b\\u0581 \\u0571\\u0561\\u056d\",\"attribute_option_ltr\":\"\\u0541\\u0561\\u056d\\u056b\\u0581 \\u0561\\u057b\",\"attribute_label_langdir\":\"\\u054f\\u0565\\u0584\\u057d\\u057f\\u056b \\u0578\\u0582\\u0572\\u0572\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\",\"attribute_label_datetime\":\"\\u0531\\u0574\\u057d\\u0561\\u0569\\u056b\\u057e / \\u053a\\u0561\\u0574\\u0561\\u0576\\u0561\\u056f\",\"attribute_label_cite\":\"\\u0544\\u0565\\u056f\\u0576\\u0561\\u0562\\u0561\\u0576\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\",\"attribute_label_style\":\"\\u0548\\u0573\",\"attribute_label_class\":\"\\u0534\\u0561\\u057d\",\"attribute_label_id\":\"ID\",\"attribute_label_title\":\"\\u054e\\u0565\\u0580\\u0576\\u0561\\u0563\\u056b\\u0580\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/it_dlg.js",
    "content": "tinyMCE.addI18n('it.xhtmlxtras_dlg',{\"attribs_title\":\"Inserisci/modifica attributi\",\"option_rtl\":\"Destra verso sinistra\",\"option_ltr\":\"Sinistra verso destra\",\"insert_date\":\"Inserisci data/ora corrente\",remove:\"Rimuovi\",\"title_cite_element\":\"Citazione elemento\",\"title_abbr_element\":\"Abbreviazione elemento\",\"title_acronym_element\":\"Acronimo elemento\",\"title_del_element\":\"Cancellazione elemento\",\"title_ins_element\":\"Inserimento elemento\",\"fieldset_events_tab\":\"Eventi elemento\",\"fieldset_attrib_tab\":\"Attributi elemento\",\"fieldset_general_tab\":\"Impostazioni Generali\",\"events_tab\":\"Eventi\",\"attrib_tab\":\"Attributi\",\"general_tab\":\"Generale\",\"attribute_attrib_tab\":\"Attributi\",\"attribute_events_tab\":\"Eventi\",\"attribute_label_accesskey\":\"Tasto di accesso\",\"attribute_label_tabindex\":\"Indice tabulazione\",\"attribute_label_langcode\":\"Lingua\",\"attribute_option_rtl\":\"Destra verso sinistra\",\"attribute_option_ltr\":\"Sinistra verso destra\",\"attribute_label_langdir\":\"Direzione del testo\",\"attribute_label_datetime\":\"Date/Time\",\"attribute_label_cite\":\"Citazione\",\"attribute_label_style\":\"Style\",\"attribute_label_class\":\"Classe\",\"attribute_label_id\":\"ID\",\"attribute_label_title\":\"Titolo\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/ka_dlg.js",
    "content": "tinyMCE.addI18n('ka.xhtmlxtras_dlg',{\"attribs_title\":\"\\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d8\\u10e1 \\u10d7\\u10d5\\u10d8\\u10e1\\u10d4\\u10d1\\u10d4\\u10d1\\u10d8\",\"option_rtl\":\"\\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10dc\\u10d8\\u10d3\\u10d0\\u10dc \\u10db\\u10d0\\u10e0\\u10ea\\u10ee\\u10dc\\u10d8\\u10d5\",\"option_ltr\":\"\\u10db\\u10d0\\u10e0\\u10ea\\u10ee\\u10dc\\u10d8\\u10d3\\u10d0\\u10dc \\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10dc\\u10d8\\u10d5\",\"insert_date\":\"\\u10d7\\u10d0\\u10e0\\u10d8\\u10e6\\u10d8\\u10e1 \\u10e9\\u10d0\\u10e1\\u10db\\u10d0\",remove:\"\\u10ec\\u10d0\\u10e8\\u10da\\u10d0\",\"title_cite_element\":\"\\u10ea\\u10d8\\u10e2\\u10d8\\u10e0\\u10d4\\u10d1\\u10d0\",\"title_abbr_element\":\"\\u10e8\\u10d4\\u10db\\u10dd\\u10d9\\u10da\\u10d4\\u10d1\\u10d0\",\"title_acronym_element\":\"\\u10d0\\u10d1\\u10e0\\u10d8\\u10d5\\u10d8\\u10d0\\u10ea\\u10d8\\u10d0\",\"title_del_element\":\"\\u10ec\\u10d0\\u10e8\\u10da\\u10d0\",\"title_ins_element\":\"\\u10e8\\u10d4\\u10ea\\u10d5\\u10da\\u10d0\",\"fieldset_events_tab\":\"\\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d4\\u10d1\\u10d8\\u10e1 \\u10db\\u10dd\\u10d5\\u10da\\u10d4\\u10dc\\u10d4\\u10d1\\u10d8\",\"fieldset_attrib_tab\":\"\\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d8\\u10e1 \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"fieldset_general_tab\":\"\\u10e1\\u10d0\\u10d4\\u10e0\\u10d7\\u10dd \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"events_tab\":\"\\u10db\\u10dd\\u10d5\\u10da\\u10d4\\u10dc\\u10d0\",\"attrib_tab\":\"\\u10d0\\u10e2\\u10e0\\u10d8\\u10d1\\u10e3\\u10e2\\u10d8\",\"general_tab\":\"\\u10e1\\u10d0\\u10d4\\u10e0\\u10d7\\u10dd\",\"attribute_attrib_tab\":\"\\u10d0\\u10e2\\u10e0\\u10d8\\u10d1\\u10e3\\u10e2\\u10d8\",\"attribute_events_tab\":\"\\u10db\\u10dd\\u10d5\\u10da\\u10d4\\u10dc\\u10d0\",\"attribute_label_accesskey\":\"\\u10ec\\u10d5\\u10d3\\u10dd\\u10db\\u10d8\\u10e1 \\u10d2\\u10d0\\u10e1\\u10d0\\u10e6\\u10d4\\u10d1\\u10d8\",\"attribute_label_tabindex\":\"\\u10e1\\u10d0\\u10d7\\u10d0\\u10e3\\u10e0\\u10d8\",\"attribute_label_langcode\":\"\\u10d4\\u10dc\\u10d0\",\"attribute_option_rtl\":\"\\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10dc\\u10d8\\u10d3\\u10d0\\u10dc \\u10db\\u10d0\\u10e0\\u10ea\\u10ee\\u10dc\\u10d8\\u10d5\",\"attribute_option_ltr\":\"\\u10db\\u10d0\\u10e0\\u10ea\\u10ee\\u10dc\\u10d8\\u10d3\\u10d0\\u10dc \\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10dc\\u10d8\\u10d5\",\"attribute_label_langdir\":\"\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\\u10e1 \\u10db\\u10d8\\u10db\\u10e0\\u10d7\\u10e3\\u10da\\u10d4\\u10d1\\u10d0\",\"attribute_label_datetime\":\"\\u10d7\\u10d0\\u10e0\\u10d8\\u10e6\\u10d8/\\u10d3\\u10e0\\u10dd\",\"attribute_label_cite\":\"\\u10ea\\u10d8\\u10e2\\u10d0\\u10e2\\u10d0\",\"attribute_label_style\":\"\\u10e1\\u10e2\\u10d8\\u10da\\u10d8\",\"attribute_label_class\":\"\\u10d9\\u10da\\u10d0\\u10e1\\u10d8\",\"attribute_label_id\":\"\\u10e1\\u10d0\\u10ee\\u10d4\\u10da\\u10d8\",\"attribute_label_title\":\"\\u10e1\\u10d0\\u10d7\\u10d0\\u10e3\\u10e0\\u10d8\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/ko_dlg.js",
    "content": "tinyMCE.addI18n('ko.xhtmlxtras_dlg',{\"attribs_title\":\"\\uc18d\\uc131 \\uc0bd\\uc785/\\ud3b8\\uc9d1\",\"option_rtl\":\"\\uc624\\ub978\\ucabd\\uc5d0\\uc11c \\uc67c\\ucabd\\uc73c\\ub85c\",\"option_ltr\":\"\\uc67c\\ucabd\\uc5d0\\uc11c \\uc624\\ub978\\ucabd\\uc73c\\ub85c\",\"insert_date\":\"\\ud604\\uc7ac \\ub0a0\\uc9dc/\\uc2dc\\uac04 \\uc0bd\\uc785\",remove:\"\\uc81c\\uac70\",\"title_cite_element\":\"\\uc778\\uc6a9 \\uc694\\uc18c\",\"title_abbr_element\":\"\\uc57d\\uc5b4 \\uc694\\uc18c\",\"title_acronym_element\":\"\\uba38\\ub9bf\\uae00\\uc790 \\uc694\\uc18c\",\"title_del_element\":\"\\uc0ad\\uc81c \\uc694\\uc18c\",\"title_ins_element\":\"\\uc0bd\\uc785 \\uc694\\uc18c\",\"fieldset_events_tab\":\"\\uc694\\uc18c \\uc774\\ubca4\\ud2b8\",\"fieldset_attrib_tab\":\"\\uc694\\uc18c \\uc18d\\uc131\",\"fieldset_general_tab\":\"\\uc77c\\ubc18 \\uc124\\uc815\",\"events_tab\":\"\\uc774\\ubca4\\ud2b8\",\"attrib_tab\":\"\\uc18d\\uc131\",\"general_tab\":\"\\uc77c\\ubc18\",\"attribute_attrib_tab\":\"\\uc18d\\uc131\",\"attribute_events_tab\":\"\\uc774\\ubca4\\ud2b8\",\"attribute_label_accesskey\":\"\\uc561\\uc138\\uc2a4 \\ud0a4\",\"attribute_label_tabindex\":\"\\ud0ed \\uc778\\ub371\\uc2a4\",\"attribute_label_langcode\":\"\\uc5b8\\uc5b4\",\"attribute_option_rtl\":\"\\uc624\\ub978\\ucabd\\uc5d0\\uc11c \\uc67c\\ucabd\\uc73c\\ub85c\",\"attribute_option_ltr\":\"\\uc67c\\ucabd\\uc5d0\\uc11c \\uc624\\ub978\\ucabd\\uc73c\\ub85c\",\"attribute_label_langdir\":\"\\ubb38\\uc790 \\ubc29\\ud5a5\",\"attribute_label_datetime\":\"\\ub0a0\\uc9dc/\\uc2dc\\uac04\",\"attribute_label_cite\":\"\\uc778\\uc6a9\",\"attribute_label_style\":\"\\uc11c\\uc2dd\",\"attribute_label_class\":\"\\ud074\\ub798\\uc2a4\",\"attribute_label_id\":\"ID\",\"attribute_label_title\":\"\\uc81c\\ubaa9\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/nb_dlg.js",
    "content": "tinyMCE.addI18n('nb.xhtmlxtras_dlg',{\"attribs_title\":\"Sett inn / endre attributter\",\"option_rtl\":\"H\\u00f8yre mot venstre\",\"option_ltr\":\"Venstre mot h\\u00f8yre\",\"insert_date\":\"Sett inn dato/tid\",remove:\"Fjern\",\"title_cite_element\":\"Sitatelement\",\"title_abbr_element\":\"Forkortelseselement\",\"title_acronym_element\":\"Akronymelement\",\"title_del_element\":\"Sletteelement\",\"title_ins_element\":\"Innsettingselement\",\"fieldset_events_tab\":\"Elementhendelser\",\"fieldset_attrib_tab\":\"Elementattributter\",\"fieldset_general_tab\":\"Generelle innstillinger\",\"events_tab\":\"Hendelser\",\"attrib_tab\":\"Attributter\",\"general_tab\":\"Generelt\",\"attribute_attrib_tab\":\"Attributter\",\"attribute_events_tab\":\"Hendelser\",\"attribute_label_accesskey\":\"Tilgangsn\\u00f8kkel\",\"attribute_label_tabindex\":\"Tabuleringsindeks\",\"attribute_label_langcode\":\"Spr\\u00e5k\",\"attribute_option_rtl\":\"H\\u00f8yre til venstre\",\"attribute_option_ltr\":\"Venstre til h\\u00f8yre\",\"attribute_label_langdir\":\"Tekstretning\",\"attribute_label_datetime\":\"Dato/tid\",\"attribute_label_cite\":\"Sted\",\"attribute_label_style\":\"Stil\",\"attribute_label_class\":\"Klasse\",\"attribute_label_id\":\"ID\",\"attribute_label_title\":\"Tittel\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/nl_dlg.js",
    "content": "tinyMCE.addI18n('nl.xhtmlxtras_dlg',{attribs_title:\"Attributen Invoegen/bewerken\",option_rtl:\"Van rechts naar links\",option_ltr:\"Van links naar rechts\",insert_date:\"Huidige datum/tijd invoegen\",remove:\"Verwijderen\",title_cite_element:\"Citaat\",title_abbr_element:\"Afkorting\",title_acronym_element:\"Synoniem\",title_del_element:\"Verwijderingselement\",title_ins_element:\"Invoegingselement\",fieldset_events_tab:\"Element Gebeurtenissen\",fieldset_attrib_tab:\"Elementattributen\",fieldset_general_tab:\"Algemene instellingen\",events_tab:\"Gebeurtenissen\",attrib_tab:\"Attributen\",general_tab:\"Algemeen\",attribute_attrib_tab:\"Attributen\",attribute_events_tab:\"Gebeurtenissen\",attribute_label_accesskey:\"Toegangstoets\",attribute_label_tabindex:\"Tabvolgorde\",attribute_label_langcode:\"Taal\",attribute_option_rtl:\"Van rechts naar links\",attribute_option_ltr:\"Van links naar rechts\",attribute_label_langdir:\"Tekstrichting\",attribute_label_datetime:\"Datum/Tijd\",attribute_label_cite:\"Citaat\",attribute_label_style:\"Stijl\",attribute_label_class:\"Klasse\",attribute_label_id:\"ID\",attribute_label_title:\"Titel\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/pl_dlg.js",
    "content": "tinyMCE.addI18n('pl.xhtmlxtras_dlg',{attribs_title:\"Wklej/edytuj atrybuty\",option_rtl:\"Kierunek z prawej do lewej\",option_ltr:\"Kierunek z lewej do prawej\",insert_date:\"Wklej aktualn\\u0105 dat\\u0119/czas\",remove:\"Usu\\u0144\",title_cite_element:\"Cytat\",title_abbr_element:\"Abbreviation Element\",title_acronym_element:\"Akronim Element\",title_del_element:\"Deletion Element\",title_ins_element:\"Insertion Element\",fieldset_events_tab:\"Zdarzenia\",fieldset_attrib_tab:\"Atrybuty\",fieldset_general_tab:\"G\\u0142\\u00f3wne ustawienia\",events_tab:\"Wydarzenia\",attrib_tab:\"Atrybuty\",general_tab:\"G\\u0142wny\",attribute_attrib_tab:\"Atrybuty\",attribute_events_tab:\"Wydarzenia\",attribute_label_accesskey:\"AccessKey\",attribute_label_tabindex:\"TabIndex\",attribute_label_langcode:\"J\\u0119zyk\",attribute_option_rtl:\"Kierunek z prawej do lewej\",attribute_option_ltr:\"Kierunek z lewej do prawej\",attribute_label_langdir:\"Kierunek czytania tekstu\",attribute_label_datetime:\"Data/Czas\",attribute_label_cite:\"Cytat\",attribute_label_style:\"Styl\",attribute_label_class:\"Klasa\",attribute_label_id:\"ID\",attribute_label_title:\"Tytu\\u0142\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/pt_dlg.js",
    "content": "tinyMCE.addI18n('pt.xhtmlxtras_dlg',{attribs_title:\"Inserir/editar atributos\",option_rtl:\"Da direita para a esquerda\",option_ltr:\"Da esquerda para a direita\",insert_date:\"Inserir data/hora\",remove:\"Remover\",title_cite_element:\"Cita\\u00e7\\u00e3o\",title_abbr_element:\"Abrevia\\u00e7\\u00e3o\",title_acronym_element:\"Acr\\u00f4nimo\",title_del_element:\"Apagar\",title_ins_element:\"Inserir\",fieldset_events_tab:\"Eventos\",fieldset_attrib_tab:\"Atributos\",fieldset_general_tab:\"Configura\\u00e7\\u00f5es gerais\",events_tab:\"Eventos\",attrib_tab:\"Atributos\",general_tab:\"Geral\",attribute_attrib_tab:\"Atributos\",attribute_events_tab:\"Eventos\",attribute_label_accesskey:\"Tecla de Atalho\",attribute_label_tabindex:\"TabIndex\",attribute_label_langcode:\"Idioma\",attribute_option_rtl:\"Da direita para a esquerda\",attribute_option_ltr:\"Da esquerda para a direita\",attribute_label_langdir:\"Dire\\u00e7\\u00e3o do texto\",attribute_label_datetime:\"Data/Hora\",attribute_label_cite:\"Citar\",attribute_label_style:\"Estilo\",attribute_label_class:\"Classe\",attribute_label_id:\"ID\",attribute_label_title:\"T\\u00edtulo\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/ro_dlg.js",
    "content": "tinyMCE.addI18n('ro.xhtmlxtras_dlg',{attribs_title:\"Inserare atribute\",option_rtl:\"De la dreapta la st\\u00e2nga\",option_ltr:\"De la st\\u00e2nga la dreapta\",insert_date:\"Inserare dat\\u0103/or\\u0103 curent\\u0103\",remove:\"Scoate\",title_cite_element:\"Citare\",title_abbr_element:\"Abreviere\",title_acronym_element:\"Acronim\",title_del_element:\"\\u015etergere element\",title_ins_element:\"Inserare element\",fieldset_events_tab:\"Evenimente element\",fieldset_attrib_tab:\"Atribute element\",fieldset_general_tab:\"Set\\u0103ri generale\",events_tab:\"Evenimente\",attrib_tab:\"Atribute\",general_tab:\"General\",attribute_attrib_tab:\"Atribute\",attribute_events_tab:\"Evenimente\",attribute_label_accesskey:\"Tast\\u0103 de acces\",attribute_label_tabindex:\"TabIndex\",attribute_label_langcode:\"Limb\\u0103\",attribute_option_rtl:\"De la dreapta la st\\u00e2nga\",attribute_option_ltr:\"De la st\\u00e2nga la dreapta\",attribute_label_langdir:\"Direc\\u0163ie text\",attribute_label_datetime:\"Dat\\u0103/or\\u0103\",attribute_label_cite:\"Citat\",attribute_label_style:\"Stil\",attribute_label_class:\"Clas\\u0103\",attribute_label_id:\"ID\",attribute_label_title:\"Titlu\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/ru_dlg.js",
    "content": "tinyMCE.addI18n('ru.xhtmlxtras_dlg',{attribs_title:\"\\u0421\\u0432\\u043e\\u0439\\u0441\\u0442\\u0432\\u0430 \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\\u0430\",option_rtl:\"\\u0421\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043d\\u0430\\u043b\\u0435\\u0432\\u043e\",option_ltr:\"\\u0421\\u043b\\u0435\\u0432\\u0430 \\u043d\\u0430\\u043f\\u0440\\u0430\\u0432\\u043e\",insert_date:\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u044c \\u0442\\u0435\\u043a\\u0443\\u0449\\u0443\\u044e \\u0434\\u0430\\u0442\\u0443/\\u0432\\u0440\\u0435\\u043c\\u044f\",remove:\"\\u0423\\u0434\\u0430\\u043b\\u0438\\u0442\\u044c\",title_cite_element:\"\\u0426\\u0438\\u0442\\u0438\\u0440\\u043e\\u0432\\u0430\\u043d\\u0438\\u0435\",title_abbr_element:\"\\u0421\\u043e\\u043a\\u0440\\u0430\\u0449\\u0435\\u043d\\u0438\\u0435\",title_acronym_element:\"\\u0410\\u0431\\u0431\\u0440\\u0435\\u0432\\u0438\\u0430\\u0446\\u0438\\u044f\",title_del_element:\"\\u0423\\u0434\\u0430\\u043b\\u0435\\u043d\\u0438\\u0435\",title_ins_element:\"\\u0417\\u0430\\u043c\\u0435\\u043d\\u0430\",fieldset_events_tab:\"\\u0421\\u043e\\u0431\\u044b\\u0442\\u0438\\u044f \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\\u0430\",fieldset_attrib_tab:\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\\u0430\",fieldset_general_tab:\"\\u041e\\u0431\\u0449\\u0438\\u0435 \\u043f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b\",events_tab:\"\\u0421\\u043e\\u0431\\u044b\\u0442\\u0438\\u044f\",attrib_tab:\"\\u0410\\u0442\\u0440\\u0438\\u0431\\u0443\\u0442\\u044b\",general_tab:\"\\u041e\\u0431\\u0449\\u0435\\u0435\",attribute_attrib_tab:\"\\u0410\\u0442\\u0440\\u0438\\u0431\\u0443\\u0442\\u044b\",attribute_events_tab:\"\\u0421\\u043e\\u0431\\u044b\\u0442\\u0438\\u044f\",attribute_label_accesskey:\"\\u041a\\u043b\\u044e\\u0447 \\u0434\\u043e\\u0441\\u0442\\u0443\\u043f\\u0430\",attribute_label_tabindex:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a\",attribute_label_langcode:\"\\u042f\\u0437\\u044b\\u043a\",attribute_option_rtl:\"\\u0421\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043d\\u0430\\u043b\\u0435\\u0432\\u043e\",attribute_option_ltr:\"\\u0421\\u043b\\u0435\\u0432\\u0430 \\u043d\\u0430\\u043f\\u0440\\u0430\\u0432\\u043e\",attribute_label_langdir:\"\\u041d\\u0430\\u043f\\u0440\\u0430\\u0432\\u043b\\u0435\\u043d\\u0438\\u0435 \\u0442\\u0435\\u043a\\u0441\\u0442\\u0430\",attribute_label_datetime:\"\\u0414\\u0430\\u0442\\u0430/\\u0412\\u0440\\u0435\\u043c\\u044f\",attribute_label_cite:\"\\u0426\\u0438\\u0442\\u0430\\u0442\\u0430\",attribute_label_style:\"\\u0421\\u0442\\u0438\\u043b\\u044c\",attribute_label_class:\"\\u041a\\u043b\\u0430\\u0441\\u0441\",attribute_label_id:\"\\u0418\\u043c\\u044f\",attribute_label_title:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/sr_dlg.js",
    "content": "tinyMCE.addI18n('sr.xhtmlxtras_dlg',{attribs_title:\"Ubaci/izmeni atribute\",option_rtl:\"S desna na levo\",option_ltr:\"S leva na desno\",insert_date:\"Ubaci trenutni datum/vreme\",remove:\"Ukloni\",title_cite_element:\"Element citata\",title_abbr_element:\"Element skra\\u0107enice\",title_acronym_element:\"Element akronima\",title_del_element:\"Element za brisanje\",title_ins_element:\"Element za unos\",fieldset_events_tab:\"Doga\\u0111aji elemenata\",fieldset_attrib_tab:\"Atributi elemenata\",fieldset_general_tab:\"Osnovna pode\\u0161avanja\",events_tab:\"Doga\\u0111aji\",attrib_tab:\"Atributi\",general_tab:\"Generalno\",attribute_attrib_tab:\"Atributi\",attribute_events_tab:\"Doga\\u0111aji\",attribute_label_accesskey:\"Taster za pristup\",attribute_label_tabindex:\"TabIndex\",attribute_label_langcode:\"Jezik\",attribute_option_rtl:\"S desna na levo\",attribute_option_ltr:\"S leva na desno\",attribute_label_langdir:\"Smer teksta\",attribute_label_datetime:\"Datum/vreme\",attribute_label_cite:\"Citat\",attribute_label_style:\"Stil\",attribute_label_class:\"Klasa\",attribute_label_id:\"ID\",attribute_label_title:\"Naslov\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/sv_dlg.js",
    "content": "tinyMCE.addI18n('sv.xhtmlxtras_dlg',{\"attribs_title\":\"Redigera attribut\",\"option_rtl\":\"H\\u00f6ger till v\\u00e4nster\",\"option_ltr\":\"V\\u00e4nster till h\\u00f6ger\",\"insert_date\":\"Infoga nuvarande datum och tid\",remove:\"Radera\",\"title_cite_element\":\"Citat\",\"title_abbr_element\":\"F\\u00f6rkortning\",\"title_acronym_element\":\"Akronym\",\"title_del_element\":\"Markera som struket\",\"title_ins_element\":\"Markera som tillagt\",\"fieldset_events_tab\":\"H\\u00e4ndelser\",\"fieldset_attrib_tab\":\"Attribut\",\"fieldset_general_tab\":\"Generella inst\\u00e4llningar\",\"events_tab\":\"H\\u00e4ndelser\",\"attrib_tab\":\"Attribut\",\"general_tab\":\"Generellt\",\"attribute_attrib_tab\":\"Attribut\",\"attribute_events_tab\":\"H\\u00e4ndelser\",\"attribute_label_accesskey\":\"Snabbtangent\",\"attribute_label_tabindex\":\"Tabbindex\",\"attribute_label_langcode\":\"Spr\\u00e5k\",\"attribute_option_rtl\":\"H\\u00f6ger till v\\u00e4nster\",\"attribute_option_ltr\":\"V\\u00e4nster till h\\u00f6ger\",\"attribute_label_langdir\":\"Skriftriktning\",\"attribute_label_datetime\":\"Datum/Tid\",\"attribute_label_cite\":\"Citat\",\"attribute_label_style\":\"Stil\",\"attribute_label_class\":\"Klass\",\"attribute_label_id\":\"ID\",\"attribute_label_title\":\"Titel\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/tr_dlg.js",
    "content": "tinyMCE.addI18n('tr.xhtmlxtras_dlg',{\"attribs_title\":\"Nitelik ekle/d\\u00fczenle\",\"option_rtl\":\"Soldan sa\\u011fa\",\"option_ltr\":\"Sa\\u011fdan sola\",\"insert_date\":\"\\u015euan ki tarih/saati ekle\",remove:\"Sil\",\"title_cite_element\":\"Nesne Al\\u0131nt\\u0131s\\u0131\",\"title_abbr_element\":\"Nesne K\\u0131saltmas\\u0131\",\"title_acronym_element\":\"Nense K\\u0131sa ad\\u0131\",\"title_del_element\":\"Nesne Silme\",\"title_ins_element\":\"Nesne Ekleme\",\"fieldset_events_tab\":\"Nesne Olaylar\\u0131\",\"fieldset_attrib_tab\":\"Nesne Nitelikleri\",\"fieldset_general_tab\":\"Genel Ayarlar\",\"events_tab\":\"Olaylar\",\"attrib_tab\":\"Nitelikler\",\"general_tab\":\"Genel\",\"attribute_attrib_tab\":\"Nitelikler\",\"attribute_events_tab\":\"Olaylar\",\"attribute_label_accesskey\":\"Eri\\u015fim Tu\\u015fu\",\"attribute_label_tabindex\":\"Sekme indeksi\",\"attribute_label_langcode\":\"Dil\",\"attribute_option_rtl\":\"Soldan sa\\u011fa\",\"attribute_option_ltr\":\"Sa\\u011fdan sola\",\"attribute_label_langdir\":\"Metnin y\\u00f6n\\u00fc\",\"attribute_label_datetime\":\"Tarih/Saat\",\"attribute_label_cite\":\"Al\\u0131nt\\u0131 yapmak\",\"attribute_label_style\":\"Stil\",\"attribute_label_class\":\"S\\u0131n\\u0131f\",\"attribute_label_id\":\"ID\",\"attribute_label_title\":\"Ba\\u015fl\\u0131k\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/uk_dlg.js",
    "content": "tinyMCE.addI18n('uk.xhtmlxtras_dlg',{\"attribs_title\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438/\\u0437\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438 \\u0430\\u0442\\u0440\\u0438\\u0431\\u0443\\u0442\\u0438\",\"option_rtl\":\"\\u0421\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043b\\u0456\\u0432\\u043e\\u0440\\u0443\\u0447\",\"option_ltr\":\"\\u0417\\u043b\\u0456\\u0432\\u0430 \\u043f\\u0440\\u0430\\u0432\\u043e\\u0440\\u0443\\u0447\",\"insert_date\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438 \\u043f\\u043e\\u0442\\u043e\\u0447\\u043d\\u0456 \\u0434\\u0430\\u0442\\u0443/\\u0447\\u0430\\u0441\",remove:\"\\u0412\\u0438\\u0434\\u0430\\u043b\\u0438\\u0442\\u0438\",\"title_cite_element\":\"\\u0415\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 \\u0446\\u0438\\u0442\\u0443\\u0432\\u0430\\u043d\\u043d\\u044f\",\"title_abbr_element\":\"\\u0415\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 \\u0430\\u0431\\u0440\\u0435\\u0432\\u0456\\u0430\\u0442\\u0443\\u0440\\u0438\",\"title_acronym_element\":\"\\u0415\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 \\u0430\\u043a\\u0440\\u043e\\u043d\\u0456\\u043c\\u0443\",\"title_del_element\":\"\\u0415\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 \\u0432\\u0438\\u0434\\u0430\\u043b\\u0435\\u043d\\u043d\\u044f\",\"title_ins_element\":\"\\u0415\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442 \\u0432\\u0441\\u0442\\u0430\\u0432\\u043a\\u0438\",\"fieldset_events_tab\":\"\\u041f\\u043e\\u0434\\u0456\\u0457 \\u0435\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\\u0443\",\"fieldset_attrib_tab\":\"\\u0410\\u0442\\u0440\\u0438\\u0431\\u0443\\u0442\\u0438 \\u0435\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\\u0443\",\"fieldset_general_tab\":\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u044c\\u043d\\u0456 \\u043d\\u0430\\u043b\\u0430\\u0448\\u0442\\u0443\\u0432\\u0430\\u043d\\u043d\\u044f\",\"events_tab\":\"\\u041f\\u043e\\u0434\\u0456\\u0457\",\"attrib_tab\":\"\\u0410\\u0442\\u0440\\u0438\\u0431\\u0443\\u0442\\u0438\",\"general_tab\":\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u044c\\u043d\\u0435\",\"attribute_attrib_tab\":\"\\u0410\\u0442\\u0440\\u0438\\u0431\\u0443\\u0442\\u0438\",\"attribute_events_tab\":\"\\u041f\\u043e\\u0434\\u0456\\u0457\",\"attribute_label_accesskey\":\"\\u041a\\u043b\\u0430\\u0432\\u0456\\u0448\\u0430 \\u0434\\u043e\\u0441\\u0442\\u0443\\u043f\\u0443\",\"attribute_label_tabindex\":\"\\u0422\\u0430\\u0431\\u0456\\u043d\\u0434\\u0435\\u043a\\u0441\",\"attribute_label_langcode\":\"\\u041c\\u043e\\u0432\\u0430\",\"attribute_option_rtl\":\"\\u0421\\u043f\\u0440\\u0430\\u0432\\u0430 \\u043d\\u0430\\u043b\\u0456\\u0432\\u043e\",\"attribute_option_ltr\":\"\\u0417\\u043b\\u0456\\u0432\\u0430 \\u043d\\u0430\\u043f\\u0440\\u0430\\u0432\\u043e\",\"attribute_label_langdir\":\"\\u041d\\u0430\\u043f\\u0440\\u044f\\u043c \\u0442\\u0435\\u043a\\u0441\\u0442\\u0443\",\"attribute_label_datetime\":\"\\u0414\\u0430\\u0442\\u0430/\\u0427\\u0430\\u0441\",\"attribute_label_cite\":\"\\u0426\\u0438\\u0442\\u0430\\u0442\\u0430\",\"attribute_label_style\":\"\\u0421\\u0442\\u0438\\u043b\\u044c\",\"attribute_label_class\":\"\\u041a\\u043b\\u0430\\u0441\",\"attribute_label_id\":\"\\u0406\\u0434\\u0435\\u043d\\u0442\\u0438\\u0444\\u0456\\u043a\\u0430\\u0442\\u043e\\u0440\",\"attribute_label_title\":\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/zh-tw_dlg.js",
    "content": "tinyMCE.addI18n('zh-tw.xhtmlxtras_dlg',{\"attribs_title\":\"\\u52a0\\u5165 / \\u8a2d\\u5b9a\\u5c6c\\u6027\",\"option_rtl\":\"\\u5f9e\\u53f3\\u5230\\u5de6\",\"option_ltr\":\"\\u5f9e\\u5de6\\u5230\\u53f3\",\"insert_date\":\"\\u52a0\\u5165\\u76ee\\u524d\\u7684\\u6642\\u9593\\u3001\\u65e5\\u671f\",remove:\"\\u79fb\\u9664\",\"title_cite_element\":\"\\u5f15\\u7528\\u6a19\\u7c64\",\"title_abbr_element\":\"\\u7e2e\\u5beb\\u6a19\\u7c64\",\"title_acronym_element\":\"\\u982d\\u5b57\\u8a9e\\u6a19\\u7c64\",\"title_del_element\":\"\\u79fb\\u9664 HTML \\u6a19\\u7c64\",\"title_ins_element\":\"\\u65b0\\u589e HTML \\u6a19\\u7c64\",\"fieldset_events_tab\":\"\\u6a19\\u7c64\\u4e8b\\u4ef6\",\"fieldset_attrib_tab\":\"\\u6a19\\u7c64\\u5c6c\\u6027\",\"fieldset_general_tab\":\"\\u8a2d\\u5b9a\",\"events_tab\":\"\\u4e8b\\u4ef6\",\"attrib_tab\":\"\\u5c6c\\u6027\",\"general_tab\":\"\\u4e00\\u822c\",\"attribute_attrib_tab\":\"\\u5c6c\\u6027\",\"attribute_events_tab\":\"\\u4e8b\\u4ef6\",\"attribute_label_accesskey\":\"HTML \\u5feb\\u901f\\u9375 (AccessKey)\",\"attribute_label_tabindex\":\"Tab \\u7d22\\u5f15\\u4f4d\\u7f6e (TabIndex)\",\"attribute_label_langcode\":\"\\u8a9e\\u7cfb\",\"attribute_option_rtl\":\"\\u5f9e\\u53f3\\u908a\\u5230\\u5de6\\u908a\",\"attribute_option_ltr\":\"\\u5f9e\\u5de6\\u908a\\u5230\\u53f3\\u908a\",\"attribute_label_langdir\":\"\\u66f8\\u5beb\\u65b9\\u5f0f\",\"attribute_label_datetime\":\"\\u6642\\u9593\\u65e5\\u671f\",\"attribute_label_cite\":\"\\u5f15\\u7528\",\"attribute_label_style\":\"\\u6a23\\u5f0f\",\"attribute_label_class\":\"\\u985e\\u5225 (Class)\",\"attribute_label_id\":\"\\u6a19\\u7c64\\u7684 ID \",\"attribute_label_title\":\"\\u6a19\\u984c\"});"
  },
  {
    "path": "newscoop/js/tinymce/plugins/xhtmlxtras/langs/zh_dlg.js",
    "content": "tinyMCE.addI18n('zh.xhtmlxtras_dlg',{\"attribs_title\":\"\\u63d2\\u5165/\\u7f16\\u8f91\\u5c5e\\u6027\",\"option_rtl\":\"\\u4ece\\u53f3\\u5230\\u5de6\",\"option_ltr\":\"\\u4ece\\u5de6\\u5230\\u53f3\",\"insert_date\":\"\\u63d2\\u5165\\u5f53\\u524d\\u65e5\\u671f/\\u65f6\\u95f4\",remove:\"\\u79fb\\u9664\",\"title_cite_element\":\"\\u5f15\\u7528\\u5143\\u7d20\",\"title_abbr_element\":\"\\u7f29\\u5199\\u5143\\u7d20\",\"title_acronym_element\":\"\\u9996\\u5b57\\u6bcd\\u7f29\\u5199\\u5143\\u7d20\",\"title_del_element\":\"\\u5220\\u9664\\u5143\\u7d20\",\"title_ins_element\":\"\\u63d2\\u5165\\u5143\\u7d20\",\"fieldset_events_tab\":\"\\u5143\\u7d20\\u4e8b\\u4ef6\",\"fieldset_attrib_tab\":\"\\u5143\\u7d20\\u5c5e\\u6027\",\"fieldset_general_tab\":\"\\u666e\\u901a\\u8bbe\\u7f6e\",\"events_tab\":\"Javascript\\u4e8b\\u4ef6\",\"attrib_tab\":\"\\u5c5e\\u6027\",\"general_tab\":\"\\u666e\\u901a\",\"attribute_attrib_tab\":\"\\u5c5e\\u6027\",\"attribute_events_tab\":\"Javascript\\u4e8b\\u4ef6\",\"attribute_label_accesskey\":\"\\u5feb\\u6377\\u952e\",\"attribute_label_tabindex\":\"Tab\\u7d22\\u5f15\",\"attribute_label_langcode\":\"\\u8bed\\u8a00\",\"attribute_option_rtl\":\"\\u4ece\\u53f3\\u5230\\u5de6\",\"attribute_option_ltr\":\"\\u4ece\\u5de6\\u5230\\u53f3\",\"attribute_label_langdir\":\"\\u6587\\u5b57\\u4e66\\u5199\\u65b9\\u5411\",\"attribute_label_datetime\":\"\\u65e5\\u671f/\\u65f6\\u95f4\",\"attribute_label_cite\":\"\\u5f15\\u7528\",\"attribute_label_style\":\"\\u6837\\u5f0f\",\"attribute_label_class\":\"\\u7c7b\",\"attribute_label_id\":\"ID\",\"attribute_label_title\":\"\\u6807\\u9898\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/about.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"> \r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#advanced_dlg.about_title}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/about.js\"></script>\r\n</head>\r\n<body id=\"about\" style=\"display: none\">\r\n\t\t<div class=\"tabs\">\r\n\t\t\t<ul>\r\n\t\t\t\t<li id=\"general_tab\" class=\"current\" aria-controls=\"general_panel\"><span><a href=\"javascript:mcTabs.displayTab('general_tab','general_panel');\" onmousedown=\"return false;\">{#advanced_dlg.about_general}</a></span></li>\r\n\t\t\t\t<li id=\"help_tab\" style=\"display:none\" aria-hidden=\"true\" aria-controls=\"help_panel\"><span><a href=\"javascript:mcTabs.displayTab('help_tab','help_panel');\" onmousedown=\"return false;\">{#advanced_dlg.about_help}</a></span></li>\r\n\t\t\t\t<li id=\"plugins_tab\" aria-controls=\"plugins_panel\"><span><a href=\"javascript:mcTabs.displayTab('plugins_tab','plugins_panel');\" onmousedown=\"return false;\">{#advanced_dlg.about_plugins}</a></span></li>\r\n\t\t\t</ul>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"panel_wrapper\">\r\n\t\t\t<div id=\"general_panel\" class=\"panel current\">\r\n\t\t\t\t<h3>{#advanced_dlg.about_title}</h3>\r\n\t\t\t\t<p>Version: <span id=\"version\"></span> (<span id=\"date\"></span>)</p>\r\n\t\t\t\t<p>TinyMCE is a platform independent web based Javascript HTML WYSIWYG editor control released as Open Source under <a href=\"../../license.txt\" target=\"_blank\">LGPL</a>\r\n\t\t\t\tby Moxiecode Systems AB. It has the ability to convert HTML TEXTAREA fields or other HTML elements to editor instances.</p>\r\n\t\t\t\t<p>Copyright &copy; 2003-2008, <a href=\"http://www.moxiecode.com\" target=\"_blank\">Moxiecode Systems AB</a>, All rights reserved.</p>\r\n\t\t\t\t<p>For more information about this software visit the <a href=\"http://tinymce.moxiecode.com\" target=\"_blank\">TinyMCE website</a>.</p>\r\n\r\n\t\t\t\t<div id=\"buttoncontainer\">\r\n\t\t\t\t\t<a href=\"http://www.moxiecode.com\" target=\"_blank\"><img src=\"http://tinymce.moxiecode.com/images/gotmoxie.png\" alt=\"Got Moxie?\" border=\"0\" /></a>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div id=\"plugins_panel\" class=\"panel\">\r\n\t\t\t\t<div id=\"pluginscontainer\">\r\n\t\t\t\t\t<h3>{#advanced_dlg.about_loaded}</h3>\r\n\r\n\t\t\t\t\t<div id=\"plugintablecontainer\">\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<p>&nbsp;</p>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div id=\"help_panel\" class=\"panel noscroll\" style=\"overflow: visible;\">\r\n\t\t\t\t<div id=\"iframecontainer\"></div>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"mceActionPanel\">\r\n\t\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#close}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t\t</div>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/anchor.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#advanced_dlg.anchor_title}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/anchor.js\"></script>\r\n</head>\r\n<body style=\"display: none\" role=\"application\" aria-labelledby=\"app_title\">\r\n<form onsubmit=\"AnchorDialog.update();return false;\" action=\"#\">\r\n\t<table border=\"0\" cellpadding=\"4\" cellspacing=\"0\" role=\"presentation\">\r\n\t\t<tr>\r\n\t\t\t<td colspan=\"2\" class=\"title\" id=\"app_title\">{#advanced_dlg.anchor_title}</td>\r\n\t\t</tr>\r\n\t\t<tr>\r\n\t\t\t<td class=\"nowrap\"><label for=\"anchorName\">{#advanced_dlg.anchor_name}:</label></td>\r\n\t\t\t<td><input name=\"anchorName\" type=\"text\" class=\"mceFocus\" id=\"anchorName\" value=\"\" style=\"width: 200px\" aria-required=\"true\" /></td>\r\n\t\t</tr>\r\n\t</table>\r\n\r\n\t<div class=\"mceActionPanel\">\r\n\t\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#update}\" />\r\n\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t</div>\r\n</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/charmap.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#advanced_dlg.charmap_title}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/charmap.js\"></script>\r\n</head>\r\n<body id=\"charmap\" style=\"display:none\">\r\n<table align=\"center\" border=\"0\" cellspacing=\"0\" cellpadding=\"2\" role=\"presentation\">\r\n\t<tr>\r\n\t\t<td colspan=\"2\" class=\"title\" ><label for=\"charmapView\" id=\"charmap_label\">{#advanced_dlg.charmap_title}</label></td>\r\n\t</tr>\r\n\t<tr>\r\n\t\t<td id=\"charmapView\" rowspan=\"2\" align=\"left\" valign=\"top\">\r\n\t\t\t<!-- Chars will be rendered here -->\r\n\t\t</td>\r\n\t\t<td width=\"100\" align=\"center\" valign=\"top\">\r\n\t\t\t<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"100\" style=\"height:100px\" role=\"presentation\">\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td id=\"codeV\">&nbsp;</td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td id=\"codeN\">&nbsp;</td>\r\n\t\t\t\t</tr>\r\n\t\t\t</table>\r\n\t\t</td>\r\n\t</tr>\r\n\t<tr>\r\n\t\t<td valign=\"bottom\" style=\"padding-bottom: 3px;\">\r\n\t\t\t<table width=\"100\" align=\"center\" border=\"0\" cellpadding=\"2\" cellspacing=\"0\" role=\"presentation\">\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td align=\"center\" style=\"border-left: 1px solid #666699; border-top: 1px solid #666699; border-right: 1px solid #666699;\"><label for=\"codeA\">HTML-Code</label></td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td style=\"font-size: 16px; font-weight: bold; border-left: 1px solid #666699; border-bottom: 1px solid #666699; border-right: 1px solid #666699;\" id=\"codeA\" align=\"center\">&nbsp;</td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td style=\"font-size: 1px;\">&nbsp;</td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td align=\"center\" style=\"border-left: 1px solid #666699; border-top: 1px solid #666699; border-right: 1px solid #666699;\"><label for=\"codeB\">NUM-Code</label></td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td style=\"font-size: 16px; font-weight: bold; border-left: 1px solid #666699; border-bottom: 1px solid #666699; border-right: 1px solid #666699;\" id=\"codeB\" align=\"center\">&nbsp;</td>\r\n\t\t\t\t</tr>\r\n\t\t\t</table>\r\n\t\t</td>\r\n\t</tr>\r\n</table>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/color_picker.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#advanced_dlg.colorpicker_title}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/color_picker.js\"></script>\r\n</head>\r\n<body id=\"colorpicker\" style=\"display: none\" role=\"application\" aria-labelledby=\"app_label\">\r\n\t<span class=\"mceVoiceLabel\" id=\"app_label\" style=\"display:none;\">{#advanced_dlg.colorpicker_title}</span>\r\n<form onsubmit=\"insertAction();return false\" action=\"#\">\r\n\t<div class=\"tabs\">\r\n\t\t<ul>\r\n\t\t\t<li id=\"picker_tab\" aria-controls=\"picker_panel\" class=\"current\"><span><a href=\"javascript:mcTabs.displayTab('picker_tab','picker_panel');\" onmousedown=\"return false;\">{#advanced_dlg.colorpicker_picker_tab}</a></span></li>\r\n\t\t\t<li id=\"rgb_tab\" aria-controls=\"rgb_panel\"><span><a href=\"javascript:;\" onclick=\"mcTabs.displayTab('rgb_tab','rgb_panel');\" onmousedown=\"return false;\">{#advanced_dlg.colorpicker_palette_tab}</a></span></li>\r\n\t\t\t<li id=\"named_tab\" aria-controls=\"named_panel\"><span><a  href=\"javascript:;\" onclick=\"javascript:mcTabs.displayTab('named_tab','named_panel');\" onmousedown=\"return false;\">{#advanced_dlg.colorpicker_named_tab}</a></span></li>\r\n\t\t</ul>\r\n\t</div>\r\n\r\n\t<div class=\"panel_wrapper\">\r\n\t\t<div id=\"picker_panel\" class=\"panel current\">\r\n\t\t\t<fieldset>\r\n\t\t\t\t<legend>{#advanced_dlg.colorpicker_picker_title}</legend>\r\n\t\t\t\t<div id=\"picker\">\r\n\t\t\t\t\t<img id=\"colors\" src=\"img/colorpicker.jpg\" onclick=\"computeColor(event)\" onmousedown=\"isMouseDown = true;return false;\" onmouseup=\"isMouseDown = false;\" onmousemove=\"if (isMouseDown && isMouseOver) computeColor(event); return false;\" onmouseover=\"isMouseOver=true;\" onmouseout=\"isMouseOver=false;\" alt=\"\" />\r\n\r\n\t\t\t\t\t<div id=\"light\">\r\n\t\t\t\t\t\t<!-- Will be filled with divs -->\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<br style=\"clear: both\" />\r\n\t\t\t\t</div>\r\n\t\t\t</fieldset>\r\n\t\t</div>\r\n\r\n\t\t<div id=\"rgb_panel\" class=\"panel\">\r\n\t\t\t<fieldset>\r\n\t\t\t\t<legend id=\"webcolors_title\">{#advanced_dlg.colorpicker_palette_title}</legend>\r\n\t\t\t\t<div id=\"webcolors\">\r\n\t\t\t\t\t<!-- Gets filled with web safe colors-->\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<br style=\"clear: both\" />\r\n\t\t\t</fieldset>\r\n\t\t</div>\r\n\r\n\t\t<div id=\"named_panel\" class=\"panel\">\r\n\t\t\t<fieldset id=\"named_picker_label\">\r\n\t\t\t\t<legend id=\"named_title\">{#advanced_dlg.colorpicker_named_title}</legend>\r\n\t\t\t\t<div id=\"namedcolors\" role=\"listbox\" tabindex=\"0\" aria-labelledby=\"named_picker_label\">\r\n\t\t\t\t\t<!-- Gets filled with named colors-->\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<br style=\"clear: both\" />\r\n\r\n\t\t\t\t<div id=\"colornamecontainer\">\r\n\t\t\t\t\t{#advanced_dlg.colorpicker_name} <span id=\"colorname\"></span>\r\n\t\t\t\t</div>\r\n\t\t\t</fieldset>\r\n\t\t</div>\r\n\t</div>\r\n\r\n\t<div class=\"mceActionPanel\">\r\n\t\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#apply}\" />\r\n\r\n\t\t<div id=\"preview\"></div>\r\n\r\n\t\t<div id=\"previewblock\">\r\n\t\t\t<label for=\"color\">{#advanced_dlg.colorpicker_color}</label> <input id=\"color\" type=\"text\" size=\"8\" class=\"text mceFocus\" aria-required=\"true\" />\r\n\t\t</div>\r\n\t</div>\r\n</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/editor_template.js",
    "content": "(function(e){var d=e.DOM,b=e.dom.Event,h=e.extend,f=e.each,a=e.util.Cookie,g,c=e.explode;e.ThemeManager.requireLangPack(\"advanced\");e.create(\"tinymce.themes.AdvancedTheme\",{sizes:[8,10,12,14,18,24,36],controls:{bold:[\"bold_desc\",\"Bold\"],italic:[\"italic_desc\",\"Italic\"],underline:[\"underline_desc\",\"Underline\"],strikethrough:[\"striketrough_desc\",\"Strikethrough\"],justifyleft:[\"justifyleft_desc\",\"JustifyLeft\"],justifycenter:[\"justifycenter_desc\",\"JustifyCenter\"],justifyright:[\"justifyright_desc\",\"JustifyRight\"],justifyfull:[\"justifyfull_desc\",\"JustifyFull\"],bullist:[\"bullist_desc\",\"InsertUnorderedList\"],numlist:[\"numlist_desc\",\"InsertOrderedList\"],outdent:[\"outdent_desc\",\"Outdent\"],indent:[\"indent_desc\",\"Indent\"],cut:[\"cut_desc\",\"Cut\"],copy:[\"copy_desc\",\"Copy\"],paste:[\"paste_desc\",\"Paste\"],undo:[\"undo_desc\",\"Undo\"],redo:[\"redo_desc\",\"Redo\"],link:[\"link_desc\",\"mceLink\"],unlink:[\"unlink_desc\",\"unlink\"],image:[\"image_desc\",\"mceImage\"],cleanup:[\"cleanup_desc\",\"mceCleanup\"],help:[\"help_desc\",\"mceHelp\"],code:[\"code_desc\",\"mceCodeEditor\"],hr:[\"hr_desc\",\"InsertHorizontalRule\"],removeformat:[\"removeformat_desc\",\"RemoveFormat\"],sub:[\"sub_desc\",\"subscript\"],sup:[\"sup_desc\",\"superscript\"],forecolor:[\"forecolor_desc\",\"ForeColor\"],forecolorpicker:[\"forecolor_desc\",\"mceForeColor\"],backcolor:[\"backcolor_desc\",\"HiliteColor\"],backcolorpicker:[\"backcolor_desc\",\"mceBackColor\"],charmap:[\"charmap_desc\",\"mceCharMap\"],visualaid:[\"visualaid_desc\",\"mceToggleVisualAid\"],anchor:[\"anchor_desc\",\"mceInsertAnchor\"],newdocument:[\"newdocument_desc\",\"mceNewDocument\"],blockquote:[\"blockquote_desc\",\"mceBlockQuote\"]},stateControls:[\"bold\",\"italic\",\"underline\",\"strikethrough\",\"bullist\",\"numlist\",\"justifyleft\",\"justifycenter\",\"justifyright\",\"justifyfull\",\"sub\",\"sup\",\"blockquote\"],init:function(j,k){var l=this,m,i,n;l.editor=j;l.url=k;l.onResolveName=new e.util.Dispatcher(this);j.forcedHighContrastMode=j.settings.detect_highcontrast&&l._isHighContrast();j.settings.skin=j.forcedHighContrastMode?\"highcontrast\":j.settings.skin;l.settings=m=h({theme_advanced_path:true,theme_advanced_toolbar_location:\"bottom\",theme_advanced_buttons1:\"bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,styleselect,formatselect\",theme_advanced_buttons2:\"bullist,numlist,|,outdent,indent,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code\",theme_advanced_buttons3:\"hr,removeformat,visualaid,|,sub,sup,|,charmap\",theme_advanced_blockformats:\"p,address,pre,h1,h2,h3,h4,h5,h6\",theme_advanced_toolbar_align:\"center\",theme_advanced_fonts:\"Andale Mono=andale mono,times;Arial=arial,helvetica,sans-serif;Arial Black=arial black,avant garde;Book Antiqua=book antiqua,palatino;Comic Sans MS=comic sans ms,sans-serif;Courier New=courier new,courier;Georgia=georgia,palatino;Helvetica=helvetica;Impact=impact,chicago;Symbol=symbol;Tahoma=tahoma,arial,helvetica,sans-serif;Terminal=terminal,monaco;Times New Roman=times new roman,times;Trebuchet MS=trebuchet ms,geneva;Verdana=verdana,geneva;Webdings=webdings;Wingdings=wingdings,zapf dingbats\",theme_advanced_more_colors:1,theme_advanced_row_height:23,theme_advanced_resize_horizontal:1,theme_advanced_resizing_use_cookie:1,theme_advanced_font_sizes:\"1,2,3,4,5,6,7\",theme_advanced_font_selector:\"span\",theme_advanced_show_current_color:0,readonly:j.settings.readonly},j.settings);if(!m.font_size_style_values){m.font_size_style_values=\"8pt,10pt,12pt,14pt,18pt,24pt,36pt\"}if(e.is(m.theme_advanced_font_sizes,\"string\")){m.font_size_style_values=e.explode(m.font_size_style_values);m.font_size_classes=e.explode(m.font_size_classes||\"\");n={};j.settings.theme_advanced_font_sizes=m.theme_advanced_font_sizes;f(j.getParam(\"theme_advanced_font_sizes\",\"\",\"hash\"),function(q,p){var o;if(p==q&&q>=1&&q<=7){p=q+\" (\"+l.sizes[q-1]+\"pt)\";o=m.font_size_classes[q-1];q=m.font_size_style_values[q-1]||(l.sizes[q-1]+\"pt\")}if(/^\\s*\\./.test(q)){o=q.replace(/\\./g,\"\")}n[p]=o?{\"class\":o}:{fontSize:q}});m.theme_advanced_font_sizes=n}if((i=m.theme_advanced_path_location)&&i!=\"none\"){m.theme_advanced_statusbar_location=m.theme_advanced_path_location}if(m.theme_advanced_statusbar_location==\"none\"){m.theme_advanced_statusbar_location=0}if(j.settings.content_css!==false){j.contentCSS.push(j.baseURI.toAbsolute(k+\"/skins/\"+j.settings.skin+\"/content.css\"))}j.onInit.add(function(){if(!j.settings.readonly){j.onNodeChange.add(l._nodeChanged,l);j.onKeyUp.add(l._updateUndoStatus,l);j.onMouseUp.add(l._updateUndoStatus,l);j.dom.bind(j.dom.getRoot(),\"dragend\",function(){l._updateUndoStatus(j)})}});j.onSetProgressState.add(function(q,o,r){var s,t=q.id,p;if(o){l.progressTimer=setTimeout(function(){s=q.getContainer();s=s.insertBefore(d.create(\"DIV\",{style:\"position:relative\"}),s.firstChild);p=d.get(q.id+\"_tbl\");d.add(s,\"div\",{id:t+\"_blocker\",\"class\":\"mceBlocker\",style:{width:p.clientWidth+2,height:p.clientHeight+2}});d.add(s,\"div\",{id:t+\"_progress\",\"class\":\"mceProgress\",style:{left:p.clientWidth/2,top:p.clientHeight/2}})},r||0)}else{d.remove(t+\"_blocker\");d.remove(t+\"_progress\");clearTimeout(l.progressTimer)}});d.loadCSS(m.editor_css?j.documentBaseURI.toAbsolute(m.editor_css):k+\"/skins/\"+j.settings.skin+\"/ui.css\");if(m.skin_variant){d.loadCSS(k+\"/skins/\"+j.settings.skin+\"/ui_\"+m.skin_variant+\".css\")}},_isHighContrast:function(){var i,j=d.add(d.getRoot(),\"div\",{style:\"background-color: rgb(171,239,86);\"});i=(d.getStyle(j,\"background-color\",true)+\"\").toLowerCase().replace(/ /g,\"\");d.remove(j);return i!=\"rgb(171,239,86)\"&&i!=\"#abef56\"},createControl:function(l,i){var j,k;if(k=i.createControl(l)){return k}switch(l){case\"styleselect\":return this._createStyleSelect();case\"formatselect\":return this._createBlockFormats();case\"fontselect\":return this._createFontSelect();case\"fontsizeselect\":return this._createFontSizeSelect();case\"forecolor\":return this._createForeColorMenu();case\"backcolor\":return this._createBackColorMenu()}if((j=this.controls[l])){return i.createButton(l,{title:\"advanced.\"+j[0],cmd:j[1],ui:j[2],value:j[3]})}},execCommand:function(k,j,l){var i=this[\"_\"+k];if(i){i.call(this,j,l);return true}return false},_importClasses:function(k){var i=this.editor,j=i.controlManager.get(\"styleselect\");if(j.getLength()==0){f(i.dom.getClasses(),function(n,l){var m=\"style_\"+l;i.formatter.register(m,{inline:\"span\",attributes:{\"class\":n[\"class\"]},selector:\"*\"});j.add(n[\"class\"],m)})}},_createStyleSelect:function(m){var k=this,i=k.editor,j=i.controlManager,l;l=j.createListBox(\"styleselect\",{title:\"advanced.style_select\",onselect:function(o){var p,n=[];f(l.items,function(q){n.push(q.value)});i.focus();i.undoManager.add();p=i.formatter.matchAll(n);if(!o||p[0]==o){if(p[0]){i.formatter.remove(p[0])}}else{i.formatter.apply(o)}i.undoManager.add();i.nodeChanged();return false}});i.onInit.add(function(){var o=0,n=i.getParam(\"style_formats\");if(n){f(n,function(p){var q,r=0;f(p,function(){r++});if(r>1){q=p.name=p.name||\"style_\"+(o++);i.formatter.register(q,p);l.add(p.title,q)}else{l.add(p.title)}})}else{f(i.getParam(\"theme_advanced_styles\",\"\",\"hash\"),function(r,q){var p;if(r){p=\"style_\"+(o++);i.formatter.register(p,{inline:\"span\",classes:r,selector:\"*\"});l.add(k.editor.translate(q),p)}})}});if(l.getLength()==0){l.onPostRender.add(function(o,p){if(!l.NativeListBox){b.add(p.id+\"_text\",\"focus\",k._importClasses,k);b.add(p.id+\"_text\",\"mousedown\",k._importClasses,k);b.add(p.id+\"_open\",\"focus\",k._importClasses,k);b.add(p.id+\"_open\",\"mousedown\",k._importClasses,k)}else{b.add(p.id,\"focus\",k._importClasses,k)}})}return l},_createFontSelect:function(){var k,j=this,i=j.editor;k=i.controlManager.createListBox(\"fontselect\",{title:\"advanced.fontdefault\",onselect:function(l){var m=k.items[k.selectedIndex];if(!l&&m){i.execCommand(\"FontName\",false,m.value);return}i.execCommand(\"FontName\",false,l);k.select(function(n){return l==n});if(m&&m.value==l){k.select(null)}return false}});if(k){f(i.getParam(\"theme_advanced_fonts\",j.settings.theme_advanced_fonts,\"hash\"),function(m,l){k.add(i.translate(l),m,{style:m.indexOf(\"dings\")==-1?\"font-family:\"+m:\"\"})})}return k},_createFontSizeSelect:function(){var m=this,k=m.editor,n,l=0,j=[];n=k.controlManager.createListBox(\"fontsizeselect\",{title:\"advanced.font_size\",onselect:function(i){var o=n.items[n.selectedIndex];if(!i&&o){o=o.value;if(o[\"class\"]){k.formatter.toggle(\"fontsize_class\",{value:o[\"class\"]});k.undoManager.add();k.nodeChanged()}else{k.execCommand(\"FontSize\",false,o.fontSize)}return}if(i[\"class\"]){k.focus();k.undoManager.add();k.formatter.toggle(\"fontsize_class\",{value:i[\"class\"]});k.undoManager.add();k.nodeChanged()}else{k.execCommand(\"FontSize\",false,i.fontSize)}n.select(function(p){return i==p});if(o&&(o.value.fontSize==i.fontSize||o.value[\"class\"]==i[\"class\"])){n.select(null)}return false}});if(n){f(m.settings.theme_advanced_font_sizes,function(o,i){var p=o.fontSize;if(p>=1&&p<=7){p=m.sizes[parseInt(p)-1]+\"pt\"}n.add(i,o,{style:\"font-size:\"+p,\"class\":\"mceFontSize\"+(l++)+(\" \"+(o[\"class\"]||\"\"))})})}return n},_createBlockFormats:function(){var k,i={p:\"advanced.paragraph\",address:\"advanced.address\",pre:\"advanced.pre\",h1:\"advanced.h1\",h2:\"advanced.h2\",h3:\"advanced.h3\",h4:\"advanced.h4\",h5:\"advanced.h5\",h6:\"advanced.h6\",div:\"advanced.div\",blockquote:\"advanced.blockquote\",code:\"advanced.code\",dt:\"advanced.dt\",dd:\"advanced.dd\",samp:\"advanced.samp\"},j=this;k=j.editor.controlManager.createListBox(\"formatselect\",{title:\"advanced.block\",onselect:function(l){j.editor.execCommand(\"FormatBlock\",false,l);return false}});if(k){f(j.editor.getParam(\"theme_advanced_blockformats\",j.settings.theme_advanced_blockformats,\"hash\"),function(m,l){k.add(j.editor.translate(l!=m?l:i[m]),m,{\"class\":\"mce_formatPreview mce_\"+m})})}return k},_createForeColorMenu:function(){var m,j=this,k=j.settings,l={},i;if(k.theme_advanced_more_colors){l.more_colors_func=function(){j._mceColorPicker(0,{color:m.value,func:function(n){m.setColor(n)}})}}if(i=k.theme_advanced_text_colors){l.colors=i}if(k.theme_advanced_default_foreground_color){l.default_color=k.theme_advanced_default_foreground_color}l.title=\"advanced.forecolor_desc\";l.cmd=\"ForeColor\";l.scope=this;m=j.editor.controlManager.createColorSplitButton(\"forecolor\",l);return m},_createBackColorMenu:function(){var m,j=this,k=j.settings,l={},i;if(k.theme_advanced_more_colors){l.more_colors_func=function(){j._mceColorPicker(0,{color:m.value,func:function(n){m.setColor(n)}})}}if(i=k.theme_advanced_background_colors){l.colors=i}if(k.theme_advanced_default_background_color){l.default_color=k.theme_advanced_default_background_color}l.title=\"advanced.backcolor_desc\";l.cmd=\"HiliteColor\";l.scope=this;m=j.editor.controlManager.createColorSplitButton(\"backcolor\",l);return m},renderUI:function(k){var m,l,q,v=this,r=v.editor,w=v.settings,u,j,i;if(r.settings){r.settings.aria_label=w.aria_label+r.getLang(\"advanced.help_shortcut\")}m=j=d.create(\"span\",{role:\"application\",\"aria-labelledby\":r.id+\"_voice\",id:r.id+\"_parent\",\"class\":\"mceEditor \"+r.settings.skin+\"Skin\"+(w.skin_variant?\" \"+r.settings.skin+\"Skin\"+v._ufirst(w.skin_variant):\"\")});d.add(m,\"span\",{\"class\":\"mceVoiceLabel\",style:\"display:none;\",id:r.id+\"_voice\"},w.aria_label);if(!d.boxModel){m=d.add(m,\"div\",{\"class\":\"mceOldBoxModel\"})}m=u=d.add(m,\"table\",{role:\"presentation\",id:r.id+\"_tbl\",\"class\":\"mceLayout\",cellSpacing:0,cellPadding:0});m=q=d.add(m,\"tbody\");switch((w.theme_advanced_layout_manager||\"\").toLowerCase()){case\"rowlayout\":l=v._rowLayout(w,q,k);break;case\"customlayout\":l=r.execCallback(\"theme_advanced_custom_layout\",w,q,k,j);break;default:l=v._simpleLayout(w,q,k,j)}m=k.targetNode;i=u.rows;d.addClass(i[0],\"mceFirst\");d.addClass(i[i.length-1],\"mceLast\");f(d.select(\"tr\",q),function(o){d.addClass(o.firstChild,\"mceFirst\");d.addClass(o.childNodes[o.childNodes.length-1],\"mceLast\")});if(d.get(w.theme_advanced_toolbar_container)){d.get(w.theme_advanced_toolbar_container).appendChild(j)}else{d.insertAfter(j,m)}b.add(r.id+\"_path_row\",\"click\",function(n){n=n.target;if(n.nodeName==\"A\"){v._sel(n.className.replace(/^.*mcePath_([0-9]+).*$/,\"$1\"));return b.cancel(n)}});if(!r.getParam(\"accessibility_focus\")){b.add(d.add(j,\"a\",{href:\"#\"},\"<!-- IE -->\"),\"focus\",function(){tinyMCE.get(r.id).focus()})}if(w.theme_advanced_toolbar_location==\"external\"){k.deltaHeight=0}v.deltaHeight=k.deltaHeight;k.targetNode=null;r.onKeyDown.add(function(p,n){var s=121,o=122;if(n.altKey){if(n.keyCode===s){window.focus();v.toolbarGroup.focus();return b.cancel(n)}else{if(n.keyCode===o){d.get(p.id+\"_path_row\").focus();return b.cancel(n)}}}});r.addShortcut(\"alt+0\",\"\",\"mceShortcuts\",v);return{iframeContainer:l,editorContainer:r.id+\"_parent\",sizeContainer:u,deltaHeight:k.deltaHeight}},getInfo:function(){return{longname:\"Advanced theme\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",version:e.majorVersion+\".\"+e.minorVersion}},resizeBy:function(i,j){var k=d.get(this.editor.id+\"_ifr\");this.resizeTo(k.clientWidth+i,k.clientHeight+j)},resizeTo:function(i,m,k){var j=this.editor,l=this.settings,n=d.get(j.id+\"_tbl\"),o=d.get(j.id+\"_ifr\");i=Math.max(l.theme_advanced_resizing_min_width||100,i);m=Math.max(l.theme_advanced_resizing_min_height||100,m);i=Math.min(l.theme_advanced_resizing_max_width||65535,i);m=Math.min(l.theme_advanced_resizing_max_height||65535,m);d.setStyle(n,\"height\",\"\");d.setStyle(o,\"height\",m);if(l.theme_advanced_resize_horizontal){d.setStyle(n,\"width\",\"\");d.setStyle(o,\"width\",i);if(i<n.clientWidth){i=n.clientWidth;d.setStyle(o,\"width\",n.clientWidth)}}if(k&&l.theme_advanced_resizing_use_cookie){a.setHash(\"TinyMCE_\"+j.id+\"_size\",{cw:i,ch:m})}},destroy:function(){var i=this.editor.id;b.clear(i+\"_resize\");b.clear(i+\"_path_row\");b.clear(i+\"_external_close\")},_simpleLayout:function(y,r,k,i){var x=this,u=x.editor,v=y.theme_advanced_toolbar_location,m=y.theme_advanced_statusbar_location,l,j,q,w;if(y.readonly){l=d.add(r,\"tr\");l=j=d.add(l,\"td\",{\"class\":\"mceIframeContainer\"});return j}if(v==\"top\"){x._addToolbars(r,k)}if(v==\"external\"){l=w=d.create(\"div\",{style:\"position:relative\"});l=d.add(l,\"div\",{id:u.id+\"_external\",\"class\":\"mceExternalToolbar\"});d.add(l,\"a\",{id:u.id+\"_external_close\",href:\"javascript:;\",\"class\":\"mceExternalClose\"});l=d.add(l,\"table\",{id:u.id+\"_tblext\",cellSpacing:0,cellPadding:0});q=d.add(l,\"tbody\");if(i.firstChild.className==\"mceOldBoxModel\"){i.firstChild.appendChild(w)}else{i.insertBefore(w,i.firstChild)}x._addToolbars(q,k);u.onMouseUp.add(function(){var o=d.get(u.id+\"_external\");d.show(o);d.hide(g);var n=b.add(u.id+\"_external_close\",\"click\",function(){d.hide(u.id+\"_external\");b.remove(u.id+\"_external_close\",\"click\",n)});d.show(o);d.setStyle(o,\"top\",0-d.getRect(u.id+\"_tblext\").h-1);d.hide(o);d.show(o);o.style.filter=\"\";g=u.id+\"_external\";o=null})}if(m==\"top\"){x._addStatusBar(r,k)}if(!y.theme_advanced_toolbar_container){l=d.add(r,\"tr\");l=j=d.add(l,\"td\",{\"class\":\"mceIframeContainer\"})}if(v==\"bottom\"){x._addToolbars(r,k)}if(m==\"bottom\"){x._addStatusBar(r,k)}return j},_rowLayout:function(w,m,k){var v=this,p=v.editor,u,x,i=p.controlManager,l,j,r,q;u=w.theme_advanced_containers_default_class||\"\";x=w.theme_advanced_containers_default_align||\"center\";f(c(w.theme_advanced_containers||\"\"),function(s,o){var n=w[\"theme_advanced_container_\"+s]||\"\";switch(s.toLowerCase()){case\"mceeditor\":l=d.add(m,\"tr\");l=j=d.add(l,\"td\",{\"class\":\"mceIframeContainer\"});break;case\"mceelementpath\":v._addStatusBar(m,k);break;default:q=(w[\"theme_advanced_container_\"+s+\"_align\"]||x).toLowerCase();q=\"mce\"+v._ufirst(q);l=d.add(d.add(m,\"tr\"),\"td\",{\"class\":\"mceToolbar \"+(w[\"theme_advanced_container_\"+s+\"_class\"]||u)+\" \"+q||x});r=i.createToolbar(\"toolbar\"+o);v._addControls(n,r);d.setHTML(l,r.renderHTML());k.deltaHeight-=w.theme_advanced_row_height}});return j},_addControls:function(j,i){var k=this,l=k.settings,m,n=k.editor.controlManager;if(l.theme_advanced_disable&&!k._disabled){m={};f(c(l.theme_advanced_disable),function(o){m[o]=1});k._disabled=m}else{m=k._disabled}f(c(j),function(p){var o;if(m&&m[p]){return}if(p==\"tablecontrols\"){f([\"table\",\"|\",\"row_props\",\"cell_props\",\"|\",\"row_before\",\"row_after\",\"delete_row\",\"|\",\"col_before\",\"col_after\",\"delete_col\",\"|\",\"split_cells\",\"merge_cells\"],function(q){q=k.createControl(q,n);if(q){i.add(q)}});return}o=k.createControl(p,n);if(o){i.add(o)}})},_addToolbars:function(x,k){var A=this,p,m,r=A.editor,B=A.settings,z,j=r.controlManager,u,l,q=[],y,w;w=j.createToolbarGroup(\"toolbargroup\",{name:r.getLang(\"advanced.toolbar\"),tab_focus_toolbar:r.getParam(\"theme_advanced_tab_focus_toolbar\")});A.toolbarGroup=w;y=B.theme_advanced_toolbar_align.toLowerCase();y=\"mce\"+A._ufirst(y);l=d.add(d.add(x,\"tr\",{role:\"presentation\"}),\"td\",{\"class\":\"mceToolbar \"+y,role:\"presentation\"});for(p=1;(z=B[\"theme_advanced_buttons\"+p]);p++){m=j.createToolbar(\"toolbar\"+p,{\"class\":\"mceToolbarRow\"+p});if(B[\"theme_advanced_buttons\"+p+\"_add\"]){z+=\",\"+B[\"theme_advanced_buttons\"+p+\"_add\"]}if(B[\"theme_advanced_buttons\"+p+\"_add_before\"]){z=B[\"theme_advanced_buttons\"+p+\"_add_before\"]+\",\"+z}A._addControls(z,m);w.add(m);k.deltaHeight-=B.theme_advanced_row_height}q.push(w.renderHTML());q.push(d.createHTML(\"a\",{href:\"#\",accesskey:\"z\",title:r.getLang(\"advanced.toolbar_focus\"),onfocus:\"tinyMCE.getInstanceById('\"+r.id+\"').focus();\"},\"<!-- IE -->\"));d.setHTML(l,q.join(\"\"))},_addStatusBar:function(m,j){var k,v=this,p=v.editor,w=v.settings,i,q,u,l;k=d.add(m,\"tr\");k=l=d.add(k,\"td\",{\"class\":\"mceStatusbar\"});k=d.add(k,\"div\",{id:p.id+\"_path_row\",role:\"group\",\"aria-labelledby\":p.id+\"_path_voice\"});if(w.theme_advanced_path){d.add(k,\"span\",{id:p.id+\"_path_voice\"},p.translate(\"advanced.path\"));d.add(k,\"span\",{},\": \")}else{d.add(k,\"span\",{},\"&#160;\")}if(w.theme_advanced_resizing){d.add(l,\"a\",{id:p.id+\"_resize\",href:\"javascript:;\",onclick:\"return false;\",\"class\":\"mceResize\",tabIndex:\"-1\"});if(w.theme_advanced_resizing_use_cookie){p.onPostRender.add(function(){var n=a.getHash(\"TinyMCE_\"+p.id+\"_size\"),r=d.get(p.id+\"_tbl\");if(!n){return}v.resizeTo(n.cw,n.ch)})}p.onPostRender.add(function(){b.add(p.id+\"_resize\",\"click\",function(n){n.preventDefault()});b.add(p.id+\"_resize\",\"mousedown\",function(D){var t,r,s,o,C,z,A,F,n,E,x;function y(G){G.preventDefault();n=A+(G.screenX-C);E=F+(G.screenY-z);v.resizeTo(n,E)}function B(G){b.remove(d.doc,\"mousemove\",t);b.remove(p.getDoc(),\"mousemove\",r);b.remove(d.doc,\"mouseup\",s);b.remove(p.getDoc(),\"mouseup\",o);n=A+(G.screenX-C);E=F+(G.screenY-z);v.resizeTo(n,E,true)}D.preventDefault();C=D.screenX;z=D.screenY;x=d.get(v.editor.id+\"_ifr\");A=n=x.clientWidth;F=E=x.clientHeight;t=b.add(d.doc,\"mousemove\",y);r=b.add(p.getDoc(),\"mousemove\",y);s=b.add(d.doc,\"mouseup\",B);o=b.add(p.getDoc(),\"mouseup\",B)})})}j.deltaHeight-=21;k=m=null},_updateUndoStatus:function(j){var i=j.controlManager,k=j.undoManager;i.setDisabled(\"undo\",!k.hasUndo()&&!k.typing);i.setDisabled(\"redo\",!k.hasRedo())},_nodeChanged:function(m,r,D,q,E){var y=this,C,F=0,x,G,z=y.settings,w,k,u,B,l,j,i;e.each(y.stateControls,function(n){r.setActive(n,m.queryCommandState(y.controls[n][1]))});function o(p){var s,n=E.parents,t=p;if(typeof(p)==\"string\"){t=function(v){return v.nodeName==p}}for(s=0;s<n.length;s++){if(t(n[s])){return n[s]}}}r.setActive(\"visualaid\",m.hasVisual);y._updateUndoStatus(m);r.setDisabled(\"outdent\",!m.queryCommandState(\"Outdent\"));C=o(\"A\");if(G=r.get(\"link\")){if(!C||!C.name){G.setDisabled(!C&&q);G.setActive(!!C)}}if(G=r.get(\"unlink\")){G.setDisabled(!C&&q);G.setActive(!!C&&!C.name)}if(G=r.get(\"anchor\")){G.setActive(!q&&!!C&&C.name)}C=o(\"IMG\");if(G=r.get(\"image\")){G.setActive(!q&&!!C&&D.className.indexOf(\"mceItem\")==-1)}if(G=r.get(\"styleselect\")){y._importClasses();j=[];f(G.items,function(n){j.push(n.value)});i=m.formatter.matchAll(j);G.select(i[0])}if(G=r.get(\"formatselect\")){C=o(d.isBlock);if(C){G.select(C.nodeName.toLowerCase())}}o(function(p){if(p.nodeName===\"SPAN\"){if(!w&&p.className){w=p.className}}if(m.dom.is(p,z.theme_advanced_font_selector)){if(!k&&p.style.fontSize){k=p.style.fontSize}if(!u&&p.style.fontFamily){u=p.style.fontFamily.replace(/[\\\"\\']+/g,\"\").replace(/^([^,]+).*/,\"$1\").toLowerCase()}if(!B&&p.style.color){B=p.style.color}if(!l&&p.style.backgroundColor){l=p.style.backgroundColor}}return false});if(G=r.get(\"fontselect\")){G.select(function(n){return n.replace(/^([^,]+).*/,\"$1\").toLowerCase()==u})}if(G=r.get(\"fontsizeselect\")){if(z.theme_advanced_runtime_fontsize&&!k&&!w){k=m.dom.getStyle(D,\"fontSize\",true)}G.select(function(n){if(n.fontSize&&n.fontSize===k){return true}if(n[\"class\"]&&n[\"class\"]===w){return true}})}if(z.theme_advanced_show_current_color){function A(p,n){if(G=r.get(p)){if(!n){n=G.settings.default_color}if(n!==G.value){G.displayColor(n)}}}A(\"forecolor\",B);A(\"backcolor\",l)}if(z.theme_advanced_show_current_color){function A(p,n){if(G=r.get(p)){if(!n){n=G.settings.default_color}if(n!==G.value){G.displayColor(n)}}}A(\"forecolor\",B);A(\"backcolor\",l)}if(z.theme_advanced_path&&z.theme_advanced_statusbar_location){C=d.get(m.id+\"_path\")||d.add(m.id+\"_path_row\",\"span\",{id:m.id+\"_path\"});if(y.statusKeyboardNavigation){y.statusKeyboardNavigation.destroy();y.statusKeyboardNavigation=null}d.setHTML(C,\"\");o(function(H){var p=H.nodeName.toLowerCase(),s,v,t=\"\";if(H.nodeType!=1||p===\"br\"||H.getAttribute(\"data-mce-bogus\")||d.hasClass(H,\"mceItemHidden\")||d.hasClass(H,\"mceItemRemoved\")){return}if(e.isIE&&H.scopeName!==\"HTML\"){p=H.scopeName+\":\"+p}p=p.replace(/mce\\:/g,\"\");switch(p){case\"b\":p=\"strong\";break;case\"i\":p=\"em\";break;case\"img\":if(x=d.getAttrib(H,\"src\")){t+=\"src: \"+x+\" \"}break;case\"a\":if(x=d.getAttrib(H,\"name\")){t+=\"name: \"+x+\" \";p+=\"#\"+x}if(x=d.getAttrib(H,\"href\")){t+=\"href: \"+x+\" \"}break;case\"font\":if(x=d.getAttrib(H,\"face\")){t+=\"font: \"+x+\" \"}if(x=d.getAttrib(H,\"size\")){t+=\"size: \"+x+\" \"}if(x=d.getAttrib(H,\"color\")){t+=\"color: \"+x+\" \"}break;case\"span\":if(x=d.getAttrib(H,\"style\")){t+=\"style: \"+x+\" \"}break}if(x=d.getAttrib(H,\"id\")){t+=\"id: \"+x+\" \"}if(x=H.className){x=x.replace(/\\b\\s*(webkit|mce|Apple-)\\w+\\s*\\b/g,\"\");if(x){t+=\"class: \"+x+\" \";if(d.isBlock(H)||p==\"img\"||p==\"span\"){p+=\".\"+x}}}p=p.replace(/(html:)/g,\"\");p={name:p,node:H,title:t};y.onResolveName.dispatch(y,p);t=p.title;p=p.name;v=d.create(\"a\",{href:\"javascript:;\",role:\"button\",onmousedown:\"return false;\",title:t,\"class\":\"mcePath_\"+(F++)},p);if(C.hasChildNodes()){C.insertBefore(d.create(\"span\",{\"aria-hidden\":\"true\"},\"\\u00a0\\u00bb \"),C.firstChild);C.insertBefore(v,C.firstChild)}else{C.appendChild(v)}},m.getBody());if(d.select(\"a\",C).length>0){y.statusKeyboardNavigation=new e.ui.KeyboardNavigation({root:m.id+\"_path_row\",items:d.select(\"a\",C),excludeFromTabOrder:true,onCancel:function(){m.focus()}},d)}}},_sel:function(i){this.editor.execCommand(\"mceSelectNodeDepth\",false,i)},_mceInsertAnchor:function(k,j){var i=this.editor;i.windowManager.open({url:this.url+\"/anchor.htm\",width:320+parseInt(i.getLang(\"advanced.anchor_delta_width\",0)),height:90+parseInt(i.getLang(\"advanced.anchor_delta_height\",0)),inline:true},{theme_url:this.url})},_mceCharMap:function(){var i=this.editor;i.windowManager.open({url:this.url+\"/charmap.htm\",width:550+parseInt(i.getLang(\"advanced.charmap_delta_width\",0)),height:250+parseInt(i.getLang(\"advanced.charmap_delta_height\",0)),inline:true},{theme_url:this.url})},_mceHelp:function(){var i=this.editor;i.windowManager.open({url:this.url+\"/about.htm\",width:480,height:380,inline:true},{theme_url:this.url})},_mceShortcuts:function(){var i=this.editor;i.windowManager.open({url:this.url+\"/shortcuts.htm\",width:480,height:380,inline:true},{theme_url:this.url})},_mceColorPicker:function(k,j){var i=this.editor;j=j||{};i.windowManager.open({url:this.url+\"/color_picker.htm\",width:375+parseInt(i.getLang(\"advanced.colorpicker_delta_width\",0)),height:250+parseInt(i.getLang(\"advanced.colorpicker_delta_height\",0)),close_previous:false,inline:true},{input_color:j.color,func:j.func,theme_url:this.url})},_mceCodeEditor:function(j,k){var i=this.editor;i.windowManager.open({url:this.url+\"/source_editor.htm\",width:parseInt(i.getParam(\"theme_advanced_source_editor_width\",720)),height:parseInt(i.getParam(\"theme_advanced_source_editor_height\",580)),inline:true,resizable:true,maximizable:true},{theme_url:this.url})},_mceImage:function(j,k){var i=this.editor;if(i.dom.getAttrib(i.selection.getNode(),\"class\").indexOf(\"mceItem\")!=-1){return}i.windowManager.open({url:this.url+\"/image.htm\",width:355+parseInt(i.getLang(\"advanced.image_delta_width\",0)),height:275+parseInt(i.getLang(\"advanced.image_delta_height\",0)),inline:true},{theme_url:this.url})},_mceLink:function(j,k){var i=this.editor;i.windowManager.open({url:this.url+\"/link.htm\",width:310+parseInt(i.getLang(\"advanced.link_delta_width\",0)),height:200+parseInt(i.getLang(\"advanced.link_delta_height\",0)),inline:true},{theme_url:this.url})},_mceNewDocument:function(){var i=this.editor;i.windowManager.confirm(\"advanced.newdocument\",function(j){if(j){i.execCommand(\"mceSetContent\",false,\"\")}})},_mceForeColor:function(){var i=this;this._mceColorPicker(0,{color:i.fgColor,func:function(j){i.fgColor=j;i.editor.execCommand(\"ForeColor\",false,j)}})},_mceBackColor:function(){var i=this;this._mceColorPicker(0,{color:i.bgColor,func:function(j){i.bgColor=j;i.editor.execCommand(\"HiliteColor\",false,j)}})},_ufirst:function(i){return i.substring(0,1).toUpperCase()+i.substring(1)}});e.ThemeManager.add(\"advanced\",e.themes.AdvancedTheme)}(tinymce));"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/editor_template_src.js",
    "content": "/**\r\n * editor_template_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function(tinymce) {\r\n\tvar DOM = tinymce.DOM, Event = tinymce.dom.Event, extend = tinymce.extend, each = tinymce.each, Cookie = tinymce.util.Cookie, lastExtID, explode = tinymce.explode;\r\n\r\n\t// Tell it to load theme specific language pack(s)\r\n\ttinymce.ThemeManager.requireLangPack('advanced');\r\n\r\n\ttinymce.create('tinymce.themes.AdvancedTheme', {\r\n\t\tsizes : [8, 10, 12, 14, 18, 24, 36],\r\n\r\n\t\t// Control name lookup, format: title, command\r\n\t\tcontrols : {\r\n\t\t\tbold : ['bold_desc', 'Bold'],\r\n\t\t\titalic : ['italic_desc', 'Italic'],\r\n\t\t\tunderline : ['underline_desc', 'Underline'],\r\n\t\t\tstrikethrough : ['striketrough_desc', 'Strikethrough'],\r\n\t\t\tjustifyleft : ['justifyleft_desc', 'JustifyLeft'],\r\n\t\t\tjustifycenter : ['justifycenter_desc', 'JustifyCenter'],\r\n\t\t\tjustifyright : ['justifyright_desc', 'JustifyRight'],\r\n\t\t\tjustifyfull : ['justifyfull_desc', 'JustifyFull'],\r\n\t\t\tbullist : ['bullist_desc', 'InsertUnorderedList'],\r\n\t\t\tnumlist : ['numlist_desc', 'InsertOrderedList'],\r\n\t\t\toutdent : ['outdent_desc', 'Outdent'],\r\n\t\t\tindent : ['indent_desc', 'Indent'],\r\n\t\t\tcut : ['cut_desc', 'Cut'],\r\n\t\t\tcopy : ['copy_desc', 'Copy'],\r\n\t\t\tpaste : ['paste_desc', 'Paste'],\r\n\t\t\tundo : ['undo_desc', 'Undo'],\r\n\t\t\tredo : ['redo_desc', 'Redo'],\r\n\t\t\tlink : ['link_desc', 'mceLink'],\r\n\t\t\tunlink : ['unlink_desc', 'unlink'],\r\n\t\t\timage : ['image_desc', 'mceImage'],\r\n\t\t\tcleanup : ['cleanup_desc', 'mceCleanup'],\r\n\t\t\thelp : ['help_desc', 'mceHelp'],\r\n\t\t\tcode : ['code_desc', 'mceCodeEditor'],\r\n\t\t\thr : ['hr_desc', 'InsertHorizontalRule'],\r\n\t\t\tremoveformat : ['removeformat_desc', 'RemoveFormat'],\r\n\t\t\tsub : ['sub_desc', 'subscript'],\r\n\t\t\tsup : ['sup_desc', 'superscript'],\r\n\t\t\tforecolor : ['forecolor_desc', 'ForeColor'],\r\n\t\t\tforecolorpicker : ['forecolor_desc', 'mceForeColor'],\r\n\t\t\tbackcolor : ['backcolor_desc', 'HiliteColor'],\r\n\t\t\tbackcolorpicker : ['backcolor_desc', 'mceBackColor'],\r\n\t\t\tcharmap : ['charmap_desc', 'mceCharMap'],\r\n\t\t\tvisualaid : ['visualaid_desc', 'mceToggleVisualAid'],\r\n\t\t\tanchor : ['anchor_desc', 'mceInsertAnchor'],\r\n\t\t\tnewdocument : ['newdocument_desc', 'mceNewDocument'],\r\n\t\t\tblockquote : ['blockquote_desc', 'mceBlockQuote']\r\n\t\t},\r\n\r\n\t\tstateControls : ['bold', 'italic', 'underline', 'strikethrough', 'bullist', 'numlist', 'justifyleft', 'justifycenter', 'justifyright', 'justifyfull', 'sub', 'sup', 'blockquote'],\r\n\r\n\t\tinit : function(ed, url) {\r\n\t\t\tvar t = this, s, v, o;\r\n\t\r\n\t\t\tt.editor = ed;\r\n\t\t\tt.url = url;\r\n\t\t\tt.onResolveName = new tinymce.util.Dispatcher(this);\r\n\r\n\t\t\ted.forcedHighContrastMode = ed.settings.detect_highcontrast && t._isHighContrast();\r\n\t\t\ted.settings.skin = ed.forcedHighContrastMode ? 'highcontrast' : ed.settings.skin;\r\n\r\n\t\t\t// Default settings\r\n\t\t\tt.settings = s = extend({\r\n\t\t\t\ttheme_advanced_path : true,\r\n\t\t\t\ttheme_advanced_toolbar_location : 'bottom',\r\n\t\t\t\ttheme_advanced_buttons1 : \"bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,styleselect,formatselect\",\r\n\t\t\t\ttheme_advanced_buttons2 : \"bullist,numlist,|,outdent,indent,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code\",\r\n\t\t\t\ttheme_advanced_buttons3 : \"hr,removeformat,visualaid,|,sub,sup,|,charmap\",\r\n\t\t\t\ttheme_advanced_blockformats : \"p,address,pre,h1,h2,h3,h4,h5,h6\",\r\n\t\t\t\ttheme_advanced_toolbar_align : \"center\",\r\n\t\t\t\ttheme_advanced_fonts : \"Andale Mono=andale mono,times;Arial=arial,helvetica,sans-serif;Arial Black=arial black,avant garde;Book Antiqua=book antiqua,palatino;Comic Sans MS=comic sans ms,sans-serif;Courier New=courier new,courier;Georgia=georgia,palatino;Helvetica=helvetica;Impact=impact,chicago;Symbol=symbol;Tahoma=tahoma,arial,helvetica,sans-serif;Terminal=terminal,monaco;Times New Roman=times new roman,times;Trebuchet MS=trebuchet ms,geneva;Verdana=verdana,geneva;Webdings=webdings;Wingdings=wingdings,zapf dingbats\",\r\n\t\t\t\ttheme_advanced_more_colors : 1,\r\n\t\t\t\ttheme_advanced_row_height : 23,\r\n\t\t\t\ttheme_advanced_resize_horizontal : 1,\r\n\t\t\t\ttheme_advanced_resizing_use_cookie : 1,\r\n\t\t\t\ttheme_advanced_font_sizes : \"1,2,3,4,5,6,7\",\r\n\t\t\t\ttheme_advanced_font_selector : \"span\",\r\n\t\t\t\ttheme_advanced_show_current_color: 0,\r\n\t\t\t\treadonly : ed.settings.readonly\r\n\t\t\t}, ed.settings);\r\n\r\n\t\t\t// Setup default font_size_style_values\r\n\t\t\tif (!s.font_size_style_values)\r\n\t\t\t\ts.font_size_style_values = \"8pt,10pt,12pt,14pt,18pt,24pt,36pt\";\r\n\r\n\t\t\tif (tinymce.is(s.theme_advanced_font_sizes, 'string')) {\r\n\t\t\t\ts.font_size_style_values = tinymce.explode(s.font_size_style_values);\r\n\t\t\t\ts.font_size_classes = tinymce.explode(s.font_size_classes || '');\r\n\r\n\t\t\t\t// Parse string value\r\n\t\t\t\to = {};\r\n\t\t\t\ted.settings.theme_advanced_font_sizes = s.theme_advanced_font_sizes;\r\n\t\t\t\teach(ed.getParam('theme_advanced_font_sizes', '', 'hash'), function(v, k) {\r\n\t\t\t\t\tvar cl;\r\n\r\n\t\t\t\t\tif (k == v && v >= 1 && v <= 7) {\r\n\t\t\t\t\t\tk = v + ' (' + t.sizes[v - 1] + 'pt)';\r\n\t\t\t\t\t\tcl = s.font_size_classes[v - 1];\r\n\t\t\t\t\t\tv = s.font_size_style_values[v - 1] || (t.sizes[v - 1] + 'pt');\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (/^\\s*\\./.test(v))\r\n\t\t\t\t\t\tcl = v.replace(/\\./g, '');\r\n\r\n\t\t\t\t\to[k] = cl ? {'class' : cl} : {fontSize : v};\r\n\t\t\t\t});\r\n\r\n\t\t\t\ts.theme_advanced_font_sizes = o;\r\n\t\t\t}\r\n\r\n\t\t\tif ((v = s.theme_advanced_path_location) && v != 'none')\r\n\t\t\t\ts.theme_advanced_statusbar_location = s.theme_advanced_path_location;\r\n\r\n\t\t\tif (s.theme_advanced_statusbar_location == 'none')\r\n\t\t\t\ts.theme_advanced_statusbar_location = 0;\r\n\r\n\t\t\tif (ed.settings.content_css !== false)\r\n\t\t\t\ted.contentCSS.push(ed.baseURI.toAbsolute(url + \"/skins/\" + ed.settings.skin + \"/content.css\"));\r\n\r\n\t\t\t// Init editor\r\n\t\t\ted.onInit.add(function() {\r\n\t\t\t\tif (!ed.settings.readonly) {\r\n\t\t\t\t\ted.onNodeChange.add(t._nodeChanged, t);\r\n\t\t\t\t\ted.onKeyUp.add(t._updateUndoStatus, t);\r\n\t\t\t\t\ted.onMouseUp.add(t._updateUndoStatus, t);\r\n\t\t\t\t\ted.dom.bind(ed.dom.getRoot(), 'dragend', function() {\r\n\t\t\t\t\t\tt._updateUndoStatus(ed);\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\ted.onSetProgressState.add(function(ed, b, ti) {\r\n\t\t\t\tvar co, id = ed.id, tb;\r\n\r\n\t\t\t\tif (b) {\r\n\t\t\t\t\tt.progressTimer = setTimeout(function() {\r\n\t\t\t\t\t\tco = ed.getContainer();\r\n\t\t\t\t\t\tco = co.insertBefore(DOM.create('DIV', {style : 'position:relative'}), co.firstChild);\r\n\t\t\t\t\t\ttb = DOM.get(ed.id + '_tbl');\r\n\r\n\t\t\t\t\t\tDOM.add(co, 'div', {id : id + '_blocker', 'class' : 'mceBlocker', style : {width : tb.clientWidth + 2, height : tb.clientHeight + 2}});\r\n\t\t\t\t\t\tDOM.add(co, 'div', {id : id + '_progress', 'class' : 'mceProgress', style : {left : tb.clientWidth / 2, top : tb.clientHeight / 2}});\r\n\t\t\t\t\t}, ti || 0);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tDOM.remove(id + '_blocker');\r\n\t\t\t\t\tDOM.remove(id + '_progress');\r\n\t\t\t\t\tclearTimeout(t.progressTimer);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tDOM.loadCSS(s.editor_css ? ed.documentBaseURI.toAbsolute(s.editor_css) : url + \"/skins/\" + ed.settings.skin + \"/ui.css\");\r\n\r\n\t\t\tif (s.skin_variant)\r\n\t\t\t\tDOM.loadCSS(url + \"/skins/\" + ed.settings.skin + \"/ui_\" + s.skin_variant + \".css\");\r\n\t\t},\r\n\r\n\t\t_isHighContrast : function() {\r\n\t\t\tvar actualColor, div = DOM.add(DOM.getRoot(), 'div', {'style': 'background-color: rgb(171,239,86);'});\r\n\r\n\t\t\tactualColor = (DOM.getStyle(div, 'background-color', true) + '').toLowerCase().replace(/ /g, '');\r\n\t\t\tDOM.remove(div);\r\n\r\n\t\t\treturn actualColor != 'rgb(171,239,86)' && actualColor != '#abef56';\r\n\t\t},\r\n\r\n\t\tcreateControl : function(n, cf) {\r\n\t\t\tvar cd, c;\r\n\r\n\t\t\tif (c = cf.createControl(n))\r\n\t\t\t\treturn c;\r\n\r\n\t\t\tswitch (n) {\r\n\t\t\t\tcase \"styleselect\":\r\n\t\t\t\t\treturn this._createStyleSelect();\r\n\r\n\t\t\t\tcase \"formatselect\":\r\n\t\t\t\t\treturn this._createBlockFormats();\r\n\r\n\t\t\t\tcase \"fontselect\":\r\n\t\t\t\t\treturn this._createFontSelect();\r\n\r\n\t\t\t\tcase \"fontsizeselect\":\r\n\t\t\t\t\treturn this._createFontSizeSelect();\r\n\r\n\t\t\t\tcase \"forecolor\":\r\n\t\t\t\t\treturn this._createForeColorMenu();\r\n\r\n\t\t\t\tcase \"backcolor\":\r\n\t\t\t\t\treturn this._createBackColorMenu();\r\n\t\t\t}\r\n\r\n\t\t\tif ((cd = this.controls[n]))\r\n\t\t\t\treturn cf.createButton(n, {title : \"advanced.\" + cd[0], cmd : cd[1], ui : cd[2], value : cd[3]});\r\n\t\t},\r\n\r\n\t\texecCommand : function(cmd, ui, val) {\r\n\t\t\tvar f = this['_' + cmd];\r\n\r\n\t\t\tif (f) {\r\n\t\t\t\tf.call(this, ui, val);\r\n\t\t\t\treturn true;\r\n\t\t\t}\r\n\r\n\t\t\treturn false;\r\n\t\t},\r\n\r\n\t\t_importClasses : function(e) {\r\n\t\t\tvar ed = this.editor, ctrl = ed.controlManager.get('styleselect');\r\n\r\n\t\t\tif (ctrl.getLength() == 0) {\r\n\t\t\t\teach(ed.dom.getClasses(), function(o, idx) {\r\n\t\t\t\t\tvar name = 'style_' + idx;\r\n\r\n\t\t\t\t\ted.formatter.register(name, {\r\n\t\t\t\t\t\tinline : 'span',\r\n\t\t\t\t\t\tattributes : {'class' : o['class']},\r\n\t\t\t\t\t\tselector : '*'\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tctrl.add(o['class'], name);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t_createStyleSelect : function(n) {\r\n\t\t\tvar t = this, ed = t.editor, ctrlMan = ed.controlManager, ctrl;\r\n\r\n\t\t\t// Setup style select box\r\n\t\t\tctrl = ctrlMan.createListBox('styleselect', {\r\n\t\t\t\ttitle : 'advanced.style_select',\r\n\t\t\t\tonselect : function(name) {\r\n\t\t\t\t\tvar matches, formatNames = [];\r\n\r\n\t\t\t\t\teach(ctrl.items, function(item) {\r\n\t\t\t\t\t\tformatNames.push(item.value);\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\ted.focus();\r\n\t\t\t\t\ted.undoManager.add();\r\n\r\n\t\t\t\t\t// Toggle off the current format\r\n\t\t\t\t\tmatches = ed.formatter.matchAll(formatNames);\r\n\t\t\t\t\tif (!name || matches[0] == name) {\r\n\t\t\t\t\t\tif (matches[0]) \r\n\t\t\t\t\t\t\ted.formatter.remove(matches[0]);\r\n\t\t\t\t\t} else\r\n\t\t\t\t\t\ted.formatter.apply(name);\r\n\r\n\t\t\t\t\ted.undoManager.add();\r\n\t\t\t\t\ted.nodeChanged();\r\n\r\n\t\t\t\t\treturn false; // No auto select\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t// Handle specified format\r\n\t\t\ted.onInit.add(function() {\r\n\t\t\t\tvar counter = 0, formats = ed.getParam('style_formats');\r\n\r\n\t\t\t\tif (formats) {\r\n\t\t\t\t\teach(formats, function(fmt) {\r\n\t\t\t\t\t\tvar name, keys = 0;\r\n\r\n\t\t\t\t\t\teach(fmt, function() {keys++;});\r\n\r\n\t\t\t\t\t\tif (keys > 1) {\r\n\t\t\t\t\t\t\tname = fmt.name = fmt.name || 'style_' + (counter++);\r\n\t\t\t\t\t\t\ted.formatter.register(name, fmt);\r\n\t\t\t\t\t\t\tctrl.add(fmt.title, name);\r\n\t\t\t\t\t\t} else\r\n\t\t\t\t\t\t\tctrl.add(fmt.title);\r\n\t\t\t\t\t});\r\n\t\t\t\t} else {\r\n\t\t\t\t\teach(ed.getParam('theme_advanced_styles', '', 'hash'), function(val, key) {\r\n\t\t\t\t\t\tvar name;\r\n\r\n\t\t\t\t\t\tif (val) {\r\n\t\t\t\t\t\t\tname = 'style_' + (counter++);\r\n\r\n\t\t\t\t\t\t\ted.formatter.register(name, {\r\n\t\t\t\t\t\t\t\tinline : 'span',\r\n\t\t\t\t\t\t\t\tclasses : val,\r\n\t\t\t\t\t\t\t\tselector : '*'\r\n\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\tctrl.add(t.editor.translate(key), name);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t// Auto import classes if the ctrl box is empty\r\n\t\t\tif (ctrl.getLength() == 0) {\r\n\t\t\t\tctrl.onPostRender.add(function(ed, n) {\r\n\t\t\t\t\tif (!ctrl.NativeListBox) {\r\n\t\t\t\t\t\tEvent.add(n.id + '_text', 'focus', t._importClasses, t);\r\n\t\t\t\t\t\tEvent.add(n.id + '_text', 'mousedown', t._importClasses, t);\r\n\t\t\t\t\t\tEvent.add(n.id + '_open', 'focus', t._importClasses, t);\r\n\t\t\t\t\t\tEvent.add(n.id + '_open', 'mousedown', t._importClasses, t);\r\n\t\t\t\t\t} else\r\n\t\t\t\t\t\tEvent.add(n.id, 'focus', t._importClasses, t);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\treturn ctrl;\r\n\t\t},\r\n\r\n\t\t_createFontSelect : function() {\r\n\t\t\tvar c, t = this, ed = t.editor;\r\n\r\n\t\t\tc = ed.controlManager.createListBox('fontselect', {\r\n\t\t\t\ttitle : 'advanced.fontdefault',\r\n\t\t\t\tonselect : function(v) {\r\n\t\t\t\t\tvar cur = c.items[c.selectedIndex];\r\n\r\n\t\t\t\t\tif (!v && cur) {\r\n\t\t\t\t\t\ted.execCommand('FontName', false, cur.value);\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\ted.execCommand('FontName', false, v);\r\n\r\n\t\t\t\t\t// Fake selection, execCommand will fire a nodeChange and update the selection\r\n\t\t\t\t\tc.select(function(sv) {\r\n\t\t\t\t\t\treturn v == sv;\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tif (cur && cur.value == v) {\r\n\t\t\t\t\t\tc.select(null);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\treturn false; // No auto select\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tif (c) {\r\n\t\t\t\teach(ed.getParam('theme_advanced_fonts', t.settings.theme_advanced_fonts, 'hash'), function(v, k) {\r\n\t\t\t\t\tc.add(ed.translate(k), v, {style : v.indexOf('dings') == -1 ? 'font-family:' + v : ''});\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\treturn c;\r\n\t\t},\r\n\r\n\t\t_createFontSizeSelect : function() {\r\n\t\t\tvar t = this, ed = t.editor, c, i = 0, cl = [];\r\n\r\n\t\t\tc = ed.controlManager.createListBox('fontsizeselect', {title : 'advanced.font_size', onselect : function(v) {\r\n\t\t\t\tvar cur = c.items[c.selectedIndex];\r\n\r\n\t\t\t\tif (!v && cur) {\r\n\t\t\t\t\tcur = cur.value;\r\n\r\n\t\t\t\t\tif (cur['class']) {\r\n\t\t\t\t\t\ted.formatter.toggle('fontsize_class', {value : cur['class']});\r\n\t\t\t\t\t\ted.undoManager.add();\r\n\t\t\t\t\t\ted.nodeChanged();\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\ted.execCommand('FontSize', false, cur.fontSize);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (v['class']) {\r\n\t\t\t\t\ted.focus();\r\n\t\t\t\t\ted.undoManager.add();\r\n\t\t\t\t\ted.formatter.toggle('fontsize_class', {value : v['class']});\r\n\t\t\t\t\ted.undoManager.add();\r\n\t\t\t\t\ted.nodeChanged();\r\n\t\t\t\t} else\r\n\t\t\t\t\ted.execCommand('FontSize', false, v.fontSize);\r\n\r\n\t\t\t\t// Fake selection, execCommand will fire a nodeChange and update the selection\r\n\t\t\t\tc.select(function(sv) {\r\n\t\t\t\t\treturn v == sv;\r\n\t\t\t\t});\r\n\r\n\t\t\t\tif (cur && (cur.value.fontSize == v.fontSize || cur.value['class'] == v['class'])) {\r\n\t\t\t\t\tc.select(null);\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn false; // No auto select\r\n\t\t\t}});\r\n\r\n\t\t\tif (c) {\r\n\t\t\t\teach(t.settings.theme_advanced_font_sizes, function(v, k) {\r\n\t\t\t\t\tvar fz = v.fontSize;\r\n\r\n\t\t\t\t\tif (fz >= 1 && fz <= 7)\r\n\t\t\t\t\t\tfz = t.sizes[parseInt(fz) - 1] + 'pt';\r\n\r\n\t\t\t\t\tc.add(k, v, {'style' : 'font-size:' + fz, 'class' : 'mceFontSize' + (i++) + (' ' + (v['class'] || ''))});\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\treturn c;\r\n\t\t},\r\n\r\n\t\t_createBlockFormats : function() {\r\n\t\t\tvar c, fmts = {\r\n\t\t\t\tp : 'advanced.paragraph',\r\n\t\t\t\taddress : 'advanced.address',\r\n\t\t\t\tpre : 'advanced.pre',\r\n\t\t\t\th1 : 'advanced.h1',\r\n\t\t\t\th2 : 'advanced.h2',\r\n\t\t\t\th3 : 'advanced.h3',\r\n\t\t\t\th4 : 'advanced.h4',\r\n\t\t\t\th5 : 'advanced.h5',\r\n\t\t\t\th6 : 'advanced.h6',\r\n\t\t\t\tdiv : 'advanced.div',\r\n\t\t\t\tblockquote : 'advanced.blockquote',\r\n\t\t\t\tcode : 'advanced.code',\r\n\t\t\t\tdt : 'advanced.dt',\r\n\t\t\t\tdd : 'advanced.dd',\r\n\t\t\t\tsamp : 'advanced.samp'\r\n\t\t\t}, t = this;\r\n\r\n\t\t\tc = t.editor.controlManager.createListBox('formatselect', {title : 'advanced.block', onselect : function(v) {\r\n\t\t\t\tt.editor.execCommand('FormatBlock', false, v);\r\n\t\t\t\treturn false;\r\n\t\t\t}});\r\n\r\n\t\t\tif (c) {\r\n\t\t\t\teach(t.editor.getParam('theme_advanced_blockformats', t.settings.theme_advanced_blockformats, 'hash'), function(v, k) {\r\n\t\t\t\t\tc.add(t.editor.translate(k != v ? k : fmts[v]), v, {'class' : 'mce_formatPreview mce_' + v});\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\treturn c;\r\n\t\t},\r\n\r\n\t\t_createForeColorMenu : function() {\r\n\t\t\tvar c, t = this, s = t.settings, o = {}, v;\r\n\r\n\t\t\tif (s.theme_advanced_more_colors) {\r\n\t\t\t\to.more_colors_func = function() {\r\n\t\t\t\t\tt._mceColorPicker(0, {\r\n\t\t\t\t\t\tcolor : c.value,\r\n\t\t\t\t\t\tfunc : function(co) {\r\n\t\t\t\t\t\t\tc.setColor(co);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t};\r\n\t\t\t}\r\n\r\n\t\t\tif (v = s.theme_advanced_text_colors)\r\n\t\t\t\to.colors = v;\r\n\r\n\t\t\tif (s.theme_advanced_default_foreground_color)\r\n\t\t\t\to.default_color = s.theme_advanced_default_foreground_color;\r\n\r\n\t\t\to.title = 'advanced.forecolor_desc';\r\n\t\t\to.cmd = 'ForeColor';\r\n\t\t\to.scope = this;\r\n\r\n\t\t\tc = t.editor.controlManager.createColorSplitButton('forecolor', o);\r\n\r\n\t\t\treturn c;\r\n\t\t},\r\n\r\n\t\t_createBackColorMenu : function() {\r\n\t\t\tvar c, t = this, s = t.settings, o = {}, v;\r\n\r\n\t\t\tif (s.theme_advanced_more_colors) {\r\n\t\t\t\to.more_colors_func = function() {\r\n\t\t\t\t\tt._mceColorPicker(0, {\r\n\t\t\t\t\t\tcolor : c.value,\r\n\t\t\t\t\t\tfunc : function(co) {\r\n\t\t\t\t\t\t\tc.setColor(co);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t};\r\n\t\t\t}\r\n\r\n\t\t\tif (v = s.theme_advanced_background_colors)\r\n\t\t\t\to.colors = v;\r\n\r\n\t\t\tif (s.theme_advanced_default_background_color)\r\n\t\t\t\to.default_color = s.theme_advanced_default_background_color;\r\n\r\n\t\t\to.title = 'advanced.backcolor_desc';\r\n\t\t\to.cmd = 'HiliteColor';\r\n\t\t\to.scope = this;\r\n\r\n\t\t\tc = t.editor.controlManager.createColorSplitButton('backcolor', o);\r\n\r\n\t\t\treturn c;\r\n\t\t},\r\n\r\n\t\trenderUI : function(o) {\r\n\t\t\tvar n, ic, tb, t = this, ed = t.editor, s = t.settings, sc, p, nl;\r\n\r\n\t\t\tif (ed.settings) {\r\n\t\t\t\ted.settings.aria_label = s.aria_label + ed.getLang('advanced.help_shortcut');\r\n\t\t\t}\r\n\r\n\t\t\t// TODO: ACC Should have an aria-describedby attribute which is user-configurable to describe what this field is actually for.\r\n\t\t\t// Maybe actually inherit it from the original textara?\r\n\t\t\tn = p = DOM.create('span', {role : 'application', 'aria-labelledby' : ed.id + '_voice', id : ed.id + '_parent', 'class' : 'mceEditor ' + ed.settings.skin + 'Skin' + (s.skin_variant ? ' ' + ed.settings.skin + 'Skin' + t._ufirst(s.skin_variant) : '')});\r\n\t\t\tDOM.add(n, 'span', {'class': 'mceVoiceLabel', 'style': 'display:none;', id: ed.id + '_voice'}, s.aria_label);\r\n\r\n\t\t\tif (!DOM.boxModel)\r\n\t\t\t\tn = DOM.add(n, 'div', {'class' : 'mceOldBoxModel'});\r\n\r\n\t\t\tn = sc = DOM.add(n, 'table', {role : \"presentation\", id : ed.id + '_tbl', 'class' : 'mceLayout', cellSpacing : 0, cellPadding : 0});\r\n\t\t\tn = tb = DOM.add(n, 'tbody');\r\n\r\n\t\t\tswitch ((s.theme_advanced_layout_manager || '').toLowerCase()) {\r\n\t\t\t\tcase \"rowlayout\":\r\n\t\t\t\t\tic = t._rowLayout(s, tb, o);\r\n\t\t\t\t\tbreak;\r\n\r\n\t\t\t\tcase \"customlayout\":\r\n\t\t\t\t\tic = ed.execCallback(\"theme_advanced_custom_layout\", s, tb, o, p);\r\n\t\t\t\t\tbreak;\r\n\r\n\t\t\t\tdefault:\r\n\t\t\t\t\tic = t._simpleLayout(s, tb, o, p);\r\n\t\t\t}\r\n\r\n\t\t\tn = o.targetNode;\r\n\r\n\t\t\t// Add classes to first and last TRs\r\n\t\t\tnl = sc.rows;\r\n\t\t\tDOM.addClass(nl[0], 'mceFirst');\r\n\t\t\tDOM.addClass(nl[nl.length - 1], 'mceLast');\r\n\r\n\t\t\t// Add classes to first and last TDs\r\n\t\t\teach(DOM.select('tr', tb), function(n) {\r\n\t\t\t\tDOM.addClass(n.firstChild, 'mceFirst');\r\n\t\t\t\tDOM.addClass(n.childNodes[n.childNodes.length - 1], 'mceLast');\r\n\t\t\t});\r\n\r\n\t\t\tif (DOM.get(s.theme_advanced_toolbar_container))\r\n\t\t\t\tDOM.get(s.theme_advanced_toolbar_container).appendChild(p);\r\n\t\t\telse\r\n\t\t\t\tDOM.insertAfter(p, n);\r\n\r\n\t\t\tEvent.add(ed.id + '_path_row', 'click', function(e) {\r\n\t\t\t\te = e.target;\r\n\r\n\t\t\t\tif (e.nodeName == 'A') {\r\n\t\t\t\t\tt._sel(e.className.replace(/^.*mcePath_([0-9]+).*$/, '$1'));\r\n\r\n\t\t\t\t\treturn Event.cancel(e);\r\n\t\t\t\t}\r\n\t\t\t});\r\n/*\r\n\t\t\tif (DOM.get(ed.id + '_path_row')) {\r\n\t\t\t\tEvent.add(ed.id + '_tbl', 'mouseover', function(e) {\r\n\t\t\t\t\tvar re;\r\n\t\r\n\t\t\t\t\te = e.target;\r\n\r\n\t\t\t\t\tif (e.nodeName == 'SPAN' && DOM.hasClass(e.parentNode, 'mceButton')) {\r\n\t\t\t\t\t\tre = DOM.get(ed.id + '_path_row');\r\n\t\t\t\t\t\tt.lastPath = re.innerHTML;\r\n\t\t\t\t\t\tDOM.setHTML(re, e.parentNode.title);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\tEvent.add(ed.id + '_tbl', 'mouseout', function(e) {\r\n\t\t\t\t\tif (t.lastPath) {\r\n\t\t\t\t\t\tDOM.setHTML(ed.id + '_path_row', t.lastPath);\r\n\t\t\t\t\t\tt.lastPath = 0;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n*/\r\n\r\n\t\t\tif (!ed.getParam('accessibility_focus'))\r\n\t\t\t\tEvent.add(DOM.add(p, 'a', {href : '#'}, '<!-- IE -->'), 'focus', function() {tinyMCE.get(ed.id).focus();});\r\n\r\n\t\t\tif (s.theme_advanced_toolbar_location == 'external')\r\n\t\t\t\to.deltaHeight = 0;\r\n\r\n\t\t\tt.deltaHeight = o.deltaHeight;\r\n\t\t\to.targetNode = null;\r\n\r\n\t\t\ted.onKeyDown.add(function(ed, evt) {\r\n\t\t\t\tvar DOM_VK_F10 = 121, DOM_VK_F11 = 122;\r\n\r\n\t\t\t\tif (evt.altKey) {\r\n\t\t \t\t\tif (evt.keyCode === DOM_VK_F10) {\r\n\t\t\t\t\t\twindow.focus();\r\n\t\t\t\t\t\tt.toolbarGroup.focus();\r\n\t\t\t\t\t\treturn Event.cancel(evt);\r\n\t\t\t\t\t} else if (evt.keyCode === DOM_VK_F11) {\r\n\t\t\t\t\t\tDOM.get(ed.id + '_path_row').focus();\r\n\t\t\t\t\t\treturn Event.cancel(evt);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t// alt+0 is the UK recommended shortcut for accessing the list of access controls.\r\n\t\t\ted.addShortcut('alt+0', '', 'mceShortcuts', t);\r\n\r\n\t\t\treturn {\r\n\t\t\t\tiframeContainer : ic,\r\n\t\t\t\teditorContainer : ed.id + '_parent',\r\n\t\t\t\tsizeContainer : sc,\r\n\t\t\t\tdeltaHeight : o.deltaHeight\r\n\t\t\t};\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Advanced theme',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tresizeBy : function(dw, dh) {\r\n\t\t\tvar e = DOM.get(this.editor.id + '_ifr');\r\n\r\n\t\t\tthis.resizeTo(e.clientWidth + dw, e.clientHeight + dh);\r\n\t\t},\r\n\r\n\t\tresizeTo : function(w, h, store) {\r\n\t\t\tvar ed = this.editor, s = this.settings, e = DOM.get(ed.id + '_tbl'), ifr = DOM.get(ed.id + '_ifr');\r\n\r\n\t\t\t// Boundery fix box\r\n\t\t\tw = Math.max(s.theme_advanced_resizing_min_width || 100, w);\r\n\t\t\th = Math.max(s.theme_advanced_resizing_min_height || 100, h);\r\n\t\t\tw = Math.min(s.theme_advanced_resizing_max_width || 0xFFFF, w);\r\n\t\t\th = Math.min(s.theme_advanced_resizing_max_height || 0xFFFF, h);\r\n\r\n\t\t\t// Resize iframe and container\r\n\t\t\tDOM.setStyle(e, 'height', '');\r\n\t\t\tDOM.setStyle(ifr, 'height', h);\r\n\r\n\t\t\tif (s.theme_advanced_resize_horizontal) {\r\n\t\t\t\tDOM.setStyle(e, 'width', '');\r\n\t\t\t\tDOM.setStyle(ifr, 'width', w);\r\n\r\n\t\t\t\t// Make sure that the size is never smaller than the over all ui\r\n\t\t\t\tif (w < e.clientWidth) {\r\n\t\t\t\t\tw = e.clientWidth;\r\n\t\t\t\t\tDOM.setStyle(ifr, 'width', e.clientWidth);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Store away the size\r\n\t\t\tif (store && s.theme_advanced_resizing_use_cookie) {\r\n\t\t\t\tCookie.setHash(\"TinyMCE_\" + ed.id + \"_size\", {\r\n\t\t\t\t\tcw : w,\r\n\t\t\t\t\tch : h\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tdestroy : function() {\r\n\t\t\tvar id = this.editor.id;\r\n\r\n\t\t\tEvent.clear(id + '_resize');\r\n\t\t\tEvent.clear(id + '_path_row');\r\n\t\t\tEvent.clear(id + '_external_close');\r\n\t\t},\r\n\r\n\t\t// Internal functions\r\n\r\n\t\t_simpleLayout : function(s, tb, o, p) {\r\n\t\t\tvar t = this, ed = t.editor, lo = s.theme_advanced_toolbar_location, sl = s.theme_advanced_statusbar_location, n, ic, etb, c;\r\n\r\n\t\t\tif (s.readonly) {\r\n\t\t\t\tn = DOM.add(tb, 'tr');\r\n\t\t\t\tn = ic = DOM.add(n, 'td', {'class' : 'mceIframeContainer'});\r\n\t\t\t\treturn ic;\r\n\t\t\t}\r\n\r\n\t\t\t// Create toolbar container at top\r\n\t\t\tif (lo == 'top')\r\n\t\t\t\tt._addToolbars(tb, o);\r\n\r\n\t\t\t// Create external toolbar\r\n\t\t\tif (lo == 'external') {\r\n\t\t\t\tn = c = DOM.create('div', {style : 'position:relative'});\r\n\t\t\t\tn = DOM.add(n, 'div', {id : ed.id + '_external', 'class' : 'mceExternalToolbar'});\r\n\t\t\t\tDOM.add(n, 'a', {id : ed.id + '_external_close', href : 'javascript:;', 'class' : 'mceExternalClose'});\r\n\t\t\t\tn = DOM.add(n, 'table', {id : ed.id + '_tblext', cellSpacing : 0, cellPadding : 0});\r\n\t\t\t\tetb = DOM.add(n, 'tbody');\r\n\r\n\t\t\t\tif (p.firstChild.className == 'mceOldBoxModel')\r\n\t\t\t\t\tp.firstChild.appendChild(c);\r\n\t\t\t\telse\r\n\t\t\t\t\tp.insertBefore(c, p.firstChild);\r\n\r\n\t\t\t\tt._addToolbars(etb, o);\r\n\r\n\t\t\t\ted.onMouseUp.add(function() {\r\n\t\t\t\t\tvar e = DOM.get(ed.id + '_external');\r\n\t\t\t\t\tDOM.show(e);\r\n\r\n\t\t\t\t\tDOM.hide(lastExtID);\r\n\r\n\t\t\t\t\tvar f = Event.add(ed.id + '_external_close', 'click', function() {\r\n\t\t\t\t\t\tDOM.hide(ed.id + '_external');\r\n\t\t\t\t\t\tEvent.remove(ed.id + '_external_close', 'click', f);\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tDOM.show(e);\r\n\t\t\t\t\tDOM.setStyle(e, 'top', 0 - DOM.getRect(ed.id + '_tblext').h - 1);\r\n\r\n\t\t\t\t\t// Fixes IE rendering bug\r\n\t\t\t\t\tDOM.hide(e);\r\n\t\t\t\t\tDOM.show(e);\r\n\t\t\t\t\te.style.filter = '';\r\n\r\n\t\t\t\t\tlastExtID = ed.id + '_external';\r\n\r\n\t\t\t\t\te = null;\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tif (sl == 'top')\r\n\t\t\t\tt._addStatusBar(tb, o);\r\n\r\n\t\t\t// Create iframe container\r\n\t\t\tif (!s.theme_advanced_toolbar_container) {\r\n\t\t\t\tn = DOM.add(tb, 'tr');\r\n\t\t\t\tn = ic = DOM.add(n, 'td', {'class' : 'mceIframeContainer'});\r\n\t\t\t}\r\n\r\n\t\t\t// Create toolbar container at bottom\r\n\t\t\tif (lo == 'bottom')\r\n\t\t\t\tt._addToolbars(tb, o);\r\n\r\n\t\t\tif (sl == 'bottom')\r\n\t\t\t\tt._addStatusBar(tb, o);\r\n\r\n\t\t\treturn ic;\r\n\t\t},\r\n\r\n\t\t_rowLayout : function(s, tb, o) {\r\n\t\t\tvar t = this, ed = t.editor, dc, da, cf = ed.controlManager, n, ic, to, a;\r\n\r\n\t\t\tdc = s.theme_advanced_containers_default_class || '';\r\n\t\t\tda = s.theme_advanced_containers_default_align || 'center';\r\n\r\n\t\t\teach(explode(s.theme_advanced_containers || ''), function(c, i) {\r\n\t\t\t\tvar v = s['theme_advanced_container_' + c] || '';\r\n\r\n\t\t\t\tswitch (c.toLowerCase()) {\r\n\t\t\t\t\tcase 'mceeditor':\r\n\t\t\t\t\t\tn = DOM.add(tb, 'tr');\r\n\t\t\t\t\t\tn = ic = DOM.add(n, 'td', {'class' : 'mceIframeContainer'});\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase 'mceelementpath':\r\n\t\t\t\t\t\tt._addStatusBar(tb, o);\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tdefault:\r\n\t\t\t\t\t\ta = (s['theme_advanced_container_' + c + '_align'] || da).toLowerCase();\r\n\t\t\t\t\t\ta = 'mce' + t._ufirst(a);\r\n\r\n\t\t\t\t\t\tn = DOM.add(DOM.add(tb, 'tr'), 'td', {\r\n\t\t\t\t\t\t\t'class' : 'mceToolbar ' + (s['theme_advanced_container_' + c + '_class'] || dc) + ' ' + a || da\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\tto = cf.createToolbar(\"toolbar\" + i);\r\n\t\t\t\t\t\tt._addControls(v, to);\r\n\t\t\t\t\t\tDOM.setHTML(n, to.renderHTML());\r\n\t\t\t\t\t\to.deltaHeight -= s.theme_advanced_row_height;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\treturn ic;\r\n\t\t},\r\n\r\n\t\t_addControls : function(v, tb) {\r\n\t\t\tvar t = this, s = t.settings, di, cf = t.editor.controlManager;\r\n\r\n\t\t\tif (s.theme_advanced_disable && !t._disabled) {\r\n\t\t\t\tdi = {};\r\n\r\n\t\t\t\teach(explode(s.theme_advanced_disable), function(v) {\r\n\t\t\t\t\tdi[v] = 1;\r\n\t\t\t\t});\r\n\r\n\t\t\t\tt._disabled = di;\r\n\t\t\t} else\r\n\t\t\t\tdi = t._disabled;\r\n\r\n\t\t\teach(explode(v), function(n) {\r\n\t\t\t\tvar c;\r\n\r\n\t\t\t\tif (di && di[n])\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\t// Compatiblity with 2.x\r\n\t\t\t\tif (n == 'tablecontrols') {\r\n\t\t\t\t\teach([\"table\",\"|\",\"row_props\",\"cell_props\",\"|\",\"row_before\",\"row_after\",\"delete_row\",\"|\",\"col_before\",\"col_after\",\"delete_col\",\"|\",\"split_cells\",\"merge_cells\"], function(n) {\r\n\t\t\t\t\t\tn = t.createControl(n, cf);\r\n\r\n\t\t\t\t\t\tif (n)\r\n\t\t\t\t\t\t\ttb.add(n);\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tc = t.createControl(n, cf);\r\n\r\n\t\t\t\tif (c)\r\n\t\t\t\t\ttb.add(c);\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t_addToolbars : function(c, o) {\r\n\t\t\tvar t = this, i, tb, ed = t.editor, s = t.settings, v, cf = ed.controlManager, di, n, h = [], a, toolbarGroup;\r\n\r\n\t\t\ttoolbarGroup = cf.createToolbarGroup('toolbargroup', {\r\n\t\t\t\t'name': ed.getLang('advanced.toolbar'),\r\n\t\t\t\t'tab_focus_toolbar':ed.getParam('theme_advanced_tab_focus_toolbar')\r\n\t\t\t});\r\n\r\n\t\t\tt.toolbarGroup = toolbarGroup;\r\n\r\n\t\t\ta = s.theme_advanced_toolbar_align.toLowerCase();\r\n\t\t\ta = 'mce' + t._ufirst(a);\r\n\r\n\t\t\tn = DOM.add(DOM.add(c, 'tr', {role: 'presentation'}), 'td', {'class' : 'mceToolbar ' + a, \"role\":\"presentation\"});\r\n\r\n\t\t\t// Create toolbar and add the controls\r\n\t\t\tfor (i=1; (v = s['theme_advanced_buttons' + i]); i++) {\r\n\t\t\t\ttb = cf.createToolbar(\"toolbar\" + i, {'class' : 'mceToolbarRow' + i});\r\n\r\n\t\t\t\tif (s['theme_advanced_buttons' + i + '_add'])\r\n\t\t\t\t\tv += ',' + s['theme_advanced_buttons' + i + '_add'];\r\n\r\n\t\t\t\tif (s['theme_advanced_buttons' + i + '_add_before'])\r\n\t\t\t\t\tv = s['theme_advanced_buttons' + i + '_add_before'] + ',' + v;\r\n\r\n\t\t\t\tt._addControls(v, tb);\r\n\t\t\t\ttoolbarGroup.add(tb);\r\n\r\n\t\t\t\to.deltaHeight -= s.theme_advanced_row_height;\r\n\t\t\t}\r\n\t\t\th.push(toolbarGroup.renderHTML());\r\n\t\t\th.push(DOM.createHTML('a', {href : '#', accesskey : 'z', title : ed.getLang(\"advanced.toolbar_focus\"), onfocus : 'tinyMCE.getInstanceById(\\'' + ed.id + '\\').focus();'}, '<!-- IE -->'));\r\n\t\t\tDOM.setHTML(n, h.join(''));\r\n\t\t},\r\n\r\n\t\t_addStatusBar : function(tb, o) {\r\n\t\t\tvar n, t = this, ed = t.editor, s = t.settings, r, mf, me, td;\r\n\r\n\t\t\tn = DOM.add(tb, 'tr');\r\n\t\t\tn = td = DOM.add(n, 'td', {'class' : 'mceStatusbar'}); \r\n\t\t\tn = DOM.add(n, 'div', {id : ed.id + '_path_row', 'role': 'group', 'aria-labelledby': ed.id + '_path_voice'});\r\n\t\t\tif (s.theme_advanced_path) {\r\n\t\t\t\tDOM.add(n, 'span', {id: ed.id + '_path_voice'}, ed.translate('advanced.path'));\r\n\t\t\t\tDOM.add(n, 'span', {}, ': ');\r\n\t\t\t} else {\r\n\t\t\t\tDOM.add(n, 'span', {}, '&#160;');\r\n\t\t\t}\r\n\t\t\t\r\n\r\n\t\t\tif (s.theme_advanced_resizing) {\r\n\t\t\t\tDOM.add(td, 'a', {id : ed.id + '_resize', href : 'javascript:;', onclick : \"return false;\", 'class' : 'mceResize', tabIndex:\"-1\"});\r\n\r\n\t\t\t\tif (s.theme_advanced_resizing_use_cookie) {\r\n\t\t\t\t\ted.onPostRender.add(function() {\r\n\t\t\t\t\t\tvar o = Cookie.getHash(\"TinyMCE_\" + ed.id + \"_size\"), c = DOM.get(ed.id + '_tbl');\r\n\r\n\t\t\t\t\t\tif (!o)\r\n\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\tt.resizeTo(o.cw, o.ch);\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\r\n\t\t\t\ted.onPostRender.add(function() {\r\n\t\t\t\t\tEvent.add(ed.id + '_resize', 'click', function(e) {\r\n\t\t\t\t\t\te.preventDefault();\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tEvent.add(ed.id + '_resize', 'mousedown', function(e) {\r\n\t\t\t\t\t\tvar mouseMoveHandler1, mouseMoveHandler2,\r\n\t\t\t\t\t\t\tmouseUpHandler1, mouseUpHandler2,\r\n\t\t\t\t\t\t\tstartX, startY, startWidth, startHeight, width, height, ifrElm;\r\n\r\n\t\t\t\t\t\tfunction resizeOnMove(e) {\r\n\t\t\t\t\t\t\te.preventDefault();\r\n\r\n\t\t\t\t\t\t\twidth = startWidth + (e.screenX - startX);\r\n\t\t\t\t\t\t\theight = startHeight + (e.screenY - startY);\r\n\r\n\t\t\t\t\t\t\tt.resizeTo(width, height);\r\n\t\t\t\t\t\t};\r\n\r\n\t\t\t\t\t\tfunction endResize(e) {\r\n\t\t\t\t\t\t\t// Stop listening\r\n\t\t\t\t\t\t\tEvent.remove(DOM.doc, 'mousemove', mouseMoveHandler1);\r\n\t\t\t\t\t\t\tEvent.remove(ed.getDoc(), 'mousemove', mouseMoveHandler2);\r\n\t\t\t\t\t\t\tEvent.remove(DOM.doc, 'mouseup', mouseUpHandler1);\r\n\t\t\t\t\t\t\tEvent.remove(ed.getDoc(), 'mouseup', mouseUpHandler2);\r\n\r\n\t\t\t\t\t\t\twidth = startWidth + (e.screenX - startX);\r\n\t\t\t\t\t\t\theight = startHeight + (e.screenY - startY);\r\n\t\t\t\t\t\t\tt.resizeTo(width, height, true);\r\n\t\t\t\t\t\t};\r\n\r\n\t\t\t\t\t\te.preventDefault();\r\n\r\n\t\t\t\t\t\t// Get the current rect size\r\n\t\t\t\t\t\tstartX = e.screenX;\r\n\t\t\t\t\t\tstartY = e.screenY;\r\n\t\t\t\t\t\tifrElm = DOM.get(t.editor.id + '_ifr');\r\n\t\t\t\t\t\tstartWidth = width = ifrElm.clientWidth;\r\n\t\t\t\t\t\tstartHeight = height = ifrElm.clientHeight;\r\n\r\n\t\t\t\t\t\t// Register envent handlers\r\n\t\t\t\t\t\tmouseMoveHandler1 = Event.add(DOM.doc, 'mousemove', resizeOnMove);\r\n\t\t\t\t\t\tmouseMoveHandler2 = Event.add(ed.getDoc(), 'mousemove', resizeOnMove);\r\n\t\t\t\t\t\tmouseUpHandler1 = Event.add(DOM.doc, 'mouseup', endResize);\r\n\t\t\t\t\t\tmouseUpHandler2 = Event.add(ed.getDoc(), 'mouseup', endResize);\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\to.deltaHeight -= 21;\r\n\t\t\tn = tb = null;\r\n\t\t},\r\n\r\n\t\t_updateUndoStatus : function(ed) {\r\n\t\t\tvar cm = ed.controlManager, um = ed.undoManager;\r\n\r\n\t\t\tcm.setDisabled('undo', !um.hasUndo() && !um.typing);\r\n\t\t\tcm.setDisabled('redo', !um.hasRedo());\r\n\t\t},\r\n\r\n\t\t_nodeChanged : function(ed, cm, n, co, ob) {\r\n\t\t\tvar t = this, p, de = 0, v, c, s = t.settings, cl, fz, fn, fc, bc, formatNames, matches;\r\n\r\n\t\t\ttinymce.each(t.stateControls, function(c) {\r\n\t\t\t\tcm.setActive(c, ed.queryCommandState(t.controls[c][1]));\r\n\t\t\t});\r\n\r\n\t\t\tfunction getParent(name) {\r\n\t\t\t\tvar i, parents = ob.parents, func = name;\r\n\r\n\t\t\t\tif (typeof(name) == 'string') {\r\n\t\t\t\t\tfunc = function(node) {\r\n\t\t\t\t\t\treturn node.nodeName == name;\r\n\t\t\t\t\t};\r\n\t\t\t\t}\r\n\r\n\t\t\t\tfor (i = 0; i < parents.length; i++) {\r\n\t\t\t\t\tif (func(parents[i]))\r\n\t\t\t\t\t\treturn parents[i];\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\t\t\tcm.setActive('visualaid', ed.hasVisual);\r\n\t\t\tt._updateUndoStatus(ed);\r\n\t\t\tcm.setDisabled('outdent', !ed.queryCommandState('Outdent'));\r\n\r\n\t\t\tp = getParent('A');\r\n\t\t\tif (c = cm.get('link')) {\r\n\t\t\t\tif (!p || !p.name) {\r\n\t\t\t\t\tc.setDisabled(!p && co);\r\n\t\t\t\t\tc.setActive(!!p);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (c = cm.get('unlink')) {\r\n\t\t\t\tc.setDisabled(!p && co);\r\n\t\t\t\tc.setActive(!!p && !p.name);\r\n\t\t\t}\r\n\r\n\t\t\tif (c = cm.get('anchor')) {\r\n\t\t\t\tc.setActive(!co && !!p && p.name);\r\n\t\t\t}\r\n\r\n\t\t\tp = getParent('IMG');\r\n\t\t\tif (c = cm.get('image'))\r\n\t\t\t\tc.setActive(!co && !!p && n.className.indexOf('mceItem') == -1);\r\n\r\n\t\t\tif (c = cm.get('styleselect')) {\r\n\t\t\t\tt._importClasses();\r\n\r\n\t\t\t\tformatNames = [];\r\n\t\t\t\teach(c.items, function(item) {\r\n\t\t\t\t\tformatNames.push(item.value);\r\n\t\t\t\t});\r\n\r\n\t\t\t\tmatches = ed.formatter.matchAll(formatNames);\r\n\t\t\t\tc.select(matches[0]);\r\n\t\t\t}\r\n\r\n\t\t\tif (c = cm.get('formatselect')) {\r\n\t\t\t\tp = getParent(DOM.isBlock);\r\n\r\n\t\t\t\tif (p)\r\n\t\t\t\t\tc.select(p.nodeName.toLowerCase());\r\n\t\t\t}\r\n\r\n\t\t\t// Find out current fontSize, fontFamily and fontClass\r\n\t\t\tgetParent(function(n) {\r\n\t\t\t\tif (n.nodeName === 'SPAN') {\r\n\t\t\t\t\tif (!cl && n.className)\r\n\t\t\t\t\t\tcl = n.className;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (ed.dom.is(n, s.theme_advanced_font_selector)) {\r\n\t\t\t\t\tif (!fz && n.style.fontSize)\r\n\t\t\t\t\t\tfz = n.style.fontSize;\r\n\r\n\t\t\t\t\tif (!fn && n.style.fontFamily)\r\n\t\t\t\t\t\tfn = n.style.fontFamily.replace(/[\\\"\\']+/g, '').replace(/^([^,]+).*/, '$1').toLowerCase();\r\n\t\t\t\t\t\r\n\t\t\t\t\tif (!fc && n.style.color)\r\n\t\t\t\t\t\tfc = n.style.color;\r\n\r\n\t\t\t\t\tif (!bc && n.style.backgroundColor)\r\n\t\t\t\t\t\tbc = n.style.backgroundColor;\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn false;\r\n\t\t\t});\r\n\r\n\t\t\tif (c = cm.get('fontselect')) {\r\n\t\t\t\tc.select(function(v) {\r\n\t\t\t\t\treturn v.replace(/^([^,]+).*/, '$1').toLowerCase() == fn;\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\t// Select font size\r\n\t\t\tif (c = cm.get('fontsizeselect')) {\r\n\t\t\t\t// Use computed style\r\n\t\t\t\tif (s.theme_advanced_runtime_fontsize && !fz && !cl)\r\n\t\t\t\t\tfz = ed.dom.getStyle(n, 'fontSize', true);\r\n\r\n\t\t\t\tc.select(function(v) {\r\n\t\t\t\t\tif (v.fontSize && v.fontSize === fz)\r\n\t\t\t\t\t\treturn true;\r\n\r\n\t\t\t\t\tif (v['class'] && v['class'] === cl)\r\n\t\t\t\t\t\treturn true;\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\tif (s.theme_advanced_show_current_color) {\r\n\t\t\t\tfunction updateColor(controlId, color) {\r\n\t\t\t\t\tif (c = cm.get(controlId)) {\r\n\t\t\t\t\t\tif (!color)\r\n\t\t\t\t\t\t\tcolor = c.settings.default_color;\r\n\t\t\t\t\t\tif (color !== c.value) {\r\n\t\t\t\t\t\t\tc.displayColor(color);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tupdateColor('forecolor', fc);\r\n\t\t\t\tupdateColor('backcolor', bc);\r\n\t\t\t}\r\n\r\n\t\t\tif (s.theme_advanced_show_current_color) {\r\n\t\t\t\tfunction updateColor(controlId, color) {\r\n\t\t\t\t\tif (c = cm.get(controlId)) {\r\n\t\t\t\t\t\tif (!color)\r\n\t\t\t\t\t\t\tcolor = c.settings.default_color;\r\n\t\t\t\t\t\tif (color !== c.value) {\r\n\t\t\t\t\t\t\tc.displayColor(color);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t};\r\n\r\n\t\t\t\tupdateColor('forecolor', fc);\r\n\t\t\t\tupdateColor('backcolor', bc);\r\n\t\t\t}\r\n\r\n\t\t\tif (s.theme_advanced_path && s.theme_advanced_statusbar_location) {\r\n\t\t\t\tp = DOM.get(ed.id + '_path') || DOM.add(ed.id + '_path_row', 'span', {id : ed.id + '_path'});\r\n\r\n\t\t\t\tif (t.statusKeyboardNavigation) {\r\n\t\t\t\t\tt.statusKeyboardNavigation.destroy();\r\n\t\t\t\t\tt.statusKeyboardNavigation = null;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tDOM.setHTML(p, '');\r\n\r\n\t\t\t\tgetParent(function(n) {\r\n\t\t\t\t\tvar na = n.nodeName.toLowerCase(), u, pi, ti = '';\r\n\r\n\t\t\t\t\t// Ignore non element and bogus/hidden elements\r\n\t\t\t\t\tif (n.nodeType != 1 || na === 'br' || n.getAttribute('data-mce-bogus') || DOM.hasClass(n, 'mceItemHidden') || DOM.hasClass(n, 'mceItemRemoved'))\r\n\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t// Handle prefix\r\n\t\t\t\t\tif (tinymce.isIE && n.scopeName !== 'HTML')\r\n\t\t\t\t\t\tna = n.scopeName + ':' + na;\r\n\r\n\t\t\t\t\t// Remove internal prefix\r\n\t\t\t\t\tna = na.replace(/mce\\:/g, '');\r\n\r\n\t\t\t\t\t// Handle node name\r\n\t\t\t\t\tswitch (na) {\r\n\t\t\t\t\t\tcase 'b':\r\n\t\t\t\t\t\t\tna = 'strong';\r\n\t\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\t\tcase 'i':\r\n\t\t\t\t\t\t\tna = 'em';\r\n\t\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\t\tcase 'img':\r\n\t\t\t\t\t\t\tif (v = DOM.getAttrib(n, 'src'))\r\n\t\t\t\t\t\t\t\tti += 'src: ' + v + ' ';\r\n\r\n\t\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\t\tcase 'a':\r\n\t\t\t\t\t\t\tif (v = DOM.getAttrib(n, 'name')) {\r\n\t\t\t\t\t\t\t\tti += 'name: ' + v + ' ';\r\n\t\t\t\t\t\t\t\tna += '#' + v;\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tif (v = DOM.getAttrib(n, 'href'))\r\n\t\t\t\t\t\t\t\tti += 'href: ' + v + ' ';\r\n\r\n\t\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\t\tcase 'font':\r\n\t\t\t\t\t\t\tif (v = DOM.getAttrib(n, 'face'))\r\n\t\t\t\t\t\t\t\tti += 'font: ' + v + ' ';\r\n\r\n\t\t\t\t\t\t\tif (v = DOM.getAttrib(n, 'size'))\r\n\t\t\t\t\t\t\t\tti += 'size: ' + v + ' ';\r\n\r\n\t\t\t\t\t\t\tif (v = DOM.getAttrib(n, 'color'))\r\n\t\t\t\t\t\t\t\tti += 'color: ' + v + ' ';\r\n\r\n\t\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\t\tcase 'span':\r\n\t\t\t\t\t\t\tif (v = DOM.getAttrib(n, 'style'))\r\n\t\t\t\t\t\t\t\tti += 'style: ' + v + ' ';\r\n\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (v = DOM.getAttrib(n, 'id'))\r\n\t\t\t\t\t\tti += 'id: ' + v + ' ';\r\n\r\n\t\t\t\t\tif (v = n.className) {\r\n\t\t\t\t\t\tv = v.replace(/\\b\\s*(webkit|mce|Apple-)\\w+\\s*\\b/g, '')\r\n\r\n\t\t\t\t\t\tif (v) {\r\n\t\t\t\t\t\t\tti += 'class: ' + v + ' ';\r\n\r\n\t\t\t\t\t\t\tif (DOM.isBlock(n) || na == 'img' || na == 'span')\r\n\t\t\t\t\t\t\t\tna += '.' + v;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tna = na.replace(/(html:)/g, '');\r\n\t\t\t\t\tna = {name : na, node : n, title : ti};\r\n\t\t\t\t\tt.onResolveName.dispatch(t, na);\r\n\t\t\t\t\tti = na.title;\r\n\t\t\t\t\tna = na.name;\r\n\r\n\t\t\t\t\t//u = \"javascript:tinymce.EditorManager.get('\" + ed.id + \"').theme._sel('\" + (de++) + \"');\";\r\n\t\t\t\t\tpi = DOM.create('a', {'href' : \"javascript:;\", role: 'button', onmousedown : \"return false;\", title : ti, 'class' : 'mcePath_' + (de++)}, na);\r\n\r\n\t\t\t\t\tif (p.hasChildNodes()) {\r\n\t\t\t\t\t\tp.insertBefore(DOM.create('span', {'aria-hidden': 'true'}, '\\u00a0\\u00bb '), p.firstChild);\r\n\t\t\t\t\t\tp.insertBefore(pi, p.firstChild);\r\n\t\t\t\t\t} else\r\n\t\t\t\t\t\tp.appendChild(pi);\r\n\t\t\t\t}, ed.getBody());\r\n\r\n\t\t\t\tif (DOM.select('a', p).length > 0) {\r\n\t\t\t\t\tt.statusKeyboardNavigation = new tinymce.ui.KeyboardNavigation({\r\n\t\t\t\t\t\troot: ed.id + \"_path_row\",\r\n\t\t\t\t\t\titems: DOM.select('a', p),\r\n\t\t\t\t\t\texcludeFromTabOrder: true,\r\n\t\t\t\t\t\tonCancel: function() {\r\n\t\t\t\t\t\t\ted.focus();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}, DOM);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t// Commands gets called by execCommand\r\n\r\n\t\t_sel : function(v) {\r\n\t\t\tthis.editor.execCommand('mceSelectNodeDepth', false, v);\r\n\t\t},\r\n\r\n\t\t_mceInsertAnchor : function(ui, v) {\r\n\t\t\tvar ed = this.editor;\r\n\r\n\t\t\ted.windowManager.open({\r\n\t\t\t\turl : this.url + '/anchor.htm',\r\n\t\t\t\twidth : 320 + parseInt(ed.getLang('advanced.anchor_delta_width', 0)),\r\n\t\t\t\theight : 90 + parseInt(ed.getLang('advanced.anchor_delta_height', 0)),\r\n\t\t\t\tinline : true\r\n\t\t\t}, {\r\n\t\t\t\ttheme_url : this.url\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t_mceCharMap : function() {\r\n\t\t\tvar ed = this.editor;\r\n\r\n\t\t\ted.windowManager.open({\r\n\t\t\t\turl : this.url + '/charmap.htm',\r\n\t\t\t\twidth : 550 + parseInt(ed.getLang('advanced.charmap_delta_width', 0)),\r\n\t\t\t\theight : 250 + parseInt(ed.getLang('advanced.charmap_delta_height', 0)),\r\n\t\t\t\tinline : true\r\n\t\t\t}, {\r\n\t\t\t\ttheme_url : this.url\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t_mceHelp : function() {\r\n\t\t\tvar ed = this.editor;\r\n\r\n\t\t\ted.windowManager.open({\r\n\t\t\t\turl : this.url + '/about.htm',\r\n\t\t\t\twidth : 480,\r\n\t\t\t\theight : 380,\r\n\t\t\t\tinline : true\r\n\t\t\t}, {\r\n\t\t\t\ttheme_url : this.url\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t_mceShortcuts : function() {\r\n\t\t\tvar ed = this.editor;\r\n\t\t\ted.windowManager.open({\r\n\t\t\t\turl: this.url + '/shortcuts.htm',\r\n\t\t\t\twidth: 480,\r\n\t\t\t\theight: 380,\r\n\t\t\t\tinline: true\r\n\t\t\t}, {\r\n\t\t\t\ttheme_url: this.url\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t_mceColorPicker : function(u, v) {\r\n\t\t\tvar ed = this.editor;\r\n\r\n\t\t\tv = v || {};\r\n\r\n\t\t\ted.windowManager.open({\r\n\t\t\t\turl : this.url + '/color_picker.htm',\r\n\t\t\t\twidth : 375 + parseInt(ed.getLang('advanced.colorpicker_delta_width', 0)),\r\n\t\t\t\theight : 250 + parseInt(ed.getLang('advanced.colorpicker_delta_height', 0)),\r\n\t\t\t\tclose_previous : false,\r\n\t\t\t\tinline : true\r\n\t\t\t}, {\r\n\t\t\t\tinput_color : v.color,\r\n\t\t\t\tfunc : v.func,\r\n\t\t\t\ttheme_url : this.url\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t_mceCodeEditor : function(ui, val) {\r\n\t\t\tvar ed = this.editor;\r\n\r\n\t\t\ted.windowManager.open({\r\n\t\t\t\turl : this.url + '/source_editor.htm',\r\n\t\t\t\twidth : parseInt(ed.getParam(\"theme_advanced_source_editor_width\", 720)),\r\n\t\t\t\theight : parseInt(ed.getParam(\"theme_advanced_source_editor_height\", 580)),\r\n\t\t\t\tinline : true,\r\n\t\t\t\tresizable : true,\r\n\t\t\t\tmaximizable : true\r\n\t\t\t}, {\r\n\t\t\t\ttheme_url : this.url\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t_mceImage : function(ui, val) {\r\n\t\t\tvar ed = this.editor;\r\n\r\n\t\t\t// Internal image object like a flash placeholder\r\n\t\t\tif (ed.dom.getAttrib(ed.selection.getNode(), 'class').indexOf('mceItem') != -1)\r\n\t\t\t\treturn;\r\n\r\n\t\t\ted.windowManager.open({\r\n\t\t\t\turl : this.url + '/image.htm',\r\n\t\t\t\twidth : 355 + parseInt(ed.getLang('advanced.image_delta_width', 0)),\r\n\t\t\t\theight : 275 + parseInt(ed.getLang('advanced.image_delta_height', 0)),\r\n\t\t\t\tinline : true\r\n\t\t\t}, {\r\n\t\t\t\ttheme_url : this.url\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t_mceLink : function(ui, val) {\r\n\t\t\tvar ed = this.editor;\r\n\r\n\t\t\ted.windowManager.open({\r\n\t\t\t\turl : this.url + '/link.htm',\r\n\t\t\t\twidth : 310 + parseInt(ed.getLang('advanced.link_delta_width', 0)),\r\n\t\t\t\theight : 200 + parseInt(ed.getLang('advanced.link_delta_height', 0)),\r\n\t\t\t\tinline : true\r\n\t\t\t}, {\r\n\t\t\t\ttheme_url : this.url\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t_mceNewDocument : function() {\r\n\t\t\tvar ed = this.editor;\r\n\r\n\t\t\ted.windowManager.confirm('advanced.newdocument', function(s) {\r\n\t\t\t\tif (s)\r\n\t\t\t\t\ted.execCommand('mceSetContent', false, '');\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t_mceForeColor : function() {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tthis._mceColorPicker(0, {\r\n\t\t\t\tcolor: t.fgColor,\r\n\t\t\t\tfunc : function(co) {\r\n\t\t\t\t\tt.fgColor = co;\r\n\t\t\t\t\tt.editor.execCommand('ForeColor', false, co);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t_mceBackColor : function() {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tthis._mceColorPicker(0, {\r\n\t\t\t\tcolor: t.bgColor,\r\n\t\t\t\tfunc : function(co) {\r\n\t\t\t\t\tt.bgColor = co;\r\n\t\t\t\t\tt.editor.execCommand('HiliteColor', false, co);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t_ufirst : function(s) {\r\n\t\t\treturn s.substring(0, 1).toUpperCase() + s.substring(1);\r\n\t\t}\r\n\t});\r\n\r\n\ttinymce.ThemeManager.add('advanced', tinymce.themes.AdvancedTheme);\r\n}(tinymce));\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/image.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#advanced_dlg.image_title}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/form_utils.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/image.js\"></script>\r\n</head>\r\n<body id=\"image\" style=\"display: none\">\r\n<form onsubmit=\"ImageDialog.update();return false;\" action=\"#\">\r\n\t<div class=\"tabs\">\r\n\t\t<ul>\r\n\t\t\t<li id=\"general_tab\" class=\"current\"><span><a href=\"javascript:mcTabs.displayTab('general_tab','general_panel');\" onmousedown=\"return false;\">{#advanced_dlg.image_title}</a></span></li>\r\n\t\t</ul>\r\n\t</div>\r\n\r\n\t<div class=\"panel_wrapper\">\r\n\t\t<div id=\"general_panel\" class=\"panel current\">\r\n\t\t\t<table border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td class=\"nowrap\"><label for=\"src\">{#advanced_dlg.image_src}</label></td>\r\n\t\t\t\t\t<td><table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td><input id=\"src\" name=\"src\" type=\"text\" class=\"mceFocus\" value=\"\" style=\"width: 200px\" onchange=\"ImageDialog.getImageData();\" /></td>\r\n\t\t\t\t\t\t\t<td id=\"srcbrowsercontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</table></td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td><label for=\"image_list\">{#advanced_dlg.image_list}</label></td>\r\n\t\t\t\t\t<td><select id=\"image_list\" name=\"image_list\" onchange=\"document.getElementById('src').value=this.options[this.selectedIndex].value;document.getElementById('alt').value=this.options[this.selectedIndex].text;\"></select></td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td class=\"nowrap\"><label for=\"alt\">{#advanced_dlg.image_alt}</label></td>\r\n\t\t\t\t\t<td><input id=\"alt\" name=\"alt\" type=\"text\" value=\"\" style=\"width: 200px\" /></td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td class=\"nowrap\"><label for=\"align\">{#advanced_dlg.image_align}</label></td>\r\n\t\t\t\t\t<td><select id=\"align\" name=\"align\" onchange=\"ImageDialog.updateStyle();\">\r\n\t\t\t\t\t\t<option value=\"\">{#not_set}</option>\r\n\t\t\t\t\t\t<option value=\"baseline\">{#advanced_dlg.image_align_baseline}</option>\r\n\t\t\t\t\t\t<option value=\"top\">{#advanced_dlg.image_align_top}</option>\r\n\t\t\t\t\t\t<option value=\"middle\">{#advanced_dlg.image_align_middle}</option>\r\n\t\t\t\t\t\t<option value=\"bottom\">{#advanced_dlg.image_align_bottom}</option>\r\n\t\t\t\t\t\t<option value=\"text-top\">{#advanced_dlg.image_align_texttop}</option>\r\n\t\t\t\t\t\t<option value=\"text-bottom\">{#advanced_dlg.image_align_textbottom}</option>\r\n\t\t\t\t\t\t<option value=\"left\">{#advanced_dlg.image_align_left}</option>\r\n\t\t\t\t\t\t<option value=\"right\">{#advanced_dlg.image_align_right}</option>\r\n\t\t\t\t\t</select></td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td class=\"nowrap\"><label for=\"width\">{#advanced_dlg.image_dimensions}</label></td>\r\n\t\t\t\t\t<td><input id=\"width\" name=\"width\" type=\"text\" value=\"\" size=\"3\" maxlength=\"5\" />\r\n\t\t\t\t\t x \r\n\t\t\t\t\t<input id=\"height\" name=\"height\" type=\"text\" value=\"\" size=\"3\" maxlength=\"5\" /></td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t<td class=\"nowrap\"><label for=\"border\">{#advanced_dlg.image_border}</label></td>\r\n\t\t\t\t<td><input id=\"border\" name=\"border\" type=\"text\" value=\"\" size=\"3\" maxlength=\"3\" onchange=\"ImageDialog.updateStyle();\" /></td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td class=\"nowrap\"><label for=\"vspace\">{#advanced_dlg.image_vspace}</label></td>\r\n\t\t\t\t\t<td><input id=\"vspace\" name=\"vspace\" type=\"text\" value=\"\" size=\"3\" maxlength=\"3\" onchange=\"ImageDialog.updateStyle();\" /></td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td class=\"nowrap\"><label for=\"hspace\">{#advanced_dlg.image_hspace}</label></td>\r\n\t\t\t\t\t<td><input id=\"hspace\" name=\"hspace\" type=\"text\" value=\"\" size=\"3\" maxlength=\"3\" onchange=\"ImageDialog.updateStyle();\" /></td>\r\n\t\t\t\t</tr>\r\n\t\t\t</table>\r\n\t\t</div>\r\n\t</div>\r\n\r\n\t<div class=\"mceActionPanel\">\r\n\t\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#insert}\" />\r\n\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t</div>\r\n</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/js/about.js",
    "content": "tinyMCEPopup.requireLangPack();\r\n\r\nfunction init() {\r\n\tvar ed, tcont;\r\n\r\n\ttinyMCEPopup.resizeToInnerSize();\r\n\ted = tinyMCEPopup.editor;\r\n\r\n\t// Give FF some time\r\n\twindow.setTimeout(insertHelpIFrame, 10);\r\n\r\n\ttcont = document.getElementById('plugintablecontainer');\r\n\tdocument.getElementById('plugins_tab').style.display = 'none';\r\n\r\n\tvar html = \"\";\r\n\thtml += '<table id=\"plugintable\">';\r\n\thtml += '<thead>';\r\n\thtml += '<tr>';\r\n\thtml += '<td>' + ed.getLang('advanced_dlg.about_plugin') + '</td>';\r\n\thtml += '<td>' + ed.getLang('advanced_dlg.about_author') + '</td>';\r\n\thtml += '<td>' + ed.getLang('advanced_dlg.about_version') + '</td>';\r\n\thtml += '</tr>';\r\n\thtml += '</thead>';\r\n\thtml += '<tbody>';\r\n\r\n\ttinymce.each(ed.plugins, function(p, n) {\r\n\t\tvar info;\r\n\r\n\t\tif (!p.getInfo)\r\n\t\t\treturn;\r\n\r\n\t\thtml += '<tr>';\r\n\r\n\t\tinfo = p.getInfo();\r\n\r\n\t\tif (info.infourl != null && info.infourl != '')\r\n\t\t\thtml += '<td width=\"50%\" title=\"' + n + '\"><a href=\"' + info.infourl + '\" target=\"_blank\">' + info.longname + '</a></td>';\r\n\t\telse\r\n\t\t\thtml += '<td width=\"50%\" title=\"' + n + '\">' + info.longname + '</td>';\r\n\r\n\t\tif (info.authorurl != null && info.authorurl != '')\r\n\t\t\thtml += '<td width=\"35%\"><a href=\"' + info.authorurl + '\" target=\"_blank\">' + info.author + '</a></td>';\r\n\t\telse\r\n\t\t\thtml += '<td width=\"35%\">' + info.author + '</td>';\r\n\r\n\t\thtml += '<td width=\"15%\">' + info.version + '</td>';\r\n\t\thtml += '</tr>';\r\n\r\n\t\tdocument.getElementById('plugins_tab').style.display = '';\r\n\r\n\t});\r\n\r\n\thtml += '</tbody>';\r\n\thtml += '</table>';\r\n\r\n\ttcont.innerHTML = html;\r\n\r\n\ttinyMCEPopup.dom.get('version').innerHTML = tinymce.majorVersion + \".\" + tinymce.minorVersion;\r\n\ttinyMCEPopup.dom.get('date').innerHTML = tinymce.releaseDate;\r\n}\r\n\r\nfunction insertHelpIFrame() {\r\n\tvar html;\r\n\r\n\tif (tinyMCEPopup.getParam('docs_url')) {\r\n\t\thtml = '<iframe width=\"100%\" height=\"300\" src=\"' + tinyMCEPopup.editor.baseURI.toAbsolute(tinyMCEPopup.getParam('docs_url')) + '\"></iframe>';\r\n\t\tdocument.getElementById('iframecontainer').innerHTML = html;\r\n\t\tdocument.getElementById('help_tab').style.display = 'block';\r\n\t\tdocument.getElementById('help_tab').setAttribute(\"aria-hidden\", \"false\");\r\n\t}\r\n}\r\n\r\ntinyMCEPopup.onInit.add(init);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/js/anchor.js",
    "content": "tinyMCEPopup.requireLangPack();\r\n\r\nvar AnchorDialog = {\r\n\tinit : function(ed) {\r\n\t\tvar action, elm, f = document.forms[0];\r\n\r\n\t\tthis.editor = ed;\r\n\t\telm = ed.dom.getParent(ed.selection.getNode(), 'A');\r\n\t\tv = ed.dom.getAttrib(elm, 'name');\r\n\r\n\t\tif (v) {\r\n\t\t\tthis.action = 'update';\r\n\t\t\tf.anchorName.value = v;\r\n\t\t}\r\n\r\n\t\tf.insert.value = ed.getLang(elm ? 'update' : 'insert');\r\n\t},\r\n\r\n\tupdate : function() {\r\n\t\tvar ed = this.editor, elm, name = document.forms[0].anchorName.value;\r\n\r\n\t\tif (!name || !/^[a-z][a-z0-9\\-\\_:\\.]*$/i.test(name)) {\r\n\t\t\ttinyMCEPopup.alert('advanced_dlg.anchor_invalid');\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\ttinyMCEPopup.restoreSelection();\r\n\r\n\t\tif (this.action != 'update')\r\n\t\t\ted.selection.collapse(1);\r\n\r\n\t\telm = ed.dom.getParent(ed.selection.getNode(), 'A');\r\n\t\tif (elm) {\r\n\t\t\telm.setAttribute('name', name);\r\n\t\t\telm.name = name;\r\n\t\t} else\r\n\t\t\ted.execCommand('mceInsertContent', 0, ed.dom.createHTML('a', {name : name, 'class' : 'mceItemAnchor'}, ''));\r\n\r\n\t\ttinyMCEPopup.close();\r\n\t}\r\n};\r\n\r\ntinyMCEPopup.onInit.add(AnchorDialog.init, AnchorDialog);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/js/charmap.js",
    "content": "/**\r\n * charmap.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\ntinyMCEPopup.requireLangPack();\r\n\r\nvar charmap = [\r\n\t['&nbsp;',    '&#160;',  true, 'no-break space'],\r\n\t['&amp;',     '&#38;',   true, 'ampersand'],\r\n\t['&quot;',    '&#34;',   true, 'quotation mark'],\r\n// finance\r\n\t['&cent;',    '&#162;',  true, 'cent sign'],\r\n\t['&euro;',    '&#8364;', true, 'euro sign'],\r\n\t['&pound;',   '&#163;',  true, 'pound sign'],\r\n\t['&yen;',     '&#165;',  true, 'yen sign'],\r\n// signs\r\n\t['&copy;',    '&#169;',  true, 'copyright sign'],\r\n\t['&reg;',     '&#174;',  true, 'registered sign'],\r\n\t['&trade;',   '&#8482;', true, 'trade mark sign'],\r\n\t['&permil;',  '&#8240;', true, 'per mille sign'],\r\n\t['&micro;',   '&#181;',  true, 'micro sign'],\r\n\t['&middot;',  '&#183;',  true, 'middle dot'],\r\n\t['&bull;',    '&#8226;', true, 'bullet'],\r\n\t['&hellip;',  '&#8230;', true, 'three dot leader'],\r\n\t['&prime;',   '&#8242;', true, 'minutes / feet'],\r\n\t['&Prime;',   '&#8243;', true, 'seconds / inches'],\r\n\t['&sect;',    '&#167;',  true, 'section sign'],\r\n\t['&para;',    '&#182;',  true, 'paragraph sign'],\r\n\t['&szlig;',   '&#223;',  true, 'sharp s / ess-zed'],\r\n// quotations\r\n\t['&lsaquo;',  '&#8249;', true, 'single left-pointing angle quotation mark'],\r\n\t['&rsaquo;',  '&#8250;', true, 'single right-pointing angle quotation mark'],\r\n\t['&laquo;',   '&#171;',  true, 'left pointing guillemet'],\r\n\t['&raquo;',   '&#187;',  true, 'right pointing guillemet'],\r\n\t['&lsquo;',   '&#8216;', true, 'left single quotation mark'],\r\n\t['&rsquo;',   '&#8217;', true, 'right single quotation mark'],\r\n\t['&ldquo;',   '&#8220;', true, 'left double quotation mark'],\r\n\t['&rdquo;',   '&#8221;', true, 'right double quotation mark'],\r\n\t['&sbquo;',   '&#8218;', true, 'single low-9 quotation mark'],\r\n\t['&bdquo;',   '&#8222;', true, 'double low-9 quotation mark'],\r\n\t['&lt;',      '&#60;',   true, 'less-than sign'],\r\n\t['&gt;',      '&#62;',   true, 'greater-than sign'],\r\n\t['&le;',      '&#8804;', true, 'less-than or equal to'],\r\n\t['&ge;',      '&#8805;', true, 'greater-than or equal to'],\r\n\t['&ndash;',   '&#8211;', true, 'en dash'],\r\n\t['&mdash;',   '&#8212;', true, 'em dash'],\r\n\t['&macr;',    '&#175;',  true, 'macron'],\r\n\t['&oline;',   '&#8254;', true, 'overline'],\r\n\t['&curren;',  '&#164;',  true, 'currency sign'],\r\n\t['&brvbar;',  '&#166;',  true, 'broken bar'],\r\n\t['&uml;',     '&#168;',  true, 'diaeresis'],\r\n\t['&iexcl;',   '&#161;',  true, 'inverted exclamation mark'],\r\n\t['&iquest;',  '&#191;',  true, 'turned question mark'],\r\n\t['&circ;',    '&#710;',  true, 'circumflex accent'],\r\n\t['&tilde;',   '&#732;',  true, 'small tilde'],\r\n\t['&deg;',     '&#176;',  true, 'degree sign'],\r\n\t['&minus;',   '&#8722;', true, 'minus sign'],\r\n\t['&plusmn;',  '&#177;',  true, 'plus-minus sign'],\r\n\t['&divide;',  '&#247;',  true, 'division sign'],\r\n\t['&frasl;',   '&#8260;', true, 'fraction slash'],\r\n\t['&times;',   '&#215;',  true, 'multiplication sign'],\r\n\t['&sup1;',    '&#185;',  true, 'superscript one'],\r\n\t['&sup2;',    '&#178;',  true, 'superscript two'],\r\n\t['&sup3;',    '&#179;',  true, 'superscript three'],\r\n\t['&frac14;',  '&#188;',  true, 'fraction one quarter'],\r\n\t['&frac12;',  '&#189;',  true, 'fraction one half'],\r\n\t['&frac34;',  '&#190;',  true, 'fraction three quarters'],\r\n// math / logical\r\n\t['&fnof;',    '&#402;',  true, 'function / florin'],\r\n\t['&int;',     '&#8747;', true, 'integral'],\r\n\t['&sum;',     '&#8721;', true, 'n-ary sumation'],\r\n\t['&infin;',   '&#8734;', true, 'infinity'],\r\n\t['&radic;',   '&#8730;', true, 'square root'],\r\n\t['&sim;',     '&#8764;', false,'similar to'],\r\n\t['&cong;',    '&#8773;', false,'approximately equal to'],\r\n\t['&asymp;',   '&#8776;', true, 'almost equal to'],\r\n\t['&ne;',      '&#8800;', true, 'not equal to'],\r\n\t['&equiv;',   '&#8801;', true, 'identical to'],\r\n\t['&isin;',    '&#8712;', false,'element of'],\r\n\t['&notin;',   '&#8713;', false,'not an element of'],\r\n\t['&ni;',      '&#8715;', false,'contains as member'],\r\n\t['&prod;',    '&#8719;', true, 'n-ary product'],\r\n\t['&and;',     '&#8743;', false,'logical and'],\r\n\t['&or;',      '&#8744;', false,'logical or'],\r\n\t['&not;',     '&#172;',  true, 'not sign'],\r\n\t['&cap;',     '&#8745;', true, 'intersection'],\r\n\t['&cup;',     '&#8746;', false,'union'],\r\n\t['&part;',    '&#8706;', true, 'partial differential'],\r\n\t['&forall;',  '&#8704;', false,'for all'],\r\n\t['&exist;',   '&#8707;', false,'there exists'],\r\n\t['&empty;',   '&#8709;', false,'diameter'],\r\n\t['&nabla;',   '&#8711;', false,'backward difference'],\r\n\t['&lowast;',  '&#8727;', false,'asterisk operator'],\r\n\t['&prop;',    '&#8733;', false,'proportional to'],\r\n\t['&ang;',     '&#8736;', false,'angle'],\r\n// undefined\r\n\t['&acute;',   '&#180;',  true, 'acute accent'],\r\n\t['&cedil;',   '&#184;',  true, 'cedilla'],\r\n\t['&ordf;',    '&#170;',  true, 'feminine ordinal indicator'],\r\n\t['&ordm;',    '&#186;',  true, 'masculine ordinal indicator'],\r\n\t['&dagger;',  '&#8224;', true, 'dagger'],\r\n\t['&Dagger;',  '&#8225;', true, 'double dagger'],\r\n// alphabetical special chars\r\n\t['&Agrave;',  '&#192;',  true, 'A - grave'],\r\n\t['&Aacute;',  '&#193;',  true, 'A - acute'],\r\n\t['&Acirc;',   '&#194;',  true, 'A - circumflex'],\r\n\t['&Atilde;',  '&#195;',  true, 'A - tilde'],\r\n\t['&Auml;',    '&#196;',  true, 'A - diaeresis'],\r\n\t['&Aring;',   '&#197;',  true, 'A - ring above'],\r\n\t['&AElig;',   '&#198;',  true, 'ligature AE'],\r\n\t['&Ccedil;',  '&#199;',  true, 'C - cedilla'],\r\n\t['&Egrave;',  '&#200;',  true, 'E - grave'],\r\n\t['&Eacute;',  '&#201;',  true, 'E - acute'],\r\n\t['&Ecirc;',   '&#202;',  true, 'E - circumflex'],\r\n\t['&Euml;',    '&#203;',  true, 'E - diaeresis'],\r\n\t['&Igrave;',  '&#204;',  true, 'I - grave'],\r\n\t['&Iacute;',  '&#205;',  true, 'I - acute'],\r\n\t['&Icirc;',   '&#206;',  true, 'I - circumflex'],\r\n\t['&Iuml;',    '&#207;',  true, 'I - diaeresis'],\r\n\t['&ETH;',     '&#208;',  true, 'ETH'],\r\n\t['&Ntilde;',  '&#209;',  true, 'N - tilde'],\r\n\t['&Ograve;',  '&#210;',  true, 'O - grave'],\r\n\t['&Oacute;',  '&#211;',  true, 'O - acute'],\r\n\t['&Ocirc;',   '&#212;',  true, 'O - circumflex'],\r\n\t['&Otilde;',  '&#213;',  true, 'O - tilde'],\r\n\t['&Ouml;',    '&#214;',  true, 'O - diaeresis'],\r\n\t['&Oslash;',  '&#216;',  true, 'O - slash'],\r\n\t['&OElig;',   '&#338;',  true, 'ligature OE'],\r\n\t['&Scaron;',  '&#352;',  true, 'S - caron'],\r\n\t['&Ugrave;',  '&#217;',  true, 'U - grave'],\r\n\t['&Uacute;',  '&#218;',  true, 'U - acute'],\r\n\t['&Ucirc;',   '&#219;',  true, 'U - circumflex'],\r\n\t['&Uuml;',    '&#220;',  true, 'U - diaeresis'],\r\n\t['&Yacute;',  '&#221;',  true, 'Y - acute'],\r\n\t['&Yuml;',    '&#376;',  true, 'Y - diaeresis'],\r\n\t['&THORN;',   '&#222;',  true, 'THORN'],\r\n\t['&agrave;',  '&#224;',  true, 'a - grave'],\r\n\t['&aacute;',  '&#225;',  true, 'a - acute'],\r\n\t['&acirc;',   '&#226;',  true, 'a - circumflex'],\r\n\t['&atilde;',  '&#227;',  true, 'a - tilde'],\r\n\t['&auml;',    '&#228;',  true, 'a - diaeresis'],\r\n\t['&aring;',   '&#229;',  true, 'a - ring above'],\r\n\t['&aelig;',   '&#230;',  true, 'ligature ae'],\r\n\t['&ccedil;',  '&#231;',  true, 'c - cedilla'],\r\n\t['&egrave;',  '&#232;',  true, 'e - grave'],\r\n\t['&eacute;',  '&#233;',  true, 'e - acute'],\r\n\t['&ecirc;',   '&#234;',  true, 'e - circumflex'],\r\n\t['&euml;',    '&#235;',  true, 'e - diaeresis'],\r\n\t['&igrave;',  '&#236;',  true, 'i - grave'],\r\n\t['&iacute;',  '&#237;',  true, 'i - acute'],\r\n\t['&icirc;',   '&#238;',  true, 'i - circumflex'],\r\n\t['&iuml;',    '&#239;',  true, 'i - diaeresis'],\r\n\t['&eth;',     '&#240;',  true, 'eth'],\r\n\t['&ntilde;',  '&#241;',  true, 'n - tilde'],\r\n\t['&ograve;',  '&#242;',  true, 'o - grave'],\r\n\t['&oacute;',  '&#243;',  true, 'o - acute'],\r\n\t['&ocirc;',   '&#244;',  true, 'o - circumflex'],\r\n\t['&otilde;',  '&#245;',  true, 'o - tilde'],\r\n\t['&ouml;',    '&#246;',  true, 'o - diaeresis'],\r\n\t['&oslash;',  '&#248;',  true, 'o slash'],\r\n\t['&oelig;',   '&#339;',  true, 'ligature oe'],\r\n\t['&scaron;',  '&#353;',  true, 's - caron'],\r\n\t['&ugrave;',  '&#249;',  true, 'u - grave'],\r\n\t['&uacute;',  '&#250;',  true, 'u - acute'],\r\n\t['&ucirc;',   '&#251;',  true, 'u - circumflex'],\r\n\t['&uuml;',    '&#252;',  true, 'u - diaeresis'],\r\n\t['&yacute;',  '&#253;',  true, 'y - acute'],\r\n\t['&thorn;',   '&#254;',  true, 'thorn'],\r\n\t['&yuml;',    '&#255;',  true, 'y - diaeresis'],\r\n\t['&Alpha;',   '&#913;',  true, 'Alpha'],\r\n\t['&Beta;',    '&#914;',  true, 'Beta'],\r\n\t['&Gamma;',   '&#915;',  true, 'Gamma'],\r\n\t['&Delta;',   '&#916;',  true, 'Delta'],\r\n\t['&Epsilon;', '&#917;',  true, 'Epsilon'],\r\n\t['&Zeta;',    '&#918;',  true, 'Zeta'],\r\n\t['&Eta;',     '&#919;',  true, 'Eta'],\r\n\t['&Theta;',   '&#920;',  true, 'Theta'],\r\n\t['&Iota;',    '&#921;',  true, 'Iota'],\r\n\t['&Kappa;',   '&#922;',  true, 'Kappa'],\r\n\t['&Lambda;',  '&#923;',  true, 'Lambda'],\r\n\t['&Mu;',      '&#924;',  true, 'Mu'],\r\n\t['&Nu;',      '&#925;',  true, 'Nu'],\r\n\t['&Xi;',      '&#926;',  true, 'Xi'],\r\n\t['&Omicron;', '&#927;',  true, 'Omicron'],\r\n\t['&Pi;',      '&#928;',  true, 'Pi'],\r\n\t['&Rho;',     '&#929;',  true, 'Rho'],\r\n\t['&Sigma;',   '&#931;',  true, 'Sigma'],\r\n\t['&Tau;',     '&#932;',  true, 'Tau'],\r\n\t['&Upsilon;', '&#933;',  true, 'Upsilon'],\r\n\t['&Phi;',     '&#934;',  true, 'Phi'],\r\n\t['&Chi;',     '&#935;',  true, 'Chi'],\r\n\t['&Psi;',     '&#936;',  true, 'Psi'],\r\n\t['&Omega;',   '&#937;',  true, 'Omega'],\r\n\t['&alpha;',   '&#945;',  true, 'alpha'],\r\n\t['&beta;',    '&#946;',  true, 'beta'],\r\n\t['&gamma;',   '&#947;',  true, 'gamma'],\r\n\t['&delta;',   '&#948;',  true, 'delta'],\r\n\t['&epsilon;', '&#949;',  true, 'epsilon'],\r\n\t['&zeta;',    '&#950;',  true, 'zeta'],\r\n\t['&eta;',     '&#951;',  true, 'eta'],\r\n\t['&theta;',   '&#952;',  true, 'theta'],\r\n\t['&iota;',    '&#953;',  true, 'iota'],\r\n\t['&kappa;',   '&#954;',  true, 'kappa'],\r\n\t['&lambda;',  '&#955;',  true, 'lambda'],\r\n\t['&mu;',      '&#956;',  true, 'mu'],\r\n\t['&nu;',      '&#957;',  true, 'nu'],\r\n\t['&xi;',      '&#958;',  true, 'xi'],\r\n\t['&omicron;', '&#959;',  true, 'omicron'],\r\n\t['&pi;',      '&#960;',  true, 'pi'],\r\n\t['&rho;',     '&#961;',  true, 'rho'],\r\n\t['&sigmaf;',  '&#962;',  true, 'final sigma'],\r\n\t['&sigma;',   '&#963;',  true, 'sigma'],\r\n\t['&tau;',     '&#964;',  true, 'tau'],\r\n\t['&upsilon;', '&#965;',  true, 'upsilon'],\r\n\t['&phi;',     '&#966;',  true, 'phi'],\r\n\t['&chi;',     '&#967;',  true, 'chi'],\r\n\t['&psi;',     '&#968;',  true, 'psi'],\r\n\t['&omega;',   '&#969;',  true, 'omega'],\r\n// symbols\r\n\t['&alefsym;', '&#8501;', false,'alef symbol'],\r\n\t['&piv;',     '&#982;',  false,'pi symbol'],\r\n\t['&real;',    '&#8476;', false,'real part symbol'],\r\n\t['&thetasym;','&#977;',  false,'theta symbol'],\r\n\t['&upsih;',   '&#978;',  false,'upsilon - hook symbol'],\r\n\t['&weierp;',  '&#8472;', false,'Weierstrass p'],\r\n\t['&image;',   '&#8465;', false,'imaginary part'],\r\n// arrows\r\n\t['&larr;',    '&#8592;', true, 'leftwards arrow'],\r\n\t['&uarr;',    '&#8593;', true, 'upwards arrow'],\r\n\t['&rarr;',    '&#8594;', true, 'rightwards arrow'],\r\n\t['&darr;',    '&#8595;', true, 'downwards arrow'],\r\n\t['&harr;',    '&#8596;', true, 'left right arrow'],\r\n\t['&crarr;',   '&#8629;', false,'carriage return'],\r\n\t['&lArr;',    '&#8656;', false,'leftwards double arrow'],\r\n\t['&uArr;',    '&#8657;', false,'upwards double arrow'],\r\n\t['&rArr;',    '&#8658;', false,'rightwards double arrow'],\r\n\t['&dArr;',    '&#8659;', false,'downwards double arrow'],\r\n\t['&hArr;',    '&#8660;', false,'left right double arrow'],\r\n\t['&there4;',  '&#8756;', false,'therefore'],\r\n\t['&sub;',     '&#8834;', false,'subset of'],\r\n\t['&sup;',     '&#8835;', false,'superset of'],\r\n\t['&nsub;',    '&#8836;', false,'not a subset of'],\r\n\t['&sube;',    '&#8838;', false,'subset of or equal to'],\r\n\t['&supe;',    '&#8839;', false,'superset of or equal to'],\r\n\t['&oplus;',   '&#8853;', false,'circled plus'],\r\n\t['&otimes;',  '&#8855;', false,'circled times'],\r\n\t['&perp;',    '&#8869;', false,'perpendicular'],\r\n\t['&sdot;',    '&#8901;', false,'dot operator'],\r\n\t['&lceil;',   '&#8968;', false,'left ceiling'],\r\n\t['&rceil;',   '&#8969;', false,'right ceiling'],\r\n\t['&lfloor;',  '&#8970;', false,'left floor'],\r\n\t['&rfloor;',  '&#8971;', false,'right floor'],\r\n\t['&lang;',    '&#9001;', false,'left-pointing angle bracket'],\r\n\t['&rang;',    '&#9002;', false,'right-pointing angle bracket'],\r\n\t['&loz;',     '&#9674;', true, 'lozenge'],\r\n\t['&spades;',  '&#9824;', true, 'black spade suit'],\r\n\t['&clubs;',   '&#9827;', true, 'black club suit'],\r\n\t['&hearts;',  '&#9829;', true, 'black heart suit'],\r\n\t['&diams;',   '&#9830;', true, 'black diamond suit'],\r\n\t['&ensp;',    '&#8194;', false,'en space'],\r\n\t['&emsp;',    '&#8195;', false,'em space'],\r\n\t['&thinsp;',  '&#8201;', false,'thin space'],\r\n\t['&zwnj;',    '&#8204;', false,'zero width non-joiner'],\r\n\t['&zwj;',     '&#8205;', false,'zero width joiner'],\r\n\t['&lrm;',     '&#8206;', false,'left-to-right mark'],\r\n\t['&rlm;',     '&#8207;', false,'right-to-left mark'],\r\n\t['&shy;',     '&#173;',  false,'soft hyphen']\r\n];\r\n\r\ntinyMCEPopup.onInit.add(function() {\r\n\ttinyMCEPopup.dom.setHTML('charmapView', renderCharMapHTML());\r\n\taddKeyboardNavigation();\r\n});\r\n\r\nfunction addKeyboardNavigation(){\r\n\tvar tableElm, cells, settings;\r\n\r\n\tcells = tinyMCEPopup.dom.select(\".charmaplink\", \"charmapgroup\");\r\n\r\n\tsettings ={\r\n\t\troot: \"charmapgroup\",\r\n\t\titems: cells\r\n\t};\r\n\r\n\ttinyMCEPopup.editor.windowManager.createInstance('tinymce.ui.KeyboardNavigation', settings, tinyMCEPopup.dom);\r\n}\r\n\r\nfunction renderCharMapHTML() {\r\n\tvar charsPerRow = 20, tdWidth=20, tdHeight=20, i;\r\n\tvar html = '<div id=\"charmapgroup\" aria-labelledby=\"charmap_label\" tabindex=\"0\" role=\"listbox\">'+\r\n\t'<table role=\"presentation\" border=\"0\" cellspacing=\"1\" cellpadding=\"0\" width=\"' + (tdWidth*charsPerRow) + \r\n\t'\"><tr height=\"' + tdHeight + '\">';\r\n\tvar cols=-1;\r\n\r\n\tfor (i=0; i<charmap.length; i++) {\r\n\t\tvar previewCharFn;\r\n\r\n\t\tif (charmap[i][2]==true) {\r\n\t\t\tcols++;\r\n\t\t\tpreviewCharFn = 'previewChar(\\'' + charmap[i][1].substring(1,charmap[i][1].length) + '\\',\\'' + charmap[i][0].substring(1,charmap[i][0].length) + '\\',\\'' + charmap[i][3] + '\\');';\r\n\t\t\thtml += ''\r\n\t\t\t\t+ '<td class=\"charmap\">'\r\n\t\t\t\t+ '<a class=\"charmaplink\" role=\"button\" onmouseover=\"'+previewCharFn+'\" onfocus=\"'+previewCharFn+'\" href=\"javascript:void(0)\" onclick=\"insertChar(\\'' + charmap[i][1].substring(2,charmap[i][1].length-1) + '\\');\" onclick=\"return false;\" onmousedown=\"return false;\" title=\"' + charmap[i][3] + '\">'\r\n\t\t\t\t+ charmap[i][1]\r\n\t\t\t\t+ '</a></td>';\r\n\t\t\tif ((cols+1) % charsPerRow == 0)\r\n\t\t\t\thtml += '</tr><tr height=\"' + tdHeight + '\">';\r\n\t\t}\r\n\t }\r\n\r\n\tif (cols % charsPerRow > 0) {\r\n\t\tvar padd = charsPerRow - (cols % charsPerRow);\r\n\t\tfor (var i=0; i<padd-1; i++)\r\n\t\t\thtml += '<td width=\"' + tdWidth + '\" height=\"' + tdHeight + '\" class=\"charmap\">&nbsp;</td>';\r\n\t}\r\n\r\n\thtml += '</tr></table></div>';\r\n\thtml = html.replace(/<tr height=\"20\"><\\/tr>/g, '');\r\n\r\n\treturn html;\r\n}\r\n\r\nfunction insertChar(chr) {\r\n\ttinyMCEPopup.execCommand('mceInsertContent', false, '&#' + chr + ';');\r\n\r\n\t// Refocus in window\r\n\tif (tinyMCEPopup.isWindow)\r\n\t\twindow.focus();\r\n\r\n\ttinyMCEPopup.editor.focus();\r\n\ttinyMCEPopup.close();\r\n}\r\n\r\nfunction previewChar(codeA, codeB, codeN) {\r\n\tvar elmA = document.getElementById('codeA');\r\n\tvar elmB = document.getElementById('codeB');\r\n\tvar elmV = document.getElementById('codeV');\r\n\tvar elmN = document.getElementById('codeN');\r\n\r\n\tif (codeA=='#160;') {\r\n\t\telmV.innerHTML = '__';\r\n\t} else {\r\n\t\telmV.innerHTML = '&' + codeA;\r\n\t}\r\n\r\n\telmB.innerHTML = '&amp;' + codeA;\r\n\telmA.innerHTML = '&amp;' + codeB;\r\n\telmN.innerHTML = codeN;\r\n}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/js/color_picker.js",
    "content": "tinyMCEPopup.requireLangPack();\r\n\r\nvar detail = 50, strhex = \"0123456789ABCDEF\", i, isMouseDown = false, isMouseOver = false;\r\n\r\nvar colors = [\r\n\t\"#000000\",\"#000033\",\"#000066\",\"#000099\",\"#0000cc\",\"#0000ff\",\"#330000\",\"#330033\",\r\n\t\"#330066\",\"#330099\",\"#3300cc\",\"#3300ff\",\"#660000\",\"#660033\",\"#660066\",\"#660099\",\r\n\t\"#6600cc\",\"#6600ff\",\"#990000\",\"#990033\",\"#990066\",\"#990099\",\"#9900cc\",\"#9900ff\",\r\n\t\"#cc0000\",\"#cc0033\",\"#cc0066\",\"#cc0099\",\"#cc00cc\",\"#cc00ff\",\"#ff0000\",\"#ff0033\",\r\n\t\"#ff0066\",\"#ff0099\",\"#ff00cc\",\"#ff00ff\",\"#003300\",\"#003333\",\"#003366\",\"#003399\",\r\n\t\"#0033cc\",\"#0033ff\",\"#333300\",\"#333333\",\"#333366\",\"#333399\",\"#3333cc\",\"#3333ff\",\r\n\t\"#663300\",\"#663333\",\"#663366\",\"#663399\",\"#6633cc\",\"#6633ff\",\"#993300\",\"#993333\",\r\n\t\"#993366\",\"#993399\",\"#9933cc\",\"#9933ff\",\"#cc3300\",\"#cc3333\",\"#cc3366\",\"#cc3399\",\r\n\t\"#cc33cc\",\"#cc33ff\",\"#ff3300\",\"#ff3333\",\"#ff3366\",\"#ff3399\",\"#ff33cc\",\"#ff33ff\",\r\n\t\"#006600\",\"#006633\",\"#006666\",\"#006699\",\"#0066cc\",\"#0066ff\",\"#336600\",\"#336633\",\r\n\t\"#336666\",\"#336699\",\"#3366cc\",\"#3366ff\",\"#666600\",\"#666633\",\"#666666\",\"#666699\",\r\n\t\"#6666cc\",\"#6666ff\",\"#996600\",\"#996633\",\"#996666\",\"#996699\",\"#9966cc\",\"#9966ff\",\r\n\t\"#cc6600\",\"#cc6633\",\"#cc6666\",\"#cc6699\",\"#cc66cc\",\"#cc66ff\",\"#ff6600\",\"#ff6633\",\r\n\t\"#ff6666\",\"#ff6699\",\"#ff66cc\",\"#ff66ff\",\"#009900\",\"#009933\",\"#009966\",\"#009999\",\r\n\t\"#0099cc\",\"#0099ff\",\"#339900\",\"#339933\",\"#339966\",\"#339999\",\"#3399cc\",\"#3399ff\",\r\n\t\"#669900\",\"#669933\",\"#669966\",\"#669999\",\"#6699cc\",\"#6699ff\",\"#999900\",\"#999933\",\r\n\t\"#999966\",\"#999999\",\"#9999cc\",\"#9999ff\",\"#cc9900\",\"#cc9933\",\"#cc9966\",\"#cc9999\",\r\n\t\"#cc99cc\",\"#cc99ff\",\"#ff9900\",\"#ff9933\",\"#ff9966\",\"#ff9999\",\"#ff99cc\",\"#ff99ff\",\r\n\t\"#00cc00\",\"#00cc33\",\"#00cc66\",\"#00cc99\",\"#00cccc\",\"#00ccff\",\"#33cc00\",\"#33cc33\",\r\n\t\"#33cc66\",\"#33cc99\",\"#33cccc\",\"#33ccff\",\"#66cc00\",\"#66cc33\",\"#66cc66\",\"#66cc99\",\r\n\t\"#66cccc\",\"#66ccff\",\"#99cc00\",\"#99cc33\",\"#99cc66\",\"#99cc99\",\"#99cccc\",\"#99ccff\",\r\n\t\"#cccc00\",\"#cccc33\",\"#cccc66\",\"#cccc99\",\"#cccccc\",\"#ccccff\",\"#ffcc00\",\"#ffcc33\",\r\n\t\"#ffcc66\",\"#ffcc99\",\"#ffcccc\",\"#ffccff\",\"#00ff00\",\"#00ff33\",\"#00ff66\",\"#00ff99\",\r\n\t\"#00ffcc\",\"#00ffff\",\"#33ff00\",\"#33ff33\",\"#33ff66\",\"#33ff99\",\"#33ffcc\",\"#33ffff\",\r\n\t\"#66ff00\",\"#66ff33\",\"#66ff66\",\"#66ff99\",\"#66ffcc\",\"#66ffff\",\"#99ff00\",\"#99ff33\",\r\n\t\"#99ff66\",\"#99ff99\",\"#99ffcc\",\"#99ffff\",\"#ccff00\",\"#ccff33\",\"#ccff66\",\"#ccff99\",\r\n\t\"#ccffcc\",\"#ccffff\",\"#ffff00\",\"#ffff33\",\"#ffff66\",\"#ffff99\",\"#ffffcc\",\"#ffffff\"\r\n];\r\n\r\nvar named = {\r\n\t'#F0F8FF':'Alice Blue','#FAEBD7':'Antique White','#00FFFF':'Aqua','#7FFFD4':'Aquamarine','#F0FFFF':'Azure','#F5F5DC':'Beige',\r\n\t'#FFE4C4':'Bisque','#000000':'Black','#FFEBCD':'Blanched Almond','#0000FF':'Blue','#8A2BE2':'Blue Violet','#A52A2A':'Brown',\r\n\t'#DEB887':'Burly Wood','#5F9EA0':'Cadet Blue','#7FFF00':'Chartreuse','#D2691E':'Chocolate','#FF7F50':'Coral','#6495ED':'Cornflower Blue',\r\n\t'#FFF8DC':'Cornsilk','#DC143C':'Crimson','#00FFFF':'Cyan','#00008B':'Dark Blue','#008B8B':'Dark Cyan','#B8860B':'Dark Golden Rod',\r\n\t'#A9A9A9':'Dark Gray','#A9A9A9':'Dark Grey','#006400':'Dark Green','#BDB76B':'Dark Khaki','#8B008B':'Dark Magenta','#556B2F':'Dark Olive Green',\r\n\t'#FF8C00':'Darkorange','#9932CC':'Dark Orchid','#8B0000':'Dark Red','#E9967A':'Dark Salmon','#8FBC8F':'Dark Sea Green','#483D8B':'Dark Slate Blue',\r\n\t'#2F4F4F':'Dark Slate Gray','#2F4F4F':'Dark Slate Grey','#00CED1':'Dark Turquoise','#9400D3':'Dark Violet','#FF1493':'Deep Pink','#00BFFF':'Deep Sky Blue',\r\n\t'#696969':'Dim Gray','#696969':'Dim Grey','#1E90FF':'Dodger Blue','#B22222':'Fire Brick','#FFFAF0':'Floral White','#228B22':'Forest Green',\r\n\t'#FF00FF':'Fuchsia','#DCDCDC':'Gainsboro','#F8F8FF':'Ghost White','#FFD700':'Gold','#DAA520':'Golden Rod','#808080':'Gray','#808080':'Grey',\r\n\t'#008000':'Green','#ADFF2F':'Green Yellow','#F0FFF0':'Honey Dew','#FF69B4':'Hot Pink','#CD5C5C':'Indian Red','#4B0082':'Indigo','#FFFFF0':'Ivory',\r\n\t'#F0E68C':'Khaki','#E6E6FA':'Lavender','#FFF0F5':'Lavender Blush','#7CFC00':'Lawn Green','#FFFACD':'Lemon Chiffon','#ADD8E6':'Light Blue',\r\n\t'#F08080':'Light Coral','#E0FFFF':'Light Cyan','#FAFAD2':'Light Golden Rod Yellow','#D3D3D3':'Light Gray','#D3D3D3':'Light Grey','#90EE90':'Light Green',\r\n\t'#FFB6C1':'Light Pink','#FFA07A':'Light Salmon','#20B2AA':'Light Sea Green','#87CEFA':'Light Sky Blue','#778899':'Light Slate Gray','#778899':'Light Slate Grey',\r\n\t'#B0C4DE':'Light Steel Blue','#FFFFE0':'Light Yellow','#00FF00':'Lime','#32CD32':'Lime Green','#FAF0E6':'Linen','#FF00FF':'Magenta','#800000':'Maroon',\r\n\t'#66CDAA':'Medium Aqua Marine','#0000CD':'Medium Blue','#BA55D3':'Medium Orchid','#9370D8':'Medium Purple','#3CB371':'Medium Sea Green','#7B68EE':'Medium Slate Blue',\r\n\t'#00FA9A':'Medium Spring Green','#48D1CC':'Medium Turquoise','#C71585':'Medium Violet Red','#191970':'Midnight Blue','#F5FFFA':'Mint Cream','#FFE4E1':'Misty Rose','#FFE4B5':'Moccasin',\r\n\t'#FFDEAD':'Navajo White','#000080':'Navy','#FDF5E6':'Old Lace','#808000':'Olive','#6B8E23':'Olive Drab','#FFA500':'Orange','#FF4500':'Orange Red','#DA70D6':'Orchid',\r\n\t'#EEE8AA':'Pale Golden Rod','#98FB98':'Pale Green','#AFEEEE':'Pale Turquoise','#D87093':'Pale Violet Red','#FFEFD5':'Papaya Whip','#FFDAB9':'Peach Puff',\r\n\t'#CD853F':'Peru','#FFC0CB':'Pink','#DDA0DD':'Plum','#B0E0E6':'Powder Blue','#800080':'Purple','#FF0000':'Red','#BC8F8F':'Rosy Brown','#4169E1':'Royal Blue',\r\n\t'#8B4513':'Saddle Brown','#FA8072':'Salmon','#F4A460':'Sandy Brown','#2E8B57':'Sea Green','#FFF5EE':'Sea Shell','#A0522D':'Sienna','#C0C0C0':'Silver',\r\n\t'#87CEEB':'Sky Blue','#6A5ACD':'Slate Blue','#708090':'Slate Gray','#708090':'Slate Grey','#FFFAFA':'Snow','#00FF7F':'Spring Green',\r\n\t'#4682B4':'Steel Blue','#D2B48C':'Tan','#008080':'Teal','#D8BFD8':'Thistle','#FF6347':'Tomato','#40E0D0':'Turquoise','#EE82EE':'Violet',\r\n\t'#F5DEB3':'Wheat','#FFFFFF':'White','#F5F5F5':'White Smoke','#FFFF00':'Yellow','#9ACD32':'Yellow Green'\r\n};\r\n\r\nvar namedLookup = {};\r\n\r\nfunction init() {\r\n\tvar inputColor = convertRGBToHex(tinyMCEPopup.getWindowArg('input_color')), key, value;\r\n\r\n\ttinyMCEPopup.resizeToInnerSize();\r\n\r\n\tgeneratePicker();\r\n\tgenerateWebColors();\r\n\tgenerateNamedColors();\r\n\r\n\tif (inputColor) {\r\n\t\tchangeFinalColor(inputColor);\r\n\r\n\t\tcol = convertHexToRGB(inputColor);\r\n\r\n\t\tif (col)\r\n\t\t\tupdateLight(col.r, col.g, col.b);\r\n\t}\r\n\t\r\n\tfor (key in named) {\r\n\t\tvalue = named[key];\r\n\t\tnamedLookup[value.replace(/\\s+/, '').toLowerCase()] = key.replace(/#/, '').toLowerCase();\r\n\t}\r\n}\r\n\r\nfunction toHexColor(color) {\r\n\tvar matches, red, green, blue, toInt = parseInt;\r\n\r\n\tfunction hex(value) {\r\n\t\tvalue = parseInt(value).toString(16);\r\n\r\n\t\treturn value.length > 1 ? value : '0' + value; // Padd with leading zero\r\n\t};\r\n\r\n\tcolor = color.replace(/[\\s#]+/g, '').toLowerCase();\r\n\tcolor = namedLookup[color] || color;\r\n\tmatches = /^rgb\\((\\d{1,3}),(\\d{1,3}),(\\d{1,3})\\)|([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})|([a-f0-9])([a-f0-9])([a-f0-9])$/.exec(color);\r\n\r\n\tif (matches) {\r\n\t\tif (matches[1]) {\r\n\t\t\tred = toInt(matches[1]);\r\n\t\t\tgreen = toInt(matches[2]);\r\n\t\t\tblue = toInt(matches[3]);\r\n\t\t} else if (matches[4]) {\r\n\t\t\tred = toInt(matches[4], 16);\r\n\t\t\tgreen = toInt(matches[5], 16);\r\n\t\t\tblue = toInt(matches[6], 16);\r\n\t\t} else if (matches[7]) {\r\n\t\t\tred = toInt(matches[7] + matches[7], 16);\r\n\t\t\tgreen = toInt(matches[8] + matches[8], 16);\r\n\t\t\tblue = toInt(matches[9] + matches[9], 16);\r\n\t\t}\r\n\r\n\t\treturn '#' + hex(red) + hex(green) + hex(blue);\r\n\t}\r\n\r\n\treturn '';\r\n}\r\n\r\nfunction insertAction() {\r\n\tvar color = document.getElementById(\"color\").value, f = tinyMCEPopup.getWindowArg('func');\r\n\r\n\ttinyMCEPopup.restoreSelection();\r\n\r\n\tif (f)\r\n\t\tf(toHexColor(color));\r\n\r\n\ttinyMCEPopup.close();\r\n}\r\n\r\nfunction showColor(color, name) {\r\n\tif (name)\r\n\t\tdocument.getElementById(\"colorname\").innerHTML = name;\r\n\r\n\tdocument.getElementById(\"preview\").style.backgroundColor = color;\r\n\tdocument.getElementById(\"color\").value = color.toUpperCase();\r\n}\r\n\r\nfunction convertRGBToHex(col) {\r\n\tvar re = new RegExp(\"rgb\\\\s*\\\\(\\\\s*([0-9]+).*,\\\\s*([0-9]+).*,\\\\s*([0-9]+).*\\\\)\", \"gi\");\r\n\r\n\tif (!col)\r\n\t\treturn col;\r\n\r\n\tvar rgb = col.replace(re, \"$1,$2,$3\").split(',');\r\n\tif (rgb.length == 3) {\r\n\t\tr = parseInt(rgb[0]).toString(16);\r\n\t\tg = parseInt(rgb[1]).toString(16);\r\n\t\tb = parseInt(rgb[2]).toString(16);\r\n\r\n\t\tr = r.length == 1 ? '0' + r : r;\r\n\t\tg = g.length == 1 ? '0' + g : g;\r\n\t\tb = b.length == 1 ? '0' + b : b;\r\n\r\n\t\treturn \"#\" + r + g + b;\r\n\t}\r\n\r\n\treturn col;\r\n}\r\n\r\nfunction convertHexToRGB(col) {\r\n\tif (col.indexOf('#') != -1) {\r\n\t\tcol = col.replace(new RegExp('[^0-9A-F]', 'gi'), '');\r\n\r\n\t\tr = parseInt(col.substring(0, 2), 16);\r\n\t\tg = parseInt(col.substring(2, 4), 16);\r\n\t\tb = parseInt(col.substring(4, 6), 16);\r\n\r\n\t\treturn {r : r, g : g, b : b};\r\n\t}\r\n\r\n\treturn null;\r\n}\r\n\r\nfunction generatePicker() {\r\n\tvar el = document.getElementById('light'), h = '', i;\r\n\r\n\tfor (i = 0; i < detail; i++){\r\n\t\th += '<div id=\"gs'+i+'\" style=\"background-color:#000000; width:15px; height:3px; border-style:none; border-width:0px;\"'\r\n\t\t+ ' onclick=\"changeFinalColor(this.style.backgroundColor)\"'\r\n\t\t+ ' onmousedown=\"isMouseDown = true; return false;\"'\r\n\t\t+ ' onmouseup=\"isMouseDown = false;\"'\r\n\t\t+ ' onmousemove=\"if (isMouseDown && isMouseOver) changeFinalColor(this.style.backgroundColor); return false;\"'\r\n\t\t+ ' onmouseover=\"isMouseOver = true;\"'\r\n\t\t+ ' onmouseout=\"isMouseOver = false;\"'\r\n\t\t+ '></div>';\r\n\t}\r\n\r\n\tel.innerHTML = h;\r\n}\r\n\r\nfunction generateWebColors() {\r\n\tvar el = document.getElementById('webcolors'), h = '', i;\r\n\r\n\tif (el.className == 'generated')\r\n\t\treturn;\r\n\r\n\t// TODO: VoiceOver doesn't seem to support legend as a label referenced by labelledby.\r\n\th += '<div role=\"listbox\" aria-labelledby=\"webcolors_title\" tabindex=\"0\"><table role=\"presentation\" border=\"0\" cellspacing=\"1\" cellpadding=\"0\">'\r\n\t\t+ '<tr>';\r\n\r\n\tfor (i=0; i<colors.length; i++) {\r\n\t\th += '<td bgcolor=\"' + colors[i] + '\" width=\"10\" height=\"10\">'\r\n\t\t\t+ '<a href=\"javascript:insertAction();\" role=\"option\" tabindex=\"-1\" aria-labelledby=\"web_colors_' + i + '\" onfocus=\"showColor(\\'' + colors[i] + '\\');\" onmouseover=\"showColor(\\'' + colors[i] + '\\');\" style=\"display:block;width:10px;height:10px;overflow:hidden;\">';\r\n\t\tif (tinyMCEPopup.editor.forcedHighContrastMode) {\r\n\t\t\th += '<canvas class=\"mceColorSwatch\" height=\"10\" width=\"10\" data-color=\"' + colors[i] + '\"></canvas>';\r\n\t\t}\r\n\t\th += '<span class=\"mceVoiceLabel\" style=\"display:none;\" id=\"web_colors_' + i + '\">' + colors[i].toUpperCase() + '</span>';\r\n\t\th += '</a></td>';\r\n\t\tif ((i+1) % 18 == 0)\r\n\t\t\th += '</tr><tr>';\r\n\t}\r\n\r\n\th += '</table></div>';\r\n\r\n\tel.innerHTML = h;\r\n\tel.className = 'generated';\r\n\r\n\tpaintCanvas(el);\r\n\tenableKeyboardNavigation(el.firstChild);\r\n}\r\n\r\nfunction paintCanvas(el) {\r\n\ttinyMCEPopup.getWin().tinymce.each(tinyMCEPopup.dom.select('canvas.mceColorSwatch', el), function(canvas) {\r\n\t\tvar context;\r\n\t\tif (canvas.getContext && (context = canvas.getContext(\"2d\"))) {\r\n\t\t\tcontext.fillStyle = canvas.getAttribute('data-color');\r\n\t\t\tcontext.fillRect(0, 0, 10, 10);\r\n\t\t}\r\n\t});\r\n}\r\nfunction generateNamedColors() {\r\n\tvar el = document.getElementById('namedcolors'), h = '', n, v, i = 0;\r\n\r\n\tif (el.className == 'generated')\r\n\t\treturn;\r\n\r\n\tfor (n in named) {\r\n\t\tv = named[n];\r\n\t\th += '<a href=\"javascript:insertAction();\" role=\"option\" tabindex=\"-1\" aria-labelledby=\"named_colors_' + i + '\" onfocus=\"showColor(\\'' + n + '\\',\\'' + v + '\\');\" onmouseover=\"showColor(\\'' + n + '\\',\\'' + v + '\\');\" style=\"background-color: ' + n + '\">';\r\n\t\tif (tinyMCEPopup.editor.forcedHighContrastMode) {\r\n\t\t\th += '<canvas class=\"mceColorSwatch\" height=\"10\" width=\"10\" data-color=\"' + colors[i] + '\"></canvas>';\r\n\t\t}\r\n\t\th += '<span class=\"mceVoiceLabel\" style=\"display:none;\" id=\"named_colors_' + i + '\">' + v + '</span>';\r\n\t\th += '</a>';\r\n\t\ti++;\r\n\t}\r\n\r\n\tel.innerHTML = h;\r\n\tel.className = 'generated';\r\n\r\n\tpaintCanvas(el);\r\n\tenableKeyboardNavigation(el);\r\n}\r\n\r\nfunction enableKeyboardNavigation(el) {\r\n\ttinyMCEPopup.editor.windowManager.createInstance('tinymce.ui.KeyboardNavigation', {\r\n\t\troot: el,\r\n\t\titems: tinyMCEPopup.dom.select('a', el)\r\n\t}, tinyMCEPopup.dom);\r\n}\r\n\r\nfunction dechex(n) {\r\n\treturn strhex.charAt(Math.floor(n / 16)) + strhex.charAt(n % 16);\r\n}\r\n\r\nfunction computeColor(e) {\r\n\tvar x, y, partWidth, partDetail, imHeight, r, g, b, coef, i, finalCoef, finalR, finalG, finalB;\r\n\r\n\tx = e.offsetX ? e.offsetX : (e.target ? e.clientX - e.target.x : 0);\r\n\ty = e.offsetY ? e.offsetY : (e.target ? e.clientY - e.target.y : 0);\r\n\r\n\tpartWidth = document.getElementById('colors').width / 6;\r\n\tpartDetail = detail / 2;\r\n\timHeight = document.getElementById('colors').height;\r\n\r\n\tr = (x >= 0)*(x < partWidth)*255 + (x >= partWidth)*(x < 2*partWidth)*(2*255 - x * 255 / partWidth) + (x >= 4*partWidth)*(x < 5*partWidth)*(-4*255 + x * 255 / partWidth) + (x >= 5*partWidth)*(x < 6*partWidth)*255;\r\n\tg = (x >= 0)*(x < partWidth)*(x * 255 / partWidth) + (x >= partWidth)*(x < 3*partWidth)*255\t+ (x >= 3*partWidth)*(x < 4*partWidth)*(4*255 - x * 255 / partWidth);\r\n\tb = (x >= 2*partWidth)*(x < 3*partWidth)*(-2*255 + x * 255 / partWidth) + (x >= 3*partWidth)*(x < 5*partWidth)*255 + (x >= 5*partWidth)*(x < 6*partWidth)*(6*255 - x * 255 / partWidth);\r\n\r\n\tcoef = (imHeight - y) / imHeight;\r\n\tr = 128 + (r - 128) * coef;\r\n\tg = 128 + (g - 128) * coef;\r\n\tb = 128 + (b - 128) * coef;\r\n\r\n\tchangeFinalColor('#' + dechex(r) + dechex(g) + dechex(b));\r\n\tupdateLight(r, g, b);\r\n}\r\n\r\nfunction updateLight(r, g, b) {\r\n\tvar i, partDetail = detail / 2, finalCoef, finalR, finalG, finalB, color;\r\n\r\n\tfor (i=0; i<detail; i++) {\r\n\t\tif ((i>=0) && (i<partDetail)) {\r\n\t\t\tfinalCoef = i / partDetail;\r\n\t\t\tfinalR = dechex(255 - (255 - r) * finalCoef);\r\n\t\t\tfinalG = dechex(255 - (255 - g) * finalCoef);\r\n\t\t\tfinalB = dechex(255 - (255 - b) * finalCoef);\r\n\t\t} else {\r\n\t\t\tfinalCoef = 2 - i / partDetail;\r\n\t\t\tfinalR = dechex(r * finalCoef);\r\n\t\t\tfinalG = dechex(g * finalCoef);\r\n\t\t\tfinalB = dechex(b * finalCoef);\r\n\t\t}\r\n\r\n\t\tcolor = finalR + finalG + finalB;\r\n\r\n\t\tsetCol('gs' + i, '#'+color);\r\n\t}\r\n}\r\n\r\nfunction changeFinalColor(color) {\r\n\tif (color.indexOf('#') == -1)\r\n\t\tcolor = convertRGBToHex(color);\r\n\r\n\tsetCol('preview', color);\r\n\tdocument.getElementById('color').value = color;\r\n}\r\n\r\nfunction setCol(e, c) {\r\n\ttry {\r\n\t\tdocument.getElementById(e).style.backgroundColor = c;\r\n\t} catch (ex) {\r\n\t\t// Ignore IE warning\r\n\t}\r\n}\r\n\r\ntinyMCEPopup.onInit.add(init);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/js/image.js",
    "content": "var ImageDialog = {\r\n\tpreInit : function() {\r\n\t\tvar url;\r\n\r\n\t\ttinyMCEPopup.requireLangPack();\r\n\r\n\t\tif (url = tinyMCEPopup.getParam(\"external_image_list_url\"))\r\n\t\t\tdocument.write('<script language=\"javascript\" type=\"text/javascript\" src=\"' + tinyMCEPopup.editor.documentBaseURI.toAbsolute(url) + '\"></script>');\r\n\t},\r\n\r\n\tinit : function() {\r\n\t\tvar f = document.forms[0], ed = tinyMCEPopup.editor;\r\n\r\n\t\t// Setup browse button\r\n\t\tdocument.getElementById('srcbrowsercontainer').innerHTML = getBrowserHTML('srcbrowser','src','image','theme_advanced_image');\r\n\t\tif (isVisible('srcbrowser'))\r\n\t\t\tdocument.getElementById('src').style.width = '180px';\r\n\r\n\t\te = ed.selection.getNode();\r\n\r\n\t\tthis.fillFileList('image_list', tinyMCEPopup.getParam('external_image_list', 'tinyMCEImageList'));\r\n\r\n\t\tif (e.nodeName == 'IMG') {\r\n\t\t\tf.src.value = ed.dom.getAttrib(e, 'src');\r\n\t\t\tf.alt.value = ed.dom.getAttrib(e, 'alt');\r\n\t\t\tf.border.value = this.getAttrib(e, 'border');\r\n\t\t\tf.vspace.value = this.getAttrib(e, 'vspace');\r\n\t\t\tf.hspace.value = this.getAttrib(e, 'hspace');\r\n\t\t\tf.width.value = ed.dom.getAttrib(e, 'width');\r\n\t\t\tf.height.value = ed.dom.getAttrib(e, 'height');\r\n\t\t\tf.insert.value = ed.getLang('update');\r\n\t\t\tthis.styleVal = ed.dom.getAttrib(e, 'style');\r\n\t\t\tselectByValue(f, 'image_list', f.src.value);\r\n\t\t\tselectByValue(f, 'align', this.getAttrib(e, 'align'));\r\n\t\t\tthis.updateStyle();\r\n\t\t}\r\n\t},\r\n\r\n\tfillFileList : function(id, l) {\r\n\t\tvar dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl;\r\n\r\n\t\tl = typeof(l) === 'function' ? l() : window[l];\r\n\r\n\t\tif (l && l.length > 0) {\r\n\t\t\tlst.options[lst.options.length] = new Option('', '');\r\n\r\n\t\t\ttinymce.each(l, function(o) {\r\n\t\t\t\tlst.options[lst.options.length] = new Option(o[0], o[1]);\r\n\t\t\t});\r\n\t\t} else\r\n\t\t\tdom.remove(dom.getParent(id, 'tr'));\r\n\t},\r\n\r\n\tupdate : function() {\r\n\t\tvar f = document.forms[0], nl = f.elements, ed = tinyMCEPopup.editor, args = {}, el;\r\n\r\n\t\ttinyMCEPopup.restoreSelection();\r\n\r\n\t\tif (f.src.value === '') {\r\n\t\t\tif (ed.selection.getNode().nodeName == 'IMG') {\r\n\t\t\t\ted.dom.remove(ed.selection.getNode());\r\n\t\t\t\ted.execCommand('mceRepaint');\r\n\t\t\t}\r\n\r\n\t\t\ttinyMCEPopup.close();\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (!ed.settings.inline_styles) {\r\n\t\t\targs = tinymce.extend(args, {\r\n\t\t\t\tvspace : nl.vspace.value,\r\n\t\t\t\thspace : nl.hspace.value,\r\n\t\t\t\tborder : nl.border.value,\r\n\t\t\t\talign : getSelectValue(f, 'align')\r\n\t\t\t});\r\n\t\t} else\r\n\t\t\targs.style = this.styleVal;\r\n\r\n\t\ttinymce.extend(args, {\r\n\t\t\tsrc : f.src.value.replace(/ /g, '%20'),\r\n\t\t\talt : f.alt.value,\r\n\t\t\twidth : f.width.value,\r\n\t\t\theight : f.height.value\r\n\t\t});\r\n\r\n\t\tel = ed.selection.getNode();\r\n\r\n\t\tif (el && el.nodeName == 'IMG') {\r\n\t\t\ted.dom.setAttribs(el, args);\r\n\t\t\ttinyMCEPopup.editor.execCommand('mceRepaint');\r\n\t\t\ttinyMCEPopup.editor.focus();\r\n\t\t} else {\r\n\t\t\ttinymce.each(args, function(value, name) {\r\n\t\t\t\tif (value === \"\") {\r\n\t\t\t\t\tdelete args[name];\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\ted.execCommand('mceInsertContent', false, tinyMCEPopup.editor.dom.createHTML('img', args), {skip_undo : 1});\r\n\t\t\ted.undoManager.add();\r\n\t\t}\r\n\r\n\t\ttinyMCEPopup.close();\r\n\t},\r\n\r\n\tupdateStyle : function() {\r\n\t\tvar dom = tinyMCEPopup.dom, st, v, f = document.forms[0];\r\n\r\n\t\tif (tinyMCEPopup.editor.settings.inline_styles) {\r\n\t\t\tst = tinyMCEPopup.dom.parseStyle(this.styleVal);\r\n\r\n\t\t\t// Handle align\r\n\t\t\tv = getSelectValue(f, 'align');\r\n\t\t\tif (v) {\r\n\t\t\t\tif (v == 'left' || v == 'right') {\r\n\t\t\t\t\tst['float'] = v;\r\n\t\t\t\t\tdelete st['vertical-align'];\r\n\t\t\t\t} else {\r\n\t\t\t\t\tst['vertical-align'] = v;\r\n\t\t\t\t\tdelete st['float'];\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tdelete st['float'];\r\n\t\t\t\tdelete st['vertical-align'];\r\n\t\t\t}\r\n\r\n\t\t\t// Handle border\r\n\t\t\tv = f.border.value;\r\n\t\t\tif (v || v == '0') {\r\n\t\t\t\tif (v == '0')\r\n\t\t\t\t\tst['border'] = '0';\r\n\t\t\t\telse\r\n\t\t\t\t\tst['border'] = v + 'px solid black';\r\n\t\t\t} else\r\n\t\t\t\tdelete st['border'];\r\n\r\n\t\t\t// Handle hspace\r\n\t\t\tv = f.hspace.value;\r\n\t\t\tif (v) {\r\n\t\t\t\tdelete st['margin'];\r\n\t\t\t\tst['margin-left'] = v + 'px';\r\n\t\t\t\tst['margin-right'] = v + 'px';\r\n\t\t\t} else {\r\n\t\t\t\tdelete st['margin-left'];\r\n\t\t\t\tdelete st['margin-right'];\r\n\t\t\t}\r\n\r\n\t\t\t// Handle vspace\r\n\t\t\tv = f.vspace.value;\r\n\t\t\tif (v) {\r\n\t\t\t\tdelete st['margin'];\r\n\t\t\t\tst['margin-top'] = v + 'px';\r\n\t\t\t\tst['margin-bottom'] = v + 'px';\r\n\t\t\t} else {\r\n\t\t\t\tdelete st['margin-top'];\r\n\t\t\t\tdelete st['margin-bottom'];\r\n\t\t\t}\r\n\r\n\t\t\t// Merge\r\n\t\t\tst = tinyMCEPopup.dom.parseStyle(dom.serializeStyle(st), 'img');\r\n\t\t\tthis.styleVal = dom.serializeStyle(st, 'img');\r\n\t\t}\r\n\t},\r\n\r\n\tgetAttrib : function(e, at) {\r\n\t\tvar ed = tinyMCEPopup.editor, dom = ed.dom, v, v2;\r\n\r\n\t\tif (ed.settings.inline_styles) {\r\n\t\t\tswitch (at) {\r\n\t\t\t\tcase 'align':\r\n\t\t\t\t\tif (v = dom.getStyle(e, 'float'))\r\n\t\t\t\t\t\treturn v;\r\n\r\n\t\t\t\t\tif (v = dom.getStyle(e, 'vertical-align'))\r\n\t\t\t\t\t\treturn v;\r\n\r\n\t\t\t\t\tbreak;\r\n\r\n\t\t\t\tcase 'hspace':\r\n\t\t\t\t\tv = dom.getStyle(e, 'margin-left')\r\n\t\t\t\t\tv2 = dom.getStyle(e, 'margin-right');\r\n\t\t\t\t\tif (v && v == v2)\r\n\t\t\t\t\t\treturn parseInt(v.replace(/[^0-9]/g, ''));\r\n\r\n\t\t\t\t\tbreak;\r\n\r\n\t\t\t\tcase 'vspace':\r\n\t\t\t\t\tv = dom.getStyle(e, 'margin-top')\r\n\t\t\t\t\tv2 = dom.getStyle(e, 'margin-bottom');\r\n\t\t\t\t\tif (v && v == v2)\r\n\t\t\t\t\t\treturn parseInt(v.replace(/[^0-9]/g, ''));\r\n\r\n\t\t\t\t\tbreak;\r\n\r\n\t\t\t\tcase 'border':\r\n\t\t\t\t\tv = 0;\r\n\r\n\t\t\t\t\ttinymce.each(['top', 'right', 'bottom', 'left'], function(sv) {\r\n\t\t\t\t\t\tsv = dom.getStyle(e, 'border-' + sv + '-width');\r\n\r\n\t\t\t\t\t\t// False or not the same as prev\r\n\t\t\t\t\t\tif (!sv || (sv != v && v !== 0)) {\r\n\t\t\t\t\t\t\tv = 0;\r\n\t\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tif (sv)\r\n\t\t\t\t\t\t\tv = sv;\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tif (v)\r\n\t\t\t\t\t\treturn parseInt(v.replace(/[^0-9]/g, ''));\r\n\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif (v = dom.getAttrib(e, at))\r\n\t\t\treturn v;\r\n\r\n\t\treturn '';\r\n\t},\r\n\r\n\tresetImageData : function() {\r\n\t\tvar f = document.forms[0];\r\n\r\n\t\tf.width.value = f.height.value = \"\";\t\r\n\t},\r\n\r\n\tupdateImageData : function() {\r\n\t\tvar f = document.forms[0], t = ImageDialog;\r\n\r\n\t\tif (f.width.value == \"\")\r\n\t\t\tf.width.value = t.preloadImg.width;\r\n\r\n\t\tif (f.height.value == \"\")\r\n\t\t\tf.height.value = t.preloadImg.height;\r\n\t},\r\n\r\n\tgetImageData : function() {\r\n\t\tvar f = document.forms[0];\r\n\r\n\t\tthis.preloadImg = new Image();\r\n\t\tthis.preloadImg.onload = this.updateImageData;\r\n\t\tthis.preloadImg.onerror = this.resetImageData;\r\n\t\tthis.preloadImg.src = tinyMCEPopup.editor.documentBaseURI.toAbsolute(f.src.value);\r\n\t}\r\n};\r\n\r\nImageDialog.preInit();\r\ntinyMCEPopup.onInit.add(ImageDialog.init, ImageDialog);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/js/link.js",
    "content": "tinyMCEPopup.requireLangPack();\r\n\r\nvar LinkDialog = {\r\n\tpreInit : function() {\r\n\t\tvar url;\r\n\r\n\t\tif (url = tinyMCEPopup.getParam(\"external_link_list_url\"))\r\n\t\t\tdocument.write('<script language=\"javascript\" type=\"text/javascript\" src=\"' + tinyMCEPopup.editor.documentBaseURI.toAbsolute(url) + '\"></script>');\r\n\t},\r\n\r\n\tinit : function() {\r\n\t\tvar f = document.forms[0], ed = tinyMCEPopup.editor;\r\n\r\n\t\t// Setup browse button\r\n\t\tdocument.getElementById('hrefbrowsercontainer').innerHTML = getBrowserHTML('hrefbrowser', 'href', 'file', 'theme_advanced_link');\r\n\t\tif (isVisible('hrefbrowser'))\r\n\t\t\tdocument.getElementById('href').style.width = '180px';\r\n\r\n\t\tthis.fillClassList('class_list');\r\n\t\tthis.fillFileList('link_list', 'tinyMCELinkList');\r\n\t\tthis.fillTargetList('target_list');\r\n\r\n\t\tif (e = ed.dom.getParent(ed.selection.getNode(), 'A')) {\r\n\t\t\tf.href.value = ed.dom.getAttrib(e, 'href');\r\n\t\t\tf.linktitle.value = ed.dom.getAttrib(e, 'title');\r\n\t\t\tf.insert.value = ed.getLang('update');\r\n\t\t\tselectByValue(f, 'link_list', f.href.value);\r\n\t\t\tselectByValue(f, 'target_list', ed.dom.getAttrib(e, 'target'));\r\n\t\t\tselectByValue(f, 'class_list', ed.dom.getAttrib(e, 'class'));\r\n\t\t}\r\n\t},\r\n\r\n\tupdate : function() {\r\n\t\tvar f = document.forms[0], ed = tinyMCEPopup.editor, e, b, href = f.href.value.replace(/ /g, '%20');\r\n\r\n\t\ttinyMCEPopup.restoreSelection();\r\n\t\te = ed.dom.getParent(ed.selection.getNode(), 'A');\r\n\r\n\t\t// Remove element if there is no href\r\n\t\tif (!f.href.value) {\r\n\t\t\tif (e) {\r\n\t\t\t\tb = ed.selection.getBookmark();\r\n\t\t\t\ted.dom.remove(e, 1);\r\n\t\t\t\ted.selection.moveToBookmark(b);\r\n\t\t\t\ttinyMCEPopup.execCommand(\"mceEndUndoLevel\");\r\n\t\t\t\ttinyMCEPopup.close();\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Create new anchor elements\r\n\t\tif (e == null) {\r\n\t\t\ted.getDoc().execCommand(\"unlink\", false, null);\r\n\t\t\ttinyMCEPopup.execCommand(\"mceInsertLink\", false, \"#mce_temp_url#\", {skip_undo : 1});\r\n\r\n\t\t\ttinymce.each(ed.dom.select(\"a\"), function(n) {\r\n\t\t\t\tif (ed.dom.getAttrib(n, 'href') == '#mce_temp_url#') {\r\n\t\t\t\t\te = n;\r\n\r\n\t\t\t\t\ted.dom.setAttribs(e, {\r\n\t\t\t\t\t\thref : href,\r\n\t\t\t\t\t\ttitle : f.linktitle.value,\r\n\t\t\t\t\t\ttarget : f.target_list ? getSelectValue(f, \"target_list\") : null,\r\n\t\t\t\t\t\t'class' : f.class_list ? getSelectValue(f, \"class_list\") : null\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t} else {\r\n\t\t\ted.dom.setAttribs(e, {\r\n\t\t\t\thref : href,\r\n\t\t\t\ttitle : f.linktitle.value,\r\n\t\t\t\ttarget : f.target_list ? getSelectValue(f, \"target_list\") : null,\r\n\t\t\t\t'class' : f.class_list ? getSelectValue(f, \"class_list\") : null\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\t// Don't move caret if selection was image\r\n\t\tif (e.childNodes.length != 1 || e.firstChild.nodeName != 'IMG') {\r\n\t\t\ted.focus();\r\n\t\t\ted.selection.select(e);\r\n\t\t\ted.selection.collapse(0);\r\n\t\t\ttinyMCEPopup.storeSelection();\r\n\t\t}\r\n\r\n\t\ttinyMCEPopup.execCommand(\"mceEndUndoLevel\");\r\n\t\ttinyMCEPopup.close();\r\n\t},\r\n\r\n\tcheckPrefix : function(n) {\r\n\t\tif (n.value && Validator.isEmail(n) && !/^\\s*mailto:/i.test(n.value) && confirm(tinyMCEPopup.getLang('advanced_dlg.link_is_email')))\r\n\t\t\tn.value = 'mailto:' + n.value;\r\n\r\n\t\tif (/^\\s*www\\./i.test(n.value) && confirm(tinyMCEPopup.getLang('advanced_dlg.link_is_external')))\r\n\t\t\tn.value = 'http://' + n.value;\r\n\t},\r\n\r\n\tfillFileList : function(id, l) {\r\n\t\tvar dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl;\r\n\r\n\t\tl = window[l];\r\n\r\n\t\tif (l && l.length > 0) {\r\n\t\t\tlst.options[lst.options.length] = new Option('', '');\r\n\r\n\t\t\ttinymce.each(l, function(o) {\r\n\t\t\t\tlst.options[lst.options.length] = new Option(o[0], o[1]);\r\n\t\t\t});\r\n\t\t} else\r\n\t\t\tdom.remove(dom.getParent(id, 'tr'));\r\n\t},\r\n\r\n\tfillClassList : function(id) {\r\n\t\tvar dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl;\r\n\r\n\t\tif (v = tinyMCEPopup.getParam('theme_advanced_styles')) {\r\n\t\t\tcl = [];\r\n\r\n\t\t\ttinymce.each(v.split(';'), function(v) {\r\n\t\t\t\tvar p = v.split('=');\r\n\r\n\t\t\t\tcl.push({'title' : p[0], 'class' : p[1]});\r\n\t\t\t});\r\n\t\t} else\r\n\t\t\tcl = tinyMCEPopup.editor.dom.getClasses();\r\n\r\n\t\tif (cl.length > 0) {\r\n\t\t\tlst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('not_set'), '');\r\n\r\n\t\t\ttinymce.each(cl, function(o) {\r\n\t\t\t\tlst.options[lst.options.length] = new Option(o.title || o['class'], o['class']);\r\n\t\t\t});\r\n\t\t} else\r\n\t\t\tdom.remove(dom.getParent(id, 'tr'));\r\n\t},\r\n\r\n\tfillTargetList : function(id) {\r\n\t\tvar dom = tinyMCEPopup.dom, lst = dom.get(id), v;\r\n\r\n\t\tlst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('not_set'), '');\r\n\t\tlst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('advanced_dlg.link_target_same'), '_self');\r\n\t\tlst.options[lst.options.length] = new Option(tinyMCEPopup.getLang('advanced_dlg.link_target_blank'), '_blank');\r\n\r\n\t\tif (v = tinyMCEPopup.getParam('theme_advanced_link_targets')) {\r\n\t\t\ttinymce.each(v.split(','), function(v) {\r\n\t\t\t\tv = v.split('=');\r\n\t\t\t\tlst.options[lst.options.length] = new Option(v[0], v[1]);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n};\r\n\r\nLinkDialog.preInit();\r\ntinyMCEPopup.onInit.add(LinkDialog.init, LinkDialog);\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/js/source_editor.js",
    "content": "tinyMCEPopup.requireLangPack();\r\ntinyMCEPopup.onInit.add(onLoadInit);\r\n\r\nfunction saveContent() {\r\n\ttinyMCEPopup.editor.setContent(document.getElementById('htmlSource').value, {source_view : true});\r\n\ttinyMCEPopup.close();\r\n}\r\n\r\nfunction onLoadInit() {\r\n\ttinyMCEPopup.resizeToInnerSize();\r\n\r\n\t// Remove Gecko spellchecking\r\n\tif (tinymce.isGecko)\r\n\t\tdocument.body.spellcheck = tinyMCEPopup.editor.getParam(\"gecko_spellcheck\");\r\n\r\n\twindow.onload = function() {\r\n\t\tdocument.getElementById('htmlSource').value = tinyMCEPopup.editor.getContent({source_view : true});\r\n\t};\r\n\r\n\tif (tinyMCEPopup.editor.getParam(\"theme_advanced_source_editor_wrap\", true)) {\r\n\t\tsetWrap('soft');\r\n\t\tdocument.getElementById('wraped').checked = true;\r\n\t}\r\n\r\n\tresizeInputs();\r\n}\r\n\r\nfunction setWrap(val) {\r\n\tvar v, n, s = document.getElementById('htmlSource');\r\n\r\n\ts.wrap = val;\r\n\r\n\tif (!tinymce.isIE) {\r\n\t\tv = s.value;\r\n\t\tn = s.cloneNode(false);\r\n\t\tn.setAttribute(\"wrap\", val);\r\n\t\ts.parentNode.replaceChild(n, s);\r\n\t\tn.value = v;\r\n\t}\r\n}\r\n\r\nfunction toggleWordWrap(elm) {\r\n\tif (elm.checked)\r\n\t\tsetWrap('soft');\r\n\telse\r\n\t\tsetWrap('off');\r\n}\r\n\r\nfunction resizeInputs() {\r\n\tvar vp = tinyMCEPopup.dom.getViewPort(window), el;\r\n\r\n\tel = document.getElementById('htmlSource');\r\n\r\n\tif (el) {\r\n\t\tel.style.width = (vp.w - 20) + 'px';\r\n\t\tel.style.height = (vp.h - 65) + 'px';\r\n\t}\r\n}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/ar.js",
    "content": "tinyMCE.addI18n('ar.advanced',{\"underline_desc\":\"\\u062a\\u062d\\u062a\\u0647 \\u062e\\u0637 (Ctrl U)\",\"italic_desc\":\"\\u0645\\u0627\\u0626\\u0644 (Ctrl+I)\",\"bold_desc\":\"\\u0639\\u0631\\u064a\\u0636 (Ctrl+B)\",dd:\"\\u0627\\u0644\\u0648\\u0635\\u0641\",dt:\"\\u062a\\u0639\\u0631\\u064a\\u0641 \\u0645\\u0635\\u0637\\u0644\\u062d\",samp:\"Code sample\",code:\"\\u0642\\u0627\\u0646\\u0648\\u0646\",blockquote:\"\\u0639\\u0644\\u0627\\u0645\\u0629 \\u0627\\u0642\\u062a\\u0628\\u0627\\u0633 \\u0641\\u0642\\u0631\\u0629\",h6:\"\\u0627\\u0644\\u0639\\u0646\\u0648\\u0627\\u0646 6\",h5:\"\\u0627\\u0644\\u0639\\u0646\\u0648\\u0627\\u0646 5\",h4:\"\\u0627\\u0644\\u0639\\u0646\\u0648\\u0627\\u0646 4\",h3:\"\\u0627\\u0644\\u0639\\u0646\\u0648\\u0627\\u0646 3\",h2:\"\\u0627\\u0644\\u0639\\u0646\\u0648\\u0627\\u0646 2\",h1:\"\\u0627\\u0644\\u0639\\u0646\\u0648\\u0627\\u0646 1\",pre:\"\\u0645\\u0647\\u064a\\u0623 \\u0645\\u0633\\u0628\\u0642\",address:\"\\u0627\\u0644\\u0639\\u0646\\u0648\\u0627\\u0646\",div:\"\\u0627\\u0644\\u062f\\u0631\\u062c\\u0629\",paragraph:\"\\u0627\\u0644\\u0646\\u0635\",block:\"\\u0627\\u0644\\u0647\\u064a\\u0626\\u0647\",fontdefault:\"\\u0639\\u0627\\u0626\\u0644\\u0647 \\u0627\\u0644\\u062e\\u0637\",\"font_size\":\"\\u062d\\u062c\\u0645 \\u0627\\u0644\\u062e\\u0637\",\"style_select\":\"\\u0627\\u0644\\u0633\\u0645\\u0627\\u062a\",\"more_colors\":\"\\u0627\\u0644\\u0645\\u0632\\u064a\\u062f \\u0645\\u0646 \\u0627\\u0644\\u0623\\u0644\\u0648\\u0627\\u0646\",\"toolbar_focus\":\"Jump to tool buttons - Alt+Q, Jump to editor - Alt-Z, Jump to element path - Alt-X\",newdocument:\"\\u0647\\u0644 \\u0623\\u0646\\u062a \\u0645\\u062a\\u0623\\u0643\\u062f \\u0623\\u0646\\u0643 \\u062a\\u0631\\u064a\\u062f \\u0645\\u0633\\u062d \\u0643\\u0627\\u0641\\u0629 \\u0645\\u062d\\u062a\\u0648\\u064a\\u0627\\u062a\\u061f\",path:\"\\u0645\\u0633\\u0627\\u0631\",\"clipboard_msg\":\"\\u0646\\u0633\\u062e/\\u0642\\u0635/\\u0644\\u0635\\u0642 \\u063a\\u064a\\u0631 \\u0645\\u062a\\u0648\\u0627\\u0641\\u0631 \\u0641\\u064a \\u0641\\u064a\\u0631 \\u0641\\u0648\\u0643\\u0633 \\u062d\\u0627\\u0644\\u064a\\u0627 \\u0647\\u0644 \\u062a\\u0631\\u064a\\u062f \\u0627\\u0646 \\u062a\\u0639\\u0631\\u0641 \\u0627\\u0644\\u0645\\u0632\\u064a\\u062f \\u0645\\u0646 \\u0627\\u0644\\u0645\\u0639\\u0644\\u0648\\u0645\\u0627\\u062a\\u061f\",\"blockquote_desc\":\"\\u0639\\u0644\\u0627\\u0645\\u0629 \\u0627\\u0642\\u062a\\u0628\\u0627\\u0633 \\u0641\\u0642\\u0631\\u0629\",\"help_desc\":\"\\u0645\\u0633\\u0627\\u0639\\u062f\\u0647\",\"newdocument_desc\":\"\\u0645\\u0633\\u062a\\u0646\\u062f \\u062c\\u062f\\u064a\\u062f\",\"image_props_desc\":\"\\u062e\\u0635\\u0627\\u0626\\u0635 \\u0627\\u0644\\u0635\\u0648\\u0631\\u0629\",\"paste_desc\":\"\\u0644\\u0635\\u0642\",\"copy_desc\":\"\\u0646\\u0633\\u062e\",\"cut_desc\":\"\\u0642\\u0635\",\"anchor_desc\":\"\\u0625\\u062f\\u0631\\u0627\\u062c / \\u062a\\u062d\\u0631\\u064a\\u0631 \\u0645\\u0631\\u0633\\u0627\\u0629\",\"visualaid_desc\":\"\\u0627\\u0644\\u0645\\u0628\\u0627\\u062f\\u0626 \\u0627\\u0644\\u062a\\u0648\\u062c\\u064a\\u0647\\u064a\\u0629 \\u062a\\u0628\\u062f\\u064a\\u0644 / \\u0639\\u0646\\u0627\\u0635\\u0631 \\u063a\\u064a\\u0631 \\u0645\\u0631\\u0626\\u064a\\u0629\",\"charmap_desc\":\"\\u0627\\u062f\\u062e\\u0627\\u0644 \\u0631\\u0645\\u0632 \\u062c\\u062f\\u064a\\u062f\",\"backcolor_desc\":\"\\u0627\\u062e\\u062a\\u0631 \\u0644\\u0648\\u0646 \\u0627\\u0644\\u062e\\u0644\\u0641\\u064a\\u0647\",\"forecolor_desc\":\"\\u0627\\u062e\\u062a\\u0631 \\u0644\\u0648\\u0646 \\u0627\\u0644\\u0646\\u0635\",\"custom1_desc\":\"\\u0627\\u062f\\u062e\\u0644 \\u0627\\u0644\\u0648\\u0635\\u0641 \\u0647\\u0646\",\"removeformat_desc\":\"\\u0627\\u0632\\u0627\\u0644\\u0647 \\u0627\\u0644\\u062a\\u0646\\u0633\\u064a\\u0642\",\"hr_desc\":\"\\u0627\\u062f\\u0631\\u0627\\u062c \\u062e\\u0637 \\u0627\\u0641\\u0642\\u0649\",\"sup_desc\":\"\\u0645\\u0631\\u062a\\u0641\\u0639\",\"sub_desc\":\"\\u0645\\u0646\\u062e\\u0641\\u0636\",\"code_desc\":\"\\u062a\\u0639\\u062f\\u064a\\u0644 \\u0634\\u0641\\u0631\\u0647 \\u0627\\u0644 \\u0623\\u062a\\u0634 \\u062a\\u064a \\u0623\\u0645 \\u0623\\u0644\",\"cleanup_desc\":\"\\u062a\\u0646\\u0638\\u064a\\u0641 \\u0627\\u0644\\u0643\\u0648\\u062f\",\"image_desc\":\"\\u0627\\u0636\\u0627\\u0641\\u0647 / \\u062d\\u0630\\u0641 \\u0635\\u0648\\u0631\\u0647\",\"unlink_desc\":\"\\u062d\\u0630\\u0641 \\u0627\\u0644\\u0631\\u0627\\u0628\\u0637\",\"link_desc\":\"\\u0627\\u0636\\u0627\\u0641\\u0647 / \\u062a\\u0639\\u062f\\u064a\\u0644 \\u0631\\u0627\\u0628\\u0637\",\"redo_desc\":\"\\u0627\\u0644\\u0625\\u0639\\u0627\\u062f\\u0629 (\\u0627\\u0644\\u0633\\u064a\\u0637\\u0631\\u0629 + \\u0635)\",\"undo_desc\":\"\\u062a\\u0631\\u0627\\u062c\\u0639 (\\u0627\\u0644\\u0633\\u064a\\u0637\\u0631\\u0629 + \\u0649)\",\"indent_desc\":\"\\u0627\\u0644\\u0645\\u0633\\u0627\\u0641\\u0629 \\u0627\\u0644\\u0628\\u0627\\u062f\\u0626\\u0629\",\"outdent_desc\":\"\\u0625\\u0646\\u0642\\u0627\\u0635 \\u0627\\u0644\\u0645\\u0633\\u0627\\u0641\\u0629 \\u0627\\u0644\\u0628\\u0627\\u062f\\u0626\\u0629 \\u0642\\u0628\\u0644\",\"numlist_desc\":\"\\u0642\\u0627\\u0626\\u0645\\u0629 \\u0645\\u0631\\u062a\\u0628\\u0629\",\"bullist_desc\":\"\\u0642\\u0627\\u0626\\u0645\\u0629 \\u063a\\u064a\\u0631 \\u0645\\u0631\\u062a\\u0628\\u0629\",\"justifyfull_desc\":\"\\u0645\\u062d\\u0627\\u0630\\u0627\\u0647 \\u0643\\u0644\\u064a\\u0647\",\"justifyright_desc\":\"\\u062a\\u0648\\u0633\\u064a\\u0637 \\u064a\\u0645\\u064a\\u0646\",\"justifycenter_desc\":\"\\u062a\\u0648\\u0633\\u064a\\u0637 \\u0648\\u0633\\u0637\",\"justifyleft_desc\":\"\\u062a\\u0648\\u0633\\u064a\\u0637 \\u064a\\u0633\\u0627\\u0631\",\"striketrough_desc\":\"\\u062a\\u0648\\u0633\\u064a\\u0637 \\u062e\\u0637\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\",\"help_shortcut\":\"Press ALT-F10 for toolbar. Press ALT-0 for help\",\"rich_text_area\":\"Rich Text Area\",\"shortcuts_desc\":\"Accessability Help\",toolbar:\"Toolbar\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/ar_dlg.js",
    "content": "tinyMCE.addI18n('ar.advanced_dlg',{\"link_list\":\"\\u0642\\u0627\\u0626\\u0645\\u0647 \\u0627\\u0644\\u0648\\u0635\\u0644\\u0627\\u062a\",\"link_is_external\":\"\\u0627\\u0644\\u0631\\u0627\\u0628\\u0637 \\u0627\\u0644\\u0630\\u064a \\u0623\\u062f\\u062e\\u0644\\u062a\\u0647 \\u064a\\u0628\\u062f\\u0648 \\u0631\\u0627\\u0628\\u0637 \\u062e\\u0627\\u0631\\u062c\\u064a \\u060c \\u0647\\u0644 \\u062a\\u0631\\u064a\\u062f \\u0625\\u0636\\u0627\\u0641\\u0629 \\u0628\\u0627\\u062f\\u0626\\u0629 http:// \\u0627\\u0644\\u0645\\u0637\\u0644\\u0648\\u0628\\u0629\\u061f\",\"link_is_email\":\"\\u0627\\u0644\\u0631\\u0627\\u0628\\u0637 \\u0627\\u0644\\u0630\\u064a \\u0623\\u062f\\u062e\\u0644\\u062a\\u0647 \\u064a\\u0628\\u062f\\u0648 \\u0623\\u0646 \\u0639\\u0646\\u0648\\u0627\\u0646 \\u0627\\u0644\\u0628\\u0631\\u064a\\u062f \\u0627\\u0644\\u0625\\u0644\\u0643\\u062a\\u0631\\u0648\\u0646\\u064a \\u060c \\u0647\\u0644 \\u062a\\u0631\\u064a\\u062f \\u0625\\u0636\\u0627\\u0641\\u0629 \\u0645\\u064a\\u0644\\u062a\\u0648 \\u0627\\u0644\\u0645\\u0637\\u0644\\u0648\\u0628\\u0629 :\\u061f \\u0628\\u0627\\u062f\\u0626\\u0629\",\"link_titlefield\":\"\\u0627\\u0644\\u0639\\u0646\\u0648\\u0627\\u0646\",\"link_target_blank\":\"\\u0641\\u062a\\u062d \\u0627\\u0644\\u0631\\u0627\\u0628\\u0637 \\u0641\\u0649 \\u0646\\u0627\\u0641\\u0630\\u0647 \\u062c\\u062f\\u064a\\u062f\\u0647\",\"link_target_same\":\"\\u0641\\u062a\\u062d \\u0627\\u0644\\u0631\\u0627\\u0628\\u0637 \\u0641\\u0649 \\u0646\\u0641\\u0633 \\u0627\\u0644\\u0646\\u0627\\u0641\\u0630\\u0647\",\"link_target\":\"\\u0627\\u0644\\u0647\\u062f\\u0641\",\"link_url\":\"\\u0639\\u0646\\u0648\\u0627\\u0646 URL \\u0644\\u0644\\u0648\\u0635\\u0644\\u0647\",\"link_title\":\"\\u0627\\u0636\\u0641/\\u0639\\u062f\\u0644 \\u0648\\u0635\\u0644\\u0647\",\"image_align_right\":\"\\u064a\\u0645\\u064a\\u0646\",\"image_align_left\":\"\\u064a\\u0633\\u0627\\u0631\",\"image_align_textbottom\":\"\\u0627\\u0633\\u0641\\u0644 \\u0627\\u0644\\u0646\\u0635\",\"image_align_texttop\":\"\\u0627\\u0644\\u0646\\u0635 \\u0627\\u0644\\u0623\\u0639\\u0644\\u0649\",\"image_align_bottom\":\"\\u0627\\u0644\\u0642\\u0627\\u0639\",\"image_align_middle\":\"\\u0627\\u0644\\u0623\\u0648\\u0633\\u0637\",\"image_align_top\":\"\\u0627\\u0644\\u0623\\u0639\\u0644\\u0649\",\"image_align_baseline\":\"\\u0627\\u0644\\u0623\\u0633\\u0627\\u0633\",\"image_align\":\"\\u0645\\u062d\\u0627\\u0630\\u0627\\u0629\",\"image_hspace\":\"\\u0627\\u0644\\u0645\\u0633\\u0627\\u0641\\u0647 \\u0627\\u0644\\u0627\\u0641\\u0642\\u064a\\u0647\",\"image_vspace\":\"\\u0627\\u0644\\u0645\\u0633\\u0627\\u0641\\u0647 \\u0627\\u0644\\u0639\\u0645\\u0648\\u062f\\u064a\\u0647\",\"image_dimensions\":\"\\u0627\\u0644\\u0623\\u0628\\u0639\\u0627\\u062f\",\"image_alt\":\"\\u0648\\u0635\\u0641 \\u0627\\u0644\\u0635\\u0648\\u0631\\u0647\",\"image_list\":\"\\u0642\\u0627\\u0626\\u0645\\u0647 \\u0627\\u0644\\u0635\\u0648\\u0631\",\"image_border\":\"\\u0627\\u0644\\u062d\\u062f\\u0648\\u062f\",\"image_src\":\"\\u0631\\u0627\\u0628\\u0637 \\u0627\\u0644\\u0635\\u0648\\u0631\\u0647\",\"image_title\":\"\\u0627\\u0636\\u0641/\\u0639\\u062f\\u0644 \\u0635\\u0648\\u0631\\u0629\",\"charmap_title\":\"\\u0627\\u062e\\u062a\\u064a\\u0627\\u0631 \\u062d\\u0631\\u0641 \\u0645\\u062e\\u0635\\u0635\",\"colorpicker_name\":\"\\u0627\\u0633\\u0645:\",\"colorpicker_color\":\"\\u0627\\u0644\\u0644\\u0648\\u0646 :\",\"colorpicker_named_title\":\"\\u0627\\u0644\\u0623\\u0644\\u0648\\u0627\\u0646 \\u0627\\u0644\\u0645\\u0633\\u0645\\u0627\\u0629\",\"colorpicker_named_tab\":\"\\u0627\\u0644\\u0645\\u0633\\u0645\\u0627\\u0629\",\"colorpicker_palette_title\":\"\\u0644\\u0648\\u062d \\u0627\\u0644\\u0623\\u0644\\u0648\\u0627\\u0646\",\"colorpicker_palette_tab\":\"\\u0644\\u0648\\u062d\",\"colorpicker_picker_title\":\"\\u0643\\u0627\\u0634\\u0641 \\u0627\\u0644\\u0644\\u0648\\u0646\",\"colorpicker_picker_tab\":\"\\u0627\\u0644\\u0643\\u0627\\u0634\\u0641\",\"colorpicker_title\":\"\\u0627\\u062e\\u062a\\u0631 \\u0627\\u0644\\u0644\\u0648\\u0646\",\"code_wordwrap\":\"\\u0627\\u0644\\u062a\\u0641\\u0627\\u0641 \\u0627\\u0644\\u0646\\u0635\",\"code_title\":\"\\u062a\\u0639\\u062f\\u064a\\u0644 \\u0627 \\u0644\\u0634\\u064a\\u0641\\u0631\\u0647 \\u0627\\u0644\\u0628\\u0631\\u0645\\u062c\\u064a\\u0647\",\"anchor_name\":\"\\u0627\\u0633\\u0645 \\u0627\\u0644\\u0645\\u0631\\u0633\\u0627\\u0647\",\"anchor_title\":\"\\u0625\\u062f\\u0631\\u0627\\u062c / \\u062a\\u062d\\u0631\\u064a\\u0631 \\u0645\\u0631\\u0633\\u0627\\u0629\",\"about_loaded\":\"\\u0627\\u0644\\u0627\\u0636\\u0627\\u0641\\u0627\\u062a \\u0627\\u0644\\u0645\\u062d\\u0645\\u0644\\u0647\",\"about_version\":\"\\u0627\\u0644\\u0627\\u0635\\u062f\\u0627\\u0631\",\"about_author\":\"\\u0627\\u0644\\u0643\\u0627\\u062a\\u0628\",\"about_plugin\":\"\\u0627\\u0644\\u0645\\u0648\\u0642\\u0639\",\"about_plugins\":\"\\u0627\\u0644\\u0625\\u0636\\u0627\\u0641\\u0627\\u062a\",\"about_license\":\"\\u0627\\u0644\\u062a\\u0631\\u062e\\u064a\\u0635\",\"about_help\":\"\\u0645\\u0633\\u0627\\u0639\\u062f\\u0647\",\"about_general\":\"\\u0639\\u0646\",\"about_title\":\"\\u0639\\u0646 \\u0627\\u0644\\u0645\\u062d\\u0631\\u0631\",\"anchor_invalid\":\"\\u0627\\u0644\\u0631\\u062c\\u0627\\u0621 \\u062a\\u062d\\u062f\\u064a\\u062f \\u0625\\u0633\\u0645 \\u064a\\u0635\\u0644\\u062d \\u0644\\u0644\\u0645\\u0631\\u0633\\u0627\\u0647\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/az.js",
    "content": "tinyMCE.addI18n('az.advanced',{\"underline_desc\":\"Altdan x\\u0259tt (Ctrl+U)\",\"italic_desc\":\"Kursiv (Ctrl+I)\",\"bold_desc\":\"Yar\\u0131qal\\u0131n (Ctrl+B)\",dd:\"Terminin m\\u00fc\\u0259yy\\u0259n edilm\\u0259si\",dt:\"M\\u00fc\\u0259yy\\u0259n edil\\u0259n termin\",samp:\"Kod n\\u00fcmun\\u0259si\",code:\"Kod\",blockquote:\"Sitat bloku\",h6:\"Ba\\u015fl\\u0131q 6\",h5:\"Ba\\u015fl\\u0131q 5\",h4:\"Ba\\u015fl\\u0131q 4\",h3:\"Ba\\u015fl\\u0131q 3\",h2:\"Ba\\u015fl\\u0131q 2\",h1:\"Ba\\u015fl\\u0131q 1\",pre:\"Formatlanm\\u0131\\u015f m\\u0259tn\",address:\"\\u00dcnvan\",div:\"B\\u00f6lm\\u0259\",paragraph:\"Abzas\",block:\"Format\",fontdefault:\"\\u015erift\",\"font_size\":\"\\u015erift \\u00f6l\\u00e7\\u00fc\\u015f\\u00fc\",\"style_select\":\"Still\\u0259r\",\"image_delta_width\":\"65\",\"more_colors\":\"Daha \\u00e7ox r\\u0259ng\",\"toolbar_focus\":\"Alt+Q - al\\u0259t d\\u00fcym\\u0259l\\u0259rin\\u0259 ke\\u00e7, Alt-Z - redaktoruna ke\\u00e7, Alt-X - elementl\\u0259r yoluna ke\\u00e7\",newdocument:\"\\u0130\\u00e7ind\\u0259kil\\u0259ri tam t\\u0259mizl\\u0259m\\u0259kd\\u0259 \\u0259minsiniz?\",path:\"Yol\",\"clipboard_msg\":\"Kopyalama/\\u018flav\\u0259 et Mozilla v\\u0259 Firefox-da i\\u015fl\\u0259mir.\\nN\\u0259 ba\\u015f verdiyi haqda daha \\u0259trafl\\u0131 \\u00f6yr\\u0259nm\\u0259k ist\\u0259yirsiniz?\",\"blockquote_desc\":\"Sitat bloku\",\"help_desc\":\"K\\u00f6m\\u0259k\",\"newdocument_desc\":\"Yeni s\\u0259n\\u0259d\",\"image_props_desc\":\"\\u015e\\u0259kil x\\u00fcsusiyy\\u0259ti\",\"paste_desc\":\"\\u018flav\\u0259 et\",\"copy_desc\":\"Kopyala\",\"cut_desc\":\"K\\u0259s\",\"anchor_desc\":\"L\\u00f6vb\\u0259r \\u0259lav\\u0259/redakt\\u0259 et\",\"visualaid_desc\":\"G\\u00f6nd\\u0259ril\\u0259n/g\\u00f6r\\u00fcnm\\u0259z elementl\\u0259ri yand\\u0131r/s\\u00f6nd\\u00fcr\",\"charmap_desc\":\"X\\u00fcsusi simvol \\u0259lav\\u0259 et\",\"backcolor_desc\":\"Fonun r\\u0259ngini se\\u00e7\",\"forecolor_desc\":\"M\\u0259tnin r\\u0259ngini se\\u00e7\",\"custom1_desc\":\"\\u00d6z t\\u0259svirinizi daxil edin\",\"removeformat_desc\":\"Formatlaman\\u0131 l\\u0259\\u011fv et\",\"hr_desc\":\"\\u00dcf\\u00fcqi x\\u0259tt \\u0259lav\\u0259 et\",\"sup_desc\":\"Yuxar\\u0131 indeks\",\"sub_desc\":\"A\\u015fa\\u011f\\u0131 indeks\",\"code_desc\":\"HTML-m\\u0259nb\\u0259ni redakt\\u0259 et\",\"cleanup_desc\":\"\\u018fyri kodu t\\u0259mizl\\u0259\",\"image_desc\":\"\\u018flav\\u0259 et/\\u015f\\u0259kili redakt\\u0259 et\",\"unlink_desc\":\"Ke\\u00e7idi sil\",\"link_desc\":\"\\u018flav\\u0259 et/ke\\u00e7idi redakt\\u0259 et\",\"redo_desc\":\"T\\u0259krarla (Ctrl+Y)\",\"undo_desc\":\"L\\u0259\\u011fv et (Ctrl+Z)\",\"indent_desc\":\"Bo\\u015f yeri b\\u00f6y\\u00fct\",\"outdent_desc\":\"Bo\\u015f yeri ki\\u00e7ilt\",\"numlist_desc\":\"N\\u00f6mr\\u0259l\\u0259nmi\\u015f siyah\\u0131\",\"bullist_desc\":\"Qeyd edilmi\\u015f siyah\\u0131\",\"justifyfull_desc\":\"Enin\\u0259 d\\u00fczl\\u0259ndir\",\"justifyright_desc\":\"Sa\\u011fdan d\\u00fczl\\u0259ndir\",\"justifycenter_desc\":\"M\\u0259rk\\u0259z\\u0259 d\\u00fczl\\u0259ndir\",\"justifyleft_desc\":\"Soldan d\\u00fczl\\u0259ndir\",\"striketrough_desc\":\"Qaralanm\\u0131\\u015f\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"help_shortcut\":\"Press ALT-F10 for toolbar. Press ALT-0 for help\",\"rich_text_area\":\"Rich Text Area\",\"shortcuts_desc\":\"Accessability Help\",toolbar:\"Toolbar\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/az_dlg.js",
    "content": "tinyMCE.addI18n('az.advanced_dlg',{\"link_list\":\"Ke\\u00e7idl\\u0259r siyah\\u0131s\\u0131\",\"link_is_external\":\"Daxil edil\\u0259n \\u00fcnvan xarici ke\\u00e7id\\u0259 b\\u0259nz\\u0259yir. http:// prefiksini \\u0259lav\\u0259 etm\\u0259k ist\\u0259yirsiniz?\",\"link_is_email\":\"Daxil edil\\u0259n \\u00fcnvan e-po\\u00e7ta b\\u0259nz\\u0259yir. mailto: prefiksini \\u0259lav\\u0259 etm\\u0259k ist\\u0259yirsiniz?\",\"link_titlefield\":\"Ad\\u0131\",\"link_target_blank\":\"Ke\\u00e7idi yeni p\\u0259nc\\u0259r\\u0259d\\u0259 a\\u00e7\",\"link_target_same\":\"Ke\\u00e7idi h\\u0259min p\\u0259nc\\u0259r\\u0259d\\u0259 a\\u00e7\",\"link_target\":\"H\\u0259d\\u0259f\",\"link_url\":\"Ke\\u00e7id \\u00fcnvan\\u0131\",\"link_title\":\"Ke\\u00e7idi \\u0259lav\\u0259/redakt\\u0259 et\",\"image_align_right\":\"Sa\\u011fa\",\"image_align_left\":\"Sola\",\"image_align_textbottom\":\"M\\u0259tn a\\u015fa\\u011f\\u0131s\\u0131 \\u00fczr\\u0259\",\"image_align_texttop\":\"M\\u0259tn yuxar\\u0131s\\u0131 il\\u0259\",\"image_align_bottom\":\"A\\u015fa\\u011f\\u0131 il\\u0259\",\"image_align_middle\":\"M\\u0259rk\\u0259z il\\u0259\",\"image_align_top\":\"Yuxar\\u0131 il\\u0259\",\"image_align_baseline\":\"Bazis liniyas\\u0131 \\u00fczr\\u0259\",\"image_align\":\"Tarazla\\u015fd\\u0131r\",\"image_hspace\":\"\\u00dcf\\u00fcqi f\\u0259za\",\"image_vspace\":\"\\u015eaquli f\\u0259za\",\"image_dimensions\":\"\\u00d6l\\u00e7\\u00fcl\\u0259r\",\"image_alt\":\"\\u015e\\u0259klin t\\u0259sviri\",\"image_list\":\"\\u015e\\u0259kil siyah\\u0131s\\u0131\",\"image_border\":\"S\\u0259rh\\u0259d\",\"image_src\":\"\\u015e\\u0259klin \\u00fcnvan\\u0131\",\"image_title\":\"\\u015e\\u0259kli \\u0259lav\\u0259/redakt\\u0259 et\",\"charmap_title\":\"X\\u00fcsusi simvol se\\u00e7in\",\"colorpicker_name\":\"Ad\\u0131:\",\"colorpicker_color\":\"R\\u0259ng:\",\"colorpicker_named_title\":\"Adland\\u0131r\\u0131lm\\u0131\\u015f r\\u0259ngl\\u0259r\",\"colorpicker_named_tab\":\"Adland\\u0131r\\u0131lm\\u0131\\u015f\",\"colorpicker_palette_title\":\"Palitra r\\u0259ngl\\u0259ri\",\"colorpicker_palette_tab\":\"Palitra\",\"colorpicker_picker_title\":\"R\\u0259ng se\\u00e7imi\",\"colorpicker_picker_tab\":\"Se\\u00e7im\",\"colorpicker_title\":\"R\\u0259ngi se\\u00e7\",\"code_wordwrap\":\"S\\u00f6zl\\u0259rin s\\u0259tr\\u0259 ke\\u00e7idi\",\"code_title\":\"HTML-m\\u0259nb\\u0259 redaktoru\",\"anchor_name\":\"L\\u00f6vb\\u0259r ad\\u0131\",\"anchor_title\":\"L\\u00f6bv\\u0259r \\u0259lav\\u0259/redakt\\u0259 et\",\"about_loaded\":\"Y\\u00fckl\\u0259nil\\u0259n plaginl\\u0259r\",\"about_version\":\"Versiya\",\"about_author\":\"M\\u00fc\\u0259llif\",\"about_plugin\":\"Plaginl\\u0259r\",\"about_plugins\":\"Plaginl\\u0259r\",\"about_license\":\"Lisenziya\",\"about_help\":\"K\\u00f6m\\u0259k\",\"about_general\":\"Proqram haqq\\u0131nda\",\"about_title\":\"TinyMCE haqda\",\"anchor_invalid\":\"Please specify a valid anchor name.\",\"accessibility_help\":\"Accessibility Help\",\"accessibility_usage_title\":\"General Usage\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/be.js",
    "content": "tinyMCE.addI18n('be.advanced',{\"underline_desc\":\"\\u041f\\u0430\\u0434\\u043a\\u0440\\u044d\\u0441\\u043b\\u0435\\u043d\\u044b (Ctrl+U)\",\"italic_desc\":\"\\u041a\\u0443\\u0440\\u0441\\u0456\\u045e (Ctrl+I)\",\"bold_desc\":\"\\u0422\\u043b\\u0443\\u0441\\u0442\\u044b (Ctrl B)\",dd:\"\\u0410\\u0437\\u043d\\u0430\\u0447\\u044d\\u043d\\u043d\\u0435 \\u0442\\u044d\\u0440\\u043c\\u0456\\u043d\\u0430\",dt:\"\\u0412\\u044b\\u0437\\u043d\\u0430\\u0447\\u0430\\u0435\\u043c\\u044b \\u0442\\u044d\\u0440\\u043c\\u0456\\u043d\",samp:\"\\u041f\\u0440\\u044b\\u043a\\u043b\\u0430\\u0434 \\u043a\\u043e\\u0434\\u0430\",code:\"\\u041a\\u043e\\u0434\",blockquote:\"\\u0426\\u044b\\u0442\\u0430\\u0442\\u0430\",h6:\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u043e\\u0432\\u0430\\u043a 6\",h5:\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u043e\\u0432\\u0430\\u043a 5\",h4:\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u043e\\u0432\\u0430\\u043a 4\",h3:\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u043e\\u0432\\u0430\\u043a 3\",h2:\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u043e\\u0432\\u0430\\u043a 2\",h1:\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u043e\\u0432\\u0430\\u043a 1\",pre:\"\\u0410\\u0434\\u0444\\u0430\\u0440\\u043c\\u0430\\u0442\\u0430\\u0432\\u0430\\u043d\\u044b \\u0442\\u044d\\u043a\\u0441\\u0442\",address:\"\\u0410\\u0434\\u0440\\u0430\\u0441\",div:\"DIV\",paragraph:\"\\u0410\\u0431\\u0437\\u0430\\u0446\",block:\"\\u0424\\u0430\\u0440\\u043c\\u0430\\u0442\",fontdefault:\"\\u0428\\u0440\\u044b\\u0444\\u0442\",\"font_size\":\"\\u041f\\u0430\\u043c\\u0435\\u0440 \\u0448\\u0440\\u044b\\u0444\\u0442\\u0430\",\"style_select\":\"\\u0421\\u0442\\u044b\\u043b\\u044c\",\"more_colors\":\"\\u0406\\u043d\\u0448\\u044b\\u044f \\u043a\\u043e\\u043b\\u0435\\u0440\\u044b...\",\"toolbar_focus\":\"\\u041f\\u0435\\u0440\\u0430\\u0439\\u0441\\u0446\\u0456 \\u0434\\u0430 \\u043f\\u0430\\u043d\\u044d\\u043b\\u0456 \\u043a\\u043d\\u043e\\u043f\\u0430\\u043a - Alt Q, \\u041f\\u0435\\u0440\\u0430\\u0439\\u0441\\u0446\\u0456 \\u0434\\u0430 \\u0440\\u044d\\u0434\\u0430\\u043a\\u0442\\u0430\\u0440\\u0430 - Alt-Z, \\u041f\\u0435\\u0440\\u0430\\u0439\\u0441\\u0446\\u0456 \\u0434\\u0430 \\u0448\\u043b\\u044f\\u0445\\u0443 \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\\u0430 - Alt-X\",newdocument:\"\\u0412\\u044b \\u045e\\u043f\\u044d\\u045e\\u043d\\u0435\\u043d\\u044b\\u044f, \\u0448\\u0442\\u043e \\u0436\\u0430\\u0434\\u0430\\u0435\\u0446\\u0435 \\u0430\\u0447\\u044b\\u0441\\u0446\\u0456\\u0446\\u044c \\u0443\\u0441\\u0451 \\u0437\\u043c\\u0435\\u0441\\u0446\\u0456\\u0432\\u0430?\",path:\"\\u0422\\u044d\\u0433\\u0456\",\"clipboard_msg\":\"\\u041a\\u0430\\u043f\\u0456\\u0440\\u0430\\u0432\\u0430\\u043d\\u043d\\u0435, \\u0432\\u044b\\u0440\\u0430\\u0437\\u043a\\u0430 \\u0456 \\u0443\\u0441\\u0442\\u0430\\u045e\\u043a\\u0430 \\u043d\\u0435 \\u043f\\u0440\\u0430\\u0446\\u0443\\u044e\\u0446\\u044c \\u045e Mozilla \\u0456 Firefox. \\u0416\\u0430\\u0434\\u0430\\u0435\\u0446\\u0435 \\u0430\\u0442\\u0440\\u044b\\u043c\\u0430\\u0446\\u044c \\u0431\\u043e\\u043b\\u044c\\u0448 \\u043f\\u0430\\u0434\\u0440\\u0430\\u0431\\u044f\\u0437\\u043d\\u0443\\u044e \\u0456\\u043d\\u0444\\u0430\\u0440\\u043c\\u0430\\u0446\\u044b\\u044e?\",\"blockquote_desc\":\"\\u0411\\u043b\\u043e\\u043a \\u0446\\u044b\\u0442\\u0430\\u0442\\u044b\",\"help_desc\":\"\\u0414\\u0430\\u043f\\u0430\\u043c\\u043e\\u0433\\u0430\",\"newdocument_desc\":\"\\u041d\\u043e\\u0432\\u044b \\u0434\\u0430\\u043a\\u0443\\u043c\\u0435\\u043d\\u0442\",\"image_props_desc\":\"\\u0423\\u043b\\u0430\\u0441\\u0446\\u0456\\u0432\\u0430\\u0441\\u0446\\u0456 \\u043c\\u0430\\u043b\\u044e\\u043d\\u043a\\u0430\",\"paste_desc\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c\",\"copy_desc\":\"\\u041a\\u0430\\u043f\\u0456\\u0440\\u0430\\u0432\\u0430\\u0446\\u044c\",\"cut_desc\":\"\\u0412\\u044b\\u0440\\u0430\\u0437\\u0430\\u0446\\u044c\",\"anchor_desc\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c/\\u0440\\u044d\\u0434\\u0430\\u0433\\u0430\\u0432\\u0430\\u0446\\u044c \\u044f\\u043a\\u0430\\u0440\",\"visualaid_desc\":\"\\u0423\\u043b\\u0443\\u0447\\u044b\\u0446\\u044c/\\u0432\\u044b\\u043a\\u043b\\u044e\\u0447\\u044b\\u0446\\u044c \\u043d\\u0430\\u043a\\u0456\\u0440\\u0430\\u0432\\u0430\\u043b\\u044c\\u043d\\u044b\\u044f/\\u043d\\u044f\\u0431\\u0430\\u0447\\u043d\\u044b\\u044f \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\\u044b\",\"charmap_desc\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u0430\\u0434\\u043c\\u044b\\u0441\\u043b\\u043e\\u0432\\u044b \\u0437\\u043d\\u0430\\u043a\",\"backcolor_desc\":\"\\u0410\\u0431\\u0440\\u0430\\u0446\\u044c \\u043a\\u043e\\u043b\\u0435\\u0440 \\u0444\\u043e\\u043d\\u0443\",\"forecolor_desc\":\"\\u0410\\u0431\\u0440\\u0430\\u0446\\u044c \\u043a\\u043e\\u043b\\u0435\\u0440 \\u0442\\u044d\\u043a\\u0441\\u0442\\u0443\",\"custom1_desc\":\"\\u0423\\u0432\\u044f\\u0434\\u0437\\u0456\\u0446\\u0435 \\u0432\\u0430\\u0448\\u0430 \\u0430\\u043f\\u0456\\u0441\\u0430\\u043d\\u043d\\u0435\",\"removeformat_desc\":\"\\u0410\\u0447\\u044b\\u0441\\u0446\\u0456\\u0446\\u044c \\u0444\\u0430\\u0440\\u043c\\u0430\\u0442\\u0430\\u0432\\u0430\\u043d\\u043d\\u0435\",\"hr_desc\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c \\u0433\\u0430\\u0440\\u044b\\u0437\\u0430\\u043d\\u0442\\u0430\\u043b\\u044c\\u043d\\u0443\\u044e \\u043b\\u0456\\u043d\\u0456\\u044e\",\"sup_desc\":\"\\u041d\\u0430\\u0434\\u0440\\u0430\\u0434\\u043a\\u043e\\u0432\\u044b\",\"sub_desc\":\"\\u041f\\u0430\\u0434\\u0440\\u0430\\u0434\\u043a\\u043e\\u0432\\u044b\",\"code_desc\":\"\\u0420\\u044d\\u0434\\u0430\\u0433\\u0430\\u0432\\u0430\\u0446\\u044c HTML-\\u0437\\u044b\\u0445\\u043e\\u0434\\u043d\\u0456\\u043a\",\"cleanup_desc\":\"\\u041f\\u0430\\u0447\\u044b\\u0441\\u0446\\u0456\\u0446\\u044c \\u0431\\u0440\\u0443\\u0434\\u043d\\u044b \\u043a\\u043e\\u0434\",\"image_desc\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c/\\u0440\\u044d\\u0434\\u0430\\u0433\\u0430\\u0432\\u0430\\u0446\\u044c \\u043c\\u0430\\u043b\\u044e\\u043d\\u0430\\u043a\",\"unlink_desc\":\"\\u0412\\u044b\\u0434\\u0430\\u043b\\u0456\\u0446\\u044c \\u0441\\u043f\\u0430\\u0441\\u044b\\u043b\\u043a\\u0443\",\"link_desc\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c/\\u0440\\u044d\\u0434\\u0430\\u0433\\u0430\\u0432\\u0430\\u0446\\u044c \\u0441\\u043f\\u0430\\u0441\\u044b\\u043b\\u043a\\u0443\",\"redo_desc\":\"\\u041f\\u0430\\u045e\\u0442\\u0430\\u0440\\u044b\\u0446\\u044c (Ctrl+Y)\",\"undo_desc\":\"\\u0410\\u0434\\u043c\\u044f\\u043d\\u0456\\u0446\\u044c (Ctrl+Z)\",\"indent_desc\":\"\\u041f\\u0430\\u0432\\u044f\\u043b\\u0456\\u0447\\u044b\\u0446\\u044c \\u0432\\u043e\\u0434\\u0441\\u0442\\u0443\\u043f\",\"outdent_desc\":\"\\u041f\\u0430\\u043c\\u0435\\u043d\\u0448\\u044b\\u0446\\u044c \\u0432\\u043e\\u0434\\u0441\\u0442\\u0443\\u043f\",\"numlist_desc\":\"\\u041d\\u0443\\u043c\\u0430\\u0440\\u0430\\u0432\\u0430\\u043d\\u044b \\u0441\\u043f\\u0456\\u0441\",\"bullist_desc\":\"\\u041c\\u0430\\u0440\\u043a\\u0456\\u0440\\u0430\\u0432\\u0430\\u043d\\u044b \\u0441\\u043f\\u0456\\u0441\",\"justifyfull_desc\":\"\\u0412\\u044b\\u0440\\u0430\\u045e\\u043d\\u043e\\u045e\\u0432\\u0430\\u043d\\u043d\\u0435 \\u043f\\u0430 \\u0448\\u044b\\u0440\\u044b\\u043d\\u0456\",\"justifyright_desc\":\"\\u0412\\u044b\\u0440\\u0430\\u045e\\u043d\\u043e\\u045e\\u0432\\u0430\\u043d\\u043d\\u0435 \\u043d\\u0430\\u043f\\u0440\\u0430\\u0432\\u0430\",\"justifycenter_desc\":\"\\u0412\\u044b\\u0440\\u0430\\u045e\\u043d\\u043e\\u045e\\u0432\\u0430\\u043d\\u043d\\u0435 \\u043f\\u0430 \\u0446\\u044d\\u043d\\u0442\\u0440\\u044b\",\"justifyleft_desc\":\"\\u0412\\u044b\\u0440\\u0430\\u045e\\u043d\\u043e\\u045e\\u0432\\u0430\\u043d\\u043d\\u0435 \\u043d\\u0430\\u043b\\u0435\\u0432\\u0430\",\"striketrough_desc\":\"\\u041f\\u0435\\u0440\\u0430\\u043a\\u0440\\u044d\\u0441\\u043b\\u0435\\u043d\\u044b\",\"help_shortcut\":\"\\u041d\\u0430\\u0446\\u0456\\u0441\\u043d\\u0456\\u0446\\u0435 ALT-F10 \\u0434\\u043b\\u044f \\u043f\\u0430\\u043d\\u044d\\u043b\\u0456 \\u0456\\u043d\\u0441\\u0442\\u0440\\u0443\\u043c\\u0435\\u043d\\u0442\\u0430\\u045e. \\u041d\\u0430\\u0446\\u0456\\u0441\\u043d\\u0456\\u0446\\u0435 ALT-0 \\u0434\\u043b\\u044f \\u0434\\u0430\\u0432\\u0435\\u0434\\u043a\\u0456.\",\"rich_text_area\":\"\\u0412\\u0456\\u0437\\u0443\\u0430\\u043b\\u044c\\u043d\\u044b \\u0440\\u044d\\u0434\\u0430\\u043a\\u0442\\u0430\\u0440\",\"shortcuts_desc\":\"\\u0414\\u0430\\u043f\\u0430\\u043c\\u043e\\u0433\\u0430 \\u043f\\u0430 \\u0434\\u0430\\u0441\\u0442\\u0443\\u043f\\u043d\\u0430\\u0441\\u0446\\u0456\",toolbar:\"\\u041f\\u0430\\u043d\\u044d\\u043b\\u044c \\u0456\\u043d\\u0441\\u0442\\u0440\\u0443\\u043c\\u0435\\u043d\\u0442\\u0430\\u045e\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/be_dlg.js",
    "content": "tinyMCE.addI18n('be.advanced_dlg',{\"link_list\":\"\\u0421\\u043f\\u0456\\u0441 \\u0441\\u043f\\u0430\\u0441\\u044b\\u043b\\u0430\\u043a\",\"link_is_external\":\"\\u0423\\u0432\\u0435\\u0434\\u0437\\u0435\\u043d\\u044b \\u0430\\u0434\\u0440\\u0430\\u0441 \\u043f\\u0430\\u0434\\u043e\\u0431\\u043d\\u044b \\u043d\\u0430 \\u0432\\u043e\\u043d\\u043a\\u0430\\u0432\\u0443\\u044e \\u0441\\u043f\\u0430\\u0441\\u044b\\u043b\\u043a\\u0443, \\u0432\\u044b \\u0436\\u0430\\u0434\\u0430\\u0435\\u0446\\u0435 \\u0434\\u0430\\u0434\\u0430\\u0446\\u044c \\u043f\\u0440\\u044d\\u0444\\u0456\\u043a\\u0441 http://?\",\"link_is_email\":\"\\u0423\\u0432\\u0435\\u0434\\u0437\\u0435\\u043d\\u044b \\u0430\\u0434\\u0440\\u0430\\u0441 \\u043f\\u0430\\u0434\\u043e\\u0431\\u043d\\u044b \\u043d\\u0430 email, \\u0432\\u044b \\u0436\\u0430\\u0434\\u0430\\u0435\\u0446\\u0435 \\u0434\\u0430\\u0434\\u0430\\u0446\\u044c \\u043f\\u0440\\u044d\\u0444\\u0456\\u043a\\u0441 mailto:?\",\"link_titlefield\":\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u043e\\u0432\\u0430\\u043a\",\"link_target_blank\":\"\\u0410\\u0434\\u043a\\u0440\\u044b\\u0446\\u044c \\u0441\\u043f\\u0430\\u0441\\u044b\\u043b\\u043a\\u0443 \\u045e \\u043d\\u043e\\u0432\\u044b\\u043c \\u0430\\u043a\\u043d\\u0435\",\"link_target_same\":\"\\u0410\\u0434\\u043a\\u0440\\u044b\\u0446\\u044c \\u0441\\u043f\\u0430\\u0441\\u044b\\u043b\\u043a\\u0443 \\u045e \\u0442\\u044b\\u043c \\u0436\\u0430 \\u0430\\u043a\\u043d\\u0435\",\"link_target\":\"\\u041c\\u044d\\u0442\\u0430\",\"link_url\":\"\\u0410\\u0434\\u0440\\u0430\\u0441 \\u0441\\u043f\\u0430\\u0441\\u044b\\u043b\\u043a\\u0456\",\"link_title\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c/\\u0440\\u044d\\u0434\\u0430\\u0433\\u0430\\u0432\\u0430\\u0446\\u044c \\u0441\\u043f\\u0430\\u0441\\u044b\\u043b\\u043a\\u0443\",\"image_align_right\":\"\\u041f\\u0430 \\u043f\\u0440\\u0430\\u0432\\u044b\\u043c \\u043a\\u0440\\u0430\\u0456\",\"image_align_left\":\"\\u041f\\u0430 \\u043b\\u0435\\u0432\\u044b\\u043c \\u043a\\u0440\\u0430\\u0456\",\"image_align_textbottom\":\"\\u041f\\u0430 \\u043d\\u0456\\u0437\\u0435 \\u0442\\u044d\\u043a\\u0441\\u0442\\u0443\",\"image_align_texttop\":\"\\u041f\\u0430 \\u0432\\u0435\\u0440\\u0441\\u0435 \\u0442\\u044d\\u043a\\u0441\\u0442\\u0443\",\"image_align_bottom\":\"\\u041f\\u0430 \\u043d\\u0456\\u0437\\u0435\",\"image_align_middle\":\"\\u041f\\u0430 \\u0446\\u044d\\u043d\\u0442\\u0440\\u044b\",\"image_align_top\":\"\\u041f\\u0430 \\u0432\\u0435\\u0440\\u0441\\u0435\",\"image_align_baseline\":\"\\u041f\\u0430 \\u0431\\u0430\\u0437\\u0456\\u0441\\u043d\\u0430\\u0439 \\u043b\\u0456\\u043d\\u0456\\u0456\",\"image_align\":\"\\u0412\\u044b\\u0440\\u0430\\u045e\\u043d\\u043e\\u045e\\u0432\\u0430\\u043d\\u043d\\u0435\",\"image_hspace\":\"\\u0413\\u0430\\u0440\\u044b\\u0437\\u0430\\u043d\\u0442\\u0430\\u043b\\u044c\\u043d\\u044b \\u0432\\u043e\\u0434\\u0441\\u0442\\u0443\\u043f\",\"image_vspace\":\"\\u0412\\u0435\\u0440\\u0442\\u044b\\u043a\\u0430\\u043b\\u044c\\u043d\\u044b \\u0432\\u043e\\u0434\\u0441\\u0442\\u0443\\u043f\",\"image_dimensions\":\"\\u041f\\u0430\\u043c\\u0435\\u0440\",\"image_alt\":\"\\u0410\\u043f\\u0456\\u0441\\u0430\\u043d\\u043d\\u0435 \\u043c\\u0430\\u043b\\u044e\\u043d\\u043a\\u0430\",\"image_list\":\"\\u0421\\u043f\\u0456\\u0441 \\u043c\\u0430\\u043b\\u044e\\u043d\\u043a\\u0430\\u045e\",\"image_border\":\"\\u041c\\u044f\\u0436\\u0430\",\"image_src\":\"\\u0410\\u0434\\u0440\\u0430\\u0441 \\u043c\\u0430\\u043b\\u044e\\u043d\\u043a\\u0430\",\"image_title\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c/\\u0440\\u044d\\u0434\\u0430\\u0433\\u0430\\u0432\\u0430\\u0446\\u044c \\u043c\\u0430\\u043b\\u044e\\u043d\\u0430\\u043a\",\"charmap_title\":\"\\u0410\\u0431\\u044f\\u0440\\u044b\\u0446\\u0435 \\u0430\\u0434\\u043c\\u044b\\u0441\\u043b\\u043e\\u0432\\u044b \\u0437\\u043d\\u0430\\u043a\",\"colorpicker_name\":\"\\u041d\\u0430\\u0437\\u043e\\u045e:\",\"colorpicker_color\":\"\\u041a\\u043e\\u043b\\u0435\\u0440:\",\"colorpicker_named_title\":\"\\u041d\\u0430\\u0439\\u043c\\u0435\\u043d\\u043d\\u044b\\u044f \\u043a\\u043e\\u043b\\u0435\\u0440\\u044b\",\"colorpicker_named_tab\":\"\\u041d\\u0430\\u0439\\u043c\\u0435\\u043d\\u043d\\u044b\",\"colorpicker_palette_title\":\"\\u041a\\u043e\\u043b\\u0435\\u0440\\u044b \\u043f\\u0430\\u043b\\u0456\\u0442\\u0440\\u044b\",\"colorpicker_palette_tab\":\"\\u041f\\u0430\\u043b\\u0456\\u0442\\u0440\\u0430\",\"colorpicker_picker_title\":\"\\u0412\\u044b\\u0431\\u0430\\u0440 \\u043a\\u043e\\u043b\\u0435\\u0440\\u0443\",\"colorpicker_picker_tab\":\"\\u0412\\u044b\\u0431\\u0430\\u0440\",\"colorpicker_title\":\"\\u0410\\u0431\\u044f\\u0440\\u044b\\u0446\\u0435 \\u043a\\u043e\\u043b\\u0435\\u0440\",\"code_wordwrap\":\"\\u041f\\u0435\\u0440\\u0430\\u043d\\u043e\\u0441 \\u0441\\u043b\\u043e\\u045e\",\"code_title\":\"\\u0420\\u044d\\u0434\\u0430\\u043a\\u0442\\u0430\\u0440 HTML-\\u0437\\u044b\\u0445\\u043e\\u0434\\u043d\\u0456\\u043a\\u0430\",\"anchor_name\":\"\\u0406\\u043c\\u044f \\u044f\\u043a\\u0430\\u0440\\u0430\",\"anchor_title\":\"\\u0423\\u0441\\u0442\\u0430\\u0432\\u0456\\u0446\\u044c/\\u0420\\u044d\\u0434\\u0430\\u0433\\u0430\\u0432\\u0430\\u0446\\u044c \\u044f\\u043a\\u0430\\u0440\",\"about_loaded\":\"\\u0417\\u0430\\u0433\\u0440\\u0443\\u0436\\u0430\\u043d\\u044b\\u044f \\u043f\\u043b\\u0430\\u0433\\u0456\\u043d\\u044b\",\"about_version\":\"\\u0412\\u0435\\u0440\\u0441\\u0456\\u044f\",\"about_author\":\"\\u0410\\u045e\\u0442\\u0430\\u0440\",\"about_plugin\":\"\\u041f\\u043b\\u0430\\u0433\\u0456\\u043d\",\"about_plugins\":\"\\u041f\\u043b\\u0430\\u0433\\u0456\\u043d\\u044b\",\"about_license\":\"\\u041b\\u0456\\u0446\\u044d\\u043d\\u0437\\u0456\\u044f\",\"about_help\":\"\\u0414\\u0430\\u043f\\u0430\\u043c\\u043e\\u0433\\u0430\",\"about_general\":\"\\u0410\\u0431 \\u043f\\u0440\\u0430\\u0433\\u0440\\u0430\\u043c\\u0435\",\"about_title\":\"\\u0410\\u0431 TinyMCE\",\"charmap_usage\":\"\\u0412\\u044b\\u043a\\u0430\\u0440\\u044b\\u0441\\u0442\\u043e\\u045e\\u0432\\u0430\\u0439\\u0446\\u0435 \\u043a\\u043b\\u0430\\u0432\\u0456\\u0448\\u044b \\\"\\u041d\\u0430\\u043b\\u0435\\u0432\\u0430\\\" \\u0456 \\\"\\u041d\\u0430\\u043f\\u0440\\u0430\\u0432\\u0430\\\" \\u0434\\u043b\\u044f \\u043d\\u0430\\u0432\\u0456\\u0433\\u0430\\u0446\\u044b\\u0456.\",\"anchor_invalid\":\"\\u041a\\u0430\\u043b\\u0456 \\u043b\\u0430\\u0441\\u043a\\u0430, \\u043f\\u0430\\u0437\\u043d\\u0430\\u0447\\u0446\\u0435 \\u043a\\u0430\\u0440\\u044d\\u043a\\u0442\\u043d\\u0430\\u0435 \\u0456\\u043c\\u044f \\u044f\\u043a\\u0430\\u0440\\u0443.\",\"accessibility_help\":\"\\u0414\\u0430\\u0441\\u0442\\u0443\\u043f\\u043d\\u0430\\u0441\\u0446\\u044c \\u0434\\u0430\\u043f\\u0430\\u043c\\u043e\\u0433\\u0456\",\"accessibility_usage_title\":\"\\u0410\\u0433\\u0443\\u043b\\u044c\\u043d\\u0430\\u0435 \\u0432\\u044b\\u043a\\u0430\\u0440\\u044b\\u0441\\u0442\\u043e\\u045e\\u0432\\u0430\\u043d\\u043d\\u0435\",\"invalid_color_value\":\"\\u041d\\u044f\\u043f\\u0440\\u0430\\u0432\\u0456\\u043b\\u044c\\u043d\\u0430\\u0435 \\u0437\\u043d\\u0430\\u0447\\u044d\\u043d\\u043d\\u0435 \\u043a\\u043e\\u043b\\u0435\\u0440\\u0443\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/bn.js",
    "content": "tinyMCE.addI18n('bn.advanced',{\"underline_desc\":\"Underline (Ctrl+U)\",\"italic_desc\":\"Italic (Ctrl+I)\",\"bold_desc\":\"Bold (Ctrl+B)\",dd:\"Definition description\",dt:\"Definition term \",samp:\"Code sample\",code:\"Code\",blockquote:\"Blockquote\",h6:\"Heading 6\",h5:\"Heading 5\",h4:\"Heading 4\",h3:\"Heading 3\",h2:\"Heading 2\",h1:\"Heading 1\",pre:\"Preformatted\",address:\"Address\",div:\"Div\",paragraph:\"Paragraph\",block:\"Format\",fontdefault:\"Font family\",\"font_size\":\"Font size\",\"style_select\":\"Styles\",\"more_colors\":\"More colors\",\"toolbar_focus\":\"Jump to tool buttons - Alt+Q, Jump to editor - Alt-Z, Jump to element path - Alt-X\",newdocument:\"Are you sure you want clear all contents?\",path:\"Path\",\"clipboard_msg\":\"Copy/Cut/Paste is not available in Mozilla and Firefox.\\nDo you want more information about this issue?\",\"blockquote_desc\":\"Blockquote\",\"help_desc\":\"Help\",\"newdocument_desc\":\"New document\",\"image_props_desc\":\"Image properties\",\"paste_desc\":\"Paste\",\"copy_desc\":\"Copy\",\"cut_desc\":\"Cut\",\"anchor_desc\":\"Insert/edit anchor\",\"visualaid_desc\":\"Toggle guidelines/invisible elements\",\"charmap_desc\":\"Insert custom character\",\"backcolor_desc\":\"Select background color\",\"forecolor_desc\":\"Select text color\",\"custom1_desc\":\"Your custom description here\",\"removeformat_desc\":\"Remove formatting\",\"hr_desc\":\"Insert horizontal ruler\",\"sup_desc\":\"Superscript\",\"sub_desc\":\"Subscript\",\"code_desc\":\"Edit HTML Source\",\"cleanup_desc\":\"Cleanup messy code\",\"image_desc\":\"Insert/edit image\",\"unlink_desc\":\"Unlink\",\"link_desc\":\"Insert/edit link\",\"redo_desc\":\"Redo (Ctrl+Y)\",\"undo_desc\":\"Undo (Ctrl+Z)\",\"indent_desc\":\"Indent\",\"outdent_desc\":\"Outdent\",\"numlist_desc\":\"Ordered list\",\"bullist_desc\":\"Unordered list\",\"justifyfull_desc\":\"Align full\",\"justifyright_desc\":\"Align right\",\"justifycenter_desc\":\"Align center\",\"justifyleft_desc\":\"Align left\",\"striketrough_desc\":\"Strikethrough\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\",\"help_shortcut\":\"Press ALT-F10 for toolbar. Press ALT-0 for help\",\"rich_text_area\":\"Rich Text Area\",\"shortcuts_desc\":\"Accessability Help\",toolbar:\"Toolbar\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/bn_dlg.js",
    "content": "tinyMCE.addI18n('bn.advanced_dlg',{\"link_list\":\"Link list\",\"link_is_external\":\"The URL you entered seems to external link, do you want to add the required http:// prefix?\",\"link_is_email\":\"The URL you entered seems to be an email address, do you want to add the required mailto: prefix?\",\"link_titlefield\":\"Title\",\"link_target_blank\":\"Open link in a new window\",\"link_target_same\":\"Open link in the same window\",\"link_target\":\"Target\",\"link_url\":\"Link URL\",\"link_title\":\"Insert/edit link\",\"image_align_right\":\"Right\",\"image_align_left\":\"Left\",\"image_align_textbottom\":\"Text bottom\",\"image_align_texttop\":\"Text top\",\"image_align_bottom\":\"Bottom\",\"image_align_middle\":\"Middle\",\"image_align_top\":\"Top\",\"image_align_baseline\":\"Baseline\",\"image_align\":\"Alignment\",\"image_hspace\":\"Horizontal space\",\"image_vspace\":\"Vertical space\",\"image_dimensions\":\"Dimensions\",\"image_alt\":\"Image description\",\"image_list\":\"Image list\",\"image_border\":\"Border\",\"image_src\":\"Image URL\",\"image_title\":\"Insert/edit image\",\"charmap_title\":\"Select custom character\",\"colorpicker_name\":\"Name:\",\"colorpicker_color\":\"Color:\",\"colorpicker_named_title\":\"Named colors\",\"colorpicker_named_tab\":\"Named\",\"colorpicker_palette_title\":\"Palette colors\",\"colorpicker_palette_tab\":\"Palette\",\"colorpicker_picker_title\":\"Color picker\",\"colorpicker_picker_tab\":\"Picker\",\"colorpicker_title\":\"Select a color\",\"code_wordwrap\":\"Word wrap\",\"code_title\":\"HTML Source Editor\",\"anchor_name\":\"Anchor name\",\"anchor_title\":\"Insert/edit anchor\",\"about_loaded\":\"Loaded plugins\",\"about_version\":\"Version\",\"about_author\":\"Author\",\"about_plugin\":\"Plugin\",\"about_plugins\":\"Plugins\",\"about_license\":\"License\",\"about_help\":\"Help\",\"about_general\":\"About\",\"about_title\":\"About TinyMCE\",\"anchor_invalid\":\"Please specify a valid anchor name.\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/cs.js",
    "content": "tinyMCE.addI18n('cs.advanced',{\"underline_desc\":\"Podtr\\u017een\\u00e9 (Ctrl+U)\",\"italic_desc\":\"Kurz\\u00edva (Ctrl+I)\",\"bold_desc\":\"Tu\\u010dn\\u00e9 (Ctrl+B)\",dd:\"Popis definice\",dt:\"Term\\u00edn definice\",samp:\"Uk\\u00e1zka k\\u00f3du\",code:\"K\\u00f3d\",blockquote:\"Blokov\\u00e1 citace\",h6:\"Nadpis 6\",h5:\"Nadpis 5\",h4:\"Nadpis 4\",h3:\"Nadpis 3\",h2:\"Nadpis 2\",h1:\"Nadpis 1\",pre:\"P\\u0159edform\\u00e1tov\\u00e1no\",address:\"Adresa\",div:\"Odd\\u00edl\",paragraph:\"Odstavec\",block:\"Form\\u00e1t\",fontdefault:\"P\\u00edsmo\",\"font_size\":\"Velikost p\\u00edsma\",\"style_select\":\"Styly\",\"more_colors\":\"Dal\\u0161\\u00ed barvy\",\"toolbar_focus\":\"P\\u0159echod na panel n\\u00e1stroj\\u016f - Alt Q, p\\u0159echod do editoru - Alt-Z, p\\u0159echod na cestu prvk\\u016f - Alt-X\",newdocument:\"Jste si opravdu jisti, \\u017ee chcete odstranit ve\\u0161ker\\u00fd obsah?\",path:\"Cesta\",\"clipboard_msg\":\"Funkce kop\\u00edrovat/vyjmout/vlo\\u017eit nejsou podporovan\\u00e9 v prohl\\u00ed\\u017ee\\u010d\\u00edch Mozilla a Firefox.\\\\nChcete v\\u00edce informac\\u00ed o tomto probl\\u00e9mu?\",\"blockquote_desc\":\"Blokov\\u00e1 citace\",\"help_desc\":\"N\\u00e1pov\\u011bda\",\"newdocument_desc\":\"Nov\\u00fd dokument\",\"image_props_desc\":\"Vlastnosti obr\\u00e1zku\",\"paste_desc\":\"Vlo\\u017eit\",\"copy_desc\":\"Kop\\u00edrovat\",\"cut_desc\":\"Vyjmout\",\"anchor_desc\":\"Vlo\\u017eit/upravit z\\u00e1lo\\u017eku (kotvu)\",\"visualaid_desc\":\"Zobrazit pomocn\\u00e9 linky/skryt\\u00e9 prvky\",\"charmap_desc\":\"Vlo\\u017eit speci\\u00e1ln\\u00ed znak\",\"backcolor_desc\":\"Barva pozad\\u00ed\",\"forecolor_desc\":\"Barva textu\",\"custom1_desc\":\"Libovoln\\u00fd popisek\",\"removeformat_desc\":\"Odstranit form\\u00e1tov\\u00e1n\\u00ed\",\"hr_desc\":\"Vlo\\u017eit vodorovn\\u00fd odd\\u011blova\\u010d\",\"sup_desc\":\"Horn\\u00ed index\",\"sub_desc\":\"Doln\\u00ed index\",\"code_desc\":\"Upravit HTML zdroj\",\"cleanup_desc\":\"Vy\\u010distit k\\u00f3d\",\"image_desc\":\"Vlo\\u017eit/upravit obr\\u00e1zek\",\"unlink_desc\":\"Odebrat odkaz\",\"link_desc\":\"Vlo\\u017eit/upravit odkaz\",\"redo_desc\":\"Znovu (Ctrl+Y)\",\"undo_desc\":\"Zp\\u011bt (Ctrl+Z)\",\"indent_desc\":\"Zv\\u011bt\\u0161it odsazen\\u00ed\",\"outdent_desc\":\"Zmen\\u0161it odsazen\\u00ed\",\"numlist_desc\":\"\\u010c\\u00edslovan\\u00fd seznam\",\"bullist_desc\":\"Seznam s odr\\u00e1\\u017ekami\",\"justifyfull_desc\":\"Zarovnat do bloku\",\"justifyright_desc\":\"Zarovnat doprava\",\"justifycenter_desc\":\"Zarovnat na st\\u0159ed\",\"justifyleft_desc\":\"Zarovnat doleva\",\"striketrough_desc\":\"P\\u0159e\\u0161krtnut\\u00e9\",\"help_shortcut\":\"Stiskn\\u011bte ALT-F10 pro panel n\\u00e1stroj\\u016f. Stiskn\\u011bte ALT-0 pro n\\u00e1pov\\u011bdu.\",\"rich_text_area\":\"Oblast s form\\u00e1tovan\\u00fdm textem\",\"shortcuts_desc\":\"N\\u00e1pov\\u011bda\",toolbar:\"Panel n\\u00e1stroj\\u016f\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/cs_dlg.js",
    "content": "tinyMCE.addI18n('cs.advanced_dlg',{\"link_list\":\"Seznam odkaz\\u016f\",\"link_is_external\":\"Zadan\\u00e9 URL vypad\\u00e1 jako extern\\u00ed odkaz, chcete doplnit povinn\\u00fd prefix http://?\",\"link_is_email\":\"Zadan\\u00e9 URL vypad\\u00e1 jako e-mailov\\u00e1 adresa, chcete doplnit povinn\\u00fd prefix mailto:?\",\"link_titlefield\":\"Titulek\",\"link_target_blank\":\"Otev\\u0159\\u00edt odkaz v nov\\u00e9m okn\\u011b\",\"link_target_same\":\"Otev\\u0159\\u00edt odkaz ve stejn\\u00e9m okn\\u011b\",\"link_target\":\"C\\u00edl\",\"link_url\":\"URL odkazu\",\"link_title\":\"Vlo\\u017eit/upravit odkaz\",\"image_align_right\":\"Vpravo\",\"image_align_left\":\"Vlevo\",\"image_align_textbottom\":\"Se spodkem \\u0159\\u00e1dku\",\"image_align_texttop\":\"S vrchem \\u0159\\u00e1dku\",\"image_align_bottom\":\"Dol\\u016f\",\"image_align_middle\":\"Na st\\u0159ed \\u0159\\u00e1dku\",\"image_align_top\":\"Nahoru\",\"image_align_baseline\":\"Na z\\u00e1kladnu\",\"image_align\":\"Zarovn\\u00e1n\\u00ed\",\"image_hspace\":\"Horizont\\u00e1ln\\u00ed odsazen\\u00ed\",\"image_vspace\":\"Vertik\\u00e1ln\\u00ed odsazen\\u00ed\",\"image_dimensions\":\"Rozm\\u011bry\",\"image_alt\":\"Popis obr\\u00e1zku\",\"image_list\":\"Seznam obr\\u00e1zk\\u016f\",\"image_border\":\"R\\u00e1me\\u010dek\",\"image_src\":\"URL obr\\u00e1zku\",\"image_title\":\"Vlo\\u017eit/upravit obr\\u00e1zek\",\"charmap_title\":\"Vlo\\u017eit speci\\u00e1ln\\u00ed znak\",\"colorpicker_name\":\"N\\u00e1zev:\",\"colorpicker_color\":\"Vybran\\u00e1 barva:\",\"colorpicker_named_title\":\"Pojmenovan\\u00e9 barvy\",\"colorpicker_named_tab\":\"N\\u00e1zvy\",\"colorpicker_palette_title\":\"Paleta barev\",\"colorpicker_palette_tab\":\"Paleta\",\"colorpicker_picker_title\":\"Kap\\u00e1tko\",\"colorpicker_picker_tab\":\"Kap\\u00e1tko\",\"colorpicker_title\":\"V\\u00fdb\\u011br barvy\",\"code_wordwrap\":\"Zalamov\\u00e1n\\u00ed \\u0159\\u00e1dk\\u016f\",\"code_title\":\"Editor HTML\",\"anchor_name\":\"N\\u00e1zev z\\u00e1lo\\u017eky\",\"anchor_title\":\"Vlo\\u017eit/upravit z\\u00e1lo\\u017eku (kotvu)\",\"about_loaded\":\"Na\\u010dten\\u00e9 z\\u00e1suvn\\u00e9 moduly\",\"about_version\":\"Verze\",\"about_author\":\"Autor\",\"about_plugin\":\"Z\\u00e1suvn\\u00fd modul\",\"about_plugins\":\"Z\\u00e1suvn\\u00e9 moduly\",\"about_license\":\"Licence\",\"about_help\":\"N\\u00e1pov\\u011bda\",\"about_general\":\"O programu\",\"about_title\":\"O TinyMCE\",\"anchor_invalid\":\"Zadejte, pros\\u00edm, platn\\u00fd n\\u00e1zev z\\u00e1lo\\u017eky (kotvy).\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/da.js",
    "content": "tinyMCE.addI18n('da.advanced',{\"underline_desc\":\"Understreget (Ctrl+U)\",\"italic_desc\":\"Kursiv (Ctrl+I)\",\"bold_desc\":\"Fed (Ctrl+B)\",dd:\"Definitionsbeskrivelse\",dt:\"Definitionsterm \",samp:\"Kodeeksempel\",code:\"Kode\",blockquote:\"Blokcitat\",h6:\"Overskrift 6\",h5:\"Overskrift 5\",h4:\"Overskrift 4\",h3:\"Overskrift 3\",h2:\"Overskrift 2\",h1:\"Overskrift 1\",pre:\"Pr\\u00e6formatteret\",address:\"Adresse\",div:\"Div\",paragraph:\"Afsnit\",block:\"Format\",fontdefault:\"Skrifttype\",\"font_size\":\"Skriftst\\u00f8rrelse\",\"style_select\":\"Typografier\",\"more_colors\":\"Flere farver\",\"toolbar_focus\":\"Hop til v\\u00e6rkt\\u00f8jsknapper - Alt+Q, Skift til redigering - Alt-Z, Skift til element sti - Alt-X\",newdocument:\"Er du sikker p\\u00e5 du vil slette alt indhold?\",path:\"Sti\",\"clipboard_msg\":\"Kopier/Klip/inds\\u00e6t er ikke muligt i Mozilla og Firefox.\\nVil du have mere information om dette emne?\",\"blockquote_desc\":\"Blokcitat\",\"help_desc\":\"Hj\\u00e6lp\",\"newdocument_desc\":\"Nyt dokument\",\"image_props_desc\":\"Billedegenskaber\",\"paste_desc\":\"Inds\\u00e6t\",\"copy_desc\":\"Kopier\",\"cut_desc\":\"Klip\",\"anchor_desc\":\"Inds\\u00e6t/rediger anker\",\"visualaid_desc\":\"Sl\\u00e5 hj\\u00e6lp/synlige elementer til/fra\",\"charmap_desc\":\"Inds\\u00e6t specialtegn\",\"backcolor_desc\":\"V\\u00e6lg baggrundsfarve\",\"forecolor_desc\":\"V\\u00e6lg tekstfarve\",\"custom1_desc\":\"Din egen beskrivelse her\",\"removeformat_desc\":\"Fjern formatering\",\"hr_desc\":\"Inds\\u00e6t horisontal linie\",\"sup_desc\":\"H\\u00e6vet skrift\",\"sub_desc\":\"S\\u00e6nket skrift\",\"code_desc\":\"Rediger HTML-kilde\",\"cleanup_desc\":\"Ryd op i uordentlig kode\",\"image_desc\":\"Inds\\u00e6t/rediger billede\",\"unlink_desc\":\"Fjern link\",\"link_desc\":\"Inds\\u00e6t/rediger link\",\"redo_desc\":\"Gendan (Ctrl+Y)\",\"undo_desc\":\"Fortryd (Ctrl+Z)\",\"indent_desc\":\"\\u00d8g indrykning\",\"outdent_desc\":\"Formindsk indrykning\",\"numlist_desc\":\"Nummereret punktopstilling\",\"bullist_desc\":\"Unummereret punktopstilling\",\"justifyfull_desc\":\"Lige marginer\",\"justifyright_desc\":\"H\\u00f8jrejusteret\",\"justifycenter_desc\":\"Centreret\",\"justifyleft_desc\":\"Venstrejusteret\",\"striketrough_desc\":\"Gennemstreget\",\"help_shortcut\":\"Tryk ALT-F10 for v\\u00e6rkt\\u00f8jslinie. Tryk ALT-0 for hj\\u00e6lp\",\"rich_text_area\":\"Tekstomr\\u00e5de med formatering\",\"shortcuts_desc\":\"Hj\\u00e6lp til tilg\\u00e6ngelighed\",toolbar:\"V\\u00e6rkt\\u00f8jslinie\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/da_dlg.js",
    "content": "tinyMCE.addI18n('da.advanced_dlg',{\"link_list\":\"Liste over links\",\"link_is_external\":\"Den URL, der er indtastet, ser ud til at v\\u00e6re et eksternt link. Vil du have tilf\\u00f8jet det p\\u00e5kr\\u00e6vede http:// foran?\",\"link_is_email\":\"Den URL, der er indtastet, ser ud til at v\\u00e6re en emailadresse. Vil du have tilf\\u00f8jet det p\\u00e5kr\\u00e6vede mailto: foran?\",\"link_titlefield\":\"Titel\",\"link_target_blank\":\"\\u00c5ben link i nyt vindue\",\"link_target_same\":\"\\u00c5ben link i samme vindue\",\"link_target\":\"Target\",\"link_url\":\"Link URL\",\"link_title\":\"Inds\\u00e6t/rediger link\",\"image_align_right\":\"H\\u00f8jre\",\"image_align_left\":\"Venstre\",\"image_align_textbottom\":\"Tekst bunden\",\"image_align_texttop\":\"Tekst toppen\",\"image_align_bottom\":\"Bunden\",\"image_align_middle\":\"Centreret\",\"image_align_top\":\"Toppen\",\"image_align_baseline\":\"Grundlinie\",\"image_align\":\"Justering\",\"image_hspace\":\"Horisontal afstand\",\"image_vspace\":\"Vertikal afstand\",\"image_dimensions\":\"Dimensioner\",\"image_alt\":\"Billedbeskrivelse\",\"image_list\":\"Liste over billeder\",\"image_border\":\"Kant\",\"image_src\":\"Billede URL\",\"image_title\":\"Inds\\u00e6t/rediger billede\",\"charmap_title\":\"V\\u00e6lg specialtegn\",\"colorpicker_name\":\"Navn:\",\"colorpicker_color\":\"Farve:\",\"colorpicker_named_title\":\"Navngivet farve\",\"colorpicker_named_tab\":\"Navngivet\",\"colorpicker_palette_title\":\"Palette-farver\",\"colorpicker_palette_tab\":\"Palette\",\"colorpicker_picker_title\":\"Farvev\\u00e6lger\",\"colorpicker_picker_tab\":\"V\\u00e6lger\",\"colorpicker_title\":\"V\\u00e6lg en farve\",\"code_wordwrap\":\"Tekstombrydning\",\"code_title\":\"HTML kildekode-redigering\",\"anchor_name\":\"Navn p\\u00e5 anker\",\"anchor_title\":\"Inds\\u00e6t/rediger anker\",\"about_loaded\":\"Indl\\u00e6ste udvidelser\",\"about_version\":\"Version\",\"about_author\":\"Forfatter\",\"about_plugin\":\"Udvidelse\",\"about_plugins\":\"Udvidelser\",\"about_license\":\"Licens\",\"about_help\":\"Hj\\u00e6lp\",\"about_general\":\"Om\",\"about_title\":\"Om TinyMCE\",\"charmap_usage\":\"Brug venstre og h\\u00f8jre piletaster til at navigere\",\"anchor_invalid\":\"Angiv venligst et gyldigt anker navn.\",\"accessibility_help\":\"Tilg\\u00e6ngeligheds hj\\u00e6lp\",\"accessibility_usage_title\":\"Generel brug\",\"invalid_color_value\":\"Ugyldig farve v\\u00e6rdi\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/de.js",
    "content": "tinyMCE.addI18n('de.advanced',{\"underline_desc\":\"Unterstrichen (Strg+U)\",\"italic_desc\":\"Kursiv (Strg+I)\",\"bold_desc\":\"Fett (Strg+B)\",dd:\"Definitionsbeschreibung\",dt:\"Definitionsbegriff\",samp:\"Beispiel\",code:\"Code\",blockquote:\"Zitatblock\",h6:\"\\u00dcberschrift 6\",h5:\"\\u00dcberschrift 5\",h4:\"\\u00dcberschrift 4\",h3:\"\\u00dcberschrift 3\",h2:\"\\u00dcberschrift 2\",h1:\"\\u00dcberschrift 1\",pre:\"Rohdaten\",address:\"Adresse\",div:\"Zusammenh\\u00e4ngender Bereich\",paragraph:\"Absatz\",block:\"Vorlage\",fontdefault:\"Schriftart\",\"font_size\":\"Schriftgr\\u00f6\\u00dfe\",\"style_select\":\"Format\",\"anchor_delta_width\":\"13\",\"more_colors\":\"Weitere Farben\",\"toolbar_focus\":\"Zur Werkzeugleiste springen: Alt+Q; Zum Editor springen: Alt-Z; Zum Elementpfad springen: Alt-X\",newdocument:\"Wollen Sie wirklich den ganzen Inhalt l\\u00f6schen?\",path:\"Pfad\",\"clipboard_msg\":\"Kopieren, Ausschneiden und Einf\\u00fcgen sind im Mozilla Firefox nicht m\\u00f6glich.\\nWollen Sie mehr \\u00fcber dieses Problem erfahren?\",\"blockquote_desc\":\"Zitatblock\",\"help_desc\":\"Hilfe\",\"newdocument_desc\":\"Neues Dokument\",\"image_props_desc\":\"Bildeigenschaften\",\"paste_desc\":\"Einf\\u00fcgen\",\"copy_desc\":\"Kopieren\",\"cut_desc\":\"Ausschneiden\",\"anchor_desc\":\"Anker einf\\u00fcgen/ver\\u00e4ndern\",\"visualaid_desc\":\"Hilfslinien und unsichtbare Elemente ein-/ausblenden\",\"charmap_desc\":\"Sonderzeichen einf\\u00fcgen\",\"backcolor_desc\":\"Hintergrundfarbe\",\"forecolor_desc\":\"Textfarbe\",\"custom1_desc\":\"Benutzerdefinierte Beschreibung\",\"removeformat_desc\":\"Formatierungen zur\\u00fccksetzen\",\"hr_desc\":\"Trennlinie einf\\u00fcgen\",\"sup_desc\":\"Hochgestellt\",\"sub_desc\":\"Tiefgestellt\",\"code_desc\":\"HTML-Quellcode bearbeiten\",\"cleanup_desc\":\"Quellcode aufr\\u00e4umen\",\"image_desc\":\"Bild einf\\u00fcgen/ver\\u00e4ndern\",\"unlink_desc\":\"Link entfernen\",\"link_desc\":\"Link einf\\u00fcgen/ver\\u00e4ndern\",\"redo_desc\":\"Wiederholen (Strg+Y)\",\"undo_desc\":\"R\\u00fcckg\\u00e4ngig (Strg+Z)\",\"indent_desc\":\"Einr\\u00fccken\",\"outdent_desc\":\"Ausr\\u00fccken\",\"numlist_desc\":\"Sortierte Liste\",\"bullist_desc\":\"Unsortierte Liste\",\"justifyfull_desc\":\"Blocksatz\",\"justifyright_desc\":\"Rechtsb\\u00fcndig\",\"justifycenter_desc\":\"Zentriert\",\"justifyleft_desc\":\"Linksb\\u00fcndig\",\"striketrough_desc\":\"Durchgestrichen\",\"anchor_delta_height\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\",\"help_shortcut\":\"Press ALT-F10 for toolbar. Press ALT-0 for help\",\"rich_text_area\":\"Rich Text Area\",\"shortcuts_desc\":\"Accessability Help\",toolbar:\"Toolbar\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/de_dlg.js",
    "content": "tinyMCE.addI18n('de.advanced_dlg',{\"link_list\":\"Linkliste\",\"link_is_external\":\"Diese Adresse scheint ein externer Link zu sein. M\\u00f6chten Sie das dazu ben\\u00f6tigte \\\"http://\\\" voranstellen?\",\"link_is_email\":\"Diese Adresse scheint eine E-Mail-Adresse zu sein. M\\u00f6chten Sie das dazu ben\\u00f6tigte \\\"mailto:\\\" voranstellen?\",\"link_titlefield\":\"Titel\",\"link_target_blank\":\"Neues Fenster \\u00f6ffnen\",\"link_target_same\":\"Im selben Fenster \\u00f6ffnen\",\"link_target\":\"Fenster\",\"link_url\":\"Adresse\",\"link_title\":\"Link einf\\u00fcgen/ver\\u00e4ndern\",\"image_align_right\":\"Rechts\",\"image_align_left\":\"Links\",\"image_align_textbottom\":\"Unten im Text\",\"image_align_texttop\":\"Oben im Text\",\"image_align_bottom\":\"Unten\",\"image_align_middle\":\"Mittig\",\"image_align_top\":\"Oben\",\"image_align_baseline\":\"Zeile\",\"image_align\":\"Ausrichtung\",\"image_hspace\":\"Horizontaler Abstand\",\"image_vspace\":\"Vertikaler Abstand\",\"image_dimensions\":\"Abmessungen\",\"image_alt\":\"Alternativtext\",\"image_list\":\"Bilderliste\",\"image_border\":\"Rahmen\",\"image_src\":\"Adresse\",\"image_title\":\"Bild einf\\u00fcgen/ver\\u00e4ndern\",\"charmap_title\":\"Sonderzeichen\",\"colorpicker_name\":\"Name:\",\"colorpicker_color\":\"Farbe:\",\"colorpicker_named_title\":\"Benannte Farben\",\"colorpicker_named_tab\":\"Benannte Farben\",\"colorpicker_palette_title\":\"Farbpalette\",\"colorpicker_palette_tab\":\"Palette\",\"colorpicker_picker_title\":\"Farbwahl\",\"colorpicker_picker_tab\":\"Farbwahl\",\"colorpicker_title\":\"Farbe\",\"code_wordwrap\":\"Automatischer Zeilenumbruch\",\"code_title\":\"HTML-Quellcode bearbeiten\",\"anchor_name\":\"Name des Ankers\",\"anchor_title\":\"Anker einf\\u00fcgen/ver\\u00e4ndern\",\"about_loaded\":\"Geladene Plugins\",\"about_version\":\"Version\",\"about_author\":\"Urheber\",\"about_plugin\":\"Plugin\",\"about_plugins\":\"Plugins\",\"about_license\":\"Lizenzbedingungen\",\"about_help\":\"Hilfe\",\"about_general\":\"\\u00dcber\",\"about_title\":\"\\u00dcber TinyMCE\",\"anchor_invalid\":\"Bitte geben Sie einen g\\u00fcltigen Namen f\\u00fcr den Anker ein!\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/el.js",
    "content": "tinyMCE.addI18n('el.advanced',{\"underline_desc\":\"\\u03a5\\u03c0\\u03bf\\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03b9\\u03c3\\u03bc\\u03ad\\u03bd\\u03b1 (Ctrl+U)\",\"italic_desc\":\"\\u03a0\\u03bb\\u03ac\\u03b3\\u03b9\\u03b1 (Ctrl+I)\",\"bold_desc\":\"\\u039c\\u03b1\\u03cd\\u03c1\\u03b1 (Ctrl+B)\",dd:\"\\u03a0\\u03b5\\u03c1\\u03b9\\u03b3\\u03c1\\u03b1\\u03c6\\u03ae \\u039f\\u03c1\\u03b9\\u03c3\\u03bc\\u03bf\\u03cd\",dt:\"\\u039f\\u03c1\\u03b9\\u03c3\\u03bc\\u03cc\\u03c2\",samp:\"\\u0394\\u03b5\\u03af\\u03b3\\u03bc\\u03b1 \\u039a\\u03ce\\u03b4\\u03b9\\u03ba\\u03b1\",code:\"\\u039a\\u03ce\\u03b4\\u03b9\\u03ba\\u03b1\\u03c2\",blockquote:\"Blockquote\",h6:\"\\u0395\\u03c0\\u03b9\\u03ba\\u03b5\\u03c6\\u03b1\\u03bb\\u03af\\u03b4\\u03b1 6\",h5:\"\\u0395\\u03c0\\u03b9\\u03ba\\u03b5\\u03c6\\u03b1\\u03bb\\u03af\\u03b4\\u03b1 5\",h4:\"\\u0395\\u03c0\\u03b9\\u03ba\\u03b5\\u03c6\\u03b1\\u03bb\\u03af\\u03b4\\u03b1 4\",h3:\"\\u0395\\u03c0\\u03b9\\u03ba\\u03b5\\u03c6\\u03b1\\u03bb\\u03af\\u03b4\\u03b1 3\",h2:\"\\u0395\\u03c0\\u03b9\\u03ba\\u03b5\\u03c6\\u03b1\\u03bb\\u03af\\u03b4\\u03b1 2\",h1:\"\\u0395\\u03c0\\u03b9\\u03ba\\u03b5\\u03c6\\u03b1\\u03bb\\u03af\\u03b4\\u03b1 1\",pre:\"Pre\",address:\"\\u0394\\u03b9\\u03b5\\u03cd\\u03b8\\u03c5\\u03bd\\u03c3\\u03b7\",div:\"Div\",paragraph:\"\\u03a0\\u03b1\\u03c1\\u03ac\\u03b3\\u03c1\\u03b1\\u03c6\\u03bf\\u03c2\",block:\"\\u039c\\u03bf\\u03c1\\u03c6\\u03bf\\u03c0\\u03bf\\u03af\\u03b7\\u03c3\\u03b7\",fontdefault:\"\\u0393\\u03c1\\u03b1\\u03bc\\u03bc\\u03b1\\u03c4\\u03bf\\u03c3\\u03b5\\u03b9\\u03c1\\u03ac\",\"font_size\":\"\\u039c\\u03ad\\u03b3\\u03b5\\u03b8\\u03bf\\u03c2 \\u0393\\u03c1\\u03b1\\u03bc\\u03bc\\u03ac\\u03c4\\u03c9\\u03bd\",\"style_select\":\"\\u03a3\\u03c4\\u03c5\\u03bb\",\"link_delta_width\":\"80\",\"image_delta_width\":\"20\",\"more_colors\":\"\\u03a0\\u03b5\\u03c1\\u03b9\\u03c3\\u03c3\\u03cc\\u03c4\\u03b5\\u03c1\\u03b1 \\u03c7\\u03c1\\u03ce\\u03bc\\u03b1\\u03c4\\u03b1\",\"toolbar_focus\":\"\\u039c\\u03b5\\u03c4\\u03ac\\u03b2\\u03b1\\u03c3\\u03b7 \\u03c3\\u03c4\\u03b1 \\u03ba\\u03bf\\u03c5\\u03bc\\u03c0\\u03b9\\u03ac \\u03b5\\u03c1\\u03b3\\u03b1\\u03bb\\u03b5\\u03af\\u03c9\\u03bd - Alt+Q, \\u039c\\u03b5\\u03c4\\u03ac\\u03b2\\u03b1\\u03c3\\u03b7 \\u03c3\\u03c4\\u03bf\\u03bd \\u03b5\\u03c0\\u03b5\\u03be\\u03b5\\u03c1\\u03b3\\u03b1\\u03c3\\u03c4\\u03ae \\u03ba\\u03b5\\u03b9\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5 - Alt-Z, \\u039c\\u03b5\\u03c4\\u03ac\\u03b2\\u03b1\\u03c3\\u03b7 \\u03c3\\u03c4\\u03b7\\u03bd \\u03b4\\u03b9\\u03b1\\u03b4\\u03c1\\u03bf\\u03bc\\u03ae \\u03c4\\u03bf\\u03c5 \\u03c3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03bf\\u03c5 - Alt-X\",newdocument:\"\\u03a3\\u03b9\\u03af\\u03b3\\u03bf\\u03c5\\u03c1\\u03b1 \\u03b8\\u03ad\\u03bb\\u03b5\\u03c4\\u03b5 \\u03bd\\u03b1 \\u03ba\\u03b1\\u03b8\\u03b1\\u03c1\\u03af\\u03c3\\u03b5\\u03c4\\u03b5 \\u03cc\\u03bb\\u03bf \\u03c4\\u03bf \\u03c0\\u03b5\\u03c1\\u03b9\\u03b5\\u03c7\\u03cc\\u03bc\\u03b5\\u03bd\\u03bf ;\",path:\"\\u0394\\u03b9\\u03b1\\u03b4\\u03c1\\u03bf\\u03bc\\u03ae\",\"clipboard_msg\":\"\\u039f\\u03b9 \\u03bb\\u03b5\\u03b9\\u03c4\\u03bf\\u03c5\\u03c1\\u03b3\\u03af\\u03b5\\u03c2 \\u0391\\u03bd\\u03c4\\u03b9\\u03b3\\u03c1\\u03b1\\u03c6\\u03ae/\\u0391\\u03c0\\u03bf\\u03ba\\u03bf\\u03c0\\u03ae/\\u0395\\u03c0\\u03b9\\u03ba\\u03cc\\u03bb\\u03bb\\u03b7\\u03c3\\u03b7 \\u03b4\\u03b5\\u03bd \\u03b5\\u03af\\u03bd\\u03b1\\u03b9 \\u03b4\\u03b9\\u03b1\\u03b8\\u03ad\\u03c3\\u03b9\\u03bc\\u03b5\\u03c2 \\u03c3\\u03b5 Mozilla \\u03ba\\u03b1\\u03b9 Firefox.\\n\\u0398\\u03ad\\u03bb\\u03b5\\u03c4\\u03b5 \\u03c0\\u03b5\\u03c1\\u03b9\\u03c3\\u03c3\\u03cc\\u03c4\\u03b5\\u03c1\\u03b5\\u03c2 \\u03c0\\u03bb\\u03b7\\u03c1\\u03bf\\u03c6\\u03bf\\u03c1\\u03af\\u03b5\\u03c2 ;\",\"blockquote_desc\":\"Blockquote\",\"help_desc\":\"\\u0392\\u03bf\\u03ae\\u03b8\\u03b5\\u03b9\\u03b1\",\"newdocument_desc\":\"\\u039d\\u03ad\\u03bf \\u03ad\\u03b3\\u03b3\\u03c1\\u03b1\\u03c6\\u03bf\",\"image_props_desc\":\"\\u0399\\u03b4\\u03b9\\u03cc\\u03c4\\u03b7\\u03c4\\u03b5\\u03c2 \\u03b5\\u03b9\\u03ba\\u03cc\\u03bd\\u03b1\\u03c2\",\"paste_desc\":\"\\u0395\\u03c0\\u03b9\\u03ba\\u03cc\\u03bb\\u03bb\\u03b7\\u03c3\\u03b7\",\"copy_desc\":\"\\u0391\\u03bd\\u03c4\\u03b9\\u03b3\\u03c1\\u03b1\\u03c6\\u03ae\",\"cut_desc\":\"\\u0391\\u03c0\\u03bf\\u03ba\\u03bf\\u03c0\\u03ae\",\"anchor_desc\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae/\\u03b5\\u03c0\\u03b5\\u03be\\u03b5\\u03c1\\u03b3\\u03b1\\u03c3\\u03af\\u03b1 anchor\",\"visualaid_desc\":\"\\u0395\\u03bc\\u03c6\\u03ac\\u03bd\\u03b9\\u03c3\\u03b7/\\u0391\\u03c0\\u03cc\\u03ba\\u03c1\\u03c5\\u03c8\\u03b7 \\u03b2\\u03bf\\u03b7\\u03b8\\u03b7\\u03c4\\u03b9\\u03ba\\u03ce\\u03bd \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ce\\u03bd \\u03ba\\u03b1\\u03b9 \\u03b1\\u03cc\\u03c1\\u03b1\\u03c4\\u03c9\\u03bd \\u03c3\\u03c4\\u03bf\\u03b9\\u03c7\\u03b5\\u03af\\u03c9\\u03bd\",\"charmap_desc\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae \\u03c7\\u03b1\\u03c1\\u03b1\\u03ba\\u03c4\\u03ae\\u03c1\\u03b1\",\"backcolor_desc\":\"\\u0395\\u03c0\\u03b9\\u03bb\\u03bf\\u03b3\\u03ae \\u03c7\\u03c1\\u03ce\\u03bc\\u03b1\\u03c4\\u03bf\\u03c2 \\u03c6\\u03cc\\u03bd\\u03c4\\u03bf\\u03c5\",\"forecolor_desc\":\"\\u0395\\u03c0\\u03b9\\u03bb\\u03bf\\u03b3\\u03ae \\u03c7\\u03c1\\u03ce\\u03bc\\u03b1\\u03c4\\u03bf\\u03c2 \\u03ba\\u03b5\\u03b9\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5\",\"custom1_desc\":\"\\u0397 \\u03c0\\u03b5\\u03c1\\u03b9\\u03b3\\u03c1\\u03b1\\u03c6\\u03ae \\u03c3\\u03b1\\u03c2 \\u03b5\\u03b4\\u03ce\",\"removeformat_desc\":\"\\u0391\\u03c6\\u03b1\\u03af\\u03c1\\u03b5\\u03c3\\u03b7 \\u03bc\\u03bf\\u03c1\\u03c6\\u03bf\\u03c0\\u03bf\\u03af\\u03b7\\u03c3\\u03b7\\u03c2\",\"hr_desc\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae \\u03bf\\u03c1\\u03b9\\u03b6\\u03cc\\u03bd\\u03c4\\u03b9\\u03b1\\u03c2 \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ae\\u03c2\",\"sup_desc\":\"\\u0395\\u03ba\\u03b8\\u03ad\\u03c4\\u03b7\\u03c2\",\"sub_desc\":\"\\u0394\\u03b5\\u03af\\u03ba\\u03c4\\u03b7\\u03c2\",\"code_desc\":\"\\u0395\\u03c0\\u03b5\\u03be\\u03b5\\u03c1\\u03b3\\u03b1\\u03c3\\u03af\\u03b1 HTML \\u039a\\u03ce\\u03b4\\u03b9\\u03ba\\u03b1\",\"cleanup_desc\":\"\\u039a\\u03b1\\u03b8\\u03b1\\u03c1\\u03b9\\u03c3\\u03bc\\u03cc\\u03c2 \\u03bc\\u03c0\\u03b5\\u03c1\\u03b4\\u03b5\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5 \\u03ba\\u03ce\\u03b4\\u03b9\\u03ba\\u03b1\",\"image_desc\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae/\\u03b5\\u03c0\\u03b5\\u03be\\u03b5\\u03c1\\u03b3\\u03b1\\u03c3\\u03af\\u03b1 \\u03b5\\u03b9\\u03ba\\u03cc\\u03bd\\u03b1\\u03c2\",\"unlink_desc\":\"\\u039a\\u03b1\\u03c4\\u03ac\\u03c1\\u03b3\\u03b7\\u03c3\\u03b7 \\u03c3\\u03c5\\u03bd\\u03b4\\u03ad\\u03c3\\u03bc\\u03bf\\u03c5\",\"link_desc\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae/\\u03b5\\u03c0\\u03b5\\u03be\\u03b5\\u03c1\\u03b3\\u03b1\\u03c3\\u03af\\u03b1 \\u03c3\\u03c5\\u03bd\\u03b4\\u03ad\\u03c3\\u03bc\\u03bf\\u03c5\",\"redo_desc\":\"\\u0395\\u03c0\\u03b1\\u03bd\\u03ac\\u03bb\\u03b7\\u03c8\\u03b7 (Ctrl+Y)\",\"undo_desc\":\"\\u0391\\u03bd\\u03b1\\u03af\\u03c1\\u03b5\\u03c3\\u03b7 (Ctrl+Z)\",\"indent_desc\":\"\\u0395\\u03c3\\u03bf\\u03c7\\u03ae\",\"outdent_desc\":\"\\u03a0\\u03c1\\u03bf\\u03b5\\u03be\\u03bf\\u03c7\\u03ae\",\"numlist_desc\":\"\\u039b\\u03af\\u03c3\\u03c4\\u03b1 \\u03bc\\u03b5 \\u03c3\\u03b5\\u03b9\\u03c1\\u03ac\",\"bullist_desc\":\"\\u039b\\u03af\\u03c3\\u03c4\\u03b1 \\u03c7\\u03c9\\u03c1\\u03af\\u03c2 \\u03c3\\u03b5\\u03b9\\u03c1\\u03ac\",\"justifyfull_desc\":\"\\u03a3\\u03c4\\u03bf\\u03af\\u03c7\\u03b9\\u03c3\\u03b7 \\u03c0\\u03bb\\u03ae\\u03c1\\u03b7\\u03c2\",\"justifyright_desc\":\"\\u03a3\\u03c4\\u03bf\\u03af\\u03c7\\u03b9\\u03c3\\u03b7 \\u03b4\\u03b5\\u03be\\u03b9\\u03ac\",\"justifycenter_desc\":\"\\u03a3\\u03c4\\u03bf\\u03af\\u03c7\\u03b9\\u03c3\\u03b7 \\u03ba\\u03ad\\u03bd\\u03c4\\u03c1\\u03bf\",\"justifyleft_desc\":\"\\u03a3\\u03c4\\u03bf\\u03af\\u03c7\\u03b9\\u03c3\\u03b7 \\u03b1\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac\",\"striketrough_desc\":\"\\u0394\\u03b9\\u03b1\\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03b9\\u03c3\\u03bc\\u03ad\\u03bd\\u03b1\",\"help_shortcut\":\"\\u03a0\\u03b1\\u03c4\\u03ae\\u03c3\\u03c4\\u03b5 ALT-F10 \\u03b3\\u03b9\\u03b1 \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ae \\u03b5\\u03c1\\u03b3\\u03b1\\u03bb\\u03b5\\u03af\\u03c9\\u03bd. \\u03a0\\u03b9\\u03ad\\u03c3\\u03c4\\u03b5 ALT-0 \\u03b3\\u03b9\\u03b1 \\u03b2\\u03bf\\u03ae\\u03b8\\u03b5\\u03b9\\u03b1\",\"rich_text_area\":\"\\u0395\\u03bc\\u03c0\\u03bb\\u03bf\\u03c5\\u03c4\\u03b9\\u03c3\\u03bc\\u03ad\\u03bd\\u03b7 \\u03a0\\u03b5\\u03c1\\u03b9\\u03bf\\u03c7\\u03ae \\u039a\\u03b5\\u03b9\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5\",\"shortcuts_desc\":\"\\u0392\\u03bf\\u03ae\\u03b8\\u03b5\\u03b9\\u03b1 \\u03b3\\u03b9\\u03b1 \\u03a0\\u03c1\\u03bf\\u03c3\\u03b2\\u03b1\\u03c3\\u03b9\\u03bc\\u03cc\\u03c4\\u03b7\\u03c4\\u03b1\",toolbar:\"\\u0393\\u03c1\\u03b1\\u03bc\\u03bc\\u03ae \\u03b5\\u03c1\\u03b3\\u03b1\\u03bb\\u03b5\\u03af\\u03c9\\u03bd\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"image_delta_height\":\"\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/el_dlg.js",
    "content": "tinyMCE.addI18n('el.advanced_dlg',{\"link_list\":\"\\u039b\\u03af\\u03c3\\u03c4\\u03b1 \\u03c3\\u03c5\\u03bd\\u03b4\\u03ad\\u03c3\\u03bc\\u03c9\\u03bd\",\"link_is_external\":\"\\u0397 \\u03b4\\u03b9\\u03b1\\u03b4\\u03c1\\u03bf\\u03bc\\u03ae URL \\u03c0\\u03bf\\u03c5 \\u03b5\\u03b9\\u03c3\\u03ac\\u03b3\\u03b1\\u03c4\\u03b5 \\u03c6\\u03b1\\u03af\\u03bd\\u03b5\\u03c4\\u03b1\\u03b9 \\u03bd\\u03b1 \\u03b5\\u03af\\u03bd\\u03b1\\u03b9 \\u03b5\\u03be\\u03c9\\u03c4\\u03b5\\u03c1\\u03b9\\u03ba\\u03cc\\u03c2 \\u03c3\\u03cd\\u03bd\\u03b4\\u03b5\\u03c3\\u03bc\\u03bf\\u03c2, \\u03bd\\u03b1 \\u03c0\\u03c1\\u03bf\\u03c3\\u03c4\\u03b5\\u03b8\\u03b5\\u03af \\u03c4\\u03bf \\u03b1\\u03c0\\u03b1\\u03c1\\u03b1\\u03af\\u03c4\\u03b7\\u03c4\\u03bf http:// ;\",\"link_is_email\":\"\\u0397 \\u03b4\\u03b9\\u03b1\\u03b4\\u03c1\\u03bf\\u03bc\\u03ae URL \\u03c0\\u03bf\\u03c5 \\u03b5\\u03b9\\u03c3\\u03ac\\u03b3\\u03b1\\u03c4\\u03b5 \\u03c6\\u03b1\\u03af\\u03bd\\u03b5\\u03c4\\u03b1\\u03b9 \\u03bd\\u03b1 \\u03b5\\u03af\\u03bd\\u03b1\\u03b9 email, \\u03bd\\u03b1 \\u03c0\\u03c1\\u03bf\\u03c3\\u03c4\\u03b5\\u03b8\\u03b5\\u03af \\u03c4\\u03bf \\u03b1\\u03c0\\u03b1\\u03c1\\u03b1\\u03af\\u03c4\\u03b7\\u03c4\\u03bf mailto: ;\",\"link_titlefield\":\"\\u03a4\\u03af\\u03c4\\u03bb\\u03bf\\u03c2\",\"link_target_blank\":\"\\u0386\\u03bd\\u03bf\\u03b9\\u03b3\\u03bc\\u03b1 \\u03c3\\u03b5 \\u03bd\\u03ad\\u03bf \\u03c0\\u03b1\\u03c1\\u03ac\\u03b8\\u03c5\\u03c1\\u03bf\",\"link_target_same\":\"\\u0386\\u03bd\\u03bf\\u03b9\\u03b3\\u03bc\\u03b1 \\u03c3\\u03c4\\u03bf \\u03af\\u03b4\\u03b9\\u03bf \\u03c0\\u03b1\\u03c1\\u03ac\\u03b8\\u03c5\\u03c1\\u03bf\",\"link_target\":\"\\u03a3\\u03c4\\u03cc\\u03c7\\u03bf\\u03c2\",\"link_url\":\"\\u0394\\u03b9\\u03b1\\u03b4\\u03c1\\u03bf\\u03bc\\u03ae URL \\u03c3\\u03c5\\u03bd\\u03b4\\u03ad\\u03c3\\u03bc\\u03bf\\u03c5\",\"link_title\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae/\\u03b5\\u03c0\\u03b5\\u03be\\u03b5\\u03c1\\u03b3\\u03b1\\u03c3\\u03af\\u03b1 \\u03c3\\u03c5\\u03bd\\u03b4\\u03ad\\u03c3\\u03bc\\u03bf\\u03c5\",\"image_align_right\":\"\\u0394\\u03b5\\u03be\\u03b9\\u03ac\",\"image_align_left\":\"\\u0391\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03ac\",\"image_align_textbottom\":\"\\u039a\\u03b5\\u03af\\u03bc\\u03b5\\u03bd\\u03bf \\u03ba\\u03ac\\u03c4\\u03c9\",\"image_align_texttop\":\"\\u039a\\u03ad\\u03b9\\u03bc\\u03b5\\u03bd\\u03bf \\u03c0\\u03ac\\u03bd\\u03c9\",\"image_align_bottom\":\"\\u039a\\u03ac\\u03c4\\u03c9\",\"image_align_middle\":\"\\u039c\\u03ad\\u03c3\\u03b7\",\"image_align_top\":\"\\u0395\\u03c0\\u03ac\\u03bd\\u03c9\",\"image_align_baseline\":\"\\u0393\\u03c1\\u03b1\\u03bc\\u03bc\\u03ae \\u03c3\\u03c4\\u03bf\\u03af\\u03c7\\u03b9\\u03c3\\u03b7\\u03c2 \\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03ac\\u03c4\\u03c9\\u03bd\",\"image_align\":\"\\u03a3\\u03c4\\u03bf\\u03af\\u03c7\\u03b9\\u03c3\\u03b7\",\"image_hspace\":\"\\u0391\\u03c0\\u03cc\\u03c3\\u03c4\\u03b1\\u03c3\\u03b7 \\u03bf\\u03c1\\u03b9\\u03b6\\u03cc\\u03bd\\u03c4\\u03b9\\u03b1\",\"image_vspace\":\"\\u0391\\u03c0\\u03cc\\u03c3\\u03c4\\u03b1\\u03c3\\u03b7 \\u03ba\\u03ac\\u03b8\\u03b5\\u03c4\\u03b7\",\"image_dimensions\":\"\\u0394\\u03b9\\u03b1\\u03c3\\u03c4\\u03ac\\u03c3\\u03b5\\u03b9\\u03c2\",\"image_alt\":\"\\u03a0\\u03b5\\u03c1\\u03b9\\u03b3\\u03c1\\u03b1\\u03c6\\u03ae \\u03b5\\u03b9\\u03ba\\u03cc\\u03bd\\u03b1\\u03c2\",\"image_list\":\"\\u039b\\u03af\\u03c3\\u03c4\\u03b1 \\u03b5\\u03b9\\u03ba\\u03cc\\u03bd\\u03c9\\u03bd\",\"image_border\":\"\\u03a0\\u03bb\\u03b1\\u03af\\u03c3\\u03b9\\u03bf\",\"image_src\":\"\\u0394\\u03b9\\u03b1\\u03b4\\u03c1\\u03bf\\u03bc\\u03ae URL \\u0395\\u03b9\\u03ba\\u03cc\\u03bd\\u03b1\\u03c2\",\"image_title\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae/\\u03b5\\u03c0\\u03b5\\u03be\\u03b5\\u03c1\\u03b3\\u03b1\\u03c3\\u03af\\u03b1 \\u03b5\\u03b9\\u03ba\\u03cc\\u03bd\\u03b1\\u03c2\",\"charmap_title\":\"\\u0395\\u03c0\\u03b9\\u03bb\\u03bf\\u03b3\\u03ae \\u03c7\\u03b1\\u03c1\\u03b1\\u03ba\\u03c4\\u03ae\\u03c1\\u03b1\",\"colorpicker_name\":\"\\u038c\\u03bd\\u03bf\\u03bc\\u03b1:\",\"colorpicker_color\":\"\\u03a7\\u03c1\\u03ce\\u03bc\\u03b1:\",\"colorpicker_named_title\":\"\\u039f\\u03bd\\u03bf\\u03bc\\u03b1\\u03c3\\u03c4\\u03b9\\u03ba\\u03ac \\u03c7\\u03c1\\u03ce\\u03bc\\u03b1\\u03c4\\u03b1\",\"colorpicker_named_tab\":\"\\u039f\\u03bd\\u03bf\\u03bc\\u03b1\\u03c3\\u03c4\\u03b9\\u03ba\\u03ac\",\"colorpicker_palette_title\":\"\\u03a7\\u03c1\\u03ce\\u03bc\\u03b1\\u03c4\\u03b1 \\u03c0\\u03b1\\u03bb\\u03ad\\u03c4\\u03b1\\u03c2\",\"colorpicker_palette_tab\":\"\\u03a0\\u03b1\\u03bb\\u03ad\\u03c4\\u03b1\",\"colorpicker_picker_title\":\"\\u0395\\u03c0\\u03b9\\u03bb\\u03bf\\u03b3\\u03ae \\u03c7\\u03c1\\u03ce\\u03bc\\u03b1\\u03c4\\u03bf\\u03c2\",\"colorpicker_picker_tab\":\"\\u0395\\u03c0\\u03b9\\u03bb\\u03bf\\u03b3\\u03ae\",\"colorpicker_title\":\"\\u0394\\u03b9\\u03b1\\u03bb\\u03ad\\u03be\\u03c4\\u03b5 \\u03c7\\u03c1\\u03ce\\u03bc\\u03b1\",\"code_wordwrap\":\"\\u0391\\u03bd\\u03b1\\u03b4\\u03af\\u03c0\\u03bb\\u03c9\\u03c3\\u03b7 \\u03ba\\u03b5\\u03b9\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5\",\"code_title\":\"\\u0395\\u03c0\\u03b5\\u03be\\u03b5\\u03c1\\u03b3\\u03b1\\u03c3\\u03c4\\u03ae\\u03c2 \\u03ba\\u03ce\\u03b4\\u03b9\\u03ba\\u03b1 HTML\",\"anchor_name\":\"\\u038c\\u03bd\\u03bf\\u03bc\\u03b1 anchor\",\"anchor_title\":\"\\u0395\\u03b9\\u03c3\\u03b1\\u03b3\\u03c9\\u03b3\\u03ae/\\u03b5\\u03c0\\u03b5\\u03be\\u03b5\\u03c1\\u03b3\\u03b1\\u03c3\\u03af\\u03b1 anchor\",\"about_loaded\":\"\\u03a6\\u03bf\\u03c1\\u03c4\\u03c9\\u03bc\\u03ad\\u03bd\\u03b1 \\u03c0\\u03c1\\u03cc\\u03c3\\u03b8\\u03b5\\u03c4\\u03b1\",\"about_version\":\"\\u0388\\u03ba\\u03b4\\u03bf\\u03c3\\u03b7\",\"about_author\":\"\\u03a3\\u03c5\\u03b3\\u03b3\\u03c1\\u03b1\\u03c6\\u03ad\\u03b1\\u03c2\",\"about_plugin\":\"\\u03a3\\u03c7\\u03b5\\u03c4\\u03b9\\u03ba\\u03ac \\u03bc\\u03b5 \\u03c4\\u03bf \\u03c0\\u03c1\\u03cc\\u03c3\\u03b8\\u03b5\\u03c4\\u03bf\",\"about_plugins\":\"\\u03a3\\u03c7\\u03b5\\u03c4\\u03b9\\u03ba\\u03ac \\u03bc\\u03b5 \\u03c4\\u03b1 \\u03c0\\u03c1\\u03cc\\u03c3\\u03b8\\u03b5\\u03c4\\u03b1\",\"about_license\":\"\\u0386\\u03b4\\u03b5\\u03b9\\u03b1\",\"about_help\":\"\\u0392\\u03bf\\u03ae\\u03b8\\u03b5\\u03b9\\u03b1\",\"about_general\":\"\\u03a3\\u03c7\\u03b5\\u03c4\\u03b9\\u03ba\\u03ac\",\"about_title\":\"\\u03a3\\u03c7\\u03b5\\u03c4\\u03b9\\u03ba\\u03ac \\u03bc\\u03b5 \\u03c4\\u03bf TinyMCE\",\"charmap_usage\":\"\\u03a7\\u03c1\\u03b7\\u03c3\\u03b9\\u03bc\\u03bf\\u03c0\\u03bf\\u03b9\\u03b5\\u03af\\u03c3\\u03c4\\u03b5 \\u03c4\\u03bf \\u03b1\\u03c1\\u03b9\\u03c3\\u03c4\\u03b5\\u03c1\\u03cc \\u03ba\\u03b1\\u03b9 \\u03b4\\u03b5\\u03be\\u03af \\u03b2\\u03b5\\u03bb\\u03ac\\u03ba\\u03b9 \\u03b3\\u03b9\\u03b1 \\u03bd\\u03b1 \\u03c0\\u03bb\\u03bf\\u03b7\\u03b3\\u03b7\\u03b8\\u03b5\\u03af\\u03c4\\u03b5\",\"anchor_invalid\":\"\\u03a0\\u03b1\\u03c1\\u03b1\\u03ba\\u03b1\\u03bb\\u03ce \\u03b5\\u03b9\\u03c3\\u03ac\\u03b3\\u03b5\\u03c4\\u03b5 \\u03ad\\u03bd\\u03b1 \\u03ad\\u03b3\\u03ba\\u03c5\\u03c1\\u03bf \\u03cc\\u03bd\\u03bf\\u03bc\\u03b1 anchor.\",\"accessibility_help\":\"\\u0392\\u03bf\\u03ae\\u03b8\\u03b5\\u03b9\\u03b1 \\u03b3\\u03b9\\u03b1 \\u03a0\\u03c1\\u03bf\\u03c3\\u03b2\\u03b1\\u03c3\\u03b9\\u03bc\\u03cc\\u03c4\\u03b7\\u03c4\\u03b1\",\"accessibility_usage_title\":\"\\u0393\\u03b5\\u03bd\\u03b9\\u03ba\\u03ae \\u03a7\\u03c1\\u03ae\\u03c3\\u03b7\",\"invalid_color_value\":\"\\u039b\\u03ac\\u03b8\\u03bf\\u03c2 \\u03a4\\u03b9\\u03bc\\u03ae \\u03a7\\u03c1\\u03ce\\u03bc\\u03b1\\u03c4\\u03bf\\u03c2\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/en.js",
    "content": "tinyMCE.addI18n('en.advanced',{\"underline_desc\":\"Underline (Ctrl+U)\",\"italic_desc\":\"Italic (Ctrl+I)\",\"bold_desc\":\"Bold (Ctrl+B)\",dd:\"Definition Description\",dt:\"Definition Term \",samp:\"Code Sample\",code:\"Code\",blockquote:\"Block Quote\",h6:\"Heading 6\",h5:\"Heading 5\",h4:\"Heading 4\",h3:\"Heading 3\",h2:\"Heading 2\",h1:\"Heading 1\",pre:\"Preformatted\",address:\"Address\",div:\"DIV\",paragraph:\"Paragraph\",block:\"Format\",fontdefault:\"Font Family\",\"font_size\":\"Font Size\",\"style_select\":\"Styles\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\",\"more_colors\":\"More Colors...\",\"toolbar_focus\":\"Jump to tool buttons - Alt+Q, Jump to editor - Alt-Z, Jump to element path - Alt-X\",newdocument:\"Are you sure you want clear all contents?\",path:\"Path\",\"clipboard_msg\":\"Copy/Cut/Paste is not available in Mozilla and Firefox.\\nDo you want more information about this issue?\",\"blockquote_desc\":\"Block Quote\",\"help_desc\":\"Help\",\"newdocument_desc\":\"New Document\",\"image_props_desc\":\"Image Properties\",\"paste_desc\":\"Paste (Ctrl+V)\",\"copy_desc\":\"Copy (Ctrl+C)\",\"cut_desc\":\"Cut (Ctrl+X)\",\"anchor_desc\":\"Insert/Edit Anchor\",\"visualaid_desc\":\"show/Hide Guidelines/Invisible Elements\",\"charmap_desc\":\"Insert Special Character\",\"backcolor_desc\":\"Select Background Color\",\"forecolor_desc\":\"Select Text Color\",\"custom1_desc\":\"Your Custom Description Here\",\"removeformat_desc\":\"Remove Formatting\",\"hr_desc\":\"Insert Horizontal Line\",\"sup_desc\":\"Superscript\",\"sub_desc\":\"Subscript\",\"code_desc\":\"Edit HTML Source\",\"cleanup_desc\":\"Cleanup Messy Code\",\"image_desc\":\"Insert/Edit Image\",\"unlink_desc\":\"Unlink\",\"link_desc\":\"Insert/Edit Link\",\"redo_desc\":\"Redo (Ctrl+Y)\",\"undo_desc\":\"Undo (Ctrl+Z)\",\"indent_desc\":\"Increase Indent\",\"outdent_desc\":\"Decrease Indent\",\"numlist_desc\":\"Insert/Remove Numbered List\",\"bullist_desc\":\"Insert/Remove Bulleted List\",\"justifyfull_desc\":\"Align Full\",\"justifyright_desc\":\"Align Right\",\"justifycenter_desc\":\"Align Center\",\"justifyleft_desc\":\"Align Left\",\"striketrough_desc\":\"Strikethrough\",\"help_shortcut\":\"Press ALT-F10 for toolbar. Press ALT-0 for help\",\"rich_text_area\":\"Rich Text Area\",\"shortcuts_desc\":\"Accessability Help\",toolbar:\"Toolbar\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/en_dlg.js",
    "content": "tinyMCE.addI18n('en.advanced_dlg',{\"link_list\":\"Link List\",\"link_is_external\":\"The URL you entered seems to be an external link. Do you want to add the required http:// prefix?\",\"link_is_email\":\"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?\",\"link_titlefield\":\"Title\",\"link_target_blank\":\"Open Link in a New Window\",\"link_target_same\":\"Open Link in the Same Window\",\"link_target\":\"Target\",\"link_url\":\"Link URL\",\"link_title\":\"Insert/Edit Link\",\"image_align_right\":\"Right\",\"image_align_left\":\"Left\",\"image_align_textbottom\":\"Text Bottom\",\"image_align_texttop\":\"Text Top\",\"image_align_bottom\":\"Bottom\",\"image_align_middle\":\"Middle\",\"image_align_top\":\"Top\",\"image_align_baseline\":\"Baseline\",\"image_align\":\"Alignment\",\"image_hspace\":\"Horizontal Space\",\"image_vspace\":\"Vertical Space\",\"image_dimensions\":\"Dimensions\",\"image_alt\":\"Image Description\",\"image_list\":\"Image List\",\"image_border\":\"Border\",\"image_src\":\"Image URL\",\"image_title\":\"Insert/Edit Image\",\"charmap_title\":\"Select Special Character\",\"colorpicker_name\":\"Name:\",\"colorpicker_color\":\"Color:\",\"colorpicker_named_title\":\"Named Colors\",\"colorpicker_named_tab\":\"Named\",\"colorpicker_palette_title\":\"Palette Colors\",\"colorpicker_palette_tab\":\"Palette\",\"colorpicker_picker_title\":\"Color Picker\",\"colorpicker_picker_tab\":\"Picker\",\"colorpicker_title\":\"Select a Color\",\"code_wordwrap\":\"Word Wrap\",\"code_title\":\"HTML Source Editor\",\"anchor_name\":\"Anchor Name\",\"anchor_title\":\"Insert/Edit Anchor\",\"about_loaded\":\"Loaded Plugins\",\"about_version\":\"Version\",\"about_author\":\"Author\",\"about_plugin\":\"Plugin\",\"about_plugins\":\"Plugins\",\"about_license\":\"License\",\"about_help\":\"Help\",\"about_general\":\"About\",\"about_title\":\"About TinyMCE\",\"anchor_invalid\":\"Please specify a valid anchor name.\",\"accessibility_help\":\"Accessibility Help\",\"accessibility_usage_title\":\"General Usage\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/es.js",
    "content": "tinyMCE.addI18n('es.advanced',{\"underline_desc\":\"Subrayado (Ctrl+U)\",\"italic_desc\":\"Cursiva (Ctrl+I)\",\"bold_desc\":\"Negrita (Ctrl+B)\",dd:\"Descripci\\u00f3n de definici\\u00f3n\",dt:\"T\\u00e9rmino de definici\\u00f3n\",samp:\"Ejemplo de c\\u00f3digo\",code:\"C\\u00f3digo\",blockquote:\"Cita\",h6:\"Encabezado 6\",h5:\"Encabezado 5\",h4:\"Encabezado 4\",h3:\"Encabezado 3\",h2:\"Encabezado 2\",h1:\"Encabezado 1\",pre:\"Preformateado\",address:\"Direcci\\u00f3n\",div:\"Div\",paragraph:\"P\\u00e1rrafo\",block:\"Formato\",fontdefault:\"Fuente\",\"font_size\":\"Tama\\u00f1o\",\"style_select\":\"Estilos\",\"more_colors\":\"M\\u00e1s colores\",\"toolbar_focus\":\"Ir a los botones de herramientas - Alt+Q, Ir al editor - Alt-Z, Ir a la ruta del elemento - Alt-X\",newdocument:\" \\u00bfSeguro que desea limpiar todo el contenido?\",path:\"Ruta\",\"clipboard_msg\":\"Copiar/Cortar/Pegar no se encuentra disponible en Mozilla y Firefox.\\\\n \\u00bfQuiere m\\u00e1s informaci\\u00f3n sobre este tema?\",\"blockquote_desc\":\"Cita\",\"help_desc\":\"Ayuda\",\"newdocument_desc\":\"Nuevo documento\",\"image_props_desc\":\"Propiedades de imagen\",\"paste_desc\":\"Pegar\",\"copy_desc\":\"Copiar\",\"cut_desc\":\"Cortar\",\"anchor_desc\":\"Insertar/editar ancla\",\"visualaid_desc\":\"Mostrar/ocultar l\\u00ednea de gu\\u00eda/elementos invisibles\",\"charmap_desc\":\"Insertar caracteres personalizados\",\"backcolor_desc\":\"Elegir color de fondo\",\"forecolor_desc\":\"Elegir color del texto\",\"custom1_desc\":\"Su descripci\\u00f3n personal aqu\\u00ed\",\"removeformat_desc\":\"Limpiar formato\",\"hr_desc\":\"Insertar regla horizontal\",\"sup_desc\":\"Super\\u00edndice\",\"sub_desc\":\"Sub\\u00edndice\",\"code_desc\":\"Editar c\\u00f3digo HTML\",\"cleanup_desc\":\"Limpiar c\\u00f3digo basura\",\"image_desc\":\"Insertar/editar imagen\",\"unlink_desc\":\"Quitar hiperv\\u00ednculo\",\"link_desc\":\"Insertar/editar hiperv\\u00ednculo\",\"redo_desc\":\"Rehacer (Ctrl+Y)\",\"undo_desc\":\"Deshacer (Ctrl+Z)\",\"indent_desc\":\"Aumentar sangr\\u00eda\",\"outdent_desc\":\"Reducir sangr\\u00eda\",\"numlist_desc\":\"Lista ordenada\",\"bullist_desc\":\"Lista desordenada\",\"justifyfull_desc\":\"Justificar\",\"justifyright_desc\":\"Alinear a la derecha\",\"justifycenter_desc\":\"Alinear al centro\",\"justifyleft_desc\":\"Alinear a la izquierda\",\"striketrough_desc\":\"Tachado\",\"help_shortcut\":\"Presiones ALT-F10 para la barra de herramientas. Presione ALT-0 para ayuda.\",\"rich_text_area\":\"\\u00c1rea de texto con formato\",\"shortcuts_desc\":\"Ayuda de accesibilidad\",toolbar:\"Barra de Herramientas\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/es_dlg.js",
    "content": "tinyMCE.addI18n('es.advanced_dlg',{\"link_list\":\"Lista de hiperv\\u00ednculos\",\"link_is_external\":\"La URL que introdujo parece ser un v\\u00ednculo externo,  \\u00bfdesea agregar el prefijo http:// necesario?\",\"link_is_email\":\"La URL que introdujo parece ser una direcci\\u00f3n de email,  \\u00bfdesea agregar el prefijo mailto: necesario?\",\"link_titlefield\":\"T\\u00edtulo\",\"link_target_blank\":\"Abrir v\\u00ednculo en una ventana nueva\",\"link_target_same\":\"Abrir v\\u00ednculo en la misma ventana\",\"link_target\":\"Destino\",\"link_url\":\"URL del hiperv\\u00ednculo\",\"link_title\":\"Insertar/editar hiperv\\u00ednculo\",\"image_align_right\":\"Derecha\",\"image_align_left\":\"Izquierda\",\"image_align_textbottom\":\"Texto debajo\",\"image_align_texttop\":\"Texto arriba\",\"image_align_bottom\":\"Debajo\",\"image_align_middle\":\"Medio\",\"image_align_top\":\"Arriba\",\"image_align_baseline\":\"L\\u00ednea base\",\"image_align\":\"Alineaci\\u00f3n\",\"image_hspace\":\"Espacio horizontal\",\"image_vspace\":\"Espacio vertical\",\"image_dimensions\":\"Dimensi\\u00f3n\",\"image_alt\":\"Descripci\\u00f3n de la Imagen\",\"image_list\":\"Lista de la Imagen\",\"image_border\":\"Borde\",\"image_src\":\"URL de la Imagen\",\"image_title\":\"Insertar/editar imagen\",\"charmap_title\":\"Elegir caracter personalizado\",\"colorpicker_name\":\"Nombre:\",\"colorpicker_color\":\"Color:\",\"colorpicker_named_title\":\"Colores nombrados\",\"colorpicker_named_tab\":\"Nombrados\",\"colorpicker_palette_title\":\"Paleta de colores\",\"colorpicker_palette_tab\":\"Paleta\",\"colorpicker_picker_title\":\"Paleta de color\",\"colorpicker_picker_tab\":\"Selector\",\"colorpicker_title\":\"Elegir color\",\"code_wordwrap\":\"Ajustar al margen\",\"code_title\":\"Editor del c\\u00f3digo fuente HTML\",\"anchor_name\":\"Nombre del ancla\",\"anchor_title\":\"Insertar/editar ancla\",\"about_loaded\":\"Complementos cargados\",\"about_version\":\"Versi\\u00f3n\",\"about_author\":\"Autor\",\"about_plugin\":\"Complemento\",\"about_plugins\":\"Complementos\",\"about_license\":\"Licencia\",\"about_help\":\"Ayuda\",\"about_general\":\"Acerca de \",\"about_title\":\"Acerca de TinyMCE\",\"anchor_invalid\":\"Especifique un nombre v\\u00e1lido para liga\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/fr.js",
    "content": "tinyMCE.addI18n('fr.advanced',{\"underline_desc\":\"Soulign\\u00e9 (Ctrl+U)\",\"italic_desc\":\"Italique (Ctrl+I)\",\"bold_desc\":\"Gras (Ctrl+B)\",dd:\"D\\u00e9finition du terme\",dt:\"Terme \\u00e0 d\\u00e9finir\",samp:\"Exemple de code\",code:\"Code\",blockquote:\"Bloc de citation\",h6:\"Titre 6\",h5:\"Titre 5\",h4:\"Titre 4\",h3:\"Titre 3\",h2:\"Titre 2\",h1:\"Titre 1\",pre:\"Pr\\u00e9format\\u00e9\",address:\"Adresse\",div:\"Div\",paragraph:\"Paragraphe\",block:\"Format\",fontdefault:\"Police\",\"font_size\":\"Taille police\",\"style_select\":\"Styles\",\"more_colors\":\"Plus de couleurs\",\"toolbar_focus\":\"Atteindre les boutons de l\\'\\u00e9diteur - Alt+Q, Aller \\u00e0 l\\'\\u00e9diteur - Alt-Z, Aller au chemin de l\\'\\u00e9l\\u00e9ment - Alt-X\",newdocument:\"\\u00cates-vous s\\u00fbr de vouloir effacer l\\'int\\u00e9gralit\\u00e9 du document ?\",path:\"Chemin\",\"clipboard_msg\":\"Les fonctions Copier/Couper/Coller ne sont pas valables sur Mozilla et Firefox.\\\\nSouhaitez-vous avoir plus d\\'informations sur ce sujet ?\",\"blockquote_desc\":\"Citation\",\"help_desc\":\"Aide\",\"newdocument_desc\":\"Nouveau document\",\"image_props_desc\":\"Propri\\u00e9t\\u00e9s de l\\'image\",\"paste_desc\":\"Coller\",\"copy_desc\":\"Copier\",\"cut_desc\":\"Couper\",\"anchor_desc\":\"Ins\\u00e9rer / \\u00e9diter une ancre\",\"visualaid_desc\":\"Activer / d\\u00e9sactiver les guides et les \\u00e9l\\u00e9ments invisibles\",\"charmap_desc\":\"Ins\\u00e9rer des caract\\u00e8res sp\\u00e9ciaux\",\"backcolor_desc\":\"Choisir la couleur de surlignage\",\"forecolor_desc\":\"Choisir la couleur du texte\",\"custom1_desc\":\"Votre description personnalis\\u00e9e ici\",\"removeformat_desc\":\"Supprimer le formatage\",\"hr_desc\":\"Ins\\u00e9rer un trait horizontal\",\"sup_desc\":\"Exposant\",\"sub_desc\":\"Indice\",\"code_desc\":\"\\u00c9diter le code source HTML\",\"cleanup_desc\":\"Nettoyer le code\",\"image_desc\":\"Ins\\u00e9rer / \\u00e9diter l\\'image\",\"unlink_desc\":\"Supprimer le lien\",\"link_desc\":\"Ins\\u00e9rer / \\u00e9diter le lien\",\"redo_desc\":\"R\\u00e9tablir (Ctrl+Y)\",\"undo_desc\":\"Annuler (Ctrl+Z)\",\"indent_desc\":\"Indenter\",\"outdent_desc\":\"Retirer l\\'indentation\",\"numlist_desc\":\"Liste num\\u00e9rot\\u00e9e\",\"bullist_desc\":\"Liste \\u00e0 puces\",\"justifyfull_desc\":\"Justifi\\u00e9\",\"justifyright_desc\":\"Align\\u00e9 \\u00e0 droite\",\"justifycenter_desc\":\"Centr\\u00e9\",\"justifyleft_desc\":\"Align\\u00e9 \\u00e0 gauche\",\"striketrough_desc\":\"Barr\\u00e9\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\",\"help_shortcut\":\"\",\"rich_text_area\":\"\",\"shortcuts_desc\":\"\",toolbar:\"\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/fr_dlg.js",
    "content": "tinyMCE.addI18n('fr.advanced_dlg',{\"link_list\":\"Liste de liens\",\"link_is_external\":\"L\\'URL que vous avez saisie semble \\u00eatre une adresse web externe. Souhaitez-vous ajouter le pr\\u00e9fixe \\u00ab http:// \\u00bb ?\",\"link_is_email\":\"L\\'URL que vous avez saisie semble \\u00eatre une adresse e-mail, souhaitez-vous ajouter le pr\\u00e9fixe \\u00ab mailto: \\u00bb ?\",\"link_titlefield\":\"Titre\",\"link_target_blank\":\"Ouvrir dans une nouvelle fen\\u00eatre\",\"link_target_same\":\"Ouvrir dans la m\\u00eame fen\\u00eatre\",\"link_target\":\"Cible\",\"link_url\":\"URL du lien\",\"link_title\":\"Ins\\u00e9rer / \\u00e9diter un lien\",\"image_align_right\":\"Droite (flottant)\",\"image_align_left\":\"Gauche (flottant)\",\"image_align_textbottom\":\"Texte en bas\",\"image_align_texttop\":\"Texte en haut\",\"image_align_bottom\":\"En bas\",\"image_align_middle\":\"Au milieu\",\"image_align_top\":\"En haut\",\"image_align_baseline\":\"Normal\",\"image_align\":\"Alignement\",\"image_hspace\":\"Espacement horizontal\",\"image_vspace\":\"Espacement vertical\",\"image_dimensions\":\"Dimensions\",\"image_alt\":\"Description de l\\'image\",\"image_list\":\"Liste d\\'images\",\"image_border\":\"Bordure\",\"image_src\":\"URL de l\\'image\",\"image_title\":\"Ins\\u00e9rer / \\u00e9diter une image\",\"charmap_title\":\"Choisir le caract\\u00e8re \\u00e0 ins\\u00e9rer\",\"colorpicker_name\":\"Nom :\",\"colorpicker_color\":\"Couleur :\",\"colorpicker_named_title\":\"Couleurs nomm\\u00e9es\",\"colorpicker_named_tab\":\"Noms\",\"colorpicker_palette_title\":\"Couleurs de la palette\",\"colorpicker_palette_tab\":\"Palette\",\"colorpicker_picker_title\":\"Nuancier\",\"colorpicker_picker_tab\":\"Nuancier\",\"colorpicker_title\":\"Choisir une couleur\",\"code_wordwrap\":\"Retour \\u00e0 la ligne\",\"code_title\":\"\\u00c9diteur de source HTML\",\"anchor_name\":\"Nom de l\\'ancre\",\"anchor_title\":\"Ins\\u00e9rer / \\u00e9diter une ancre\",\"about_loaded\":\"Plugins charg\\u00e9s\",\"about_version\":\"Version\",\"about_author\":\"Auteur\",\"about_plugin\":\"Plugin\",\"about_plugins\":\"Plugins\",\"about_license\":\"Licence\",\"about_help\":\"Aide\",\"about_general\":\"\\u00c0 propos\",\"about_title\":\"\\u00c0 propos de TinyMCE\",\"anchor_invalid\":\"Veuillez sp\\u00e9cifier un nom d\\'ancre valide.\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/he.js",
    "content": "tinyMCE.addI18n('he.advanced',{\"underline_desc\":\"\\u05e7\\u05d5 \\u05ea\\u05d7\\u05ea\\u05d5\\u05df (Ctrl+U)\",\"italic_desc\":\"\\u05e0\\u05d8\\u05d5\\u05d9 (Ctrl+I)\",\"bold_desc\":\"\\u05de\\u05d5\\u05d3\\u05d2\\u05e9 (Ctrl+B)\",dd:\"\\u05d4\\u05d2\\u05d3\\u05e8\\u05ea \\u05d4\\u05de\\u05d5\\u05e9\\u05d2\",dt:\"\\u05de\\u05d5\\u05e9\\u05d2\",samp:\"\\u05d3\\u05d5\\u05d2\\u05de\\u05ea \\u05e7\\u05d5\\u05d3\",code:\"\\u05e7\\u05d5\\u05d3\",blockquote:\"\\u05e6\\u05d9\\u05d8\\u05d5\\u05d8 \\u05e7\\u05d8\\u05e2\",h6:\"\\u05db\\u05d5\\u05ea\\u05e8\\u05ea 6\",h5:\"\\u05db\\u05d5\\u05ea\\u05e8\\u05ea 5\",h4:\"\\u05db\\u05d5\\u05ea\\u05e8\\u05ea 4\",h3:\"\\u05db\\u05d5\\u05ea\\u05e8\\u05ea 3\",h2:\"\\u05db\\u05d5\\u05ea\\u05e8\\u05ea 2\",h1:\"\\u05db\\u05d5\\u05ea\\u05e8\\u05ea 1\",pre:\"Preformatted\",address:\"\\u05db\\u05ea\\u05d5\\u05d1\\u05ea\",div:\"Div\",paragraph:\"\\u05e4\\u05e1\\u05e7\\u05d4\",block:\"\\u05e2\\u05d9\\u05e6\\u05d5\\u05d1\",fontdefault:\"\\u05d2\\u05d5\\u05e4\\u05df\",\"font_size\":\"\\u05d2\\u05d5\\u05d3\\u05dc \\u05d2\\u05d5\\u05e4\\u05df\",\"style_select\":\"\\u05e1\\u05d2\\u05e0\\u05d5\\u05e0\\u05d5\\u05ea\",\"more_colors\":\"\\u05e2\\u05d5\\u05d3 \\u05e6\\u05d1\\u05e2\\u05d9\\u05dd\",\"toolbar_focus\":\"\\u05d4\\u05e2\\u05d1\\u05e8\\u05d4 \\u05dc\\u05e1\\u05e8\\u05d2\\u05dc \\u05d4\\u05db\\u05dc\\u05d9\\u05dd - Alt+Q, \\u05d4\\u05e2\\u05d1\\u05e8\\u05d4 \\u05dc\\u05de\\u05e2\\u05d1\\u05d3 \\u05ea\\u05de\\u05dc\\u05d9\\u05dc\\u05d9\\u05dd - Alt-Z, \\u05d4\\u05e2\\u05d1\\u05e8\\u05d4 \\u05dc\\u05e0\\u05ea\\u05d9\\u05d1 \\u05d4\\u05d0\\u05dc\\u05de\\u05d8\\u05d9\\u05dd - Alt-X\",newdocument:\"\\u05d4\\u05d0\\u05dd \\u05d1\\u05e8\\u05e6\\u05d5\\u05e0\\u05da \\u05dc\\u05de\\u05d7\\u05d5\\u05e7 \\u05d0\\u05ea \\u05db\\u05dc \\u05d4\\u05ea\\u05d5\\u05db\\u05df?\",path:\"path\",\"clipboard_msg\":\"\\u05d4\\u05e2\\u05ea\\u05e7/\\u05d2\\u05d6\\u05d5\\u05e8/\\u05d4\\u05d3\\u05d1\\u05e7 \\u05dc\\u05d0 \\u05d6\\u05de\\u05d9\\u05e0\\u05d9\\u05dd \\u05d1 Mozilla \\u05d5\\u05d1-Firefox.\\n      \\u05d4\\u05d0\\u05dd \\u05d1\\u05e8\\u05e6\\u05d5\\u05e0\\u05da \\u05dc\\u05e7\\u05d1\\u05dc \\u05de\\u05d9\\u05d3\\u05e2 \\u05e0\\u05d5\\u05e1\\u05e3 \\u05e2\\u05dc \\u05d4\\u05e0\\u05d5\\u05e9\\u05d0?\",\"blockquote_desc\":\"\\u05e6\\u05d9\\u05d8\\u05d5\\u05d8\",\"help_desc\":\"\\u05e2\\u05d6\\u05e8\\u05d4\",\"newdocument_desc\":\"\\u05de\\u05e1\\u05de\\u05da \\u05d7\\u05d3\\u05e9\",\"image_props_desc\":\"\\u05de\\u05d0\\u05e4\\u05d9\\u05d9\\u05e0\\u05d9 \\u05d4\\u05ea\\u05de\\u05d5\\u05e0\\u05d4\",\"paste_desc\":\"\\u05d4\\u05d3\\u05d1\\u05e7\\u05d4\",\"copy_desc\":\"\\u05d4\\u05e2\\u05ea\\u05e7\\u05d4\",\"cut_desc\":\"\\u05d2\\u05d6\\u05d9\\u05e8\\u05d4\",\"anchor_desc\":\"\\u05d4\\u05d5\\u05e1\\u05e4\\u05ea/\\u05e2\\u05e8\\u05d9\\u05db\\u05ea \\u05e1\\u05d9\\u05de\\u05e0\\u05d9\\u05d4\",\"visualaid_desc\":\"\\u05d4\\u05e6\\u05d2\\u05d4 \\u05d0\\u05d5 \\u05d4\\u05e1\\u05ea\\u05e8\\u05d4 \\u05e9\\u05dc \\u05e1\\u05d9\\u05de\\u05d5\\u05e0\\u05d9 \\u05e2\\u05d9\\u05e6\\u05d5\\u05d1\",\"charmap_desc\":\"\\u05d4\\u05d5\\u05e1\\u05e4\\u05ea \\u05e1\\u05d9\\u05de\\u05df\",\"backcolor_desc\":\"\\u05d1\\u05d7\\u05d9\\u05e8\\u05ea \\u05e6\\u05d1\\u05e2 \\u05e8\\u05e7\\u05e2\",\"forecolor_desc\":\"\\u05d1\\u05d7\\u05d9\\u05e8\\u05ea \\u05e6\\u05d1\\u05e2 \\u05d2\\u05d5\\u05e4\\u05df\",\"custom1_desc\":\"\\u05d4\\u05ea\\u05d0\\u05d5\\u05e8 \\u05e9\\u05dc\\u05da \\u05db\\u05d0\\u05d5\",\"removeformat_desc\":\"\\u05d4\\u05e1\\u05e8\\u05ea \\u05e2\\u05d9\\u05e6\\u05d5\\u05d1\",\"hr_desc\":\"\\u05d4\\u05d5\\u05e1\\u05e4\\u05ea \\u05e7\\u05d5 \\u05de\\u05e4\\u05e8\\u05d9\\u05d3\",\"sup_desc\":\"\\u05db\\u05ea\\u05d1 \\u05ea\\u05d7\\u05ea\\u05d9\",\"sub_desc\":\"\\u05db\\u05ea\\u05d1 \\u05e2\\u05d9\\u05dc\\u05d9\",\"code_desc\":\"\\u05e2\\u05e8\\u05d9\\u05db\\u05ea \\u05e7\\u05d5\\u05d3 HTML\",\"cleanup_desc\":\"\\u05e0\\u05d9\\u05e7\\u05d5\\u05d9 \\u05e7\\u05d5\\u05d3\",\"image_desc\":\"\\u05d4\\u05d5\\u05e1\\u05e4\\u05d4/\\u05e2\\u05e8\\u05d9\\u05db\\u05ea \\u05d3\\u05e3 \\u05ea\\u05de\\u05d5\\u05e0\\u05d4\",\"unlink_desc\":\"\\u05d4\\u05e1\\u05e8\\u05ea \\u05e7\\u05d9\\u05e9\\u05d5\\u05e8\",\"link_desc\":\"\\u05d4\\u05d5\\u05e1\\u05e4\\u05ea/\\u05e2\\u05e8\\u05d9\\u05db\\u05ea \\u05e7\\u05d9\\u05e9\\u05d5\\u05e8\",\"redo_desc\":\"\\u05d7\\u05d6\\u05e8\\u05d4 \\u05e2\\u05dc \\u05e4\\u05e2\\u05d5\\u05dc\\u05d4 (Ctrl+Y)\",\"undo_desc\":\"\\u05d1\\u05d9\\u05d8\\u05d5\\u05dc \\u05e4\\u05e2\\u05d5\\u05dc\\u05d4 (Ctrl+Z)\",\"indent_desc\":\"\\u05d4\\u05e7\\u05d8\\u05e0\\u05ea \\u05db\\u05e0\\u05d9\\u05e1\\u05d4\",\"outdent_desc\":\"\\u05d4\\u05d2\\u05d3\\u05dc\\u05ea \\u05db\\u05e0\\u05d9\\u05e1\\u05d4\",\"numlist_desc\":\"\\u05de\\u05e1\\u05e4\\u05d5\\u05e8\",\"bullist_desc\":\"\\u05ea\\u05d1\\u05dc\\u05d9\\u05d8\\u05d9\\u05dd\",\"justifyfull_desc\":\"\\u05d9\\u05d9\\u05e9\\u05d5\\u05e8 \\u05dc\\u05e9\\u05e0\\u05d9 \\u05d4\\u05e6\\u05d3\\u05d3\\u05d9\\u05dd\",\"justifyright_desc\":\"\\u05d9\\u05d9\\u05e9\\u05d5\\u05e8 \\u05d8\\u05e7\\u05e1\\u05d8 \\u05dc\\u05d9\\u05de\\u05d9\\u05df\",\"justifycenter_desc\":\"\\u05de\\u05d9\\u05e8\\u05db\\u05d5\\u05d6 \\u05d8\\u05e7\\u05e1\\u05d8\",\"justifyleft_desc\":\"\\u05d9\\u05d9\\u05e9\\u05d5\\u05e8 \\u05d8\\u05e7\\u05e1\\u05d8 \\u05dc\\u05e9\\u05de\\u05d0\\u05dc\",\"striketrough_desc\":\"\\u05e7\\u05d5 \\u05d7\\u05d5\\u05e6\\u05d4\",\"help_shortcut\":\"\\u05dc\\u05d7\\u05e6/\\u05d9 ALT-F10 \\u05dc\\u05e1\\u05e8\\u05d2\\u05dc \\u05d4\\u05db\\u05dc\\u05d9\\u05dd. \\u05dc\\u05d7\\u05e6/\\u05d9 ALT-0 \\u05dc\\u05e2\\u05d6\\u05e8\\u05d4\",\"rich_text_area\":\"\\u05d0\\u05d6\\u05d5\\u05e8 \\u05e2\\u05e8\\u05d9\\u05db\\u05ea \\u05d8\\u05e7\\u05e1\\u05d8 \\u05e2\\u05e9\\u05d9\\u05e8\",\"shortcuts_desc\":\"\\u05e2\\u05d6\\u05e8\\u05ea \\u05d2\\u05d9\\u05e9\\u05d4\",toolbar:\"\\u05e1\\u05e8\\u05d2\\u05dc \\u05db\\u05dc\\u05d9\\u05dd\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/he_dlg.js",
    "content": "tinyMCE.addI18n('he.advanced_dlg',{\"link_list\":\"\\u05e8\\u05e9\\u05d9\\u05de\\u05ea \\u05e7\\u05d9\\u05e9\\u05d5\\u05e8\\u05d9\\u05dd\",\"link_is_external\":\"\\u05db\\u05ea\\u05d5\\u05d1\\u05ea \\u05d4-URL \\u05e9\\u05d4\\u05d5\\u05db\\u05e0\\u05e1\\u05d4 \\u05d4\\u05d9\\u05d0 \\u05db\\u05db\\u05dc \\u05d4\\u05e0\\u05e8\\u05d0\\u05d4 \\u05e7\\u05d9\\u05e9\\u05d5\\u05e8 \\u05d7\\u05d9\\u05e6\\u05d5\\u05e0\\u05d9 \\u05d4\\u05d0\\u05dd \\u05d1\\u05e8\\u05e6\\u05d5\\u05e0\\u05da \\u05dc\\u05d4\\u05d5\\u05e1\\u05d9\\u05e3 \\u05d0\\u05ea \\u05d4\\u05e7\\u05d9\\u05d3\\u05d5\\u05de\\u05ea http:// \\u05d4\\u05e0\\u05d3\\u05e8\\u05e9\\u05ea?\",\"link_is_email\":\"\\u05db\\u05ea\\u05d5\\u05d1\\u05ea \\u05d4-URL \\u05e9\\u05d4\\u05d5\\u05db\\u05e0\\u05e1\\u05d4 \\u05d4\\u05d9\\u05d0 \\u05db\\u05db\\u05dc \\u05d4\\u05e0\\u05e8\\u05d0\\u05d4 \\u05db\\u05ea\\u05d5\\u05d1\\u05ea \\u05de\\u05d9\\u05d9\\u05dc \\u05d4\\u05d0\\u05dd \\u05d1\\u05e8\\u05e6\\u05d5\\u05e0\\u05da \\u05dc\\u05d4\\u05d5\\u05e1\\u05d9\\u05e3 \\u05d0\\u05ea \\u05d4\\u05e7\\u05d9\\u05d3\\u05d5\\u05de\\u05ea MAILTO \\u05d4\\u05e0\\u05d3\\u05e8\\u05e9\\u05ea?\",\"link_titlefield\":\"\\u05db\\u05d5\\u05ea\\u05e8\\u05ea\",\"link_target_blank\":\"\\u05e4\\u05ea\\u05d7 \\u05e7\\u05d9\\u05e9\\u05d5\\u05e8 \\u05d1\\u05d7\\u05dc\\u05d5\\u05df \\u05d7\\u05d3\\u05e9\",\"link_target_same\":\"\\u05e4\\u05ea\\u05d7 \\u05e7\\u05d9\\u05e9\\u05d5\\u05e8 \\u05d1\\u05d0\\u05d5\\u05ea\\u05d5 \\u05d7\\u05dc\\u05d5\\u05df\",\"link_target\":\"\\u05d9\\u05e2\\u05d3\",\"link_url\":\"\\u05db\\u05ea\\u05d5\\u05d1\\u05ea \\u05d4\\u05e7\\u05d9\\u05e9\\u05d5\\u05e8\",\"link_title\":\"\\u05d4\\u05d5\\u05e1\\u05e4\\u05d4/\\u05e2\\u05e8\\u05d9\\u05db\\u05ea \\u05e7\\u05d9\\u05e9\\u05d5\\u05e8\",\"image_align_right\":\"\\u05d9\\u05de\\u05d9\\u05df\",\"image_align_left\":\"\\u05e9\\u05de\\u05d0\\u05dc\",\"image_align_textbottom\":\"\\u05e7\\u05e6\\u05d4 \\u05d4\\u05ea\\u05d7\\u05ea\\u05d5\\u05df \\u05e9\\u05dc \\u05d4\\u05d8\\u05e7\\u05e1\\u05d8\",\"image_align_texttop\":\"\\u05e7\\u05e6\\u05d4 \\u05d4\\u05e2\\u05dc\\u05d9\\u05d5\\u05df \\u05e9\\u05dc \\u05d4\\u05d8\\u05e7\\u05e1\\u05d8\",\"image_align_bottom\":\"\\u05e7\\u05e6\\u05d4 \\u05d4\\u05ea\\u05d7\\u05ea\\u05d5\\u05df\",\"image_align_middle\":\"\\u05d0\\u05de\\u05e6\\u05e2\",\"image_align_top\":\"\\u05e7\\u05e6\\u05d4 \\u05d4\\u05e2\\u05dc\\u05d9\\u05d5\\u05df\",\"image_align_baseline\":\"\\u05e7\\u05d5 \\u05d4\\u05d4\\u05ea\\u05d7\\u05dc\\u05d4\",\"image_align\":\"\\u05d9\\u05d9\\u05e9\\u05d5\\u05e8\",\"image_hspace\":\"\\u05e8\\u05d5\\u05d5\\u05d7 \\u05d0\\u05d5\\u05e4\\u05e7\\u05d9\",\"image_vspace\":\"\\u05e8\\u05d5\\u05d5\\u05d7 \\u05d0\\u05e0\\u05db\\u05d9\",\"image_dimensions\":\"\\u05d2\\u05d5\\u05d3\\u05dc\",\"image_alt\":\"\\u05ea\\u05d9\\u05d0\\u05d5\\u05e8\",\"image_list\":\"\\u05e8\\u05e9\\u05d9\\u05de\\u05d4\",\"image_border\":\"\\u05d2\\u05d1\\u05d5\\u05dc\",\"image_src\":\"\\u05db\\u05ea\\u05d5\\u05d1\\u05ea:\",\"image_title\":\"\\u05d4\\u05d5\\u05e1\\u05e4\\u05d4/\\u05e2\\u05e8\\u05d9\\u05db\\u05ea \\u05ea\\u05de\\u05d5\\u05e0\\u05d4\",\"charmap_title\":\"\\u05d1\\u05d7\\u05d9\\u05e8\\u05ea \\u05e1\\u05d9\\u05de\\u05df\",\"colorpicker_name\":\"\\u05e9\\u05dd:\",\"colorpicker_color\":\"\\u05e6\\u05d1\\u05e2:\",\"colorpicker_named_title\":\"\\u05e6\\u05d1\\u05e2\\u05d9\\u05dd \\u05d1\\u05e2\\u05dc\\u05d9 \\u05e9\\u05de\\u05d5\\u05ea\",\"colorpicker_named_tab\":\"\\u05e6\\u05d1\\u05e2\\u05d9\\u05dd \\u05d1\\u05e2\\u05dc\\u05d9 \\u05e9\\u05de\\u05d5\\u05ea\",\"colorpicker_palette_title\":\"\\u05dc\\u05d5\\u05d7 \\u05e6\\u05d1\\u05e2\\u05d9\\u05dd\",\"colorpicker_palette_tab\":\"\\u05dc\\u05d5\\u05d7 \\u05e6\\u05d1\\u05e2\\u05d9\\u05dd\",\"colorpicker_picker_title\":\"\\u05d1\\u05d5\\u05e8\\u05e8 \\u05d4\\u05e6\\u05d1\\u05e2\\u05d9\\u05dd\",\"colorpicker_picker_tab\":\"\\u05d1\\u05d5\\u05e8\\u05e8\",\"colorpicker_title\":\"\\u05d1\\u05d7\\u05d9\\u05e8\\u05ea \\u05e6\\u05d1\\u05e2\",\"code_wordwrap\":\"\\u05d2\\u05dc\\u05d9\\u05e9\\u05ea \\u05d8\\u05e7\\u05e1\\u05d8\",\"code_title\":\"\\u05e2\\u05d5\\u05e8\\u05da \\u05d4-HTML\",\"anchor_name\":\"\\u05e9\\u05dd \\u05d4\\u05e1\\u05d9\\u05de\\u05e0\\u05d9\\u05d4\",\"anchor_title\":\"\\u05d4\\u05d5\\u05e1\\u05e4\\u05d4/\\u05e2\\u05e8\\u05d9\\u05db\\u05ea \\u05e1\\u05d9\\u05de\\u05e0\\u05d9\\u05d4\",\"about_loaded\":\"\\u05ea\\u05d5\\u05e1\\u05e4\\u05d5\\u05ea \\u05e4\\u05e2\\u05d9\\u05dc\\u05d5\\u05ea\",\"about_version\":\"\\u05d2\\u05d9\\u05e8\\u05e1\\u05d4\",\"about_author\":\"\\u05d9\\u05d5\\u05e6\\u05e8\",\"about_plugin\":\"\\u05ea\\u05d5\\u05e1\\u05e4\\u05ea\",\"about_plugins\":\"\\u05ea\\u05d5\\u05e1\\u05e4\\u05d5\\u05ea\",\"about_license\":\"\\u05e8\\u05e9\\u05d9\\u05d5\\u05df\",\"about_help\":\"\\u05e2\\u05d6\\u05e8\\u05d4\",\"about_general\":\"\\u05d0\\u05d5\\u05d3\\u05d5\\u05ea\",\"about_title\":\"\\u05d0\\u05d5\\u05d3\\u05d5\\u05ea TinyMCE\",\"charmap_usage\":\"\\u05d4\\u05e9\\u05ea\\u05de\\u05e9/\\u05d9 \\u05d1\\u05d7\\u05d9\\u05e6\\u05d9\\u05dd \\u05dc\\u05e0\\u05d9\\u05d5\\u05d5\\u05d8 \\u05d9\\u05de\\u05d9\\u05e0\\u05d4 \\u05d5\\u05e9\\u05de\\u05d0\\u05dc\\u05d4\",\"anchor_invalid\":\"\\u05e0\\u05d0 \\u05dc\\u05e6\\u05d9\\u05d9\\u05df \\u05e9\\u05dd \\u05d7\\u05d5\\u05e7\\u05d9\",\"accessibility_help\":\"\\u05e2\\u05d6\\u05e8\\u05d4 \\u05d1\\u05e0\\u05d2\\u05d9\\u05e9\\u05d5\\u05ea\",\"accessibility_usage_title\":\"\\u05e9\\u05d9\\u05de\\u05d5\\u05e9 \\u05db\\u05dc\\u05dc\\u05d9\",\"invalid_color_value\":\"\\u05e2\\u05e8\\u05da \\u05d4\\u05e6\\u05d1\\u05e2 \\u05dc\\u05d0 \\u05ea\\u05e7\\u05d9\\u05df\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/hr.js",
    "content": "tinyMCE.addI18n('hr.advanced',{\"underline_desc\":\"Podcrtano (Ctrl U)\",\"italic_desc\":\"Uko\\u0161eno (Ctrl I)\",\"bold_desc\":\"Podebljano (Ctrl B)\",dd:\"Opis definicije\",dt:\"Definicija pojma\",samp:\"Primjer koda\",code:\"Kod\",blockquote:\"Citat\",h6:\"Naslov 6\",h5:\"Naslov 5\",h4:\"Naslov 4\",h3:\"Naslov 3\",h2:\"Naslov 2\",h1:\"Naslov 1\",pre:\"Oblikovano\",address:\"Adresa\",div:\"Div\",paragraph:\"Paragraf\",block:\"Format\",fontdefault:\"Vrsta fonta\",\"font_size\":\"Veli\\u010dina fonta\",\"style_select\":\"Stilovi\",\"more_colors\":\"Vi\\u0161e boja\",\"toolbar_focus\":\"Prije\\u0111i na alatnu traku - Alt Q, prije\\u0111i na ure\\u0111iva\\u010d - Alt-Z, prije\\u0111i na putanju elementa - Alt-X\",newdocument:\"Jeste li sigurni da \\u017eelite izbrisati cijeli sadr\\u017eaj?\",path:\"Putanja\",\"clipboard_msg\":\"Kopiraj/Izre\\u017ei/Zalijepi nije dostupno u Mozilla i Firefox preglednicima. Vi\\u0161e informacija?\",\"blockquote_desc\":\"Citiraj\",\"help_desc\":\"Pomo\\u0107\",\"newdocument_desc\":\"Novi dokument\",\"image_props_desc\":\"Svojstva slike\",\"paste_desc\":\"Zalijepi\",\"copy_desc\":\"Kopiraj\",\"cut_desc\":\"Izre\\u017ei\",\"anchor_desc\":\"Umetni/uredi sidro\",\"visualaid_desc\":\"Vodilice/nevidljivi elementi\",\"charmap_desc\":\"Umetni vlastiti znak\",\"backcolor_desc\":\"Odaberite boju pozadine\",\"forecolor_desc\":\"Odaberite boju teksta\",\"custom1_desc\":\"Vlastiti opis ovdje\",\"removeformat_desc\":\"Poni\\u0161ti oblikovanje\",\"hr_desc\":\"Umetni vodoravnu crtu\",\"sup_desc\":\"Eksponent\",\"sub_desc\":\"Indeks\",\"code_desc\":\"Uredi HTML izvor\",\"cleanup_desc\":\"Po\\u010disti neuredan kod\",\"image_desc\":\"Umetni/uredi sliku\",\"unlink_desc\":\"Poni\\u0161ti link\",\"link_desc\":\"Umetni/uredi link\",\"redo_desc\":\"Ponovi (Ctrl+Y)\",\"undo_desc\":\"Poni\\u0161ti (Ctrl+Z)\",\"indent_desc\":\"Izvuci\",\"outdent_desc\":\"Uvuci\",\"numlist_desc\":\"Numerirana lista\",\"bullist_desc\":\"Nenumerirana lista\",\"justifyfull_desc\":\"Poravnaj obostrano\",\"justifyright_desc\":\"Poravnaj desno\",\"justifycenter_desc\":\"Centriraj\",\"justifyleft_desc\":\"Poravnaj lijevo\",\"striketrough_desc\":\"Precrtano\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\",\"help_shortcut\":\"Press ALT-F10 for toolbar. Press ALT-0 for help\",\"rich_text_area\":\"Rich Text Area\",\"shortcuts_desc\":\"Accessability Help\",toolbar:\"Toolbar\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/hr_dlg.js",
    "content": "tinyMCE.addI18n('hr.advanced_dlg',{\"link_list\":\"Lista linkova\",\"link_is_external\":\"URL koji ste unijeli izgleda kao vanjski link, \\u017eelite li dodati potrebni http:// prefiks?\",\"link_is_email\":\"URL koji ste unijeli izgleda kao e-mail adresa, \\u017eelite li dodati potrebni mailto: prefiks?\",\"link_titlefield\":\"Naslov\",\"link_target_blank\":\"Otvori link u novom prozoru\",\"link_target_same\":\"Otvori link u istom prozoru\",\"link_target\":\"Meta\",\"link_url\":\"URL linka\",\"link_title\":\"Umetni/uredi link\",\"image_align_right\":\"Na desno\",\"image_align_left\":\"Na lijevo\",\"image_align_textbottom\":\"Na dno teksta\",\"image_align_texttop\":\"Na vrh teksta\",\"image_align_bottom\":\"Na dno\",\"image_align_middle\":\"Na sredinu\",\"image_align_top\":\"Na vrh\",\"image_align_baseline\":\"Osnovna linija\",\"image_align\":\"Poravnavanje\",\"image_hspace\":\"Vodoravni razmak\",\"image_vspace\":\"Okomiti razmak\",\"image_dimensions\":\"Dimenzije\",\"image_alt\":\"Opis slike\",\"image_list\":\"Lista slika\",\"image_border\":\"Obrub\",\"image_src\":\"URL slike\",\"image_title\":\"Umetni/uredi sliku\",\"charmap_title\":\"Odaberite znak\",\"colorpicker_name\":\"Naziv:\",\"colorpicker_color\":\"Boja:\",\"colorpicker_named_title\":\"Imenovane boje\",\"colorpicker_named_tab\":\"Imenovano\",\"colorpicker_palette_title\":\"Paleta boja\",\"colorpicker_palette_tab\":\"Paleta\",\"colorpicker_picker_title\":\"Odabir boje\",\"colorpicker_picker_tab\":\"Odabir\",\"colorpicker_title\":\"Izbor boje\",\"code_wordwrap\":\"Omatanje teksta\",\"code_title\":\"HTML ure\\u0111iva\\u010d\",\"anchor_name\":\"Ime sidra\",\"anchor_title\":\"Umetni/uredi sidro\",\"about_loaded\":\"Postoje\\u0107i dodaci\",\"about_version\":\"Verzija\",\"about_author\":\"Autor\",\"about_plugin\":\"Dodatak\",\"about_plugins\":\"Dodaci\",\"about_license\":\"Licenca\",\"about_help\":\"Pomo\\u0107\",\"about_general\":\"O programu\",\"about_title\":\"TinyMCE\",\"anchor_invalid\":\"Molimo unesite ispravno ime sidra\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/hu.js",
    "content": "tinyMCE.addI18n('hu.advanced',{\"underline_desc\":\"Al\\u00e1h\\u00fazott (Ctrl+U)\",\"italic_desc\":\"D\\u0151lt (Ctrl+I)\",\"bold_desc\":\"F\\u00e9lk\\u00f6v\\u00e9r (Ctrl+B)\",dd:\"Defin\\u00edci\\u00f3 a defin\\u00edci\\u00f3s list\\u00e1ban\",dt:\"Defini\\u00e1lt kifejez\\u00e9s a defin\\u00edci\\u00f3s list\\u00e1ban\",samp:\"K\\u00f3d minta\",code:\"K\\u00f3d\",blockquote:\"Id\\u00e9zet\",h6:\"C\\u00edmsor 6\",h5:\"C\\u00edmsor 5\",h4:\"C\\u00edmsor 4\",h3:\"C\\u00edmsor 3\",h2:\"C\\u00edmsor 2\",h1:\"C\\u00edmsor 1\",pre:\"El\\u0151form\\u00e1zott\",address:\"C\\u00edm\",div:\"DIV\",paragraph:\"Bekezd\\u00e9s\",block:\"Form\\u00e1tum\",fontdefault:\"Bet\\u0171t\\u00edpus\",\"font_size\":\"Bet\\u0171m\\u00e9ret\",\"style_select\":\"St\\u00edlusok\",\"image_delta_height\":\"\",\"image_delta_width\":\"\",\"more_colors\":\"Tov\\u00e1bbi sz\\u00ednek...\",\"toolbar_focus\":\"Eszk\\u00f6z-gombokra ugr\\u00e1s - Alt Q, Szerkeszt\\u0151h\\u00f6z ugr\\u00e1s - Alt-Z, Elem\\u00fatvonalhoz ugr\\u00e1s - Alt-X\",newdocument:\"Biztosan t\\u00f6rli az \\u00f6sszes tartalmat?\",path:\"\\u00datvonal\",\"clipboard_msg\":\"A M\\u00e1sol\\u00e1s/Kiv\\u00e1g\\u00e1s/Besz\\u00far\\u00e1s funkci\\u00f3k nem \\u00e9rhet\\u0151ek el Mozilla \\u00e9s Firefox alatt. Szeretne t\\u00f6bbet megtudni err\\u0151l?\",\"blockquote_desc\":\"Id\\u00e9zet\",\"help_desc\":\"Seg\\u00edts\\u00e9g\",\"newdocument_desc\":\"\\u00daj dokumentum\",\"image_props_desc\":\"K\\u00e9p tulajdons\\u00e1gai\",\"paste_desc\":\"Besz\\u00far\\u00e1s (Ctrl V)\",\"copy_desc\":\"M\\u00e1sol\\u00e1s (Ctrl C)\",\"cut_desc\":\"Kiv\\u00e1g\\u00e1s (Ctrl X) \",\"anchor_desc\":\"Horgony besz\\u00far\\u00e1sa/szerkeszt\\u00e9se\",\"visualaid_desc\":\"Vezet\\u0151vonalak/nem l\\u00e1that\\u00f3 elemek ki-/bekapcsol\\u00e1sa\",\"charmap_desc\":\"Speci\\u00e1lis karakter besz\\u00far\\u00e1sa\",\"backcolor_desc\":\"H\\u00e1tt\\u00e9rsz\\u00edn v\\u00e1laszt\\u00e1sa\",\"forecolor_desc\":\"Sz\\u00f6vegsz\\u00edn v\\u00e1laszt\\u00e1sa\",\"custom1_desc\":\"Az \\u00f6n egyedi le\\u00edr\\u00e1sa\",\"removeformat_desc\":\"Form\\u00e1z\\u00e1s elt\\u00e1vol\\u00edt\\u00e1sa\",\"hr_desc\":\"V\\u00edzszintes elv\\u00e1laszt\\u00f3 vonal besz\\u00far\\u00e1sa\",\"sup_desc\":\"Fels\\u0151 index\",\"sub_desc\":\"Als\\u00f3 index\",\"code_desc\":\"HTML forr\\u00e1sk\\u00f3d szerkeszt\\u00e9se\",\"cleanup_desc\":\"Minden form\\u00e1z\\u00e1s elt\\u00e1vol\\u00edt\\u00e1sa\",\"image_desc\":\"K\\u00e9p besz\\u00far\\u00e1sa/szerkeszt\\u00e9se\",\"unlink_desc\":\"Link elt\\u00e1vol\\u00edt\\u00e1sa\",\"link_desc\":\"Link besz\\u00far\\u00e1sa/szerkeszt\\u00e9se\",\"redo_desc\":\"M\\u00e9gis v\\u00e9grehajt (Ctrl+Y)\",\"undo_desc\":\"Visszavon\\u00e1s (Ctrl+Z)\",\"indent_desc\":\"Beh\\u00faz\\u00e1s n\\u00f6vel\\u00e9se\",\"outdent_desc\":\"Beh\\u00faz\\u00e1s cs\\u00f6kkent\\u00e9se\",\"numlist_desc\":\"Sz\\u00e1mozott lista besz\\u00far\\u00e1sa/elt\\u00e1vol\\u00edt\\u00e1sa\",\"bullist_desc\":\"Felsorol\\u00e1s besz\\u00far\\u00e1sa/elt\\u00e1vol\\u00edt\\u00e1sa\",\"justifyfull_desc\":\"Sorkiz\\u00e1rt\",\"justifyright_desc\":\"Jobbra z\\u00e1rt\",\"justifycenter_desc\":\"K\\u00f6z\\u00e9pre z\\u00e1rt\",\"justifyleft_desc\":\"Balra z\\u00e1rt\",\"striketrough_desc\":\"\\u00c1th\\u00fazott\",\"help_shortcut\":\"Ugr\\u00e1s az eszk\\u00f6zt\\u00e1rhoz: ALT-F10. Seg\\u00edts\\u00e9g: ALT-0.\",\"rich_text_area\":\"Rich Text ter\\u00fclet\",\"shortcuts_desc\":\"El\\u00e9rhet\\u0151s\\u00e9g s\\u00fag\\u00f3\",toolbar:\"Eszk\\u00f6zt\\u00e1r\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/hu_dlg.js",
    "content": "tinyMCE.addI18n('hu.advanced_dlg',{\"link_list\":\"Link lista\",\"link_is_external\":\"A be\\u00edrt internet c\\u00edm k\\u00fcls\\u0151 hivatkoz\\u00e1snak t\\u0171nik, k\\u00edv\\u00e1nja a sz\\u00fcks\\u00e9ges http:// el\\u0151taggal kieg\\u00e9sz\\u00edteni?\",\"link_is_email\":\"A be\\u00edrt internet c\\u00edm e-mail c\\u00edmnek t\\u0171nik, k\\u00edv\\u00e1nja a sz\\u00fcks\\u00e9ges mailto: el\\u0151taggal kieg\\u00e9sz\\u00edteni?\",\"link_titlefield\":\"C\\u00edm\",\"link_target_blank\":\"Hivatkoz\\u00e1s megnyit\\u00e1sa \\u00faj ablakban\",\"link_target_same\":\"Hivatkoz\\u00e1s megnyit\\u00e1sa ugyanabban az ablakban\",\"link_target\":\"Hivatkoz\\u00e1s c\\u00e9lja\",\"link_url\":\"Internet c\\u00edm\",\"link_title\":\"Link besz\\u00far\\u00e1sa/szerkeszt\\u00e9se\",\"image_align_right\":\"Jobbra\",\"image_align_left\":\"Balra\",\"image_align_textbottom\":\"Sz\\u00f6veg alj\\u00e1hoz\",\"image_align_texttop\":\"Sz\\u00f6veg tetej\\u00e9hez\",\"image_align_bottom\":\"Lentre\",\"image_align_middle\":\"K\\u00f6z\\u00e9pre\",\"image_align_top\":\"Fentre\",\"image_align_baseline\":\"Alapvonalhoz\",\"image_align\":\"Igaz\\u00edt\\u00e1s\",\"image_hspace\":\"V\\u00edzszintes t\\u00e1v\",\"image_vspace\":\"F\\u00fcgg\\u0151leges t\\u00e1v\",\"image_dimensions\":\"M\\u00e9retek\",\"image_alt\":\"K\\u00e9p le\\u00edr\\u00e1s\",\"image_list\":\"K\\u00e9p lista\",\"image_border\":\"Keret\",\"image_src\":\"K\\u00e9p URL\",\"image_title\":\"K\\u00e9p besz\\u00far\\u00e1sa/szerkeszt\\u00e9se\",\"charmap_title\":\"Speci\\u00e1lis karakter v\\u00e1laszt\\u00e1sa\",\"colorpicker_name\":\"N\\u00e9v:\",\"colorpicker_color\":\"Sz\\u00edn:\",\"colorpicker_named_title\":\"Elnevezett sz\\u00ednek\",\"colorpicker_named_tab\":\"Elnevezett\",\"colorpicker_palette_title\":\"Paletta sz\\u00ednek\",\"colorpicker_palette_tab\":\"Paletta\",\"colorpicker_picker_title\":\"Sz\\u00ednv\\u00e1laszt\\u00f3\",\"colorpicker_picker_tab\":\"V\\u00e1laszt\\u00f3\",\"colorpicker_title\":\"Sz\\u00ednv\\u00e1laszt\\u00e1s\",\"code_wordwrap\":\"Sz\\u00f6veg t\\u00f6rdel\\u00e9se\",\"code_title\":\"HTML forr\\u00e1s szerkeszt\\u00e9se\",\"anchor_name\":\"Horgonyn\\u00e9v\",\"anchor_title\":\"Horgony besz\\u00far\\u00e1sa/szerkeszt\\u00e9se\",\"about_loaded\":\"Bet\\u00f6lt\\u00f6tt pluginok\",\"about_version\":\"Verzi\\u00f3\",\"about_author\":\"Szerz\\u0151\",\"about_plugin\":\"Plugin\",\"about_plugins\":\"Pluginok\",\"about_license\":\"Licensz\",\"about_help\":\"Seg\\u00edts\\u00e9g\",\"about_general\":\"R\\u00f3lunk\",\"about_title\":\"A TinyMCE-r\\u0151l\",\"charmap_usage\":\"A navig\\u00e1l\\u00e1shoz haszn\\u00e1ld a bal \\u00e9s jobb oldali nyilat.\",\"anchor_invalid\":\"Adjon meg egy helyes horgony nevet.\",\"accessibility_help\":\"El\\u00e9rhet\\u0151s\\u00e9g s\\u00fag\\u00f3\",\"accessibility_usage_title\":\"\\u00c1ltal\\u00e1nos haszn\\u00e1lat\",\"invalid_color_value\":\"\\u00c9rv\\u00e9nytelen sz\\u00edn \\u00e9rt\\u00e9k\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/hy.js",
    "content": "tinyMCE.addI18n('hy.advanced',{\"underline_desc\":\"\\u0538\\u0576\\u0564\\u0563\\u056e\\u057e\\u0561\\u056e (Ctrl + U)\",\"italic_desc\":\"\\u0547\\u0565\\u0572 (Ctrl + I)\",\"bold_desc\":\"\\u0540\\u0561\\u057d\\u057f (Ctrl + B)\",dd:\"\\u0532\\u0561\\u057c\\u0561\\u0580\\u0561\\u0576 \\u0562\\u0561\\u0581\\u0561\\u057f\\u0580\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\",dt:\"\\u054f\\u0565\\u0580\\u0574\\u056b\\u0576\\u0576\\u0565\\u0580\\u056b \\u0562\\u0561\\u057c\\u0561\\u0580\\u0561\\u0576\",samp:\"\\u053f\\u0578\\u0564\\u056b \\u0585\\u0580\\u056b\\u0576\\u0561\\u056f\",code:\"\\u053f\\u0578\\u0564\",blockquote:\"\\u0544\\u0565\\u056f\\u0576\\u0561\\u0562\\u0561\\u0576\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\",h6:\"\\u054e\\u0565\\u0580\\u0576\\u0561\\u0563\\u056b\\u0580 6\",h5:\"\\u054e\\u0565\\u0580\\u0576\\u0561\\u0563\\u056b\\u0580 5\",h4:\"\\u054e\\u0565\\u0580\\u0576\\u0561\\u0563\\u056b\\u0580 4\",h3:\"\\u054e\\u0565\\u0580\\u0576\\u0561\\u0563\\u056b\\u0580 3\",h2:\"\\u054e\\u0565\\u0580\\u0576\\u0561\\u0563\\u056b\\u0580 2\",h1:\"\\u054e\\u0565\\u0580\\u0576\\u0561\\u0563\\u056b\\u0580 1\",pre:\"\\u0546\\u0561\\u056d\\u0561\\u057a\\u0565\\u057d \\u0586\\u0578\\u0580\\u0574\\u0561\\u057f\\u0561\\u057e\\u0578\\u0580\\u057e\\u0561\\u056e\",address:\"\\u0540\\u0561\\u057d\\u0581\\u0565\\u056b \\u0578\\u0573\",div:\"Div\",paragraph:\"\\u0556\\u0578\\u0580\\u0574\\u0561\\u057f\",block:\"\\u0556\\u0578\\u0580\\u0574\\u0561\\u057f\",fontdefault:\"\\u054f\\u0561\\u057c\\u0561\\u057f\\u0565\\u057d\\u0561\\u056f\",\"font_size\":\"\\u0549\\u0561\\u0583\\u057d\",\"style_select\":\"\\u0548\\u0573\\u0565\\u0580\",\"more_colors\":\"\\u0547\\u0561\\u057f \\u0563\\u0578\\u0582\\u0575\\u0576\\u0565\\u0580\",\"toolbar_focus\":\"\\u0531\\u0576\\u0581\\u0576\\u0565\\u056c \\u057d\\u0565\\u0572\\u0574\\u0561\\u056f\\u0576\\u0565\\u0580\\u056b \\u057e\\u0561\\u0570\\u0561\\u0576\\u0561\\u056f - Alt + Q, \\u0531\\u0576\\u0581\\u0576\\u0565\\u056c \\u056d\\u0574\\u0562\\u0561\\u0563\\u0580\\u056b\\u0579\\u056b\\u0576 - Alt-Z, \\u0531\\u0576\\u0581\\u0576\\u0565\\u056c \\u0570\\u0561\\u057d\\u0581\\u0565\\u056b \\u0567\\u056c\\u0565\\u0574\\u0565\\u0576\\u057f\\u056b\\u0576 - Alt-X\",newdocument:\"\\u0540\\u0561\\u0574\\u0578\\u0566\\u057e\\u0561\\u055e\\u056e \\u0565\\u0584, \\u0578\\u0580 \\u0581\\u0561\\u0576\\u056f\\u0561\\u0576\\u0578\\u0582\\u0574 \\u0565\\u0584 \\u0561\\u0574\\u0562\\u0578\\u0572\\u057b\\u0568 \\u0570\\u0565\\u057c\\u0561\\u0581\\u0576\\u0565\\u056c\",path:\"\\u0540\\u0561\\u057d\\u0581\\u0565\",\"clipboard_msg\":\"\\u054a\\u0561\\u057f\\u0573\\u0565\\u0576\\u0565\\u056c / \\u053f\\u057f\\u0580\\u0565\\u056c / \\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c (\\u0574\\u0561\\u057f\\u0579\\u0565\\u056c\\u056b \\u0579\\u0567 Mozilla \\u0587 Firefox \\u0562\\u0580\\u0561\\u0578\\u0582\\u0566\\u0565\\u0580\\u0576\\u0565\\u0580\\u0578\\u0582\\u0574) \\\\ n \\u0541\\u0565\\u0566 \\u0570\\u0565\\u057f\\u0561\\u0584\\u0580\\u0584\\u056b\\u055e\\u0580 \\u0567 \\u0561\\u0575\\u0564 \\u056b\\u0576\\u0586\\u0578\\u0580\\u0574\\u0561\\u0581\\u056b\\u0561\\u0576\",\"blockquote_desc\":\"\\u0544\\u0565\\u056f\\u0576\\u0561\\u0562\\u0561\\u0576\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\",\"help_desc\":\"\\u0555\\u0563\\u0576\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\",\"newdocument_desc\":\"\\u0546\\u0578\\u0580 \\u0583\\u0561\\u057d\\u057f\\u0561\\u0569\\u0578\\u0582\\u0572\\u0569\",\"image_props_desc\":\"\\u0546\\u056f\\u0561\\u0580\\u056b \\u057a\\u0561\\u0580\\u0561\\u0574\\u0565\\u057f\\u0580\\u0565\\u0580\",\"paste_desc\":\"\\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c\",\"copy_desc\":\"\\u054a\\u0561\\u057f\\u0573\\u0565\\u0576\\u0565\\u056c\",\"cut_desc\":\"\\u053f\\u057f\\u0580\\u0565\\u056c\",\"anchor_desc\":\"\\u0531\\u057e\\u0565\\u056c\\u0561\\u0581\\u0576\\u0565\\u056c / \\u0583\\u0578\\u0583\\u056d\\u0565\\u056c \\u056d\\u0561\\u0580\\u056b\\u057d\\u056d\\u0568\",\"visualaid_desc\":\"Toggle guidelines / invisible elements\",\"charmap_desc\":\"\\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c \\u057d\\u056b\\u0574\\u057e\\u0578\\u056c\",\"backcolor_desc\":\"\\u0538\\u0576\\u057f\\u0580\\u0565\\u0584 \\u0586\\u0578\\u0576\\u056b \\u0563\\u0578\\u0582\\u0575\\u0576\\u0568\",\"forecolor_desc\":\"\\u0538\\u0576\\u057f\\u0580\\u0565\\u0584 \\u057f\\u0565\\u0584\\u057d\\u057f\\u056b \\u0563\\u0578\\u0582\\u0575\\u0576\\u0568\",\"custom1_desc\":\"\\u0541\\u0565\\u0580 \\u0574\\u0565\\u056f\\u0576\\u0561\\u0562\\u0561\\u0576\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\\u0568\",\"removeformat_desc\":\"\\u0540\\u0565\\u057c\\u0561\\u0581\\u0576\\u0565\\u056c \\u0586\\u0578\\u0580\\u0574\\u0561\\u057f\\u0561\\u057e\\u0578\\u0580\\u0578\\u0582\\u0574\\u0568\",\"hr_desc\":\"\\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c \\u0570\\u0578\\u0580\\u056b\\u0566\\u0578\\u0576\\u0561\\u056f\\u0561\\u0576 \\u0562\\u0561\\u056a\\u0561\\u0576\\u056b\\u0579\",\"sup_desc\":\"\\u054e\\u0565\\u0580\\u056b\\u0576 \\u056b\\u0576\\u0564\\u0565\\u0584\\u057d\",\"sub_desc\":\"\\u054d\\u057f\\u0578\\u0580\\u056b\\u0576 \\u056b\\u0576\\u0564\\u0565\\u0584\\u057d\",\"code_desc\":\"\\u0553\\u0578\\u0583\\u0578\\u056d\\u0565\\u056c HTML \\u056f\\u0578\\u0564\\u0568\",\"cleanup_desc\":\"\\u0540\\u0565\\u057c\\u0561\\u0581\\u0576\\u0565\\u056c \\u0561\\u057e\\u0565\\u056c\\u0578\\u0580\\u0564 \\u056f\\u0578\\u0564\\u0568\",\"image_desc\":\"\\u0531\\u057e\\u0565\\u056c\\u0561\\u0581\\u0576\\u0565\\u056c / \\u0583\\u0578\\u0583\\u0578\\u056d\\u0565\\u056c \\u0576\\u056f\\u0561\\u0580\",\"unlink_desc\":\"\\u0540\\u0565\\u057c\\u0561\\u0581\\u0576\\u0565\\u056c \\u0570\\u0572\\u0578\\u0582\\u0574\\u0568\",\"link_desc\":\"\\u054f\\u0565\\u0572\\u0561\\u0564\\u0580\\u0565\\u056c / \\u0583\\u0578\\u0583\\u0578\\u056d\\u0565\\u056c \\u0570\\u0572\\u0578\\u0582\\u0574\\u0568\",\"redo_desc\":\"\\u0531\\u057c\\u0561\\u057b (Ctrl + Y)\",\"undo_desc\":\"\\u0535\\u057f (Ctrl + Z)\",\"indent_desc\":\"\\u0531\\u057e\\u0565\\u056c\\u0561\\u0581\\u0576\\u0565\\u056c \\u0570\\u0565\\u057c\\u0561\\u057e\\u0578\\u0580\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\\u0568 \\u0571\\u0561\\u056d \\u0565\\u0566\\u0580\\u056b\\u0581\",\"outdent_desc\":\"\\u053f\\u0580\\u0573\\u0561\\u057f\\u0565\\u056c \\u0570\\u0565\\u057c\\u0561\\u057e\\u0578\\u0580\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\\u0568 \\u0571\\u0561\\u056d \\u0565\\u0566\\u0580\\u056b\\u0581\",\"numlist_desc\":\"\\u0540\\u0561\\u0574\\u0561\\u0580\\u0561\\u056f\\u0561\\u056c\\u057e\\u0561\\u056e \\u0581\\u0561\\u0576\\u056f\",\"bullist_desc\":\"\\u0551\\u0561\\u0576\\u056f\",\"justifyfull_desc\":\"\\u0538\\u057d\\u057f \\u056c\\u0561\\u0575\\u0576\\u0578\\u0582\\u0569\\u0575\\u0561\\u0576\",\"justifyright_desc\":\"\\u0531\\u057b \\u0570\\u0561\\u057e\\u0561\\u057d\\u0561\\u0580\\u0565\\u0581\\u0578\\u0582\\u0574\",\"justifycenter_desc\":\"\\u053f\\u0565\\u0576\\u057f\\u0580\\u0578\\u0576\\u0561\\u0581\\u0576\\u0565\\u056c\",\"justifyleft_desc\":\"\\u0541\\u0561\\u056d \\u0570\\u0561\\u057e\\u0561\\u057d\\u0561\\u0580\\u0565\\u0581\\u0578\\u0582\\u0574\",\"striketrough_desc\":\"\\u0531\\u0580\\u057f\\u0561\\u0563\\u056e\\u057e\\u0561\\u056e\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\",\"help_shortcut\":\"Press ALT-F10 for toolbar. Press ALT-0 for help\",\"rich_text_area\":\"Rich Text Area\",\"shortcuts_desc\":\"Accessability Help\",toolbar:\"Toolbar\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/hy_dlg.js",
    "content": "tinyMCE.addI18n('hy.advanced_dlg',{\"link_list\":\"\\u0540\\u0572\\u0578\\u0582\\u0574\\u0576\\u0565\\u0580\\u056b \\u0581\\u0561\\u0576\\u056f\",\"link_is_external\":\"\\u0546\\u0565\\u0580\\u0561\\u056e\\u057e\\u0561\\u056e URL \\u0570\\u0561\\u057d\\u0581\\u0565\\u0576 \\u0576\\u0574\\u0561\\u0576 \\u0567 \\u0561\\u0580\\u057f\\u0561\\u0584\\u056b\\u0576 \\u0570\\u0572\\u0574\\u0561\\u0576, \\u0534\\u0578\\u0582\\u0584 \\u0581\\u0561\\u0576\\u056f\\u0561\\u0576\\u0578\\u0582\\u055e\\u0574 \\u0565\\u0584 \\u0561\\u057e\\u0565\\u056c\\u0561\\u0581\\u0576\\u0565\\u056c http://\",\"link_is_email\":\"\\u0546\\u0565\\u0580\\u0561\\u056e\\u057e\\u0561\\u056e URL \\u0570\\u0561\\u057d\\u0581\\u0565\\u0576 \\u0576\\u0574\\u0561\\u0576 \\u0567 email \\u0570\\u0561\\u057d\\u0581\\u0565\\u056b, \\u0534\\u0578\\u0582\\u0584 \\u0581\\u0561\\u0576\\u056f\\u0561\\u0576\\u0578\\u0582\\u055e\\u0574 \\u0565\\u0584 \\u0561\\u057e\\u0565\\u056c\\u0561\\u0581\\u0576\\u0565\\u056c mailto:\",\"link_titlefield\":\"\\u054e\\u0565\\u0580\\u0576\\u0561\\u0563\\u056b\\u0580\",\"link_target_blank\":\"\\u0576\\u0578\\u0580 \\u057a\\u0561\\u057f\\u0578\\u0582\\u0570\\u0561\\u0576\\u0578\\u0582\\u0574\",\"link_target_same\":\"\\u0561\\u0575\\u057d \\u057a\\u0561\\u057f\\u0578\\u0582\\u0570\\u0561\\u0576\\u0578\\u0582\\u0574\",\"link_target\":\"\\u0532\\u0561\\u0581\\u0565\\u056c ...\",\"link_url\":\"\\u0540\\u0572\\u0574\\u0561\\u0576 \\u0570\\u0561\\u057d\\u0581\\u0565\",\"link_title\":\"\\u0531\\u057e\\u0565\\u056c\\u0561\\u0581\\u0576\\u0565\\u056c / \\u0583\\u0578\\u0583\\u0578\\u056d\\u0565\\u056c \\u0570\\u0572\\u0578\\u0582\\u0574\\u0568\",\"image_align_right\":\"\\u0531\\u057b \\u0570\\u0561\\u057e\\u0561\\u057d\\u0561\\u0580\\u0565\\u0581\\u0578\\u0582\\u0574\",\"image_align_left\":\"\\u0541\\u0561\\u056d \\u0570\\u0561\\u057e\\u0561\\u057d\\u0561\\u0580\\u0565\\u0581\\u0578\\u0582\\u0574\",\"image_align_textbottom\":\"\\u0538\\u057d\\u057f \\u057f\\u0565\\u0584\\u057d\\u057f\\u056b \\u057d\\u057f\\u0578\\u0580\\u056b\\u0576 \\u0565\\u0566\\u0580\\u056b\",\"image_align_texttop\":\"\\u0538\\u057d\\u057f \\u057f\\u0565\\u0584\\u057d\\u057f\\u056b \\u057e\\u0565\\u0580\\u056b\\u0576 \\u0565\\u0566\\u0580\\u056b\",\"image_align_bottom\":\"\\u0538\\u057d\\u057f \\u057d\\u057f\\u0578\\u0580\\u056b\\u0576 \\u0563\\u056e\\u056b\",\"image_align_middle\":\"\\u053f\\u0565\\u0576\\u057f\\u0580\\u0578\\u0576\\u0561\\u0581\\u0576\\u0565\\u056c\",\"image_align_top\":\"\\u0538\\u057d\\u057f \\u057e\\u0565\\u0580\\u056b\\u0576 \\u0565\\u0566\\u0580\\u056b\",\"image_align_baseline\":\"\\u0538\\u057d\\u057f \\u0562\\u0561\\u0566\\u0561\\u0575\\u056b\\u0576 \\u0563\\u056e\\u056b\",\"image_align\":\"\\u0540\\u0561\\u057e\\u0561\\u057d\\u0561\\u0580\\u0565\\u0581\\u0578\\u0582\\u0574\",\"image_hspace\":\"\\u0540\\u0578\\u0580\\u056b\\u0566. \\u0577\\u0565\\u0572\\u0578\\u0582\\u0574\",\"image_vspace\":\"\\u0548\\u0582\\u0572\\u0572\\u0561\\u0570. \\u0577\\u0565\\u0572\\u0578\\u0582\\u0574\",\"image_dimensions\":\"\\u0549\\u0561\\u0583\\u057d\\u0565\\u0580\",\"image_alt\":\"\\u0546\\u056f\\u0561\\u0580\\u0561\\u0563\\u0580\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\",\"image_list\":\"\\u0546\\u056f\\u0561\\u0580\\u0576\\u0565\\u0580\\u056b \\u0581\\u0561\\u0576\\u056f\",\"image_border\":\"\\u0535\\u0566\\u0580\",\"image_src\":\"\\u0540\\u0561\\u057d\\u0581\\u0565\",\"image_title\":\"\\u0531\\u057e\\u0565\\u056c\\u0561\\u0581\\u0576\\u0565\\u056c / \\u0583\\u0578\\u0583\\u0578\\u056d\\u0565\\u056c \\u0576\\u056f\\u0561\\u0580\",\"charmap_title\":\"\\u0538\\u0576\\u057f\\u0580\\u0565\\u056c \\u057a\\u0561\\u057f\\u0561\\u0570\\u0561\\u056f\\u0561\\u0576 \\u057d\\u056b\\u0574\\u057e\\u0578\\u056c\",\"colorpicker_name\":\"\\u0531\\u0576\\u057e\\u0561\\u0576\\u0578\\u0582\\u0574:\",\"colorpicker_color\":\"\\u0533\\u0578\\u0582\\u0575\\u0576:\",\"colorpicker_named_title\":\"\\u0538\\u057d\\u057f \\u0561\\u0576\\u057e\\u0561\\u0576\\u0574\\u0561\\u0576\",\"colorpicker_named_tab\":\"\\u0538\\u057d\\u057f \\u0561\\u0576\\u057e\\u0561\\u0576\\u0574\\u0561\\u0576\",\"colorpicker_palette_title\":\"\\u0533\\u0578\\u0582\\u0575\\u0576\\u0565\\u0580\\u056b \\u0581\\u0561\\u0576\\u056f\",\"colorpicker_palette_tab\":\"\\u0551\\u0561\\u0576\\u056f\",\"colorpicker_picker_title\":\"\\u0533\\u0578\\u0582\\u0576\\u0561\\u0575\\u056b\\u0576 \\u0585\\u0580\\u056b\\u0576\\u0561\\u056f\",\"colorpicker_picker_tab\":\"\\u0533\\u0578\\u0582\\u0576\\u0561\\u0575\\u056b\\u0576 \\u0585\\u0580\\u056b\\u0576\\u0561\\u056f\",\"colorpicker_title\":\"\\u0538\\u0576\\u057f\\u0580\\u0565\\u0584 \\u0563\\u0578\\u0582\\u0575\\u0576\",\"code_wordwrap\":\"\\u054f\\u0565\\u0572\\u0561\\u0583\\u0578\\u056d\\u0565\\u056c \\u0562\\u0561\\u057c\\u0565\\u0580\",\"code_title\":\"HTML \\u056f\\u0578\\u0564\\u056b \\u056d\\u0574\\u0562\\u0561\\u0563\\u0580\\u056b\\u0579\",\"anchor_name\":\"\\u053d\\u0561\\u0580\\u056b\\u057d\\u056d \\u0561\\u0576\\u057e\\u0561\\u0576\\u0578\\u0582\\u0574\",\"anchor_title\":\"\\u0531\\u057e\\u0565\\u056c\\u0561\\u0581\\u0576\\u0565\\u056c / \\u0583\\u0578\\u0583\\u0578\\u056d\\u0565\\u056c \\u056d\\u0561\\u0580\\u056b\\u057d\\u056d\\u0568\",\"about_loaded\":\"\\u0532\\u0565\\u057c\\u0562\\u057e\\u0561\\u056e \\u057a\\u056c\\u0561\\u0563\\u056b\\u0576\\u0576\\u0565\\u0580\",\"about_version\":\"\\u054f\\u0561\\u0580\\u0562\\u0565\\u0580\\u0561\\u056f\",\"about_author\":\"\\u0540\\u0565\\u0572\\u056b\\u0576\\u0561\\u056f\",\"about_plugin\":\"\\u054a\\u056c\\u0561\\u0563\\u056b\\u0576\",\"about_plugins\":\"\\u054a\\u056c\\u0561\\u0563\\u056b\\u0576\\u0576\\u0565\\u0580\",\"about_license\":\"\\u053c\\u056b\\u0581\\u0565\\u0576\\u0566\\u056b\\u0561\",\"about_help\":\"\\u0555\\u0563\\u0576\\u0578\\u0582\\u0569\\u0575\\u0578\\u0582\\u0576\",\"about_general\":\"\\u053e\\u0580\\u0561\\u0563\\u0580\\u0561\\u0575\\u056b\\u0576 \\u0561\\u057a\\u0561\\u0570\\u0578\\u057e\\u0574\\u0561\\u0576 \\u0574\\u0561\\u057d\\u056b\\u0576 ...\",\"about_title\":\"TinyMCE \\u053d\\u0574\\u0562\\u0561\\u0563\\u0580\\u056b\\u0579\",\"anchor_invalid\":\"Please specify a valid anchor name.\",\"accessibility_help\":\"Accessibility Help\",\"accessibility_usage_title\":\"General Usage\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/it.js",
    "content": "tinyMCE.addI18n('it.advanced',{\"underline_desc\":\"Sottolineato (Ctrl+U)\",\"italic_desc\":\"Corsivo (Ctrl+I)\",\"bold_desc\":\"Grassetto (Ctrl+B)\",dd:\"Descrizione definizione\",dt:\"Termine definizione\",samp:\"Esempio codice\",code:\"Codice\",blockquote:\"Testo quotato\",h6:\"Intestazione 6\",h5:\"Intestazione 5\",h4:\"Intestazione 4\",h3:\"Intestazione 3\",h2:\"Intestazione 2\",h1:\"Intestazione 1\",pre:\"Preformattato\",address:\"Indirizzo\",div:\"Div\",paragraph:\"Paragrafo\",block:\"Formato\",fontdefault:\"Famiglia carattere\",\"font_size\":\"Grandezza carattere\",\"style_select\":\"Stili\",\"anchor_delta_height\":\"anchor_delta_height\",\"anchor_delta_width\":\"anchor_delta_width\",\"charmap_delta_height\":\"charmap_delta_height\",\"charmap_delta_width\":\"charmap_delta_width\",\"colorpicker_delta_height\":\"colorpicker_delta_height\",\"colorpicker_delta_width\":\"colorpicker_delta_width\",\"link_delta_height\":\"link_delta_height\",\"link_delta_width\":\"link_delta_width\",\"image_delta_height\":\"image_delta_height\",\"image_delta_width\":\"image_delta_width\",\"more_colors\":\"Colori aggiuntivi\",\"toolbar_focus\":\"Vai ai pulsanti strumento - Alt+Q, Vai all\\'editor - Alt-Z, Vai al percorso dell\\'elemento - Alt-X\",newdocument:\"Sei sicuro di voler cancellare tutti i contenuti?\",path:\"Percorso\",\"clipboard_msg\":\"Copia/Taglia/Incolla non \\u00e8 disponibile in Mozilla e Firefox..\\nSi desidera avere maggiori informazioni su questo problema?\",\"blockquote_desc\":\"Testo quotato\",\"help_desc\":\"Aiuto\",\"newdocument_desc\":\"Nuovo documento\",\"image_props_desc\":\"Propriet\\u00e0 immagine\",\"paste_desc\":\"Incolla\",\"copy_desc\":\"Copia\",\"cut_desc\":\"Taglia\",\"anchor_desc\":\"Inserisci/modifica ancora\",\"visualaid_desc\":\"Mostra/nascondi linee guida/elementi invisibili\",\"charmap_desc\":\"Inserisci carattere speciale\",\"backcolor_desc\":\"Seleziona colore sfondo\",\"forecolor_desc\":\"Seleziona colore testo\",\"custom1_desc\":\"La tua descrizione personalizzata qui\",\"removeformat_desc\":\"Rimuovi formattazione\",\"hr_desc\":\"Inserisci riga orizzontale\",\"sup_desc\":\"Apice\",\"sub_desc\":\"Pedice\",\"code_desc\":\"Modifica sorgente HTML\",\"cleanup_desc\":\"Pulisci codice disordinato\",\"image_desc\":\"Inserisci/modifica immagine\",\"unlink_desc\":\"Togli collegamento\",\"link_desc\":\"Inserisci/modifica collegamento\",\"redo_desc\":\"Ripristina (Ctrl+Y)\",\"undo_desc\":\"Annulla (Ctrl+Z)\",\"indent_desc\":\"Sposta verso interno\",\"outdent_desc\":\"Sposta verso esterno\",\"numlist_desc\":\"Lista ordinata\",\"bullist_desc\":\"Lista non ordinata\",\"justifyfull_desc\":\"Giustifica\",\"justifyright_desc\":\"Allinea a destra\",\"justifycenter_desc\":\"Centra\",\"justifyleft_desc\":\"Allinea a sinistra\",\"striketrough_desc\":\"Barrato\",\"help_shortcut\":\"Premi ALT-F10 Per la barra degli strumenti. Premi ALT-0 per l\\'aiuto\",\"rich_text_area\":\"Rich Text Area\",\"shortcuts_desc\":\"Aiuto accessibilit\\u00e0\",toolbar:\"Barra degli strumenti\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/it_dlg.js",
    "content": "tinyMCE.addI18n('it.advanced_dlg',{\"link_list\":\"Lista link\",\"link_is_external\":\"L\\'URL inserito sembra essere un link esterno. Aggiungere il necessario prefisso http:// ?\",\"link_is_email\":\"L\\'URL inserito sembra essere un indirizzo email. Aggiungere il necessario prefisso mailto: ?\",\"link_titlefield\":\"Titolo\",\"link_target_blank\":\"Apri link in una nuova finestra\",\"link_target_same\":\"Apri link nella stessa finestra\",\"link_target\":\"Target\",\"link_url\":\"URL link\",\"link_title\":\"Inserisci/modifica collegamento\",\"image_align_right\":\"A destra\",\"image_align_left\":\"A sinistra\",\"image_align_textbottom\":\"In basso al testo\",\"image_align_texttop\":\"In alto al testo\",\"image_align_bottom\":\"In basso\",\"image_align_middle\":\"In mezzo\",\"image_align_top\":\"In alto\",\"image_align_baseline\":\"Alla base\",\"image_align\":\"Allineamento\",\"image_hspace\":\"Spaziatura orizz.\",\"image_vspace\":\"Spaziatura vert.\",\"image_dimensions\":\"Dimensioni\",\"image_alt\":\"Descrizione\",\"image_list\":\"Lista immagini\",\"image_border\":\"Bordo\",\"image_src\":\"URL immagine\",\"image_title\":\"Inserisci/modifica immagine\",\"charmap_title\":\"Seleziona carattere speciale\",\"colorpicker_name\":\"Nome:\",\"colorpicker_color\":\"Colore:\",\"colorpicker_named_title\":\"Colori per nome\",\"colorpicker_named_tab\":\"Per nome\",\"colorpicker_palette_title\":\"Tavolozza dei colori\",\"colorpicker_palette_tab\":\"Tavolozza\",\"colorpicker_picker_title\":\"Selettore colori\",\"colorpicker_picker_tab\":\"Selettore\",\"colorpicker_title\":\"Seleziona un colore\",\"code_wordwrap\":\"A capo automatico\",\"code_title\":\"Editor sorgente HTML\",\"anchor_name\":\"Nome ancora\",\"anchor_title\":\"Inserisci/modifica ancora\",\"about_loaded\":\"Plugin caricati\",\"about_version\":\"Versione\",\"about_author\":\"Autore\",\"about_plugin\":\"Plugin\",\"about_plugins\":\"Plugins\",\"about_license\":\"Licenza\",\"about_help\":\"Aiuto\",\"about_general\":\"Informazioni\",\"about_title\":\"Informazioni su TinyMCE\",\"charmap_usage\":\"Utilizza le freccie sinistra e destra per navigare.\",\"anchor_invalid\":\"Specificare un nome di ancora valido.\",\"accessibility_help\":\"Guida accessibilit\\u00e0\",\"accessibility_usage_title\":\"Uso generale\",\"invalid_color_value\":\"Colore non valido\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/ka.js",
    "content": "tinyMCE.addI18n('ka.advanced',{\"underline_desc\":\"\\u10db\\u10dd\\u10ee\\u10d0\\u10d6\\u10e3\\u10e0\\u10da\\u10d8 (Ctrl+U)\",\"italic_desc\":\"\\u10d3\\u10d0\\u10ee\\u10e0\\u10d8\\u10da\\u10d8 (Ctrl+I)\",\"bold_desc\":\"\\u10dc\\u10d0\\u10ee\\u10d4\\u10d5\\u10e0\\u10d0\\u10d3 \\u10e1\\u10e5\\u10d4\\u10da\\u10d8 (Ctrl+B)\",dd:\"\\u10ea\\u10dc\\u10dd\\u10d1\\u10d0\\u10e0\\u10d8\\u10e1 \\u10d0\\u10e6\\u10ec\\u10d4\\u10e0\\u10d0\",dt:\"\\u10ea\\u10dc\\u10dd\\u10d1\\u10d0\\u10e0\\u10d8\\u10e1 \\u10e2\\u10d4\\u10e0\\u10db\\u10d8\\u10dc\\u10d8\",samp:\"\\u10d9\\u10dd\\u10d3\\u10d8\\u10e1 \\u10db\\u10d0\\u10d2\\u10d0\\u10da\\u10d8\\u10d7\\u10d8\",code:\"\\u10d9\\u10dd\\u10d3\\u10d8\",blockquote:\"\\u10ea\\u10d8\\u10e2\\u10d0\\u10e2\\u10d0\",h6:\"\\u10e1\\u10d0\\u10d7\\u10d0\\u10e3\\u10e0\\u10d8 6\",h5:\"\\u10e1\\u10d0\\u10d7\\u10d0\\u10e3\\u10e0\\u10d8 5\",h4:\"\\u10e1\\u10d0\\u10d7\\u10d0\\u10e3\\u10e0\\u10d8 4\",h3:\"\\u10e1\\u10d0\\u10d7\\u10d0\\u10e3\\u10e0\\u10d8 3\",h2:\"\\u10e1\\u10d0\\u10d7\\u10d0\\u10e3\\u10e0\\u10d8 2\",h1:\"\\u10e1\\u10d0\\u10d7\\u10d0\\u10e3\\u10e0\\u10d8 1\",pre:\"\\u10d2\\u10d0\\u10d3\\u10d0\\u10e4\\u10dd\\u10e0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10e3\\u10da\\u10d8\",address:\"\\u10db\\u10d8\\u10e1\\u10d0\\u10db\\u10d0\\u10e0\\u10d7\\u10d8\",div:\"Div\",paragraph:\"\\u10d0\\u10d1\\u10d6\\u10d0\\u10ea\\u10d8\",block:\"\\u10e4\\u10dd\\u10e0\\u10db\\u10d0\\u10e2\\u10d8\",fontdefault:\"\\u10e8\\u10e0\\u10d8\\u10e4\\u10e2\\u10d8\",\"font_size\":\"\\u10d6\\u10dd\\u10db\\u10d0\",\"style_select\":\"\\u10e1\\u10e2\\u10d8\\u10da\\u10d8\",\"more_colors\":\"\\u10e1\\u10ee\\u10d5\\u10d0 \\u10e4\\u10d4\\u10e0\\u10d4\\u10d1\\u10d8...\",\"toolbar_focus\":\"\\u10e6\\u10d8\\u10da\\u10d0\\u10d9\\u10d4\\u10d1\\u10d8\\u10e1 \\u10de\\u10d0\\u10dc\\u10d4\\u10da\\u10d6\\u10d4 \\u10d2\\u10d0\\u10d3\\u10d0\\u10e1\\u10d5\\u10da\\u10d0 (Alt+Q). \\u10e0\\u10d4\\u10d3\\u10d0\\u10e5\\u10e2\\u10dd\\u10e0\\u10d6\\u10d4 \\u10d2\\u10d0\\u10d3\\u10d0\\u10e1\\u10d5\\u10da\\u10d0 (Alt+Z). \\u10d2\\u10d6\\u10d8\\u10e1 \\u10d4\\u10da\\u10d4\\u10db\\u10d4\\u10dc\\u10e2\\u10d8\\u10d6\\u10d4 \\u10d2\\u10d0\\u10d3\\u10d0\\u10e1\\u10d5\\u10da\\u10d0 (Alt+X).\",newdocument:\"\\u10d3\\u10d0\\u10e0\\u10ec\\u10db\\u10e3\\u10dc\\u10d4\\u10d1\\u10e3\\u10da\\u10d8 \\u10ee\\u10d0\\u10e0\\u10d7, \\u10e0\\u10dd\\u10db \\u10d2\\u10e1\\u10e3\\u10e0\\u10d7 \\u10e7\\u10d5\\u10d4\\u10da\\u10d0\\u10e4\\u10d4\\u10e0\\u10d8\\u10e1 \\u10ec\\u10d0\\u10e8\\u10da\\u10d0\",path:\"\\u10e2\\u10d4\\u10d2\\u10d4\\u10d1\\u10d8\",\"clipboard_msg\":\"\\u10d9\\u10dd\\u10de\\u10d8\\u10e0\\u10d4\\u10d1\\u10d0, \\u10d0\\u10db\\u10dd\\u10ed\\u10e0\\u10d0 \\u10d3\\u10d0 \\u10e9\\u10d0\\u10e1\\u10db\\u10d0 Firefox-\\u10e8\\u10d8 \\u10d0\\u10e0 \\u10db\\u10e3\\u10e8\\u10d0\\u10dd\\u10d1\\u10e1.\\\\r\\n\\u10d2\\u10e1\\u10e3\\u10e0\\u10d7 \\u10db\\u10d8\\u10d8\\u10e6\\u10dd\\u10d7 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d8\\u10d7\\u10d8 \\u10d8\\u10dc\\u10e4\\u10dd\\u10e0\\u10db\\u10d0\\u10ea\\u10d8\\u10d0?\",\"blockquote_desc\":\"\\u10ea\\u10d8\\u10e2\\u10d0\\u10e2\\u10d0\",\"help_desc\":\"\\u10d3\\u10d0\\u10ee\\u10db\\u10d0\\u10e0\\u10d4\\u10d1\\u10d0\",\"newdocument_desc\":\"\\u10d0\\u10ee\\u10d0\\u10da\\u10d8 \\u10d3\\u10dd\\u10d9\\u10e3\\u10db\\u10d4\\u10dc\\u10e2\\u10d8\",\"image_props_desc\":\"\\u10d2\\u10d0\\u10db\\u10dd\\u10e1\\u10d0\\u10ee\\u10e3\\u10da\\u10d4\\u10d1\\u10d8\\u10e1 \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"paste_desc\":\"\\u10e9\\u10d0\\u10e1\\u10db\\u10d0\",\"copy_desc\":\"\\u10d9\\u10dd\\u10de\\u10d8\\u10e0\\u10d4\\u10d1\\u10d0\",\"cut_desc\":\"\\u10d0\\u10db\\u10dd\\u10ed\\u10e0\\u10d0\",\"anchor_desc\":\"\\u10e6\\u10e3\\u10d6\\u10d0\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0/\\u10e0\\u10d4\\u10d3\\u10d0\\u10e5\\u10e2\\u10d8\\u10e0\\u10d4\\u10d1\\u10d0\",\"visualaid_desc\":\"\\u10e7\\u10d5\\u10d4\\u10da\\u10d0 \\u10e1\\u10d8\\u10db\\u10d1\\u10dd\\u10da\\u10dd\",\"charmap_desc\":\"\\u10e1\\u10d8\\u10db\\u10d1\\u10dd\\u10da\\u10dd\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0\",\"backcolor_desc\":\"\\u10db\\u10dd\\u10dc\\u10d8\\u10e1\\u10dc\\u10e3\\u10da\\u10d8 \\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\\u10e1 \\u10e4\\u10d4\\u10e0\\u10d8\",\"forecolor_desc\":\"\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\\u10e1 \\u10e4\\u10d4\\u10e0\\u10d8\",\"custom1_desc\":\"\\u10e1\\u10d0\\u10d9\\u10e3\\u10d7\\u10d0\\u10e0\\u10d8 \\u10d0\\u10e6\\u10ec\\u10d4\\u10e0\\u10d0\",\"removeformat_desc\":\"\\u10e4\\u10dd\\u10e0\\u10db\\u10d0\\u10e2\\u10d8\\u10e1 \\u10d2\\u10d0\\u10ec\\u10db\\u10d4\\u10dc\\u10d3\\u10d0\",\"hr_desc\":\"\\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0\",\"sup_desc\":\"\\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d8\\u10e1 \\u10d6\\u10d4\\u10db\\u10dd\\u10d7\",\"sub_desc\":\"\\u10e1\\u10e2\\u10d8\\u10e0\\u10e5\\u10dd\\u10dc\\u10d8\\u10e1 \\u10e5\\u10d5\\u10d4\\u10db\\u10dd\\u10d7\",\"code_desc\":\"HTML \\u10d9\\u10dd\\u10d3\\u10d8\\u10e1 \\u10e0\\u10d4\\u10d3\\u10d0\\u10e5\\u10e2\\u10d8\\u10e0\\u10d4\\u10d1\\u10d0\",\"cleanup_desc\":\"\\u10d6\\u10d4\\u10d3\\u10db\\u10d4\\u10e2\\u10d8 \\u10d9\\u10dd\\u10d3\\u10d8\\u10e1\\u10d0\\u10d2\\u10d0\\u10dc \\u10d2\\u10d0\\u10ec\\u10db\\u10d4\\u10dc\\u10d3\\u10d0\",\"image_desc\":\"\\u10d2\\u10d0\\u10db\\u10dd\\u10e1\\u10d0\\u10ee\\u10e3\\u10da\\u10d4\\u10d1\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0/\\u10e0\\u10d4\\u10d3\\u10d0\\u10e5\\u10e2\\u10d8\\u10e0\\u10d4\\u10d1\\u10d0\",\"unlink_desc\":\"\\u10d1\\u10db\\u10e3\\u10da\\u10d8\\u10e1 \\u10ec\\u10d0\\u10e8\\u10da\\u10d0\",\"link_desc\":\"\\u10d1\\u10db\\u10e3\\u10da\\u10d8\\u10e1 \\u10d3\\u10d0\\u10db\\u10d0\\u10e2\\u10d4\\u10d1\\u10d0/\\u10e8\\u10d4\\u10ea\\u10d5\\u10da\\u10d0\",\"redo_desc\":\"\\u10d3\\u10d0\\u10d1\\u10e0\\u10e3\\u10dc\\u10d4\\u10d1\\u10d0 (Ctrl+Y)\",\"undo_desc\":\"\\u10d2\\u10d0\\u10e3\\u10e5\\u10db\\u10d4\\u10d1\\u10d0 (Ctrl+Z)\",\"indent_desc\":\"\\u10d3\\u10d0\\u10e8\\u10dd\\u10e0\\u10d4\\u10d1\\u10d8\\u10e1 \\u10d2\\u10d0\\u10d6\\u10e0\\u10d3\\u10d0\",\"outdent_desc\":\"\\u10d3\\u10d0\\u10e8\\u10dd\\u10e0\\u10d4\\u10d1\\u10d8\\u10e1 \\u10e8\\u10d4\\u10db\\u10ea\\u10d8\\u10e0\\u10d4\\u10d1\\u10d0\",\"numlist_desc\":\"\\u10d3\\u10d0\\u10dc\\u10dd\\u10db\\u10e0\\u10d8\\u10da\\u10d8 \\u10e1\\u10d8\\u10d0\",\"bullist_desc\":\"\\u10db\\u10d0\\u10e0\\u10d9\\u10d8\\u10e0\\u10d4\\u10d1\\u10e3\\u10da\\u10d8 \\u10e1\\u10d8\\u10d0\",\"justifyfull_desc\":\"\\u10e1\\u10d8\\u10d2\\u10d0\\u10dc\\u10d4\\u10d6\\u10d4\",\"justifyright_desc\":\"\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\\u10e1 \\u10d2\\u10d0\\u10e1\\u10ec\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0 \\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10dc\\u10d8\\u10d5\",\"justifycenter_desc\":\"\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\\u10e1 \\u10d2\\u10d0\\u10e1\\u10ec\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0 \\u10ea\\u10d4\\u10dc\\u10e2\\u10e0\\u10d6\\u10d4\",\"justifyleft_desc\":\"\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\\u10e1 \\u10d2\\u10d0\\u10e1\\u10ec\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0 \\u10db\\u10d0\\u10e0\\u10ea\\u10ee\\u10dc\\u10d8\\u10d5\",\"striketrough_desc\":\"\\u10d2\\u10d0\\u10d3\\u10d0\\u10ee\\u10d0\\u10d6\\u10e3\\u10da\\u10d8\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\",\"help_shortcut\":\"Press ALT-F10 for toolbar. Press ALT-0 for help\",\"rich_text_area\":\"Rich Text Area\",\"shortcuts_desc\":\"Accessability Help\",toolbar:\"Toolbar\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/ka_dlg.js",
    "content": "tinyMCE.addI18n('ka.advanced_dlg',{\"link_list\":\"\\u10d1\\u10db\\u10e3\\u10da\\u10d4\\u10d1\\u10d8\\u10e1 \\u10e1\\u10d8\\u10d0\",\"link_is_external\":\"\\u10e8\\u10d4\\u10e7\\u10d5\\u10d0\\u10dc\\u10d8\\u10da\\u10d8 \\u10db\\u10d8\\u10e1\\u10d0\\u10db\\u10d0\\u10e0\\u10d7\\u10d8 \\u10d2\\u10d0\\u10d5\\u10e1 \\u10d2\\u10d0\\u10e0\\u10d4 \\u10d1\\u10db\\u10e3\\u10da\\u10e1, \\u10d3\\u10d0\\u10d5\\u10d0\\u10db\\u10d0\\u10d7\\u10dd\\u10e2 \\u10de\\u10e0\\u10d4\\u10e4\\u10d8\\u10e5\\u10e1\\u10d8 http://?\",\"link_is_email\":\"\\u10e8\\u10d4\\u10e7\\u10d5\\u10d0\\u10dc\\u10d8\\u10da\\u10d8 \\u10db\\u10d8\\u10e1\\u10d0\\u10db\\u10d0\\u10e0\\u10d7\\u10d8 \\u10d2\\u10d0\\u10d5\\u10e1 \\u10d4\\u10da.\\u10e4\\u10dd\\u10e1\\u10e2\\u10d8\\u10e1 \\u10db\\u10d8\\u10e1\\u10d0\\u10db\\u10d0\\u10e0\\u10d7\\u10e1, \\u10d3\\u10d0\\u10d5\\u10d0\\u10db\\u10d0\\u10e2\\u10dd\\u10d7 \\u10de\\u10e0\\u10d4\\u10e4\\u10d8\\u10e5\\u10e1\\u10d8 mailto:?\",\"link_titlefield\":\"\\u10e1\\u10d0\\u10d7\\u10d0\\u10e3\\u10e0\\u10d8\",\"link_target_blank\":\"\\u10d0\\u10ee\\u10d0\\u10da \\u10e4\\u10d0\\u10dc\\u10ef\\u10d0\\u10e0\\u10d0\\u10e8\\u10d8 \\u10d2\\u10d0\\u10ee\\u10e1\\u10dc\\u10d0\",\"link_target_same\":\"\\u10db\\u10dd\\u10ea\\u10d4\\u10db\\u10e3\\u10da \\u10e4\\u10d0\\u10dc\\u10ef\\u10d0\\u10e0\\u10d0\\u10e8\\u10d8 \\u10d2\\u10d0\\u10ee\\u10e1\\u10dc\\u10d0\",\"link_target\":\"\\u10db\\u10d8\\u10d6\\u10d0\\u10dc\\u10d8\",\"link_url\":\"\\u10db\\u10d8\\u10e1\\u10d0\\u10db\\u10d0\\u10e0\\u10d7\\u10d8\",\"link_title\":\"\\u10d1\\u10db\\u10e3\\u10da\\u10d8\\u10e1 \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"image_align_right\":\"\\u10db\\u10d0\\u10e0\\u10ef\\u10d5\\u10d4\\u10dc\\u10d0 \\u10d9\\u10d8\\u10d3\\u10d4\\u10d6\\u10d4\",\"image_align_left\":\"\\u10db\\u10d0\\u10e0\\u10ea\\u10ee\\u10d4\\u10dc\\u10d0 \\u10d9\\u10d8\\u10d3\\u10d4\\u10d6\\u10d4\",\"image_align_textbottom\":\"\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\\u10e1 \\u10e5\\u10d5\\u10d4\\u10d3\\u10d0 \\u10d9\\u10d8\\u10d3\\u10d4\\u10d6\\u10d4\",\"image_align_texttop\":\"\\u10e2\\u10d4\\u10e5\\u10e1\\u10e2\\u10d8\\u10e1 \\u10d6\\u10d4\\u10d3\\u10d0 \\u10d9\\u10d8\\u10d3\\u10d4\\u10d6\\u10d4\",\"image_align_bottom\":\"\\u10e5\\u10d5\\u10d4\\u10d3\\u10d0 \\u10d9\\u10d8\\u10d3\\u10d4\\u10d6\\u10d4\",\"image_align_middle\":\"\\u10ea\\u10d4\\u10dc\\u10e2\\u10e0\\u10d6\\u10d4\",\"image_align_top\":\"\\u10d6\\u10d4\\u10d3\\u10d0 \\u10d9\\u10d8\\u10d3\\u10d4\\u10d6\\u10d4\",\"image_align_baseline\":\"\\u10e1\\u10d0\\u10d1\\u10d0\\u10d6\\u10e1\\u10dd \\u10ee\\u10d0\\u10d6\\u10d8\\u10e1 \\u10db\\u10d8\\u10ee\\u10d4\\u10d3\\u10d5\\u10d8\\u10d7\",\"image_align\":\"\\u10d2\\u10d0\\u10e1\\u10ec\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\",\"image_hspace\":\"\\u10f0\\u10dd\\u10e0\\u10d8\\u10d6\\u10dd\\u10dc\\u10e2. \\u10d3\\u10d0\\u10e8\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\",\"image_vspace\":\"\\u10d5\\u10d4\\u10e0\\u10e2. \\u10d3\\u10d0\\u10e8\\u10dd\\u10e0\\u10d4\\u10d1\\u10d0\",\"image_dimensions\":\"\\u10d6\\u10dd\\u10db\\u10d0\",\"image_alt\":\"\\u10d0\\u10e6\\u10ec\\u10d4\\u10e0\\u10d0\",\"image_list\":\"\\u10d2\\u10d0\\u10db\\u10dd\\u10e1\\u10d0\\u10ee\\u10e3\\u10da\\u10d4\\u10d1\\u10d4\\u10d1\\u10d8\\u10e1 \\u10e1\\u10d8\\u10d0\",\"image_border\":\"\\u10e9\\u10d0\\u10e0\\u10e9\\u10dd\",\"image_src\":\"\\u10db\\u10d8\\u10e1\\u10d0\\u10db\\u10d0\\u10e0\\u10d7\\u10d8\",\"image_title\":\"\\u10d2\\u10d0\\u10db\\u10dd\\u10e1\\u10d0\\u10ee\\u10e3\\u10da\\u10d4\\u10d1\\u10d8\\u10e1 \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"charmap_title\":\"\\u10e1\\u10d8\\u10db\\u10d1\\u10dd\\u10da\\u10dd\\u10e1 \\u10d0\\u10e0\\u10e9\\u10d4\\u10d5\\u10d0\",\"colorpicker_name\":\"\\u10e1\\u10d0\\u10ee\\u10d4\\u10da\\u10ec\\u10dd\\u10d3\\u10d4\\u10d1\\u10d0:\",\"colorpicker_color\":\"\\u10d9\\u10dd\\u10d3\\u10d8:\",\"colorpicker_named_title\":\"\\u10e4\\u10d4\\u10e0\\u10d4\\u10d1\\u10d8\",\"colorpicker_named_tab\":\"\\u10e1\\u10d0\\u10ee\\u10d4\\u10da\\u10ec\\u10dd\\u10d3\\u10d4\\u10d1\\u10d0\",\"colorpicker_palette_title\":\"\\u10e4\\u10d4\\u10e0\\u10d4\\u10d1\\u10d8\",\"colorpicker_palette_tab\":\"\\u10de\\u10d0\\u10da\\u10d8\\u10e2\\u10e0\\u10d0\",\"colorpicker_picker_title\":\"\\u10e4\\u10d4\\u10e0\\u10d7\\u10d0 \\u10e8\\u10d4\\u10db\\u10e0\\u10e9\\u10d4\\u10d5\\u10d8\",\"colorpicker_picker_tab\":\"\\u10e1\\u10de\\u10d4\\u10e5\\u10e2\\u10e0\\u10d8\",\"colorpicker_title\":\"\\u10d0\\u10d5\\u10d8\\u10e0\\u10e9\\u10d8\\u10dd\\u10d7 \\u10e4\\u10d4\\u10e0\\u10d8\",\"code_wordwrap\":\"\\u10e1\\u10e2\\u10e0\\u10d8\\u10e5\\u10dd\\u10dc\\u10d8\\u10e1 \\u10d2\\u10d0\\u10d3\\u10d0\\u10e2\\u10d0\\u10dc\\u10d0\",\"code_title\":\"HTML \\u10d9\\u10dd\\u10d3\\u10d8\\u10e1 \\u10e0\\u10d4\\u10d3\\u10d0\\u10e5\\u10e2\\u10dd\\u10e0\\u10d8\",\"anchor_name\":\"\\u10e6\\u10e3\\u10d6\\u10d0\\u10e1 \\u10e1\\u10d0\\u10ee\\u10d4\\u10da\\u10d8\",\"anchor_title\":\"\\u10e6\\u10e3\\u10d6\\u10d0\\u10e1 \\u10de\\u10d0\\u10e0\\u10d0\\u10db\\u10d4\\u10e2\\u10e0\\u10d4\\u10d1\\u10d8\",\"about_loaded\":\"\\u10db\\u10d8\\u10db\\u10d0\\u10d2\\u10e0\\u10d4\\u10d1\\u10e3\\u10da\\u10d8 \\u10de\\u10da\\u10d0\\u10d2\\u10d8\\u10dc\\u10d4\\u10d1\\u10d8\",\"about_version\":\"\\u10d5\\u10d4\\u10e0\\u10e1\\u10d8\\u10d0\",\"about_author\":\"\\u10d0\\u10d5\\u10e2\\u10dd\\u10e0\\u10d8\",\"about_plugin\":\"\\u10de\\u10da\\u10d0\\u10d2\\u10d8\\u10dc\\u10d8\",\"about_plugins\":\"\\u10de\\u10da\\u10d0\\u10d2\\u10d8\\u10dc\\u10d4\\u10d1\\u10d8\",\"about_license\":\"\\u10da\\u10d8\\u10ea\\u10d4\\u10dc\\u10d6\\u10d8\\u10d0\",\"about_help\":\"\\u10d3\\u10d0\\u10ee\\u10db\\u10d0\\u10e0\\u10d4\\u10d1\\u10d0\",\"about_general\":\"\\u10d0\\u10e6\\u10ec\\u10d4\\u10e0\\u10d8\\u10da\\u10dd\\u10d1\\u10d0\",\"about_title\":\"TinyMCE \\u10d0\\u10e6\\u10ec\\u10d4\\u10e0\\u10d8\\u10da\\u10dd\\u10d1\\u10d0\",\"anchor_invalid\":\"\\u10e8\\u10d4\\u10d8\\u10e7\\u10d5\\u10d0\\u10dc\\u10d4\\u10d7 \\u10e6\\u10e3\\u10d6\\u10d0\\u10e1 \\u10d9\\u10dd\\u10e0\\u10d4\\u10e5\\u10e2\\u10e3\\u10da\\u10d8 \\u10e1\\u10d0\\u10ee\\u10d4\\u10da\\u10d8.\",\"accessibility_help\":\"Accessibility Help\",\"accessibility_usage_title\":\"General Usage\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/ko.js",
    "content": "tinyMCE.addI18n('ko.advanced',{\"underline_desc\":\"\\ubc11\\uc904(Ctrl-U)\",\"italic_desc\":\"\\uae30\\uc6b8\\uc778 \\uae00\\uaf34(Ctrl-I)\",\"bold_desc\":\"\\uad75\\uc740 \\uae00\\uaf34(Ctrl-B)\",dd:\"\\uc815\\uc758 \\uc124\\uba85\",dt:\"\\uc815\\uc758 \\uc5b4\\uad6c\",samp:\"\\ucf54\\ub4dc \\uc608\\uc2dc\",code:\"\\ucf54\\ub4dc\",blockquote:\"\\uc778\\uc6a9\\ubb38\",h6:\"\\ud45c\\uc81c6\",h5:\"\\ud45c\\uc81c5\",h4:\"\\ud45c\\uc81c4\",h3:\"\\ud45c\\uc81c3\",h2:\"\\ud45c\\uc81c2\",h1:\"\\ud45c\\uc81c1\",pre:\"pre\",address:\"\\uc8fc\\uc18c\",div:\"Div\",paragraph:\"\\ub2e8\\ub77d\",block:\"\\ud615\\uc2dd\",fontdefault:\"\\uae00\\uaf34\\uad70\",\"font_size\":\"\\uae00\\uaf34 \\ud06c\\uae30\",\"style_select\":\"\\uc11c\\uc2dd\",\"more_colors\":\"\\uadf8 \\uc678\\uc758 \\uc0c9\",\"toolbar_focus\":\"\\ubc84\\ud2bc\\uc73c\\ub85c \\uc810\\ud504 - Alt-Q, \\uc5d0\\ub514\\ud130\\ub85c \\uc810\\ud504 - Alt-Z, Jump to element path - Alt-X\",newdocument:\"\\uc815\\ub9d0 \\ubaa8\\ub4e0 \\ub0b4\\uc6a9\\uc744 \\uc9c0\\uc6b0\\uc2dc\\uaca0\\uc2b5\\ub2c8\\uae4c?\",path:\"\\uacbd\\ub85c\",\"clipboard_msg\":\"Mozilla \\ubc0f Firefox\\uc5d0\\uc11c\\ub294 \\ubcf5\\uc0ac/\\uc798\\ub77c\\ub0b4\\uae30/\\ubd99\\uc774\\uae30\\ub97c \\uc0ac\\uc6a9\\ud560 \\uc218 \\uc5c6\\uc2b5\\ub2c8\\ub2e4. \\uc774 \\ubb38\\uc81c\\uc5d0 \\ub300\\ud574 \\ub354 \\uc790\\uc138\\ud55c \\uc0ac\\ud56d\\uc744 \\ubcf4\\uc2dc\\uaca0\\uc2b5\\ub2c8\\uae4c?\",\"blockquote_desc\":\"\\uc778\\uc6a9\\ubb38\",\"help_desc\":\"\\ub3c4\\uc6c0\\ub9d0\",\"newdocument_desc\":\"\\uc0c8 \\ubb38\\uc11c\",\"image_props_desc\":\"\\uc774\\ubbf8\\uc9c0 \\uc18d\\uc131\",\"paste_desc\":\"\\ubd99\\uc774\\uae30(Ctrl-V)\",\"copy_desc\":\"\\ubcf5\\uc0ac(Ctrl-C)\",\"cut_desc\":\"\\uc798\\ub77c\\ub0b4\\uae30(Ctrl-X)\",\"anchor_desc\":\"\\uc575\\ucee4 \\uc0bd\\uc785/\\ud3b8\\uc9d1\",\"visualaid_desc\":\"\\uc548\\ub0b4\\uc120 \\ubc0f \\ubcf4\\uc774\\uc9c0 \\uc54a\\ub294 \\uc694\\uc18c \\ubcf4\\uc784/\\uc228\\uae40\",\"charmap_desc\":\"\\ud2b9\\uc218 \\ubb38\\uc790 \\uc0bd\\uc785\",\"backcolor_desc\":\"\\ubc30\\uacbd\\uc0c9 \\uc120\\ud0dd\",\"forecolor_desc\":\"\\uae00\\uc790\\uc0c9 \\uc120\\ud0dd\",\"custom1_desc\":\"\\uc5ec\\uae30\\uc5d0 \\uc124\\uba85 \\uc785\\ub825\",\"removeformat_desc\":\"\\ud615\\uc2dd \\ud574\\uc81c\",\"hr_desc\":\"\\uad6c\\ubd84\\uc120 \\uc0bd\\uc785\",\"sup_desc\":\"\\uc704\\ucca8\\uc790\",\"sub_desc\":\"\\uc544\\ub798\\ucca8\\uc790\",\"code_desc\":\"HTML \\uc18c\\uc2a4 \\ud3b8\\uc9d1\",\"cleanup_desc\":\"\\ubcf5\\uc7a1\\ud55c \\ucf54\\ub4dc \\uc815\\ub9ac\",\"image_desc\":\"\\uc774\\ubbf8\\uc9c0 \\uc0bd\\uc785/\\ud3b8\\uc9d1\",\"unlink_desc\":\"\\ub9c1\\ud06c \\ud574\\uc81c\",\"link_desc\":\"\\ub9c1\\ud06c \\uc0bd\\uc785/\\ud3b8\\uc9d1\",\"redo_desc\":\"\\uc7ac\\uc2e4\\ud589(Ctrl-Y)\",\"undo_desc\":\"\\uc2e4\\ud589 \\ucde8\\uc18c(Ctrl-Z)\",\"indent_desc\":\"\\ub354 \\ub4e4\\uc5ec\\uc4f0\\uae30\",\"outdent_desc\":\"\\ub354 \\ub0b4\\uc5b4\\uc4f0\\uae30\",\"numlist_desc\":\"\\ubc88\\ud638 \\ubaa9\\ub85d \\uc0bd\\uc785/\\uc81c\\uac70\",\"bullist_desc\":\"\\uae30\\ud638 \\ubaa9\\ub85d \\uc0bd\\uc785/\\uc81c\\uac70\",\"justifyfull_desc\":\"\\uc591\\ucabd \\ub9de\\ucda4\",\"justifyright_desc\":\"\\uc624\\ub978\\ucabd \\ub9de\\ucda4\",\"justifycenter_desc\":\"\\uac00\\uc6b4\\ub370 \\ub9de\\ucda4\",\"justifyleft_desc\":\"\\uc67c\\ucabd \\ub9de\\ucda4\",\"striketrough_desc\":\"\\ucde8\\uc18c\\uc120\",\"help_shortcut\":\"\\ub3c4\\uad6c \\ubaa8\\uc74c\\uc740 ALT-F10\\uc744, \\ub3c4\\uc6c0\\ub9d0\\uc740 ALT-0\\uc744 \\ub204\\ub974\\uc138\\uc694.\",\"rich_text_area\":\"\\ub9ac\\uce58 \\ud14d\\uc2a4\\ud2b8 \\uc601\\uc5ed\",\"shortcuts_desc\":\"\\uc811\\uadfc\\uc131 \\ub3c4\\uc6c0\\ub9d0\",toolbar:\"\\ub3c4\\uad6c \\ubaa8\\uc74c\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/ko_dlg.js",
    "content": "tinyMCE.addI18n('ko.advanced_dlg',{\"link_list\":\"\\ub9c1\\ud06c \\ubaa9\\ub85d\",\"link_is_external\":\"\\uc785\\ub825\\ud558\\uc2e0 URL\\uc740 \\uc678\\ubd80 \\ub9c1\\ud06c\\ub85c \\ud310\\ub2e8\\ub429\\ub2c8\\ub2e4. URL \\uc55e\\uc5d0 \\ud544\\uc218\\uc801\\uc778 http://\\ub97c \\ubd99\\uc774\\uc2dc\\uaca0\\uc2b5\\ub2c8\\uae4c?\",\"link_is_email\":\"\\uc785\\ub825\\ud558\\uc2e0 URL\\uc740 e\\uba54\\uc77c \\uc8fc\\uc18c\\ub85c \\ud310\\ub2e8\\ub429\\ub2c8\\ub2e4. URL \\uc55e\\uc5d0 \\ud544\\uc218\\uc801\\uc778 mailto:\\ub97c \\ubd99\\uc774\\uc2dc\\uaca0\\uc2b5\\ub2c8\\uae4c?\",\"link_titlefield\":\"\\uc81c\\ubaa9\",\"link_target_blank\":\"\\uc0c8 \\ucc3d\\uc5d0\\uc11c \\ub9c1\\ud06c \\uc5f4\\uae30\",\"link_target_same\":\"\\uac19\\uc740 \\ucc3d\\uc5d0\\uc11c \\ub9c1\\ud06c \\uc5f4\\uae30\",\"link_target\":\"Target\",\"link_url\":\"\\ub9c1\\ud06c URL\",\"link_title\":\"\\ub9c1\\ud06c \\uc0bd\\uc785/\\ud3b8\\uc9d1\",\"image_align_right\":\"Right\",\"image_align_left\":\"Left\",\"image_align_textbottom\":\"Text bottom\",\"image_align_texttop\":\"Text top\",\"image_align_bottom\":\"Bottom\",\"image_align_middle\":\"Middle\",\"image_align_top\":\"Top\",\"image_align_baseline\":\"\\uae30\\uc900\\uc120\",\"image_align\":\"\\uc904 \\ub9de\\ucda4\",\"image_hspace\":\"\\uc88c\\uc6b0 \\uc5ec\\ubc31\",\"image_vspace\":\"\\uc0c1\\ud558 \\uc5ec\\ubc31\",\"image_dimensions\":\"\\ud06c\\uae30\",\"image_alt\":\"\\uc774\\ubbf8\\uc9c0 \\uc124\\uba85\",\"image_list\":\"\\uc774\\ubbf8\\uc9c0 \\ubaa9\\ub85d\",\"image_border\":\"\\ud14c\\ub450\\ub9ac\\uc120\",\"image_src\":\"\\uc774\\ubbf8\\uc9c0 URL\",\"image_title\":\"\\uc774\\ubbf8\\uc9c0 \\uc0bd\\uc785/\\ud3b8\\uc9d1\",\"charmap_title\":\"\\ud2b9\\uc218 \\ubb38\\uc790 \\uc120\\ud0dd\",\"colorpicker_name\":\"\\uc774\\ub984:\",\"colorpicker_color\":\"\\uc0c9:\",\"colorpicker_named_title\":\"\\uc0c9 \\uc774\\ub984\",\"colorpicker_named_tab\":\"\\uc0c9 \\uc774\\ub984\",\"colorpicker_palette_title\":\"\\ud314\\ub808\\ud2b8 \\uc0c9\",\"colorpicker_palette_tab\":\"\\ud314\\ub808\\ud2b8\",\"colorpicker_picker_title\":\"\\uc0c9 \\uc120\\ud0dd\\uae30\",\"colorpicker_picker_tab\":\"\\uc120\\ud0dd\\uae30\",\"colorpicker_title\":\"\\uc0c9 \\uc120\\ud0dd\",\"code_wordwrap\":\"\\uc904\\ubc14\\uafc8\",\"code_title\":\"HTML \\uc18c\\uc2a4 \\ud3b8\\uc9d1\",\"anchor_name\":\"\\uc575\\ucee4 \\uba85\",\"anchor_title\":\"\\uc575\\ucee4 \\uc0bd\\uc785/\\ud3b8\\uc9d1\",\"about_loaded\":\"\\ub85c\\ub529\\ud55c \\ud50c\\ub7ec\\uadf8\\uc778\",\"about_version\":\"\\ubc84\\uc804\",\"about_author\":\"\\uc81c\\uc791\\uc790\",\"about_plugin\":\"\\ud50c\\ub7ec\\uadf8\\uc778\",\"about_plugins\":\"\\ud50c\\ub7ec\\uadf8\\uc778\",\"about_license\":\"\\ub77c\\uc774\\uc120\\uc2a4\",\"about_help\":\"\\ub3c4\\uc6c0\\ub9d0\",\"about_general\":\"\\ud504\\ub85c\\uadf8\\ub7a8 \\uc815\\ubcf4\",\"about_title\":\"TinyMCE \\uc815\\ubcf4\",\"charmap_usage\":\"\\uc88c\\uc6b0 \\ud654\\uc0b4\\ud45c\\ub97c \\uc0ac\\uc6a9\\ud574 \\uc120\\ud0dd\\ud558\\uc2e4 \\uc218 \\uc788\\uc2b5\\ub2c8\\ub2e4.\",\"anchor_invalid\":\"\\uc801\\uc808\\ud55c \\uc575\\ucee4 \\uba85\\uc744 \\uc9c0\\uc815\\ud574\\uc8fc\\uc138\\uc694.\",\"accessibility_help\":\"\\uc811\\uadfc\\uc131 \\ub3c4\\uc6c0\\ub9d0\",\"accessibility_usage_title\":\"\\uc77c\\ubc18 \\uc0ac\\uc6a9\\ubc95\",\"invalid_color_value\":\"\\uc0c9 \\uac12\\uc774 \\ubd80\\uc801\\ud569\\ud568\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/nb.js",
    "content": "tinyMCE.addI18n('nb.advanced',{\"underline_desc\":\"Understreking\",\"italic_desc\":\"Kursiv\",\"bold_desc\":\"Fet\",dd:\"Definisjonsbeskrivelse\",dt:\"Definisjonsuttrykk\",samp:\"Kodeeksempel\",code:\"Kode\",blockquote:\"Innrykkinnrykk\",h6:\"Overskrift 6\",h5:\"Overskrift 5\",h4:\"Overskrift 4\",h3:\"Overskrift 3\",h2:\"Overskrift 2\",h1:\"Overskrift 1\",pre:\"Pre-formatert\",address:\"Adresse\",div:\"Div\",paragraph:\"Avsnitt\",block:\"Format\",fontdefault:\"Skriftfamilie\",\"font_size\":\"Skriftst\\u00f8rrelse\",\"style_select\":\"Stiler\",\"more_colors\":\"Flere farger\",\"toolbar_focus\":\"Skift til verkt\\u00f8yknapper - Alt+Q, Skift til editor - Alt-Z, Skift til elementsti - Alt-\",newdocument:\"Er du sikker p\\u00e5 at du vil slette alt innhold?\",path:\"Sti\",\"clipboard_msg\":\"Klipp ut / Kopier /Lim inn fungerer ikke i Mozilla og Firefox. \\n  Vil du vite mer om dette?\",\"blockquote_desc\":\"Innrykk\",\"help_desc\":\"Hjelp\",\"newdocument_desc\":\"Nytt dokument\",\"image_props_desc\":\"Bildeegenskaper\",\"paste_desc\":\"Lim inn\",\"copy_desc\":\"Kopier\",\"cut_desc\":\"Klipp ut\",\"anchor_desc\":\"Sett inn / endre anker\",\"visualaid_desc\":\"Sl\\u00e5 av/p\\u00e5 usynlige elementer\",\"charmap_desc\":\"Sett inn spesialtegn\",\"backcolor_desc\":\"Velg bakgrunnsfarge\",\"forecolor_desc\":\"Velg skriftfarge\",\"custom1_desc\":\"Beskrivelse av spesialfunksjon\",\"removeformat_desc\":\"Fjern formatering\",\"hr_desc\":\"Sett inn horisontal linje\",\"sup_desc\":\"Hevet skrift\",\"sub_desc\":\"Senket skrift\",\"code_desc\":\"Redigere HTML-koden\",\"cleanup_desc\":\"Rens ukurant kode\",\"image_desc\":\"Sett inn / endre bilde\",\"unlink_desc\":\"Fjern lenke\",\"link_desc\":\"Sett inn / endre lenke\",\"redo_desc\":\"Gj\\u00f8r om\",\"undo_desc\":\"Angre\",\"indent_desc\":\"\\u00d8k innrykk\",\"outdent_desc\":\"Reduser innrykk\",\"numlist_desc\":\"Nummerliste\",\"bullist_desc\":\"Punktliste\",\"justifyfull_desc\":\"Blokkjuster\",\"justifyright_desc\":\"H\\u00f8yrejuster\",\"justifycenter_desc\":\"Midtstill\",\"justifyleft_desc\":\"Venstrejuster\",\"striketrough_desc\":\"Gjennomstreking\",\"help_shortcut\":\"Trykk ALT F10 for verkt\\u00f8ylinjen. Trykk ALT 0 for hjelp\",\"rich_text_area\":\"Rich tekstomr\\u00e5det\",\"shortcuts_desc\":\"Tilgjengelighetshjelp\",toolbar:\"Verkt\\u00f8ylinje\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/nb_dlg.js",
    "content": "tinyMCE.addI18n('nb.advanced_dlg',{\"link_list\":\"Lenkeliste\",\"link_is_external\":\"Nettadressen du skrev inn ser ut til \\u00e5 v\\u00e6re en ekstern nettadresse. \\u00d8nsker du \\u00e5 legge til det p\\u00e5krevde http://-prefikset?\",\"link_is_email\":\"Nettadressen du skrev inn ser ut til \\u00e5 v\\u00e6re en e-postadresse. \\u00d8nsker du \\u00e5 legge til det p\\u00e5krevde mailto:-prefikset?\",\"link_titlefield\":\"Tittel\",\"link_target_blank\":\"\\u00c5pne i nytt vindu\",\"link_target_same\":\"\\u00c5pne i dette vinduet\",\"link_target\":\"M\\u00e5lside\",\"link_url\":\"Lenkens URL\",\"link_title\":\"Sett inn /endre lenke\",\"image_align_right\":\"H\\u00f8yre\",\"image_align_left\":\"Venstre\",\"image_align_textbottom\":\"Tekstbunn\",\"image_align_texttop\":\"Teksttopp\",\"image_align_bottom\":\"Bunn\",\"image_align_middle\":\"Midtstilt\",\"image_align_top\":\"Topp\",\"image_align_baseline\":\"Bunnlinje\",\"image_align\":\"Justering\",\"image_hspace\":\"Horisontal avstand\",\"image_vspace\":\"Vertikal avstand\",\"image_dimensions\":\"Dimensjoner\",\"image_alt\":\"Bildebeskrivelse\",\"image_list\":\"Bildeliste\",\"image_border\":\"Ramme\",\"image_src\":\"Bildets URL\",\"image_title\":\"Sett inn / endre bilde\",\"charmap_title\":\"Velg spesialtegn\",\"colorpicker_name\":\"Navn:\",\"colorpicker_color\":\"Farge:\",\"colorpicker_named_title\":\"Fargenavn\",\"colorpicker_named_tab\":\"Navnevalg\",\"colorpicker_palette_title\":\"Palettfarger\",\"colorpicker_palette_tab\":\"Palett\",\"colorpicker_picker_title\":\"Fargevalg\",\"colorpicker_picker_tab\":\"Velg farge\",\"colorpicker_title\":\"Velg en farge\",\"code_wordwrap\":\"Tekstbryting\",\"code_title\":\"HTML-editor\",\"anchor_name\":\"Ankernavn\",\"anchor_title\":\"Sett inn / endre anker\",\"about_loaded\":\"Lastede programtillegg\",\"about_version\":\"Versjon\",\"about_author\":\"Utvikler\",\"about_plugin\":\"Programtillegg\",\"about_plugins\":\"Programtillegg\",\"about_license\":\"Lisens\",\"about_help\":\"Hjelp\",\"about_general\":\"Om\",\"about_title\":\"Om TinyMCE\",\"charmap_usage\":\"Bruk venstre og h\\u00f8yre piltast for \\u00e5 navigere.\",\"anchor_invalid\":\"Du m\\u00e5 angi et gyldig ankernavn.\",\"accessibility_help\":\"Tilhjengelighetshjelp\",\"accessibility_usage_title\":\"Generell bruk\",\"invalid_color_value\":\"Ugyldig fargeverdi\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/nl.js",
    "content": "tinyMCE.addI18n('nl.advanced',{\"underline_desc\":\"Onderstrepen (Ctrl+U)\",\"italic_desc\":\"Cursief (Ctrl+I)\",\"bold_desc\":\"Vet (Ctrl+B)\",dd:\"Definitiebeschrijving\",dt:\"Definitieterm\",samp:\"Codevoorbeeld\",code:\"Code\",blockquote:\"Citaat\",h6:\"Kop 6\",h5:\"Kop 5\",h4:\"Kop 4\",h3:\"Kop 3\",h2:\"Kop 2\",h1:\"Kop 1\",pre:\"Vaste opmaak\",address:\"Adres\",div:\"Div\",paragraph:\"Alinea\",block:\"Opmaak\",fontdefault:\"Lettertype\",\"font_size\":\"Tekengrootte\",\"style_select\":\"Stijlen\",\"more_colors\":\"Meer kleuren\",\"toolbar_focus\":\"Spring naar werkbalk - Alt+Q, Spring naar tekst - Alt-Z, Spring naar elementpad - Alt-X\",newdocument:\"Weet u zeker dat u alle inhoud wilt wissen?\",path:\"Pad\",\"clipboard_msg\":\"Kopi\\u00ebren/knippen/plakken is niet beschikbaar in Mozilla en Firefox.\\\\nWilt u meer informatie over deze beperking?\",\"blockquote_desc\":\"Citaat\",\"help_desc\":\"Help\",\"newdocument_desc\":\"Nieuw document\",\"image_props_desc\":\"Afbeeldingseigenschappen\",\"paste_desc\":\"Plakken\",\"copy_desc\":\"Kopi\\u00ebren\",\"cut_desc\":\"Knippen\",\"anchor_desc\":\"Anker invoegen/bewerken\",\"visualaid_desc\":\"Hulplijnen weergeven\",\"charmap_desc\":\"Symbool invoegen\",\"backcolor_desc\":\"Tekstmarkeringskleur\",\"forecolor_desc\":\"Tekstkleur\",\"custom1_desc\":\"Uw eigen beschrijving hier\",\"removeformat_desc\":\"Opmaak verwijderen\",\"hr_desc\":\"Scheidingslijn invoegen\",\"sup_desc\":\"Superscript\",\"sub_desc\":\"Subscript\",\"code_desc\":\"HTML bron bewerken\",\"cleanup_desc\":\"Code opruimen\",\"image_desc\":\"Afbeelding invoegen/bewerken\",\"unlink_desc\":\"Link verwijderen\",\"link_desc\":\"Link invoegen/bewerken\",\"redo_desc\":\"Herhalen (Ctrl+Y)\",\"undo_desc\":\"Ongedaan maken (Ctrl+Z)\",\"indent_desc\":\"Inspringing vergroten\",\"outdent_desc\":\"Inspringing verkleinen\",\"numlist_desc\":\"Nummering\",\"bullist_desc\":\"Opsommingstekens\",\"justifyfull_desc\":\"Uitvullen\",\"justifyright_desc\":\"Rechts uitlijnen\",\"justifycenter_desc\":\"Centreren\",\"justifyleft_desc\":\"Links uitlijnen\",\"striketrough_desc\":\"Doorhalen\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\",\"help_shortcut\":\"Press ALT-F10 for toolbar. Press ALT-0 for help\",\"rich_text_area\":\"Rich Text Area\",\"shortcuts_desc\":\"Accessability Help\",toolbar:\"Toolbar\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/nl_dlg.js",
    "content": "tinyMCE.addI18n('nl.advanced_dlg',{\"link_list\":\"Link lijst\",\"link_is_external\":\"De ingevoerde URL lijkt op een externe link. Wilt u de vereiste http:// tekst voorvoegen?\",\"link_is_email\":\"De ingevoerde URL lijkt op een e-mailadres. Wilt u de vereiste mailto: tekst voorvoegen?\",\"link_titlefield\":\"Titel\",\"link_target_blank\":\"Link in een nieuw venster openen\",\"link_target_same\":\"Link in hetzelfde venster openen\",\"link_target\":\"Doel\",\"link_url\":\"Link URL\",\"link_title\":\"Link invoegen/bewerken\",\"image_align_right\":\"Rechts\",\"image_align_left\":\"Links\",\"image_align_textbottom\":\"Onderkant tekst\",\"image_align_texttop\":\"Bovenkant tekst\",\"image_align_bottom\":\"Onder\",\"image_align_middle\":\"Midden\",\"image_align_top\":\"Boven\",\"image_align_baseline\":\"Basislijn\",\"image_align\":\"Uitlijning\",\"image_hspace\":\"Horizontale ruimte\",\"image_vspace\":\"Verticale ruimte\",\"image_dimensions\":\"Afmetingen\",\"image_alt\":\"Beschrijving\",\"image_list\":\"Lijst\",\"image_border\":\"Rand\",\"image_src\":\"Bestand/URL\",\"image_title\":\"Afbeelding invoegen/bewerken\",\"charmap_title\":\"Symbolen\",\"colorpicker_name\":\"Naam:\",\"colorpicker_color\":\"Kleur:\",\"colorpicker_named_title\":\"Benoemde kleuren\",\"colorpicker_named_tab\":\"Benoemd\",\"colorpicker_palette_title\":\"Paletkleuren\",\"colorpicker_palette_tab\":\"Palet\",\"colorpicker_picker_title\":\"Alle kleuren\",\"colorpicker_picker_tab\":\"Alle kleuren\",\"colorpicker_title\":\"Kleuren\",\"code_wordwrap\":\"Automatische terugloop\",\"code_title\":\"HTML Bron\",\"anchor_name\":\"Ankernaam\",\"anchor_title\":\"Anker invoegen/bewerken\",\"about_loaded\":\"Geladen Invoegtoepassingen\",\"about_version\":\"Versie\",\"about_author\":\"Auteur\",\"about_plugin\":\"Invoegtoepassing\",\"about_plugins\":\"Invoegtoepassingen\",\"about_license\":\"Licentie\",\"about_help\":\"Help\",\"about_general\":\"Info\",\"about_title\":\"Over TinyMCE\",\"anchor_invalid\":\"Geef een geldige ankernaam.\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/pl.js",
    "content": "tinyMCE.addI18n('pl.advanced',{\"underline_desc\":\"Podkre\\u015blenie (Ctrl+U)\",\"italic_desc\":\"Kursywa (Ctrl+I)\",\"bold_desc\":\"Pogrubienie (Ctrl+B)\",dd:\"Opis terminu\",dt:\"Definicja terminu \",samp:\"Pr\\u00f3bka kodu\",code:\"Kod\",blockquote:\"Wydzielony blok\",h6:\"Nag\\u0142\\u00f3wek 6\",h5:\"Nag\\u0142\\u00f3wek 5\",h4:\"Nag\\u0142\\u00f3wek 4\",h3:\"Nag\\u0142\\u00f3wek 3\",h2:\"Nag\\u0142\\u00f3wek 2\",h1:\"Nag\\u0142\\u00f3wek 1\",pre:\"Czcionka o sta\\u0142ej szeroko\\u015bci\",address:\"Adres\",div:\"Div\",paragraph:\"Akapit\",block:\"Format\",fontdefault:\"Rodzaj czcionki\",\"font_size\":\"Rozmiar czcionki\",\"style_select\":\"Styl\",\"more_colors\":\"Wi\\u0119cej kolor\\u00f3w\",\"toolbar_focus\":\"Przeskocz do przycisk\\u00f3w narz\\u0119dzi - Alt+Q, Przeskocz do edytora - Alt-Z, Przeskocz do elementu \\u015bcie\\u017cki - Alt-X\",newdocument:\"Czy jeste\\u015b pewnien, ze chcesz wyczy\\u015bci\\u0107 ca\\u0142\\u0105 zawarto\\u015b\\u0107?\",path:\"\\u015acie\\u017cka\",\"clipboard_msg\":\"Akcje Kopiuj/Wytnij/Wklej nie s\\u0105 dost\\u0119pne w Mozilli i Firefox.\\\\nCzy chcesz wi\\u0119cej informacji o tym problemie?\",\"blockquote_desc\":\"Blok cytatu\",\"help_desc\":\"Pomoc\",\"newdocument_desc\":\"Nowy dokument\",\"image_props_desc\":\"W\\u0142a\\u015bciwo\\u015bci obrazka\",\"paste_desc\":\"Wklej\",\"copy_desc\":\"Kopiuj\",\"cut_desc\":\"Wytnij\",\"anchor_desc\":\"Wstaw/edytuj kotwic\\u0119\",\"visualaid_desc\":\"Prze\\u0142\\u0105cz widoczno\\u015b\\u0107 wska\\u017anik\\u00f3w i niewidocznych element\\u00f3w\",\"charmap_desc\":\"Wstaw znak specjalny\",\"backcolor_desc\":\"Wybierz kolor t\\u0142a\",\"forecolor_desc\":\"Wybierz kolor tekstu\",\"custom1_desc\":\"Tw\\u00f3j niestandardowy opis tutaj\",\"removeformat_desc\":\"Usu\\u0144 formatowanie\",\"hr_desc\":\"Wstaw poziom\\u0105 lini\\u0119\",\"sup_desc\":\"Indeks g\\u00f3rny\",\"sub_desc\":\"Indeks dolny\",\"code_desc\":\"Edytuj \\u017ar\\u00f3d\\u0142o HTML\",\"cleanup_desc\":\"Wyczy\\u015b\\u0107 nieuporz\\u0105dkowany kod\",\"image_desc\":\"Wstaw/edytuj obraz\",\"unlink_desc\":\"Usu\\u0144 link\",\"link_desc\":\"Wstaw/edytuj link\",\"redo_desc\":\"Pon\\u00f3w (Ctrl+Y)\",\"undo_desc\":\"Cofnij (Ctrl+Z)\",\"indent_desc\":\"Wci\\u0119cie\",\"outdent_desc\":\"Cofnij wci\\u0119cie\",\"numlist_desc\":\"Lista numerowana\",\"bullist_desc\":\"Lista nienumerowana\",\"justifyfull_desc\":\"R\\u00f3wnanie do prawej i lewej\",\"justifyright_desc\":\"Wyr\\u00f3wnaj do prawej\",\"justifycenter_desc\":\"Wycentruj\",\"justifyleft_desc\":\"Wyr\\u00f3wnaj do lewej\",\"striketrough_desc\":\"Przekre\\u015blenie\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\",\"help_shortcut\":\"\",\"rich_text_area\":\"\",\"shortcuts_desc\":\"\",toolbar:\"\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/pl_dlg.js",
    "content": "tinyMCE.addI18n('pl.advanced_dlg',{\"link_list\":\"Lista link\\u00f3w\",\"link_is_external\":\"URL kt\\u00f3ry otworzy\\u0142e\\u015b wydaje si\\u0119 by\\u0107 zewn\\u0119trznym linkiem, czy chcesz doda\\u0107 wymagany prefiks http:// ?\",\"link_is_email\":\"URL kt\\u00f3ry otworzy\\u0142e\\u015b wydaje si\\u0119 by\\u0107 adresem mailowym, czy chcesz doda\\u0107 odpowiedni prefiks mailto:?\",\"link_titlefield\":\"Tytu\\u0142\",\"link_target_blank\":\"Otw\\u00f3rz link w nowym oknie\",\"link_target_same\":\"Otw\\u00f3rz link w tym samym oknie\",\"link_target\":\"Cel\",\"link_url\":\"URL linka\",\"link_title\":\"Wstaw/edytuj link\",\"image_align_right\":\"Prawy\",\"image_align_left\":\"Lewy\",\"image_align_textbottom\":\"Dolny tekst\",\"image_align_texttop\":\"G\\u00f3rny tekst\",\"image_align_bottom\":\"D\\u00f3\\u0142\",\"image_align_middle\":\"\\u015arodek\",\"image_align_top\":\"G\\u00f3ra\",\"image_align_baseline\":\"Linia bazowa\",\"image_align\":\"Wyr\\u00f3wnanie\",\"image_hspace\":\"Odst\\u0119p poziomy\",\"image_vspace\":\"Odst\\u0119p pionowy\",\"image_dimensions\":\"Rozmiary\",\"image_alt\":\"Opis obrazka\",\"image_list\":\"Lista obrazk\\u00f3w\",\"image_border\":\"Obramowanie\",\"image_src\":\"URL obrazka\",\"image_title\":\"Wstaw/edytuj obraz\",\"charmap_title\":\"Wybierz niestandardowy znak\",\"colorpicker_name\":\"Nazwa:\",\"colorpicker_color\":\"Kolor:\",\"colorpicker_named_title\":\"Nazwane kolory\",\"colorpicker_named_tab\":\"Nazwane\",\"colorpicker_palette_title\":\"Paleta kolor\\u00f3w\",\"colorpicker_palette_tab\":\"Paleta\",\"colorpicker_picker_title\":\"Wybieranie kolor\\u00f3w\",\"colorpicker_picker_tab\":\"Wybieranie\",\"colorpicker_title\":\"Wybierz kolor\",\"code_wordwrap\":\"Zawijanie s\\u0142\\u00f3w\",\"code_title\":\"Edytor \\u017ar\\u00f3d\\u0142a HTML\",\"anchor_name\":\"Nazwa zakotwiczenia\",\"anchor_title\":\"Wstaw/Edytuj zakotwiczenie\",\"about_loaded\":\"Za\\u0142adowane wtyczki\",\"about_version\":\"Wersja\",\"about_author\":\"Autor\",\"about_plugin\":\"Wtyczka\",\"about_plugins\":\"Wtyczki\",\"about_license\":\"Licencja\",\"about_help\":\"Pomoc\",\"about_general\":\"O TinyMCE\",\"about_title\":\"O TinyMCE\",\"anchor_invalid\":\"Prosz\\u0119 poda\\u0107 w\\u0142a\\u015bciw\\u0105 nazw\\u0119 zakotwiczenia.\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/pt.js",
    "content": "tinyMCE.addI18n('pt.advanced',{\"underline_desc\":\"Sublinhado (Ctrl+U)\",\"italic_desc\":\"It\\u00e1lico (Ctrl+I)\",\"bold_desc\":\"Negrito (Ctrl+B)\",dd:\"Descri\\u00e7\\u00e3o da defini\\u00e7\\u00e3o\",dt:\"Termo da defini\\u00e7\\u00e3o\",samp:\"Amostra de c\\u00f3digo\",code:\"C\\u00f3digo\",blockquote:\"Cita\\u00e7\\u00e3o em bloco\",h6:\"T\\u00edtulo 6\",h5:\"T\\u00edtulo 5\",h4:\"T\\u00edtulo 4\",h3:\"T\\u00edtulo 3\",h2:\"T\\u00edtulo 2\",h1:\"T\\u00edtulo 1\",pre:\"Pr\\u00e9-formatado\",address:\"Endere\\u00e7o\",div:\"Div\",paragraph:\"Par\\u00e1grafo\",block:\"Formata\\u00e7\\u00e3o\",fontdefault:\"Tipo de fonte\",\"font_size\":\"Tamanho\",\"style_select\":\"Estilos\",\"anchor_delta_width\":\"30\",\"more_colors\":\"Mais cores\",\"toolbar_focus\":\"Ir para as ferramentas - Alt+Q, Ir para o editor - Alt-Z, Ir para o endere\\u00e7o do elemento - Alt-X\",newdocument:\"Tem a certeza que deseja apagar tudo?\",path:\"Endere\\u00e7o\",\"clipboard_msg\":\"Copiar/recortar/colar n\\u00e3o est\\u00e1 dispon\\u00edvel no Mozilla e Firefox. Deseja mais informa\\u00e7\\u00f5es sobre este problema?\",\"blockquote_desc\":\"Cita\\u00e7\\u00e3o em bloco\",\"help_desc\":\"Ajuda\",\"newdocument_desc\":\"Novo documento\",\"image_props_desc\":\"Propriedades da imagem\",\"paste_desc\":\"Colar\",\"copy_desc\":\"Copiar\",\"cut_desc\":\"Recortar\",\"anchor_desc\":\"Inserir/editar \\u00e2ncora\",\"visualaid_desc\":\"Alternar guias/elementos invis\\u00edveis\",\"charmap_desc\":\"Inserir caracteres especiais\",\"backcolor_desc\":\"Selecionar a cor de fundo\",\"forecolor_desc\":\"Selecionar a cor do texto\",\"custom1_desc\":\"Insira aqui a sua descri\\u00e7\\u00e3o personalizada\",\"removeformat_desc\":\"Remover formata\\u00e7\\u00e3o\",\"hr_desc\":\"Inserir separador horizontal\",\"sup_desc\":\"Superior \\u00e0 linha\",\"sub_desc\":\"Inferior \\u00e0 linha\",\"code_desc\":\"Editar c\\u00f3digo fonte\",\"cleanup_desc\":\"Limpar c\\u00f3digo incorreto\",\"image_desc\":\"Inserir/editar imagem\",\"unlink_desc\":\"Remover hyperlink\",\"link_desc\":\"Inserir/editar hyperlink\",\"redo_desc\":\"Refazer (Ctrl+Y)\",\"undo_desc\":\"Desfazer (Ctrl+Z)\",\"indent_desc\":\"Aumentar recuo\",\"outdent_desc\":\"Diminuir recuo\",\"numlist_desc\":\"Numera\\u00e7\\u00e3o\",\"bullist_desc\":\"Marcadores\",\"justifyfull_desc\":\"Justificar\",\"justifyright_desc\":\"Alinhar \\u00e0 direita\",\"justifycenter_desc\":\"Centralizar\",\"justifyleft_desc\":\"Alinhar \\u00e0 esquerda\",\"striketrough_desc\":\"Riscado\",\"anchor_delta_height\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\",\"help_shortcut\":\"Press ALT-F10 for toolbar. Press ALT-0 for help\",\"rich_text_area\":\"Rich Text Area\",\"shortcuts_desc\":\"Accessability Help\",toolbar:\"Toolbar\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/pt_dlg.js",
    "content": "tinyMCE.addI18n('pt.advanced_dlg',{\"link_list\":\"Lista de Links\",\"link_is_external\":\"A URL digitada parece conduzir a um link externo. Deseja acrescentar o prefixo necess\\u00e1rio http://?\",\"link_is_email\":\"A URL digitada parece ser um endere\\u00e7o de e-mail. Deseja acrescentar o prefixo necess\\u00e1rio mailto:?\",\"link_titlefield\":\"T\\u00edtulo\",\"link_target_blank\":\"Abrir hyperlink em nova janela\",\"link_target_same\":\"Abrir hyperlink na mesma janela\",\"link_target\":\"Alvo\",\"link_url\":\"URL do hyperink\",\"link_title\":\"Inserir/editar hyperlink\",\"image_align_right\":\"Direita\",\"image_align_left\":\"Esquerda\",\"image_align_textbottom\":\"Base do texto\",\"image_align_texttop\":\"Topo do texto\",\"image_align_bottom\":\"Abaixo\",\"image_align_middle\":\"Meio\",\"image_align_top\":\"Topo\",\"image_align_baseline\":\"Sobre a linha de texto\",\"image_align\":\"Alinhamento\",\"image_hspace\":\"Espa\\u00e7o Horizontal\",\"image_vspace\":\"Espa\\u00e7o Vertical\",\"image_dimensions\":\"Dimens\\u00f5es\",\"image_alt\":\"Descri\\u00e7\\u00e3o da imagem\",\"image_list\":\"Lista de imagens\",\"image_border\":\"Limites\",\"image_src\":\"Endere\\u00e7o da imagem\",\"image_title\":\"Inserir/editar imagem\",\"charmap_title\":\"Selecionar caracteres personalizados\",\"colorpicker_name\":\"Nome:\",\"colorpicker_color\":\"Cor:\",\"colorpicker_named_title\":\"Cores Personalizadas\",\"colorpicker_named_tab\":\"Personalizadas\",\"colorpicker_palette_title\":\"Paleta de Cores\",\"colorpicker_palette_tab\":\"Paleta\",\"colorpicker_picker_title\":\"Editor de Cores\",\"colorpicker_picker_tab\":\"Editor\",\"colorpicker_title\":\"Selecione uma cor\",\"code_wordwrap\":\"Quebra autom\\u00e1tica de linha\",\"code_title\":\"Editor HTML\",\"anchor_name\":\"Nome da \\u00e2ncora\",\"anchor_title\":\"Inserir/editar \\u00e2ncora\",\"about_loaded\":\"Plugins Instalados\",\"about_version\":\"Vers\\u00e3o\",\"about_author\":\"Autor\",\"about_plugin\":\"Plugin\",\"about_plugins\":\"Plugins\",\"about_license\":\"Licen\\u00e7a\",\"about_help\":\"Ajuda\",\"about_general\":\"Sobre\",\"about_title\":\"Sobre o TinyMCE\",\"anchor_invalid\":\"Por favor, especifique um nome v\\u00e1lido de \\u00e2ncora.\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/ro.js",
    "content": "tinyMCE.addI18n('ro.advanced',{\"underline_desc\":\"Subliniat (Ctrl+U)\",\"italic_desc\":\"Italic (Ctrl+I)\",\"bold_desc\":\"\\u00cengro\\u015fat (Ctrl+B)\",dd:\"Defini\\u0163ie\",dt:\"Termen definit \",samp:\"Mostr\\u0103 de cod\",code:\"Cod\",blockquote:\"Citat\",h6:\"Titlu 6\",h5:\"Titlu 5\",h4:\"Titlu 4\",h3:\"Titlu 3\",h2:\"Titlu 2\",h1:\"Titlu 1\",pre:\"Preformatat\",address:\"Adres\\u0103\",div:\"Div\",paragraph:\"Paragraf\",block:\"Format\",fontdefault:\"Familie font\",\"font_size\":\"Dimensiune font\",\"style_select\":\"Stiluri\",\"more_colors\":\"Mai multe culori\",\"toolbar_focus\":\"S\\u0103ri\\u0163i la instrumente - Alt+Q, S\\u0103ri\\u0163i la editor - Alt-Z, S\\u0103ri\\u0163i la cale - Alt-X\",newdocument:\"Sigur dori\\u0163i s\\u0103 \\u015fterge\\u0163i tot?\",path:\"Cale\",\"clipboard_msg\":\"Copierea/T\\u0103ierea/Lipirea nu sunt disponibile \\u00een Mozilla \\u015fi Firefox.\\\\nDori\\u0163i mai multe informa\\u0163ii despre aceast\\u0103 problem\\u0103?\",\"blockquote_desc\":\"Citat\",\"help_desc\":\"Ajutor\",\"newdocument_desc\":\"Document nou\",\"image_props_desc\":\"Detalii imagine\",\"paste_desc\":\"Lipe\\u015fte\",\"copy_desc\":\"Copiaz\\u0103\",\"cut_desc\":\"Taie\",\"anchor_desc\":\"Inserare/editare ancor\\u0103\",\"visualaid_desc\":\"Comut\\u0103 ghidajele/elementele invizibile\",\"charmap_desc\":\"Inserare caracter special\",\"backcolor_desc\":\"Culoare fundal\",\"forecolor_desc\":\"Culoare text\",\"custom1_desc\":\"Introduce\\u021bi aici o descriere\",\"removeformat_desc\":\"Anuleaz\\u0103 formatarea\",\"hr_desc\":\"Insereaz\\u0103 linie orizontal\\u0103\",\"sup_desc\":\"Superscript\",\"sub_desc\":\"Subscript\",\"code_desc\":\"Editare surs\\u0103 HTML\",\"cleanup_desc\":\"Cur\\u0103\\u0163are cod\",\"image_desc\":\"Inserare/editare imagine\",\"unlink_desc\":\"\\u015eterge leg\\u0103tura\",\"link_desc\":\"Inserare/editare leg\\u0103tur\\u0103\",\"redo_desc\":\"Ref\\u0103 (Ctrl+Y)\",\"undo_desc\":\"Undo (Ctrl+Z)\",\"indent_desc\":\"Indenteaz\\u0103\",\"outdent_desc\":\"De-indenteaz\\u0103\",\"numlist_desc\":\"List\\u0103 ordonat\\u0103\",\"bullist_desc\":\"List\\u0103 neordonat\\u0103\",\"justifyfull_desc\":\"Aliniere pe toat\\u0103 l\\u0103\\u0163imea\",\"justifyright_desc\":\"Aliniere la dreapta\",\"justifycenter_desc\":\"Centrare\",\"justifyleft_desc\":\"Aliniere la st\\u00e2nga\",\"striketrough_desc\":\"T\\u0103iat\",\"help_shortcut\":\"Ap\\u0103sa\\u021bi ALT-F10 pentru bara de unelte. Ap\\u0103sa\\u021bi ALT-0 pentru ajutor\",\"rich_text_area\":\"Zon\\u0103 de text formatat\",\"shortcuts_desc\":\"Ajutor accesabilitate\",toolbar:\"Bar\\u0103 de unelte\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/ro_dlg.js",
    "content": "tinyMCE.addI18n('ro.advanced_dlg',{\"link_list\":\"Lista de leg\\u0103turi\",\"link_is_external\":\"URL-ul pe care l-a\\u0163i introdus pare a fi o leg\\u0103tur\\u0103 extern\\u0103. Dori\\u0163i s\\u0103 adaug \\u015fi prefixul http:// necesar?\",\"link_is_email\":\"URL-ul pe care l-a\\u0163i introdus pare a fi o adres\\u0103 de e-mail. Dori\\u0163i s\\u0103 adaug \\u015fi prefixul mailto: necesar?\",\"link_titlefield\":\"Titlu\",\"link_target_blank\":\"Deschide leg\\u0103tura \\u00eentr-o fereastr\\u0103 nou\\u0103\",\"link_target_same\":\"Deschide leg\\u0103tura \\u00een aceea\\u015fi fereastr\\u0103\",\"link_target\":\"\\u0162int\\u0103\",\"link_url\":\"URL leg\\u0103tur\\u0103\",\"link_title\":\"Inserare/editare leg\\u0103tur\\u0103\",\"image_align_right\":\"Dreapta\",\"image_align_left\":\"St\\u00e2nga\",\"image_align_textbottom\":\"Textul la mijloc\",\"image_align_texttop\":\"Textul sus\",\"image_align_bottom\":\"Jos\",\"image_align_middle\":\"La mijloc\",\"image_align_top\":\"Sus\",\"image_align_baseline\":\"Baseline\",\"image_align\":\"Aliniere\",\"image_hspace\":\"Spa\\u0163iu orizontal\",\"image_vspace\":\"Spa\\u0163iu vertical\",\"image_dimensions\":\"Dimensiuni\",\"image_alt\":\"Descriere imagine\",\"image_list\":\"List\\u0103 de imagini\",\"image_border\":\"Bordur\\u0103\",\"image_src\":\"URL imagine\",\"image_title\":\"Insereaz\\u0103/editeaz\\u0103 o imagine\",\"charmap_title\":\"Alege\\u0163i un caracter special\",\"colorpicker_name\":\"Nume:\",\"colorpicker_color\":\"Culoare:\",\"colorpicker_named_title\":\"Culori denumite\",\"colorpicker_named_tab\":\"Denumite\",\"colorpicker_palette_title\":\"Palet\\u0103 de culori\",\"colorpicker_palette_tab\":\"Palet\\u0103\",\"colorpicker_picker_title\":\"Pipet\\u0103 de culori\",\"colorpicker_picker_tab\":\"Pipet\\u0103\",\"colorpicker_title\":\"Alege\\u0163i o culoare\",\"code_wordwrap\":\"\\u00cencadrare cuvinte\",\"code_title\":\"Editor surs\\u0103 HTML\",\"anchor_name\":\"Nume ancor\\u0103\",\"anchor_title\":\"Inserare/editare ancor\\u0103\",\"about_loaded\":\"Module \\u00eenc\\u0103rcate\",\"about_version\":\"Versiune\",\"about_author\":\"Autor\",\"about_plugin\":\"Modul\",\"about_plugins\":\"Module\",\"about_license\":\"Licen\\u0163\\u0103\",\"about_help\":\"Ajutor\",\"about_general\":\"Despre\",\"about_title\":\"Despre TinyMCE\",\"anchor_invalid\":\"V\\u0103 rog specifica\\u021bi un nume valid de ancor\\u0103.\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/ru.js",
    "content": "tinyMCE.addI18n('ru.advanced',{\"underline_desc\":\"\\u041f\\u043e\\u0434\\u0447\\u0435\\u0440\\u043a\\u043d\\u0443\\u0442\\u044b\\u0439 (Ctrl+U)\",\"italic_desc\":\"\\u041a\\u0443\\u0440\\u0441\\u0438\\u0432 (Ctrl+I)\",\"bold_desc\":\"\\u041f\\u043e\\u043b\\u0443\\u0436\\u0438\\u0440\\u043d\\u044b\\u0439 (Ctrl+B)\",dd:\"\\u041e\\u043f\\u0438\\u0441\\u0430\\u043d\\u0438\\u0435 \\u0441\\u043f\\u0440\\u0430\\u0432\\u043e\\u0447\\u043d\\u0438\\u043a\\u0430\",dt:\"\\u0422\\u0435\\u0440\\u043c\\u0438\\u043d \\u0441\\u043f\\u0440\\u0430\\u0432\\u043e\\u0447\\u043d\\u0438\\u043a\\u0430\",samp:\"\\u041f\\u0440\\u0438\\u043c\\u0435\\u0440 \\u043a\\u043e\\u0434\\u0430\",code:\"\\u041a\\u043e\\u0434\",blockquote:\"\\u0426\\u0438\\u0442\\u0430\\u0442\\u0430\",h6:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a 6\",h5:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a 5\",h4:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a 4\",h3:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a 3\",h2:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a 2\",h1:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a 1\",pre:\"\\u041f\\u0440\\u0435\\u0444\\u043e\\u0440\\u043c\\u0430\\u0442\\u0438\\u0440\\u043e\\u0432\\u0430\\u043d\\u043d\\u044b\\u0439\",address:\"\\u0410\\u0434\\u0440\\u0435\\u0441\",div:\"Div\",paragraph:\"\\u0410\\u0431\\u0437\\u0430\\u0446\",block:\"\\u0424\\u043e\\u0440\\u043c\\u0430\\u0442\",fontdefault:\"\\u0428\\u0440\\u0438\\u0444\\u0442\",\"font_size\":\"\\u0420\\u0430\\u0437\\u043c\\u0435\\u0440\",\"style_select\":\"\\u0421\\u0442\\u0438\\u043b\\u044c\",\"more_colors\":\"\\u0414\\u0440\\u0443\\u0433\\u0438\\u0435 \\u0446\\u0432\\u0435\\u0442\\u0430...\",\"toolbar_focus\":\"\\u041f\\u0435\\u0440\\u0435\\u0439\\u0442\\u0438 \\u043d\\u0430 \\u043f\\u0430\\u043d\\u0435\\u043b\\u044c \\u043a\\u043d\\u043e\\u043f\\u043e\\u043a (Alt+Q). \\u041f\\u0435\\u0440\\u0435\\u0439\\u0442\\u0438 \\u043a \\u0440\\u0435\\u0434\\u0430\\u043a\\u0442\\u043e\\u0440\\u0443 (Alt+Z). \\u041f\\u0435\\u0440\\u0435\\u0439\\u0442\\u0438 \\u043a \\u044d\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\\u0443 \\u043f\\u0443\\u0442\\u0438 (Alt+X).\",newdocument:\"\\u0412\\u044b \\u0443\\u0432\\u0435\\u0440\\u0435\\u043d\\u044b, \\u0447\\u0442\\u043e \\u0445\\u043e\\u0442\\u0438\\u0442\\u0435 \\u0432\\u0441\\u0435 \\u0443\\u0434\\u0430\\u043b\\u0438\\u0442\\u044c?\",path:\"\\u0422\\u0435\\u0433\\u0438\",\"clipboard_msg\":\"\\u041a\\u043e\\u043f\\u0438\\u0440\\u043e\\u0432\\u0430\\u043d\\u0438\\u0435, \\u0432\\u044b\\u0440\\u0435\\u0437\\u043a\\u0430 \\u0438 \\u0432\\u0441\\u0442\\u0430\\u0432\\u043a\\u0430 \\u043d\\u0435 \\u0440\\u0430\\u0431\\u043e\\u0442\\u0430\\u044e\\u0442 \\u0432 Firefox.\\\\r\\\\n\\u0425\\u043e\\u0442\\u0438\\u0442\\u0435 \\u043f\\u043e\\u043b\\u0443\\u0447\\u0438\\u0442\\u044c \\u0431\\u043e\\u043b\\u0435\\u0435 \\u043f\\u043e\\u0434\\u0440\\u043e\\u0431\\u043d\\u0443\\u044e \\u0438\\u043d\\u0444\\u043e\\u0440\\u043c\\u0430\\u0446\\u0438\\u044e?\",\"blockquote_desc\":\"\\u0426\\u0438\\u0442\\u0430\\u0442\\u0430\",\"help_desc\":\"\\u041f\\u043e\\u043c\\u043e\\u0449\\u044c\",\"newdocument_desc\":\"\\u041d\\u043e\\u0432\\u044b\\u0439 \\u0434\\u043e\\u043a\\u0443\\u043c\\u0435\\u043d\\u0442\",\"image_props_desc\":\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b \\u0438\\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u0438\\u044f\",\"paste_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u044c\",\"copy_desc\":\"\\u041a\\u043e\\u043f\\u0438\\u0440\\u043e\\u0432\\u0430\\u0442\\u044c\",\"cut_desc\":\"\\u0412\\u044b\\u0440\\u0435\\u0437\\u0430\\u0442\\u044c\",\"anchor_desc\":\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c/\\u0418\\u0437\\u043c\\u0435\\u043d\\u0438\\u0442\\u044c \\u044f\\u043a\\u043e\\u0440\\u044c\",\"visualaid_desc\":\"\\u0412\\u0441\\u0435 \\u0437\\u043d\\u0430\\u043a\\u0438\",\"charmap_desc\":\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\u0441\\u0438\\u043c\\u0432\\u043e\\u043b\",\"backcolor_desc\":\"\\u0426\\u0432\\u0435\\u0442 \\u0432\\u044b\\u0434\\u0435\\u043b\\u0435\\u043d\\u0438\\u044f \\u0442\\u0435\\u043a\\u0441\\u0442\\u0430\",\"forecolor_desc\":\"\\u0426\\u0432\\u0435\\u0442 \\u0442\\u0435\\u043a\\u0441\\u0442\\u0430\",\"custom1_desc\":\"\\u0421\\u043e\\u0431\\u0441\\u0442\\u0432\\u0435\\u043d\\u043d\\u043e\\u0435 \\u043e\\u043f\\u0438\\u0441\\u0430\\u043d\\u0438\\u0435\",\"removeformat_desc\":\"\\u041e\\u0447\\u0438\\u0441\\u0442\\u0438\\u0442\\u044c \\u0444\\u043e\\u0440\\u043c\\u0430\\u0442\",\"hr_desc\":\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\u0447\\u0435\\u0440\\u0442\\u0443\",\"sup_desc\":\"\\u041d\\u0430\\u0434\\u0441\\u0442\\u0440\\u043e\\u0447\\u043d\\u044b\\u0439\",\"sub_desc\":\"\\u041f\\u043e\\u0434\\u0441\\u0442\\u0440\\u043e\\u0447\\u043d\\u044b\\u0439\",\"code_desc\":\"\\u0420\\u0435\\u0434\\u0430\\u043a\\u0442\\u0438\\u0440\\u043e\\u0432\\u0430\\u0442\\u044c HTML \\u043a\\u043e\\u0434\",\"cleanup_desc\":\"\\u041e\\u0447\\u0438\\u0441\\u0442\\u0438\\u0442\\u044c \\u043b\\u0438\\u0448\\u043d\\u0438\\u0439 \\u043a\\u043e\\u0434\",\"image_desc\":\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c/\\u0418\\u0437\\u043c\\u0435\\u043d\\u0438\\u0442\\u044c \\u0438\\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u0438\\u0435\",\"unlink_desc\":\"\\u0423\\u0434\\u0430\\u043b\\u0438\\u0442\\u044c \\u0441\\u0441\\u044b\\u043b\\u043a\\u0443\",\"link_desc\":\"\\u0414\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c/\\u0418\\u0437\\u043c\\u0435\\u043d\\u0438\\u0442\\u044c \\u0441\\u0441\\u044b\\u043b\\u043a\\u0443\",\"redo_desc\":\"\\u0412\\u0435\\u0440\\u043d\\u0443\\u0442\\u044c (Ctrl+Y)\",\"undo_desc\":\"\\u041e\\u0442\\u043c\\u0435\\u043d\\u0438\\u0442\\u044c (Ctrl+Z)\",\"indent_desc\":\"\\u0423\\u0432\\u0435\\u043b\\u0438\\u0447\\u0438\\u0442\\u044c \\u043e\\u0442\\u0441\\u0442\\u0443\\u043f\",\"outdent_desc\":\"\\u0423\\u043c\\u0435\\u043d\\u044c\\u0448\\u0438\\u0442\\u044c \\u043e\\u0442\\u0441\\u0442\\u0443\\u043f\",\"numlist_desc\":\"\\u041d\\u0443\\u043c\\u0435\\u0440\\u043e\\u0432\\u0430\\u043d\\u043d\\u044b\\u0439 \\u0441\\u043f\\u0438\\u0441\\u043e\\u043a\",\"bullist_desc\":\"\\u041c\\u0430\\u0440\\u043a\\u0438\\u0440\\u043e\\u0432\\u0430\\u043d\\u043d\\u044b\\u0439 \\u0441\\u043f\\u0438\\u0441\\u043e\\u043a\",\"justifyfull_desc\":\"\\u041f\\u043e \\u0448\\u0438\\u0440\\u0438\\u043d\\u0435\",\"justifyright_desc\":\"\\u041f\\u043e \\u043f\\u0440\\u0430\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"justifycenter_desc\":\"\\u041f\\u043e \\u0446\\u0435\\u043d\\u0442\\u0440\\u0443\",\"justifyleft_desc\":\"\\u041f\\u043e \\u043b\\u0435\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"striketrough_desc\":\"\\u0417\\u0430\\u0447\\u0435\\u0440\\u043a\\u043d\\u0443\\u0442\\u044b\\u0439\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\",\"help_shortcut\":\"\",\"rich_text_area\":\"\",\"shortcuts_desc\":\"\",toolbar:\"\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/ru_dlg.js",
    "content": "tinyMCE.addI18n('ru.advanced_dlg',{\"link_list\":\"\\u0421\\u043f\\u0438\\u0441\\u043e\\u043a \\u0441\\u0441\\u044b\\u043b\\u043e\\u043a\",\"link_is_external\":\"\\u0412\\u0432\\u0435\\u0434\\u0435\\u043d\\u043d\\u044b\\u0439 \\u0430\\u0434\\u0440\\u0435\\u0441 \\u043d\\u0430\\u043f\\u043e\\u043c\\u0438\\u043d\\u0430\\u0435\\u0442 \\u0432\\u043d\\u0435\\u0448\\u043d\\u044e\\u044e \\u0441\\u0441\\u044b\\u043b\\u043a\\u0443, \\u0434\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\u043f\\u0440\\u0435\\u0444\\u0438\\u043a\\u0441 http://?\",\"link_is_email\":\"\\u0412\\u0432\\u0435\\u0434\\u0435\\u043d\\u043d\\u044b\\u0439 \\u0430\\u0434\\u0440\\u0435\\u0441 \\u043d\\u0430\\u043f\\u043e\\u043c\\u0438\\u043d\\u0430\\u0435\\u0442 \\u044d\\u043b\\u0435\\u043a\\u0442\\u0440\\u043e\\u043d\\u043d\\u0443\\u044e \\u043f\\u043e\\u0447\\u0442\\u0443, \\u0434\\u043e\\u0431\\u0430\\u0432\\u0438\\u0442\\u044c \\u043f\\u0440\\u0435\\u0444\\u0438\\u043a\\u0441 mailto:?\",\"link_titlefield\":\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a\",\"link_target_blank\":\"\\u041e\\u0442\\u043a\\u0440\\u044b\\u0442\\u044c \\u0432 \\u043d\\u043e\\u0432\\u043e\\u043c \\u043e\\u043a\\u043d\\u0435\",\"link_target_same\":\"\\u041e\\u0442\\u043a\\u0440\\u044b\\u0442\\u044c \\u0432 \\u044d\\u0442\\u043e\\u043c \\u043e\\u043a\\u043d\\u0435\",\"link_target\":\"\\u0426\\u0435\\u043b\\u044c\",\"link_url\":\"\\u0410\\u0434\\u0440\\u0435\\u0441\",\"link_title\":\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b \\u0441\\u0441\\u044b\\u043b\\u043a\\u0438\",\"image_align_right\":\"\\u041f\\u043e \\u043f\\u0440\\u0430\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"image_align_left\":\"\\u041f\\u043e \\u043b\\u0435\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"image_align_textbottom\":\"\\u041f\\u043e \\u043d\\u0438\\u0436\\u043d\\u0435\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e \\u0442\\u0435\\u043a\\u0441\\u0442\\u0430\",\"image_align_texttop\":\"\\u041f\\u043e \\u0432\\u0435\\u0440\\u0445\\u043d\\u0435\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e \\u0442\\u0435\\u043a\\u0441\\u0442\\u0430\",\"image_align_bottom\":\"\\u041f\\u043e \\u043d\\u0438\\u0436\\u043d\\u0435\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"image_align_middle\":\"\\u041f\\u043e \\u0446\\u0435\\u043d\\u0442\\u0440\\u0443\",\"image_align_top\":\"\\u041f\\u043e \\u0432\\u0435\\u0440\\u0445\\u043d\\u0435\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"image_align_baseline\":\"\\u041f\\u043e \\u0431\\u0430\\u0437\\u043e\\u0432\\u043e\\u0439 \\u043b\\u0438\\u043d\\u0438\\u0438\",\"image_align\":\"\\u0412\\u044b\\u0440\\u0430\\u0432\\u043d\\u0438\\u0432\\u0430\\u043d\\u0438\\u0435\",\"image_hspace\":\"\\u0413\\u043e\\u0440\\u0438\\u0437. \\u043e\\u0442\\u0441\\u0442\\u0443\\u043f\",\"image_vspace\":\"\\u0412\\u0435\\u0440\\u0442. \\u043e\\u0442\\u0441\\u0442\\u0443\\u043f\",\"image_dimensions\":\"\\u0420\\u0430\\u0437\\u043c\\u0435\\u0440\",\"image_alt\":\"\\u041e\\u043f\\u0438\\u0441\\u0430\\u043d\\u0438\\u0435\",\"image_list\":\"\\u0421\\u043f\\u0438\\u0441\\u043e\\u043a \\u043a\\u0430\\u0440\\u0442\\u0438\\u043d\\u043e\\u043a\",\"image_border\":\"\\u0413\\u0440\\u0430\\u043d\\u0438\\u0446\\u0430\",\"image_src\":\"\\u0410\\u0434\\u0440\\u0435\\u0441\",\"image_title\":\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b \\u0438\\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u0438\\u044f\",\"charmap_title\":\"\\u0412\\u044b\\u0431\\u043e\\u0440 \\u0441\\u0438\\u043c\\u0432\\u043e\\u043b\\u0430\",\"colorpicker_name\":\"\\u041d\\u0430\\u0437\\u0432\\u0430\\u043d\\u0438\\u0435:\",\"colorpicker_color\":\"\\u041a\\u043e\\u0434:\",\"colorpicker_named_title\":\"\\u0426\\u0432\\u0435\\u0442\\u0430\",\"colorpicker_named_tab\":\"\\u041d\\u0430\\u0437\\u0432\\u0430\\u043d\\u0438\\u044f\",\"colorpicker_palette_title\":\"\\u0426\\u0432\\u0435\\u0442\\u0430\",\"colorpicker_palette_tab\":\"\\u041f\\u0430\\u043b\\u0438\\u0442\\u0440\\u0430\",\"colorpicker_picker_title\":\"\\u0426\\u0432\\u0435\\u0442\\u0430\",\"colorpicker_picker_tab\":\"\\u0421\\u043f\\u0435\\u043a\\u0442\\u0440\",\"colorpicker_title\":\"\\u0426\\u0432\\u0435\\u0442\\u0430\",\"code_wordwrap\":\"\\u041f\\u0435\\u0440\\u0435\\u043d\\u043e\\u0441 \\u0441\\u0442\\u0440\\u043e\\u043a\",\"code_title\":\"\\u0420\\u0435\\u0434\\u0430\\u043a\\u0442\\u043e\\u0440 HTML \\u043a\\u043e\\u0434\\u0430\",\"anchor_name\":\"\\u0418\\u043c\\u044f \\u044f\\u043a\\u043e\\u0440\\u044f\",\"anchor_title\":\"\\u041f\\u0430\\u0440\\u0430\\u043c\\u0435\\u0442\\u0440\\u044b \\u044f\\u043a\\u043e\\u0440\\u044f\",\"about_loaded\":\"\\u041f\\u043e\\u0434\\u043a\\u043b\\u044e\\u0447\\u0435\\u043d\\u043d\\u044b\\u0435 \\u043f\\u043b\\u0430\\u0433\\u0438\\u043d\\u044b\",\"about_version\":\"\\u0412\\u0435\\u0440\\u0441\\u0438\\u044f\",\"about_author\":\"\\u0410\\u0432\\u0442\\u043e\\u0440\",\"about_plugin\":\"\\u041f\\u043b\\u0430\\u0433\\u0438\\u043d\",\"about_plugins\":\"\\u041f\\u043b\\u0430\\u0433\\u0438\\u043d\\u044b\",\"about_license\":\"\\u041b\\u0438\\u0446\\u0435\\u043d\\u0437\\u0438\\u044f\",\"about_help\":\"\\u041f\\u043e\\u043c\\u043e\\u0449\\u044c\",\"about_general\":\"\\u041e\\u043f\\u0438\\u0441\\u0430\\u043d\\u0438\\u0435\",\"about_title\":\"\\u041e\\u043f\\u0438\\u0441\\u0430\\u043d\\u0438\\u0435 TinyMCE\",\"anchor_invalid\":\"\\u041f\\u043e\\u0436\\u0430\\u043b\\u0443\\u0439\\u0441\\u0442\\u0430 \\u0443\\u043a\\u0430\\u0436\\u0438\\u0442\\u0435 \\u043f\\u0440\\u0430\\u0432\\u0438\\u043b\\u044c\\u043d\\u043e\\u0435 \\u0438\\u043c\\u044f \\u044f\\u043a\\u043e\\u0440\\u044f.\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/sr.js",
    "content": "tinyMCE.addI18n('sr.advanced',{\"underline_desc\":\"Podvu\\u010deno (Ctrl U)\",\"italic_desc\":\"Isko\\u0161eno (Ctrl I)\",\"bold_desc\":\"Podebljano (Ctrl B)\",dd:\"Opis definicije\",dt:\"Pojam definicija\",samp:\"Uzorak koda\",code:\"Kod\",blockquote:\"Citat\",h6:\"Naslov 6\",h5:\"Naslov 5\",h4:\"Naslov 4\",h3:\"Naslov 3\",h2:\"Naslov 2\",h1:\"Naslov 1\",pre:\"Unapred formatirano\",address:\"Adresa\",div:\"Div\",paragraph:\"Pasus\",block:\"Formatiranje\",fontdefault:\"Pismo\",\"font_size\":\"Veli\\u010dina slova\",\"style_select\":\"Stilovi\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\",\"more_colors\":\"Jo\\u0161 boja\",\"toolbar_focus\":\"Pre\\u0111i na traku sa alatkama - Alt Q, Pre\\u0111i na editor - Alt-Z, Pre\\u0111i na putanju elementa - Alt-X\",newdocument:\"Da li ste sigurni da \\u017eelite da obri\\u0161ete sav sadr\\u017eaj?\",path:\"Putanja\",\"clipboard_msg\":\"Kopiraj/Iseci/Zalepi nisu dostupni u Mozilla i Firefox web \\u010dita\\u010dima. \\u017delite li vi\\u0161e informacija o ovom problemu?\",\"blockquote_desc\":\"Du\\u017ei citat\",\"help_desc\":\"Pomo\\u0107\",\"newdocument_desc\":\"Nov dokument\",\"image_props_desc\":\"Osobine slike\",\"paste_desc\":\"Zalepi\",\"copy_desc\":\"Kopiraj\",\"cut_desc\":\"Iseci\",\"anchor_desc\":\"Ubaci/Uredi sidro\",\"visualaid_desc\":\"Uklju\\u010di/Isklju\\u010di linije vodilje/nevidljive elemente\",\"charmap_desc\":\"Umetni simbol\",\"backcolor_desc\":\"Izaberi boju pozadine\",\"forecolor_desc\":\"Izaberi boju teksta\",\"custom1_desc\":\"Sopstveni opis\",\"removeformat_desc\":\"Ukloni formatiranje\",\"hr_desc\":\"Umetni horizontalnu liniju\",\"sup_desc\":\"Eksponent\",\"sub_desc\":\"Indeks\",\"code_desc\":\"Uredi HTML\",\"cleanup_desc\":\"O\\u010disti kod\",\"image_desc\":\"Umetni/Uredi sliku\",\"unlink_desc\":\"Ukloni link\",\"link_desc\":\"Umetni/Uredi link\",\"redo_desc\":\"Poni\\u0161ti opoziv (Ctrl Y)\",\"undo_desc\":\"Opozovi (Ctrl+Z)\",\"indent_desc\":\"Uvla\\u010denje\",\"outdent_desc\":\"Izvla\\u010denje\",\"numlist_desc\":\"Ure\\u0111eno nabrajanje\",\"bullist_desc\":\"Neure\\u0111eno nabrajanje\",\"justifyfull_desc\":\"Obostrano poravnanje\",\"justifyright_desc\":\"Desno poravnanje\",\"justifycenter_desc\":\"Poravnanje po sredini\",\"justifyleft_desc\":\"Levo poravnanje\",\"striketrough_desc\":\"Precrtano\",\"help_shortcut\":\"Pritisnite ALT-F10 za traku sa alatkama. Pritisnite ALT-0 za pomo\\u0107.\",\"rich_text_area\":\"Rich Text Area\",\"shortcuts_desc\":\"Pomo\\u0107 u vezi dostupnosti\",toolbar:\"Traka sa alatkama\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/sr_dlg.js",
    "content": "tinyMCE.addI18n('sr.advanced_dlg',{\"link_list\":\"Link (sa liste)\",\"link_is_external\":\"URL koji ste uneli izgleda kao spolja\\u0161nji link, da li \\u017eelite da dodate neophodni http:// prefiks?\",\"link_is_email\":\"URL koji ste uneli izgleda kao e-mail adresa, da li \\u017eelite da dodate neophodni mailto: prefiks?\",\"link_titlefield\":\"Naslov\",\"link_target_blank\":\"Otvori link u novom prozoru\",\"link_target_same\":\"Otvori link u istom prozoru\",\"link_target\":\"Meta\",\"link_url\":\"URL linka\",\"link_title\":\"Umetni/Uredi link\",\"image_align_right\":\"Desno\",\"image_align_left\":\"Levo\",\"image_align_textbottom\":\"Dno teksta\",\"image_align_texttop\":\"Vrh teksta\",\"image_align_bottom\":\"Dole\",\"image_align_middle\":\"Sredina\",\"image_align_top\":\"Gore\",\"image_align_baseline\":\"Osnovna linija\",\"image_align\":\"Poravnanje\",\"image_hspace\":\"Horizontalni razmak\",\"image_vspace\":\"Vertikalni razmak\",\"image_dimensions\":\"Dimenzije\",\"image_alt\":\"Opis slike\",\"image_list\":\"Slika (sa liste)\",\"image_border\":\"Ivice\",\"image_src\":\"URL slike\",\"image_title\":\"Umetni/Uredi sliku\",\"charmap_title\":\"Odaberi simbol\",\"colorpicker_name\":\"Naziv:\",\"colorpicker_color\":\"Boja:\",\"colorpicker_named_title\":\"Boje sa nazivom\",\"colorpicker_named_tab\":\"Po nazivu\",\"colorpicker_palette_title\":\"Paleta boja\",\"colorpicker_palette_tab\":\"Iz palete\",\"colorpicker_picker_title\":\"Pipeta za boje\",\"colorpicker_picker_tab\":\"Pipetom\",\"colorpicker_title\":\"Izaberite boju\",\"code_wordwrap\":\"Omotaj tekst\",\"code_title\":\"HTML editor\",\"anchor_name\":\"Naziv sidra\",\"anchor_title\":\"Umetni/Uredi sidro\",\"about_loaded\":\"Aktivni dodaci\",\"about_version\":\"Verzija\",\"about_author\":\"Autor\",\"about_plugin\":\"Dodatak\",\"about_plugins\":\"Dodaci\",\"about_license\":\"Licenca\",\"about_help\":\"Pomo\\u0107\",\"about_general\":\"O programu\",\"about_title\":\"O TinyMCE\",\"anchor_invalid\":\"Navedite valjani naziv sidra\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/sv.js",
    "content": "tinyMCE.addI18n('sv.advanced',{\"underline_desc\":\"Understruken (Ctrl+U)\",\"italic_desc\":\"Kursiv (Ctrl+I)\",\"bold_desc\":\"Fet (Ctrl+B)\",dd:\"Definitionsbeskrivning\",dt:\"Definitionsterm\",samp:\"Kodexempel\",code:\"Kodblock\",blockquote:\"Blockcitat\",h6:\"Rubrik 6\",h5:\"Rubrik 5\",h4:\"Rubrik 4\",h3:\"Rubrik 3\",h2:\"Rubrik 2\",h1:\"Rubrik 1\",pre:\"F\\u00f6rformaterad\",address:\"Adress\",div:\"Div\",paragraph:\"Stycke\",block:\"Format\",fontdefault:\"Fontfamilj\",\"font_size\":\"Fontstorlek\",\"style_select\":\"Stilar\",\"more_colors\":\"Mer f\\u00e4rger\",\"toolbar_focus\":\"Hoppa till verktygsf\\u00e4ltet - Alt+Q, Hoppa till redigeraren - Alt-Z, Hoppa till elementlistan - Alt-X\",newdocument:\"\\u00c4r du s\\u00e4ker p\\u00e5 att du vill radera allt inneh\\u00e5ll?\",path:\"Element\",\"clipboard_msg\":\"Kopiera/klipp ut/klistra in \\u00e4r inte tillg\\u00e4ngligt i din webbl\\u00e4sare.\\\\nVill du veta mer om detta?\",\"blockquote_desc\":\"Blockcitat\",\"help_desc\":\"Hj\\u00e4lp\",\"newdocument_desc\":\"Nytt dokument\",\"image_props_desc\":\"Bildinst\\u00e4llningar\",\"paste_desc\":\"Klistra in\",\"copy_desc\":\"Kopiera\",\"cut_desc\":\"Klipp ut\",\"anchor_desc\":\"Infoga/redigera bokm\\u00e4rke\",\"visualaid_desc\":\"Visa/d\\u00f6lj visuella hj\\u00e4lpmedel\",\"charmap_desc\":\"Infoga specialtecken\",\"backcolor_desc\":\"V\\u00e4lj bakgrundsf\\u00e4rg\",\"forecolor_desc\":\"V\\u00e4lj textf\\u00e4rg\",\"custom1_desc\":\"Din beskrivning h\\u00e4r\",\"removeformat_desc\":\"Ta bort formatering\",\"hr_desc\":\"Infoga horisontell skiljelinje\",\"sup_desc\":\"Superscript\",\"sub_desc\":\"Subscript\",\"code_desc\":\"Redigera HTML k\\u00e4llkoden\",\"cleanup_desc\":\"St\\u00e4da upp i k\\u00e4llkoden\",\"image_desc\":\"Infoga/redigera bild\",\"unlink_desc\":\"Ta bort l\\u00e4nk\",\"link_desc\":\"Infoga/redigera l\\u00e4nk\",\"redo_desc\":\"G\\u00f6r om (Ctrl+Y)\",\"undo_desc\":\"\\u00c5ngra (Ctrl+Z)\",\"indent_desc\":\"Indrag\",\"outdent_desc\":\"Drag tillbaka\",\"numlist_desc\":\"Nummerlista\",\"bullist_desc\":\"Punktlista\",\"justifyfull_desc\":\"Justera\",\"justifyright_desc\":\"H\\u00f6gerst\\u00e4lld\",\"justifycenter_desc\":\"Centrera\",\"justifyleft_desc\":\"V\\u00e4nsterst\\u00e4lld\",\"striketrough_desc\":\"Genomstruken\",\"help_shortcut\":\"Alt-F10 f\\u00f6r verktygsf\\u00e4lt. Alt-0 f\\u00f6r hj\\u00e4lp.\",\"rich_text_area\":\"Redigeringsarea\",\"shortcuts_desc\":\"Hj\\u00e4lp f\\u00f6r funktionshindrade\",toolbar:\"Verktygsf\\u00e4lt\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/sv_dlg.js",
    "content": "tinyMCE.addI18n('sv.advanced_dlg',{\"link_list\":\"L\\u00e4nklista\",\"link_is_external\":\"L\\u00e4nken du angav verkar vara en extern adress. Vill du infoga http:// prefixet p\\u00e5 l\\u00e4nken?\",\"link_is_email\":\"L\\u00e4nken du angav verkar vara en e-post adress. Vill du infoga mailto: prefixet p\\u00e5 l\\u00e4nken?\",\"link_titlefield\":\"Titel\",\"link_target_blank\":\"\\u00d6\\u0096ppna l\\u00e4nken i ett nytt f\\u00f6nster\",\"link_target_same\":\"\\u00d6\\u0096ppna l\\u00e4nken i samma f\\u00f6nster\",\"link_target\":\"M\\u00e5l\",\"link_url\":\"L\\u00e4nkens URL\",\"link_title\":\"Infoga/redigera l\\u00e4nk\",\"image_align_right\":\"H\\u00f6ger\",\"image_align_left\":\"V\\u00e4nster\",\"image_align_textbottom\":\"Botten av texten\",\"image_align_texttop\":\"Toppen av texten\",\"image_align_bottom\":\"Botten\",\"image_align_middle\":\"Mitten\",\"image_align_top\":\"Toppen\",\"image_align_baseline\":\"Baslinje\",\"image_align\":\"Justering\",\"image_hspace\":\"Horisontalrymd\",\"image_vspace\":\"Vertikalrymd\",\"image_dimensions\":\"Dimensioner\",\"image_alt\":\"Bildens beskrivning\",\"image_list\":\"Bildlista\",\"image_border\":\"Ram\",\"image_src\":\"Bildens URL\",\"image_title\":\"Infoga/redigera bild\",\"charmap_title\":\"V\\u00e4lj ett specialtecken\",\"colorpicker_name\":\"Namn:\",\"colorpicker_color\":\"F\\u00e4rg:\",\"colorpicker_named_title\":\"Namngivna f\\u00e4rger\",\"colorpicker_named_tab\":\"Namngivna\",\"colorpicker_palette_title\":\"Palettf\\u00e4rger\",\"colorpicker_palette_tab\":\"Palett\",\"colorpicker_picker_title\":\"F\\u00e4rgv\\u00e4ljare\",\"colorpicker_picker_tab\":\"V\\u00e4ljare\",\"colorpicker_title\":\"V\\u00e4lj en f\\u00e4rg\",\"code_wordwrap\":\"Bryt ord\",\"code_title\":\"HTML k\\u00e4llkodsl\\u00e4ge\",\"anchor_name\":\"Namn\",\"anchor_title\":\"Infoga/redigera bokm\\u00e4rke\",\"about_loaded\":\"Laddade plug-ins\",\"about_version\":\"Version\",\"about_author\":\"Utvecklare\",\"about_plugin\":\"Om plug-in\",\"about_plugins\":\"Om plug-in\",\"about_license\":\"Licens\",\"about_help\":\"Hj\\u00e4lp\",\"about_general\":\"Om\",\"about_title\":\"Om TinyMCE\",\"anchor_invalid\":\"Skiv ett korrekt ankarnamn.\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/tr.js",
    "content": "tinyMCE.addI18n('tr.advanced',{\"underline_desc\":\"Alt\\u0131 \\u00e7izili (Ctrl+U)\",\"italic_desc\":\"\\u0130talik (Ctrl+I)\",\"bold_desc\":\"Kal\\u0131n (Ctrl+B)\",dd:\"A\\u00e7\\u0131klama tan\\u0131mlama\",dt:\"\\u0130fade tan\\u0131mlama \",samp:\"\\u00d6rnek kod\",code:\"Kod\",blockquote:\"Blok al\\u0131nt\\u0131\",h6:\"Ba\\u015fl\\u0131k 6\",h5:\"Ba\\u015fl\\u0131k 5\",h4:\"Ba\\u015fl\\u0131k 4\",h3:\"Ba\\u015fl\\u0131k 3\",h2:\"Ba\\u015fl\\u0131k 2\",h1:\"Ba\\u015fl\\u0131k 1\",pre:\"\\u00d6nceden bi\\u00e7imlendirilmi\\u015f\",address:\"Adres\",div:\"Blok\",paragraph:\"Paragraf\",block:\"Bi\\u00e7im\",fontdefault:\"Yaz\\u0131 tipi\",\"font_size\":\"Yaz\\u0131 boyutu\",\"style_select\":\"Stiller\",\"more_colors\":\"Daha fazla renk\",\"toolbar_focus\":\"Alt+Q ara\\u00e7 d\\u00fc\\u011fmelerine ge\\u00e7. Alt+Z: Edit\\u00f6re ge\\u00e7. Alt+X:Elementin yoluna ge\\u00e7.\",newdocument:\"T\\u00fcm i\\u00e7eriklerleri temizlemek istedi\\u011finizden emin misiniz?\",path:\"Yol\",\"clipboard_msg\":\"Mozilla Firefox da Kes/Kopyala/Yap\\u0131\\u015ft\\u0131r kullan\\u0131lamaz. Bu konu hakk\\u0131nda daha fazla bilgi almak ister misiniz?\",\"blockquote_desc\":\"Blok al\\u0131nt\\u0131\",\"help_desc\":\"Yard\\u0131m\",\"newdocument_desc\":\"Bo\\u015f belge\",\"image_props_desc\":\"Resim \\u00f6zellikleri\",\"paste_desc\":\"Yap\\u0131\\u015ft\\u0131r\",\"copy_desc\":\"Kopyala\",\"cut_desc\":\"Kes\",\"anchor_desc\":\"K\\u00f6pr\\u00fc ekle/d\\u00fczenle\",\"visualaid_desc\":\"K\\u0131lavuz/g\\u00f6r\\u00fcnmez nesneleri a\\u00e7/kapat.\",\"charmap_desc\":\"\\u00d6zel karakter ekle\",\"backcolor_desc\":\"Arkaplan rengini se\\u00e7\",\"forecolor_desc\":\"Metin rengini se\\u00e7\",\"custom1_desc\":\"\\u00d6zel a\\u00e7\\u0131klamalar burada\",\"removeformat_desc\":\"Bi\\u00e7imi temizle\",\"hr_desc\":\"Yatay cetvel ekle\",\"sup_desc\":\"\\u00dcstsimge\",\"sub_desc\":\"Altsimge\",\"code_desc\":\"HTML Kayna\\u011f\\u0131n\\u0131 D\\u00fczenle\",\"cleanup_desc\":\"Da\\u011f\\u0131n\\u0131k kodu temizle\",\"image_desc\":\"Resim ekle/d\\u00fczenle\",\"unlink_desc\":\"Ba\\u011flant\\u0131y\\u0131 kald\\u0131r\",\"link_desc\":\"Ba\\u011flant\\u0131 ekle/d\\u00fczenle\",\"redo_desc\":\"Yinele (Ctrl+Y)\",\"undo_desc\":\"Geri al (Ctrl+Z)\",\"indent_desc\":\"Girintiyi art\\u0131r\",\"outdent_desc\":\"Girintiyi azalt\",\"numlist_desc\":\"S\\u0131ral\\u0131 liste\",\"bullist_desc\":\"S\\u0131ras\\u0131z liste\",\"justifyfull_desc\":\"\\u0130ki yana yasla\",\"justifyright_desc\":\"Sa\\u011fa hizala\",\"justifycenter_desc\":\"Ortala\",\"justifyleft_desc\":\"Sola hizala\",\"striketrough_desc\":\"\\u00dcst\\u00fc \\u00e7izili\",\"help_shortcut\":\"Toolbar i\\u00e7in ALT-F10 a bas\\u0131n. Yard\\u0131m i\\u00e7in ALT-0 a bas\\u0131n.\",\"rich_text_area\":\"Zengin Metin Alan\\u0131\",\"shortcuts_desc\":\"Eri\\u015filebilirlik Yard\\u0131m\\u0131\",toolbar:\"Toolbar\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/tr_dlg.js",
    "content": "tinyMCE.addI18n('tr.advanced_dlg',{\"link_list\":\"Ba\\u011flant\\u0131 listesi\",\"link_is_external\":\"Girdi\\u011fiz URL d\\u0131\\u015f ba\\u011flant\\u0131 gibi g\\u00f6r\\u00fcn\\u00fcyor; gerekli olan http:// \\u00f6nekinin eklenmesini ister misiniz?\",\"link_is_email\":\"Girdi\\u011finiz URL e-posta adresi gibi g\\u00f6r\\u00fcn\\u00fcyor; gerekli olan mailto: \\u00f6nekinin eklenmesini ister misiniz? prefix?\",\"link_titlefield\":\"Ba\\u015fl\\u0131k\",\"link_target_blank\":\"Ba\\u011flant\\u0131y\\u0131 yeni pencerede a\\u00e7\",\"link_target_same\":\"Ba\\u011flant\\u0131y\\u0131 ayn\\u0131 pencerede a\\u00e7\",\"link_target\":\"Hedef\",\"link_url\":\"Ba\\u011flant\\u0131 URL\\'si\",\"link_title\":\"Ba\\u011flant\\u0131 ekle/d\\u00fczenle\",\"image_align_right\":\"Sa\\u011f\",\"image_align_left\":\"Sol\",\"image_align_textbottom\":\"Metin altta\",\"image_align_texttop\":\"Metin \\u00fcstte\",\"image_align_bottom\":\"Alt\",\"image_align_middle\":\"Orta\",\"image_align_top\":\"\\u00dcst\",\"image_align_baseline\":\"Taban hizas\\u0131\",\"image_align\":\"Hizalama\",\"image_hspace\":\"Yatay bo\\u015fluk\",\"image_vspace\":\"Dikey bo\\u015fluk\",\"image_dimensions\":\"Boyutlar\",\"image_alt\":\"Resim a\\u00e7\\u0131klamas\\u0131\",\"image_list\":\"Resim listesi\",\"image_border\":\"Kenarl\\u0131k\",\"image_src\":\"Resmin URL\\'si\",\"image_title\":\"Resim ekle/d\\u00fczenle\",\"charmap_title\":\"\\u00d6zel karakter se\\u00e7\",\"colorpicker_name\":\"\\u0130sim:\",\"colorpicker_color\":\"Renk:\",\"colorpicker_named_title\":\"Renk ad\\u0131\",\"colorpicker_named_tab\":\"Ad\\u0131\",\"colorpicker_palette_title\":\"Renk paleti\",\"colorpicker_palette_tab\":\"Palet\",\"colorpicker_picker_title\":\"Renk se\\u00e7ici\",\"colorpicker_picker_tab\":\"Se\\u00e7ici\",\"colorpicker_title\":\"Renk se\\u00e7\",\"code_wordwrap\":\"Kelimeleri birlikte tut\",\"code_title\":\"HTML Kaynak Edit\\u00f6r\\u00fc\",\"anchor_name\":\"K\\u00f6pr\\u00fc ad\\u0131\",\"anchor_title\":\"K\\u00f6pr\\u00fc ekle/d\\u00fczenle\",\"about_loaded\":\"Y\\u00fckl\\u00fc eklentiler\",\"about_version\":\"Versiyon\",\"about_author\":\"Yazar\",\"about_plugin\":\"Eklenti\",\"about_plugins\":\"Eklentiler\",\"about_license\":\"Lisans\",\"about_help\":\"Yard\\u0131m\",\"about_general\":\"Hakk\\u0131nda\",\"about_title\":\"TinyMCE hakk\\u0131nda\",\"charmap_usage\":\"Gezinmek i\\u00e7in sa\\u011f ve sol oklar\\u0131 kullan\\u0131n.\",\"anchor_invalid\":\"L\\u00fctfen ge\\u00e7erli bir k\\u00f6pr\\u00fc ad\\u0131 giriniz\",\"accessibility_help\":\"Eri\\u015febilirlik Yard\\u0131m\\u0131\",\"accessibility_usage_title\":\"Genel Kullan\\u0131m\",\"invalid_color_value\":\"Ge\\u00e7ersiz renk de\\u011feri\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/uk.js",
    "content": "tinyMCE.addI18n('uk.advanced',{\"underline_desc\":\"\\u041f\\u0456\\u0434\\u043a\\u0440\\u0435\\u0441\\u043b\\u0435\\u043d\\u0438\\u0439 (Ctrl+U)\",\"italic_desc\":\"\\u041a\\u0443\\u0440\\u0441\\u0438\\u0432 (Ctrl+I)\",\"bold_desc\":\"\\u0416\\u0438\\u0440\\u043d\\u0438\\u0439 (Ctrl+B)\",dd:\"\\u0414\\u043e\\u0432\\u0456\\u0434\\u043d\\u0438\\u043a, \\u043e\\u043f\\u0438\\u0441 \",dt:\"\\u0414\\u043e\\u0432\\u0456\\u0434\\u043d\\u0438\\u043a, \\u0442\\u0435\\u0440\\u043c\\u0456\\u043d \",samp:\"\\u041f\\u0440\\u0438\\u043a\\u043b\\u0430\\u0434 \\u043a\\u043e\\u0434\\u0443\",code:\"\\u041a\\u043e\\u0434\",blockquote:\"\\u0426\\u0438\\u0442\\u0430\\u0442\\u0430\",h6:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a 6\",h5:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a 5\",h4:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a 4\",h3:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a 3\",h2:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a 2\",h1:\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a 1\",pre:\"\\u041f\\u043e\\u043f\\u0435\\u0440\\u0435\\u0434\\u043d\\u044c\\u043e \\u0444\\u043e\\u0440\\u043c\\u0430\\u0442\\u043e\\u0432\\u0430\\u043d\\u0438\\u0439\",address:\"\\u0421\\u0442\\u0438\\u043b\\u044c \\u0430\\u0434\\u0440\\u0435\\u0441\\u0438\",div:\"Div\",paragraph:\"\\u0410\\u0431\\u0437\\u0430\\u0446\",block:\"\\u0424\\u043e\\u0440\\u043c\\u0430\\u0442\",fontdefault:\"\\u0428\\u0440\\u0438\\u0444\\u0442\",\"font_size\":\"\\u0420\\u043e\\u0437\\u043c\\u0456\\u0440 \\u0448\\u0440\\u0438\\u0444\\u0442\\u0443\",\"style_select\":\"\\u0421\\u0442\\u0438\\u043b\\u0456\",\"more_colors\":\"\\u0411\\u0456\\u043b\\u044c\\u0448\\u0435 \\u043a\\u043e\\u043b\\u044c\\u043e\\u0440\\u0456\\u0432\",\"toolbar_focus\":\"\\u041f\\u0435\\u0440\\u0435\\u0439\\u0442\\u0438 \\u043d\\u0430 \\u043f\\u0430\\u043d\\u0435\\u043b\\u044c \\u043a\\u043d\\u043e\\u043f\\u043e\\u043a - Alt+Q, \\u041f\\u0435\\u0440\\u0435\\u0439\\u0442\\u0438 \\u0434\\u043e \\u0440\\u0435\\u0434\\u0430\\u043a\\u0442\\u043e\\u0440\\u0443 - Alt-Z, \\u041f\\u0435\\u0440\\u0435\\u0439\\u0442\\u0438 \\u0434\\u043e \\u0448\\u043b\\u044f\\u0445\\u0443 \\u0435\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\\u0443 - Alt-X\",newdocument:\"\\u0412\\u0438 \\u0432\\u043f\\u0435\\u0432\\u043d\\u0435\\u043d\\u0456, \\u0449\\u043e \\u0431\\u0430\\u0436\\u0430\\u0454\\u0442\\u0435 \\u0432\\u0441\\u0435 \\u0432\\u0438\\u0434\\u0430\\u043b\\u0438\\u0442\\u0438?\",path:\"\\u0428\\u043b\\u044f\\u0445\",\"clipboard_msg\":\"\\u041a\\u043e\\u043f\\u0456\\u044e\\u0432\\u0430\\u0442\\u0438/\\u0412\\u0438\\u0440\\u0456\\u0437\\u0430\\u0442\\u0438/\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438 \\u043d\\u0435 \\u0434\\u043e\\u0441\\u0442\\u0443\\u043f\\u043d\\u0456 \\u0432 Mozilla \\u0438 Firefox.\\n\\u0412\\u0430\\u043c \\u0446\\u0456\\u043a\\u0430\\u0432\\u0430 \\u0456\\u043d\\u0444\\u043e\\u0440\\u043c\\u0430\\u0446\\u0456\\u044f \\u043f\\u0440\\u043e \\u0446\\u0435?\",\"blockquote_desc\":\"\\u0426\\u0438\\u0442\\u0430\\u0442\\u0430\",\"help_desc\":\"\\u0414\\u043e\\u043f\\u043e\\u043c\\u043e\\u0433\\u0430\",\"newdocument_desc\":\"\\u041d\\u043e\\u0432\\u0438\\u0439 \\u0434\\u043e\\u043a\\u0443\\u043c\\u0435\\u043d\\u0442\",\"image_props_desc\":\"\\u0412\\u043b\\u0430\\u0441\\u0442\\u0438\\u0432\\u043e\\u0441\\u0442\\u0456 \\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u043d\\u044f\",\"paste_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438\",\"copy_desc\":\"\\u041a\\u043e\\u043f\\u0456\\u044e\\u0432\\u0430\\u0442\\u0438\",\"cut_desc\":\"\\u0412\\u0438\\u0440\\u0456\\u0437\\u0430\\u0442\\u0438\",\"anchor_desc\":\"\\u0414\\u043e\\u0434\\u0430\\u0442\\u0438/\\u0437\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438 \\u044f\\u043a\\u0456\\u0440\",\"visualaid_desc\":\"\\u041f\\u0435\\u0440\\u0435\\u043c\\u043a\\u043d\\u0443\\u0442\\u0438 \\u043e\\u0441\\u043d\\u043e\\u0432\\u043d\\u0456/\\u043f\\u0440\\u0438\\u0445\\u043e\\u0432\\u0430\\u043d\\u0456 \\u0435\\u043b\\u0435\\u043c\\u0435\\u043d\\u0442\\u0438\",\"charmap_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438 \\u0441\\u0438\\u043c\\u0432\\u043e\\u043b\",\"backcolor_desc\":\"\\u0412\\u0438\\u0431\\u0440\\u0430\\u0442\\u0438 \\u043a\\u043e\\u043b\\u0456\\u0440 \\u0444\\u043e\\u043d\\u0443\",\"forecolor_desc\":\"\\u0412\\u0438\\u0431\\u0440\\u0430\\u0442\\u0438 \\u043a\\u043e\\u043b\\u0456\\u0440 \\u0442\\u0435\\u043a\\u0441\\u0442\\u0443\",\"custom1_desc\":\"\\u0412\\u0430\\u0448 \\u0434\\u043e\\u0432\\u0456\\u043b\\u044c\\u043d\\u0438\\u0439 \\u043e\\u043f\\u0438\\u0441 \\u0442\\u0443\\u0442\",\"removeformat_desc\":\"\\u041e\\u0447\\u0438\\u0441\\u0442\\u0438\\u0442\\u0438 \\u0444\\u043e\\u0440\\u043c\\u0430\\u0442\\u0443\\u0432\\u0430\\u043d\\u043d\\u044f\",\"hr_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438 \\u0433\\u043e\\u0440\\u0438\\u0437\\u043e\\u043d\\u0442\\u0430\\u043b\\u044c\\u043d\\u0438\\u0439 \\u0440\\u043e\\u0437\\u0434\\u0456\\u043b\\u044c\\u043d\\u0438\\u043a\",\"sup_desc\":\"\\u0412\\u0435\\u0440\\u0445\\u043d\\u0456\\u0439 \\u0456\\u043d\\u0434\\u0435\\u043a\\u0441\",\"sub_desc\":\"\\u041d\\u0438\\u0436\\u043d\\u0456\\u0439 \\u0456\\u043d\\u0434\\u0435\\u043a\\u0441\",\"code_desc\":\"\\u0420\\u0435\\u0434\\u0430\\u0433\\u0443\\u0432\\u0430\\u0442\\u0438 HTML \\u043a\\u043e\\u0434\",\"cleanup_desc\":\"\\u041e\\u0447\\u0438\\u0441\\u0442\\u0438\\u0442\\u0438 \\u0437\\u0430\\u0439\\u0432\\u0438\\u0439 \\u043a\\u043e\\u0434\",\"image_desc\":\"\\u0414\\u043e\\u0434\\u0430\\u0442\\u0438/\\u0437\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438 \\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u043d\\u044f\",\"unlink_desc\":\"\\u0412\\u0438\\u0434\\u0430\\u043b\\u0438\\u0442\\u0438 \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f\",\"link_desc\":\"\\u0412\\u0441\\u0442\\u0430\\u0432\\u0438\\u0442\\u0438/\\u0437\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438 \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f\",\"redo_desc\":\"\\u041f\\u043e\\u0432\\u0435\\u0440\\u043d\\u0443\\u0442\\u0438 (Ctrl+Y)\",\"undo_desc\":\"\\u0412\\u0456\\u0434\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438 (Ctrl+Z)\",\"indent_desc\":\"\\u0417\\u0431\\u0456\\u043b\\u044c\\u0448\\u0438\\u0442\\u0438  \\u0432\\u0456\\u0434\\u0441\\u0442\\u0443\\u043f\",\"outdent_desc\":\"\\u0417\\u043c\\u0435\\u043d\\u0448\\u0442\\u0438\\u0442\\u0438 \\u0432\\u0456\\u0434\\u0441\\u0442\\u0443\\u043f\",\"numlist_desc\":\"\\u041d\\u0443\\u043c\\u0435\\u0440\\u043e\\u0432\\u0430\\u043d\\u0438\\u0439 \\u0441\\u043f\\u0438\\u0441\\u043e\\u043a\",\"bullist_desc\":\"\\u041d\\u0435\\u043d\\u0443\\u043c\\u0435\\u0440\\u043e\\u0432\\u0430\\u043d\\u0438\\u0439 \\u0441\\u043f\\u0438\\u0441\\u043e\\u043a\",\"justifyfull_desc\":\"\\u041f\\u043e \\u0448\\u0438\\u0440\\u0438\\u043d\\u0456\",\"justifyright_desc\":\"\\u041f\\u043e \\u043f\\u0440\\u0430\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"justifycenter_desc\":\"\\u041f\\u043e \\u0446\\u0435\\u043d\\u0442\\u0440\\u0443\",\"justifyleft_desc\":\"\\u041f\\u043e \\u043b\\u0456\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"striketrough_desc\":\"\\u0417\\u0430\\u043a\\u0440\\u0435\\u0441\\u043b\\u0435\\u043d\\u0438\\u0439\",\"help_shortcut\":\"\\u041d\\u0430\\u0442\\u0438\\u0441\\u043d\\u0456\\u0442\\u044c ALT F10 \\u0434\\u043b\\u044f \\u0442\\u0443\\u043b\\u0431\\u0430\\u0440\\u0443. \\u041d\\u0430\\u0442\\u0438\\u0441\\u043d\\u0456\\u0442\\u044c ALT 0 \\u0434\\u043b\\u044f \\u043e\\u0442\\u0440\\u0438\\u043c\\u0430\\u043d\\u043d\\u044f \\u0434\\u043e\\u043f\\u043e\\u043c\\u043e\\u0433\\u0438\",\"rich_text_area\":\"\\u0412\\u0456\\u0437\\u0443\\u0430\\u043b\\u044c\\u043d\\u0438\\u0439 \\u0440\\u0435\\u0434\\u0430\\u043a\\u0442\\u043e\\u0440\",\"shortcuts_desc\":\"\\u0414\\u043e\\u043f\\u043e\\u043c\\u043e\\u0433\\u0430 \\u043f\\u043e \\u0434\\u043e\\u0441\\u0442\\u0443\\u043f\\u043d\\u043e\\u0441\\u0442\\u0456\",toolbar:\"\\u0422\\u0443\\u043b\\u0431\\u0430\\u0440\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/uk_dlg.js",
    "content": "tinyMCE.addI18n('uk.advanced_dlg',{\"link_list\":\"\\u0421\\u043f\\u0438\\u0441\\u043e\\u043a \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u044c\",\"link_is_external\":\"\\u0412\\u0432\\u0435\\u0434\\u0435\\u043d\\u0435 \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f \\u0441\\u0445\\u043e\\u0436\\u0435 \\u043d\\u0430 \\u0437\\u043e\\u0432\\u043d\\u0456\\u0448\\u043d\\u0454 \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f, \\u0432\\u0438 \\u0431\\u0430\\u0436\\u0430\\u0454\\u0442\\u0435 \\u0434\\u043e\\u0434\\u0430\\u0442\\u0438 \\u043f\\u043e\\u0442\\u0440\\u0456\\u0431\\u043d\\u0438\\u0439 \\u043f\\u0440\\u0435\\u0444\\u0456\\u043a\\u0441 http://?\",\"link_is_email\":\"\\u0412\\u0432\\u0435\\u0434\\u0435\\u043d\\u0435 \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f \\u0441\\u0445\\u043e\\u0436\\u0435 \\u043d\\u0430 \\u0430\\u0434\\u0440\\u0435\\u0441\\u0443 \\u0435\\u043b\\u0435\\u043a\\u0442\\u0440\\u043e\\u043d\\u043d\\u043e\\u0457 \\u043f\\u043e\\u0448\\u0442\\u0438, \\u0432\\u0438 \\u0431\\u0430\\u0436\\u0430\\u0454\\u0442\\u0435 \\u0434\\u043e\\u0434\\u0430\\u0442\\u0438 \\u043f\\u043e\\u0442\\u0440\\u0456\\u0431\\u043d\\u0438\\u0439 \\u043f\\u0440\\u0435\\u0444\\u0456\\u043a\\u0441 mailto:?\",\"link_titlefield\":\"\\u0417\\u0430\\u0433\\u043e\\u043b\\u043e\\u0432\\u043e\\u043a\",\"link_target_blank\":\"\\u043d\\u043e\\u0432\\u043e\\u043c\\u0443 \\u0432\\u0456\\u043a\\u043d\\u0456\",\"link_target_same\":\"\\u0446\\u044c\\u043e\\u043c\\u0443 \\u0436 \\u0432\\u0456\\u043a\\u043d\\u0456\",\"link_target\":\"\\u0412\\u0456\\u0434\\u043a\\u0440\\u0438\\u0442\\u0438 \\u0432\",\"link_url\":\"\\u0410\\u0434\\u0440\\u0435\\u0441\\u0430 \",\"link_title\":\"\\u0414\\u043e\\u0434\\u0430\\u0442\\u0438/\\u0437\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438 \\u043f\\u043e\\u0441\\u0438\\u043b\\u0430\\u043d\\u043d\\u044f\",\"image_align_right\":\"\\u041f\\u043e \\u043f\\u0440\\u0430\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"image_align_left\":\"\\u041f\\u043e \\u043b\\u0456\\u0432\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"image_align_textbottom\":\"\\u041f\\u043e \\u043d\\u0438\\u0436\\u043d\\u044c\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e \\u0442\\u0435\\u043a\\u0441\\u0442\\u0443\",\"image_align_texttop\":\"\\u041f\\u043e \\u0432\\u0435\\u0440\\u0445\\u043d\\u044c\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e \\u0442\\u0435\\u043a\\u0441\\u0442\\u0443\",\"image_align_bottom\":\"\\u041f\\u043e \\u043d\\u0438\\u0436\\u043d\\u044c\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"image_align_middle\":\"\\u041f\\u043e \\u0446\\u0435\\u043d\\u0442\\u0440\\u0443\",\"image_align_top\":\"\\u041f\\u043e \\u0432\\u0435\\u0440\\u0445\\u043d\\u044c\\u043e\\u043c\\u0443 \\u043a\\u0440\\u0430\\u044e\",\"image_align_baseline\":\"\\u041f\\u043e \\u0431\\u0430\\u0437\\u043e\\u0432\\u0456\\u0439 \\u043b\\u0456\\u043d\\u0456\\u0457\",\"image_align\":\"\\u0412\\u0438\\u0440\\u0456\\u0432\\u043d\\u044e\\u0432\\u0430\\u043d\\u043d\\u044f\",\"image_hspace\":\"\\u0413\\u043e\\u0440\\u0438\\u0437. \\u0432\\u0456\\u0434\\u0441\\u0442\\u0443\\u043f\",\"image_vspace\":\"\\u0412\\u0435\\u0440\\u0442. \\u0432\\u0456\\u0434\\u0441\\u0442\\u0443\\u043f\",\"image_dimensions\":\"\\u0420\\u043e\\u0437\\u043c\\u0456\\u0440\\u0438\",\"image_alt\":\"\\u041e\\u043f\\u0438\\u0441\",\"image_list\":\"\\u0421\\u043f\\u0438\\u0441\\u043e\\u043a \\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u044c\",\"image_border\":\"\\u0420\\u0430\\u043c\\u043a\\u0430\",\"image_src\":\"\\u0410\\u0434\\u0440\\u0435\\u0441\\u0430\",\"image_title\":\"\\u0414\\u043e\\u0434\\u0430\\u0442\\u0438/\\u0437\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438 \\u0437\\u043e\\u0431\\u0440\\u0430\\u0436\\u0435\\u043d\\u043d\\u044f\",\"charmap_title\":\"\\u0412\\u0438\\u0431\\u0440\\u0430\\u0442\\u0438 \\u0434\\u043e\\u0432\\u0456\\u043b\\u044c\\u043d\\u0438\\u0439 \\u0441\\u0438\\u043c\\u0432\\u043e\\u043b\",\"colorpicker_name\":\"\\u041d\\u0430\\u0437\\u0432\\u0430:\",\"colorpicker_color\":\"\\u041a\\u043e\\u043b\\u0456\\u0440:\",\"colorpicker_named_title\":\"\\u0417\\u0430 \\u043d\\u0430\\u0437\\u0432\\u043e\\u044e\",\"colorpicker_named_tab\":\"\\u0417\\u0430 \\u043d\\u0430\\u0437\\u0432\\u043e\\u044e\",\"colorpicker_palette_title\":\"\\u041f\\u0430\\u043b\\u0456\\u0442\\u0440\\u0430 \\u043a\\u043e\\u043b\\u044c\\u043e\\u0440\\u0456\\u0432\",\"colorpicker_palette_tab\":\"\\u041f\\u0430\\u043b\\u0456\\u0442\\u0440\\u0430\",\"colorpicker_picker_title\":\"\\u041f\\u0456\\u043f\\u0435\\u0442\\u043a\\u0430 \\u043a\\u043e\\u043b\\u044c\\u043e\\u0440\\u0443\",\"colorpicker_picker_tab\":\"\\u041f\\u0456\\u043f\\u0435\\u0442\\u043a\\u0430\",\"colorpicker_title\":\"\\u0412\\u0438\\u0431\\u0440\\u0430\\u0442\\u0438 \\u043a\\u043e\\u043b\\u0456\\u0440\",\"code_wordwrap\":\"\\u041f\\u0435\\u0440\\u0435\\u043d\\u043e\\u0441\\u0438\\u0442\\u0438 \\u0441\\u043b\\u043e\\u0432\\u0430\",\"code_title\":\"\\u0420\\u0435\\u0434\\u0430\\u043a\\u0442\\u043e\\u0440 HTML \\u043a\\u043e\\u0434\\u0443\",\"anchor_name\":\"\\u041d\\u0430\\u0437\\u0432\\u0430 \\u044f\\u043a\\u043e\\u0440\\u044f\",\"anchor_title\":\"\\u0414\\u043e\\u0434\\u0430\\u0442\\u0438/\\u0437\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438 \\u044f\\u043a\\u0456\\u0440\",\"about_loaded\":\"\\u0417\\u0430\\u0432\\u0430\\u043d\\u0442\\u0430\\u0436\\u0435\\u043d\\u0456 \\u0434\\u043e\\u0434\\u0430\\u0442\\u043a\\u0438\",\"about_version\":\"\\u0412\\u0435\\u0440\\u0441\\u0456\\u044f\",\"about_author\":\"\\u0410\\u0432\\u0442\\u043e\\u0440\",\"about_plugin\":\"\\u0414\\u043e\\u0434\\u0430\\u0442\\u043e\\u043a\",\"about_plugins\":\"\\u0414\\u043e\\u0434\\u0430\\u0442\\u043a\\u0438\",\"about_license\":\"\\u041b\\u0456\\u0446\\u0435\\u043d\\u0437\\u0456\\u044f\",\"about_help\":\"\\u0414\\u043e\\u043f\\u043e\\u043c\\u043e\\u0433\\u0430\",\"about_general\":\"\\u041f\\u0440\\u043e \\u043f\\u0440\\u043e\\u0434\\u0443\\u043a\\u0442...\",\"about_title\":\"\\u041f\\u0440\\u043e \\u043f\\u0440\\u043e\\u0434\\u0443\\u043a\\u0442 TinyMCE\",\"charmap_usage\":\"\\u0412\\u0438\\u043a\\u043e\\u0440\\u0438\\u0441\\u0442\\u043e\\u0432\\u0443\\u0439\\u0442\\u0435 \\u0441\\u0442\\u0440\\u0456\\u043b\\u043a\\u0438 \\u0432\\u043b\\u0456\\u0432\\u043e \\u0442\\u0430 \\u0432\\u043f\\u0440\\u0430\\u0432\\u043e \\u0434\\u043b\\u044f \\u043d\\u0430\\u0432\\u0456\\u0433\\u0430\\u0446\\u0456\\u0457\",\"anchor_invalid\":\"\\u0412\\u0432\\u0435\\u0434\\u0456\\u0442\\u044c \\u043f\\u0440\\u0430\\u0432\\u0438\\u043b\\u044c\\u043d\\u0435 \\u0456\\u043c\\'\\u044f \\u0434\\u043b\\u044f \\u044f\\u043a\\u0456\\u0440\\u0430.\",\"accessibility_help\":\"\\u0414\\u043e\\u043f\\u043e\\u043c\\u043e\\u0433\\u0430 \\u043f\\u043e \\u0434\\u043e\\u0441\\u0442\\u0443\\u043f\\u043d\\u043e\\u0441\\u0442\\u0456\",\"accessibility_usage_title\":\"\\u0417\\u0430\\u0433\\u0430\\u043b\\u044c\\u043d\\u0435 \\u0432\\u0438\\u043a\\u043e\\u0440\\u0438\\u0441\\u0442\\u0430\\u043d\\u043d\\u044f\",\"invalid_color_value\":\"\\u041d\\u0435\\u043a\\u043e\\u0440\\u0435\\u043a\\u0442\\u043d\\u0435 \\u0437\\u043d\\u0430\\u0447\\u0435\\u043d\\u043d\\u044f \\u043a\\u043e\\u043b\\u044c\\u043e\\u0440\\u0443\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/zh-tw.js",
    "content": "tinyMCE.addI18n('zh-tw.advanced',{\"underline_desc\":\"\\u52a0\\u4e0a\\u5e95\\u7dda (Ctrl U)\",\"italic_desc\":\"\\u8b8a\\u6210\\u659c\\u7dda (Ctrl I)\",\"bold_desc\":\"\\u5b57\\u52a0\\u7c97 (Ctrl B)\",dd:\"\\u64b0\\u5beb\\u8aaa\\u660e / \\u8a3b\\u89e3\",dt:\"\\u8853\\u8a9e\\u5b9a\\u7fa9\",samp:\"\\u8a9e\\u6cd5\\u7bc4\\u4f8b\",code:\"\\u8a9e\\u6cd5\",blockquote:\"\\u5f15\\u7528\",h6:\"\\u6a19\\u984c\\u6a23\\u5f0f 6\",h5:\"\\u6a19\\u984c\\u6a23\\u5f0f 5\",h4:\"\\u6a19\\u984c\\u6a23\\u5f0f 4\",h3:\"\\u6a19\\u984c\\u6a23\\u5f0f 3\",h2:\"\\u6a19\\u984c\\u6a23\\u5f0f 2\",h1:\"\\u6a19\\u984c\\u6a23\\u5f0f 1\",pre:\"\\u7d14\\u6587\\u5b57\",address:\"\\u4f4f\\u5740\",div:\"Div \\u6392\\u7248\\u5340\\u584a\",paragraph:\"\\u6bb5\\u843d\\u6a23\\u5f0f\",block:\"\\u683c\\u5f0f\",fontdefault:\"\\u5b57\\u9ad4\",\"font_size\":\"\\u6587\\u5b57\\u5927\\u5c0f\",\"style_select\":\"\\u6a23\\u5f0f\",\"more_colors\":\"\\u5176\\u4ed6\\u984f\\u8272\",\"toolbar_focus\":\"\\u8f14\\u52a9\\u529f\\u80fd\\uff1a\\u6309\\u4e0b Alt \\u8ddf Q \\u53ef\\u8df3\\u5230\\u529f\\u80fd\\u5217\\u3001\\u6309\\u4e0b Alt \\u8ddf Z \\u8df3\\u5230\\u6587\\u5b57\\u7de8\\u8f2f\\u756b\\u9762\\u3001\\u6309\\u4e0b Alt \\u8ddf X \\u53ef\\u8df3\\u5230\\u8a9e\\u6cd5\\u7d30\\u7bc0\\u7684\\u90a3\\u4e00\\u6392\",newdocument:\"\\u60a8\\u771f\\u7684\\u8981\\u6e05\\u9664\\u756b\\u9762\\u4e0a\\u7684\\u5167\\u5bb9\\u55ce\\uff1f\",path:\"\\u8a9e\\u6cd5\\u7d30\\u7bc0\",\"clipboard_msg\":\"\\u5f88\\u62b1\\u6b49\\uff0c\\u4f60\\u770b\\u7db2\\u9801\\u7684\\u8edf\\u9ad4\\u4e0d\\u652f\\u63f4\\u526a\\u4e0b\\u3001\\u8907\\u88fd\\u3001\\u8cbc\\u4e0a\\u7684\\u529f\\u80fd\\u3002\",\"blockquote_desc\":\"\\u5f15\\u7528\",\"help_desc\":\"\\u8aaa\\u660e\",\"newdocument_desc\":\"\\u65b0\\u6587\\u7ae0\",\"image_props_desc\":\"\\u5716\\u7247\\u8a2d\\u5b9a\",\"paste_desc\":\"\\u8cbc\\u4e0a\",\"copy_desc\":\"\\u8907\\u88fd\",\"cut_desc\":\"\\u526a\\u4e0b\",\"anchor_desc\":\"\\u52a0\\u5165 / \\u7de8\\u8f2f\\u9328\\u9ede (\\u66f8\\u7c64)\",\"visualaid_desc\":\"\\u986f\\u793a\\u96b1\\u85cf\\u7684\\u6771\\u897f\",\"charmap_desc\":\"\\u52a0\\u5165\\u4e00\\u500b\\u81ea\\u5df1\\u8a2d\\u5b9a\\u7684\\u6587\\u5b57\\u7b26\\u865f\",\"backcolor_desc\":\"\\u9078\\u64c7\\u80cc\\u666f\\u8272\",\"forecolor_desc\":\"\\u9078\\u64c7\\u6587\\u5b57\\u984f\\u8272\",\"custom1_desc\":\"\\u4f60\\u5beb\\u7684\\u8a3b\\u89e3\\u5728\\u9019\\u88e1\",\"removeformat_desc\":\"\\u79fb\\u9664\\u6587\\u5b57\\u4e0a\\u7684\\u6a23\\u5f0f\\u8207\\u683c\\u5f0f\",\"hr_desc\":\"\\u52a0\\u5165\\u4e00\\u500b\\u6c34\\u5e73\\u7dda\",\"sup_desc\":\"\\u4e0a\\u6a19\\u5b57\",\"sub_desc\":\"\\u4e0b\\u6a19\\u5b57\",\"code_desc\":\"\\u7de8\\u8f2f HTML \\u8a9e\\u6cd5\",\"cleanup_desc\":\"\\u79fb\\u9664\\u591a\\u9918\\u7684\\u6587\\u5b57\\u8207\\u7a0b\\u5f0f\\u78bc\",\"image_desc\":\"\\u65b0\\u589e / \\u7de8\\u8f2f\\u5716\\u7247\",\"unlink_desc\":\"\\u79fb\\u9664\\u9023\\u7d50\",\"link_desc\":\"\\u65b0\\u589e / \\u7de8\\u8f2f\\u7db2\\u5740\\u9023\\u7d50\",\"redo_desc\":\"\\u91cd\\u4f86\\u4e00\\u6b21 (Ctrl Y)\",\"undo_desc\":\"\\u5fa9\\u539f (Ctrl Z)\",\"indent_desc\":\"\\u7e2e\\u6392 (\\u589e\\u52a0)\",\"outdent_desc\":\"\\u7e2e\\u6392 (\\u6e1b\\u5c11)\",\"numlist_desc\":\"\\u9805\\u76ee\\u7b26\\u865f (\\u6709\\u6578\\u5b57)\",\"bullist_desc\":\"\\u9805\\u76ee\\u7b26\\u865f (\\u53ea\\u6709\\u7b26\\u865f)\",\"justifyfull_desc\":\"\\u5206\\u6563\\u5c0d\\u9f4a\",\"justifyright_desc\":\"\\u5411\\u53f3\\u908a\\u5c0d\\u9f4a\",\"justifycenter_desc\":\"\\u7f6e\\u4e2d\\u5c0d\\u9f4a\",\"justifyleft_desc\":\"\\u5411\\u5c0d\\u9f4a\\u5de6\\u908a\",\"striketrough_desc\":\"\\u522a\\u9664\\u7dda\",\"help_shortcut\":\"\\u6309\\u4e0b ALT F10 \\u51fa\\u73fe\\u5de5\\u5177\\u5217\\uff1b\\u6309\\u4e0b ALT 0 \\u5247\\u51fa\\u73fe\\u8aaa\\u660e\\u3002\",\"rich_text_area\":\"\\u6587\\u5b57\\u7de8\\u8f2f\\u5340\",\"shortcuts_desc\":\"\\u8f14\\u52a9\\u8aaa\\u660e\",toolbar:\"\\u5de5\\u5177\\u5217\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"link_delta_height\":\"\",\"link_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/zh-tw_dlg.js",
    "content": "tinyMCE.addI18n('zh-tw.advanced_dlg',{\"link_list\":\"\\u9023\\u7d50\\u6e05\\u55ae\",\"link_is_external\":\"\\u60a8\\u7684\\u7db2\\u5740\\u5c11\\u597d\\u50cf\\u52a0\\u5165\\u4e00\\u500b http:// \\u8a9e\\u6cd5\\uff0c\\u8981\\u5e6b\\u60a8\\u4fee\\u6b63\\u55ce\\uff1f\",\"link_is_email\":\"\\u60a8\\u7684 E-Mail \\u5c11\\u597d\\u50cf\\u52a0\\u5165\\u4e00\\u500b mailto: \\u8a9e\\u6cd5\\uff0c\\u8981\\u5e6b\\u60a8\\u4fee\\u6b63\\u55ce\\uff1f\",\"link_titlefield\":\"\\u6a19\\u984c\",\"link_target_blank\":\"\\u53e6\\u5916\\u958b\\u65b0\\u8996\\u7a97\",\"link_target_same\":\"\\u76f4\\u63a5\\u958b\\u555f\\u9023\\u7d50\",\"link_target\":\"\\u958b\\u555f\\u65b9\\u5f0f\",\"link_url\":\"\\u9023\\u7d50 URL\",\"link_title\":\"\\u52a0\\u5165 / \\u7de8\\u8f2f\\u7db2\\u5740\",\"image_align_right\":\"\\u5411\\u53f3\\u5c0d\\u9f4a\",\"image_align_left\":\"\\u5411\\u5de6\\u5c0d\\u9f4a\",\"image_align_textbottom\":\"\\u6587\\u5b57\\u4e0b\\u65b9\",\"image_align_texttop\":\"\\u6587\\u5b57\\u4e0a\\u65b9\",\"image_align_bottom\":\"\\u4e0b\\u65b9\",\"image_align_middle\":\"\\u7f6e\\u4e2d\",\"image_align_top\":\"\\u4e0a\\u65b9\",\"image_align_baseline\":\"\\u57fa\\u6e96\\u7dda\",\"image_align\":\"\\u5c0d\\u9f4a\",\"image_hspace\":\"\\u6c34\\u5e73\\u8ddd\\u96e2\",\"image_vspace\":\"\\u5782\\u76f4\\u8ddd\\u96e2\",\"image_dimensions\":\"\\u5c3a\\u5bf8\",\"image_alt\":\"\\u5716\\u7247\\u8aaa\\u660e\",\"image_list\":\"\\u5716\\u7247\\u6e05\\u55ae\",\"image_border\":\"\\u908a\\u6846\",\"image_src\":\"\\u5716\\u7247\\u7db2\\u5740\\u9023\\u7d50\",\"image_title\":\"\\u52a0\\u5165 / \\u8a2d\\u5b9a\\u5716\\u7247\",\"charmap_title\":\"\\u9078\\u64c7\\u81ea\\u8a02\\u7684\\u7b26\\u865f\",\"colorpicker_name\":\"\\u540d\\u7a31\\uff1a\",\"colorpicker_color\":\"\\u984f\\u8272\\uff1a\",\"colorpicker_named_title\":\"\\u8272\\u7968\\u540d\\u7a31\",\"colorpicker_named_tab\":\"\\u8272\\u7968\\u540d\\u7a31\",\"colorpicker_palette_title\":\"\\u8abf\\u8272\",\"colorpicker_palette_tab\":\"\\u8abf\\u8272\\u76e4\",\"colorpicker_picker_title\":\"\\u6309\\u4e00\\u4e0b\\u6ed1\\u9f20\\u9078\\u64c7\\u984f\\u8272\",\"colorpicker_picker_tab\":\"\\u9078\\u64c7\",\"colorpicker_title\":\"\\u9078\\u4e00\\u500b\\u984f\\u8272\",\"code_wordwrap\":\"\\u81ea\\u52d5\\u63db\\u884c\",\"code_title\":\"HTML \\u8a9e\\u6cd5\\u7de8\\u8f2f\\u5668\",\"anchor_name\":\"\\u9328\\u9ede\\u540d\\u7a31\",\"anchor_title\":\"\\u52a0\\u5165 / \\u8a2d\\u5b9a\\u9328\\u9ede\",\"about_loaded\":\"\\u5916\\u639b\\u7a0b\\u5f0f\\u8f09\\u5165\\u5b8c\\u6210\",\"about_version\":\"\\u7248\\u672c\",\"about_author\":\"\\u4f5c\\u8005\",\"about_plugin\":\"\\u5916\\u639b\",\"about_plugins\":\"\\u5916\\u639b\\u7a0b\\u5f0f\",\"about_license\":\"\\u7248\\u6b0a\\u6388\\u6b0a\",\"about_help\":\"\\u8aaa\\u660e\",\"about_general\":\"\\u95dc\\u65bc\",\"about_title\":\"\\u95dc\\u65bc TinyMCE \\u9019\\u5957\\u6587\\u5b57\\u7de8\\u8f2f\\u5668\",\"anchor_invalid\":\"\\u8acb\\u7528\\u82f1\\u6587\\u6216\\u6578\\u5b57\\u4f5c\\u70ba\\u9328\\u9ede\\u7684\\u540d\\u7a31\",\"accessibility_help\":\"Accessibility Help\",\"accessibility_usage_title\":\"General Usage\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/zh.js",
    "content": "tinyMCE.addI18n('zh.advanced',{\"underline_desc\":\"\\u4e0b\\u5212\\u7ebf(Ctrl U)\",\"italic_desc\":\"\\u659c\\u4f53(Ctrl I)\",\"bold_desc\":\"\\u7c97\\u4f53(Ctrl B)\",dd:\"\\u540d\\u8bcd\\u63cf\\u8ff0\",dt:\"\\u540d\\u8bcd\\u5b9a\\u4e49\",samp:\"\\u4ee3\\u7801\\u8303\\u4f8b\",code:\"\\u4ee3\\u7801\",blockquote:\"\\u5f15\\u7528\",h6:\"\\u6807\\u98986\",h5:\"\\u6807\\u98985\",h4:\"\\u6807\\u98984\",h3:\"\\u6807\\u98983\",h2:\"\\u6807\\u98982\",h1:\"\\u6807\\u98981\",pre:\"\\u9884\\u8bbe\\u683c\\u5f0f\",address:\"\\u5730\\u5740\",div:\"div\",paragraph:\"\\u6bb5\\u843d\",block:\"\\u683c\\u5f0f\\u5316\",fontdefault:\"\\u5b57\\u4f53\",\"font_size\":\"\\u5b57\\u4f53\\u5927\\u5c0f\",\"style_select\":\"\\u6837\\u5f0f\",\"anchor_delta_height\":\"\",\"anchor_delta_width\":\"\",\"link_delta_height\":\"60\",\"link_delta_width\":\"40\",\"more_colors\":\"\\u66f4\\u591a\\u989c\\u8272\",\"toolbar_focus\":\"\\u8df3\\u81f3\\u5de5\\u5177\\u5217-Alt Q\\uff0c\\u8df3\\u81f3\\u7f16\\u8f91\\u6846-Alt Z\\uff0c\\u8df3\\u81f3\\u5143\\u7d20\\u8282\\u70b9-Alt X\\u3002\",newdocument:\"\\u60a8\\u786e\\u5b9a\\u8981\\u6e05\\u9664\\u6240\\u6709\\u7f16\\u8f91\\u7684\\u5185\\u5bb9\\u5417\\uff1f\",path:\"\\u8def\\u5f84\",\"clipboard_msg\":\"Mozilla\\u548cFirefox\\u4e0d\\u652f\\u6301\\u590d\\u5236/\\u526a\\u5207/\\u7c98\\u8d34\\u3002\\n\\u60a8\\u9700\\u8981\\u5173\\u4e8e\\u6b64\\u95ee\\u9898\\u66f4\\u8fdb\\u4e00\\u6b65\\u7684\\u4fe1\\u606f\\u5417\\uff1f\",\"blockquote_desc\":\"\\u5f15\\u7528\",\"help_desc\":\"\\u5e2e\\u52a9\",\"newdocument_desc\":\"\\u65b0\\u5efa\\u6587\\u4ef6\",\"image_props_desc\":\"\\u56fe\\u7247\\u5c5e\\u6027\",\"paste_desc\":\"\\u7c98\\u8d34(Ctrl V)\",\"copy_desc\":\"\\u590d\\u5236(Ctrl C)\",\"cut_desc\":\"\\u526a\\u5207(Ctrl X)\",\"anchor_desc\":\"\\u63d2\\u5165/\\u7f16\\u8f91\\u951a\\u70b9\",\"visualaid_desc\":\"\\u663e\\u793a/\\u9690\\u85cf\\u76ee\\u6807\",\"charmap_desc\":\"\\u63d2\\u5165\\u7279\\u6b8a\\u7b26\\u53f7\",\"backcolor_desc\":\"\\u80cc\\u666f\\u989c\\u8272\",\"forecolor_desc\":\"\\u5b57\\u4f53\\u989c\\u8272\",\"custom1_desc\":\"\\u5728\\u6b64\\u8f93\\u5165\\u63cf\\u8ff0\",\"removeformat_desc\":\"\\u6e05\\u9664\\u683c\\u5f0f\",\"hr_desc\":\"\\u6c34\\u5e73\\u7ebf\",\"sup_desc\":\"\\u4e0a\\u6807\",\"sub_desc\":\"\\u4e0b\\u6807\",\"code_desc\":\"\\u7f16\\u8f91HTML\",\"cleanup_desc\":\"\\u51c0\\u5316\\u4ee3\\u7801\",\"image_desc\":\"\\u63d2\\u5165/\\u7f16\\u8f91\\u56fe\\u7247\",\"unlink_desc\":\"\\u5220\\u9664\\u94fe\\u63a5\",\"link_desc\":\"\\u63d2\\u5165/\\u7f16\\u8f91\\u94fe\\u63a5\",\"redo_desc\":\"\\u6062\\u590d(Ctrl Y)\",\"undo_desc\":\"\\u64a4\\u6d88(Ctrl Z)\",\"indent_desc\":\"\\u589e\\u52a0\\u7f29\\u8fdb\",\"outdent_desc\":\"\\u51cf\\u5c11\\u7f29\\u8fdb\",\"numlist_desc\":\"\\u7f16\\u53f7\\u5217\\u8868\",\"bullist_desc\":\"\\u9879\\u76ee\\u5217\\u8868\",\"justifyfull_desc\":\"\\u4e24\\u7aef\\u5bf9\\u9f50\",\"justifyright_desc\":\"\\u9760\\u53f3\\u5bf9\\u9f50\",\"justifycenter_desc\":\"\\u5c45\\u4e2d\\u5bf9\\u9f50\",\"justifyleft_desc\":\"\\u9760\\u5de6\\u5bf9\\u9f50\",\"striketrough_desc\":\"\\u5220\\u9664\\u7ebf\",\"help_shortcut\":\"\\u6309ALT-F10\\u5230\\u5de5\\u5177\\u680f\\uff0c\\u6309ALT-0\\u5230\\u8bf4\\u660e\\u3002\",\"rich_text_area\":\"\\u5bcc\\u6587\\u672c\\u7f16\\u8f91\\u533a\",\"shortcuts_desc\":\"\\u534f\\u52a9\\u5de5\\u5177\\u8bf4\\u660e\",toolbar:\"\\u5de5\\u5177\\u680f\",\"charmap_delta_height\":\"\",\"charmap_delta_width\":\"\",\"colorpicker_delta_height\":\"\",\"colorpicker_delta_width\":\"\",\"image_delta_height\":\"\",\"image_delta_width\":\"\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/langs/zh_dlg.js",
    "content": "tinyMCE.addI18n('zh.advanced_dlg',{\"link_list\":\"\\u94fe\\u63a5\\u6e05\\u5355\",\"link_is_external\":\"\\u60a8\\u6240\\u8f93\\u5165\\u7684URL\\u4f3c\\u4e4e\\u4e3a\\u5916\\u90e8\\u94fe\\u63a5\\uff0c\\u662f\\u5426\\u9700\\u8981\\u52a0\\u4e0ahttp://\\u524d\\u7f00\\uff1f\",\"link_is_email\":\"\\u60a8\\u8f93\\u5165\\u7684URL\\u4f3c\\u4e4e\\u662f\\u7535\\u5b50\\u90ae\\u4ef6\\u4f4d\\u5740\\uff0c\\u662f\\u5426\\u9700\\u8981\\u52a0\\u4e0amailto:\\u524d\\u7f00\\uff1f\",\"link_titlefield\":\"\\u6807\\u9898\",\"link_target_blank\":\"\\u5728\\u65b0\\u7a97\\u53e3\\u6253\\u5f00\\u94fe\\u63a5\",\"link_target_same\":\"\\u5728\\u5f53\\u524d\\u7a97\\u53e3\\u6253\\u5f00\\u94fe\\u63a5\",\"link_target\":\"\\u94fe\\u63a5\\u76ee\\u6807\",\"link_url\":\"\\u94fe\\u63a5URL\",\"link_title\":\"\\u63d2\\u5165/\\u7f16\\u8f91\\u94fe\\u63a5\",\"image_align_right\":\"\\u9760\\u53f3\",\"image_align_left\":\"\\u9760\\u5de6\",\"image_align_textbottom\":\"\\u6587\\u5b57\\u4e0b\\u65b9\",\"image_align_texttop\":\"\\u6587\\u5b57\\u4e0a\\u65b9\",\"image_align_bottom\":\"\\u9760\\u4e0b\",\"image_align_middle\":\"\\u5782\\u76f4\\u5c45\\u4e2d\",\"image_align_top\":\"\\u9760\\u4e0a\",\"image_align_baseline\":\"\\u57fa\\u51c6\\u7ebf\",\"image_align\":\"\\u5bf9\\u9f50\\u65b9\\u5f0f\",\"image_hspace\":\"\\u6c34\\u5e73\\u95f4\\u8ddd\",\"image_vspace\":\"\\u5782\\u76f4\\u95f4\\u8ddd\",\"image_dimensions\":\"\\u5c3a\\u5bf8\",\"image_alt\":\"\\u56fe\\u7247\\u8bf4\\u660e\",\"image_list\":\"\\u56fe\\u7247\\u6e05\\u5355\",\"image_border\":\"\\u8fb9\\u6846\",\"image_src\":\"\\u56fe\\u7247URL\",\"image_title\":\"\\u63d2\\u5165/\\u7f16\\u8f91\\u56fe\\u7247\",\"charmap_title\":\"\\u63d2\\u5165\\u7279\\u6b8a\\u7b26\\u53f7\",\"colorpicker_name\":\"\\u540d\\u79f0\\uff1a\",\"colorpicker_color\":\"\\u989c\\u8272\\uff1a\",\"colorpicker_named_title\":\"\\u547d\\u540d\\u7684\\u989c\\u8272\",\"colorpicker_named_tab\":\"\\u547d\\u540d\\u7684\",\"colorpicker_palette_title\":\"WEB\\u989c\\u8272\",\"colorpicker_palette_tab\":\"\\u5b89\\u5168\\u8272\",\"colorpicker_picker_title\":\"\\u8c03\\u8272\\u76d8\",\"colorpicker_picker_tab\":\"\\u62fe\\u53d6\\u5668\",\"colorpicker_title\":\"\\u9009\\u62e9\\u989c\\u8272\",\"code_wordwrap\":\"\\u81ea\\u52a8\\u6362\\u884c\",\"code_title\":\"HTML\\u7f16\\u8f91\\u5668\",\"anchor_name\":\"\\u951a\\u70b9\\u540d\\u79f0\",\"anchor_title\":\"\\u63d2\\u5165/\\u7f16\\u8f91\\u951a\\u70b9\",\"about_loaded\":\"\\u88c5\\u8f7d\\u7684\\u63d2\\u4ef6\",\"about_version\":\"\\u7248\\u672c\",\"about_author\":\"\\u4f5c\\u8005\",\"about_plugin\":\"\\u63d2\\u4ef6\",\"about_plugins\":\"\\u63d2\\u4ef6\",\"about_license\":\"\\u6388\\u6743\",\"about_help\":\"\\u5e2e\\u52a9\",\"about_general\":\"\\u5173\\u4e8e\",\"about_title\":\"\\u5173\\u4e8eTinyMCE\",\"charmap_usage\":\"\\u4f7f\\u7528\\u5de6\\u53f3\\u65b9\\u5411\\u952e\\u5207\\u6362\\u3002\",\"anchor_invalid\":\"\\u8bf7\\u8f93\\u5165\\u6709\\u6548\\u7684\\u951a\\u70b9\\u540d\\u79f0\\u3002\",\"accessibility_help\":\"\\u534f\\u52a9\\u5de5\\u5177\\u8bf4\\u660e\",\"accessibility_usage_title\":\"\\u666e\\u901a\\u7528\\u9014\",\"invalid_color_value\":\"\\u9519\\u8bef\\u7684\\u989c\\u8272\\u503c\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/link.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#advanced_dlg.link_title}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/mctabs.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/form_utils.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"../../utils/validate.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/link.js\"></script>\r\n</head>\r\n<body id=\"link\" style=\"display: none\">\r\n<form onsubmit=\"LinkDialog.update();return false;\" action=\"#\">\r\n\t<div class=\"tabs\">\r\n\t\t<ul>\r\n\t\t\t<li id=\"general_tab\" class=\"current\"><span><a href=\"javascript:mcTabs.displayTab('general_tab','general_panel');\" onmousedown=\"return false;\">{#advanced_dlg.link_title}</a></span></li>\r\n\t\t</ul>\r\n\t</div>\r\n\r\n\t<div class=\"panel_wrapper\">\r\n\t\t<div id=\"general_panel\" class=\"panel current\">\r\n\t\t\t<table border=\"0\" cellpadding=\"4\" cellspacing=\"0\">\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td class=\"nowrap\"><label for=\"href\">{#advanced_dlg.link_url}</label></td>\r\n\t\t\t\t\t<td><table border=\"0\" cellspacing=\"0\" cellpadding=\"0\"> \r\n\t\t\t\t\t\t<tr> \r\n\t\t\t\t\t\t\t<td><input id=\"href\" name=\"href\" type=\"text\" class=\"mceFocus\" value=\"\" style=\"width: 200px\" onchange=\"LinkDialog.checkPrefix(this);\" /></td> \r\n\t\t\t\t\t\t\t<td id=\"hrefbrowsercontainer\">&nbsp;</td>\r\n\t\t\t\t\t\t</tr> \r\n\t\t\t\t\t</table></td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td><label for=\"link_list\">{#advanced_dlg.link_list}</label></td>\r\n\t\t\t\t\t<td><select id=\"link_list\" name=\"link_list\" onchange=\"document.getElementById('href').value=this.options[this.selectedIndex].value;\"></select></td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td><label id=\"targetlistlabel\" for=\"targetlist\">{#advanced_dlg.link_target}</label></td>\r\n\t\t\t\t\t<td><select id=\"target_list\" name=\"target_list\"></select></td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td class=\"nowrap\"><label for=\"linktitle\">{#advanced_dlg.link_titlefield}</label></td>\r\n\t\t\t\t\t<td><input id=\"linktitle\" name=\"linktitle\" type=\"text\" value=\"\" style=\"width: 200px\" /></td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td><label for=\"class_list\">{#class_name}</label></td>\r\n\t\t\t\t\t<td><select id=\"class_list\" name=\"class_list\"></select></td>\r\n\t\t\t\t</tr>\r\n\t\t\t</table>\r\n\t\t</div>\r\n\t</div>\r\n\r\n\t<div class=\"mceActionPanel\">\r\n\t\t<input type=\"submit\" id=\"insert\" name=\"insert\" value=\"{#insert}\" />\r\n\t\t<input type=\"button\" id=\"cancel\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" />\r\n\t</div>\r\n</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/shortcuts.htm",
    "content": "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n\t<head>\r\n\t\t<title>{#advanced_dlg.accessibility_help}</title>\r\n\t\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t\t<script type=\"text/javascript\">tinyMCEPopup.requireLangPack();</script>\r\n\t</head>\r\n\t<body id=\"content\">\r\n\t\t<h1>{#advanced_dlg.accessibility_usage_title}</h1>\r\n\t\t<h2>Toolbars</h2>\r\n\t\t<p>Press ALT-F10 to move focus to the toolbars. Navigate through the buttons using the arrow keys.\r\n\t\tPress enter to activate a button and return focus to the editor.\r\n\t\tPress escape to return focus to the editor without performing any actions.</p>\r\n\t\t\r\n\t\t<h2>Status Bar</h2>\r\n\t\t<p>To access the editor status bar, press ALT-F11. Use the left and right arrow keys to navigate between elements in the path.\r\n\t\tPress enter or space to select an element. Press escape to return focus to the editor without changing the selection.</p>\r\n\t\t\r\n\t\t<h2>Context Menu</h2>\r\n\t\t<p>Press shift-F10 to activate the context menu. Use the up and down arrow keys to move between menu items. To open sub-menus press the right arrow key.\r\n\t\tTo close submenus press the left arrow key.  Press escape to close the context menu.</p>\r\n\t\t\r\n\t\t<h1>Keyboard Shortcuts</h1>\r\n\t\t<table>\r\n\t\t\t<thead>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<th>Keystroke</th>\r\n\t\t\t\t\t<th>Function</th>\r\n\t\t\t\t</tr>\r\n\t\t\t</thead>\r\n\t\t\t<tbody>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td>Control-B</td><td>Bold</td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td>Control-I</td><td>Italic</td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td>Control-Z</td><td>Undo</td>\r\n\t\t\t\t</tr>\r\n\t\t\t\t<tr>\r\n\t\t\t\t\t<td>Control-Y</td><td>Redo</td>\r\n\t\t\t\t</tr>\r\n\t\t\t</tbody>\r\n\t\t</table>\r\n\t</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/skins/default/content.css",
    "content": "body, td, pre {color:#000; font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px; margin:8px;}\r\nbody {background:#FFF;}\r\nbody.mceForceColors {background:#FFF; color:#000;}\r\nbody.mceBrowserDefaults {background:transparent; color:inherit; font-size:inherit; font-family:inherit;}\r\nh1 {font-size: 2em}\r\nh2 {font-size: 1.5em}\r\nh3 {font-size: 1.17em}\r\nh4 {font-size: 1em}\r\nh5 {font-size: .83em}\r\nh6 {font-size: .75em}\r\n.mceItemTable, .mceItemTable td, .mceItemTable th, .mceItemTable caption, .mceItemVisualAid {border: 1px dashed #BBB;}\r\na.mceItemAnchor {display:inline-block; -webkit-user-select:all; -webkit-user-modify:read-only; -moz-user-select:all; -moz-user-modify:read-only; width:11px !important; height:11px !important; background:url(img/items.gif) no-repeat center center}\r\nspan.mceItemNbsp {background: #DDD}\r\ntd.mceSelected, th.mceSelected {background-color:#3399ff !important}\r\nimg {border:0;}\r\ntable, img, hr, .mceItemAnchor {cursor:default}\r\ntable td, table th {cursor:text}\r\nins {border-bottom:1px solid green; text-decoration: none; color:green}\r\ndel {color:red; text-decoration:line-through}\r\ncite {border-bottom:1px dashed blue}\r\nacronym {border-bottom:1px dotted #CCC; cursor:help}\r\nabbr {border-bottom:1px dashed #CCC; cursor:help}\r\n\r\n/* IE */\r\n* html body {\r\nscrollbar-3dlight-color:#F0F0EE;\r\nscrollbar-arrow-color:#676662;\r\nscrollbar-base-color:#F0F0EE;\r\nscrollbar-darkshadow-color:#DDD;\r\nscrollbar-face-color:#E0E0DD;\r\nscrollbar-highlight-color:#F0F0EE;\r\nscrollbar-shadow-color:#F0F0EE;\r\nscrollbar-track-color:#F5F5F5;\r\n}\r\n\r\nimg:-moz-broken {-moz-force-broken-image-icon:1; width:24px; height:24px}\r\nfont[face=mceinline] {font-family:inherit !important}\r\n*[contentEditable]:focus {outline:0}\r\n\r\n.mceItemMedia {border:1px dotted #cc0000; background-position:center; background-repeat:no-repeat; background-color:#ffffcc}\r\n.mceItemShockWave {background-image:url(../../img/shockwave.gif)}\r\n.mceItemFlash {background-image:url(../../img/flash.gif)}\r\n.mceItemQuickTime {background-image:url(../../img/quicktime.gif)}\r\n.mceItemWindowsMedia {background-image:url(../../img/windowsmedia.gif)}\r\n.mceItemRealMedia {background-image:url(../../img/realmedia.gif)}\r\n.mceItemVideo {background-image:url(../../img/video.gif)}\r\n.mceItemAudio {background-image:url(../../img/video.gif)}\r\n.mceItemEmbeddedAudio {background-image:url(../../img/video.gif)}\r\n.mceItemIframe {background-image:url(../../img/iframe.gif)}\r\n.mcePageBreak {display:block;border:0;width:100%;height:12px;border-top:1px dotted #ccc;margin-top:15px;background:#fff url(../../img/pagebreak.gif) no-repeat center top;}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/skins/default/dialog.css",
    "content": "/* Generic */\r\nbody {\r\nfont-family:Verdana, Arial, Helvetica, sans-serif; font-size:11px;\r\nscrollbar-3dlight-color:#F0F0EE;\r\nscrollbar-arrow-color:#676662;\r\nscrollbar-base-color:#F0F0EE;\r\nscrollbar-darkshadow-color:#DDDDDD;\r\nscrollbar-face-color:#E0E0DD;\r\nscrollbar-highlight-color:#F0F0EE;\r\nscrollbar-shadow-color:#F0F0EE;\r\nscrollbar-track-color:#F5F5F5;\r\nbackground:#F0F0EE;\r\npadding:0;\r\nmargin:8px 8px 0 8px;\r\n}\r\n\r\nhtml {background:#F0F0EE;}\r\ntd {font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px;}\r\ntextarea {resize:none;outline:none;}\r\na:link, a:visited {color:black;}\r\na:hover {color:#2B6FB6;}\r\n.nowrap {white-space: nowrap}\r\n\r\n/* Forms */\r\nfieldset {margin:0; padding:4px; border:1px solid #919B9C; font-family:Verdana, Arial; font-size:10px;}\r\nlegend {color:#2B6FB6; font-weight:bold;}\r\nlabel.msg {display:none;}\r\nlabel.invalid {color:#EE0000; display:inline;}\r\ninput.invalid {border:1px solid #EE0000;}\r\ninput {background:#FFF; border:1px solid #CCC;}\r\ninput, select, textarea {font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px;}\r\ninput, select, textarea {border:1px solid #808080;}\r\ninput.radio {border:1px none #000000; background:transparent; vertical-align:middle;}\r\ninput.checkbox {border:1px none #000000; background:transparent; vertical-align:middle;}\r\n.input_noborder {border:0;}\r\n\r\n/* Buttons */\r\n#insert, #cancel, input.button, .updateButton {\r\nborder:0; margin:0; padding:0;\r\nfont-weight:bold;\r\nwidth:94px; height:26px;\r\nbackground:url(img/buttons.png) 0 -26px;\r\ncursor:pointer;\r\npadding-bottom:2px;\r\nfloat:left;\r\n}\r\n\r\n#insert {background:url(img/buttons.png) 0 -52px}\r\n#cancel {background:url(img/buttons.png) 0 0; float:right}\r\n\r\n/* Browse */\r\na.pickcolor, a.browse {text-decoration:none}\r\na.browse span {display:block; width:20px; height:18px; background:url(../../img/icons.gif) -860px 0; border:1px solid #FFF; margin-left:1px;}\r\n.mceOldBoxModel a.browse span {width:22px; height:20px;}\r\na.browse:hover span {border:1px solid #0A246A; background-color:#B2BBD0;}\r\na.browse span.disabled {border:1px solid white; opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)}\r\na.browse:hover span.disabled {border:1px solid white; background-color:transparent;}\r\na.pickcolor span {display:block; width:20px; height:16px; background:url(../../img/icons.gif) -840px 0; margin-left:2px;}\r\n.mceOldBoxModel a.pickcolor span {width:21px; height:17px;}\r\na.pickcolor:hover span {background-color:#B2BBD0;}\r\na.pickcolor:hover span.disabled {}\r\n\r\n/* Charmap */\r\ntable.charmap {border:1px solid #AAA; text-align:center}\r\ntd.charmap, #charmap a {width:18px; height:18px; color:#000; border:1px solid #AAA; text-align:center; font-size:12px; vertical-align:middle; line-height: 18px;}\r\n#charmap a {display:block; color:#000; text-decoration:none; border:0}\r\n#charmap a:hover {background:#CCC;color:#2B6FB6}\r\n#charmap #codeN {font-size:10px; font-family:Arial,Helvetica,sans-serif; text-align:center}\r\n#charmap #codeV {font-size:40px; height:80px; border:1px solid #AAA; text-align:center}\r\n\r\n/* Source */\r\n.wordWrapCode {vertical-align:middle; border:1px none #000000; background:transparent;}\r\n.mceActionPanel {margin-top:5px;}\r\n\r\n/* Tabs classes */\r\n.tabs {width:100%; height:18px; line-height:normal; background:url(img/tabs.gif) repeat-x 0 -72px;}\r\n.tabs ul {margin:0; padding:0; list-style:none;}\r\n.tabs li {float:left; background:url(img/tabs.gif) no-repeat 0 0; margin:0 2px 0 0; padding:0 0 0 10px; line-height:17px; height:18px; display:block;}\r\n.tabs li.current {background:url(img/tabs.gif) no-repeat 0 -18px; margin-right:2px;}\r\n.tabs span {float:left; display:block; background:url(img/tabs.gif) no-repeat right -36px; padding:0px 10px 0 0;}\r\n.tabs .current span {background:url(img/tabs.gif) no-repeat right -54px;}\r\n.tabs a {text-decoration:none; font-family:Verdana, Arial; font-size:10px;}\r\n.tabs a:link, .tabs a:visited, .tabs a:hover {color:black;}\r\n\r\n/* Panels */\r\n.panel_wrapper div.panel {display:none;}\r\n.panel_wrapper div.current {display:block; width:100%; height:300px; overflow:visible;}\r\n.panel_wrapper {border:1px solid #919B9C; border-top:0px; padding:10px; padding-top:5px; clear:both; background:white;}\r\n\r\n/* Columns */\r\n.column {float:left;}\r\n.properties {width:100%;}\r\n.properties .column1 {}\r\n.properties .column2 {text-align:left;}\r\n\r\n/* Titles */\r\nh1, h2, h3, h4 {color:#2B6FB6; margin:0; padding:0; padding-top:5px;}\r\nh3 {font-size:14px;}\r\n.title {font-size:12px; font-weight:bold; color:#2B6FB6;}\r\n\r\n/* Dialog specific */\r\n#link .panel_wrapper, #link div.current {height:125px;}\r\n#image .panel_wrapper, #image div.current {height:200px;}\r\n#plugintable thead {font-weight:bold; background:#DDD;}\r\n#plugintable, #about #plugintable td {border:1px solid #919B9C;}\r\n#plugintable {width:96%; margin-top:10px;}\r\n#pluginscontainer {height:290px; overflow:auto;}\r\n#colorpicker #preview {float:right; width:50px; height:14px;line-height:1px; border:1px solid black; margin-left:5px;}\r\n#colorpicker #colors {float:left; border:1px solid gray; cursor:crosshair;}\r\n#colorpicker #light {border:1px solid gray; margin-left:5px; float:left;width:15px; height:150px; cursor:crosshair;}\r\n#colorpicker #light div {overflow:hidden;}\r\n#colorpicker #previewblock {float:right; padding-left:10px; height:20px;}\r\n#colorpicker .panel_wrapper div.current {height:175px;}\r\n#colorpicker #namedcolors {width:150px;}\r\n#colorpicker #namedcolors a {display:block; float:left; width:10px; height:10px; margin:1px 1px 0 0; overflow:hidden;}\r\n#colorpicker #colornamecontainer {margin-top:5px;}\r\n#colorpicker #picker_panel fieldset {margin:auto;width:325px;}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/skins/default/ui.css",
    "content": "/* Reset */\r\n.defaultSkin table, .defaultSkin tbody, .defaultSkin a, .defaultSkin img, .defaultSkin tr, .defaultSkin div, .defaultSkin td, .defaultSkin iframe, .defaultSkin span, .defaultSkin *, .defaultSkin .mceText {border:0; margin:0; padding:0; background:transparent; white-space:nowrap; text-decoration:none; font-weight:normal; cursor:default; color:#000; vertical-align:baseline; width:auto; border-collapse:separate; text-align:left}\r\n.defaultSkin a:hover, .defaultSkin a:link, .defaultSkin a:visited, .defaultSkin a:active {text-decoration:none; font-weight:normal; cursor:default; color:#000}\r\n.defaultSkin table td {vertical-align:middle}\r\n\r\n/* Containers */\r\n.defaultSkin table {direction:ltr;background:transparent}\r\n.defaultSkin iframe {display:block;}\r\n.defaultSkin .mceToolbar {height:26px}\r\n.defaultSkin .mceLeft {text-align:left}\r\n.defaultSkin .mceRight {text-align:right}\r\n\r\n/* External */\r\n.defaultSkin .mceExternalToolbar {position:absolute; border:1px solid #CCC; border-bottom:0; display:none;}\r\n.defaultSkin .mceExternalToolbar td.mceToolbar {padding-right:13px;}\r\n.defaultSkin .mceExternalClose {position:absolute; top:3px; right:3px; width:7px; height:7px; background:url(../../img/icons.gif) -820px 0}\r\n\r\n/* Layout */\r\n.defaultSkin table.mceLayout {border:0; border-left:1px solid #CCC; border-right:1px solid #CCC}\r\n.defaultSkin table.mceLayout tr.mceFirst td {border-top:1px solid #CCC}\r\n.defaultSkin table.mceLayout tr.mceLast td {border-bottom:1px solid #CCC}\r\n.defaultSkin table.mceToolbar, .defaultSkin tr.mceFirst .mceToolbar tr td, .defaultSkin tr.mceLast .mceToolbar tr td {border:0; margin:0; padding:0;}\r\n.defaultSkin td.mceToolbar {background:#F0F0EE; padding-top:1px; vertical-align:top}\r\n.defaultSkin .mceIframeContainer {border-top:1px solid #CCC; border-bottom:1px solid #CCC}\r\n.defaultSkin .mceStatusbar {background:#F0F0EE; font-family:'MS Sans Serif',sans-serif,Verdana,Arial; font-size:9pt; line-height:16px; overflow:visible; color:#000; display:block; height:20px}\r\n.defaultSkin .mceStatusbar div {float:left; margin:2px}\r\n.defaultSkin .mceStatusbar a.mceResize {display:block; float:right; background:url(../../img/icons.gif) -800px 0; width:20px; height:20px; cursor:se-resize; outline:0}\r\n.defaultSkin .mceStatusbar a:hover {text-decoration:underline}\r\n.defaultSkin table.mceToolbar {margin-left:3px}\r\n.defaultSkin span.mceIcon, .defaultSkin img.mceIcon {display:block; width:20px; height:20px}\r\n.defaultSkin .mceIcon {background:url(../../img/icons.gif) no-repeat 20px 20px}\r\n.defaultSkin td.mceCenter {text-align:center;}\r\n.defaultSkin td.mceCenter table {margin:0 auto; text-align:left;}\r\n.defaultSkin td.mceRight table {margin:0 0 0 auto;}\r\n\r\n/* Button */\r\n.defaultSkin .mceButton {display:block; border:1px solid #F0F0EE; width:20px; height:20px; margin-right:1px}\r\n.defaultSkin a.mceButtonEnabled:hover {border:1px solid #0A246A; background-color:#B2BBD0}\r\n.defaultSkin a.mceButtonActive, .defaultSkin a.mceButtonSelected {border:1px solid #0A246A; background-color:#C2CBE0}\r\n.defaultSkin .mceButtonDisabled .mceIcon {opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)}\r\n.defaultSkin .mceButtonLabeled {width:auto}\r\n.defaultSkin .mceButtonLabeled span.mceIcon {float:left}\r\n.defaultSkin span.mceButtonLabel {display:block; font-size:10px; padding:4px 6px 0 22px; font-family:Tahoma,Verdana,Arial,Helvetica}\r\n.defaultSkin .mceButtonDisabled .mceButtonLabel {color:#888}\r\n\r\n/* Separator */\r\n.defaultSkin .mceSeparator {display:block; background:url(../../img/icons.gif) -180px 0; width:2px; height:20px; margin:2px 2px 0 4px}\r\n\r\n/* ListBox */\r\n.defaultSkin .mceListBox, .defaultSkin .mceListBox a {display:block}\r\n.defaultSkin .mceListBox .mceText {padding-left:4px; width:70px; text-align:left; border:1px solid #CCC; border-right:0; background:#FFF; font-family:Tahoma,Verdana,Arial,Helvetica; font-size:11px; height:20px; line-height:20px; overflow:hidden}\r\n.defaultSkin .mceListBox .mceOpen {width:9px; height:20px; background:url(../../img/icons.gif) -741px 0; margin-right:2px; border:1px solid #CCC;}\r\n.defaultSkin table.mceListBoxEnabled:hover .mceText, .defaultSkin .mceListBoxHover .mceText, .defaultSkin .mceListBoxSelected .mceText {border:1px solid #A2ABC0; border-right:0; background:#FFF}\r\n.defaultSkin table.mceListBoxEnabled:hover .mceOpen, .defaultSkin .mceListBoxHover .mceOpen, .defaultSkin .mceListBoxSelected .mceOpen {background-color:#FFF; border:1px solid #A2ABC0}\r\n.defaultSkin .mceListBoxDisabled a.mceText {color:gray; background-color:transparent;}\r\n.defaultSkin .mceListBoxMenu {overflow:auto; overflow-x:hidden}\r\n.defaultSkin .mceOldBoxModel .mceListBox .mceText {height:22px}\r\n.defaultSkin .mceOldBoxModel .mceListBox .mceOpen {width:11px; height:22px;}\r\n.defaultSkin select.mceNativeListBox {font-family:'MS Sans Serif',sans-serif,Verdana,Arial; font-size:7pt; background:#F0F0EE; border:1px solid gray; margin-right:2px;}\r\n\r\n/* SplitButton */\r\n.defaultSkin .mceSplitButton {width:32px; height:20px; direction:ltr}\r\n.defaultSkin .mceSplitButton a, .defaultSkin .mceSplitButton span {height:20px; display:block}\r\n.defaultSkin .mceSplitButton a.mceAction {width:20px; border:1px solid #F0F0EE; border-right:0;}\r\n.defaultSkin .mceSplitButton span.mceAction {width:20px; background-image:url(../../img/icons.gif);}\r\n.defaultSkin .mceSplitButton a.mceOpen {width:9px; background:url(../../img/icons.gif) -741px 0; border:1px solid #F0F0EE;}\r\n.defaultSkin .mceSplitButton span.mceOpen {display:none}\r\n.defaultSkin table.mceSplitButtonEnabled:hover a.mceAction, .defaultSkin .mceSplitButtonHover a.mceAction, .defaultSkin .mceSplitButtonSelected a.mceAction {border:1px solid #0A246A; border-right:0; background-color:#B2BBD0}\r\n.defaultSkin table.mceSplitButtonEnabled:hover a.mceOpen, .defaultSkin .mceSplitButtonHover a.mceOpen, .defaultSkin .mceSplitButtonSelected a.mceOpen {background-color:#B2BBD0; border:1px solid #0A246A;}\r\n.defaultSkin .mceSplitButtonDisabled .mceAction, .defaultSkin .mceSplitButtonDisabled a.mceOpen {opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)}\r\n.defaultSkin .mceSplitButtonActive a.mceAction {border:1px solid #0A246A; background-color:#C2CBE0}\r\n.defaultSkin .mceSplitButtonActive a.mceOpen {border-left:0;}\r\n\r\n/* ColorSplitButton */\r\n.defaultSkin div.mceColorSplitMenu table {background:#FFF; border:1px solid gray}\r\n.defaultSkin .mceColorSplitMenu td {padding:2px}\r\n.defaultSkin .mceColorSplitMenu a {display:block; width:9px; height:9px; overflow:hidden; border:1px solid #808080}\r\n.defaultSkin .mceColorSplitMenu td.mceMoreColors {padding:1px 3px 1px 1px}\r\n.defaultSkin .mceColorSplitMenu a.mceMoreColors {width:100%; height:auto; text-align:center; font-family:Tahoma,Verdana,Arial,Helvetica; font-size:11px; line-height:20px; border:1px solid #FFF}\r\n.defaultSkin .mceColorSplitMenu a.mceMoreColors:hover {border:1px solid #0A246A; background-color:#B6BDD2}\r\n.defaultSkin a.mceMoreColors:hover {border:1px solid #0A246A}\r\n.defaultSkin .mceColorPreview {margin-left:2px; width:16px; height:4px; overflow:hidden; background:#9a9b9a}\r\n.defaultSkin .mce_forecolor span.mceAction, .defaultSkin .mce_backcolor span.mceAction {overflow:hidden; height:16px}\r\n\r\n/* Menu */\r\n.defaultSkin .mceMenu {position:absolute; left:0; top:0; z-index:1000; border:1px solid #D4D0C8}\r\n.defaultSkin .mceNoIcons span.mceIcon {width:0;}\r\n.defaultSkin .mceNoIcons a .mceText {padding-left:10px}\r\n.defaultSkin .mceMenu table {background:#FFF}\r\n.defaultSkin .mceMenu a, .defaultSkin .mceMenu span, .defaultSkin .mceMenu {display:block}\r\n.defaultSkin .mceMenu td {height:20px}\r\n.defaultSkin .mceMenu a {position:relative;padding:3px 0 4px 0}\r\n.defaultSkin .mceMenu .mceText {position:relative; display:block; font-family:Tahoma,Verdana,Arial,Helvetica; color:#000; cursor:default; margin:0; padding:0 25px 0 25px; display:block}\r\n.defaultSkin .mceMenu span.mceText, .defaultSkin .mceMenu .mcePreview {font-size:11px}\r\n.defaultSkin .mceMenu pre.mceText {font-family:Monospace}\r\n.defaultSkin .mceMenu .mceIcon {position:absolute; top:0; left:0; width:22px;}\r\n.defaultSkin .mceMenu .mceMenuItemEnabled a:hover, .defaultSkin .mceMenu .mceMenuItemActive {background-color:#dbecf3}\r\n.defaultSkin td.mceMenuItemSeparator {background:#DDD; height:1px}\r\n.defaultSkin .mceMenuItemTitle a {border:0; background:#EEE; border-bottom:1px solid #DDD}\r\n.defaultSkin .mceMenuItemTitle span.mceText {color:#000; font-weight:bold; padding-left:4px}\r\n.defaultSkin .mceMenuItemDisabled .mceText {color:#888}\r\n.defaultSkin .mceMenuItemSelected .mceIcon {background:url(img/menu_check.gif)}\r\n.defaultSkin .mceNoIcons .mceMenuItemSelected a {background:url(img/menu_arrow.gif) no-repeat -6px center}\r\n.defaultSkin .mceMenu span.mceMenuLine {display:none}\r\n.defaultSkin .mceMenuItemSub a {background:url(img/menu_arrow.gif) no-repeat top right;}\r\n.defaultSkin .mceMenuItem td, .defaultSkin .mceMenuItem th {line-height: normal}\r\n\r\n/* Progress,Resize */\r\n.defaultSkin .mceBlocker {position:absolute; left:0; top:0; z-index:1000; opacity:0.5; -ms-filter:'alpha(opacity=50)'; filter:alpha(opacity=50); background:#FFF}\r\n.defaultSkin .mceProgress {position:absolute; left:0; top:0; z-index:1001; background:url(img/progress.gif) no-repeat; width:32px; height:32px; margin:-16px 0 0 -16px}\r\n\r\n/* Formats */\r\n.defaultSkin .mce_formatPreview a {font-size:10px}\r\n.defaultSkin .mce_p span.mceText {}\r\n.defaultSkin .mce_address span.mceText {font-style:italic}\r\n.defaultSkin .mce_pre span.mceText {font-family:monospace}\r\n.defaultSkin .mce_h1 span.mceText {font-weight:bolder; font-size: 2em}\r\n.defaultSkin .mce_h2 span.mceText {font-weight:bolder; font-size: 1.5em}\r\n.defaultSkin .mce_h3 span.mceText {font-weight:bolder; font-size: 1.17em}\r\n.defaultSkin .mce_h4 span.mceText {font-weight:bolder; font-size: 1em}\r\n.defaultSkin .mce_h5 span.mceText {font-weight:bolder; font-size: .83em}\r\n.defaultSkin .mce_h6 span.mceText {font-weight:bolder; font-size: .75em}\r\n\r\n/* Theme */\r\n.defaultSkin span.mce_bold {background-position:0 0}\r\n.defaultSkin span.mce_italic {background-position:-60px 0}\r\n.defaultSkin span.mce_underline {background-position:-140px 0}\r\n.defaultSkin span.mce_strikethrough {background-position:-120px 0}\r\n.defaultSkin span.mce_undo {background-position:-160px 0}\r\n.defaultSkin span.mce_redo {background-position:-100px 0}\r\n.defaultSkin span.mce_cleanup {background-position:-40px 0}\r\n.defaultSkin span.mce_bullist {background-position:-20px 0}\r\n.defaultSkin span.mce_numlist {background-position:-80px 0}\r\n.defaultSkin span.mce_justifyleft {background-position:-460px 0}\r\n.defaultSkin span.mce_justifyright {background-position:-480px 0}\r\n.defaultSkin span.mce_justifycenter {background-position:-420px 0}\r\n.defaultSkin span.mce_justifyfull {background-position:-440px 0}\r\n.defaultSkin span.mce_anchor {background-position:-200px 0}\r\n.defaultSkin span.mce_indent {background-position:-400px 0}\r\n.defaultSkin span.mce_outdent {background-position:-540px 0}\r\n.defaultSkin span.mce_link {background-position:-500px 0}\r\n.defaultSkin span.mce_unlink {background-position:-640px 0}\r\n.defaultSkin span.mce_sub {background-position:-600px 0}\r\n.defaultSkin span.mce_sup {background-position:-620px 0}\r\n.defaultSkin span.mce_removeformat {background-position:-580px 0}\r\n.defaultSkin span.mce_newdocument {background-position:-520px 0}\r\n.defaultSkin span.mce_image {background-position:-380px 0}\r\n.defaultSkin span.mce_help {background-position:-340px 0}\r\n.defaultSkin span.mce_code {background-position:-260px 0}\r\n.defaultSkin span.mce_hr {background-position:-360px 0}\r\n.defaultSkin span.mce_visualaid {background-position:-660px 0}\r\n.defaultSkin span.mce_charmap {background-position:-240px 0}\r\n.defaultSkin span.mce_paste {background-position:-560px 0}\r\n.defaultSkin span.mce_copy {background-position:-700px 0}\r\n.defaultSkin span.mce_cut {background-position:-680px 0}\r\n.defaultSkin span.mce_blockquote {background-position:-220px 0}\r\n.defaultSkin .mce_forecolor span.mceAction {background-position:-720px 0}\r\n.defaultSkin .mce_backcolor span.mceAction {background-position:-760px 0}\r\n.defaultSkin span.mce_forecolorpicker {background-position:-720px 0}\r\n.defaultSkin span.mce_backcolorpicker {background-position:-760px 0}\r\n\r\n/* Plugins */\r\n.defaultSkin span.mce_advhr {background-position:-0px -20px}\r\n.defaultSkin span.mce_ltr {background-position:-20px -20px}\r\n.defaultSkin span.mce_rtl {background-position:-40px -20px}\r\n.defaultSkin span.mce_emotions {background-position:-60px -20px}\r\n.defaultSkin span.mce_fullpage {background-position:-80px -20px}\r\n.defaultSkin span.mce_fullscreen {background-position:-100px -20px}\r\n.defaultSkin span.mce_iespell {background-position:-120px -20px}\r\n.defaultSkin span.mce_insertdate {background-position:-140px -20px}\r\n.defaultSkin span.mce_inserttime {background-position:-160px -20px}\r\n.defaultSkin span.mce_absolute {background-position:-180px -20px}\r\n.defaultSkin span.mce_backward {background-position:-200px -20px}\r\n.defaultSkin span.mce_forward {background-position:-220px -20px}\r\n.defaultSkin span.mce_insert_layer {background-position:-240px -20px}\r\n.defaultSkin span.mce_insertlayer {background-position:-260px -20px}\r\n.defaultSkin span.mce_movebackward {background-position:-280px -20px}\r\n.defaultSkin span.mce_moveforward {background-position:-300px -20px}\r\n.defaultSkin span.mce_media {background-position:-320px -20px}\r\n.defaultSkin span.mce_nonbreaking {background-position:-340px -20px}\r\n.defaultSkin span.mce_pastetext {background-position:-360px -20px}\r\n.defaultSkin span.mce_pasteword {background-position:-380px -20px}\r\n.defaultSkin span.mce_selectall {background-position:-400px -20px}\r\n.defaultSkin span.mce_preview {background-position:-420px -20px}\r\n.defaultSkin span.mce_print {background-position:-440px -20px}\r\n.defaultSkin span.mce_cancel {background-position:-460px -20px}\r\n.defaultSkin span.mce_save {background-position:-480px -20px}\r\n.defaultSkin span.mce_replace {background-position:-500px -20px}\r\n.defaultSkin span.mce_search {background-position:-520px -20px}\r\n.defaultSkin span.mce_styleprops {background-position:-560px -20px}\r\n.defaultSkin span.mce_table {background-position:-580px -20px}\r\n.defaultSkin span.mce_cell_props {background-position:-600px -20px}\r\n.defaultSkin span.mce_delete_table {background-position:-620px -20px}\r\n.defaultSkin span.mce_delete_col {background-position:-640px -20px}\r\n.defaultSkin span.mce_delete_row {background-position:-660px -20px}\r\n.defaultSkin span.mce_col_after {background-position:-680px -20px}\r\n.defaultSkin span.mce_col_before {background-position:-700px -20px}\r\n.defaultSkin span.mce_row_after {background-position:-720px -20px}\r\n.defaultSkin span.mce_row_before {background-position:-740px -20px}\r\n.defaultSkin span.mce_merge_cells {background-position:-760px -20px}\r\n.defaultSkin span.mce_table_props {background-position:-980px -20px}\r\n.defaultSkin span.mce_row_props {background-position:-780px -20px}\r\n.defaultSkin span.mce_split_cells {background-position:-800px -20px}\r\n.defaultSkin span.mce_template {background-position:-820px -20px}\r\n.defaultSkin span.mce_visualchars {background-position:-840px -20px}\r\n.defaultSkin span.mce_abbr {background-position:-860px -20px}\r\n.defaultSkin span.mce_acronym {background-position:-880px -20px}\r\n.defaultSkin span.mce_attribs {background-position:-900px -20px}\r\n.defaultSkin span.mce_cite {background-position:-920px -20px}\r\n.defaultSkin span.mce_del {background-position:-940px -20px}\r\n.defaultSkin span.mce_ins {background-position:-960px -20px}\r\n.defaultSkin span.mce_pagebreak {background-position:0 -40px}\r\n.defaultSkin span.mce_restoredraft {background-position:-20px -40px}\r\n.defaultSkin span.mce_spellchecker {background-position:-540px -20px}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/skins/highcontrast/content.css",
    "content": "body, td, pre { margin:8px;}\r\nbody.mceForceColors {background:#FFF; color:#000;}\r\nh1 {font-size: 2em}\r\nh2 {font-size: 1.5em}\r\nh3 {font-size: 1.17em}\r\nh4 {font-size: 1em}\r\nh5 {font-size: .83em}\r\nh6 {font-size: .75em}\r\n.mceItemTable, .mceItemTable td, .mceItemTable th, .mceItemTable caption, .mceItemVisualAid {border: 1px dashed #BBB;}\r\na.mceItemAnchor {display:inline-block; width:11px !important; height:11px  !important; background:url(../default/img/items.gif) no-repeat 0 0;}\r\nspan.mceItemNbsp {background: #DDD}\r\ntd.mceSelected, th.mceSelected {background-color:#3399ff !important}\r\nimg {border:0;}\r\ntable, img, hr, .mceItemAnchor {cursor:default}\r\ntable td, table th {cursor:text}\r\nins {border-bottom:1px solid green; text-decoration: none; color:green}\r\ndel {color:red; text-decoration:line-through}\r\ncite {border-bottom:1px dashed blue}\r\nacronym {border-bottom:1px dotted #CCC; cursor:help}\r\nabbr {border-bottom:1px dashed #CCC; cursor:help}\r\n\r\nimg:-moz-broken {-moz-force-broken-image-icon:1; width:24px; height:24px}\r\nfont[face=mceinline] {font-family:inherit !important}\r\n*[contentEditable]:focus {outline:0}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/skins/highcontrast/dialog.css",
    "content": "/* Generic */\r\nbody {\r\nfont-family:Verdana, Arial, Helvetica, sans-serif; font-size:11px;\r\nbackground:#F0F0EE;\ncolor: black;\r\npadding:0;\r\nmargin:8px 8px 0 8px;\r\n}\r\n\r\nhtml {background:#F0F0EE; color:#000;}\r\ntd {font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px;}\r\ntextarea {resize:none;outline:none;}\r\na:link, a:visited {color:black;background-color:transparent;}\r\na:hover {color:#2B6FB6;background-color:transparent;}\r\n.nowrap {white-space: nowrap}\r\n\r\n/* Forms */\r\nfieldset {margin:0; padding:4px; border:1px solid #919B9C; font-family:Verdana, Arial; font-size:10px;}\r\nlegend {color:#2B6FB6; font-weight:bold;}\r\nlabel.msg {display:none;}\r\nlabel.invalid {color:#EE0000; display:inline;background-color:transparent;}\r\ninput.invalid {border:1px solid #EE0000;background-color:transparent;}\r\ninput {background:#FFF; border:1px solid #CCC;color:black;}\r\ninput, select, textarea {font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px;}\r\ninput, select, textarea {border:1px solid #808080;}\r\ninput.radio {border:1px none #000000; background:transparent; vertical-align:middle;}\r\ninput.checkbox {border:1px none #000000; background:transparent; vertical-align:middle;}\r\n.input_noborder {border:0;}\r\n\r\n/* Buttons */\r\n#insert, #cancel, input.button, .updateButton {\r\nfont-weight:bold;\r\nwidth:94px; height:23px;\r\ncursor:pointer;\r\npadding-bottom:2px;\r\nfloat:left;\r\n}\r\n\r\n#cancel {float:right}\r\n\r\n/* Browse */\r\na.pickcolor, a.browse {text-decoration:none}\r\na.browse span {display:block; width:20px; height:18px; background:url(../../img/icons.gif) -860px 0; border:1px solid #FFF; margin-left:1px;}\r\n.mceOldBoxModel a.browse span {width:22px; height:20px;}\r\na.browse:hover span {border:1px solid #0A246A; background-color:#B2BBD0;}\r\na.browse span.disabled {border:1px solid white; opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)}\r\na.browse:hover span.disabled {border:1px solid white; background-color:transparent;}\r\na.pickcolor span {display:block; width:20px; height:16px; background:url(../../img/icons.gif) -840px 0; margin-left:2px;}\r\n.mceOldBoxModel a.pickcolor span {width:21px; height:17px;}\r\na.pickcolor:hover span {background-color:#B2BBD0;}\r\na.pickcolor:hover span.disabled {}\r\n\r\n/* Charmap */\r\ntable.charmap {border:1px solid #AAA; text-align:center}\r\ntd.charmap, #charmap a {width:18px; height:18px; color:#000; border:1px solid #AAA; text-align:center; font-size:12px; vertical-align:middle; line-height: 18px;}\r\n#charmap a {display:block; color:#000; text-decoration:none; border:0}\r\n#charmap a:hover {background:#CCC;color:#2B6FB6}\r\n#charmap #codeN {font-size:10px; font-family:Arial,Helvetica,sans-serif; text-align:center}\r\n#charmap #codeV {font-size:40px; height:80px; border:1px solid #AAA; text-align:center}\r\n\r\n/* Source */\r\n.wordWrapCode {vertical-align:middle; border:1px none #000000; background:transparent;}\r\n.mceActionPanel {margin-top:5px;}\r\n\r\n/* Tabs classes */\r\n.tabs {width:100%; height:18px; line-height:normal;}\r\n.tabs ul {margin:0; padding:0; list-style:none;}\r\n.tabs li {float:left; border: 1px solid black; border-bottom:0; margin:0 2px 0 0; padding:0 0 0 10px; line-height:17px; height:18px; display:block; cursor:pointer;}\r\n.tabs li.current {font-weight: bold; margin-right:2px;}\r\n.tabs span {float:left; display:block; padding:0px 10px 0 0;}\r\n.tabs a {text-decoration:none; font-family:Verdana, Arial; font-size:10px;}\r\n.tabs a:link, .tabs a:visited, .tabs a:hover {color:black;}\r\n\r\n/* Panels */\r\n.panel_wrapper div.panel {display:none;}\r\n.panel_wrapper div.current {display:block; width:100%; height:300px; overflow:visible;}\r\n.panel_wrapper {border:1px solid #919B9C; padding:10px; padding-top:5px; clear:both; background:white;}\r\n\r\n/* Columns */\r\n.column {float:left;}\r\n.properties {width:100%;}\r\n.properties .column1 {}\r\n.properties .column2 {text-align:left;}\r\n\r\n/* Titles */\r\nh1, h2, h3, h4 {color:#2B6FB6; margin:0; padding:0; padding-top:5px;}\r\nh3 {font-size:14px;}\r\n.title {font-size:12px; font-weight:bold; color:#2B6FB6;}\r\n\r\n/* Dialog specific */\r\n#link .panel_wrapper, #link div.current {height:125px;}\r\n#image .panel_wrapper, #image div.current {height:200px;}\r\n#plugintable thead {font-weight:bold; background:#DDD;}\r\n#plugintable, #about #plugintable td {border:1px solid #919B9C;}\r\n#plugintable {width:96%; margin-top:10px;}\r\n#pluginscontainer {height:290px; overflow:auto;}\r\n#colorpicker #preview {float:right; width:50px; height:14px;line-height:1px; border:1px solid black; margin-left:5px;}\r\n#colorpicker #colors {float:left; border:1px solid gray; cursor:crosshair;}\r\n#colorpicker #light {border:1px solid gray; margin-left:5px; float:left;width:15px; height:150px; cursor:crosshair;}\r\n#colorpicker #light div {overflow:hidden;}\r\n#colorpicker #previewblock {float:right; padding-left:10px; height:20px;}\r\n#colorpicker .panel_wrapper div.current {height:175px;}\r\n#colorpicker #namedcolors {width:150px;}\r\n#colorpicker #namedcolors a {display:block; float:left; width:10px; height:10px; margin:1px 1px 0 0; overflow:hidden;}\r\n#colorpicker #colornamecontainer {margin-top:5px;}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/skins/highcontrast/ui.css",
    "content": "/* Reset */\r\n.highcontrastSkin table, .highcontrastSkin tbody, .highcontrastSkin a, .highcontrastSkin img, .highcontrastSkin tr, .highcontrastSkin div, .highcontrastSkin td, .highcontrastSkin iframe, .highcontrastSkin span, .highcontrastSkin *, .highcontrastSkin .mceText {border:0; margin:0; padding:0; vertical-align:baseline; border-collapse:separate;}\r\n.highcontrastSkin a:hover, .highcontrastSkin a:link, .highcontrastSkin a:visited, .highcontrastSkin a:active {text-decoration:none; font-weight:normal; cursor:default;}\r\n.highcontrastSkin table td {vertical-align:middle}\r\n\r\n.highcontrastSkin .mceIconOnly {display: block !important;}\r\n\r\n/* External */\r\n.highcontrastSkin .mceExternalToolbar {position:absolute; border:1px solid; border-bottom:0; display:none; background-color: white;}\r\n.highcontrastSkin .mceExternalToolbar td.mceToolbar {padding-right:13px;}\r\n.highcontrastSkin .mceExternalClose {position:absolute; top:3px; right:3px; width:7px; height:7px;}\r\n\r\n/* Layout */\r\n.highcontrastSkin table.mceLayout {border: 1px solid;}\r\n.highcontrastSkin .mceIframeContainer {border-top:1px solid; border-bottom:1px solid}\r\n.highcontrastSkin .mceStatusbar a:hover {text-decoration:underline}\r\n.highcontrastSkin .mceStatusbar {display:block; line-height:1.5em; overflow:visible;}\r\n.highcontrastSkin .mceStatusbar div {float:left}\r\n.highcontrastSkin .mceStatusbar a.mceResize {display:block; float:right; width:20px; height:20px; cursor:se-resize; outline:0}\r\n\r\n.highcontrastSkin .mceToolbar td { display: inline-block; float: left;}\r\n.highcontrastSkin .mceToolbar tr { display: block;}\r\n.highcontrastSkin .mceToolbar table { display: block; }\r\n\r\n/* Button */\r\n\r\n.highcontrastSkin .mceButton { display:block; margin: 2px; padding: 5px 10px;border: 1px solid; border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px; -ms-border-radius: 3px; height: 2em;}\r\n.highcontrastSkin .mceButton .mceVoiceLabel { height: 100%; vertical-align: center; line-height: 2em}\r\n.highcontrastSkin .mceButtonDisabled .mceVoiceLabel { opacity:0.6; -ms-filter:'alpha(opacity=60)'; filter:alpha(opacity=60);}\r\n.highcontrastSkin .mceButtonActive, .highcontrastSkin .mceButton:focus, .highcontrastSkin .mceButton:active { border: 5px solid; padding: 1px 6px;-webkit-focus-ring-color:none;outline:none;}\r\n\r\n/* Separator */\r\n.highcontrastSkin .mceSeparator {display:block; width:16px; height:26px;}\r\n\r\n/* ListBox */\r\n.highcontrastSkin .mceListBox { display: block; margin:2px;-webkit-focus-ring-color:none;outline:none;}\r\n.highcontrastSkin .mceListBox .mceText {padding: 5px 6px;  line-height: 2em; width: 15ex; overflow: hidden;}\r\n.highcontrastSkin .mceListBoxDisabled .mceText { opacity:0.6; -ms-filter:'alpha(opacity=60)'; filter:alpha(opacity=60);}\r\n.highcontrastSkin .mceListBox a.mceText { padding: 5px 10px; display: block; height: 2em; line-height: 2em; border: 1px solid; border-right: 0; border-radius: 3px 0px 0px 3px; -moz-border-radius: 3px 0px 0px 3px; -webkit-border-radius: 3px 0px 0px 3px; -ms-border-radius: 3px 0px 0px 3px;}\r\n.highcontrastSkin .mceListBox a.mceOpen { padding: 5px 4px; display: block; height: 2em; line-height: 2em; border: 1px solid; border-left: 0; border-radius: 0px 3px 3px 0px; -moz-border-radius: 0px 3px 3px 0px; -webkit-border-radius: 0px 3px 3px 0px; -ms-border-radius: 0px 3px 3px 0px;}\r\n.highcontrastSkin .mceListBox:focus a.mceText, .highcontrastSkin .mceListBox:active a.mceText { border-width: 5px; padding: 1px 10px 1px 6px;}\r\n.highcontrastSkin .mceListBox:focus a.mceOpen, .highcontrastSkin .mceListBox:active a.mceOpen { border-width: 5px; padding: 1px 0px 1px 4px;}\r\n\r\n.highcontrastSkin .mceListBoxMenu {overflow-y:auto}\r\n\r\n/* SplitButton */\r\n.highcontrastSkin .mceSplitButtonDisabled .mceAction {opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)}\r\n\r\n.highcontrastSkin .mceSplitButton { border-collapse: collapse; margin: 2px; height: 2em; line-height: 2em;-webkit-focus-ring-color:none;outline:none;}\r\n.highcontrastSkin .mceSplitButton td { display: table-cell; float: none; margin: 0; padding: 0; height: 2em;}\r\n.highcontrastSkin .mceSplitButton tr { display: table-row; }\r\n.highcontrastSkin table.mceSplitButton  { display: table; }\r\n.highcontrastSkin .mceSplitButton a.mceAction { padding: 5px 10px; display: block; height: 2em; line-height: 2em; overflow: hidden; border: 1px solid; border-right: 0; border-radius: 3px 0px 0px 3px; -moz-border-radius: 3px 0px 0px 3px; -webkit-border-radius: 3px 0px 0px 3px; -ms-border-radius: 3px 0px 0px 3px;}\r\n.highcontrastSkin .mceSplitButton a.mceOpen { padding: 5px 4px;  display: block; height: 2em; line-height: 2em; border: 1px solid; border-radius: 0px 3px 3px 0px; -moz-border-radius: 0px 3px 3px 0px; -webkit-border-radius: 0px 3px 3px 0px; -ms-border-radius: 0px 3px 3px 0px;}\r\n.highcontrastSkin .mceSplitButton .mceVoiceLabel { height: 2em; vertical-align: center; line-height: 2em; } \r\n.highcontrastSkin .mceSplitButton:focus a.mceAction, .highcontrastSkin .mceSplitButton:active a.mceAction { border-width: 5px; border-right-width: 1px; padding: 1px 10px 1px 6px;-webkit-focus-ring-color:none;outline:none;}\r\n.highcontrastSkin .mceSplitButton:focus a.mceOpen, .highcontrastSkin .mceSplitButton:active a.mceOpen { border-width: 5px; border-left-width: 1px; padding: 1px 0px 1px 4px;-webkit-focus-ring-color:none;outline:none;}\r\n\r\n/* Menu */\r\n.highcontrastSkin .mceNoIcons span.mceIcon {width:0;}\r\n.highcontrastSkin .mceMenu {position:absolute; left:0; top:0; z-index:1000; border:1px solid; }\r\n.highcontrastSkin .mceMenu table {background:white; color: black}\r\n.highcontrastSkin .mceNoIcons a .mceText {padding-left:10px}\r\n.highcontrastSkin .mceMenu a, .highcontrastSkin .mceMenu span, .highcontrastSkin .mceMenu {display:block;background:white; color: black}\r\n.highcontrastSkin .mceMenu td {height:2em}\r\n.highcontrastSkin .mceMenu a {position:relative;padding:3px 0 4px 0; display: block;}\r\n.highcontrastSkin .mceMenu .mceText {position:relative; display:block; cursor:default; margin:0; padding:0 25px 0 25px;}\r\n.highcontrastSkin .mceMenu pre.mceText {font-family:Monospace}\r\n.highcontrastSkin .mceMenu .mceIcon {position:absolute; top:0; left:0; width:26px;}\r\n.highcontrastSkin td.mceMenuItemSeparator {border-top:1px solid; height:1px}\r\n.highcontrastSkin .mceMenuItemTitle a {border:0; border-bottom:1px solid}\r\n.highcontrastSkin .mceMenuItemTitle span.mceText {font-weight:bold; padding-left:4px}\r\n.highcontrastSkin .mceNoIcons .mceMenuItemSelected span.mceText:before {content: \"\\2713\\A0\";}\r\n.highcontrastSkin .mceMenu span.mceMenuLine {display:none}\r\n.highcontrastSkin .mceMenuItemSub a .mceText:after {content: \"\\A0\\25B8\"}\r\n.highcontrastSkin .mceMenuItem td, .highcontrastSkin .mceMenuItem th {line-height: normal}\r\n\r\n/* ColorSplitButton */\r\n.highcontrastSkin div.mceColorSplitMenu table {background:#FFF; border:1px solid; color: #000}\r\n.highcontrastSkin .mceColorSplitMenu td {padding:2px}\r\n.highcontrastSkin .mceColorSplitMenu a {display:block; width:16px; height:16px; overflow:hidden; color:#000; margin: 0; padding: 0;}\r\n.highcontrastSkin .mceColorSplitMenu td.mceMoreColors {padding:1px 3px 1px 1px}\r\n.highcontrastSkin .mceColorSplitMenu a.mceMoreColors {width:100%; height:auto; text-align:center; font-family:Tahoma,Verdana,Arial,Helvetica; font-size:11px; line-height:20px; border:1px solid #FFF}\r\n.highcontrastSkin .mceColorSplitMenu a.mceMoreColors:hover {border:1px solid; background-color:#B6BDD2}\r\n.highcontrastSkin a.mceMoreColors:hover {border:1px solid #0A246A; color: #000;}\r\n.highcontrastSkin .mceColorPreview {display:none;}\r\n.highcontrastSkin .mce_forecolor span.mceAction, .highcontrastSkin .mce_backcolor span.mceAction {height:17px;overflow:hidden}\r\n\r\n/* Progress,Resize */\r\n.highcontrastSkin .mceBlocker {position:absolute; left:0; top:0; z-index:1000; opacity:0.5; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=50); background:#FFF}\r\n.highcontrastSkin .mceProgress {position:absolute; left:0; top:0; z-index:1001; background:url(../default/img/progress.gif) no-repeat; width:32px; height:32px; margin:-16px 0 0 -16px}\r\n\r\n/* Formats */\r\n.highcontrastSkin .mce_p span.mceText {}\r\n.highcontrastSkin .mce_address span.mceText {font-style:italic}\r\n.highcontrastSkin .mce_pre span.mceText {font-family:monospace}\r\n.highcontrastSkin .mce_h1 span.mceText {font-weight:bolder; font-size: 2em}\r\n.highcontrastSkin .mce_h2 span.mceText {font-weight:bolder; font-size: 1.5em}\r\n.highcontrastSkin .mce_h3 span.mceText {font-weight:bolder; font-size: 1.17em}\r\n.highcontrastSkin .mce_h4 span.mceText {font-weight:bolder; font-size: 1em}\r\n.highcontrastSkin .mce_h5 span.mceText {font-weight:bolder; font-size: .83em}\r\n.highcontrastSkin .mce_h6 span.mceText {font-weight:bolder; font-size: .75em}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/skins/o2k7/content.css",
    "content": "body, td, pre {color:#000; font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px; margin:8px;}\r\nbody {background:#FFF;}\r\nbody.mceForceColors {background:#FFF; color:#000;}\r\nh1 {font-size: 2em}\r\nh2 {font-size: 1.5em}\r\nh3 {font-size: 1.17em}\r\nh4 {font-size: 1em}\r\nh5 {font-size: .83em}\r\nh6 {font-size: .75em}\r\n.mceItemTable, .mceItemTable td, .mceItemTable th, .mceItemTable caption, .mceItemVisualAid {border: 1px dashed #BBB;}\r\na.mceItemAnchor {display:inline-block; width:11px !important; height:11px  !important; background:url(../default/img/items.gif) no-repeat 0 0;}\r\nspan.mceItemNbsp {background: #DDD}\r\ntd.mceSelected, th.mceSelected {background-color:#3399ff !important}\r\nimg {border:0;}\r\ntable, img, hr, .mceItemAnchor {cursor:default}\r\ntable td, table th {cursor:text}\r\nins {border-bottom:1px solid green; text-decoration: none; color:green}\r\ndel {color:red; text-decoration:line-through}\r\ncite {border-bottom:1px dashed blue}\r\nacronym {border-bottom:1px dotted #CCC; cursor:help}\r\nabbr {border-bottom:1px dashed #CCC; cursor:help}\r\n\r\n/* IE */\r\n* html body {\r\nscrollbar-3dlight-color:#F0F0EE;\r\nscrollbar-arrow-color:#676662;\r\nscrollbar-base-color:#F0F0EE;\r\nscrollbar-darkshadow-color:#DDD;\r\nscrollbar-face-color:#E0E0DD;\r\nscrollbar-highlight-color:#F0F0EE;\r\nscrollbar-shadow-color:#F0F0EE;\r\nscrollbar-track-color:#F5F5F5;\r\n}\r\n\r\nimg:-moz-broken {-moz-force-broken-image-icon:1; width:24px; height:24px}\r\nfont[face=mceinline] {font-family:inherit !important}\r\n*[contentEditable]:focus {outline:0}\r\n\r\n.mceItemMedia {border:1px dotted #cc0000; background-position:center; background-repeat:no-repeat; background-color:#ffffcc}\r\n.mceItemShockWave {background-image:url(../../img/shockwave.gif)}\r\n.mceItemFlash {background-image:url(../../img/flash.gif)}\r\n.mceItemQuickTime {background-image:url(../../img/quicktime.gif)}\r\n.mceItemWindowsMedia {background-image:url(../../img/windowsmedia.gif)}\r\n.mceItemRealMedia {background-image:url(../../img/realmedia.gif)}\r\n.mceItemVideo {background-image:url(../../img/video.gif)}\r\n.mceItemAudio {background-image:url(../../img/video.gif)}\r\n.mceItemIframe {background-image:url(../../img/iframe.gif)}\r\n.mcePageBreak {display:block;border:0;width:100%;height:12px;border-top:1px dotted #ccc;margin-top:15px;background:#fff url(../../img/pagebreak.gif) no-repeat center top;}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/skins/o2k7/dialog.css",
    "content": "/* Generic */\r\nbody {\r\nfont-family:Verdana, Arial, Helvetica, sans-serif; font-size:11px;\r\nscrollbar-3dlight-color:#F0F0EE;\r\nscrollbar-arrow-color:#676662;\r\nscrollbar-base-color:#F0F0EE;\r\nscrollbar-darkshadow-color:#DDDDDD;\r\nscrollbar-face-color:#E0E0DD;\r\nscrollbar-highlight-color:#F0F0EE;\r\nscrollbar-shadow-color:#F0F0EE;\r\nscrollbar-track-color:#F5F5F5;\r\nbackground:#F0F0EE;\r\npadding:0;\r\nmargin:8px 8px 0 8px;\r\n}\r\n\r\nhtml {background:#F0F0EE;}\r\ntd {font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px;}\r\ntextarea {resize:none;outline:none;}\r\na:link, a:visited {color:black;}\r\na:hover {color:#2B6FB6;}\r\n.nowrap {white-space: nowrap}\r\n\r\n/* Forms */\r\nfieldset {margin:0; padding:4px; border:1px solid #919B9C; font-family:Verdana, Arial; font-size:10px;}\r\nlegend {color:#2B6FB6; font-weight:bold;}\r\nlabel.msg {display:none;}\r\nlabel.invalid {color:#EE0000; display:inline;}\r\ninput.invalid {border:1px solid #EE0000;}\r\ninput {background:#FFF; border:1px solid #CCC;}\r\ninput, select, textarea {font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px;}\r\ninput, select, textarea {border:1px solid #808080;}\r\ninput.radio {border:1px none #000000; background:transparent; vertical-align:middle;}\r\ninput.checkbox {border:1px none #000000; background:transparent; vertical-align:middle;}\r\n.input_noborder {border:0;}\r\n\r\n/* Buttons */\r\n#insert, #cancel, input.button, .updateButton {\r\nborder:0; margin:0; padding:0;\r\nfont-weight:bold;\r\nwidth:94px; height:26px;\r\nbackground:url(../default/img/buttons.png) 0 -26px;\r\ncursor:pointer;\r\npadding-bottom:2px;\r\nfloat:left;\r\n}\r\n\r\n#insert {background:url(../default/img/buttons.png) 0 -52px}\r\n#cancel {background:url(../default/img/buttons.png) 0 0; float:right}\r\n\r\n/* Browse */\r\na.pickcolor, a.browse {text-decoration:none}\r\na.browse span {display:block; width:20px; height:18px; background:url(../../img/icons.gif) -860px 0; border:1px solid #FFF; margin-left:1px;}\r\n.mceOldBoxModel a.browse span {width:22px; height:20px;}\r\na.browse:hover span {border:1px solid #0A246A; background-color:#B2BBD0;}\r\na.browse span.disabled {border:1px solid white; opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)}\r\na.browse:hover span.disabled {border:1px solid white; background-color:transparent;}\r\na.pickcolor span {display:block; width:20px; height:16px; background:url(../../img/icons.gif) -840px 0; margin-left:2px;}\r\n.mceOldBoxModel a.pickcolor span {width:21px; height:17px;}\r\na.pickcolor:hover span {background-color:#B2BBD0;}\r\na.pickcolor:hover span.disabled {}\r\n\r\n/* Charmap */\r\ntable.charmap {border:1px solid #AAA; text-align:center}\r\ntd.charmap, #charmap a {width:18px; height:18px; color:#000; border:1px solid #AAA; text-align:center; font-size:12px; vertical-align:middle; line-height: 18px;}\r\n#charmap a {display:block; color:#000; text-decoration:none; border:0}\r\n#charmap a:hover {background:#CCC;color:#2B6FB6}\r\n#charmap #codeN {font-size:10px; font-family:Arial,Helvetica,sans-serif; text-align:center}\r\n#charmap #codeV {font-size:40px; height:80px; border:1px solid #AAA; text-align:center}\r\n\r\n/* Source */\r\n.wordWrapCode {vertical-align:middle; border:1px none #000000; background:transparent;}\r\n.mceActionPanel {margin-top:5px;}\r\n\r\n/* Tabs classes */\r\n.tabs {width:100%; height:18px; line-height:normal; background:url(../default/img/tabs.gif) repeat-x 0 -72px;}\r\n.tabs ul {margin:0; padding:0; list-style:none;}\r\n.tabs li {float:left; background:url(../default/img/tabs.gif) no-repeat 0 0; margin:0 2px 0 0; padding:0 0 0 10px; line-height:17px; height:18px; display:block;}\r\n.tabs li.current {background:url(../default/img/tabs.gif) no-repeat 0 -18px; margin-right:2px;}\r\n.tabs span {float:left; display:block; background:url(../default/img/tabs.gif) no-repeat right -36px; padding:0px 10px 0 0;}\r\n.tabs .current span {background:url(../default/img/tabs.gif) no-repeat right -54px;}\r\n.tabs a {text-decoration:none; font-family:Verdana, Arial; font-size:10px;}\r\n.tabs a:link, .tabs a:visited, .tabs a:hover {color:black;}\r\n\r\n/* Panels */\r\n.panel_wrapper div.panel {display:none;}\r\n.panel_wrapper div.current {display:block; width:100%; height:300px; overflow:visible;}\r\n.panel_wrapper {border:1px solid #919B9C; border-top:0px; padding:10px; padding-top:5px; clear:both; background:white;}\r\n\r\n/* Columns */\r\n.column {float:left;}\r\n.properties {width:100%;}\r\n.properties .column1 {}\r\n.properties .column2 {text-align:left;}\r\n\r\n/* Titles */\r\nh1, h2, h3, h4 {color:#2B6FB6; margin:0; padding:0; padding-top:5px;}\r\nh3 {font-size:14px;}\r\n.title {font-size:12px; font-weight:bold; color:#2B6FB6;}\r\n\r\n/* Dialog specific */\r\n#link .panel_wrapper, #link div.current {height:125px;}\r\n#image .panel_wrapper, #image div.current {height:200px;}\r\n#plugintable thead {font-weight:bold; background:#DDD;}\r\n#plugintable, #about #plugintable td {border:1px solid #919B9C;}\r\n#plugintable {width:96%; margin-top:10px;}\r\n#pluginscontainer {height:290px; overflow:auto;}\r\n#colorpicker #preview {float:right; width:50px; height:14px;line-height:1px; border:1px solid black; margin-left:5px;}\r\n#colorpicker #colors {float:left; border:1px solid gray; cursor:crosshair;}\r\n#colorpicker #light {border:1px solid gray; margin-left:5px; float:left;width:15px; height:150px; cursor:crosshair;}\r\n#colorpicker #light div {overflow:hidden;}\r\n#colorpicker #previewblock {float:right; padding-left:10px; height:20px;}\r\n#colorpicker .panel_wrapper div.current {height:175px;}\r\n#colorpicker #namedcolors {width:150px;}\r\n#colorpicker #namedcolors a {display:block; float:left; width:10px; height:10px; margin:1px 1px 0 0; overflow:hidden;}\r\n#colorpicker #colornamecontainer {margin-top:5px;}\r\n#colorpicker #picker_panel fieldset {margin:auto;width:325px;}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/skins/o2k7/ui.css",
    "content": "/* Reset */\r\n.o2k7Skin table, .o2k7Skin tbody, .o2k7Skin a, .o2k7Skin img, .o2k7Skin tr, .o2k7Skin div, .o2k7Skin td, .o2k7Skin iframe, .o2k7Skin span, .o2k7Skin *, .o2k7Skin .mceText {border:0; margin:0; padding:0; background:transparent; white-space:nowrap; text-decoration:none; font-weight:normal; cursor:default; color:#000; vertical-align:baseline; width:auto; border-collapse:separate; text-align:left}\r\n.o2k7Skin a:hover, .o2k7Skin a:link, .o2k7Skin a:visited, .o2k7Skin a:active {text-decoration:none; font-weight:normal; cursor:default; color:#000}\r\n.o2k7Skin table td {vertical-align:middle}\r\n\r\n/* Containers */\r\n.o2k7Skin table {background:transparent}\r\n.o2k7Skin iframe {display:block;}\r\n.o2k7Skin .mceToolbar {height:26px}\r\n\r\n/* External */\r\n.o2k7Skin .mceExternalToolbar {position:absolute; border:1px solid #ABC6DD; border-bottom:0; display:none}\r\n.o2k7Skin .mceExternalToolbar td.mceToolbar {padding-right:13px;}\r\n.o2k7Skin .mceExternalClose {position:absolute; top:3px; right:3px; width:7px; height:7px; background:url(../../img/icons.gif) -820px 0}\r\n\r\n/* Layout */\r\n.o2k7Skin table.mceLayout {border:0; border-left:1px solid #ABC6DD; border-right:1px solid #ABC6DD}\r\n.o2k7Skin table.mceLayout tr.mceFirst td {border-top:1px solid #ABC6DD}\r\n.o2k7Skin table.mceLayout tr.mceLast td {border-bottom:1px solid #ABC6DD}\r\n.o2k7Skin table.mceToolbar, .o2k7Skin tr.mceFirst .mceToolbar tr td, .o2k7Skin tr.mceLast .mceToolbar tr td {border:0; margin:0; padding:0}\r\n.o2k7Skin .mceIframeContainer {border-top:1px solid #ABC6DD; border-bottom:1px solid #ABC6DD}\r\n.o2k7Skin td.mceToolbar{background:#E5EFFD}\r\n.o2k7Skin .mceStatusbar {background:#E5EFFD; display:block; font-family:'MS Sans Serif',sans-serif,Verdana,Arial; font-size:9pt; line-height:16px; overflow:visible; color:#000; height:20px}\r\n.o2k7Skin .mceStatusbar div {float:left; padding:2px}\r\n.o2k7Skin .mceStatusbar a.mceResize {display:block; float:right; background:url(../../img/icons.gif) -800px 0; width:20px; height:20px; cursor:se-resize; outline:0}\r\n.o2k7Skin .mceStatusbar a:hover {text-decoration:underline}\r\n.o2k7Skin table.mceToolbar {margin-left:3px}\r\n.o2k7Skin .mceToolbar .mceToolbarStart span {display:block; background:url(img/button_bg.png) -22px 0; width:1px; height:22px; margin-left:3px;}\r\n.o2k7Skin .mceToolbar td.mceFirst span {margin:0}\r\n.o2k7Skin .mceToolbar .mceToolbarEnd span {display:block; background:url(img/button_bg.png) -22px 0; width:1px; height:22px}\r\n.o2k7Skin .mceToolbar .mceToolbarEndListBox span, .o2k7Skin .mceToolbar .mceToolbarStartListBox span {display:none}\r\n.o2k7Skin span.mceIcon, .o2k7Skin img.mceIcon {display:block; width:20px; height:20px}\r\n.o2k7Skin .mceIcon {background:url(../../img/icons.gif) no-repeat 20px 20px}\r\n.o2k7Skin td.mceCenter {text-align:center;}\r\n.o2k7Skin td.mceCenter table {margin:0 auto; text-align:left;}\r\n.o2k7Skin td.mceRight table {margin:0 0 0 auto;}\r\n\r\n/* Button */\r\n.o2k7Skin .mceButton {display:block; background:url(img/button_bg.png); width:22px; height:22px}\r\n.o2k7Skin a.mceButton span, .o2k7Skin a.mceButton img {margin-left:1px}\r\n.o2k7Skin .mceOldBoxModel a.mceButton span, .o2k7Skin .mceOldBoxModel a.mceButton img {margin:0 0 0 1px}\r\n.o2k7Skin a.mceButtonEnabled:hover {background-color:#B2BBD0; background-position:0 -22px}\r\n.o2k7Skin a.mceButtonActive, .o2k7Skin a.mceButtonSelected {background-position:0 -44px}\r\n.o2k7Skin .mceButtonDisabled .mceIcon {opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)}\r\n.o2k7Skin .mceButtonLabeled {width:auto}\r\n.o2k7Skin .mceButtonLabeled span.mceIcon {float:left}\r\n.o2k7Skin span.mceButtonLabel {display:block; font-size:10px; padding:4px 6px 0 22px; font-family:Tahoma,Verdana,Arial,Helvetica}\r\n.o2k7Skin .mceButtonDisabled .mceButtonLabel {color:#888}\r\n\r\n/* Separator */\r\n.o2k7Skin .mceSeparator {display:block; background:url(img/button_bg.png) -22px 0; width:5px; height:22px}\r\n\r\n/* ListBox */\r\n.o2k7Skin .mceListBox  {padding-left: 3px}\r\n.o2k7Skin .mceListBox, .o2k7Skin .mceListBox a {display:block}\r\n.o2k7Skin .mceListBox .mceText {padding-left:4px; text-align:left; width:70px; border:1px solid #b3c7e1; border-right:0; background:#eaf2fb; font-family:Tahoma,Verdana,Arial,Helvetica; font-size:11px; height:20px; line-height:20px; overflow:hidden}\r\n.o2k7Skin .mceListBox .mceOpen {width:14px; height:22px; background:url(img/button_bg.png) -66px 0}\r\n.o2k7Skin table.mceListBoxEnabled:hover .mceText, .o2k7Skin .mceListBoxHover .mceText, .o2k7Skin .mceListBoxSelected .mceText {background:#FFF}\r\n.o2k7Skin table.mceListBoxEnabled:hover .mceOpen, .o2k7Skin .mceListBoxHover .mceOpen, .o2k7Skin .mceListBoxSelected .mceOpen {background-position:-66px -22px}\r\n.o2k7Skin .mceListBoxDisabled .mceText {color:gray}\r\n.o2k7Skin .mceListBoxMenu {overflow:auto; overflow-x:hidden; margin-left:3px}\r\n.o2k7Skin .mceOldBoxModel .mceListBox .mceText {height:22px}\r\n.o2k7Skin select.mceListBox {font-family:Tahoma,Verdana,Arial,Helvetica; font-size:12px; border:1px solid #b3c7e1; background:#FFF;}\r\n\r\n/* SplitButton */\r\n.o2k7Skin .mceSplitButton, .o2k7Skin .mceSplitButton a, .o2k7Skin .mceSplitButton span {display:block; height:22px; direction:ltr}\r\n.o2k7Skin .mceSplitButton {background:url(img/button_bg.png)}\r\n.o2k7Skin .mceSplitButton a.mceAction {width:22px}\r\n.o2k7Skin .mceSplitButton span.mceAction {width:22px; background-image:url(../../img/icons.gif)}\r\n.o2k7Skin .mceSplitButton a.mceOpen {width:10px; background:url(img/button_bg.png) -44px 0}\r\n.o2k7Skin .mceSplitButton span.mceOpen {display:none}\r\n.o2k7Skin table.mceSplitButtonEnabled:hover a.mceAction, .o2k7Skin .mceSplitButtonHover a.mceAction, .o2k7Skin .mceSplitButtonSelected {background:url(img/button_bg.png) 0 -22px}\r\n.o2k7Skin table.mceSplitButtonEnabled:hover a.mceOpen, .o2k7Skin .mceSplitButtonHover a.mceOpen, .o2k7Skin .mceSplitButtonSelected a.mceOpen {background-position:-44px -44px}\r\n.o2k7Skin .mceSplitButtonDisabled .mceAction {opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)}\r\n.o2k7Skin .mceSplitButtonActive {background-position:0 -44px}\r\n\r\n/* ColorSplitButton */\r\n.o2k7Skin div.mceColorSplitMenu table {background:#FFF; border:1px solid gray}\r\n.o2k7Skin .mceColorSplitMenu td {padding:2px}\r\n.o2k7Skin .mceColorSplitMenu a {display:block; width:9px; height:9px; overflow:hidden; border:1px solid #808080}\r\n.o2k7Skin .mceColorSplitMenu td.mceMoreColors {padding:1px 3px 1px 1px}\r\n.o2k7Skin .mceColorSplitMenu a.mceMoreColors {width:100%; height:auto; text-align:center; font-family:Tahoma,Verdana,Arial,Helvetica; font-size:11px; line-height:20px; border:1px solid #FFF}\r\n.o2k7Skin .mceColorSplitMenu a.mceMoreColors:hover {border:1px solid #0A246A; background-color:#B6BDD2}\r\n.o2k7Skin a.mceMoreColors:hover {border:1px solid #0A246A}\r\n.o2k7Skin .mceColorPreview {margin-left:2px; width:16px; height:4px; overflow:hidden; background:#9a9b9a;overflow:hidden}\r\n.o2k7Skin .mce_forecolor span.mceAction, .o2k7Skin .mce_backcolor span.mceAction {height:15px;overflow:hidden}\r\n\r\n/* Menu */\r\n.o2k7Skin .mceMenu {position:absolute; left:0; top:0; z-index:1000; border:1px solid #ABC6DD}\r\n.o2k7Skin .mceNoIcons span.mceIcon {width:0;}\r\n.o2k7Skin .mceNoIcons a .mceText {padding-left:10px}\r\n.o2k7Skin .mceMenu table {background:#FFF}\r\n.o2k7Skin .mceMenu a, .o2k7Skin .mceMenu span, .o2k7Skin .mceMenu {display:block}\r\n.o2k7Skin .mceMenu td {height:20px}\r\n.o2k7Skin .mceMenu a {position:relative;padding:3px 0 4px 0}\r\n.o2k7Skin .mceMenu .mceText {position:relative; display:block; font-family:Tahoma,Verdana,Arial,Helvetica; color:#000; cursor:default; margin:0; padding:0 25px 0 25px; display:block}\r\n.o2k7Skin .mceMenu span.mceText, .o2k7Skin .mceMenu .mcePreview {font-size:11px}\r\n.o2k7Skin .mceMenu pre.mceText {font-family:Monospace}\r\n.o2k7Skin .mceMenu .mceIcon {position:absolute; top:0; left:0; width:22px;}\r\n.o2k7Skin .mceMenu .mceMenuItemEnabled a:hover, .o2k7Skin .mceMenu .mceMenuItemActive {background-color:#dbecf3}\r\n.o2k7Skin td.mceMenuItemSeparator {background:#DDD; height:1px}\r\n.o2k7Skin .mceMenuItemTitle a {border:0; background:#E5EFFD; border-bottom:1px solid #ABC6DD}\r\n.o2k7Skin .mceMenuItemTitle span.mceText {color:#000; font-weight:bold; padding-left:4px}\r\n.o2k7Skin .mceMenuItemDisabled .mceText {color:#888}\r\n.o2k7Skin .mceMenuItemSelected .mceIcon {background:url(../default/img/menu_check.gif)}\r\n.o2k7Skin .mceNoIcons .mceMenuItemSelected a {background:url(../default/img/menu_arrow.gif) no-repeat -6px center}\r\n.o2k7Skin .mceMenu span.mceMenuLine {display:none}\r\n.o2k7Skin .mceMenuItemSub a {background:url(../default/img/menu_arrow.gif) no-repeat top right;}\r\n.o2k7Skin .mceMenuItem td, .o2k7Skin .mceMenuItem th {line-height: normal}\r\n\r\n/* Progress,Resize */\r\n.o2k7Skin .mceBlocker {position:absolute; left:0; top:0; z-index:1000; opacity:0.5; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=50); background:#FFF}\r\n.o2k7Skin .mceProgress {position:absolute; left:0; top:0; z-index:1001; background:url(../default/img/progress.gif) no-repeat; width:32px; height:32px; margin:-16px 0 0 -16px}\r\n\r\n/* Formats */\r\n.o2k7Skin .mce_formatPreview a {font-size:10px}\r\n.o2k7Skin .mce_p span.mceText {}\r\n.o2k7Skin .mce_address span.mceText {font-style:italic}\r\n.o2k7Skin .mce_pre span.mceText {font-family:monospace}\r\n.o2k7Skin .mce_h1 span.mceText {font-weight:bolder; font-size: 2em}\r\n.o2k7Skin .mce_h2 span.mceText {font-weight:bolder; font-size: 1.5em}\r\n.o2k7Skin .mce_h3 span.mceText {font-weight:bolder; font-size: 1.17em}\r\n.o2k7Skin .mce_h4 span.mceText {font-weight:bolder; font-size: 1em}\r\n.o2k7Skin .mce_h5 span.mceText {font-weight:bolder; font-size: .83em}\r\n.o2k7Skin .mce_h6 span.mceText {font-weight:bolder; font-size: .75em}\r\n\r\n/* Theme */\r\n.o2k7Skin span.mce_bold {background-position:0 0}\r\n.o2k7Skin span.mce_italic {background-position:-60px 0}\r\n.o2k7Skin span.mce_underline {background-position:-140px 0}\r\n.o2k7Skin span.mce_strikethrough {background-position:-120px 0}\r\n.o2k7Skin span.mce_undo {background-position:-160px 0}\r\n.o2k7Skin span.mce_redo {background-position:-100px 0}\r\n.o2k7Skin span.mce_cleanup {background-position:-40px 0}\r\n.o2k7Skin span.mce_bullist {background-position:-20px 0}\r\n.o2k7Skin span.mce_numlist {background-position:-80px 0}\r\n.o2k7Skin span.mce_justifyleft {background-position:-460px 0}\r\n.o2k7Skin span.mce_justifyright {background-position:-480px 0}\r\n.o2k7Skin span.mce_justifycenter {background-position:-420px 0}\r\n.o2k7Skin span.mce_justifyfull {background-position:-440px 0}\r\n.o2k7Skin span.mce_anchor {background-position:-200px 0}\r\n.o2k7Skin span.mce_indent {background-position:-400px 0}\r\n.o2k7Skin span.mce_outdent {background-position:-540px 0}\r\n.o2k7Skin span.mce_link {background-position:-500px 0}\r\n.o2k7Skin span.mce_unlink {background-position:-640px 0}\r\n.o2k7Skin span.mce_sub {background-position:-600px 0}\r\n.o2k7Skin span.mce_sup {background-position:-620px 0}\r\n.o2k7Skin span.mce_removeformat {background-position:-580px 0}\r\n.o2k7Skin span.mce_newdocument {background-position:-520px 0}\r\n.o2k7Skin span.mce_image {background-position:-380px 0}\r\n.o2k7Skin span.mce_help {background-position:-340px 0}\r\n.o2k7Skin span.mce_code {background-position:-260px 0}\r\n.o2k7Skin span.mce_hr {background-position:-360px 0}\r\n.o2k7Skin span.mce_visualaid {background-position:-660px 0}\r\n.o2k7Skin span.mce_charmap {background-position:-240px 0}\r\n.o2k7Skin span.mce_paste {background-position:-560px 0}\r\n.o2k7Skin span.mce_copy {background-position:-700px 0}\r\n.o2k7Skin span.mce_cut {background-position:-680px 0}\r\n.o2k7Skin span.mce_blockquote {background-position:-220px 0}\r\n.o2k7Skin .mce_forecolor span.mceAction {background-position:-720px 0}\r\n.o2k7Skin .mce_backcolor span.mceAction {background-position:-760px 0}\r\n.o2k7Skin span.mce_forecolorpicker {background-position:-720px 0}\r\n.o2k7Skin span.mce_backcolorpicker {background-position:-760px 0}\r\n\r\n/* Plugins */\r\n.o2k7Skin span.mce_advhr {background-position:-0px -20px}\r\n.o2k7Skin span.mce_ltr {background-position:-20px -20px}\r\n.o2k7Skin span.mce_rtl {background-position:-40px -20px}\r\n.o2k7Skin span.mce_emotions {background-position:-60px -20px}\r\n.o2k7Skin span.mce_fullpage {background-position:-80px -20px}\r\n.o2k7Skin span.mce_fullscreen {background-position:-100px -20px}\r\n.o2k7Skin span.mce_iespell {background-position:-120px -20px}\r\n.o2k7Skin span.mce_insertdate {background-position:-140px -20px}\r\n.o2k7Skin span.mce_inserttime {background-position:-160px -20px}\r\n.o2k7Skin span.mce_absolute {background-position:-180px -20px}\r\n.o2k7Skin span.mce_backward {background-position:-200px -20px}\r\n.o2k7Skin span.mce_forward {background-position:-220px -20px}\r\n.o2k7Skin span.mce_insert_layer {background-position:-240px -20px}\r\n.o2k7Skin span.mce_insertlayer {background-position:-260px -20px}\r\n.o2k7Skin span.mce_movebackward {background-position:-280px -20px}\r\n.o2k7Skin span.mce_moveforward {background-position:-300px -20px}\r\n.o2k7Skin span.mce_media {background-position:-320px -20px}\r\n.o2k7Skin span.mce_nonbreaking {background-position:-340px -20px}\r\n.o2k7Skin span.mce_pastetext {background-position:-360px -20px}\r\n.o2k7Skin span.mce_pasteword {background-position:-380px -20px}\r\n.o2k7Skin span.mce_selectall {background-position:-400px -20px}\r\n.o2k7Skin span.mce_preview {background-position:-420px -20px}\r\n.o2k7Skin span.mce_print {background-position:-440px -20px}\r\n.o2k7Skin span.mce_cancel {background-position:-460px -20px}\r\n.o2k7Skin span.mce_save {background-position:-480px -20px}\r\n.o2k7Skin span.mce_replace {background-position:-500px -20px}\r\n.o2k7Skin span.mce_search {background-position:-520px -20px}\r\n.o2k7Skin span.mce_styleprops {background-position:-560px -20px}\r\n.o2k7Skin span.mce_table {background-position:-580px -20px}\r\n.o2k7Skin span.mce_cell_props {background-position:-600px -20px}\r\n.o2k7Skin span.mce_delete_table {background-position:-620px -20px}\r\n.o2k7Skin span.mce_delete_col {background-position:-640px -20px}\r\n.o2k7Skin span.mce_delete_row {background-position:-660px -20px}\r\n.o2k7Skin span.mce_col_after {background-position:-680px -20px}\r\n.o2k7Skin span.mce_col_before {background-position:-700px -20px}\r\n.o2k7Skin span.mce_row_after {background-position:-720px -20px}\r\n.o2k7Skin span.mce_row_before {background-position:-740px -20px}\r\n.o2k7Skin span.mce_merge_cells {background-position:-760px -20px}\r\n.o2k7Skin span.mce_table_props {background-position:-980px -20px}\r\n.o2k7Skin span.mce_row_props {background-position:-780px -20px}\r\n.o2k7Skin span.mce_split_cells {background-position:-800px -20px}\r\n.o2k7Skin span.mce_template {background-position:-820px -20px}\r\n.o2k7Skin span.mce_visualchars {background-position:-840px -20px}\r\n.o2k7Skin span.mce_abbr {background-position:-860px -20px}\r\n.o2k7Skin span.mce_acronym {background-position:-880px -20px}\r\n.o2k7Skin span.mce_attribs {background-position:-900px -20px}\r\n.o2k7Skin span.mce_cite {background-position:-920px -20px}\r\n.o2k7Skin span.mce_del {background-position:-940px -20px}\r\n.o2k7Skin span.mce_ins {background-position:-960px -20px}\r\n.o2k7Skin span.mce_pagebreak {background-position:0 -40px}\r\n.o2k7Skin span.mce_restoredraft {background-position:-20px -40px}\r\n.o2k7Skin span.mce_spellchecker {background-position:-540px -20px}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/skins/o2k7/ui_black.css",
    "content": "/* Black */\r\n.o2k7SkinBlack .mceToolbar .mceToolbarStart span, .o2k7SkinBlack .mceToolbar .mceToolbarEnd span, .o2k7SkinBlack .mceButton, .o2k7SkinBlack .mceSplitButton, .o2k7SkinBlack .mceSeparator, .o2k7SkinBlack .mceSplitButton a.mceOpen, .o2k7SkinBlack .mceListBox a.mceOpen {background-image:url(img/button_bg_black.png)}\r\n.o2k7SkinBlack td.mceToolbar, .o2k7SkinBlack td.mceStatusbar, .o2k7SkinBlack .mceMenuItemTitle a, .o2k7SkinBlack .mceMenuItemTitle span.mceText, .o2k7SkinBlack .mceStatusbar div, .o2k7SkinBlack .mceStatusbar span, .o2k7SkinBlack .mceStatusbar a {background:#535353; color:#FFF}\r\n.o2k7SkinBlack table.mceListBoxEnabled .mceText, o2k7SkinBlack .mceListBox .mceText {background:#FFF; border:1px solid #CBCFD4; border-bottom-color:#989FA9; border-right:0}\r\n.o2k7SkinBlack table.mceListBoxEnabled:hover .mceText, .o2k7SkinBlack .mceListBoxHover .mceText, .o2k7SkinBlack .mceListBoxSelected .mceText {background:#FFF; border:1px solid #FFBD69; border-right:0}\r\n.o2k7SkinBlack .mceExternalToolbar, .o2k7SkinBlack .mceListBox .mceText, .o2k7SkinBlack div.mceMenu, .o2k7SkinBlack table.mceLayout, .o2k7SkinBlack .mceMenuItemTitle a, .o2k7SkinBlack table.mceLayout tr.mceFirst td, .o2k7SkinBlack table.mceLayout, .o2k7SkinBlack .mceMenuItemTitle a, .o2k7SkinBlack table.mceLayout tr.mceLast td, .o2k7SkinBlack .mceIframeContainer {border-color: #535353;}\r\n.o2k7SkinBlack table.mceSplitButtonEnabled:hover a.mceAction, .o2k7SkinBlack .mceSplitButtonHover a.mceAction, .o2k7SkinBlack .mceSplitButtonSelected {background-image:url(img/button_bg_black.png)}\r\n.o2k7SkinBlack .mceMenu .mceMenuItemEnabled a:hover, .o2k7SkinBlack .mceMenu .mceMenuItemActive {background-color:#FFE7A1}"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/skins/o2k7/ui_silver.css",
    "content": "/* Silver */\r\n.o2k7SkinSilver .mceToolbar .mceToolbarStart span, .o2k7SkinSilver .mceButton, .o2k7SkinSilver .mceSplitButton, .o2k7SkinSilver .mceSeparator, .o2k7SkinSilver .mceSplitButton a.mceOpen, .o2k7SkinSilver .mceListBox a.mceOpen {background-image:url(img/button_bg_silver.png)}\r\n.o2k7SkinSilver td.mceToolbar, .o2k7SkinSilver td.mceStatusbar, .o2k7SkinSilver .mceMenuItemTitle a {background:#eee}\r\n.o2k7SkinSilver .mceListBox .mceText {background:#FFF}\r\n.o2k7SkinSilver .mceExternalToolbar, .o2k7SkinSilver .mceListBox .mceText, .o2k7SkinSilver div.mceMenu, .o2k7SkinSilver table.mceLayout, .o2k7SkinSilver .mceMenuItemTitle a, .o2k7SkinSilver table.mceLayout tr.mceFirst td, .o2k7SkinSilver table.mceLayout, .o2k7SkinSilver .mceMenuItemTitle a, .o2k7SkinSilver table.mceLayout tr.mceLast td, .o2k7SkinSilver .mceIframeContainer {border-color: #bbb}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/advanced/source_editor.htm",
    "content": "<html xmlns=\"http://www.w3.org/1999/xhtml\">\r\n<head>\r\n\t<title>{#advanced_dlg.code_title}</title>\r\n\t<script type=\"text/javascript\" src=\"../../tiny_mce_popup.js\"></script>\r\n\t<script type=\"text/javascript\" src=\"js/source_editor.js\"></script>\r\n</head>\r\n<body onresize=\"resizeInputs();\" style=\"display:none; overflow:hidden;\">\r\n\t<form name=\"source\" onsubmit=\"saveContent();return false;\" action=\"#\">\r\n\t\t<div style=\"float: left\" class=\"title\"><label for=\"htmlSource\">{#advanced_dlg.code_title}</label></div>\r\n\r\n\t\t<div id=\"wrapline\" style=\"float: right\">\r\n\t\t\t<input type=\"checkbox\" name=\"wraped\" id=\"wraped\" onclick=\"toggleWordWrap(this);\" class=\"wordWrapCode\" /><label for=\"wraped\">{#advanced_dlg.code_wordwrap}</label>\r\n\t\t</div>\r\n\r\n\t\t<br style=\"clear: both\" />\r\n\r\n\t\t<textarea name=\"htmlSource\" id=\"htmlSource\" rows=\"15\" cols=\"100\" style=\"width: 100%; height: 100%; font-family: 'Courier New',Courier,monospace; font-size: 12px;\" dir=\"ltr\" wrap=\"off\" class=\"mceFocus\"></textarea>\r\n\r\n\t\t<div class=\"mceActionPanel\">\r\n\t\t\t<input type=\"submit\" role=\"button\" name=\"insert\" value=\"{#update}\" id=\"insert\" />\r\n\t\t\t<input type=\"button\" role=\"button\" name=\"cancel\" value=\"{#cancel}\" onclick=\"tinyMCEPopup.close();\" id=\"cancel\" />\r\n\t\t</div>\r\n\t</form>\r\n</body>\r\n</html>\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/simple/editor_template.js",
    "content": "(function(){var a=tinymce.DOM;tinymce.ThemeManager.requireLangPack(\"simple\");tinymce.create(\"tinymce.themes.SimpleTheme\",{init:function(c,d){var e=this,b=[\"Bold\",\"Italic\",\"Underline\",\"Strikethrough\",\"InsertUnorderedList\",\"InsertOrderedList\"],f=c.settings;e.editor=c;c.contentCSS.push(d+\"/skins/\"+f.skin+\"/content.css\");c.onInit.add(function(){c.onNodeChange.add(function(h,g){tinymce.each(b,function(i){g.get(i.toLowerCase()).setActive(h.queryCommandState(i))})})});a.loadCSS((f.editor_css?c.documentBaseURI.toAbsolute(f.editor_css):\"\")||d+\"/skins/\"+f.skin+\"/ui.css\")},renderUI:function(h){var e=this,i=h.targetNode,b,c,d=e.editor,f=d.controlManager,g;i=a.insertAfter(a.create(\"span\",{id:d.id+\"_container\",\"class\":\"mceEditor \"+d.settings.skin+\"SimpleSkin\"}),i);i=g=a.add(i,\"table\",{cellPadding:0,cellSpacing:0,\"class\":\"mceLayout\"});i=c=a.add(i,\"tbody\");i=a.add(c,\"tr\");i=b=a.add(a.add(i,\"td\"),\"div\",{\"class\":\"mceIframeContainer\"});i=a.add(a.add(c,\"tr\",{\"class\":\"last\"}),\"td\",{\"class\":\"mceToolbar mceLast\",align:\"center\"});c=e.toolbar=f.createToolbar(\"tools1\");c.add(f.createButton(\"bold\",{title:\"simple.bold_desc\",cmd:\"Bold\"}));c.add(f.createButton(\"italic\",{title:\"simple.italic_desc\",cmd:\"Italic\"}));c.add(f.createButton(\"underline\",{title:\"simple.underline_desc\",cmd:\"Underline\"}));c.add(f.createButton(\"strikethrough\",{title:\"simple.striketrough_desc\",cmd:\"Strikethrough\"}));c.add(f.createSeparator());c.add(f.createButton(\"undo\",{title:\"simple.undo_desc\",cmd:\"Undo\"}));c.add(f.createButton(\"redo\",{title:\"simple.redo_desc\",cmd:\"Redo\"}));c.add(f.createSeparator());c.add(f.createButton(\"cleanup\",{title:\"simple.cleanup_desc\",cmd:\"mceCleanup\"}));c.add(f.createSeparator());c.add(f.createButton(\"insertunorderedlist\",{title:\"simple.bullist_desc\",cmd:\"InsertUnorderedList\"}));c.add(f.createButton(\"insertorderedlist\",{title:\"simple.numlist_desc\",cmd:\"InsertOrderedList\"}));c.renderTo(i);return{iframeContainer:b,editorContainer:d.id+\"_container\",sizeContainer:g,deltaHeight:-20}},getInfo:function(){return{longname:\"Simple theme\",author:\"Moxiecode Systems AB\",authorurl:\"http://tinymce.moxiecode.com\",version:tinymce.majorVersion+\".\"+tinymce.minorVersion}}});tinymce.ThemeManager.add(\"simple\",tinymce.themes.SimpleTheme)})();"
  },
  {
    "path": "newscoop/js/tinymce/themes/simple/editor_template_src.js",
    "content": "/**\r\n * editor_template_src.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n(function() {\r\n\tvar DOM = tinymce.DOM;\r\n\r\n\t// Tell it to load theme specific language pack(s)\r\n\ttinymce.ThemeManager.requireLangPack('simple');\r\n\r\n\ttinymce.create('tinymce.themes.SimpleTheme', {\r\n\t\tinit : function(ed, url) {\r\n\t\t\tvar t = this, states = ['Bold', 'Italic', 'Underline', 'Strikethrough', 'InsertUnorderedList', 'InsertOrderedList'], s = ed.settings;\r\n\r\n\t\t\tt.editor = ed;\r\n\t\t\ted.contentCSS.push(url + \"/skins/\" + s.skin + \"/content.css\");\r\n\r\n\t\t\ted.onInit.add(function() {\r\n\t\t\t\ted.onNodeChange.add(function(ed, cm) {\r\n\t\t\t\t\ttinymce.each(states, function(c) {\r\n\t\t\t\t\t\tcm.get(c.toLowerCase()).setActive(ed.queryCommandState(c));\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t});\r\n\r\n\t\t\tDOM.loadCSS((s.editor_css ? ed.documentBaseURI.toAbsolute(s.editor_css) : '') || url + \"/skins/\" + s.skin + \"/ui.css\");\r\n\t\t},\r\n\r\n\t\trenderUI : function(o) {\r\n\t\t\tvar t = this, n = o.targetNode, ic, tb, ed = t.editor, cf = ed.controlManager, sc;\r\n\r\n\t\t\tn = DOM.insertAfter(DOM.create('span', {id : ed.id + '_container', 'class' : 'mceEditor ' + ed.settings.skin + 'SimpleSkin'}), n);\r\n\t\t\tn = sc = DOM.add(n, 'table', {cellPadding : 0, cellSpacing : 0, 'class' : 'mceLayout'});\r\n\t\t\tn = tb = DOM.add(n, 'tbody');\r\n\r\n\t\t\t// Create iframe container\r\n\t\t\tn = DOM.add(tb, 'tr');\r\n\t\t\tn = ic = DOM.add(DOM.add(n, 'td'), 'div', {'class' : 'mceIframeContainer'});\r\n\r\n\t\t\t// Create toolbar container\r\n\t\t\tn = DOM.add(DOM.add(tb, 'tr', {'class' : 'last'}), 'td', {'class' : 'mceToolbar mceLast', align : 'center'});\r\n\r\n\t\t\t// Create toolbar\r\n\t\t\ttb = t.toolbar = cf.createToolbar(\"tools1\");\r\n\t\t\ttb.add(cf.createButton('bold', {title : 'simple.bold_desc', cmd : 'Bold'}));\r\n\t\t\ttb.add(cf.createButton('italic', {title : 'simple.italic_desc', cmd : 'Italic'}));\r\n\t\t\ttb.add(cf.createButton('underline', {title : 'simple.underline_desc', cmd : 'Underline'}));\r\n\t\t\ttb.add(cf.createButton('strikethrough', {title : 'simple.striketrough_desc', cmd : 'Strikethrough'}));\r\n\t\t\ttb.add(cf.createSeparator());\r\n\t\t\ttb.add(cf.createButton('undo', {title : 'simple.undo_desc', cmd : 'Undo'}));\r\n\t\t\ttb.add(cf.createButton('redo', {title : 'simple.redo_desc', cmd : 'Redo'}));\r\n\t\t\ttb.add(cf.createSeparator());\r\n\t\t\ttb.add(cf.createButton('cleanup', {title : 'simple.cleanup_desc', cmd : 'mceCleanup'}));\r\n\t\t\ttb.add(cf.createSeparator());\r\n\t\t\ttb.add(cf.createButton('insertunorderedlist', {title : 'simple.bullist_desc', cmd : 'InsertUnorderedList'}));\r\n\t\t\ttb.add(cf.createButton('insertorderedlist', {title : 'simple.numlist_desc', cmd : 'InsertOrderedList'}));\r\n\t\t\ttb.renderTo(n);\r\n\r\n\t\t\treturn {\r\n\t\t\t\tiframeContainer : ic,\r\n\t\t\t\teditorContainer : ed.id + '_container',\r\n\t\t\t\tsizeContainer : sc,\r\n\t\t\t\tdeltaHeight : -20\r\n\t\t\t};\r\n\t\t},\r\n\r\n\t\tgetInfo : function() {\r\n\t\t\treturn {\r\n\t\t\t\tlongname : 'Simple theme',\r\n\t\t\t\tauthor : 'Moxiecode Systems AB',\r\n\t\t\t\tauthorurl : 'http://tinymce.moxiecode.com',\r\n\t\t\t\tversion : tinymce.majorVersion + \".\" + tinymce.minorVersion\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n\r\n\ttinymce.ThemeManager.add('simple', tinymce.themes.SimpleTheme);\r\n})();"
  },
  {
    "path": "newscoop/js/tinymce/themes/simple/langs/az.js",
    "content": "tinyMCE.addI18n('az.simple',{\"cleanup_desc\":\"\\u018fyri kodu t\\u0259mizl\\u0259\",\"redo_desc\":\"T\\u0259krarla (Ctrl+Y)\",\"undo_desc\":\"L\\u0259\\u011fv et (Ctrl+Z)\",\"numlist_desc\":\"N\\u00f6mr\\u0259l\\u0259nmi\\u015f siyah\\u0131\",\"bullist_desc\":\"Qeyd edilmi\\u015f siyah\\u0131\",\"striketrough_desc\":\"Qaralanm\\u0131\\u015f\",\"underline_desc\":\"Altdan x\\u0259tt (Ctrl+U)\",\"italic_desc\":\"Kursiv (Ctrl+I)\",\"bold_desc\":\"Yar\\u0131qal\\u0131n (Ctrl+B)\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/simple/langs/be.js",
    "content": "tinyMCE.addI18n('be.simple',{\"cleanup_desc\":\"\\u041f\\u0430\\u0447\\u044b\\u0441\\u0446\\u0456\\u0446\\u044c \\u0431\\u0440\\u0443\\u0434\\u043d\\u044b \\u043a\\u043e\\u0434\",\"redo_desc\":\"\\u041f\\u0430\\u045e\\u0442\\u0430\\u0440\\u044b\\u0446\\u044c (Ctrl+Y)\",\"undo_desc\":\"\\u0410\\u0434\\u043c\\u044f\\u043d\\u0456\\u0446\\u044c (Ctrl+Z)\",\"numlist_desc\":\"\\u041d\\u0443\\u043c\\u0430\\u0440\\u0430\\u0432\\u0430\\u043d\\u044b \\u0441\\u043f\\u0456\\u0441\",\"bullist_desc\":\"\\u041c\\u0430\\u0440\\u043a\\u0456\\u0440\\u0430\\u0432\\u0430\\u043d\\u044b \\u0441\\u043f\\u0456\\u0441\",\"striketrough_desc\":\"\\u041f\\u0435\\u0440\\u0430\\u043a\\u0440\\u044d\\u0441\\u043b\\u0435\\u043d\\u044b\",\"underline_desc\":\"\\u041f\\u0430\\u0434\\u043a\\u0440\\u044d\\u0441\\u043b\\u0435\\u043d\\u044b (Ctrl+U)\",\"italic_desc\":\"\\u041a\\u0443\\u0440\\u0441\\u0456\\u045e (Ctrl+I)\",\"bold_desc\":\"\\u0422\\u043b\\u0443\\u0441\\u0442\\u044b (Ctrl B)\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/simple/langs/da.js",
    "content": "tinyMCE.addI18n('da.simple',{\"cleanup_desc\":\"Ryd op i uordentlig kode\",\"redo_desc\":\"Gendan (Ctrl+Y)\",\"undo_desc\":\"Fortryd (Ctrl+Z)\",\"numlist_desc\":\"Nummereret punktopstilling\",\"bullist_desc\":\"Unummereret punktopstilling\",\"striketrough_desc\":\"Gennemstreget\",\"underline_desc\":\"Understreget (Ctrl+U)\",\"italic_desc\":\"Kursiv (Ctrl+I)\",\"bold_desc\":\"Fed (Ctrl+B)\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/simple/langs/el.js",
    "content": "tinyMCE.addI18n('el.simple',{\"cleanup_desc\":\"\\u039a\\u03b1\\u03b8\\u03b1\\u03c1\\u03b9\\u03c3\\u03bc\\u03cc\\u03c2 \\u03bc\\u03c0\\u03b5\\u03c1\\u03b4\\u03b5\\u03bc\\u03ad\\u03bd\\u03bf\\u03c5 \\u03ba\\u03ce\\u03b4\\u03b9\\u03ba\\u03b1\",\"redo_desc\":\"\\u0395\\u03c0\\u03b1\\u03bd\\u03ac\\u03bb\\u03b7\\u03c8\\u03b7 (Ctrl+Y)\",\"undo_desc\":\"\\u0391\\u03bd\\u03b1\\u03af\\u03c1\\u03b5\\u03c3\\u03b7 (Ctrl+Z)\",\"numlist_desc\":\"\\u039b\\u03af\\u03c3\\u03c4\\u03b1 \\u03bc\\u03b5 \\u03c3\\u03b5\\u03b9\\u03c1\\u03ac\",\"bullist_desc\":\"\\u039b\\u03af\\u03c3\\u03c4\\u03b1 \\u03c7\\u03c9\\u03c1\\u03af\\u03c2 \\u03c3\\u03b5\\u03b9\\u03c1\\u03ac\",\"striketrough_desc\":\"\\u0394\\u03b9\\u03b1\\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03b9\\u03c3\\u03bc\\u03ad\\u03bd\\u03b1\",\"underline_desc\":\"\\u03a5\\u03c0\\u03bf\\u03b3\\u03c1\\u03b1\\u03bc\\u03bc\\u03b9\\u03c3\\u03bc\\u03ad\\u03bd\\u03b1 (Ctrl+U)\",\"italic_desc\":\"\\u03a0\\u03bb\\u03ac\\u03b3\\u03b9\\u03b1 (Ctrl+I)\",\"bold_desc\":\"\\u0388\\u03bd\\u03c4\\u03bf\\u03bd\\u03b1 (Ctrl+B)\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/simple/langs/en.js",
    "content": "tinyMCE.addI18n('en.simple',{\"cleanup_desc\":\"Cleanup Messy Code\",\"redo_desc\":\"Redo (Ctrl+Y)\",\"undo_desc\":\"Undo (Ctrl+Z)\",\"numlist_desc\":\"Insert/Remove Numbered List\",\"bullist_desc\":\"Insert/Remove Bulleted List\",\"striketrough_desc\":\"Strikethrough\",\"underline_desc\":\"Underline (Ctrl+U)\",\"italic_desc\":\"Italic (Ctrl+I)\",\"bold_desc\":\"Bold (Ctrl+B)\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/simple/langs/he.js",
    "content": "tinyMCE.addI18n('he.simple',{\"cleanup_desc\":\"\\u05e0\\u05e7\\u05d4 \\u05e7\\u05d5\\u05d3\",\"redo_desc\":\" (Ctrl+Y)\",\"undo_desc\":\"\\u05d1\\u05d9\\u05d8\\u05d5\\u05dc \\u05e4\\u05e2\\u05d5\\u05dc\\u05d4 (Ctrl+Z)\",\"numlist_desc\":\"\\u05de\\u05e1\\u05e4\\u05d5\\u05e8\",\"bullist_desc\":\"\\u05ea\\u05d1\\u05dc\\u05d9\\u05d8\\u05d9\\u05dd\",\"striketrough_desc\":\"\\u05e7\\u05d5 \\u05d7\\u05d5\\u05e6\\u05d4\",\"underline_desc\":\"\\u05e7\\u05d5 \\u05ea\\u05d7\\u05ea\\u05d5\\u05df (Ctrl+U)\",\"italic_desc\":\"\\u05e0\\u05d8\\u05d5\\u05d9 (Ctrl+I)\",\"bold_desc\":\"\\u05de\\u05d5\\u05d3\\u05d2\\u05e9 (Ctrl+B)\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/simple/langs/hu.js",
    "content": "tinyMCE.addI18n('hu.simple',{\"cleanup_desc\":\"Minden form\\u00e1z\\u00e1s elt\\u00e1vol\\u00edt\\u00e1sa\",\"redo_desc\":\"M\\u00e9gis v\\u00e9grehajt (Ctrl+Y)\",\"undo_desc\":\"Visszavon\\u00e1s (Ctrl+Z)\",\"numlist_desc\":\"Sz\\u00e1mozott lista besz\\u00far\\u00e1sa/elt\\u00e1vol\\u00edt\\u00e1sa\",\"bullist_desc\":\"Felsorol\\u00e1s besz\\u00far\\u00e1sa/elt\\u00e1vol\\u00edt\\u00e1sa\",\"striketrough_desc\":\"\\u00c1th\\u00fazott\",\"underline_desc\":\"Al\\u00e1h\\u00fazott (Ctrl+U)\",\"italic_desc\":\"D\\u0151lt (Ctrl+I)\",\"bold_desc\":\"F\\u00e9lk\\u00f6v\\u00e9r (Ctrl+B)\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/simple/langs/hy.js",
    "content": "tinyMCE.addI18n('hy.simple',{\"cleanup_desc\":\"\\u0540\\u0565\\u057c\\u0561\\u0581\\u0576\\u0565\\u056c \\u0561\\u057e\\u0565\\u056c\\u0578\\u0580\\u0564 \\u056f\\u0578\\u0564\\u0568\",\"redo_desc\":\"\\u0531\\u057c\\u0561\\u057b (Ctrl + Y)\",\"undo_desc\":\"\\u0535\\u057f (Ctrl + Z)\",\"numlist_desc\":\"\\u0551\\u0561\\u0576\\u056f\\u055d \\u0570\\u0561\\u0574\\u0561\\u0580\\u0561\\u056f\\u0561\\u056c\\u057e\\u0561\\u056e\",\"bullist_desc\":\"\\u0551\\u0561\\u0576\\u056f\",\"striketrough_desc\":\"\\u0531\\u0580\\u057f\\u0561\\u0563\\u056e\\u057e\\u0561\\u056e\",\"underline_desc\":\"\\u0538\\u0576\\u0564\\u0563\\u056e\\u057e\\u0561\\u056e (Ctrl + U)\",\"italic_desc\":\"\\u0547\\u0565\\u0572 (Ctrl + I)\",\"bold_desc\":\"\\u0540\\u0561\\u057d\\u057f (Ctrl + B)\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/simple/langs/it.js",
    "content": "tinyMCE.addI18n('it.simple',{\"cleanup_desc\":\"Pulisci codice disordinato\",\"redo_desc\":\"Ripristina (Ctrl+Y)\",\"undo_desc\":\"Annulla (Ctrl+Z)\",\"numlist_desc\":\"Lista ordinata\",\"bullist_desc\":\"Lista non ordinata\",\"striketrough_desc\":\"Barrato\",\"underline_desc\":\"Sottolineato (Ctrl+U)\",\"italic_desc\":\"Corsivo (Ctrl+I)\",\"bold_desc\":\"Grassetto (Ctrl+B)\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/simple/langs/ka.js",
    "content": "tinyMCE.addI18n('ka.simple',{\"cleanup_desc\":\"\\u10d6\\u10d4\\u10d3\\u10db\\u10d4\\u10e2\\u10d8 \\u10d9\\u10dd\\u10d3\\u10d8\\u10e1 \\u10db\\u10dd\\u10ea\\u10d8\\u10da\\u10d4\\u10d1\\u10d0\",\"redo_desc\":\"\\u10d3\\u10d0\\u10d1\\u10e0\\u10e3\\u10dc\\u10d4\\u10d1\\u10d0 (Ctrl+Y)\",\"undo_desc\":\"\\u10d2\\u10d0\\u10e3\\u10d6\\u10db\\u10d4\\u10d1\\u10d0 (Ctrl+Z)\",\"numlist_desc\":\"\\u10d3\\u10d0\\u10dc\\u10dd\\u10db\\u10e0\\u10d8\\u10da\\u10d8 \\u10e1\\u10d8\\u10d0\",\"bullist_desc\":\"\\u10db\\u10d0\\u10e0\\u10d9\\u10d8\\u10e0\\u10d4\\u10d1\\u10e3\\u10da\\u10d8 \\u10e1\\u10d8\\u10d0\",\"striketrough_desc\":\"\\u10d2\\u10d0\\u10d3\\u10d0\\u10ee\\u10d0\\u10d6\\u10e3\\u10da\\u10d8\",\"underline_desc\":\"\\u10db\\u10dd\\u10ee\\u10d0\\u10d6\\u10e3\\u10da\\u10d8 (Ctrl+U)\",\"italic_desc\":\"\\u10d3\\u10d0\\u10ee\\u10e0\\u10d8\\u10da\\u10d8 (Ctrl+I)\",\"bold_desc\":\"\\u10e1\\u10e5\\u10d4\\u10da\\u10d8 (Ctrl+B)\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/simple/langs/ko.js",
    "content": "tinyMCE.addI18n('ko.simple',{\"cleanup_desc\":\"\\ubcf5\\uc7a1\\ud55c \\ucf54\\ub4dc \\uc815\\ub9ac\",\"redo_desc\":\"\\uc7ac\\uc2e4\\ud589(Ctrl Y)\",\"undo_desc\":\"\\uc2e4\\ud589 \\ucde8\\uc18c(Ctrl Z)\",\"numlist_desc\":\"\\ubc88\\ud638 \\ubaa9\\ub85d \\uc0bd\\uc785/\\uc81c\\uac70\",\"bullist_desc\":\"\\uae30\\ud638 \\ubaa9\\ub85d \\uc0bd\\uc785/\\uc81c\\uac70\",\"striketrough_desc\":\"\\ucde8\\uc18c\\uc120\",\"underline_desc\":\"\\ubc11\\uc904(Ctrl+U)\",\"italic_desc\":\"\\uae30\\uc6b8\\uc778 \\uae00\\uaf34(Ctrl I)\",\"bold_desc\":\"\\uad75\\uc740 \\uae00\\uaf34(Ctrl B)\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/simple/langs/nb.js",
    "content": "tinyMCE.addI18n('nb.simple',{\"cleanup_desc\":\"Rens ukurant kode\",\"redo_desc\":\"Gj\\u00f8r om (Ctrl + Y)\",\"undo_desc\":\"Angre (Ctrl+Z)\",\"numlist_desc\":\"Nummerliste\",\"bullist_desc\":\"Punktliste\",\"striketrough_desc\":\"Gjennomstreking\",\"underline_desc\":\"Understreking\",\"italic_desc\":\"Kursiv\",\"bold_desc\":\"Fet\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/simple/langs/tr.js",
    "content": "tinyMCE.addI18n('tr.simple',{\"cleanup_desc\":\"Da\\u011f\\u0131n\\u0131k kodu temizle\",\"redo_desc\":\"Yinele (Ctrl+Y)\",\"undo_desc\":\"Geri al (Ctrl+Z)\",\"numlist_desc\":\"S\\u0131ral\\u0131 liste\",\"bullist_desc\":\"S\\u0131ras\\u0131z liste\",\"striketrough_desc\":\"\\u00dcst\\u00fc \\u00e7izili\",\"underline_desc\":\"Alt\\u0131 \\u00e7izili (Ctrl+U)\",\"italic_desc\":\"\\u0130talik (Ctrl+I)\",\"bold_desc\":\"Kal\\u0131n (Ctrl+B)\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/simple/langs/uk.js",
    "content": "tinyMCE.addI18n('uk.simple',{\"cleanup_desc\":\"\\u0412\\u0438\\u0434\\u0430\\u043b\\u0438\\u0442\\u0438 \\u0437\\u0430\\u0439\\u0432\\u0438\\u0439 \\u043a\\u043e\\u0434\",\"redo_desc\":\"\\u041f\\u043e\\u0432\\u0435\\u0440\\u043d\\u0443\\u0442\\u0438 (Ctrl+Y)\",\"undo_desc\":\"\\u0412\\u0456\\u0434\\u043c\\u0456\\u043d\\u0438\\u0442\\u0438 (Ctrl+Z)\",\"numlist_desc\":\"\\u041d\\u0443\\u043c\\u0435\\u0440\\u043e\\u0432\\u0430\\u043d\\u0438\\u0439 \\u0441\\u043f\\u0438\\u0441\\u043e\\u043a\",\"bullist_desc\":\"\\u041d\\u0435\\u043d\\u0443\\u043c\\u0435\\u0440\\u043e\\u0432\\u0430\\u043d\\u0438\\u0439 \\u0441\\u043f\\u0438\\u0441\\u043e\\u043a\",\"striketrough_desc\":\"\\u0417\\u0430\\u043a\\u0440\\u0435\\u0441\\u043b\\u0435\\u043d\\u0438\\u0439\",\"underline_desc\":\"\\u041f\\u0456\\u0434\\u043a\\u0440\\u0435\\u0441\\u043b\\u0435\\u043d\\u0438\\u0439 (Ctrl+U)\",\"italic_desc\":\"\\u041a\\u0443\\u0440\\u0441\\u0438\\u0432 (Ctrl+I)\",\"bold_desc\":\"\\u0416\\u0438\\u0440\\u043d\\u0438\\u0439 (Ctrl+B)\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/simple/langs/zh-tw.js",
    "content": "tinyMCE.addI18n('zh-tw.simple',{\"cleanup_desc\":\"\\u6574\\u7406\\u8cc7\\u6599\",\"redo_desc\":\"\\u91cd\\u4f86 (Ctrl Y)\",\"undo_desc\":\"\\u5fa9\\u539f (Ctrl   Z)\",\"numlist_desc\":\"\\u9805\\u76ee\\u7b26\\u865f (\\u6709\\u6578\\u5b57\\u7684)\",\"bullist_desc\":\"\\u9805\\u76ee\\u7b26\\u865f\",\"striketrough_desc\":\"\\u522a\\u9664\\u7dda\",\"underline_desc\":\"\\u5e95\\u7dda (Ctrl U)\",\"italic_desc\":\"\\u659c\\u7dda (Ctrl I)\",\"bold_desc\":\"\\u52a0\\u7c97 (Ctrl B)\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/simple/langs/zh.js",
    "content": "tinyMCE.addI18n('zh.simple',{\"cleanup_desc\":\"\\u51c0\\u5316\\u4ee3\\u7801\",\"redo_desc\":\"\\u6062\\u590d(Ctrl Y)\",\"undo_desc\":\"\\u64a4\\u6d88(Ctrl Z)\",\"numlist_desc\":\"\\u7f16\\u53f7\\u5217\\u8868\",\"bullist_desc\":\"\\u9879\\u76ee\\u5217\\u8868\",\"striketrough_desc\":\"\\u5220\\u9664\\u7ebf\",\"underline_desc\":\"\\u4e0b\\u5212\\u7ebf(Ctrl U)\",\"italic_desc\":\"\\u659c\\u4f53(Ctrl I)\",\"bold_desc\":\"\\u7c97\\u4f53(Ctrl B)\"});"
  },
  {
    "path": "newscoop/js/tinymce/themes/simple/skins/default/content.css",
    "content": "body, td, pre {\r\n\tfont-family: Verdana, Arial, Helvetica, sans-serif;\r\n\tfont-size: 10px;\r\n}\r\n\r\nbody {\r\n\tbackground-color: #FFFFFF;\r\n}\r\n\r\n.mceVisualAid {\r\n\tborder: 1px dashed #BBBBBB;\r\n}\r\n\r\n/* MSIE specific */\r\n\r\n* html body {\r\n\tscrollbar-3dlight-color: #F0F0EE;\r\n\tscrollbar-arrow-color: #676662;\r\n\tscrollbar-base-color: #F0F0EE;\r\n\tscrollbar-darkshadow-color: #DDDDDD;\r\n\tscrollbar-face-color: #E0E0DD;\r\n\tscrollbar-highlight-color: #F0F0EE;\r\n\tscrollbar-shadow-color: #F0F0EE;\r\n\tscrollbar-track-color: #F5F5F5;\t\r\n}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/simple/skins/default/ui.css",
    "content": "/* Reset */\r\n.defaultSimpleSkin table, .defaultSimpleSkin tbody, .defaultSimpleSkin a, .defaultSimpleSkin img, .defaultSimpleSkin tr, .defaultSimpleSkin div, .defaultSimpleSkin td, .defaultSimpleSkin iframe, .defaultSimpleSkin span, .defaultSimpleSkin * {border:0; margin:0; padding:0; background:transparent; white-space:nowrap; text-decoration:none; font-weight:normal; cursor:default; color:#000}\r\n\r\n/* Containers */\r\n.defaultSimpleSkin {position:relative}\r\n.defaultSimpleSkin table.mceLayout {background:#F0F0EE; border:1px solid #CCC;}\r\n.defaultSimpleSkin iframe {display:block; background:#FFF; border-bottom:1px solid #CCC;}\r\n.defaultSimpleSkin .mceToolbar {height:24px;}\r\n\r\n/* Layout */\r\n.defaultSimpleSkin span.mceIcon, .defaultSimpleSkin img.mceIcon {display:block; width:20px; height:20px}\r\n.defaultSimpleSkin .mceIcon {background:url(../../img/icons.gif) no-repeat 20px 20px}\r\n\r\n/* Button */\r\n.defaultSimpleSkin .mceButton {display:block; border:1px solid #F0F0EE; width:20px; height:20px}\r\n.defaultSimpleSkin a.mceButtonEnabled:hover {border:1px solid #0A246A; background-color:#B2BBD0}\r\n.defaultSimpleSkin a.mceButtonActive {border:1px solid #0A246A; background-color:#C2CBE0}\r\n.defaultSimpleSkin .mceButtonDisabled span {opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)}\r\n\r\n/* Separator */\r\n.defaultSimpleSkin .mceSeparator {display:block; background:url(../../img/icons.gif) -180px 0; width:2px; height:20px; margin:0 2px 0 4px}\r\n\r\n/* Theme */\r\n.defaultSimpleSkin span.mce_bold {background-position:0 0}\r\n.defaultSimpleSkin span.mce_italic {background-position:-60px 0}\r\n.defaultSimpleSkin span.mce_underline {background-position:-140px 0}\r\n.defaultSimpleSkin span.mce_strikethrough {background-position:-120px 0}\r\n.defaultSimpleSkin span.mce_undo {background-position:-160px 0}\r\n.defaultSimpleSkin span.mce_redo {background-position:-100px 0}\r\n.defaultSimpleSkin span.mce_cleanup {background-position:-40px 0}\r\n.defaultSimpleSkin span.mce_insertunorderedlist {background-position:-20px 0}\r\n.defaultSimpleSkin span.mce_insertorderedlist {background-position:-80px 0}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/simple/skins/o2k7/content.css",
    "content": "body, td, pre {font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px;}\r\n\r\nbody {background: #FFF;}\r\n.mceVisualAid {border: 1px dashed #BBB;}\r\n\r\n/* IE */\r\n\r\n* html body {\r\nscrollbar-3dlight-color: #F0F0EE;\r\nscrollbar-arrow-color: #676662;\r\nscrollbar-base-color: #F0F0EE;\r\nscrollbar-darkshadow-color: #DDDDDD;\r\nscrollbar-face-color: #E0E0DD;\r\nscrollbar-highlight-color: #F0F0EE;\r\nscrollbar-shadow-color: #F0F0EE;\r\nscrollbar-track-color: #F5F5F5;\t\r\n}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/themes/simple/skins/o2k7/ui.css",
    "content": "/* Reset */\r\n.o2k7SimpleSkin table, .o2k7SimpleSkin tbody, .o2k7SimpleSkin a, .o2k7SimpleSkin img, .o2k7SimpleSkin tr, .o2k7SimpleSkin div, .o2k7SimpleSkin td, .o2k7SimpleSkin iframe, .o2k7SimpleSkin span, .o2k7SimpleSkin * {border:0; margin:0; padding:0; background:transparent; white-space:nowrap; text-decoration:none; font-weight:normal; cursor:default; color:#000}\r\n\r\n/* Containers */\r\n.o2k7SimpleSkin {position:relative}\r\n.o2k7SimpleSkin table.mceLayout {background:#E5EFFD; border:1px solid #ABC6DD;}\r\n.o2k7SimpleSkin iframe {display:block; background:#FFF; border-bottom:1px solid #ABC6DD;}\r\n.o2k7SimpleSkin .mceToolbar {height:26px;}\r\n\r\n/* Layout */\r\n.o2k7SimpleSkin .mceToolbar .mceToolbarStart span {display:block; background:url(img/button_bg.png) -22px 0; width:1px; height:22px; }\r\n.o2k7SimpleSkin .mceToolbar .mceToolbarEnd span {display:block; background:url(img/button_bg.png) -22px 0; width:1px; height:22px}\r\n.o2k7SimpleSkin span.mceIcon, .o2k7SimpleSkin img.mceIcon {display:block; width:20px; height:20px}\r\n.o2k7SimpleSkin .mceIcon {background:url(../../img/icons.gif) no-repeat 20px 20px}\r\n\r\n/* Button */\r\n.o2k7SimpleSkin .mceButton {display:block; background:url(img/button_bg.png); width:22px; height:22px}\r\n.o2k7SimpleSkin a.mceButton span, .o2k7SimpleSkin a.mceButton img {margin:1px 0 0 1px}\r\n.o2k7SimpleSkin a.mceButtonEnabled:hover {background-color:#B2BBD0; background-position:0 -22px}\r\n.o2k7SimpleSkin a.mceButtonActive {background-position:0 -44px}\r\n.o2k7SimpleSkin .mceButtonDisabled span {opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)}\r\n\r\n/* Separator */\r\n.o2k7SimpleSkin .mceSeparator {display:block; background:url(img/button_bg.png) -22px 0; width:5px; height:22px}\r\n\r\n/* Theme */\r\n.o2k7SimpleSkin span.mce_bold {background-position:0 0}\r\n.o2k7SimpleSkin span.mce_italic {background-position:-60px 0}\r\n.o2k7SimpleSkin span.mce_underline {background-position:-140px 0}\r\n.o2k7SimpleSkin span.mce_strikethrough {background-position:-120px 0}\r\n.o2k7SimpleSkin span.mce_undo {background-position:-160px 0}\r\n.o2k7SimpleSkin span.mce_redo {background-position:-100px 0}\r\n.o2k7SimpleSkin span.mce_cleanup {background-position:-40px 0}\r\n.o2k7SimpleSkin span.mce_insertunorderedlist {background-position:-20px 0}\r\n.o2k7SimpleSkin span.mce_insertorderedlist {background-position:-80px 0}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/tiny_mce.js",
    "content": "(function(d){var a=/^\\s*|\\s*$/g,e,c=\"B\".replace(/A(.)|B/,\"$1\")===\"$1\";var b={majorVersion:\"3\",minorVersion:\"4.6\",releaseDate:\"2011-09-29\",_init:function(){var s=this,q=document,o=navigator,g=o.userAgent,m,f,l,k,j,r;s.isOpera=d.opera&&opera.buildNumber;s.isWebKit=/WebKit/.test(g);s.isIE=!s.isWebKit&&!s.isOpera&&(/MSIE/gi).test(g)&&(/Explorer/gi).test(o.appName);s.isIE6=s.isIE&&/MSIE [56]/.test(g);s.isIE7=s.isIE&&/MSIE [7]/.test(g);s.isIE8=s.isIE&&/MSIE [8]/.test(g);s.isIE9=s.isIE&&/MSIE [9]/.test(g);s.isGecko=!s.isWebKit&&/Gecko/.test(g);s.isMac=g.indexOf(\"Mac\")!=-1;s.isAir=/adobeair/i.test(g);s.isIDevice=/(iPad|iPhone)/.test(g);s.isIOS5=s.isIDevice&&g.match(/AppleWebKit\\/(\\d*)/)[1]>=534;if(d.tinyMCEPreInit){s.suffix=tinyMCEPreInit.suffix;s.baseURL=tinyMCEPreInit.base;s.query=tinyMCEPreInit.query;return}s.suffix=\"\";f=q.getElementsByTagName(\"base\");for(m=0;m<f.length;m++){if(r=f[m].href){if(/^https?:\\/\\/[^\\/]+$/.test(r)){r+=\"/\"}k=r?r.match(/.*\\//)[0]:\"\"}}function h(i){if(i.src&&/tiny_mce(|_gzip|_jquery|_prototype|_full)(_dev|_src)?.js/.test(i.src)){if(/_(src|dev)\\.js/g.test(i.src)){s.suffix=\"_src\"}if((j=i.src.indexOf(\"?\"))!=-1){s.query=i.src.substring(j+1)}s.baseURL=i.src.substring(0,i.src.lastIndexOf(\"/\"));if(k&&s.baseURL.indexOf(\"://\")==-1&&s.baseURL.indexOf(\"/\")!==0){s.baseURL=k+s.baseURL}return s.baseURL}return null}f=q.getElementsByTagName(\"script\");for(m=0;m<f.length;m++){if(h(f[m])){return}}l=q.getElementsByTagName(\"head\")[0];if(l){f=l.getElementsByTagName(\"script\");for(m=0;m<f.length;m++){if(h(f[m])){return}}}return},is:function(g,f){if(!f){return g!==e}if(f==\"array\"&&(g.hasOwnProperty&&g instanceof Array)){return true}return typeof(g)==f},makeMap:function(f,j,h){var g;f=f||[];j=j||\",\";if(typeof(f)==\"string\"){f=f.split(j)}h=h||{};g=f.length;while(g--){h[f[g]]={}}return h},each:function(i,f,h){var j,g;if(!i){return 0}h=h||i;if(i.length!==e){for(j=0,g=i.length;j<g;j++){if(f.call(h,i[j],j,i)===false){return 0}}}else{for(j in i){if(i.hasOwnProperty(j)){if(f.call(h,i[j],j,i)===false){return 0}}}}return 1},trim:function(f){return(f?\"\"+f:\"\").replace(a,\"\")},create:function(o,f,j){var n=this,g,i,k,l,h,m=0;o=/^((static) )?([\\w.]+)(:([\\w.]+))?/.exec(o);k=o[3].match(/(^|\\.)(\\w+)$/i)[2];i=n.createNS(o[3].replace(/\\.\\w+$/,\"\"),j);if(i[k]){return}if(o[2]==\"static\"){i[k]=f;if(this.onCreate){this.onCreate(o[2],o[3],i[k])}return}if(!f[k]){f[k]=function(){};m=1}i[k]=f[k];n.extend(i[k].prototype,f);if(o[5]){g=n.resolve(o[5]).prototype;l=o[5].match(/\\.(\\w+)$/i)[1];h=i[k];if(m){i[k]=function(){return g[l].apply(this,arguments)}}else{i[k]=function(){this.parent=g[l];return h.apply(this,arguments)}}i[k].prototype[k]=i[k];n.each(g,function(p,q){i[k].prototype[q]=g[q]});n.each(f,function(p,q){if(g[q]){i[k].prototype[q]=function(){this.parent=g[q];return p.apply(this,arguments)}}else{if(q!=k){i[k].prototype[q]=p}}})}n.each(f[\"static\"],function(p,q){i[k][q]=p});if(this.onCreate){this.onCreate(o[2],o[3],i[k].prototype)}},walk:function(i,h,j,g){g=g||this;if(i){if(j){i=i[j]}b.each(i,function(k,f){if(h.call(g,k,f,j)===false){return false}b.walk(k,h,j,g)})}},createNS:function(j,h){var g,f;h=h||d;j=j.split(\".\");for(g=0;g<j.length;g++){f=j[g];if(!h[f]){h[f]={}}h=h[f]}return h},resolve:function(j,h){var g,f;h=h||d;j=j.split(\".\");for(g=0,f=j.length;g<f;g++){h=h[j[g]];if(!h){break}}return h},addUnload:function(j,i){var h=this;j={func:j,scope:i||this};if(!h.unloads){function g(){var f=h.unloads,l,m;if(f){for(m in f){l=f[m];if(l&&l.func){l.func.call(l.scope,1)}}if(d.detachEvent){d.detachEvent(\"onbeforeunload\",k);d.detachEvent(\"onunload\",g)}else{if(d.removeEventListener){d.removeEventListener(\"unload\",g,false)}}h.unloads=l=f=w=g=0;if(d.CollectGarbage){CollectGarbage()}}}function k(){var l=document;if(l.readyState==\"interactive\"){function f(){l.detachEvent(\"onstop\",f);if(g){g()}l=0}if(l){l.attachEvent(\"onstop\",f)}d.setTimeout(function(){if(l){l.detachEvent(\"onstop\",f)}},0)}}if(d.attachEvent){d.attachEvent(\"onunload\",g);d.attachEvent(\"onbeforeunload\",k)}else{if(d.addEventListener){d.addEventListener(\"unload\",g,false)}}h.unloads=[j]}else{h.unloads.push(j)}return j},removeUnload:function(i){var g=this.unloads,h=null;b.each(g,function(j,f){if(j&&j.func==i){g.splice(f,1);h=i;return false}});return h},explode:function(f,g){return f?b.map(f.split(g||\",\"),b.trim):f},_addVer:function(g){var f;if(!this.query){return g}f=(g.indexOf(\"?\")==-1?\"?\":\"&\")+this.query;if(g.indexOf(\"#\")==-1){return g+f}return g.replace(\"#\",f+\"#\")},_replace:function(h,f,g){if(c){return g.replace(h,function(){var l=f,j=arguments,k;for(k=0;k<j.length-2;k++){if(j[k]===e){l=l.replace(new RegExp(\"\\\\$\"+k,\"g\"),\"\")}else{l=l.replace(new RegExp(\"\\\\$\"+k,\"g\"),j[k])}}return l})}return g.replace(h,f)}};b._init();d.tinymce=d.tinyMCE=b})(window);(function(e,d){var c=d.is,b=/^(href|src|style)$/i,f;if(!e&&window.console){return console.log(\"Load jQuery first!\")}d.$=e;d.adapter={patchEditor:function(j){var i=e.fn;function h(n,o){var m=this;if(o){m.removeAttr(\"data-mce-style\")}return i.css.apply(m,arguments)}function g(n,o){var m=this;if(b.test(n)){if(o!==f){m.each(function(p,q){j.dom.setAttrib(q,n,o)});return m}else{return m.attr(\"data-mce-\"+n)}}return i.attr.apply(m,arguments)}function k(m){return function(n){if(n){n=j.dom.processHTML(n)}return m.call(this,n)}}function l(m){if(m.css!==h){m.css=h;m.attr=g;m.html=k(i.html);m.append=k(i.append);m.prepend=k(i.prepend);m.after=k(i.after);m.before=k(i.before);m.replaceWith=k(i.replaceWith);m.tinymce=j;m.pushStack=function(){return l(i.pushStack.apply(this,arguments))}}return m}j.$=function(m,n){var o=j.getDoc();return l(e(m||o,o||n))}}};d.extend=e.extend;d.extend(d,{map:e.map,grep:function(g,h){return e.grep(g,h||function(){return 1})},inArray:function(g,h){return e.inArray(h,g||[])}});var a={\"tinymce.dom.DOMUtils\":{select:function(i,h){var g=this;return e.find(i,g.get(h)||g.get(g.settings.root_element)||g.doc,[])},is:function(h,g){return e(this.get(h)).is(g)}}};d.onCreate=function(g,i,h){d.extend(h,a[i])}})(window.jQuery,tinymce);tinymce.create(\"tinymce.util.Dispatcher\",{scope:null,listeners:null,Dispatcher:function(a){this.scope=a||this;this.listeners=[]},add:function(a,b){this.listeners.push({cb:a,scope:b||this.scope});return a},addToTop:function(a,b){this.listeners.unshift({cb:a,scope:b||this.scope});return a},remove:function(a){var b=this.listeners,c=null;tinymce.each(b,function(e,d){if(a==e.cb){c=a;b.splice(d,1);return false}});return c},dispatch:function(){var f,d=arguments,e,b=this.listeners,g;for(e=0;e<b.length;e++){g=b[e];f=g.cb.apply(g.scope,d);if(f===false){break}}return f}});(function(){var a=tinymce.each;tinymce.create(\"tinymce.util.URI\",{URI:function(e,g){var f=this,i,d,c,h;e=tinymce.trim(e);g=f.settings=g||{};if(/^([\\w\\-]+):([^\\/]{2})/i.test(e)||/^\\s*#/.test(e)){f.source=e;return}if(e.indexOf(\"/\")===0&&e.indexOf(\"//\")!==0){e=(g.base_uri?g.base_uri.protocol||\"http\":\"http\")+\"://mce_host\"+e}if(!/^[\\w-]*:?\\/\\//.test(e)){h=g.base_uri?g.base_uri.path:new tinymce.util.URI(location.href).directory;e=((g.base_uri&&g.base_uri.protocol)||\"http\")+\"://mce_host\"+f.toAbsPath(h,e)}e=e.replace(/@@/g,\"(mce_at)\");e=/^(?:(?![^:@]+:[^:@\\/]*@)([^:\\/?#.]+):)?(?:\\/\\/)?((?:(([^:@]*):?([^:@]*))?@)?([^:\\/?#]*)(?::(\\d*))?)(((\\/(?:[^?#](?![^?#\\/]*\\.[^?#\\/.]+(?:[?#]|$)))*\\/?)?([^?#\\/]*))(?:\\?([^#]*))?(?:#(.*))?)/.exec(e);a([\"source\",\"protocol\",\"authority\",\"userInfo\",\"user\",\"password\",\"host\",\"port\",\"relative\",\"path\",\"directory\",\"file\",\"query\",\"anchor\"],function(b,j){var k=e[j];if(k){k=k.replace(/\\(mce_at\\)/g,\"@@\")}f[b]=k});if(c=g.base_uri){if(!f.protocol){f.protocol=c.protocol}if(!f.userInfo){f.userInfo=c.userInfo}if(!f.port&&f.host==\"mce_host\"){f.port=c.port}if(!f.host||f.host==\"mce_host\"){f.host=c.host}f.source=\"\"}},setPath:function(c){var b=this;c=/^(.*?)\\/?(\\w+)?$/.exec(c);b.path=c[0];b.directory=c[1];b.file=c[2];b.source=\"\";b.getURI()},toRelative:function(b){var c=this,d;if(b===\"./\"){return b}b=new tinymce.util.URI(b,{base_uri:c});if((b.host!=\"mce_host\"&&c.host!=b.host&&b.host)||c.port!=b.port||c.protocol!=b.protocol){return b.getURI()}d=c.toRelPath(c.path,b.path);if(b.query){d+=\"?\"+b.query}if(b.anchor){d+=\"#\"+b.anchor}return d},toAbsolute:function(b,c){var b=new tinymce.util.URI(b,{base_uri:this});return b.getURI(this.host==b.host&&this.protocol==b.protocol?c:0)},toRelPath:function(g,h){var c,f=0,d=\"\",e,b;g=g.substring(0,g.lastIndexOf(\"/\"));g=g.split(\"/\");c=h.split(\"/\");if(g.length>=c.length){for(e=0,b=g.length;e<b;e++){if(e>=c.length||g[e]!=c[e]){f=e+1;break}}}if(g.length<c.length){for(e=0,b=c.length;e<b;e++){if(e>=g.length||g[e]!=c[e]){f=e+1;break}}}if(f==1){return h}for(e=0,b=g.length-(f-1);e<b;e++){d+=\"../\"}for(e=f-1,b=c.length;e<b;e++){if(e!=f-1){d+=\"/\"+c[e]}else{d+=c[e]}}return d},toAbsPath:function(e,f){var c,b=0,h=[],d,g;d=/\\/$/.test(f)?\"/\":\"\";e=e.split(\"/\");f=f.split(\"/\");a(e,function(i){if(i){h.push(i)}});e=h;for(c=f.length-1,h=[];c>=0;c--){if(f[c].length==0||f[c]==\".\"){continue}if(f[c]==\"..\"){b++;continue}if(b>0){b--;continue}h.push(f[c])}c=e.length-b;if(c<=0){g=h.reverse().join(\"/\")}else{g=e.slice(0,c).join(\"/\")+\"/\"+h.reverse().join(\"/\")}if(g.indexOf(\"/\")!==0){g=\"/\"+g}if(d&&g.lastIndexOf(\"/\")!==g.length-1){g+=d}return g},getURI:function(d){var c,b=this;if(!b.source||d){c=\"\";if(!d){if(b.protocol){c+=b.protocol+\"://\"}if(b.userInfo){c+=b.userInfo+\"@\"}if(b.host){c+=b.host}if(b.port){c+=\":\"+b.port}}if(b.path){c+=b.path}if(b.query){c+=\"?\"+b.query}if(b.anchor){c+=\"#\"+b.anchor}b.source=c}return b.source}})})();(function(){var a=tinymce.each;tinymce.create(\"static tinymce.util.Cookie\",{getHash:function(d){var b=this.get(d),c;if(b){a(b.split(\"&\"),function(e){e=e.split(\"=\");c=c||{};c[unescape(e[0])]=unescape(e[1])})}return c},setHash:function(j,b,g,f,i,c){var h=\"\";a(b,function(e,d){h+=(!h?\"\":\"&\")+escape(d)+\"=\"+escape(e)});this.set(j,h,g,f,i,c)},get:function(i){var h=document.cookie,g,f=i+\"=\",d;if(!h){return}d=h.indexOf(\"; \"+f);if(d==-1){d=h.indexOf(f);if(d!=0){return null}}else{d+=2}g=h.indexOf(\";\",d);if(g==-1){g=h.length}return unescape(h.substring(d+f.length,g))},set:function(i,b,g,f,h,c){document.cookie=i+\"=\"+escape(b)+((g)?\"; expires=\"+g.toGMTString():\"\")+((f)?\"; path=\"+escape(f):\"\")+((h)?\"; domain=\"+h:\"\")+((c)?\"; secure\":\"\")},remove:function(e,b){var c=new Date();c.setTime(c.getTime()-1000);this.set(e,\"\",c,b,c)}})})();(function(){function serialize(o,quote){var i,v,t;quote=quote||'\"';if(o==null){return\"null\"}t=typeof o;if(t==\"string\"){v=\"\\bb\\tt\\nn\\ff\\rr\\\"\\\"''\\\\\\\\\";return quote+o.replace(/([\\u0080-\\uFFFF\\x00-\\x1f\\\"\\'\\\\])/g,function(a,b){if(quote==='\"'&&a===\"'\"){return a}i=v.indexOf(b);if(i+1){return\"\\\\\"+v.charAt(i+1)}a=b.charCodeAt().toString(16);return\"\\\\u\"+\"0000\".substring(a.length)+a})+quote}if(t==\"object\"){if(o.hasOwnProperty&&o instanceof Array){for(i=0,v=\"[\";i<o.length;i++){v+=(i>0?\",\":\"\")+serialize(o[i],quote)}return v+\"]\"}v=\"{\";for(i in o){v+=typeof o[i]!=\"function\"?(v.length>1?\",\"+quote:quote)+i+quote+\":\"+serialize(o[i],quote):\"\"}return v+\"}\"}return\"\"+o}tinymce.util.JSON={serialize:serialize,parse:function(s){try{return eval(\"(\"+s+\")\")}catch(ex){}}}})();tinymce.create(\"static tinymce.util.XHR\",{send:function(g){var a,e,b=window,h=0;g.scope=g.scope||this;g.success_scope=g.success_scope||g.scope;g.error_scope=g.error_scope||g.scope;g.async=g.async===false?false:true;g.data=g.data||\"\";function d(i){a=0;try{a=new ActiveXObject(i)}catch(c){}return a}a=b.XMLHttpRequest?new XMLHttpRequest():d(\"Microsoft.XMLHTTP\")||d(\"Msxml2.XMLHTTP\");if(a){if(a.overrideMimeType){a.overrideMimeType(g.content_type)}a.open(g.type||(g.data?\"POST\":\"GET\"),g.url,g.async);if(g.content_type){a.setRequestHeader(\"Content-Type\",g.content_type)}a.setRequestHeader(\"X-Requested-With\",\"XMLHttpRequest\");a.send(g.data);function f(){if(!g.async||a.readyState==4||h++>10000){if(g.success&&h<10000&&a.status==200){g.success.call(g.success_scope,\"\"+a.responseText,a,g)}else{if(g.error){g.error.call(g.error_scope,h>10000?\"TIMED_OUT\":\"GENERAL\",a,g)}}a=null}else{b.setTimeout(f,10)}}if(!g.async){return f()}e=b.setTimeout(f,10)}}});(function(){var c=tinymce.extend,b=tinymce.util.JSON,a=tinymce.util.XHR;tinymce.create(\"tinymce.util.JSONRequest\",{JSONRequest:function(d){this.settings=c({},d);this.count=0},send:function(f){var e=f.error,d=f.success;f=c(this.settings,f);f.success=function(h,g){h=b.parse(h);if(typeof(h)==\"undefined\"){h={error:\"JSON Parse error.\"}}if(h.error){e.call(f.error_scope||f.scope,h.error,g)}else{d.call(f.success_scope||f.scope,h.result)}};f.error=function(h,g){if(e){e.call(f.error_scope||f.scope,h,g)}};f.data=b.serialize({id:f.id||\"c\"+(this.count++),method:f.method,params:f.params});f.content_type=\"application/json\";a.send(f)},\"static\":{sendRPC:function(d){return new tinymce.util.JSONRequest().send(d)}}})}());(function(a){a.VK={DELETE:46,BACKSPACE:8}})(tinymce);(function(i){var g=i.VK,h=g.BACKSPACE,f=g.DELETE;function b(j){var l=j.dom,k=j.selection;j.onKeyDown.add(function(n,r){var m,s,p,q,o;o=r.keyCode==f;if(o||r.keyCode==h){r.preventDefault();m=k.getRng();s=l.getParent(m.startContainer,l.isBlock);if(o){s=l.getNext(s,l.isBlock)}if(s){p=s.firstChild;while(p.nodeType==3&&p.nodeValue.length==0){p=p.nextSibling}if(p&&p.nodeName===\"SPAN\"){q=p.cloneNode(false)}}n.getDoc().execCommand(o?\"ForwardDelete\":\"Delete\",false,null);s=l.getParent(m.startContainer,l.isBlock);i.each(l.select(\"span.Apple-style-span,font.Apple-style-span\",s),function(t){var u=k.getBookmark();if(q){l.replace(q.cloneNode(false),t,true)}else{l.remove(t,true)}k.moveToBookmark(u)})}})}function c(j){j.onKeyUp.add(function(k,m){var l=m.keyCode;if(l==f||l==h){if(k.dom.isEmpty(k.getBody())){k.setContent(\"\",{format:\"raw\"});k.nodeChanged();return}}})}function a(j){j.dom.bind(j.getDoc(),\"focusin\",function(){j.selection.setRng(j.selection.getRng())})}function e(j){if(!Range.prototype.getClientRects){j.onMouseDown.add(function(l,m){if(m.target.nodeName===\"HTML\"){var k=l.getBody();k.blur();setTimeout(function(){k.focus()},0)}})}}function d(j){j.onClick.add(function(k,l){l=l.target;if(/^(IMG|HR)$/.test(l.nodeName)){k.selection.getSel().setBaseAndExtent(l,0,l,1)}if(l.nodeName==\"A\"&&k.dom.hasClass(l,\"mceItemAnchor\")){k.selection.select(l)}k.nodeChanged()})}i.create(\"tinymce.util.Quirks\",{Quirks:function(j){if(i.isWebKit){b(j);c(j);a(j);d(j)}if(i.isIE){c(j)}if(i.isGecko){e(j)}}})})(tinymce);(function(j){var a,g,d,k=/[&<>\\\"\\u007E-\\uD7FF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]/g,b=/[<>&\\u007E-\\uD7FF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]/g,f=/[<>&\\\"\\']/g,c=/&(#x|#)?([\\w]+);/g,i={128:\"\\u20AC\",130:\"\\u201A\",131:\"\\u0192\",132:\"\\u201E\",133:\"\\u2026\",134:\"\\u2020\",135:\"\\u2021\",136:\"\\u02C6\",137:\"\\u2030\",138:\"\\u0160\",139:\"\\u2039\",140:\"\\u0152\",142:\"\\u017D\",145:\"\\u2018\",146:\"\\u2019\",147:\"\\u201C\",148:\"\\u201D\",149:\"\\u2022\",150:\"\\u2013\",151:\"\\u2014\",152:\"\\u02DC\",153:\"\\u2122\",154:\"\\u0161\",155:\"\\u203A\",156:\"\\u0153\",158:\"\\u017E\",159:\"\\u0178\"};g={'\"':\"&quot;\",\"'\":\"&#39;\",\"<\":\"&lt;\",\">\":\"&gt;\",\"&\":\"&amp;\"};d={\"&lt;\":\"<\",\"&gt;\":\">\",\"&amp;\":\"&\",\"&quot;\":'\"',\"&apos;\":\"'\"};function h(l){var m;m=document.createElement(\"div\");m.innerHTML=l;return m.textContent||m.innerText||l}function e(m,p){var n,o,l,q={};if(m){m=m.split(\",\");p=p||10;for(n=0;n<m.length;n+=2){o=String.fromCharCode(parseInt(m[n],p));if(!g[o]){l=\"&\"+m[n+1]+\";\";q[o]=l;q[l]=o}}return q}}a=e(\"50,nbsp,51,iexcl,52,cent,53,pound,54,curren,55,yen,56,brvbar,57,sect,58,uml,59,copy,5a,ordf,5b,laquo,5c,not,5d,shy,5e,reg,5f,macr,5g,deg,5h,plusmn,5i,sup2,5j,sup3,5k,acute,5l,micro,5m,para,5n,middot,5o,cedil,5p,sup1,5q,ordm,5r,raquo,5s,frac14,5t,frac12,5u,frac34,5v,iquest,60,Agrave,61,Aacute,62,Acirc,63,Atilde,64,Auml,65,Aring,66,AElig,67,Ccedil,68,Egrave,69,Eacute,6a,Ecirc,6b,Euml,6c,Igrave,6d,Iacute,6e,Icirc,6f,Iuml,6g,ETH,6h,Ntilde,6i,Ograve,6j,Oacute,6k,Ocirc,6l,Otilde,6m,Ouml,6n,times,6o,Oslash,6p,Ugrave,6q,Uacute,6r,Ucirc,6s,Uuml,6t,Yacute,6u,THORN,6v,szlig,70,agrave,71,aacute,72,acirc,73,atilde,74,auml,75,aring,76,aelig,77,ccedil,78,egrave,79,eacute,7a,ecirc,7b,euml,7c,igrave,7d,iacute,7e,icirc,7f,iuml,7g,eth,7h,ntilde,7i,ograve,7j,oacute,7k,ocirc,7l,otilde,7m,ouml,7n,divide,7o,oslash,7p,ugrave,7q,uacute,7r,ucirc,7s,uuml,7t,yacute,7u,thorn,7v,yuml,ci,fnof,sh,Alpha,si,Beta,sj,Gamma,sk,Delta,sl,Epsilon,sm,Zeta,sn,Eta,so,Theta,sp,Iota,sq,Kappa,sr,Lambda,ss,Mu,st,Nu,su,Xi,sv,Omicron,t0,Pi,t1,Rho,t3,Sigma,t4,Tau,t5,Upsilon,t6,Phi,t7,Chi,t8,Psi,t9,Omega,th,alpha,ti,beta,tj,gamma,tk,delta,tl,epsilon,tm,zeta,tn,eta,to,theta,tp,iota,tq,kappa,tr,lambda,ts,mu,tt,nu,tu,xi,tv,omicron,u0,pi,u1,rho,u2,sigmaf,u3,sigma,u4,tau,u5,upsilon,u6,phi,u7,chi,u8,psi,u9,omega,uh,thetasym,ui,upsih,um,piv,812,bull,816,hellip,81i,prime,81j,Prime,81u,oline,824,frasl,88o,weierp,88h,image,88s,real,892,trade,89l,alefsym,8cg,larr,8ch,uarr,8ci,rarr,8cj,darr,8ck,harr,8dl,crarr,8eg,lArr,8eh,uArr,8ei,rArr,8ej,dArr,8ek,hArr,8g0,forall,8g2,part,8g3,exist,8g5,empty,8g7,nabla,8g8,isin,8g9,notin,8gb,ni,8gf,prod,8gh,sum,8gi,minus,8gn,lowast,8gq,radic,8gt,prop,8gu,infin,8h0,ang,8h7,and,8h8,or,8h9,cap,8ha,cup,8hb,int,8hk,there4,8hs,sim,8i5,cong,8i8,asymp,8j0,ne,8j1,equiv,8j4,le,8j5,ge,8k2,sub,8k3,sup,8k4,nsub,8k6,sube,8k7,supe,8kl,oplus,8kn,otimes,8l5,perp,8m5,sdot,8o8,lceil,8o9,rceil,8oa,lfloor,8ob,rfloor,8p9,lang,8pa,rang,9ea,loz,9j0,spades,9j3,clubs,9j5,hearts,9j6,diams,ai,OElig,aj,oelig,b0,Scaron,b1,scaron,bo,Yuml,m6,circ,ms,tilde,802,ensp,803,emsp,809,thinsp,80c,zwnj,80d,zwj,80e,lrm,80f,rlm,80j,ndash,80k,mdash,80o,lsquo,80p,rsquo,80q,sbquo,80s,ldquo,80t,rdquo,80u,bdquo,810,dagger,811,Dagger,81g,permil,81p,lsaquo,81q,rsaquo,85c,euro\",32);j.html=j.html||{};j.html.Entities={encodeRaw:function(m,l){return m.replace(l?k:b,function(n){return g[n]||n})},encodeAllRaw:function(l){return(\"\"+l).replace(f,function(m){return g[m]||m})},encodeNumeric:function(m,l){return m.replace(l?k:b,function(n){if(n.length>1){return\"&#\"+(((n.charCodeAt(0)-55296)*1024)+(n.charCodeAt(1)-56320)+65536)+\";\"}return g[n]||\"&#\"+n.charCodeAt(0)+\";\"})},encodeNamed:function(n,l,m){m=m||a;return n.replace(l?k:b,function(o){return g[o]||m[o]||o})},getEncodeFunc:function(l,o){var p=j.html.Entities;o=e(o)||a;function m(r,q){return r.replace(q?k:b,function(s){return g[s]||o[s]||\"&#\"+s.charCodeAt(0)+\";\"||s})}function n(r,q){return p.encodeNamed(r,q,o)}l=j.makeMap(l.replace(/\\+/g,\",\"));if(l.named&&l.numeric){return m}if(l.named){if(o){return n}return p.encodeNamed}if(l.numeric){return p.encodeNumeric}return p.encodeRaw},decode:function(l){return l.replace(c,function(n,m,o){if(m){o=parseInt(o,m.length===2?16:10);if(o>65535){o-=65536;return String.fromCharCode(55296+(o>>10),56320+(o&1023))}else{return i[o]||String.fromCharCode(o)}}return d[n]||a[n]||h(n)})}}})(tinymce);tinymce.html.Styles=function(d,f){var k=/rgb\\s*\\(\\s*([0-9]+)\\s*,\\s*([0-9]+)\\s*,\\s*([0-9]+)\\s*\\)/gi,h=/(?:url(?:(?:\\(\\s*\\\"([^\\\"]+)\\\"\\s*\\))|(?:\\(\\s*\\'([^\\']+)\\'\\s*\\))|(?:\\(\\s*([^)\\s]+)\\s*\\))))|(?:\\'([^\\']+)\\')|(?:\\\"([^\\\"]+)\\\")/gi,b=/\\s*([^:]+):\\s*([^;]+);?/g,l=/\\s+$/,m=/rgb/,e,g,a={},j;d=d||{};j=\"\\\\\\\" \\\\' \\\\; \\\\: ; : \\uFEFF\".split(\" \");for(g=0;g<j.length;g++){a[j[g]]=\"\\uFEFF\"+g;a[\"\\uFEFF\"+g]=j[g]}function c(n,q,p,i){function o(r){r=parseInt(r).toString(16);return r.length>1?r:\"0\"+r}return\"#\"+o(q)+o(p)+o(i)}return{toHex:function(i){return i.replace(k,c)},parse:function(r){var y={},p,n,v,q,u=d.url_converter,x=d.url_converter_scope||this;function o(C,F){var E,B,A,D;E=y[C+\"-top\"+F];if(!E){return}B=y[C+\"-right\"+F];if(E!=B){return}A=y[C+\"-bottom\"+F];if(B!=A){return}D=y[C+\"-left\"+F];if(A!=D){return}y[C+F]=D;delete y[C+\"-top\"+F];delete y[C+\"-right\"+F];delete y[C+\"-bottom\"+F];delete y[C+\"-left\"+F]}function t(B){var C=y[B],A;if(!C||C.indexOf(\" \")<0){return}C=C.split(\" \");A=C.length;while(A--){if(C[A]!==C[0]){return false}}y[B]=C[0];return true}function z(C,B,A,D){if(!t(B)){return}if(!t(A)){return}if(!t(D)){return}y[C]=y[B]+\" \"+y[A]+\" \"+y[D];delete y[B];delete y[A];delete y[D]}function s(A){q=true;return a[A]}function i(B,A){if(q){B=B.replace(/\\uFEFF[0-9]/g,function(C){return a[C]})}if(!A){B=B.replace(/\\\\([\\'\\\";:])/g,\"$1\")}return B}if(r){r=r.replace(/\\\\[\\\"\\';:\\uFEFF]/g,s).replace(/\\\"[^\\\"]+\\\"|\\'[^\\']+\\'/g,function(A){return A.replace(/[;:]/g,s)});while(p=b.exec(r)){n=p[1].replace(l,\"\").toLowerCase();v=p[2].replace(l,\"\");if(n&&v.length>0){if(n===\"font-weight\"&&v===\"700\"){v=\"bold\"}else{if(n===\"color\"||n===\"background-color\"){v=v.toLowerCase()}}v=v.replace(k,c);v=v.replace(h,function(B,A,E,D,F,C){F=F||C;if(F){F=i(F);return\"'\"+F.replace(/\\'/g,\"\\\\'\")+\"'\"}A=i(A||E||D);if(u){A=u.call(x,A,\"style\")}return\"url('\"+A.replace(/\\'/g,\"\\\\'\")+\"')\"});y[n]=q?i(v,true):v}b.lastIndex=p.index+p[0].length}o(\"border\",\"\");o(\"border\",\"-width\");o(\"border\",\"-color\");o(\"border\",\"-style\");o(\"padding\",\"\");o(\"margin\",\"\");z(\"border\",\"border-width\",\"border-style\",\"border-color\");if(y.border===\"medium none\"){delete y.border}}return y},serialize:function(p,r){var o=\"\",n,q;function i(t){var x,u,s,v;x=f.styles[t];if(x){for(u=0,s=x.length;u<s;u++){t=x[u];v=p[t];if(v!==e&&v.length>0){o+=(o.length>0?\" \":\"\")+t+\": \"+v+\";\"}}}}if(r&&f&&f.styles){i(\"*\");i(r)}else{for(n in p){q=p[n];if(q!==e&&q.length>0){o+=(o.length>0?\" \":\"\")+n+\": \"+q+\";\"}}}return o}}};(function(m){var h={},j,l,g,f,c={},b,e,d=m.makeMap,k=m.each;function i(o,n){return o.split(n||\",\")}function a(r,q){var o,p={};function n(s){return s.replace(/[A-Z]+/g,function(t){return n(r[t])})}for(o in r){if(r.hasOwnProperty(o)){r[o]=n(r[o])}}n(q).replace(/#/g,\"#text\").replace(/(\\w+)\\[([^\\]]+)\\]\\[([^\\]]*)\\]/g,function(v,t,s,u){s=i(s,\"|\");p[t]={attributes:d(s),attributesOrder:s,children:d(u,\"|\",{\"#comment\":{}})}});return p}l=\"h1,h2,h3,h4,h5,h6,hr,p,div,address,pre,form,table,tbody,thead,tfoot,th,tr,td,li,ol,ul,caption,blockquote,center,dl,dt,dd,dir,fieldset,noscript,menu,isindex,samp,header,footer,article,section,hgroup\";l=d(l,\",\",d(l.toUpperCase()));h=a({Z:\"H|K|N|O|P\",Y:\"X|form|R|Q\",ZG:\"E|span|width|align|char|charoff|valign\",X:\"p|T|div|U|W|isindex|fieldset|table\",ZF:\"E|align|char|charoff|valign\",W:\"pre|hr|blockquote|address|center|noframes\",ZE:\"abbr|axis|headers|scope|rowspan|colspan|align|char|charoff|valign|nowrap|bgcolor|width|height\",ZD:\"[E][S]\",U:\"ul|ol|dl|menu|dir\",ZC:\"p|Y|div|U|W|table|br|span|bdo|object|applet|img|map|K|N|Q\",T:\"h1|h2|h3|h4|h5|h6\",ZB:\"X|S|Q\",S:\"R|P\",ZA:\"a|G|J|M|O|P\",R:\"a|H|K|N|O\",Q:\"noscript|P\",P:\"ins|del|script\",O:\"input|select|textarea|label|button\",N:\"M|L\",M:\"em|strong|dfn|code|q|samp|kbd|var|cite|abbr|acronym\",L:\"sub|sup\",K:\"J|I\",J:\"tt|i|b|u|s|strike\",I:\"big|small|font|basefont\",H:\"G|F\",G:\"br|span|bdo\",F:\"object|applet|img|map|iframe\",E:\"A|B|C\",D:\"accesskey|tabindex|onfocus|onblur\",C:\"onclick|ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup\",B:\"lang|xml:lang|dir\",A:\"id|class|style|title\"},\"script[id|charset|type|language|src|defer|xml:space][]style[B|id|type|media|title|xml:space][]object[E|declare|classid|codebase|data|type|codetype|archive|standby|width|height|usemap|name|tabindex|align|border|hspace|vspace][#|param|Y]param[id|name|value|valuetype|type][]p[E|align][#|S]a[E|D|charset|type|name|href|hreflang|rel|rev|shape|coords|target][#|Z]br[A|clear][]span[E][#|S]bdo[A|C|B][#|S]applet[A|codebase|archive|code|object|alt|name|width|height|align|hspace|vspace][#|param|Y]h1[E|align][#|S]img[E|src|alt|name|longdesc|width|height|usemap|ismap|align|border|hspace|vspace][]map[B|C|A|name][X|form|Q|area]h2[E|align][#|S]iframe[A|longdesc|name|src|frameborder|marginwidth|marginheight|scrolling|align|width|height][#|Y]h3[E|align][#|S]tt[E][#|S]i[E][#|S]b[E][#|S]u[E][#|S]s[E][#|S]strike[E][#|S]big[E][#|S]small[E][#|S]font[A|B|size|color|face][#|S]basefont[id|size|color|face][]em[E][#|S]strong[E][#|S]dfn[E][#|S]code[E][#|S]q[E|cite][#|S]samp[E][#|S]kbd[E][#|S]var[E][#|S]cite[E][#|S]abbr[E][#|S]acronym[E][#|S]sub[E][#|S]sup[E][#|S]input[E|D|type|name|value|checked|disabled|readonly|size|maxlength|src|alt|usemap|onselect|onchange|accept|align][]select[E|name|size|multiple|disabled|tabindex|onfocus|onblur|onchange][optgroup|option]optgroup[E|disabled|label][option]option[E|selected|disabled|label|value][]textarea[E|D|name|rows|cols|disabled|readonly|onselect|onchange][]label[E|for|accesskey|onfocus|onblur][#|S]button[E|D|name|value|type|disabled][#|p|T|div|U|W|table|G|object|applet|img|map|K|N|Q]h4[E|align][#|S]ins[E|cite|datetime][#|Y]h5[E|align][#|S]del[E|cite|datetime][#|Y]h6[E|align][#|S]div[E|align][#|Y]ul[E|type|compact][li]li[E|type|value][#|Y]ol[E|type|compact|start][li]dl[E|compact][dt|dd]dt[E][#|S]dd[E][#|Y]menu[E|compact][li]dir[E|compact][li]pre[E|width|xml:space][#|ZA]hr[E|align|noshade|size|width][]blockquote[E|cite][#|Y]address[E][#|S|p]center[E][#|Y]noframes[E][#|Y]isindex[A|B|prompt][]fieldset[E][#|legend|Y]legend[E|accesskey|align][#|S]table[E|summary|width|border|frame|rules|cellspacing|cellpadding|align|bgcolor][caption|col|colgroup|thead|tfoot|tbody|tr]caption[E|align][#|S]col[ZG][]colgroup[ZG][col]thead[ZF][tr]tr[ZF|bgcolor][th|td]th[E|ZE][#|Y]form[E|action|method|name|enctype|onsubmit|onreset|accept|accept-charset|target][#|X|R|Q]noscript[E][#|Y]td[E|ZE][#|Y]tfoot[ZF][tr]tbody[ZF][tr]area[E|D|shape|coords|href|nohref|alt|target][]base[id|href|target][]body[E|onload|onunload|background|bgcolor|text|link|vlink|alink][#|Y]\");j=d(\"checked,compact,declare,defer,disabled,ismap,multiple,nohref,noresize,noshade,nowrap,readonly,selected,autoplay,loop,controls\");g=d(\"area,base,basefont,br,col,frame,hr,img,input,isindex,link,meta,param,embed,source\");f=m.extend(d(\"td,th,iframe,video,audio,object\"),g);b=d(\"pre,script,style,textarea\");e=d(\"colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr\");m.html.Schema=function(r){var A=this,n={},o={},y=[],q,p;r=r||{};if(r.verify_html===false){r.valid_elements=\"*[*]\"}if(r.valid_styles){q={};k(r.valid_styles,function(C,B){q[B]=m.explode(C)})}p=r.whitespace_elements?d(r.whitespace_elements):b;function z(B){return new RegExp(\"^\"+B.replace(/([?+*])/g,\".$1\")+\"$\")}function t(I){var H,D,W,S,X,C,F,R,U,N,V,Z,L,G,T,B,P,E,Y,aa,M,Q,K=/^([#+-])?([^\\[\\/]+)(?:\\/([^\\[]+))?(?:\\[([^\\]]+)\\])?$/,O=/^([!\\-])?(\\w+::\\w+|[^=:<]+)?(?:([=:<])(.*))?$/,J=/[*?+]/;if(I){I=i(I);if(n[\"@\"]){P=n[\"@\"].attributes;E=n[\"@\"].attributesOrder}for(H=0,D=I.length;H<D;H++){C=K.exec(I[H]);if(C){T=C[1];N=C[2];B=C[3];U=C[4];L={};G=[];F={attributes:L,attributesOrder:G};if(T===\"#\"){F.paddEmpty=true}if(T===\"-\"){F.removeEmpty=true}if(P){for(aa in P){L[aa]=P[aa]}G.push.apply(G,E)}if(U){U=i(U,\"|\");for(W=0,S=U.length;W<S;W++){C=O.exec(U[W]);if(C){R={};Z=C[1];V=C[2].replace(/::/g,\":\");T=C[3];Q=C[4];if(Z===\"!\"){F.attributesRequired=F.attributesRequired||[];F.attributesRequired.push(V);R.required=true}if(Z===\"-\"){delete L[V];G.splice(m.inArray(G,V),1);continue}if(T){if(T===\"=\"){F.attributesDefault=F.attributesDefault||[];F.attributesDefault.push({name:V,value:Q});R.defaultValue=Q}if(T===\":\"){F.attributesForced=F.attributesForced||[];F.attributesForced.push({name:V,value:Q});R.forcedValue=Q}if(T===\"<\"){R.validValues=d(Q,\"?\")}}if(J.test(V)){F.attributePatterns=F.attributePatterns||[];R.pattern=z(V);F.attributePatterns.push(R)}else{if(!L[V]){G.push(V)}L[V]=R}}}}if(!P&&N==\"@\"){P=L;E=G}if(B){F.outputName=N;n[B]=F}if(J.test(N)){F.pattern=z(N);y.push(F)}else{n[N]=F}}}}}function v(B){n={};y=[];t(B);k(h,function(D,C){o[C]=D.children})}function s(C){var B=/^(~)?(.+)$/;if(C){k(i(C),function(G){var E=B.exec(G),F=E[1]===\"~\",H=F?\"span\":\"div\",D=E[2];o[D]=o[H];c[D]=H;if(!F){l[D]={}}k(o,function(I,J){if(I[H]){I[D]=I[H]}})})}}function u(C){var B=/^([+\\-]?)(\\w+)\\[([^\\]]+)\\]$/;if(C){k(i(C),function(G){var F=B.exec(G),D,E;if(F){E=F[1];if(E){D=o[F[2]]}else{D=o[F[2]]={\"#comment\":{}}}D=o[F[2]];k(i(F[3],\"|\"),function(H){if(E===\"-\"){delete D[H]}else{D[H]={}}})}})}}function x(B){var D=n[B],C;if(D){return D}C=y.length;while(C--){D=y[C];if(D.pattern.test(B)){return D}}}if(!r.valid_elements){k(h,function(C,B){n[B]={attributes:C.attributes,attributesOrder:C.attributesOrder};o[B]=C.children});k(i(\"strong/b,em/i\"),function(B){B=i(B,\"/\");n[B[1]].outputName=B[0]});n.img.attributesDefault=[{name:\"alt\",value:\"\"}];k(i(\"ol,ul,sub,sup,blockquote,span,font,a,table,tbody,tr\"),function(B){n[B].removeEmpty=true});k(i(\"p,h1,h2,h3,h4,h5,h6,th,td,pre,div,address,caption\"),function(B){n[B].paddEmpty=true})}else{v(r.valid_elements)}s(r.custom_elements);u(r.valid_children);t(r.extended_valid_elements);u(\"+ol[ul|ol],+ul[ul|ol]\");if(!x(\"span\")){t(\"span[!data-mce-type|*]\")}if(r.invalid_elements){m.each(m.explode(r.invalid_elements),function(B){if(n[B]){delete n[B]}})}A.children=o;A.styles=q;A.getBoolAttrs=function(){return j};A.getBlockElements=function(){return l};A.getShortEndedElements=function(){return g};A.getSelfClosingElements=function(){return e};A.getNonEmptyElements=function(){return f};A.getWhiteSpaceElements=function(){return p};A.isValidChild=function(B,D){var C=o[B];return !!(C&&C[D])};A.getElementRule=x;A.getCustomElements=function(){return c};A.addValidElements=t;A.setValidElements=v;A.addCustomElements=s;A.addValidChildren=u};m.html.Schema.boolAttrMap=j;m.html.Schema.blockElementsMap=l})(tinymce);(function(a){a.html.SaxParser=function(c,e){var b=this,d=function(){};c=c||{};b.schema=e=e||new a.html.Schema();if(c.fix_self_closing!==false){c.fix_self_closing=true}a.each(\"comment cdata text start end pi doctype\".split(\" \"),function(f){if(f){b[f]=c[f]||d}});b.parse=function(D){var n=this,g,F=0,H,A,z=[],M,P,B,q,y,r,L,G,N,u,m,k,s,Q,o,O,E,R,K,f,I,l,C,J,h,v=0,j=a.html.Entities.decode,x,p;function t(S){var U,T;U=z.length;while(U--){if(z[U].name===S){break}}if(U>=0){for(T=z.length-1;T>=U;T--){S=z[T];if(S.valid){n.end(S.name)}}z.length=U}}l=new RegExp(\"<(?:(?:!--([\\\\w\\\\W]*?)-->)|(?:!\\\\[CDATA\\\\[([\\\\w\\\\W]*?)\\\\]\\\\]>)|(?:!DOCTYPE([\\\\w\\\\W]*?)>)|(?:\\\\?([^\\\\s\\\\/<>]+) ?([\\\\w\\\\W]*?)[?/]>)|(?:\\\\/([^>]+)>)|(?:([^\\\\s\\\\/<>]+)\\\\s*((?:[^\\\"'>]+(?:(?:\\\"[^\\\"]*\\\")|(?:'[^']*')|[^>]*))*)>))\",\"g\");C=/([\\w:\\-]+)(?:\\s*=\\s*(?:(?:\\\"((?:\\\\.|[^\\\"])*)\\\")|(?:\\'((?:\\\\.|[^\\'])*)\\')|([^>\\s]+)))?/g;J={script:/<\\/script[^>]*>/gi,style:/<\\/style[^>]*>/gi,noscript:/<\\/noscript[^>]*>/gi};L=e.getShortEndedElements();I=e.getSelfClosingElements();G=e.getBoolAttrs();u=c.validate;r=c.remove_internals;x=c.fix_self_closing;p=a.isIE;o=/^:/;while(g=l.exec(D)){if(F<g.index){n.text(j(D.substr(F,g.index-F)))}if(H=g[6]){H=H.toLowerCase();if(p&&o.test(H)){H=H.substr(1)}t(H)}else{if(H=g[7]){H=H.toLowerCase();if(p&&o.test(H)){H=H.substr(1)}N=H in L;if(x&&I[H]&&z.length>0&&z[z.length-1].name===H){t(H)}if(!u||(m=e.getElementRule(H))){k=true;if(u){O=m.attributes;E=m.attributePatterns}if(Q=g[8]){y=Q.indexOf(\"data-mce-type\")!==-1;if(y&&r){k=false}M=[];M.map={};Q.replace(C,function(T,S,X,W,V){var Y,U;S=S.toLowerCase();X=S in G?S:j(X||W||V||\"\");if(u&&!y&&S.indexOf(\"data-\")!==0){Y=O[S];if(!Y&&E){U=E.length;while(U--){Y=E[U];if(Y.pattern.test(S)){break}}if(U===-1){Y=null}}if(!Y){return}if(Y.validValues&&!(X in Y.validValues)){return}}M.map[S]=X;M.push({name:S,value:X})})}else{M=[];M.map={}}if(u&&!y){R=m.attributesRequired;K=m.attributesDefault;f=m.attributesForced;if(f){P=f.length;while(P--){s=f[P];q=s.name;h=s.value;if(h===\"{$uid}\"){h=\"mce_\"+v++}M.map[q]=h;M.push({name:q,value:h})}}if(K){P=K.length;while(P--){s=K[P];q=s.name;if(!(q in M.map)){h=s.value;if(h===\"{$uid}\"){h=\"mce_\"+v++}M.map[q]=h;M.push({name:q,value:h})}}}if(R){P=R.length;while(P--){if(R[P] in M.map){break}}if(P===-1){k=false}}if(M.map[\"data-mce-bogus\"]){k=false}}if(k){n.start(H,M,N)}}else{k=false}if(A=J[H]){A.lastIndex=F=g.index+g[0].length;if(g=A.exec(D)){if(k){B=D.substr(F,g.index-F)}F=g.index+g[0].length}else{B=D.substr(F);F=D.length}if(k&&B.length>0){n.text(B,true)}if(k){n.end(H)}l.lastIndex=F;continue}if(!N){if(!Q||Q.indexOf(\"/\")!=Q.length-1){z.push({name:H,valid:k})}else{if(k){n.end(H)}}}}else{if(H=g[1]){n.comment(H)}else{if(H=g[2]){n.cdata(H)}else{if(H=g[3]){n.doctype(H)}else{if(H=g[4]){n.pi(H,g[5])}}}}}}F=g.index+g[0].length}if(F<D.length){n.text(j(D.substr(F)))}for(P=z.length-1;P>=0;P--){H=z[P];if(H.valid){n.end(H.name)}}}}})(tinymce);(function(d){var c=/^[ \\t\\r\\n]*$/,e={\"#text\":3,\"#comment\":8,\"#cdata\":4,\"#pi\":7,\"#doctype\":10,\"#document-fragment\":11};function a(k,l,j){var i,h,f=j?\"lastChild\":\"firstChild\",g=j?\"prev\":\"next\";if(k[f]){return k[f]}if(k!==l){i=k[g];if(i){return i}for(h=k.parent;h&&h!==l;h=h.parent){i=h[g];if(i){return i}}}}function b(f,g){this.name=f;this.type=g;if(g===1){this.attributes=[];this.attributes.map={}}}d.extend(b.prototype,{replace:function(g){var f=this;if(g.parent){g.remove()}f.insert(g,f);f.remove();return f},attr:function(h,l){var f=this,g,j,k;if(typeof h!==\"string\"){for(j in h){f.attr(j,h[j])}return f}if(g=f.attributes){if(l!==k){if(l===null){if(h in g.map){delete g.map[h];j=g.length;while(j--){if(g[j].name===h){g=g.splice(j,1);return f}}}return f}if(h in g.map){j=g.length;while(j--){if(g[j].name===h){g[j].value=l;break}}}else{g.push({name:h,value:l})}g.map[h]=l;return f}else{return g.map[h]}}},clone:function(){var g=this,n=new b(g.name,g.type),h,f,m,j,k;if(m=g.attributes){k=[];k.map={};for(h=0,f=m.length;h<f;h++){j=m[h];if(j.name!==\"id\"){k[k.length]={name:j.name,value:j.value};k.map[j.name]=j.value}}n.attributes=k}n.value=g.value;n.shortEnded=g.shortEnded;return n},wrap:function(g){var f=this;f.parent.insert(g,f);g.append(f);return f},unwrap:function(){var f=this,h,g;for(h=f.firstChild;h;){g=h.next;f.insert(h,f,true);h=g}f.remove()},remove:function(){var f=this,h=f.parent,g=f.next,i=f.prev;if(h){if(h.firstChild===f){h.firstChild=g;if(g){g.prev=null}}else{i.next=g}if(h.lastChild===f){h.lastChild=i;if(i){i.next=null}}else{g.prev=i}f.parent=f.next=f.prev=null}return f},append:function(h){var f=this,g;if(h.parent){h.remove()}g=f.lastChild;if(g){g.next=h;h.prev=g;f.lastChild=h}else{f.lastChild=f.firstChild=h}h.parent=f;return h},insert:function(h,f,i){var g;if(h.parent){h.remove()}g=f.parent||this;if(i){if(f===g.firstChild){g.firstChild=h}else{f.prev.next=h}h.prev=f.prev;h.next=f;f.prev=h}else{if(f===g.lastChild){g.lastChild=h}else{f.next.prev=h}h.next=f.next;h.prev=f;f.next=h}h.parent=g;return h},getAll:function(g){var f=this,h,i=[];for(h=f.firstChild;h;h=a(h,f)){if(h.name===g){i.push(h)}}return i},empty:function(){var g=this,f,h,j;if(g.firstChild){f=[];for(j=g.firstChild;j;j=a(j,g)){f.push(j)}h=f.length;while(h--){j=f[h];j.parent=j.firstChild=j.lastChild=j.next=j.prev=null}}g.firstChild=g.lastChild=null;return g},isEmpty:function(k){var f=this,j=f.firstChild,h,g;if(j){do{if(j.type===1){if(j.attributes.map[\"data-mce-bogus\"]){continue}if(k[j.name]){return false}h=j.attributes.length;while(h--){g=j.attributes[h].name;if(g===\"name\"||g.indexOf(\"data-\")===0){return false}}}if((j.type===3&&!c.test(j.value))){return false}}while(j=a(j,f))}return true},walk:function(f){return a(this,null,f)}});d.extend(b,{create:function(g,f){var i,h;i=new b(g,e[g]||1);if(f){for(h in f){i.attr(h,f[h])}}return i}});d.html.Node=b})(tinymce);(function(b){var a=b.html.Node;b.html.DomParser=function(g,h){var f=this,e={},d=[],i={},c={};g=g||{};g.validate=\"validate\" in g?g.validate:true;g.root_name=g.root_name||\"body\";f.schema=h=h||new b.html.Schema();function j(m){var o,p,x,v,z,n,q,l,t,u,k,s,y,r;s=b.makeMap(\"tr,td,th,tbody,thead,tfoot,table\");k=h.getNonEmptyElements();for(o=0;o<m.length;o++){p=m[o];if(!p.parent){continue}v=[p];for(x=p.parent;x&&!h.isValidChild(x.name,p.name)&&!s[x.name];x=x.parent){v.push(x)}if(x&&v.length>1){v.reverse();z=n=f.filterNode(v[0].clone());for(t=0;t<v.length-1;t++){if(h.isValidChild(n.name,v[t].name)){q=f.filterNode(v[t].clone());n.append(q)}else{q=n}for(l=v[t].firstChild;l&&l!=v[t+1];){r=l.next;q.append(l);l=r}n=q}if(!z.isEmpty(k)){x.insert(z,v[0],true);x.insert(p,z)}else{x.insert(p,v[0],true)}x=v[0];if(x.isEmpty(k)||x.firstChild===x.lastChild&&x.firstChild.name===\"br\"){x.empty().remove()}}else{if(p.parent){if(p.name===\"li\"){y=p.prev;if(y&&(y.name===\"ul\"||y.name===\"ul\")){y.append(p);continue}y=p.next;if(y&&(y.name===\"ul\"||y.name===\"ul\")){y.insert(p,y.firstChild,true);continue}p.wrap(f.filterNode(new a(\"ul\",1)));continue}if(h.isValidChild(p.parent.name,\"div\")&&h.isValidChild(\"div\",p.name)){p.wrap(f.filterNode(new a(\"div\",1)))}else{if(p.name===\"style\"||p.name===\"script\"){p.empty().remove()}else{p.unwrap()}}}}}}f.filterNode=function(m){var l,k,n;if(k in e){n=i[k];if(n){n.push(m)}else{i[k]=[m]}}l=d.length;while(l--){k=d[l].name;if(k in m.attributes.map){n=c[k];if(n){n.push(m)}else{c[k]=[m]}}}return m};f.addNodeFilter=function(k,l){b.each(b.explode(k),function(m){var n=e[m];if(!n){e[m]=n=[]}n.push(l)})};f.addAttributeFilter=function(k,l){b.each(b.explode(k),function(m){var n;for(n=0;n<d.length;n++){if(d[n].name===m){d[n].callbacks.push(l);return}}d.push({name:m,callbacks:[l]})})};f.parse=function(v,m){var n,H,A,z,C,B,x,r,E,K,y,o,D,J=[],t,k,s,p,u,q;m=m||{};i={};c={};o=b.extend(b.makeMap(\"script,style,head,html,body,title,meta,param\"),h.getBlockElements());u=h.getNonEmptyElements();p=h.children;y=g.validate;q=\"forced_root_block\" in m?m.forced_root_block:g.forced_root_block;s=h.getWhiteSpaceElements();D=/^[ \\t\\r\\n]+/;t=/[ \\t\\r\\n]+$/;k=/[ \\t\\r\\n]+/g;function F(){var L=H.firstChild,l,M;while(L){l=L.next;if(L.type==3||(L.type==1&&L.name!==\"p\"&&!o[L.name]&&!L.attr(\"data-mce-type\"))){if(!M){M=I(q,1);H.insert(M,L);M.append(L)}else{M.append(L)}}else{M=null}L=l}}function I(l,L){var M=new a(l,L),N;if(l in e){N=i[l];if(N){N.push(M)}else{i[l]=[M]}}return M}function G(M){var N,l,L;for(N=M.prev;N&&N.type===3;){l=N.value.replace(t,\"\");if(l.length>0){N.value=l;N=N.prev}else{L=N.prev;N.remove();N=L}}}n=new b.html.SaxParser({validate:y,fix_self_closing:!y,cdata:function(l){A.append(I(\"#cdata\",4)).value=l},text:function(M,l){var L;if(!s[A.name]){M=M.replace(k,\" \");if(A.lastChild&&o[A.lastChild.name]){M=M.replace(D,\"\")}}if(M.length!==0){L=I(\"#text\",3);L.raw=!!l;A.append(L).value=M}},comment:function(l){A.append(I(\"#comment\",8)).value=l},pi:function(l,L){A.append(I(l,7)).value=L;G(A)},doctype:function(L){var l;l=A.append(I(\"#doctype\",10));l.value=L;G(A)},start:function(l,T,M){var R,O,N,L,P,U,S,Q;N=y?h.getElementRule(l):{};if(N){R=I(N.outputName||l,1);R.attributes=T;R.shortEnded=M;A.append(R);Q=p[A.name];if(Q&&p[R.name]&&!Q[R.name]){J.push(R)}O=d.length;while(O--){P=d[O].name;if(P in T.map){E=c[P];if(E){E.push(R)}else{c[P]=[R]}}}if(o[l]){G(R)}if(!M){A=R}}},end:function(l){var P,M,O,L,N;M=y?h.getElementRule(l):{};if(M){if(o[l]){if(!s[A.name]){for(P=A.firstChild;P&&P.type===3;){O=P.value.replace(D,\"\");if(O.length>0){P.value=O;P=P.next}else{L=P.next;P.remove();P=L}}for(P=A.lastChild;P&&P.type===3;){O=P.value.replace(t,\"\");if(O.length>0){P.value=O;P=P.prev}else{L=P.prev;P.remove();P=L}}}P=A.prev;if(P&&P.type===3){O=P.value.replace(D,\"\");if(O.length>0){P.value=O}else{P.remove()}}}if(M.removeEmpty||M.paddEmpty){if(A.isEmpty(u)){if(M.paddEmpty){A.empty().append(new a(\"#text\",\"3\")).value=\"\\u00a0\"}else{if(!A.attributes.map.name){N=A.parent;A.empty().remove();A=N;return}}}}A=A.parent}}},h);H=A=new a(m.context||g.root_name,11);n.parse(v);if(y&&J.length){if(!m.context){j(J)}else{m.invalid=true}}if(q&&H.name==\"body\"){F()}if(!m.invalid){for(K in i){E=e[K];z=i[K];x=z.length;while(x--){if(!z[x].parent){z.splice(x,1)}}for(C=0,B=E.length;C<B;C++){E[C](z,K,m)}}for(C=0,B=d.length;C<B;C++){E=d[C];if(E.name in c){z=c[E.name];x=z.length;while(x--){if(!z[x].parent){z.splice(x,1)}}for(x=0,r=E.callbacks.length;x<r;x++){E.callbacks[x](z,E.name,m)}}}}return H};if(g.remove_trailing_brs){f.addNodeFilter(\"br\",function(n,m){var r,q=n.length,o,u=h.getBlockElements(),k=h.getNonEmptyElements(),s,p,t;u.body=1;for(r=0;r<q;r++){o=n[r];s=o.parent;if(u[o.parent.name]&&o===s.lastChild){p=o.prev;while(p){t=p.name;if(t!==\"span\"||p.attr(\"data-mce-type\")!==\"bookmark\"){if(t!==\"br\"){break}if(t===\"br\"){o=null;break}}p=p.prev}if(o){o.remove();if(s.isEmpty(k)){elementRule=h.getElementRule(s.name);if(elementRule){if(elementRule.removeEmpty){s.remove()}else{if(elementRule.paddEmpty){s.empty().append(new b.html.Node(\"#text\",3)).value=\"\\u00a0\"}}}}}}}})}}})(tinymce);tinymce.html.Writer=function(e){var c=[],a,b,d,f,g;e=e||{};a=e.indent;b=tinymce.makeMap(e.indent_before||\"\");d=tinymce.makeMap(e.indent_after||\"\");f=tinymce.html.Entities.getEncodeFunc(e.entity_encoding||\"raw\",e.entities);g=e.element_format==\"html\";return{start:function(m,k,p){var n,j,h,o;if(a&&b[m]&&c.length>0){o=c[c.length-1];if(o.length>0&&o!==\"\\n\"){c.push(\"\\n\")}}c.push(\"<\",m);if(k){for(n=0,j=k.length;n<j;n++){h=k[n];c.push(\" \",h.name,'=\"',f(h.value,true),'\"')}}if(!p||g){c[c.length]=\">\"}else{c[c.length]=\" />\"}if(p&&a&&d[m]&&c.length>0){o=c[c.length-1];if(o.length>0&&o!==\"\\n\"){c.push(\"\\n\")}}},end:function(h){var i;c.push(\"</\",h,\">\");if(a&&d[h]&&c.length>0){i=c[c.length-1];if(i.length>0&&i!==\"\\n\"){c.push(\"\\n\")}}},text:function(i,h){if(i.length>0){c[c.length]=h?i:f(i)}},cdata:function(h){c.push(\"<![CDATA[\",h,\"]]>\")},comment:function(h){c.push(\"<!--\",h,\"-->\")},pi:function(h,i){if(i){c.push(\"<?\",h,\" \",i,\"?>\")}else{c.push(\"<?\",h,\"?>\")}if(a){c.push(\"\\n\")}},doctype:function(h){c.push(\"<!DOCTYPE\",h,\">\",a?\"\\n\":\"\")},reset:function(){c.length=0},getContent:function(){return c.join(\"\").replace(/\\n$/,\"\")}}};(function(a){a.html.Serializer=function(c,d){var b=this,e=new a.html.Writer(c);c=c||{};c.validate=\"validate\" in c?c.validate:true;b.schema=d=d||new a.html.Schema();b.writer=e;b.serialize=function(h){var g,i;i=c.validate;g={3:function(k,j){e.text(k.value,k.raw)},8:function(j){e.comment(j.value)},7:function(j){e.pi(j.name,j.value)},10:function(j){e.doctype(j.value)},4:function(j){e.cdata(j.value)},11:function(j){if((j=j.firstChild)){do{f(j)}while(j=j.next)}}};e.reset();function f(k){var t=g[k.type],j,o,s,r,p,u,n,m,q;if(!t){j=k.name;o=k.shortEnded;s=k.attributes;if(i&&s&&s.length>1){u=[];u.map={};q=d.getElementRule(k.name);for(n=0,m=q.attributesOrder.length;n<m;n++){r=q.attributesOrder[n];if(r in s.map){p=s.map[r];u.map[r]=p;u.push({name:r,value:p})}}for(n=0,m=s.length;n<m;n++){r=s[n].name;if(!(r in u.map)){p=s.map[r];u.map[r]=p;u.push({name:r,value:p})}}s=u}e.start(k.name,s,o);if(!o){if((k=k.firstChild)){do{f(k)}while(k=k.next)}e.end(j)}}else{t(k)}}if(h.type==1&&!c.inner){f(h)}else{g[11](h)}return e.getContent()}}})(tinymce);(function(h){var f=h.each,e=h.is,d=h.isWebKit,b=h.isIE,c=h.html.Entities,a=/^([a-z0-9],?)+$/i,g=h.html.Schema.blockElementsMap,i=/^[ \\t\\r\\n]*$/;h.create(\"tinymce.dom.DOMUtils\",{doc:null,root:null,files:null,pixelStyles:/^(top|left|bottom|right|width|height|borderWidth)$/,props:{\"for\":\"htmlFor\",\"class\":\"className\",className:\"className\",checked:\"checked\",disabled:\"disabled\",maxlength:\"maxLength\",readonly:\"readOnly\",selected:\"selected\",value:\"value\",id:\"id\",name:\"name\",type:\"type\"},DOMUtils:function(o,m){var l=this,j,k;l.doc=o;l.win=window;l.files={};l.cssFlicker=false;l.counter=0;l.stdMode=!h.isIE||o.documentMode>=8;l.boxModel=!h.isIE||o.compatMode==\"CSS1Compat\"||l.stdMode;l.hasOuterHTML=\"outerHTML\" in o.createElement(\"a\");l.settings=m=h.extend({keep_values:false,hex_colors:1},m);l.schema=m.schema;l.styles=new h.html.Styles({url_converter:m.url_converter,url_converter_scope:m.url_converter_scope},m.schema);if(h.isIE6){try{o.execCommand(\"BackgroundImageCache\",false,true)}catch(n){l.cssFlicker=true}}if(b&&m.schema){(\"abbr article aside audio canvas details figcaption figure footer header hgroup mark menu meter nav output progress section summary time video\").replace(/\\w+/g,function(p){o.createElement(p)});for(k in m.schema.getCustomElements()){o.createElement(k)}}h.addUnload(l.destroy,l)},getRoot:function(){var j=this,k=j.settings;return(k&&j.get(k.root_element))||j.doc.body},getViewPort:function(k){var l,j;k=!k?this.win:k;l=k.document;j=this.boxModel?l.documentElement:l.body;return{x:k.pageXOffset||j.scrollLeft,y:k.pageYOffset||j.scrollTop,w:k.innerWidth||j.clientWidth,h:k.innerHeight||j.clientHeight}},getRect:function(m){var l,j=this,k;m=j.get(m);l=j.getPos(m);k=j.getSize(m);return{x:l.x,y:l.y,w:k.w,h:k.h}},getSize:function(m){var k=this,j,l;m=k.get(m);j=k.getStyle(m,\"width\");l=k.getStyle(m,\"height\");if(j.indexOf(\"px\")===-1){j=0}if(l.indexOf(\"px\")===-1){l=0}return{w:parseInt(j)||m.offsetWidth||m.clientWidth,h:parseInt(l)||m.offsetHeight||m.clientHeight}},getParent:function(l,k,j){return this.getParents(l,k,j,false)},getParents:function(u,p,l,s){var k=this,j,m=k.settings,q=[];u=k.get(u);s=s===undefined;if(m.strict_root){l=l||k.getRoot()}if(e(p,\"string\")){j=p;if(p===\"*\"){p=function(o){return o.nodeType==1}}else{p=function(o){return k.is(o,j)}}}while(u){if(u==l||!u.nodeType||u.nodeType===9){break}if(!p||p(u)){if(s){q.push(u)}else{return u}}u=u.parentNode}return s?q:null},get:function(j){var k;if(j&&this.doc&&typeof(j)==\"string\"){k=j;j=this.doc.getElementById(j);if(j&&j.id!==k){return this.doc.getElementsByName(k)[1]}}return j},getNext:function(k,j){return this._findSib(k,j,\"nextSibling\")},getPrev:function(k,j){return this._findSib(k,j,\"previousSibling\")},add:function(m,q,j,l,o){var k=this;return this.run(m,function(s){var r,n;r=e(q,\"string\")?k.doc.createElement(q):q;k.setAttribs(r,j);if(l){if(l.nodeType){r.appendChild(l)}else{k.setHTML(r,l)}}return !o?s.appendChild(r):r})},create:function(l,j,k){return this.add(this.doc.createElement(l),l,j,k,1)},createHTML:function(r,j,p){var q=\"\",m=this,l;q+=\"<\"+r;for(l in j){if(j.hasOwnProperty(l)){q+=\" \"+l+'=\"'+m.encode(j[l])+'\"'}}if(typeof(p)!=\"undefined\"){return q+\">\"+p+\"</\"+r+\">\"}return q+\" />\"},remove:function(j,k){return this.run(j,function(m){var n,l=m.parentNode;if(!l){return null}if(k){while(n=m.firstChild){if(!h.isIE||n.nodeType!==3||n.nodeValue){l.insertBefore(n,m)}else{m.removeChild(n)}}}return l.removeChild(m)})},setStyle:function(m,j,k){var l=this;return l.run(m,function(p){var o,n;o=p.style;j=j.replace(/-(\\D)/g,function(r,q){return q.toUpperCase()});if(l.pixelStyles.test(j)&&(h.is(k,\"number\")||/^[\\-0-9\\.]+$/.test(k))){k+=\"px\"}switch(j){case\"opacity\":if(b){o.filter=k===\"\"?\"\":\"alpha(opacity=\"+(k*100)+\")\";if(!m.currentStyle||!m.currentStyle.hasLayout){o.display=\"inline-block\"}}o[j]=o[\"-moz-opacity\"]=o[\"-khtml-opacity\"]=k||\"\";break;case\"float\":b?o.styleFloat=k:o.cssFloat=k;break;default:o[j]=k||\"\"}if(l.settings.update_styles){l.setAttrib(p,\"data-mce-style\")}})},getStyle:function(m,j,l){m=this.get(m);if(!m){return}if(this.doc.defaultView&&l){j=j.replace(/[A-Z]/g,function(n){return\"-\"+n});try{return this.doc.defaultView.getComputedStyle(m,null).getPropertyValue(j)}catch(k){return null}}j=j.replace(/-(\\D)/g,function(o,n){return n.toUpperCase()});if(j==\"float\"){j=b?\"styleFloat\":\"cssFloat\"}if(m.currentStyle&&l){return m.currentStyle[j]}return m.style?m.style[j]:undefined},setStyles:function(m,n){var k=this,l=k.settings,j;j=l.update_styles;l.update_styles=0;f(n,function(o,p){k.setStyle(m,p,o)});l.update_styles=j;if(l.update_styles){k.setAttrib(m,l.cssText)}},removeAllAttribs:function(j){return this.run(j,function(m){var l,k=m.attributes;for(l=k.length-1;l>=0;l--){m.removeAttributeNode(k.item(l))}})},setAttrib:function(l,m,j){var k=this;if(!l||!m){return}if(k.settings.strict){m=m.toLowerCase()}return this.run(l,function(o){var n=k.settings;switch(m){case\"style\":if(!e(j,\"string\")){f(j,function(p,q){k.setStyle(o,q,p)});return}if(n.keep_values){if(j&&!k._isRes(j)){o.setAttribute(\"data-mce-style\",j,2)}else{o.removeAttribute(\"data-mce-style\",2)}}o.style.cssText=j;break;case\"class\":o.className=j||\"\";break;case\"src\":case\"href\":if(n.keep_values){if(n.url_converter){j=n.url_converter.call(n.url_converter_scope||k,j,m,o)}k.setAttrib(o,\"data-mce-\"+m,j,2)}break;case\"shape\":o.setAttribute(\"data-mce-style\",j);break}if(e(j)&&j!==null&&j.length!==0){o.setAttribute(m,\"\"+j,2)}else{o.removeAttribute(m,2)}})},setAttribs:function(k,l){var j=this;return this.run(k,function(m){f(l,function(o,p){j.setAttrib(m,p,o)})})},getAttrib:function(o,p,l){var j,k=this,m;o=k.get(o);if(!o||o.nodeType!==1){return l===m?false:l}if(!e(l)){l=\"\"}if(/^(src|href|style|coords|shape)$/.test(p)){j=o.getAttribute(\"data-mce-\"+p);if(j){return j}}if(b&&k.props[p]){j=o[k.props[p]];j=j&&j.nodeValue?j.nodeValue:j}if(!j){j=o.getAttribute(p,2)}if(/^(checked|compact|declare|defer|disabled|ismap|multiple|nohref|noshade|nowrap|readonly|selected)$/.test(p)){if(o[k.props[p]]===true&&j===\"\"){return p}return j?p:\"\"}if(o.nodeName===\"FORM\"&&o.getAttributeNode(p)){return o.getAttributeNode(p).nodeValue}if(p===\"style\"){j=j||o.style.cssText;if(j){j=k.serializeStyle(k.parseStyle(j),o.nodeName);if(k.settings.keep_values&&!k._isRes(j)){o.setAttribute(\"data-mce-style\",j)}}}if(d&&p===\"class\"&&j){j=j.replace(/(apple|webkit)\\-[a-z\\-]+/gi,\"\")}if(b){switch(p){case\"rowspan\":case\"colspan\":if(j===1){j=\"\"}break;case\"size\":if(j===\"+0\"||j===20||j===0){j=\"\"}break;case\"width\":case\"height\":case\"vspace\":case\"checked\":case\"disabled\":case\"readonly\":if(j===0){j=\"\"}break;case\"hspace\":if(j===-1){j=\"\"}break;case\"maxlength\":case\"tabindex\":if(j===32768||j===2147483647||j===\"32768\"){j=\"\"}break;case\"multiple\":case\"compact\":case\"noshade\":case\"nowrap\":if(j===65535){return p}return l;case\"shape\":j=j.toLowerCase();break;default:if(p.indexOf(\"on\")===0&&j){j=h._replace(/^function\\s+\\w+\\(\\)\\s+\\{\\s+(.*)\\s+\\}$/,\"$1\",\"\"+j)}}}return(j!==m&&j!==null&&j!==\"\")?\"\"+j:l},getPos:function(s,m){var k=this,j=0,q=0,o,p=k.doc,l;s=k.get(s);m=m||p.body;if(s){if(s.getBoundingClientRect){s=s.getBoundingClientRect();o=k.boxModel?p.documentElement:p.body;j=s.left+(p.documentElement.scrollLeft||p.body.scrollLeft)-o.clientTop;q=s.top+(p.documentElement.scrollTop||p.body.scrollTop)-o.clientLeft;return{x:j,y:q}}l=s;while(l&&l!=m&&l.nodeType){j+=l.offsetLeft||0;q+=l.offsetTop||0;l=l.offsetParent}l=s.parentNode;while(l&&l!=m&&l.nodeType){j-=l.scrollLeft||0;q-=l.scrollTop||0;l=l.parentNode}}return{x:j,y:q}},parseStyle:function(j){return this.styles.parse(j)},serializeStyle:function(k,j){return this.styles.serialize(k,j)},loadCSS:function(j){var l=this,m=l.doc,k;if(!j){j=\"\"}k=l.select(\"head\")[0];f(j.split(\",\"),function(n){var o;if(l.files[n]){return}l.files[n]=true;o=l.create(\"link\",{rel:\"stylesheet\",href:h._addVer(n)});if(b&&m.documentMode&&m.recalc){o.onload=function(){if(m.recalc){m.recalc()}o.onload=null}}k.appendChild(o)})},addClass:function(j,k){return this.run(j,function(l){var m;if(!k){return 0}if(this.hasClass(l,k)){return l.className}m=this.removeClass(l,k);return l.className=(m!=\"\"?(m+\" \"):\"\")+k})},removeClass:function(l,m){var j=this,k;return j.run(l,function(o){var n;if(j.hasClass(o,m)){if(!k){k=new RegExp(\"(^|\\\\s+)\"+m+\"(\\\\s+|$)\",\"g\")}n=o.className.replace(k,\" \");n=h.trim(n!=\" \"?n:\"\");o.className=n;if(!n){o.removeAttribute(\"class\");o.removeAttribute(\"className\")}return n}return o.className})},hasClass:function(k,j){k=this.get(k);if(!k||!j){return false}return(\" \"+k.className+\" \").indexOf(\" \"+j+\" \")!==-1},show:function(j){return this.setStyle(j,\"display\",\"block\")},hide:function(j){return this.setStyle(j,\"display\",\"none\")},isHidden:function(j){j=this.get(j);return !j||j.style.display==\"none\"||this.getStyle(j,\"display\")==\"none\"},uniqueId:function(j){return(!j?\"mce_\":j)+(this.counter++)},setHTML:function(l,k){var j=this;return j.run(l,function(n){if(b){while(n.firstChild){n.removeChild(n.firstChild)}try{n.innerHTML=\"<br />\"+k;n.removeChild(n.firstChild)}catch(m){n=j.create(\"div\");n.innerHTML=\"<br />\"+k;f(n.childNodes,function(p,o){if(o){n.appendChild(p)}})}}else{n.innerHTML=k}return k})},getOuterHTML:function(l){var k,j=this;l=j.get(l);if(!l){return null}if(l.nodeType===1&&j.hasOuterHTML){return l.outerHTML}k=(l.ownerDocument||j.doc).createElement(\"body\");k.appendChild(l.cloneNode(true));return k.innerHTML},setOuterHTML:function(m,k,n){var j=this;function l(p,o,r){var s,q;q=r.createElement(\"body\");q.innerHTML=o;s=q.lastChild;while(s){j.insertAfter(s.cloneNode(true),p);s=s.previousSibling}j.remove(p)}return this.run(m,function(p){p=j.get(p);if(p.nodeType==1){n=n||p.ownerDocument||j.doc;if(b){try{if(b&&p.nodeType==1){p.outerHTML=k}else{l(p,k,n)}}catch(o){l(p,k,n)}}else{l(p,k,n)}}})},decode:c.decode,encode:c.encodeAllRaw,insertAfter:function(j,k){k=this.get(k);return this.run(j,function(m){var l,n;l=k.parentNode;n=k.nextSibling;if(n){l.insertBefore(m,n)}else{l.appendChild(m)}return m})},isBlock:function(k){var j=k.nodeType;if(j){return !!(j===1&&g[k.nodeName])}return !!g[k]},replace:function(p,m,j){var l=this;if(e(m,\"array\")){p=p.cloneNode(true)}return l.run(m,function(k){if(j){f(h.grep(k.childNodes),function(n){p.appendChild(n)})}return k.parentNode.replaceChild(p,k)})},rename:function(m,j){var l=this,k;if(m.nodeName!=j.toUpperCase()){k=l.create(j);f(l.getAttribs(m),function(n){l.setAttrib(k,n.nodeName,l.getAttrib(m,n.nodeName))});l.replace(k,m,1)}return k||m},findCommonAncestor:function(l,j){var m=l,k;while(m){k=j;while(k&&m!=k){k=k.parentNode}if(m==k){break}m=m.parentNode}if(!m&&l.ownerDocument){return l.ownerDocument.documentElement}return m},toHex:function(j){var l=/^\\s*rgb\\s*?\\(\\s*?([0-9]+)\\s*?,\\s*?([0-9]+)\\s*?,\\s*?([0-9]+)\\s*?\\)\\s*$/i.exec(j);function k(m){m=parseInt(m).toString(16);return m.length>1?m:\"0\"+m}if(l){j=\"#\"+k(l[1])+k(l[2])+k(l[3]);return j}return j},getClasses:function(){var n=this,j=[],m,o={},p=n.settings.class_filter,l;if(n.classes){return n.classes}function q(r){f(r.imports,function(s){q(s)});f(r.cssRules||r.rules,function(s){switch(s.type||1){case 1:if(s.selectorText){f(s.selectorText.split(\",\"),function(t){t=t.replace(/^\\s*|\\s*$|^\\s\\./g,\"\");if(/\\.mce/.test(t)||!/\\.[\\w\\-]+$/.test(t)){return}l=t;t=h._replace(/.*\\.([a-z0-9_\\-]+).*/i,\"$1\",t);if(p&&!(t=p(t,l))){return}if(!o[t]){j.push({\"class\":t});o[t]=1}})}break;case 3:q(s.styleSheet);break}})}try{f(n.doc.styleSheets,q)}catch(k){}if(j.length>0){n.classes=j}return j},run:function(m,l,k){var j=this,n;if(j.doc&&typeof(m)===\"string\"){m=j.get(m)}if(!m){return false}k=k||this;if(!m.nodeType&&(m.length||m.length===0)){n=[];f(m,function(p,o){if(p){if(typeof(p)==\"string\"){p=j.doc.getElementById(p)}n.push(l.call(k,p,o))}});return n}return l.call(k,m)},getAttribs:function(k){var j;k=this.get(k);if(!k){return[]}if(b){j=[];if(k.nodeName==\"OBJECT\"){return k.attributes}if(k.nodeName===\"OPTION\"&&this.getAttrib(k,\"selected\")){j.push({specified:1,nodeName:\"selected\"})}k.cloneNode(false).outerHTML.replace(/<\\/?[\\w:\\-]+ ?|=[\\\"][^\\\"]+\\\"|=\\'[^\\']+\\'|=[\\w\\-]+|>/gi,\"\").replace(/[\\w:\\-]+/gi,function(l){j.push({specified:1,nodeName:l})});return j}return k.attributes},isEmpty:function(m,k){var r=this,o,n,q,j,l,p;m=m.firstChild;if(m){j=new h.dom.TreeWalker(m);k=k||r.schema?r.schema.getNonEmptyElements():null;do{q=m.nodeType;if(q===1){if(m.getAttribute(\"data-mce-bogus\")){continue}l=m.nodeName.toLowerCase();if(k&&k[l]){p=m.parentNode;if(l===\"br\"&&r.isBlock(p)&&p.firstChild===m&&p.lastChild===m){continue}return false}n=r.getAttribs(m);o=m.attributes.length;while(o--){l=m.attributes[o].nodeName;if(l===\"name\"||l===\"data-mce-bookmark\"){return false}}}if((q===3&&!i.test(m.nodeValue))){return false}}while(m=j.next())}return true},destroy:function(k){var j=this;if(j.events){j.events.destroy()}j.win=j.doc=j.root=j.events=null;if(!k){h.removeUnload(j.destroy)}},createRng:function(){var j=this.doc;return j.createRange?j.createRange():new h.dom.Range(this)},nodeIndex:function(n,o){var j=0,l,m,k;if(n){for(l=n.nodeType,n=n.previousSibling,m=n;n;n=n.previousSibling){k=n.nodeType;if(o&&k==3){if(k==l||!n.nodeValue.length){continue}}j++;l=k}}return j},split:function(n,m,q){var s=this,j=s.createRng(),o,l,p;function k(v){var t,r=v.childNodes,u=v.nodeType;if(u==1&&v.getAttribute(\"data-mce-type\")==\"bookmark\"){return}for(t=r.length-1;t>=0;t--){k(r[t])}if(u!=9){if(u==3&&v.nodeValue.length>0){if(!s.isBlock(v.parentNode)||h.trim(v.nodeValue).length>0){return}}else{if(u==1){r=v.childNodes;if(r.length==1&&r[0]&&r[0].nodeType==1&&r[0].getAttribute(\"data-mce-type\")==\"bookmark\"){v.parentNode.insertBefore(r[0],v)}if(r.length||/^(br|hr|input|img)$/i.test(v.nodeName)){return}}}s.remove(v)}return v}if(n&&m){j.setStart(n.parentNode,s.nodeIndex(n));j.setEnd(m.parentNode,s.nodeIndex(m));o=j.extractContents();j=s.createRng();j.setStart(m.parentNode,s.nodeIndex(m)+1);j.setEnd(n.parentNode,s.nodeIndex(n)+1);l=j.extractContents();p=n.parentNode;p.insertBefore(k(o),n);if(q){p.replaceChild(q,m)}else{p.insertBefore(m,n)}p.insertBefore(k(l),n);s.remove(n);return q||m}},bind:function(n,j,m,l){var k=this;if(!k.events){k.events=new h.dom.EventUtils()}return k.events.add(n,j,m,l||this)},unbind:function(m,j,l){var k=this;if(!k.events){k.events=new h.dom.EventUtils()}return k.events.remove(m,j,l)},_findSib:function(m,j,k){var l=this,n=j;if(m){if(e(n,\"string\")){n=function(o){return l.is(o,j)}}for(m=m[k];m;m=m[k]){if(n(m)){return m}}}return null},_isRes:function(j){return/^(top|left|bottom|right|width|height)/i.test(j)||/;\\s*(top|left|bottom|right|width|height)/i.test(j)}});h.DOM=new h.dom.DOMUtils(document,{process_html:0})})(tinymce);(function(a){function b(c){var N=this,e=c.doc,S=0,E=1,j=2,D=true,R=false,U=\"startOffset\",h=\"startContainer\",P=\"endContainer\",z=\"endOffset\",k=tinymce.extend,n=c.nodeIndex;k(N,{startContainer:e,startOffset:0,endContainer:e,endOffset:0,collapsed:D,commonAncestorContainer:e,START_TO_START:0,START_TO_END:1,END_TO_END:2,END_TO_START:3,setStart:q,setEnd:s,setStartBefore:g,setStartAfter:I,setEndBefore:J,setEndAfter:u,collapse:A,selectNode:x,selectNodeContents:F,compareBoundaryPoints:v,deleteContents:p,extractContents:H,cloneContents:d,insertNode:C,surroundContents:M,cloneRange:K});function q(V,t){B(D,V,t)}function s(V,t){B(R,V,t)}function g(t){q(t.parentNode,n(t))}function I(t){q(t.parentNode,n(t)+1)}function J(t){s(t.parentNode,n(t))}function u(t){s(t.parentNode,n(t)+1)}function A(t){if(t){N[P]=N[h];N[z]=N[U]}else{N[h]=N[P];N[U]=N[z]}N.collapsed=D}function x(t){g(t);u(t)}function F(t){q(t,0);s(t,t.nodeType===1?t.childNodes.length:t.nodeValue.length)}function v(Y,t){var ab=N[h],W=N[U],aa=N[P],V=N[z],Z=t.startContainer,ad=t.startOffset,X=t.endContainer,ac=t.endOffset;if(Y===0){return G(ab,W,Z,ad)}if(Y===1){return G(aa,V,Z,ad)}if(Y===2){return G(aa,V,X,ac)}if(Y===3){return G(ab,W,X,ac)}}function p(){m(j)}function H(){return m(S)}function d(){return m(E)}function C(Y){var V=this[h],t=this[U],X,W;if((V.nodeType===3||V.nodeType===4)&&V.nodeValue){if(!t){V.parentNode.insertBefore(Y,V)}else{if(t>=V.nodeValue.length){c.insertAfter(Y,V)}else{X=V.splitText(t);V.parentNode.insertBefore(Y,X)}}}else{if(V.childNodes.length>0){W=V.childNodes[t]}if(W){V.insertBefore(Y,W)}else{V.appendChild(Y)}}}function M(V){var t=N.extractContents();N.insertNode(V);V.appendChild(t);N.selectNode(V)}function K(){return k(new b(c),{startContainer:N[h],startOffset:N[U],endContainer:N[P],endOffset:N[z],collapsed:N.collapsed,commonAncestorContainer:N.commonAncestorContainer})}function O(t,V){var W;if(t.nodeType==3){return t}if(V<0){return t}W=t.firstChild;while(W&&V>0){--V;W=W.nextSibling}if(W){return W}return t}function l(){return(N[h]==N[P]&&N[U]==N[z])}function G(X,Z,V,Y){var aa,W,t,ab,ad,ac;if(X==V){if(Z==Y){return 0}if(Z<Y){return -1}return 1}aa=V;while(aa&&aa.parentNode!=X){aa=aa.parentNode}if(aa){W=0;t=X.firstChild;while(t!=aa&&W<Z){W++;t=t.nextSibling}if(Z<=W){return -1}return 1}aa=X;while(aa&&aa.parentNode!=V){aa=aa.parentNode}if(aa){W=0;t=V.firstChild;while(t!=aa&&W<Y){W++;t=t.nextSibling}if(W<Y){return -1}return 1}ab=c.findCommonAncestor(X,V);ad=X;while(ad&&ad.parentNode!=ab){ad=ad.parentNode}if(!ad){ad=ab}ac=V;while(ac&&ac.parentNode!=ab){ac=ac.parentNode}if(!ac){ac=ab}if(ad==ac){return 0}t=ab.firstChild;while(t){if(t==ad){return -1}if(t==ac){return 1}t=t.nextSibling}}function B(V,Y,X){var t,W;if(V){N[h]=Y;N[U]=X}else{N[P]=Y;N[z]=X}t=N[P];while(t.parentNode){t=t.parentNode}W=N[h];while(W.parentNode){W=W.parentNode}if(W==t){if(G(N[h],N[U],N[P],N[z])>0){N.collapse(V)}}else{N.collapse(V)}N.collapsed=l();N.commonAncestorContainer=c.findCommonAncestor(N[h],N[P])}function m(ab){var aa,X=0,ad=0,V,Z,W,Y,t,ac;if(N[h]==N[P]){return f(ab)}for(aa=N[P],V=aa.parentNode;V;aa=V,V=V.parentNode){if(V==N[h]){return r(aa,ab)}++X}for(aa=N[h],V=aa.parentNode;V;aa=V,V=V.parentNode){if(V==N[P]){return T(aa,ab)}++ad}Z=ad-X;W=N[h];while(Z>0){W=W.parentNode;Z--}Y=N[P];while(Z<0){Y=Y.parentNode;Z++}for(t=W.parentNode,ac=Y.parentNode;t!=ac;t=t.parentNode,ac=ac.parentNode){W=t;Y=ac}return o(W,Y,ab)}function f(Z){var ab,Y,X,aa,t,W,V;if(Z!=j){ab=e.createDocumentFragment()}if(N[U]==N[z]){return ab}if(N[h].nodeType==3){Y=N[h].nodeValue;X=Y.substring(N[U],N[z]);if(Z!=E){N[h].deleteData(N[U],N[z]-N[U]);N.collapse(D)}if(Z==j){return}ab.appendChild(e.createTextNode(X));return ab}aa=O(N[h],N[U]);t=N[z]-N[U];while(t>0){W=aa.nextSibling;V=y(aa,Z);if(ab){ab.appendChild(V)}--t;aa=W}if(Z!=E){N.collapse(D)}return ab}function r(ab,Y){var aa,Z,V,t,X,W;if(Y!=j){aa=e.createDocumentFragment()}Z=i(ab,Y);if(aa){aa.appendChild(Z)}V=n(ab);t=V-N[U];if(t<=0){if(Y!=E){N.setEndBefore(ab);N.collapse(R)}return aa}Z=ab.previousSibling;while(t>0){X=Z.previousSibling;W=y(Z,Y);if(aa){aa.insertBefore(W,aa.firstChild)}--t;Z=X}if(Y!=E){N.setEndBefore(ab);N.collapse(R)}return aa}function T(Z,Y){var ab,V,aa,t,X,W;if(Y!=j){ab=e.createDocumentFragment()}aa=Q(Z,Y);if(ab){ab.appendChild(aa)}V=n(Z);++V;t=N[z]-V;aa=Z.nextSibling;while(t>0){X=aa.nextSibling;W=y(aa,Y);if(ab){ab.appendChild(W)}--t;aa=X}if(Y!=E){N.setStartAfter(Z);N.collapse(D)}return ab}function o(Z,t,ac){var W,ae,Y,aa,ab,V,ad,X;if(ac!=j){ae=e.createDocumentFragment()}W=Q(Z,ac);if(ae){ae.appendChild(W)}Y=Z.parentNode;aa=n(Z);ab=n(t);++aa;V=ab-aa;ad=Z.nextSibling;while(V>0){X=ad.nextSibling;W=y(ad,ac);if(ae){ae.appendChild(W)}ad=X;--V}W=i(t,ac);if(ae){ae.appendChild(W)}if(ac!=E){N.setStartAfter(Z);N.collapse(D)}return ae}function i(aa,ab){var W=O(N[P],N[z]-1),ac,Z,Y,t,V,X=W!=N[P];if(W==aa){return L(W,X,R,ab)}ac=W.parentNode;Z=L(ac,R,R,ab);while(ac){while(W){Y=W.previousSibling;t=L(W,X,R,ab);if(ab!=j){Z.insertBefore(t,Z.firstChild)}X=D;W=Y}if(ac==aa){return Z}W=ac.previousSibling;ac=ac.parentNode;V=L(ac,R,R,ab);if(ab!=j){V.appendChild(Z)}Z=V}}function Q(aa,ab){var X=O(N[h],N[U]),Y=X!=N[h],ac,Z,W,t,V;if(X==aa){return L(X,Y,D,ab)}ac=X.parentNode;Z=L(ac,R,D,ab);while(ac){while(X){W=X.nextSibling;t=L(X,Y,D,ab);if(ab!=j){Z.appendChild(t)}Y=D;X=W}if(ac==aa){return Z}X=ac.nextSibling;ac=ac.parentNode;V=L(ac,R,D,ab);if(ab!=j){V.appendChild(Z)}Z=V}}function L(t,Y,ab,ac){var X,W,Z,V,aa;if(Y){return y(t,ac)}if(t.nodeType==3){X=t.nodeValue;if(ab){V=N[U];W=X.substring(V);Z=X.substring(0,V)}else{V=N[z];W=X.substring(0,V);Z=X.substring(V)}if(ac!=E){t.nodeValue=Z}if(ac==j){return}aa=t.cloneNode(R);aa.nodeValue=W;return aa}if(ac==j){return}return t.cloneNode(R)}function y(V,t){if(t!=j){return t==E?V.cloneNode(D):V}V.parentNode.removeChild(V)}}a.Range=b})(tinymce.dom);(function(){function a(d){var b=this,h=d.dom,c=true,f=false;function e(i,j){var k,t=0,q,n,m,l,o,r,p=-1,s;k=i.duplicate();k.collapse(j);s=k.parentElement();if(s.ownerDocument!==d.dom.doc){return}while(s.contentEditable===\"false\"){s=s.parentNode}if(!s.hasChildNodes()){return{node:s,inside:1}}m=s.children;q=m.length-1;while(t<=q){r=Math.floor((t+q)/2);l=m[r];k.moveToElementText(l);p=k.compareEndPoints(j?\"StartToStart\":\"EndToEnd\",i);if(p>0){q=r-1}else{if(p<0){t=r+1}else{return{node:l}}}}if(p<0){if(!l){k.moveToElementText(s);k.collapse(true);l=s;n=true}else{k.collapse(false)}k.setEndPoint(j?\"EndToStart\":\"EndToEnd\",i);if(k.compareEndPoints(j?\"StartToStart\":\"StartToEnd\",i)>0){k=i.duplicate();k.collapse(j);o=-1;while(s==k.parentElement()){if(k.move(\"character\",-1)==0){break}o++}}o=o||k.text.replace(\"\\r\\n\",\" \").length}else{k.collapse(true);k.setEndPoint(j?\"StartToStart\":\"StartToEnd\",i);o=k.text.replace(\"\\r\\n\",\" \").length}return{node:l,position:p,offset:o,inside:n}}function g(){var i=d.getRng(),r=h.createRng(),l,k,p,q,m,j;l=i.item?i.item(0):i.parentElement();if(l.ownerDocument!=h.doc){return r}k=d.isCollapsed();if(i.item){r.setStart(l.parentNode,h.nodeIndex(l));r.setEnd(r.startContainer,r.startOffset+1);return r}function o(A){var u=e(i,A),s,y,z=0,x,v,t;s=u.node;y=u.offset;if(u.inside&&!s.hasChildNodes()){r[A?\"setStart\":\"setEnd\"](s,0);return}if(y===v){r[A?\"setStartBefore\":\"setEndAfter\"](s);return}if(u.position<0){x=u.inside?s.firstChild:s.nextSibling;if(!x){r[A?\"setStartAfter\":\"setEndAfter\"](s);return}if(!y){if(x.nodeType==3){r[A?\"setStart\":\"setEnd\"](x,0)}else{r[A?\"setStartBefore\":\"setEndBefore\"](x)}return}while(x){t=x.nodeValue;z+=t.length;if(z>=y){s=x;z-=y;z=t.length-z;break}x=x.nextSibling}}else{x=s.previousSibling;if(!x){return r[A?\"setStartBefore\":\"setEndBefore\"](s)}if(!y){if(s.nodeType==3){r[A?\"setStart\":\"setEnd\"](x,s.nodeValue.length)}else{r[A?\"setStartAfter\":\"setEndAfter\"](x)}return}while(x){z+=x.nodeValue.length;if(z>=y){s=x;z-=y;break}x=x.previousSibling}}r[A?\"setStart\":\"setEnd\"](s,z)}try{o(true);if(!k){o()}}catch(n){if(n.number==-2147024809){m=b.getBookmark(2);p=i.duplicate();p.collapse(true);l=p.parentElement();if(!k){p=i.duplicate();p.collapse(false);q=p.parentElement();q.innerHTML=q.innerHTML}l.innerHTML=l.innerHTML;b.moveToBookmark(m);i=d.getRng();o(true);if(!k){o()}}else{throw n}}return r}this.getBookmark=function(m){var j=d.getRng(),o,i,l={};function n(u){var u,t,p,s,r,q=[];t=u.parentNode;p=h.getRoot().parentNode;while(t!=p){s=t.children;r=s.length;while(r--){if(u===s[r]){q.push(r);break}}u=t;t=t.parentNode}return q}function k(q){var p;p=e(j,q);if(p){return{position:p.position,offset:p.offset,indexes:n(p.node),inside:p.inside}}}if(m===2){if(!j.item){l.start=k(true);if(!d.isCollapsed()){l.end=k()}}else{l.start={ctrl:true,indexes:n(j.item(0))}}}return l};this.moveToBookmark=function(k){var j,i=h.doc.body;function m(o){var r,q,n,p;r=h.getRoot();for(q=o.length-1;q>=0;q--){p=r.children;n=o[q];if(n<=p.length-1){r=p[n]}}return r}function l(r){var n=k[r?\"start\":\"end\"],q,p,o;if(n){q=n.position>0;p=i.createTextRange();p.moveToElementText(m(n.indexes));offset=n.offset;if(offset!==o){p.collapse(n.inside||q);p.moveStart(\"character\",q?-offset:offset)}else{p.collapse(r)}j.setEndPoint(r?\"StartToStart\":\"EndToStart\",p);if(r){j.collapse(true)}}}if(k.start){if(k.start.ctrl){j=i.createControlRange();j.addElement(m(k.start.indexes));j.select()}else{j=i.createTextRange();l(true);l();j.select()}}};this.addRange=function(i){var n,l,k,p,s,q,r=d.dom.doc,m=r.body;function j(z){var u,y,t,x,v;t=h.create(\"a\");u=z?k:s;y=z?p:q;x=n.duplicate();if(u==r||u==r.documentElement){u=m;y=0}if(u.nodeType==3){u.parentNode.insertBefore(t,u);x.moveToElementText(t);x.moveStart(\"character\",y);h.remove(t);n.setEndPoint(z?\"StartToStart\":\"EndToEnd\",x)}else{v=u.childNodes;if(v.length){if(y>=v.length){h.insertAfter(t,v[v.length-1])}else{u.insertBefore(t,v[y])}x.moveToElementText(t)}else{t=r.createTextNode(\"\\uFEFF\");u.appendChild(t);x.moveToElementText(t.parentNode);x.collapse(c)}n.setEndPoint(z?\"StartToStart\":\"EndToEnd\",x);h.remove(t)}}k=i.startContainer;p=i.startOffset;s=i.endContainer;q=i.endOffset;n=m.createTextRange();if(k==s&&k.nodeType==1&&p==q-1){if(p==q-1){try{l=m.createControlRange();l.addElement(k.childNodes[p]);l.select();return}catch(o){}}}j(true);j();n.select()};this.getRangeAt=g}tinymce.dom.TridentSelection=a})();(function(d){var f=d.each,c=d.DOM,b=d.isIE,e=d.isWebKit,a;d.create(\"tinymce.dom.EventUtils\",{EventUtils:function(){this.inits=[];this.events=[]},add:function(m,p,l,j){var g,h=this,i=h.events,k;if(p instanceof Array){k=[];f(p,function(o){k.push(h.add(m,o,l,j))});return k}if(m&&m.hasOwnProperty&&m instanceof Array){k=[];f(m,function(n){n=c.get(n);k.push(h.add(n,p,l,j))});return k}m=c.get(m);if(!m){return}g=function(n){if(h.disabled){return}n=n||window.event;if(n&&b){if(!n.target){n.target=n.srcElement}d.extend(n,h._stoppers)}if(!j){return l(n)}return l.call(j,n)};if(p==\"unload\"){d.unloads.unshift({func:g});return g}if(p==\"init\"){if(h.domLoaded){g()}else{h.inits.push(g)}return g}i.push({obj:m,name:p,func:l,cfunc:g,scope:j});h._add(m,p,g);return l},remove:function(l,m,k){var h=this,g=h.events,i=false,j;if(l&&l.hasOwnProperty&&l instanceof Array){j=[];f(l,function(n){n=c.get(n);j.push(h.remove(n,m,k))});return j}l=c.get(l);f(g,function(o,n){if(o.obj==l&&o.name==m&&(!k||(o.func==k||o.cfunc==k))){g.splice(n,1);h._remove(l,m,o.cfunc);i=true;return false}});return i},clear:function(l){var j=this,g=j.events,h,k;if(l){l=c.get(l);for(h=g.length-1;h>=0;h--){k=g[h];if(k.obj===l){j._remove(k.obj,k.name,k.cfunc);k.obj=k.cfunc=null;g.splice(h,1)}}}},cancel:function(g){if(!g){return false}this.stop(g);return this.prevent(g)},stop:function(g){if(g.stopPropagation){g.stopPropagation()}else{g.cancelBubble=true}return false},prevent:function(g){if(g.preventDefault){g.preventDefault()}else{g.returnValue=false}return false},destroy:function(){var g=this;f(g.events,function(j,h){g._remove(j.obj,j.name,j.cfunc);j.obj=j.cfunc=null});g.events=[];g=null},_add:function(h,i,g){if(h.attachEvent){h.attachEvent(\"on\"+i,g)}else{if(h.addEventListener){h.addEventListener(i,g,false)}else{h[\"on\"+i]=g}}},_remove:function(i,j,h){if(i){try{if(i.detachEvent){i.detachEvent(\"on\"+j,h)}else{if(i.removeEventListener){i.removeEventListener(j,h,false)}else{i[\"on\"+j]=null}}}catch(g){}}},_pageInit:function(h){var g=this;if(g.domLoaded){return}g.domLoaded=true;f(g.inits,function(i){i()});g.inits=[]},_wait:function(i){var g=this,h=i.document;if(i.tinyMCE_GZ&&tinyMCE_GZ.loaded){g.domLoaded=1;return}if(h.attachEvent){h.attachEvent(\"onreadystatechange\",function(){if(h.readyState===\"complete\"){h.detachEvent(\"onreadystatechange\",arguments.callee);g._pageInit(i)}});if(h.documentElement.doScroll&&i==i.top){(function(){if(g.domLoaded){return}try{h.documentElement.doScroll(\"left\")}catch(j){setTimeout(arguments.callee,0);return}g._pageInit(i)})()}}else{if(h.addEventListener){g._add(i,\"DOMContentLoaded\",function(){g._pageInit(i)})}}g._add(i,\"load\",function(){g._pageInit(i)})},_stoppers:{preventDefault:function(){this.returnValue=false},stopPropagation:function(){this.cancelBubble=true}}});a=d.dom.Event=new d.dom.EventUtils();a._wait(window);d.addUnload(function(){a.destroy()})})(tinymce);(function(a){a.dom.Element=function(f,d){var b=this,e,c;b.settings=d=d||{};b.id=f;b.dom=e=d.dom||a.DOM;if(!a.isIE){c=e.get(b.id)}a.each((\"getPos,getRect,getParent,add,setStyle,getStyle,setStyles,setAttrib,setAttribs,getAttrib,addClass,removeClass,hasClass,getOuterHTML,setOuterHTML,remove,show,hide,isHidden,setHTML,get\").split(/,/),function(g){b[g]=function(){var h=[f],j;for(j=0;j<arguments.length;j++){h.push(arguments[j])}h=e[g].apply(e,h);b.update(g);return h}});a.extend(b,{on:function(i,h,g){return a.dom.Event.add(b.id,i,h,g)},getXY:function(){return{x:parseInt(b.getStyle(\"left\")),y:parseInt(b.getStyle(\"top\"))}},getSize:function(){var g=e.get(b.id);return{w:parseInt(b.getStyle(\"width\")||g.clientWidth),h:parseInt(b.getStyle(\"height\")||g.clientHeight)}},moveTo:function(g,h){b.setStyles({left:g,top:h})},moveBy:function(g,i){var h=b.getXY();b.moveTo(h.x+g,h.y+i)},resizeTo:function(g,i){b.setStyles({width:g,height:i})},resizeBy:function(g,j){var i=b.getSize();b.resizeTo(i.w+g,i.h+j)},update:function(h){var g;if(a.isIE6&&d.blocker){h=h||\"\";if(h.indexOf(\"get\")===0||h.indexOf(\"has\")===0||h.indexOf(\"is\")===0){return}if(h==\"remove\"){e.remove(b.blocker);return}if(!b.blocker){b.blocker=e.uniqueId();g=e.add(d.container||e.getRoot(),\"iframe\",{id:b.blocker,style:\"position:absolute;\",frameBorder:0,src:'javascript:\"\"'});e.setStyle(g,\"opacity\",0)}else{g=e.get(b.blocker)}e.setStyles(g,{left:b.getStyle(\"left\",1),top:b.getStyle(\"top\",1),width:b.getStyle(\"width\",1),height:b.getStyle(\"height\",1),display:b.getStyle(\"display\",1),zIndex:parseInt(b.getStyle(\"zIndex\",1)||0)-1})}}})}})(tinymce);(function(c){function e(f){return f.replace(/[\\n\\r]+/g,\"\")}var b=c.is,a=c.isIE,d=c.each;c.create(\"tinymce.dom.Selection\",{Selection:function(i,h,g){var f=this;f.dom=i;f.win=h;f.serializer=g;d([\"onBeforeSetContent\",\"onBeforeGetContent\",\"onSetContent\",\"onGetContent\"],function(j){f[j]=new c.util.Dispatcher(f)});if(!f.win.getSelection){f.tridentSel=new c.dom.TridentSelection(f)}if(c.isIE&&i.boxModel){this._fixIESelection()}c.addUnload(f.destroy,f)},setCursorLocation:function(h,i){var f=this;var g=f.dom.createRng();g.setStart(h,i);g.setEnd(h,i);f.setRng(g);f.collapse(false)},getContent:function(g){var f=this,h=f.getRng(),l=f.dom.create(\"body\"),j=f.getSel(),i,k,m;g=g||{};i=k=\"\";g.get=true;g.format=g.format||\"html\";g.forced_root_block=\"\";f.onBeforeGetContent.dispatch(f,g);if(g.format==\"text\"){return f.isCollapsed()?\"\":(h.text||(j.toString?j.toString():\"\"))}if(h.cloneContents){m=h.cloneContents();if(m){l.appendChild(m)}}else{if(b(h.item)||b(h.htmlText)){l.innerHTML=\"<br>\"+(h.item?h.item(0).outerHTML:h.htmlText);l.removeChild(l.firstChild)}else{l.innerHTML=h.toString()}}if(/^\\s/.test(l.innerHTML)){i=\" \"}if(/\\s+$/.test(l.innerHTML)){k=\" \"}g.getInner=true;g.content=f.isCollapsed()?\"\":i+f.serializer.serialize(l,g)+k;f.onGetContent.dispatch(f,g);return g.content},setContent:function(g,i){var n=this,f=n.getRng(),j,k=n.win.document,m,l;i=i||{format:\"html\"};i.set=true;g=i.content=g;if(!i.no_events){n.onBeforeSetContent.dispatch(n,i)}g=i.content;if(f.insertNode){g+='<span id=\"__caret\">_</span>';if(f.startContainer==k&&f.endContainer==k){k.body.innerHTML=g}else{f.deleteContents();if(k.body.childNodes.length==0){k.body.innerHTML=g}else{if(f.createContextualFragment){f.insertNode(f.createContextualFragment(g))}else{m=k.createDocumentFragment();l=k.createElement(\"div\");m.appendChild(l);l.outerHTML=g;f.insertNode(m)}}}j=n.dom.get(\"__caret\");f=k.createRange();f.setStartBefore(j);f.setEndBefore(j);n.setRng(f);n.dom.remove(\"__caret\");try{n.setRng(f)}catch(h){}}else{if(f.item){k.execCommand(\"Delete\",false,null);f=n.getRng()}if(/^\\s+/.test(g)){f.pasteHTML('<span id=\"__mce_tmp\">_</span>'+g);n.dom.remove(\"__mce_tmp\")}else{f.pasteHTML(g)}}if(!i.no_events){n.onSetContent.dispatch(n,i)}},getStart:function(){var g=this.getRng(),h,f,j,i;if(g.duplicate||g.item){if(g.item){return g.item(0)}j=g.duplicate();j.collapse(1);h=j.parentElement();f=i=g.parentElement();while(i=i.parentNode){if(i==h){h=f;break}}return h}else{h=g.startContainer;if(h.nodeType==1&&h.hasChildNodes()){h=h.childNodes[Math.min(h.childNodes.length-1,g.startOffset)]}if(h&&h.nodeType==3){return h.parentNode}return h}},getEnd:function(){var g=this,h=g.getRng(),i,f;if(h.duplicate||h.item){if(h.item){return h.item(0)}h=h.duplicate();h.collapse(0);i=h.parentElement();if(i&&i.nodeName==\"BODY\"){return i.lastChild||i}return i}else{i=h.endContainer;f=h.endOffset;if(i.nodeType==1&&i.hasChildNodes()){i=i.childNodes[f>0?f-1:f]}if(i&&i.nodeType==3){return i.parentNode}return i}},getBookmark:function(r,s){var v=this,m=v.dom,g,j,i,n,h,o,p,l=\"\\uFEFF\",u;function f(x,y){var t=0;d(m.select(x),function(A,z){if(A==y){t=z}});return t}if(r==2){function k(){var x=v.getRng(true),t=m.getRoot(),y={};function z(C,H){var B=C[H?\"startContainer\":\"endContainer\"],G=C[H?\"startOffset\":\"endOffset\"],A=[],D,F,E=0;if(B.nodeType==3){if(s){for(D=B.previousSibling;D&&D.nodeType==3;D=D.previousSibling){G+=D.nodeValue.length}}A.push(G)}else{F=B.childNodes;if(G>=F.length&&F.length){E=1;G=Math.max(0,F.length-1)}A.push(v.dom.nodeIndex(F[G],s)+E)}for(;B&&B!=t;B=B.parentNode){A.push(v.dom.nodeIndex(B,s))}return A}y.start=z(x,true);if(!v.isCollapsed()){y.end=z(x)}return y}if(v.tridentSel){return v.tridentSel.getBookmark(r)}return k()}if(r){return{rng:v.getRng()}}g=v.getRng();i=m.uniqueId();n=tinyMCE.activeEditor.selection.isCollapsed();u=\"overflow:hidden;line-height:0px\";if(g.duplicate||g.item){if(!g.item){j=g.duplicate();try{g.collapse();g.pasteHTML('<span data-mce-type=\"bookmark\" id=\"'+i+'_start\" style=\"'+u+'\">'+l+\"</span>\");if(!n){j.collapse(false);g.moveToElementText(j.parentElement());if(g.compareEndPoints(\"StartToEnd\",j)==0){j.move(\"character\",-1)}j.pasteHTML('<span data-mce-type=\"bookmark\" id=\"'+i+'_end\" style=\"'+u+'\">'+l+\"</span>\")}}catch(q){return null}}else{o=g.item(0);h=o.nodeName;return{name:h,index:f(h,o)}}}else{o=v.getNode();h=o.nodeName;if(h==\"IMG\"){return{name:h,index:f(h,o)}}j=g.cloneRange();if(!n){j.collapse(false);j.insertNode(m.create(\"span\",{\"data-mce-type\":\"bookmark\",id:i+\"_end\",style:u},l))}g.collapse(true);g.insertNode(m.create(\"span\",{\"data-mce-type\":\"bookmark\",id:i+\"_start\",style:u},l))}v.moveToBookmark({id:i,keep:1});return{id:i}},moveToBookmark:function(n){var r=this,l=r.dom,i,h,f,q,j,s,o,p;if(n){if(n.start){f=l.createRng();q=l.getRoot();function g(z){var t=n[z?\"start\":\"end\"],v,x,y,u;if(t){y=t[0];for(x=q,v=t.length-1;v>=1;v--){u=x.childNodes;if(t[v]>u.length-1){return}x=u[t[v]]}if(x.nodeType===3){y=Math.min(t[0],x.nodeValue.length)}if(x.nodeType===1){y=Math.min(t[0],x.childNodes.length)}if(z){f.setStart(x,y)}else{f.setEnd(x,y)}}return true}if(r.tridentSel){return r.tridentSel.moveToBookmark(n)}if(g(true)&&g()){r.setRng(f)}}else{if(n.id){function k(A){var u=l.get(n.id+\"_\"+A),z,t,x,y,v=n.keep;if(u){z=u.parentNode;if(A==\"start\"){if(!v){t=l.nodeIndex(u)}else{z=u.firstChild;t=1}j=s=z;o=p=t}else{if(!v){t=l.nodeIndex(u)}else{z=u.firstChild;t=1}s=z;p=t}if(!v){y=u.previousSibling;x=u.nextSibling;d(c.grep(u.childNodes),function(B){if(B.nodeType==3){B.nodeValue=B.nodeValue.replace(/\\uFEFF/g,\"\")}});while(u=l.get(n.id+\"_\"+A)){l.remove(u,1)}if(y&&x&&y.nodeType==x.nodeType&&y.nodeType==3&&!c.isOpera){t=y.nodeValue.length;y.appendData(x.nodeValue);l.remove(x);if(A==\"start\"){j=s=y;o=p=t}else{s=y;p=t}}}}}function m(t){if(l.isBlock(t)&&!t.innerHTML){t.innerHTML=!a?'<br data-mce-bogus=\"1\" />':\" \"}return t}k(\"start\");k(\"end\");if(j){f=l.createRng();f.setStart(m(j),o);f.setEnd(m(s),p);r.setRng(f)}}else{if(n.name){r.select(l.select(n.name)[n.index])}else{if(n.rng){r.setRng(n.rng)}}}}}},select:function(k,j){var i=this,l=i.dom,g=l.createRng(),f;if(k){f=l.nodeIndex(k);g.setStart(k.parentNode,f);g.setEnd(k.parentNode,f+1);if(j){function h(m,o){var n=new c.dom.TreeWalker(m,m);do{if(m.nodeType==3&&c.trim(m.nodeValue).length!=0){if(o){g.setStart(m,0)}else{g.setEnd(m,m.nodeValue.length)}return}if(m.nodeName==\"BR\"){if(o){g.setStartBefore(m)}else{g.setEndBefore(m)}return}}while(m=(o?n.next():n.prev()))}h(k,1);h(k)}i.setRng(g)}return k},isCollapsed:function(){var f=this,h=f.getRng(),g=f.getSel();if(!h||h.item){return false}if(h.compareEndPoints){return h.compareEndPoints(\"StartToEnd\",h)===0}return !g||h.collapsed},collapse:function(f){var h=this,g=h.getRng(),i;if(g.item){i=g.item(0);g=h.win.document.body.createTextRange();g.moveToElementText(i)}g.collapse(!!f);h.setRng(g)},getSel:function(){var g=this,f=this.win;return f.getSelection?f.getSelection():f.document.selection},getRng:function(l){var g=this,h,i,k,j=g.win.document;if(l&&g.tridentSel){return g.tridentSel.getRangeAt(0)}try{if(h=g.getSel()){i=h.rangeCount>0?h.getRangeAt(0):(h.createRange?h.createRange():j.createRange())}}catch(f){}if(c.isIE&&i&&i.setStart&&j.selection.createRange().item){k=j.selection.createRange().item(0);i=j.createRange();i.setStartBefore(k);i.setEndAfter(k)}if(!i){i=j.createRange?j.createRange():j.body.createTextRange()}if(g.selectedRange&&g.explicitRange){if(i.compareBoundaryPoints(i.START_TO_START,g.selectedRange)===0&&i.compareBoundaryPoints(i.END_TO_END,g.selectedRange)===0){i=g.explicitRange}else{g.selectedRange=null;g.explicitRange=null}}return i},setRng:function(i){var h,g=this;if(!g.tridentSel){h=g.getSel();if(h){g.explicitRange=i;try{h.removeAllRanges()}catch(f){}h.addRange(i);g.selectedRange=h.getRangeAt(0)}}else{if(i.cloneRange){g.tridentSel.addRange(i);return}try{i.select()}catch(f){}}},setNode:function(g){var f=this;f.setContent(f.dom.getOuterHTML(g));return g},getNode:function(){var h=this,g=h.getRng(),i=h.getSel(),l,k=g.startContainer,f=g.endContainer;if(!g){return h.dom.getRoot()}if(g.setStart){l=g.commonAncestorContainer;if(!g.collapsed){if(g.startContainer==g.endContainer){if(g.endOffset-g.startOffset<2){if(g.startContainer.hasChildNodes()){l=g.startContainer.childNodes[g.startOffset]}}}if(k.nodeType===3&&f.nodeType===3){function j(p,m){var o=p;while(p&&p.nodeType===3&&p.length===0){p=m?p.nextSibling:p.previousSibling}return p||o}if(k.length===g.startOffset){k=j(k.nextSibling,true)}else{k=k.parentNode}if(g.endOffset===0){f=j(f.previousSibling,false)}else{f=f.parentNode}if(k&&k===f){return k}}}if(l&&l.nodeType==3){return l.parentNode}return l}return g.item?g.item(0):g.parentElement()},getSelectedBlocks:function(g,f){var i=this,j=i.dom,m,h,l,k=[];m=j.getParent(g||i.getStart(),j.isBlock);h=j.getParent(f||i.getEnd(),j.isBlock);if(m){k.push(m)}if(m&&h&&m!=h){l=m;while((l=l.nextSibling)&&l!=h){if(j.isBlock(l)){k.push(l)}}}if(h&&m!=h){k.push(h)}return k},normalize:function(){var g=this,f,i;if(c.isIE){return}function h(p){var k,o,n,m=g.dom,j=m.getRoot(),l;k=f[(p?\"start\":\"end\")+\"Container\"];o=f[(p?\"start\":\"end\")+\"Offset\"];if(k.nodeType===9){k=k.body;o=0}if(k===j){if(k.hasChildNodes()){k=k.childNodes[Math.min(!p&&o>0?o-1:o,k.childNodes.length-1)];o=0;if(k.hasChildNodes()){l=k;n=new c.dom.TreeWalker(k,j);do{if(l.nodeType===3){o=p?0:l.nodeValue.length-1;k=l;break}if(l.nodeName===\"BR\"){o=m.nodeIndex(l);k=l.parentNode;break}}while(l=(p?n.next():n.prev()));i=true}}}if(i){f[\"set\"+(p?\"Start\":\"End\")](k,o)}}f=g.getRng();h(true);if(f.collapsed){h()}if(i){g.setRng(f)}},destroy:function(g){var f=this;f.win=null;if(!g){c.removeUnload(f.destroy)}},_fixIESelection:function(){var g=this.dom,m=g.doc,h=m.body,j,n,f;m.documentElement.unselectable=true;function i(o,r){var p=h.createTextRange();try{p.moveToPoint(o,r)}catch(q){p=null}return p}function l(p){var o;if(p.button){o=i(p.x,p.y);if(o){if(o.compareEndPoints(\"StartToStart\",n)>0){o.setEndPoint(\"StartToStart\",n)}else{o.setEndPoint(\"EndToEnd\",n)}o.select()}}else{k()}}function k(){var o=m.selection.createRange();if(n&&!o.item&&o.compareEndPoints(\"StartToEnd\",o)===0){n.select()}g.unbind(m,\"mouseup\",k);g.unbind(m,\"mousemove\",l);n=j=0}g.bind(m,[\"mousedown\",\"contextmenu\"],function(o){if(o.target.nodeName===\"HTML\"){if(j){k()}f=m.documentElement;if(f.scrollHeight>f.clientHeight){return}j=1;n=i(o.x,o.y);if(n){g.bind(m,\"mouseup\",k);g.bind(m,\"mousemove\",l);g.win.focus();n.select()}}})}})})(tinymce);(function(a){a.dom.Serializer=function(e,i,f){var h,b,d=a.isIE,g=a.each,c;if(!e.apply_source_formatting){e.indent=false}e.remove_trailing_brs=true;i=i||a.DOM;f=f||new a.html.Schema(e);e.entity_encoding=e.entity_encoding||\"named\";h=new a.util.Dispatcher(self);b=new a.util.Dispatcher(self);c=new a.html.DomParser(e,f);c.addAttributeFilter(\"src,href,style\",function(k,j){var o=k.length,l,q,n=\"data-mce-\"+j,p=e.url_converter,r=e.url_converter_scope,m;while(o--){l=k[o];q=l.attributes.map[n];if(q!==m){l.attr(j,q.length>0?q:null);l.attr(n,null)}else{q=l.attributes.map[j];if(j===\"style\"){q=i.serializeStyle(i.parseStyle(q),l.name)}else{if(p){q=p.call(r,q,j,l.name)}}l.attr(j,q.length>0?q:null)}}});c.addAttributeFilter(\"class\",function(j,k){var l=j.length,m,n;while(l--){m=j[l];n=m.attr(\"class\").replace(/\\s*mce(Item\\w+|Selected)\\s*/g,\"\");m.attr(\"class\",n.length>0?n:null)}});c.addAttributeFilter(\"data-mce-type\",function(j,l,k){var m=j.length,n;while(m--){n=j[m];if(n.attributes.map[\"data-mce-type\"]===\"bookmark\"&&!k.cleanup){n.remove()}}});c.addNodeFilter(\"script,style\",function(k,l){var m=k.length,n,o;function j(p){return p.replace(/(<!--\\[CDATA\\[|\\]\\]-->)/g,\"\\n\").replace(/^[\\r\\n]*|[\\r\\n]*$/g,\"\").replace(/^\\s*(\\/\\/\\s*<!--|\\/\\/\\s*<!\\[CDATA\\[|<!--|<!\\[CDATA\\[)[\\r\\n]*/g,\"\").replace(/\\s*(\\/\\/\\s*\\]\\]>|\\/\\/\\s*-->|\\]\\]>|-->|\\]\\]-->)\\s*$/g,\"\")}while(m--){n=k[m];o=n.firstChild?n.firstChild.value:\"\";if(l===\"script\"){n.attr(\"type\",(n.attr(\"type\")||\"text/javascript\").replace(/^mce\\-/,\"\"));if(o.length>0){n.firstChild.value=\"// <![CDATA[\\n\"+j(o)+\"\\n// ]]>\"}}else{if(o.length>0){n.firstChild.value=\"<!--\\n\"+j(o)+\"\\n-->\"}}}});c.addNodeFilter(\"#comment\",function(j,k){var l=j.length,m;while(l--){m=j[l];if(m.value.indexOf(\"[CDATA[\")===0){m.name=\"#cdata\";m.type=4;m.value=m.value.replace(/^\\[CDATA\\[|\\]\\]$/g,\"\")}else{if(m.value.indexOf(\"mce:protected \")===0){m.name=\"#text\";m.type=3;m.raw=true;m.value=unescape(m.value).substr(14)}}}});c.addNodeFilter(\"xml:namespace,input\",function(j,k){var l=j.length,m;while(l--){m=j[l];if(m.type===7){m.remove()}else{if(m.type===1){if(k===\"input\"&&!(\"type\" in m.attributes.map)){m.attr(\"type\",\"text\")}}}}});if(e.fix_list_elements){c.addNodeFilter(\"ul,ol\",function(k,l){var m=k.length,n,j;while(m--){n=k[m];j=n.parent;if(j.name===\"ul\"||j.name===\"ol\"){if(n.prev&&n.prev.name===\"li\"){n.prev.append(n)}}}})}c.addAttributeFilter(\"data-mce-src,data-mce-href,data-mce-style\",function(j,k){var l=j.length;while(l--){j[l].attr(k,null)}});return{schema:f,addNodeFilter:c.addNodeFilter,addAttributeFilter:c.addAttributeFilter,onPreProcess:h,onPostProcess:b,serialize:function(o,m){var l,p,k,j,n;if(d&&i.select(\"script,style,select,map\").length>0){n=o.innerHTML;o=o.cloneNode(false);i.setHTML(o,n)}else{o=o.cloneNode(true)}l=o.ownerDocument.implementation;if(l.createHTMLDocument){p=l.createHTMLDocument(\"\");g(o.nodeName==\"BODY\"?o.childNodes:[o],function(q){p.body.appendChild(p.importNode(q,true))});if(o.nodeName!=\"BODY\"){o=p.body.firstChild}else{o=p.body}k=i.doc;i.doc=p}m=m||{};m.format=m.format||\"html\";if(!m.no_events){m.node=o;h.dispatch(self,m)}j=new a.html.Serializer(e,f);m.content=j.serialize(c.parse(m.getInner?o.innerHTML:a.trim(i.getOuterHTML(o),m),m));if(!m.cleanup){m.content=m.content.replace(/\\uFEFF/g,\"\")}if(!m.no_events){b.dispatch(self,m)}if(k){i.doc=k}m.node=null;return m.content},addRules:function(j){f.addValidElements(j)},setRules:function(j){f.setValidElements(j)}}}})(tinymce);(function(a){a.dom.ScriptLoader=function(h){var c=0,k=1,i=2,l={},j=[],f={},d=[],g=0,e;function b(m,v){var x=this,q=a.DOM,s,o,r,n;function p(){q.remove(n);if(s){s.onreadystatechange=s.onload=s=null}v()}function u(){if(typeof(console)!==\"undefined\"&&console.log){console.log(\"Failed to load: \"+m)}}n=q.uniqueId();if(a.isIE6){o=new a.util.URI(m);r=location;if(o.host==r.hostname&&o.port==r.port&&(o.protocol+\":\")==r.protocol&&o.protocol.toLowerCase()!=\"file\"){a.util.XHR.send({url:a._addVer(o.getURI()),success:function(y){var t=q.create(\"script\",{type:\"text/javascript\"});t.text=y;document.getElementsByTagName(\"head\")[0].appendChild(t);q.remove(t);p()},error:u});return}}s=q.create(\"script\",{id:n,type:\"text/javascript\",src:a._addVer(m)});if(!a.isIE){s.onload=p}s.onerror=u;if(!a.isOpera){s.onreadystatechange=function(){var t=s.readyState;if(t==\"complete\"||t==\"loaded\"){p()}}}(document.getElementsByTagName(\"head\")[0]||document.body).appendChild(s)}this.isDone=function(m){return l[m]==i};this.markDone=function(m){l[m]=i};this.add=this.load=function(m,q,n){var o,p=l[m];if(p==e){j.push(m);l[m]=c}if(q){if(!f[m]){f[m]=[]}f[m].push({func:q,scope:n||this})}};this.loadQueue=function(n,m){this.loadScripts(j,n,m)};this.loadScripts=function(m,q,p){var o;function n(r){a.each(f[r],function(s){s.func.call(s.scope)});f[r]=e}d.push({func:q,scope:p||this});o=function(){var r=a.grep(m);m.length=0;a.each(r,function(s){if(l[s]==i){n(s);return}if(l[s]!=k){l[s]=k;g++;b(s,function(){l[s]=i;g--;n(s);o()})}});if(!g){a.each(d,function(s){s.func.call(s.scope)});d.length=0}};o()}};a.ScriptLoader=new a.dom.ScriptLoader()})(tinymce);tinymce.dom.TreeWalker=function(a,c){var b=a;function d(i,f,e,j){var h,g;if(i){if(!j&&i[f]){return i[f]}if(i!=c){h=i[e];if(h){return h}for(g=i.parentNode;g&&g!=c;g=g.parentNode){h=g[e];if(h){return h}}}}}this.current=function(){return b};this.next=function(e){return(b=d(b,\"firstChild\",\"nextSibling\",e))};this.prev=function(e){return(b=d(b,\"lastChild\",\"previousSibling\",e))}};(function(a){a.dom.RangeUtils=function(c){var b=\"\\uFEFF\";this.walk=function(d,r){var h=d.startContainer,k=d.startOffset,s=d.endContainer,l=d.endOffset,i,f,n,g,q,p,e;e=c.select(\"td.mceSelected,th.mceSelected\");if(e.length>0){a.each(e,function(t){r([t])});return}function o(v,u,t){var x=[];for(;v&&v!=t;v=v[u]){x.push(v)}return x}function m(u,t){do{if(u.parentNode==t){return u}u=u.parentNode}while(u)}function j(v,u,x){var t=x?\"nextSibling\":\"previousSibling\";for(g=v,q=g.parentNode;g&&g!=u;g=q){q=g.parentNode;p=o(g==v?g:g[t],t);if(p.length){if(!x){p.reverse()}r(p)}}}if(h.nodeType==1&&h.hasChildNodes()){h=h.childNodes[k]}if(s.nodeType==1&&s.hasChildNodes()){s=s.childNodes[Math.min(l-1,s.childNodes.length-1)]}i=c.findCommonAncestor(h,s);if(h==s){return r([h])}for(g=h;g;g=g.parentNode){if(g==s){return j(h,i,true)}if(g==i){break}}for(g=s;g;g=g.parentNode){if(g==h){return j(s,i)}if(g==i){break}}f=m(h,i)||h;n=m(s,i)||s;j(h,f,true);p=o(f==h?f:f.nextSibling,\"nextSibling\",n==s?n.nextSibling:n);if(p.length){r(p)}j(s,n)}};a.dom.RangeUtils.compareRanges=function(c,b){if(c&&b){if(c.item||c.duplicate){if(c.item&&b.item&&c.item(0)===b.item(0)){return true}if(c.isEqual&&b.isEqual&&b.isEqual(c)){return true}}else{return c.startContainer==b.startContainer&&c.startOffset==b.startOffset}}return false}})(tinymce);(function(b){var a=b.dom.Event,c=b.each;b.create(\"tinymce.ui.KeyboardNavigation\",{KeyboardNavigation:function(e,f){var p=this,m=e.root,l=e.items,n=e.enableUpDown,i=e.enableLeftRight||!e.enableUpDown,k=e.excludeFromTabOrder,j,h,o,d,g;f=f||b.DOM;j=function(q){g=q.target.id};h=function(q){f.setAttrib(q.target.id,\"tabindex\",\"-1\")};d=function(q){var r=f.get(g);f.setAttrib(r,\"tabindex\",\"0\");r.focus()};p.focus=function(){f.get(g).focus()};p.destroy=function(){c(l,function(q){f.unbind(f.get(q.id),\"focus\",j);f.unbind(f.get(q.id),\"blur\",h)});f.unbind(f.get(m),\"focus\",d);f.unbind(f.get(m),\"keydown\",o);l=f=m=p.focus=j=h=o=d=null;p.destroy=function(){}};p.moveFocus=function(u,r){var q=-1,t=p.controls,s;if(!g){return}c(l,function(x,v){if(x.id===g){q=v;return false}});q+=u;if(q<0){q=l.length-1}else{if(q>=l.length){q=0}}s=l[q];f.setAttrib(g,\"tabindex\",\"-1\");f.setAttrib(s.id,\"tabindex\",\"0\");f.get(s.id).focus();if(e.actOnFocus){e.onAction(s.id)}if(r){a.cancel(r)}};o=function(y){var u=37,t=39,x=38,z=40,q=27,s=14,r=13,v=32;switch(y.keyCode){case u:if(i){p.moveFocus(-1)}break;case t:if(i){p.moveFocus(1)}break;case x:if(n){p.moveFocus(-1)}break;case z:if(n){p.moveFocus(1)}break;case q:if(e.onCancel){e.onCancel();a.cancel(y)}break;case s:case r:case v:if(e.onAction){e.onAction(g);a.cancel(y)}break}};c(l,function(s,q){var r;if(!s.id){s.id=f.uniqueId(\"_mce_item_\")}if(k){f.bind(s.id,\"blur\",h);r=\"-1\"}else{r=(q===0?\"0\":\"-1\")}f.setAttrib(s.id,\"tabindex\",r);f.bind(f.get(s.id),\"focus\",j)});if(l[0]){g=l[0].id}f.setAttrib(m,\"tabindex\",\"-1\");f.bind(f.get(m),\"focus\",d);f.bind(f.get(m),\"keydown\",o)}})})(tinymce);(function(c){var b=c.DOM,a=c.is;c.create(\"tinymce.ui.Control\",{Control:function(f,e,d){this.id=f;this.settings=e=e||{};this.rendered=false;this.onRender=new c.util.Dispatcher(this);this.classPrefix=\"\";this.scope=e.scope||this;this.disabled=0;this.active=0;this.editor=d},setAriaProperty:function(f,e){var d=b.get(this.id+\"_aria\")||b.get(this.id);if(d){b.setAttrib(d,\"aria-\"+f,!!e)}},focus:function(){b.get(this.id).focus()},setDisabled:function(d){if(d!=this.disabled){this.setAriaProperty(\"disabled\",d);this.setState(\"Disabled\",d);this.setState(\"Enabled\",!d);this.disabled=d}},isDisabled:function(){return this.disabled},setActive:function(d){if(d!=this.active){this.setState(\"Active\",d);this.active=d;this.setAriaProperty(\"pressed\",d)}},isActive:function(){return this.active},setState:function(f,d){var e=b.get(this.id);f=this.classPrefix+f;if(d){b.addClass(e,f)}else{b.removeClass(e,f)}},isRendered:function(){return this.rendered},renderHTML:function(){},renderTo:function(d){b.setHTML(d,this.renderHTML())},postRender:function(){var e=this,d;if(a(e.disabled)){d=e.disabled;e.disabled=-1;e.setDisabled(d)}if(a(e.active)){d=e.active;e.active=-1;e.setActive(d)}},remove:function(){b.remove(this.id);this.destroy()},destroy:function(){c.dom.Event.clear(this.id)}})})(tinymce);tinymce.create(\"tinymce.ui.Container:tinymce.ui.Control\",{Container:function(c,b,a){this.parent(c,b,a);this.controls=[];this.lookup={}},add:function(a){this.lookup[a.id]=a;this.controls.push(a);return a},get:function(a){return this.lookup[a]}});tinymce.create(\"tinymce.ui.Separator:tinymce.ui.Control\",{Separator:function(b,a){this.parent(b,a);this.classPrefix=\"mceSeparator\";this.setDisabled(true)},renderHTML:function(){return tinymce.DOM.createHTML(\"span\",{\"class\":this.classPrefix,role:\"separator\",\"aria-orientation\":\"vertical\",tabindex:\"-1\"})}});(function(d){var c=d.is,b=d.DOM,e=d.each,a=d.walk;d.create(\"tinymce.ui.MenuItem:tinymce.ui.Control\",{MenuItem:function(g,f){this.parent(g,f);this.classPrefix=\"mceMenuItem\"},setSelected:function(f){this.setState(\"Selected\",f);this.setAriaProperty(\"checked\",!!f);this.selected=f},isSelected:function(){return this.selected},postRender:function(){var f=this;f.parent();if(c(f.selected)){f.setSelected(f.selected)}}})})(tinymce);(function(d){var c=d.is,b=d.DOM,e=d.each,a=d.walk;d.create(\"tinymce.ui.Menu:tinymce.ui.MenuItem\",{Menu:function(h,g){var f=this;f.parent(h,g);f.items={};f.collapsed=false;f.menuCount=0;f.onAddItem=new d.util.Dispatcher(this)},expand:function(g){var f=this;if(g){a(f,function(h){if(h.expand){h.expand()}},\"items\",f)}f.collapsed=false},collapse:function(g){var f=this;if(g){a(f,function(h){if(h.collapse){h.collapse()}},\"items\",f)}f.collapsed=true},isCollapsed:function(){return this.collapsed},add:function(f){if(!f.settings){f=new d.ui.MenuItem(f.id||b.uniqueId(),f)}this.onAddItem.dispatch(this,f);return this.items[f.id]=f},addSeparator:function(){return this.add({separator:true})},addMenu:function(f){if(!f.collapse){f=this.createMenu(f)}this.menuCount++;return this.add(f)},hasMenus:function(){return this.menuCount!==0},remove:function(f){delete this.items[f.id]},removeAll:function(){var f=this;a(f,function(g){if(g.removeAll){g.removeAll()}else{g.remove()}g.destroy()},\"items\",f);f.items={}},createMenu:function(g){var f=new d.ui.Menu(g.id||b.uniqueId(),g);f.onAddItem.add(this.onAddItem.dispatch,this.onAddItem);return f}})})(tinymce);(function(e){var d=e.is,c=e.DOM,f=e.each,a=e.dom.Event,b=e.dom.Element;e.create(\"tinymce.ui.DropMenu:tinymce.ui.Menu\",{DropMenu:function(h,g){g=g||{};g.container=g.container||c.doc.body;g.offset_x=g.offset_x||0;g.offset_y=g.offset_y||0;g.vp_offset_x=g.vp_offset_x||0;g.vp_offset_y=g.vp_offset_y||0;if(d(g.icons)&&!g.icons){g[\"class\"]+=\" mceNoIcons\"}this.parent(h,g);this.onShowMenu=new e.util.Dispatcher(this);this.onHideMenu=new e.util.Dispatcher(this);this.classPrefix=\"mceMenu\"},createMenu:function(j){var h=this,i=h.settings,g;j.container=j.container||i.container;j.parent=h;j.constrain=j.constrain||i.constrain;j[\"class\"]=j[\"class\"]||i[\"class\"];j.vp_offset_x=j.vp_offset_x||i.vp_offset_x;j.vp_offset_y=j.vp_offset_y||i.vp_offset_y;j.keyboard_focus=i.keyboard_focus;g=new e.ui.DropMenu(j.id||c.uniqueId(),j);g.onAddItem.add(h.onAddItem.dispatch,h.onAddItem);return g},focus:function(){var g=this;if(g.keyboardNav){g.keyboardNav.focus()}},update:function(){var i=this,j=i.settings,g=c.get(\"menu_\"+i.id+\"_tbl\"),l=c.get(\"menu_\"+i.id+\"_co\"),h,k;h=j.max_width?Math.min(g.clientWidth,j.max_width):g.clientWidth;k=j.max_height?Math.min(g.clientHeight,j.max_height):g.clientHeight;if(!c.boxModel){i.element.setStyles({width:h+2,height:k+2})}else{i.element.setStyles({width:h,height:k})}if(j.max_width){c.setStyle(l,\"width\",h)}if(j.max_height){c.setStyle(l,\"height\",k);if(g.clientHeight<j.max_height){c.setStyle(l,\"overflow\",\"hidden\")}}},showMenu:function(p,n,r){var z=this,A=z.settings,o,g=c.getViewPort(),u,l,v,q,i=2,k,j,m=z.classPrefix;z.collapse(1);if(z.isMenuVisible){return}if(!z.rendered){o=c.add(z.settings.container,z.renderNode());f(z.items,function(h){h.postRender()});z.element=new b(\"menu_\"+z.id,{blocker:1,container:A.container})}else{o=c.get(\"menu_\"+z.id)}if(!e.isOpera){c.setStyles(o,{left:-65535,top:-65535})}c.show(o);z.update();p+=A.offset_x||0;n+=A.offset_y||0;g.w-=4;g.h-=4;if(A.constrain){u=o.clientWidth-i;l=o.clientHeight-i;v=g.x+g.w;q=g.y+g.h;if((p+A.vp_offset_x+u)>v){p=r?r-u:Math.max(0,(v-A.vp_offset_x)-u)}if((n+A.vp_offset_y+l)>q){n=Math.max(0,(q-A.vp_offset_y)-l)}}c.setStyles(o,{left:p,top:n});z.element.update();z.isMenuVisible=1;z.mouseClickFunc=a.add(o,\"click\",function(s){var h;s=s.target;if(s&&(s=c.getParent(s,\"tr\"))&&!c.hasClass(s,m+\"ItemSub\")){h=z.items[s.id];if(h.isDisabled()){return}k=z;while(k){if(k.hideMenu){k.hideMenu()}k=k.settings.parent}if(h.settings.onclick){h.settings.onclick(s)}return a.cancel(s)}});if(z.hasMenus()){z.mouseOverFunc=a.add(o,\"mouseover\",function(x){var h,t,s;x=x.target;if(x&&(x=c.getParent(x,\"tr\"))){h=z.items[x.id];if(z.lastMenu){z.lastMenu.collapse(1)}if(h.isDisabled()){return}if(x&&c.hasClass(x,m+\"ItemSub\")){t=c.getRect(x);h.showMenu((t.x+t.w-i),t.y-i,t.x);z.lastMenu=h;c.addClass(c.get(h.id).firstChild,m+\"ItemActive\")}}})}a.add(o,\"keydown\",z._keyHandler,z);z.onShowMenu.dispatch(z);if(A.keyboard_focus){z._setupKeyboardNav()}},hideMenu:function(j){var g=this,i=c.get(\"menu_\"+g.id),h;if(!g.isMenuVisible){return}if(g.keyboardNav){g.keyboardNav.destroy()}a.remove(i,\"mouseover\",g.mouseOverFunc);a.remove(i,\"click\",g.mouseClickFunc);a.remove(i,\"keydown\",g._keyHandler);c.hide(i);g.isMenuVisible=0;if(!j){g.collapse(1)}if(g.element){g.element.hide()}if(h=c.get(g.id)){c.removeClass(h.firstChild,g.classPrefix+\"ItemActive\")}g.onHideMenu.dispatch(g)},add:function(i){var g=this,h;i=g.parent(i);if(g.isRendered&&(h=c.get(\"menu_\"+g.id))){g._add(c.select(\"tbody\",h)[0],i)}return i},collapse:function(g){this.parent(g);this.hideMenu(1)},remove:function(g){c.remove(g.id);this.destroy();return this.parent(g)},destroy:function(){var g=this,h=c.get(\"menu_\"+g.id);if(g.keyboardNav){g.keyboardNav.destroy()}a.remove(h,\"mouseover\",g.mouseOverFunc);a.remove(c.select(\"a\",h),\"focus\",g.mouseOverFunc);a.remove(h,\"click\",g.mouseClickFunc);a.remove(h,\"keydown\",g._keyHandler);if(g.element){g.element.remove()}c.remove(h)},renderNode:function(){var i=this,j=i.settings,l,h,k,g;g=c.create(\"div\",{role:\"listbox\",id:\"menu_\"+i.id,\"class\":j[\"class\"],style:\"position:absolute;left:0;top:0;z-index:200000;outline:0\"});if(i.settings.parent){c.setAttrib(g,\"aria-parent\",\"menu_\"+i.settings.parent.id)}k=c.add(g,\"div\",{role:\"presentation\",id:\"menu_\"+i.id+\"_co\",\"class\":i.classPrefix+(j[\"class\"]?\" \"+j[\"class\"]:\"\")});i.element=new b(\"menu_\"+i.id,{blocker:1,container:j.container});if(j.menu_line){c.add(k,\"span\",{\"class\":i.classPrefix+\"Line\"})}l=c.add(k,\"table\",{role:\"presentation\",id:\"menu_\"+i.id+\"_tbl\",border:0,cellPadding:0,cellSpacing:0});h=c.add(l,\"tbody\");f(i.items,function(m){i._add(h,m)});i.rendered=true;return g},_setupKeyboardNav:function(){var i,h,g=this;i=c.select(\"#menu_\"+g.id)[0];h=c.select(\"a[role=option]\",\"menu_\"+g.id);h.splice(0,0,i);g.keyboardNav=new e.ui.KeyboardNavigation({root:\"menu_\"+g.id,items:h,onCancel:function(){g.hideMenu()},enableUpDown:true});i.focus()},_keyHandler:function(g){var h=this,i;switch(g.keyCode){case 37:if(h.settings.parent){h.hideMenu();h.settings.parent.focus();a.cancel(g)}break;case 39:if(h.mouseOverFunc){h.mouseOverFunc(g)}break}},_add:function(j,h){var i,q=h.settings,p,l,k,m=this.classPrefix,g;if(q.separator){l=c.add(j,\"tr\",{id:h.id,\"class\":m+\"ItemSeparator\"});c.add(l,\"td\",{\"class\":m+\"ItemSeparator\"});if(i=l.previousSibling){c.addClass(i,\"mceLast\")}return}i=l=c.add(j,\"tr\",{id:h.id,\"class\":m+\"Item \"+m+\"ItemEnabled\"});i=k=c.add(i,q.titleItem?\"th\":\"td\");i=p=c.add(i,\"a\",{id:h.id+\"_aria\",role:q.titleItem?\"presentation\":\"option\",href:\"javascript:;\",onclick:\"return false;\",onmousedown:\"return false;\"});if(q.parent){c.setAttrib(p,\"aria-haspopup\",\"true\");c.setAttrib(p,\"aria-owns\",\"menu_\"+h.id)}c.addClass(k,q[\"class\"]);g=c.add(i,\"span\",{\"class\":\"mceIcon\"+(q.icon?\" mce_\"+q.icon:\"\")});if(q.icon_src){c.add(g,\"img\",{src:q.icon_src})}i=c.add(i,q.element||\"span\",{\"class\":\"mceText\",title:h.settings.title},h.settings.title);if(h.settings.style){c.setAttrib(i,\"style\",h.settings.style)}if(j.childNodes.length==1){c.addClass(l,\"mceFirst\")}if((i=l.previousSibling)&&c.hasClass(i,m+\"ItemSeparator\")){c.addClass(l,\"mceFirst\")}if(h.collapse){c.addClass(l,m+\"ItemSub\")}if(i=l.previousSibling){c.removeClass(i,\"mceLast\")}c.addClass(l,\"mceLast\")}})})(tinymce);(function(b){var a=b.DOM;b.create(\"tinymce.ui.Button:tinymce.ui.Control\",{Button:function(e,d,c){this.parent(e,d,c);this.classPrefix=\"mceButton\"},renderHTML:function(){var f=this.classPrefix,e=this.settings,d,c;c=a.encode(e.label||\"\");d='<a role=\"button\" id=\"'+this.id+'\" href=\"javascript:;\" class=\"'+f+\" \"+f+\"Enabled \"+e[\"class\"]+(c?\" \"+f+\"Labeled\":\"\")+'\" onmousedown=\"return false;\" onclick=\"return false;\" aria-labelledby=\"'+this.id+'_voice\" title=\"'+a.encode(e.title)+'\">';if(e.image&&!(this.editor&&this.editor.forcedHighContrastMode)){d+='<img class=\"mceIcon\" src=\"'+e.image+'\" alt=\"'+a.encode(e.title)+'\" />'+c}else{d+='<span class=\"mceIcon '+e[\"class\"]+'\"></span>'+(c?'<span class=\"'+f+'Label\">'+c+\"</span>\":\"\")}d+='<span class=\"mceVoiceLabel mceIconOnly\" style=\"display: none;\" id=\"'+this.id+'_voice\">'+e.title+\"</span>\";d+=\"</a>\";return d},postRender:function(){var c=this,d=c.settings;b.dom.Event.add(c.id,\"click\",function(f){if(!c.isDisabled()){return d.onclick.call(d.scope,f)}})}})})(tinymce);(function(d){var c=d.DOM,b=d.dom.Event,e=d.each,a=d.util.Dispatcher;d.create(\"tinymce.ui.ListBox:tinymce.ui.Control\",{ListBox:function(i,h,f){var g=this;g.parent(i,h,f);g.items=[];g.onChange=new a(g);g.onPostRender=new a(g);g.onAdd=new a(g);g.onRenderMenu=new d.util.Dispatcher(this);g.classPrefix=\"mceListBox\"},select:function(h){var g=this,j,i;if(h==undefined){return g.selectByIndex(-1)}if(h&&h.call){i=h}else{i=function(f){return f==h}}if(h!=g.selectedValue){e(g.items,function(k,f){if(i(k.value)){j=1;g.selectByIndex(f);return false}});if(!j){g.selectByIndex(-1)}}},selectByIndex:function(f){var h=this,i,j,g;if(f!=h.selectedIndex){i=c.get(h.id+\"_text\");g=c.get(h.id+\"_voiceDesc\");j=h.items[f];if(j){h.selectedValue=j.value;h.selectedIndex=f;c.setHTML(i,c.encode(j.title));c.setHTML(g,h.settings.title+\" - \"+j.title);c.removeClass(i,\"mceTitle\");c.setAttrib(h.id,\"aria-valuenow\",j.title)}else{c.setHTML(i,c.encode(h.settings.title));c.setHTML(g,c.encode(h.settings.title));c.addClass(i,\"mceTitle\");h.selectedValue=h.selectedIndex=null;c.setAttrib(h.id,\"aria-valuenow\",h.settings.title)}i=0}},add:function(i,f,h){var g=this;h=h||{};h=d.extend(h,{title:i,value:f});g.items.push(h);g.onAdd.dispatch(g,h)},getLength:function(){return this.items.length},renderHTML:function(){var i=\"\",f=this,g=f.settings,j=f.classPrefix;i='<span role=\"listbox\" aria-haspopup=\"true\" aria-labelledby=\"'+f.id+'_voiceDesc\" aria-describedby=\"'+f.id+'_voiceDesc\"><table role=\"presentation\" tabindex=\"0\" id=\"'+f.id+'\" cellpadding=\"0\" cellspacing=\"0\" class=\"'+j+\" \"+j+\"Enabled\"+(g[\"class\"]?(\" \"+g[\"class\"]):\"\")+'\"><tbody><tr>';i+=\"<td>\"+c.createHTML(\"span\",{id:f.id+\"_voiceDesc\",\"class\":\"voiceLabel\",style:\"display:none;\"},f.settings.title);i+=c.createHTML(\"a\",{id:f.id+\"_text\",tabindex:-1,href:\"javascript:;\",\"class\":\"mceText\",onclick:\"return false;\",onmousedown:\"return false;\"},c.encode(f.settings.title))+\"</td>\";i+=\"<td>\"+c.createHTML(\"a\",{id:f.id+\"_open\",tabindex:-1,href:\"javascript:;\",\"class\":\"mceOpen\",onclick:\"return false;\",onmousedown:\"return false;\"},'<span><span style=\"display:none;\" class=\"mceIconOnly\" aria-hidden=\"true\">\\u25BC</span></span>')+\"</td>\";i+=\"</tr></tbody></table></span>\";return i},showMenu:function(){var g=this,i,h=c.get(this.id),f;if(g.isDisabled()||g.items.length==0){return}if(g.menu&&g.menu.isMenuVisible){return g.hideMenu()}if(!g.isMenuRendered){g.renderMenu();g.isMenuRendered=true}i=c.getPos(h);f=g.menu;f.settings.offset_x=i.x;f.settings.offset_y=i.y;f.settings.keyboard_focus=!d.isOpera;if(g.oldID){f.items[g.oldID].setSelected(0)}e(g.items,function(j){if(j.value===g.selectedValue){f.items[j.id].setSelected(1);g.oldID=j.id}});f.showMenu(0,h.clientHeight);b.add(c.doc,\"mousedown\",g.hideMenu,g);c.addClass(g.id,g.classPrefix+\"Selected\")},hideMenu:function(g){var f=this;if(f.menu&&f.menu.isMenuVisible){c.removeClass(f.id,f.classPrefix+\"Selected\");if(g&&g.type==\"mousedown\"&&(g.target.id==f.id+\"_text\"||g.target.id==f.id+\"_open\")){return}if(!g||!c.getParent(g.target,\".mceMenu\")){c.removeClass(f.id,f.classPrefix+\"Selected\");b.remove(c.doc,\"mousedown\",f.hideMenu,f);f.menu.hideMenu()}}},renderMenu:function(){var g=this,f;f=g.settings.control_manager.createDropMenu(g.id+\"_menu\",{menu_line:1,\"class\":g.classPrefix+\"Menu mceNoIcons\",max_width:150,max_height:150});f.onHideMenu.add(function(){g.hideMenu();g.focus()});f.add({title:g.settings.title,\"class\":\"mceMenuItemTitle\",onclick:function(){if(g.settings.onselect(\"\")!==false){g.select(\"\")}}});e(g.items,function(h){if(h.value===undefined){f.add({title:h.title,role:\"option\",\"class\":\"mceMenuItemTitle\",onclick:function(){if(g.settings.onselect(\"\")!==false){g.select(\"\")}}})}else{h.id=c.uniqueId();h.role=\"option\";h.onclick=function(){if(g.settings.onselect(h.value)!==false){g.select(h.value)}};f.add(h)}});g.onRenderMenu.dispatch(g,f);g.menu=f},postRender:function(){var f=this,g=f.classPrefix;b.add(f.id,\"click\",f.showMenu,f);b.add(f.id,\"keydown\",function(h){if(h.keyCode==32){f.showMenu(h);b.cancel(h)}});b.add(f.id,\"focus\",function(){if(!f._focused){f.keyDownHandler=b.add(f.id,\"keydown\",function(h){if(h.keyCode==40){f.showMenu();b.cancel(h)}});f.keyPressHandler=b.add(f.id,\"keypress\",function(i){var h;if(i.keyCode==13){h=f.selectedValue;f.selectedValue=null;b.cancel(i);f.settings.onselect(h)}})}f._focused=1});b.add(f.id,\"blur\",function(){b.remove(f.id,\"keydown\",f.keyDownHandler);b.remove(f.id,\"keypress\",f.keyPressHandler);f._focused=0});if(d.isIE6||!c.boxModel){b.add(f.id,\"mouseover\",function(){if(!c.hasClass(f.id,g+\"Disabled\")){c.addClass(f.id,g+\"Hover\")}});b.add(f.id,\"mouseout\",function(){if(!c.hasClass(f.id,g+\"Disabled\")){c.removeClass(f.id,g+\"Hover\")}})}f.onPostRender.dispatch(f,c.get(f.id))},destroy:function(){this.parent();b.clear(this.id+\"_text\");b.clear(this.id+\"_open\")}})})(tinymce);(function(d){var c=d.DOM,b=d.dom.Event,e=d.each,a=d.util.Dispatcher;d.create(\"tinymce.ui.NativeListBox:tinymce.ui.ListBox\",{NativeListBox:function(g,f){this.parent(g,f);this.classPrefix=\"mceNativeListBox\"},setDisabled:function(f){c.get(this.id).disabled=f;this.setAriaProperty(\"disabled\",f)},isDisabled:function(){return c.get(this.id).disabled},select:function(h){var g=this,j,i;if(h==undefined){return g.selectByIndex(-1)}if(h&&h.call){i=h}else{i=function(f){return f==h}}if(h!=g.selectedValue){e(g.items,function(k,f){if(i(k.value)){j=1;g.selectByIndex(f);return false}});if(!j){g.selectByIndex(-1)}}},selectByIndex:function(f){c.get(this.id).selectedIndex=f+1;this.selectedValue=this.items[f]?this.items[f].value:null},add:function(j,g,f){var i,h=this;f=f||{};f.value=g;if(h.isRendered()){c.add(c.get(this.id),\"option\",f,j)}i={title:j,value:g,attribs:f};h.items.push(i);h.onAdd.dispatch(h,i)},getLength:function(){return this.items.length},renderHTML:function(){var g,f=this;g=c.createHTML(\"option\",{value:\"\"},\"-- \"+f.settings.title+\" --\");e(f.items,function(h){g+=c.createHTML(\"option\",{value:h.value},h.title)});g=c.createHTML(\"select\",{id:f.id,\"class\":\"mceNativeListBox\",\"aria-labelledby\":f.id+\"_aria\"},g);g+=c.createHTML(\"span\",{id:f.id+\"_aria\",style:\"display: none\"},f.settings.title);return g},postRender:function(){var g=this,h,i=true;g.rendered=true;function f(k){var j=g.items[k.target.selectedIndex-1];if(j&&(j=j.value)){g.onChange.dispatch(g,j);if(g.settings.onselect){g.settings.onselect(j)}}}b.add(g.id,\"change\",f);b.add(g.id,\"keydown\",function(k){var j;b.remove(g.id,\"change\",h);i=false;j=b.add(g.id,\"blur\",function(){if(i){return}i=true;b.add(g.id,\"change\",f);b.remove(g.id,\"blur\",j)});if(d.isWebKit&&(k.keyCode==37||k.keyCode==39)){return b.prevent(k)}if(k.keyCode==13||k.keyCode==32){f(k);return b.cancel(k)}});g.onPostRender.dispatch(g,c.get(g.id))}})})(tinymce);(function(c){var b=c.DOM,a=c.dom.Event,d=c.each;c.create(\"tinymce.ui.MenuButton:tinymce.ui.Button\",{MenuButton:function(g,f,e){this.parent(g,f,e);this.onRenderMenu=new c.util.Dispatcher(this);f.menu_container=f.menu_container||b.doc.body},showMenu:function(){var g=this,j,i,h=b.get(g.id),f;if(g.isDisabled()){return}if(!g.isMenuRendered){g.renderMenu();g.isMenuRendered=true}if(g.isMenuVisible){return g.hideMenu()}j=b.getPos(g.settings.menu_container);i=b.getPos(h);f=g.menu;f.settings.offset_x=i.x;f.settings.offset_y=i.y;f.settings.vp_offset_x=i.x;f.settings.vp_offset_y=i.y;f.settings.keyboard_focus=g._focused;f.showMenu(0,h.clientHeight);a.add(b.doc,\"mousedown\",g.hideMenu,g);g.setState(\"Selected\",1);g.isMenuVisible=1},renderMenu:function(){var f=this,e;e=f.settings.control_manager.createDropMenu(f.id+\"_menu\",{menu_line:1,\"class\":this.classPrefix+\"Menu\",icons:f.settings.icons});e.onHideMenu.add(function(){f.hideMenu();f.focus()});f.onRenderMenu.dispatch(f,e);f.menu=e},hideMenu:function(g){var f=this;if(g&&g.type==\"mousedown\"&&b.getParent(g.target,function(h){return h.id===f.id||h.id===f.id+\"_open\"})){return}if(!g||!b.getParent(g.target,\".mceMenu\")){f.setState(\"Selected\",0);a.remove(b.doc,\"mousedown\",f.hideMenu,f);if(f.menu){f.menu.hideMenu()}}f.isMenuVisible=0},postRender:function(){var e=this,f=e.settings;a.add(e.id,\"click\",function(){if(!e.isDisabled()){if(f.onclick){f.onclick(e.value)}e.showMenu()}})}})})(tinymce);(function(c){var b=c.DOM,a=c.dom.Event,d=c.each;c.create(\"tinymce.ui.SplitButton:tinymce.ui.MenuButton\",{SplitButton:function(g,f,e){this.parent(g,f,e);this.classPrefix=\"mceSplitButton\"},renderHTML:function(){var i,f=this,g=f.settings,e;i=\"<tbody><tr>\";if(g.image){e=b.createHTML(\"img \",{src:g.image,role:\"presentation\",\"class\":\"mceAction \"+g[\"class\"]})}else{e=b.createHTML(\"span\",{\"class\":\"mceAction \"+g[\"class\"]},\"\")}e+=b.createHTML(\"span\",{\"class\":\"mceVoiceLabel mceIconOnly\",id:f.id+\"_voice\",style:\"display:none;\"},g.title);i+=\"<td >\"+b.createHTML(\"a\",{role:\"button\",id:f.id+\"_action\",tabindex:\"-1\",href:\"javascript:;\",\"class\":\"mceAction \"+g[\"class\"],onclick:\"return false;\",onmousedown:\"return false;\",title:g.title},e)+\"</td>\";e=b.createHTML(\"span\",{\"class\":\"mceOpen \"+g[\"class\"]},'<span style=\"display:none;\" class=\"mceIconOnly\" aria-hidden=\"true\">\\u25BC</span>');i+=\"<td >\"+b.createHTML(\"a\",{role:\"button\",id:f.id+\"_open\",tabindex:\"-1\",href:\"javascript:;\",\"class\":\"mceOpen \"+g[\"class\"],onclick:\"return false;\",onmousedown:\"return false;\",title:g.title},e)+\"</td>\";i+=\"</tr></tbody>\";i=b.createHTML(\"table\",{role:\"presentation\",\"class\":\"mceSplitButton mceSplitButtonEnabled \"+g[\"class\"],cellpadding:\"0\",cellspacing:\"0\",title:g.title},i);return b.createHTML(\"div\",{id:f.id,role:\"button\",tabindex:\"0\",\"aria-labelledby\":f.id+\"_voice\",\"aria-haspopup\":\"true\"},i)},postRender:function(){var e=this,g=e.settings,f;if(g.onclick){f=function(h){if(!e.isDisabled()){g.onclick(e.value);a.cancel(h)}};a.add(e.id+\"_action\",\"click\",f);a.add(e.id,[\"click\",\"keydown\"],function(h){var k=32,m=14,i=13,j=38,l=40;if((h.keyCode===32||h.keyCode===13||h.keyCode===14)&&!h.altKey&&!h.ctrlKey&&!h.metaKey){f();a.cancel(h)}else{if(h.type===\"click\"||h.keyCode===l){e.showMenu();a.cancel(h)}}})}a.add(e.id+\"_open\",\"click\",function(h){e.showMenu();a.cancel(h)});a.add([e.id,e.id+\"_open\"],\"focus\",function(){e._focused=1});a.add([e.id,e.id+\"_open\"],\"blur\",function(){e._focused=0});if(c.isIE6||!b.boxModel){a.add(e.id,\"mouseover\",function(){if(!b.hasClass(e.id,\"mceSplitButtonDisabled\")){b.addClass(e.id,\"mceSplitButtonHover\")}});a.add(e.id,\"mouseout\",function(){if(!b.hasClass(e.id,\"mceSplitButtonDisabled\")){b.removeClass(e.id,\"mceSplitButtonHover\")}})}},destroy:function(){this.parent();a.clear(this.id+\"_action\");a.clear(this.id+\"_open\");a.clear(this.id)}})})(tinymce);(function(d){var c=d.DOM,a=d.dom.Event,b=d.is,e=d.each;d.create(\"tinymce.ui.ColorSplitButton:tinymce.ui.SplitButton\",{ColorSplitButton:function(i,h,f){var g=this;g.parent(i,h,f);g.settings=h=d.extend({colors:\"000000,993300,333300,003300,003366,000080,333399,333333,800000,FF6600,808000,008000,008080,0000FF,666699,808080,FF0000,FF9900,99CC00,339966,33CCCC,3366FF,800080,999999,FF00FF,FFCC00,FFFF00,00FF00,00FFFF,00CCFF,993366,C0C0C0,FF99CC,FFCC99,FFFF99,CCFFCC,CCFFFF,99CCFF,CC99FF,FFFFFF\",grid_width:8,default_color:\"#888888\"},g.settings);g.onShowMenu=new d.util.Dispatcher(g);g.onHideMenu=new d.util.Dispatcher(g);g.value=h.default_color},showMenu:function(){var f=this,g,j,i,h;if(f.isDisabled()){return}if(!f.isMenuRendered){f.renderMenu();f.isMenuRendered=true}if(f.isMenuVisible){return f.hideMenu()}i=c.get(f.id);c.show(f.id+\"_menu\");c.addClass(i,\"mceSplitButtonSelected\");h=c.getPos(i);c.setStyles(f.id+\"_menu\",{left:h.x,top:h.y+i.clientHeight,zIndex:200000});i=0;a.add(c.doc,\"mousedown\",f.hideMenu,f);f.onShowMenu.dispatch(f);if(f._focused){f._keyHandler=a.add(f.id+\"_menu\",\"keydown\",function(k){if(k.keyCode==27){f.hideMenu()}});c.select(\"a\",f.id+\"_menu\")[0].focus()}f.isMenuVisible=1},hideMenu:function(g){var f=this;if(f.isMenuVisible){if(g&&g.type==\"mousedown\"&&c.getParent(g.target,function(h){return h.id===f.id+\"_open\"})){return}if(!g||!c.getParent(g.target,\".mceSplitButtonMenu\")){c.removeClass(f.id,\"mceSplitButtonSelected\");a.remove(c.doc,\"mousedown\",f.hideMenu,f);a.remove(f.id+\"_menu\",\"keydown\",f._keyHandler);c.hide(f.id+\"_menu\")}f.isMenuVisible=0;f.onHideMenu.dispatch()}},renderMenu:function(){var p=this,h,k=0,q=p.settings,g,j,l,o,f;o=c.add(q.menu_container,\"div\",{role:\"listbox\",id:p.id+\"_menu\",\"class\":q.menu_class+\" \"+q[\"class\"],style:\"position:absolute;left:0;top:-1000px;\"});h=c.add(o,\"div\",{\"class\":q[\"class\"]+\" mceSplitButtonMenu\"});c.add(h,\"span\",{\"class\":\"mceMenuLine\"});g=c.add(h,\"table\",{role:\"presentation\",\"class\":\"mceColorSplitMenu\"});j=c.add(g,\"tbody\");k=0;e(b(q.colors,\"array\")?q.colors:q.colors.split(\",\"),function(i){i=i.replace(/^#/,\"\");if(!k--){l=c.add(j,\"tr\");k=q.grid_width-1}g=c.add(l,\"td\");g=c.add(g,\"a\",{role:\"option\",href:\"javascript:;\",style:{backgroundColor:\"#\"+i},title:p.editor.getLang(\"colors.\"+i,i),\"data-mce-color\":\"#\"+i});if(p.editor.forcedHighContrastMode){g=c.add(g,\"canvas\",{width:16,height:16,\"aria-hidden\":\"true\"});if(g.getContext&&(f=g.getContext(\"2d\"))){f.fillStyle=\"#\"+i;f.fillRect(0,0,16,16)}else{c.remove(g)}}});if(q.more_colors_func){g=c.add(j,\"tr\");g=c.add(g,\"td\",{colspan:q.grid_width,\"class\":\"mceMoreColors\"});g=c.add(g,\"a\",{role:\"option\",id:p.id+\"_more\",href:\"javascript:;\",onclick:\"return false;\",\"class\":\"mceMoreColors\"},q.more_colors_title);a.add(g,\"click\",function(i){q.more_colors_func.call(q.more_colors_scope||this);return a.cancel(i)})}c.addClass(h,\"mceColorSplitMenu\");new d.ui.KeyboardNavigation({root:p.id+\"_menu\",items:c.select(\"a\",p.id+\"_menu\"),onCancel:function(){p.hideMenu();p.focus()}});a.add(p.id+\"_menu\",\"mousedown\",function(i){return a.cancel(i)});a.add(p.id+\"_menu\",\"click\",function(i){var m;i=c.getParent(i.target,\"a\",j);if(i&&i.nodeName.toLowerCase()==\"a\"&&(m=i.getAttribute(\"data-mce-color\"))){p.setColor(m)}return a.cancel(i)});return o},setColor:function(f){this.displayColor(f);this.hideMenu();this.settings.onselect(f)},displayColor:function(g){var f=this;c.setStyle(f.id+\"_preview\",\"backgroundColor\",g);f.value=g},postRender:function(){var f=this,g=f.id;f.parent();c.add(g+\"_action\",\"div\",{id:g+\"_preview\",\"class\":\"mceColorPreview\"});c.setStyle(f.id+\"_preview\",\"backgroundColor\",f.value)},destroy:function(){this.parent();a.clear(this.id+\"_menu\");a.clear(this.id+\"_more\");c.remove(this.id+\"_menu\")}})})(tinymce);(function(b){var d=b.DOM,c=b.each,a=b.dom.Event;b.create(\"tinymce.ui.ToolbarGroup:tinymce.ui.Container\",{renderHTML:function(){var f=this,i=[],e=f.controls,j=b.each,g=f.settings;i.push('<div id=\"'+f.id+'\" role=\"group\" aria-labelledby=\"'+f.id+'_voice\">');i.push(\"<span role='application'>\");i.push('<span id=\"'+f.id+'_voice\" class=\"mceVoiceLabel\" style=\"display:none;\">'+d.encode(g.name)+\"</span>\");j(e,function(h){i.push(h.renderHTML())});i.push(\"</span>\");i.push(\"</div>\");return i.join(\"\")},focus:function(){var e=this;d.get(e.id).focus()},postRender:function(){var f=this,e=[];c(f.controls,function(g){c(g.controls,function(h){if(h.id){e.push(h)}})});f.keyNav=new b.ui.KeyboardNavigation({root:f.id,items:e,onCancel:function(){if(b.isWebKit){d.get(f.editor.id+\"_ifr\").focus()}f.editor.focus()},excludeFromTabOrder:!f.settings.tab_focus_toolbar})},destroy:function(){var e=this;e.parent();e.keyNav.destroy();a.clear(e.id)}})})(tinymce);(function(a){var c=a.DOM,b=a.each;a.create(\"tinymce.ui.Toolbar:tinymce.ui.Container\",{renderHTML:function(){var m=this,f=\"\",j,k,n=m.settings,e,d,g,l;l=m.controls;for(e=0;e<l.length;e++){k=l[e];d=l[e-1];g=l[e+1];if(e===0){j=\"mceToolbarStart\";if(k.Button){j+=\" mceToolbarStartButton\"}else{if(k.SplitButton){j+=\" mceToolbarStartSplitButton\"}else{if(k.ListBox){j+=\" mceToolbarStartListBox\"}}}f+=c.createHTML(\"td\",{\"class\":j},c.createHTML(\"span\",null,\"<!-- IE -->\"))}if(d&&k.ListBox){if(d.Button||d.SplitButton){f+=c.createHTML(\"td\",{\"class\":\"mceToolbarEnd\"},c.createHTML(\"span\",null,\"<!-- IE -->\"))}}if(c.stdMode){f+='<td style=\"position: relative\">'+k.renderHTML()+\"</td>\"}else{f+=\"<td>\"+k.renderHTML()+\"</td>\"}if(g&&k.ListBox){if(g.Button||g.SplitButton){f+=c.createHTML(\"td\",{\"class\":\"mceToolbarStart\"},c.createHTML(\"span\",null,\"<!-- IE -->\"))}}}j=\"mceToolbarEnd\";if(k.Button){j+=\" mceToolbarEndButton\"}else{if(k.SplitButton){j+=\" mceToolbarEndSplitButton\"}else{if(k.ListBox){j+=\" mceToolbarEndListBox\"}}}f+=c.createHTML(\"td\",{\"class\":j},c.createHTML(\"span\",null,\"<!-- IE -->\"));return c.createHTML(\"table\",{id:m.id,\"class\":\"mceToolbar\"+(n[\"class\"]?\" \"+n[\"class\"]:\"\"),cellpadding:\"0\",cellspacing:\"0\",align:m.settings.align||\"\",role:\"presentation\",tabindex:\"-1\"},\"<tbody><tr>\"+f+\"</tr></tbody>\")}})})(tinymce);(function(b){var a=b.util.Dispatcher,c=b.each;b.create(\"tinymce.AddOnManager\",{AddOnManager:function(){var d=this;d.items=[];d.urls={};d.lookup={};d.onAdd=new a(d)},get:function(d){if(this.lookup[d]){return this.lookup[d].instance}else{return undefined}},dependencies:function(e){var d;if(this.lookup[e]){d=this.lookup[e].dependencies}return d||[]},requireLangPack:function(e){var d=b.settings;if(d&&d.language&&d.language_load!==false){b.ScriptLoader.add(this.urls[e]+\"/langs/\"+d.language+\".js\")}},add:function(f,e,d){this.items.push(e);this.lookup[f]={instance:e,dependencies:d};this.onAdd.dispatch(this,f,e);return e},createUrl:function(d,e){if(typeof e===\"object\"){return e}else{return{prefix:d.prefix,resource:e,suffix:d.suffix}}},addComponents:function(f,d){var e=this.urls[f];b.each(d,function(g){b.ScriptLoader.add(e+\"/\"+g)})},load:function(j,f,d,h){var g=this,e=f;function i(){var k=g.dependencies(j);b.each(k,function(m){var l=g.createUrl(f,m);g.load(l.resource,l,undefined,undefined)});if(d){if(h){d.call(h)}else{d.call(b.ScriptLoader)}}}if(g.urls[j]){return}if(typeof f===\"object\"){e=f.prefix+f.resource+f.suffix}if(e.indexOf(\"/\")!=0&&e.indexOf(\"://\")==-1){e=b.baseURL+\"/\"+e}g.urls[j]=e.substring(0,e.lastIndexOf(\"/\"));if(g.lookup[j]){i()}else{b.ScriptLoader.add(e,i,h)}}});b.PluginManager=new b.AddOnManager();b.ThemeManager=new b.AddOnManager()}(tinymce));(function(j){var g=j.each,d=j.extend,k=j.DOM,i=j.dom.Event,f=j.ThemeManager,b=j.PluginManager,e=j.explode,h=j.util.Dispatcher,a,c=0;j.documentBaseURL=window.location.href.replace(/[\\?#].*$/,\"\").replace(/[\\/\\\\][^\\/]+$/,\"\");if(!/[\\/\\\\]$/.test(j.documentBaseURL)){j.documentBaseURL+=\"/\"}j.baseURL=new j.util.URI(j.documentBaseURL).toAbsolute(j.baseURL);j.baseURI=new j.util.URI(j.baseURL);j.onBeforeUnload=new h(j);i.add(window,\"beforeunload\",function(l){j.onBeforeUnload.dispatch(j,l)});j.onAddEditor=new h(j);j.onRemoveEditor=new h(j);j.EditorManager=d(j,{editors:[],i18n:{},activeEditor:null,init:function(q){var n=this,p,l=j.ScriptLoader,u,o=[],m;function r(x,y,t){var v=x[y];if(!v){return}if(j.is(v,\"string\")){t=v.replace(/\\.\\w+$/,\"\");t=t?j.resolve(t):0;v=j.resolve(v)}return v.apply(t||this,Array.prototype.slice.call(arguments,2))}q=d({theme:\"simple\",language:\"en\"},q);n.settings=q;i.add(document,\"init\",function(){var s,v;r(q,\"onpageload\");switch(q.mode){case\"exact\":s=q.elements||\"\";if(s.length>0){g(e(s),function(x){if(k.get(x)){m=new j.Editor(x,q);o.push(m);m.render(1)}else{g(document.forms,function(y){g(y.elements,function(z){if(z.name===x){x=\"mce_editor_\"+c++;k.setAttrib(z,\"id\",x);m=new j.Editor(x,q);o.push(m);m.render(1)}})})}})}break;case\"textareas\":case\"specific_textareas\":function t(y,x){return x.constructor===RegExp?x.test(y.className):k.hasClass(y,x)}g(k.select(\"textarea\"),function(x){if(q.editor_deselector&&t(x,q.editor_deselector)){return}if(!q.editor_selector||t(x,q.editor_selector)){u=k.get(x.name);if(!x.id&&!u){x.id=x.name}if(!x.id||n.get(x.id)){x.id=k.uniqueId()}m=new j.Editor(x.id,q);o.push(m);m.render(1)}});break}if(q.oninit){s=v=0;g(o,function(x){v++;if(!x.initialized){x.onInit.add(function(){s++;if(s==v){r(q,\"oninit\")}})}else{s++}if(s==v){r(q,\"oninit\")}})}})},get:function(l){if(l===a){return this.editors}return this.editors[l]},getInstanceById:function(l){return this.get(l)},add:function(m){var l=this,n=l.editors;n[m.id]=m;n.push(m);l._setActive(m);l.onAddEditor.dispatch(l,m);if(j.adapter){j.adapter.patchEditor(m)}return m},remove:function(n){var m=this,l,o=m.editors;if(!o[n.id]){return null}delete o[n.id];for(l=0;l<o.length;l++){if(o[l]==n){o.splice(l,1);break}}if(m.activeEditor==n){m._setActive(o[0])}n.destroy();m.onRemoveEditor.dispatch(m,n);return n},execCommand:function(r,p,o){var q=this,n=q.get(o),l;switch(r){case\"mceFocus\":n.focus();return true;case\"mceAddEditor\":case\"mceAddControl\":if(!q.get(o)){new j.Editor(o,q.settings).render()}return true;case\"mceAddFrameControl\":l=o.window;l.tinyMCE=tinyMCE;l.tinymce=j;j.DOM.doc=l.document;j.DOM.win=l;n=new j.Editor(o.element_id,o);n.render();if(j.isIE){function m(){n.destroy();l.detachEvent(\"onunload\",m);l=l.tinyMCE=l.tinymce=null}l.attachEvent(\"onunload\",m)}o.page_window=null;return true;case\"mceRemoveEditor\":case\"mceRemoveControl\":if(n){n.remove()}return true;case\"mceToggleEditor\":if(!n){q.execCommand(\"mceAddControl\",0,o);return true}if(n.isHidden()){n.show()}else{n.hide()}return true}if(q.activeEditor){return q.activeEditor.execCommand(r,p,o)}return false},execInstanceCommand:function(p,o,n,m){var l=this.get(p);if(l){return l.execCommand(o,n,m)}return false},triggerSave:function(){g(this.editors,function(l){l.save()})},addI18n:function(n,q){var l,m=this.i18n;if(!j.is(n,\"string\")){g(n,function(r,p){g(r,function(t,s){g(t,function(v,u){if(s===\"common\"){m[p+\".\"+u]=v}else{m[p+\".\"+s+\".\"+u]=v}})})})}else{g(q,function(r,p){m[n+\".\"+p]=r})}},_setActive:function(l){this.selectedInstance=this.activeEditor=l}})})(tinymce);(function(m){var n=m.DOM,j=m.dom.Event,f=m.extend,k=m.util.Dispatcher,i=m.each,a=m.isGecko,b=m.isIE,e=m.isWebKit,d=m.is,h=m.ThemeManager,c=m.PluginManager,o=m.inArray,l=m.grep,g=m.explode;m.create(\"tinymce.Editor\",{Editor:function(r,q){var p=this;p.id=p.editorId=r;p.execCommands={};p.queryStateCommands={};p.queryValueCommands={};p.isNotDirty=false;p.plugins={};i([\"onPreInit\",\"onBeforeRenderUI\",\"onPostRender\",\"onInit\",\"onRemove\",\"onActivate\",\"onDeactivate\",\"onClick\",\"onEvent\",\"onMouseUp\",\"onMouseDown\",\"onDblClick\",\"onKeyDown\",\"onKeyUp\",\"onKeyPress\",\"onContextMenu\",\"onSubmit\",\"onReset\",\"onPaste\",\"onPreProcess\",\"onPostProcess\",\"onBeforeSetContent\",\"onBeforeGetContent\",\"onSetContent\",\"onGetContent\",\"onLoadContent\",\"onSaveContent\",\"onNodeChange\",\"onChange\",\"onBeforeExecCommand\",\"onExecCommand\",\"onUndo\",\"onRedo\",\"onVisualAid\",\"onSetProgressState\"],function(s){p[s]=new k(p)});p.settings=q=f({id:r,language:\"en\",docs_language:\"en\",theme:\"simple\",skin:\"default\",delta_width:0,delta_height:0,popup_css:\"\",plugins:\"\",document_base_url:m.documentBaseURL,add_form_submit_trigger:1,submit_patch:1,add_unload_trigger:1,convert_urls:1,relative_urls:1,remove_script_host:1,table_inline_editing:0,object_resizing:1,cleanup:1,accessibility_focus:1,custom_shortcuts:1,custom_undo_redo_keyboard_shortcuts:1,custom_undo_redo_restore_selection:1,custom_undo_redo:1,doctype:m.isIE6?'<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">':\"<!DOCTYPE>\",visual_table_class:\"mceItemTable\",visual:1,font_size_style_values:\"xx-small,x-small,small,medium,large,x-large,xx-large\",apply_source_formatting:1,directionality:\"ltr\",forced_root_block:\"p\",hidden_input:1,padd_empty_editor:1,render_ui:1,init_theme:1,force_p_newlines:1,indentation:\"30px\",keep_styles:1,fix_table_elements:1,inline_styles:1,convert_fonts_to_spans:true,indent:\"simple\",indent_before:\"p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,ul,li,area,table,thead,tfoot,tbody,tr\",indent_after:\"p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,ul,li,area,table,thead,tfoot,tbody,tr\",validate:true,entity_encoding:\"named\",url_converter:p.convertURL,url_converter_scope:p,ie7_compat:true},q);p.documentBaseURI=new m.util.URI(q.document_base_url||m.documentBaseURL,{base_uri:tinyMCE.baseURI});p.baseURI=m.baseURI;p.contentCSS=[];p.execCallback(\"setup\",p)},render:function(r){var u=this,v=u.settings,x=u.id,p=m.ScriptLoader;if(!j.domLoaded){j.add(document,\"init\",function(){u.render()});return}tinyMCE.settings=v;if(!u.getElement()){return}if(m.isIDevice&&!m.isIOS5){return}if(!/TEXTAREA|INPUT/i.test(u.getElement().nodeName)&&v.hidden_input&&n.getParent(x,\"form\")){n.insertAfter(n.create(\"input\",{type:\"hidden\",name:x}),x)}if(m.WindowManager){u.windowManager=new m.WindowManager(u)}if(v.encoding==\"xml\"){u.onGetContent.add(function(s,t){if(t.save){t.content=n.encode(t.content)}})}if(v.add_form_submit_trigger){u.onSubmit.addToTop(function(){if(u.initialized){u.save();u.isNotDirty=1}})}if(v.add_unload_trigger){u._beforeUnload=tinyMCE.onBeforeUnload.add(function(){if(u.initialized&&!u.destroyed&&!u.isHidden()){u.save({format:\"raw\",no_events:true})}})}m.addUnload(u.destroy,u);if(v.submit_patch){u.onBeforeRenderUI.add(function(){var s=u.getElement().form;if(!s){return}if(s._mceOldSubmit){return}if(!s.submit.nodeType&&!s.submit.length){u.formElement=s;s._mceOldSubmit=s.submit;s.submit=function(){m.triggerSave();u.isNotDirty=1;return u.formElement._mceOldSubmit(u.formElement)}}s=null})}function q(){if(v.language&&v.language_load!==false){p.add(m.baseURL+\"/langs/\"+v.language+\".js\")}if(v.theme&&v.theme.charAt(0)!=\"-\"&&!h.urls[v.theme]){h.load(v.theme,\"themes/\"+v.theme+\"/editor_template\"+m.suffix+\".js\")}i(g(v.plugins),function(t){if(t&&!c.urls[t]){if(t.charAt(0)==\"-\"){t=t.substr(1,t.length);var s=c.dependencies(t);i(s,function(z){var y={prefix:\"plugins/\",resource:z,suffix:\"/editor_plugin\"+m.suffix+\".js\"};var z=c.createUrl(y,z);c.load(z.resource,z)})}else{if(t==\"safari\"){return}c.load(t,{prefix:\"plugins/\",resource:t,suffix:\"/editor_plugin\"+m.suffix+\".js\"})}}});p.loadQueue(function(){if(!u.removed){u.init()}})}q()},init:function(){var r,H=this,I=H.settings,E,A,D=H.getElement(),q,p,F,y,C,G,z,v=[];m.add(H);I.aria_label=I.aria_label||n.getAttrib(D,\"aria-label\",H.getLang(\"aria.rich_text_area\"));if(I.theme){I.theme=I.theme.replace(/-/,\"\");q=h.get(I.theme);H.theme=new q();if(H.theme.init&&I.init_theme){H.theme.init(H,h.urls[I.theme]||m.documentBaseURL.replace(/\\/$/,\"\"))}}function B(J){var K=c.get(J),t=c.urls[J]||m.documentBaseURL.replace(/\\/$/,\"\"),s;if(K&&m.inArray(v,J)===-1){i(c.dependencies(J),function(u){B(u)});s=new K(H,t);H.plugins[J]=s;if(s.init){s.init(H,t);v.push(J)}}}i(g(I.plugins.replace(/\\-/g,\"\")),B);if(I.popup_css!==false){if(I.popup_css){I.popup_css=H.documentBaseURI.toAbsolute(I.popup_css)}else{I.popup_css=H.baseURI.toAbsolute(\"themes/\"+I.theme+\"/skins/\"+I.skin+\"/dialog.css\")}}if(I.popup_css_add){I.popup_css+=\",\"+H.documentBaseURI.toAbsolute(I.popup_css_add)}H.controlManager=new m.ControlManager(H);if(I.custom_undo_redo){H.onBeforeExecCommand.add(function(t,J,u,K,s){if(J!=\"Undo\"&&J!=\"Redo\"&&J!=\"mceRepaint\"&&(!s||!s.skip_undo)){H.undoManager.beforeChange()}});H.onExecCommand.add(function(t,J,u,K,s){if(J!=\"Undo\"&&J!=\"Redo\"&&J!=\"mceRepaint\"&&(!s||!s.skip_undo)){H.undoManager.add()}})}H.onExecCommand.add(function(s,t){if(!/^(FontName|FontSize)$/.test(t)){H.nodeChanged()}});if(a){function x(s,t){if(!t||!t.initial){H.execCommand(\"mceRepaint\")}}H.onUndo.add(x);H.onRedo.add(x);H.onSetContent.add(x)}H.onBeforeRenderUI.dispatch(H,H.controlManager);if(I.render_ui){E=I.width||D.style.width||D.offsetWidth;A=I.height||D.style.height||D.offsetHeight;H.orgDisplay=D.style.display;G=/^[0-9\\.]+(|px)$/i;if(G.test(\"\"+E)){E=Math.max(parseInt(E)+(q.deltaWidth||0),100)}if(G.test(\"\"+A)){A=Math.max(parseInt(A)+(q.deltaHeight||0),100)}q=H.theme.renderUI({targetNode:D,width:E,height:A,deltaWidth:I.delta_width,deltaHeight:I.delta_height});H.editorContainer=q.editorContainer}if(document.domain&&location.hostname!=document.domain){m.relaxedDomain=document.domain}n.setStyles(q.sizeContainer||q.editorContainer,{width:E,height:A});if(I.content_css){m.each(g(I.content_css),function(s){H.contentCSS.push(H.documentBaseURI.toAbsolute(s))})}A=(q.iframeHeight||A)+(typeof(A)==\"number\"?(q.deltaHeight||0):\"\");if(A<100){A=100}H.iframeHTML=I.doctype+'<html><head xmlns=\"http://www.w3.org/1999/xhtml\">';if(I.document_base_url!=m.documentBaseURL){H.iframeHTML+='<base href=\"'+H.documentBaseURI.getURI()+'\" />'}if(I.ie7_compat){H.iframeHTML+='<meta http-equiv=\"X-UA-Compatible\" content=\"IE=7\" />'}else{H.iframeHTML+='<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />'}H.iframeHTML+='<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />';for(z=0;z<H.contentCSS.length;z++){H.iframeHTML+='<link type=\"text/css\" rel=\"stylesheet\" href=\"'+H.contentCSS[z]+'\" />'}y=I.body_id||\"tinymce\";if(y.indexOf(\"=\")!=-1){y=H.getParam(\"body_id\",\"\",\"hash\");y=y[H.id]||y}C=I.body_class||\"\";if(C.indexOf(\"=\")!=-1){C=H.getParam(\"body_class\",\"\",\"hash\");C=C[H.id]||\"\"}H.iframeHTML+='</head><body id=\"'+y+'\" class=\"mceContentBody '+C+'\"><br></body></html>';if(m.relaxedDomain&&(b||(m.isOpera&&parseFloat(opera.version())<11))){F='javascript:(function(){document.open();document.domain=\"'+document.domain+'\";var ed = window.parent.tinyMCE.get(\"'+H.id+'\");document.write(ed.iframeHTML);document.close();ed.setupIframe();})()'}r=n.add(q.iframeContainer,\"iframe\",{id:H.id+\"_ifr\",src:F||'javascript:\"\"',frameBorder:\"0\",allowTransparency:\"true\",title:I.aria_label,style:{width:\"100%\",height:A,display:\"block\"}});H.contentAreaContainer=q.iframeContainer;n.get(q.editorContainer).style.display=H.orgDisplay;n.get(H.id).style.display=\"none\";n.setAttrib(H.id,\"aria-hidden\",true);if(!m.relaxedDomain||!F){H.setupIframe()}D=r=q=null},setupIframe:function(){var q=this,v=q.settings,x=n.get(q.id),y=q.getDoc(),u,p;if(!b||!m.relaxedDomain){y.open();y.write(q.iframeHTML);y.close();if(m.relaxedDomain){y.domain=m.relaxedDomain}}p=q.getBody();p.disabled=true;if(!v.readonly){p.contentEditable=true}p.disabled=false;q.schema=new m.html.Schema(v);q.dom=new m.dom.DOMUtils(q.getDoc(),{keep_values:true,url_converter:q.convertURL,url_converter_scope:q,hex_colors:v.force_hex_style_colors,class_filter:v.class_filter,update_styles:1,fix_ie_paragraphs:1,schema:q.schema});q.parser=new m.html.DomParser(v,q.schema);if(!q.settings.allow_html_in_named_anchor){q.parser.addAttributeFilter(\"name\",function(s,t){var A=s.length,C,z,B,D;while(A--){D=s[A];if(D.name===\"a\"&&D.firstChild){B=D.parent;C=D.lastChild;do{z=C.prev;B.insert(C,D);C=z}while(C)}}})}q.parser.addAttributeFilter(\"src,href,style\",function(s,t){var z=s.length,B,D=q.dom,C,A;while(z--){B=s[z];C=B.attr(t);A=\"data-mce-\"+t;if(!B.attributes.map[A]){if(t===\"style\"){B.attr(A,D.serializeStyle(D.parseStyle(C),B.name))}else{B.attr(A,q.convertURL(C,t,B.name))}}}});q.parser.addNodeFilter(\"script\",function(s,t){var z=s.length;while(z--){s[z].attr(\"type\",\"mce-text/javascript\")}});q.parser.addNodeFilter(\"#cdata\",function(s,t){var z=s.length,A;while(z--){A=s[z];A.type=8;A.name=\"#comment\";A.value=\"[CDATA[\"+A.value+\"]]\"}});q.parser.addNodeFilter(\"p,h1,h2,h3,h4,h5,h6,div\",function(t,z){var A=t.length,B,s=q.schema.getNonEmptyElements();while(A--){B=t[A];if(B.isEmpty(s)){B.empty().append(new m.html.Node(\"br\",1)).shortEnded=true}}});q.serializer=new m.dom.Serializer(v,q.dom,q.schema);q.selection=new m.dom.Selection(q.dom,q.getWin(),q.serializer);q.formatter=new m.Formatter(this);q.formatter.register({alignleft:[{selector:\"p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li\",styles:{textAlign:\"left\"}},{selector:\"img,table\",collapsed:false,styles:{\"float\":\"left\"}}],aligncenter:[{selector:\"p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li\",styles:{textAlign:\"center\"}},{selector:\"img\",collapsed:false,styles:{display:\"block\",marginLeft:\"auto\",marginRight:\"auto\"}},{selector:\"table\",collapsed:false,styles:{marginLeft:\"auto\",marginRight:\"auto\"}}],alignright:[{selector:\"p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li\",styles:{textAlign:\"right\"}},{selector:\"img,table\",collapsed:false,styles:{\"float\":\"right\"}}],alignfull:[{selector:\"p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li\",styles:{textAlign:\"justify\"}}],bold:[{inline:\"strong\",remove:\"all\"},{inline:\"span\",styles:{fontWeight:\"bold\"}},{inline:\"b\",remove:\"all\"}],italic:[{inline:\"em\",remove:\"all\"},{inline:\"span\",styles:{fontStyle:\"italic\"}},{inline:\"i\",remove:\"all\"}],underline:[{inline:\"span\",styles:{textDecoration:\"underline\"},exact:true},{inline:\"u\",remove:\"all\"}],strikethrough:[{inline:\"span\",styles:{textDecoration:\"line-through\"},exact:true},{inline:\"strike\",remove:\"all\"}],forecolor:{inline:\"span\",styles:{color:\"%value\"},wrap_links:false},hilitecolor:{inline:\"span\",styles:{backgroundColor:\"%value\"},wrap_links:false},fontname:{inline:\"span\",styles:{fontFamily:\"%value\"}},fontsize:{inline:\"span\",styles:{fontSize:\"%value\"}},fontsize_class:{inline:\"span\",attributes:{\"class\":\"%value\"}},blockquote:{block:\"blockquote\",wrapper:1,remove:\"all\"},subscript:{inline:\"sub\"},superscript:{inline:\"sup\"},link:{inline:\"a\",selector:\"a\",remove:\"all\",split:true,deep:true,onmatch:function(s){return true},onformat:function(z,s,t){i(t,function(B,A){q.dom.setAttrib(z,A,B)})}},removeformat:[{selector:\"b,strong,em,i,font,u,strike\",remove:\"all\",split:true,expand:false,block_expand:true,deep:true},{selector:\"span\",attributes:[\"style\",\"class\"],remove:\"empty\",split:true,expand:false,deep:true},{selector:\"*\",attributes:[\"style\",\"class\"],split:false,expand:false,deep:true}]});i(\"p h1 h2 h3 h4 h5 h6 div address pre div code dt dd samp\".split(/\\s/),function(s){q.formatter.register(s,{block:s,remove:\"all\"})});q.formatter.register(q.settings.formats);q.undoManager=new m.UndoManager(q);q.undoManager.onAdd.add(function(t,s){if(t.hasUndo()){return q.onChange.dispatch(q,s,t)}});q.undoManager.onUndo.add(function(t,s){return q.onUndo.dispatch(q,s,t)});q.undoManager.onRedo.add(function(t,s){return q.onRedo.dispatch(q,s,t)});q.forceBlocks=new m.ForceBlocks(q,{forced_root_block:v.forced_root_block});q.editorCommands=new m.EditorCommands(q);q.serializer.onPreProcess.add(function(s,t){return q.onPreProcess.dispatch(q,t,s)});q.serializer.onPostProcess.add(function(s,t){return q.onPostProcess.dispatch(q,t,s)});q.onPreInit.dispatch(q);if(!v.gecko_spellcheck){q.getBody().spellcheck=0}if(!v.readonly){q._addEvents()}q.controlManager.onPostRender.dispatch(q,q.controlManager);q.onPostRender.dispatch(q);q.quirks=new m.util.Quirks(this);if(v.directionality){q.getBody().dir=v.directionality}if(v.nowrap){q.getBody().style.whiteSpace=\"nowrap\"}if(v.handle_node_change_callback){q.onNodeChange.add(function(t,s,z){q.execCallback(\"handle_node_change_callback\",q.id,z,-1,-1,true,q.selection.isCollapsed())})}if(v.save_callback){q.onSaveContent.add(function(s,z){var t=q.execCallback(\"save_callback\",q.id,z.content,q.getBody());if(t){z.content=t}})}if(v.onchange_callback){q.onChange.add(function(t,s){q.execCallback(\"onchange_callback\",q,s)})}if(v.protect){q.onBeforeSetContent.add(function(s,t){if(v.protect){i(v.protect,function(z){t.content=t.content.replace(z,function(A){return\"<!--mce:protected \"+escape(A)+\"-->\"})})}})}if(v.convert_newlines_to_brs){q.onBeforeSetContent.add(function(s,t){if(t.initial){t.content=t.content.replace(/\\r?\\n/g,\"<br />\")}})}if(v.preformatted){q.onPostProcess.add(function(s,t){t.content=t.content.replace(/^\\s*<pre.*?>/,\"\");t.content=t.content.replace(/<\\/pre>\\s*$/,\"\");if(t.set){t.content='<pre class=\"mceItemHidden\">'+t.content+\"</pre>\"}})}if(v.verify_css_classes){q.serializer.attribValueFilter=function(B,z){var A,t;if(B==\"class\"){if(!q.classesRE){t=q.dom.getClasses();if(t.length>0){A=\"\";i(t,function(s){A+=(A?\"|\":\"\")+s[\"class\"]});q.classesRE=new RegExp(\"(\"+A+\")\",\"gi\")}}return !q.classesRE||/(\\bmceItem\\w+\\b|\\bmceTemp\\w+\\b)/g.test(z)||q.classesRE.test(z)?z:\"\"}return z}}if(v.cleanup_callback){q.onBeforeSetContent.add(function(s,t){t.content=q.execCallback(\"cleanup_callback\",\"insert_to_editor\",t.content,t)});q.onPreProcess.add(function(s,t){if(t.set){q.execCallback(\"cleanup_callback\",\"insert_to_editor_dom\",t.node,t)}if(t.get){q.execCallback(\"cleanup_callback\",\"get_from_editor_dom\",t.node,t)}});q.onPostProcess.add(function(s,t){if(t.set){t.content=q.execCallback(\"cleanup_callback\",\"insert_to_editor\",t.content,t)}if(t.get){t.content=q.execCallback(\"cleanup_callback\",\"get_from_editor\",t.content,t)}})}if(v.save_callback){q.onGetContent.add(function(s,t){if(t.save){t.content=q.execCallback(\"save_callback\",q.id,t.content,q.getBody())}})}if(v.handle_event_callback){q.onEvent.add(function(s,t,z){if(q.execCallback(\"handle_event_callback\",t,s,z)===false){j.cancel(t)}})}q.onSetContent.add(function(){q.addVisual(q.getBody())});if(v.padd_empty_editor){q.onPostProcess.add(function(s,t){t.content=t.content.replace(/^(<p[^>]*>(&nbsp;|&#160;|\\s|\\u00a0|)<\\/p>[\\r\\n]*|<br \\/>[\\r\\n]*)$/,\"\")})}if(a){function r(s,t){i(s.dom.select(\"a\"),function(A){var z=A.parentNode;if(s.dom.isBlock(z)&&z.lastChild===A){s.dom.add(z,\"br\",{\"data-mce-bogus\":1})}})}q.onExecCommand.add(function(s,t){if(t===\"CreateLink\"){r(s)}});q.onSetContent.add(q.selection.onSetContent.add(r))}q.load({initial:true,format:\"html\"});q.startContent=q.getContent({format:\"raw\"});q.undoManager.add();q.initialized=true;q.onInit.dispatch(q);q.execCallback(\"setupcontent_callback\",q.id,q.getBody(),q.getDoc());q.execCallback(\"init_instance_callback\",q);q.focus(true);q.nodeChanged({initial:1});i(q.contentCSS,function(s){q.dom.loadCSS(s)});if(v.auto_focus){setTimeout(function(){var s=m.get(v.auto_focus);s.selection.select(s.getBody(),1);s.selection.collapse(1);s.getBody().focus();s.getWin().focus()},100)}x=null},focus:function(u){var y,q=this,s=q.selection,x=q.settings.content_editable,r,p,v=q.getDoc();if(!u){r=s.getRng();if(r.item){p=r.item(0)}q._refreshContentEditable();s.normalize();if(!x){q.getWin().focus()}if(m.isGecko){q.getBody().focus()}if(p&&p.ownerDocument==v){r=v.body.createControlRange();r.addElement(p);r.select()}}if(m.activeEditor!=q){if((y=m.activeEditor)!=null){y.onDeactivate.dispatch(y,q)}q.onActivate.dispatch(q,y)}m._setActive(q)},execCallback:function(u){var p=this,r=p.settings[u],q;if(!r){return}if(p.callbackLookup&&(q=p.callbackLookup[u])){r=q.func;q=q.scope}if(d(r,\"string\")){q=r.replace(/\\.\\w+$/,\"\");q=q?m.resolve(q):0;r=m.resolve(r);p.callbackLookup=p.callbackLookup||{};p.callbackLookup[u]={func:r,scope:q}}return r.apply(q||p,Array.prototype.slice.call(arguments,1))},translate:function(p){var r=this.settings.language||\"en\",q=m.i18n;if(!p){return\"\"}return q[r+\".\"+p]||p.replace(/{\\#([^}]+)\\}/g,function(t,s){return q[r+\".\"+s]||\"{#\"+s+\"}\"})},getLang:function(q,p){return m.i18n[(this.settings.language||\"en\")+\".\"+q]||(d(p)?p:\"{#\"+q+\"}\")},getParam:function(u,r,p){var s=m.trim,q=d(this.settings[u])?this.settings[u]:r,t;if(p===\"hash\"){t={};if(d(q,\"string\")){i(q.indexOf(\"=\")>0?q.split(/[;,](?![^=;,]*(?:[;,]|$))/):q.split(\",\"),function(x){x=x.split(\"=\");if(x.length>1){t[s(x[0])]=s(x[1])}else{t[s(x[0])]=s(x)}})}else{t=q}return t}return q},nodeChanged:function(r){var p=this,q=p.selection,u=q.getStart()||p.getBody();if(p.initialized){r=r||{};u=b&&u.ownerDocument!=p.getDoc()?p.getBody():u;r.parents=[];p.dom.getParent(u,function(s){if(s.nodeName==\"BODY\"){return true}r.parents.push(s)});p.onNodeChange.dispatch(p,r?r.controlManager||p.controlManager:p.controlManager,u,q.isCollapsed(),r)}},addButton:function(r,q){var p=this;p.buttons=p.buttons||{};p.buttons[r]=q},addCommand:function(p,r,q){this.execCommands[p]={func:r,scope:q||this}},addQueryStateHandler:function(p,r,q){this.queryStateCommands[p]={func:r,scope:q||this}},addQueryValueHandler:function(p,r,q){this.queryValueCommands[p]={func:r,scope:q||this}},addShortcut:function(r,u,p,s){var q=this,v;if(!q.settings.custom_shortcuts){return false}q.shortcuts=q.shortcuts||{};if(d(p,\"string\")){v=p;p=function(){q.execCommand(v,false,null)}}if(d(p,\"object\")){v=p;p=function(){q.execCommand(v[0],v[1],v[2])}}i(g(r),function(t){var x={func:p,scope:s||this,desc:u,alt:false,ctrl:false,shift:false};i(g(t,\"+\"),function(y){switch(y){case\"alt\":case\"ctrl\":case\"shift\":x[y]=true;break;default:x.charCode=y.charCodeAt(0);x.keyCode=y.toUpperCase().charCodeAt(0)}});q.shortcuts[(x.ctrl?\"ctrl\":\"\")+\",\"+(x.alt?\"alt\":\"\")+\",\"+(x.shift?\"shift\":\"\")+\",\"+x.keyCode]=x});return true},execCommand:function(x,v,z,p){var r=this,u=0,y,q;if(!/^(mceAddUndoLevel|mceEndUndoLevel|mceBeginUndoLevel|mceRepaint|SelectAll)$/.test(x)&&(!p||!p.skip_focus)){r.focus()}y={};r.onBeforeExecCommand.dispatch(r,x,v,z,y);if(y.terminate){return false}if(r.execCallback(\"execcommand_callback\",r.id,r.selection.getNode(),x,v,z)){r.onExecCommand.dispatch(r,x,v,z,p);return true}if(y=r.execCommands[x]){q=y.func.call(y.scope,v,z);if(q!==true){r.onExecCommand.dispatch(r,x,v,z,p);return q}}i(r.plugins,function(s){if(s.execCommand&&s.execCommand(x,v,z)){r.onExecCommand.dispatch(r,x,v,z,p);u=1;return false}});if(u){return true}if(r.theme&&r.theme.execCommand&&r.theme.execCommand(x,v,z)){r.onExecCommand.dispatch(r,x,v,z,p);return true}if(r.editorCommands.execCommand(x,v,z)){r.onExecCommand.dispatch(r,x,v,z,p);return true}r.getDoc().execCommand(x,v,z);r.onExecCommand.dispatch(r,x,v,z,p)},queryCommandState:function(u){var q=this,v,r;if(q._isHidden()){return}if(v=q.queryStateCommands[u]){r=v.func.call(v.scope);if(r!==true){return r}}v=q.editorCommands.queryCommandState(u);if(v!==-1){return v}try{return this.getDoc().queryCommandState(u)}catch(p){}},queryCommandValue:function(v){var q=this,u,r;if(q._isHidden()){return}if(u=q.queryValueCommands[v]){r=u.func.call(u.scope);if(r!==true){return r}}u=q.editorCommands.queryCommandValue(v);if(d(u)){return u}try{return this.getDoc().queryCommandValue(v)}catch(p){}},show:function(){var p=this;n.show(p.getContainer());n.hide(p.id);p.load()},hide:function(){var p=this,q=p.getDoc();if(b&&q){q.execCommand(\"SelectAll\")}p.save();n.hide(p.getContainer());n.setStyle(p.id,\"display\",p.orgDisplay)},isHidden:function(){return !n.isHidden(this.id)},setProgressState:function(p,q,r){this.onSetProgressState.dispatch(this,p,q,r);return p},load:function(s){var p=this,r=p.getElement(),q;if(r){s=s||{};s.load=true;q=p.setContent(d(r.value)?r.value:r.innerHTML,s);s.element=r;if(!s.no_events){p.onLoadContent.dispatch(p,s)}s.element=r=null;return q}},save:function(u){var p=this,s=p.getElement(),q,r;if(!s||!p.initialized){return}u=u||{};u.save=true;if(!u.no_events){p.undoManager.typing=false;p.undoManager.add()}u.element=s;q=u.content=p.getContent(u);if(!u.no_events){p.onSaveContent.dispatch(p,u)}q=u.content;if(!/TEXTAREA|INPUT/i.test(s.nodeName)){s.innerHTML=q;if(r=n.getParent(p.id,\"form\")){i(r.elements,function(t){if(t.name==p.id){t.value=q;return false}})}}else{s.value=q}u.element=s=null;return q},setContent:function(u,s){var r=this,q,p=r.getBody(),t;s=s||{};s.format=s.format||\"html\";s.set=true;s.content=u;if(!s.no_events){r.onBeforeSetContent.dispatch(r,s)}u=s.content;if(!m.isIE&&(u.length===0||/^\\s+$/.test(u))){t=r.settings.forced_root_block;if(t){u=\"<\"+t+'><br data-mce-bogus=\"1\"></'+t+\">\"}else{u='<br data-mce-bogus=\"1\">'}p.innerHTML=u;r.selection.select(p,true);r.selection.collapse(true);return}if(s.format!==\"raw\"){u=new m.html.Serializer({},r.schema).serialize(r.parser.parse(u))}s.content=m.trim(u);r.dom.setHTML(p,s.content);if(!s.no_events){r.onSetContent.dispatch(r,s)}r.selection.normalize();return s.content},getContent:function(q){var p=this,r;q=q||{};q.format=q.format||\"html\";q.get=true;if(!q.no_events){p.onBeforeGetContent.dispatch(p,q)}if(q.format==\"raw\"){r=p.getBody().innerHTML}else{r=p.serializer.serialize(p.getBody(),q)}q.content=m.trim(r);if(!q.no_events){p.onGetContent.dispatch(p,q)}return q.content},isDirty:function(){var p=this;return m.trim(p.startContent)!=m.trim(p.getContent({format:\"raw\",no_events:1}))&&!p.isNotDirty},getContainer:function(){var p=this;if(!p.container){p.container=n.get(p.editorContainer||p.id+\"_parent\")}return p.container},getContentAreaContainer:function(){return this.contentAreaContainer},getElement:function(){return n.get(this.settings.content_element||this.id)},getWin:function(){var p=this,q;if(!p.contentWindow){q=n.get(p.id+\"_ifr\");if(q){p.contentWindow=q.contentWindow}}return p.contentWindow},getDoc:function(){var q=this,p;if(!q.contentDocument){p=q.getWin();if(p){q.contentDocument=p.document}}return q.contentDocument},getBody:function(){return this.bodyElement||this.getDoc().body},convertURL:function(p,x,v){var q=this,r=q.settings;if(r.urlconverter_callback){return q.execCallback(\"urlconverter_callback\",p,v,true,x)}if(!r.convert_urls||(v&&v.nodeName==\"LINK\")||p.indexOf(\"file:\")===0){return p}if(r.relative_urls){return q.documentBaseURI.toRelative(p)}p=q.documentBaseURI.toAbsolute(p,r.remove_script_host);return p},addVisual:function(r){var p=this,q=p.settings;r=r||p.getBody();if(!d(p.hasVisual)){p.hasVisual=q.visual}i(p.dom.select(\"table,a\",r),function(t){var s;switch(t.nodeName){case\"TABLE\":s=p.dom.getAttrib(t,\"border\");if(!s||s==\"0\"){if(p.hasVisual){p.dom.addClass(t,q.visual_table_class)}else{p.dom.removeClass(t,q.visual_table_class)}}return;case\"A\":s=p.dom.getAttrib(t,\"name\");if(s){if(p.hasVisual){p.dom.addClass(t,\"mceItemAnchor\")}else{p.dom.removeClass(t,\"mceItemAnchor\")}}return}});p.onVisualAid.dispatch(p,r,p.hasVisual)},remove:function(){var p=this,q=p.getContainer();p.removed=1;p.hide();p.execCallback(\"remove_instance_callback\",p);p.onRemove.dispatch(p);p.onExecCommand.listeners=[];m.remove(p);n.remove(q)},destroy:function(q){var p=this;if(p.destroyed){return}if(!q){m.removeUnload(p.destroy);tinyMCE.onBeforeUnload.remove(p._beforeUnload);if(p.theme&&p.theme.destroy){p.theme.destroy()}p.controlManager.destroy();p.selection.destroy();p.dom.destroy();if(!p.settings.content_editable){j.clear(p.getWin());j.clear(p.getDoc())}j.clear(p.getBody());j.clear(p.formElement)}if(p.formElement){p.formElement.submit=p.formElement._mceOldSubmit;p.formElement._mceOldSubmit=null}p.contentAreaContainer=p.formElement=p.container=p.settings.content_element=p.bodyElement=p.contentDocument=p.contentWindow=null;if(p.selection){p.selection=p.selection.win=p.selection.dom=p.selection.dom.doc=null}p.destroyed=1},_addEvents:function(){var B=this,r,C=B.settings,q=B.dom,x={mouseup:\"onMouseUp\",mousedown:\"onMouseDown\",click:\"onClick\",keyup:\"onKeyUp\",keydown:\"onKeyDown\",keypress:\"onKeyPress\",submit:\"onSubmit\",reset:\"onReset\",contextmenu:\"onContextMenu\",dblclick:\"onDblClick\",paste:\"onPaste\"};function p(t,D){var s=t.type;if(B.removed){return}if(B.onEvent.dispatch(B,t,D)!==false){B[x[t.fakeType||t.type]].dispatch(B,t,D)}}i(x,function(t,s){switch(s){case\"contextmenu\":q.bind(B.getDoc(),s,p);break;case\"paste\":q.bind(B.getBody(),s,function(D){p(D)});break;case\"submit\":case\"reset\":q.bind(B.getElement().form||n.getParent(B.id,\"form\"),s,p);break;default:q.bind(C.content_editable?B.getBody():B.getDoc(),s,p)}});q.bind(C.content_editable?B.getBody():(a?B.getDoc():B.getWin()),\"focus\",function(s){B.focus(true)});if(m.isGecko){q.bind(B.getDoc(),\"DOMNodeInserted\",function(t){var s;t=t.target;if(t.nodeType===1&&t.nodeName===\"IMG\"&&(s=t.getAttribute(\"data-mce-src\"))){t.src=B.documentBaseURI.toAbsolute(s)}})}if(a){function u(){var E=this,G=E.getDoc(),F=E.settings;if(a&&!F.readonly){E._refreshContentEditable();try{G.execCommand(\"styleWithCSS\",0,false)}catch(D){if(!E._isHidden()){try{G.execCommand(\"useCSS\",0,true)}catch(D){}}}if(!F.table_inline_editing){try{G.execCommand(\"enableInlineTableEditing\",false,false)}catch(D){}}if(!F.object_resizing){try{G.execCommand(\"enableObjectResizing\",false,false)}catch(D){}}}}B.onBeforeExecCommand.add(u);B.onMouseDown.add(u)}B.onMouseUp.add(B.nodeChanged);B.onKeyUp.add(function(s,t){var D=t.keyCode;if((D>=33&&D<=36)||(D>=37&&D<=40)||D==13||D==45||D==46||D==8||(m.isMac&&(D==91||D==93))||t.ctrlKey){B.nodeChanged()}});B.onKeyDown.add(function(t,D){if(D.keyCode!=8){return}var F=t.selection.getRng().startContainer;var E=t.selection.getRng().startOffset;while(F&&F.nodeType&&F.nodeType!=1&&F.parentNode){F=F.parentNode}if(F&&F.parentNode&&F.parentNode.tagName===\"BLOCKQUOTE\"&&F.parentNode.firstChild==F&&E==0){t.formatter.toggle(\"blockquote\",null,F.parentNode);var s=t.selection.getRng();s.setStart(F,0);s.setEnd(F,0);t.selection.setRng(s);t.selection.collapse(false)}});B.onReset.add(function(){B.setContent(B.startContent,{format:\"raw\"})});if(C.custom_shortcuts){if(C.custom_undo_redo_keyboard_shortcuts){B.addShortcut(\"ctrl+z\",B.getLang(\"undo_desc\"),\"Undo\");B.addShortcut(\"ctrl+y\",B.getLang(\"redo_desc\"),\"Redo\")}B.addShortcut(\"ctrl+b\",B.getLang(\"bold_desc\"),\"Bold\");B.addShortcut(\"ctrl+i\",B.getLang(\"italic_desc\"),\"Italic\");B.addShortcut(\"ctrl+u\",B.getLang(\"underline_desc\"),\"Underline\");for(r=1;r<=6;r++){B.addShortcut(\"ctrl+\"+r,\"\",[\"FormatBlock\",false,\"h\"+r])}B.addShortcut(\"ctrl+7\",\"\",[\"FormatBlock\",false,\"p\"]);B.addShortcut(\"ctrl+8\",\"\",[\"FormatBlock\",false,\"div\"]);B.addShortcut(\"ctrl+9\",\"\",[\"FormatBlock\",false,\"address\"]);function v(t){var s=null;if(!t.altKey&&!t.ctrlKey&&!t.metaKey){return s}i(B.shortcuts,function(D){if(m.isMac&&D.ctrl!=t.metaKey){return}else{if(!m.isMac&&D.ctrl!=t.ctrlKey){return}}if(D.alt!=t.altKey){return}if(D.shift!=t.shiftKey){return}if(t.keyCode==D.keyCode||(t.charCode&&t.charCode==D.charCode)){s=D;return false}});return s}B.onKeyUp.add(function(s,t){var D=v(t);if(D){return j.cancel(t)}});B.onKeyPress.add(function(s,t){var D=v(t);if(D){return j.cancel(t)}});B.onKeyDown.add(function(s,t){var D=v(t);if(D){D.func.call(D.scope);return j.cancel(t)}})}if(m.isIE){q.bind(B.getDoc(),\"controlselect\",function(D){var t=B.resizeInfo,s;D=D.target;if(D.nodeName!==\"IMG\"){return}if(t){q.unbind(t.node,t.ev,t.cb)}if(!q.hasClass(D,\"mceItemNoResize\")){ev=\"resizeend\";s=q.bind(D,ev,function(F){var E;F=F.target;if(E=q.getStyle(F,\"width\")){q.setAttrib(F,\"width\",E.replace(/[^0-9%]+/g,\"\"));q.setStyle(F,\"width\",\"\")}if(E=q.getStyle(F,\"height\")){q.setAttrib(F,\"height\",E.replace(/[^0-9%]+/g,\"\"));q.setStyle(F,\"height\",\"\")}})}else{ev=\"resizestart\";s=q.bind(D,\"resizestart\",j.cancel,j)}t=B.resizeInfo={node:D,ev:ev,cb:s}})}if(m.isOpera){B.onClick.add(function(s,t){j.prevent(t)})}if(C.custom_undo_redo){function y(){B.undoManager.typing=false;B.undoManager.add()}q.bind(B.getDoc(),\"focusout\",function(s){if(!B.removed&&B.undoManager.typing){y()}});B.dom.bind(B.dom.getRoot(),\"dragend\",function(s){y()});B.onKeyUp.add(function(s,D){var t=D.keyCode;if((t>=33&&t<=36)||(t>=37&&t<=40)||t==13||t==45||D.ctrlKey){y()}});B.onKeyDown.add(function(s,E){var D=E.keyCode,t;if(D==8){t=B.getDoc().selection;if(t&&t.createRange&&t.createRange().item){B.undoManager.beforeChange();s.dom.remove(t.createRange().item(0));y();return j.cancel(E)}}if((D>=33&&D<=36)||(D>=37&&D<=40)||D==13||D==45){if(m.isIE&&D==13){B.undoManager.beforeChange()}if(B.undoManager.typing){y()}return}if((D<16||D>20)&&D!=224&&D!=91&&!B.undoManager.typing){B.undoManager.beforeChange();B.undoManager.typing=true;B.undoManager.add()}});B.onMouseDown.add(function(){if(B.undoManager.typing){y()}})}if(m.isWebKit){q.bind(B.getDoc(),\"selectionchange\",function(){if(B.selectionTimer){clearTimeout(B.selectionTimer);B.selectionTimer=0}B.selectionTimer=window.setTimeout(function(){B.nodeChanged()},50)})}if(m.isGecko){function A(){var s=B.dom.getAttribs(B.selection.getStart().cloneNode(false));return function(){var t=B.selection.getStart();if(t!==B.getBody()){B.dom.removeAllAttribs(t);i(s,function(D){t.setAttributeNode(D.cloneNode(true))})}}}function z(){var t=B.selection;return !t.isCollapsed()&&t.getStart()!=t.getEnd()}B.onKeyPress.add(function(s,D){var t;if((D.keyCode==8||D.keyCode==46)&&z()){t=A();B.getDoc().execCommand(\"delete\",false,null);t();return j.cancel(D)}});B.dom.bind(B.getDoc(),\"cut\",function(t){var s;if(z()){s=A();B.onKeyUp.addToTop(j.cancel,j);setTimeout(function(){s();B.onKeyUp.remove(j.cancel,j)},0)}})}},_refreshContentEditable:function(){var q=this,p,r;if(q._isHidden()){p=q.getBody();r=p.parentNode;r.removeChild(p);r.appendChild(p);p.focus()}},_isHidden:function(){var p;if(!a){return 0}p=this.selection.getSel();return(!p||!p.rangeCount||p.rangeCount==0)}})})(tinymce);(function(c){var d=c.each,e,a=true,b=false;c.EditorCommands=function(n){var m=n.dom,p=n.selection,j={state:{},exec:{},value:{}},k=n.settings,q=n.formatter,o;function r(z,y,x){var v;z=z.toLowerCase();if(v=j.exec[z]){v(z,y,x);return a}return b}function l(x){var v;x=x.toLowerCase();if(v=j.state[x]){return v(x)}return -1}function h(x){var v;x=x.toLowerCase();if(v=j.value[x]){return v(x)}return b}function u(v,x){x=x||\"exec\";d(v,function(z,y){d(y.toLowerCase().split(\",\"),function(A){j[x][A]=z})})}c.extend(this,{execCommand:r,queryCommandState:l,queryCommandValue:h,addCommands:u});function f(y,x,v){if(x===e){x=b}if(v===e){v=null}return n.getDoc().execCommand(y,x,v)}function t(v){return q.match(v)}function s(v,x){q.toggle(v,x?{value:x}:e)}function i(v){o=p.getBookmark(v)}function g(){p.moveToBookmark(o)}u({\"mceResetDesignMode,mceBeginUndoLevel\":function(){},\"mceEndUndoLevel,mceAddUndoLevel\":function(){n.undoManager.add()},\"Cut,Copy,Paste\":function(z){var y=n.getDoc(),v;try{f(z)}catch(x){v=a}if(v||!y.queryCommandSupported(z)){if(c.isGecko){n.windowManager.confirm(n.getLang(\"clipboard_msg\"),function(A){if(A){open(\"http://www.mozilla.org/editor/midasdemo/securityprefs.html\",\"_blank\")}})}else{n.windowManager.alert(n.getLang(\"clipboard_no_support\"))}}},unlink:function(v){if(p.isCollapsed()){p.select(p.getNode())}f(v);p.collapse(b)},\"JustifyLeft,JustifyCenter,JustifyRight,JustifyFull\":function(v){var x=v.substring(7);d(\"left,center,right,full\".split(\",\"),function(y){if(x!=y){q.remove(\"align\"+y)}});s(\"align\"+x);r(\"mceRepaint\")},\"InsertUnorderedList,InsertOrderedList\":function(y){var v,x;f(y);v=m.getParent(p.getNode(),\"ol,ul\");if(v){x=v.parentNode;if(/^(H[1-6]|P|ADDRESS|PRE)$/.test(x.nodeName)){i();m.split(x,v);g()}}},\"Bold,Italic,Underline,Strikethrough,Superscript,Subscript\":function(v){s(v)},\"ForeColor,HiliteColor,FontName\":function(y,x,v){s(y,v)},FontSize:function(z,y,x){var v,A;if(x>=1&&x<=7){A=c.explode(k.font_size_style_values);v=c.explode(k.font_size_classes);if(v){x=v[x-1]||x}else{x=A[x-1]||x}}s(z,x)},RemoveFormat:function(v){q.remove(v)},mceBlockQuote:function(v){s(\"blockquote\")},FormatBlock:function(y,x,v){return s(v||\"p\")},mceCleanup:function(){var v=p.getBookmark();n.setContent(n.getContent({cleanup:a}),{cleanup:a});p.moveToBookmark(v)},mceRemoveNode:function(z,y,x){var v=x||p.getNode();if(v!=n.getBody()){i();n.dom.remove(v,a);g()}},mceSelectNodeDepth:function(z,y,x){var v=0;m.getParent(p.getNode(),function(A){if(A.nodeType==1&&v++==x){p.select(A);return b}},n.getBody())},mceSelectNode:function(y,x,v){p.select(v)},mceInsertContent:function(B,I,K){var y,J,E,z,F,G,D,C,L,x,A,M,v,H;y=n.parser;J=new c.html.Serializer({},n.schema);v='<span id=\"mce_marker\" data-mce-type=\"bookmark\">\\uFEFF</span>';G={content:K,format:\"html\"};p.onBeforeSetContent.dispatch(p,G);K=G.content;if(K.indexOf(\"{$caret}\")==-1){K+=\"{$caret}\"}K=K.replace(/\\{\\$caret\\}/,v);if(!p.isCollapsed()){n.getDoc().execCommand(\"Delete\",false,null)}E=p.getNode();G={context:E.nodeName.toLowerCase()};F=y.parse(K,G);A=F.lastChild;if(A.attr(\"id\")==\"mce_marker\"){D=A;for(A=A.prev;A;A=A.walk(true)){if(A.type==3||!m.isBlock(A.name)){A.parent.insert(D,A,A.name===\"br\");break}}}if(!G.invalid){K=J.serialize(F);A=E.firstChild;M=E.lastChild;if(!A||(A===M&&A.nodeName===\"BR\")){m.setHTML(E,K)}else{p.setContent(K)}}else{p.setContent(v);E=n.selection.getNode();z=n.getBody();if(E.nodeType==9){E=A=z}else{A=E}while(A!==z){E=A;A=A.parentNode}K=E==z?z.innerHTML:m.getOuterHTML(E);K=J.serialize(y.parse(K.replace(/<span (id=\"mce_marker\"|id=mce_marker).+?<\\/span>/i,function(){return J.serialize(F)})));if(E==z){m.setHTML(z,K)}else{m.setOuterHTML(E,K)}}D=m.get(\"mce_marker\");C=m.getRect(D);L=m.getViewPort(n.getWin());if((C.y+C.h>L.y+L.h||C.y<L.y)||(C.x>L.x+L.w||C.x<L.x)){H=c.isIE?n.getDoc().documentElement:n.getBody();H.scrollLeft=C.x;H.scrollTop=C.y-L.h+25}x=m.createRng();A=D.previousSibling;if(A&&A.nodeType==3){x.setStart(A,A.nodeValue.length)}else{x.setStartBefore(D);x.setEndBefore(D)}m.remove(D);p.setRng(x);p.onSetContent.dispatch(p,G);n.addVisual()},mceInsertRawHTML:function(y,x,v){p.setContent(\"tiny_mce_marker\");n.setContent(n.getContent().replace(/tiny_mce_marker/g,function(){return v}))},mceSetContent:function(y,x,v){n.setContent(v)},\"Indent,Outdent\":function(z){var x,v,y;x=k.indentation;v=/[a-z%]+$/i.exec(x);x=parseInt(x);if(!l(\"InsertUnorderedList\")&&!l(\"InsertOrderedList\")){d(p.getSelectedBlocks(),function(A){if(z==\"outdent\"){y=Math.max(0,parseInt(A.style.paddingLeft||0)-x);m.setStyle(A,\"paddingLeft\",y?y+v:\"\")}else{m.setStyle(A,\"paddingLeft\",(parseInt(A.style.paddingLeft||0)+x)+v)}})}else{f(z)}},mceRepaint:function(){var x;if(c.isGecko){try{i(a);if(p.getSel()){p.getSel().selectAllChildren(n.getBody())}p.collapse(a);g()}catch(v){}}},mceToggleFormat:function(y,x,v){q.toggle(v)},InsertHorizontalRule:function(){n.execCommand(\"mceInsertContent\",false,\"<hr />\")},mceToggleVisualAid:function(){n.hasVisual=!n.hasVisual;n.addVisual()},mceReplaceContent:function(y,x,v){n.execCommand(\"mceInsertContent\",false,v.replace(/\\{\\$selection\\}/g,p.getContent({format:\"text\"})))},mceInsertLink:function(z,y,x){var v;if(typeof(x)==\"string\"){x={href:x}}v=m.getParent(p.getNode(),\"a\");x.href=x.href.replace(\" \",\"%20\");if(!v||!x.href){q.remove(\"link\")}if(x.href){q.apply(\"link\",x,v)}},selectAll:function(){var x=m.getRoot(),v=m.createRng();v.setStart(x,0);v.setEnd(x,x.childNodes.length);n.selection.setRng(v)}});u({\"JustifyLeft,JustifyCenter,JustifyRight,JustifyFull\":function(v){return t(\"align\"+v.substring(7))},\"Bold,Italic,Underline,Strikethrough,Superscript,Subscript\":function(v){return t(v)},mceBlockQuote:function(){return t(\"blockquote\")},Outdent:function(){var v;if(k.inline_styles){if((v=m.getParent(p.getStart(),m.isBlock))&&parseInt(v.style.paddingLeft)>0){return a}if((v=m.getParent(p.getEnd(),m.isBlock))&&parseInt(v.style.paddingLeft)>0){return a}}return l(\"InsertUnorderedList\")||l(\"InsertOrderedList\")||(!k.inline_styles&&!!m.getParent(p.getNode(),\"BLOCKQUOTE\"))},\"InsertUnorderedList,InsertOrderedList\":function(v){return m.getParent(p.getNode(),v==\"insertunorderedlist\"?\"UL\":\"OL\")}},\"state\");u({\"FontSize,FontName\":function(y){var x=0,v;if(v=m.getParent(p.getNode(),\"span\")){if(y==\"fontsize\"){x=v.style.fontSize}else{x=v.style.fontFamily.replace(/, /g,\",\").replace(/[\\'\\\"]/g,\"\").toLowerCase()}}return x}},\"value\");if(k.custom_undo_redo){u({Undo:function(){n.undoManager.undo()},Redo:function(){n.undoManager.redo()}})}}})(tinymce);(function(b){var a=b.util.Dispatcher;b.UndoManager=function(f){var d,e=0,h=[],c;function g(){return b.trim(f.getContent({format:\"raw\",no_events:1}))}return d={typing:false,onAdd:new a(d),onUndo:new a(d),onRedo:new a(d),beforeChange:function(){c=f.selection.getBookmark(2,true)},add:function(m){var j,k=f.settings,l;m=m||{};m.content=g();l=h[e];if(l&&l.content==m.content){return null}if(h[e]){h[e].beforeBookmark=c}if(k.custom_undo_redo_levels){if(h.length>k.custom_undo_redo_levels){for(j=0;j<h.length-1;j++){h[j]=h[j+1]}h.length--;e=h.length}}m.bookmark=f.selection.getBookmark(2,true);if(e<h.length-1){h.length=e+1}h.push(m);e=h.length-1;d.onAdd.dispatch(d,m);f.isNotDirty=0;return m},undo:function(){var k,j;if(d.typing){d.add();d.typing=false}if(e>0){k=h[--e];f.setContent(k.content,{format:\"raw\"});f.selection.moveToBookmark(k.beforeBookmark);d.onUndo.dispatch(d,k)}return k},redo:function(){var i;if(e<h.length-1){i=h[++e];f.setContent(i.content,{format:\"raw\"});f.selection.moveToBookmark(i.bookmark);d.onRedo.dispatch(d,i)}return i},clear:function(){h=[];e=0;d.typing=false},hasUndo:function(){return e>0||this.typing},hasRedo:function(){return e<h.length-1&&!this.typing}}}})(tinymce);(function(l){var j=l.dom.Event,c=l.isIE,a=l.isGecko,b=l.isOpera,i=l.each,h=l.extend,d=true,g=false;function k(o){var p,n,m;do{if(/^(SPAN|STRONG|B|EM|I|FONT|STRIKE|U)$/.test(o.nodeName)){if(p){n=o.cloneNode(false);n.appendChild(p);p=n}else{p=m=o.cloneNode(false)}p.removeAttribute(\"id\")}}while(o=o.parentNode);if(p){return{wrapper:p,inner:m}}}function f(n,o){var m=o.ownerDocument.createRange();m.setStart(n.endContainer,n.endOffset);m.setEndAfter(o);return m.cloneContents().textContent.length==0}function e(o,q,m){var n,p;if(q.isEmpty(m)){n=q.getParent(m,\"ul,ol\");if(!q.getParent(n.parentNode,\"ul,ol\")){q.split(n,m);p=q.create(\"p\",0,'<br data-mce-bogus=\"1\" />');q.replace(p,m);o.select(p,1)}return g}return d}l.create(\"tinymce.ForceBlocks\",{ForceBlocks:function(m){var n=this,o=m.settings,p;n.editor=m;n.dom=m.dom;p=(o.forced_root_block||\"p\").toLowerCase();o.element=p.toUpperCase();m.onPreInit.add(n.setup,n)},setup:function(){var n=this,m=n.editor,p=m.settings,u=m.dom,o=m.selection,q=m.schema.getBlockElements();if(p.forced_root_block){function v(){var y=o.getStart(),t=m.getBody(),s,z,D,F,E,x,A,B=-16777215;if(!y||y.nodeType!==1){return}while(y!=t){if(q[y.nodeName]){return}y=y.parentNode}s=o.getRng();if(s.setStart){z=s.startContainer;D=s.startOffset;F=s.endContainer;E=s.endOffset}else{if(s.item){s=m.getDoc().body.createTextRange();s.moveToElementText(s.item(0))}tmpRng=s.duplicate();tmpRng.collapse(true);D=tmpRng.move(\"character\",B)*-1;if(!tmpRng.collapsed){tmpRng=s.duplicate();tmpRng.collapse(false);E=(tmpRng.move(\"character\",B)*-1)-D}}for(y=t.firstChild;y;y){if(y.nodeType===3||(y.nodeType==1&&!q[y.nodeName])){if(!x){x=u.create(p.forced_root_block);y.parentNode.insertBefore(x,y)}A=y;y=y.nextSibling;x.appendChild(A)}else{x=null;y=y.nextSibling}}if(s.setStart){s.setStart(z,D);s.setEnd(F,E);o.setRng(s)}else{try{s=m.getDoc().body.createTextRange();s.moveToElementText(t);s.collapse(true);s.moveStart(\"character\",D);if(E>0){s.moveEnd(\"character\",E)}s.select()}catch(C){}}m.nodeChanged()}m.onKeyUp.add(v);m.onClick.add(v)}if(p.force_br_newlines){if(c){m.onKeyPress.add(function(s,t){var x;if(t.keyCode==13&&o.getNode().nodeName!=\"LI\"){o.setContent('<br id=\"__\" /> ',{format:\"raw\"});x=u.get(\"__\");x.removeAttribute(\"id\");o.select(x);o.collapse();return j.cancel(t)}})}}if(p.force_p_newlines){if(!c){m.onKeyPress.add(function(s,t){if(t.keyCode==13&&!t.shiftKey&&!n.insertPara(t)){j.cancel(t)}})}else{l.addUnload(function(){n._previousFormats=0});m.onKeyPress.add(function(s,t){n._previousFormats=0;if(t.keyCode==13&&!t.shiftKey&&s.selection.isCollapsed()&&p.keep_styles){n._previousFormats=k(s.selection.getStart())}});m.onKeyUp.add(function(t,y){if(y.keyCode==13&&!y.shiftKey){var x=t.selection.getStart(),s=n._previousFormats;if(!x.hasChildNodes()&&s){x=u.getParent(x,u.isBlock);if(x&&x.nodeName!=\"LI\"){x.innerHTML=\"\";if(n._previousFormats){x.appendChild(s.wrapper);s.inner.innerHTML=\"\\uFEFF\"}else{x.innerHTML=\"\\uFEFF\"}o.select(x,1);o.collapse(true);t.getDoc().execCommand(\"Delete\",false,null);n._previousFormats=0}}}})}if(a){m.onKeyDown.add(function(s,t){if((t.keyCode==8||t.keyCode==46)&&!t.shiftKey){n.backspaceDelete(t,t.keyCode==8)}})}}if(l.isWebKit){function r(t){var s=o.getRng(),x,A=u.create(\"div\",null,\" \"),z,y=u.getViewPort(t.getWin()).h;s.insertNode(x=u.create(\"br\"));s.setStartAfter(x);s.setEndAfter(x);o.setRng(s);if(o.getSel().focusNode==x.previousSibling){o.select(u.insertAfter(u.doc.createTextNode(\"\\u00a0\"),x));o.collapse(d)}u.insertAfter(A,x);z=u.getPos(A).y;u.remove(A);if(z>y){t.getWin().scrollTo(0,z)}}m.onKeyPress.add(function(s,t){if(t.keyCode==13&&(t.shiftKey||(p.force_br_newlines&&!u.getParent(o.getNode(),\"h1,h2,h3,h4,h5,h6,ol,ul\")))){r(s);j.cancel(t)}})}if(c){if(p.element!=\"P\"){m.onKeyPress.add(function(s,t){n.lastElm=o.getNode().nodeName});m.onKeyUp.add(function(t,x){var z,y=o.getNode(),s=t.getBody();if(s.childNodes.length===1&&y.nodeName==\"P\"){y=u.rename(y,p.element);o.select(y);o.collapse();t.nodeChanged()}else{if(x.keyCode==13&&!x.shiftKey&&n.lastElm!=\"P\"){z=u.getParent(y,\"p\");if(z){u.rename(z,p.element);t.nodeChanged()}}}})}}},getParentBlock:function(o){var m=this.dom;return m.getParent(o,m.isBlock)},insertPara:function(Q){var E=this,v=E.editor,M=v.dom,R=v.getDoc(),V=v.settings,F=v.selection.getSel(),G=F.getRangeAt(0),U=R.body;var J,K,H,O,N,q,o,u,z,m,C,T,p,x,I,L=M.getViewPort(v.getWin()),B,D,A;v.undoManager.beforeChange();J=R.createRange();J.setStart(F.anchorNode,F.anchorOffset);J.collapse(d);K=R.createRange();K.setStart(F.focusNode,F.focusOffset);K.collapse(d);H=J.compareBoundaryPoints(J.START_TO_END,K)<0;O=H?F.anchorNode:F.focusNode;N=H?F.anchorOffset:F.focusOffset;q=H?F.focusNode:F.anchorNode;o=H?F.focusOffset:F.anchorOffset;if(O===q&&/^(TD|TH)$/.test(O.nodeName)){if(O.firstChild.nodeName==\"BR\"){M.remove(O.firstChild)}if(O.childNodes.length==0){v.dom.add(O,V.element,null,\"<br />\");T=v.dom.add(O,V.element,null,\"<br />\")}else{I=O.innerHTML;O.innerHTML=\"\";v.dom.add(O,V.element,null,I);T=v.dom.add(O,V.element,null,\"<br />\")}G=R.createRange();G.selectNodeContents(T);G.collapse(1);v.selection.setRng(G);return g}if(O==U&&q==U&&U.firstChild&&v.dom.isBlock(U.firstChild)){O=q=O.firstChild;N=o=0;J=R.createRange();J.setStart(O,0);K=R.createRange();K.setStart(q,0)}if(!R.body.hasChildNodes()){R.body.appendChild(M.create(\"br\"))}O=O.nodeName==\"HTML\"?R.body:O;O=O.nodeName==\"BODY\"?O.firstChild:O;q=q.nodeName==\"HTML\"?R.body:q;q=q.nodeName==\"BODY\"?q.firstChild:q;u=E.getParentBlock(O);z=E.getParentBlock(q);m=u?u.nodeName:V.element;if(I=E.dom.getParent(u,\"li,pre\")){if(I.nodeName==\"LI\"){return e(v.selection,E.dom,I)}return d}if(u&&(u.nodeName==\"CAPTION\"||/absolute|relative|fixed/gi.test(M.getStyle(u,\"position\",1)))){m=V.element;u=null}if(z&&(z.nodeName==\"CAPTION\"||/absolute|relative|fixed/gi.test(M.getStyle(u,\"position\",1)))){m=V.element;z=null}if(/(TD|TABLE|TH|CAPTION)/.test(m)||(u&&m==\"DIV\"&&/left|right/gi.test(M.getStyle(u,\"float\",1)))){m=V.element;u=z=null}C=(u&&u.nodeName==m)?u.cloneNode(0):v.dom.create(m);T=(z&&z.nodeName==m)?z.cloneNode(0):v.dom.create(m);T.removeAttribute(\"id\");if(/^(H[1-6])$/.test(m)&&f(G,u)){T=v.dom.create(V.element)}I=p=O;do{if(I==U||I.nodeType==9||E.dom.isBlock(I)||/(TD|TABLE|TH|CAPTION)/.test(I.nodeName)){break}p=I}while((I=I.previousSibling?I.previousSibling:I.parentNode));I=x=q;do{if(I==U||I.nodeType==9||E.dom.isBlock(I)||/(TD|TABLE|TH|CAPTION)/.test(I.nodeName)){break}x=I}while((I=I.nextSibling?I.nextSibling:I.parentNode));if(p.nodeName==m){J.setStart(p,0)}else{J.setStartBefore(p)}J.setEnd(O,N);C.appendChild(J.cloneContents()||R.createTextNode(\"\"));try{K.setEndAfter(x)}catch(P){}K.setStart(q,o);T.appendChild(K.cloneContents()||R.createTextNode(\"\"));G=R.createRange();if(!p.previousSibling&&p.parentNode.nodeName==m){G.setStartBefore(p.parentNode)}else{if(J.startContainer.nodeName==m&&J.startOffset==0){G.setStartBefore(J.startContainer)}else{G.setStart(J.startContainer,J.startOffset)}}if(!x.nextSibling&&x.parentNode.nodeName==m){G.setEndAfter(x.parentNode)}else{G.setEnd(K.endContainer,K.endOffset)}G.deleteContents();if(b){v.getWin().scrollTo(0,L.y)}if(C.firstChild&&C.firstChild.nodeName==m){C.innerHTML=C.firstChild.innerHTML}if(T.firstChild&&T.firstChild.nodeName==m){T.innerHTML=T.firstChild.innerHTML}function S(y,s){var r=[],X,W,t;y.innerHTML=\"\";if(V.keep_styles){W=s;do{if(/^(SPAN|STRONG|B|EM|I|FONT|STRIKE|U)$/.test(W.nodeName)){X=W.cloneNode(g);M.setAttrib(X,\"id\",\"\");r.push(X)}}while(W=W.parentNode)}if(r.length>0){for(t=r.length-1,X=y;t>=0;t--){X=X.appendChild(r[t])}r[0].innerHTML=b?\"\\u00a0\":\"<br />\";return r[0]}else{y.innerHTML=b?\"\\u00a0\":\"<br />\"}}if(M.isEmpty(C)){S(C,O)}if(M.isEmpty(T)){A=S(T,q)}if(b&&parseFloat(opera.version())<9.5){G.insertNode(C);G.insertNode(T)}else{G.insertNode(T);G.insertNode(C)}T.normalize();C.normalize();v.selection.select(T,true);v.selection.collapse(true);B=v.dom.getPos(T).y;if(B<L.y||B+25>L.y+L.h){v.getWin().scrollTo(0,B<L.y?B:B-L.h+25)}v.undoManager.add();return g},backspaceDelete:function(u,B){var C=this,s=C.editor,y=s.getBody(),q=s.dom,p,v=s.selection,o=v.getRng(),x=o.startContainer,p,z,A,m;if(!B&&o.collapsed&&x.nodeType==1&&o.startOffset==x.childNodes.length){m=new l.dom.TreeWalker(x.lastChild,x);for(p=x.lastChild;p;p=m.prev()){if(p.nodeType==3){o.setStart(p,p.nodeValue.length);o.collapse(true);v.setRng(o);return}}}if(x&&s.dom.isBlock(x)&&!/^(TD|TH)$/.test(x.nodeName)&&B){if(x.childNodes.length==0||(x.childNodes.length==1&&x.firstChild.nodeName==\"BR\")){p=x;while((p=p.previousSibling)&&!s.dom.isBlock(p)){}if(p){if(x!=y.firstChild){z=s.dom.doc.createTreeWalker(p,NodeFilter.SHOW_TEXT,null,g);while(A=z.nextNode()){p=A}o=s.getDoc().createRange();o.setStart(p,p.nodeValue?p.nodeValue.length:0);o.setEnd(p,p.nodeValue?p.nodeValue.length:0);v.setRng(o);s.dom.remove(x)}return j.cancel(u)}}}}})})(tinymce);(function(c){var b=c.DOM,a=c.dom.Event,d=c.each,e=c.extend;c.create(\"tinymce.ControlManager\",{ControlManager:function(f,j){var h=this,g;j=j||{};h.editor=f;h.controls={};h.onAdd=new c.util.Dispatcher(h);h.onPostRender=new c.util.Dispatcher(h);h.prefix=j.prefix||f.id+\"_\";h._cls={};h.onPostRender.add(function(){d(h.controls,function(i){i.postRender()})})},get:function(f){return this.controls[this.prefix+f]||this.controls[f]},setActive:function(h,f){var g=null;if(g=this.get(h)){g.setActive(f)}return g},setDisabled:function(h,f){var g=null;if(g=this.get(h)){g.setDisabled(f)}return g},add:function(g){var f=this;if(g){f.controls[g.id]=g;f.onAdd.dispatch(g,f)}return g},createControl:function(i){var h,g=this,f=g.editor;d(f.plugins,function(j){if(j.createControl){h=j.createControl(i,g);if(h){return false}}});switch(i){case\"|\":case\"separator\":return g.createSeparator()}if(!h&&f.buttons&&(h=f.buttons[i])){return g.createButton(i,h)}return g.add(h)},createDropMenu:function(f,n,h){var m=this,i=m.editor,j,g,k,l;n=e({\"class\":\"mceDropDown\",constrain:i.settings.constrain_menus},n);n[\"class\"]=n[\"class\"]+\" \"+i.getParam(\"skin\")+\"Skin\";if(k=i.getParam(\"skin_variant\")){n[\"class\"]+=\" \"+i.getParam(\"skin\")+\"Skin\"+k.substring(0,1).toUpperCase()+k.substring(1)}f=m.prefix+f;l=h||m._cls.dropmenu||c.ui.DropMenu;j=m.controls[f]=new l(f,n);j.onAddItem.add(function(r,q){var p=q.settings;p.title=i.getLang(p.title,p.title);if(!p.onclick){p.onclick=function(o){if(p.cmd){i.execCommand(p.cmd,p.ui||false,p.value)}}}});i.onRemove.add(function(){j.destroy()});if(c.isIE){j.onShowMenu.add(function(){i.focus();g=i.selection.getBookmark(1)});j.onHideMenu.add(function(){if(g){i.selection.moveToBookmark(g);g=0}})}return m.add(j)},createListBox:function(f,n,h){var l=this,j=l.editor,i,k,m;if(l.get(f)){return null}n.title=j.translate(n.title);n.scope=n.scope||j;if(!n.onselect){n.onselect=function(o){j.execCommand(n.cmd,n.ui||false,o||n.value)}}n=e({title:n.title,\"class\":\"mce_\"+f,scope:n.scope,control_manager:l},n);f=l.prefix+f;function g(o){return o.settings.use_accessible_selects&&!c.isGecko}if(j.settings.use_native_selects||g(j)){k=new c.ui.NativeListBox(f,n)}else{m=h||l._cls.listbox||c.ui.ListBox;k=new m(f,n,j)}l.controls[f]=k;if(c.isWebKit){k.onPostRender.add(function(p,o){a.add(o,\"mousedown\",function(){j.bookmark=j.selection.getBookmark(1)});a.add(o,\"focus\",function(){j.selection.moveToBookmark(j.bookmark);j.bookmark=null})})}if(k.hideMenu){j.onMouseDown.add(k.hideMenu,k)}return l.add(k)},createButton:function(m,i,l){var h=this,g=h.editor,j,k,f;if(h.get(m)){return null}i.title=g.translate(i.title);i.label=g.translate(i.label);i.scope=i.scope||g;if(!i.onclick&&!i.menu_button){i.onclick=function(){g.execCommand(i.cmd,i.ui||false,i.value)}}i=e({title:i.title,\"class\":\"mce_\"+m,unavailable_prefix:g.getLang(\"unavailable\",\"\"),scope:i.scope,control_manager:h},i);m=h.prefix+m;if(i.menu_button){f=l||h._cls.menubutton||c.ui.MenuButton;k=new f(m,i,g);g.onMouseDown.add(k.hideMenu,k)}else{f=h._cls.button||c.ui.Button;k=new f(m,i,g)}return h.add(k)},createMenuButton:function(h,f,g){f=f||{};f.menu_button=1;return this.createButton(h,f,g)},createSplitButton:function(m,i,l){var h=this,g=h.editor,j,k,f;if(h.get(m)){return null}i.title=g.translate(i.title);i.scope=i.scope||g;if(!i.onclick){i.onclick=function(n){g.execCommand(i.cmd,i.ui||false,n||i.value)}}if(!i.onselect){i.onselect=function(n){g.execCommand(i.cmd,i.ui||false,n||i.value)}}i=e({title:i.title,\"class\":\"mce_\"+m,scope:i.scope,control_manager:h},i);m=h.prefix+m;f=l||h._cls.splitbutton||c.ui.SplitButton;k=h.add(new f(m,i,g));g.onMouseDown.add(k.hideMenu,k);return k},createColorSplitButton:function(f,n,h){var l=this,j=l.editor,i,k,m,g;if(l.get(f)){return null}n.title=j.translate(n.title);n.scope=n.scope||j;if(!n.onclick){n.onclick=function(o){if(c.isIE){g=j.selection.getBookmark(1)}j.execCommand(n.cmd,n.ui||false,o||n.value)}}if(!n.onselect){n.onselect=function(o){j.execCommand(n.cmd,n.ui||false,o||n.value)}}n=e({title:n.title,\"class\":\"mce_\"+f,menu_class:j.getParam(\"skin\")+\"Skin\",scope:n.scope,more_colors_title:j.getLang(\"more_colors\")},n);f=l.prefix+f;m=h||l._cls.colorsplitbutton||c.ui.ColorSplitButton;k=new m(f,n,j);j.onMouseDown.add(k.hideMenu,k);j.onRemove.add(function(){k.destroy()});if(c.isIE){k.onShowMenu.add(function(){j.focus();g=j.selection.getBookmark(1)});k.onHideMenu.add(function(){if(g){j.selection.moveToBookmark(g);g=0}})}return l.add(k)},createToolbar:function(k,h,j){var i,g=this,f;k=g.prefix+k;f=j||g._cls.toolbar||c.ui.Toolbar;i=new f(k,h,g.editor);if(g.get(k)){return null}return g.add(i)},createToolbarGroup:function(k,h,j){var i,g=this,f;k=g.prefix+k;f=j||this._cls.toolbarGroup||c.ui.ToolbarGroup;i=new f(k,h,g.editor);if(g.get(k)){return null}return g.add(i)},createSeparator:function(g){var f=g||this._cls.separator||c.ui.Separator;return new f()},setControlType:function(g,f){return this._cls[g.toLowerCase()]=f},destroy:function(){d(this.controls,function(f){f.destroy()});this.controls=null}})})(tinymce);(function(d){var a=d.util.Dispatcher,e=d.each,c=d.isIE,b=d.isOpera;d.create(\"tinymce.WindowManager\",{WindowManager:function(f){var g=this;g.editor=f;g.onOpen=new a(g);g.onClose=new a(g);g.params={};g.features={}},open:function(z,h){var v=this,k=\"\",n,m,i=v.editor.settings.dialog_type==\"modal\",q,o,j,g=d.DOM.getViewPort(),r;z=z||{};h=h||{};o=b?g.w:screen.width;j=b?g.h:screen.height;z.name=z.name||\"mc_\"+new Date().getTime();z.width=parseInt(z.width||320);z.height=parseInt(z.height||240);z.resizable=true;z.left=z.left||parseInt(o/2)-(z.width/2);z.top=z.top||parseInt(j/2)-(z.height/2);h.inline=false;h.mce_width=z.width;h.mce_height=z.height;h.mce_auto_focus=z.auto_focus;if(i){if(c){z.center=true;z.help=false;z.dialogWidth=z.width+\"px\";z.dialogHeight=z.height+\"px\";z.scroll=z.scrollbars||false}}e(z,function(p,f){if(d.is(p,\"boolean\")){p=p?\"yes\":\"no\"}if(!/^(name|url)$/.test(f)){if(c&&i){k+=(k?\";\":\"\")+f+\":\"+p}else{k+=(k?\",\":\"\")+f+\"=\"+p}}});v.features=z;v.params=h;v.onOpen.dispatch(v,z,h);r=z.url||z.file;r=d._addVer(r);try{if(c&&i){q=1;window.showModalDialog(r,window,k)}else{q=window.open(r,z.name,k)}}catch(l){}if(!q){alert(v.editor.getLang(\"popup_blocked\"))}},close:function(f){f.close();this.onClose.dispatch(this)},createInstance:function(i,h,g,m,l,k){var j=d.resolve(i);return new j(h,g,m,l,k)},confirm:function(h,f,i,g){g=g||window;f.call(i||this,g.confirm(this._decode(this.editor.getLang(h,h))))},alert:function(h,f,j,g){var i=this;g=g||window;g.alert(i._decode(i.editor.getLang(h,h)));if(f){f.call(j||i)}},resizeBy:function(f,g,h){h.resizeBy(f,g)},_decode:function(f){return d.DOM.decode(f).replace(/\\\\n/g,\"\\n\")}})}(tinymce));(function(a){a.Formatter=function(V){var M={},O=a.each,c=V.dom,q=V.selection,t=a.dom.TreeWalker,K=new a.dom.RangeUtils(c),d=V.schema.isValidChild,F=c.isBlock,l=V.settings.forced_root_block,s=c.nodeIndex,E=\"\\uFEFF\",e=/^(src|href|style)$/,S=false,B=true,p,P={apply:[],remove:[]};function z(W){return W instanceof Array}function m(X,W){return c.getParents(X,W,c.getRoot())}function b(W){return W.nodeType===1&&(W.face===\"mceinline\"||W.style.fontFamily===\"mceinline\")}function R(W){return W?M[W]:M}function k(W,X){if(W){if(typeof(W)!==\"string\"){O(W,function(Z,Y){k(Y,Z)})}else{X=X.length?X:[X];O(X,function(Y){if(Y.deep===p){Y.deep=!Y.selector}if(Y.split===p){Y.split=!Y.selector||Y.inline}if(Y.remove===p&&Y.selector&&!Y.inline){Y.remove=\"none\"}if(Y.selector&&Y.inline){Y.mixed=true;Y.block_expand=true}if(typeof(Y.classes)===\"string\"){Y.classes=Y.classes.split(/\\s+/)}});M[W]=X}}}var i=function(X){var W;V.dom.getParent(X,function(Y){W=V.dom.getStyle(Y,\"text-decoration\");return W&&W!==\"none\"});return W};var I=function(W){var X;if(W.nodeType===1&&W.parentNode&&W.parentNode.nodeType===1){X=i(W.parentNode);if(V.dom.getStyle(W,\"color\")&&X){V.dom.setStyle(W,\"text-decoration\",X)}else{if(V.dom.getStyle(W,\"textdecoration\")===X){V.dom.setStyle(W,\"text-decoration\",null)}}}};function T(Z,ah,ac){var ad=R(Z),ai=ad[0],ag,X,af,ae=q.isCollapsed();function aa(am){var al=am.startContainer,ap=am.startOffset,ao,an;if(al.nodeType==1||al.nodeValue===\"\"){al=al.nodeType==1?al.childNodes[ap]:al;if(al){ao=new t(al,al.parentNode);for(an=ao.current();an;an=ao.next()){if(an.nodeType==3&&!f(an)){am.setStart(an,0);break}}}}return am}function W(am,al){al=al||ai;if(am){if(al.onformat){al.onformat(am,al,ah,ac)}O(al.styles,function(ao,an){c.setStyle(am,an,r(ao,ah))});O(al.attributes,function(ao,an){c.setAttrib(am,an,r(ao,ah))});O(al.classes,function(an){an=r(an,ah);if(!c.hasClass(am,an)){c.addClass(am,an)}})}}function ab(){function an(au,ar){var at=new t(ar);for(ac=at.current();ac;ac=at.prev()){if(ac.childNodes.length>1||ac==au){return ac}}}var am=V.selection.getRng();var aq=am.startContainer;var al=am.endContainer;if(aq!=al&&am.endOffset==0){var ap=an(aq,al);var ao=ap.nodeType==3?ap.length:ap.childNodes.length;am.setEnd(ap,ao)}return am}function Y(ao,au,ar,aq,am){var al=[],an=-1,at,aw=-1,ap=-1,av;O(ao.childNodes,function(ay,ax){if(ay.nodeName===\"UL\"||ay.nodeName===\"OL\"){an=ax;at=ay;return false}});O(ao.childNodes,function(ay,ax){if(ay.nodeName===\"SPAN\"&&c.getAttrib(ay,\"data-mce-type\")==\"bookmark\"){if(ay.id==au.id+\"_start\"){aw=ax}else{if(ay.id==au.id+\"_end\"){ap=ax}}}});if(an<=0||(aw<an&&ap>an)){O(a.grep(ao.childNodes),am);return 0}else{av=ar.cloneNode(S);O(a.grep(ao.childNodes),function(ay,ax){if((aw<an&&ax<an)||(aw>an&&ax>an)){al.push(ay);ay.parentNode.removeChild(ay)}});if(aw<an){ao.insertBefore(av,at)}else{if(aw>an){ao.insertBefore(av,at.nextSibling)}}aq.push(av);O(al,function(ax){av.appendChild(ax)});return av}}function aj(am,ao){var al=[],ap,an;ap=ai.inline||ai.block;an=c.create(ap);W(an);K.walk(am,function(aq){var ar;function at(au){var ax=au.nodeName.toLowerCase(),aw=au.parentNode.nodeName.toLowerCase(),av;if(g(ax,\"br\")){ar=0;if(ai.block){c.remove(au)}return}if(ai.wrapper&&x(au,Z,ah)){ar=0;return}if(ai.block&&!ai.wrapper&&G(ax)){au=c.rename(au,ap);W(au);al.push(au);ar=0;return}if(ai.selector){O(ad,function(ay){if(\"collapsed\" in ay&&ay.collapsed!==ae){return}if(c.is(au,ay.selector)&&!b(au)){W(au,ay);av=true}});if(!ai.inline||av){ar=0;return}}if(d(ap,ax)&&d(aw,ap)&&!(au.nodeType===3&&au.nodeValue.length===1&&au.nodeValue.charCodeAt(0)===65279)){if(!ar){ar=an.cloneNode(S);au.parentNode.insertBefore(ar,au);al.push(ar)}ar.appendChild(au)}else{if(ax==\"li\"&&ao){ar=Y(au,ao,an,al,at)}else{ar=0;O(a.grep(au.childNodes),at);ar=0}}}O(aq,at)});if(ai.wrap_links===false){O(al,function(aq){function ar(aw){var av,au,at;if(aw.nodeName===\"A\"){au=an.cloneNode(S);al.push(au);at=a.grep(aw.childNodes);for(av=0;av<at.length;av++){au.appendChild(at[av])}aw.appendChild(au)}O(a.grep(aw.childNodes),ar)}ar(aq)})}O(al,function(at){var aq;function au(aw){var av=0;O(aw.childNodes,function(ax){if(!f(ax)&&!H(ax)){av++}});return av}function ar(av){var ax,aw;O(av.childNodes,function(ay){if(ay.nodeType==1&&!H(ay)&&!b(ay)){ax=ay;return S}});if(ax&&h(ax,ai)){aw=ax.cloneNode(S);W(aw);c.replace(aw,av,B);c.remove(ax,1)}return aw||av}aq=au(at);if((al.length>1||!F(at))&&aq===0){c.remove(at,1);return}if(ai.inline||ai.wrapper){if(!ai.exact&&aq===1){at=ar(at)}O(ad,function(av){O(c.select(av.inline,at),function(ax){var aw;if(av.wrap_links===false){aw=ax.parentNode;do{if(aw.nodeName===\"A\"){return}}while(aw=aw.parentNode)}U(av,ah,ax,av.exact?ax:null)})});if(x(at.parentNode,Z,ah)){c.remove(at,1);at=0;return B}if(ai.merge_with_parents){c.getParent(at.parentNode,function(av){if(x(av,Z,ah)){c.remove(at,1);at=0;return B}})}if(at&&ai.merge_siblings!==false){at=u(C(at),at);at=u(at,C(at,B))}}})}if(ai){if(ac){X=c.createRng();X.setStartBefore(ac);X.setEndAfter(ac);aj(o(X,ad))}else{if(!ae||!ai.inline||c.select(\"td.mceSelected,th.mceSelected\").length){var ak=V.selection.getNode();V.selection.setRng(ab());ag=q.getBookmark();aj(o(q.getRng(B),ad),ag);if(ai.styles&&(ai.styles.color||ai.styles.textDecoration)){a.walk(ak,I,\"childNodes\");I(ak)}q.moveToBookmark(ag);q.setRng(aa(q.getRng(B)));V.nodeChanged()}else{Q(\"apply\",Z,ah)}}}}function A(Y,ah,ab){var ac=R(Y),aj=ac[0],ag,af,X;function aa(am){var al=am.startContainer,ar=am.startOffset,aq,ap,an,ao;if(al.nodeType==3&&ar>=al.nodeValue.length-1){al=al.parentNode;ar=s(al)+1}if(al.nodeType==1){an=al.childNodes;al=an[Math.min(ar,an.length-1)];aq=new t(al);if(ar>an.length-1){aq.next()}for(ap=aq.current();ap;ap=aq.next()){if(ap.nodeType==3&&!f(ap)){ao=c.create(\"a\",null,E);ap.parentNode.insertBefore(ao,ap);am.setStart(ap,0);q.setRng(am);c.remove(ao);return}}}}function Z(ao){var an,am,al;an=a.grep(ao.childNodes);for(am=0,al=ac.length;am<al;am++){if(U(ac[am],ah,ao,ao)){break}}if(aj.deep){for(am=0,al=an.length;am<al;am++){Z(an[am])}}}function ad(al){var am;O(m(al.parentNode).reverse(),function(an){var ao;if(!am&&an.id!=\"_start\"&&an.id!=\"_end\"){ao=x(an,Y,ah);if(ao&&ao.split!==false){am=an}}});return am}function W(ao,al,aq,au){var av,at,ar,an,ap,am;if(ao){am=ao.parentNode;for(av=al.parentNode;av&&av!=am;av=av.parentNode){at=av.cloneNode(S);for(ap=0;ap<ac.length;ap++){if(U(ac[ap],ah,at,at)){at=0;break}}if(at){if(ar){at.appendChild(ar)}if(!an){an=at}ar=at}}if(au&&(!aj.mixed||!F(ao))){al=c.split(ao,al)}if(ar){aq.parentNode.insertBefore(ar,aq);an.appendChild(aq)}}return al}function ai(al){return W(ad(al),al,al,true)}function ae(an){var am=c.get(an?\"_start\":\"_end\"),al=am[an?\"firstChild\":\"lastChild\"];if(H(al)){al=al[an?\"firstChild\":\"lastChild\"]}c.remove(am,true);return al}function ak(al){var am,an;al=o(al,ac,B);if(aj.split){am=J(al,B);an=J(al);if(am!=an){am=N(am,\"span\",{id:\"_start\",\"data-mce-type\":\"bookmark\"});an=N(an,\"span\",{id:\"_end\",\"data-mce-type\":\"bookmark\"});ai(am);ai(an);am=ae(B);an=ae()}else{am=an=ai(am)}al.startContainer=am.parentNode;al.startOffset=s(am);al.endContainer=an.parentNode;al.endOffset=s(an)+1}K.walk(al,function(ao){O(ao,function(ap){Z(ap);if(ap.nodeType===1&&V.dom.getStyle(ap,\"text-decoration\")===\"underline\"&&ap.parentNode&&i(ap.parentNode)===\"underline\"){U({deep:false,exact:true,inline:\"span\",styles:{textDecoration:\"underline\"}},null,ap)}})})}if(ab){X=c.createRng();X.setStartBefore(ab);X.setEndAfter(ab);ak(X);return}if(!q.isCollapsed()||!aj.inline||c.select(\"td.mceSelected,th.mceSelected\").length){ag=q.getBookmark();ak(q.getRng(B));q.moveToBookmark(ag);if(aj.inline&&j(Y,ah,q.getStart())){aa(q.getRng(true))}V.nodeChanged()}else{Q(\"remove\",Y,ah)}}function D(X,Z,Y){var W=R(X);if(j(X,Z,Y)&&(!(\"toggle\" in W[0])||W[0][\"toggle\"])){A(X,Z,Y)}else{T(X,Z,Y)}}function x(X,W,ac,aa){var Y=R(W),ad,ab,Z;function ae(ai,ak,al){var ah,aj,af=ak[al],ag;if(ak.onmatch){return ak.onmatch(ai,ak,al)}if(af){if(af.length===p){for(ah in af){if(af.hasOwnProperty(ah)){if(al===\"attributes\"){aj=c.getAttrib(ai,ah)}else{aj=L(ai,ah)}if(aa&&!aj&&!ak.exact){return}if((!aa||ak.exact)&&!g(aj,r(af[ah],ac))){return}}}}else{for(ag=0;ag<af.length;ag++){if(al===\"attributes\"?c.getAttrib(ai,af[ag]):L(ai,af[ag])){return ak}}}}return ak}if(Y&&X){for(ab=0;ab<Y.length;ab++){ad=Y[ab];if(h(X,ad)&&ae(X,ad,\"attributes\")&&ae(X,ad,\"styles\")){if(Z=ad.classes){for(ab=0;ab<Z.length;ab++){if(!c.hasClass(X,Z[ab])){return}}}return ad}}}}function j(Y,ab,aa){var X,Z;function W(ac){ac=c.getParent(ac,function(ad){return !!x(ad,Y,ab,true)});return x(ac,Y,ab)}if(aa){return W(aa)}if(q.isCollapsed()){for(Z=P.apply.length-1;Z>=0;Z--){if(P.apply[Z].name==Y){return true}}for(Z=P.remove.length-1;Z>=0;Z--){if(P.remove[Z].name==Y){return false}}return W(q.getNode())}aa=q.getNode();if(W(aa)){return B}X=q.getStart();if(X!=aa){if(W(X)){return B}}return S}function v(ad,ac){var aa,ab=[],Z={},Y,X,W;if(q.isCollapsed()){for(X=0;X<ad.length;X++){for(Y=P.remove.length-1;Y>=0;Y--){W=ad[X];if(P.remove[Y].name==W){Z[W]=true;break}}}for(Y=P.apply.length-1;Y>=0;Y--){for(X=0;X<ad.length;X++){W=ad[X];if(!Z[W]&&P.apply[Y].name==W){Z[W]=true;ab.push(W)}}}}aa=q.getStart();c.getParent(aa,function(ag){var af,ae;for(af=0;af<ad.length;af++){ae=ad[af];if(!Z[ae]&&x(ag,ae,ac)){Z[ae]=true;ab.push(ae)}}});return ab}function y(aa){var ac=R(aa),Z,Y,ab,X,W;if(ac){Z=q.getStart();Y=m(Z);for(X=ac.length-1;X>=0;X--){W=ac[X].selector;if(!W){return B}for(ab=Y.length-1;ab>=0;ab--){if(c.is(Y[ab],W)){return B}}}}return S}a.extend(this,{get:R,register:k,apply:T,remove:A,toggle:D,match:j,matchAll:v,matchNode:x,canApply:y});function h(W,X){if(g(W,X.inline)){return B}if(g(W,X.block)){return B}if(X.selector){return c.is(W,X.selector)}}function g(X,W){X=X||\"\";W=W||\"\";X=\"\"+(X.nodeName||X);W=\"\"+(W.nodeName||W);return X.toLowerCase()==W.toLowerCase()}function L(X,W){var Y=c.getStyle(X,W);if(W==\"color\"||W==\"backgroundColor\"){Y=c.toHex(Y)}if(W==\"fontWeight\"&&Y==700){Y=\"bold\"}return\"\"+Y}function r(W,X){if(typeof(W)!=\"string\"){W=W(X)}else{if(X){W=W.replace(/%(\\w+)/g,function(Z,Y){return X[Y]||Z})}}return W}function f(W){return W&&W.nodeType===3&&/^([\\s\\r\\n]+|)$/.test(W.nodeValue)}function N(Y,X,W){var Z=c.create(X,W);Y.parentNode.insertBefore(Z,Y);Z.appendChild(Y);return Z}function o(W,ag,Z){var Y=W.startContainer,ad=W.startOffset,aj=W.endContainer,ae=W.endOffset,ai,af,ac;function ah(am,an,ak,al){var ao,ap;al=al||c.getRoot();for(;;){ao=am.parentNode;if(ao==al||(!ag[0].block_expand&&F(ao))){return am}for(ai=ao[an];ai&&ai!=am;ai=ai[ak]){if(ai.nodeType==1&&!H(ai)){return am}if(ai.nodeType==3&&!f(ai)){return am}}am=am.parentNode}return am}function ab(ak,al){if(al===p){al=ak.nodeType===3?ak.length:ak.childNodes.length}while(ak&&ak.hasChildNodes()){ak=ak.childNodes[al];if(ak){al=ak.nodeType===3?ak.length:ak.childNodes.length}}return{node:ak,offset:al}}if(Y.nodeType==1&&Y.hasChildNodes()){af=Y.childNodes.length-1;Y=Y.childNodes[ad>af?af:ad];if(Y.nodeType==3){ad=0}}if(aj.nodeType==1&&aj.hasChildNodes()){af=aj.childNodes.length-1;aj=aj.childNodes[ae>af?af:ae-1];if(aj.nodeType==3){ae=aj.nodeValue.length}}if(H(Y.parentNode)){Y=Y.parentNode}if(H(Y)){Y=Y.nextSibling||Y}if(H(aj.parentNode)){ae=c.nodeIndex(aj);aj=aj.parentNode}if(H(aj)&&aj.previousSibling){aj=aj.previousSibling;ae=aj.length}if(ag[0].inline){ac=ab(aj,ae);if(ac.node){while(ac.node&&ac.offset===0&&ac.node.previousSibling){ac=ab(ac.node.previousSibling)}if(ac.node&&ac.offset>0&&ac.node.nodeType===3&&ac.node.nodeValue.charAt(ac.offset-1)===\" \"){if(ac.offset>1){aj=ac.node;aj.splitText(ac.offset-1)}else{if(ac.node.previousSibling){aj=ac.node.previousSibling}}}}}if(ag[0].inline||ag[0].block_expand){Y=ah(Y,\"firstChild\",\"nextSibling\");aj=ah(aj,\"lastChild\",\"previousSibling\")}if(ag[0].selector&&ag[0].expand!==S&&!ag[0].inline){function aa(al,ak){var am,an,ap,ao;if(al.nodeType==3&&al.nodeValue.length==0&&al[ak]){al=al[ak]}am=m(al);for(an=0;an<am.length;an++){for(ap=0;ap<ag.length;ap++){ao=ag[ap];if(\"collapsed\" in ao&&ao.collapsed!==W.collapsed){continue}if(c.is(am[an],ao.selector)){return am[an]}}}return al}Y=aa(Y,\"previousSibling\");aj=aa(aj,\"nextSibling\")}if(ag[0].block||ag[0].selector){function X(al,ak,an){var am;if(!ag[0].wrapper){am=c.getParent(al,ag[0].block)}if(!am){am=c.getParent(al.nodeType==3?al.parentNode:al,F)}if(am&&ag[0].wrapper){am=m(am,\"ul,ol\").reverse()[0]||am}if(!am){am=al;while(am[ak]&&!F(am[ak])){am=am[ak];if(g(am,\"br\")){break}}}return am||al}Y=X(Y,\"previousSibling\");aj=X(aj,\"nextSibling\");if(ag[0].block){if(!F(Y)){Y=ah(Y,\"firstChild\",\"nextSibling\")}if(!F(aj)){aj=ah(aj,\"lastChild\",\"previousSibling\")}}}if(Y.nodeType==1){ad=s(Y);Y=Y.parentNode}if(aj.nodeType==1){ae=s(aj)+1;aj=aj.parentNode}return{startContainer:Y,startOffset:ad,endContainer:aj,endOffset:ae}}function U(ac,ab,Z,W){var Y,X,aa;if(!h(Z,ac)){return S}if(ac.remove!=\"all\"){O(ac.styles,function(ae,ad){ae=r(ae,ab);if(typeof(ad)===\"number\"){ad=ae;W=0}if(!W||g(L(W,ad),ae)){c.setStyle(Z,ad,\"\")}aa=1});if(aa&&c.getAttrib(Z,\"style\")==\"\"){Z.removeAttribute(\"style\");Z.removeAttribute(\"data-mce-style\")}O(ac.attributes,function(af,ad){var ae;af=r(af,ab);if(typeof(ad)===\"number\"){ad=af;W=0}if(!W||g(c.getAttrib(W,ad),af)){if(ad==\"class\"){af=c.getAttrib(Z,ad);if(af){ae=\"\";O(af.split(/\\s+/),function(ag){if(/mce\\w+/.test(ag)){ae+=(ae?\" \":\"\")+ag}});if(ae){c.setAttrib(Z,ad,ae);return}}}if(ad==\"class\"){Z.removeAttribute(\"className\")}if(e.test(ad)){Z.removeAttribute(\"data-mce-\"+ad)}Z.removeAttribute(ad)}});O(ac.classes,function(ad){ad=r(ad,ab);if(!W||c.hasClass(W,ad)){c.removeClass(Z,ad)}});X=c.getAttribs(Z);for(Y=0;Y<X.length;Y++){if(X[Y].nodeName.indexOf(\"_\")!==0){return S}}}if(ac.remove!=\"none\"){n(Z,ac);return B}}function n(Y,Z){var W=Y.parentNode,X;if(Z.block){if(!l){function aa(ac,ab,ad){ac=C(ac,ab,ad);return !ac||(ac.nodeName==\"BR\"||F(ac))}if(F(Y)&&!F(W)){if(!aa(Y,S)&&!aa(Y.firstChild,B,1)){Y.insertBefore(c.create(\"br\"),Y.firstChild)}if(!aa(Y,B)&&!aa(Y.lastChild,S,1)){Y.appendChild(c.create(\"br\"))}}}else{if(W==c.getRoot()){if(!Z.list_block||!g(Y,Z.list_block)){O(a.grep(Y.childNodes),function(ab){if(d(l,ab.nodeName.toLowerCase())){if(!X){X=N(ab,l)}else{X.appendChild(ab)}}else{X=0}})}}}}if(Z.selector&&Z.inline&&!g(Z.inline,Y)){return}c.remove(Y,1)}function C(X,W,Y){if(X){W=W?\"nextSibling\":\"previousSibling\";for(X=Y?X:X[W];X;X=X[W]){if(X.nodeType==1||!f(X)){return X}}}}function H(W){return W&&W.nodeType==1&&W.getAttribute(\"data-mce-type\")==\"bookmark\"}function u(aa,Z){var W,Y,X;function ac(af,ae){if(af.nodeName!=ae.nodeName){return S}function ad(ah){var ai={};O(c.getAttribs(ah),function(aj){var ak=aj.nodeName.toLowerCase();if(ak.indexOf(\"_\")!==0&&ak!==\"style\"){ai[ak]=c.getAttrib(ah,ak)}});return ai}function ag(ak,aj){var ai,ah;for(ah in ak){if(ak.hasOwnProperty(ah)){ai=aj[ah];if(ai===p){return S}if(ak[ah]!=ai){return S}delete aj[ah]}}for(ah in aj){if(aj.hasOwnProperty(ah)){return S}}return B}if(!ag(ad(af),ad(ae))){return S}if(!ag(c.parseStyle(c.getAttrib(af,\"style\")),c.parseStyle(c.getAttrib(ae,\"style\")))){return S}return B}if(aa&&Z){function ab(ae,ad){for(Y=ae;Y;Y=Y[ad]){if(Y.nodeType==3&&Y.nodeValue.length!==0){return ae}if(Y.nodeType==1&&!H(Y)){return Y}}return ae}aa=ab(aa,\"previousSibling\");Z=ab(Z,\"nextSibling\");if(ac(aa,Z)){for(Y=aa.nextSibling;Y&&Y!=Z;){X=Y;Y=Y.nextSibling;aa.appendChild(X)}c.remove(Z);O(a.grep(Z.childNodes),function(ad){aa.appendChild(ad)});return aa}}return Z}function G(W){return/^(h[1-6]|p|div|pre|address|dl|dt|dd)$/.test(W)}function J(X,aa){var W,Z,Y;W=X[aa?\"startContainer\":\"endContainer\"];Z=X[aa?\"startOffset\":\"endOffset\"];if(W.nodeType==1){Y=W.childNodes.length-1;if(!aa&&Z){Z--}W=W.childNodes[Z>Y?Y:Z]}return W}function Q(ad,Y,ac){var aa,X=P[ad],ae=P[ad==\"apply\"?\"remove\":\"apply\"];function af(){return P.apply.length||P.remove.length}function ab(){P.apply=[];P.remove=[]}function ag(ah){O(P.apply.reverse(),function(ai){T(ai.name,ai.vars,ah);if(ai.name===\"forecolor\"&&ai.vars.value){I(ah.parentNode)}});O(P.remove.reverse(),function(ai){A(ai.name,ai.vars,ah)});c.remove(ah,1);ab()}for(aa=X.length-1;aa>=0;aa--){if(X[aa].name==Y){return}}X.push({name:Y,vars:ac});for(aa=ae.length-1;aa>=0;aa--){if(ae[aa].name==Y){ae.splice(aa,1)}}if(af()){V.getDoc().execCommand(\"FontName\",false,\"mceinline\");P.lastRng=q.getRng();O(c.select(\"font,span\"),function(ai){var ah;if(b(ai)){ah=q.getBookmark();ag(ai);q.moveToBookmark(ah);V.nodeChanged()}});if(!P.isListening&&af()){P.isListening=true;function W(ai,aj){var ah=c.createRng();ag(ai);ah.setStart(aj,aj.nodeValue.length);ah.setEnd(aj,aj.nodeValue.length);q.setRng(ah);V.nodeChanged()}var Z=false;O(\"onKeyDown,onKeyUp,onKeyPress,onMouseUp\".split(\",\"),function(ah){V[ah].addToTop(function(ai,al){if(al.keyCode==13&&!al.shiftKey){Z=true;return}if(af()&&!a.dom.RangeUtils.compareRanges(P.lastRng,q.getRng())){var aj=false;O(c.select(\"font,span\"),function(ao){var ap,an;if(b(ao)){aj=true;ap=ao.firstChild;while(ap&&ap.nodeType!=3){ap=ap.firstChild}if(ap){W(ao,ap)}else{c.remove(ao)}}});if(Z&&!aj){var ak=q.getNode();var am=ak;while(am&&am.nodeType!=3){am=am.firstChild}if(am){ak=am.parentNode;while(!F(ak)){ak=ak.parentNode}W(ak,am)}}if(al.type==\"keyup\"||al.type==\"mouseup\"){ab();Z=false}}})})}}}}})(tinymce);tinymce.onAddEditor.add(function(e,a){var d,h,g,c=a.settings;if(c.inline_styles){h=e.explode(c.font_size_style_values);function b(j,i){e.each(i,function(l,k){if(l){g.setStyle(j,k,l)}});g.rename(j,\"span\")}d={font:function(j,i){b(i,{backgroundColor:i.style.backgroundColor,color:i.color,fontFamily:i.face,fontSize:h[parseInt(i.size)-1]})},u:function(j,i){b(i,{textDecoration:\"underline\"})},strike:function(j,i){b(i,{textDecoration:\"line-through\"})}};function f(i,j){g=i.dom;if(c.convert_fonts_to_spans){e.each(g.select(\"font,u,strike\",j.node),function(k){d[k.nodeName.toLowerCase()](a.dom,k)})}}a.onPreProcess.add(f);a.onSetContent.add(f);a.onInit.add(function(){a.selection.onSetContent.add(f)})}});"
  },
  {
    "path": "newscoop/js/tinymce/tiny_mce_popup.js",
    "content": "\n// Uncomment and change this document.domain value if you are loading the script cross subdomains\n// document.domain = 'moxiecode.com';\n\nvar tinymce=null,tinyMCEPopup,tinyMCE;tinyMCEPopup={init:function(){var b=this,a,c;a=b.getWin();tinymce=a.tinymce;tinyMCE=a.tinyMCE;b.editor=tinymce.EditorManager.activeEditor;b.params=b.editor.windowManager.params;b.features=b.editor.windowManager.features;b.dom=b.editor.windowManager.createInstance(\"tinymce.dom.DOMUtils\",document);if(b.features.popup_css!==false){b.dom.loadCSS(b.features.popup_css||b.editor.settings.popup_css)}b.listeners=[];b.onInit={add:function(e,d){b.listeners.push({func:e,scope:d})}};b.isWindow=!b.getWindowArg(\"mce_inline\");b.id=b.getWindowArg(\"mce_window_id\");b.editor.windowManager.onOpen.dispatch(b.editor.windowManager,window)},getWin:function(){return(!window.frameElement&&window.dialogArguments)||opener||parent||top},getWindowArg:function(c,b){var a=this.params[c];return tinymce.is(a)?a:b},getParam:function(b,a){return this.editor.getParam(b,a)},getLang:function(b,a){return this.editor.getLang(b,a)},execCommand:function(d,c,e,b){b=b||{};b.skip_focus=1;this.restoreSelection();return this.editor.execCommand(d,c,e,b)},resizeToInnerSize:function(){var a=this;setTimeout(function(){var b=a.dom.getViewPort(window);a.editor.windowManager.resizeBy(a.getWindowArg(\"mce_width\")-b.w,a.getWindowArg(\"mce_height\")-b.h,a.id||window)},10)},executeOnLoad:function(s){this.onInit.add(function(){eval(s)})},storeSelection:function(){this.editor.windowManager.bookmark=tinyMCEPopup.editor.selection.getBookmark(1)},restoreSelection:function(){var a=tinyMCEPopup;if(!a.isWindow&&tinymce.isIE){a.editor.selection.moveToBookmark(a.editor.windowManager.bookmark)}},requireLangPack:function(){var b=this,a=b.getWindowArg(\"plugin_url\")||b.getWindowArg(\"theme_url\");if(a&&b.editor.settings.language&&b.features.translate_i18n!==false&&b.editor.settings.language_load!==false){a+=\"/langs/\"+b.editor.settings.language+\"_dlg.js\";if(!tinymce.ScriptLoader.isDone(a)){document.write('<script type=\"text/javascript\" src=\"'+tinymce._addVer(a)+'\"><\\/script>');tinymce.ScriptLoader.markDone(a)}}},pickColor:function(b,a){this.execCommand(\"mceColorPicker\",true,{color:document.getElementById(a).value,func:function(e){document.getElementById(a).value=e;try{document.getElementById(a).onchange()}catch(d){}}})},openBrowser:function(a,c,b){tinyMCEPopup.restoreSelection();this.editor.execCallback(\"file_browser_callback\",a,document.getElementById(a).value,c,window)},confirm:function(b,a,c){this.editor.windowManager.confirm(b,a,c,window)},alert:function(b,a,c){this.editor.windowManager.alert(b,a,c,window)},close:function(){var a=this;function b(){a.editor.windowManager.close(window);tinymce=tinyMCE=a.editor=a.params=a.dom=a.dom.doc=null}if(tinymce.isOpera){a.getWin().setTimeout(b,0)}else{b()}},_restoreSelection:function(){var a=window.event.srcElement;if(a.nodeName==\"INPUT\"&&(a.type==\"submit\"||a.type==\"button\")){tinyMCEPopup.restoreSelection()}},_onDOMLoaded:function(){var b=tinyMCEPopup,d=document.title,e,c,a;if(b.domLoaded){return}b.domLoaded=1;if(b.features.translate_i18n!==false){c=document.body.innerHTML;if(tinymce.isIE){c=c.replace(/ (value|title|alt)=([^\"][^\\s>]+)/gi,' $1=\"$2\"')}document.dir=b.editor.getParam(\"directionality\",\"\");if((a=b.editor.translate(c))&&a!=c){document.body.innerHTML=a}if((a=b.editor.translate(d))&&a!=d){document.title=d=a}}if(!b.editor.getParam(\"browser_preferred_colors\",false)||!b.isWindow){b.dom.addClass(document.body,\"forceColors\")}document.body.style.display=\"\";if(tinymce.isIE){document.attachEvent(\"onmouseup\",tinyMCEPopup._restoreSelection);b.dom.add(b.dom.select(\"head\")[0],\"base\",{target:\"_self\"})}b.restoreSelection();b.resizeToInnerSize();if(!b.isWindow){b.editor.windowManager.setTitle(window,d)}else{window.focus()}if(!tinymce.isIE&&!b.isWindow){tinymce.dom.Event._add(document,\"focus\",function(){b.editor.windowManager.focus(b.id)})}tinymce.each(b.dom.select(\"select\"),function(f){f.onkeydown=tinyMCEPopup._accessHandler});tinymce.each(b.listeners,function(f){f.func.call(f.scope,b.editor)});if(b.getWindowArg(\"mce_auto_focus\",true)){window.focus();tinymce.each(document.forms,function(g){tinymce.each(g.elements,function(f){if(b.dom.hasClass(f,\"mceFocus\")&&!f.disabled){f.focus();return false}})})}document.onkeyup=tinyMCEPopup._closeWinKeyHandler},_accessHandler:function(a){a=a||window.event;if(a.keyCode==13||a.keyCode==32){a=a.target||a.srcElement;if(a.onchange){a.onchange()}return tinymce.dom.Event.cancel(a)}},_closeWinKeyHandler:function(a){a=a||window.event;if(a.keyCode==27){tinyMCEPopup.close()}},_wait:function(){if(document.attachEvent){document.attachEvent(\"onreadystatechange\",function(){if(document.readyState===\"complete\"){document.detachEvent(\"onreadystatechange\",arguments.callee);tinyMCEPopup._onDOMLoaded()}});if(document.documentElement.doScroll&&window==window.top){(function(){if(tinyMCEPopup.domLoaded){return}try{document.documentElement.doScroll(\"left\")}catch(a){setTimeout(arguments.callee,0);return}tinyMCEPopup._onDOMLoaded()})()}document.attachEvent(\"onload\",tinyMCEPopup._onDOMLoaded)}else{if(document.addEventListener){window.addEventListener(\"DOMContentLoaded\",tinyMCEPopup._onDOMLoaded,false);window.addEventListener(\"load\",tinyMCEPopup._onDOMLoaded,false)}}}};tinyMCEPopup.init();tinyMCEPopup._wait();"
  },
  {
    "path": "newscoop/js/tinymce/tiny_mce_src.js",
    "content": "(function(win) {\r\n\tvar whiteSpaceRe = /^\\s*|\\s*$/g,\r\n\t\tundefined, isRegExpBroken = 'B'.replace(/A(.)|B/, '$1') === '$1';\r\n\r\n\tvar tinymce = {\r\n\t\tmajorVersion : '3',\r\n\r\n\t\tminorVersion : '4.6',\r\n\r\n\t\treleaseDate : '2011-09-29',\r\n\r\n\t\t_init : function() {\r\n\t\t\tvar t = this, d = document, na = navigator, ua = na.userAgent, i, nl, n, base, p, v;\r\n\r\n\t\t\tt.isOpera = win.opera && opera.buildNumber;\r\n\r\n\t\t\tt.isWebKit = /WebKit/.test(ua);\r\n\r\n\t\t\tt.isIE = !t.isWebKit && !t.isOpera && (/MSIE/gi).test(ua) && (/Explorer/gi).test(na.appName);\r\n\r\n\t\t\tt.isIE6 = t.isIE && /MSIE [56]/.test(ua);\r\n\r\n\t\t\tt.isIE7 = t.isIE && /MSIE [7]/.test(ua);\r\n\r\n\t\t\tt.isIE8 = t.isIE && /MSIE [8]/.test(ua);\r\n\r\n\t\t\tt.isIE9 = t.isIE && /MSIE [9]/.test(ua);\r\n\r\n\t\t\tt.isGecko = !t.isWebKit && /Gecko/.test(ua);\r\n\r\n\t\t\tt.isMac = ua.indexOf('Mac') != -1;\r\n\r\n\t\t\tt.isAir = /adobeair/i.test(ua);\r\n\r\n\t\t\tt.isIDevice = /(iPad|iPhone)/.test(ua);\r\n\t\t\t\r\n\t\t\tt.isIOS5 = t.isIDevice && ua.match(/AppleWebKit\\/(\\d*)/)[1]>=534;\r\n\r\n\t\t\t// TinyMCE .NET webcontrol might be setting the values for TinyMCE\r\n\t\t\tif (win.tinyMCEPreInit) {\r\n\t\t\t\tt.suffix = tinyMCEPreInit.suffix;\r\n\t\t\t\tt.baseURL = tinyMCEPreInit.base;\r\n\t\t\t\tt.query = tinyMCEPreInit.query;\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\t// Get suffix and base\r\n\t\t\tt.suffix = '';\r\n\r\n\t\t\t// If base element found, add that infront of baseURL\r\n\t\t\tnl = d.getElementsByTagName('base');\r\n\t\t\tfor (i=0; i<nl.length; i++) {\r\n\t\t\t\tif (v = nl[i].href) {\r\n\t\t\t\t\t// Host only value like http://site.com or http://site.com:8008\r\n\t\t\t\t\tif (/^https?:\\/\\/[^\\/]+$/.test(v))\r\n\t\t\t\t\t\tv += '/';\r\n\r\n\t\t\t\t\tbase = v ? v.match(/.*\\//)[0] : ''; // Get only directory\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tfunction getBase(n) {\r\n\t\t\t\tif (n.src && /tiny_mce(|_gzip|_jquery|_prototype|_full)(_dev|_src)?.js/.test(n.src)) {\r\n\t\t\t\t\tif (/_(src|dev)\\.js/g.test(n.src))\r\n\t\t\t\t\t\tt.suffix = '_src';\r\n\r\n\t\t\t\t\tif ((p = n.src.indexOf('?')) != -1)\r\n\t\t\t\t\t\tt.query = n.src.substring(p + 1);\r\n\r\n\t\t\t\t\tt.baseURL = n.src.substring(0, n.src.lastIndexOf('/'));\r\n\r\n\t\t\t\t\t// If path to script is relative and a base href was found add that one infront\r\n\t\t\t\t\t// the src property will always be an absolute one on non IE browsers and IE 8\r\n\t\t\t\t\t// so this logic will basically only be executed on older IE versions\r\n\t\t\t\t\tif (base && t.baseURL.indexOf('://') == -1 && t.baseURL.indexOf('/') !== 0)\r\n\t\t\t\t\t\tt.baseURL = base + t.baseURL;\r\n\r\n\t\t\t\t\treturn t.baseURL;\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn null;\r\n\t\t\t};\r\n\r\n\t\t\t// Check document\r\n\t\t\tnl = d.getElementsByTagName('script');\r\n\t\t\tfor (i=0; i<nl.length; i++) {\r\n\t\t\t\tif (getBase(nl[i]))\r\n\t\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\t// Check head\r\n\t\t\tn = d.getElementsByTagName('head')[0];\r\n\t\t\tif (n) {\r\n\t\t\t\tnl = n.getElementsByTagName('script');\r\n\t\t\t\tfor (i=0; i<nl.length; i++) {\r\n\t\t\t\t\tif (getBase(nl[i]))\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\treturn;\r\n\t\t},\r\n\r\n\t\tis : function(o, t) {\r\n\t\t\tif (!t)\r\n\t\t\t\treturn o !== undefined;\r\n\r\n\t\t\tif (t == 'array' && (o.hasOwnProperty && o instanceof Array))\r\n\t\t\t\treturn true;\r\n\r\n\t\t\treturn typeof(o) == t;\r\n\t\t},\r\n\r\n\t\tmakeMap : function(items, delim, map) {\r\n\t\t\tvar i;\r\n\r\n\t\t\titems = items || [];\r\n\t\t\tdelim = delim || ',';\r\n\r\n\t\t\tif (typeof(items) == \"string\")\r\n\t\t\t\titems = items.split(delim);\r\n\r\n\t\t\tmap = map || {};\r\n\r\n\t\t\ti = items.length;\r\n\t\t\twhile (i--)\r\n\t\t\t\tmap[items[i]] = {};\r\n\r\n\t\t\treturn map;\r\n\t\t},\r\n\r\n\t\teach : function(o, cb, s) {\r\n\t\t\tvar n, l;\r\n\r\n\t\t\tif (!o)\r\n\t\t\t\treturn 0;\r\n\r\n\t\t\ts = s || o;\r\n\r\n\t\t\tif (o.length !== undefined) {\r\n\t\t\t\t// Indexed arrays, needed for Safari\r\n\t\t\t\tfor (n=0, l = o.length; n < l; n++) {\r\n\t\t\t\t\tif (cb.call(s, o[n], n, o) === false)\r\n\t\t\t\t\t\treturn 0;\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\t// Hashtables\r\n\t\t\t\tfor (n in o) {\r\n\t\t\t\t\tif (o.hasOwnProperty(n)) {\r\n\t\t\t\t\t\tif (cb.call(s, o[n], n, o) === false)\r\n\t\t\t\t\t\t\treturn 0;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\treturn 1;\r\n\t\t},\r\n\r\n\r\n\t\ttrim : function(s) {\r\n\t\t\treturn (s ? '' + s : '').replace(whiteSpaceRe, '');\r\n\t\t},\r\n\r\n\t\tcreate : function(s, p, root) {\r\n\t\t\tvar t = this, sp, ns, cn, scn, c, de = 0;\r\n\r\n\t\t\t// Parse : <prefix> <class>:<super class>\r\n\t\t\ts = /^((static) )?([\\w.]+)(:([\\w.]+))?/.exec(s);\r\n\t\t\tcn = s[3].match(/(^|\\.)(\\w+)$/i)[2]; // Class name\r\n\r\n\t\t\t// Create namespace for new class\r\n\t\t\tns = t.createNS(s[3].replace(/\\.\\w+$/, ''), root);\r\n\r\n\t\t\t// Class already exists\r\n\t\t\tif (ns[cn])\r\n\t\t\t\treturn;\r\n\r\n\t\t\t// Make pure static class\r\n\t\t\tif (s[2] == 'static') {\r\n\t\t\t\tns[cn] = p;\r\n\r\n\t\t\t\tif (this.onCreate)\r\n\t\t\t\t\tthis.onCreate(s[2], s[3], ns[cn]);\r\n\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\t// Create default constructor\r\n\t\t\tif (!p[cn]) {\r\n\t\t\t\tp[cn] = function() {};\r\n\t\t\t\tde = 1;\r\n\t\t\t}\r\n\r\n\t\t\t// Add constructor and methods\r\n\t\t\tns[cn] = p[cn];\r\n\t\t\tt.extend(ns[cn].prototype, p);\r\n\r\n\t\t\t// Extend\r\n\t\t\tif (s[5]) {\r\n\t\t\t\tsp = t.resolve(s[5]).prototype;\r\n\t\t\t\tscn = s[5].match(/\\.(\\w+)$/i)[1]; // Class name\r\n\r\n\t\t\t\t// Extend constructor\r\n\t\t\t\tc = ns[cn];\r\n\t\t\t\tif (de) {\r\n\t\t\t\t\t// Add passthrough constructor\r\n\t\t\t\t\tns[cn] = function() {\r\n\t\t\t\t\t\treturn sp[scn].apply(this, arguments);\r\n\t\t\t\t\t};\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// Add inherit constructor\r\n\t\t\t\t\tns[cn] = function() {\r\n\t\t\t\t\t\tthis.parent = sp[scn];\r\n\t\t\t\t\t\treturn c.apply(this, arguments);\r\n\t\t\t\t\t};\r\n\t\t\t\t}\r\n\t\t\t\tns[cn].prototype[cn] = ns[cn];\r\n\r\n\t\t\t\t// Add super methods\r\n\t\t\t\tt.each(sp, function(f, n) {\r\n\t\t\t\t\tns[cn].prototype[n] = sp[n];\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// Add overridden methods\r\n\t\t\t\tt.each(p, function(f, n) {\r\n\t\t\t\t\t// Extend methods if needed\r\n\t\t\t\t\tif (sp[n]) {\r\n\t\t\t\t\t\tns[cn].prototype[n] = function() {\r\n\t\t\t\t\t\t\tthis.parent = sp[n];\r\n\t\t\t\t\t\t\treturn f.apply(this, arguments);\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tif (n != cn)\r\n\t\t\t\t\t\t\tns[cn].prototype[n] = f;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\t// Add static methods\r\n\t\t\tt.each(p['static'], function(f, n) {\r\n\t\t\t\tns[cn][n] = f;\r\n\t\t\t});\r\n\r\n\t\t\tif (this.onCreate)\r\n\t\t\t\tthis.onCreate(s[2], s[3], ns[cn].prototype);\r\n\t\t},\r\n\r\n\t\twalk : function(o, f, n, s) {\r\n\t\t\ts = s || this;\r\n\r\n\t\t\tif (o) {\r\n\t\t\t\tif (n)\r\n\t\t\t\t\to = o[n];\r\n\r\n\t\t\t\ttinymce.each(o, function(o, i) {\r\n\t\t\t\t\tif (f.call(s, o, i, n) === false)\r\n\t\t\t\t\t\treturn false;\r\n\r\n\t\t\t\t\ttinymce.walk(o, f, n, s);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tcreateNS : function(n, o) {\r\n\t\t\tvar i, v;\r\n\r\n\t\t\to = o || win;\r\n\r\n\t\t\tn = n.split('.');\r\n\t\t\tfor (i=0; i<n.length; i++) {\r\n\t\t\t\tv = n[i];\r\n\r\n\t\t\t\tif (!o[v])\r\n\t\t\t\t\to[v] = {};\r\n\r\n\t\t\t\to = o[v];\r\n\t\t\t}\r\n\r\n\t\t\treturn o;\r\n\t\t},\r\n\r\n\t\tresolve : function(n, o) {\r\n\t\t\tvar i, l;\r\n\r\n\t\t\to = o || win;\r\n\r\n\t\t\tn = n.split('.');\r\n\t\t\tfor (i = 0, l = n.length; i < l; i++) {\r\n\t\t\t\to = o[n[i]];\r\n\r\n\t\t\t\tif (!o)\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\r\n\t\t\treturn o;\r\n\t\t},\r\n\r\n\t\taddUnload : function(f, s) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tf = {func : f, scope : s || this};\r\n\r\n\t\t\tif (!t.unloads) {\r\n\t\t\t\tfunction unload() {\r\n\t\t\t\t\tvar li = t.unloads, o, n;\r\n\r\n\t\t\t\t\tif (li) {\r\n\t\t\t\t\t\t// Call unload handlers\r\n\t\t\t\t\t\tfor (n in li) {\r\n\t\t\t\t\t\t\to = li[n];\r\n\r\n\t\t\t\t\t\t\tif (o && o.func)\r\n\t\t\t\t\t\t\t\to.func.call(o.scope, 1); // Send in one arg to distinct unload and user destroy\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// Detach unload function\r\n\t\t\t\t\t\tif (win.detachEvent) {\r\n\t\t\t\t\t\t\twin.detachEvent('onbeforeunload', fakeUnload);\r\n\t\t\t\t\t\t\twin.detachEvent('onunload', unload);\r\n\t\t\t\t\t\t} else if (win.removeEventListener)\r\n\t\t\t\t\t\t\twin.removeEventListener('unload', unload, false);\r\n\r\n\t\t\t\t\t\t// Destroy references\r\n\t\t\t\t\t\tt.unloads = o = li = w = unload = 0;\r\n\r\n\t\t\t\t\t\t// Run garbarge collector on IE\r\n\t\t\t\t\t\tif (win.CollectGarbage)\r\n\t\t\t\t\t\t\tCollectGarbage();\r\n\t\t\t\t\t}\r\n\t\t\t\t};\r\n\r\n\t\t\t\tfunction fakeUnload() {\r\n\t\t\t\t\tvar d = document;\r\n\r\n\t\t\t\t\t// Is there things still loading, then do some magic\r\n\t\t\t\t\tif (d.readyState == 'interactive') {\r\n\t\t\t\t\t\tfunction stop() {\r\n\t\t\t\t\t\t\t// Prevent memory leak\r\n\t\t\t\t\t\t\td.detachEvent('onstop', stop);\r\n\r\n\t\t\t\t\t\t\t// Call unload handler\r\n\t\t\t\t\t\t\tif (unload)\r\n\t\t\t\t\t\t\t\tunload();\r\n\r\n\t\t\t\t\t\t\td = 0;\r\n\t\t\t\t\t\t};\r\n\r\n\t\t\t\t\t\t// Fire unload when the currently loading page is stopped\r\n\t\t\t\t\t\tif (d)\r\n\t\t\t\t\t\t\td.attachEvent('onstop', stop);\r\n\r\n\t\t\t\t\t\t// Remove onstop listener after a while to prevent the unload function\r\n\t\t\t\t\t\t// to execute if the user presses cancel in an onbeforeunload\r\n\t\t\t\t\t\t// confirm dialog and then presses the browser stop button\r\n\t\t\t\t\t\twin.setTimeout(function() {\r\n\t\t\t\t\t\t\tif (d)\r\n\t\t\t\t\t\t\t\td.detachEvent('onstop', stop);\r\n\t\t\t\t\t\t}, 0);\r\n\t\t\t\t\t}\r\n\t\t\t\t};\r\n\r\n\t\t\t\t// Attach unload handler\r\n\t\t\t\tif (win.attachEvent) {\r\n\t\t\t\t\twin.attachEvent('onunload', unload);\r\n\t\t\t\t\twin.attachEvent('onbeforeunload', fakeUnload);\r\n\t\t\t\t} else if (win.addEventListener)\r\n\t\t\t\t\twin.addEventListener('unload', unload, false);\r\n\r\n\t\t\t\t// Setup initial unload handler array\r\n\t\t\t\tt.unloads = [f];\r\n\t\t\t} else\r\n\t\t\t\tt.unloads.push(f);\r\n\r\n\t\t\treturn f;\r\n\t\t},\r\n\r\n\t\tremoveUnload : function(f) {\r\n\t\t\tvar u = this.unloads, r = null;\r\n\r\n\t\t\ttinymce.each(u, function(o, i) {\r\n\t\t\t\tif (o && o.func == f) {\r\n\t\t\t\t\tu.splice(i, 1);\r\n\t\t\t\t\tr = f;\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\treturn r;\r\n\t\t},\r\n\r\n\t\texplode : function(s, d) {\r\n\t\t\treturn s ? tinymce.map(s.split(d || ','), tinymce.trim) : s;\r\n\t\t},\r\n\r\n\t\t_addVer : function(u) {\r\n\t\t\tvar v;\r\n\r\n\t\t\tif (!this.query)\r\n\t\t\t\treturn u;\r\n\r\n\t\t\tv = (u.indexOf('?') == -1 ? '?' : '&') + this.query;\r\n\r\n\t\t\tif (u.indexOf('#') == -1)\r\n\t\t\t\treturn u + v;\r\n\r\n\t\t\treturn u.replace('#', v + '#');\r\n\t\t},\r\n\r\n\t\t// Fix function for IE 9 where regexps isn't working correctly\r\n\t\t// Todo: remove me once MS fixes the bug\r\n\t\t_replace : function(find, replace, str) {\r\n\t\t\t// On IE9 we have to fake $x replacement\r\n\t\t\tif (isRegExpBroken) {\r\n\t\t\t\treturn str.replace(find, function() {\r\n\t\t\t\t\tvar val = replace, args = arguments, i;\r\n\r\n\t\t\t\t\tfor (i = 0; i < args.length - 2; i++) {\r\n\t\t\t\t\t\tif (args[i] === undefined) {\r\n\t\t\t\t\t\t\tval = val.replace(new RegExp('\\\\$' + i, 'g'), '');\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tval = val.replace(new RegExp('\\\\$' + i, 'g'), args[i]);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\treturn val;\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\treturn str.replace(find, replace);\r\n\t\t}\r\n\r\n\t\t};\r\n\r\n\t// Initialize the API\r\n\ttinymce._init();\r\n\r\n\t// Expose tinymce namespace to the global namespace (window)\r\n\twin.tinymce = win.tinyMCE = tinymce;\r\n\r\n\t// Describe the different namespaces\r\n\r\n\t})(window);\r\n\r\n\r\n(function($, tinymce) {\r\n\tvar is = tinymce.is, attrRegExp = /^(href|src|style)$/i, undefined;\r\n\r\n\t// jQuery is undefined\r\n\tif (!$ && window.console) {\r\n\t\treturn console.log(\"Load jQuery first!\");\r\n\t}\r\n\r\n\t// Stick jQuery into the tinymce namespace\r\n\ttinymce.$ = $;\r\n\r\n\t// Setup adapter\r\n\ttinymce.adapter = {\r\n\t\tpatchEditor : function(editor) {\r\n\t\t\tvar fn = $.fn;\r\n\r\n\t\t\t// Adapt the css function to make sure that the data-mce-style\r\n\t\t\t// attribute gets updated with the new style information\r\n\t\t\tfunction css(name, value) {\r\n\t\t\t\tvar self = this;\r\n\r\n\t\t\t\t// Remove data-mce-style when set operation occurs\r\n\t\t\t\tif (value)\r\n\t\t\t\t\tself.removeAttr('data-mce-style');\r\n\r\n\t\t\t\treturn fn.css.apply(self, arguments);\r\n\t\t\t};\r\n\r\n\t\t\t// Apapt the attr function to make sure that it uses the data-mce- prefixed variants\r\n\t\t\tfunction attr(name, value) {\r\n\t\t\t\tvar self = this;\r\n\r\n\t\t\t\t// Update/retrive data-mce- attribute variants\r\n\t\t\t\tif (attrRegExp.test(name)) {\r\n\t\t\t\t\tif (value !== undefined) {\r\n\t\t\t\t\t\t// Use TinyMCE behavior when setting the specifc attributes\r\n\t\t\t\t\t\tself.each(function(i, node) {\r\n\t\t\t\t\t\t\teditor.dom.setAttrib(node, name, value);\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\treturn self;\r\n\t\t\t\t\t} else\r\n\t\t\t\t\t\treturn self.attr('data-mce-' + name);\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Default behavior\r\n\t\t\t\treturn fn.attr.apply(self, arguments);\r\n\t\t\t};\r\n\r\n\t\t\tfunction htmlPatchFunc(func) {\r\n\t\t\t\t// Returns a modified function that processes\r\n\t\t\t\t// the HTML before executing the action this makes sure\r\n\t\t\t\t// that href/src etc gets moved into the data-mce- variants\r\n\t\t\t\treturn function(content) {\r\n\t\t\t\t\tif (content)\r\n\t\t\t\t\t\tcontent = editor.dom.processHTML(content);\r\n\r\n\t\t\t\t\treturn func.call(this, content);\r\n\t\t\t\t};\r\n\t\t\t};\r\n\r\n\t\t\t// Patch various jQuery functions to handle tinymce specific attribute and content behavior\r\n\t\t\t// we don't patch the jQuery.fn directly since it will most likely break compatibility\r\n\t\t\t// with other jQuery logic on the page. Only instances created by TinyMCE should be patched.\r\n\t\t\tfunction patch(jq) {\r\n\t\t\t\t// Patch some functions, only patch the object once\r\n\t\t\t\tif (jq.css !== css) {\r\n\t\t\t\t\t// Patch css/attr to use the data-mce- prefixed attribute variants\r\n\t\t\t\t\tjq.css = css;\r\n\t\t\t\t\tjq.attr = attr;\r\n\r\n\t\t\t\t\t// Patch HTML functions to use the DOMUtils.processHTML filter logic\r\n\t\t\t\t\tjq.html = htmlPatchFunc(fn.html);\r\n\t\t\t\t\tjq.append = htmlPatchFunc(fn.append);\r\n\t\t\t\t\tjq.prepend = htmlPatchFunc(fn.prepend);\r\n\t\t\t\t\tjq.after = htmlPatchFunc(fn.after);\r\n\t\t\t\t\tjq.before = htmlPatchFunc(fn.before);\r\n\t\t\t\t\tjq.replaceWith = htmlPatchFunc(fn.replaceWith);\r\n\t\t\t\t\tjq.tinymce = editor;\r\n\r\n\t\t\t\t\t// Each pushed jQuery instance needs to be patched\r\n\t\t\t\t\t// as well for example when traversing the DOM\r\n\t\t\t\t\tjq.pushStack = function() {\r\n\t\t\t\t\t\treturn patch(fn.pushStack.apply(this, arguments));\r\n\t\t\t\t\t};\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn jq;\r\n\t\t\t};\r\n\r\n\t\t\t// Add a $ function on each editor instance this one is scoped for the editor document object\r\n\t\t\t// this way you can do chaining like this tinymce.get(0).$('p').append('text').css('color', 'red');\r\n\t\t\teditor.$ = function(selector, scope) {\r\n\t\t\t\tvar doc = editor.getDoc();\r\n\r\n\t\t\t\treturn patch($(selector || doc, doc || scope));\r\n\t\t\t};\r\n\t\t}\r\n\t};\r\n\r\n\t// Patch in core NS functions\r\n\ttinymce.extend = $.extend;\r\n\ttinymce.extend(tinymce, {\r\n\t\tmap : $.map,\r\n\t\tgrep : function(a, f) {return $.grep(a, f || function(){return 1;});},\r\n\t\tinArray : function(a, v) {return $.inArray(v, a || []);}\r\n\r\n\t\t/* Didn't iterate stylesheets\r\n\t\teach : function(o, cb, s) {\r\n\t\t\tif (!o)\r\n\t\t\t\treturn 0;\r\n\r\n\t\t\tvar r = 1;\r\n\r\n\t\t\t$.each(o, function(nr, el){\r\n\t\t\t\tif (cb.call(s, el, nr, o) === false) {\r\n\t\t\t\t\tr = 0;\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\treturn r;\r\n\t\t}*/\r\n\t});\r\n\r\n\t// Patch in functions in various clases\r\n\t// Add a \"#ifndefjquery\" statement around each core API function you add below\r\n\tvar patches = {\r\n\t\t'tinymce.dom.DOMUtils' : {\r\n\t\t\t/*\r\n\t\t\taddClass : function(e, c) {\r\n\t\t\t\tif (is(e, 'array') && is(e[0], 'string'))\r\n\t\t\t\t\te = e.join(',#');\r\n\t\t\t\treturn (e && $(is(e, 'string') ? '#' + e : e)\r\n\t\t\t\t\t.addClass(c)\r\n\t\t\t\t\t.attr('class')) || false;\r\n\t\t\t},\r\n\r\n\t\t\thasClass : function(n, c) {\r\n\t\t\t\treturn $(is(n, 'string') ? '#' + n : n).hasClass(c);\r\n\t\t\t},\r\n\r\n\t\t\tremoveClass : function(e, c) {\r\n\t\t\t\tif (!e)\r\n\t\t\t\t\treturn false;\r\n\r\n\t\t\t\tvar r = [];\r\n\r\n\t\t\t\t$(is(e, 'string') ? '#' + e : e)\r\n\t\t\t\t\t.removeClass(c)\r\n\t\t\t\t\t.each(function(){\r\n\t\t\t\t\t\tr.push(this.className);\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\treturn r.length == 1 ? r[0] : r;\r\n\t\t\t},\r\n\t\t\t*/\r\n\r\n\t\t\tselect : function(pattern, scope) {\r\n\t\t\t\tvar t = this;\r\n\r\n\t\t\t\treturn $.find(pattern, t.get(scope) || t.get(t.settings.root_element) || t.doc, []);\r\n\t\t\t},\r\n\r\n\t\t\tis : function(n, patt) {\r\n\t\t\t\treturn $(this.get(n)).is(patt);\r\n\t\t\t}\r\n\r\n\t\t\t/*\r\n\t\t\tshow : function(e) {\r\n\t\t\t\tif (is(e, 'array') && is(e[0], 'string'))\r\n\t\t\t\t\te = e.join(',#');\r\n\r\n\t\t\t\t$(is(e, 'string') ? '#' + e : e).css('display', 'block');\r\n\t\t\t},\r\n\r\n\t\t\thide : function(e) {\r\n\t\t\t\tif (is(e, 'array') && is(e[0], 'string'))\r\n\t\t\t\t\te = e.join(',#');\r\n\r\n\t\t\t\t$(is(e, 'string') ? '#' + e : e).css('display', 'none');\r\n\t\t\t},\r\n\r\n\t\t\tisHidden : function(e) {\r\n\t\t\t\treturn $(is(e, 'string') ? '#' + e : e).is(':hidden');\r\n\t\t\t},\r\n\r\n\t\t\tinsertAfter : function(n, e) {\r\n\t\t\t\treturn $(is(e, 'string') ? '#' + e : e).after(n);\r\n\t\t\t},\r\n\r\n\t\t\treplace : function(o, n, k) {\r\n\t\t\t\tn = $(is(n, 'string') ? '#' + n : n);\r\n\r\n\t\t\t\tif (k)\r\n\t\t\t\t\tn.children().appendTo(o);\r\n\r\n\t\t\t\tn.replaceWith(o);\r\n\t\t\t},\r\n\r\n\t\t\tsetStyle : function(n, na, v) {\r\n\t\t\t\tif (is(n, 'array') && is(n[0], 'string'))\r\n\t\t\t\t\tn = n.join(',#');\r\n\r\n\t\t\t\t$(is(n, 'string') ? '#' + n : n).css(na, v);\r\n\t\t\t},\r\n\r\n\t\t\tgetStyle : function(n, na, c) {\r\n\t\t\t\treturn $(is(n, 'string') ? '#' + n : n).css(na);\r\n\t\t\t},\r\n\r\n\t\t\tsetStyles : function(e, o) {\r\n\t\t\t\tif (is(e, 'array') && is(e[0], 'string'))\r\n\t\t\t\t\te = e.join(',#');\r\n\t\t\t\t$(is(e, 'string') ? '#' + e : e).css(o);\r\n\t\t\t},\r\n\r\n\t\t\tsetAttrib : function(e, n, v) {\r\n\t\t\t\tvar t = this, s = t.settings;\r\n\r\n\t\t\t\tif (is(e, 'array') && is(e[0], 'string'))\r\n\t\t\t\t\te = e.join(',#');\r\n\r\n\t\t\t\te = $(is(e, 'string') ? '#' + e : e);\r\n\r\n\t\t\t\tswitch (n) {\r\n\t\t\t\t\tcase \"style\":\r\n\t\t\t\t\t\te.each(function(i, v){\r\n\t\t\t\t\t\t\tif (s.keep_values)\r\n\t\t\t\t\t\t\t\t$(v).attr('data-mce-style', v);\r\n\r\n\t\t\t\t\t\t\tv.style.cssText = v;\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase \"class\":\r\n\t\t\t\t\t\te.each(function(){\r\n\t\t\t\t\t\t\tthis.className = v;\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase \"src\":\r\n\t\t\t\t\tcase \"href\":\r\n\t\t\t\t\t\te.each(function(i, v){\r\n\t\t\t\t\t\t\tif (s.keep_values) {\r\n\t\t\t\t\t\t\t\tif (s.url_converter)\r\n\t\t\t\t\t\t\t\t\tv = s.url_converter.call(s.url_converter_scope || t, v, n, v);\r\n\r\n\t\t\t\t\t\t\t\tt.setAttrib(v, 'data-mce-' + n, v);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (v !== null && v.length !== 0)\r\n\t\t\t\t\te.attr(n, '' + v);\r\n\t\t\t\telse\r\n\t\t\t\t\te.removeAttr(n);\r\n\t\t\t},\r\n\r\n\t\t\tsetAttribs : function(e, o) {\r\n\t\t\t\tvar t = this;\r\n\r\n\t\t\t\t$.each(o, function(n, v){\r\n\t\t\t\t\tt.setAttrib(e,n,v);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\t*/\r\n\t\t}\r\n\r\n/*\r\n\t\t'tinymce.dom.Event' : {\r\n\t\t\tadd : function (o, n, f, s) {\r\n\t\t\t\tvar lo, cb;\r\n\r\n\t\t\t\tcb = function(e) {\r\n\t\t\t\t\te.target = e.target || this;\r\n\t\t\t\t\tf.call(s || this, e);\r\n\t\t\t\t};\r\n\r\n\t\t\t\tif (is(o, 'array') && is(o[0], 'string'))\r\n\t\t\t\t\to = o.join(',#');\r\n\t\t\t\to = $(is(o, 'string') ? '#' + o : o);\r\n\t\t\t\tif (n == 'init') {\r\n\t\t\t\t\to.ready(cb, s);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (s) {\r\n\t\t\t\t\t\to.bind(n, s, cb);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\to.bind(n, cb);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tlo = this._jqLookup || (this._jqLookup = []);\r\n\t\t\t\tlo.push({func : f, cfunc : cb});\r\n\r\n\t\t\t\treturn cb;\r\n\t\t\t},\r\n\r\n\t\t\tremove : function(o, n, f) {\r\n\t\t\t\t// Find cfunc\r\n\t\t\t\t$(this._jqLookup).each(function() {\r\n\t\t\t\t\tif (this.func === f)\r\n\t\t\t\t\t\tf = this.cfunc;\r\n\t\t\t\t});\r\n\r\n\t\t\t\tif (is(o, 'array') && is(o[0], 'string'))\r\n\t\t\t\t\to = o.join(',#');\r\n\r\n\t\t\t\t$(is(o, 'string') ? '#' + o : o).unbind(n,f);\r\n\r\n\t\t\t\treturn true;\r\n\t\t\t}\r\n\t\t}\r\n*/\r\n\t};\r\n\r\n\t// Patch functions after a class is created\r\n\ttinymce.onCreate = function(ty, c, p) {\r\n\t\ttinymce.extend(p, patches[c]);\r\n\t};\r\n})(window.jQuery, tinymce);\r\n\r\n\r\n\r\ntinymce.create('tinymce.util.Dispatcher', {\r\n\tscope : null,\r\n\tlisteners : null,\r\n\r\n\tDispatcher : function(s) {\r\n\t\tthis.scope = s || this;\r\n\t\tthis.listeners = [];\r\n\t},\r\n\r\n\tadd : function(cb, s) {\r\n\t\tthis.listeners.push({cb : cb, scope : s || this.scope});\r\n\r\n\t\treturn cb;\r\n\t},\r\n\r\n\taddToTop : function(cb, s) {\r\n\t\tthis.listeners.unshift({cb : cb, scope : s || this.scope});\r\n\r\n\t\treturn cb;\r\n\t},\r\n\r\n\tremove : function(cb) {\r\n\t\tvar l = this.listeners, o = null;\r\n\r\n\t\ttinymce.each(l, function(c, i) {\r\n\t\t\tif (cb == c.cb) {\r\n\t\t\t\to = cb;\r\n\t\t\t\tl.splice(i, 1);\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\treturn o;\r\n\t},\r\n\r\n\tdispatch : function() {\r\n\t\tvar s, a = arguments, i, li = this.listeners, c;\r\n\r\n\t\t// Needs to be a real loop since the listener count might change while looping\r\n\t\t// And this is also more efficient\r\n\t\tfor (i = 0; i<li.length; i++) {\r\n\t\t\tc = li[i];\r\n\t\t\ts = c.cb.apply(c.scope, a);\r\n\r\n\t\t\tif (s === false)\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\r\n\t\treturn s;\r\n\t}\r\n\r\n\t});\r\n\r\n(function() {\r\n\tvar each = tinymce.each;\r\n\r\n\ttinymce.create('tinymce.util.URI', {\r\n\t\tURI : function(u, s) {\r\n\t\t\tvar t = this, o, a, b, base_url;\r\n\r\n\t\t\t// Trim whitespace\r\n\t\t\tu = tinymce.trim(u);\r\n\r\n\t\t\t// Default settings\r\n\t\t\ts = t.settings = s || {};\r\n\r\n\t\t\t// Strange app protocol that isn't http/https or local anchor\r\n\t\t\t// For example: mailto,skype,tel etc.\r\n\t\t\tif (/^([\\w\\-]+):([^\\/]{2})/i.test(u) || /^\\s*#/.test(u)) {\r\n\t\t\t\tt.source = u;\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\t// Absolute path with no host, fake host and protocol\r\n\t\t\tif (u.indexOf('/') === 0 && u.indexOf('//') !== 0)\r\n\t\t\t\tu = (s.base_uri ? s.base_uri.protocol || 'http' : 'http') + '://mce_host' + u;\r\n\r\n\t\t\t// Relative path http:// or protocol relative //path\r\n\t\t\tif (!/^[\\w-]*:?\\/\\//.test(u)) {\r\n\t\t\t\tbase_url = s.base_uri ? s.base_uri.path : new tinymce.util.URI(location.href).directory;\r\n\t\t\t\tu = ((s.base_uri && s.base_uri.protocol) || 'http') + '://mce_host' + t.toAbsPath(base_url, u);\r\n\t\t\t}\r\n\r\n\t\t\t// Parse URL (Credits goes to Steave, http://blog.stevenlevithan.com/archives/parseuri)\r\n\t\t\tu = u.replace(/@@/g, '(mce_at)'); // Zope 3 workaround, they use @@something\r\n\t\t\tu = /^(?:(?![^:@]+:[^:@\\/]*@)([^:\\/?#.]+):)?(?:\\/\\/)?((?:(([^:@]*):?([^:@]*))?@)?([^:\\/?#]*)(?::(\\d*))?)(((\\/(?:[^?#](?![^?#\\/]*\\.[^?#\\/.]+(?:[?#]|$)))*\\/?)?([^?#\\/]*))(?:\\?([^#]*))?(?:#(.*))?)/.exec(u);\r\n\t\t\teach([\"source\",\"protocol\",\"authority\",\"userInfo\",\"user\",\"password\",\"host\",\"port\",\"relative\",\"path\",\"directory\",\"file\",\"query\",\"anchor\"], function(v, i) {\r\n\t\t\t\tvar s = u[i];\r\n\r\n\t\t\t\t// Zope 3 workaround, they use @@something\r\n\t\t\t\tif (s)\r\n\t\t\t\t\ts = s.replace(/\\(mce_at\\)/g, '@@');\r\n\r\n\t\t\t\tt[v] = s;\r\n\t\t\t});\r\n\r\n\t\t\tif (b = s.base_uri) {\r\n\t\t\t\tif (!t.protocol)\r\n\t\t\t\t\tt.protocol = b.protocol;\r\n\r\n\t\t\t\tif (!t.userInfo)\r\n\t\t\t\t\tt.userInfo = b.userInfo;\r\n\r\n\t\t\t\tif (!t.port && t.host == 'mce_host')\r\n\t\t\t\t\tt.port = b.port;\r\n\r\n\t\t\t\tif (!t.host || t.host == 'mce_host')\r\n\t\t\t\t\tt.host = b.host;\r\n\r\n\t\t\t\tt.source = '';\r\n\t\t\t}\r\n\r\n\t\t\t//t.path = t.path || '/';\r\n\t\t},\r\n\r\n\t\tsetPath : function(p) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tp = /^(.*?)\\/?(\\w+)?$/.exec(p);\r\n\r\n\t\t\t// Update path parts\r\n\t\t\tt.path = p[0];\r\n\t\t\tt.directory = p[1];\r\n\t\t\tt.file = p[2];\r\n\r\n\t\t\t// Rebuild source\r\n\t\t\tt.source = '';\r\n\t\t\tt.getURI();\r\n\t\t},\r\n\r\n\t\ttoRelative : function(u) {\r\n\t\t\tvar t = this, o;\r\n\r\n\t\t\tif (u === \"./\")\r\n\t\t\t\treturn u;\r\n\r\n\t\t\tu = new tinymce.util.URI(u, {base_uri : t});\r\n\r\n\t\t\t// Not on same domain/port or protocol\r\n\t\t\tif ((u.host != 'mce_host' && t.host != u.host && u.host) || t.port != u.port || t.protocol != u.protocol)\r\n\t\t\t\treturn u.getURI();\r\n\r\n\t\t\to = t.toRelPath(t.path, u.path);\r\n\r\n\t\t\t// Add query\r\n\t\t\tif (u.query)\r\n\t\t\t\to += '?' + u.query;\r\n\r\n\t\t\t// Add anchor\r\n\t\t\tif (u.anchor)\r\n\t\t\t\to += '#' + u.anchor;\r\n\r\n\t\t\treturn o;\r\n\t\t},\r\n\t\r\n\t\ttoAbsolute : function(u, nh) {\r\n\t\t\tvar u = new tinymce.util.URI(u, {base_uri : this});\r\n\r\n\t\t\treturn u.getURI(this.host == u.host && this.protocol == u.protocol ? nh : 0);\r\n\t\t},\r\n\r\n\t\ttoRelPath : function(base, path) {\r\n\t\t\tvar items, bp = 0, out = '', i, l;\r\n\r\n\t\t\t// Split the paths\r\n\t\t\tbase = base.substring(0, base.lastIndexOf('/'));\r\n\t\t\tbase = base.split('/');\r\n\t\t\titems = path.split('/');\r\n\r\n\t\t\tif (base.length >= items.length) {\r\n\t\t\t\tfor (i = 0, l = base.length; i < l; i++) {\r\n\t\t\t\t\tif (i >= items.length || base[i] != items[i]) {\r\n\t\t\t\t\t\tbp = i + 1;\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (base.length < items.length) {\r\n\t\t\t\tfor (i = 0, l = items.length; i < l; i++) {\r\n\t\t\t\t\tif (i >= base.length || base[i] != items[i]) {\r\n\t\t\t\t\t\tbp = i + 1;\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (bp == 1)\r\n\t\t\t\treturn path;\r\n\r\n\t\t\tfor (i = 0, l = base.length - (bp - 1); i < l; i++)\r\n\t\t\t\tout += \"../\";\r\n\r\n\t\t\tfor (i = bp - 1, l = items.length; i < l; i++) {\r\n\t\t\t\tif (i != bp - 1)\r\n\t\t\t\t\tout += \"/\" + items[i];\r\n\t\t\t\telse\r\n\t\t\t\t\tout += items[i];\r\n\t\t\t}\r\n\r\n\t\t\treturn out;\r\n\t\t},\r\n\r\n\t\ttoAbsPath : function(base, path) {\r\n\t\t\tvar i, nb = 0, o = [], tr, outPath;\r\n\r\n\t\t\t// Split paths\r\n\t\t\ttr = /\\/$/.test(path) ? '/' : '';\r\n\t\t\tbase = base.split('/');\r\n\t\t\tpath = path.split('/');\r\n\r\n\t\t\t// Remove empty chunks\r\n\t\t\teach(base, function(k) {\r\n\t\t\t\tif (k)\r\n\t\t\t\t\to.push(k);\r\n\t\t\t});\r\n\r\n\t\t\tbase = o;\r\n\r\n\t\t\t// Merge relURLParts chunks\r\n\t\t\tfor (i = path.length - 1, o = []; i >= 0; i--) {\r\n\t\t\t\t// Ignore empty or .\r\n\t\t\t\tif (path[i].length == 0 || path[i] == \".\")\r\n\t\t\t\t\tcontinue;\r\n\r\n\t\t\t\t// Is parent\r\n\t\t\t\tif (path[i] == '..') {\r\n\t\t\t\t\tnb++;\r\n\t\t\t\t\tcontinue;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Move up\r\n\t\t\t\tif (nb > 0) {\r\n\t\t\t\t\tnb--;\r\n\t\t\t\t\tcontinue;\r\n\t\t\t\t}\r\n\r\n\t\t\t\to.push(path[i]);\r\n\t\t\t}\r\n\r\n\t\t\ti = base.length - nb;\r\n\r\n\t\t\t// If /a/b/c or /\r\n\t\t\tif (i <= 0)\r\n\t\t\t\toutPath = o.reverse().join('/');\r\n\t\t\telse\r\n\t\t\t\toutPath = base.slice(0, i).join('/') + '/' + o.reverse().join('/');\r\n\r\n\t\t\t// Add front / if it's needed\r\n\t\t\tif (outPath.indexOf('/') !== 0)\r\n\t\t\t\toutPath = '/' + outPath;\r\n\r\n\t\t\t// Add traling / if it's needed\r\n\t\t\tif (tr && outPath.lastIndexOf('/') !== outPath.length - 1)\r\n\t\t\t\toutPath += tr;\r\n\r\n\t\t\treturn outPath;\r\n\t\t},\r\n\r\n\t\tgetURI : function(nh) {\r\n\t\t\tvar s, t = this;\r\n\r\n\t\t\t// Rebuild source\r\n\t\t\tif (!t.source || nh) {\r\n\t\t\t\ts = '';\r\n\r\n\t\t\t\tif (!nh) {\r\n\t\t\t\t\tif (t.protocol)\r\n\t\t\t\t\t\ts += t.protocol + '://';\r\n\r\n\t\t\t\t\tif (t.userInfo)\r\n\t\t\t\t\t\ts += t.userInfo + '@';\r\n\r\n\t\t\t\t\tif (t.host)\r\n\t\t\t\t\t\ts += t.host;\r\n\r\n\t\t\t\t\tif (t.port)\r\n\t\t\t\t\t\ts += ':' + t.port;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (t.path)\r\n\t\t\t\t\ts += t.path;\r\n\r\n\t\t\t\tif (t.query)\r\n\t\t\t\t\ts += '?' + t.query;\r\n\r\n\t\t\t\tif (t.anchor)\r\n\t\t\t\t\ts += '#' + t.anchor;\r\n\r\n\t\t\t\tt.source = s;\r\n\t\t\t}\r\n\r\n\t\t\treturn t.source;\r\n\t\t}\r\n\t});\r\n})();\r\n\r\n(function() {\r\n\tvar each = tinymce.each;\r\n\r\n\ttinymce.create('static tinymce.util.Cookie', {\r\n\t\tgetHash : function(n) {\r\n\t\t\tvar v = this.get(n), h;\r\n\r\n\t\t\tif (v) {\r\n\t\t\t\teach(v.split('&'), function(v) {\r\n\t\t\t\t\tv = v.split('=');\r\n\t\t\t\t\th = h || {};\r\n\t\t\t\t\th[unescape(v[0])] = unescape(v[1]);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\treturn h;\r\n\t\t},\r\n\r\n\t\tsetHash : function(n, v, e, p, d, s) {\r\n\t\t\tvar o = '';\r\n\r\n\t\t\teach(v, function(v, k) {\r\n\t\t\t\to += (!o ? '' : '&') + escape(k) + '=' + escape(v);\r\n\t\t\t});\r\n\r\n\t\t\tthis.set(n, o, e, p, d, s);\r\n\t\t},\r\n\r\n\t\tget : function(n) {\r\n\t\t\tvar c = document.cookie, e, p = n + \"=\", b;\r\n\r\n\t\t\t// Strict mode\r\n\t\t\tif (!c)\r\n\t\t\t\treturn;\r\n\r\n\t\t\tb = c.indexOf(\"; \" + p);\r\n\r\n\t\t\tif (b == -1) {\r\n\t\t\t\tb = c.indexOf(p);\r\n\r\n\t\t\t\tif (b != 0)\r\n\t\t\t\t\treturn null;\r\n\t\t\t} else\r\n\t\t\t\tb += 2;\r\n\r\n\t\t\te = c.indexOf(\";\", b);\r\n\r\n\t\t\tif (e == -1)\r\n\t\t\t\te = c.length;\r\n\r\n\t\t\treturn unescape(c.substring(b + p.length, e));\r\n\t\t},\r\n\r\n\t\tset : function(n, v, e, p, d, s) {\r\n\t\t\tdocument.cookie = n + \"=\" + escape(v) +\r\n\t\t\t\t((e) ? \"; expires=\" + e.toGMTString() : \"\") +\r\n\t\t\t\t((p) ? \"; path=\" + escape(p) : \"\") +\r\n\t\t\t\t((d) ? \"; domain=\" + d : \"\") +\r\n\t\t\t\t((s) ? \"; secure\" : \"\");\r\n\t\t},\r\n\r\n\t\tremove : function(n, p) {\r\n\t\t\tvar d = new Date();\r\n\r\n\t\t\td.setTime(d.getTime() - 1000);\r\n\r\n\t\t\tthis.set(n, '', d, p, d);\r\n\t\t}\r\n\t});\r\n})();\r\n\r\n(function() {\r\n\tfunction serialize(o, quote) {\r\n\t\tvar i, v, t;\r\n\r\n\t\tquote = quote || '\"';\r\n\r\n\t\tif (o == null)\r\n\t\t\treturn 'null';\r\n\r\n\t\tt = typeof o;\r\n\r\n\t\tif (t == 'string') {\r\n\t\t\tv = '\\bb\\tt\\nn\\ff\\rr\\\"\"\\'\\'\\\\\\\\';\r\n\r\n\t\t\treturn quote + o.replace(/([\\u0080-\\uFFFF\\x00-\\x1f\\\"\\'\\\\])/g, function(a, b) {\r\n\t\t\t\t// Make sure single quotes never get encoded inside double quotes for JSON compatibility\r\n\t\t\t\tif (quote === '\"' && a === \"'\")\r\n\t\t\t\t\treturn a;\r\n\r\n\t\t\t\ti = v.indexOf(b);\r\n\r\n\t\t\t\tif (i + 1)\r\n\t\t\t\t\treturn '\\\\' + v.charAt(i + 1);\r\n\r\n\t\t\t\ta = b.charCodeAt().toString(16);\r\n\r\n\t\t\t\treturn '\\\\u' + '0000'.substring(a.length) + a;\r\n\t\t\t}) + quote;\r\n\t\t}\r\n\r\n\t\tif (t == 'object') {\r\n\t\t\tif (o.hasOwnProperty && o instanceof Array) {\r\n\t\t\t\t\tfor (i=0, v = '['; i<o.length; i++)\r\n\t\t\t\t\t\tv += (i > 0 ? ',' : '') + serialize(o[i], quote);\r\n\r\n\t\t\t\t\treturn v + ']';\r\n\t\t\t\t}\r\n\r\n\t\t\t\tv = '{';\r\n\r\n\t\t\t\tfor (i in o)\r\n\t\t\t\t\tv += typeof o[i] != 'function' ? (v.length > 1 ? ',' + quote : quote) + i + quote +':' + serialize(o[i], quote) : '';\r\n\r\n\t\t\t\treturn v + '}';\r\n\t\t}\r\n\r\n\t\treturn '' + o;\r\n\t};\r\n\r\n\ttinymce.util.JSON = {\r\n\t\tserialize: serialize,\r\n\r\n\t\tparse: function(s) {\r\n\t\t\ttry {\r\n\t\t\t\treturn eval('(' + s + ')');\r\n\t\t\t} catch (ex) {\r\n\t\t\t\t// Ignore\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t};\r\n})();\r\ntinymce.create('static tinymce.util.XHR', {\r\n\tsend : function(o) {\r\n\t\tvar x, t, w = window, c = 0;\r\n\r\n\t\t// Default settings\r\n\t\to.scope = o.scope || this;\r\n\t\to.success_scope = o.success_scope || o.scope;\r\n\t\to.error_scope = o.error_scope || o.scope;\r\n\t\to.async = o.async === false ? false : true;\r\n\t\to.data = o.data || '';\r\n\r\n\t\tfunction get(s) {\r\n\t\t\tx = 0;\r\n\r\n\t\t\ttry {\r\n\t\t\t\tx = new ActiveXObject(s);\r\n\t\t\t} catch (ex) {\r\n\t\t\t}\r\n\r\n\t\t\treturn x;\r\n\t\t};\r\n\r\n\t\tx = w.XMLHttpRequest ? new XMLHttpRequest() : get('Microsoft.XMLHTTP') || get('Msxml2.XMLHTTP');\r\n\r\n\t\tif (x) {\r\n\t\t\tif (x.overrideMimeType)\r\n\t\t\t\tx.overrideMimeType(o.content_type);\r\n\r\n\t\t\tx.open(o.type || (o.data ? 'POST' : 'GET'), o.url, o.async);\r\n\r\n\t\t\tif (o.content_type)\r\n\t\t\t\tx.setRequestHeader('Content-Type', o.content_type);\r\n\r\n\t\t\tx.setRequestHeader('X-Requested-With', 'XMLHttpRequest');\r\n\r\n\t\t\tx.send(o.data);\r\n\r\n\t\t\tfunction ready() {\r\n\t\t\t\tif (!o.async || x.readyState == 4 || c++ > 10000) {\r\n\t\t\t\t\tif (o.success && c < 10000 && x.status == 200)\r\n\t\t\t\t\t\to.success.call(o.success_scope, '' + x.responseText, x, o);\r\n\t\t\t\t\telse if (o.error)\r\n\t\t\t\t\t\to.error.call(o.error_scope, c > 10000 ? 'TIMED_OUT' : 'GENERAL', x, o);\r\n\r\n\t\t\t\t\tx = null;\r\n\t\t\t\t} else\r\n\t\t\t\t\tw.setTimeout(ready, 10);\r\n\t\t\t};\r\n\r\n\t\t\t// Syncronous request\r\n\t\t\tif (!o.async)\r\n\t\t\t\treturn ready();\r\n\r\n\t\t\t// Wait for response, onReadyStateChange can not be used since it leaks memory in IE\r\n\t\t\tt = w.setTimeout(ready, 10);\r\n\t\t}\r\n\t}\r\n});\r\n\r\n(function() {\r\n\tvar extend = tinymce.extend, JSON = tinymce.util.JSON, XHR = tinymce.util.XHR;\r\n\r\n\ttinymce.create('tinymce.util.JSONRequest', {\r\n\t\tJSONRequest : function(s) {\r\n\t\t\tthis.settings = extend({\r\n\t\t\t}, s);\r\n\t\t\tthis.count = 0;\r\n\t\t},\r\n\r\n\t\tsend : function(o) {\r\n\t\t\tvar ecb = o.error, scb = o.success;\r\n\r\n\t\t\to = extend(this.settings, o);\r\n\r\n\t\t\to.success = function(c, x) {\r\n\t\t\t\tc = JSON.parse(c);\r\n\r\n\t\t\t\tif (typeof(c) == 'undefined') {\r\n\t\t\t\t\tc = {\r\n\t\t\t\t\t\terror : 'JSON Parse error.'\r\n\t\t\t\t\t};\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (c.error)\r\n\t\t\t\t\tecb.call(o.error_scope || o.scope, c.error, x);\r\n\t\t\t\telse\r\n\t\t\t\t\tscb.call(o.success_scope || o.scope, c.result);\r\n\t\t\t};\r\n\r\n\t\t\to.error = function(ty, x) {\r\n\t\t\t\tif (ecb)\r\n\t\t\t\t\tecb.call(o.error_scope || o.scope, ty, x);\r\n\t\t\t};\r\n\r\n\t\t\to.data = JSON.serialize({\r\n\t\t\t\tid : o.id || 'c' + (this.count++),\r\n\t\t\t\tmethod : o.method,\r\n\t\t\t\tparams : o.params\r\n\t\t\t});\r\n\r\n\t\t\t// JSON content type for Ruby on rails. Bug: #1883287\r\n\t\t\to.content_type = 'application/json';\r\n\r\n\t\t\tXHR.send(o);\r\n\t\t},\r\n\r\n\t\t'static' : {\r\n\t\t\tsendRPC : function(o) {\r\n\t\t\t\treturn new tinymce.util.JSONRequest().send(o);\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n}());\r\n(function(tinymce){\r\n\ttinymce.VK = {\r\n\t\tDELETE:46,\r\n\t\tBACKSPACE:8\r\n\t\t\r\n\t}\r\n\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\tvar VK = tinymce.VK, BACKSPACE = VK.BACKSPACE, DELETE = VK.DELETE;\r\n\r\n\tfunction cleanupStylesWhenDeleting(ed) {\r\n\t\tvar dom = ed.dom, selection = ed.selection;\r\n\r\n\t\ted.onKeyDown.add(function(ed, e) {\r\n\t\t\tvar rng, blockElm, node, clonedSpan, isDelete;\r\n\r\n\t\t\tisDelete = e.keyCode == DELETE;\r\n\t\t\tif (isDelete || e.keyCode == BACKSPACE) {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\trng = selection.getRng();\r\n\r\n\t\t\t\t// Find root block\r\n\t\t\t\tblockElm = dom.getParent(rng.startContainer, dom.isBlock);\r\n\r\n\t\t\t\t// On delete clone the root span of the next block element\r\n\t\t\t\tif (isDelete)\r\n\t\t\t\t\tblockElm = dom.getNext(blockElm, dom.isBlock);\r\n\r\n\t\t\t\t// Locate root span element and clone it since it would otherwise get merged by the \"apple-style-span\" on delete/backspace\r\n\t\t\t\tif (blockElm) {\r\n\t\t\t\t\tnode = blockElm.firstChild;\r\n\r\n\t\t\t\t\t// Ignore empty text nodes\r\n\t\t\t\t\twhile (node.nodeType == 3 && node.nodeValue.length == 0)\r\n\t\t\t\t\t\tnode = node.nextSibling;\r\n\r\n\t\t\t\t\tif (node && node.nodeName === 'SPAN') {\r\n\t\t\t\t\t\tclonedSpan = node.cloneNode(false);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Do the backspace/delete actiopn\r\n\t\t\t\ted.getDoc().execCommand(isDelete ? 'ForwardDelete' : 'Delete', false, null);\r\n\r\n\t\t\t\t// Find all odd apple-style-spans\r\n\t\t\t\tblockElm = dom.getParent(rng.startContainer, dom.isBlock);\r\n\t\t\t\ttinymce.each(dom.select('span.Apple-style-span,font.Apple-style-span', blockElm), function(span) {\r\n\t\t\t\t\tvar bm = selection.getBookmark();\r\n\r\n\t\t\t\t\tif (clonedSpan) {\r\n\t\t\t\t\t\tdom.replace(clonedSpan.cloneNode(false), span, true);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tdom.remove(span, true);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Restore the selection\r\n\t\t\t\t\tselection.moveToBookmark(bm);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t});\r\n\t};\r\n\r\n\tfunction emptyEditorWhenDeleting(ed) {\r\n\t\ted.onKeyUp.add(function(ed, e) {\r\n\t\t\tvar keyCode = e.keyCode;\r\n\r\n\t\t\tif (keyCode == DELETE || keyCode == BACKSPACE) {\r\n\t\t\t\tif (ed.dom.isEmpty(ed.getBody())) {\r\n\t\t\t\t\ted.setContent('', {format : 'raw'});\r\n\t\t\t\t\ted.nodeChanged();\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t};\r\n\r\n\tfunction inputMethodFocus(ed) {\r\n\t\ted.dom.bind(ed.getDoc(), 'focusin', function() {\r\n\t\t\ted.selection.setRng(ed.selection.getRng());\r\n\t\t});\r\n\t};\r\n\r\n\tfunction focusBody(ed) {\r\n\t\t// Fix for a focus bug in FF 3.x where the body element\r\n\t\t// wouldn't get proper focus if the user clicked on the HTML element\r\n\t\tif (!Range.prototype.getClientRects) { // Detect getClientRects got introduced in FF 4\r\n\t\t\ted.onMouseDown.add(function(ed, e) {\r\n\t\t\t\tif (e.target.nodeName === \"HTML\") {\r\n\t\t\t\t\tvar body = ed.getBody();\r\n\r\n\t\t\t\t\t// Blur the body it's focused but not correctly focused\r\n\t\t\t\t\tbody.blur();\r\n\r\n\t\t\t\t\t// Refocus the body after a little while\r\n\t\t\t\t\tsetTimeout(function() {\r\n\t\t\t\t\t\tbody.focus();\r\n\t\t\t\t\t}, 0);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t};\r\n\r\n\tfunction selectControlElements(ed) {\r\n\t\ted.onClick.add(function(ed, e) {\r\n\t\t\te = e.target;\r\n\r\n\t\t\t// Workaround for bug, http://bugs.webkit.org/show_bug.cgi?id=12250\r\n\t\t\t// WebKit can't even do simple things like selecting an image\r\n\t\t\t// Needs tobe the setBaseAndExtend or it will fail to select floated images\r\n\t\t\tif (/^(IMG|HR)$/.test(e.nodeName))\r\n\t\t\t\ted.selection.getSel().setBaseAndExtent(e, 0, e, 1);\r\n\r\n\t\t\tif (e.nodeName == 'A' && ed.dom.hasClass(e, 'mceItemAnchor'))\r\n\t\t\t\ted.selection.select(e);\r\n\r\n\t\t\ted.nodeChanged();\r\n\t\t});\r\n\t};\r\n\r\n\ttinymce.create('tinymce.util.Quirks', {\r\n\t\tQuirks: function(ed) {\r\n\t\t\t// WebKit\r\n\t\t\tif (tinymce.isWebKit) {\r\n\t\t\t\tcleanupStylesWhenDeleting(ed);\r\n\t\t\t\temptyEditorWhenDeleting(ed);\r\n\t\t\t\tinputMethodFocus(ed);\r\n\t\t\t\tselectControlElements(ed);\r\n\t\t\t}\r\n\r\n\t\t\t// IE\r\n\t\t\tif (tinymce.isIE) {\r\n\t\t\t\temptyEditorWhenDeleting(ed);\r\n\t\t\t}\r\n\r\n\t\t\t// Gecko\r\n\t\t\tif (tinymce.isGecko) {\r\n\t\t\t\tfocusBody(ed);\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n})(tinymce);\r\n(function(tinymce) {\r\n\tvar namedEntities, baseEntities, reverseEntities,\r\n\t\tattrsCharsRegExp = /[&<>\\\"\\u007E-\\uD7FF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]/g,\r\n\t\ttextCharsRegExp = /[<>&\\u007E-\\uD7FF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]/g,\r\n\t\trawCharsRegExp = /[<>&\\\"\\']/g,\r\n\t\tentityRegExp = /&(#x|#)?([\\w]+);/g,\r\n\t\tasciiMap = {\r\n\t\t\t\t128 : \"\\u20AC\", 130 : \"\\u201A\", 131 : \"\\u0192\", 132 : \"\\u201E\", 133 : \"\\u2026\", 134 : \"\\u2020\",\r\n\t\t\t\t135 : \"\\u2021\", 136 : \"\\u02C6\", 137 : \"\\u2030\", 138 : \"\\u0160\", 139 : \"\\u2039\", 140 : \"\\u0152\",\r\n\t\t\t\t142 : \"\\u017D\", 145 : \"\\u2018\", 146 : \"\\u2019\", 147 : \"\\u201C\", 148 : \"\\u201D\", 149 : \"\\u2022\",\r\n\t\t\t\t150 : \"\\u2013\", 151 : \"\\u2014\", 152 : \"\\u02DC\", 153 : \"\\u2122\", 154 : \"\\u0161\", 155 : \"\\u203A\",\r\n\t\t\t\t156 : \"\\u0153\", 158 : \"\\u017E\", 159 : \"\\u0178\"\r\n\t\t};\r\n\r\n\t// Raw entities\r\n\tbaseEntities = {\r\n\t\t'\\\"' : '&quot;', // Needs to be escaped since the YUI compressor would otherwise break the code\r\n\t\t\"'\" : '&#39;',\r\n\t\t'<' : '&lt;',\r\n\t\t'>' : '&gt;',\r\n\t\t'&' : '&amp;'\r\n\t};\r\n\r\n\t// Reverse lookup table for raw entities\r\n\treverseEntities = {\r\n\t\t'&lt;' : '<',\r\n\t\t'&gt;' : '>',\r\n\t\t'&amp;' : '&',\r\n\t\t'&quot;' : '\"',\r\n\t\t'&apos;' : \"'\"\r\n\t};\r\n\r\n\t// Decodes text by using the browser\r\n\tfunction nativeDecode(text) {\r\n\t\tvar elm;\r\n\r\n\t\telm = document.createElement(\"div\");\r\n\t\telm.innerHTML = text;\r\n\r\n\t\treturn elm.textContent || elm.innerText || text;\r\n\t};\r\n\r\n\t// Build a two way lookup table for the entities\r\n\tfunction buildEntitiesLookup(items, radix) {\r\n\t\tvar i, chr, entity, lookup = {};\r\n\r\n\t\tif (items) {\r\n\t\t\titems = items.split(',');\r\n\t\t\tradix = radix || 10;\r\n\r\n\t\t\t// Build entities lookup table\r\n\t\t\tfor (i = 0; i < items.length; i += 2) {\r\n\t\t\t\tchr = String.fromCharCode(parseInt(items[i], radix));\r\n\r\n\t\t\t\t// Only add non base entities\r\n\t\t\t\tif (!baseEntities[chr]) {\r\n\t\t\t\t\tentity = '&' + items[i + 1] + ';';\r\n\t\t\t\t\tlookup[chr] = entity;\r\n\t\t\t\t\tlookup[entity] = chr;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\treturn lookup;\r\n\t\t}\r\n\t};\r\n\r\n\t// Unpack entities lookup where the numbers are in radix 32 to reduce the size\r\n\tnamedEntities = buildEntitiesLookup(\r\n\t\t'50,nbsp,51,iexcl,52,cent,53,pound,54,curren,55,yen,56,brvbar,57,sect,58,uml,59,copy,' +\r\n\t\t'5a,ordf,5b,laquo,5c,not,5d,shy,5e,reg,5f,macr,5g,deg,5h,plusmn,5i,sup2,5j,sup3,5k,acute,' +\r\n\t\t'5l,micro,5m,para,5n,middot,5o,cedil,5p,sup1,5q,ordm,5r,raquo,5s,frac14,5t,frac12,5u,frac34,' +\r\n\t\t'5v,iquest,60,Agrave,61,Aacute,62,Acirc,63,Atilde,64,Auml,65,Aring,66,AElig,67,Ccedil,' +\r\n\t\t'68,Egrave,69,Eacute,6a,Ecirc,6b,Euml,6c,Igrave,6d,Iacute,6e,Icirc,6f,Iuml,6g,ETH,6h,Ntilde,' +\r\n\t\t'6i,Ograve,6j,Oacute,6k,Ocirc,6l,Otilde,6m,Ouml,6n,times,6o,Oslash,6p,Ugrave,6q,Uacute,' +\r\n\t\t'6r,Ucirc,6s,Uuml,6t,Yacute,6u,THORN,6v,szlig,70,agrave,71,aacute,72,acirc,73,atilde,74,auml,' +\r\n\t\t'75,aring,76,aelig,77,ccedil,78,egrave,79,eacute,7a,ecirc,7b,euml,7c,igrave,7d,iacute,7e,icirc,' +\r\n\t\t'7f,iuml,7g,eth,7h,ntilde,7i,ograve,7j,oacute,7k,ocirc,7l,otilde,7m,ouml,7n,divide,7o,oslash,' +\r\n\t\t'7p,ugrave,7q,uacute,7r,ucirc,7s,uuml,7t,yacute,7u,thorn,7v,yuml,ci,fnof,sh,Alpha,si,Beta,' +\r\n\t\t'sj,Gamma,sk,Delta,sl,Epsilon,sm,Zeta,sn,Eta,so,Theta,sp,Iota,sq,Kappa,sr,Lambda,ss,Mu,' +\r\n\t\t'st,Nu,su,Xi,sv,Omicron,t0,Pi,t1,Rho,t3,Sigma,t4,Tau,t5,Upsilon,t6,Phi,t7,Chi,t8,Psi,' +\r\n\t\t't9,Omega,th,alpha,ti,beta,tj,gamma,tk,delta,tl,epsilon,tm,zeta,tn,eta,to,theta,tp,iota,' +\r\n\t\t'tq,kappa,tr,lambda,ts,mu,tt,nu,tu,xi,tv,omicron,u0,pi,u1,rho,u2,sigmaf,u3,sigma,u4,tau,' +\r\n\t\t'u5,upsilon,u6,phi,u7,chi,u8,psi,u9,omega,uh,thetasym,ui,upsih,um,piv,812,bull,816,hellip,' +\r\n\t\t'81i,prime,81j,Prime,81u,oline,824,frasl,88o,weierp,88h,image,88s,real,892,trade,89l,alefsym,' +\r\n\t\t'8cg,larr,8ch,uarr,8ci,rarr,8cj,darr,8ck,harr,8dl,crarr,8eg,lArr,8eh,uArr,8ei,rArr,8ej,dArr,' +\r\n\t\t'8ek,hArr,8g0,forall,8g2,part,8g3,exist,8g5,empty,8g7,nabla,8g8,isin,8g9,notin,8gb,ni,8gf,prod,' +\r\n\t\t'8gh,sum,8gi,minus,8gn,lowast,8gq,radic,8gt,prop,8gu,infin,8h0,ang,8h7,and,8h8,or,8h9,cap,8ha,cup,' +\r\n\t\t'8hb,int,8hk,there4,8hs,sim,8i5,cong,8i8,asymp,8j0,ne,8j1,equiv,8j4,le,8j5,ge,8k2,sub,8k3,sup,8k4,' +\r\n\t\t'nsub,8k6,sube,8k7,supe,8kl,oplus,8kn,otimes,8l5,perp,8m5,sdot,8o8,lceil,8o9,rceil,8oa,lfloor,8ob,' +\r\n\t\t'rfloor,8p9,lang,8pa,rang,9ea,loz,9j0,spades,9j3,clubs,9j5,hearts,9j6,diams,ai,OElig,aj,oelig,b0,' +\r\n\t\t'Scaron,b1,scaron,bo,Yuml,m6,circ,ms,tilde,802,ensp,803,emsp,809,thinsp,80c,zwnj,80d,zwj,80e,lrm,' +\r\n\t\t'80f,rlm,80j,ndash,80k,mdash,80o,lsquo,80p,rsquo,80q,sbquo,80s,ldquo,80t,rdquo,80u,bdquo,810,dagger,' +\r\n\t\t'811,Dagger,81g,permil,81p,lsaquo,81q,rsaquo,85c,euro'\r\n\t, 32);\r\n\r\n\ttinymce.html = tinymce.html || {};\r\n\r\n\ttinymce.html.Entities = {\r\n\t\tencodeRaw : function(text, attr) {\r\n\t\t\treturn text.replace(attr ? attrsCharsRegExp : textCharsRegExp, function(chr) {\r\n\t\t\t\treturn baseEntities[chr] || chr;\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tencodeAllRaw : function(text) {\r\n\t\t\treturn ('' + text).replace(rawCharsRegExp, function(chr) {\r\n\t\t\t\treturn baseEntities[chr] || chr;\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tencodeNumeric : function(text, attr) {\r\n\t\t\treturn text.replace(attr ? attrsCharsRegExp : textCharsRegExp, function(chr) {\r\n\t\t\t\t// Multi byte sequence convert it to a single entity\r\n\t\t\t\tif (chr.length > 1)\r\n\t\t\t\t\treturn '&#' + (((chr.charCodeAt(0) - 0xD800) * 0x400) + (chr.charCodeAt(1) - 0xDC00) + 0x10000) + ';';\r\n\r\n\t\t\t\treturn baseEntities[chr] || '&#' + chr.charCodeAt(0) + ';';\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tencodeNamed : function(text, attr, entities) {\r\n\t\t\tentities = entities || namedEntities;\r\n\r\n\t\t\treturn text.replace(attr ? attrsCharsRegExp : textCharsRegExp, function(chr) {\r\n\t\t\t\treturn baseEntities[chr] || entities[chr] || chr;\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tgetEncodeFunc : function(name, entities) {\r\n\t\t\tvar Entities = tinymce.html.Entities;\r\n\r\n\t\t\tentities = buildEntitiesLookup(entities) || namedEntities;\r\n\r\n\t\t\tfunction encodeNamedAndNumeric(text, attr) {\r\n\t\t\t\treturn text.replace(attr ? attrsCharsRegExp : textCharsRegExp, function(chr) {\r\n\t\t\t\t\treturn baseEntities[chr] || entities[chr] || '&#' + chr.charCodeAt(0) + ';' || chr;\r\n\t\t\t\t});\r\n\t\t\t};\r\n\r\n\t\t\tfunction encodeCustomNamed(text, attr) {\r\n\t\t\t\treturn Entities.encodeNamed(text, attr, entities);\r\n\t\t\t};\r\n\r\n\t\t\t// Replace + with , to be compatible with previous TinyMCE versions\r\n\t\t\tname = tinymce.makeMap(name.replace(/\\+/g, ','));\r\n\r\n\t\t\t// Named and numeric encoder\r\n\t\t\tif (name.named && name.numeric)\r\n\t\t\t\treturn encodeNamedAndNumeric;\r\n\r\n\t\t\t// Named encoder\r\n\t\t\tif (name.named) {\r\n\t\t\t\t// Custom names\r\n\t\t\t\tif (entities)\r\n\t\t\t\t\treturn encodeCustomNamed;\r\n\r\n\t\t\t\treturn Entities.encodeNamed;\r\n\t\t\t}\r\n\r\n\t\t\t// Numeric\r\n\t\t\tif (name.numeric)\r\n\t\t\t\treturn Entities.encodeNumeric;\r\n\r\n\t\t\t// Raw encoder\r\n\t\t\treturn Entities.encodeRaw;\r\n\t\t},\r\n\r\n\t\tdecode : function(text) {\r\n\t\t\treturn text.replace(entityRegExp, function(all, numeric, value) {\r\n\t\t\t\tif (numeric) {\r\n\t\t\t\t\tvalue = parseInt(value, numeric.length === 2 ? 16 : 10);\r\n\r\n\t\t\t\t\t// Support upper UTF\r\n\t\t\t\t\tif (value > 0xFFFF) {\r\n\t\t\t\t\t\tvalue -= 0x10000;\r\n\r\n\t\t\t\t\t\treturn String.fromCharCode(0xD800 + (value >> 10), 0xDC00 + (value & 0x3FF));\r\n\t\t\t\t\t} else\r\n\t\t\t\t\t\treturn asciiMap[value] || String.fromCharCode(value);\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn reverseEntities[all] || namedEntities[all] || nativeDecode(all);\r\n\t\t\t});\r\n\t\t}\r\n\t};\r\n})(tinymce);\r\n\r\ntinymce.html.Styles = function(settings, schema) {\r\n\tvar rgbRegExp = /rgb\\s*\\(\\s*([0-9]+)\\s*,\\s*([0-9]+)\\s*,\\s*([0-9]+)\\s*\\)/gi,\r\n\t\turlOrStrRegExp = /(?:url(?:(?:\\(\\s*\\\"([^\\\"]+)\\\"\\s*\\))|(?:\\(\\s*\\'([^\\']+)\\'\\s*\\))|(?:\\(\\s*([^)\\s]+)\\s*\\))))|(?:\\'([^\\']+)\\')|(?:\\\"([^\\\"]+)\\\")/gi,\r\n\t\tstyleRegExp = /\\s*([^:]+):\\s*([^;]+);?/g,\r\n\t\ttrimRightRegExp = /\\s+$/,\r\n\t\turlColorRegExp = /rgb/,\r\n\t\tundef, i, encodingLookup = {}, encodingItems;\r\n\r\n\tsettings = settings || {};\r\n\r\n\tencodingItems = '\\\\\" \\\\\\' \\\\; \\\\: ; : \\uFEFF'.split(' ');\r\n\tfor (i = 0; i < encodingItems.length; i++) {\r\n\t\tencodingLookup[encodingItems[i]] = '\\uFEFF' + i;\r\n\t\tencodingLookup['\\uFEFF' + i] = encodingItems[i];\r\n\t}\r\n\r\n\tfunction toHex(match, r, g, b) {\r\n\t\tfunction hex(val) {\r\n\t\t\tval = parseInt(val).toString(16);\r\n\r\n\t\t\treturn val.length > 1 ? val : '0' + val; // 0 -> 00\r\n\t\t};\r\n\r\n\t\treturn '#' + hex(r) + hex(g) + hex(b);\r\n\t};\r\n\r\n\treturn {\r\n\t\ttoHex : function(color) {\r\n\t\t\treturn color.replace(rgbRegExp, toHex);\r\n\t\t},\r\n\r\n\t\tparse : function(css) {\r\n\t\t\tvar styles = {}, matches, name, value, isEncoded, urlConverter = settings.url_converter, urlConverterScope = settings.url_converter_scope || this;\r\n\r\n\t\t\tfunction compress(prefix, suffix) {\r\n\t\t\t\tvar top, right, bottom, left;\r\n\r\n\t\t\t\t// Get values and check it it needs compressing\r\n\t\t\t\ttop = styles[prefix + '-top' + suffix];\r\n\t\t\t\tif (!top)\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\tright = styles[prefix + '-right' + suffix];\r\n\t\t\t\tif (top != right)\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\tbottom = styles[prefix + '-bottom' + suffix];\r\n\t\t\t\tif (right != bottom)\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\tleft = styles[prefix + '-left' + suffix];\r\n\t\t\t\tif (bottom != left)\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\t// Compress\r\n\t\t\t\tstyles[prefix + suffix] = left;\r\n\t\t\t\tdelete styles[prefix + '-top' + suffix];\r\n\t\t\t\tdelete styles[prefix + '-right' + suffix];\r\n\t\t\t\tdelete styles[prefix + '-bottom' + suffix];\r\n\t\t\t\tdelete styles[prefix + '-left' + suffix];\r\n\t\t\t};\r\n\r\n\t\t\tfunction canCompress(key) {\r\n\t\t\t\tvar value = styles[key], i;\r\n\r\n\t\t\t\tif (!value || value.indexOf(' ') < 0)\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\tvalue = value.split(' ');\r\n\t\t\t\ti = value.length;\r\n\t\t\t\twhile (i--) {\r\n\t\t\t\t\tif (value[i] !== value[0])\r\n\t\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tstyles[key] = value[0];\r\n\r\n\t\t\t\treturn true;\r\n\t\t\t};\r\n\r\n\t\t\tfunction compress2(target, a, b, c) {\r\n\t\t\t\tif (!canCompress(a))\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\tif (!canCompress(b))\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\tif (!canCompress(c))\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\t// Compress\r\n\t\t\t\tstyles[target] = styles[a] + ' ' + styles[b] + ' ' + styles[c];\r\n\t\t\t\tdelete styles[a];\r\n\t\t\t\tdelete styles[b];\r\n\t\t\t\tdelete styles[c];\r\n\t\t\t};\r\n\r\n\t\t\t// Encodes the specified string by replacing all \\\" \\' ; : with _<num>\r\n\t\t\tfunction encode(str) {\r\n\t\t\t\tisEncoded = true;\r\n\r\n\t\t\t\treturn encodingLookup[str];\r\n\t\t\t};\r\n\r\n\t\t\t// Decodes the specified string by replacing all _<num> with it's original value \\\" \\' etc\r\n\t\t\t// It will also decode the \\\" \\' if keep_slashes is set to fale or omitted\r\n\t\t\tfunction decode(str, keep_slashes) {\r\n\t\t\t\tif (isEncoded) {\r\n\t\t\t\t\tstr = str.replace(/\\uFEFF[0-9]/g, function(str) {\r\n\t\t\t\t\t\treturn encodingLookup[str];\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (!keep_slashes)\r\n\t\t\t\t\tstr = str.replace(/\\\\([\\'\\\";:])/g, \"$1\");\r\n\r\n\t\t\t\treturn str;\r\n\t\t\t}\r\n\r\n\t\t\tif (css) {\r\n\t\t\t\t// Encode \\\" \\' % and ; and : inside strings so they don't interfere with the style parsing\r\n\t\t\t\tcss = css.replace(/\\\\[\\\"\\';:\\uFEFF]/g, encode).replace(/\\\"[^\\\"]+\\\"|\\'[^\\']+\\'/g, function(str) {\r\n\t\t\t\t\treturn str.replace(/[;:]/g, encode);\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// Parse styles\r\n\t\t\t\twhile (matches = styleRegExp.exec(css)) {\r\n\t\t\t\t\tname = matches[1].replace(trimRightRegExp, '').toLowerCase();\r\n\t\t\t\t\tvalue = matches[2].replace(trimRightRegExp, '');\r\n\r\n\t\t\t\t\tif (name && value.length > 0) {\r\n\t\t\t\t\t\t// Opera will produce 700 instead of bold in their style values\r\n\t\t\t\t\t\tif (name === 'font-weight' && value === '700')\r\n\t\t\t\t\t\t\tvalue = 'bold';\r\n\t\t\t\t\t\telse if (name === 'color' || name === 'background-color') // Lowercase colors like RED\r\n\t\t\t\t\t\t\tvalue = value.toLowerCase();\t\t\r\n\r\n\t\t\t\t\t\t// Convert RGB colors to HEX\r\n\t\t\t\t\t\tvalue = value.replace(rgbRegExp, toHex);\r\n\r\n\t\t\t\t\t\t// Convert URLs and force them into url('value') format\r\n\t\t\t\t\t\tvalue = value.replace(urlOrStrRegExp, function(match, url, url2, url3, str, str2) {\r\n\t\t\t\t\t\t\tstr = str || str2;\r\n\r\n\t\t\t\t\t\t\tif (str) {\r\n\t\t\t\t\t\t\t\tstr = decode(str);\r\n\r\n\t\t\t\t\t\t\t\t// Force strings into single quote format\r\n\t\t\t\t\t\t\t\treturn \"'\" + str.replace(/\\'/g, \"\\\\'\") + \"'\";\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\turl = decode(url || url2 || url3);\r\n\r\n\t\t\t\t\t\t\t// Convert the URL to relative/absolute depending on config\r\n\t\t\t\t\t\t\tif (urlConverter)\r\n\t\t\t\t\t\t\t\turl = urlConverter.call(urlConverterScope, url, 'style');\r\n\r\n\t\t\t\t\t\t\t// Output new URL format\r\n\t\t\t\t\t\t\treturn \"url('\" + url.replace(/\\'/g, \"\\\\'\") + \"')\";\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\tstyles[name] = isEncoded ? decode(value, true) : value;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tstyleRegExp.lastIndex = matches.index + matches[0].length;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Compress the styles to reduce it's size for example IE will expand styles\r\n\t\t\t\tcompress(\"border\", \"\");\r\n\t\t\t\tcompress(\"border\", \"-width\");\r\n\t\t\t\tcompress(\"border\", \"-color\");\r\n\t\t\t\tcompress(\"border\", \"-style\");\r\n\t\t\t\tcompress(\"padding\", \"\");\r\n\t\t\t\tcompress(\"margin\", \"\");\r\n\t\t\t\tcompress2('border', 'border-width', 'border-style', 'border-color');\r\n\r\n\t\t\t\t// Remove pointless border, IE produces these\r\n\t\t\t\tif (styles.border === 'medium none')\r\n\t\t\t\t\tdelete styles.border;\r\n\t\t\t}\r\n\r\n\t\t\treturn styles;\r\n\t\t},\r\n\r\n\t\tserialize : function(styles, element_name) {\r\n\t\t\tvar css = '', name, value;\r\n\r\n\t\t\tfunction serializeStyles(name) {\r\n\t\t\t\tvar styleList, i, l, value;\r\n\r\n\t\t\t\tstyleList = schema.styles[name];\r\n\t\t\t\tif (styleList) {\r\n\t\t\t\t\tfor (i = 0, l = styleList.length; i < l; i++) {\r\n\t\t\t\t\t\tname = styleList[i];\r\n\t\t\t\t\t\tvalue = styles[name];\r\n\r\n\t\t\t\t\t\tif (value !== undef && value.length > 0)\r\n\t\t\t\t\t\t\tcss += (css.length > 0 ? ' ' : '') + name + ': ' + value + ';';\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\t\t\t// Serialize styles according to schema\r\n\t\t\tif (element_name && schema && schema.styles) {\r\n\t\t\t\t// Serialize global styles and element specific styles\r\n\t\t\t\tserializeStyles('*');\r\n\t\t\t\tserializeStyles(element_name);\r\n\t\t\t} else {\r\n\t\t\t\t// Output the styles in the order they are inside the object\r\n\t\t\t\tfor (name in styles) {\r\n\t\t\t\t\tvalue = styles[name];\r\n\r\n\t\t\t\t\tif (value !== undef && value.length > 0)\r\n\t\t\t\t\t\tcss += (css.length > 0 ? ' ' : '') + name + ': ' + value + ';';\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\treturn css;\r\n\t\t}\r\n\t};\r\n};\r\n\r\n(function(tinymce) {\r\n\tvar transitional = {}, boolAttrMap, blockElementsMap, shortEndedElementsMap, nonEmptyElementsMap, customElementsMap = {},\r\n\t\tdefaultWhiteSpaceElementsMap, selfClosingElementsMap, makeMap = tinymce.makeMap, each = tinymce.each;\r\n\r\n\tfunction split(str, delim) {\r\n\t\treturn str.split(delim || ',');\r\n\t};\r\n\r\n\tfunction unpack(lookup, data) {\r\n\t\tvar key, elements = {};\r\n\r\n\t\tfunction replace(value) {\r\n\t\t\treturn value.replace(/[A-Z]+/g, function(key) {\r\n\t\t\t\treturn replace(lookup[key]);\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\t// Unpack lookup\r\n\t\tfor (key in lookup) {\r\n\t\t\tif (lookup.hasOwnProperty(key))\r\n\t\t\t\tlookup[key] = replace(lookup[key]);\r\n\t\t}\r\n\r\n\t\t// Unpack and parse data into object map\r\n\t\treplace(data).replace(/#/g, '#text').replace(/(\\w+)\\[([^\\]]+)\\]\\[([^\\]]*)\\]/g, function(str, name, attributes, children) {\r\n\t\t\tattributes = split(attributes, '|');\r\n\r\n\t\t\telements[name] = {\r\n\t\t\t\tattributes : makeMap(attributes),\r\n\t\t\t\tattributesOrder : attributes,\r\n\t\t\t\tchildren : makeMap(children, '|', {'#comment' : {}})\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\treturn elements;\r\n\t};\r\n\r\n\t// Build a lookup table for block elements both lowercase and uppercase\r\n\tblockElementsMap = 'h1,h2,h3,h4,h5,h6,hr,p,div,address,pre,form,table,tbody,thead,tfoot,' + \r\n\t\t\t\t\t\t'th,tr,td,li,ol,ul,caption,blockquote,center,dl,dt,dd,dir,fieldset,' + \r\n\t\t\t\t\t\t'noscript,menu,isindex,samp,header,footer,article,section,hgroup';\r\n\tblockElementsMap = makeMap(blockElementsMap, ',', makeMap(blockElementsMap.toUpperCase()));\r\n\r\n\t// This is the XHTML 1.0 transitional elements with it's attributes and children packed to reduce it's size\r\n\ttransitional = unpack({\r\n\t\tZ : 'H|K|N|O|P',\r\n\t\tY : 'X|form|R|Q',\r\n\t\tZG : 'E|span|width|align|char|charoff|valign',\r\n\t\tX : 'p|T|div|U|W|isindex|fieldset|table',\r\n\t\tZF : 'E|align|char|charoff|valign',\r\n\t\tW : 'pre|hr|blockquote|address|center|noframes',\r\n\t\tZE : 'abbr|axis|headers|scope|rowspan|colspan|align|char|charoff|valign|nowrap|bgcolor|width|height',\r\n\t\tZD : '[E][S]',\r\n\t\tU : 'ul|ol|dl|menu|dir',\r\n\t\tZC : 'p|Y|div|U|W|table|br|span|bdo|object|applet|img|map|K|N|Q',\r\n\t\tT : 'h1|h2|h3|h4|h5|h6',\r\n\t\tZB : 'X|S|Q',\r\n\t\tS : 'R|P',\r\n\t\tZA : 'a|G|J|M|O|P',\r\n\t\tR : 'a|H|K|N|O',\r\n\t\tQ : 'noscript|P',\r\n\t\tP : 'ins|del|script',\r\n\t\tO : 'input|select|textarea|label|button',\r\n\t\tN : 'M|L',\r\n\t\tM : 'em|strong|dfn|code|q|samp|kbd|var|cite|abbr|acronym',\r\n\t\tL : 'sub|sup',\r\n\t\tK : 'J|I',\r\n\t\tJ : 'tt|i|b|u|s|strike',\r\n\t\tI : 'big|small|font|basefont',\r\n\t\tH : 'G|F',\r\n\t\tG : 'br|span|bdo',\r\n\t\tF : 'object|applet|img|map|iframe',\r\n\t\tE : 'A|B|C',\r\n\t\tD : 'accesskey|tabindex|onfocus|onblur',\r\n\t\tC : 'onclick|ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup',\r\n\t\tB : 'lang|xml:lang|dir',\r\n\t\tA : 'id|class|style|title'\r\n\t}, 'script[id|charset|type|language|src|defer|xml:space][]' + \r\n\t\t'style[B|id|type|media|title|xml:space][]' + \r\n\t\t'object[E|declare|classid|codebase|data|type|codetype|archive|standby|width|height|usemap|name|tabindex|align|border|hspace|vspace][#|param|Y]' + \r\n\t\t'param[id|name|value|valuetype|type][]' + \r\n\t\t'p[E|align][#|S]' + \r\n\t\t'a[E|D|charset|type|name|href|hreflang|rel|rev|shape|coords|target][#|Z]' + \r\n\t\t'br[A|clear][]' + \r\n\t\t'span[E][#|S]' + \r\n\t\t'bdo[A|C|B][#|S]' + \r\n\t\t'applet[A|codebase|archive|code|object|alt|name|width|height|align|hspace|vspace][#|param|Y]' + \r\n\t\t'h1[E|align][#|S]' + \r\n\t\t'img[E|src|alt|name|longdesc|width|height|usemap|ismap|align|border|hspace|vspace][]' + \r\n\t\t'map[B|C|A|name][X|form|Q|area]' + \r\n\t\t'h2[E|align][#|S]' + \r\n\t\t'iframe[A|longdesc|name|src|frameborder|marginwidth|marginheight|scrolling|align|width|height][#|Y]' + \r\n\t\t'h3[E|align][#|S]' + \r\n\t\t'tt[E][#|S]' + \r\n\t\t'i[E][#|S]' + \r\n\t\t'b[E][#|S]' + \r\n\t\t'u[E][#|S]' + \r\n\t\t's[E][#|S]' + \r\n\t\t'strike[E][#|S]' + \r\n\t\t'big[E][#|S]' + \r\n\t\t'small[E][#|S]' + \r\n\t\t'font[A|B|size|color|face][#|S]' + \r\n\t\t'basefont[id|size|color|face][]' + \r\n\t\t'em[E][#|S]' + \r\n\t\t'strong[E][#|S]' + \r\n\t\t'dfn[E][#|S]' + \r\n\t\t'code[E][#|S]' + \r\n\t\t'q[E|cite][#|S]' + \r\n\t\t'samp[E][#|S]' + \r\n\t\t'kbd[E][#|S]' + \r\n\t\t'var[E][#|S]' + \r\n\t\t'cite[E][#|S]' + \r\n\t\t'abbr[E][#|S]' + \r\n\t\t'acronym[E][#|S]' + \r\n\t\t'sub[E][#|S]' + \r\n\t\t'sup[E][#|S]' + \r\n\t\t'input[E|D|type|name|value|checked|disabled|readonly|size|maxlength|src|alt|usemap|onselect|onchange|accept|align][]' + \r\n\t\t'select[E|name|size|multiple|disabled|tabindex|onfocus|onblur|onchange][optgroup|option]' + \r\n\t\t'optgroup[E|disabled|label][option]' + \r\n\t\t'option[E|selected|disabled|label|value][]' + \r\n\t\t'textarea[E|D|name|rows|cols|disabled|readonly|onselect|onchange][]' + \r\n\t\t'label[E|for|accesskey|onfocus|onblur][#|S]' + \r\n\t\t'button[E|D|name|value|type|disabled][#|p|T|div|U|W|table|G|object|applet|img|map|K|N|Q]' + \r\n\t\t'h4[E|align][#|S]' + \r\n\t\t'ins[E|cite|datetime][#|Y]' + \r\n\t\t'h5[E|align][#|S]' + \r\n\t\t'del[E|cite|datetime][#|Y]' + \r\n\t\t'h6[E|align][#|S]' + \r\n\t\t'div[E|align][#|Y]' + \r\n\t\t'ul[E|type|compact][li]' + \r\n\t\t'li[E|type|value][#|Y]' + \r\n\t\t'ol[E|type|compact|start][li]' + \r\n\t\t'dl[E|compact][dt|dd]' + \r\n\t\t'dt[E][#|S]' + \r\n\t\t'dd[E][#|Y]' + \r\n\t\t'menu[E|compact][li]' + \r\n\t\t'dir[E|compact][li]' + \r\n\t\t'pre[E|width|xml:space][#|ZA]' + \r\n\t\t'hr[E|align|noshade|size|width][]' + \r\n\t\t'blockquote[E|cite][#|Y]' + \r\n\t\t'address[E][#|S|p]' + \r\n\t\t'center[E][#|Y]' + \r\n\t\t'noframes[E][#|Y]' + \r\n\t\t'isindex[A|B|prompt][]' + \r\n\t\t'fieldset[E][#|legend|Y]' + \r\n\t\t'legend[E|accesskey|align][#|S]' + \r\n\t\t'table[E|summary|width|border|frame|rules|cellspacing|cellpadding|align|bgcolor][caption|col|colgroup|thead|tfoot|tbody|tr]' + \r\n\t\t'caption[E|align][#|S]' + \r\n\t\t'col[ZG][]' + \r\n\t\t'colgroup[ZG][col]' + \r\n\t\t'thead[ZF][tr]' + \r\n\t\t'tr[ZF|bgcolor][th|td]' + \r\n\t\t'th[E|ZE][#|Y]' + \r\n\t\t'form[E|action|method|name|enctype|onsubmit|onreset|accept|accept-charset|target][#|X|R|Q]' + \r\n\t\t'noscript[E][#|Y]' + \r\n\t\t'td[E|ZE][#|Y]' + \r\n\t\t'tfoot[ZF][tr]' + \r\n\t\t'tbody[ZF][tr]' + \r\n\t\t'area[E|D|shape|coords|href|nohref|alt|target][]' + \r\n\t\t'base[id|href|target][]' + \r\n\t\t'body[E|onload|onunload|background|bgcolor|text|link|vlink|alink][#|Y]'\r\n\t);\r\n\r\n\tboolAttrMap = makeMap('checked,compact,declare,defer,disabled,ismap,multiple,nohref,noresize,noshade,nowrap,readonly,selected,autoplay,loop,controls');\r\n\tshortEndedElementsMap = makeMap('area,base,basefont,br,col,frame,hr,img,input,isindex,link,meta,param,embed,source');\r\n\tnonEmptyElementsMap = tinymce.extend(makeMap('td,th,iframe,video,audio,object'), shortEndedElementsMap);\r\n\tdefaultWhiteSpaceElementsMap = makeMap('pre,script,style,textarea');\r\n\tselfClosingElementsMap = makeMap('colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr');\r\n\r\n\ttinymce.html.Schema = function(settings) {\r\n\t\tvar self = this, elements = {}, children = {}, patternElements = [], validStyles, whiteSpaceElementsMap;\r\n\r\n\t\tsettings = settings || {};\r\n\r\n\t\t// Allow all elements and attributes if verify_html is set to false\r\n\t\tif (settings.verify_html === false)\r\n\t\t\tsettings.valid_elements = '*[*]';\r\n\r\n\t\t// Build styles list\r\n\t\tif (settings.valid_styles) {\r\n\t\t\tvalidStyles = {};\r\n\r\n\t\t\t// Convert styles into a rule list\r\n\t\t\teach(settings.valid_styles, function(value, key) {\r\n\t\t\t\tvalidStyles[key] = tinymce.explode(value);\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\twhiteSpaceElementsMap = settings.whitespace_elements ? makeMap(settings.whitespace_elements) : defaultWhiteSpaceElementsMap;\r\n\r\n\t\t// Converts a wildcard expression string to a regexp for example *a will become /.*a/.\r\n\t\tfunction patternToRegExp(str) {\r\n\t\t\treturn new RegExp('^' + str.replace(/([?+*])/g, '.$1') + '$');\r\n\t\t};\r\n\r\n\t\t// Parses the specified valid_elements string and adds to the current rules\r\n\t\t// This function is a bit hard to read since it's heavily optimized for speed\r\n\t\tfunction addValidElements(valid_elements) {\r\n\t\t\tvar ei, el, ai, al, yl, matches, element, attr, attrData, elementName, attrName, attrType, attributes, attributesOrder,\r\n\t\t\t\tprefix, outputName, globalAttributes, globalAttributesOrder, transElement, key, childKey, value,\r\n\t\t\t\telementRuleRegExp = /^([#+-])?([^\\[\\/]+)(?:\\/([^\\[]+))?(?:\\[([^\\]]+)\\])?$/,\r\n\t\t\t\tattrRuleRegExp = /^([!\\-])?(\\w+::\\w+|[^=:<]+)?(?:([=:<])(.*))?$/,\r\n\t\t\t\thasPatternsRegExp = /[*?+]/;\r\n\r\n\t\t\tif (valid_elements) {\r\n\t\t\t\t// Split valid elements into an array with rules\r\n\t\t\t\tvalid_elements = split(valid_elements);\r\n\r\n\t\t\t\tif (elements['@']) {\r\n\t\t\t\t\tglobalAttributes = elements['@'].attributes;\r\n\t\t\t\t\tglobalAttributesOrder = elements['@'].attributesOrder;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Loop all rules\r\n\t\t\t\tfor (ei = 0, el = valid_elements.length; ei < el; ei++) {\r\n\t\t\t\t\t// Parse element rule\r\n\t\t\t\t\tmatches = elementRuleRegExp.exec(valid_elements[ei]);\r\n\t\t\t\t\tif (matches) {\r\n\t\t\t\t\t\t// Setup local names for matches\r\n\t\t\t\t\t\tprefix = matches[1];\r\n\t\t\t\t\t\telementName = matches[2];\r\n\t\t\t\t\t\toutputName = matches[3];\r\n\t\t\t\t\t\tattrData = matches[4];\r\n\r\n\t\t\t\t\t\t// Create new attributes and attributesOrder\r\n\t\t\t\t\t\tattributes = {};\r\n\t\t\t\t\t\tattributesOrder = [];\r\n\r\n\t\t\t\t\t\t// Create the new element\r\n\t\t\t\t\t\telement = {\r\n\t\t\t\t\t\t\tattributes : attributes,\r\n\t\t\t\t\t\t\tattributesOrder : attributesOrder\r\n\t\t\t\t\t\t};\r\n\r\n\t\t\t\t\t\t// Padd empty elements prefix\r\n\t\t\t\t\t\tif (prefix === '#')\r\n\t\t\t\t\t\t\telement.paddEmpty = true;\r\n\r\n\t\t\t\t\t\t// Remove empty elements prefix\r\n\t\t\t\t\t\tif (prefix === '-')\r\n\t\t\t\t\t\t\telement.removeEmpty = true;\r\n\r\n\t\t\t\t\t\t// Copy attributes from global rule into current rule\r\n\t\t\t\t\t\tif (globalAttributes) {\r\n\t\t\t\t\t\t\tfor (key in globalAttributes)\r\n\t\t\t\t\t\t\t\tattributes[key] = globalAttributes[key];\r\n\r\n\t\t\t\t\t\t\tattributesOrder.push.apply(attributesOrder, globalAttributesOrder);\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// Attributes defined\r\n\t\t\t\t\t\tif (attrData) {\r\n\t\t\t\t\t\t\tattrData = split(attrData, '|');\r\n\t\t\t\t\t\t\tfor (ai = 0, al = attrData.length; ai < al; ai++) {\r\n\t\t\t\t\t\t\t\tmatches = attrRuleRegExp.exec(attrData[ai]);\r\n\t\t\t\t\t\t\t\tif (matches) {\r\n\t\t\t\t\t\t\t\t\tattr = {};\r\n\t\t\t\t\t\t\t\t\tattrType = matches[1];\r\n\t\t\t\t\t\t\t\t\tattrName = matches[2].replace(/::/g, ':');\r\n\t\t\t\t\t\t\t\t\tprefix = matches[3];\r\n\t\t\t\t\t\t\t\t\tvalue = matches[4];\r\n\r\n\t\t\t\t\t\t\t\t\t// Required\r\n\t\t\t\t\t\t\t\t\tif (attrType === '!') {\r\n\t\t\t\t\t\t\t\t\t\telement.attributesRequired = element.attributesRequired || [];\r\n\t\t\t\t\t\t\t\t\t\telement.attributesRequired.push(attrName);\r\n\t\t\t\t\t\t\t\t\t\tattr.required = true;\r\n\t\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t\t// Denied from global\r\n\t\t\t\t\t\t\t\t\tif (attrType === '-') {\r\n\t\t\t\t\t\t\t\t\t\tdelete attributes[attrName];\r\n\t\t\t\t\t\t\t\t\t\tattributesOrder.splice(tinymce.inArray(attributesOrder, attrName), 1);\r\n\t\t\t\t\t\t\t\t\t\tcontinue;\r\n\t\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t\t// Default value\r\n\t\t\t\t\t\t\t\t\tif (prefix) {\r\n\t\t\t\t\t\t\t\t\t\t// Default value\r\n\t\t\t\t\t\t\t\t\t\tif (prefix === '=') {\r\n\t\t\t\t\t\t\t\t\t\t\telement.attributesDefault = element.attributesDefault || [];\r\n\t\t\t\t\t\t\t\t\t\t\telement.attributesDefault.push({name: attrName, value: value});\r\n\t\t\t\t\t\t\t\t\t\t\tattr.defaultValue = value;\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t\t\t// Forced value\r\n\t\t\t\t\t\t\t\t\t\tif (prefix === ':') {\r\n\t\t\t\t\t\t\t\t\t\t\telement.attributesForced = element.attributesForced || [];\r\n\t\t\t\t\t\t\t\t\t\t\telement.attributesForced.push({name: attrName, value: value});\r\n\t\t\t\t\t\t\t\t\t\t\tattr.forcedValue = value;\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t\t\t// Required values\r\n\t\t\t\t\t\t\t\t\t\tif (prefix === '<')\r\n\t\t\t\t\t\t\t\t\t\t\tattr.validValues = makeMap(value, '?');\r\n\t\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t\t// Check for attribute patterns\r\n\t\t\t\t\t\t\t\t\tif (hasPatternsRegExp.test(attrName)) {\r\n\t\t\t\t\t\t\t\t\t\telement.attributePatterns = element.attributePatterns || [];\r\n\t\t\t\t\t\t\t\t\t\tattr.pattern = patternToRegExp(attrName);\r\n\t\t\t\t\t\t\t\t\t\telement.attributePatterns.push(attr);\r\n\t\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\t\t// Add attribute to order list if it doesn't already exist\r\n\t\t\t\t\t\t\t\t\t\tif (!attributes[attrName])\r\n\t\t\t\t\t\t\t\t\t\t\tattributesOrder.push(attrName);\r\n\r\n\t\t\t\t\t\t\t\t\t\tattributes[attrName] = attr;\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// Global rule, store away these for later usage\r\n\t\t\t\t\t\tif (!globalAttributes && elementName == '@') {\r\n\t\t\t\t\t\t\tglobalAttributes = attributes;\r\n\t\t\t\t\t\t\tglobalAttributesOrder = attributesOrder;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// Handle substitute elements such as b/strong\r\n\t\t\t\t\t\tif (outputName) {\r\n\t\t\t\t\t\t\telement.outputName = elementName;\r\n\t\t\t\t\t\t\telements[outputName] = element;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// Add pattern or exact element\r\n\t\t\t\t\t\tif (hasPatternsRegExp.test(elementName)) {\r\n\t\t\t\t\t\t\telement.pattern = patternToRegExp(elementName);\r\n\t\t\t\t\t\t\tpatternElements.push(element);\r\n\t\t\t\t\t\t} else\r\n\t\t\t\t\t\t\telements[elementName] = element;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tfunction setValidElements(valid_elements) {\r\n\t\t\telements = {};\r\n\t\t\tpatternElements = [];\r\n\r\n\t\t\taddValidElements(valid_elements);\r\n\r\n\t\t\teach(transitional, function(element, name) {\r\n\t\t\t\tchildren[name] = element.children;\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\t// Adds custom non HTML elements to the schema\r\n\t\tfunction addCustomElements(custom_elements) {\r\n\t\t\tvar customElementRegExp = /^(~)?(.+)$/;\r\n\r\n\t\t\tif (custom_elements) {\r\n\t\t\t\teach(split(custom_elements), function(rule) {\r\n\t\t\t\t\tvar matches = customElementRegExp.exec(rule),\r\n\t\t\t\t\t\tinline = matches[1] === '~',\r\n\t\t\t\t\t\tcloneName = inline ? 'span' : 'div',\r\n\t\t\t\t\t\tname = matches[2];\r\n\r\n\t\t\t\t\tchildren[name] = children[cloneName];\r\n\t\t\t\t\tcustomElementsMap[name] = cloneName;\r\n\r\n\t\t\t\t\t// If it's not marked as inline then add it to valid block elements\r\n\t\t\t\t\tif (!inline)\r\n\t\t\t\t\t\tblockElementsMap[name] = {};\r\n\r\n\t\t\t\t\t// Add custom elements at span/div positions\r\n\t\t\t\t\teach(children, function(element, child) {\r\n\t\t\t\t\t\tif (element[cloneName])\r\n\t\t\t\t\t\t\telement[name] = element[cloneName];\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\t// Adds valid children to the schema object\r\n\t\tfunction addValidChildren(valid_children) {\r\n\t\t\tvar childRuleRegExp = /^([+\\-]?)(\\w+)\\[([^\\]]+)\\]$/;\r\n\r\n\t\t\tif (valid_children) {\r\n\t\t\t\teach(split(valid_children), function(rule) {\r\n\t\t\t\t\tvar matches = childRuleRegExp.exec(rule), parent, prefix;\r\n\r\n\t\t\t\t\tif (matches) {\r\n\t\t\t\t\t\tprefix = matches[1];\r\n\r\n\t\t\t\t\t\t// Add/remove items from default\r\n\t\t\t\t\t\tif (prefix)\r\n\t\t\t\t\t\t\tparent = children[matches[2]];\r\n\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\tparent = children[matches[2]] = {'#comment' : {}};\r\n\r\n\t\t\t\t\t\tparent = children[matches[2]];\r\n\r\n\t\t\t\t\t\teach(split(matches[3], '|'), function(child) {\r\n\t\t\t\t\t\t\tif (prefix === '-')\r\n\t\t\t\t\t\t\t\tdelete parent[child];\r\n\t\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\t\tparent[child] = {};\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tfunction getElementRule(name) {\r\n\t\t\tvar element = elements[name], i;\r\n\r\n\t\t\t// Exact match found\r\n\t\t\tif (element)\r\n\t\t\t\treturn element;\r\n\r\n\t\t\t// No exact match then try the patterns\r\n\t\t\ti = patternElements.length;\r\n\t\t\twhile (i--) {\r\n\t\t\t\telement = patternElements[i];\r\n\r\n\t\t\t\tif (element.pattern.test(name))\r\n\t\t\t\t\treturn element;\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tif (!settings.valid_elements) {\r\n\t\t\t// No valid elements defined then clone the elements from the transitional spec\r\n\t\t\teach(transitional, function(element, name) {\r\n\t\t\t\telements[name] = {\r\n\t\t\t\t\tattributes : element.attributes,\r\n\t\t\t\t\tattributesOrder : element.attributesOrder\r\n\t\t\t\t};\r\n\r\n\t\t\t\tchildren[name] = element.children;\r\n\t\t\t});\r\n\r\n\t\t\t// Switch these\r\n\t\t\teach(split('strong/b,em/i'), function(item) {\r\n\t\t\t\titem = split(item, '/');\r\n\t\t\t\telements[item[1]].outputName = item[0];\r\n\t\t\t});\r\n\r\n\t\t\t// Add default alt attribute for images\r\n\t\t\telements.img.attributesDefault = [{name: 'alt', value: ''}];\r\n\r\n\t\t\t// Remove these if they are empty by default\r\n\t\t\teach(split('ol,ul,sub,sup,blockquote,span,font,a,table,tbody,tr'), function(name) {\r\n\t\t\t\telements[name].removeEmpty = true;\r\n\t\t\t});\r\n\r\n\t\t\t// Padd these by default\r\n\t\t\teach(split('p,h1,h2,h3,h4,h5,h6,th,td,pre,div,address,caption'), function(name) {\r\n\t\t\t\telements[name].paddEmpty = true;\r\n\t\t\t});\r\n\t\t} else\r\n\t\t\tsetValidElements(settings.valid_elements);\r\n\r\n\t\taddCustomElements(settings.custom_elements);\r\n\t\taddValidChildren(settings.valid_children);\r\n\t\taddValidElements(settings.extended_valid_elements);\r\n\r\n\t\t// Todo: Remove this when we fix list handling to be valid\r\n\t\taddValidChildren('+ol[ul|ol],+ul[ul|ol]');\r\n\r\n\t\t// If the user didn't allow span only allow internal spans\r\n\t\tif (!getElementRule('span'))\r\n\t\t\taddValidElements('span[!data-mce-type|*]');\r\n\r\n\t\t// Delete invalid elements\r\n\t\tif (settings.invalid_elements) {\r\n\t\t\ttinymce.each(tinymce.explode(settings.invalid_elements), function(item) {\r\n\t\t\t\tif (elements[item])\r\n\t\t\t\t\tdelete elements[item];\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\tself.children = children;\r\n\r\n\t\tself.styles = validStyles;\r\n\r\n\t\tself.getBoolAttrs = function() {\r\n\t\t\treturn boolAttrMap;\r\n\t\t};\r\n\r\n\t\tself.getBlockElements = function() {\r\n\t\t\treturn blockElementsMap;\r\n\t\t};\r\n\r\n\t\tself.getShortEndedElements = function() {\r\n\t\t\treturn shortEndedElementsMap;\r\n\t\t};\r\n\r\n\t\tself.getSelfClosingElements = function() {\r\n\t\t\treturn selfClosingElementsMap;\r\n\t\t};\r\n\r\n\t\tself.getNonEmptyElements = function() {\r\n\t\t\treturn nonEmptyElementsMap;\r\n\t\t};\r\n\r\n\t\tself.getWhiteSpaceElements = function() {\r\n\t\t\treturn whiteSpaceElementsMap;\r\n\t\t};\r\n\r\n\t\tself.isValidChild = function(name, child) {\r\n\t\t\tvar parent = children[name];\r\n\r\n\t\t\treturn !!(parent && parent[child]);\r\n\t\t};\r\n\r\n\t\tself.getElementRule = getElementRule;\r\n\r\n\t\tself.getCustomElements = function() {\r\n\t\t\treturn customElementsMap;\r\n\t\t};\r\n\r\n\t\tself.addValidElements = addValidElements;\r\n\r\n\t\tself.setValidElements = setValidElements;\r\n\r\n\t\tself.addCustomElements = addCustomElements;\r\n\r\n\t\tself.addValidChildren = addValidChildren;\r\n\t};\r\n\r\n\t// Expose boolMap and blockElementMap as static properties for usage in DOMUtils\r\n\ttinymce.html.Schema.boolAttrMap = boolAttrMap;\r\n\ttinymce.html.Schema.blockElementsMap = blockElementsMap;\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\ttinymce.html.SaxParser = function(settings, schema) {\r\n\t\tvar self = this, noop = function() {};\r\n\r\n\t\tsettings = settings || {};\r\n\t\tself.schema = schema = schema || new tinymce.html.Schema();\r\n\r\n\t\tif (settings.fix_self_closing !== false)\r\n\t\t\tsettings.fix_self_closing = true;\r\n\r\n\t\t// Add handler functions from settings and setup default handlers\r\n\t\ttinymce.each('comment cdata text start end pi doctype'.split(' '), function(name) {\r\n\t\t\tif (name)\r\n\t\t\t\tself[name] = settings[name] || noop;\r\n\t\t});\r\n\r\n\t\tself.parse = function(html) {\r\n\t\t\tvar self = this, matches, index = 0, value, endRegExp, stack = [], attrList, i, text, name, isInternalElement, removeInternalElements,\r\n\t\t\t\tshortEndedElements, fillAttrsMap, isShortEnded, validate, elementRule, isValidElement, attr, attribsValue, invalidPrefixRegExp,\r\n\t\t\t\tvalidAttributesMap, validAttributePatterns, attributesRequired, attributesDefault, attributesForced, selfClosing,\r\n\t\t\t\ttokenRegExp, attrRegExp, specialElements, attrValue, idCount = 0, decode = tinymce.html.Entities.decode, fixSelfClosing, isIE;\r\n\r\n\t\t\tfunction processEndTag(name) {\r\n\t\t\t\tvar pos, i;\r\n\r\n\t\t\t\t// Find position of parent of the same type\r\n\t\t\t\tpos = stack.length;\r\n\t\t\t\twhile (pos--) {\r\n\t\t\t\t\tif (stack[pos].name === name)\r\n\t\t\t\t\t\tbreak;\t\t\t\t\t\t\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Found parent\r\n\t\t\t\tif (pos >= 0) {\r\n\t\t\t\t\t// Close all the open elements\r\n\t\t\t\t\tfor (i = stack.length - 1; i >= pos; i--) {\r\n\t\t\t\t\t\tname = stack[i];\r\n\r\n\t\t\t\t\t\tif (name.valid)\r\n\t\t\t\t\t\t\tself.end(name.name);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Remove the open elements from the stack\r\n\t\t\t\t\tstack.length = pos;\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\t\t\t// Precompile RegExps and map objects\r\n\t\t\ttokenRegExp = new RegExp('<(?:' +\r\n\t\t\t\t'(?:!--([\\\\w\\\\W]*?)-->)|' + // Comment\r\n\t\t\t\t'(?:!\\\\[CDATA\\\\[([\\\\w\\\\W]*?)\\\\]\\\\]>)|' + // CDATA\r\n\t\t\t\t'(?:!DOCTYPE([\\\\w\\\\W]*?)>)|' + // DOCTYPE\r\n\t\t\t\t'(?:\\\\?([^\\\\s\\\\/<>]+) ?([\\\\w\\\\W]*?)[?/]>)|' + // PI\r\n\t\t\t\t'(?:\\\\/([^>]+)>)|' + // End element\r\n\t\t\t\t'(?:([^\\\\s\\\\/<>]+)\\\\s*((?:[^\"\\'>]+(?:(?:\"[^\"]*\")|(?:\\'[^\\']*\\')|[^>]*))*)>)' + // Start element\r\n\t\t\t')', 'g');\r\n\r\n\t\t\tattrRegExp = /([\\w:\\-]+)(?:\\s*=\\s*(?:(?:\\\"((?:\\\\.|[^\\\"])*)\\\")|(?:\\'((?:\\\\.|[^\\'])*)\\')|([^>\\s]+)))?/g;\r\n\t\t\tspecialElements = {\r\n\t\t\t\t'script' : /<\\/script[^>]*>/gi,\r\n\t\t\t\t'style' : /<\\/style[^>]*>/gi,\r\n\t\t\t\t'noscript' : /<\\/noscript[^>]*>/gi\r\n\t\t\t};\r\n\r\n\t\t\t// Setup lookup tables for empty elements and boolean attributes\r\n\t\t\tshortEndedElements = schema.getShortEndedElements();\r\n\t\t\tselfClosing = schema.getSelfClosingElements();\r\n\t\t\tfillAttrsMap = schema.getBoolAttrs();\r\n\t\t\tvalidate = settings.validate;\r\n\t\t\tremoveInternalElements = settings.remove_internals;\r\n\t\t\tfixSelfClosing = settings.fix_self_closing;\r\n\t\t\tisIE = tinymce.isIE;\r\n\t\t\tinvalidPrefixRegExp = /^:/;\r\n\r\n\t\t\twhile (matches = tokenRegExp.exec(html)) {\r\n\t\t\t\t// Text\r\n\t\t\t\tif (index < matches.index)\r\n\t\t\t\t\tself.text(decode(html.substr(index, matches.index - index)));\r\n\r\n\t\t\t\tif (value = matches[6]) { // End element\r\n\t\t\t\t\tvalue = value.toLowerCase();\r\n\r\n\t\t\t\t\t// IE will add a \":\" in front of elements it doesn't understand like custom elements or HTML5 elements\r\n\t\t\t\t\tif (isIE && invalidPrefixRegExp.test(value))\r\n\t\t\t\t\t\tvalue = value.substr(1);\r\n\r\n\t\t\t\t\tprocessEndTag(value);\r\n\t\t\t\t} else if (value = matches[7]) { // Start element\r\n\t\t\t\t\tvalue = value.toLowerCase();\r\n\r\n\t\t\t\t\t// IE will add a \":\" in front of elements it doesn't understand like custom elements or HTML5 elements\r\n\t\t\t\t\tif (isIE && invalidPrefixRegExp.test(value))\r\n\t\t\t\t\t\tvalue = value.substr(1);\r\n\r\n\t\t\t\t\tisShortEnded = value in shortEndedElements;\r\n\r\n\t\t\t\t\t// Is self closing tag for example an <li> after an open <li>\r\n\t\t\t\t\tif (fixSelfClosing && selfClosing[value] && stack.length > 0 && stack[stack.length - 1].name === value)\r\n\t\t\t\t\t\tprocessEndTag(value);\r\n\r\n\t\t\t\t\t// Validate element\r\n\t\t\t\t\tif (!validate || (elementRule = schema.getElementRule(value))) {\r\n\t\t\t\t\t\tisValidElement = true;\r\n\r\n\t\t\t\t\t\t// Grab attributes map and patters when validation is enabled\r\n\t\t\t\t\t\tif (validate) {\r\n\t\t\t\t\t\t\tvalidAttributesMap = elementRule.attributes;\r\n\t\t\t\t\t\t\tvalidAttributePatterns = elementRule.attributePatterns;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// Parse attributes\r\n\t\t\t\t\t\tif (attribsValue = matches[8]) {\r\n\t\t\t\t\t\t\tisInternalElement = attribsValue.indexOf('data-mce-type') !== -1; // Check if the element is an internal element\r\n\r\n\t\t\t\t\t\t\t// If the element has internal attributes then remove it if we are told to do so\r\n\t\t\t\t\t\t\tif (isInternalElement && removeInternalElements)\r\n\t\t\t\t\t\t\t\tisValidElement = false;\r\n\r\n\t\t\t\t\t\t\tattrList = [];\r\n\t\t\t\t\t\t\tattrList.map = {};\r\n\r\n\t\t\t\t\t\t\tattribsValue.replace(attrRegExp, function(match, name, value, val2, val3) {\r\n\t\t\t\t\t\t\t\tvar attrRule, i;\r\n\r\n\t\t\t\t\t\t\t\tname = name.toLowerCase();\r\n\t\t\t\t\t\t\t\tvalue = name in fillAttrsMap ? name : decode(value || val2 || val3 || ''); // Handle boolean attribute than value attribute\r\n\r\n\t\t\t\t\t\t\t\t// Validate name and value\r\n\t\t\t\t\t\t\t\tif (validate && !isInternalElement && name.indexOf('data-') !== 0) {\r\n\t\t\t\t\t\t\t\t\tattrRule = validAttributesMap[name];\r\n\r\n\t\t\t\t\t\t\t\t\t// Find rule by pattern matching\r\n\t\t\t\t\t\t\t\t\tif (!attrRule && validAttributePatterns) {\r\n\t\t\t\t\t\t\t\t\t\ti = validAttributePatterns.length;\r\n\t\t\t\t\t\t\t\t\t\twhile (i--) {\r\n\t\t\t\t\t\t\t\t\t\t\tattrRule = validAttributePatterns[i];\r\n\t\t\t\t\t\t\t\t\t\t\tif (attrRule.pattern.test(name))\r\n\t\t\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t\t\t// No rule matched\r\n\t\t\t\t\t\t\t\t\t\tif (i === -1)\r\n\t\t\t\t\t\t\t\t\t\t\tattrRule = null;\r\n\t\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t\t// No attribute rule found\r\n\t\t\t\t\t\t\t\t\tif (!attrRule)\r\n\t\t\t\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\t\t\t\t// Validate value\r\n\t\t\t\t\t\t\t\t\tif (attrRule.validValues && !(value in attrRule.validValues))\r\n\t\t\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t// Add attribute to list and map\r\n\t\t\t\t\t\t\t\tattrList.map[name] = value;\r\n\t\t\t\t\t\t\t\tattrList.push({\r\n\t\t\t\t\t\t\t\t\tname: name,\r\n\t\t\t\t\t\t\t\t\tvalue: value\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tattrList = [];\r\n\t\t\t\t\t\t\tattrList.map = {};\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// Process attributes if validation is enabled\r\n\t\t\t\t\t\tif (validate && !isInternalElement) {\r\n\t\t\t\t\t\t\tattributesRequired = elementRule.attributesRequired;\r\n\t\t\t\t\t\t\tattributesDefault = elementRule.attributesDefault;\r\n\t\t\t\t\t\t\tattributesForced = elementRule.attributesForced;\r\n\r\n\t\t\t\t\t\t\t// Handle forced attributes\r\n\t\t\t\t\t\t\tif (attributesForced) {\r\n\t\t\t\t\t\t\t\ti = attributesForced.length;\r\n\t\t\t\t\t\t\t\twhile (i--) {\r\n\t\t\t\t\t\t\t\t\tattr = attributesForced[i];\r\n\t\t\t\t\t\t\t\t\tname = attr.name;\r\n\t\t\t\t\t\t\t\t\tattrValue = attr.value;\r\n\r\n\t\t\t\t\t\t\t\t\tif (attrValue === '{$uid}')\r\n\t\t\t\t\t\t\t\t\t\tattrValue = 'mce_' + idCount++;\r\n\r\n\t\t\t\t\t\t\t\t\tattrList.map[name] = attrValue;\r\n\t\t\t\t\t\t\t\t\tattrList.push({name: name, value: attrValue});\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t// Handle default attributes\r\n\t\t\t\t\t\t\tif (attributesDefault) {\r\n\t\t\t\t\t\t\t\ti = attributesDefault.length;\r\n\t\t\t\t\t\t\t\twhile (i--) {\r\n\t\t\t\t\t\t\t\t\tattr = attributesDefault[i];\r\n\t\t\t\t\t\t\t\t\tname = attr.name;\r\n\r\n\t\t\t\t\t\t\t\t\tif (!(name in attrList.map)) {\r\n\t\t\t\t\t\t\t\t\t\tattrValue = attr.value;\r\n\r\n\t\t\t\t\t\t\t\t\t\tif (attrValue === '{$uid}')\r\n\t\t\t\t\t\t\t\t\t\t\tattrValue = 'mce_' + idCount++;\r\n\r\n\t\t\t\t\t\t\t\t\t\tattrList.map[name] = attrValue;\r\n\t\t\t\t\t\t\t\t\t\tattrList.push({name: name, value: attrValue});\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t// Handle required attributes\r\n\t\t\t\t\t\t\tif (attributesRequired) {\r\n\t\t\t\t\t\t\t\ti = attributesRequired.length;\r\n\t\t\t\t\t\t\t\twhile (i--) {\r\n\t\t\t\t\t\t\t\t\tif (attributesRequired[i] in attrList.map)\r\n\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t// None of the required attributes where found\r\n\t\t\t\t\t\t\t\tif (i === -1)\r\n\t\t\t\t\t\t\t\t\tisValidElement = false;\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t// Invalidate element if it's marked as bogus\r\n\t\t\t\t\t\t\tif (attrList.map['data-mce-bogus'])\r\n\t\t\t\t\t\t\t\tisValidElement = false;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tif (isValidElement)\r\n\t\t\t\t\t\t\tself.start(value, attrList, isShortEnded);\r\n\t\t\t\t\t} else\r\n\t\t\t\t\t\tisValidElement = false;\r\n\r\n\t\t\t\t\t// Treat script, noscript and style a bit different since they may include code that looks like elements\r\n\t\t\t\t\tif (endRegExp = specialElements[value]) {\r\n\t\t\t\t\t\tendRegExp.lastIndex = index = matches.index + matches[0].length;\r\n\r\n\t\t\t\t\t\tif (matches = endRegExp.exec(html)) {\r\n\t\t\t\t\t\t\tif (isValidElement)\r\n\t\t\t\t\t\t\t\ttext = html.substr(index, matches.index - index);\r\n\r\n\t\t\t\t\t\t\tindex = matches.index + matches[0].length;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\ttext = html.substr(index);\r\n\t\t\t\t\t\t\tindex = html.length;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tif (isValidElement && text.length > 0)\r\n\t\t\t\t\t\t\tself.text(text, true);\r\n\r\n\t\t\t\t\t\tif (isValidElement)\r\n\t\t\t\t\t\t\tself.end(value);\r\n\r\n\t\t\t\t\t\ttokenRegExp.lastIndex = index;\r\n\t\t\t\t\t\tcontinue;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Push value on to stack\r\n\t\t\t\t\tif (!isShortEnded) {\r\n\t\t\t\t\t\tif (!attribsValue || attribsValue.indexOf('/') != attribsValue.length - 1)\r\n\t\t\t\t\t\t\tstack.push({name: value, valid: isValidElement});\r\n\t\t\t\t\t\telse if (isValidElement)\r\n\t\t\t\t\t\t\tself.end(value);\r\n\t\t\t\t\t}\r\n\t\t\t\t} else if (value = matches[1]) { // Comment\r\n\t\t\t\t\tself.comment(value);\r\n\t\t\t\t} else if (value = matches[2]) { // CDATA\r\n\t\t\t\t\tself.cdata(value);\r\n\t\t\t\t} else if (value = matches[3]) { // DOCTYPE\r\n\t\t\t\t\tself.doctype(value);\r\n\t\t\t\t} else if (value = matches[4]) { // PI\r\n\t\t\t\t\tself.pi(value, matches[5]);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tindex = matches.index + matches[0].length;\r\n\t\t\t}\r\n\r\n\t\t\t// Text\r\n\t\t\tif (index < html.length)\r\n\t\t\t\tself.text(decode(html.substr(index)));\r\n\r\n\t\t\t// Close any open elements\r\n\t\t\tfor (i = stack.length - 1; i >= 0; i--) {\r\n\t\t\t\tvalue = stack[i];\r\n\r\n\t\t\t\tif (value.valid)\r\n\t\t\t\t\tself.end(value.name);\r\n\t\t\t}\r\n\t\t};\r\n\t}\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\tvar whiteSpaceRegExp = /^[ \\t\\r\\n]*$/, typeLookup = {\r\n\t\t'#text' : 3,\r\n\t\t'#comment' : 8,\r\n\t\t'#cdata' : 4,\r\n\t\t'#pi' : 7,\r\n\t\t'#doctype' : 10,\r\n\t\t'#document-fragment' : 11\r\n\t};\r\n\r\n\t// Walks the tree left/right\r\n\tfunction walk(node, root_node, prev) {\r\n\t\tvar sibling, parent, startName = prev ? 'lastChild' : 'firstChild', siblingName = prev ? 'prev' : 'next';\r\n\r\n\t\t// Walk into nodes if it has a start\r\n\t\tif (node[startName])\r\n\t\t\treturn node[startName];\r\n\r\n\t\t// Return the sibling if it has one\r\n\t\tif (node !== root_node) {\r\n\t\t\tsibling = node[siblingName];\r\n\r\n\t\t\tif (sibling)\r\n\t\t\t\treturn sibling;\r\n\r\n\t\t\t// Walk up the parents to look for siblings\r\n\t\t\tfor (parent = node.parent; parent && parent !== root_node; parent = parent.parent) {\r\n\t\t\t\tsibling = parent[siblingName];\r\n\r\n\t\t\t\tif (sibling)\r\n\t\t\t\t\treturn sibling;\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\tfunction Node(name, type) {\r\n\t\tthis.name = name;\r\n\t\tthis.type = type;\r\n\r\n\t\tif (type === 1) {\r\n\t\t\tthis.attributes = [];\r\n\t\t\tthis.attributes.map = {};\r\n\t\t}\r\n\t}\r\n\r\n\ttinymce.extend(Node.prototype, {\r\n\t\treplace : function(node) {\r\n\t\t\tvar self = this;\r\n\r\n\t\t\tif (node.parent)\r\n\t\t\t\tnode.remove();\r\n\r\n\t\t\tself.insert(node, self);\r\n\t\t\tself.remove();\r\n\r\n\t\t\treturn self;\r\n\t\t},\r\n\r\n\t\tattr : function(name, value) {\r\n\t\t\tvar self = this, attrs, i, undef;\r\n\r\n\t\t\tif (typeof name !== \"string\") {\r\n\t\t\t\tfor (i in name)\r\n\t\t\t\t\tself.attr(i, name[i]);\r\n\r\n\t\t\t\treturn self;\r\n\t\t\t}\r\n\r\n\t\t\tif (attrs = self.attributes) {\r\n\t\t\t\tif (value !== undef) {\r\n\t\t\t\t\t// Remove attribute\r\n\t\t\t\t\tif (value === null) {\r\n\t\t\t\t\t\tif (name in attrs.map) {\r\n\t\t\t\t\t\t\tdelete attrs.map[name];\r\n\r\n\t\t\t\t\t\t\ti = attrs.length;\r\n\t\t\t\t\t\t\twhile (i--) {\r\n\t\t\t\t\t\t\t\tif (attrs[i].name === name) {\r\n\t\t\t\t\t\t\t\t\tattrs = attrs.splice(i, 1);\r\n\t\t\t\t\t\t\t\t\treturn self;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\treturn self;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Set attribute\r\n\t\t\t\t\tif (name in attrs.map) {\r\n\t\t\t\t\t\t// Set attribute\r\n\t\t\t\t\t\ti = attrs.length;\r\n\t\t\t\t\t\twhile (i--) {\r\n\t\t\t\t\t\t\tif (attrs[i].name === name) {\r\n\t\t\t\t\t\t\t\tattrs[i].value = value;\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else\r\n\t\t\t\t\t\tattrs.push({name: name, value: value});\r\n\r\n\t\t\t\t\tattrs.map[name] = value;\r\n\r\n\t\t\t\t\treturn self;\r\n\t\t\t\t} else {\r\n\t\t\t\t\treturn attrs.map[name];\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tclone : function() {\r\n\t\t\tvar self = this, clone = new Node(self.name, self.type), i, l, selfAttrs, selfAttr, cloneAttrs;\r\n\r\n\t\t\t// Clone element attributes\r\n\t\t\tif (selfAttrs = self.attributes) {\r\n\t\t\t\tcloneAttrs = [];\r\n\t\t\t\tcloneAttrs.map = {};\r\n\r\n\t\t\t\tfor (i = 0, l = selfAttrs.length; i < l; i++) {\r\n\t\t\t\t\tselfAttr = selfAttrs[i];\r\n\r\n\t\t\t\t\t// Clone everything except id\r\n\t\t\t\t\tif (selfAttr.name !== 'id') {\r\n\t\t\t\t\t\tcloneAttrs[cloneAttrs.length] = {name: selfAttr.name, value: selfAttr.value};\r\n\t\t\t\t\t\tcloneAttrs.map[selfAttr.name] = selfAttr.value;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tclone.attributes = cloneAttrs;\r\n\t\t\t}\r\n\r\n\t\t\tclone.value = self.value;\r\n\t\t\tclone.shortEnded = self.shortEnded;\r\n\r\n\t\t\treturn clone;\r\n\t\t},\r\n\r\n\t\twrap : function(wrapper) {\r\n\t\t\tvar self = this;\r\n\r\n\t\t\tself.parent.insert(wrapper, self);\r\n\t\t\twrapper.append(self);\r\n\r\n\t\t\treturn self;\r\n\t\t},\r\n\r\n\t\tunwrap : function() {\r\n\t\t\tvar self = this, node, next;\r\n\r\n\t\t\tfor (node = self.firstChild; node; ) {\r\n\t\t\t\tnext = node.next;\r\n\t\t\t\tself.insert(node, self, true);\r\n\t\t\t\tnode = next;\r\n\t\t\t}\r\n\r\n\t\t\tself.remove();\r\n\t\t},\r\n\r\n\t\tremove : function() {\r\n\t\t\tvar self = this, parent = self.parent, next = self.next, prev = self.prev;\r\n\r\n\t\t\tif (parent) {\r\n\t\t\t\tif (parent.firstChild === self) {\r\n\t\t\t\t\tparent.firstChild = next;\r\n\r\n\t\t\t\t\tif (next)\r\n\t\t\t\t\t\tnext.prev = null;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tprev.next = next;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (parent.lastChild === self) {\r\n\t\t\t\t\tparent.lastChild = prev;\r\n\r\n\t\t\t\t\tif (prev)\r\n\t\t\t\t\t\tprev.next = null;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tnext.prev = prev;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tself.parent = self.next = self.prev = null;\r\n\t\t\t}\r\n\r\n\t\t\treturn self;\r\n\t\t},\r\n\r\n\t\tappend : function(node) {\r\n\t\t\tvar self = this, last;\r\n\r\n\t\t\tif (node.parent)\r\n\t\t\t\tnode.remove();\r\n\r\n\t\t\tlast = self.lastChild;\r\n\t\t\tif (last) {\r\n\t\t\t\tlast.next = node;\r\n\t\t\t\tnode.prev = last;\r\n\t\t\t\tself.lastChild = node;\r\n\t\t\t} else\r\n\t\t\t\tself.lastChild = self.firstChild = node;\r\n\r\n\t\t\tnode.parent = self;\r\n\r\n\t\t\treturn node;\r\n\t\t},\r\n\r\n\t\tinsert : function(node, ref_node, before) {\r\n\t\t\tvar parent;\r\n\r\n\t\t\tif (node.parent)\r\n\t\t\t\tnode.remove();\r\n\r\n\t\t\tparent = ref_node.parent || this;\r\n\r\n\t\t\tif (before) {\r\n\t\t\t\tif (ref_node === parent.firstChild)\r\n\t\t\t\t\tparent.firstChild = node;\r\n\t\t\t\telse\r\n\t\t\t\t\tref_node.prev.next = node;\r\n\r\n\t\t\t\tnode.prev = ref_node.prev;\r\n\t\t\t\tnode.next = ref_node;\r\n\t\t\t\tref_node.prev = node;\r\n\t\t\t} else {\r\n\t\t\t\tif (ref_node === parent.lastChild)\r\n\t\t\t\t\tparent.lastChild = node;\r\n\t\t\t\telse\r\n\t\t\t\t\tref_node.next.prev = node;\r\n\r\n\t\t\t\tnode.next = ref_node.next;\r\n\t\t\t\tnode.prev = ref_node;\r\n\t\t\t\tref_node.next = node;\r\n\t\t\t}\r\n\r\n\t\t\tnode.parent = parent;\r\n\r\n\t\t\treturn node;\r\n\t\t},\r\n\r\n\t\tgetAll : function(name) {\r\n\t\t\tvar self = this, node, collection = [];\r\n\r\n\t\t\tfor (node = self.firstChild; node; node = walk(node, self)) {\r\n\t\t\t\tif (node.name === name)\r\n\t\t\t\t\tcollection.push(node);\r\n\t\t\t}\r\n\r\n\t\t\treturn collection;\r\n\t\t},\r\n\r\n\t\tempty : function() {\r\n\t\t\tvar self = this, nodes, i, node;\r\n\r\n\t\t\t// Remove all children\r\n\t\t\tif (self.firstChild) {\r\n\t\t\t\tnodes = [];\r\n\r\n\t\t\t\t// Collect the children\r\n\t\t\t\tfor (node = self.firstChild; node; node = walk(node, self))\r\n\t\t\t\t\tnodes.push(node);\r\n\r\n\t\t\t\t// Remove the children\r\n\t\t\t\ti = nodes.length;\r\n\t\t\t\twhile (i--) {\r\n\t\t\t\t\tnode = nodes[i];\r\n\t\t\t\t\tnode.parent = node.firstChild = node.lastChild = node.next = node.prev = null;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tself.firstChild = self.lastChild = null;\r\n\r\n\t\t\treturn self;\r\n\t\t},\r\n\r\n\t\tisEmpty : function(elements) {\r\n\t\t\tvar self = this, node = self.firstChild, i, name;\r\n\r\n\t\t\tif (node) {\r\n\t\t\t\tdo {\r\n\t\t\t\t\tif (node.type === 1) {\r\n\t\t\t\t\t\t// Ignore bogus elements\r\n\t\t\t\t\t\tif (node.attributes.map['data-mce-bogus'])\r\n\t\t\t\t\t\t\tcontinue;\r\n\r\n\t\t\t\t\t\t// Keep empty elements like <img />\r\n\t\t\t\t\t\tif (elements[node.name])\r\n\t\t\t\t\t\t\treturn false;\r\n\r\n\t\t\t\t\t\t// Keep elements with data attributes or name attribute like <a name=\"1\"></a>\r\n\t\t\t\t\t\ti = node.attributes.length;\r\n\t\t\t\t\t\twhile (i--) {\r\n\t\t\t\t\t\t\tname = node.attributes[i].name;\r\n\t\t\t\t\t\t\tif (name === \"name\" || name.indexOf('data-') === 0)\r\n\t\t\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Keep non whitespace text nodes\r\n\t\t\t\t\tif ((node.type === 3 && !whiteSpaceRegExp.test(node.value)))\r\n\t\t\t\t\t\treturn false;\r\n\t\t\t\t} while (node = walk(node, self));\r\n\t\t\t}\r\n\r\n\t\t\treturn true;\r\n\t\t},\r\n\r\n\t\twalk : function(prev) {\r\n\t\t\treturn walk(this, null, prev);\r\n\t\t}\r\n\t});\r\n\r\n\ttinymce.extend(Node, {\r\n\t\tcreate : function(name, attrs) {\r\n\t\t\tvar node, attrName;\r\n\r\n\t\t\t// Create node\r\n\t\t\tnode = new Node(name, typeLookup[name] || 1);\r\n\r\n\t\t\t// Add attributes if needed\r\n\t\t\tif (attrs) {\r\n\t\t\t\tfor (attrName in attrs)\r\n\t\t\t\t\tnode.attr(attrName, attrs[attrName]);\r\n\t\t\t}\r\n\r\n\t\t\treturn node;\r\n\t\t}\r\n\t});\r\n\r\n\ttinymce.html.Node = Node;\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\tvar Node = tinymce.html.Node;\r\n\r\n\ttinymce.html.DomParser = function(settings, schema) {\r\n\t\tvar self = this, nodeFilters = {}, attributeFilters = [], matchedNodes = {}, matchedAttributes = {};\r\n\r\n\t\tsettings = settings || {};\r\n\t\tsettings.validate = \"validate\" in settings ? settings.validate : true;\r\n\t\tsettings.root_name = settings.root_name || 'body';\r\n\t\tself.schema = schema = schema || new tinymce.html.Schema();\r\n\r\n\t\tfunction fixInvalidChildren(nodes) {\r\n\t\t\tvar ni, node, parent, parents, newParent, currentNode, tempNode, childNode, i,\r\n\t\t\t\tchildClone, nonEmptyElements, nonSplitableElements, sibling, nextNode;\r\n\r\n\t\t\tnonSplitableElements = tinymce.makeMap('tr,td,th,tbody,thead,tfoot,table');\r\n\t\t\tnonEmptyElements = schema.getNonEmptyElements();\r\n\r\n\t\t\tfor (ni = 0; ni < nodes.length; ni++) {\r\n\t\t\t\tnode = nodes[ni];\r\n\r\n\t\t\t\t// Already removed\r\n\t\t\t\tif (!node.parent)\r\n\t\t\t\t\tcontinue;\r\n\r\n\t\t\t\t// Get list of all parent nodes until we find a valid parent to stick the child into\r\n\t\t\t\tparents = [node];\r\n\t\t\t\tfor (parent = node.parent; parent && !schema.isValidChild(parent.name, node.name) && !nonSplitableElements[parent.name]; parent = parent.parent)\r\n\t\t\t\t\tparents.push(parent);\r\n\r\n\t\t\t\t// Found a suitable parent\r\n\t\t\t\tif (parent && parents.length > 1) {\r\n\t\t\t\t\t// Reverse the array since it makes looping easier\r\n\t\t\t\t\tparents.reverse();\r\n\r\n\t\t\t\t\t// Clone the related parent and insert that after the moved node\r\n\t\t\t\t\tnewParent = currentNode = self.filterNode(parents[0].clone());\r\n\r\n\t\t\t\t\t// Start cloning and moving children on the left side of the target node\r\n\t\t\t\t\tfor (i = 0; i < parents.length - 1; i++) {\r\n\t\t\t\t\t\tif (schema.isValidChild(currentNode.name, parents[i].name)) {\r\n\t\t\t\t\t\t\ttempNode = self.filterNode(parents[i].clone());\r\n\t\t\t\t\t\t\tcurrentNode.append(tempNode);\r\n\t\t\t\t\t\t} else\r\n\t\t\t\t\t\t\ttempNode = currentNode;\r\n\r\n\t\t\t\t\t\tfor (childNode = parents[i].firstChild; childNode && childNode != parents[i + 1]; ) {\r\n\t\t\t\t\t\t\tnextNode = childNode.next;\r\n\t\t\t\t\t\t\ttempNode.append(childNode);\r\n\t\t\t\t\t\t\tchildNode = nextNode;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tcurrentNode = tempNode;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (!newParent.isEmpty(nonEmptyElements)) {\r\n\t\t\t\t\t\tparent.insert(newParent, parents[0], true);\r\n\t\t\t\t\t\tparent.insert(node, newParent);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tparent.insert(node, parents[0], true);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Check if the element is empty by looking through it's contents and special treatment for <p><br /></p>\r\n\t\t\t\t\tparent = parents[0];\r\n\t\t\t\t\tif (parent.isEmpty(nonEmptyElements) || parent.firstChild === parent.lastChild && parent.firstChild.name === 'br') {\r\n\t\t\t\t\t\tparent.empty().remove();\r\n\t\t\t\t\t}\r\n\t\t\t\t} else if (node.parent) {\r\n\t\t\t\t\t// If it's an LI try to find a UL/OL for it or wrap it\r\n\t\t\t\t\tif (node.name === 'li') {\r\n\t\t\t\t\t\tsibling = node.prev;\r\n\t\t\t\t\t\tif (sibling && (sibling.name === 'ul' || sibling.name === 'ul')) {\r\n\t\t\t\t\t\t\tsibling.append(node);\r\n\t\t\t\t\t\t\tcontinue;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tsibling = node.next;\r\n\t\t\t\t\t\tif (sibling && (sibling.name === 'ul' || sibling.name === 'ul')) {\r\n\t\t\t\t\t\t\tsibling.insert(node, sibling.firstChild, true);\r\n\t\t\t\t\t\t\tcontinue;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tnode.wrap(self.filterNode(new Node('ul', 1)));\r\n\t\t\t\t\t\tcontinue;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Try wrapping the element in a DIV\r\n\t\t\t\t\tif (schema.isValidChild(node.parent.name, 'div') && schema.isValidChild('div', node.name)) {\r\n\t\t\t\t\t\tnode.wrap(self.filterNode(new Node('div', 1)));\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t// We failed wrapping it, then remove or unwrap it\r\n\t\t\t\t\t\tif (node.name === 'style' || node.name === 'script')\r\n\t\t\t\t\t\t\tnode.empty().remove();\r\n\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\tnode.unwrap();\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tself.filterNode = function(node) {\r\n\t\t\tvar i, name, list;\r\n\r\n\t\t\t// Run element filters\r\n\t\t\tif (name in nodeFilters) {\r\n\t\t\t\tlist = matchedNodes[name];\r\n\r\n\t\t\t\tif (list)\r\n\t\t\t\t\tlist.push(node);\r\n\t\t\t\telse\r\n\t\t\t\t\tmatchedNodes[name] = [node];\r\n\t\t\t}\r\n\r\n\t\t\t// Run attribute filters\r\n\t\t\ti = attributeFilters.length;\r\n\t\t\twhile (i--) {\r\n\t\t\t\tname = attributeFilters[i].name;\r\n\r\n\t\t\t\tif (name in node.attributes.map) {\r\n\t\t\t\t\tlist = matchedAttributes[name];\r\n\r\n\t\t\t\t\tif (list)\r\n\t\t\t\t\t\tlist.push(node);\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\tmatchedAttributes[name] = [node];\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\treturn node;\r\n\t\t};\r\n\r\n\t\tself.addNodeFilter = function(name, callback) {\r\n\t\t\ttinymce.each(tinymce.explode(name), function(name) {\r\n\t\t\t\tvar list = nodeFilters[name];\r\n\r\n\t\t\t\tif (!list)\r\n\t\t\t\t\tnodeFilters[name] = list = [];\r\n\r\n\t\t\t\tlist.push(callback);\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\tself.addAttributeFilter = function(name, callback) {\r\n\t\t\ttinymce.each(tinymce.explode(name), function(name) {\r\n\t\t\t\tvar i;\r\n\r\n\t\t\t\tfor (i = 0; i < attributeFilters.length; i++) {\r\n\t\t\t\t\tif (attributeFilters[i].name === name) {\r\n\t\t\t\t\t\tattributeFilters[i].callbacks.push(callback);\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tattributeFilters.push({name: name, callbacks: [callback]});\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\tself.parse = function(html, args) {\r\n\t\t\tvar parser, rootNode, node, nodes, i, l, fi, fl, list, name, validate,\r\n\t\t\t\tblockElements, startWhiteSpaceRegExp, invalidChildren = [],\r\n\t\t\t\tendWhiteSpaceRegExp, allWhiteSpaceRegExp, whiteSpaceElements, children, nonEmptyElements, rootBlockName;\r\n\r\n\t\t\targs = args || {};\r\n\t\t\tmatchedNodes = {};\r\n\t\t\tmatchedAttributes = {};\r\n\t\t\tblockElements = tinymce.extend(tinymce.makeMap('script,style,head,html,body,title,meta,param'), schema.getBlockElements());\r\n\t\t\tnonEmptyElements = schema.getNonEmptyElements();\r\n\t\t\tchildren = schema.children;\r\n\t\t\tvalidate = settings.validate;\r\n\t\t\trootBlockName = \"forced_root_block\" in args ? args.forced_root_block : settings.forced_root_block;\r\n\r\n\t\t\twhiteSpaceElements = schema.getWhiteSpaceElements();\r\n\t\t\tstartWhiteSpaceRegExp = /^[ \\t\\r\\n]+/;\r\n\t\t\tendWhiteSpaceRegExp = /[ \\t\\r\\n]+$/;\r\n\t\t\tallWhiteSpaceRegExp = /[ \\t\\r\\n]+/g;\r\n\r\n\t\t\tfunction addRootBlocks() {\r\n\t\t\t\tvar node = rootNode.firstChild, next, rootBlockNode;\r\n\r\n\t\t\t\twhile (node) {\r\n\t\t\t\t\tnext = node.next;\r\n\r\n\t\t\t\t\tif (node.type == 3 || (node.type == 1 && node.name !== 'p' && !blockElements[node.name] && !node.attr('data-mce-type'))) {\r\n\t\t\t\t\t\tif (!rootBlockNode) {\r\n\t\t\t\t\t\t\t// Create a new root block element\r\n\t\t\t\t\t\t\trootBlockNode = createNode(rootBlockName, 1);\r\n\t\t\t\t\t\t\trootNode.insert(rootBlockNode, node);\r\n\t\t\t\t\t\t\trootBlockNode.append(node);\r\n\t\t\t\t\t\t} else\r\n\t\t\t\t\t\t\trootBlockNode.append(node);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\trootBlockNode = null;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tnode = next;\r\n\t\t\t\t};\r\n\t\t\t};\r\n\r\n\t\t\tfunction createNode(name, type) {\r\n\t\t\t\tvar node = new Node(name, type), list;\r\n\r\n\t\t\t\tif (name in nodeFilters) {\r\n\t\t\t\t\tlist = matchedNodes[name];\r\n\r\n\t\t\t\t\tif (list)\r\n\t\t\t\t\t\tlist.push(node);\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\tmatchedNodes[name] = [node];\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn node;\r\n\t\t\t};\r\n\r\n\t\t\tfunction removeWhitespaceBefore(node) {\r\n\t\t\t\tvar textNode, textVal, sibling;\r\n\r\n\t\t\t\tfor (textNode = node.prev; textNode && textNode.type === 3; ) {\r\n\t\t\t\t\ttextVal = textNode.value.replace(endWhiteSpaceRegExp, '');\r\n\r\n\t\t\t\t\tif (textVal.length > 0) {\r\n\t\t\t\t\t\ttextNode.value = textVal;\r\n\t\t\t\t\t\ttextNode = textNode.prev;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tsibling = textNode.prev;\r\n\t\t\t\t\t\ttextNode.remove();\r\n\t\t\t\t\t\ttextNode = sibling;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\t\t\tparser = new tinymce.html.SaxParser({\r\n\t\t\t\tvalidate : validate,\r\n\t\t\t\tfix_self_closing : !validate, // Let the DOM parser handle <li> in <li> or <p> in <p> for better results\r\n\r\n\t\t\t\tcdata: function(text) {\r\n\t\t\t\t\tnode.append(createNode('#cdata', 4)).value = text;\r\n\t\t\t\t},\r\n\r\n\t\t\t\ttext: function(text, raw) {\r\n\t\t\t\t\tvar textNode;\r\n\r\n\t\t\t\t\t// Trim all redundant whitespace on non white space elements\r\n\t\t\t\t\tif (!whiteSpaceElements[node.name]) {\r\n\t\t\t\t\t\ttext = text.replace(allWhiteSpaceRegExp, ' ');\r\n\r\n\t\t\t\t\t\tif (node.lastChild && blockElements[node.lastChild.name])\r\n\t\t\t\t\t\t\ttext = text.replace(startWhiteSpaceRegExp, '');\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Do we need to create the node\r\n\t\t\t\t\tif (text.length !== 0) {\r\n\t\t\t\t\t\ttextNode = createNode('#text', 3);\r\n\t\t\t\t\t\ttextNode.raw = !!raw;\r\n\t\t\t\t\t\tnode.append(textNode).value = text;\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\r\n\t\t\t\tcomment: function(text) {\r\n\t\t\t\t\tnode.append(createNode('#comment', 8)).value = text;\r\n\t\t\t\t},\r\n\r\n\t\t\t\tpi: function(name, text) {\r\n\t\t\t\t\tnode.append(createNode(name, 7)).value = text;\r\n\t\t\t\t\tremoveWhitespaceBefore(node);\r\n\t\t\t\t},\r\n\r\n\t\t\t\tdoctype: function(text) {\r\n\t\t\t\t\tvar newNode;\r\n\t\t\r\n\t\t\t\t\tnewNode = node.append(createNode('#doctype', 10));\r\n\t\t\t\t\tnewNode.value = text;\r\n\t\t\t\t\tremoveWhitespaceBefore(node);\r\n\t\t\t\t},\r\n\r\n\t\t\t\tstart: function(name, attrs, empty) {\r\n\t\t\t\t\tvar newNode, attrFiltersLen, elementRule, textNode, attrName, text, sibling, parent;\r\n\r\n\t\t\t\t\telementRule = validate ? schema.getElementRule(name) : {};\r\n\t\t\t\t\tif (elementRule) {\r\n\t\t\t\t\t\tnewNode = createNode(elementRule.outputName || name, 1);\r\n\t\t\t\t\t\tnewNode.attributes = attrs;\r\n\t\t\t\t\t\tnewNode.shortEnded = empty;\r\n\r\n\t\t\t\t\t\tnode.append(newNode);\r\n\r\n\t\t\t\t\t\t// Check if node is valid child of the parent node is the child is\r\n\t\t\t\t\t\t// unknown we don't collect it since it's probably a custom element\r\n\t\t\t\t\t\tparent = children[node.name];\r\n\t\t\t\t\t\tif (parent && children[newNode.name] && !parent[newNode.name])\r\n\t\t\t\t\t\t\tinvalidChildren.push(newNode);\r\n\r\n\t\t\t\t\t\tattrFiltersLen = attributeFilters.length;\r\n\t\t\t\t\t\twhile (attrFiltersLen--) {\r\n\t\t\t\t\t\t\tattrName = attributeFilters[attrFiltersLen].name;\r\n\r\n\t\t\t\t\t\t\tif (attrName in attrs.map) {\r\n\t\t\t\t\t\t\t\tlist = matchedAttributes[attrName];\r\n\r\n\t\t\t\t\t\t\t\tif (list)\r\n\t\t\t\t\t\t\t\t\tlist.push(newNode);\r\n\t\t\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\t\t\tmatchedAttributes[attrName] = [newNode];\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// Trim whitespace before block\r\n\t\t\t\t\t\tif (blockElements[name])\r\n\t\t\t\t\t\t\tremoveWhitespaceBefore(newNode);\r\n\r\n\t\t\t\t\t\t// Change current node if the element wasn't empty i.e not <br /> or <img />\r\n\t\t\t\t\t\tif (!empty)\r\n\t\t\t\t\t\t\tnode = newNode;\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\r\n\t\t\t\tend: function(name) {\r\n\t\t\t\t\tvar textNode, elementRule, text, sibling, tempNode;\r\n\r\n\t\t\t\t\telementRule = validate ? schema.getElementRule(name) : {};\r\n\t\t\t\t\tif (elementRule) {\r\n\t\t\t\t\t\tif (blockElements[name]) {\r\n\t\t\t\t\t\t\tif (!whiteSpaceElements[node.name]) {\r\n\t\t\t\t\t\t\t\t// Trim whitespace at beginning of block\r\n\t\t\t\t\t\t\t\tfor (textNode = node.firstChild; textNode && textNode.type === 3; ) {\r\n\t\t\t\t\t\t\t\t\ttext = textNode.value.replace(startWhiteSpaceRegExp, '');\r\n\r\n\t\t\t\t\t\t\t\t\tif (text.length > 0) {\r\n\t\t\t\t\t\t\t\t\t\ttextNode.value = text;\r\n\t\t\t\t\t\t\t\t\t\ttextNode = textNode.next;\r\n\t\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\t\tsibling = textNode.next;\r\n\t\t\t\t\t\t\t\t\t\ttextNode.remove();\r\n\t\t\t\t\t\t\t\t\t\ttextNode = sibling;\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t// Trim whitespace at end of block\r\n\t\t\t\t\t\t\t\tfor (textNode = node.lastChild; textNode && textNode.type === 3; ) {\r\n\t\t\t\t\t\t\t\t\ttext = textNode.value.replace(endWhiteSpaceRegExp, '');\r\n\r\n\t\t\t\t\t\t\t\t\tif (text.length > 0) {\r\n\t\t\t\t\t\t\t\t\t\ttextNode.value = text;\r\n\t\t\t\t\t\t\t\t\t\ttextNode = textNode.prev;\r\n\t\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\t\tsibling = textNode.prev;\r\n\t\t\t\t\t\t\t\t\t\ttextNode.remove();\r\n\t\t\t\t\t\t\t\t\t\ttextNode = sibling;\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t// Trim start white space\r\n\t\t\t\t\t\t\ttextNode = node.prev;\r\n\t\t\t\t\t\t\tif (textNode && textNode.type === 3) {\r\n\t\t\t\t\t\t\t\ttext = textNode.value.replace(startWhiteSpaceRegExp, '');\r\n\r\n\t\t\t\t\t\t\t\tif (text.length > 0)\r\n\t\t\t\t\t\t\t\t\ttextNode.value = text;\r\n\t\t\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\t\t\ttextNode.remove();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// Handle empty nodes\r\n\t\t\t\t\t\tif (elementRule.removeEmpty || elementRule.paddEmpty) {\r\n\t\t\t\t\t\t\tif (node.isEmpty(nonEmptyElements)) {\r\n\t\t\t\t\t\t\t\tif (elementRule.paddEmpty)\r\n\t\t\t\t\t\t\t\t\tnode.empty().append(new Node('#text', '3')).value = '\\u00a0';\r\n\t\t\t\t\t\t\t\telse {\r\n\t\t\t\t\t\t\t\t\t// Leave nodes that have a name like <a name=\"name\">\r\n\t\t\t\t\t\t\t\t\tif (!node.attributes.map.name) {\r\n\t\t\t\t\t\t\t\t\t\ttempNode = node.parent;\r\n\t\t\t\t\t\t\t\t\t\tnode.empty().remove();\r\n\t\t\t\t\t\t\t\t\t\tnode = tempNode;\r\n\t\t\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tnode = node.parent;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}, schema);\r\n\r\n\t\t\trootNode = node = new Node(args.context || settings.root_name, 11);\r\n\r\n\t\t\tparser.parse(html);\r\n\r\n\t\t\t// Fix invalid children or report invalid children in a contextual parsing\r\n\t\t\tif (validate && invalidChildren.length) {\r\n\t\t\t\tif (!args.context)\r\n\t\t\t\t\tfixInvalidChildren(invalidChildren);\r\n\t\t\t\telse\r\n\t\t\t\t\targs.invalid = true;\r\n\t\t\t}\r\n\r\n\t\t\t// Wrap nodes in the root into block elements if the root is body\r\n\t\t\tif (rootBlockName && rootNode.name == 'body')\r\n\t\t\t\taddRootBlocks();\r\n\r\n\t\t\t// Run filters only when the contents is valid\r\n\t\t\tif (!args.invalid) {\r\n\t\t\t\t// Run node filters\r\n\t\t\t\tfor (name in matchedNodes) {\r\n\t\t\t\t\tlist = nodeFilters[name];\r\n\t\t\t\t\tnodes = matchedNodes[name];\r\n\r\n\t\t\t\t\t// Remove already removed children\r\n\t\t\t\t\tfi = nodes.length;\r\n\t\t\t\t\twhile (fi--) {\r\n\t\t\t\t\t\tif (!nodes[fi].parent)\r\n\t\t\t\t\t\t\tnodes.splice(fi, 1);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tfor (i = 0, l = list.length; i < l; i++)\r\n\t\t\t\t\t\tlist[i](nodes, name, args);\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Run attribute filters\r\n\t\t\t\tfor (i = 0, l = attributeFilters.length; i < l; i++) {\r\n\t\t\t\t\tlist = attributeFilters[i];\r\n\r\n\t\t\t\t\tif (list.name in matchedAttributes) {\r\n\t\t\t\t\t\tnodes = matchedAttributes[list.name];\r\n\r\n\t\t\t\t\t\t// Remove already removed children\r\n\t\t\t\t\t\tfi = nodes.length;\r\n\t\t\t\t\t\twhile (fi--) {\r\n\t\t\t\t\t\t\tif (!nodes[fi].parent)\r\n\t\t\t\t\t\t\t\tnodes.splice(fi, 1);\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tfor (fi = 0, fl = list.callbacks.length; fi < fl; fi++)\r\n\t\t\t\t\t\t\tlist.callbacks[fi](nodes, list.name, args);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\treturn rootNode;\r\n\t\t};\r\n\r\n\t\t// Remove <br> at end of block elements Gecko and WebKit injects BR elements to\r\n\t\t// make it possible to place the caret inside empty blocks. This logic tries to remove\r\n\t\t// these elements and keep br elements that where intended to be there intact\r\n\t\tif (settings.remove_trailing_brs) {\r\n\t\t\tself.addNodeFilter('br', function(nodes, name) {\r\n\t\t\t\tvar i, l = nodes.length, node, blockElements = schema.getBlockElements(),\r\n\t\t\t\t\tnonEmptyElements = schema.getNonEmptyElements(), parent, prev, prevName;\r\n\r\n\t\t\t\t// Remove brs from body element as well\r\n\t\t\t\tblockElements.body = 1;\r\n\r\n\t\t\t\t// Must loop forwards since it will otherwise remove all brs in <p>a<br><br><br></p>\r\n\t\t\t\tfor (i = 0; i < l; i++) {\r\n\t\t\t\t\tnode = nodes[i];\r\n\t\t\t\t\tparent = node.parent;\r\n\r\n\t\t\t\t\tif (blockElements[node.parent.name] && node === parent.lastChild) {\r\n\t\t\t\t\t\t// Loop all nodes to the right of the current node and check for other BR elements\r\n\t\t\t\t\t\t// excluding bookmarks since they are invisible\r\n\t\t\t\t\t\tprev = node.prev;\r\n\t\t\t\t\t\twhile (prev) {\r\n\t\t\t\t\t\t\tprevName = prev.name;\r\n\r\n\t\t\t\t\t\t\t// Ignore bookmarks\r\n\t\t\t\t\t\t\tif (prevName !== \"span\" || prev.attr('data-mce-type') !== 'bookmark') {\r\n\t\t\t\t\t\t\t\t// Found a non BR element\r\n\t\t\t\t\t\t\t\tif (prevName !== \"br\")\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\r\n\t\t\t\t\t\t\t\t// Found another br it's a <br><br> structure then don't remove anything\r\n\t\t\t\t\t\t\t\tif (prevName === 'br') {\r\n\t\t\t\t\t\t\t\t\tnode = null;\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tprev = prev.prev;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tif (node) {\r\n\t\t\t\t\t\t\tnode.remove();\r\n\r\n\t\t\t\t\t\t\t// Is the parent to be considered empty after we removed the BR\r\n\t\t\t\t\t\t\tif (parent.isEmpty(nonEmptyElements)) {\r\n\t\t\t\t\t\t\t\telementRule = schema.getElementRule(parent.name);\r\n\r\n\t\t\t\t\t\t\t\t// Remove or padd the element depending on schema rule\r\n\t\t\t\t\t\t\t\tif (elementRule) {\r\n\t\t\t\t\t\t\t\t  if (elementRule.removeEmpty)\r\n\t\t\t\t\t\t\t\t\t  parent.remove();\r\n\t\t\t\t\t\t\t\t  else if (elementRule.paddEmpty)\r\n\t\t\t\t\t\t\t\t\t  parent.empty().append(new tinymce.html.Node('#text', 3)).value = '\\u00a0';\r\n\t\t\t\t\t\t\t  }\r\n              }\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n})(tinymce);\r\n\r\ntinymce.html.Writer = function(settings) {\r\n\tvar html = [], indent, indentBefore, indentAfter, encode, htmlOutput;\r\n\r\n\tsettings = settings || {};\r\n\tindent = settings.indent;\r\n\tindentBefore = tinymce.makeMap(settings.indent_before || '');\r\n\tindentAfter = tinymce.makeMap(settings.indent_after || '');\r\n\tencode = tinymce.html.Entities.getEncodeFunc(settings.entity_encoding || 'raw', settings.entities);\r\n\thtmlOutput = settings.element_format == \"html\";\r\n\r\n\treturn {\r\n\t\tstart: function(name, attrs, empty) {\r\n\t\t\tvar i, l, attr, value;\r\n\r\n\t\t\tif (indent && indentBefore[name] && html.length > 0) {\r\n\t\t\t\tvalue = html[html.length - 1];\r\n\r\n\t\t\t\tif (value.length > 0 && value !== '\\n')\r\n\t\t\t\t\thtml.push('\\n');\r\n\t\t\t}\r\n\r\n\t\t\thtml.push('<', name);\r\n\r\n\t\t\tif (attrs) {\r\n\t\t\t\tfor (i = 0, l = attrs.length; i < l; i++) {\r\n\t\t\t\t\tattr = attrs[i];\r\n\t\t\t\t\thtml.push(' ', attr.name, '=\"', encode(attr.value, true), '\"');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (!empty || htmlOutput)\r\n\t\t\t\thtml[html.length] = '>';\r\n\t\t\telse\r\n\t\t\t\thtml[html.length] = ' />';\r\n\r\n\t\t\tif (empty && indent && indentAfter[name] && html.length > 0) {\r\n\t\t\t\tvalue = html[html.length - 1];\r\n\r\n\t\t\t\tif (value.length > 0 && value !== '\\n')\r\n\t\t\t\t\thtml.push('\\n');\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tend: function(name) {\r\n\t\t\tvar value;\r\n\r\n\t\t\t/*if (indent && indentBefore[name] && html.length > 0) {\r\n\t\t\t\tvalue = html[html.length - 1];\r\n\r\n\t\t\t\tif (value.length > 0 && value !== '\\n')\r\n\t\t\t\t\thtml.push('\\n');\r\n\t\t\t}*/\r\n\r\n\t\t\thtml.push('</', name, '>');\r\n\r\n\t\t\tif (indent && indentAfter[name] && html.length > 0) {\r\n\t\t\t\tvalue = html[html.length - 1];\r\n\r\n\t\t\t\tif (value.length > 0 && value !== '\\n')\r\n\t\t\t\t\thtml.push('\\n');\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\ttext: function(text, raw) {\r\n\t\t\tif (text.length > 0)\r\n\t\t\t\thtml[html.length] = raw ? text : encode(text);\r\n\t\t},\r\n\r\n\t\tcdata: function(text) {\r\n\t\t\thtml.push('<![CDATA[', text, ']]>');\r\n\t\t},\r\n\r\n\t\tcomment: function(text) {\r\n\t\t\thtml.push('<!--', text, '-->');\r\n\t\t},\r\n\r\n\t\tpi: function(name, text) {\r\n\t\t\tif (text)\r\n\t\t\t\thtml.push('<?', name, ' ', text, '?>');\r\n\t\t\telse\r\n\t\t\t\thtml.push('<?', name, '?>');\r\n\r\n\t\t\tif (indent)\r\n\t\t\t\thtml.push('\\n');\r\n\t\t},\r\n\r\n\t\tdoctype: function(text) {\r\n\t\t\thtml.push('<!DOCTYPE', text, '>', indent ? '\\n' : '');\r\n\t\t},\r\n\r\n\t\treset: function() {\r\n\t\t\thtml.length = 0;\r\n\t\t},\r\n\r\n\t\tgetContent: function() {\r\n\t\t\treturn html.join('').replace(/\\n$/, '');\r\n\t\t}\r\n\t};\r\n};\r\n\r\n(function(tinymce) {\r\n\ttinymce.html.Serializer = function(settings, schema) {\r\n\t\tvar self = this, writer = new tinymce.html.Writer(settings);\r\n\r\n\t\tsettings = settings || {};\r\n\t\tsettings.validate = \"validate\" in settings ? settings.validate : true;\r\n\r\n\t\tself.schema = schema = schema || new tinymce.html.Schema();\r\n\t\tself.writer = writer;\r\n\r\n\t\tself.serialize = function(node) {\r\n\t\t\tvar handlers, validate;\r\n\r\n\t\t\tvalidate = settings.validate;\r\n\r\n\t\t\thandlers = {\r\n\t\t\t\t// #text\r\n\t\t\t\t3: function(node, raw) {\r\n\t\t\t\t\twriter.text(node.value, node.raw);\r\n\t\t\t\t},\r\n\r\n\t\t\t\t// #comment\r\n\t\t\t\t8: function(node) {\r\n\t\t\t\t\twriter.comment(node.value);\r\n\t\t\t\t},\r\n\r\n\t\t\t\t// Processing instruction\r\n\t\t\t\t7: function(node) {\r\n\t\t\t\t\twriter.pi(node.name, node.value);\r\n\t\t\t\t},\r\n\r\n\t\t\t\t// Doctype\r\n\t\t\t\t10: function(node) {\r\n\t\t\t\t\twriter.doctype(node.value);\r\n\t\t\t\t},\r\n\r\n\t\t\t\t// CDATA\r\n\t\t\t\t4: function(node) {\r\n\t\t\t\t\twriter.cdata(node.value);\r\n\t\t\t\t},\r\n\r\n \t\t\t\t// Document fragment\r\n\t\t\t\t11: function(node) {\r\n\t\t\t\t\tif ((node = node.firstChild)) {\r\n\t\t\t\t\t\tdo {\r\n\t\t\t\t\t\t\twalk(node);\r\n\t\t\t\t\t\t} while (node = node.next);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\t\t\twriter.reset();\r\n\r\n\t\t\tfunction walk(node) {\r\n\t\t\t\tvar handler = handlers[node.type], name, isEmpty, attrs, attrName, attrValue, sortedAttrs, i, l, elementRule;\r\n\r\n\t\t\t\tif (!handler) {\r\n\t\t\t\t\tname = node.name;\r\n\t\t\t\t\tisEmpty = node.shortEnded;\r\n\t\t\t\t\tattrs = node.attributes;\r\n\r\n\t\t\t\t\t// Sort attributes\r\n\t\t\t\t\tif (validate && attrs && attrs.length > 1) {\r\n\t\t\t\t\t\tsortedAttrs = [];\r\n\t\t\t\t\t\tsortedAttrs.map = {};\r\n\r\n\t\t\t\t\t\telementRule = schema.getElementRule(node.name);\r\n\t\t\t\t\t\tfor (i = 0, l = elementRule.attributesOrder.length; i < l; i++) {\r\n\t\t\t\t\t\t\tattrName = elementRule.attributesOrder[i];\r\n\r\n\t\t\t\t\t\t\tif (attrName in attrs.map) {\r\n\t\t\t\t\t\t\t\tattrValue = attrs.map[attrName];\r\n\t\t\t\t\t\t\t\tsortedAttrs.map[attrName] = attrValue;\r\n\t\t\t\t\t\t\t\tsortedAttrs.push({name: attrName, value: attrValue});\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tfor (i = 0, l = attrs.length; i < l; i++) {\r\n\t\t\t\t\t\t\tattrName = attrs[i].name;\r\n\r\n\t\t\t\t\t\t\tif (!(attrName in sortedAttrs.map)) {\r\n\t\t\t\t\t\t\t\tattrValue = attrs.map[attrName];\r\n\t\t\t\t\t\t\t\tsortedAttrs.map[attrName] = attrValue;\r\n\t\t\t\t\t\t\t\tsortedAttrs.push({name: attrName, value: attrValue});\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tattrs = sortedAttrs;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\twriter.start(node.name, attrs, isEmpty);\r\n\r\n\t\t\t\t\tif (!isEmpty) {\r\n\t\t\t\t\t\tif ((node = node.firstChild)) {\r\n\t\t\t\t\t\t\tdo {\r\n\t\t\t\t\t\t\t\twalk(node);\r\n\t\t\t\t\t\t\t} while (node = node.next);\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\twriter.end(name);\r\n\t\t\t\t\t}\r\n\t\t\t\t} else\r\n\t\t\t\t\thandler(node);\r\n\t\t\t}\r\n\r\n\t\t\t// Serialize element and treat all non elements as fragments\r\n\t\t\tif (node.type == 1 && !settings.inner)\r\n\t\t\t\twalk(node);\r\n\t\t\telse\r\n\t\t\t\thandlers[11](node);\r\n\r\n\t\t\treturn writer.getContent();\r\n\t\t};\r\n\t}\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\t// Shorten names\r\n\tvar each = tinymce.each,\r\n\t\tis = tinymce.is,\r\n\t\tisWebKit = tinymce.isWebKit,\r\n\t\tisIE = tinymce.isIE,\r\n\t\tEntities = tinymce.html.Entities,\r\n\t\tsimpleSelectorRe = /^([a-z0-9],?)+$/i,\r\n\t\tblockElementsMap = tinymce.html.Schema.blockElementsMap,\r\n\t\twhiteSpaceRegExp = /^[ \\t\\r\\n]*$/;\r\n\r\n\ttinymce.create('tinymce.dom.DOMUtils', {\r\n\t\tdoc : null,\r\n\t\troot : null,\r\n\t\tfiles : null,\r\n\t\tpixelStyles : /^(top|left|bottom|right|width|height|borderWidth)$/,\r\n\t\tprops : {\r\n\t\t\t\"for\" : \"htmlFor\",\r\n\t\t\t\"class\" : \"className\",\r\n\t\t\tclassName : \"className\",\r\n\t\t\tchecked : \"checked\",\r\n\t\t\tdisabled : \"disabled\",\r\n\t\t\tmaxlength : \"maxLength\",\r\n\t\t\treadonly : \"readOnly\",\r\n\t\t\tselected : \"selected\",\r\n\t\t\tvalue : \"value\",\r\n\t\t\tid : \"id\",\r\n\t\t\tname : \"name\",\r\n\t\t\ttype : \"type\"\r\n\t\t},\r\n\r\n\t\tDOMUtils : function(d, s) {\r\n\t\t\tvar t = this, globalStyle, name;\r\n\r\n\t\t\tt.doc = d;\r\n\t\t\tt.win = window;\r\n\t\t\tt.files = {};\r\n\t\t\tt.cssFlicker = false;\r\n\t\t\tt.counter = 0;\r\n\t\t\tt.stdMode = !tinymce.isIE || d.documentMode >= 8;\r\n\t\t\tt.boxModel = !tinymce.isIE || d.compatMode == \"CSS1Compat\" || t.stdMode;\r\n\t\t\tt.hasOuterHTML = \"outerHTML\" in d.createElement(\"a\");\r\n\r\n\t\t\tt.settings = s = tinymce.extend({\r\n\t\t\t\tkeep_values : false,\r\n\t\t\t\thex_colors : 1\r\n\t\t\t}, s);\r\n\t\t\t\r\n\t\t\tt.schema = s.schema;\r\n\t\t\tt.styles = new tinymce.html.Styles({\r\n\t\t\t\turl_converter : s.url_converter,\r\n\t\t\t\turl_converter_scope : s.url_converter_scope\r\n\t\t\t}, s.schema);\r\n\r\n\t\t\t// Fix IE6SP2 flicker and check it failed for pre SP2\r\n\t\t\tif (tinymce.isIE6) {\r\n\t\t\t\ttry {\r\n\t\t\t\t\td.execCommand('BackgroundImageCache', false, true);\r\n\t\t\t\t} catch (e) {\r\n\t\t\t\t\tt.cssFlicker = true;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (isIE && s.schema) {\r\n\t\t\t\t// Add missing HTML 4/5 elements to IE\r\n\t\t\t\t('abbr article aside audio canvas ' +\r\n\t\t\t\t'details figcaption figure footer ' +\r\n\t\t\t\t'header hgroup mark menu meter nav ' +\r\n\t\t\t\t'output progress section summary ' +\r\n\t\t\t\t'time video').replace(/\\w+/g, function(name) {\r\n\t\t\t\t\td.createElement(name);\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// Create all custom elements\r\n\t\t\t\tfor (name in s.schema.getCustomElements()) {\r\n\t\t\t\t\td.createElement(name);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\ttinymce.addUnload(t.destroy, t);\r\n\t\t},\r\n\r\n\t\tgetRoot : function() {\r\n\t\t\tvar t = this, s = t.settings;\r\n\r\n\t\t\treturn (s && t.get(s.root_element)) || t.doc.body;\r\n\t\t},\r\n\r\n\t\tgetViewPort : function(w) {\r\n\t\t\tvar d, b;\r\n\r\n\t\t\tw = !w ? this.win : w;\r\n\t\t\td = w.document;\r\n\t\t\tb = this.boxModel ? d.documentElement : d.body;\r\n\r\n\t\t\t// Returns viewport size excluding scrollbars\r\n\t\t\treturn {\r\n\t\t\t\tx : w.pageXOffset || b.scrollLeft,\r\n\t\t\t\ty : w.pageYOffset || b.scrollTop,\r\n\t\t\t\tw : w.innerWidth || b.clientWidth,\r\n\t\t\t\th : w.innerHeight || b.clientHeight\r\n\t\t\t};\r\n\t\t},\r\n\r\n\t\tgetRect : function(e) {\r\n\t\t\tvar p, t = this, sr;\r\n\r\n\t\t\te = t.get(e);\r\n\t\t\tp = t.getPos(e);\r\n\t\t\tsr = t.getSize(e);\r\n\r\n\t\t\treturn {\r\n\t\t\t\tx : p.x,\r\n\t\t\t\ty : p.y,\r\n\t\t\t\tw : sr.w,\r\n\t\t\t\th : sr.h\r\n\t\t\t};\r\n\t\t},\r\n\r\n\t\tgetSize : function(e) {\r\n\t\t\tvar t = this, w, h;\r\n\r\n\t\t\te = t.get(e);\r\n\t\t\tw = t.getStyle(e, 'width');\r\n\t\t\th = t.getStyle(e, 'height');\r\n\r\n\t\t\t// Non pixel value, then force offset/clientWidth\r\n\t\t\tif (w.indexOf('px') === -1)\r\n\t\t\t\tw = 0;\r\n\r\n\t\t\t// Non pixel value, then force offset/clientWidth\r\n\t\t\tif (h.indexOf('px') === -1)\r\n\t\t\t\th = 0;\r\n\r\n\t\t\treturn {\r\n\t\t\t\tw : parseInt(w) || e.offsetWidth || e.clientWidth,\r\n\t\t\t\th : parseInt(h) || e.offsetHeight || e.clientHeight\r\n\t\t\t};\r\n\t\t},\r\n\r\n\t\tgetParent : function(n, f, r) {\r\n\t\t\treturn this.getParents(n, f, r, false);\r\n\t\t},\r\n\r\n\t\tgetParents : function(n, f, r, c) {\r\n\t\t\tvar t = this, na, se = t.settings, o = [];\r\n\r\n\t\t\tn = t.get(n);\r\n\t\t\tc = c === undefined;\r\n\r\n\t\t\tif (se.strict_root)\r\n\t\t\t\tr = r || t.getRoot();\r\n\r\n\t\t\t// Wrap node name as func\r\n\t\t\tif (is(f, 'string')) {\r\n\t\t\t\tna = f;\r\n\r\n\t\t\t\tif (f === '*') {\r\n\t\t\t\t\tf = function(n) {return n.nodeType == 1;};\r\n\t\t\t\t} else {\r\n\t\t\t\t\tf = function(n) {\r\n\t\t\t\t\t\treturn t.is(n, na);\r\n\t\t\t\t\t};\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\twhile (n) {\r\n\t\t\t\tif (n == r || !n.nodeType || n.nodeType === 9)\r\n\t\t\t\t\tbreak;\r\n\r\n\t\t\t\tif (!f || f(n)) {\r\n\t\t\t\t\tif (c)\r\n\t\t\t\t\t\to.push(n);\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\treturn n;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tn = n.parentNode;\r\n\t\t\t}\r\n\r\n\t\t\treturn c ? o : null;\r\n\t\t},\r\n\r\n\t\tget : function(e) {\r\n\t\t\tvar n;\r\n\r\n\t\t\tif (e && this.doc && typeof(e) == 'string') {\r\n\t\t\t\tn = e;\r\n\t\t\t\te = this.doc.getElementById(e);\r\n\r\n\t\t\t\t// IE and Opera returns meta elements when they match the specified input ID, but getElementsByName seems to do the trick\r\n\t\t\t\tif (e && e.id !== n)\r\n\t\t\t\t\treturn this.doc.getElementsByName(n)[1];\r\n\t\t\t}\r\n\r\n\t\t\treturn e;\r\n\t\t},\r\n\r\n\t\tgetNext : function(node, selector) {\r\n\t\t\treturn this._findSib(node, selector, 'nextSibling');\r\n\t\t},\r\n\r\n\t\tgetPrev : function(node, selector) {\r\n\t\t\treturn this._findSib(node, selector, 'previousSibling');\r\n\t\t},\r\n\r\n\r\n\t\tadd : function(p, n, a, h, c) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\treturn this.run(p, function(p) {\r\n\t\t\t\tvar e, k;\r\n\r\n\t\t\t\te = is(n, 'string') ? t.doc.createElement(n) : n;\r\n\t\t\t\tt.setAttribs(e, a);\r\n\r\n\t\t\t\tif (h) {\r\n\t\t\t\t\tif (h.nodeType)\r\n\t\t\t\t\t\te.appendChild(h);\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\tt.setHTML(e, h);\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn !c ? p.appendChild(e) : e;\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tcreate : function(n, a, h) {\r\n\t\t\treturn this.add(this.doc.createElement(n), n, a, h, 1);\r\n\t\t},\r\n\r\n\t\tcreateHTML : function(n, a, h) {\r\n\t\t\tvar o = '', t = this, k;\r\n\r\n\t\t\to += '<' + n;\r\n\r\n\t\t\tfor (k in a) {\r\n\t\t\t\tif (a.hasOwnProperty(k))\r\n\t\t\t\t\to += ' ' + k + '=\"' + t.encode(a[k]) + '\"';\r\n\t\t\t}\r\n\r\n\t\t\t// A call to tinymce.is doesn't work for some odd reason on IE9 possible bug inside their JS runtime\r\n\t\t\tif (typeof(h) != \"undefined\")\r\n\t\t\t\treturn o + '>' + h + '</' + n + '>';\r\n\r\n\t\t\treturn o + ' />';\r\n\t\t},\r\n\r\n\t\tremove : function(node, keep_children) {\r\n\t\t\treturn this.run(node, function(node) {\r\n\t\t\t\tvar child, parent = node.parentNode;\r\n\r\n\t\t\t\tif (!parent)\r\n\t\t\t\t\treturn null;\r\n\r\n\t\t\t\tif (keep_children) {\r\n\t\t\t\t\twhile (child = node.firstChild) {\r\n\t\t\t\t\t\t// IE 8 will crash if you don't remove completely empty text nodes\r\n\t\t\t\t\t\tif (!tinymce.isIE || child.nodeType !== 3 || child.nodeValue)\r\n\t\t\t\t\t\t\tparent.insertBefore(child, node);\r\n\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\tnode.removeChild(child);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn parent.removeChild(node);\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tsetStyle : function(n, na, v) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\treturn t.run(n, function(e) {\r\n\t\t\t\tvar s, i;\r\n\r\n\t\t\t\ts = e.style;\r\n\r\n\t\t\t\t// Camelcase it, if needed\r\n\t\t\t\tna = na.replace(/-(\\D)/g, function(a, b){\r\n\t\t\t\t\treturn b.toUpperCase();\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// Default px suffix on these\r\n\t\t\t\tif (t.pixelStyles.test(na) && (tinymce.is(v, 'number') || /^[\\-0-9\\.]+$/.test(v)))\r\n\t\t\t\t\tv += 'px';\r\n\r\n\t\t\t\tswitch (na) {\r\n\t\t\t\t\tcase 'opacity':\r\n\t\t\t\t\t\t// IE specific opacity\r\n\t\t\t\t\t\tif (isIE) {\r\n\t\t\t\t\t\t\ts.filter = v === '' ? '' : \"alpha(opacity=\" + (v * 100) + \")\";\r\n\r\n\t\t\t\t\t\t\tif (!n.currentStyle || !n.currentStyle.hasLayout)\r\n\t\t\t\t\t\t\t\ts.display = 'inline-block';\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// Fix for older browsers\r\n\t\t\t\t\t\ts[na] = s['-moz-opacity'] = s['-khtml-opacity'] = v || '';\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase 'float':\r\n\t\t\t\t\t\tisIE ? s.styleFloat = v : s.cssFloat = v;\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\r\n\t\t\t\t\tdefault:\r\n\t\t\t\t\t\ts[na] = v || '';\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Force update of the style data\r\n\t\t\t\tif (t.settings.update_styles)\r\n\t\t\t\t\tt.setAttrib(e, 'data-mce-style');\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tgetStyle : function(n, na, c) {\r\n\t\t\tn = this.get(n);\r\n\r\n\t\t\tif (!n)\r\n\t\t\t\treturn;\r\n\r\n\t\t\t// Gecko\r\n\t\t\tif (this.doc.defaultView && c) {\r\n\t\t\t\t// Remove camelcase\r\n\t\t\t\tna = na.replace(/[A-Z]/g, function(a){\r\n\t\t\t\t\treturn '-' + a;\r\n\t\t\t\t});\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\treturn this.doc.defaultView.getComputedStyle(n, null).getPropertyValue(na);\r\n\t\t\t\t} catch (ex) {\r\n\t\t\t\t\t// Old safari might fail\r\n\t\t\t\t\treturn null;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Camelcase it, if needed\r\n\t\t\tna = na.replace(/-(\\D)/g, function(a, b){\r\n\t\t\t\treturn b.toUpperCase();\r\n\t\t\t});\r\n\r\n\t\t\tif (na == 'float')\r\n\t\t\t\tna = isIE ? 'styleFloat' : 'cssFloat';\r\n\r\n\t\t\t// IE & Opera\r\n\t\t\tif (n.currentStyle && c)\r\n\t\t\t\treturn n.currentStyle[na];\r\n\r\n\t\t\treturn n.style ? n.style[na] : undefined;\r\n\t\t},\r\n\r\n\t\tsetStyles : function(e, o) {\r\n\t\t\tvar t = this, s = t.settings, ol;\r\n\r\n\t\t\tol = s.update_styles;\r\n\t\t\ts.update_styles = 0;\r\n\r\n\t\t\teach(o, function(v, n) {\r\n\t\t\t\tt.setStyle(e, n, v);\r\n\t\t\t});\r\n\r\n\t\t\t// Update style info\r\n\t\t\ts.update_styles = ol;\r\n\t\t\tif (s.update_styles)\r\n\t\t\t\tt.setAttrib(e, s.cssText);\r\n\t\t},\r\n\r\n\t\tremoveAllAttribs: function(e) {\r\n\t\t\treturn this.run(e, function(e) {\r\n\t\t\t\tvar i, attrs = e.attributes;\r\n\t\t\t\tfor (i = attrs.length - 1; i >= 0; i--) {\r\n\t\t\t\t\te.removeAttributeNode(attrs.item(i));\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tsetAttrib : function(e, n, v) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\t// Whats the point\r\n\t\t\tif (!e || !n)\r\n\t\t\t\treturn;\r\n\r\n\t\t\t// Strict XML mode\r\n\t\t\tif (t.settings.strict)\r\n\t\t\t\tn = n.toLowerCase();\r\n\r\n\t\t\treturn this.run(e, function(e) {\r\n\t\t\t\tvar s = t.settings;\r\n\r\n\t\t\t\tswitch (n) {\r\n\t\t\t\t\tcase \"style\":\r\n\t\t\t\t\t\tif (!is(v, 'string')) {\r\n\t\t\t\t\t\t\teach(v, function(v, n) {\r\n\t\t\t\t\t\t\t\tt.setStyle(e, n, v);\r\n\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// No mce_style for elements with these since they might get resized by the user\r\n\t\t\t\t\t\tif (s.keep_values) {\r\n\t\t\t\t\t\t\tif (v && !t._isRes(v))\r\n\t\t\t\t\t\t\t\te.setAttribute('data-mce-style', v, 2);\r\n\t\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\t\te.removeAttribute('data-mce-style', 2);\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\te.style.cssText = v;\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase \"class\":\r\n\t\t\t\t\t\te.className = v || ''; // Fix IE null bug\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase \"src\":\r\n\t\t\t\t\tcase \"href\":\r\n\t\t\t\t\t\tif (s.keep_values) {\r\n\t\t\t\t\t\t\tif (s.url_converter)\r\n\t\t\t\t\t\t\t\tv = s.url_converter.call(s.url_converter_scope || t, v, n, e);\r\n\r\n\t\t\t\t\t\t\tt.setAttrib(e, 'data-mce-' + n, v, 2);\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase \"shape\":\r\n\t\t\t\t\t\te.setAttribute('data-mce-style', v);\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (is(v) && v !== null && v.length !== 0)\r\n\t\t\t\t\te.setAttribute(n, '' + v, 2);\r\n\t\t\t\telse\r\n\t\t\t\t\te.removeAttribute(n, 2);\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tsetAttribs : function(e, o) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\treturn this.run(e, function(e) {\r\n\t\t\t\teach(o, function(v, n) {\r\n\t\t\t\t\tt.setAttrib(e, n, v);\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tgetAttrib : function(e, n, dv) {\r\n\t\t\tvar v, t = this, undef;\r\n\r\n\t\t\te = t.get(e);\r\n\r\n\t\t\tif (!e || e.nodeType !== 1)\r\n\t\t\t\treturn dv === undef ? false : dv;\r\n\r\n\t\t\tif (!is(dv))\r\n\t\t\t\tdv = '';\r\n\r\n\t\t\t// Try the mce variant for these\r\n\t\t\tif (/^(src|href|style|coords|shape)$/.test(n)) {\r\n\t\t\t\tv = e.getAttribute(\"data-mce-\" + n);\r\n\r\n\t\t\t\tif (v)\r\n\t\t\t\t\treturn v;\r\n\t\t\t}\r\n\r\n\t\t\tif (isIE && t.props[n]) {\r\n\t\t\t\tv = e[t.props[n]];\r\n\t\t\t\tv = v && v.nodeValue ? v.nodeValue : v;\r\n\t\t\t}\r\n\r\n\t\t\tif (!v)\r\n\t\t\t\tv = e.getAttribute(n, 2);\r\n\r\n\t\t\t// Check boolean attribs\r\n\t\t\tif (/^(checked|compact|declare|defer|disabled|ismap|multiple|nohref|noshade|nowrap|readonly|selected)$/.test(n)) {\r\n\t\t\t\tif (e[t.props[n]] === true && v === '')\r\n\t\t\t\t\treturn n;\r\n\r\n\t\t\t\treturn v ? n : '';\r\n\t\t\t}\r\n\r\n\t\t\t// Inner input elements will override attributes on form elements\r\n\t\t\tif (e.nodeName === \"FORM\" && e.getAttributeNode(n))\r\n\t\t\t\treturn e.getAttributeNode(n).nodeValue;\r\n\r\n\t\t\tif (n === 'style') {\r\n\t\t\t\tv = v || e.style.cssText;\r\n\r\n\t\t\t\tif (v) {\r\n\t\t\t\t\tv = t.serializeStyle(t.parseStyle(v), e.nodeName);\r\n\r\n\t\t\t\t\tif (t.settings.keep_values && !t._isRes(v))\r\n\t\t\t\t\t\te.setAttribute('data-mce-style', v);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Remove Apple and WebKit stuff\r\n\t\t\tif (isWebKit && n === \"class\" && v)\r\n\t\t\t\tv = v.replace(/(apple|webkit)\\-[a-z\\-]+/gi, '');\r\n\r\n\t\t\t// Handle IE issues\r\n\t\t\tif (isIE) {\r\n\t\t\t\tswitch (n) {\r\n\t\t\t\t\tcase 'rowspan':\r\n\t\t\t\t\tcase 'colspan':\r\n\t\t\t\t\t\t// IE returns 1 as default value\r\n\t\t\t\t\t\tif (v === 1)\r\n\t\t\t\t\t\t\tv = '';\r\n\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase 'size':\r\n\t\t\t\t\t\t// IE returns +0 as default value for size\r\n\t\t\t\t\t\tif (v === '+0' || v === 20 || v === 0)\r\n\t\t\t\t\t\t\tv = '';\r\n\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase 'width':\r\n\t\t\t\t\tcase 'height':\r\n\t\t\t\t\tcase 'vspace':\r\n\t\t\t\t\tcase 'checked':\r\n\t\t\t\t\tcase 'disabled':\r\n\t\t\t\t\tcase 'readonly':\r\n\t\t\t\t\t\tif (v === 0)\r\n\t\t\t\t\t\t\tv = '';\r\n\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase 'hspace':\r\n\t\t\t\t\t\t// IE returns -1 as default value\r\n\t\t\t\t\t\tif (v === -1)\r\n\t\t\t\t\t\t\tv = '';\r\n\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase 'maxlength':\r\n\t\t\t\t\tcase 'tabindex':\r\n\t\t\t\t\t\t// IE returns default value\r\n\t\t\t\t\t\tif (v === 32768 || v === 2147483647 || v === '32768')\r\n\t\t\t\t\t\t\tv = '';\r\n\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase 'multiple':\r\n\t\t\t\t\tcase 'compact':\r\n\t\t\t\t\tcase 'noshade':\r\n\t\t\t\t\tcase 'nowrap':\r\n\t\t\t\t\t\tif (v === 65535)\r\n\t\t\t\t\t\t\treturn n;\r\n\r\n\t\t\t\t\t\treturn dv;\r\n\r\n\t\t\t\t\tcase 'shape':\r\n\t\t\t\t\t\tv = v.toLowerCase();\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t// IE has odd anonymous function for event attributes\r\n\t\t\t\t\t\tif (n.indexOf('on') === 0 && v)\r\n\t\t\t\t\t\t\tv = tinymce._replace(/^function\\s+\\w+\\(\\)\\s+\\{\\s+(.*)\\s+\\}$/, '$1', '' + v);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\treturn (v !== undef && v !== null && v !== '') ? '' + v : dv;\r\n\t\t},\r\n\r\n\t\tgetPos : function(n, ro) {\r\n\t\t\tvar t = this, x = 0, y = 0, e, d = t.doc, r;\r\n\r\n\t\t\tn = t.get(n);\r\n\t\t\tro = ro || d.body;\r\n\r\n\t\t\tif (n) {\r\n\t\t\t\t// Use getBoundingClientRect if it exists since it's faster than looping offset nodes\r\n\t\t\t\tif (n.getBoundingClientRect) {\r\n\t\t\t\t\tn = n.getBoundingClientRect();\r\n\t\t\t\t\te = t.boxModel ? d.documentElement : d.body;\r\n\r\n\t\t\t\t\t// Add scroll offsets from documentElement or body since IE with the wrong box model will use d.body and so do WebKit\r\n\t\t\t\t\t// Also remove the body/documentelement clientTop/clientLeft on IE 6, 7 since they offset the position\r\n\t\t\t\t\tx = n.left + (d.documentElement.scrollLeft || d.body.scrollLeft) - e.clientTop;\r\n\t\t\t\t\ty = n.top + (d.documentElement.scrollTop || d.body.scrollTop) - e.clientLeft;\r\n\r\n\t\t\t\t\treturn {x : x, y : y};\r\n\t\t\t\t}\r\n\r\n\t\t\t\tr = n;\r\n\t\t\t\twhile (r && r != ro && r.nodeType) {\r\n\t\t\t\t\tx += r.offsetLeft || 0;\r\n\t\t\t\t\ty += r.offsetTop || 0;\r\n\t\t\t\t\tr = r.offsetParent;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tr = n.parentNode;\r\n\t\t\t\twhile (r && r != ro && r.nodeType) {\r\n\t\t\t\t\tx -= r.scrollLeft || 0;\r\n\t\t\t\t\ty -= r.scrollTop || 0;\r\n\t\t\t\t\tr = r.parentNode;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\treturn {x : x, y : y};\r\n\t\t},\r\n\r\n\t\tparseStyle : function(st) {\r\n\t\t\treturn this.styles.parse(st);\r\n\t\t},\r\n\r\n\t\tserializeStyle : function(o, name) {\r\n\t\t\treturn this.styles.serialize(o, name);\r\n\t\t},\r\n\r\n\t\tloadCSS : function(u) {\r\n\t\t\tvar t = this, d = t.doc, head;\r\n\r\n\t\t\tif (!u)\r\n\t\t\t\tu = '';\r\n\r\n\t\t\thead = t.select('head')[0];\r\n\r\n\t\t\teach(u.split(','), function(u) {\r\n\t\t\t\tvar link;\r\n\r\n\t\t\t\tif (t.files[u])\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\tt.files[u] = true;\r\n\t\t\t\tlink = t.create('link', {rel : 'stylesheet', href : tinymce._addVer(u)});\r\n\r\n\t\t\t\t// IE 8 has a bug where dynamically loading stylesheets would produce a 1 item remaining bug\r\n\t\t\t\t// This fix seems to resolve that issue by realcing the document ones a stylesheet finishes loading\r\n\t\t\t\t// It's ugly but it seems to work fine.\r\n\t\t\t\tif (isIE && d.documentMode && d.recalc) {\r\n\t\t\t\t\tlink.onload = function() {\r\n\t\t\t\t\t\tif (d.recalc)\r\n\t\t\t\t\t\t\td.recalc();\r\n\r\n\t\t\t\t\t\tlink.onload = null;\r\n\t\t\t\t\t};\r\n\t\t\t\t}\r\n\r\n\t\t\t\thead.appendChild(link);\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\taddClass : function(e, c) {\r\n\t\t\treturn this.run(e, function(e) {\r\n\t\t\t\tvar o;\r\n\r\n\t\t\t\tif (!c)\r\n\t\t\t\t\treturn 0;\r\n\r\n\t\t\t\tif (this.hasClass(e, c))\r\n\t\t\t\t\treturn e.className;\r\n\r\n\t\t\t\to = this.removeClass(e, c);\r\n\r\n\t\t\t\treturn e.className = (o != '' ? (o + ' ') : '') + c;\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tremoveClass : function(e, c) {\r\n\t\t\tvar t = this, re;\r\n\r\n\t\t\treturn t.run(e, function(e) {\r\n\t\t\t\tvar v;\r\n\r\n\t\t\t\tif (t.hasClass(e, c)) {\r\n\t\t\t\t\tif (!re)\r\n\t\t\t\t\t\tre = new RegExp(\"(^|\\\\s+)\" + c + \"(\\\\s+|$)\", \"g\");\r\n\r\n\t\t\t\t\tv = e.className.replace(re, ' ');\r\n\t\t\t\t\tv = tinymce.trim(v != ' ' ? v : '');\r\n\r\n\t\t\t\t\te.className = v;\r\n\r\n\t\t\t\t\t// Empty class attr\r\n\t\t\t\t\tif (!v) {\r\n\t\t\t\t\t\te.removeAttribute('class');\r\n\t\t\t\t\t\te.removeAttribute('className');\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\treturn v;\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn e.className;\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\thasClass : function(n, c) {\r\n\t\t\tn = this.get(n);\r\n\r\n\t\t\tif (!n || !c)\r\n\t\t\t\treturn false;\r\n\r\n\t\t\treturn (' ' + n.className + ' ').indexOf(' ' + c + ' ') !== -1;\r\n\t\t},\r\n\r\n\t\tshow : function(e) {\r\n\t\t\treturn this.setStyle(e, 'display', 'block');\r\n\t\t},\r\n\r\n\t\thide : function(e) {\r\n\t\t\treturn this.setStyle(e, 'display', 'none');\r\n\t\t},\r\n\r\n\t\tisHidden : function(e) {\r\n\t\t\te = this.get(e);\r\n\r\n\t\t\treturn !e || e.style.display == 'none' || this.getStyle(e, 'display') == 'none';\r\n\t\t},\r\n\r\n\t\tuniqueId : function(p) {\r\n\t\t\treturn (!p ? 'mce_' : p) + (this.counter++);\r\n\t\t},\r\n\r\n\t\tsetHTML : function(element, html) {\r\n\t\t\tvar self = this;\r\n\r\n\t\t\treturn self.run(element, function(element) {\r\n\t\t\t\tif (isIE) {\r\n\t\t\t\t\t// Remove all child nodes, IE keeps empty text nodes in DOM\r\n\t\t\t\t\twhile (element.firstChild)\r\n\t\t\t\t\t\telement.removeChild(element.firstChild);\r\n\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\t// IE will remove comments from the beginning\r\n\t\t\t\t\t\t// unless you padd the contents with something\r\n\t\t\t\t\t\telement.innerHTML = '<br />' + html;\r\n\t\t\t\t\t\telement.removeChild(element.firstChild);\r\n\t\t\t\t\t} catch (ex) {\r\n\t\t\t\t\t\t// IE sometimes produces an unknown runtime error on innerHTML if it's an block element within a block element for example a div inside a p\r\n\t\t\t\t\t\t// This seems to fix this problem\r\n\r\n\t\t\t\t\t\t// Create new div with HTML contents and a BR infront to keep comments\r\n\t\t\t\t\t\telement = self.create('div');\r\n\t\t\t\t\t\telement.innerHTML = '<br />' + html;\r\n\r\n\t\t\t\t\t\t// Add all children from div to target\r\n\t\t\t\t\t\teach (element.childNodes, function(node, i) {\r\n\t\t\t\t\t\t\t// Skip br element\r\n\t\t\t\t\t\t\tif (i)\r\n\t\t\t\t\t\t\t\telement.appendChild(node);\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t} else\r\n\t\t\t\t\telement.innerHTML = html;\r\n\r\n\t\t\t\treturn html;\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tgetOuterHTML : function(elm) {\r\n\t\t\tvar doc, self = this;\r\n\r\n\t\t\telm = self.get(elm);\r\n\r\n\t\t\tif (!elm)\r\n\t\t\t\treturn null;\r\n\r\n\t\t\tif (elm.nodeType === 1 && self.hasOuterHTML)\r\n\t\t\t\treturn elm.outerHTML;\r\n\r\n\t\t\tdoc = (elm.ownerDocument || self.doc).createElement(\"body\");\r\n\t\t\tdoc.appendChild(elm.cloneNode(true));\r\n\r\n\t\t\treturn doc.innerHTML;\r\n\t\t},\r\n\r\n\t\tsetOuterHTML : function(e, h, d) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tfunction setHTML(e, h, d) {\r\n\t\t\t\tvar n, tp;\r\n\r\n\t\t\t\ttp = d.createElement(\"body\");\r\n\t\t\t\ttp.innerHTML = h;\r\n\r\n\t\t\t\tn = tp.lastChild;\r\n\t\t\t\twhile (n) {\r\n\t\t\t\t\tt.insertAfter(n.cloneNode(true), e);\r\n\t\t\t\t\tn = n.previousSibling;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tt.remove(e);\r\n\t\t\t};\r\n\r\n\t\t\treturn this.run(e, function(e) {\r\n\t\t\t\te = t.get(e);\r\n\r\n\t\t\t\t// Only set HTML on elements\r\n\t\t\t\tif (e.nodeType == 1) {\r\n\t\t\t\t\td = d || e.ownerDocument || t.doc;\r\n\r\n\t\t\t\t\tif (isIE) {\r\n\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t// Try outerHTML for IE it sometimes produces an unknown runtime error\r\n\t\t\t\t\t\t\tif (isIE && e.nodeType == 1)\r\n\t\t\t\t\t\t\t\te.outerHTML = h;\r\n\t\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\t\tsetHTML(e, h, d);\r\n\t\t\t\t\t\t} catch (ex) {\r\n\t\t\t\t\t\t\t// Fix for unknown runtime error\r\n\t\t\t\t\t\t\tsetHTML(e, h, d);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else\r\n\t\t\t\t\t\tsetHTML(e, h, d);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tdecode : Entities.decode,\r\n\r\n\t\tencode : Entities.encodeAllRaw,\r\n\r\n\t\tinsertAfter : function(node, reference_node) {\r\n\t\t\treference_node = this.get(reference_node);\r\n\r\n\t\t\treturn this.run(node, function(node) {\r\n\t\t\t\tvar parent, nextSibling;\r\n\r\n\t\t\t\tparent = reference_node.parentNode;\r\n\t\t\t\tnextSibling = reference_node.nextSibling;\r\n\r\n\t\t\t\tif (nextSibling)\r\n\t\t\t\t\tparent.insertBefore(node, nextSibling);\r\n\t\t\t\telse\r\n\t\t\t\t\tparent.appendChild(node);\r\n\r\n\t\t\t\treturn node;\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tisBlock : function(node) {\r\n\t\t\tvar type = node.nodeType;\r\n\r\n\t\t\t// If it's a node then check the type and use the nodeName\r\n\t\t\tif (type)\r\n\t\t\t\treturn !!(type === 1 && blockElementsMap[node.nodeName]);\r\n\r\n\t\t\treturn !!blockElementsMap[node];\r\n\t\t},\r\n\r\n\t\treplace : function(n, o, k) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tif (is(o, 'array'))\r\n\t\t\t\tn = n.cloneNode(true);\r\n\r\n\t\t\treturn t.run(o, function(o) {\r\n\t\t\t\tif (k) {\r\n\t\t\t\t\teach(tinymce.grep(o.childNodes), function(c) {\r\n\t\t\t\t\t\tn.appendChild(c);\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn o.parentNode.replaceChild(n, o);\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\trename : function(elm, name) {\r\n\t\t\tvar t = this, newElm;\r\n\r\n\t\t\tif (elm.nodeName != name.toUpperCase()) {\r\n\t\t\t\t// Rename block element\r\n\t\t\t\tnewElm = t.create(name);\r\n\r\n\t\t\t\t// Copy attribs to new block\r\n\t\t\t\teach(t.getAttribs(elm), function(attr_node) {\r\n\t\t\t\t\tt.setAttrib(newElm, attr_node.nodeName, t.getAttrib(elm, attr_node.nodeName));\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// Replace block\r\n\t\t\t\tt.replace(newElm, elm, 1);\r\n\t\t\t}\r\n\r\n\t\t\treturn newElm || elm;\r\n\t\t},\r\n\r\n\t\tfindCommonAncestor : function(a, b) {\r\n\t\t\tvar ps = a, pe;\r\n\r\n\t\t\twhile (ps) {\r\n\t\t\t\tpe = b;\r\n\r\n\t\t\t\twhile (pe && ps != pe)\r\n\t\t\t\t\tpe = pe.parentNode;\r\n\r\n\t\t\t\tif (ps == pe)\r\n\t\t\t\t\tbreak;\r\n\r\n\t\t\t\tps = ps.parentNode;\r\n\t\t\t}\r\n\r\n\t\t\tif (!ps && a.ownerDocument)\r\n\t\t\t\treturn a.ownerDocument.documentElement;\r\n\r\n\t\t\treturn ps;\r\n\t\t},\r\n\r\n\t\ttoHex : function(s) {\r\n\t\t\tvar c = /^\\s*rgb\\s*?\\(\\s*?([0-9]+)\\s*?,\\s*?([0-9]+)\\s*?,\\s*?([0-9]+)\\s*?\\)\\s*$/i.exec(s);\r\n\r\n\t\t\tfunction hex(s) {\r\n\t\t\t\ts = parseInt(s).toString(16);\r\n\r\n\t\t\t\treturn s.length > 1 ? s : '0' + s; // 0 -> 00\r\n\t\t\t};\r\n\r\n\t\t\tif (c) {\r\n\t\t\t\ts = '#' + hex(c[1]) + hex(c[2]) + hex(c[3]);\r\n\r\n\t\t\t\treturn s;\r\n\t\t\t}\r\n\r\n\t\t\treturn s;\r\n\t\t},\r\n\r\n\t\tgetClasses : function() {\r\n\t\t\tvar t = this, cl = [], i, lo = {}, f = t.settings.class_filter, ov;\r\n\r\n\t\t\tif (t.classes)\r\n\t\t\t\treturn t.classes;\r\n\r\n\t\t\tfunction addClasses(s) {\r\n\t\t\t\t// IE style imports\r\n\t\t\t\teach(s.imports, function(r) {\r\n\t\t\t\t\taddClasses(r);\r\n\t\t\t\t});\r\n\r\n\t\t\t\teach(s.cssRules || s.rules, function(r) {\r\n\t\t\t\t\t// Real type or fake it on IE\r\n\t\t\t\t\tswitch (r.type || 1) {\r\n\t\t\t\t\t\t// Rule\r\n\t\t\t\t\t\tcase 1:\r\n\t\t\t\t\t\t\tif (r.selectorText) {\r\n\t\t\t\t\t\t\t\teach(r.selectorText.split(','), function(v) {\r\n\t\t\t\t\t\t\t\t\tv = v.replace(/^\\s*|\\s*$|^\\s\\./g, \"\");\r\n\r\n\t\t\t\t\t\t\t\t\t// Is internal or it doesn't contain a class\r\n\t\t\t\t\t\t\t\t\tif (/\\.mce/.test(v) || !/\\.[\\w\\-]+$/.test(v))\r\n\t\t\t\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\t\t\t\t// Remove everything but class name\r\n\t\t\t\t\t\t\t\t\tov = v;\r\n\t\t\t\t\t\t\t\t\tv = tinymce._replace(/.*\\.([a-z0-9_\\-]+).*/i, '$1', v);\r\n\r\n\t\t\t\t\t\t\t\t\t// Filter classes\r\n\t\t\t\t\t\t\t\t\tif (f && !(v = f(v, ov)))\r\n\t\t\t\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\t\t\t\tif (!lo[v]) {\r\n\t\t\t\t\t\t\t\t\t\tcl.push({'class' : v});\r\n\t\t\t\t\t\t\t\t\t\tlo[v] = 1;\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\t\t// Import\r\n\t\t\t\t\t\tcase 3:\r\n\t\t\t\t\t\t\taddClasses(r.styleSheet);\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t};\r\n\r\n\t\t\ttry {\r\n\t\t\t\teach(t.doc.styleSheets, addClasses);\r\n\t\t\t} catch (ex) {\r\n\t\t\t\t// Ignore\r\n\t\t\t}\r\n\r\n\t\t\tif (cl.length > 0)\r\n\t\t\t\tt.classes = cl;\r\n\r\n\t\t\treturn cl;\r\n\t\t},\r\n\r\n\t\trun : function(e, f, s) {\r\n\t\t\tvar t = this, o;\r\n\r\n\t\t\tif (t.doc && typeof(e) === 'string')\r\n\t\t\t\te = t.get(e);\r\n\r\n\t\t\tif (!e)\r\n\t\t\t\treturn false;\r\n\r\n\t\t\ts = s || this;\r\n\t\t\tif (!e.nodeType && (e.length || e.length === 0)) {\r\n\t\t\t\to = [];\r\n\r\n\t\t\t\teach(e, function(e, i) {\r\n\t\t\t\t\tif (e) {\r\n\t\t\t\t\t\tif (typeof(e) == 'string')\r\n\t\t\t\t\t\t\te = t.doc.getElementById(e);\r\n\r\n\t\t\t\t\t\to.push(f.call(s, e, i));\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\treturn o;\r\n\t\t\t}\r\n\r\n\t\t\treturn f.call(s, e);\r\n\t\t},\r\n\r\n\t\tgetAttribs : function(n) {\r\n\t\t\tvar o;\r\n\r\n\t\t\tn = this.get(n);\r\n\r\n\t\t\tif (!n)\r\n\t\t\t\treturn [];\r\n\r\n\t\t\tif (isIE) {\r\n\t\t\t\to = [];\r\n\r\n\t\t\t\t// Object will throw exception in IE\r\n\t\t\t\tif (n.nodeName == 'OBJECT')\r\n\t\t\t\t\treturn n.attributes;\r\n\r\n\t\t\t\t// IE doesn't keep the selected attribute if you clone option elements\r\n\t\t\t\tif (n.nodeName === 'OPTION' && this.getAttrib(n, 'selected'))\r\n\t\t\t\t\to.push({specified : 1, nodeName : 'selected'});\r\n\r\n\t\t\t\t// It's crazy that this is faster in IE but it's because it returns all attributes all the time\r\n\t\t\t\tn.cloneNode(false).outerHTML.replace(/<\\/?[\\w:\\-]+ ?|=[\\\"][^\\\"]+\\\"|=\\'[^\\']+\\'|=[\\w\\-]+|>/gi, '').replace(/[\\w:\\-]+/gi, function(a) {\r\n\t\t\t\t\to.push({specified : 1, nodeName : a});\r\n\t\t\t\t});\r\n\r\n\t\t\t\treturn o;\r\n\t\t\t}\r\n\r\n\t\t\treturn n.attributes;\r\n\t\t},\r\n\r\n\t\tisEmpty : function(node, elements) {\r\n\t\t\tvar self = this, i, attributes, type, walker, name, parentNode;\r\n\r\n\t\t\tnode = node.firstChild;\r\n\t\t\tif (node) {\r\n\t\t\t\twalker = new tinymce.dom.TreeWalker(node);\r\n\t\t\t\telements = elements || self.schema ? self.schema.getNonEmptyElements() : null;\r\n\r\n\t\t\t\tdo {\r\n\t\t\t\t\ttype = node.nodeType;\r\n\r\n\t\t\t\t\tif (type === 1) {\r\n\t\t\t\t\t\t// Ignore bogus elements\r\n\t\t\t\t\t\tif (node.getAttribute('data-mce-bogus'))\r\n\t\t\t\t\t\t\tcontinue;\r\n\r\n\t\t\t\t\t\t// Keep empty elements like <img />\r\n\t\t\t\t\t\tname = node.nodeName.toLowerCase();\r\n\t\t\t\t\t\tif (elements && elements[name]) {\r\n\t\t\t\t\t\t\t// Ignore single BR elements in blocks like <p><br /></p>\r\n\t\t\t\t\t\t\tparentNode = node.parentNode;\r\n\t\t\t\t\t\t\tif (name === 'br' && self.isBlock(parentNode) && parentNode.firstChild === node && parentNode.lastChild === node) {\r\n\t\t\t\t\t\t\t\tcontinue;\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// Keep elements with data-bookmark attributes or name attribute like <a name=\"1\"></a>\r\n\t\t\t\t\t\tattributes = self.getAttribs(node);\r\n\t\t\t\t\t\ti = node.attributes.length;\r\n\t\t\t\t\t\twhile (i--) {\r\n\t\t\t\t\t\t\tname = node.attributes[i].nodeName;\r\n\t\t\t\t\t\t\tif (name === \"name\" || name === 'data-mce-bookmark')\r\n\t\t\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Keep non whitespace text nodes\r\n\t\t\t\t\tif ((type === 3 && !whiteSpaceRegExp.test(node.nodeValue)))\r\n\t\t\t\t\t\treturn false;\r\n\t\t\t\t} while (node = walker.next());\r\n\t\t\t}\r\n\r\n\t\t\treturn true;\r\n\t\t},\r\n\r\n\t\tdestroy : function(s) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tif (t.events)\r\n\t\t\t\tt.events.destroy();\r\n\r\n\t\t\tt.win = t.doc = t.root = t.events = null;\r\n\r\n\t\t\t// Manual destroy then remove unload handler\r\n\t\t\tif (!s)\r\n\t\t\t\ttinymce.removeUnload(t.destroy);\r\n\t\t},\r\n\r\n\t\tcreateRng : function() {\r\n\t\t\tvar d = this.doc;\r\n\r\n\t\t\treturn d.createRange ? d.createRange() : new tinymce.dom.Range(this);\r\n\t\t},\r\n\r\n\t\tnodeIndex : function(node, normalized) {\r\n\t\t\tvar idx = 0, lastNodeType, lastNode, nodeType;\r\n\r\n\t\t\tif (node) {\r\n\t\t\t\tfor (lastNodeType = node.nodeType, node = node.previousSibling, lastNode = node; node; node = node.previousSibling) {\r\n\t\t\t\t\tnodeType = node.nodeType;\r\n\r\n\t\t\t\t\t// Normalize text nodes\r\n\t\t\t\t\tif (normalized && nodeType == 3) {\r\n\t\t\t\t\t\tif (nodeType == lastNodeType || !node.nodeValue.length)\r\n\t\t\t\t\t\t\tcontinue;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tidx++;\r\n\t\t\t\t\tlastNodeType = nodeType;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\treturn idx;\r\n\t\t},\r\n\r\n\t\tsplit : function(pe, e, re) {\r\n\t\t\tvar t = this, r = t.createRng(), bef, aft, pa;\r\n\r\n\t\t\t// W3C valid browsers tend to leave empty nodes to the left/right side of the contents, this makes sense\r\n\t\t\t// but we don't want that in our code since it serves no purpose for the end user\r\n\t\t\t// For example if this is chopped:\r\n\t\t\t//   <p>text 1<span><b>CHOP</b></span>text 2</p>\r\n\t\t\t// would produce:\r\n\t\t\t//   <p>text 1<span></span></p><b>CHOP</b><p><span></span>text 2</p>\r\n\t\t\t// this function will then trim of empty edges and produce:\r\n\t\t\t//   <p>text 1</p><b>CHOP</b><p>text 2</p>\r\n\t\t\tfunction trim(node) {\r\n\t\t\t\tvar i, children = node.childNodes, type = node.nodeType;\r\n\r\n\t\t\t\tif (type == 1 && node.getAttribute('data-mce-type') == 'bookmark')\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\tfor (i = children.length - 1; i >= 0; i--)\r\n\t\t\t\t\ttrim(children[i]);\r\n\r\n\t\t\t\tif (type != 9) {\r\n\t\t\t\t\t// Keep non whitespace text nodes\r\n\t\t\t\t\tif (type == 3 && node.nodeValue.length > 0) {\r\n\t\t\t\t\t\t// If parent element isn't a block or there isn't any useful contents for example \"<p>   </p>\"\r\n\t\t\t\t\t\tif (!t.isBlock(node.parentNode) || tinymce.trim(node.nodeValue).length > 0)\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t} else if (type == 1) {\r\n\t\t\t\t\t\t// If the only child is a bookmark then move it up\r\n\t\t\t\t\t\tchildren = node.childNodes;\r\n\t\t\t\t\t\tif (children.length == 1 && children[0] && children[0].nodeType == 1 && children[0].getAttribute('data-mce-type') == 'bookmark')\r\n\t\t\t\t\t\t\tnode.parentNode.insertBefore(children[0], node);\r\n\r\n\t\t\t\t\t\t// Keep non empty elements or img, hr etc\r\n\t\t\t\t\t\tif (children.length || /^(br|hr|input|img)$/i.test(node.nodeName))\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tt.remove(node);\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn node;\r\n\t\t\t};\r\n\r\n\t\t\tif (pe && e) {\r\n\t\t\t\t// Get before chunk\r\n\t\t\t\tr.setStart(pe.parentNode, t.nodeIndex(pe));\r\n\t\t\t\tr.setEnd(e.parentNode, t.nodeIndex(e));\r\n\t\t\t\tbef = r.extractContents();\r\n\r\n\t\t\t\t// Get after chunk\r\n\t\t\t\tr = t.createRng();\r\n\t\t\t\tr.setStart(e.parentNode, t.nodeIndex(e) + 1);\r\n\t\t\t\tr.setEnd(pe.parentNode, t.nodeIndex(pe) + 1);\r\n\t\t\t\taft = r.extractContents();\r\n\r\n\t\t\t\t// Insert before chunk\r\n\t\t\t\tpa = pe.parentNode;\r\n\t\t\t\tpa.insertBefore(trim(bef), pe);\r\n\r\n\t\t\t\t// Insert middle chunk\r\n\t\t\t\tif (re)\r\n\t\t\t\t\tpa.replaceChild(re, e);\r\n\t\t\t\telse\r\n\t\t\t\t\tpa.insertBefore(e, pe);\r\n\r\n\t\t\t\t// Insert after chunk\r\n\t\t\t\tpa.insertBefore(trim(aft), pe);\r\n\t\t\t\tt.remove(pe);\r\n\r\n\t\t\t\treturn re || e;\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tbind : function(target, name, func, scope) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tif (!t.events)\r\n\t\t\t\tt.events = new tinymce.dom.EventUtils();\r\n\r\n\t\t\treturn t.events.add(target, name, func, scope || this);\r\n\t\t},\r\n\r\n\t\tunbind : function(target, name, func) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tif (!t.events)\r\n\t\t\t\tt.events = new tinymce.dom.EventUtils();\r\n\r\n\t\t\treturn t.events.remove(target, name, func);\r\n\t\t},\r\n\r\n\r\n\t\t_findSib : function(node, selector, name) {\r\n\t\t\tvar t = this, f = selector;\r\n\r\n\t\t\tif (node) {\r\n\t\t\t\t// If expression make a function of it using is\r\n\t\t\t\tif (is(f, 'string')) {\r\n\t\t\t\t\tf = function(node) {\r\n\t\t\t\t\t\treturn t.is(node, selector);\r\n\t\t\t\t\t};\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Loop all siblings\r\n\t\t\t\tfor (node = node[name]; node; node = node[name]) {\r\n\t\t\t\t\tif (f(node))\r\n\t\t\t\t\t\treturn node;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\treturn null;\r\n\t\t},\r\n\r\n\t\t_isRes : function(c) {\r\n\t\t\t// Is live resizble element\r\n\t\t\treturn /^(top|left|bottom|right|width|height)/i.test(c) || /;\\s*(top|left|bottom|right|width|height)/i.test(c);\r\n\t\t}\r\n\r\n\t\t/*\r\n\t\twalk : function(n, f, s) {\r\n\t\t\tvar d = this.doc, w;\r\n\r\n\t\t\tif (d.createTreeWalker) {\r\n\t\t\t\tw = d.createTreeWalker(n, NodeFilter.SHOW_TEXT, null, false);\r\n\r\n\t\t\t\twhile ((n = w.nextNode()) != null)\r\n\t\t\t\t\tf.call(s || this, n);\r\n\t\t\t} else\r\n\t\t\t\ttinymce.walk(n, f, 'childNodes', s);\r\n\t\t}\r\n\t\t*/\r\n\r\n\t\t/*\r\n\t\ttoRGB : function(s) {\r\n\t\t\tvar c = /^\\s*?#([0-9A-F]{2})([0-9A-F]{1,2})([0-9A-F]{2})?\\s*?$/.exec(s);\r\n\r\n\t\t\tif (c) {\r\n\t\t\t\t// #FFF -> #FFFFFF\r\n\t\t\t\tif (!is(c[3]))\r\n\t\t\t\t\tc[3] = c[2] = c[1];\r\n\r\n\t\t\t\treturn \"rgb(\" + parseInt(c[1], 16) + \",\" + parseInt(c[2], 16) + \",\" + parseInt(c[3], 16) + \")\";\r\n\t\t\t}\r\n\r\n\t\t\treturn s;\r\n\t\t}\r\n\t\t*/\r\n\t});\r\n\r\n\ttinymce.DOM = new tinymce.dom.DOMUtils(document, {process_html : 0});\r\n})(tinymce);\r\n\r\n(function(ns) {\r\n\t// Range constructor\r\n\tfunction Range(dom) {\r\n\t\tvar t = this,\r\n\t\t\tdoc = dom.doc,\r\n\t\t\tEXTRACT = 0,\r\n\t\t\tCLONE = 1,\r\n\t\t\tDELETE = 2,\r\n\t\t\tTRUE = true,\r\n\t\t\tFALSE = false,\r\n\t\t\tSTART_OFFSET = 'startOffset',\r\n\t\t\tSTART_CONTAINER = 'startContainer',\r\n\t\t\tEND_CONTAINER = 'endContainer',\r\n\t\t\tEND_OFFSET = 'endOffset',\r\n\t\t\textend = tinymce.extend,\r\n\t\t\tnodeIndex = dom.nodeIndex;\r\n\r\n\t\textend(t, {\r\n\t\t\t// Inital states\r\n\t\t\tstartContainer : doc,\r\n\t\t\tstartOffset : 0,\r\n\t\t\tendContainer : doc,\r\n\t\t\tendOffset : 0,\r\n\t\t\tcollapsed : TRUE,\r\n\t\t\tcommonAncestorContainer : doc,\r\n\r\n\t\t\t// Range constants\r\n\t\t\tSTART_TO_START : 0,\r\n\t\t\tSTART_TO_END : 1,\r\n\t\t\tEND_TO_END : 2,\r\n\t\t\tEND_TO_START : 3,\r\n\r\n\t\t\t// Public methods\r\n\t\t\tsetStart : setStart,\r\n\t\t\tsetEnd : setEnd,\r\n\t\t\tsetStartBefore : setStartBefore,\r\n\t\t\tsetStartAfter : setStartAfter,\r\n\t\t\tsetEndBefore : setEndBefore,\r\n\t\t\tsetEndAfter : setEndAfter,\r\n\t\t\tcollapse : collapse,\r\n\t\t\tselectNode : selectNode,\r\n\t\t\tselectNodeContents : selectNodeContents,\r\n\t\t\tcompareBoundaryPoints : compareBoundaryPoints,\r\n\t\t\tdeleteContents : deleteContents,\r\n\t\t\textractContents : extractContents,\r\n\t\t\tcloneContents : cloneContents,\r\n\t\t\tinsertNode : insertNode,\r\n\t\t\tsurroundContents : surroundContents,\r\n\t\t\tcloneRange : cloneRange\r\n\t\t});\r\n\r\n\t\tfunction setStart(n, o) {\r\n\t\t\t_setEndPoint(TRUE, n, o);\r\n\t\t};\r\n\r\n\t\tfunction setEnd(n, o) {\r\n\t\t\t_setEndPoint(FALSE, n, o);\r\n\t\t};\r\n\r\n\t\tfunction setStartBefore(n) {\r\n\t\t\tsetStart(n.parentNode, nodeIndex(n));\r\n\t\t};\r\n\r\n\t\tfunction setStartAfter(n) {\r\n\t\t\tsetStart(n.parentNode, nodeIndex(n) + 1);\r\n\t\t};\r\n\r\n\t\tfunction setEndBefore(n) {\r\n\t\t\tsetEnd(n.parentNode, nodeIndex(n));\r\n\t\t};\r\n\r\n\t\tfunction setEndAfter(n) {\r\n\t\t\tsetEnd(n.parentNode, nodeIndex(n) + 1);\r\n\t\t};\r\n\r\n\t\tfunction collapse(ts) {\r\n\t\t\tif (ts) {\r\n\t\t\t\tt[END_CONTAINER] = t[START_CONTAINER];\r\n\t\t\t\tt[END_OFFSET] = t[START_OFFSET];\r\n\t\t\t} else {\r\n\t\t\t\tt[START_CONTAINER] = t[END_CONTAINER];\r\n\t\t\t\tt[START_OFFSET] = t[END_OFFSET];\r\n\t\t\t}\r\n\r\n\t\t\tt.collapsed = TRUE;\r\n\t\t};\r\n\r\n\t\tfunction selectNode(n) {\r\n\t\t\tsetStartBefore(n);\r\n\t\t\tsetEndAfter(n);\r\n\t\t};\r\n\r\n\t\tfunction selectNodeContents(n) {\r\n\t\t\tsetStart(n, 0);\r\n\t\t\tsetEnd(n, n.nodeType === 1 ? n.childNodes.length : n.nodeValue.length);\r\n\t\t};\r\n\r\n\t\tfunction compareBoundaryPoints(h, r) {\r\n\t\t\tvar sc = t[START_CONTAINER], so = t[START_OFFSET], ec = t[END_CONTAINER], eo = t[END_OFFSET],\r\n\t\t\trsc = r.startContainer, rso = r.startOffset, rec = r.endContainer, reo = r.endOffset;\r\n\r\n\t\t\t// Check START_TO_START\r\n\t\t\tif (h === 0)\r\n\t\t\t\treturn _compareBoundaryPoints(sc, so, rsc, rso);\r\n\t\r\n\t\t\t// Check START_TO_END\r\n\t\t\tif (h === 1)\r\n\t\t\t\treturn _compareBoundaryPoints(ec, eo, rsc, rso);\r\n\t\r\n\t\t\t// Check END_TO_END\r\n\t\t\tif (h === 2)\r\n\t\t\t\treturn _compareBoundaryPoints(ec, eo, rec, reo);\r\n\t\r\n\t\t\t// Check END_TO_START\r\n\t\t\tif (h === 3) \r\n\t\t\t\treturn _compareBoundaryPoints(sc, so, rec, reo);\r\n\t\t};\r\n\r\n\t\tfunction deleteContents() {\r\n\t\t\t_traverse(DELETE);\r\n\t\t};\r\n\r\n\t\tfunction extractContents() {\r\n\t\t\treturn _traverse(EXTRACT);\r\n\t\t};\r\n\r\n\t\tfunction cloneContents() {\r\n\t\t\treturn _traverse(CLONE);\r\n\t\t};\r\n\r\n\t\tfunction insertNode(n) {\r\n\t\t\tvar startContainer = this[START_CONTAINER],\r\n\t\t\t\tstartOffset = this[START_OFFSET], nn, o;\r\n\r\n\t\t\t// Node is TEXT_NODE or CDATA\r\n\t\t\tif ((startContainer.nodeType === 3 || startContainer.nodeType === 4) && startContainer.nodeValue) {\r\n\t\t\t\tif (!startOffset) {\r\n\t\t\t\t\t// At the start of text\r\n\t\t\t\t\tstartContainer.parentNode.insertBefore(n, startContainer);\r\n\t\t\t\t} else if (startOffset >= startContainer.nodeValue.length) {\r\n\t\t\t\t\t// At the end of text\r\n\t\t\t\t\tdom.insertAfter(n, startContainer);\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// Middle, need to split\r\n\t\t\t\t\tnn = startContainer.splitText(startOffset);\r\n\t\t\t\t\tstartContainer.parentNode.insertBefore(n, nn);\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\t// Insert element node\r\n\t\t\t\tif (startContainer.childNodes.length > 0)\r\n\t\t\t\t\to = startContainer.childNodes[startOffset];\r\n\r\n\t\t\t\tif (o)\r\n\t\t\t\t\tstartContainer.insertBefore(n, o);\r\n\t\t\t\telse\r\n\t\t\t\t\tstartContainer.appendChild(n);\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tfunction surroundContents(n) {\r\n\t\t\tvar f = t.extractContents();\r\n\r\n\t\t\tt.insertNode(n);\r\n\t\t\tn.appendChild(f);\r\n\t\t\tt.selectNode(n);\r\n\t\t};\r\n\r\n\t\tfunction cloneRange() {\r\n\t\t\treturn extend(new Range(dom), {\r\n\t\t\t\tstartContainer : t[START_CONTAINER],\r\n\t\t\t\tstartOffset : t[START_OFFSET],\r\n\t\t\t\tendContainer : t[END_CONTAINER],\r\n\t\t\t\tendOffset : t[END_OFFSET],\r\n\t\t\t\tcollapsed : t.collapsed,\r\n\t\t\t\tcommonAncestorContainer : t.commonAncestorContainer\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\t// Private methods\r\n\r\n\t\tfunction _getSelectedNode(container, offset) {\r\n\t\t\tvar child;\r\n\r\n\t\t\tif (container.nodeType == 3 /* TEXT_NODE */)\r\n\t\t\t\treturn container;\r\n\r\n\t\t\tif (offset < 0)\r\n\t\t\t\treturn container;\r\n\r\n\t\t\tchild = container.firstChild;\r\n\t\t\twhile (child && offset > 0) {\r\n\t\t\t\t--offset;\r\n\t\t\t\tchild = child.nextSibling;\r\n\t\t\t}\r\n\r\n\t\t\tif (child)\r\n\t\t\t\treturn child;\r\n\r\n\t\t\treturn container;\r\n\t\t};\r\n\r\n\t\tfunction _isCollapsed() {\r\n\t\t\treturn (t[START_CONTAINER] == t[END_CONTAINER] && t[START_OFFSET] == t[END_OFFSET]);\r\n\t\t};\r\n\r\n\t\tfunction _compareBoundaryPoints(containerA, offsetA, containerB, offsetB) {\r\n\t\t\tvar c, offsetC, n, cmnRoot, childA, childB;\r\n\t\t\t\r\n\t\t\t// In the first case the boundary-points have the same container. A is before B\r\n\t\t\t// if its offset is less than the offset of B, A is equal to B if its offset is\r\n\t\t\t// equal to the offset of B, and A is after B if its offset is greater than the\r\n\t\t\t// offset of B.\r\n\t\t\tif (containerA == containerB) {\r\n\t\t\t\tif (offsetA == offsetB)\r\n\t\t\t\t\treturn 0; // equal\r\n\r\n\t\t\t\tif (offsetA < offsetB)\r\n\t\t\t\t\treturn -1; // before\r\n\r\n\t\t\t\treturn 1; // after\r\n\t\t\t}\r\n\r\n\t\t\t// In the second case a child node C of the container of A is an ancestor\r\n\t\t\t// container of B. In this case, A is before B if the offset of A is less than or\r\n\t\t\t// equal to the index of the child node C and A is after B otherwise.\r\n\t\t\tc = containerB;\r\n\t\t\twhile (c && c.parentNode != containerA)\r\n\t\t\t\tc = c.parentNode;\r\n\r\n\t\t\tif (c) {\r\n\t\t\t\toffsetC = 0;\r\n\t\t\t\tn = containerA.firstChild;\r\n\r\n\t\t\t\twhile (n != c && offsetC < offsetA) {\r\n\t\t\t\t\toffsetC++;\r\n\t\t\t\t\tn = n.nextSibling;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (offsetA <= offsetC)\r\n\t\t\t\t\treturn -1; // before\r\n\r\n\t\t\t\treturn 1; // after\r\n\t\t\t}\r\n\r\n\t\t\t// In the third case a child node C of the container of B is an ancestor container\r\n\t\t\t// of A. In this case, A is before B if the index of the child node C is less than\r\n\t\t\t// the offset of B and A is after B otherwise.\r\n\t\t\tc = containerA;\r\n\t\t\twhile (c && c.parentNode != containerB) {\r\n\t\t\t\tc = c.parentNode;\r\n\t\t\t}\r\n\r\n\t\t\tif (c) {\r\n\t\t\t\toffsetC = 0;\r\n\t\t\t\tn = containerB.firstChild;\r\n\r\n\t\t\t\twhile (n != c && offsetC < offsetB) {\r\n\t\t\t\t\toffsetC++;\r\n\t\t\t\t\tn = n.nextSibling;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (offsetC < offsetB)\r\n\t\t\t\t\treturn -1; // before\r\n\r\n\t\t\t\treturn 1; // after\r\n\t\t\t}\r\n\r\n\t\t\t// In the fourth case, none of three other cases hold: the containers of A and B\r\n\t\t\t// are siblings or descendants of sibling nodes. In this case, A is before B if\r\n\t\t\t// the container of A is before the container of B in a pre-order traversal of the\r\n\t\t\t// Ranges' context tree and A is after B otherwise.\r\n\t\t\tcmnRoot = dom.findCommonAncestor(containerA, containerB);\r\n\t\t\tchildA = containerA;\r\n\r\n\t\t\twhile (childA && childA.parentNode != cmnRoot)\r\n\t\t\t\tchildA = childA.parentNode;\r\n\r\n\t\t\tif (!childA)\r\n\t\t\t\tchildA = cmnRoot;\r\n\r\n\t\t\tchildB = containerB;\r\n\t\t\twhile (childB && childB.parentNode != cmnRoot)\r\n\t\t\t\tchildB = childB.parentNode;\r\n\r\n\t\t\tif (!childB)\r\n\t\t\t\tchildB = cmnRoot;\r\n\r\n\t\t\tif (childA == childB)\r\n\t\t\t\treturn 0; // equal\r\n\r\n\t\t\tn = cmnRoot.firstChild;\r\n\t\t\twhile (n) {\r\n\t\t\t\tif (n == childA)\r\n\t\t\t\t\treturn -1; // before\r\n\r\n\t\t\t\tif (n == childB)\r\n\t\t\t\t\treturn 1; // after\r\n\r\n\t\t\t\tn = n.nextSibling;\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tfunction _setEndPoint(st, n, o) {\r\n\t\t\tvar ec, sc;\r\n\r\n\t\t\tif (st) {\r\n\t\t\t\tt[START_CONTAINER] = n;\r\n\t\t\t\tt[START_OFFSET] = o;\r\n\t\t\t} else {\r\n\t\t\t\tt[END_CONTAINER] = n;\r\n\t\t\t\tt[END_OFFSET] = o;\r\n\t\t\t}\r\n\r\n\t\t\t// If one boundary-point of a Range is set to have a root container\r\n\t\t\t// other than the current one for the Range, the Range is collapsed to\r\n\t\t\t// the new position. This enforces the restriction that both boundary-\r\n\t\t\t// points of a Range must have the same root container.\r\n\t\t\tec = t[END_CONTAINER];\r\n\t\t\twhile (ec.parentNode)\r\n\t\t\t\tec = ec.parentNode;\r\n\r\n\t\t\tsc = t[START_CONTAINER];\r\n\t\t\twhile (sc.parentNode)\r\n\t\t\t\tsc = sc.parentNode;\r\n\r\n\t\t\tif (sc == ec) {\r\n\t\t\t\t// The start position of a Range is guaranteed to never be after the\r\n\t\t\t\t// end position. To enforce this restriction, if the start is set to\r\n\t\t\t\t// be at a position after the end, the Range is collapsed to that\r\n\t\t\t\t// position.\r\n\t\t\t\tif (_compareBoundaryPoints(t[START_CONTAINER], t[START_OFFSET], t[END_CONTAINER], t[END_OFFSET]) > 0)\r\n\t\t\t\t\tt.collapse(st);\r\n\t\t\t} else\r\n\t\t\t\tt.collapse(st);\r\n\r\n\t\t\tt.collapsed = _isCollapsed();\r\n\t\t\tt.commonAncestorContainer = dom.findCommonAncestor(t[START_CONTAINER], t[END_CONTAINER]);\r\n\t\t};\r\n\r\n\t\tfunction _traverse(how) {\r\n\t\t\tvar c, endContainerDepth = 0, startContainerDepth = 0, p, depthDiff, startNode, endNode, sp, ep;\r\n\r\n\t\t\tif (t[START_CONTAINER] == t[END_CONTAINER])\r\n\t\t\t\treturn _traverseSameContainer(how);\r\n\r\n\t\t\tfor (c = t[END_CONTAINER], p = c.parentNode; p; c = p, p = p.parentNode) {\r\n\t\t\t\tif (p == t[START_CONTAINER])\r\n\t\t\t\t\treturn _traverseCommonStartContainer(c, how);\r\n\r\n\t\t\t\t++endContainerDepth;\r\n\t\t\t}\r\n\r\n\t\t\tfor (c = t[START_CONTAINER], p = c.parentNode; p; c = p, p = p.parentNode) {\r\n\t\t\t\tif (p == t[END_CONTAINER])\r\n\t\t\t\t\treturn _traverseCommonEndContainer(c, how);\r\n\r\n\t\t\t\t++startContainerDepth;\r\n\t\t\t}\r\n\r\n\t\t\tdepthDiff = startContainerDepth - endContainerDepth;\r\n\r\n\t\t\tstartNode = t[START_CONTAINER];\r\n\t\t\twhile (depthDiff > 0) {\r\n\t\t\t\tstartNode = startNode.parentNode;\r\n\t\t\t\tdepthDiff--;\r\n\t\t\t}\r\n\r\n\t\t\tendNode = t[END_CONTAINER];\r\n\t\t\twhile (depthDiff < 0) {\r\n\t\t\t\tendNode = endNode.parentNode;\r\n\t\t\t\tdepthDiff++;\r\n\t\t\t}\r\n\r\n\t\t\t// ascend the ancestor hierarchy until we have a common parent.\r\n\t\t\tfor (sp = startNode.parentNode, ep = endNode.parentNode; sp != ep; sp = sp.parentNode, ep = ep.parentNode) {\r\n\t\t\t\tstartNode = sp;\r\n\t\t\t\tendNode = ep;\r\n\t\t\t}\r\n\r\n\t\t\treturn _traverseCommonAncestors(startNode, endNode, how);\r\n\t\t};\r\n\r\n\t\t function _traverseSameContainer(how) {\r\n\t\t\tvar frag, s, sub, n, cnt, sibling, xferNode;\r\n\r\n\t\t\tif (how != DELETE)\r\n\t\t\t\tfrag = doc.createDocumentFragment();\r\n\r\n\t\t\t// If selection is empty, just return the fragment\r\n\t\t\tif (t[START_OFFSET] == t[END_OFFSET])\r\n\t\t\t\treturn frag;\r\n\r\n\t\t\t// Text node needs special case handling\r\n\t\t\tif (t[START_CONTAINER].nodeType == 3 /* TEXT_NODE */) {\r\n\t\t\t\t// get the substring\r\n\t\t\t\ts = t[START_CONTAINER].nodeValue;\r\n\t\t\t\tsub = s.substring(t[START_OFFSET], t[END_OFFSET]);\r\n\r\n\t\t\t\t// set the original text node to its new value\r\n\t\t\t\tif (how != CLONE) {\r\n\t\t\t\t\tt[START_CONTAINER].deleteData(t[START_OFFSET], t[END_OFFSET] - t[START_OFFSET]);\r\n\r\n\t\t\t\t\t// Nothing is partially selected, so collapse to start point\r\n\t\t\t\t\tt.collapse(TRUE);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (how == DELETE)\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\tfrag.appendChild(doc.createTextNode(sub));\r\n\t\t\t\treturn frag;\r\n\t\t\t}\r\n\r\n\t\t\t// Copy nodes between the start/end offsets.\r\n\t\t\tn = _getSelectedNode(t[START_CONTAINER], t[START_OFFSET]);\r\n\t\t\tcnt = t[END_OFFSET] - t[START_OFFSET];\r\n\r\n\t\t\twhile (cnt > 0) {\r\n\t\t\t\tsibling = n.nextSibling;\r\n\t\t\t\txferNode = _traverseFullySelected(n, how);\r\n\r\n\t\t\t\tif (frag)\r\n\t\t\t\t\tfrag.appendChild( xferNode );\r\n\r\n\t\t\t\t--cnt;\r\n\t\t\t\tn = sibling;\r\n\t\t\t}\r\n\r\n\t\t\t// Nothing is partially selected, so collapse to start point\r\n\t\t\tif (how != CLONE)\r\n\t\t\t\tt.collapse(TRUE);\r\n\r\n\t\t\treturn frag;\r\n\t\t};\r\n\r\n\t\tfunction _traverseCommonStartContainer(endAncestor, how) {\r\n\t\t\tvar frag, n, endIdx, cnt, sibling, xferNode;\r\n\r\n\t\t\tif (how != DELETE)\r\n\t\t\t\tfrag = doc.createDocumentFragment();\r\n\r\n\t\t\tn = _traverseRightBoundary(endAncestor, how);\r\n\r\n\t\t\tif (frag)\r\n\t\t\t\tfrag.appendChild(n);\r\n\r\n\t\t\tendIdx = nodeIndex(endAncestor);\r\n\t\t\tcnt = endIdx - t[START_OFFSET];\r\n\r\n\t\t\tif (cnt <= 0) {\r\n\t\t\t\t// Collapse to just before the endAncestor, which\r\n\t\t\t\t// is partially selected.\r\n\t\t\t\tif (how != CLONE) {\r\n\t\t\t\t\tt.setEndBefore(endAncestor);\r\n\t\t\t\t\tt.collapse(FALSE);\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn frag;\r\n\t\t\t}\r\n\r\n\t\t\tn = endAncestor.previousSibling;\r\n\t\t\twhile (cnt > 0) {\r\n\t\t\t\tsibling = n.previousSibling;\r\n\t\t\t\txferNode = _traverseFullySelected(n, how);\r\n\r\n\t\t\t\tif (frag)\r\n\t\t\t\t\tfrag.insertBefore(xferNode, frag.firstChild);\r\n\r\n\t\t\t\t--cnt;\r\n\t\t\t\tn = sibling;\r\n\t\t\t}\r\n\r\n\t\t\t// Collapse to just before the endAncestor, which\r\n\t\t\t// is partially selected.\r\n\t\t\tif (how != CLONE) {\r\n\t\t\t\tt.setEndBefore(endAncestor);\r\n\t\t\t\tt.collapse(FALSE);\r\n\t\t\t}\r\n\r\n\t\t\treturn frag;\r\n\t\t};\r\n\r\n\t\tfunction _traverseCommonEndContainer(startAncestor, how) {\r\n\t\t\tvar frag, startIdx, n, cnt, sibling, xferNode;\r\n\r\n\t\t\tif (how != DELETE)\r\n\t\t\t\tfrag = doc.createDocumentFragment();\r\n\r\n\t\t\tn = _traverseLeftBoundary(startAncestor, how);\r\n\t\t\tif (frag)\r\n\t\t\t\tfrag.appendChild(n);\r\n\r\n\t\t\tstartIdx = nodeIndex(startAncestor);\r\n\t\t\t++startIdx; // Because we already traversed it\r\n\r\n\t\t\tcnt = t[END_OFFSET] - startIdx;\r\n\t\t\tn = startAncestor.nextSibling;\r\n\t\t\twhile (cnt > 0) {\r\n\t\t\t\tsibling = n.nextSibling;\r\n\t\t\t\txferNode = _traverseFullySelected(n, how);\r\n\r\n\t\t\t\tif (frag)\r\n\t\t\t\t\tfrag.appendChild(xferNode);\r\n\r\n\t\t\t\t--cnt;\r\n\t\t\t\tn = sibling;\r\n\t\t\t}\r\n\r\n\t\t\tif (how != CLONE) {\r\n\t\t\t\tt.setStartAfter(startAncestor);\r\n\t\t\t\tt.collapse(TRUE);\r\n\t\t\t}\r\n\r\n\t\t\treturn frag;\r\n\t\t};\r\n\r\n\t\tfunction _traverseCommonAncestors(startAncestor, endAncestor, how) {\r\n\t\t\tvar n, frag, commonParent, startOffset, endOffset, cnt, sibling, nextSibling;\r\n\r\n\t\t\tif (how != DELETE)\r\n\t\t\t\tfrag = doc.createDocumentFragment();\r\n\r\n\t\t\tn = _traverseLeftBoundary(startAncestor, how);\r\n\t\t\tif (frag)\r\n\t\t\t\tfrag.appendChild(n);\r\n\r\n\t\t\tcommonParent = startAncestor.parentNode;\r\n\t\t\tstartOffset = nodeIndex(startAncestor);\r\n\t\t\tendOffset = nodeIndex(endAncestor);\r\n\t\t\t++startOffset;\r\n\r\n\t\t\tcnt = endOffset - startOffset;\r\n\t\t\tsibling = startAncestor.nextSibling;\r\n\r\n\t\t\twhile (cnt > 0) {\r\n\t\t\t\tnextSibling = sibling.nextSibling;\r\n\t\t\t\tn = _traverseFullySelected(sibling, how);\r\n\r\n\t\t\t\tif (frag)\r\n\t\t\t\t\tfrag.appendChild(n);\r\n\r\n\t\t\t\tsibling = nextSibling;\r\n\t\t\t\t--cnt;\r\n\t\t\t}\r\n\r\n\t\t\tn = _traverseRightBoundary(endAncestor, how);\r\n\r\n\t\t\tif (frag)\r\n\t\t\t\tfrag.appendChild(n);\r\n\r\n\t\t\tif (how != CLONE) {\r\n\t\t\t\tt.setStartAfter(startAncestor);\r\n\t\t\t\tt.collapse(TRUE);\r\n\t\t\t}\r\n\r\n\t\t\treturn frag;\r\n\t\t};\r\n\r\n\t\tfunction _traverseRightBoundary(root, how) {\r\n\t\t\tvar next = _getSelectedNode(t[END_CONTAINER], t[END_OFFSET] - 1), parent, clonedParent, prevSibling, clonedChild, clonedGrandParent, isFullySelected = next != t[END_CONTAINER];\r\n\r\n\t\t\tif (next == root)\r\n\t\t\t\treturn _traverseNode(next, isFullySelected, FALSE, how);\r\n\r\n\t\t\tparent = next.parentNode;\r\n\t\t\tclonedParent = _traverseNode(parent, FALSE, FALSE, how);\r\n\r\n\t\t\twhile (parent) {\r\n\t\t\t\twhile (next) {\r\n\t\t\t\t\tprevSibling = next.previousSibling;\r\n\t\t\t\t\tclonedChild = _traverseNode(next, isFullySelected, FALSE, how);\r\n\r\n\t\t\t\t\tif (how != DELETE)\r\n\t\t\t\t\t\tclonedParent.insertBefore(clonedChild, clonedParent.firstChild);\r\n\r\n\t\t\t\t\tisFullySelected = TRUE;\r\n\t\t\t\t\tnext = prevSibling;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (parent == root)\r\n\t\t\t\t\treturn clonedParent;\r\n\r\n\t\t\t\tnext = parent.previousSibling;\r\n\t\t\t\tparent = parent.parentNode;\r\n\r\n\t\t\t\tclonedGrandParent = _traverseNode(parent, FALSE, FALSE, how);\r\n\r\n\t\t\t\tif (how != DELETE)\r\n\t\t\t\t\tclonedGrandParent.appendChild(clonedParent);\r\n\r\n\t\t\t\tclonedParent = clonedGrandParent;\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tfunction _traverseLeftBoundary(root, how) {\r\n\t\t\tvar next = _getSelectedNode(t[START_CONTAINER], t[START_OFFSET]), isFullySelected = next != t[START_CONTAINER], parent, clonedParent, nextSibling, clonedChild, clonedGrandParent;\r\n\r\n\t\t\tif (next == root)\r\n\t\t\t\treturn _traverseNode(next, isFullySelected, TRUE, how);\r\n\r\n\t\t\tparent = next.parentNode;\r\n\t\t\tclonedParent = _traverseNode(parent, FALSE, TRUE, how);\r\n\r\n\t\t\twhile (parent) {\r\n\t\t\t\twhile (next) {\r\n\t\t\t\t\tnextSibling = next.nextSibling;\r\n\t\t\t\t\tclonedChild = _traverseNode(next, isFullySelected, TRUE, how);\r\n\r\n\t\t\t\t\tif (how != DELETE)\r\n\t\t\t\t\t\tclonedParent.appendChild(clonedChild);\r\n\r\n\t\t\t\t\tisFullySelected = TRUE;\r\n\t\t\t\t\tnext = nextSibling;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (parent == root)\r\n\t\t\t\t\treturn clonedParent;\r\n\r\n\t\t\t\tnext = parent.nextSibling;\r\n\t\t\t\tparent = parent.parentNode;\r\n\r\n\t\t\t\tclonedGrandParent = _traverseNode(parent, FALSE, TRUE, how);\r\n\r\n\t\t\t\tif (how != DELETE)\r\n\t\t\t\t\tclonedGrandParent.appendChild(clonedParent);\r\n\r\n\t\t\t\tclonedParent = clonedGrandParent;\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tfunction _traverseNode(n, isFullySelected, isLeft, how) {\r\n\t\t\tvar txtValue, newNodeValue, oldNodeValue, offset, newNode;\r\n\r\n\t\t\tif (isFullySelected)\r\n\t\t\t\treturn _traverseFullySelected(n, how);\r\n\r\n\t\t\tif (n.nodeType == 3 /* TEXT_NODE */) {\r\n\t\t\t\ttxtValue = n.nodeValue;\r\n\r\n\t\t\t\tif (isLeft) {\r\n\t\t\t\t\toffset = t[START_OFFSET];\r\n\t\t\t\t\tnewNodeValue = txtValue.substring(offset);\r\n\t\t\t\t\toldNodeValue = txtValue.substring(0, offset);\r\n\t\t\t\t} else {\r\n\t\t\t\t\toffset = t[END_OFFSET];\r\n\t\t\t\t\tnewNodeValue = txtValue.substring(0, offset);\r\n\t\t\t\t\toldNodeValue = txtValue.substring(offset);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (how != CLONE)\r\n\t\t\t\t\tn.nodeValue = oldNodeValue;\r\n\r\n\t\t\t\tif (how == DELETE)\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\tnewNode = n.cloneNode(FALSE);\r\n\t\t\t\tnewNode.nodeValue = newNodeValue;\r\n\r\n\t\t\t\treturn newNode;\r\n\t\t\t}\r\n\r\n\t\t\tif (how == DELETE)\r\n\t\t\t\treturn;\r\n\r\n\t\t\treturn n.cloneNode(FALSE);\r\n\t\t};\r\n\r\n\t\tfunction _traverseFullySelected(n, how) {\r\n\t\t\tif (how != DELETE)\r\n\t\t\t\treturn how == CLONE ? n.cloneNode(TRUE) : n;\r\n\r\n\t\t\tn.parentNode.removeChild(n);\r\n\t\t};\r\n\t};\r\n\r\n\tns.Range = Range;\r\n})(tinymce.dom);\r\n\r\n(function() {\r\n\tfunction Selection(selection) {\r\n\t\tvar self = this, dom = selection.dom, TRUE = true, FALSE = false;\r\n\r\n\t\tfunction getPosition(rng, start) {\r\n\t\t\tvar checkRng, startIndex = 0, endIndex, inside,\r\n\t\t\t\tchildren, child, offset, index, position = -1, parent;\r\n\r\n\t\t\t// Setup test range, collapse it and get the parent\r\n\t\t\tcheckRng = rng.duplicate();\r\n\t\t\tcheckRng.collapse(start);\r\n\t\t\tparent = checkRng.parentElement();\r\n\r\n\t\t\t// Check if the selection is within the right document\r\n\t\t\tif (parent.ownerDocument !== selection.dom.doc)\r\n\t\t\t\treturn;\r\n\r\n\t\t\t// IE will report non editable elements as it's parent so look for an editable one\r\n\t\t\twhile (parent.contentEditable === \"false\") {\r\n\t\t\t\tparent = parent.parentNode;\r\n\t\t\t}\r\n\r\n\t\t\t// If parent doesn't have any children then return that we are inside the element\r\n\t\t\tif (!parent.hasChildNodes()) {\r\n\t\t\t\treturn {node : parent, inside : 1};\r\n\t\t\t}\r\n\r\n\t\t\t// Setup node list and endIndex\r\n\t\t\tchildren = parent.children;\r\n\t\t\tendIndex = children.length - 1;\r\n\r\n\t\t\t// Perform a binary search for the position\r\n\t\t\twhile (startIndex <= endIndex) {\r\n\t\t\t\tindex = Math.floor((startIndex + endIndex) / 2);\r\n\r\n\t\t\t\t// Move selection to node and compare the ranges\r\n\t\t\t\tchild = children[index];\r\n\t\t\t\tcheckRng.moveToElementText(child);\r\n\t\t\t\tposition = checkRng.compareEndPoints(start ? 'StartToStart' : 'EndToEnd', rng);\r\n\r\n\t\t\t\t// Before/after or an exact match\r\n\t\t\t\tif (position > 0) {\r\n\t\t\t\t\tendIndex = index - 1;\r\n\t\t\t\t} else if (position < 0) {\r\n\t\t\t\t\tstartIndex = index + 1;\r\n\t\t\t\t} else {\r\n\t\t\t\t\treturn {node : child};\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Check if child position is before or we didn't find a position\r\n\t\t\tif (position < 0) {\r\n\t\t\t\t// No element child was found use the parent element and the offset inside that\r\n\t\t\t\tif (!child) {\r\n\t\t\t\t\tcheckRng.moveToElementText(parent);\r\n\t\t\t\t\tcheckRng.collapse(true);\r\n\t\t\t\t\tchild = parent;\r\n\t\t\t\t\tinside = true;\r\n\t\t\t\t} else\r\n\t\t\t\t\tcheckRng.collapse(false);\r\n\r\n\t\t\t\tcheckRng.setEndPoint(start ? 'EndToStart' : 'EndToEnd', rng);\r\n\r\n\t\t\t\t// Fix for edge case: <div style=\"width: 100px; height:100px;\"><table>..</table>ab|c</div>\r\n\t\t\t\tif (checkRng.compareEndPoints(start ? 'StartToStart' : 'StartToEnd', rng) > 0) {\r\n\t\t\t\t\tcheckRng = rng.duplicate();\r\n\t\t\t\t\tcheckRng.collapse(start);\r\n\r\n\t\t\t\t\toffset = -1;\r\n\t\t\t\t\twhile (parent == checkRng.parentElement()) {\r\n\t\t\t\t\t\tif (checkRng.move('character', -1) == 0)\r\n\t\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\t\toffset++;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\toffset = offset || checkRng.text.replace('\\r\\n', ' ').length;\r\n\t\t\t} else {\r\n\t\t\t\t// Child position is after the selection endpoint\r\n\t\t\t\tcheckRng.collapse(true);\r\n\t\t\t\tcheckRng.setEndPoint(start ? 'StartToStart' : 'StartToEnd', rng);\r\n\r\n\t\t\t\t// Get the length of the text to find where the endpoint is relative to it's container\r\n\t\t\t\toffset = checkRng.text.replace('\\r\\n', ' ').length;\r\n\t\t\t}\r\n\r\n\t\t\treturn {node : child, position : position, offset : offset, inside : inside};\r\n\t\t};\r\n\r\n\t\t// Returns a W3C DOM compatible range object by using the IE Range API\r\n\t\tfunction getRange() {\r\n\t\t\tvar ieRange = selection.getRng(), domRange = dom.createRng(), element, collapsed, tmpRange, element2, bookmark, fail;\r\n\r\n\t\t\t// If selection is outside the current document just return an empty range\r\n\t\t\telement = ieRange.item ? ieRange.item(0) : ieRange.parentElement();\r\n\t\t\tif (element.ownerDocument != dom.doc)\r\n\t\t\t\treturn domRange;\r\n\r\n\t\t\tcollapsed = selection.isCollapsed();\r\n\r\n\t\t\t// Handle control selection\r\n\t\t\tif (ieRange.item) {\r\n\t\t\t\tdomRange.setStart(element.parentNode, dom.nodeIndex(element));\r\n\t\t\t\tdomRange.setEnd(domRange.startContainer, domRange.startOffset + 1);\r\n\r\n\t\t\t\treturn domRange;\r\n\t\t\t}\r\n\r\n\t\t\tfunction findEndPoint(start) {\r\n\t\t\t\tvar endPoint = getPosition(ieRange, start), container, offset, textNodeOffset = 0, sibling, undef, nodeValue;\r\n\r\n\t\t\t\tcontainer = endPoint.node;\r\n\t\t\t\toffset = endPoint.offset;\r\n\r\n\t\t\t\tif (endPoint.inside && !container.hasChildNodes()) {\r\n\t\t\t\t\tdomRange[start ? 'setStart' : 'setEnd'](container, 0);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (offset === undef) {\r\n\t\t\t\t\tdomRange[start ? 'setStartBefore' : 'setEndAfter'](container);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (endPoint.position < 0) {\r\n\t\t\t\t\tsibling = endPoint.inside ? container.firstChild : container.nextSibling;\r\n\r\n\t\t\t\t\tif (!sibling) {\r\n\t\t\t\t\t\tdomRange[start ? 'setStartAfter' : 'setEndAfter'](container);\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (!offset) {\r\n\t\t\t\t\t\tif (sibling.nodeType == 3)\r\n\t\t\t\t\t\t\tdomRange[start ? 'setStart' : 'setEnd'](sibling, 0);\r\n\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\tdomRange[start ? 'setStartBefore' : 'setEndBefore'](sibling);\r\n\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Find the text node and offset\r\n\t\t\t\t\twhile (sibling) {\r\n\t\t\t\t\t\tnodeValue = sibling.nodeValue;\r\n\t\t\t\t\t\ttextNodeOffset += nodeValue.length;\r\n\r\n\t\t\t\t\t\t// We are at or passed the position we where looking for\r\n\t\t\t\t\t\tif (textNodeOffset >= offset) {\r\n\t\t\t\t\t\t\tcontainer = sibling;\r\n\t\t\t\t\t\t\ttextNodeOffset -= offset;\r\n\t\t\t\t\t\t\ttextNodeOffset = nodeValue.length - textNodeOffset;\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tsibling = sibling.nextSibling;\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// Find the text node and offset\r\n\t\t\t\t\tsibling = container.previousSibling;\r\n\r\n\t\t\t\t\tif (!sibling)\r\n\t\t\t\t\t\treturn domRange[start ? 'setStartBefore' : 'setEndBefore'](container);\r\n\r\n\t\t\t\t\t// If there isn't any text to loop then use the first position\r\n\t\t\t\t\tif (!offset) {\r\n\t\t\t\t\t\tif (container.nodeType == 3)\r\n\t\t\t\t\t\t\tdomRange[start ? 'setStart' : 'setEnd'](sibling, container.nodeValue.length);\r\n\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\tdomRange[start ? 'setStartAfter' : 'setEndAfter'](sibling);\r\n\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\twhile (sibling) {\r\n\t\t\t\t\t\ttextNodeOffset += sibling.nodeValue.length;\r\n\r\n\t\t\t\t\t\t// We are at or passed the position we where looking for\r\n\t\t\t\t\t\tif (textNodeOffset >= offset) {\r\n\t\t\t\t\t\t\tcontainer = sibling;\r\n\t\t\t\t\t\t\ttextNodeOffset -= offset;\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tsibling = sibling.previousSibling;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tdomRange[start ? 'setStart' : 'setEnd'](container, textNodeOffset);\r\n\t\t\t};\r\n\r\n\t\t\ttry {\r\n\t\t\t\t// Find start point\r\n\t\t\t\tfindEndPoint(true);\r\n\r\n\t\t\t\t// Find end point if needed\r\n\t\t\t\tif (!collapsed)\r\n\t\t\t\t\tfindEndPoint();\r\n\t\t\t} catch (ex) {\r\n\t\t\t\t// IE has a nasty bug where text nodes might throw \"invalid argument\" when you\r\n\t\t\t\t// access the nodeValue or other properties of text nodes. This seems to happend when\r\n\t\t\t\t// text nodes are split into two nodes by a delete/backspace call. So lets detect it and try to fix it.\r\n\t\t\t\tif (ex.number == -2147024809) {\r\n\t\t\t\t\t// Get the current selection\r\n\t\t\t\t\tbookmark = self.getBookmark(2);\r\n\r\n\t\t\t\t\t// Get start element\r\n\t\t\t\t\ttmpRange = ieRange.duplicate();\r\n\t\t\t\t\ttmpRange.collapse(true);\r\n\t\t\t\t\telement = tmpRange.parentElement();\r\n\r\n\t\t\t\t\t// Get end element\r\n\t\t\t\t\tif (!collapsed) {\r\n\t\t\t\t\t\ttmpRange = ieRange.duplicate();\r\n\t\t\t\t\t\ttmpRange.collapse(false);\r\n\t\t\t\t\t\telement2 = tmpRange.parentElement();\r\n\t\t\t\t\t\telement2.innerHTML = element2.innerHTML;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Remove the broken elements\r\n\t\t\t\t\telement.innerHTML = element.innerHTML;\r\n\r\n\t\t\t\t\t// Restore the selection\r\n\t\t\t\t\tself.moveToBookmark(bookmark);\r\n\r\n\t\t\t\t\t// Since the range has moved we need to re-get it\r\n\t\t\t\t\tieRange = selection.getRng();\r\n\r\n\t\t\t\t\t// Find start point\r\n\t\t\t\t\tfindEndPoint(true);\r\n\r\n\t\t\t\t\t// Find end point if needed\r\n\t\t\t\t\tif (!collapsed)\r\n\t\t\t\t\t\tfindEndPoint();\r\n\t\t\t\t} else\r\n\t\t\t\t\tthrow ex; // Throw other errors\r\n\t\t\t}\r\n\r\n\t\t\treturn domRange;\r\n\t\t};\r\n\r\n\t\tthis.getBookmark = function(type) {\r\n\t\t\tvar rng = selection.getRng(), start, end, bookmark = {};\r\n\r\n\t\t\tfunction getIndexes(node) {\r\n\t\t\t\tvar node, parent, root, children, i, indexes = [];\r\n\r\n\t\t\t\tparent = node.parentNode;\r\n\t\t\t\troot = dom.getRoot().parentNode;\r\n\r\n\t\t\t\twhile (parent != root) {\r\n\t\t\t\t\tchildren = parent.children;\r\n\r\n\t\t\t\t\ti = children.length;\r\n\t\t\t\t\twhile (i--) {\r\n\t\t\t\t\t\tif (node === children[i]) {\r\n\t\t\t\t\t\t\tindexes.push(i);\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tnode = parent;\r\n\t\t\t\t\tparent = parent.parentNode;\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn indexes;\r\n\t\t\t};\r\n\r\n\t\t\tfunction getBookmarkEndPoint(start) {\r\n\t\t\t\tvar position;\r\n\r\n\t\t\t\tposition = getPosition(rng, start);\r\n\t\t\t\tif (position) {\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\tposition : position.position,\r\n\t\t\t\t\t\toffset : position.offset,\r\n\t\t\t\t\t\tindexes : getIndexes(position.node),\r\n\t\t\t\t\t\tinside : position.inside\r\n\t\t\t\t\t};\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\t\t\t// Non ubstructive bookmark\r\n\t\t\tif (type === 2) {\r\n\t\t\t\t// Handle text selection\r\n\t\t\t\tif (!rng.item) {\r\n\t\t\t\t\tbookmark.start = getBookmarkEndPoint(true);\r\n\r\n\t\t\t\t\tif (!selection.isCollapsed())\r\n\t\t\t\t\t\tbookmark.end = getBookmarkEndPoint();\r\n\t\t\t\t} else\r\n\t\t\t\t\tbookmark.start = {ctrl : true, indexes : getIndexes(rng.item(0))};\r\n\t\t\t}\r\n\r\n\t\t\treturn bookmark;\r\n\t\t};\r\n\r\n\t\tthis.moveToBookmark = function(bookmark) {\r\n\t\t\tvar rng, body = dom.doc.body;\r\n\r\n\t\t\tfunction resolveIndexes(indexes) {\r\n\t\t\t\tvar node, i, idx, children;\r\n\r\n\t\t\t\tnode = dom.getRoot();\r\n\t\t\t\tfor (i = indexes.length - 1; i >= 0; i--) {\r\n\t\t\t\t\tchildren = node.children;\r\n\t\t\t\t\tidx = indexes[i];\r\n\r\n\t\t\t\t\tif (idx <= children.length - 1) {\r\n\t\t\t\t\t\tnode = children[idx];\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn node;\r\n\t\t\t};\r\n\t\t\t\r\n\t\t\tfunction setBookmarkEndPoint(start) {\r\n\t\t\t\tvar endPoint = bookmark[start ? 'start' : 'end'], moveLeft, moveRng, undef;\r\n\r\n\t\t\t\tif (endPoint) {\r\n\t\t\t\t\tmoveLeft = endPoint.position > 0;\r\n\r\n\t\t\t\t\tmoveRng = body.createTextRange();\r\n\t\t\t\t\tmoveRng.moveToElementText(resolveIndexes(endPoint.indexes));\r\n\r\n\t\t\t\t\toffset = endPoint.offset;\r\n\t\t\t\t\tif (offset !== undef) {\r\n\t\t\t\t\t\tmoveRng.collapse(endPoint.inside || moveLeft);\r\n\t\t\t\t\t\tmoveRng.moveStart('character', moveLeft ? -offset : offset);\r\n\t\t\t\t\t} else\r\n\t\t\t\t\t\tmoveRng.collapse(start);\r\n\r\n\t\t\t\t\trng.setEndPoint(start ? 'StartToStart' : 'EndToStart', moveRng);\r\n\r\n\t\t\t\t\tif (start)\r\n\t\t\t\t\t\trng.collapse(true);\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\t\t\tif (bookmark.start) {\r\n\t\t\t\tif (bookmark.start.ctrl) {\r\n\t\t\t\t\trng = body.createControlRange();\r\n\t\t\t\t\trng.addElement(resolveIndexes(bookmark.start.indexes));\r\n\t\t\t\t\trng.select();\r\n\t\t\t\t} else {\r\n\t\t\t\t\trng = body.createTextRange();\r\n\t\t\t\t\tsetBookmarkEndPoint(true);\r\n\t\t\t\t\tsetBookmarkEndPoint();\r\n\t\t\t\t\trng.select();\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tthis.addRange = function(rng) {\r\n\t\t\tvar ieRng, ctrlRng, startContainer, startOffset, endContainer, endOffset, doc = selection.dom.doc, body = doc.body;\r\n\r\n\t\t\tfunction setEndPoint(start) {\r\n\t\t\t\tvar container, offset, marker, tmpRng, nodes;\r\n\r\n\t\t\t\tmarker = dom.create('a');\r\n\t\t\t\tcontainer = start ? startContainer : endContainer;\r\n\t\t\t\toffset = start ? startOffset : endOffset;\r\n\t\t\t\ttmpRng = ieRng.duplicate();\r\n\r\n\t\t\t\tif (container == doc || container == doc.documentElement) {\r\n\t\t\t\t\tcontainer = body;\r\n\t\t\t\t\toffset = 0;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (container.nodeType == 3) {\r\n\t\t\t\t\tcontainer.parentNode.insertBefore(marker, container);\r\n\t\t\t\t\ttmpRng.moveToElementText(marker);\r\n\t\t\t\t\ttmpRng.moveStart('character', offset);\r\n\t\t\t\t\tdom.remove(marker);\r\n\t\t\t\t\tieRng.setEndPoint(start ? 'StartToStart' : 'EndToEnd', tmpRng);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tnodes = container.childNodes;\r\n\r\n\t\t\t\t\tif (nodes.length) {\r\n\t\t\t\t\t\tif (offset >= nodes.length) {\r\n\t\t\t\t\t\t\tdom.insertAfter(marker, nodes[nodes.length - 1]);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tcontainer.insertBefore(marker, nodes[offset]);\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\ttmpRng.moveToElementText(marker);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t// Empty node selection for example <div>|</div>\r\n\t\t\t\t\t\tmarker = doc.createTextNode('\\uFEFF');\r\n\t\t\t\t\t\tcontainer.appendChild(marker);\r\n\t\t\t\t\t\ttmpRng.moveToElementText(marker.parentNode);\r\n\t\t\t\t\t\ttmpRng.collapse(TRUE);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tieRng.setEndPoint(start ? 'StartToStart' : 'EndToEnd', tmpRng);\r\n\t\t\t\t\tdom.remove(marker);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Setup some shorter versions\r\n\t\t\tstartContainer = rng.startContainer;\r\n\t\t\tstartOffset = rng.startOffset;\r\n\t\t\tendContainer = rng.endContainer;\r\n\t\t\tendOffset = rng.endOffset;\r\n\t\t\tieRng = body.createTextRange();\r\n\r\n\t\t\t// If single element selection then try making a control selection out of it\r\n\t\t\tif (startContainer == endContainer && startContainer.nodeType == 1 && startOffset == endOffset - 1) {\r\n\t\t\t\tif (startOffset == endOffset - 1) {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tctrlRng = body.createControlRange();\r\n\t\t\t\t\t\tctrlRng.addElement(startContainer.childNodes[startOffset]);\r\n\t\t\t\t\t\tctrlRng.select();\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t} catch (ex) {\r\n\t\t\t\t\t\t// Ignore\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Set start/end point of selection\r\n\t\t\tsetEndPoint(true);\r\n\t\t\tsetEndPoint();\r\n\r\n\t\t\t// Select the new range and scroll it into view\r\n\t\t\tieRng.select();\r\n\t\t};\r\n\r\n\t\t// Expose range method\r\n\t\tthis.getRangeAt = getRange;\r\n\t};\r\n\r\n\t// Expose the selection object\r\n\ttinymce.dom.TridentSelection = Selection;\r\n})();\r\n\r\n\r\n(function(tinymce) {\r\n\t// Shorten names\r\n\tvar each = tinymce.each, DOM = tinymce.DOM, isIE = tinymce.isIE, isWebKit = tinymce.isWebKit, Event;\r\n\r\n\ttinymce.create('tinymce.dom.EventUtils', {\r\n\t\tEventUtils : function() {\r\n\t\t\tthis.inits = [];\r\n\t\t\tthis.events = [];\r\n\t\t},\r\n\r\n\t\tadd : function(o, n, f, s) {\r\n\t\t\tvar cb, t = this, el = t.events, r;\r\n\r\n\t\t\tif (n instanceof Array) {\r\n\t\t\t\tr = [];\r\n\r\n\t\t\t\teach(n, function(n) {\r\n\t\t\t\t\tr.push(t.add(o, n, f, s));\r\n\t\t\t\t});\r\n\r\n\t\t\t\treturn r;\r\n\t\t\t}\r\n\r\n\t\t\t// Handle array\r\n\t\t\tif (o && o.hasOwnProperty && o instanceof Array) {\r\n\t\t\t\tr = [];\r\n\r\n\t\t\t\teach(o, function(o) {\r\n\t\t\t\t\to = DOM.get(o);\r\n\t\t\t\t\tr.push(t.add(o, n, f, s));\r\n\t\t\t\t});\r\n\r\n\t\t\t\treturn r;\r\n\t\t\t}\r\n\r\n\t\t\to = DOM.get(o);\r\n\r\n\t\t\tif (!o)\r\n\t\t\t\treturn;\r\n\r\n\t\t\t// Setup event callback\r\n\t\t\tcb = function(e) {\r\n\t\t\t\t// Is all events disabled\r\n\t\t\t\tif (t.disabled)\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\te = e || window.event;\r\n\r\n\t\t\t\t// Patch in target, preventDefault and stopPropagation in IE it's W3C valid\r\n\t\t\t\tif (e && isIE) {\r\n\t\t\t\t\tif (!e.target)\r\n\t\t\t\t\t\te.target = e.srcElement;\r\n\r\n\t\t\t\t\t// Patch in preventDefault, stopPropagation methods for W3C compatibility\r\n\t\t\t\t\ttinymce.extend(e, t._stoppers);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (!s)\r\n\t\t\t\t\treturn f(e);\r\n\r\n\t\t\t\treturn f.call(s, e);\r\n\t\t\t};\r\n\r\n\t\t\tif (n == 'unload') {\r\n\t\t\t\ttinymce.unloads.unshift({func : cb});\r\n\t\t\t\treturn cb;\r\n\t\t\t}\r\n\r\n\t\t\tif (n == 'init') {\r\n\t\t\t\tif (t.domLoaded)\r\n\t\t\t\t\tcb();\r\n\t\t\t\telse\r\n\t\t\t\t\tt.inits.push(cb);\r\n\r\n\t\t\t\treturn cb;\r\n\t\t\t}\r\n\r\n\t\t\t// Store away listener reference\r\n\t\t\tel.push({\r\n\t\t\t\tobj : o,\r\n\t\t\t\tname : n,\r\n\t\t\t\tfunc : f,\r\n\t\t\t\tcfunc : cb,\r\n\t\t\t\tscope : s\r\n\t\t\t});\r\n\r\n\t\t\tt._add(o, n, cb);\r\n\r\n\t\t\treturn f;\r\n\t\t},\r\n\r\n\t\tremove : function(o, n, f) {\r\n\t\t\tvar t = this, a = t.events, s = false, r;\r\n\r\n\t\t\t// Handle array\r\n\t\t\tif (o && o.hasOwnProperty && o instanceof Array) {\r\n\t\t\t\tr = [];\r\n\r\n\t\t\t\teach(o, function(o) {\r\n\t\t\t\t\to = DOM.get(o);\r\n\t\t\t\t\tr.push(t.remove(o, n, f));\r\n\t\t\t\t});\r\n\r\n\t\t\t\treturn r;\r\n\t\t\t}\r\n\r\n\t\t\to = DOM.get(o);\r\n\r\n\t\t\teach(a, function(e, i) {\r\n\t\t\t\tif (e.obj == o && e.name == n && (!f || (e.func == f || e.cfunc == f))) {\r\n\t\t\t\t\ta.splice(i, 1);\r\n\t\t\t\t\tt._remove(o, n, e.cfunc);\r\n\t\t\t\t\ts = true;\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\treturn s;\r\n\t\t},\r\n\r\n\t\tclear : function(o) {\r\n\t\t\tvar t = this, a = t.events, i, e;\r\n\r\n\t\t\tif (o) {\r\n\t\t\t\to = DOM.get(o);\r\n\r\n\t\t\t\tfor (i = a.length - 1; i >= 0; i--) {\r\n\t\t\t\t\te = a[i];\r\n\r\n\t\t\t\t\tif (e.obj === o) {\r\n\t\t\t\t\t\tt._remove(e.obj, e.name, e.cfunc);\r\n\t\t\t\t\t\te.obj = e.cfunc = null;\r\n\t\t\t\t\t\ta.splice(i, 1);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tcancel : function(e) {\r\n\t\t\tif (!e)\r\n\t\t\t\treturn false;\r\n\r\n\t\t\tthis.stop(e);\r\n\r\n\t\t\treturn this.prevent(e);\r\n\t\t},\r\n\r\n\t\tstop : function(e) {\r\n\t\t\tif (e.stopPropagation)\r\n\t\t\t\te.stopPropagation();\r\n\t\t\telse\r\n\t\t\t\te.cancelBubble = true;\r\n\r\n\t\t\treturn false;\r\n\t\t},\r\n\r\n\t\tprevent : function(e) {\r\n\t\t\tif (e.preventDefault)\r\n\t\t\t\te.preventDefault();\r\n\t\t\telse\r\n\t\t\t\te.returnValue = false;\r\n\r\n\t\t\treturn false;\r\n\t\t},\r\n\r\n\t\tdestroy : function() {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\teach(t.events, function(e, i) {\r\n\t\t\t\tt._remove(e.obj, e.name, e.cfunc);\r\n\t\t\t\te.obj = e.cfunc = null;\r\n\t\t\t});\r\n\r\n\t\t\tt.events = [];\r\n\t\t\tt = null;\r\n\t\t},\r\n\r\n\t\t_add : function(o, n, f) {\r\n\t\t\tif (o.attachEvent)\r\n\t\t\t\to.attachEvent('on' + n, f);\r\n\t\t\telse if (o.addEventListener)\r\n\t\t\t\to.addEventListener(n, f, false);\r\n\t\t\telse\r\n\t\t\t\to['on' + n] = f;\r\n\t\t},\r\n\r\n\t\t_remove : function(o, n, f) {\r\n\t\t\tif (o) {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tif (o.detachEvent)\r\n\t\t\t\t\t\to.detachEvent('on' + n, f);\r\n\t\t\t\t\telse if (o.removeEventListener)\r\n\t\t\t\t\t\to.removeEventListener(n, f, false);\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\to['on' + n] = null;\r\n\t\t\t\t} catch (ex) {\r\n\t\t\t\t\t// Might fail with permission denined on IE so we just ignore that\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t_pageInit : function(win) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\t// Keep it from running more than once\r\n\t\t\tif (t.domLoaded)\r\n\t\t\t\treturn;\r\n\r\n\t\t\tt.domLoaded = true;\r\n\r\n\t\t\teach(t.inits, function(c) {\r\n\t\t\t\tc();\r\n\t\t\t});\r\n\r\n\t\t\tt.inits = [];\r\n\t\t},\r\n\r\n\t\t_wait : function(win) {\r\n\t\t\tvar t = this, doc = win.document;\r\n\r\n\t\t\t// No need since the document is already loaded\r\n\t\t\tif (win.tinyMCE_GZ && tinyMCE_GZ.loaded) {\r\n\t\t\t\tt.domLoaded = 1;\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\t// Use IE method\r\n\t\t\tif (doc.attachEvent) {\r\n\t\t\t\tdoc.attachEvent(\"onreadystatechange\", function() {\r\n\t\t\t\t\tif (doc.readyState === \"complete\") {\r\n\t\t\t\t\t\tdoc.detachEvent(\"onreadystatechange\", arguments.callee);\r\n\t\t\t\t\t\tt._pageInit(win);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\tif (doc.documentElement.doScroll && win == win.top) {\r\n\t\t\t\t\t(function() {\r\n\t\t\t\t\t\tif (t.domLoaded)\r\n\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t// If IE is used, use the trick by Diego Perini licensed under MIT by request to the author.\r\n\t\t\t\t\t\t\t// http://javascript.nwbox.com/IEContentLoaded/\r\n\t\t\t\t\t\t\tdoc.documentElement.doScroll(\"left\");\r\n\t\t\t\t\t\t} catch (ex) {\r\n\t\t\t\t\t\t\tsetTimeout(arguments.callee, 0);\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tt._pageInit(win);\r\n\t\t\t\t\t})();\r\n\t\t\t\t}\r\n\t\t\t} else if (doc.addEventListener) {\r\n\t\t\t\tt._add(win, 'DOMContentLoaded', function() {\r\n\t\t\t\t\tt._pageInit(win);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tt._add(win, 'load', function() {\r\n\t\t\t\tt._pageInit(win);\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\t_stoppers : {\r\n\t\t\tpreventDefault : function() {\r\n\t\t\t\tthis.returnValue = false;\r\n\t\t\t},\r\n\r\n\t\t\tstopPropagation : function() {\r\n\t\t\t\tthis.cancelBubble = true;\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n\r\n\tEvent = tinymce.dom.Event = new tinymce.dom.EventUtils();\r\n\r\n\t// Dispatch DOM content loaded event for IE and Safari\r\n\tEvent._wait(window);\r\n\r\n\ttinymce.addUnload(function() {\r\n\t\tEvent.destroy();\r\n\t});\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\ttinymce.dom.Element = function(id, settings) {\r\n\t\tvar t = this, dom, el;\r\n\r\n\t\tt.settings = settings = settings || {};\r\n\t\tt.id = id;\r\n\t\tt.dom = dom = settings.dom || tinymce.DOM;\r\n\r\n\t\t// Only IE leaks DOM references, this is a lot faster\r\n\t\tif (!tinymce.isIE)\r\n\t\t\tel = dom.get(t.id);\r\n\r\n\t\ttinymce.each(\r\n\t\t\t\t('getPos,getRect,getParent,add,setStyle,getStyle,setStyles,' + \r\n\t\t\t\t'setAttrib,setAttribs,getAttrib,addClass,removeClass,' + \r\n\t\t\t\t'hasClass,getOuterHTML,setOuterHTML,remove,show,hide,' + \r\n\t\t\t\t'isHidden,setHTML,get').split(/,/)\r\n\t\t\t, function(k) {\r\n\t\t\t\tt[k] = function() {\r\n\t\t\t\t\tvar a = [id], i;\r\n\r\n\t\t\t\t\tfor (i = 0; i < arguments.length; i++)\r\n\t\t\t\t\t\ta.push(arguments[i]);\r\n\r\n\t\t\t\t\ta = dom[k].apply(dom, a);\r\n\t\t\t\t\tt.update(k);\r\n\r\n\t\t\t\t\treturn a;\r\n\t\t\t\t};\r\n\t\t});\r\n\r\n\t\ttinymce.extend(t, {\r\n\t\t\ton : function(n, f, s) {\r\n\t\t\t\treturn tinymce.dom.Event.add(t.id, n, f, s);\r\n\t\t\t},\r\n\r\n\t\t\tgetXY : function() {\r\n\t\t\t\treturn {\r\n\t\t\t\t\tx : parseInt(t.getStyle('left')),\r\n\t\t\t\t\ty : parseInt(t.getStyle('top'))\r\n\t\t\t\t};\r\n\t\t\t},\r\n\r\n\t\t\tgetSize : function() {\r\n\t\t\t\tvar n = dom.get(t.id);\r\n\r\n\t\t\t\treturn {\r\n\t\t\t\t\tw : parseInt(t.getStyle('width') || n.clientWidth),\r\n\t\t\t\t\th : parseInt(t.getStyle('height') || n.clientHeight)\r\n\t\t\t\t};\r\n\t\t\t},\r\n\r\n\t\t\tmoveTo : function(x, y) {\r\n\t\t\t\tt.setStyles({left : x, top : y});\r\n\t\t\t},\r\n\r\n\t\t\tmoveBy : function(x, y) {\r\n\t\t\t\tvar p = t.getXY();\r\n\r\n\t\t\t\tt.moveTo(p.x + x, p.y + y);\r\n\t\t\t},\r\n\r\n\t\t\tresizeTo : function(w, h) {\r\n\t\t\t\tt.setStyles({width : w, height : h});\r\n\t\t\t},\r\n\r\n\t\t\tresizeBy : function(w, h) {\r\n\t\t\t\tvar s = t.getSize();\r\n\r\n\t\t\t\tt.resizeTo(s.w + w, s.h + h);\r\n\t\t\t},\r\n\r\n\t\t\tupdate : function(k) {\r\n\t\t\t\tvar b;\r\n\r\n\t\t\t\tif (tinymce.isIE6 && settings.blocker) {\r\n\t\t\t\t\tk = k || '';\r\n\r\n\t\t\t\t\t// Ignore getters\r\n\t\t\t\t\tif (k.indexOf('get') === 0 || k.indexOf('has') === 0 || k.indexOf('is') === 0)\r\n\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t// Remove blocker on remove\r\n\t\t\t\t\tif (k == 'remove') {\r\n\t\t\t\t\t\tdom.remove(t.blocker);\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (!t.blocker) {\r\n\t\t\t\t\t\tt.blocker = dom.uniqueId();\r\n\t\t\t\t\t\tb = dom.add(settings.container || dom.getRoot(), 'iframe', {id : t.blocker, style : 'position:absolute;', frameBorder : 0, src : 'javascript:\"\"'});\r\n\t\t\t\t\t\tdom.setStyle(b, 'opacity', 0);\r\n\t\t\t\t\t} else\r\n\t\t\t\t\t\tb = dom.get(t.blocker);\r\n\r\n\t\t\t\t\tdom.setStyles(b, {\r\n\t\t\t\t\t\tleft : t.getStyle('left', 1),\r\n\t\t\t\t\t\ttop : t.getStyle('top', 1),\r\n\t\t\t\t\t\twidth : t.getStyle('width', 1),\r\n\t\t\t\t\t\theight : t.getStyle('height', 1),\r\n\t\t\t\t\t\tdisplay : t.getStyle('display', 1),\r\n\t\t\t\t\t\tzIndex : parseInt(t.getStyle('zIndex', 1) || 0) - 1\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t};\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\tfunction trimNl(s) {\r\n\t\treturn s.replace(/[\\n\\r]+/g, '');\r\n\t};\r\n\r\n\t// Shorten names\r\n\tvar is = tinymce.is, isIE = tinymce.isIE, each = tinymce.each;\r\n\r\n\ttinymce.create('tinymce.dom.Selection', {\r\n\t\tSelection : function(dom, win, serializer) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tt.dom = dom;\r\n\t\t\tt.win = win;\r\n\t\t\tt.serializer = serializer;\r\n\r\n\t\t\t// Add events\r\n\t\t\teach([\r\n\t\t\t\t'onBeforeSetContent',\r\n\r\n\t\t\t\t'onBeforeGetContent',\r\n\r\n\t\t\t\t'onSetContent',\r\n\r\n\t\t\t\t'onGetContent'\r\n\t\t\t], function(e) {\r\n\t\t\t\tt[e] = new tinymce.util.Dispatcher(t);\r\n\t\t\t});\r\n\r\n\t\t\t// No W3C Range support\r\n\t\t\tif (!t.win.getSelection)\r\n\t\t\t\tt.tridentSel = new tinymce.dom.TridentSelection(t);\r\n\r\n\t\t\tif (tinymce.isIE && dom.boxModel)\r\n\t\t\t\tthis._fixIESelection();\r\n\r\n\t\t\t// Prevent leaks\r\n\t\t\ttinymce.addUnload(t.destroy, t);\r\n\t\t},\r\n\r\n\t\tsetCursorLocation: function(node, offset) {\r\n\t\t\tvar t = this; var r = t.dom.createRng();\r\n\t\t\tr.setStart(node, offset);\r\n\t\t\tr.setEnd(node, offset);\r\n\t\t\tt.setRng(r);\r\n\t\t\tt.collapse(false);\r\n\t\t},\r\n\t\tgetContent : function(s) {\r\n\t\t\tvar t = this, r = t.getRng(), e = t.dom.create(\"body\"), se = t.getSel(), wb, wa, n;\r\n\r\n\t\t\ts = s || {};\r\n\t\t\twb = wa = '';\r\n\t\t\ts.get = true;\r\n\t\t\ts.format = s.format || 'html';\r\n\t\t\ts.forced_root_block = '';\r\n\t\t\tt.onBeforeGetContent.dispatch(t, s);\r\n\r\n\t\t\tif (s.format == 'text')\r\n\t\t\t\treturn t.isCollapsed() ? '' : (r.text || (se.toString ? se.toString() : ''));\r\n\r\n\t\t\tif (r.cloneContents) {\r\n\t\t\t\tn = r.cloneContents();\r\n\r\n\t\t\t\tif (n)\r\n\t\t\t\t\te.appendChild(n);\r\n\t\t\t} else if (is(r.item) || is(r.htmlText)) {\r\n\t\t\t\t// IE will produce invalid markup if elements are present that\r\n\t\t\t\t// it doesn't understand like custom elements or HTML5 elements.\r\n\t\t\t\t// Adding a BR in front of the contents and then remoiving it seems to fix it though.\r\n\t\t\t\te.innerHTML = '<br>' + (r.item ? r.item(0).outerHTML : r.htmlText);\r\n\t\t\t\te.removeChild(e.firstChild);\r\n\t\t\t} else\r\n\t\t\t\te.innerHTML = r.toString();\r\n\r\n\t\t\t// Keep whitespace before and after\r\n\t\t\tif (/^\\s/.test(e.innerHTML))\r\n\t\t\t\twb = ' ';\r\n\r\n\t\t\tif (/\\s+$/.test(e.innerHTML))\r\n\t\t\t\twa = ' ';\r\n\r\n\t\t\ts.getInner = true;\r\n\r\n\t\t\ts.content = t.isCollapsed() ? '' : wb + t.serializer.serialize(e, s) + wa;\r\n\t\t\tt.onGetContent.dispatch(t, s);\r\n\r\n\t\t\treturn s.content;\r\n\t\t},\r\n\r\n\t\tsetContent : function(content, args) {\r\n\t\t\tvar self = this, rng = self.getRng(), caretNode, doc = self.win.document, frag, temp;\r\n\r\n\t\t\targs = args || {format : 'html'};\r\n\t\t\targs.set = true;\r\n\t\t\tcontent = args.content = content;\r\n\r\n\t\t\t// Dispatch before set content event\r\n\t\t\tif (!args.no_events)\r\n\t\t\t\tself.onBeforeSetContent.dispatch(self, args);\r\n\r\n\t\t\tcontent = args.content;\r\n\r\n\t\t\tif (rng.insertNode) {\r\n\t\t\t\t// Make caret marker since insertNode places the caret in the beginning of text after insert\r\n\t\t\t\tcontent += '<span id=\"__caret\">_</span>';\r\n\r\n\t\t\t\t// Delete and insert new node\r\n\t\t\t\tif (rng.startContainer == doc && rng.endContainer == doc) {\r\n\t\t\t\t\t// WebKit will fail if the body is empty since the range is then invalid and it can't insert contents\r\n\t\t\t\t\tdoc.body.innerHTML = content;\r\n\t\t\t\t} else {\r\n\t\t\t\t\trng.deleteContents();\r\n\r\n\t\t\t\t\tif (doc.body.childNodes.length == 0) {\r\n\t\t\t\t\t\tdoc.body.innerHTML = content;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t// createContextualFragment doesn't exists in IE 9 DOMRanges\r\n\t\t\t\t\t\tif (rng.createContextualFragment) {\r\n\t\t\t\t\t\t\trng.insertNode(rng.createContextualFragment(content));\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t// Fake createContextualFragment call in IE 9\r\n\t\t\t\t\t\t\tfrag = doc.createDocumentFragment();\r\n\t\t\t\t\t\t\ttemp = doc.createElement('div');\r\n\r\n\t\t\t\t\t\t\tfrag.appendChild(temp);\r\n\t\t\t\t\t\t\ttemp.outerHTML = content;\r\n\r\n\t\t\t\t\t\t\trng.insertNode(frag);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Move to caret marker\r\n\t\t\t\tcaretNode = self.dom.get('__caret');\r\n\r\n\t\t\t\t// Make sure we wrap it compleatly, Opera fails with a simple select call\r\n\t\t\t\trng = doc.createRange();\r\n\t\t\t\trng.setStartBefore(caretNode);\r\n\t\t\t\trng.setEndBefore(caretNode);\r\n\t\t\t\tself.setRng(rng);\r\n\r\n\t\t\t\t// Remove the caret position\r\n\t\t\t\tself.dom.remove('__caret');\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tself.setRng(rng);\r\n\t\t\t\t} catch (ex) {\r\n\t\t\t\t\t// Might fail on Opera for some odd reason\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tif (rng.item) {\r\n\t\t\t\t\t// Delete content and get caret text selection\r\n\t\t\t\t\tdoc.execCommand('Delete', false, null);\r\n\t\t\t\t\trng = self.getRng();\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Explorer removes spaces from the beginning of pasted contents\r\n\t\t\t\tif (/^\\s+/.test(content)) {\r\n\t\t\t\t\trng.pasteHTML('<span id=\"__mce_tmp\">_</span>' + content);\r\n\t\t\t\t\tself.dom.remove('__mce_tmp');\r\n\t\t\t\t} else\r\n\t\t\t\t\trng.pasteHTML(content);\r\n\t\t\t}\r\n\r\n\t\t\t// Dispatch set content event\r\n\t\t\tif (!args.no_events)\r\n\t\t\t\tself.onSetContent.dispatch(self, args);\r\n\t\t},\r\n\r\n\t\tgetStart : function() {\r\n\t\t\tvar rng = this.getRng(), startElement, parentElement, checkRng, node;\r\n\r\n\t\t\tif (rng.duplicate || rng.item) {\r\n\t\t\t\t// Control selection, return first item\r\n\t\t\t\tif (rng.item)\r\n\t\t\t\t\treturn rng.item(0);\r\n\r\n\t\t\t\t// Get start element\r\n\t\t\t\tcheckRng = rng.duplicate();\r\n\t\t\t\tcheckRng.collapse(1);\r\n\t\t\t\tstartElement = checkRng.parentElement();\r\n\r\n\t\t\t\t// Check if range parent is inside the start element, then return the inner parent element\r\n\t\t\t\t// This will fix issues when a single element is selected, IE would otherwise return the wrong start element\r\n\t\t\t\tparentElement = node = rng.parentElement();\r\n\t\t\t\twhile (node = node.parentNode) {\r\n\t\t\t\t\tif (node == startElement) {\r\n\t\t\t\t\t\tstartElement = parentElement;\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn startElement;\r\n\t\t\t} else {\r\n\t\t\t\tstartElement = rng.startContainer;\r\n\r\n\t\t\t\tif (startElement.nodeType == 1 && startElement.hasChildNodes())\r\n\t\t\t\t\tstartElement = startElement.childNodes[Math.min(startElement.childNodes.length - 1, rng.startOffset)];\r\n\r\n\t\t\t\tif (startElement && startElement.nodeType == 3)\r\n\t\t\t\t\treturn startElement.parentNode;\r\n\r\n\t\t\t\treturn startElement;\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tgetEnd : function() {\r\n\t\t\tvar t = this, r = t.getRng(), e, eo;\r\n\r\n\t\t\tif (r.duplicate || r.item) {\r\n\t\t\t\tif (r.item)\r\n\t\t\t\t\treturn r.item(0);\r\n\r\n\t\t\t\tr = r.duplicate();\r\n\t\t\t\tr.collapse(0);\r\n\t\t\t\te = r.parentElement();\r\n\r\n\t\t\t\tif (e && e.nodeName == 'BODY')\r\n\t\t\t\t\treturn e.lastChild || e;\r\n\r\n\t\t\t\treturn e;\r\n\t\t\t} else {\r\n\t\t\t\te = r.endContainer;\r\n\t\t\t\teo = r.endOffset;\r\n\r\n\t\t\t\tif (e.nodeType == 1 && e.hasChildNodes())\r\n\t\t\t\t\te = e.childNodes[eo > 0 ? eo - 1 : eo];\r\n\r\n\t\t\t\tif (e && e.nodeType == 3)\r\n\t\t\t\t\treturn e.parentNode;\r\n\r\n\t\t\t\treturn e;\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tgetBookmark : function(type, normalized) {\r\n\t\t\tvar t = this, dom = t.dom, rng, rng2, id, collapsed, name, element, index, chr = '\\uFEFF', styles;\r\n\r\n\t\t\tfunction findIndex(name, element) {\r\n\t\t\t\tvar index = 0;\r\n\r\n\t\t\t\teach(dom.select(name), function(node, i) {\r\n\t\t\t\t\tif (node == element)\r\n\t\t\t\t\t\tindex = i;\r\n\t\t\t\t});\r\n\r\n\t\t\t\treturn index;\r\n\t\t\t};\r\n\r\n\t\t\tif (type == 2) {\r\n\t\t\t\tfunction getLocation() {\r\n\t\t\t\t\tvar rng = t.getRng(true), root = dom.getRoot(), bookmark = {};\r\n\r\n\t\t\t\t\tfunction getPoint(rng, start) {\r\n\t\t\t\t\t\tvar container = rng[start ? 'startContainer' : 'endContainer'],\r\n\t\t\t\t\t\t\toffset = rng[start ? 'startOffset' : 'endOffset'], point = [], node, childNodes, after = 0;\r\n\r\n\t\t\t\t\t\tif (container.nodeType == 3) {\r\n\t\t\t\t\t\t\tif (normalized) {\r\n\t\t\t\t\t\t\t\tfor (node = container.previousSibling; node && node.nodeType == 3; node = node.previousSibling)\r\n\t\t\t\t\t\t\t\t\toffset += node.nodeValue.length;\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tpoint.push(offset);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tchildNodes = container.childNodes;\r\n\r\n\t\t\t\t\t\t\tif (offset >= childNodes.length && childNodes.length) {\r\n\t\t\t\t\t\t\t\tafter = 1;\r\n\t\t\t\t\t\t\t\toffset = Math.max(0, childNodes.length - 1);\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tpoint.push(t.dom.nodeIndex(childNodes[offset], normalized) + after);\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tfor (; container && container != root; container = container.parentNode)\r\n\t\t\t\t\t\t\tpoint.push(t.dom.nodeIndex(container, normalized));\r\n\r\n\t\t\t\t\t\treturn point;\r\n\t\t\t\t\t};\r\n\r\n\t\t\t\t\tbookmark.start = getPoint(rng, true);\r\n\r\n\t\t\t\t\tif (!t.isCollapsed())\r\n\t\t\t\t\t\tbookmark.end = getPoint(rng);\r\n\r\n\t\t\t\t\treturn bookmark;\r\n\t\t\t\t};\r\n\r\n\t\t\t\tif (t.tridentSel)\r\n\t\t\t\t\treturn t.tridentSel.getBookmark(type);\r\n\r\n\t\t\t\treturn getLocation();\r\n\t\t\t}\r\n\r\n\t\t\t// Handle simple range\r\n\t\t\tif (type)\r\n\t\t\t\treturn {rng : t.getRng()};\r\n\r\n\t\t\trng = t.getRng();\r\n\t\t\tid = dom.uniqueId();\r\n\t\t\tcollapsed = tinyMCE.activeEditor.selection.isCollapsed();\r\n\t\t\tstyles = 'overflow:hidden;line-height:0px';\r\n\r\n\t\t\t// Explorer method\r\n\t\t\tif (rng.duplicate || rng.item) {\r\n\t\t\t\t// Text selection\r\n\t\t\t\tif (!rng.item) {\r\n\t\t\t\t\trng2 = rng.duplicate();\r\n\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\t// Insert start marker\r\n\t\t\t\t\t\trng.collapse();\r\n\t\t\t\t\t\trng.pasteHTML('<span data-mce-type=\"bookmark\" id=\"' + id + '_start\" style=\"' + styles + '\">' + chr + '</span>');\r\n\r\n\t\t\t\t\t\t// Insert end marker\r\n\t\t\t\t\t\tif (!collapsed) {\r\n\t\t\t\t\t\t\trng2.collapse(false);\r\n\r\n\t\t\t\t\t\t\t// Detect the empty space after block elements in IE and move the end back one character <p></p>] becomes <p>]</p>\r\n\t\t\t\t\t\t\trng.moveToElementText(rng2.parentElement());\r\n\t\t\t\t\t\t\tif (rng.compareEndPoints('StartToEnd', rng2) == 0)\r\n\t\t\t\t\t\t\t\trng2.move('character', -1);\r\n\r\n\t\t\t\t\t\t\trng2.pasteHTML('<span data-mce-type=\"bookmark\" id=\"' + id + '_end\" style=\"' + styles + '\">' + chr + '</span>');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} catch (ex) {\r\n\t\t\t\t\t\t// IE might throw unspecified error so lets ignore it\r\n\t\t\t\t\t\treturn null;\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// Control selection\r\n\t\t\t\t\telement = rng.item(0);\r\n\t\t\t\t\tname = element.nodeName;\r\n\r\n\t\t\t\t\treturn {name : name, index : findIndex(name, element)};\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\telement = t.getNode();\r\n\t\t\t\tname = element.nodeName;\r\n\t\t\t\tif (name == 'IMG')\r\n\t\t\t\t\treturn {name : name, index : findIndex(name, element)};\r\n\r\n\t\t\t\t// W3C method\r\n\t\t\t\trng2 = rng.cloneRange();\r\n\r\n\t\t\t\t// Insert end marker\r\n\t\t\t\tif (!collapsed) {\r\n\t\t\t\t\trng2.collapse(false);\r\n\t\t\t\t\trng2.insertNode(dom.create('span', {'data-mce-type' : \"bookmark\", id : id + '_end', style : styles}, chr));\r\n\t\t\t\t}\r\n\r\n\t\t\t\trng.collapse(true);\r\n\t\t\t\trng.insertNode(dom.create('span', {'data-mce-type' : \"bookmark\", id : id + '_start', style : styles}, chr));\r\n\t\t\t}\r\n\r\n\t\t\tt.moveToBookmark({id : id, keep : 1});\r\n\r\n\t\t\treturn {id : id};\r\n\t\t},\r\n\r\n\t\tmoveToBookmark : function(bookmark) {\r\n\t\t\tvar t = this, dom = t.dom, marker1, marker2, rng, root, startContainer, endContainer, startOffset, endOffset;\r\n\r\n\t\t\tif (bookmark) {\r\n\t\t\t\tif (bookmark.start) {\r\n\t\t\t\t\trng = dom.createRng();\r\n\t\t\t\t\troot = dom.getRoot();\r\n\r\n\t\t\t\t\tfunction setEndPoint(start) {\r\n\t\t\t\t\t\tvar point = bookmark[start ? 'start' : 'end'], i, node, offset, children;\r\n\r\n\t\t\t\t\t\tif (point) {\r\n\t\t\t\t\t\t\toffset = point[0];\r\n\r\n\t\t\t\t\t\t\t// Find container node\r\n\t\t\t\t\t\t\tfor (node = root, i = point.length - 1; i >= 1; i--) {\r\n\t\t\t\t\t\t\t\tchildren = node.childNodes;\r\n\r\n\t\t\t\t\t\t\t\tif (point[i] > children.length - 1)\r\n\t\t\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\t\t\tnode = children[point[i]];\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t// Move text offset to best suitable location\r\n\t\t\t\t\t\t\tif (node.nodeType === 3)\r\n\t\t\t\t\t\t\t\toffset = Math.min(point[0], node.nodeValue.length);\r\n\r\n\t\t\t\t\t\t\t// Move element offset to best suitable location\r\n\t\t\t\t\t\t\tif (node.nodeType === 1)\r\n\t\t\t\t\t\t\t\toffset = Math.min(point[0], node.childNodes.length);\r\n\r\n\t\t\t\t\t\t\t// Set offset within container node\r\n\t\t\t\t\t\t\tif (start)\r\n\t\t\t\t\t\t\t\trng.setStart(node, offset);\r\n\t\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\t\trng.setEnd(node, offset);\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\treturn true;\r\n\t\t\t\t\t};\r\n\r\n\t\t\t\t\tif (t.tridentSel)\r\n\t\t\t\t\t\treturn t.tridentSel.moveToBookmark(bookmark);\r\n\r\n\t\t\t\t\tif (setEndPoint(true) && setEndPoint()) {\r\n\t\t\t\t\t\tt.setRng(rng);\r\n\t\t\t\t\t}\r\n\t\t\t\t} else if (bookmark.id) {\r\n\t\t\t\t\tfunction restoreEndPoint(suffix) {\r\n\t\t\t\t\t\tvar marker = dom.get(bookmark.id + '_' + suffix), node, idx, next, prev, keep = bookmark.keep;\r\n\r\n\t\t\t\t\t\tif (marker) {\r\n\t\t\t\t\t\t\tnode = marker.parentNode;\r\n\r\n\t\t\t\t\t\t\tif (suffix == 'start') {\r\n\t\t\t\t\t\t\t\tif (!keep) {\r\n\t\t\t\t\t\t\t\t\tidx = dom.nodeIndex(marker);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tnode = marker.firstChild;\r\n\t\t\t\t\t\t\t\t\tidx = 1;\r\n\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\tstartContainer = endContainer = node;\r\n\t\t\t\t\t\t\t\tstartOffset = endOffset = idx;\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tif (!keep) {\r\n\t\t\t\t\t\t\t\t\tidx = dom.nodeIndex(marker);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tnode = marker.firstChild;\r\n\t\t\t\t\t\t\t\t\tidx = 1;\r\n\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\tendContainer = node;\r\n\t\t\t\t\t\t\t\tendOffset = idx;\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tif (!keep) {\r\n\t\t\t\t\t\t\t\tprev = marker.previousSibling;\r\n\t\t\t\t\t\t\t\tnext = marker.nextSibling;\r\n\r\n\t\t\t\t\t\t\t\t// Remove all marker text nodes\r\n\t\t\t\t\t\t\t\teach(tinymce.grep(marker.childNodes), function(node) {\r\n\t\t\t\t\t\t\t\t\tif (node.nodeType == 3)\r\n\t\t\t\t\t\t\t\t\t\tnode.nodeValue = node.nodeValue.replace(/\\uFEFF/g, '');\r\n\t\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\t\t// Remove marker but keep children if for example contents where inserted into the marker\r\n\t\t\t\t\t\t\t\t// Also remove duplicated instances of the marker for example by a split operation or by WebKit auto split on paste feature\r\n\t\t\t\t\t\t\t\twhile (marker = dom.get(bookmark.id + '_' + suffix))\r\n\t\t\t\t\t\t\t\t\tdom.remove(marker, 1);\r\n\r\n\t\t\t\t\t\t\t\t// If siblings are text nodes then merge them unless it's Opera since it some how removes the node\r\n\t\t\t\t\t\t\t\t// and we are sniffing since adding a lot of detection code for a browser with 3% of the market isn't worth the effort. Sorry, Opera but it's just a fact\r\n\t\t\t\t\t\t\t\tif (prev && next && prev.nodeType == next.nodeType && prev.nodeType == 3 && !tinymce.isOpera) {\r\n\t\t\t\t\t\t\t\t\tidx = prev.nodeValue.length;\r\n\t\t\t\t\t\t\t\t\tprev.appendData(next.nodeValue);\r\n\t\t\t\t\t\t\t\t\tdom.remove(next);\r\n\r\n\t\t\t\t\t\t\t\t\tif (suffix == 'start') {\r\n\t\t\t\t\t\t\t\t\t\tstartContainer = endContainer = prev;\r\n\t\t\t\t\t\t\t\t\t\tstartOffset = endOffset = idx;\r\n\t\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\t\tendContainer = prev;\r\n\t\t\t\t\t\t\t\t\t\tendOffset = idx;\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t};\r\n\r\n\t\t\t\t\tfunction addBogus(node) {\r\n\t\t\t\t\t\t// Adds a bogus BR element for empty block elements or just a space on IE since it renders BR elements incorrectly\r\n\t\t\t\t\t\tif (dom.isBlock(node) && !node.innerHTML)\r\n\t\t\t\t\t\t\tnode.innerHTML = !isIE ? '<br data-mce-bogus=\"1\" />' : ' ';\r\n\r\n\t\t\t\t\t\treturn node;\r\n\t\t\t\t\t};\r\n\r\n\t\t\t\t\t// Restore start/end points\r\n\t\t\t\t\trestoreEndPoint('start');\r\n\t\t\t\t\trestoreEndPoint('end');\r\n\r\n\t\t\t\t\tif (startContainer) {\r\n\t\t\t\t\t\trng = dom.createRng();\r\n\t\t\t\t\t\trng.setStart(addBogus(startContainer), startOffset);\r\n\t\t\t\t\t\trng.setEnd(addBogus(endContainer), endOffset);\r\n\t\t\t\t\t\tt.setRng(rng);\r\n\t\t\t\t\t}\r\n\t\t\t\t} else if (bookmark.name) {\r\n\t\t\t\t\tt.select(dom.select(bookmark.name)[bookmark.index]);\r\n\t\t\t\t} else if (bookmark.rng)\r\n\t\t\t\t\tt.setRng(bookmark.rng);\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tselect : function(node, content) {\r\n\t\t\tvar t = this, dom = t.dom, rng = dom.createRng(), idx;\r\n\r\n\t\t\tif (node) {\r\n\t\t\t\tidx = dom.nodeIndex(node);\r\n\t\t\t\trng.setStart(node.parentNode, idx);\r\n\t\t\t\trng.setEnd(node.parentNode, idx + 1);\r\n\r\n\t\t\t\t// Find first/last text node or BR element\r\n\t\t\t\tif (content) {\r\n\t\t\t\t\tfunction setPoint(node, start) {\r\n\t\t\t\t\t\tvar walker = new tinymce.dom.TreeWalker(node, node);\r\n\r\n\t\t\t\t\t\tdo {\r\n\t\t\t\t\t\t\t// Text node\r\n\t\t\t\t\t\t\tif (node.nodeType == 3 && tinymce.trim(node.nodeValue).length != 0) {\r\n\t\t\t\t\t\t\t\tif (start)\r\n\t\t\t\t\t\t\t\t\trng.setStart(node, 0);\r\n\t\t\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\t\t\trng.setEnd(node, node.nodeValue.length);\r\n\r\n\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t// BR element\r\n\t\t\t\t\t\t\tif (node.nodeName == 'BR') {\r\n\t\t\t\t\t\t\t\tif (start)\r\n\t\t\t\t\t\t\t\t\trng.setStartBefore(node);\r\n\t\t\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\t\t\trng.setEndBefore(node);\r\n\r\n\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t} while (node = (start ? walker.next() : walker.prev()));\r\n\t\t\t\t\t};\r\n\r\n\t\t\t\t\tsetPoint(node, 1);\r\n\t\t\t\t\tsetPoint(node);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tt.setRng(rng);\r\n\t\t\t}\r\n\r\n\t\t\treturn node;\r\n\t\t},\r\n\r\n\t\tisCollapsed : function() {\r\n\t\t\tvar t = this, r = t.getRng(), s = t.getSel();\r\n\r\n\t\t\tif (!r || r.item)\r\n\t\t\t\treturn false;\r\n\r\n\t\t\tif (r.compareEndPoints)\r\n\t\t\t\treturn r.compareEndPoints('StartToEnd', r) === 0;\r\n\r\n\t\t\treturn !s || r.collapsed;\r\n\t\t},\r\n\r\n\t\tcollapse : function(to_start) {\r\n\t\t\tvar self = this, rng = self.getRng(), node;\r\n\r\n\t\t\t// Control range on IE\r\n\t\t\tif (rng.item) {\r\n\t\t\t\tnode = rng.item(0);\r\n\t\t\t\trng = self.win.document.body.createTextRange();\r\n\t\t\t\trng.moveToElementText(node);\r\n\t\t\t}\r\n\r\n\t\t\trng.collapse(!!to_start);\r\n\t\t\tself.setRng(rng);\r\n\t\t},\r\n\r\n\t\tgetSel : function() {\r\n\t\t\tvar t = this, w = this.win;\r\n\r\n\t\t\treturn w.getSelection ? w.getSelection() : w.document.selection;\r\n\t\t},\r\n\r\n\t\tgetRng : function(w3c) {\r\n\t\t\tvar t = this, s, r, elm, doc = t.win.document;\r\n\r\n\t\t\t// Found tridentSel object then we need to use that one\r\n\t\t\tif (w3c && t.tridentSel)\r\n\t\t\t\treturn t.tridentSel.getRangeAt(0);\r\n\r\n\t\t\ttry {\r\n\t\t\t\tif (s = t.getSel())\r\n\t\t\t\t\tr = s.rangeCount > 0 ? s.getRangeAt(0) : (s.createRange ? s.createRange() : doc.createRange());\r\n\t\t\t} catch (ex) {\r\n\t\t\t\t// IE throws unspecified error here if TinyMCE is placed in a frame/iframe\r\n\t\t\t}\r\n\r\n\t\t\t// We have W3C ranges and it's IE then fake control selection since IE9 doesn't handle that correctly yet\r\n\t\t\tif (tinymce.isIE && r && r.setStart && doc.selection.createRange().item) {\r\n\t\t\t\telm = doc.selection.createRange().item(0);\r\n\t\t\t\tr = doc.createRange();\r\n\t\t\t\tr.setStartBefore(elm);\r\n\t\t\t\tr.setEndAfter(elm);\r\n\t\t\t}\r\n\r\n\t\t\t// No range found then create an empty one\r\n\t\t\t// This can occur when the editor is placed in a hidden container element on Gecko\r\n\t\t\t// Or on IE when there was an exception\r\n\t\t\tif (!r)\r\n\t\t\t\tr = doc.createRange ? doc.createRange() : doc.body.createTextRange();\r\n\r\n\t\t\tif (t.selectedRange && t.explicitRange) {\r\n\t\t\t\tif (r.compareBoundaryPoints(r.START_TO_START, t.selectedRange) === 0 && r.compareBoundaryPoints(r.END_TO_END, t.selectedRange) === 0) {\r\n\t\t\t\t\t// Safari, Opera and Chrome only ever select text which causes the range to change.\r\n\t\t\t\t\t// This lets us use the originally set range if the selection hasn't been changed by the user.\r\n\t\t\t\t\tr = t.explicitRange;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tt.selectedRange = null;\r\n\t\t\t\t\tt.explicitRange = null;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\treturn r;\r\n\t\t},\r\n\r\n\t\tsetRng : function(r) {\r\n\t\t\tvar s, t = this;\r\n\t\t\t\r\n\t\t\tif (!t.tridentSel) {\r\n\t\t\t\ts = t.getSel();\r\n\r\n\t\t\t\tif (s) {\r\n\t\t\t\t\tt.explicitRange = r;\r\n\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\ts.removeAllRanges();\r\n\t\t\t\t\t} catch (ex) {\r\n\t\t\t\t\t\t// IE9 might throw errors here don't know why\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\ts.addRange(r);\r\n\t\t\t\t\tt.selectedRange = s.getRangeAt(0);\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\t// Is W3C Range\r\n\t\t\t\tif (r.cloneRange) {\r\n\t\t\t\t\tt.tridentSel.addRange(r);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Is IE specific range\r\n\t\t\t\ttry {\r\n\t\t\t\t\tr.select();\r\n\t\t\t\t} catch (ex) {\r\n\t\t\t\t\t// Needed for some odd IE bug #1843306\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tsetNode : function(n) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tt.setContent(t.dom.getOuterHTML(n));\r\n\r\n\t\t\treturn n;\r\n\t\t},\r\n\r\n\t\tgetNode : function() {\r\n\t\t\tvar t = this, rng = t.getRng(), sel = t.getSel(), elm, start = rng.startContainer, end = rng.endContainer;\r\n\r\n\t\t\t// Range maybe lost after the editor is made visible again\r\n\t\t\tif (!rng)\r\n\t\t\t\treturn t.dom.getRoot();\r\n\r\n\t\t\tif (rng.setStart) {\r\n\t\t\t\telm = rng.commonAncestorContainer;\r\n\r\n\t\t\t\t// Handle selection a image or other control like element such as anchors\r\n\t\t\t\tif (!rng.collapsed) {\r\n\t\t\t\t\tif (rng.startContainer == rng.endContainer) {\r\n\t\t\t\t\t\tif (rng.endOffset - rng.startOffset < 2) {\r\n\t\t\t\t\t\t\tif (rng.startContainer.hasChildNodes())\r\n\t\t\t\t\t\t\t\telm = rng.startContainer.childNodes[rng.startOffset];\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// If the anchor node is a element instead of a text node then return this element\r\n\t\t\t\t\t//if (tinymce.isWebKit && sel.anchorNode && sel.anchorNode.nodeType == 1) \r\n\t\t\t\t\t//\treturn sel.anchorNode.childNodes[sel.anchorOffset];\r\n\r\n\t\t\t\t\t// Handle cases where the selection is immediately wrapped around a node and return that node instead of it's parent.\r\n\t\t\t\t\t// This happens when you double click an underlined word in FireFox.\r\n\t\t\t\t\tif (start.nodeType === 3 && end.nodeType === 3) {\r\n\t\t\t\t\t\tfunction skipEmptyTextNodes(n, forwards) {\r\n\t\t\t\t\t\t\tvar orig = n;\r\n\t\t\t\t\t\t\twhile (n && n.nodeType === 3 && n.length === 0) {\r\n\t\t\t\t\t\t\t\tn = forwards ? n.nextSibling : n.previousSibling;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\treturn n || orig;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif (start.length === rng.startOffset) {\r\n\t\t\t\t\t\t\tstart = skipEmptyTextNodes(start.nextSibling, true);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tstart = start.parentNode;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif (rng.endOffset === 0) {\r\n\t\t\t\t\t\t\tend = skipEmptyTextNodes(end.previousSibling, false);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tend = end.parentNode;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tif (start && start === end)\r\n\t\t\t\t\t\t\treturn start;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (elm && elm.nodeType == 3)\r\n\t\t\t\t\treturn elm.parentNode;\r\n\r\n\t\t\t\treturn elm;\r\n\t\t\t}\r\n\r\n\t\t\treturn rng.item ? rng.item(0) : rng.parentElement();\r\n\t\t},\r\n\r\n\t\tgetSelectedBlocks : function(st, en) {\r\n\t\t\tvar t = this, dom = t.dom, sb, eb, n, bl = [];\r\n\r\n\t\t\tsb = dom.getParent(st || t.getStart(), dom.isBlock);\r\n\t\t\teb = dom.getParent(en || t.getEnd(), dom.isBlock);\r\n\r\n\t\t\tif (sb)\r\n\t\t\t\tbl.push(sb);\r\n\r\n\t\t\tif (sb && eb && sb != eb) {\r\n\t\t\t\tn = sb;\r\n\r\n\t\t\t\twhile ((n = n.nextSibling) && n != eb) {\r\n\t\t\t\t\tif (dom.isBlock(n))\r\n\t\t\t\t\t\tbl.push(n);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (eb && sb != eb)\r\n\t\t\t\tbl.push(eb);\r\n\r\n\t\t\treturn bl;\r\n\t\t},\r\n\r\n\t\tnormalize : function() {\r\n\t\t\tvar self = this, rng, normalized;\r\n\r\n\t\t\t// Normalize only on non IE browsers for now\r\n\t\t\tif (tinymce.isIE)\r\n\t\t\t\treturn;\r\n\r\n\t\t\tfunction normalizeEndPoint(start) {\r\n\t\t\t\tvar container, offset, walker, dom = self.dom, body = dom.getRoot(), node;\r\n\r\n\t\t\t\tcontainer = rng[(start ? 'start' : 'end') + 'Container'];\r\n\t\t\t\toffset = rng[(start ? 'start' : 'end') + 'Offset'];\r\n\r\n\t\t\t\t// If the container is a document move it to the body element\r\n\t\t\t\tif (container.nodeType === 9) {\r\n\t\t\t\t\tcontainer = container.body;\r\n\t\t\t\t\toffset = 0;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// If the container is body try move it into the closest text node or position\r\n\t\t\t\t// TODO: Add more logic here to handle element selection cases\r\n\t\t\t\tif (container === body) {\r\n\t\t\t\t\t// Resolve the index\r\n\t\t\t\t\tif (container.hasChildNodes()) {\r\n\t\t\t\t\t\tcontainer = container.childNodes[Math.min(!start && offset > 0 ? offset - 1 : offset, container.childNodes.length - 1)];\r\n\t\t\t\t\t\toffset = 0;\r\n\r\n\t\t\t\t\t\t// Don't walk into elements that doesn't have any child nodes like a IMG\r\n\t\t\t\t\t\tif (container.hasChildNodes()) {\r\n\t\t\t\t\t\t\t// Walk the DOM to find a text node to place the caret at or a BR\r\n\t\t\t\t\t\t\tnode = container;\r\n\t\t\t\t\t\t\twalker = new tinymce.dom.TreeWalker(container, body);\r\n\t\t\t\t\t\t\tdo {\r\n\t\t\t\t\t\t\t\t// Found a text node use that position\r\n\t\t\t\t\t\t\t\tif (node.nodeType === 3) {\r\n\t\t\t\t\t\t\t\t\toffset = start ? 0 : node.nodeValue.length - 1;\r\n\t\t\t\t\t\t\t\t\tcontainer = node;\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t// Found a BR element that we can place the caret before\r\n\t\t\t\t\t\t\t\tif (node.nodeName === 'BR') {\r\n\t\t\t\t\t\t\t\t\toffset = dom.nodeIndex(node);\r\n\t\t\t\t\t\t\t\t\tcontainer = node.parentNode;\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t} while (node = (start ? walker.next() : walker.prev()));\r\n\r\n\t\t\t\t\t\t\tnormalized = true;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Set endpoint if it was normalized\r\n\t\t\t\tif (normalized)\r\n\t\t\t\t\trng['set' + (start ? 'Start' : 'End')](container, offset);\r\n\t\t\t};\r\n\r\n\t\t\trng = self.getRng();\r\n\r\n\t\t\t// Normalize the end points\r\n\t\t\tnormalizeEndPoint(true);\r\n\t\t\t\r\n\t\t\tif (rng.collapsed)\r\n\t\t\t\tnormalizeEndPoint();\r\n\r\n\t\t\t// Set the selection if it was normalized\r\n\t\t\tif (normalized) {\r\n\t\t\t\t//console.log(self.dom.dumpRng(rng));\r\n\t\t\t\tself.setRng(rng);\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tdestroy : function(s) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tt.win = null;\r\n\r\n\t\t\t// Manual destroy then remove unload handler\r\n\t\t\tif (!s)\r\n\t\t\t\ttinymce.removeUnload(t.destroy);\r\n\t\t},\r\n\r\n\t\t// IE has an issue where you can't select/move the caret by clicking outside the body if the document is in standards mode\r\n\t\t_fixIESelection : function() {\r\n\t\t\tvar dom = this.dom, doc = dom.doc, body = doc.body, started, startRng, htmlElm;\r\n\r\n\t\t\t// Make HTML element unselectable since we are going to handle selection by hand\r\n\t\t\tdoc.documentElement.unselectable = true;\r\n\r\n\t\t\t// Return range from point or null if it failed\r\n\t\t\tfunction rngFromPoint(x, y) {\r\n\t\t\t\tvar rng = body.createTextRange();\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\trng.moveToPoint(x, y);\r\n\t\t\t\t} catch (ex) {\r\n\t\t\t\t\t// IE sometimes throws and exception, so lets just ignore it\r\n\t\t\t\t\trng = null;\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn rng;\r\n\t\t\t};\r\n\r\n\t\t\t// Fires while the selection is changing\r\n\t\t\tfunction selectionChange(e) {\r\n\t\t\t\tvar pointRng;\r\n\r\n\t\t\t\t// Check if the button is down or not\r\n\t\t\t\tif (e.button) {\r\n\t\t\t\t\t// Create range from mouse position\r\n\t\t\t\t\tpointRng = rngFromPoint(e.x, e.y);\r\n\r\n\t\t\t\t\tif (pointRng) {\r\n\t\t\t\t\t\t// Check if pointRange is before/after selection then change the endPoint\r\n\t\t\t\t\t\tif (pointRng.compareEndPoints('StartToStart', startRng) > 0)\r\n\t\t\t\t\t\t\tpointRng.setEndPoint('StartToStart', startRng);\r\n\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\tpointRng.setEndPoint('EndToEnd', startRng);\r\n\r\n\t\t\t\t\t\tpointRng.select();\r\n\t\t\t\t\t}\r\n\t\t\t\t} else\r\n\t\t\t\t\tendSelection();\r\n\t\t\t}\r\n\r\n\t\t\t// Removes listeners\r\n\t\t\tfunction endSelection() {\r\n\t\t\t\tvar rng = doc.selection.createRange();\r\n\r\n\t\t\t\t// If the range is collapsed then use the last start range\r\n\t\t\t\tif (startRng && !rng.item && rng.compareEndPoints('StartToEnd', rng) === 0)\r\n\t\t\t\t\tstartRng.select();\r\n\r\n\t\t\t\tdom.unbind(doc, 'mouseup', endSelection);\r\n\t\t\t\tdom.unbind(doc, 'mousemove', selectionChange);\r\n\t\t\t\tstartRng = started = 0;\r\n\t\t\t};\r\n\r\n\t\t\t// Detect when user selects outside BODY\r\n\t\t\tdom.bind(doc, ['mousedown', 'contextmenu'], function(e) {\r\n\t\t\t\tif (e.target.nodeName === 'HTML') {\r\n\t\t\t\t\tif (started)\r\n\t\t\t\t\t\tendSelection();\r\n\r\n\t\t\t\t\t// Detect vertical scrollbar, since IE will fire a mousedown on the scrollbar and have target set as HTML\r\n\t\t\t\t\thtmlElm = doc.documentElement;\r\n\t\t\t\t\tif (htmlElm.scrollHeight > htmlElm.clientHeight)\r\n\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\tstarted = 1;\r\n\t\t\t\t\t// Setup start position\r\n\t\t\t\t\tstartRng = rngFromPoint(e.x, e.y);\r\n\t\t\t\t\tif (startRng) {\r\n\t\t\t\t\t\t// Listen for selection change events\r\n\t\t\t\t\t\tdom.bind(doc, 'mouseup', endSelection);\r\n\t\t\t\t\t\tdom.bind(doc, 'mousemove', selectionChange);\r\n\r\n\t\t\t\t\t\tdom.win.focus();\r\n\t\t\t\t\t\tstartRng.select();\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t});\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\ttinymce.dom.Serializer = function(settings, dom, schema) {\r\n\t\tvar onPreProcess, onPostProcess, isIE = tinymce.isIE, each = tinymce.each, htmlParser;\r\n\r\n\t\t// Support the old apply_source_formatting option\r\n\t\tif (!settings.apply_source_formatting)\r\n\t\t\tsettings.indent = false;\r\n\r\n\t\tsettings.remove_trailing_brs = true;\r\n\r\n\t\t// Default DOM and Schema if they are undefined\r\n\t\tdom = dom || tinymce.DOM;\r\n\t\tschema = schema || new tinymce.html.Schema(settings);\r\n\t\tsettings.entity_encoding = settings.entity_encoding || 'named';\r\n\r\n\t\tonPreProcess = new tinymce.util.Dispatcher(self);\r\n\r\n\t\tonPostProcess = new tinymce.util.Dispatcher(self);\r\n\r\n\t\thtmlParser = new tinymce.html.DomParser(settings, schema);\r\n\r\n\t\t// Convert move data-mce-src, data-mce-href and data-mce-style into nodes or process them if needed\r\n\t\thtmlParser.addAttributeFilter('src,href,style', function(nodes, name) {\r\n\t\t\tvar i = nodes.length, node, value, internalName = 'data-mce-' + name, urlConverter = settings.url_converter, urlConverterScope = settings.url_converter_scope, undef;\r\n\r\n\t\t\twhile (i--) {\r\n\t\t\t\tnode = nodes[i];\r\n\r\n\t\t\t\tvalue = node.attributes.map[internalName];\r\n\t\t\t\tif (value !== undef) {\r\n\t\t\t\t\t// Set external name to internal value and remove internal\r\n\t\t\t\t\tnode.attr(name, value.length > 0 ? value : null);\r\n\t\t\t\t\tnode.attr(internalName, null);\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// No internal attribute found then convert the value we have in the DOM\r\n\t\t\t\t\tvalue = node.attributes.map[name];\r\n\r\n\t\t\t\t\tif (name === \"style\")\r\n\t\t\t\t\t\tvalue = dom.serializeStyle(dom.parseStyle(value), node.name);\r\n\t\t\t\t\telse if (urlConverter)\r\n\t\t\t\t\t\tvalue = urlConverter.call(urlConverterScope, value, name, node.name);\r\n\r\n\t\t\t\t\tnode.attr(name, value.length > 0 ? value : null);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\t// Remove internal classes mceItem<..>\r\n\t\thtmlParser.addAttributeFilter('class', function(nodes, name) {\r\n\t\t\tvar i = nodes.length, node, value;\r\n\r\n\t\t\twhile (i--) {\r\n\t\t\t\tnode = nodes[i];\r\n\t\t\t\tvalue = node.attr('class').replace(/\\s*mce(Item\\w+|Selected)\\s*/g, '');\r\n\t\t\t\tnode.attr('class', value.length > 0 ? value : null);\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\t// Remove bookmark elements\r\n\t\thtmlParser.addAttributeFilter('data-mce-type', function(nodes, name, args) {\r\n\t\t\tvar i = nodes.length, node;\r\n\r\n\t\t\twhile (i--) {\r\n\t\t\t\tnode = nodes[i];\r\n\r\n\t\t\t\tif (node.attributes.map['data-mce-type'] === 'bookmark' && !args.cleanup)\r\n\t\t\t\t\tnode.remove();\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\t// Force script into CDATA sections and remove the mce- prefix also add comments around styles\r\n\t\thtmlParser.addNodeFilter('script,style', function(nodes, name) {\r\n\t\t\tvar i = nodes.length, node, value;\r\n\r\n\t\t\tfunction trim(value) {\r\n\t\t\t\treturn value.replace(/(<!--\\[CDATA\\[|\\]\\]-->)/g, '\\n')\r\n\t\t\t\t\t\t.replace(/^[\\r\\n]*|[\\r\\n]*$/g, '')\r\n\t\t\t\t\t\t.replace(/^\\s*(\\/\\/\\s*<!--|\\/\\/\\s*<!\\[CDATA\\[|<!--|<!\\[CDATA\\[)[\\r\\n]*/g, '')\r\n\t\t\t\t\t\t.replace(/\\s*(\\/\\/\\s*\\]\\]>|\\/\\/\\s*-->|\\]\\]>|-->|\\]\\]-->)\\s*$/g, '');\r\n\t\t\t};\r\n\r\n\t\t\twhile (i--) {\r\n\t\t\t\tnode = nodes[i];\r\n\t\t\t\tvalue = node.firstChild ? node.firstChild.value : '';\r\n\r\n\t\t\t\tif (name === \"script\") {\r\n\t\t\t\t\t// Remove mce- prefix from script elements\r\n\t\t\t\t\tnode.attr('type', (node.attr('type') || 'text/javascript').replace(/^mce\\-/, ''));\r\n\r\n\t\t\t\t\tif (value.length > 0)\r\n\t\t\t\t\t\tnode.firstChild.value = '// <![CDATA[\\n' + trim(value) + '\\n// ]]>';\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (value.length > 0)\r\n\t\t\t\t\t\tnode.firstChild.value = '<!--\\n' + trim(value) + '\\n-->';\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\t// Convert comments to cdata and handle protected comments\r\n\t\thtmlParser.addNodeFilter('#comment', function(nodes, name) {\r\n\t\t\tvar i = nodes.length, node;\r\n\r\n\t\t\twhile (i--) {\r\n\t\t\t\tnode = nodes[i];\r\n\r\n\t\t\t\tif (node.value.indexOf('[CDATA[') === 0) {\r\n\t\t\t\t\tnode.name = '#cdata';\r\n\t\t\t\t\tnode.type = 4;\r\n\t\t\t\t\tnode.value = node.value.replace(/^\\[CDATA\\[|\\]\\]$/g, '');\r\n\t\t\t\t} else if (node.value.indexOf('mce:protected ') === 0) {\r\n\t\t\t\t\tnode.name = \"#text\";\r\n\t\t\t\t\tnode.type = 3;\r\n\t\t\t\t\tnode.raw = true;\r\n\t\t\t\t\tnode.value = unescape(node.value).substr(14);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\thtmlParser.addNodeFilter('xml:namespace,input', function(nodes, name) {\r\n\t\t\tvar i = nodes.length, node;\r\n\r\n\t\t\twhile (i--) {\r\n\t\t\t\tnode = nodes[i];\r\n\t\t\t\tif (node.type === 7)\r\n\t\t\t\t\tnode.remove();\r\n\t\t\t\telse if (node.type === 1) {\r\n\t\t\t\t\tif (name === \"input\" && !(\"type\" in node.attributes.map))\r\n\t\t\t\t\t\tnode.attr('type', 'text');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\t// Fix list elements, TODO: Replace this later\r\n\t\tif (settings.fix_list_elements) {\r\n\t\t\thtmlParser.addNodeFilter('ul,ol', function(nodes, name) {\r\n\t\t\t\tvar i = nodes.length, node, parentNode;\r\n\r\n\t\t\t\twhile (i--) {\r\n\t\t\t\t\tnode = nodes[i];\r\n\t\t\t\t\tparentNode = node.parent;\r\n\r\n\t\t\t\t\tif (parentNode.name === 'ul' || parentNode.name === 'ol') {\r\n\t\t\t\t\t\tif (node.prev && node.prev.name === 'li') {\r\n\t\t\t\t\t\t\tnode.prev.append(node);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\t// Remove internal data attributes\r\n\t\thtmlParser.addAttributeFilter('data-mce-src,data-mce-href,data-mce-style', function(nodes, name) {\r\n\t\t\tvar i = nodes.length;\r\n\r\n\t\t\twhile (i--) {\r\n\t\t\t\tnodes[i].attr(name, null);\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\t// Return public methods\r\n\t\treturn {\r\n\t\t\tschema : schema,\r\n\r\n\t\t\taddNodeFilter : htmlParser.addNodeFilter,\r\n\r\n\t\t\taddAttributeFilter : htmlParser.addAttributeFilter,\r\n\r\n\t\t\tonPreProcess : onPreProcess,\r\n\r\n\t\t\tonPostProcess : onPostProcess,\r\n\r\n\t\t\tserialize : function(node, args) {\r\n\t\t\t\tvar impl, doc, oldDoc, htmlSerializer, content;\r\n\r\n\t\t\t\t// Explorer won't clone contents of script and style and the\r\n\t\t\t\t// selected index of select elements are cleared on a clone operation.\r\n\t\t\t\tif (isIE && dom.select('script,style,select,map').length > 0) {\r\n\t\t\t\t\tcontent = node.innerHTML;\r\n\t\t\t\t\tnode = node.cloneNode(false);\r\n\t\t\t\t\tdom.setHTML(node, content);\r\n\t\t\t\t} else\r\n\t\t\t\t\tnode = node.cloneNode(true);\r\n\r\n\t\t\t\t// Nodes needs to be attached to something in WebKit/Opera\r\n\t\t\t\t// Older builds of Opera crashes if you attach the node to an document created dynamically\r\n\t\t\t\t// and since we can't feature detect a crash we need to sniff the acutal build number\r\n\t\t\t\t// This fix will make DOM ranges and make Sizzle happy!\r\n\t\t\t\timpl = node.ownerDocument.implementation;\r\n\t\t\t\tif (impl.createHTMLDocument) {\r\n\t\t\t\t\t// Create an empty HTML document\r\n\t\t\t\t\tdoc = impl.createHTMLDocument(\"\");\r\n\r\n\t\t\t\t\t// Add the element or it's children if it's a body element to the new document\r\n\t\t\t\t\teach(node.nodeName == 'BODY' ? node.childNodes : [node], function(node) {\r\n\t\t\t\t\t\tdoc.body.appendChild(doc.importNode(node, true));\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\t// Grab first child or body element for serialization\r\n\t\t\t\t\tif (node.nodeName != 'BODY')\r\n\t\t\t\t\t\tnode = doc.body.firstChild;\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\tnode = doc.body;\r\n\r\n\t\t\t\t\t// set the new document in DOMUtils so createElement etc works\r\n\t\t\t\t\toldDoc = dom.doc;\r\n\t\t\t\t\tdom.doc = doc;\r\n\t\t\t\t}\r\n\r\n\t\t\t\targs = args || {};\r\n\t\t\t\targs.format = args.format || 'html';\r\n\r\n\t\t\t\t// Pre process\r\n\t\t\t\tif (!args.no_events) {\r\n\t\t\t\t\targs.node = node;\r\n\t\t\t\t\tonPreProcess.dispatch(self, args);\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Setup serializer\r\n\t\t\t\thtmlSerializer = new tinymce.html.Serializer(settings, schema);\r\n\r\n\t\t\t\t// Parse and serialize HTML\r\n\t\t\t\targs.content = htmlSerializer.serialize(\r\n\t\t\t\t\thtmlParser.parse(args.getInner ? node.innerHTML : tinymce.trim(dom.getOuterHTML(node), args), args)\r\n\t\t\t\t);\r\n\r\n\t\t\t\t// Replace all BOM characters for now until we can find a better solution\r\n\t\t\t\tif (!args.cleanup)\r\n\t\t\t\t\targs.content = args.content.replace(/\\uFEFF/g, '');\r\n\r\n\t\t\t\t// Post process\r\n\t\t\t\tif (!args.no_events)\r\n\t\t\t\t\tonPostProcess.dispatch(self, args);\r\n\r\n\t\t\t\t// Restore the old document if it was changed\r\n\t\t\t\tif (oldDoc)\r\n\t\t\t\t\tdom.doc = oldDoc;\r\n\r\n\t\t\t\targs.node = null;\r\n\r\n\t\t\t\treturn args.content;\r\n\t\t\t},\r\n\r\n\t\t\taddRules : function(rules) {\r\n\t\t\t\tschema.addValidElements(rules);\r\n\t\t\t},\r\n\r\n\t\t\tsetRules : function(rules) {\r\n\t\t\t\tschema.setValidElements(rules);\r\n\t\t\t}\r\n\t\t};\r\n\t};\r\n})(tinymce);\r\n(function(tinymce) {\r\n\ttinymce.dom.ScriptLoader = function(settings) {\r\n\t\tvar QUEUED = 0,\r\n\t\t\tLOADING = 1,\r\n\t\t\tLOADED = 2,\r\n\t\t\tstates = {},\r\n\t\t\tqueue = [],\r\n\t\t\tscriptLoadedCallbacks = {},\r\n\t\t\tqueueLoadedCallbacks = [],\r\n\t\t\tloading = 0,\r\n\t\t\tundefined;\r\n\r\n\t\tfunction loadScript(url, callback) {\r\n\t\t\tvar t = this, dom = tinymce.DOM, elm, uri, loc, id;\r\n\r\n\t\t\t// Execute callback when script is loaded\r\n\t\t\tfunction done() {\r\n\t\t\t\tdom.remove(id);\r\n\r\n\t\t\t\tif (elm)\r\n\t\t\t\t\telm.onreadystatechange = elm.onload = elm = null;\r\n\r\n\t\t\t\tcallback();\r\n\t\t\t};\r\n\t\t\t\r\n\t\t\tfunction error() {\r\n\t\t\t\t// Report the error so it's easier for people to spot loading errors\r\n\t\t\t\tif (typeof(console) !== \"undefined\" && console.log)\r\n\t\t\t\t\tconsole.log(\"Failed to load: \" + url);\r\n\r\n\t\t\t\t// We can't mark it as done if there is a load error since\r\n\t\t\t\t// A) We don't want to produce 404 errors on the server and\r\n\t\t\t\t// B) the onerror event won't fire on all browsers.\r\n\t\t\t\t// done();\r\n\t\t\t};\r\n\r\n\t\t\tid = dom.uniqueId();\r\n\r\n\t\t\tif (tinymce.isIE6) {\r\n\t\t\t\turi = new tinymce.util.URI(url);\r\n\t\t\t\tloc = location;\r\n\r\n\t\t\t\t// If script is from same domain and we\r\n\t\t\t\t// use IE 6 then use XHR since it's more reliable\r\n\t\t\t\tif (uri.host == loc.hostname && uri.port == loc.port && (uri.protocol + ':') == loc.protocol && uri.protocol.toLowerCase() != 'file') {\r\n\t\t\t\t\ttinymce.util.XHR.send({\r\n\t\t\t\t\t\turl : tinymce._addVer(uri.getURI()),\r\n\t\t\t\t\t\tsuccess : function(content) {\r\n\t\t\t\t\t\t\t// Create new temp script element\r\n\t\t\t\t\t\t\tvar script = dom.create('script', {\r\n\t\t\t\t\t\t\t\ttype : 'text/javascript'\r\n\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\t// Evaluate script in global scope\r\n\t\t\t\t\t\t\tscript.text = content;\r\n\t\t\t\t\t\t\tdocument.getElementsByTagName('head')[0].appendChild(script);\r\n\t\t\t\t\t\t\tdom.remove(script);\r\n\r\n\t\t\t\t\t\t\tdone();\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\terror : error\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Create new script element\r\n\t\t\telm = dom.create('script', {\r\n\t\t\t\tid : id,\r\n\t\t\t\ttype : 'text/javascript',\r\n\t\t\t\tsrc : tinymce._addVer(url)\r\n\t\t\t});\r\n\r\n\t\t\t// Add onload listener for non IE browsers since IE9\r\n\t\t\t// fires onload event before the script is parsed and executed\r\n\t\t\tif (!tinymce.isIE)\r\n\t\t\t\telm.onload = done;\r\n\r\n\t\t\t// Add onerror event will get fired on some browsers but not all of them\r\n\t\t\telm.onerror = error;\r\n\r\n\t\t\t// Opera 9.60 doesn't seem to fire the onreadystate event at correctly\r\n\t\t\tif (!tinymce.isOpera) {\r\n\t\t\t\telm.onreadystatechange = function() {\r\n\t\t\t\t\tvar state = elm.readyState;\r\n\r\n\t\t\t\t\t// Loaded state is passed on IE 6 however there\r\n\t\t\t\t\t// are known issues with this method but we can't use\r\n\t\t\t\t\t// XHR in a cross domain loading\r\n\t\t\t\t\tif (state == 'complete' || state == 'loaded')\r\n\t\t\t\t\t\tdone();\r\n\t\t\t\t};\r\n\t\t\t}\r\n\r\n\t\t\t// Most browsers support this feature so we report errors\r\n\t\t\t// for those at least to help users track their missing plugins etc\r\n\t\t\t// todo: Removed since it produced error if the document is unloaded by navigating away, re-add it as an option\r\n\t\t\t/*elm.onerror = function() {\r\n\t\t\t\talert('Failed to load: ' + url);\r\n\t\t\t};*/\r\n\r\n\t\t\t// Add script to document\r\n\t\t\t(document.getElementsByTagName('head')[0] || document.body).appendChild(elm);\r\n\t\t};\r\n\r\n\t\tthis.isDone = function(url) {\r\n\t\t\treturn states[url] == LOADED;\r\n\t\t};\r\n\r\n\t\tthis.markDone = function(url) {\r\n\t\t\tstates[url] = LOADED;\r\n\t\t};\r\n\r\n\t\tthis.add = this.load = function(url, callback, scope) {\r\n\t\t\tvar item, state = states[url];\r\n\r\n\t\t\t// Add url to load queue\r\n\t\t\tif (state == undefined) {\r\n\t\t\t\tqueue.push(url);\r\n\t\t\t\tstates[url] = QUEUED;\r\n\t\t\t}\r\n\r\n\t\t\tif (callback) {\r\n\t\t\t\t// Store away callback for later execution\r\n\t\t\t\tif (!scriptLoadedCallbacks[url])\r\n\t\t\t\t\tscriptLoadedCallbacks[url] = [];\r\n\r\n\t\t\t\tscriptLoadedCallbacks[url].push({\r\n\t\t\t\t\tfunc : callback,\r\n\t\t\t\t\tscope : scope || this\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tthis.loadQueue = function(callback, scope) {\r\n\t\t\tthis.loadScripts(queue, callback, scope);\r\n\t\t};\r\n\r\n\t\tthis.loadScripts = function(scripts, callback, scope) {\r\n\t\t\tvar loadScripts;\r\n\r\n\t\t\tfunction execScriptLoadedCallbacks(url) {\r\n\t\t\t\t// Execute URL callback functions\r\n\t\t\t\ttinymce.each(scriptLoadedCallbacks[url], function(callback) {\r\n\t\t\t\t\tcallback.func.call(callback.scope);\r\n\t\t\t\t});\r\n\r\n\t\t\t\tscriptLoadedCallbacks[url] = undefined;\r\n\t\t\t};\r\n\r\n\t\t\tqueueLoadedCallbacks.push({\r\n\t\t\t\tfunc : callback,\r\n\t\t\t\tscope : scope || this\r\n\t\t\t});\r\n\r\n\t\t\tloadScripts = function() {\r\n\t\t\t\tvar loadingScripts = tinymce.grep(scripts);\r\n\r\n\t\t\t\t// Current scripts has been handled\r\n\t\t\t\tscripts.length = 0;\r\n\r\n\t\t\t\t// Load scripts that needs to be loaded\r\n\t\t\t\ttinymce.each(loadingScripts, function(url) {\r\n\t\t\t\t\t// Script is already loaded then execute script callbacks directly\r\n\t\t\t\t\tif (states[url] == LOADED) {\r\n\t\t\t\t\t\texecScriptLoadedCallbacks(url);\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Is script not loading then start loading it\r\n\t\t\t\t\tif (states[url] != LOADING) {\r\n\t\t\t\t\t\tstates[url] = LOADING;\r\n\t\t\t\t\t\tloading++;\r\n\r\n\t\t\t\t\t\tloadScript(url, function() {\r\n\t\t\t\t\t\t\tstates[url] = LOADED;\r\n\t\t\t\t\t\t\tloading--;\r\n\r\n\t\t\t\t\t\t\texecScriptLoadedCallbacks(url);\r\n\r\n\t\t\t\t\t\t\t// Load more scripts if they where added by the recently loaded script\r\n\t\t\t\t\t\t\tloadScripts();\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// No scripts are currently loading then execute all pending queue loaded callbacks\r\n\t\t\t\tif (!loading) {\r\n\t\t\t\t\ttinymce.each(queueLoadedCallbacks, function(callback) {\r\n\t\t\t\t\t\tcallback.func.call(callback.scope);\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tqueueLoadedCallbacks.length = 0;\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\t\t\tloadScripts();\r\n\t\t};\r\n\t};\r\n\r\n\t// Global script loader\r\n\ttinymce.ScriptLoader = new tinymce.dom.ScriptLoader();\r\n})(tinymce);\r\n\r\ntinymce.dom.TreeWalker = function(start_node, root_node) {\r\n\tvar node = start_node;\r\n\r\n\tfunction findSibling(node, start_name, sibling_name, shallow) {\r\n\t\tvar sibling, parent;\r\n\r\n\t\tif (node) {\r\n\t\t\t// Walk into nodes if it has a start\r\n\t\t\tif (!shallow && node[start_name])\r\n\t\t\t\treturn node[start_name];\r\n\r\n\t\t\t// Return the sibling if it has one\r\n\t\t\tif (node != root_node) {\r\n\t\t\t\tsibling = node[sibling_name];\r\n\t\t\t\tif (sibling)\r\n\t\t\t\t\treturn sibling;\r\n\r\n\t\t\t\t// Walk up the parents to look for siblings\r\n\t\t\t\tfor (parent = node.parentNode; parent && parent != root_node; parent = parent.parentNode) {\r\n\t\t\t\t\tsibling = parent[sibling_name];\r\n\t\t\t\t\tif (sibling)\r\n\t\t\t\t\t\treturn sibling;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\tthis.current = function() {\r\n\t\treturn node;\r\n\t};\r\n\r\n\tthis.next = function(shallow) {\r\n\t\treturn (node = findSibling(node, 'firstChild', 'nextSibling', shallow));\r\n\t};\r\n\r\n\tthis.prev = function(shallow) {\r\n\t\treturn (node = findSibling(node, 'lastChild', 'previousSibling', shallow));\r\n\t};\r\n};\r\n\r\n(function(tinymce) {\r\n\ttinymce.dom.RangeUtils = function(dom) {\r\n\t\tvar INVISIBLE_CHAR = '\\uFEFF';\r\n\r\n\t\tthis.walk = function(rng, callback) {\r\n\t\t\tvar startContainer = rng.startContainer,\r\n\t\t\t\tstartOffset = rng.startOffset,\r\n\t\t\t\tendContainer = rng.endContainer,\r\n\t\t\t\tendOffset = rng.endOffset,\r\n\t\t\t\tancestor, startPoint,\r\n\t\t\t\tendPoint, node, parent, siblings, nodes;\r\n\r\n\t\t\t// Handle table cell selection the table plugin enables\r\n\t\t\t// you to fake select table cells and perform formatting actions on them\r\n\t\t\tnodes = dom.select('td.mceSelected,th.mceSelected');\r\n\t\t\tif (nodes.length > 0) {\r\n\t\t\t\ttinymce.each(nodes, function(node) {\r\n\t\t\t\t\tcallback([node]);\r\n\t\t\t\t});\r\n\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tfunction collectSiblings(node, name, end_node) {\r\n\t\t\t\tvar siblings = [];\r\n\r\n\t\t\t\tfor (; node && node != end_node; node = node[name])\r\n\t\t\t\t\tsiblings.push(node);\r\n\r\n\t\t\t\treturn siblings;\r\n\t\t\t};\r\n\r\n\t\t\tfunction findEndPoint(node, root) {\r\n\t\t\t\tdo {\r\n\t\t\t\t\tif (node.parentNode == root)\r\n\t\t\t\t\t\treturn node;\r\n\r\n\t\t\t\t\tnode = node.parentNode;\r\n\t\t\t\t} while(node);\r\n\t\t\t};\r\n\r\n\t\t\tfunction walkBoundary(start_node, end_node, next) {\r\n\t\t\t\tvar siblingName = next ? 'nextSibling' : 'previousSibling';\r\n\r\n\t\t\t\tfor (node = start_node, parent = node.parentNode; node && node != end_node; node = parent) {\r\n\t\t\t\t\tparent = node.parentNode;\r\n\t\t\t\t\tsiblings = collectSiblings(node == start_node ? node : node[siblingName], siblingName);\r\n\r\n\t\t\t\t\tif (siblings.length) {\r\n\t\t\t\t\t\tif (!next)\r\n\t\t\t\t\t\t\tsiblings.reverse();\r\n\r\n\t\t\t\t\t\tcallback(siblings);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\t\t\t// If index based start position then resolve it\r\n\t\t\tif (startContainer.nodeType == 1 && startContainer.hasChildNodes())\r\n\t\t\t\tstartContainer = startContainer.childNodes[startOffset];\r\n\r\n\t\t\t// If index based end position then resolve it\r\n\t\t\tif (endContainer.nodeType == 1 && endContainer.hasChildNodes())\r\n\t\t\t\tendContainer = endContainer.childNodes[Math.min(endOffset - 1, endContainer.childNodes.length - 1)];\r\n\r\n\t\t\t// Find common ancestor and end points\r\n\t\t\tancestor = dom.findCommonAncestor(startContainer, endContainer);\r\n\r\n\t\t\t// Same container\r\n\t\t\tif (startContainer == endContainer)\r\n\t\t\t\treturn callback([startContainer]);\r\n\r\n\t\t\t// Process left side\r\n\t\t\tfor (node = startContainer; node; node = node.parentNode) {\r\n\t\t\t\tif (node == endContainer)\r\n\t\t\t\t\treturn walkBoundary(startContainer, ancestor, true);\r\n\r\n\t\t\t\tif (node == ancestor)\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\r\n\t\t\t// Process right side\r\n\t\t\tfor (node = endContainer; node; node = node.parentNode) {\r\n\t\t\t\tif (node == startContainer)\r\n\t\t\t\t\treturn walkBoundary(endContainer, ancestor);\r\n\r\n\t\t\t\tif (node == ancestor)\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\r\n\t\t\t// Find start/end point\r\n\t\t\tstartPoint = findEndPoint(startContainer, ancestor) || startContainer;\r\n\t\t\tendPoint = findEndPoint(endContainer, ancestor) || endContainer;\r\n\r\n\t\t\t// Walk left leaf\r\n\t\t\twalkBoundary(startContainer, startPoint, true);\r\n\r\n\t\t\t// Walk the middle from start to end point\r\n\t\t\tsiblings = collectSiblings(\r\n\t\t\t\tstartPoint == startContainer ? startPoint : startPoint.nextSibling,\r\n\t\t\t\t'nextSibling',\r\n\t\t\t\tendPoint == endContainer ? endPoint.nextSibling : endPoint\r\n\t\t\t);\r\n\r\n\t\t\tif (siblings.length)\r\n\t\t\t\tcallback(siblings);\r\n\r\n\t\t\t// Walk right leaf\r\n\t\t\twalkBoundary(endContainer, endPoint);\r\n\t\t};\r\n\r\n\t\t/*\t\tthis.split = function(rng) {\r\n\t\t\tvar startContainer = rng.startContainer,\r\n\t\t\t\tstartOffset = rng.startOffset,\r\n\t\t\t\tendContainer = rng.endContainer,\r\n\t\t\t\tendOffset = rng.endOffset;\r\n\r\n\t\t\tfunction splitText(node, offset) {\r\n\t\t\t\tif (offset == node.nodeValue.length)\r\n\t\t\t\t\tnode.appendData(INVISIBLE_CHAR);\r\n\r\n\t\t\t\tnode = node.splitText(offset);\r\n\r\n\t\t\t\tif (node.nodeValue === INVISIBLE_CHAR)\r\n\t\t\t\t\tnode.nodeValue = '';\r\n\r\n\t\t\t\treturn node;\r\n\t\t\t};\r\n\r\n\t\t\t// Handle single text node\r\n\t\t\tif (startContainer == endContainer) {\r\n\t\t\t\tif (startContainer.nodeType == 3) {\r\n\t\t\t\t\tif (startOffset != 0)\r\n\t\t\t\t\t\tstartContainer = endContainer = splitText(startContainer, startOffset);\r\n\r\n\t\t\t\t\tif (endOffset - startOffset != startContainer.nodeValue.length)\r\n\t\t\t\t\t\tsplitText(startContainer, endOffset - startOffset);\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\t// Split startContainer text node if needed\r\n\t\t\t\tif (startContainer.nodeType == 3 && startOffset != 0) {\r\n\t\t\t\t\tstartContainer = splitText(startContainer, startOffset);\r\n\t\t\t\t\tstartOffset = 0;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Split endContainer text node if needed\r\n\t\t\t\tif (endContainer.nodeType == 3 && endOffset != endContainer.nodeValue.length) {\r\n\t\t\t\t\tendContainer = splitText(endContainer, endOffset).previousSibling;\r\n\t\t\t\t\tendOffset = endContainer.nodeValue.length;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\treturn {\r\n\t\t\t\tstartContainer : startContainer,\r\n\t\t\t\tstartOffset : startOffset,\r\n\t\t\t\tendContainer : endContainer,\r\n\t\t\t\tendOffset : endOffset\r\n\t\t\t};\r\n\t\t};\r\n*/\r\n\t};\r\n\r\n\ttinymce.dom.RangeUtils.compareRanges = function(rng1, rng2) {\r\n\t\tif (rng1 && rng2) {\r\n\t\t\t// Compare native IE ranges\r\n\t\t\tif (rng1.item || rng1.duplicate) {\r\n\t\t\t\t// Both are control ranges and the selected element matches\r\n\t\t\t\tif (rng1.item && rng2.item && rng1.item(0) === rng2.item(0))\r\n\t\t\t\t\treturn true;\r\n\r\n\t\t\t\t// Both are text ranges and the range matches\r\n\t\t\t\tif (rng1.isEqual && rng2.isEqual && rng2.isEqual(rng1))\r\n\t\t\t\t\treturn true;\r\n\t\t\t} else {\r\n\t\t\t\t// Compare w3c ranges\r\n\t\t\t\treturn rng1.startContainer == rng2.startContainer && rng1.startOffset == rng2.startOffset;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn false;\r\n\t};\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\tvar Event = tinymce.dom.Event, each = tinymce.each;\r\n\r\n\ttinymce.create('tinymce.ui.KeyboardNavigation', {\r\n\t\tKeyboardNavigation: function(settings, dom) {\r\n\t\t\tvar t = this, root = settings.root, items = settings.items,\r\n\t\t\t\t\tenableUpDown = settings.enableUpDown, enableLeftRight = settings.enableLeftRight || !settings.enableUpDown,\r\n\t\t\t\t\texcludeFromTabOrder = settings.excludeFromTabOrder,\r\n\t\t\t\t\titemFocussed, itemBlurred, rootKeydown, rootFocussed, focussedId;\r\n\r\n\t\t\tdom = dom || tinymce.DOM;\r\n\r\n\t\t\titemFocussed = function(evt) {\r\n\t\t\t\tfocussedId = evt.target.id;\r\n\t\t\t};\r\n\t\t\t\r\n\t\t\titemBlurred = function(evt) {\r\n\t\t\t\tdom.setAttrib(evt.target.id, 'tabindex', '-1');\r\n\t\t\t};\r\n\t\t\t\r\n\t\t\trootFocussed = function(evt) {\r\n\t\t\t\tvar item = dom.get(focussedId);\r\n\t\t\t\tdom.setAttrib(item, 'tabindex', '0');\r\n\t\t\t\titem.focus();\r\n\t\t\t};\r\n\t\t\t\r\n\t\t\tt.focus = function() {\r\n\t\t\t\tdom.get(focussedId).focus();\r\n\t\t\t};\r\n\r\n\t\t\tt.destroy = function() {\r\n\t\t\t\teach(items, function(item) {\r\n\t\t\t\t\tdom.unbind(dom.get(item.id), 'focus', itemFocussed);\r\n\t\t\t\t\tdom.unbind(dom.get(item.id), 'blur', itemBlurred);\r\n\t\t\t\t});\r\n\r\n\t\t\t\tdom.unbind(dom.get(root), 'focus', rootFocussed);\r\n\t\t\t\tdom.unbind(dom.get(root), 'keydown', rootKeydown);\r\n\r\n\t\t\t\titems = dom = root = t.focus = itemFocussed = itemBlurred = rootKeydown = rootFocussed = null;\r\n\t\t\t\tt.destroy = function() {};\r\n\t\t\t};\r\n\t\t\t\r\n\t\t\tt.moveFocus = function(dir, evt) {\r\n\t\t\t\tvar idx = -1, controls = t.controls, newFocus;\r\n\r\n\t\t\t\tif (!focussedId)\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\teach(items, function(item, index) {\r\n\t\t\t\t\tif (item.id === focussedId) {\r\n\t\t\t\t\t\tidx = index;\r\n\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\tidx += dir;\r\n\t\t\t\tif (idx < 0) {\r\n\t\t\t\t\tidx = items.length - 1;\r\n\t\t\t\t} else if (idx >= items.length) {\r\n\t\t\t\t\tidx = 0;\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\tnewFocus = items[idx];\r\n\t\t\t\tdom.setAttrib(focussedId, 'tabindex', '-1');\r\n\t\t\t\tdom.setAttrib(newFocus.id, 'tabindex', '0');\r\n\t\t\t\tdom.get(newFocus.id).focus();\r\n\r\n\t\t\t\tif (settings.actOnFocus) {\r\n\t\t\t\t\tsettings.onAction(newFocus.id);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (evt)\r\n\t\t\t\t\tEvent.cancel(evt);\r\n\t\t\t};\r\n\t\t\t\r\n\t\t\trootKeydown = function(evt) {\r\n\t\t\t\tvar DOM_VK_LEFT = 37, DOM_VK_RIGHT = 39, DOM_VK_UP = 38, DOM_VK_DOWN = 40, DOM_VK_ESCAPE = 27, DOM_VK_ENTER = 14, DOM_VK_RETURN = 13, DOM_VK_SPACE = 32;\r\n\t\t\t\t\r\n\t\t\t\tswitch (evt.keyCode) {\r\n\t\t\t\t\tcase DOM_VK_LEFT:\r\n\t\t\t\t\t\tif (enableLeftRight) t.moveFocus(-1);\r\n\t\t\t\t\t\tbreak;\r\n\t\r\n\t\t\t\t\tcase DOM_VK_RIGHT:\r\n\t\t\t\t\t\tif (enableLeftRight) t.moveFocus(1);\r\n\t\t\t\t\t\tbreak;\r\n\t\r\n\t\t\t\t\tcase DOM_VK_UP:\r\n\t\t\t\t\t\tif (enableUpDown) t.moveFocus(-1);\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase DOM_VK_DOWN:\r\n\t\t\t\t\t\tif (enableUpDown) t.moveFocus(1);\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase DOM_VK_ESCAPE:\r\n\t\t\t\t\t\tif (settings.onCancel) {\r\n\t\t\t\t\t\t\tsettings.onCancel();\r\n\t\t\t\t\t\t\tEvent.cancel(evt);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase DOM_VK_ENTER:\r\n\t\t\t\t\tcase DOM_VK_RETURN:\r\n\t\t\t\t\tcase DOM_VK_SPACE:\r\n\t\t\t\t\t\tif (settings.onAction) {\r\n\t\t\t\t\t\t\tsettings.onAction(focussedId);\r\n\t\t\t\t\t\t\tEvent.cancel(evt);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\t\t\t// Set up state and listeners for each item.\r\n\t\t\teach(items, function(item, idx) {\r\n\t\t\t\tvar tabindex;\r\n\r\n\t\t\t\tif (!item.id) {\r\n\t\t\t\t\titem.id = dom.uniqueId('_mce_item_');\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (excludeFromTabOrder) {\r\n\t\t\t\t\tdom.bind(item.id, 'blur', itemBlurred);\r\n\t\t\t\t\ttabindex = '-1';\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttabindex = (idx === 0 ? '0' : '-1');\r\n\t\t\t\t}\r\n\r\n\t\t\t\tdom.setAttrib(item.id, 'tabindex', tabindex);\r\n\t\t\t\tdom.bind(dom.get(item.id), 'focus', itemFocussed);\r\n\t\t\t});\r\n\t\t\t\r\n\t\t\t// Setup initial state for root element.\r\n\t\t\tif (items[0]){\r\n\t\t\t\tfocussedId = items[0].id;\r\n\t\t\t}\r\n\r\n\t\t\tdom.setAttrib(root, 'tabindex', '-1');\r\n\t\t\t\r\n\t\t\t// Setup listeners for root element.\r\n\t\t\tdom.bind(dom.get(root), 'focus', rootFocussed);\r\n\t\t\tdom.bind(dom.get(root), 'keydown', rootKeydown);\r\n\t\t}\r\n\t});\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\t// Shorten class names\r\n\tvar DOM = tinymce.DOM, is = tinymce.is;\r\n\r\n\ttinymce.create('tinymce.ui.Control', {\r\n\t\tControl : function(id, s, editor) {\r\n\t\t\tthis.id = id;\r\n\t\t\tthis.settings = s = s || {};\r\n\t\t\tthis.rendered = false;\r\n\t\t\tthis.onRender = new tinymce.util.Dispatcher(this);\r\n\t\t\tthis.classPrefix = '';\r\n\t\t\tthis.scope = s.scope || this;\r\n\t\t\tthis.disabled = 0;\r\n\t\t\tthis.active = 0;\r\n\t\t\tthis.editor = editor;\r\n\t\t},\r\n\t\t\r\n\t\tsetAriaProperty : function(property, value) {\r\n\t\t\tvar element = DOM.get(this.id + '_aria') || DOM.get(this.id);\r\n\t\t\tif (element) {\r\n\t\t\t\tDOM.setAttrib(element, 'aria-' + property, !!value);\r\n\t\t\t}\r\n\t\t},\r\n\t\t\r\n\t\tfocus : function() {\r\n\t\t\tDOM.get(this.id).focus();\r\n\t\t},\r\n\r\n\t\tsetDisabled : function(s) {\r\n\t\t\tif (s != this.disabled) {\r\n\t\t\t\tthis.setAriaProperty('disabled', s);\r\n\r\n\t\t\t\tthis.setState('Disabled', s);\r\n\t\t\t\tthis.setState('Enabled', !s);\r\n\t\t\t\tthis.disabled = s;\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tisDisabled : function() {\r\n\t\t\treturn this.disabled;\r\n\t\t},\r\n\r\n\t\tsetActive : function(s) {\r\n\t\t\tif (s != this.active) {\r\n\t\t\t\tthis.setState('Active', s);\r\n\t\t\t\tthis.active = s;\r\n\t\t\t\tthis.setAriaProperty('pressed', s);\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tisActive : function() {\r\n\t\t\treturn this.active;\r\n\t\t},\r\n\r\n\t\tsetState : function(c, s) {\r\n\t\t\tvar n = DOM.get(this.id);\r\n\r\n\t\t\tc = this.classPrefix + c;\r\n\r\n\t\t\tif (s)\r\n\t\t\t\tDOM.addClass(n, c);\r\n\t\t\telse\r\n\t\t\t\tDOM.removeClass(n, c);\r\n\t\t},\r\n\r\n\t\tisRendered : function() {\r\n\t\t\treturn this.rendered;\r\n\t\t},\r\n\r\n\t\trenderHTML : function() {\r\n\t\t},\r\n\r\n\t\trenderTo : function(n) {\r\n\t\t\tDOM.setHTML(n, this.renderHTML());\r\n\t\t},\r\n\r\n\t\tpostRender : function() {\r\n\t\t\tvar t = this, b;\r\n\r\n\t\t\t// Set pending states\r\n\t\t\tif (is(t.disabled)) {\r\n\t\t\t\tb = t.disabled;\r\n\t\t\t\tt.disabled = -1;\r\n\t\t\t\tt.setDisabled(b);\r\n\t\t\t}\r\n\r\n\t\t\tif (is(t.active)) {\r\n\t\t\t\tb = t.active;\r\n\t\t\t\tt.active = -1;\r\n\t\t\t\tt.setActive(b);\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tremove : function() {\r\n\t\t\tDOM.remove(this.id);\r\n\t\t\tthis.destroy();\r\n\t\t},\r\n\r\n\t\tdestroy : function() {\r\n\t\t\ttinymce.dom.Event.clear(this.id);\r\n\t\t}\r\n\t});\r\n})(tinymce);\r\ntinymce.create('tinymce.ui.Container:tinymce.ui.Control', {\r\n\tContainer : function(id, s, editor) {\r\n\t\tthis.parent(id, s, editor);\r\n\r\n\t\tthis.controls = [];\r\n\r\n\t\tthis.lookup = {};\r\n\t},\r\n\r\n\tadd : function(c) {\r\n\t\tthis.lookup[c.id] = c;\r\n\t\tthis.controls.push(c);\r\n\r\n\t\treturn c;\r\n\t},\r\n\r\n\tget : function(n) {\r\n\t\treturn this.lookup[n];\r\n\t}\r\n});\r\n\r\n\r\ntinymce.create('tinymce.ui.Separator:tinymce.ui.Control', {\r\n\tSeparator : function(id, s) {\r\n\t\tthis.parent(id, s);\r\n\t\tthis.classPrefix = 'mceSeparator';\r\n\t\tthis.setDisabled(true);\r\n\t},\r\n\r\n\trenderHTML : function() {\r\n\t\treturn tinymce.DOM.createHTML('span', {'class' : this.classPrefix, role : 'separator', 'aria-orientation' : 'vertical', tabindex : '-1'});\r\n\t}\r\n});\r\n\r\n(function(tinymce) {\r\n\tvar is = tinymce.is, DOM = tinymce.DOM, each = tinymce.each, walk = tinymce.walk;\r\n\r\n\ttinymce.create('tinymce.ui.MenuItem:tinymce.ui.Control', {\r\n\t\tMenuItem : function(id, s) {\r\n\t\t\tthis.parent(id, s);\r\n\t\t\tthis.classPrefix = 'mceMenuItem';\r\n\t\t},\r\n\r\n\t\tsetSelected : function(s) {\r\n\t\t\tthis.setState('Selected', s);\r\n\t\t\tthis.setAriaProperty('checked', !!s);\r\n\t\t\tthis.selected = s;\r\n\t\t},\r\n\r\n\t\tisSelected : function() {\r\n\t\t\treturn this.selected;\r\n\t\t},\r\n\r\n\t\tpostRender : function() {\r\n\t\t\tvar t = this;\r\n\t\t\t\r\n\t\t\tt.parent();\r\n\r\n\t\t\t// Set pending state\r\n\t\t\tif (is(t.selected))\r\n\t\t\t\tt.setSelected(t.selected);\r\n\t\t}\r\n\t});\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\tvar is = tinymce.is, DOM = tinymce.DOM, each = tinymce.each, walk = tinymce.walk;\r\n\r\n\ttinymce.create('tinymce.ui.Menu:tinymce.ui.MenuItem', {\r\n\t\tMenu : function(id, s) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tt.parent(id, s);\r\n\t\t\tt.items = {};\r\n\t\t\tt.collapsed = false;\r\n\t\t\tt.menuCount = 0;\r\n\t\t\tt.onAddItem = new tinymce.util.Dispatcher(this);\r\n\t\t},\r\n\r\n\t\texpand : function(d) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tif (d) {\r\n\t\t\t\twalk(t, function(o) {\r\n\t\t\t\t\tif (o.expand)\r\n\t\t\t\t\t\to.expand();\r\n\t\t\t\t}, 'items', t);\r\n\t\t\t}\r\n\r\n\t\t\tt.collapsed = false;\r\n\t\t},\r\n\r\n\t\tcollapse : function(d) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tif (d) {\r\n\t\t\t\twalk(t, function(o) {\r\n\t\t\t\t\tif (o.collapse)\r\n\t\t\t\t\t\to.collapse();\r\n\t\t\t\t}, 'items', t);\r\n\t\t\t}\r\n\r\n\t\t\tt.collapsed = true;\r\n\t\t},\r\n\r\n\t\tisCollapsed : function() {\r\n\t\t\treturn this.collapsed;\r\n\t\t},\r\n\r\n\t\tadd : function(o) {\r\n\t\t\tif (!o.settings)\r\n\t\t\t\to = new tinymce.ui.MenuItem(o.id || DOM.uniqueId(), o);\r\n\r\n\t\t\tthis.onAddItem.dispatch(this, o);\r\n\r\n\t\t\treturn this.items[o.id] = o;\r\n\t\t},\r\n\r\n\t\taddSeparator : function() {\r\n\t\t\treturn this.add({separator : true});\r\n\t\t},\r\n\r\n\t\taddMenu : function(o) {\r\n\t\t\tif (!o.collapse)\r\n\t\t\t\to = this.createMenu(o);\r\n\r\n\t\t\tthis.menuCount++;\r\n\r\n\t\t\treturn this.add(o);\r\n\t\t},\r\n\r\n\t\thasMenus : function() {\r\n\t\t\treturn this.menuCount !== 0;\r\n\t\t},\r\n\r\n\t\tremove : function(o) {\r\n\t\t\tdelete this.items[o.id];\r\n\t\t},\r\n\r\n\t\tremoveAll : function() {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\twalk(t, function(o) {\r\n\t\t\t\tif (o.removeAll)\r\n\t\t\t\t\to.removeAll();\r\n\t\t\t\telse\r\n\t\t\t\t\to.remove();\r\n\r\n\t\t\t\to.destroy();\r\n\t\t\t}, 'items', t);\r\n\r\n\t\t\tt.items = {};\r\n\t\t},\r\n\r\n\t\tcreateMenu : function(o) {\r\n\t\t\tvar m = new tinymce.ui.Menu(o.id || DOM.uniqueId(), o);\r\n\r\n\t\t\tm.onAddItem.add(this.onAddItem.dispatch, this.onAddItem);\r\n\r\n\t\t\treturn m;\r\n\t\t}\r\n\t});\r\n})(tinymce);\r\n(function(tinymce) {\r\n\tvar is = tinymce.is, DOM = tinymce.DOM, each = tinymce.each, Event = tinymce.dom.Event, Element = tinymce.dom.Element;\r\n\r\n\ttinymce.create('tinymce.ui.DropMenu:tinymce.ui.Menu', {\r\n\t\tDropMenu : function(id, s) {\r\n\t\t\ts = s || {};\r\n\t\t\ts.container = s.container || DOM.doc.body;\r\n\t\t\ts.offset_x = s.offset_x || 0;\r\n\t\t\ts.offset_y = s.offset_y || 0;\r\n\t\t\ts.vp_offset_x = s.vp_offset_x || 0;\r\n\t\t\ts.vp_offset_y = s.vp_offset_y || 0;\r\n\r\n\t\t\tif (is(s.icons) && !s.icons)\r\n\t\t\t\ts['class'] += ' mceNoIcons';\r\n\r\n\t\t\tthis.parent(id, s);\r\n\t\t\tthis.onShowMenu = new tinymce.util.Dispatcher(this);\r\n\t\t\tthis.onHideMenu = new tinymce.util.Dispatcher(this);\r\n\t\t\tthis.classPrefix = 'mceMenu';\r\n\t\t},\r\n\r\n\t\tcreateMenu : function(s) {\r\n\t\t\tvar t = this, cs = t.settings, m;\r\n\r\n\t\t\ts.container = s.container || cs.container;\r\n\t\t\ts.parent = t;\r\n\t\t\ts.constrain = s.constrain || cs.constrain;\r\n\t\t\ts['class'] = s['class'] || cs['class'];\r\n\t\t\ts.vp_offset_x = s.vp_offset_x || cs.vp_offset_x;\r\n\t\t\ts.vp_offset_y = s.vp_offset_y || cs.vp_offset_y;\r\n\t\t\ts.keyboard_focus = cs.keyboard_focus;\r\n\t\t\tm = new tinymce.ui.DropMenu(s.id || DOM.uniqueId(), s);\r\n\r\n\t\t\tm.onAddItem.add(t.onAddItem.dispatch, t.onAddItem);\r\n\r\n\t\t\treturn m;\r\n\t\t},\r\n\t\t\r\n\t\tfocus : function() {\r\n\t\t\tvar t = this;\r\n\t\t\tif (t.keyboardNav) {\r\n\t\t\t\tt.keyboardNav.focus();\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tupdate : function() {\r\n\t\t\tvar t = this, s = t.settings, tb = DOM.get('menu_' + t.id + '_tbl'), co = DOM.get('menu_' + t.id + '_co'), tw, th;\r\n\r\n\t\t\ttw = s.max_width ? Math.min(tb.clientWidth, s.max_width) : tb.clientWidth;\r\n\t\t\tth = s.max_height ? Math.min(tb.clientHeight, s.max_height) : tb.clientHeight;\r\n\r\n\t\t\tif (!DOM.boxModel)\r\n\t\t\t\tt.element.setStyles({width : tw + 2, height : th + 2});\r\n\t\t\telse\r\n\t\t\t\tt.element.setStyles({width : tw, height : th});\r\n\r\n\t\t\tif (s.max_width)\r\n\t\t\t\tDOM.setStyle(co, 'width', tw);\r\n\r\n\t\t\tif (s.max_height) {\r\n\t\t\t\tDOM.setStyle(co, 'height', th);\r\n\r\n\t\t\t\tif (tb.clientHeight < s.max_height)\r\n\t\t\t\t\tDOM.setStyle(co, 'overflow', 'hidden');\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tshowMenu : function(x, y, px) {\r\n\t\t\tvar t = this, s = t.settings, co, vp = DOM.getViewPort(), w, h, mx, my, ot = 2, dm, tb, cp = t.classPrefix;\r\n\r\n\t\t\tt.collapse(1);\r\n\r\n\t\t\tif (t.isMenuVisible)\r\n\t\t\t\treturn;\r\n\r\n\t\t\tif (!t.rendered) {\r\n\t\t\t\tco = DOM.add(t.settings.container, t.renderNode());\r\n\r\n\t\t\t\teach(t.items, function(o) {\r\n\t\t\t\t\to.postRender();\r\n\t\t\t\t});\r\n\r\n\t\t\t\tt.element = new Element('menu_' + t.id, {blocker : 1, container : s.container});\r\n\t\t\t} else\r\n\t\t\t\tco = DOM.get('menu_' + t.id);\r\n\r\n\t\t\t// Move layer out of sight unless it's Opera since it scrolls to top of page due to an bug\r\n\t\t\tif (!tinymce.isOpera)\r\n\t\t\t\tDOM.setStyles(co, {left : -0xFFFF , top : -0xFFFF});\r\n\r\n\t\t\tDOM.show(co);\r\n\t\t\tt.update();\r\n\r\n\t\t\tx += s.offset_x || 0;\r\n\t\t\ty += s.offset_y || 0;\r\n\t\t\tvp.w -= 4;\r\n\t\t\tvp.h -= 4;\r\n\r\n\t\t\t// Move inside viewport if not submenu\r\n\t\t\tif (s.constrain) {\r\n\t\t\t\tw = co.clientWidth - ot;\r\n\t\t\t\th = co.clientHeight - ot;\r\n\t\t\t\tmx = vp.x + vp.w;\r\n\t\t\t\tmy = vp.y + vp.h;\r\n\r\n\t\t\t\tif ((x + s.vp_offset_x + w) > mx)\r\n\t\t\t\t\tx = px ? px - w : Math.max(0, (mx - s.vp_offset_x) - w);\r\n\r\n\t\t\t\tif ((y + s.vp_offset_y + h) > my)\r\n\t\t\t\t\ty = Math.max(0, (my - s.vp_offset_y) - h);\r\n\t\t\t}\r\n\r\n\t\t\tDOM.setStyles(co, {left : x , top : y});\r\n\t\t\tt.element.update();\r\n\r\n\t\t\tt.isMenuVisible = 1;\r\n\t\t\tt.mouseClickFunc = Event.add(co, 'click', function(e) {\r\n\t\t\t\tvar m;\r\n\r\n\t\t\t\te = e.target;\r\n\r\n\t\t\t\tif (e && (e = DOM.getParent(e, 'tr')) && !DOM.hasClass(e, cp + 'ItemSub')) {\r\n\t\t\t\t\tm = t.items[e.id];\r\n\r\n\t\t\t\t\tif (m.isDisabled())\r\n\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\tdm = t;\r\n\r\n\t\t\t\t\twhile (dm) {\r\n\t\t\t\t\t\tif (dm.hideMenu)\r\n\t\t\t\t\t\t\tdm.hideMenu();\r\n\r\n\t\t\t\t\t\tdm = dm.settings.parent;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (m.settings.onclick)\r\n\t\t\t\t\t\tm.settings.onclick(e);\r\n\r\n\t\t\t\t\treturn Event.cancel(e); // Cancel to fix onbeforeunload problem\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tif (t.hasMenus()) {\r\n\t\t\t\tt.mouseOverFunc = Event.add(co, 'mouseover', function(e) {\r\n\t\t\t\t\tvar m, r, mi;\r\n\r\n\t\t\t\t\te = e.target;\r\n\t\t\t\t\tif (e && (e = DOM.getParent(e, 'tr'))) {\r\n\t\t\t\t\t\tm = t.items[e.id];\r\n\r\n\t\t\t\t\t\tif (t.lastMenu)\r\n\t\t\t\t\t\t\tt.lastMenu.collapse(1);\r\n\r\n\t\t\t\t\t\tif (m.isDisabled())\r\n\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\tif (e && DOM.hasClass(e, cp + 'ItemSub')) {\r\n\t\t\t\t\t\t\t//p = DOM.getPos(s.container);\r\n\t\t\t\t\t\t\tr = DOM.getRect(e);\r\n\t\t\t\t\t\t\tm.showMenu((r.x + r.w - ot), r.y - ot, r.x);\r\n\t\t\t\t\t\t\tt.lastMenu = m;\r\n\t\t\t\t\t\t\tDOM.addClass(DOM.get(m.id).firstChild, cp + 'ItemActive');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\tEvent.add(co, 'keydown', t._keyHandler, t);\r\n\r\n\t\t\tt.onShowMenu.dispatch(t);\r\n\r\n\t\t\tif (s.keyboard_focus) { \r\n\t\t\t\tt._setupKeyboardNav(); \r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\thideMenu : function(c) {\r\n\t\t\tvar t = this, co = DOM.get('menu_' + t.id), e;\r\n\r\n\t\t\tif (!t.isMenuVisible)\r\n\t\t\t\treturn;\r\n\r\n\t\t\tif (t.keyboardNav) t.keyboardNav.destroy();\r\n\t\t\tEvent.remove(co, 'mouseover', t.mouseOverFunc);\r\n\t\t\tEvent.remove(co, 'click', t.mouseClickFunc);\r\n\t\t\tEvent.remove(co, 'keydown', t._keyHandler);\r\n\t\t\tDOM.hide(co);\r\n\t\t\tt.isMenuVisible = 0;\r\n\r\n\t\t\tif (!c)\r\n\t\t\t\tt.collapse(1);\r\n\r\n\t\t\tif (t.element)\r\n\t\t\t\tt.element.hide();\r\n\r\n\t\t\tif (e = DOM.get(t.id))\r\n\t\t\t\tDOM.removeClass(e.firstChild, t.classPrefix + 'ItemActive');\r\n\r\n\t\t\tt.onHideMenu.dispatch(t);\r\n\t\t},\r\n\r\n\t\tadd : function(o) {\r\n\t\t\tvar t = this, co;\r\n\r\n\t\t\to = t.parent(o);\r\n\r\n\t\t\tif (t.isRendered && (co = DOM.get('menu_' + t.id)))\r\n\t\t\t\tt._add(DOM.select('tbody', co)[0], o);\r\n\r\n\t\t\treturn o;\r\n\t\t},\r\n\r\n\t\tcollapse : function(d) {\r\n\t\t\tthis.parent(d);\r\n\t\t\tthis.hideMenu(1);\r\n\t\t},\r\n\r\n\t\tremove : function(o) {\r\n\t\t\tDOM.remove(o.id);\r\n\t\t\tthis.destroy();\r\n\r\n\t\t\treturn this.parent(o);\r\n\t\t},\r\n\r\n\t\tdestroy : function() {\r\n\t\t\tvar t = this, co = DOM.get('menu_' + t.id);\r\n\r\n\t\t\tif (t.keyboardNav) t.keyboardNav.destroy();\r\n\t\t\tEvent.remove(co, 'mouseover', t.mouseOverFunc);\r\n\t\t\tEvent.remove(DOM.select('a', co), 'focus', t.mouseOverFunc);\r\n\t\t\tEvent.remove(co, 'click', t.mouseClickFunc);\r\n\t\t\tEvent.remove(co, 'keydown', t._keyHandler);\r\n\r\n\t\t\tif (t.element)\r\n\t\t\t\tt.element.remove();\r\n\r\n\t\t\tDOM.remove(co);\r\n\t\t},\r\n\r\n\t\trenderNode : function() {\r\n\t\t\tvar t = this, s = t.settings, n, tb, co, w;\r\n\r\n\t\t\tw = DOM.create('div', {role: 'listbox', id : 'menu_' + t.id, 'class' : s['class'], 'style' : 'position:absolute;left:0;top:0;z-index:200000;outline:0'});\r\n\t\t\tif (t.settings.parent) {\r\n\t\t\t\tDOM.setAttrib(w, 'aria-parent', 'menu_' + t.settings.parent.id);\r\n\t\t\t}\r\n\t\t\tco = DOM.add(w, 'div', {role: 'presentation', id : 'menu_' + t.id + '_co', 'class' : t.classPrefix + (s['class'] ? ' ' + s['class'] : '')});\r\n\t\t\tt.element = new Element('menu_' + t.id, {blocker : 1, container : s.container});\r\n\r\n\t\t\tif (s.menu_line)\r\n\t\t\t\tDOM.add(co, 'span', {'class' : t.classPrefix + 'Line'});\r\n\r\n//\t\t\tn = DOM.add(co, 'div', {id : 'menu_' + t.id + '_co', 'class' : 'mceMenuContainer'});\r\n\t\t\tn = DOM.add(co, 'table', {role: 'presentation', id : 'menu_' + t.id + '_tbl', border : 0, cellPadding : 0, cellSpacing : 0});\r\n\t\t\ttb = DOM.add(n, 'tbody');\r\n\r\n\t\t\teach(t.items, function(o) {\r\n\t\t\t\tt._add(tb, o);\r\n\t\t\t});\r\n\r\n\t\t\tt.rendered = true;\r\n\r\n\t\t\treturn w;\r\n\t\t},\r\n\r\n\t\t// Internal functions\r\n\t\t_setupKeyboardNav : function(){\r\n\t\t\tvar contextMenu, menuItems, t=this; \r\n\t\t\tcontextMenu = DOM.select('#menu_' + t.id)[0];\r\n\t\t\tmenuItems = DOM.select('a[role=option]', 'menu_' + t.id);\r\n\t\t\tmenuItems.splice(0,0,contextMenu);\r\n\t\t\tt.keyboardNav = new tinymce.ui.KeyboardNavigation({\r\n\t\t\t\troot: 'menu_' + t.id,\r\n\t\t\t\titems: menuItems,\r\n\t\t\t\tonCancel: function() {\r\n\t\t\t\t\tt.hideMenu();\r\n\t\t\t\t},\r\n\t\t\t\tenableUpDown: true\r\n\t\t\t});\r\n\t\t\tcontextMenu.focus();\r\n\t\t},\r\n\r\n\t\t_keyHandler : function(evt) {\r\n\t\t\tvar t = this, e;\r\n\t\t\tswitch (evt.keyCode) {\r\n\t\t\t\tcase 37: // Left\r\n\t\t\t\t\tif (t.settings.parent) {\r\n\t\t\t\t\t\tt.hideMenu();\r\n\t\t\t\t\t\tt.settings.parent.focus();\r\n\t\t\t\t\t\tEvent.cancel(evt);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase 39: // Right\r\n\t\t\t\t\tif (t.mouseOverFunc)\r\n\t\t\t\t\t\tt.mouseOverFunc(evt);\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t_add : function(tb, o) {\r\n\t\t\tvar n, s = o.settings, a, ro, it, cp = this.classPrefix, ic;\r\n\r\n\t\t\tif (s.separator) {\r\n\t\t\t\tro = DOM.add(tb, 'tr', {id : o.id, 'class' : cp + 'ItemSeparator'});\r\n\t\t\t\tDOM.add(ro, 'td', {'class' : cp + 'ItemSeparator'});\r\n\r\n\t\t\t\tif (n = ro.previousSibling)\r\n\t\t\t\t\tDOM.addClass(n, 'mceLast');\r\n\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tn = ro = DOM.add(tb, 'tr', {id : o.id, 'class' : cp + 'Item ' + cp + 'ItemEnabled'});\r\n\t\t\tn = it = DOM.add(n, s.titleItem ? 'th' : 'td');\r\n\t\t\tn = a = DOM.add(n, 'a', {id: o.id + '_aria',  role: s.titleItem ? 'presentation' : 'option', href : 'javascript:;', onclick : \"return false;\", onmousedown : 'return false;'});\r\n\r\n\t\t\tif (s.parent) {\r\n\t\t\t\tDOM.setAttrib(a, 'aria-haspopup', 'true');\r\n\t\t\t\tDOM.setAttrib(a, 'aria-owns', 'menu_' + o.id);\r\n\t\t\t}\r\n\r\n\t\t\tDOM.addClass(it, s['class']);\r\n//\t\t\tn = DOM.add(n, 'span', {'class' : 'item'});\r\n\r\n\t\t\tic = DOM.add(n, 'span', {'class' : 'mceIcon' + (s.icon ? ' mce_' + s.icon : '')});\r\n\r\n\t\t\tif (s.icon_src)\r\n\t\t\t\tDOM.add(ic, 'img', {src : s.icon_src});\r\n\r\n\t\t\tn = DOM.add(n, s.element || 'span', {'class' : 'mceText', title : o.settings.title}, o.settings.title);\r\n\r\n\t\t\tif (o.settings.style)\r\n\t\t\t\tDOM.setAttrib(n, 'style', o.settings.style);\r\n\r\n\t\t\tif (tb.childNodes.length == 1)\r\n\t\t\t\tDOM.addClass(ro, 'mceFirst');\r\n\r\n\t\t\tif ((n = ro.previousSibling) && DOM.hasClass(n, cp + 'ItemSeparator'))\r\n\t\t\t\tDOM.addClass(ro, 'mceFirst');\r\n\r\n\t\t\tif (o.collapse)\r\n\t\t\t\tDOM.addClass(ro, cp + 'ItemSub');\r\n\r\n\t\t\tif (n = ro.previousSibling)\r\n\t\t\t\tDOM.removeClass(n, 'mceLast');\r\n\r\n\t\t\tDOM.addClass(ro, 'mceLast');\r\n\t\t}\r\n\t});\r\n})(tinymce);\r\n(function(tinymce) {\r\n\tvar DOM = tinymce.DOM;\r\n\r\n\ttinymce.create('tinymce.ui.Button:tinymce.ui.Control', {\r\n\t\tButton : function(id, s, ed) {\r\n\t\t\tthis.parent(id, s, ed);\r\n\t\t\tthis.classPrefix = 'mceButton';\r\n\t\t},\r\n\r\n\t\trenderHTML : function() {\r\n\t\t\tvar cp = this.classPrefix, s = this.settings, h, l;\r\n\r\n\t\t\tl = DOM.encode(s.label || '');\r\n\t\t\th = '<a role=\"button\" id=\"' + this.id + '\" href=\"javascript:;\" class=\"' + cp + ' ' + cp + 'Enabled ' + s['class'] + (l ? ' ' + cp + 'Labeled' : '') +'\" onmousedown=\"return false;\" onclick=\"return false;\" aria-labelledby=\"' + this.id + '_voice\" title=\"' + DOM.encode(s.title) + '\">';\r\n\t\t\tif (s.image && !(this.editor  &&this.editor.forcedHighContrastMode) )\r\n\t\t\t\th += '<img class=\"mceIcon\" src=\"' + s.image + '\" alt=\"' + DOM.encode(s.title) + '\" />' + l;\r\n\t\t\telse\r\n\t\t\t\th += '<span class=\"mceIcon ' + s['class'] + '\"></span>' + (l ? '<span class=\"' + cp + 'Label\">' + l + '</span>' : '');\r\n\r\n\t\t\th += '<span class=\"mceVoiceLabel mceIconOnly\" style=\"display: none;\" id=\"' + this.id + '_voice\">' + s.title + '</span>'; \r\n\t\t\th += '</a>';\r\n\t\t\treturn h;\r\n\t\t},\r\n\r\n\t\tpostRender : function() {\r\n\t\t\tvar t = this, s = t.settings;\r\n\r\n\t\t\ttinymce.dom.Event.add(t.id, 'click', function(e) {\r\n\t\t\t\tif (!t.isDisabled())\r\n\t\t\t\t\treturn s.onclick.call(s.scope, e);\r\n\t\t\t});\r\n\t\t}\r\n\t});\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\tvar DOM = tinymce.DOM, Event = tinymce.dom.Event, each = tinymce.each, Dispatcher = tinymce.util.Dispatcher;\r\n\r\n\ttinymce.create('tinymce.ui.ListBox:tinymce.ui.Control', {\r\n\t\tListBox : function(id, s, ed) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tt.parent(id, s, ed);\r\n\r\n\t\t\tt.items = [];\r\n\r\n\t\t\tt.onChange = new Dispatcher(t);\r\n\r\n\t\t\tt.onPostRender = new Dispatcher(t);\r\n\r\n\t\t\tt.onAdd = new Dispatcher(t);\r\n\r\n\t\t\tt.onRenderMenu = new tinymce.util.Dispatcher(this);\r\n\r\n\t\t\tt.classPrefix = 'mceListBox';\r\n\t\t},\r\n\r\n\t\tselect : function(va) {\r\n\t\t\tvar t = this, fv, f;\r\n\r\n\t\t\tif (va == undefined)\r\n\t\t\t\treturn t.selectByIndex(-1);\r\n\r\n\t\t\t// Is string or number make function selector\r\n\t\t\tif (va && va.call)\r\n\t\t\t\tf = va;\r\n\t\t\telse {\r\n\t\t\t\tf = function(v) {\r\n\t\t\t\t\treturn v == va;\r\n\t\t\t\t};\r\n\t\t\t}\r\n\r\n\t\t\t// Do we need to do something?\r\n\t\t\tif (va != t.selectedValue) {\r\n\t\t\t\t// Find item\r\n\t\t\t\teach(t.items, function(o, i) {\r\n\t\t\t\t\tif (f(o.value)) {\r\n\t\t\t\t\t\tfv = 1;\r\n\t\t\t\t\t\tt.selectByIndex(i);\r\n\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\tif (!fv)\r\n\t\t\t\t\tt.selectByIndex(-1);\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tselectByIndex : function(idx) {\r\n\t\t\tvar t = this, e, o, label;\r\n\r\n\t\t\tif (idx != t.selectedIndex) {\r\n\t\t\t\te = DOM.get(t.id + '_text');\r\n\t\t\t\tlabel = DOM.get(t.id + '_voiceDesc');\r\n\t\t\t\to = t.items[idx];\r\n\r\n\t\t\t\tif (o) {\r\n\t\t\t\t\tt.selectedValue = o.value;\r\n\t\t\t\t\tt.selectedIndex = idx;\r\n\t\t\t\t\tDOM.setHTML(e, DOM.encode(o.title));\r\n\t\t\t\t\tDOM.setHTML(label, t.settings.title + \" - \" + o.title);\r\n\t\t\t\t\tDOM.removeClass(e, 'mceTitle');\r\n\t\t\t\t\tDOM.setAttrib(t.id, 'aria-valuenow', o.title);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tDOM.setHTML(e, DOM.encode(t.settings.title));\r\n\t\t\t\t\tDOM.setHTML(label, DOM.encode(t.settings.title));\r\n\t\t\t\t\tDOM.addClass(e, 'mceTitle');\r\n\t\t\t\t\tt.selectedValue = t.selectedIndex = null;\r\n\t\t\t\t\tDOM.setAttrib(t.id, 'aria-valuenow', t.settings.title);\r\n\t\t\t\t}\r\n\t\t\t\te = 0;\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tadd : function(n, v, o) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\to = o || {};\r\n\t\t\to = tinymce.extend(o, {\r\n\t\t\t\ttitle : n,\r\n\t\t\t\tvalue : v\r\n\t\t\t});\r\n\r\n\t\t\tt.items.push(o);\r\n\t\t\tt.onAdd.dispatch(t, o);\r\n\t\t},\r\n\r\n\t\tgetLength : function() {\r\n\t\t\treturn this.items.length;\r\n\t\t},\r\n\r\n\t\trenderHTML : function() {\r\n\t\t\tvar h = '', t = this, s = t.settings, cp = t.classPrefix;\r\n\r\n\t\t\th = '<span role=\"listbox\" aria-haspopup=\"true\" aria-labelledby=\"' + t.id +'_voiceDesc\" aria-describedby=\"' + t.id + '_voiceDesc\"><table role=\"presentation\" tabindex=\"0\" id=\"' + t.id + '\" cellpadding=\"0\" cellspacing=\"0\" class=\"' + cp + ' ' + cp + 'Enabled' + (s['class'] ? (' ' + s['class']) : '') + '\"><tbody><tr>';\r\n\t\t\th += '<td>' + DOM.createHTML('span', {id: t.id + '_voiceDesc', 'class': 'voiceLabel', style:'display:none;'}, t.settings.title); \r\n\t\t\th += DOM.createHTML('a', {id : t.id + '_text', tabindex : -1, href : 'javascript:;', 'class' : 'mceText', onclick : \"return false;\", onmousedown : 'return false;'}, DOM.encode(t.settings.title)) + '</td>';\r\n\t\t\th += '<td>' + DOM.createHTML('a', {id : t.id + '_open', tabindex : -1, href : 'javascript:;', 'class' : 'mceOpen', onclick : \"return false;\", onmousedown : 'return false;'}, '<span><span style=\"display:none;\" class=\"mceIconOnly\" aria-hidden=\"true\">\\u25BC</span></span>') + '</td>';\r\n\t\t\th += '</tr></tbody></table></span>';\r\n\r\n\t\t\treturn h;\r\n\t\t},\r\n\r\n\t\tshowMenu : function() {\r\n\t\t\tvar t = this, p2, e = DOM.get(this.id), m;\r\n\r\n\t\t\tif (t.isDisabled() || t.items.length == 0)\r\n\t\t\t\treturn;\r\n\r\n\t\t\tif (t.menu && t.menu.isMenuVisible)\r\n\t\t\t\treturn t.hideMenu();\r\n\r\n\t\t\tif (!t.isMenuRendered) {\r\n\t\t\t\tt.renderMenu();\r\n\t\t\t\tt.isMenuRendered = true;\r\n\t\t\t}\r\n\r\n\t\t\tp2 = DOM.getPos(e);\r\n\r\n\t\t\tm = t.menu;\r\n\t\t\tm.settings.offset_x = p2.x;\r\n\t\t\tm.settings.offset_y = p2.y;\r\n\t\t\tm.settings.keyboard_focus = !tinymce.isOpera; // Opera is buggy when it comes to auto focus\r\n\r\n\t\t\t// Select in menu\r\n\t\t\tif (t.oldID)\r\n\t\t\t\tm.items[t.oldID].setSelected(0);\r\n\r\n\t\t\teach(t.items, function(o) {\r\n\t\t\t\tif (o.value === t.selectedValue) {\r\n\t\t\t\t\tm.items[o.id].setSelected(1);\r\n\t\t\t\t\tt.oldID = o.id;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tm.showMenu(0, e.clientHeight);\r\n\r\n\t\t\tEvent.add(DOM.doc, 'mousedown', t.hideMenu, t);\r\n\t\t\tDOM.addClass(t.id, t.classPrefix + 'Selected');\r\n\r\n\t\t\t//DOM.get(t.id + '_text').focus();\r\n\t\t},\r\n\r\n\t\thideMenu : function(e) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tif (t.menu && t.menu.isMenuVisible) {\r\n\t\t\t\tDOM.removeClass(t.id, t.classPrefix + 'Selected');\r\n\r\n\t\t\t\t// Prevent double toogles by canceling the mouse click event to the button\r\n\t\t\t\tif (e && e.type == \"mousedown\" && (e.target.id == t.id + '_text' || e.target.id == t.id + '_open'))\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\tif (!e || !DOM.getParent(e.target, '.mceMenu')) {\r\n\t\t\t\t\tDOM.removeClass(t.id, t.classPrefix + 'Selected');\r\n\t\t\t\t\tEvent.remove(DOM.doc, 'mousedown', t.hideMenu, t);\r\n\t\t\t\t\tt.menu.hideMenu();\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\trenderMenu : function() {\r\n\t\t\tvar t = this, m;\r\n\r\n\t\t\tm = t.settings.control_manager.createDropMenu(t.id + '_menu', {\r\n\t\t\t\tmenu_line : 1,\r\n\t\t\t\t'class' : t.classPrefix + 'Menu mceNoIcons',\r\n\t\t\t\tmax_width : 150,\r\n\t\t\t\tmax_height : 150\r\n\t\t\t});\r\n\r\n\t\t\tm.onHideMenu.add(function() {\r\n\t\t\t\tt.hideMenu();\r\n\t\t\t\tt.focus();\r\n\t\t\t});\r\n\r\n\t\t\tm.add({\r\n\t\t\t\ttitle : t.settings.title,\r\n\t\t\t\t'class' : 'mceMenuItemTitle',\r\n\t\t\t\tonclick : function() {\r\n\t\t\t\t\tif (t.settings.onselect('') !== false)\r\n\t\t\t\t\t\tt.select(''); // Must be runned after\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\teach(t.items, function(o) {\r\n\t\t\t\t// No value then treat it as a title\r\n\t\t\t\tif (o.value === undefined) {\r\n\t\t\t\t\tm.add({\r\n\t\t\t\t\t\ttitle : o.title,\r\n\t\t\t\t\t\trole : \"option\",\r\n\t\t\t\t\t\t'class' : 'mceMenuItemTitle',\r\n\t\t\t\t\t\tonclick : function() {\r\n\t\t\t\t\t\t\tif (t.settings.onselect('') !== false)\r\n\t\t\t\t\t\t\t\tt.select(''); // Must be runned after\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t} else {\r\n\t\t\t\t\to.id = DOM.uniqueId();\r\n\t\t\t\t\to.role= \"option\";\r\n\t\t\t\t\to.onclick = function() {\r\n\t\t\t\t\t\tif (t.settings.onselect(o.value) !== false)\r\n\t\t\t\t\t\t\tt.select(o.value); // Must be runned after\r\n\t\t\t\t\t};\r\n\r\n\t\t\t\t\tm.add(o);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tt.onRenderMenu.dispatch(t, m);\r\n\t\t\tt.menu = m;\r\n\t\t},\r\n\r\n\t\tpostRender : function() {\r\n\t\t\tvar t = this, cp = t.classPrefix;\r\n\r\n\t\t\tEvent.add(t.id, 'click', t.showMenu, t);\r\n\t\t\tEvent.add(t.id, 'keydown', function(evt) {\r\n\t\t\t\tif (evt.keyCode == 32) { // Space\r\n\t\t\t\t\tt.showMenu(evt);\r\n\t\t\t\t\tEvent.cancel(evt);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\tEvent.add(t.id, 'focus', function() {\r\n\t\t\t\tif (!t._focused) {\r\n\t\t\t\t\tt.keyDownHandler = Event.add(t.id, 'keydown', function(e) {\r\n\t\t\t\t\t\tif (e.keyCode == 40) {\r\n\t\t\t\t\t\t\tt.showMenu();\r\n\t\t\t\t\t\t\tEvent.cancel(e);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t\tt.keyPressHandler = Event.add(t.id, 'keypress', function(e) {\r\n\t\t\t\t\t\tvar v;\r\n\t\t\t\t\t\tif (e.keyCode == 13) {\r\n\t\t\t\t\t\t\t// Fake select on enter\r\n\t\t\t\t\t\t\tv = t.selectedValue;\r\n\t\t\t\t\t\t\tt.selectedValue = null; // Needs to be null to fake change\r\n\t\t\t\t\t\t\tEvent.cancel(e);\r\n\t\t\t\t\t\t\tt.settings.onselect(v);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\r\n\t\t\t\tt._focused = 1;\r\n\t\t\t});\r\n\t\t\tEvent.add(t.id, 'blur', function() {\r\n\t\t\t\tEvent.remove(t.id, 'keydown', t.keyDownHandler);\r\n\t\t\t\tEvent.remove(t.id, 'keypress', t.keyPressHandler);\r\n\t\t\t\tt._focused = 0;\r\n\t\t\t});\r\n\r\n\t\t\t// Old IE doesn't have hover on all elements\r\n\t\t\tif (tinymce.isIE6 || !DOM.boxModel) {\r\n\t\t\t\tEvent.add(t.id, 'mouseover', function() {\r\n\t\t\t\t\tif (!DOM.hasClass(t.id, cp + 'Disabled'))\r\n\t\t\t\t\t\tDOM.addClass(t.id, cp + 'Hover');\r\n\t\t\t\t});\r\n\r\n\t\t\t\tEvent.add(t.id, 'mouseout', function() {\r\n\t\t\t\t\tif (!DOM.hasClass(t.id, cp + 'Disabled'))\r\n\t\t\t\t\t\tDOM.removeClass(t.id, cp + 'Hover');\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tt.onPostRender.dispatch(t, DOM.get(t.id));\r\n\t\t},\r\n\r\n\t\tdestroy : function() {\r\n\t\t\tthis.parent();\r\n\r\n\t\t\tEvent.clear(this.id + '_text');\r\n\t\t\tEvent.clear(this.id + '_open');\r\n\t\t}\r\n\t});\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\tvar DOM = tinymce.DOM, Event = tinymce.dom.Event, each = tinymce.each, Dispatcher = tinymce.util.Dispatcher;\r\n\r\n\ttinymce.create('tinymce.ui.NativeListBox:tinymce.ui.ListBox', {\r\n\t\tNativeListBox : function(id, s) {\r\n\t\t\tthis.parent(id, s);\r\n\t\t\tthis.classPrefix = 'mceNativeListBox';\r\n\t\t},\r\n\r\n\t\tsetDisabled : function(s) {\r\n\t\t\tDOM.get(this.id).disabled = s;\r\n\t\t\tthis.setAriaProperty('disabled', s);\r\n\t\t},\r\n\r\n\t\tisDisabled : function() {\r\n\t\t\treturn DOM.get(this.id).disabled;\r\n\t\t},\r\n\r\n\t\tselect : function(va) {\r\n\t\t\tvar t = this, fv, f;\r\n\r\n\t\t\tif (va == undefined)\r\n\t\t\t\treturn t.selectByIndex(-1);\r\n\r\n\t\t\t// Is string or number make function selector\r\n\t\t\tif (va && va.call)\r\n\t\t\t\tf = va;\r\n\t\t\telse {\r\n\t\t\t\tf = function(v) {\r\n\t\t\t\t\treturn v == va;\r\n\t\t\t\t};\r\n\t\t\t}\r\n\r\n\t\t\t// Do we need to do something?\r\n\t\t\tif (va != t.selectedValue) {\r\n\t\t\t\t// Find item\r\n\t\t\t\teach(t.items, function(o, i) {\r\n\t\t\t\t\tif (f(o.value)) {\r\n\t\t\t\t\t\tfv = 1;\r\n\t\t\t\t\t\tt.selectByIndex(i);\r\n\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\tif (!fv)\r\n\t\t\t\t\tt.selectByIndex(-1);\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tselectByIndex : function(idx) {\r\n\t\t\tDOM.get(this.id).selectedIndex = idx + 1;\r\n\t\t\tthis.selectedValue = this.items[idx] ? this.items[idx].value : null;\r\n\t\t},\r\n\r\n\t\tadd : function(n, v, a) {\r\n\t\t\tvar o, t = this;\r\n\r\n\t\t\ta = a || {};\r\n\t\t\ta.value = v;\r\n\r\n\t\t\tif (t.isRendered())\r\n\t\t\t\tDOM.add(DOM.get(this.id), 'option', a, n);\r\n\r\n\t\t\to = {\r\n\t\t\t\ttitle : n,\r\n\t\t\t\tvalue : v,\r\n\t\t\t\tattribs : a\r\n\t\t\t};\r\n\r\n\t\t\tt.items.push(o);\r\n\t\t\tt.onAdd.dispatch(t, o);\r\n\t\t},\r\n\r\n\t\tgetLength : function() {\r\n\t\t\treturn this.items.length;\r\n\t\t},\r\n\r\n\t\trenderHTML : function() {\r\n\t\t\tvar h, t = this;\r\n\r\n\t\t\th = DOM.createHTML('option', {value : ''}, '-- ' + t.settings.title + ' --');\r\n\r\n\t\t\teach(t.items, function(it) {\r\n\t\t\t\th += DOM.createHTML('option', {value : it.value}, it.title);\r\n\t\t\t});\r\n\r\n\t\t\th = DOM.createHTML('select', {id : t.id, 'class' : 'mceNativeListBox', 'aria-labelledby': t.id + '_aria'}, h);\r\n\t\t\th += DOM.createHTML('span', {id : t.id + '_aria', 'style': 'display: none'}, t.settings.title);\r\n\t\t\treturn h;\r\n\t\t},\r\n\r\n\t\tpostRender : function() {\r\n\t\t\tvar t = this, ch, changeListenerAdded = true;\r\n\r\n\t\t\tt.rendered = true;\r\n\r\n\t\t\tfunction onChange(e) {\r\n\t\t\t\tvar v = t.items[e.target.selectedIndex - 1];\r\n\r\n\t\t\t\tif (v && (v = v.value)) {\r\n\t\t\t\t\tt.onChange.dispatch(t, v);\r\n\r\n\t\t\t\t\tif (t.settings.onselect)\r\n\t\t\t\t\t\tt.settings.onselect(v);\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\t\t\tEvent.add(t.id, 'change', onChange);\r\n\r\n\t\t\t// Accessibility keyhandler\r\n\t\t\tEvent.add(t.id, 'keydown', function(e) {\r\n\t\t\t\tvar bf;\r\n\r\n\t\t\t\tEvent.remove(t.id, 'change', ch);\r\n\t\t\t\tchangeListenerAdded = false;\r\n\r\n\t\t\t\tbf = Event.add(t.id, 'blur', function() {\r\n\t\t\t\t\tif (changeListenerAdded) return;\r\n\t\t\t\t\tchangeListenerAdded = true;\r\n\t\t\t\t\tEvent.add(t.id, 'change', onChange);\r\n\t\t\t\t\tEvent.remove(t.id, 'blur', bf);\r\n\t\t\t\t});\r\n\r\n\t\t\t\t//prevent default left and right keys on chrome - so that the keyboard navigation is used.\r\n\t\t\t\tif (tinymce.isWebKit && (e.keyCode==37 ||e.keyCode==39)) {\r\n\t\t\t\t\treturn Event.prevent(e);\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\tif (e.keyCode == 13 || e.keyCode == 32) {\r\n\t\t\t\t\tonChange(e);\r\n\t\t\t\t\treturn Event.cancel(e);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tt.onPostRender.dispatch(t, DOM.get(t.id));\r\n\t\t}\r\n\t});\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\tvar DOM = tinymce.DOM, Event = tinymce.dom.Event, each = tinymce.each;\r\n\r\n\ttinymce.create('tinymce.ui.MenuButton:tinymce.ui.Button', {\r\n\t\tMenuButton : function(id, s, ed) {\r\n\t\t\tthis.parent(id, s, ed);\r\n\r\n\t\t\tthis.onRenderMenu = new tinymce.util.Dispatcher(this);\r\n\r\n\t\t\ts.menu_container = s.menu_container || DOM.doc.body;\r\n\t\t},\r\n\r\n\t\tshowMenu : function() {\r\n\t\t\tvar t = this, p1, p2, e = DOM.get(t.id), m;\r\n\r\n\t\t\tif (t.isDisabled())\r\n\t\t\t\treturn;\r\n\r\n\t\t\tif (!t.isMenuRendered) {\r\n\t\t\t\tt.renderMenu();\r\n\t\t\t\tt.isMenuRendered = true;\r\n\t\t\t}\r\n\r\n\t\t\tif (t.isMenuVisible)\r\n\t\t\t\treturn t.hideMenu();\r\n\r\n\t\t\tp1 = DOM.getPos(t.settings.menu_container);\r\n\t\t\tp2 = DOM.getPos(e);\r\n\r\n\t\t\tm = t.menu;\r\n\t\t\tm.settings.offset_x = p2.x;\r\n\t\t\tm.settings.offset_y = p2.y;\r\n\t\t\tm.settings.vp_offset_x = p2.x;\r\n\t\t\tm.settings.vp_offset_y = p2.y;\r\n\t\t\tm.settings.keyboard_focus = t._focused;\r\n\t\t\tm.showMenu(0, e.clientHeight);\r\n\r\n\t\t\tEvent.add(DOM.doc, 'mousedown', t.hideMenu, t);\r\n\t\t\tt.setState('Selected', 1);\r\n\r\n\t\t\tt.isMenuVisible = 1;\r\n\t\t},\r\n\r\n\t\trenderMenu : function() {\r\n\t\t\tvar t = this, m;\r\n\r\n\t\t\tm = t.settings.control_manager.createDropMenu(t.id + '_menu', {\r\n\t\t\t\tmenu_line : 1,\r\n\t\t\t\t'class' : this.classPrefix + 'Menu',\r\n\t\t\t\ticons : t.settings.icons\r\n\t\t\t});\r\n\r\n\t\t\tm.onHideMenu.add(function() {\r\n\t\t\t\tt.hideMenu();\r\n\t\t\t\tt.focus();\r\n\t\t\t});\r\n\r\n\t\t\tt.onRenderMenu.dispatch(t, m);\r\n\t\t\tt.menu = m;\r\n\t\t},\r\n\r\n\t\thideMenu : function(e) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\t// Prevent double toogles by canceling the mouse click event to the button\r\n\t\t\tif (e && e.type == \"mousedown\" && DOM.getParent(e.target, function(e) {return e.id === t.id || e.id === t.id + '_open';}))\r\n\t\t\t\treturn;\r\n\r\n\t\t\tif (!e || !DOM.getParent(e.target, '.mceMenu')) {\r\n\t\t\t\tt.setState('Selected', 0);\r\n\t\t\t\tEvent.remove(DOM.doc, 'mousedown', t.hideMenu, t);\r\n\t\t\t\tif (t.menu)\r\n\t\t\t\t\tt.menu.hideMenu();\r\n\t\t\t}\r\n\r\n\t\t\tt.isMenuVisible = 0;\r\n\t\t},\r\n\r\n\t\tpostRender : function() {\r\n\t\t\tvar t = this, s = t.settings;\r\n\r\n\t\t\tEvent.add(t.id, 'click', function() {\r\n\t\t\t\tif (!t.isDisabled()) {\r\n\t\t\t\t\tif (s.onclick)\r\n\t\t\t\t\t\ts.onclick(t.value);\r\n\r\n\t\t\t\t\tt.showMenu();\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t});\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\tvar DOM = tinymce.DOM, Event = tinymce.dom.Event, each = tinymce.each;\r\n\r\n\ttinymce.create('tinymce.ui.SplitButton:tinymce.ui.MenuButton', {\r\n\t\tSplitButton : function(id, s, ed) {\r\n\t\t\tthis.parent(id, s, ed);\r\n\t\t\tthis.classPrefix = 'mceSplitButton';\r\n\t\t},\r\n\r\n\t\trenderHTML : function() {\r\n\t\t\tvar h, t = this, s = t.settings, h1;\r\n\r\n\t\t\th = '<tbody><tr>';\r\n\r\n\t\t\tif (s.image)\r\n\t\t\t\th1 = DOM.createHTML('img ', {src : s.image, role: 'presentation', 'class' : 'mceAction ' + s['class']});\r\n\t\t\telse\r\n\t\t\t\th1 = DOM.createHTML('span', {'class' : 'mceAction ' + s['class']}, '');\r\n\r\n\t\t\th1 += DOM.createHTML('span', {'class': 'mceVoiceLabel mceIconOnly', id: t.id + '_voice', style: 'display:none;'}, s.title);\r\n\t\t\th += '<td >' + DOM.createHTML('a', {role: 'button', id : t.id + '_action', tabindex: '-1', href : 'javascript:;', 'class' : 'mceAction ' + s['class'], onclick : \"return false;\", onmousedown : 'return false;', title : s.title}, h1) + '</td>';\r\n\t\r\n\t\t\th1 = DOM.createHTML('span', {'class' : 'mceOpen ' + s['class']}, '<span style=\"display:none;\" class=\"mceIconOnly\" aria-hidden=\"true\">\\u25BC</span>');\r\n\t\t\th += '<td >' + DOM.createHTML('a', {role: 'button', id : t.id + '_open', tabindex: '-1', href : 'javascript:;', 'class' : 'mceOpen ' + s['class'], onclick : \"return false;\", onmousedown : 'return false;', title : s.title}, h1) + '</td>';\r\n\r\n\t\t\th += '</tr></tbody>';\r\n\t\t\th = DOM.createHTML('table', { role: 'presentation',   'class' : 'mceSplitButton mceSplitButtonEnabled ' + s['class'], cellpadding : '0', cellspacing : '0', title : s.title}, h);\r\n\t\t\treturn DOM.createHTML('div', {id : t.id, role: 'button', tabindex: '0', 'aria-labelledby': t.id + '_voice', 'aria-haspopup': 'true'}, h);\r\n\t\t},\r\n\r\n\t\tpostRender : function() {\r\n\t\t\tvar t = this, s = t.settings, activate;\r\n\r\n\t\t\tif (s.onclick) {\r\n\t\t\t\tactivate = function(evt) {\r\n\t\t\t\t\tif (!t.isDisabled()) {\r\n\t\t\t\t\t\ts.onclick(t.value);\r\n\t\t\t\t\t\tEvent.cancel(evt);\r\n\t\t\t\t\t}\r\n\t\t\t\t};\r\n\t\t\t\tEvent.add(t.id + '_action', 'click', activate);\r\n\t\t\t\tEvent.add(t.id, ['click', 'keydown'], function(evt) {\r\n\t\t\t\t\tvar DOM_VK_SPACE = 32, DOM_VK_ENTER = 14, DOM_VK_RETURN = 13, DOM_VK_UP = 38, DOM_VK_DOWN = 40;\r\n\t\t\t\t\tif ((evt.keyCode === 32 || evt.keyCode === 13 || evt.keyCode === 14) && !evt.altKey && !evt.ctrlKey && !evt.metaKey) {\r\n\t\t\t\t\t\tactivate();\r\n\t\t\t\t\t\tEvent.cancel(evt);\r\n\t\t\t\t\t} else if (evt.type === 'click' || evt.keyCode === DOM_VK_DOWN) {\r\n\t\t\t\t\t\tt.showMenu();\r\n\t\t\t\t\t\tEvent.cancel(evt);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tEvent.add(t.id + '_open', 'click', function (evt) {\r\n\t\t\t\tt.showMenu();\r\n\t\t\t\tEvent.cancel(evt);\r\n\t\t\t});\r\n\t\t\tEvent.add([t.id, t.id + '_open'], 'focus', function() {t._focused = 1;});\r\n\t\t\tEvent.add([t.id, t.id + '_open'], 'blur', function() {t._focused = 0;});\r\n\r\n\t\t\t// Old IE doesn't have hover on all elements\r\n\t\t\tif (tinymce.isIE6 || !DOM.boxModel) {\r\n\t\t\t\tEvent.add(t.id, 'mouseover', function() {\r\n\t\t\t\t\tif (!DOM.hasClass(t.id, 'mceSplitButtonDisabled'))\r\n\t\t\t\t\t\tDOM.addClass(t.id, 'mceSplitButtonHover');\r\n\t\t\t\t});\r\n\r\n\t\t\t\tEvent.add(t.id, 'mouseout', function() {\r\n\t\t\t\t\tif (!DOM.hasClass(t.id, 'mceSplitButtonDisabled'))\r\n\t\t\t\t\t\tDOM.removeClass(t.id, 'mceSplitButtonHover');\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tdestroy : function() {\r\n\t\t\tthis.parent();\r\n\r\n\t\t\tEvent.clear(this.id + '_action');\r\n\t\t\tEvent.clear(this.id + '_open');\r\n\t\t\tEvent.clear(this.id);\r\n\t\t}\r\n\t});\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\tvar DOM = tinymce.DOM, Event = tinymce.dom.Event, is = tinymce.is, each = tinymce.each;\r\n\r\n\ttinymce.create('tinymce.ui.ColorSplitButton:tinymce.ui.SplitButton', {\r\n\t\tColorSplitButton : function(id, s, ed) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tt.parent(id, s, ed);\r\n\r\n\t\t\tt.settings = s = tinymce.extend({\r\n\t\t\t\tcolors : '000000,993300,333300,003300,003366,000080,333399,333333,800000,FF6600,808000,008000,008080,0000FF,666699,808080,FF0000,FF9900,99CC00,339966,33CCCC,3366FF,800080,999999,FF00FF,FFCC00,FFFF00,00FF00,00FFFF,00CCFF,993366,C0C0C0,FF99CC,FFCC99,FFFF99,CCFFCC,CCFFFF,99CCFF,CC99FF,FFFFFF',\r\n\t\t\t\tgrid_width : 8,\r\n\t\t\t\tdefault_color : '#888888'\r\n\t\t\t}, t.settings);\r\n\r\n\t\t\tt.onShowMenu = new tinymce.util.Dispatcher(t);\r\n\r\n\t\t\tt.onHideMenu = new tinymce.util.Dispatcher(t);\r\n\r\n\t\t\tt.value = s.default_color;\r\n\t\t},\r\n\r\n\t\tshowMenu : function() {\r\n\t\t\tvar t = this, r, p, e, p2;\r\n\r\n\t\t\tif (t.isDisabled())\r\n\t\t\t\treturn;\r\n\r\n\t\t\tif (!t.isMenuRendered) {\r\n\t\t\t\tt.renderMenu();\r\n\t\t\t\tt.isMenuRendered = true;\r\n\t\t\t}\r\n\r\n\t\t\tif (t.isMenuVisible)\r\n\t\t\t\treturn t.hideMenu();\r\n\r\n\t\t\te = DOM.get(t.id);\r\n\t\t\tDOM.show(t.id + '_menu');\r\n\t\t\tDOM.addClass(e, 'mceSplitButtonSelected');\r\n\t\t\tp2 = DOM.getPos(e);\r\n\t\t\tDOM.setStyles(t.id + '_menu', {\r\n\t\t\t\tleft : p2.x,\r\n\t\t\t\ttop : p2.y + e.clientHeight,\r\n\t\t\t\tzIndex : 200000\r\n\t\t\t});\r\n\t\t\te = 0;\r\n\r\n\t\t\tEvent.add(DOM.doc, 'mousedown', t.hideMenu, t);\r\n\t\t\tt.onShowMenu.dispatch(t);\r\n\r\n\t\t\tif (t._focused) {\r\n\t\t\t\tt._keyHandler = Event.add(t.id + '_menu', 'keydown', function(e) {\r\n\t\t\t\t\tif (e.keyCode == 27)\r\n\t\t\t\t\t\tt.hideMenu();\r\n\t\t\t\t});\r\n\r\n\t\t\t\tDOM.select('a', t.id + '_menu')[0].focus(); // Select first link\r\n\t\t\t}\r\n\r\n\t\t\tt.isMenuVisible = 1;\r\n\t\t},\r\n\r\n\t\thideMenu : function(e) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tif (t.isMenuVisible) {\r\n\t\t\t\t// Prevent double toogles by canceling the mouse click event to the button\r\n\t\t\t\tif (e && e.type == \"mousedown\" && DOM.getParent(e.target, function(e) {return e.id === t.id + '_open';}))\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\tif (!e || !DOM.getParent(e.target, '.mceSplitButtonMenu')) {\r\n\t\t\t\t\tDOM.removeClass(t.id, 'mceSplitButtonSelected');\r\n\t\t\t\t\tEvent.remove(DOM.doc, 'mousedown', t.hideMenu, t);\r\n\t\t\t\t\tEvent.remove(t.id + '_menu', 'keydown', t._keyHandler);\r\n\t\t\t\t\tDOM.hide(t.id + '_menu');\r\n\t\t\t\t}\r\n\r\n\t\t\t\tt.isMenuVisible = 0;\r\n\t\t\t\tt.onHideMenu.dispatch();\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\trenderMenu : function() {\r\n\t\t\tvar t = this, m, i = 0, s = t.settings, n, tb, tr, w, context;\r\n\r\n\t\t\tw = DOM.add(s.menu_container, 'div', {role: 'listbox', id : t.id + '_menu', 'class' : s['menu_class'] + ' ' + s['class'], style : 'position:absolute;left:0;top:-1000px;'});\r\n\t\t\tm = DOM.add(w, 'div', {'class' : s['class'] + ' mceSplitButtonMenu'});\r\n\t\t\tDOM.add(m, 'span', {'class' : 'mceMenuLine'});\r\n\r\n\t\t\tn = DOM.add(m, 'table', {role: 'presentation', 'class' : 'mceColorSplitMenu'});\r\n\t\t\ttb = DOM.add(n, 'tbody');\r\n\r\n\t\t\t// Generate color grid\r\n\t\t\ti = 0;\r\n\t\t\teach(is(s.colors, 'array') ? s.colors : s.colors.split(','), function(c) {\r\n\t\t\t\tc = c.replace(/^#/, '');\r\n\r\n\t\t\t\tif (!i--) {\r\n\t\t\t\t\ttr = DOM.add(tb, 'tr');\r\n\t\t\t\t\ti = s.grid_width - 1;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tn = DOM.add(tr, 'td');\r\n\t\t\t\tn = DOM.add(n, 'a', {\r\n\t\t\t\t\trole : 'option',\r\n\t\t\t\t\thref : 'javascript:;',\r\n\t\t\t\t\tstyle : {\r\n\t\t\t\t\t\tbackgroundColor : '#' + c\r\n\t\t\t\t\t},\r\n\t\t\t\t\t'title': t.editor.getLang('colors.' + c, c),\r\n\t\t\t\t\t'data-mce-color' : '#' + c\r\n\t\t\t\t});\r\n\r\n\t\t\t\tif (t.editor.forcedHighContrastMode) {\r\n\t\t\t\t\tn = DOM.add(n, 'canvas', { width: 16, height: 16, 'aria-hidden': 'true' });\r\n\t\t\t\t\tif (n.getContext && (context = n.getContext(\"2d\"))) {\r\n\t\t\t\t\t\tcontext.fillStyle = '#' + c;\r\n\t\t\t\t\t\tcontext.fillRect(0, 0, 16, 16);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t// No point leaving a canvas element around if it's not supported for drawing on anyway.\r\n\t\t\t\t\t\tDOM.remove(n);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tif (s.more_colors_func) {\r\n\t\t\t\tn = DOM.add(tb, 'tr');\r\n\t\t\t\tn = DOM.add(n, 'td', {colspan : s.grid_width, 'class' : 'mceMoreColors'});\r\n\t\t\t\tn = DOM.add(n, 'a', {role: 'option', id : t.id + '_more', href : 'javascript:;', onclick : 'return false;', 'class' : 'mceMoreColors'}, s.more_colors_title);\r\n\r\n\t\t\t\tEvent.add(n, 'click', function(e) {\r\n\t\t\t\t\ts.more_colors_func.call(s.more_colors_scope || this);\r\n\t\t\t\t\treturn Event.cancel(e); // Cancel to fix onbeforeunload problem\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tDOM.addClass(m, 'mceColorSplitMenu');\r\n\t\t\t\r\n\t\t\tnew tinymce.ui.KeyboardNavigation({\r\n\t\t\t\troot: t.id + '_menu',\r\n\t\t\t\titems: DOM.select('a', t.id + '_menu'),\r\n\t\t\t\tonCancel: function() {\r\n\t\t\t\t\tt.hideMenu();\r\n\t\t\t\t\tt.focus();\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t// Prevent IE from scrolling and hindering click to occur #4019\r\n\t\t\tEvent.add(t.id + '_menu', 'mousedown', function(e) {return Event.cancel(e);});\r\n\r\n\t\t\tEvent.add(t.id + '_menu', 'click', function(e) {\r\n\t\t\t\tvar c;\r\n\r\n\t\t\t\te = DOM.getParent(e.target, 'a', tb);\r\n\r\n\t\t\t\tif (e && e.nodeName.toLowerCase() == 'a' && (c = e.getAttribute('data-mce-color')))\r\n\t\t\t\t\tt.setColor(c);\r\n\r\n\t\t\t\treturn Event.cancel(e); // Prevent IE auto save warning\r\n\t\t\t});\r\n\r\n\t\t\treturn w;\r\n\t\t},\r\n\r\n\t\tsetColor : function(c) {\r\n\t\t\tthis.displayColor(c);\r\n\t\t\tthis.hideMenu();\r\n\t\t\tthis.settings.onselect(c);\r\n\t\t},\r\n\t\t\r\n\t\tdisplayColor : function(c) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tDOM.setStyle(t.id + '_preview', 'backgroundColor', c);\r\n\r\n\t\t\tt.value = c;\r\n\t\t},\r\n\r\n\t\tpostRender : function() {\r\n\t\t\tvar t = this, id = t.id;\r\n\r\n\t\t\tt.parent();\r\n\t\t\tDOM.add(id + '_action', 'div', {id : id + '_preview', 'class' : 'mceColorPreview'});\r\n\t\t\tDOM.setStyle(t.id + '_preview', 'backgroundColor', t.value);\r\n\t\t},\r\n\r\n\t\tdestroy : function() {\r\n\t\t\tthis.parent();\r\n\r\n\t\t\tEvent.clear(this.id + '_menu');\r\n\t\t\tEvent.clear(this.id + '_more');\r\n\t\t\tDOM.remove(this.id + '_menu');\r\n\t\t}\r\n\t});\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n// Shorten class names\r\nvar dom = tinymce.DOM, each = tinymce.each, Event = tinymce.dom.Event;\r\ntinymce.create('tinymce.ui.ToolbarGroup:tinymce.ui.Container', {\r\n\trenderHTML : function() {\r\n\t\tvar t = this, h = [], controls = t.controls, each = tinymce.each, settings = t.settings;\r\n\r\n\t\th.push('<div id=\"' + t.id + '\" role=\"group\" aria-labelledby=\"' + t.id + '_voice\">');\r\n\t\t//TODO: ACC test this out - adding a role = application for getting the landmarks working well.\r\n\t\th.push(\"<span role='application'>\");\r\n\t\th.push('<span id=\"' + t.id + '_voice\" class=\"mceVoiceLabel\" style=\"display:none;\">' + dom.encode(settings.name) + '</span>');\r\n\t\teach(controls, function(toolbar) {\r\n\t\t\th.push(toolbar.renderHTML());\r\n\t\t});\r\n\t\th.push(\"</span>\");\r\n\t\th.push('</div>');\r\n\r\n\t\treturn h.join('');\r\n\t},\r\n\t\r\n\tfocus : function() {\r\n\t\tvar t = this;\r\n\t\tdom.get(t.id).focus();\r\n\t},\r\n\t\r\n\tpostRender : function() {\r\n\t\tvar t = this, items = [];\r\n\r\n\t\teach(t.controls, function(toolbar) {\r\n\t\t\teach (toolbar.controls, function(control) {\r\n\t\t\t\tif (control.id) {\r\n\t\t\t\t\titems.push(control);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t});\r\n\r\n\t\tt.keyNav = new tinymce.ui.KeyboardNavigation({\r\n\t\t\troot: t.id,\r\n\t\t\titems: items,\r\n\t\t\tonCancel: function() {\r\n\t\t\t\t//Move focus if webkit so that navigation back will read the item.\r\n\t\t\t\tif (tinymce.isWebKit) {\r\n\t\t\t\t\tdom.get(t.editor.id+\"_ifr\").focus();\r\n\t\t\t\t}\r\n\t\t\t\tt.editor.focus();\r\n\t\t\t},\r\n\t\t\texcludeFromTabOrder: !t.settings.tab_focus_toolbar\r\n\t\t});\r\n\t},\r\n\t\r\n\tdestroy : function() {\r\n\t\tvar self = this;\r\n\r\n\t\tself.parent();\r\n\t\tself.keyNav.destroy();\r\n\t\tEvent.clear(self.id);\r\n\t}\r\n});\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n// Shorten class names\r\nvar dom = tinymce.DOM, each = tinymce.each;\r\ntinymce.create('tinymce.ui.Toolbar:tinymce.ui.Container', {\r\n\trenderHTML : function() {\r\n\t\tvar t = this, h = '', c, co, s = t.settings, i, pr, nx, cl;\r\n\r\n\t\tcl = t.controls;\r\n\t\tfor (i=0; i<cl.length; i++) {\r\n\t\t\t// Get current control, prev control, next control and if the control is a list box or not\r\n\t\t\tco = cl[i];\r\n\t\t\tpr = cl[i - 1];\r\n\t\t\tnx = cl[i + 1];\r\n\r\n\t\t\t// Add toolbar start\r\n\t\t\tif (i === 0) {\r\n\t\t\t\tc = 'mceToolbarStart';\r\n\r\n\t\t\t\tif (co.Button)\r\n\t\t\t\t\tc += ' mceToolbarStartButton';\r\n\t\t\t\telse if (co.SplitButton)\r\n\t\t\t\t\tc += ' mceToolbarStartSplitButton';\r\n\t\t\t\telse if (co.ListBox)\r\n\t\t\t\t\tc += ' mceToolbarStartListBox';\r\n\r\n\t\t\t\th += dom.createHTML('td', {'class' : c}, dom.createHTML('span', null, '<!-- IE -->'));\r\n\t\t\t}\r\n\r\n\t\t\t// Add toolbar end before list box and after the previous button\r\n\t\t\t// This is to fix the o2k7 editor skins\r\n\t\t\tif (pr && co.ListBox) {\r\n\t\t\t\tif (pr.Button || pr.SplitButton)\r\n\t\t\t\t\th += dom.createHTML('td', {'class' : 'mceToolbarEnd'}, dom.createHTML('span', null, '<!-- IE -->'));\r\n\t\t\t}\r\n\r\n\t\t\t// Render control HTML\r\n\r\n\t\t\t// IE 8 quick fix, needed to propertly generate a hit area for anchors\r\n\t\t\tif (dom.stdMode)\r\n\t\t\t\th += '<td style=\"position: relative\">' + co.renderHTML() + '</td>';\r\n\t\t\telse\r\n\t\t\t\th += '<td>' + co.renderHTML() + '</td>';\r\n\r\n\t\t\t// Add toolbar start after list box and before the next button\r\n\t\t\t// This is to fix the o2k7 editor skins\r\n\t\t\tif (nx && co.ListBox) {\r\n\t\t\t\tif (nx.Button || nx.SplitButton)\r\n\t\t\t\t\th += dom.createHTML('td', {'class' : 'mceToolbarStart'}, dom.createHTML('span', null, '<!-- IE -->'));\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tc = 'mceToolbarEnd';\r\n\r\n\t\tif (co.Button)\r\n\t\t\tc += ' mceToolbarEndButton';\r\n\t\telse if (co.SplitButton)\r\n\t\t\tc += ' mceToolbarEndSplitButton';\r\n\t\telse if (co.ListBox)\r\n\t\t\tc += ' mceToolbarEndListBox';\r\n\r\n\t\th += dom.createHTML('td', {'class' : c}, dom.createHTML('span', null, '<!-- IE -->'));\r\n\r\n\t\treturn dom.createHTML('table', {id : t.id, 'class' : 'mceToolbar' + (s['class'] ? ' ' + s['class'] : ''), cellpadding : '0', cellspacing : '0', align : t.settings.align || '', role: 'presentation', tabindex: '-1'}, '<tbody><tr>' + h + '</tr></tbody>');\r\n\t}\r\n});\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\tvar Dispatcher = tinymce.util.Dispatcher, each = tinymce.each;\r\n\r\n\ttinymce.create('tinymce.AddOnManager', {\r\n\t\tAddOnManager : function() {\r\n\t\t\tvar self = this;\r\n\r\n\t\t\tself.items = [];\r\n\t\t\tself.urls = {};\r\n\t\t\tself.lookup = {};\r\n\t\t\tself.onAdd = new Dispatcher(self);\r\n\t\t},\r\n\r\n\t\tget : function(n) {\r\n\t\t\tif (this.lookup[n]) {\r\n\t\t\t\treturn this.lookup[n].instance;\r\n\t\t\t} else {\r\n\t\t\t\treturn undefined;\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tdependencies : function(n) {\r\n\t\t\tvar result;\r\n\t\t\tif (this.lookup[n]) {\r\n\t\t\t\tresult = this.lookup[n].dependencies;\r\n\t\t\t}\r\n\t\t\treturn result || [];\r\n\t\t},\r\n\r\n\t\trequireLangPack : function(n) {\r\n\t\t\tvar s = tinymce.settings;\r\n\r\n\t\t\tif (s && s.language && s.language_load !== false)\r\n\t\t\t\ttinymce.ScriptLoader.add(this.urls[n] + '/langs/' + s.language + '.js');\r\n\t\t},\r\n\r\n\t\tadd : function(id, o, dependencies) {\r\n\t\t\tthis.items.push(o);\r\n\t\t\tthis.lookup[id] = {instance:o, dependencies:dependencies};\r\n\t\t\tthis.onAdd.dispatch(this, id, o);\r\n\r\n\t\t\treturn o;\r\n\t\t},\r\n\t\tcreateUrl: function(baseUrl, dep) {\r\n\t\t\tif (typeof dep === \"object\") {\r\n\t\t\t\treturn dep\r\n\t\t\t} else {\r\n\t\t\t\treturn {prefix: baseUrl.prefix, resource: dep, suffix: baseUrl.suffix};\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\taddComponents: function(pluginName, scripts) {\r\n\t\t\tvar pluginUrl = this.urls[pluginName];\r\n\t\t\ttinymce.each(scripts, function(script){\r\n\t\t\t\ttinymce.ScriptLoader.add(pluginUrl+\"/\"+script);\t\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tload : function(n, u, cb, s) {\r\n\t\t\tvar t = this, url = u;\r\n\r\n\t\t\tfunction loadDependencies() {\r\n\t\t\t\tvar dependencies = t.dependencies(n);\r\n\t\t\t\ttinymce.each(dependencies, function(dep) {\r\n\t\t\t\t\tvar newUrl = t.createUrl(u, dep);\r\n\t\t\t\t\tt.load(newUrl.resource, newUrl, undefined, undefined);\r\n\t\t\t\t});\r\n\t\t\t\tif (cb) {\r\n\t\t\t\t\tif (s) {\r\n\t\t\t\t\t\tcb.call(s);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tcb.call(tinymce.ScriptLoader);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (t.urls[n])\r\n\t\t\t\treturn;\r\n\t\t\tif (typeof u === \"object\")\r\n\t\t\t\turl = u.prefix + u.resource + u.suffix;\r\n\r\n\t\t\tif (url.indexOf('/') != 0 && url.indexOf('://') == -1)\r\n\t\t\t\turl = tinymce.baseURL + '/' + url;\r\n\r\n\t\t\tt.urls[n] = url.substring(0, url.lastIndexOf('/'));\r\n\r\n\t\t\tif (t.lookup[n]) {\r\n\t\t\t\tloadDependencies();\r\n\t\t\t} else {\r\n\t\t\t\ttinymce.ScriptLoader.add(url, loadDependencies, s);\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n\r\n\t// Create plugin and theme managers\r\n\ttinymce.PluginManager = new tinymce.AddOnManager();\r\n\ttinymce.ThemeManager = new tinymce.AddOnManager();\r\n}(tinymce));\r\n\r\n(function(tinymce) {\r\n\t// Shorten names\r\n\tvar each = tinymce.each, extend = tinymce.extend,\r\n\t\tDOM = tinymce.DOM, Event = tinymce.dom.Event,\r\n\t\tThemeManager = tinymce.ThemeManager, PluginManager = tinymce.PluginManager,\r\n\t\texplode = tinymce.explode,\r\n\t\tDispatcher = tinymce.util.Dispatcher, undefined, instanceCounter = 0;\r\n\r\n\t// Setup some URLs where the editor API is located and where the document is\r\n\ttinymce.documentBaseURL = window.location.href.replace(/[\\?#].*$/, '').replace(/[\\/\\\\][^\\/]+$/, '');\r\n\tif (!/[\\/\\\\]$/.test(tinymce.documentBaseURL))\r\n\t\ttinymce.documentBaseURL += '/';\r\n\r\n\ttinymce.baseURL = new tinymce.util.URI(tinymce.documentBaseURL).toAbsolute(tinymce.baseURL);\r\n\r\n\ttinymce.baseURI = new tinymce.util.URI(tinymce.baseURL);\r\n\r\n\t// Add before unload listener\r\n\t// This was required since IE was leaking memory if you added and removed beforeunload listeners\r\n\t// with attachEvent/detatchEvent so this only adds one listener and instances can the attach to the onBeforeUnload event\r\n\ttinymce.onBeforeUnload = new Dispatcher(tinymce);\r\n\r\n\t// Must be on window or IE will leak if the editor is placed in frame or iframe\r\n\tEvent.add(window, 'beforeunload', function(e) {\r\n\t\ttinymce.onBeforeUnload.dispatch(tinymce, e);\r\n\t});\r\n\r\n\ttinymce.onAddEditor = new Dispatcher(tinymce);\r\n\r\n\ttinymce.onRemoveEditor = new Dispatcher(tinymce);\r\n\r\n\ttinymce.EditorManager = extend(tinymce, {\r\n\t\teditors : [],\r\n\r\n\t\ti18n : {},\r\n\r\n\t\tactiveEditor : null,\r\n\r\n\t\tinit : function(s) {\r\n\t\t\tvar t = this, pl, sl = tinymce.ScriptLoader, e, el = [], ed;\r\n\r\n\t\t\tfunction execCallback(se, n, s) {\r\n\t\t\t\tvar f = se[n];\r\n\r\n\t\t\t\tif (!f)\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\tif (tinymce.is(f, 'string')) {\r\n\t\t\t\t\ts = f.replace(/\\.\\w+$/, '');\r\n\t\t\t\t\ts = s ? tinymce.resolve(s) : 0;\r\n\t\t\t\t\tf = tinymce.resolve(f);\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn f.apply(s || this, Array.prototype.slice.call(arguments, 2));\r\n\t\t\t};\r\n\r\n\t\t\ts = extend({\r\n\t\t\t\ttheme : \"simple\",\r\n\t\t\t\tlanguage : \"en\"\r\n\t\t\t}, s);\r\n\r\n\t\t\tt.settings = s;\r\n\r\n\t\t\t// Legacy call\r\n\t\t\tEvent.add(document, 'init', function() {\r\n\t\t\t\tvar l, co;\r\n\r\n\t\t\t\texecCallback(s, 'onpageload');\r\n\r\n\t\t\t\tswitch (s.mode) {\r\n\t\t\t\t\tcase \"exact\":\r\n\t\t\t\t\t\tl = s.elements || '';\r\n\r\n\t\t\t\t\t\tif(l.length > 0) {\r\n\t\t\t\t\t\t\teach(explode(l), function(v) {\r\n\t\t\t\t\t\t\t\tif (DOM.get(v)) {\r\n\t\t\t\t\t\t\t\t\ted = new tinymce.Editor(v, s);\r\n\t\t\t\t\t\t\t\t\tel.push(ed);\r\n\t\t\t\t\t\t\t\t\ted.render(1);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\teach(document.forms, function(f) {\r\n\t\t\t\t\t\t\t\t\t\teach(f.elements, function(e) {\r\n\t\t\t\t\t\t\t\t\t\t\tif (e.name === v) {\r\n\t\t\t\t\t\t\t\t\t\t\t\tv = 'mce_editor_' + instanceCounter++;\r\n\t\t\t\t\t\t\t\t\t\t\t\tDOM.setAttrib(e, 'id', v);\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\ted = new tinymce.Editor(v, s);\r\n\t\t\t\t\t\t\t\t\t\t\t\tel.push(ed);\r\n\t\t\t\t\t\t\t\t\t\t\t\ted.render(1);\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase \"textareas\":\r\n\t\t\t\t\tcase \"specific_textareas\":\r\n\t\t\t\t\t\tfunction hasClass(n, c) {\r\n\t\t\t\t\t\t\treturn c.constructor === RegExp ? c.test(n.className) : DOM.hasClass(n, c);\r\n\t\t\t\t\t\t};\r\n\r\n\t\t\t\t\t\teach(DOM.select('textarea'), function(v) {\r\n\t\t\t\t\t\t\tif (s.editor_deselector && hasClass(v, s.editor_deselector))\r\n\t\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\t\tif (!s.editor_selector || hasClass(v, s.editor_selector)) {\r\n\t\t\t\t\t\t\t\t// Can we use the name\r\n\t\t\t\t\t\t\t\te = DOM.get(v.name);\r\n\t\t\t\t\t\t\t\tif (!v.id && !e)\r\n\t\t\t\t\t\t\t\t\tv.id = v.name;\r\n\r\n\t\t\t\t\t\t\t\t// Generate unique name if missing or already exists\r\n\t\t\t\t\t\t\t\tif (!v.id || t.get(v.id))\r\n\t\t\t\t\t\t\t\t\tv.id = DOM.uniqueId();\r\n\r\n\t\t\t\t\t\t\t\ted = new tinymce.Editor(v.id, s);\r\n\t\t\t\t\t\t\t\tel.push(ed);\r\n\t\t\t\t\t\t\t\ted.render(1);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Call onInit when all editors are initialized\r\n\t\t\t\tif (s.oninit) {\r\n\t\t\t\t\tl = co = 0;\r\n\r\n\t\t\t\t\teach(el, function(ed) {\r\n\t\t\t\t\t\tco++;\r\n\r\n\t\t\t\t\t\tif (!ed.initialized) {\r\n\t\t\t\t\t\t\t// Wait for it\r\n\t\t\t\t\t\t\ted.onInit.add(function() {\r\n\t\t\t\t\t\t\t\tl++;\r\n\r\n\t\t\t\t\t\t\t\t// All done\r\n\t\t\t\t\t\t\t\tif (l == co)\r\n\t\t\t\t\t\t\t\t\texecCallback(s, 'oninit');\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t} else\r\n\t\t\t\t\t\t\tl++;\r\n\r\n\t\t\t\t\t\t// All done\r\n\t\t\t\t\t\tif (l == co)\r\n\t\t\t\t\t\t\texecCallback(s, 'oninit');\t\t\t\t\t\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tget : function(id) {\r\n\t\t\tif (id === undefined)\r\n\t\t\t\treturn this.editors;\r\n\r\n\t\t\treturn this.editors[id];\r\n\t\t},\r\n\r\n\t\tgetInstanceById : function(id) {\r\n\t\t\treturn this.get(id);\r\n\t\t},\r\n\r\n\t\tadd : function(editor) {\r\n\t\t\tvar self = this, editors = self.editors;\r\n\r\n\t\t\t// Add named and index editor instance\r\n\t\t\teditors[editor.id] = editor;\r\n\t\t\teditors.push(editor);\r\n\r\n\t\t\tself._setActive(editor);\r\n\t\t\tself.onAddEditor.dispatch(self, editor);\r\n\r\n\r\n\t\t\t// Patch the tinymce.Editor instance with jQuery adapter logic\r\n\t\t\tif (tinymce.adapter)\r\n\t\t\t\ttinymce.adapter.patchEditor(editor);\r\n\r\n\r\n\t\t\treturn editor;\r\n\t\t},\r\n\r\n\t\tremove : function(editor) {\r\n\t\t\tvar t = this, i, editors = t.editors;\r\n\r\n\t\t\t// Not in the collection\r\n\t\t\tif (!editors[editor.id])\r\n\t\t\t\treturn null;\r\n\r\n\t\t\tdelete editors[editor.id];\r\n\r\n\t\t\tfor (i = 0; i < editors.length; i++) {\r\n\t\t\t\tif (editors[i] == editor) {\r\n\t\t\t\t\teditors.splice(i, 1);\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Select another editor since the active one was removed\r\n\t\t\tif (t.activeEditor == editor)\r\n\t\t\t\tt._setActive(editors[0]);\r\n\r\n\t\t\teditor.destroy();\r\n\t\t\tt.onRemoveEditor.dispatch(t, editor);\r\n\r\n\t\t\treturn editor;\r\n\t\t},\r\n\r\n\t\texecCommand : function(c, u, v) {\r\n\t\t\tvar t = this, ed = t.get(v), w;\r\n\r\n\t\t\t// Manager commands\r\n\t\t\tswitch (c) {\r\n\t\t\t\tcase \"mceFocus\":\r\n\t\t\t\t\ted.focus();\r\n\t\t\t\t\treturn true;\r\n\r\n\t\t\t\tcase \"mceAddEditor\":\r\n\t\t\t\tcase \"mceAddControl\":\r\n\t\t\t\t\tif (!t.get(v))\r\n\t\t\t\t\t\tnew tinymce.Editor(v, t.settings).render();\r\n\r\n\t\t\t\t\treturn true;\r\n\r\n\t\t\t\tcase \"mceAddFrameControl\":\r\n\t\t\t\t\tw = v.window;\r\n\r\n\t\t\t\t\t// Add tinyMCE global instance and tinymce namespace to specified window\r\n\t\t\t\t\tw.tinyMCE = tinyMCE;\r\n\t\t\t\t\tw.tinymce = tinymce;\r\n\r\n\t\t\t\t\ttinymce.DOM.doc = w.document;\r\n\t\t\t\t\ttinymce.DOM.win = w;\r\n\r\n\t\t\t\t\ted = new tinymce.Editor(v.element_id, v);\r\n\t\t\t\t\ted.render();\r\n\r\n\t\t\t\t\t// Fix IE memory leaks\r\n\t\t\t\t\tif (tinymce.isIE) {\r\n\t\t\t\t\t\tfunction clr() {\r\n\t\t\t\t\t\t\ted.destroy();\r\n\t\t\t\t\t\t\tw.detachEvent('onunload', clr);\r\n\t\t\t\t\t\t\tw = w.tinyMCE = w.tinymce = null; // IE leak\r\n\t\t\t\t\t\t};\r\n\r\n\t\t\t\t\t\tw.attachEvent('onunload', clr);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tv.page_window = null;\r\n\r\n\t\t\t\t\treturn true;\r\n\r\n\t\t\t\tcase \"mceRemoveEditor\":\r\n\t\t\t\tcase \"mceRemoveControl\":\r\n\t\t\t\t\tif (ed)\r\n\t\t\t\t\t\ted.remove();\r\n\r\n\t\t\t\t\treturn true;\r\n\r\n\t\t\t\tcase 'mceToggleEditor':\r\n\t\t\t\t\tif (!ed) {\r\n\t\t\t\t\t\tt.execCommand('mceAddControl', 0, v);\r\n\t\t\t\t\t\treturn true;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (ed.isHidden())\r\n\t\t\t\t\t\ted.show();\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\ted.hide();\r\n\r\n\t\t\t\t\treturn true;\r\n\t\t\t}\r\n\r\n\t\t\t// Run command on active editor\r\n\t\t\tif (t.activeEditor)\r\n\t\t\t\treturn t.activeEditor.execCommand(c, u, v);\r\n\r\n\t\t\treturn false;\r\n\t\t},\r\n\r\n\t\texecInstanceCommand : function(id, c, u, v) {\r\n\t\t\tvar ed = this.get(id);\r\n\r\n\t\t\tif (ed)\r\n\t\t\t\treturn ed.execCommand(c, u, v);\r\n\r\n\t\t\treturn false;\r\n\t\t},\r\n\r\n\t\ttriggerSave : function() {\r\n\t\t\teach(this.editors, function(e) {\r\n\t\t\t\te.save();\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\taddI18n : function(p, o) {\r\n\t\t\tvar lo, i18n = this.i18n;\r\n\r\n\t\t\tif (!tinymce.is(p, 'string')) {\r\n\t\t\t\teach(p, function(o, lc) {\r\n\t\t\t\t\teach(o, function(o, g) {\r\n\t\t\t\t\t\teach(o, function(o, k) {\r\n\t\t\t\t\t\t\tif (g === 'common')\r\n\t\t\t\t\t\t\t\ti18n[lc + '.' + k] = o;\r\n\t\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\t\ti18n[lc + '.' + g + '.' + k] = o;\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\teach(o, function(o, k) {\r\n\t\t\t\t\ti18n[p + '.' + k] = o;\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t// Private methods\r\n\r\n\t\t_setActive : function(editor) {\r\n\t\t\tthis.selectedInstance = this.activeEditor = editor;\r\n\t\t}\r\n\t});\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\t// Shorten these names\r\n\tvar DOM = tinymce.DOM, Event = tinymce.dom.Event, extend = tinymce.extend,\r\n\t\tDispatcher = tinymce.util.Dispatcher, each = tinymce.each, isGecko = tinymce.isGecko,\r\n\t\tisIE = tinymce.isIE, isWebKit = tinymce.isWebKit, is = tinymce.is,\r\n\t\tThemeManager = tinymce.ThemeManager, PluginManager = tinymce.PluginManager,\r\n\t\tinArray = tinymce.inArray, grep = tinymce.grep, explode = tinymce.explode;\r\n\r\n\ttinymce.create('tinymce.Editor', {\r\n\t\tEditor : function(id, s) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tt.id = t.editorId = id;\r\n\r\n\t\t\tt.execCommands = {};\r\n\t\t\tt.queryStateCommands = {};\r\n\t\t\tt.queryValueCommands = {};\r\n\r\n\t\t\tt.isNotDirty = false;\r\n\r\n\t\t\tt.plugins = {};\r\n\r\n\t\t\t// Add events to the editor\r\n\t\t\teach([\r\n\t\t\t\t'onPreInit',\r\n\r\n\t\t\t\t'onBeforeRenderUI',\r\n\r\n\t\t\t\t'onPostRender',\r\n\r\n\t\t\t\t'onInit',\r\n\r\n\t\t\t\t'onRemove',\r\n\r\n\t\t\t\t'onActivate',\r\n\r\n\t\t\t\t'onDeactivate',\r\n\r\n\t\t\t\t'onClick',\r\n\r\n\t\t\t\t'onEvent',\r\n\r\n\t\t\t\t'onMouseUp',\r\n\r\n\t\t\t\t'onMouseDown',\r\n\r\n\t\t\t\t'onDblClick',\r\n\r\n\t\t\t\t'onKeyDown',\r\n\r\n\t\t\t\t'onKeyUp',\r\n\r\n\t\t\t\t'onKeyPress',\r\n\r\n\t\t\t\t'onContextMenu',\r\n\r\n\t\t\t\t'onSubmit',\r\n\r\n\t\t\t\t'onReset',\r\n\r\n\t\t\t\t'onPaste',\r\n\r\n\t\t\t\t'onPreProcess',\r\n\r\n\t\t\t\t'onPostProcess',\r\n\r\n\t\t\t\t'onBeforeSetContent',\r\n\r\n\t\t\t\t'onBeforeGetContent',\r\n\r\n\t\t\t\t'onSetContent',\r\n\r\n\t\t\t\t'onGetContent',\r\n\r\n\t\t\t\t'onLoadContent',\r\n\r\n\t\t\t\t'onSaveContent',\r\n\r\n\t\t\t\t'onNodeChange',\r\n\r\n\t\t\t\t'onChange',\r\n\r\n\t\t\t\t'onBeforeExecCommand',\r\n\r\n\t\t\t\t'onExecCommand',\r\n\r\n\t\t\t\t'onUndo',\r\n\r\n\t\t\t\t'onRedo',\r\n\r\n\t\t\t\t'onVisualAid',\r\n\r\n\t\t\t\t'onSetProgressState'\r\n\t\t\t], function(e) {\r\n\t\t\t\tt[e] = new Dispatcher(t);\r\n\t\t\t});\r\n\r\n\t\t\tt.settings = s = extend({\r\n\t\t\t\tid : id,\r\n\t\t\t\tlanguage : 'en',\r\n\t\t\t\tdocs_language : 'en',\r\n\t\t\t\ttheme : 'simple',\r\n\t\t\t\tskin : 'default',\r\n\t\t\t\tdelta_width : 0,\r\n\t\t\t\tdelta_height : 0,\r\n\t\t\t\tpopup_css : '',\r\n\t\t\t\tplugins : '',\r\n\t\t\t\tdocument_base_url : tinymce.documentBaseURL,\r\n\t\t\t\tadd_form_submit_trigger : 1,\r\n\t\t\t\tsubmit_patch : 1,\r\n\t\t\t\tadd_unload_trigger : 1,\r\n\t\t\t\tconvert_urls : 1,\r\n\t\t\t\trelative_urls : 1,\r\n\t\t\t\tremove_script_host : 1,\r\n\t\t\t\ttable_inline_editing : 0,\r\n\t\t\t\tobject_resizing : 1,\r\n\t\t\t\tcleanup : 1,\r\n\t\t\t\taccessibility_focus : 1,\r\n\t\t\t\tcustom_shortcuts : 1,\r\n\t\t\t\tcustom_undo_redo_keyboard_shortcuts : 1,\r\n\t\t\t\tcustom_undo_redo_restore_selection : 1,\r\n\t\t\t\tcustom_undo_redo : 1,\r\n\t\t\t\tdoctype : tinymce.isIE6 ? '<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">' : '<!DOCTYPE>', // Use old doctype on IE 6 to avoid horizontal scroll\r\n\t\t\t\tvisual_table_class : 'mceItemTable',\r\n\t\t\t\tvisual : 1,\r\n\t\t\t\tfont_size_style_values : 'xx-small,x-small,small,medium,large,x-large,xx-large',\r\n\t\t\t\tapply_source_formatting : 1,\r\n\t\t\t\tdirectionality : 'ltr',\r\n\t\t\t\tforced_root_block : 'p',\r\n\t\t\t\thidden_input : 1,\r\n\t\t\t\tpadd_empty_editor : 1,\r\n\t\t\t\trender_ui : 1,\r\n\t\t\t\tinit_theme : 1,\r\n\t\t\t\tforce_p_newlines : 1,\r\n\t\t\t\tindentation : '30px',\r\n\t\t\t\tkeep_styles : 1,\r\n\t\t\t\tfix_table_elements : 1,\r\n\t\t\t\tinline_styles : 1,\r\n\t\t\t\tconvert_fonts_to_spans : true,\r\n\t\t\t\tindent : 'simple',\r\n\t\t\t\tindent_before : 'p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,ul,li,area,table,thead,tfoot,tbody,tr',\r\n\t\t\t\tindent_after : 'p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,ul,li,area,table,thead,tfoot,tbody,tr',\r\n\t\t\t\tvalidate : true,\r\n\t\t\t\tentity_encoding : 'named',\r\n\t\t\t\turl_converter : t.convertURL,\r\n\t\t\t\turl_converter_scope : t,\r\n\t\t\t\tie7_compat : true\r\n\t\t\t}, s);\r\n\r\n\t\t\tt.documentBaseURI = new tinymce.util.URI(s.document_base_url || tinymce.documentBaseURL, {\r\n\t\t\t\tbase_uri : tinyMCE.baseURI\r\n\t\t\t});\r\n\r\n\t\t\tt.baseURI = tinymce.baseURI;\r\n\r\n\t\t\tt.contentCSS = [];\r\n\r\n\t\t\t// Call setup\r\n\t\t\tt.execCallback('setup', t);\r\n\t\t},\r\n\r\n\t\trender : function(nst) {\r\n\t\t\tvar t = this, s = t.settings, id = t.id, sl = tinymce.ScriptLoader;\r\n\r\n\t\t\t// Page is not loaded yet, wait for it\r\n\t\t\tif (!Event.domLoaded) {\r\n\t\t\t\tEvent.add(document, 'init', function() {\r\n\t\t\t\t\tt.render();\r\n\t\t\t\t});\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\ttinyMCE.settings = s;\r\n\r\n\t\t\t// Element not found, then skip initialization\r\n\t\t\tif (!t.getElement())\r\n\t\t\t\treturn;\r\n\r\n\t\t\t// Is a iPad/iPhone and not on iOS5, then skip initialization. We need to sniff \r\n\t\t\t// here since the browser says it has contentEditable support but there is no visible\r\n\t\t\t// caret We will remove this check ones Apple implements full contentEditable support\r\n\t\t\tif (tinymce.isIDevice && !tinymce.isIOS5)\r\n\t\t\t\treturn;\r\n\r\n\t\t\t// Add hidden input for non input elements inside form elements\r\n\t\t\tif (!/TEXTAREA|INPUT/i.test(t.getElement().nodeName) && s.hidden_input && DOM.getParent(id, 'form'))\r\n\t\t\t\tDOM.insertAfter(DOM.create('input', {type : 'hidden', name : id}), id);\r\n\r\n\t\t\tif (tinymce.WindowManager)\r\n\t\t\t\tt.windowManager = new tinymce.WindowManager(t);\r\n\r\n\t\t\tif (s.encoding == 'xml') {\r\n\t\t\t\tt.onGetContent.add(function(ed, o) {\r\n\t\t\t\t\tif (o.save)\r\n\t\t\t\t\t\to.content = DOM.encode(o.content);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tif (s.add_form_submit_trigger) {\r\n\t\t\t\tt.onSubmit.addToTop(function() {\r\n\t\t\t\t\tif (t.initialized) {\r\n\t\t\t\t\t\tt.save();\r\n\t\t\t\t\t\tt.isNotDirty = 1;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tif (s.add_unload_trigger) {\r\n\t\t\t\tt._beforeUnload = tinyMCE.onBeforeUnload.add(function() {\r\n\t\t\t\t\tif (t.initialized && !t.destroyed && !t.isHidden())\r\n\t\t\t\t\t\tt.save({format : 'raw', no_events : true});\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\ttinymce.addUnload(t.destroy, t);\r\n\r\n\t\t\tif (s.submit_patch) {\r\n\t\t\t\tt.onBeforeRenderUI.add(function() {\r\n\t\t\t\t\tvar n = t.getElement().form;\r\n\r\n\t\t\t\t\tif (!n)\r\n\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t// Already patched\r\n\t\t\t\t\tif (n._mceOldSubmit)\r\n\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t// Check page uses id=\"submit\" or name=\"submit\" for it's submit button\r\n\t\t\t\t\tif (!n.submit.nodeType && !n.submit.length) {\r\n\t\t\t\t\t\tt.formElement = n;\r\n\t\t\t\t\t\tn._mceOldSubmit = n.submit;\r\n\t\t\t\t\t\tn.submit = function() {\r\n\t\t\t\t\t\t\t// Save all instances\r\n\t\t\t\t\t\t\ttinymce.triggerSave();\r\n\t\t\t\t\t\t\tt.isNotDirty = 1;\r\n\r\n\t\t\t\t\t\t\treturn t.formElement._mceOldSubmit(t.formElement);\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tn = null;\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\t// Load scripts\r\n\t\t\tfunction loadScripts() {\r\n\t\t\t\tif (s.language && s.language_load !== false)\r\n\t\t\t\t\tsl.add(tinymce.baseURL + '/langs/' + s.language + '.js');\r\n\r\n\t\t\t\tif (s.theme && s.theme.charAt(0) != '-' && !ThemeManager.urls[s.theme])\r\n\t\t\t\t\tThemeManager.load(s.theme, 'themes/' + s.theme + '/editor_template' + tinymce.suffix + '.js');\r\n\r\n\t\t\t\teach(explode(s.plugins), function(p) {\r\n\t\t\t\t\tif (p &&!PluginManager.urls[p]) {\r\n\t\t\t\t\t\tif (p.charAt(0) == '-') {\r\n\t\t\t\t\t\t\tp = p.substr(1, p.length);\r\n\t\t\t\t\t\t\tvar dependencies = PluginManager.dependencies(p);\r\n\t\t\t\t\t\t\teach(dependencies, function(dep) {\r\n\t\t\t\t\t\t\t\tvar defaultSettings = {prefix:'plugins/', resource: dep, suffix:'/editor_plugin' + tinymce.suffix + '.js'};\r\n\t\t\t\t\t\t\t\tvar dep = PluginManager.createUrl(defaultSettings, dep);\r\n\t\t\t\t\t\t\t\tPluginManager.load(dep.resource, dep);\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t// Skip safari plugin, since it is removed as of 3.3b1\r\n\t\t\t\t\t\t\tif (p == 'safari') {\r\n\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\tPluginManager.load(p, {prefix:'plugins/', resource: p, suffix:'/editor_plugin' + tinymce.suffix + '.js'});\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// Init when que is loaded\r\n\t\t\t\tsl.loadQueue(function() {\r\n\t\t\t\t\tif (!t.removed)\r\n\t\t\t\t\t\tt.init();\r\n\t\t\t\t});\r\n\t\t\t};\r\n\r\n\t\t\tloadScripts();\r\n\t\t},\r\n\r\n\t\tinit : function() {\r\n\t\t\tvar n, t = this, s = t.settings, w, h, e = t.getElement(), o, ti, u, bi, bc, re, i, initializedPlugins = [];\r\n\r\n\t\t\ttinymce.add(t);\r\n\r\n\t\t\ts.aria_label = s.aria_label || DOM.getAttrib(e, 'aria-label', t.getLang('aria.rich_text_area'));\r\n\r\n\t\t\tif (s.theme) {\r\n\t\t\t\ts.theme = s.theme.replace(/-/, '');\r\n\t\t\t\to = ThemeManager.get(s.theme);\r\n\t\t\t\tt.theme = new o();\r\n\r\n\t\t\t\tif (t.theme.init && s.init_theme)\r\n\t\t\t\t\tt.theme.init(t, ThemeManager.urls[s.theme] || tinymce.documentBaseURL.replace(/\\/$/, ''));\r\n\t\t\t}\r\n\t\t\tfunction initPlugin(p) {\r\n\t\t\t\tvar c = PluginManager.get(p), u = PluginManager.urls[p] || tinymce.documentBaseURL.replace(/\\/$/, ''), po;\r\n\t\t\t\tif (c && tinymce.inArray(initializedPlugins,p) === -1) {\r\n\t\t\t\t\teach(PluginManager.dependencies(p), function(dep){\r\n\t\t\t\t\t\tinitPlugin(dep);\r\n\t\t\t\t\t});\r\n\t\t\t\t\tpo = new c(t, u);\r\n\r\n\t\t\t\t\tt.plugins[p] = po;\r\n\r\n\t\t\t\t\tif (po.init) {\r\n\t\t\t\t\t\tpo.init(t, u);\r\n\t\t\t\t\t\tinitializedPlugins.push(p);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t// Create all plugins\r\n\t\t\teach(explode(s.plugins.replace(/\\-/g, '')), initPlugin);\r\n\r\n\t\t\t// Setup popup CSS path(s)\r\n\t\t\tif (s.popup_css !== false) {\r\n\t\t\t\tif (s.popup_css)\r\n\t\t\t\t\ts.popup_css = t.documentBaseURI.toAbsolute(s.popup_css);\r\n\t\t\t\telse\r\n\t\t\t\t\ts.popup_css = t.baseURI.toAbsolute(\"themes/\" + s.theme + \"/skins/\" + s.skin + \"/dialog.css\");\r\n\t\t\t}\r\n\r\n\t\t\tif (s.popup_css_add)\r\n\t\t\t\ts.popup_css += ',' + t.documentBaseURI.toAbsolute(s.popup_css_add);\r\n\r\n\t\t\tt.controlManager = new tinymce.ControlManager(t);\r\n\r\n\t\t\tif (s.custom_undo_redo) {\r\n\t\t\t\tt.onBeforeExecCommand.add(function(ed, cmd, ui, val, a) {\r\n\t\t\t\t\tif (cmd != 'Undo' && cmd != 'Redo' && cmd != 'mceRepaint' && (!a || !a.skip_undo))\r\n\t\t\t\t\t\tt.undoManager.beforeChange();\r\n\t\t\t\t});\r\n\r\n\t\t\t\tt.onExecCommand.add(function(ed, cmd, ui, val, a) {\r\n\t\t\t\t\tif (cmd != 'Undo' && cmd != 'Redo' && cmd != 'mceRepaint' && (!a || !a.skip_undo))\r\n\t\t\t\t\t\tt.undoManager.add();\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tt.onExecCommand.add(function(ed, c) {\r\n\t\t\t\t// Don't refresh the select lists until caret move\r\n\t\t\t\tif (!/^(FontName|FontSize)$/.test(c))\r\n\t\t\t\t\tt.nodeChanged();\r\n\t\t\t});\r\n\r\n\t\t\t// Remove ghost selections on images and tables in Gecko\r\n\t\t\tif (isGecko) {\r\n\t\t\t\tfunction repaint(a, o) {\r\n\t\t\t\t\tif (!o || !o.initial)\r\n\t\t\t\t\t\tt.execCommand('mceRepaint');\r\n\t\t\t\t};\r\n\r\n\t\t\t\tt.onUndo.add(repaint);\r\n\t\t\t\tt.onRedo.add(repaint);\r\n\t\t\t\tt.onSetContent.add(repaint);\r\n\t\t\t}\r\n\r\n\t\t\t// Enables users to override the control factory\r\n\t\t\tt.onBeforeRenderUI.dispatch(t, t.controlManager);\r\n\r\n\t\t\t// Measure box\r\n\t\t\tif (s.render_ui) {\r\n\t\t\t\tw = s.width || e.style.width || e.offsetWidth;\r\n\t\t\t\th = s.height || e.style.height || e.offsetHeight;\r\n\t\t\t\tt.orgDisplay = e.style.display;\r\n\t\t\t\tre = /^[0-9\\.]+(|px)$/i;\r\n\r\n\t\t\t\tif (re.test('' + w))\r\n\t\t\t\t\tw = Math.max(parseInt(w) + (o.deltaWidth || 0), 100);\r\n\r\n\t\t\t\tif (re.test('' + h))\r\n\t\t\t\t\th = Math.max(parseInt(h) + (o.deltaHeight || 0), 100);\r\n\r\n\t\t\t\t// Render UI\r\n\t\t\t\to = t.theme.renderUI({\r\n\t\t\t\t\ttargetNode : e,\r\n\t\t\t\t\twidth : w,\r\n\t\t\t\t\theight : h,\r\n\t\t\t\t\tdeltaWidth : s.delta_width,\r\n\t\t\t\t\tdeltaHeight : s.delta_height\r\n\t\t\t\t});\r\n\r\n\t\t\t\tt.editorContainer = o.editorContainer;\r\n\t\t\t}\r\n\r\n\r\n\t\t\t// User specified a document.domain value\r\n\t\t\tif (document.domain && location.hostname != document.domain)\r\n\t\t\t\ttinymce.relaxedDomain = document.domain;\r\n\r\n\t\t\t// Resize editor\r\n\t\t\tDOM.setStyles(o.sizeContainer || o.editorContainer, {\r\n\t\t\t\twidth : w,\r\n\t\t\t\theight : h\r\n\t\t\t});\r\n\r\n\t\t\t// Load specified content CSS last\r\n\t\t\tif (s.content_css) {\r\n\t\t\t\ttinymce.each(explode(s.content_css), function(u) {\r\n\t\t\t\t\tt.contentCSS.push(t.documentBaseURI.toAbsolute(u));\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\th = (o.iframeHeight || h) + (typeof(h) == 'number' ? (o.deltaHeight || 0) : '');\r\n\t\t\tif (h < 100)\r\n\t\t\t\th = 100;\r\n\r\n\t\t\tt.iframeHTML = s.doctype + '<html><head xmlns=\"http://www.w3.org/1999/xhtml\">';\r\n\r\n\t\t\t// We only need to override paths if we have to\r\n\t\t\t// IE has a bug where it remove site absolute urls to relative ones if this is specified\r\n\t\t\tif (s.document_base_url != tinymce.documentBaseURL)\r\n\t\t\t\tt.iframeHTML += '<base href=\"' + t.documentBaseURI.getURI() + '\" />';\r\n\r\n\t\t\t// IE8 doesn't support carets behind images setting ie7_compat would force IE8+ to run in IE7 compat mode.\r\n\t\t\tif (s.ie7_compat)\r\n\t\t\t\tt.iframeHTML += '<meta http-equiv=\"X-UA-Compatible\" content=\"IE=7\" />';\r\n\t\t\telse\r\n\t\t\t\tt.iframeHTML += '<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />';\r\n\r\n\t\t\tt.iframeHTML += '<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />';\r\n\r\n\t\t\t// Load the CSS by injecting them into the HTML this will reduce \"flicker\"\r\n\t\t\tfor (i = 0; i < t.contentCSS.length; i++) {\r\n\t\t\t\tt.iframeHTML += '<link type=\"text/css\" rel=\"stylesheet\" href=\"' + t.contentCSS[i] + '\" />';\r\n\t\t\t}\r\n\r\n\t\t\tbi = s.body_id || 'tinymce';\r\n\t\t\tif (bi.indexOf('=') != -1) {\r\n\t\t\t\tbi = t.getParam('body_id', '', 'hash');\r\n\t\t\t\tbi = bi[t.id] || bi;\r\n\t\t\t}\r\n\r\n\t\t\tbc = s.body_class || '';\r\n\t\t\tif (bc.indexOf('=') != -1) {\r\n\t\t\t\tbc = t.getParam('body_class', '', 'hash');\r\n\t\t\t\tbc = bc[t.id] || '';\r\n\t\t\t}\r\n\r\n\t\t\tt.iframeHTML += '</head><body id=\"' + bi + '\" class=\"mceContentBody ' + bc + '\"><br></body></html>';\r\n\r\n\t\t\t// Domain relaxing enabled, then set document domain\r\n\t\t\tif (tinymce.relaxedDomain && (isIE || (tinymce.isOpera && parseFloat(opera.version()) < 11))) {\r\n\t\t\t\t// We need to write the contents here in IE since multiple writes messes up refresh button and back button\r\n\t\t\t\tu = 'javascript:(function(){document.open();document.domain=\"' + document.domain + '\";var ed = window.parent.tinyMCE.get(\"' + t.id + '\");document.write(ed.iframeHTML);document.close();ed.setupIframe();})()';\r\n\t\t\t}\r\n\r\n\t\t\t// Create iframe\r\n\t\t\t// TODO: ACC add the appropriate description on this.\r\n\t\t\tn = DOM.add(o.iframeContainer, 'iframe', { \r\n\t\t\t\tid : t.id + \"_ifr\",\r\n\t\t\t\tsrc : u || 'javascript:\"\"', // Workaround for HTTPS warning in IE6/7\r\n\t\t\t\tframeBorder : '0',\r\n\t\t\t\tallowTransparency : \"true\",\r\n\t\t\t\ttitle : s.aria_label,\r\n\t\t\t\tstyle : {\r\n\t\t\t\t\twidth : '100%',\r\n\t\t\t\t\theight : h,\r\n\t\t\t\t\tdisplay : 'block' // Important for Gecko to render the iframe correctly\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tt.contentAreaContainer = o.iframeContainer;\r\n\t\t\tDOM.get(o.editorContainer).style.display = t.orgDisplay;\r\n\t\t\tDOM.get(t.id).style.display = 'none';\r\n\t\t\tDOM.setAttrib(t.id, 'aria-hidden', true);\r\n\r\n\t\t\tif (!tinymce.relaxedDomain || !u)\r\n\t\t\t\tt.setupIframe();\r\n\r\n\t\t\te = n = o = null; // Cleanup\r\n\t\t},\r\n\r\n\t\tsetupIframe : function() {\r\n\t\t\tvar t = this, s = t.settings, e = DOM.get(t.id), d = t.getDoc(), h, b;\r\n\r\n\t\t\t// Setup iframe body\r\n\t\t\tif (!isIE || !tinymce.relaxedDomain) {\r\n\t\t\t\td.open();\r\n\t\t\t\td.write(t.iframeHTML);\r\n\t\t\t\td.close();\r\n\r\n\t\t\t\tif (tinymce.relaxedDomain)\r\n\t\t\t\t\td.domain = tinymce.relaxedDomain;\r\n\t\t\t}\r\n\r\n\t\t\t// It will not steal focus while setting contentEditable\r\n\t\t\tb = t.getBody();\r\n\t\t\tb.disabled = true;\r\n\r\n\t\t\tif (!s.readonly)\r\n\t\t\t\tb.contentEditable = true;\r\n\r\n\t\t\tb.disabled = false;\r\n\r\n\t\t\tt.schema = new tinymce.html.Schema(s);\r\n\r\n\t\t\tt.dom = new tinymce.dom.DOMUtils(t.getDoc(), {\r\n\t\t\t\tkeep_values : true,\r\n\t\t\t\turl_converter : t.convertURL,\r\n\t\t\t\turl_converter_scope : t,\r\n\t\t\t\thex_colors : s.force_hex_style_colors,\r\n\t\t\t\tclass_filter : s.class_filter,\r\n\t\t\t\tupdate_styles : 1,\r\n\t\t\t\tfix_ie_paragraphs : 1,\r\n\t\t\t\tschema : t.schema\r\n\t\t\t});\r\n\r\n\t\t\tt.parser = new tinymce.html.DomParser(s, t.schema);\r\n\r\n\t\t\t// Force anchor names closed, unless the setting \"allow_html_in_named_anchor\" is explicitly included.\r\n\t\t\tif (!t.settings.allow_html_in_named_anchor) {\r\n\t\t\t\tt.parser.addAttributeFilter('name', function(nodes, name) {\r\n\t\t\t\t\tvar i = nodes.length, sibling, prevSibling, parent, node;\r\n\t\r\n\t\t\t\t\twhile (i--) {\r\n\t\t\t\t\t\tnode = nodes[i];\r\n\t\t\t\t\t\tif (node.name === 'a' && node.firstChild) {\r\n\t\t\t\t\t\t\tparent = node.parent;\r\n\t\r\n\t\t\t\t\t\t\t// Move children after current node\r\n\t\t\t\t\t\t\tsibling = node.lastChild;\r\n\t\t\t\t\t\t\tdo {\r\n\t\t\t\t\t\t\t\tprevSibling = sibling.prev;\r\n\t\t\t\t\t\t\t\tparent.insert(sibling, node);\r\n\t\t\t\t\t\t\t\tsibling = prevSibling;\r\n\t\t\t\t\t\t\t} while (sibling);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\t// Convert src and href into data-mce-src, data-mce-href and data-mce-style\r\n\t\t\tt.parser.addAttributeFilter('src,href,style', function(nodes, name) {\r\n\t\t\t\tvar i = nodes.length, node, dom = t.dom, value, internalName;\r\n\r\n\t\t\t\twhile (i--) {\r\n\t\t\t\t\tnode = nodes[i];\r\n\t\t\t\t\tvalue = node.attr(name);\r\n\t\t\t\t\tinternalName = 'data-mce-' + name;\r\n\r\n\t\t\t\t\t// Add internal attribute if we need to we don't on a refresh of the document\r\n\t\t\t\t\tif (!node.attributes.map[internalName]) {\t\r\n\t\t\t\t\t\tif (name === \"style\")\r\n\t\t\t\t\t\t\tnode.attr(internalName, dom.serializeStyle(dom.parseStyle(value), node.name));\r\n\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\tnode.attr(internalName, t.convertURL(value, name, node.name));\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t// Keep scripts from executing\r\n\t\t\tt.parser.addNodeFilter('script', function(nodes, name) {\r\n\t\t\t\tvar i = nodes.length;\r\n\r\n\t\t\t\twhile (i--)\r\n\t\t\t\t\tnodes[i].attr('type', 'mce-text/javascript');\r\n\t\t\t});\r\n\r\n\t\t\tt.parser.addNodeFilter('#cdata', function(nodes, name) {\r\n\t\t\t\tvar i = nodes.length, node;\r\n\r\n\t\t\t\twhile (i--) {\r\n\t\t\t\t\tnode = nodes[i];\r\n\t\t\t\t\tnode.type = 8;\r\n\t\t\t\t\tnode.name = '#comment';\r\n\t\t\t\t\tnode.value = '[CDATA[' + node.value + ']]';\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tt.parser.addNodeFilter('p,h1,h2,h3,h4,h5,h6,div', function(nodes, name) {\r\n\t\t\t\tvar i = nodes.length, node, nonEmptyElements = t.schema.getNonEmptyElements();\r\n\r\n\t\t\t\twhile (i--) {\r\n\t\t\t\t\tnode = nodes[i];\r\n\r\n\t\t\t\t\tif (node.isEmpty(nonEmptyElements))\r\n\t\t\t\t\t\tnode.empty().append(new tinymce.html.Node('br', 1)).shortEnded = true;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tt.serializer = new tinymce.dom.Serializer(s, t.dom, t.schema);\r\n\r\n\t\t\tt.selection = new tinymce.dom.Selection(t.dom, t.getWin(), t.serializer);\r\n\r\n\t\t\tt.formatter = new tinymce.Formatter(this);\r\n\r\n\t\t\t// Register default formats\r\n\t\t\tt.formatter.register({\r\n\t\t\t\talignleft : [\r\n\t\t\t\t\t{selector : 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li', styles : {textAlign : 'left'}},\r\n\t\t\t\t\t{selector : 'img,table', collapsed : false, styles : {'float' : 'left'}}\r\n\t\t\t\t],\r\n\r\n\t\t\t\taligncenter : [\r\n\t\t\t\t\t{selector : 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li', styles : {textAlign : 'center'}},\r\n\t\t\t\t\t{selector : 'img', collapsed : false, styles : {display : 'block', marginLeft : 'auto', marginRight : 'auto'}},\r\n\t\t\t\t\t{selector : 'table', collapsed : false, styles : {marginLeft : 'auto', marginRight : 'auto'}}\r\n\t\t\t\t],\r\n\r\n\t\t\t\talignright : [\r\n\t\t\t\t\t{selector : 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li', styles : {textAlign : 'right'}},\r\n\t\t\t\t\t{selector : 'img,table', collapsed : false, styles : {'float' : 'right'}}\r\n\t\t\t\t],\r\n\r\n\t\t\t\talignfull : [\r\n\t\t\t\t\t{selector : 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li', styles : {textAlign : 'justify'}}\r\n\t\t\t\t],\r\n\r\n\t\t\t\tbold : [\r\n\t\t\t\t\t{inline : 'strong', remove : 'all'},\r\n\t\t\t\t\t{inline : 'span', styles : {fontWeight : 'bold'}},\r\n\t\t\t\t\t{inline : 'b', remove : 'all'}\r\n\t\t\t\t],\r\n\r\n\t\t\t\titalic : [\r\n\t\t\t\t\t{inline : 'em', remove : 'all'},\r\n\t\t\t\t\t{inline : 'span', styles : {fontStyle : 'italic'}},\r\n\t\t\t\t\t{inline : 'i', remove : 'all'}\r\n\t\t\t\t],\r\n\r\n\t\t\t\tunderline : [\r\n\t\t\t\t\t{inline : 'span', styles : {textDecoration : 'underline'}, exact : true},\r\n\t\t\t\t\t{inline : 'u', remove : 'all'}\r\n\t\t\t\t],\r\n\r\n\t\t\t\tstrikethrough : [\r\n\t\t\t\t\t{inline : 'span', styles : {textDecoration : 'line-through'}, exact : true},\r\n\t\t\t\t\t{inline : 'strike', remove : 'all'}\r\n\t\t\t\t],\r\n\r\n\t\t\t\tforecolor : {inline : 'span', styles : {color : '%value'}, wrap_links : false},\r\n\t\t\t\thilitecolor : {inline : 'span', styles : {backgroundColor : '%value'}, wrap_links : false},\r\n\t\t\t\tfontname : {inline : 'span', styles : {fontFamily : '%value'}},\r\n\t\t\t\tfontsize : {inline : 'span', styles : {fontSize : '%value'}},\r\n\t\t\t\tfontsize_class : {inline : 'span', attributes : {'class' : '%value'}},\r\n\t\t\t\tblockquote : {block : 'blockquote', wrapper : 1, remove : 'all'},\r\n\t\t\t\tsubscript : {inline : 'sub'},\r\n\t\t\t\tsuperscript : {inline : 'sup'},\r\n\r\n\t\t\t\tlink : {inline : 'a', selector : 'a', remove : 'all', split : true, deep : true,\r\n\t\t\t\t\tonmatch : function(node) {\r\n\t\t\t\t\t\treturn true;\r\n\t\t\t\t\t},\r\n\r\n\t\t\t\t\tonformat : function(elm, fmt, vars) {\r\n\t\t\t\t\t\teach(vars, function(value, key) {\r\n\t\t\t\t\t\t\tt.dom.setAttrib(elm, key, value);\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\r\n\t\t\t\tremoveformat : [\r\n\t\t\t\t\t{selector : 'b,strong,em,i,font,u,strike', remove : 'all', split : true, expand : false, block_expand : true, deep : true},\r\n\t\t\t\t\t{selector : 'span', attributes : ['style', 'class'], remove : 'empty', split : true, expand : false, deep : true},\r\n\t\t\t\t\t{selector : '*', attributes : ['style', 'class'], split : false, expand : false, deep : true}\r\n\t\t\t\t]\r\n\t\t\t});\r\n\r\n\t\t\t// Register default block formats\r\n\t\t\teach('p h1 h2 h3 h4 h5 h6 div address pre div code dt dd samp'.split(/\\s/), function(name) {\r\n\t\t\t\tt.formatter.register(name, {block : name, remove : 'all'});\r\n\t\t\t});\r\n\r\n\t\t\t// Register user defined formats\r\n\t\t\tt.formatter.register(t.settings.formats);\r\n\r\n\t\t\tt.undoManager = new tinymce.UndoManager(t);\r\n\r\n\t\t\t// Pass through\r\n\t\t\tt.undoManager.onAdd.add(function(um, l) {\r\n\t\t\t\tif (um.hasUndo())\r\n\t\t\t\t\treturn t.onChange.dispatch(t, l, um);\r\n\t\t\t});\r\n\r\n\t\t\tt.undoManager.onUndo.add(function(um, l) {\r\n\t\t\t\treturn t.onUndo.dispatch(t, l, um);\r\n\t\t\t});\r\n\r\n\t\t\tt.undoManager.onRedo.add(function(um, l) {\r\n\t\t\t\treturn t.onRedo.dispatch(t, l, um);\r\n\t\t\t});\r\n\r\n\t\t\tt.forceBlocks = new tinymce.ForceBlocks(t, {\r\n\t\t\t\tforced_root_block : s.forced_root_block\r\n\t\t\t});\r\n\r\n\t\t\tt.editorCommands = new tinymce.EditorCommands(t);\r\n\r\n\t\t\t// Pass through\r\n\t\t\tt.serializer.onPreProcess.add(function(se, o) {\r\n\t\t\t\treturn t.onPreProcess.dispatch(t, o, se);\r\n\t\t\t});\r\n\r\n\t\t\tt.serializer.onPostProcess.add(function(se, o) {\r\n\t\t\t\treturn t.onPostProcess.dispatch(t, o, se);\r\n\t\t\t});\r\n\r\n\t\t\tt.onPreInit.dispatch(t);\r\n\r\n\t\t\tif (!s.gecko_spellcheck)\r\n\t\t\t\tt.getBody().spellcheck = 0;\r\n\r\n\t\t\tif (!s.readonly)\r\n\t\t\t\tt._addEvents();\r\n\r\n\t\t\tt.controlManager.onPostRender.dispatch(t, t.controlManager);\r\n\t\t\tt.onPostRender.dispatch(t);\r\n\r\n\t\t\tt.quirks = new tinymce.util.Quirks(this);\r\n\r\n\t\t\tif (s.directionality)\r\n\t\t\t\tt.getBody().dir = s.directionality;\r\n\r\n\t\t\tif (s.nowrap)\r\n\t\t\t\tt.getBody().style.whiteSpace = \"nowrap\";\r\n\r\n\t\t\tif (s.handle_node_change_callback) {\r\n\t\t\t\tt.onNodeChange.add(function(ed, cm, n) {\r\n\t\t\t\t\tt.execCallback('handle_node_change_callback', t.id, n, -1, -1, true, t.selection.isCollapsed());\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tif (s.save_callback) {\r\n\t\t\t\tt.onSaveContent.add(function(ed, o) {\r\n\t\t\t\t\tvar h = t.execCallback('save_callback', t.id, o.content, t.getBody());\r\n\r\n\t\t\t\t\tif (h)\r\n\t\t\t\t\t\to.content = h;\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tif (s.onchange_callback) {\r\n\t\t\t\tt.onChange.add(function(ed, l) {\r\n\t\t\t\t\tt.execCallback('onchange_callback', t, l);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tif (s.protect) {\r\n\t\t\t\tt.onBeforeSetContent.add(function(ed, o) {\r\n\t\t\t\t\tif (s.protect) {\r\n\t\t\t\t\t\teach(s.protect, function(pattern) {\r\n\t\t\t\t\t\t\to.content = o.content.replace(pattern, function(str) {\r\n\t\t\t\t\t\t\t\treturn '<!--mce:protected ' + escape(str) + '-->';\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tif (s.convert_newlines_to_brs) {\r\n\t\t\t\tt.onBeforeSetContent.add(function(ed, o) {\r\n\t\t\t\t\tif (o.initial)\r\n\t\t\t\t\t\to.content = o.content.replace(/\\r?\\n/g, '<br />');\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tif (s.preformatted) {\r\n\t\t\t\tt.onPostProcess.add(function(ed, o) {\r\n\t\t\t\t\to.content = o.content.replace(/^\\s*<pre.*?>/, '');\r\n\t\t\t\t\to.content = o.content.replace(/<\\/pre>\\s*$/, '');\r\n\r\n\t\t\t\t\tif (o.set)\r\n\t\t\t\t\t\to.content = '<pre class=\"mceItemHidden\">' + o.content + '</pre>';\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tif (s.verify_css_classes) {\r\n\t\t\t\tt.serializer.attribValueFilter = function(n, v) {\r\n\t\t\t\t\tvar s, cl;\r\n\r\n\t\t\t\t\tif (n == 'class') {\r\n\t\t\t\t\t\t// Build regexp for classes\r\n\t\t\t\t\t\tif (!t.classesRE) {\r\n\t\t\t\t\t\t\tcl = t.dom.getClasses();\r\n\r\n\t\t\t\t\t\t\tif (cl.length > 0) {\r\n\t\t\t\t\t\t\t\ts = '';\r\n\r\n\t\t\t\t\t\t\t\teach (cl, function(o) {\r\n\t\t\t\t\t\t\t\t\ts += (s ? '|' : '') + o['class'];\r\n\t\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\t\tt.classesRE = new RegExp('(' + s + ')', 'gi');\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\treturn !t.classesRE || /(\\bmceItem\\w+\\b|\\bmceTemp\\w+\\b)/g.test(v) || t.classesRE.test(v) ? v : '';\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\treturn v;\r\n\t\t\t\t};\r\n\t\t\t}\r\n\r\n\t\t\tif (s.cleanup_callback) {\r\n\t\t\t\tt.onBeforeSetContent.add(function(ed, o) {\r\n\t\t\t\t\to.content = t.execCallback('cleanup_callback', 'insert_to_editor', o.content, o);\r\n\t\t\t\t});\r\n\r\n\t\t\t\tt.onPreProcess.add(function(ed, o) {\r\n\t\t\t\t\tif (o.set)\r\n\t\t\t\t\t\tt.execCallback('cleanup_callback', 'insert_to_editor_dom', o.node, o);\r\n\r\n\t\t\t\t\tif (o.get)\r\n\t\t\t\t\t\tt.execCallback('cleanup_callback', 'get_from_editor_dom', o.node, o);\r\n\t\t\t\t});\r\n\r\n\t\t\t\tt.onPostProcess.add(function(ed, o) {\r\n\t\t\t\t\tif (o.set)\r\n\t\t\t\t\t\to.content = t.execCallback('cleanup_callback', 'insert_to_editor', o.content, o);\r\n\r\n\t\t\t\t\tif (o.get)\t\t\t\t\t\t\r\n\t\t\t\t\t\to.content = t.execCallback('cleanup_callback', 'get_from_editor', o.content, o);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tif (s.save_callback) {\r\n\t\t\t\tt.onGetContent.add(function(ed, o) {\r\n\t\t\t\t\tif (o.save)\r\n\t\t\t\t\t\to.content = t.execCallback('save_callback', t.id, o.content, t.getBody());\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tif (s.handle_event_callback) {\r\n\t\t\t\tt.onEvent.add(function(ed, e, o) {\r\n\t\t\t\t\tif (t.execCallback('handle_event_callback', e, ed, o) === false)\r\n\t\t\t\t\t\tEvent.cancel(e);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\t// Add visual aids when new contents is added\r\n\t\t\tt.onSetContent.add(function() {\r\n\t\t\t\tt.addVisual(t.getBody());\r\n\t\t\t});\r\n\r\n\t\t\t// Remove empty contents\r\n\t\t\tif (s.padd_empty_editor) {\r\n\t\t\t\tt.onPostProcess.add(function(ed, o) {\r\n\t\t\t\t\to.content = o.content.replace(/^(<p[^>]*>(&nbsp;|&#160;|\\s|\\u00a0|)<\\/p>[\\r\\n]*|<br \\/>[\\r\\n]*)$/, '');\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tif (isGecko) {\r\n\t\t\t\t// Fix gecko link bug, when a link is placed at the end of block elements there is\r\n\t\t\t\t// no way to move the caret behind the link. This fix adds a bogus br element after the link\r\n\t\t\t\tfunction fixLinks(ed, o) {\r\n\t\t\t\t\teach(ed.dom.select('a'), function(n) {\r\n\t\t\t\t\t\tvar pn = n.parentNode;\r\n\r\n\t\t\t\t\t\tif (ed.dom.isBlock(pn) && pn.lastChild === n)\r\n\t\t\t\t\t\t\ted.dom.add(pn, 'br', {'data-mce-bogus' : 1});\r\n\t\t\t\t\t});\r\n\t\t\t\t};\r\n\r\n\t\t\t\tt.onExecCommand.add(function(ed, cmd) {\r\n\t\t\t\t\tif (cmd === 'CreateLink')\r\n\t\t\t\t\t\tfixLinks(ed);\r\n\t\t\t\t});\r\n\r\n\t\t\t\tt.onSetContent.add(t.selection.onSetContent.add(fixLinks));\r\n\t\t\t}\r\n\r\n\t\t\tt.load({initial : true, format : 'html'});\r\n\t\t\tt.startContent = t.getContent({format : 'raw'});\r\n\t\t\tt.undoManager.add();\r\n\t\t\tt.initialized = true;\r\n\r\n\t\t\tt.onInit.dispatch(t);\r\n\t\t\tt.execCallback('setupcontent_callback', t.id, t.getBody(), t.getDoc());\r\n\t\t\tt.execCallback('init_instance_callback', t);\r\n\t\t\tt.focus(true);\r\n\t\t\tt.nodeChanged({initial : 1});\r\n\r\n\t\t\t// Load specified content CSS last\r\n\t\t\teach(t.contentCSS, function(u) {\r\n\t\t\t\tt.dom.loadCSS(u);\r\n\t\t\t});\r\n\r\n\t\t\t// Handle auto focus\r\n\t\t\tif (s.auto_focus) {\r\n\t\t\t\tsetTimeout(function () {\r\n\t\t\t\t\tvar ed = tinymce.get(s.auto_focus);\r\n\r\n\t\t\t\t\ted.selection.select(ed.getBody(), 1);\r\n\t\t\t\t\ted.selection.collapse(1);\r\n\t\t\t\t\ted.getBody().focus();\r\n\t\t\t\t\ted.getWin().focus();\r\n\t\t\t\t}, 100);\r\n\t\t\t}\r\n\r\n\t\t\te = null;\r\n\t\t},\r\n\r\n\r\n\t\tfocus : function(sf) {\r\n\t\t\tvar oed, t = this, selection = t.selection, ce = t.settings.content_editable, ieRng, controlElm, doc = t.getDoc();\r\n\r\n\t\t\tif (!sf) {\r\n\t\t\t\t// Get selected control element\r\n\t\t\t\tieRng = selection.getRng();\r\n\t\t\t\tif (ieRng.item) {\r\n\t\t\t\t\tcontrolElm = ieRng.item(0);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tt._refreshContentEditable();\r\n\t\t\t\tselection.normalize();\r\n\r\n\t\t\t\t// Is not content editable\r\n\t\t\t\tif (!ce)\r\n\t\t\t\t\tt.getWin().focus();\r\n\r\n\t\t\t\t// Focus the body as well since it's contentEditable\r\n\t\t\t\tif (tinymce.isGecko) {\r\n\t\t\t\t\tt.getBody().focus();\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Restore selected control element\r\n\t\t\t\t// This is needed when for example an image is selected within a\r\n\t\t\t\t// layer a call to focus will then remove the control selection\r\n\t\t\t\tif (controlElm && controlElm.ownerDocument == doc) {\r\n\t\t\t\t\tieRng = doc.body.createControlRange();\r\n\t\t\t\t\tieRng.addElement(controlElm);\r\n\t\t\t\t\tieRng.select();\r\n\t\t\t\t}\r\n\r\n\t\t\t}\r\n\r\n\t\t\tif (tinymce.activeEditor != t) {\r\n\t\t\t\tif ((oed = tinymce.activeEditor) != null)\r\n\t\t\t\t\toed.onDeactivate.dispatch(oed, t);\r\n\r\n\t\t\t\tt.onActivate.dispatch(t, oed);\r\n\t\t\t}\r\n\r\n\t\t\ttinymce._setActive(t);\r\n\t\t},\r\n\r\n\t\texecCallback : function(n) {\r\n\t\t\tvar t = this, f = t.settings[n], s;\r\n\r\n\t\t\tif (!f)\r\n\t\t\t\treturn;\r\n\r\n\t\t\t// Look through lookup\r\n\t\t\tif (t.callbackLookup && (s = t.callbackLookup[n])) {\r\n\t\t\t\tf = s.func;\r\n\t\t\t\ts = s.scope;\r\n\t\t\t}\r\n\r\n\t\t\tif (is(f, 'string')) {\r\n\t\t\t\ts = f.replace(/\\.\\w+$/, '');\r\n\t\t\t\ts = s ? tinymce.resolve(s) : 0;\r\n\t\t\t\tf = tinymce.resolve(f);\r\n\t\t\t\tt.callbackLookup = t.callbackLookup || {};\r\n\t\t\t\tt.callbackLookup[n] = {func : f, scope : s};\r\n\t\t\t}\r\n\r\n\t\t\treturn f.apply(s || t, Array.prototype.slice.call(arguments, 1));\r\n\t\t},\r\n\r\n\t\ttranslate : function(s) {\r\n\t\t\tvar c = this.settings.language || 'en', i18n = tinymce.i18n;\r\n\r\n\t\t\tif (!s)\r\n\t\t\t\treturn '';\r\n\r\n\t\t\treturn i18n[c + '.' + s] || s.replace(/{\\#([^}]+)\\}/g, function(a, b) {\r\n\t\t\t\treturn i18n[c + '.' + b] || '{#' + b + '}';\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tgetLang : function(n, dv) {\r\n\t\t\treturn tinymce.i18n[(this.settings.language || 'en') + '.' + n] || (is(dv) ? dv : '{#' + n + '}');\r\n\t\t},\r\n\r\n\t\tgetParam : function(n, dv, ty) {\r\n\t\t\tvar tr = tinymce.trim, v = is(this.settings[n]) ? this.settings[n] : dv, o;\r\n\r\n\t\t\tif (ty === 'hash') {\r\n\t\t\t\to = {};\r\n\r\n\t\t\t\tif (is(v, 'string')) {\r\n\t\t\t\t\teach(v.indexOf('=') > 0 ? v.split(/[;,](?![^=;,]*(?:[;,]|$))/) : v.split(','), function(v) {\r\n\t\t\t\t\t\tv = v.split('=');\r\n\r\n\t\t\t\t\t\tif (v.length > 1)\r\n\t\t\t\t\t\t\to[tr(v[0])] = tr(v[1]);\r\n\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\to[tr(v[0])] = tr(v);\r\n\t\t\t\t\t});\r\n\t\t\t\t} else\r\n\t\t\t\t\to = v;\r\n\r\n\t\t\t\treturn o;\r\n\t\t\t}\r\n\r\n\t\t\treturn v;\r\n\t\t},\r\n\r\n\t\tnodeChanged : function(o) {\r\n\t\t\tvar t = this, s = t.selection, n = s.getStart() || t.getBody();\r\n\r\n\t\t\t// Fix for bug #1896577 it seems that this can not be fired while the editor is loading\r\n\t\t\tif (t.initialized) {\r\n\t\t\t\to = o || {};\r\n\t\t\t\tn = isIE && n.ownerDocument != t.getDoc() ? t.getBody() : n; // Fix for IE initial state\r\n\r\n\t\t\t\t// Get parents and add them to object\r\n\t\t\t\to.parents = [];\r\n\t\t\t\tt.dom.getParent(n, function(node) {\r\n\t\t\t\t\tif (node.nodeName == 'BODY')\r\n\t\t\t\t\t\treturn true;\r\n\r\n\t\t\t\t\to.parents.push(node);\r\n\t\t\t\t});\r\n\r\n\t\t\t\tt.onNodeChange.dispatch(\r\n\t\t\t\t\tt,\r\n\t\t\t\t\to ? o.controlManager || t.controlManager : t.controlManager,\r\n\t\t\t\t\tn,\r\n\t\t\t\t\ts.isCollapsed(),\r\n\t\t\t\t\to\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\taddButton : function(n, s) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tt.buttons = t.buttons || {};\r\n\t\t\tt.buttons[n] = s;\r\n\t\t},\r\n\r\n\t\taddCommand : function(name, callback, scope) {\r\n\t\t\tthis.execCommands[name] = {func : callback, scope : scope || this};\r\n\t\t},\r\n\r\n\t\taddQueryStateHandler : function(name, callback, scope) {\r\n\t\t\tthis.queryStateCommands[name] = {func : callback, scope : scope || this};\r\n\t\t},\r\n\r\n\t\taddQueryValueHandler : function(name, callback, scope) {\r\n\t\t\tthis.queryValueCommands[name] = {func : callback, scope : scope || this};\r\n\t\t},\r\n\r\n\t\taddShortcut : function(pa, desc, cmd_func, sc) {\r\n\t\t\tvar t = this, c;\r\n\r\n\t\t\tif (!t.settings.custom_shortcuts)\r\n\t\t\t\treturn false;\r\n\r\n\t\t\tt.shortcuts = t.shortcuts || {};\r\n\r\n\t\t\tif (is(cmd_func, 'string')) {\r\n\t\t\t\tc = cmd_func;\r\n\r\n\t\t\t\tcmd_func = function() {\r\n\t\t\t\t\tt.execCommand(c, false, null);\r\n\t\t\t\t};\r\n\t\t\t}\r\n\r\n\t\t\tif (is(cmd_func, 'object')) {\r\n\t\t\t\tc = cmd_func;\r\n\r\n\t\t\t\tcmd_func = function() {\r\n\t\t\t\t\tt.execCommand(c[0], c[1], c[2]);\r\n\t\t\t\t};\r\n\t\t\t}\r\n\r\n\t\t\teach(explode(pa), function(pa) {\r\n\t\t\t\tvar o = {\r\n\t\t\t\t\tfunc : cmd_func,\r\n\t\t\t\t\tscope : sc || this,\r\n\t\t\t\t\tdesc : desc,\r\n\t\t\t\t\talt : false,\r\n\t\t\t\t\tctrl : false,\r\n\t\t\t\t\tshift : false\r\n\t\t\t\t};\r\n\r\n\t\t\t\teach(explode(pa, '+'), function(v) {\r\n\t\t\t\t\tswitch (v) {\r\n\t\t\t\t\t\tcase 'alt':\r\n\t\t\t\t\t\tcase 'ctrl':\r\n\t\t\t\t\t\tcase 'shift':\r\n\t\t\t\t\t\t\to[v] = true;\r\n\t\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\t\tdefault:\r\n\t\t\t\t\t\t\to.charCode = v.charCodeAt(0);\r\n\t\t\t\t\t\t\to.keyCode = v.toUpperCase().charCodeAt(0);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\tt.shortcuts[(o.ctrl ? 'ctrl' : '') + ',' + (o.alt ? 'alt' : '') + ',' + (o.shift ? 'shift' : '') + ',' + o.keyCode] = o;\r\n\t\t\t});\r\n\r\n\t\t\treturn true;\r\n\t\t},\r\n\r\n\t\texecCommand : function(cmd, ui, val, a) {\r\n\t\t\tvar t = this, s = 0, o, st;\r\n\r\n\t\t\tif (!/^(mceAddUndoLevel|mceEndUndoLevel|mceBeginUndoLevel|mceRepaint|SelectAll)$/.test(cmd) && (!a || !a.skip_focus))\r\n\t\t\t\tt.focus();\r\n\r\n\t\t\to = {};\r\n\t\t\tt.onBeforeExecCommand.dispatch(t, cmd, ui, val, o);\r\n\t\t\tif (o.terminate)\r\n\t\t\t\treturn false;\r\n\r\n\t\t\t// Command callback\r\n\t\t\tif (t.execCallback('execcommand_callback', t.id, t.selection.getNode(), cmd, ui, val)) {\r\n\t\t\t\tt.onExecCommand.dispatch(t, cmd, ui, val, a);\r\n\t\t\t\treturn true;\r\n\t\t\t}\r\n\r\n\t\t\t// Registred commands\r\n\t\t\tif (o = t.execCommands[cmd]) {\r\n\t\t\t\tst = o.func.call(o.scope, ui, val);\r\n\r\n\t\t\t\t// Fall through on true\r\n\t\t\t\tif (st !== true) {\r\n\t\t\t\t\tt.onExecCommand.dispatch(t, cmd, ui, val, a);\r\n\t\t\t\t\treturn st;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Plugin commands\r\n\t\t\teach(t.plugins, function(p) {\r\n\t\t\t\tif (p.execCommand && p.execCommand(cmd, ui, val)) {\r\n\t\t\t\t\tt.onExecCommand.dispatch(t, cmd, ui, val, a);\r\n\t\t\t\t\ts = 1;\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tif (s)\r\n\t\t\t\treturn true;\r\n\r\n\t\t\t// Theme commands\r\n\t\t\tif (t.theme && t.theme.execCommand && t.theme.execCommand(cmd, ui, val)) {\r\n\t\t\t\tt.onExecCommand.dispatch(t, cmd, ui, val, a);\r\n\t\t\t\treturn true;\r\n\t\t\t}\r\n\r\n\t\t\t// Editor commands\r\n\t\t\tif (t.editorCommands.execCommand(cmd, ui, val)) {\r\n\t\t\t\tt.onExecCommand.dispatch(t, cmd, ui, val, a);\r\n\t\t\t\treturn true;\r\n\t\t\t}\r\n\r\n\t\t\t// Browser commands\r\n\t\t\tt.getDoc().execCommand(cmd, ui, val);\r\n\t\t\tt.onExecCommand.dispatch(t, cmd, ui, val, a);\r\n\t\t},\r\n\r\n\t\tqueryCommandState : function(cmd) {\r\n\t\t\tvar t = this, o, s;\r\n\r\n\t\t\t// Is hidden then return undefined\r\n\t\t\tif (t._isHidden())\r\n\t\t\t\treturn;\r\n\r\n\t\t\t// Registred commands\r\n\t\t\tif (o = t.queryStateCommands[cmd]) {\r\n\t\t\t\ts = o.func.call(o.scope);\r\n\r\n\t\t\t\t// Fall though on true\r\n\t\t\t\tif (s !== true)\r\n\t\t\t\t\treturn s;\r\n\t\t\t}\r\n\r\n\t\t\t// Registred commands\r\n\t\t\to = t.editorCommands.queryCommandState(cmd);\r\n\t\t\tif (o !== -1)\r\n\t\t\t\treturn o;\r\n\r\n\t\t\t// Browser commands\r\n\t\t\ttry {\r\n\t\t\t\treturn this.getDoc().queryCommandState(cmd);\r\n\t\t\t} catch (ex) {\r\n\t\t\t\t// Fails sometimes see bug: 1896577\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tqueryCommandValue : function(c) {\r\n\t\t\tvar t = this, o, s;\r\n\r\n\t\t\t// Is hidden then return undefined\r\n\t\t\tif (t._isHidden())\r\n\t\t\t\treturn;\r\n\r\n\t\t\t// Registred commands\r\n\t\t\tif (o = t.queryValueCommands[c]) {\r\n\t\t\t\ts = o.func.call(o.scope);\r\n\r\n\t\t\t\t// Fall though on true\r\n\t\t\t\tif (s !== true)\r\n\t\t\t\t\treturn s;\r\n\t\t\t}\r\n\r\n\t\t\t// Registred commands\r\n\t\t\to = t.editorCommands.queryCommandValue(c);\r\n\t\t\tif (is(o))\r\n\t\t\t\treturn o;\r\n\r\n\t\t\t// Browser commands\r\n\t\t\ttry {\r\n\t\t\t\treturn this.getDoc().queryCommandValue(c);\r\n\t\t\t} catch (ex) {\r\n\t\t\t\t// Fails sometimes see bug: 1896577\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tshow : function() {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tDOM.show(t.getContainer());\r\n\t\t\tDOM.hide(t.id);\r\n\t\t\tt.load();\r\n\t\t},\r\n\r\n\t\thide : function() {\r\n\t\t\tvar t = this, d = t.getDoc();\r\n\r\n\t\t\t// Fixed bug where IE has a blinking cursor left from the editor\r\n\t\t\tif (isIE && d)\r\n\t\t\t\td.execCommand('SelectAll');\r\n\r\n\t\t\t// We must save before we hide so Safari doesn't crash\r\n\t\t\tt.save();\r\n\t\t\tDOM.hide(t.getContainer());\r\n\t\t\tDOM.setStyle(t.id, 'display', t.orgDisplay);\r\n\t\t},\r\n\r\n\t\tisHidden : function() {\r\n\t\t\treturn !DOM.isHidden(this.id);\r\n\t\t},\r\n\r\n\t\tsetProgressState : function(b, ti, o) {\r\n\t\t\tthis.onSetProgressState.dispatch(this, b, ti, o);\r\n\r\n\t\t\treturn b;\r\n\t\t},\r\n\r\n\t\tload : function(o) {\r\n\t\t\tvar t = this, e = t.getElement(), h;\r\n\r\n\t\t\tif (e) {\r\n\t\t\t\to = o || {};\r\n\t\t\t\to.load = true;\r\n\r\n\t\t\t\t// Double encode existing entities in the value\r\n\t\t\t\th = t.setContent(is(e.value) ? e.value : e.innerHTML, o);\r\n\t\t\t\to.element = e;\r\n\r\n\t\t\t\tif (!o.no_events)\r\n\t\t\t\t\tt.onLoadContent.dispatch(t, o);\r\n\r\n\t\t\t\to.element = e = null;\r\n\r\n\t\t\t\treturn h;\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tsave : function(o) {\r\n\t\t\tvar t = this, e = t.getElement(), h, f;\r\n\r\n\t\t\tif (!e || !t.initialized)\r\n\t\t\t\treturn;\r\n\r\n\t\t\to = o || {};\r\n\t\t\to.save = true;\r\n\r\n\t\t\t// Add undo level will trigger onchange event\r\n\t\t\tif (!o.no_events) {\r\n\t\t\t\tt.undoManager.typing = false;\r\n\t\t\t\tt.undoManager.add();\r\n\t\t\t}\r\n\r\n\t\t\to.element = e;\r\n\t\t\th = o.content = t.getContent(o);\r\n\r\n\t\t\tif (!o.no_events)\r\n\t\t\t\tt.onSaveContent.dispatch(t, o);\r\n\r\n\t\t\th = o.content;\r\n\r\n\t\t\tif (!/TEXTAREA|INPUT/i.test(e.nodeName)) {\r\n\t\t\t\te.innerHTML = h;\r\n\r\n\t\t\t\t// Update hidden form element\r\n\t\t\t\tif (f = DOM.getParent(t.id, 'form')) {\r\n\t\t\t\t\teach(f.elements, function(e) {\r\n\t\t\t\t\t\tif (e.name == t.id) {\r\n\t\t\t\t\t\t\te.value = h;\r\n\t\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t} else\r\n\t\t\t\te.value = h;\r\n\r\n\t\t\to.element = e = null;\r\n\r\n\t\t\treturn h;\r\n\t\t},\r\n\r\n\t\tsetContent : function(content, args) {\r\n\t\t\tvar self = this, rootNode, body = self.getBody(), forcedRootBlockName;\r\n\r\n\t\t\t// Setup args object\r\n\t\t\targs = args || {};\r\n\t\t\targs.format = args.format || 'html';\r\n\t\t\targs.set = true;\r\n\t\t\targs.content = content;\r\n\r\n\t\t\t// Do preprocessing\r\n\t\t\tif (!args.no_events)\r\n\t\t\t\tself.onBeforeSetContent.dispatch(self, args);\r\n\r\n\t\t\tcontent = args.content;\r\n\r\n\t\t\t// Padd empty content in Gecko and Safari. Commands will otherwise fail on the content\r\n\t\t\t// It will also be impossible to place the caret in the editor unless there is a BR element present\r\n\t\t\tif (!tinymce.isIE && (content.length === 0 || /^\\s+$/.test(content))) {\r\n\t\t\t\tforcedRootBlockName = self.settings.forced_root_block;\r\n\t\t\t\tif (forcedRootBlockName)\r\n\t\t\t\t\tcontent = '<' + forcedRootBlockName + '><br data-mce-bogus=\"1\"></' + forcedRootBlockName + '>';\r\n\t\t\t\telse\r\n\t\t\t\t\tcontent = '<br data-mce-bogus=\"1\">';\r\n\r\n\t\t\t\tbody.innerHTML = content;\r\n\t\t\t\tself.selection.select(body, true);\r\n\t\t\t\tself.selection.collapse(true);\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\t// Parse and serialize the html\r\n\t\t\tif (args.format !== 'raw') {\r\n\t\t\t\tcontent = new tinymce.html.Serializer({}, self.schema).serialize(\r\n\t\t\t\t\tself.parser.parse(content)\r\n\t\t\t\t);\r\n\t\t\t}\r\n\r\n\t\t\t// Set the new cleaned contents to the editor\r\n\t\t\targs.content = tinymce.trim(content);\r\n\t\t\tself.dom.setHTML(body, args.content);\r\n\r\n\t\t\t// Do post processing\r\n\t\t\tif (!args.no_events)\r\n\t\t\t\tself.onSetContent.dispatch(self, args);\r\n\r\n\t\t\tself.selection.normalize();\r\n\r\n\t\t\treturn args.content;\r\n\t\t},\r\n\r\n\t\tgetContent : function(args) {\r\n\t\t\tvar self = this, content;\r\n\r\n\t\t\t// Setup args object\r\n\t\t\targs = args || {};\r\n\t\t\targs.format = args.format || 'html';\r\n\t\t\targs.get = true;\r\n\r\n\t\t\t// Do preprocessing\r\n\t\t\tif (!args.no_events)\r\n\t\t\t\tself.onBeforeGetContent.dispatch(self, args);\r\n\r\n\t\t\t// Get raw contents or by default the cleaned contents\r\n\t\t\tif (args.format == 'raw')\r\n\t\t\t\tcontent = self.getBody().innerHTML;\r\n\t\t\telse\r\n\t\t\t\tcontent = self.serializer.serialize(self.getBody(), args);\r\n\r\n\t\t\targs.content = tinymce.trim(content);\r\n\r\n\t\t\t// Do post processing\r\n\t\t\tif (!args.no_events)\r\n\t\t\t\tself.onGetContent.dispatch(self, args);\r\n\r\n\t\t\treturn args.content;\r\n\t\t},\r\n\r\n\t\tisDirty : function() {\r\n\t\t\tvar self = this;\r\n\r\n\t\t\treturn tinymce.trim(self.startContent) != tinymce.trim(self.getContent({format : 'raw', no_events : 1})) && !self.isNotDirty;\r\n\t\t},\r\n\r\n\t\tgetContainer : function() {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tif (!t.container)\r\n\t\t\t\tt.container = DOM.get(t.editorContainer || t.id + '_parent');\r\n\r\n\t\t\treturn t.container;\r\n\t\t},\r\n\r\n\t\tgetContentAreaContainer : function() {\r\n\t\t\treturn this.contentAreaContainer;\r\n\t\t},\r\n\r\n\t\tgetElement : function() {\r\n\t\t\treturn DOM.get(this.settings.content_element || this.id);\r\n\t\t},\r\n\r\n\t\tgetWin : function() {\r\n\t\t\tvar t = this, e;\r\n\r\n\t\t\tif (!t.contentWindow) {\r\n\t\t\t\te = DOM.get(t.id + \"_ifr\");\r\n\r\n\t\t\t\tif (e)\r\n\t\t\t\t\tt.contentWindow = e.contentWindow;\r\n\t\t\t}\r\n\r\n\t\t\treturn t.contentWindow;\r\n\t\t},\r\n\r\n\t\tgetDoc : function() {\r\n\t\t\tvar t = this, w;\r\n\r\n\t\t\tif (!t.contentDocument) {\r\n\t\t\t\tw = t.getWin();\r\n\r\n\t\t\t\tif (w)\r\n\t\t\t\t\tt.contentDocument = w.document;\r\n\t\t\t}\r\n\r\n\t\t\treturn t.contentDocument;\r\n\t\t},\r\n\r\n\t\tgetBody : function() {\r\n\t\t\treturn this.bodyElement || this.getDoc().body;\r\n\t\t},\r\n\r\n\t\tconvertURL : function(u, n, e) {\r\n\t\t\tvar t = this, s = t.settings;\r\n\r\n\t\t\t// Use callback instead\r\n\t\t\tif (s.urlconverter_callback)\r\n\t\t\t\treturn t.execCallback('urlconverter_callback', u, e, true, n);\r\n\r\n\t\t\t// Don't convert link href since thats the CSS files that gets loaded into the editor also skip local file URLs\r\n\t\t\tif (!s.convert_urls || (e && e.nodeName == 'LINK') || u.indexOf('file:') === 0)\r\n\t\t\t\treturn u;\r\n\r\n\t\t\t// Convert to relative\r\n\t\t\tif (s.relative_urls)\r\n\t\t\t\treturn t.documentBaseURI.toRelative(u);\r\n\r\n\t\t\t// Convert to absolute\r\n\t\t\tu = t.documentBaseURI.toAbsolute(u, s.remove_script_host);\r\n\r\n\t\t\treturn u;\r\n\t\t},\r\n\r\n\t\taddVisual : function(e) {\r\n\t\t\tvar t = this, s = t.settings;\r\n\r\n\t\t\te = e || t.getBody();\r\n\r\n\t\t\tif (!is(t.hasVisual))\r\n\t\t\t\tt.hasVisual = s.visual;\r\n\r\n\t\t\teach(t.dom.select('table,a', e), function(e) {\r\n\t\t\t\tvar v;\r\n\r\n\t\t\t\tswitch (e.nodeName) {\r\n\t\t\t\t\tcase 'TABLE':\r\n\t\t\t\t\t\tv = t.dom.getAttrib(e, 'border');\r\n\r\n\t\t\t\t\t\tif (!v || v == '0') {\r\n\t\t\t\t\t\t\tif (t.hasVisual)\r\n\t\t\t\t\t\t\t\tt.dom.addClass(e, s.visual_table_class);\r\n\t\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\t\tt.dom.removeClass(e, s.visual_table_class);\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\tcase 'A':\r\n\t\t\t\t\t\tv = t.dom.getAttrib(e, 'name');\r\n\r\n\t\t\t\t\t\tif (v) {\r\n\t\t\t\t\t\t\tif (t.hasVisual)\r\n\t\t\t\t\t\t\t\tt.dom.addClass(e, 'mceItemAnchor');\r\n\t\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\t\tt.dom.removeClass(e, 'mceItemAnchor');\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tt.onVisualAid.dispatch(t, e, t.hasVisual);\r\n\t\t},\r\n\r\n\t\tremove : function() {\r\n\t\t\tvar t = this, e = t.getContainer();\r\n\r\n\t\t\tt.removed = 1; // Cancels post remove event execution\r\n\t\t\tt.hide();\r\n\r\n\t\t\tt.execCallback('remove_instance_callback', t);\r\n\t\t\tt.onRemove.dispatch(t);\r\n\r\n\t\t\t// Clear all execCommand listeners this is required to avoid errors if the editor was removed inside another command\r\n\t\t\tt.onExecCommand.listeners = [];\r\n\r\n\t\t\ttinymce.remove(t);\r\n\t\t\tDOM.remove(e);\r\n\t\t},\r\n\r\n\t\tdestroy : function(s) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\t// One time is enough\r\n\t\t\tif (t.destroyed)\r\n\t\t\t\treturn;\r\n\r\n\t\t\tif (!s) {\r\n\t\t\t\ttinymce.removeUnload(t.destroy);\r\n\t\t\t\ttinyMCE.onBeforeUnload.remove(t._beforeUnload);\r\n\r\n\t\t\t\t// Manual destroy\r\n\t\t\t\tif (t.theme && t.theme.destroy)\r\n\t\t\t\t\tt.theme.destroy();\r\n\r\n\t\t\t\t// Destroy controls, selection and dom\r\n\t\t\t\tt.controlManager.destroy();\r\n\t\t\t\tt.selection.destroy();\r\n\t\t\t\tt.dom.destroy();\r\n\r\n\t\t\t\t// Remove all events\r\n\r\n\t\t\t\t// Don't clear the window or document if content editable\r\n\t\t\t\t// is enabled since other instances might still be present\r\n\t\t\t\tif (!t.settings.content_editable) {\r\n\t\t\t\t\tEvent.clear(t.getWin());\r\n\t\t\t\t\tEvent.clear(t.getDoc());\r\n\t\t\t\t}\r\n\r\n\t\t\t\tEvent.clear(t.getBody());\r\n\t\t\t\tEvent.clear(t.formElement);\r\n\t\t\t}\r\n\r\n\t\t\tif (t.formElement) {\r\n\t\t\t\tt.formElement.submit = t.formElement._mceOldSubmit;\r\n\t\t\t\tt.formElement._mceOldSubmit = null;\r\n\t\t\t}\r\n\r\n\t\t\tt.contentAreaContainer = t.formElement = t.container = t.settings.content_element = t.bodyElement = t.contentDocument = t.contentWindow = null;\r\n\r\n\t\t\tif (t.selection)\r\n\t\t\t\tt.selection = t.selection.win = t.selection.dom = t.selection.dom.doc = null;\r\n\r\n\t\t\tt.destroyed = 1;\r\n\t\t},\r\n\r\n\t\t// Internal functions\r\n\r\n\t\t_addEvents : function() {\r\n\t\t\t// 'focus', 'blur', 'dblclick', 'beforedeactivate', submit, reset\r\n\t\t\tvar t = this, i, s = t.settings, dom = t.dom, lo = {\r\n\t\t\t\tmouseup : 'onMouseUp',\r\n\t\t\t\tmousedown : 'onMouseDown',\r\n\t\t\t\tclick : 'onClick',\r\n\t\t\t\tkeyup : 'onKeyUp',\r\n\t\t\t\tkeydown : 'onKeyDown',\r\n\t\t\t\tkeypress : 'onKeyPress',\r\n\t\t\t\tsubmit : 'onSubmit',\r\n\t\t\t\treset : 'onReset',\r\n\t\t\t\tcontextmenu : 'onContextMenu',\r\n\t\t\t\tdblclick : 'onDblClick',\r\n\t\t\t\tpaste : 'onPaste' // Doesn't work in all browsers yet\r\n\t\t\t};\r\n\r\n\t\t\tfunction eventHandler(e, o) {\r\n\t\t\t\tvar ty = e.type;\r\n\r\n\t\t\t\t// Don't fire events when it's removed\r\n\t\t\t\tif (t.removed)\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\t// Generic event handler\r\n\t\t\t\tif (t.onEvent.dispatch(t, e, o) !== false) {\r\n\t\t\t\t\t// Specific event handler\r\n\t\t\t\t\tt[lo[e.fakeType || e.type]].dispatch(t, e, o);\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\t\t\t// Add DOM events\r\n\t\t\teach(lo, function(v, k) {\r\n\t\t\t\tswitch (k) {\r\n\t\t\t\t\tcase 'contextmenu':\r\n\t\t\t\t\t\tdom.bind(t.getDoc(), k, eventHandler);\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase 'paste':\r\n\t\t\t\t\t\tdom.bind(t.getBody(), k, function(e) {\r\n\t\t\t\t\t\t\teventHandler(e);\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tcase 'submit':\r\n\t\t\t\t\tcase 'reset':\r\n\t\t\t\t\t\tdom.bind(t.getElement().form || DOM.getParent(t.id, 'form'), k, eventHandler);\r\n\t\t\t\t\t\tbreak;\r\n\r\n\t\t\t\t\tdefault:\r\n\t\t\t\t\t\tdom.bind(s.content_editable ? t.getBody() : t.getDoc(), k, eventHandler);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tdom.bind(s.content_editable ? t.getBody() : (isGecko ? t.getDoc() : t.getWin()), 'focus', function(e) {\r\n\t\t\t\tt.focus(true);\r\n\t\t\t});\r\n\r\n\r\n\t\t\t// Fixes bug where a specified document_base_uri could result in broken images\r\n\t\t\t// This will also fix drag drop of images in Gecko\r\n\t\t\tif (tinymce.isGecko) {\r\n\t\t\t\tdom.bind(t.getDoc(), 'DOMNodeInserted', function(e) {\r\n\t\t\t\t\tvar v;\r\n\r\n\t\t\t\t\te = e.target;\r\n\r\n\t\t\t\t\tif (e.nodeType === 1 && e.nodeName === 'IMG' && (v = e.getAttribute('data-mce-src')))\r\n\t\t\t\t\t\te.src = t.documentBaseURI.toAbsolute(v);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\t// Set various midas options in Gecko\r\n\t\t\tif (isGecko) {\r\n\t\t\t\tfunction setOpts() {\r\n\t\t\t\t\tvar t = this, d = t.getDoc(), s = t.settings;\r\n\r\n\t\t\t\t\tif (isGecko && !s.readonly) {\r\n\t\t\t\t\t\tt._refreshContentEditable();\r\n\r\n\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t// Try new Gecko method\r\n\t\t\t\t\t\t\td.execCommand(\"styleWithCSS\", 0, false);\r\n\t\t\t\t\t\t} catch (ex) {\r\n\t\t\t\t\t\t\t// Use old method\r\n\t\t\t\t\t\t\tif (!t._isHidden())\r\n\t\t\t\t\t\t\t\ttry {d.execCommand(\"useCSS\", 0, true);} catch (ex) {}\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tif (!s.table_inline_editing)\r\n\t\t\t\t\t\t\ttry {d.execCommand('enableInlineTableEditing', false, false);} catch (ex) {}\r\n\r\n\t\t\t\t\t\tif (!s.object_resizing)\r\n\t\t\t\t\t\t\ttry {d.execCommand('enableObjectResizing', false, false);} catch (ex) {}\r\n\t\t\t\t\t}\r\n\t\t\t\t};\r\n\r\n\t\t\t\tt.onBeforeExecCommand.add(setOpts);\r\n\t\t\t\tt.onMouseDown.add(setOpts);\r\n\t\t\t}\r\n\r\n\t\t\t// Add node change handlers\r\n\t\t\tt.onMouseUp.add(t.nodeChanged);\r\n\t\t\t//t.onClick.add(t.nodeChanged);\r\n\t\t\tt.onKeyUp.add(function(ed, e) {\r\n\t\t\t\tvar c = e.keyCode;\r\n\r\n\t\t\t\tif ((c >= 33 && c <= 36) || (c >= 37 && c <= 40) || c == 13 || c == 45 || c == 46 || c == 8 || (tinymce.isMac && (c == 91 || c == 93)) || e.ctrlKey)\r\n\t\t\t\t\tt.nodeChanged();\r\n\t\t\t});\r\n\r\n\r\n\t\t\t// Add block quote deletion handler\r\n\t\t\tt.onKeyDown.add(function(ed, e) {\r\n\t\t\t\t// Was the BACKSPACE key pressed?\r\n\t\t\t\tif (e.keyCode != 8)\r\n\t\t\t\t\treturn;\r\n\r\n\t\t\t\tvar n = ed.selection.getRng().startContainer;\r\n\t\t\t\tvar offset = ed.selection.getRng().startOffset;\r\n\r\n\t\t\t\twhile (n && n.nodeType && n.nodeType != 1 && n.parentNode)\r\n\t\t\t\t\tn = n.parentNode;\r\n\t\t\t\t\t\r\n\t\t\t\t// Is the cursor at the beginning of a blockquote?\r\n\t\t\t\tif (n && n.parentNode && n.parentNode.tagName === 'BLOCKQUOTE' && n.parentNode.firstChild == n && offset == 0) {\r\n\t\t\t\t\t// Remove the blockquote\r\n\t\t\t\t\ted.formatter.toggle('blockquote', null, n.parentNode);\r\n\r\n\t\t\t\t\t// Move the caret to the beginning of n\r\n\t\t\t\t\tvar rng = ed.selection.getRng();\r\n\t\t\t\t\trng.setStart(n, 0);\r\n\t\t\t\t\trng.setEnd(n, 0);\r\n\t\t\t\t\ted.selection.setRng(rng);\r\n\t\t\t\t\ted.selection.collapse(false);\r\n\t\t\t\t}\r\n\t\t\t});\r\n \r\n\r\n\r\n\t\t\t// Add reset handler\r\n\t\t\tt.onReset.add(function() {\r\n\t\t\t\tt.setContent(t.startContent, {format : 'raw'});\r\n\t\t\t});\r\n\r\n\t\t\t// Add shortcuts\r\n\t\t\tif (s.custom_shortcuts) {\r\n\t\t\t\tif (s.custom_undo_redo_keyboard_shortcuts) {\r\n\t\t\t\t\tt.addShortcut('ctrl+z', t.getLang('undo_desc'), 'Undo');\r\n\t\t\t\t\tt.addShortcut('ctrl+y', t.getLang('redo_desc'), 'Redo');\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Add default shortcuts for gecko\r\n\t\t\t\tt.addShortcut('ctrl+b', t.getLang('bold_desc'), 'Bold');\r\n\t\t\t\tt.addShortcut('ctrl+i', t.getLang('italic_desc'), 'Italic');\r\n\t\t\t\tt.addShortcut('ctrl+u', t.getLang('underline_desc'), 'Underline');\r\n\r\n\t\t\t\t// BlockFormat shortcuts keys\r\n\t\t\t\tfor (i=1; i<=6; i++)\r\n\t\t\t\t\tt.addShortcut('ctrl+' + i, '', ['FormatBlock', false, 'h' + i]);\r\n\r\n\t\t\t\tt.addShortcut('ctrl+7', '', ['FormatBlock', false, 'p']);\r\n\t\t\t\tt.addShortcut('ctrl+8', '', ['FormatBlock', false, 'div']);\r\n\t\t\t\tt.addShortcut('ctrl+9', '', ['FormatBlock', false, 'address']);\r\n\r\n\t\t\t\tfunction find(e) {\r\n\t\t\t\t\tvar v = null;\r\n\r\n\t\t\t\t\tif (!e.altKey && !e.ctrlKey && !e.metaKey)\r\n\t\t\t\t\t\treturn v;\r\n\r\n\t\t\t\t\teach(t.shortcuts, function(o) {\r\n\t\t\t\t\t\tif (tinymce.isMac && o.ctrl != e.metaKey)\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\telse if (!tinymce.isMac && o.ctrl != e.ctrlKey)\r\n\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\tif (o.alt != e.altKey)\r\n\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\tif (o.shift != e.shiftKey)\r\n\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\tif (e.keyCode == o.keyCode || (e.charCode && e.charCode == o.charCode)) {\r\n\t\t\t\t\t\t\tv = o;\r\n\t\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\treturn v;\r\n\t\t\t\t};\r\n\r\n\t\t\t\tt.onKeyUp.add(function(ed, e) {\r\n\t\t\t\t\tvar o = find(e);\r\n\r\n\t\t\t\t\tif (o)\r\n\t\t\t\t\t\treturn Event.cancel(e);\r\n\t\t\t\t});\r\n\r\n\t\t\t\tt.onKeyPress.add(function(ed, e) {\r\n\t\t\t\t\tvar o = find(e);\r\n\r\n\t\t\t\t\tif (o)\r\n\t\t\t\t\t\treturn Event.cancel(e);\r\n\t\t\t\t});\r\n\r\n\t\t\t\tt.onKeyDown.add(function(ed, e) {\r\n\t\t\t\t\tvar o = find(e);\r\n\r\n\t\t\t\t\tif (o) {\r\n\t\t\t\t\t\to.func.call(o.scope);\r\n\t\t\t\t\t\treturn Event.cancel(e);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tif (tinymce.isIE) {\r\n\t\t\t\t// Fix so resize will only update the width and height attributes not the styles of an image\r\n\t\t\t\t// It will also block mceItemNoResize items\r\n\t\t\t\tdom.bind(t.getDoc(), 'controlselect', function(e) {\r\n\t\t\t\t\tvar re = t.resizeInfo, cb;\r\n\r\n\t\t\t\t\te = e.target;\r\n\r\n\t\t\t\t\t// Don't do this action for non image elements\r\n\t\t\t\t\tif (e.nodeName !== 'IMG')\r\n\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\tif (re)\r\n\t\t\t\t\t\tdom.unbind(re.node, re.ev, re.cb);\r\n\r\n\t\t\t\t\tif (!dom.hasClass(e, 'mceItemNoResize')) {\r\n\t\t\t\t\t\tev = 'resizeend';\r\n\t\t\t\t\t\tcb = dom.bind(e, ev, function(e) {\r\n\t\t\t\t\t\t\tvar v;\r\n\r\n\t\t\t\t\t\t\te = e.target;\r\n\r\n\t\t\t\t\t\t\tif (v = dom.getStyle(e, 'width')) {\r\n\t\t\t\t\t\t\t\tdom.setAttrib(e, 'width', v.replace(/[^0-9%]+/g, ''));\r\n\t\t\t\t\t\t\t\tdom.setStyle(e, 'width', '');\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tif (v = dom.getStyle(e, 'height')) {\r\n\t\t\t\t\t\t\t\tdom.setAttrib(e, 'height', v.replace(/[^0-9%]+/g, ''));\r\n\t\t\t\t\t\t\t\tdom.setStyle(e, 'height', '');\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tev = 'resizestart';\r\n\t\t\t\t\t\tcb = dom.bind(e, 'resizestart', Event.cancel, Event);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tre = t.resizeInfo = {\r\n\t\t\t\t\t\tnode : e,\r\n\t\t\t\t\t\tev : ev,\r\n\t\t\t\t\t\tcb : cb\r\n\t\t\t\t\t};\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tif (tinymce.isOpera) {\r\n\t\t\t\tt.onClick.add(function(ed, e) {\r\n\t\t\t\t\tEvent.prevent(e);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\t// Add custom undo/redo handlers\r\n\t\t\tif (s.custom_undo_redo) {\r\n\t\t\t\tfunction addUndo() {\r\n\t\t\t\t\tt.undoManager.typing = false;\r\n\t\t\t\t\tt.undoManager.add();\r\n\t\t\t\t};\r\n\r\n\t\t\t\tdom.bind(t.getDoc(), 'focusout', function(e) {\r\n\t\t\t\t\tif (!t.removed && t.undoManager.typing)\r\n\t\t\t\t\t\taddUndo();\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// Add undo level when contents is drag/dropped within the editor\r\n\t\t\t\tt.dom.bind(t.dom.getRoot(), 'dragend', function(e) {\r\n\t\t\t\t\taddUndo();\r\n\t\t\t\t});\r\n\r\n\t\t\t\tt.onKeyUp.add(function(ed, e) {\r\n\t\t\t\t\tvar keyCode = e.keyCode;\r\n\r\n\t\t\t\t\tif ((keyCode >= 33 && keyCode <= 36) || (keyCode >= 37 && keyCode <= 40) || keyCode == 13 || keyCode == 45 || e.ctrlKey)\r\n\t\t\t\t\t\taddUndo();\r\n\t\t\t\t});\r\n\r\n\t\t\t\tt.onKeyDown.add(function(ed, e) {\r\n\t\t\t\t\tvar keyCode = e.keyCode, sel;\r\n\r\n\t\t\t\t\tif (keyCode == 8) {\r\n\t\t\t\t\t\tsel = t.getDoc().selection;\r\n\r\n\t\t\t\t\t\t// Fix IE control + backspace browser bug\r\n\t\t\t\t\t\tif (sel && sel.createRange && sel.createRange().item) {\r\n\t\t\t\t\t\t\tt.undoManager.beforeChange();\r\n\t\t\t\t\t\t\ted.dom.remove(sel.createRange().item(0));\r\n\t\t\t\t\t\t\taddUndo();\r\n\r\n\t\t\t\t\t\t\treturn Event.cancel(e);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Is caracter positon keys left,right,up,down,home,end,pgdown,pgup,enter\r\n\t\t\t\t\tif ((keyCode >= 33 && keyCode <= 36) || (keyCode >= 37 && keyCode <= 40) || keyCode == 13 || keyCode == 45) {\r\n\t\t\t\t\t\t// Add position before enter key is pressed, used by IE since it still uses the default browser behavior\r\n\t\t\t\t\t\t// Todo: Remove this once we normalize enter behavior on IE\r\n\t\t\t\t\t\tif (tinymce.isIE && keyCode == 13)\r\n\t\t\t\t\t\t\tt.undoManager.beforeChange();\r\n\r\n\t\t\t\t\t\tif (t.undoManager.typing)\r\n\t\t\t\t\t\t\taddUndo();\r\n\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// If key isn't shift,ctrl,alt,capslock,metakey\r\n\t\t\t\t\tif ((keyCode < 16 || keyCode > 20) && keyCode != 224 && keyCode != 91 && !t.undoManager.typing) {\r\n\t\t\t\t\t\tt.undoManager.beforeChange();\r\n\t\t\t\t\t\tt.undoManager.typing = true;\r\n\t\t\t\t\t\tt.undoManager.add();\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\tt.onMouseDown.add(function() {\r\n\t\t\t\t\tif (t.undoManager.typing)\r\n\t\t\t\t\t\taddUndo();\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\t// Fire a nodeChanged when the selection is changed on WebKit this fixes selection issues on iOS5\r\n\t\t\t// It only fires the nodeChange event every 50ms since it would other wise update the UI when you type and it hogs the CPU\r\n\t\t\tif (tinymce.isWebKit) {\r\n\t\t\t\tdom.bind(t.getDoc(), 'selectionchange', function() {\r\n\t\t\t\t\tif (t.selectionTimer) {\r\n\t\t\t\t\t\tclearTimeout(t.selectionTimer);\r\n\t\t\t\t\t\tt.selectionTimer = 0;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tt.selectionTimer = window.setTimeout(function() {\r\n\t\t\t\t\t\tt.nodeChanged();\r\n\t\t\t\t\t}, 50);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\t// Bug fix for FireFox keeping styles from end of selection instead of start.\r\n\t\t\tif (tinymce.isGecko) {\r\n\t\t\t\tfunction getAttributeApplyFunction() {\r\n\t\t\t\t\tvar template = t.dom.getAttribs(t.selection.getStart().cloneNode(false));\r\n\r\n\t\t\t\t\treturn function() {\r\n\t\t\t\t\t\tvar target = t.selection.getStart();\r\n\r\n\t\t\t\t\t\tif (target !== t.getBody()) {\r\n\t\t\t\t\t\t\tt.dom.removeAllAttribs(target);\r\n\r\n\t\t\t\t\t\t\teach(template, function(attr) {\r\n\t\t\t\t\t\t\t\ttarget.setAttributeNode(attr.cloneNode(true));\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t};\r\n\t\t\t\t}\r\n\r\n\t\t\t\tfunction isSelectionAcrossElements() {\r\n\t\t\t\t\tvar s = t.selection;\r\n\r\n\t\t\t\t\treturn !s.isCollapsed() && s.getStart() != s.getEnd();\r\n\t\t\t\t}\r\n\r\n\t\t\t\tt.onKeyPress.add(function(ed, e) {\r\n\t\t\t\t\tvar applyAttributes;\r\n\r\n\t\t\t\t\tif ((e.keyCode == 8 || e.keyCode == 46) && isSelectionAcrossElements()) {\r\n\t\t\t\t\t\tapplyAttributes = getAttributeApplyFunction();\r\n\t\t\t\t\t\tt.getDoc().execCommand('delete', false, null);\r\n\t\t\t\t\t\tapplyAttributes();\r\n\r\n\t\t\t\t\t\treturn Event.cancel(e);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\tt.dom.bind(t.getDoc(), 'cut', function(e) {\r\n\t\t\t\t\tvar applyAttributes;\r\n\r\n\t\t\t\t\tif (isSelectionAcrossElements()) {\r\n\t\t\t\t\t\tapplyAttributes = getAttributeApplyFunction();\r\n\t\t\t\t\t\tt.onKeyUp.addToTop(Event.cancel, Event);\r\n\r\n\t\t\t\t\t\tsetTimeout(function() {\r\n\t\t\t\t\t\t\tapplyAttributes();\r\n\t\t\t\t\t\t\tt.onKeyUp.remove(Event.cancel, Event);\r\n\t\t\t\t\t\t}, 0);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t_refreshContentEditable : function() {\r\n\t\t\tvar self = this, body, parent;\r\n\r\n\t\t\t// Check if the editor was hidden and the re-initalize contentEditable mode by removing and adding the body again\r\n\t\t\tif (self._isHidden()) {\r\n\t\t\t\tbody = self.getBody();\r\n\t\t\t\tparent = body.parentNode;\r\n\r\n\t\t\t\tparent.removeChild(body);\r\n\t\t\t\tparent.appendChild(body);\r\n\r\n\t\t\t\tbody.focus();\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\t_isHidden : function() {\r\n\t\t\tvar s;\r\n\r\n\t\t\tif (!isGecko)\r\n\t\t\t\treturn 0;\r\n\r\n\t\t\t// Weird, wheres that cursor selection?\r\n\t\t\ts = this.selection.getSel();\r\n\t\t\treturn (!s || !s.rangeCount || s.rangeCount == 0);\r\n\t\t}\r\n\t});\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\t// Added for compression purposes\r\n\tvar each = tinymce.each, undefined, TRUE = true, FALSE = false;\r\n\r\n\ttinymce.EditorCommands = function(editor) {\r\n\t\tvar dom = editor.dom,\r\n\t\t\tselection = editor.selection,\r\n\t\t\tcommands = {state: {}, exec : {}, value : {}},\r\n\t\t\tsettings = editor.settings,\r\n\t\t\tformatter = editor.formatter,\r\n\t\t\tbookmark;\r\n\r\n\t\tfunction execCommand(command, ui, value) {\r\n\t\t\tvar func;\r\n\r\n\t\t\tcommand = command.toLowerCase();\r\n\t\t\tif (func = commands.exec[command]) {\r\n\t\t\t\tfunc(command, ui, value);\r\n\t\t\t\treturn TRUE;\r\n\t\t\t}\r\n\r\n\t\t\treturn FALSE;\r\n\t\t};\r\n\r\n\t\tfunction queryCommandState(command) {\r\n\t\t\tvar func;\r\n\r\n\t\t\tcommand = command.toLowerCase();\r\n\t\t\tif (func = commands.state[command])\r\n\t\t\t\treturn func(command);\r\n\r\n\t\t\treturn -1;\r\n\t\t};\r\n\r\n\t\tfunction queryCommandValue(command) {\r\n\t\t\tvar func;\r\n\r\n\t\t\tcommand = command.toLowerCase();\r\n\t\t\tif (func = commands.value[command])\r\n\t\t\t\treturn func(command);\r\n\r\n\t\t\treturn FALSE;\r\n\t\t};\r\n\r\n\t\tfunction addCommands(command_list, type) {\r\n\t\t\ttype = type || 'exec';\r\n\r\n\t\t\teach(command_list, function(callback, command) {\r\n\t\t\t\teach(command.toLowerCase().split(','), function(command) {\r\n\t\t\t\t\tcommands[type][command] = callback;\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\t// Expose public methods\r\n\t\ttinymce.extend(this, {\r\n\t\t\texecCommand : execCommand,\r\n\t\t\tqueryCommandState : queryCommandState,\r\n\t\t\tqueryCommandValue : queryCommandValue,\r\n\t\t\taddCommands : addCommands\r\n\t\t});\r\n\r\n\t\t// Private methods\r\n\r\n\t\tfunction execNativeCommand(command, ui, value) {\r\n\t\t\tif (ui === undefined)\r\n\t\t\t\tui = FALSE;\r\n\r\n\t\t\tif (value === undefined)\r\n\t\t\t\tvalue = null;\r\n\r\n\t\t\treturn editor.getDoc().execCommand(command, ui, value);\r\n\t\t};\r\n\r\n\t\tfunction isFormatMatch(name) {\r\n\t\t\treturn formatter.match(name);\r\n\t\t};\r\n\r\n\t\tfunction toggleFormat(name, value) {\r\n\t\t\tformatter.toggle(name, value ? {value : value} : undefined);\r\n\t\t};\r\n\r\n\t\tfunction storeSelection(type) {\r\n\t\t\tbookmark = selection.getBookmark(type);\r\n\t\t};\r\n\r\n\t\tfunction restoreSelection() {\r\n\t\t\tselection.moveToBookmark(bookmark);\r\n\t\t};\r\n\r\n\t\t// Add execCommand overrides\r\n\t\taddCommands({\r\n\t\t\t// Ignore these, added for compatibility\r\n\t\t\t'mceResetDesignMode,mceBeginUndoLevel' : function() {},\r\n\r\n\t\t\t// Add undo manager logic\r\n\t\t\t'mceEndUndoLevel,mceAddUndoLevel' : function() {\r\n\t\t\t\teditor.undoManager.add();\r\n\t\t\t},\r\n\r\n\t\t\t'Cut,Copy,Paste' : function(command) {\r\n\t\t\t\tvar doc = editor.getDoc(), failed;\r\n\r\n\t\t\t\t// Try executing the native command\r\n\t\t\t\ttry {\r\n\t\t\t\t\texecNativeCommand(command);\r\n\t\t\t\t} catch (ex) {\r\n\t\t\t\t\t// Command failed\r\n\t\t\t\t\tfailed = TRUE;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Present alert message about clipboard access not being available\r\n\t\t\t\tif (failed || !doc.queryCommandSupported(command)) {\r\n\t\t\t\t\tif (tinymce.isGecko) {\r\n\t\t\t\t\t\teditor.windowManager.confirm(editor.getLang('clipboard_msg'), function(state) {\r\n\t\t\t\t\t\t\tif (state)\r\n\t\t\t\t\t\t\t\topen('http://www.mozilla.org/editor/midasdemo/securityprefs.html', '_blank');\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t} else\r\n\t\t\t\t\t\teditor.windowManager.alert(editor.getLang('clipboard_no_support'));\r\n\t\t\t\t}\r\n\t\t\t},\r\n\r\n\t\t\t// Override unlink command\r\n\t\t\tunlink : function(command) {\r\n\t\t\t\tif (selection.isCollapsed())\r\n\t\t\t\t\tselection.select(selection.getNode());\r\n\r\n\t\t\t\texecNativeCommand(command);\r\n\t\t\t\tselection.collapse(FALSE);\r\n\t\t\t},\r\n\r\n\t\t\t// Override justify commands to use the text formatter engine\r\n\t\t\t'JustifyLeft,JustifyCenter,JustifyRight,JustifyFull' : function(command) {\r\n\t\t\t\tvar align = command.substring(7);\r\n\r\n\t\t\t\t// Remove all other alignments first\r\n\t\t\t\teach('left,center,right,full'.split(','), function(name) {\r\n\t\t\t\t\tif (align != name)\r\n\t\t\t\t\t\tformatter.remove('align' + name);\r\n\t\t\t\t});\r\n\r\n\t\t\t\ttoggleFormat('align' + align);\r\n\t\t\t\texecCommand('mceRepaint');\r\n\t\t\t},\r\n\r\n\t\t\t// Override list commands to fix WebKit bug\r\n\t\t\t'InsertUnorderedList,InsertOrderedList' : function(command) {\r\n\t\t\t\tvar listElm, listParent;\r\n\r\n\t\t\t\texecNativeCommand(command);\r\n\r\n\t\t\t\t// WebKit produces lists within block elements so we need to split them\r\n\t\t\t\t// we will replace the native list creation logic to custom logic later on\r\n\t\t\t\t// TODO: Remove this when the list creation logic is removed\r\n\t\t\t\tlistElm = dom.getParent(selection.getNode(), 'ol,ul');\r\n\t\t\t\tif (listElm) {\r\n\t\t\t\t\tlistParent = listElm.parentNode;\r\n\r\n\t\t\t\t\t// If list is within a text block then split that block\r\n\t\t\t\t\tif (/^(H[1-6]|P|ADDRESS|PRE)$/.test(listParent.nodeName)) {\r\n\t\t\t\t\t\tstoreSelection();\r\n\t\t\t\t\t\tdom.split(listParent, listElm);\r\n\t\t\t\t\t\trestoreSelection();\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t},\r\n\r\n\t\t\t// Override commands to use the text formatter engine\r\n\t\t\t'Bold,Italic,Underline,Strikethrough,Superscript,Subscript' : function(command) {\r\n\t\t\t\ttoggleFormat(command);\r\n\t\t\t},\r\n\r\n\t\t\t// Override commands to use the text formatter engine\r\n\t\t\t'ForeColor,HiliteColor,FontName' : function(command, ui, value) {\r\n\t\t\t\ttoggleFormat(command, value);\r\n\t\t\t},\r\n\r\n\t\t\tFontSize : function(command, ui, value) {\r\n\t\t\t\tvar fontClasses, fontSizes;\r\n\r\n\t\t\t\t// Convert font size 1-7 to styles\r\n\t\t\t\tif (value >= 1 && value <= 7) {\r\n\t\t\t\t\tfontSizes = tinymce.explode(settings.font_size_style_values);\r\n\t\t\t\t\tfontClasses = tinymce.explode(settings.font_size_classes);\r\n\r\n\t\t\t\t\tif (fontClasses)\r\n\t\t\t\t\t\tvalue = fontClasses[value - 1] || value;\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\tvalue = fontSizes[value - 1] || value;\r\n\t\t\t\t}\r\n\r\n\t\t\t\ttoggleFormat(command, value);\r\n\t\t\t},\r\n\r\n\t\t\tRemoveFormat : function(command) {\r\n\t\t\t\tformatter.remove(command);\r\n\t\t\t},\r\n\r\n\t\t\tmceBlockQuote : function(command) {\r\n\t\t\t\ttoggleFormat('blockquote');\r\n\t\t\t},\r\n\r\n\t\t\tFormatBlock : function(command, ui, value) {\r\n\t\t\t\treturn toggleFormat(value || 'p');\r\n\t\t\t},\r\n\r\n\t\t\tmceCleanup : function() {\r\n\t\t\t\tvar bookmark = selection.getBookmark();\r\n\r\n\t\t\t\teditor.setContent(editor.getContent({cleanup : TRUE}), {cleanup : TRUE});\r\n\r\n\t\t\t\tselection.moveToBookmark(bookmark);\r\n\t\t\t},\r\n\r\n\t\t\tmceRemoveNode : function(command, ui, value) {\r\n\t\t\t\tvar node = value || selection.getNode();\r\n\r\n\t\t\t\t// Make sure that the body node isn't removed\r\n\t\t\t\tif (node != editor.getBody()) {\r\n\t\t\t\t\tstoreSelection();\r\n\t\t\t\t\teditor.dom.remove(node, TRUE);\r\n\t\t\t\t\trestoreSelection();\r\n\t\t\t\t}\r\n\t\t\t},\r\n\r\n\t\t\tmceSelectNodeDepth : function(command, ui, value) {\r\n\t\t\t\tvar counter = 0;\r\n\r\n\t\t\t\tdom.getParent(selection.getNode(), function(node) {\r\n\t\t\t\t\tif (node.nodeType == 1 && counter++ == value) {\r\n\t\t\t\t\t\tselection.select(node);\r\n\t\t\t\t\t\treturn FALSE;\r\n\t\t\t\t\t}\r\n\t\t\t\t}, editor.getBody());\r\n\t\t\t},\r\n\r\n\t\t\tmceSelectNode : function(command, ui, value) {\r\n\t\t\t\tselection.select(value);\r\n\t\t\t},\r\n\r\n\t\t\tmceInsertContent : function(command, ui, value) {\r\n\t\t\t\tvar parser, serializer, parentNode, rootNode, fragment, args,\r\n\t\t\t\t\tmarker, nodeRect, viewPortRect, rng, node, node2, bookmarkHtml, viewportBodyElement;\r\n\r\n\t\t\t\t// Setup parser and serializer\r\n\t\t\t\tparser = editor.parser;\r\n\t\t\t\tserializer = new tinymce.html.Serializer({}, editor.schema);\r\n\t\t\t\tbookmarkHtml = '<span id=\"mce_marker\" data-mce-type=\"bookmark\">\\uFEFF</span>';\r\n\r\n\t\t\t\t// Run beforeSetContent handlers on the HTML to be inserted\r\n\t\t\t\targs = {content: value, format: 'html'};\r\n\t\t\t\tselection.onBeforeSetContent.dispatch(selection, args);\r\n\t\t\t\tvalue = args.content;\r\n\r\n\t\t\t\t// Add caret at end of contents if it's missing\r\n\t\t\t\tif (value.indexOf('{$caret}') == -1)\r\n\t\t\t\t\tvalue += '{$caret}';\r\n\r\n\t\t\t\t// Replace the caret marker with a span bookmark element\r\n\t\t\t\tvalue = value.replace(/\\{\\$caret\\}/, bookmarkHtml);\r\n\r\n\t\t\t\t// Insert node maker where we will insert the new HTML and get it's parent\r\n\t\t\t\tif (!selection.isCollapsed())\r\n\t\t\t\t\teditor.getDoc().execCommand('Delete', false, null);\r\n\r\n\t\t\t\tparentNode = selection.getNode();\r\n\r\n\t\t\t\t// Parse the fragment within the context of the parent node\r\n\t\t\t\targs = {context : parentNode.nodeName.toLowerCase()};\r\n\t\t\t\tfragment = parser.parse(value, args);\r\n\r\n\t\t\t\t// Move the caret to a more suitable location\r\n\t\t\t\tnode = fragment.lastChild;\r\n\t\t\t\tif (node.attr('id') == 'mce_marker') {\r\n\t\t\t\t\tmarker = node;\r\n\r\n\t\t\t\t\tfor (node = node.prev; node; node = node.walk(true)) {\r\n\t\t\t\t\t\tif (node.type == 3 || !dom.isBlock(node.name)) {\r\n\t\t\t\t\t\t\tnode.parent.insert(marker, node, node.name === 'br');\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// If parser says valid we can insert the contents into that parent\r\n\t\t\t\tif (!args.invalid) {\r\n\t\t\t\t\tvalue = serializer.serialize(fragment);\r\n\r\n\t\t\t\t\t// Check if parent is empty or only has one BR element then set the innerHTML of that parent\r\n\t\t\t\t\tnode = parentNode.firstChild;\r\n\t\t\t\t\tnode2 = parentNode.lastChild;\r\n\t\t\t\t\tif (!node || (node === node2 && node.nodeName === 'BR'))\r\n\t\t\t\t\t\tdom.setHTML(parentNode, value);\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\tselection.setContent(value);\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// If the fragment was invalid within that context then we need\r\n\t\t\t\t\t// to parse and process the parent it's inserted into\r\n\r\n\t\t\t\t\t// Insert bookmark node and get the parent\r\n\t\t\t\t\tselection.setContent(bookmarkHtml);\r\n\t\t\t\t\tparentNode = editor.selection.getNode();\r\n\t\t\t\t\trootNode = editor.getBody();\r\n\r\n\t\t\t\t\t// Opera will return the document node when selection is in root\r\n\t\t\t\t\tif (parentNode.nodeType == 9)\r\n\t\t\t\t\t\tparentNode = node = rootNode;\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\tnode = parentNode;\r\n\r\n\t\t\t\t\t// Find the ancestor just before the root element\r\n\t\t\t\t\twhile (node !== rootNode) {\r\n\t\t\t\t\t\tparentNode = node;\r\n\t\t\t\t\t\tnode = node.parentNode;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Get the outer/inner HTML depending on if we are in the root and parser and serialize that\r\n\t\t\t\t\tvalue = parentNode == rootNode ? rootNode.innerHTML : dom.getOuterHTML(parentNode);\r\n\t\t\t\t\tvalue = serializer.serialize(\r\n\t\t\t\t\t\tparser.parse(\r\n\t\t\t\t\t\t\t// Need to replace by using a function since $ in the contents would otherwise be a problem\r\n\t\t\t\t\t\t\tvalue.replace(/<span (id=\"mce_marker\"|id=mce_marker).+?<\\/span>/i, function() {\r\n\t\t\t\t\t\t\t\treturn serializer.serialize(fragment);\r\n\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t);\r\n\r\n\t\t\t\t\t// Set the inner/outer HTML depending on if we are in the root or not\r\n\t\t\t\t\tif (parentNode == rootNode)\r\n\t\t\t\t\t\tdom.setHTML(rootNode, value);\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\tdom.setOuterHTML(parentNode, value);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tmarker = dom.get('mce_marker');\r\n\r\n\t\t\t\t// Scroll range into view scrollIntoView on element can't be used since it will scroll the main view port as well\r\n\t\t\t\tnodeRect = dom.getRect(marker);\r\n\t\t\t\tviewPortRect = dom.getViewPort(editor.getWin());\r\n\r\n\t\t\t\t// Check if node is out side the viewport if it is then scroll to it\r\n\t\t\t\tif ((nodeRect.y + nodeRect.h > viewPortRect.y + viewPortRect.h || nodeRect.y < viewPortRect.y) ||\r\n\t\t\t\t\t(nodeRect.x > viewPortRect.x + viewPortRect.w || nodeRect.x < viewPortRect.x)) {\r\n\t\t\t\t\tviewportBodyElement = tinymce.isIE ? editor.getDoc().documentElement : editor.getBody();\r\n\t\t\t\t\tviewportBodyElement.scrollLeft = nodeRect.x;\r\n\t\t\t\t\tviewportBodyElement.scrollTop = nodeRect.y - viewPortRect.h + 25;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Move selection before marker and remove it\r\n\t\t\t\trng = dom.createRng();\r\n\r\n\t\t\t\t// If previous sibling is a text node set the selection to the end of that node\r\n\t\t\t\tnode = marker.previousSibling;\r\n\t\t\t\tif (node && node.nodeType == 3) {\r\n\t\t\t\t\trng.setStart(node, node.nodeValue.length);\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// If the previous sibling isn't a text node or doesn't exist set the selection before the marker node\r\n\t\t\t\t\trng.setStartBefore(marker);\r\n\t\t\t\t\trng.setEndBefore(marker);\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Remove the marker node and set the new range\r\n\t\t\t\tdom.remove(marker);\r\n\t\t\t\tselection.setRng(rng);\r\n\r\n\t\t\t\t// Dispatch after event and add any visual elements needed\r\n\t\t\t\tselection.onSetContent.dispatch(selection, args);\r\n\t\t\t\teditor.addVisual();\r\n\t\t\t},\r\n\r\n\t\t\tmceInsertRawHTML : function(command, ui, value) {\r\n\t\t\t\tselection.setContent('tiny_mce_marker');\r\n\t\t\t\teditor.setContent(editor.getContent().replace(/tiny_mce_marker/g, function() { return value }));\r\n\t\t\t},\r\n\r\n\t\t\tmceSetContent : function(command, ui, value) {\r\n\t\t\t\teditor.setContent(value);\r\n\t\t\t},\r\n\r\n\t\t\t'Indent,Outdent' : function(command) {\r\n\t\t\t\tvar intentValue, indentUnit, value;\r\n\r\n\t\t\t\t// Setup indent level\r\n\t\t\t\tintentValue = settings.indentation;\r\n\t\t\t\tindentUnit = /[a-z%]+$/i.exec(intentValue);\r\n\t\t\t\tintentValue = parseInt(intentValue);\r\n\r\n\t\t\t\tif (!queryCommandState('InsertUnorderedList') && !queryCommandState('InsertOrderedList')) {\r\n\t\t\t\t\teach(selection.getSelectedBlocks(), function(element) {\r\n\t\t\t\t\t\tif (command == 'outdent') {\r\n\t\t\t\t\t\t\tvalue = Math.max(0, parseInt(element.style.paddingLeft || 0) - intentValue);\r\n\t\t\t\t\t\t\tdom.setStyle(element, 'paddingLeft', value ? value + indentUnit : '');\r\n\t\t\t\t\t\t} else\r\n\t\t\t\t\t\t\tdom.setStyle(element, 'paddingLeft', (parseInt(element.style.paddingLeft || 0) + intentValue) + indentUnit);\r\n\t\t\t\t\t});\r\n\t\t\t\t} else\r\n\t\t\t\t\texecNativeCommand(command);\r\n\t\t\t},\r\n\r\n\t\t\tmceRepaint : function() {\r\n\t\t\t\tvar bookmark;\r\n\r\n\t\t\t\tif (tinymce.isGecko) {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tstoreSelection(TRUE);\r\n\r\n\t\t\t\t\t\tif (selection.getSel())\r\n\t\t\t\t\t\t\tselection.getSel().selectAllChildren(editor.getBody());\r\n\r\n\t\t\t\t\t\tselection.collapse(TRUE);\r\n\t\t\t\t\t\trestoreSelection();\r\n\t\t\t\t\t} catch (ex) {\r\n\t\t\t\t\t\t// Ignore\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t},\r\n\r\n\t\t\tmceToggleFormat : function(command, ui, value) {\r\n\t\t\t\tformatter.toggle(value);\r\n\t\t\t},\r\n\r\n\t\t\tInsertHorizontalRule : function() {\r\n\t\t\t\teditor.execCommand('mceInsertContent', false, '<hr />');\r\n\t\t\t},\r\n\r\n\t\t\tmceToggleVisualAid : function() {\r\n\t\t\t\teditor.hasVisual = !editor.hasVisual;\r\n\t\t\t\teditor.addVisual();\r\n\t\t\t},\r\n\r\n\t\t\tmceReplaceContent : function(command, ui, value) {\r\n\t\t\t\teditor.execCommand('mceInsertContent', false, value.replace(/\\{\\$selection\\}/g, selection.getContent({format : 'text'})));\r\n\t\t\t},\r\n\r\n\t\t\tmceInsertLink : function(command, ui, value) {\r\n\t\t\t\tvar anchor;\r\n\r\n\t\t\t\tif (typeof(value) == 'string')\r\n\t\t\t\t\tvalue = {href : value};\r\n\r\n\t\t\t\tanchor = dom.getParent(selection.getNode(), 'a');\r\n\r\n\t\t\t\t// Spaces are never valid in URLs and it's a very common mistake for people to make so we fix it here.\r\n\t\t\t\tvalue.href = value.href.replace(' ', '%20');\r\n\r\n\t\t\t\t// Remove existing links if there could be child links or that the href isn't specified\r\n\t\t\t\tif (!anchor || !value.href) {\r\n\t\t\t\t\tformatter.remove('link');\r\n\t\t\t\t}\t\t\r\n\r\n\t\t\t\t// Apply new link to selection\r\n\t\t\t\tif (value.href) {\r\n\t\t\t\t\tformatter.apply('link', value, anchor);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\r\n\t\t\tselectAll : function() {\r\n\t\t\t\tvar root = dom.getRoot(), rng = dom.createRng();\r\n\r\n\t\t\t\trng.setStart(root, 0);\r\n\t\t\t\trng.setEnd(root, root.childNodes.length);\r\n\r\n\t\t\t\teditor.selection.setRng(rng);\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\t// Add queryCommandState overrides\r\n\t\taddCommands({\r\n\t\t\t// Override justify commands\r\n\t\t\t'JustifyLeft,JustifyCenter,JustifyRight,JustifyFull' : function(command) {\r\n\t\t\t\treturn isFormatMatch('align' + command.substring(7));\r\n\t\t\t},\r\n\r\n\t\t\t'Bold,Italic,Underline,Strikethrough,Superscript,Subscript' : function(command) {\r\n\t\t\t\treturn isFormatMatch(command);\r\n\t\t\t},\r\n\r\n\t\t\tmceBlockQuote : function() {\r\n\t\t\t\treturn isFormatMatch('blockquote');\r\n\t\t\t},\r\n\r\n\t\t\tOutdent : function() {\r\n\t\t\t\tvar node;\r\n\r\n\t\t\t\tif (settings.inline_styles) {\r\n\t\t\t\t\tif ((node = dom.getParent(selection.getStart(), dom.isBlock)) && parseInt(node.style.paddingLeft) > 0)\r\n\t\t\t\t\t\treturn TRUE;\r\n\r\n\t\t\t\t\tif ((node = dom.getParent(selection.getEnd(), dom.isBlock)) && parseInt(node.style.paddingLeft) > 0)\r\n\t\t\t\t\t\treturn TRUE;\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn queryCommandState('InsertUnorderedList') || queryCommandState('InsertOrderedList') || (!settings.inline_styles && !!dom.getParent(selection.getNode(), 'BLOCKQUOTE'));\r\n\t\t\t},\r\n\r\n\t\t\t'InsertUnorderedList,InsertOrderedList' : function(command) {\r\n\t\t\t\treturn dom.getParent(selection.getNode(), command == 'insertunorderedlist' ? 'UL' : 'OL');\r\n\t\t\t}\r\n\t\t}, 'state');\r\n\r\n\t\t// Add queryCommandValue overrides\r\n\t\taddCommands({\r\n\t\t\t'FontSize,FontName' : function(command) {\r\n\t\t\t\tvar value = 0, parent;\r\n\r\n\t\t\t\tif (parent = dom.getParent(selection.getNode(), 'span')) {\r\n\t\t\t\t\tif (command == 'fontsize')\r\n\t\t\t\t\t\tvalue = parent.style.fontSize;\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\tvalue = parent.style.fontFamily.replace(/, /g, ',').replace(/[\\'\\\"]/g, '').toLowerCase();\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn value;\r\n\t\t\t}\r\n\t\t}, 'value');\r\n\r\n\t\t// Add undo manager logic\r\n\t\tif (settings.custom_undo_redo) {\r\n\t\t\taddCommands({\r\n\t\t\t\tUndo : function() {\r\n\t\t\t\t\teditor.undoManager.undo();\r\n\t\t\t\t},\r\n\r\n\t\t\t\tRedo : function() {\r\n\t\t\t\t\teditor.undoManager.redo();\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t};\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\tvar Dispatcher = tinymce.util.Dispatcher;\r\n\r\n\ttinymce.UndoManager = function(editor) {\r\n\t\tvar self, index = 0, data = [], beforeBookmark;\r\n\r\n\t\tfunction getContent() {\r\n\t\t\treturn tinymce.trim(editor.getContent({format : 'raw', no_events : 1}));\r\n\t\t};\r\n\r\n\t\treturn self = {\r\n\t\t\ttyping : false,\r\n\r\n\t\t\tonAdd : new Dispatcher(self),\r\n\r\n\t\t\tonUndo : new Dispatcher(self),\r\n\r\n\t\t\tonRedo : new Dispatcher(self),\r\n\r\n\t\t\tbeforeChange : function() {\r\n\t\t\t\tbeforeBookmark = editor.selection.getBookmark(2, true);\r\n\t\t\t},\r\n\r\n\t\t\tadd : function(level) {\r\n\t\t\t\tvar i, settings = editor.settings, lastLevel;\r\n\r\n\t\t\t\tlevel = level || {};\r\n\t\t\t\tlevel.content = getContent();\r\n\r\n\t\t\t\t// Add undo level if needed\r\n\t\t\t\tlastLevel = data[index];\r\n\t\t\t\tif (lastLevel && lastLevel.content == level.content)\r\n\t\t\t\t\treturn null;\r\n\r\n\t\t\t\t// Set before bookmark on previous level\r\n\t\t\t\tif (data[index])\r\n\t\t\t\t\tdata[index].beforeBookmark = beforeBookmark;\r\n\r\n\t\t\t\t// Time to compress\r\n\t\t\t\tif (settings.custom_undo_redo_levels) {\r\n\t\t\t\t\tif (data.length > settings.custom_undo_redo_levels) {\r\n\t\t\t\t\t\tfor (i = 0; i < data.length - 1; i++)\r\n\t\t\t\t\t\t\tdata[i] = data[i + 1];\r\n\r\n\t\t\t\t\t\tdata.length--;\r\n\t\t\t\t\t\tindex = data.length;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Get a non intrusive normalized bookmark\r\n\t\t\t\tlevel.bookmark = editor.selection.getBookmark(2, true);\r\n\r\n\t\t\t\t// Crop array if needed\r\n\t\t\t\tif (index < data.length - 1)\r\n\t\t\t\t\tdata.length = index + 1;\r\n\r\n\t\t\t\tdata.push(level);\r\n\t\t\t\tindex = data.length - 1;\r\n\r\n\t\t\t\tself.onAdd.dispatch(self, level);\r\n\t\t\t\teditor.isNotDirty = 0;\r\n\r\n\t\t\t\treturn level;\r\n\t\t\t},\r\n\r\n\t\t\tundo : function() {\r\n\t\t\t\tvar level, i;\r\n\r\n\t\t\t\tif (self.typing) {\r\n\t\t\t\t\tself.add();\r\n\t\t\t\t\tself.typing = false;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (index > 0) {\r\n\t\t\t\t\tlevel = data[--index];\r\n\r\n\t\t\t\t\teditor.setContent(level.content, {format : 'raw'});\r\n\t\t\t\t\teditor.selection.moveToBookmark(level.beforeBookmark);\r\n\r\n\t\t\t\t\tself.onUndo.dispatch(self, level);\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn level;\r\n\t\t\t},\r\n\r\n\t\t\tredo : function() {\r\n\t\t\t\tvar level;\r\n\r\n\t\t\t\tif (index < data.length - 1) {\r\n\t\t\t\t\tlevel = data[++index];\r\n\r\n\t\t\t\t\teditor.setContent(level.content, {format : 'raw'});\r\n\t\t\t\t\teditor.selection.moveToBookmark(level.bookmark);\r\n\r\n\t\t\t\t\tself.onRedo.dispatch(self, level);\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn level;\r\n\t\t\t},\r\n\r\n\t\t\tclear : function() {\r\n\t\t\t\tdata = [];\r\n\t\t\t\tindex = 0;\r\n\t\t\t\tself.typing = false;\r\n\t\t\t},\r\n\r\n\t\t\thasUndo : function() {\r\n\t\t\t\treturn index > 0 || this.typing;\r\n\t\t\t},\r\n\r\n\t\t\thasRedo : function() {\r\n\t\t\t\treturn index < data.length - 1 && !this.typing;\r\n\t\t\t}\r\n\t\t};\r\n\t};\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\t// Shorten names\r\n\tvar Event = tinymce.dom.Event,\r\n\t\tisIE = tinymce.isIE,\r\n\t\tisGecko = tinymce.isGecko,\r\n\t\tisOpera = tinymce.isOpera,\r\n\t\teach = tinymce.each,\r\n\t\textend = tinymce.extend,\r\n\t\tTRUE = true,\r\n\t\tFALSE = false;\r\n\r\n\tfunction cloneFormats(node) {\r\n\t\tvar clone, temp, inner;\r\n\r\n\t\tdo {\r\n\t\t\tif (/^(SPAN|STRONG|B|EM|I|FONT|STRIKE|U)$/.test(node.nodeName)) {\r\n\t\t\t\tif (clone) {\r\n\t\t\t\t\ttemp = node.cloneNode(false);\r\n\t\t\t\t\ttemp.appendChild(clone);\r\n\t\t\t\t\tclone = temp;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tclone = inner = node.cloneNode(false);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tclone.removeAttribute('id');\r\n\t\t\t}\r\n\t\t} while (node = node.parentNode);\r\n\r\n\t\tif (clone)\r\n\t\t\treturn {wrapper : clone, inner : inner};\r\n\t};\r\n\r\n\t// Checks if the selection/caret is at the end of the specified block element\r\n\tfunction isAtEnd(rng, par) {\r\n\t\tvar rng2 = par.ownerDocument.createRange();\r\n\r\n\t\trng2.setStart(rng.endContainer, rng.endOffset);\r\n\t\trng2.setEndAfter(par);\r\n\r\n\t\t// Get number of characters to the right of the cursor if it's zero then we are at the end and need to merge the next block element\r\n\t\treturn rng2.cloneContents().textContent.length == 0;\r\n\t};\r\n\r\n\tfunction splitList(selection, dom, li) {\r\n\t\tvar listBlock, block;\r\n\r\n\t\tif (dom.isEmpty(li)) {\r\n\t\t\tlistBlock = dom.getParent(li, 'ul,ol');\r\n\r\n\t\t\tif (!dom.getParent(listBlock.parentNode, 'ul,ol')) {\r\n\t\t\t\tdom.split(listBlock, li);\r\n\t\t\t\tblock = dom.create('p', 0, '<br data-mce-bogus=\"1\" />');\r\n\t\t\t\tdom.replace(block, li);\r\n\t\t\t\tselection.select(block, 1);\r\n\t\t\t}\r\n\r\n\t\t\treturn FALSE;\r\n\t\t}\r\n\r\n\t\treturn TRUE;\r\n\t};\r\n\r\n\ttinymce.create('tinymce.ForceBlocks', {\r\n\t\tForceBlocks : function(ed) {\r\n\t\t\tvar t = this, s = ed.settings, elm;\r\n\r\n\t\t\tt.editor = ed;\r\n\t\t\tt.dom = ed.dom;\r\n\t\t\telm = (s.forced_root_block || 'p').toLowerCase();\r\n\t\t\ts.element = elm.toUpperCase();\r\n\r\n\t\t\ted.onPreInit.add(t.setup, t);\r\n\t\t},\r\n\r\n\t\tsetup : function() {\r\n\t\t\tvar t = this, ed = t.editor, s = ed.settings, dom = ed.dom, selection = ed.selection, blockElements = ed.schema.getBlockElements();\r\n\r\n\t\t\t// Force root blocks\r\n\t\t\tif (s.forced_root_block) {\r\n\t\t\t\tfunction addRootBlocks() {\r\n\t\t\t\t\tvar node = selection.getStart(), rootNode = ed.getBody(), rng, startContainer, startOffset, endContainer, endOffset, rootBlockNode, tempNode, offset = -0xFFFFFF;\r\n\r\n\t\t\t\t\tif (!node || node.nodeType !== 1)\r\n\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t// Check if node is wrapped in block\r\n\t\t\t\t\twhile (node != rootNode) {\r\n\t\t\t\t\t\tif (blockElements[node.nodeName])\r\n\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\tnode = node.parentNode;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Get current selection\r\n\t\t\t\t\trng = selection.getRng();\r\n\t\t\t\t\tif (rng.setStart) {\r\n\t\t\t\t\t\tstartContainer = rng.startContainer;\r\n\t\t\t\t\t\tstartOffset = rng.startOffset;\r\n\t\t\t\t\t\tendContainer = rng.endContainer;\r\n\t\t\t\t\t\tendOffset = rng.endOffset;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t// Force control range into text range\r\n\t\t\t\t\t\tif (rng.item) {\r\n\t\t\t\t\t\t\trng = ed.getDoc().body.createTextRange();\r\n\t\t\t\t\t\t\trng.moveToElementText(rng.item(0));\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\ttmpRng = rng.duplicate();\r\n\t\t\t\t\t\ttmpRng.collapse(true);\r\n\t\t\t\t\t\tstartOffset = tmpRng.move('character', offset) * -1;\r\n\r\n\t\t\t\t\t\tif (!tmpRng.collapsed) {\r\n\t\t\t\t\t\t\ttmpRng = rng.duplicate();\r\n\t\t\t\t\t\t\ttmpRng.collapse(false);\r\n\t\t\t\t\t\t\tendOffset = (tmpRng.move('character', offset) * -1) - startOffset;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Wrap non block elements and text nodes\r\n\t\t\t\t\tfor (node = rootNode.firstChild; node; node) {\r\n\t\t\t\t\t\tif (node.nodeType === 3 || (node.nodeType == 1 && !blockElements[node.nodeName])) {\r\n\t\t\t\t\t\t\tif (!rootBlockNode) {\r\n\t\t\t\t\t\t\t\trootBlockNode = dom.create(s.forced_root_block);\r\n\t\t\t\t\t\t\t\tnode.parentNode.insertBefore(rootBlockNode, node);\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\ttempNode = node;\r\n\t\t\t\t\t\t\tnode = node.nextSibling;\r\n\t\t\t\t\t\t\trootBlockNode.appendChild(tempNode);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\trootBlockNode = null;\r\n\t\t\t\t\t\t\tnode = node.nextSibling;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (rng.setStart) {\r\n\t\t\t\t\t\trng.setStart(startContainer, startOffset);\r\n\t\t\t\t\t\trng.setEnd(endContainer, endOffset);\r\n\t\t\t\t\t\tselection.setRng(rng);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\trng = ed.getDoc().body.createTextRange();\r\n\t\t\t\t\t\t\trng.moveToElementText(rootNode);\r\n\t\t\t\t\t\t\trng.collapse(true);\r\n\t\t\t\t\t\t\trng.moveStart('character', startOffset);\r\n\r\n\t\t\t\t\t\t\tif (endOffset > 0)\r\n\t\t\t\t\t\t\t\trng.moveEnd('character', endOffset);\r\n\r\n\t\t\t\t\t\t\trng.select();\r\n\t\t\t\t\t\t} catch (ex) {\r\n\t\t\t\t\t\t\t// Ignore\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\ted.nodeChanged();\r\n\t\t\t\t};\r\n\r\n\t\t\t\ted.onKeyUp.add(addRootBlocks);\r\n\t\t\t\ted.onClick.add(addRootBlocks);\r\n\t\t\t}\r\n\r\n\t\t\tif (s.force_br_newlines) {\r\n\t\t\t\t// Force IE to produce BRs on enter\r\n\t\t\t\tif (isIE) {\r\n\t\t\t\t\ted.onKeyPress.add(function(ed, e) {\r\n\t\t\t\t\t\tvar n;\r\n\r\n\t\t\t\t\t\tif (e.keyCode == 13 && selection.getNode().nodeName != 'LI') {\r\n\t\t\t\t\t\t\tselection.setContent('<br id=\"__\" /> ', {format : 'raw'});\r\n\t\t\t\t\t\t\tn = dom.get('__');\r\n\t\t\t\t\t\t\tn.removeAttribute('id');\r\n\t\t\t\t\t\t\tselection.select(n);\r\n\t\t\t\t\t\t\tselection.collapse();\r\n\t\t\t\t\t\t\treturn Event.cancel(e);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (s.force_p_newlines) {\r\n\t\t\t\tif (!isIE) {\r\n\t\t\t\t\ted.onKeyPress.add(function(ed, e) {\r\n\t\t\t\t\t\tif (e.keyCode == 13 && !e.shiftKey && !t.insertPara(e))\r\n\t\t\t\t\t\t\tEvent.cancel(e);\r\n\t\t\t\t\t});\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// Ungly hack to for IE to preserve the formatting when you press\r\n\t\t\t\t\t// enter at the end of a block element with formatted contents\r\n\t\t\t\t\t// This logic overrides the browsers default logic with\r\n\t\t\t\t\t// custom logic that enables us to control the output\r\n\t\t\t\t\ttinymce.addUnload(function() {\r\n\t\t\t\t\t\tt._previousFormats = 0; // Fix IE leak\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\ted.onKeyPress.add(function(ed, e) {\r\n\t\t\t\t\t\tt._previousFormats = 0;\r\n\r\n\t\t\t\t\t\t// Clone the current formats, this will later be applied to the new block contents\r\n\t\t\t\t\t\tif (e.keyCode == 13 && !e.shiftKey && ed.selection.isCollapsed() && s.keep_styles)\r\n\t\t\t\t\t\t\tt._previousFormats = cloneFormats(ed.selection.getStart());\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\ted.onKeyUp.add(function(ed, e) {\r\n\t\t\t\t\t\t// Let IE break the element and the wrap the new caret location in the previous formats\r\n\t\t\t\t\t\tif (e.keyCode == 13 && !e.shiftKey) {\r\n\t\t\t\t\t\t\tvar parent = ed.selection.getStart(), fmt = t._previousFormats;\r\n\r\n\t\t\t\t\t\t\t// Parent is an empty block\r\n\t\t\t\t\t\t\tif (!parent.hasChildNodes() && fmt) {\r\n\t\t\t\t\t\t\t\tparent = dom.getParent(parent, dom.isBlock);\r\n\r\n\t\t\t\t\t\t\t\tif (parent && parent.nodeName != 'LI') {\r\n\t\t\t\t\t\t\t\t\tparent.innerHTML = '';\r\n\r\n\t\t\t\t\t\t\t\t\tif (t._previousFormats) {\r\n\t\t\t\t\t\t\t\t\t\tparent.appendChild(fmt.wrapper);\r\n\t\t\t\t\t\t\t\t\t\tfmt.inner.innerHTML = '\\uFEFF';\r\n\t\t\t\t\t\t\t\t\t} else\r\n\t\t\t\t\t\t\t\t\t\tparent.innerHTML = '\\uFEFF';\r\n\r\n\t\t\t\t\t\t\t\t\tselection.select(parent, 1);\r\n\t\t\t\t\t\t\t\t\tselection.collapse(true);\r\n\t\t\t\t\t\t\t\t\ted.getDoc().execCommand('Delete', false, null);\r\n\t\t\t\t\t\t\t\t\tt._previousFormats = 0;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (isGecko) {\r\n\t\t\t\t\ted.onKeyDown.add(function(ed, e) {\r\n\t\t\t\t\t\tif ((e.keyCode == 8 || e.keyCode == 46) && !e.shiftKey)\r\n\t\t\t\t\t\t\tt.backspaceDelete(e, e.keyCode == 8);\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Workaround for missing shift+enter support, http://bugs.webkit.org/show_bug.cgi?id=16973\r\n\t\t\tif (tinymce.isWebKit) {\r\n\t\t\t\tfunction insertBr(ed) {\r\n\t\t\t\t\tvar rng = selection.getRng(), br, div = dom.create('div', null, ' '), divYPos, vpHeight = dom.getViewPort(ed.getWin()).h;\r\n\r\n\t\t\t\t\t// Insert BR element\r\n\t\t\t\t\trng.insertNode(br = dom.create('br'));\r\n\r\n\t\t\t\t\t// Place caret after BR\r\n\t\t\t\t\trng.setStartAfter(br);\r\n\t\t\t\t\trng.setEndAfter(br);\r\n\t\t\t\t\tselection.setRng(rng);\r\n\r\n\t\t\t\t\t// Could not place caret after BR then insert an nbsp entity and move the caret\r\n\t\t\t\t\tif (selection.getSel().focusNode == br.previousSibling) {\r\n\t\t\t\t\t\tselection.select(dom.insertAfter(dom.doc.createTextNode('\\u00a0'), br));\r\n\t\t\t\t\t\tselection.collapse(TRUE);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Create a temporary DIV after the BR and get the position as it\r\n\t\t\t\t\t// seems like getPos() returns 0 for text nodes and BR elements.\r\n\t\t\t\t\tdom.insertAfter(div, br);\r\n\t\t\t\t\tdivYPos = dom.getPos(div).y;\r\n\t\t\t\t\tdom.remove(div);\r\n\r\n\t\t\t\t\t// Scroll to new position, scrollIntoView can't be used due to bug: http://bugs.webkit.org/show_bug.cgi?id=16117\r\n\t\t\t\t\tif (divYPos > vpHeight) // It is not necessary to scroll if the DIV is inside the view port.\r\n\t\t\t\t\t\ted.getWin().scrollTo(0, divYPos);\r\n\t\t\t\t};\r\n\r\n\t\t\t\ted.onKeyPress.add(function(ed, e) {\r\n\t\t\t\t\tif (e.keyCode == 13 && (e.shiftKey || (s.force_br_newlines && !dom.getParent(selection.getNode(), 'h1,h2,h3,h4,h5,h6,ol,ul')))) {\r\n\t\t\t\t\t\tinsertBr(ed);\r\n\t\t\t\t\t\tEvent.cancel(e);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\t// IE specific fixes\r\n\t\t\tif (isIE) {\r\n\t\t\t\t// Replaces IE:s auto generated paragraphs with the specified element name\r\n\t\t\t\tif (s.element != 'P') {\r\n\t\t\t\t\ted.onKeyPress.add(function(ed, e) {\r\n\t\t\t\t\t\tt.lastElm = selection.getNode().nodeName;\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\ted.onKeyUp.add(function(ed, e) {\r\n\t\t\t\t\t\tvar bl, n = selection.getNode(), b = ed.getBody();\r\n\r\n\t\t\t\t\t\tif (b.childNodes.length === 1 && n.nodeName == 'P') {\r\n\t\t\t\t\t\t\tn = dom.rename(n, s.element);\r\n\t\t\t\t\t\t\tselection.select(n);\r\n\t\t\t\t\t\t\tselection.collapse();\r\n\t\t\t\t\t\t\ted.nodeChanged();\r\n\t\t\t\t\t\t} else if (e.keyCode == 13 && !e.shiftKey && t.lastElm != 'P') {\r\n\t\t\t\t\t\t\tbl = dom.getParent(n, 'p');\r\n\r\n\t\t\t\t\t\t\tif (bl) {\r\n\t\t\t\t\t\t\t\tdom.rename(bl, s.element);\r\n\t\t\t\t\t\t\t\ted.nodeChanged();\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tgetParentBlock : function(n) {\r\n\t\t\tvar d = this.dom;\r\n\r\n\t\t\treturn d.getParent(n, d.isBlock);\r\n\t\t},\r\n\r\n\t\tinsertPara : function(e) {\r\n\t\t\tvar t = this, ed = t.editor, dom = ed.dom, d = ed.getDoc(), se = ed.settings, s = ed.selection.getSel(), r = s.getRangeAt(0), b = d.body;\r\n\t\t\tvar rb, ra, dir, sn, so, en, eo, sb, eb, bn, bef, aft, sc, ec, n, vp = dom.getViewPort(ed.getWin()), y, ch, car;\r\n\r\n\t\t\ted.undoManager.beforeChange();\r\n\r\n\t\t\t// If root blocks are forced then use Operas default behavior since it's really good\r\n// Removed due to bug: #1853816\r\n//\t\t\tif (se.forced_root_block && isOpera)\r\n//\t\t\t\treturn TRUE;\r\n\r\n\t\t\t// Setup before range\r\n\t\t\trb = d.createRange();\r\n\r\n\t\t\t// If is before the first block element and in body, then move it into first block element\r\n\t\t\trb.setStart(s.anchorNode, s.anchorOffset);\r\n\t\t\trb.collapse(TRUE);\r\n\r\n\t\t\t// Setup after range\r\n\t\t\tra = d.createRange();\r\n\r\n\t\t\t// If is before the first block element and in body, then move it into first block element\r\n\t\t\tra.setStart(s.focusNode, s.focusOffset);\r\n\t\t\tra.collapse(TRUE);\r\n\r\n\t\t\t// Setup start/end points\r\n\t\t\tdir = rb.compareBoundaryPoints(rb.START_TO_END, ra) < 0;\r\n\t\t\tsn = dir ? s.anchorNode : s.focusNode;\r\n\t\t\tso = dir ? s.anchorOffset : s.focusOffset;\r\n\t\t\ten = dir ? s.focusNode : s.anchorNode;\r\n\t\t\teo = dir ? s.focusOffset : s.anchorOffset;\r\n\r\n\t\t\t// If selection is in empty table cell\r\n\t\t\tif (sn === en && /^(TD|TH)$/.test(sn.nodeName)) {\r\n\t\t\t\tif (sn.firstChild.nodeName == 'BR')\r\n\t\t\t\t\tdom.remove(sn.firstChild); // Remove BR\r\n\r\n\t\t\t\t// Create two new block elements\r\n\t\t\t\tif (sn.childNodes.length == 0) {\r\n\t\t\t\t\ted.dom.add(sn, se.element, null, '<br />');\r\n\t\t\t\t\taft = ed.dom.add(sn, se.element, null, '<br />');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tn = sn.innerHTML;\r\n\t\t\t\t\tsn.innerHTML = '';\r\n\t\t\t\t\ted.dom.add(sn, se.element, null, n);\r\n\t\t\t\t\taft = ed.dom.add(sn, se.element, null, '<br />');\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Move caret into the last one\r\n\t\t\t\tr = d.createRange();\r\n\t\t\t\tr.selectNodeContents(aft);\r\n\t\t\t\tr.collapse(1);\r\n\t\t\t\ted.selection.setRng(r);\r\n\r\n\t\t\t\treturn FALSE;\r\n\t\t\t}\r\n\r\n\t\t\t// If the caret is in an invalid location in FF we need to move it into the first block\r\n\t\t\tif (sn == b && en == b && b.firstChild && ed.dom.isBlock(b.firstChild)) {\r\n\t\t\t\tsn = en = sn.firstChild;\r\n\t\t\t\tso = eo = 0;\r\n\t\t\t\trb = d.createRange();\r\n\t\t\t\trb.setStart(sn, 0);\r\n\t\t\t\tra = d.createRange();\r\n\t\t\t\tra.setStart(en, 0);\r\n\t\t\t}\r\n\r\n\t\t\t// If the body is totally empty add a BR element this might happen on webkit\r\n\t\t\tif (!d.body.hasChildNodes()) {\r\n\t\t\t\td.body.appendChild(dom.create('br'));\r\n\t\t\t}\r\n\r\n\t\t\t// Never use body as start or end node\r\n\t\t\tsn = sn.nodeName == \"HTML\" ? d.body : sn; // Fix for Opera bug: https://bugs.opera.com/show_bug.cgi?id=273224&comments=yes\r\n\t\t\tsn = sn.nodeName == \"BODY\" ? sn.firstChild : sn;\r\n\t\t\ten = en.nodeName == \"HTML\" ? d.body : en; // Fix for Opera bug: https://bugs.opera.com/show_bug.cgi?id=273224&comments=yes\r\n\t\t\ten = en.nodeName == \"BODY\" ? en.firstChild : en;\r\n\r\n\t\t\t// Get start and end blocks\r\n\t\t\tsb = t.getParentBlock(sn);\r\n\t\t\teb = t.getParentBlock(en);\r\n\t\t\tbn = sb ? sb.nodeName : se.element; // Get block name to create\r\n\r\n\t\t\t// Return inside list use default browser behavior\r\n\t\t\tif (n = t.dom.getParent(sb, 'li,pre')) {\r\n\t\t\t\tif (n.nodeName == 'LI')\r\n\t\t\t\t\treturn splitList(ed.selection, t.dom, n);\r\n\r\n\t\t\t\treturn TRUE;\r\n\t\t\t}\r\n\r\n\t\t\t// If caption or absolute layers then always generate new blocks within\r\n\t\t\tif (sb && (sb.nodeName == 'CAPTION' || /absolute|relative|fixed/gi.test(dom.getStyle(sb, 'position', 1)))) {\r\n\t\t\t\tbn = se.element;\r\n\t\t\t\tsb = null;\r\n\t\t\t}\r\n\r\n\t\t\t// If caption or absolute layers then always generate new blocks within\r\n\t\t\tif (eb && (eb.nodeName == 'CAPTION' || /absolute|relative|fixed/gi.test(dom.getStyle(sb, 'position', 1)))) {\r\n\t\t\t\tbn = se.element;\r\n\t\t\t\teb = null;\r\n\t\t\t}\r\n\r\n\t\t\t// Use P instead\r\n\t\t\tif (/(TD|TABLE|TH|CAPTION)/.test(bn) || (sb && bn == \"DIV\" && /left|right/gi.test(dom.getStyle(sb, 'float', 1)))) {\r\n\t\t\t\tbn = se.element;\r\n\t\t\t\tsb = eb = null;\r\n\t\t\t}\r\n\r\n\t\t\t// Setup new before and after blocks\r\n\t\t\tbef = (sb && sb.nodeName == bn) ? sb.cloneNode(0) : ed.dom.create(bn);\r\n\t\t\taft = (eb && eb.nodeName == bn) ? eb.cloneNode(0) : ed.dom.create(bn);\r\n\r\n\t\t\t// Remove id from after clone\r\n\t\t\taft.removeAttribute('id');\r\n\r\n\t\t\t// Is header and cursor is at the end, then force paragraph under\r\n\t\t\tif (/^(H[1-6])$/.test(bn) && isAtEnd(r, sb))\r\n\t\t\t\taft = ed.dom.create(se.element);\r\n\r\n\t\t\t// Find start chop node\r\n\t\t\tn = sc = sn;\r\n\t\t\tdo {\r\n\t\t\t\tif (n == b || n.nodeType == 9 || t.dom.isBlock(n) || /(TD|TABLE|TH|CAPTION)/.test(n.nodeName))\r\n\t\t\t\t\tbreak;\r\n\r\n\t\t\t\tsc = n;\r\n\t\t\t} while ((n = n.previousSibling ? n.previousSibling : n.parentNode));\r\n\r\n\t\t\t// Find end chop node\r\n\t\t\tn = ec = en;\r\n\t\t\tdo {\r\n\t\t\t\tif (n == b || n.nodeType == 9 || t.dom.isBlock(n) || /(TD|TABLE|TH|CAPTION)/.test(n.nodeName))\r\n\t\t\t\t\tbreak;\r\n\r\n\t\t\t\tec = n;\r\n\t\t\t} while ((n = n.nextSibling ? n.nextSibling : n.parentNode));\r\n\r\n\t\t\t// Place first chop part into before block element\r\n\t\t\tif (sc.nodeName == bn)\r\n\t\t\t\trb.setStart(sc, 0);\r\n\t\t\telse\r\n\t\t\t\trb.setStartBefore(sc);\r\n\r\n\t\t\trb.setEnd(sn, so);\r\n\t\t\tbef.appendChild(rb.cloneContents() || d.createTextNode('')); // Empty text node needed for Safari\r\n\r\n\t\t\t// Place secnd chop part within new block element\r\n\t\t\ttry {\r\n\t\t\t\tra.setEndAfter(ec);\r\n\t\t\t} catch(ex) {\r\n\t\t\t\t//console.debug(s.focusNode, s.focusOffset);\r\n\t\t\t}\r\n\r\n\t\t\tra.setStart(en, eo);\r\n\t\t\taft.appendChild(ra.cloneContents() || d.createTextNode('')); // Empty text node needed for Safari\r\n\r\n\t\t\t// Create range around everything\r\n\t\t\tr = d.createRange();\r\n\t\t\tif (!sc.previousSibling && sc.parentNode.nodeName == bn) {\r\n\t\t\t\tr.setStartBefore(sc.parentNode);\r\n\t\t\t} else {\r\n\t\t\t\tif (rb.startContainer.nodeName == bn && rb.startOffset == 0)\r\n\t\t\t\t\tr.setStartBefore(rb.startContainer);\r\n\t\t\t\telse\r\n\t\t\t\t\tr.setStart(rb.startContainer, rb.startOffset);\r\n\t\t\t}\r\n\r\n\t\t\tif (!ec.nextSibling && ec.parentNode.nodeName == bn)\r\n\t\t\t\tr.setEndAfter(ec.parentNode);\r\n\t\t\telse\r\n\t\t\t\tr.setEnd(ra.endContainer, ra.endOffset);\r\n\r\n\t\t\t// Delete and replace it with new block elements\r\n\t\t\tr.deleteContents();\r\n\r\n\t\t\tif (isOpera)\r\n\t\t\t\ted.getWin().scrollTo(0, vp.y);\r\n\r\n\t\t\t// Never wrap blocks in blocks\r\n\t\t\tif (bef.firstChild && bef.firstChild.nodeName == bn)\r\n\t\t\t\tbef.innerHTML = bef.firstChild.innerHTML;\r\n\r\n\t\t\tif (aft.firstChild && aft.firstChild.nodeName == bn)\r\n\t\t\t\taft.innerHTML = aft.firstChild.innerHTML;\r\n\r\n\t\t\tfunction appendStyles(e, en) {\r\n\t\t\t\tvar nl = [], nn, n, i;\r\n\r\n\t\t\t\te.innerHTML = '';\r\n\r\n\t\t\t\t// Make clones of style elements\r\n\t\t\t\tif (se.keep_styles) {\r\n\t\t\t\t\tn = en;\r\n\t\t\t\t\tdo {\r\n\t\t\t\t\t\t// We only want style specific elements\r\n\t\t\t\t\t\tif (/^(SPAN|STRONG|B|EM|I|FONT|STRIKE|U)$/.test(n.nodeName)) {\r\n\t\t\t\t\t\t\tnn = n.cloneNode(FALSE);\r\n\t\t\t\t\t\t\tdom.setAttrib(nn, 'id', ''); // Remove ID since it needs to be unique\r\n\t\t\t\t\t\t\tnl.push(nn);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} while (n = n.parentNode);\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Append style elements to aft\r\n\t\t\t\tif (nl.length > 0) {\r\n\t\t\t\t\tfor (i = nl.length - 1, nn = e; i >= 0; i--)\r\n\t\t\t\t\t\tnn = nn.appendChild(nl[i]);\r\n\r\n\t\t\t\t\t// Padd most inner style element\r\n\t\t\t\t\tnl[0].innerHTML = isOpera ? '\\u00a0' : '<br />'; // Extra space for Opera so that the caret can move there\r\n\t\t\t\t\treturn nl[0]; // Move caret to most inner element\r\n\t\t\t\t} else\r\n\t\t\t\t\te.innerHTML = isOpera ? '\\u00a0' : '<br />'; // Extra space for Opera so that the caret can move there\r\n\t\t\t};\r\n\t\t\t\t\r\n\t\t\t// Padd empty blocks\r\n\t\t\tif (dom.isEmpty(bef))\r\n\t\t\t\tappendStyles(bef, sn);\r\n\r\n\t\t\t// Fill empty afterblook with current style\r\n\t\t\tif (dom.isEmpty(aft))\r\n\t\t\t\tcar = appendStyles(aft, en);\r\n\r\n\t\t\t// Opera needs this one backwards for older versions\r\n\t\t\tif (isOpera && parseFloat(opera.version()) < 9.5) {\r\n\t\t\t\tr.insertNode(bef);\r\n\t\t\t\tr.insertNode(aft);\r\n\t\t\t} else {\r\n\t\t\t\tr.insertNode(aft);\r\n\t\t\t\tr.insertNode(bef);\r\n\t\t\t}\r\n\r\n\t\t\t// Normalize\r\n\t\t\taft.normalize();\r\n\t\t\tbef.normalize();\r\n\r\n\t\t\t// Move cursor and scroll into view\r\n\t\t\ted.selection.select(aft, true);\r\n\t\t\ted.selection.collapse(true);\r\n\r\n\t\t\t// scrollIntoView seems to scroll the parent window in most browsers now including FF 3.0b4 so it's time to stop using it and do it our selfs\r\n\t\t\ty = ed.dom.getPos(aft).y;\r\n\t\t\t//ch = aft.clientHeight;\r\n\r\n\t\t\t// Is element within viewport\r\n\t\t\tif (y < vp.y || y + 25 > vp.y + vp.h) {\r\n\t\t\t\ted.getWin().scrollTo(0, y < vp.y ? y : y - vp.h + 25); // Needs to be hardcoded to roughly one line of text if a huge text block is broken into two blocks\r\n\r\n\t\t\t\t/*console.debug(\r\n\t\t\t\t\t'Element: y=' + y + ', h=' + ch + ', ' +\r\n\t\t\t\t\t'Viewport: y=' + vp.y + \", h=\" + vp.h + ', bottom=' + (vp.y + vp.h)\r\n\t\t\t\t);*/\r\n\t\t\t}\r\n\r\n\t\t\ted.undoManager.add();\r\n\r\n\t\t\treturn FALSE;\r\n\t\t},\r\n\r\n\t\tbackspaceDelete : function(e, bs) {\r\n\t\t\tvar t = this, ed = t.editor, b = ed.getBody(), dom = ed.dom, n, se = ed.selection, r = se.getRng(), sc = r.startContainer, n, w, tn, walker;\r\n\r\n\t\t\t// Delete when caret is behind a element doesn't work correctly on Gecko see #3011651\r\n\t\t\tif (!bs && r.collapsed && sc.nodeType == 1 && r.startOffset == sc.childNodes.length) {\r\n\t\t\t\twalker = new tinymce.dom.TreeWalker(sc.lastChild, sc);\r\n\r\n\t\t\t\t// Walk the dom backwards until we find a text node\r\n\t\t\t\tfor (n = sc.lastChild; n; n = walker.prev()) {\r\n\t\t\t\t\tif (n.nodeType == 3) {\r\n\t\t\t\t\t\tr.setStart(n, n.nodeValue.length);\r\n\t\t\t\t\t\tr.collapse(true);\r\n\t\t\t\t\t\tse.setRng(r);\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// The caret sometimes gets stuck in Gecko if you delete empty paragraphs\r\n\t\t\t// This workaround removes the element by hand and moves the caret to the previous element\r\n\t\t\tif (sc && ed.dom.isBlock(sc) && !/^(TD|TH)$/.test(sc.nodeName) && bs) {\r\n\t\t\t\tif (sc.childNodes.length == 0 || (sc.childNodes.length == 1 && sc.firstChild.nodeName == 'BR')) {\r\n\t\t\t\t\t// Find previous block element\r\n\t\t\t\t\tn = sc;\r\n\t\t\t\t\twhile ((n = n.previousSibling) && !ed.dom.isBlock(n)) ;\r\n\r\n\t\t\t\t\tif (n) {\r\n\t\t\t\t\t\tif (sc != b.firstChild) {\r\n\t\t\t\t\t\t\t// Find last text node\r\n\t\t\t\t\t\t\tw = ed.dom.doc.createTreeWalker(n, NodeFilter.SHOW_TEXT, null, FALSE);\r\n\t\t\t\t\t\t\twhile (tn = w.nextNode())\r\n\t\t\t\t\t\t\t\tn = tn;\r\n\r\n\t\t\t\t\t\t\t// Place caret at the end of last text node\r\n\t\t\t\t\t\t\tr = ed.getDoc().createRange();\r\n\t\t\t\t\t\t\tr.setStart(n, n.nodeValue ? n.nodeValue.length : 0);\r\n\t\t\t\t\t\t\tr.setEnd(n, n.nodeValue ? n.nodeValue.length : 0);\r\n\t\t\t\t\t\t\tse.setRng(r);\r\n\r\n\t\t\t\t\t\t\t// Remove the target container\r\n\t\t\t\t\t\t\ted.dom.remove(sc);\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\treturn Event.cancel(e);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\t// Shorten names\r\n\tvar DOM = tinymce.DOM, Event = tinymce.dom.Event, each = tinymce.each, extend = tinymce.extend;\r\n\r\n\ttinymce.create('tinymce.ControlManager', {\r\n\t\tControlManager : function(ed, s) {\r\n\t\t\tvar t = this, i;\r\n\r\n\t\t\ts = s || {};\r\n\t\t\tt.editor = ed;\r\n\t\t\tt.controls = {};\r\n\t\t\tt.onAdd = new tinymce.util.Dispatcher(t);\r\n\t\t\tt.onPostRender = new tinymce.util.Dispatcher(t);\r\n\t\t\tt.prefix = s.prefix || ed.id + '_';\r\n\t\t\tt._cls = {};\r\n\r\n\t\t\tt.onPostRender.add(function() {\r\n\t\t\t\teach(t.controls, function(c) {\r\n\t\t\t\t\tc.postRender();\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t},\r\n\r\n\t\tget : function(id) {\r\n\t\t\treturn this.controls[this.prefix + id] || this.controls[id];\r\n\t\t},\r\n\r\n\t\tsetActive : function(id, s) {\r\n\t\t\tvar c = null;\r\n\r\n\t\t\tif (c = this.get(id))\r\n\t\t\t\tc.setActive(s);\r\n\r\n\t\t\treturn c;\r\n\t\t},\r\n\r\n\t\tsetDisabled : function(id, s) {\r\n\t\t\tvar c = null;\r\n\r\n\t\t\tif (c = this.get(id))\r\n\t\t\t\tc.setDisabled(s);\r\n\r\n\t\t\treturn c;\r\n\t\t},\r\n\r\n\t\tadd : function(c) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tif (c) {\r\n\t\t\t\tt.controls[c.id] = c;\r\n\t\t\t\tt.onAdd.dispatch(c, t);\r\n\t\t\t}\r\n\r\n\t\t\treturn c;\r\n\t\t},\r\n\r\n\t\tcreateControl : function(n) {\r\n\t\t\tvar c, t = this, ed = t.editor;\r\n\r\n\t\t\teach(ed.plugins, function(p) {\r\n\t\t\t\tif (p.createControl) {\r\n\t\t\t\t\tc = p.createControl(n, t);\r\n\r\n\t\t\t\t\tif (c)\r\n\t\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tswitch (n) {\r\n\t\t\t\tcase \"|\":\r\n\t\t\t\tcase \"separator\":\r\n\t\t\t\t\treturn t.createSeparator();\r\n\t\t\t}\r\n\r\n\t\t\tif (!c && ed.buttons && (c = ed.buttons[n]))\r\n\t\t\t\treturn t.createButton(n, c);\r\n\r\n\t\t\treturn t.add(c);\r\n\t\t},\r\n\r\n\t\tcreateDropMenu : function(id, s, cc) {\r\n\t\t\tvar t = this, ed = t.editor, c, bm, v, cls;\r\n\r\n\t\t\ts = extend({\r\n\t\t\t\t'class' : 'mceDropDown',\r\n\t\t\t\tconstrain : ed.settings.constrain_menus\r\n\t\t\t}, s);\r\n\r\n\t\t\ts['class'] = s['class'] + ' ' + ed.getParam('skin') + 'Skin';\r\n\t\t\tif (v = ed.getParam('skin_variant'))\r\n\t\t\t\ts['class'] += ' ' + ed.getParam('skin') + 'Skin' + v.substring(0, 1).toUpperCase() + v.substring(1);\r\n\r\n\t\t\tid = t.prefix + id;\r\n\t\t\tcls = cc || t._cls.dropmenu || tinymce.ui.DropMenu;\r\n\t\t\tc = t.controls[id] = new cls(id, s);\r\n\t\t\tc.onAddItem.add(function(c, o) {\r\n\t\t\t\tvar s = o.settings;\r\n\r\n\t\t\t\ts.title = ed.getLang(s.title, s.title);\r\n\r\n\t\t\t\tif (!s.onclick) {\r\n\t\t\t\t\ts.onclick = function(v) {\r\n\t\t\t\t\t\tif (s.cmd)\r\n\t\t\t\t\t\t\ted.execCommand(s.cmd, s.ui || false, s.value);\r\n\t\t\t\t\t};\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\ted.onRemove.add(function() {\r\n\t\t\t\tc.destroy();\r\n\t\t\t});\r\n\r\n\t\t\t// Fix for bug #1897785, #1898007\r\n\t\t\tif (tinymce.isIE) {\r\n\t\t\t\tc.onShowMenu.add(function() {\r\n\t\t\t\t\t// IE 8 needs focus in order to store away a range with the current collapsed caret location\r\n\t\t\t\t\ted.focus();\r\n\r\n\t\t\t\t\tbm = ed.selection.getBookmark(1);\r\n\t\t\t\t});\r\n\r\n\t\t\t\tc.onHideMenu.add(function() {\r\n\t\t\t\t\tif (bm) {\r\n\t\t\t\t\t\ted.selection.moveToBookmark(bm);\r\n\t\t\t\t\t\tbm = 0;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\treturn t.add(c);\r\n\t\t},\r\n\r\n\t\tcreateListBox : function(id, s, cc) {\r\n\t\t\tvar t = this, ed = t.editor, cmd, c, cls;\r\n\r\n\t\t\tif (t.get(id))\r\n\t\t\t\treturn null;\r\n\r\n\t\t\ts.title = ed.translate(s.title);\r\n\t\t\ts.scope = s.scope || ed;\r\n\r\n\t\t\tif (!s.onselect) {\r\n\t\t\t\ts.onselect = function(v) {\r\n\t\t\t\t\ted.execCommand(s.cmd, s.ui || false, v || s.value);\r\n\t\t\t\t};\r\n\t\t\t}\r\n\r\n\t\t\ts = extend({\r\n\t\t\t\ttitle : s.title,\r\n\t\t\t\t'class' : 'mce_' + id,\r\n\t\t\t\tscope : s.scope,\r\n\t\t\t\tcontrol_manager : t\r\n\t\t\t}, s);\r\n\r\n\t\t\tid = t.prefix + id;\r\n\r\n\r\n\t\t\tfunction useNativeListForAccessibility(ed) {\r\n\t\t\t\treturn ed.settings.use_accessible_selects && !tinymce.isGecko\r\n\t\t\t}\r\n\r\n\t\t\tif (ed.settings.use_native_selects || useNativeListForAccessibility(ed))\r\n\t\t\t\tc = new tinymce.ui.NativeListBox(id, s);\r\n\t\t\telse {\r\n\t\t\t\tcls = cc || t._cls.listbox || tinymce.ui.ListBox;\r\n\t\t\t\tc = new cls(id, s, ed);\r\n\t\t\t}\r\n\r\n\t\t\tt.controls[id] = c;\r\n\r\n\t\t\t// Fix focus problem in Safari\r\n\t\t\tif (tinymce.isWebKit) {\r\n\t\t\t\tc.onPostRender.add(function(c, n) {\r\n\t\t\t\t\t// Store bookmark on mousedown\r\n\t\t\t\t\tEvent.add(n, 'mousedown', function() {\r\n\t\t\t\t\t\ted.bookmark = ed.selection.getBookmark(1);\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\t// Restore on focus, since it might be lost\r\n\t\t\t\t\tEvent.add(n, 'focus', function() {\r\n\t\t\t\t\t\ted.selection.moveToBookmark(ed.bookmark);\r\n\t\t\t\t\t\ted.bookmark = null;\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tif (c.hideMenu)\r\n\t\t\t\ted.onMouseDown.add(c.hideMenu, c);\r\n\r\n\t\t\treturn t.add(c);\r\n\t\t},\r\n\r\n\t\tcreateButton : function(id, s, cc) {\r\n\t\t\tvar t = this, ed = t.editor, o, c, cls;\r\n\r\n\t\t\tif (t.get(id))\r\n\t\t\t\treturn null;\r\n\r\n\t\t\ts.title = ed.translate(s.title);\r\n\t\t\ts.label = ed.translate(s.label);\r\n\t\t\ts.scope = s.scope || ed;\r\n\r\n\t\t\tif (!s.onclick && !s.menu_button) {\r\n\t\t\t\ts.onclick = function() {\r\n\t\t\t\t\ted.execCommand(s.cmd, s.ui || false, s.value);\r\n\t\t\t\t};\r\n\t\t\t}\r\n\r\n\t\t\ts = extend({\r\n\t\t\t\ttitle : s.title,\r\n\t\t\t\t'class' : 'mce_' + id,\r\n\t\t\t\tunavailable_prefix : ed.getLang('unavailable', ''),\r\n\t\t\t\tscope : s.scope,\r\n\t\t\t\tcontrol_manager : t\r\n\t\t\t}, s);\r\n\r\n\t\t\tid = t.prefix + id;\r\n\r\n\t\t\tif (s.menu_button) {\r\n\t\t\t\tcls = cc || t._cls.menubutton || tinymce.ui.MenuButton;\r\n\t\t\t\tc = new cls(id, s, ed);\r\n\t\t\t\ted.onMouseDown.add(c.hideMenu, c);\r\n\t\t\t} else {\r\n\t\t\t\tcls = t._cls.button || tinymce.ui.Button;\r\n\t\t\t\tc = new cls(id, s, ed);\r\n\t\t\t}\r\n\r\n\t\t\treturn t.add(c);\r\n\t\t},\r\n\r\n\t\tcreateMenuButton : function(id, s, cc) {\r\n\t\t\ts = s || {};\r\n\t\t\ts.menu_button = 1;\r\n\r\n\t\t\treturn this.createButton(id, s, cc);\r\n\t\t},\r\n\r\n\t\tcreateSplitButton : function(id, s, cc) {\r\n\t\t\tvar t = this, ed = t.editor, cmd, c, cls;\r\n\r\n\t\t\tif (t.get(id))\r\n\t\t\t\treturn null;\r\n\r\n\t\t\ts.title = ed.translate(s.title);\r\n\t\t\ts.scope = s.scope || ed;\r\n\r\n\t\t\tif (!s.onclick) {\r\n\t\t\t\ts.onclick = function(v) {\r\n\t\t\t\t\ted.execCommand(s.cmd, s.ui || false, v || s.value);\r\n\t\t\t\t};\r\n\t\t\t}\r\n\r\n\t\t\tif (!s.onselect) {\r\n\t\t\t\ts.onselect = function(v) {\r\n\t\t\t\t\ted.execCommand(s.cmd, s.ui || false, v || s.value);\r\n\t\t\t\t};\r\n\t\t\t}\r\n\r\n\t\t\ts = extend({\r\n\t\t\t\ttitle : s.title,\r\n\t\t\t\t'class' : 'mce_' + id,\r\n\t\t\t\tscope : s.scope,\r\n\t\t\t\tcontrol_manager : t\r\n\t\t\t}, s);\r\n\r\n\t\t\tid = t.prefix + id;\r\n\t\t\tcls = cc || t._cls.splitbutton || tinymce.ui.SplitButton;\r\n\t\t\tc = t.add(new cls(id, s, ed));\r\n\t\t\ted.onMouseDown.add(c.hideMenu, c);\r\n\r\n\t\t\treturn c;\r\n\t\t},\r\n\r\n\t\tcreateColorSplitButton : function(id, s, cc) {\r\n\t\t\tvar t = this, ed = t.editor, cmd, c, cls, bm;\r\n\r\n\t\t\tif (t.get(id))\r\n\t\t\t\treturn null;\r\n\r\n\t\t\ts.title = ed.translate(s.title);\r\n\t\t\ts.scope = s.scope || ed;\r\n\r\n\t\t\tif (!s.onclick) {\r\n\t\t\t\ts.onclick = function(v) {\r\n\t\t\t\t\tif (tinymce.isIE)\r\n\t\t\t\t\t\tbm = ed.selection.getBookmark(1);\r\n\r\n\t\t\t\t\ted.execCommand(s.cmd, s.ui || false, v || s.value);\r\n\t\t\t\t};\r\n\t\t\t}\r\n\r\n\t\t\tif (!s.onselect) {\r\n\t\t\t\ts.onselect = function(v) {\r\n\t\t\t\t\ted.execCommand(s.cmd, s.ui || false, v || s.value);\r\n\t\t\t\t};\r\n\t\t\t}\r\n\r\n\t\t\ts = extend({\r\n\t\t\t\ttitle : s.title,\r\n\t\t\t\t'class' : 'mce_' + id,\r\n\t\t\t\t'menu_class' : ed.getParam('skin') + 'Skin',\r\n\t\t\t\tscope : s.scope,\r\n\t\t\t\tmore_colors_title : ed.getLang('more_colors')\r\n\t\t\t}, s);\r\n\r\n\t\t\tid = t.prefix + id;\r\n\t\t\tcls = cc || t._cls.colorsplitbutton || tinymce.ui.ColorSplitButton;\r\n\t\t\tc = new cls(id, s, ed);\r\n\t\t\ted.onMouseDown.add(c.hideMenu, c);\r\n\r\n\t\t\t// Remove the menu element when the editor is removed\r\n\t\t\ted.onRemove.add(function() {\r\n\t\t\t\tc.destroy();\r\n\t\t\t});\r\n\r\n\t\t\t// Fix for bug #1897785, #1898007\r\n\t\t\tif (tinymce.isIE) {\r\n\t\t\t\tc.onShowMenu.add(function() {\r\n\t\t\t\t\t// IE 8 needs focus in order to store away a range with the current collapsed caret location\r\n\t\t\t\t\ted.focus();\r\n\t\t\t\t\tbm = ed.selection.getBookmark(1);\r\n\t\t\t\t});\r\n\r\n\t\t\t\tc.onHideMenu.add(function() {\r\n\t\t\t\t\tif (bm) {\r\n\t\t\t\t\t\ted.selection.moveToBookmark(bm);\r\n\t\t\t\t\t\tbm = 0;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\treturn t.add(c);\r\n\t\t},\r\n\r\n\t\tcreateToolbar : function(id, s, cc) {\r\n\t\t\tvar c, t = this, cls;\r\n\r\n\t\t\tid = t.prefix + id;\r\n\t\t\tcls = cc || t._cls.toolbar || tinymce.ui.Toolbar;\r\n\t\t\tc = new cls(id, s, t.editor);\r\n\r\n\t\t\tif (t.get(id))\r\n\t\t\t\treturn null;\r\n\r\n\t\t\treturn t.add(c);\r\n\t\t},\r\n\t\t\r\n\t\tcreateToolbarGroup : function(id, s, cc) {\r\n\t\t\tvar c, t = this, cls;\r\n\t\t\tid = t.prefix + id;\r\n\t\t\tcls = cc || this._cls.toolbarGroup || tinymce.ui.ToolbarGroup;\r\n\t\t\tc = new cls(id, s, t.editor);\r\n\t\t\t\r\n\t\t\tif (t.get(id))\r\n\t\t\t\treturn null;\r\n\t\t\t\r\n\t\t\treturn t.add(c);\r\n\t\t},\r\n\r\n\t\tcreateSeparator : function(cc) {\r\n\t\t\tvar cls = cc || this._cls.separator || tinymce.ui.Separator;\r\n\r\n\t\t\treturn new cls();\r\n\t\t},\r\n\r\n\t\tsetControlType : function(n, c) {\r\n\t\t\treturn this._cls[n.toLowerCase()] = c;\r\n\t\t},\r\n\t\r\n\t\tdestroy : function() {\r\n\t\t\teach(this.controls, function(c) {\r\n\t\t\t\tc.destroy();\r\n\t\t\t});\r\n\r\n\t\t\tthis.controls = null;\r\n\t\t}\r\n\t});\r\n})(tinymce);\r\n\r\n(function(tinymce) {\r\n\tvar Dispatcher = tinymce.util.Dispatcher, each = tinymce.each, isIE = tinymce.isIE, isOpera = tinymce.isOpera;\r\n\r\n\ttinymce.create('tinymce.WindowManager', {\r\n\t\tWindowManager : function(ed) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tt.editor = ed;\r\n\t\t\tt.onOpen = new Dispatcher(t);\r\n\t\t\tt.onClose = new Dispatcher(t);\r\n\t\t\tt.params = {};\r\n\t\t\tt.features = {};\r\n\t\t},\r\n\r\n\t\topen : function(s, p) {\r\n\t\t\tvar t = this, f = '', x, y, mo = t.editor.settings.dialog_type == 'modal', w, sw, sh, vp = tinymce.DOM.getViewPort(), u;\r\n\r\n\t\t\t// Default some options\r\n\t\t\ts = s || {};\r\n\t\t\tp = p || {};\r\n\t\t\tsw = isOpera ? vp.w : screen.width; // Opera uses windows inside the Opera window\r\n\t\t\tsh = isOpera ? vp.h : screen.height;\r\n\t\t\ts.name = s.name || 'mc_' + new Date().getTime();\r\n\t\t\ts.width = parseInt(s.width || 320);\r\n\t\t\ts.height = parseInt(s.height || 240);\r\n\t\t\ts.resizable = true;\r\n\t\t\ts.left = s.left || parseInt(sw / 2.0) - (s.width / 2.0);\r\n\t\t\ts.top = s.top || parseInt(sh / 2.0) - (s.height / 2.0);\r\n\t\t\tp.inline = false;\r\n\t\t\tp.mce_width = s.width;\r\n\t\t\tp.mce_height = s.height;\r\n\t\t\tp.mce_auto_focus = s.auto_focus;\r\n\r\n\t\t\tif (mo) {\r\n\t\t\t\tif (isIE) {\r\n\t\t\t\t\ts.center = true;\r\n\t\t\t\t\ts.help = false;\r\n\t\t\t\t\ts.dialogWidth = s.width + 'px';\r\n\t\t\t\t\ts.dialogHeight = s.height + 'px';\r\n\t\t\t\t\ts.scroll = s.scrollbars || false;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Build features string\r\n\t\t\teach(s, function(v, k) {\r\n\t\t\t\tif (tinymce.is(v, 'boolean'))\r\n\t\t\t\t\tv = v ? 'yes' : 'no';\r\n\r\n\t\t\t\tif (!/^(name|url)$/.test(k)) {\r\n\t\t\t\t\tif (isIE && mo)\r\n\t\t\t\t\t\tf += (f ? ';' : '') + k + ':' + v;\r\n\t\t\t\t\telse\r\n\t\t\t\t\t\tf += (f ? ',' : '') + k + '=' + v;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tt.features = s;\r\n\t\t\tt.params = p;\r\n\t\t\tt.onOpen.dispatch(t, s, p);\r\n\r\n\t\t\tu = s.url || s.file;\r\n\t\t\tu = tinymce._addVer(u);\r\n\r\n\t\t\ttry {\r\n\t\t\t\tif (isIE && mo) {\r\n\t\t\t\t\tw = 1;\r\n\t\t\t\t\twindow.showModalDialog(u, window, f);\r\n\t\t\t\t} else\r\n\t\t\t\t\tw = window.open(u, s.name, f);\r\n\t\t\t} catch (ex) {\r\n\t\t\t\t// Ignore\r\n\t\t\t}\r\n\r\n\t\t\tif (!w)\r\n\t\t\t\talert(t.editor.getLang('popup_blocked'));\r\n\t\t},\r\n\r\n\t\tclose : function(w) {\r\n\t\t\tw.close();\r\n\t\t\tthis.onClose.dispatch(this);\r\n\t\t},\r\n\r\n\t\tcreateInstance : function(cl, a, b, c, d, e) {\r\n\t\t\tvar f = tinymce.resolve(cl);\r\n\r\n\t\t\treturn new f(a, b, c, d, e);\r\n\t\t},\r\n\r\n\t\tconfirm : function(t, cb, s, w) {\r\n\t\t\tw = w || window;\r\n\r\n\t\t\tcb.call(s || this, w.confirm(this._decode(this.editor.getLang(t, t))));\r\n\t\t},\r\n\r\n\t\talert : function(tx, cb, s, w) {\r\n\t\t\tvar t = this;\r\n\r\n\t\t\tw = w || window;\r\n\t\t\tw.alert(t._decode(t.editor.getLang(tx, tx)));\r\n\r\n\t\t\tif (cb)\r\n\t\t\t\tcb.call(s || t);\r\n\t\t},\r\n\r\n\t\tresizeBy : function(dw, dh, win) {\r\n\t\t\twin.resizeBy(dw, dh);\r\n\t\t},\r\n\r\n\t\t// Internal functions\r\n\r\n\t\t_decode : function(s) {\r\n\t\t\treturn tinymce.DOM.decode(s).replace(/\\\\n/g, '\\n');\r\n\t\t}\r\n\t});\r\n}(tinymce));\r\n(function(tinymce) {\r\n\ttinymce.Formatter = function(ed) {\r\n\t\tvar formats = {},\r\n\t\t\teach = tinymce.each,\r\n\t\t\tdom = ed.dom,\r\n\t\t\tselection = ed.selection,\r\n\t\t\tTreeWalker = tinymce.dom.TreeWalker,\r\n\t\t\trangeUtils = new tinymce.dom.RangeUtils(dom),\r\n\t\t\tisValid = ed.schema.isValidChild,\r\n\t\t\tisBlock = dom.isBlock,\r\n\t\t\tforcedRootBlock = ed.settings.forced_root_block,\r\n\t\t\tnodeIndex = dom.nodeIndex,\r\n\t\t\tINVISIBLE_CHAR = '\\uFEFF',\r\n\t\t\tMCE_ATTR_RE = /^(src|href|style)$/,\r\n\t\t\tFALSE = false,\r\n\t\t\tTRUE = true,\r\n\t\t\tundefined,\r\n\t\t\tpendingFormats = {apply : [], remove : []};\r\n\r\n\t\tfunction isArray(obj) {\r\n\t\t\treturn obj instanceof Array;\r\n\t\t};\r\n\r\n\t\tfunction getParents(node, selector) {\r\n\t\t\treturn dom.getParents(node, selector, dom.getRoot());\r\n\t\t};\r\n\r\n\t\tfunction isCaretNode(node) {\r\n\t\t\treturn node.nodeType === 1 && (node.face === 'mceinline' || node.style.fontFamily === 'mceinline');\r\n\t\t};\r\n\r\n\t\t// Public functions\r\n\r\n\t\tfunction get(name) {\r\n\t\t\treturn name ? formats[name] : formats;\r\n\t\t};\r\n\r\n\t\tfunction register(name, format) {\r\n\t\t\tif (name) {\r\n\t\t\t\tif (typeof(name) !== 'string') {\r\n\t\t\t\t\teach(name, function(format, name) {\r\n\t\t\t\t\t\tregister(name, format);\r\n\t\t\t\t\t});\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// Force format into array and add it to internal collection\r\n\t\t\t\t\tformat = format.length ? format : [format];\r\n\r\n\t\t\t\t\teach(format, function(format) {\r\n\t\t\t\t\t\t// Set deep to false by default on selector formats this to avoid removing\r\n\t\t\t\t\t\t// alignment on images inside paragraphs when alignment is changed on paragraphs\r\n\t\t\t\t\t\tif (format.deep === undefined)\r\n\t\t\t\t\t\t\tformat.deep = !format.selector;\r\n\r\n\t\t\t\t\t\t// Default to true\r\n\t\t\t\t\t\tif (format.split === undefined)\r\n\t\t\t\t\t\t\tformat.split = !format.selector || format.inline;\r\n\r\n\t\t\t\t\t\t// Default to true\r\n\t\t\t\t\t\tif (format.remove === undefined && format.selector && !format.inline)\r\n\t\t\t\t\t\t\tformat.remove = 'none';\r\n\r\n\t\t\t\t\t\t// Mark format as a mixed format inline + block level\r\n\t\t\t\t\t\tif (format.selector && format.inline) {\r\n\t\t\t\t\t\t\tformat.mixed = true;\r\n\t\t\t\t\t\t\tformat.block_expand = true;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// Split classes if needed\r\n\t\t\t\t\t\tif (typeof(format.classes) === 'string')\r\n\t\t\t\t\t\t\tformat.classes = format.classes.split(/\\s+/);\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\tformats[name] = format;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tvar getTextDecoration = function(node) {\r\n\t\t\tvar decoration;\r\n\r\n\t\t\ted.dom.getParent(node, function(n) {\r\n\t\t\t\tdecoration = ed.dom.getStyle(n, 'text-decoration');\r\n\t\t\t\treturn decoration && decoration !== 'none';\r\n\t\t\t});\r\n\r\n\t\t\treturn decoration;\r\n\t\t};\r\n\r\n\t\tvar processUnderlineAndColor = function(node) {\r\n\t\t\tvar textDecoration;\r\n\t\t\tif (node.nodeType === 1 && node.parentNode && node.parentNode.nodeType === 1) {\r\n\t\t\t\ttextDecoration = getTextDecoration(node.parentNode);\r\n\t\t\t\tif (ed.dom.getStyle(node, 'color') && textDecoration) {\r\n\t\t\t\t\ted.dom.setStyle(node, 'text-decoration', textDecoration);\r\n\t\t\t\t} else if (ed.dom.getStyle(node, 'textdecoration') === textDecoration) {\r\n\t\t\t\t\ted.dom.setStyle(node, 'text-decoration', null);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tfunction apply(name, vars, node) {\r\n\t\t\tvar formatList = get(name), format = formatList[0], bookmark, rng, i, isCollapsed = selection.isCollapsed();\r\n\r\n\t\t\tfunction moveStart(rng) {\r\n\t\t\t\tvar container = rng.startContainer,\r\n\t\t\t\t\toffset = rng.startOffset,\r\n\t\t\t\t\twalker, node;\r\n\r\n\t\t\t\t// Move startContainer/startOffset in to a suitable node\r\n\t\t\t\tif (container.nodeType == 1 || container.nodeValue === \"\") {\r\n\t\t\t\t\tcontainer = container.nodeType == 1 ? container.childNodes[offset] : container;\r\n\r\n\t\t\t\t\t// Might fail if the offset is behind the last element in it's container\r\n\t\t\t\t\tif (container) {\r\n\t\t\t\t\t\twalker = new TreeWalker(container, container.parentNode);\r\n\t\t\t\t\t\tfor (node = walker.current(); node; node = walker.next()) {\r\n\t\t\t\t\t\t\tif (node.nodeType == 3 && !isWhiteSpaceNode(node)) {\r\n\t\t\t\t\t\t\t\trng.setStart(node, 0);\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn rng;\r\n\t\t\t};\r\n\r\n\t\t\tfunction setElementFormat(elm, fmt) {\r\n\t\t\t\tfmt = fmt || format;\r\n\r\n\t\t\t\tif (elm) {\r\n\t\t\t\t\tif (fmt.onformat) {\r\n\t\t\t\t\t\tfmt.onformat(elm, fmt, vars, node);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\teach(fmt.styles, function(value, name) {\r\n\t\t\t\t\t\tdom.setStyle(elm, name, replaceVars(value, vars));\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\teach(fmt.attributes, function(value, name) {\r\n\t\t\t\t\t\tdom.setAttrib(elm, name, replaceVars(value, vars));\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\teach(fmt.classes, function(value) {\r\n\t\t\t\t\t\tvalue = replaceVars(value, vars);\r\n\r\n\t\t\t\t\t\tif (!dom.hasClass(elm, value))\r\n\t\t\t\t\t\t\tdom.addClass(elm, value);\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t};\r\n\t\t\tfunction adjustSelectionToVisibleSelection() {\r\n\t\t\t\tfunction findSelectionEnd(start, end) {\r\n\t\t\t\t\tvar walker = new TreeWalker(end);\r\n\t\t\t\t\tfor (node = walker.current(); node; node = walker.prev()) {\r\n\t\t\t\t\t\tif (node.childNodes.length > 1 || node == start) {\r\n\t\t\t\t\t\t\treturn node;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t};\r\n\r\n\t\t\t\t// Adjust selection so that a end container with a end offset of zero is not included in the selection\r\n\t\t\t\t// as this isn't visible to the user.\r\n\t\t\t\tvar rng = ed.selection.getRng();\r\n\t\t\t\tvar start = rng.startContainer;\r\n\t\t\t\tvar end = rng.endContainer;\r\n\r\n\t\t\t\tif (start != end && rng.endOffset == 0) {\r\n\t\t\t\t\tvar newEnd = findSelectionEnd(start, end);\r\n\t\t\t\t\tvar endOffset = newEnd.nodeType == 3 ? newEnd.length : newEnd.childNodes.length;\r\n\r\n\t\t\t\t\trng.setEnd(newEnd, endOffset);\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn rng;\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\tfunction applyStyleToList(node, bookmark, wrapElm, newWrappers, process){\r\n\t\t\t\tvar nodes = [], listIndex = -1, list, startIndex = -1, endIndex = -1, currentWrapElm;\r\n\t\t\t\t\r\n\t\t\t\t// find the index of the first child list.\r\n\t\t\t\teach(node.childNodes, function(n, index) {\r\n\t\t\t\t\tif (n.nodeName === \"UL\" || n.nodeName === \"OL\") {\r\n\t\t\t\t\t\tlistIndex = index;\r\n\t\t\t\t\t\tlist = n;\r\n\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\t\r\n\t\t\t\t// get the index of the bookmarks\r\n\t\t\t\teach(node.childNodes, function(n, index) {\r\n\t\t\t\t\tif (n.nodeName === \"SPAN\" && dom.getAttrib(n, \"data-mce-type\") == \"bookmark\") {\r\n\t\t\t\t\t\tif (n.id == bookmark.id + \"_start\") {\r\n\t\t\t\t\t\t\tstartIndex = index;\r\n\t\t\t\t\t\t} else if (n.id == bookmark.id + \"_end\") {\r\n\t\t\t\t\t\t\tendIndex = index;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\t\r\n\t\t\t\t// if the selection spans across an embedded list, or there isn't an embedded list - handle processing normally\r\n\t\t\t\tif (listIndex <= 0 || (startIndex < listIndex && endIndex > listIndex)) {\r\n\t\t\t\t\teach(tinymce.grep(node.childNodes), process);\r\n\t\t\t\t\treturn 0;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tcurrentWrapElm = wrapElm.cloneNode(FALSE);\r\n\t\t\t\t\t\r\n\t\t\t\t\t// create a list of the nodes on the same side of the list as the selection\r\n\t\t\t\t\teach(tinymce.grep(node.childNodes), function(n, index) {\r\n\t\t\t\t\t\tif ((startIndex < listIndex && index < listIndex) || (startIndex > listIndex && index > listIndex)) {\r\n\t\t\t\t\t\t\tnodes.push(n); \r\n\t\t\t\t\t\t\tn.parentNode.removeChild(n);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t\t\r\n\t\t\t\t\t// insert the wrapping element either before or after the list.\r\n\t\t\t\t\tif (startIndex < listIndex) {\r\n\t\t\t\t\t\tnode.insertBefore(currentWrapElm, list);\r\n\t\t\t\t\t} else if (startIndex > listIndex) {\r\n\t\t\t\t\t\tnode.insertBefore(currentWrapElm, list.nextSibling);\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\r\n\t\t\t\t\t// add the new nodes to the list.\r\n\t\t\t\t\tnewWrappers.push(currentWrapElm);\r\n\r\n\t\t\t\t\teach(nodes, function(node) {\r\n\t\t\t\t\t\tcurrentWrapElm.appendChild(node);\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\treturn currentWrapElm;\r\n\t\t\t\t}\r\n\t\t\t};\r\n\t\t\t\r\n\t\t\tfunction applyRngStyle(rng, bookmark) {\r\n\t\t\t\tvar newWrappers = [], wrapName, wrapElm;\r\n\r\n\t\t\t\t// Setup wrapper element\r\n\t\t\t\twrapName = format.inline || format.block;\r\n\t\t\t\twrapElm = dom.create(wrapName);\r\n\t\t\t\tsetElementFormat(wrapElm);\r\n\r\n\t\t\t\trangeUtils.walk(rng, function(nodes) {\r\n\t\t\t\t\tvar currentWrapElm;\r\n\r\n\t\t\t\t\tfunction process(node) {\r\n\t\t\t\t\t\tvar nodeName = node.nodeName.toLowerCase(), parentName = node.parentNode.nodeName.toLowerCase(), found;\r\n\r\n\t\t\t\t\t\t// Stop wrapping on br elements\r\n\t\t\t\t\t\tif (isEq(nodeName, 'br')) {\r\n\t\t\t\t\t\t\tcurrentWrapElm = 0;\r\n\r\n\t\t\t\t\t\t\t// Remove any br elements when we wrap things\r\n\t\t\t\t\t\t\tif (format.block)\r\n\t\t\t\t\t\t\t\tdom.remove(node);\r\n\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// If node is wrapper type\r\n\t\t\t\t\t\tif (format.wrapper && matchNode(node, name, vars)) {\r\n\t\t\t\t\t\t\tcurrentWrapElm = 0;\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// Can we rename the block\r\n\t\t\t\t\t\tif (format.block && !format.wrapper && isTextBlock(nodeName)) {\r\n\t\t\t\t\t\t\tnode = dom.rename(node, wrapName);\r\n\t\t\t\t\t\t\tsetElementFormat(node);\r\n\t\t\t\t\t\t\tnewWrappers.push(node);\r\n\t\t\t\t\t\t\tcurrentWrapElm = 0;\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// Handle selector patterns\r\n\t\t\t\t\t\tif (format.selector) {\r\n\t\t\t\t\t\t\t// Look for matching formats\r\n\t\t\t\t\t\t\teach(formatList, function(format) {\r\n\t\t\t\t\t\t\t\t// Check collapsed state if it exists\r\n\t\t\t\t\t\t\t\tif ('collapsed' in format && format.collapsed !== isCollapsed) {\r\n\t\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\tif (dom.is(node, format.selector) && !isCaretNode(node)) {\r\n\t\t\t\t\t\t\t\t\tsetElementFormat(node, format);\r\n\t\t\t\t\t\t\t\t\tfound = true;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\t// Continue processing if a selector match wasn't found and a inline element is defined\r\n\t\t\t\t\t\t\tif (!format.inline || found) {\r\n\t\t\t\t\t\t\t\tcurrentWrapElm = 0;\r\n\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// Is it valid to wrap this item\r\n\t\t\t\t\t\tif (isValid(wrapName, nodeName) && isValid(parentName, wrapName) &&\r\n\t\t\t\t\t\t\t\t!(node.nodeType === 3 && node.nodeValue.length === 1 && node.nodeValue.charCodeAt(0) === 65279)) {\r\n\t\t\t\t\t\t\t// Start wrapping\r\n\t\t\t\t\t\t\tif (!currentWrapElm) {\r\n\t\t\t\t\t\t\t\t// Wrap the node\r\n\t\t\t\t\t\t\t\tcurrentWrapElm = wrapElm.cloneNode(FALSE);\r\n\t\t\t\t\t\t\t\tnode.parentNode.insertBefore(currentWrapElm, node);\r\n\t\t\t\t\t\t\t\tnewWrappers.push(currentWrapElm);\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tcurrentWrapElm.appendChild(node);\r\n\t\t\t\t\t\t} else if (nodeName == 'li' && bookmark) {\r\n\t\t\t\t\t\t\t// Start wrapping - if we are in a list node and have a bookmark, then we will always begin by wrapping in a new element.\r\n\t\t\t\t\t\t\tcurrentWrapElm = applyStyleToList(node, bookmark, wrapElm, newWrappers, process);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t// Start a new wrapper for possible children\r\n\t\t\t\t\t\t\tcurrentWrapElm = 0;\r\n\r\n\t\t\t\t\t\t\teach(tinymce.grep(node.childNodes), process);\r\n\r\n\t\t\t\t\t\t\t// End the last wrapper\r\n\t\t\t\t\t\t\tcurrentWrapElm = 0;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t};\r\n\r\n\t\t\t\t\t// Process siblings from range\r\n\t\t\t\t\teach(nodes, process);\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// Wrap links inside as well, for example color inside a link when the wrapper is around the link\r\n\t\t\t\tif (format.wrap_links === false) {\r\n\t\t\t\t\teach(newWrappers, function(node) {\r\n\t\t\t\t\t\tfunction process(node) {\r\n\t\t\t\t\t\t\tvar i, currentWrapElm, children;\r\n\r\n\t\t\t\t\t\t\tif (node.nodeName === 'A') {\r\n\t\t\t\t\t\t\t\tcurrentWrapElm = wrapElm.cloneNode(FALSE);\r\n\t\t\t\t\t\t\t\tnewWrappers.push(currentWrapElm);\r\n\r\n\t\t\t\t\t\t\t\tchildren = tinymce.grep(node.childNodes);\r\n\t\t\t\t\t\t\t\tfor (i = 0; i < children.length; i++)\r\n\t\t\t\t\t\t\t\t\tcurrentWrapElm.appendChild(children[i]);\r\n\r\n\t\t\t\t\t\t\t\tnode.appendChild(currentWrapElm);\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\teach(tinymce.grep(node.childNodes), process);\r\n\t\t\t\t\t\t};\r\n\r\n\t\t\t\t\t\tprocess(node);\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Cleanup\r\n\t\t\t\teach(newWrappers, function(node) {\r\n\t\t\t\t\tvar childCount;\r\n\r\n\t\t\t\t\tfunction getChildCount(node) {\r\n\t\t\t\t\t\tvar count = 0;\r\n\r\n\t\t\t\t\t\teach(node.childNodes, function(node) {\r\n\t\t\t\t\t\t\tif (!isWhiteSpaceNode(node) && !isBookmarkNode(node))\r\n\t\t\t\t\t\t\t\tcount++;\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\treturn count;\r\n\t\t\t\t\t};\r\n\r\n\t\t\t\t\tfunction mergeStyles(node) {\r\n\t\t\t\t\t\tvar child, clone;\r\n\r\n\t\t\t\t\t\teach(node.childNodes, function(node) {\r\n\t\t\t\t\t\t\tif (node.nodeType == 1 && !isBookmarkNode(node) && !isCaretNode(node)) {\r\n\t\t\t\t\t\t\t\tchild = node;\r\n\t\t\t\t\t\t\t\treturn FALSE; // break loop\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t// If child was found and of the same type as the current node\r\n\t\t\t\t\t\tif (child && matchName(child, format)) {\r\n\t\t\t\t\t\t\tclone = child.cloneNode(FALSE);\r\n\t\t\t\t\t\t\tsetElementFormat(clone);\r\n\r\n\t\t\t\t\t\t\tdom.replace(clone, node, TRUE);\r\n\t\t\t\t\t\t\tdom.remove(child, 1);\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\treturn clone || node;\r\n\t\t\t\t\t};\r\n\r\n\t\t\t\t\tchildCount = getChildCount(node);\r\n\r\n\t\t\t\t\t// Remove empty nodes but only if there is multiple wrappers and they are not block\r\n\t\t\t\t\t// elements so never remove single <h1></h1> since that would remove the currrent empty block element where the caret is at\r\n\t\t\t\t\tif ((newWrappers.length > 1 || !isBlock(node)) && childCount === 0) {\r\n\t\t\t\t\t\tdom.remove(node, 1);\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (format.inline || format.wrapper) {\r\n\t\t\t\t\t\t// Merges the current node with it's children of similar type to reduce the number of elements\r\n\t\t\t\t\t\tif (!format.exact && childCount === 1)\r\n\t\t\t\t\t\t\tnode = mergeStyles(node);\r\n\r\n\t\t\t\t\t\t// Remove/merge children\r\n\t\t\t\t\t\teach(formatList, function(format) {\r\n\t\t\t\t\t\t\t// Merge all children of similar type will move styles from child to parent\r\n\t\t\t\t\t\t\t// this: <span style=\"color:red\"><b><span style=\"color:red; font-size:10px\">text</span></b></span>\r\n\t\t\t\t\t\t\t// will become: <span style=\"color:red\"><b><span style=\"font-size:10px\">text</span></b></span>\r\n\t\t\t\t\t\t\teach(dom.select(format.inline, node), function(child) {\r\n\t\t\t\t\t\t\t\tvar parent;\r\n\r\n\t\t\t\t\t\t\t\t// When wrap_links is set to false we don't want\r\n\t\t\t\t\t\t\t\t// to remove the format on children within links\r\n\t\t\t\t\t\t\t\tif (format.wrap_links === false) {\r\n\t\t\t\t\t\t\t\t\tparent = child.parentNode;\r\n\r\n\t\t\t\t\t\t\t\t\tdo {\r\n\t\t\t\t\t\t\t\t\t\tif (parent.nodeName === 'A')\r\n\t\t\t\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t\t\t} while (parent = parent.parentNode);\r\n\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\tremoveFormat(format, vars, child, format.exact ? child : null);\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t// Remove child if direct parent is of same type\r\n\t\t\t\t\t\tif (matchNode(node.parentNode, name, vars)) {\r\n\t\t\t\t\t\t\tdom.remove(node, 1);\r\n\t\t\t\t\t\t\tnode = 0;\r\n\t\t\t\t\t\t\treturn TRUE;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// Look for parent with similar style format\r\n\t\t\t\t\t\tif (format.merge_with_parents) {\r\n\t\t\t\t\t\t\tdom.getParent(node.parentNode, function(parent) {\r\n\t\t\t\t\t\t\t\tif (matchNode(parent, name, vars)) {\r\n\t\t\t\t\t\t\t\t\tdom.remove(node, 1);\r\n\t\t\t\t\t\t\t\t\tnode = 0;\r\n\t\t\t\t\t\t\t\t\treturn TRUE;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// Merge next and previous siblings if they are similar <b>text</b><b>text</b> becomes <b>texttext</b>\r\n\t\t\t\t\t\tif (node && format.merge_siblings !== false) {\r\n\t\t\t\t\t\t\tnode = mergeSiblings(getNonWhiteSpaceSibling(node), node);\r\n\t\t\t\t\t\t\tnode = mergeSiblings(node, getNonWhiteSpaceSibling(node, TRUE));\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t};\r\n\r\n\t\t\tif (format) {\r\n\t\t\t\tif (node) {\r\n\t\t\t\t\trng = dom.createRng();\r\n\r\n\t\t\t\t\trng.setStartBefore(node);\r\n\t\t\t\t\trng.setEndAfter(node);\r\n\r\n\t\t\t\t\tapplyRngStyle(expandRng(rng, formatList));\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (!isCollapsed || !format.inline || dom.select('td.mceSelected,th.mceSelected').length) {\r\n\t\t\t\t\t\t// Obtain selection node before selection is unselected by applyRngStyle()\r\n\t\t\t\t\t\tvar curSelNode = ed.selection.getNode();\r\n\r\n\t\t\t\t\t\t// Apply formatting to selection\r\n\t\t\t\t\t\ted.selection.setRng(adjustSelectionToVisibleSelection());\r\n\t\t\t\t\t\tbookmark = selection.getBookmark();\r\n\t\t\t\t\t\tapplyRngStyle(expandRng(selection.getRng(TRUE), formatList), bookmark);\r\n\r\n\t\t\t\t\t\t// Colored nodes should be underlined so that the color of the underline matches the text color.\r\n\t\t\t\t\t\tif (format.styles && (format.styles.color || format.styles.textDecoration)) {\r\n\t\t\t\t\t\t\ttinymce.walk(curSelNode, processUnderlineAndColor, 'childNodes');\r\n\t\t\t\t\t\t\tprocessUnderlineAndColor(curSelNode);\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tselection.moveToBookmark(bookmark);\r\n\t\t\t\t\t\tselection.setRng(moveStart(selection.getRng(TRUE)));\r\n\t\t\t\t\t\ted.nodeChanged();\r\n\t\t\t\t\t} else\r\n\t\t\t\t\t\tperformCaretAction('apply', name, vars);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tfunction remove(name, vars, node) {\r\n\t\t\tvar formatList = get(name), format = formatList[0], bookmark, i, rng;\r\n\t\t\tfunction moveStart(rng) {\r\n\t\t\t\tvar container = rng.startContainer,\r\n\t\t\t\t\toffset = rng.startOffset,\r\n\t\t\t\t\twalker, node, nodes, tmpNode;\r\n\r\n\t\t\t\t// Convert text node into index if possible\r\n\t\t\t\tif (container.nodeType == 3 && offset >= container.nodeValue.length - 1) {\r\n\t\t\t\t\tcontainer = container.parentNode;\r\n\t\t\t\t\toffset = nodeIndex(container) + 1;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Move startContainer/startOffset in to a suitable node\r\n\t\t\t\tif (container.nodeType == 1) {\r\n\t\t\t\t\tnodes = container.childNodes;\r\n\t\t\t\t\tcontainer = nodes[Math.min(offset, nodes.length - 1)];\r\n\t\t\t\t\twalker = new TreeWalker(container);\r\n\r\n\t\t\t\t\t// If offset is at end of the parent node walk to the next one\r\n\t\t\t\t\tif (offset > nodes.length - 1)\r\n\t\t\t\t\t\twalker.next();\r\n\r\n\t\t\t\t\tfor (node = walker.current(); node; node = walker.next()) {\r\n\t\t\t\t\t\tif (node.nodeType == 3 && !isWhiteSpaceNode(node)) {\r\n\t\t\t\t\t\t\t// IE has a \"neat\" feature where it moves the start node into the closest element\r\n\t\t\t\t\t\t\t// we can avoid this by inserting an element before it and then remove it after we set the selection\r\n\t\t\t\t\t\t\ttmpNode = dom.create('a', null, INVISIBLE_CHAR);\r\n\t\t\t\t\t\t\tnode.parentNode.insertBefore(tmpNode, node);\r\n\r\n\t\t\t\t\t\t\t// Set selection and remove tmpNode\r\n\t\t\t\t\t\t\trng.setStart(node, 0);\r\n\t\t\t\t\t\t\tselection.setRng(rng);\r\n\t\t\t\t\t\t\tdom.remove(tmpNode);\r\n\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\t\t\t// Merges the styles for each node\r\n\t\t\tfunction process(node) {\r\n\t\t\t\tvar children, i, l;\r\n\r\n\t\t\t\t// Grab the children first since the nodelist might be changed\r\n\t\t\t\tchildren = tinymce.grep(node.childNodes);\r\n\r\n\t\t\t\t// Process current node\r\n\t\t\t\tfor (i = 0, l = formatList.length; i < l; i++) {\r\n\t\t\t\t\tif (removeFormat(formatList[i], vars, node, node))\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Process the children\r\n\t\t\t\tif (format.deep) {\r\n\t\t\t\t\tfor (i = 0, l = children.length; i < l; i++)\r\n\t\t\t\t\t\tprocess(children[i]);\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\t\t\tfunction findFormatRoot(container) {\r\n\t\t\t\tvar formatRoot;\r\n\r\n\t\t\t\t// Find format root\r\n\t\t\t\teach(getParents(container.parentNode).reverse(), function(parent) {\r\n\t\t\t\t\tvar format;\r\n\r\n\t\t\t\t\t// Find format root element\r\n\t\t\t\t\tif (!formatRoot && parent.id != '_start' && parent.id != '_end') {\r\n\t\t\t\t\t\t// Is the node matching the format we are looking for\r\n\t\t\t\t\t\tformat = matchNode(parent, name, vars);\r\n\t\t\t\t\t\tif (format && format.split !== false)\r\n\t\t\t\t\t\t\tformatRoot = parent;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\treturn formatRoot;\r\n\t\t\t};\r\n\r\n\t\t\tfunction wrapAndSplit(format_root, container, target, split) {\r\n\t\t\t\tvar parent, clone, lastClone, firstClone, i, formatRootParent;\r\n\r\n\t\t\t\t// Format root found then clone formats and split it\r\n\t\t\t\tif (format_root) {\r\n\t\t\t\t\tformatRootParent = format_root.parentNode;\r\n\r\n\t\t\t\t\tfor (parent = container.parentNode; parent && parent != formatRootParent; parent = parent.parentNode) {\r\n\t\t\t\t\t\tclone = parent.cloneNode(FALSE);\r\n\r\n\t\t\t\t\t\tfor (i = 0; i < formatList.length; i++) {\r\n\t\t\t\t\t\t\tif (removeFormat(formatList[i], vars, clone, clone)) {\r\n\t\t\t\t\t\t\t\tclone = 0;\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// Build wrapper node\r\n\t\t\t\t\t\tif (clone) {\r\n\t\t\t\t\t\t\tif (lastClone)\r\n\t\t\t\t\t\t\t\tclone.appendChild(lastClone);\r\n\r\n\t\t\t\t\t\t\tif (!firstClone)\r\n\t\t\t\t\t\t\t\tfirstClone = clone;\r\n\r\n\t\t\t\t\t\t\tlastClone = clone;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Never split block elements if the format is mixed\r\n\t\t\t\t\tif (split && (!format.mixed || !isBlock(format_root)))\r\n\t\t\t\t\t\tcontainer = dom.split(format_root, container);\r\n\r\n\t\t\t\t\t// Wrap container in cloned formats\r\n\t\t\t\t\tif (lastClone) {\r\n\t\t\t\t\t\ttarget.parentNode.insertBefore(lastClone, target);\r\n\t\t\t\t\t\tfirstClone.appendChild(target);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn container;\r\n\t\t\t};\r\n\r\n\t\t\tfunction splitToFormatRoot(container) {\r\n\t\t\t\treturn wrapAndSplit(findFormatRoot(container), container, container, true);\r\n\t\t\t};\r\n\r\n\t\t\tfunction unwrap(start) {\r\n\t\t\t\tvar node = dom.get(start ? '_start' : '_end'),\r\n\t\t\t\t\tout = node[start ? 'firstChild' : 'lastChild'];\r\n\r\n\t\t\t\t// If the end is placed within the start the result will be removed\r\n\t\t\t\t// So this checks if the out node is a bookmark node if it is it\r\n\t\t\t\t// checks for another more suitable node\r\n\t\t\t\tif (isBookmarkNode(out))\r\n\t\t\t\t\tout = out[start ? 'firstChild' : 'lastChild'];\r\n\r\n\t\t\t\tdom.remove(node, true);\r\n\r\n\t\t\t\treturn out;\r\n\t\t\t};\r\n\r\n\t\t\tfunction removeRngStyle(rng) {\r\n\t\t\t\tvar startContainer, endContainer;\r\n\r\n\t\t\t\trng = expandRng(rng, formatList, TRUE);\r\n\r\n\t\t\t\tif (format.split) {\r\n\t\t\t\t\tstartContainer = getContainer(rng, TRUE);\r\n\t\t\t\t\tendContainer = getContainer(rng);\r\n\r\n\t\t\t\t\tif (startContainer != endContainer) {\r\n\t\t\t\t\t\t// Wrap start/end nodes in span element since these might be cloned/moved\r\n\t\t\t\t\t\tstartContainer = wrap(startContainer, 'span', {id : '_start', 'data-mce-type' : 'bookmark'});\r\n\t\t\t\t\t\tendContainer = wrap(endContainer, 'span', {id : '_end', 'data-mce-type' : 'bookmark'});\r\n\r\n\t\t\t\t\t\t// Split start/end\r\n\t\t\t\t\t\tsplitToFormatRoot(startContainer);\r\n\t\t\t\t\t\tsplitToFormatRoot(endContainer);\r\n\r\n\t\t\t\t\t\t// Unwrap start/end to get real elements again\r\n\t\t\t\t\t\tstartContainer = unwrap(TRUE);\r\n\t\t\t\t\t\tendContainer = unwrap();\r\n\t\t\t\t\t} else\r\n\t\t\t\t\t\tstartContainer = endContainer = splitToFormatRoot(startContainer);\r\n\r\n\t\t\t\t\t// Update range positions since they might have changed after the split operations\r\n\t\t\t\t\trng.startContainer = startContainer.parentNode;\r\n\t\t\t\t\trng.startOffset = nodeIndex(startContainer);\r\n\t\t\t\t\trng.endContainer = endContainer.parentNode;\r\n\t\t\t\t\trng.endOffset = nodeIndex(endContainer) + 1;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Remove items between start/end\r\n\t\t\t\trangeUtils.walk(rng, function(nodes) {\r\n\t\t\t\t\teach(nodes, function(node) {\r\n\t\t\t\t\t\tprocess(node);\r\n\r\n\t\t\t\t\t\t// Remove parent span if it only contains text-decoration: underline, yet a parent node is also underlined.\r\n\t\t\t\t\t\tif (node.nodeType === 1 && ed.dom.getStyle(node, 'text-decoration') === 'underline' && node.parentNode && getTextDecoration(node.parentNode) === 'underline') {\r\n\t\t\t\t\t\t\tremoveFormat({'deep': false, 'exact': true, 'inline': 'span', 'styles': {'textDecoration' : 'underline'}}, null, node);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t};\r\n\r\n\t\t\t// Handle node\r\n\t\t\tif (node) {\r\n\t\t\t\trng = dom.createRng();\r\n\t\t\t\trng.setStartBefore(node);\r\n\t\t\t\trng.setEndAfter(node);\r\n\t\t\t\tremoveRngStyle(rng);\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tif (!selection.isCollapsed() || !format.inline || dom.select('td.mceSelected,th.mceSelected').length) {\r\n\t\t\t\tbookmark = selection.getBookmark();\r\n\t\t\t\tremoveRngStyle(selection.getRng(TRUE));\r\n\t\t\t\tselection.moveToBookmark(bookmark);\r\n\r\n\t\t\t\t// Check if start element still has formatting then we are at: \"<b>text|</b>text\" and need to move the start into the next text node\r\n\t\t\t\tif (format.inline && match(name, vars, selection.getStart())) {\r\n\t\t\t\t\tmoveStart(selection.getRng(true));\r\n\t\t\t\t}\r\n\r\n\t\t\t\ted.nodeChanged();\r\n\t\t\t} else\r\n\t\t\t\tperformCaretAction('remove', name, vars);\r\n\t\t};\r\n\r\n\t\tfunction toggle(name, vars, node) {\r\n\t\t\tvar fmt = get(name);\r\n\r\n\t\t\tif (match(name, vars, node) && (!('toggle' in fmt[0]) || fmt[0]['toggle']))\r\n\t\t\t\tremove(name, vars, node);\r\n\t\t\telse\r\n\t\t\t\tapply(name, vars, node);\r\n\t\t};\r\n\r\n\t\tfunction matchNode(node, name, vars, similar) {\r\n\t\t\tvar formatList = get(name), format, i, classes;\r\n\r\n\t\t\tfunction matchItems(node, format, item_name) {\r\n\t\t\t\tvar key, value, items = format[item_name], i;\r\n\r\n\t\t\t\t// Custom match\r\n\t\t\t\tif (format.onmatch) {\r\n\t\t\t\t\treturn format.onmatch(node, format, item_name);\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Check all items\r\n\t\t\t\tif (items) {\r\n\t\t\t\t\t// Non indexed object\r\n\t\t\t\t\tif (items.length === undefined) {\r\n\t\t\t\t\t\tfor (key in items) {\r\n\t\t\t\t\t\t\tif (items.hasOwnProperty(key)) {\r\n\t\t\t\t\t\t\t\tif (item_name === 'attributes')\r\n\t\t\t\t\t\t\t\t\tvalue = dom.getAttrib(node, key);\r\n\t\t\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\t\t\tvalue = getStyle(node, key);\r\n\r\n\t\t\t\t\t\t\t\tif (similar && !value && !format.exact)\r\n\t\t\t\t\t\t\t\t\treturn;\r\n\r\n\t\t\t\t\t\t\t\tif ((!similar || format.exact) && !isEq(value, replaceVars(items[key], vars)))\r\n\t\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t// Only one match needed for indexed arrays\r\n\t\t\t\t\t\tfor (i = 0; i < items.length; i++) {\r\n\t\t\t\t\t\t\tif (item_name === 'attributes' ? dom.getAttrib(node, items[i]) : getStyle(node, items[i]))\r\n\t\t\t\t\t\t\t\treturn format;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn format;\r\n\t\t\t};\r\n\r\n\t\t\tif (formatList && node) {\r\n\t\t\t\t// Check each format in list\r\n\t\t\t\tfor (i = 0; i < formatList.length; i++) {\r\n\t\t\t\t\tformat = formatList[i];\r\n\r\n\t\t\t\t\t// Name name, attributes, styles and classes\r\n\t\t\t\t\tif (matchName(node, format) && matchItems(node, format, 'attributes') && matchItems(node, format, 'styles')) {\r\n\t\t\t\t\t\t// Match classes\r\n\t\t\t\t\t\tif (classes = format.classes) {\r\n\t\t\t\t\t\t\tfor (i = 0; i < classes.length; i++) {\r\n\t\t\t\t\t\t\t\tif (!dom.hasClass(node, classes[i]))\r\n\t\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\treturn format;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tfunction match(name, vars, node) {\r\n\t\t\tvar startNode, i;\r\n\r\n\t\t\tfunction matchParents(node) {\r\n\t\t\t\t// Find first node with similar format settings\r\n\t\t\t\tnode = dom.getParent(node, function(node) {\r\n\t\t\t\t\treturn !!matchNode(node, name, vars, true);\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// Do an exact check on the similar format element\r\n\t\t\t\treturn matchNode(node, name, vars);\r\n\t\t\t};\r\n\r\n\t\t\t// Check specified node\r\n\t\t\tif (node)\r\n\t\t\t\treturn matchParents(node);\r\n\r\n\t\t\t// Check pending formats\r\n\t\t\tif (selection.isCollapsed()) {\r\n\t\t\t\tfor (i = pendingFormats.apply.length - 1; i >= 0; i--) {\r\n\t\t\t\t\tif (pendingFormats.apply[i].name == name)\r\n\t\t\t\t\t\treturn true;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tfor (i = pendingFormats.remove.length - 1; i >= 0; i--) {\r\n\t\t\t\t\tif (pendingFormats.remove[i].name == name)\r\n\t\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn matchParents(selection.getNode());\r\n\t\t\t}\r\n\r\n\t\t\t// Check selected node\r\n\t\t\tnode = selection.getNode();\r\n\t\t\tif (matchParents(node))\r\n\t\t\t\treturn TRUE;\r\n\r\n\t\t\t// Check start node if it's different\r\n\t\t\tstartNode = selection.getStart();\r\n\t\t\tif (startNode != node) {\r\n\t\t\t\tif (matchParents(startNode))\r\n\t\t\t\t\treturn TRUE;\r\n\t\t\t}\r\n\r\n\t\t\treturn FALSE;\r\n\t\t};\r\n\r\n\t\tfunction matchAll(names, vars) {\r\n\t\t\tvar startElement, matchedFormatNames = [], checkedMap = {}, i, ni, name;\r\n\r\n\t\t\t// If the selection is collapsed then check pending formats\r\n\t\t\tif (selection.isCollapsed()) {\r\n\t\t\t\tfor (ni = 0; ni < names.length; ni++) {\r\n\t\t\t\t\t// If the name is to be removed, then stop it from being added\r\n\t\t\t\t\tfor (i = pendingFormats.remove.length - 1; i >= 0; i--) {\r\n\t\t\t\t\t\tname = names[ni];\r\n\r\n\t\t\t\t\t\tif (pendingFormats.remove[i].name == name) {\r\n\t\t\t\t\t\t\tcheckedMap[name] = true;\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// If the format is to be applied\r\n\t\t\t\tfor (i = pendingFormats.apply.length - 1; i >= 0; i--) {\r\n\t\t\t\t\tfor (ni = 0; ni < names.length; ni++) {\r\n\t\t\t\t\t\tname = names[ni];\r\n\r\n\t\t\t\t\t\tif (!checkedMap[name] && pendingFormats.apply[i].name == name) {\r\n\t\t\t\t\t\t\tcheckedMap[name] = true;\r\n\t\t\t\t\t\t\tmatchedFormatNames.push(name);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Check start of selection for formats\r\n\t\t\tstartElement = selection.getStart();\r\n\t\t\tdom.getParent(startElement, function(node) {\r\n\t\t\t\tvar i, name;\r\n\r\n\t\t\t\tfor (i = 0; i < names.length; i++) {\r\n\t\t\t\t\tname = names[i];\r\n\r\n\t\t\t\t\tif (!checkedMap[name] && matchNode(node, name, vars)) {\r\n\t\t\t\t\t\tcheckedMap[name] = true;\r\n\t\t\t\t\t\tmatchedFormatNames.push(name);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\treturn matchedFormatNames;\r\n\t\t};\r\n\r\n\t\tfunction canApply(name) {\r\n\t\t\tvar formatList = get(name), startNode, parents, i, x, selector;\r\n\r\n\t\t\tif (formatList) {\r\n\t\t\t\tstartNode = selection.getStart();\r\n\t\t\t\tparents = getParents(startNode);\r\n\r\n\t\t\t\tfor (x = formatList.length - 1; x >= 0; x--) {\r\n\t\t\t\t\tselector = formatList[x].selector;\r\n\r\n\t\t\t\t\t// Format is not selector based, then always return TRUE\r\n\t\t\t\t\tif (!selector)\r\n\t\t\t\t\t\treturn TRUE;\r\n\r\n\t\t\t\t\tfor (i = parents.length - 1; i >= 0; i--) {\r\n\t\t\t\t\t\tif (dom.is(parents[i], selector))\r\n\t\t\t\t\t\t\treturn TRUE;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\treturn FALSE;\r\n\t\t};\r\n\r\n\t\t// Expose to public\r\n\t\ttinymce.extend(this, {\r\n\t\t\tget : get,\r\n\t\t\tregister : register,\r\n\t\t\tapply : apply,\r\n\t\t\tremove : remove,\r\n\t\t\ttoggle : toggle,\r\n\t\t\tmatch : match,\r\n\t\t\tmatchAll : matchAll,\r\n\t\t\tmatchNode : matchNode,\r\n\t\t\tcanApply : canApply\r\n\t\t});\r\n\r\n\t\t// Private functions\r\n\r\n\t\tfunction matchName(node, format) {\r\n\t\t\t// Check for inline match\r\n\t\t\tif (isEq(node, format.inline))\r\n\t\t\t\treturn TRUE;\r\n\r\n\t\t\t// Check for block match\r\n\t\t\tif (isEq(node, format.block))\r\n\t\t\t\treturn TRUE;\r\n\r\n\t\t\t// Check for selector match\r\n\t\t\tif (format.selector)\r\n\t\t\t\treturn dom.is(node, format.selector);\r\n\t\t};\r\n\r\n\t\tfunction isEq(str1, str2) {\r\n\t\t\tstr1 = str1 || '';\r\n\t\t\tstr2 = str2 || '';\r\n\r\n\t\t\tstr1 = '' + (str1.nodeName || str1);\r\n\t\t\tstr2 = '' + (str2.nodeName || str2);\r\n\r\n\t\t\treturn str1.toLowerCase() == str2.toLowerCase();\r\n\t\t};\r\n\r\n\t\tfunction getStyle(node, name) {\r\n\t\t\tvar styleVal = dom.getStyle(node, name);\r\n\r\n\t\t\t// Force the format to hex\r\n\t\t\tif (name == 'color' || name == 'backgroundColor')\r\n\t\t\t\tstyleVal = dom.toHex(styleVal);\r\n\r\n\t\t\t// Opera will return bold as 700\r\n\t\t\tif (name == 'fontWeight' && styleVal == 700)\r\n\t\t\t\tstyleVal = 'bold';\r\n\r\n\t\t\treturn '' + styleVal;\r\n\t\t};\r\n\r\n\t\tfunction replaceVars(value, vars) {\r\n\t\t\tif (typeof(value) != \"string\")\r\n\t\t\t\tvalue = value(vars);\r\n\t\t\telse if (vars) {\r\n\t\t\t\tvalue = value.replace(/%(\\w+)/g, function(str, name) {\r\n\t\t\t\t\treturn vars[name] || str;\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\treturn value;\r\n\t\t};\r\n\r\n\t\tfunction isWhiteSpaceNode(node) {\r\n\t\t\treturn node && node.nodeType === 3 && /^([\\s\\r\\n]+|)$/.test(node.nodeValue);\r\n\t\t};\r\n\r\n\t\tfunction wrap(node, name, attrs) {\r\n\t\t\tvar wrapper = dom.create(name, attrs);\r\n\r\n\t\t\tnode.parentNode.insertBefore(wrapper, node);\r\n\t\t\twrapper.appendChild(node);\r\n\r\n\t\t\treturn wrapper;\r\n\t\t};\r\n\r\n\t\tfunction expandRng(rng, format, remove) {\r\n\t\t\tvar startContainer = rng.startContainer,\r\n\t\t\t\tstartOffset = rng.startOffset,\r\n\t\t\t\tendContainer = rng.endContainer,\r\n\t\t\t\tendOffset = rng.endOffset, sibling, lastIdx, leaf;\r\n\r\n\t\t\t// This function walks up the tree if there is no siblings before/after the node\r\n\t\t\tfunction findParentContainer(container, child_name, sibling_name, root) {\r\n\t\t\t\tvar parent, child;\r\n\r\n\t\t\t\troot = root || dom.getRoot();\r\n\r\n\t\t\t\tfor (;;) {\r\n\t\t\t\t\t// Check if we can move up are we at root level or body level\r\n\t\t\t\t\tparent = container.parentNode;\r\n\r\n\t\t\t\t\t// Stop expanding on block elements or root depending on format\r\n\t\t\t\t\tif (parent == root || (!format[0].block_expand && isBlock(parent)))\r\n\t\t\t\t\t\treturn container;\r\n\r\n\t\t\t\t\tfor (sibling = parent[child_name]; sibling && sibling != container; sibling = sibling[sibling_name]) {\r\n\t\t\t\t\t\tif (sibling.nodeType == 1 && !isBookmarkNode(sibling))\r\n\t\t\t\t\t\t\treturn container;\r\n\r\n\t\t\t\t\t\tif (sibling.nodeType == 3 && !isWhiteSpaceNode(sibling))\r\n\t\t\t\t\t\t\treturn container;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tcontainer = container.parentNode;\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn container;\r\n\t\t\t};\r\n\r\n\t\t\t// This function walks down the tree to find the leaf at the selection.\r\n\t\t\t// The offset is also returned as if node initially a leaf, the offset may be in the middle of the text node.\r\n\t\t\tfunction findLeaf(node, offset) {\r\n\t\t\t\tif (offset === undefined)\r\n\t\t\t\t\toffset = node.nodeType === 3 ? node.length : node.childNodes.length;\r\n\t\t\t\twhile (node && node.hasChildNodes()) {\r\n\t\t\t\t\tnode = node.childNodes[offset];\r\n\t\t\t\t\tif (node)\r\n\t\t\t\t\t\toffset = node.nodeType === 3 ? node.length : node.childNodes.length;\r\n\t\t\t\t}\r\n\t\t\t\treturn { node: node, offset: offset };\r\n\t\t\t}\r\n\r\n\t\t\t// If index based start position then resolve it\r\n\t\t\tif (startContainer.nodeType == 1 && startContainer.hasChildNodes()) {\r\n\t\t\t\tlastIdx = startContainer.childNodes.length - 1;\r\n\t\t\t\tstartContainer = startContainer.childNodes[startOffset > lastIdx ? lastIdx : startOffset];\r\n\r\n\t\t\t\tif (startContainer.nodeType == 3)\r\n\t\t\t\t\tstartOffset = 0;\r\n\t\t\t}\r\n\r\n\t\t\t// If index based end position then resolve it\r\n\t\t\tif (endContainer.nodeType == 1 && endContainer.hasChildNodes()) {\r\n\t\t\t\tlastIdx = endContainer.childNodes.length - 1;\r\n\t\t\t\tendContainer = endContainer.childNodes[endOffset > lastIdx ? lastIdx : endOffset - 1];\r\n\r\n\t\t\t\tif (endContainer.nodeType == 3)\r\n\t\t\t\t\tendOffset = endContainer.nodeValue.length;\r\n\t\t\t}\r\n\r\n\t\t\t// Exclude bookmark nodes if possible\r\n\t\t\tif (isBookmarkNode(startContainer.parentNode))\r\n\t\t\t\tstartContainer = startContainer.parentNode;\r\n\r\n\t\t\tif (isBookmarkNode(startContainer))\r\n\t\t\t\tstartContainer = startContainer.nextSibling || startContainer;\r\n\r\n\t\t\tif (isBookmarkNode(endContainer.parentNode)) {\r\n\t\t\t\tendOffset = dom.nodeIndex(endContainer);\r\n\t\t\t\tendContainer = endContainer.parentNode;\r\n\t\t\t}\r\n\r\n\t\t\tif (isBookmarkNode(endContainer) && endContainer.previousSibling) {\r\n\t\t\t\tendContainer = endContainer.previousSibling;\r\n\t\t\t\tendOffset = endContainer.length;\r\n\t\t\t}\r\n\r\n\t\t\tif (format[0].inline) {\r\n\t\t\t\t// Avoid applying formatting to a trailing space.\r\n\t\t\t\tleaf = findLeaf(endContainer, endOffset);\r\n\t\t\t\tif (leaf.node) {\r\n\t\t\t\t\twhile (leaf.node && leaf.offset === 0 && leaf.node.previousSibling)\r\n\t\t\t\t\t\tleaf = findLeaf(leaf.node.previousSibling);\r\n\r\n\t\t\t\t\tif (leaf.node && leaf.offset > 0 && leaf.node.nodeType === 3 &&\r\n\t\t\t\t\t\t\tleaf.node.nodeValue.charAt(leaf.offset - 1) === ' ') {\r\n\r\n\t\t\t\t\t\tif (leaf.offset > 1) {\r\n\t\t\t\t\t\t\tendContainer = leaf.node;\r\n\t\t\t\t\t\t\tendContainer.splitText(leaf.offset - 1);\r\n\t\t\t\t\t\t} else if (leaf.node.previousSibling) {\r\n\t\t\t\t\t\t\tendContainer = leaf.node.previousSibling;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t// Move start/end point up the tree if the leaves are sharp and if we are in different containers\r\n\t\t\t// Example * becomes !: !<p><b><i>*text</i><i>text*</i></b></p>!\r\n\t\t\t// This will reduce the number of wrapper elements that needs to be created\r\n\t\t\t// Move start point up the tree\r\n\t\t\tif (format[0].inline || format[0].block_expand) {\r\n\t\t\t\tstartContainer = findParentContainer(startContainer, 'firstChild', 'nextSibling');\r\n\t\t\t\tendContainer = findParentContainer(endContainer, 'lastChild', 'previousSibling');\r\n\t\t\t}\r\n\r\n\t\t\t// Expand start/end container to matching selector\r\n\t\t\tif (format[0].selector && format[0].expand !== FALSE && !format[0].inline) {\r\n\t\t\t\tfunction findSelectorEndPoint(container, sibling_name) {\r\n\t\t\t\t\tvar parents, i, y, curFormat;\r\n\r\n\t\t\t\t\tif (container.nodeType == 3 && container.nodeValue.length == 0 && container[sibling_name])\r\n\t\t\t\t\t\tcontainer = container[sibling_name];\r\n\r\n\t\t\t\t\tparents = getParents(container);\r\n\t\t\t\t\tfor (i = 0; i < parents.length; i++) {\r\n\t\t\t\t\t\tfor (y = 0; y < format.length; y++) {\r\n\t\t\t\t\t\t\tcurFormat = format[y];\r\n\r\n\t\t\t\t\t\t\t// If collapsed state is set then skip formats that doesn't match that\r\n\t\t\t\t\t\t\tif (\"collapsed\" in curFormat && curFormat.collapsed !== rng.collapsed)\r\n\t\t\t\t\t\t\t\tcontinue;\r\n\r\n\t\t\t\t\t\t\tif (dom.is(parents[i], curFormat.selector))\r\n\t\t\t\t\t\t\t\treturn parents[i];\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\treturn container;\r\n\t\t\t\t};\r\n\r\n\t\t\t\t// Find new startContainer/endContainer if there is better one\r\n\t\t\t\tstartContainer = findSelectorEndPoint(startContainer, 'previousSibling');\r\n\t\t\t\tendContainer = findSelectorEndPoint(endContainer, 'nextSibling');\r\n\t\t\t}\r\n\r\n\t\t\t// Expand start/end container to matching block element or text node\r\n\t\t\tif (format[0].block || format[0].selector) {\r\n\t\t\t\tfunction findBlockEndPoint(container, sibling_name, sibling_name2) {\r\n\t\t\t\t\tvar node;\r\n\r\n\t\t\t\t\t// Expand to block of similar type\r\n\t\t\t\t\tif (!format[0].wrapper)\r\n\t\t\t\t\t\tnode = dom.getParent(container, format[0].block);\r\n\r\n\t\t\t\t\t// Expand to first wrappable block element or any block element\r\n\t\t\t\t\tif (!node)\r\n\t\t\t\t\t\tnode = dom.getParent(container.nodeType == 3 ? container.parentNode : container, isBlock);\r\n\r\n\t\t\t\t\t// Exclude inner lists from wrapping\r\n\t\t\t\t\tif (node && format[0].wrapper)\r\n\t\t\t\t\t\tnode = getParents(node, 'ul,ol').reverse()[0] || node;\r\n\r\n\t\t\t\t\t// Didn't find a block element look for first/last wrappable element\r\n\t\t\t\t\tif (!node) {\r\n\t\t\t\t\t\tnode = container;\r\n\r\n\t\t\t\t\t\twhile (node[sibling_name] && !isBlock(node[sibling_name])) {\r\n\t\t\t\t\t\t\tnode = node[sibling_name];\r\n\r\n\t\t\t\t\t\t\t// Break on BR but include it will be removed later on\r\n\t\t\t\t\t\t\t// we can't remove it now since we need to check if it can be wrapped\r\n\t\t\t\t\t\t\tif (isEq(node, 'br'))\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\treturn node || container;\r\n\t\t\t\t};\r\n\r\n\t\t\t\t// Find new startContainer/endContainer if there is better one\r\n\t\t\t\tstartContainer = findBlockEndPoint(startContainer, 'previousSibling');\r\n\t\t\t\tendContainer = findBlockEndPoint(endContainer, 'nextSibling');\r\n\r\n\t\t\t\t// Non block element then try to expand up the leaf\r\n\t\t\t\tif (format[0].block) {\r\n\t\t\t\t\tif (!isBlock(startContainer))\r\n\t\t\t\t\t\tstartContainer = findParentContainer(startContainer, 'firstChild', 'nextSibling');\r\n\r\n\t\t\t\t\tif (!isBlock(endContainer))\r\n\t\t\t\t\t\tendContainer = findParentContainer(endContainer, 'lastChild', 'previousSibling');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Setup index for startContainer\r\n\t\t\tif (startContainer.nodeType == 1) {\r\n\t\t\t\tstartOffset = nodeIndex(startContainer);\r\n\t\t\t\tstartContainer = startContainer.parentNode;\r\n\t\t\t}\r\n\r\n\t\t\t// Setup index for endContainer\r\n\t\t\tif (endContainer.nodeType == 1) {\r\n\t\t\t\tendOffset = nodeIndex(endContainer) + 1;\r\n\t\t\t\tendContainer = endContainer.parentNode;\r\n\t\t\t}\r\n\r\n\t\t\t// Return new range like object\r\n\t\t\treturn {\r\n\t\t\t\tstartContainer : startContainer,\r\n\t\t\t\tstartOffset : startOffset,\r\n\t\t\t\tendContainer : endContainer,\r\n\t\t\t\tendOffset : endOffset\r\n\t\t\t};\r\n\t\t}\r\n\r\n\t\tfunction removeFormat(format, vars, node, compare_node) {\r\n\t\t\tvar i, attrs, stylesModified;\r\n\r\n\t\t\t// Check if node matches format\r\n\t\t\tif (!matchName(node, format))\r\n\t\t\t\treturn FALSE;\r\n\r\n\t\t\t// Should we compare with format attribs and styles\r\n\t\t\tif (format.remove != 'all') {\r\n\t\t\t\t// Remove styles\r\n\t\t\t\teach(format.styles, function(value, name) {\r\n\t\t\t\t\tvalue = replaceVars(value, vars);\r\n\r\n\t\t\t\t\t// Indexed array\r\n\t\t\t\t\tif (typeof(name) === 'number') {\r\n\t\t\t\t\t\tname = value;\r\n\t\t\t\t\t\tcompare_node = 0;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (!compare_node || isEq(getStyle(compare_node, name), value))\r\n\t\t\t\t\t\tdom.setStyle(node, name, '');\r\n\r\n\t\t\t\t\tstylesModified = 1;\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// Remove style attribute if it's empty\r\n\t\t\t\tif (stylesModified && dom.getAttrib(node, 'style') == '') {\r\n\t\t\t\t\tnode.removeAttribute('style');\r\n\t\t\t\t\tnode.removeAttribute('data-mce-style');\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Remove attributes\r\n\t\t\t\teach(format.attributes, function(value, name) {\r\n\t\t\t\t\tvar valueOut;\r\n\r\n\t\t\t\t\tvalue = replaceVars(value, vars);\r\n\r\n\t\t\t\t\t// Indexed array\r\n\t\t\t\t\tif (typeof(name) === 'number') {\r\n\t\t\t\t\t\tname = value;\r\n\t\t\t\t\t\tcompare_node = 0;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (!compare_node || isEq(dom.getAttrib(compare_node, name), value)) {\r\n\t\t\t\t\t\t// Keep internal classes\r\n\t\t\t\t\t\tif (name == 'class') {\r\n\t\t\t\t\t\t\tvalue = dom.getAttrib(node, name);\r\n\t\t\t\t\t\t\tif (value) {\r\n\t\t\t\t\t\t\t\t// Build new class value where everything is removed except the internal prefixed classes\r\n\t\t\t\t\t\t\t\tvalueOut = '';\r\n\t\t\t\t\t\t\t\teach(value.split(/\\s+/), function(cls) {\r\n\t\t\t\t\t\t\t\t\tif (/mce\\w+/.test(cls))\r\n\t\t\t\t\t\t\t\t\t\tvalueOut += (valueOut ? ' ' : '') + cls;\r\n\t\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\t\t// We got some internal classes left\r\n\t\t\t\t\t\t\t\tif (valueOut) {\r\n\t\t\t\t\t\t\t\t\tdom.setAttrib(node, name, valueOut);\r\n\t\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// IE6 has a bug where the attribute doesn't get removed correctly\r\n\t\t\t\t\t\tif (name == \"class\")\r\n\t\t\t\t\t\t\tnode.removeAttribute('className');\r\n\r\n\t\t\t\t\t\t// Remove mce prefixed attributes\r\n\t\t\t\t\t\tif (MCE_ATTR_RE.test(name))\r\n\t\t\t\t\t\t\tnode.removeAttribute('data-mce-' + name);\r\n\r\n\t\t\t\t\t\tnode.removeAttribute(name);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// Remove classes\r\n\t\t\t\teach(format.classes, function(value) {\r\n\t\t\t\t\tvalue = replaceVars(value, vars);\r\n\r\n\t\t\t\t\tif (!compare_node || dom.hasClass(compare_node, value))\r\n\t\t\t\t\t\tdom.removeClass(node, value);\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// Check for non internal attributes\r\n\t\t\t\tattrs = dom.getAttribs(node);\r\n\t\t\t\tfor (i = 0; i < attrs.length; i++) {\r\n\t\t\t\t\tif (attrs[i].nodeName.indexOf('_') !== 0)\r\n\t\t\t\t\t\treturn FALSE;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Remove the inline child if it's empty for example <b> or <span>\r\n\t\t\tif (format.remove != 'none') {\r\n\t\t\t\tremoveNode(node, format);\r\n\t\t\t\treturn TRUE;\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tfunction removeNode(node, format) {\r\n\t\t\tvar parentNode = node.parentNode, rootBlockElm;\r\n\r\n\t\t\tif (format.block) {\r\n\t\t\t\tif (!forcedRootBlock) {\r\n\t\t\t\t\tfunction find(node, next, inc) {\r\n\t\t\t\t\t\tnode = getNonWhiteSpaceSibling(node, next, inc);\r\n\r\n\t\t\t\t\t\treturn !node || (node.nodeName == 'BR' || isBlock(node));\r\n\t\t\t\t\t};\r\n\r\n\t\t\t\t\t// Append BR elements if needed before we remove the block\r\n\t\t\t\t\tif (isBlock(node) && !isBlock(parentNode)) {\r\n\t\t\t\t\t\tif (!find(node, FALSE) && !find(node.firstChild, TRUE, 1))\r\n\t\t\t\t\t\t\tnode.insertBefore(dom.create('br'), node.firstChild);\r\n\r\n\t\t\t\t\t\tif (!find(node, TRUE) && !find(node.lastChild, FALSE, 1))\r\n\t\t\t\t\t\t\tnode.appendChild(dom.create('br'));\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\t// Wrap the block in a forcedRootBlock if we are at the root of document\r\n\t\t\t\t\tif (parentNode == dom.getRoot()) {\r\n\t\t\t\t\t\tif (!format.list_block || !isEq(node, format.list_block)) {\r\n\t\t\t\t\t\t\teach(tinymce.grep(node.childNodes), function(node) {\r\n\t\t\t\t\t\t\t\tif (isValid(forcedRootBlock, node.nodeName.toLowerCase())) {\r\n\t\t\t\t\t\t\t\t\tif (!rootBlockElm)\r\n\t\t\t\t\t\t\t\t\t\trootBlockElm = wrap(node, forcedRootBlock);\r\n\t\t\t\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\t\t\t\trootBlockElm.appendChild(node);\r\n\t\t\t\t\t\t\t\t} else\r\n\t\t\t\t\t\t\t\t\trootBlockElm = 0;\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Never remove nodes that isn't the specified inline element if a selector is specified too\r\n\t\t\tif (format.selector && format.inline && !isEq(format.inline, node))\r\n\t\t\t\treturn;\r\n\r\n\t\t\tdom.remove(node, 1);\r\n\t\t};\r\n\r\n\t\tfunction getNonWhiteSpaceSibling(node, next, inc) {\r\n\t\t\tif (node) {\r\n\t\t\t\tnext = next ? 'nextSibling' : 'previousSibling';\r\n\r\n\t\t\t\tfor (node = inc ? node : node[next]; node; node = node[next]) {\r\n\t\t\t\t\tif (node.nodeType == 1 || !isWhiteSpaceNode(node))\r\n\t\t\t\t\t\treturn node;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tfunction isBookmarkNode(node) {\r\n\t\t\treturn node && node.nodeType == 1 && node.getAttribute('data-mce-type') == 'bookmark';\r\n\t\t};\r\n\r\n\t\tfunction mergeSiblings(prev, next) {\r\n\t\t\tvar marker, sibling, tmpSibling;\r\n\r\n\t\t\tfunction compareElements(node1, node2) {\r\n\t\t\t\t// Not the same name\r\n\t\t\t\tif (node1.nodeName != node2.nodeName)\r\n\t\t\t\t\treturn FALSE;\r\n\r\n\t\t\t\tfunction getAttribs(node) {\r\n\t\t\t\t\tvar attribs = {};\r\n\r\n\t\t\t\t\teach(dom.getAttribs(node), function(attr) {\r\n\t\t\t\t\t\tvar name = attr.nodeName.toLowerCase();\r\n\r\n\t\t\t\t\t\t// Don't compare internal attributes or style\r\n\t\t\t\t\t\tif (name.indexOf('_') !== 0 && name !== 'style')\r\n\t\t\t\t\t\t\tattribs[name] = dom.getAttrib(node, name);\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\treturn attribs;\r\n\t\t\t\t};\r\n\r\n\t\t\t\tfunction compareObjects(obj1, obj2) {\r\n\t\t\t\t\tvar value, name;\r\n\r\n\t\t\t\t\tfor (name in obj1) {\r\n\t\t\t\t\t\t// Obj1 has item obj2 doesn't have\r\n\t\t\t\t\t\tif (obj1.hasOwnProperty(name)) {\r\n\t\t\t\t\t\t\tvalue = obj2[name];\r\n\r\n\t\t\t\t\t\t\t// Obj2 doesn't have obj1 item\r\n\t\t\t\t\t\t\tif (value === undefined)\r\n\t\t\t\t\t\t\t\treturn FALSE;\r\n\r\n\t\t\t\t\t\t\t// Obj2 item has a different value\r\n\t\t\t\t\t\t\tif (obj1[name] != value)\r\n\t\t\t\t\t\t\t\treturn FALSE;\r\n\r\n\t\t\t\t\t\t\t// Delete similar value\r\n\t\t\t\t\t\t\tdelete obj2[name];\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Check if obj 2 has something obj 1 doesn't have\r\n\t\t\t\t\tfor (name in obj2) {\r\n\t\t\t\t\t\t// Obj2 has item obj1 doesn't have\r\n\t\t\t\t\t\tif (obj2.hasOwnProperty(name))\r\n\t\t\t\t\t\t\treturn FALSE;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\treturn TRUE;\r\n\t\t\t\t};\r\n\r\n\t\t\t\t// Attribs are not the same\r\n\t\t\t\tif (!compareObjects(getAttribs(node1), getAttribs(node2)))\r\n\t\t\t\t\treturn FALSE;\r\n\r\n\t\t\t\t// Styles are not the same\r\n\t\t\t\tif (!compareObjects(dom.parseStyle(dom.getAttrib(node1, 'style')), dom.parseStyle(dom.getAttrib(node2, 'style'))))\r\n\t\t\t\t\treturn FALSE;\r\n\r\n\t\t\t\treturn TRUE;\r\n\t\t\t};\r\n\r\n\t\t\t// Check if next/prev exists and that they are elements\r\n\t\t\tif (prev && next) {\r\n\t\t\t\tfunction findElementSibling(node, sibling_name) {\r\n\t\t\t\t\tfor (sibling = node; sibling; sibling = sibling[sibling_name]) {\r\n\t\t\t\t\t\tif (sibling.nodeType == 3 && sibling.nodeValue.length !== 0)\r\n\t\t\t\t\t\t\treturn node;\r\n\r\n\t\t\t\t\t\tif (sibling.nodeType == 1 && !isBookmarkNode(sibling))\r\n\t\t\t\t\t\t\treturn sibling;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\treturn node;\r\n\t\t\t\t};\r\n\r\n\t\t\t\t// If previous sibling is empty then jump over it\r\n\t\t\t\tprev = findElementSibling(prev, 'previousSibling');\r\n\t\t\t\tnext = findElementSibling(next, 'nextSibling');\r\n\r\n\t\t\t\t// Compare next and previous nodes\r\n\t\t\t\tif (compareElements(prev, next)) {\r\n\t\t\t\t\t// Append nodes between\r\n\t\t\t\t\tfor (sibling = prev.nextSibling; sibling && sibling != next;) {\r\n\t\t\t\t\t\ttmpSibling = sibling;\r\n\t\t\t\t\t\tsibling = sibling.nextSibling;\r\n\t\t\t\t\t\tprev.appendChild(tmpSibling);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Remove next node\r\n\t\t\t\t\tdom.remove(next);\r\n\r\n\t\t\t\t\t// Move children into prev node\r\n\t\t\t\t\teach(tinymce.grep(next.childNodes), function(node) {\r\n\t\t\t\t\t\tprev.appendChild(node);\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\treturn prev;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\treturn next;\r\n\t\t};\r\n\r\n\t\tfunction isTextBlock(name) {\r\n\t\t\treturn /^(h[1-6]|p|div|pre|address|dl|dt|dd)$/.test(name);\r\n\t\t};\r\n\r\n\t\tfunction getContainer(rng, start) {\r\n\t\t\tvar container, offset, lastIdx;\r\n\r\n\t\t\tcontainer = rng[start ? 'startContainer' : 'endContainer'];\r\n\t\t\toffset = rng[start ? 'startOffset' : 'endOffset'];\r\n\r\n\t\t\tif (container.nodeType == 1) {\r\n\t\t\t\tlastIdx = container.childNodes.length - 1;\r\n\r\n\t\t\t\tif (!start && offset)\r\n\t\t\t\t\toffset--;\r\n\r\n\t\t\t\tcontainer = container.childNodes[offset > lastIdx ? lastIdx : offset];\r\n\t\t\t}\r\n\r\n\t\t\treturn container;\r\n\t\t};\r\n\r\n\t\tfunction performCaretAction(type, name, vars) {\r\n\t\t\tvar i, currentPendingFormats = pendingFormats[type],\r\n\t\t\t\totherPendingFormats = pendingFormats[type == 'apply' ? 'remove' : 'apply'];\r\n\r\n\t\t\tfunction hasPending() {\r\n\t\t\t\treturn pendingFormats.apply.length || pendingFormats.remove.length;\r\n\t\t\t};\r\n\r\n\t\t\tfunction resetPending() {\r\n\t\t\t\tpendingFormats.apply = [];\r\n\t\t\t\tpendingFormats.remove = [];\r\n\t\t\t};\r\n\r\n\t\t\tfunction perform(caret_node) {\r\n\t\t\t\t// Apply pending formats\r\n\t\t\t\teach(pendingFormats.apply.reverse(), function(item) {\r\n\t\t\t\t\tapply(item.name, item.vars, caret_node);\r\n\r\n\t\t\t\t\t// Colored nodes should be underlined so that the color of the underline matches the text color.\r\n\t\t\t\t\tif (item.name === 'forecolor' && item.vars.value)\r\n\t\t\t\t\t\tprocessUnderlineAndColor(caret_node.parentNode);\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// Remove pending formats\r\n\t\t\t\teach(pendingFormats.remove.reverse(), function(item) {\r\n\t\t\t\t\tremove(item.name, item.vars, caret_node);\r\n\t\t\t\t});\r\n\r\n\t\t\t\tdom.remove(caret_node, 1);\r\n\t\t\t\tresetPending();\r\n\t\t\t};\r\n\r\n\t\t\t// Check if it already exists then ignore it\r\n\t\t\tfor (i = currentPendingFormats.length - 1; i >= 0; i--) {\r\n\t\t\t\tif (currentPendingFormats[i].name == name)\r\n\t\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tcurrentPendingFormats.push({name : name, vars : vars});\r\n\r\n\t\t\t// Check if it's in the other type, then remove it\r\n\t\t\tfor (i = otherPendingFormats.length - 1; i >= 0; i--) {\r\n\t\t\t\tif (otherPendingFormats[i].name == name)\r\n\t\t\t\t\totherPendingFormats.splice(i, 1);\r\n\t\t\t}\r\n\r\n\t\t\t// Pending apply or remove formats\r\n\t\t\tif (hasPending()) {\r\n\t\t\t\ted.getDoc().execCommand('FontName', false, 'mceinline');\r\n\t\t\t\tpendingFormats.lastRng = selection.getRng();\r\n\r\n\t\t\t\t// IE will convert the current word\r\n\t\t\t\teach(dom.select('font,span'), function(node) {\r\n\t\t\t\t\tvar bookmark;\r\n\r\n\t\t\t\t\tif (isCaretNode(node)) {\r\n\t\t\t\t\t\tbookmark = selection.getBookmark();\r\n\t\t\t\t\t\tperform(node);\r\n\t\t\t\t\t\tselection.moveToBookmark(bookmark);\r\n\t\t\t\t\t\ted.nodeChanged();\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// Only register listeners once if we need to\r\n\t\t\t\tif (!pendingFormats.isListening && hasPending()) {\r\n\t\t\t\t\tpendingFormats.isListening = true;\r\n\t\t\t\t\tfunction performPendingFormat(node, textNode) {\r\n\t\t\t\t\t\tvar rng = dom.createRng();\r\n\t\t\t\t\t\tperform(node);\r\n\r\n\t\t\t\t\t\trng.setStart(textNode, textNode.nodeValue.length);\r\n\t\t\t\t\t\trng.setEnd(textNode, textNode.nodeValue.length);\r\n\t\t\t\t\t\tselection.setRng(rng);\r\n\t\t\t\t\t\ted.nodeChanged();\r\n\t\t\t\t\t}\r\n\t\t\t\t\tvar enterKeyPressed = false;\r\n\r\n\t\t\t\t\teach('onKeyDown,onKeyUp,onKeyPress,onMouseUp'.split(','), function(event) {\r\n\t\t\t\t\t\ted[event].addToTop(function(ed, e) {\r\n\t\t\t\t\t\t\tif (e.keyCode==13 && !e.shiftKey) {\r\n\t\t\t\t\t\t\t\tenterKeyPressed = true;\r\n\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t// Do we have pending formats and is the selection moved has moved\r\n\t\t\t\t\t\t\tif (hasPending() && !tinymce.dom.RangeUtils.compareRanges(pendingFormats.lastRng, selection.getRng())) {\r\n\t\t\t\t\t\t\t\tvar foundCaret = false;\r\n\t\t\t\t\t\t\t\teach(dom.select('font,span'), function(node) {\r\n\t\t\t\t\t\t\t\t\tvar textNode, rng;\r\n\r\n\t\t\t\t\t\t\t\t\t// Look for marker\r\n\t\t\t\t\t\t\t\t\tif (isCaretNode(node)) {\r\n\t\t\t\t\t\t\t\t\t\tfoundCaret = true;\r\n\t\t\t\t\t\t\t\t\t\ttextNode = node.firstChild;\r\n\r\n\t\t\t\t\t\t\t\t\t\t// Find the first text node within node\r\n\t\t\t\t\t\t\t\t\t\twhile (textNode && textNode.nodeType != 3)\r\n\t\t\t\t\t\t\t\t\t\t\ttextNode = textNode.firstChild;\r\n\r\n\t\t\t\t\t\t\t\t\t\tif (textNode) \r\n\t\t\t\t\t\t\t\t\t\t\tperformPendingFormat(node, textNode);\r\n\t\t\t\t\t\t\t\t\t\telse\r\n\t\t\t\t\t\t\t\t\t\t\tdom.remove(node);\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t// no caret - so we are \r\n\t\t\t\t\t\t\t\tif (enterKeyPressed && !foundCaret) {\r\n\t\t\t\t\t\t\t\t\tvar node = selection.getNode();\r\n\t\t\t\t\t\t\t\t\tvar textNode = node;\r\n\r\n\t\t\t\t\t\t\t\t\t// Find the first text node within node\r\n\t\t\t\t\t\t\t\t\twhile (textNode && textNode.nodeType != 3)\r\n\t\t\t\t\t\t\t\t\t\ttextNode = textNode.firstChild;\r\n\t\t\t\t\t\t\t\t\tif (textNode) {\r\n\t\t\t\t\t\t\t\t\t\tnode=textNode.parentNode;\r\n\t\t\t\t\t\t\t\t\t\twhile (!isBlock(node)){\r\n\t\t\t\t\t\t\t\t\t\t\tnode=node.parentNode;\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\tperformPendingFormat(node, textNode);\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t// Always unbind and clear pending styles on keyup\r\n\t\t\t\t\t\t\t\tif (e.type == 'keyup' || e.type == 'mouseup') {\r\n\t\t\t\t\t\t\t\t\tresetPending();\r\n\t\t\t\t\t\t\t\t\tenterKeyPressed=false;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t};\r\n\t};\r\n})(tinymce);\r\n\r\ntinymce.onAddEditor.add(function(tinymce, ed) {\r\n\tvar filters, fontSizes, dom, settings = ed.settings;\r\n\r\n\tif (settings.inline_styles) {\r\n\t\tfontSizes = tinymce.explode(settings.font_size_style_values);\r\n\r\n\t\tfunction replaceWithSpan(node, styles) {\r\n\t\t\ttinymce.each(styles, function(value, name) {\r\n\t\t\t\tif (value)\r\n\t\t\t\t\tdom.setStyle(node, name, value);\r\n\t\t\t});\r\n\r\n\t\t\tdom.rename(node, 'span');\r\n\t\t};\r\n\r\n\t\tfilters = {\r\n\t\t\tfont : function(dom, node) {\r\n\t\t\t\treplaceWithSpan(node, {\r\n\t\t\t\t\tbackgroundColor : node.style.backgroundColor,\r\n\t\t\t\t\tcolor : node.color,\r\n\t\t\t\t\tfontFamily : node.face,\r\n\t\t\t\t\tfontSize : fontSizes[parseInt(node.size) - 1]\r\n\t\t\t\t});\r\n\t\t\t},\r\n\r\n\t\t\tu : function(dom, node) {\r\n\t\t\t\treplaceWithSpan(node, {\r\n\t\t\t\t\ttextDecoration : 'underline'\r\n\t\t\t\t});\r\n\t\t\t},\r\n\r\n\t\t\tstrike : function(dom, node) {\r\n\t\t\t\treplaceWithSpan(node, {\r\n\t\t\t\t\ttextDecoration : 'line-through'\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tfunction convert(editor, params) {\r\n\t\t\tdom = editor.dom;\r\n\r\n\t\t\tif (settings.convert_fonts_to_spans) {\r\n\t\t\t\ttinymce.each(dom.select('font,u,strike', params.node), function(node) {\r\n\t\t\t\t\tfilters[node.nodeName.toLowerCase()](ed.dom, node);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\ted.onPreProcess.add(convert);\r\n\t\ted.onSetContent.add(convert);\r\n\r\n\t\ted.onInit.add(function() {\r\n\t\t\ted.selection.onSetContent.add(convert);\r\n\t\t});\r\n\t}\r\n});\r\n\r\n"
  },
  {
    "path": "newscoop/js/tinymce/utils/editable_selects.js",
    "content": "/**\r\n * editable_selects.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\nvar TinyMCE_EditableSelects = {\r\n\teditSelectElm : null,\r\n\r\n\tinit : function() {\r\n\t\tvar nl = document.getElementsByTagName(\"select\"), i, d = document, o;\r\n\r\n\t\tfor (i=0; i<nl.length; i++) {\r\n\t\t\tif (nl[i].className.indexOf('mceEditableSelect') != -1) {\r\n\t\t\t\to = new Option(tinyMCEPopup.editor.translate('value'), '__mce_add_custom__');\r\n\r\n\t\t\t\to.className = 'mceAddSelectValue';\r\n\r\n\t\t\t\tnl[i].options[nl[i].options.length] = o;\r\n\t\t\t\tnl[i].onchange = TinyMCE_EditableSelects.onChangeEditableSelect;\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n\r\n\tonChangeEditableSelect : function(e) {\r\n\t\tvar d = document, ne, se = window.event ? window.event.srcElement : e.target;\r\n\r\n\t\tif (se.options[se.selectedIndex].value == '__mce_add_custom__') {\r\n\t\t\tne = d.createElement(\"input\");\r\n\t\t\tne.id = se.id + \"_custom\";\r\n\t\t\tne.name = se.name + \"_custom\";\r\n\t\t\tne.type = \"text\";\r\n\r\n\t\t\tne.style.width = se.offsetWidth + 'px';\r\n\t\t\tse.parentNode.insertBefore(ne, se);\r\n\t\t\tse.style.display = 'none';\r\n\t\t\tne.focus();\r\n\t\t\tne.onblur = TinyMCE_EditableSelects.onBlurEditableSelectInput;\r\n\t\t\tne.onkeydown = TinyMCE_EditableSelects.onKeyDown;\r\n\t\t\tTinyMCE_EditableSelects.editSelectElm = se;\r\n\t\t}\r\n\t},\r\n\r\n\tonBlurEditableSelectInput : function() {\r\n\t\tvar se = TinyMCE_EditableSelects.editSelectElm;\r\n\r\n\t\tif (se) {\r\n\t\t\tif (se.previousSibling.value != '') {\r\n\t\t\t\taddSelectValue(document.forms[0], se.id, se.previousSibling.value, se.previousSibling.value);\r\n\t\t\t\tselectByValue(document.forms[0], se.id, se.previousSibling.value);\r\n\t\t\t} else\r\n\t\t\t\tselectByValue(document.forms[0], se.id, '');\r\n\r\n\t\t\tse.style.display = 'inline';\r\n\t\t\tse.parentNode.removeChild(se.previousSibling);\r\n\t\t\tTinyMCE_EditableSelects.editSelectElm = null;\r\n\t\t}\r\n\t},\r\n\r\n\tonKeyDown : function(e) {\r\n\t\te = e || window.event;\r\n\r\n\t\tif (e.keyCode == 13)\r\n\t\t\tTinyMCE_EditableSelects.onBlurEditableSelectInput();\r\n\t}\r\n};\r\n"
  },
  {
    "path": "newscoop/js/tinymce/utils/form_utils.js",
    "content": "/**\r\n * form_utils.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\nvar themeBaseURL = tinyMCEPopup.editor.baseURI.toAbsolute('themes/' + tinyMCEPopup.getParam(\"theme\"));\r\n\r\nfunction getColorPickerHTML(id, target_form_element) {\r\n\tvar h = \"\", dom = tinyMCEPopup.dom;\r\n\r\n\tif (label = dom.select('label[for=' + target_form_element + ']')[0]) {\r\n\t\tlabel.id = label.id || dom.uniqueId();\r\n\t}\r\n\r\n\th += '<a role=\"button\" aria-labelledby=\"' + id + '_label\" id=\"' + id + '_link\" href=\"javascript:;\" onclick=\"tinyMCEPopup.pickColor(event,\\'' + target_form_element +'\\');\" onmousedown=\"return false;\" class=\"pickcolor\">';\r\n\th += '<span id=\"' + id + '\" title=\"' + tinyMCEPopup.getLang('browse') + '\">&nbsp;<span id=\"' + id + '_label\" class=\"mceVoiceLabel mceIconOnly\" style=\"display:none;\">' + tinyMCEPopup.getLang('browse') + '</span></span></a>';\r\n\r\n\treturn h;\r\n}\r\n\r\nfunction updateColor(img_id, form_element_id) {\r\n\tdocument.getElementById(img_id).style.backgroundColor = document.forms[0].elements[form_element_id].value;\r\n}\r\n\r\nfunction setBrowserDisabled(id, state) {\r\n\tvar img = document.getElementById(id);\r\n\tvar lnk = document.getElementById(id + \"_link\");\r\n\r\n\tif (lnk) {\r\n\t\tif (state) {\r\n\t\t\tlnk.setAttribute(\"realhref\", lnk.getAttribute(\"href\"));\r\n\t\t\tlnk.removeAttribute(\"href\");\r\n\t\t\ttinyMCEPopup.dom.addClass(img, 'disabled');\r\n\t\t} else {\r\n\t\t\tif (lnk.getAttribute(\"realhref\"))\r\n\t\t\t\tlnk.setAttribute(\"href\", lnk.getAttribute(\"realhref\"));\r\n\r\n\t\t\ttinyMCEPopup.dom.removeClass(img, 'disabled');\r\n\t\t}\r\n\t}\r\n}\r\n\r\nfunction getBrowserHTML(id, target_form_element, type, prefix) {\r\n\tvar option = prefix + \"_\" + type + \"_browser_callback\", cb, html;\r\n\r\n\tcb = tinyMCEPopup.getParam(option, tinyMCEPopup.getParam(\"file_browser_callback\"));\r\n\r\n\tif (!cb)\r\n\t\treturn \"\";\r\n\r\n\thtml = \"\";\r\n\thtml += '<a id=\"' + id + '_link\" href=\"javascript:openBrowser(\\'' + id + '\\',\\'' + target_form_element + '\\', \\'' + type + '\\',\\'' + option + '\\');\" onmousedown=\"return false;\" class=\"browse\">';\r\n\thtml += '<span id=\"' + id + '\" title=\"' + tinyMCEPopup.getLang('browse') + '\">&nbsp;</span></a>';\r\n\r\n\treturn html;\r\n}\r\n\r\nfunction openBrowser(img_id, target_form_element, type, option) {\r\n\tvar img = document.getElementById(img_id);\r\n\r\n\tif (img.className != \"mceButtonDisabled\")\r\n\t\ttinyMCEPopup.openBrowser(target_form_element, type, option);\r\n}\r\n\r\nfunction selectByValue(form_obj, field_name, value, add_custom, ignore_case) {\r\n\tif (!form_obj || !form_obj.elements[field_name])\r\n\t\treturn;\r\n\r\n\tif (!value)\r\n\t\tvalue = \"\";\r\n\r\n\tvar sel = form_obj.elements[field_name];\r\n\r\n\tvar found = false;\r\n\tfor (var i=0; i<sel.options.length; i++) {\r\n\t\tvar option = sel.options[i];\r\n\r\n\t\tif (option.value == value || (ignore_case && option.value.toLowerCase() == value.toLowerCase())) {\r\n\t\t\toption.selected = true;\r\n\t\t\tfound = true;\r\n\t\t} else\r\n\t\t\toption.selected = false;\r\n\t}\r\n\r\n\tif (!found && add_custom && value != '') {\r\n\t\tvar option = new Option(value, value);\r\n\t\toption.selected = true;\r\n\t\tsel.options[sel.options.length] = option;\r\n\t\tsel.selectedIndex = sel.options.length - 1;\r\n\t}\r\n\r\n\treturn found;\r\n}\r\n\r\nfunction getSelectValue(form_obj, field_name) {\r\n\tvar elm = form_obj.elements[field_name];\r\n\r\n\tif (elm == null || elm.options == null || elm.selectedIndex === -1)\r\n\t\treturn \"\";\r\n\r\n\treturn elm.options[elm.selectedIndex].value;\r\n}\r\n\r\nfunction addSelectValue(form_obj, field_name, name, value) {\r\n\tvar s = form_obj.elements[field_name];\r\n\tvar o = new Option(name, value);\r\n\ts.options[s.options.length] = o;\r\n}\r\n\r\nfunction addClassesToList(list_id, specific_option) {\r\n\t// Setup class droplist\r\n\tvar styleSelectElm = document.getElementById(list_id);\r\n\tvar styles = tinyMCEPopup.getParam('theme_advanced_styles', false);\r\n\tstyles = tinyMCEPopup.getParam(specific_option, styles);\r\n\r\n\tif (styles) {\r\n\t\tvar stylesAr = styles.split(';');\r\n\r\n\t\tfor (var i=0; i<stylesAr.length; i++) {\r\n\t\t\tif (stylesAr != \"\") {\r\n\t\t\t\tvar key, value;\r\n\r\n\t\t\t\tkey = stylesAr[i].split('=')[0];\r\n\t\t\t\tvalue = stylesAr[i].split('=')[1];\r\n\r\n\t\t\t\tstyleSelectElm.options[styleSelectElm.length] = new Option(key, value);\r\n\t\t\t}\r\n\t\t}\r\n\t} else {\r\n\t\ttinymce.each(tinyMCEPopup.editor.dom.getClasses(), function(o) {\r\n\t\t\tstyleSelectElm.options[styleSelectElm.length] = new Option(o.title || o['class'], o['class']);\r\n\t\t});\r\n\t}\r\n}\r\n\r\nfunction isVisible(element_id) {\r\n\tvar elm = document.getElementById(element_id);\r\n\r\n\treturn elm && elm.style.display != \"none\";\r\n}\r\n\r\nfunction convertRGBToHex(col) {\r\n\tvar re = new RegExp(\"rgb\\\\s*\\\\(\\\\s*([0-9]+).*,\\\\s*([0-9]+).*,\\\\s*([0-9]+).*\\\\)\", \"gi\");\r\n\r\n\tvar rgb = col.replace(re, \"$1,$2,$3\").split(',');\r\n\tif (rgb.length == 3) {\r\n\t\tr = parseInt(rgb[0]).toString(16);\r\n\t\tg = parseInt(rgb[1]).toString(16);\r\n\t\tb = parseInt(rgb[2]).toString(16);\r\n\r\n\t\tr = r.length == 1 ? '0' + r : r;\r\n\t\tg = g.length == 1 ? '0' + g : g;\r\n\t\tb = b.length == 1 ? '0' + b : b;\r\n\r\n\t\treturn \"#\" + r + g + b;\r\n\t}\r\n\r\n\treturn col;\r\n}\r\n\r\nfunction convertHexToRGB(col) {\r\n\tif (col.indexOf('#') != -1) {\r\n\t\tcol = col.replace(new RegExp('[^0-9A-F]', 'gi'), '');\r\n\r\n\t\tr = parseInt(col.substring(0, 2), 16);\r\n\t\tg = parseInt(col.substring(2, 4), 16);\r\n\t\tb = parseInt(col.substring(4, 6), 16);\r\n\r\n\t\treturn \"rgb(\" + r + \",\" + g + \",\" + b + \")\";\r\n\t}\r\n\r\n\treturn col;\r\n}\r\n\r\nfunction trimSize(size) {\r\n\treturn size.replace(/([0-9\\.]+)(px|%|in|cm|mm|em|ex|pt|pc)/i, '$1$2');\r\n}\r\n\r\nfunction getCSSSize(size) {\r\n\tsize = trimSize(size);\r\n\r\n\tif (size == \"\")\r\n\t\treturn \"\";\r\n\r\n\t// Add px\r\n\tif (/^[0-9]+$/.test(size))\r\n\t\tsize += 'px';\r\n\t// Sanity check, IE doesn't like broken values\r\n\telse if (!(/^[0-9\\.]+(px|%|in|cm|mm|em|ex|pt|pc)$/i.test(size)))\r\n\t\treturn \"\";\r\n\r\n\treturn size;\r\n}\r\n\r\nfunction getStyle(elm, attrib, style) {\r\n\tvar val = tinyMCEPopup.dom.getAttrib(elm, attrib);\r\n\r\n\tif (val != '')\r\n\t\treturn '' + val;\r\n\r\n\tif (typeof(style) == 'undefined')\r\n\t\tstyle = attrib;\r\n\r\n\treturn tinyMCEPopup.dom.getStyle(elm, style);\r\n}\r\n"
  },
  {
    "path": "newscoop/js/tinymce/utils/mctabs.js",
    "content": "/**\r\n * mctabs.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\nfunction MCTabs() {\r\n\tthis.settings = [];\r\n\tthis.onChange = tinyMCEPopup.editor.windowManager.createInstance('tinymce.util.Dispatcher');\r\n};\r\n\r\nMCTabs.prototype.init = function(settings) {\r\n\tthis.settings = settings;\r\n};\r\n\r\nMCTabs.prototype.getParam = function(name, default_value) {\r\n\tvar value = null;\r\n\r\n\tvalue = (typeof(this.settings[name]) == \"undefined\") ? default_value : this.settings[name];\r\n\r\n\t// Fix bool values\r\n\tif (value == \"true\" || value == \"false\")\r\n\t\treturn (value == \"true\");\r\n\r\n\treturn value;\r\n};\r\n\r\nMCTabs.prototype.showTab =function(tab){\r\n\ttab.className = 'current';\r\n\ttab.setAttribute(\"aria-selected\", true);\r\n\ttab.setAttribute(\"aria-expanded\", true);\r\n\ttab.tabIndex = 0;\r\n};\r\n\r\nMCTabs.prototype.hideTab =function(tab){\r\n\tvar t=this;\r\n\r\n\ttab.className = '';\r\n\ttab.setAttribute(\"aria-selected\", false);\r\n\ttab.setAttribute(\"aria-expanded\", false);\r\n\ttab.tabIndex = -1;\r\n};\r\n\r\nMCTabs.prototype.showPanel = function(panel) {\r\n\tpanel.className = 'current'; \r\n\tpanel.setAttribute(\"aria-hidden\", false);\r\n};\r\n\r\nMCTabs.prototype.hidePanel = function(panel) {\r\n\tpanel.className = 'panel';\r\n\tpanel.setAttribute(\"aria-hidden\", true);\r\n}; \r\n\r\nMCTabs.prototype.getPanelForTab = function(tabElm) {\r\n\treturn tinyMCEPopup.dom.getAttrib(tabElm, \"aria-controls\");\r\n};\r\n\r\nMCTabs.prototype.displayTab = function(tab_id, panel_id, avoid_focus) {\r\n\tvar panelElm, panelContainerElm, tabElm, tabContainerElm, selectionClass, nodes, i, t = this;\r\n\r\n\ttabElm = document.getElementById(tab_id);\r\n\r\n\tif (panel_id === undefined) {\r\n\t\tpanel_id = t.getPanelForTab(tabElm);\r\n\t}\r\n\r\n\tpanelElm= document.getElementById(panel_id);\r\n\tpanelContainerElm = panelElm ? panelElm.parentNode : null;\r\n\ttabContainerElm = tabElm ? tabElm.parentNode : null;\r\n\tselectionClass = t.getParam('selection_class', 'current');\r\n\r\n\tif (tabElm && tabContainerElm) {\r\n\t\tnodes = tabContainerElm.childNodes;\r\n\r\n\t\t// Hide all other tabs\r\n\t\tfor (i = 0; i < nodes.length; i++) {\r\n\t\t\tif (nodes[i].nodeName == \"LI\") {\r\n\t\t\t\tt.hideTab(nodes[i]);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Show selected tab\r\n\t\tt.showTab(tabElm);\r\n\t}\r\n\r\n\tif (panelElm && panelContainerElm) {\r\n\t\tnodes = panelContainerElm.childNodes;\r\n\r\n\t\t// Hide all other panels\r\n\t\tfor (i = 0; i < nodes.length; i++) {\r\n\t\t\tif (nodes[i].nodeName == \"DIV\")\r\n\t\t\t\tt.hidePanel(nodes[i]);\r\n\t\t}\r\n\r\n\t\tif (!avoid_focus) { \r\n\t\t\ttabElm.focus();\r\n\t\t}\r\n\r\n\t\t// Show selected panel\r\n\t\tt.showPanel(panelElm);\r\n\t}\r\n};\r\n\r\nMCTabs.prototype.getAnchor = function() {\r\n\tvar pos, url = document.location.href;\r\n\r\n\tif ((pos = url.lastIndexOf('#')) != -1)\r\n\t\treturn url.substring(pos + 1);\r\n\r\n\treturn \"\";\r\n};\r\n\r\n\r\n//Global instance\r\nvar mcTabs = new MCTabs();\r\n\r\ntinyMCEPopup.onInit.add(function() {\r\n\tvar tinymce = tinyMCEPopup.getWin().tinymce, dom = tinyMCEPopup.dom, each = tinymce.each;\r\n\r\n\teach(dom.select('div.tabs'), function(tabContainerElm) {\r\n\t\tvar keyNav;\r\n\r\n\t\tdom.setAttrib(tabContainerElm, \"role\", \"tablist\"); \r\n\r\n\t\tvar items = tinyMCEPopup.dom.select('li', tabContainerElm);\r\n\t\tvar action = function(id) {\r\n\t\t\tmcTabs.displayTab(id, mcTabs.getPanelForTab(id));\r\n\t\t\tmcTabs.onChange.dispatch(id);\r\n\t\t};\r\n\r\n\t\teach(items, function(item) {\r\n\t\t\tdom.setAttrib(item, 'role', 'tab');\r\n\t\t\tdom.bind(item, 'click', function(evt) {\r\n\t\t\t\taction(item.id);\r\n\t\t\t});\r\n\t\t});\r\n\r\n\t\tdom.bind(dom.getRoot(), 'keydown', function(evt) {\r\n\t\t\tif (evt.keyCode === 9 && evt.ctrlKey && !evt.altKey) { // Tab\r\n\t\t\t\tkeyNav.moveFocus(evt.shiftKey ? -1 : 1);\r\n\t\t\t\ttinymce.dom.Event.cancel(evt);\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\teach(dom.select('a', tabContainerElm), function(a) {\r\n\t\t\tdom.setAttrib(a, 'tabindex', '-1');\r\n\t\t});\r\n\r\n\t\tkeyNav = tinyMCEPopup.editor.windowManager.createInstance('tinymce.ui.KeyboardNavigation', {\r\n\t\t\troot: tabContainerElm,\r\n\t\t\titems: items,\r\n\t\t\tonAction: action,\r\n\t\t\tactOnFocus: true,\r\n\t\t\tenableLeftRight: true,\r\n\t\t\tenableUpDown: true\r\n\t\t}, tinyMCEPopup.dom);\r\n\t});\r\n});"
  },
  {
    "path": "newscoop/js/tinymce/utils/validate.js",
    "content": "/**\r\n * validate.js\r\n *\r\n * Copyright 2009, Moxiecode Systems AB\r\n * Released under LGPL License.\r\n *\r\n * License: http://tinymce.moxiecode.com/license\r\n * Contributing: http://tinymce.moxiecode.com/contributing\r\n */\r\n\r\n/**\r\n\t// String validation:\r\n\r\n\tif (!Validator.isEmail('myemail'))\r\n\t\talert('Invalid email.');\r\n\r\n\t// Form validation:\r\n\r\n\tvar f = document.forms['myform'];\r\n\r\n\tif (!Validator.isEmail(f.myemail))\r\n\t\talert('Invalid email.');\r\n*/\r\n\r\nvar Validator = {\r\n\tisEmail : function(s) {\r\n\t\treturn this.test(s, '^[-!#$%&\\'*+\\\\./0-9=?A-Z^_`a-z{|}~]+@[-!#$%&\\'*+\\\\/0-9=?A-Z^_`a-z{|}~]+\\.[-!#$%&\\'*+\\\\./0-9=?A-Z^_`a-z{|}~]+$');\r\n\t},\r\n\r\n\tisAbsUrl : function(s) {\r\n\t\treturn this.test(s, '^(news|telnet|nttp|file|http|ftp|https)://[-A-Za-z0-9\\\\.]+\\\\/?.*$');\r\n\t},\r\n\r\n\tisSize : function(s) {\r\n\t\treturn this.test(s, '^[0-9.]+(%|in|cm|mm|em|ex|pt|pc|px)?$');\r\n\t},\r\n\r\n\tisId : function(s) {\r\n\t\treturn this.test(s, '^[A-Za-z_]([A-Za-z0-9_])*$');\r\n\t},\r\n\r\n\tisEmpty : function(s) {\r\n\t\tvar nl, i;\r\n\r\n\t\tif (s.nodeName == 'SELECT' && s.selectedIndex < 1)\r\n\t\t\treturn true;\r\n\r\n\t\tif (s.type == 'checkbox' && !s.checked)\r\n\t\t\treturn true;\r\n\r\n\t\tif (s.type == 'radio') {\r\n\t\t\tfor (i=0, nl = s.form.elements; i<nl.length; i++) {\r\n\t\t\t\tif (nl[i].type == \"radio\" && nl[i].name == s.name && nl[i].checked)\r\n\t\t\t\t\treturn false;\r\n\t\t\t}\r\n\r\n\t\t\treturn true;\r\n\t\t}\r\n\r\n\t\treturn new RegExp('^\\\\s*$').test(s.nodeType == 1 ? s.value : s);\r\n\t},\r\n\r\n\tisNumber : function(s, d) {\r\n\t\treturn !isNaN(s.nodeType == 1 ? s.value : s) && (!d || !this.test(s, '^-?[0-9]*\\\\.[0-9]*$'));\r\n\t},\r\n\r\n\ttest : function(s, p) {\r\n\t\ts = s.nodeType == 1 ? s.value : s;\r\n\r\n\t\treturn s == '' || new RegExp(p).test(s);\r\n\t}\r\n};\r\n\r\nvar AutoValidator = {\r\n\tsettings : {\r\n\t\tid_cls : 'id',\r\n\t\tint_cls : 'int',\r\n\t\turl_cls : 'url',\r\n\t\tnumber_cls : 'number',\r\n\t\temail_cls : 'email',\r\n\t\tsize_cls : 'size',\r\n\t\trequired_cls : 'required',\r\n\t\tinvalid_cls : 'invalid',\r\n\t\tmin_cls : 'min',\r\n\t\tmax_cls : 'max'\r\n\t},\r\n\r\n\tinit : function(s) {\r\n\t\tvar n;\r\n\r\n\t\tfor (n in s)\r\n\t\t\tthis.settings[n] = s[n];\r\n\t},\r\n\r\n\tvalidate : function(f) {\r\n\t\tvar i, nl, s = this.settings, c = 0;\r\n\r\n\t\tnl = this.tags(f, 'label');\r\n\t\tfor (i=0; i<nl.length; i++) {\r\n\t\t\tthis.removeClass(nl[i], s.invalid_cls);\r\n\t\t\tnl[i].setAttribute('aria-invalid', false);\r\n\t\t}\r\n\r\n\t\tc += this.validateElms(f, 'input');\r\n\t\tc += this.validateElms(f, 'select');\r\n\t\tc += this.validateElms(f, 'textarea');\r\n\r\n\t\treturn c == 3;\r\n\t},\r\n\r\n\tinvalidate : function(n) {\r\n\t\tthis.mark(n.form, n);\r\n\t},\r\n\t\r\n\tgetErrorMessages : function(f) {\r\n\t\tvar nl, i, s = this.settings, field, msg, values, messages = [], ed = tinyMCEPopup.editor;\r\n\t\tnl = this.tags(f, \"label\");\r\n\t\tfor (i=0; i<nl.length; i++) {\r\n\t\t\tif (this.hasClass(nl[i], s.invalid_cls)) {\r\n\t\t\t\tfield = document.getElementById(nl[i].getAttribute(\"for\"));\r\n\t\t\t\tvalues = { field: nl[i].textContent };\r\n\t\t\t\tif (this.hasClass(field, s.min_cls, true)) {\r\n\t\t\t\t\tmessage = ed.getLang('invalid_data_min');\r\n\t\t\t\t\tvalues.min = this.getNum(field, s.min_cls);\r\n\t\t\t\t} else if (this.hasClass(field, s.number_cls)) {\r\n\t\t\t\t\tmessage = ed.getLang('invalid_data_number');\r\n\t\t\t\t} else if (this.hasClass(field, s.size_cls)) {\r\n\t\t\t\t\tmessage = ed.getLang('invalid_data_size');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tmessage = ed.getLang('invalid_data');\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\tmessage = message.replace(/{\\#([^}]+)\\}/g, function(a, b) {\r\n\t\t\t\t\treturn values[b] || '{#' + b + '}';\r\n\t\t\t\t});\r\n\t\t\t\tmessages.push(message);\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn messages;\r\n\t},\r\n\r\n\treset : function(e) {\r\n\t\tvar t = ['label', 'input', 'select', 'textarea'];\r\n\t\tvar i, j, nl, s = this.settings;\r\n\r\n\t\tif (e == null)\r\n\t\t\treturn;\r\n\r\n\t\tfor (i=0; i<t.length; i++) {\r\n\t\t\tnl = this.tags(e.form ? e.form : e, t[i]);\r\n\t\t\tfor (j=0; j<nl.length; j++) {\r\n\t\t\t\tthis.removeClass(nl[j], s.invalid_cls);\r\n\t\t\t\tnl[j].setAttribute('aria-invalid', false);\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n\r\n\tvalidateElms : function(f, e) {\r\n\t\tvar nl, i, n, s = this.settings, st = true, va = Validator, v;\r\n\r\n\t\tnl = this.tags(f, e);\r\n\t\tfor (i=0; i<nl.length; i++) {\r\n\t\t\tn = nl[i];\r\n\r\n\t\t\tthis.removeClass(n, s.invalid_cls);\r\n\r\n\t\t\tif (this.hasClass(n, s.required_cls) && va.isEmpty(n))\r\n\t\t\t\tst = this.mark(f, n);\r\n\r\n\t\t\tif (this.hasClass(n, s.number_cls) && !va.isNumber(n))\r\n\t\t\t\tst = this.mark(f, n);\r\n\r\n\t\t\tif (this.hasClass(n, s.int_cls) && !va.isNumber(n, true))\r\n\t\t\t\tst = this.mark(f, n);\r\n\r\n\t\t\tif (this.hasClass(n, s.url_cls) && !va.isAbsUrl(n))\r\n\t\t\t\tst = this.mark(f, n);\r\n\r\n\t\t\tif (this.hasClass(n, s.email_cls) && !va.isEmail(n))\r\n\t\t\t\tst = this.mark(f, n);\r\n\r\n\t\t\tif (this.hasClass(n, s.size_cls) && !va.isSize(n))\r\n\t\t\t\tst = this.mark(f, n);\r\n\r\n\t\t\tif (this.hasClass(n, s.id_cls) && !va.isId(n))\r\n\t\t\t\tst = this.mark(f, n);\r\n\r\n\t\t\tif (this.hasClass(n, s.min_cls, true)) {\r\n\t\t\t\tv = this.getNum(n, s.min_cls);\r\n\r\n\t\t\t\tif (isNaN(v) || parseInt(n.value) < parseInt(v))\r\n\t\t\t\t\tst = this.mark(f, n);\r\n\t\t\t}\r\n\r\n\t\t\tif (this.hasClass(n, s.max_cls, true)) {\r\n\t\t\t\tv = this.getNum(n, s.max_cls);\r\n\r\n\t\t\t\tif (isNaN(v) || parseInt(n.value) > parseInt(v))\r\n\t\t\t\t\tst = this.mark(f, n);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn st;\r\n\t},\r\n\r\n\thasClass : function(n, c, d) {\r\n\t\treturn new RegExp('\\\\b' + c + (d ? '[0-9]+' : '') + '\\\\b', 'g').test(n.className);\r\n\t},\r\n\r\n\tgetNum : function(n, c) {\r\n\t\tc = n.className.match(new RegExp('\\\\b' + c + '([0-9]+)\\\\b', 'g'))[0];\r\n\t\tc = c.replace(/[^0-9]/g, '');\r\n\r\n\t\treturn c;\r\n\t},\r\n\r\n\taddClass : function(n, c, b) {\r\n\t\tvar o = this.removeClass(n, c);\r\n\t\tn.className = b ? c + (o != '' ? (' ' + o) : '') : (o != '' ? (o + ' ') : '') + c;\r\n\t},\r\n\r\n\tremoveClass : function(n, c) {\r\n\t\tc = n.className.replace(new RegExp(\"(^|\\\\s+)\" + c + \"(\\\\s+|$)\"), ' ');\r\n\t\treturn n.className = c != ' ' ? c : '';\r\n\t},\r\n\r\n\ttags : function(f, s) {\r\n\t\treturn f.getElementsByTagName(s);\r\n\t},\r\n\r\n\tmark : function(f, n) {\r\n\t\tvar s = this.settings;\r\n\r\n\t\tthis.addClass(n, s.invalid_cls);\r\n\t\tn.setAttribute('aria-invalid', 'true');\r\n\t\tthis.markLabels(f, n, s.invalid_cls);\r\n\r\n\t\treturn false;\r\n\t},\r\n\r\n\tmarkLabels : function(f, n, ic) {\r\n\t\tvar nl, i;\r\n\r\n\t\tnl = this.tags(f, \"label\");\r\n\t\tfor (i=0; i<nl.length; i++) {\r\n\t\t\tif (nl[i].getAttribute(\"for\") == n.id || nl[i].htmlFor == n.id)\r\n\t\t\t\tthis.addClass(nl[i], ic);\r\n\t\t}\r\n\r\n\t\treturn null;\r\n\t}\r\n};\r\n"
  },
  {
    "path": "newscoop/js/underscore.js",
    "content": "//     Underscore.js 1.3.1\n//     (c) 2009-2012 Jeremy Ashkenas, DocumentCloud Inc.\n//     Underscore is freely distributable under the MIT license.\n//     Portions of Underscore are inspired or borrowed from Prototype,\n//     Oliver Steele's Functional, and John Resig's Micro-Templating.\n//     For all details and documentation:\n//     http://documentcloud.github.com/underscore\n\n(function() {\n\n  // Baseline setup\n  // --------------\n\n  // Establish the root object, `window` in the browser, or `global` on the server.\n  var root = this;\n\n  // Save the previous value of the `_` variable.\n  var previousUnderscore = root._;\n\n  // Establish the object that gets returned to break out of a loop iteration.\n  var breaker = {};\n\n  // Save bytes in the minified (but not gzipped) version:\n  var ArrayProto = Array.prototype, ObjProto = Object.prototype, FuncProto = Function.prototype;\n\n  // Create quick reference variables for speed access to core prototypes.\n  var slice            = ArrayProto.slice,\n      unshift          = ArrayProto.unshift,\n      toString         = ObjProto.toString,\n      hasOwnProperty   = ObjProto.hasOwnProperty;\n\n  // All **ECMAScript 5** native function implementations that we hope to use\n  // are declared here.\n  var\n    nativeForEach      = ArrayProto.forEach,\n    nativeMap          = ArrayProto.map,\n    nativeReduce       = ArrayProto.reduce,\n    nativeReduceRight  = ArrayProto.reduceRight,\n    nativeFilter       = ArrayProto.filter,\n    nativeEvery        = ArrayProto.every,\n    nativeSome         = ArrayProto.some,\n    nativeIndexOf      = ArrayProto.indexOf,\n    nativeLastIndexOf  = ArrayProto.lastIndexOf,\n    nativeIsArray      = Array.isArray,\n    nativeKeys         = Object.keys,\n    nativeBind         = FuncProto.bind;\n\n  // Create a safe reference to the Underscore object for use below.\n  var _ = function(obj) { return new wrapper(obj); };\n\n  // Export the Underscore object for **Node.js**, with\n  // backwards-compatibility for the old `require()` API. If we're in\n  // the browser, add `_` as a global object via a string identifier,\n  // for Closure Compiler \"advanced\" mode.\n  if (typeof exports !== 'undefined') {\n    if (typeof module !== 'undefined' && module.exports) {\n      exports = module.exports = _;\n    }\n    exports._ = _;\n  } else {\n    root['_'] = _;\n  }\n\n  // Current version.\n  _.VERSION = '1.3.1';\n\n  // Collection Functions\n  // --------------------\n\n  // The cornerstone, an `each` implementation, aka `forEach`.\n  // Handles objects with the built-in `forEach`, arrays, and raw objects.\n  // Delegates to **ECMAScript 5**'s native `forEach` if available.\n  var each = _.each = _.forEach = function(obj, iterator, context) {\n    if (obj == null) return;\n    if (nativeForEach && obj.forEach === nativeForEach) {\n      obj.forEach(iterator, context);\n    } else if (obj.length === +obj.length) {\n      for (var i = 0, l = obj.length; i < l; i++) {\n        if (i in obj && iterator.call(context, obj[i], i, obj) === breaker) return;\n      }\n    } else {\n      for (var key in obj) {\n        if (_.has(obj, key)) {\n          if (iterator.call(context, obj[key], key, obj) === breaker) return;\n        }\n      }\n    }\n  };\n\n  // Return the results of applying the iterator to each element.\n  // Delegates to **ECMAScript 5**'s native `map` if available.\n  _.map = _.collect = function(obj, iterator, context) {\n    var results = [];\n    if (obj == null) return results;\n    if (nativeMap && obj.map === nativeMap) return obj.map(iterator, context);\n    each(obj, function(value, index, list) {\n      results[results.length] = iterator.call(context, value, index, list);\n    });\n    if (obj.length === +obj.length) results.length = obj.length;\n    return results;\n  };\n\n  // **Reduce** builds up a single result from a list of values, aka `inject`,\n  // or `foldl`. Delegates to **ECMAScript 5**'s native `reduce` if available.\n  _.reduce = _.foldl = _.inject = function(obj, iterator, memo, context) {\n    var initial = arguments.length > 2;\n    if (obj == null) obj = [];\n    if (nativeReduce && obj.reduce === nativeReduce) {\n      if (context) iterator = _.bind(iterator, context);\n      return initial ? obj.reduce(iterator, memo) : obj.reduce(iterator);\n    }\n    each(obj, function(value, index, list) {\n      if (!initial) {\n        memo = value;\n        initial = true;\n      } else {\n        memo = iterator.call(context, memo, value, index, list);\n      }\n    });\n    if (!initial) throw new TypeError('Reduce of empty array with no initial value');\n    return memo;\n  };\n\n  // The right-associative version of reduce, also known as `foldr`.\n  // Delegates to **ECMAScript 5**'s native `reduceRight` if available.\n  _.reduceRight = _.foldr = function(obj, iterator, memo, context) {\n    var initial = arguments.length > 2;\n    if (obj == null) obj = [];\n    if (nativeReduceRight && obj.reduceRight === nativeReduceRight) {\n      if (context) iterator = _.bind(iterator, context);\n      return initial ? obj.reduceRight(iterator, memo) : obj.reduceRight(iterator);\n    }\n    var reversed = _.toArray(obj).reverse();\n    if (context && !initial) iterator = _.bind(iterator, context);\n    return initial ? _.reduce(reversed, iterator, memo, context) : _.reduce(reversed, iterator);\n  };\n\n  // Return the first value which passes a truth test. Aliased as `detect`.\n  _.find = _.detect = function(obj, iterator, context) {\n    var result;\n    any(obj, function(value, index, list) {\n      if (iterator.call(context, value, index, list)) {\n        result = value;\n        return true;\n      }\n    });\n    return result;\n  };\n\n  // Return all the elements that pass a truth test.\n  // Delegates to **ECMAScript 5**'s native `filter` if available.\n  // Aliased as `select`.\n  _.filter = _.select = function(obj, iterator, context) {\n    var results = [];\n    if (obj == null) return results;\n    if (nativeFilter && obj.filter === nativeFilter) return obj.filter(iterator, context);\n    each(obj, function(value, index, list) {\n      if (iterator.call(context, value, index, list)) results[results.length] = value;\n    });\n    return results;\n  };\n\n  // Return all the elements for which a truth test fails.\n  _.reject = function(obj, iterator, context) {\n    var results = [];\n    if (obj == null) return results;\n    each(obj, function(value, index, list) {\n      if (!iterator.call(context, value, index, list)) results[results.length] = value;\n    });\n    return results;\n  };\n\n  // Determine whether all of the elements match a truth test.\n  // Delegates to **ECMAScript 5**'s native `every` if available.\n  // Aliased as `all`.\n  _.every = _.all = function(obj, iterator, context) {\n    var result = true;\n    if (obj == null) return result;\n    if (nativeEvery && obj.every === nativeEvery) return obj.every(iterator, context);\n    each(obj, function(value, index, list) {\n      if (!(result = result && iterator.call(context, value, index, list))) return breaker;\n    });\n    return result;\n  };\n\n  // Determine if at least one element in the object matches a truth test.\n  // Delegates to **ECMAScript 5**'s native `some` if available.\n  // Aliased as `any`.\n  var any = _.some = _.any = function(obj, iterator, context) {\n    iterator || (iterator = _.identity);\n    var result = false;\n    if (obj == null) return result;\n    if (nativeSome && obj.some === nativeSome) return obj.some(iterator, context);\n    each(obj, function(value, index, list) {\n      if (result || (result = iterator.call(context, value, index, list))) return breaker;\n    });\n    return !!result;\n  };\n\n  // Determine if a given value is included in the array or object using `===`.\n  // Aliased as `contains`.\n  _.include = _.contains = function(obj, target) {\n    var found = false;\n    if (obj == null) return found;\n    if (nativeIndexOf && obj.indexOf === nativeIndexOf) return obj.indexOf(target) != -1;\n    found = any(obj, function(value) {\n      return value === target;\n    });\n    return found;\n  };\n\n  // Invoke a method (with arguments) on every item in a collection.\n  _.invoke = function(obj, method) {\n    var args = slice.call(arguments, 2);\n    return _.map(obj, function(value) {\n      return (_.isFunction(method) ? method || value : value[method]).apply(value, args);\n    });\n  };\n\n  // Convenience version of a common use case of `map`: fetching a property.\n  _.pluck = function(obj, key) {\n    return _.map(obj, function(value){ return value[key]; });\n  };\n\n  // Return the maximum element or (element-based computation).\n  _.max = function(obj, iterator, context) {\n    if (!iterator && _.isArray(obj)) return Math.max.apply(Math, obj);\n    if (!iterator && _.isEmpty(obj)) return -Infinity;\n    var result = {computed : -Infinity};\n    each(obj, function(value, index, list) {\n      var computed = iterator ? iterator.call(context, value, index, list) : value;\n      computed >= result.computed && (result = {value : value, computed : computed});\n    });\n    return result.value;\n  };\n\n  // Return the minimum element (or element-based computation).\n  _.min = function(obj, iterator, context) {\n    if (!iterator && _.isArray(obj)) return Math.min.apply(Math, obj);\n    if (!iterator && _.isEmpty(obj)) return Infinity;\n    var result = {computed : Infinity};\n    each(obj, function(value, index, list) {\n      var computed = iterator ? iterator.call(context, value, index, list) : value;\n      computed < result.computed && (result = {value : value, computed : computed});\n    });\n    return result.value;\n  };\n\n  // Shuffle an array.\n  _.shuffle = function(obj) {\n    var shuffled = [], rand;\n    each(obj, function(value, index, list) {\n      if (index == 0) {\n        shuffled[0] = value;\n      } else {\n        rand = Math.floor(Math.random() * (index + 1));\n        shuffled[index] = shuffled[rand];\n        shuffled[rand] = value;\n      }\n    });\n    return shuffled;\n  };\n\n  // Sort the object's values by a criterion produced by an iterator.\n  _.sortBy = function(obj, iterator, context) {\n    return _.pluck(_.map(obj, function(value, index, list) {\n      return {\n        value : value,\n        criteria : iterator.call(context, value, index, list)\n      };\n    }).sort(function(left, right) {\n      var a = left.criteria, b = right.criteria;\n      return a < b ? -1 : a > b ? 1 : 0;\n    }), 'value');\n  };\n\n  // Groups the object's values by a criterion. Pass either a string attribute\n  // to group by, or a function that returns the criterion.\n  _.groupBy = function(obj, val) {\n    var result = {};\n    var iterator = _.isFunction(val) ? val : function(obj) { return obj[val]; };\n    each(obj, function(value, index) {\n      var key = iterator(value, index);\n      (result[key] || (result[key] = [])).push(value);\n    });\n    return result;\n  };\n\n  // Use a comparator function to figure out at what index an object should\n  // be inserted so as to maintain order. Uses binary search.\n  _.sortedIndex = function(array, obj, iterator) {\n    iterator || (iterator = _.identity);\n    var low = 0, high = array.length;\n    while (low < high) {\n      var mid = (low + high) >> 1;\n      iterator(array[mid]) < iterator(obj) ? low = mid + 1 : high = mid;\n    }\n    return low;\n  };\n\n  // Safely convert anything iterable into a real, live array.\n  _.toArray = function(iterable) {\n    if (!iterable)                return [];\n    if (iterable.toArray)         return iterable.toArray();\n    if (_.isArray(iterable))      return slice.call(iterable);\n    if (_.isArguments(iterable))  return slice.call(iterable);\n    return _.values(iterable);\n  };\n\n  // Return the number of elements in an object.\n  _.size = function(obj) {\n    return _.toArray(obj).length;\n  };\n\n  // Array Functions\n  // ---------------\n\n  // Get the first element of an array. Passing **n** will return the first N\n  // values in the array. Aliased as `head`. The **guard** check allows it to work\n  // with `_.map`.\n  _.first = _.head = function(array, n, guard) {\n    return (n != null) && !guard ? slice.call(array, 0, n) : array[0];\n  };\n\n  // Returns everything but the last entry of the array. Especcialy useful on\n  // the arguments object. Passing **n** will return all the values in\n  // the array, excluding the last N. The **guard** check allows it to work with\n  // `_.map`.\n  _.initial = function(array, n, guard) {\n    return slice.call(array, 0, array.length - ((n == null) || guard ? 1 : n));\n  };\n\n  // Get the last element of an array. Passing **n** will return the last N\n  // values in the array. The **guard** check allows it to work with `_.map`.\n  _.last = function(array, n, guard) {\n    if ((n != null) && !guard) {\n      return slice.call(array, Math.max(array.length - n, 0));\n    } else {\n      return array[array.length - 1];\n    }\n  };\n\n  // Returns everything but the first entry of the array. Aliased as `tail`.\n  // Especially useful on the arguments object. Passing an **index** will return\n  // the rest of the values in the array from that index onward. The **guard**\n  // check allows it to work with `_.map`.\n  _.rest = _.tail = function(array, index, guard) {\n    return slice.call(array, (index == null) || guard ? 1 : index);\n  };\n\n  // Trim out all falsy values from an array.\n  _.compact = function(array) {\n    return _.filter(array, function(value){ return !!value; });\n  };\n\n  // Return a completely flattened version of an array.\n  _.flatten = function(array, shallow) {\n    return _.reduce(array, function(memo, value) {\n      if (_.isArray(value)) return memo.concat(shallow ? value : _.flatten(value));\n      memo[memo.length] = value;\n      return memo;\n    }, []);\n  };\n\n  // Return a version of the array that does not contain the specified value(s).\n  _.without = function(array) {\n    return _.difference(array, slice.call(arguments, 1));\n  };\n\n  // Produce a duplicate-free version of the array. If the array has already\n  // been sorted, you have the option of using a faster algorithm.\n  // Aliased as `unique`.\n  _.uniq = _.unique = function(array, isSorted, iterator) {\n    var initial = iterator ? _.map(array, iterator) : array;\n    var result = [];\n    _.reduce(initial, function(memo, el, i) {\n      if (0 == i || (isSorted === true ? _.last(memo) != el : !_.include(memo, el))) {\n        memo[memo.length] = el;\n        result[result.length] = array[i];\n      }\n      return memo;\n    }, []);\n    return result;\n  };\n\n  // Produce an array that contains the union: each distinct element from all of\n  // the passed-in arrays.\n  _.union = function() {\n    return _.uniq(_.flatten(arguments, true));\n  };\n\n  // Produce an array that contains every item shared between all the\n  // passed-in arrays. (Aliased as \"intersect\" for back-compat.)\n  _.intersection = _.intersect = function(array) {\n    var rest = slice.call(arguments, 1);\n    return _.filter(_.uniq(array), function(item) {\n      return _.every(rest, function(other) {\n        return _.indexOf(other, item) >= 0;\n      });\n    });\n  };\n\n  // Take the difference between one array and a number of other arrays.\n  // Only the elements present in just the first array will remain.\n  _.difference = function(array) {\n    var rest = _.flatten(slice.call(arguments, 1));\n    return _.filter(array, function(value){ return !_.include(rest, value); });\n  };\n\n  // Zip together multiple lists into a single array -- elements that share\n  // an index go together.\n  _.zip = function() {\n    var args = slice.call(arguments);\n    var length = _.max(_.pluck(args, 'length'));\n    var results = new Array(length);\n    for (var i = 0; i < length; i++) results[i] = _.pluck(args, \"\" + i);\n    return results;\n  };\n\n  // If the browser doesn't supply us with indexOf (I'm looking at you, **MSIE**),\n  // we need this function. Return the position of the first occurrence of an\n  // item in an array, or -1 if the item is not included in the array.\n  // Delegates to **ECMAScript 5**'s native `indexOf` if available.\n  // If the array is large and already in sort order, pass `true`\n  // for **isSorted** to use binary search.\n  _.indexOf = function(array, item, isSorted) {\n    if (array == null) return -1;\n    var i, l;\n    if (isSorted) {\n      i = _.sortedIndex(array, item);\n      return array[i] === item ? i : -1;\n    }\n    if (nativeIndexOf && array.indexOf === nativeIndexOf) return array.indexOf(item);\n    for (i = 0, l = array.length; i < l; i++) if (i in array && array[i] === item) return i;\n    return -1;\n  };\n\n  // Delegates to **ECMAScript 5**'s native `lastIndexOf` if available.\n  _.lastIndexOf = function(array, item) {\n    if (array == null) return -1;\n    if (nativeLastIndexOf && array.lastIndexOf === nativeLastIndexOf) return array.lastIndexOf(item);\n    var i = array.length;\n    while (i--) if (i in array && array[i] === item) return i;\n    return -1;\n  };\n\n  // Generate an integer Array containing an arithmetic progression. A port of\n  // the native Python `range()` function. See\n  // [the Python documentation](http://docs.python.org/library/functions.html#range).\n  _.range = function(start, stop, step) {\n    if (arguments.length <= 1) {\n      stop = start || 0;\n      start = 0;\n    }\n    step = arguments[2] || 1;\n\n    var len = Math.max(Math.ceil((stop - start) / step), 0);\n    var idx = 0;\n    var range = new Array(len);\n\n    while(idx < len) {\n      range[idx++] = start;\n      start += step;\n    }\n\n    return range;\n  };\n\n  // Function (ahem) Functions\n  // ------------------\n\n  // Reusable constructor function for prototype setting.\n  var ctor = function(){};\n\n  // Create a function bound to a given object (assigning `this`, and arguments,\n  // optionally). Binding with arguments is also known as `curry`.\n  // Delegates to **ECMAScript 5**'s native `Function.bind` if available.\n  // We check for `func.bind` first, to fail fast when `func` is undefined.\n  _.bind = function bind(func, context) {\n    var bound, args;\n    if (func.bind === nativeBind && nativeBind) return nativeBind.apply(func, slice.call(arguments, 1));\n    if (!_.isFunction(func)) throw new TypeError;\n    args = slice.call(arguments, 2);\n    return bound = function() {\n      if (!(this instanceof bound)) return func.apply(context, args.concat(slice.call(arguments)));\n      ctor.prototype = func.prototype;\n      var self = new ctor;\n      var result = func.apply(self, args.concat(slice.call(arguments)));\n      if (Object(result) === result) return result;\n      return self;\n    };\n  };\n\n  // Bind all of an object's methods to that object. Useful for ensuring that\n  // all callbacks defined on an object belong to it.\n  _.bindAll = function(obj) {\n    var funcs = slice.call(arguments, 1);\n    if (funcs.length == 0) funcs = _.functions(obj);\n    each(funcs, function(f) { obj[f] = _.bind(obj[f], obj); });\n    return obj;\n  };\n\n  // Memoize an expensive function by storing its results.\n  _.memoize = function(func, hasher) {\n    var memo = {};\n    hasher || (hasher = _.identity);\n    return function() {\n      var key = hasher.apply(this, arguments);\n      return _.has(memo, key) ? memo[key] : (memo[key] = func.apply(this, arguments));\n    };\n  };\n\n  // Delays a function for the given number of milliseconds, and then calls\n  // it with the arguments supplied.\n  _.delay = function(func, wait) {\n    var args = slice.call(arguments, 2);\n    return setTimeout(function(){ return func.apply(func, args); }, wait);\n  };\n\n  // Defers a function, scheduling it to run after the current call stack has\n  // cleared.\n  _.defer = function(func) {\n    return _.delay.apply(_, [func, 1].concat(slice.call(arguments, 1)));\n  };\n\n  // Returns a function, that, when invoked, will only be triggered at most once\n  // during a given window of time.\n  _.throttle = function(func, wait) {\n    var context, args, timeout, throttling, more;\n    var whenDone = _.debounce(function(){ more = throttling = false; }, wait);\n    return function() {\n      context = this; args = arguments;\n      var later = function() {\n        timeout = null;\n        if (more) func.apply(context, args);\n        whenDone();\n      };\n      if (!timeout) timeout = setTimeout(later, wait);\n      if (throttling) {\n        more = true;\n      } else {\n        func.apply(context, args);\n      }\n      whenDone();\n      throttling = true;\n    };\n  };\n\n  // Returns a function, that, as long as it continues to be invoked, will not\n  // be triggered. The function will be called after it stops being called for\n  // N milliseconds.\n  _.debounce = function(func, wait) {\n    var timeout;\n    return function() {\n      var context = this, args = arguments;\n      var later = function() {\n        timeout = null;\n        func.apply(context, args);\n      };\n      clearTimeout(timeout);\n      timeout = setTimeout(later, wait);\n    };\n  };\n\n  // Returns a function that will be executed at most one time, no matter how\n  // often you call it. Useful for lazy initialization.\n  _.once = function(func) {\n    var ran = false, memo;\n    return function() {\n      if (ran) return memo;\n      ran = true;\n      return memo = func.apply(this, arguments);\n    };\n  };\n\n  // Returns the first function passed as an argument to the second,\n  // allowing you to adjust arguments, run code before and after, and\n  // conditionally execute the original function.\n  _.wrap = function(func, wrapper) {\n    return function() {\n      var args = [func].concat(slice.call(arguments, 0));\n      return wrapper.apply(this, args);\n    };\n  };\n\n  // Returns a function that is the composition of a list of functions, each\n  // consuming the return value of the function that follows.\n  _.compose = function() {\n    var funcs = arguments;\n    return function() {\n      var args = arguments;\n      for (var i = funcs.length - 1; i >= 0; i--) {\n        args = [funcs[i].apply(this, args)];\n      }\n      return args[0];\n    };\n  };\n\n  // Returns a function that will only be executed after being called N times.\n  _.after = function(times, func) {\n    if (times <= 0) return func();\n    return function() {\n      if (--times < 1) { return func.apply(this, arguments); }\n    };\n  };\n\n  // Object Functions\n  // ----------------\n\n  // Retrieve the names of an object's properties.\n  // Delegates to **ECMAScript 5**'s native `Object.keys`\n  _.keys = nativeKeys || function(obj) {\n    if (obj !== Object(obj)) throw new TypeError('Invalid object');\n    var keys = [];\n    for (var key in obj) if (_.has(obj, key)) keys[keys.length] = key;\n    return keys;\n  };\n\n  // Retrieve the values of an object's properties.\n  _.values = function(obj) {\n    return _.map(obj, _.identity);\n  };\n\n  // Return a sorted list of the function names available on the object.\n  // Aliased as `methods`\n  _.functions = _.methods = function(obj) {\n    var names = [];\n    for (var key in obj) {\n      if (_.isFunction(obj[key])) names.push(key);\n    }\n    return names.sort();\n  };\n\n  // Extend a given object with all the properties in passed-in object(s).\n  _.extend = function(obj) {\n    each(slice.call(arguments, 1), function(source) {\n      for (var prop in source) {\n        obj[prop] = source[prop];\n      }\n    });\n    return obj;\n  };\n\n  // Fill in a given object with default properties.\n  _.defaults = function(obj) {\n    each(slice.call(arguments, 1), function(source) {\n      for (var prop in source) {\n        if (obj[prop] == null) obj[prop] = source[prop];\n      }\n    });\n    return obj;\n  };\n\n  // Create a (shallow-cloned) duplicate of an object.\n  _.clone = function(obj) {\n    if (!_.isObject(obj)) return obj;\n    return _.isArray(obj) ? obj.slice() : _.extend({}, obj);\n  };\n\n  // Invokes interceptor with the obj, and then returns obj.\n  // The primary purpose of this method is to \"tap into\" a method chain, in\n  // order to perform operations on intermediate results within the chain.\n  _.tap = function(obj, interceptor) {\n    interceptor(obj);\n    return obj;\n  };\n\n  // Internal recursive comparison function.\n  function eq(a, b, stack) {\n    // Identical objects are equal. `0 === -0`, but they aren't identical.\n    // See the Harmony `egal` proposal: http://wiki.ecmascript.org/doku.php?id=harmony:egal.\n    if (a === b) return a !== 0 || 1 / a == 1 / b;\n    // A strict comparison is necessary because `null == undefined`.\n    if (a == null || b == null) return a === b;\n    // Unwrap any wrapped objects.\n    if (a._chain) a = a._wrapped;\n    if (b._chain) b = b._wrapped;\n    // Invoke a custom `isEqual` method if one is provided.\n    if (a.isEqual && _.isFunction(a.isEqual)) return a.isEqual(b);\n    if (b.isEqual && _.isFunction(b.isEqual)) return b.isEqual(a);\n    // Compare `[[Class]]` names.\n    var className = toString.call(a);\n    if (className != toString.call(b)) return false;\n    switch (className) {\n      // Strings, numbers, dates, and booleans are compared by value.\n      case '[object String]':\n        // Primitives and their corresponding object wrappers are equivalent; thus, `\"5\"` is\n        // equivalent to `new String(\"5\")`.\n        return a == String(b);\n      case '[object Number]':\n        // `NaN`s are equivalent, but non-reflexive. An `egal` comparison is performed for\n        // other numeric values.\n        return a != +a ? b != +b : (a == 0 ? 1 / a == 1 / b : a == +b);\n      case '[object Date]':\n      case '[object Boolean]':\n        // Coerce dates and booleans to numeric primitive values. Dates are compared by their\n        // millisecond representations. Note that invalid dates with millisecond representations\n        // of `NaN` are not equivalent.\n        return +a == +b;\n      // RegExps are compared by their source patterns and flags.\n      case '[object RegExp]':\n        return a.source == b.source &&\n               a.global == b.global &&\n               a.multiline == b.multiline &&\n               a.ignoreCase == b.ignoreCase;\n    }\n    if (typeof a != 'object' || typeof b != 'object') return false;\n    // Assume equality for cyclic structures. The algorithm for detecting cyclic\n    // structures is adapted from ES 5.1 section 15.12.3, abstract operation `JO`.\n    var length = stack.length;\n    while (length--) {\n      // Linear search. Performance is inversely proportional to the number of\n      // unique nested structures.\n      if (stack[length] == a) return true;\n    }\n    // Add the first object to the stack of traversed objects.\n    stack.push(a);\n    var size = 0, result = true;\n    // Recursively compare objects and arrays.\n    if (className == '[object Array]') {\n      // Compare array lengths to determine if a deep comparison is necessary.\n      size = a.length;\n      result = size == b.length;\n      if (result) {\n        // Deep compare the contents, ignoring non-numeric properties.\n        while (size--) {\n          // Ensure commutative equality for sparse arrays.\n          if (!(result = size in a == size in b && eq(a[size], b[size], stack))) break;\n        }\n      }\n    } else {\n      // Objects with different constructors are not equivalent.\n      if ('constructor' in a != 'constructor' in b || a.constructor != b.constructor) return false;\n      // Deep compare objects.\n      for (var key in a) {\n        if (_.has(a, key)) {\n          // Count the expected number of properties.\n          size++;\n          // Deep compare each member.\n          if (!(result = _.has(b, key) && eq(a[key], b[key], stack))) break;\n        }\n      }\n      // Ensure that both objects contain the same number of properties.\n      if (result) {\n        for (key in b) {\n          if (_.has(b, key) && !(size--)) break;\n        }\n        result = !size;\n      }\n    }\n    // Remove the first object from the stack of traversed objects.\n    stack.pop();\n    return result;\n  }\n\n  // Perform a deep comparison to check if two objects are equal.\n  _.isEqual = function(a, b) {\n    return eq(a, b, []);\n  };\n\n  // Is a given array, string, or object empty?\n  // An \"empty\" object has no enumerable own-properties.\n  _.isEmpty = function(obj) {\n    if (_.isArray(obj) || _.isString(obj)) return obj.length === 0;\n    for (var key in obj) if (_.has(obj, key)) return false;\n    return true;\n  };\n\n  // Is a given value a DOM element?\n  _.isElement = function(obj) {\n    return !!(obj && obj.nodeType == 1);\n  };\n\n  // Is a given value an array?\n  // Delegates to ECMA5's native Array.isArray\n  _.isArray = nativeIsArray || function(obj) {\n    return toString.call(obj) == '[object Array]';\n  };\n\n  // Is a given variable an object?\n  _.isObject = function(obj) {\n    return obj === Object(obj);\n  };\n\n  // Is a given variable an arguments object?\n  _.isArguments = function(obj) {\n    return toString.call(obj) == '[object Arguments]';\n  };\n  if (!_.isArguments(arguments)) {\n    _.isArguments = function(obj) {\n      return !!(obj && _.has(obj, 'callee'));\n    };\n  }\n\n  // Is a given value a function?\n  _.isFunction = function(obj) {\n    return toString.call(obj) == '[object Function]';\n  };\n\n  // Is a given value a string?\n  _.isString = function(obj) {\n    return toString.call(obj) == '[object String]';\n  };\n\n  // Is a given value a number?\n  _.isNumber = function(obj) {\n    return toString.call(obj) == '[object Number]';\n  };\n\n  // Is the given value `NaN`?\n  _.isNaN = function(obj) {\n    // `NaN` is the only value for which `===` is not reflexive.\n    return obj !== obj;\n  };\n\n  // Is a given value a boolean?\n  _.isBoolean = function(obj) {\n    return obj === true || obj === false || toString.call(obj) == '[object Boolean]';\n  };\n\n  // Is a given value a date?\n  _.isDate = function(obj) {\n    return toString.call(obj) == '[object Date]';\n  };\n\n  // Is the given value a regular expression?\n  _.isRegExp = function(obj) {\n    return toString.call(obj) == '[object RegExp]';\n  };\n\n  // Is a given value equal to null?\n  _.isNull = function(obj) {\n    return obj === null;\n  };\n\n  // Is a given variable undefined?\n  _.isUndefined = function(obj) {\n    return obj === void 0;\n  };\n\n  // Has own property?\n  _.has = function(obj, key) {\n    return hasOwnProperty.call(obj, key);\n  };\n\n  // Utility Functions\n  // -----------------\n\n  // Run Underscore.js in *noConflict* mode, returning the `_` variable to its\n  // previous owner. Returns a reference to the Underscore object.\n  _.noConflict = function() {\n    root._ = previousUnderscore;\n    return this;\n  };\n\n  // Keep the identity function around for default iterators.\n  _.identity = function(value) {\n    return value;\n  };\n\n  // Run a function **n** times.\n  _.times = function (n, iterator, context) {\n    for (var i = 0; i < n; i++) iterator.call(context, i);\n  };\n\n  // Escape a string for HTML interpolation.\n  _.escape = function(string) {\n    return (''+string).replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/\"/g, '&quot;').replace(/'/g, '&#x27;').replace(/\\//g,'&#x2F;');\n  };\n\n  // Add your own custom functions to the Underscore object, ensuring that\n  // they're correctly added to the OOP wrapper as well.\n  _.mixin = function(obj) {\n    each(_.functions(obj), function(name){\n      addToWrapper(name, _[name] = obj[name]);\n    });\n  };\n\n  // Generate a unique integer id (unique within the entire client session).\n  // Useful for temporary DOM ids.\n  var idCounter = 0;\n  _.uniqueId = function(prefix) {\n    var id = idCounter++;\n    return prefix ? prefix + id : id;\n  };\n\n  // By default, Underscore uses ERB-style template delimiters, change the\n  // following template settings to use alternative delimiters.\n  _.templateSettings = {\n    evaluate    : /<%([\\s\\S]+?)%>/g,\n    interpolate : /<%=([\\s\\S]+?)%>/g,\n    escape      : /<%-([\\s\\S]+?)%>/g\n  };\n\n  // When customizing `templateSettings`, if you don't want to define an\n  // interpolation, evaluation or escaping regex, we need one that is\n  // guaranteed not to match.\n  var noMatch = /.^/;\n\n  // Within an interpolation, evaluation, or escaping, remove HTML escaping\n  // that had been previously added.\n  var unescape = function(code) {\n    return code.replace(/\\\\\\\\/g, '\\\\').replace(/\\\\'/g, \"'\");\n  };\n\n  // JavaScript micro-templating, similar to John Resig's implementation.\n  // Underscore templating handles arbitrary delimiters, preserves whitespace,\n  // and correctly escapes quotes within interpolated code.\n  _.template = function(str, data) {\n    var c  = _.templateSettings;\n    var tmpl = 'var __p=[],print=function(){__p.push.apply(__p,arguments);};' +\n      'with(obj||{}){__p.push(\\'' +\n      str.replace(/\\\\/g, '\\\\\\\\')\n         .replace(/'/g, \"\\\\'\")\n         .replace(c.escape || noMatch, function(match, code) {\n           return \"',_.escape(\" + unescape(code) + \"),'\";\n         })\n         .replace(c.interpolate || noMatch, function(match, code) {\n           return \"',\" + unescape(code) + \",'\";\n         })\n         .replace(c.evaluate || noMatch, function(match, code) {\n           return \"');\" + unescape(code).replace(/[\\r\\n\\t]/g, ' ') + \";__p.push('\";\n         })\n         .replace(/\\r/g, '\\\\r')\n         .replace(/\\n/g, '\\\\n')\n         .replace(/\\t/g, '\\\\t')\n         + \"');}return __p.join('');\";\n    var func = new Function('obj', '_', tmpl);\n    if (data) return func(data, _);\n    return function(data) {\n      return func.call(this, data, _);\n    };\n  };\n\n  // Add a \"chain\" function, which will delegate to the wrapper.\n  _.chain = function(obj) {\n    return _(obj).chain();\n  };\n\n  // The OOP Wrapper\n  // ---------------\n\n  // If Underscore is called as a function, it returns a wrapped object that\n  // can be used OO-style. This wrapper holds altered versions of all the\n  // underscore functions. Wrapped objects may be chained.\n  var wrapper = function(obj) { this._wrapped = obj; };\n\n  // Expose `wrapper.prototype` as `_.prototype`\n  _.prototype = wrapper.prototype;\n\n  // Helper function to continue chaining intermediate results.\n  var result = function(obj, chain) {\n    return chain ? _(obj).chain() : obj;\n  };\n\n  // A method to easily add functions to the OOP wrapper.\n  var addToWrapper = function(name, func) {\n    wrapper.prototype[name] = function() {\n      var args = slice.call(arguments);\n      unshift.call(args, this._wrapped);\n      return result(func.apply(_, args), this._chain);\n    };\n  };\n\n  // Add all of the Underscore functions to the wrapper object.\n  _.mixin(_);\n\n  // Add all mutator Array functions to the wrapper.\n  each(['pop', 'push', 'reverse', 'shift', 'sort', 'splice', 'unshift'], function(name) {\n    var method = ArrayProto[name];\n    wrapper.prototype[name] = function() {\n      var wrapped = this._wrapped;\n      method.apply(wrapped, arguments);\n      var length = wrapped.length;\n      if ((name == 'shift' || name == 'splice') && length === 0) delete wrapped[0];\n      return result(wrapped, this._chain);\n    };\n  });\n\n  // Add all accessor Array functions to the wrapper.\n  each(['concat', 'join', 'slice'], function(name) {\n    var method = ArrayProto[name];\n    wrapper.prototype[name] = function() {\n      return result(method.apply(this._wrapped, arguments), this._chain);\n    };\n  });\n\n  // Start chaining a wrapped Underscore object.\n  wrapper.prototype.chain = function() {\n    this._chain = true;\n    return this;\n  };\n\n  // Extracts the result from a wrapped and chained object.\n  wrapper.prototype.value = function() {\n    return this._wrapped;\n  };\n\n}).call(this);\n"
  },
  {
    "path": "newscoop/js/views/PaginatorView.js",
    "content": "/**\n * Paginator view\n */\nwindow.PaginatorView = Backbone.View.extend({\n    events: {\n        'click .next': 'loadNext',\n        'click .prev': 'loadPrev',\n        'click .first': 'loadFirst',\n        'click .last': 'loadLast'\n    },\n\n    initialize: function() {\n        this.pages = this.options.pages;\n        this.collection = this.options.collection;\n\n        this.page = 1;\n        this.prev = false;\n        this.next = this.page < this.pages;\n\n        this.collection.bind('reset', this.render, this);\n\n        this.template = _.template($('#paginator-template').html());\n    },\n\n    render: function() {\n        $(this.el).html(this.template(this));\n        return this;\n    },\n\n    loadNext: function(e) {\n        e.preventDefault();\n\n        if (this.page >= this.pages) {\n            return;\n        }\n\n        this.page++;\n        this.prev = true;\n        this.next = this.page < this.pages;\n        this.collection.fetch({data: {page: this.page}});\n    },\n\n    loadPrev: function(e) {\n        e.preventDefault();\n\n        if (this.page < 1) {\n            return;\n        }\n\n        this.page--;\n        this.prev = this.page > 1;\n        this.next = true;\n        this.collection.fetch({data: {page: this.page}});\n    },\n\n    loadFirst: function(e) {\n        this.page = 2;\n        this.loadPrev(e);\n    },\n\n    loadLast: function(e) {\n        this.page = this.pages - 1;\n        this.loadNext(e);\n    }\n});\n"
  },
  {
    "path": "newscoop/library/Newscoop/Acl/Assertions/SaasAssertion.php",
    "content": "<?php\n\nnamespace Newscoop\\Acl\\Assertions;\n\nuse Zend_Acl_Assert_Interface, Zend_Acl, Zend_Acl_Role_Interface;\n\nclass SaasAssertion implements Zend_Acl_Assert_Interface\n{\n\t/**\n\t *\n\t * @param Zend_Acl $acl\n\t * @param Zend_Acl_Role_Interface $role\n\t * @param Zend_Acl_Resource_Interface $resource\n\t * @param string $privilege\n\t */\n\tpublic function assert(Zend_Acl $acl,\n                           Zend_Acl_Role_Interface $role = null,\n                           Zend_Acl_Resource_Interface $resource = null,\n                           $privilege = null)\n\t{\n\t\tvar_dump( 'got here' );\n\t\treturn false;\n\t}\n}\n?>"
  },
  {
    "path": "newscoop/library/Newscoop/Acl/Storage.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Acl;\n\nuse Resource\\Acl\\StorageInterface;\nuse Newscoop\\Utils\\PermissionToAcl;\n\n/**\n * Acl storage\n */\nclass Storage implements StorageInterface\n{\n    /** @var Newscoop\\Doctrine\\Registry */\n    protected $doctrine;\n\n    /**\n     * @var Newscoop\\Doctrine\\Registry $doctrine\n     */\n    public function __construct($doctrine)\n    {\n        $this->doctrine = $doctrine;\n    }\n\n    /**\n     * Get rules for role\n     *\n     * @param Zend_Acl_Role_Interface $role\n     * @return array\n     */\n    public function getRules(\\Zend_Acl_Role_Interface $role)\n    {\n        $em = $this->doctrine->getManager();\n        $queryBuilder = $em->getRepository('Newscoop\\Entity\\Acl\\Rule')\n            ->createQueryBuilder('r')\n            ->select('r.resource, r.action, r.type')\n            ->where('r.role = :role')\n            ->setParameter('role', $role->getRoleId());\n\n        if (is_a($role, '\\Newscoop\\Entity\\User\\Group')) { // @fix WOBS-568: ignore deny rules for roles\n            $queryBuilder->andWhere('r.type = :allow')\n                ->setParameter('allow', 'allow');\n        }\n\n        return $queryBuilder->getQuery()->getArrayResult();\n    }\n\n    /**\n     * Get dynamic resources\n     *\n     * @return array\n     */\n    public function getResources()\n    {\n        $em = $this->doctrine->getManager();\n        $permissions = $em->getRepository('Newscoop\\Entity\\Acl\\Permission')\n            ->createQueryBuilder('p')\n            ->select('p.name')\n            ->getQuery()\n            ->getArrayResult();\n\n        $resources = array();\n        foreach ($permissions as $permission) {\n            try {\n                list($resource, $action) = PermissionToAcl::translate($permission['name']);\n            } catch (\\InvalidArgumentException $e) { // ignore obsolete permissions\n                continue;\n            }\n\n            if (!isset($resources[$resource])) {\n                $resources[$resource] = array();\n            }\n            $resources[$resource][] = $action;\n        }\n\n        return $resources;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Annotations/Acl.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Annotations;\n\nuse Doctrine\\Common\\Annotations\\Annotation;\n\n/**\n * Acl annotation class\n *\n * @Annotation\n */\nclass Acl extends Annotation\n{\n    /** @var string */\n    public $resource;\n\n    /** @var string */\n    public $action;\n\n    /** @var string */\n    public $ignore;\n\n    /** @var string */\n    public $allow;\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Article/LinkService.php",
    "content": "<?php\n/**\n * @package   Newscoop\n * @author    Mischa Gorinskat <mischa.gorinskat@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license   http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Article;\n\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Router\\RouterFactory;\nuse Newscoop\\Entity\\Article;\nuse Symfony\\Component\\Routing\\Router;\n\n/**\n * Link Service\n */\nclass LinkService\n{\n    /** @var array */\n    static $urlMap = array(\n        'ä' => 'ae',\n        'Ä' => 'ae',\n        'á' => 'a',\n        'à' => 'a',\n        'â' => 'a',\n        'æ' => 'a',\n        'é' => 'e',\n        'é' => 'e',\n        'è' => 'e',\n        'è' => 'e',\n        'ü' => 'ue',\n        'Ü' => 'ue',\n        'ö' => 'oe',\n        'Ö' => 'oe',\n        'ß' => 'ss',\n        'ç' => 'c',\n        'ê' => 'e',\n        'ê' => 'e',\n        'ì' => 'i',\n        'ì' => 'i',\n        'í' => 'i',\n        'í' => 'i',\n        'ô' => 'o',\n        'ô' => 'o',\n        'œ' => 'o',\n        'ò' => 'o',\n        'ò' => 'o',\n        'ó' => 'o',\n        'ó' => 'o',\n        'ù' => 'u',\n        'ù' => 'u',\n        'û' => 'u',\n        'û' => 'u',\n        'ú' => 'u',\n        'ú' => 'u',\n        'ÿ' => 'y',\n        'Ÿ' => 'y',\n    );\n\n    /**\n     * @var array\n     */\n    protected $sectionTypes = array(\n        'bloginfo',\n    );\n\n    /**\n     * @var Doctrine\\ORM\\EntityManager\n     */\n    protected $em;\n\n    /**\n     * @var Newscoop\\Router\n     */\n    protected $router;\n\n    /**\n     * @var Router\n     */\n    protected $symfonyRouter;\n\n    /**\n     * @param EntityManager                  $em\n     * @param Zend_Controller_Router_Rewrite $router\n     * @param Router                         $symfonyRouter\n     */\n    public function __construct(EntityManager $em, \\Zend_Controller_Router_Rewrite $router, Router $symfonyRouter)\n    {\n        $this->em = $em;\n        $this->router = $router;\n        $this->symfonyRouter = $symfonyRouter;\n    }\n\n    /**\n     * Get link\n     *\n     * @param Newscoop\\Entity\\Article $article\n     *\n     * @return string\n     */\n    public function getLink(Article $article)\n    {\n        if (!$article->isPublished()) {\n            return null;\n        }\n\n        $link = array(\n            $this->getPublicationAliasName($article),\n            ($article->getLanguage()) ? $article->getLanguage()->getCode() : null,\n            $this->getIssueShortName($article),\n            $this->getSectionShortName($article),\n        );\n\n        if (!in_array($article->getType(), $this->sectionTypes)) {\n            $link[] = $article->getNumber();\n            $link[] = $this->getSeo($article, ($article->getPublication()) ? $article->getPublication()->getSeo() : array());\n        }\n\n        $link = array_map(function ($part) {\n            return trim($part, '/');\n        }, $link);\n\n        $link = implode('/', $link);\n        \n        return strpos($link, 'http') === 0 ? $link : 'http://' . $link;\n    }\n\n    /**\n     * Get canonical link\n     *\n     * @param Newscoop\\Entity\\Article $article\n     * @return string\n     */\n    public function getLinkCanonical(Article $article)\n    {\n        $link = array(\n            trim($this->getPublicationAliasName($article), '/'),\n            ($article->getLanguage()) ? $article->getLanguage()->getCode() : null,\n            $this->getIssueShortName($article),\n            $this->getSectionShortName($article),\n        );\n\n        if (!in_array($article->getType(), $this->sectionTypes)) {\n            $link[] = $article->getNumber();\n        }\n\n        $link = implode('/', $link);\n        return strpos($link, 'http') === 0 ? $link : 'http://' . $link;\n    }\n\n    /**\n     * Get publication alias\n     *\n     * @param  Article $article\n     *\n     * @return string           Name of the publication alias\n     */\n    public function getPublicationAliasName(Article $article)\n    {\n        $alias = $this->em->getRepository('Newscoop\\Entity\\Aliases')->findOneBy(array(\n            'id' => ($article->getPublication()) ? $article->getPublication()->getDefaultAliasId() : null,\n            'publication' => $article->getPublication(),\n        ));\n\n        return $alias ? $alias->getName() : null;\n    }\n\n    /**\n     * Get issue short name\n     *\n     * @param Newscoop\\Entity\\Article $article\n     * @return string\n     */\n    public function getIssueShortName(Article $article)\n    {\n        $issue = $this->em->getRepository('Newscoop\\Entity\\Issue')->findOneBy(array(\n            'number' => $article->getIssueId(),\n            'publication' => $article->getPublicationId(),\n            'language' => $article->getLanguageId(),\n        ));\n\n        return $issue ? $issue->getShortName() : null;\n    }\n\n    /**\n     * Get section short name\n     *\n     * @param Newscoop\\Entity\\Article $article\n     * @return string\n     */\n    public function getSectionShortName(Article $article)\n    {\n        $issue = $this->em->getRepository('Newscoop\\Entity\\Issue')\n            ->findOneBy(array(\n                'number' => $article->getIssueId(),\n                'publication' => $article->getPublicationId(),\n                'language' => $article->getLanguageId(),\n            ));\n\n        if (!$issue) {\n            return null;\n        }\n\n        $section = $this->em->getRepository('Newscoop\\Entity\\Section')->findOneBy(array(\n            'number' => $article->getSectionId(),\n            'publication' => $article->getPublicationId(),\n            'language' => $article->getLanguageId(),\n            'issue' => $issue ? $issue->getId() : null,\n        ));\n\n        return $section ? $section->getShortName() : null;\n    }\n\n    /**\n     * Get seo string\n     *\n     * @param object $article\n     * @param array $fields\n     * @return string\n     */\n    public function getSeo($article, array $fields)\n    {\n        $seo = array();\n        foreach ($fields as $field => $value) {\n            switch ($field) {\n                case 'name':\n                    $seo[] = trim($article->getName());\n                    break;\n\n                case 'keywords':\n                    $seo[] = trim($article->getKeywords());\n                    break;\n\n                case 'topics':\n                    $articleTopics = \\ArticleTopic::GetArticleTopics($article->getNumber());\n                    if (is_array($articleTopics)) {\n                        foreach ($articleTopics as $topic) {\n                            $seo[] = trim($topic->getName($article->getLanguageId()));\n                        }\n                    }\n                    break;\n            }\n        }\n\n        $seo = trim(implode('-', array_filter($seo)), '-');\n        $seo = preg_replace('/[\\\\\\\\,\\/\\.\\?\"\\+&%:#]/', '', $seo);\n        if (strlen($seo) > 0) {\n            $seo = str_replace(' ', '-', $seo) . '.htm';\n        }\n        \n        return $this->encode($seo);\n    }\n\n    /**\n     * Encode url\n     *\n     * @param string $url\n     * @return string\n     */\n    public function encode($url)\n    {\n        list($url,) = explode('.', $url, 2);\n        $url = strtolower($url);\n        $url = str_replace(array_keys(self::$urlMap), array_values(self::$urlMap), $url);\n        $url = preg_replace('#[^-a-z0-9.]#', '-', $url);\n        $url = preg_replace('#[-]{2,}#', '-', $url);\n        return trim($url, '-') . '.htm';\n    }\n\n    /**\n     * Get article topic name\n     *\n     * @param object $article\n     * @return string\n     */\n    public function getArticleTopicName($article)\n    {\n        $topics = $article->getTopicNames();\n        return empty($topics) ? null : array_shift($topics);\n    }\n\n    /**\n     * Get curent request base url path.\n     *\n     * @param string $path path to be appended to base url\n     *\n     * @return string composed path\n     */\n    public function getBaseUrl($path = '')\n    {\n        $context = $this->symfonyRouter->getContext();\n        $baseUrl = $context->getScheme().'://'.$context->getHost().$path;\n\n        return $baseUrl;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Article/SearchService.php",
    "content": "<?php\n/**\n * @package   Newscoop\n * @author    Mischa Gorinskat <mischa.gorinskat@gsourcfabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license   http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Article;\n\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Search\\ServiceInterface;\nuse Newscoop\\Search\\DocumentInterface;\nuse Newscoop\\WebcodeFacade;\nuse Newscoop\\Image\\RenditionService;\nuse Newscoop\\Article\\LinkService;\nuse Newscoop\\Entity\\Article;\n\n/**\n * Search Service\n */\nclass SearchService implements ServiceInterface\n{\n    /**\n     * @var Newscoop\\Webcode\\Mapper\n     */\n    protected $webcoder;\n\n    /**\n     * @var Newscoop\\Image\\RenditionService\n     */\n    protected $renditionService;\n\n    /**\n     * @var Newscoop\\Article\\LinkService\n     */\n    protected $linkService;\n\n    /**\n     * @var array\n     */\n    protected $config = array(\n        'rendition' => null,\n        'type' => array('all')\n    );\n\n    /**\n     * @var array\n     */\n    protected $switches = array(\n        'print',\n    );\n\n    /**\n     * @var Doctrine\\ORM\\EntityManager\n     */\n    protected $em;\n\n    /**\n     * @param Newscoop\\Webcode\\Mapper $webcoder\n     * @param Newscoop\\Image\\RenditionService $renditionService\n     * @param Newscoop\\Article\\LinkService $linkService\n     * @param array $config\n     */\n    public function __construct(\n        WebcodeFacade $webcoder,\n        RenditionService $renditionService,\n        LinkService $linkService,\n        EntityManager $em\n    ) {\n        $this->webcoder = $webcoder;\n        $this->renditionService = $renditionService;\n        $this->linkService = $linkService;\n        $this->em = $em;\n    }\n\n    /**\n     * Return type for this search service\n     *\n     * @return string identifier\n     */\n    public function getType()\n    {\n        return 'article';\n    }\n\n    /**\n     * Return sub type for the document\n     *\n     * @return string identifier\n     */\n    public function getSubType(DocumentInterface $article)\n    {\n        return $article->getType();\n    }\n\n    /**\n     * Test if article is indexed\n     *\n     * @param Newscoop\\Entity\\Article $article\n     * @return bool\n     */\n    public function isIndexed(DocumentInterface $article)\n    {\n        return $article->getIndexed() !== null;\n    }\n\n    /**\n     * Test if article can be indexed\n     *\n     * @param Newscoop\\Entity\\Article $article\n     * @return bool\n     */\n    public function isIndexable(DocumentInterface $article)\n    {\n        return $article->isPublished()\n            && $article->getLanguageId() > 0\n            && $article->getSectionId() > 0;\n    }\n\n    /**\n     * Get document representation for article\n     *\n     * @param Newscoop\\Entity\\Article $article\n     * @return array\n     */\n    public function getDocument(DocumentInterface $article)\n    {\n        $image = null;\n        $renditions = $this->renditionService->getRenditions();\n        if (is_array($renditions) && count($renditions) > 0) {\n            $image = $this->renditionService->getArticleRenditionImage($article->getNumber(), key($renditions));\n        }\n\n        $webcode = $this->webcoder->getArticleWebcode($article);\n        if (strpos($webcode, 0, 1) != '+') {\n            $webcode = '+'.$webcode;\n        }\n\n        $doc = array(\n            'id' => $this->getDocumentId($article),\n            'number' => $article->getNumber(),\n            'type' => $article->getType(),\n            'webcode' => $webcode,\n            'title' => $article->getTitle(),\n            'updated' => gmdate(self::DATE_FORMAT, $article->getDate()->getTimestamp()),\n            'published' => gmdate(self::DATE_FORMAT, $article->getPublishDate()->getTimestamp()),\n            'image' => $image ? $image['src'] : null,\n            'link' => $this->linkService->getLink($article),\n\n            'language' => $article->getLanguageCode(),\n            'language_id' => $article->getLanguageId(),\n\n            'publication_number' => $article->getPublication() ? $article->getPublication()->getId() : null,\n            'issue_number' => $article->getIssue() ? $article->getIssue()->getNumber() : null,\n            // TODO: check if we can remove one\n            'section_number' => $article->getSection() ? $article->getSection()->getNumber() : null,\n            'section_id' => $article->getSection() ? $article->getSection()->getNumber() : null,\n\n            'section' => $this->linkService->getSectionShortName($article),\n            'section_name' => $article->getSection() ? $article->getSection()->getName() : null,\n            'authors' => $article->getArticleAuthors()->map(function ($author) {\n                return $author->getView()->name;\n            })->toArray(),\n            'keywords' => array_filter(explode(',', $article->getKeywords())),\n            'topics' => array_values($article->getTopicNames()),\n            'switches' => $this->getArticleSwitches($article),\n        );\n\n        return array_filter($this->addDataFields($doc, $article));\n    }\n\n    /**\n     * Get document id\n     *\n     * @param Newscoop\\Entity\\Article $article\n     * @return string\n     */\n    public function getDocumentId(DocumentInterface $article)\n    {\n        return sprintf('%s-%d-%d', $this->getType(), $article->getNumber(), $article->getLanguageId());\n    }\n\n    /**\n     * Get event article datetime\n     *\n     * @param Newscoop\\Entity\\Article $article\n     * @return ArticleDatetime\n     */\n    public function getArticleDatetime($article)\n    {\n        return $this->em->getRepository('Newscoop\\Entity\\ArticleDatetime')->findOneBy(array(\n            'articleId' => $article->getNumber(),\n            'fieldName' => 'schedule',\n        ));\n    }\n\n    /**\n     * Get article switches\n     *\n     * @param Newscoop\\Entity\\Article $article\n     * @return array\n     */\n    public function getArticleSwitches($article)\n    {\n        $switches = array();\n\n        foreach ($this->switches as $switch) {\n            try {\n                if ($article->getData($switch)) {\n                    $switches[] = $switch;\n                }\n            } catch (\\Exception $e) {/*just ignore if switch don't exists*/}\n        }\n    }\n\n    public function searchArticles($articleSearchCriteria, $onlyPublished = true, $returnQuery = false)\n    {\n        if ($articleSearchCriteria->query) {\n            $keywords = array_diff(explode(',', $articleSearchCriteria->query), array(''));\n\n            $webcodeMatches = preg_grep(\"`^\\s*[\\+@]`\", $keywords);\n            if (count($webcodeMatches)) {\n                $webcode = ltrim(current($webcodeMatches), '@+');\n                $article = $this->webcoder->findArticleByWebcode($webcode);\n\n                if ($article) {\n                    return array($article);\n                }\n            }\n        }\n\n        $articlesQuery = $this->em->getRepository('Newscoop\\Entity\\Article')\n            ->searchArticles(\n                $articleSearchCriteria,\n                $onlyPublished\n            );\n\n        if (!$returnQuery) {\n           return $articlesQuery->getResult();\n        }\n\n        return $articlesQuery;\n    }\n\n    /**\n     * Add field properties to document\n     *\n     * @param  array $doc\n     *\n     * @return array\n     */\n    private function addDataFields(array $doc, $article)\n    {\n        $articleData = new \\ArticleData($article->getType(), $article->getNumber(), $article->getLanguageId());\n        if (count($articleData->getUserDefinedColumns()) == 0) {\n            return $doc;\n        }\n\n        $fields = array();\n        foreach ($articleData->getUserDefinedColumns() as $column) {\n            $doc[$column->getPrintName()] = $articleData->getFieldValue($column->getPrintName());\n        }\n\n        return $doc;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/ArticleDatetime.php",
    "content": "<?php\n\nnamespace Newscoop;\n\n/**\n * The datetime object class used in the ArticleDatetime to pass date formats\n * @author mihaibalaceanu\n */\nclass ArticleDatetime\n{\n    protected $startDate = null;\n\n    protected $endDate = null;\n\n    protected $startTime = null;\n\n    protected $endTime = null;\n\n    protected $recurring = null;\n\n    protected $spawns = array();\n\n    /**\n     * @param mixed $format\n     * \t\tarray of start_date, end_date, etc. keys\n     * \t\tarray with 1 element: start_date => end_date strings - Date and Time formats: http://php.net/manual/en/datetime.formats.php\n     * \t\tstring formatted like above and start separated by end with a - (dash) padded with spaces\n     * \t\talso in case of array you can add recurring => [daily|weekly|etc.]\n     * @param string $recurring\n     * @todo check start < end\n     */\n    public function __construct($format, $recurring=null)\n    {\n        if (is_array($format))\n        {\n            if (array_key_exists('start_date', $format))\n            {\n                $this->setStartDate($format['start_date']);\n                $this->setEndDate(isset($format['end_date']) ? $format['end_date'] : null);\n                $this->setStartTime(isset($format['start_time']) ? $format['start_time'] : null);\n                $this->setEndTime(isset($format['end_time']) ? $format['end_time'] : null);\n                if (isset($format['recurring'])) {\n                    $this->recurring = $format['recurring'];\n                }\n                return;\n            }\n            $start = key($format);\n            $end = current($format);\n        }\n        elseif (is_string($format))\n        {\n            list($start, $end) = explode(\" - \", $format);\n            if (in_array( ($end = trim($end)), array( '1', '0', 'true', 'false'))) {\n                $end = (bool) $end;\n            }\n        }\n\n        $this->setRecurring($recurring);\n\n        if (!( $startTimestamp = strtotime($start))) {\n            return;\n        }\n\n        $parsedStart = date_parse($start);\n        $startHasDate = $parsedStart['month']!==false && $parsedStart['day']!==false;\n        $startHasTime = $parsedStart['hour']!==false && $parsedStart['minute']!==false;\n\n        $startDate = strftime('%F', $startTimestamp);\n\n        switch (true)\n        {\n            // TODO fix midnight for relative formats\n            case is_bool($end) && $end : // full day\n                $this->setStartDate($startDate);\n                $this->setStartTime($startHasTime ? strftime('%T', $startTimestamp) : null);\n                $this->setEndDate(null);\n                $this->setEndTime(null);\n                break;\n\n            case is_string($end) : // ...until date, or just a single time value for the date\n\n                $parsedEnd = date_parse($end);\n                $endHasDate = $parsedEnd['month']!==false && $parsedEnd['day']!==false;\n                $endHasTime = $parsedEnd['hour']!==false && $parsedEnd['minute']!==false;\n\n                $end = preg_replace(\"/-\\s*recurring:(\\w+)/\", \"\", $end);\n\n                $this->setStartDate($startDate);\n\n                if ($endHasDate) {\n                    $this->setEndDate(strftime('%F', strtotime($end)));\n                }\n                if ($endHasTime && ($parsedEnd['hour']!=0 || $parsedEnd['minute']!=0 || $parsedEnd['second']!=0)) {\n                    $this->setEndTime(strftime('%T', strtotime($end)));\n                }\n\n                if ($startHasTime && ($parsedStart['hour']!=0 || $parsedStart['minute']!=0 || $parsedStart['second']!=0)) {\n                    $this->setStartTime(strftime('%T', strtotime($start)));\n                }\n\n                break;\n\n            case is_array($end) : // time interval for current date\n\n                $spawn =& $this;\n                foreach ($end as $startTime => $endTime)\n                {\n                    if ($startTime == 'recurring' ) { // TODO dirty fix for reccuring flag take out\n                        continue;\n                    }\n                    $spawn->setStartDate($startDate);\n                    $spawn->setEndDate(null);\n                    $spawn->setStartTime(strftime('%T', strtotime($startTime)));\n                    $spawn->setEndTime(strftime('%T', strtotime($endTime)));\n\n                    $this->spawns[] = clone $spawn;\n                    $spawn =& $this->spawns[count($this->spawns)-1];\n                };\n                array_pop($this->spawns);\n                break;\n        }\n    }\n\n    /**\n     * clears spawns\n     */\n    public function __clone()\n    {\n        $this->spawns = array();\n    }\n\n    /**\n     * @param string $value date format\n     */\n    public function setStartDate($value)\n    {\n        $this->startDate = is_null($value) ? null : new \\DateTime($value);\n    }\n\n    /**\n     * @param string $value\n     */\n    public function setStartTime($value)\n    {\n        $this->startTime = is_null($value) ? null : new \\DateTime($value);\n    }\n\n    /**\n     * @param string $value\n     */\n    public function setEndDate($value)\n    {\n        $this->endDate = is_null($value) ? null : new \\DateTime($value);\n    }\n\n    /**\n     * @param string $value\n     */\n    public function setEndTime($value)\n    {\n        $this->endTime = is_null($value) ? null : new \\DateTime($value);\n    }\n\n    /**\n     * @return \\DateTime\n     */\n    public function getStartDate()\n    {\n        return $this->startDate;\n    }\n\n    /**\n     * @return \\DateTime\n     */\n    public function getStartTime()\n    {\n        return $this->startTime;\n    }\n\n    /**\n     * @return \\DateTime\n     */\n    public function getEndDate()\n    {\n        return $this->endDate;\n    }\n\n    /**\n     * @return \\DateTime\n     */\n    public function getEndTime()\n    {\n        return $this->endTime;\n    }\n\n    /**\n     * Set recurring flag\n     * @param string $value daily|weekly|monthly|yearly\n     */\n    public function setRecurring($value)\n    {\n        if (!in_array( $value, array('daily', 'weekly', 'monthly', 'yearly'))) {\n            return false;\n        }\n        $this->recurring = $value;\n    }\n\n    /**\n     * Get if date object is recurring\n     */\n    public function getRecurring()\n    {\n        return $this->recurring;\n    }\n\n    /**\n     * Get other spawned objects from a contruct\n     */\n    public function getSpawns()\n    {\n        return $this->spawns;\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Auth/Adapter.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Auth;\n\nuse Doctrine\\ORM\\EntityRepository,\n    Zend_Auth_Adapter_Interface,\n    Zend_Auth_Result;\n\n/**\n * Auth adapter\n */\nclass Adapter implements Zend_Auth_Adapter_Interface\n{\n    /** @var Doctrine\\ORM\\EntityRepository */\n    protected $repository;\n\n    /** @var string */\n    protected $username;\n\n    /** @var string */\n    protected $password;\n\n    /**\n     * @param Doctrine\\ORM\\EntityRepository\n     * @param string $username\n     * @param string $password\n     */\n    public function __construct(EntityRepository $repository, $username, $password)\n    {\n        $this->repository = $repository;\n        $this->username = (string) $username;\n        $this->password = (string) $password;\n    }\n\n    /**\n     * Authenticate user\n     *\n     * @return Zend_Auth_Result\n     */\n    public function authenticate()\n    {\n        $user = $this->repository->findOneBy(array(\n            'username' => $this->username,\n            'password' => sha1($this->password),\n        ));\n\n        $code = $user ? Zend_Auth_Result::SUCCESS : Zend_Auth_Result::FAILURE;\n\n        return new Zend_Auth_Result($code, $user ? $user->getId() : NULL);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Cache/CacheKey.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2015 Sourcefabric o.p.s.\n * @author Paweł Mikołąjczuk <pawel.mikolajczuk@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Cache;\n\n/**\n * Cache key\n */\nclass CacheKey extends \\Newscoop\\ValueObject\n{\n    public $key;\n\n    public function __toString()\n    {\n        return $this->key;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Command.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop;\n\n/**\n */\nabstract class Command extends ValueObject\n{\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Comment/SearchService.php",
    "content": "<?php\n/**\n * @package   Newscoop\n * @author    Mischa Gorinskat <mischa.gorinskat@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license   http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Comment;\n\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Search\\ServiceInterface;\nuse Newscoop\\Search\\DocumentInterface;\nuse Newscoop\\Article\\LinkService;\n\n/**\n * Search Service\n */\nclass SearchService implements ServiceInterface\n{\n    /**\n     * @var Newscoop\\Article\\LinkService\n     */\n    protected $articleLinkService;\n\n    /**\n     * @var Doctrine\\ORM\\EntityManager\n     */\n    protected $em;\n\n    /**\n     * @param Newscoop\\Article\\LinkService $articleLinkService\n     * @param Doctrine\\ORM\\EntityManager $em\n     */\n    public function __construct(LinkService $articleLinkService, EntityManager $em)\n    {\n        $this->articleLinkService = $articleLinkService;\n        $this->em = $em;\n    }\n\n    /**\n     * Return type for this search service\n     *\n     * @return string identifier\n     */\n    public function getType()\n    {\n        return 'comment';\n    }\n\n    /**\n     * Return type for this search service\n     *\n     * @return string identifier\n     */\n    public function getSubType(DocumentInterface $comment)\n    {\n        return 'comment';\n    }\n\n    /**\n     * Test if comment is indexed\n     *\n     * @param Newscoop\\Entity\\Comment $comment\n     * @return bool\n     */\n    public function isIndexed(DocumentInterface $comment)\n    {\n        return $comment->getIndexed() !== null;\n    }\n\n    /**\n     * Test if comment can be indexed\n     *\n     * @param Newscoop\\Entity\\Comment $comment\n     * @return bool\n     */\n    public function isIndexable(DocumentInterface $comment)\n    {\n        return $comment->getStatus() === 'approved';\n    }\n\n    /**\n     * Get document for comment\n     *\n     * @param Newscoop\\Entity\\Comment $comment\n     * @return array\n     */\n    public function getDocument(DocumentInterface $comment)\n    {\n        $articleNumber = $comment->getThread();\n        $language = $comment->getLanguage();\n        $article = $this->em->getRepository('Newscoop\\Entity\\Article')\n            ->find(array('number' => $articleNumber, 'language' => $language->getId()));\n\n        return array(\n            'id' => $this->getDocumentId($comment),\n            'number' => $comment->getId(),\n            'type' => 'comment',\n            'subject' => $comment->getSubject(),\n            'message' => $comment->getMessage(),\n            'published' => gmdate(self::DATE_FORMAT, $comment->getTimeCreated()->getTimestamp()),\n            'link' => sprintf('%s#comment_%d', $this->articleLinkService->getLink($article), $comment->getId()),\n        );\n    }\n\n    /**\n     * Get document id\n     *\n     * @param Newscoop\\Entity\\Comment $comment\n     * @return string\n     */\n    public function getDocumentId(DocumentInterface $comment)\n    {\n        return sprintf('%s-%d', $this->getType(), $comment->getId());\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Composer/ScriptHandler.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Composer;\n\nuse Symfony\\Component\\Process\\PhpExecutableFinder;\nuse Symfony\\Component\\Process\\Process;\n\n/**\n */\nclass ScriptHandler\n{\n    const TIMEOUT = 300;\n\n    public static function generateOrmProxies($event)\n    {\n        $io = $event->getIO();\n        $io->write('Generating ORM proxies');\n\n        $phpFinder = new PhpExecutableFinder();\n        $phpPath = $phpFinder->find();\n        if (!$phpPath) {\n            throw new \\RuntimeException('The php executable could not be found, add it to your PATH environment variable and try again');\n        }\n\n        $php = escapeshellarg($phpPath);\n        $doctrine = escapeshellarg(__DIR__ . '/../../../scripts/doctrine.php');\n        $process = new Process(\"$php $doctrine orm:generate-proxies\", null, null, null, self::TIMEOUT);\n        $process->run();\n        if (!$process->isSuccessful()) {\n            throw new \\RuntimeException('An error occurred when executing the Generating ORM proxies command.');\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Content/ContentTypeService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Content;\n\nuse Doctrine\\ORM\\EntityManager;\n\n/**\n * Content Type Service\n */\nclass ContentTypeService\n{\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $orm;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $orm\n     */\n    public function __construct(EntityManager $orm)\n    {\n        $this->orm = $orm;\n    }\n\n    /**\n     * Get options\n     *\n     * @return array\n     */\n    public function getOptions()\n    {\n\t    $types = \\ArticleType::GetArticleTypes($p_includeHidden = false);\n\n        $options = array();\n        foreach ($types as $type) {\n            $options[$type] = $type;\n        }\n\n        return $options;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Content/PublicationService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Content;\n\nuse Doctrine\\ORM\\EntityManager;\n\n/**\n * Publication Service\n */\nclass PublicationService\n{\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $orm;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $orm\n     */\n    public function __construct(EntityManager $orm)\n    {\n        $this->orm = $orm;\n    }\n\n    /**\n     * Get options\n     *\n     * @return array\n     */\n    public function getOptions()\n    {\n        $query = $this->orm->getRepository('Newscoop\\Entity\\Publication')\n            ->createQueryBuilder('p')\n            ->select('p.id, p.name')\n            ->orderBy('p.name, p.id')\n            ->getQuery();\n\n        $options = array();\n        foreach ($query->getResult() as $row) {\n            $options[$row['id']] = $row['name'];\n        }\n\n        return $options;\n    }\n\n    /**\n     * Find all publications\n     *\n     * @return array\n     */\n    public function findAll()\n    {\n        return $this->orm->getRepository('Newscoop\\Entity\\Publication')\n            ->findAll();\n    }\n\n    public function getPublicationsForMenu()\n    {\n        return $this->orm->getRepository('Newscoop\\Entity\\Publication')\n            ->createQueryBuilder('p')\n            ->select('p', 'i', 's')\n            ->leftJoin('p.issues', 'i')\n            ->leftJoin('i.sections', 's')\n            ->getQuery();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Content/SectionService.php",
    "content": "<?php\n\n/**\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Content;\n\nuse Doctrine\\ORM\\EntityManager;\n\n/**\n * Section Service.\n */\nclass SectionService\n{\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $orm;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $orm\n     */\n    public function __construct(EntityManager $orm)\n    {\n        $this->orm = $orm;\n    }\n\n    /**\n     * Get options.\n     *\n     * @return array\n     */\n    public function getOptions()\n    {\n        $query = $this->orm->getRepository('Newscoop\\Entity\\Section')\n            ->createQueryBuilder('s')\n            ->select('s.number, s.name')\n            ->orderBy('s.name, s.number')\n            ->getQuery();\n\n        $options = array();\n        foreach ($query->getResult() as $row) {\n            $options[$row['number']] = $row['name'];\n        }\n\n        return $options;\n    }\n\n    /**\n     * Get name.\n     *\n     * @param int                         $number\n     * @param Newscoop\\Entity\\Publication $publication\n     * @param Newscoop\\Entity\\Language    $language\n     *\n     * @return string\n     */\n    public function getName($number, \\Newscoop\\Entity\\Publication $publication, \\Newscoop\\Entity\\Language $language = null)\n    {\n        foreach ($publication->getIssues() as $issue) {\n            if ($language !== null && $issue->getLanguage() !== $language) {\n                continue;\n            }\n\n            foreach ($issue->getSections() as $section) {\n                if ($section->getNumber() == $number) {\n                    return $section->getName();\n                }\n            }\n        }\n\n        return;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Controller/Action/Helper/Datatable/ADatatable.php",
    "content": "<?php\n\nnamespace Newscoop\\Controller\\Action\\Helper\\Datatable;\n\nuse Newscoop\\Controller\\Action\\Helper\\Datatable\\Adapter\\AAdapter,\n    Zend_Controller_Action_Helper_Abstract, Adapter;\n\nabstract class ADatatable extends Zend_Controller_Action_Helper_Abstract\n{\n\n    /**\n     * The data adapter\n     * @var AAdapter\n     */\n    protected $_adapter;\n\n    /**\n     * Output object for processed data\n     * @var object\n     */\n    protected $_outputObject;\n\n    /**\n     * Row handler, called for each row in datatable\n     * @var function\n     */\n    protected $_rowHandler;\n\n    /**\n     * Columns\n     * @var array\n     */\n    protected $_cols = array();\n\n    /**\n     * Columns' index\n     * @var array\n     */\n    protected $_colsIndex = array();\n\n    /**\n     * Paramenters for the data fetching\n     * Get them from the request object for example\n     * @var array (search,sort)\n     */\n    protected $_params = array();\n\n    /**\n     * Options\n     * @var array\n     */\n    protected $_options = array();\n\n    /**\n     * @param bool\n     */\n    protected $_isDispatched = false;\n\n    public function init()\n    {\n        $this->_outputObject = new \\stdClass;\n    }\n\n    /**\n     * Set the data adapter\n     * @param Adapter $p_adapter\n     * @return Newscoop\\Controller\\Action\\Helper\\Datatable\\ADatatable\n     */\n    public function setAdapter( AAdapter $p_adapter )\n    {\n        $this->_adapter = $p_adapter;\n        return $this;\n    }\n\n    /**\n     * Get the data adapter\n     * @return Adapter $p_adapter\n     */\n    public function getAdapter( )\n    {\n        return $this->_adapter;\n    }\n\n    /**\n     * Set output object, for example the view object.\n     * @param object $p_object\n     * @return Newscoop\\Controller\\Action\\Helper\\Datatable\\ADatatable\n     */\n    public function setOutputObject( &$p_object )\n    {\n        $this->_outputObject = $p_object;\n        return $this;\n    }\n\n\t/**\n     * Get output object\n     * @return object $p_object\n     */\n    public function getOutputObject( )\n    {\n        return $this->_outputObject;\n    }\n\n    /**\n     * Set row handler\n     * @param function $p_func\n     * @return Newscoop\\Controller\\Action\\Helper\\Datatable\\ADatatable\n     */\n    public function setRowHandler( $p_func )\n    {\n        $this->_rowHandler = $p_func;\n        return $this;\n    }\n\n    /**\n     * Set columns\n     * @param array\n     * @return Newscoop\\Controller\\Action\\Helper\\Datatable\\ADatatable\n     */\n    public function setCols( $p_cols )\n    {\n        $this->_cols      = $p_cols;\n        $this->_colsIndex = array_flip( array_keys( $this->_cols ) );\n        return $this;\n    }\n\n\t/**\n     * Set params\n     * @param array\n     * @return Newscoop\\Controller\\Action\\Helper\\Datatable\\ADatatable\n     */\n    public function setParams( $p_params )\n    {\n        $this->_params = $p_params;\n        return $this;\n    }\n\n \t/**\n     * Set option\n     * @param string $p_key\n     * @param mixed $p_val\n     * @return Newscoop\\Controller\\Action\\Helper\\Datatable\\ADatatable\n     */\n    public function setOption( $p_key, $p_value )\n    {\n        $this->_options[$p_key] = $p_value;\n        return $this;\n    }\n\n\t/**\n     * Set multiple options\n     * @param array $p_options\n     * @return Newscoop\\Controller\\Action\\Helper\\Datatable\\ADatatable\n     */\n    public function setOptions( $p_options )\n    {\n        foreach( $p_options as $key => $opt ) {\n            $this->setOption( $key, $opt );\n        }\n        return $this;\n    }\n\n    /**\n     * Get options\n     * @return array\n     */\n    public function getOptions( )\n    {\n        return $this->_options;\n    }\n\n    /**\n     * Get data and set the out object\n     * @param array $p_params\n     * @param array $p_cols\n     */\n    public function dispatchData( $p_params = null, $p_cols = null )\n    {\n        if( is_null( $this->_adapter ) )\n            throw new \\Exception( 'No adapter' );\n\n        $rows       = array();\n        $rowHandler = $this->_rowHandler;\n        foreach\n        (\n            $theData = $this->_adapter->getData\n            (\n                ( is_null( $p_params ) ? $this->_params : ( $this->setParams( $p_params )->_params ) ),  // reset params here\n                ( is_null( $p_cols ) ? $this->_cols : ( $this->setParams( $p_cols )->_cols ) ) // and cols, if given as param\n            )\n            as $index => $entity\n        )\n        {\n            $rows[] = !is_null($rowHandler) ? $rowHandler( $entity, $index ) : $entity;\n        }\n        $this->_outputObject->iTotalRecords        = $this->_adapter->getCount();\n        $this->_outputObject->iTotalDisplayRecords = $this->_adapter->getCount( $this->_params, $this->_cols );\n        $this->_outputObject->aaData               = $rows;\n        return $this;\n    }\n\n    /**\n     * set output metadata\n     * @param array $p_cols\n     * @param array $p_options\n     */\n    public function dispatchMedatata( $p_cols = null, $p_options = null )\n    {\n        $this->_outputObject->columns = ( is_null( $p_cols ) ? $this->_cols : ( $this->setParams( $p_cols )->_cols ) );\n        $this->_outputObject->options = ( is_null( $p_options ) ? $this->_options : ( $this->setParams( $p_options )->_options ) );\n        return $this;\n    }\n\n    /**\n     * should implement a switching method for data and metadata fetching\n     */\n    abstract public function dispatch( $p_params = null, $p_cols = null, $p_options = null );\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Controller/Action/Helper/Datatable/Adapter/AAdapter.php",
    "content": "<?php \n\nnamespace Newscoop\\Controller\\Action\\Helper\\Datatable\\Adapter;\n\nuse string;\n\nabstract class AAdapter\n{\n    /**\n     * Get data\n     * @todo return decorateable row type object\n     * @return array;\n     */\n    abstract public function getData( array $params, array $cols );\n    \n    /**\n     * Search data\n     * @return array;\n     */\n    abstract public function search( $query, array $cols = null );\n    \n    /**\n     * Sort data\n     * @return array;\n     */\n    abstract public function sort( array $p_cols );\n    \n    /**\n     * Get total count\n     * @param array $p_params\n     * @param array $p_cols\n     * @return int\n     */\n    abstract public function getCount( array $p_params = array(), array $p_cols = array() );\n    \n}"
  },
  {
    "path": "newscoop/library/Newscoop/Controller/Action/Helper/Datatable/Adapter/Doctrine.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Controller\\Action\\Helper\\Datatable\\Adapter;\n\nuse Doctrine\\ORM\\QueryBuilder,\n    Doctrine\\ORM\\EntityManager;\n\n/**\n * Doctrine adapter for datatable\n * copied from DatatableRepository\n */\nclass Doctrine extends AAdapter\n{\n    /** \n     * @var Doctrine\\ORM\\EntityManager \n     */\n    protected $_entityManager;\n\n    /**\n     * @var Doctrine\\ORM\\EntityRepository \n     */\n    protected $_repository;\n\n    /** \n     * @var string\n     */\n    protected $_entityName;\n\n    /**\n     * @var QueryBuilder\n     */\n    protected $_queryObject;\n    \n    /**\n     * @param Doctrine\\ORM\\EntityRepository $repository\n     */\n    public function __construct(  )\n    {\n    }\n    \n    public function setEntityManager( EntityManager $p_entityManager, $p_entityName = null )\n    {\n        $this->_entityManager = $p_entityManager;\n        return $this;   \n    }\n    \n    public function setEntityName( $p_entityName )\n    {\n        $this->_entityName = (string) $p_entityName;\n        $this->_repository = $this->_entityManager->getRepository( $this->_entityName );\n        return $this;\n    }\n    \n\n    public function getData( array $p_params, array $p_cols )\n    {\n        $this->_queryObject = $this->_repository->createQueryBuilder( 'e' );\n        \n        // search\n        if( !empty( $p_params['search'] ) ) {\n            $this->search( $p_params['search'], $p_cols );\n        }\n        \n        // sort\n        if( @count( $p_params['sortCol'] ) ) {\n            $this->sort( $p_params, $p_cols );\n        }\n        \n        // limit\n        $this->_queryObject\n            ->setFirstResult( (int) $p_params['displayStart'] )\n            ->setMaxResults( (int) $p_params['displayLength'] );\n        \n        return $this->_queryObject->getQuery()->getResult();\n    }\n\n    public function search( $query, array $cols = null )\n    {\n        $this->_queryObject->where( $this->buildWhere( $cols, $query ) );\n    }\n    \n    public function sort( array $p_cols )\n    {\n        foreach( array_keys( $p_cols ) as $id => $property ) {\n            if( !is_string( $property ) ) { // not sortable\n                continue;\n            }\n            \n            if(  @in_array( $id, $p_params['sortCol'] ) ) {\n                $dir = @in_array( $id, $p_params['sortDir'] ) ?  : 'asc';\n                $this->_queryObject->orderBy( \"e.$property\", $dir );\n            }\n        }\n    }\n    \n    /**\n     * Get filtered count\n     *\n     * @param array $params\n     * @param array $cols\n     * @return int\n     */\n    public function getCount( array $params = array(), array $cols = array() )\n    {\n        if( empty( $params['search'] ) ) {\n            return $this->getCount();\n        }\n        \n        return $this->_entityManager->createQueryBuilder()->select( 'COUNT(e)' )->from( $this->_entityName, 'e' )\n            ->where( $this->buildWhere( $cols, $params['sSearch'] ) )\n            ->getQuery()->getSingleScalarResult();\n    }\n\n    /**\n     * Build where condition\n     *\n     * @param array $cols\n     * @param string $search\n     * @return Doctrine\\ORM\\Query\\Expr\n     */\n    private function buildWhere( array $cols, $search )\n    {\n        $qb = $this->_repository->createQueryBuilder( 'e' );\n        $or = $qb->expr()->orx();\n        foreach( array_keys( $cols ) as $i => $property ) {\n            if( !is_string( $property ) ) { // not searchable\n                continue;\n            }\n            \n            $or->add( $qb->expr()->like( \"e.$property\", $qb->expr()->literal( \"%{$search}%\" ) ) );\n        }\n        \n        return $or;\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Controller/Action/Helper/Datatable/Adapter/Theme.php",
    "content": "<?php\n\nnamespace Newscoop\\Controller\\Action\\Helper\\Datatable\\Adapter;\n\nuse Newscoop\\Service\\IThemeManagementService,\n    Newscoop\\Service\\Model\\SearchTheme,\n    Newscoop\\Service\\Model\\Search as Search,\n    Newscoop\\Service\\Implementation\\ThemeManagementServiceLocal,\n    Newscoop\\Controller\\Action\\Helper\\Datatable\\Row,\n    Newscoop\\Service,\n    Newscoop\\Entity\\Publication;\n\nclass Theme extends AAdapter\n{\n    /**\n     *\n     * Theme service\n     * @var ThemeManagementServiceLocal\n     */\n    protected $_service;\n\n    /**\n     * The search object\n     * @var SearchTheme\n     */\n    protected $_search;\n\n    /**\n     * Search column index used for filtering per publication\n     * @var int $_pubColFilterIdx\n     */\n    protected $_pubColFilterIdx;\n\n    public function __construct( IThemeManagementService $service )\n    {\n        $this->_service = $service;\n    }\n\n    public function getData( array $p_params, array $p_cols )\n    {\n        $p_params = (object) $p_params;\n        $dataCollection = null;\n\n        if( isset( $p_params->sort ) ) {\n            $this->sort( ( !is_array( $p_params->sort ) ? array( $p_params->sort ) : $p_params->sort ) );\n        }\n\n        // for search by publication\n        if( isset( $p_params->search ) ) {\n            if( @trim( $p_params->search[ $this->_pubColFilterIdx ] ) != \"\" ) {\n                $p = new Publication();\n                $p->setId( intval( $p_params->search[ $this->_pubColFilterIdx ] ) );\n                $dataCollection = $this->_service->getThemes( $p, $this->getSearchObject() );\n            }\n            // @todo ?\n            $this->search( $p_params->search );\n        }\n\n        $retThemes = array();\n        if( is_null( $dataCollection ) ) {\n            $dataCollection = $this->_service->getUnassignedThemes( $this->getSearchObject() );\n        }\n\n        foreach( $dataCollection as $theme )\n        {\n            $images = array();\n            foreach( $this->_service->getPresentationImages( $theme ) as $img ) {\n                $images[] = (string) $img->getPath(); // @todo some sorting\n            }\n            $retThemes[] = array\n            (\n                'id'          => (string) $theme->getId(),\n            \t'title'       => (string) $theme->getName(),\n                'designer'    => (string) $theme->getDesigner(),\n                'version'     => (string) $theme->getVersion(),\n                'subTitle'    => (string) $theme->getMinorNewscoopVersion(),\n                'description' => (string) $theme->getDescription(),\n                'images'\t  => $images,\n                'pubId'       => isset( $p ) ? $p->getId() : null\n            );\n        }\n\n        return $retThemes;\n    }\n\n    public function getCount( array $p_params = array(), array $cols = array() )\n    {\n        $search = $this->getSearchObject();\n        $p_params = (object) $p_params;\n        if( isset( $p_params->search ) )\n        {\n            if( @trim( $p_params->search[ $this->_pubColFilterIdx ] ) != \"\" )\n            {\n                $p = new Publication();\n                $p->setId( intval( $p_params->search[ $this->_pubColFilterIdx ] ) );\n                try\n                {\n                    return $this->_service->getCountThemes( $p, $search );\n                }\n                catch( \\Exception $e )\n                {\n                    return 0;\n                }\n            }\n\n            $this->search( $p_params->search );\n        }\n\n        try\n        {\n            return $this->_service->getCountUnassignedThemes( $search );\n        }\n        catch( \\Exception $e )\n        {\n            return 0;\n        }\n    }\n\n    /**\n     * Define in what column number to look for the publication filter search\n     * @param int $column\n     */\n    public function setPublicationFilterColumn( $column )\n    {\n        $this->_pubColFilterIdx = $column;\n        return $this;\n    }\n\n    public function search( $query, array $cols = null )\n    {\n        return;\n    }\n\n    /**\n     * handle sorting parameters\n     * @see Newscoop\\Controller\\Action\\Helper\\Datatable\\Adapter.AAdapter::sort()\n     */\n    public function sort( array $p_params )\n    {\n        $search = $this->getSearchObject();\n        foreach( $p_params as $k => $v )\n        {\n            switch( $k )\n            {\n                case 1 :\n                case 2 : $colName = 'NAME'; break;\n                case 3 : $colName = 'MINOR_NEWSCOOP_VERSION'; break;\n                default : continue 2;\n            }\n            $sortMethod = ( $v == 'asc' ? 'orderAscending' : 'orderDescending' );\n            $search->$colName->$sortMethod();\n        }\n    }\n\n    /**\n     * Get/set search object\n     * @return SearchTheme\n     */\n    public function getSearchObject()\n    {\n        if( is_null( $this->_search ) )\n            $this->_search = new SearchTheme;\n        return $this->_search;\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Controller/Action/Helper/Datatable/Adapter/ThemeFiles.php",
    "content": "<?php\n\nnamespace Newscoop\\Controller\\Action\\Helper\\Datatable\\Adapter;\n\nuse Newscoop\\Service\\IThemeService,\n    Newscoop\\Service\\Implementation\\ThemeServiceLocalFileSystem;\n\n/**\n * Datatable adapter for one theme's files\n * @author mihaibalaceanu\n */\nclass ThemeFiles extends AAdapter\n{\n    /**\n     * The theme files service\n     * @var Newscoop\\Service\\Implementation\\ThemeServiceLocalFileSystem\n     */\n    protected $_service;\n\n    /**\n     * the theme entity\n     * @var Newscoop\\Entity\\Theme\n     */\n    protected $_theme;\n\n    public function __construct( IThemeService $service, $themeId )\n    {\n        $this->_service = $service;\n        $this->_theme = $this->_service->getById( $themeId );\n\n    }\n\n    public function getData( array $params, array $cols )\n    {\n        var_dump( $this->_service->getFiles( $this->_theme ) );\n    }\n\n    public function getCount( array $params = array(), array $cols = array() )\n    {\n\n    }\n\n    public function sort( array $cols )\n    {\n\n    }\n\n    public function search( $query, array $cols = null )\n    {\n\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Controller/Action/Helper/Datatable/Row.php",
    "content": "<?php \n/**\n * \n * @todo will implement a decorateable type \n * @author mihaibalaceanu\n *\n */\nnamespace Newscoop\\Controller\\Action\\Helper\\Datatable;\n\nclass Row // implements \\ArrayAccess, \\IteratorAggregate\n{\n    protected $_data;\n    \n    public function __construct()\n    {\n        $this->_data = new \\stdClass;\n    }\n    \n    public function __set( $key, $value )\n    {\n        $this->_data->$key = $value;    \n    }\n    \n    public function __get( $key )\n    {\n        return @$this->_data->$key;\n    }\n    \n    public function toArray()\n    {\n        return (array) $this->_data;\n    }\n} "
  },
  {
    "path": "newscoop/library/Newscoop/Controller/Helper/FlashMessenger.php",
    "content": "<?php\n/**\n * @author mihaibalaceanu\n */\nnamespace Newscoop\\Controller\\Helper;\n\nuse Zend_Controller_Action_Helper_FlashMessenger;\n\nclass FlashMessenger extends Zend_Controller_Action_Helper_FlashMessenger\n{\n\t/**\n\t * error message types\n\t */\n\tconst MESSAGE_TYPE_ERROR \t= 'error';\n\tconst MESSAGE_TYPE_WARN\t\t= 'warn';\n\tconst MESSAGE_TYPE_NORMAL\t= 'normal';\n\n\t/**\n     * Add a *typed* message to flash message, \n     * an object will be stored in the session\n     * with members: message, type\n     *\n     * @param string \t$message\n     * @param string \t$type error|warn|normal\n     * @param mixed\t\t$key session key name to store it in\n     * @return Ext_Controller_Helper_FlashMessenger\n     */\n    public function addTypedMessage( $message, $type = FlashMessenger::MESSAGE_TYPE_NORMAL, $key=null )\n    {\n        if( self::$_messageAdded === false ) \n            self::$_session->setExpirationHops( 1, null, true );\n\n        if( !is_array(self::$_session->{$this->_namespace}) ) \n            self::$_session->{$this->_namespace} = array();\n\n\t\t$msgToAdd \t= (object) array\n        (\n        \t\"message\"\t=> $message,\n        \t\"type\"\t\t=> $type\n       \t);\n       \tif( is_null($key) )\n        \tself::$_session->{$this->_namespace}[] \t\t= $msgToAdd;\n        else\n        \tself::$_session->{$this->_namespace}[$key] \t= $msgToAdd;\n        \n       \treturn $this;\n    }\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Controller/Plugin/Js.php",
    "content": "<?php\n/**\n *\n * @package Newscoop\n * @author mihaibalaceanu\n * @uses Zend_Controller_Plugin_Abstract\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Controller\\Plugin;\n\nuse Zend_Controller_Plugin_Abstract,\n    Zend_Controller_Front,\n    Zend_Controller_Request_Abstract;\n\nclass Js extends Zend_Controller_Plugin_Abstract\n{\n\n    /**\n     * ! will be incomplete after constructor, full in postDispatch\n     * @var string\n     */\n    protected $_baseUrn = null;\n\n    /**\n     * physical path, if you don't set this you need to have a 404 handler with .htaccess, like originally designed\n     * @var string\n     */\n    protected $_basePath = null;\n\n    /**\n     * @var \\Zend_View\n     */\n    public $view = null;\n\n    /**\n     * Js file suffix/extension\n     * @var string\n     */\n    protected $_fileSuffix = \"js\";\n\n    /**\n     * The shared js file to be included with every request\n     * @var string\n     */\n    protected $_sharedFileName = \"_shared\";\n\n    /**\n     * jsPath is for those who don't have a propper server config in the js folder\n     * @param array $p_opts {..., layout : { jsUrl : string, [ jsPath : string ] }, ... }\n     */\n    public function __construct( $p_opts )\n    {\n        // base path from options - incomplete\n        $this->_baseUrn = trim( $p_opts[\"resources\"][\"layout\"][\"jsUrl\"], '/' ) . '/';\n        $this->_basePath = ( $p = $p_opts[\"resources\"][\"layout\"][\"jsPath\"] ) ? $p . DIR_SEP : false;\n        $this->view      = \\Zend_Registry::get( 'view' );\n    }\n\n    public function postDispatch( Zend_Controller_Request_Abstract $p_request )\n    {\n        // stick the baseUrl to the basePath because we have a dispatched request now\n        // and format those god damn slashes!!\n        $baseUrl = trim( Zend_Controller_Front::getInstance()->getBaseUrl(), '/' );\n\n        $currentUrn = ( $baseUrl != \"\" ? '/' . $baseUrl : \"\" )\n                    . '/'\n                    . trim( $this->_baseUrn, '/' )\n                    . '/';\n\n        $filesToAppend = array\n        (\n            \"{$this->_basePath}{$this->_sharedFileName}.{$this->_fileSuffix}\" => // adding the shared file first for utils\n            \t\"{$currentUrn}{$this->_sharedFileName}.{$this->_fileSuffix}\",\n            'script' => $this->view->jQueryReady()->toString(), // then the document ready scripts\n            \"{$this->_basePath}{$p_request->getControllerName()}.{$this->_fileSuffix}\" => // controller shared\n                \"{$currentUrn}{$p_request->getControllerName()}.{$this->_fileSuffix}\",\n            \"{$this->_basePath}{$p_request->getControllerName()}\".DIR_SEP.\"{$p_request->getActionName()}.{$this->_fileSuffix}\" => // action specific\n            \t\"{$currentUrn}{$p_request->getControllerName()}\".'/'.\"{$p_request->getActionName()}.{$this->_fileSuffix}\"\n        );\n\n        foreach( $filesToAppend as $path => $urn )\n        {\n            if( $path == 'script' ) {\n                $this->view->headScript()->appendScript( $urn );\n            }\n            if( $this->_basePath && file_exists( $path ) ) {\n                 $this->view->headScript()->appendFile( $urn );\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Criteria/ArticleSearchCriteria.php",
    "content": "<?php\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @package Newscoop\n * @copyright 2015 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Criteria;\n\nuse Newscoop\\Criteria;\nuse Symfony\\Component\\HttpFoundation\\Request;\n\n/**\n * Available criteria for slideshows listing.\n */\nclass ArticleSearchCriteria extends Criteria\n{\n    /**\n    * @var string\n    */\n    public $query;\n\n    /**\n    * @var string\n    */\n    public $publication;\n\n    /**\n    * @var string\n    */\n    public $issue;\n\n    /**\n    * @var string\n    */\n    public $section;\n    \n    /**\n    * @var string\n    */\n    public $language;\n\n    /**\n    * @var string\n    */\n    public $article_type;\n\n    /**\n    * @var datetime\n    */\n    public $publish_date;\n\n    /**\n    * @var datetime\n    */\n    public $published_after;\n\n    /**\n    * @var datetime\n    */\n    public $published_before;\n\n    /**\n    * @var int\n    */\n    public $author;\n\n    /**\n    * @var int\n    */\n    public $creator;\n\n    /**\n     * @var string\n     */\n    public $status;\n\n    /**\n     * @var int\n     */\n    public $topic;\n\n    /**\n     * @var array\n     */\n    public $orderBy = array('id' => 'desc');\n\n    public function fillFromRequest(Request $request) {\n        foreach($this as $key => $value) {\n            $this->$key = $request->get($key, false);\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Criteria/SlideshowCriteria.php",
    "content": "<?php\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\nnamespace Newscoop\\Criteria;\n\nuse Newscoop\\Criteria;\n\n/**\n * Available criteria for slideshows listing.\n */\nclass SlideshowCriteria extends Criteria\n{\n    /**\n     * @var int\n     */\n    public $id;\n\n    /**\n     * @var string\n     */\n    public $headline;\n\n    /**\n     * @var string\n     */\n    public $description;\n\n    /**\n     * @var string\n     */\n    public $rendition;\n\n    /**\n     * @var string\n     */\n    public $slug;\n\n    /**\n     * @var int\n     */\n    public $itemsCount;\n\n    /**\n     * Custom handled\n     * @var integer\n     */\n    public $publication;\n\n    /**\n     * Custom handled\n     * @var integer\n     */\n    public $issue;\n\n    /**\n     * @var int\n     */\n    public $articleNumber;\n\n    /**\n     * @var int\n     */\n    public $articleLanguage;\n\n    /**\n     * @var array\n     */\n    public $orderBy = array('id' => 'desc');\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Criteria/SlideshowItemCriteria.php",
    "content": "<?php\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Criteria;\n\nuse Newscoop\\Criteria;\n\n/**\n * Available criteria for slideshows listing.\n */\nclass SlideshowItemCriteria extends Criteria\n{\n    /**\n    * @var int\n    */\n    public $id;\n\n    /**\n     * @var int\n     */\n    public $slideshow;\n\n    /**\n     * @var string\n     */\n    public $type;\n\n    /**\n     * @var array\n     */\n    public $orderBy = array('offset' => 'asc');\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Criteria.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop;\n\n/**\n * Base Newscoop Criteria class.\n */\nclass Criteria\n{\n    /**\n     * @var int\n     */\n    public $firstResult = 0;\n\n    /**\n     * @var int\n     */\n    public $maxResults = 25;\n\n    /**\n     * @var array\n     */\n    public $orderBy = array();\n\n    /**\n     * @var string\n     */\n    public $query;\n\n    /**\n     * Criteria parameters operators chars\n     * @var array\n     */\n    public $perametersOperators = array();\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Datatable/ISource.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\nnamespace Newscoop\\Datatable;\n/**\n * Data table Interface\n */\ninterface ISource\n{\n    /**\n     * Get the data needed by data table listing\n     *\n     * @param array $params\n     * @param array $cols\n     * @return\n     */\n    public function getData(array $p_params, array $p_cols);\n\n    /**\n     * Get the count of the data table listing used with params\n     *\n     * @param $params\n     * @param $cols\n     * @return integer\n     */\n    public function getCount(array $p_params, array $p_cols);\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Datatable/Source.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\nnamespace Newscoop\\Datatable;\n\nuse Doctrine\\ORM\\EntityRepository,\n    Doctrine\\ORM\\QueryBuilder;\n\n/**\n * Class implementation of the IDatatableSource class\n *\n */\nclass Source extends EntityRepository implements ISource\n{\n    /**\n     * Get data for table\n     *\n     * @param array $p_params\n     * @param array $p_cols\n     * @return array\n     */\n    public function getData(array $p_params, array $p_cols)\n    {\n        $qb = $this->createQueryBuilder('e');\n\n        if (!empty($p_params['sSearch'])) {\n            $qb->where($this->buildWhere($p_cols, $p_params['sSearch']));\n        }\n\n        // sort\n        foreach (array_keys($p_cols) as $id => $property) {\n            if (!is_string($property)) { // not sortable\n                continue;\n            }\n\n            if (isset($p_params[\"iSortCol_$id\"])) {\n                $dir = $p_params[\"sSortDir_$id\"] ?: 'asc';\n                $qb->orderBy(\"e.$property\", $dir);\n            }\n        }\n\n        // limit\n        $qb->setFirstResult((int) $p_params['iDisplayStart'])\n            ->setMaxResults((int) $p_params['iDisplayLength']);\n\n\n        return $qb->getQuery()->getResult();\n    }\n\n    /**\n     * Get entity count\n     *\n     * @param array $p_params|null\n     * @param array $p_cols|null\n     *\n     * @return int\n     */\n    public function getCount(array $p_params = null, array $p_cols = null)\n    {\n\n        $qb = $this->createQueryBuilder('e')\n            ->select('COUNT(e)');\n\n        if(is_array($p_params) && !empty($p_params['sSearch'])) {\n            if (array_key_exists('user', $p_cols)) {\n                $qb->leftJoin('e.user', 'u');\n            }\n\n            $qb->where($this->buildWhere($p_cols, $p_params['sSearch']));\n        }\n\n        return $qb->getQuery()->getSingleScalarResult();\n    }\n\n\n    /**\n     * Build where condition\n     *\n     * @param array $cols\n     * @param string $search\n     * @return Doctrine\\ORM\\Query\\Expr\n     */\n    private function buildWhere(array $p_cols, $p_search, $qb = null, $andx = null)\n    {\n        $qb = $this->createQueryBuilder('e');\n        $or = $qb->expr()->orx();\n        foreach (array_keys($p_cols) as $i => $property) {\n            if (!is_string($property)) { // not searchable\n                continue;\n            }\n\n            if ($property == 'user') {\n                $or->add($qb->expr()->like(\"u.username\", $qb->expr()->literal(\"%{$p_search}%\")));\n            } else {\n                $or->add($qb->expr()->like(\"e.$property\", $qb->expr()->literal(\"%{$p_search}%\")));\n            }\n        }\n\n        return $or;\n    }\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/DependencyInjection/ContainerBuilder.php",
    "content": "<?php\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\DependencyInjection;\n\nuse Symfony\\Component\\DependencyInjection\\Container as SymfonyContainer;\nuse Symfony\\Component\\DependencyInjection\\ParameterBag\\ParameterBag;\n\n/**\n * ContainerBuilder class.\n *\n * Provides wrapper methods for symfony's Container.\n */\nclass ContainerBuilder extends SymfonyContainer\n{\n    /**\n    * Construct object.\n    *\n    * @param array $options The default options\n    */\n    public function __construct($options = array())\n    {\n        parent::__construct(new ParameterBag($options));\n    }\n\n    /**\n    * Sets a service.\n    *\n    * Wrapper for ContainerBuilder::set method.\n    *\n    * @param string $id The service identifier\n    * @param object $service The service instance\n    */\n    public function setService($id, $service)\n    {\n        parent::set($id, $service);\n    }\n\n    /**\n    * Returns true if the given service is defined.\n    *\n    * Wrapper for ContainerBuilder::has method.\n    *\n    * @param string $id The service identifier\n    * @return boolean True if the service is defined, false otherwise\n    */\n    public function hasService($id)\n    {\n        return parent::has($id);\n    }\n\n    /**\n    * Gets a service.\n    *\n    * Wrapper for ContainerBuilder::get method.\n    *\n    * @param string  $id The service identifier\n    * @return object The associated service\n    */\n    public function getService($id)\n    {\n        return parent::get($id);\n    }\n\n    /**\n    * Gets all service ids.\n    *\n    * Wrapper for ContainerBuilder::getServiceIds method.\n    *\n    * @return array An array of all defined service ids\n    */\n    public function getServiceIds()\n    {\n        return parent::getServiceIds();\n    }\n\n    /**\n    * Sets an alias for an existing service.\n    *\n    * Wrapper for ContainerBuilder::setAlias method.\n    *\n    * @param string $alias The alias to create\n    * @param mixed  $id The service to alias\n    */\n    public function setAlias($alias, $id)\n    {\n        parent::setAlias($alias, $id);\n    }\n\n    /**\n    * Gets all defined aliases.\n    *\n    * Wrapper for ContainerBuilder::getAliases method.\n    *\n    * @return array An array of aliases\n    */\n    public function getAliases()\n    {\n        return parent::getAliases();\n    }\n\n    /**\n    * Registers a service definition.\n    *\n    * Wrapper for ContainerBuilder::getAliases method.\n    * This methods allows for simple registration of service definition\n    * with a fluid interface.\n    *\n    * @param string $id The service identifier\n    * @param string $class The service class\n    */\n    public function register($id, $class = null)\n    {\n        return parent::register($id, $class);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Doctrine/AdoDbAdapter.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Doctrine;\n\nuse InvalidArgumentException;\nuse Doctrine\\DBAL\\Connection;\nuse Doctrine\\DBAL\\DBALException;\n\n/**\n * AdoDb Adapter\n */\nclass AdoDbAdapter\n{\n    /**\n     * @var Doctrine\\DBAL\\Connection\n     */\n    protected $connection;\n\n    /**\n     * @var Newscoop\\Doctrine\\AdoDbStatement\n     */\n    protected $statement;\n\n    /**\n     * @var int\n     */\n    protected $affectedRows = 0;\n\n    /**\n     * @param Doctrine\\DBAL\\Connection $connection\n     */\n    public function __construct(Connection $connection)\n    {\n        $this->connection = $connection;\n    }\n\n    /**\n     * Test if is connected\n     *\n     * @param bool $forceConnection\n     * @return bool\n     */\n    public function isConnected($forceConnection = false)\n    {\n        if ($forceConnection) {\n            $this->connection->connect();\n        }\n\n        return $this->connection->isConnected();\n    }\n\n    /**\n     * Execute sql statement\n     *\n     * @param string $sql\n     * @return null\n     */\n    public function execute($sql, $params = array())\n    {\n        $this->affectedRows = 0;\n        return $this->statement = new AdoDbStatement($this->connection->executeQuery($sql, $params));\n    }\n\n    /**\n     * Execute INSERT/UPDATE/DELETE statement and return number of affected rows\n     *\n     * @param string $sql\n     * @return int\n     */\n    public function executeUpdate($sql)\n    {\n        return $this->affectedRows = $this->connection->executeUpdate($sql);\n    }\n\n    /**\n     * Escape identifier\n     *\n     * @param string $identifier\n     * @return string\n     */\n    public function escapeIdentifier($identifier)\n    {\n        return $this->connection->quoteIdentifier($identifier);\n    }\n\n    /**\n     * Escape value\n     *\n     * @param mixed $value\n     * @return string\n     */\n    public function escape($value)\n    {\n        return $this->connection->quote($value);\n    }\n\n    /**\n     * Escape column equals value statement\n     *\n     * @param string $key\n     * @param string $val\n     * @return string\n     */\n    public function escapeKeyVal($key, $val)\n    {\n        if (empty($key)) {\n            throw new InvalidArgumentException(\"'key' param invalid.\");\n        }\n\n        return sprintf('%s = %s', $this->escapeIdentifier($key), $this->escape($val));\n    }\n\n    /**\n     * Escape comparison operation\n     *\n     * @param array $operation\n     * @return string\n     */\n    public function escapeOperation(array $operation)\n    {\n        return sprintf(\n            '%s %s %s',\n            $operation['left'],\n            $operation['symbol'],\n            $this->escape($operation['right'])\n        );\n    }\n\n    /**\n     * Execute sql query and return first row of the result as an associative array.\n     *\n     * @param string $sql\n     * @param array $params\n     * @return array\n     */\n    public function getRow($sql, array $params = array())\n    {\n        return $this->connection->fetchAssoc($sql);\n    }\n\n    /**\n     * Execute sql query and return the result as an array\n     *\n     * @param string $sql\n     * @param array $params\n     * @return array\n     */\n    public function getAll($sql, array $params = array())\n    {\n        try {\n            return $this->connection->fetchAll($sql, $params);\n        } catch (\\Exception $e) {\n            print_r($e->getMessage());\n            print_r($e->getTraceAsString());\n            exit;\n        }\n    }\n\n    /**\n     * Execute sql query and returns the value of first column of the first row.\n     *\n     * @param string $sql\n     * @param array $params\n     * @return mixed\n     */\n    public function getOne($sql, array $params = array())\n    {\n        return $this->connection->fetchColumn($sql, $params);\n    }\n\n    /**\n     * Execute sql query and returns all elements of the first column.\n     *\n     * @param string $sql\n     * @param array $params\n     * @return array\n     */\n    public function getCol($sql, array $params = array())\n    {\n        $return = array();\n        $rows = $this->connection->fetchAll($sql, $params);\n        foreach ($rows as $row) {\n            $return[] = reset($row);\n        }\n\n        return $return;\n    }\n\n    /**\n     * Get affected rows count\n     *\n     * @return int\n     */\n    public function affected_rows()\n    {\n        return $this->affectedRows;\n    }\n\n    /**\n     * Get last insert id\n     *\n     * @return int\n     */\n    public function insert_id()\n    {\n        return $this->connection->lastInsertId();\n    }\n\n    /**\n     * Fetch extended error information associated with the last database operation.\n     *\n     * @return string\n     */\n    public function errorMsg()\n    {\n        return json_encode($this->connection->errorInfo());\n    }\n\n    /**\n     * Test if there is a database with given name\n     *\n     * @param string $database\n     * @return bool\n     */\n    public function hasDatabase($database)\n    {\n        return in_array($database, $this->connection->getSchemaManager()->listDatabases());\n    }\n\n    /**\n     * Test if there is a table with given name\n     *\n     * @param string $table\n     * @return bool\n     */\n    public function hasTable($table)\n    {\n        return $this->connection->getSchemaManager()->tablesExist($table);\n    }\n\n    /**\n     * Create a new database\n     *\n     * @param string $database\n     * @return void\n     */\n    public function createDatabase($database)\n    {\n        $this->connection->getSchemaManager()->createDatabase($database);\n    }\n\n    /**\n     * Get driver name\n     *\n     * @return string\n     */\n    public function getDriverName()\n    {\n        return (string) $this->connection->getDriver()->getName();\n    }\n\n    /**\n     * Performs select with given limit and offset params\n     *\n     * @param string $sql\n     * @param int $limit\n     * @param int $offset\n     * @return mixed\n     */\n    public function selectLimit($sql, $limit = -1, $offset = -1)\n    {\n        if ($limit > -1) {\n            $sql .= sprintf(' LIMIT %d', $limit);\n        }\n\n        if ($offset > -1) {\n            $sql .= sprintf(' OFFSET %d',  $offset);\n        }\n\n        return $this->execute($sql);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Doctrine/AdoDbInteface.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Doctrine;\n\n/**\n * AdoDb interface\n */\ninterface AdoDbInterface\n{\n    /**\n     * Get all rows for a given query\n     *\n     * @param string $query\n     * @return array\n     */\n    public function getAll($query);\n\n    /**\n     * Get one row for a given query\n     *\n     * @param string $query\n     * @return mixed\n     */\n    public function getOne($query);\n\n    /**\n     * Escape string\n     *\n     * @param string $string\n     * @return string\n     */\n    public function escape($string);\n\n    /**\n     * Execute sql statement\n     *\n     * @param string $sql\n     * @param array $data\n     * @return mixed\n     */\n    public function execute($sql, array $data = null);\n\n    /**\n     * Test if adapter is connected to db\n     *\n     * @return bool\n     */\n    public function isConnected();\n\n    /**\n     * Get single row\n     *\n     * @param string $query\n     * @return array\n     */\n    public function getRow($query);\n\n    /**\n     * Get affected rows number\n     *\n     * @return int\n     */\n    public function Affected_Rows();\n\n    /**\n     * Get last generated id\n     *\n     * @return int\n     */\n    public function Insert_ID();\n\n    /**\n     * Get col\n     *\n     * @param string $sql\n     * @return array\n     */\n    public function getCol();\n}\n\n"
  },
  {
    "path": "newscoop/library/Newscoop/Doctrine/AdoDbStatement.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Doctrine;\n\nuse Doctrine\\DBAL\\Driver\\Statement;\n\n/**\n * AdoDb Statement\n */\nclass AdoDbStatement\n{\n    /**\n     * @var Doctrine\\DBAL\\Statement\n     */\n    protected $statement;\n\n    /**\n     * @param Doctrine\\DBAL\\Statement $statement\n     */\n    public function __construct(Statement $statement)\n    {\n        $this->statement = $statement;\n    }\n\n    /**\n     * Fetch row\n     *\n     * @return array\n     */\n    public function fetchRow()\n    {\n        return $this->statement->fetch();\n    }\n\n    /**\n     * Get record count\n     *\n     * @return int\n     */\n    public function recordCount()\n    {\n        return $this->rowCount();\n    }\n\n    /**\n     * Get row count\n     *\n     * @return int\n     */\n    public function rowCount()\n    {\n        return $this->statement->rowCount();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Doctrine/EventDispatcherProxy.php",
    "content": "<?php\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Doctrine;\n\nuse Doctrine\\Common\\EventSubscriber;\nuse Doctrine\\ORM\\EntityManager;\nuse Doctrine\\ORM\\Events;\nuse Doctrine\\ORM\\Event\\LifecycleEventArgs;\nuse Doctrine\\ORM\\Event\\PreUpdateEventArgs;\nuse Newscoop\\EventDispatcher\\Events\\GenericEvent;\n\n/**\n * Doctrine Event Dispatcher Proxy dispatches Symfony Events on certain doctrine events.\n */\nclass EventDispatcherProxy implements EventSubscriber\n{\n    protected $dispatcher;\n\n    /** @var array */\n    protected $events = array();\n\n    /**\n     * @param $dispatcher\n     */\n    public function __construct($dispatcher)\n    {\n        $this->dispatcher = $dispatcher;\n    }\n\n    /**\n     * Get subscribed doctrine orm events.\n     *\n     * @return array\n     */\n    public function getSubscribedEvents()\n    {\n        return array(\n            Events::postPersist,\n            //Events::preUpdate, @todo temporary fix for CS-3817\n            Events::postUpdate,\n            Events::preRemove,\n        );\n    }\n\n    /**\n     * Dispatch entity.create on postPersist.\n     *\n     * @param Doctrine\\ORM\\Event\\LifecycleEventArgs $args\n     * @return void\n     */\n    public function postPersist(LifecycleEventArgs $args)\n    {\n        $entityName = $this->getEntityName($args->getEntity());\n        $this->dispatcher->dispatch(\"{$entityName}.create\", new GenericEvent($this, array(\n            'id' => $this->getEntityId($args->getEntity(), $args->getEntityManager()),\n            'diff' => $this->getEntityProperties($args->getEntity(), $args->getEntityManager()),\n            'title' => $this->getEntityTitle($args->getEntity()),\n        )));\n    }\n\n    /**\n     * Dispatch entity.update on preUpdate.\n     *\n     * @param Doctrine\\ORM\\Event\\PreUpdateEventArgs $args\n     * @return void\n     */\n    public function preUpdate(PreUpdateEventArgs $args)\n    {\n        $entityName = $this->getEntityName($args->getEntity());\n        $this->events[\"{$entityName}.update\"] = new GenericEvent($args->getEntity(), array(\n            'id' => $this->getEntityId($args->getEntity(), $args->getEntityManager()),\n            'diff' => $args->getEntityChangeSet(),\n            'title' => $this->getEntityTitle($args->getEntity()),\n        ));\n    }\n\n    /**\n     * Dispatch entity.update on postUpdate.\n     *\n     * @param Doctrine\\ORM\\Event\\LifecycleEventArgs $args\n     * @return void\n     */\n    public function postUpdate(LifecycleEventArgs $args)\n    {\n        foreach ($this->events as $eventName =>  $event) {\n            $this->dispatcher->dispatch($eventName, $event);\n        }\n    }\n\n    /**\n     * Dispatch entity.delete on preRemove.\n     *\n     * @param Doctrine\\ORM\\Event\\LifecycleEventArgs $args\n     * @return void\n     */\n    public function preRemove(LifecycleEventArgs $args)\n    {\n        $entityName = $this->getEntityName($args->getEntity());\n        $this->dispatcher->dispatch(\"{$entityName}.delete\", new GenericEvent($this, array(\n            'id' => $this->getEntityId($args->getEntity(), $args->getEntityManager()),\n            'diff' => $this->getEntityProperties($args->getEntity(), $args->getEntityManager()),\n            'title' => $this->getEntityTitle($args->getEntity()),\n        )));\n    }\n\n    /**\n     * Get entity name.\n     *\n     * @param object $entity\n     * @return string\n     */\n    private function getEntityName($entity)\n    {\n        $class = str_replace('Newscoop\\Entity\\\\', '', get_class($entity));\n        $class = str_replace('Newscoop\\Image\\\\', '', $class);\n        $name = strtolower(implode('-', explode('\\\\', $class)));\n\n        if ($name === 'localimage') {\n            $name = 'image';\n        }\n\n        return $name;\n    }\n\n    /**\n     * Get entity properties.\n     *\n     * @param object $entitygetManager\n     * @param Doctrine\\ORM\\EntityManager $em\n     * @return array\n     */\n    private function getEntityProperties($entity, EntityManager $em)\n    {\n        $properties = array();\n        $meta = $em->getClassMetadata(get_class($entity));\n        foreach ($meta->getReflectionProperties() as $property) {\n            $value = $meta->getFieldValue($entity, $property->name);\n            if (!empty($value)) {\n                $properties[$property->name] = $value;\n            }\n        }\n\n        return $properties;\n    }\n\n    /**\n     * Get entity id.\n     *\n     * @param object $entity\n     * @param Doctrine\\ORM\\EntityManager $em\n     * @return mixed\n     */\n    private function getEntityId($entity, EntityManager $em)\n    {\n        $meta = $em->getClassMetadata(get_class($entity));\n        return $meta->getIdentifierValues($entity);\n    }\n\n    /**\n     * Get entity title.\n     *\n     * @param object $entity\n     * @return string\n     */\n    private function getEntityTitle($entity)\n    {\n        static $nameMethods = array('__toString', 'getTitle', 'getName');\n        foreach ($nameMethods as $method) {\n            if (method_exists($entity, $method)) {\n                return $entity->$method();\n            }\n        }\n\n        return '';\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/EditorInterface.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2015 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop;\n\n/**\n * Editor interface.\n */\ninterface EditorInterface\n{\n\t/**\n     * Gets the current editor link.\n     * If there is other editor enabled it will be used,\n     * else it will choose default one.\n     *\n     * @param Article|\\Article $article Article object\n     *\n     * @return string Editor's link\n     */\n    public function getLink($article);\n\n    /**\n     * Gets the default editor link's parameters\n     *\n     * @param Article|\\Article $article Article object\n     *\n     * @return string\n     */\n    public function getLinkParameters($article);\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/AbstractEntity.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\nuse Newscoop\\Utils\\Validation;\n\n/**\n * Provides the basic container for an entity that has a primary key.\n *\n * @ORM\\MappedSuperclass\n */\nabstract class AbstractEntity {\n\n\t/**\n\t * @ORM\\Id @ORM\\GeneratedValue\n\t * @ORM\\Column(name=\"id\", type=\"integer\")\n\t * @var int\n\t */\n\tprotected $id;\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the id of the output, this will uniquielly identify this output.\n\t *\n\t * @return integer\n\t *\t\tThe id of the output.\n\t */\n\tpublic function getId()\n\t{\n\t\treturn $this->id;\n\t}\n\n\t/**\n\t * Set the id of the output, this will uniquielly identify this output.\n\t *\n\t * @param string $p_id\n\t *\t\tThe id of the output, must not be null or empty.\n\t *\n\t * @return Newscoop\\Entity\\Entity\n\t *\t\tThis object for chaining purposes.\n\t */\n\tpublic function setId($id)\n\t{\n\t\t$this->id = $id;\n\t\treturn $this;\n\t}\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Acl/Permission.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity\\Acl;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * Permission entity\n * @ORM\\Entity\n * @ORM\\Table(name=\"liveuser_rights\")\n */\nclass Permission\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(name=\"right_define_name\")\n     * @var string\n     */\n    protected $name;\n\n    /**\n     * Return name\n     *\n     * @return string\n     */\n    public function __toString()\n    {\n        return $this->name;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Acl/Role.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Acl;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Doctrine\\Common\\Collections\\ArrayCollection;\n\n/**\n * Role entity\n * @ORM\\Entity\n * @ORM\\Table(name=\"acl_role\")\n */\nclass Role\n{\n    /**\n     * @ORM\\Id @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"Newscoop\\Entity\\Acl\\Rule\", mappedBy=\"role\")\n     */\n    protected $rules;\n\n    /**\n     */\n    public function __construct()\n    {\n        $this->rules = new ArrayCollection();\n    }\n\n    /**\n     * Get id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Get rules\n     *\n     * @return ArrayCollection\n     */\n    public function getRules()\n    {\n        return $this->rules;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Acl/Rule.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Acl;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Resource\\Acl\\RuleInterface;\n\n/**\n * Rule entity\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\Acl\\RuleRepository\")\n * @ORM\\Table(name=\"acl_rule\")\n */\nclass Rule implements RuleInterface\n{\n    const ALLOW = 'allow';\n    const DENY = 'deny';\n\n    /**\n     * @ORM\\Id @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column\n     * @var string\n     */\n    protected $type;\n\n    /** @var array */\n    protected $types = array(self::ALLOW, self::DENY);\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Acl\\Role\", inversedBy=\"rules\")\n     * @var Newscoop\\Entity\\Acl\\Role\n     */\n    protected $role;\n\n    /**\n     * @ORM\\Column(length=80)\n     * @var string\n     */\n    protected $resource;\n\n    /**\n     * @ORM\\Column(length=80)\n     * @var string\n     */\n    protected $action;\n\n    /**\n     * Get id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Set type\n     *\n     * @param string $type\n     * @return Newscoop\\Entity\\Acl\\Rule\n     * @throws InvalidArgumentException\n     */\n    public function setType($type)\n    {\n        $type = strtolower((string) $type);\n        if (!in_array($type, $this->types)) {\n            throw new \\InvalidArgumentException(\"Rule type '$type' not allowed.\");\n        }\n\n        $this->type = (string) $type;\n        return $this;\n    }\n\n    /**\n     * Get type\n     *\n     * @return string\n     */\n    public function getType()\n    {\n        return $this->type;\n    }\n\n    /**\n     * Set role\n     *\n     * @param Newscoop\\Entity\\Acl\\Role $role\n     * @return Newscoop\\Entity\\Acl\\Rule\n     */\n    public function setRole(Role $role)\n    {\n        $this->role = $role;\n        return $this;\n    }\n\n    /**\n     * Get role id\n     *\n     * @return int\n     */\n    public function getRoleId()\n    {\n        return $this->role->getId();\n    }\n\n    /**\n     * Set resource\n     *\n     * @param string $resource\n     * @return Newscoop\\Entity\\Acl\\Rule\n     */\n    public function setResource($resource)\n    {\n        $this->resource = (string) $resource;\n        return $this;\n    }\n\n    /**\n     * Get resource\n     *\n     * @return string|NULL\n     */\n    public function getResource()\n    {\n        return empty($this->resource) ? NULL : $this->resource;\n    }\n\n    /**\n     * Set action\n     *\n     * @param string $action\n     * @return Newscoop\\Entity\\Acl\\Rule\n     */\n    public function setAction($action)\n    {\n        $this->action = (string) $action;\n        return $this;\n    }\n\n    /**\n     * Get action\n     *\n     * @return string\n     */\n    public function getAction()\n    {\n        return empty($this->action) ? NULL : $this->action;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Aliases.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\n\n/**\n * Aliases entity\n *\n * @ORM\\Entity()\n * @ORM\\Table(name=\"Aliases\")\n */\nclass Aliases\n{\n    /**\n     * @ORM\\Id()\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\", name=\"Id\")\n     * @var integer\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(type=\"string\", name=\"Name\")\n     * @var string\n     */\n    protected $name;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"\\Newscoop\\Entity\\Publication\")\n     * @ORM\\JoinColumn(name=\"IdPublication\", referencedColumnName=\"Id\")\n     * @var \\Newscoop\\Entity\\Publication\n     */\n    protected $publication;\n\n    /**\n     * Get id\n     *\n     * @return integer\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Set name\n     *\n     * @return string\n     */\n    public function setName($name)\n    {\n        $this->name = $name;\n\n        return $this;\n    }\n\n    /**\n     * Get name\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->name;\n    }\n\n    /**\n     * Get publication\n     *\n     * @return \\Newscoop\\Entity\\Publication\n     */\n    public function getPublication()\n    {\n        return $this->publication;\n    }\n\n    /**\n     * Sets the value of publication.\n     *\n     * @param \\Newscoop\\Entity\\Publication $publication the publication\n     *\n     * @return self\n     */\n    public function setPublication(\\Newscoop\\Entity\\Publication $publication)\n    {\n        $this->publication = $publication;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Article.php",
    "content": "<?php\n\n/**\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\nnamespace Newscoop\\Entity;\n\nuse DateTime;\nuse Doctrine\\ORM\\Mapping as ORM;\nuse Doctrine\\Common\\Collections\\ArrayCollection;\nuse Doctrine\\ORM\\EntityNotFoundException;\nuse ArticleData;\nuse Newscoop\\View\\ArticleView;\nuse Newscoop\\Search\\DocumentInterface;\n\n/**\n * Article entity.\n *\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\ArticleRepository\")\n * @ORM\\Table(name=\"Articles\")\n */\nclass Article implements DocumentInterface\n{\n    const STATUS_PUBLISHED = 'Y';\n    const STATUS_NOT_PUBLISHED = 'N';\n    const STATUS_SUBMITTED = 'S';\n\n    /**\n     * @ORM\\Id\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Language\")\n     * @ORM\\JoinColumn(name=\"IdLanguage\", referencedColumnName=\"Id\")\n     *\n     * @var Newscoop\\Entity\\Language\n     */\n    protected $language;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Publication\")\n     * @ORM\\JoinColumn(name=\"IdPublication\", referencedColumnName=\"Id\", nullable=true)\n     *\n     * @var Newscoop\\Entity\\Publication\n     */\n    protected $publication;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Issue\")\n     * @ORM\\JoinColumn(name=\"issue_id\", referencedColumnName=\"id\")\n     *\n     * @var Newscoop\\Entity\\Issue\n     */\n    protected $issue;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Section\")\n     * @ORM\\JoinColumn(name=\"section_id\", referencedColumnName=\"id\")\n     *\n     * @var Newscoop\\Entity\\Section\n     */\n    protected $section;\n\n    /**\n     * TODO: Fix this bug. It's not section Id - it's sectionNumber!\n     *\n     * @ORM\\Column(name=\"NrSection\", nullable=true)\n     *\n     * @var int\n     */\n    protected $sectionId;\n\n    /**\n     * TODO: Fix this bug. It's not Issue Id - it's issueNumber!\n     *\n     * @ORM\\Column(name=\"NrIssue\", nullable=true)\n     *\n     * @var int\n     */\n    protected $issueId;\n\n    /**\n     * @ORM\\OneToOne(targetEntity=\"Newscoop\\Entity\\User\")\n     * @ORM\\JoinColumn(name=\"IdUser\", referencedColumnName=\"Id\")\n     *\n     * @var Newscoop\\Entity\\User\n     */\n    protected $creator;\n\n    /**\n     * Article fields used by Newscoop API.\n     *\n     * @var array\n     */\n    protected $fields;\n\n    /**\n     * Article Authors for Newscoop\\Gimme.\n     *\n     * @var object\n     */\n    protected $articleAuthors;\n\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"integer\", name=\"Number\")\n     *\n     * @var int\n     */\n    protected $number;\n\n    /**\n     * @ORM\\Column(name=\"Name\", nullable=True)\n     *\n     * @var string\n     */\n    protected $name;\n\n    /**\n     * @ORM\\Column(name=\"ShortName\", nullable=True)\n     *\n     * @var string\n     */\n    protected $shortName;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"time_updated\", nullable=true)\n     *\n     * @var DateTime\n     */\n    protected $updated;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"indexed\", nullable=true)\n     *\n     * @var DateTime\n     */\n    protected $indexed;\n\n    /**\n     * @ORM\\Column(name=\"comments_enabled\", nullable=True)\n     *\n     * @var int\n     */\n    protected $comments_enabled;\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"Comment\", mappedBy=\"thread\", indexBy=\"language\")\n     *\n     * @var Newscoop\\Entity\\Comments\n     */\n    protected $comments;\n\n    /**\n     * @var int\n     */\n    protected $comments_count;\n\n    /**\n     * @var int\n     */\n    protected $recommended_comments_count;\n\n    /**\n     * @var string\n     */\n    protected $comments_link;\n\n    /**\n     * @ORM\\Column(name=\"Type\", nullable=True)\n     *\n     * @var string\n     */\n    protected $type;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"PublishDate\", nullable=true)\n     *\n     * @var DateTime\n     */\n    protected $published;\n\n    /**\n     * @ORM\\Column(name=\"Published\", nullable=true)\n     *\n     * @var string\n     */\n    protected $workflowStatus;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"ArticleOrder\", nullable=True)\n     *\n     * @var int\n     */\n    protected $articleOrder;\n\n    /**\n     * @ORM\\Column(name=\"Public\", nullable=True)\n     *\n     * @var string\n     */\n    protected $public;\n\n    /**\n     * @ORM\\Column(name=\"OnFrontPage\", nullable=True)\n     *\n     * @var string\n     */\n    protected $onFrontPage;\n\n    /**\n     * @ORM\\Column(name=\"OnSection\", nullable=True)\n     *\n     * @var string\n     */\n    protected $onSection;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"UploadDate\", nullable=True)\n     *\n     * @var DateTime\n     */\n    protected $uploaded;\n\n    /**\n     * @ORM\\Column(name=\"Keywords\", nullable=True)\n     *\n     * @var string\n     */\n    protected $keywords;\n\n    /**\n     * @ORM\\Column(name=\"IsIndexed\", nullable=True)\n     *\n     * @var string\n     */\n    protected $isIndexed;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\User\")\n     * @ORM\\JoinColumn(name=\"LockUser\", referencedColumnName=\"Id\", nullable=true)\n     *\n     * @var Newscoop\\Entity\\User\n     */\n    protected $lockUser;\n\n    /**\n     * @ORM\\ManyToMany(targetEntity=\"Newscoop\\NewscoopBundle\\Entity\\Topic\", inversedBy=\"articles\")\n     * @ORM\\JoinTable(name=\"ArticleTopics\",\n     *      joinColumns={\n     *          @ORM\\JoinColumn(name=\"NrArticle\", referencedColumnName=\"Number\")\n     *      },\n     *      inverseJoinColumns={\n     *          @ORM\\JoinColumn(name=\"TopicId\", referencedColumnName=\"id\")\n     *      }\n     *  )\n     *\n     * @var Doctrine\\Common\\Collections\\ArrayCollection\n     */\n    protected $topics;\n\n    /**\n     * @ORM\\ManyToMany(targetEntity=\"Newscoop\\Entity\\Playlist\")\n     * @ORM\\JoinTable(name=\"playlist_article\",\n     *      joinColumns={\n     *          @ORM\\JoinColumn(name=\"article_no\", referencedColumnName=\"Number\"),\n     *          @ORM\\JoinColumn(name=\"article_language\", referencedColumnName=\"IdLanguage\")\n     *      },\n     *      inverseJoinColumns={\n     *          @ORM\\JoinColumn(name=\"id_playlist\", referencedColumnName=\"id_playlist\")\n     *      }\n     *  )\n     *\n     * @var Newscoop\\Entity\\Playlist\n     */\n    protected $playlists;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"LockTime\", nullable=true)\n     *\n     * @var DateTime\n     */\n    protected $lockTime;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"comments_locked\", nullable=True)\n     *\n     * @var int\n     */\n    protected $commentsLocked;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"object_id\", nullable=True)\n     *\n     * @var int\n     */\n    protected $objectId;\n\n    /**\n     * @ORM\\ManyToMany(targetEntity=\"Newscoop\\Package\\Package\")\n     * @ORM\\JoinTable(name=\"package_article_package\",\n     *      joinColumns={\n     *          @ORM\\JoinColumn(name=\"article_id\", referencedColumnName=\"Number\")\n     *      },\n     *      inverseJoinColumns={\n     *          @ORM\\JoinColumn(name=\"package_id\", referencedColumnName=\"id\")\n     *      }\n     *  )\n     *\n     * @var Newscoop\\Package\\Package\n     */\n    protected $packages;\n\n    /**\n     * Article renditions used by Newscoop API.\n     *\n     * @var array\n     */\n    protected $renditions;\n\n    /**\n     * Article translations used by Newscoop API.\n     *\n     * @var array\n     */\n    protected $translations;\n\n    /**\n     * @ORM\\OneToOne(targetEntity=\"Newscoop\\Entity\\Webcode\")\n     * @ORM\\JoinColumn(name=\"webcode\", referencedColumnName=\"webcode\")\n     *\n     * @var Newscoop\\Entity\\Webcode\n     */\n    protected $webcode;\n\n    /**\n     * Article reads number used by Newscoop API.\n     *\n     * @var int\n     */\n    protected $reads;\n\n    /**\n     * @ORM\\ManyToMany(targetEntity=\"Newscoop\\Entity\\Author\")\n     * @ORM\\JoinTable(name=\"ArticleAuthors\",\n     *      joinColumns={\n     *          @ORM\\JoinColumn(name=\"fk_article_number\", referencedColumnName=\"Number\"),\n     *          @ORM\\JoinColumn(name=\"fk_language_id\", referencedColumnName=\"IdLanguage\")\n     *      },\n     *      inverseJoinColumns={\n     *          @ORM\\JoinColumn(name=\"fk_author_id\", referencedColumnName=\"id\")\n     *      }\n     * )\n     *\n     * @var Doctrine\\Common\\Collections\\Collection\n     */\n    protected $authors;\n\n    /**\n     * @ORM\\ManyToMany(targetEntity=\"Newscoop\\Entity\\Attachment\")\n     * @ORM\\JoinTable(name=\"ArticleAttachments\",\n     *      joinColumns={\n     *          @ORM\\JoinColumn(name=\"fk_article_number\", referencedColumnName=\"Number\"),\n     *      },\n     *      inverseJoinColumns={\n     *          @ORM\\JoinColumn(name=\"fk_attachment_id\", referencedColumnName=\"id\")\n     *      }\n     *  )\n     *\n     * @var Doctrine\\Common\\Collections\\ArrayCollection\n     */\n    protected $attachments;\n\n    /**\n     * @ORM\\ManyToMany(targetEntity=\"Newscoop\\Image\\LocalImage\")\n     * @ORM\\JoinTable(name=\"ArticleImages\",\n     *      joinColumns={@ORM\\JoinColumn(name=\"NrArticle\", referencedColumnName=\"Number\")},\n     *      inverseJoinColumns={@ORM\\JoinColumn(name=\"IdImage\", referencedColumnName=\"Id\")}\n     * )\n     *\n     * @var Doctrine\\Common\\Collections\\ArrayCollection\n     */\n    protected $images;\n\n    /**\n     * @ORM\\ManyToMany(targetEntity=\"Newscoop\\Entity\\Snippet\", inversedBy=\"articles\")\n     * @ORM\\JoinTable(name=\"ArticleSnippets\",\n     *      joinColumns={@ORM\\JoinColumn(name=\"ArticleNr\", referencedColumnName=\"Number\")},\n     *      inverseJoinColumns={@ORM\\JoinColumn(name=\"SnippetId\", referencedColumnName=\"Id\")}\n     *  )\n     *\n     * @var Doctrine\\Common\\Collections\\ArrayCollection\n     */\n    protected $snippets;\n\n    /**\n     * @var ArticleData\n     */\n    protected $data;\n\n    /**\n     * @param int                      $number\n     * @param Newscoop\\Entity\\Language $language\n     */\n    public function __construct($number, Language $language)\n    {\n        $this->number = (int) $number;\n        $this->language = $language;\n        $this->updated = new DateTime();\n        $this->authors = new ArrayCollection();\n        $this->topics = new ArrayCollection();\n        $this->attachments = new ArrayCollection();\n        $this->images = new ArrayCollection();\n        $this->snippets = new ArrayCollection();\n    }\n\n    /**\n     * Set article id.\n     *\n     * @param int $p_id\n     *\n     * @return Article\n     */\n    public function setId($p_id)\n    {\n        $this->number = $p_id;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get article id.\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->number;\n    }\n\n    /**\n     * Get article name.\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->name;\n    }\n\n    /**\n     * Sets the value of name.\n     *\n     * @param string $name the name\n     *\n     * @return self\n     */\n    public function setName($name)\n    {\n        $this->name = $name;\n\n        return $this;\n    }\n\n    /**\n     * Set publication.\n     *\n     * @param Publication $p_publication\n     *\n     * @return Article\n     */\n    public function setPublication(Publication $p_publication)\n    {\n        $this->publication = $p_publication;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get publication.\n     *\n     * @return Newscoop\\Entity\\Publication\n     */\n    public function getPublication()\n    {\n        return $this->publication;\n    }\n\n    /**\n     * Get publication id.\n     *\n     * @return int\n     */\n    public function getPublicationId()\n    {\n        return ($this->publication) ? $this->publication->getId() : null;\n    }\n\n    /**\n     * Getter for issue.\n     *\n     * @return \\Newscoop\\Entity\\Issue\n     */\n    public function getIssue()\n    {\n        return $this->issue;\n    }\n\n    /**\n     * Setter for issue.\n     *\n     * @param \\Newscoop\\Entity\\Issue $issue Value to set\n     *\n     * @return self\n     */\n    public function setIssue(\\Newscoop\\Entity\\Issue $issue)\n    {\n        $this->issue = $issue;\n\n        return $this;\n    }\n\n    /**\n     * Get section.\n     *\n     * @return \\Newscoop\\Entity\\Section\n     */\n    public function getSection()\n    {\n        return $this->section;\n    }\n\n    /**\n     * Setter for section.\n     *\n     * @param Newscoop\\Entity\\Section $section\n     *\n     * @return self\n     */\n    public function setSection(\\Newscoop\\Entity\\Section $section)\n    {\n        $this->section = $section;\n\n        return $this;\n    }\n\n    /**\n     * Set workflowStatus.\n     *\n     * @param string $status\n     */\n    public function setWorkflowStatus($workflowStatus)\n    {\n        $this->workflowStatus = (string) $workflowStatus;\n\n        return $this;\n    }\n\n    /**\n     * Get workflowStatus.\n     *\n     * @return string\n     */\n    public function getWorkflowStatus($readable = false)\n    {\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $readableStatus = array(\n            self::STATUS_PUBLISHED => $translator->trans('published'),\n            self::STATUS_NOT_PUBLISHED => $translator->trans('unpublished'),\n            self::STATUS_SUBMITTED => $translator->trans('submitted'),\n        );\n\n        if ($readable) {\n            return $readableStatus[$this->workflowStatus];\n        }\n\n        return $this->workflowStatus;\n    }\n\n    /**\n     * Set language.\n     *\n     * @param Newscoop\\Entity\\Language $p_language\n     *\n     * @return Newscoop\\Entity\\Article\n     */\n    public function setLanguage(Language $p_language)\n    {\n        $this->language = $p_language;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get language.\n     *\n     * @return Newscoop\\Entity\\Language\n     */\n    public function getLanguage()\n    {\n        return $this->language;\n    }\n\n    /**\n     * Get language id.\n     *\n     * @return int\n     */\n    public function getLanguageId()\n    {\n        return ($this->language) ? $this->language->getId() : null;\n    }\n\n    /**\n     * Get language code.\n     *\n     * @return int\n     */\n    public function getLanguageCode()\n    {\n        return ($this->language) ? $this->language->getCode() : null;\n    }\n\n    /**\n     * Get number.\n     *\n     * @return int\n     */\n    public function getNumber()\n    {\n        return $this->number;\n    }\n\n    /**\n     * Set number.\n     *\n     * @return int\n     */\n    public function setNumber($number)\n    {\n        $this->number = $number;\n\n        return $this;\n    }\n\n    /**\n     * Get title.\n     *\n     * @return string\n     */\n    public function getTitle()\n    {\n        return $this->name;\n    }\n\n    /**\n     * Set title.\n     *\n     * @param string $title\n     */\n    public function setTitle($title)\n    {\n        $this->name = $title;\n\n        return $this;\n    }\n\n    /**\n     * Get date.\n     *\n     * @return string\n     */\n    public function getDate()\n    {\n        return $this->getUpdated();\n    }\n\n    /**\n     * Set date.\n     *\n     * @param DateTime $updated\n     */\n    public function setDate(DateTime $date)\n    {\n        $this->date = $date;\n    }\n\n    /**\n     * Set data.\n     *\n     * @param array $data\n     */\n    public function setData(array $data)\n    {\n        $this->data = $data;\n    }\n\n    /**\n     * Get article type field data.\n     *\n     * @param string $field\n     *\n     * @return mixed\n     */\n    public function getData($field)\n    {\n        if ($this->data === null) {\n            $this->data = new \\ArticleData($this->type, $this->number, $this->getLanguageId());\n        }\n\n        if ($field == null) {\n            return $this->data;\n        }\n\n        if (is_array($this->data)) {\n            return array_key_exists($field, $this->data) ? $this->data[$field] : null;\n        } else {\n            return $this->data->getFieldValue($field);\n        }\n    }\n\n    /**\n     * Set article type field data.\n     *\n     * @param string $field\n     * @param string $value\n     *\n     * @return mixed\n     */\n    public function setFieldData($field, $value)\n    {\n        if ($this->data === null) {\n            $this->data = new \\ArticleData($this->type, $this->number, $this->getLanguageId());\n            $this->data->create();\n        }\n\n        return $this->data->setProperty('F'.$field, $value);\n    }\n\n    /**\n     * Get all field names for this article type.\n     *\n     * @return mixed Returns array with field names or null\n     */\n    public function getFieldNames()\n    {\n        if ($this->data === null) {\n            return;\n        }\n\n        if (is_array($this->data)) {\n            return array_keys($this->data);\n        } else {\n            return $this->data->getUserDefinedColumns(true);\n        }\n    }\n\n    /**\n     * Get whether commenting is enabled.\n     *\n     * @return int\n     */\n    public function commentsEnabled()\n    {\n        return $this->getCommentsEnabled();\n    }\n\n    /**\n     * Get whether commenting is enabled.\n     *\n     * @return int\n     */\n    public function getCommentsEnabled()\n    {\n        return (int) $this->comments_enabled;\n    }\n\n    /**\n     * Set commenting en/disabled.\n     *\n     * @param int $comments_enabled\n     */\n    public function setCommentsEnabled($comments_enabled)\n    {\n        $this->comments_enabled = (int) $comments_enabled;\n\n        return $this;\n    }\n\n    /**\n     * Getter for commentsLocked.\n     *\n     * @return mixed\n     */\n    public function commentsLocked()\n    {\n        return $this->getCommentsLocked();\n    }\n\n    /**\n     * Getter for commentsLocked.\n     *\n     * @return mixed\n     */\n    public function getCommentsLocked()\n    {\n        return $this->commentsLocked;\n    }\n\n    /**\n     * Setter for commentsLocked.\n     *\n     * @param mixed $commentsLocked Value to set\n     *\n     * @return self\n     */\n    public function setCommentsLocked($commentsLocked)\n    {\n        $this->commentsLocked = (int) $commentsLocked;\n\n        return $this;\n    }\n\n    /**\n     * Set comments_link.\n     *\n     * @param string $link uri for comments resource in Newscoop API\n     */\n    public function setCommentsLink($link)\n    {\n        $this->comments_link = $link;\n    }\n\n    /**\n     * Get type.\n     *\n     * @return string\n     */\n    public function getType()\n    {\n        return $this->type;\n    }\n\n    /**\n     * Getter for updated.\n     *\n     * @return mixed\n     */\n    public function getUpdated()\n    {\n        return $this->updated;\n    }\n\n    /**\n     * Setter for updated.\n     *\n     * @param DateTime $updated Value to set\n     *\n     * @return self\n     */\n    public function setUpdated(DateTime $updated)\n    {\n        $this->updated = $updated;\n\n        return $this;\n    }\n\n    /**\n     * Get publishDate.\n     *\n     * @return string\n     */\n    public function getPublishDate()\n    {\n        return $this->getPublished();\n    }\n\n    /**\n     * Get published.\n     *\n     * @return string\n     */\n    public function getPublished()\n    {\n        return $this->published;\n    }\n\n    /**\n     * Set published.\n     *\n     * @param \\Datetime|null $published\n     *\n     * @return self\n     */\n    public function setPublished($published)\n    {\n        $this->published = $published;\n\n        return $this;\n    }\n\n    /**\n     * Test if article is published.\n     *\n     * @return bool\n     */\n    public function isPublished()\n    {\n        return $this->workflowStatus === self::STATUS_PUBLISHED;\n    }\n\n    /**\n     * Set creator.\n     *\n     * @param User $p_user\n     *\n     * @return Article\n     */\n    public function setCreator(User $p_user)\n    {\n        $this->creator = $p_user;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get creator.\n     *\n     * @return Newscoop\\Entity\\User\n     */\n    public function getCreator()\n    {\n        return $this->creator;\n    }\n\n    /**\n     * Set webcode.\n     *\n     * @param Newscoop\\Entity\\Webcode $webcode\n     */\n    public function setWebcode($webcode)\n    {\n        $this->webcode = $webcode;\n    }\n\n    /**\n     * Get webcode.\n     *\n     * @return string\n     */\n    public function getWebcode()\n    {\n        if (!$this->webcode) {\n            return;\n        }\n\n        return $this->webcode->getWebcode();\n    }\n\n    /**\n     * Get webcode object.\n     *\n     * @return string\n     */\n    public function getWebcodeEntity()\n    {\n        if (!$this->webcode) {\n            return;\n        }\n\n        return $this->webcode;\n    }\n\n    /**\n     * Test if article has webcode.\n     *\n     * @return bool\n     */\n    public function hasWebcode()\n    {\n        return isset($this->webcode);\n    }\n\n    /**\n     * Get keywords.\n     *\n     * @return string\n     */\n    public function getKeywords()\n    {\n        if (!$this->keywords) {\n            return;\n        }\n\n        return (string) $this->keywords;\n    }\n\n    /**\n     * Set Keywords.\n     *\n     * $keywords\n     */\n    public function setKeywords($keywords)\n    {\n        $this->keywords = $keywords;\n\n        return $this;\n    }\n\n    /**\n     * Set articleAuthors\n     * $articleAuthors.\n     */\n    public function setArticleAuthors($articleAuthors)\n    {\n        $this->articleAuthors = $articleAuthors;\n    }\n\n    /**\n     * Get articleAuthors.\n     *\n     * @return object\n     */\n    public function getArticleAuthors()\n    {\n        if (!$this->articleAuthors) {\n            $this->articleAuthors = $this->authors;\n        }\n\n        return $this->articleAuthors;\n    }\n\n    /**\n     * Set Packages\n     * $packages.\n     */\n    public function setPackages($packages)\n    {\n        $this->packages = $packages;\n    }\n\n    /**\n     * Get packages.\n     *\n     * @return object\n     */\n    public function getPackages()\n    {\n        if (count($this->packages) == 0) {\n            return;\n        }\n\n        return $this->packages;\n    }\n\n    /**\n     * Set Topics\n     * $topics.\n     */\n    public function setTopics($topics)\n    {\n        $this->topics = $topics;\n    }\n\n    /**\n     * Get topics.\n     *\n     * @return object\n     */\n    public function getTopics()\n    {\n        if (count($this->topics) == 0) {\n            return;\n        }\n\n        return $this->topics;\n    }\n\n    /**\n     * Add Topic to the Article.\n     *\n     * @param Topic $topic the Topic to attach\n     *\n     * @return bool\n     */\n    public function addTopic(\\Newscoop\\NewscoopBundle\\Entity\\Topic $topic)\n    {\n        if (!$this->topics->contains($topic)) {\n            $this->topics->add($topic);\n            $topic->addArticleTopic($this);\n            $this->setUpdated(new DateTime());\n\n            return true;\n        }\n\n        return false;\n    }\n\n    /**\n     * Remove a Topic from the Article.\n     *\n     * @param Topic $topic the Topic to remove\n     *\n     * @return bool\n     */\n    public function removeTopic(\\Newscoop\\NewscoopBundle\\Entity\\Topic $topic)\n    {\n        if ($this->topics->contains($topic)) {\n            $this->topics->removeElement($topic);\n            $topic->removeArticleTopic($this);\n            $this->setUpdated(new DateTime());\n\n            return true;\n        }\n\n        return false;\n    }\n\n    /**\n     * Get topic names.\n     *\n     * @return array\n     */\n    public function getTopicNames()\n    {\n        $names = array();\n        foreach ($this->topics as $topic) {\n            $names[$topic->getTopicId()] = $topic->getName($this->getLanguage());\n        }\n\n        return array_filter($names);\n    }\n\n    /**\n     * Set Fields\n     * $fields.\n     */\n    public function setFields($fields)\n    {\n        $this->fields = $fields;\n    }\n\n    /**\n     * Get fields.\n     *\n     * @return object\n     */\n    public function getFields()\n    {\n        if (count($this->fields) == 0) {\n            return;\n        }\n\n        return $this->fields;\n    }\n\n    /**\n     * Set translations\n     * $translations.\n     */\n    public function setTranslations($translations)\n    {\n        $this->translations = $translations;\n    }\n\n    /**\n     * Get translations.\n     *\n     * @return object\n     */\n    public function getTranslations()\n    {\n        if (count($this->translations) == 0) {\n            return;\n        }\n\n        return $this->translations;\n    }\n\n    /**\n     * Set renditions\n     * $renditions.\n     */\n    public function setRenditions($renditions)\n    {\n        $this->renditions = $renditions;\n    }\n\n    /**\n     * Get renditions.\n     *\n     * @return object\n     */\n    public function getRenditions()\n    {\n        if (count($this->renditions) == 0) {\n            return;\n        }\n\n        return $this->renditions;\n    }\n\n    /**\n     * Get reads.\n     *\n     * @param int $reads\n     */\n    public function setReads($reads)\n    {\n        $this->reads = $reads;\n\n        return $this;\n    }\n\n    /**\n     * Set reads.\n     *\n     * @return int\n     */\n    public function getReads()\n    {\n        $requestObject = new \\RequestObject($this->objectId);\n\n        return $requestObject->getRequestCount();\n    }\n\n    /*\n     * Publish article\n     *\n     * @return void\n     */\n    public function publish()\n    {\n        $this->workflowStatus = self::STATUS_PUBLISHED;\n        $this->published = new DateTime();\n    }\n\n    /**\n     * Get indexed.\n     *\n     * @return DateTime\n     */\n    public function getIndexed()\n    {\n        return $this->indexed;\n    }\n\n    /**\n     * Set indexed.\n     *\n     * @param DateTime $indexed\n     *\n     * @return self\n     */\n    public function setIndexed(DateTime $indexed = null)\n    {\n        $this->indexed = $indexed;\n\n        return $this;\n    }\n\n    /**\n     * Author article.\n     *\n     * @param string $title\n     * @param array  $fields\n     */\n    public function author($title, array $fields)\n    {\n        $this->name = (string) $title;\n\n        foreach ($fields as $key => $val) {\n            $this->setFieldValue($key, $val);\n        }\n    }\n\n    /**\n     * Getter for attachments.\n     *\n     * @return Doctrine\\Common\\Collections\\ArrayCollection\n     */\n    public function getAttachments()\n    {\n        if (count($this->attachments) == 0) {\n            return;\n        }\n\n        return $this->attachments;\n    }\n\n    /**\n     * Setter for attachments.\n     *\n     * @param Doctrine\\Common\\Collections\\ArrayCollection|null $attachments Value to set\n     *\n     * @return self\n     */\n    public function setAttachments($attachments)\n    {\n        $this->attachments = $attachments;\n\n        return $this;\n    }\n\n    /**\n     * Setter for attachments.\n     *\n     * @param Attachment $attachment\n     *\n     * @return self\n     */\n    public function addAttachment(Attachment $attachment)\n    {\n        $this->attachments->add($attachment);\n\n        return $this;\n    }\n\n    /**\n     * Getter for images.\n     *\n     * @return Doctrine\\Common\\Collections\\ArrayCollection\n     */\n    public function getImages()\n    {\n        return $this->images;\n    }\n\n    /**\n     * Get article first image.\n     *\n     * @return Newscoop\\Image\\LocalImage\n     */\n    public function getFirstImage()\n    {\n        return ($this->getImages()->isEmpty()) ? null : $this->getImages()->first();\n    }\n\n    /**\n     * Setter for images.\n     *\n     * @param Doctrine\\Common\\Collections\\ArrayCollection $images Value to set\n     *\n     * @return self\n     */\n    public function setImages(\\Doctrine\\Common\\Collections\\ArrayCollection $images)\n    {\n        $this->images = $images;\n\n        return $this;\n    }\n\n    /**\n     * Get view.\n     *\n     * @return object\n     */\n    public function getView()\n    {\n        try {\n            $view = new ArticleView(array(\n                'number' => $this->number,\n                'language' => $this->language->getCode(),\n                'languageId' => $this->language->getId(),\n                'title' => $this->name,\n                'updated' => $this->updated,\n                'published' => $this->published,\n                'indexed' => $this->indexed,\n                'onFrontPage' => $this->onFrontPage,\n                'onSection' => $this->onSection,\n                'type' => $this->type,\n                'webcode' => $this->getWebcode(),\n                'publication_number' => $this->publication ? $this->publication->getId() : null,\n                'issue_number' => $this->issue ? $this->issue->getNumber() : null,\n                'section_number' => $this->section ? $this->section->getNumber() : null,\n                'keywords' => array_filter(explode(',', $this->keywords)),\n            ));\n        } catch (EntityNotFoundException $e) {\n            return new ArticleView();\n        }\n\n        $view->authors = $this->authors->map(function ($author) { return $author->getView()->name; })\n            ->toArray();\n\n        $view->topics = $this->topics->map(function ($topic) { return $topic->getView()->name; })\n            ->toArray();\n\n        $this->addFields($view);\n\n        return $view;\n    }\n\n    /**\n     * Set article type field value.\n     *\n     * @param string $field\n     * @param string $value\n     */\n    private function setFieldValue($field, $value)\n    {\n        $this->initArticleData();\n        $this->data->setProperty('F'.$field, $value);\n    }\n\n    /**\n     * Add field properties to view.\n     *\n     * @return array\n     */\n    private function addFields(ArticleView $view)\n    {\n        $this->initArticleData();\n        foreach ($this->data->getUserDefinedColumns(true) as $column) {\n            $columnName = $column->getPrintName();\n            if (!property_exists($view, $columnName)) {\n                $view->$columnName = $this->data->getFieldValue($columnName);\n            }\n        }\n    }\n\n    /**\n     * Init ArticleData.\n     *\n     * @return ArticleData\n     */\n    private function initArticleData()\n    {\n        if ($this->data === null) {\n            $this->data = new ArticleData($this->type, $this->number, $this->getLanguageId());\n            $this->data->create();\n        }\n\n        return $this->data;\n    }\n\n    public function getObject()\n    {\n        return clone $this;\n    }\n\n    /**\n     * Get Article Snippets.\n     *\n     * @var Doctrine\\Common\\Collections\\ArrayCollection\n     */\n    public function getSnippets()\n    {\n        return $this->snippets;\n    }\n\n    /**\n     * Add a Snippet to the Article.\n     *\n     * @param Snippet $snippet the Snippet to attach\n     *\n     * @return Newscoop\\Entity\\Article\n     */\n    public function addSnippet(Snippet $snippet)\n    {\n        if (!$this->snippets->contains($snippet)) {\n            $this->snippets->add($snippet);\n            $snippet->addArticle($this);\n        }\n\n        return $this;\n    }\n\n    /**\n     * Remove a Snippet from the Article.\n     *\n     * @param Snippet $snippet the Snippet to remove\n     *\n     * @return Newscoop\\Entity\\Article\n     */\n    public function removeSnippet(Snippet $snippet)\n    {\n        if ($this->snippets->contains($snippet)) {\n            $this->snippets->removeElement($snippet);\n            $snippet->removeArticle($this);\n        }\n\n        return $this;\n    }\n\n    /**\n     * Get language object.\n     *\n     * @return Newscoop\\Entity\\Language\n     */\n    public function getLanguageObject()\n    {\n        return $this->getLanguage();\n    }\n\n    /**\n     * Checks if article is locked or not.\n     *\n     * @return bool\n     */\n    public function isLocked()\n    {\n        if ((null === $this->getLockUser()) && ($this->getLockTime() === null)) {\n            return false;\n        }\n\n        return true;\n    }\n\n    /**\n     * Gets the value of lockUser.\n     *\n     * @return Newscoop\\Entity\\User\n     */\n    public function getLockUser()\n    {\n        return $this->lockUser;\n    }\n\n    /**\n     * Sets the value of lockUser.\n     *\n     * @param Newscoop\\Entity\\User $lockUser the lock user\n     *\n     * @return self\n     */\n    public function setLockUser(User $lockUser = null)\n    {\n        $this->lockUser = $lockUser;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of lockTime.\n     *\n     * @return DateTime\n     */\n    public function getLockTime()\n    {\n        if (null === $this->lockTime) {\n            return;\n        }\n\n        return $this->lockTime;\n    }\n\n    /**\n     * Sets the value of lockTime.\n     *\n     * @param DateTime $lockTime the lock time\n     *\n     * @return self\n     */\n    public function setLockTime(DateTime $lockTime = null)\n    {\n        $this->lockTime = $lockTime;\n\n        return $this;\n    }\n\n    /**\n     * Gets the time difference between current and article lock time.\n     *\n     * @return array\n     */\n    public function getLockTimeDiffrence()\n    {\n        $time1 = $this->getLockTime();\n        $sinceStart = $time1->diff(new DateTime());\n\n        return array(\n            'days' => $sinceStart->d,\n            'hours' => $sinceStart->h,\n            'minutes' => $sinceStart->i,\n            'seconds' => $sinceStart->s,\n        );\n    }\n\n    /**\n     * Gets the value of articleOrder.\n     *\n     * @return int\n     */\n    public function getArticleOrder()\n    {\n        return $this->articleOrder;\n    }\n\n    /**\n     * Sets the value of articleOrder.\n     *\n     * @param int $articleOrder the article order\n     *\n     * @return self\n     */\n    public function setArticleOrder($articleOrder)\n    {\n        $this->articleOrder = $articleOrder;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of shortName.\n     *\n     * @return string\n     */\n    public function getShortName()\n    {\n        return $this->shortName;\n    }\n\n    /**\n     * Sets the value of shortName.\n     *\n     * @param string $shortName the short name\n     *\n     * @return self\n     */\n    public function setShortName($shortName)\n    {\n        $this->shortName = $shortName;\n\n        return $this;\n    }\n\n    /**\n     * Sets the value of type.\n     *\n     * @param string $type the type\n     *\n     * @return self\n     */\n    public function setType($type)\n    {\n        $this->type = $type;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of public.\n     *\n     * @return string\n     */\n    public function getPublic()\n    {\n        return $this->public;\n    }\n\n    /**\n     * Sets the value of public.\n     *\n     * @param bool $public the public\n     *\n     * @return self\n     */\n    public function setPublic($public)\n    {\n        $this->public = $public;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of onFrontPage.\n     *\n     * @return string\n     */\n    public function getOnFrontPage()\n    {\n        return $this->onFrontPage;\n    }\n\n    /**\n     * Sets the value of onFrontPage.\n     *\n     * @param string $onFrontPage the on front page\n     *\n     * @return self\n     */\n    public function setOnFrontPage($onFrontPage = false)\n    {\n        if (is_bool($onFrontPage) || is_int($onFrontPage)) {\n            if ($onFrontPage) {\n                $this->onFrontPage = 'Y';\n            } else {\n                $this->onFrontPage = 'N';\n            }\n\n            return $this;\n        } elseif (is_string($onFrontPage)) {\n            $this->onFrontPage = $onFrontPage;\n        } else {\n            $this->onFrontPage = 'N';\n        }\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of onSection.\n     *\n     * @return string\n     */\n    public function getOnSection()\n    {\n        return $this->onSection;\n    }\n\n    /**\n     * Sets the value of onSection.\n     *\n     * @param string $onSection the on section\n     *\n     * @return self\n     */\n    public function setOnSection($onSection = false)\n    {\n        if (is_bool($onSection) || is_int($onSection)) {\n            if ($onSection) {\n                $this->onSection = 'Y';\n            } else {\n                $this->onSection = 'N';\n            }\n\n            return $this;\n        } elseif (is_string($onSection)) {\n            $this->onSection = $onFrontPage;\n        } else {\n            $this->onSection = 'N';\n        }\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of uploaded.\n     *\n     * @return DateTime\n     */\n    public function getUploaded()\n    {\n        return $this->uploaded;\n    }\n\n    /**\n     * Sets the value of uploaded.\n     *\n     * @param DateTime $uploaded the uploaded\n     *\n     * @return self\n     */\n    public function setUploaded(DateTime $uploaded)\n    {\n        $this->uploaded = $uploaded;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of isIndexed.\n     *\n     * @return string\n     */\n    public function getIsIndexed()\n    {\n        return $this->isIndexed;\n    }\n\n    /**\n     * Sets the value of isIndexed.\n     *\n     * @param bool $isIndexed the is indexed\n     *\n     * @return self\n     */\n    public function setIsIndexed($isIndexed)\n    {\n        $this->isIndexed = $isIndexed;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of issueId.\n     *\n     * @return int\n     */\n    public function getIssueId()\n    {\n        return $this->issueId;\n    }\n\n    /**\n     * Sets the value of issueId.\n     *\n     * @param int $issueId the issue id\n     *\n     * @return self\n     */\n    public function setIssueId($issueId)\n    {\n        $this->issueId = $issueId;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of sectionId.\n     *\n     * @return int\n     */\n    public function getSectionId()\n    {\n        return $this->sectionId;\n    }\n\n    /**\n     * Sets the value of sectionId.\n     *\n     * @param int $sectionId the section id\n     *\n     * @return self\n     */\n    public function setSectionId($sectionId)\n    {\n        $this->sectionId = $sectionId;\n\n        return $this;\n    }\n\n    /**\n     * Get comments count\n     *\n     * @return integer\n     */\n    public function getCommentsCount()\n    {\n        return $this->comments_count;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/ArticleAuthor.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\n\n/**\n * Article Author Association class.\n *\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\ArticleAuthorRepository\")\n * @ORM\\Table(name=\"ArticleAuthors\")\n */\nclass ArticleAuthor\n{\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Article\")\n     * @ORM\\JoinColumns({\n     *      @ORM\\JoinColumn(name=\"fk_article_number\", referencedColumnName=\"Number\"),\n     *      @ORM\\JoinColumn(name=\"fk_language_id\", referencedColumnName=\"IdLanguage\")\n     *  })\n     */\n    protected $article;\n\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"integer\", name=\"fk_article_number\")\n     * @var int\n     */\n    protected $articleNumber;\n\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"integer\", name=\"fk_language_id\")\n     * @var int\n     */\n    protected $languageId;\n\n    /**\n     * @ORM\\Id\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Author\")\n     * @ORM\\JoinColumn(name=\"fk_author_id\", referencedColumnName=\"id\")\n     * @var Newscoop\\Entity\\Author\n     */\n    protected $author;\n\n    /**\n     * @ORM\\Id\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\AuthorType\")\n     * @ORM\\JoinColumn(name=\"fk_type_id\", referencedColumnName=\"id\")\n     * @var Newscoop\\Entity\\AuthorType\n     */\n    protected $type;\n\n    /**\n     * @ORM\\Column(type=\"integer\", nullable=true, name=\"`order`\")\n     * @var int\n     */\n    protected $order;\n\n    /**\n     * @param int $articleNumber\n     * @param int $languageId\n     * @param int $authorId\n     * @param int $typeId\n     * @param int $order\n     */\n    public function __construct($articleNumber = null, $languageId = null, $authorId = null, $typeId = null, $order = null)\n    {\n        $this->articleNumber = (int) $articleNumber;\n        $this->languageId = (int) $languageId;\n        $this->authorId = (int) $authorId;\n        $this->typeId = (int) $typeId;\n        $this->order = (int) $order;\n    }\n\n    /**\n     * Get Article object\n     * @return Newscoop\\Entity\\Article\n     */\n    public function getArticle() {\n        return $this->article;\n    }\n\n    /**\n     * Set Article\n     * @param \\Newscoop\\Entity\\Article $article\n     */\n    public function setArticle(\\Newscoop\\Entity\\Article $article) {\n        $this->article = $article;\n\n        return $this;\n    }\n\n    /**\n     * Get article number\n     * @return int\n     */\n    public function getArticleNumber() {\n        return $this->articleNumber;\n    }\n\n    /**\n     * Set article number\n     * @param string $articleNumber\n     */\n    public function setArticleNumber($articleNumber) {\n        $this->articleNumber = $articleNumber;\n\n        return $this;\n    }\n\n    /**\n     * Get language id\n     * @return int\n     */\n    public function getLanguageId() {\n        return $this->languageId;\n    }\n\n    /**\n     * Set language id\n     * @param int $languageId\n     */\n    public function setLanguageId($languageId) {\n        $this->languageId = $languageId;\n\n        return $this;\n    }\n\n    /**\n     * Get Author\n     * @return Newscoop\\Entity\\Author\n     */\n    public function getAuthor() {\n        return $this->author;\n    }\n\n    /**\n     * Set author\n     *\n     * @param Newscoop\\Entity\\Author $author\n     */\n    public function setAuthor(Author $author = null)\n    {\n        $this->author = $author;\n\n        return $this;\n    }\n\n    /**\n     * Get AuthorType\n     * @return Newscoop\\Entity\\AuthorType\n     */\n    public function getType() {\n        return $this->type;\n    }\n\n    /**\n     * Set AuthorType\n     * @param \\Newscoop\\Entity\\AuthorType $type\n     */\n    public function setType(\\Newscoop\\Entity\\AuthorType $type) {\n        $this->type = $type;\n\n        return $this;\n    }\n\n    /**\n     * Get order\n     * @return int\n     */\n    public function getOrder() {\n        return $this->order;\n    }\n\n    /**\n     * Set order\n     * @param int $order\n     */\n    public function setOrder($order) {\n        $this->order = $order;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/ArticleDatetime.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Newscoop\\Entity\\Article;\n\n/**\n * ArticleDatetime entity\n * @ORM\\Entity( repositoryClass=\"Newscoop\\Entity\\Repository\\ArticleDatetimeRepository\" )\n * @ORM\\Table( name=\"article_datetimes\",\n * \tuniqueConstraints={ @ORM\\UniqueConstraint(\n * \t\tname=\"search_idx\",\n * \t\tcolumns={\"end_date\", \"start_date\", \"end_time\", \"start_time\", \"article_id\", \"article_type\", \"field_name\"}\n *  )})\n */\nclass ArticleDatetime extends AbstractEntity\n{\n\t/**\n\t * @ORM\\Id\n\t * @ORM\\GeneratedValue\n\t * @ORM\\Column( type=\"integer\", name=\"id_article_datetime\" )\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column( type=\"date\", name=\"start_date\" )\n     * @var string\n     */\n    protected $startDate;\n\n    /**\n     * @ORM\\Column( type=\"date\", name=\"end_date\", nullable=True )\n     * @var string\n     */\n    protected $endDate;\n\n    /**\n     * @ORM\\Column( type=\"time\", name=\"start_time\", nullable=True )\n     * @var string\n     */\n    protected $startTime;\n\n    /**\n     * @ORM\\Column( type=\"time\", name=\"end_time\", nullable=True )\n     * @var string\n     */\n    protected $endTime;\n\n    /**\n     * @ORM\\Column( type=\"string\", name=\"recurring\", nullable=True )\n     * @var string\n     */\n    protected $recurring;\n\n    /**\n     * @ORM\\Column( type=\"integer\", name=\"article_id\" )\n     * @ORM\\JoinColumn(name=\"article_id\", referencedColumnName=\"id\")\n     * @var int\n     */\n    protected $articleId;\n\n    /**\n     * @ORM\\Column( type=\"string\", name=\"article_type\" )\n     * @var string\n     */\n    protected $articleType;\n\n    /**\n     * @ORM\\Column( type=\"string\", name=\"field_name\" )\n     * @var string\n     */\n    protected $fieldName;\n\n    /**\n     * @ORM\\Column( type=\"string\", name=\"event_comment\" )\n     * @var string\n     */\n    protected $eventComment;\n\n    /**\n     * @return int\n     */\n    public function getArticleId()\n    {\n        return $this->articleId;\n    }\n\n    /**\n     * @return string\n     */\n    public function getFieldName()\n    {\n        return $this->fieldName;\n    }\n\n    /**\n     * @return string\n     */\n    public function getEventComment()\n    {\n        return $this->eventComment;\n    }\n\n\t/**\n     * @return string\n     */\n    public function getArticleType()\n    {\n        return $this->articleType;\n    }\n\n    public function getStartDate()\n    {\n        return $this->startDate;\n    }\n\n    public function getStartTime()\n    {\n        return $this->startTime;\n    }\n\n    public function getEndDate()\n    {\n        return $this->endDate;\n    }\n\n    public function getEndtime()\n    {\n        return $this->endTime;\n    }\n\n    public function getRecurring()\n    {\n        return $this->recurring;\n    }\n\n    /**\n     * @param array $articleData\n     * @param ArticleDatetime $dateData\n     */\n    public function setValues($dateData, $article, $fieldName, $articleType=null, $otherInfo=null)\n    {\n        if (is_null($articleType) && !($article instanceof Article)) {\n            return false;\n        }\n        $this->articleId = $article instanceof Article ? $article->getId() :  $article;\n        $this->articleType = is_null($articleType) ? $article->getType() : $articleType;\n        $this->fieldName = $fieldName;\n        $this->startDate = $dateData->getStartDate();\n        $this->endDate = $dateData->getEndDate();\n        $this->startTime = $dateData->getStartTime();\n        $this->endTime = $dateData->getEndTime();\n        $this->recurring = $dateData->getRecurring();\n\n        $this->eventComment = null;\n        if ( (is_array($otherInfo)) && isset($otherInfo['eventComment']) ) {\n            $this->eventComment = $otherInfo['eventComment'];\n        }\n    }\n\n    public function __get($name)\n    {\n        $getMethod = 'get'.preg_replace(\"`(?<=[a-z])(_([a-z]))`e\",\"ucfirst(strtoupper('\\\\2'))\",trim($name));\n        if (!is_callable(array($this, $getMethod))) {\n            return null;\n        }\n        return $this->$getMethod();\n    }\n    \n    public function setStartDate($startDate) {\n        $this->startDate = $startDate;\n    }\n    public function setStartTime($startTime) {\n        $this->startTime = $startTime;\n    }\n    public function setEndDate($endDate) {\n        $this->endDate = $endDate;\n    }\n    public function setEndTime($endTime) {\n        $this->endTime = $endTime;\n    }\n    public function setRecurring($recurring) {\n        $this->recurring = $recurring;\n    }\n    public function setArticleId($articleId) {\n        $this->articleId = $articleId;\n    }\n    public function setArticleType($articleType) {\n        $this->articleType = $articleType;\n    }\n    public function setFieldName($fieldName) {\n        $this->fieldName = $fieldName;\n    }\n    public function setEventComment($eventComment) {\n        $this->eventComment = $eventComment;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/ArticleImage.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * ArticleImage entity\n * @ORM\\Entity\n * @ORM\\Table(name=\"ArticleImages\")\n */\nclass ArticleImage\n{\n    /**\n     * @ORM\\Id \n     * @ORM\\Column(type=\"integer\", name=\"NrArticle\")\n     * @var int\n     */\n    protected $articleNumber;\n\n    /**\n     * @ORM\\Id \n     * @ORM\\Column(type=\"integer\", name=\"IdImage\")\n     * @var int\n     */\n    protected $imageId;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"Number\", nullable=True)\n     * @var int\n     */\n    protected $number;\n\n    /**\n     * Gets the value of number.\n     *\n     * @return int\n     */\n    public function getNumber()\n    {\n        return $this->number;\n    }\n\n    /**\n     * Sets the value of number.\n     *\n     * @param int $number the number\n     *\n     * @return self\n     */\n    public function setNumber($number)\n    {\n        $this->number = $number;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/ArticleIndex.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * ArticleIndex entity\n *\n * @ORM\\Entity()\n * @ORM\\Table(name=\"ArticleIndex\")\n */\nclass ArticleIndex\n{\n    /**\n     * @ORM\\Id()\n     * @ORM\\ManyToOne(targetEntity=\"\\Newscoop\\Entity\\Publication\")\n     * @ORM\\JoinColumn(name=\"IdPublication\", referencedColumnName=\"Id\")\n     * @var \\Newscoop\\Entity\\Publication\n     */\n    protected $publication;\n\n    /**\n     * @ORM\\Id()\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Language\")\n     * @ORM\\JoinColumn(name=\"IdLanguage\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Language\n     */\n    protected $language;\n\n    /**\n     * @ORM\\Id()\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Article\")\n     * @ORM\\JoinColumn(name=\"NrArticle\", referencedColumnName=\"Number\")\n     * @var \\Newscoop\\Entity\\Article\n     */\n    protected $article;\n\n    /**\n     * @ORM\\Id()\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\KeywordIndex\")\n     * @ORM\\JoinColumn(name=\"IdKeyword\", referencedColumnName=\"Id\")\n     * @var \\Newscoop\\Entity\\KeywordIndex\n     */\n    protected $keyword;\n\n    /**\n     * @ORM\\Id()\n     * @ORM\\Column(name=\"NrSection\")\n     * @var int\n     */\n    protected $sectionNumber;\n\n    /**\n     * @ORM\\Id()\n     * @ORM\\Column(name=\"NrIssue\")\n     * @var int\n     */\n    protected $issueNumber;\n\n    /**\n     * Gets the value of article.\n     *\n     * @return \\Newscoop\\Entity\\Article\n     */\n    public function getArticle()\n    {\n        return $this->article;\n    }\n\n    /**\n     * Sets the value of article.\n     *\n     * @param \\Newscoop\\Entity\\Article $article the article\n     *\n     * @return self\n     */\n    protected function setArticle(\\Newscoop\\Entity\\Article $article)\n    {\n        $this->article = $article;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of publication.\n     *\n     * @return \\Newscoop\\Entity\\Publication\n     */\n    public function getPublication()\n    {\n        return $this->publication;\n    }\n\n    /**\n     * Sets the value of publication.\n     *\n     * @param \\Newscoop\\Entity\\Publication $publication the publication\n     *\n     * @return self\n     */\n    protected function setPublication(\\Newscoop\\Entity\\Publication $publication)\n    {\n        $this->publication = $publication;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of sectionNumber.\n     *\n     * @return int\n     */\n    public function getSectionNumber()\n    {\n        return $this->sectionNumber;\n    }\n\n    /**\n     * Sets the value of sectionNumber.\n     *\n     * @param int $sectionNumber the section number\n     *\n     * @return self\n     */\n    protected function setSectionNumber($sectionNumber)\n    {\n        $this->sectionNumber = $sectionNumber;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of issueNumber.\n     *\n     * @return int\n     */\n    public function getIssueNumber()\n    {\n        return $this->issueNumber;\n    }\n\n    /**\n     * Sets the value of issueNumber.\n     *\n     * @param int $issueNumber the issue number\n     *\n     * @return self\n     */\n    protected function setIssueNumber($issueNumber)\n    {\n        $this->issueNumber = $issueNumber;\n\n        return $this;\n    }\n}\n\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/ArticleTopic.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\n\n/**\n * Article topic entity\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\ArticleTopicRepository\")\n * @ORM\\Table(name=\"ArticleTopics\")\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\ArticleTopicRepository\")\n */\nclass ArticleTopic\n{\n    /**\n     * @ORM\\Id()\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Article\")\n     * @ORM\\JoinColumn(name=\"NrArticle\", referencedColumnName=\"Number\")\n     */\n    protected $article;\n\n    /**\n     * @ORM\\Id()\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\NewscoopBundle\\Entity\\Topic\")\n     * @ORM\\JoinColumn(name=\"TopicId\", referencedColumnName=\"id\")\n     */\n    protected $topic;\n\n    /**\n     * Get article\n     *\n     * @return Newscoop\\Entity\\Article\n     */\n    public function getArticle()\n    {\n        return $this->article;\n    }\n\n    /**\n     * Set article\n     *\n     * @param integer $article\n     */\n    public function setArticle($article)\n    {\n        $this->article = $article;\n\n        return $this;\n    }\n\n    /**\n     * Get Topic\n     *\n     * @return Newscoop\\NewscoopBundle\\Entity\\Topic\n     */\n    public function getTopic()\n    {\n        return $this->topic;\n    }\n\n    /**\n     * Set Topic\n     *\n     * @param integer $topic\n     */\n    public function setTopic($topic)\n    {\n        $this->topic = $topic;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/ArticleType.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Doctrine\\Common\\Collections\\ArrayCollection;\nuse Newscoop\\Utils\\Validation;\n\n/**\n * Issue entity\n * @ORM\\Entity\n * @ORM\\Table(name=\"ArticleTypeMetadata\")\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\ArticleTypeRepository\")\n */\nclass ArticleType\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"string\",unique=true,name=\"type_name\")\n     */\n    protected $name;\n\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"string\",unique=true,name=\"field_name\")\n     *\n     * TODO MASSIVE ALERT HERE! WE HAVE THE STRING: NULL FOR NULL VALUES FROM LEGACY!!!...\n     */\n    protected $fieldName = 'NULL';\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"fk_phrase_id\", nullable=True)\n     * @var int\n     */\n    protected $phraseId;\n\n    /**\n     * @var Doctrine\\Common\\Collections\\ArrayCollection\n     * (at) OneToMany( targetEntity=\"Newscoop\\Entity\\ArticleTypeField\", mappedBy=\"articleType\" )\n     * @todo hack\n     */\n    protected $articleTypeFields;\n\n    /**\n     * Provides the name of the article type.\n     *\n     * @return string   The name of the theme.\n     */\n    public function getName()\n    {\n        return $this->name;\n    }\n\n    /**\n     * Set the name of the article type\n     *\n     * @param string $name\n     *      The name of the article type, must not be null or empty.\n     *\n     * @return Newscoop\\Entity\\ArticleType\n     *      This object for chaining purposes.\n     */\n    public function setName($name)\n    {\n        Validation::notEmpty($name, 'name');\n        $this->name = $name;\n        return $this;\n    }\n\n\n    /**\n     * Provides article type phraseId.\n     *\n     * @return integer\n     */\n    public function getPhraseId()\n    {\n        return $this->phraseId;\n    }\n\n    /**\n     * Set article type phraseId.\n     */\n    public function setPhraseId($phraseId)\n    {\n        $this->phraseId = $phraseId;\n\n        return $this;\n    }\n\n    /**\n     * Getter for fieldName\n     *\n     * @return string\n     */\n    public function getFieldName()\n    {\n        return $this->fieldName;\n    }\n\n    /**\n     * Getter for articleTypeFields\n     *\n     * @return \\Doctrine\\Common\\Collections\\ArrayCollection\n     */\n    public function getArticleTypeFields()\n    {\n        return $this->articleTypeFields;\n    }\n\n    /**\n     * Setter for articleTypeFields\n     *\n     * @param Doctrine\\Common\\Collections\\ArrayCollection $articleTypeFields\n     *        Value to set\n     *\n     * @return self\n     */\n    public function setArticleTypeFields(ArrayCollection $articleTypeFields)\n    {\n        $this->articleTypeFields = $articleTypeFields;\n\n        return $this;\n    }\n\n\t/**\n\t * Used for update and stuff\n     *\n\t * @return string\n\t */\n\tpublic function __toString()\n\t{\n\t    return $this->getName();\n\t}\n}\n\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/ArticleTypeField.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * Issue entity\n * @ORM\\Entity\n * @ORM\\Table(name=\"ArticleTypeMetadata\")\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\ArticleTypeFieldRepository\")\n *\n * @todo check for performance issues\n */\nclass ArticleTypeField\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"string\",name=\"field_name\")\n     */\n    protected $name;\n\n    /**\n     * @var Newscoop\\Entity\\ArticleType\n     * (at) ManyToOne( targetEntity=\"Newscoop\\Entity\\ArticleType\" )\n     * (at) JoinColumn( name=\"type_id\", referencedColumnName=\"id\", nullable=FALSE )\n     * @todo hack\n     */\n    protected $articleType;\n\n    /**\n     * @ORM\\Column(type=\"string\",name=\"type_name\")\n     * @todo hack used for getting the parent article type from same table, which we will set later on into self::$type.\n     */\n    protected $typeHack;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"max_size\", nullable=True)\n     */\n    protected $length;\n\n    /**\n     * @ORM\\Column(type=\"string\",name=\"field_type\", nullable=True)\n     */\n    protected $type;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"field_weight\", nullable=True)\n     * @var int\n     */\n    protected $fieldWeight;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"is_hidden\", nullable=True)\n     * @var int\n     */\n    protected $isHidden;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"comments_enabled\", nullable=True)\n     * @var int\n     */\n    protected $commentsEnabled;\n\n    /**\n     * @ORM\\OneToOne(targetEntity=\"Newscoop\\Entity\\Translation\")\n     * @ORM\\JoinColumn(name=\"fk_phrase_id\", referencedColumnName=\"phrase_id\", nullable=true, onDelete=\"SET NULL\")\n     * @var Newscoop\\Entity\\Translation\n     */\n    protected $phrase;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"fk_phrase_id\", nullable=True)\n     * @var int\n     */\n    protected $phraseId;\n\n    /**\n     * @ORM\\Column(name=\"field_type_param\", nullable=True)\n     * @var string\n     */\n    protected $fieldTypeParam;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"is_content_field\", nullable=True)\n     * @var int\n     */\n    protected $isContentField;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"show_in_editor\", nullable=False)\n     * @var int\n     */\n    protected $showInEditor;\n\n    /**\n     * Get the article type\n     * @return \\Newscoop\\Entity\\ArticleType\n     */\n    public function getArticleType()\n    {\n        return $this->articleType;\n    }\n\n    /**\n     * @return \\Newscoop\\Entity\\ArticleTypeField\n     */\n    public function setArticleType(ArticleType $type)\n    {\n        $this->articleType = $type;\n\n        return $this;\n    }\n\n    /**\n     * @return \\Newscoop\\Entity\\ArticleTypeField\n     */\n    public function setArticleTypeHack(ArticleType $type)\n    {\n        $this->typeHack = $type;\n\n        return $this;\n    }\n\n    /**\n     * @return \\Newscoop\\Entity\\ArticleTypeField\n     */\n    public function setName($name)\n    {\n        $this->name = $name;\n\n        return $this;\n    }\n\n    /**\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->name;\n    }\n\n    /**\n     * @return int\n     */\n    public function getLength()\n    {\n        return $this->length;\n    }\n\n    /**\n     * @return \\Newscoop\\Entity\\ArticleTypeField\n     */\n    public function setLength($val)\n    {\n        $this->length = $val;\n\n        return $this;\n    }\n\n    /**\n     * @return string\n     */\n    public function getType()\n    {\n        return $this->type;\n    }\n\n    /**\n     * @return \\Newscoop\\Entity\\ArticleTypeField\n     */\n    public function setType($val)\n    {\n        $this->type = $val;\n\n        return $this;\n    }\n\n    /**\n     * Getter for fieldWeight\n     *\n     * @return int\n     */\n    public function getFieldWeight()\n    {\n        return $this->fieldWeight;\n    }\n\n    /**\n     * Setter for fieldWeight\n     *\n     * @param int $fieldWeight Value to set\n     *\n     * @return self\n     */\n    public function setFieldWeight($fieldWeight)\n    {\n        $this->fieldWeight = $fieldWeight;\n\n        return $this;\n    }\n\n    /**\n     * Getter for isHidden\n     *\n     * @return int\n     */\n    public function getIsHidden()\n    {\n        return $this->isHidden;\n    }\n\n    /**\n     * Setter for isHidden\n     *\n     * @param int $isHidden Value to set\n     *\n     * @return self\n     */\n    public function setIsHidden($isHidden)\n    {\n        $this->isHidden = $isHidden;\n\n        return $this;\n    }\n\n    /**\n     * Getter for commentsEnabled\n     *\n     * @return int\n     */\n    public function getCommentsEnabled()\n    {\n        return $this->commentsEnabled;\n    }\n\n    /**\n     * Setter for commentsEnabled\n     *\n     * @param int $commentsEnabled Value to set\n     *\n     * @return self\n     */\n    public function setCommentsEnabled($commentsEnabled)\n    {\n        $this->commentsEnabled = $commentsEnabled;\n\n        return $this;\n    }\n\n    /**\n     * Getter for phraseId\n     *\n     * @return int\n     */\n    public function getPhraseId()\n    {\n        return $this->phraseId;\n    }\n\n    /**\n     * Getter for fieldTypeParam\n     *\n     * @return string\n     */\n    public function getFieldTypeParam()\n    {\n        return $this->fieldTypeParam;\n    }\n\n    /**\n     * Setter for fieldTypeParam\n     *\n     * @param string $fieldTypeParam Value to set\n     *\n     * @return self\n     */\n    public function setFieldTypeParam($fieldTypeParam)\n    {\n        $this->fieldTypeParam = $fieldTypeParam;\n\n        return $this;\n    }\n\n    /**\n     * Getter for isContentField\n     *\n     * @return int\n     */\n    public function getIsContentField()\n    {\n        return $this->isContentField;\n    }\n\n    /**\n     * Setter for isContentField\n     *\n     * @param int $isContentField Value to set\n     *\n     * @return self\n     */\n    public function setIsContentField($isContentField)\n    {\n        $this->isContentField = $isContentField;\n\n        return $this;\n    }\n\n    /**\n     * Getter for showInEditor\n     *\n     * @return int\n     */\n    public function getShowInEditor()\n    {\n        return $this->showInEditor;\n    }\n\n    /**\n     * Setter for showInEditor\n     *\n     * @param int $showInEditor Value to set\n     *\n     * @return self\n     */\n    public function setShowInEditor($showInEditor)\n    {\n        $this->showInEditor = $showInEditor;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of phrase.\n     *\n     * @return Newscoop\\Entity\\Translation\n     */\n    public function getPhrase()\n    {\n        return $this->phrase;\n    }\n\n    /**\n     * Sets the value of phrase.\n     *\n     * @param Newscoop\\Entity\\Translation $phrase the phrase\n     *\n     * @return self\n     */\n    protected function setPhrase(Translation $phrase)\n    {\n        $this->phrase = $phrase;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Attachment.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @author Paweł Mikołąjczuk <pawel.mikolajczuk@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\n\n/**\n * Snippet entity\n *\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\AttachmentRepository\")\n * @ORM\\Table(name=\"Attachments\")\n */\nclass Attachment\n{\n    const CONTENT_DISPOSITION = 'attachment';\n    const SOURCE_LOCAL = 'local';\n    const SOURCE_FEEDBACK = 'feedback';\n    const STATUS_UNAPPROVED = 'unapproved';\n    const STATUS_APPROVED = 'approved';\n\n    /**\n     * @ORM\\Id\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(name=\"Id\", type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Language\")\n     * @ORM\\JoinColumn(name=\"fk_language_id\", referencedColumnName=\"Id\", nullable=true)\n     * @var Newscoop\\Entity\\Language\n     */\n    protected $language;\n\n    /**\n     * @ORM\\Column(name=\"file_name\", nullable=true)\n     * @var string\n     */\n    protected $name;\n\n    /**\n     * @ORM\\Column(name=\"extension\", length=50, nullable=true)\n     * @var string\n     */\n    protected $extension;\n\n    /**\n     * @ORM\\Column(name=\"mime_type\", nullable=true)\n     * @var string\n     */\n    protected $mimeType;\n\n    /**\n     * @ORM\\Column(name=\"content_disposition\", nullable=true)\n     * @var string\n     */\n    protected $contentDisposition;\n\n    /**\n     * @ORM\\Column(name=\"http_charset\", length=50, nullable=true)\n     * @var string\n     */\n    protected $httpCharset;\n\n    /**\n     * @ORM\\Column(name=\"size_in_bytes\", type=\"bigint\", nullable=true)\n     * @var integer\n     */\n    protected $sizeInBytes;\n\n    /**\n     * @ORM\\OneToOne(targetEntity=\"Newscoop\\Entity\\Translation\")\n     * @ORM\\JoinColumn(name=\"fk_description_id\", referencedColumnName=\"phrase_id\", nullable=true, onDelete=\"SET NULL\")\n     * @var Newscoop\\Entity\\Translation\n     */\n    protected $description;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\User\")\n     * @ORM\\JoinColumn(name=\"fk_user_id\", referencedColumnName=\"Id\", nullable=true)\n     * @var Newscoop\\Entity\\User\n     */\n    protected $user;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"last_modified\", nullable=false)\n     * @var DateTime\n     */\n    protected $updated;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"time_created\", nullable=false)\n     * @var DateTime\n     */\n    protected $created;\n\n    /**\n     * @ORM\\Column(name=\"Source\", nullable=false)\n     * @var string\n     */\n    protected $source;\n\n    /**\n     * @ORM\\Column(name=\"Status\", nullable=false)\n     * @var string\n     */\n    protected $status;\n\n    /**\n     * @ORM\\PreUpdate\n     */\n    public function preUpdate()\n    {\n        $this->updated = new \\DateTime();\n    }\n\n    /**\n     * Gets the value of id.\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Sets the value of id.\n     *\n     * @param int $id the id\n     *\n     * @return self\n     */\n    public function setId($id)\n    {\n        $this->id = $id;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of language.\n     *\n     * @return Newscoop\\Entity\\Language\n     */\n    public function getLanguage()\n    {\n        return $this->language;\n    }\n\n    /**\n     * Sets the value of language.\n     *\n     * @param \\Newscoop\\Entity\\Language $language the language\n     *\n     * @return self\n     */\n    public function setLanguage(\\Newscoop\\Entity\\Language $language)\n    {\n        $this->language = $language;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of name.\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->name;\n    }\n\n    /**\n     * Sets the value of name.\n     *\n     * @param string $name the name\n     *\n     * @return self\n     */\n    public function setName($name)\n    {\n        $this->name = $name;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of extension.\n     *\n     * @return string\n     */\n    public function getExtension()\n    {\n        return $this->extension;\n    }\n\n    /**\n     * Sets the value of extension.\n     *\n     * @param string $extension the extension\n     *\n     * @return self\n     */\n    public function setExtension($extension)\n    {\n        $this->extension = $extension;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of mimeType.\n     *\n     * @return string\n     */\n    public function getMimeType()\n    {\n        return $this->mimeType;\n    }\n\n    /**\n     * Sets the value of mimeType.\n     *\n     * @param string $mimeType the mime type\n     *\n     * @return self\n     */\n    public function setMimeType($mimeType)\n    {\n        $this->mimeType = $mimeType;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of contentDisposition.\n     *\n     * @return string\n     */\n    public function getContentDisposition()\n    {\n        return $this->contentDisposition;\n    }\n\n    /**\n     * Sets the value of contentDisposition.\n     *\n     * @param string $contentDisposition the content disposition\n     *\n     * @return self\n     */\n    public function setContentDisposition($contentDisposition)\n    {\n        $this->contentDisposition = $contentDisposition;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of httpCharset.\n     *\n     * @return string\n     */\n    public function getHttpCharset()\n    {\n        return $this->httpCharset;\n    }\n\n    /**\n     * Sets the value of httpCharset.\n     *\n     * @param string $httpCharset the http charset\n     *\n     * @return self\n     */\n    public function setHttpCharset($httpCharset)\n    {\n        $this->httpCharset = $httpCharset;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of sizeInBytes.\n     *\n     * @return integer\n     */\n    public function getSizeInBytes()\n    {\n        return $this->sizeInBytes;\n    }\n\n    /**\n     * Sets the value of sizeInBytes.\n     *\n     * @param integer $sizeInBytes the size in bytes\n     *\n     * @return self\n     */\n    public function setSizeInBytes($sizeInBytes)\n    {\n        $this->sizeInBytes = $sizeInBytes;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of user.\n     *\n     * @return Newscoop\\Entity\\User\n     */\n    public function getUser()\n    {\n        return $this->user;\n    }\n\n    /**\n     * Get User id\n     *\n     * @return string\n     */\n    public function getUserId()\n    {\n        if ($this->user instanceof \\Newscoop\\Entity\\User) {\n            return $this->user->getId();\n        }\n\n        return null;\n    }\n\n    /**\n     * Sets the value of user.\n     *\n     * @param mixed $user the user\n     *\n     * @return self\n     */\n    public function setUser($user)\n    {\n        $this->user = $user;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of updated.\n     *\n     * @return DateTime\n     */\n    public function getUpdated()\n    {\n        return $this->updated;\n    }\n\n    /**\n     * Sets the value of updated.\n     *\n     * @param DateTime $updated the updated\n     *\n     * @return self\n     */\n    public function setUpdated(\\DateTime $updated)\n    {\n        $this->updated = $updated;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of created.\n     *\n     * @return DateTime\n     */\n    public function getCreated()\n    {\n        return $this->created;\n    }\n\n    /**\n     * Sets the value of created.\n     *\n     * @param DateTime $created the created\n     *\n     * @return self\n     */\n    public function setCreated(\\DateTime $created)\n    {\n        $this->created = $created;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of source.\n     *\n     * @return string\n     */\n    public function getSource()\n    {\n        return $this->source;\n    }\n\n    /**\n     * Sets the value of source.\n     *\n     * @param string $source the source\n     *\n     * @return self\n     */\n    public function setSource($source)\n    {\n        $this->source = self::SOURCE_LOCAL;\n\n        if (in_array($source, array(self::SOURCE_FEEDBACK))) {\n            $this->source = $source;\n        }\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of status.\n     *\n     * @return string\n     */\n    public function getStatus()\n    {\n        return $this->status;\n    }\n\n    /**\n     * Sets the value of status.\n     *\n     * @param string $status the status\n     *\n     * @return self\n     */\n    public function setStatus($status)\n    {\n        $this->status = self::STATUS_UNAPPROVED;\n\n        if (in_array($status, array(self::STATUS_APPROVED))) {\n            $this->status = $status;\n        }\n\n        return $this;\n    }\n\n    /**\n     * Sets the value of description.\n     *\n     * @param \\Newscoop\\Entity\\Translations $description the description\n     *\n     * @return self\n     */\n    public function setDescription(\\Newscoop\\Entity\\Translation $description)\n    {\n        $this->description = $description;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of description.\n     *\n     * @return \\Newscoop\\Entity\\Translation\n     */\n    public function getDescription()\n    {\n        return $this->description;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/AuditEvent.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\AuditRepository\")\n * @ORM\\Table(name=\"audit_event\")\n */\nclass AuditEvent\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(length=80)\n     * @var string\n     */\n    protected $resource_type;\n\n    /**\n     * @ORM\\Column(length=255, nullable=True, name=\"resource_id\")\n     * @var string\n     */\n    protected $resource_id;\n\n    /**\n     * @ORM\\Column(length=255, nullable=True)\n     * @var string\n     */\n    protected $resource_title;\n\n    /**\n     * @ORM\\Column(type=\"text\", nullable=True, name=\"resource_diff\")\n     * @var string\n     */\n    protected $resource_diff;\n\n    /**\n     * @ORM\\Column(length=80)\n     * @var string\n     */\n    protected $action;\n\n    /**\n     * @ORM\\Column(type=\"datetime\")\n     * @var DateTime\n     */\n    protected $created;\n\n    /**\n     * @ORM\\Column(type=\"boolean\")\n     * @var bool\n     */\n    protected $is_public = FALSE;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"User\")\n     * @ORM\\JoinColumn(referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\User\n     */\n    protected $user;\n\n    /**\n     */\n    public function __construct()\n    {\n        $this->created = new \\DateTime();\n    }\n\n    /**\n     * Get id.\n     *\n     * @return int|null\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Set resource type.\n     *\n     * @param  string                     $resourceType\n     * @return Newscoop\\Entity\\AuditEvent\n     */\n    public function setResourceType($resourceType)\n    {\n        $this->resource_type = (string) $resourceType;\n\n        return $this;\n    }\n\n    /**\n     * Get resource type.\n     *\n     * @return string\n     */\n    public function getResourceType()\n    {\n        return $this->resource_type;\n    }\n\n    /**\n     * Set action.\n     *\n     * @param  string                     $action\n     * @return Newscoop\\Entity\\AuditEvent\n     */\n    public function setAction($action)\n    {\n        $this->action = (string) $action;\n\n        return $this;\n    }\n\n    /**\n     * Get action.\n     *\n     * @return string\n     */\n    public function getAction()\n    {\n        return $this->action;\n    }\n\n    /**\n     * Set resource id.\n     *\n     * @param  mixed                      $resourceId\n     * @return Newscoop\\Entity\\AuditEvent\n     */\n    public function setResourceId($resourceId)\n    {\n        $this->resource_id = json_encode($resourceId);\n\n        return $this;\n    }\n\n    /**\n     * Get resource id.\n     *\n     * @return mixed\n     */\n    public function getResourceId()\n    {\n        return json_decode($this->resource_id, True);\n    }\n\n    /**\n     * Set resource title.\n     *\n     * @param  string                     $resourceTitle\n     * @return Newscoop\\Entity\\AuditEvent\n     */\n    public function setResourceTitle($resourceTitle)\n    {\n        $this->resource_title = $resourceTitle;\n\n        return $this;\n    }\n\n    /**\n     * Get resource title.\n     *\n     * @return string\n     */\n    public function getResourceTitle()\n    {\n        return $this->resource_title;\n    }\n\n    /**\n     * Set user\n     *\n     * @param  Newscoop\\Entity\\User       $user\n     * @return Newscoop\\Entity\\AuditEvent\n     */\n    public function setUser(User $user)\n    {\n        $this->user = $user;\n\n        return $this;\n    }\n\n    /**\n     * Get user.\n     *\n     * @return Newscoop\\Entity\\User|null\n     */\n    public function getUser()\n    {\n        return $this->user;\n    }\n\n    /**\n     * Set resource diff.\n     *\n     * @param  array                      $diff\n     * @return Newscoop\\Entity\\AuditEvent\n     */\n    public function setResourceDiff($diff)\n    {\n        $this->resource_diff = json_encode($diff);\n\n        return $this;\n    }\n\n    /**\n     * Get resource diff.\n     *\n     * @return array\n     */\n    public function getResourceDiff()\n    {\n        return json_decode($this->resource_diff, true);\n    }\n\n    /**\n     * Get created.\n     *\n     * @return DateTime\n     */\n    public function getCreated()\n    {\n        return $this->created;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Author.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Newscoop\\View\\AuthorView;\nuse Doctrine\\Common\\Collections\\ArrayCollection;\n\n/**\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\AuthorRepository\")\n * @ORM\\Table(name=\"Authors\")\n */\nclass Author\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(name=\"id\", type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(type=\"string\", length=80, nullable=True)\n     * @var string\n     */\n    protected $first_name;\n\n    /**\n     * @ORM\\OneToOne(targetEntity=\"Newscoop\\Entity\\User\", mappedBy=\"author\")\n     * @var Newscoop\\Entity\\User\n     */\n    protected $user;\n\n    /**\n     * @ORM\\Column(type=\"string\", length=80, nullable=True)\n     * @var string\n     */\n    protected $last_name;\n\n    /**\n     * @ORM\\Column(type=\"string\", length=244, nullable=True)\n     * @var string\n     */\n    protected $email;\n\n    /**\n     * @ORM\\ManyToMany(targetEntity=\"Newscoop\\Entity\\AuthorType\")\n     * @ORM\\JoinTable(name=\"AuthorAssignedTypes\",\n     *      joinColumns={\n     *          @ORM\\JoinColumn(name=\"fk_author_id\", referencedColumnName=\"id\")\n     *      },\n     *      inverseJoinColumns={\n     *          @ORM\\JoinColumn(name=\"fk_type_id\", referencedColumnName=\"id\")\n     *      }\n     *  )\n     * @var Doctrine\\Common\\Collections\\ArrayCollection\n     */\n    protected $type;\n\n    /**\n     * @ORM\\Column(type=\"string\", length=244, nullable=True)\n     * @var string\n     */\n    protected $skype;\n\n    /**\n     * @ORM\\Column(type=\"string\", length=244, nullable=True)\n     * @var string\n     */\n    protected $jabber;\n\n    /**\n     * @ORM\\Column(type=\"string\", length=244, nullable=True)\n     * @var string\n     */\n    protected $aim;\n\n    /**\n     * @ORM\\Column(type=\"string\", nullable=True, name=\"biography\")\n     * @var string\n     */\n    protected $biography;\n\n    /**\n     * @ORM\\Column(type=\"string\", length=80, nullable=True)\n     * @var string\n     */\n    protected $image;\n\n    /**\n     * @ORM\\ManyToMany(targetEntity=\"Newscoop\\Entity\\Article\")\n     * @ORM\\JoinTable(name=\"ArticleAuthors\",\n     *      inverseJoinColumns={\n     *          @ORM\\JoinColumn(name=\"fk_article_number\", referencedColumnName=\"Number\"),\n     *          @ORM\\JoinColumn(name=\"fk_language_id\", referencedColumnName=\"IdLanguage\")\n     *      },\n     *      joinColumns={\n     *          @ORM\\JoinColumn(name=\"fk_author_id\", referencedColumnName=\"id\")\n     *      }\n     * )\n     * @var Doctrine\\Common\\Collections\\Collection\n     */\n    protected $articles;\n\n    /**\n     * @param string $firstName\n     * @param string $lastName\n     */\n    public function __construct($firstName, $lastName)\n    {\n        $this->first_name = (string) $firstName;\n        $this->last_name = (string) $lastName;\n        $this->articles = new ArrayCollection();\n    }\n\n    /**\n     * Getter for id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Setter for id\n     *\n     * @param int $id Value to set\n     *\n     * @return self\n     */\n    public function setId($id)\n    {\n        $this->id = $id;\n\n        return $this;\n    }\n\n    /**\n     * Getter for first_name\n     *\n     * @return string\n     */\n    public function getFirstName()\n    {\n        return $this->first_name;\n    }\n\n    /**\n     * Setter for first_name\n     *\n     * @param string $firstName Value to set\n     *\n     * @return self\n     */\n    public function setFirstName($firstName)\n    {\n        $this->first_name = $firstName;\n\n        return $this;\n    }\n\n    /**\n     * Getter for last_name\n     *\n     * @return string\n     */\n    public function getLastName()\n    {\n        return $this->last_name;\n    }\n\n    /**\n     * Setter for last_name\n     *\n     * @param string $lastName Value to set\n     *\n     * @return self\n     */\n    public function setLastName($lastName)\n    {\n        $this->last_name = $lastName;\n\n        return $this;\n    }\n\n\n    /**\n     * Get full name\n     *\n     * @return string\n     */\n    public function getFullName()\n    {\n        return trim(\"$this->first_name $this->last_name\");\n    }\n\n    /**\n     * Getter for email\n     *\n     * @return string\n     */\n    public function getEmail()\n    {\n        return $this->email;\n    }\n\n    /**\n     * Setter for email\n     *\n     * @param string $email Value to set\n     *\n     * @return self\n     */\n    public function setEmail($email)\n    {\n        $this->email = $email;\n\n        return $this;\n    }\n\n    /**\n     * Getter for type\n     *\n     * @return Newscoop\\Entity\\AuthorType\n     */\n    public function getType()\n    {\n        return $this->type;\n    }\n\n    /**\n     * Setter for type\n     *\n     * @param Newscoop\\Entity\\AuthorType $type Value to set\n     *\n     * @return self\n     */\n    public function setType(\\Newscoop\\Entity\\AuthorType $type)\n    {\n        $this->type = $type;\n\n        return $this;\n    }\n\n    /**\n     * Getter for skype\n     *\n     * @return string\n     */\n    public function getSkype()\n    {\n        return $this->skype;\n    }\n\n    /**\n     * Setter for skype\n     *\n     * @param string $skype Value to set\n     *\n     * @return self\n     */\n    public function setSkype($skype)\n    {\n        $this->skype = $skype;\n\n        return $this;\n    }\n\n    /**\n     * Getter for jabber\n     *\n     * @return string\n     */\n    public function getJabber()\n    {\n        return $this->jabber;\n    }\n\n    /**\n     * Setter for jabber\n     *\n     * @param string $jabber Value to set\n     *\n     * @return self\n     */\n    public function setJabber($jabber)\n    {\n        $this->jabber = $jabber;\n\n        return $this;\n    }\n\n    /**\n     * Getter for aim\n     *\n     * @return aim\n     */\n    public function getAim()\n    {\n        return $this->aim;\n    }\n\n    /**\n     * Setter for aim\n     *\n     * @param aim $aim Value to set\n     *\n     * @return self\n     */\n    public function setAim($aim)\n    {\n        $this->aim = $aim;\n\n        return $this;\n    }\n\n\n    /**\n     * Get biography\n     *\n     * @return string\n     */\n    public function getBiography()\n    {\n\n        return $this->biography;\n    }\n\n    /**\n     * Set biography\n     *\n     * @param string biography Value to set\n     *\n     * @return self\n     */\n    public function setBiography($biography)\n    {\n        $this->biography = $biography;\n\n        return $this;\n    }\n\n    /**\n     * Get image\n     *\n     * @return string\n     */\n    public function getImage()\n    {\n        return $this->image;\n    }\n\n    /**\n     * Set image\n     *\n     * @param string image Value to set\n     *\n     * @return self\n     */\n    public function setImage($image)\n    {\n        $this->image = $image;\n\n        return $this;\n    }\n\n    /**\n     * Getter for user\n     *\n     * @return Newscoop\\Entity\\User\n     */\n    public function getUser()\n    {\n        return $this->user;\n    }\n\n    /**\n     * Setter for user\n     *\n     * @param Newscoop\\Entity\\User $user Value to set\n     *\n     * @return self\n     */\n    public function setUser(\\Newscoop\\Entity\\User $user)\n    {\n        $this->user = $user;\n\n        return $this;\n    }\n\n\n    /**\n     * Get view\n     *\n     * @return Newscoop\\View\\AuthorView\n     */\n    public function getView()\n    {\n        return new AuthorView(array(\n            'name' => $this->getFullName(),\n            'imageId' => $this->getImage()\n        ));\n    }\n\n    /**\n     * Gets the articles\n     *\n     * @return Doctrine\\Common\\Collections\\Collection\n     */\n    public function getArticles()\n    {\n        return $this->articles;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/AuthorType.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\nuse Doctrine\\Common\\Collections\\ArrayCollection;\nuse Newscoop\\Utils\\Validation;\n\n/**\n * Issue entity\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\AuthorTypeRepository\")\n * @ORM\\Table(name=\"AuthorTypes\")\n */\nclass AuthorType\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(name=\"id\", type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(type=\"string\", unique=true, name=\"type\")\n     */\n    protected $type;\n\n    /**\n     * @ORM\\ManyToMany(targetEntity=\"Newscoop\\Entity\\Author\")\n     * @ORM\\JoinTable(name=\"AuthorAssignedTypes\",\n     *      joinColumns={\n     *          @ORM\\JoinColumn(name=\"fk_type_id\", referencedColumnName=\"id\")\n     *      },\n     *      inverseJoinColumns={\n     *          @ORM\\JoinColumn(name=\"fk_author_id\", referencedColumnName=\"id\")\n     *      }\n     *  )\n     * @var Doctrine\\Common\\Collections\\ArrayCollection\n     */\n    protected $authors;\n\n    /**\n     * @param string $type\n     */\n    public function __construct($type = null)\n    {\n        $this->authors = new ArrayCollection();\n        $this->type = $type;\n    }\n\n    /**\n     * Get type field\n     *\n     * @return string\n     *      The name of the type.\n     */\n    public function getType()\n    {\n        return $this->type;\n    }\n\n    /**\n     * Set type field\n     */\n    public function setType($type)\n    {\n        $this->type = $type;\n        return $this;\n    }\n\n    /**\n     * @return string\n     */\n    public function __toString()\n    {\n        return $this->getType();\n    }\n\n    /**\n     * Gets the value of id.\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/AutoId.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\n\n/**\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\AutoIdRepository\")\n * @ORM\\Table(name=\"AutoId\")\n */\nclass AutoId\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"integer\", name=\"ArticleId\")\n     * @var int\n     */\n    protected $articleId;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"LogTStamp\")\n     * @var datetime\n     */\n    protected $logTimestamp;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"TopicId\")\n     * @var int\n     */\n    protected $topicId;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"translation_phrase_id\")\n     * @var int\n     */\n    protected $translationPhraseId;\n\n    /**\n     * Gets the value of articleId.\n     *\n     * @return int\n     */\n    public function getArticleId()\n    {\n        return $this->articleId;\n    }\n\n    /**\n     * Sets the value of articleId.\n     *\n     * @param int $articleId the article id\n     *\n     * @return self\n     */\n    public function setArticleId($articleId)\n    {\n        $this->articleId = $articleId;\n    }\n\n    /**\n     * Get logTimestamp\n     *\n     * @return datetime\n     */\n    public function getLogTimestamp()\n    {\n        return $this->logTimestamp;\n    }\n\n    /**\n     * Set logTimestamp\n     *\n     * @param \\DateTime $logTimestamp\n     *\n     * @return datetime\n     */\n    public function setLogTimestamp(\\DateTime $logTimestamp)\n    {\n        $this->logTimestamp = $logTimestamp;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of translationPhraseId.\n     *\n     * @return int\n     */\n    public function getTranslationPhraseId()\n    {\n        return $this->translationPhraseId;\n    }\n\n    /**\n     * Sets the value of translationPhraseId.\n     *\n     * @param int $translationPhraseId the translation phrase id\n     *\n     * @return self\n     */\n    public function setTranslationPhraseId($translationPhraseId)\n    {\n        $this->translationPhraseId = $translationPhraseId;\n\n        return $this;\n    }\n\n    /**\n     * Get topicId\n     *\n     * @return integer\n     */\n    public function getTopicId()\n    {\n        return $this->topicId;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Comment/Acceptance.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Comment;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Newscoop\\Entity\\Publication;\n\n/**\n * Acceptance entity\n * @ORM\\Table(name=\"comment_acceptance\")\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\Comment\\AcceptanceRepository\")\n */\nclass Acceptance\n{\n    /**\n     * @var string to code mapper for type\n     */\n    static $type_enum = array(\n        'allow',\n        'deny'\n    );\n\n    /**\n     * @var string to code mapper for search_type\n     */\n    static $search_type_enum = array(\n        'normal',\n        'regex'\n    );\n\n    /**\n     * @var string to code mapper for for_colum\n     */\n    static $for_column_enum = array(\n        'ip',\n        'name',\n        'email'\n    );\n\n    /**\n     * @ORM\\Id \n     * @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Publication\")\n     * @ORM\\JoinColumn(name=\"fk_forum_id\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Publication\n     */\n    protected $forum;\n\n    /**\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $for_column;\n\n    /**\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $type;\n\n    /**\n     * @ORM\\Column(type=\"string\", length=255)\n     * @var int\n     */\n    protected $search;\n\n    /**\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $search_type;\n\n\n    /**\n     * Set acceptance id\n     *\n     * @param int $p_id\n     * @return Newscoop\\Entity\\Comment\\Acceptance\n     */\n    public function setId($p_id)\n    {\n        $this->id = $p_id;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get acceptance id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Set acceptance forum\n     *\n     * @param Newscoop\\Entity\\Publication $p_forum\n     * @return Newscoop\\Entity\\Comment\\Acceptance\n     */\n    public function setForum(Publication $p_forum)\n    {\n        $this->forum = $p_forum;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get acceptance iforum\n     *\n     * @return int\n     */\n    public function getForum()\n    {\n        return $this->forum;\n    }\n\n    /**\n     * Set acceptance for_column\n     *\n     * @param string $p_for_column\n     * @return Newscoop\\Entity\\Comment\\Acceptance\n     */\n    public function setForColumn($p_for_column)\n    {\n        $for_column_enum = array_flip(self::$for_column_enum);\n        $this->for_column = $for_column_enum[$p_for_column];\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get acceptance for_column\n     *\n     * @return int\n     */\n    public function getForColumn()\n    {\n        return self::$for_column_enum[$this->for_column];\n    }\n\n    /**\n     * Set acceptance type\n     *\n     * @param string $p_type\n     * @return Newscoop\\Entity\\Comment\\Acceptance\n     */\n    public function setType($p_type)\n    {\n        $type_enum = array_flip(self::$type_enum);\n        $this->type = $type_enum[$p_type];\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get acceptance type\n     *\n     * @return int\n     */\n    public function getType()\n    {\n        return self::$type_enum[$this->type];\n    }\n\n    /**\n     * Set acceptance search by\n     *\n     * @param string $p_search\n     * @return Newscoop\\Entity\\Comment\\Acceptance\n     */\n    public function setSearch($p_search)\n    {\n        $this->search = $p_search;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get acceptance search\n     *\n     * @return string\n     */\n    public function getSearch()\n    {\n        return $this->search;\n    }\n\n    /**\n     * Set acceptance search type\n     *\n     * @param string $p_search_type\n     * @return Newscoop\\Entity\\Comment\\Acceptance\n     */\n    public function setSearchType($p_search_type)\n    {\n        $search_type_enum = array_flip(self::$search_type_enum);\n        $this->search_type = $search_type_enum[$p_search_type];\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get acceptance type\n     *\n     * @return int\n     */\n    public function getSearchType()\n    {\n        return self::$search_type_enum[$this->search_type];\n    }\n\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Comment/Commenter.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Comment;\n\nuse DateTime;\nuse Newscoop\\Entity\\User;\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * Commenter entity\n * @ORM\\Table(name=\"comment_commenter\")\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\Comment\\CommenterRepository\")\n */\nclass Commenter\n{\n\n    /**\n     * @ORM\\Id\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\User\", inversedBy=\"commenters\")\n     * @ORM\\JoinColumn(name=\"fk_user_id\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\User\n     */\n    protected $user;\n\n    /**\n     * @ORM\\Column(length=100, nullable=false)\n     * @var string\n     */\n    protected $name;\n\n    /**\n     * @ORM\\Column(length=100, nullable=false)\n     * @var string\n     */\n    protected $email;\n\n    /**\n     * @ORM\\Column(length=255, nullable=true)\n     * @var string\n     */\n    protected $url;\n\n    /**\n     * @ORM\\Column(length=39, nullable=true)\n     * @var int\n     */\n    protected $ip;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", nullable=false)\n     * @var DateTime\n     */\n    protected $time_created;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", nullable=false)\n     * @var DateTime\n     */\n    private $time_updated;\n\n    /**\n     * Bidirectional - One-To-Many (INVERSE SIDE)\n     *\n     * @ORM\\OneToMany(targetEntity=\"Newscoop\\Entity\\Comment\", mappedBy=\"commenter\", cascade={\"persist\", \"remove\"})\n     */\n    protected $comments;\n\n    public function __construct()\n    {\n        $this->setUrl('');\n        $this->setTimeCreated(new \\DateTime());\n        $this->setTimeUpdated(new \\DateTime());\n    }\n\n    /**\n     * Set commenter id\n     *\n     * @param int $id\n     *\n     * @return Newscoop\\Entity\\Comment\\Commenter\n     */\n    public function setId($id)\n    {\n        $this->id = $id;\n\n        return $this;\n    }\n\n    /**\n     * Get user id\n     *\n     * @return string\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Set commenter full name\n     *\n     * @param string $name\n     *\n     * @return Newscoop\\Entity\\Comment\\Commenter\n     */\n    public function setName($name)\n    {\n        $this->name = (string) $name;\n\n        return $this;\n    }\n\n    /**\n     * Get commenter name\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->name;\n    }\n\n    /**\n     * Set commenter email address\n     *\n     * @param string $email\n     *\n     * @return Newscoop\\Entity\\Comment\\Commenter\n     */\n    public function setEmail($email)\n    {\n        $this->email = (string) $email;\n\n        return $this;\n    }\n\n   /**\n     * Get commenter email address\n     *\n     * @return string\n     */\n    public function getEmail()\n    {\n        return $this->email;\n    }\n\n    /**\n     * Set user\n     *\n     * @param Newscoop\\Entity\\User $user\n     *\n     * @return Newscoop\\Entity\\Comment\\Commenter\n     */\n    public function setUser(User $user)\n    {\n        $this->user = $user;\n\n        return $this;\n    }\n    /**\n     * Get user\n     *\n     * @return Newscoop\\Entity\\User\n     */\n    public function getUser()\n    {\n        return $this->user;\n    }\n\n    /**\n     * Set comment user url\n     *\n     * @param string $url\n     *\n     * @return Newscoop\\Entity\\Comment\\Commenter\n     */\n    public function setUrl($url)\n    {\n        $this->url = (string) $url;\n\n        return $this;\n    }\n\n    /**\n     * Get comment user url\n     *\n     * @return string\n     */\n    public function getUrl()\n    {\n        return $this->url;\n    }\n\n    /**\n     * Set ip\n     *\n     * @param string $ip\n     *\n     * @return Newscoop\\Entity\\Comment\\Commenter\n     */\n    public function setIp($ip)\n    {\n        // remove subnet & limit to IP_LENGTH\n        $ip_array = explode('/', (string) $ip);\n        $this->ip = substr($ip_array[0], 0, 39);\n\n        return $this;\n    }\n\n    /**\n     * Get client ip\n     *\n     * @return string\n     */\n    public function getIp()\n    {\n        if (is_numeric($this->ip)) { // try to use old format\n            static $max = 0xffffffff; // 2^32\n            if ($this->ip > 0 && $this->ip < $max) {\n                return long2ip($this->ip);\n            }\n        }\n\n        return (string) $this->ip;\n    }\n\n    /**\n     * Set time created\n     *\n     * @param DateTime $datetime\n     *\n     * @return Newscoop\\Entity\\Comment\\Commenter\n     */\n    public function setTimeCreated(DateTime $datetime)\n    {\n        $this->time_created = $datetime;\n\n        return $this;\n    }\n\n    /**\n     * Get creation time.\n     *\n     * @return DateTime\n     */\n    public function getTimeCreated()\n    {\n        return $this->time_created;\n    }\n\n    /**\n     * Set time updated\n     *\n     * @param DateTime $datetime\n     *\n     * @return Newscoop\\Entity\\Comment\\Commenter\n     */\n    public function setTimeUpdated(DateTime $datetime)\n    {\n        $this->time_updated = $datetime;\n        \n        return $this;\n    }\n\n    /**\n     * Get updated time.\n     *\n     * @return DateTime\n     */\n    public function getTimeUpdated()\n    {\n        return $this->time_updated;\n    }\n\n    /**\n     * Get name of the linked user if there is one\n     *\n     * @return string\n     */\n    public function getUserName()\n    {\n        return $this->getUser() ? $this->getUser()->getName() : '';\n    }\n\n    /**\n     * Get id of the linked user if there is one\n     *\n     * @return string\n     */\n    public function getUserId()\n    {\n        return $this->getUser() ? $this->getUser()->getId() : '';\n    }\n\n    public function getComments()\n    {\n        return $this->comments;\n    }\n\n    public function __toString() {\n        return $this->name;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Comment/Preference/Article.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Comment\\Preference;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Newscoop\\Entity\\Language;\n\n/**\n * Article entity\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\Comment\\Preference\\ArticleRepository\")\n * @ORM\\Table(name=\"comment_preference_article\")\n */\nclass Article\n{\n    /**\n     * @ORM\\Id @ORM\\GeneratedValue\n     * @ORM\\Column(name=\"Number\", type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Language\")\n     * @ORM\\JoinColumn(name=\"IdLanguage\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Language\n     */\n    protected $language;\n\n    /**\n     * @ORM\\Column(name=\"comments_enabled\")\n     * @var int\n     */\n    protected $enabled;\n\n    /**\n     * @ORM\\Column(name=\"comments_locked\")\n     * @var int\n     */\n    protected $locked;\n\n    /**\n     * Set article id\n     *\n     * @param int $p_id\n     * @return Article\n     */\n    public function setId($p_id)\n    {\n        $this->id = $p_id;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get article id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Set the flag if the comments are enabled or not\n     *\n     * @param bool $p_enabled\n     * @return Article\n     */\n    public function setEnabled($p_enabled)\n    {\n        $this->enabled = $p_enabled;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get the flag if the comments are enabled or not\n     *\n     * @return bool\n     */\n    public function getEnabled()\n    {\n        return $this->enabled;\n    }\n\n    /**\n     * Set the flag if the comments are enabled or not\n     *\n     * @param bool $p_enabled\n     * @return Article\n     */\n    public function setLocked($p_locked)\n    {\n        $this->locked = $p_locked;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get the flag if the comments are enabled or not\n     *\n     * @return bool\n     */\n    public function getLocked()\n    {\n        return $this->locked;\n    }\n\n    /**\n     * Set language\n     *\n     * @param  Newscoop\\Entity\\Language $p_language\n     * @return Newscoop\\Entity\\Article\n     */\n    public function setLanguage(Language $p_language)\n    {\n        $this->language = $p_language;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get language\n     *\n     * @return Newscoop\\Entity\\Language\n     */\n    public function getLanguage()\n    {\n        return $this->language;\n    }\n\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Comment/Preference/Publication.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Comment\\Preference;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n/**\n * Publication entity\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\Comment\\Preference\\PublicationRepository\")\n * @ORM\\Table(name=\"comment_preference_publication\")\n */\nclass Publication\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\OneToOne(targetEntity=\"Newscoop\\Entity\\Publication\")\n     * @ORM\\JoinColumn(name=\"id\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Publication\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(name=\"enabled\")\n     * @var bool\n     */\n    protected $enabled;\n\n    /**\n     * @ORM\\Column(name=\"article_default_enabled\")\n     * @var bool\n     */\n    protected $article_default_enabled;\n\n    /**\n     * @ORM\\Column(name=\"subscribers_moderated\")\n     * @var bool\n     */\n    protected $subscribers_moderated;\n\n    /**\n     * @ORM\\Column(name=\"public_moderated\")\n     * @var bool\n     */\n    protected $public_moderated;\n\n    /**\n     * @ORM\\Column(name=\"public_enabled\")\n     * @var bool\n     */\n    protected $public_enabled;\n\n    /**\n     * @ORM\\Column(name=\"captcha_enabled\")\n     * @var bool\n     */\n    protected $captcha_enabled;\n\n    /**\n     * @ORM\\Column(name=\"spam_blocking_enabled\")\n     * @var bool\n     */\n    protected $spam_blocking_enabled;\n\n    /**\n     * @ORM\\Column(name=\"moderator_to\")\n     * @var string\n     */\n    protected $moderator_to;\n\n    /**\n     * @ORM\\Column(name=\"moderator_from\")\n     * @var string\n     */\n    protected $moderator_from;\n\n    /**\n     * Setting the the id\n     *\n     * @param Newscoop\\Entity\\Publication $p_id\n     * @return unknown_type\n     */\n    public function setId(\\Newscoop\\Entity\\Publication $p_id)\n    {\n        $this->id = $p_id;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Getting the the id\n     *\n     * @param Newscoop\\Entity\\Publication $p_id\n     * @return unknown_type\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Set enabled id\n     *\n     * @param bool $p_enab;ed\n     * @return Publication\n     */\n    public function setEnabled($p_enabled)\n    {\n        $this->enabled = $p_enabled;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get enabled id\n     *\n     * @return bool\n     */\n    public function getEnabled()\n    {\n        return $this->enabled;\n    }\n\n    /**\n     * Set article default enabled\n     *\n     * @param bool $p_article_default_enabled\n     * @return Publication\n     */\n    public function setArticleDefaultEnabled($p_article_default_enabled)\n    {\n        $this->article_default_enabled = $p_article_default_enabled;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get enabled id\n     *\n     * @return bool\n     */\n    public function getArticleDefaultEnabled()\n    {\n        return $this->article_default_enabled;\n    }\n\n    /**\n     * Set subscribers moderated\n     *\n     * @param bool $p_enabled\n     * @return Publication\n     */\n    public function setSubscribersModerated($p_subscribers_moderated)\n    {\n        $this->subscribers_moderated = $p_subscribers_moderated;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get subscribers moderated\n     *\n     * @return bool\n     */\n    public function getSubscribersModerated()\n    {\n        return $this->subscribers_moderated;\n    }\n\n    /**\n     * Set public moderated\n     *\n     * @param bool $p_public_moderated\n     * @return Publication\n     */\n    public function setPublicModerated($p_public_moderated)\n    {\n        $this->public_moderated = $p_public_moderated;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get public moderated\n     *\n     * @return bool\n     */\n    public function getPublicModerated()\n    {\n        return $this->public_moderated;\n    }\n\n    /**\n     * Set public moderated\n     *\n     * @param bool $p_public_moderated\n     * @return Publication\n     */\n    public function setCaptchaEnabled($p_captcha_enabled)\n    {\n        $this->captcha_enabled = $p_captcha_enabled;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get public moderated\n     *\n     * @return bool\n     */\n    public function getCaptchaEnabled()\n    {\n        return $this->captcha_enabled;\n    }\n\n    /**\n     * Set spam blocking enabled\n     *\n     * @param bool $p_spam_blocking_enabled\n     * @return Publication\n     */\n    public function setSpamBlockingEnabled($p_spam_blocking_enabled)\n    {\n        $this->spam_blocking_enabled = $p_spam_blocking_enabled;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get spam blocking enabled\n     *\n     * @return bool\n     */\n    public function getSpamBlockingEnabled()\n    {\n        return $this->spam_blocking_enabled;\n    }\n\n    /**\n     * Set moderator to email address\n     *\n     * @param string $p_moderator_to\n     * @return Publication\n     */\n    public function setModeratorTo($p_moderator_to)\n    {\n        return $this->moderator_to = $p_moderator_to;\n    }\n\n    /**\n     * Get moderator to email address\n     *\n     * @return string\n     */\n    public function getModeratorTo()\n    {\n        return $this->moderator_to;\n    }\n\n    /**\n     * Set moderator from email address\n     *\n     * @param string $p_moderator_from\n     * @return Publication\n     */\n    public function setModeratorFrom($p_moderator_from)\n    {\n        return $this->moderator_to = $p_moderator_from;\n    }\n\n    /**\n     * Get moderator from email address\n     *\n     * @return string\n     */\n    public function getModeratorFrom()\n    {\n        return $this->moderator_from;\n    }\n\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Comment.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\nuse Newscoop\\Entity\\Comment\\Commenter;\nuse Newscoop\\Search\\DocumentInterface;\nuse DateTime;\nuse Newscoop\\Entity\\Hierarchable;\n\n/**\n * Comment entity\n *\n * @ORM\\Table(name=\"comment\")\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\CommentRepository\")\n */\nclass Comment implements DocumentInterface, Hierarchable\n{\n    protected $allowedEmpty = array( 'br', 'input', 'image' );\n\n    protected $allowedTags =\n    array(\n        'a' => array('title', 'href'),\n        'abbr' => array('title'),\n        'acronym' => array('title'),\n        'b' => array(),\n        'blockquote' => array('cite'),\n        'cite' => array(),\n        'code' => array(),\n        'del' => array('datetime'),\n        'em' => array(),\n        'i' => array(),\n        'q' => array('cite'),\n        'p' => array(),\n        'br' => array(),\n        'strike' => array(),\n        'strong' => array(), );\n\n    /**\n     * Constants for status\n     */\n    const STATUS_APPROVED   = 0;\n    const STATUS_PENDING    = 1;\n    const STATUS_HIDDEN     = 2;\n    const STATUS_DELETED    = 3;\n\n    /**\n     * @var string to code mapper for status\n     */\n    static $status_enum = array('approved', 'pending', 'hidden', 'deleted');\n\n    /**\n     * @ORM\\Id\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Comment\\Commenter\", inversedBy=\"comments\", cascade={\"persist\"})\n     * @ORM\\JoinColumn(name=\"fk_comment_commenter_id\", referencedColumnName=\"id\")\n     * @var Newscoop\\Entity\\Comment\\Commenter\n     */\n    protected $commenter;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Publication\")\n     * @ORM\\JoinColumn(name=\"fk_forum_id\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Publication\n     */\n    protected $forum;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Comment\")\n     * @ORM\\JoinColumn(name=\"fk_parent_id\", referencedColumnName=\"id\", onDelete=\"SET NULL\")\n     * @var Newscoop\\Entity\\Comment\n     */\n    protected $parent;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"fk_thread_id\")\n     * @var int\n     */\n    protected $thread;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Language\")\n     * @ORM\\JoinColumn(name=\"fk_language_id\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Language\n     */\n    protected $language;\n\n    /**\n     * @ORM\\Column(length=140)\n     * @var string\n     */\n    protected $subject;\n\n    /**\n     * @ORM\\Column()\n     * @var text\n     */\n    protected $message;\n\n    /**\n     * @ORM\\Column(type=\"integer\", nullable=false)\n     * @var int\n     */\n    protected $thread_level;\n\n    /**\n     * @ORM\\Column(type=\"integer\", nullable=false)\n     * @var int\n     */\n    protected $thread_order;\n\n    /**\n     * @ORM\\Column(type=\"integer\", nullable=false)\n     * @var int\n     */\n    protected $status;\n\n    /**\n     * @ORM\\Column(length=39)\n     * @var int\n     */\n    protected $ip;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"time_created\")\n     * @var DateTime\n     */\n    protected $time_created;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"time_updated\")\n     * @var DateTime\n     */\n    protected $time_updated;\n\n    /**\n     * @ORM\\Column(type=\"integer\", nullable=false)\n     * @var int\n     */\n    protected $likes = 0;\n\n    /**\n     * @ORM\\Column(type=\"integer\", nullable=false)\n     * @var int\n     */\n    protected $dislikes = 0;\n\n    /**\n     * @ORM\\Column(type=\"boolean\")\n     * @var int\n     */\n    protected $recommended = 0;\n\n    public function __construct()\n    {\n        $this->setTimeCreated(new \\DateTime());\n        $this->setTimeUpdated(new \\DateTime());\n    }\n\n    /**\n     * @ORM\\Column(type=\"datetime\", nullable=True)\n     * @var DateTime\n     */\n    protected $indexed;\n\n    /**\n     * @ORM\\Column(type=\"string\", length=60, name=\"source\", nullable=true)\n     * @var string\n     */\n    protected $source;\n\n    /**\n     * Set id\n     *\n     * @param int $id\n     *\n     * @return Newscoop\\Entity\\Comment\n     */\n    public function setId($id)\n    {\n        $this->id = $id;\n\n        return $this;\n    }\n\n    /**\n     * Get id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Set timecreated\n     *\n     * @param DateTime $datetime\n     *\n     * @return Newscoop\\Entity\\Comment\n     */\n    public function setTimeCreated(\\DateTime $datetime)\n    {\n        $this->time_created = $datetime;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get creation time.\n     *\n     * @return DateTime\n     */\n    public function getTimeCreated()\n    {\n        return $this->time_created;\n    }\n\n    /**\n     * Set time updated\n     *\n     * @param DateTime $datetime\n     *\n     * @return Newscoop\\Entity\\Comment\n     */\n    public function setTimeUpdated(\\DateTime $datetime)\n    {\n        $this->time_updated = $datetime;\n\n        return $this;\n    }\n\n    /**\n     * Get creation time.\n     *\n     * @return DateTime\n     */\n    public function getTimeUpdated()\n    {\n        return $this->time_updated;\n    }\n\n    /**\n     * Set comment subject.\n     *\n     * @param string $subject\n     *\n     * @return Newscoop\\Entity\\Comment\n     */\n    public function setSubject($subject)\n    {\n        $this->subject = (string) $subject;\n\n        return $this;\n    }\n\n    /**\n     * Get comment subject.\n     *\n     * @return string\n     */\n    public function getSubject()\n    {\n        return $this->subject;\n    }\n\n    /**\n     * Set comment message.\n     *\n     * @param string $message\n     *\n     * @return Newscoop\\Entity\\Comment\n     */\n    public function setMessage($message)\n    {\n        $this->message = $this->formatMessage((string) $message);\n\n        return $this;\n    }\n\n    /**\n     * Get comment message.\n     *\n     * @return string\n     */\n    public function getMessage()\n    {\n        return $this->message;\n    }\n\n    /**\n     * Set comment ip address\n     *\n     * @param string $ip\n     *\n     * @return Newscoop\\Entity\\Comment\n     */\n    public function setIp($ip)\n    {\n        // remove subnet & limit to IP_LENGTH\n        $ipArray = explode('/', $ip);\n        $this->ip = substr($ipArray[0], 0, 39);\n\n        return $this;\n    }\n\n    /**\n     * Get comment ip address\n     *\n     * @return string\n     */\n    public function getIp()\n    {\n        if (is_numeric($this->ip)) {\n            // try to use old format\n            static $max = 0xffffffff; // 2^32\n            if ($this->ip > 0 && $this->ip < $max) {\n                return long2ip($this->ip);\n            }\n        }\n\n        return $this->ip;\n    }\n\n    /**\n     * Set recommended\n     *\n     * @param string $recommended\n     *\n     * @return Newscoop\\Entity\\Comment\n     */\n    public function setRecommended($recommended)\n    {\n        if ($recommended) {\n            $this->recommended = 1;\n        } else {\n            $this->recommended = 0;\n        }\n\n        return $this;\n    }\n\n    /**\n     * Get comment recommended\n     *\n     * @return string\n     */\n    public function getRecommended()\n    {\n        return (bool) $this->recommended;\n    }\n\n    /**\n     * Set commenter\n     *\n     * @param Newscoop\\Entity\\Comment\\Commenter $commenter\n     *\n     * @return Newscoop\\Entity\\Comment\n     */\n    public function setCommenter(Commenter $commenter)\n    {\n        $this->commenter = $commenter;\n\n        return $this;\n    }\n\n    /**\n     * Get commenter\n     *\n     * @return Newscoop\\Entity\\Comment\\Commenter\n     */\n    public function getCommenter()\n    {\n        return $this->commenter;\n    }\n\n    /**\n     * Get the commenter's name\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->getCommenterName();\n    }\n\n    /**\n     * Get commenter name\n     *\n     * @return string\n     */\n    public function getCommenterName()\n    {\n        return $this->getCommenter()->getName();\n    }\n\n    /**\n     * Get the commenter's email\n     *\n     * @return string\n     */\n    public function getEmail()\n    {\n        return $this->getCommenterEmail();\n    }\n\n    /**\n     * Get commenter email\n     *\n     * @return string\n     */\n    public function getCommenterEmail()\n    {\n        return $this->getCommenter()->getEmail();\n    }\n\n    /**\n     * Set status string\n     *\n     * @return Newscoop\\Entity\\Comment\n     */\n    public function setStatus($status)\n    {\n        $status_enum = array_flip(self::$status_enum);\n        $this->status = $status_enum[$status];\n\n        return $this;\n    }\n\n    /**\n     * Get status string\n     *\n     * @return string\n     */\n    public function getStatus()\n    {\n        return self::$status_enum[$this->status];\n    }\n\n    /**\n     * Set forum\n     *\n     * @return Newscoop\\Entity\\Comment\n     */\n    public function setForum(Publication $forum)\n    {\n        $this->forum = $forum;\n\n        return $this;\n    }\n\n    /**\n     * Get forum\n     *\n     * @return Newscoop\\Entity\\Publication\n     */\n    public function getForum()\n    {\n        return $this->forum;\n    }\n\n    /**\n     * Set thread\n     *\n     * @return Newscoop\\Entity\\Comment\n     */\n    public function setThread($thread)\n    {\n        $this->thread = $thread;\n\n        return $this;\n    }\n\n    /**\n     * Get thread\n     *\n     * @return int\n     */\n    public function getThread()\n    {\n        return $this->thread;\n    }\n\n    /**\n     * Set thread level\n     *\n     * @return Newscoop\\Entity\\Comment\n     */\n    public function setThreadLevel($level)\n    {\n        $this->thread_level = $level;\n\n        return $this;\n    }\n\n    /**\n     * Get thread level\n     *\n     * @return integer\n     */\n    public function getThreadLevel()\n    {\n        return $this->thread_level;\n    }\n\n    /**\n     * Set thread order\n     *\n     * @return Newscoop\\Entity\\Comment\n     */\n    public function setThreadOrder($order)\n    {\n        $this->thread_order = $order;\n\n        return $this;\n    }\n\n    /**\n     * Get thread level\n     *\n     * @return integer\n     */\n    public function getThreadOrder()\n    {\n        return $this->thread_order;\n    }\n\n    /**\n     * Set Language\n     *\n     * @return Newscoop\\Entity\\Comment\n     */\n    public function setLanguage(Language $language)\n    {\n        $this->language = $language;\n\n        return $this;\n    }\n\n    /**\n     * Get Language\n     *\n     * @return Newscoop\\Entity\\Language\n     */\n    public function getLanguage()\n    {\n        return $this->language;\n    }\n\n    /**\n     * Set Parent\n     *\n     * @return Newscoop\\Entity\\Comment\n     */\n    public function setParent(Comment $parent = null)\n    {\n        $this->parent = $parent;\n\n        return $this;\n    }\n\n    /**\n     * Get Parent\n     *\n     * @return Newscoop\\Entity\\Comment\n     */\n    public function getParent()\n    {\n        return $this->parent;\n    }\n\n    /**\n     * Get Parent Id\n     *\n     * @return Newscoop\\Entity\\Comment\n     */\n    public function getParentId()\n    {\n        if ($this->parent) {\n            return $this->parent->getId();\n        }\n\n        return;\n    }\n\n    /**\n     * Add one more like for comment\n     *\n     * @return self\n     */\n    public function addLike()\n    {\n        $this->likes = $this->likes+1;\n\n        return $this;\n    }\n\n    /**\n     * Set likes number for comment\n     *\n     * @param int $likesNumber\n     *\n     * @return self\n     */\n    public function setLikes($likesNumber)\n    {\n        $this->likes = $likesNumber;\n\n        return $this;\n    }\n\n    /**\n     * Get the likes count\n     *\n     * @return int\n     */\n    public function getLikes()\n    {\n        return $this->likes;\n    }\n\n    public function addDislike()\n    {\n        $this->dislikes = $this->dislikes+1;\n\n        return $this;\n    }\n\n    public function setDislikes($dislikesNumber)\n    {\n        $this->dislikes = $dislikesNumber;\n\n        return $this;\n    }\n\n    /**\n     * Get the dislikes count\n     *\n     * @return int\n     */\n    public function getDislikes()\n    {\n        return $this->dislikes;\n    }\n\n    /**\n     * Get username witch should be the real name\n     *\n     * @return string\n     * @deprecated legacy from frontend controllers\n     */\n    public function getRealName()\n    {\n        $this->getCommenter()->getUserName();\n    }\n\n    /**\n     * Check if the comment is the same as this one\n     *\n     * @param Comment $comment\n     *\n     * @return bool\n     * @deprecated legacy from frontend controllers\n     */\n    public function SameAs($comment)\n    {\n        if (is_object($comment)) {\n            return $comment->getId() == $this->getId();\n        }\n\n        return false;\n    }\n\n    /**\n     * Check if the comment exists\n     * Test if there is set an id\n     *\n     * @return bool\n     * @deprecated legacy from frontend controllers\n     */\n    public function exists()\n    {\n        return !is_null($this->id);\n    }\n\n    /**\n     * Get an enity property\n     *\n     * @param $key\n     *\n     * @return mixed\n     * @deprecated legacy from frontend controllers\n     */\n    public function getProperty($key)\n    {\n        if (isset($this->$key)) {\n            return $this->$key;\n        } else {\n            return;\n        }\n    }\n\n    /**\n     * Method used to format message from comments\n     *\n     * @param  string $str\n     * @return string\n     */\n    protected function formatMessage($str)\n    {\n        $parts = explode('<', $str);\n        // if no < was found then return the original string\n        if (count($parts) === 1) {\n            return $str;\n        }\n        /** @type array vector where the tag list are keeped */\n        $tag = array();\n        $attrib = array();\n        $contentAfter = array(0 => $parts[0]);\n        for ($i = 1, $counti = count($parts); $i < $counti; $i++) {\n            $tagAndContent = explode('>', $parts[$i], 2);\n            $tagAndAttrib = explode(' ', $tagAndContent[0], 2);\n\n            if (isset($tagAndAttrib[1])) {\n                /**\n                 * @todo make a better attributes filter regex\n                 *      this is breaking on not quotes define attibutes\n                 *      ex: like checked=true for good parsing should be checked=\"true\" or checked='true'\n                 */\n                preg_match_all(\"#([^=]+)=\\s*(['\\\"])?([^\\\\2]*)\\\\2#iU\", $tagAndAttrib[1], $rez);\n                if (isset($rez[1])) {\n                    for ($k = 0, $countk = count($rez[1]); $k < $countk; $k++) {\n                        $attrib[$i][] = array(strtolower(trim($rez[1][$k])), $rez[3][$k]);\n                    }\n                }\n            }\n            $tag[$i] = $tagAndAttrib[0];\n            $contentAfter[$i] = isset($tagAndContent[1]) ? $tagAndContent[1] : '';\n        }\n        $closed = $tag;\n        $return = '';\n        $allowedNameTags = array_keys($this->allowedTags);\n        for ($i = 0, $counti = count($contentAfter); $i < $counti; $i++) {\n            $isClosed = isset($tag[$i]) ? (substr($tag[$i], 0, 1) == '/') : false;\n            if (isset($tag[$i])) {\n                $tagName = $tag[$i];\n                if (substr($tagName, -1, 1) == '/') {\n                    $tagName = substr($tagName, 0, -1);\n                }\n            }\n            if (isset($tag[$i]) && (in_array($tagName, $allowedNameTags))) {\n                unset($closed[$i]);\n                $good = array_search('/'.$tag[$i], $closed, true);\n                if ($good) {\n                    unset($closed[$good]);\n                    $composeTag = '<'.$tag[$i].' ';\n                    if (isset($attrib[$i])) {\n                        for ($j = 0, $countj = count($attrib[$i]); $j < $countj; $j++) {\n                            if ($attrib[$i][$j][0] == 'href') {\n                            }\n                            $attrib[$i][$j][1] = preg_replace('/(javascript[:]?)/i', '', $attrib[$i][$j][1]);\n                            if (in_array($attrib[$i][$j][0], $this->allowedTags[$tag[$i]])) {\n                                $composeTag .= $attrib[$i][$j][0].'=\"'.$attrib[$i][$j][1].'\" ';\n                            }\n                        }\n                    }\n                    $return .= substr($composeTag, 0, -1).'>'.$contentAfter[$i];\n                } else {\n                    $composeTag = '<'.$tag[$i].' ';\n                    $title = false;\n                    $cite = false;\n                    if (isset($attrib[$i])) {\n                        for ($j = 0, $countj = count($attrib[$i]); $j < $countj; $j++) {\n                            if (in_array($attrib[$i][$j][0], $this->allowedTags[$tag[$i]])) {\n                                if ($attrib[$i][$j][0] == 'href') {\n                                    $attrib[$i][$j][1] = preg_replace('/(javascript[:]?)/i', '', $attrib[$i][$j][1]);\n                                }\n                                if ($attrib[$i][$j][0] == 'title') {\n                                    $title = $attrib[$i][$j][1];\n                                } elseif ($attrib[$i][$j][0] == 'cite') {\n                                    $cite = $attrib[$i][$j][1];\n                                } else {\n                                    $composeTag .= $attrib[$i][$j][0].'=\"'.$attrib[$i][$j][1].'\" ';\n                                }\n                            }\n                        }\n                    }\n                    // if title is set and is a broken tag use the title like inline text\n                    if (in_array($tagName, $this->allowedEmpty)) {\n                        $return .= substr($composeTag, 0, -1).'>'.$contentAfter[$i];\n                    } elseif ($title !== false) {\n                        $return .= substr($composeTag, 0,\n                                          -1).'>'.$title.'</'.$tag[$i].'>'.$contentAfter[$i];\n                    } // if cite is set and is a broken tag use the cite like inline text\n                    elseif ($cite !== false) {\n                        $return .= substr($composeTag, 0, -1).'>'.$cite.'</'.$tag[$i].'>'.$contentAfter[$i];\n                    } // else use the text after\n                    else {\n                        $return .= substr($composeTag, 0, -1).'>'.$contentAfter[$i].'</'.$tag[$i].'>';\n                    }\n                }\n            } elseif (isset($tag[$i]) && $isClosed && in_array(substr($tag[$i], 1), $allowedNameTags)) {\n                unset($closed[$i]);\n                $return .= '<'.$tag[$i].'>'.$contentAfter[$i];\n            } else {\n                $return .= $contentAfter[$i];\n            }\n        }\n\n        return $return;\n    }\n\n    /**\n     * Set indexed\n     *\n     * @param DateTime $indexed\n     *\n     * @return self\n     */\n    public function setIndexed(DateTime $indexed = null)\n    {\n        $this->indexed = $indexed;\n\n        return self;\n    }\n\n    /**\n     * Get indexed\n     *\n     * @return DateTime\n     */\n    public function getIndexed()\n    {\n        return $this->indexed;\n    }\n\n    /**\n     * Get comment source\n     *\n     * @return string\n     */\n    public function getSource()\n    {\n        return $this->source;\n    }\n\n    /**\n     * Set comment source\n     *\n     * @param string $source\n     *\n     * @return string\n     */\n    public function setSource($source)\n    {\n        $this->source = $source;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Country.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * Country entity\n *\n * @ORM\\Entity\n * @ORM\\Table(name=\"Countries\")\n */\nclass Country \n{\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"string\", name=\"Code\")\n     * @var string\n     */\n    protected $code;\n\n    /**\n     * @ORM\\Id\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Language\")\n     * @ORM\\JoinColumn(name=\"IdLanguage\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Language\n     */\n    protected $language;\n\n    /**\n     * @ORM\\Column(type=\"string\", name=\"Name\")\n     * @var string\n     */\n    protected $name;\n\n    /**\n     * Get code\n     *\n     * @return string\n     */\n    public function getCode()\n    {\n        return $this->code;\n    }\n\n    /**\n     * Get language\n     *\n     * @return Newscoop\\Entity\\Language\n     */\n    public function getLanguage()\n    {\n        return $this->language;\n    }\n\n    /**\n     * Get name\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->name;\n    }\n}\n\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/CronJob.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric z.ú.\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\n\n/**\n * Cron job entity\n *\n * @ORM\\Entity\n * @ORM\\Table(name=\"cron_jobs\")\n */\nclass CronJob\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\", name=\"id\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(type=\"string\", name=\"name\")\n     * @var string\n     */\n    protected $name;\n\n    /**\n     * @ORM\\Column(type=\"string\", name=\"command\")\n     * @var string\n     */\n    protected $command;\n\n    /**\n     * @ORM\\Column(type=\"string\", name=\"schedule\")\n     * @var string\n     */\n    protected $schedule;\n\n    /**\n     * @ORM\\Column(type=\"boolean\", name=\"is_debug\")\n     * @var boolean\n     */\n    protected $debug;\n\n    /**\n     * @ORM\\Column(type=\"string\", name=\"dateFormat\", nullable=true)\n     * @var string\n     */\n    protected $dateFormat;\n\n    /**\n     * @ORM\\Column(type=\"string\", name=\"output\", nullable=true)\n     * @var string\n     */\n    protected $output;\n\n    /**\n     * @ORM\\Column(type=\"string\", name=\"runOnHost\", nullable=true)\n     * @var string\n     */\n    protected $runOnHost;\n\n    /**\n     * @ORM\\Column(type=\"string\", name=\"environment\", nullable=true)\n     * @var string\n     */\n    protected $environment;\n\n    /**\n     * @ORM\\Column(type=\"string\", name=\"runAs\", nullable=true)\n     * @var string\n     */\n    protected $runAs;\n\n    /**\n     * @ORM\\Column(type=\"boolean\", name=\"is_active\")\n     * @var boolean\n     */\n    protected $enabled;\n\n    /**\n     * @ORM\\Column(type=\"boolean\", name=\"sendMail\")\n     * @var boolean\n     */\n    protected $sendMail;\n\n    /**\n     * @ORM\\Column(type=\"text\", name=\"detailsUrl\", nullable=true)\n     * @var text\n     */\n    protected $detailsUrl;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"created_at\")\n     * @var datetime\n     */\n    protected $createdAt;\n\n    public function __construct()\n    {\n        $this->createdAt = new \\DateTime('now');\n        $this->enabled = true;\n        $this->debug = false;\n        $this->sendMail = false;\n    }\n\n    /**\n     * Gets the value of id.\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Sets the value of id.\n     *\n     * @param int $id the id\n     *\n     * @return self\n     */\n    public function setId($id)\n    {\n        $this->id = $id;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of name.\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->name;\n    }\n\n    /**\n     * Sets the value of name.\n     *\n     * @param string $name the name\n     *\n     * @return self\n     */\n    public function setName($name)\n    {\n        $this->name = $name;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of command.\n     *\n     * @return string\n     */\n    public function getCommand()\n    {\n        return $this->command;\n    }\n\n    /**\n     * Sets the value of command.\n     *\n     * @param string $command the command\n     *\n     * @return self\n     */\n    public function setCommand($command)\n    {\n        $this->command = $command;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of schedule.\n     *\n     * @return string\n     */\n    public function getSchedule()\n    {\n        return $this->schedule;\n    }\n\n    /**\n     * Sets the value of schedule.\n     *\n     * @param string $schedule the schedule\n     *\n     * @return self\n     */\n    public function setSchedule($schedule)\n    {\n        $this->schedule = $schedule;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of dateFormat.\n     *\n     * @return string\n     */\n    public function getDateFormat()\n    {\n        return $this->dateFormat;\n    }\n\n    /**\n     * Sets the value of dateFormat.\n     *\n     * @param string $dateFormat the date format\n     *\n     * @return self\n     */\n    public function setDateFormat($dateFormat)\n    {\n        $this->dateFormat = $dateFormat;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of output.\n     *\n     * @return string\n     */\n    public function getOutput()\n    {\n        return $this->output;\n    }\n\n    /**\n     * Sets the value of output.\n     *\n     * @param string $output the output\n     *\n     * @return self\n     */\n    public function setOutput($output)\n    {\n        $this->output = $output;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of runOnHost.\n     *\n     * @return string\n     */\n    public function getRunOnHost()\n    {\n        return $this->runOnHost;\n    }\n\n    /**\n     * Sets the value of runOnHost.\n     *\n     * @param string $runOnHost the run on host\n     *\n     * @return self\n     */\n    public function setRunOnHost($runOnHost)\n    {\n        $this->runOnHost = $runOnHost;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of environment.\n     *\n     * @return string\n     */\n    public function getEnvironment()\n    {\n        return $this->environment;\n    }\n\n    /**\n     * Sets the value of environment.\n     *\n     * @param string $environment the environment\n     *\n     * @return self\n     */\n    public function setEnvironment($environment)\n    {\n        $this->environment = $environment;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of runAs.\n     *\n     * @return string\n     */\n    public function getRunAs()\n    {\n        return $this->runAs;\n    }\n\n    /**\n     * Sets the value of runAs.\n     *\n     * @param string $runAs the run as\n     *\n     * @return self\n     */\n    public function setRunAs($runAs)\n    {\n        $this->runAs = $runAs;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of createdAt.\n     *\n     * @return datetime\n     */\n    public function getCreatedAt()\n    {\n        return $this->createdAt;\n    }\n\n    /**\n     * Sets the value of createdAt.\n     *\n     * @param datetime $createdAt the created at\n     *\n     * @return self\n     */\n    public function setCreatedAt(\\DateTime $createdAt)\n    {\n        $this->createdAt = $createdAt;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of enabled.\n     *\n     * @return boolean\n     */\n    public function getEnabled()\n    {\n        return $this->enabled;\n    }\n\n    /**\n     * Sets the value of enabled.\n     *\n     * @param boolean $enabled the enabled\n     *\n     * @return self\n     */\n    public function setEnabled($enabled)\n    {\n        $this->enabled = $enabled;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of debug.\n     *\n     * @return boolean\n     */\n    public function getDebug()\n    {\n        return $this->debug;\n    }\n\n    /**\n     * Sets the value of debug.\n     *\n     * @param boolean $debug the debug\n     *\n     * @return self\n     */\n    public function setDebug($debug)\n    {\n        $this->debug = $debug;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of sendMail.\n     *\n     * @return boolean\n     */\n    public function getSendMail()\n    {\n        return $this->sendMail;\n    }\n\n    /**\n     * Sets the value of sendMail.\n     *\n     * @param boolean $sendMail the send mail\n     *\n     * @return self\n     */\n    public function setSendMail($sendMail)\n    {\n        $this->sendMail = $sendMail;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of detailsUrl.\n     *\n     * @return text\n     */\n    public function getDetailsUrl()\n    {\n        return $this->detailsUrl;\n    }\n\n    /**\n     * Sets the value of detailsUrl.\n     *\n     * @param text $detailsUrl the details url\n     *\n     * @return self\n     */\n    public function setDetailsUrl($detailsUrl)\n    {\n        $this->detailsUrl = $detailsUrl;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Event.php",
    "content": "<?php\r\n/**\r\n * @package Newscoop\r\n * @copyright 2012 Sourcefabric o.p.s.\r\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\r\n */\r\n\r\nnamespace Newscoop\\Entity;\r\n\r\nuse Doctrine\\ORM\\Mapping AS ORM;\r\n\r\n/**\r\n * @ORM\\Entity\r\n * @ORM\\Table(name=\"Events\")\r\n */\r\nclass Event\r\n{\r\n    /**\r\n     * @ORM\\Id\r\n     * @ORM\\Column(type=\"integer\", name=\"id\")\r\n     * @var int\r\n     */\r\n    protected $id;\r\n\r\n    /**\r\n     * @ORM\\Id\r\n     * @ORM\\Column(type=\"string\", name=\"Name\")\r\n     * @var int\r\n     */\r\n    protected $name;\r\n\r\n    /**\r\n     * @ORM\\Column(type=\"string\", name=\"Notify\")\r\n     * @var int\r\n     */\r\n    protected $notify;\r\n\r\n    /**\r\n     * @ORM\\Id\r\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Language\")\r\n     * @ORM\\JoinColumn(name=\"IdLanguage\", referencedColumnName=\"Id\")\r\n     * @var Newscoop\\Entity\\Language\r\n     */\r\n    protected $language;\r\n\r\n    /**\r\n     * Get name\r\n     *\r\n     * @return string\r\n     */\r\n    public function getName()\r\n    {\r\n        return $this->name;\r\n    }\r\n}\r\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Feedback.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse DateTime, Newscoop\\Entity\\User;\n\n/**\n * Feedback entity\n * @ORM\\Table(name=\"feedback\")\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\FeedbackRepository\")\n */\nclass Feedback\n{\n    /**\n     * @ORM\\Id \n     * @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $id;\n    \n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\User\")\n     * @ORM\\JoinColumn(name=\"user_id\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\User\n     */\n    protected $user;\n    \n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Section\")\n     * @ORM\\JoinColumn(name=\"section_id\", referencedColumnName=\"id\")\n     * @var Newscoop\\Entity\\Section\n     */\n    protected $section;\n    \n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Publication\")\n     * @ORM\\JoinColumn(name=\"publication_id\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Publication\n     */\n    protected $publication;\n    \n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Article\")\n     * @ORM\\JoinColumns({\n     *     @ORM\\JoinColumn(name=\"article_number\", referencedColumnName=\"Number\"),\n     *     @ORM\\JoinColumn(name=\"article_language\", referencedColumnName=\"IdLanguage\")\n     * })\n     * @var Newscoop\\Entity\\Article\n     */\n    protected $article;\n    \n    /**\n     * @ORM\\Column(length=2048)\n     * @var text\n     */\n    protected $message;\n    \n    /**\n     * @ORM\\Column(length=128)\n     * @var string\n     */\n    protected $url;\n    \n    /**\n     * @ORM\\Column(length=128)\n     * @var string\n     */\n    protected $subject;\n\n    /**\n     * @ORM\\Column(length=2)\n     * @var int\n     */\n    protected $status;\n\n    /**\n     * @ORM\\Column(type=\"datetime\")\n     * @var DateTime\n     */\n    protected $time_created;\n\n    /*\n     * @ORM\\Column(type=\"datetime\")\n     * @var DateTime\n     */\n    protected $time_updated;\n\n    /**\n     * @var string to code mapper for status\n     */\n    static $status_enum = array('processed', 'pending', 'starred', 'deleted');\n    /**\n     * @var string to code mapper for attachment_type\n     */\n    static $attachment_type_enum = array('none', 'image', 'document');\n    \n    /**\n     * @ORM\\Column(length=1)\n     * @var int\n     */\n    protected $attachment_type;\n    \n    /**\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $attachment_id;\n\n\n    /**\n     * Set id\n     *\n     * @param int $p_id\n     * @return Newscoop\\Entity\\User\n     */\n    public function setId($p_id)\n    {\n        $this->id = $p_id;\n    }\n\n    /**\n     * Get id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Set time created\n     *\n     * @param DateTime $p_datetime\n     * @return Newscoop\\Entity\\Feedback\n     */\n    public function setTimeCreated(DateTime $p_datetime)\n    {\n        $this->time_created = $p_datetime;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get creation time.\n     *\n     * @return DateTime\n     */\n    public function getTimeCreated()\n    {\n        return $this->time_created;\n    }\n\n    /**\n     * Set time updated\n     *\n     * @param DateTime $p_datetime\n     * @return Newscoop\\Entity\\Feedback\n     */\n    public function setTimeUpdated(DateTime $p_datetime)\n    {\n        $this->time_updated = $p_datetime;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get update time.\n     *\n     * @return DateTime\n     */\n    public function getTimeUpdated()\n    {\n        return $this->time_updated;\n    }\n    \n    /**\n     * Set url.\n     *\n     * @param string $p_url\n     * @return Newscoop\\Entity\\Feedback\n     */\n    public function setUrl($p_url)\n    {\n        $this->url = (string)$p_url;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get comment url.\n     *\n     * @return string\n     */\n    public function getUrl()\n    {\n        return $this->url;\n    }\n    \n    /**\n     * Set subject.\n     *\n     * @param string $p_subject\n     * @return Newscoop\\Entity\\Feedback\n     */\n    public function setSubject($p_subject)\n    {\n        $this->subject = (string)$p_subject;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get subject.\n     *\n     * @return string\n     */\n    public function getSubject()\n    {\n        return $this->subject;\n    }\n\n    /**\n     * Set message.\n     *\n     * @param string $p_message\n     * @return Newscoop\\Entity\\Feedback\n     */\n    public function setMessage($p_message)\n    {\n        $this->message = $p_message;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get message.\n     *\n     * @return string\n     */\n    public function getMessage()\n    {\n        return $this->message;\n    }\n    \n    /**\n     * Set user\n     *\n     * @param Newscoop\\Entity\\User $p_user\n     * @return Newscoop\\Entity\\Feedback\n     */\n    public function setUser(User $p_user)\n    {\n        $this->user = $p_user;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get user\n     *\n     * @return Newscoop\\Entity\\User\n     */\n    public function getUser()\n    {\n        return $this->user;\n    }\n    \n    /**\n     * Set section\n     *\n     * @param Newscoop\\Entity\\Section $p_section\n     * @return Newscoop\\Entity\\Feedback\n     */\n    public function setSection(Section $p_section)\n    {\n        $this->section = $p_section;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get section\n     *\n     * @return Newscoop\\Entity\\Section\n     */\n    public function getSection()\n    {\n        return $this->section;\n    }\n    \n    /**\n     * Set publication\n     *\n     * @param Newscoop\\Entity\\Publication $p_publication\n     * @return Newscoop\\Entity\\Feedback\n     */\n    public function setPublication(Publication $p_publication)\n    {\n        $this->publication = $p_publication;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get publication\n     *\n     * @return Newscoop\\Entity\\Publication\n     */\n    public function getPublication()\n    {\n        return $this->publication;\n    }\n    \n    /**\n     * Set article\n     *\n     * @param Newscoop\\Entity\\Article $p_article\n     * @return Newscoop\\Entity\\Feedback\n     */\n    public function setArticle(Article $p_article)\n    {\n        $this->article = $p_article;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get article\n     *\n     * @return Newscoop\\Entity\\Article\n     */\n    public function getArticle()\n    {\n        return $this->article;\n    }\n\n    /**\n     * Set status\n     *\n     * @return Newscoop\\Entity\\Feedback\n     */\n    public function setStatus($status)\n    {\n        $status_enum = array_flip(self::$status_enum);\n        $this->status = $status_enum[$status];\n        return $this;\n    }\n\n    /**\n     * Get status\n     *\n     * @return string\n     */\n    public function getStatus()\n    {\n        return self::$status_enum[$this->status];\n    }\n    \n    /**\n     * Set attachment type\n     *\n     * @return Newscoop\\Entity\\Feedback\n     */\n    public function setAttachmentType($attachment_type)\n    {\n        $attachment_type_enum = array_flip(self::$attachment_type_enum);\n        $this->attachment_type = $attachment_type_enum[$attachment_type];\n        return $this;\n    }\n\n    /**\n     * Get attachment_type\n     *\n     * @return string\n     */\n    public function getAttachmentType()\n    {\n        return self::$attachment_type_enum[$this->attachment_type];\n    }\n    \n    /**\n     * Set attachment_id\n     *\n     * @param integer p_attachment_id\n     * @return Newscoop\\Entity\\Feedback\n     */\n    public function setAttachmentId($attachment_id)\n    {\n        $this->attachment_id = $attachment_id;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get attachment_id\n     *\n     * @return integer\n     */\n    public function getAttachmentId()\n    {\n        return $this->attachment_id;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Hierarchable.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2016 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity;\n\ninterface Hierarchable\n{\n    /**\n     * @return int\n     */\n    public function getId();\n\n    /**\n     * @return Hierarchable\n     */\n    public function getParent();\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Issue.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\nuse Doctrine\\Common\\Collections\\ArrayCollection;\n\n/**\n * Issue entity\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\IssueRepository\")\n * @ORM\\Table(name=\"Issues\", uniqueConstraints={@ORM\\UniqueConstraint(name=\"issues_unique\", columns={\"IdPublication\", \"Number\", \"IdLanguage\"})})\n */\nclass Issue\n{\n    const STATUS_PUBLISHED = 'Y';\n    const STATUS_NOT_PUBLISHED = 'N';\n\n    /**\n     * Provides the class name as a constant.\n     */\n    const NAME = __CLASS__;\n\n    /**\n     * @ORM\\Id\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Publication\", inversedBy=\"issues\")\n     * @ORM\\JoinColumn(name=\"IdPublication\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Publication\n     */\n    protected $publication;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"Number\")\n     * @var int\n     */\n    protected $number;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Language\")\n     * @ORM\\JoinColumn(name=\"IdLanguage\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Language\n     */\n    protected $language;\n\n    /**\n     * @ORM\\Column(name=\"Name\")\n     * @var string\n     */\n    protected $name = '';\n\n    /**\n     * @ORM\\Column(name=\"Published\", nullable=True)\n     * @var string\n     */\n    protected $workflowStatus;\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"Newscoop\\Entity\\Section\", mappedBy=\"issue\")\n     * @var array\n     */\n    protected $sections;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Template\")\n     * @ORM\\JoinColumn(name=\"IssueTplId\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Template\"\n     */\n    protected $template;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Template\")\n     * @ORM\\JoinColumn(name=\"SectionTplId\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Template\"\n     */\n    protected $sectionTemplate;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Template\")\n     * @ORM\\JoinColumn(name=\"ArticleTplId\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Template\"\n     */\n    protected $articleTemplate;\n\n    /**\n     * @ORM\\Column(name=\"ShortName\")\n     * @var string\n     */\n    protected $shortName = '';\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"Newscoop\\Entity\\Output\\OutputSettingsIssue\", mappedBy=\"issue\")\n     * @var Newscoop\\Entity\\Output\\OutputSettingsIssue\n     */\n    protected $outputSettingsIssues;\n    \n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"PublicationDate\", nullable=true)\n     *\n     * @var DateTime\n     */\n    protected $published;\n\n    /**\n     * Get published.\n     *\n     * @return string\n     */\n    public function getPublished()\n    {\n        return $this->published;\n    }\n\n    /**\n     * Set published.\n     *\n     * @param \\Datetime|null $published\n     *\n     * @return self\n     */\n    public function setPublished($published)\n    {\n        $this->published = $published;\n\n        return $this;\n    }\n\n    /**\n     * @param int                         $number\n     * @param Newscoop\\Entity\\Publication $publication\n     */\n    public function __construct($number, \\Newscoop\\Entity\\Publication $publication = null, \\Newscoop\\Entity\\Language $language = null)\n    {\n        $this->number = (int) $number;\n        $this->sections = new ArrayCollection();\n\n        if ($publication !== null) {\n            $this->publication = $publication;\n            $this->language = $language !== null ? $language : $this->publication->getDefaultLanguage();\n            $this->publication->addIssue($this);\n        }\n    }\n\n    /**\n     * Get id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Get language\n     *\n     * @return Newscoop\\Entity\\Language\n     */\n    public function getLanguage()\n    {\n        return $this->language;\n    }\n\n    /**\n     * Get language id\n     *\n     * @return int\n     */\n    public function getLanguageId()\n    {\n        return $this->language !== null ? $this->language->getId() : null;\n    }\n\n    /**\n     * Get language code\n     *\n     * @return string\n     */\n    public function getLanguageCode()\n    {\n        return $this->language !== null ? $this->language->getCode() : null;\n    }\n\n    /**\n     * Get publication\n     *\n     * @return Publication\n     */\n    public function getPublication()\n    {\n        return $this->publication;\n    }\n\n    /**\n     * Get publication Id\n     *\n     * @return int\n     */\n    public function getPublicationId()\n    {\n        return $this->publication !== null ? $this->publication->getId() : null;\n    }\n\n    /**\n     * Add section\n     *\n     * @param  Newscoop\\Entity\\Section $section\n     * @return void\n     */\n    public function addSection(Section $section)\n    {\n        if (!$this->sections->contains($section)) {\n            $this->sections->add($section);\n        }\n    }\n\n    /**\n     * Get sections\n     *\n     * @return array\n     */\n    public function getSections()\n    {\n        return $this->sections;\n    }\n\n    /**\n     * Set template\n     *\n     * @param  Newscoop\\Entity\\Template $template\n     * @return Newscoop\\Entity\\Issue\n     */\n    public function setTemplate(Template $template)\n    {\n        $this->template = $template;\n\n        return $this;\n    }\n\n    /**\n     * Set section template\n     *\n     * @param  Newscoop\\Entity\\Template $template\n     * @return Newscoop\\Entity\\Issue\n     */\n    public function setSectionTemplate(Template $template)\n    {\n        $this->sectionTemplate = $template;\n\n        return $this;\n    }\n\n    /**\n     * Set article template\n     *\n     * @param  Newscoop\\Entity\\Template $template\n     * @return Newscoop\\Entity\\Issue\n     */\n    public function setArticleTemplate(Template $template)\n    {\n        $this->articleTemplate = $template;\n\n        return $this;\n    }\n\n    /**\n     * Get name of the issue\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->name;\n    }\n\n    /**\n     * Get short name of the issue\n     *\n     * @return string\n     */\n    public function getShortName()\n    {\n        return $this->shortName;\n    }\n\n    /**\n     * Set workflow status\n     *\n     * @param  string $workflowStatus\n     * @return void\n     */\n    public function setWorkflowStatus($workflowStatus)\n    {\n        $this->workflowStatus = (string) $workflowStatus;\n    }\n\n    /**\n     * Get workflow status\n     *\n     * @return string\n     */\n    public function getWorkflowStatus()\n    {\n        return $this->workflowStatus;\n    }\n\n    /**\n     * Get issue number\n     *\n     * @return int\n     */\n    public function getNumber()\n    {\n        return $this->number;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/KeywordIndex.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * KeywordIndex entity\n *\n * @ORM\\Entity()\n * @ORM\\Table(name=\"KeywordIndex\")\n */\nclass KeywordIndex\n{\n    /**\n     * @ORM\\Id()\n     * @ORM\\Column(type=\"string\", name=\"Keyword\")\n     * @var string\n     */\n    protected $keyword;\n\n    /**\n     * @ORM\\Column(name=\"Id\", type=\"integer\")\n     * @var int\n     */\n    protected $id;\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Language.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @subpackage Languages\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * Language entity\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\LanguageRepository\")\n * @ORM\\Table(name=\"Languages\")\n */\nclass Language\n{\n    /**\n     * Provides the class name as a constant.\n     */\n    const NAME = __CLASS__;\n\n    /**\n     * @ORM\\Id \n     * @ORM\\GeneratedValue\n     * @ORM\\Column(name=\"Id\", type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(name=\"Name\", nullable=True)\n     * @var string\n     */\n    protected $name;\n\n    /**\n     * @ORM\\Column(name=\"CodePage\", nullable=True)\n     * @var string\n     */\n    protected $code_page;\n\n    /**\n     * @ORM\\Column(name=\"OrigName\", nullable=True)\n     * @var string\n     */\n    protected $original_name;\n\n    /**\n     * @ORM\\Column(name=\"Code\", nullable=True)\n     * @var string\n     */\n    protected $code;\n\n    /**\n     * @ORM\\Column(name=\"RFC3066bis\")\n     * @var string\n     */\n    protected $RFC3066bis;\n\n    /**\n     * @ORM\\Column(name=\"Month1\", nullable=True)\n     * @var string\n     */\n    protected $month1;\n\n    /**\n     * @ORM\\Column(name=\"Month2\", nullable=True)\n     * @var string\n     */\n    protected $month2;\n\n    /**\n     * @ORM\\Column(name=\"Month3\", nullable=True)\n     * @var string\n     */\n    protected $month3;\n\n    /**\n     * @ORM\\Column(name=\"Month4\", nullable=True)\n     * @var string\n     */\n    protected $month4;\n\n    /**\n     * @ORM\\Column(name=\"Month5\", nullable=True)\n     * @var string\n     */\n    protected $month5;\n\n    /**\n     * @ORM\\Column(name=\"Month6\", nullable=True)\n     * @var string\n     */\n    protected $month6;\n\n    /**\n     * @ORM\\Column(name=\"Month7\", nullable=True)\n     * @var string\n     */\n    protected $month7;\n\n    /**\n     * @ORM\\Column(name=\"Month8\", nullable=True)\n     * @var string\n     */\n    protected $month8;\n\n    /**\n     * @ORM\\Column(name=\"Month9\", nullable=True)\n     * @var string\n     */\n    protected $month9;\n\n    /**\n     * @ORM\\Column(name=\"Month10\", nullable=True)\n     * @var string\n     */\n    protected $month10;\n\n    /**\n     * @ORM\\Column(name=\"Month11\", nullable=True)\n     * @var string\n     */\n    protected $month11;\n\n    /**\n     * @ORM\\Column(name=\"Month12\", nullable=True)\n     * @var string\n     */\n    protected $month12;\n\n    /**\n     * @ORM\\Column(name=\"ShortMonth1\", nullable=True)\n     * @var string\n     */\n    protected $short_month1;\n\n    /**\n     * @ORM\\Column(name=\"ShortMonth2\", nullable=True)\n     * @var string\n     */\n    protected $short_month2;\n\n    /**\n     * @ORM\\Column(name=\"ShortMonth3\", nullable=True)\n     * @var string\n     */\n    protected $short_month3;\n\n    /**\n     * @ORM\\Column(name=\"ShortMonth4\", nullable=True)\n     * @var string\n     */\n    protected $short_month4;\n\n    /**\n     * @ORM\\Column(name=\"ShortMonth5\", nullable=True)\n     * @var string\n     */\n    protected $short_month5;\n\n    /**\n     * @ORM\\Column(name=\"ShortMonth6\", nullable=True)\n     * @var string\n     */\n    protected $short_month6;\n\n    /**\n     * @ORM\\Column(name=\"ShortMonth7\", nullable=True)\n     * @var string\n     */\n    protected $short_month7;\n\n    /**\n     * @ORM\\Column(name=\"ShortMonth8\", nullable=True)\n     * @var string\n     */\n    protected $short_month8;\n\n    /**\n     * @ORM\\Column(name=\"ShortMonth9\", nullable=True)\n     * @var string\n     */\n    protected $short_month9;\n\n    /**\n     * @ORM\\Column(name=\"ShortMonth10\", nullable=True)\n     * @var string\n     */\n    protected $short_month10;\n\n    /**\n     * @ORM\\Column(name=\"ShortMonth11\", nullable=True)\n     * @var string\n     */\n    protected $short_month11;\n\n    /**\n     * @ORM\\Column(name=\"ShortMonth12\", nullable=True)\n     * @var string\n     */\n    protected $short_month12;\n\n    /**\n     * @ORM\\Column(name=\"WDay1\", nullable=True)\n     * @var string\n     */\n    protected $day1;\n\n    /**\n     * @ORM\\Column(name=\"WDay2\", nullable=True)\n     * @var string\n     */\n    protected $day2;\n\n    /**\n     * @ORM\\Column(name=\"WDay3\", nullable=True)\n     * @var string\n     */\n    protected $day3;\n\n    /**\n     * @ORM\\Column(name=\"WDay4\", nullable=True)\n     * @var string\n     */\n    protected $day4;\n\n    /**\n     * @ORM\\Column(name=\"WDay5\", nullable=True)\n     * @var string\n     */\n    protected $day5;\n\n    /**\n     * @ORM\\Column(name=\"WDay6\", nullable=True)\n     * @var string\n     */\n    protected $day6;\n\n    /**\n     * @ORM\\Column(name=\"WDay7\", nullable=True)\n     * @var string\n     */\n    protected $day7;\n\n    /**\n     * @ORM\\Column(name=\"ShortWDay1\", nullable=True)\n     * @var string\n     */\n    protected $short_day1;\n\n    /**\n     * @ORM\\Column(name=\"ShortWDay2\", nullable=True)\n     * @var string\n     */\n    protected $short_day2;\n\n    /**\n     * @ORM\\Column(name=\"ShortWDay3\", nullable=True)\n     * @var string\n     */\n    protected $short_day3;\n\n    /**\n     * @ORM\\Column(name=\"ShortWDay4\", nullable=True)\n     * @var string\n     */\n    protected $short_day4;\n\n    /**\n     * @ORM\\Column(name=\"ShortWDay5\", nullable=True)\n     * @var string\n     */\n    protected $short_day5;\n\n    /**\n     * @ORM\\Column(name=\"ShortWDay6\", nullable=True)\n     * @var string\n     */\n    protected $short_day6;\n\n    /**\n     * @ORM\\Column(name=\"ShortWDay7\", nullable=True)\n     * @var string\n     */\n    protected $short_day7;\n\n    /**\n     * Get id\n     *\n     * @return string\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n\t/**\n     * Set id\n     * @var int\n     */\n    public function setId($id)\n    {\n        $this->id = $id;\n        return $this;\n    }\n\n    /**\n     * Set name\n     *\n     * @param string $name\n     * @return Newscoop\\Entity\\Language\n     */\n    public function setName($name)\n    {\n        $this->name = (string) $name;\n        return $this;\n    }\n\n    /**\n     * Get language name\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->name;\n    }\n\n    /**\n     * Set original/native name\n     *\n     * @param string $name\n     * @return Newscoop\\Entity\\Language\n     */\n    public function setNativeName($native_name)\n    {\n        $this->original_name = (string) $native_name;\n        return $this;\n    }\n\n    public function getNativeName()\n    {\n        return $this->original_name;\n    }\n\n    /**\n     * Set code page\n     *\n     * @param string $name\n     * @return Newscoop\\Entity\\Language\n     */\n    public function setCodePage($code_page)\n    {\n        $this->code_page = (string) $code_page;\n        return $this;\n    }\n\n    public function getCodePage()\n    {\n        return $this->code_page;\n    }\n\n    /**\n     * Set code\n     *\n     * @param string $name\n     * @return Newscoop\\Entity\\Language\n     */\n    public function setCode($code)\n    {\n        $this->code = (string) $code;\n        return $this;\n    }\n\n    public function getCode()\n    {\n        return $this->code;\n    }\n\n    /**\n     * Set RFC3066bis\n     *\n     * @param string $RFC3066bis Language code\n     *\n     * @return self\n     */\n    public function setRFC3066bis($RFC3066bis)\n    {\n        $this->RFC3066bis = (string) $RFC3066bis;\n\n        return  $this;\n    }\n\n    /**\n     * Get RFC3066bis\n     *\n     * @return string\n     */\n    public function getRFC3066bis()\n    {\n        return $this->RFC3066bis;\n    }\n\n    public function setMonth1($month)\n    {\n        $this->month1 = (string) $month;\n        return $this;\n    }\n\n    public function getMonth1()\n    {\n        return $this->month1;\n    }\n\n    public function setMonth2($month)\n    {\n        $this->month2 = (string) $month;\n        return $this;\n    }\n\n    public function getMonth2()\n    {\n        return $this->month2;\n    }\n\n    public function setMonth3($month)\n    {\n        $this->month3 = (string) $month;\n        return $this;\n    }\n\n    public function getMonth3()\n    {\n        return $this->month3;\n    }\n\n    public function setMonth4($month)\n    {\n        $this->month4 = (string) $month;\n        return $this;\n    }\n\n    public function getMonth4()\n    {\n        return $this->month4;\n    }\n\n    public function setMonth5($month)\n    {\n        $this->month5 = (string) $month;\n        return $this;\n    }\n\n    public function getMonth5()\n    {\n        return $this->month5;\n    }\n\n    public function setMonth6($month)\n    {\n        $this->month6 = (string) $month;\n        return $this;\n    }\n\n    public function getMonth6()\n    {\n        return $this->month6;\n    }\n\n    public function setMonth7($month)\n    {\n        $this->month7 = (string) $month;\n        return $this;\n    }\n\n    public function getMonth7()\n    {\n        return $this->month7;\n    }\n\n    public function setMonth8($month)\n    {\n        $this->month8 = (string) $month;\n        return $this;\n    }\n\n    public function getMonth8()\n    {\n        return $this->month8;\n    }\n\n    public function setMonth9($month)\n    {\n        $this->month9 = (string) $month;\n        return $this;\n    }\n\n    public function getMonth9()\n    {\n        return $this->month9;\n    }\n\n    public function setMonth10($month)\n    {\n        $this->month10 = (string) $month;\n        return $this;\n    }\n\n    public function getMonth10()\n    {\n        return $this->month10;\n    }\n\n    public function setMonth11($month)\n    {\n        $this->month11 = (string) $month;\n        return $this;\n    }\n\n    public function getMonth11()\n    {\n        return $this->month11;\n    }\n\n    public function setMonth12($month)\n    {\n        $this->month12 = (string) $month;\n        return $this;\n    }\n\n    public function getMonth12()\n    {\n        return $this->month12;\n    }\n\n    public function setShortMonth1($month)\n    {\n        $this->short_month1 = (string) $month;\n        return $this;\n    }\n\n    public function getShortMonth1()\n    {\n        return $this->short_month1;\n    }\n\n    public function setShortMonth2($month)\n    {\n        $this->short_month2 = (string) $month;\n        return $this;\n    }\n\n    public function getShortMonth2()\n    {\n        return $this->short_month2;\n    }\n\n    public function setShortMonth3($month)\n    {\n        $this->short_month3 = (string) $month;\n        return $this;\n    }\n\n    public function getShortMonth3()\n    {\n        return $this->short_month3;\n    }\n\n    public function setShortMonth4($month)\n    {\n        $this->short_month4 = (string) $month;\n        return $this;\n    }\n\n    public function getShortMonth4()\n    {\n        return $this->short_month4;\n    }\n\n    public function setShortMonth5($month)\n    {\n        $this->short_month5 = (string) $month;\n        return $this;\n    }\n\n    public function getShortMonth5()\n    {\n        return $this->short_month5;\n    }\n\n    public function setShortMonth6($month)\n    {\n        $this->short_month6 = (string) $month;\n        return $this;\n    }\n\n    public function getShortMonth6()\n    {\n        return $this->short_month6;\n    }\n\n    public function setShortMonth7($month)\n    {\n        $this->short_month7 = (string) $month;\n        return $this;\n    }\n\n    public function getShortMonth7()\n    {\n        return $this->short_month7;\n    }\n\n    public function setShortMonth8($month)\n    {\n        $this->short_month8 = (string) $month;\n        return $this;\n    }\n\n    public function getShortMonth8()\n    {\n        return $this->short_month8;\n    }\n\n    public function setShortMonth9($month)\n    {\n        $this->short_month9 = (string) $month;\n        return $this;\n    }\n\n    public function getShortMonth9()\n    {\n        return $this->short_month9;\n    }\n\n    public function setShortMonth10($month)\n    {\n        $this->short_month10 = (string) $month;\n        return $this;\n    }\n\n    public function getShortMonth10()\n    {\n        return $this->short_month10;\n    }\n\n    public function setShortMonth11($month)\n    {\n        $this->short_month11 = (string) $month;\n        return $this;\n    }\n\n    public function getShortMonth11()\n    {\n        return $this->short_month11;\n    }\n\n    public function setShortMonth12($month)\n    {\n        $this->short_month12 = (string) $month;\n        return $this;\n    }\n\n    public function getShortMonth12()\n    {\n        return $this->short_month12;\n    }\n\n    public function setDay1($day)\n    {\n        $this->day1 = (string) $day;\n        return $this;\n    }\n\n    public function getDay1()\n    {\n        return $this->day1;\n    }\n\n    public function setDay2($day)\n    {\n        $this->day2 = (string) $day;\n        return $this;\n    }\n\n    public function getDay2()\n    {\n        return $this->day2;\n    }\n\n    public function setDay3($day)\n    {\n        $this->day3 = (string) $day;\n        return $this;\n    }\n\n    public function getDay3()\n    {\n        return $this->day3;\n    }\n\n    public function setDay4($day)\n    {\n        $this->day4 = (string) $day;\n        return $this;\n    }\n\n    public function getDay4()\n    {\n        return $this->day4;\n    }\n\n    public function setDay5($day)\n    {\n        $this->day5 = (string) $day;\n        return $this;\n    }\n\n    public function getDay5()\n    {\n        return $this->day5;\n    }\n\n    public function setDay6($day)\n    {\n        $this->day6 = (string) $day;\n        return $this;\n    }\n\n    public function getDay6()\n    {\n        return $this->day6;\n    }\n\n    public function setDay7($day)\n    {\n        $this->day7 = (string) $day;\n        return $this;\n    }\n\n    public function getDay7()\n    {\n        return $this->day7;\n    }\n\n    public function setShortDay1($day)\n    {\n        $this->short_day1 = (string) $day;\n        return $this;\n    }\n\n    public function getShortDay1()\n    {\n        return $this->short_day1;\n    }\n\n    public function setShortDay2($day)\n    {\n        $this->short_day2 = (string) $day;\n        return $this;\n    }\n\n    public function getShortDay2()\n    {\n        return $this->short_day2;\n    }\n\n    public function setShortDay3($day)\n    {\n        $this->short_day3 = (string) $day;\n        return $this;\n    }\n\n    public function getShortDay3()\n    {\n        return $this->short_day3;\n    }\n\n    public function setShortDay4($day)\n    {\n        $this->short_day4 = (string) $day;\n        return $this;\n    }\n\n    public function getShortDay4()\n    {\n        return $this->short_day4;\n    }\n\n    public function setShortDay5($day)\n    {\n        $this->short_day5 = (string) $day;\n        return $this;\n    }\n\n    public function getShortDay5()\n    {\n        return $this->short_day5;\n    }\n\n    public function setShortDay6($day)\n    {\n        $this->short_day6 = (string) $day;\n        return $this;\n    }\n\n    public function getShortDay6()\n    {\n        return $this->short_day6;\n    }\n\n    public function setShortDay7($day)\n    {\n        $this->short_day7 = (string) $day;\n        return $this;\n    }\n\n    public function getShortDay7()\n    {\n        return $this->short_day7;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Log.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * Log entity\n *\n * @ORM\\Entity\n * @ORM\\Table(name=\"Log\")\n */\nclass Log\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"time_created\")\n     * @var DateTime\n     */\n    protected $created;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Event\")\n     * @ORM\\JoinColumn(name=\"fk_event_id\", referencedColumnName=\"id\")\n     * @var Newscoop\\Entity\\Event\n     */\n    protected $eventId;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\User\", fetch=\"EAGER\")\n     * @ORM\\JoinColumn(name=\"fk_user_id\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\User\n     */\n    protected $userId;\n\n    /**\n     * @ORM\\Column(name=\"text\")\n     * @var int\n     */\n    protected $message;\n\n    /**\n     * @ORM\\Column(name=\"user_ip\")\n     * @var string\n     */\n    protected $userIp;\n\n    /**\n     * Get created\n     * @return \\DateTime\n     */\n    public function getCreated()\n    {\n        return $this->created;\n    }\n\n    /**\n     * Get userId\n     *\n     * @return Newscoop\\Entity\\User\n     */\n    public function getUser()\n    {\n        return $this->userId;\n    }\n\n    /**\n     * Get eventId\n     *\n     * @return Newscoop\\Entity\\Event\n     */\n    public function getEvent()\n    {\n        return $this->eventId;\n    }\n\n    /**\n     * Get message\n     *\n     * @return string\n     */\n    public function getMessage()\n    {\n        return $this->message;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Notification.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * Notification entity\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\NotificationRepository\")\n */\nclass Notification\n{\n\n    /**\n     * Comment structure\n     */\n    const COMMENT_NAME      = 0;\n    const COMMENT_EMAIL     = 1;\n    const COMMENT_IP        = 2;\n    const COMMENT_SUBJECT   = 3;\n    const COMMENT_MESSAGE   = 4;\n\n    /**\n     * Constants for status\n     */\n    const STATUS_PENDING    = 0;\n    const STATUS_WATING     = 1;\n    const STATUS_PROCESSED  = 2;\n    const STATUS_DELETED    = 3;\n\n    /**\n     * @var string to code mapper for status\n     */\n    static $status_enum = array(\n        self::STATUS_PROCESSED,\n        self::STATUS_PENDING,\n        self::STATUS_WATING,\n        self::STATUS_DELETED,\n    );\n\n    /**\n     * Constants for status\n     */\n    const TYPE_COMMENT      = 0;\n\n    /**\n     * @var string to code mapper for status\n     */\n    static $type_enum = array(\n        self::TYPE_COMMENT,\n    );\n\n    /**\n     * @ORM\\Id @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(name=\"content\")\n     * @var string\n     */\n    protected $content;\n\n    /**\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $type;\n    /**\n     * @ORM\\Column(type=\"integer\")\n     * @var string\n     */\n    protected $status;\n\n    /**\n     * Get id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Set the content of the notification\n     *\n     * @param string $p_content\n     * @return Newscoop\\Entity\\Notification\n     */\n    public function setContent($p_content)\n    {\n        $this->content = $p_content;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get the content of the notification\n     *\n     * @return string\n     */\n    public function getContent()\n    {\n        return $this->content;\n    }\n\n    /**\n     * Set status\n     *\n     * @param int $p_status\n     * @return Newscoop\\Entity\\Notification\n     */\n    public function setStatus($p_status)\n    {\n        $this->status = $p_status;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get status\n     *\n     * @return int\n     */\n    public function getStatus()\n    {\n        return $this->status;\n    }\n\n    /**\n     * Set Type of the notification\n     * for now only comment type\n     *\n     * @param int $p_type\n     * @return Newscoop\\Entity\\Notification\n     */\n    public function setType($p_type)\n    {\n        $this->type = $p_type;\n        // return this for chaining mechanism\n        return $this;\n    }\n\n    /**\n     * Get Type of the notification\n     * for now only comment type\n     *\n     * @return int\n     */\n    public function getType()\n    {\n        return $this->type;\n    }\n\n}\n\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Output/OutputSettingsIssue.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity\\Output;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Newscoop\\Entity\\Issue;\nuse Newscoop\\Entity\\OutputSettings;\nuse Newscoop\\Utils\\Validation;\nuse Newscoop\\Entity\\Entity;\nuse Newscoop\\Entity\\Theme;\nuse Newscoop\\Entity\\Resource;\n\n/**\n * Provides the settings for an output for an issue.\n *\n * @ORM\\Entity\n * @ORM\\Table(name=\"output_issue\", uniqueConstraints={@ORM\\UniqueConstraint(name=\"publication_themes_idx\", columns={\"fk_output_id\", \"fk_issue_id\"})})\n */\nclass OutputSettingsIssue extends OutputSettings\n{\n    /**\n\t * Provides the class name as a constant.\n\t */\n\tconst NAME_1 = __CLASS__;\n\n\t/**\n\t * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Issue\", inversedBy=\"outputSettingsIssues\")\n\t * @ORM\\JoinColumn(name=\"fk_issue_id\", referencedColumnName=\"id\")\n\t * @var Newscoop\\Entity\\Issue\n\t */\n\tprotected $issue;\n\n\t/**\n\t * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Resource\")\n\t * @ORM\\JoinColumn(name=\"fk_theme_path_id\", referencedColumnName=\"id\")\n\t * @var Newscoop\\Entity\\Resource\n\t */\n\tprotected $themePath;\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the issue that is the owner of this settings.\n\t *\n\t * @return Newscoop\\Entity\\Issue\n\t *\t\tThe the issue that is the owner of this settings.\n\t */\n\tpublic function getIssue()\n\t{\n\t\treturn $this->issue;\n\t}\n\n\t/**\n\t * Set the issue that is the owner of this settings.\n\t *\n\t * @param Newscoop\\Entity\\Issue $issue\n\t *\t\tThe issue that is the owner of this settings, must not be null or empty.\n\t *\n\t * @return Newscoop\\Entity\\OutputSettingsIssue\n\t *\t\tThis object for chaining purposes.\n\t */\n\tpublic function setIssue(Issue $issue)\n\t{\n\t\tValidation::notEmpty($issue, 'issue');\n\t\t$this->issue = $issue;\n\t\treturn $this;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the path of the theme associated.\n\t *\n\t * @return Newscoop\\Entity\\Resource\n\t *\t\tThe path of the theme.\n\t */\n\tpublic function getThemePath()\n\t{\n\t\treturn $this->themePath;\n\t}\n\n\t/**\n\t * Set the path of the theme associated.\n\t *\n\t * @param Newscoop\\Entity\\Resource $themePath\n\t *\t\tThe path of the theme, must not be null or empty.\n\t *\n\t * @return Newscoop\\Entity\\PublicationTheme\n\t *\t\tThis object for chaining purposes.\n\t */\n\tpublic function setThemePath(Resource $themePath)\n\t{\n\t\tValidation::notEmpty($themePath, 'themePath');\n\t\t$this->themePath = $themePath;\n\t\treturn $this;\n\t}\n\t\n\t/* --------------------------------------------------------------- */\n\t\n\t/**\n\t * Copies the cvcontent from this object to the provided object.\n\t */\n\tfunction copyTo($outputSetting)\n\t{\n\t\tparent::copyTo($outputSetting);\n\t\t$outputSetting->setIssue($this->getIssue());\n\t\t$outputSetting->setThemePath($this->getThemePath());\n\t}\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Output/OutputSettingsPublication.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Mischa Gorinskat <mischa.gorinskat@sourcefabric.org>\n * @copyright 2015 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity\\Output;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Newscoop\\Entity\\AbstractEntity;\n\n/**\n * Provides the settings for the output for a publication.\n *\n * @ORM\\Entity\n * @ORM\\Table(name=\"output_publication\", uniqueConstraints={@ORM\\UniqueConstraint(name=\"publication_language\", columns={\"fk_publication_id\", \"fk_langyage_id\"})})\n */\nclass OutputSettingsPublication extends AbstractEntity\n{\n    /**\n     * Provides the class name as a constant.\n     */\n    const NAME_1 = __CLASS__;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Output\")\n     * @ORM\\JoinColumn(name=\"fk_output_id\", referencedColumnName=\"id\", nullable=FALSE)\n     * @var Newscoop\\Entity\\Output\n     */\n    protected $output;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Publication\", inversedBy=\"outputSettingsPublication\")\n     * @ORM\\JoinColumn(name=\"fk_publication_id\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Publication\n     */\n    protected $publication;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Language\")\n     * @ORM\\JoinColumn(name=\"fk_language_id\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Language\n     */\n    protected $language;\n\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Resource\")\n     * @ORM\\JoinColumn(name=\"fk_theme_path_id\", referencedColumnName=\"id\")\n     * @var Newscoop\\Entity\\Resource\n     */\n    protected $themePath;\n\n    /**\n     * Getter for output\n     *\n     * @return mixed\n     */\n    public function getOutput()\n    {\n        return $this->output;\n    }\n\n    /**\n     * Setter for output\n     *\n     * @param mixed $output Value to set\n     *\n     * @return self\n     */\n    public function setOutput($output)\n    {\n        $this->output = $output;\n\n        return $this;\n    }\n\n    /**\n     * Getter for publication\n     *\n     * @return \\Newscoop\\Entity\\Publication\n     */\n    public function getPublication()\n    {\n        return $this->publication;\n    }\n\n    /**\n     * Setter for publication\n     *\n     * @param \\Newscoop\\Entity\\Publication $publication Value to set\n     *\n     * @return self\n     */\n    public function setPublication($publication)\n    {\n        $this->publication = $publication;\n\n        return $this;\n    }\n\n    /**\n     * Getter for language\n     *\n     * @return \\Newscoop\\Entity\\Language\n     */\n    public function getLanguage()\n    {\n        return $this->language;\n    }\n\n    /**\n     * Setter for language\n     *\n     * @param \\Newscoop\\Entity\\Language $language Value to set\n     *\n     * @return self\n     */\n    public function setLanguage($language)\n    {\n        $this->language = $language;\n\n        return $this;\n    }\n\n    /**\n     * Provides the path of the theme associated.\n     *\n     * @return Newscoop\\Entity\\Resource|null\n     *      The path of the theme.\n     */\n    public function getThemePath()\n    {\n        return $this->themePath;\n    }\n\n    /**\n     * Set the path of the theme associated.\n     *\n     * @param Newscoop\\Entity\\Resource|null $themePath\n     *      The path of the theme, can be empty.\n     *\n     * @return Newscoop\\Entity\\PublicationTheme\n     *      This object for chaining purposes.\n     */\n    public function setThemePath($themePath)\n    {\n        $this->themePath = $themePath;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Output/OutputSettingsSection.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity\\Output;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Newscoop\\Entity\\Section;\nuse Newscoop\\Entity\\OutputSettings;\nuse Newscoop\\Utils\\Validation;\nuse Newscoop\\Entity\\Entity;\nuse Newscoop\\Entity\\Theme;\n\n/**\n * Provides the settings for an output for a section.\n *\n * @ORM\\Entity\n * @ORM\\Table(name=\"output_section\")\n */\nclass OutputSettingsSection extends OutputSettings\n{\n    /**\n     * Provides the class name as a constant.\n     */\n    const NAME_1 = __CLASS__;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Section\")\n     * @ORM\\JoinColumn(name=\"fk_section_id\", referencedColumnName=\"id\")\n     * @var Newscoop\\Entity\\Section\n     */\n    protected $section;\n\n    /* --------------------------------------------------------------- */\n\n    /**\n     * Provides the section that is the owner of this settings.\n     *\n     * @return Newscoop\\Entity\\Section\n     * \t\tThe the section that is the owner of this settings.\n     */\n    public function getSection()\n    {\n        return $this->section;\n    }\n\n    /**\n     * Set the section that is the owner of this settings.\n     *\n     * @param Newscoop\\Entity\\Section $section\n     * \t\tThe section that is the owner of this settings, must not be null or empty.\n     *\n     * @return Newscoop\\Entity\\OutputSettingsSection\n     * \t\tThis object for chaining purposes.\n     */\n    public function setSection(Section $section)\n    {\n        Validation::notEmpty($section, 'section');\n        $this->section = $section;\n        return $this;\n    }\n\n\t/* --------------------------------------------------------------- */\n\t\n\t/**\n\t * Copies the cvcontent from this object to the provided object.\n\t */\n\tfunction copyTo($outputSetting)\n\t{\n\t\tparent::copyTo($outputSetting);\n\t\t$outputSetting->setSection($this->getSection());\n\t}\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Output/OutputSettingsTheme.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity\\Output;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Newscoop\\Entity\\Resource;\nuse Newscoop\\Entity\\Publication;\nuse Newscoop\\Entity\\PublicationTheme;\nuse Newscoop\\Entity\\OutputSettings;\nuse Newscoop\\Utils\\Validation;\nuse Newscoop\\Entity\\Entity;\nuse Newscoop\\Entity\\Theme;\n\n/**\n * Provides the settings for an output for a theme.\n *\n * @ORM\\Entity\n * @ORM\\Table(name=\"output_theme\", uniqueConstraints={@ORM\\UniqueConstraint(name=\"publication_themes_idx\", columns={\"fk_output_id\", \"fk_publication_id\", \"fk_theme_path_id\"})})\n */\nclass OutputSettingsTheme extends OutputSettings\n{\n\n\t/**\n\t * Provides the class name as a constant.\n\t */\n\tconst NAME = __CLASS__;\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Publication\")\n\t * @ORM\\JoinColumn(name=\"fk_publication_id\", referencedColumnName=\"Id\")\n\t *  @var Newscoop\\Entity\\Publication\n\t */\n\tprotected $publication;\n\n\t/**\n\t * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Resource\")\n\t * @ORM\\JoinColumn(name=\"fk_theme_path_id\", referencedColumnName=\"id\")\n\t * @var Newscoop\\Entity\\Resource\n\t */\n\tprotected $themePath;\n\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the publication that owns the theme.\n\t *\n\t * @return Newscoop\\Entity\\Publication\n\t *\t\tThe publication that owns the theme.\n\t */\n\tpublic function getPublication()\n\t{\n\t\treturn $this->publication;\n\t}\n\n\t/**\n\t * Set the publication that owns the theme.\n\t *\n\t * @param Newscoop\\Entity\\Publication $publication\n\t *\t\tThe publication that owns the theme.\n\t *\n\t * @return Newscoop\\Entity\\PublicationTheme\n\t *\t\tThis object for chaining purposes.\n\t */\n\tpublic function setPublication(Publication $publication)\n\t{\n\t\tValidation::notEmpty($publication, 'publication');\n\t\t$this->publication = $publication;\n\t\treturn $this;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the path of the theme associated.\n\t *\n\t * @return Newscoop\\Entity\\Resource\n\t *\t\tThe path of the theme.\n\t */\n\tpublic function getThemePath()\n\t{\n\t\treturn $this->themePath;\n\t}\n\n\t/**\n\t * Set the path of the theme associated.\n\t *\n\t * @param Newscoop\\Entity\\Resource $themePath\n\t *\t\tThe path of the theme, must not be null or empty.\n\t *\n\t * @return Newscoop\\Entity\\PublicationTheme\n\t *\t\tThis object for chaining purposes.\n\t */\n\tpublic function setThemePath(Resource $themePath)\n\t{\n\t\tValidation::notEmpty($themePath, 'themePath');\n\t\t$this->themePath = $themePath;\n\t\treturn $this;\n\t}\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Output.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Newscoop\\Utils\\Validation;\nuse Newscoop\\Entity\\Entity;\nuse Newscoop\\Entity\\Theme;\n\n/**\n * Provides the output based on the client agent.\n * \n * @ORM\\Entity\n * @ORM\\Table(name=\"output\")\n */\nclass Output extends AbstractEntity\n{\n\n\t/**\n\t * Provides the class name as a constant. \n\t */\n\tconst NAME = __CLASS__;\n\t\n\t/* --------------------------------------------------------------- */\n\t\n\t/**\n\t * @ORM\\Column(name=\"name\", unique=TRUE, nullable=FALSE)\n\t * @var string\n\t */\n\tprotected $name;\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the name of the theme resource, must be a user frendly name used for displaying it on the UI.\n\t *\n\t * @return string\n\t *\t\tThe name of the theme resource.\n\t */\n\tpublic function getName()\n\t{\n\t\treturn $this->name;\n\t}\n\n\t/**\n\t * Set the name of the theme resource, must be a user frendly name used for displaying it on the UI.\n\t *\n\t * @param string $name\n\t *\t\tThe name of the theme resource, must not be null or empty.\n\t *\n\t * @return Newscoop\\Entity\\Theme\\Resource\n\t *\t\tThis object for chaining purposes.\n\t */\n\tpublic function setName($name)\n\t{\n\t\tValidation::notEmpty($name, 'name');\n\t\t$this->name = $name;\n\t\treturn $this;\n\t}\n\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/OutputSettings.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Newscoop\\Utils\\Validation;\nuse Newscoop\\Entity\\Entity;\nuse Newscoop\\Entity\\Theme;\n\n/**\n * Provides the settings for an output in relation with the theme resources.\n *\n * @ORM\\MappedSuperclass\n */\nclass OutputSettings extends AbstractEntity\n{\n\n    /**\n\t * Provides the class name as a constant.\n\t */\n\tconst NAME = __CLASS__;\n\n\t/**\n\t * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Output\")\n\t * @ORM\\JoinColumn(name=\"fk_output_id\", referencedColumnName=\"id\", nullable=FALSE)\n\t * @var Newscoop\\Entity\\Output\n\t */\n\tprotected $output;\n\n\t/**\n\t * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Resource\")\n\t * @ORM\\JoinColumn(name=\"fk_front_page_id\", referencedColumnName=\"id\")\n\t * @var Newscoop\\Entity\\Resource\n\t */\n\tprotected $frontPage;\n\n\t/**\n\t * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Resource\")\n\t * @ORM\\JoinColumn(name=\"fk_section_page_id\", referencedColumnName=\"id\", nullable=TRUE)\n\t * @var Newscoop\\Entity\\Resource\n\t */\n\tprotected $sectionPage;\n\n\t/**\n\t * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Resource\")\n\t * @ORM\\JoinColumn(name=\"fk_article_page_id\", referencedColumnName=\"id\", nullable=TRUE)\n\t * @var Newscoop\\Entity\\Resource\n\t */\n\tprotected $articlePage;\n\n\t/**\n\t * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Resource\")\n\t * @ORM\\JoinColumn(name=\"fk_error_page_id\", referencedColumnName=\"id\", nullable=TRUE)\n\t * @var Newscoop\\Entity\\Resource\n\t */\n\tprotected $errorPage;\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the output that is the owner of this settings.\n\t *\n\t * @return Newscoop\\Entity\\Output\n\t *\t\tThe output that is the owner of this settings.\n\t */\n\tfunction getOutput()\n\t{\n\t\treturn $this->output;\n\t}\n\n\t/**\n\t * Set the output that is the owner of this settings.\n\t *\n\t * @param Newscoop\\Entity\\Output $output\n\t *\t\tThe output that is the owner of this settings, must not be null or empty.\n\t *\n\t * @return Newscoop\\Entity\\OutputSetting\n\t *\t\tThis object for chaining purposes.\n\t */\n\tfunction setOutput(Output $output)\n\t{\n\t\tValidation::notEmpty($output, 'output');\n\t\t$this->output = $output;\n\t\treturn $this;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the front page template resource.\n\t *\n\t * @return Newscoop\\Entity\\Resource\n\t *\t\tThe front page template resource.\n\t */\n\tfunction getFrontPage()\n\t{\n\t\treturn $this->frontPage;\n\t}\n\n\t/**\n\t * Set the front page template resource.\n\t *\n\t * @param Newscoop\\Entity\\Resource $frontPage\n\t *\t\tThe front page template resource, must not be null or empty.\n\t *\n\t * @return Newscoop\\Entity\\OutputSetting\n\t *\t\tThis object for chaining purposes.\n\t */\n\tfunction setFrontPage(Resource $frontPage = null)\n\t{\n\t\t$this->frontPage = $frontPage;\n\t\treturn $this;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the section page template resource.\n\t *\n\t * @return Newscoop\\Entity\\Resource\n\t *\t\tThe section page template resource.\n\t */\n\tfunction getSectionPage()\n\t{\n\t\treturn $this->sectionPage;\n\t}\n\n\t/**\n\t * Set the section page template resource.\n\t *\n\t * @param Newscoop\\Entity\\Resource $sectionPage\n\t *\t\tThe section page template resource, must not be null or empty.\n\t *\n\t * @return Newscoop\\Entity\\OutputSetting\n\t *\t\tThis object for chaining purposes.\n\t */\n\tfunction setSectionPage(Resource $sectionPage = null)\n\t{\n\t\t$this->sectionPage = $sectionPage;\n\t\treturn $this;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the article page template resource.\n\t *\n\t * @return Newscoop\\Entity\\Resource\n\t *\t\tThe article page template resource.\n\t */\n\tfunction getArticlePage()\n\t{\n\t\treturn $this->articlePage;\n\t}\n\n\t/**\n\t * Set the article page template resource.\n\t *\n\t * @param Newscoop\\Entity\\Resource $articlePage\n\t *\t\tThe article page template resource, must not be null or empty.\n\t *\n\t * @return Newscoop\\Entity\\OutputSetting\n\t *\t\tThis object for chaining purposes.\n\t */\n\tfunction setArticlePage(Resource $articlePage = null)\n\t{\n\t\t$this->articlePage = $articlePage;\n\t\treturn $this;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the article page template resource.\n\t *\n\t * @return Newscoop\\Entity\\Resource\n\t *\t\tThe article page template resource.\n\t */\n\tfunction getErrorPage()\n\t{\n\t\treturn $this->errorPage;\n\t}\n\n\t/**\n\t * Set the error page template resource.\n\t *\n\t * @param Newscoop\\Entity\\Resource $errorPage\n\t *\t\tThe error page template resource, must not be null or empty.\n\t *\n\t * @return Newscoop\\Entity\\OutputSetting\n\t *\t\tThis object for chaining purposes.\n\t */\n\tfunction setErrorPage(Resource $errorPage = null)\n\t{\n\t\t$this->errorPage = $errorPage;\n\t\treturn $this;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\t\n\t/**\n\t * Copies the cvcontent from this object to the provided object.\n\t */\n\tfunction copyTo($outputSetting)\n\t{\n\t\t$outputSetting->setOutput($this->getOutput());\n\t\t$outputSetting->setFrontPage($this->getFrontPage());\n\t\t$outputSetting->setSectionPage($this->getSectionPage());\n\t\t$outputSetting->setArticlePage($this->getArticlePage());\n\t\t$outputSetting->setErrorPage($this->getErrorPage());\n\t}\n\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Picture.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * @ORM\\Entity\n * @ORM\\Table(name=\"Images\")\n */\nclass Picture\n{\n    const STATUS_APPROVED = 'approved';\n\n    const SOURCE_INGEST = 'newsfeed';\n\n    /**\n     * @ORM\\Id @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\", name=\"Id\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(name=\"Photographer\")\n     * @var string\n     */\n    protected $photographer;\n\n    /**\n     * @ORM\\Column(name=\"Description\")\n     * @var string\n     */\n    protected $headline;\n\n    /**\n     * @ORM\\Column(name=\"Caption\", nullable=True)\n     * @var string\n     */\n    protected $caption;\n\n    /**\n     * @ORM\\Column(name=\"Source\")\n     * @var string\n     */\n    protected $source;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"Date\", nullable=True)\n     * @var DateTime\n     */\n    protected $date;\n\n    /**\n     * @ORM\\Column(name=\"Place\", nullable=True)\n     * @var string\n     */\n    protected $place;\n\n    /**\n     * @ORM\\Column(name=\"ContentType\", nullable=True)\n     * @var string\n     */\n    protected $contentType;\n\n    /**\n     * @ORM\\Column(name=\"Location\", nullable=True)\n     * @var string\n     */\n    protected $location;\n\n    /**\n     * @ORM\\Column(name=\"URL\", nullable=True)\n     * @var string\n     */\n    protected $url;\n\n    /**\n     * @ORM\\Column(name=\"ThumbnailFileName\", nullable=True)\n     * @var string\n     */\n    protected $thumbnailFileName;\n\n    /**\n     * @ORM\\Column(name=\"ImageFileName\", nullable=True)\n     * @var string\n     */\n    protected $imageFileName;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\User\")\n     * @ORM\\JoinColumn(name=\"UploadedByUser\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\User\n     */\n    protected $uploadedBy;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"TimeCreated\", nullable=True)\n     * @var DateTime\n     */\n    protected $created;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"LastModified\", nullable=True)\n     * @var DateTime\n     */\n    protected $updated;\n\n    /**\n     * @ORM\\Column(name=\"Status\", nullable=True)\n     * @var string\n     */\n    protected $status;\n\n    /**\n     * Get headline\n     *\n     * @return string\n     */\n    public function getHeadline()\n    {\n        return $this->headline;\n    }\n\n    /**\n     * Get caption\n     *\n     * @return string\n     */\n    public function getCaption()\n    {\n        return $this->caption;\n    }\n\n    /**\n     * Get content type\n     *\n     * @return string\n     */\n    public function getContentType()\n    {\n        return $this->contentType;\n    }\n\n    /**\n     * Get photographer\n     *\n     * @return string\n     */\n    public function getPhotographer()\n    {\n        return $this->photographer;\n    }\n\n    /**\n     * Get source\n     *\n     * @return string\n     */\n    public function getSource()\n    {\n        return $this->source;\n    }\n\n    /**\n     * Test if is approved\n     *\n     * @return bool\n     */\n    public function isApproved()\n    {\n        return $this->status === self::STATUS_APPROVED;\n    }\n\n    /**\n     * Get date\n     *\n     * @return DateTime\n     */\n    public function getDate()\n    {\n        return $this->date;\n    }\n\n    /**\n     * Get place\n     *\n     * @return string\n     */\n    public function getPlace()\n    {\n        return $this->place;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Playlist.php",
    "content": "<?php\n\n/**\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\n\n/**\n * Playlist entity.\n *\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\PlaylistRepository\")\n * @ORM\\Table(name=\"playlist\")\n */\nclass Playlist extends AbstractEntity\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\", name=\"id_playlist\")\n     *\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(length=256, name=\"name\")\n     *\n     * @var string\n     */\n    protected $name;\n\n    /**\n     * @ORM\\Column(length=1024, name=\"notes\", nullable=true)\n     *\n     * @var string\n     */\n    protected $notes;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"max_items\", nullable=true)\n     *\n     * @var int\n     */\n    protected $maxItems;\n\n    /**\n     * @ORM\\Column(type=\"utcdatetime\", name=\"modification_time\", nullable=true)\n     *\n     * @var utcdatetime\n     */\n    protected $articlesModificationTime;\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"Newscoop\\Entity\\PlaylistArticle\", mappedBy=\"playlist\", cascade={\"all\"})\n     */\n    protected $articles;\n\n    /**\n     * Link to topic articles resource.\n     *\n     * @var string\n     */\n    protected $articlesLink;\n\n    /**\n     * @ORM\\Column(type=\"string\", name=\"themes\", nullable=true)\n     */\n    protected $themes;\n\n    /**\n     * Provides the themes attached to playlist.\n     *\n     * @return string\n     */\n    public function getThemes()\n    {\n        if (!$this->themes) {\n            return array();\n        }\n\n        return json_decode($this->themes, true);\n    }\n\n    /**\n     * Set the themes attached to playlist.\n     *\n     * @param string $themes\n     *\n     * @return self\n     */\n    public function setThemes(array $themes)\n    {\n        $this->themes = json_encode($themes);\n\n        return $this;\n    }\n\n    /**\n     * Set link to topic articles resource.\n     *\n     * @param string $articlesLink Link to topic articles resource\n     */\n    public function setArticlesLink($articlesLink)\n    {\n        $this->articlesLink = $articlesLink;\n\n        return $this;\n    }\n\n    /**\n     * Get link to topic articles resource.\n     *\n     * @return string Link to topic articles resource\n     */\n    public function getArticlesLink()\n    {\n        return $this->articlesLink;\n    }\n\n    /**\n     * Returns the name of the playlist.\n     */\n    public function getName()\n    {\n        return $this->name;\n    }\n\n    /**\n     * Returns the name of the playlist.\n     *\n     * @var string\n     */\n    public function setName($name)\n    {\n        $this->name = $name;\n\n        return $this;\n    }\n\n    /**\n     * Returns the name of the playlist.\n     *\n     * @var string\n     */\n    public function setTitle($name)\n    {\n        $this->name = $name;\n\n        return $this;\n    }\n\n    /**\n     * Returns the name of the playlist.\n     */\n    public function getTitle()\n    {\n        return $this->name;\n    }\n\n    /**\n     * Gets the value of notes.\n     *\n     * @return string\n     */\n    public function getNotes()\n    {\n        return $this->notes;\n    }\n\n    /**\n     * Sets the value of notes.\n     *\n     * @param string $notes the notes\n     *\n     * @return self\n     */\n    public function setNotes($notes)\n    {\n        $this->notes = $notes;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of maxItems.\n     *\n     * @return int\n     */\n    public function getMaxItems()\n    {\n        return $this->maxItems;\n    }\n\n    /**\n     * Sets the value of maxItems.\n     *\n     * @param int $maxItems the max items\n     *\n     * @return self\n     */\n    public function setMaxItems($maxItems)\n    {\n        $this->maxItems = $maxItems;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of articlesModificationTime.\n     *\n     * @return int\n     */\n    public function getArticlesModificationTime()\n    {\n        return $this->articlesModificationTime;\n    }\n\n    /**\n     * Sets the value of articlesModificationTime.\n     *\n     * @param int $articlesModificationTime the articles modification time\n     *\n     * @return self\n     */\n    public function setArticlesModificationTime(\\DateTime $articlesModificationTime)\n    {\n        $this->articlesModificationTime = $articlesModificationTime;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/PlaylistArticle.php",
    "content": "<?php\n\n/**\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\nuse Gedmo\\Mapping\\Annotation as Gedmo;\n\n/**\n * Playlist entity.\n *\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\PlaylistArticleRepository\")\n * @ORM\\Table(name=\"playlist_article\")\n */\nclass PlaylistArticle extends AbstractEntity\n{\n    /**\n     * @ORM\\Id @ORM\\Column(name=\"id_playlist_article\", type=\"integer\")\n     * @ORM\\GeneratedValue\n     *\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"id_playlist\")\n     *\n     * @var int\n     */\n    protected $idPlaylist;\n\n    /**\n     * @Gedmo\\SortableGroup\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Playlist\")\n     * @ORM\\JoinColumn(name=\"id_playlist\", referencedColumnName=\"id_playlist\")\n     *\n     * @var Newscoop\\Entity\\Playlist\n     */\n    protected $playlist;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Article\")\n     * @ORM\\JoinColumns({\n     *     @ORM\\JoinColumn(name=\"article_no\", referencedColumnName=\"Number\"),\n     *     @ORM\\JoinColumn(name=\"article_language\", referencedColumnName=\"IdLanguage\")\n     * })\n     *\n     * @var Newscoop\\Entity\\Article\n     */\n    protected $article;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"article_no\")\n     *\n     * @var int\n     */\n    protected $articleNumber;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"article_language\")\n     *\n     * @var int\n     */\n    protected $articleLanguage;\n\n    /**\n     * @Gedmo\\SortablePosition\n     * @ORM\\Column(type=\"integer\", name=\"order_number\")\n     *\n     * @var int\n     */\n    protected $order;\n\n    public function __construct($playlist, $article)\n    {\n        $this->setPlaylist($playlist);\n        $this->setArticle($article);\n        $this->setOrder(1);\n    }\n\n    /**\n     * set playlist.\n     *\n     * @return Newscoop\\Entity\\PlaylistArticle\n     */\n    public function setPlaylist(Playlist $playlist)\n    {\n        $this->playlist = $playlist;\n\n        return $this;\n    }\n\n    /**\n     * get playlist.\n     *\n     * @return Newscoop\\Entity\\Playlist\n     */\n    public function getPlaylist()\n    {\n        return $this->playlist;\n    }\n\n    /**\n     * Gets the value of order.\n     *\n     * @return int\n     */\n    public function getOrder()\n    {\n        return $this->order;\n    }\n\n    /**\n     * Sets the value of order.\n     *\n     * @param int $order the order\n     *\n     * @return self\n     */\n    public function setOrder($order)\n    {\n        $this->order = $order;\n\n        return $this;\n    }\n\n    public function __toString()\n    {\n        return 'playlist_article';\n    }\n\n    /**\n     * Gets the article.\n     *\n     * @return Newscoop\\Entity\\Article\n     */\n    public function getArticle()\n    {\n        return $this->article;\n    }\n\n    /**\n     * Sets the article.\n     *\n     * @param Newscoop\\Entity\\Article $article the article\n     *\n     * @return self\n     */\n    public function setArticle(\\Newscoop\\Entity\\Article $article)\n    {\n        $this->article = $article;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of articleNumber.\n     *\n     * @return int\n     */\n    public function getArticleNumber()\n    {\n        return $this->articleNumber;\n    }\n\n    /**\n     * Sets the value of articleNumber.\n     *\n     * @param int $articleNumber the article number\n     *\n     * @return self\n     */\n    public function setArticleNumber($articleNumber)\n    {\n        $this->articleNumber = $articleNumber;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of articleLanguage.\n     *\n     * @return int\n     */\n    public function getArticleLanguage()\n    {\n        return $this->articleLanguage;\n    }\n\n    /**\n     * Sets the value of articleLanguage.\n     *\n     * @param int $articleLanguage the article language\n     *\n     * @return self\n     */\n    public function setArticleLanguage($articleLanguage)\n    {\n        $this->articleLanguage = $articleLanguage;\n\n        return $this;\n    }\n\n    /**\n     * Get id\n     *\n     * @return integer \n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Set idPlaylist\n     *\n     * @param integer $idPlaylist\n     * @return PlaylistArticle\n     */\n    public function setIdPlaylist($idPlaylist)\n    {\n        $this->idPlaylist = $idPlaylist;\n\n        return $this;\n    }\n\n    /**\n     * Get idPlaylist\n     *\n     * @return integer \n     */\n    public function getIdPlaylist()\n    {\n        return $this->idPlaylist;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Plugin.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * Plugin entity\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\PluginRepository\")\n * @ORM\\Table(name=\"Plugins\")\n */\nclass Plugin\n{\n    /**\n     * @ORM\\Id \n     * @ORM\\GeneratedValue\n     * @ORM\\Column(name=\"Id\", type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(length=256, name=\"Name\")\n     * @var string\n     */\n    protected $name;\n\n    /**\n     * @ORM\\Column(type=\"text\", name=\"Details\")\n     * @var string\n     */\n    protected $details;\n\n    /**\n     * @ORM\\Column(name=\"type\", type=\"integer\")\n     * @var int\n     */\n    protected $type;\n\n    /**\n     * @var string to code mapper for type\n     */\n    static $type_enum = array('core', 'system', 'official', 'thirdparty');\n\n    /**\n     * @ORM\\Column(name=\"installed_with\", type=\"integer\")\n     * @var int\n     */\n    protected $installedWith;\n\n    /**\n     * @var string to code mapper for installedWith\n     */\n    static $installedWith_enum = array('packagist', 'zip', 'private_reposiotry');\n\n    /**\n     * @ORM\\Column(type=\"text\", name=\"Description\")\n     * @var string\n     */\n    protected $description;\n\n    /**\n     * @ORM\\Column(length=256, name=\"Version\")\n     * @var string\n     */\n    protected $version;\n\n    /**\n     * @ORM\\Column(length=256, name=\"author\")\n     * @var string\n     */\n    protected $author;\n\n    /**\n     * @ORM\\Column(length=256, name=\"license\")\n     * @var string\n     */\n    protected $license;\n\n    /**\n     * @ORM\\Column(type=\"boolean\", length=256, name=\"Enabled\")\n     * @var boolean\n     */\n    protected $enabled;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"installed_at\")\n     * @var string\n     */\n    protected $installedAt;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"updated_at\", nullable=true)\n     * @var string\n     */\n    protected $updatedAt;\n\n    public function __construct() {\n        $this->setInstalledAt(new \\DateTime());\n        $this->enabled = false;\n    }\n\n    /**\n     * Get id\n     * @return integer\n     */\n    public function getId() {\n        return $this->id;\n    }\n\n    /**\n     * Get name\n     * @return string\n     */\n    public function getName() {\n        return $this->name;\n    }\n\n    /**\n     * Set name\n     * @param string $name\n     */\n    public function setName($name) {\n        $this->name = $name;\n\n        return $this;\n    }\n\n    /**\n     * Get version\n     * @return string\n     */\n    public function getVersion() {\n        return $this->version;\n    }\n\n    /**\n     * Set version\n     * @param string $version\n     */\n    public function setVersion($version) {\n        $this->version = $version;\n\n        return $this;\n    }\n\n    /**\n     * Get details\n     * @return string\n     */\n    public function getDetails() {\n        return $this->details;\n    }\n\n    /**\n     * Set details\n     * @param string $details\n     */\n    public function setDetails($details) {\n        $this->details = $details;\n\n        return $this;\n    }\n\n    /**\n     * Get description\n     * @return string\n     */\n    public function getDescription() {\n        return $this->description;\n    }\n\n    /**\n     * Set description\n     * @param string $description\n     */\n    public function setDescription($description) {\n        $this->description = $description;\n\n        return $this;\n    }\n\n    /**\n     * Get author\n     * @return string\n     */\n    public function getAuthor() {\n        return $this->author;\n    }\n\n    /**\n     * Set author\n     * @param string $author\n     */\n    public function setAuthor($author) {\n        $this->author = $author;\n\n        return $this;\n    }\n\n    /**\n     * Get license\n     * @return string\n     */\n    public function getLicense() {\n        return $this->license;\n    }\n\n    /**\n     * Set license\n     * @param string $license\n     */\n    public function setLicense($license) {\n        $this->license = $license;\n\n        return $this;\n    }\n\n    /**\n     * Get enabled\n     * @return boolean\n     */\n    public function getEnabled() {\n        return $this->enabled;\n    }\n\n    /**\n     * Set enabled\n     * @param boolean $enabled\n     */\n    public function setEnabled($enabled) {\n        $this->enabled = $enabled;\n\n        return $this;\n    }\n\n    /**\n     * Get type\n     * @return int\n     */\n    public function getType() {\n        return $this->type;\n    }\n\n    /**\n     * Set type\n     * @param string $type\n     */\n    public function setType($type) {\n        if (is_string($type)) {\n            $type_enum = array_flip(self::$type_enum);\n            $this->type = $type_enum[$type];\n        } else {\n            $this->type = $type;\n        }\n\n        return $this;\n    }\n\n    /**\n     * Get installedWith\n     * @return int\n     */\n    public function getInstalledWith() {\n        return $this->installedWith;\n    }\n\n    /**\n     * Set installedWith\n     * @param string $installedWith\n     */\n    public function setInstalledWith($installedWith) {\n        if (is_string($installedWith)) {\n            $installedWith_enum = array_flip(self::$installedWith_enum);\n            $this->installedWith = $installedWith_enum[$installedWith];\n        } else {\n            $this->installedWith = $installedWith;\n        }\n\n        return $this;\n    }\n\n    /**\n     * Get install date\n     *\n     * @return DateTime\n     */\n    public function getInstalledAt()\n    {\n        return $this->installedAt;\n    }\n\n    /**\n     * Set install date\n     *\n     * @param DateTime $installedAt\n     */\n    public function setInstalledAt(\\DateTime $installedAt)\n    {\n        $this->installedAt = $installedAt;\n        \n        return $this;\n    }\n\n    /**\n     * Get update date\n     *\n     * @return DateTime\n     */\n    public function getUpdatedAt()\n    {\n        return $this->updatedAt;\n    }\n\n    /**\n     * Set update date\n     *\n     * @param DateTime $updatedAt\n     */\n    public function setUpdatedAt(\\DateTime $updatedAt)\n    {\n        $this->updatedAt = $updatedAt;\n        \n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Publication.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\nuse Doctrine\\Common\\Collections\\ArrayCollection;\n\n/**\n * Publication entity\n *\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\PublicationRepository\")\n * @ORM\\Table(name=\"Publications\", indexes={\n *     @ORM\\Index(name=\"Name\", columns={\"Name\"}),\n *     @ORM\\Index(name=\"Alias\", columns={\"IdDefaultAlias\"}),\n * })\n */\nclass Publication\n{\n    /**\n     * Provides the class name as a constant.\n     */\n    const NAME = __CLASS__;\n\n    /* --------------------------------------------------------------- */\n\n    /**\n     * @ORM\\Id\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(name=\"Id\", type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(name=\"Name\", nullable=false)\n     * @var string\n     */\n    protected $name;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Language\")\n     * @ORM\\JoinColumn(name=\"IdDefaultLanguage\", referencedColumnName=\"Id\", columnDefinition=\"int(10)\")\n     * @var Newscoop\\Entity\\Language\n     */\n    protected $language;\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"Newscoop\\Entity\\Issue\", mappedBy=\"publication\")\n     * @var array\n     */\n    protected $issues;\n\n    /**\n     * @ORM\\Column(name=\"comments_public_enabled\", nullable=True)\n     * @var bool\n     */\n    protected $public_enabled;\n\n    /**\n     * @ORM\\Column(name=\"comments_moderator_to\", nullable=True)\n     * @var string\n     */\n    protected $moderator_to;\n\n    /**\n     * @ORM\\Column(name=\"comments_moderator_from\", nullable=True)\n     * @var string\n     */\n    protected $moderator_from;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"IdDefaultAlias\", nullable=True)\n     * @var int\n     */\n    protected $defaultAliasId;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Aliases\")\n     * @ORM\\JoinColumn(name=\"IdDefaultAlias\", referencedColumnName=\"Id\")\n     */\n    protected $defaultAlias;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"IdURLType\", nullable=True)\n     * @var int\n     */\n    protected $urlTypeId;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"fk_forum_id\", nullable=True)\n     * @var int\n     */\n    protected $forumId;\n\n    /**\n     * @ORM\\Column(type=\"boolean\", name=\"comments_enabled\", nullable=True)\n     * @var bool\n     */\n    protected $commentsEnabled;\n\n    /**\n     * @ORM\\Column(type=\"boolean\", name=\"comments_article_default_enabled\", nullable=True)\n     * @var bool\n     */\n    protected $commentsArticleDefaultEnabled;\n\n    /**\n     * @ORM\\Column(type=\"boolean\", name=\"comments_subscribers_moderated\", nullable=True)\n     * @var bool\n     */\n    protected $commentsSubscribersModerated;\n\n    /**\n     * @ORM\\Column(type=\"boolean\", name=\"comments_public_moderated\", nullable=True)\n     * @var bool\n     */\n    protected $commentsPublicModerated;\n\n    /**\n     * @ORM\\Column(type=\"boolean\", name=\"comments_captcha_enabled\", nullable=True)\n     * @var bool\n     */\n    protected $commentsCaptchaEnabled;\n\n    /**\n     * @ORM\\Column(type=\"boolean\", name=\"comments_spam_blocking_enabled\", nullable=True)\n     * @var bool\n     */\n    protected $commentsSpamBlockingEnabled;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"url_error_tpl_id\", nullable=True)\n     * @var int\n     */\n    protected $urlErrorTemplateId;\n\n    /**\n     * @ORM\\Column(nullable=True)\n     * @var string\n     */\n    protected $seo;\n\n    /**\n     * @ORM\\Column(name=\"meta_title\", nullable=true)\n     * @var string\n     */\n    protected $metaTitle;\n\n    /**\n     * @ORM\\Column(name=\"meta_keywords\", nullable=true)\n     * @var string\n     */\n    protected $metaKeywords;\n\n    /**\n     * @ORM\\Column(name=\"meta_description\", nullable=true)\n     * @var string\n     */\n    protected $metaDescription;\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"Newscoop\\Entity\\Output\\OutputSettingsPublication\", mappedBy=\"publication\")\n     * @var Doctrine\\Common\\Collections\\ArrayCollection\n     */\n    protected $outputSettingsPublication;\n\n    /**\n     */\n    public function __construct()\n    {\n        $this->issues = new ArrayCollection();\n        $this->outputSettingsPublication = new ArrayCollection();\n    }\n\n    /**\n     * Get name\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->name;\n    }\n\n    public function setName($name)\n    {\n        $this->name = $name;\n\n        return $this;\n    }\n\n    /**\n     * Get language\n     *\n     * @return Newscoop\\Entity\\Language\n     */\n    public function getLanguage()\n    {\n        return $this->language;\n    }\n\n    public function setLanguage($language)\n    {\n        $this->language = $language;\n\n        return $this;\n    }\n\n    /**\n     * Add issue\n     *\n     * @param  Newscoop\\Entity\\Issue $issue\n     * @return void\n     */\n    public function addIssue(Issue $issue)\n    {\n        if (!$this->issues->contains($issue)) {\n            $this->issues->add($issue);\n        }\n    }\n\n    /**\n     * Get issues\n     *\n     * @return array\n     */\n    public function getIssues()\n    {\n        return $this->issues;\n    }\n\n    /**\n     * Get languages\n     *\n     * @return array\n     */\n    public function getLanguages()\n    {\n        $languages = array();\n        foreach ($this->issues as $issue) {\n            $languages[$issue->getLanguage()->getId()] = $issue->getLanguage();\n        }\n\n        return array_values($languages);\n    }\n\n    /**\n     * Set default language\n     *\n     * @param  Newscoop\\Entity\\Language $language\n     * @return void\n     */\n    public function setDefaultLanguage(Language $language)\n    {\n        $this->language = $language;\n    }\n\n    /**\n     * Get default language of the publication\n     *\n     * @return Newscoop\\Entity\\Language\n     */\n    public function getDefaultLanguage()\n    {\n        return $this->language;\n    }\n\n    /**\n     * Get default language name of the publication\n     *\n     * @return string\n     */\n    public function getDefaultLanguageName()\n    {\n        return $this->default_language->getName();\n    }\n\n    /*\n     * Get sections\n     *\n     * @return array\n     */\n    public function getSections()\n    {\n        $added = array();\n        $sections = array();\n        foreach ($this->issues as $issue) {\n            foreach ($issue->getSections() as $section) {\n                if (in_array($section->getNumber(), $added)) { // @todo handle within repository\n                    continue;\n                }\n\n                $sections[] = $section;\n                $added[] = $section->getNumber();\n            }\n        }\n\n        return $sections;\n    }\n\n    /**\n     * Set id\n     *\n     * @param  int  $id\n     * @return void\n     */\n    public function setId($id)\n    {\n        $this->id = (int) $id;\n    }\n\n    /**\n     * Get id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Set moderator to email address\n     *\n     * @param  string      $p_moderator_to\n     * @return Publication\n     */\n    public function setModeratorTo($p_moderator_to)\n    {\n        return $this->moderator_to = $p_moderator_to;\n    }\n\n    /**\n     * Get moderator to email address\n     *\n     * @return string\n     */\n    public function getModeratorTo()\n    {\n        return $this->moderator_to;\n    }\n\n    /**\n     * Set moderator from email address\n     *\n     * @param  string      $p_moderator_from\n     * @return Publication\n     */\n    public function setModeratorFrom($p_moderator_from)\n    {\n        return $this->moderator_from = $p_moderator_from;\n    }\n\n    /**\n     * Get moderator from email address\n     *\n     * @return string\n     */\n    public function getModeratorFrom()\n    {\n        return $this->moderator_from;\n    }\n\n    /**\n     * Get defaultAlias\n     *\n     * @return Aliases\n     */\n    public function getDefaultAlias()\n    {\n        return $this->defaultAlias;\n    }\n\n    public function setDefaultAlias($alias)\n    {\n        $this->defaultAlias = $alias;\n\n        return $this;\n    }\n\n    public function getCaptchaEnabled()\n    {\n        return $this->commentsCaptchaEnabled;\n    }\n\n    public function getCommentsSubscribersModerated()\n    {\n        return $this->commentsSubscribersModerated;\n    }\n\n    public function setCommentsSubscribersModerated($commentsSubscribersModerated)\n    {\n        $this->commentsSubscribersModerated = $commentsSubscribersModerated;\n\n        return $this;\n    }\n\n    public function getCommentsPublicModerated()\n    {\n        return $this->commentsPublicModerated;\n    }\n\n    public function setCommentsPublicModerated($commentsPublicModerated)\n    {\n        $this->commentsPublicModerated = $commentsPublicModerated;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of public_enabled.\n     *\n     * @return bool\n     */\n    public function getPublicCommentsEnabled()\n    {\n        return (boolean) $this->public_enabled;\n    }\n\n    /**\n     * Sets the value of public_enabled.\n     *\n     * @param bool $public_enabled the public_enabled\n     *\n     * @return self\n     */\n    public function setPublicCommentsEnabled($public_enabled)\n    {\n        $this->public_enabled = $public_enabled;\n\n        return $this;\n    }\n\n    /**\n     * Getter for defaultAliasId\n     *\n     * @return mixed\n     */\n    public function getDefaultAliasId()\n    {\n        return $this->defaultAliasId;\n    }\n\n    /**\n     * Setter for defaultAliasId\n     *\n     * @param mixed $defaultAliasId Value to set\n     *\n     * @return self\n     */\n    public function setDefaultAliasId($defaultAliasId)\n    {\n        $this->defaultAliasId = $defaultAliasId;\n\n        return $this;\n    }\n\n    /**\n     * Set seo\n     *\n     * @param array $seo\n     *\n     * @return self\n     */\n    public function setSeo(array $seo)\n    {\n        $this->seo = serialize($seo);\n\n        return $this;\n    }\n\n    /**\n     * Get seo\n     *\n     * @return array\n     */\n    public function getSeo()\n    {\n        return (array) unserialize($this->seo);\n    }\n\n    public function getSeoChoices()\n    {\n        $choices = array();\n        foreach ($this->getSeo() as $key => $value) {\n            if ($value == 'on') {\n                $choices[] = $key;\n            }\n        }\n\n        return $choices;\n    }\n\n    public function setSeoChoices($data)\n    {\n        $seo = array();\n        foreach ($data as $value) {\n            $seo[$value] = 'on';\n        }\n\n        $this->setSeo($seo);\n    }\n\n    /**\n     * Gets the value of urlTypeId.\n     *\n     * @return int\n     */\n    public function getUrlTypeId()\n    {\n        return $this->urlTypeId;\n    }\n\n    /**\n     * Sets the value of urlTypeId.\n     *\n     * @param int $urlTypeId the url type id\n     *\n     * @return self\n     */\n    public function setUrlTypeId($urlTypeId)\n    {\n        $this->urlTypeId = $urlTypeId;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of metaTitle.\n     *\n     * @return string\n     */\n    public function getMetaTitle()\n    {\n        return $this->metaTitle;\n    }\n\n    /**\n     * Sets the value of metaTitle.\n     *\n     * @param string $metaTitle the meta title\n     *\n     * @return self\n     */\n    public function setMetaTitle($metaTitle)\n    {\n        $this->metaTitle = $metaTitle;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of metaKeywords.\n     *\n     * @return string\n     */\n    public function getMetaKeywords()\n    {\n        return $this->metaKeywords;\n    }\n\n    /**\n     * Sets the value of metaKeywords.\n     *\n     * @param string $metaKeywords the meta keywords\n     *\n     * @return self\n     */\n    public function setMetaKeywords($metaKeywords)\n    {\n        $this->metaKeywords = $metaKeywords;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of metaDescription.\n     *\n     * @return string\n     */\n    public function getMetaDescription()\n    {\n        return $this->metaDescription;\n    }\n\n    /**\n     * Sets the value of metaDescription.\n     *\n     * @param string $metaDescription the meta description\n     *\n     * @return self\n     */\n    public function setMetaDescription($metaDescription)\n    {\n        $this->metaDescription = $metaDescription;\n\n        return $this;\n    }\n\n    /**\n     * Getter for outputSettingsPublication\n     *\n     * @return mixed\n     */\n    public function getOutputSettingsPublication()\n    {\n        return $this->outputSettingsPublication;\n    }\n\n    /**\n     * Setter for outputSettingsPublication\n     *\n     * @return self\n     */\n    public function setOutputSettingsPublication($outputSettingsPublication)\n    {\n        $this->outputSettingsPublication = $outputSettingsPublication;\n\n        return $this;\n    }\n\n    /**\n     * Setter for outputSettingsPublication\n     *\n     * @param Newscoop\\Entity\\OutputSettingsPublication $outputSettingsPublication\n     *\n     * @return self\n     */\n    public function addOutputSettingsPublication($outputSettingsPublication)\n    {\n        if (!$this->outputSettingsPublication->contains($outputSettingsPublication)) {\n            $this->outputSettingsPublication->add($outputSettingsPublication);\n        }\n\n        return $this;\n    }\n\n\n    /**\n     * Gets the value of commentsArticleDefaultEnabled.\n     *\n     * @return bool\n     */\n    public function getCommentsArticleDefaultEnabled()\n    {\n        return $this->commentsArticleDefaultEnabled;\n    }\n\n    /**\n     * Sets the value of commentsArticleDefaultEnabled.\n     *\n     * @param bool $commentsArticleDefaultEnabled the comments article default enabled\n     *\n     * @return self\n     */\n    public function setCommentsArticleDefaultEnabled($commentsArticleDefaultEnabled)\n    {\n        $this->commentsArticleDefaultEnabled = $commentsArticleDefaultEnabled;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of commentsCaptchaEnabled.\n     *\n     * @return bool\n     */\n    public function getCommentsCaptchaEnabled()\n    {\n        return $this->commentsCaptchaEnabled;\n    }\n\n    /**\n     * Sets the value of commentsCaptchaEnabled.\n     *\n     * @param bool $commentsCaptchaEnabled the comments captcha enabled\n     *\n     * @return self\n     */\n    public function setCommentsCaptchaEnabled($commentsCaptchaEnabled)\n    {\n        $this->commentsCaptchaEnabled = $commentsCaptchaEnabled;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of commentsSpamBlockingEnabled.\n     *\n     * @return bool\n     */\n    public function getCommentsSpamBlockingEnabled()\n    {\n        return $this->commentsSpamBlockingEnabled;\n    }\n\n    /**\n     * Sets the value of commentsSpamBlockingEnabled.\n     *\n     * @param bool $commentsSpamBlockingEnabled the comments spam blocking enabled\n     *\n     * @return self\n     */\n    public function setCommentsSpamBlockingEnabled($commentsSpamBlockingEnabled)\n    {\n        $this->commentsSpamBlockingEnabled = $commentsSpamBlockingEnabled;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of commentsEnabled.\n     *\n     * @return bool\n     */\n    public function getCommentsEnabled()\n    {\n        return $this->commentsEnabled;\n    }\n\n    /**\n     * Sets the value of commentsEnabled.\n     *\n     * @param bool $commentsEnabled the comments enabled\n     *\n     * @return self\n     */\n    public function setCommentsEnabled($commentsEnabled)\n    {\n        $this->commentsEnabled = $commentsEnabled;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of public_enabled.\n     *\n     * @return bool\n     */\n    public function getPublicEnabled()\n    {\n        return (boolean) $this->public_enabled;\n    }\n\n    /**\n     * Sets the value of public_enabled.\n     *\n     * @param bool $public_enabled the public enabled\n     *\n     * @return self\n     */\n    public function setPublicEnabled($public_enabled)\n    {\n        $this->public_enabled = $public_enabled;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Rating.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\nuse Newscoop\\Entity\\Article;\n\n/**\n * Rating entity\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\RatingRepository\")\n * @ORM\\Table(name=\"rating\")\n */\nclass Rating extends AbstractEntity\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\", name=\"id\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"article_number\")\n     * @var int\n     */\n    protected $articleId;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"user_id\")\n     * @var int\n     */\n    protected $userId;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"rating_score\")\n     * @var int\n     */\n    protected $ratingScore;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"time_created\")\n     * @var DateTime\n     */\n    protected $timeCreated;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"time_updated\")\n     * @var DateTime\n     */\n    protected $timeUpdated;\n\n    /**\n     * @return int\n     */\n    public function getArticleId()\n    {\n        return $this->articleId;\n    }\n\n    /**\n     * @return int\n     */\n    public function getUserId()\n    {\n        return $this->userId;\n    }\n\n    /**\n     * @return int\n     */\n    public function getRatingScore()\n    {\n        return $this->ratingScore;\n    }\n\n    /**\n     * @return DateTime\n     */\n    public function getTimeCreated()\n    {\n        return $this->timeCreated;\n    }\n\n    /**\n     * @return DateTime\n     */\n    public function getTimeUpdated()\n    {\n        return $this->timeUpdated;\n    }\n\n    /**\n     * Set timecreated\n     *\n     * @param DateTime $p_datetime\n     * @return Newscoop\\Entity\\Rating\n     */\n    public function setTimeCreated(\\DateTime $p_datetime)\n    {\n        $this->timeCreated = $p_datetime;\n        return $this;\n    }\n\n    /**\n     * Set timeupdated\n     *\n     * @param DateTime $p_datetime\n     * @return Newscoop\\Entity\\Rating\n     */\n    public function setTimeUpdated(\\DateTime $p_datetime)\n    {\n        $this->timeUpdated = $p_datetime;\n        return $this;\n    }\n\n    /**\n     * Set articleId\n     *\n     * @param int $articleId\n     * @return Newscoop\\Entity\\Rating\n     */\n    public function setArticleId($articleId)\n    {\n        $this->articleId = $articleId;\n        return $this;\n    }\n\n    /**\n     * Set userId\n     *\n     * @param int $userId\n     * @return Newscoop\\Entity\\Rating\n     */\n    public function setUserId($userId)\n    {\n        $this->userId = $userId;\n        return $this;\n    }\n\n    /**\n     * Set ratingScore\n     *\n     * @param int $ratingScore\n     * @return Newscoop\\Entity\\Rating\n     */\n    public function setRatingScore($ratingScore)\n    {\n        $this->ratingScore = $ratingScore;\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/RelatedArticle.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * RelatedArticle entity\n *\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\RelatedArticleRepository\")\n * @ORM\\Table(name=\"context_articles\", indexes={\n *   @ORM\\Index(name=\"article_number\", columns={\"fk_article_no\"}),\n * })\n */\nclass RelatedArticle\n{\n    /**\n     * @ORM\\Id()\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\", name=\"Id\")\n     * @var integer\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"fk_context_id\")\n     * @var integer\n     */\n    protected $articleListId;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"fk_article_no\")\n     * @var integer\n     */\n    protected $articleNumber;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"order_number\")\n     * @var integer\n     */\n    protected $order;\n\n    public function __construct($articleListId, $articleNumber)\n    {\n        $this->setArticleListId($articleListId);\n        $this->setArticleNumber($articleNumber);\n        $this->setOrder(0);\n    }\n\n    /**\n     * Gets the value of articleListId.\n     *\n     * @return integer\n     */\n    public function getArticleListId()\n    {\n        return $this->articleListId;\n    }\n\n    /**\n     * Sets the value of articleListId.\n     *\n     * @param integer $articleListId the article list id\n     *\n     * @return self\n     */\n    public function setArticleListId($articleListId)\n    {\n        $this->articleListId = $articleListId;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of articleNumber.\n     *\n     * @return integer\n     */\n    public function getArticleNumber()\n    {\n        return $this->articleNumber;\n    }\n\n    /**\n     * Sets the value of articleNumber.\n     *\n     * @param integer $articleNumber the article number\n     *\n     * @return self\n     */\n    public function setArticleNumber($articleNumber)\n    {\n        $this->articleNumber = $articleNumber;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of id.\n     *\n     * @return integer\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Gets the value of order.\n     *\n     * @return integer\n     */\n    public function getOrder()\n    {\n        return $this->order;\n    }\n\n    /**\n     * Sets the value of order.\n     *\n     * @param integer $order the order\n     *\n     * @return self\n     */\n    public function setOrder($order)\n    {\n        $this->order = $order;\n\n        return $this;\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/RelatedArticles.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * RelatedArticles entity\n *\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\RelatedArticlesRepository\")\n * @ORM\\Table(name=\"context_boxes\")\n */\nclass RelatedArticles\n{\n    /**\n     * @ORM\\Id()\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\", name=\"Id\")\n     * @var integer\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"fk_article_no\")\n     * @var integer\n     */\n    protected $articleNumber;\n\n    public function __construct($articleNumber)\n    {\n        $this->setArticleNumber($articleNumber);\n    }\n\n    /**\n     * Gets the value of id.\n     *\n     * @return integer\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Gets the value of articleNumber.\n     *\n     * @return integer\n     */\n    public function getArticleNumber()\n    {\n        return $this->articleNumber;\n    }\n\n    /**\n     * Sets the value of articleNumber.\n     *\n     * @param integer $articleNumber the article number\n     *\n     * @return self\n     */\n    protected function setArticleNumber($articleNumber)\n    {\n        $this->articleNumber = $articleNumber;\n\n        return $this;\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/Acl/RuleRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity\\Repository\\Acl;\n\nuse Doctrine\\ORM\\EntityRepository,\n    Newscoop\\Entity\\Acl\\Rule;\n\n/**\n * Acl Rule repository\n */\nclass RuleRepository extends EntityRepository\n{\n    /**\n     * Save rule\n     *\n     * @param array $values\n     * @param bool $isUser\n     * @param \\Newscoop\\Entity\\Acl\\Rule|null $rule\n     * @return \\Newscoop\\Entity\\Acl\\Rule|null\n     */\n    public function save(array $values, $isUser = false, Rule $rule = null)\n    {\n        $role = $this->getEntityManager()->getReference('Newscoop\\Entity\\Acl\\Role', (int) $values['role']);\n        $resource = (string) $values['resource'];\n        $action = (string) $values['action'];\n        $type = array_key_exists('type', $values) && strtolower($values['type']) == 'allow' ? 'allow' : 'deny';\n\n        $conflicts = $this->findBy(array(\n            'role' => (int) $values['role'],\n            'resource' => $resource,\n            'action' => $action,\n        ));\n\n        foreach ($conflicts as $conflict) {\n            $this->getEntityManager()->remove($conflict);\n        }\n\n        $this->getEntityManager()->flush();\n\n        if ('deny' == $type && !$isUser) { // don't add deny rules for user groups\n            return;\n        }\n\n        if (null === $rule) {\n            $rule = new Rule();\n        }\n\n        $rule->setType($values['type']);\n        $rule->setRole($role);\n        $rule->setResource($resource);\n        $rule->setAction($action);\n\n        $this->getEntityManager()->persist($rule);\n        $this->getEntityManager()->flush();\n\n        return $rule;\n    }\n\n    /**\n     * Delete rule\n     *\n     * @param int $id\n     * @return void\n     */\n    public function delete($id)\n    {\n        $proxy = $this->getEntityManager()->getReference('Newscoop\\Entity\\Acl\\Rule', $id);\n        $this->getEntityManager()->remove($proxy);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/ArticleAuthorRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository;\n\n/**\n * ArticleAuthor repository\n */\nclass ArticleAuthorRepository extends EntityRepository\n{\n    public function getArticleAuthor($articleNumber, $languageCode, $authorId, $typeId = null)\n    {\n        $languageId = $this->_em->getRepository('Newscoop\\Entity\\Language')\n                ->findOneByCode($languageCode);\n\n        $qb = $this->createQueryBuilder('au')\n            ->where('au.articleNumber = :articleNumber')\n            ->andWhere('au.languageId = :languageId')\n            ->andWhere('au.author = :author')\n            ->setParameters(array(\n                'articleNumber' => $articleNumber,\n                'languageId' => $languageId,\n                'author' => $authorId\n            ));\n\n        if ($typeId) {\n            $qb->andWhere('au.type = :type')\n                ->setParameter('type', $typeId);\n        }\n\n        return $qb->getQuery();\n    }\n\n    public function getArticleAuthors($articleNumber, $languageCode)\n    {\n        $languageId = $this->_em->getRepository('Newscoop\\Entity\\Language')\n                ->findOneByCode($languageCode);\n\n        $qb = $this->createQueryBuilder('au')\n            ->where('au.articleNumber = :articleNumber')\n            ->andWhere('au.languageId = :languageId')\n            ->setParameters(array(\n                'articleNumber' => $articleNumber,\n                'languageId' => $languageId\n            ))\n            ->orderBy('au.order', 'asc');\n\n        $countQueryBuilder = clone $qb;\n        $countQueryBuilder->select('COUNT(au)');\n\n        $count = $countQueryBuilder->getQuery()->getSingleScalarResult();\n\n        $query = $qb->getQuery();\n        $query->setHint('knp_paginator.count', $count);\n\n        return $query;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/ArticleDatetimeRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\DBAL\\SQLParserUtils,\n    Newscoop\\Utils\\Exception,\n    Doctrine\\ORM\\Query,\n    Doctrine\\ORM\\Configuration,\n    Newscoop\\Entity\\ArticleDatetime,\n    Doctrine\\ORM\\EntityRepository,\n    Newscoop\\ArticleDatetime as ArticleDatetimeHelper,\n    Newscoop\\Entity\\Article;\n\nclass ArticleDatetimeRepository extends EntityRepository\n{\n\n    const RECURRING_NONE = 'NULL';\n    const RECURRING_DAILY = 'daily';\n    const RECURRING_WEEKLY = 'weekly';\n    const RECURRING_MONTHLY = 'monthly';\n    const RECURRING_YEARLY = 'yearly';\n\n    protected $lastQb;\n    protected $lastQParams;\n\n    /**\n     * @return array\n     */\n    private function buildInsertValues($timeSet, $recurring)\n    {\n        $insertValues = array();\n        if (is_array($timeSet) || is_string($timeSet))\n        {\n            $timeSet = (array) $timeSet;\n            foreach ($timeSet as $start => $end )\n            {\n            \tif (!is_string($start) && !is_array($end)) {\n                    list($start, $end) = explode(' - ', $end, 2);\n                }\n                $insertValues[] = new ArticleDatetimeHelper // some logic to capture the recurring also included\n                (\n                    array( $start => $end ),\n                    is_array($end) && isset($end['recurring'])\n                        ? $end['recurring']\n                        : (!is_array($end) && ($x = preg_grep('/recurring:\\w+/i', explode('-', $end))) && count($x) ?\n                            next(preg_split('/\\s*:\\s*/', current($x))) : $recurring)\n                );\n            }\n        }\n        if ($timeSet instanceof ArticleDatetimeHelper) {\n            $insertValues[] = $timeSet;\n        }\n        return $insertValues;\n    }\n\n    public function deleteByArticle($article)\n    {\n        $em = $this->getEntityManager();\n        if(is_numeric($article)) {\n            foreach ($this->findBy(array('articleId' => $article)) as $entry) {\n                $em->remove($entry);\n            }\n        }\n        elseif ($article instanceof Article) {\n            $em->remove($article);\n        }\n    }\n\n    public function deleteById($id)\n    {\n        $em = $this->getEntityManager();\n        if(is_numeric($id)) {\n            //$entry = $this->findBy(array('id' => $id));\n            $entry = $this->find($id);\n            $em->remove($entry);\n            $em->flush();\n        }\n\n    }\n\n    /**\n     * Adds time intervals\n     * @param array|ArticleDatetime $timeSet\n     * \t\tComplex set of intervals\n     *\t\t{\n     *\t\t\t\"2011-11-02\" = { \"12:00\" => \"18:00\", \"20:00\" => \"22:00\", [ \"recurring\" => true|false ] } - between these hours on 11-02\n     *\t\t\t\"2011-11-03\" = \"11:00 - recurring:weekly\" - at 11:00 this day, and recurring weekly\n     *\t\t\t\"2011-11-03 14:00\" = \"18:00\" - from 3rd nov 14:00 until 18:00\n\t *\t\t\t\"2011-11-04\" = \"2011-11-07\" - from 4th till 7th nov\n\t *\t\t\t\"2011-11-08\" = \"2011-11-09 12:00\" - from 8th till 12:00 9th\n\t * \t\t\t\"2011-11-10 10:30\" = \"2011-11-11\" - from 10th 10:40 until the end of the day\n     *\t\t\t\"2011-11-12 12:30\" = \"2011-11-13 13:00\" - self explanatory\n     *\t\t\t\"2011-11-14 14:30\" = \"2011-11-15 15:00\" - self explanatory\n     *\t\t\t\"2011-11-15 15:30\" = \"2011-11-17\" - self explanatory\n     *\t\t\t\"2011-11-30\" = true - on the 30th full day\n     *\t\t}\n     * @param int|Article $articleId\n     * @param string $fieldName\n     * @param string $recurring\n     * @param bool $overwrite\n     */\n    public function add( $timeSet, $articleId, $fieldName = null, $recurring = null, $overwrite=false, $otherInfo=null )\n    {\n        $insertValues = $this->buildInsertValues($timeSet, $recurring);\n        $article = null;\n\n        $em = $this->getEntityManager();\n        // check article\n        if (is_numeric($articleId)) {\n            $article = $em->getRepository('Newscoop\\Entity\\Article')->findOneBy(array('number' => $articleId));\n            /* @var $article Newscoop\\Entity\\Article */\n        }\n        elseif ($articleId instanceof \\Article) {\n            $article = $articleId;\n        }\n        if (is_null($article)) {\n            return false;\n        };\n\n        $em->getConnection()->beginTransaction();\n        try // delete all entries and add new ones\n        {\n            if ($overwrite)\n            {\n                $this->deleteByArticle($articleId);\n            }\n            foreach ($insertValues as $dateValue) {\n                foreach (array_merge(array($dateValue), $dateValue->getSpawns()) as $dateValue)\n                {\n                    $articleDatetime = new ArticleDatetime();\n                    $articleDatetime->setValues($dateValue, $article, $fieldName, null, $otherInfo);\n                    $em->persist($articleDatetime);\n                }\n            }\n            $em->flush();\n            $em->getConnection()->commit();\n        }\n        catch (\\Exception $e) // rollback on commit\n        {\n            $em->getConnection()->rollback();\n            $em->close();\n            return $e;\n        }\n    }\n\n    public function getEmpty() {\n        $articleDatetime = new ArticleDatetime();\n        return($articleDatetime);\n    }\n\n    /**\n     * Update entry by id\n     * @param int $id\n     * @param array $timeSet\n     * @param int $articleId\n     * @param string $fieldName\n     * @param string $recurring\n     */\n    public function update($id, $timeSet, $articleId=null, $fieldName=null, $recurring=null, $otherInfo=null)\n    {\n        $em = $this->getEntityManager();\n\n        $entry = $this->find($id);\n        if (!$entry) {\n            return false;\n        }\n        if (is_null($articleId)) {\n            $articleId = $entry->getArticleId();\n        }\n        if (is_null($fieldName)) {\n            $fieldName = $entry->getFieldName();\n        }\n\n        $insertValues = $this->buildInsertValues($timeSet, $recurring);\n\n        $em->getConnection()->beginTransaction();\n        try\n        {\n            $em->remove($entry);\n            foreach ($insertValues as $dateValue) {\n                foreach (array_merge(array($dateValue), $dateValue->getSpawns()) as $dateValue)\n                {\n                    $articleDatetime = new ArticleDatetime();\n                    $articleDatetime->setValues($dateValue, $articleId, $fieldName, $entry->getArticleType(), $otherInfo);\n                    $em->persist($articleDatetime);\n                }\n            }\n            $em->flush();\n            $em->getConnection()->commit();\n        }\n        catch(\\Exception $e)\n        {\n            $em->getConnection()->rollback();\n            $em->close();\n            return $e;\n        }\n    }\n\n    /**\n     * Find dates\n     * @param object $search\n     * \t\t{\n     * \t\t\tstartDate : dateFormat, - passing only startDate will compare to entries with exactly (=) this value\n     * \t\t\tendDate : dateFormat,\n     * \t\t\tstartTime : dateFormat,\n     * \t\t\tendTime : dateFormat,\n     * \t\t\tdaily : bool|dateFormat,\n     * \t\t\tweekly : dateFormat,\n     *\t\t\tmonthly : dateFormat,\n     *\t\t\tyearly : dateFormat\n     *\t\t}\n     * @param $dontExecute if true, store query builder object and params in $this->lastQb and $this->lastQParams for later use\n     */\n    public function findDates($search, $dontExecute=false)\n    {\n/* Notices:\n *  by now, 'NULL' means 'no end', i.e. till the end of day for end_time, forever for end_date\n *  when no recurring, then it is continuously from start_date/start_time till end_date/end_time\n *      start_date and date_end are usually the same then ... must be for a single day event.\n *\n *  this search would be wrong on situations where we search for a short time interval and an recurring event starts before and ends after,\n *      but does not recur at the specified (short) interval, like:\n *          a) having an event yearly from 2000, each January 1st\n *          b) searching for events 2012-04-01 till 2012-04-30\n *          c) without specifying any recurrence\n *      the search would take that event even though it does not occur at the specified interval\n *      thus the addition below, at part where just start-end is set\n */\n\n        $qb = $this->createQueryBuilder('dt');\n\n        // interval from a date till infinity\n        if (isset($search->startDate) && !isset($search->endDate))\n        {\n            $qb->andWhere('dt.endDate >= :startDate');\n            $qb->setParameter('startDate', new \\DateTime($search->startDate));\n        }\n\n        // date interval\n        if (isset($search->startDate) && isset($search->endDate))\n        {\n\n            $qb->add('where',\n                $qb->expr()->andx\n                (\n                    'dt.startDate <= :endDate',\n                    $qb->expr()->orx('dt.endDate >= :startDate', 'dt.endDate is null')\n                ));\n            $qb->setParameter('startDate', new \\DateTime($search->startDate));\n            $qb->setParameter('endDate', new \\DateTime($search->endDate));\n\n            if (!isset($search->daily) && !isset($search->weekly) && !isset($search->monthly) && !isset($search->yearly) && ($search->startDate <= $search->endDate)) {\n\n                $interval_one_day = new \\DateInterval('P1D');\n                $start_date = new \\DateTime($search->startDate);\n                $end_date = new \\DateTime($search->endDate);\n                $end_date_plus = clone $end_date;\n                $end_date_plus->add($interval_one_day);\n\n                $weeks_to_check = true;\n                $months_to_check = true;\n                $years_to_check = true;\n\n                $yearly_days_check_str = '1 = 1';\n\n                // taking covered days of year\n\n                $start_year = $start_date->format('Y');\n                $start_month_day = $start_date->format('m-d');\n\n                $end_year = $end_date->format('Y');\n                $end_month_day = $end_date->format('m-d');\n\n                $yearly_checking = null;\n\n                if (($start_year + 2) <= $end_year) {\n                    $weeks_to_check = false;\n                    $months_to_check = false;\n                    $years_to_check = false;\n                }\n                elseif (($start_year + 1) == $end_year) {\n                    if ($start_month_day <= $end_month_day) {\n                        $weeks_to_check = false;\n                        $months_to_check = false;\n                        $years_to_check = false;\n                    }\n                    else {\n                        $yearly_checking = $qb->expr()->andx();\n                        $yearly_checking->add('dt.recurring = :recurring_yearly');\n                        $yearly_checking->add($qb->expr()->orx(\n                            $qb->expr()->gte('DATE_FORMAT(dt.startDate, \"%m-%d\")', '\"' . $start_month_day . '\"'),\n                            $qb->expr()->lte('DATE_FORMAT(dt.startDate, \"%m-%d\")', '\"' . $end_month_day . '\"')\n                        ));\n\n                        //$yearly_days_check_str = 'dt.recurring = :recurring_yearly AND (DATE_FORMAT(dt.startDate, \"%m-%d\") >= \"' . $start_month_day . '\") OR (DATE_FORMAT(dt.startDate, \"%m-%d\") <= \"' . $end_month_day . '\")';\n                    }\n                }\n                else {\n                    $yearly_checking = $qb->expr()->andx();\n                    $yearly_checking->add('dt.recurring = :recurring_yearly');\n                    $yearly_checking->add($qb->expr()->gte('DATE_FORMAT(dt.startDate, \"%m-%d\")', '\"' . $start_month_day . '\"'));\n                    $yearly_checking->add($qb->expr()->lte('DATE_FORMAT(dt.startDate, \"%m-%d\")', '\"' . $end_month_day . '\"'));\n\n                    //$yearly_days_check_str = 'dt.recurring = :recurring_yearly AND (DATE_FORMAT(dt.startDate, \"%m-%d\") >= \"' . $start_month_day . '\") AND (DATE_FORMAT(dt.startDate, \"%m-%d\") <= \"' . $end_month_day . '\")';\n                }\n\n                // taking covered days of month\n\n                if ($months_to_check) {\n                    $start_end_period = new \\DatePeriod($start_date, $interval_one_day, $end_date_plus);\n\n                    $allowed_month_days = array();\n\n                    foreach($start_end_period as $one_day_in) {\n\n                        $one_day_in_month = $one_day_in->format('j');\n                        $allowed_month_days[$one_day_in_month] = $one_day_in_month;\n                    }\n\n                    if (31 <= count($allowed_month_days)) {\n                        $months_to_check = false;\n                    }\n                }\n\n                // taking covered days of week\n\n                if ($weeks_to_check) {\n\n                    $start_day_of_week = $start_date->format('w') + 1;\n                    $end_day_of_week = $end_date->format('w') + 1;\n\n                    foreach (array(1,2,3,4,5,6,7) as $one_week_day) {\n                        if (($one_week_day >= $start_day_of_week) && ($one_week_day <= $end_day_of_week)) {\n                            $allowed_week_days[] = $one_week_day;\n                            continue;\n                        }\n                        if ($start_day_of_week > $end_day_of_week) {\n                            if (($one_week_day >= $start_day_of_week) || ($one_week_day <= $end_day_of_week)) {\n                                $allowed_week_days[] = $one_week_day;\n                                continue;\n                            }\n                        }\n                    }\n\n                    if (7 <= count($allowed_week_days)) {\n                        $weeks_to_check = false;\n                    }\n\n                }\n\n                // put the check parts in\n/*\n                // current doctrine is broken on 'IN' statement\n                $qb->andWhere(\n                    $qb->expr()->orx\n                    (\n                        'dt.recurring IS NULL',\n                        'dt.recurring = 0',\n                        'dt.recurring = :recurring_daily' // it is ok for daily repeating events; and if time specified, it is set below\n                        $qb->expr()->andx('dt.recurring = :recurring_weekly', $qb->expr()->in('DAYOFWEEK(dt.startDate)', ':allowed_week_days')),\n                        $qb->expr()->andx('dt.recurring = :recurring_monthly', $qb->expr()->in('DAYOFMONTH(dt.startDate)', ':allowed_month_days')),\n                        $qb->expr()->andx('dt.recurring = :recurring_yearly', $yearly_days_check_str)* /\n                    )\n                );\n*/\n                $outerOr = $qb->expr()->orx();\n                $outerOr->add('dt.recurring IS NULL');\n                $outerOr->add('dt.recurring = 0');\n                $outerOr->add('dt.recurring = :recurring_daily');\n                $useOuter = true;\n\n                if ($weeks_to_check) {\n                    $innerWeekOr = $qb->expr()->orx();\n                    foreach ($allowed_week_days as $one_allowed_week_day) {\n                        $innerWeekOr->add($qb->expr()->eq('DAYOFWEEK(dt.startDate)', $one_allowed_week_day));\n                    }\n\n                    $outerWeekAnd = $qb->expr()->andx();\n                    $outerWeekAnd->add('dt.recurring = :recurring_weekly');\n                    $outerWeekAnd->add($innerWeekOr);\n\n                    $outerOr->add($outerWeekAnd);\n                    $useOuter = true;\n                }\n\n                if ($months_to_check) {\n                    $innerMonthOr = $qb->expr()->orx();\n                    foreach ($allowed_month_days as $one_allowed_month_day) {\n                        $innerMonthOr->add($qb->expr()->eq('DAYOFMONTH(dt.startDate)', $one_allowed_month_day));\n                    }\n\n                    $outerMonthAnd = $qb->expr()->andx();\n                    $outerMonthAnd->add('dt.recurring = :recurring_monthly');\n                    $outerMonthAnd->add($innerMonthOr);\n\n                    $outerOr->add($outerMonthAnd);\n                    $useOuter = true;\n                }\n\n/*\n                // TODO: doctrine do not work with date_format, even when the function is user created and set in resources\n                //       but we do not have support for year-repeating events in UI anyway\n                if ($years_to_check) {\n                    $outerOr->add($yearly_checking);\n                    $useOuter = true;\n                }\n*/\n\n                if ($useOuter) {\n                    $qb->andWhere($outerOr);\n                    //$qb->where($outerOr);\n                }\n\n                $qb->setParameter('recurring_daily', self::RECURRING_DAILY);\n                $qb->setParameter('recurring_weekly', self::RECURRING_WEEKLY);\n                $qb->setParameter('recurring_monthly', self::RECURRING_MONTHLY);\n                $qb->setParameter('recurring_yearly', self::RECURRING_YEARLY);\n\n                //var_dump($qb->getDQL());\n            }\n\n        }\n        $hasStartTimeQuery = false;\n        if (isset($search->startTime))\n        {\n            $qb->andWhere('dt.startTime >= :startTime');\n            $qb->setParameter('startTime', new \\DateTime($search->startTime));\n            $hasStartTimeQuery = true;\n        }\n        if (isset($search->endTime))\n        {\n            $qb->andWhere('dt.endTime <= :endTime');\n            $qb->setParameter('endTime', new \\DateTime($search->endTime));\n        }\n        if (isset($search->daily))\n        {\n            $qb->andWhere('dt.recurring = :recurringDaily');\n            $qb->setParameter('recurringDaily', self::RECURRING_DAILY);\n\n            if (is_string($search->daily)) // replace start time with daily string value\n            {\n                if (!$hasStartTimeQuery) {\n                    $qb->andWhere('dt.startTime >= :startTime');\n                }\n                $qb->setParameter('startTime', new \\DateTime($search->daily));\n            }\n            if (is_array($search->daily)) // replace time with daily key values\n            {\n                $paraCount = 11;\n                $orSqlParts = array();\n                foreach ($search->daily as $startTime => $endTime)\n                {\n                    $orSqlParts[] = \"( dt.startTime >= ?\".($paraCount+1).\" and (dt.startTime <= ?\".($paraCount+2).\") )\";\n                    $qb->setParameter(++$paraCount, new \\DateTime($startTime));\n                    $qb->setParameter(++$paraCount, new \\DateTime($endTime));\n                }\n                $qb->andWhere(implode(\" or \", $orSqlParts));\n            }\n        }\n        if (isset($search->weekly))\n        {\n            $qb->andWhere('DAYOFWEEK(dt.startDate) = :dayOfWeek');\n        \t$qb->andWhere('dt.recurring = :recurringWeekly');\n            $qb->setParameter('recurringWeekly', self::RECURRING_WEEKLY);\n            if (is_string($search->weekly))\n            {\n                $dayOfWeek = new \\DateTime($search->weekly);\n                $dayOfWeek = $dayOfWeek->format('w')+1;\n                $qb->setParameter('dayOfWeek', $dayOfWeek);\n            }\n            else {\n                throw new \\InvalidArgumentException('Parameter \"weekly\" must have a date-like formated value');\n            }\n        }\n        if (isset($search->monthly))\n        {\n            $qb->andWhere('DAYOFMONTH(dt.startDate) = :dayOfMonth');\n            $qb->andWhere('dt.recurring = :recurringMonthly');\n            $qb->setParameter('recurringMonthly', self::RECURRING_MONTHLY);\n            if (is_string($search->monthly))\n            {\n                $dayOfMonth = new \\DateTime($search->monthly);\n                $dayOfMonth = $dayOfMonth->format('j');\n                $qb->setParameter('dayOfMonth', $dayOfMonth);\n            }\n            else {\n                throw new \\InvalidArgumentException('Parameter \"monthly\" must have a date-like formated value');\n            }\n        }\n        if (isset($search->yearly))\n        {\n            $qb->andWhere('DATE_FORMAT(dt.startDate, \"%m-%d\") = :dayOfYear');\n            $qb->andWhere('dt.recurring = :recurringYearly');\n            $qb->setParameter('recurringYearly', self::RECURRING_YEARLY);\n            if (is_string($search->yearly))\n            {\n                $dayOfYear = new \\DateTime($search->yearly);\n                $dayOfYear = $dayOfYear->format('m-d');\n                $qb->setParameter('dayOfYear', $dayOfYear);\n            }\n            else {\n                throw new \\InvalidArgumentException('Parameter \"yearly\" must have a date-like formated value');\n            }\n        }\n        // article field name query\n        if (isset($search->fieldName))\n        {\n            $qb->andWhere('dt.fieldName = :fieldName');\n            $qb->setParameter('fieldName', $search->fieldName);\n        }\n        // search for article id\n        if (isset($search->articleId))\n        {\n            $qb->andWhere('dt.articleId= :articleId');\n            $qb->setParameter('articleId', $search->articleId);\n        }\n        // search for article datetime id\n        if (isset($search->id))\n        {\n            $qb->andWhere('dt.id= :id');\n            $qb->setParameter('id', $search->id);\n        }\n        // store query and return $this\n        if ($dontExecute)\n        {\n            $this->lastQb = $qb;\n            $this->lastQParams = $qb->getParameters();\n            return $this;\n        }\n        return $qb->getQuery()->getResult();\n    }\n\n    /**\n     * Get the sql used for find method\n     * @param array|string $cols columns to select\n     */\n    public function getFindDatesSQL($cols=null)\n    {\n        $conn = $this->getEntityManager()->getConnection();\n        if (!is_null($cols)) {\n            $this->lastQb->add('select', implode(\",\", (array) $cols));\n        }\n        $lastDQL = $this->lastQb->getDQL();\n        foreach ($this->lastQParams as $paramName => $paramValue)\n        {\n            if (in_array($paramName, array('startTime', 'endTime'))) {\n                $paramValue = $conn->convertToDatabaseValue($paramValue, 'time');\n            }\n            if (in_array($paramName, array('startDate', 'endDate'))) {\n                $paramValue = $conn->convertToDatabaseValue($paramValue, 'date');\n            }\n            $lastDQL = preg_replace(\"/:{$paramName}/\", \"'\".addslashes($paramValue).\"'\", $lastDQL);\n        }\n        $qb = $this->getEntityManager()->createQuery($lastDQL);\n        return $qb->getSQL();\n    }\n\n    public function renameField($p_articleType, $p_fieldNames) {\n        $qb = $this->createQueryBuilder('dt')\n            ->update()\n            ->set('dt.fieldName', ':fieldNameNew')\n            ->setParameter('fieldNameNew', $p_fieldNames['new'])\n            ->andWhere('dt.articleType = :articleType')\n            ->setParameter('articleType', $p_articleType)\n            ->andWhere('dt.fieldName = :fieldNameOld')\n            ->setParameter('fieldNameOld', $p_fieldNames['old']);\n\n        $q = $qb->getQuery();\n        $q->execute();\n\n    }\n\n    public function deleteField($p_articleType, $p_fieldNames) {\n        $qb = $this->createQueryBuilder('dt')\n            ->delete()\n            ->andWhere('dt.articleType = :articleType')\n            ->setParameter('articleType', $p_articleType)\n            ->andWhere('dt.fieldName = :fieldNameOld')\n            ->setParameter('fieldNameOld', $p_fieldNames['old']);\n\n        $q = $qb->getQuery();\n        $q->execute();\n    }\n\n\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/ArticleRepository.php",
    "content": "<?php\n\n/**\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\nnamespace Newscoop\\Entity\\Repository;\n\nuse Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException;\nuse Newscoop\\Datatable\\Source as DatatableSource;\nuse Newscoop\\Search\\RepositoryInterface;\nuse Newscoop\\NewscoopException\\IndexException;\nuse Newscoop\\Entity\\Article;\nuse Newscoop\\Entity\\Language;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\NewscoopBundle\\Entity\\Topic;\n\n/**\n * Article repository.\n */\nclass ArticleRepository extends DatatableSource implements RepositoryInterface\n{\n    /**\n     * Get All Articles from choosen publication (optional: article type and language).\n     *\n     * @param int    $publication Publication id\n     * @param string $type        Article type name\n     * @param int    $language    Language id\n     *\n     * @return \\Doctrine\\ORM\\Query\n     */\n    public function getArticles($publication, $type = null, $language = null, $issue = null, $section = null)\n    {\n        $em = $this->getEntityManager();\n\n        $queryBuilder = $em->getRepository('Newscoop\\Entity\\Article')\n            ->createQueryBuilder('a')\n            ->where('a.workflowStatus = :workflowStatus')\n            ->andWhere('a.publication = :publication')\n            ->setParameters(array(\n                'workflowStatus' => 'Y',\n                'publication' => $publication,\n            ));\n\n        if ($type) {\n            $queryBuilder->andWhere('a.type = :type')\n                ->setParameter('type', $type);\n        }\n\n        if ($issue) {\n            $queryBuilder->andWhere('a.issueId = :issue')\n                ->setParameter('issue', $issue);\n        }\n\n        if ($section) {\n            $queryBuilder->andWhere('a.sectionId = :section')\n                ->setParameter('section', $section);\n        }\n\n        if ($language) {\n            $languageId = $em->getRepository('Newscoop\\Entity\\Language')\n                ->findOneByCode($language);\n\n            if (!$languageId) {\n                throw new NotFoundHttpException('Results with language \"'.$language.'\" was not found.');\n            }\n\n            $queryBuilder->andWhere('a.language = :languageId')\n                ->setParameter('languageId', $languageId->getId());\n        }\n\n        $countQueryBuilder = clone $queryBuilder;\n        $countQueryBuilder->select('count(a)');\n        $articlesCount = $countQueryBuilder->getQuery()->getSingleScalarResult();\n\n        $query = $queryBuilder->getQuery();\n        $query->setHint('knp_paginator.count', $articlesCount);\n\n        return $query;\n    }\n\n    /**\n     * Search fo articles by keyword and filters.\n     *\n     * @param Language $language\n     * @param array    $keywords\n     * @param int      $publication   Publication Id\n     * @param int      $issue         Issue Number\n     * @param int      $section       Section Number\n     * @param bool     $onlyPublished\n     *\n     * @return \\Doctrine\\ORM\\Query\n     */\n    public function searchArticles($articleSearchCriteria, $onlyPublished = true, $order = 'desc')\n    {\n        $articleNumbers = array();\n        if ($articleSearchCriteria->query) {\n            $em = $this->getEntityManager();\n            $getLastArticles = true;\n            $queryBuilder = $em->getRepository('Newscoop\\Entity\\ArticleIndex')->createQueryBuilder('a')\n                ->select('DISTINCT(a.article) as number');\n\n            $orX = $queryBuilder->expr()->orx();\n\n            $keywords = array_diff(explode(' ', $articleSearchCriteria->query), array(''));\n            foreach ($keywords as $keyword) {\n                $orX->add($queryBuilder->expr()->like('k.keyword', $queryBuilder->expr()->literal(\"{$keyword}%\")));\n            }\n\n            if (count($keywords) > 0) {\n                $queryBuilder->leftJoin('a.keyword', 'k')\n                    ->andWhere($orX);\n                $getLastArticles = false;\n            }\n\n            if ($articleSearchCriteria->publication) {\n                $queryBuilder->andWhere('a.publication = :publication')\n                    ->setParameter('publication', $articleSearchCriteria->publication);\n                $getLastArticles = false;\n            }\n\n            if ($articleSearchCriteria->section) {\n                $queryBuilder->andWhere('a.sectionNumber = :section')\n                    ->setParameter('section', $articleSearchCriteria->section);\n                $getLastArticles = false;\n            }\n\n            if ($articleSearchCriteria->issue) {\n                $queryBuilder->andWhere('a.issueNumber = :issue')\n                    ->setParameter('issue', $articleSearchCriteria->issue);\n                $getLastArticles = false;\n            }\n\n            if ($articleSearchCriteria->language) {\n                $languageId = $em->getRepository('Newscoop\\Entity\\Language')\n                    ->findOneByCode($articleSearchCriteria->language);\n                if ($languageId) {\n                    $queryBuilder->andWhere('a.language = :language')\n                        ->setParameter('language', $languageId);\n                    $getLastArticles = false;\n                }\n            }\n\n            if ($getLastArticles) {\n                $queryBuilder = $em->getRepository('Newscoop\\Entity\\Article')\n                    ->createQueryBuilder('a')\n                    ->select('a.number as number')\n                    ->orderBy('a.uploaded', 'DESC');\n            }\n\n            $queryBuilder->setMaxResults(80)\n                ->orderBy('number', $order);\n\n            $articleNumbers = $queryBuilder->getQuery()->getResult();\n            $tmpNumbers = array();\n            foreach ($articleNumbers as $key => $value) {\n                $tmpNumbers[] = $value['number'];\n            }\n\n            $articleNumbers = $tmpNumbers;\n        }\n\n        $query = $this->getArticlesByCriteria($articleSearchCriteria, $articleNumbers, $onlyPublished, $order);\n\n        return $query;\n    }\n\n    public function getArticlesByCriteria($articleSearchCriteria, $ids = array(), $onlyPublished = true, $order = 'desc')\n    {\n        $em = $this->getEntityManager();\n\n        $queryBuilder = $em->getRepository('Newscoop\\Entity\\Article')\n                ->createQueryBuilder('a');\n\n        if ($articleSearchCriteria->query && !empty($ids)) {\n            $queryBuilder->select('a, FIELD(a.number, :ids) as HIDDEN field', 'l', 'u', 'ap', 'p', 'aa', 'au', 't')\n                ->andWhere('a.number IN (:ids)')\n                ->setParameters(array(\n                    'ids' => $ids,\n                ));\n        } else {\n            $queryBuilder->select('a', 'l', 'u', 'ap', 'p', 'aa', 'au', 't');\n            if ($articleSearchCriteria->publication) {\n                $queryBuilder->andWhere('a.publication = :publication')\n                    ->setParameter('publication', $articleSearchCriteria->publication);\n            }\n\n            if ($articleSearchCriteria->section) {\n                $queryBuilder->andWhere('a.sectionId = :section')\n                    ->setParameter('section', $articleSearchCriteria->section);\n            }\n\n            if ($articleSearchCriteria->issue) {\n                $queryBuilder->andWhere('a.issueId = :issue')\n                    ->setParameter('issue', $articleSearchCriteria->issue);\n            }\n        }\n\n        $queryBuilder->leftJoin('a.issue', 'i')\n            ->leftJoin('a.section', 's')\n            ->leftJoin('a.packages', 'p')\n            ->leftJoin('a.language', 'l')\n            ->leftJoin('a.lockUser', 'u')\n            ->leftJoin('a.publication', 'ap')\n            ->leftJoin('a.attachments', 'aa')\n            ->leftJoin('a.authors', 'au')\n            ->leftJoin('a.topics', 't');\n\n        if ($articleSearchCriteria->language) {\n            $languageId = $em->getRepository('Newscoop\\Entity\\Language')\n                ->findOneByCode($articleSearchCriteria->language);\n            if ($languageId) {\n                $queryBuilder->andWhere('a.language = :language')\n                    ->setParameter('language', $languageId);\n            }\n        }\n\n        if ($articleSearchCriteria->article_type) {\n            $queryBuilder->andWhere('a.type = :article_type')\n                ->setParameter('article_type', $articleSearchCriteria->article_type);\n        }\n\n        if ($articleSearchCriteria->publish_date) {\n            $startDate = new \\DateTime($articleSearchCriteria->publish_date);\n            $endDate = new \\DateTime($articleSearchCriteria->publish_date);\n            $endDate->modify('+ 1 day');\n\n            $queryBuilder->andWhere('a.published >= :publish_date_start')\n                ->setParameter('publish_date_start', $startDate);\n            $queryBuilder->andWhere('a.published < :publish_date_end')\n                ->setParameter('publish_date_end', $endDate);\n        }\n\n        if ($articleSearchCriteria->published_after) {\n            $queryBuilder->andWhere('a.published > :published_after')\n                ->setParameter('published_after', $articleSearchCriteria->published_after);\n        }\n\n        if ($articleSearchCriteria->published_before) {\n            $queryBuilder->andWhere('a.published < :published_before')\n                ->setParameter('published_before', $articleSearchCriteria->published_before);\n        }\n\n        if ($articleSearchCriteria->author) {\n            $queryBuilder->andWhere('au.id = :author')\n                ->setParameter('author', $articleSearchCriteria->author);\n        }\n\n        if ($articleSearchCriteria->creator) {\n            $queryBuilder->andWhere('a.creator = :creator')\n                ->setParameter('creator', $articleSearchCriteria->creator);\n        }\n\n        if ($articleSearchCriteria->status) {\n            $queryBuilder->andWhere('a.workflowStatus = :status')\n                ->setParameter('status', $articleSearchCriteria->status);\n        }\n\n        if ($articleSearchCriteria->topic) {\n            $queryBuilder->andWhere('t.id = :topic')\n                ->setParameter('topic', $articleSearchCriteria->topic);\n        }\n\n        if ($onlyPublished) {\n            $queryBuilder->andWhere('a.workflowStatus  = :workflowStatus')\n                ->setParameter('workflowStatus', Article::STATUS_PUBLISHED);\n        }\n\n        if ($order != false) {\n            $queryBuilder->orderBy('a.uploaded', $order);\n        }\n\n        $countQueryBuilder = clone $queryBuilder;\n        $query = $queryBuilder->getQuery();\n        $countQueryBuilder->resetDQLPart('join');\n        $query->setHint('knp_paginator.count', $countQueryBuilder->select('COUNT(a)')->getQuery()->getSingleScalarResult());\n\n        return $query;\n    }\n\n    /**\n     * Get Single Article.\n     *\n     * @param int               $number   Article number\n     * @param mixed[int|string] $language Language id or code\n     *\n     * @return \\Doctrine\\ORM\\Query\n     */\n    public function getArticle($number, $language = null)\n    {\n        $em = $this->getEntityManager();\n\n        $queryBuilder = $em->getRepository('Newscoop\\Entity\\Article')\n            ->createQueryBuilder('a')\n            ->select('a', 'p', 'i', 's', 'l', 'u', 'ap')\n            ->leftJoin('a.packages', 'p')\n            ->leftJoin('a.issue', 'i')\n            ->leftJoin('a.section', 's')\n            ->leftJoin('a.language', 'l')\n            ->leftJoin('a.lockUser', 'u')\n            ->leftJoin('a.publication', 'ap');\n\n        $queryBuilder->where('a.number = :number')\n            ->setParameter('number', $number);\n\n        if (!is_null($language)) {\n            if (!is_numeric($language)) {\n                $queryBuilder->andWhere('l.code = :code')\n                    ->setParameter('code', $language);\n            } else {\n                $queryBuilder->andWhere('l.id = :id')\n                    ->setParameter('id', $language);\n            }\n        }\n\n        $query = $queryBuilder->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Get Articles for choosen topic.\n     *\n     * @param int  $publication\n     * @param int  $topicId\n     * @param int  $language\n     * @param bool $getResultAndCount\n     *\n     * @return \\Doctrine\\ORM\\Query\n     */\n    public function getArticlesForTopic($publication, $topicId, $language = false, $getResultAndCount = false, $order = null)\n    {\n        $em = $this->getEntityManager();\n\n        $queryBuilder = $em->getRepository('Newscoop\\Entity\\Article')\n            ->createQueryBuilder('a')\n            ->select('a', 'att', 'p', 'i', 's', 'l', 'u', 'ap')\n            ->leftJoin('a.packages', 'p')\n            ->leftJoin('a.issue', 'i')\n            ->leftJoin('a.section', 's')\n            ->leftJoin('a.language', 'l')\n            ->leftJoin('a.lockUser', 'u')\n            ->leftJoin('a.publication', 'ap')\n            ->where('att.id = :topicId')\n            ->join('a.topics', 'att')\n            ->setParameter('topicId', $topicId);\n\n        if ($order !== null) {\n            $queryBuilder->orderBy('a.published', $order);\n        }\n\n        $countQueryBuilder = $em->getRepository('Newscoop\\Entity\\Article')\n            ->createQueryBuilder('a')\n            ->select('count(a)')\n            ->where('att.id = :topicId')\n            ->join('a.topics', 'att')\n            ->setParameter('topicId', $topicId);\n\n        if ($language) {\n            $queryBuilder->andWhere('att.language = :language')->setParameter('language', $language);\n            $countQueryBuilder->andWhere('att.language = :language')->setParameter('language', $language);\n        }\n\n        $articlesCount = $countQueryBuilder->getQuery()->getSingleScalarResult();\n\n        $query = $queryBuilder->getQuery();\n        $query->setHint('knp_paginator.count', $articlesCount);\n\n        if ($getResultAndCount) {\n            return array(\n                'result' => $query->getResult(),\n                'count' => $articlesCount,\n            );\n        }\n\n        return $query;\n    }\n\n    /**\n     * Get Articles for author.\n     *\n     * @param \\Newscoop\\Entity\\Author $author\n     * @param \\Newscoop\\Criteria      $criteria\n     *\n     * @return \\Doctrine\\ORM\\Query\n     */\n    public function getArticlesForAuthor($author, \\Newscoop\\Criteria $criteria)\n    {\n        $em = $this->getEntityManager();\n        $queryBuilder = $em->getRepository('Newscoop\\Entity\\Article')\n            ->createQueryBuilder('a')\n            ->select('a')\n            ->where('au.id = :author')\n            ->andWhere('a.workflowStatus = :status')\n            ->join('a.authors', 'au')\n            ->setParameter('author', $author)\n            ->setParameter('status', 'Y');\n\n        if ($criteria->query) {\n            $queryBuilder\n                ->andWhere('a.name = :query')\n                ->setParameter('query', $criteria->query);\n        }\n\n        $countQueryBuilder = clone $queryBuilder;\n        $countQueryBuilder->select('COUNT(a)');\n\n        $queryBuilder->setMaxResults($criteria->maxResults);\n        $queryBuilder->setFirstResult($criteria->firstResult);\n\n        foreach ($criteria->orderBy as $key => $order) {\n            $key = 'a.'.$key;\n            $queryBuilder->orderBy($key, $order);\n        }\n\n        $articlesCount = $countQueryBuilder->getQuery()->getSingleScalarResult();\n\n        $query = $queryBuilder->getQuery();\n        $query->setHint('knp_paginator.count', $articlesCount);\n\n        return $query;\n    }\n\n    /**\n     * Get Articles for author per day for choosen period back from now.\n     *\n     * @param \\Newscoop\\Entity\\Author $author\n     * @param string                  $range\n     *\n     * @return \\Doctrine\\ORM\\Query\n     */\n    public function getArticlesForAuthorPerDay($author, $range = '-60 days')\n    {\n        $em = $this->getEntityManager();\n        $date = new \\DateTime();\n        $date->modify($range);\n\n        $queryBuilder = $em->getRepository('Newscoop\\Entity\\Article')\n            ->createQueryBuilder('a')\n            ->select('COUNT(a.number) as number', \"DATE_FORMAT(a.published, '%Y-%m-%d') as date\")\n            ->where('au.id = :author')\n            ->andWhere('a.workflowStatus = :status')\n            ->andWhere('a.published > :date')\n            ->join('a.authors', 'au')\n            ->setParameter('author', $author)\n            ->setParameter('status', 'Y')\n            ->setParameter('date', $date)\n            ->groupBy('date');\n\n        return $queryBuilder->getQuery();\n    }\n\n    /**\n     * Get Articles for chosen section.\n     *\n     * @param int           $publication\n     * @param int           $sectionNumber\n     * @param Language|null $sectionLanguage\n     *\n     * @return \\Doctrine\\ORM\\Query\n     */\n    public function getArticlesForSection($publication, $sectionNumber, $sectionLanguage = null)\n    {\n        $em = $this->getEntityManager();\n\n        $queryBuilder = $em->getRepository('Newscoop\\Entity\\Article')\n            ->createQueryBuilder('a')\n            ->where('a.sectionId = :sectionNumber')\n            ->andWhere('a.language = :sectionLanguage')\n            ->andWhere('a.publication = :publicationId')\n            ->setParameters(array(\n                'sectionNumber' => $sectionNumber,\n                'sectionLanguage' => $sectionLanguage,\n                'publicationId' => $publication,\n            ));\n\n        $qbCount = clone $queryBuilder;\n        $qbCount->select('count(a)');\n        $articlesCount = $qbCount->getQuery()->getSingleScalarResult();\n        $query = $queryBuilder->getQuery();\n        $query->setHint('knp_paginator.count', $articlesCount);\n\n        return $query;\n    }\n\n    /**\n     * Get number of articles assigned to Publication.\n     *\n     * @param int $publicationId\n     *\n     * @return \\Doctrine\\ORM\\Query\n     */\n    public function getArticlesCountForPublication($publicationId)\n    {\n        $articlesCount = $this->createQueryBuilder('a')\n            ->select('COUNT(a.number)')\n            ->andWhere('a.publication = :publicationId')\n            ->setParameter('publicationId', $publicationId)\n            ->getQuery();\n\n        return $articlesCount;\n    }\n\n    /**\n     * Get Articles for Playlist.\n     *\n     * @param int $publication\n     * @param int $playlistId\n     *\n     * @return \\Doctrine\\ORM\\Query\n     */\n    public function getArticlesForPlaylist($publication, $playlistId)\n    {\n        $em = $this->getEntityManager();\n\n        $queryBuilder = $em->getRepository('Newscoop\\Entity\\Article')\n            ->createQueryBuilder('a')\n            ->select('a', 'ap')\n            ->where('ap.id = :playlistId')\n            ->join('a.playlists', 'ap')\n            ->setParameter('playlistId', $playlistId);\n\n        $countQueryBuilder = $em->getRepository('Newscoop\\Entity\\Article')\n            ->createQueryBuilder('a')\n            ->select('count(a)')\n            ->where('ap.id = :playlistId')\n            ->join('a.playlists', 'ap')\n            ->setParameter('playlistId', $playlistId);\n\n        $articlesCount = $countQueryBuilder->getQuery()->getSingleScalarResult();\n\n        $query = $queryBuilder->getQuery();\n        $query->setHint('knp_paginator.count', $articlesCount);\n\n        return $query;\n    }\n\n    /**\n     * Get Article translations.\n     *\n     * @param int $articleNumber\n     * @param int $languageId\n     *\n     * @return \\Doctrine\\ORM\\Query\n     */\n    public function getArticleTranslations($articleNumber, $languageId)\n    {\n        $em = $this->getEntityManager();\n\n        $queryBuilder = $em->getRepository('Newscoop\\Entity\\Article')\n            ->createQueryBuilder('a')\n            ->select('a')\n            ->where('a.number = :number')\n            ->andWhere('a.language <> :language')\n            ->setParameters(array(\n                'number' => $articleNumber,\n                'language' => $languageId,\n            ));\n\n        $query = $queryBuilder->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Get articles for indexing.\n     *\n     * @param int $limit\n     *\n     * @return array\n     */\n    public function getIndexBatch($limit = 50)\n    {\n        $query = $this->createQueryBuilder('a')\n            ->where('a.indexed IS NULL')\n            ->orWhere('a.indexed < a.updated')\n            ->orderBy('a.indexed', 'asc')\n            ->setMaxResults($limit)\n            ->getQuery();\n\n        return $query->getResult();\n    }\n\n    /**\n     * Get articles for indexing.\n     *\n     * @param int   $count  Number of articles to index\n     * @param array $filter Filter to apply to articles\n     *\n     * @return array\n     */\n    public function getBatch($count = self::BATCH_COUNT, array $filter = null)\n    {\n        $qb = $this->createQueryBuilder('a');\n\n        if (is_null($filter)) {\n            $qb->where('a.indexed IS NULL')\n                ->orWhere('a.indexed < a.updated')\n                ->orderBy('a.number', 'DESC');\n        } else {\n            throw new IndexException('Filter is not implemented yet.');\n        }\n\n        if (is_numeric($count)) {\n            $qb->setMaxResults($count);\n        }\n\n        $batch = $qb->getQuery()\n            ->getResult();\n\n        return $batch;\n    }\n\n    /**\n     * Set indexed now.\n     *\n     * @param array $articles\n     */\n    public function setIndexedNow(array $articles)\n    {\n        $qb = $this->getEntityManager()->createQueryBuilder();\n        $qb = $qb->update('Newscoop\\Entity\\Article', 'a')\n                ->set('a.indexed', 'CURRENT_TIMESTAMP()');\n\n        if (!is_null($articles) && count($articles) > 0) {\n            $articleNumbers = array();\n\n            foreach ($articles as $article) {\n                $articleNumbers[] = $article->getNumber();\n            }\n\n            $qb = $qb->where($qb->expr()->in('a.number',  $articleNumbers));\n        }\n\n        return $qb->getQuery()->execute();\n    }\n\n    /**\n     * Set indexed null.\n     */\n    public function setIndexedNull(array $articles = null)\n    {\n        $qb = $this->getEntityManager()->createQueryBuilder();\n        $qb = $qb->update('Newscoop\\Entity\\Article', 'a')\n                ->set('a.indexed', 'NULL');\n\n        if (!is_null($articles) && count($articles) > 0) {\n            $articleNumbers = array();\n\n            foreach ($articles as $article) {\n                $articleNumbers[] = $article->getNumber();\n            }\n\n            $qb = $qb->where($qb->expr()->in('a.number',  $articleNumbers));\n        }\n\n        return $qb->getQuery()->execute();\n    }\n\n    /**\n     * Get articles count for user if is author.\n     *\n     * @param Newscoop\\Entity\\User $user\n     *\n     * @return int\n     */\n    public function countByAuthor(User $user)\n    {\n        $qb = $this->getEntityManager()->createQueryBuilder();\n        $qb->select('count(a)')\n            ->from('Newscoop\\Entity\\Article', 'a')\n            ->from('Newscoop\\Entity\\ArticleAuthor', 'aa')\n            ->from('Newscoop\\Entity\\User', 'u')\n            ->where('a.number = aa.articleNumber')\n            ->andWhere('a.language = aa.languageId')\n            ->andWhere('aa.author = u.author')\n            ->andwhere('u.id = :user')\n            ->andWhere($qb->expr()->in('a.type', array('news', 'blog')))\n            ->andWhere('a.workflowStatus = :status')\n            ->setParameters(array(\n                'user' => $user->getId(),\n                'status' => Article::STATUS_PUBLISHED,\n            ));\n\n        $count = $qb->getQuery()->getSingleScalarResult();\n\n        return (int) $count;\n    }\n\n    /**\n     * Get new minimal article order value.\n     *\n     * @param int $publication\n     * @param int $issue\n     * @param int $section\n     *\n     * @return \\Doctrine\\ORM\\Query\n     */\n    public function getMinArticleOrder($publication = null, $issue = null, $section = null)\n    {\n        $qb = $this->getEntityManager()->createQueryBuilder();\n\n        $qb->select('MIN(a.articleOrder)')\n            ->from('Newscoop\\Entity\\Article', 'a');\n\n        if ($publication) {\n            $qb->andWhere('a.publication = :publication')\n                ->setParameter('publication', $publication);\n        }\n\n        if ($issue) {\n            $qb->andWhere('a.issueId = :issue')\n                ->setParameter('issue', $issue->getId());\n        }\n\n        if ($section) {\n            $qb->andWhere('a.sectionId = :section')\n                ->setParameter('section', $section->getId());\n        }\n\n        return $qb->getQuery();\n    }\n\n    /**\n     * Update article order.\n     *\n     * @param int $increment\n     * @param int $publication\n     * @param int $issue\n     * @param int $section\n     *\n     * @return \\Doctrine\\ORM\\Query\n     */\n    public function updateArticleOrder($increment, $publication = null, $issue = null, $section = null)\n    {\n        $qb = $this->getEntityManager()->createQueryBuilder('a');\n\n        $qb->update('Newscoop\\Entity\\Article', 'a');\n\n        if ($publication) {\n            $qb->andWhere('a.publication = :publication')\n                ->setParameter('publication', $publication);\n        }\n\n        if ($issue) {\n            $qb->andWhere('a.issueId = :issue')\n                ->setParameter('issue', $issue->getId());\n        }\n\n        if ($section) {\n            $qb->andWhere('a.sectionId = :section')\n                ->setParameter('section', $section->getId());\n        }\n\n        $qb->set('a.articleOrder', 'a.articleOrder + :increment')\n            ->setParameter('increment', $increment);\n\n        return $qb->getQuery();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/ArticleTopicRepository.php",
    "content": "<?php\n\n/**\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository;\n\nclass ArticleTopicRepository extends EntityRepository\n{\n    /**\n     * Get all topics for an Article - Topic and article objects.\n     *\n     * @param int|string $articleNumber Article number\n     * @param bool       $topicsOnly    If get only topics in the result\n     *\n     * @return Doctrine\\ORM\\Query\n     */\n    public function getArticleTopicsIds($articleNumber, $topicsOnly = false)\n    {\n        $queryBuilder = $this->createQueryBuilder('at');\n\n        if ($topicsOnly) {\n            $queryBuilder->select('IDENTITY(at.topic)');\n        }\n\n        $queryBuilder->where('at.article = :articleNumber')\n            ->setParameter('articleNumber', $articleNumber);\n\n        $query = $queryBuilder->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Get all topics for an Article.\n     *\n     * @param int|string $articleNumber Article number\n     * @param string     $languageCode  Article's language code\n     *\n     * @return Doctrine\\ORM\\Query\n     */\n    public function getAllArticleTopics($articleNumber, $languageCode)\n    {\n        $languageId = $this->_em->getRepository('Newscoop\\Entity\\Language')\n                ->findOneByCode($languageCode);\n\n        $qb = $this->createQueryBuilder('at')\n            ->select('at', 't')\n            ->leftJoin('at.article', 'a')\n            ->leftJoin('at.topic', 't')\n            ->leftJoin('t.translations', 'tt')\n            ->where('at.article = :articleNumber')\n            ->andWhere('a.language = :languageId')\n            ->setParameters(array(\n                'articleNumber' => $articleNumber,\n                'languageId' => $languageId,\n            ));\n\n        $countQueryBuilder = clone $qb;\n        $countQueryBuilder->select('COUNT(at)');\n\n        $count = $countQueryBuilder->getQuery()->getSingleScalarResult();\n        $query = $qb->getQuery();\n        $query = $this->_em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')->setTranslatableHint($query, $languageCode);\n        $query->setHint('knp_paginator.count', $count);\n\n        return $query;\n    }\n\n    /**\n     * Gets the occurence of the topic.\n     *\n     * @param string|int $topicId Topic id\n     *\n     * @return Doctrine\\ORM\\Query\n     */\n    public function getTheOccurrenceOfTheTopic($topicId)\n    {\n        $query = $this->createQueryBuilder('t')\n            ->select('count(t)')\n            ->where('t.topic = :topicId')\n            ->setParameter('topicId', $topicId)\n            ->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Count article topics by given criteria.\n     *\n     * @param array $criteria\n     *\n     * @return int\n     */\n    public function countBy(array $criteria = array())\n    {\n        $queryBuilder = $this->createQueryBuilder('t')\n            ->select('COUNT(t)');\n\n        foreach ($criteria as $property => $value) {\n            if (!is_array($value)) {\n                $queryBuilder->andWhere(\"t.$property = :$property\")\n                    ->setParameter($property, $value);\n            }\n        }\n\n        $query = $queryBuilder->getQuery();\n\n        return (int) $query->getSingleScalarResult();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/ArticleTypeFieldRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository;\n\n/**\n * ArticleType repository\n */\nclass ArticleTypeFieldRepository extends EntityRepository\n{\n    public function getFieldsForType($type)\n    {\n        $qb = $this->_em->createQueryBuilder();\n        $qb ->select('atf')\n            ->from('\\Newscoop\\Entity\\ArticleTypeField', 'atf')\n            ->where(\"atf.typeHack = ?1 AND atf.name IS NOT NULL AND atf.name <> 'NULL'\" )\n            ->setParameter(1, $type->getName());\n\n        return $qb->getQuery();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/ArticleTypeRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository;\n\n/**\n * ArticleType repository\n */\nclass ArticleTypeRepository extends EntityRepository\n{\n    public function getAllTypes()\n    {\n        $qb = $this->_em->createQueryBuilder();\n\n        $qb ->select('at')\n            ->from('\\Newscoop\\Entity\\ArticleType', 'at' )\n            ->where(\"at.fieldName IS NULL OR at.fieldName = 'NULL'\" );\n\n        $countQueryBuilder = clone $qb;\n        $countQueryBuilder->select('COUNT(at)');\n\n        $count = $countQueryBuilder->getQuery()->getSingleScalarResult();\n\n        $query = $qb->getQuery();\n        $query->setHint('knp_paginator.count', $count);\n\n        return $query;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/AttachmentRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository;\nuse Newscoop\\Entity\\Attachment;\nuse Newscoop\\Entity\\Translation;\nuse Doctrine\\ORM\\Query;\n\n/**\n * Attrachment Repository\n */\nclass AttachmentRepository extends EntityRepository\n{\n    /**\n     * Get all attachments\n     *\n     * @return Query\n     */\n    public function getAttachments()\n    {\n        $query = $this->createQueryBuilder('i')\n            ->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Get single attachment by id\n     *\n     * @param int $number\n     *\n     * @return Query\n     */\n    public function getAttachment($number)\n    {\n        $query = $this->createQueryBuilder('a')\n            ->andWhere('a.id = :number')\n            ->setParameter('number', $number)\n            ->getQuery();\n\n        return $query;\n\n    }\n\n    /**\n     * Get attachment decritpion\n     * @param int $attachmentId\n     *\n     * @return Translation\n     */\n    public function getDescription($attachmentId)\n    {\n        $em = $this->getEntityManager();\n\n        $attachment = $em->getRepository('Newscoop\\Entity\\Attachment')\n            ->findOneById($attachmentId);\n\n        $description = $em->getRepository('Newscoop\\Entity\\Translation')\n            ->findBy(array(\n                'phraseId' => $attachment->getDescriptionId(),\n                'language' => $attachment->getLanguage()\n            ));\n\n        return $description;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/AuditRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository,\n    Newscoop\\Entity\\AuditEvent;\n\n/**\n * Audit repository.\n */\nclass AuditRepository extends EntityRepository\n{\n    public function save(AuditEvent $event, array $values)\n    {\n        $em = $this->getEntityManager();\n\n        $event->setResourceId($values['resource_id']);\n        $event->setResourceType($values['resource_type']);\n        $event->setResourceTitle($values['resource_title']);\n        $event->setResourceDiff($values['resource_diff']);\n        $event->setAction($values['action']);\n\n        if (!empty($values['user'])) {\n            $user = is_int($values['user']) ? $em->getReference('Newscoop\\Entity\\User', $values['user']) : $values['user'];\n            $event->setUser($user);\n        }\n\n        $em->persist($event);\n        $em->flush();\n    }\n    \n    /**\n     * Get event count\n     *\n     * @param array $criteria\n     * @return int\n     */\n    public function countBy(array $criteria)\n    {\n        $queryBuilder = $this->getEntityManager()->createQueryBuilder()\n            ->select('COUNT(a)')\n            ->from($this->getEntityName(), 'a');\n\n        foreach ($criteria as $property => $value) {\n            if (!is_array($value)) {\n                $queryBuilder->andWhere(\"a.$property = :$property\");\n            }\n        }\n\n        $query = $queryBuilder->getQuery();\n        foreach ($criteria as $property => $value) {\n            if (!is_array($value)) {\n                $query->setParameter($property, $value);\n            }\n        }\n\n        return (int) $query->getSingleScalarResult();\n    }\n\n    /**\n     * Get events to archive\n     *\n     * @param DateTime $date\n     * @return array\n     */\n    public function getFlushableEvents(\\DateTime $date)\n    {\n        $date = $date->format('Y-m-d H:i:s');\n\n        $query = $this->getEntityManager()->createQueryBuilder()\n            ->select('e')\n            ->from($this->getEntityName(), 'e')\n            ->where('e.created < :when')\n            ->setParameters(array('when' => $date));\n\n        return $query->getQuery()->getResult();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/AuthorRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\Query;\nuse Newscoop\\Datatable\\Source as DatatableSource;\n\n/**\n * Author repository\n */\nclass AuthorRepository extends DatatableSource\n{\n    /**\n     * Get Author by Id\n     *\n     * @param integer $id\n     *\n     * @return Query\n     */\n    public function getAuthor($id)\n    {\n        $em = $this->getEntityManager();\n\n        $queryBuilder = $em->getRepository('Newscoop\\Entity\\Author')\n            ->createQueryBuilder('a');\n\n        $queryBuilder->where('a.id = :id')\n            ->setParameter('id', $id);\n\n        $query = $queryBuilder->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Perform a query\n     *\n     * @param string $query\n     * @param array  $sort\n     *\n     * @return Query\n     */\n    public function searchAuthors($query, $sort = array())\n    {\n        $em = $this->getEntityManager();\n        $qb = $em->getRepository('Newscoop\\Entity\\Author')->createQueryBuilder('a');\n        $orX = $qb->expr()->orx();\n\n        $orX->add($qb->expr()->like('a.first_name', $qb->expr()->literal(\"%{$query}%\")));\n        $orX->add($qb->expr()->like('a.last_name', $qb->expr()->literal(\"%{$query}%\")));\n        $qb->andWhere($orX);\n\n        if ((!empty($sort)) && is_array($sort)) {\n            foreach ($sort as $sortColumn => $sortDir) {\n                $qb->addOrderBy('a.'.$sortColumn, $sortDir);\n            }\n        }\n\n        return $qb->getQuery();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/AuthorTypeRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository;\n\n/**\n * AuthorType repository\n */\nclass AuthorTypeRepository extends EntityRepository\n{\n    public function getAuthorsTypes()\n    {\n        $qb = $this->createQueryBuilder('at');\n\n        return $qb->getQuery();\n    }\n\n    public function getAuthorType($id)\n    {\n        $qb = $this->createQueryBuilder('at')\n            ->where('at.id = :id')\n            ->setParameter('id', $id);\n\n        return $qb->getQuery();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/AutoIdRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository;\nuse Doctrine\\ORM\\QueryBuilder;\n\n/**\n * Author repository\n */\nclass AutoIdRepository extends EntityRepository\n{\n\n    /**\n     * Get next translations phrase Id.\n     *\n     * @return integer\n     */\n    public function getNextTranslationPhraseId()\n    {\n        $em = $this->getEntityManager();\n        $result = $em->getRepository('Newscoop\\Entity\\AutoId')->findAll();\n        $autoId = $result[0];\n\n        $autoId->setTranslationPhraseId($autoId->getTranslationPhraseId()+1);\n        $em->flush();\n\n        return $autoId->getTranslationPhraseId();\n    }\n\n    /**\n     * Get next article number\n     *\n     * @return integer\n     */\n    public function getNextArticleNumber()\n    {\n        $em = $this->getEntityManager();\n        $result = $em->getRepository('Newscoop\\Entity\\AutoId')->findAll();\n        $autoId = $result[0];\n\n        $autoId->setArticleId($autoId->getArticleId()+1);\n        $em->flush();\n\n        return $autoId->getArticleId();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/Comment/AcceptanceRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Repository\\Comment;\n\nuse\n    InvalidArgumentException,\n    DateTime,\n    Doctrine\\ORM\\EntityRepository,\n    Doctrine\\ORM\\QueryBuilder,\n    Newscoop\\Datatable\\Source as DatatableSource,\n    Newscoop\\Entity\\Comment\\Acceptance,\n    Newscoop\\Entity\\Comment\\Commenter,\n    Newscoop\\Entity\\Publication;\n\n/**\n * Comment Acceptance repository\n */\nclass AcceptanceRepository extends DatatableSource\n{\n    /**\n     * Save a acceptance criteria\n     *\n     * @param Newscoop\\Entity\\Comment\\Acceptance $p_acceptance\n     * @param array $p_values\n     * @return void\n     */\n    public function save(Acceptance $p_acceptance, array $p_values)\n    {\n\n        $em = $this->getEntityManager();\n\n        if(is_numeric($p_values['forum']))\n        {\n            $publicationRepository = $em->getRepository('Newscoop\\Entity\\Publication');\n            $forum = $publicationRepository->find($p_values['forum']);\n        }\n        else\n            $forum = $p_values['forum'];\n        $p_acceptance->setSearch($p_values['search'])\n                     ->setSearchType($p_values['search_type'])\n                     ->setType($p_values['type'])\n                     ->setForColumn($p_values['for_column']);\n        if(!is_null($forum)) {\n            $p_acceptance->setForum($forum);\n        }\n        $em->persist($p_acceptance);\n    }\n\n\n    /**\n     * Method that removes ban for a user\n     *\n     * @param array $p_params\n     */\n    public function unban($p_forum, array $p_params)\n    {\n        foreach($p_params as $key => $value)\n        {\n            $value = array(\n                'forum' => $p_forum,\n                'search' => $value,\n                'for_column' => $key,\n                'type' => 'deny',\n                'search_type' => 'normal'\n            );\n            $value = $this->setEntity($value);\n            $acceptance = $this->findBy( $value );\n            if(count($acceptance)>0)\n                $this->delete($acceptance[0]);\n        }\n    }\n\n    /**\n     * Method that adds ban for a user\n     *\n     * @param array $p_params\n     */\n    public function ban($p_forum, array $p_params)\n    {\n        foreach($p_params as $key => $value)\n        {\n            $value = array(\n                'forum' => $p_forum,\n                'search' => $value,\n                'for_column' => $key,\n                'type' => 'deny',\n                'search_type' => 'normal'\n            );\n            if($this->matched($value))\n                return;\n            $this->save(new Acceptance, $value);\n\n        }\n    }\n\n    /**\n     * Get the setters for the entity\n     *\n     * @param array $p_params\n     * @return array $p_params\n     */\n    private function setEntity(array $p_params)\n    {\n        // properies don't go to setters or getters\n        if(!is_numeric($p_params['for_column']))\n        {\n            $rev = array_flip(Acceptance::$for_column_enum);\n            $p_params['for_column'] = $rev[$p_params['for_column']];\n        }\n        if(!is_numeric($p_params['type']))\n        {\n            $rev = array_flip(Acceptance::$type_enum);\n            $p_params['type'] = $rev[$p_params['type']];\n        }\n        if(!is_numeric($p_params['search_type']))\n        {\n            $rev = array_flip(Acceptance::$search_type_enum);\n            $p_params['search_type'] = $rev[$p_params['search_type']];\n        }\n        if(!is_numeric($p_params['forum']) && !is_null($p_params['forum']))\n        {\n            $p_params['forum'] = $p_params['forum']->getId();\n        }\n        return $p_params;\n    }\n\n    public function matched(array $p_params)\n    {\n        // this is for simple match if all search_type are normal\n        // @todo implement later regex\n        $p_params = $this->setEntity($p_params);\n        $results = $this->findBy( $p_params );\n        if(count($results)>0)\n            return true;\n        return false;\n    }\n\n    /**\n     * Method that search for if a params are banned\n     *\n     * @param $p_name\n     * @param $p_email\n     * @param $p_ip\n     * @param $p_forum\n     * @return bool\n     */\n    public function checkParamsBanned($p_name, $p_email, $p_ip, $p_forum)\n    {\n        $params = array( 'name' => $p_name, 'email' => $p_email, 'ip' => $p_ip);\n        $return = $this->checkBanned($params, $p_forum);\n        if (!empty($return['name']) || !empty($return['email']) || !empty($return['ip']))\n            return true;\n        else\n            return false;\n    }\n\n    /**\n     * Method that search for if a commenter is banned\n     *\n     * @param $p_commenter\n     * @param $p_forum\n     * @return array\n     */\n    public function isBanned($p_commenter, $p_forum)\n    {\n        $params = array(\n            'name' => $p_commenter->getName(),\n            'email' => $p_commenter->getEmail(),\n            'ip' => $p_commenter->getIp()\n        );\n        return $this->checkBanned($params, $p_forum);\n    }\n\n    /**\n     * Method that checks for if a commenter is banned\n     *\n     * @param mixed $p_params\n     */\n    public function checkBanned($p_params, $p_forum)\n    {\n            $return = array();\n\n            if (array_key_exists('name', $p_params)) {\n                $name = array(\n                    'forum' => $p_forum,\n                    'search' => $p_params['name'],\n                    'for_column' => 'name',\n                    'type' => 'deny',\n                    'search_type' => 'normal'\n                );\n                $return['name'] = $this->matched($name);\n            }\n\n            if (array_key_exists('email', $p_params)) {\n                $email = array(\n                    'forum' => $p_forum,\n                    'search' => $p_params['email'],\n                    'for_column' => 'email',\n                    'type' => 'deny',\n                    'search_type' => 'normal'\n                );\n                $return['email'] = $this->matched($email);\n            }\n\n            if (array_key_exists('ip', $p_params)) {\n                $ip = array(\n                    'forum' => $p_forum,\n                    'search' => $p_params['ip'],\n                    'for_column' => 'ip',\n                    'type' => 'deny',\n                    'search_type' => 'normal'\n                );\n                $return['ip'] = $this->matched($ip);\n            }\n\n            return $return;\n    }\n\n    /**\n     * Method that save banned for a commenter\n     *\n     * @param Commenter $p_commenter\n     */\n    public function saveBanned(Commenter $p_commenter, $p_forum, $p_values)\n    {\n        $unban = array();\n        $ban = array();\n        if($p_values['name'])\n            $ban['name'] = $p_commenter->getName();\n        else\n            $unban['name'] = $p_commenter->getName();\n\n        if($p_values['email'])\n            $ban['email'] = $p_commenter->getEmail();\n        else\n            $unban['email'] = $p_commenter->getEmail();\n\n        if($p_values['ip'])\n            $ban['ip'] = $p_commenter->getIp();\n        else\n            $unban['ip'] = $p_commenter->getIp();\n\n        $this->ban($p_forum, $ban);\n        $this->unban($p_forum, $unban);\n    }\n\n    /**\n     * Delete user\n     *\n     * @param Newscoop\\Entity\\Comment\\Acceptance $user\n     * @return void\n     */\n    public function delete(Acceptance $p_acceptance)\n    {\n        $em = $this->getEntityManager();\n        $em->remove($p_acceptance);\n    }\n\n    /**\n     * Flush mechanism\n     */\n    public function flush()\n    {\n        $this->getEntityManager()->flush();\n    }\n\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/Comment/CommenterRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Repository\\Comment;\n\nuse\n    InvalidArgumentException,\n    DateTime,\n    Doctrine\\ORM\\EntityRepository,\n    Doctrine\\ORM\\QueryBuilder,\n    Newscoop\\Entity\\Comment\\Commenter,\n    Newscoop\\Datatable\\Source as DatatableSource;\n\n/**\n * Comments author repository\n */\nclass CommenterRepository extends DatatableSource\n{\n    /**\n     * Method for geting a commenter\n     *\n     * @param Newscoop\\Entity\\Comment\\Commenter $p_entity\n     * @param array $p_values\n     * @return Newscoop\\Entity\\Comment\\Commenter $p_entity\n     */\n    public function save($p_entity, array $p_values)\n    {\n\n        $keys = array('user','name','email');\n        $set = false;\n        for($i=0;$i<count($keys);$i++)\n            $set = $set || (isset($p_values[$keys[$i]]) && !empty($p_values[$keys[$i]]));\n        if(!$set)\n            throw new InvalidArgumentException();\n\n        $em = $this->getEntityManager();\n        if(!empty($p_values['user']))\n        {\n            if(is_numeric($p_values['user'])) {\n                $userRepository = $em->getRepository('Newscoop\\Entity\\User');\n                $p_values['user'] = $userRepository->find($p_values['user']);\n            }\n            if($p_values['user'])\n            {\n                $p_entity->setUser($p_values['user']);\n                if(empty($p_values['name']))\n                    $p_values['name'] = $p_values['user']->getName();\n                if(empty($p_values['email']))\n                    $p_values['email'] = $p_values['user']->getEmail();\n           }\n        }\n        $commenter = $this->findOneBy(array( 'email' => $p_values['email'], 'name' => $p_values['name']));\n        if ($commenter)\n            $p_entity = $commenter;\n\n        if(!isset($p_values['url']))\n            $p_values['url'] = '';\n        $p_entity->setName($p_values['name'])\n                 ->setEmail($p_values['email'])\n                 ->setUrl($p_values['url'])\n                 ->setIp($p_values['ip'])\n                 ->setTimeCreated($p_values['time_created']);\n\n        $em->persist($p_entity);\n        return $p_entity;\n    }\n\n    /**\n     * Delete a commenter\n     *\n     * @param Newscoop\\Entity\\Comment\\Commenter $p_commenter\n     * @param array $p_values\n     * @return void\n     */\n    public function delete(Commenter $p_commenter, $p_values)\n    {\n        $em = $this->getEntityManager();\n        $q = $em->createQueryBuilder();\n        /** @todo have inverse cascade delete or somethig for this */\n        $q->select(\"cc\")\n        ->from('Newscoop\\Entity\\Comment\\Commenter','cc')\n        ->where('cc.id = :id')\n            ->setParameter('id', $p_commenter->getId());\n        if(!empty($p_values['name'])) {\n            $q->orWhere('cc.name = :name')\n                    ->setParameter('name', $p_commenter->getName());\n        }\n        if(!empty($p_values['ip'])) {\n            $q->orWhere('cc.ip = :ip')\n                    ->setParameter('ip', $p_commenter->getIp());\n        }\n        if(!empty($p_values['email'])) {\n            $q->orWhere('cc.email = :email')\n                    ->setParameter('email', $p_commenter->getEmail());\n        }\n        $commenters = $q->getQuery()->getResult();\n        foreach($commenters as $commenter) {\n            $qq = $em->createQueryBuilder();\n            $qq->delete()\n            ->from('Newscoop\\Entity\\Comment','c')\n            ->where('c.commenter = :commenter')\n                ->setParameter('commenter',$commenter->getId());\n            $qq->getQuery()->execute();\n            $em->remove($commenter);\n        }\n    }\n\n    public function flush()\n    {\n        $this->getEntityManager()->flush();\n    }\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/CommentRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\Query\\Expr;\nuse Doctrine\\ORM\\QueryBuilder;\nuse Newscoop\\Entity\\Comment;\nuse Newscoop\\Entity\\Comment\\Commenter;\nuse Newscoop\\Datatable\\Source as DatatableSource;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\Search\\RepositoryInterface;\nuse Newscoop\\NewscoopException\\IndexException;\n\n/**\n * Comment repository\n */\nclass CommentRepository extends DatatableSource implements RepositoryInterface\n{\n\n    /**\n     * Get new instance of the comment\n     *\n     * @return \\Newscoop\\Entity\\Comment\n     */\n    public function getPrototype()\n    {\n        return new Comment;\n    }\n\n    /**\n     * Get comments for article\n     *\n     * @param int    $article  Article number\n     * @param string $language Language code in format \"en\" for example.\n     *\n     * @return Doctrine\\ORM\\Query Query\n     */\n    public function getArticleComments($article, $language, $recommended = false, $getDeleted = true, $showHidden = true, $sort = array())\n    {\n        $em = $this->getEntityManager();\n        $languageId = $em->getRepository('Newscoop\\Entity\\Language')\n                ->findOneByCode($language);\n\n        $queryBuilder = $em->getRepository('Newscoop\\Entity\\Comment')\n            ->createQueryBuilder('c')\n            ->where('c.thread = :thread')\n            ->andWhere('c.language = :language')\n            ->setParameters(array(\n                'thread' => $article,\n                'language' => $languageId->getId()\n            ));\n\n        if (is_array($sort) && count($sort) > 0) {\n            foreach ($sort as $field => $dir) {\n                if (in_array($dir, array('asc', 'desc'))) {\n                    $queryBuilder->addOrderBy('c.'.$field, $dir);\n                }\n            }\n        } else {\n            $queryBuilder->orderBy('c.time_created', 'desc');\n        }\n\n        if ($recommended) {\n            $queryBuilder->andWhere('c.recommended = 1');\n        }\n\n        if (!$getDeleted) {\n            $queryBuilder->andWhere('c.status != :status')\n                ->setParameter('status', Comment::STATUS_DELETED);\n        }\n\n        if (!$showHidden) {\n            $queryBuilder->andWhere('c.status != :status')\n                ->setParameter('status', Comment::STATUS_HIDDEN);\n        }\n\n        $query = $queryBuilder->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Get all comments query\n     *\n     * @return Query\n     */\n    public function getComments($getDeleted = true, $showHidden = true)\n    {\n        $em = $this->getEntityManager();\n\n        $queryBuilder = $em->getRepository('Newscoop\\Entity\\Comment')\n            ->createQueryBuilder('c');\n\n        if (!$getDeleted) {\n            $queryBuilder->andWhere('c.status != :status')\n                ->setParameter('status', Comment::STATUS_DELETED);\n        }\n\n        if (!$showHidden) {\n            $queryBuilder->andWhere('c.status != :status')\n                ->setParameter('status', Comment::STATUS_HIDDEN);\n        }\n\n        $query = $queryBuilder->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Get single comment query\n     *\n     * @param int $id\n     *\n     * @return Query\n     */\n    public function getComment($id, $getDeleted = true)\n    {\n        $em = $this->getEntityManager();\n\n        $queryBuilder = $em->getRepository('Newscoop\\Entity\\Comment')\n            ->createQueryBuilder('c')\n            ->andWhere('c.id = :id')\n            ->setParameter('id', $id);\n\n        if (!$getDeleted) {\n            $queryBuilder->andWhere('c.status != :status')\n                ->setParameter('status', Comment::STATUS_DELETED);\n        }\n\n        $query = $queryBuilder->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Method for setting status\n     *\n     * @param  array  $p_comment_ids\n     * @param  string $p_status\n     * @return void\n     */\n    public function setStatus(array $p_comment_ids, $p_status)\n    {\n        $comments = array();\n        foreach (array_unique($p_comment_ids) as $comment_id) {\n            $one_comment = $this->find($comment_id);\n            if (!empty($one_comment)) {\n                $comments[] = $one_comment;\n            }\n        }\n\n        if ('deleted' == $p_status) {\n            foreach ($comments as $one_comment) {\n                $one_comment->setParent();\n            }\n        }\n\n        foreach ($comments as $one_comment) {\n            $this->setCommentStatus($one_comment, $p_status);\n        }\n    }\n\n    /**\n     * Method for setting status per article\n     *\n     * @param  int    $p_article\n     * @param  string $p_status\n     * @return void\n     */\n    public function setArticleStatus($p_article, $p_language, $p_status)\n    {\n        $em = $this->getEntityManager();\n        $params = array('thread' => $p_article, 'language' => $p_language);\n        if ($p_status == 'hidden') {\n            $params['status'] = 0;\n        } elseif ($p_status == 'approved') {\n            $params['status'] = 2;\n        }\n        $comments = $this->findBy($params);\n        foreach ($comments as $comment) {\n            $this->setCommentStatus($comment, $p_status);\n        }\n\n    }\n\n    /**\n     * Method for setting status for a comment\n     * @param  \\Newscoop\\Entity\\Comment $p_comment\n     * @param  string                   $p_status\n     * @return void\n     */\n    private function setCommentStatus(Comment $p_comment, $p_status)\n    {\n        $em = $this->getEntityManager();\n        if ($p_status == 'deleted') {\n            $em->remove($p_comment);\n        } else {\n            $p_comment->setStatus($p_status);\n            $em->persist($p_comment);\n        }\n\n        $em->flush();\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('comment');\n\n        $user = $p_comment->getCommenter()->getUser();\n\n        if ($user instanceof User) {\n            $em->getRepository('Newscoop\\Entity\\User')->setUserPoints($user);\n        }\n    }\n\n    /**\n     * Method for recommending a comment\n     *\n     * @param array   $commentIds\n     * @param integer $recommended\n     *\n     * @return void\n     */\n    public function setRecommended(array $commentIds, $recommended)\n    {\n        foreach ($commentIds as $commentId) {\n            $this->setCommentRecommended($this->find($commentId), $recommended);\n        }\n    }\n\n    /**\n     * Method for setting recommended for a comment\n     *\n     * @param \\Newscoop\\Entity\\Comment $comment\n     * @param string                   $recommended\n     *\n     * @return void\n     */\n    public function setCommentRecommended(Comment $comment, $recommended)\n    {\n        $em = $this->getEntityManager();\n        $comment->setRecommended($recommended);\n        $em->persist($comment);\n    }\n\n    /**\n     * Method for update a comment\n     *\n     * @param Comment $comment\n     * @param array   $values\n     *\n     * @return Comment $enitity\n     */\n    public function update(Comment $comment, $values)\n    {\n        if (array_key_exists('subject', $values) && !is_null($values['subject'])) {\n            $comment->setSubject($values['subject']);\n        }\n        if (array_key_exists('message', $values) && !is_null($values['message'])) {\n            $comment->setMessage($values['message']);\n        }\n        if (array_key_exists('recommended', $values) && !is_null($values['recommended'])) {\n            $comment->setRecommended($values['recommended']);\n        }\n        if (array_key_exists('status', $values) && !is_null($values['status'])) {\n            $comment->setStatus($values['status']);\n        }\n        $comment->setTimeUpdated(new \\DateTime());\n\n        return $comment;\n    }\n\n    /**\n     * Method for saving a comment\n     *\n     * @param Comment $entity\n     * @param array   $values\n     *\n     * @return Comment\n     */\n    public function save(Comment $entity, $values)\n    {\n        $values += array('recommended' => false);\n        $em = $this->getEntityManager();\n\n        $commenterRepository = $em->getRepository('Newscoop\\Entity\\Comment\\Commenter');\n\n        $commenter = new Commenter();\n        $commenter = $commenterRepository->save($commenter, $values);\n\n        $entity->setCommenter($commenter)\n            ->setSubject($values['subject'])\n            ->setMessage($values['message'])\n            ->setStatus($values['status'])\n            ->setIp($values['ip'])\n            ->setTimeCreated($values['time_created'])\n            ->setRecommended($values['recommended']);\n\n        if (array_key_exists('source', $values)) {\n            $entity->setSource($values['source']);\n        }\n\n        $threadLevel = 0;\n\n        if (!empty($values['parent']) && (0 != $values['parent'])) {\n            $parent = $this->find($values['parent']);\n            // set parent of the comment\n            $entity\n                ->setParent($parent)\n                ->setLanguage($parent->getLanguage())\n                ->setForum($parent->getForum())\n                ->setThread($parent->getThread());\n            /**\n             * get the maximum thread order from the current parent\n             */\n            $qb = $this->createQueryBuilder('c');\n            $threadOrder =\n            $qb->select('MAX(c.thread_order)')\n                    ->andwhere('c.parent = :parent')\n                    ->andWhere('c.thread = :thread')\n                    ->andWhere('c.language = :language')\n                    ->setParameter('parent', $parent)\n                    ->setParameter('thread', $parent->getThread())\n                    ->setParameter('language', $parent->getLanguage()->getId());\n\n            $threadOrder = $threadOrder->getQuery()->getSingleScalarResult();\n            // if the comment parent doesn't have children then use the parent thread order\n            if (empty($threadOrder)) {\n                $threadOrder = $parent->getThreadOrder();\n            }\n            $threadOrder += 1;\n            /**\n             * update all the comment for the thread where thread order is less or equal\n             * of the current thread_order\n             */\n            $qb = $this->createQueryBuilder('c');\n            $qb->update()\n               ->set('c.thread_order',  'c.thread_order+1')\n               ->andwhere('c.thread_order >= :thread_order')\n               ->andWhere('c.thread = :thread')\n               ->andWhere('c.language = :language')\n                    ->setParameter('language', $parent->getLanguage()->getId())\n                    ->setParameter('thread', $parent->getThread())\n                    ->setParameter('thread_order', $threadOrder);\n            $qb->getQuery()->execute();\n            // set the thread level the thread level of the parent plus one the current level\n            $threadLevel = $parent->getThreadLevel() + 1;\n        } else {\n            $languageRepository = $em->getRepository('Newscoop\\Entity\\Language');\n\n            if (is_numeric($values['language'])) {\n                $language = $languageRepository->findOneById($values['language']);\n            } else {\n                $language = $languageRepository->findOneByCode($values['language']);\n            }\n\n            $articleRepository = $em->getRepository('Newscoop\\Entity\\Article');\n            $thread = $articleRepository->find(array('number' => $values['thread'], 'language' => $language->getId()));\n\n            $query = $this->createQueryBuilder('c')\n                ->select('MAX(c.thread_order)')\n                ->where('c.thread = :thread')\n                ->andWhere('c.language = :language')\n                ->setParameter('thread', $thread->getNumber())\n                ->setParameter('language', $language->getId())\n                ->getQuery();\n\n            // increase by one of the current comment\n            $threadOrder = $query->getSingleScalarResult() + 1;\n\n            $entity\n                ->setLanguage($language)\n                ->setForum($thread->getPublication())\n                ->setThread($thread->getNumber());\n        }\n\n        $entity->setThreadOrder($threadOrder)->setThreadLevel($threadLevel);\n        $em->persist($entity);\n\n        $user = $commenter->getUser();\n        if ($user instanceof User) {\n            $em->getRepository('Newscoop\\Entity\\User')->setUserPoints($user);\n        }\n\n        return $entity;\n    }\n\n    /**\n     * Get data for table\n     *\n     * @param  array     $p_params\n     * @param  array     $cols\n     * @return Comment[]\n     */\n    public function getData(array $p_params, array $p_cols)\n    {\n        $qb = $this->createQueryBuilder('e');\n        $qb->from('Newscoop\\Entity\\Comment\\Commenter', 'c')\n                ->from('Newscoop\\Entity\\Article', 'a');\n        $andx = $qb->expr()->andx();\n        $andx->add($qb->expr()->eq('e.language', new Expr\\Literal('a.language')));\n        $andx->add($qb->expr()->eq('e.thread', new Expr\\Literal('a.number')));\n        $andx->add($qb->expr()->eq('e.commenter', new Expr\\Literal('c.id')));\n\n        if (!empty($p_params['sSearch'])) {\n            $this->buildWhere($p_cols, $p_params['sSearch'], $qb, $andx);\n        }\n\n        if (!empty($p_params['sFilter'])) {\n            $this->buildFilter($p_cols, $p_params['sFilter'], $qb, $andx);\n        }\n\n        // sort\n        if (isset($p_params[\"iSortCol_0\"])) {\n            $cols = array_keys($p_cols);\n            $sortId = $p_params[\"iSortCol_0\"];\n            $sortBy = $cols[$sortId];\n            $dir = $p_params[\"sSortDir_0\"] ? : 'asc';\n            switch ($sortBy) {\n                case 'commenter':\n                    $qb->orderBy(\"c.name\", $dir);\n                    break;\n                case 'thread':\n                    $qb->orderBy(\"a.name\", $dir);\n                    break;\n                case 'threadorder':\n                    $qb->orderBy(\"e.thread_order\", $dir);\n                    break;\n                case 'comment':\n                case 'index':\n                    $qb->orderBy(\"e.time_created\", $dir);\n                    break;\n                default:\n                    $qb->orderBy(\"e.\" . $sortBy, $dir);\n            }\n        }\n        $qb->where($andx);\n        // limit\n        if (isset($p_params['iDisplayLength'])) {\n            $qb->setFirstResult((int) $p_params['iDisplayStart'])->setMaxResults((int) $p_params['iDisplayLength']);\n        }\n\n        return $qb->getQuery()->getResult();\n    }\n\n    /**\n     * Get entity count\n     *\n     * @param array $p_params|null\n     * @param array $p_cols|null\n     *\n     * @return int\n     */\n    public function getCount(array $p_params = null, array $p_cols = array())\n    {\n        $qb = $this->createQueryBuilder('e');\n        $qb->from('Newscoop\\Entity\\Comment\\Commenter', 'c')\n                ->from('Newscoop\\Entity\\Article', 'a');\n        $andx = $qb->expr()->andx();\n        $andx->add($qb->expr()->eq('e.language', new Expr\\Literal('a.language')));\n        $andx->add($qb->expr()->eq('e.thread', new Expr\\Literal('a.number')));\n        $andx->add($qb->expr()->eq('e.commenter', new Expr\\Literal('c.id')));\n\n        if (is_array($p_params) && !empty($p_params['sSearch'])) {\n            $this->buildWhere($p_cols, $p_params['sSearch'], $qb, $andx);\n        }\n\n        if (is_array($p_params) && !empty($p_params['sFilter'])) {\n            $this->buildFilter($p_cols, $p_params['sFilter'], $qb, $andx);\n        }\n\n        $qb->where($andx);\n        $qb->select('COUNT(e)');\n\n        return $qb->getQuery()->getSingleScalarResult();\n    }\n\n    /**\n     * Build where condition\n     *\n     * @param  array                   $cols\n     * @param  string                  $search\n     * @return Doctrine\\ORM\\Query\\Expr\n     */\n    protected function buildWhere(array $p_cols, $p_search, $qb = null, $andx = null)\n    {\n        $orx = $qb->expr()->orx();\n        $orx->add($qb->expr()->like(\"c.name\", $qb->expr()->literal(\"%{$p_search}%\")));\n        $orx->add($qb->expr()->like(\"a.name\", $qb->expr()->literal(\"%{$p_search}%\")));\n        $orx->add($qb->expr()->like(\"e.subject\", $qb->expr()->literal(\"%{$p_search}%\")));\n        $orx->add($qb->expr()->like(\"e.message\", $qb->expr()->literal(\"%{$p_search}%\")));\n\n        return $andx->add($orx);\n    }\n\n    /**\n     * Build filter condition\n     */\n    protected function buildFilter(array $p_cols, array $p_filter, $qb, $andx)\n    {\n        foreach ($p_filter as $key => $values) {\n            if (!is_array($values)) {\n                $values = array($values);\n            }\n            $orx = $qb->expr()->orx();\n            switch ($key) {\n                case 'status':\n                    $mapper = array_flip(Comment::$status_enum);\n                    foreach ($values as $value) {\n                        $orx->add($qb->expr()->eq('e.status', $mapper[$value]));\n                    }\n                    break;\n                case 'id':\n                case 'forum':\n                case 'thread':\n                case 'language':\n                    foreach ($values as $value) {\n                        $orx->add($qb->expr()->eq(\"e.$key\", $value));\n                    }\n                    break;\n                case 'recommended':\n                    foreach ($values as $value) {\n                        $orx->add($qb->expr()->eq('e.recommended', $value));\n                    }\n            }\n            $andx->add($orx);\n        }\n\n        return $andx;\n    }\n\n    /**\n     * Delete article comments\n     *\n     * @param Newscoop\\Entity\\Article  $article\n     * @param Newscoop\\Entity\\Language $language\n     */\n    public function deleteArticle($article, $language = null)\n    {\n        $em = $this->getEntityManager();\n        $params = array('thread' => $article);\n        if (!is_null($language)) {\n            $params['language'] = $language;\n        }\n        $comments = $this->findBy($params);\n        foreach ($comments as $comment) {\n            $comment->setParent();\n        }\n        foreach ($comments as $comment) {\n            $this->setCommentStatus($comment, 'deleted');\n        }\n    }\n\n    /**\n     * Delete commenter comments\n     *\n     * @param Newscoop\\Entity\\Commenter $commenter\n     */\n    public function deleteCommenter($commenter)\n    {\n        $em = $this->getEntityManager();\n        $comments = $this->findByCommenter($commenter->getId());\n        foreach ($comments as $comment) {\n            $this->setCommentStatus($comment, 'deleted');\n        }\n    }\n\n    /**\n     * Delete commenter comments\n     *\n     * @param array $commenters\n     */\n    public function deleteCommenters(array $commenters)\n    {\n        $em = $this->getEntityManager();\n        foreach ($commenters as $commenter) {\n            $comments = $this->findByCommenter($commenter->getId());\n            foreach ($comments as $comment) {\n                $this->setCommentStatus($comment, 'deleted');\n            }\n        }\n    }\n\n    /**\n     * Flush method\n     */\n    public function flush()\n    {\n        $this->getEntityManager()->flush();\n    }\n\n    /**\n     * Get direct replies to a comment\n     *\n     * @param $commentId\n     *\n     * return array\n     */\n    public function getDirectReplies($commentId)\n    {\n        $em = $this->getEntityManager();\n        $qb = $em->createQueryBuilder();\n        $qb->add('select', 'c.id')\n            ->add('from', 'Newscoop\\Entity\\Comment c')\n            ->add('where', 'c.parent = :p_comment_id')\n            ->setParameter('p_comment_id', $commentId);\n        $query = $qb->getQuery();\n        $commentIds = $query->getArrayResult();\n\n        $clearCommentIds = array();\n        foreach ($commentIds as $key => $value) {\n            $clearCommentIds[] = $value['id'];\n        }\n\n        return $clearCommentIds;\n    }\n\n    /**\n     * Get comments count for user\n     *\n     * @param Newscoop\\Entity\\User $user\n     *\n     * @return int\n     */\n    public function countByUser(User $user)\n    {\n        $em = $this->getEntityManager();\n        $qb = $em->createQueryBuilder();\n\n        $qb->select('commenter.id')\n            ->from('Newscoop\\Entity\\Comment\\Commenter', 'commenter')\n            ->where('commenter.user = :commenterUserId')\n            ->setParameter('commenterUserId', $user->getId());\n        $commenterId = $qb->getQuery()->getArrayResult();\n\n        if (array_key_exists(0, $commenterId)) {\n            $commenterId = $commenterId[0];\n        } else {\n            return 0;\n        }\n\n        if (is_array($commenterId) && array_key_exists('id', $commenterId)) {\n            $qb = $em->createQueryBuilder();\n            $qb->select('count(comment.id)')\n                ->from('Newscoop\\Entity\\Comment', 'comment')\n                ->where('comment.commenter = :commenter')\n                ->setParameter('commenter', $commenterId['id']);\n\n            return (int) $qb->getQuery()->getSingleScalarResult();\n        } else {\n            return 0;\n        }\n    }\n\n    /**\n     * Find comments for indexing\n     *\n     * @param mixed $count Number of comments to index. When null default will be used\n     *\n     * @return array\n     */\n    public function getBatch($count = self::BATCH_COUNT, array $filter = null)\n    {\n        $qb = $this->createQueryBuilder('c');\n\n        if (is_null($filter)) {\n            $qb->where('c.indexed IS NULL')\n                ->orWhere('c.indexed < c.time_updated')\n                ->orderBy('c.time_updated', 'DESC');\n        } else {\n            throw new IndexException(\"Filter is not implemented yet.\");\n        }\n\n        if (is_numeric($count)) {\n            $qb->setMaxResults($count);\n        }\n\n        $batch = $qb->getQuery()\n            ->getResult();\n\n        return $batch;\n    }\n\n    /**\n     * Set indexed now\n     *\n     * @param  array $comments\n     * @return void\n     */\n    public function setIndexedNow(array $comments)\n    {\n        if (empty($comments)) {\n            return;\n        }\n\n        $this->getEntityManager()->createQuery('UPDATE Newscoop\\Entity\\Comment c SET c.indexed = CURRENT_TIMESTAMP() WHERE c.id IN (:comments)')\n            ->setParameter('comments', array_map(function ($comment) { return $comment->getId(); }, $comments))\n            ->execute();\n    }\n\n    /**\n     * Set indexed null\n     *\n     * @return void\n     */\n    public function setIndexedNull(array $comments = null)\n    {\n        $this->getEntityManager()->createQuery('UPDATE Newscoop\\Entity\\Comment c SET c.indexed = NULL')\n            ->execute();\n    }\n\n    /**\n     * Get Comments for all authors articles grouped by day\n     *\n     * @param \\Newscoop\\Entity\\Author   $author\n     * @param string $range\n     *\n     * @return Doctrine\\ORM\\Query\n     */\n    public function getCommentsForAuthorArticlesPerDay($author, $range = '-60 days')\n    {\n        $qb = $this->createQueryBuilder('c');\n        $date = new \\DateTime();\n        $date->modify($range);\n\n        $qb->select('COUNT(c.id) as number', \"DATE_FORMAT(c.time_created, '%Y-%m-%d') as date\")\n            ->leftJoin('c.article', 'a')\n            ->leftJoin('a.authors', 'aa')\n            ->andwhere('aa.id = :authorId')\n            ->andWhere('c.time_created > :date')\n            ->setParameter('authorId', $author->getId())\n            ->setParameter('date', $date)\n            ->groupBy('date');\n\n        return $qb->getQuery();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/DatatableRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityManager;\n\n/**\n * Datatable repository decorator\n */\nclass DatatableRepository\n{\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em;\n\n    /** @var Doctrine\\ORM\\EntityRepository */\n    protected $repository;\n\n    /** @var string */\n    protected $entityName;\n\n    /**\n     * @param Doctrine\\ORM\\EntityRepository $repository\n     */\n    public function __construct(EntityManager $em, $entityName)\n    {\n        $this->em = $em;\n        $this->entityName = (string) $entityName;\n        $this->repository = $this->em->getRepository($this->entityName);\n    }\n\n    /**\n     * Get data for table\n     *\n     * @param array $params\n     * @param array $cols\n     * @return array\n     */\n    public function getData(array $params, array $cols)\n    {\n        static $default_params = array(\n            'iDisplayStart' => 0,\n            'iDisplayLength' => 25,\n        );\n\n        $params += $default_params;\n\n        $qb = $this->repository->createQueryBuilder('e');\n\n        if (!empty($params['sSearch'])) {\n            $qb->where($this->buildWhere($cols, $params));\n        }\n\n        // sort\n        foreach (array_keys($cols) as $id => $property) {\n            if (!is_string($property)) { // not sortable\n                continue;\n            }\n\n            if (isset($params[\"iSortCol_$id\"])) {\n                $dir = $params[\"sSortDir_$id\"] ?: 'asc';\n                $qb->orderBy(\"e.$property\", $dir);\n            }\n        }\n\n        // limit\n        $qb->setFirstResult((int) $params['iDisplayStart'])\n            ->setMaxResults((int) $params['iDisplayLength']);\n\n\n        return $qb->getQuery()->getResult();\n    }\n\n    /**\n     * Get user count\n     *\n     * @return int\n     */\n    public function getCount()\n    {\n        return $this->em\n            ->createQueryBuilder()\n            ->select('COUNT(e)')\n            ->from($this->entityName, 'e')\n            ->getQuery()\n            ->getSingleScalarResult();\n    }\n\n    /**\n     * Get filtered count\n     *\n     * @param array $params\n     * @param array $cols\n     * @return int\n     */\n    public function getFilteredCount(array $params, array $cols)\n    {\n        if (empty($params['sSearch'])) {\n            return $this->getCount();\n        }\n\n        return $this->em\n            ->createQueryBuilder()\n            ->select('COUNT(e)')\n            ->from($this->entityName, 'e')\n            ->where($this->buildWhere($cols, $params['sSearch']))\n            ->getQuery()\n            ->getSingleScalarResult();\n    }\n\n    /**\n     * Build where condition\n     *\n     * @param array $cols\n     * @param string $search\n     * @return Doctrine\\ORM\\Query\\Expr\n     */\n    private function buildWhere(array $cols, $params)\n    {\n        $qb = $this->repository->createQueryBuilder('e');\n        $or = $qb->expr()->orx();\n        \n        $reflection = new \\ReflectionObject(new $this->entityName);\n        \n        $search = $params['sSearch'];\n        foreach (array_keys($cols) as $id => $property) {\n        \t//column is searchable\n            if ($reflection->hasProperty($property) && $params[\"bSearchable_{$id}\"]) {\n                $or->add($qb->expr()->like(\"e.$property\", $qb->expr()->literal(\"%{$search}%\")));\n            }     \n        }\n\n        return $or;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/FeedbackRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\Query\\Expr;\nuse Doctrine\\ORM\\EntityRepository;\nuse Doctrine\\ORM\\QueryBuilder;\nuse Newscoop\\Entity\\Feedback;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\Entity\\Article;\nuse Newscoop\\Entity\\Section;\nuse Newscoop\\Entity\\Publication;\nuse Newscoop\\Datatable\\Source as DatatableSource;\n\n/**\n * Feedback repository\n */\nclass FeedbackRepository extends DatatableSource\n{\n\n    /**\n     * Get new instance of the comment\n     *\n     * @return \\Newscoop\\Entity\\Feedback\n     */\n    public function getPrototype()\n    {\n        return new Feedback;\n    }\n\n    /**\n     * Method for saving a feedback\n     *\n     * @param \\Newscoop\\Entity\\Feedback $entity\n     * @param array $values\n     * @return Feedback \\Newscoop\\Entity\\Feedback\n     */\n    public function save(Feedback $entity, $values)\n    {\n        // get the entity manager\n        $em = $this->getEntityManager();\n        if (array_key_exists('user', $values)) {\n\t\t\t$entity->setUser($values['user']);\n\t\t}\n\n        if (!empty($values['publication'])) {\n\t\t\t$publication = $em->getReference('Newscoop\\Entity\\Publication', $values['publication']);\n\t\t\t$entity->setPublication($publication);\n\t\t}\n\t\tif (!empty($values['section'])) {\n\t\t\t$section = $em->getReference('Newscoop\\Entity\\Section', $values['section']);\n\t\t\t$entity->setSection($section);\n\t\t}\n\t\tif (!empty($values['language']) && !empty($values['article'])) {\n\t\t\t$article = $em->getReference('Newscoop\\Entity\\Article', array(\n\t\t\t\t'language' => $values['language'],\n\t\t\t\t'number' => $values['article']\n\t\t\t));\n\t\t\t$entity->setArticle($article);\n\t\t}\n\n        if (isset($values['subject'])) $entity->setSubject($values['subject']);\n\t\tif (isset($values['message'])) $entity->setMessage($values['message']);\n        if (isset($values['url'])) $entity->setUrl($values['url']);\n        if (isset($values['time_created'])) $entity->setTimeCreated($values['time_created']);\n        if (isset($values['status'])) $entity->setStatus($values['status']);\n        if (isset($values['attachment_type'])) $entity->setAttachmentType($values['attachment_type']);\n        if (isset($values['attachment_id'])) $entity->setAttachmentId($values['attachment_id']);\n        \n        $em->persist($entity);\n        return $entity;\n    }\n\n    /**\n     * Method for setting status\n     *\n     * @param array $feedbacks Feedback identifiers\n     * @param string $status\n     * @return void\n     */\n    public function setStatus(array $feedbacks, $status)\n    {\n        foreach ($feedbacks as $feedback) {\n            $this->setFeedbackStatus($this->find($feedback), $status);\n        }\n    }\n\n    /**\n     * Method for setting status for a feedback message\n     *\n     * @param \\Newscoop\\Entity\\Feedback $feedback\n     * @param  string $status\n     * @return void\n     */\n    private function setFeedbackStatus(Feedback $feedback, $status)\n    {\n        $em = $this->getEntityManager();\n        if ($status == 'deleted') {\n            $em->remove($feedback);\n        } else {\n            $feedback->setStatus($status);\n            $em->persist($feedback);\n        }\n    }\n\n    /**\n     * Get data for table\n     *\n     * @param array $params\n     * @param array $cols\n     * @return Comment[]\n     */\n    public function getData(array $params, array $cols)\n    {\n        $qb = $this->createQueryBuilder('e');\n        $qb->from('Newscoop\\Entity\\User', 's');\n        $andx = $qb->expr()->andx();\n        $andx->add($qb->expr()->eq('e.user', new Expr\\Literal('s.id')));\n\n        if (!empty($params['sSearch'])) {\n            $this->buildWhere($cols, $params['sSearch'], $qb, $andx);\n        }\n\n        if (!empty($params['sFilter'])) {\n            $this->buildFilter($cols, $params['sFilter'], $qb, $andx);\n        }\n\n        // sort\n        if (isset($params['iSortCol_0'])) {\n            $colsIndex = array_keys($cols);\n            $sortId = $params['iSortCol_0'];\n            $sortBy = $colsIndex[$sortId];\n            $dir = $params['sSortDir_0'] ? : 'asc';\n            switch ($sortBy) {\n                case 'user':\n                    $qb->orderBy('s.username', $dir);\n                    break;\n                case 'message':\n                    $qb->orderBy('e.time_created', $dir);\n                    break;\n                case 'url':\n                    $qb->orderBy('e.url', $dir);\n                    break;\n                case 'index':\n                    $qb->orderBy('e.time_created', $dir);\n                    break;\n                default:\n                    $qb->orderBy('e.' . $sortBy, $dir);\n            }\n        }\n\n        $qb->where($andx);\n\n        // limit\n        if (isset($params['iDisplayLength'])) {\n            $qb->setFirstResult((int)$params['iDisplayStart'])->setMaxResults((int)$params['iDisplayLength']);\n        }\n\n        return $qb->getQuery()->getResult();\n    }\n\n    /**\n     * Build where condition\n     *\n     * @param array $cols\n     * @param string $search\n     * @return Doctrine\\ORM\\Query\\Expr\n     */\n    protected function buildWhere(array $cols, $search, $qb = null, $andx = null)\n    {\n        $orx = $qb->expr()->orx();\n        $orx->add($qb->expr()->like('s.username', $qb->expr()->literal(\"%{$search}%\")));\n        $orx->add($qb->expr()->like('e.subject', $qb->expr()->literal(\"%{$search}%\")));\n        $orx->add($qb->expr()->like('e.message', $qb->expr()->literal(\"%{$search}%\")));\n        return $andx->add($orx);\n    }\n\n    /**\n     * Build filter condition\n     *\n     * @param array $cols\n     * @param array $filter\n     * @param $qb\n     * @param $andx\n     * @return Doctrine\\ORM\\Query\\Expr\n     */\n    protected function buildFilter(array $cols, array $filter, $qb, $andx)\n    {\n        foreach ($filter as $key => $values) {\n            if (!is_array($values)) {\n                $values = array($values);\n            }\n            $orx = $qb->expr()->orx();\n            switch ($key) {\n                case 'status':\n                    $mapper = array_flip(Feedback::$status_enum);\n                    foreach ($values as $value) {\n                        $orx->add($qb->expr()->eq('e.status', $mapper[$value]));\n                    }\n                    break;\n                case 'attachmentType':\n\t\t\t\t\t$mapper = array_flip(Feedback::$attachment_type_enum);\n\t\t\t\t\tforeach ($values as $value) {\n                        $orx->add($qb->expr()->eq('e.attachment_type', $mapper[$value]));\n                    }\n            }\n            $andx->add($orx);\n        }\n        return $andx;\n    }\n    \n    public function getByUser($p_user_id) {\n\t\t$em = $this->getEntityManager();\n\t\t$qb = $em->createQueryBuilder();\n\t\t$qb->add('select', 'f.id')\n            ->add('from', 'Newscoop\\Entity\\Feedback f')\n            ->add('where', 'f.user = :p_user_id')\n            ->setParameter('p_user_id', $p_user_id);\n        $query = $qb->getQuery();\n        $feedbackIds = $query->getArrayResult();\n        \n        $clearFeedbackIds = array();\n        foreach($feedbackIds as $key => $value) {\n        \t$clearFeedbackIds[] = $value['id'];\n        }\n        return $clearFeedbackIds;\n\t}\n\n    /**\n     * Flush method\n     */\n    public function flush()\n    {\n        $this->getEntityManager()->flush();\n    }\n\n    /**\n     * Get feedbacks count for user\n     *\n     * @param Newscoop\\Entity\\User $user\n     * @return int\n     */\n    public function countByUser(User $user)\n    {\n        return (int) $this->getEntityManager()\n            ->createQuery(\"SELECT COUNT(feedback) FROM Newscoop\\Entity\\Feedback feedback WHERE feedback.user = :user\")\n            ->setParameter('user', $user->getId())\n            ->getSingleScalarResult();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/ImageRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository;\nuse Newscoop\\Image\\LocalImage;\nuse Doctrine\\ORM\\Query;\n\n/**\n * Image Repository\n */\nclass ImageRepository extends EntityRepository\n{\n    /**\n     * Get images for storage update\n     *\n     * @param int $maxResults\n     * @return array\n     */\n    public function findImagesForStorageUpdate($maxResults)\n    {\n        $query = $this->createQueryBuilder('i')\n            ->andWhere('i.isUpdatedStorage = 0')\n            ->andWhere('i.location = :local')\n            ->setMaxResults($maxResults)\n            ->getQuery();\n\n        $query->setParameter('local', LocalImage::LOCATION_LOCAL);\n\n        return $query->getResult();\n    }\n\n    /**\n     * Get all images\n     *\n     * @return Query\n     */\n    public function getImages()\n    {\n        $query = $this->createQueryBuilder('i')\n            ->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Get single image by id\n     *\n     * @param int $number\n     *\n     * @return Query\n     */\n    public function getImage($number)\n    {\n        $query = $this->createQueryBuilder('i')\n            ->andWhere('i.id = :number')\n            ->setParameter('number', $number)\n            ->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Get count of references for given file\n     *\n     * @param string $file\n     *\n     * @return int\n     */\n    public function getImageFileReferencesCount($file)\n    {\n        $query = $this->createQueryBuilder('i')\n            ->select('COUNT(i)')\n            ->where('i.basename = :file')\n            ->getQuery();\n\n        $query->setParameter('file', $file);\n\n        return $query->getSingleScalarResult();\n    }\n\n    /**\n     * Get images attached to article\n     *\n     * @param int $number Article number\n     *\n     * @return Query\n     */\n    public function getArticleImages($number)\n    {\n        $query = $this->createQueryBuilder('ai')\n            ->andWhere('ai.articleNumber = :number')\n            ->setParameter('number', $number)\n            ->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Get single ArticleImage\n     *\n     * @param int        $articleNumber Article number\n     * @param LocalImage $image         Image object\n     *\n     * @return Query\n     */\n    public function getArticleImage($articleNumber, LocalImage $image)\n    {\n        $query = $this->createQueryBuilder('ai')\n            ->andWhere('ai.articleNumber = :number')\n            ->andWhere('ai.image = :image')\n            ->setParameters(array(\n                'number' => $articleNumber,\n                'image' => $image\n            ))\n            ->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Get ArticleImages for specific image\n     *\n     * @param LocalImage $image\n     *\n     * @return Query\n     */\n    public function getArticleImagesForImage(LocalImage $image)\n    {\n        $query = $this->createQueryBuilder('ai')\n            ->andWhere('ai.image = :image')\n            ->setParameters(array(\n                'image' => $image\n            ))\n            ->getQuery();\n\n        return $query;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/IssueRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository;\nuse Newscoop\\Entity\\Publication;\n\n/**\n * Issie repository\n */\nclass IssueRepository extends EntityRepository\n{\n    /**\n     * Retrieve the latest issue. Optional an array for filtering can be\n     * specified. Think of parameters: Publication, Languages, published or not,\n     * etc.\n     *\n     * @param array       $parameters Array containing filter options\n     * @param boolean|int $maxResults Max results to show\n     * @param boolean     $leftJoins  Adds left joins to the query to get section and language\n     *\n     * @return \\Newscoop\\Entity\\Issue|null\n     */\n    public function getLatestByPublication($publicationId, $maxResults = 1, $leftJoins = true)\n    {\n        $issuesIds = $this->createQueryBuilder('i')\n            ->select('i.id')\n            ->andWhere('i.publication = :publicationId')\n            ->setParameter('publicationId', $publicationId)\n            ->orderBy('i.id', 'DESC');\n\n        if ($maxResults) {\n            $issuesIds->setMaxResults($maxResults);\n        }\n\n        $issuesIds = $issuesIds->getQuery()\n            ->getArrayResult();\n\n        if (count($issuesIds) == 0) {\n            return;\n        }\n\n        $ids = array();\n        foreach ($issuesIds as $key => $issue) {\n            $ids[] = $issue['id'];\n        }\n\n        $query = $this->createQueryBuilder('i')\n            ->where('i.id IN (:ids)')\n            ->setParameter('ids', $ids);\n\n        if ($leftJoins) {\n            $query->select('i', 'l', 's')\n                ->leftJoin('i.language', 'l')\n                ->leftJoin('i.sections', 's');\n        }\n\n        $query->orderBy('i.id', 'DESC');\n\n        return $query->getQuery();\n    }\n\n    public function getByPublicationAndNumberAndLanguage($publication, $number = null, $language = null)\n    {\n        $queryBuilder = $this->createQueryBuilder('i')\n            ->where('i.publication = :publication')\n            ->setParameter('publication', $publication);\n\n        if ($number) {\n            $queryBuilder->andWhere('i.number = :number')\n                ->setParameter('number', $number);\n        }\n\n        if ($language) {\n            $queryBuilder->andWhere('i.language = :language')\n                ->setParameter('language', $language);\n        }\n\n        return $queryBuilder->getQuery();\n    }\n\n    public function getIssuesCountForPublication($publicationId)\n    {\n        $issuesCount = $this->createQueryBuilder('i')\n            ->select('COUNT(i.id)')\n            ->andWhere('i.publication = :publicationId')\n            ->setParameter('publicationId', $publicationId)\n            ->getQuery();\n\n        return $issuesCount;\n    }\n\n    public function getIssue($languageCode, $publication, $shortName = null)\n    {\n        $qb = $this->createQueryBuilder('i')\n            ->select('i', 'l')\n            ->leftJoin('i.language', 'l')\n            ->where('l.code = :language')\n            ->andWhere('i.publication = :publicationId')\n            ->setParameters(array(\n                'language' => $languageCode,\n                'publicationId' => $publication,\n            ));\n\n        if (!is_null($shortName)) {\n            $qb->andWhere('i.shortName = :shortName')\n                ->setParameter('shortName', $shortName);\n        }\n\n        return $qb->getQuery();\n    }\n\n    public function getLastPublishedByPublicationAndLanguage($publicationId, $languageId)\n    {\n        $query = $this->createQueryBuilder('i')\n            ->select('i')\n            ->where('i.publication = :publicationId')\n            ->andWhere('i.workflowStatus = :publishStatus')\n            ->andWhere('i.language = :languageId')\n            ->setParameter('publicationId', $publicationId)\n            ->setParameter('publishStatus', \\Newscoop\\Entity\\Issue::STATUS_PUBLISHED)\n            ->setParameter('languageId', $languageId)\n            ->setMaxResults(1)\n            ->orderBy('i.published', 'ASC');\n\n        return $query->getQuery();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/LanguageRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @subpackage Languages\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository,\n    Doctrine\\ORM\\QueryBuilder,\n    Newscoop\\Entity\\Language;\n\n/**\n * Language repository\n */\nclass LanguageRepository extends EntityRepository\n{\n    /**\n     * Save language\n     *\n     * @param  Newscoop\\Entity\\Language $language\n     * @param  array                    $values\n     * @return void\n     */\n    public function save(Language $language, array $values)\n    {\n        $em = $this->getEntityManager();\n\n        $language->setName($values['name'])\n            ->setNativeName($values['native_name'])\n            ->setCodePage($values['code_page'])\n            ->setCode($values['code'])\n            ->setMonth1($values['month1'])\n            ->setMonth2($values['month2'])\n            ->setMonth3($values['month3'])\n            ->setMonth4($values['month4'])\n            ->setMonth5($values['month5'])\n            ->setMonth6($values['month6'])\n            ->setMonth7($values['month7'])\n            ->setMonth8($values['month8'])\n            ->setMonth9($values['month9'])\n            ->setMonth10($values['month10'])\n            ->setMonth11($values['month11'])\n            ->setMonth12($values['month12'])\n            ->setShortMonth1($values['short_month1'])\n            ->setShortMonth2($values['short_month2'])\n            ->setShortMonth3($values['short_month3'])\n            ->setShortMonth4($values['short_month4'])\n            ->setShortMonth5($values['short_month5'])\n            ->setShortMonth6($values['short_month6'])\n            ->setShortMonth7($values['short_month7'])\n            ->setShortMonth8($values['short_month8'])\n            ->setShortMonth9($values['short_month9'])\n            ->setShortMonth10($values['short_month10'])\n            ->setShortMonth11($values['short_month11'])\n            ->setShortMonth12($values['short_month12'])\n            ->setDay1($values['day1'])\n            ->setDay2($values['day2'])\n            ->setDay3($values['day3'])\n            ->setDay4($values['day4'])\n            ->setDay5($values['day5'])\n            ->setDay6($values['day6'])\n            ->setDay7($values['day7'])\n            ->setShortDay1($values['short_day1'])\n            ->setShortDay2($values['short_day2'])\n            ->setShortDay3($values['short_day3'])\n            ->setShortDay4($values['short_day4'])\n            ->setShortDay5($values['short_day5'])\n            ->setShortDay6($values['short_day6'])\n            ->setShortDay7($values['short_day7'])\n            ->setRFC3066bis($values['RFC3066bis']);\n\n        $em->persist($language);\n        $em->flush();\n    }\n\n    /**\n     * Delete language\n     *\n     * @param  int  $id\n     * @return void\n     */\n    public function delete($id)\n    {\n        $em = $this->getEntityManager();\n        $proxy = $em->getReference('Newscoop\\Entity\\Language', $id);\n        $em->remove($proxy);\n        $em->flush();\n    }\n\n    /**\n     * Get languages\n     *\n     * @return array\n     */\n    public function getLanguages()\n    {\n        $qb = $this->createQueryBuilder('l');\n\n        return $qb->orderBy('l.name', 'ASC')\n            ->getQuery()\n            ->getResult();\n    }\n\n    /**\n     * Get languages query\n     *\n     * @return array\n     */\n    public function getAllLanguages($order = 'asc')\n    {\n        $qb = $this->createQueryBuilder('l');\n\n        return $qb->orderBy('l.name', $order)\n            ->getQuery();\n    }\n\n    /**\n     * Check if in use\n     *\n     * @param  Language $language\n     * @return bool\n     */\n    public function isUsed(Language $language)\n    {\n        $em = $this->getEntityManager();\n\n        $dql = \"SELECT COUNT(p.id) FROM Newscoop\\Entity\\Publication p WHERE p.language = ?1\";\n        $query = $em->createQuery($dql);\n        $query->setParameter(1, $language);\n        if ($query->getSingleScalarResult()) {\n            return true;\n        }\n\n        $dql = \"SELECT COUNT(i.number) FROM Newscoop\\Entity\\Issue i WHERE i.language = ?1\";\n        $query = $em->createQuery($dql);\n        $query->setParameter(1, $language);\n        if ($query->getSingleScalarResult()) {\n            return true;\n        }\n\n        $dql = \"SELECT COUNT(s.number) FROM Newscoop\\Entity\\Section s WHERE s.language = ?1\";\n        $query = $em->createQuery($dql);\n        $query->setParameter(1, $language);\n        if ($query->getSingleScalarResult()) {\n            return true;\n        }\n\n        $dql = \"SELECT COUNT(a.number) FROM Newscoop\\Entity\\Article a WHERE a.language = ?1\";\n        $query = $em->createQuery($dql);\n        $query->setParameter(1, $language);\n        if ($query->getSingleScalarResult()) {\n            return true;\n        }\n\n        $dql = \"SELECT COUNT(c.code) FROM Newscoop\\Entity\\Country c WHERE c.language = ?1\";\n        $query = $em->createQuery($dql);\n        $query->setParameter(1, $language);\n        if ($query->getSingleScalarResult()) {\n            return true;\n        }\n\n        return false;\n    }\n\n    /**\n     * Tries to find Language entity by string. String should be in correct RFC3066bis standard.\n     *\n     * @param string $languageString  Language string\n     * @param string $firstResultOnly Return first result\n     *\n     * @return \\Newscoop\\Entity\\Language|null Returns found entity or null\n     */\n    public function findByRFC3066bis($languageString, $firstResultOnly=true)\n    {\n        if (count(explode('-', $languageString)) < 2) {\n            throw new \\Exception('Language string in correct according to RFC3066bis standard.', 1);\n        }\n\n        $queryBuilder = $this->getEntityManager()\n            ->getRepository('\\Newscoop\\Entity\\Language')\n            ->createQueryBuilder('L');\n\n        $localeArray    = \\Locale::parseLocale($languageString);\n\n        if (array_key_exists('language', $localeArray) && array_key_exists('region', $localeArray) && array_key_exists('script', $localeArray)) {\n            $queryBuilder\n                ->where('L.RFC3066bis = :longLocale')\n                ->orWhere('L.RFC3066bis = :shortLocale')\n                ->setParameter('longLocale', $localeArray['language'].'-'.$localeArray['script'].'-'.$localeArray['region'])\n                ->setParameter('shortLocale', $localeArray['language'].'-'.$localeArray['region']);\n\n        } elseif (array_key_exists('language', $localeArray) && array_key_exists('script', $localeArray)) {\n            $queryBuilder\n                ->where('L.RFC3066bis = :strictLocale')\n                ->orWhere('L.RFC3066bis LIKE :nonStrictLocale')\n                ->setParameter('strictLocale', $localeArray['language'].'-'.$localeArray['script'])\n                ->setParameter('nonStrictLocale', $localeArray['language'].'-'.$localeArray['script'].'%');\n\n        } elseif (array_key_exists('language', $localeArray) && array_key_exists('region', $localeArray)) {\n            $queryBuilder\n                ->where('L.RFC3066bis = :strictLocale')\n                ->orWhere('L.RFC3066bis LIKE :nonStrictLocale')\n                ->setParameter('strictLocale', $localeArray['language'].'-'.$localeArray['region'])\n                ->setParameter('nonStrictLocale', $localeArray['language'].'-%'.$localeArray['region']);\n\n        } else {\n            throw new \\Exception('Parsed RFC3066bis string did not match expected results.', 1);\n        }\n\n        $foundLanguages = $queryBuilder->getQuery()->getResult();\n\n        return ($firstResultOnly) ? $foundLanguages[0] : $foundLanguages;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/NotificationRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Newscoop\\Entity;\n\nuse Newscoop\\Entity\\Notification,\n    Newscoop\\Entity\\Comment;\n\nclass NotificationRepository\n{\n\n    /**\n     * Get new instance of the notification\n     */\n    public function getPrototype()\n    {\n        return new Notification;\n    }\n\n    /**\n     * Add to notification\n     *\n     * @return unknown_type\n     */\n    public function addComment(Comment $comment)\n    {\n        $notification = $this->getPrototype();\n        // set content of the notification\n        $content = array();\n        $content[Notification::COMMENT_NAME]        = $comment->getCommenterName();\n        $content[Notification::COMMENT_EMAIL]       = $comment->getCommenterEmail();\n        $content[Notification::COMMENT_IP]          = $comment->getIp();\n        $content[Notification::COMMENT_SUBJECT]     = $comment->getSubject();\n        $content[Notification::COMMENT_MESSAGE]     = $comment->getMessage();\n        $content[Notification::COMMENT_PUBLICATION] = $comment->getPublicationId();\n        //serialize the content\n        $notification->setContent(serialize($content));\n        $notification->setType(Notification::TYPE_COMMENT);\n        $notification->setStatus(Notification::STATUS_PENDING);\n        $this->getEntityManager()->persist($notification);\n        $this->flush();\n    }\n\n    /**\n     * Flush method\n     */\n    public function flush()\n    {\n        $this->getEntityManager()->flush();\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/PlaylistArticleRepository.php",
    "content": "<?php\n\n/**\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Entity\\Repository;\n\nuse Newscoop\\Entity\\Playlist;\nuse Newscoop\\Entity\\Article;\nuse Gedmo\\Sortable\\Entity\\Repository\\SortableRepository;\n\nclass PlaylistArticleRepository extends SortableRepository\n{\n    /**\n     * Delete playlist.\n     *\n     * @param Newscoop\\Entity\\Playlist $playlist\n     */\n    public function onPlaylistDelete(Newscoop\\Entity\\Playlist $playlist)\n    {\n        $em = $this->getEntityManager();\n        $query = $em->createQuery(\"DELETE FROM Newscoop\\Entity\\PlaylistArticle pa WHERE pa.playlist = ?1\");\n        $query->setParameter(1, $playlist);\n        try {\n            $query->execute();\n        } catch (\\Exception $e) {\n            echo $e->getMessage();\n            // TODO log here\n            return array();\n        }\n        $rows = $query->getResult();\n\n        return $rows;\n    }\n\n    /**\n     * Delete article from playlists.\n     *\n     * @param int $articleId\n     */\n    public function deleteArticle($articleId, $languageId)\n    {\n        $em = $this->getEntityManager();\n        $em->getConnection()->beginTransaction();\n\n        $article = $em->getRepository('Newscoop\\Entity\\PlaylistArticle')\n            ->findOneBy(array(\n                'articleNumber' => $articleId,\n                'articleLanguage' => $languageId,\n        ));\n\n        if (!is_null($article)) {\n            try {\n                $em->remove($article);\n                $em->getConnection()->commit();\n            } catch (\\Exception $e) {\n                $em->getConnection()->rollback();\n                $em->close();\n            }\n        } else {\n            $em->getConnection()->commit();\n        }\n\n        return $article;\n    }\n\n    public function getPlaylistArticle($playlist, $article)\n    {\n        $em = $this->getEntityManager();\n        $queryBuilder = $em->getRepository('Newscoop\\Entity\\PlaylistArticle')\n            ->createQueryBuilder('pa');\n\n        $queryBuilder->where('pa.playlist = :playlist')\n            ->andWhere('pa.articleNumber = :articleNumber')\n            ->andWhere('pa.articleLanguage = :articleLanguage')\n            ->setParameters(array(\n                'playlist' => $playlist,\n                'articleNumber' => $article->getNumber(),\n                'articleLanguage' => $article->getLanguageId(),\n            ));\n\n        $query = $queryBuilder->getQuery();\n\n        return $query;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/PlaylistRepository.php",
    "content": "<?php\n\n/**\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Entity\\Repository;\n\nuse Newscoop\\Entity\\PlaylistArticle;\nuse Newscoop\\Entity\\Language;\nuse Newscoop\\Entity\\Playlist;\nuse Doctrine\\ORM\\EntityRepository;\nuse Newscoop\\Entity\\Article;\n\nclass PlaylistRepository extends EntityRepository\n{\n    public function getPlaylists()\n    {\n        $em = $this->getEntityManager();\n        $queryBuilder = $em->getRepository('Newscoop\\Entity\\Playlist')\n            ->createQueryBuilder('p');\n\n        $query = $queryBuilder->getQuery();\n\n        return $query;\n    }\n\n    public function getPlaylist($id)\n    {\n        $em = $this->getEntityManager();\n        $queryBuilder = $em->getRepository('Newscoop\\Entity\\Playlist')\n            ->createQueryBuilder('p')\n            ->where('p.id = :id')\n            ->setParameter('id', $id);\n\n        $query = $queryBuilder->getQuery();\n\n        return $query;\n    }\n\n    public function getPlaylistByTitle($title)\n    {\n        $em = $this->getEntityManager();\n        $queryBuilder = $em->getRepository('Newscoop\\Entity\\Playlist')\n            ->createQueryBuilder('p')\n            ->where('p.name = :title')\n            ->setParameter('title', $title);\n\n        $query = $queryBuilder->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Returns articles for a given playlist.\n     *\n     * @param Newscoop\\Entity\\Playlist $playlist\n     * @param Newscoop\\Entity\\Language $lang\n     * @param bool                     $fullArticle\n     * @param int                      $limit\n     * @param int                      $offset\n     * @param bool                     $publishedOnly\n     */\n    public function articles(Playlist $playlist, array $languages = array(), $fullArticle = false, $limit = null, $offset = null, $publishedOnly = true, $onlyQuery = false, $orderBy = 'order', $orderDir = 'ASC')\n    {\n        $em = $this->getEntityManager();\n        $query = $em->createQueryBuilder();\n        if (!$fullArticle) {\n            $query->select('a.number articleId, l.id languageId, a.name title, a.updated date, a.workflowStatus workflowStatus, a.type type');\n        } else {\n            $query->select('p, a');\n        }\n\n        $query\n            ->from('Newscoop\\Entity\\PlaylistArticle', 'p')\n            ->join('p.article', 'a')\n            ->join('a.language', 'l')\n            ->where('p.playlist = ?1');\n\n        if ($publishedOnly) {\n            $query->andWhere('a.workflowStatus = \\'Y\\'');\n        }\n\n        $query->setParameter(1, $playlist);\n\n        if (!empty($languages)) {\n            $query\n                ->andWhere('l.code IN(?2)')\n                ->setParameter(2, $languages);\n        } else {\n            $query->groupBy('p.articleNumber, p.articleLanguage');\n        }\n\n        if (!is_null($limit)) {\n            $query->setMaxResults($limit);\n        }\n        if (!is_null($offset)) {\n            $query->setFirstResult($offset);\n        }\n\n        $query->orderBy(\"p.$orderBy\", $orderDir);\n\n        if ($onlyQuery) {\n            $countQueryBuilder = $em->createQueryBuilder();\n            $countQueryBuilder->select('count(p)')\n                ->from('Newscoop\\Entity\\PlaylistArticle', 'p')\n                ->where('p.playlist = ?1')\n                ->setParameter(1, $playlist);\n\n            $count = $countQueryBuilder->getQuery()->getSingleScalarResult();\n            $query = $query->getQuery();\n            $query->setHint('knp_paginator.count', $count);\n\n            return $query;\n        }\n\n        $rows = $query->getQuery()->getArrayResult();\n\n        return $rows;\n    }\n\n    /**\n     * Returns the total count of articles for a given playlist.\n     *\n     * @param Newscoop\\Entity\\Playlist $playlist\n     * @param Language                 $lang\n     * @param bool                     $publishedOnly\n     */\n    public function articlesCount(Playlist $playlist, array $languages = array(), $publishedOnly = true)\n    {\n        $em = $this->getEntityManager();\n        $query = $em->createQueryBuilder();\n        $query\n            ->select('count(distinct pa.articleNumber)')\n            ->from('Newscoop\\Entity\\PlaylistArticle', 'pa')\n            ->innerJoin('pa.article', 'a', 'WITH', 'pa.articleNumber = a.number')\n            ->leftJoin('a.language', 'l')\n            ->where('pa.playlist = ?1')\n            ->orderBy('pa.id');\n\n        if (!empty($languages)) {\n            $query\n                ->andWhere('l.code IN(?2)')\n                ->setParameter(2, $languages);\n        }\n\n        if ($publishedOnly) {\n            $query->andWhere('a.workflowStatus = \\'Y\\'');\n        }\n\n        $query->setParameter(1, $playlist);\n        if (!is_null($lang)) {\n            $query->setParameter(2, $lang->getId());\n        }\n\n        $count = $query->getQuery()->getSingleScalarResult();\n\n        return $count;\n    }\n\n    /**\n     * Gets the list of playlist the given article belongs to.\n     *\n     * @param int $articleId\n     * @param int $languageId\n     *\n     * @return array\n     */\n    public function getArticlePlaylists($articleId, $languageId)\n    {\n        $playlistArticles = $this->getEntityManager()->getRepository('Newscoop\\Entity\\PlaylistArticle')\n            ->findBy(array(\n                'articleNumber' => $articleId,\n                'articleLanguage' => $languageId,\n            ));\n\n        $playlists = array();\n        foreach ((array) $playlistArticles as $playlistArticle) {\n            $playlists[] = $playlistArticle->getPlaylist();\n        }\n\n        return $playlists;\n    }\n\n    /**\n     * Save playlist with articles.\n     *\n     * @param Newscoop\\Entity\\Playlist $playlist $playlist\n     * @param array                    $articles\n     */\n    public function save(Playlist $playlist = null, $articles = null)\n    {\n        $em = $this->getEntityManager();\n        $em->getConnection()->beginTransaction();\n\n        try {\n            $em->persist($playlist);\n            if (is_null($playlist->getId())) {\n                $em->flush();\n            }\n\n            $query = $em->createQuery(\"DELETE FROM Newscoop\\Entity\\PlaylistArticle pa WHERE pa.playlist = ?1\");\n            $query->setParameter(1, $playlist);\n            $query->execute();\n\n            if (!is_null($articles) && is_array($articles)) {\n                $ar = $this->getEntityManager()->getRepository('Newscoop\\Entity\\Article');\n                foreach ($articles as $articleId) {\n                    $article = new PlaylistArticle();\n                    $article->setPlaylist($playlist);\n                    if (($a = current($ar->findBy(array('number' => $articleId)))) instanceof \\Newscoop\\Entity\\Article) {\n                        $article->setArticle($a);\n                    }\n\n                    $em->persist($article);\n                }\n            }\n            $em->flush();\n            $em->getConnection()->commit();\n        } catch (\\Exception $e) {\n            $em->getConnection()->rollback();\n            $em->close();\n\n            return $e;\n        }\n\n        return $playlist;\n    }\n\n    /**\n     * Delete playlist.\n     *\n     * @param Newscoop\\Entity\\Playlist $playlist\n     */\n    public function delete(Playlist $playlist)\n    {\n        if (!$playlist) {\n            return false;\n        }\n        $em = $this->getEntityManager();\n        $em->remove($playlist);\n        $em->flush();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/PluginRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository;\nuse Newscoop\\Entity\\Plugin;\n\n/**\n * Plugin repository\n */\nclass PluginRepository extends EntityRepository\n{\n    public function addPlugin($pluginDetails, $details = '', $installedWith = 'packagist')\n    {\n        $em = $this->getEntityManager();\n\n        $plugin = $em->getRepository('Newscoop\\Entity\\Plugin')\n            ->findOneByName($pluginDetails['name']);\n\n        if (!$plugin) {\n            $authors = array();\n            foreach ($pluginDetails['authors'] as $key => $value) {\n                $authors[] = $value['name'] . '<' . $value['email'] . '>';\n            }\n\n            $plugin = new Plugin();\n            $plugin->setName($pluginDetails['name']);\n            $plugin->setVersion($pluginDetails['version']);\n            $plugin->setDetails($details);\n            $plugin->setDescription($pluginDetails['description']);\n            $plugin->setAuthor(implode(',', $authors));\n            $plugin->setLicense(implode(',', $pluginDetails['license']));\n            $plugin->setType('thirdparty');\n            $plugin->setInstalledWith($installedWith);\n\n            $em->persist($plugin);\n            $em->flush();\n        }\n    }\n\n    public function removePlugin($pluginName)\n    {\n        $em = $this->getEntityManager();\n\n        $plugin = $em->getRepository('Newscoop\\Entity\\Plugin')\n            ->findOneByName($pluginName);\n\n        if ($plugin) {\n            $em->remove($plugin);\n            $em->flush();\n        }\n    }\n\n    public function updatePlugin($pluginDetails, $details = null)\n    {\n        $em = $this->getEntityManager();\n\n        $plugin = $em->getRepository('Newscoop\\Entity\\Plugin')\n            ->findOneByName($pluginDetails['name']);\n\n        if ($plugin) {\n            $authors = array();\n            foreach ($pluginDetails['authors'] as $key => $value) {\n                $authors[] = $value['name'] . '<' . $value['email'] . '>';\n            }\n\n            $plugin->setName($pluginDetails['name']);\n            $plugin->setVersion($pluginDetails['version']);\n\n            if ($details) {\n                $plugin->setDetails($details);\n            }\n\n            $plugin->setDescription($pluginDetails['description']);\n            $plugin->setAuthor(implode(',', $authors));\n            $plugin->setLicense(implode(',', $pluginDetails['license']));\n            $plugin->setUpdatedAt(new \\DateTime());\n\n            $em->flush();\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/PublicationRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository;\n\n/**\n * Publication repository\n */\nclass PublicationRepository extends EntityRepository\n{\n    public function getPublications()\n    {\n        $em = $this->getEntityManager();\n        $qb = $em->getRepository('Newscoop\\Entity\\Publication')\n            ->createQueryBuilder('p')\n            ->select('p', 'a', 'l')\n            ->leftJoin('p.defaultAlias', 'a')\n            ->leftJoin('p.language', 'l');\n\n        return $qb->getQuery();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/RatingRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\Query\\Expr;\nuse Doctrine\\ORM\\EntityRepository;\nuse Doctrine\\ORM\\QueryBuilder;\nuse Newscoop\\Entity\\Rating;\n\n/**\n * Rating repository\n */\nclass RatingRepository extends EntityRepository\n{\n\n    /**\n     * Get new instance of the rating\n     *\n     * @return \\Newscoop\\Entity\\Rating\n     */\n    public function getPrototype()\n    {\n        return new Rating;\n    }\n\n    /**\n     * Method for saving a rating\n     *\n     * @param Rating $entity\n     * @param array $values\n     * @return Rating $entity\n     */\n    public function save(Rating $entity, $values)\n    {\n        $em = $this->getEntityManager();\n\n        $entity->setUserId($values['userId'])\n            ->setArticleId($values['articleId'])\n            ->setRatingScore($values['ratingScore'])\n            ->setTimeCreated($values['timeCreated'])\n            ->setTimeUpdated(new \\DateTime);\n\n        $em->persist($entity);\n\n        return $entity;\n    }\n\n    /**\n     * Method for updating a rating\n     *\n     * @param Rating $entity\n     * @param array $values\n     * @return Rating $entity\n     */\n    public function update(Rating $entity, $values)\n    {\n        $em = $this->getEntityManager();\n\n        $entity->setRatingScore($values['ratingScore'])\n            ->setTimeUpdated(new \\DateTime);\n\n        $em->persist($entity);\n\n        return $entity;\n    }\n\n    /**\n     * Flush method\n     */\n    public function flush()\n    {\n        $this->getEntityManager()->flush();\n    }\n\n\n    /**\n     * Get rating stats for one article\n     *\n     * @param int articleId\n     * @return array\n     */\n    public function getArticleRating($articleId)\n    {\n        $queryBuilder = $this->getEntityManager()->createQueryBuilder()\n            ->select('r.articleId, COUNT(r.id) AS number_votes, AVG(r.ratingScore) AS avg_score, SUM(r.ratingScore) AS total_score')\n            ->from($this->getEntityName(), 'r')\n            ->where('r.articleId = :articleId')\n            ->groupBy('r.articleId');\n\n        $query = $queryBuilder->getQuery()\n            ->setParameter('articleId', $articleId);\n\n        return $query->getScalarResult();\n    }\n\n    /**\n     * Get rating count\n     *\n     * @param array $criteria\n     * @return int\n     */\n    public function countBy(array $criteria)\n    {\n        $queryBuilder = $this->getEntityManager()->createQueryBuilder()\n            ->select('COUNT(u)')\n            ->from($this->getEntityName(), 'u');\n\n        foreach ($criteria as $property => $value) {\n            if (!is_array($value)) {\n                $queryBuilder->andWhere(\"u.$property = :$property\");\n            }\n        }\n\n        $query = $queryBuilder->getQuery();\n        foreach ($criteria as $property => $value) {\n            if (!is_array($value)) {\n                $query->setParameter($property, $value);\n            }\n        }\n\n        return (int) $query->getSingleScalarResult();\n\n    }\n\n    /**\n     * Get total rating score\n     *\n     * @param array $criteria\n     * @return int\n     */\n    public function totalRatingBy(array $criteria)\n    {\n        $queryBuilder = $this->getEntityManager()->createQueryBuilder()\n            ->select('SUM(u.ratingScore)')\n            ->from($this->getEntityName(), 'u');\n\n        foreach ($criteria as $property => $value) {\n            if (!is_array($value)) {\n                $queryBuilder->andWhere(\"u.$property = :$property\");\n            }\n        }\n\n        $query = $queryBuilder->getQuery();\n        foreach ($criteria as $property => $value) {\n            if (!is_array($value)) {\n                $query->setParameter($property, $value);\n            }\n        }\n\n        return (int) $query->getSingleScalarResult();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/RelatedArticleRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository;\nuse Newscoop\\Entity\\RelatedArticles;\nuse Doctrine\\ORM\\Query;\n\n/**\n * RelatedArticle repository\n */\nclass RelatedArticleRepository extends EntityRepository\n{\n    /**\n     * Get all rlated articles for article and related articles container\n     *\n     * @param  RelatedArticles $relatedArticles\n     * @param  integer         $articleNumber\n     *\n     * @return Query\n     */\n    public function getRelatedArticle($relatedArticles, $articleNumber)\n    {\n        $qb = $this->createQueryBuilder('r')\n            ->where('r.articleNumber = :articleNumber')\n            ->andWhere('r.articleListId = :relatedArticlesId')\n            ->setParameters(array(\n                'articleNumber' => $articleNumber,\n                'relatedArticlesId' => $relatedArticles->getId()\n            ));\n\n        $query = $qb->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Get all related articles for related articles container, optionaly get only count of articles\n     *\n     * @param  RelatedArticles $relatedArticles\n     * @param  boolean         $countOnly\n     *\n     * @return Query\n     */\n    public function getAllArticles($relatedArticles, $countOnly = false)\n    {\n        $qb = $this->createQueryBuilder('r')\n            ->where('r.articleListId = :articleListId')\n            ->setParameters(array(\n                'articleListId' => $relatedArticles->getId()\n            ))\n            ->orderBy('r.order', 'ASC');\n\n        if ($countOnly) {\n            return $qb->select('COUNT(r.id)')->getQuery();\n        }\n\n        $query = $qb->getQuery();\n\n        return $query;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/RelatedArticlesRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository;\n\n/**\n * RelatedArticles repository\n */\nclass RelatedArticlesRepository extends EntityRepository\n{\n    public function getRelatedArticles($articleNumber)\n    {\n        $qb = $this->createQueryBuilder('r')\n            ->where('r.articleNumber = :articleNumber')\n            ->setParameter('articleNumber', $articleNumber);\n\n        $query = $qb->getQuery();\n\n        return $query;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/SectionRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository;\nuse Newscoop\\Entity\\Publication;\nuse Newscoop\\Entity\\Subscription;\n\n/**\n * Section repository\n */\nclass SectionRepository extends EntityRepository\n{\n    public function getSections($publication, $issue = null, $language = null)\n    {\n        $em = $this->getEntityManager();\n        $queryBuilder = $em->getRepository('Newscoop\\Entity\\Section')\n            ->createQueryBuilder('s')\n            ->where('s.publication = :publication')\n            ->setParameter('publication', $publication);\n\n        if ($issue) {\n            $queryBuilder->andWhere('s.issue = :issue')\n                ->setParameter('issue', $issue);\n        }\n\n        if ($language) {\n            $queryBuilder->andWhere('s.language = :language')\n                ->setParameter('language', $language);\n        }\n\n        $countQueryBuilder = clone $queryBuilder;\n        $countQueryBuilder->select('count(s)');\n\n        $count = $countQueryBuilder->getQuery()->getSingleScalarResult();\n\n        $query = $queryBuilder->getQuery();\n        $query->setHint('knp_paginator.count', $count);\n\n        return $query;\n    }\n\n    public function getSectionsCountForPublication($publicationId)\n    {\n        $sectionsCount = $this->createQueryBuilder('s')\n            ->select('COUNT(s.id)')\n            ->andWhere('s.publication = :publicationId')\n            ->setParameter('publicationId', $publicationId)\n            ->getQuery();\n\n        return $sectionsCount;\n    }\n\n    /**\n     * Get list of publication sections\n     *\n     * @param  Newscoop\\Entity\\Publication  $publication\n     * @param  Newscoop\\Entity\\Subscription $subscription;\n     * @param  bool                         $groupByLanguage\n     * @return array\n     */\n    public function getAvailableSections(Publication $publication, Subscription $subscription, $groupByLanguage = false)\n    {\n        $em = $this->getEntityManager();\n\n        $qb = $this->createQueryBuilder('s')\n            ->leftJoin('s.language', 'l')\n            ->where('s.publication = ?1');\n\n        $groupBy = 's.number';\n        if ($groupByLanguage) {\n            $groupBy .= ', s.language';\n        }\n        $qb->groupBy($groupBy);\n\n        $qb->setParameter(1, $publication);\n\n        $sections = array();\n        $subscribed = $subscription->getSections();\n        foreach ($qb->getQuery()->getResult() as $section) {\n            foreach ($subscribed as $pattern) { // filter subscribed sections\n                if ($pattern->getSectionNumber() == $section->getNumber()) {\n                    if ($groupByLanguage && !$pattern->getLanguageId()) { // filter same section\n                        continue 2;\n                    }\n\n                    if (!$groupByLanguage && $pattern->getLanguageId() == $section->getLanguageId()) { // filter same section + language\n                        continue 2;\n                    }\n                }\n            }\n\n            $sections[] = $section;\n        }\n\n        return $sections;\n    }\n\n    public function findSectionByArticle($article)\n    {\n        $em = $this->getEntityManager();\n\n        $issue = $em->getRepository('Newscoop\\Entity\\Issue')\n            ->findOneBy(array(\n                'language' => $article->getLanguage(),\n                'publication' => $article->getPublication(),\n                'number' => $article->getIssueId(),\n            ));\n\n        if ($issue === null) {\n            return;\n        }\n\n        $section = $em->getRepository('Newscoop\\Entity\\Section')\n            ->findOneBy(array(\n                'language' => $article->getLanguage(),\n                'publication' => $article->getPublication(),\n                'issue' => $issue,\n                'number' => $article->getSectionId(),\n            ));\n\n        return $section;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/Snippet/SnippetTemplateRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Yorick Terweijden <yorick.terweijden@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Repository\\Snippet;\n\nuse Doctrine\\ORM\\Query\\Expr;\nuse Doctrine\\ORM\\EntityRepository;\nuse Doctrine\\ORM\\QueryBuilder;\nuse Newscoop\\Entity\\Snippet\\SnippetTemplate;\n\n/**\n * Snippet repository\n */\nclass SnippetTemplateRepository extends EntityRepository\n{\n\n    /**\n     * Get new instance of the Snippet\n     *\n     * @return \\Newscoop\\Entity\\Snippet\\SnippetTemplate\n     */\n    public function getPrototype()\n    {\n        return new SnippetTemplate;\n    }\n\n    public function getSnippetTemplateQueryBuilder($show)\n    {\n        if (!in_array($show, array('enabled', 'disabled', 'all'))) {\n            $show = 'enabled';\n        }\n\n        $queryBuilder = $this->createQueryBuilder('template');\n\n        if ($show == 'enabled') {\n            $queryBuilder\n                ->where('template.enabled = 1');\n        }\n\n        if ($show == 'disabled') {\n            $queryBuilder\n                ->where('template.enabled = 0');\n        }\n\n        return $queryBuilder;\n    }\n\n    /**\n     * Get SnippetTemplate by ID\n     *\n     * @param int $id SnippetTemplate ID\n     * @param string  $show  Define which Snippets to return, 'enabled' | 'disabled' | 'all'\n     *\n     * @return Newscoop\\Entity\\Snippet\\SnippetTemplate\n     */\n    public function getTemplateById($id, $show = 'enabled')\n    {\n        if (!is_numeric($id)) {\n            throw new \\InvalidArgumentException(\"ID is not numeric: \".$id);\n        }\n\n        $queryBuilder = $this->getSnippetTemplateQueryBuilder($show)\n            ->andWhere('template.id = :id')\n            ->setParameter('id', $id);\n\n        $result = $queryBuilder->getQuery()->getOneOrNullResult();\n\n        return $result;\n    }\n\n    /**\n     * Find SnippetTemplate by Name\n     *\n     * @param string  $name  SnippetTemplate Name\n     * @param string  $show  Define which Snippets to return, 'enabled' | 'disabled' | 'all'\n     * @param boolean $fuzzy Find fuzzy or not\n     *\n     * @return Doctrine\\ORM\\Query Query\n     */\n    public function findSnippetTemplatesByName($name, $show = 'enabled', $fuzzy = false)\n    {\n        $queryBuilder = $this->getSnippetTemplateQueryBuilder($show)\n            ->andWhere('template.name LIKE :name');\n\n        if ($fuzzy) {\n            $queryBuilder\n                ->setParameter('name', '%'.$name.'%');\n        } else {\n            $queryBuilder\n                ->setParameter('name', $name.'%');\n        }\n\n        return $queryBuilder->getQuery();\n    }\n\n    /**\n     * Get SnippetsTemplates for Article\n     *\n     * Returns all the SnippetsTemplates associated to the Snippets for an Article.\n     *\n     * @param int    $article  Article number\n     * @param string $language Language code in format \"en\" for example.\n     * @param string $show     Define which Snippets to return, 'enabled' | 'disabled' | 'all'\n     *\n     * @return Doctrine\\ORM\\Query Query\n     */\n    public function getSnippetTemplatesForArticle($articleNr, $languageCode, $show = 'enabled')\n    {\n        $em = $this->getEntityManager();\n        $snippetTemplateIDsQuery = $em->getRepository('Newscoop\\Entity\\Snippet')\n            ->getArticleSnippetQueryBuilder($articleNr, $languageCode, $show)\n            ->select('template.id');\n\n        $snippetTemplateIDsQueryResult = $snippetTemplateIDsQuery\n            ->distinct()\n            ->getQuery()\n            ->getResult();\n\n        $ids = array_map('current', $snippetTemplateIDsQueryResult);\n\n        $queryBuilder = $this->createQueryBuilder('template');\n\n        $queryBuilder->add('where',\n            $queryBuilder->expr()->in('template.id', $ids)\n        );\n\n        return $queryBuilder->getQuery();\n    }\n\n    /**\n     * Get Favourited SnippetTemplates\n     *\n     * @return Doctrine\\ORM\\Query Query\n     */\n    public function getFavourites()\n    {\n        $queryBuilder = $this->createQueryBuilder('template')\n            ->andWhere('template.favourite = TRUE');\n        $query = $queryBuilder->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Get Enabled SnippetTemplates\n     *\n     * @return Doctrine\\ORM\\Query Query\n     */\n    public function getEnabled()\n    {\n        $queryBuilder = $this->createQueryBuilder('template')\n            ->andWhere('template.enabled = TRUE');\n        $query = $queryBuilder->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Get Disabled SnippetTemplates\n     *\n     * @return Doctrine\\ORM\\Query Query\n     */\n    public function getDisabled()\n    {\n        $queryBuilder = $this->createQueryBuilder('template')\n            ->andWhere('template.enabled = FALSE');\n        $query = $queryBuilder->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Get Active SnippetTemplates\n     *\n     * @return Doctrine\\ORM\\Query Query\n     */\n    public function getCurrentlyUsed()\n    {\n        $em = $this->getEntityManager();\n        $snippetTemplateIDsQuery = $em->getRepository('Newscoop\\Entity\\Snippet')\n            ->createQueryBuilder('snippet')\n            ->select('template.id')\n            ->join('snippet.template', 'template')\n            ->distinct()\n            ->getQuery()\n            ->getResult();\n\n        $ids = array_map('current', $snippetTemplateIDsQuery);\n\n        $queryBuilder = $this->createQueryBuilder('template');\n        $queryBuilder->add('where',\n            $queryBuilder->expr()->in('template.id', $ids)\n        );\n\n        return $queryBuilder->getQuery();\n    }\n\n    public function deleteSnippetTemplate($id, $force = false)\n    {\n        // check if the SnippetTemplate has any Snippets attached to it.\n        $snippetTemplate = $this->getTemplateById($id, 'all');\n        if (!is_null($snippetTemplate)) {\n            $snippets = $snippetTemplate->getSnippets()->toArray();\n            if (count($snippets) == 0 || $force == true) {\n                $em = $this->getEntityManager();\n                $em->remove($snippetTemplate);\n                $em->flush();\n\n                return true;\n            } else {\n                foreach ($snippets as $snippet) {\n                    $snippetIdArr[$snippet->getId()] = $snippet->getId();\n                }\n                $snippetIds = implode(\", \", array_flip($snippetIdArr));\n\n                throw new \\Newscoop\\Exception\\ResourcesConflictException('SnippetTemplate with ID: '.$id.' is in use by Snippets ('.$snippetIds.')');\n            }\n        } else {\n            throw new \\Exception('SnippetTemplate with ID: '.$id.' does not exist');\n        }\n    }\n\n    public function save(SnippetTemplate $snippetTemplate)\n    {\n        if (!$snippetTemplate->hasName()) {\n            throw new \\InvalidArgumentException(\"SnippetTemplate name cannot be empty\");\n        }\n\n        if (!$snippetTemplate->hasTemplateCode()) {\n            throw new \\InvalidArgumentException(\"SnippetTemplate templateCode cannot be empty\");\n        }\n\n        if (!$snippetTemplate->hasFields()) {\n            throw new \\InvalidArgumentException(\"SnippetTemplate requires at least 1 SnippetTemplateField\");\n        }\n        foreach($snippetTemplate->getFields()->toArray() as $field) {\n            $field->setTemplate($snippetTemplate);\n        }\n\n        $em = $this->getEntityManager();\n        $em->persist($snippetTemplate);\n        $em->flush();\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/SnippetRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Yorick Terweijden <yorick.terweijden@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.u.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\Query\\Expr;\nuse Doctrine\\ORM\\EntityRepository;\nuse Doctrine\\ORM\\QueryBuilder;\nuse Newscoop\\Entity\\Snippet;\nuse Newscoop\\Exception\\ResourcesConflictException;\n\n/**\n * Snippet repository\n */\nclass SnippetRepository extends EntityRepository\n{\n    /**\n     * Convenience QueryBuilder for Snippets\n     *\n     * This internal function is used by almost all Repository functions,\n     * it allows for more consistency. The rest of the doc also applies\n     * to the functions using it.\n     *\n     * Returns all Snippets. If the SnippetTemplate\n     * is disabled, the Snippets depending on it won't be returned.\n     * By Default all Snippets that are Disabled themselves are not returned.\n     *\n     * @param string $show     Define which Snippets to return, 'enabled' | 'disabled' | 'all'\n     *\n     * @return Doctrine\\ORM\\Querybuilder $queryBuilder\n     */\n    protected function getSnippetQueryBuilder($show, $templateEnabled = true)\n    {\n        if (!in_array($show, array('enabled', 'disabled', 'all'))) {\n            $show = 'enabled';\n        }\n\n        $queryBuilder = $this->createQueryBuilder('snippet');\n\n        if ($templateEnabled) { // by default a Template should always be enabled\n            $queryBuilder\n                ->join('snippet.template', 'template')\n                ->andWhere('template.enabled = 1');\n        }\n\n        if ($show == 'enabled') {\n            $queryBuilder\n                ->andWhere('snippet.enabled = 1');\n        }\n\n        if ($show == 'disabled') {\n            $queryBuilder\n                ->andWhere('snippet.enabled = 0');\n        }\n\n        return $queryBuilder;\n    }\n\n    /**\n     * Convenience QueryBuilder for Snippets attached to an Article\n     *\n     * This internal function is used by almost all Repository functions,\n     * it allows for more consistency. The rest of the doc also applies\n     * to the functions using it.\n     *\n     * Returns all the associated Snippets to an Article. If the SnippetTemplate\n     * is disabled, the Snippets depending on it won't be returned.\n     * By Default all Snippets that are Disabled themselves are not returned.\n     *\n     * @param int    $article  Article number\n     * @param string $language Language code in format \"en\" for example.\n     * @param string $show     Define which Snippets to return, 'enabled' | 'disabled' | 'all'\n     *\n     * @return Doctrine\\ORM\\Querybuilder $queryBuilder\n     */\n    protected function getArticleSnippetQueryBuilder($articleNr, $language, $show)\n    {\n        $em = $this->getEntityManager();\n        $languageId = $em->getRepository('Newscoop\\Entity\\Language')\n                ->findOneByCode($language)->getId();\n\n        $queryBuilder = $this->getSnippetQueryBuilder($show)\n            ->join('snippet.articles', 'article')\n            ->andWhere('article.number = :article')\n            ->andWhere('article.language = :language')\n            ->setParameters(array(\n                'article' => $articleNr,\n                'language' => $languageId\n            ));\n\n        return $queryBuilder;\n    }\n\n    /**\n     * Get all the Articles attached to a Snippet\n     *\n     * @param integer $id SnippetID\n     *\n     * @return Doctrine\\Common\\Collections\\ArrayCollection\n     */\n    protected function getSnippetArticles($id)\n    {\n        $queryBuilder = $this->getSnippetQueryBuilder('all', false)\n            ->andWhere('snippet.id = :id')\n            ->setParameter('id', $id);\n\n        $snippet = $queryBuilder->getQuery()->getOneOrNullResult();\n\n        if (!$snippet) {\n            throw new \\Exception('Snippet with ID: '.$id.' does not exist');\n        }\n    \n        return $snippet->getArticles();\n    }\n\n    /**\n     * Get all Snippets\n     *\n     * Returns all Snippets. If the SnippetTemplate\n     * is disabled, the Snippets depending on it won't be returned.\n     * By Default all Snippets that are Disabled themselves are not returned.\n     *\n     * @param string $show     Define which Snippets to return, 'enabled' | 'disabled' | 'all'\n     *\n     * @return Doctrine\\ORM\\Query Query\n     */\n    public function getSnippets($show = 'enabled')\n    {\n        $queryBuilder = $this->getSnippetQueryBuilder($show);\n        $query = $queryBuilder->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Get Snippets for Article\n     *\n     * Returns all the associated Snippets to an Article. If the SnippetTemplate\n     * is disabled, the Snippets depending on it won't be returned.\n     * By Default all Snippets that are Disabled themselves are not returned.\n     *\n     * @param int    $article  Article number\n     * @param string $language Language code in format \"en\" for example.\n     * @param string $show     Define which Snippets to return, 'enabled' | 'disabled' | 'all'\n     *\n     * @return Doctrine\\ORM\\Query Query\n     */\n    public function getArticleSnippets($articleNr, $languageCode, $show = 'enabled')\n    {\n        $queryBuilder = $this->getArticleSnippetQueryBuilder($articleNr, $languageCode, $show);\n        $query = $queryBuilder->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Get Snippet\n     *\n     * @param int    $id   Snippet ID\n     * @param string $show Define which Snippets to return, 'enabled' | 'disabled' | 'all'\n     *\n     * @return Newscoop\\Entity\\Snippet\n     */\n    public function getSnippetById($id, $show = 'enabled', $template = true)\n    {\n        if (!is_numeric($id)) {\n            throw new \\InvalidArgumentException(\"ID is not numeric: \".$id);\n        }\n\n        $queryBuilder = $this->getSnippetQueryBuilder($show, $template)\n            ->andWhere('snippet.id = :id')\n            ->setParameter('id', $id);\n\n        $result = $queryBuilder->getQuery()->getOneOrNullResult();\n\n        return $this->checkIfSnippetIsDisabled($queryBuilder, $result, $show);\n    }\n\n    /**\n     * Check if a Snippet is disabled\n     * Internal use only\n     *\n     * @param Doctrine\\ORM\\QueryBuilder $queryBuilder\n     * @param mixed $result\n     * @param string $show\n     */\n    protected function checkIfSnippetIsDisabled($queryBuilder, $result, $show)\n    {\n        if ($show == 'enabled' && is_null($result)) {\n            $expr = $queryBuilder->getDQLPart('where')->getParts();\n            $newExpr = new \\Doctrine\\ORM\\Query\\Expr\\Andx();\n            $newExpr->addMultiple(preg_grep(\"/\\bsnippet.enabled\\b/i\", $expr, PREG_GREP_INVERT));\n            $queryBuilder->resetDQLPart('where');\n            $queryBuilder->add('where', $newExpr);\n\n            if (!is_null($queryBuilder->getQuery()->getOneOrNullResult())) {\n                throw new \\Exception('Result was found but disabled.');\n            }\n        }\n\n        return $result;\n    }\n\n    /**\n     * Get Snippet by Name\n     *\n     * @param string  $name  Snippet Name\n     * @param string  $show  Define which Snippets to return, 'enabled' | 'disabled' | 'all'\n     * @param boolean $fuzzy Find fuzzy or not\n     *\n     * @return Doctrine\\ORM\\Query Query\n     */\n    public function findSnippetsByName($name, $show = 'enabled', $fuzzy = false)\n    {\n        $queryBuilder = $this->getSnippetQueryBuilder($show)\n            ->andWhere('snippet.name LIKE :name');\n\n        if ($fuzzy) {\n            $queryBuilder\n                ->setParameter('name', '%'.$name.'%');\n        } else {\n            $queryBuilder\n                ->setParameter('name', $name.'%');\n        }\n\n        return $queryBuilder->getQuery();\n    }\n\n    /**\n     * Get Snippet by Name\n     *\n     * @param int     $article  Article number\n     * @param string  $language Language code in format \"en\" for example.\n     * @param string  $name     Snippet Name\n     * @param string  $show     Define which Snippets to return, 'enabled' | 'disabled' | 'all'\n     * @param boolean $fuzzy    Find fuzzy or not\n     *\n     * @return Doctrine\\ORM\\Query Query\n     */\n    public function findSnippetsByNameForArticle($articleNr, $languageCode, $name, $show = 'enabled', $fuzzy = false)\n    {\n        $queryBuilder = $this->getArticleSnippetQueryBuilder($articleNr, $languageCode, $show)\n            ->andWhere('snippet.name LIKE :name');\n\n        if ($fuzzy) {\n            $queryBuilder\n                ->setParameter('name', '%'.$name.'%');\n        } else {\n            $queryBuilder\n                ->setParameter('name', $name.'%');\n        }\n\n        return $queryBuilder->getQuery();\n    }\n\n\tpublic function addSnippetToArticle(Snippet $snippet, \\Newscoop\\Entity\\Article $article)\n\t{\n\t\t$snippet->addArticle($article);\n\t\t$this->save($snippet);\n\t}\n\n\tpublic function removeSnippetFromArticle(Snippet $snippet, \\Newscoop\\Entity\\Article $article)\n\t{\n\t\t$snippet->removeArticle($article);\n\t\t$this->save($snippet);\n\t}\n\n    public function deleteSnippet($id, $force = false)\n    {\n        $articles = $this->getSnippetArticles($id)->toArray();\n        if (count($articles) == 0 || $force == true) {\n            $snippet = $this->getSnippetById($id, 'all', false);\n            $em = $this->getEntityManager();\n            $em->remove($snippet);\n            $em->flush();\n\n            return true;\n        } else {\n            $articleNumbers = array();\n            foreach ($articles as $article) {\n                $articleNumbersArr[$article->getNumber()] = $article->getNumber();\n            }\n            $articleNumbers = implode(\", \", array_flip($articleNumbersArr));\n            throw new \\Newscoop\\Exception\\ResourcesConflictException('Snippet with ID: '.$id.' is in use by Articles ('.$articleNumbers.')');\n        }\n    }\n\n    public function save(Snippet $snippet)\n    {\n        if (!$snippet->hasName()) {\n            throw new \\InvalidArgumentException(\"Snippet name cannot be empty\");\n        }\n\n        foreach($snippet->getFields()->toArray() as $field) {\n            if ($field->isRequired()) {\n                if (!$field->hasData()) {\n                    throw new \\InvalidArgumentException(\"SnippetField: '\".$field->getFieldName().\"' requires a value\");\n                }\n            }\n        }\n\n        if ($snippet->getTemplate()->hasController()) {\n            $object = $snippet->getTemplate()->executeController($snippet);\n            $snippet = $object->getSnippet();\n        }\n\n        $em = $this->getEntityManager();\n        $em->persist($snippet);\n        $em->flush();\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/SubscriptionArticleRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository;\n\n/**\n * Subscription Article repository\n */\nclass SubscriptionArticleRepository extends EntityRepository\n{}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/SubscriptionIssueRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository;\n\n/**\n * Subscription Issue repository\n */\nclass SubscriptionIssueRepository extends EntityRepository\n{}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/SubscriptionSectionRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository,\n    Newscoop\\Entity\\SubscriptionSection;\n\n/**\n * Publication repository\n */\nclass SubscriptionSectionRepository extends EntityRepository\n{\n    /**\n     * Save\n     *\n     * @param Newscoop\\Entity\\SubscriptionSection $section\n     * @param array $values\n     * @return void\n     */\n    public function save(SubscriptionSection $section, array $values)\n    {\n        $em = $this->getEntityManager();\n\n        $section\n            ->setStartDate(new \\DateTime($values['start_date']))\n            ->setDays($values['days'])\n            ->setPaidDays($values['paid_days']);\n\n        $em->persist($section);\n    }\n\n    /**\n     * Delete\n     *\n     * @param Newscoop\\Entity\\SubscriptionSection $section\n     * @return void\n     */\n    public function delete(SubscriptionSection $section)\n    {\n        $em = $this->getEntityManager();\n\n        $em->remove($section);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/TemplateRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository,\n    Newscoop\\Entity\\Template;\n\n/**\n * Template repository\n */\nclass TemplateRepository extends EntityRepository\n{\n    /** @var string */\n    protected $basePath = '';\n\n    /**\n     * Set base path\n     *\n     * @param string $path\n     * @return Newscoop\\Entity\\Repository\\TemplateRepository\n     */\n    public function setBasePath($path)\n    {\n        $this->basePath = trim($path, '/');\n        return $this;\n    }\n\n    /**\n     * Get template for given key\n     *\n     * @param string $key\n     * @param bool $flush\n     * @return Newscoop\\Entity\\Template\n     */\n    public function getTemplate($key)\n    {\n        $key = $this->formatKey($key);\n\n        $template = $this->findOneBy(array(\n            'key' => $key,\n        ));\n\n        if (empty($template)) {\n            $template = new Template($key);\n            $em = $this->getEntityManager();\n            $em->persist($template);\n            $em->flush();\n        }\n\n        return $template;\n    }\n\n    /**\n     * Save template\n     *\n     * @param Newscoop\\Entity\\Template $template\n     * @param array $values\n     * @return void\n     */\n    public function save(Template $template, array $values)\n    {\n        $template\n            ->setCacheLifetime((int) $values['cache_lifetime']);\n\n        $em = $this->getEntityManager();\n        $em->persist($template);\n    }\n\n    /**\n     * Delete template\n     *\n     * @param string $key\n     * @param string $root\n     * @return void\n     */\n    public function delete($key)\n    {\n        $template = $this->findOneBy(array(\n            'key' => $this->formatKey($key),\n        ));\n\n        if (!empty($template)) {\n            $em = $this->getEntityManager();\n            $em->remove($template);\n        }\n    }\n\n    /**\n     * Update key\n     *\n     * @param string $old\n     * @param string $new\n     * @return void\n     */\n    public function updateKey($old, $new)\n    {\n        $em = $this->getEntityManager();\n\n        $old = $this->formatKey($old);\n        $new = $this->formatKey($new);\n\n        $templates = $this->createQueryBuilder('t')\n            ->where(\"t.key LIKE ?1\")\n            ->setParameter(1, \"$old%\")\n            ->getQuery()\n            ->getResult();\n\n        foreach ($templates as $template) {\n            if (strpos($template->getKey(), $old) === 0) {\n                $template->setKey(str_replace($old, $new, $template->getKey()));\n                $em->persist($template);\n            }\n        }\n\n        $em->flush();\n    }\n\n    /**\n     * Test is used\n     *\n     * @param string $key\n     * @return bool\n     */\n    public function isUsed($key)\n    {\n        $em = $this->getEntityManager();\n\n        $template = $this->findOneBy(array(\n            'key' => $this->formatKey($key),\n        ));\n\n        if (!$template) {\n            return false;\n        }\n\n        $dql = \"SELECT COUNT(i.number)\n                FROM Newscoop\\Entity\\Issue i\n                WHERE i.template = ?1\n                    OR i.sectionTemplate = ?1\n                    OR i.articleTemplate = ?1\";\n        $query = $em->createQuery($dql);\n        $query->setParameter(1, $template);\n        if ($query->getSingleScalarResult()) {\n            return true;\n        }\n\n        $dql = \"SELECT COUNT(s.number)\n                FROM Newscoop\\Entity\\Section s\n                WHERE s.template = ?1\n                    OR s.articleTemplate = ?1\";\n        $query = $em->createQuery($dql);\n        $query->setParameter(1, $template);\n        if ($query->getSingleScalarResult()) {\n            return true;\n        }\n\n        return false;\n    }\n\n    /**\n     * Format key\n     *\n     * @param string $key\n     * @return string\n     */\n    public function formatKey($key)\n    {\n        $key = trim($key, '/');\n        return ltrim(\"{$this->basePath}/$key\", '/');\n    }\n\n    public function flush()\n    {\n        return $this->getEntityManager()->flush();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/ThemeRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository,\n    Newscoop\\Entity\\Theme,\n    Newscoop\\Entity\\Theme\\Loader;\n\n/**\n */\nclass ThemeRepository extends EntityRepository\n{\n    /** @var Newscoop\\Theme\\Loader\\Loader */\n    protected $loader;\n\n    /**\n     * Set theme loader\n     *\n     * @param Newscoop\\Theme\\Loader\\Loader\n     * @return void\n     */\n    public function setLoader(Loader\\Loader $loader)\n    {\n        $this->loader = $loader;\n    }\n\n    /**\n     * Find all themes from given source\n     *\n     * @param string $from\n     * @return array\n     */\n    public function findAll()\n    {\n        // get installed versions\n        $installed = array();\n        foreach (parent::findAll() as $theme) {\n            $installed[$theme->getOffset()] = $theme;\n        }\n\n        $themes = $this->loader->findAll();\n        foreach ($themes as $theme) {\n            $offset = $theme->getOffset();\n            if (isset($installed[$offset])) {\n                $installedTheme = $installed[$offset];\n                $theme\n                    ->setId($installedTheme->getId())\n                    ->setInstalledVersion($installedTheme->getInstalledVersion());\n            }\n        }\n\n        return $themes;\n    }\n\n    /**\n     * Install theme\n     *\n     * @param string $id\n     * @return void\n     */\n    public function install($offset)\n    {\n        $theme = $this->loader->find($offset);\n        $theme->setInstalledVersion();\n        $em = $this->getEntityManager();\n        $em->persist($theme);\n    }\n\n    /**\n     * Uninstall theme\n     *\n     * @param int $id\n     * @return void\n     */\n    public function uninstall($id)\n    {\n        $em = $this->getEntityManager();\n        $theme = $em->getReference($this->getEntityName(), (int) $id);\n        $em->remove($theme);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/User/GroupRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Repository\\User;\n\nuse Doctrine\\ORM\\EntityRepository,\n    Newscoop\\Entity\\User\\Group,\n    Newscoop\\Entity\\Acl\\Role;\n\n/**\n * User Group repository\n */\nclass GroupRepository extends EntityRepository\n{\n    /**\n     * Save group\n     *\n     * @param  Newscoop\\Entity\\User\\Group $group\n     * @param  array                      $values\n     * @return void\n     */\n    public function save(Group $group, array $values)\n    {\n        $em = $this->getEntityManager();\n\n        $group->setName($values['name']);\n\n        if (!$group->getRoleId()) {\n            $role = new Role;\n            $em->persist($role);\n            $group->setRole($role);\n        }\n\n        $em->persist($group);\n        $em->flush();\n    }\n\n    /**\n     * Delete group\n     *\n     * @param  int  $id\n     * @return void\n     */\n    public function delete($id)\n    {\n        $em = $this->getEntityManager();\n        $proxy = $em->getReference('Newscoop\\Entity\\User\\Group', (int) $id);\n        $em->remove($proxy);\n        $em->flush();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/User/StaffRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\Repository\\User;\n\nuse Newscoop\\Entity\\User\\Staff,\n    Newscoop\\Entity\\Acl\\Role,\n    Newscoop\\Entity\\Repository\\UserRepository;\n\n/**\n * Staff repository\n */\nclass StaffRepository extends UserRepository\n{\n    /**\n     * Save staff\n     *\n     * @param Newscoop\\Entity\\User\\Staff $staff\n     * @param array $values\n     * @return void\n     */\n    public function save($staff, array $values)\n    {\n        $em = $this->getEntityManager();\n\n        // set groups\n        $groups = $staff->getGroups();\n        $groups->clear();\n        if (!empty($values['groups'])) {\n            foreach ($values['groups'] as $groupId) {\n                $group = $em->getReference('Newscoop\\Entity\\User\\Group', (int) $groupId);\n                $groups->add($group);\n            }\n        }\n\n        // try if will be able to manage users\n        $acl = \\Zend_Registry::get('acl')->getAcl($staff);\n        $auth = \\Zend_Auth::getInstance();\n        if ($auth->getIdentity() == $staff->getId() && !$acl->isAllowed($staff, 'user', 'manage')) {\n            throw new \\InvalidArgumentException(\"Can't prevent yourself from managing users\");\n        }\n\n        // set role\n        if ($staff->getId() == NULL) { // add\n            $role = new Role;\n            $em->persist($role);\n            $staff->setRole($role);\n        }\n\n        parent::save($staff, $values);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/UserPointsRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository,\n    Newscoop\\Entity\\UserPoints;\n\n/**\n * User repository\n */\nclass UserPointsRepository extends EntityRepository\n{\n\n    /**\n     * Find point value for action\n     *\n     * @param string $action\n     *\n     * @return int\n     */\n    public function getPointValueForAction($action)\n    {\n        $user_points = $this->findOneBy(array(\n            'action' => $action,\n        ));\n\n        if (is_null($user_points)) {\n            return 0;\n        }\n\n        return $user_points->getPoints();\n    }\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/UserRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository;\nuse Doctrine\\ORM\\Query\\Expr;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\User\\UserCriteria;\nuse Newscoop\\ListResult;\nuse Newscoop\\Search\\RepositoryInterface;\nuse Symfony\\Component\\Security\\Core\\User\\UserInterface;\nuse Symfony\\Component\\Security\\Core\\User\\UserProviderInterface;\nuse Symfony\\Component\\Security\\Core\\Exception\\UsernameNotFoundException;\nuse Symfony\\Component\\Security\\Core\\Exception\\UnsupportedUserException;\nuse Doctrine\\ORM\\NoResultException;\n\n/**\n * User repository\n */\nclass UserRepository extends EntityRepository implements RepositoryInterface, UserProviderInterface\n{\n    /** @var array */\n    protected $setters = array(\n        'username' => 'setUsername',\n        'password' => 'setPassword',\n        'first_name' => 'setFirstName',\n        'last_name' => 'setLastName',\n        'email' => 'setEmail',\n        'status' => 'setStatus',\n        'is_admin' => 'setAdmin',\n        'is_public' => 'setPublic',\n        'image' => 'setImage',\n    );\n\n    /**\n     * Save user\n     *\n     * @param  Newscoop\\Entity\\User $user\n     * @param  array                $values\n     * @return void\n     */\n    public function save($user, array $values)\n    {\n        $this->setProperties($user, $values);\n\n        if (!$user->getUsername()) {\n            throw new \\InvalidArgumentException('username_empty');\n        }\n\n        if (!$this->isUnique('username', $user->getUsername(), $user->getId())) {\n            throw new \\InvalidArgumentException('username_conflict');\n        }\n\n        if (!$user->getEmail()) {\n            throw new \\InvalidArgumentException('email_empty');\n        }\n\n        if (!$this->isUnique('email', $user->getEmail(), $user->getId())) {\n            throw new \\InvalidArgumentException('email_conflict');\n        }\n\n        if (array_key_exists('attributes', $values)) {\n            $this->setAttributes($user, (array) $values['attributes']);\n        }\n\n        if (array_key_exists('user_type', $values)) {\n            $this->setUserTypes($user, (array) $values['user_type']);\n        }\n\n        if (array_key_exists('author', $values)) {\n            $author = null;\n            if (!empty($values['author'])) {\n                $author = $this->getEntityManager()->getReference('Newscoop\\Entity\\Author', $values['author']);\n            }\n            $user->setAuthor($author);\n        }\n\n        $this->getEntityManager()->persist($user);\n    }\n\n    /**\n     * Set user properties\n     *\n     * @param  Newscoop\\Entity\\User $user\n     * @param  array                $values\n     * @return void\n     */\n    private function setProperties(User $user, array $values)\n    {\n        foreach ($this->setters as $property => $setter) {\n            if (array_key_exists($property, $values)) {\n                $user->$setter($values[$property]);\n            }\n        }\n    }\n\n    /**\n     * Set user attributes\n     *\n     * @param  Newscoop\\Entity\\User $user\n     * @param  array                $attributes\n     * @return void\n     */\n    private function setAttributes(User $user, array $attributes)\n    {\n        if (!$user->getId()) { // must persist user before adding attributes\n            $this->getEntityManager()->persist($user);\n            $this->getEntityManager()->flush();\n        }\n\n        foreach ($attributes as $name => $value) {\n            $user->addAttribute($name, $value);\n        }\n    }\n\n    /**\n     * Set user types\n     *\n     * @param  Newscoop\\Entity\\User $user\n     * @param  array                $types\n     * @return void\n     */\n    private function setUserTypes(User $user, array $types)\n    {\n        $user->getUserTypes()->clear();\n        foreach ($types as $type) {\n            $user->addUserType($this->getEntityManager()->getReference('Newscoop\\Entity\\User\\Group', $type));\n        }\n    }\n\n    /**\n     * Test if property value is unique\n     *\n     * @param  string $property\n     * @param  string $value\n     * @param  int    $id\n     * @return bool\n     */\n    public function isUnique($property, $value, $id = null)\n    {\n        $qb = $this->getEntityManager()->createQueryBuilder()\n            ->select('COUNT(u.id)')\n            ->from('Newscoop\\Entity\\User', 'u')\n            ->where(\"LOWER(u.{$property}) = LOWER(?0)\");\n\n        $params = array($value);\n\n        if ($id !== null) {\n            $qb->andWhere('u.id <> ?1');\n            $params[] = $id;\n        }\n\n        $qb->setParameters($params);\n\n        return !$qb->getQuery()->getSingleScalarResult();\n    }\n\n    public function getActiveUsers($public = true)\n    {\n        $em = $this->getEntityManager();\n\n        $queryBuilder = $em->getRepository('Newscoop\\Entity\\User')\n            ->createQueryBuilder('u')\n            ->where('u.status = :status')\n            ->andWhere('u.is_public = :public')\n            ->setParameters(array(\n                'status' => User::STATUS_ACTIVE,\n                'public' => $public\n            ));\n\n        $query = $queryBuilder->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Get getLatelyLoggedInUsers (logged in x days before today)\n     *\n     * @return int\n     */\n    public function getLatelyLoggedInUsers($daysNumber = 7, $count = false)\n    {\n        $query = $this->createQueryBuilder('u');\n\n        if ($count) {\n            $query->select('COUNT(u)');\n        }\n\n        $query = $query->where('u.lastLogin > :date')\n            ->getQuery();\n\n        $date = new \\DateTime();\n        $query->setParameter('date', $date->modify('- '.$daysNumber.' days'));\n\n        return $query;\n    }\n\n    public function getOneActiveUser($id, $public = true)\n    {\n        $em = $this->getEntityManager();\n\n        $queryBuilder = $em->getRepository('Newscoop\\Entity\\User')\n            ->createQueryBuilder('u')\n            ->where('u.status = :status')\n            ->andWhere('u.id = :id')\n            ->setParameters(array(\n                'status' => User::STATUS_ACTIVE,\n                'id' => $id\n            ));\n\n        if ($public) {\n            $queryBuilder->andWhere('u.is_public = :public')\n                ->setParameter('public', $public);\n        }\n\n        $query = $queryBuilder->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Find active members of community\n     *\n     * @param  bool      $countOnly\n     * @param  int       $offset\n     * @param  int       $limit\n     * @param  array     $editorRoles\n     * @return array|int\n     */\n    public function findActiveUsers($countOnly, $offset, $limit, array $editorRoles)\n    {\n        $expr = $this->getEntityManager()->getExpressionBuilder();\n        $qb = $this->createPublicUserQueryBuilder();\n\n        $editorIds = $this->getEditorIds($editorRoles);\n        if (!empty($editorIds)) {\n            $qb->andWhere($qb->expr()->in('u.id', $editorIds));\n        }\n\n        if ($countOnly) {\n            $qb->select('COUNT(u.id)');\n\n            return $qb->getQuery()->getSingleScalarResult();\n        }\n\n        $qb->addOrderBy('u.id', 'ASC');\n        $qb->groupBy('u.id');\n        $qb->setFirstResult($offset);\n        $qb->setMaxResults($limit);\n\n        $results = $qb->getQuery()->getResult();\n\n        return $results;\n    }\n\n    public function findVerifiedUsers($countOnly, $offset, $limit)\n    {\n        if ($countOnly) {\n            $qb = $this->getEntityManager()->createQuery('SELECT COUNT(u.id) FROM Newscoop\\Entity\\User u JOIN u.attributes a WHERE a.attribute = \\'is_verified\\' AND a.value = 1');\n\n            return $qb->getSingleScalarResult();\n        }\n\n        $qb = $this->getEntityManager()->createQuery('SELECT u FROM Newscoop\\Entity\\User u JOIN u.attributes a WHERE a.attribute = \\'is_verified\\' AND a.value = 1');\n        $qb->setFirstResult($offset);\n        $qb->setMaxResults($limit);\n\n        return $qb->getResult();\n    }\n\n    /**\n     * Create query builder for public users\n     *\n     * @return Doctrine\\ORM\\QueryBuilder\n     */\n    private function createPublicUserQueryBuilder()\n    {\n        return $this->createQueryBuilder('u')\n            ->andWhere('u.status = :status')\n            ->andWhere('u.is_public = :public')\n            ->setParameter('status', User::STATUS_ACTIVE)\n            ->setParameter('public', true);\n    }\n\n    /**\n     * Get editor ids\n     *\n     * @param  array $editorRoles\n     * @return array\n     */\n    private function getEditorIds(array $editorRoles)\n    {\n        if (empty($editorRoles)) {\n            return array();\n        }\n\n        $expr = $this->getEntityManager()->getExpressionBuilder();\n        $query = $this->createQueryBuilder('u')\n            ->select('DISTINCT(u.id)')\n            ->innerJoin('u.groups', 'g', Expr\\Join::WITH, $expr->in('g.id', $editorRoles))\n            ->getQuery();\n\n        $ids = array_map(function ($row) {\n            return (int) $row['id'];\n        }, $query->getResult());\n\n        return $ids;\n    }\n\n    /**\n     * Get user points select statement\n     *\n     * @return string\n     */\n    private function getUserPointsSelect()\n    {\n        $commentsCount = \"(SELECT COUNT(c)\";\n        $commentsCount .= \" FROM Newscoop\\Entity\\Comment c, Newscoop\\Entity\\Comment\\Commenter cc\";\n        $commentsCount .= \" WHERE c.commenter = cc AND cc.user = u AND c.status = 0) as comments\";\n\n        return \"{$commentsCount}\";\n    }\n\n    /**\n     * Return Users if their last name begins with one of the letter passed in.\n     *\n     * @param array $letters = ['a', 'b']\n     *\n     * @return array Newscoop\\Entity\\User\n     */\n    public function findUsersLastNameInRange($letters, $countOnly, $offset, $limit, $firstName = false)\n    {\n        $qb = $this->getEntityManager()->createQueryBuilder();\n\n        if ($countOnly) {\n            $qb->select('COUNT(u.id)');\n        } else {\n            $qb->select('u');\n        }\n\n        $qb->from('Newscoop\\Entity\\User', 'u');\n\n        $qb->where($qb->expr()->eq(\"u.status\", User::STATUS_ACTIVE));\n        $qb->andWhere($qb->expr()->eq(\"u.is_public\", true));\n\n        $letterIndex = $qb->expr()->orx();\n        for ($i=0; $i < count($letters); $i++) {\n            $letterIndex->add($qb->expr()->like(\"LOWER(u.last_name)\", \"'$letters[$i]%'\"));\n            if ($firstName) {\n                $letterIndex->add($qb->expr()->like(\"LOWER(u.first_name)\", \"'$letters[$i]%'\"));\n            }\n        }\n        $qb->andWhere($letterIndex);\n\n        if ($countOnly === false) {\n            $qb->orderBy('u.username', 'ASC');\n            $qb->addOrderBy('u.id', 'ASC');\n\n            $qb->setFirstResult($offset);\n            $qb->setMaxResults($limit);\n\n            return $qb->getQuery()->getResult();\n        } else {\n            return $qb->getQuery()->getOneOrNullResult();\n        }\n    }\n\n    /**\n     * Return Users if any of their searched attributes contain the searched term.\n     *\n     * @param string $search\n     *\n     * @param array $attributes\n     *\n     * @return array Newscoop\\Entity\\User\n     */\n    public function searchUsers($search, $countOnly, $offset, $limit, $attributes = array(\"first_name\", \"last_name\", \"username\"))\n    {\n        $keywords = explode(\" \", $search);\n\n        $qb = $this->getEntityManager()->createQueryBuilder();\n        $qb->select('u')\n            ->from('Newscoop\\Entity\\User', 'u');\n\n        $outerAnd = $qb->expr()->andx();\n\n        for ($i=0; $i < count($keywords); $i++) {\n            $innerOr = $qb->expr()->orx();\n            for ($j=0; $j < count($attributes); $j++) {\n                $innerOr->add($qb->expr()->like(\"u.{$attributes[$j]}\", \"'$keywords[$i]%'\"));\n            }\n            $outerAnd->add($innerOr);\n        }\n\n        $outerAnd->add($qb->expr()->eq(\"u.status\", User::STATUS_ACTIVE));\n        $outerAnd->add($qb->expr()->eq(\"u.is_public\", true));\n\n        $qb->where($outerAnd);\n\n        $qb->orderBy('u.last_name', 'ASC');\n        $qb->addOrderBy('u.first_name', 'ASC');\n        $qb->addOrderBy('u.id', 'DESC');\n\n        $qb->setFirstResult($offset);\n        $qb->setMaxResults($limit);\n\n        return $qb->getQuery()->getResult();\n    }\n\n    /**\n     * Get random list of users\n     *\n     * @param  int   $limit\n     * @return array\n     */\n    public function getRandomList($limit)\n    {\n        $query = $this->getEntityManager()->createQuery(\"SELECT u, RAND() as random FROM {$this->getEntityName()} u WHERE u.status = :status AND u.is_public = :public ORDER BY random\");\n        $query->setMaxResults($limit);\n        $query->setParameters(array(\n            'status' => User::STATUS_ACTIVE,\n            'public' => True,\n        ));\n\n        $users = array();\n        foreach ($query->getResult() as $result) {\n            $users[] = $result[0];\n        }\n\n        return $users;\n    }\n\n    /**\n     * Get editors\n     *\n     * @param  int   $blogRole\n     * @param  int   $limit\n     * @param  int   $offset\n     * @return array\n     */\n    public function findEditors($blogRole, $limit, $offset)\n    {\n        $query = $this->createQueryBuilder('u')\n            ->leftJoin('u.groups', 'g', Expr\\Join::WITH, 'g.id = ' . $blogRole)\n            ->where('u.is_admin = :admin')\n            ->andWhere('u.status = :status')\n            ->andWhere('u.author IS NOT NULL')\n            ->andWhere('g.id IS NULL')\n            ->orderBy('u.username', 'asc')\n            ->setFirstResult($offset)\n            ->setMaxResults($limit)\n            ->getQuery();\n\n        $query->setParameters(array(\n            'admin' => 1,\n            'status' => User::STATUS_ACTIVE,\n        ));\n\n        return $query->getResult();\n    }\n\n    /**\n     * Get editors count\n     *\n     * @param  int $blogRole\n     * @return int\n     */\n    public function getEditorsCount($blogRole)\n    {\n        $query = $this->getEntityManager()\n            ->createQueryBuilder()\n            ->select('COUNT(u)')\n            ->from($this->getEntityName(), 'u')\n            ->leftJoin('u.groups', 'g', Expr\\Join::WITH, 'g.id = ' . $blogRole)\n            ->where('u.is_admin = :admin')\n            ->andWhere('u.status = :status')\n            ->andWhere('u.author IS NOT NULL')\n            ->andWhere('g.id IS NULL')\n            ->getQuery();\n\n        $query->setParameters(array(\n            'admin' => 1,\n            'status' => User::STATUS_ACTIVE,\n        ));\n\n        return $query->getSingleScalarResult();\n    }\n\n    /**\n     * Get total users count\n     *\n     * @return int\n     */\n    public function countAll()\n    {\n        $query = $this->getEntityManager()->createQueryBuilder()\n            ->select('COUNT(u)')\n            ->from($this->getEntityName(), 'u')\n            ->getQuery();\n\n        return (int) $query->getSingleScalarResult();\n    }\n\n    /**\n     * Get users count for given criteria\n     *\n     * @param  array $criteria\n     * @return int\n     */\n    public function countBy(array $criteria)\n    {\n        $queryBuilder = $this->getEntityManager()->createQueryBuilder()\n            ->select('COUNT(u)')\n            ->from($this->getEntityName(), 'u');\n\n        foreach ($criteria as $property => $value) {\n            if (!is_array($value)) {\n                $queryBuilder->andWhere(\"u.$property = :$property\");\n            }\n        }\n\n        $query = $queryBuilder->getQuery();\n        foreach ($criteria as $property => $value) {\n            if (!is_array($value)) {\n                $query->setParameter($property, $value);\n            }\n        }\n\n        return (int) $query->getSingleScalarResult();\n    }\n\n    /**\n     * Delete user\n     *\n     * @param  Newscoop\\Entity\\User $user\n     * @return void\n     */\n    public function delete(User $user)\n    {\n        if ($user->isPending()) {\n            $this->getEntityManager()->remove($user);\n        } else {\n            $user->setStatus(User::STATUS_DELETED);\n            $user->setEmail(null);\n            $user->setFirstName(null);\n            $user->setLastName(null);\n            $user->setUsername($user->getUsername().'__deleted__'.date('his'));\n            $this->removeAttributes($user);\n        }\n\n        $this->getEntityManager()->flush();\n    }\n\n    /**\n     * Remove user attributes\n     *\n     * @param  Newscoop\\Entity\\User $user\n     * @return void\n     */\n    private function removeAttributes(User $user)\n    {\n        $attributes = $this->getEntityManager()->getRepository('Newscoop\\Entity\\UserAttribute')->findBy(array(\n            'user' => $user->getId(),\n        ));\n\n        foreach ($attributes as $attribute) {\n            $user->addAttribute($attribute->getName(), null);\n            $this->getEntityManager()->remove($attribute);\n        }\n    }\n\n    /**\n     * Find users for indexing\n     *\n     * @return array\n     */\n    public function getBatch($count = self::BATCH_COUNT, array $filter = null)\n    {\n        return $this->createQueryBuilder('u')\n            ->andWhere('u.indexed IS NULL OR u.indexed < u.updated')\n            ->getQuery()\n            ->setMaxResults(50)\n            ->getResult();\n    }\n\n    /**\n     * Set indexed now\n     *\n     * @param  array $users\n     * @return void\n     */\n    public function setIndexedNow(array $users)\n    {\n        if (empty($users)) {\n            return;\n        }\n\n        $this->getEntityManager()->createQuery('UPDATE Newscoop\\Entity\\User u SET u.indexed = CURRENT_TIMESTAMP() WHERE u.id IN (:users)')\n            ->setParameter('users', array_map(function ($user) { return $user->getId(); }, $users))\n            ->execute();\n    }\n\n    /**\n     * Set indexed null\n     *\n     * @return void\n     */\n    public function setIndexedNull(array $items = null)\n    {\n        $this->getEntityManager()->createQuery('UPDATE Newscoop\\Entity\\User u SET u.indexed = NULL')\n            ->execute();\n    }\n\n    /**\n     * Get newscoop login count\n     *\n     * @return int\n     */\n    public function getNewscoopLoginCount()\n    {\n        $query = $this->createQueryBuilder('u')\n            ->select('COUNT(u)')\n            ->leftJoin('u.identities', 'ui')\n            ->where('ui.user IS NULL')\n            ->andWhere('u.status = :status')\n            ->getQuery();\n\n        $query->setParameter('status', User::STATUS_ACTIVE);\n\n        return $query->getSingleScalarResult();\n    }\n\n    /**\n     * Get external login count\n     *\n     * @return int\n     */\n    public function getExternalLoginCount()\n    {\n        $query = $this->createQueryBuilder('u')\n            ->select('COUNT(u)')\n            ->leftJoin('u.identities', 'ui')\n            ->where('ui.user IS NOT NULL')\n            ->andWhere('u.status = :status')\n            ->getQuery();\n\n        $query->setParameter('status', User::STATUS_ACTIVE);\n\n        return $query->getSingleScalarResult();\n    }\n\n    /**\n     * Set user points\n     *\n     * @param  Newscoop\\Entity\\User|null $user\n     * @param  string|int                $authorId\n     * @return void\n     */\n    public function setUserPoints(User $user = null, $authorId = null)\n    {\n        $em = $this->getEntityManager();\n\n        if (!is_null($authorId)) {\n            $user = $em->getRepository('Newscoop\\Entity\\User')\n                ->findOneByAuthor($authorId);\n        }\n\n        if (!$user) {\n            return false;\n        }\n\n        $query = $this->createQueryBuilder('u')\n            ->select('u.id, ' . $this->getUserPointsSelect())\n            ->where('u.id = :user')\n            ->getQuery();\n\n        $query->setParameter('user', $user->getId());\n        $result = $query->getSingleResult();\n\n        $articlesCount = $em->getRepository('Newscoop\\Entity\\Article')\n            ->countByAuthor($user);\n\n        $total = (int) $result['comments'] + $articlesCount;\n\n        if ($user) {\n            $user->setPoints($total);\n            $em->flush();\n        }\n    }\n\n    /**\n     * Get list for given criteria\n     *\n     * @param  Newscoop\\User\\UserCriteria $criteria\n     * @return Newscoop\\ListResult\n     */\n    public function getListByCriteria(UserCriteria $criteria, $results = true)\n    {\n        $qb = $this->createQueryBuilder('u');\n\n        $qb->andWhere('u.status = :status')\n            ->setParameter('status', $criteria->status);\n\n        if (!is_null($criteria->is_public)) {\n            $qb->andWhere('u.is_public = :is_public')\n                ->setParameter('is_public', $criteria->is_public);\n        }\n\n        if ($criteria->is_author) {\n            $qb->andWhere($qb->expr()->isNotNull(\"u.author\"));\n            unset($criteria->perametersOperators['is_author']);\n        }\n\n        foreach ($criteria->perametersOperators as $key => $operator) {\n            $qb->andWhere('u.'.$key.' = :'.$key)\n                ->setParameter($key, $criteria->$key);\n        }\n\n        if (!empty($criteria->groups)) {\n            $em = $this->getEntityManager();\n            $groupRepo = $em->getRepository('Newscoop\\Entity\\User\\Group');\n            $users = array();\n            foreach ($criteria->groups as $groupId) {\n                $group = $groupRepo->findOneById($groupId);\n                if ($group instanceof \\Newscoop\\Entity\\User\\Group) {\n                    $users = array_unique(array_merge($users, array_keys($group->getUsers()->toArray())), SORT_REGULAR);\n                }\n            }\n            $op = $criteria->excludeGroups ? 'notIn' : 'in';\n            $qb->andWhere($qb->expr()->$op('u.id', ':userIds'));\n            $qb->setParameter('userIds', $users);\n        }\n\n        if (!empty($criteria->query)) {\n            $qb->andWhere($qb->expr()->orX(\"(u.username LIKE :query)\", \"(u.email LIKE :query)\"));\n            $qb->setParameter('query', '%' . trim($criteria->query, '%') . '%');\n        }\n\n        if (!empty($criteria->query_name)) {\n            $qb->andWhere($qb->expr()->orX(\"(u.last_name LIKE :query)\", \"(u.first_name LIKE :query)\"));\n            $qb->setParameter('query', trim($criteria->query_name, '%') . '%');\n            $qb->groupBy('u.last_name', 'u.first_name');\n        }\n\n        if (!empty($criteria->nameRange)) {\n            $this->addNameRangeWhere($qb, $criteria->nameRange);\n        }\n\n        if (!empty($criteria->lastLoginDays)) {\n            $qb->andWhere('u.lastLogin > :lastLogin');\n            $date = new \\DateTime();\n            $qb->setParameter('lastLogin', $date->modify('- '.$criteria->lastLoginDays.' days'));\n        }\n\n        if (count($criteria->attributes) > 0) {\n            $qb->leftJoin('u.attributes', 'ua');\n            $qb->andWhere('ua.attribute = ?1')\n                ->andWhere('ua.value = ?2')\n                ->setParameter(1, $criteria->attributes[0])\n                ->setParameter(2, $criteria->attributes[1]);\n        }\n\n        $list = new ListResult();\n        $countQb = clone $qb;\n        $countQb->select('COUNT(u)')->resetDQLPart('groupBy');\n        $list->count = (int) $countQb->getQuery()->getSingleScalarResult();\n\n        if ($criteria->firstResult != 0) {\n            $qb->setFirstResult($criteria->firstResult);\n        }\n\n        if ($criteria->maxResults != 0) {\n            $qb->setMaxResults($criteria->maxResults);\n        }\n\n        $metadata = $this->getClassMetadata();\n        foreach ($criteria->orderBy as $key => $order) {\n            if (array_key_exists($key, $metadata->columnNames)) {\n                $key = 'u.' . $key;\n            }\n\n            $qb->orderBy($key, $order);\n        }\n\n        if (!$results) {\n            return array($qb, $list->count);\n        }\n\n        $list->items = $qb->getQuery()->getResult();\n\n        return $list;\n    }\n\n    public function loadUserByUsername($usernameOrEmail)\n    {\n        $qb = $this->createQueryBuilder('u');\n        $qb->andWhere($qb->expr()->orX(\"(u.username = :usernameOrEmail)\", \"(u.email = :usernameOrEmail)\"))\n            ->setParameter('usernameOrEmail', $usernameOrEmail);\n\n        try {\n            // The Query::getSingleResult() method throws an exception if there is no record matching the criteria.\n            $user = $qb->getQuery()->getSingleResult();\n        } catch (NoResultException $e) {\n            $message = sprintf('Unable to find an user identified by \"%s\".', $usernameOrEmail);\n\n            throw new UsernameNotFoundException($message, 0, $e);\n        }\n\n        return $user;\n    }\n\n    /**\n     * [refreshUser description]\n     * @param  UserInterface $user [description]\n     * @return [type]              [description]\n     */\n    public function refreshUser(UserInterface $user)\n    {\n        $class = get_class($user);\n        if (!$this->supportsClass($class)) {\n            throw new UnsupportedUserException(\n                sprintf(\n                    'Instances of \"%s\" are not supported.',\n                    $class\n                )\n            );\n        }\n\n        return $this->find($user->getId());\n    }\n\n    public function supportsClass($class)\n    {\n        return $this->getEntityName() === $class || is_subclass_of($class, $this->getEntityName());\n    }\n\n    /**\n     * Add name first letter where condition to query builder\n     *\n     * @param  Doctrine\\ORM\\QueryBuilder $qb\n     * @param  array                     $letters\n     * @return void\n     */\n    private function addNameRangeWhere($qb, array $letters)\n    {\n        $orx = $qb->expr()->orx();\n        foreach ($letters as $letter) {\n            $orx->add($qb->expr()->like(\n                'u.username',\n                $qb->expr()->literal(substr($letter, 0, 1) . '%')\n            ));\n        }\n\n        $qb->andWhere($orx);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Repository/UserTopicRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\NewscoopBundle\\Entity\\Topic;\n\n/**\n * User Topic Repository\n */\nclass UserTopicRepository extends EntityRepository\n{\n    /**\n     * Find topics for user\n     *\n     * @param Newscoop\\Entity\\User $user   User object or user id\n     * @param string               $locale Topic locale\n     *\n     * @return array\n     */\n    public function findByUser($user, $locale = null)\n    {\n        $userId = is_int($user) ? $user : $user->getId();\n        $em = $this->getEntityManager();\n\n        $qb = $this->getEntityManager()\n            ->createQueryBuilder()\n            ->select(array('ut', 't'))\n            ->from('Newscoop\\Entity\\UserTopic', 'ut')\n            ->leftJoin('ut.user', 'u')\n            ->leftJoin('ut.topic', 't')\n            ->where('u.id = :user_id')\n            ->setParameters(array(\n                'user_id' => $userId,\n            ));\n\n        $query = $em->getRepository(\"Newscoop\\NewscoopBundle\\Entity\\Topic\")->setTranslatableHint($qb->getQuery(), $locale);\n\n        return $query->getResult();\n    }\n\n    /**\n     * Find results for user and topic\n     *\n     * @param Newscoop\\Entity\\User                 $user\n     * @param Newscoop\\NewscoopBundle\\Entity\\Topic $topic\n     *\n     * @return Newscoop\\Entity\\UserTopic\n     */\n    public function findByTopicAndUser(User $user, Topic $topic)\n    {\n        $em = $this->getEntityManager();\n        $locale = $em->getRepository(\"Newscoop\\NewscoopBundle\\Entity\\Topic\")->getTranslatableTopicLocale($topic);\n\n        $qb = $em\n            ->createQueryBuilder()\n            ->select(array('ut'))\n            ->from('Newscoop\\Entity\\UserTopic', 'ut')\n            ->leftJoin('ut.user', 'u')\n            ->leftJoin('ut.topic', 't')\n            ->leftJoin('t.translations', 'tt')\n            ->where('u.id = :user_id')\n            ->andWhere('t.id = :topic_id')\n            ->andWhere('tt.locale = :topic_language_id')\n            ->setParameters(array(\n                'user_id' => $user->getId(),\n                'topic_id' => $topic->getId(),\n                'topic_language_id' => $locale,\n            ));\n\n        return $qb->getQuery()->getResult();\n    }\n\n    /**\n     * Gets the occurence of the user's topic\n     *\n     * @param string|int $topicId Topic id\n     *\n     * @return Doctrine\\ORM\\Query\n     */\n    public function getTheOccurrenceOfTheUserTopic($topicId)\n    {\n        $query = $this->createQueryBuilder('t')\n            ->select('count(t)')\n            ->where('t.topic = :topicId')\n            ->setParameter('topicId', $topicId)\n            ->getQuery();\n\n        return $query;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Request.php",
    "content": "<?php\r\n/**\r\n * @package Newscoop\r\n * @copyright 2012 Sourcefabric o.p.s.\r\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\r\n */\r\n\r\nnamespace Newscoop\\Entity;\r\n\r\nuse Doctrine\\ORM\\Mapping AS ORM;\r\nuse Newscoop\\Entity\\Session;\r\n\r\n/**\r\n * Session entity\r\n *\r\n * @ORM\\Entity\r\n * @ORM\\Table(name=\"Requests\")\r\n */\r\nclass Request\r\n{\r\n    /**\r\n     * @ORM\\Id\r\n     * @ORM\\ManyToOne(targetEntity=\"Session\", inversedBy=\"requests\")\r\n     * @ORM\\JoinColumn(name=\"session_id\", referencedColumnName=\"id\")\r\n     */\r\n    protected $session;\r\n\r\n    /**\r\n     * @ORM\\Column(type=\"datetime\", name=\"last_stats_update\")\r\n     * @var string\r\n     */\r\n    protected $last_stats_update;\r\n\r\n    /**\r\n     * @ORM\\Id\r\n     * @ORM\\Column(type=\"integer\", name=\"object_id\", length=11)\r\n     * @var string\r\n     */\r\n    protected $object_id;\r\n\r\n    /**\r\n     * Get $session_id\r\n     * @return string\r\n     */\r\n    public function getSessionId() {\r\n        return $this->session_id;\r\n    }\r\n\r\n    /**\r\n     * Set $session\r\n     * @param Session $session\r\n     */\r\n    public function setSession(Session $session) {\r\n        $this->session = $session;\r\n\r\n        return $this;\r\n    }\r\n\r\n    /**\r\n     * Get $last_stats_update\r\n     * @return \\DateTime\r\n     */\r\n    public function getLastStatsUpdate() {\r\n        return $this->last_stats_update;\r\n    }\r\n\r\n    /**\r\n     * Set $last_stats_update\r\n     * @param \\DateTime $lastStatsUpdate\r\n     */\r\n    public function setLastStatsUpdate(\\DateTime $lastStatsUpdate) {\r\n        $this->last_stats_update = $lastStatsUpdate;\r\n\r\n        return $this;\r\n    }\r\n\r\n    /**\r\n     * Get $object_id\r\n     * @return integer\r\n     */\r\n    public function getObjectId() {\r\n        return $this->object_id;\r\n    }\r\n\r\n    /**\r\n     * Set $object_id\r\n     * @param integer $objectId\r\n     */\r\n    public function setObjectId($objectId) {\r\n        $this->object_id = $objectId;\r\n\r\n        return $this;\r\n    }\r\n}\r\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Resource.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Newscoop\\Utils\\Validation;\nuse Newscoop\\Entity\\Entity;\nuse Newscoop\\Entity\\Theme;\n\n/**\n * Provides the contections of database entries with file system or external resources.\n * The resources can be from the database or from the file system so whenever checking resources for equality use the path property.\n *\n * @ORM\\Entity\n * @ORM\\Table(name=\"resource\")\n */\nclass Resource extends AbstractEntity\n{\n    /**\n     * Provides the class name as a constant.\n     */\n    const NAME = __CLASS__;\n\n    /* --------------------------------------------------------------- */\n\n    /**\n     * @ORM\\Column(name=\"name\", nullable=FALSE)\n     * @var string\n     */\n    protected $name;\n    /**\n     * @ORM\\Column(name=\"path\", unique=TRUE, nullable=FALSE)\n     * @var string\n     */\n    protected $path;\n\n    /* --------------------------------------------------------------- */\n\n    /**\n     * Provides the name of the theme resource, must be a user frendly name used for displaying it on the UI.\n     *\n     * @return string\n     * \t\tThe name of the theme resource.\n     */\n    function getName()\n    {\n        return $this->name;\n    }\n\n    /**\n     * Set the name of the theme resource, must be a user frendly name used for displaying it on the UI.\n     *\n     * @param string $name\n     * \t\tThe name of the theme resource, must not be null or empty.\n     *\n     * @return Newscoop\\Entity\\Resource\n     * \t\tThis object for chaining purposes.\n     */\n    function setName($name)\n    {\n        Validation::notEmpty($name, 'name');\n        $this->name = $name;\n        return $this;\n    }\n\n    /* --------------------------------------------------------------- */\n\n    /**\n     * Provides the path of the resource.\n     *\n     * @return string\n     * \t\tThe path of the resource.\n     */\n    function getPath()\n    {\n        return $this->path;\n    }\n\n    /**\n     * Set the path of the resource.\n     *\n     * @param string $path\n     * \t\tThe path of the resource.\n     *\n     * @return Newscoop\\Entity\\Resource\n     * \t\tThis object for chaining purposes.\n     */\n    function setPath($path)\n    {\n        Validation::notEmpty($path, 'path');\n\t\t$this->path = str_replace('\\\\', '/', $path);\n        return $this;\n    }\n\n    /**\n     * @param string $path Should be id..\n     */\n    public function __construct($path = null)\n    {\n        if (!is_null($path))\n            $this->setPath($path);\n    }\n\n    /* --------------------------------------------------------------- */\n\n    /**\n     * Checks if the provided resource is equal with this resource.\n     * The equality is done using the resource path.\n     *\n     * @param Resource $other\n     * \t\tThe resource to compare with.\n     *\n     * @return bool\n     * \t\tTrue if the resources are considered eqaul, false otherwise.\n     */\n    function isSame(Resource $other)\n    {\n        if ($other !== NULL) {\n            return $this->path === $other->path;\n        }\n        return FALSE;\n    }\n\n    /* ----------------- LEGACY -------------------------------------- */\n\n    /**\n     * Check if the resource exists\n     *\n     * @return bool\n     *          True always for now\n     */\n    public function exists()\n    {\n        return !empty($this->path) && !empty($this->id);\n    }\n\n    /**\n     * Checks if the provided resource is equal with this resource.\n     * The equality is done using the resource path.\n     *\n     * @param Resource $other\n     * \t\tThe resource to compare with.\n     *\n     * @return bool\n     * \t\tTrue if the resources are considered eqaul, false otherwise.\n     */\n    public function sameAs(Resource $other)\n    {\n        return $this->isSame($other);\n    }\n\n    public function getProperty()\n    {\n        return;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Section.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\n\n/**\n * Section entity\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\SectionRepository\")\n * @ORM\\Table(name=\"Sections\")\n */\nclass Section\n{\n    /**\n     * Provides the class name as a constant.\n     */\n    const NAME = __CLASS__;\n\n    /**\n     * @ORM\\Id\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(name=\"id\", type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Publication\")\n     * @ORM\\JoinColumn(name=\"IdPublication\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Publication\n     */\n    protected $publication;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Issue\", inversedBy=\"sections\")\n     * @ORM\\JoinColumn(name=\"fk_issue_id\", referencedColumnName=\"id\")\n     * @var Newscoop\\Entity\\Issue\n     */\n    protected $issue;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Language\")\n     * @ORM\\JoinColumn(name=\"IdLanguage\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Language\n     */\n    protected $language;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"Number\")\n     * @var int\n     */\n    protected $number;\n\n    /**\n     * @ORM\\Column(name=\"Name\")\n     * @var string\n     */\n    protected $name;\n\n    /**\n     * @ORM\\Column(name=\"ShortName\", nullable=True)\n     * @var string\n     */\n    protected $shortName;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Template\")\n     * @ORM\\JoinColumn(name=\"SectionTplId\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Template\"\n     */\n    protected $template;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Template\")\n     * @ORM\\JoinColumn(name=\"ArticleTplId\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Template\"\n     */\n    protected $articleTemplate;\n\n    /**\n     * Link to topic articles resource\n     * @var string\n     */\n    protected $articlesLink;\n\n    /**\n     * Getter for id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Setter for id\n     *\n     * @param int $id Value to set\n     *\n     * @return self\n     */\n    public function setId($id)\n    {\n        $this->id = $id;\n\n        return $this;\n    }\n\n    /**\n     * Set link to topic articles resource\n     * @param string $articlesLink Link to topic articles resource\n     */\n    public function setArticlesLink($articlesLink)\n    {\n        $this->articlesLink = $articlesLink;\n\n        return $this;\n    }\n\n    /**\n     * Get link to topic articles resource\n     * @return string Link to topic articles resource\n     */\n    public function getArticlesLink()\n    {\n        return $this->articlesLink;\n    }\n\n    /**\n     * @param int                   $number\n     * @param string                $name\n     * @param Newscoop\\Entity\\Issue $issue\n     */\n    public function __construct($number, $name, $issue = null)\n    {\n        $this->number = (int) $number;\n        $this->name = (string) $name;\n\n        if ($issue !== null) {\n            $this->issue = $issue;\n            $this->issue->addSection($this);\n            $this->publication = $this->issue->getPublication();\n            $this->language = $this->issue->getLanguage();\n        }\n    }\n\n    /**\n     * Get language\n     *\n     * @return Newscoop\\Entity\\Language\n     */\n    public function getLanguage()\n    {\n        return $this->language;\n    }\n\n    /**\n     * Get language id\n     *\n     * @return int\n     */\n    public function getLanguageId()\n    {\n        return $this->language->getId();\n    }\n\n    /**\n     * Get language name\n     *\n     * @return string\n     */\n    public function getLanguageName()\n    {\n        return $this->language->getName();\n    }\n\n    /**\n     * Get language code\n     *\n     * @return string\n     */\n    public function getLanguageCode()\n    {\n        return $this->language !== null ? $this->language->getCode() : null;\n    }\n\n    /**\n     * Get number\n     *\n     * @return int\n     */\n    public function getNumber()\n    {\n        return $this->number;\n    }\n\n    /**\n     * Get name\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->name;\n    }\n\n    /**\n     * Set short name\n     *\n     * @param string $shortName\n     *\n     * @return void\n     */\n    public function setShortName($shortName)\n    {\n        $this->shortName = (string) $shortName;\n\n        return $this;\n    }\n\n    /**\n     * Get short name\n     *\n     * @return string\n     */\n    public function getShortName()\n    {\n        return $this->shortName;\n    }\n\n    /**\n     * Set template\n     *\n     * @param Newscoop\\Entity\\Template $template\n     *\n     * @return Newscoop\\Entity\\Section\n     */\n    public function setTemplate(Template $template)\n    {\n        $this->template = $template;\n\n        return $this;\n    }\n\n    /**\n     * Set article template\n     *\n     * @param Newscoop\\Entity\\Template $template\n     *\n     * @return Newscoop\\Entity\\Section\n     */\n    public function setArticleTemplate(Template $template)\n    {\n        $this->articleTemplate = $template;\n\n        return $this;\n    }\n\n    /**\n     * Get the issue assigned to this section\n     *\n     * @return Newscoop\\Entity\\Issue\n     */\n    public function getIssue()\n    {\n        return $this->issue;\n    }\n\n    /**\n     * Get name of section with language\n     *\n     * @return string\n     */\n    public function getNameAndLanguage()\n    {\n        return $this->getName().' ('.$this->getLanguageName().')';\n    }\n\n    /**\n     * Get name of publication\n     *\n     * @return string\n     */\n    public function getPublicationName()\n    {\n        return $this->publication->getName();\n    }\n\n    /**\n     * Get name of Issue\n     *\n     * @return string\n     */\n    public function getIssueName()\n    {\n        return $this->issue->getName();\n    }\n\n    /**\n     * String representation of this object\n     *\n     * @return string\n     */\n    public function __toString()\n    {\n        return $this->getNameAndLanguage();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Session.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\nuse Doctrine\\Common\\Collections\\ArrayCollection;\n\n/**\n * Session entity\n *\n * @ORM\\Entity\n * @ORM\\Table(name=\"Sessions\")\n */\nclass Session\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"string\", length=255)\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"start_time\")\n     */\n    protected $start_time;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"user_id\", nullable=true)\n     */\n    protected $user_id;\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"Request\", mappedBy=\"session\")\n     */\n    protected $requests;\n\n    /**\n     * Construct Session object\n     */\n    public function __construct()\n    {\n        $this->requests = new ArrayCollection();\n    }\n\n    /**\n     * Get $id\n     * @return string\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Get $start_time\n     * @return \\DateTime $start_time\n     */\n    public function getStartTime()\n    {\n        return $this->start_time;\n    }\n\n    /**\n     * Set $start_time\n     * @param \\DateTime $startTime\n     */\n    public function setStartTime(\\DateTime $startTime)\n    {\n        $this->start_time = $startTime;\n\n        return $this;\n    }\n\n    /**\n     * Get $user_id\n     * @return integer $user_id\n     */\n    public function getUserId()\n    {\n        return $this->user_id;\n    }\n\n    /**\n     * Set $user_id\n     * @param integer $userId\n     */\n    public function setUserId($userId)\n    {\n        $this->user_id = $userId;\n\n        return $this;\n    }\n\n    /**\n     * Get $requests\n     * @return ArrayCollection Session requests\n     */\n    public function getRequests()\n    {\n        return $this->requests;\n    }\n\n    /**\n     * Add new request to Session\n     * @param \\Newscoop\\Entity\\Request $request\n     */\n    public function addRequest(\\Newscoop\\Entity\\Request $request)\n    {\n        $this->requests[] = $request;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Snippet/SnippetField.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric z.ú.\n * @author Yorick Terweijden <yorick.terweijden@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity\\Snippet;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Newscoop\\Entity\\Snippet\\SnippetTemplate\\SnippetTemplateField;\n\n/**\n * Snippet Template Field entity\n *\n * @ORM\\Entity\n * @ORM\\Table(name=\"SnippetFields\")\n */\nclass SnippetField\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(name=\"Id\", type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Snippet\", inversedBy=\"fields\")\n     * @ORM\\JoinColumn(name=\"SnippetId\", referencedColumnName=\"Id\", nullable=false)\n     * @var Newscoop\\Entity\\Snippet\n     */\n    protected $snippet;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Snippet\\SnippetTemplate\\SnippetTemplateField\")\n     * @ORM\\JoinColumn(name=\"TemplateFieldId\", referencedColumnName=\"Id\", nullable=false)\n     * @var Newscoop\\Entity\\Snippet\\SnippetTemplate\\SnippetTemplateField\n     */\n    protected $templateField;\n\n    /**\n     * @ORM\\Column(name=\"Data\", type=\"text\", nullable=true)\n     * @var text\n     */\n    protected $data;\n\n    /**\n     * Doctrine is not able to read the Name of the SnippetField without a real property\n     * \n     * @ORM\\Column(name=\"Name\", type=\"string\", length=255, nullable=false)\n     * @var text\n     */\n    protected $fieldName;\n\n    public function __construct(SnippetTemplateField $templateField)\n    {\n        $this->setTemplateField($templateField);\n        $this->fieldName = $this->getFieldName();\n    }\n\n    /**\n     * Getter for id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n    \n    /**\n     * Setter for id\n     *\n     * @param int $id\n     *\n     * @return Newscoop\\Entity\\Snippet\\SnippetField\n     */\n    public function setId($id)\n    {\n        $this->id = $id;\n    \n        return $this;\n    }\n\n    /**\n     * Getter for snippet\n     *\n     * @return mixed\n     */\n    public function getSnippet()\n    {\n        return $this->snippet;\n    }\n    \n    /**\n     * Setter for snippet\n     *\n     * @param mixed $snippet Value to set\n     *\n     * @return self\n     */\n    public function setSnippet($snippet)\n    {\n        $this->snippet = $snippet;\n    \n        return $this;\n    }\n    \n\n    /**\n     * Getter for templateField name\n     *\n     * @return string\n     */\n    public function getFieldName()\n    {\n        return $this->templateField->getName();\n    }\n\n    /**\n     * Getter for templateField type\n     *\n     * @return string\n     */\n    public function getFieldType()\n    {\n        return $this->templateField->getType();\n    }\n\n    /**\n     * Getter for templateField scope\n     *\n     * @return string\n     */\n    public function getFieldScope()\n    {\n        return $this->templateField->getScope();\n    }\n\n    /**\n     * Getter for templateField required\n     *\n     * @return string\n     */\n    public function isRequired()\n    {\n        return $this->templateField->getRequired();\n    }\n\n    /**\n     * Getter for templateField\n     *\n     * @return Newscoop\\Entity\\Snippet\\SnippetTemplate\\SnippetTemplateField\n     */\n    public function getTemplateField()\n    {\n        return $this->templateField;\n    }\n    \n    /**\n     * Setter for templateField\n     *\n     * @param mixed $templateField Value to set\n     *\n     * @return Newscoop\\Entity\\Snippet\\SnippetField\n     */\n    public function setTemplateField(SnippetTemplateField $templateField)\n    {\n        $this->templateField = $templateField;\n    \n        return $this;\n    }\n\n    /**\n     * Getter for data\n     *\n     * @return mixed\n     */\n    public function getData()\n    {\n        return $this->typeJuggle($this->data);\n    }\n    \n    /**\n     * Setter for data\n     *\n     * @param mixed $data Value to set\n     *\n     * @return Newscoop\\Entity\\Snippet\\SnippetField\n     */\n    public function setData($data)\n    {\n        $this->data = $this->typeJuggle($data);\n    \n        return $this;\n    }\n\n    /**\n     * Check if Field has Data set\n     *\n     * @return mixed\n     */\n    public function hasData()\n    {\n        $data = $this->typeJuggle($this->data);\n        return !empty($data);\n    }\n\n    private function typeJuggle($data = null)\n    {\n        if ($this->getFieldType() === 'integer') {\n            $data = intval($data);\n        }\n        \n        if ($this->getFieldType() === 'bool') {\n            $data = boolval($data);\n        }\n\n        if ($this->getFieldType() === 'string') {\n            $data = strval($data);\n        }\n\n        return $data;\n    }\n    \n    /**\n     * SnippetField name\n     *\n     * @return string name\n     */\n    public function __toString()\n    {\n        return $this->getFieldName();\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Snippet/SnippetTemplate/SnippetTemplateField.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric z.ú.\n * @author Yorick Terweijden <yorick.terweijden@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity\\Snippet\\SnippetTemplate;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Newscoop\\Entity\\Snippet\\SnippetTemplate;\n\n/**\n * Snippet Template Field entity\n *\n * @ORM\\Entity\n * @ORM\\Table(name=\"SnippetTemplateField\")\n */\nclass SnippetTemplateField\n{\n    const TYPE_INT = 'integer';\n    const TYPE_TEXT = 'text';\n    const TYPE_TEXTAREA = 'textarea';\n    const TYPE_URL = 'url';\n    const TYPE_BOOL = 'boolean';\n    const SCOPE_FRONTEND = 'frontend';\n    const SCOPE_BACKEND = 'backend';\n\n    /**\n     * @ORM\\Id\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(name=\"Id\", type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(name=\"Name\", type=\"string\")\n     * @var string\n     */\n    protected $templateFieldName;\n\n    /**\n     * @ORM\\Column(name=\"Type\", type=\"string\")\n     * @var string\n     */\n    protected $type;\n\n    /**\n     * @ORM\\Column(name=\"Scope\", type=\"string\")\n     * @var string\n     */\n    protected $scope;\n\n    /**\n     * @ORM\\Column(name=\"Required\", type=\"boolean\")\n     * @var boolean\n     */\n    protected $required;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Snippet\\SnippetTemplate\", inversedBy=\"fields\")\n     * @ORM\\JoinColumn(name=\"TemplateId\", referencedColumnName=\"Id\", nullable=false)\n     * @var Newscoop\\Entity\\Snippet\\SnippetTemplate\n     */\n    protected $template;\n\n    /**\n     * Getter for id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n    \n    /**\n     * Setter for id\n     *\n     * @param int $id\n     *\n     * @return Newscoop\\Entity\\Snippet\\SnippetTemplate\\SnippetTemplateField\n     */\n    public function setId($id)\n    {\n        $this->id = $id;\n    \n        return $this;\n    }\n\n    /**\n     * Getter for name\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->templateFieldName;\n    }\n\n   public function hasName()\n   {\n      return !empty($this->templateFieldName);\n   }\n    \n    /**\n     * Setter for name\n     *\n     * @param string $templateFieldName\n     *\n     * @return Newscoop\\Entity\\Snippet\\SnippetTemplate\\SnippetTemplateField\n     */\n    public function setName($templateFieldName)\n    {\n        $this->templateFieldName = $templateFieldName;\n    \n        return $this;\n    }\n\n    /**\n     * Getter for type\n     *\n     * @return string\n     */\n    public function getType()\n    {\n        return $this->type;\n    }\n    \n    /**\n     * Setter for type\n     *\n     * @param string $type Value to set\n     *\n     * @return Newscoop\\Entity\\Snippet\\SnippetTemplate\\SnippetTemplateField\n     */\n    public function setType($type)\n    {\n        if (!in_array($type, array(self::TYPE_INT, self::TYPE_BOOL, self::TYPE_TEXT, self::TYPE_TEXTAREA, self::TYPE_URL))) {\n            throw new \\InvalidArgumentException(\"Invalid type\");\n        }\n        $this->type = $type;\n    \n        return $this;\n    }\n    \n    /**\n     * Getter for scope\n     *\n     * @return string\n     */\n    public function getScope()\n    {\n        return $this->scope;\n    }\n    \n    /**\n     * Setter for scope\n     *\n     * @param string $scope Value to set\n     *\n     * @return Newscoop\\Entity\\Snippet\\SnippetTemplate\\SnippetTemplateField\n     */\n    public function setScope($scope)\n    {\n        if (!in_array($scope, array(self::SCOPE_BACKEND, self::SCOPE_FRONTEND))) {\n            throw new \\InvalidArgumentException(\"Invalid scope\");\n        }\n        $this->scope = $scope;\n    \n        return $this;\n    }\n    \n    /**\n     * Getter for template\n     *\n     * @return mixed\n     */\n    public function getTemplate()\n    {\n        return $this->template;\n    }\n    \n    /**\n     * Setter for template\n     *\n     * @param mixed $template Value to set\n     *\n     * @return self\n     */\n    public function setTemplate($template)\n    {\n        $this->template = $template;\n    \n        return $this;\n    }\n    \n    /**\n     * Getter for required\n     *\n     * @return boolean\n     */\n    public function getRequired()\n    {\n        return $this->required;\n    }\n    \n    /**\n     * Setter for Required\n     *\n     * @param boolean $required Value to set\n     *\n     * @return self\n     */\n    public function setRequired($required)\n    {\n        $this->required = $required;\n    \n        return $this;\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Snippet/SnippetTemplate.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric z.ú.\n * @author Yorick Terweijden <yorick.terweijden@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity\\Snippet;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Doctrine\\Common\\Collections\\ArrayCollection;\nuse Newscoop\\Entity\\Snippet;\nuse Newscoop\\Entity\\Snippet\\SnippetTemplate\\SnippetTemplateField;\n\n/**\n * Snippet Template entity\n *\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\Snippet\\SnippetTemplateRepository\")\n * @ORM\\Table(name=\"SnippetTemplates\")\n */\nclass SnippetTemplate\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(name=\"Id\", type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"Newscoop\\Entity\\Snippet\", cascade={\"remove\"}, mappedBy=\"template\")\n     * @var Doctrine\\Common\\Collections\\ArrayCollection\n     */\n    protected $snippets;\n\n    /**\n     * @ORM\\Column(name=\"Name\", type=\"string\")\n     * @var string\n     */\n    protected $name;\n\n    /**\n     * @ORM\\Column(name=\"Controller\", type=\"string\", nullable=true)\n     * @var string\n     */\n    protected $controller;\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"Newscoop\\Entity\\Snippet\\SnippetTemplate\\SnippetTemplateField\", mappedBy=\"template\", cascade={\"persist\", \"remove\"}, indexBy=\"templateFieldName\")\n     * @var Doctrine\\Common\\Collections\\ArrayCollection\n     */\n    protected $fields;\n\n    /**\n     * @ORM\\Column(name=\"TemplateCode\", type=\"text\")\n     * @var text\n     */\n    protected $templateCode;\n\n    /**\n     * @ORM\\Column(name=\"Favourite\", type=\"boolean\", nullable=true)\n     * @var boolean\n     */\n    protected $favourite;\n\n    /**\n     * @ORM\\Column(name=\"Enabled\", type=\"boolean\", nullable=false)\n     * @var boolean\n     */\n    protected $enabled = true;\n\n    /**\n     * @ORM\\Column(name=\"IconInactive\", type=\"text\", nullable=true)\n     * @var text base64 encoded image\n     */\n    protected $iconInactive;\n\n    /**\n     * @ORM\\Column(name=\"IconActive\", type=\"text\", nullable=true)\n     * @var text base64 encoded image\n     */\n    protected $iconActive;\n\n    /**\n     * @ORM\\Column(name=\"Created\", type=\"datetime\", nullable=false)\n     * @var string\n     */\n    protected $created;\n\n    /**\n     * @ORM\\Column(name=\"Modified\", type=\"datetime\", nullable=false)\n     * @var string\n     */\n    protected $modified;\n\n    /**\n     * Constructs the SnippetTemplate\n     */\n    public function __construct()\n    {\n        $this->fields = new ArrayCollection();\n        $this->setCreated();\n    }\n\n    /**\n     * Getter for id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Setter for id\n     *\n     * @param int $id\n     *\n     * @return Newscoop\\Entity\\Snippet\\SnippetTemplate\n     */\n    public function setId($id)\n    {\n        $this->id = $id;\n\n        return $this;\n    }\n\n    /**\n     * Get Snippets using the selected Template\n     *\n     * @return Doctrine\\Common\\Collections\\ArrayCollection\n     */\n    public function getSnippets()\n    {\n        return $this->snippets;\n    }\n\n    /**\n     * Getter for name\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->name;\n    }\n\n   public function hasName()\n   {\n      return !empty($this->name);\n   }\n\n    /**\n     * Setter for name\n     *\n     * @param string $name\n     *\n     * @return Newscoop\\Entity\\Snippet\\SnippetTemplate\n     */\n    public function setName($name)\n    {\n        $this->name = $name;\n        $this->setModified();\n\n        return $this;\n    }\n\n    /**\n     * Getter for Controller\n     *\n     * @return string\n     */\n    public function getController()\n    {\n        return $this->controller;\n    }\n\n    /**\n     * Setter for controller\n     *\n     * @param string $controller Value to set\n     *\n     * @return Newscoop\\Entity\\Snippet\\SnippetTemplate\n     */\n    public function setController($controller)\n    {\n        $this->controller = $controller;\n        $this->setModified();\n\n        return $this;\n    }\n\n    public function hasController()\n    {\n        return !empty($this->controller);\n    }\n\n    public function executeController(Snippet $snippet, $update = false)\n    {\n        return new $this->controller($snippet, $update);\n    }\n\n    /**\n     * Check if the Template has Fields\n     *\n     * @return mixed\n     */\n    public function hasFields()\n    {\n      if (count($this->fields) >= 1) {\n         return true;\n      }\n\n      return false;\n    }\n\n    /**\n     * Getter for field\n     *\n     * @return mixed\n     */\n    public function getFields()\n    {\n        return $this->fields;\n    }\n\n    /**\n     * Add Snippet Template Field\n     *\n     * @param Newscoop\\Entity\\Snippet\\SnippetTemplate\\SnippetTemplateField $field Field to add\n     *\n     * @return Newscoop\\Entity\\Snippet\\SnippetTemplate\n     */\n    public function addField(SnippetTemplateField $field)\n    {\n        $field->setTemplate($this);\n        $this->fields->add($field);\n        $this->setModified();\n\n        return $this;\n    }\n\n    /**\n     * Create and add Snippet Template Field\n     *\n     * @param array  $parameters          Array with Parameters\n     * @param string $parameters['name']  SnippetTemplateField name\n     * @param string $parameters['type']  SnippetTemplateField type  (string | int | bool)\n     * @param string $parameters['scope'] SnippetTemplateField scope (frontend | backend)\n     *\n     * @return Newscoop\\Entity\\Snippet\\SnippetTemplate\n     */\n    public function createField(array $parameters)\n    {\n        if (!array_key_exists('name', $parameters)) {\n            throw new \\InvalidArgumentException(\"Name is not defined\");\n        }\n\n        $defaultParams = array(\n            'type' => 'string',\n            'scope' => 'frontend'\n            );\n\n        foreach ($defaultParams as $defaultParam => $defaultValue) {\n            if (!array_key_exists($defaultParam, $parameters)) {\n                $parameters[$defaultParam] = $defaultValue;\n            }\n        }\n\n        $snippetTemplateField = new SnippetTemplateField();\n        $snippetTemplateField->setName($parameters['name']);\n        $snippetTemplateField->setType($parameters['type']);\n        $snippetTemplateField->setScope($parameters['scope']);\n\n        return $this->addField($snippetTemplateField);\n    }\n\n    /**\n     * Getter for template\n     *\n     * @return string JSON\n     */\n    public function getTemplateCode()\n    {\n        return $this->templateCode;\n    }\n\n    /**\n     * Setter for template code\n     *\n     * @param string $templateCode Template Code to Set (Twig format)\n     *\n     * @return Newscoop\\Entity\\Snippet\\SnippetTemplate\n     */\n    public function setTemplateCode($templateCode)\n    {\n        $this->templateCode = $templateCode;\n        $this->setModified();\n\n        return $this;\n    }\n\n   public function hasTemplateCode()\n   {\n      return !empty($this->templateCode);\n   }\n\n    /**\n     * Getter for favourite\n     *\n     * @return boolean\n     */\n    public function getFavourite()\n    {\n        return $this->favourite;\n    }\n\n    /**\n     * Setter for favourite\n     *\n     * @param boolean $favourite\n     *\n     * @return Newscoop\\Entity\\Snippet\\SnippetTemplate\n     */\n    public function setFavourite($favourite)\n    {\n        $this->favourite = $favourite;\n        $this->setModified();\n\n        return $this;\n    }\n\n    /**\n     * Getter for enabled\n     *\n     * @return mixed\n     */\n    public function getEnabled()\n    {\n        return $this->enabled;\n    }\n\n    /**\n     * Setter for enabled\n     *\n     * @param mixed $enabled Value to set\n     *\n     * @return self\n     */\n    public function setEnabled($enabled)\n    {\n        $this->enabled = $enabled;\n        $this->setModified();\n\n        return $this;\n    }\n\n    /**\n     * Getter for iconInactive\n     *\n     * @return text base64 encoded image\n     */\n    public function getIconInactive()\n    {\n        return $this->iconInactive;\n    }\n\n    /**\n     * Setter for iconInactive\n     *\n     * @param string $iconInactive base64 encoded image\n     *\n     * @return Newscoop\\Entity\\Snippet\\SnippetTemplate\n     */\n    public function setIconInactive($iconInactive)\n    {\n        $this->iconInactive = $iconInactive;\n        $this->setModified();\n\n        return $this;\n    }\n\n    /**\n     * Getter for iconActive\n     *\n     * @return text base64 encoded image\n     */\n    public function getIconActive()\n    {\n        return $this->iconActive;\n    }\n\n    /**\n     * Setter for iconActive\n     *\n     * @param string $iconActive base64 encoded image $iconInactive\n     *\n     * @return Newscoop\\Entity\\Snippet\\SnippetTemplate\n     */\n    public function setIconActive($iconActive)\n    {\n        $this->iconActive = $iconActive;\n        $this->setModified();\n\n        return $this;\n    }\n\n    /**\n     * Getter for created\n     *\n     * @return DateTime\n     */\n    public function getCreated()\n    {\n        return $this->created;\n    }\n    \n    /**\n     * Setter for created\n     *\n     * @param DateTime $created Value to set\n     *\n     * @return Newscoop\\Entity\\Snippet\n     */\n    public function setCreated($created = null)\n    {\n        if (!($created instanceof \\DateTime)) {\n            $created = new \\DateTime(\"now\");\n        }\n        \n        $this->created = $created;    \n        $this->setModified();\n    \n        return $this;\n    }\n    \n    /**\n     * Getter for modified\n     *\n     * @return mixed\n     */\n    public function getModified()\n    {\n        return $this->modified;\n    }\n    \n    /**\n     * Setter for modified\n     *\n     * @param mixed $modified Value to set\n     *\n     * @return self\n     */\n    public function setModified($modified = null)\n    {\n        if (!($modified instanceof \\DateTime)) {\n            $modified = new \\DateTime(\"now\");\n        }\n\n        $this->modified = $modified;\n    \n        return $this;\n    }\n\n    /**\n     * Returns SnippetTemplate name\n     *\n     * @return string name\n     */\n    public function __toString()\n    {\n        return $this->name;\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Snippet.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @author Yorick Terweijden <yorick.terweijden@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse JMS\\Serializer\\Annotation\\Type;\nuse Doctrine\\Common\\Collections\\ArrayCollection;\nuse Newscoop\\Entity\\Snippet\\SnippetTemplate;\nuse Newscoop\\Entity\\Snippet\\SnippetField;\n\n/**\n * Snippet entity\n *\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\SnippetRepository\")\n * @ORM\\Table(name=\"Snippets\")\n */\nclass Snippet\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(name=\"Id\", type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Snippet\\SnippetTemplate\", cascade={\"persist\"}, inversedBy=\"snippets\")\n     * @ORM\\JoinColumn(name=\"TemplateId\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Snippet\\SnippetTemplate\n     */\n    protected $template;\n\n    /**\n     * @ORM\\Column(name=\"Name\", type=\"string\")\n     * @var string\n     */\n    protected $name;\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"Newscoop\\Entity\\Snippet\\SnippetField\", mappedBy=\"snippet\", cascade={\"persist\", \"remove\"}, indexBy=\"fieldName\")\n     * @var Doctrine\\Common\\Collections\\ArrayCollection\n     */\n    protected $fields;\n\n    /**\n     * @ORM\\ManyToMany(targetEntity=\"Newscoop\\Entity\\Article\", mappedBy=\"snippets\")\n     * @ORM\\JoinColumns({\n     *      @ORM\\JoinColumn(name=\"ArticleNr\", referencedColumnName=\"Number\"),\n     *      @ORM\\JoinColumn(name=\"LanguageId\", referencedColumnName=\"IdLanguage\")\n     *      })\n     * @var Newscoop\\Entity\\Article\n     */\n    protected $articles;\n\n    /**\n     * @ORM\\Column(name=\"Enabled\", type=\"boolean\", nullable=false)\n     * @var boolean\n     */\n    protected $enabled = true;\n\n    /**\n     * @ORM\\Column(name=\"Created\", type=\"datetime\", nullable=false)\n     * @var string\n     */\n    protected $created;\n\n    /**\n     * @ORM\\Column(name=\"Modified\", type=\"datetime\", nullable=false)\n     * @var string\n     */\n    protected $modified;\n\n    /**\n     * Constructs the Snippet\n     *\n     * @param SnippetTemplate $template SnippetTemplate to set for this Snippet\n     */\n    public function __construct(SnippetTemplate $template)\n    {\n        if (!$template->hasFields()) {\n            throw new \\Exception('SnippetTemplate should have fields');\n        }\n        if (!$template->getEnabled()) {\n            throw new \\Exception('SnippetTemplate should be enabled');\n        }\n        $this->fields = new ArrayCollection();\n        $this->articles = new ArrayCollection();\n        $this->setTemplate($template);\n        $this->setCreated();\n    }\n\n    /**\n     * Getter for id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n    \n    /**\n     * Setter for id\n     *\n     * @param int $id\n     *\n     * @return Newscoop\\Entity\\Snippet\n     */\n    public function setId($id)\n    {\n        $this->id = $id;\n    \n        return $this;\n    }\n\n    /**\n     * Getter for Template\n     *\n     * @return Newscoop\\Entity\\Snippet\\SnippetTemplate\n     */\n    public function getTemplate()\n    {\n        return $this->template;\n    }\n    \n    /**\n     * Setter for Template\n     *\n     * @param Newscoop\\Entity\\Snippet\\SnippetTemplate $template\n     *\n     * @return Newscoop\\Entity\\Snippet\n     */\n    public function setTemplate(SnippetTemplate $template)\n    {\n        $this->template = $template;\n\n        foreach ($template->getFields() as $templateField) {\n            $field = new SnippetField($templateField);\n            $field->setSnippet($this);\n            $this->addField($field);\n        }\n\n        $this->setModified();\n    \n        return $this;\n    }\n\n    /**\n     * Returns the Template Name\n     *\n     * @return string template name\n     **/\n    public function getTemplateName()\n    {\n        return $this->template->getName();\n    }\n\n    /**\n     * Returns the Template id\n     *\n     * @return int template id\n     **/\n    public function getTemplateId()\n    {\n        return $this->template->getId();\n    }\n    \n    /**\n     * Getter for Name\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->name;\n    }\n    \n    /**\n     * Setter for Name\n     *\n     * @param string $name\n     *\n     * @return Newscoop\\Entity\\Snippet\n     */\n    public function setName($name)\n    {\n        $this->name = $name;\n        $this->setModified();\n    \n        return $this;\n    }\n    \n    /**\n     * Check if Snippet has a name\n     *\n     * @return boolean\n     */\n    public function hasName()\n    {\n        return !empty($this->name);\n    }\n\n    /**\n     * Getter for fields\n     *\n     * @return Doctrine\\Common\\Collections\\ArrayCollection\n     */\n    public function getFields()\n    {\n        return $this->fields;\n    }\n\n    /**\n     * Getter for fields without the Backend scope\n     *\n     * @return Doctrine\\Common\\Collections\\ArrayCollection\n     */\n     public function getFieldsWithoutBackend() {\n        return $this->fields->filter(\n            function ($field) {\n                if ($field->getFieldScope() == 'frontend') {\n                    return $field;\n                }\n            }\n        );\n     }\n    \n    /**\n     * Add Snippet fields\n     *\n     * @param Newscoop\\Entity\\Snippet\\SnippetField $field SnippetField to add\n     *\n     * @return Newscoop\\Entity\\Snippet\n     */\n    private function addField(SnippetField $field)\n    {\n        $this->fields->set($field->getFieldName(), $field);\n    \n        return $this;\n    }\n\n    /**\n     * Set Snippet Data to the appropriate fields\n     * \n     * @param string $fieldName the name of the SnippetField\n     * @param string $fieldData the data of the SnippetField\n     *\n     * @return Newscoop\\Entity\\Snippet\n     */\n    public function setData($fieldName, $fieldData = null)\n    {\n        if ($this->fields->containsKey($fieldName)) {\n            $this->fields->get($fieldName)->setData($fieldData);\n        } else {\n            throw new \\Exception('Snippet: \"'.$this->name.'\" does not have Field: \"'.$fieldName.'\"');\n        }\n\n        $this->setModified();\n\n        return $this;\n    }\n\n    /**\n     * Return the attached Articles\n     * \n     * @return Doctrine\\Common\\Collections\\ArrayCollection\n     */\n    public function getArticles()\n    {\n        return $this->articles;\n    }\n\n    /**\n     * Add an Article to the Snippet\n     * \n     * @param Article $article the Article to attach\n     *\n     * @return Newscoop\\Entity\\Snippet\n     */\n    public function addArticle(Article $article)\n    {\n        if (!$this->articles->contains($article)) {\n            $this->articles->add($article);\n            $article->addSnippet($this);\n        }\n\n        return $this;\n    }\n\n    /**\n     * Remove an Article from the Snippet\n     * \n     * @param Article $article the Article to remove\n     *\n     * @return Newscoop\\Entity\\Snippet\n     */\n    public function removeArticle(Article $article)\n    {\n        if ($this->articles->contains($article)) {\n            $article->removeSnippet($this);\n            $this->articles->removeElement($article);\n        }\n\n        return $this;\n    }\n    \n    /**\n     * Getter for enabled\n     *\n     * @return mixed\n     */\n    public function getEnabled()\n    {\n        return $this->enabled;\n    }\n    \n    /**\n     * Setter for enabled\n     *\n     * @param mixed $enabled Value to set\n     *\n     * @return self\n     */\n    public function setEnabled($enabled)\n    {\n        $this->enabled = $enabled;\n        $this->setModified();\n    \n        return $this;\n    }\n    \n    /**\n     * Getter for created\n     *\n     * @return DateTime\n     */\n    public function getCreated()\n    {\n        return $this->created;\n    }\n    \n    /**\n     * Setter for created\n     *\n     * @param DateTime $created Value to set\n     *\n     * @return Newscoop\\Entity\\Snippet\n     */\n    public function setCreated($created = null)\n    {\n        if (!($created instanceof \\DateTime)) {\n            $created = new \\DateTime(\"now\");\n        }\n        \n        $this->created = $created;    \n        $this->setModified();\n    \n        return $this;\n    }\n    \n    /**\n     * Getter for modified\n     *\n     * @return mixed\n     */\n    public function getModified()\n    {\n        return $this->modified;\n    }\n    \n    /**\n     * Setter for modified\n     *\n     * @param mixed $modified Value to set\n     *\n     * @return self\n     */\n    public function setModified($modified = null)\n    {\n        if (!($modified instanceof \\DateTime)) {\n            $modified = new \\DateTime(\"now\");\n        }\n\n        $this->modified = $modified;\n    \n        return $this;\n    }\n    \n\n    /**\n     * Renders the Snippet with the Data into the Template\n     *\n     * @return string rendered Snippet\n     */\n    public function render()\n    {\n        $twig = new \\Twig_Environment(new \\Twig_Loader_String());\n        $fieldsToRender = array();\n\n        foreach ($this->fields as $field) {\n            $fieldsToRender[$field->getFieldName()] = $field->getData();   \n        }\n\n        $rendered = $twig->render(\n            $this->getTemplate()->getTemplateCode(),\n            $fieldsToRender\n        );\n\n        return $rendered;\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Template.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\TemplateRepository\")\n * @ORM\\Table(name=\"Templates\")\n */\nclass Template\n{\n    /**\n     * @ORM\\Id \n     * @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\", name=\"Id\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(length=255, name=\"Name\")\n     * @var string\n     */\n    protected $key;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"CacheLifetime\")\n     * @var int\n     */\n    protected $cache_lifetime;\n\n    /**\n     * @param string $key\n     * @param array $metadata\n     */\n    public function __construct($key)\n    {\n        $this->key = (string) $key;\n    }\n\n    /**\n     * Get id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return (int) $this->id;\n    }\n\n    /**\n     * Set key\n     *\n     * @param string $key\n     * @return Newscoop\\Entity\\Template\n     */\n    public function setKey($key)\n    {\n        $this->key = (string) $key;\n        return $this;\n    }\n\n    /**\n     * Get key\n     *\n     * @return string\n     */\n    public function getKey()\n    {\n        return $this->key;\n    }\n\n    /**\n     * Set cache lifetime\n     *\n     * @param int $lifetime\n     * @return Newscoop\\Entity\\Template\n     */\n    public function setCacheLifetime($lifetime)\n    {\n        $this->cache_lifetime = abs((int) $lifetime);\n        return $this;\n    }\n\n    /**\n     * Get cache lifetime\n     *\n     * @return int\n     */\n    public function getCacheLifetime()\n    {\n        return (int) $this->cache_lifetime;\n    }\n\n    /* ----- LEGACY ----- */\n\t/**\n     * Check if the template exists\n     *\n     * @return bool\n     *          True always for now\n     */\n    public function exists()\n    {\n        return true;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Theme/Loader/Loader.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity\\Theme\\Loader;\n\n/**\n * Theme Loader interface\n */\ninterface Loader\n{\n    /**\n     * Get all themes\n     *\n     * @return Traversable\n     */\n    public function findAll();\n\n    /**\n     * Get theme\n     *\n     * @param string $id\n     * @return Newscoop\\Entity\\Theme\n     */\n    public function find($id);\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Theme/Loader/LocalLoader.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity\\Theme\\Loader;\n\nuse Newscoop\\Entity\\Theme;\n\n/**\n * Local filesystem theme loader\n */\nclass LocalLoader implements Loader\n{\n    const CONFIG = 'theme.xml';\n\n    /** @var string */\n    protected $path;\n\n    /**\n     * @param string $path\n     */\n    public function __construct($path)\n    {\n        $this->path = realpath($path);\n        if (!$this->path) {\n            throw new \\InvalidArgumentException(\"'$path' not found\");\n        }\n    }\n\n    /**\n     * Get all themes\n     *\n     * @return Traversable\n     */\n    public function findAll()\n    {\n        $themes = array();\n        foreach (glob($this->formatPath()) as $configFile) {\n            $offset = basename(dirname($configFile));\n            $config = simplexml_load_file($configFile);\n            $theme = new Theme($offset, $config);\n            $themes[] = $theme;\n        }\n\n        return $themes;\n    }\n\n    /**\n     * Get theme\n     *\n     * @param string $offset\n     * @return Newscoop\\Entity\\Theme\n     */\n    public function find($offset)\n    {\n        $configFile = $this->formatPath($offset);\n        if (!file_exists($configFile)) {\n            throw new \\InvalidArgumentException(\"'$configFile' not found\");\n        }\n\n        $config = simplexml_load_file($configFile);\n        return new Theme($offset, $config);\n    }\n\n    /**\n     * Format path for offset\n     *\n     * @param string $offset\n     * @return string\n     */\n    private function formatPath($offset = '*')\n    {\n        return implode('/', array(\n            $this->path,\n            $offset,\n            self::CONFIG,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Theme.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Newscoop\\Utils\\Validation;\nuse Newscoop\\Entity\\Entity;\n\n/**\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\ThemeRepository\")\n * @ORM\\Table(name=\"Theme\")\n */\nclass Theme extends AbstractEntity\n{\n\n\t/** @var string  */\n\tprotected $path;\n\n\t/** @var string  */\n\tprotected $name;\n\n\t/** @var string  */\n\tprotected $designer;\n\n\t/** @var string  */\n\tprotected $version;\n\n\t/** @var string  */\n\tprotected $minorNewscoopVersion;\n\n\t/** @var string  */\n\tprotected $description;\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the path of the theme.\n\t *\n\t * @return string\n\t *\t\tThe path of the theme.\n\t */\n\tpublic function getPath()\n\t{\n\t\treturn $this->path;\n\t}\n\n\t/**\n\t * Set the path of the theme.\n\t *\n\t * @param string $path\n\t *\t\tThe path of the theme, must not be null or empty.\n\t *\n\t * @return Newscoop\\Entity\\Theme\n\t *\t\tThis object for chaining purposes.\n\t */\n\tpublic function setPath($path)\n\t{\n\t\tValidation::notEmpty($path, 'path');\n\t\t$this->path = str_replace('\\\\', '/', $path);\n\t\treturn $this;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the name of the theme, must be a user frendly name used for displaying it on the UI.\n\t *\n\t * @return string\n\t *\t\tThe name of the theme.\n\t */\n\tpublic function getName()\n\t{\n\t\treturn $this->name;\n\t}\n\n\t/**\n\t * Set the name of the theme, must be a user frendly name used for displaying it on the UI.\n\t *\n\t * @param string $name\n\t *\t\tThe name of the theme, must not be null or empty.\n\t *\n\t * @return Newscoop\\Entity\\Theme\n\t *\t\tThis object for chaining purposes.\n\t */\n\tpublic function setName($name)\n\t{\n\t\tValidation::notEmpty($name, 'name');\n\t\t$this->name = $name;\n\t\treturn $this;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the designer name of the theme.\n\t *\n\t * @return string\n\t *\t\tThe designer name of the theme.\n\t */\n\tpublic function getDesigner()\n\t{\n\t\treturn $this->designer;\n\t}\n\n\t/**\n\t * Set the designer name of the theme.\n\t *\n\t * @param string $designer\n\t *\t\tThe designer name of the theme, must not be null or empty.\n\t *\n\t * @return Newscoop\\Entity\\Theme\n\t *\t\tThis object for chaining purposes.\n\t */\n\tpublic function setDesigner($designer)\n\t{\n\t\tValidation::notEmpty($designer, 'designer');\n\t\t$this->designer = $designer;\n\t\treturn $this;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the version of the theme, this has to be a whell formated version name like '1.3'.\n\t *\n\t * @return string\n\t *\t\tThe version of the theme.\n\t */\n\tpublic function getVersion()\n\t{\n\t\treturn $this->version;\n\t}\n\n\t/**\n\t * Set the version of the theme, this has to be a whell formated version name like '1.3'.\n\t *\n\t * @param string $version\n\t *\t\tTThe version of the theme, must not be null or empty.\n\t *\n\t * @return Newscoop\\Entity\\Theme\n\t *\t\tThis object for chaining purposes.\n\t */\n\tpublic function setVersion($version)\n\t{\n\t\tValidation::notEmpty($version, 'version');\n\t\t$this->version = $version;\n\t\treturn $this;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the minimum newscoop version for this theme, this has to be a whell formated version name like '3.6'.\n\t *\n\t * @return string\n\t *\t\tThe minimum newscoop version of the theme.\n\t */\n\tpublic function getMinorNewscoopVersion()\n\t{\n\t\treturn $this->minorNewscoopVersion;\n\t}\n\n\t/**\n\t * Set the minimum newscoop version for this theme, this has to be a whell formated version name like '3.6'.\n\t *\n\t * @param string $minorNewscoopVersion\n\t *\t\tThe minimum newscoop version of the theme, must not be null or empty.\n\t *\n\t * @return Newscoop\\Entity\\Theme\n\t *\t\tThis object for chaining purposes.\n\t */\n\tpublic function setMinorNewscoopVersion($minorNewscoopVersion)\n\t{\n\t\tValidation::notEmpty($minorNewscoopVersion, 'minorNewscoopVersion');\n\t\t$this->minorNewscoopVersion = $minorNewscoopVersion;\n\t\treturn $this;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the desciption of the theme.\n\t *\n\t * @return string\n\t *\t\tThe description of the theme.\n\t */\n\tpublic function getDescription()\n\t{\n\t\treturn $this->description;\n\t}\n\n\t/**\n\t * Set the desciption of the theme.\n\t *\n\t * @param string $description\n\t *\t\tThe description of the theme, must not be null or empty.\n\t *\n\t * @return Newscoop\\Entity\\Theme\n\t *\t\tThis object for chaining purposes.\n\t */\n\tpublic function setDescription($description)\n\t{\n\t\t$this->description = $description;\n\t\treturn $this;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\tpublic function isInstalled()\n\t{\n\t    return true;\n\t}\n\t\n    public function getInstalledVersion()\n\t{\n\t    return 1;\n\t}\n\t\n\tpublic function toObject()\n\t{\n\t    return (object) array\n\t    ( \n\t    \t\"id\"          => (int) $this->getId(), \n\t        \"name\"        => (string) $this->getName(), \n\t        \"description\" => (string) $this->getDescription(), \n\t        \"designer\"    => (string) $this->getDesigner(), \n\t        \"path\"        => (string) $this->getPath(),\n\t        \"version\"\t  => (string) $this->getVersion(),\n\t        \"minorNewscoopVersion\" => (string) $this->getMinorNewscoopVersion(),\n\t        \"installedVersion\" => (string) $this->getInstalledVersion()\n\t    );\n\t}\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Translation.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @author Paweł Mikołąjczuk <pawel.mikolajczuk@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\n\n/**\n * Snippet entity\n *\n * @ORM\\Entity()\n * @ORM\\Table(name=\"Translations\", indexes={\n *   @ORM\\Index(name=\"phrase_language_index\", columns={\"fk_language_id\"}),\n * })\n */\nclass Translation\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(name=\"phrase_id\", type=\"integer\")\n     * @var int\n     */\n    protected $phrase_id;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"\\Newscoop\\Entity\\Language\")\n     * @ORM\\JoinColumn(name=\"fk_language_id\", referencedColumnName=\"Id\", nullable=false)\n     * @var \\Newscoop\\Entity\\Language\n     */\n    protected $language;\n\n    /**\n     * @ORM\\Column(name=\"translation_text\", type=\"text\", nullable=true)\n     * @var integer\n     */\n    protected $translationText;\n\n    /**\n     * @param int $phraseId Current phrase id for translations from autoid table.\n     */\n    public function __construct($phraseId)\n    {\n        $this->setPhraseId($phraseId);\n    }\n\n    /**\n     * Gets the value of language.\n     *\n     * @return \\Newscoop\\Entity\\Language\n     */\n    public function getLanguage()\n    {\n        return $this->language;\n    }\n\n    /**\n     * Sets the value of language.\n     *\n     * @param \\Newscoop\\Entity\\Language $language the language\n     *\n     * @return self\n     */\n    public function setLanguage(\\Newscoop\\Entity\\Language $language)\n    {\n        $this->language = $language;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of translationText.\n     *\n     * @return integer\n     */\n    public function getTranslationText()\n    {\n        return $this->translationText;\n    }\n\n    /**\n     * Sets the value of translationText.\n     *\n     * @param integer $translationText the translation text\n     *\n     * @return self\n     */\n    public function setTranslationText($translationText)\n    {\n        $this->translationText = $translationText;\n\n        return $this;\n    }\n\n    /**\n     * Return translation text when echo this object\n     *\n     * @return string\n     */\n    public function __toString()\n    {\n        return $this->translationText;\n    }\n\n    /**\n     * Gets the value of phrase_id.\n     *\n     * @return int\n     */\n    public function getPhraseId()\n    {\n        return $this->phrase_id;\n    }\n\n    /**\n     * Sets the value of phrase_id.\n     *\n     * @param int $phrase_id the phrase_id\n     *\n     * @return self\n     */\n    public function setPhraseId($phrase_id)\n    {\n        $this->phrase_id = $phrase_id;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/User/Group.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\User;\n\nuse Newscoop\\Entity\\Acl\\Role;\nuse Doctrine\\Common\\Collections\\ArrayCollection;\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * User Group entity\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\User\\GroupRepository\")\n * @ORM\\Table(name=\"liveuser_groups\")\n */\nclass Group implements \\Zend_Acl_Role_Interface\n{\n    /**\n     * @ORM\\Id @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\", name=\"group_id\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(name=\"group_define_name\")\n     * @var string\n     */\n    protected $name;\n\n    /**\n     * @ORM\\OneToOne(targetEntity=\"Newscoop\\Entity\\Acl\\Role\")\n     * @var Newscoop\\Entity\\Acl\\Role\n     */\n    protected $role;\n    \n    /**\n     * @ORM\\ManyToMany(targetEntity=\"Newscoop\\Entity\\User\", mappedBy=\"groups\", indexBy=\"id\")\n     */\n    protected $users;\n\n    /**\n     */\n    public function __construct()\n    {\n        $this->users = new ArrayCollection;\n    }\n    \n    /**\n     * Get id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Set name\n     *\n     * @param string $name\n     * @return Newscoop\\Entity\\User\\Group\n     */\n    public function setName($name)\n    {\n        $this->name = (string) $name;\n        return $this;\n    }\n\n    /**\n     * Get name\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->name;\n    }\n\n    /**\n     * Set role\n     *\n     * @param Newscoop\\Entity\\Acl\\Role $role\n     * @return Newscoop\\Entity\\User\\Group\n     */\n    public function setRole(Role $role)\n    {\n        $this->role = $role;\n        return $this;\n    }\n\n    /**\n     * Get role id\n     *\n     * @return int\n     */\n    public function getRoleId()\n    {\n        return $this->role ? $this->role->getId() : 0;\n    }\n\n    /**\n     * Get role rules\n     *\n     * @return array\n     */\n    public function getRoleRules()\n    {\n        return $this->role ? $this->role->getRules() : array();\n    }\n    \n    /**\n     * Get users\n     *\n     * @return array\n     */\n    public function getUsers()\n    {\n        return $this->users;\n    }\n\n    /**\n     * Get name\n     *\n     * @return string\n     */\n    public function __toString()\n    {\n        return $this->getName();\n    }\n}\n\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/User/Ip.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\User;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * Ip entity\n * @ORM\\Entity\n * @ORM\\Table(name=\"SubsByIP\")\n */\nclass Ip\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\User\")\n     * @ORM\\JoinColumn(name=\"IdUser\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\User\n     */\n    protected $user;\n\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"integer\", name=\"StartIP\")\n     * @var int\n     */\n    protected $ip;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"Addresses\")\n     * @var int\n     */\n    protected $number;\n\n    /**\n     * @param string $ip\n     * @param int $number\n     */\n    public function __construct($ip, $number)\n    {\n        $this->setIp($ip);\n        $this->setNumber($number);\n    }\n\n    /**\n     * Set user\n     *\n     * @param Newscoop\\Entity\\User $user\n     * @return Newscoop\\Entity\\User\\Ip\n     */\n    public function setUser(\\Newscoop\\Entity\\User $user)\n    {\n        $this->user = $user;\n        return $this;\n    }\n\n    /**\n     * Set ip\n     *\n     * @param string $ip\n     * @return Newscoop\\Entity\\User\\Ip\n     */\n    public function setIp($ip)\n    {\n        $this->ip = ip2long($ip);\n        return $this;\n    }\n\n    /**\n     * Get ip\n     *\n     * @return string\n     */\n    public function getIp()\n    {\n        return long2ip($this->ip);\n    }\n\n    /**\n     * Set number\n     *\n     * @param int $number\n     * @return Newscoop\\Entity\\User\\Ip\n     */\n    public function setNumber($number)\n    {\n        $this->number = (int) $number;\n        return $this;\n    }\n\n    /**\n     * Get number\n     *\n     * @return int\n     */\n    public function getNumber()\n    {\n        return (int) $this->number;\n    }\n\n    /**\n     * To string strategy\n     *\n     * @return string\n     */\n    public function __toString()\n    {\n        return $this->getIp();\n    }\n\n    /**\n     * Get user id\n     *\n     * @return int\n     */\n    public function getUserId()\n    {\n        return $this->user !== null ? $this->user->getId() : null;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/User/Staff.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity\\User;\n\nuse DateTime;\nuse Zend_Registry;\nuse Doctrine\\Common\\Collections\\ArrayCollection;\nuse Doctrine\\ORM\\Mapping as ORM;\nuse Newscoop\\Utils\\PermissionToAcl;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\Entity\\Acl\\Role;\n\n/**\n * Staff entity\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\User\\StaffRepository\")\n */\nclass Staff extends User implements \\Zend_Acl_Role_Interface\n{\n    /**\n     * @ORM\\ManyToMany(targetEntity=\"Newscoop\\Entity\\User\\Group\")\n     * @ORM\\JoinTable(name=\"liveuser_groupusers\",\n     *      joinColumns={@ORM\\JoinColumn(name=\"perm_user_id\", referencedColumnName=\"Id\")},\n     *      inverseJoinColumns={@ORM\\JoinColumn(name=\"group_id\", referencedColumnName=\"group_id\")}\n     * )\n     */\n    protected $groups;\n\n    /**\n     * @ORM\\OneToOne(targetEntity=\"Newscoop\\Entity\\Acl\\Role\")\n     * @var Newscoop\\Entity\\Acl\\Role\n     */\n    protected $role;\n\n    public function __construct()\n    {\n        parent::__construct();\n        $this->groups = new ArrayCollection;\n        $this->reader = 'N';\n    }\n\n    /**\n     * Get groups\n     *\n     * @return array of Newscoop\\Entity\\User\\Group\n     */\n    public function getGroups()\n    {\n        return $this->groups;\n    }\n\n    /**\n     * Set role\n     *\n     * @param Newscoop\\Entity\\Acl\\Role $role\n     * \n     * @return Newscoop\\Entity\\User\n     */\n    public function setRole(Role $role)\n    {\n        $this->role = $role;\n\n        return $this;\n    }\n\n    /**\n     * Get role id\n     *\n     * @return int\n     */\n    public function getRoleId()\n    {\n        return $this->role ? $this->role->getId() : 0;\n    }\n\n    /**\n     * Get roles\n     *\n     * @return array\n     */\n    public function getParents()\n    {\n        return $this->getGroups();\n    }\n\n    /**\n     * Check permissions\n     *\n     * @param string $permission\n     * @return bool\n     */\n    public function hasPermission($permission, $resource = null, $action = null)\n    {\n        $acl = Zend_Registry::get('acl')->getAcl($this);\n        try {\n            list($resource, $action) = PermissionToAcl::translate($permission);\n            if ($acl->isAllowed($this, strtolower($resource), strtolower($action))) {\n\t\t\t\treturn \\SaaS::singleton()->hasPermission($permission);\n            } else {\n            \treturn FALSE;\n            }\n        } catch (Exception $e) {\n            return false;\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/User.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\nuse Doctrine\\Common\\Collections\\ArrayCollection;\nuse Newscoop\\Utils\\PermissionToAcl;\nuse Newscoop\\Entity\\Acl\\Role;\nuse Newscoop\\Entity\\User\\Group;\nuse Newscoop\\View\\UserView;\nuse Symfony\\Component\\Security\\Core\\User\\UserInterface;\nuse Symfony\\Component\\Security\\Core\\User\\AdvancedUserInterface;\nuse Symfony\\Component\\Security\\Core\\User\\EquatableInterface;\nuse Zend_View_Abstract;\nuse Newscoop\\Search\\DocumentInterface;\nuse DateTime;\n\n/**\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\UserRepository\")\n * @ORM\\Table(name=\"liveuser_users\", uniqueConstraints={\n *      @ORM\\UniqueConstraint(name=\"username_idx\", columns={\"Uname\"})\n * })\n * @ORM\\HasLifecycleCallbacks\n */\nclass User implements \\Zend_Acl_Role_Interface, UserInterface, AdvancedUserInterface, \\Serializable, EquatableInterface, DocumentInterface\n{\n    const STATUS_INACTIVE = 0;\n    const STATUS_ACTIVE = 1;\n    const STATUS_BANNED = 2;\n    const STATUS_DELETED = 3;\n\n    const HASH_SEP = '$';\n    const HASH_ALGO = 'sha1';\n\n    /**\n     * @ORM\\Id @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\", name=\"Id\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(type=\"string\", length=80, name=\"EMail\")\n     * @var string\n     */\n    protected $email;\n\n    /**\n     * @ORM\\Column(type=\"string\", length=80, nullable=TRUE, name=\"UName\")\n     * @var string\n     */\n    protected $username;\n\n    /**\n     * @ORM\\Column(type=\"string\", length=60, nullable=TRUE, name=\"Password\")\n     * @var string\n     */\n    protected $password;\n\n    /**\n     * @ORM\\Column(type=\"string\", length=80, nullable=TRUE, name=\"Name\")\n     * @var string\n     */\n    protected $first_name;\n\n    /**\n     * @ORM\\Column(type=\"string\", length=80, nullable=TRUE)\n     * @var string\n     */\n    protected $last_name;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"time_created\")\n     * @var DateTime\n     */\n    protected $created;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"time_updated\", nullable=true)\n     * @var DateTime\n     */\n    protected $updated;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"lastLogin\", nullable=true)\n     * @var DateTime\n     */\n    protected $lastLogin;\n\n    /**\n     * @ORM\\Column(type=\"integer\", length=1)\n     * @var int\n     */\n    protected $status = self::STATUS_INACTIVE;\n\n    /**\n     * @ORM\\Column(type=\"boolean\")\n     * @var bool\n     */\n    protected $is_admin;\n\n    /**\n     * @ORM\\Column(type=\"boolean\")\n     * @var bool\n     */\n    protected $is_public;\n\n    /**\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $points;\n\n    /**\n     * @ORM\\Column(type=\"string\", length=255, nullable=TRUE)\n     * @var string\n     */\n    public $image;\n\n    /**\n     * @ORM\\OneToOne(targetEntity=\"Newscoop\\Entity\\Acl\\Role\", cascade={\"ALL\"})\n     * @var Newscoop\\Entity\\Acl\\Role\n     */\n    protected $role;\n\n    /**\n     * @ORM\\ManyToMany(targetEntity=\"Newscoop\\Entity\\User\\Group\", inversedBy=\"users\")\n     * @ORM\\JoinTable(name=\"liveuser_groupusers\",\n     *      joinColumns={@ORM\\JoinColumn(name=\"perm_user_id\", referencedColumnName=\"Id\")},\n     *      inverseJoinColumns={@ORM\\JoinColumn(name=\"group_id\", referencedColumnName=\"group_id\")}\n     *      )\n     * @var Doctrine\\Common\\Collections\\Collection;\n     */\n    protected $groups;\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"UserAttribute\", mappedBy=\"user\", cascade={\"ALL\"}, indexBy=\"attribute\")\n     * @var Doctrine\\Common\\Collections\\Collection;\n     */\n    protected $attributes;\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"Newscoop\\Entity\\Comment\\Commenter\", mappedBy=\"user\", cascade={\"ALL\"}, indexBy=\"name\")\n     * @var Doctrine\\Common\\Collections\\Collection;\n     */\n    protected $commenters;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"password_reset_token\", length=85, nullable=True)\n     * @var string\n     */\n    protected $resetToken;\n\n    /**\n     * @ORM\\Column(type=\"string\", nullable=True)\n     * @var int\n     */\n    protected $subscriber;\n\n    /**\n     * @ORM\\OneToOne(targetEntity=\"Author\", inversedBy=\"user\")\n     * @var Newscoop\\Entity\\Author\n     */\n    protected $author;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", nullable=True)\n     * @var DateTime\n     */\n    protected $indexed;\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"Newscoop\\Entity\\UserIdentity\", mappedBy=\"user\", cascade={\"remove\"})\n     * @var Doctrine\\Common\\Collections\\Collection\n     */\n    protected $identities;\n\n    /**\n     * @ORM\\Column(type=\"integer\", nullable=True, name=\"registered_with_publication\")\n     * @var int\n     */\n    protected $publication;\n\n    /**\n     * @ORM\\Column(type=\"string\", nullable=True, name=\"StrAddress\")\n     * @var string\n     */\n    protected $street;\n\n    /**\n     * @ORM\\Column(type=\"string\", nullable=True, length=70, name=\"PostalCode\")\n     * @var string\n     */\n    protected $postal;\n\n    /**\n     * @ORM\\Column(type=\"string\", nullable=True, name=\"City\")\n     * @var string\n     */\n    protected $city;\n\n    /**\n     * @ORM\\Column(type=\"string\", nullable=True, length=20, name=\"Phone\")\n     * @var string\n     */\n    protected $phone;\n\n    /**\n     * @ORM\\Column(type=\"string\", nullable=True, length=32, name=\"State\")\n     * @var string\n     */\n    protected $state;\n\n    /**\n     * @ORM\\Column(type=\"string\", nullable=True, length=21, name=\"CountryCode\")\n     * @var string\n     */\n    protected $countryCode;\n\n    /**\n     * @ORM\\ManyToMany(targetEntity=\"Newscoop\\GimmeBundle\\Entity\\Client\", inversedBy=\"users\")\n     * @ORM\\JoinTable(name=\"user_oauth_clients\",\n     *      joinColumns={\n     *          @ORM\\JoinColumn(name=\"user_id\", referencedColumnName=\"Id\")\n     *      },\n     *      inverseJoinColumns={\n     *          @ORM\\JoinColumn(name=\"client_id\", referencedColumnName=\"id\")\n     *      }\n     *  )\n     * @var Newscoop\\Package\\Package\n     */\n    protected $clients;\n\n    /**\n     * @ORM\\ManyToMany(targetEntity=\"Newscoop\\NewscoopBundle\\Entity\\Topic\")\n     * @ORM\\JoinTable(name=\"user_topic\",\n     *      joinColumns={\n     *          @ORM\\JoinColumn(name=\"user_id\", referencedColumnName=\"Id\")\n     *      },\n     *      inverseJoinColumns={\n     *          @ORM\\JoinColumn(name=\"topic_id\", referencedColumnName=\"id\")\n     *      }\n     *  )\n     * @var Doctrine\\Common\\Collections\\ArrayCollection\n     */\n    protected $topics;\n\n    /**\n     * @param string $email\n     */\n    public function __construct($email = null)\n    {\n        $this->email = $email;\n        $this->created = $this->updated = new \\DateTime();\n        $this->groups = new ArrayCollection();\n        $this->attributes = new ArrayCollection();\n        $this->identities = new ArrayCollection();\n        $this->clients = new ArrayCollection();\n        $this->role = new Role();\n        $this->is_admin = false;\n        $this->is_public = false;\n        $this->setPassword($this->generateRandomString(6)); // make sure password is not empty\n        $this->points = 0;\n    }\n\n    /**\n     * Get id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return (int) $this->id;\n    }\n\n    /**\n     * Set username\n     *\n     * @param  string               $username\n     * @return Newscoop\\Entity\\User\n     */\n    public function setUsername($username)\n    {\n        $username = preg_replace('~[^\\\\pL0-9_.]+~u', '-', $username);\n        $username = trim($username, '-.');\n        $this->username = str_replace('-', ' ', $username);\n\n        return $this;\n    }\n\n    /**\n     * Get username\n     *\n     * @return string\n     */\n    public function getUsername()\n    {\n        return (string) $this->username;\n    }\n\n    /**\n     * Set password\n     *\n     * @param  string               $password\n     * @return Newscoop\\Entity\\User\n     */\n    public function setPassword($password)\n    {\n        $salt = $this->generateRandomString();\n        $this->password = implode(self::HASH_SEP, array(\n            self::HASH_ALGO,\n            $salt,\n            hash(self::HASH_ALGO, $salt.$password),\n        ));\n\n        return $this;\n    }\n\n    /**\n     * Check password\n     *\n     * @param  string $password\n     * @return bool\n     */\n    public function checkPassword($password)\n    {\n        if (sizeof(explode(self::HASH_SEP, $this->password)) != 3) { // fallback\n            if ($this->password == sha1($password)) { // update old password on success\n                $this->setPassword($password);\n\n                return true;\n            }\n\n            return false;\n        }\n\n        list($algo, $salt, $password_hash) = explode(self::HASH_SEP, $this->password);\n\n        return $password_hash === hash($algo, $salt.$password);\n    }\n\n    /**\n     * Get password salt for authentication\n     * @return string\n     */\n    public function getSalt()\n    {\n        list($algo, $salt, $password_hash) = explode(self::HASH_SEP, $this->password);\n\n        return $salt;\n    }\n\n    /**\n     * Get password for authentication\n     * @return [type] [description]\n     */\n    public function getPassword()\n    {\n        return $this->password;\n    }\n\n    /**\n     * Removes sensitive data from the user.\n     */\n    public function eraseCredentials()\n    {\n        return true;\n    }\n\n    /**\n     * Get random string\n     *\n     * @param  int    $length\n     * @param  string $allowed_chars\n     * @return string\n     */\n    final public function generateRandomString($length = 12, $allowed_chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789')\n    {\n        $return = '';\n        for ($i = 0; $i < $length; $i++) {\n            $return .= $allowed_chars[mt_rand(0, strlen($allowed_chars) - 1)];\n        }\n\n        return $return;\n    }\n\n    /**\n     * Set first name\n     *\n     * @param  string               $first_name\n     * @return Newscoop\\Entity\\User\n     */\n    public function setFirstName($first_name)\n    {\n        $this->first_name = (string) $first_name;\n\n        return $this;\n    }\n\n    /**\n     * Get first name\n     *\n     * @return string\n     */\n    public function getFirstName()\n    {\n        return (string) $this->first_name;\n    }\n\n    /**\n     * Set last name\n     *\n     * @param  string               $last_name\n     * @return Newscoop\\Entity\\User\n     */\n    public function setLastName($last_name)\n    {\n        $this->last_name = (string) $last_name;\n\n        return $this;\n    }\n\n    /**\n     * Get last name\n     *\n     * @return string\n     */\n    public function getLastName()\n    {\n        return (string) $this->last_name;\n    }\n\n    /**\n     * Get name\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        $name = $this->getFirstName().' '.$this->getLastName();\n\n        return $name;\n    }\n\n    /**\n     * Get real name\n     *\n     * @return string\n     */\n    public function getRealName()\n    {\n        return (string) $this->first_name.' '.$this->last_name;\n    }\n\n    /**\n     * Set status\n     *\n     * @param  int                  $status\n     * @return Newscoop\\Entity\\User\n     */\n    public function setStatus($status)\n    {\n        static $statuses = array(\n            self::STATUS_INACTIVE,\n            self::STATUS_ACTIVE,\n            self::STATUS_BANNED,\n            self::STATUS_DELETED,\n        );\n\n        if (!in_array($status, $statuses)) {\n            throw new \\InvalidArgumentException(\"Unknown status '$status'\");\n        }\n\n        $this->status = $status;\n\n        return $this;\n    }\n\n    /**\n     * Get status\n     *\n     * @return int\n     */\n    public function getStatus()\n    {\n        return (int) $this->status;\n    }\n\n    /**\n     * Set user as active\n     *\n     * @return Newscoop\\Entity\\User\n     */\n    public function setActive()\n    {\n        return $this->setStatus(self::STATUS_ACTIVE);\n    }\n\n    /**\n     * Test if user is active\n     *\n     * @return bool\n     */\n    public function isActive()\n    {\n        return $this->status == self::STATUS_ACTIVE;\n    }\n\n    /**\n     * Test if user is banned\n     *\n     * @return bool\n     */\n    public function isBanned()\n    {\n        return $this->status == self::STATUS_BANNED;\n    }\n\n    /**\n     * Test if user is pending\n     *\n     * @return bool\n     */\n    public function isPending()\n    {\n        return $this->status == self::STATUS_INACTIVE || empty($this->username);\n    }\n\n    /**\n     * Set email\n     *\n     * @param  string               $email\n     * @return Newscoop\\Entity\\User\n     */\n    public function setEmail($email)\n    {\n        $this->email = (string) $email;\n\n        return $this;\n    }\n\n    /**\n     * Get email\n     *\n     * @return string\n     */\n    public function getEmail()\n    {\n        return $this->email;\n    }\n\n    /**\n     * Get created datetime\n     *\n     * @return DateTime\n     */\n    public function getCreated()\n    {\n        return $this->created;\n    }\n\n    /**\n     * Get updated datetime\n     *\n     * @return DateTime\n     */\n    public function getUpdated()\n    {\n        return $this->updated;\n    }\n\n    /**\n     * Set admin switch\n     *\n     * @param  bool                 $admin\n     * @return Newscoop\\Entity\\User\n     */\n    public function setAdmin($admin)\n    {\n        $this->is_admin = (bool) $admin;\n\n        return $this;\n    }\n\n    /**\n     * Test if user is admin\n     *\n     * @return bool\n     */\n    public function isAdmin()\n    {\n        return (bool) $this->is_admin;\n    }\n\n    /**\n     * Set user is public\n     *\n     * @param  bool                 $public\n     * @return Newscoop\\Entity\\User\n     */\n    public function setPublic($public = true)\n    {\n        $this->is_public = (bool) $public;\n\n        return $this;\n    }\n\n    /**\n     * Test if user is public\n     *\n     * @return bool\n     */\n    public function isPublic()\n    {\n        return (bool) $this->is_public;\n    }\n\n    /**\n     * Get points\n     *\n     * @return int\n     */\n    public function getPoints()\n    {\n        return (int) $this->points;\n    }\n\n    /**\n     * Set points\n     *\n     * @param  int                  $points\n     * @return Newscoop\\Entity\\User\n     */\n    public function setPoints($points)\n    {\n        if (!is_int($points)) {\n            throw new \\InvalidArgumentException(\"Points must be an integer: '$points'\");\n        }\n\n        $this->points = $points < 0 ? 0 : $points;\n\n        return $this;\n    }\n\n    /**\n     * Get groups\n     *\n     * @return array of Newscoop\\Entity\\User\\Group\n     */\n    public function getGroups()\n    {\n        return $this->groups;\n    }\n\n    /**\n     * Get group names\n     *\n     * @return array\n     */\n    public function getGroupNames()\n    {\n        return $this->groups->map(function ($group) {\n            return $group->getName();\n        })->toArray();\n    }\n\n    /**\n     * Test if user has group\n     *\n     * @param string $name\n     *\n     * @return bool\n     */\n    public function hasGroup($name)\n    {\n        foreach ($this->groups as $group) {\n            if ($group->getName() === $name) {\n                return true;\n            }\n        }\n\n        return false;\n    }\n\n    /**\n     * Add user type\n     *\n     * @param Newscoop\\Entity\\User\\Group $type\n     *\n     * @return Newscoop\\Entity\\User\n     */\n    public function addUserType(Group $type)\n    {\n        $this->groups->add($type);\n\n        return $this;\n    }\n\n    /**\n     * Get user types\n     *\n     * @return array\n     */\n    public function getUserTypes()\n    {\n        return $this->getGroups();\n    }\n\n    /**\n     * Get user roles for authentication\n     * @return array array with roles\n     */\n    public function getRoles()\n    {\n        $roles = array();\n        foreach ($this->groups as $group) {\n            $roles[] = strtoupper(str_replace(\" \", \"_\", $group->getName()));\n        }\n\n        return $roles;\n    }\n\n    /**\n     * Set role\n     *\n     * @param  Newscoop\\Entity\\Acl\\Role $role\n     * @return Newscoop\\Entity\\User\n     */\n    public function setRole(Role $role)\n    {\n        $this->role = $role;\n\n        return $this;\n    }\n\n    /**\n     * Get role id\n     *\n     * @return int\n     */\n    public function getRoleId()\n    {\n        return $this->role ? $this->role->getId() : 0;\n    }\n\n    /**\n     * Add attribute\n     *\n     * @param  string               $name\n     * @param  string               $value\n     * @return Newscoop\\Entity\\User\n     */\n    public function addAttribute($name, $value)\n    {\n        if (empty($this->attributes[$name])) {\n            $this->attributes[$name] = new UserAttribute($name, $value, $this);\n        } else {\n            $this->attributes[$name]->setValue($value);\n        }\n\n        return $this;\n    }\n\n    /**\n     * Get attribute\n     *\n     * @param  string $name\n     * @param  string $value\n     * @return mixed\n     */\n    public function getAttribute($name)\n    {\n        if (isset($this->attributes[$name])) {\n            return $this->attributes[$name]->getValue();\n        }\n\n        return;\n    }\n\n    /**\n     * Remove attribute\n     *\n     * @param string $name\n     *\n     * @return Newscoop\\Entity\\UserAttribute\n     */\n    public function removeAttribute($name)\n    {\n        return $this->attributes->remove($name);\n    }\n\n    /**\n     * Set User attributes\n     * @param mixed $attributes UserAttributes\n     */\n    public function setAttributes($attributes)\n    {\n        $this->attributes = $attributes;\n    }\n\n    /**\n     * Get all user attributes\n     *\n     * @return array of all user attributes\n     */\n    public function getAttributes()\n    {\n        return array_filter($this->getRawAttributes());\n    }\n\n    /**\n     * Get raw user attributes\n     *\n     * @return array\n     */\n    public function getRawAttributes()\n    {\n        $attributes = array();\n        foreach ($this->attributes->getKeys() as $key) {\n            $attributes[$key] = $this->attributes[$key]->getValue();\n        }\n\n        return $attributes;\n    }\n\n    /**\n     * Set image\n     *\n     * @param  string               $image\n     * @return Newscoop\\Entity\\User\n     */\n    public function setImage($image)\n    {\n        $this->image = $image;\n\n        return $this;\n    }\n\n    /**\n     * Get image\n     *\n     * @return string\n     */\n    public function getImage()\n    {\n        return $this->image;\n    }\n\n    /**\n     * Check permissions\n     *\n     * @param  string $permission\n     * @param  string $resource\n     * @param  string $action\n     * @return bool\n     */\n    public function hasPermission($permission, $resource = null, $action = null)\n    {\n        $blogService = \\Zend_Registry::get('container')->getService('blog');\n        if ($blogService->isBlogger($this)) {\n            return true;\n        }\n\n        $acl = \\Zend_Registry::get('acl')->getAcl($this);\n        try {\n            if (!$resource && !$action) {\n                list($resource, $action) = PermissionToAcl::translate($permission);\n            }\n\n            if ($acl->isAllowed($this, strtolower($resource), strtolower($action))) {\n                if (!$resource && !$action) {\n                    return \\SaaS::singleton()->hasPermission($permission);\n                }\n\n                return true;\n            } else {\n                return false;\n            }\n        } catch (\\Exception $e) {\n            return false;\n        }\n    }\n\n    public function getCommenters()\n    {\n        return $this->commenters;\n    }\n\n    /**\n     * Get a User's comments which are associated with his User account.\n     *\n     * @return array\n     */\n    public function getComments()\n    {\n        $comments = array();\n\n        foreach ($this->commenters as $commenter) {\n            foreach ($commenter->getComments() as $comment) {\n                $comments[] = $comment;\n            }\n        }\n\n        return $comments;\n    }\n\n    /**\n     * Get user id\n     * proxy to getId\n     *\n     * @return int\n     */\n    public function getUserId()\n    {\n        return $this->getId();\n    }\n\n    /**\n     * @return string\n     */\n    public function __toString()\n    {\n        return $this->getUsername();\n    }\n\n    /**\n     * Check if the user exists\n     * Test if there is set an id\n     *\n     * @return bool\n     * @deprecated legacy from frontend controllers\n     */\n    public function exists()\n    {\n        return !is_null($this->id);\n    }\n\n    /**\n     * Get an enity property\n     *\n     * @param $p_key\n     * @return mixed\n     * @deprecated legacy from frontend controllers\n     */\n    public function getProperty($p_key)\n    {\n        if (method_exists($this, $p_key)) {\n            return $this->$p_key();\n        } else {\n            throw new \\InvalidArgumentException(\"User Property '$p_key' not found\");\n        }\n    }\n\n    /**\n     * Set subscriber\n     *\n     * @param  integer              $subscriber\n     * @return Newscoop\\Entity\\User\n     */\n    public function setSubscriber($subscriber)\n    {\n        $this->subscriber = $subscriber;\n\n        return $this;\n    }\n\n    /**\n     * Get subscriber\n     *\n     * @return integer\n     */\n    public function getSubscriber()\n    {\n        return $this->subscriber;\n    }\n\n    /**\n     * Set password reset token\n     *\n     * @param  integer $resetToken\n     * @return string\n     */\n    public function setResetToken($resetToken)\n    {\n        $this->resetToken = $resetToken;\n\n        return $this;\n    }\n\n    /**\n     * Get password reset token\n     *\n     * @return string\n     */\n    public function getResetToken()\n    {\n        return $this->resetToken;\n    }\n\n    /**\n     * Set author\n     *\n     * @param  Newscoop\\Entity\\Author $author\n     * @return Newscoop\\Entity\\User\n     */\n    public function setAuthor(Author $author = null)\n    {\n        $this->author = $author;\n\n        return $this;\n    }\n\n    /**\n     * Get author id\n     *\n     * @return int\n     */\n    public function getAuthorId()\n    {\n        return $this->author ? $this->author->getId() : null;\n    }\n\n    /**\n     * Get author\n     *\n     * @return int\n     */\n    public function getAuthor()\n    {\n        return $this->author;\n    }\n\n    /**\n     * @ORM\\PreUpdate\n     */\n    public function preUpdate()\n    {\n        $this->updated = new \\DateTime();\n    }\n\n    /**\n     * Set indexed\n     *\n     * @param DateTime $indexed\n     *\n     * @return self\n     */\n    public function setIndexed(DateTime $indexed = null)\n    {\n        $this->indexed = $indexed;\n\n        return self;\n    }\n\n    /**\n     * Get indexed\n     *\n     * @return DateTime\n     */\n    public function getIndexed()\n    {\n        return $this->indexed;\n    }\n\n    /**\n     *\n     * TODO: move this to user service - it's not a part of entity\n     *\n     * Update user profile\n     *\n     * @param string $username\n     * @param string $password\n     * @param string $firstName\n     * @param string $lastName\n     * @param string $image\n     * @param array  $attributes\n     */\n    public function updateProfile($username, $password, $firstName, $lastName, $image, array $attributes)\n    {\n        if (!empty($username)) {\n            $this->setUsername($username);\n        }\n\n        if (!empty($password)) {\n            $this->setPassword($password);\n        }\n\n        if (!empty($firstName)) {\n            $this->first_name = (string) $firstName;\n        }\n\n        if (!empty($lastName)) {\n            $this->last_name = (string) $lastName;\n        }\n\n        if (!empty($image)) {\n            $this->image = (string) $image;\n        }\n\n        foreach ($attributes as $key => $val) {\n            if (isset($val)) {\n                $this->addAttribute($key, $val);\n            }\n        }\n    }\n\n    /**\n     * TODO: move this to user service - it's not a part of entity\n     *\n     * Get edit view\n     *\n     * @param  Zend_View_Abstract $view\n     * @return object\n     */\n    public function getEditView(Zend_View_Abstract $view)\n    {\n        return (object) array(\n            'id' => $this->id,\n            'username' => $this->username ?: sprintf('<%s>', preg_replace('/@.*$/', '', $this->email)),\n            'email' => $this->email,\n            'status' => $this->status,\n            'created' => $this->created->format('d.m.Y H:i'),\n            'updated' => $this->updated->format('d.m.Y H:i'),\n            'is_verified' => (bool) $this->getAttribute(UserAttribute::IS_VERIFIED),\n            'http_user_agent' => $this->getAttribute(UserAttribute::HTTP_USER_AGENT),\n            'links' => array(\n                array(\n                    'rel' => 'edit',\n                    'href' => $this->getViewUrl('edit', $view),\n                ),\n                array(\n                    'rel' => 'delete',\n                    'href' => $this->getViewUrl('delete', $view),\n                ),\n                array(\n                    'rel' => 'token',\n                    'href' => $this->getViewUrl('send-confirm-email', $view),\n                ),\n            ),\n        );\n    }\n\n    /**\n     * TODO: move this to user service - it's not a part of entity\n     *\n     * Get DataTable view\n     *\n     * @param  Zend_View_Abstract $view\n     * @return object\n     */\n    public function getDataTableView(Zend_View_Abstract $view)\n    {\n        $types = array();\n        foreach ($this->getUserTypes() as $type) {\n            $types[] = $type->getName();\n        }\n\n        switch ($this->status) {\n            case '0':\n                $status = 'Inactive';\n                break;\n            case '1':\n                $status = 'Active';\n                break;\n            case '2':\n                $status = 'Banned';\n                break;\n            case '3':\n                $status = 'Deleted';\n                break;\n        }\n\n        return (object) array(\n            'id' => $this->id,\n            'u' => $this->username ?: sprintf('<%s>', preg_replace('/@.*$/', '', $this->email)),\n            'f' => $this->first_name,\n            'l' => $this->last_name,\n            'e' => $this->email,\n            'g' => $types,\n            's' => $status,\n            'c' => $this->created->format('Y-m-d h:i:s'),\n            'up' => $this->updated->format('Y-m-d h:i:s'),\n            've' => ((bool) !$this->isPending() ? 'Yes' : 'No'),\n        );\n    }\n\n    /**\n     * TODO: move this to user service - it's not a part of entity\n     *\n     * Get url for given action\n     *\n     * @param  string             $action\n     * @param  Zend_View_Abstract $view\n     * @return string\n     */\n    private function getViewUrl($action, Zend_View_Abstract $view)\n    {\n        return $view->url(array(\n            'module' => 'admin',\n            'controller' => 'user',\n            'action' => $action,\n            'user' => $this->id,\n        ), 'default', true);\n    }\n\n    /**\n     * TODO: move this to user service - it's not a part of entity\n     *\n     * Rename user\n     *\n     * @param  string $username\n     * @return void\n     */\n    public function rename($username)\n    {\n        $this->setUsername($username);\n    }\n\n    /**\n     * TODO: move this to user service - it's not a part of entity\n     *\n     * Render user\n     *\n     * @return UserView\n     */\n    public function render()\n    {\n        $view = new UserView();\n        $view->username = $this->username;\n        $view->email = $this->email;\n        $view->first_name = $this->first_name;\n        $view->last_name = $this->last_name;\n        $view->identifier = $this->id;\n        $view->uname = $view->username;\n        $view->id = $this->id;\n\n        $view->attributes = $this->getAttributes();\n        foreach ($view->attributes as $key => $attribute) {\n            if (!property_exists($view, $key)) {\n                $view->$key = $attribute;\n            }\n        }\n\n        return $view;\n    }\n\n    /**\n     * Get view\n     *\n     * @return UserView\n     */\n    public function getView()\n    {\n        return $this->render();\n    }\n\n    public function serialize()\n    {\n        return serialize(array(\n            $this->id,\n            $this->status,\n        ));\n    }\n\n    public function unserialize($data)\n    {\n        list(\n            $this->id,\n            $this->status\n        ) = unserialize($data);\n    }\n\n    public function isEqualTo(UserInterface $user)\n    {\n        return $this->id === $user->getId();\n    }\n\n    /**\n     * Checks if the user account is not expired.\n     *\n     * @return boolean In active status\n     */\n    public function isAccountNonExpired()\n    {\n        return !$this->isPending();\n    }\n\n    /**\n     * Checks if the user account is not locked. Currently there is no\n     * seperation between pending and banned.\n     *\n     * @return boolean Not locked status\n     */\n    public function isAccountNonLocked()\n    {\n        return !$this->isBanned();\n    }\n\n    /**\n     * Checks if credentials are expired. We don't have this mechanism in\n     * Newscoop.\n     *\n     * @return boolean Not credentials expired status\n     */\n    public function isCredentialsNonExpired()\n    {\n        return true;\n    }\n\n    /**\n     * Checks if the user account is enabled.\n     *\n     * @return boolean Active status\n     */\n    public function isEnabled()\n    {\n        return $this->isActive();\n    }\n\n    /**\n     * Set lastLogin\n     *\n     * @param  DateTime $lastLogin\n     * @return void\n     */\n    public function setLastLogin(\\DateTime $lastLogin = null)\n    {\n        $this->lastLogin = $lastLogin;\n\n        return $this;\n    }\n\n    /**\n     * Get lastLogin\n     *\n     * @param  DateTime $lastLogin\n     * @return void\n     */\n    public function getLastLogin()\n    {\n        return $this->lastLogin;\n    }\n\n    /**\n     * Set publication which user registered with\n     *\n     * @param integer $publication Publication id\n     *\n     * @return int\n     */\n    public function setPublication($publication)\n    {\n        $this->publication = $publication;\n\n        return $this;\n    }\n\n    /**\n     * Get publication id which user registered with\n     *\n     * @return integer\n     */\n    public function getPublication()\n    {\n        return $this->publication;\n    }\n\n    /**\n     * Set street address\n     *\n     * @param string $street\n     *\n     * @return string\n     */\n    public function setStreet($street)\n    {\n        $this->street = $street;\n\n        return $this;\n    }\n\n    /**\n     * Add oauth client\n     *\n     * @param \\Newscoop\\GimmeBundle\\Entity\\Client $client\n     *\n     * @return Newscoop\\Entity\\User\n     */\n    public function addClient(\\Newscoop\\GimmeBundle\\Entity\\Client $client)\n    {\n        $this->clients->add($client);\n\n        return $this;\n    }\n\n    /**\n     * Get street address\n     *\n     * @return string\n     */\n    public function getStreet()\n    {\n        return $this->street;\n    }\n\n    /**\n     * Set postal code\n     *\n     * @param string $postal\n     *\n     * @return string\n     */\n    public function setPostal($postal)\n    {\n        $this->postal = $postal;\n\n        return $this;\n    }\n\n    /**\n     * Get postal code\n     *\n     * @return string\n     */\n    public function getPostal()\n    {\n        return $this->postal;\n    }\n\n    /**\n     * Set city\n     *\n     * @param string $city\n     *\n     * @return string\n     */\n    public function setCity($city)\n    {\n        $this->city = $city;\n\n        return $this;\n    }\n\n    /**\n     * Get city\n     *\n     * @return string\n     */\n    public function getCity()\n    {\n        return $this->city;\n    }\n\n    /**\n     * Set phone\n     *\n     * @param string $phone\n     *\n     * @return string\n     */\n    public function setPhone($phone)\n    {\n        $this->phone = $phone;\n\n        return $this;\n    }\n\n    /**\n     * Get phone\n     *\n     * @return string\n     */\n    public function getPhone()\n    {\n        return $this->phone;\n    }\n\n    /**\n     * Set state\n     *\n     * @param string $state\n     *\n     * @return string\n     */\n    public function setState($state)\n    {\n        $this->state = $state;\n\n        return $this;\n    }\n\n    /**\n     * Get state\n     *\n     * @return string\n     */\n    public function getState()\n    {\n        return $this->state;\n    }\n\n    /**\n     * Set country code\n     *\n     * @param string $countryCode\n     *\n     * @return string\n     */\n    public function setCountryCode($countryCode)\n    {\n        $this->countryCode = $countryCode;\n\n        return $this;\n    }\n\n    /**\n     * Get country code\n     *\n     * @return string\n     */\n    public function getCountryCode()\n    {\n        return $this->countryCode;\n    }\n\n    /**\n     * Get oauth clients\n     *\n     * @return ArrayCollection\n     */\n    public function getClients()\n    {\n        return $this->clients;\n    }\n\n    /**\n     * Has client\n     *\n     * @param \\Newscoop\\GimmeBundle\\Entity\\Client $client\n     *\n     * @return boolean\n     */\n    public function hasClient(\\Newscoop\\GimmeBundle\\Entity\\Client $client)\n    {\n        if ($this->clients->contains($client)) {\n            return true;\n        }\n\n        return false;\n    }\n\n    public function getObject()\n    {\n        return clone $this;\n    }\n\n    /**\n     * Gets user's topics\n     *\n     * @return Doctrine\\Common\\Collections\\ArrayCollection|null\n     */\n    public function getTopics()\n    {\n        if ($this->topics->count() > 0) {\n            return $this->topics;\n        }\n\n        return;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/UserAttribute.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * @ORM\\Entity\n * @ORM\\Table(name=\"user_attribute\")\n */\nclass UserAttribute\n{\n    const HTTP_USER_AGENT = 'http_user_agent';\n    const IS_VERIFIED = 'is_verified';\n\n    /**\n     * @ORM\\Id\n     * @ORM\\ManyToOne(targetEntity=\"User\", inversedBy=\"attributes\")\n     * @ORM\\JoinColumn(referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\User\n     */\n    protected $user;\n\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"string\", length=255)\n     * @var string\n     */\n    protected $attribute;\n\n    /**\n     * @ORM\\Column(type=\"string\", length=300, nullable=True)\n     * @var string\n     */\n    protected $value;\n\n    /**\n     * @param string $name\n     * @param string $value\n     * @param Newscoop\\Entity\\User $user\n     */\n    public function __construct($name, $value, User $user)\n    {\n        $this->attribute = (string) $name;\n        $this->value = $value;\n        $this->user = $user;\n    }\n\n    /**\n     * Get attribute name\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        return (string) $this->attribute;\n    }\n\n    /**\n     * Set attribute value\n     *\n     * @param mixed $value\n     * @return Newscoop\\Entity\\UserAttribute\n     */\n    public function setValue($value)\n    {\n        $this->value = $value;\n        return $this;\n    }\n\n    /**\n     * Get attribute value\n     *\n     * @return string\n     */\n    public function getValue()\n    {\n        return $this->value;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/UserIdentity.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\n\n/**\n * @ORM\\Entity\n * @ORM\\Table(name=\"user_identity\")\n */\nclass UserIdentity\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"string\", length=80)\n     * @var string\n     */\n    protected $provider;\n\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"string\", length=255)\n     * @var string\n     */\n    protected $provider_user_id;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\User\", fetch=\"EAGER\", inversedBy=\"identities\")\n     * @ORM\\JoinColumn(referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\User\n     */\n    protected $user;\n\n    /**\n     * @param string               $provider\n     * @param string               $providerUserId\n     * @param Newscoop\\Entity\\User $user\n     */\n    public function __construct($provider, $providerUserId, User $user)\n    {\n        $this->provider = $provider;\n        $this->provider_user_id = $providerUserId;\n        $this->user = $user;\n    }\n\n    /**\n     * Get user\n     *\n     * @return Newscoop\\Entity\\User\n     */\n    public function getUser()\n    {\n        return $this->user;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/UserPoints.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Doctrine\\Common\\Collections\\ArrayCollection;\nuse Newscoop\\Utils\\Validation;\n\n/**\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\UserPointsRepository\")\n * @ORM\\Table(name=\"user_points_index\")\n */\nclass UserPoints\n{\n    /**\n     * @ORM\\Id \n     * @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\",unique=true,name=\"id\")\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(type=\"string\",unique=true,name=\"action\")\n     */\n    protected $action;\n\n    /**\n     * @ORM\\Column(type=\"string\",unique=true,name=\"name\")\n     */\n    protected $name;\n\n    /**\n     * @ORM\\Column(type=\"integer\",unique=false,name=\"points\")\n     */\n    protected $points;\n\n\n    /**\n     * Get action\n     *\n     * @return string\n     */\n    public function getAction() {\n        return (string) $this->action;\n    }\n\n    /**\n     * Set action\n     *\n     * @param int $action\n     * @return Newscoop\\Entity\\UserPoints\n     */\n    public function setAction($action) {\n        $this->action = (string) $action;\n        return $this;\n    }\n\n    /**\n     * Get human readable action name\n     *\n     * @return string\n     */\n    public function getName() {\n        return (string) $this->name;\n    }\n\n    /**\n     * Get point value of action\n     *\n     * @return int\n     */\n    public function getPoints() {\n        return (int) $this->points;\n    }\n\n    /**\n     * Set point value\n     *\n     * @param int $points\n     * @return Newscoop\\Entity\\UserPoints\n     */\n    public function setPoints($points) {\n        $this->points = $points;\n        return $this;\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/UserToken.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * @ORM\\Entity\n * @ORM\\Table(name=\"user_token\")\n */\nclass UserToken\n{\n    /**\n     * @ORM\\Id \n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\User\")\n     * @ORM\\JoinColumn(referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\User\n     */\n    protected $user;\n\n    /**\n     * @ORM\\Id \n     * @ORM\\Column(type=\"string\", length=40)\n     * @var string\n     */\n    protected $action;\n\n    /**\n     * @ORM\\Id \n     * @ORM\\Column(type=\"string\", length=40)\n     * @var string\n     */\n    protected $token;\n\n    /**\n     * @ORM\\Column(type=\"datetime\")\n     * @var DateTime\n     */\n    protected $created;\n\n    /**\n     * @param string $action\n     * @param string $token\n     * @param Newscoop\\Entity\\User $user\n     */\n    public function __construct(User $user, $action, $token)\n    {\n        $this->user = $user;\n        $this->action = (string) $action;\n        $this->token = (string) $token;\n        $this->created = new \\DateTime();\n    }\n\n    /**\n     * Get created\n     *\n     * @return DateTime\n     */\n    public function getCreated()\n    {\n        return $this->created;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/UserTopic.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\n\n/**\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\UserTopicRepository\")\n * @ORM\\Table(name=\"user_topic\")\n */\nclass UserTopic\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\", name=\"topic_id\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\User\")\n     * @ORM\\JoinColumn(name=\"user_id\", referencedColumnName=\"Id\")\n     * @var User\n     */\n    protected $user;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\NewscoopBundle\\Entity\\Topic\")\n     * @ORM\\JoinColumns({\n     *      @ORM\\JoinColumn(name=\"topic_id\", referencedColumnName=\"id\")\n     *  })\n     * @var \\Newscoop\\NewscoopBundle\\Entity\\Topic\n     */\n    protected $topic;\n\n    /**\n     * @param User                                  $user\n     * @param \\Newscoop\\NewscoopBundle\\Entity\\Topic $topic\n     */\n    public function __construct(User $user, \\Newscoop\\NewscoopBundle\\Entity\\Topic $topic)\n    {\n        $this->user = $user;\n        $this->topic = $topic;\n    }\n\n    /**\n     * Get topic\n     *\n     * @return \\Newscoop\\NewscoopBundle\\Entity\\Topic\n     */\n    public function getTopic()\n    {\n        return $this->topic;\n    }\n\n    /**\n     * Get topic id\n     *\n     * @return int\n     */\n    public function getTopicId()\n    {\n        return $this->topic->getId();\n    }\n\n    /**\n     * Gets the value of user.\n     *\n     * @return User\n     */\n    public function getUser()\n    {\n        return $this->user;\n    }\n\n    /**\n     * Gets the value of id.\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Entity/Webcode.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * Webcode entity\n *\n * @ORM\\Entity\n * @ORM\\Table(name=\"webcode\",uniqueConstraints={@ORM\\UniqueConstraint(name=\"article_language\", columns={\"article_number\", \"language_id\"})})\n */\nclass Webcode\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"string\", length=80)\n     * @var string\n     */\n    protected $webcode;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Article\", cascade={\"persist\"})\n     * @ORM\\JoinColumns({\n     *     @ORM\\JoinColumn(name=\"article_number\", referencedColumnName=\"Number\"),\n     *     @ORM\\JoinColumn(name=\"language_id\", referencedColumnName=\"IdLanguage\")\n     * })\n     * @var Newscoop\\Entity\\Article\n     */\n    protected $article;\n\n    /**\n     * @param string $webcode\n     * @param Newscoop\\Entity\\Article $article\n     */\n    public function __construct($webcode, $article)\n    {\n        $this->webcode = (string) $webcode;\n        $this->article = $article;\n    }\n\n    /**\n     * Get article\n     *\n     * @return Newscoop\\Entity\\Article\n     */\n    public function getArticle()\n    {\n        return $this->article;\n    }\n\n    /**\n     * Get webcode\n     *\n     * @return string|null\n     */\n    public function getWebcode()\n    {\n        return $this->webcode;\n    }\n\n    /**\n     * @return string\n     */\n    public function __toString()\n    {\n        return (string) $this->webcode;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/EventDispatcher/Events/CollectObjectsDataEvent.php",
    "content": "<?php\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\EventDispatcher\\Events;\n\nuse Symfony\\Component\\EventDispatcher\\GenericEvent as SymfonyGenericEvent;\n\n/**\n * ListObjectsEvent class.\n *\n * Collect list objects registrations array\n */\nclass CollectObjectsDataEvent extends SymfonyGenericEvent\n{\t\n\t/**\n\t * Array with list object registration data\n\t * @var array\n\t */\n    public $listObjects = array();\n\n    /**\n     * Array with object type registration data\n     * @var array\n     */\n    public $objectTypes = array();\n\n    /**\n     * Add list objects registration data\n     * @param array $name\n     * @param array $listObject\n     */\n    public function registerListObject($name, array $listObject)\n    {\n        $this->listObjects[$name] = $listObject;\n    }\n\n    /**\n     * Get all list objects registrations data\n     * @return array\n     */\n    public function getListObjects()\n    {\n        return $this->listObjects;\n    }\n\n    /**\n     * Add object type registration data\n     * @param array $name\n     * @param array $objectType\n     */\n    public function registerObjectTypes($name, array $objectType)\n    {   \n        $this->objectTypes[$name] = $objectType;\n    }\n\n    /**\n     * Get all list objects registrations data\n     * @return array\n     */\n    public function getObjectTypes()\n    {\n        return $this->objectTypes;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/EventDispatcher/Events/GenericEvent.php",
    "content": "<?php\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\EventDispatcher\\Events;\n\nuse Symfony\\Component\\EventDispatcher\\GenericEvent as SymfonyGenericEvent;\n\n/**\n * GenericEvent class.\n *\n * Provides wrapper methods for symfony's GenericEvent.\n */\nclass GenericEvent extends SymfonyGenericEvent\n{\n\n    /**\n    * Construct GenericEvent object.\n    *\n    * @param Object $subject The subject of the event\n    * @param array $arguments The arguments passed to event listener.\n    */\n    public function __construct($subject = null, array $arguments = array())\n    {\n        parent::__construct($subject, $arguments);\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/EventDispatcher/Events/PluginHooksEvent.php",
    "content": "<?php\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\EventDispatcher\\Events;\n\nuse Symfony\\Component\\EventDispatcher\\GenericEvent as SymfonyGenericEvent;\nuse Symfony\\Component\\HttpFoundation\\Response;\n\n/**\n * PluginHooksEvent class.\n *\n * Collect Response objects from plugins admin iterface hooks.\n */\nclass PluginHooksEvent extends SymfonyGenericEvent\n{\n\t/**\n\t * Array with Response objects from hooks\n\t * @var array\n\t */\n    public $hooksResponses = array();\n\n    /**\n     * Add Response object to event\n     *\n     * @param Response $response\n     */\n    public function addHookResponse(Response $response)\n    {\n        $this->hooksResponses[] = $response;\n    }\n\n    /**\n     * Override responses array\n     *\n     * @param array $response\n     */\n    public function setHookResponse(array $hooksResponses)\n    {\n        $this->hooksResponses = $hooksResponses;\n    }\n\n    /**\n     * Get all stored Response objects from event\n     *\n     * @return array\n     */\n    public function getHooksResponses()\n    {\n        return $this->hooksResponses;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/EventDispatcher/Events/PluginPermissionsEvent.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\EventDispatcher\\Events;\n\nuse Symfony\\Component\\EventDispatcher\\GenericEvent as SymfonyGenericEvent;\n\n/**\n * Collect permissions from plugins\n */\nclass PluginPermissionsEvent extends SymfonyGenericEvent\n{\n    /**\n     * Permissions array\n     * @var array\n     */\n    public $permissions = array();\n\n    /**\n     * Register permissions\n     *\n     * @param  string $name        Plugin name\n     * @param  array  $permissions Permissions array\n     */\n    public function registerPermissions($name, array $permissions)\n    {\n        if ($this->subject === $name) {\n            $this->permissions[$this->subject] = $permissions;\n        }\n\n        if (!$this->subject) {\n            $this->permissions[$name] = $permissions;\n        }\n    }\n\n    /**\n     * Get all plugin permissions\n     *\n     * @return array\n     */\n    public function getPermissions()\n    {\n        return $this->permissions;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Exception/AuthenticationException.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2015 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Exception;\n\nuse Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException as SymfonyAuthenticationException;\n\n/**\n * Authentication exception, thrown when user is not authenticated.\n */\nclass AuthenticationException extends SymfonyAuthenticationException\n{\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Exception/InvalidParametersException.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Exception;\n\nuse Newscoop\\NewscoopException;\n\n/**\n */\nclass InvalidParametersException extends NewscoopException\n{}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Exception/ResourceIsEmptyException.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Exception;\n\nuse Newscoop\\NewscoopException;\n\n/**\n * Empty resource exception\n */\nclass ResourceIsEmptyException extends NewscoopException\n{\n    /**\n     * Constructor.\n     *\n     * @param string $message The internal exception message\n     */\n    public function __construct($message = null)\n    {\n        parent::__construct($message, 204);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Exception/ResourceNotModifiedException.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Exception;\n\nuse Newscoop\\NewscoopException;\n\n/**\n */\nclass ResourceNotModifiedException extends NewscoopException\n{}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Exception/ResourcesConflictException.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Exception;\n\nuse Newscoop\\NewscoopException;\n\n/**\n */\nclass ResourcesConflictException extends NewscoopException\n{}\n"
  },
  {
    "path": "newscoop/library/Newscoop/File/Manager/LocalManager.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\File\\Manager;\n\nuse Newscoop\\Entity\\Repository\\TemplateRepository,\n    Newscoop\\Entity\\Template;\n\n/**\n * Local file manager\n */\nclass LocalManager implements Manager\n{\n    /** @var array */\n    protected $files = array();\n\n    /** @var string */\n    protected $root;\n\n    /** @var path */\n    protected $path;\n\n    /** @var Newscoop\\Entity\\Repository\\TemplateRepository */\n    protected $repository;\n\n    /**\n     * @param string $path\n     * @param string $root\n     * @param Newscoop\\Entity\\Repository\\TemplateRepository $repository\n     */\n    public function __construct($path, $root, TemplateRepository $repository)\n    {\n        $rootpath = \"$root/$path\";\n        $realpath = realpath($rootpath);\n        if (!$realpath) {\n            throw new \\InvalidArgumentException($rootpath);\n        }\n\n        $this->root = realpath($root);\n        $this->path = str_replace(\"$this->root/\", '', $realpath);\n        $this->files = array_merge(glob(\"$realpath/*\", GLOB_ONLYDIR), glob(\"$realpath/*.*\")); // get sorted dirs + sorted files\n        $this->repository = $repository;\n    }\n\n    /**\n     * Implements Iterator::current\n     *\n     * @return Newscoop\\Entity\\Template\n     */\n    public function current()\n    {\n        $file = new \\SplFileObject(current($this->files));\n        return $this->repository->getTemplate($file, $this->root);\n    }\n\n    /**\n     * Implements Iterator::key\n     *\n     * @return int\n     */\n    public function key()\n    {\n        return key($this->files);\n    }\n\n    /**\n     * Implements Iterator::next\n     *\n     * @return void\n     */\n    public function next()\n    {\n        next($this->files);\n    }\n\n    /**\n     * Implements Iterator::rewind\n     *\n     * @return void\n     */\n    public function rewind()\n    {\n        reset($this->files);\n    }\n\n    /**\n     * Implements Iterator::valid\n     *\n     * @return bool\n     */\n    public function valid()\n    {\n        return (bool) current($this->files);\n    }\n\n    /**\n     * Implements Countable::count\n     *\n     * @return int\n     */\n    public function count()\n    {\n        return sizeof($this->files);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/File/Manager/Manager.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\File\\Manager;\n\n/**\n * File manager interface\n */\ninterface Manager extends \\Iterator, \\Countable\n{\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Form/Decorator/Form.php",
    "content": "<?php\n\n/**\n * @author Mihai Nistor <mihai.nistor@gmail.com>\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Form\\Decorator;\n\nuse Zend_From,\n    Zend_Form_Decorator_Form;\n\nclass Form extends Zend_Form_Decorator_Form\n{\n\n    /**\n     * Override the getOptions from the parent\n     *\n     * setting the action to the template action\n     * @return array\n     */\n    public function getOptions()\n    {\n\n        parent::getOptions();\n        $name = '';\n        if (null !== ($element = $this->getElement())) {\n            $name = $element->getFullyQualifiedName();\n            $this->_options['name'] = $name;\n        }\n\n        if (isset($this->_options['action'])) {\n            $this->_options['action'] = \"{{\" . $name . \".action}}\";\n        }\n        return $this->_options;\n    }\n\n    /**\n     * Render a form\n     *\n     * Replaces $content entirely from currently set element.\n     *\n     * @param  string $content\n     * @return string\n     */\n    public function render($content)\n    {\n        $form = $this->getElement();\n        $view = $form->getView();\n        if (null === $view) {\n            return $content;\n        }\n\n        $helper = $this->getHelper();\n        $attribs = $this->getOptions();\n        $name = '';\n        return $view->$helper($name, $attribs, $content);\n    }\n\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Form/Decorator/HtmlTag.php",
    "content": "<?php\nnamespace Newscoop\\Form\\Decorator;\n\nuse Zend_Form_Decorator_HtmlTag;\n\nclass HtmlTag extends Zend_Form_Decorator_HtmlTag\n{\n    public function getOptions()\n    {\n        $options = parent::getOptions();\n        if (null !== ($element = $this->getElement())) {\n            $attribs = $element->getAttribs();\n            $options = array_merge($attribs, $options);\n            $this->setOptions($options);\n        }\n        return $options;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Form/Decorator/Label.php",
    "content": "<?php\nnamespace Newscoop\\Form\\Decorator;\n\nuse Zend_Form_Decorator_Label;\n\n\nclass Label extends Zend_Form_Decorator_Label\n{\n    /**\n     * Element types that doesn't show a label\n     * @var array\n     */\n    public $_hiddenLabels = array(\n        'Zend_Form_Element_Hash',\n        'Zend_Form_Element_Hidden',\n        'Zend_Form_Element_Button',\n        'Zend_Form_Element_Reset',\n        'Zend_Form_Element_Submit',\n    );\n    /**\n     * Render a label\n     *\n     * @param  string $content\n     * @return string\n     */\n    public function render($content)\n    {\n\n        $element = $this->getElement();\n        $view    = $element->getView();\n        if (null === $view) {\n            return $content;\n        }\n\n        $label     = $this->getLabel();\n        $separator = $this->getSeparator();\n        $placement = $this->getPlacement();\n        $tag       = $this->getTag();\n        $tagClass  = method_exists($this,'getTagClass') ? $this->getTagClass():false;\n        $id        = $this->getId();\n        $class     = $this->getClass();\n        $options   = $this->getOptions();\n\n\n        if (empty($label) && empty($tag)) {\n            return $content;\n        }\n\n        if(in_array(get_class($element),$this->_hiddenLabels)) {\n            $label = '';\n        }\n        elseif (!empty($label)) {\n            $options['class'] = $class;\n            $label = $view->formLabel($element->getFullyQualifiedName(), trim($label), $options);\n        } else {\n            $label = '&#160;';\n        }\n\n        if (null !== $tag) {\n            require_once 'Zend/Form/Decorator/HtmlTag.php';\n            $decorator = new Zend_Form_Decorator_HtmlTag();\n            if ($tagClass && null !== $this->_tagClass) {\n                $decorator->setOptions(array('tag'   => $tag,\n                                             'id'    => $id . '-label',\n                                             'class' => $tagClass));\n            } else {\n                $decorator->setOptions(array('tag'   => $tag,\n                                             'id'    => $id . '-label'));\n            }\n\n            $label = $decorator->render($label);\n        }\n\n        switch ($placement) {\n            case self::APPEND:\n                return $content . $separator . $label;\n            case self::PREPEND:\n                return $label . $separator . $content;\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Form/Element/OldHash.php",
    "content": "<?php\n\n/**\n * @author Mihai Nistor <mihai.nistor@gmail.com>\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Form\\Element;\n\n/**\n * Hash implementation from the old cod\n */\nuse Zend_Form_Element_Xhtml,\n    SecurityToken;\n\nclass OldHash extends Zend_Form_Element_Xhtml\n{\n\n    /**\n     * Use formHidden view helper by default\n     * @var string\n     */\n    public $helper = 'formHidden';\n    /**\n     * Actual hash used.\n     *\n     * @var mixed\n     */\n    protected $_hash;\n\n    /**\n     * Constructor\n     *\n     * Creates session namespace for CSRF token, and adds validator for CSRF\n     * token.\n     *\n     * @param  string|array|Zend_Config $spec\n     * @param  array|Zend_Config $options\n     * @return void\n     */\n    public function __construct($spec, $options = null)\n    {\n        parent::__construct($spec, $options);\n\n        $this->setAllowEmpty(false)\n                ->setRequired(true)\n                ->initCsrfValidator();\n    }\n\n    /**\n     * Initialize CSRF validator\n     *\n     * Creates Session namespace, and initializes CSRF token in session.\n     * Additionally, adds validator for validating CSRF token.\n     *\n     * @return Zend_Form_Element_Hash\n     */\n    public function initCsrfValidator()\n    {\n        $this->addValidator('Identical', true,\n                array(SecurityToken::ValueParameter()));\n        return $this;\n    }\n\n    /**\n     * Retrieve CSRF token\n     *\n     * If no CSRF token currently exists, generates one.\n     *\n     * @return string\n     */\n    public function getHash()\n    {\n        if (null === $this->_hash) {\n            $this->_hash = SecurityToken::ValueParameter();\n        }\n        return $this->_hash;\n    }\n\n    /**\n     * Override getLabel() to always be empty\n     *\n     * @return null\n     */\n    public function getLabel()\n    {\n        return null;\n    }\n\n    /**\n     * Render CSRF token in form\n     *\n     * @param  Zend_View_Interface $view\n     * @return string\n     */\n    public function render(Zend_View_Interface $view = null)\n    {\n        $this->setValue($this->getHash());\n        return parent::render($view);\n    }\n\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Form/FormServiceInterface.php",
    "content": "<?php\n\nnamespace Newscoop\\Form;\nuse Symfony\\Component\\HttpFoundation\\Request;\n\ninterface FormServiceInterface\n{\n    public function config(array $parameters = array(), Request $request);\n    public function getElement($elementName, array $options = array());\n    public function getFormStart();\n    public function getFormEnd();\n    public function getFormObject();\n    public function isValid();\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Form.php",
    "content": "<?php\n\n/**\n * @author Mihai Nistor <mihai.nistor@gmail.com>\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop;\n\nuse Newscoop\\Form\\Decorator,\n    Newscoop\\Form\\Element\\OldHash,\n    SecurityToken,\n    Zend_Form,\n    Zend_Form_Decorator_Form;\n\nclass Form extends Zend_Form\n{\n\n    /**\n     * Add some CSRF protection\n     * CSRF equals Cross-site request forgery\n     */\n    protected function addSecurity()\n    {\n        $this->addElement('hash', 'csrf',\n                array(\n            'ignore' => true,\n            'salt' => 'unique'\n        ));\n    }\n\n    /**\n     * Add some security\n     * S\n     */\n    protected function addOldSecurity()\n    {\n        $security = new OldHash('csrf');\n        $this->addElement($security);\n    }\n\n    public function setSimpleDecorate()\n    {\n\n\n        $htmlTag = new Decorator\\HtmlTag(array('tag' => 'div'));\n        $label = new Decorator\\Label();\n        $this->setDisplayGroupDecorators(array(\n            array('FormElements'),\n            $htmlTag\n        ));\n\n        $this->setDecorators(array(\n            'FormElements',\n            'Form'\n        ));\n        $this->setElementDecorators(array(\n            'ViewHelper',\n            'Errors',\n            $label,\n        ));\n        return $this;\n    }\n\n    /**\n     * Set the form for ajax template with the subObject namespace\n     *\n     * @param array $subObject\n     */\n    public function setTemplate($subObject = array())\n    {\n        $elements = $this->getElements();\n        foreach ($elements as $element) {\n            switch (get_class($element)) {\n                case 'Zend_Form_Element_Text':\n                case 'Zend_Form_Element_Textarea':\n                case 'Zend_Form_Element_Hidden':\n                    $prefix = count($subObject) ? implode('.', $subObject) . '.' : '';\n                    $element->setValue('{{' . $prefix . $element->getName() . '}}');\n                    break;\n            }\n        }\n        return $this;\n    }\n\n    public function init()\n    {\n        $this->setMethod('post');\n        $this->addOldSecurity();\n    }\n\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Gimme/Json.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Gimme;\n\n/**\n * Services for json.\n */\nclass Json {\n\n    /**\n     * Indents a flat JSON string to make it more human-readable.\n     *\n     * @param string $json The original JSON string to process.\n     *\n     * @return string Indented version of the original JSON string.\n     */\n    public static function indent($json) {\n\n        $result      = '';\n        $pos         = 0;\n        $strLen      = strlen($json);\n        $indentStr   = '    ';\n        $newLine     = \"\\n\";\n        $prevChar    = '';\n        $outOfQuotes = true;\n\n        for ($i=0; $i<=$strLen; $i++) {\n\n            // Grab the next character in the string.\n            $char = substr($json, $i, 1);\n\n            // Are we inside a quoted string?\n            if ($char == '\"' && $prevChar != '\\\\') {\n                $outOfQuotes = !$outOfQuotes;\n            \n            // If this character is the end of an element, \n            // output a new line and indent the next line.\n            } else if(($char == '}' || $char == ']') && $outOfQuotes) {\n                $result .= $newLine;\n                $pos --;\n                for ($j=0; $j<$pos; $j++) {\n                    $result .= $indentStr;\n                }\n            }\n            \n            // Add the character to the result string.\n            $result .= $char;\n\n            // If the last character was the beginning of an element, \n            // output a new line and indent the next line.\n            if (($char == ',' || $char == '{' || $char == '[') && $outOfQuotes) {\n                $result .= $newLine;\n                if ($char == '{' || $char == '[') {\n                    $pos ++;\n                }\n                \n                for ($j = 0; $j < $pos; $j++) {\n                    $result .= $indentStr;\n                }\n            }\n            \n            $prevChar = $char;\n        }\n\n        return $result;\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Gimme/Pagination.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Gimme;\n\n/**\n * Gimme Pagination object.\n */\nclass Pagination {\n\n    /**\n     * Requested page number\n     * @var integer\n     */\n    protected $page = 1;\n\n    /**\n     * Array with sorting parameters\n     * @var array\n     */\n    protected $sort = array();\n    \n    /**\n     * Requested number items per page.\n     * @var integer\n     */\n    protected $itemsPerPage = 10;\n\n    /**\n     * Set currently requested page number\n     * @param integer $page Page number\n     */\n    public function setPage($page)\n    {\n        $this->page = $page;\n    }\n\n    /**\n     * Get currently requested page number\n     * @return integer Page number\n     */\n    public function getPage()\n    {\n        return $this->page;\n    }\n\n    /**\n     * Set sort parameters\n     * @param array $sort Sort parameters array\n     */\n    public function setSort($sort)\n    {\n        if (count($sort) > 0) {\n            $this->sort = $sort;\n        }\n    }\n\n    /**\n     * Get sort parameters\n     * @return array Sort parameters array\n     */\n    public function getSort()\n    {\n        return $this->sort;\n    }\n\n    /**\n     * Set requested number items per page.\n     * @param integer $itemsPerPage Number items per page.\n     */\n    public function setItemsPerPage($itemsPerPage)\n    {\n        $this->itemsPerPage = $itemsPerPage;\n    }\n\n    /**\n     * Get requested number items per page\n     * @return integer Number items per page.\n     */\n    public function getItemsPerPage()\n    {\n        return $this->itemsPerPage;\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Gimme/PaginatorService.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Gimme;\n\nuse Knp\\Component\\Pager\\Paginator;\nuse Newscoop\\Gimme\\Pagination;\nuse Newscoop\\Gimme\\PartialResponse;\nuse Symfony\\Bundle\\FrameworkBundle\\Routing\\Router;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException;\nuse Newscoop\\Exception\\ResourceIsEmptyException;\n\n/**\n * Gimme Pagination service.\n */\nclass PaginatorService\n{\n    /**\n     * Paginator class\n     * @var Knp\\Component\\Pager\\Paginator\n     */\n    protected $paginator;\n\n    /**\n     * Pagination object with parsed data from request.\n     * @var Newscoop\\Gimme\\Pagination\n     */\n    protected $pagination;\n\n    /**\n     * PartialResponse object with parsed data from request.\n     * @var Newscoop\\Gimme\\PartialResponse\n     */\n    protected $partialResponse;\n\n    /**\n     * Router class\n     * @var Symfony\\Bundle\\FrameworkBundle\\Routing\\Router\n     */\n    protected $router;\n\n    /**\n     * Extra data injected to response when result have more items than requested.\n     * @var array\n     */\n    protected $paginationData;\n\n    /**\n     * Used route name\n     * @var string\n     */\n    protected $route;\n\n    /**\n     * Used route params\n     * @var array\n     */\n    protected $routeParams = array();\n\n    /**\n     * Construct Paginator service object\n     * @param Paginator $paginator Paginator object\n     * @param Router    $router    Router object\n     */\n    public function __construct(Paginator $paginator, Router $router)\n    {\n        $this->paginator = $paginator;\n        $this->router = $router;\n    }\n\n    /**\n     * Set Pagination object\n     * @param Pagination $pagination Pagination object\n     */\n    public function setPagination(Pagination $pagination)\n    {\n        $this->pagination = $pagination;\n\n        $this->routeParams['page'] = $this->pagination->getPage();\n        $this->routeParams['sort'] = $this->pagination->getSort();\n        $this->routeParams['items_per_page'] = $this->pagination->getItemsPerPage();\n\n        return $this;\n    }\n\n    /**\n     * Get Pagination object\n     * @return Pagination Pagination object\n     */\n    public function getPagination()\n    {\n        return $this->pagination;\n    }\n\n    /**\n     * Set PartialResponse object\n     * @param PartialResponse $partialResponse PartialResponse object\n     */\n    public function setPartialResponse($partialResponse)\n    {\n        $this->partialResponse = $partialResponse;\n\n        return $this;\n    }\n\n    /**\n     * Get PartialResponse object\n     * @return PartialResponse PartialResponse object\n     */\n    public function getPartialResponse()\n    {\n        return $this->partialResponse;\n    }\n\n    /**\n     * Set used route\n     * @param string $route Used route in request\n     */\n    public function setUsedRoute($route)\n    {\n        $this->route = $route;\n\n        return $this;\n    }\n\n    /**\n     * Set parameters required by route generator for used route\n     * @param array $params Route parameters\n     */\n    public function setUsedRouteParams(array $params = array())\n    {\n        $this->routeParams = array_merge(\n            $this->routeParams,\n            $params\n        );\n\n        return $this;\n    }\n\n    /**\n     * Set pagination data from paginator\n     * @param array $paginationData array with calculated pagination data\n     */\n    public function setPaginationData(array $paginationData)\n    {\n        $this->paginationData = array(\n            'itemsPerPage' => $paginationData['numItemsPerPage'],\n            'currentPage' => $paginationData['current'],\n            'itemsCount' => $paginationData['totalCount']\n        );\n\n        $this->paginationData = array_merge(\n            $this->paginationData, \n            $this->getPaginationLinks($paginationData)\n        );\n\n        return $this;\n    }\n\n    /**\n     * Paginate data\n     *\n     * @param mixed $data   Data to paginate\n     * @param array $params Parameters for Paginator\n     *\n     * @return array         Paginated data\n     */\n    public function paginate($data, $params = array())\n    {\n        $paginator = $this->paginator->paginate(\n            $data,\n            $this->pagination->getPage(),\n            $this->pagination->getItemsPerPage(),\n            $params\n        );\n\n        $items['items'] = $paginator->getItems();\n\n        /**\n         * Set pagination object only when need\n         */\n        if ($this->paginationData['itemsPerPage'] < $this->paginationData['itemsCount']) {\n            $items['pagination'] = $this->paginationData;\n        }\n\n        return $items;\n    }\n\n    /**\n     * Generate links for pagination object\n     *\n     * @param array $paginationData Array with calculated pagination data\n     *\n     * @return array                 Array with links\n     */\n    private function getPaginationLinks($paginationData)\n    {\n        $data = array();\n\n        if ($paginationData['current'] < $paginationData['lastPageInRange']) {\n            $this->routeParams['page'] = $paginationData['current'] + 1;\n            $data['nextPageLink'] = $this->router->generate($this->route, $this->routeParams, true);\n        }\n\n        if ($paginationData['current'] > $paginationData['firstPageInRange']-1 && $paginationData['current'] > 1) {\n            $this->routeParams['page'] = $paginationData['current'] - 1;\n            $data['previousPageLink'] = $this->router->generate($this->route, $this->routeParams, true);\n        }\n\n        return $data;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Gimme/PartialResponse.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Gimme;\n\n/**\n * Gimme Pagination object.\n */\nclass PartialResponse {\n    /**\n     * Fields property - string with comma separated fields\n     * @var string\n     */\n    protected $fields = null;\n\n    /**\n     * Set fields\n     * @param string $fields string with comma separated fields\n     */\n    public function setFields($fields)\n    {\n        $this->fields = explode(',', $fields);\n\n        return $this;\n    }\n\n    /**\n     * Get Fields\n     * @return string string with comma separated fields\n     */\n    public function getFields()\n    {\n        return $this->fields;\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Gimme/PropertyMatcher.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Gimme;\n\nuse Symfony\\Component\\Yaml\\Parser;\n\n/**\n * Match Newscoop API property name from response with corresponding database field.\n */\nclass PropertyMatcher\n{\n\n    /**\n     * Match properties with fields names\n     * @param  string $class    class namespace\n     * @param  string $property property name\n     * @return string           matched field name or property\n     */\n    public static function match($class, $property)\n    {\n        $namespace = explode('\\\\', $class);\n        $class = $namespace[count($namespace)-1];\n        $yaml = new Parser();\n\n        // TODO: cache for this.\n        // http://php-and-symfony.matthiasnoback.nl/2012/05/symfony2-config-component-using-filelocator-loaders-and-loaderresolver/\n        $entityDescription = $yaml->parse(file_get_contents(__DIR__.'/../../../src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/'.$class.'.yml'));\n\n        foreach ($entityDescription as $class => $classDescription) {\n            foreach ($classDescription['properties'] as $field => $description) {\n                if (array_key_exists('serialized_name', $description)) {\n                    if ($description['serialized_name'] == $property) {\n                        return $field;\n                    }\n                }\n            }\n        }\n\n        return $property;\n    }\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Image/ArticleImage.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Image;\n\nuse Doctrine\\ORM\\Mapping as ORM;\nuse Doctrine\\Common\\Collections\\ArrayCollection;\nuse Newscoop\\Entity\\Language;\n\n/**\n * Article Image\n *\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\ImageRepository\")\n * @ORM\\Table(name=\"ArticleImages\")\n */\nclass ArticleImage implements ImageInterface\n{\n    /**\n     * @ORM\\Id()\n     * @ORM\\Column(type=\"integer\") \n     * @ORM\\GeneratedValue()\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"NrArticle\")\n     * @var int\n     */\n    protected $articleNumber;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Image\\LocalImage\", fetch=\"EAGER\")\n     * @ORM\\JoinColumn(name=\"IdImage\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Image\\Image\n     */\n    protected $image;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"Number\", nullable=True)\n     * @var int\n     */\n    protected $number;\n\n    /**\n     * @ORM\\Column(type=\"boolean\", name=\"is_default\", nullable=True)\n     * @var bool\n     */\n    protected $isDefault;\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"ArticleImageCaption\", mappedBy=\"articleImage\", indexBy=\"languageId\", cascade={\"persist\"})\n     * @var Doctrine\\Common\\Collections\\Collection\n     */\n    private $captions;\n\n    /**\n     * @param int $articleNumber\n     * @param Newscoop\\Image\\LocalImage $image\n     * @param bool $isDefault\n     */\n    public function __construct($articleNumber, LocalImage $image, $isDefault = false, $number = 1)\n    {\n        $this->articleNumber = (int) $articleNumber;\n        $this->image = $image;\n        $this->isDefault = (bool) $isDefault;\n        $this->number = $number;\n        $this->captions = new ArrayCollection();\n    }\n\n    /**\n     * Get article number\n     *\n     * @return int\n     */\n    public function getArticleNumber()\n    {\n        return $this->articleNumber;\n    }\n\n    /**\n     * Get image\n     *\n     * @return Newscoop\\Image\\Image\n     */\n    public function getImage()\n    {\n        return $this->image;\n    }\n\n    /**\n     * Get image id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->image->getId();\n    }\n\n    /**\n     * Get image path\n     *\n     * @return string\n     */\n    public function getPath()\n    {\n        return $this->image->getPath();\n    }\n\n    /**\n     * Get width\n     *\n     * @return int\n     */\n    public function getWidth()\n    {\n        return $this->image->getWidth();\n    }\n\n    /**\n     * Get height\n     *\n     * @return int\n     */\n    public function getHeight()\n    {\n        return $this->image->getHeight();\n    }\n\n    /**\n     * Set is default image\n     *\n     * @param bool $isDefault\n     * @return void\n     */\n    public function setIsDefault($isDefault = false)\n    {\n        $this->isDefault = (bool) $isDefault;\n    }\n\n    /**\n     * Test if is default image for article\n     *\n     * @return bool\n     */\n    public function isDefault()\n    {\n        return $this->isDefault;\n    }\n\n    /**\n     * Sets the value of number.\n     *\n     * @param int $number the number\n     *\n     * @return self\n     */\n    public function setNumber($number)\n    {\n        $this->number = $number;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of number.\n     *\n     * @return int\n     */\n    public function getNumber()\n    {\n        return $this->number;\n    }\n\n    /**\n    * Set caption\n    *\n    * @param string $caption\n    * @param Newscoop\\Entity\\Language $language\n    * @return void\n    */\n    public function setCaption($caption, Language $language)\n    {\n        if (!isset($this->captions[$language->getId()])) {\n            $this->captions[$language->getId()] = new ArticleImageCaption($this, $language);\n        }\n\n        $this->captions[$language->getId()]->setCaption($caption);\n    }\n\n    /**\n    * Get caption\n    *\n    * @return string\n    */\n    public function getCaption($languageId)\n    {\n        return isset($this->captions[$languageId]) ? $this->captions[$languageId]->getCaption() : null;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Image/ArticleImageCaption.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Image;\n\nuse Newscoop\\Entity\\Language;\nuse Doctrine\\ORM\\Mapping as ORM;\n\n/**\n * Article Image Caption Entity\n * @ORM\\Entity\n * @ORM\\Table(name=\"ArticleImageCaptions\")\n */\nclass ArticleImageCaption\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"integer\")\n     * @ORM\\GeneratedValue\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"ArticleImage\", inversedBy=\"captions\")\n     * @var Newscoop\\Image\\ArticleImage\n     */\n    protected $articleImage;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"LocalImage\", inversedBy=\"captions\")\n     * @ORM\\JoinColumn(name=\"IdImage\", referencedColumnName=\"Id\")\n     * @var int\n     */\n    protected $image;\n\n    /**\n     * @ORM\\OneToOne(targetEntity=\"Newscoop\\Entity\\Language\")\n     * @ORM\\JoinColumn(name=\"IdLanguage\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Language\n     */\n    protected $language;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"IdLanguage\")\n     * @var int\n     * workaround for indexby field\n     */\n    protected $languageId;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"NrArticle\")\n     * @var int\n     */\n    protected $articleNumber;\n\n    /**\n     * @ORM\\Column(type=\"text\")\n     * @var text\n     */\n    protected $caption;\n\n    /**\n     * @param Newscoop\\Image\\ArticleImage $articleImage\n     * @param Newscoop\\Entity\\Language    $language\n     */\n    public function __construct(ArticleImage $articleImage, Language $language)\n    {\n        $this->articleImage = $articleImage;\n        $this->language = $language;\n        $this->image = $articleImage->getImage();\n        $this->articleNumber = $articleImage->getArticleNumber();\n    }\n\n    /**\n     * Set caption\n     *\n     * @param string $caption\n     *\n     * @return void\n     */\n    public function setCaption($caption)\n    {\n        $this->caption = (string) $caption;\n    }\n\n    /**\n     * Get caption\n     *\n     * @return string\n     */\n    public function getCaption()\n    {\n        return $this->caption;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Image/ArticleRendition.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Image;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * Article Rendition\n * @ORM\\Entity\n */\nclass ArticleRendition\n{\n    /**\n     * @ORM\\Id \n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $articleNumber;\n\n    /**\n     * @ORM\\Id \n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Image\\LocalImage\", fetch=\"EAGER\", inversedBy=\"renditions\")\n     * @ORM\\JoinColumn(referencedColumnName=\"Id\")\n     * @var Newscoop\\Image\\Image\n     */\n    protected $image;\n\n    /**\n     * @ORM\\Column(nullable=True)\n     * @var string\n     */\n    protected $imageSpecs;\n\n    /**\n     * @ORM\\Id @ORM\\ManyToOne(targetEntity=\"Newscoop\\Image\\Rendition\", fetch=\"EAGER\")\n     * @ORM\\JoinColumn(referencedColumnName=\"name\")\n     * @var Newscoop\\Image\\Rendition\n     */\n    protected $rendition;\n\n    /**\n     * @param int $articleNumber\n     * @param Newscoop\\Image\\Rendition $rendition\n     * @param Newscoop\\Image\\ImageInterface $image\n     * @param string $imageSpecs\n     */\n    public function __construct($articleNumber, Rendition $rendition, ImageInterface $image, $imageSpecs = null)\n    {\n        $this->articleNumber = (int) $articleNumber;\n        $this->rendition = $rendition;\n        $this->image = $image;\n        $this->imageSpecs = $imageSpecs;\n    }\n\n    /**\n     * Get rendition name\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->rendition->getName();\n    }\n\n    /**\n     * Get image id\n     *\n     * @return Newscoop\\Image\\ArticleImage\n     */\n    public function getImage()\n    {\n        return $this->image;\n    }\n\n    /**\n     * Get rendition\n     *\n     * @return Newscoop\\Image\\Rendition\n     */\n    public function getRendition()\n    {\n        $rendition = clone $this->rendition;\n        $rendition->setCoords($this->imageSpecs);\n        return $rendition;\n    }\n\n    /**\n     * Get specs\n     *\n     * @return string\n     */\n    public function getImageSpecs()\n    {\n        return $this->imageSpecs;\n    }\n\n    /**\n     * Test if is default picture\n     *\n     * @return bool\n     */\n    public function isDefault()\n    {\n        return false;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Image/ArticleRenditionCollection.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Image;\n\n/**\n * Article Rendition Collection\n *\n * Set of image renditions for article returning default image\n * if not overriden\n */\nclass ArticleRenditionCollection implements \\ArrayAccess\n{\n    /** @var int */\n    protected $articleNumber;\n\n    /** @var array */\n    protected $renditions = array();\n\n    /** @var Newscoop\\Image\\ImageInterface */\n    protected $defaultImage;\n\n    /**\n     * @param int $articleNumber\n     * @param array $articleRenditions\n     * @param Newscoop\\Image\\ImageInterface $defaultImage\n     */\n    public function __construct($articleNumber, array $articleRenditions = array(), ImageInterface $defaultImage = null)\n    {\n        $this->articleNumber = (int) $articleNumber;\n        $this->setArticleRenditions($articleRenditions);\n        $this->defaultImage = $defaultImage;\n    }\n\n    /**\n     * Test if can provide image for rendition\n     *\n     * @param Newscoop\\Image\\Rendition $rendition\n     * @param boolean $strict Check only key existing\n     * @return bool\n     */\n    public function offsetExists($rendition, $strict = false)\n    {\n        if ($strict) {\n            return array_key_exists((string) $rendition, $this->renditions);\n        }\n\n        return array_key_exists((string) $rendition, $this->renditions) || ($this->defaultImage !== null && $rendition->fits($this->defaultImage));\n    }\n\n    /**\n     * Get image for rendition\n     *\n     * @param Newscoop\\Image\\Rendition $rendition\n     * @return Newscoop\\Image\\ArticleImageRendition\n     */\n    public function offsetGet($rendition)\n    {\n        return array_key_exists((string) $rendition, $this->renditions)\n            ? $this->renditions[(string) $rendition]\n            : ($this->defaultImage !== null && $rendition->fits($this->defaultImage) ? $this->renditions[(string) $rendition] = new DefaultArticleRendition($this->articleNumber, $rendition, $this->defaultImage) : null);\n    }\n\n    /**\n     * @throws BadMethodCallException\n     */\n    public function offsetSet($offset, $value)\n    {\n        throw new \\BadMethodCallException(\"Collection not editable\");\n    }\n\n    /**\n     * @throws BadMethodCallException\n     */\n    public function offsetUnset($offset)\n    {\n        throw new \\BadMethodCallException(\"Collection not editable\");\n    }\n\n    /**\n     * Set article renditions\n     *\n     * @param array $renditions\n     * @return void\n     */\n    private function setArticleRenditions($renditions)\n    {\n        foreach ($renditions as $rendition) {\n            $this->renditions[$rendition->getName()] = $rendition;\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Image/DefaultArticleRendition.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Image;\n\n/**\n * Default Article Rendition\n */\nclass DefaultArticleRendition extends ArticleRendition\n{\n    /**\n     * Test if is default picture\n     *\n     * @return bool\n     */\n    public function isDefault()\n    {\n        return true;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Image/ImageInterface.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Image;\n\n/**\n * Image Interface\n */\ninterface ImageInterface\n{\n    /**\n     * Get id\n     *\n     * @return int\n     */\n    public function getId();\n\n    /**\n     * Get path\n     *\n     * @return string\n     */\n    public function getPath();\n\n    /**\n     * Get width\n     *\n     * @return int\n     */\n    public function getWidth();\n\n    /**\n     * Get height\n     *\n     * @return int\n     */\n    public function getHeight();\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Image/ImageSearchService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Image;\n\n/**\n * Image Search Service\n */\nclass ImageSearchService\n{\n    /**\n     * @var Doctrine\\ORM\\EntityManager\n     */\n    protected $orm;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $orm\n     */\n    public function __construct(\\Doctrine\\ORM\\EntityManager $orm)\n    {\n        $this->orm = $orm;\n    }\n\n    /**\n     * Perform a query\n     *\n     * @param string $query\n     * @return array\n     */\n    public function find($query, $criteria = null, $sort = null, $paging = null, &$count = null, $queryOnly = false)\n    {\n        $qb = $this->orm->getRepository('Newscoop\\Image\\LocalImage')->createQueryBuilder('i');\n        $andX = $qb->expr()->andX();\n\n        if (is_numeric($query)) {\n            $andX->add($qb->expr()->eq('i.user', $query));\n        } else {\n            $andX->add($qb->expr()->like('i.description', $qb->expr()->literal(\"%{$query}%\")));\n        }\n\n        if (!empty($andX)) {\n            $qb->andWhere($andX);\n        }\n\n        if (is_array($criteria) && isset($criteria['source']) && is_array($criteria['source']) && (!empty($criteria['source']))) {\n            $orX = $qb->expr()->orx();\n            foreach ($criteria['source'] as $oneSource) {\n                $orX->add($qb->expr()->eq('i.source', $qb->expr()->literal($oneSource)));\n            }\n\n            $qb->andWhere($orX);\n        }\n\n        if (is_array($criteria) && isset($criteria['user']) && (!empty($criteria['user']))) {\n            $andX->add($qb->expr()->eq('i.user', $criteria['user']));\n        }\n\n        if ((!empty($sort)) && is_array($sort)) {\n            foreach ($sort as $sortColumn => $sortDir) {\n                $qb->addOrderBy('i.'.$sortColumn, $sortDir);\n            }\n        }\n\n        if ($queryOnly) {\n            return $qb->getQuery();\n        }\n\n        if ((!empty($paging)) && is_array($paging)) {\n            if (isset($paging['length'])) {\n                $qb->setMaxResults(0 + $paging['length']);\n            }\n            if (isset($paging['offset'])) {\n                $qb->setFirstResult(0 + $paging['offset']);\n            }\n        }\n\n        return $qb->getQuery()->getResult();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Image/ImageService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Image;\n\nuse Imagine\\Image\\Box;\nuse Symfony\\Component\\Filesystem\\Filesystem;\nuse Symfony\\Component\\HttpFoundation\\File\\Exception\\FileException;\nuse Symfony\\Component\\HttpFoundation\\File\\UploadedFile;\nuse Newscoop\\Image\\ImageInterface as NewscoopImageInterface;\nuse Newscoop\\Image\\LocalImage;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\Exception\\ResourcesConflictException;\nuse Doctrine\\ORM\\NoResultException;\n\n/**\n * Image Service\n */\nclass ImageService\n{\n    /** allows enlarging image (it only shrinks images by default) */\n    const ENLARGE = 1;\n    /** will ignore aspect ratio */\n    const STRETCH = 2;\n    /** fits in given area */\n    const FIT = 0;\n    /** fills (and even overflows) given area */\n    const FILL = 4;\n\n    /**\n     * @var array\n     */\n    protected $config = array();\n\n    /**\n     * @var Doctrine\\ORM\\EntityManager\n     */\n    protected $orm;\n\n    protected $cacheService;\n\n    /**\n     * @var array\n     */\n    protected $supportedTypes = array(\n        'image/jpeg',\n        'image/jpg',\n        'image/png',\n        'image/gif',\n    );\n\n    /**\n     * @param array                      $config\n     * @param Doctrine\\ORM\\EntityManager $orm\n     */\n    public function __construct(array $config, \\Doctrine\\ORM\\EntityManager $orm, $cacheService)\n    {\n        $this->config = $config;\n        $this->orm = $orm;\n        $this->cacheService = $cacheService;\n    }\n\n    public static function getImagine()\n    {\n        try {\n            $imagine = new \\Imagine\\Imagick\\Imagine();\n        } catch (\\Imagine\\Exception\\RuntimeException $e) {\n            $imagine = new \\Imagine\\Gd\\Imagine();\n        }\n\n        return $imagine;\n    }\n\n    /**\n     * Upload image and create entity\n     *\n     * @param UploadedFile   $file\n     * @param array          $attributes\n     * @param ImageInterface $image\n     *\n     * @return LocalImage\n     */\n    public function upload(UploadedFile $file, array $attributes, ImageInterface $image = null, $keepRatio = true)\n    {\n        $filesystem = new Filesystem();\n        $imagine = self::getImagine();\n\n        $mimeType = $file->getClientMimeType();\n        if (!in_array($mimeType, $this->supportedTypes)) {\n            throw new \\InvalidArgumentException('Unsupported image type '.$mimeType.'.');\n        }\n\n        if (!file_exists($this->config['image_path']) || !is_writable($this->config['image_path'])) {\n            throw new FileException('Directory '.$this->config['image_path'].' is not writable');\n        }\n\n        if (!file_exists($this->config['thumbnail_path']) || !is_writable($this->config['thumbnail_path'])) {\n            throw new FileException('Directory '.$this->config['thumbnail_path'].' is not writable');\n        }\n\n        $attributes = array_merge(array(\n            'content_type' => $mimeType,\n        ), $attributes);\n\n        if (!is_null($image)) {\n            if (file_exists($image->getPath())) {\n                $filesystem->remove($image->getPath());\n            }\n\n            if (file_exists($image->getThumbnailPath())) {\n                unlink($this->config['thumbnail_path'] . $image->getThumbnailPath(true));\n            }\n        } else {\n            $image = new LocalImage($file->getClientOriginalName());\n            $image->setCreated(new \\DateTime());\n            $this->orm->persist($image);\n        }\n\n        list($width, $height) = getimagesize($file->getRealPath());\n        $image->setWidth($width);\n        $image->setHeight($height);\n\n        $this->fillImage($image, $attributes);\n        $this->orm->flush();\n\n        $imagePath = $this->generateImagePath($image->getId(), $file->getClientOriginalExtension());\n        $thumbnailPath = $this->generateThumbnailPath($image->getId(), $file->getClientOriginalExtension());\n\n        $image->setBasename($this->generateImagePath($image->getId(), $file->getClientOriginalExtension(), true));\n        $image->setThumbnailPath($this->generateThumbnailPath($image->getId(), $file->getClientOriginalExtension(), true));\n        $this->orm->flush();\n\n        try {\n            $file->move($this->config['image_path'], $this->generateImagePath($image->getId(), $file->getClientOriginalExtension(), true));\n            $filesystem->chmod($imagePath, 0644);\n\n            if ($keepRatio) {\n                $ratioOrig = $width / $height;\n                $ratioNew = $this->config['thumbnail_max_size'] / $this->config['thumbnail_max_size'];\n                if ($ratioNew > $ratioOrig) {\n                    $newImageWidth = $this->config['thumbnail_max_size'] * $ratioOrig;\n                    $newImageHeight = $this->config['thumbnail_max_size'];\n                } else {\n                    $newImageWidth = $this->config['thumbnail_max_size'];\n                    $newImageHeight = $this->config['thumbnail_max_size'] / $ratioOrig;\n                }\n            } else {\n                $newImageWidth = $this->config['thumbnail_max_size'];\n                $newImageHeight = $this->config['thumbnail_max_size'];\n            }\n\n            $imagine->open($imagePath)\n                ->resize(new Box($newImageWidth, $newImageHeight))\n                ->save($thumbnailPath, array(\n                    'quality' => 90, //from 0 to 100\n                ));\n            $filesystem->chmod($thumbnailPath, 0644);\n        } catch (\\Exception $e) {\n            $filesystem->remove($imagePath);\n            $filesystem->remove($thumbnailPath);\n            $this->orm->remove($image);\n            $this->orm->flush();\n\n            throw new \\Exception($e->getMessage(), $e->getCode());\n        }\n\n        $this->cacheService->clearNamespace('image');\n\n        return $image;\n    }\n\n    /**\n     * Remove image (files and entity)\n     *\n     * @param LocalImage $image\n     *\n     * @return boolean\n     */\n    public function remove(LocalImage $image)\n    {\n        $filesystem = new Filesystem();\n\n        if (file_exists($image->getPath())) {\n            $filesystem->remove($image->getPath());\n        }\n\n        if (file_exists($image->getThumbnailPath())) {\n            unlink($this->config['thumbnail_path'] . $image->getThumbnailPath(true));\n        }\n\n        $articleImages = $this->orm->getRepository('Newscoop\\Image\\ArticleImage')\n            ->getArticleImagesForImage($image)\n            ->getResult();\n\n        foreach ($articleImages as $articleImage) {\n            \\ArticleImage::RemoveImageTagsFromArticleText($articleImage->getArticleNumber(), $articleImage->getNumber());\n            $this->orm->remove($articleImage);\n        }\n\n        $this->orm->remove($image);\n        $this->orm->flush();\n\n        $this->cacheService->clearNamespace('article_image');\n        $this->cacheService->clearNamespace('image');\n\n        return true;\n    }\n\n    /**\n     * Save image\n     *\n     * @param array $info\n     *\n     * @return string\n     */\n    public function save(array $info)\n    {\n        if (!in_array($info['type'], $this->supportedTypes)) {\n            throw new \\InvalidArgumentException(\"Unsupported image type '$info[type]'.\");\n        }\n\n        $name = sha1_file($info['tmp_name']) . '.' . array_pop(explode('.', $info['name']));\n        if (!file_exists(APPLICATION_PATH . \"/../images/$name\")) {\n            rename($info['tmp_name'], APPLICATION_PATH . \"/../images/$name\");\n        }\n\n        return $name;\n    }\n\n    /**\n     * Get image src\n     *\n     * @param string $image\n     * @param int    $width\n     * @param int    $height\n     * @param string $specs\n     *\n     * @return string\n     */\n    public function getSrc($image, $width, $height, $specs = 'fit')\n    {\n        return implode('/', array(\n            \"{$width}x{$height}\",\n            $specs,\n            $this->encodePath($image),\n        ));\n    }\n\n    /**\n     * Generate image for given src\n     *\n     * @param string $src\n     *\n     * @return void\n     */\n    public function generateFromSrc($src)\n    {\n        $matches = array();\n        if (!preg_match('#^([0-9]+)x([0-9]+)/([_a-z0-9]+)/([-_.:~%|a-zA-Z0-9]+)$#', $src, $matches)) {\n            return;\n        }\n\n        list(, $width, $height, $specs, $imagePath) = $matches;\n\n        $destFolder = rtrim($this->config['cache_path'], '/') . '/' . dirname(ltrim($src, './'));\n        if (!realpath($destFolder)) {\n            mkdir($destFolder, 0755, true);\n        }\n\n        if (!is_dir($destFolder)) {\n            throw new \\RuntimeException(\"Can't create folder '$destFolder'.\");\n        }\n\n        $rendition = new Rendition($width, $height, $specs);\n\n        $image = $rendition->generateImage($this->decodePath($imagePath));\n        $image->save($destFolder . '/' . $imagePath, array(\n            'quality' => 90, //from 0 to 100\n        ));\n\n        return $image;\n    }\n\n    /**\n     * Generate file path for thumbnail\n     *\n     * @param int     $imageId\n     * @param string  $extension\n     * @param boolean $olnyFileName\n     *\n     * @return string\n     */\n    private function generateThumbnailPath($imageId, $extension, $olnyFileName = false)\n    {\n        if ($olnyFileName) {\n            return $this->config['thumbnail_prefix'] . sprintf('%09d', $imageId) .'.'. $extension;\n        }\n\n        return $this->config['thumbnail_path'] . $this->config['thumbnail_prefix'] . sprintf('%09d', $imageId) .'.'. $extension;\n    }\n\n    /**\n     * Generate file path for image\n     *\n     * @param int     $imageId\n     * @param string  $extension\n     * @param boolean $olnyFileName\n     *\n     * @return string\n     */\n    private function generateImagePath($imageId, $extension, $olnyFileName = false)\n    {\n        if ($olnyFileName) {\n            return $this->config['image_prefix'] . sprintf('%09d', $imageId) .'.'. $extension;\n        }\n\n        return $this->config['image_path'] . $this->config['image_prefix'] . sprintf('%09d', $imageId) .'.'. $extension;\n    }\n\n    /**\n     * Fill image with custom/default arttributes\n     *\n     * @param LocalImage $image\n     * @param array      $attributes\n     *\n     * @return LocalImage\n     */\n    public function fillImage($image, $attributes)\n    {\n        $attributes = array_merge(array(\n            'date' => date('Y-m-d'),\n            'content_type' => 'image/jpeg',\n            'user' => null,\n            'updated' => new \\DateTime(),\n            'status' => 'unapproved',\n            'source' => 'local',\n            'description' => ''\n        ), $attributes);\n\n        if (isset($attributes['description'])) { $image->setDescription($attributes['description']); } else { $image->setDescription(null); }\n        if (isset($attributes['photographer'])) { $image->setPhotographer($attributes['photographer']); } else { $image->setPhotographer(null); }\n        if (isset($attributes['photographer_url'])) { $image->setPhotographerUrl($attributes['photographer_url']); } else { $image->setPhotographerUrl(null); }\n        if (isset($attributes['place'])) { $image->setPlace($attributes['place']); } else { $image->setPlace(null); }\n        $image->setDate($attributes['date']);\n        $image->setContentType($attributes['content_type']);\n        $image->setUser($attributes['user']);\n        $image->setUpdated($attributes['updated']);\n        $image->setSource($attributes['source']);\n        if (isset($attributes['url'])) { $image->setUrl($attributes['url']); }\n\n        if ($image->getUser() && $image->getUser()->isAdmin() == true) {\n            $image->setStatus('approved');\n        } else {\n            $image->setStatus($attributes['status']);\n        }\n\n        return $image;\n    }\n\n    /**\n     * Save article image\n     *\n     * @param Newscoop\\Image\\ArticleImage $articleImage\n     * @param array $values\n     * @return void\n     */\n    public function saveArticleImage(ArticleImage $articleImage, array $values)\n    {\n        $language = $this->orm->getReference('Newscoop\\Entity\\Language', $values['language']);\n        $articleImage->setNumber($values['number']);\n        $articleImage->setCaption($values['caption'], $language);\n        $this->orm->flush();\n    }\n\n    /**\n     * Add article image\n     *\n     * @param int                       $articleNumber\n     * @param Newscoop\\Image\\LocalImage $image\n     * @param bool                      $defaultImage\n     *\n     * @return Newscoop\\Image\\ArticleImage\n     */\n    public function addArticleImage($articleNumber, LocalImage $image, $defaultImage = false)\n    {\n        if ($image->getId() === null) {\n            $this->orm->persist($image);\n            $this->orm->flush($image);\n        }\n\n        if ($this->getArticleImage($articleNumber, $image->getId())) {\n            throw new ResourcesConflictException(\"Image already attached to article\", 409);\n        }\n\n        $imagesCount = $this->getArticleImagesCount($articleNumber);\n        $articleImage = new ArticleImage(\n            $articleNumber,\n            $image,\n            $defaultImage || $imagesCount === 0,\n            $imagesCount+1\n        );\n        $this->orm->persist($articleImage);\n        $this->orm->flush($articleImage);\n\n        return $articleImage;\n    }\n\n    /**\n     * Remove image from article\n     *\n     * @param ArticleImage $articleImage\n     */\n    public function removeArticleImage(ArticleImage $articleImage)\n    {\n        \\ArticleImage::RemoveImageTagsFromArticleText($articleImage->getArticleNumber(), $articleImage->getNumber());\n\n        $this->orm->remove($articleImage);\n        $this->orm->flush();\n    }\n\n    /**\n     * Get article image\n     *\n     * @param int $articleNumber\n     * @param int $imageId\n     *\n     * @return Newscoop\\Image\\ArticleImage\n     */\n    public function getArticleImage($articleNumber, $imageId)\n    {\n        return $this->orm->getRepository('Newscoop\\Image\\ArticleImage')\n            ->findOneBy(array(\n                'articleNumber' => (int) $articleNumber,\n                'image' => $imageId,\n            ));\n    }\n\n    /**\n     * Find images by article\n     *\n     * @param int $articleNumber\n     *\n     * @return array\n     */\n    public function findByArticle($articleNumber)\n    {\n        $this->updateSchema($articleNumber);\n\n        $images = $this->orm->getRepository('Newscoop\\Image\\ArticleImage')\n            ->findBy(array(\n                'articleNumber' => (int) $articleNumber,\n            ), array('number' => 'asc'));\n\n        $hasDefault = array_reduce($images, function ($hasDefault, $image) {\n            return $hasDefault || $image->isDefault();\n        }, false);\n\n        if (!empty($images) && $hasDefault === false) {\n            $images[0]->setIsDefault(true);\n        }\n\n        return $images;\n    }\n\n    /**\n     * Set default article image\n     *\n     * @param int            $articleNumber\n     * @param ImageInterface $image\n     *\n     * @return void\n     */\n    public function setDefaultArticleImage($articleNumber, ArticleImage $image)\n    {\n        $query = $this->orm->createQuery('UPDATE Newscoop\\Image\\ArticleImage i SET i.isDefault = 0 WHERE i.articleNumber = :articleNumber');\n        $query->setParameter('articleNumber', $articleNumber)\n            ->execute();\n\n        $image->setIsDefault(true);\n        $this->orm->flush($image);\n        $this->orm->clear();\n    }\n\n    /**\n     * Get default article image\n     *\n     * @param int $articleNumber\n     *\n     * @return Newscoop\\Image\\ArticleImage\n     */\n    public function getDefaultArticleImage($articleNumber)\n    {\n        $image = $this->orm->getRepository('Newscoop\\Image\\ArticleImage')\n            ->findOneBy(array(\n                'articleNumber' => (int) $articleNumber,\n                'isDefault' => true,\n            ));\n\n        if ($image === null) {\n            $image = $this->orm->getRepository('Newscoop\\Image\\ArticleImage')->findOneBy(\n                array('articleNumber' => (int) $articleNumber),\n                array('number' => 'asc')\n            );\n\n            if ($image !== null) {\n                $image->setIsDefault(true);\n                $this->orm->flush($image);\n            }\n        }\n\n        return $image;\n    }\n\n    /**\n     * Get thumbnail for given image\n     *\n     * @param string $image\n     * @param int    $width\n     * @param int    $height\n     * @param string $specs\n     *\n     * @return mixed\n     */\n    public function thumbnail($image, $width, $height, $specs)\n    {\n        if (is_string($image)) {\n            $image = new \\Newscoop\\Image\\LocalImage($image);\n        }\n\n        return $this->getThumbnail(new \\Newscoop\\Image\\Rendition($width, $height, $specs), $image);\n    }\n\n    /**\n     * Get thumbnail for given image and rendition\n     *\n     * @param Newscoop\\Image\\Rendition      $rendition\n     * @param Newscoop\\Image\\ImageInterface $image\n     *\n     * @return Newscoop\\Image\\Thumbnail\n     */\n    public function getThumbnail(Rendition $rendition, ImageInterface $image)\n    {\n        return $rendition->getThumbnail($image, $this);\n    }\n\n    /**\n     * Get count of article images\n     *\n     * @param int $articleNumber\n     *\n     * @return int\n     */\n    public function getArticleImagesCount($articleNumber)\n    {\n        $query = $this->orm->getRepository('Newscoop\\Image\\ArticleImage')\n            ->createQueryBuilder('i')\n            ->select('MAX(i.number)')\n            ->where('i.articleNumber = :articleNumber')\n            ->getQuery();\n\n        return $query\n            ->setParameter('articleNumber', $articleNumber)\n            ->getSingleScalarResult();\n    }\n\n    /**\n     * Find image\n     *\n     * @param int $id\n     *\n     * @return Newscoop\\Image\\LocalImage\n     */\n    public function find($id)\n    {\n        return $this->orm->getRepository('Newscoop\\Image\\LocalImage')\n            ->find($id);\n    }\n\n    /**\n     * Find images by a set of criteria\n     *\n     * @param array $criteria\n     * @param array $orderBy\n     * @param int   $limit\n     * @param int   $offset\n     *\n     * @return array\n     */\n    public function findBy(array $criteria, $orderBy = null, $limit = 25, $offset = 0)\n    {\n        return $this->orm->getRepository('Newscoop\\Image\\LocalImage')\n            ->findBy($criteria, $orderBy, $limit, $offset);\n    }\n\n    /**\n     * Get count of images for a set of criteria\n     *\n     * @param array $criteria\n     *\n     * @return int\n     */\n    public function getCountBy(array $criteria)\n    {\n        $qb = $this->orm->getRepository('Newscoop\\Image\\LocalImage')\n            ->createQueryBuilder('i')\n            ->select('COUNT(i)');\n\n        if (isset($criteria['source']) && is_array($criteria['source']) && (!empty($criteria['source']))) {\n            $sourceCases = array();\n            foreach ($criteria['source'] as $oneSource) {\n                $sourceCases[] = $qb->expr()->literal($oneSource);\n            }\n\n            $qb->andwhere('i.source IN (:source)');\n            $qb->setParameter('source', $sourceCases);\n        }\n\n        return (int) $qb->getQuery()\n            ->getSingleScalarResult();\n    }\n\n    /**\n     * Encode path\n     *\n     * @param string $path\n     *\n     * @return string\n     */\n    private function encodePath($path)\n    {\n        return rawurlencode(str_replace('/', '|', $path));\n    }\n\n    /**\n     * Decode path\n     *\n     * @param string $path\n     *\n     * @return string\n     */\n    private function decodePath($path)\n    {\n        return str_replace('|', '/', rawurldecode($path));\n    }\n\n    /**\n     * Get user image\n     *\n     * @param Newscoop\\Entity\\User $user\n     * @param int $width\n     * @param int $height\n     * @return string\n     */\n    public function getUserImage(User $user, $width = 65, $height = 65)\n    {\n        if ($user->getImage() !== null) {\n            return $this->getSrc('images/' . $user->getImage(), $width, $height, 'crop');\n        }\n\n        return null;\n    }\n\n    /**\n     * Update schema if needed\n     *\n     * @param integer $articleNumber\n     *\n     * @return void\n     */\n    private function updateSchema($articleNumber)\n    {\n        try {\n            $this->orm->getRepository('Newscoop\\Image\\ArticleImage')\n                ->findOneBy(array(\n                    'articleNumber' => (int) $articleNumber,\n                ));\n        } catch (\\Exception $e) {\n            if ($e->getCode() === '42S22') {\n                $this->orm->getConnection()->exec('ALTER TABLE ArticleImages ADD is_default INT(1) DEFAULT NULL');\n            }\n        }\n    }\n\n    /**\n     * Gets path of local images\n     *\n     * @return string\n     */\n    public function getImagePath()\n    {\n        return $this->config['image_path'];\n    }\n\n    /**\n     * Return true if the image is being used by an article.\n     *\n     * @param LocalImage $image Local image\n     *\n     * @return boolean\n     */\n    public function inUse($image)\n    {\n        $imageArticle = $this->orm->getRepository('Newscoop\\Image\\ArticleImage')->findOneBy(array(\n            'image' => $image,\n        ));\n\n        if ($imageArticle) {\n            $imagesCount = $this->orm->getRepository('Newscoop\\Entity\\Article')\n                ->createQueryBuilder('a')\n                ->select('count(a)')\n                ->where('number = :articleNumber')\n                ->andWhere('images = :image')\n                ->setParameter('image', $imageArticle)\n                ->setParameter('articleNumber', $imageArticle->getArticleNumber())\n                ->getQuery()\n                ->getSingleScalarResult();\n\n            if ((int) $imagesCount > 0) {\n                return true;\n            }\n        }\n\n        return false;\n    }\n\n    /**\n    * Get image caption\n    *\n    * @param int $image\n    * @param int $articleNumber\n    * @param int $languageId\n    *\n    * @return string\n    */\n    public function getCaption(\\Newscoop\\Image\\LocalImage $image, $articleNumber, $languageId)\n    {\n        $caption = $this->getArticleImageCaption($image->getId(), $articleNumber, $languageId);\n\n        if (!empty($caption)) {\n            return $caption;\n        }\n\n        return $image->getDescription();\n    }\n\n    /**\n    * Get article specific image caption\n    *\n    * @param int $imageId\n    * @param int $articleNumber\n    * @param int $languageId\n    *\n    * @return string\n    */\n    public function getArticleImageCaption($imageId, $articleNumber, $languageId)\n    {\n        $query = $this->orm->getRepository('Newscoop\\Image\\ArticleImageCaption')->createQueryBuilder('c')\n            ->select('c.caption')\n            ->where('c.articleNumber = :article')\n            ->andWhere('c.image = :image')\n            ->andWhere('c.languageId = :language')\n            ->getQuery();\n\n        $query->setParameters(array(\n            'article' => $articleNumber,\n            'image' => $imageId,\n            'language' => $languageId,\n        ));\n\n        try {\n            return $query->getSingleScalarResult();\n        } catch (NoResultException $e) {}\n    }\n\n    /**\n     * Calculates dimensions of resized image.\n     * @param  mixed  source width\n     * @param  mixed  source height\n     * @param  mixed  width in pixels or percent\n     * @param  mixed  height in pixels or percent\n     * @param  int    flags\n     * @return array\n     */\n    public static function calculateSize($srcWidth, $srcHeight, $newWidth, $newHeight, $flags = self::FIT)\n    {\n        if (substr($newWidth, -1) === '%') {\n            $newWidth = round($srcWidth / 100 * abs($newWidth));\n            $flags |= self::ENLARGE;\n            $percents = TRUE;\n        } else {\n            $newWidth = (int) abs($newWidth);\n        }\n        if (substr($newHeight, -1) === '%') {\n            $newHeight = round($srcHeight / 100 * abs($newHeight));\n            $flags |= empty($percents) ? self::ENLARGE : self::STRETCH;\n        } else {\n            $newHeight = (int) abs($newHeight);\n        }\n        if ($flags & self::STRETCH) { // non-proportional\n            if (empty($newWidth) || empty($newHeight)) {\n                throw new \\InvalidArgumentException('For stretching must be both width and height specified.');\n            }\n            if (($flags & self::ENLARGE) === 0) {\n                $newWidth = round($srcWidth * min(1, $newWidth / $srcWidth));\n                $newHeight = round($srcHeight * min(1, $newHeight / $srcHeight));\n            }\n        } else {  // proportional\n            if (empty($newWidth) && empty($newHeight)) {\n                throw new \\InvalidArgumentException('At least width or height must be specified.');\n            }\n            $scale = array();\n            if ($newWidth > 0) { // fit width\n                $scale[] = $newWidth / $srcWidth;\n            }\n            if ($newHeight > 0) { // fit height\n                $scale[] = $newHeight / $srcHeight;\n            }\n            if ($flags & self::FILL) {\n                $scale = array(max($scale));\n            }\n            if (($flags & self::ENLARGE) === 0) {\n                $scale[] = 1;\n            }\n            $scale = min($scale);\n            $newWidth = round($srcWidth * $scale);\n            $newHeight = round($srcHeight * $scale);\n        }\n        return array(max((int) $newWidth, 1), max((int) $newHeight, 1));\n    }\n\n    /**\n     * Calculates dimensions of cutout in image.\n     * @param  mixed  source width\n     * @param  mixed  source height\n     * @param  mixed  x-offset in pixels or percent\n     * @param  mixed  y-offset in pixels or percent\n     * @param  mixed  width in pixels or percent\n     * @param  mixed  height in pixels or percent\n     * @return array\n     */\n    public static function calculateCutout($srcWidth, $srcHeight, $left, $top, $newWidth, $newHeight)\n    {\n        if (substr($newWidth, -1) === '%') {\n            $newWidth = round($srcWidth / 100 * $newWidth);\n        }\n        if (substr($newHeight, -1) === '%') {\n            $newHeight = round($srcHeight / 100 * $newHeight);\n        }\n        if (substr($left, -1) === '%') {\n            $left = round(($srcWidth - $newWidth) / 100 * $left);\n        }\n        if (substr($top, -1) === '%') {\n            $top = round(($srcHeight - $newHeight) / 100 * $top);\n        }\n        if ($left < 0) {\n            $newWidth += $left; $left = 0;\n        }\n        if ($top < 0) {\n            $newHeight += $top; $top = 0;\n        }\n        $newWidth = min((int) $newWidth, $srcWidth - $left);\n        $newHeight = min((int) $newHeight, $srcHeight - $top);\n        return array($left, $top, $newWidth, $newHeight);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Image/LocalImage.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Image;\n\nuse Doctrine\\ORM\\Mapping as ORM;\nuse Doctrine\\Common\\Collections\\ArrayCollection;\n\n/**\n * Local Image\n *\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\ImageRepository\")\n * @ORM\\Table(name=\"Images\", indexes={\n *   @ORM\\Index(name=\"is_updated_storage\", columns={\"is_updated_storage\"}),\n *   @ORM\\Index(name=\"Description\", columns={\"Description\"}),\n *   @ORM\\Index(name=\"Photographer\", columns={\"Photographer\"}),\n *   @ORM\\Index(name=\"Place\", columns={\"Place\"}),\n * })\n */\nclass LocalImage implements ImageInterface\n{\n    const LOCATION_LOCAL = 'local';\n    const LOCATION_REMOTE = 'remote';\n\n    const BROKEN_FILE = 'image_broken.png';\n    const BROKEN_THUMB = 'image_broken_thumbnail.png';\n    const BROKEN_WIDTH = 800;\n    const BROKEN_HEIGHT = 600;\n\n    const STATUS_UNAPPROVED = 'unapproved';\n    const STATUS_APPROVED = 'approved';\n\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"integer\", name=\"Id\", length=10)\n     * @ORM\\GeneratedValue\n     * @var int\n     */\n    public $id;\n\n    /**\n     * @ORM\\Column(name=\"Location\")\n     * @var string\n     */\n    protected $location;\n\n    /**\n     * @ORM\\Column(name=\"ImageFileName\", nullable=True, length=80)\n     * @var string\n     */\n    protected $basename;\n\n    /**\n     * @ORM\\Column(name=\"ThumbnailFileName\", nullable=True, length=80)\n     * @var string\n     */\n    protected $thumbnailPath;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\User\")\n     * @ORM\\JoinColumn(name=\"UploadedByUser\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\User\n     */\n    protected $user;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"TimeCreated\", nullable=true)\n     * @var DateTime\n     */\n    protected $created;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"LastModified\", nullable=true)\n     * @var DateTime\n     */\n    protected $updated;\n\n    /**\n     * @ORM\\Column(name=\"URL\", nullable=True)\n     * @var string\n     */\n    protected $url;\n\n    /**\n     * @ORM\\Column(type=\"text\", nullable=True, name=\"Description\")\n     * @var text\n     */\n    protected $description;\n\n    /**\n     * @ORM\\Column(type=\"integer\", nullable=true, name=\"width\")\n     * @var int\n     */\n    protected $width;\n\n    /**\n     * @ORM\\Column(type=\"integer\", nullable=true, name=\"height\")\n     * @var int\n     */\n    protected $height;\n\n    /**\n     * @ORM\\Column(nullable=True, name=\"Photographer\")\n     * @var string\n     */\n    protected $photographer;\n\n    /**\n     * @ORM\\Column(nullable=True, name=\"photographer_url\")\n     * @var string\n     */\n    protected $photographerUrl;\n\n    /**\n     * @ORM\\Column(nullable=True, name=\"Place\")\n     * @var string\n     */\n    protected $place;\n\n    /**\n     * @ORM\\Column(nullable=True, name=\"Date\")\n     * @var string\n     */\n    protected $date;\n\n    /**\n     * @ORM\\Column(name=\"ContentType\")\n     * @var string\n     */\n    protected $contentType;\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"Newscoop\\Image\\ArticleRendition\", mappedBy=\"image\", cascade={\"remove\"})\n     * @var Doctrine\\Common\\Collections\\Collection\n     */\n    protected $renditions;\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"Newscoop\\Package\\Item\", mappedBy=\"image\", cascade={\"remove\"})\n     * @var Doctrine\\Common\\Collections\\Collection\n     */\n    protected $items;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"is_updated_storage\")\n     * @var int\n     */\n    protected $isUpdatedStorage = 0;\n\n    /**\n     * @ORM\\Column(name=\"Source\", nullable=true)\n     * @var string\n     */\n    protected $source;\n\n    /**\n     * @ORM\\Column(type=\"string\", name=\"Status\")\n     * @var string\n     */\n    protected $status;\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"ArticleImageCaption\", mappedBy=\"image\")\n     * @var array\n     */\n    protected $captions;\n\n    /**\n    * Virtual property set by rest api with connection to articleImage \n    */\n    protected $articleImageId;\n\n    /**\n     * @param string $image\n     */\n    public function __construct($image = '')\n    {\n        if (strpos($image, 'http://') === 0 || strpos($image, 'https://') === 0 || strpos($image, 'file://') === 0) {\n            $this->location = self::LOCATION_REMOTE;\n            $this->url = (string) $image;\n        } else {\n            $this->location = self::LOCATION_LOCAL;\n            $this->basename = (string) $image;\n        }\n\n        $this->renditions = new ArrayCollection();\n        $this->items = new ArrayCollection();\n        $this->captions = new ArrayCollection();\n    }\n\n    /**\n     * Get id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Get path\n     *\n     * @return string\n     */\n    public function getPath()\n    {\n        if ($this->hasUpdatedStorage()) {\n            return 'images/' . $this->basename;\n        } elseif ($this->isLocal()) {\n            return basename($this->basename) === $this->basename ? 'images/' . $this->basename : $this->basename;\n        } else {\n            return $this->url;\n        }\n    }\n\n    /**\n     * Get width\n     *\n     * @return int\n     */\n    public function getWidth()\n    {\n        if (empty($this->width)) {\n            $this->getInfo();\n        }\n\n        return $this->width;\n    }\n\n    /**\n     * Get height\n     *\n     * @return int\n     */\n    public function getHeight()\n    {\n        if (empty($this->height)) {\n            $this->getInfo();\n        }\n\n        return $this->height;\n    }\n\n    /**\n     * Get image info\n     *\n     * @return array\n     */\n    private function getInfo()\n    {\n        $filename = $this->isLocal() ? APPLICATION_PATH . '/../' . $this->getPath() : $this->url;\n        if ($this->isLocal() && !file_exists($filename)) {\n            $this->setBroken();\n\n            return;\n        }\n\n        try {\n            $info = getimagesize($filename);\n        } catch (\\Exception $e) {\n            $this->setBroken();\n\n            return;\n        }\n\n        if (!is_array($info) || empty($info[0]) || empty($info[1])) {\n            $this->setBroken();\n\n            return;\n        }\n\n        $this->width = (int) $info[0];\n        $this->height = (int) $info[1];\n\n        $this->saveEntity();\n    }\n\n    /**\n     * Set image as broken\n     *\n     * @return void\n     */\n    private function setBroken()\n    {\n        $this->location = self::LOCATION_LOCAL;\n        $this->basename = self::BROKEN_FILE;\n        $this->thumbnailPath = self::BROKEN_THUMB;\n        $this->width = self::BROKEN_WIDTH;\n        $this->height = self::BROKEN_HEIGHT;\n        $this->isUpdatedStorage = true;\n        $this->saveEntity();\n    }\n\n    /**\n     * Store updated info if persisted\n     *\n     * @return void\n     *\n     * @todo remove once on image upload is refactored\n     */\n    private function saveEntity()\n    {\n        $em = \\Zend_Registry::get('container')->getService('em');\n        if ($em->contains($this)) {\n            $em->flush($this);\n        }\n    }\n\n    /**\n     * Set description\n     *\n     * @param string $description\n     *\n     * @return void\n     */\n    public function setDescription($description)\n    {\n        $this->description = (string) $description;\n    }\n\n    /**\n     * Get description\n     *\n     * @return string\n     */\n    public function getDescription()\n    {\n        return $this->description;\n    }\n\n    /**\n     * Test if is local image\n     *\n     * @return bool\n     */\n    public function isLocal()\n    {\n        return $this->location === self::LOCATION_LOCAL;\n    }\n\n    /**\n     * Test if image has defined width\n     *\n     * @return bool\n     */\n    public function hasWidth()\n    {\n        return $this->width !== null;\n    }\n\n    /**\n     * Set photographer\n     *\n     * @param string $photographer\n     *\n     * @return void\n     */\n    public function setPhotographer($photographer)\n    {\n        $this->photographer = (string) $photographer;\n    }\n\n    /**\n     * Get photographer\n     *\n     * @return string\n     */\n    public function getPhotographer()\n    {\n        return $this->photographer;\n    }\n\n    /**\n     * Set photographer url\n     *\n     * @param string $url\n     *\n     * @return void\n     */\n    public function setPhotographerUrl($url)\n    {\n        $this->photographerUrl = (string) $url;\n    }\n\n    /**\n     * Get photographer url\n     *\n     * @return string\n     */\n    public function getPhotographerUrl()\n    {\n        return $this->photographerUrl;\n    }\n\n    /**\n    * Get caption\n    *\n    * Proxy to getDescription\n    *\n    * @return string\n    */\n    public function getCaption()\n    {\n        return $this->getDescription();\n    }\n\n    /**\n    * Get captions\n    *\n    * @return array\n    */\n    public function getCaptions()\n    {\n        $captions = array();\n        foreach ($this->captions as $languageId => $caption) {\n            $captions[$languageId] = $caption->getCaption();\n        }\n\n        return $captions;\n    }\n\n    /**\n     * Set place\n     *\n     * @param string $place\n     *\n     * @return void\n     */\n    public function setPlace($place)\n    {\n        $this->place = (string) $place;\n    }\n\n    /**\n     * Get place\n     *\n     * @return string\n     */\n    public function getPlace()\n    {\n        return $this->place;\n    }\n\n    /**\n     * Set date\n     *\n     * @param string $date\n     *\n     * @return void\n     */\n    public function setDate($date)\n    {\n        $this->date = (string) $date;\n    }\n\n    /**\n     * Get date\n     *\n     * @return string\n     */\n    public function getDate()\n    {\n        return $this->date;\n    }\n\n    /**\n     * Test is storage was updated\n     *\n     * @return bool\n     */\n    public function hasUpdatedStorage()\n    {\n        return (bool) $this->isUpdatedStorage;\n    }\n\n    /**\n     * Update storage\n     *\n     * @param string $path\n     * @param string $thumbnailPath\n     *\n     * @return void\n     */\n    public function updateStorage($path, $thumbnailPath)\n    {\n        $this->upload($path, $thumbnailPath);\n        $this->isUpdatedStorage = true;\n    }\n\n    /**\n     * Upload image\n     *\n     * @param string $path\n     * @param string $thumbnailPath\n     *\n     * @return void\n     */\n    public function upload($path, $thumbnailPath)\n    {\n        $this->basename = $path;\n        $this->thumbnailPath = $thumbnailPath;\n    }\n\n    /**\n     * Get thumbnail path\n     *\n     * @return string\n     */\n    public function getThumbnailPath($clear = false)\n    {\n        if ($clear) {\n            return $this->thumbnailPath;\n        }\n\n        return 'images/thumbnails/' . $this->thumbnailPath;\n    }\n\n    /**\n     * Get source\n     *\n     * @return string\n     */\n    public function getSource()\n    {\n        return $this->source;\n    }\n\n    /**\n     * Gets the value of contentType.\n     *\n     * @return string\n     */\n    public function getContentType()\n    {\n        return $this->contentType;\n    }\n\n    /**\n     * Sets the value of contentType.\n     *\n     * @param string $contentType the content type\n     *\n     * @return self\n     */\n    public function setContentType($contentType)\n    {\n        $this->contentType = $contentType;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of user.\n     *\n     * @return \\Newscoop\\Entity\\User\n     */\n    public function getUser()\n    {\n        return $this->user;\n    }\n\n    /**\n     * Sets the value of user.\n     *\n     * @param \\Newscoop\\Entity\\User $user the user\n     *\n     * @return self\n     */\n    public function setUser(\\Newscoop\\Entity\\User $user = null)\n    {\n        $this->user = $user;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of created.\n     *\n     * @return DateTime\n     */\n    public function getCreated()\n    {\n        return $this->created;\n    }\n\n    /**\n     * Sets the value of created.\n     *\n     * @param DateTime $created the created\n     *\n     * @return self\n     */\n    public function setCreated(\\DateTime $created)\n    {\n        $this->created = $created;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of updated.\n     *\n     * @return DateTime\n     */\n    public function getUpdated()\n    {\n        return $this->updated;\n    }\n\n    /**\n     * Sets the value of updated.\n     *\n     * @param DateTime $updated the updated\n     *\n     * @return self\n     */\n    public function setUpdated(\\DateTime $updated)\n    {\n        $this->updated = $updated;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of status.\n     *\n     * @return string\n     */\n    public function getStatus()\n    {\n        return $this->status;\n    }\n\n    /**\n     * Sets the value of status.\n     *\n     * @param string $status the status\n     *\n     * @return self\n     */\n    public function setStatus($status = null)\n    {\n        $this->status = self::STATUS_UNAPPROVED;\n\n        if ($status == self::STATUS_APPROVED) {\n            $this->status = $status;\n        }\n\n        return $this;\n    }\n\n    /**\n     * Sets the value of width.\n     *\n     * @param int $width the width\n     *\n     * @return self\n     */\n    public function setWidth($width)\n    {\n        $this->width = $width;\n\n        return $this;\n    }\n\n    /**\n     * Sets the value of height.\n     *\n     * @param int $height the height\n     *\n     * @return self\n     */\n    public function setHeight($height)\n    {\n        $this->height = $height;\n\n        return $this;\n    }\n\n    /**\n     * Sets the value of thumbnailPath.\n     *\n     * @param string $thumbnailPath the thumbnail path\n     *\n     * @return self\n     */\n    public function setThumbnailPath($thumbnailPath)\n    {\n        $this->thumbnailPath = $thumbnailPath;\n\n        return $this;\n    }\n\n    /**\n     * Sets the value of basename.\n     *\n     * @param string $basename the basename\n     *\n     * @return self\n     */\n    public function setBasename($basename)\n    {\n        $this->basename = $basename;\n\n        return $this;\n    }\n\n    /**\n     * Sets the value of source.\n     *\n     * @param string $source the source\n     *\n     * @return self\n     */\n    public function setSource($source)\n    {\n        $this->source = $source;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of basename.\n     *\n     * @return string\n     */\n    public function getBasename()\n    {\n        return $this->basename;\n    }\n\n    /**\n     * Sets the value of url.\n     *\n     * @param string $url the url\n     *\n     * @return self\n     */\n    public function setUrl($url)\n    {\n        $this->url = $url;\n\n        return $this;\n    }\n\n    /**\n     * Gets articleImage.\n     *\n     * @return mixed\n     */\n    public function getArticleImageId()\n    {\n        return $this->articleImageId;\n    }\n\n    /**\n     * Sets articleImage.\n     *\n     * @param mixed $articleImageId the article image id\n     *\n     * @return self\n     */\n    public function setArticleImageId($articleImageId)\n    {\n        $this->articleImageId = $articleImageId;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Image/Rendition.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Image;\n\nuse Imagine\\Image\\Box;\nuse Imagine\\Image\\Point;\nuse Newscoop\\Image\\ImageService;\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * Rendition\n * @ORM\\Entity\n * @ORM\\Table(name=\"rendition\")\n */\nclass Rendition\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"string\")\n     * @var string\n     */\n    protected $name;\n\n    /**\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $width;\n\n    /**\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $height;\n\n    /**\n     * @ORM\\Column\n     * @var string\n     */\n    protected $specs;\n\n    /**\n     * @var string\n     */\n    protected $coords;\n\n    /**\n     * @ORM\\Column(type=\"integer\", nullable=True)\n     * @var int\n     */\n    protected $offset;\n\n    /**\n     * @ORM\\Column(nullable=True)\n     * @var string\n     */\n    protected $label;\n\n    /**\n     * @param int    $width\n     * @param int    $height\n     * @param string $specs\n     * @param string $name\n     * @param int    $offset\n     * @param string $label\n     */\n    public function __construct($width, $height, $specs = 'fit', $name = null, $offset = null, $label = null)\n    {\n        $this->width = (int) $width;\n        $this->height = (int) $height;\n        $this->specs = (string) $specs;\n        $this->name = (string) $name;\n        $this->offset = (int) $offset;\n        $this->label = (string) $label;\n    }\n\n    /**\n     * @return string\n     */\n    public function __toString()\n    {\n        return $this->getName();\n    }\n\n    /**\n     * Set width\n     *\n     * @param int $width\n     * @return void\n     */\n    public function setWidth($width)\n    {\n        $this->width = (int) $width;\n    }\n\n    /**\n     * Get width\n     *\n     * @return void\n     */\n    public function getWidth()\n    {\n        return $this->width;\n    }\n\n    /**\n     * Set height\n     *\n     * @param int $height\n     * @return void\n     */\n    public function setHeight($height)\n    {\n        $this->height = (int) $height;\n    }\n\n    /**\n     * Get height\n     *\n     * @return int\n     */\n    public function getHeight()\n    {\n        return $this->height;\n    }\n\n    /**\n     * Set specification\n     *\n     * @param string $specs\n     * @return void\n     */\n    public function setSpecs($specs)\n    {\n        $this->specs = (string) $specs;\n    }\n\n    /**\n     * Get specification\n     *\n     * @return string\n     */\n    public function getSpecs()\n    {\n        return $this->coords !== null && $this->isCrop() ? 'crop_' . $this->coords :  $this->specs;\n    }\n\n    /**\n     * Get name\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->name;\n    }\n\n    /**\n     * Set coordinates for image\n     *\n     * @param string $coords\n     * @return void\n     */\n    public function setCoords($coords)\n    {\n        $this->coords = $coords;\n    }\n\n    /**\n     * Get preview\n     *\n     * @param int $width\n     * @param int $height\n     * @return Newscoop\\Image\\Rendition\n     */\n    public function getPreview($width, $height)\n    {\n        list($width, $height) = \\Newscoop\\Image\\ImageService::calculateSize($this->width, $this->height, $width, $height);\n        return new Rendition($width, $height, $this->getSpecs());\n    }\n\n    /**\n     * Get thumbnail\n     *\n     * @param Newscoop\\Image\\ImageInterface $image\n     * @param Newscoop\\Image\\ImageService $imageService\n     * @return Newscoop\\Image\\Thumbnail\n     */\n    public function getThumbnail(ImageInterface $image, ImageService $imageService)\n    {\n        if (!$this->fits($image)) {\n            throw new \\InvalidArgumentException(\"Image is too small.\");\n        }\n\n        list($width, $height) = \\Newscoop\\Image\\ImageService::calculateSize($image->getWidth(), $image->getHeight(), $this->width, $this->height, $this->getFlags());\n        if ($this->isCrop()) {\n            $width = min($width, $this->width);\n            $height = min($height, $this->height);\n        }\n\n        return new Thumbnail($imageService->getSrc($image->getPath(), $this->width, $this->height, $this->getSpecs()), $width, $height);\n    }\n\n    /**\n     * Generate image\n     *\n     * @param string $imagePath\n     * @return Imagine\\Gd\\Image\n     */\n    public function generateImage($imagePath)\n    {\n        $path = is_file(APPLICATION_PATH . '/../' . $imagePath) ? APPLICATION_PATH . '/../' . $imagePath : $imagePath;\n        $imagine = ImageService::getImagine();\n        $image = $imagine->open($path);\n        $imageSize = $image->getSize();\n\n        if ($this->isCrop()) {\n             $cropSpecs = explode('_', $this->getSpecs());\n             if (count($cropSpecs) === 1) {\n                list($width, $height) = ImageService::calculateSize($imageSize->getWidth(), $imageSize->getHeight(), $this->width, $this->height, $this->getFlags());\n                $image->resize(new Box($width, $height));\n                list($left, $top, $width, $height) = ImageService::calculateCutout($width, $height, '50%', '50%', $this->width, $this->height);\n                $image->crop(new Point($left, $top), new Box($width, $height));\n             } else {\n                list(, $x0, $y0, $x1, $y1) = $cropSpecs;\n                $image->crop(new Point($x0, $y0), new Box($x1 - $x0, $y1 - $y0));\n                $imageSize = $image->getSize();\n                list($width, $height) = ImageService::calculateSize($imageSize->getWidth(), $imageSize->getHeight(), $this->width, $this->height, $this->getFlags());\n                $image->resize(new Box($width, $height));\n             }\n        } else {\n                list($width, $height) = ImageService::calculateSize($imageSize->getWidth(), $imageSize->getHeight(), $this->width, $this->height, $this->getFlags());\n                $image->resize(new Box($width, $height));\n        }\n\n        return $image;\n    }\n\n    /**\n     * Get aspect ratio\n     *\n     * @return float\n     */\n    public function getAspectRatio()\n    {\n        return (float) $this->width / (float) $this->height;\n    }\n\n    /**\n     * Get select area\n     *\n     * @param Newscoop\\Image\\ImageInterface $image\n     * @return array\n     */\n    public function getSelectArea(ImageInterface $image)\n    {\n        if ($this->isCrop()) {\n            $cropSpecs = explode('_', $this->getSpecs());\n            if (count($cropSpecs) > 1) {\n                array_shift($cropSpecs);\n                return $cropSpecs;\n            }\n        }\n\n        $ratio = min($image->getWidth() / (float) $this->width, $image->getHeight() / (float) $this->height);\n        $width = (int) round($ratio * $this->width);\n        $height = (int) round($ratio * $this->height);\n        $minx = (int) round(($image->getWidth() - $width) / 2);\n        $miny = (int) round(($image->getHeight() - $height) / 2);\n        return array($minx, $miny, $minx + $width, $miny + $height);\n    }\n\n    /**\n     * Get min size\n     *\n     * @param Newscoop\\Image\\ImageInterface $image\n     * @return array\n     */\n    public function getMinSize(ImageInterface $image)\n    {\n        list($width, $height) = \\Newscoop\\Image\\ImageService::calculateSize($image->getWidth(), $image->getHeight(), $this->width, $this->height, $this->getFlags());\n        $ratio = max($width / (float) $image->getWidth(), $height / (float) $image->getHeight());\n        return array($this->width, $this->height);\n    }\n\n    /**\n     * Get flags\n     *\n     * @return int\n     */\n    private function getFlags()\n    {\n        $originalSpecs = explode('_', $this->getSpecs(), 2);\n        $specs = array_shift($originalSpecs);\n        switch ($specs) {\n            case 'fill':\n            case 'crop':\n                $flags = \\Newscoop\\Image\\ImageService::FILL;\n                break;\n\n            case 'fit':\n            default:\n                $flags = \\Newscoop\\Image\\ImageService::FIT;\n                break;\n        }\n\n        return $flags;\n    }\n\n    /**\n     * Test if is crop defined\n     *\n     * @return bool\n     */\n    public function isCrop()\n    {\n        return strpos($this->specs, 'crop') === 0;\n    }\n\n    /**\n     * Test if rendition fits image\n     *\n     * @param ImageInterface $image\n     * @return bool\n     */\n    public function fits(ImageInterface $image)\n    {\n        if (null !== $image) {\n            return $this->specs === 'fit' || ($image->getWidth() >= $this->width && $image->getHeight() >= $this->height);\n        }\n\n        return false;\n    }\n\n    /**\n     * Set offset\n     *\n     * @param int $offset\n     * @return void\n     */\n    public function setOffset($offset)\n    {\n        $this->offset = (int) $offset;\n    }\n\n    /**\n     * Set label\n     *\n     * @param string $label\n     * @return void\n     */\n    public function setLabel($label)\n    {\n        $this->label = empty($label) ? null : (string) $label;\n    }\n\n    /**\n     * Get label\n     *\n     * @return string\n     */\n    public function getLabel()\n    {\n        return $this->label !== null ? $this->label : $this->getName();\n    }\n\n    /**\n     * Get info\n     *\n     * @return string\n     */\n    public function getInfo()\n    {\n        return sprintf('%s: %s %dx%d',\n            $this->getLabel(),\n            $this->getSpecs(),\n            $this->getWidth(),\n            $this->getHeight());\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Image/RenditionService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Image;\n\n/**\n * Rendition Service\n */\nclass RenditionService\n{\n    /**\n     * @var array\n     */\n    protected $config = array('theme_path' => '/../themes');\n\n    /**\n     * @var Doctrine\\ORM\\EntityManager\n     */\n    protected $orm;\n\n    /**\n     * @var Newscoop\\Image\\ImageService\n     */\n    protected $imageService;\n\n    /**\n     * @var array\n     */\n    protected $renditions;\n\n    /**\n     * @param array $config\n     * @param Doctrine\\ORM\\EntityManager $orm\n     * @param Newscoop\\Image\\ImageService $imageService\n     */\n    public function __construct(\\Doctrine\\ORM\\EntityManager $orm, ImageService $imageService)\n    {\n        $this->orm = $orm;\n        $this->imageService = $imageService;\n    }\n\n    /**\n     * Set article rendition\n     *\n     * @param int $articleNumber\n     * @param Newscoop\\Image\\Rendition $rendition\n     * @param Newscoop\\Image\\ImageInterface $image\n     * @param string $imageSpecs\n     * @return Newscoop\\Image\\ArticleRendition\n     */\n    public function setArticleRendition($articleNumber, Rendition $rendition, ImageInterface $image, $imageSpecs = null)\n    {\n        if ($image->getWidth() < $rendition->getWidth() || $image->getHeight() < $rendition->getHeight()) {\n            throw new \\InvalidArgumentException(\"Image too small.\");\n        }\n\n        $old = $this->getArticleRendition($articleNumber, $rendition);\n        if ($old !== null) {\n            $this->orm->remove($old);\n            $this->orm->flush();\n        }\n\n        $articleRendition = new ArticleRendition($articleNumber, $rendition, $image, $imageSpecs);\n        $this->orm->persist($articleRendition);\n        $this->orm->flush($articleRendition);\n        return $articleRendition;\n    }\n\n    /**\n     * Unset article rendition\n     *\n     * @param int $articleNumber\n     * @param string $rendition\n     * @return void\n     */\n    public function unsetArticleRendition($articleNumber, $rendition)\n    {\n        $articleRendition = $this->getArticleRendition($articleNumber, $rendition);\n        if ($articleRendition !== null) {\n            $this->orm->remove($articleRendition);\n            $this->orm->flush();\n        }\n    }\n\n    /**\n     * Unset article-image rendition\n     *\n     * @param int $articleNumber\n     * @param int $image\n     * @return void\n     */\n    public function unsetArticleImageRenditions($articleNumber, $image)\n    {\n\n        $renditions = $this->orm->getRepository('Newscoop\\Image\\ArticleRendition')->findBy(array(\n            'articleNumber' => (int) $articleNumber,\n            'image' => (int) $image,\n        ));\n\n        foreach ($renditions as $one_rend) {\n            $this->orm->remove($one_rend);\n            $this->orm->flush();\n        }\n    }\n\n    /**\n     * Get article rendition\n     *\n     * @param int $articleNumber\n     * @param string $rendition\n     * @return Newscoop\\Image\\ArticleRendition\n     */\n    private function getArticleRendition($articleNumber, $rendition)\n    {\n        try {\n            return $this->orm->getRepository('Newscoop\\Image\\ArticleRendition')->findOneBy(array(\n                'articleNumber' => (int) $articleNumber,\n                'rendition' => (string) $rendition,\n            ));\n        } catch (\\Exception $e) {\n            $this->createSchemaIfMissing($e);\n            return null;\n        }\n    }\n\n    /**\n     * Get article image rendition\n     *\n     * @param int    $articleNumber\n     * @param string $renditionName\n     * @param int    $width\n     * @param int    $height\n     * @return array\n     */\n    public function getArticleRenditionImage($articleNumber, $renditionName, $width = null, $height = null)\n    {\n        $renditions = $this->getRenditions();\n        if (!array_key_exists($renditionName, $renditions)) {\n            return false;\n        }\n\n        $articleRenditions = $this->getArticleRenditions($articleNumber);\n        $rendition = $articleRenditions[$renditions[$renditionName]];\n        if ($rendition === null) {\n            return false;\n        }\n\n        try {\n            if ($width !== null && $height !== null) {\n                $preview = $rendition->getRendition()->getPreview($width, $height);\n                $thumbnail = $preview->getThumbnail($rendition->getImage(), $this->imageService);\n            } else {\n                $thumbnail = $rendition->getRendition()->getThumbnail($rendition->getImage(), $this->imageService);\n            }\n        } catch (\\Exception $e) {\n            return null;\n        }\n\n        $originalRendition = new Rendition($rendition->getImage()->getWidth(), $rendition->getImage()->getHeight());\n\n        return array(\n            'id' => $rendition->getImage()->getId(),\n            'src' => $thumbnail->src,\n            'width' => $thumbnail->width,\n            'height' => $thumbnail->height,\n            'caption' => $rendition->getImage()->getCaption(),\n            'photographer' => $rendition->getImage()->getPhotographer(),\n            'photographer_url' => $rendition->getImage()->getPhotographerUrl(),\n            'original' => (object) array(\n                'width' => $rendition->getImage()->getWidth(),\n                'height' => $rendition->getImage()->getHeight(),\n                'src' => $originalRendition->getThumbnail($rendition->getImage(), $this->imageService)->src,\n            ),\n        );\n    }\n\n    /**\n     * Get article renditions\n     *\n     * @param int $articleNumber\n     * @return array\n     */\n    public function getArticleRenditions($articleNumber)\n    {\n        try {\n            $articleRenditions = $this->orm->getRepository('Newscoop\\Image\\ArticleRendition')->findBy(array(\n                'articleNumber' => (int) $articleNumber,\n            ));\n        } catch (\\Exception $e) {\n            $this->createSchemaIfMissing($e);\n            $articleRenditions = array();\n        }\n\n        $defaultArticleImage = $this->imageService->getDefaultArticleImage($articleNumber);\n        return new ArticleRenditionCollection($articleNumber, $articleRenditions, $defaultArticleImage ? $defaultArticleImage->getImage() : null);\n    }\n\n    /**\n     * Get renditions\n     *\n     * @return array\n     */\n    public function getRenditions()\n    {\n        if ($this->renditions === null) {\n            $this->renditions = array();\n            foreach ($this->orm->getRepository('Newscoop\\Image\\Rendition')->findBy(array(), array('offset' => 'asc', 'name' => 'asc')) as $rendition) {\n                $this->renditions[$rendition->getName()] = $rendition;\n            }\n\n            if (empty($this->renditions)) {\n                $this->registerRenditions();\n            }\n        }\n\n        return $this->renditions;\n    }\n\n    /**\n     * Register renditions\n     *\n     * @param array $existing\n     * @return void\n     */\n    public function registerRenditions(array $existing = array())\n    {\n        $this->renditions = array();\n        foreach (glob(APPLICATION_PATH . $this->config['theme_path'] . '/publication_*/theme_*/theme.xml') as $themeInfo) {\n            $xml = simplexml_load_file($themeInfo);\n            if (!$xml->renditions) {\n                continue;\n            }\n\n            foreach ($xml->renditions->rendition as $rendition) {\n                $renditionName = (string) $rendition['name'];\n                if (!isset($this->renditions[$renditionName])) {\n                    if (array_key_exists($renditionName, $existing)) {\n                        $existing[$renditionName]->setWidth($rendition['width']);\n                        $existing[$renditionName]->setHeight($rendition['height']);\n                        $existing[$renditionName]->setSpecs($rendition['specs']);\n                        $existing[$renditionName]->setOffset($rendition['offset']);\n                        $existing[$renditionName]->setLabel($rendition['label']);\n                        $this->renditions[$renditionName] = $existing[$renditionName];\n                    } else {\n                        $this->orm->persist($this->renditions[$renditionName] = new Rendition($rendition['width'], $rendition['height'], $rendition['specs'], $rendition['name']));\n                    }\n                }\n            }\n        }\n\n        $this->orm->flush();\n    }\n\n    /**\n     * Get rendition by given name\n     *\n     * @param string $name\n     * @return Newscoop\\Image\\Rendition\n     */\n    public function getRendition($name)\n    {\n        $renditions = $this->getRenditions();\n        $rendition = array_key_exists($name, $renditions) ? $renditions[$name] : null;\n        if ($rendition !== null) {\n            $rendition = $this->orm->getRepository('Newscoop\\Image\\Rendition')->find($rendition->getName());\n            $this->orm->persist($rendition);\n            $this->orm->flush($rendition);\n        }\n\n        return $rendition;\n    }\n\n    /**\n     * Get options\n     *\n     * @return array\n     */\n    public function getOptions()\n    {\n        $options = array();\n        foreach ($this->getRenditions() as $name => $rendition) {\n            $specs = explode('_', $rendition->getSpecs());\n            $options[$name] = sprintf('%s (%s %dx%d)', $name, array_shift($specs), $rendition->getWidth(), $rendition->getHeight());\n        }\n\n        return $options;\n    }\n\n    /**\n     * Set renditions order\n     *\n     * @param array $order\n     * @return void\n     */\n    public function setRenditionsOrder(array $order)\n    {\n        $renditions = $this->getRenditions();\n        foreach ($order as $offset => $renditionName) {\n            if (array_key_exists($renditionName, $renditions)) {\n                $renditions[$renditionName]->setOffset($offset);\n            }\n        }\n\n        $this->orm->flush();\n        $this->renditions = null;\n    }\n\n    /**\n     * Set renditions labels\n     *\n     * @param array $labels\n     * @return void\n     */\n    public function setRenditionsLabels(array $labels)\n    {\n        $renditions = $this->getRenditions();\n        foreach ($labels as $renditionName => $label) {\n            if (array_key_exists($renditionName, $renditions)) {\n                $renditions[$renditionName]->setLabel($label);\n            }\n        }\n\n        $this->orm->flush();\n        $this->renditions = null;\n    }\n\n    /**\n     * Test if there are renditions defined\n     *\n     * @return bool\n     */\n    public function hasRenditions()\n    {\n        return count($this->getRenditions()) !== 0;\n    }\n\n    /**\n     * Force reload of rendition specs\n     *\n     * @return void\n     */\n    public function reloadRenditions()\n    {\n        $this->getRenditions();\n        $this->registerRenditions($this->renditions);\n        $this->removeOrphanedArticleRenditions(array_keys($this->renditions));\n        $this->removeOrphanedRenditions(array_keys($this->renditions));\n        $this->renditions = null;\n    }\n\n    /**\n     * Remove orphaned article renditions\n     *\n     * @param array $names\n     * @return void\n     */\n    private function removeOrphanedArticleRenditions(array $names)\n    {\n        if (empty($names)) {\n            $this->orm->createQuery('DELETE FROM Newscoop\\Image\\ArticleRendition ar')\n                ->execute();\n            return;\n        }\n\n        $this->orm->createQuery('DELETE FROM Newscoop\\Image\\ArticleRendition ar WHERE ar.rendition NOT IN (:names)')\n            ->setParameter('names', $names)\n            ->execute();\n    }\n\n    /**\n     * Remove orphaned renditions\n     *\n     * @param array $names\n     * @return void\n     */\n    private function removeOrphanedRenditions(array $names)\n    {\n        if (empty($names)) {\n            $this->orm->createQuery('DELETE FROM Newscoop\\Image\\Rendition r')\n                ->execute();\n            return;\n        }\n\n        $this->orm->createQuery('DELETE FROM Newscoop\\Image\\Rendition r WHERE r.name NOT IN (:names)')\n            ->setParameter('names', array_merge($names, $this->getPackageRenditionNames()))\n            ->execute();\n    }\n\n    /**\n     * Get renditions names used by packages\n     *\n     * @return array\n     */\n    private function getPackageRenditionNames()\n    {\n        $names = array();\n        foreach ($this->orm->createQuery('SELECT p FROM Newscoop\\Package\\Package p')->getResult() as $package) {\n            $id = $this->orm->getUnitOfWork()->getEntityIdentifier($package->getRendition());\n            $names[] = $id['name'];\n        }\n\n        return $names;\n    }\n\n    /**\n     * Create schema for article rendition\n     *\n     * @param Exception $e\n     * @return void\n     */\n    private function createSchemaIfMissing(\\Exception $e)\n    {\n        if ($e->getCode() === '42S02') {\n            try {\n                $schemaTool = new \\Doctrine\\ORM\\Tools\\SchemaTool($this->orm);\n                $schemaTool->createSchema(array(\n                    $this->orm->getClassMetadata('Newscoop\\Image\\ArticleRendition'),\n                ));\n            } catch (\\Exception $e) { // ignore possible errors - foreign key to Images table\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Image/RenditionViewHelper.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Image;\n\n/**\n * Get rendition\n */\nclass RenditionViewHelper extends \\Zend_View_Helper_Abstract\n{\n    /**\n     * @var Newscoop\\Image\\ImageService\n     */\n    protected $imageService;\n\n    /**\n     * @param Newscoop\\Image\\ImageService $imageService\n     */\n    public function __construct(ImageService $imageService)\n    {\n        $this->imageService = $imageService;\n    }\n\n    /**\n     * Get rendition preview\n     *\n     * @param Newscoop\\Image\\Rendition $rendition\n     * @param int $width\n     * @param int $height\n     * @param Newscoop\\Image\\ArticleRendition $articleImageRendition\n     * @return string\n     */\n    public function rendition(Rendition $rendition, $width, $height, ArticleRendition $articleRendition = null)\n    {\n        if ($articleRendition !== null) {\n            $preview = $articleRendition->getRendition()->getPreview($width, $height);\n            $preview->setCoords($articleRendition->getImageSpecs());\n            $thumbnail = $rendition->fits($articleRendition->getImage()) ? $this->imageService->getThumbnail($preview, $articleRendition->getImage()) : null;\n        } else {\n            $preview = $rendition->getPreview($width, $height);\n            $thumbnail = null;\n        }\n\n        $this->view->isDefault = $thumbnail === null || $articleRendition->isDefault();\n        $this->view->preview = $preview;\n        $this->view->rendition = $rendition;\n        $this->view->thumbnail = $thumbnail;\n        return $this->view->render('image/rendition.phtml');\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Image/Thumbnail.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Image;\n\n/**\n * Thumbnail\n */\nclass Thumbnail\n{\n    /**\n     * @var string\n     */\n    public $src;\n\n    /**\n     * @var int\n     */\n    public $width;\n\n    /**\n     * @var int\n     */\n    public $height;\n\n    /**\n     * @param string $src\n     * @param int $width\n     * @param int $height\n     */\n    public function __construct($src, $width, $height)\n    {\n        $this->src = (string) $src;\n        $this->width = (int) $width;\n        $this->height = (int) $height;\n    }\n\n    /**\n     * Get img\n     *\n     * @param Zend_View $view\n     * @return string\n     */\n    public function getImg(\\Zend_View $view)\n    {\n        return sprintf(\n            '<center><img src=\"%s\" alt=\"\" /></center>',\n            $view->url(array('src' => $this->src), 'image', true, false)\n        );\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Image/ThumbnailViewHelper.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Image;\n\n/**\n * Get thumbnail\n */\nclass ThumbnailViewHelper extends \\Zend_View_Helper_Abstract\n{\n    /**\n     * @var Newscoop\\Image\\ImageService\n     */\n    protected $imageService;\n\n    /**\n     * @param Newscoop\\Image\\ImageService $imageService\n     */\n    public function __construct(ImageService $imageService)\n    {\n        $this->imageService = $imageService;\n    }\n\n    /**\n     * Get thumbnail for given image\n     *\n     * @param string $image\n     * @param int $width\n     * @param int $height\n     * @param string $specs\n     * @return mixin\n     */\n    public function thumbnail($image, $width, $height, $specs)\n    {\n        if (is_string($image)) {\n            $image = new LocalImage($image);\n        }\n\n        return $this->imageService->getThumbnail(new Rendition($width, $height, $specs), $image);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Image/UpdateStorageService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Image;\n\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Storage\\StorageService;\n\n/**\n * Upload Storage Service\n */\nclass UpdateStorageService\n{\n    /**\n     * @var Doctrine\\ORM\\EntityManager\n     */\n    protected $em;\n\n    /**\n     * @var Newscoop\\Storage\\StorageService\n     */\n    protected $storage;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     * @param Newscoop\\Storage\\StorageService $storage\n     */\n    public function __construct(EntityManager $em, StorageService $storage)\n    {\n        $this->em = $em;\n        $this->storage = $storage;\n    }\n\n    /**\n     * Update storage for given number of images\n     *\n     * @param int $batchSize\n     * @return void\n     */\n    public function updateStorage($batchSize = 100)\n    {\n        $images = $this->getImageRepository()\n            ->findImagesForStorageUpdate($batchSize);\n\n        foreach ($images as $image) {\n            $this->updateImage($image);\n        }\n\n        $this->em->flush();\n    }\n\n    /**\n     * Update single image storage\n     *\n     * @param Newscoop\\Image\\LocalImage $image\n     * @return void\n     */\n    private function updateImage(LocalImage $image)\n    {\n        $image->updateStorage(\n            $this->storage->moveImage($image->getPath()),\n            $this->storage->moveThumbnail($image->getThumbnailPath())\n        );\n    }\n\n    /**\n     * Test if given image can be deleted\n     *\n     * @param string $imagePath\n     * @return bool\n     */\n    public function isDeletable($imagePath)\n    {\n        return $this->getImageRepository()\n            ->getImageFileReferencesCount($imagePath) <= 1;\n    }\n\n    /**\n     * Get image repository\n     *\n     * @return Newscoop\\Entity\\Repository\\ImageRepository\n     */\n    private function getImageRepository()\n    {\n        return $this->em->getRepository('Newscoop\\Image\\LocalImage');\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Installer/Services/BootstrapService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Installer\\Services;\n\nuse Symfony\\Component\\Filesystem\\Filesystem;\nuse Symfony\\Component\\Filesystem\\Exception\\IOException;\nuse Symfony\\Component\\Process\\PhpExecutableFinder;\nuse Symfony\\Component\\Process\\Process;\n\n/**\n * Bootstrap installer service\n */\nclass BootstrapService\n{\n    public $mustBeWritable;\n    public $basePath;\n    protected $filesystem;\n    protected $logger;\n\n    /**\n     * Construct class\n     *\n     * @param object $logger\n     * @param array  $directories\n     * @param string $basePath\n     */\n    public function __construct(\n        $logger = null,\n        $directories = array('cache', 'log', 'library/Proxy', 'themes'),\n        $basePath = null\n    ) {\n        $this->mustBeWritable = $directories;\n        $this->filesystem = new Filesystem();\n        $this->logger = $logger;\n        $this->basePath = $basePath;\n\n        if (is_null($basePath)) {\n            $this->basePath = __DIR__ . '/../../../../';\n        }\n    }\n\n    /**\n     * Check if all directories are writable\n     *\n     * @return mixed true if all writable or array with not writable directories\n     */\n    public function checkDirectories()\n    {\n        $notWritable = array();\n\n        foreach ($this->mustBeWritable as $directory) {\n            $fullPath = $this->basePath .'/'.$directory;\n            if (!is_writable($fullPath)) {\n                $notWritable[] = $fullPath;\n            }\n        }\n\n        if (count($notWritable) > 0) {\n            return $notWritable;\n        }\n\n        return true;\n    }\n\n    /**\n     * Try to make all directories writeable\n     *\n     * @return boolean\n     */\n    public function makeDirectoriesWritable()\n    {\n        foreach ($this->mustBeWritable as $directory) {\n            $fullPath = $this->basePath .'/'. $directory;\n\n            try {\n                if (!$this->filesystem->exists($fullPath)) {\n                    $this->filesystem->mkdir($fullPath);\n                }\n\n                $this->filesystem->chown($fullPath, 'www-data', true);\n                $this->filesystem->chmod($fullPath, 0777, 0000, true);\n            } catch (IOException $e) {\n                if ($this->logger != null) {\n                    $this->logger->addDebug($e->getMessage());\n                }\n            }\n        }\n\n        return true;\n    }\n\n    /**\n     * Reload themes reditions in datbase\n     */\n    public function warmapCache()\n    {\n        $phpFinder = new PhpExecutableFinder();\n        $phpPath = $phpFinder->find();\n        if (!$phpPath) {\n            throw new \\RuntimeException('The php executable could not be found, add it to your PATH environment variable and try again');\n        }\n\n        $php = escapeshellarg($phpPath);\n        $newscoopConsole = escapeshellarg($this->newscoopDir.'/application/console');\n        $command = new Process(\"$php $newscoopConsole cache:warmup\", null, null, null, 300);\n        $command->run();\n        if (!$command->isSuccessful()) {\n            throw new \\RuntimeException($command->getErrorOutput());\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Installer/Services/DatabaseService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Installer\\Services;\n\nuse Doctrine\\DBAL\\DriverManager;\nuse Doctrine\\DBAL\\Connection;\n\n/**\n * Service with functions related to database jobs\n */\nclass DatabaseService\n{\n    protected $logger;\n    public $errorQueries = array();\n\n    /**\n     * @param object $logger\n     */\n    public function __construct($logger)\n    {\n        $this->logger = $logger;\n    }\n\n    /**\n     * Create Newscoop Database\n     *\n     * @param Connection $connection\n     */\n    public function createNewscoopDatabase($connection)\n    {\n        $params = $connection->getParams();\n        if (isset($params['master'])) {\n            $params = $params['master'];\n        }\n        unset($params['dbname']);\n        $tmpConnection = DriverManager::getConnection($params);\n\n        $name = $tmpConnection->getDatabasePlatform()->quoteSingleIdentifier($connection->getDatabase());\n        $tmpConnection->getSchemaManager()->createDatabase($name);\n\n        unset($tmpConnection);\n\n        $this->logger->addInfo('Database '.$name.' created');\n    }\n\n    /**\n     * Fill database with default data and run all not applied upgrades\n     *\n     * @param Connection $connection\n     *\n     * @return boolean\n     */\n    public function fillNewscoopDatabase($connection)\n    {\n        // import database from sql file\n        $sqlFile =  __DIR__.'/../../../../install/Resources/sql/campsite_core.sql';\n\n        try {\n            $connection->exec(file_get_contents($sqlFile));\n        } catch (\\Exception $e) {\n            return false;\n        }\n\n        $dbVersions = array_map('basename', glob(__DIR__.'/../../../../install/Resources/sql/upgrade/[2-9].[0-9]*'));\n        if (!empty($dbVersions)) {\n            usort($dbVersions, array($this, 'versionCompare'));\n            $dbLastVersion = array_pop($dbVersions);\n            $dbLastVersionDir = __DIR__.'/../../../../install/Resources/sql/upgrade/'.$dbLastVersion.'/';\n            $dbLastRoll = '';\n            $dbRolls = $this->searchDbRolls($dbLastVersionDir, '');\n            if (!empty($dbRolls)) {\n                $dbLastRollInfo = array_slice($dbRolls, -1, 1, true);\n                $dbLastRollInfoKeys = array_keys($dbLastRollInfo);\n                $dbLastRoll = $dbLastRollInfoKeys[0];\n            }\n\n            $this->saveDatabaseVersion($connection, $dbLastVersion, $dbLastRoll);\n            $this->logger->addInfo('Last db version:\"'.$dbLastVersion.'\", last db roll: \"'.$dbLastRoll.'\"');\n        }\n\n        return true;\n    }\n\n    /**\n     * Save database configuration to file\n     * @param Connection $connection\n     */\n    public function saveDatabaseConfiguration($connection)\n    {\n        $this->renderFile('_database_conf.twig', __DIR__.'/../../../../conf/database_conf.php', array(\n            'database_name' => $connection->getDatabase(),\n            'database_server_host' => $connection->getHost(),\n            'database_server_port' => $connection->getPort(),\n            'database_user' => $connection->getUsername(),\n            'database_password' => $connection->getPassword(),\n        ));\n\n        $this->renderFile('_configuration.twig', __DIR__.'/../../../../conf/configuration.php', array());\n    }\n\n    /**\n     * Fill database with sample data\n     *\n     * @param Connection $connection\n     */\n    public function installSampleData($connection)\n    {\n        $sqlFile =  __DIR__.'/../../../../install/Resources/sql/campsite_demo_data.sql';\n        $errors = $this->importDB($sqlFile, $connection);\n    }\n\n    /**\n     * Install database schema\n     *\n     * @param Connection $connection\n     * @param string     $host\n     */\n    public function installDatabaseSchema($connection, $host = null, $publicationName = null)\n    {\n        $connection->executeQuery('INSERT IGNORE INTO Aliases VALUES (2,?,1)', array($host));\n        $connection->executeQuery('INSERT IGNORE INTO Publications (`Id`, `Name`, `IdDefaultLanguage`, `IdDefaultAlias`, `IdURLType`, `fk_forum_id`, `comments_enabled`, `comments_article_default_enabled`, `comments_subscribers_moderated`, `comments_public_moderated`, `comments_public_enabled`, `comments_captcha_enabled`, `comments_spam_blocking_enabled`, `comments_moderator_to`, `comments_moderator_from`, `url_error_tpl_id`, `seo`, `meta_title`, `meta_keywords`, `meta_description`) VALUES (\"1\", ?, \"1\", \"2\", \"2\", NULL, \"1\", \"1\", NULL, \"0\", NULL, NULL, \"1\", NULL, NULL, NULL, \"a:1:{s:4:\\\"name\\\";s:2:\\\"on\\\";}\", NULL, NULL, NULL)', array($publicationName));\n\n        // needed for tests - sample new article type\n        $connection->executeQuery(\"INSERT INTO `ArticleTypeMetadata` (`type_name`, `field_name`, `field_weight`, `is_hidden`, `comments_enabled`, `fk_phrase_id`, `field_type`, `field_type_param`, `is_content_field`, `max_size`, `show_in_editor`) VALUES ('news', 'NULL', NULL, 0, 1, NULL, NULL, NULL, 0, NULL, 1),('news', 'lead', 1, 0, 0, NULL, 'text', NULL, 0, 160, 0),('news', 'content', 2, 0, 0, NULL, 'body', 'editor_size=500', 1, NULL, 0);\");\n    }\n\n    /**\n     * Fill datatabase with geodata\n     *\n     * @param Connection $connection\n     *\n     * @return boolean\n     */\n    public function loadGeoData($connection)\n    {\n        $which_output = '';\n        $which_ret = '';\n        @exec('which mysql', $which_output, $which_ret);\n\n        if (is_array($which_output) && (isset($which_output[0]))) {\n            $mysql_client_command = $which_output[0];\n\n            if (!$this->withMysqlAllIsOk($mysql_client_command)) {\n                return false;\n            }\n\n            $last_dir = getcwd();\n            $work_dir = __DIR__.'/../../../../install/Resources/sql';\n            chdir($work_dir);\n\n            $db_host = $connection->getHost();\n            $db_port = $connection->getPort();\n            $db_user = $connection->getUsername();\n            $db_pass = $connection->getPassword();\n            $db_name = $connection->getDatabase();\n\n            $access_params = '';\n            $access_params .= ' -h '.escapeshellarg($db_host);\n            if (!empty($db_port)) {\n                $access_params .= ' -P '.escapeshellarg(''.$db_port);\n            }\n            $access_params .= ' -u '.escapeshellarg($db_user);\n            if (!empty($db_pass)) {\n                $access_params .= ' -p'.escapeshellarg($db_pass);\n            }\n            $access_params .= ' -D '.escapeshellarg($db_name);\n\n            $cmd_string = escapeshellcmd($mysql_client_command).$access_params.' --local-infile=1 < '.'geonames.sql';\n            $cmd_output = array();\n            $cmd_retval = 0;\n            exec($cmd_string, $cmd_output, $cmd_retval);\n\n            chdir($last_dir);\n            if (!empty($cmd_retval)) {\n                return false;\n            }\n\n            return true;\n        }\n    }\n\n    /**\n     * Import sql file to databas\n     * @param string     $sqlFilePath\n     * @param Connection $connection\n     * @param mixed      $logger\n     *\n     * @return integer\n     */\n    public function importDB($sqlFilePath, $connection, $logger = null)\n    {\n        if (!($sqlFile = file_get_contents($sqlFilePath))) {\n            return false;\n        }\n\n        if ($logger == null) {\n            $logger = $this->logger;\n        }\n\n        $queries = $this->splitSQL($sqlFile);\n\n        $errors = 0;\n        foreach ($queries as $query) {\n            $query = trim($query);\n            if (!empty($query) && $query{0} != '#' && (0 !== strpos($query, \"--\"))) {\n                if (0 !== strpos(strtolower($query), \"system\")) {\n                    try {\n                        $connection->executeQuery($query);\n                    } catch (\\Exception $e) {\n                        $errors++;\n                        $this->errorQueries[] = $query;\n                        $logger->addError('Error with query \"'.$query.'\"');\n\n                        continue;\n                    }\n                }\n\n                // if it started via the system command\n                $command_parts = array();\n                foreach (explode(\" \", $query) as $query_part) {\n                    $query_part = trim($query_part);\n                    if (\"\" != $query_part) {\n                        $command_parts[] = $query_part;\n                    }\n                }\n\n                $command_script = \"\";\n                $command_known = false;\n                if (3 == count($command_parts)) {\n                    if (\"php\" == strtolower($command_parts[1])) {\n                        $command_known = true;\n                        $command_script = trim($command_parts[2], \";\");\n                    }\n                }\n\n                if (!$command_known) {\n                    continue;\n                }\n\n                $command_path = dirname($sqlFilePath);\n                $command_path = $this->combinePaths($command_path, $command_script);\n\n                require_once $command_path;\n\n                if (isset($upgradeErrors) && is_array($upgradeErrors) && count($upgradeErrors) > 0) {\n                    foreach ($upgradeErrors as $upgradeError) {\n                        $errors++;\n                        $this->errorQueries[] = $upgradeError;\n                    }\n                }\n            }\n        }\n\n        return $errors;\n    }\n\n    /**\n     * Puts together two paths, usually an absolute one (directory), plus a relative one (filename)\n     *\n     * @param string $dirFirst\n     * @param string $dirSecond\n     *\n     * @return string\n     */\n    private function combinePaths($dirFirst, $dirSecond)\n    {\n        if (0 === strpos(strtolower($dirSecond), \"/\")) {\n            return $dirSecond;\n        }\n\n        if (0 === strpos(strtolower($dirSecond), \"./\")) {\n            $dirSecond = substr($dirSecond, 2);\n\n            return $dirFirst.DIRECTORY_SEPARATOR.$dirSecond;\n        }\n\n        while (0 === strpos(strtolower($dirSecond), \"../\")) {\n            $dirFirst = dirname($dirFirst);\n            $dirSecond = substr($dirSecond, 3);\n        }\n\n        return $dirFirst.DIRECTORY_SEPARATOR.$dirSecond;\n    }\n\n    /**\n     * Check if current mysql instance is ok for Newscoop\n     * @param string $mysql_client_command\n     *\n     * @return boolean\n     */\n    private function withMysqlAllIsOk($mysqlClientCommand)\n    {\n        if (!file_exists($mysqlClientCommand)) {\n            return false;\n        }\n\n        if ((!is_file($mysqlClientCommand)) && (!is_link($mysqlClientCommand))) {\n            return false;\n        }\n\n        if (!is_executable($mysqlClientCommand)) {\n            return false;\n        }\n\n        return true;\n    }\n\n    /**\n     * render Twig template\n     *\n     * @param string $template\n     * @param array  $parameters\n     *\n     * @return string\n     */\n    protected function renderTwigTemplate($template, $parameters)\n    {\n        $twig = new \\Twig_Environment(\n            new \\Twig_Loader_Filesystem(__DIR__.'/../../../../install/Resources/templates/'),\n            array(\n                'debug'            => true,\n                'cache'            => false,\n                'strict_variables' => true,\n                'autoescape'       => false,\n            )\n        );\n\n        return $twig->render($template, $parameters);\n    }\n\n    /**\n     * Save TWIG template to file\n     * @param string $template\n     * @param string $target\n     * @param array  $parameters\n     *\n     * @return boolean\n     */\n    public function renderFile($template, $target, $parameters)\n    {\n        if (!is_dir(dirname($target))) {\n            mkdir(dirname($target), 0777, true);\n        }\n\n        return file_put_contents($target, $this->renderTwigTemplate($template, $parameters));\n    }\n\n    /**\n     * Split big sql to array fo queries\n     *\n     * @param string $sqlFile\n     *\n     * @return array\n     */\n    private function splitSQL($sqlFile)\n    {\n        $sqlFile = trim($sqlFile);\n        $sqlFile = preg_replace(\"/\\n\\#[^\\n]*/\", '', \"\\n\".$sqlFile);\n        $buffer = array();\n        $return = array();\n        $inString = false;\n\n        for ($i = 0; $i < strlen($sqlFile) - 1; $i ++) {\n            if ($sqlFile[$i] == \";\" && !$inString) {\n                $return[] = substr($sqlFile, 0, $i);\n                $sqlFile = substr($sqlFile, $i +1);\n                $i = 0;\n            }\n\n            if ($inString && ($sqlFile[$i] == $inString)\n                    && $buffer[1] != \"\\\\\") {\n                $inString = false;\n            } elseif (!$inString && ($sqlFile[$i] == '\"'\n                                     || $sqlFile[$i] == \"'\")\n                          && (!isset($buffer[0]) || $buffer[0] != \"\\\\\")) {\n                $inString = $sqlFile[$i];\n            }\n            if (isset($buffer[1])) {\n                $buffer[0] = $buffer[1];\n            }\n\n            $buffer[1] = $sqlFile[$i];\n        }\n\n        if (!empty($sqlFile)) {\n            $return[] = $sqlFile;\n        }\n\n        return $return;\n    }\n\n    /**\n     * Compares versions of Newscoop for upgrades 3.1.0 before 3.1.x, 3.5.2 before 3.5.11\n     *\n     * @param string $p_version1\n     * @param string $p_version2\n     *\n     * @return int\n     */\n    public function versionCompare($p_version1, $p_version2)\n    {\n        $version1 = \"\".$p_version1;\n        $version2 = \"\".$p_version2;\n\n        $ver1_arr = explode(\".\", $version1);\n        $ver2_arr = explode(\".\", $version2);\n        $ver1_len = count($ver1_arr);\n        $ver2_len = count($ver2_arr);\n\n        $ver_len = $ver1_len;\n        if ($ver2_len < $ver_len) {\n            $ver_len = $ver2_len;\n        }\n\n        for ($ind = 0; $ind < $ver_len; $ind++) {\n            if ($ver1_arr[$ind] < $ver2_arr[$ind]) {\n                return -1;\n            }\n            if ($ver1_arr[$ind] > $ver2_arr[$ind]) {\n                return 1;\n            }\n        }\n\n        if ($ver1_len < $ver2_len) {\n            return -1;\n        }\n        if ($ver1_len > $ver2_len) {\n            return 1;\n        }\n\n        return 0;\n    }\n\n    /**\n     * Search for db roll in rols directory\n     *\n     * @param string $roll_base_dir\n     * @param string $last_db_roll\n     *\n     * @return array\n     */\n    public function searchDbRolls($roll_base_dir, $last_db_roll)\n    {\n        $rolls = array(); // roll_name => roll_path\n\n        $roll_dir_names = scandir($roll_base_dir);\n        if (empty($roll_dir_names)) {\n            return $rolls;\n        }\n\n        $avoid_starts = array('.', '_');\n        $some_top_files = false;\n        foreach ($roll_dir_names as $one_rol_dir) {\n            $cur_rol_path = $roll_base_dir.DIRECTORY_SEPARATOR.$one_rol_dir;\n            if (is_file($cur_rol_path) && ('sql' == pathinfo($cur_rol_path, PATHINFO_EXTENSION))) {\n                $some_top_files = true;\n            }\n\n            if ((!is_dir($cur_rol_path)) || (in_array(substr($one_rol_dir, 0, 1), $avoid_starts))) {\n                continue;\n            }\n\n            if ((!empty($last_db_roll)) && ($one_rol_dir <= $last_db_roll)) {\n                continue;\n            }\n\n            $rolls[$one_rol_dir] = $cur_rol_path;\n        }\n\n        ksort($rolls);\n\n        if (empty($last_db_roll)) {\n            if ($some_top_files) {\n                $rolls = array_merge(array('.' => $roll_base_dir), $rolls);\n            }\n        }\n\n        return $rolls;\n    }\n\n    /**\n     * Sava new database version in Versions table\n     *\n     * @param Connection $connection\n     * @param string     $version\n     * @param string     $roll\n     *\n     * @return boolean\n     */\n    public function saveDatabaseVersion($connection, $version, $roll)\n    {\n        $version = str_replace(array('\"', '\\''), array('_', '_'), $version);\n        $roll = str_replace(array('\"', '\\''), array('_', '_'), $roll);\n\n        $connection->executeQuery('INSERT INTO Versions (ver_name, ver_value) VALUES (\"last_db_version\", :version) ON DUPLICATE KEY UPDATE ver_value = :version', array(\n            'version' => $version,\n        ));\n\n        $connection->executeQuery('INSERT INTO Versions (ver_name, ver_value) VALUES (\"last_db_roll\", :roll) ON DUPLICATE KEY UPDATE ver_value = :roll', array(\n            'roll' => $roll,\n        ));\n\n        return true;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Installer/Services/DemositeService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Installer\\Services;\n\nuse Symfony\\Component\\Filesystem\\Filesystem;\nuse Newscoop\\Service\\Implementation\\ThemeManagementServiceLocal;\nuse Symfony\\Component\\Process\\PhpExecutableFinder;\nuse Symfony\\Component\\Process\\Process;\n\n/**\n * Demosite service\n */\nclass DemositeService\n{\n    protected $logger;\n    protected $templatesDir;\n    protected $installDir;\n    protected $filesystem;\n\n    /**\n     * @param object $logger\n     */\n    public function __construct($logger)\n    {\n        $this->logger = $logger;\n        $this->templatesDir = __DIR__ . '/../../../../themes';\n        $this->installDir = __DIR__ . '/../../../../install';\n        $this->newscoopDir = __DIR__ . '/../../../..';\n        $this->filesystem = new Filesystem();\n    }\n\n    /**\n     * Copy templates\n     *\n     * @param string $templateName Choosen template name\n     */\n    public function copyTemplate($templateName = 'empty')\n    {\n        $phpFinder = new PhpExecutableFinder();\n        $phpPath = $phpFinder->find();\n        if (!$phpPath) {\n            throw new \\RuntimeException('The php executable could not be found, add it to your PATH environment variable and try again');\n        }\n\n        $php = escapeshellarg($phpPath);\n        $newscoopConsole = escapeshellarg($this->newscoopDir.'/application/console');\n\n        $clearCache = new Process(\"$php $newscoopConsole cache:clear\", null, null, null, 300);\n        $clearCache->run();\n\n        if (!$clearCache->isSuccessful()) {\n            throw new \\RuntimeException($clearCache->getErrorOutput());\n        }\n\n        $availablePublications = new Process(\"$php $newscoopConsole themes:assign $templateName\", null, null, null, 300);\n        $availablePublications->run();\n\n        if (!$availablePublications->isSuccessful()) {\n            throw new \\RuntimeException($availablePublications->getErrorOutput());\n        }\n    }\n\n    /**\n     * Install empty theme\n     */\n    public function installEmptyTheme()\n    {\n        $emptyDir = $this->templatesDir.'/'.ThemeManagementServiceLocal::FOLDER_UNASSIGNED.'/empty/';\n        $themeXml = <<<XML\n<theme name=\"Empty\" designer=\"default\" version=\"1.0\" require=\"3.6\">\n    <description>This is an empty theme</description>\n    <presentation-img src=\"preview-front.jpg\" name=\"Front page\"/>\n    <presentation-img src=\"preview-section.jpg\" name=\"Section page\"/>\n    <presentation-img src=\"preview-article.jpg\" name=\"Article page\"/>\n    <output name=\"Web\">\n        <frontPage src=\"front.tpl\"/>\n        <sectionPage src=\"section.tpl\"/>\n        <articlePage src=\"article.tpl\"/>\n        <errorPage src=\"404.tpl\"/>\n    </output>\n</theme>\nXML;\n\n        $this->filesystem->mkdir($emptyDir);\n        $sxml = new \\SimpleXMLElement($themeXml);\n        $sxml->asXML($emptyDir.'theme.xml');\n\n        // creating preview images\n        $preview = @imagecreatetruecolor(210, 130);\n        $logoPoints = array( 159, 9,   113, 34,   86, 99,   150, 121,   203, 99,   138, 78 );\n        $textColor = imagecolorallocate($preview, 191, 191, 191);\n        imagefill($preview, 0, 0, imagecolorallocate($preview, 255, 255, 255));\n        imagefilledpolygon($preview, $logoPoints, 6, imagecolorallocate($preview, 239, 239, 239));\n        imagestring($preview, 5, 10, 100, 'Empty Theme', $textColor);\n        imagejpeg($preview, $emptyDir.\"preview-front.jpg\", 100);\n        imagejpeg($preview, $emptyDir.\"preview-article.jpg\", 100);\n        imagejpeg($preview, $emptyDir.\"preview-section.jpg\", 100);\n        imagedestroy($preview);\n\n        // put empty templates in theme\n        file_put_contents($emptyDir.\"front.tpl\", \"<!-- Front page template -->\");\n        file_put_contents($emptyDir.\"section.tpl\", \"<!-- Section page template -->\");\n        file_put_contents($emptyDir.\"article.tpl\", \"<!-- Article page template -->\");\n        file_put_contents($emptyDir.\"404.tpl\", \"<!-- Error page template -->\");\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Installer/Services/FinishService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Installer\\Services;\n\nuse Symfony\\Component\\Process\\PhpExecutableFinder;\nuse Symfony\\Component\\Process\\Process;\nuse Symfony\\Component\\Filesystem\\Filesystem;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\SchedulerServiceInterface;\nuse Crontab\\Crontab;\nuse Crontab\\Job;\nuse Symfony\\Component\\Filesystem\\Exception\\IOException;\n\n/**\n * Finish Newscoop installation tasks\n */\nclass FinishService\n{\n    protected $newscoopDir;\n    protected $filesystem;\n\n    /**\n     * Construct\n     */\n    public function __construct()\n    {\n        $this->newscoopDir = __DIR__.'/../../../..';\n        $this->filesystem = new Filesystem();\n    }\n\n    /**\n     * Generate proxies for entities\n     */\n    public function generateProxies()\n    {\n        $phpFinder = new PhpExecutableFinder();\n        $phpPath = $phpFinder->find();\n        if (!$phpPath) {\n            throw new \\RuntimeException('The php executable could not be found, add it to your PATH environment variable and try again');\n        }\n\n        exec('rm -rf '.$this->newscoopDir.'/cache/*', $output, $code);\n\n        $php = escapeshellarg($phpPath);\n        $doctrine = escapeshellarg($this->newscoopDir.'/scripts/doctrine.php');\n        $generateProxies = new Process(\"$php $doctrine orm:generate-proxies\", null, null, null, 300);\n        $generateProxies->run();\n        if (!$generateProxies->isSuccessful()) {\n            throw new \\RuntimeException($generateProxies->getErrorOutput());\n        }\n\n        exec('rm -rf '.$this->newscoopDir.'/cache/*', $output, $code);\n    }\n\n    /**\n     * Create default oauth client\n     */\n    public function createDefaultOauthClient($alias)\n    {\n        $phpFinder = new PhpExecutableFinder();\n        $phpPath = $phpFinder->find();\n        if (!$phpPath) {\n            throw new \\RuntimeException('The php executable could not be found, add it to your PATH environment variable and try again');\n        }\n\n        $php = escapeshellarg($phpPath);\n        $newscoopConsole = escapeshellarg($this->newscoopDir.'/application/console');\n        $reloadRenditions = new Process(\"$php $newscoopConsole  oauth:create-client newscoop $alias --default\", null, null, null, 300);\n        $reloadRenditions->run();\n        if (!$reloadRenditions->isSuccessful()) {\n            throw new \\RuntimeException('An error occurred when executing the create default oauth client command.');\n        }\n    }\n\n    /**\n     * Reload themes reditions in datbase\n     */\n    public function reloadRenditions()\n    {\n        $phpFinder = new PhpExecutableFinder();\n        $phpPath = $phpFinder->find();\n        if (!$phpPath) {\n            throw new \\RuntimeException('The php executable could not be found, add it to your PATH environment variable and try again');\n        }\n\n        $php = escapeshellarg($phpPath);\n        $newscoopConsole = escapeshellarg($this->newscoopDir.'/application/console');\n        $reloadRenditions = new Process(\"$php $newscoopConsole renditions:reload\", null, null, null, 300);\n        $reloadRenditions->run();\n        if (!$reloadRenditions->isSuccessful()) {\n            throw new \\RuntimeException('An error occurred when executing the Reload renditions command.');\n        }\n    }\n\n    /**\n     * Install bundle assets\n     */\n    public function installAssets()\n    {\n        $phpFinder = new PhpExecutableFinder();\n        $phpPath = $phpFinder->find();\n        if (!$phpPath) {\n            throw new \\RuntimeException('The php executable could not be found, add it to your PATH environment variable and try again');\n        }\n\n        $php = escapeshellarg($phpPath);\n        $newscoopConsole = escapeshellarg($this->newscoopDir.'/application/console');\n        $assetsInstall = new Process(\"$php $newscoopConsole assets:install $this->newscoopDir/public\", null, null, null, 300);\n        $assetsInstall->run();\n        if (!$assetsInstall->isSuccessful()) {\n            throw new \\RuntimeException($assetsInstall->getErrorOutput());\n        }\n    }\n\n    /**\n     * Save newscoop cronjobs in user cronjob file\n     *\n     * @param  SchedulerService $scheduler Cron job scheduler service\n     * @return bolean\n     */\n    public function saveCronjobs(SchedulerServiceInterface $scheduler)\n    {\n        $binDirectory = realpath($this->newscoopDir.'/bin');\n        $appDirectory = realpath($this->newscoopDir.'/application/console');\n\n        $scheduler->registerJob(\"Autopublish pending issues and articles\", array(\n            'command' => $binDirectory.'/newscoop-autopublish',\n            'schedule' => '* * * * *',\n        ));\n\n        $scheduler->registerJob(\"Runs Newscoop Indexer - articles indexing\", array(\n            'command' => $binDirectory.'/newscoop-indexer --silent',\n            'schedule' => '0 */4 * * *',\n        ));\n\n        $scheduler->registerJob(\"Send Newscoop subscriptions notifications\", array(\n            'command' => $binDirectory.'/subscription-notifier',\n            'schedule' => '0 */8 * * *',\n        ));\n\n        $scheduler->registerJob(\"Send Newscoop events notifications\", array(\n            'command' => $binDirectory.'/events-notifier',\n            'schedule' => '*/2 * * * *',\n        ));\n\n        $scheduler->registerJob(\"Remove old statistics from Newscoop database\", array(\n            'command' => $binDirectory.'/newscoop-statistics',\n            'schedule' => '0 */4 * * *',\n        ));\n\n        $scheduler->registerJob(\"Send Newscoop stats to Sourcefabric\", array(\n            'command' => $binDirectory.'/newscoop-stats',\n            'schedule' => '0 5 * * *',\n        ));\n\n        $scheduler->registerJob(\"Remove obsolete pending users data\", array(\n            'command' => $appDirectory.' user:garbage',\n            'schedule' => '30 0 * * *',\n        ));\n\n        $scheduler->registerJob(\"Display the last 7 days logged actions when going to Configure -> Logs. All the rest are stored in newscoop-audit.log.\", array(\n            'command' => $appDirectory.' log:maintenance',\n            'schedule' => '30 1 * * *',\n            'enabled' => false,\n            'detailsUrl' => 'http://sourcefabric.booktype.pro/newscoop-42-for-journalists-and-editors/log-file-maintenance/',\n        ));\n\n        $crontab = new Crontab();\n\n        $job = new Job();\n        $job->setMinute('*')->setHour('*')->setDayOfMonth('*')->setMonth('*')->setDayOfWeek('*')\n            ->setCommand('php '.$appDirectory.' scheduler:run');\n        $crontab->addJob($job);\n        $crontab->write();\n\n        return true;\n    }\n\n    /**\n     * Save instance config (to files and database)\n     *\n     * @param array      $config\n     * @param Connection $connection\n     */\n    public function saveInstanceConfig($config, $connection)\n    {\n        // Set site title\n        $sql = \"UPDATE SystemPreferences SET value = ? WHERE varname = 'SiteTitle'\";\n        $stmt = $connection->prepare($sql);\n        $stmt->bindValue(1, $config['site_title']);\n        $stmt->execute();\n\n        $sql = \"UPDATE SystemPreferences SET value = ? WHERE varname = 'EmailFromAddress' OR varname = 'EmailContact'\";\n        $stmt = $connection->prepare($sql);\n        $stmt->bindValue(1, $config['user_email']);\n        $stmt->execute();\n\n        // Set admin user\n        $user = new User();\n        $salt = $user->generateRandomString();\n        $password = implode(User::HASH_SEP, array(\n            User::HASH_ALGO,\n            $salt,\n            hash(User::HASH_ALGO, $salt.$config['recheck_user_password']),\n        ));\n\n        $sql = \"UPDATE liveuser_users SET Password = ?, EMail = ?, time_updated = NOW(), time_created = NOW(), status = '1', is_admin = '1' WHERE id = 1\";\n        $stmt = $connection->prepare($sql);\n        $stmt->bindValue(1, $password);\n        $stmt->bindValue(2, $config['user_email']);\n        $stmt->execute();\n\n        $sql = \"UPDATE SystemPreferences SET value = ? WHERE varname = 'SiteSecretKey'\";\n        $stmt = $connection->prepare($sql);\n        $stmt->bindValue(1, sha1($config['site_title'].mt_rand()));\n        $stmt->execute();\n\n        $sql = \"INSERT INTO SystemPreferences (`varname`, `value`, `last_modified`) VALUES ('installation_id', ?, NOW())\";\n        $stmt = $connection->prepare($sql);\n        $stmt->bindValue(1, sha1($config['site_title'].mt_rand()));\n        $stmt->execute();\n\n        $result = $this->setupHtaccess();\n        if (!empty($result)) {\n            throw new IOException(implode(\" \", $result).\" Most likely it's caused by wrong permissions.\");\n        }\n    }\n\n    /**\n     * Makes backup of current .htaccess file and copy the latest one\n     *\n     * @return array\n     */\n    public function setupHtaccess()\n    {\n        $htaccess = '/.htaccess';\n        $errors = array();\n\n        try {\n            if ($this->filesystem->exists($this->newscoopDir.$htaccess)) {\n                $this->filesystem->copy(realpath($this->newscoopDir.$htaccess), realpath($this->newscoopDir).'/htaccess.bak');\n            }\n        } catch (IOException $e) {\n            $errors[] = $e->getMessage();\n\n            return $errors;\n        }\n\n        try {\n            $this->filesystem->copy(realpath($this->newscoopDir.'/htaccess.dist'), realpath($this->newscoopDir).$htaccess, true);\n        } catch (IOException $e) {\n            $errors[] = $e->getMessage();\n        }\n\n        return $errors;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Installer/Services/UpgradeService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Installer\\Services;\n\nuse Newscoop\\Installer\\Services;\n\n/**\n * Upgrade service\n */\nclass UpgradeService\n{\n    protected $newscoopDir;\n    protected $connection;\n    protected $monolog;\n\n    /**\n     * @param Connection $connection\n     * @param object     $logger\n     */\n    public function __construct($connection, $logger)\n    {\n        $this->newscoopDir = __DIR__.'/../../../..';\n        $this->connection = $connection;\n        $this->logger = $logger;\n    }\n\n    /**\n     * Get info about instance database versions\n     *\n     * @return array Database verions\n     */\n    public function getDBVersion()\n    {\n        $version = $this->connection->fetchAll('SELECT ver_value FROM Versions WHERE ver_name = \"last_db_version\"');\n        $version = $version[0]['ver_value'];\n        $roll = $this->connection->fetchAll('SELECT ver_value FROM Versions WHERE ver_name = \"last_db_roll\"');\n        $roll = $roll[0]['ver_value'];\n\n        if (!$version) {\n            $version = '[unknown]';\n        }\n\n        $dbInfo = $version;\n        if (!in_array($roll, array('', '.'))) {\n            $dbInfo .= ', roll '.$roll;\n        }\n\n        return array(\n            'version' => $version,\n            'roll' => $roll,\n            'dbInfo' => $dbInfo,\n        );\n    }\n\n    /**\n     * Upgrade database\n     *\n     * @param array   $versionsArray\n     * @param boolean $silent\n     * @param boolean $showRolls\n     *\n     * @return boolean\n     */\n    public function upgradeDatabase($versionsArray, $silent = false, $showRolls = false)\n    {\n        $databaseService = new Services\\DatabaseService($this->monolog);\n        $lockFileName = __FILE__;\n        $lockFile = fopen($lockFileName, \"r\");\n        if ($lockFile === false) {\n            return \"Unable to create single process lock control!\";\n        }\n        if (!flock($lockFile, LOCK_EX | LOCK_NB)) {\n            // do an exclusive lock\n            return \"The upgrade process is already running.\";\n        }\n\n        // keeping the last imported version throughout the upgrade process\n        $last_db_version = $versionsArray['version'];\n        // keeping the last imported roll throughout the upgrade process\n        $last_db_roll = $versionsArray['roll'];\n\n        $first = true;\n        $errorsCount = 0;\n        $temp = 0;\n        $skipped = array();\n        $sqlVersions = array_map('basename', glob($this->newscoopDir.'/install/Resources/sql/upgrade/[2-9].[0-9]*'));\n        usort($sqlVersions, array($databaseService, 'versionCompare'));\n\n        foreach ($sqlVersions as $index => $db_version) {\n            if (-1 == $databaseService->versionCompare($db_version, $last_db_version)) {\n                continue;\n            }\n\n            $last_db_version = $db_version;\n            $last_db_roll = '';\n\n            $cur_old_roll = ''; // the roll of the running version that was imported before the upgrade ($old_roll or '')\n            if ($first) {\n                $last_db_roll = $versionsArray['roll'];\n                $cur_old_roll = $last_db_roll;\n                if (!$silent) {\n                    $db_ver_roll_info = \"$db_version\";\n                    if (!in_array($last_db_roll, array('', '.'))) {\n                        $db_ver_roll_info .= \", roll $last_db_roll\";\n                    }\n\n                    $this->logger->addNotice('* Upgrading the database from version '.$db_ver_roll_info.'...');\n                }\n                $first = false;\n            }\n            $output = array();\n\n            $upgrade_base_dir = $this->newscoopDir.\"/install/Resources/sql/upgrade/$db_version/\";\n            $rolls = $databaseService->searchDbRolls($upgrade_base_dir, $cur_old_roll);\n\n            // run upgrade scripts\n            $sql_scripts = array(\"tables.sql\", \"data-required.sql\", \"data-optional.sql\", \"tables-post.sql\");\n\n            foreach ($rolls as $upgrade_dir_roll => $upgrade_dir_path) {\n                $upgrade_dir = $upgrade_dir_path.DIRECTORY_SEPARATOR;\n                $last_db_roll = $upgrade_dir_roll;\n\n                if ($showRolls || (!$silent)) {\n                    $this->logger->addNotice('* importing database roll '.$last_db_version.' / '.$last_db_roll);\n                }\n\n                foreach ($sql_scripts as $index => $script) {\n                    if (!is_file($upgrade_dir.$script)) {\n                        continue;\n                    }\n\n                    $error_queries = array();\n                    $errorsCount = $databaseService->importDB($upgrade_dir.$script, $this->connection, $this->logger);\n                    $temp = $temp + $errorsCount;\n\n                    if ($errorsCount) {\n                        $this->logger->addError('* '.$script.' ('.$db_version.') errors');\n                    }\n                }\n\n                $saveResult = $databaseService->saveDatabaseVersion($this->connection, $last_db_version, $last_db_roll);\n\n                if ($saveResult) {\n                    $this->logger->addNotice('* version is updated to '.$last_db_version.'/'.$last_db_roll);\n                }\n            }\n        }\n\n        if (!$silent) {\n            $this->logger->addNotice('* importing database is done');\n        }\n\n        flock($lockFile, LOCK_UN); // release the lock\n        $errorsCount = $temp;\n        if ($errorsCount) {\n            return $databaseService->errorQueries;\n        }\n\n        return true;\n    }\n\n    /**\n     * Gets default alias for the first publication\n     *\n     * @return string|null alias\n     */\n    public function getDefaultAlias()\n    {\n        $alias = null;\n        $result = $this->connection->fetchAll('SELECT IdDefaultAlias as aliasId FROM Publications LIMIT 1');\n        if ($result && isset($result[0])) {\n            $aliasId = $result[0]['aliasId'];\n            $alias = $this->connection->fetchAll('SELECT Name FROM Aliases WHERE Id = '.$aliasId);\n        }\n\n        if ($alias && isset($alias[0])) {\n            return $alias[0]['Name'];\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/IssueServiceInterface.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric z.ú.\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop;\n\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Newscoop\\Entity\\Issue;\n\n/**\n * Issue service interface\n */\ninterface IssueServiceInterface\n{\n    /**\n     * Issue resolver\n     *\n     * @param Request $request Request\n     *\n     * @return Issue|void Returns current issue or nothing\n     */\n    public function issueResolver(Request $request);\n\n    /**\n     * Get issue meta data\n     *\n     * @return array Issue meta data\n     */\n    public function getIssueMetadata();\n\n    /**\n     * Get Issue object\n     *\n     * @return Newscoop\\Entity\\Issue Issue entity object\n     */\n    public function getIssue();\n\n    /**\n     * Set Issue object\n     *\n     * @param Issue $issue Issue entity object\n     */\n    public function setIssue(Issue $issue);\n\n    /**\n     * Get latest published issue from current publication\n     *\n     * @return Issue|null Returns Issue object or null\n     */\n    public function getLatestPublishedIssue();\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/ListResult.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop;\n\nuse Countable;\nuse IteratorAggregate;\nuse ArrayIterator;\n\n/**\n * Result for paginated listing, holds total count of items and items for given page.\n */\nclass ListResult implements Countable, IteratorAggregate\n{\n    /**\n     * @var int\n     */\n    public $count = 0;\n\n    /**\n     * @var Iterator\n     */\n    public $items = array();\n\n    /**\n     * @return int\n     */\n    public function count()\n    {\n        return (int) $this->count;\n    }\n\n    /**\n     * @return Iterator\n     */\n    public function getIterator()\n    {\n        return new ArrayIterator($this->items);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Log/Writer.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Log;\n\nuse DateTime,\n    Zend_Registry,\n    Zend_Log_Writer_Abstract,\n    Doctrine\\ORM\\EntityManager,\n    Newscoop\\Entity\\Log,\n    Newscoop\\Entity\\User;\n\n/**\n * Log Writer for Zend_Log\n */\nclass Writer extends Zend_Log_Writer_Abstract\n{\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em = NULL;\n\n    /** @var array */\n    private static $ipKeys = array(\n        'HTTP_X_FORWARDED_FOR',\n        'REMOTE_ADDR',\n        'SERVER_ADDR',\n    );\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager\n     */\n    public function __construct(EntityManager $em)\n    {\n        $this->em = $em;\n    }\n\n    /**\n     * Store event\n     *\n     * @param array $event\n     * @return void\n     */\n    protected function _write($event)\n    {\n        // search for ip\n        foreach (self::$ipKeys as $key) {\n            if (!empty($_SERVER[$key])) {\n                $ip = $_SERVER[$key];\n                break;\n            }\n        }\n\n        // set user if any\n        if (!isset($event['user'])) {\n            $event['user'] = null;\n            $auth = \\Zend_Auth::getInstance();\n            if ($auth->hasIdentity()) {\n                $event['user'] = $this->em->getReference('Newscoop\\Entity\\User\\Staff', $auth->getIdentity());\n            }\n        }\n\n        // create log entity\n        $log = new Log;\n        $log->setTimeCreated(new DateTime($event['timestamp']))\n            ->setText($event['message'])\n            ->setPriority($event['priority'])\n            ->setClientIP(isset($ip) ? $ip : '')\n            ->setUser($event['user']);\n\n        // store\n        $this->em->persist($log);\n        $this->em->flush();\n    }\n\n    /**\n     * Writer factory\n     *\n     * @param array|Zend_Config $config\n     * @return NULL\n     */\n    public static function factory($config)\n    {\n        return NULL;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/NewscoopException.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop;\n\nuse Exception;\n\n/**\n */\nclass NewscoopException extends Exception\n{\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Package/Article.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Package;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * @ORM\\Entity\n * @ORM\\Table(name=\"package_article\")\n */\nclass Article\n{\n    /**\n     * @ORM\\Id \n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\ManyToMany(targetEntity=\"Package\", inversedBy=\"articles\")\n     * @ORM\\JoinTable(name=\"package_article_package\")\n     * @var array\n     */\n    protected $packages;\n\n    /**\n     * @param int $id\n     */\n    public function __construct($id)\n    {\n        $this->id = (int) $id;\n        $this->packages = new \\Doctrine\\Common\\Collections\\ArrayCollection();\n    }\n\n    /**\n     * Get packages\n     *\n     * @return Doctrine\\Common\\Collections\\Collection\n     */\n    public function getPackages()\n    {\n        return $this->packages;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Package/ArticlePackage.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Package;\n\nuse Doctrine\\ORM\\Mapping as ORM;\n\n/**\n * @ORM\\Entity\n * @ORM\\Table(name=\"package_article_package\")\n */\nclass ArticlePackage\n{\n    /**\n     * @ORM\\Id()\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Article\")\n     * @ORM\\JoinColumn(name=\"article_id\", referencedColumnName=\"Number\")\n     */\n    protected $article;\n\n    /**\n     * @ORM\\Id()\n     * @ORM\\ManyToOne(targetEntity=\"Package\")\n     * @ORM\\JoinColumn(name=\"package_id\", referencedColumnName=\"id\")\n     */\n    protected $package;\n\n    /**\n     * Gets the value of article.\n     *\n     * @return mixed\n     */\n    public function getArticle()\n    {\n        return $this->article;\n    }\n\n    /**\n     * Sets the value of article.\n     *\n     * @param mixed $article the article\n     *\n     * @return self\n     */\n    public function setArticle($article)\n    {\n        $this->article = $article;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of package.\n     *\n     * @return mixed\n     */\n    public function getPackage()\n    {\n        return $this->package;\n    }\n\n    /**\n     * Sets the value of package.\n     *\n     * @param mixed $package the package\n     *\n     * @return self\n     */\n    public function setPackage($package)\n    {\n        $this->package = $package;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Package/Item.php",
    "content": "<?php\n\n/**\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Package;\n\nuse Doctrine\\ORM\\Mapping as ORM;\n\n/**\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Package\\ItemRepository\")\n * @ORM\\Table(name=\"package_item\")\n */\nclass Item\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"integer\")\n     * @ORM\\GeneratedValue\n     *\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Package\\Package\", inversedBy=\"items\", fetch=\"EAGER\")\n     *\n     * @var Newscoop\\Package\\Package\n     */\n    protected $package;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Image\\LocalImage\", inversedBy=\"items\", fetch=\"EAGER\")\n     * @ORM\\JoinColumn(referencedColumnName=\"Id\")\n     *\n     * @var Newscoop\\Image\\LocalImage\n     */\n    public $image;\n\n    /**\n     * @ORM\\Column(type=\"integer\")\n     *\n     * @var int\n     */\n    protected $offset;\n\n    /**\n     * @ORM\\Column(type=\"text\", nullable=True)\n     *\n     * @var text\n     */\n    protected $caption;\n\n    /**\n     * @ORM\\Column(nullable=True)\n     *\n     * @var string\n     */\n    protected $coords;\n\n    /**\n     * @ORM\\Column(nullable=True, name=\"video_url\")\n     *\n     * @var string\n     */\n    protected $videoUrl;\n\n    /**\n     * Item type used by Newscoop API.\n     *\n     * @var string\n     */\n    protected $type;\n\n    /**\n     * Item link used by Newscoop API.\n     *\n     * @var string\n     */\n    protected $link;\n\n    /**\n     * @param Newscoop\\Package\\Package $package\n     * @param mixed                    $item\n     */\n    public function __construct(Package $package, $item)\n    {\n        if (is_a($item, 'Newscoop\\Image\\LocalImage')) {\n            $this->image = $item;\n            $this->setCaption($item->getCaption());\n        } else {\n            $this->videoUrl = $item->getUrl();\n        }\n\n        $this->package = $package;\n        $this->offset = (int) count($this->package->getItems());\n        $this->package->getItems()->set($this->offset, $this);\n    }\n\n    /**\n     * Get id.\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Get image.\n     *\n     * @return Newscoop\\Image\\LocalImage\n     */\n    public function getImage()\n    {\n        return $this->image;\n    }\n\n    /**\n     * Set offset.\n     *\n     * @param int $offset\n     */\n    public function setOffset($offset)\n    {\n        $this->offset = (int) $offset;\n    }\n\n    /**\n     * Get offset.\n     *\n     * @param int $offset\n     */\n    public function getOffset()\n    {\n        return $this->offset;\n    }\n\n    /**\n     * Get rendition.\n     *\n     * @return Newscoop\\Image\\Rendition\n     */\n    public function getRendition()\n    {\n        $rendition = $this->package->getRendition();\n        $rendition->setCoords($this->coords);\n\n        return $rendition;\n    }\n\n    /**\n     * Set caption.\n     *\n     * @param string $caption\n     */\n    public function setCaption($caption)\n    {\n        $this->caption = (string) $caption;\n    }\n\n    /**\n     * Get caption.\n     *\n     * @return string\n     */\n    public function getCaption()\n    {\n        return $this->caption;\n    }\n\n    /**\n     * Set crop coordinates.\n     *\n     * @param string $coords\n     */\n    public function setCoords($coords)\n    {\n        $this->coords = (string) $coords;\n    }\n\n    /**\n     * Test if item is video.\n     *\n     * @return bool\n     */\n    public function isVideo()\n    {\n        return $this->videoUrl !== null;\n    }\n\n    /**\n     * Test if item is image.\n     *\n     * @return bool\n     */\n    public function isImage()\n    {\n        return !$this->isVideo();\n    }\n\n    /**\n     * Set video url.\n     *\n     * @param string $url\n     */\n    public function setVideoUrl($url)\n    {\n        $this->videoUrl = (string) $url;\n    }\n\n    /**\n     * Get video url.\n     *\n     * @return string\n     */\n    public function getVideoUrl()\n    {\n        return $this->videoUrl;\n    }\n\n    /**\n     * Get package items.\n     *\n     * @return array\n     */\n    public function getPackageItems()\n    {\n        return $this->package->getItems();\n    }\n\n    /**\n     * Get image specs.\n     *\n     * @return string\n     */\n    public function getImageSpecs()\n    {\n        return trim($this->package->getRendition()->getSpecs().'_'.$this->coords, '_');\n    }\n\n    /**\n     * Get package id.\n     *\n     * @return int\n     */\n    public function getPackageId()\n    {\n        return $this->package->getId();\n    }\n\n    /**\n     * Get package.\n     *\n     * @return int\n     */\n    public function getPackage()\n    {\n        return $this->package;\n    }\n\n    /**\n     * Set Item type.\n     *\n     * @param string $type \"video\" or \"image\"\n     */\n    public function setType($type)\n    {\n        $this->type = $type;\n    }\n\n    /**\n     * Get Item type.\n     *\n     * @return string \"video\" or \"image\"\n     */\n    public function getType()\n    {\n        if ($this->videoUrl) {\n            return 'video';\n        } elseif ($this->image) {\n            return 'image';\n        }\n\n        return;\n    }\n\n    /**\n     * Set link for Item resource.\n     *\n     * @param string $link Link to resource\n     */\n    public function setLink($link)\n    {\n        $this->link = $link;\n    }\n\n    /**\n     * Get link for Item resource.\n     *\n     * @return string $link Link to resource\n     */\n    public function getLink()\n    {\n        return $this->link;\n    }\n\n    /**\n     * Get clone of itself - for serializer.\n     *\n     * @return self\n     */\n    public function getItem()\n    {\n        return clone $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Package/ItemRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Package;\n\nuse \\Doctrine\\ORM\\EntityRepository;\nuse Newscoop\\Criteria\\SlideshowItemCriteria;\n\n/**\n * Item repository\n */\nclass ItemRepository extends EntityRepository\n{\n    public function getAllForPackage($id)\n    {\n        $em = $this->getEntityManager();\n\n        $queryBuilder = $em->getRepository('Newscoop\\Package\\Item')\n            ->createQueryBuilder('i')\n            ->select('i, ii')\n            ->leftJoin('i.image', 'ii')\n            ->where('i.package = :package')\n            ->setParameter('package', $id);\n\n        $query = $queryBuilder->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Get list for given criteria\n     *\n     * @param Newscoop\\Criteria\\SlideshowItemCriteria $criteria\n     *\n     * @return Newscoop\\ListResult\n     */\n    public function getListByCriteria(SlideshowItemCriteria $criteria)\n    {\n        $qb = $this->createQueryBuilder('i');\n        $qb->select('i, ii, p')\n            ->leftJoin('i.image', 'ii')\n            ->leftJoin('i.package', 'p');\n\n        if ($criteria->slideshow) {\n            $qb->andWhere('i.package '.$criteria->perametersOperators['slideshow'].' :package')\n                ->setParameter('package', $criteria->slideshow);\n\n            unset($criteria->perametersOperators['slideshow']);\n        }\n\n        if ($criteria->type) {\n            if ($criteria->type == 'image' && $criteria->perametersOperators['type'] == '=') {\n                $qb->andWhere('i.videoUrl IS NULL');\n            } elseif ($criteria->type == 'video' && $criteria->perametersOperators['type'] == '=') {\n                $qb->andWhere('i.videoUrl IS NOT NULL');\n            }\n\n            unset($criteria->perametersOperators['type']);\n        }\n\n        foreach ($criteria->perametersOperators as $key => $operator) {\n            if ($criteria->$key !== null) {\n                $qb->andWhere('i.'.$key.' '.$operator.' :'.$key)\n                    ->setParameter($key, $criteria->$key);\n            }\n        }\n\n        $metadata = $this->getClassMetadata();\n        foreach ($criteria->orderBy as $key => $order) {\n            if (array_key_exists($key, $metadata->columnNames)) {\n                $key = 'i.' . $key;\n            }\n\n            $qb->orderBy($key, $order);\n        }\n        $query = $qb->getQuery();\n\n        return $query;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Package/Package.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Package;\n\nuse Newscoop\\Image\\ImageInterface;\nuse Newscoop\\Image\\Rendition;\nuse Doctrine\\ORM\\Mapping as ORM;\nuse Newscoop\\View\\PackageView;\n\n/**\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Package\\PackageRepository\")\n * @ORM\\Table(name=\"package\")\n */\nclass Package\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"integer\")\n     * @ORM\\GeneratedValue\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column\n     * @var string\n     */\n    protected $headline;\n\n    /**\n     * @ORM\\Column(type=\"text\", nullable=True)\n     * @var string\n     */\n    protected $description;\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"Newscoop\\Package\\Item\", mappedBy=\"package\", cascade={\"remove\"})\n     * @ORM\\OrderBy({\"offset\"=\"ASC\"})\n     * @return Doctrine\\Common\\Collections\\Collection\n     */\n    protected $items;\n\n    /**\n     * Items link used by Newscoop API\n     * @var string\n     */\n    protected $itemsLink;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Image\\Rendition\")\n     * @ORM\\JoinColumn(referencedColumnName=\"name\")\n     * @var Newscoop\\Image\\Rendition\n     */\n    protected $rendition;\n\n    /**\n     * @ORM\\Column(nullable=True)\n     * @var string\n     */\n    protected $slug;\n\n    /**\n     * @var int\n     */\n    protected $itemsCount;\n\n    /**\n     * @ORM\\ManyToMany(targetEntity=\"Newscoop\\Entity\\Article\", mappedBy=\"packages\", cascade={\"remove\"})\n     * @var array\n     */\n    protected $articles;\n\n    /**\n     */\n    public function __construct()\n    {\n        $this->items = new \\Doctrine\\Common\\Collections\\ArrayCollection();\n        $this->articles = new \\Doctrine\\Common\\Collections\\ArrayCollection();\n    }\n\n    /**\n     * @return string\n     */\n    public function __toString()\n    {\n        return sprintf('#%d', $this->id);\n    }\n\n    /**\n     * Get id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Set headline\n     *\n     * @param string $headline\n     * @return void\n     */\n    public function setHeadline($headline)\n    {\n        $this->headline = (string) $headline;\n    }\n\n    /**\n     * Get headline\n     *\n     * @return string\n     */\n    public function getHeadline()\n    {\n        return $this->headline;\n    }\n\n    /**\n     * Get description\n     *\n     * @return string\n     */\n    public function getDescription()\n    {\n        return $this->description;\n    }\n\n    /**\n     * Get items\n     *\n     * @return Doctrine\\Common\\Collections\\Collection\n     */\n    public function getItems()\n    {\n        $rendition = $this->rendition;\n\n        return $this->items->filter(\n            function($item) use ($rendition) {\n               if (null !== $item->image && $item->image instanceof ImageInterface) {\n                   return $rendition->fits($item->image);\n               }\n            }\n        );\n    }\n\n    /**\n     * Set items link used by Newscoop API\n     * @param string $link Uri to Items resource\n     */\n    public function setItemsLink($link)\n    {\n        $this->itemsLink = $link;\n\n        return $this;\n    }\n\n    /**\n     * Get items link used by Newscoop API\n     * @return string $link Uri to Items resource\n     */\n    public function getItemsLink()\n    {\n        return $this->itemsLink;\n    }\n\n    /**\n     * Set rendition\n     *\n     * @param Newscoop\\Image\\Rendition $rendition\n     * @return void\n     */\n    public function setRendition(Rendition $rendition)\n    {\n        $this->rendition = $rendition;\n    }\n\n    /**\n     * Get rendition\n     *\n     * @return Newscoop\\Image\\Rendition\n     */\n    public function getRendition()\n    {\n        return $this->rendition;\n    }\n\n    /**\n     * Get previous item\n     *\n     * @param Newscoop\\Package\\Item $currentItem\n     * @return Newscoop\\Package\\Item\n     */\n    public function getPrev(Item $currentItem)\n    {\n        $prev = null;\n        foreach ($this->items as $item) {\n            if ($item === $currentItem) {\n                return $prev;\n            }\n\n            $prev = $item;\n        }\n    }\n\n    /**\n     * Get next item\n     *\n     * @param Newscoop\\Package\\Item $currentItem\n     * @return Newscoop\\Package\\Item\n     */\n    public function getNext(Item $currentItem)\n    {\n        $iterator = $this->items->getIterator();\n        foreach ($iterator as $item) {\n            if ($item === $currentItem) {\n                $iterator->next();\n                return $iterator->valid() ? $iterator->current() : null;\n            }\n        }\n    }\n\n    /**\n     * Set slug\n     *\n     * @param string $slug\n     * @return void\n     */\n    public function setSlug($slug)\n    {\n        $this->slug = empty($slug) ? null : (string) $slug;\n    }\n\n    /**\n     * Get slug\n     *\n     * @return string\n     */\n    public function getSlug()\n    {\n        return $this->slug;\n    }\n\n    /**\n     * Set items count\n     *\n     * @param int $count\n     * @return void\n     */\n    public function setItemsCount($count)\n    {\n        $this->itemsCount = (int) $count;\n    }\n\n    /**\n     * Get items count\n     *\n     * @return int\n     */\n    public function getItemsCount()\n    {\n        return $this->itemsCount !== null ? $this->itemsCount : count($this->items);\n    }\n\n    /**\n     * Get view\n     *\n     * @return Newscoop\\View\\AuthorView\n     */\n    public function getView()\n    {\n        return new PackageView(array(\n            'id' => $this->getId()\n        ));\n    }\n\n    /**\n     * Gets the value of articles.\n     *\n     * @return array\n     */\n    public function getArticles()\n    {\n        return $this->articles;\n    }\n\n    /**\n     * Sets the value of articles.\n     *\n     * @param array $articles the articles\n     *\n     * @return self\n     */\n    public function setArticles(array $articles)\n    {\n        $this->articles = $articles;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Package/PackageRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Package;\n\nuse Newscoop\\Criteria\\SlideshowCriteria;\n\n/**\n * Package repository\n */\nclass PackageRepository extends \\Doctrine\\ORM\\EntityRepository\n{\n    /**\n     * Find packages by a set of criteria\n     *\n     * @param array $criteria\n     * @param array $orderBy\n     * @param int   $limit\n     * @param int   $offset\n     */\n    public function findBy(array $criteria, array $orderBy = null, $limit = null, $offset = null)\n    {\n        $queryBuilder = $this->createQueryBuilder('p')\n            ->select('p, COUNT(i)')\n            ->leftJoin('p.items', 'i')\n            ->groupBy('p.id');\n\n        $this->setCriteria($queryBuilder, $criteria);\n\n        if (!empty($orderBy)) {\n            foreach ($orderBy as $sort => $order) {\n                $queryBuilder->orderBy(\"p.{$sort}\", $order);\n            }\n        }\n\n        $queryBuilder->setFirstResult($offset);\n        $queryBuilder->setMaxResults($limit);\n\n        $packages = array();\n        foreach ($queryBuilder->getQuery()->getResult() as $row) {\n            $package = $row[0];\n            $package->setItemsCount($row[1]);\n            $packages[] = $package;\n        }\n\n        return $packages;\n    }\n\n    /**\n     * Get list for given criteria\n     *\n     * @param Newscoop\\Criteria\\SlideshowCriteria $criteria\n     *\n     * @return Newscoop\\ListResult\n     */\n    public function getListByCriteria(SlideshowCriteria $criteria)\n    {\n        $qb = $this->createQueryBuilder('p');\n        $qb->select('p, i, ii')\n            ->leftJoin('p.items', 'i')\n            ->leftJoin('i.image', 'ii');\n\n        $fetchResult = false;\n        $qbArticles = $this->_em->getRepository('Newscoop\\Package\\ArticlePackage')\n            ->createQueryBuilder('ap')\n            ->select('ap', 'a')\n            ->leftJoin('ap.article', 'a');\n\n        if ($criteria->publication) {\n            $qbArticles\n                ->andWhere('a.publication = :publication')\n                ->setParameter('publication', $criteria->publication);\n            $criteria->publication = null;\n            $fetchResult = true;\n        }\n\n        if ($criteria->issue) {\n            $qbArticles\n                ->andWhere('a.issue = :issue')\n                ->setParameter('issue', $criteria->issue);\n            $criteria->issue = null;\n            $fetchResult = true;\n        }\n\n        if ($criteria->articleNumber && $criteria->articleLanguage) {\n            $qbArticles\n                ->andWhere('ap.article = :article')\n                ->andWhere('a.language = :language')\n                ->setParameters(array(\n                    'article' => $criteria->articleNumber,\n                    'language' => $criteria->articleLanguage,\n                ));\n\n            $fetchResult = true;\n        }\n\n        if ($fetchResult) {\n            $articlePackages = $qbArticles->getQuery()->getArrayResult();\n            $packagesIds = array();\n            foreach ($articlePackages as $package) {\n                $packagesIds[] = $package['package_id'];\n            }\n\n            $qb->andWhere('p.id IN (:packagesIds)')\n                    ->setParameter('packagesIds', $packagesIds);\n        }\n\n        foreach ($criteria->perametersOperators as $key => $operator) {\n            if ($criteria->$key !== null) {\n                $qb->andWhere('p.'.$key.' '.$operator.' :'.$key)\n                    ->setParameter($key, $criteria->$key);\n            }\n        }\n\n        $metadata = $this->getClassMetadata();\n        foreach ($criteria->orderBy as $key => $order) {\n            if (array_key_exists($key, $metadata->columnNames)) {\n                $key = 'p.'.$key;\n            }\n\n            $qb->orderBy($key, $order);\n        }\n\n        $query = $qb->getQuery();\n\n        return $query;\n    }\n\n    /**\n     * Get count of packages by a set of criteria\n     *\n     * @param  array $criteria\n     * @return int\n     */\n    public function getCountBy(array $criteria)\n    {\n        $queryBuilder = $this->createQueryBuilder('p')\n            ->select('COUNT(p)');\n\n        $this->setCriteria($queryBuilder, $criteria);\n\n        return (int) $queryBuilder->getQuery()->getSingleScalarResult();\n    }\n\n    /**\n     * Find available for article\n     *\n     * @param  Newscoop\\Package\\Article $article\n     * @return array\n     */\n    public function findAvailableForArticle(Article $article)\n    {\n        $queryBuilder = $this->createQueryBuilder('p');\n        $attachedIds = array_map(function ($package) { return $package->getId(); }, $article->getPackages()->toArray());\n        if (!empty($attachedIds)) {\n            $queryBuilder->where($queryBuilder->expr()->notIn('p.id', implode(', ', $attachedIds)));\n        }\n        $queryBuilder->orderBy('p.id', 'desc');\n\n        return $queryBuilder->getQuery()->getResult();\n    }\n\n    /**\n     * Set criteria for query builder\n     *\n     * @param  Doctrine\\ORM\\QueryBuilder $queryBuilder\n     * @param  array                     $criteria\n     * @return void\n     */\n    private function setCriteria(\\Doctrine\\ORM\\QueryBuilder $queryBuilder, array $criteria)\n    {\n        foreach ($criteria as $property => $value) {\n            $queryBuilder->andWhere(sprintf('p.%s = :%s', $property, $property));\n            $queryBuilder->setParameter($property, $value);\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Package/PackageSearchService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Package;\n\n/**\n * Package Search Service\n */\nclass PackageSearchService\n{\n    /**\n     * @var Doctrine\\ORM\\EntityManager\n     */\n    protected $orm;\n\n    /**\n     * @var Doctrine\\ORM\\EntityRepository\n     */\n    protected $repository;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $orm\n     */\n    public function __construct(\\Doctrine\\ORM\\EntityManager $orm)\n    {\n        $this->orm = $orm;\n        $this->repository = $this->orm->getRepository('Newscoop\\Package\\Package');\n    }\n\n    /**\n     * Perform a query\n     *\n     * @param string $query\n     * @return array\n     */\n    public function find($query)\n    {\n        $qb = $this->repository->createQueryBuilder('p');\n\n        $tokens = explode(' ', trim($query));\n        foreach ($tokens as $p => $token) {\n            $qb->orWhere($qb->expr()->like('p.headline', $qb->expr()->literal(\"%{$token}%\")));\n        }\n\n        return $qb->getQuery()->getResult();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Package/PackageService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Package;\n\n/**\n * Package Service\n */\nclass PackageService\n{\n    const CODE_UNIQUE_SLUG = 1;\n\n    /**\n     * @var Doctrine\\ORM\\EntityManager\n     */\n    protected $orm;\n\n    /**\n     * @var Doctrine\\ORM\\EntityRepository\n     */\n    protected $repository;\n\n    /**\n     * @var Newscoop\\Image\\ImageService\n     */\n    protected $imageService;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $orm\n     */\n    public function __construct(\\Doctrine\\ORM\\EntityManager $orm, \\Newscoop\\Image\\ImageService $imageService)\n    {\n        $this->orm = $orm;\n        $this->repository = $this->orm->getRepository('Newscoop\\Package\\Package');\n        $this->imageService = $imageService;\n    }\n\n    /**\n     * Find package\n     *\n     * @param  int                      $id\n     * @return Newscoop\\Package\\Package\n     */\n    public function find($id)\n    {\n        return $this->repository->find($id);\n    }\n\n    /**\n     * Find packages by article\n     *\n     * @param  int   $articleNumber\n     * @return array\n     */\n    public function findByArticle($articleNumber)\n    {\n        $article = $this->getArticle($articleNumber);\n\n        return $article->getPackages()->toArray();\n    }\n\n    /**\n     * Save package\n     *\n     * @param  array                    $values\n     * @param  Newscoop\\Package\\Package $package\n     * @return Newscoop\\Package\\Package\n     */\n    public function save(array $values, Package $package = null)\n    {\n        if ($package === null) {\n            $package = new Package();\n            $this->orm->persist($package);\n        }\n\n        if (array_key_exists('headline', $values)) {\n            $package->setHeadline($values['headline']);\n        }\n\n        if (array_key_exists('rendition', $values)) {\n            $package->setRendition($values['rendition']);\n        }\n\n        if (array_key_exists('slug', $values)) {\n            $package->setSlug($values['slug']);\n        }\n\n        try {\n            $this->orm->flush($package);\n\n            return $package;\n        } catch (\\PDOException $e) {\n            if (strpos($e->getMessage(), 'slug is not unique') !== false) {\n                throw new \\InvalidArgumentException(\"Slug is not unique\", self::CODE_UNIQUE_SLUG);\n            }\n\n            throw $e;\n        }\n    }\n\n    /**\n     * Add package item\n     *\n     * @param  Newscoop\\Package\\Package $package\n     * @param  mixed                    $item\n     * @param  int                      $offset\n     * @return Newscoop\\Package\\Item\n     */\n    public function addItem(Package $package, $item)\n    {\n        if (is_a($item, 'Newscoop\\Image\\LocalImage') && !$this->orm->contains($item)) {\n            $this->orm->persist($item);\n            $this->orm->flush($item);\n        }\n\n        if ($package->getRendition() !== null && is_a($item, 'Newscoop\\Image\\LocalImage') && !$package->getRendition()->fits($item)) {\n            throw new \\InvalidArgumentException(\"Image too small.\");\n        }\n\n        $packageItem = new Item($package, $item);\n        $this->orm->persist($packageItem);\n        $this->orm->flush();\n\n        $this->orm->refresh($package);\n        $offset = 0;\n        foreach ($package->getItems() as $item) {\n            $item->setOffset($offset);\n            $offset++;\n        }\n        $this->orm->flush();\n\n        return $packageItem;\n    }\n\n    /**\n     * Set order of items for given package\n     *\n     * @param  Newscoop\\Package\\Package $package\n     * @param  array                    $order\n     * @return void\n     */\n    public function setOrder(Package $package, $order)\n    {\n        $items = array();\n        foreach ($package->getItems() as $item) {\n            $offset = array_search('item-'.$item->getId(), $order);\n            $item->setOffset($offset);\n        }\n\n        $this->orm->flush();\n    }\n\n    /**\n     * Remove item from package\n     *\n     * @param  Newscoop\\Package\\Package $package\n     * @param  int                      $itemId\n     * @return void\n     */\n    public function removeItem(Package $package, $itemId)\n    {\n        foreach ($package->getItems() as $item) {\n            if ($item->getId() === (int) $itemId) {\n                for ($i = $item->getOffset() + 1; $i < count($package->getItems()); $i++) {\n                    $package->getItems()->set($i - 1, $package->getItems()->get($i));\n                    $package->getItems()->get($i - 1)->setOffset($i - 1);\n                }\n\n                $package->getItems()->remove(count($package->getItems()) - 1);\n                $this->orm->remove($item);\n                $this->orm->flush();\n\n                return;\n            }\n        }\n    }\n\n    /**\n     * Find item by given id\n     *\n     * @param  int                   $id\n     * @return Newscoop\\Package\\Item\n     */\n    public function findItem($id)\n    {\n        return $this->orm->getRepository('Newscoop\\Package\\Item')->find($id);\n    }\n\n    /**\n     * Save item\n     *\n     * @param  array                 $values\n     * @param  Newscoop\\Package\\Item $item\n     * @return void\n     */\n    public function saveItem(array $values, Item $item)\n    {\n        if (array_key_exists('caption', $values)) {\n            $item->setCaption($values['caption']);\n        }\n\n        if (array_key_exists('coords', $values)) {\n            $item->setCoords($values['coords']);\n        }\n\n        if (!empty($values['url'])) {\n            $item->setVideoUrl($values['url']);\n        }\n\n        $this->orm->flush($item);\n    }\n\n    /**\n     * Find package by slug\n     *\n     * @param  string                   $slug\n     * @return Newscoop\\Package\\Package\n     */\n    public function findBySlug($slug)\n    {\n        return $this->repository->findOneBy(array(\n            'slug' => $slug,\n        ));\n    }\n\n    /**\n     * Find package by a set of criteria\n     *\n     * @param  array $criteria\n     * @param  array $orderBy\n     * @param  int   $limit\n     * @param  int   $offset\n     * @return array\n     */\n    public function findBy(array $criteria, array $orderBy = array(), $limit = 25, $offset = 0)\n    {\n        return $this->repository->findBy($criteria, $orderBy, $limit, $offset);\n    }\n\n    /**\n     * Get count by a set of criteria\n     *\n     * @param  array $criteria\n     * @return int\n     */\n    public function getCountBy(array $criteria = array())\n    {\n        return (int) $this->repository->getCountBy($criteria);\n    }\n\n    /**\n     * Save article packages\n     *\n     * @param  array $articleArray\n     * @return void\n     */\n    public function saveArticle(array $articleArray)\n    {\n        $article = $this->getArticle($articleArray['id']);\n        $article->getPackages()->clear();\n        foreach ($articleArray['slideshows'] as $slideshow) {\n            $package = $this->orm->find('Newscoop\\Package\\Package', $slideshow['id']);\n            $article->getPackages()->add($package);\n        }\n\n        $this->orm->flush();\n    }\n\n    /**\n     * Remove package from article\n     *\n     * @param  Newscoop\\Package\\Package $package\n     * @param  int                      $articleNumber\n     * @return void\n     */\n    public function removeFromArticle(Package $package, $articleNumber)\n    {\n        $article = $this->getArticle($articleNumber);\n        $article->getPackages()->removeElement($package);\n        $this->orm->flush($article);\n    }\n\n    /**\n     * Find packages not attached to article\n     *\n     * @param  int   $articleNumber\n     * @return array\n     */\n    public function findAvailableForArticle($articleNumber)\n    {\n        $article = $this->getArticle($articleNumber);\n\n        return $this->orm->getRepository('Newscoop\\Package\\Package')->findAvailableForArticle($article);\n    }\n\n    /**\n     * Delete package\n     *\n     * @param  int  $id\n     * @return void\n     */\n    public function delete($id)\n    {\n        $package = $this->orm->getRepository('Newscoop\\Package\\Package')->find($id);\n        $this->orm->remove($package);\n        $this->orm->flush();\n    }\n\n    /**\n     * Get article entity\n     *\n     * @param  int                      $articleNumber\n     * @return Newscoop\\Package\\Article\n     */\n    private function getArticle($articleNumber)\n    {\n        try {\n            $article = $this->orm->getRepository('Newscoop\\Package\\Article')\n                ->findOneBy(array('id' => $articleNumber));\n        } catch (\\Exception $e) {\n            if ($e->getCode() === '42S02') {\n                $schemaTool = new \\Doctrine\\ORM\\Tools\\SchemaTool($this->orm);\n                try {\n                    $schemaTool->createSchema(array(\n                        $this->orm->getClassMetadata('Newscoop\\Package\\Article'),\n                    ));\n                } catch (\\Exception $e) {\n                }\n                $article = null;\n            } else {\n                throw $e;\n            }\n        }\n\n        if ($article === null) {\n            $article = new Article($articleNumber);\n            $this->orm->persist($article);\n            $this->orm->flush($article);\n        }\n\n        return $article;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Package/RemoteVideo.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Package;\n\n/**\n * Remote video\n */\nclass RemoteVideo\n{\n    /**\n     * @var string\n     */\n    protected $url;\n\n    /**\n     * @param string $url\n     */\n    public function __construct($url)\n    {\n        $this->url = (string) $url;\n    }\n\n    /**\n     * Get url\n     *\n     * @return string\n     */\n    public function getUrl()\n    {\n        return $this->url;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/PaginatedCollection.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop;\n\nuse IteratorAggregate;\nuse ArrayIterator;\nuse Doctrine\\ORM\\AbstractQuery;\n\n/**\n */\nclass PaginatedCollection implements IteratorAggregate\n{\n    /**\n     * @var int\n     */\n    public $prevPageOffset;\n\n    /**\n     * @var int\n     */\n    public $nextPageOffset;\n\n    /**\n     * @var int\n     */\n    public $currentPageOffset;\n\n    /**\n     * @var Traversable\n     */\n    protected $result;\n\n    /**\n     * @param Doctrine\\ORM\\AbstractQuery $query\n     */\n    public function __construct(AbstractQuery $query)\n    {\n        $this->result = $query->setMaxResults($query->getMaxResults() + 1)->getResult();\n        $this->prevPageOffset = $query->getFirstResult() ? max(0, $query->getFirstResult() - $query->getMaxResults() + 1) : null;\n        $this->nextPageOffset = count($this->result) === $query->getMaxResults() ? $query->getMaxResults() + $query->getFirstResult() - 1 : null;\n        $this->currentPageOffset = $query->getFirstResult();\n        if ($this->nextPageOffset) {\n            array_pop($this->result);\n        }\n    }\n\n    /**\n     * Get iterator\n     */\n    public function getIterator()\n    {\n        return new ArrayIterator($this->result);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Persistence/ObjectRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Persistence;\n\n/**\n */\ninterface ObjectRepository extends \\Doctrine\\Common\\Persistence\\ObjectRepository\n{\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Query/MysqlDateFormat.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Query;\n\nuse \\Doctrine\\ORM\\Query\\AST\\Functions\\FunctionNode,\n    \\Doctrine\\ORM\\Query\\Parser,\n    \\Doctrine\\ORM\\Query\\Lexer,\n    \\Doctrine\\ORM\\Query\\SqlWalker;\n\n/**\n * Date_Format ::= \"DATE_FORMAT\" \"(\" ArithmeticPrimary \",\" StringPrimary \")\"\n */\nclass MysqlDateFormat extends FunctionNode\n{\n    public $dateExpression = null;\n    public $formatExpression = null;\n\n    public function parse(Parser $parser)\n    {\n        $parser->match(Lexer::T_IDENTIFIER);\n        $parser->match(Lexer::T_OPEN_PARENTHESIS);\n        $this->dateExpression = $parser->ArithmeticPrimary();\n        $parser->match(Lexer::T_COMMA);\n        $this->formatExpression = $parser->StringPrimary();\n        $parser->match(Lexer::T_CLOSE_PARENTHESIS);\n    }\n\n    public function getSql(SqlWalker $sqlWalker)\n    {\n        //return 'DATE_FORMAT(' . $sqlWalker->walkArithmeticExpression($this->dateExpression) . ',' . $sqlWalker->walkStringPrimary($this->formatExpression) . ')';\n        return 'DATE_FORMAT(' . $this->dateExpression->dispatch($sqlWalker) . ',' . $this->formatExpression->dispatch($sqlWalker) . ')';\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Query/MysqlDayOfMonth.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Query;\n\nuse \\Doctrine\\ORM\\Query\\AST\\Functions\\FunctionNode,\n    \\Doctrine\\ORM\\Query\\Parser,\n    \\Doctrine\\ORM\\Query\\Lexer,\n    \\Doctrine\\ORM\\Query\\SqlWalker;\n\n/**\n * DayOfMonth ::= \"DAYOFMONTH\" \"(\" ArithmeticPrimary \")\"\n */\nclass MysqlDayOfMonth extends FunctionNode\n{\n    public $dateExpression = null;\n\n    public function parse(Parser $parser)\n    {\n        $parser->match(Lexer::T_IDENTIFIER);\n        $parser->match(Lexer::T_OPEN_PARENTHESIS);\n        $this->dateExpression = $parser->ArithmeticPrimary();\n        $parser->match(Lexer::T_CLOSE_PARENTHESIS);\n    }\n\n    public function getSql(SqlWalker $sqlWalker)\n    {\n        return 'DAYOFMONTH(' . $this->dateExpression->dispatch($sqlWalker) . ')';\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Query/MysqlDayOfWeek.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Query;\n\nuse \\Doctrine\\ORM\\Query\\AST\\Functions\\FunctionNode,\n    \\Doctrine\\ORM\\Query\\Parser,\n    \\Doctrine\\ORM\\Query\\Lexer,\n    \\Doctrine\\ORM\\Query\\SqlWalker;\n\n/**\n * DayOfWeek ::= \"DAYOFWEEK\" \"(\" ArithmeticPrimary \")\"\n */\nclass MysqlDayOfWeek extends FunctionNode\n{\n    public $dateExpression = null;\n\n    public function parse(Parser $parser)\n    {\n        $parser->match(Lexer::T_IDENTIFIER);\n        $parser->match(Lexer::T_OPEN_PARENTHESIS);\n        $this->dateExpression = $parser->ArithmeticPrimary();\n        $parser->match(Lexer::T_CLOSE_PARENTHESIS);\n    }\n\n    public function getSql(SqlWalker $sqlWalker)\n    {\n        return 'DAYOFWEEK(' . $this->dateExpression->dispatch($sqlWalker) . ')';\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Query/MysqlDayOfYear.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Query;\n\nuse \\Doctrine\\ORM\\Query\\AST\\Functions\\FunctionNode,\n    \\Doctrine\\ORM\\Query\\Parser,\n    \\Doctrine\\ORM\\Query\\Lexer,\n    \\Doctrine\\ORM\\Query\\SqlWalker;\n\n/**\n * DayOfMonth ::= \"DAYOFYEAR\" \"(\" ArithmeticPrimary \")\"\n */\nclass MysqlDayOfYear extends FunctionNode\n{\n    public $dateExpression = null;\n\n    public function parse(Parser $parser)\n    {\n        $parser->match(Lexer::T_IDENTIFIER);\n        $parser->match(Lexer::T_OPEN_PARENTHESIS);\n        $this->dateExpression = $parser->ArithmeticPrimary();\n        $parser->match(Lexer::T_CLOSE_PARENTHESIS);\n    }\n\n    public function getSql(SqlWalker $sqlWalker)\n    {\n        return 'DAYOFYEAR(' . $this->dateExpression->dispatch($sqlWalker) . ')';\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Query/MysqlField.php",
    "content": "<?php\n\n/**\n * DoctrineExtensions Mysql Function Pack\n *\n * LICENSE\n *\n * This source file is subject to the new BSD license that is bundled\n * with this package in the file LICENSE.txt.\n * If you did not receive a copy of the license and are unable to\n * obtain it through the world-wide-web, please send an email\n * to kontakt@beberlei.de so I can send you a copy immediately.\n */\n\nnamespace Newscoop\\Query;\n\nuse Doctrine\\ORM\\Query\\AST\\Functions\\FunctionNode,\n    Doctrine\\ORM\\Query\\Lexer;\n\n/**\n * Usage: FIELD(str,str1,str2,str3,...)\n *\n * FIELD returns the index (position) of str in the str1, str2, str3, ... list.\n * Returns 0 if str is not found. If all arguments to FIELD() are strings, all\n * arguments are compared as strings. If all arguments are numbers, they are\n * compared as numbers. Otherwise, the arguments are compared as double.\n * If str is NULL, the return value is 0 because NULL fails equality comparison\n * with any value. FIELD() is the complement of ELT(). (Taken from MySQL\n * documentation.)\n *\n * @author  Jeremy Hicks <jeremy.hicks@gmail.com>\n * @version 2011.06.09\n */\n\nclass MysqlField extends FunctionNode\n{\n    private $field = null;\n    private $values = array();\n\n    public function parse(\\Doctrine\\ORM\\Query\\Parser $parser)\n    {\n        $parser->match(Lexer::T_IDENTIFIER);\n        $parser->match(Lexer::T_OPEN_PARENTHESIS);\n\n        // Do the field.\n        $this->field = $parser->ArithmeticPrimary();\n\n        // Add the strings to the values array. FIELD must\n        // be used with at least 1 string not including the field.\n\n        $lexer = $parser->getLexer();\n\n        while (count($this->values) < 1 ||\n            $lexer->lookahead['type'] != Lexer::T_CLOSE_PARENTHESIS) {\n            $parser->match(Lexer::T_COMMA);\n            $this->values[] = $parser->ArithmeticPrimary();\n        }\n\n        $parser->match(Lexer::T_CLOSE_PARENTHESIS);\n    }\n\n    public function getSql(\\Doctrine\\ORM\\Query\\SqlWalker $sqlWalker)\n    {\n        $query = 'FIELD(';\n\n        $query .= $this->field->dispatch($sqlWalker);\n\n        $query .= ',';\n\n        for ($i = 0; $i < count($this->values); $i++) {\n            if ($i > 0) {\n                $query .= ',';\n            }\n\n            $query .= $this->values[$i]->dispatch($sqlWalker);\n        }\n\n        $query .= ')';\n\n        return $query;\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Query/MysqlRandom.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Query;\n\nuse \\Doctrine\\ORM\\Query\\AST\\Functions\\FunctionNode,\n    \\Doctrine\\ORM\\Query\\Parser,\n    \\Doctrine\\ORM\\Query\\Lexer,\n    \\Doctrine\\ORM\\Query\\SqlWalker;\n\n/**\n * \"RAND\" \"(\" \")\"\n */\nclass MysqlRandom extends FunctionNode\n{\n    /**\n     * Parser function\n     */\n    public function parse(Parser $parser)\n    {\n        $parser->match(Lexer::T_IDENTIFIER);\n        $parser->match(Lexer::T_OPEN_PARENTHESIS);\n        $parser->match(Lexer::T_CLOSE_PARENTHESIS);\n    }\n\n    /**\n     * Get sql\n     */\n    public function getSql(SqlWalker $sqlWalker)\n    {\n        return 'RAND()';\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Query/SqliteRandom.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Query;\n\nuse \\Doctrine\\ORM\\Query\\AST\\Functions\\FunctionNode,\n    \\Doctrine\\ORM\\Query\\Parser,\n    \\Doctrine\\ORM\\Query\\Lexer,\n    \\Doctrine\\ORM\\Query\\SqlWalker;\n\n/**\n * \"RAND\" \"(\" \")\"\n */\nclass SqliteRandom extends FunctionNode\n{\n    /**\n     * Parser function\n     */\n    public function parse(Parser $parser)\n    {\n        $parser->match(Lexer::T_IDENTIFIER);\n        $parser->match(Lexer::T_OPEN_PARENTHESIS);\n        $parser->match(Lexer::T_CLOSE_PARENTHESIS);\n    }\n\n    /**\n     * Get sql\n     */\n    public function getSql(SqlWalker $sqlWalker)\n    {\n        return 'random()';\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Random.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop;\n\n/**\n * Random\n */\nclass Random\n{\n    /**\n     * @var array\n     */\n    protected $chars = array();\n\n    /**\n     * @var int\n     */\n    protected $chars_count;\n\n    /**\n     */\n    public function __construct()\n    {\n        $this->chars = array_merge(range(0, 9), range('a', 'z'));\n        $this->chars_count = count($this->chars);\n    }\n\n    /**\n     * Generate random string\n     *\n     * @param int $length\n     * @return string\n     */\n    public function getRandomString($length)\n    {\n        if (empty($length)) {\n            throw new \\InvalidArgumentException(\"Length can't be empty.\");\n        }\n\n        $random = array();\n        for ($i = 0; $i < $length; $i++) {\n            $random[] = $this->chars[mt_rand(0, $this->chars_count - 1)];\n        }\n\n        return implode('', $random);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Router/RouterFactory.php",
    "content": "<?php\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Router;\n\n/**\n * Zend Router wrapper for setting in container.\n */\nclass RouterFactory\n{\n    public static function initRouter($container) {\n        $front = \\Zend_Controller_Front::getInstance();\n        $router = $front->getRouter();\n\n        $router->addRoute(\n            'admin',\n            new \\Zend_Controller_Router_Route(\n                'admin/:controller/:action/*',\n                array(\n                    'module' => 'admin',\n                    'controller' => 'legacy',\n                    'action' => 'index',\n                )\n            )\n        );\n\n        $router->addDefaultRoutes();\n\n        $router->addRoute(\n            'content',\n            new \\Zend_Controller_Router_Route(':language/:issue/:section/:articleNo/:articleUrl', array(\n                'module' => 'default',\n                'controller' => 'legacy',\n                'action' => 'index',\n                'articleUrl' => null,\n                'articleNo' => null,\n                'section' => null,\n                'issue' => null,\n                'language' => null,\n            ), array(\n                'language' => '[a-z]{2}',\n            ))\n        );\n\n        $router->addRoute(\n            'confirm-email',\n            new \\Zend_Controller_Router_Route('confirm-email/:user/:token', array(\n                'module' => 'default',\n                'controller' => 'register',\n                'action' => 'confirm',\n            ))\n        );\n\n        $router->addRoute(\n            'topic',\n            new \\Zend_Controller_Router_Route(':language/topic/:id/:topicName', array(\n                'module' => 'default',\n                'controller' => 'topic',\n                'action' => 'articles',\n                'topicName' => null,\n            ), array(\n                'language' => '[a-z]{2}',\n            ))\n        );\n\n        $router->addRoute(\n            'author',\n            new \\Zend_Controller_Router_Route('author/:author', array(\n                'module' => 'default',\n                'controller' => 'author',\n                'action' => 'profile',\n            ))\n        );\n\n        $router->addRoute(\n            'user',\n            new \\Zend_Controller_Router_Route('user/profile/:username/:action', array(\n                'module' => 'default',\n                'controller' => 'user',\n                'action' => 'profile',\n            ))\n        );\n\n        $image = $container->getParameter('image');\n        $router->addRoute('image',\n            new \\Zend_Controller_Router_Route_Regex($image['cache_url'] . '/(.*)', array(\n                'module' => 'default',\n                'controller' => 'image',\n                'action' => 'cache',\n            ), array(\n                1 => 'src',\n            ), $image['cache_url'] . '/%s')\n        );\n\n        $router->addRoute('rest',\n            new \\Zend_Rest_Route($front, array(), array(\n                'admin' => array(\n                    'slideshow-rest',\n                    'subscription-rest',\n                    'subscription-section-rest',\n                    'subscription-ip-rest',\n                ),\n            ))\n        );\n\n        $router->addRoute(\n            'search',\n            new \\Zend_Controller_Router_Route(\n                ':language/search',\n                array(\n                    'module' => 'default',\n                    'controller' => 'search',\n                    'action' => 'index',\n                    'language' => null,\n                ), array(\n                    'language' => '[a-z]{2}',\n                )\n            )\n        );\n\n        return $router;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/SchedulerServiceInterface.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric z.ú.\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop;\n\n/**\n * Scheduler interface to help manage Cron jobs using Jobby library.\n */\ninterface SchedulerServiceInterface\n{\n    /**\n     * Add cron job details to database\n     *\n     * @param string $jobName Cron job name\n     * @param array  $config  Array with job configuration\n     *                        - string  $command      The job to run (either a shell command or anonymous PHP function)\n     *                        - string  $schedule     Crontab schedule format (`man -s 5 crontab`)\n     *                        - boolean $enabled      Run this job at scheduled times\n     *                        - boolean $debug        Send `jobby` internal messages to 'debug.log'\n     *                        - string  $dateFormat   Format for dates on `jobby` log messages\n     *                        - string  $output       Redirect `stdout` and `stderr` to this file\n     *                        - string  $runOnHost    Run jobs only on this hostname\n     *                        - string  $environment  Development environment for this job\n     *                        - string  $runAs        Run as this user, if crontab user has `sudo` privileges\n     *\n     * @return void\n     */\n    public function registerJob($jobName, array $config);\n\n    /**\n     * Remove cron job from database\n     *\n     * @param string $jobName Cron job name\n     * @param array  $config  Array with job configuration\n     *\n     * @return void\n     */\n    public function removeJob($jobName, array $config);\n\n    /**\n     * Add cron job to Jobby library directly, where job will be started based on given configuration parameters\n     *\n     * @param string $jobName Job name\n     * @param array  $config  Array with job configuration\n     *\n     * @return void\n     */\n    public function addSchedulerJob($jobName, array $config);\n\n    /**\n     * Run Jobby manager which will start all enabled cronjobs\n     *\n     * @return void\n     */\n    public function run();\n\n    /**\n     * Get a next run date relative to the current date or a specific date\n     *\n     * @param string          $schedule         Cron job schedule expression\n     * @param string|DateTime $currentTime      (optional) Relative calculation date\n     * @param int             $nth              (optional) Number of matches to skip before returning a\n     *                                          matching next run date.  0, the default, will return the current\n     *                                          date and time if the next run date falls on the current date and\n     *                                          time.  Setting this value to 1 will skip the first match and go to\n     *                                          the second match.  Setting this value to 2 will skip the first 2\n     *                                          matches and so on.\n     * @param bool            $allowCurrentDate (optional) Set to TRUE to return the\n     *                                          current date if it matches the cron expression\n     *\n     * @return string\n     * @throws RuntimeExpression on too many iterations\n     */\n    public function getNextRunDate($schedule, $currentTime = 'now', $nth = 0, $allowCurrentDate = false);\n\n    /**\n     * Get a previous run date relative to the current date or a specific date\n     *\n     * @param string          $schedule         Cron job schedule expression\n     * @param string|DateTime $currentTime      (optional) Relative calculation date\n     * @param int             $nth              (optional) Number of matches to skip before returning\n     * @param bool            $allowCurrentDate (optional) Set to TRUE to return the\n     *                                          current date if it matches the cron expression\n     *\n     * @return string\n     * @throws RuntimeExpression on too many iterations\n     */\n    public function getPreviousRunDate($schedule, $currentTime = 'now', $nth = 0, $allowCurrentDate = false);\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Search/DefaultIndexClient.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Search;\n\nuse Symfony\\Component\\DependencyInjection\\Container;\nuse Newscoop\\Search\\IndexClientInterface;\nuse Newscoop\\Search\\ServiceInterface;\nuse Newscoop\\Search\\DocumentInterface;\n\nclass DefaultIndexClient implements IndexClientInterface\n{\n    /**\n     * Indexable item\n     *\n     * @var Newscoop\\Search\\DocumentInterface\n     */\n    protected $item;\n\n    /**\n     * Newscoop service interface\n     *\n     * @var Newscoop\\Search\\ServiceInterface\n     */\n    protected $service;\n\n    /**\n     * Symfony container\n     *\n     * @var Symfony\\Component\\DependencyInjection\\Container\n     */\n    protected $container;\n\n    /**\n     * Contains data to be added\n     *\n     * @var array\n     */\n    protected $add = array();\n\n    /**\n     * Contains data to be updated\n     *\n     * @var array\n     */\n    protected $update = array();\n\n    /**\n     * Contains data to be deleted\n     *\n     * @var array\n     */\n    protected $delete = array();\n\n    /**\n     * @param Container $container\n     */\n    public function __construct(Container $container)\n    {\n        $this->container = $container;\n    }\n\n    /**\n     * Adds data to inderxer\n     *\n     * @param array $document Indexable array, must contain key 'id'\n     *\n     * @return boolean\n     */\n    public function add(array $document)\n    {\n        $this->add[] = $document;\n\n        return true;\n    }\n\n    /**\n     * Updates element in indexer (if supported)\n     *\n     * @param  array  $document Re-indexable data, must contain key 'id'\n     *\n     * @return boolean\n     */\n    public function update(array $document)\n    {\n        $this->update[] = $document;\n\n        return true;\n    }\n\n    /**\n     * Delete item from index\n     *\n     * @param  string $document Id of indexable data\n     *\n     * @return boolean\n     */\n    public function delete($document)\n    {\n        $this->delete[] = $document;\n\n        return true;\n    }\n\n    /**\n     * Flush all commands\n     *\n     * @return boolean\n     */\n    public function flush()\n    {\n        $debug = $this->container->get('kernel')->isDebug();\n\n        // Only log and write to text files when debugging\n        if (!$debug) {\n            return true;\n        }\n\n        $logger = $this->container->get('logger');\n\n        $commandList = array(\n            'add' => $this->add,\n            'update' => $this->update,\n            'delete' => $this->delete,\n        );\n\n        $logger->info(__CLASS__ .': start logging index commands');\n\n        foreach ($commandList as $name => $commands) {\n            foreach ($commands AS $command) {\n                $logString = (is_array($command)) ? json_encode($command) : $command;\n                $logger->info($name.': '.$logString);\n            }\n        }\n\n        $logger->info(__CLASS__. ': finished logging index commands');\n\n        return true;\n    }\n\n    /**\n     * Delete all indexed data\n     *\n     * @return boolean\n     */\n    public function deleteAll()\n    {\n        return true;\n    }\n\n    /**\n     * {@inheritdoc}\n     */\n    public function isEnabled($clientName)\n    {\n        return true;\n    }\n\n    /**\n     * {@inheritdoc}\n     */\n    public function isTypeIndexable($serviceName, $subType)\n    {\n        return true;\n    }\n\n    /**\n     * Set service for\n     *\n     * @param ServiceInterface $service\n     */\n    public function setService(ServiceInterface $service)\n    {\n        $this->service = $service;\n    }\n\n    /**\n     * Set item. This method gives the possibility for the indexing client\n     * to access extra data in regards to the default indexable content;\n     *\n     * @param DocumentInterface $item\n     */\n    public function setItem(DocumentInterface $item)\n    {\n        $this->item = $item;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Search/DocumentInterface.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Search;\n\n/**\n * Document interface\n *\n * Provides and interface for entities which are connected to the Search\n * service.\n */\ninterface DocumentInterface\n{\n    /**\n     * Get indexing date\n     *\n     * @return DateTime\n     */\n    public function getIndexed();\n\n    /**\n     * Set indexing date\n     *\n     * @param DateTime $indexed\n     *\n     * @return self\n     */\n    public function setIndexed(\\DateTime $indexed = null);\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Search/IndexClientInterface.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Search;\n\nuse Symfony\\Component\\DependencyInjection\\Container;\nuse Newscoop\\Search\\ServiceInterface;\nuse Newscoop\\Search\\DocumentInterface;\n\n/**\n * Index Interface\n */\ninterface IndexClientInterface\n{\n    /**\n     * Initialize class\n     *\n     * @param Symfony\\Component\\DependencyInjection\\Container $service\n     */\n    public function __construct(Container $container);\n\n    /**\n     * Add given item\n     *\n     * @param array $item\n     *\n     * @return boolean\n     */\n    public function add(array $item);\n\n    /**\n     * Update given item\n     *\n     * @param array $item\n     *\n     * @return boolean\n     */\n    public function update(array $item);\n\n    /**\n     * Delete given article by id\n     *\n     * @param String $itemId\n     *\n     * @return boolean\n     */\n    public function delete($itemId);\n\n    /**\n     * Commit changes to index\n     *\n     * @return boolean\n     */\n    public function flush();\n\n    /**\n     * Delete all indexed data\n     *\n     * @return boolean\n     */\n    public function deleteAll();\n\n    /**\n     * Checks whether the index client is enabled for the current service\n     *\n     * @return boolean\n     */\n    public function isEnabled($clientName);\n\n    /**\n     * Checks whether the subtype is indexable.\n     *\n     * @param  string $serviceName Name of the service\n     * @param  string $item        Subtype of item to check\n     *\n     * @return boolean\n     */\n    public function isTypeIndexable($serviceName, $itemSubType);\n\n    /**\n     * Set service for the current client\n     *\n     * @param ServiceInterface $service\n     */\n    public function setService(ServiceInterface $service);\n\n    /**\n     * Set item. This method gives the possibility for the indexing client\n     * to access extra data in regards to the default indexable content.\n     *\n     * @param DocumentInterface $item\n     */\n    public function setItem(DocumentInterface $item);\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Search/IndexException.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Search;\n\nuse Newscoop\\NewscoopException;\n\n/**\n */\nclass IndexException extends NewscoopException\n{\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Search/Indexer.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Mischa Gorinskat <mischa.gorinskat@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Search;\n\nuse Symfony\\Component\\DependencyInjection\\Container;\nuse Newscoop\\Search\\IndexClientInterface;\nuse Newscoop\\Search\\ServiceInterface;\nuse Newscoop\\Search\\RepositoryInterface;\nuse Exception;\n\n/**\n * Indexer\n */\nclass Indexer\n{\n    const CRON_NAME = 'Indexer';\n\n    const BATCH_MAX = 200;\n\n    /**\n     * @var Newscoop\\Search\\IndexClientInterface\n     */\n    protected $container;\n\n    /**\n     * @var Newscoop\\Search\\ServiceInterface\n     */\n    protected $service;\n\n    /**\n     * @var Newscoop\\Search\\RepositoryInterface\n     */\n    protected $repository;\n\n    /**\n     * Name of the indexer\n     *\n     * @var string\n     */\n    protected $name;\n\n    /**\n     * Array containing object of Newscoop\\Search\\IndexClientInterface\n     *\n     * @var Array\n     */\n    protected $indexClients;\n\n    /**\n     * @param Newscoop\\Search\\IndexClientInterface $index\n     * @param Newscoop\\Search\\ServiceInterface $service\n     * @param Newscoop\\Search\\RepositoryInterface $repository\n     * @param bool $enabled\n     */\n    public function __construct(\n        Container $container,\n        ServiceInterface $service,\n        RepositoryInterface $repository = null,\n        $indexerName\n    )\n    {\n        $this->container = $container;\n        $this->service = $service;\n        $this->repository = $repository;\n        $this->name = $indexerName;\n        $this->indexClients = $this->getIndexClients();\n    }\n\n    /**\n     * Update index\n     *\n     * @param mixed $count Number of items to index\n     * @param array $filter Filter for the batch results\n     *\n     * @return void\n     */\n    public function update($count = 50, $filter = null)\n    {\n        $logger = $this->container->get('logger');\n\n        $batches = ($count <= self::BATCH_MAX) ? 1 : ceil($count/self::BATCH_MAX);\n\n        for ($i = 1; $i <= $batches; $i++)  {\n\n            $batchCount = ($i == $batches && ($count%self::BATCH_MAX) > 0)\n                ? ($count%self::BATCH_MAX) : self::BATCH_MAX;\n            $items = $this->repository->getBatch($batchCount, $filter);\n\n            // TODO: Built in check if $items are less then $batchcount, we could stop iterating\n\n            foreach ($this->indexClients as $client) {\n\n                if ($client->isEnabled($this->name)) {\n\n                    $client->setService($this->service);\n\n                    foreach ($items as $item) {\n\n                        $client->setItem($item);\n\n                        if ($client->isTypeIndexable($this->name, $this->service->getSubType($item))) {\n\n                            if ($this->service->isIndexable($item)) {\n\n                                try {\n                                    $client->add($this->service->getDocument($item));\n                                } catch(Exception $e) {\n                                    $itemData = $this->service->getDocument($item);\n                                    $logger->error('Could not (completely) add item ('.$itemData['id'].') to indexing client. ('.__CLASS__ .' - '. $e->getMessage() .')');\n                                }\n                            } elseif ($this->service->isIndexed($item)) {\n\n                                try {\n                                    $client->delete($this->service->getDocumentId($item));\n                                } catch(Exception $e) {\n                                    $logger->error('Could not (completely) delete item to indexing client. ('.__CLASS__ .' - '. $e->getMessage() .')');\n                                }\n                            }\n                        }\n                    }\n\n                    $client->flush();\n                }\n            }\n\n            $this->repository->setIndexedNow($items);\n        }\n    }\n\n    /**\n     * Delete event listener\n     *\n     * @return void\n     */\n    public function delete($event)\n    {\n        if ($this->service->isIndexed($event['entity'])) {\n            foreach ($this->indexClients as $client) {\n                $client->delete($this->service->getDocumentId($event['entity']));\n                $client->flush();\n            }\n        }\n    }\n\n    /**\n     * Clear all indexed timestamps\n     *\n     * @return void\n     */\n    public function clearAll()\n    {\n        $this->repository->setIndexedNull();\n    }\n\n    /**\n     * Delete all docs from indexing clients\n     *\n     * @return void\n     */\n    public function deleteAll()\n    {\n        foreach ($this->indexClients as $client) {\n            $client->deleteAll();\n        }\n        $this->clearAll();\n    }\n\n    /**\n     * Get installed indexing clients\n     *\n     * @return array List of installed indexClients\n     */\n    private function getIndexClients()\n    {\n        $servicIds = $this->container->getServiceIds();\n        $indexingServices = array();\n\n        foreach ($servicIds as $serviceId) {\n\n            if (strpos($serviceId, 'index_client.') === false) {\n                 continue;\n            }\n\n            $indexingServices[$serviceId] = $this->container->get($serviceId);\n        }\n\n        return $indexingServices;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Search/RepositoryInterface.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Search;\n\n/**\n * Repository interface\n *\n * Provides an interface for repositories of which the entities are connected\n * to the  Search service.\n */\ninterface RepositoryInterface\n{\n    const BATCH_COUNT = 50;\n\n    /**\n     * Get items to process\n     *\n     * @param int $count Limit amount of results\n     * @param array $filter Filter to apply to results\n     *\n     * @return array\n     */\n    public function getBatch($count = self::BATCH_COUNT, array $filter=null);\n\n    /**\n     * Set indexed to now for given items\n     *\n     * @param array $items\n     * @return void\n     */\n    public function setIndexedNow(array $items);\n\n    /**\n     * Set indexed to null for specified items or all when value is null\n     *\n     * @param mixed $items\n     *\n     * @return void\n     */\n    public function setIndexedNull(array $items=null);\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Search/ServiceInterface.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Search;\n\nuse Newscoop\\Search\\DocumentInterface;\n\n/**\n * Service Interface\n *\n * Provides an interface for Search services\n */\ninterface ServiceInterface\n{\n    const DATE_FORMAT = 'Y-m-d\\TH:i:s\\Z';\n\n    /**\n     * Get the type of the item\n     *\n     * @return string identifier for type\n     */\n    public function getType();\n\n    /**\n     * Get the subtype of the item\n     *\n     * @return string identifier for subtype\n     */\n    public function getSubType(DocumentInterface $item);\n\n    /**\n     * Test if item is indexed\n     *\n     * @param mixed $item\n     * @return bool\n     */\n    public function isIndexed(DocumentInterface $item);\n\n    /**\n     * Test if item can be indexed\n     *\n     * @param mixed $item\n     * @return bool\n     */\n    public function isIndexable(DocumentInterface $item);\n\n    /**\n     * Get document for item\n     *\n     * @param mixed $item\n     * @return array\n     */\n    public function getDocument(DocumentInterface $item);\n\n    /**\n     * Get document id\n     *\n     * @param mixed $item\n     * @return string\n     */\n    public function getDocumentId(DocumentInterface $item);\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Error/ThemeErrors.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Error;\n\n\n/**\n * Provides the errors keys as constants for the themes.\n */\nclass ThemeErrors\n{\n\t\n\tconst XML_INVALID = 'Invalid XML theme config file $1.';\t\n\tconst XML_NO_ROOT = 'Invalid XML cannot locate the theme root.';\n\tconst XML_MISSING_ATTRIBUTE = 'Missing attribute $1 for node $2.';\n\tconst XML_MISSING_TAG = 'Missing tag with name $1 from parent tag $2.';\n\tconst XML_TO_MANY_TAGS = 'To many tags for name $1 from parent tag $2, expected $3.';\n\t\n\tconst OUTPUT_MISSING = 'Missing output with name $1 from the database.';\n\n\t/* --------------------------------------------------------------- */\n\n\tprivate function __construct(){}\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Exception/DuplicateNameException.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Exception;\n\n/**\n * This exception is thrown when there is a problem with data structures that bare the same name and is not allowed.\n */\nuse Newscoop\\Utils\\Validation;\n\nclass DuplicateNameException extends \\Exception\n{\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Exception/RemoveThemeException.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Exception;\n\n/**\n * This exception is thrown when there is a problem with data structures that bare the same name and is not allowed.\n */\nuse Newscoop\\Utils\\Validation;\n\nclass RemoveThemeException extends \\Exception\n{\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/IArticleTypeService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service;\n\nuse Newscoop\\Entity\\ArticleType;\n\nuse Newscoop\\Service\\IEntityService;\n\n/**\n * Provides the services for the Publications.\n */\ninterface IArticleTypeService\n{\n\t/**\n\t * Provides the class name as a constant. \n\t */\n\tconst NAME = __CLASS__;\n\t\n\t/* --------------------------------------------------------------- */\n\t\n\t/**\n\t * Find all article types, which you can get fields for later on\n\t * \n\t * @return array most probably consisting of \\Newscroop\\Entity\\ArticleType instances\n\t */\n\tpublic function findAllTypes();\n\n\t/**\n\t * Find one article type by name\n\t * \n\t * @param string $name\n\t * @return ArticleType|null\n\t * \t\treturns null if not found!\n\t */\n\tpublic function findTypeByName( $name );\n\t\n\t/**\n\t * Get all fields per article type\n\t * \n\t * @param ArticleType $type\n\t * @return array\n\t */\n\tpublic function findFields( ArticleType $type );\n\t\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/IAuditService.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service;\n\nuse Newscoop\\Entity\\Entity;\n\n/**\n * Provides audit services for the database entities\n */\ninterface IAuditService\n{\n\n\t/**\n\t * Provides the class name as a constant. \n\t */\n\tconst NAME = __CLASS__;\n\t\n\t/* --------------------------------------------------------------- */\n\t\n\t/**\n\t * Audit the creation of a new entity.\n\t * The audit should be called after the persistance of the entity.\n\t *\n\t * @param Entity $entity\n\t * \t\tThe entity to be audited, not null.\n\t */\n\tfunction created(Entity $entity);\n\n\t/**\n\t * Audit the change of a entity.\n\t * The audit should be called before the persistance of the entity.\n\t *\n\t * @param Entity $entity\n\t * \t\tThe entity to be audited, not null.\n\t */\n\tfunction changed(Entity $entity);\n\n\t/**\n\t * Audit the remove of a entity.\n\t * The audit should be called before the removal of the entity.\n\t *\n\t * @param Entity $entity\n\t * \t\tThe entity to be audited, not null.\n\t */\n\tfunction removed(Entity $entity);\n\t\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/IEntityBaseService.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service;\n\n/**\n * Provides base generic services for entities.\n */\n\ninterface IEntityBaseService\n{\n\n\t/**\n\t * Provides the entity that has the provided id.\n\t *\n\t * @param mixed $id\n\t *\t\tThe id to be searched, not null, not empty.\n\t *\n\t * @return Newscoop\\Entity\n\t *\t\tThe entity, not null.\n\t * @throws InvalidArgumentException\n\t * \t\tIf for the provided id no entity could be found.\n\t */\n\tfunction getById($id);\n\n\t/**\n\t * Provides the entity that has the provided id.\n\t *\n\t * @param mixed $id\n\t *\t\tThe id to be searched, not null, not empty.\n\t *\n\t * @return Newscoop\\Entity\n\t *\t\tThe entity, null if no entities could be found for the provided id.\n\t */\n\tfunction findById($id);\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/IEntityService.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service;\n\nuse Newscoop\\Service\\Model\\Search\\Search;\n\n/**\n * Provides generic services for entities.\n */\n\ninterface IEntityService extends IEntityBaseService\n{\n\n\t/**\n\t * Provides the count of the entities that can be associated with the provided search.\n\t *\n\t * @param Newscoop\\Service\\Model\\Search\\Search $search\n\t *\t\tThe search criteria, not null.\n\t *\n\t * @return int\n\t *\t\tThe entities count.\n\t */\n\tfunction getCount(Search $search = NULL);\n\n\t/**\n\t * Provides the all the entities that can be associated with the provided search\n\t *\n\t * @param Newscoop\\Service\\Model\\Search\\Search $search\n\t *\t\tThe search criteria, not null.\n\t *\n\t * @param int|0 $offset\n\t *\t \tThe offset from where to retrieve the entities, if an offset is specified\n\t *\t\tthan also a limit must be specified in order for the offset to take effect.\n\t *\n\t * @param int $limit\n\t *\t\tThe limit of entities to fetch, negaive value will fetch all entities found.\n\t *\n\t * @return array\n\t *\t\tThe array of entities found.\n\t */\n\tfunction getEntities(Search $search = NULL, $offset = 0, $limit = -1);\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/IErrorHandler.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Service;\n\n/**\n * Provides error handling.\n */\ninterface IErrorHandler\n{\n\n\t/**\n\t * Provides the class name as a constant. \n\t */\n\tconst NAME = __CLASS__;\n\t\n\t/* --------------------------------------------------------------- */\n\t\n\t/**\n\t * Handle the warning. The key of the warning needs to be mapped as constant\n\t * see previous implementations.\n\t *\n\t * @param string $key\n\t * \t\tThe key of the waning, which uniquelly identifies it, not null.\n\t */\n\tfunction warning($key);\n\n\t/**\n\t * Handle the error. The key of the error needs to be mapped as constant\n\t * see previous implementations.\n\t *\n\t * @param string $key\n\t * \t\tThe key of the error, which uniquelly identifies it, not null.\n\t */\n\tfunction error($key);\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/IIssueService.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service;\n\nuse Newscoop\\Service\\IEntityService;\n\n/**\n * Provides the services for the Publications.\n */\ninterface IIssueService extends IEntityService\n{\n\n\t/**\n\t * Provides the class name as a constant.\n\t */\n\tconst NAME = __CLASS__;\n\n\t/* --------------------------------------------------------------- */\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/ILanguageService.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service;\n\nuse Newscoop\\Service\\IEntityService;\n\n/**\n * Provides the services for the themes.\n */\ninterface ILanguageService extends IEntityService\n{\n\n\t/**\n\t * Provides the class name as a constant. \n\t */\n\tconst NAME = __CLASS__;\n\t\n\t/* --------------------------------------------------------------- */\n\t\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/IOutputService.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service;\n\nuse Newscoop\\Entity\\Output;\nuse Newscoop\\Service\\IEntityService;\n\n/**\n * Provides the services for the Outputs.\n */\ninterface IOutputService extends IEntityService\n{\n\n\t/**\n\t * Provides the class name as a constant. \n\t */\n\tconst NAME = __CLASS__;\n\t\n\t/* --------------------------------------------------------------- */\n\t\n\t/**\n\t * Provides the Output that has the provided name.\n\t *\n\t * @param string $name\n\t *\t\tThe name to be searched, not null, not empty.\n\t *\n\t * @return Newscoop\\Entity\\Output\n\t *\t\tThe Output, null if no Output could be found for the provided name.\n\t */\n\tfunction findByName($name);\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/IOutputSettingIssueService.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service;\n\nuse Newscoop\\Entity\\Issue;\nuse Newscoop\\Entity\\Output;\nuse Newscoop\\Entity\\Output\\OutputSettingsIssue;\nuse Newscoop\\Service\\IEntityBaseService;\n\n/**\n * Provides the services for the Outputs.\n */\ninterface IOutputSettingIssueService extends IEntityBaseService\n{\n    /**\n     * Provides the class name as a constant.\n     */\n    const NAME = __CLASS__;\n\n    /* --------------------------------------------------------------- */\n\n    /**\n     * Provides the Output Settings Issue for the provided issue\n     *\n     * @param Issue|int $issue\n     * \t\tThe issue to be searched, not null, not empty.\n     *\n     * @return array Newscoop\\Entity\\Output\\OutputSettingsIssue\n     * \t\tThe Output Setting, empty array if no Output Setting could be found for the provided issue.\n     */\n    function findByIssue($issue);\n\n    /**\n     * Provides the Output Settings Issue for the provided issue and output\n     *\n     * @param Issue|int $issue\n     * \t\tThe issue to be searched, not null, not empty.\n\n     * @param Output|string $output\n     * \t\tThe output to be searched, not null, not empty.\n     *\n     * @return array Newscoop\\Entity\\Output\\OutputSettingsIssue\n     * \t\tThe Output Setting, empty array if no Output Setting could be found for the provided issue.\n     */\n    function findByIssueAndOutput($issue, $output);\n    \n    /**\n     * Checks if the provided theme is used by any issue at this point.\n     * @param Theme|str $theme\n     * \t\tThe theme or path to be checked if used.\n     */\n    function isThemeUsed($theme);\n\n    /**\n     * Update an ouput setting issue\n     *\n     * @param OutputSettingsIssue $outputSettingsIssue\n     */\n    function update(OutputSettingsIssue $outputSettingsIssue);\n\n    /**\n     * Inserts an ouput setting issue\n     *\n     * @param OutputSettingsIssue $outputSettingsIssue\n     */\n    function insert(OutputSettingsIssue $outputSettingsIssue);\n\n    /**\n     * Delete an ouput setting issue\n     *\n     * @param OutputSettingsIssue $outputSettingsIssue\n     */\n    function delete(OutputSettingsIssue $outputSettingsIssue);\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/IOutputSettingSectionService.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service;\n\nuse Newscoop\\Entity\\Section;\nuse Newscoop\\Entity\\Output\\OutputSettingsSection;\nuse Newscoop\\Service\\IEntityBaseService;\n\n/**\n * Provides the services for the Output Setting.\n */\ninterface IOutputSettingSectionService extends IEntityBaseService\n{\n    /**\n     * Provides the class name as a constant.\n     */\n    const NAME = __CLASS__;\n\n    /* --------------------------------------------------------------- */\n\n    /**\n     * Provides the Output Settings that has the provided Section and Output.\n     *\n     * @param Section|int $section\n     * \t\tThe section to be searched, not null, not empty.\n     * @param Output|string $output\n     * \t\tThe output to be searched, not null, not empty.\n     *\n     * @return Newscoop\\Entity\\OutputSettingsSection\n     * \t\tThe Output Setting, empty array if no Output Setting could be found for the provided section.\n     */\n    function findBySectionAndOutput($section, $output);\n\n    /**\n     * Provides the Output Settings that has the provided Section.\n     *\n     * @param Section|int $section\n     * \t\tThe section to be searched, not null, not empty.\n     *\n     * @return Newscoop\\Entity\\OutputSettingsSection\n     * \t\tThe Output Setting, empty array if no Output Setting could be found for the provided section.\n     */\n    function findBySection($section);\n\n    /**\n     * Update an ouput setting section\n     *\n     * @param OutputSettingsSection $outputSettingsSection\n     */\n    function update(OutputSettingsSection $outputSettingsSection);\n\n    /**\n     * Inserts an ouput setting section\n     *\n     * @param OutputSettingsSection $outputSettingsSection\n     */\n    function insert(OutputSettingsSection $outputSettingsSection);\n\n    /**\n     * Delete an ouput setting section\n     *\n     * @param OutputSettingsSection $outputSettingsSection\n     */\n    function delete(OutputSettingsSection $outputSettingsSection);\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/IPublicationService.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service;\n\nuse Newscoop\\Service\\IEntityService;\n\n/**\n * Provides the services for the Issues.\n */\ninterface IPublicationService extends IEntityService\n{\n\n\t/**\n\t * Provides the class name as a constant.\n\t */\n\tconst NAME = __CLASS__;\n\n\t/* --------------------------------------------------------------- */\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/ISectionService.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service;\n\nuse Newscoop\\Service\\IEntityService;\n\n/**\n * Provides the services for the Publications.\n */\ninterface ISectionService extends IEntityService\n{\n\n\t/**\n\t * Provides the class name as a constant.\n\t */\n\tconst NAME = __CLASS__;\n\n\t/* --------------------------------------------------------------- */\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/ISyncResourceService.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service;\n\nuse Newscoop\\Entity\\Resource;\nuse Newscoop\\Entity\\Output;\nuse Newscoop\\Service\\IEntityService;\n\n/**\n * Provides the services for the Outputs.\n */\ninterface ISyncResourceService extends IEntityService\n{\n    /**\n     * Provides the class name as a constant.\n     */\n    const NAME = __CLASS__;\n\n    /* --------------------------------------------------------------- */\n\n    /**\n     * Provides the synchronized Resource based on the provided resource.\n     * The synchronization of a resource means the association of that resource with the database.\n     *\n     * @param Resource $resource\n     * \t\tThe Resource to be synchronized, not null, not empty.\n     *\n     * @return Resource\n     * \t\tThe synchronized Resource.\n     */\n    function getSynchronized(Resource $resource);\n\n    /**\n     * Provides the synchronized Resource based on the provided resource.\n     * The synchronization of a resource means the association of that resource with the database.\n     *\n     * @param string $path\n     * \t\tThe Resource Path to be synchronized, not null, not empty.\n     *\n     * @return Resource\n     * \t\tThe synchronized Resource.\n     */\n    function findByPath($path);\n\n    /**\n     * Provides the synchronized Resource based on the provided resource.\n     * The synchronization of a resource means the association of that resource with the database.\n     *\n     * @param string|int $pathOrID\n     * \t\tThe Resource Path or Id to be synchronized, not null, not empty.\n     *\n     * @return Resource\n     * \t\tThe synchronized Resource.\n     */\n    function findByPathOrId($pathOrId);\n    \n    /**\n     * Provides the synchronized Resource based on the provided name and path.\n     * The synchronization of a resource means the association of that resource with the database.\n     *\n     * @param string $name\n     * \t\tThe name of the Resource to be synchronized, not null, not empty.\n     *\n     * @param string $path\n     * \t\tThe path of the Resource to be synchronized, not null, not empty.\n     *\n     * @return Resource\n     * \t\tThe synchronized Resource.\n     */\n    function getResource($name, $path);\n\n    /**\n     * Provides the synchronized Resource based on the provided theme path.\n     * The synchronization of a resource means the association of that resource with the database.\n     *\n     * @param str $themePath\n     * \t\tThe theme path to be synchronized, not null, not empty.\n     *\n     * @return Resource\n     * \t\tThe synchronized Resource.\n     */\n    function getThemePath($themePath);\n\n    /* --------------------------------------------------------------- */\n\n    /**\n     * Clears all resources that are prefixed by the provided path.\n     * @param str $path\n     * \t\tThe path for which all resources should be cleared has to end with a '/'.\n     */\n    function clearAllFor($path);\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/ITemplateSearchService.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service;\n\nuse Newscoop\\Entity\\Issue;\nuse Newscoop\\Entity\\Section;\nuse Newscoop\\Entity\\Output;\n\n/**\n * Provides the services for Searching a template.\n */\ninterface ITemplateSearchService\n{\n    /**\n     * Provides the class name as a constant.\n     */\n    const NAME = __CLASS__;\n\n    /* --------------------------------------------------------------- */\n\n    /**\n     * Get the page for front page\n     *      to be used as a template.\n     *\n     * @param Issue|Int $issue\n     *      The issue object or the id of the issue for whom the template is needed.\n     * @param Output|int|string $output\n     *      The object Output, the id or the Name of the Output for whom the template is needed.\n     *\n     * @return string\n     *      The full path of the template.\n     */\n    function getFrontPage($issue, $output);\n\n    /**\n     * Get the page for error\n     *      to be used as a template.\n     *\n     * @param Issue|Int $issue\n     *      The issue object or the id of the issue for whom the template is needed.\n     * @param Output|int|string $output\n     *      The object Output, the id or the Name of the Output for whom the template is needed.\n     *\n     * @return string\n     *      The full path of the template.\n     */\n    function getErrorPage($issue, $output);\n\n    /**\n     * Get the page for section\n     *      to be used as a template.\n     *\n     * @param Section|Int $section\n     *      The section object or the id of the issue for whom the template is needed.\n     * @param Output|int|string $output\n     *      The object Output, the id or the Name of the Output for whom the template is needed.\n     *\n     *\n     * @return string\n     *      The full path of the template.\n     */\n    function getSectionPage($section, $output);\n\n    /**\n     * Get the page for article\n     *      to be used as a template.\n     *\n     * @param Section|Int $section\n     *      The section object or the id of the issue for whom the template is needed.\n     * @param Output|int|string $output\n     *      The object Output, the id or the Name of the Output for whom the template is needed.\n     *\n     * @return string\n     *      The full path of the template.\n     */\n    function getArticlePage($section, $output);\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/IThemeManagementService.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service;\n\nuse Newscoop\\Service\\Exception\\DuplicateNameException;\nuse Newscoop\\Service\\Model\\SearchTheme;\nuse Newscoop\\Entity\\OutputSettings;\nuse Newscoop\\Entity\\Output;\nuse Newscoop\\Entity\\Publication;\nuse Newscoop\\Entity\\Theme;\n\n/**\n * Provides the management services for the themes.\n */\ninterface IThemeManagementService extends IThemeService\n{\n\n\t/**\n\t * Provides the class name as a constant.\n\t */\n\tconst NAME_1 = __CLASS__;\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the themes that are unassigned to any publication.\n\t *\n\t * @param Newscoop\\Service\\Model\\Search\\SearchTheme $search\n\t *\t\tThe search criteria, not null.\n\t *\n\t * @param int|0 $offset\n\t *\t \tThe offset from where to retrieve the entities, if an offset is specified\n\t *\t\tthan also a limit must be specified in order for the offset to take effect.\n\t *\n\t * @param int $limit\n\t *\t\tThe limit of entities to fetch, negaive value will fetch all entities found.\n\t *\n\t * @return array of Newscoop\\Entity\\Theme\n\t * \t\tThe array containing all the unassigned Themes, not null migh be empty.\n\t */\n\tfunction getUnassignedThemes(SearchTheme $search = NULL, $offset = 0, $limit = -1);\n\n\t/**\n\t * Provides the themes that are assigned to the publication.\n\t *\n\t * @param Publication|int $publication\n\t * \t\tThe publication to retrieve the themes for or the publication id, not null.\n\t * \n\t * @param Newscoop\\Service\\Model\\Search\\SearchTheme $search\n\t *\t\tThe search criteria, not null.\n\t *\n\t * @param int|0 $offset\n\t *\t \tThe offset from where to retrieve the entities, if an offset is specified\n\t *\t\tthan also a limit must be specified in order for the offset to take effect.\n\t *\n\t * @param int $limit\n\t *\t\tThe limit of entities to fetch, negaive value will fetch all entities found.\n\t *\n\t * @return array of Newscoop\\Entity\\Theme\n\t * \t\tThe array containing all the Themes assigned to the provided publication, not null migh be empty.\n\t */\n\tfunction getThemes($publication, SearchTheme $search = NULL, $offset = 0, $limit = -1);\n\n\t/**\n\t * Provides the all template resources (.tpl) files found for the theme.\n\t *\n\t * @param Theme|string $theme\n\t * \t\tThe theme to retrieve the template resource for\n\t * \t\tcan be the Theme object or the theme path, not null.\n\t *\n\t * @return array of Newscoop\\Entity\\Resource\n\t * \t\tThe array containing all the template resources assigned to the provided theme, not null migh be empty.\n\t */\n\tfunction getTemplates($theme);\n\n\t/**\n\t * Provides the output setting for the provided theme and ouput.\n\t *\n\t * @param Theme $theme\n\t * \t\tThe theme to retrieve the output setting for, not null.\n\t * @param Output $output\n\t * \t\tThe output, not null.\n\t *\n\t * @return array of Newscoop\\Entity\\OutputSettings\n\t * \t\tThe output setting, null if none found for the theme and output.\n\t */\n\tfunction findOutputSetting(Theme $theme, Output $output);\n\n\t/**\n\t * Provides the all output setting found for the theme.\n\t *\n\t * @param Theme $theme\n\t * \t\tThe theme to retrieve the output setting  for, not null.\n\t *\n\t * @return array of Newscoop\\Entity\\OutputSettings\n\t * \t\tThe array containing all the OutputSettings assigned to the provided theme, not null migh be empty.\n\t */\n\tfunction getOutputSettings(Theme $theme);\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Export the theme.\n\t *\n\t * @param Theme|int $theme\n\t * \t\tThe theme or theme id to be exported, not null.\n\t * @return the file name containing the exported archive.\n\t */\n\tfunction exportTheme($theme);\n\t\n\t/**\n\t * Updates the theme.\n\t *\n\t * @param str $filePath\n\t * \t\tThe file path to the zip containing the theme, not null.\n\t * @return bool\n\t * \t\tTrue if the theme was succesfully added, false otherwise.\n\t */\n\tfunction installTheme($filePath);\n\t\n\t/**\n\t * Updates the theme.\n\t *\n\t * @param Theme $theme\n\t * \t\tThe theme to be updated, not null.\n\t *\n\t * @throws DuplicateNameException\n\t * \t\tThrown when the theme has the same name as another theme in the same scope (for instance 2 themes\n\t * \t\tbelong to the same publication and you try to rename 1 theme to have the same name as the other).\n\t */\n\tfunction updateTheme(Theme $theme);\n\n\t/**\n\t * Delete the theme and all coresponding connections. Please check the isUsedTheme method from\n\t * IOutputSettingIssueService before removing the theme.\n\t *\n\t * @param Theme|int $theme\n\t * \t\tThe theme or theme id to be deleted, not null.\n\t *\n\t * @return bool\n\t * \t\tTRUE if the theme was succesfully deleted, FLASE if the theme is in use and cannot be removed.\n\t */\n\tfunction removeTheme($theme);\n\n\t/**\n\t * Assign the theme to the publication.\n\t *\n\t * @param Theme $theme\n\t * \t\tThe theme to be assigned, not null.\n\t *\n\t * @param Publication $publication\n\t * \t\tThe publication to be assigned the theme for, not null.\n\t *\n\t * @throws DuplicateNameException\n\t * \t\tThrown when there is already another theme with the same name under the publication.\n\t */\n\tfunction assignTheme(Theme $theme, Publication $publication);\n\n\t/**\n\t * Assign the output settings to the theme.\n\t *\n\t * @param OutputSettings $outputSettings\n\t * \t\tThe output settings to be assigned to the theme.\n\t * @param Theme $theme\n\t * \t\tThe theme to be assigned to, not null.\n\t */\n\tfunction assignOutputSetting(OutputSettings $outputSettings, Theme $theme);\n\n\t/**\n\t * Assign the article types to the theme.\n\t *\n\t * @param object|array $outputSettings\n\t * \t\tThe article types to be assigned to the theme.\n\t * @param Theme $theme\n\t * \t\tThe theme to be assigned to, not null.\n\t */\n\tfunction assignArticleTypes($articleTypes, Theme $theme);\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/IThemeService.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service;\n\nuse Newscoop\\Entity\\Theme;\nuse Newscoop\\Service\\IEntityService;\n\n/**\n * Provides the services for the themes.\n */\ninterface IThemeService extends IEntityService\n{\n\n\t/**\n\t * Provides the class name as a constant. \n\t */\n\tconst NAME = __CLASS__;\n\t\n\t/* --------------------------------------------------------------- */\n\t\n\t/**\n\t * Provides the array of ThemeResources that contain the images that provide the theme presentation.\n\t *\n\t * @param Newscoop\\Entity\\Theme $theme\n\t *\t\tThe theme to find the presentation resources for, not null.\n\t *\n\t * @return array\n\t *\t\tThe array containing the Newscoop\\Entity\\Resource, not null might be empty.\n\t */\n\tfunction getPresentationImages(Theme $theme);\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Implementation/AEntityBaseServiceDoctrine.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Implementation;\n\nuse Doctrine\\ORM\\QueryBuilder;\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Service\\IEntityService;\nuse Newscoop\\Service\\Model\\Search\\ColumnOrder;\nuse Newscoop\\Service\\Model\\Search\\ColumnOrderLike;\nuse Newscoop\\Utils\\Validation;\nuse Newscoop\\Service\\Resource\\ResourceId;\nuse Newscoop\\Service\\Model\\Search\\Column;\nuse Newscoop\\Service\\Model\\Search\\Search;\n\n/**\n * Provides the base services implementation for the themes.\n */\nabstract class AEntityBaseServiceDoctrine\n{\n    const ALIAS = 'en';\n\n    /* --------------------------------------------------------------- */\n\n    /** @var Newscoop\\Service\\Resource\\ResourceId */\n    protected $id;\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em = NULL;\n\n    /* ------------------------------- */\n    /** @var string */\n    protected $entityClassName;\n\n    /* ------------------------------- */\n\n    /**\n     * Construct the service base d on the provided resource id.\n     * @param ResourceId $id\n     * \t\tThe resource id, not null not empty\n     */\n    function __construct(ResourceId $id)\n    {\n        Validation::notEmpty($id, 'id');\n        $this->id = $id;\n\n        $this->_init_();\n\n        if (is_null($this->entityClassName)) {\n            throw  new \\Exception(\"Please provide a entitity class name to be used\");\n        }\n    }\n\n    /* --------------------------------------------------------------- */\n\n    function getById($id)\n    {\n        Validation::notEmpty($id, 'id');\n        $entity = $this->findById($id);\n        if ($entity === NULL) {\n            throw new \\Exception(\"Cannot locate '$this->entityClassName' for id '$id'.\");\n        }\n        return $entity;\n    }\n\n    function findById($id)\n    {\n        Validation::notEmpty($id, 'id');\n        $em = $this->getManager();\n        return $em->find($this->entityClassName, $id);\n    }\n\n    /* --------------------------------------------------------------- */\n\n    /**\n     * Provides the resource id.\n     *\n     * @return Newscoop\\Services\\Resource\\ResourceId\n     * \t\tThe resource id.\n     */\n    protected function getResourceId()\n    {\n        return $this->id;\n    }\n\n    /** Provides the dictrine entity manager.\n     *\n     * @return Doctrine\\ORM\\EntityManager\n     * \t\tThe doctrine entity manager.\n     */\n    protected function getManager()\n    {\n        if ($this->em === NULL) {\n            $this->em = \\Zend_Registry::get('container')->getService('em');\n        }\n        return $this->em;\n    }\n\n    /* --------------------------------------------------------------- */\n\n    /**\n     * Provides aditional initialization for the service.\n     */\n    protected abstract function _init_();\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Implementation/AEntityServiceDoctrine.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Implementation;\n\nuse Doctrine\\ORM\\QueryBuilder;\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Service\\IEntityService;\nuse Newscoop\\Service\\Model\\Search\\ColumnOrder;\nuse Newscoop\\Service\\Model\\Search\\ColumnOrderLike;\nuse Newscoop\\Utils\\Validation;\nuse Newscoop\\Service\\Resource\\ResourceId;\nuse Newscoop\\Service\\Model\\Search\\Column;\nuse Newscoop\\Service\\Model\\Search\\Search;\nuse Newscoop\\Service\\Implementation\\AEntityBaseServiceDoctrine;\n\n/**\n * Provides the services implementation for the themes.\n */\nabstract class AEntityServiceDoctrine extends AEntityBaseServiceDoctrine implements IEntityService\n{\n\n\t/** @var string */\n\tprotected $searchClassName;\n\n\t/* ------------------------------- */\n\n\t/**\n\t * Construct the service base d on the provided resource id.\n\t * @param ResourceId $id\n\t * \t\tThe resource id, not null not empty\n\t */\n\tfunction __construct(ResourceId $id)\n\t{\n            parent::__construct($id);\n            if(is_null($this->searchClassName)){\n\t\t\tthrow \\Exception(\"Please provide a search class name to be used.\");\n\t\t}\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\n\tfunction getCount(Search $search = NULL)\n\t{\n\t\t$qb = $this->getManager()->createQueryBuilder();\n\n\t\t$qb->select('COUNT('.self::ALIAS.')')->from($this->entityClassName, self::ALIAS);\n\n\t\tif($search !== NULL){\n\t\t\tif(get_class($search) !== $this->searchClassName){\n\t\t\t\tthrow new \\Exception(\"The search needs to be a '.$this->searchClassName.' instance.\");\n\t\t\t}\n\t\t\t$this->processInterogation($search, $qb);\n\t\t}\n\n\t\t$result = $qb->getQuery()->getResult();\n\t\treturn (int) $result[0][1];\n\t}\n\n\tfunction getEntities(Search $search = NULL, $offset = 0, $limit = -1)\n\t{\n\t\t$qb = $this->getManager()->createQueryBuilder();\n\n\t\t$qb->select(self::ALIAS)->from($this->entityClassName, self::ALIAS);\n\n\t\tif($search !== NULL){\n\t\t\tif(get_class($search) !== $this->searchClassName){\n\t\t\t\tthrow new \\Exception(\"The search needs to be a '.$this->searchClassName.' instance.\");\n\t\t\t}\n\t\t\t$this->processInterogation($search, $qb);\n\t\t\t$this->processOrder($search, $qb);\n\t\t}\n\n\t\tif($limit >= 0){\n\t\t\t$qb->setFirstResult($offset);\n\t\t\t$qb->setMaxResults($limit);\n\t\t}\n\n\t\treturn $qb->getQuery()->getResult();\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\n\t/**\n\t * Builds on to the provided query builder the interogations that will reflect the provided search object.\n\t *\n\t * @param Search $search\n\t * \t\tThe search from which the query is build, if the search does not reflect any interogation\n\t * \t\tno actions needs to be taken, *(not null not empty).\n\t *\n\t * @param QueryBuilder $qb\n\t * \t\tThe Doctrine query builder to be constructed on, *(not null not empty).\n\t */\n\tprotected function processInterogation(Search $search, QueryBuilder $qb){\n\t\tforeach ($search->getAllColumns() as $column){\n\t\t\t/** @var $column Newscoop\\Service\\Model\\Search\\ColumnOrderLike */\n\t\t\tif($column instanceof ColumnOrderLike){\n\t\t\t\t$like = $column->getLike();\n\t\t\t\tif(!empty($like)){\n\t\t\t\t\t$name = $this->map($search, $column);\n\t\t\t\t\t$field = self::ALIAS.'.'.$name;\n\n\t\t\t\t\t$qb->andWhere($field.' like :'.$name);\n\t\t\t\t\t$qb->setParameter($name, $like);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t *  Builds on to the provided query builder the ordering that will reflect the provided search object.\n\t *\n\t * @param Search $search\n\t * \t\tThe search from which the query is build, if the search does not reflect any ordering\n\t * \t\tno actions needs to be taken, *(not null not empty).\n\t *\n\t * @param QueryBuilder $qb\n\t * \t\tThe Doctrine query builder to be constructed on, *(not null not empty).\n\t */\n\tprotected function processOrder(Search $search, QueryBuilder $qb){\n\t\tforeach ($search->getOrderedBy() as $column){\n\t\t\t/** @var $column Newscoop\\Service\\Model\\Search\\ColumnOrder */\n\t\t\tif($column instanceof ColumnOrder){\n\t\t\t\t$field = self::ALIAS.'.'.$this->map($search, $column);\n\t\t\t\tif($column->isOrderAscending() === TRUE){\n\t\t\t\t\t$order = 'ASC';\n\t\t\t\t} else {\n\t\t\t\t\t$order = 'DESC';\n\t\t\t\t}\n\n\t\t\t\t$qb->addOrderBy($field, $order);\n\t\t\t}\n\t\t}\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Maps a search column to an actual doctrine field name.\n\t *\n\t * @param Search $search\n\t * \t\tThe search object containing the column, *(not null not empty).\n\t *\n\t * @param Column $column\n\t * \t\tThe column for which to get the doctrine field name, *(not null not empty).\n\t *\n\t * @return string\n\t * \t\tThe doctrine field name.\n\t */\n\tprotected abstract function map(Search $search, Column $column);\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Implementation/ArticleTypeServiceDoctrine.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Implementation;\n\nuse Newscoop\\Service\\IArticleTypeService,\n    Newscoop\\Entity\\ArticleType,\n    Newscoop\\Utils\\Validation,\n    Newscoop\\Service\\Resource\\ResourceId,\n    Newscoop\\Entity\\ArticleTypeField;\n\nclass ArticleTypeServiceDoctrine implements IArticleTypeService\n{\n\n    /**\n     * query alias for table\n     */\n    const ALIAS = 'at';\n\n    /**\n     * @var Newscoop\\Service\\Resource\\ResourceId\n     */\n    protected $id;\n\n    /**\n     * @var Doctrine\\ORM\\EntityManager\n     */\n    protected $em = NULL;\n\n    /**\n     * Construct the service base d on the provided resource id.\n     * @param ResourceId $id\n     * The resource id, not null not empty\n     */\n    public function __construct(ResourceId $id)\n    {\n        Validation::notEmpty( $id, 'id' );\n        $this->id = $id;\n\n     //$this->_init();\n    }\n\n    /**\n     * Provides the resource id.\n     *\n     * @return Newscoop\\Services\\Resource\\ResourceId\n     * The resource id.\n     */\n    protected function getResourceId()\n    {\n        return $this->id;\n    }\n\n    /** Provides the dictrine entity manager.\n     *\n     * @return Doctrine\\ORM\\EntityManager\n     * The doctrine entity manager.\n     */\n    protected function getManager()\n    {\n        if ($this->em === NULL) {\n            $this->em = \\Zend_Registry::get('container')->getService('em');\n        }\n        return $this->em;\n    }\n\n    public function findAllTypes()\n    {\n        $query = $this->getManager()->getRepository('Newscoop\\Entity\\ArticleType')->getAllTypes();\n        return $query->getResult();\n    }\n\n    public function findFields(ArticleType $type)\n    {\n        $query = $this->getManager()->getRepository('Newscoop\\Entity\\ArticleTypeField')->getFieldsForType($type);\n\n        /**\n         * @todo at refactor @see hack from \\Newscoop\\Entity\\ArticleTypeField\n         */\n        foreach(( $results = $query->getResult() ) as $atf ) {\n            $atf->setArticleType( $type );\n        }\n        return $results;\n    }\n\n    public function findFieldByName(ArticleType $type, $name)\n    {\n        $qb = $this->getManager()->createQueryBuilder();\n        $qb ->select( self::ALIAS )\n            ->from( '\\Newscoop\\Entity\\ArticleTypeField', self::ALIAS )\n            ->where\n            (\n                self::ALIAS . '.typeHack = ?1' . ' AND '\n            .   self::ALIAS . '.name IS NOT NULL' . ' AND '\n            .   self::ALIAS . \".name <> 'NULL' AND \"\n            .   self::ALIAS . '.name = ?2'\n            )\n            ->setParameter( 1, $type )\n            ->setParameter( 2, $name );\n\n        /**\n         * @todo at refactor @see hack from \\Newscoop\\Entity\\ArticleTypeField\n         */\n        $atf = current( $qb->getQuery()->getResult() );\n        if( !$atf )\n            return null;\n        $atf->setArticleType( $type );\n        return $atf;\n    }\n\n    public function findTypeByName($name)\n    {\n        $qb = $this->getManager()->createQueryBuilder();\n\n        $qb ->select( self::ALIAS )\n            ->from( '\\Newscoop\\Entity\\ArticleType', self::ALIAS )\n            // TODO get legacy sql thing with string 'null' out when time comes\n            ->where( \" ( \" . self::ALIAS . \".fieldName IS NULL OR \" . self::ALIAS . \".fieldName = 'NULL' ) AND \" . self::ALIAS . '.name = ?1' )->setParameter( 1, $name );\n\n        if( !( ( $res = @current( $qb->getQuery()->getResult() ) ) instanceof ArticleType ) )\n            return null;\n        return $res;\n    }\n\n    /**\n     * Creates an article type\n     * @param string $name the name of the new article type, not null\n     * @return Newscoop\\Entity\\ArticleType\n     * @throws PDOException probably if duplicate values\n     */\n    public function create( $name )\n    {\n        $ret = $this->_create( $name );\n        $this->getManager()->flush();\n        return $ret;\n    }\n\n    /**\n     * @see Newscoop\\Service\\Implementation\\ArticleTypeServiceDoctrine::create()\n     */\n    private function _create( $name )\n    {\n        Validation::notEmpty( $name, 'name' );\n\n        $artType = new ArticleType();\n        $artType->setName( $name );\n\n        $em = $this->getManager();\n        $em->persist( $artType );\n\n        return $artType;\n    }\n\n\t/**\n     * Creates a field\n     *\n     * @param string $name the name of the article type field, not null\n     *\n     * @param Newscoop\\Entity\\ArticleType $name\n     * \t\tthe name of the article type field, not null\n     *\n     * @param array $props properies of the field\n     * \t\t@see Newscoop\\Entity\\ArticleType\n     *\n     * @return Newscoop\\Entity\\ArticleTypeField\n     * @throws PDOException probably if duplicate values\n     */\n    public function createField( $name, ArticleType $type, $props = null )\n    {\n        $ret = $this->createField( $name, $type, $props );\n        $this->getManager()->flush();\n        return $ret;\n    }\n\n    /**\n     * @see Newscoop\\Service\\Implementation\\ArticleTypeServiceDoctrine::createField()\n     */\n    private function _createField( $name, ArticleType $type, $props = null )\n    {\n        Validation::notEmpty( $name, 'name' );\n\n        $artField = new ArticleTypeField();\n        // TODO hack hack hack\n        $artField->setArticleType($type)->setArticleTypeHack($type)->setName($name);\n        if( is_array( $props ) ) {\n            foreach( $props as $prop => $val )\n            {\n                $setProp = \"set\".ucfirst( $prop );\n                $artField->$setProp( $val );\n            }\n        }\n\n        $em = $this->getManager();\n        $em->persist( $artField );\n\n        return $artField;\n    }\n\n    /**\n     * Creates more article types\n     * @param array $articleTypes the array of types, optionally with fields\n     * \t\t[ typeName => [ fields : [ name : fieldName, parentType : typeName, ignore : bool ], [...] ], [...] ]\n     * @see self::create()\n     */\n    public function createMany( $articleTypes )\n    {\n\n        Validation::notEmpty( $articleTypes, 'articleTypes' );\n\n        foreach( $articleTypes as $typeName => $type )\n        {\n            $artType = $this->_create( $typeName );\n            if( isset($type['fields']) && is_array($type['fields']) ) {\n                foreach( $type['fields'] as $field ) {\n                    $this->_createField( $field['name'], $artType );\n                }\n            }\n        }\n\n        try\n        {\n            $this->getManager()->flush();\n        }\n        catch( \\PDOException $e )\n        {\n            // duplicate keys, no worries\n            if( $e->getCode() == 23000 && strpos( $e->getMessage(), 'Duplicate' ) !== false ) {\n                return true;\n            }\n            throw $e;\n        }\n        catch( \\Exception $e )\n        {\n            throw $e;\n        }\n        return true;\n    }\n\n    public function getCount(Search $search = NULL)\n    {\n        return null;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Implementation/ErrorHandlerOnLog.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Implementation;\n\nuse Newscoop\\Utils\\Validation;\nuse Newscoop\\Service\\IErrorHandler;\n\n/**\n * Provides the services implementation for the Outputs.\n */\nclass ErrorHandlerOnLog implements IErrorHandler\n{\n\n\tconst PLACE_HOLDER = '$'; \n\tconst REGEX_PLACE_HOLDER = '([\\$]{1}[1-9]+)';\n\t\n\t/* --------------------------------------------------------------- */\n\n\tfunction warning($key)\n\t{\n\t\tValidation::notEmpty($key, 'key');\n\t\tsyslog(LOG_WARNING, $this->compile($key, array_slice(func_get_args(), 1)));\n\t}\n\t\n\tfunction error($key)\n\t{\n\t\tValidation::notEmpty($key, 'key');\n\t\tsyslog(LOG_ERR, $this->compile($key, array_slice(func_get_args(), 1)));\n\t}\n\n\t/* --------------------------------------------------------------- */\n\t\n\tprotected function compile($key, array $params)\n\t{\n\t\t$matches = array();\n\t\tpreg_match_all(self::REGEX_PLACE_HOLDER, $key, $matches);\n\t\t$count = count($matches[0]);\n\t\t\n\t\tif($count != count($params)){\n\t\t\tthrow new \\Exception(\"Unmatched parameters, expected '$count' based on the placeholders an got '.count($params).'.\");\n\t\t}\n\t\t\n\t\t$txt = $key;\n\t\t$k = 1;\n\t\tforeach ($params as $param){\t\t\t\n\t\t\t$txt = str_replace(self::PLACE_HOLDER.$k++, $param, $txt);\n\t\t}\n\t\treturn $txt;\n\t}\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Implementation/Exception/FailedException.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Implementation\\Exception;\n\n/**\n * This exception is thrown when a service requirement fails, usually this type of exception only signals failing\n * without a specific message, the message will be logged under the error handler.\n */\nuse Newscoop\\Utils\\Validation;\n\nclass FailedException extends \\Exception\n{\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Implementation/Exception/XMLMissingAttribueException.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Implementation\\Exception;\n\n/**\n * This exception is thrown when an attribute is missing but required.\n */\nuse Newscoop\\Utils\\Validation;\n\nclass XMLMissingAttribueException extends \\Exception\n{\n\n\t/** @var string */\n\tprotected $attributeName;\n\n\tpublic function __construct($attributeName)\n\t{\n\t\tValidation::notEmpty($attributeName, 'attributeName');\n\t\t$this->attributeName = $attributeName;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the attribute name that is corrupted.\n\t * \n\t * @return string\n\t * \t\tThe attribute name, not null.\n\t */\n\tfunction getAttributeName()\n\t{\n\t\treturn $this->attributeName;\n\t}\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Implementation/IssueServiceDoctrine.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Implementation;\n\nuse Newscoop\\Service\\IIssueService;\nuse Newscoop\\Service\\Model\\Search\\Search;\nuse Newscoop\\Service\\Model\\Search\\Column;\nuse Newscoop\\Service\\Model\\SearchIssue;\nuse Newscoop\\Entity\\Issue;\n\n/**\n * Provides the services implementation for the Issues.\n */\nclass IssueServiceDoctrine extends AEntityServiceDoctrine implements IIssueService\n{\n\n\tprotected function _init_(){\n\t\t$this->entityClassName = Issue::NAME;\n\t\t$this->searchClassName = SearchIssue::NAME;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\tprotected function map(Search $search, Column $column)\n\t{\n\t\treturn $this->_map($search, $column);\n\t}\n\n\tprotected function _map(SearchIssue $serch, Column $column)\n\t{\n\t\tif($s->NAME === $col){\n\t\t\treturn 'name';\n\t\t}\n\t\tthrow new \\Exception(\"Unknown column provided.\");\n\t}\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Implementation/LanguageServiceDoctrine.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Implementation;\n\nuse Newscoop\\Service\\ILanguageService;\nuse Newscoop\\Service\\Model\\Search\\Search;\nuse Newscoop\\Service\\Model\\Search\\Column;\nuse Newscoop\\Service\\Model\\SearchLanguage;\nuse Newscoop\\Entity\\Language;\n\n\n/**\n * Provides the services implementation for the themes.\n */\nclass LanguageServiceDoctrine extends AEntityServiceDoctrine implements ILanguageService\n{\n\n\tprotected function _init_()\n\t{\n\t\t$this->entityClassName = Language::NAME;\n\t\t$this->searchClassName = SearchLanguage::NAME;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\tprotected function map(Search $search, Column $column)\n\t{\n\t\treturn $this->_map($search, $column);\n\t}\n\n\tprotected function _map(SearchLanguage $s, Column $col)\n\t{\n\t\tif($s->NAME === $col){\n\t\t\treturn 'name';\n\t\t}\n\t\tthrow new \\Exception(\"Unknown column provided.\");\n\t}\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Implementation/OutputServiceDoctrine.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Implementation;\n\nuse Newscoop\\Utils\\Validation;\nuse Newscoop\\Service\\IOutputService;\nuse Newscoop\\Entity\\Output;\nuse Newscoop\\Service\\Model\\Search\\Search;\nuse Newscoop\\Service\\Model\\Search\\Column;\nuse Newscoop\\Service\\Model\\SearchOutput;\n\n/**\n * Provides the services implementation for the Outputs.\n */\nclass OutputServiceDoctrine extends AEntityServiceDoctrine implements IOutputService\n{\n\n\tprotected function _init_(){\n\t\t$this->entityClassName = Output::NAME;\n\t\t$this->searchClassName = SearchOutput::NAME;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\tfunction findByName($name)\n\t{\n\t\tValidation::notEmpty($name, 'name');\n\t\t$em = $this->getManager();\n\t\t$outputs = $em->getRepository($this->entityClassName)->findByName($name);\n\t\tif(isset($outputs) && count($outputs) > 0){\n\t\t\treturn $outputs[0];\n\t\t}\n\t\treturn NULL;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\tprotected function map(Search $search, Column $column)\n\t{\n\t\treturn $this->_map($search, $column);\n\t}\n\n\tprotected function _map(SearchOutput $s, Column $col)\n\t{\n\t\tif($s->NAME === $col){\n\t\t\treturn 'name';\n\t\t}\n\t\tthrow new \\Exception(\"Unknown column provided.\");\n\t}\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Implementation/OutputSettingIssueServiceDoctrine.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Implementation;\n\nuse Newscoop\\Utils\\Validation;\nuse Newscoop\\Service\\IOutputSettingIssueService;\nuse Newscoop\\Service\\Implementation\\AEntityBaseServiceDoctrine;\nuse Newscoop\\Entity\\Output\\OutputSettingsIssue;\nuse Newscoop\\Entity\\Output;\nuse Newscoop\\Entity\\Issue;\n\n/**\n * Provides the services implementation for the Outputs.\n */\nclass OutputSettingIssueServiceDoctrine extends AEntityBaseServiceDoctrine\nimplements IOutputSettingIssueService\n{\n\n    /** @var Newscoop\\Service\\IOutputService */\n    protected $outputService = NULL;\n\n    /**\n     * Provides the ouput service.\n     *\n     * @return Newscoop\\Service\\IOutputService\n     * \t\tThe service service to be used by this controller.\n     */\n    public function getOutputService()\n    {\n        if ($this->outputService === NULL) {\n            $this->outputService = $this->getResourceId()->getService(IOutputService::NAME);\n        }\n        return $this->outputService;\n    }\n\n    protected function _init_()\n    {\n        $this->entityClassName = OutputSettingsIssue::NAME_1;\n    }\n\n    /* --------------------------------------------------------------- */\n\n    /**\n     * Provides the Output Settings Issue for the provided issue\n     *\n     * @param Issue|int $issue\n     * \t\tThe issue to be searched, not null, not empty.\n     *\n     * @return array Newscoop\\Entity\\Output\\OutputSettingsIssue\n     * \t\tThe Output Setting, empty array if no Output Setting could be found for the provided issue.\n     */\n    public function findByIssue($issue)\n    {\n        if ($issue instanceof Issue) {\n            $issue = $issue->getId();\n        }\n        $em = $this->getManager();\n        $repository = $em->getRepository($this->entityClassName);\n        $resources = $repository->findByIssue($issue);\n        if (isset($resources) && count($resources) > 0) {\n            return $resources;\n        }\n        return array();\n    }\n\n    /**\n     * Provides the Output Settings Issue for the provided issue and output\n     *\n     * @param Issue|int $issue\n     * \t\tThe issue to be searched, not null, not empty.\n\n     * @param Output|int|string $output\n     * \t\tThe output to be searched, not null, not empty.\n     *\n     * @return array Newscoop\\Entity\\Output\\OutputSettingsIssue\n     * \t\tThe Output Setting, NULL if no Output Setting could be found for the provided issue.\n     */\n    public function findByIssueAndOutput($issue, $output)\n    {\n        /** Get the id if an Output object is supplied */\n        /* @var $output Output */\n        $outputId = $output;\n        if ($output instanceof Output) {\n            $outputId = $output->getId();\n        }\n        /** Get the id if an Issue object is supplied */\n        /* @var $issue Issue */\n        $issueId = $issue;\n        if ($issue instanceof Issue) {\n            $issueId = $issue->getId();\n        }\n\n        $em = $this->getManager();\n        $repository = $em->getRepository($this->entityClassName);\n        $resources = $repository->findBy(array('issue' => $issueId, 'output' => $outputId));\n        if (!empty($resources)) {\n            return $resources[0];\n        }\n        return NULL;\n    }\n\n    public function isThemeUsed($theme, &$themes = NULL)\n    {\n        Validation::notEmpty($theme, 'theme');\n        if($theme instanceof Theme){\n            $themePath = $theme->getPath();\n        } else {\n            $themePath = $theme;\n        }\n\n        if ($themes === NULL) {\n            $themes = array();\n        }\n\n        $em = $this->getManager();\n        // we need to find if the theme is used by anyoane.\n        $q = $em->createQueryBuilder();\n        $q->select('i.name')\n            ->from(OutputSettingsIssue::NAME_1, 'osi')\n            ->join('osi.issue', 'i')\n            ->join('osi.themePath', 'th')\n            ->where('th.path = :themePath');\n\n        $q->setParameter('themePath', $themePath);\n        foreach ($q->getQuery()->getResult() as $row) {\n            $themes[] = $row['name'];\n        }\n\n        return sizeof($themes) > 0;\n    }\n\n    public function getUnthemedIssues($publication)\n    {\n        Validation::notEmpty($publication, 'publication');\n\n        $issues = array();\n\n        $em = $this->getManager();\n        // we need to find if the theme is used by anyoane.\n        $q = $em->createQueryBuilder();\n        $q->select('iss')\n            ->from(Issue::NAME, 'iss')\n            ->leftJoin('iss.outputSettingsIssues', 'osi')\n            ->where('iss.publication = :publication')\n            ->andWhere('osi.id IS NULL')\n            ->setParameter('publication', $publication);\n\n        $issues = $q->getQuery()->getResult();\n        return $issues;\n    }\n\n    /**\n     * Inserts an ouput setting issue\n     *\n     * @param OutputSettingsIssue $outputSettingsIssue\n     */\n    public function insert(OutputSettingsIssue $outputSettingsIssue)\n    {\n        $em = $this->getManager();\n        $outputSettingsIssue->setId(null);\n        $em->persist($outputSettingsIssue);\n        $em->flush();\n    }\n\n    /**\n     * Update an ouput setting issue\n     *\n     * @param OutputSettingsIssue $outputSettingsIssue\n     */\n    public function update(OutputSettingsIssue $outputSettingsIssue)\n    {\n        $em = $this->getManager();\n        $em->persist($outputSettingsIssue);\n        $em->flush();\n    }\n\n    /**\n     * Delete an ouput setting issue\n     *\n     * @param OutputSettingsIssue $outputSettingsIssue\n     */\n    public function delete(OutputSettingsIssue $outputSettingsIssue)\n    {\n        $em = $this->getManager();\n        $em->remove($outputSettingsIssue);\n        $em->flush();\n    }\n\n    /* --------------------------------------------------------------- */\n\n    protected function map(Search $search, Column $column)\n    {\n        return $this->_map($search, $column);\n    }\n\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Implementation/OutputSettingSectionServiceDoctrine.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Implementation;\n\nuse Newscoop\\Utils\\Validation;\nuse Newscoop\\Service\\IOutputSettingSectionService;\nuse Newscoop\\Service\\IOutputService;\nuse Newscoop\\Service\\Implementation\\AEntityBaseServiceDoctrine;\nuse Newscoop\\Entity\\Output\\OutputSettingsSection;\nuse Newscoop\\Entity\\Section;\nuse Newscoop\\Entity\\Output;\n\n/**\n * Provides the services implementation for the Outputs.\n */\nclass OutputSettingSectionServiceDoctrine extends AEntityBaseServiceDoctrine\n        implements IOutputSettingSectionService\n{\n\n    /** @var Newscoop\\Service\\IOutputService */\n    protected $outputService = NULL;\n\n    /**\n     * Provides the ouput service.\n     *\n     * @return Newscoop\\Service\\IOutputService\n     * \t\tThe service service to be used by this controller.\n     */\n    public function getOutputService()\n    {\n        if ($this->outputService === NULL) {\n            $this->outputService = $this->getResourceId()->getService(IOutputService::NAME);\n        }\n        return $this->outputService;\n    }\n\n    protected function _init_()\n    {\n        $this->entityClassName = OutputSettingsSection::NAME_1;\n    }\n\n    /* --------------------------------------------------------------- */\n\n    /**\n     * Provides the Output Settings that has the provided Section.\n     *\n     * @param Section|int $section\n     * \t\tThe section to be searched, not null, not empty.\n     * @param Output|int|string $output\n     *\n     * @return Newscoop\\Entity\\OutputSettingsSection\n     * \t\tThe Output Setting, NULL if no Output Setting could be found for the provided section.\n     */\n    public function findBySectionAndOutput($section, $output)\n    {\n        /** Get the id if an Output object is supplied */\n        /* @var $output Output */\n        $outputId = $output;\n        if ($output instanceof Output) {\n            $outputId = $output->getId();\n        }\n\n        /** Get the id if an Section object is supplied */\n        /* @var $section Section */\n        $sectionId = $section;\n        if ($section instanceof Section) {\n            $sectionId = $section->getId();\n        }\n\n        $em = $this->getManager();\n        $repository = $em->getRepository($this->entityClassName);\n        $resources = $repository->findBy(array('section' => $sectionId, 'output' => $outputId));\n        if (!empty($resources)) {\n            return $resources[0];\n        }\n        return NULL;\n    }\n\n    /**\n     * Provides the Output Settings that has the provided Section.\n     *\n     * @param Section|int $section\n     * \t\tThe section to be searched, not null, not empty.\n     *\n     * @return Newscoop\\Entity\\OutputSettingsSection\n     * \t\tThe Output Setting, empty array if no Output Setting could be found for the provided section.\n     */\n    public function findBySection($section)\n    {\n        if ($section instanceof Section) {\n            $section = $section->getId();\n        }\n        $em = $this->getManager();\n        $repository = $em->getRepository($this->entityClassName);\n        $resources = $repository->findBySection($section);\n        if (isset($resources) && count($resources) > 0) {\n            return $resources;\n        }\n        return array();\n    }\n\n    /**\n     * Update an ouput setting section\n     *\n     * @param OutputSettingsSection $outputSettingsSection\n     */\n    public function update(OutputSettingsSection $outputSettingsSection)\n    {\n        $em = $this->getManager();\n        $em->persist($outputSettingsSection);\n        $em->flush();\n    }\n\n    /**\n     * Inserts an ouput setting section\n     *\n     * @param OutputSettingsSection $outputSettingsSection\n     */\n    public function insert(OutputSettingsSection $outputSettingsSection)\n    {\n        $em = $this->getManager();\n        $em->persist($outputSettingsSection);\n        $em->flush();\n    }\n\n    /**\n     * Delete an ouput setting section\n     *\n     * @param OutputSettingsSection $outputSettingsSection\n     */\n    public function delete(OutputSettingsSection $outputSettingsSection)\n    {\n        $em = $this->getManager();\n        $em->remove($outputSettingsSection);\n        $em->flush();\n    }\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Implementation/PublicationServiceDoctrine.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Implementation;\n\nuse Newscoop\\Service\\IPublicationService;\nuse Newscoop\\Service\\Model\\Search\\Search;\nuse Newscoop\\Service\\Model\\Search\\Column;\nuse Newscoop\\Service\\Model\\SearchPublication;\nuse Newscoop\\Entity\\Publication;\n\n/**\n * Provides the services implementation for the Publications.\n */\nclass PublicationServiceDoctrine extends AEntityServiceDoctrine implements IPublicationService\n{\n\n\tprotected function _init_(){\n\t\t$this->entityClassName = Publication::NAME;\n\t\t$this->searchClassName = SearchPublication::NAME;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\tprotected function map(Search $search, Column $column)\n\t{\n\t\treturn $this->_map($search, $column);\n\t}\n\n\tprotected function _map(SearchPublication $s, Column $col)\n\t{\n\t\tif($s->NAME === $col){\n\t\t\treturn 'name';\n\t\t}\n\t\tthrow new \\Exception(\"Unknown column provided.\");\n\t}\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Implementation/SectionServiceDoctrine.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Implementation;\n\nuse Newscoop\\Service\\ISectionService;\nuse Newscoop\\Service\\Model\\Search\\Search;\nuse Newscoop\\Service\\Model\\Search\\Column;\nuse Newscoop\\Service\\Model\\SearchSection;\nuse Newscoop\\Entity\\Section;\n\n/**\n * Provides the services implementation for the Issues.\n */\nclass SectionServiceDoctrine extends AEntityServiceDoctrine implements ISectionService\n{\n\n\tprotected function _init_(){\n\t\t$this->entityClassName = Section::NAME;\n\t\t$this->searchClassName = SearchSection::NAME;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\tprotected function map(Search $search, Column $column)\n\t{\n\t\treturn $this->_map($search, $column);\n\t}\n\n\tprotected function _map(SearchSection $serch, Column $column)\n\t{\n\t\tif($s->NAME === $col){\n\t\t\treturn 'name';\n\t\t}\n\t\tthrow new \\Exception(\"Unknown column provided.\");\n\t}\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Implementation/SyncResourceServiceDoctrine.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Implementation;\n\nuse Newscoop\\Utils\\Validation;\nuse Newscoop\\Service\\Model\\Search\\Column;\nuse Newscoop\\Service\\Model\\Search\\Search;\nuse Newscoop\\Entity\\Resource;\nuse Newscoop\\Service\\Model\\SearchResource;\nuse Newscoop\\Service\\ISyncResourceService;\n\n/**\n * Provides the services implementation for the Outputs.\n */\nclass SyncResourceServiceDoctrine extends AEntityServiceDoctrine\n        implements ISyncResourceService\n{\n    /**\n     * Provides the name to be used on resources that contain theme path.\n     */\n    const THEME_PATH_RSC_NAME = 'theme-path';\n\n    /* --------------------------------------------------------------- */\n\n    protected function _init_()\n    {\n        $this->entityClassName = Resource::NAME;\n        $this->searchClassName = SearchResource::NAME;\n    }\n\n    /* --------------------------------------------------------------- */\n\n    function getSynchronized(Resource $resource)\n    {\n        Validation::notEmpty($resource, 'resource');\n        Validation::notEmpty($resource->getPath(), 'resource.path');\n\n        $em = $this->getManager();\n        if ($resource->getId() === NULL) {\n            $resources = $em->getRepository($this->entityClassName)->findByPath($resource->getPath());\n            if (isset($resources) && count($resources) > 0) {\n                return $resources[0];\n            }\n            $resource->setName('buildPage');\n            $em->persist($resource);\n            $em->flush();\n            return $resource;\n        }\n        return $resource;\n    }\n\n    function findByPath($path)\n    {\n        Validation::notEmpty($path, 'path');\n        $em = $this->getManager();\n        $resources = $em->getRepository($this->entityClassName)->findByPath($path);\n        if (isset($resources) && count($resources) > 0) {\n            return $resources[0];\n        }\n        return NULL;\n    }\n\n    function findByPathOrId($pathOrId)\n    {\n        Validation::notEmpty($pathOrId, 'path');\n        $em = $this->getManager();\n        if (is_numeric($pathOrId)) {\n            $resources = $em->getRepository($this->entityClassName)->findById($pathOrId);\n        } else {\n            $resources = $em->getRepository($this->entityClassName)->findByPath($pathOrId);\n        }\n        if (isset($resources) && count($resources) > 0) {\n            return $resources[0];\n        }\n        return NULL;\n    }\n\n    function getResource($name, $path)\n    {\n        Validation::notEmpty($name, 'name');\n        Validation::notEmpty($path, 'path');\n\n        $pathRsc = new Resource();\n        $pathRsc->setName($name);\n        $pathRsc->setPath($path);\n        return $this->getSynchronized($pathRsc);\n    }\n\n    function getThemePath($themePath)\n    {\n        Validation::notEmpty($themePath, 'themePath');\n\n        $pathRsc = new Resource();\n        $pathRsc->setName(self::THEME_PATH_RSC_NAME);\n        $pathRsc->setPath($themePath);\n        return $this->getSynchronized($pathRsc);\n    }\n\n    function clearAllFor($path)\n    {\n        Validation::notEmpty($path, 'path');\n\n        $em = $this->getManager();\n        $q = $em->createQueryBuilder();\n        $q->delete(Resource::NAME, 'rsc')\n                ->where('rsc.path like :path');\n\n        $q->setParameter('path', $path . '%');\n\n        $q->getQuery()->execute();\n    }\n\n    /* --------------------------------------------------------------- */\n\n    protected function map(Search $search, Column $column)\n    {\n        return $this->_map($search, $column);\n    }\n\n    protected function _map(SearchResource $s, Column $col)\n    {\n        if ($s->NAME === $col) {\n            return 'name';\n        }\n        if ($s->PATH === $col) {\n            return 'path';\n        }\n        throw new \\Exception(\"Unknown column provided.\");\n    }\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Implementation/TemplateSearchServiceDoctrine.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Implementation;\n\nuse Doctrine\\ORM\\Query;\nuse Newscoop\\Service\\ITemplateSearchService;\nuse Newscoop\\Service\\IOutputSettingIssueService;\nuse Newscoop\\Service\\IOutputSettingSectionService;\nuse Newscoop\\Service\\ISectionService;\nuse Newscoop\\Service\\IIssueService;\nuse Newscoop\\Entity\\Issue;\nuse Newscoop\\Entity\\Section;\nuse Newscoop\\Entity\\Resource;\nuse Newscoop\\Entity\\Output;\nuse Newscoop\\Entity\\Output\\OutputSettingsIssue;\nuse Newscoop\\Entity\\Output\\OutputSettingsSection;\nuse Newscoop\\Entity\\Output\\OutputSettingsTheme;\nuse Newscoop\\Service\\Implementation\\AEntityBaseServiceDoctrine;\n\n/**\n * Provides the services for Searching a template.\n */\nclass TemplateSearchServiceDoctrine extends AEntityBaseServiceDoctrine\n        implements ITemplateSearchService\n{\n    /* --------------------------------------------------------------- */\n\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em = NULL;\n    /** @var Newscoop\\Service\\IIssueService */\n    protected $issueService = NULL;\n    /** @var Newscoop\\Service\\ISectionService */\n    protected $sectionService = NULL;\n    /** @var Newscoop\\Service\\IOutputSettingSectionService */\n    protected $outputSettingSectionService = NULL;\n    /** @var Newscoop\\Service\\IOutputSettingIssueService */\n    protected $outputSettingIssueService = NULL;\n\n    /* --------------------------------------------------------------- */\n    /** @var string */\n    public $themesFolder;\n\n    /* --------------------------------------------------------------- */\n    protected function _init_()\n    {\n        $this->entityClassName = OutputSettingsTheme::NAME;\n    }\n\n    /**\n     * Provides the Output  setting service.\n     *\n     * @return Newscoop\\Service\\IOutputSettingSectionService\n     * \t\tThe output setting section service to be used by this controller.\n     */\n    public function getOutputSettingSectionService()\n    {\n        if ($this->outputSettingSectionService === NULL) {\n            $this->outputSettingSectionService = $this->getResourceId()->getService(IOutputSettingSectionService::NAME);\n        }\n        return $this->outputSettingSectionService;\n    }\n\n    /**\n     * Provides the Output setting issue service.\n     *\n     * @return IOutputSettingIssueService\n     * \t\tThe output setting issue service to be used by this controller.\n     */\n    public function getOutputSettingIssueService()\n    {\n        if ($this->outputSettingIssueService === NULL) {\n            $this->outputSettingIssueService = $this->getResourceId()->getService(IOutputSettingIssueService::NAME);\n        }\n        return $this->outputSettingIssueService;\n    }\n\n    /**\n     * Provides the Issue service.\n     *\n     * @return Newscoop\\Service\\IIssueService\n     * \t\tThe issue service to be used by this controller.\n     */\n    public function getIssueService()\n    {\n        if ($this->issueService === NULL) {\n            $this->issueService = $this->getResourceId()->getService(IIssueService::NAME);\n        }\n        return $this->issueService;\n    }\n\n    /**\n     * Provides the Section service.\n     *\n     * @return Newscoop\\Service\\ISectionService\n     * \t\tThe section service to be used by this controller.\n     */\n    public function getSectionService()\n    {\n        if ($this->sectionService === NULL) {\n            $this->sectionService = $this->getResourceId()->getService(ISectionService::NAME);\n        }\n        return $this->sectionService;\n    }\n\n    public function getFrontPage($issue, $output)\n    {\n        /* @var $issue Issue */\n        $issueId = $issue;\n        if ($issue instanceof Issue) {\n            $issueId = $issue->getId();\n        } else {\n            $issue = $this->getIssueService()->getById($issueId);\n        }\n        $publicationId = $issue->getPublicationId();\n\n        $outputId = $output;\n        if ($output instanceof Output) {\n            $outputId = $output->getId();\n        }\n        $em = $this->getManager();\n\n        $q = $em->createQueryBuilder();\n        $q->select(array('oi', 'ot'))\n                ->from(OutputSettingsTheme::NAME, 'ot')\n                ->from(OutputSettingsIssue::NAME_1, 'oi')\n                ->where('ot.themePath = oi.themePath')\n                ->andWhere('ot.publication = :publication')\n                ->andWhere('ot.output = :output')\n                ->andWhere('oi.output = :output')\n                ->andWhere('oi.issue = :issue')\n                ->setParameter('output', $outputId)\n                ->setParameter('issue', $issueId)\n                ->setParameter('publication', $publicationId);\n        $results = $q->getQuery()->getResult();\n        if (count($results) < 2)\n            return '';\n\n        /* @var $outputSettingTheme OutputSettingsTheme */\n        list(, $outputSettingTheme) = each($results);\n        /* @var $outputSettingIssue OutputSettingsIssue */\n        list(, $outputSettingIssue) = each($results);\n\n        if (!is_null($resource = $outputSettingIssue->getFrontPage()))\n            return $this->getResourceFullPath($resource);\n        return $this->getResourceFullPath($outputSettingTheme->getFrontPage());\n    }\n\n    /**\n     * Get the page for error\n     *      to be used as a template.\n     *\n     * @param Issue|Int $issue\n     *      The issue object or the id of the issue for whom the template is needed.\n     * @param Output|int|string $output\n     *      The object Output, the id or the Name of the Output for whom the template is needed.\n     *\n     * @return string\n     *      The full path of the template.\n     */\n    public function getErrorPage($issue, $output)\n    {\n        /* @var $issue Issue */\n        $issueId = $issue;\n        if ($issue instanceof Issue) {\n            $issueId = $issue->getId();\n        } else {\n            $issue = $this->getIssueService()->getById($issueId);\n        }\n        $publicationId = $issue->getPublicationId();\n\n        $outputId = $output;\n        if ($output instanceof Output) {\n            $outputId = $output->getId();\n        }\n        $em = $this->getManager();\n\n        $q = $em->createQueryBuilder();\n        $q->select(array('oi', 'ot'))\n                ->from(OutputSettingsTheme::NAME, 'ot')\n                ->from(OutputSettingsIssue::NAME_1, 'oi')\n                ->where('ot.themePath = oi.themePath')\n                ->andWhere('ot.publication = :publication')\n                ->andWhere('ot.output = :output')\n                ->andWhere('oi.output = :output')\n                ->andWhere('oi.issue = :issue')\n                ->setParameter('output', $outputId)\n                ->setParameter('issue', $issueId)\n                ->setParameter('publication', $publicationId);\n        $results = $q->getQuery()->getResult();\n        if (count($results) < 2)\n            return '';\n\n        /* @var $outputSettingTheme OutputSettingsTheme */\n        list(, $outputSettingTheme) = each($results);\n        /* @var $outputSettingIssue OutputSettingsIssue */\n        list(, $outputSettingIssue) = each($results);\n\n        if (!is_null($resource = $outputSettingIssue->getErrorPage())) {\n            return $this->getResourceFullPath($resource);\n        }\n        return $this->getResourceFullPath($outputSettingTheme->getErrorPage());\n    }\n\n    /**\n     * Get the page for section\n     *      to be used as a template.\n     *\n     * @param Section|Int $section\n     *      The section object or the id of the issue for whom the template is needed.\n     * @param Output|int|string $output\n     *      The object Output, the id or the Name of the Output for whom the template is needed.\n     *\n     *\n     * @return string\n     *      The full path of the template.\n     */\n    public function getSectionPage($section, $output)\n    {\n        /** Get the id if an Output object tis supplied */\n        /* @var $output Output */\n        $outputId = $output;\n        if ($output instanceof Output) {\n            $outputId = $output->getId();\n        }\n\n        /** Get the id if an Section object tis supplied */\n        /* @var $section Section */\n        $sectionId = $section;\n        if ($section instanceof Section) {\n            $sectionId = $section->getId();\n        }\n\n        /* @var $outputSettingSection OutputSettingsSection */\n        $outputSettingSection = $this->getOutputSettingSectionService()->findBySectionAndOutput($sectionId,\n                        $outputId);\n\n        if (!is_null($outputSettingSection) && !is_null($resource = $outputSettingSection->getSectionPage())) {\n            return $this->getResourceFullPath($resource);\n        }\n\n        if (!($section instanceof Section))\n            $section = $this->getSectionService()->findById($section);\n\n        /* @var $issue Issue */\n        $issue = $section->getIssue();\n        $issueId = $issue->getId();\n        $publicationId = $issue->getPublicationId();\n\n        $em = $this->getManager();\n        $q = $em->createQueryBuilder();\n        $q->select(array('oi', 'ot'))\n                ->from(OutputSettingsTheme::NAME, 'ot')\n                ->from(OutputSettingsIssue::NAME_1, 'oi')\n                ->where('ot.themePath = oi.themePath')\n                ->andWhere('ot.publication = :publication')\n                ->andWhere('ot.publication = :publication')\n                ->andWhere('ot.output = :output')\n                ->andWhere('oi.output = :output')\n                ->andWhere('oi.issue = :issue')\n                ->setParameter('output', $outputId)\n                ->setParameter('issue', $issueId)\n                ->setParameter('publication', $publicationId);\n        $results = $q->getQuery()->getResult();\n        if (count($results) < 2)\n            return '';\n\n        /* @var $outputSettingTheme OutputSettingsTheme */\n        list(, $outputSettingTheme) = each($results);\n        /* @var $outputSettingIssue OutputSettingsIssue */\n        list(, $outputSettingIssue) = each($results);\n\n        if (!is_null($resource = $outputSettingIssue->getSectionPage())) {\n            return $this->getResourceFullPath($resource);\n        }\n        return $this->getResourceFullPath($outputSettingTheme->getSectionPage());\n    }\n\n    /**\n     * Get the page for article\n     *      to be used as a template.\n     *\n     * @param Section|Int $section\n     *      The section object or the id of the issue for whom the template is needed.\n     * @param Output|int|string $output\n     *      The object Output, the id or the Name of the Output for whom the template is needed.\n     *\n     * @return string\n     *      The full path of the template.\n     */\n    public function getArticlePage($section, $output)\n    {\n        /** Get the id if an Output object tis supplied */\n        /* @var $output Output */\n        $outputId = $output;\n        if ($output instanceof Output) {\n            $outputId = $output->getId();\n        }\n\n        /** Get the id if an Section object tis supplied */\n        /* @var $section Section */\n        $sectionId = $section;\n        if ($section instanceof Section) {\n            $sectionId = $section->getId();\n        }\n\n        /* @var $outputSettingSection OutputSettingsSection */\n        $outputSettingSection = $this->getOutputSettingSectionService()->findBySectionAndOutput($sectionId,\n                        $outputId);\n\n        if (!is_null($outputSettingSection) && !is_null($resource = $outputSettingSection->getArticlePage())) {\n            return $this->getResourceFullPath($resource);\n        }\n\n        if (!($section instanceof Section))\n            $section = $this->getSectionService()->findById($section);\n\n        /* @var $issue Issue */\n        $issue = $section->getIssue();\n        $issueId = $issue->getId();\n        $publicationId = $issue->getPublicationId();\n\n        $em = $this->getManager();\n        $q = $em->createQueryBuilder();\n        $q->select(array('oi', 'ot'))\n                ->from(OutputSettingsTheme::NAME, 'ot')\n                ->from(OutputSettingsIssue::NAME_1, 'oi')\n                ->where('ot.themePath = oi.themePath')\n                ->andWhere('ot.publication = :publication')\n                ->andWhere('ot.publication = :publication')\n                ->andWhere('ot.output = :output')\n                ->andWhere('oi.output = :output')\n                ->andWhere('oi.issue = :issue')\n                ->setParameter('output', $outputId)\n                ->setParameter('issue', $issueId)\n                ->setParameter('publication', $publicationId);\n        $results = $q->getQuery()->getResult();\n        if (count($results) < 2)\n            return '';\n\n        /* @var $outputSettingTheme OutputSettingsTheme */\n        list(, $outputSettingTheme) = each($results);\n        /* @var $outputSettingIssue OutputSettingsIssue */\n        list(, $outputSettingIssue) = each($results);\n\n        if (!is_null($resource = $outputSettingIssue->getArticlePage())) {\n            return $this->getResourceFullPath($resource);\n        }\n        return $this->getResourceFullPath($outputSettingTheme->getArticlePage());\n    }\n\n    /**\n     * Internal method, get the full path from an resource.\n     *\n     * @param Resource $resource\n     * @return string\n     */\n    protected function getResourceFullPath(Resource $resource)\n    {\n        return $resource->getPath();\n    }\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Implementation/ThemeManagementServiceLocal.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Implementation;\n\nuse Newscoop\\Entity\\ArticleTypeField;\nuse Newscoop\\Service\\ISyncResourceService;\nuse Newscoop\\Entity\\Output\\OutputSettingsTheme;\nuse Newscoop\\Entity\\Output\\OutputSettingsIssue;\nuse Newscoop\\Service\\Exception\\DuplicateNameException;\nuse Newscoop\\Service\\Exception\\RemoveThemeException;\nuse Newscoop\\Version;\nuse Newscoop\\Service\\Implementation\\Exception\\FailedException;\nuse Newscoop\\Service\\Error\\ThemeErrors;\nuse Newscoop\\Service\\IOutputService;\nuse Newscoop\\Service\\IOutputSettingIssueService;\nuse Newscoop\\Entity\\Resource;\nuse Newscoop\\Service\\Model\\SearchTheme;\nuse Newscoop\\Entity\\OutputSettings;\nuse Newscoop\\Entity\\Output;\nuse Newscoop\\Entity\\Theme;\nuse Newscoop\\Entity\\Publication;\nuse Newscoop\\Service\\IThemeManagementService;\nuse Newscoop\\Service\\IArticleTypeService;\nuse Newscoop\\Utils\\Validation;\nuse Newscoop\\Service\\Model\\Search\\Search;\n\n/**\n * Provides the management services implementation for the themes.\n * The implementation relays on the local structure, this means that this service will use also the file system and Doctrine\n * for synchronizing with the database.\n */\nclass ThemeManagementServiceLocal extends ThemeServiceLocalFileSystem implements IThemeManagementService\n{\n\n    /**\n     * Provides the relative folder name where the exported themes are located.\n     */\n    const FOLDER_EXPORTS = 'exports/';\n\n    /**\n     * Provides the relative folder name where the unassigned themes are located.\n     */\n    const FOLDER_UNASSIGNED = 'unassigned';\n\n    /**\n     * Provides the prefix fodler name for the folders that contain themes for a publication.\n     */\n    const FOLDER_PUBLICATION_PREFIX = 'publication_';\n\n    /**\n     * Provides the prefix fodler name for the folders that are themes.\n     */\n    const FOLDER_THEME_PREFIX = 'theme_';\n\n    /**\n     * Provides the template extension.\n     */\n    const FILE_TEMPLATE_EXTENSION = 'tpl';\n\n    const TAG_ROOT = 'theme';\n\n    const TAG_OUTPUT = 'output';\n    const ATTR_OUTPUT_NAME = 'name';\n\n    const TAG_PAGE_FRONT = 'frontPage';\n    const TAG_PAGE_SECTION = 'sectionPage';\n    const TAG_PAGE_ARTICLE = 'articlePage';\n    const TAG_PAGE_ERROR = 'errorPage';\n\n    const TAG_ARTICLE_TYPE = 'articleType';\n    const ATTR_ARTICLE_TYPE_NAME = 'name';\n    const ATTR_ARTICLE_TYPE_FILED_NAME = 'name';\n    const ATTR_ARTICLE_TYPE_FILED_TYPE = 'type';\n    const ATTR_ARTICLE_TYPE_FILED_LENGTH = 'length';\n\n    const ATTR_PAGE_SRC = 'src';\n\n    /* --------------------------------------------------------------- */\n\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em = NULL;\n    /** @var Newscoop\\Service\\IOutputService */\n    protected $outputService = NULL;\n    /** @var Newscoop\\Service\\IOutputSettingIssueService */\n    protected $outputSettingIssueService = NULL;\n    /** @var Newscoop\\Service\\ISyncResourceService */\n    protected $syncResourceService = NULL;\n    /** @var Newscoop\\Service\\IArticleTypeService */\n    protected $articleTypeService = NULL;\n\n    /* --------------------------------------------------------------- */\n    private function getUnassignedThemesData(SearchTheme $search = NULL)\n    {\n        $allConfigs = $this->findAllThemesConfigPaths();\n        $configs = array();\n\n        $length = strlen(self::FOLDER_UNASSIGNED);\n        foreach ($allConfigs as $id => $config) {\n            if (strncmp($config, self::FOLDER_UNASSIGNED, $length) == 0) {\n                $configs[$id] = $config;\n            }\n        }\n\n        $themes = $this->loadThemes($configs);\n        if ($search !== NULL) {\n            $themes = $this->filterThemes($search, $themes);\n        }\n\n        return $themes;\n    }\n\n    public function getUnassignedThemes(SearchTheme $search = NULL, $offset = 0, $limit = -1)\n    {\n        return $this->trim($this->getUnassignedThemesData($search), $offset, $limit);\n    }\n\n    /**\n     * Provides the count of the entities that can be associated with the provided search.\n     *\n     * @param Newscoop\\Service\\Model\\Search\\Search $search\n     *                                                     The search criteria, not null.\n     *\n     * @return int\n     *             The entities count.\n     */\n    public function getCountUnassignedThemes(Search $search = NULL)\n    {\n        return count($this->getUnassignedThemesData($search));\n    }\n\n    private function getThemesData($publication, SearchTheme $search = NULL)\n    {\n        Validation::notEmpty($publication, 'publication');\n        if ($publication instanceof Publication) {\n            Validation::notEmpty($publication->getId(), 'publication.id');\n            $publicationId = $publication->getId();\n        } else {\n            $publicationId = $publication;\n        }\n\n        $allConfigs = $this->findAllThemesConfigPaths();\n        $configs = array();\n\n        $pubFolder = self::FOLDER_PUBLICATION_PREFIX.$publicationId;\n        $length = strlen($pubFolder);\n        foreach ($allConfigs as $id => $config) {\n            if (strncmp($config, $pubFolder, $length) == 0) {\n                $configs[$id] = $config;\n            }\n        }\n\n        $themes = $this->loadThemes($configs);\n        if ($search !== NULL) {\n            $themes = $this->filterThemes($search, $themes);\n        }\n\n        return $themes;\n    }\n\n    public function getThemes($publication, SearchTheme $search = NULL, $offset = 0, $limit = -1)\n    {\n        return $this->trim($this->getThemesData($publication,$search), $offset, $limit);\n    }\n\n    public function getCountThemes($publication, SearchTheme $search = NULL)\n    {\n        return count($this->getThemesData($publication, $search));\n    }\n\n    public function getTemplates($theme)\n    {\n        Validation::notEmpty($theme, 'theme');\n\n        if ($theme instanceof Theme) {\n            $themePath = $theme->getPath();\n        } else {\n            $themePath = $theme;\n        }\n\n        $resources = array();\n        $folder = $this->toFullPath($themePath);\n        if (is_dir($folder)) {\n            if ($dh = opendir($folder)) {\n                while (($file = readdir($dh)) !== false) {\n                    if ($file != \".\" && $file != \"..\") {\n                        if (pathinfo($file, PATHINFO_EXTENSION) === self::FILE_TEMPLATE_EXTENSION) {\n                            $rsc = new Resource();\n                            $rsc->setName($file);\n                            $rsc->setPath($themePath.$file);\n                            $resources[] = $rsc;\n                        }\n                    }\n                }\n                closedir($dh);\n            }\n        }\n\n        return $resources;\n    }\n\n    public function findOutputSetting(Theme $theme, Output $output)\n    {\n        Validation::notEmpty($theme, 'theme');\n        Validation::notEmpty($output, 'output');\n\n        $xml = $this->loadXML($this->toFullPath($theme, $this->themeConfigFileName));\n        if ($xml != NULL) {\n            $nodes = $this->getNodes($xml, self::TAG_OUTPUT);\n            foreach ($nodes as $node) {\n                /* @var $node \\SimpleXMLElement */\n                try {\n                    $outputName = $this->readAttribute($node, self::ATTR_OUTPUT_NAME);\n                    if ($output->getName() == $outputName) {\n                        $oset = $this->loadOutputSetting($node, $theme->getPath());\n                        $oset->setOutput($output);\n\n                        return $oset;\n                    }\n                } catch (FailedException $e) {\n                    // Nothing to do.\n                }\n            }\n        }\n\n        return NULL;\n    }\n\n    public function getOutputSettings(Theme $theme)\n    {\n        Validation::notEmpty($theme, 'theme');\n\n        return $this->loadOutputSettings($theme->getPath());\n    }\n\n    /**\n     * @author mihaibalaceanu\n     * @param  \\Newscoop\\Entity\\Theme $theme\n     * @return object\n     */\n    public function getArticleTypes(Theme $theme)\n    {\n        Validation::notEmpty($theme, 'theme');\n        $xml = $this->loadXML($this->toFullPath($theme, $this->themeConfigFileName));\n        $ret = new \\stdClass;\n        // getting the article types\n        foreach ( $xml->xpath( '/'.self::TAG_ROOT.'/'.self::TAG_ARTICLE_TYPE ) as $artType ) {\n\n            $artTypeName = (string) $this->readAttribute($artType, self::ATTR_ARTICLE_TYPE_NAME);\n            // set article type name on return array\n            $ret->$artTypeName = new \\stdClass;\n            // getting the article type fields\n            foreach ( $xml->xpath( '/'.self::TAG_ROOT.'/'.self::TAG_ARTICLE_TYPE.'[@'.self::ATTR_ARTICLE_TYPE_NAME.'=(\\''.$artTypeName.'\\')]/*' ) as $artTypeField ) {\n                try {\n                    $ret->{$artTypeName}->{(string) $artTypeField[self::ATTR_ARTICLE_TYPE_FILED_NAME]} = (object) array\n                    (\n                    self::ATTR_ARTICLE_TYPE_FILED_TYPE   => (string) $artTypeField[self::ATTR_ARTICLE_TYPE_FILED_TYPE],\n                    self::ATTR_ARTICLE_TYPE_FILED_LENGTH => (string) $artTypeField[self::ATTR_ARTICLE_TYPE_FILED_LENGTH],\n                    );\n                } catch (\\Exception $e) {}\n            }\n        }\n\n        return $ret;\n    }\n\n    /* --------------------------------------------------------------- */\n\n    public function exportTheme($theme, $p_errorMsg = '')\n    {\n        $error_prefix = (empty($p_errorMsg)) ? '' : $p_errorMsg . \"\\n\";\n\n        Validation::notEmpty($theme, 'theme');\n        if (!($theme instanceof Theme)) {\n            $theme = $this->findById($theme);\n        }\n\n        if ( !file_exists( $xpth = $this->toFullPath(self::FOLDER_EXPORTS ) ) ) {\n            mkdir( $xpth );\n        }\n\n        $zipFilePath = realpath( $xpth );\n        $zipFilePath = $zipFilePath.DIR_SEP.preg_replace('([^a-zA-Z0-9_\\-.]+)', '_', $theme->getName()).'.zip';\n\n        // create object\n        $zip = new \\ZipArchive();\n        // open archive\n        if ($zip->open($zipFilePath, \\ZipArchive::CREATE | \\ZipArchive::OVERWRITE) !== TRUE) {\n            die ($error_prefix . 'Could not open archive');\n        }\n\n        $themePath = $this->toFullPath($theme->getPath());\n        $themePathLength = strlen($themePath);\n        // initialize an iterator\n        // pass it the directory to be processed\n        $iterator = new \\RecursiveIteratorIterator(new \\RecursiveDirectoryIterator($themePath));\n        // iterate over the directory\n        // add each file found to the archive\n        $addedDirs = array();\n        foreach ($iterator as $key=>$value) {\n            $fname = substr($key, $themePathLength);\n            if (strlen($fname) > 0 && !in_array(basename($fname), array('.', '..')) ) {\n                if ( !in_array(dirname($fname),$addedDirs) ) {\n                    if (!$zip->addEmptyDir(dirname($fname))) {\n                        return false;\n                    }\n                    $addedDirs[]=dirname($fname);\n                }\n                $zip->addFile(realpath($key), $fname) or die ($error_prefix . \"ERROR: Could not add file: $key\");\n            }\n        }\n        // close and save archive\n        if (!$zip->close()) {\n            return false;\n        }\n\n        return $zipFilePath;\n    }\n\n    public function installTheme($filePath)\n    {\n        Validation::notEmpty($filePath, 'filePath');\n\n        $zip = new \\ZipArchive;\n        $res = $zip->open($filePath);\n        // there was an error with this file upon extraction, so I just deleted it :)\n        $zip->deleteName(\".\");\n        if ($res === TRUE) {\n            $themePath = $this->getNewThemeFolder(self::FOLDER_UNASSIGNED.'/');\n            $themePath = realpath($this->toFullPath($themePath));\n            $zip->extractTo($themePath);\n            $zip->close();\n\n            // The theme can be downloaded in a zip file which contains the files in a folder named after the theme name\n            // If this is the case, the files need to copied from this folder into the parent folder\n            if (!file_exists($themePath . DIR_SEP . 'theme.xml')) {\n                $contents = scandir($themePath);\n                if (count($contents) !== 3) {\n                    // Clean up\n                    $this->rrmdir($themePath);\n                    throw new \\Exception(\"Unexpected number of files in theme folder\");\n                }\n\n                $themeName = null;\n                foreach ($contents as $content) {\n                    if (( $content != '.' ) && ( $content != '..' )) {\n                        $themeName = $content;\n                        break;\n                    }\n                }\n\n                if (!is_null($themeName)) {\n                    $this->copy($themePath . DIR_SEP . $themeName, $themePath);\n                    $this->rrmdir($themePath . DIR_SEP . $themeName);\n                }\n            }\n\n            return true;\n        } else {\n            return false;\n        }\n    }\n\n    public function updateTheme(Theme $theme)\n    {\n        Validation::notEmpty($theme, 'theme');\n        $allConfigs = $this->findAllThemesConfigPaths();\n\n        $config = $allConfigs[$theme->getId()];\n        if (!isset($config)) {\n            throw new \\Exception(\"Unknown theme id '.$theme->getId().' to update.\");\n        }\n        // We have to check if there is no other theme by the new theme name.\n        $inFolder = $this->filterThemesConfigPathsInSameFolder($config, $allConfigs);\n        // Remove the theme to be updated.\n        unset($inFolder[$theme->getId()]);\n\n        $themes = $this->loadThemes($inFolder);\n        foreach ($themes as $th) {\n            /* @var $th Theme */\n            if (trim($th->getName()) === trim($theme->getName())) {\n                throw new DuplicateNameException();\n            }\n        }\n\n        $xml = $this->loadXML($this->toFullPath($config));\n        $xml[self::ATTR_THEME_NAME] = $theme->getName();\n        $xml[self::ATTR_THEME_DESIGNER] = $theme->getDesigner();\n        $xml[self::ATTR_THEME_VERSION] = $theme->getVersion();\n        $xml[self::ATTR_THEME_NEWSCOOP_VERSION] = Version::VERSION;\n        $xml->{self::TAG_DESCRIPTION} = $theme->getDescription();\n\n        $xml->asXML($this->toFullPath($theme, $this->themeConfigFileName));\n    }\n\n    public function removeTheme($theme)\n    {\n        Validation::notEmpty($theme, 'theme');\n        if (!($theme instanceof Theme)) {\n            $theme = $this->findById($theme);\n        }\n        $themePath = $theme->getPath();\n        $themes = array();\n        if (!$this->getOutputSettingIssueService()->isThemeUsed($themePath, $themes)) {\n            $this->rrmdir($this->toFullPath($themePath));\n            $this->getSyncResourceService()->clearAllFor($themePath);\n            // Reset the theme configs cache so also the new theme will be avaialable\n            $this->cacheThemeConfigs = NULL;\n\n            return true;\n        }\n        throw new RemoveThemeException(implode(', ', $themes));\n    }\n\n    public function copyToUnassigned(Theme $theme)\n    {\n        Validation::notEmpty($theme, 'theme');\n\n        foreach ($this->getUnassignedThemes() as $unassigned) {\n            if (trim($unassigned->getName()) == trim($theme->getName())) {\n                throw new DuplicateNameException();\n            }\n        }\n\n        $newThemeFolder = $this->getNewThemeFolder(self::FOLDER_UNASSIGNED.\"/\");\n        try {\n            $this->copy($this->toFullPath($theme), $this->themesFolder.$newThemeFolder);\n        } catch (\\Exception $e) {\n            rmdir($newThemeFolder);\n            throw $e;\n        }\n\n        // TODO this ain't actually working for some reason\n        return $this->loadThemeByPath($newThemeFolder);\n    }\n\n    public function assignTheme(Theme $theme, Publication $publication, $cli = false)\n    {\n        Validation::notEmpty($theme, 'theme');\n        Validation::notEmpty($publication, 'publication');\n\n        // We have to check if there is no other theme by the new theme name.\n        foreach ($this->getThemes($publication) as $th) {\n            /* @var $th Theme */\n            if (trim($th->getName()) === trim($theme->getName())) {\n                if ($this->getThemePublication($th) != NULL) {\n                    if ($cli) {\n                        return false;\n                    }\n\n                    throw new DuplicateNameException();\n                } else {\n                    $thPath = $th->getPath();\n                    $this->rrmdir($this->toFullPath($thPath));\n                }\n            }\n        }\n\n        $themeFolder = $this->getNewThemeFolder(self::FOLDER_PUBLICATION_PREFIX.$publication->getId().'/');\n        $themeFullFolder = $this->toFullPath($themeFolder);\n        try {\n            $this->copy($this->toFullPath($theme), $themeFullFolder);\n\n            // Reset the theme configs cache so also the new theme will be avaialable\n            $this->cacheThemeConfigs = NULL;\n\n            // We need to persist the theme ouput setting for the new publication theme\n            $em = $this->getManager();\n\n\n            $pathRsc = $this->getSyncResourceService()->getThemePath($themeFolder);\n\n            // Persist the coresponding ouput settings theme to the database\n            $outSets = $this->loadOutputSettings($themeFolder);\n            foreach ($outSets as $outSet) {\n                /* @var $outSet OutputSettings */\n                $qb = $em->createQueryBuilder();\n                $qb->select('th')->from(OutputSettingsTheme::NAME, 'th');\n                $qb->where('th.publication = :publication');\n                $qb->andWhere('th.themePath = :themePath');\n                $qb->andWhere('th.output = :output');\n                $qb->setParameter('publication', $publication);\n                $qb->setParameter('themePath', $pathRsc);\n                $qb->setParameter('output', $outSet->getOutput());\n                $result = $qb->getQuery()->getResult();\n\n                if (count($result) > 0) {\n                    $outTh = $result[0];\n                } else {\n                    $outTh = new OutputSettingsTheme();\n                    $outTh->setPublication($publication);\n                    $outTh->setThemePath($pathRsc);\n                    $outTh->setOutput($outSet->getOutput());\n                }\n                $this->syncOutputSettings($outTh, $outSet);\n\n                $issueOutSettings = $this->getOutputSettingIssueService();\n                foreach ($issueOutSettings->getUnthemedIssues($publication) as $issue) {\n                    $outIssueTh = new OutputSettingsIssue();\n                    $outIssueTh->setIssue($issue);\n                    $outIssueTh->setThemePath($pathRsc);\n                    $outIssueTh->setOutput($outSet->getOutput());\n                    $em->persist($outIssueTh);\n                }\n\n                $em->persist($outTh);\n            }\n            $em->flush();\n        } catch (\\Exception $e) {\n            $this->rrmdir($themeFullFolder);\n            throw $e;\n        }\n\n        return $this->loadThemeByPath($themeFolder);\n    }\n\n    public function assignOutputSetting(OutputSettings $outputSettings, Theme $theme)\n    {\n        Validation::notEmpty($outputSettings, 'outputSettings');\n        Validation::notEmpty($theme, 'theme');\n\n        // We update the XML config file with the new output setting.\n        $xml = $this->loadXML($this->toFullPath($theme, $this->themeConfigFileName));\n        if ($xml == NULL) {\n            throw new \\Exception(\"Unknown theme path '.$theme->gePath().' to assign to.\");\n        }\n        $outNode = NULL;\n        $nodes = $this->getNodes($xml, self::TAG_OUTPUT, self::ATTR_OUTPUT_NAME, $outputSettings->getOutput()->getName());\n        if (count($nodes) == 0) {\n            // The ouput node does not exist, we need to add it.\n            $node = $xml->addChild(self::TAG_OUTPUT);\n            $node[self::ATTR_OUTPUT_NAME] = $outputSettings->getOutput()->getName();\n        } else {\n            // The ouput node exists so we need to update it.\n            $node = $nodes[0];\n            /* @var $node \\SimpleXMLElement */\n            // We remove all the childens node that contain the template pages.\n            $toRemove = array();\n            foreach ($node->children() as $kid) {\n                $toRemove[] = $kid->getName();\n            }\n            foreach ($toRemove as $name) {\n                unset($node->$name);\n            }\n        }\n        $front = $node->addChild(self::TAG_PAGE_FRONT);\n        $front[self::ATTR_PAGE_SRC] = $this->getRelativePath($outputSettings->getFrontPage(), $theme->getPath());\n\n        $section = $node->addChild(self::TAG_PAGE_SECTION);\n        $section[self::ATTR_PAGE_SRC] = $this->getRelativePath($outputSettings->getSectionPage(), $theme->getPath());\n\n        $article = $node->addChild(self::TAG_PAGE_ARTICLE);\n        $article[self::ATTR_PAGE_SRC] = $this->getRelativePath($outputSettings->getArticlePage(), $theme->getPath());\n\n        $error = $node->addChild(self::TAG_PAGE_ERROR);\n        $error[self::ATTR_PAGE_SRC] = $this->getRelativePath($outputSettings->getErrorPage(), $theme->getPath());\n\n        $xml->asXML($this->toFullPath($theme, $this->themeConfigFileName));\n\n        // We have to update also the output theme settings in the database if there is one.\n        $em = $this->getManager();\n        $q = $em->createQueryBuilder();\n        $q->select('ost')->from(OutputSettingsTheme::NAME, 'ost');\n        $q->leftJoin('ost.themePath', 'rsc');\n        $q->andWhere('rsc.path = ?1');\n        $q->setParameter(1, $theme->getPath());\n        $result = $q->getQuery()->getResult();\n        // If there are results than it means that the theme belongs to a publication\n        if (count($result) > 0) {\n            $updated = FALSE;\n            foreach ($result as $outTh) {\n                /* @var $outTh Newscoop\\Entity\\Output\\OutputSettingsTheme */\n                if ($outTh->getOutput() == $outputSettings->getOutput()) {\n                    $this->syncOutputSettings($outTh, $outputSettings);\n                    $em->persist($outTh);\n                    $em->flush();\n                    $updated = TRUE;\n                    break;\n                }\n            }\n            if (!$updated) {\n                $pathRsc = new Resource();\n                $pathRsc->setName(self::THEME_PATH_RSC_NAME);\n                $pathRsc->setPath($themeFolder);\n                $pathRsc = $this->getSyncResourceService()->getSynchronized($pathRsc);\n\n                $outTh = new OutputSettingsTheme();\n                $outTh->setPublication($result[0]->getPublication());\n                $outTh->setThemePath($pathRsc);\n\n                $outTh->setOutput($outputSettings->getOutput());\n\n                $this->syncOutputSettings($outTh, $outputSettings);\n                $em->persist($outTh);\n                $em->flush();\n            }\n        }\n    }\n\n    /**\n     * Adds new mapping in the theme xml\n     *\n     * @param $articleTypes an array of mapping new values to old ones\n     * \t\t[ oldTypeName => [\n     * \t\t\tname : newTypeName,\n     * \t\t\tignore : boolean,\n     * \t\t\tfields' : [ OldFieldName : [ name : new/oldType, parentType : existingSysType, ignore : boolean ], [...] ]\n     * \t\t\t]\n     * \t\t, [...] ]\n     * \tparentType => existingSysType will be used for getting it's other props from db\n     *\n     * @return string the generated xml\n     */\n    public function assignArticleTypes($articleTypes, Theme $theme)\n    {\n        Validation::notEmpty($articleTypes, 'articleTypes');\n        Validation::notEmpty($theme, 'theme');\n\n        $artServ = $this->getArticleTypeService();\n        $artCache = array();\n        /**\n         * function purpose: not to make so many calls to db\n         * @param string $parentType article type name\n         * @param string $fieldName field name doh\n         * @return ArticleTypeField|null\n         */\n        $getFieldByName = function ($parentType, $fieldName) use ($artServ, &$artCache) {\n            if ( !isset( $artCache[ $parentType.$fieldName ] ) ) {\n                $artType = $artServ->findTypeByName( $parentType );\n                if ($artType) {\n                    $artCache[ $parentType.$fieldName ] = $artServ->findFieldByName( $artType, $fieldName );\n                }\n            }\n\n            return $artCache[ $parentType.$fieldName ];\n        };\n\n        $xml = $this->loadXML( ( $xmlFileName = $this->toFullPath($theme, $this->themeConfigFileName ) ) );\n        if ($xml == NULL) {\n            throw new \\Exception( \"Unknown theme path '.$theme->gePath().' to assign to.\" );\n        }\n\n        $updatedTypes = array(); // used to check duplicate names for types\n        $safeTypeCounter = null;\n        // parse the mapping array\n        foreach ($articleTypes as $typeName => $type) {\n            $articleXPath = '/'.self::TAG_ROOT.'/'.self::TAG_ARTICLE_TYPE.'[@'.self::ATTR_ARTICLE_TYPE_NAME.'=(\\''.$typeName.'\\')]';\n\n            $fieldNodes = $xml->xpath(\"$articleXPath/*\");\n\n            $updatedFields = array(); // used to check duplicate names for fields and such\n\n            $safeFieldCounter = null;\n\n            if ( count($fieldNodes) ) {\n                foreach ($fieldNodes as $fieldNode) {\n                    if(\n                        ( !isset( $type['fields'][ (string) $fieldNode[self::ATTR_ARTICLE_TYPE_FILED_NAME] ] )\n                            || !( $updateField = $type['fields'][ (string) $fieldNode[self::ATTR_ARTICLE_TYPE_FILED_NAME] ] ) )\n                        || $updateField['ignore'] == true\n                    )\n                    continue;\n\n                    $updateFieldName = $updateField['name'];\n                    // checking for duplicates\n                    if ( isset( $updatedFields[ $updateFieldName ] ) ) {\n                        $updateFieldName = $updateField['name'].(++$safeFieldCounter);\n                    }\n                    $fieldNode[self::ATTR_ARTICLE_TYPE_FILED_NAME] = $updateFieldName;\n                    $updatedFields[$updateFieldName] = true;\n\n                    $theField = $getFieldByName( $updateField['parentType'], $updateField['name'] );\n                    /* @var $theField ArticleTypeField */\n                    if ($theField) {\n                        $fieldNode[self::ATTR_ARTICLE_TYPE_FILED_LENGTH] = $theField->getLength();\n                        $fieldNode[self::ATTR_ARTICLE_TYPE_FILED_TYPE] = $theField->getType();\n                    }\n                } // end foreach fieldNodes\n            }\n\n            if ($type['ignore']) {\n                continue;\n            }\n            // set new article type node\n            $typeNode = $xml->xpath( $articleXPath );\n            if ( !( $typeNode = current( $typeNode ) ) ) {\n                continue;\n            }\n            /* @var $typeNode SimpleXMLElement */\n\n            $updateTypeName = $type['name'];\n            // checking for duplicates\n            if ( isset( $updatedTypes[ $updateTypeName ] ) ) {\n                $updateTypeName = $type['name'].(++$safeTypeCounter);\n            }\n            $typeNode[self::ATTR_ARTICLE_TYPE_NAME] = $updateTypeName;\n            $updatedTypes[$updateTypeName] = true;\n\n        } // end foreach articleTypes\n\n        return $xml->asXML( $xmlFileName );\n    }\n\n    /* --------------------------------------------------------------- */\n\n    /**\n     * Provides the dictrine entity manager.\n     *\n     * @return Doctrine\\ORM\\EntityManager\n     *                                    The doctrine entity manager.\n     */\n    protected function getManager()\n    {\n        if ($this->em === NULL) {\n            $this->em = \\Zend_Registry::get('container')->getService('em');\n        }\n\n        return $this->em;\n    }\n\n    /**\n     * Provides the ouput service.\n     *\n     * @return Newscoop\\Service\\IOutputService\n     *                                         The service service to be used.\n     */\n    protected function getOutputService()\n    {\n        if ($this->outputService === NULL) {\n            $this->outputService = $this->getResourceId()->getService(IOutputService::NAME);\n        }\n\n        return $this->outputService;\n    }\n\n    /**\n     * Provides the Output setting issue service.\n     *\n     * @return Newscoop\\Service\\IOutputSettingIssueService\n     *                                                     The output setting issue service to be used by this controller.\n     */\n    protected function getOutputSettingIssueService()\n    {\n        if ($this->outputSettingIssueService === NULL) {\n            $this->outputSettingIssueService = $this->getResourceId()->getService(IOutputSettingIssueService::NAME);\n        }\n\n        return $this->outputSettingIssueService;\n    }\n\n    /**\n     * Provides the sync resource service.\n     *\n     * @return Newscoop\\Service\\ISyncResourceService\n     *                                               The sync resource service to be used.\n     */\n    protected function getSyncResourceService()\n    {\n        if ($this->syncResourceService === NULL) {\n            $this->syncResourceService = $this->getResourceId()->getService(ISyncResourceService::NAME);\n        }\n\n        return $this->syncResourceService;\n    }\n\n    /**\n     * Provides the article type service.\n     *\n     * @return Newscoop\\Service\\IArticleTypeService\n     *\n     */\n    public function getArticleTypeService()\n    {\n        if ($this->articleTypeService === NULL) {\n            $this->articleTypeService = $this->getResourceId()->getService(IArticleTypeService::NAME);\n        }\n\n        return $this->articleTypeService;\n    }\n\n    /* --------------------------------------------------------------- */\n\n    /**\n     * Load all the output settings from the specified path.\n     *\n     * @param \\SimpleXMLElement $node\n     *                                The node from which to load, *(not null not empty).\n     *\n     * @param  string $themePath\n     *                           The theme path from where to load the output settings, *(not null not empty).\n     * @return array\n     *                          The array containing all the found output settings, not null.\n     */\n    protected function loadOutputSettings($themePath)\n    {\n        $outputs = array();\n        $xml = $this->loadXML($this->toFullPath($themePath, $this->themeConfigFileName));\n        if ($xml != NULL) {\n            $nodes = $this->getNodes($xml, self::TAG_OUTPUT);\n            foreach ($nodes as $node) {\n                /* @var $node \\SimpleXMLElement */\n                try {\n                    // First we have to search if there is an ouput\n                    // registered with the name specifed in the XML.\n                    $outputName = $this->readAttribute($node, self::ATTR_OUTPUT_NAME);\n                    $output = $this->getOutputService()->findByName($outputName);\n                    if ($output != NULL) {\n                        $oset = $this->loadOutputSetting($node, $themePath);\n                        $oset->setOutput($output);\n\n                        $outputs[] = $oset;\n                    } else {\n                        $this->getErrorHandler()->warning(ThemeErrors::OUTPUT_MISSING, $outputName);\n                    }\n                } catch (XMLMissingAttribueException $e) {\n                    $this->getErrorHandler()->error(ThemeErrors::XML_MISSING_ATTRIBUTE, self::ATTR_OUTPUT_NAME, self::TAG_OUTPUT);\n                } catch (FailedException $e) {\n                    // Nothing to do.\n                }\n            }\n        }\n\n        return $outputs;\n    }\n\n    /**\n     * Load the output setting from the provided xml node.\n     *\n     * @param \\SimpleXMLElement $nodeOutput\n     *                                      The node from which to load, *(not null not empty).\n     *\n     * @param  string                          $themePath\n     *                                                    The theme path to construct the resource path based on, *(not null not empty).\n     * @throws FailedException\n     *                                                   Thrown if the output setting has failed to be obtained, this exception will not contain any message, the resons of failure\n     *                                                   will be looged in the error handler.\n     * @return \\Newscoop\\Entity\\OutputSettings\n     *                                                   The loaded output setting, not null.\n     */\n    protected function loadOutputSetting(\\SimpleXMLElement $nodeOutput, $themePath)\n    {\n        $oset = new OutputSettings();\n\n        $oset->setFrontPage($this->loadOutputResource($nodeOutput, self::TAG_PAGE_FRONT, $themePath));\n        $oset->setSectionPage($this->loadOutputResource($nodeOutput, self::TAG_PAGE_SECTION, $themePath));\n        $oset->setArticlePage($this->loadOutputResource($nodeOutput, self::TAG_PAGE_ARTICLE, $themePath));\n        $oset->setErrorPage($this->loadOutputResource($nodeOutput, self::TAG_PAGE_ERROR, $themePath));\n\n        return $oset;\n    }\n\n    /**\n     * Reads the resources from an output tag.\n     *\n     * @param  \\SimpleXMLElement         $parent\n     *                                              The parent output node to read the resources from, *(not null not empty).\n     * @param  string                    $tagName\n     *                                              The tag name containing the resource, *(not null not empty).\n     * @param  string                    $themePath\n     *                                              The theme path to construct the resource path based on, *(not null not empty).\n     * @param  string                    $name\n     *                                              The name of the created resource based on the found tag, *(not null not empty).\n     * @throws FailedException\n     *                                             Thrown if the resource has failed to be obtained, this exception will not contain any message, the resons of failure\n     *                                             will be looged in the error handler.\n     * @return \\Newscoop\\Entity\\Resource\n     *                                             The obtained resource, not null.\n     */\n    protected function loadOutputResource(\\SimpleXMLElement $parent, $tagName, $themePath)\n    {\n        $nodes = $this->getNodes($parent, $tagName);\n        if (count($nodes) == 0) {\n            $this->getErrorHandler()->error(ThemeErrors::XML_MISSING_TAG, $tagName, $parent->getName());\n            throw new FailedException();\n        }\n        if (count($nodes) > 1) {\n            $this->getErrorHandler()->error(ThemeErrors::XML_TO_MANY_TAGS, $tagName, $parent->getName(), 1);\n            throw new FailedException();\n        }\n        $node = $nodes[0];\n        /* @var $node \\SimpleXMLElement */\n        try {\n            $rsc = new Resource();\n            $rsc->setName($tagName);\n            $rsc->setPath($this->escapePath($themePath.$this->readAttribute($node, self::ATTR_PAGE_SRC)));\n\n            return $rsc;\n        } catch (XMLMissingAttribueException $e) {\n            $this->getErrorHandler()->error(ThemeErrors::XML_MISSING_ATTRIBUTE, $e->getAttributeName(), $tagName);\n            throw new FailedException();\n        }\n    }\n\n    /**\n     * Provides the relative path of the resource based on the provided theme path.\n     * This method also checks if the resource path is compatible with the theme path\n     * meaning that the resource needs to be placed in the theme.\n     *\n     * @param  Resource  $rsc\n     *                              The resource to extract the relative path from, not null.\n     * @param  string    $themePath\n     *                              The theme path, not null.\n     * @throws Exception\n     *                             In case the resource does not belong to the theme.\n     * @return string\n     *                             The relative [path in regards with the theme path for the resource.\n     */\n    protected function getRelativePath(Resource $rsc, $themePath)\n    {\n        $path = $rsc->getPath();\n        $lenght = strlen($themePath);\n        if (strncmp($path, $themePath, $lenght) != 0) {\n            throw new \\Exception(\"The resource path '.$path.' is not for the provided theme path '.$themePath.'.\");\n        }\n        $path = substr($path, $lenght);\n\n        return $path;\n    }\n\n    /* --------------------------------------------------------------- */\n\n    /**\n     * Filter from the provided configs array all the configs that are located under the same folder.\n     * For instance if the config is in a publication folder than this method will return all the configs for that\n     * publicatio.\n     *\n     * @param  string $config\n     *                        The config path to be searched for, not null.\n     * @param array @configs\n     *                        The array containing as key the id of the theme config (index) and as a value the relative\n     *                        path of the theme configuration XML file for all configurations to be filtered, not null.\n     * @return array\n     *                       The array containing as key the id of the theme config (index) and as a value the relative\n     *                       path of the theme configuration XML file for all configurations that are iun the same folder, not null can be empty.\n     */\n    protected function filterThemesConfigPathsInSameFolder($config, array $allConfigs)\n    {\n        // First we extract the relative path for the 'theme.xml' config file\n        $rPath = $this->extractRelativePathFrom($config);\n        // Now we extract the relative path of the theme folder.\n        $rPath = $this->extractRelativePathFrom(substr($rPath, 0, -1));\n\n        $inFolder = array();\n        $length = strlen($rPath);\n        foreach ($allConfigs as $id => $cnf) {\n            if (strncmp($cnf, $rPath, $length) == 0) {\n                $inFolder[$id] = $cnf;\n            }\n        }\n\n        return $inFolder;\n    }\n\n    /* --------------------------------------------------------------- */\n\n    /**\n     * Copies from the from output settings to the to output settings all the pages (front, article ...).\n     * @param Newscoop\\Entity\\OutputSettings $to\n     *                                             The output setting to copy to, *(not null not empty).\n     * @param Newscoop\\Entity\\OutputSettings $from\n     *                                             The output setting to copy from, *(not null not empty).\n     */\n    protected function syncOutputSettings(OutputSettings $to, OutputSettings $from)\n    {\n        $syncRsc = $this->getSyncResourceService();\n        $to->setFrontPage($syncRsc->getSynchronized($from->getFrontPage()));\n        $to->setSectionPage($syncRsc->getSynchronized($from->getSectionPage()));\n        $to->setArticlePage($syncRsc->getSynchronized($from->getArticlePage()));\n        $to->setErrorPage($syncRsc->getSynchronized($from->getErrorPage()));\n    }\n\n    /* --------------------------------------------------------------- */\n\n    /**\n     * Provides a new folder (Automatically created) to place a new theme.\n     * @param  str $inFolder\n     *                       The folder wehere to place the new theme folder, this has to be relative to the\n     *                       themes folder.\n     * @return str\n     *                      The relative theme path.\n     */\n    protected function getNewThemeFolder($inFolder)\n    {\n        $number = 1;\n        $fullfodler = $this->toFullPath($inFolder);\n        $length = strlen(self::FOLDER_THEME_PREFIX);\n        if (is_dir($fullfodler)) {\n            if ($dh = opendir($fullfodler)) {\n                while (($dir = readdir($dh)) !== false) {\n                    if ($dir != \".\" && $dir != \"..\" && is_dir($fullfodler.$dir)) {\n                        if (strncmp($dir, self::FOLDER_THEME_PREFIX, $length) == 0) {\n                            $themeNr = substr($dir, $length);\n                            if (is_numeric($themeNr)) {\n                                $number_test = ((int) $themeNr) + 1;\n                                if ($number < $number_test) {\n                                    $number = $number_test;\n                                }\n                            }\n                        }\n                    }\n                }\n                closedir($dh);\n            }\n        } else {\n            mkdir($fullfodler);\n        }\n\n        $themeFolder = $inFolder.self::FOLDER_THEME_PREFIX.$number.'/';\n        $themeFullFolder = $this->toFullPath($themeFolder);\n        @mkdir($themeFullFolder);\n\n        return $themeFolder;\n    }\n\n    /**\n     * Copies recursivelly the folder content from src to destination.\n     *\n     * @param string $src\n     *                    The source folder, *(not null not empty).\n     * @param string $dst\n     *                    the destination folder, *(not null not empty).\n     */\n    protected function copy($src, $dst)\n    {\n        $dir = opendir($src);\n        if (!file_exists($dst)) {\n            mkdir($dst);\n        }\n        while (false !== ( $file = readdir($dir)) ) {\n            if (( $file != '.' ) && ( $file != '..' )) {\n                if ( is_dir($src . '/' . $file) ) {\n                    $this->copy( rtrim($src, DIR_SEP).DIR_SEP.$file, rtrim($dst, DIR_SEP).DIR_SEP.$file);\n                } else {\n                    $cpres = copy( rtrim($src, DIR_SEP).DIR_SEP.$file, rtrim($dst, DIR_SEP).DIR_SEP.$file );\n                }\n            }\n        }\n        closedir($dir);\n    }\n\n    /**\n     * Deletes recursivelly the folder content from dir.\n     *\n     * @param string $dir\n     *                    The floder to be deleted, *(not null not empty).\n     */\n    protected function rrmdir($dir)\n    {\n        if (is_dir($dir)) {\n            $objects = scandir($dir);\n            foreach ($objects as $object) {\n                if ($object != \".\" && $object != \"..\") {\n                    if (filetype($dir.\"/\".$object) == \"dir\") {\n                        $this->rrmdir($dir.\"/\".$object);\n                    } else {\n                        unlink($dir.\"/\".$object);\n                    }\n                }\n            }\n            reset($objects);\n            rmdir($dir);\n        }\n    }\n\n    /**\n     * Get the publication of a theme, and optionally output\n     * @param  Theme       $theme\n     * @param  Output      $output\n     * @return Publication\n     */\n    public function getThemePublication($theme, $output=null)\n    {\n        $pathRsc = $this->getSyncResourceService()->getThemePath($theme->getPath());\n        $em = $this->getManager();\n        $qb = $em->createQueryBuilder();\n        $qb->select('th')->from(OutputSettingsTheme::NAME, 'th');\n        $qb->where('th.themePath = :themePath');\n        $qb->setParameter('themePath', $pathRsc);\n        if (!is_null($output)) {\n            $qb->andWhere('th.output = :output');\n            $qb->setParameter('output', $output);\n        }\n        $result = current($qb->getQuery()->getResult());\n        if ($result) {\n            return $result->getPublication();\n        }\n\n        return null;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Implementation/ThemeServiceLocalFileSystem.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Implementation;\n\nuse Newscoop\\Service\\Implementation\\Exception\\XMLMissingAttribueException;\nuse Newscoop\\Service\\Error\\ThemeErrors;\nuse Newscoop\\Service\\IErrorHandler;\nuse Newscoop\\Entity\\Resource;\nuse Newscoop\\Entity\\Theme;\nuse Newscoop\\Utils\\Validation;\nuse Newscoop\\Service\\IThemeService;\nuse Newscoop\\Service\\Resource\\ResourceId;\nuse Newscoop\\Service\\Model\\Search\\Search;\nuse Newscoop\\Service\\Model\\SearchTheme;\n\nfunction var_hook()\n{\n   $arg_list = func_get_args();\n   $numargs = func_num_args();\n   $out = '';\n   for ($i = 0; $i < $numargs; $i++) {\n       $out.= var_export($arg_list[$i], true).\", \";\n\n    }\n    //syslog(LOG_INFO, $out);\n    error_log($out);\n    //fb($out, FirePHP::LOG);\n}\n/**\n * Provides the services implementation for the themes.\n */\nclass ThemeServiceLocalFileSystem implements IThemeService\n{\n\n\tconst TAG_THEME = 'theme';\n\tconst ATTR_THEME_NAME = 'name';\n\tconst ATTR_THEME_DESIGNER = 'designer';\n\tconst ATTR_THEME_VERSION = 'version';\n\tconst ATTR_THEME_NEWSCOOP_VERSION = 'require';\n\n\tconst TAG_DESCRIPTION = 'description';\n\n\tconst TAG_PRESENT = 'presentation-img';\n\tconst ATTR_PRESENT_NAME = 'name';\n\tconst ATTR_PRESENT_SRC = 'src';\n\n\t/* --------------------------------------------------------------- */\n\n\t/** @var Newscoop\\Service\\Resource\\ResourceId */\n\tprotected $id;\n\t/** @var Newscoop\\Service\\IErrorHandler */\n\tprotected $errorHandler = NULL;\n\n\t/* ------------------------------- */\n\n\t/** @var array */\n\tprotected $cacheThemeConfigs = NULL;\n\t/** @var array */\n\tprotected $cacheXMLEmelemt = array();\n\n\t/* ------------------------------- */\n\n\t/** @var string */\n\tpublic $themesFolder;\n\t/** @var string */\n\tpublic $themeConfigFileName = 'theme.xml';\n\n\n\t/**\n\t * Construct the service based on the provided resource id.\n\t * @param ResourceId $id\n\t * \t\tThe resource id, not null not empty\n\t */\n\tfunction __construct(ResourceId $id)\n\t{\n\t\tValidation::notEmpty($id, 'id');\n\t\t$this->id = $id;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\tfunction getById($id)\n\t{\n\t\tValidation::notEmpty($id, 'id');\n\t\t$theme = $this->findById($id);\n\t\tif(is_null($theme)){\n\t\t\tthrow new \\Exception(\"There is no theme for id '$id'.\");\n\t\t}\n\t\treturn $theme;\n\t}\n\n\tfunction findById($id)\n\t{\n\t\tValidation::notEmpty($id, 'id');\n\n\t\t$themesConfigs = $this->findAllThemesConfigPaths();\n\t\t$rpath = $themesConfigs[$id];\n\t\tif(isset($rpath)){\n\t\t\t$path = $this->toFullPath($rpath);\n\t\t\t$xml = $this->loadXML($path);\n\t\t\tif($xml != NULL){\n\t\t\t\treturn $this->loadTheme($xml, $id, $rpath);\n\t\t\t}\n\t\t}\n\t\treturn NULL;\n\t}\n\n\tfunction getCount(Search $search = NULL)\n\t{\n\t\t$themesConfigs = $this->findAllThemesConfigPaths();\n\t\tif($search === NULL){\n\t\t\treturn count($themesConfigs);\n\t\t}\n\t\tif(!($search instanceof SearchTheme)){\n\t\t\tthrow new \\Exception(\"The search needs to be a SearchTheme instance.\");\n\t\t}\n\t\t$themes = $this->loadThemes($themesConfigs);\n        var_hook($themes);\n\t\t$themes = $this->filterThemes($search, $themes);\n        return count($themes);\n\t}\n\n\tfunction getEntities(Search $search = NULL, $offset = 0, $limit = -1)\n\t{\n\t\t$themes = $this->loadThemes($this->findAllThemesConfigPaths());\n\t\tif($search !== NULL){\n\t\t\tif(!($search instanceof SearchTheme)){\n\t\t\t\tthrow new \\Exception(\"The search needs to be a SearchTheme instance.\");\n\t\t\t}\n\t\t\t$themes = $this->filterThemes($search, $themes);\n\t\t}\n\n\t\treturn $this->trim($themes, $offset, $limit);\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\tfunction getPresentationImages(Theme $theme)\n\t{\n\t\tValidation::notEmpty($theme, self::TAG_THEME);\n\n\t\t$xml = $this->loadXML($this->toFullPath($theme, $this->themeConfigFileName));\n\n\t\t$presentResources = array();\n\t\tif($xml != NULL){\n\t\t\t$nodes = $this->getNodes($xml, self::TAG_PRESENT);\n\t\t\tforeach ($nodes as $node){\n\t\t\t\t/* @var $node \\SimpleXMLElement */\n\t\t\t\t$rsc = new Resource();\n\t\t\t\ttry{\n\t\t\t\t\t$rsc->setName($this->readAttribute($node, self::ATTR_PRESENT_NAME));\n\t\t\t\t\t$rsc->setPath($theme->getPath().$this->readAttribute($node, self::ATTR_PRESENT_SRC));\n\t\t\t\t\t$presentResources[] = $rsc;\n\t\t\t\t}catch(XMLMissingAttribueException $e){\n\t\t\t\t\t$this->getErrorHandler()->error(ThemeErrors::XML_MISSING_ATTRIBUTE, $e->getAttributeName(), $node->getName());\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn $presentResources;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the resource id.\n\t *\n\t * @return Newscoop\\Services\\Resource\\ResourceId\n\t *\t\tThe resource id.\n\t */\n\tprotected function getResourceId()\n\t{\n\t\treturn $this->id;\n\t}\n\n\t/**\n\t * Provides the error handler.\n\t *\n\t * @return Newscoop\\Service\\IErrorHandler\n\t *\t\tThe error handler to be used.\n\t */\n\tprotected function getErrorHandler()\n\t{\n\t\tif ($this->errorHandler === NULL) {\n\t\t\t$this->errorHandler = $this->getResourceId()->getService(IErrorHandler::NAME);\n\t\t}\n\t\treturn $this->errorHandler;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\n\t/**\n\t * Finds all paths to the configurations XML files for themes, that are located in the theme folder.\n\t *\n\t * @return array\n\t * \t\tThe array containing as key the id of the theme config and as a value the relative\n\t * \t\tpath of the theme configuration XML file in escaped form.\n\t * \t\tThe id of a theme is formed based on the publication path with the crec32 applied.\n\t */\n\tprotected function findAllThemesConfigPaths()\n\t{\n\t\tif($this->cacheThemeConfigs === NULL){\n\n\t\t\t$this->cacheThemeConfigs = array();\n\t\t\tif (strpos($this->themesFolder, 'APPLICATION_PATH') !== false) {\n\t\t\t\t$this->themesFolder = __DIR__ . str_replace('APPLICATION_PATH', '/../../..', $this->themesFolder);\n\t\t\t}\n\n            if (is_dir($this->themesFolder)) {\n\t\t\t\tif ($dh = opendir($this->themesFolder)) {\n\t\t\t\t\twhile (($dir = readdir($dh)) !== false) {\n                        $folder = $this->themesFolder.$dir;\n                        if ($dir != \".\" && $dir != \"..\" && is_dir($folder)){\n\t\t\t\t\t\t\t// Reading the subdirectories which contain the themes\n\t\t\t\t\t\t\tif($subDh = opendir($folder)){\n\t\t\t\t\t\t\t\twhile (($file = readdir($subDh)) !== false) {\n\t\t\t\t\t\t\t\t\tif ($file != \".\" && $file != \"..\"){\n\t\t\t\t\t\t\t\t\t\t$filePath = $dir.DIRECTORY_SEPARATOR.$file.DIRECTORY_SEPARATOR.$this->themeConfigFileName;\n\t\t\t\t\t\t\t\t\t\tif(@file_exists($this->themesFolder.$filePath)){\n\t\t\t\t\t\t\t\t\t\t\t$escapedPath = $this->escapePath($filePath);\n\t\t\t\t\t\t\t\t\t\t\t$this->cacheThemeConfigs[crc32($escapedPath)] = $escapedPath;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tclosedir($subDh);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tclosedir($dh);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn $this->cacheThemeConfigs;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Filters the provided array of themes based on the search.\n\t * @param SearchTheme $search\n\t * \t\tThe search to filter the themes by, *(not null not empty).\n\t * @param array $themes\n\t * \t\tThe array of Theme objects to be filtered, *(not null not empty).\n\t * @return array\n\t * \t\tThe array containing all themes that respect the search.\n\t */\n\tprotected function filterThemes(SearchTheme $search, array $themes)\n\t{\n\t\t//TODO: to implement also the actual filtering.\n\t\t$filtered = $themes;\n\n\t\tforeach ($search->getOrderedBy() as $column){\n\t\t\tif($column === $search->NAME){\n\t\t\t\t$filtered = $this->sort($filtered, 'getName', $column->isOrderAscending());\n\t\t\t}\n\t\t\telse if($column === $search->DESIGNER){\n\t\t\t\t$filtered = $this->sort($filtered, 'getDesigner', $column->isOrderAscending());\n\t\t\t}\n\t\t\telse if($column === $search->VERSION){\n\t\t\t\t$filtered = $this->sort($filtered, 'getVersion', $column->isOrderAscending());\n\t\t\t}\n\t\t\telse if($column === $search->MINOR_NEWSCOOP_VERSION){\n\t\t\t\t$filtered = $this->sort($filtered, 'getMinorNewscoopVersion', $column->isOrderAscending());\n\t\t\t}\n\t\t}\n\n\t\treturn $filtered;\n\t}\n\n\t/**\n\t * Sort the array.\n\t *\n\t * @param array $array\n\t * \t\tThe array of elements to be sorted.\n\t * @param string $property\n\t * \t\tThe method name that provides the sorting key.\n\t * @param bool $asscending\n\t * \t\tTrue if the sort is ascending, false for descending.\n\t * @return array\n\t * \t\tThe sorted array.\n\t */\n\tprotected function sort($array, $property, $ascending)\n\t{\n\t    $isAllEqual = true; // going to use this to still simulate a sort if all values are equal\n\t\tusort( $array, function( $a, $b ) use ( $property, $ascending, &$isAllEqual )\n\t\t{\n\t\t    $cmp = strcmp( $a->$property(), $b->$property() );\n\t\t    if( $cmp != 0 ) $isAllEqual = false;\n\t\t    return $ascending ? $cmp : -$cmp;\n\t\t});\n\t\t// if all values equal and sort is descending just reverse the results..\n\t\tif( $isAllEqual && !$ascending )\n\t\t    return array_reverse($array);\n\t\treturn $array;\n\t}\n\n\t/**\n\t * Trims the array based on the offset and limit.\n\t *\n\t * @param array $array\n\t * \t\tThe array to be trimed, not null.\n\t * @param int $offset\n\t * \t\tThe offset.\n\t * @param int $limit\n\t * \t\tThe limit.\n\t * @return array\n\t * \t\tThe trimed array.\n\t */\n\tprotected function trim(array $array, $offset, $limit)\n\t{\n\t\t$array = array_slice($array, $offset);\n\t\tif($limit >= 0){\n\t\t\t$array = array_slice($array, 0, $limit);\n\t\t}\n\t\treturn $array;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Loads the provided theme configuration files.\n\t *\n\t * @param array $themesConfigs\n\t * \t\tThe array containing as key the ide of the theme config (index) and as a value the relative\n\t * \t\tpath of the theme configuration XML file, *(not null not empty).\n\t * @return array\n\t * \t\tThe array containing all the loaded themes.\n\t */\n\tprotected function loadThemes(array $themesConfigs)\n\t{\n\t\t$themes = array();\n\t\tforeach ($themesConfigs as $id => $rpath){\n\t\t\t$path = $this->toFullPath($rpath);\n\t\t\tif(file_exists($path)){\n\t\t\t\t$xml = $this->loadXML($path);\n\t\t\t\tif($xml != NULL){\n\t\t\t\t\t$theme = $this->loadTheme($xml, $id, $rpath);\n\t\t\t\t\tif($theme != NULL){\n\t\t\t\t\t\t$themes[] = $theme;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn $themes;\n\t}\n\n\t/**\n\t * Load the theme from the provided relative path.\n\t *\n\t * @param str $themePath\n\t * \t\tThe theme relative path.\n\t * @return Theme\n\t * \t\tThe loaded theme.\n\t */\n\tprotected function loadThemeByPath($themePath)\n\t{\n\t\t$themePath .= $this->themeConfigFileName;\n\t\tforeach ($this->findAllThemesConfigPaths() as $id => $rpath){\n\t\t\tif($themePath == $rpath){\n\t\t\t\t$path = $this->toFullPath($rpath);\n\t\t\t\tif(file_exists($path)){\n\t\t\t\t\t$xml = $this->loadXML($path);\n\t\t\t\t\tif($xml != NULL){\n\t\t\t\t\t\t$theme = $this->loadTheme($xml, $id, $rpath);\n\t\t\t\t\t\tif($theme != NULL){\n\t\t\t\t\t\t\treturn $theme;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn null;\n\t\t\t}\n\t\t}\n\t\treturn null;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Loads the XML content into SimpleXMLElement.\n\t *\n\t * @param string $path\n\t * \t\tThe path to the XML file, *(not null not empty).\n\t *\n\t * @return \\SimpleXMLElement\n\t * \t\tThe XML element, NULL if the XML is not valid.\n\t */\n\tprotected function loadXML($path)\n\t{\n\t\tif(!isset($this->cacheXMLEmelemt[$path])){\n\t\t\ttry{\n\t\t\t\t$xml = simplexml_load_file($path);\n\t\t\t}catch (\\Exception $e){\n\t\t\t\t$xml = FALSE;\n\t\t\t}\n\t\t\tif($xml === FALSE){\n\t\t\t\t$this->getErrorHandler()->error(ThemeErrors::XML_INVALID, $path);\n\t\t\t\treturn NULL;\n\t\t\t}\n\t\t\t$this->cacheXMLEmelemt[$path] = $xml;\n\n\t\t} else {\n\t\t\t$xml = $this->cacheXMLEmelemt[$path];\n\t\t}\n\t\treturn $xml;\n\t}\n\n\t/**\n\t * Loads the theme object.\n\t *\n\t * @param \\SimpleXMLElement $nodeTheme\n\t * \t\tThe node Theme XML element, *(not null not empty).\n\t * @param string $id\n\t * \t\tThe id of the loaded Theme, *(not null not empty).\n\t * @param string $themeConfig\n\t * \t\tThe path of the Theme XML file in order to extract the theme path, *(not null not empty).\n\t *\n\t * @return Newscoop\\Entity\\Theme\n\t * \t\tThe loaded theme object, NULL if there was an issue.\n\t */\n\tprotected function loadTheme(\\SimpleXMLElement $nodeTheme, $id, $themeConfig)\n\t{\n\t\tif($nodeTheme->getName() !== self::TAG_THEME){\n\t\t\t$this->getErrorHandler()->error(ThemeErrors::XML_NO_ROOT);\n\t\t\treturn NULL;\n\t\t}\n\n\t\t$theme = new Theme();\n\t\t$theme->setId($id);\n\t\t$theme->setPath($this->extractRelativePathFrom($themeConfig));\n\n\t\ttry{\n\t\t\t$theme->setName($this->readAttribute($nodeTheme, self::ATTR_THEME_NAME));\n\t\t\t$theme->setDesigner($this->readAttribute($nodeTheme, self::ATTR_THEME_DESIGNER));\n\t\t\t$theme->setVersion($this->readAttribute($nodeTheme, self::ATTR_THEME_VERSION));\n\t\t\t$theme->setMinorNewscoopVersion($this->readAttribute($nodeTheme, self::ATTR_THEME_NEWSCOOP_VERSION));\n\t\t\t$theme->setDescription($nodeTheme->{self::TAG_DESCRIPTION}->__toString());\n\t\t}catch(XMLMissingAttribueException $e){\n\t\t\t$this->getErrorHandler()->error(ThemeErrors::XML_MISSING_ATTRIBUTE, $e->getAttributeName(), $nodeTheme->getName());\n\t\t\treturn NULL;\n\t\t}\n\n\t\treturn $theme;\n\t}\n\n\t/**\n\t * Convienient method for read an attribute from a node.\n\t * This method will throw an exception in case the attribute is not specified.\n\t *\n\t * @param \\SimpleXMLElement $node\n\t * \t\tThe node to read from, *(not null not empty).\n\t * @param string $attribute\n\t * \t\tThe attribute name, *(not null not empty).\n\t *\n\t * @return string\n\t * \t\tThe attribute value, not null.\n\t * @throws XMLMissingAttribueException\n\t * \t\tIn case of no value specified for the attribute.\n\t */\n\tprotected function readAttribute(\\SimpleXMLElement $node, $attribute)\n\t{\n\t\t$value = $node[$attribute];\n\t\tif(!isset($value)){\n\t\t\tthrow new XMLMissingAttribueException($attribute);\n\t\t}\n\t\treturn $value;\n\t}\n\n\t/**\n\t * Finds all the childrens from the provided node that have the provided tag name\n\t *\n\t * @param \\SimpleXMLElement $node\n\t * \t\tThe node in which to search the childrens, not null.\n\t * @param string $tagName\n\t * \t\tThe tag name for the childrens to find, not null.\n\t * @param string $attribute\n\t * \t\tOptional attribute name to search the kids by, beside the tag name.\n\t * @param $value\n\t * \t\tOptional but if $attribute is specified than specify also the value of the attribute to find by.\n\t * @return array\n\t * \t\tan array containing all the found nodes, not null can be empty.\n\t */\n\tprotected function getNodes(\\SimpleXMLElement $node, $tagName, $attribute = NULL, $value = '')\n\t{\n\t\t$found = array();\n\t\tforeach ($node->children() as $kid){\n\t\t\t/* @var $kid \\SimpleXMLElement */\n\t\t\tif($kid->getName() === $tagName){\n\t\t\t\tif($attribute != NULL){\n\t\t\t\t\tif($kid[$attribute] == $value){\n\t\t\t\t\t\t$found[] = $kid;\n\t\t\t\t\t}\n\t\t\t\t}else{\n\t\t\t\t\t$found[] = $kid;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn $found;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Converts the provided path from the OS specific form (if is the cae) to using just forward slashes.\n\t *\n\t * @param string $path\n\t * \t\tThe path, *(not null not empty).\n\t * @return string\n\t * \t\tThe escaped path.\n\t */\n\tprotected function escapePath($path)\n\t{\n        if(!defined('DIR_SEP')) {\n            define('DIR_SEP', DIRECTORY_SEPARATOR);\n        }\n\n\t\treturn str_replace(DIR_SEP, '/', $path);\n\t}\n\n\t/**\n\t * Extracts from a provided file path the path where that file is located, attention the path needs\n\t * to be in the escaped form.\n\t *\n\t * @param string $path\n\t * \t\tThe path from which to extract the relative path, *(not null not empty).\n\t *\n\t * @return string\n\t * \t\tThe relative path for the provided path, not null.\n\t */\n\tprotected function extractRelativePathFrom($path)\n\t{\n\t\t$pos = strrpos($path, '/');\n\t\tif ($pos !== false) {\n\t\t\treturn substr($path, 0, $pos + 1);\n\t\t}\n\t\treturn '';\n\t}\n\n\t/**\n\t * Provides the full path for a theme.\n\t *\n\t * @param Theme|string $theme\n\t * \t\tThe Theme or path, *(not null not empty).\n\t * @param string $file\n\t * \t\tOptional a file to be appended to the path.\n\t * @return string\n\t * \t\tThe full path to the theme and file if is the case.\n\t */\n\tpublic function toFullPath($theme, $file = '')\n\t{\n\t\tif($theme instanceof Theme){\n\t\t\treturn $this->themesFolder.$theme->getPath().$file;\n\t\t}\n\t\treturn $this->themesFolder.$theme.$file;\n\t}\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Model/Search/Column.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Model\\Search;\n\nuse Newscoop\\Utils\\Validation;\nuse Newscoop\\Service\\Model\\Search\\Search;\n\n/**\n * Provides the column data container.\n */\nclass Column\n{\n\n\t/** @var Newscoop\\Service\\Model\\Search\\Search **/\n\tprotected $search;\n\n\t/**\n\t * Creates a new column.\n\t *\n\t * @param Newscoop\\Service\\Model\\Search\\Search $search\n\t *\t\tThe search instance that is the owner of this Column.\n\t */\n\tfunction __construct(Search $search)\n\t{\n\t\tValidation::notEmpty($search, 'search');\n\t\t$this->search = $search;\n\t\t$this->search->register($this);\n\t}\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Model/Search/ColumnOrder.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Model\\Search;\n\n/**\n * A Column extension that also provides the ability to order by.\n */\nclass ColumnOrder extends Column\n{\n\n\t/** @var bool **/\n\tprotected $ascending = NULL;\n\n\t/* --------------------------------------------------------------- */\n\t\n\t/**\n\t * Provides the ordering status of the column.\n\t * @return NULL|bool\n\t * \t\tReturns NULL if this column is not ordered, true if the order is ascending, flase for descending.\n\t */\n\tpublic function isOrderAscending(){\n\t\treturn $this->ascending;\n\t}\n\t\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Set this column to be ordered.\n\t *\n\t * @param bool $ascending\n\t *\t\tIf true than the column will be ordered asscending, if false descending.\n\t *\n\t * @return Newscoop\\Service\\Model\\Search\\Column\n\t *\t\tThis instance, used for chaining purposes.\n\t */\n\tpublic function order($ascending){\n\t\tif($this->ascending === NULL){\n\t\t\t// Added first time so we should also register this as a sor by column.\n\t\t\t$this->search->addOrderBy($this);\n\t\t}\n\t\t$this->ascending = $ascending;\n\t\treturn $this;\n\t}\n\n\t/**\n\t * Set this column to be ordered asscending.\n\t *\n\t * @return Newscoop\\Service\\Model\\Search\\Column\n\t *\t\tThis instance, used for chaining purposes.\n\t */\n\tpublic function orderAscending(){\n\t\t$this->order(TRUE);\n\t\treturn $this;\n\t}\n\n\t/**\n\t * Set this column to be ordered descending.\n\t *\n\t * @return Newscoop\\Service\\Model\\Search\\Column\n\t *\t\tThis instance, used for chaining purposes.\n\t */\n\tpublic function orderDescending(){\n\t\t$this->order(FALSE);\n\t\treturn $this;\n\t}\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Model/Search/ColumnOrderLike.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Model\\Search;\n\nuse Newscoop\\Service\\Model\\Search\\ColumnOrder;\n\n/**\n * Provides the column data container, used as a reference for comparation.\n */\nclass ColumnOrderLike extends ColumnOrder\n{\n\n\t/** @var string **/\n\tprotected $like = NULL;\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Set the search criteria on this column to be like the provided text, the text needs to have specified the place holders\n\t * ex: '%right%' or '%rat%tuil'.\n\t *\n\t * @param string $like\n\t *\t\tThe text to be used for the like comparison, if null or empty will\n\t *\t\treset the like search option.\n\t *\n\t * @return Newscoop\\Service\\Model\\Search\\ColumnOrderLike\n\t *\t\tThis instance, used for chaining purposes.\n\t */\n\tpublic function setLike($like)\n\t{\n\t\t$this->like = $like;\n\t\treturn $this;\n\t}\n\n\t/**\n\t * Provides the search criteria on this column to be like the provided text.\n\t *\n\t * @return string\n\t *\t\tThe text to be used for the like comparison, if null or empty will\n\t *\t\treset the like search option.\n\t */\n\tpublic function getLike(){\n\t\treturn $this->like;\n\t}\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Model/Search/Search.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Model\\Search;\n\nuse Newscoop\\Utils\\Validation;\nuse Newscoop\\Service\\Model\\Search\\Column;\n\n/**\n * Provides the container for the search functionality.\n *\n */\nclass Search\n{\n\n\t/** @var array **/\n\tprotected $allColumns = array();\n\n\t/** @var array **/\n\tprotected $orderBy = array();\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * (DO NOT CALL THIS DIRECTLY)\n\t * Register the column to this search.\n\t *\n\t * @param Newscoop\\Service\\Model\\Search\\Column $column\n\t *\t\tThe column to register, must not be null or empty.\n\t *\n\t * @return Newscoop\\Service\\Model\\Search\\Column\n\t *\t\tThe same column provided, used for chaining purposes.\n\t */\n\tpublic function register(Column $column)\n\t{\n\t\tValidation::notEmpty($column, 'column');\n\n\t\t$this->allColumns[] = $column;\n\n\t\treturn $column;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides all the columns registered in this search.\n\t *\n\t * @return array\n\t * \t\tThe arrays containing all the Columns registered.\n\t */\n\tpublic function getAllColumns()\n\t{\n\t\treturn $this->allColumns;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * (DO NOT CALL THIS DIRECTLY)\n\t * Add an order by column for this search.\n\t *\n\t * @param Newscoop\\Service\\Model\\Search\\Column $column\n\t *\t\tThe column to order by, must not be null or empty.\n\t */\n\tpublic function addOrderBy(Column $column)\n\t{\n\t\tValidation::notEmpty($column, 'column');\n\t\t$this->orderBy[] = $column;\n\t}\n\n\t/**\n\t * Provides the columns to be ordered by in this search.\n\t * The order in the array will be the order in which the columns have been specified for ordering.\n\t *\n\t * @return array\n\t * \t\tThe arrays containing the Columns to be ordered by.\n\t */\n\tpublic function getOrderedBy()\n\t{\n\t\treturn $this->orderBy;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Model/SearchIssue.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Model;\n\nuse Newscoop\\Service\\Model\\Search\\Search;\nuse Newscoop\\Service\\Model\\Search\\ColumnOrderLike;\n\n/**\n * Provides the container for the search of Pubication entities.\n */\nclass SearchIssue extends Search\n{\n\n\t/**\n\t * Provides the class name as a constant.\n\t */\n\tconst NAME = __CLASS__;\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * (DO NOT CHANGE)\n\t *\n\t *  @var Newscoop\\Service\\Model\\Search\\ColumnOrder\n\t **/\n\tpublic $NAME;\n\n\t/* --------------------------------------------------------------- */\n\n\tpublic function __construct() {\n\t\t$this->NAME =  new ColumnOrderLike($this);\n\t}\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Model/SearchLanguage.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Model;\n\nuse Newscoop\\Service\\Model\\Search\\Search;\nuse Newscoop\\Service\\Model\\Search\\ColumnOrderLike;\n\n/**\n * Provides the container for the search of Language entities.\n */\nclass SearchLanguage extends Search\n{\n\n\t/**\n\t * Provides the class name as a constant. \n\t */\n\tconst NAME = __CLASS__;\n\t\n\t/* --------------------------------------------------------------- */\n\t\n\t/**\n\t * (DO NOT CHANGE)\n\t *\n\t *  @var Newscoop\\Service\\Model\\Search\\ColumnOrderLike\n\t **/\n\tpublic $NAME;\n\n\t/* --------------------------------------------------------------- */\n\n\tpublic function __construct() {\n\t\t$this->NAME =  new ColumnOrderLike($this);\n\t}\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Model/SearchOutput.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Model;\n\nuse Newscoop\\Service\\Model\\Search\\Search;\nuse Newscoop\\Service\\Model\\Search\\ColumnOrderLike;\n\n/**\n * Provides the container for the search of Output entities.\n */\nclass SearchOutput extends Search\n{\n\n\t/**\n\t * Provides the class name as a constant. \n\t */\n\tconst NAME = __CLASS__;\n\t\n\t/* --------------------------------------------------------------- */\n\t\n\t/**\n\t * (DO NOT CHANGE)\n\t *\n\t *  @var Newscoop\\Service\\Model\\Search\\ColumnOrderLike\n\t **/\n\tpublic $NAME;\n\n\t/* --------------------------------------------------------------- */\n\n\tpublic function __construct() {\n\t\t$this->NAME =  new ColumnOrderLike($this);\n\t}\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Model/SearchPublication.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Model;\n\nuse Newscoop\\Service\\Model\\Search\\Search;\nuse Newscoop\\Service\\Model\\Search\\ColumnOrderLike;\n\n/**\n * Provides the container for the search of Pubication entities.\n */\nclass SearchPublication extends Search\n{\n\n\t/**\n\t * Provides the class name as a constant. \n\t */\n\tconst NAME = __CLASS__;\n\t\n\t/* --------------------------------------------------------------- */\n\t\n\t/**\n\t * (DO NOT CHANGE)\n\t *\n\t *  @var Newscoop\\Service\\Model\\Search\\ColumnOrder\n\t **/\n\tpublic $NAME;\n\n\t/* --------------------------------------------------------------- */\n\n\tpublic function __construct() {\n\t\t$this->NAME =  new ColumnOrderLike($this);\n\t}\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Model/SearchResource.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Model;\n\nuse Newscoop\\Service\\Model\\Search\\Search;\nuse Newscoop\\Service\\Model\\Search\\ColumnOrderLike;\n\n/**\n * Provides the container for the search of Resource entities.\n */\nclass SearchResource extends Search\n{\n\n\t/**\n\t * Provides the class name as a constant. \n\t */\n\tconst NAME = __CLASS__;\n\t\n\t/* --------------------------------------------------------------- */\n\t\n\t/**\n\t * (DO NOT CHANGE)\n\t *\n\t *  @var Newscoop\\Service\\Model\\Search\\ColumnOrderLike\n\t **/\n\tpublic $NAME;\n\t\n\t/**\n\t * (DO NOT CHANGE)\n\t *\n\t *  @var Newscoop\\Service\\Model\\Search\\ColumnOrderLike\n\t **/\n\tpublic $PATH;\n\n\t/* --------------------------------------------------------------- */\n\n\tpublic function __construct() {\n\t\t$this->NAME =  new ColumnOrderLike($this);\n\t\t$this->PATH =  new ColumnOrderLike($this);\n\t}\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Model/SearchSection.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Model;\n\nuse Newscoop\\Service\\Model\\Search\\Search;\nuse Newscoop\\Service\\Model\\Search\\ColumnOrderLike;\n\n/**\n * Provides the container for the search of Pubication entities.\n */\nclass SearchSection extends Search\n{\n\n\t/**\n\t * Provides the class name as a constant.\n\t */\n\tconst NAME = __CLASS__;\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * (DO NOT CHANGE)\n\t *\n\t *  @var Newscoop\\Service\\Model\\Search\\ColumnOrder\n\t **/\n\tpublic $NAME;\n\n\t/* --------------------------------------------------------------- */\n\n\tpublic function __construct() {\n\t\t$this->NAME =  new ColumnOrderLike($this);\n\t}\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Model/SearchTheme.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Model;\n\nuse Newscoop\\Service\\Model\\Search\\Search;\nuse Newscoop\\Service\\Model\\Search\\ColumnOrder;\n\n/**\n * Provides the container for the search of Theme entities.\n */\nclass SearchTheme extends Search\n{\n\t/**\n\t * Provides the class name as a constant. \n\t */\n\tconst NAME = __CLASS__;\n\t\n\t/* --------------------------------------------------------------- */\n\t\n\t/**\n\t * (DO NOT CHANGE)\n\t *\n\t *  @var Newscoop\\Service\\Model\\Search\\ColumnOrder\n\t **/\n\tpublic $NAME;\n\n\t/**\n\t * (DO NOT CHANGE)\n\t *\n\t * @var Newscoop\\Service\\Model\\Search\\ColumnOrder\n\t **/\n\tpublic $DESIGNER;\n\n\t/**\n\t * (DO NOT CHANGE)\n\t *\n\t * @var Newscoop\\Service\\Model\\Search\\ColumnOrder\n\t **/\n\tpublic $VERSION;\n\n\t/**\n\t * (DO NOT CHANGE)\n\t *\n\t * @var Newscoop\\Service\\Model\\Search\\ColumnOrder\n\t **/\n\tpublic $MINOR_NEWSCOOP_VERSION;\n\n\n\t/* --------------------------------------------------------------- */\n\n\tpublic function __construct() {\n\t\t$this->NAME =  new ColumnOrder($this);\n\t\t$this->DESIGNER = new ColumnOrder($this);\n\t\t$this->VERSION = new ColumnOrder($this);\n\t\t$this->MINOR_NEWSCOOP_VERSION = new ColumnOrder($this);\n\t}\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Resource/ResourceId.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Resource;\n\nuse Newscoop\\Utils\\Validation;\n\n/**\n * Provides the id for resource identification.\n */\nclass ResourceId\n{\n\n\tconst TYPE_ROOT = 'root';\n\tconst TYPE_SERVICE = 'service';\n\tconst TYPE_PROPERTIES = 'properties';\n\n\t/* --------------------------------------------------------------- */\n\n\t/** @var Newscoop\\Service\\Resource\\ResourceId  */\n\tprotected $parent;\n\n\t/** @var string  */\n\tprotected $id;\n\n\t/** @var string  */\n\tprotected $type;\n\n\t/**\n\t * Construct a resource id for the provided id.\n\t * The id should not be provided as a plain string it should be the actuall simple\n\t * class name of the top class (Controller) that creates the resource.\n\t *\n\t * @param string $id\n\t *\t\tThe id of the theme, must not be null or empty.\n\t * @param string $type|ResourceId::TYPE_ROOT\n\t *\t\tThe type of the id.\n\t */\n\tpublic function __construct($id, $type = ResourceId::TYPE_ROOT)\n\t{\n\t\tValidation::notEmpty($id, 'id');\n\t\t$this->id = $id;\n\t\t$this->type = $type;\n\t\t$this->parent = NULL;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the id of the resource, attention this is not the full id is just this resource id.\n\t *\n\t * @return string\n\t *\t\tThe id of the resource.\n\t */\n\tpublic function getId()\n\t{\n\t\treturn $this->id;\n\t}\n\n\t/**\n\t * Provides the full id of the resource, this id will be full path of the requesting layer components\n\t * separated by ':'.\n\t *\n\t * @return string\n\t *\t\tThe full id of the resource.\n\t */\n\tpublic function getFullId()\n\t{\n\t\tif($this->parent != NULL){\n\t\t\treturn $this->parent->getFullId().':'.$this->id;\n\t\t}\n\t\treturn $this->id;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the type of the resource, please check the contstants on this class to see what are the posible types.\n\t *\n\t * @return string\n\t *\t\tThe type of the resource.\n\t */\n\tpublic function getType()\n\t{\n\t\treturn $this->type;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the service for the requested service name.\n\t * The id should not be provided as a plain string it should be the actuall\n\t * class name ot the service API beeing requested. As a convention\n\t * this id should be obtain from the NAME contstant of a interface (ex: IThemeService::NAME),\n\t * where NAME is defined in the interface as 'const NAME = __CLASS__', if apllicable.\n\t *\n\t * @param string $serviceName\n\t *\t\tThe class name of the interface beeing requested, must not be null or empty.\n\t *\n\t * @return mixed\n\t *\t\tThe resource id obtained for this service request.\n\t */\n\tpublic function getService($serviceName)\n\t{\n\t\tValidation::notEmpty($serviceName, \"serviceName\");\n\t\t$serviceId = new ResourceId($serviceName, ResourceId::TYPE_SERVICE);\n\t\t$serviceId->parent = $this;\n\t\treturn ResourceRepository::getInstance()->getResourceFor($serviceId);\n\t}\n\n\t/**\n\t * Provides the properties for the current resource id.\n\t *\n\t * @return array\n\t *\t\tThe array containing all the properties, not null can be empty.\n\t */\n\tpublic function getProperties()\n\t{\n\t\treturn ResourceRepository::getInstance()->getResourceFor($this);\n\t}\n\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Resource/ResourceRepository.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service\\Resource;\n\nuse Newscoop\\Utils\\Tools;\nuse Newscoop\\Utils\\Validation;\nuse Newscoop\\Service\\Resource\\ResourceId;\n\n/**\n * Provides the repository containing the resources required for linking the layers.\n * The resources can be services, configurations ...\n */\nclass ResourceRepository {\n\n\t/** @var Newscoop\\Service\\Resource\\ResourceRespository  */\n\tprivate static $instance = NULL;\n\n\t/**\n\t * Provides the singletone of the resource repository.\n\t *\n\t * @return Newscoop\\Service\\Resource\\ResourceRespository\n\t *\t\tThe singletone.\n\t */\n\tpublic static function getInstance()\n\t{\n\t\tif (self::$instance === NULL) {\n\t\t\tself::$instance = new self();\n\t\t}\n\t\treturn self::$instance;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/** @var array  */\n\tprotected $repositoryProperties = NULL;\n\n\t/** @var array  */\n\tprotected $serviceCache = NULL;\n\n\tprivate function __construct() {}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the properties of the repository.\n\t *\n\t * @return array\n\t *\t\tThe array containing the properties.\n\t */\n\tpublic function getRepositoryProperties()\n\t{\n\t\tif ($this->repositoryProperties === NULL) {\n\t\t\t$this->repositoryProperties = $this->getResourceFor(new ResourceId(__CLASS__, ResourceId::TYPE_PROPERTIES));\n\t\t}\n\t\treturn $this->repositoryProperties;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Provides the resource for the provided resource id.\n\t * The resource is located by using ResourceLocator (future).\n\t *\n\t * @param Newscoop\\Service\\Resource\\ResourceId $resourceId\n\t *\t\tThe resource id used for obtaining the assigned resource, must not be null or empty.\n\t *\n\t * @return mixed\n\t *\t\tThe resource coresponding to the resource id.\n\t */\n\tpublic function getResourceFor(ResourceId $resourceId)\n\t{\t\t\n\t\tValidation::notEmpty($resourceId, 'resourceId');\n\t\t//TODO: add implementation for visitors that can provide custom resources (ResourceLocator).\n\n\t\tif($resourceId->getType() == ResourceId::TYPE_SERVICE){\n\t\t\t$simpleClassName = $this->extractSimpleClassName($resourceId->getId());\n\n\t\t\t$properties = $this->getRepositoryProperties();\n\t\t\t$implClass = $properties['service.'.$simpleClassName];\n\n\t\t\tif(!isset($implClass)){\n\t\t\t\tthrow new \\Exception(\"No default implementation set in the property file for '$simpleClassName'.\");\n\t\t\t}\n\n\t\t\t// Instantiating the service\n\t\t\t$service = new $implClass($resourceId);\n\t\t\t$service = $this->configureService($service);\n\t\t\t\n\t\t\treturn $this->cacheService($resourceId->getId(), $service);\n\t\t}\n\t\telse if($resourceId->getType() == ResourceId::TYPE_PROPERTIES){\n\t\t\t$simpleClassName = $this->extractSimpleClassName($resourceId->getId());\n\t\t\treturn $this->loadProperties($simpleClassName);\n\t\t}\n\t\tthrow new \\Exception(\"Cannot locate the resource '.$resourceId->getFullId().' of type '.$resourceId->getType().'.\");\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Configures the provided service instance with all configurations available in the properties of the repository.\n\t * This configurations works as folows:\n\t *  - if in the repository properties there is a property that has the format [simple class name].[field name]\n\t *    it will automatically assigne the value found to the service field.\n\t *  - the [simple class name] represents the service implementation simple class name (ex: 'ThemeServiceLocalFileSystem')\n\t *  - the [field name] represents the field name inside the instance that will be assigned the value for that property.\n\t *\n\t *  ex: ThemeServiceLocalFileSystem.path=\\usr\\local\n\t *\n\t *  This will configure the field path in the service instance with the provided value.\n\t *\n\t * @param mixed $service\n\t * \t\tThe service to be configured, not null.\n\t *\n\t * @return mixed\n\t *\t\tThe configured service instance.\n\t */\n\tprotected function configureService($service)\n\t{\n\t\t$prefix = 'config.'.$this->extractSimpleClassName(get_class($service)).'.';\n\t\t$length = strlen($prefix);\n\n\t\t$properties = $this->getRepositoryProperties();\n\t\tforeach ($properties as $key => $val){\n\t\t\tif(strncmp($key, $prefix, $length) == 0){\n\t\t\t\t$fieldName = substr($key, $length);\n\t\t\t\t$service->$fieldName = $val;\n\t\t\t}\n\t\t}\n\n\t\treturn $service;\n\t}\n\n\t/**\n\t * Find the service instance cached under the specified key.\n\t *\n\t * @param string $key\n\t * \t\tThe key to search by, *(not null not empty).\n\t */\n\tprotected function findInServiceCache($key){\n\t\tif ($this->serviceCache !== NULL) {\n\t\t\t$service = $this->serviceCache[$key];\n\n\t\t\tif(isset($service)){\n\t\t\t\treturn $service;\n\t\t\t}\n\t\t}\n\t\treturn NULL;\n\t}\n\n\t/**\n\t * Provides to the cache the serice instance.\n\t *\n\t * @param string $key\n\t * \t\tThe key to be used for caching the provided service instance, *(not null not empty).\n\t * @param mixed $service\n\t * \t\tThe service instance to cache, *(not null).\n\t * @return mixed\n\t *\t\tThe cached service instance.\n\t */\n\tprotected function cacheService($key, $service)\n\t{\n\t\tif ($this->serviceCache === NULL) {\n\t\t\t$this->serviceCache = array();\n\t\t}\n\t\t$this->serviceCache[$key] = $service;\n\t\treturn $service;\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\n\t/**\n\t * Load the property file at the specified path.\n\t *\n\t * @param string\n\t *\t\tThe path where the property file is located, not null not, empty.\n\t *\n\t * @return array\n\t *\t\tThe array containing the loaded properties.\n\t */\n\tprotected function loadProperties($path)\n\t{\n\t\tValidation::notEmpty($path, 'path');\n\t\treturn parse_ini_file($this->processConfigurationsPath($path));\n\t}\n\n\t/**\n\t * Provides the configuration path, where all property files are located.\n\t *\n\t * @param string $className\n\t *\t\tThe class name for which to locate the property file, this done by convention\n\t *\t\tthe class name can contain alaso the namespace which will be removed, the property file\n\t *\t\twill be considered as the simple class name with the 'properties' extension.\n\t * @return string\n\t *\t\tThe config path based on the properties convention for the provided class name.\n\t */\n\tprotected function processConfigurationsPath($className)\n\t{\n\t\tValidation::notEmpty($className, 'className');\n\n\t\t$propertiesFolder = __DIR__;\n\t\t//Removing the 'Resources' from the dir path strlen('Resources')=9\n\t\t$propertiesFolder = substr($propertiesFolder, 0, -9);\n\n\t\t$simpleClassName = $this->extractSimpleClassName($className);\n\t\treturn $propertiesFolder . '/configs/' . $simpleClassName . '.properties';\n\t}\n\n\t/**\n\t * Provides the simple class name based on the provided full class name (namespace + simple class name).\n\t *\n\t * @param string $className\n\t *\t\tThe class name from where to extract the simple class name.\n\t * @return string\n\t *\t\tThe config path.\n\t */\n\tprotected function extractSimpleClassName($className)\n\t{\n\t\tValidation::notEmpty($className, 'className');\n\n\t\t$pos = strrpos($className, '\\\\');\n\t\tif ($pos !== false) {\n\t\t\treturn substr($className, $pos + 1);\n\t\t}\n\t\treturn $className;\n\t}\n\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Service/Template.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Service;\n\nuse Newscoop\\Storage,\n    Newscoop\\Entity\\Repository\\TemplateRepository,\n    Newscoop\\Service\\Resource\\ResourceId,\n    Newscoop\\Entity\\Theme;\n\n/**\n * Template service\n */\nclass Template\n{\n    /** @var array */\n    private static $equivalentMimeTypes = array(\n        'text/plain',\n        'text/html',\n        'application/x-php',\n        'application/octet-stream',\n        'application/javascript',\n        'text/x-c',\n        'text/css' ,\n        'text/x-php',\n        'application/x-httpd-php',\n        'text/x-c++',\n        'application/x-empty; charset=binary',\n    );\n\n    /** @var Newscoop\\Storage */\n    protected $storage;\n\n    /** @var Newscoop\\Entity\\Repository\\TemplateRepository */\n    protected $repository;\n\n    /**\n     * Used for getting the proper id of a template\n     * @var Newscoop\\Service\\Implementation\\SyncResourceServiceDoctrine\n     */\n    protected $syncResServ;\n\n    /**\n     * The theme that the files belong to\n     * @var Newscoop\\Entity\\Theme\n     */\n    protected $theme;\n\n    /**\n     * @param Newscoop\\Storage $storage\n     * @param Newscoop\\Entity\\Repository\\TemplateRepository $repository\n     */\n    public function __construct(Storage $storage, TemplateRepository $repository)\n    {\n        $this->storage = $storage;\n        $this->repository = $repository;\n        $resourceId = new ResourceId('template_engine/metaclasses/MetaTemplate');\n        /* @var $syncResourceService ISyncResourceService */\n        $this->syncResServ = $resourceId->getService(ISyncResourceService::NAME);\n    }\n\n    public function setTheme(Theme $theme)\n    {\n        $this->theme = $theme;\n    }\n\n\n    /**\n     * Find items\n     *\n     * @param string $path\n     * @return Iterator\n     */\n    public function listItems($path)\n    {\n        try {\n            $items = array();\n            foreach ($this->storage->listItems($path) as $file) {\n                $items[] = $this->fetchMetadata(\"$path/$file\");\n            }\n\n            return $items;\n        } catch (\\InvalidArgumentException $e) {\n            throw new \\InvalidArgumentException(sprintf(\"'%s' not found\", $path), $e->getCode(), $e);\n        }\n    }\n\n    /**\n     * List paths in theme dir..\n     * @param string $path\n     */\n    public function listPaths($path)\n    {\n        return $this->storage->listPaths($path);\n    }\n\n    /**\n     *\n     */\n    public function cacheTemplates($path)\n    {\n        try\n        {\n            $items = array();\n            foreach ($this->storage->listItems($path) as $file) {\n                $storageFile = $this->storage->getItem($file);\n                if (!$storageFile->isDir() && $storageFile->getType() == 'tpl') {\n                    $items[] = $this->repository->getTemplate($storageFile);\n                }\n            }\n            return $this->repository->flush();\n        }\n        catch (\\InvalidArgumentException $e) {\n            throw new \\InvalidArgumentException(sprintf(\"'%s' not found\", $path), $e->getCode(), $e);\n        }\n    }\n\n    /**\n     * Store metadata\n     *\n     * @param string $key\n     * @param array $metadata\n     * @return void\n     */\n    public function storeMetadata($key, array $metadata)\n    {\n        $template = $this->repository->getTemplate($key);\n        $this->repository->save($template, $metadata);\n    }\n\n    /**\n     * Fetch item metadata\n     *\n     * @param string $key\n     * @return object\n     */\n    public function fetchMetadata($key)\n    {\n        $item = $this->storage->getItem($key);\n        $metadata = array(\n            'key' => $item->getKey(),\n            'name' => $item->getName(),\n            'type' => $item->getType(),\n            'realpath' => $this->storage->getRealpath($key),\n        );\n\n        if (!$item->isDir()) {\n            $metadata += array(\n                'size' => $item->getSize(),\n                'ctime' => $item->getChangeTime(),\n            );\n\n            if ($metadata['type'] == 'tpl') {\n                $template = $this->repository->getTemplate($key, false);\n\n                // get the resource for the template id\n                $resource = $this->syncResServ->findByPathOrId( rtrim( $this->theme->getPath(), \"/\" ).\"/\".ltrim( $key, \"/\" ) );\n                /* @var $resource Newscoop\\Entity\\Resource */\n\n                $metadata += array(\n                    'id' => is_object($resource) ? $resource->getId() : $template->getId(),\n                    'ttl' => $template->getCacheLifetime(),\n                );\n            }\n        }\n\n        return (object) $metadata;\n    }\n\n    /**\n     * Store item\n     *\n     * @param string $key\n     * @param string $data\n     * @return void\n     */\n    public function storeItem($key, $data)\n    {\n        $this->storage->storeItem($key, $data);\n    }\n\n    /**\n     * Fetch item\n     *\n     * @param string $key\n     * @return string\n     */\n    public function fetchItem($key)\n    {\n        return $this->storage->fetchItem($key);\n    }\n\n    /**\n     * Replace item\n     *\n     * @param string $key\n     * @param Zend_Form_Element_File $file\n     * @return void\n     * @throws InvalidArgumentException\n     */\n    public function replaceItem($key, \\Zend_Form_Element_File $file)\n    {\n        $oldMime = current(explode(';', $this->storage->getMimeType($key)));\n        $newMime = current(explode(';', $file->getMimeType()));\n\n        if ($oldMime != $newMime && !(in_array($oldMime, self::$equivalentMimeTypes) && in_array($newMime, self::$equivalentMimeTypes))) {\n            throw new \\InvalidArgumentException(sprintf('You can only replace a file with a file of the same type.  The original file is of type \"%s\", and the file you uploaded was of type \"%s\".', $oldMime, $newMime));\n        }\n\n        $this->storage->storeItem($key, file_get_contents($file->getFileName()));\n    }\n\n    /**\n     * Delete item\n     *\n     * @param string $key\n     * @return void\n     * @throws InvalidArgumentException\n     */\n    public function deleteItem($key)\n    {\n        if ($this->repository->isUsed($key) || $this->storage->isUsed($key)) {\n\t\t    throw new \\InvalidArgumentException(sprintf(\"The template object %s is in use and can not be deleted.\", $key));\n        }\n\n        try {\n            $this->storage->deleteItem($key);\n            $this->repository->delete($key);\n        } catch (\\InvalidArgumentException $e) {\n            throw new \\InvalidArgumentException(sprintf(\"Can't remove non empty directory '%s'\", basename($key)), $e->getCode(), $e);\n        }\n    }\n\n    /**\n     * Copy item\n     *\n     * @param string $src\n     * @param string $dest\n     * @return void\n     * @throws InvalidArgumentException\n     */\n    public function copyItem($src, $dest)\n    {\n        try {\n            $this->storage->copyItem($src, $dest);\n        } catch (\\InvalidArgumentException $e) {\n            throw new \\InvalidArgumentException(sprintf('The template %s could not be created.', \"<strong>$dest</strong>\"), $e->getCode(), $e);\n        }\n    }\n\n    /**\n     * Move item\n     *\n     * @param string $src\n     * @param string $dest\n     * @return void\n     * @throws InvalidArgumentException\n     */\n    public function moveItem($src, $dest)\n    {\n        try {\n            $name = basename($src);\n            $this->storage->moveItem($src, $dest);\n            $this->repository->updateKey($src, \"$dest/$name\");\n        } catch (\\InvalidArgumentException $e) {\n            throw new \\InvalidArgumentException(sprintf(\"Can't move file %s.\", $name), $e->getCode(), $e);\n        }\n    }\n\n    /**\n     * Rename item\n     *\n     * @param string $src\n     * @param string $dest\n     * @return void\n     * @throws InvalidArgumentException\n     */\n    public function renameItem($src, $dest)\n    {\n        try {\n            $name = basename($dest);\n            $dest = ltrim(dirname($src) . $name, './');\n            $this->storage->renameItem($src, $name);\n            $this->repository->updateKey($src, $dest);\n        } catch (\\InvalidArgumentException $e) {\n            throw new \\InvalidArgumentException(sprintf('The template object %s could not be renamed.', basename($src)), $e->getCode(), $e);\n        }\n    }\n\n    /**\n     * Create file\n     *\n     * @param string $name\n     * @return void\n     * @throws InvalidArgumentException\n     */\n    public function createFile($name)\n    {\n        try {\n            $this->storage->createFile($name);\n        } catch (\\InvalidArgumentException $e) {\n            throw new \\InvalidArgumentException(sprintf('A file or folder having the name %s already exists', $name), $e->getCode(), $e);\n        }\n    }\n\n    /**\n     * Create folder\n     *\n     * @param string $name\n     * @return void\n     * @throws InvalidArgumentException\n     */\n    public function createFolder($name)\n    {\n        try {\n            $this->storage->createDir($name);\n        } catch (\\InvalidArgumentException $e) {\n            throw new \\InvalidArgumentException(sprintf('A file or folder having the name %s already exists', $name), $e->getCode(), $e);\n        }\n    }\n\n    /**\n     * Test is writable\n     *\n     * @param string $dest\n     * @return bool\n     */\n    public function isWritable($dest)\n    {\n        return $this->storage->isWritable($dest);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Service/configs/ResourceRepository.properties",
    "content": "; Default service implementation settings, the key is made from the 'service.' prefix appended with the simple class name of the interface\n; for which the implementation is specified.\n\nservice.IErrorHandler=Newscoop\\Service\\Implementation\\ErrorHandlerOnLog\n\nservice.ISyncResourceService=Newscoop\\Service\\Implementation\\SyncResourceServiceDoctrine\n\nservice.IThemeService=Newscoop\\Service\\Implementation\\ThemeServiceLocalFileSystem\n; \t\tEnable this to rename the xml config file\n; config.ThemeServiceLocalFileSystem.themeConfigFileName=theme.xml\n\nservice.IPublicationService=Newscoop\\Service\\Implementation\\PublicationServiceDoctrine\n\nservice.IIssueService=Newscoop\\Service\\Implementation\\IssueServiceDoctrine\n\nservice.ISectionService=Newscoop\\Service\\Implementation\\SectionServiceDoctrine\n\nservice.IOutputSettingSectionService=Newscoop\\Service\\Implementation\\OutputSettingSectionServiceDoctrine\n\nservice.ITemplateSearchService=Newscoop\\Service\\Implementation\\TemplateSearchServiceDoctrine\n\nservice.IOutputSettingIssueService=Newscoop\\Service\\Implementation\\OutputSettingIssueServiceDoctrine\n\nservice.ILanguageService=Newscoop\\Service\\Implementation\\LanguageServiceDoctrine\n\nservice.IOutputService=Newscoop\\Service\\Implementation\\OutputServiceDoctrine\n\nservice.IThemeManagementService=Newscoop\\Service\\Implementation\\ThemeManagementServiceLocal\n; \t\tEnable this to rename the xml config file\n; config.ThemeManagementServiceLocal.themeConfigFileName=theme.xml\n\nservice.IArticleTypeService=Newscoop\\Service\\Implementation\\ArticleTypeServiceDoctrine\n\n\n; \t\tConfiguring the ThemeServiceLocalFileSystem\nconfig.ThemeManagementServiceLocal.themesFolder=APPLICATION_PATH \"/../themes/\"\n; \t\tConfiguring the ThemeServiceLocalFileSystem\nconfig.ThemeServiceLocalFileSystem.themesFolder=APPLICATION_PATH \"/../themes/\"\n; \t\tConfiguring the ThemeServiceLocalFileSystem\nconfig.TemplateSearchServiceDoctrine.themesFolder=APPLICATION_PATH \"/../themes/\"\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/ArticleService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Yorick Terweijden <yorick.terweijden@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Services;\n\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Entity\\Article;\nuse Newscoop\\Entity\\User;\nuse Symfony\\Component\\HttpFoundation\\Request;\n\n/**\n * Manage requested article\n */\nclass ArticleService\n{\n    /**\n     * Entity Manager\n     * @var EntityManager\n     */\n    protected $em;\n\n    /**\n     * Article object\n     * @var Article\n     */\n    protected $article;\n\n    /**\n     * Article metadata.\n     * @var array\n     */\n    protected $articleMetadata = array();\n\n    /**\n     * Construct Article Service\n     * @param EntityManager $em Entity Manager\n     */\n    public function __construct(EntityManager $em)\n    {\n        $this->em = $em;\n    }\n\n    /**\n     * Get Article object\n     * @return Article Article entity object\n     */\n    public function getArticle()\n    {\n        return $this->article;\n    }\n\n    /**\n     * Set Article object\n     * @param Article $article Article entity object\n     */\n    public function setArticle(Article $article)\n    {\n        $this->article = $article;\n\n        return $this;\n    }\n\n    /**\n     * Get article metadata\n     * @return array article metadata\n     */\n    public function getArticleMetadata()\n    {\n        return $this->articleMetadata;\n    }\n\n    /**\n     * Resolve article from provided data\n     *\n     * @param Request $request Request object\n     *\n     * @return Article $article Article entity object\n     */\n    public function articleResolver(Request $request)\n    {\n        // get the article information from the URL\n        // explode the information and use it to fetch the article\n        $uriExplode = explode('/', $request->server->get('REQUEST_URI'));\n\n        // Articles are allways under newscoop_zendbridge_bridge_index_3 route\n        if ($request->attributes->get('_route') != 'newscoop_zendbridge_bridge_index_3') {\n            return;\n        }\n\n        // if key 4 does not exist, it's probably not an article\n        if (array_key_exists(4, $uriExplode) && $uriExplode[4] !== '') {\n            $articleInfo['id'] = $uriExplode[4];\n            $articleInfo['lang'] = $uriExplode[1];\n            $articleInfo['section'] = $uriExplode[3];\n\n            $query = $this->em->createQuery('SELECT a, p, i, s FROM Newscoop\\Entity\\Article a LEFT JOIN a.packages p LEFT JOIN a.issue i LEFT JOIN a.section s LEFT JOIN a.language l WHERE a.number = :number AND l.code = :code');\n            $article = $query->setParameters(array('number' => $articleInfo['id'], 'code' => $articleInfo['lang']))\n                ->getArrayResult();\n\n            if (!empty($article)) {\n                // fill the article meta data\n                $this->articleMetadata['id']            = $article[0]['number'];\n                $this->articleMetadata['name']          = $article[0]['name'];\n                $this->articleMetadata['issue']         = $article[0]['issue']['name'];\n                $this->articleMetadata['issue_id']      = $article[0]['issueId'];\n                $this->articleMetadata['section']       = $article[0]['section']['name'];\n                $this->articleMetadata['section_id']    = $article[0]['sectionId'];\n                $this->articleMetadata['language_code'] = $articleInfo['lang'];\n                $this->articleMetadata['language_id']   = $article[0]['IdLanguage'];\n\n                // add the meta data to the request\n                $request->attributes->set('_newscoop_article_metadata', $this->articleMetadata);\n\n                return true;\n            } else {\n                return;\n            }\n        } else {\n            return;\n        }\n    }\n\n    /**\n     * Create new article\n     *\n     * @param string  $articleType\n     * @param integer $language\n     * @param User    $user\n     * @param integer $publication\n     * @param array   $attributes\n     * @param integer $issue\n     * @param integer $section\n     *\n     * @return Article\n     */\n    public function createArticle($articleType, $language, $user, $publication, $attributes = array(), $issue = null, $section = null)\n    {\n        $this->checkForArticleConflicts($attributes['name'], $publication, $issue, $section);\n\n        $article = new Article(\n            $this->em->getRepository('Newscoop\\Entity\\AutoId')->getNextArticleNumber(),\n            $language\n        );\n\n        if (!$section) {\n            $articleOrder = $article->getNumber();\n        } else {\n            $minArticleOrder = $this->em->getRepository('Newscoop\\Entity\\Article')\n                ->getMinArticleOrder($publication, $issue, $section)\n                ->getSingleScalarResult();\n\n            $increment = $minArticleOrder > 0 ? 1 : 2;\n            $this->em->getRepository('Newscoop\\Entity\\Article')\n                ->updateArticleOrder($increment, $publication, $issue, $section)\n                ->getResult();\n\n            $articleOrder = 1;\n        }\n\n        $article->setArticleOrder($articleOrder);\n        $article->setPublication($publication);\n        $article->setType($articleType);\n        $article->setCreator($user);\n        $article->setIssueId(0);\n        $article->setSectionId(0);\n        if (!is_null($issue)) {\n            $article->setIssueId($issue->getNumber());\n            $article->setIssue($issue);\n        }\n\n        if (!is_null($section)) {\n            $article->setSectionId($section->getNumber());\n            $article->setSection($section);\n        }\n\n        $this->updateArticleMeta($article, $attributes);\n\n        $article->setCommentsLocked(false); //TODO - add this to type\n        $article->setWorkflowStatus('N');\n        $article->setShortName($article->getNumber());\n        $article->setLockTime(null);\n        $article->setPublished(new \\Datetime());\n        $article->setUploaded(new \\Datetime());\n        $article->setLockUser();\n        $article->setPublic('Y');\n        $article->setIsIndexed('N');\n\n        $this->em->persist($article);\n        $this->em->flush();\n\n        $articleData = new \\ArticleData($article->getType(), $article->getNumber(), $article->getLanguageId());\n        $articleData->create();\n\n        return $article;\n    }\n\n    /**\n     * Update article\n     *\n     * @param Article $article\n     * @param array   $attributes\n     *\n     * @return Article\n     */\n    public function updateArticle($article, $attributes)\n    {\n        $this->updateArticleMeta($article, $attributes);\n        $article->setUpdated(new \\DateTime());\n        $article->setIsIndexed('N');\n\n        if (array_key_exists('fields', $attributes)) {\n            foreach ($attributes['fields'] as $field => $value) {\n                $article->setFieldData($field, $value);\n            }\n        }\n\n        $this->em->flush();\n\n        return $article;\n    }\n\n    /**\n     * Update Article static properties\n     *\n     * @param Article $article\n     * @param array   $attributes\n     *\n     * @return Article\n     */\n    private function updateArticleMeta($article, $attributes)\n    {\n\n        if (array_key_exists('name', $attributes)) {\n            $article->setName($attributes['name']);\n        }\n\n        if (array_key_exists('comments_enabled', $attributes)) {\n            $article->setCommentsEnabled($attributes['comments_enabled']);\n        }\n\n        if (array_key_exists('comments_locked', $attributes)) {\n            $article->setCommentsLocked($attributes['comments_locked']);\n        }\n\n        if (array_key_exists('onFrontPage', $attributes)) {\n            $article->setOnFrontPage($attributes['onFrontPage']);\n        }\n\n        if (array_key_exists('onSection', $attributes)) {\n           $article->setOnSection($attributes['onSection']);\n        }\n\n        if (array_key_exists('keywords', $attributes)) {\n           $article->setKeywords($attributes['keywords']? $attributes['keywords'] : '');\n        }\n\n        return $article;\n    }\n\n    /**\n     * Check if combination of article name, publication, issue and section is unique\n     *\n     * @param string                              $articleTitle\n     * @param integer|Newscoop\\Entity\\Publication $publication\n     * @param integer|Newscoop\\Entity\\Issue       $issue\n     * @param integer|Newscoop\\Entity\\Section     $section\n     *\n     * @return boolean|Newscoop\\Exception\\ResourcesConflictException\n     */\n    private function checkForArticleConflicts($articleTitle, $publication, $issue, $section)\n    {\n        $conflictingArticles = $this->em->getRepository('Newscoop\\Entity\\Article')->findBy(array(\n            'name' => $articleTitle,\n            'publication' => $publication,\n            'issue' => $issue,\n            'section' => $section,\n        ));\n\n        if (count($conflictingArticles) > 0) {\n            throw new \\Newscoop\\Exception\\ResourcesConflictException(\n                \"You cannot have two articles in the same section with the same name. The article name you specified is already in use by the article \".$conflictingArticles[0]->getNumber().\" '\".$conflictingArticles[0]->getName().\"'\"\n            );\n        }\n\n        return true;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/AttachmentService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @author Paweł Mikołąjczuk <pawel.mikolajczuk@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Newscoop\\Entity\\Attachment;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\Entity\\Language;\nuse Newscoop\\Entity\\Translation;\nuse Newscoop\\Entity\\Article;\nuse Newscoop\\Services\\UserService;\nuse Symfony\\Component\\Filesystem\\Filesystem;\nuse Symfony\\Component\\HttpFoundation\\File\\Exception\\FileException;\nuse Symfony\\Component\\HttpFoundation\\File\\UploadedFile;\nuse Symfony\\Component\\Routing\\Router;\n\n/**\n * Attachment service\n */\nclass AttachmentService\n{\n    /**\n     * @param array         $config\n     * @param EntityManager $em\n     * @param Router        $router\n     * @param UserService   $userService\n     */\n    public function __construct(array $config, \\Doctrine\\ORM\\EntityManager $em, Router $router, UserService $userService)\n    {\n        $this->config = $config;\n        $this->em = $em;\n        $this->router = $router;\n        $this->userService = $userService;\n    }\n\n    /**\n     * Upload new attachment\n     *\n     * @param UploadedFile $file\n     * @param string       $descriptionText\n     * @param Language     $language\n     * @param array        $attributes\n     * @param Attachment   $attachment\n     *\n     * @return Attachment\n     */\n    public function upload(\n        UploadedFile $file,\n        $descriptionText,\n        Language $language,\n        array $attributes,\n        Attachment $attachment = null\n    ) {\n        $filesystem = new Filesystem();\n\n        $filesize = $file->getClientSize();\n        if ($filesize == false) {\n            throw new FileException('File size is not valid');\n        }\n\n        if (!file_exists($this->config['file_directory']) || !is_writable($this->config['file_directory'])) {\n            throw new FileException('Directory '.$this->config['file_directory'].' is not writable');\n        }\n\n        if (!is_null($attachment)) {\n            if ($filesystem->exists($this->getStorageLocation($attachment))) {\n                $filesystem->remove($this->getStorageLocation($attachment));\n            }\n\n            if ($descriptionText != $attachment->getDescription()->getTranslationText()) {\n                $nextTranslationPhraseId = $this->em->getRepository('Newscoop\\Entity\\AutoId')->getNextTranslationPhraseId();\n                $description = new Translation($nextTranslationPhraseId);\n                $description->setLanguage($language);\n                $description->setTranslationText($descriptionText);\n                $this->em->persist($description);\n            }\n            unset($attributes['description']);\n        } else {\n            $attachment = new Attachment();\n            $nextTranslationPhraseId = $this->em->getRepository('Newscoop\\Entity\\AutoId')->getNextTranslationPhraseId();\n            $description = new Translation($nextTranslationPhraseId);\n            $description->setLanguage($language);\n            $description->setTranslationText($descriptionText);\n            unset($attributes['description']);\n            $attachment->setCreated(new \\DateTime());\n\n            $this->em->persist($description);\n            $this->em->persist($attachment);\n        }\n\n        $attributes = array_merge(array(\n            'language' => $language,\n            'name' => $file->getClientOriginalName(),\n            'extension' => $file->getClientOriginalExtension(),\n            'mimeType' => $file->getClientMimeType(),\n            'contentDisposition' => Attachment::CONTENT_DISPOSITION,\n            'sizeInBytes' => $file->getClientSize(),\n            'description' => $description,\n        ), $attributes);\n\n        $this->fillAttachment($attachment, $attributes);\n        if (is_null($attributes['name'])) {\n            $attachment->setName($file->getClientOriginalName());\n        }\n        $this->em->flush();\n\n        $target = $this->makeDirectories($attachment);\n\n        try {\n            $file->move($target, $this->getFileName($attachment));\n            $filesystem->chmod($target.'/'.$this->getFileName($attachment), 0644);\n        } catch (\\Exceptiom $e) {\n            $filesystem->remove($target);\n            $this->em->remove($attachment);\n            $this->em->flush();\n\n            throw new \\Exception($e->getMessage(), $e->getCode());\n        }\n\n        return $attachment;\n    }\n\n    public function remove(Attachment $attachment)\n    {\n        $filesystem = new Filesystem();\n\n        $file = $this->getStorageLocation($attachment);\n        $filesystem->remove($file);\n        $this->em->remove($attachment);\n        $this->em->flush();\n    }\n\n    public function addAttachmentToArticle(Article $article, Attachment $attachment)\n    {\n        $article->addAttachment($attachment);\n        $this->em->flush();\n    }\n\n    public function removeAttachmentFormArticle(Article $article, Attachment $attachment)\n    {\n        $article->getAttachments()->removeElement($attachment);\n        $this->em->flush();\n    }\n\n    public function getAttachmentUrl($attachment)\n    {\n        return $this->router->generate('newscoop_newscoop_attachments_downloadattachment', array(\n            'id' => $attachment->getId(),\n            'name' => $attachment->getName()\n        ), true);\n    }\n\n    private function fillAttachment(Attachment $attachment, $attributes)\n    {\n        $attributes = array_merge(array(\n            'language' => null,\n            'name' => null,\n            'extension' => null,\n            'mimeType' => null,\n            'contentDisposition' => Attachment::CONTENT_DISPOSITION,\n            'httpCharset' => null,\n            'sizeInBytes' => null,\n            'description' => null,\n            'user' => null,\n            'updated' => new \\DateTime(),\n            'source' => 'local',\n            'status' => 'unapproved',\n        ), $attributes);\n\n        $user = $attributes['user'];\n        if ($user === null) {\n            $user = $this->userService->getCurrentUser();\n        }\n\n        if ($user->hasPermission('AddFile') || $user->hasPermission('ChangeFile')) {\n            $attributes['status'] = 'approved';\n        }\n\n        if (!is_null($attributes['language'])) {\n            $attachment->setLanguage($attributes['language']);\n        }\n\n        if (!is_null($attributes['description'])) {\n            $attachment->setDescription($attributes['description']);\n        }\n\n        $attachment\n            ->setName($attributes['name'])\n            ->setExtension($attributes['extension'])\n            ->setMimeType($attributes['mimeType'])\n            ->setContentDisposition($attributes['contentDisposition'])\n            ->setHttpCharset($attributes['httpCharset'])\n            ->setSizeInBytes($attributes['sizeInBytes'])\n            ->setUser($attributes['user'])\n            ->setUpdated($attributes['updated'])\n            ->setSource($attributes['source'])\n            ->setStatus($attributes['status']);\n\n        return $attachment;\n    }\n\n    /**\n     * Get attachment storage location\n     *\n     * @param Attachment $attachment\n     *\n     * @return string\n     */\n    public function getStorageLocation(Attachment $attachment)\n    {\n        if ($attachment->getId()) {\n            $storageLocation = $this->config['file_directory']\n               .$this->getLevel1DirectoryName($attachment)\n               .\"/\".$this->getLevel2DirectoryName($attachment)\n               .\"/\".$this->getFileName($attachment);\n        } else {\n            $storageLocation = $this->config['file_directory']\n               .$this->getLevel1DirectoryName($attachment)\n               .\"/\".$this->getLevel2DirectoryName($attachment)\n               .\"/\".$this->getFileName($attachment);\n        }\n\n        return $storageLocation;\n    }\n\n    /**\n     * Get new attachment file name\n     *\n     * @param Attachment $attachment\n     *\n     * @return string\n     */\n    private function getFileName(Attachment $attachment)\n    {\n        if ($attachment->getId()) {\n            $fileName = sprintf('%09d', $attachment->getId());\n        } else {\n            $fileName = sprintf('%09d', 0);\n        }\n\n        if ($attachment->getExtension()) {\n            $fileName .= '.'.$attachment->getExtension();\n        }\n\n        return $fileName;\n    }\n\n    /**\n     * Get fist level directory name\n     *\n     * @param Attachment $attachment\n     *\n     * @return string\n     */\n    private function getLevel1DirectoryName(Attachment $attachment)\n    {\n        if ($attachment->getId()) {\n            $level1Dir = floor(\n                $attachment->getId() /\n                ($this->config['file_num_dirs_level_1'] * $this->config['file_num_dirs_level_2'])\n            );\n        } else {\n            $level1Dir = 0;\n        }\n\n        $level1ZeroPad = strlen($this->config['file_num_dirs_level_1']);\n\n        return sprintf('%0'.$level1ZeroPad.'d', $level1Dir);\n    }\n\n    /**\n     * Get second level directory name\n     *\n     * @param Attachment $attachment\n     *\n     * @return string\n     */\n    private function getLevel2DirectoryName(Attachment $attachment)\n    {\n        if ($attachment->getId()) {\n            $level2Dir = ($attachment->getId() / $this->config['file_num_dirs_level_2']) % $this->config['file_num_dirs_level_1'];\n        } else {\n            $level2Dir = 0;\n        }\n\n        $level2ZeroPad = strlen($this->config['file_num_dirs_level_2']);\n\n        return sprintf('%0'.$level2ZeroPad.'d', $level2Dir);\n    }\n\n    /**\n     * Make directories for attachments\n     *\n     * @param Attachment $attachment\n     *\n     * @return string\n     */\n    private function makeDirectories(Attachment $attachment)\n    {\n        $filesystem = new Filesystem();\n\n        $level1 = $this->config['file_directory'] . $this->getLevel1DirectoryName($attachment);\n        $filesystem->mkdir($level1);\n        $level2 = $level1.\"/\".$this->getLevel2DirectoryName($attachment);\n        $filesystem->mkdir($level2);\n\n        return $level2;\n    }\n\n     /**\n     * Return the ids of the file not edited yet.\n     *\n     * @param integer $userId User id\n     *\n     * @return array\n     */\n    public function getUnedited($userId)\n    {\n        $qb = $this->em->getRepository('Newscoop\\Entity\\Attachment')\n            ->createQueryBuilder('a');\n\n        $uneditedAttachments = $qb\n            ->leftJoin('a.description', 'd')\n            ->where('a.user = :userId')\n            ->andWhere($qb->expr()->orX(\n                $qb->expr()->isNull('d.translationText'),\n                \"d.translationText = ''\"\n            ))\n            ->setParameter('userId', $userId)\n            ->getQuery()\n            ->getArrayResult();\n\n        return $uneditedAttachments;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/AuditMaintenanceService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Doctrine\\ORM\\EntityManager,\n    Newscoop\\Entity\\Log,\n    Newscoop\\Entity\\AuditEvent;\n\n/**\n * Audit events maintenance service\n */\nclass AuditMaintenanceService\n{\n    const LOG_FILE = 'log/newscoop-audit.log';\n    const LOG_LIFETIME = 'P7D';\n\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em;\n\n    /**\n     * @param array                      $config\n     * @param Doctrine\\ORM\\EntityManager $em\n     */\n    public function __construct(EntityManager $em)\n    {\n        $this->em = $em;\n    }\n\n    /**\n     * Flush audit data\n     *\n     * @return void\n     */\n    public function flush()\n    {\n        $events = $this->getEvents();\n        try {\n            $this->writeCsv($events);\n        } catch (\\Exception $e) {\n            exit;\n        }\n\n        foreach ($events as $event) {\n            $this->em->remove($event);\n        }\n        $this->em->flush();\n    }\n\n    /**\n     * Get events to be flushed\n     *\n     * @return array\n     */\n    public function getEvents()\n    {\n        $date = new \\DateTime();\n        $date->sub(new \\DateInterval(self::LOG_LIFETIME));\n\n        return (array) $this->getRepository()->getFlushableEvents($date);\n    }\n\n    /**\n     * Write audit data in CSV format to output file\n     *\n     * @param array $events\n     */\n    public function writeCsv(array $events)\n    {\n        $fp = fopen(APPLICATION_PATH . '/../' . self::LOG_FILE, 'a');\n        if ($fp == FALSE) {\n            throw new \\Exception('Couldn\\'t open the log file');\n        }\n\n        foreach ($events as $event) {\n            $e = array(\n                $event->getId(),\n                $event->getUser() ? $event->getUser()->getId() : NULL,\n                (string) $event->getResourceType(),\n                addslashes(json_encode($event->getResourceId())),\n                (string) $event->getResourceTitle(),\n                addslashes(json_encode($event->getResourceDiff())),\n                (string) $event->getAction(),\n                $event->getCreated()->format('Y-m-d H:i:s'),\n                0\n            );\n\n            fputcsv($fp, $e, ',', '\"');\n        }\n\n        fclose($fp);\n    }\n\n    /**\n     * Get repository\n     *\n     * @return Doctrine\\ORM\\EntityRepository\n     */\n    private function getRepository()\n    {\n        return $this->em->getRepository('Newscoop\\Entity\\AuditEvent');\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/AuditService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Entity\\AuditEvent;\nuse Newscoop\\EventDispatcher\\Events\\GenericEvent;\n\n/**\n * Audit service\n */\nclass AuditService\n{\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em;\n\n    /** @var Newscoop\\Services\\UserService */\n    protected $userService;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     * @param Newscoop\\Service\\User $userService\n     */\n    public function __construct(EntityManager $em, UserService $userService)\n    {\n        $this->em = $em;\n        $this->userService = $userService;\n    }\n\n    /**\n     * Update audit\n     *\n     * @param GenericEvent $event\n     * @return void\n     */\n    public function update(GenericEvent $event)\n    {\n        $user = null;\n        try {\n            $user = isset($event['user']) ? $event['user'] : $this->userService->getCurrentUser();\n            if (!is_int($user) && is_object($user) && method_exists($user, 'getId')) {\n                $user = $user->getId();\n            }\n        } catch (\\Exception $e) {/* Catch not logged in user */}\n\n        list($resource, $action) = explode('.', $event->getName());\n        $params = $event->getArguments();\n        $values = array(\n            'user' => $user,\n            'action' => $action,\n            'resource_id' => !empty($params['id']) ? $params['id'] : null,\n            'resource_type' => $resource,\n            'resource_diff' => !empty($params['diff']) ? $params['diff'] : null,\n            'resource_title' => !empty($params['title']) ? $params['title'] : null,\n        );\n\n        $this->em->getRepository('Newscoop\\Entity\\AuditEvent')->save(new AuditEvent(), $values);\n        $this->em->flush();\n    }\n\n    /**\n     * Find all records\n     *\n     * @return array\n     */\n    public function findAll()\n    {\n        return $this->em->getRepository('Newscoop\\Entity\\AuditEvent')->findAll();\n    }\n\n    /**\n     * Find records by set of criteria\n     *\n     * @param array $criteria\n     * @param array|null $orderBy\n     * @param int|null $limit\n     * @param int|null $offset\n     * @return array\n     */\n    public function findBy(array $criteria, $orderBy = null, $limit = null, $offset = null)\n    {\n        return $this->em->getRepository('Newscoop\\Entity\\AuditEvent')->findBy($criteria, $orderBy, $limit, $offset);\n    }\n\n    public function countBy(array $criteria)\n    {\n        return $this->em->getRepository('Newscoop\\Entity\\AuditEvent')->countBy($criteria);\n    }\n\n    public function getResourceTypes()\n    {\n        $resources = $this->em->getRepository('Newscoop\\Entity\\AuditEvent')\n            ->createQueryBuilder('ae')\n            ->select('DISTINCT(ae.resource_type) as type')\n            ->orderBy('ae.resource_type')\n            ->getQuery()\n            ->getScalarResult();\n\n        return array_map(function($row) {\n            return $row['type'];\n        }, $resources);\n    }\n\n    public function getActionTypes()\n    {\n        return array('create', 'delete', 'update');\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/Auth/DoctrineAuthService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services\\Auth;\n\nuse Doctrine\\ORM\\EntityManager;\n\n/**\n * Doctrine Auth service\n *\n * @deprecated in 4.3, will be removed in 4.4\n */\nclass DoctrineAuthService implements \\Zend_Auth_Adapter_Interface\n{\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em;\n\n    /** @var string */\n    protected $email;\n\n    /** @var string */\n    protected $username;\n\n    /** @var string */\n    protected $password;\n\n    /** @var bool */\n    protected $is_admin = false;\n\n    /** @var bool */\n    protected $is_external = false;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     */\n    public function __construct(EntityManager $em)\n    {\n        $this->em = $em;\n    }\n\n    /**\n     * Perform authentication attempt\n     *\n     * @return \\Zend_Auth_Result\n     */\n    public function authenticate()\n    {\n        if ($this->is_admin || !empty($this->username)) {\n            $params = array('username' => $this->username);\n        } elseif (!empty($this->email)) {\n            $params = array('email' => $this->email);\n        }\n\n        $user = isset($params)\n            ? $this->em->getRepository('Newscoop\\Entity\\User')->findOneBy($params)\n            : null;\n\n        if (empty($user)) {\n            return new \\Zend_Auth_Result(\\Zend_Auth_Result::FAILURE_IDENTITY_NOT_FOUND, NULL);\n        }\n\n        if (!$user->isActive()) {\n            return new \\Zend_Auth_Result(\\Zend_Auth_Result::FAILURE_UNCATEGORIZED, NULL);\n        }\n\n        if ($this->is_admin && !$user->isAdmin()) {\n            return new \\Zend_Auth_Result(\\Zend_Auth_Result::FAILURE_UNCATEGORIZED, NULL);\n        }\n\n        if (!$this->is_external && !$user->checkPassword($this->password)) {\n            return new \\Zend_Auth_Result(\\Zend_Auth_Result::FAILURE_CREDENTIAL_INVALID, NULL);\n        }\n\n        $user->setLastLogin(new \\DateTime());\n        $this->em->flush(); // store updated password\n        return new \\Zend_Auth_Result(\\Zend_Auth_Result::SUCCESS, $user->getId());\n    }\n\n    /**\n     * Set username\n     *\n     * @param string $username\n     * @return Newscoop\\Services\\Auth\\DoctrineAuthService\n     */\n    public function setUsername($username)\n    {\n        $this->username = $username;\n        return $this;\n    }\n\n    /**\n     * Set password\n     *\n     * @param string $password\n     * @return Newscoop\\Services\\Auth\\DoctrineAuthService\n     */\n    public function setPassword($password)\n    {\n        $this->password = $password;\n        return $this;\n    }\n\n    /**\n     * Set is admin constrain\n     *\n     * @param bool $admin\n     * @return Newscoop\\Services\\AuthService\n     */\n    public function setAdmin($admin = true)\n    {\n        $this->is_admin = (bool) $admin;\n        return $this;\n    }\n\n    /**\n     * Set is external constrain\n     *\n     * @param bool $external\n     * @return Newscoop\\Services\\AuthService\n     */\n    public function setExternal($external = true)\n    {\n        $this->is_external = (bool) $external;\n        return $this;\n    }\n\n    /**\n     * Set email\n     *\n     * @param string $email\n     * @return Newscoop\\Services\\AuthService\n     */\n    public function setEmail($email)\n    {\n        $this->email = (string) $email;\n        return $this;\n    }\n\n    /**\n     * Find by credentials\n     *\n     * @param string $email\n     * @param string $password\n     * @return Newscoop\\Entity\\User\n     */\n    public function findByCredentials($email, $password)\n    {\n        $user = $this->em->getRepository('Newscoop\\Entity\\User')\n            ->findOneBy(array(\n                'email' => $email,\n            ));\n\n        if (empty($user) || !$user->isActive() || !$user->checkPassword($password)) {\n            return null;\n        }\n\n        return $user;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/Auth/SocialAuthService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services\\Auth;\n\nuse Doctrine\\ORM\\EntityManager,\n    Newscoop\\Entity\\User,\n    Newscoop\\Entity\\UserIdentity;\n\n/**\n */\nclass SocialAuthService implements \\Zend_Auth_Adapter_Interface\n{\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em;\n\n    /** @var string */\n    protected $provider;\n\n    /** @var string */\n    protected $providerUserId;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     */\n    public function __construct(EntityManager $em)\n    {\n        $this->em = $em;\n    }\n\n    /**\n     * Perform authentication attempt\n     *\n     * @return \\Zend_Auth_Result\n     */\n    public function authenticate()\n    {\n        $identity = $this->em->find('Newscoop\\Entity\\UserIdentity', array(\n            'provider' => $this->provider,\n            'provider_user_id' => $this->providerUserId,\n        ));\n\n        if (empty($identity)) {\n            return new \\Zend_Auth_Result(\\Zend_Auth_Result::FAILURE_IDENTITY_NOT_FOUND, NULL);\n        }\n\n        return new \\Zend_Auth_Result(\\Zend_Auth_Result::SUCCESS, $identity->getUser()->getId());\n    }\n\n    /**\n     * Set provider\n     *\n     * @param string $provider\n     * @return Newscoop\\Services\\Auth\\SocialAuthService\n     */\n    public function setProvider($provider)\n    {\n        $this->provider = $provider;\n        return $this;\n    }\n\n    /**\n     * Set provider user id\n     *\n     * @param string $providerUserId\n     * @return Newscoop\\Services\\Auth\\SocialAuthService\n     */\n    public function setProviderUserId($providerUserId)\n    {\n        $this->providerUserId = $providerUserId;\n        return $this;\n    }\n\n    /**\n     * Add identity\n     *\n     * @param Newscoop\\Entity\\User $user\n     * @param string $provider\n     * @param string $providerUserId\n     * @return void\n     */\n    public function addIdentity(User $user, $provider, $providerUserId)\n    {\n\n        $userIdentity = $this->em->getRepository('Newscoop\\Entity\\UserIdentity')\n            ->findOneBy(array(\n                'provider' => $provider,\n                'provider_user_id' => $providerUserId,\n            )\n        );\n\n        if ($userIdentity) {\n            return $userIdentity;\n        }\n\n        $userIdentity = new UserIdentity($provider, $providerUserId, $user);\n        $this->em->persist($userIdentity);\n        $user->setLastLogin(new \\DateTime());\n        $this->em->flush();\n        return $userIdentity;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/AuthorService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Exception\\ResourcesConflictException;\nuse Newscoop\\Entity\\Article;\nuse Newscoop\\Entity\\ArticleAuthor;\nuse Newscoop\\Entity\\Author;\nuse Newscoop\\Entity\\AuthorType;\n\n/**\n * Author service\n */\nclass AuthorService\n{\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em;\n\n    /** @var Doctrine\\ORM\\EntityRepository */\n    protected $repository;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     */\n    public function __construct(EntityManager $em)\n    {\n        $this->em = $em;\n        $this->repository = $this->em->getRepository('Newscoop\\Entity\\Author');\n    }\n\n    /**\n     * Get authors\n     *\n     * @param  string $term      Search term\n     * @param  int    $limit     Max results\n     * @param  bool   $alsoUsers Also return users\n     *\n     * @return array\n     */\n    public function getAuthors($term = null, $limit = null, $alsoUsers = false)\n    {\n        $qb = $this->em->createQueryBuilder();\n\n        $qb->select(\"trim(concat(aa.first_name, concat(' ', aa.last_name))) as title\")\n            ->from('Newscoop\\Entity\\Author', 'aa');\n\n        if ($term !== null && trim($term) !== '') {\n            $qb\n            ->where($qb->expr()->like('aa.last_name', ':term'))\n            ->orWhere($qb->expr()->like('aa.first_name', ':term'))\n            ->orWhere($qb->expr()->like('concat(aa.first_name, concat(\\' \\', aa.last_name))', ':term'))\n            ->setParameter('term', $term . '%')\n            ->groupBy('aa.last_name', 'aa.first_name');\n        }\n\n        if (!is_null($limit)) {\n            $qb->setMaxResults($limit);\n        }\n\n        $authorsArray = $qb->getQuery()->getArrayResult();\n\n        if ($alsoUsers) {\n            $qbUsers = clone $qb;\n            $qbUsers->resetDQLPart('from');\n            $qbUsers->from('Newscoop\\Entity\\User', 'aa');\n            $usersArray = $qbUsers->getQuery()->getArrayResult();\n            $authorsArray = array_unique(array_merge($authorsArray, $usersArray), SORT_REGULAR);\n        }\n\n        return $authorsArray;\n    }\n\n    /**\n     * Get author options\n     *\n     * @return array\n     */\n    public function getOptions()\n    {\n        $authors = array();\n        foreach ($this->repository->findBy(array(), array('last_name' => 'asc', 'first_name' => 'asc')) as $author) {\n            $authors[$author->getId()] = $author->getFullName();\n        }\n\n        return $authors;\n    }\n\n    /**\n     * Add author with type to article\n     *\n     * @param Article       $article\n     * @param Author        $author\n     * @param ArticleAuthor $authorType\n     *\n     * @return ArticleAuthor\n     */\n    public function addAuthorToArticle(Article $article, Author $author, AuthorType $authorType)\n    {\n        $articleAuthor = $this->em->getRepository('Newscoop\\Entity\\ArticleAuthor')\n            ->getArticleAuthor($article->getNumber(), $article->getLanguageCode(), $author->getId(), $authorType->getId())\n            ->getOneOrNullResult();\n\n        if (!is_null($articleAuthor)) {\n            throw new ResourcesConflictException(\"Author with this type is already attached to article\", 409);\n        }\n\n        $articleAuthors = $this->em->getRepository('Newscoop\\Entity\\ArticleAuthor')\n            ->getArticleAuthors($article->getNumber(), $article->getLanguageCode())\n            ->getArrayResult();\n\n        $articleAuthor = new ArticleAuthor();\n        $articleAuthor->setArticle($article);\n        $articleAuthor->setAuthor($author);\n        $articleAuthor->setType($authorType);\n        $articleAuthor->setOrder(count($articleAuthors)+1);\n\n        $this->em->persist($articleAuthor);\n        $this->em->flush();\n\n        return $articleAuthor;\n    }\n\n\n    /**\n     * Remove author with type from article\n     *\n     * @param Article       $article\n     * @param Author        $author\n     * @param ArticleAuthor $authorType\n     *\n     * @return ArticleAuthor\n     */\n    public function removeAuthorFromArticle(Article $article, Author $author, AuthorType $authorType)\n    {\n        $articleAuthor = $this->em->getRepository('Newscoop\\Entity\\ArticleAuthor')\n            ->getArticleAuthor($article->getNumber(), $article->getLanguageCode(), $author->getId(), $authorType->getId())\n            ->getOneOrNullResult();\n\n        if (!$articleAuthor) {\n            throw new ResourcesConflictException(\"Author with this type is not attached to article\", 409);\n        }\n\n        $this->em->remove($articleAuthor);\n        $this->em->flush();\n\n        $articleAuthors = $this->em->getRepository('Newscoop\\Entity\\ArticleAuthor')\n            ->getArticleAuthors($article->getNumber(), $article->getLanguageCode())\n            ->getResult();\n\n        $this->reorderAuthors($this->em, $articleAuthors);\n    }\n\n    /**\n     * Reorder Article Authors\n     *\n     * @param Doctrine\\ORM\\EntityManager $em\n     * @param array                      $articleAuthors\n     * @param array                      $order\n     *\n     * @return boolean\n     */\n    public function reorderAuthors($em, $articleAuthors, $order = array())\n    {\n        // clear current order\n        foreach ($articleAuthors as $articleAuthor) {\n            $articleAuthor->setOrder(null);\n        }\n        $em->flush();\n\n        if (count($order) > 1) {\n            $counter = 0;\n            foreach ($order as $item) {\n                list($authorId, $authorTypeId) = explode(\"-\", $item);\n\n                foreach ($articleAuthors as $articleAuthor) {\n                    if ($articleAuthor->getAuthor()->getId() == $authorId && $articleAuthor->getType()->getId() == $authorTypeId) {\n                        $articleAuthor->setOrder($counter+1);\n                        $counter++;\n                    }\n                }\n            }\n        } else {\n            $counter = 1;\n            foreach ($articleAuthors as $articleAuthor) {\n                $articleAuthor->setOrder($counter);\n                $counter++;\n            }\n        }\n\n        $em->flush();\n\n        return true;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/BlogService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Newscoop\\Entity\\User;\nuse Doctrine\\ORM\\EntityManager;\n\n/**\n * Blog service\n */\nclass BlogService\n{\n    const SEPARATOR = ',';\n\n    /** @var array */\n    protected $config = array();\n\n    /** @var array */\n    protected $getArticleActions = array(\n        'edit.php',\n        'preview.php',\n        'locations',\n        'images',\n        'topics',\n        'files',\n        'comments',\n        'autopublish.php',\n        'do_unlock.php',\n        'context_box',\n    );\n\n    /** @var array */\n    protected $postArticleActions = array(\n        'images',\n        'topics',\n        'files',\n        'comments',\n        'do_article_action.php',\n        'autopublish_do_add.php',\n        'context_box',\n    );\n\n    protected $em;\n\n    /**\n     * @param array $config\n     */\n    public function __construct(array $config, EntityManager $em)\n    {\n        $this->config = $config;\n        $this->em = $em;\n    }\n\n    /**\n     * Test if user is blogger\n     *\n     * @param  Newscoop\\Entity\\User $user\n     * @return bool\n     */\n    public function isBlogger(User $user)\n    {\n        foreach ($user->getGroups() as $group) {\n            if ($this->config['role'] == $group->getId()) {\n                if (count($user->getGroups()) == 1) {\n                    return true;\n                }\n            }\n        }\n\n        return false;\n    }\n\n    /**\n     * Get blog info article\n     *\n     * @param  Newscoop\\Entity\\User $user\n     * @return Article|null\n     */\n    public function getBlogInfo(User $user)\n    {\n        $articles = \\Article::GetArticles($this->config['publication'], $this->config['issue'], null, null, null, false, array(\n            \"Type = '\" . $this->config['type'] . \"'\",\n        ));\n\n        foreach ($articles as $article) {\n            $data = $article->getArticleData();\n            $authors = array_map('trim', explode(self::SEPARATOR, $data->getFieldValue('loginname')));\n            if (in_array($user->getUsername(), $authors)) {\n                return $article;\n            }\n        }\n\n        return null;\n    }\n\n    /**\n     * Get blog section for given user\n     *\n     * @param  Newscoop\\Entity\\User $user\n     * @return Section|null\n     */\n    public function getSection(User $user)\n    {\n        $blogInfo = $this->getBlogInfo($user);\n\n        return isset($blogInfo) ? $blogInfo->getSection() : null;\n    }\n\n    /**\n     * Create blog article\n     *\n     * @param  string  $title\n     * @param  Section $section\n     * @return Article\n     */\n    public function createBlog($title, \\Section $section)\n    {\n        $article = new \\Article($section->getLanguageId());\n        $article->create($this->config['article_type'], $title, $section->getPublicationId(), $section->getIssueNumber(), $section->getSectionNumber());\n\n        $qb = $this->em->createQueryBuilder();\n        $qb ->select('atf')\n            ->from('\\Newscoop\\Entity\\ArticleTypeField', 'atf')\n            ->where(\"atf.typeHack = ?1 AND atf.name IS NOT NULL AND atf.name = 'NULL'\")\n            ->setParameter(1, $this->config['article_type']);\n\n        $articleTypeField = $qb->getQuery()->getOneOrNullResult();\n        $article->setCommentsEnabled($articleTypeField->getCommentsEnabled());\n\n        return $article;\n    }\n\n    /**\n     * Test if blogger is allowed to perform action\n     *\n     * @param  Zend_Controller_Request_Abstract $request\n     * @return bool\n     */\n    public function isAllowed(\\Zend_Controller_Request_Abstract $request, User $user = null)\n    {\n        if (in_array($request->getControllerName(), array('blog', 'auth', 'image', 'slideshow', 'media'))) {\n            return TRUE;\n        }\n\n        if ($request->isXmlHttpRequest()) {\n            return TRUE;\n        }\n\n        if ($request->getParam('controller') == 'ad.php') {\n            return TRUE;\n        }\n\n        if ($request->isPost() && $request->getParam('controller') == 'articles' && in_array($request->getParam('action'), $this->postArticleActions)) {\n            if ($this->isRequestedArticleEditable($request, $user)) {\n                return TRUE;\n            }\n        }\n\n        if ($request->isGet() && $request->getParam('controller') == 'articles' && in_array($request->getParam('action'), $this->getArticleActions) && isset($user)) {\n            if ($this->isRequestedArticleEditable($request, $user)) {\n                return TRUE;\n            }\n        }\n\n        return FALSE;\n    }\n\n    /**\n     * Test if author is blog author\n     *\n     * @param  Author  $author\n     * @param  Article $blogInfo\n     * @return bool\n     */\n    public function isBlogAuthor(\\Author $author, \\Article $blogInfo)\n    {\n        return in_array($author->getId(), array_map(function ($blogAuthor) {\n            return $blogAuthor->getId();\n        }, \\ArticleAuthor::GetAuthorsByArticle($blogInfo->getArticleNumber(), $blogInfo->getLanguageId())));\n    }\n\n    /**\n     * Test if requested article is editable by user\n     *\n     * @param  Zend_Controller_Request_Abstract $request\n     * @param  Newscoop\\Entity\\User             $user\n     * @return bool\n     */\n    private function isRequestedArticleEditable(\\Zend_Controller_Request_Abstract $request, User $user)\n    {\n        $article = new \\Article($request->getParam('f_language_selected'), $request->getParam('f_article_number'));\n\n        return $this->isUsersArticle($article, $user);\n    }\n\n    /**\n     * Test if given article is from users blog\n     *\n     * @param  Article              $article\n     * @param  Newscoop\\Entity\\User $user\n     * @return bool\n     */\n    public function isUsersArticle(\\Article $article, User $user)\n    {\n        $section = $this->getSection($user);\n\n        return $section->getSectionNumber() == $article->getSectionNumber()\n            && $section->getPublicationId() == $article->getPublicationId()\n            && $section->getIssueNumber() == $article->getIssueNumber()\n            && $section->getLanguageId() == $article->getLanguageId();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/CacheService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @author Paweł Mikołąjczuk <pawel.mikolajczuk@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Newscoop\\Cache\\CacheKey;\n\n/**\n * Cache service\n */\nclass CacheService\n{\n    /**\n     * Instance of cache driver\n     *\n     * @var \\Doctrine\\Common\\Cache\\CacheProvider\n     */\n    protected $cacheDriver = null;\n\n    /**\n     * @var \\Newscoop\\NewscoopBundle\\Services\\SystemPreferencesService\n     */\n    protected $systemPreferences;\n\n    /**\n     * Initialize cache driver (based on system preferences settings, default is array)\n     *\n     * @param \\Newscoop\\NewscoopBundle\\Services\\SystemPreferencesService $systemPreferences\n     */\n    public function __construct($systemPreferences)\n    {\n        $this->systemPreferences = $systemPreferences;\n    }\n\n    /**\n     * Fetch data from cache\n     *\n     * @param string|array $id\n     *\n     * @return mixed\n     */\n    public function fetch($id)\n    {\n        return $this->getCacheDriver()->fetch($this->getCacheKey($id));\n    }\n\n    /**\n     * Check if cache have provided key\n     *\n     * @param string|array $id\n     *\n     * @return boolean\n     */\n    public function contains($id)\n    {\n        return $this->getCacheDriver()->contains($this->getCacheKey($id));\n    }\n\n    /**\n     * Save new value in cache\n     *\n     * @param string|array $id\n     * @param mixed        $data\n     * @param integer      $lifeTime\n     *\n     * @return boolean\n     */\n    public function save($id, $data, $lifeTime = 1400)\n    {\n        return $this->getCacheDriver()->save($this->getCacheKey($id), $data, $lifeTime);\n    }\n\n    /**\n     * Delete key from cache\n     *\n     * @param string|array $id\n     *\n     * @return boolean\n     */\n    public function delete($id)\n    {\n        return $this->getCacheDriver()->delete($this->getCacheKey($id));\n    }\n\n    public function getCacheKey($id, $namespace = null)\n    {\n        if (is_a($id, 'Newscoop\\CacheKey')) {\n            return $id->key;\n        }\n\n        if (is_array($id)) {\n            foreach ($id as $key => $value) {\n                if (is_object($value)) {\n                    $id[$key] = serialize($value);\n                }\n            }\n\n            $id = implode('__', $id);\n        }\n\n        // make cache key short\n        $id = md5($id.'|'.$this->systemPreferences->SiteSecretKey);\n\n        if ($namespace) {\n            $namespace = $this->getNamespace($namespace);\n\n            return $namespace.'__'.$id;\n        }\n\n        return new CacheKey(array('key' => $id));\n    }\n\n    public function getNamespace($namespace)\n    {\n        if ($this->getCacheDriver()->contains($namespace)) {\n            return $this->getCacheDriver()->fetch($namespace);\n        }\n\n        $value = $namespace .'|'.time().'|'.$this->systemPreferences->SiteSecretKey;\n        $this->getCacheDriver()->save($namespace, $value);\n\n        return $value;\n    }\n\n    public function clearNamespace($namespace)\n    {\n        $this->getCacheDriver()->save($namespace, time());\n    }\n\n    /**\n     * Get array of avaiable cache drivers (based on system configurations)\n     *\n     * @return array\n     */\n    public function getAvailableCacheEngines()\n    {\n        $engines = array();\n\n        if (extension_loaded('apc') && ini_get('apc.enabled')) {\n            $engines['Apc'] = 'apc';\n        }\n\n        if (class_exists('\\Redis')) {\n            $engines['Redis'] = 'redis';\n        }\n\n        if (class_exists('\\Memcache')) {\n            $engines['Memcache'] = 'memcache';\n        }\n\n        if (class_exists('\\Memcached')) {\n            $engines['Memcached'] = 'memcached';\n        }\n\n        if (extension_loaded('xcache') && ini_get('xcache.cacher')) {\n            $engines['Xcache'] = 'xcache';\n        }\n\n        return $engines;\n    }\n\n    /**\n     * Get cache driver instance\n     *\n     * @return \\Doctrine\\Common\\Cache\\CacheProvider\n     */\n    public function getCacheDriver()\n    {\n        if (!is_null($this->cacheDriver)) {\n            return $this->cacheDriver;\n        }\n\n        if (php_sapi_name() === 'cli') {\n            return $this->cacheDriver = new \\Doctrine\\Common\\Cache\\ArrayCache();\n        }\n\n        try {\n            switch ($this->systemPreferences->get('DBCacheEngine', 'Array')) {\n                case 'apc':\n                    $this->cacheDriver = new \\Doctrine\\Common\\Cache\\ApcCache();\n                    break;\n                case 'memcache':\n                    $memcache = new \\Memcache();\n                    $memcache->connect(\n                        $this->systemPreferences->get('DBCacheEngineHost', '127.0.0.1'), \n                        $this->systemPreferences->get('DBCacheEnginePort', '11211')\n                    );\n\n                    $this->cacheDriver = new \\Doctrine\\Common\\Cache\\MemcacheCache();\n                    $this->cacheDriver->setMemcache($memcache);\n                    break;\n                case 'memcached':\n                    $memcached = new \\Memcached();\n                    $memcached->addServer(\n                        $this->systemPreferences->get('DBCacheEngineHost', '127.0.0.1'), \n                        $this->systemPreferences->get('DBCacheEnginePort', '11211')\n                    );\n\n                    $this->cacheDriver = new \\Doctrine\\Common\\Cache\\MemcachedCache();\n                    $this->cacheDriver->setMemcached($memcached);\n                    break;\n                case 'xcache':\n                    $this->cacheDriver = new \\Doctrine\\Common\\Cache\\XcacheCache();\n                    break;\n                case 'redis':\n                    $redis = new \\Redis();\n                    $redis->connect(\n                        $this->systemPreferences->get('DBCacheEngineHost', '127.0.0.1'), \n                        $this->systemPreferences->get('DBCacheEnginePort', '6379')\n                    );\n                    $this->cacheDriver = new \\Doctrine\\Common\\Cache\\RedisCache();\n                    $this->cacheDriver->setRedis($redis);\n                    break;\n                default:\n                    $this->cacheDriver = new \\Doctrine\\Common\\Cache\\ArrayCache();\n                    break;\n            }\n        } catch (\\Exception $e) {\n            $this->cacheDriver = new \\Doctrine\\Common\\Cache\\ArrayCache();\n        }\n\n        return $this->cacheDriver;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/CommentNotificationService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Services;\n\nuse Newscoop\\EventDispatcher\\Events\\GenericEvent;\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Exception\\AuthenticationException;\n\n/**\n */\nclass CommentNotificationService\n{\n    /** @var Newscoop\\Services\\EmailService */\n    protected $emailService;\n\n    /** @var Newscoop\\Services\\CommentService */\n    protected $commentService;\n\n    /** @var Newscoop\\Services\\UserService */\n    protected $userService;\n\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em;\n\n    /**\n     * @param Newscoop\\Services\\EmailService   $emailService\n     * @param Newscoop\\Services\\CommentService $commentService\n     * @param Newscoop\\Services\\User           $userService\n     * @param Doctrine\\ORM\\EntityManager       $em\n     */\n    public function __construct(EmailService $emailService, CommentService $commentService, UserService $userService, EntityManager $em)\n    {\n        $this->emailService = $emailService;\n        $this->commentService = $commentService;\n        $this->userService = $userService;\n        $this->em = $em;\n    }\n\n    /**\n     * Update\n     *\n     * @param GenericEvent $event\n     *\n     * @return void\n     */\n    public function update(GenericEvent $event)\n    {\n        $comment = $this->commentService->find($event['id']);\n        $article = $this->em->getRepository('Newscoop\\Entity\\Article')\n            ->getArticle($comment->getThread(), $comment->getLanguage()->getId())\n            ->getSingleResult();\n\n        try {\n            $user = $this->userService->getCurrentUser();\n        } catch (AuthenticationException $e) {\n            $user = null;\n        }\n\n        $authors = \\ArticleAuthor::GetAuthorsByArticle($comment->getThread(), $comment->getLanguage()->getId());\n        $this->emailService->sendCommentNotification($comment, $article, $authors, $user);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/CommentService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\EventDispatcher\\Events\\GenericEvent;\nuse Newscoop\\Entity\\Comment;\nuse Newscoop\\NewscoopException;\nuse Newscoop\\Services\\PublicationService;\nuse Doctrine\\ORM\\Query\\Expr;\n\n/**\n * Comment service\n */\nclass CommentService\n{\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     * @param PublicationService         $publicationService\n     */\n    public function __construct(EntityManager $em, PublicationService $publicationService)\n    {\n        $this->em = $em;\n        $this->publicationService = $publicationService;\n    }\n\n    /**\n     * Save (create new/update) comment (with commenter)\n     *\n     * @param Comment $comment\n     * @param array   $attributes\n     * @param int     $userId\n     *\n     * @throws NewscoopException when user is banned from posting comments\n     *\n     * @return Comment\n     */\n    public function save($comment, $attributes, $userId = null)\n    {\n        $publication = $this->publicationService->getPublication();\n\n        // If the user was unknown (public comment) and public comments were moderated\n        // or the user was known (subscriber comment) and subscriber comments were moderated\n        // set the comment status to 'pending'. Otherwise, set the status to 'approved'.\n        if (\n            (!is_null($userId) && $publication->getCommentsSubscribersModerated()) ||\n            (is_null($userId) && $publication->getCommentsPublicModerated())\n        ){\n            $attributes['status'] = \"pending\";\n        } else {\n            $attributes['status'] = \"approved\";\n        }\n\n        $commenterRepository = $this->em->getRepository('Newscoop\\Entity\\Comment\\Commenter');\n        $commenter = new Comment\\Commenter();\n        $commenter = $commenterRepository->save($commenter, $attributes);\n        if ($this->isBanned($commenter)) {\n            throw new NewscoopException('You are banned from submitting comments.', 405);\n        }\n\n        $comment = $this->em->getRepository('Newscoop\\Entity\\Comment')\n            ->save($comment, $attributes);\n\n        // save persisted comment object\n        $this->em->flush($comment);\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('comment');\n\n        return $comment;\n    }\n\n    /**\n     * Update comment\n     *\n     * @param Comment $comment\n     * @param array   $attributes\n     *\n     * @return Comment\n     */\n    public function updateComment($comment, $attributes)\n    {\n        $comment = $this->em->getRepository('Newscoop\\Entity\\Comment')\n            ->update($comment, $attributes);\n\n        // save persisted comment object\n        $this->em->flush();\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('comment');\n\n        return $comment;\n    }\n\n    /**\n     * Mark comment as removed\n     *\n     * @param Comment $comment\n     *\n     * @return Comment\n     */\n    public function remove($comment)\n    {\n        $comment->setStatus('deleted');\n        $this->em->flush();\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('comment');\n\n        return $comment;\n    }\n\n    /**\n     * Receives notifications of points events.\n     *\n     * @param GenericEvent $event\n     *\n     * @return void\n     */\n    public function update(GenericEvent $event)\n    {\n        $params = $event->getArguments();\n        $method = str_replace('.', '_', $event->getName());\n        $this->$method($params);\n\n        $this->em->flush();\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('comment');\n    }\n\n    /**\n     * Get total count for given criteria\n     *\n     * @param array $criteria\n     *\n     * @return int\n     */\n    public function countBy(array $criteria)\n    {\n        return count($this->findBy($criteria));\n    }\n\n    /**\n     * Find a comment by its id.\n     *\n     * @param int $id\n     *\n     * @return Newscoop\\Entity\\Comment\n     *\n     */\n    public function find($id)\n    {\n        return $this->em->getRepository('Newscoop\\Entity\\Comment')\n            ->find($id);\n    }\n\n    /**\n     * Find records by set of criteria\n     *\n     * @param array      $criteria\n     * @param array|null $orderBy\n     * @param int|null   $limit\n     * @param int|null   $offset\n     *\n     * @return array\n     */\n    public function findBy(array $criteria, $orderBy = null, $limit = null, $offset = null)\n    {\n        return $this->em->getRepository('Newscoop\\Entity\\Comment')\n            ->findBy($criteria, $orderBy, $limit, $offset);\n    }\n\n    /**\n     * Gets all replies to a comment.\n     *\n     * @param array $params Parameters\n     * @param array $order  Order\n     * @param int   $limit  Result limit\n     * @param int   $start  Result start\n     *\n     * @return array\n     */\n    public function findUserComments($params, $order, $limit, $start)\n    {\n        $qb = $this->buildConditions($params);\n\n        foreach ($order as $column => $direction) {\n            $qb->addOrderBy(\"c.$column\", $direction);\n        }\n\n        $qb->setFirstResult($start);\n        $qb->setMaxResults($limit);\n\n        return $qb->getQuery()->getResult();\n    }\n\n    /**\n     * Counts all user comments by given params.\n     *\n     * @param array $params An array of parameters\n     *\n     * @return \\Doctrine\\ORM\\QueryBuilder Query Builder\n     */\n    public function countUserComments($params)\n    {\n        $qb = $this->buildConditions($params);\n        $qb->select('count(c)');\n\n        return (int) $qb->getQuery()->getSingleScalarResult();\n    }\n\n    private function buildConditions($params = array())\n    {\n        $qb = $this->em->getRepository('Newscoop\\Entity\\Comment')\n            ->createQueryBuilder('c');\n\n        $conditions = $qb->expr()->andx();\n        $conditions->add($qb->expr()->in(\"c.commenter\", $params[\"commenters\"]));\n\n        if (array_key_exists('status', $params)) {\n            $conditions->add($qb->expr()->in(\"c.status\", $params['status']));\n        }\n\n        $qb->where($conditions);\n\n        return $qb;\n    }\n\n    /**\n    * Gets all replies to a comment.\n    *\n    * @param int|array                             $commentId         Comment id\n    * @param Newscoop\\Repository\\CommentRepository $commentRepository Comment repository\n    *\n    * @return array\n    */\n    public function getAllReplies($commentId, $commentRepository)\n    {\n        if (!is_array($commentId)) {\n            $directReplies = $commentRepository->getDirectReplies($commentId);\n            if (count($directReplies)) {\n                return array_merge(array($commentId), $this->getAllReplies($directReplies, $commentRepository));\n            } else {\n                return array($commentId);\n            }\n        } else {\n            if (count($commentId) > 1) {\n                return array_merge(\n                    $this->getAllReplies(array_pop($commentId), $commentRepository),\n                    $this->getAllReplies($commentId, $commentRepository)\n                );\n            } else {\n                return $this->getAllReplies(array_pop($commentId), $commentRepository);\n            }\n        }\n    }\n\n    /**\n     * Checks if a commenter is banned\n     *\n     * @param Newscoop\\Entity\\Comment\\Commenter $commenter Commenter\n     *\n     * @return bool\n     */\n    public function isBanned($commenter)\n    {\n        if ($commenter->getUser() != null) {\n            $commenter->setName($commenter->getUser()->getUsername());\n        }\n\n        $publication = $this->publicationService->getPublication();\n        $results = $this->em->getRepository('Newscoop\\Entity\\Comment\\Acceptance')->isBanned($commenter, $publication);\n        $result = count(array_intersect(array(true), $results));\n\n        if ($result > 0) {\n            return true;\n        }\n\n        return false;\n    }\n\n    /**\n     * Searchs comments by given phrase\n     *\n     * @param string $phrase Phrase\n     *\n     * @return Doctrine\\ORM\\QueryBuilder\n     */\n    public function searchByPhrase($phrase)\n    {\n        $queryBuilder = $this->em->getRepository('Newscoop\\Entity\\Comment')\n            ->createQueryBuilder('c');\n\n        $queryBuilder\n            ->select('c', 'cm.name')\n            ->leftJoin('c.commenter', 'cm')\n            ->leftJoin('Newscoop\\Entity\\Article', 't', Expr\\Join::WITH, 'c.thread = t.number AND c.language = t.language')\n            ->where($queryBuilder->expr()->orX(\n                $queryBuilder->expr()->like('c.message', $queryBuilder->expr()->literal('%'.$phrase.'%')),\n                $queryBuilder->expr()->like('c.subject', $queryBuilder->expr()->literal('%'.$phrase.'%')),\n                $queryBuilder->expr()->like('cm.name', $queryBuilder->expr()->literal('%'.$phrase.'%')),\n                $queryBuilder->expr()->like('cm.email', $queryBuilder->expr()->literal('%'.$phrase.'%')),\n                $queryBuilder->expr()->like('t.name', $queryBuilder->expr()->literal('%'.$phrase.'%'))\n            ))\n            ->andWhere('c.status != 3')\n            ->orderBy('c.time_created', 'desc');\n\n        return $queryBuilder;\n    }\n\n    /**\n     * Get repository for comment entity\n     *\n     * @return Newscoop\\Entity\\Repository\\CommentRepository\n     */\n    public function getRepository()\n    {\n        return $this->em->getRepository('Newscoop\\Entity\\Comment');\n    }\n\n    /**\n     * Get comments statistics for articles\n     *\n     * @param mixed $ids\n     *\n     * @return array\n     */\n    public function getArticleStats($ids)\n    {\n        $ids = (array) $ids;\n        if (empty($ids)) {\n            return array();\n        }\n\n        $stats = array();\n        foreach ($ids as $id) {\n            $stats[$id] = array(\n                'normal' => 0,\n                'recommended' => 0,\n            );\n        }\n\n        foreach (array('normal' => false, 'recommended' => true) as $key => $recommended) {\n            $rows = $this->getCommentCounts($ids, $recommended);\n            foreach ($rows as $row) {\n                $stats[(int) $row['article_num']][$key] = (int) $row[1];\n            }\n        }\n\n        $ce_rows =  $this->getCommentsEnabled($ids);\n        foreach ($ce_rows as $row) {\n            $stats[(int) $row['number']]['comments_enabled'] = (bool) $row['comments_enabled'];\n        }\n\n        return $stats;\n    }\n\n    /**\n     * Get article comments_enabled\n     *\n     * @param array $ids\n     */\n    private function getCommentsEnabled(array $ids)\n    {\n        return $this->em->getRepository('Newscoop\\Entity\\Article')\n            ->createQueryBuilder('a')\n            ->select('a.comments_enabled, a.number')\n            ->where('a.number IN (:ids)')\n            ->setParameter('ids', array_values($ids))\n            ->getQuery()\n            ->getResult();\n    }\n\n    /**\n     * Get articles comment counts\n     *\n     * @param array $ids\n     *\n     * @return array\n     */\n    public function getCommentCounts(array $ids, $recommended = false, $all = false)\n    {\n        $qb = $this->getRepository()\n            ->createQueryBuilder('c')\n            ->select('COUNT(c), c.thread')\n            ->andWhere('c.thread IN (:ids)')\n            ->andWhere('c.status = :status');\n\n        if (!$all) {\n            if ($recommended) {\n                $qb->andWhere('c.recommended = 1');\n            } else {\n                $qb->andWhere('c.recommended <> 1');\n            }\n        }\n\n        return $qb->groupBy('c.thread')\n            ->setParameter('ids', array_values($ids))\n            ->setParameter('status', Comment::STATUS_APPROVED)\n            ->getQuery()\n            ->getResult();\n    }\n\n    private function comment_create($params)\n    {\n        $comment = $this->find($params['id']);\n\n        $commenter = $comment->getCommenter();\n        $user = $commenter->getUser();\n\n        if (!isset($user)) {\n            return;\n        }\n\n        $attribute_value = $user->getAttribute(\"comment_delivered\");\n        $attribute_value = isset($attribute_value) ? ($attribute_value + 1) : 1;\n\n        $user->addAttribute(\"comment_delivered\", $attribute_value);\n\n        $points_action = $this->em->getRepository('Newscoop\\Entity\\UserPoints')\n                    ->getPointValueForAction(\"comment_delivered\");\n\n        $points = $user->getPoints();\n\n        $user->setPoints($points+$points_action);\n    }\n\n    private function comment_recommended($params)\n    {\n        $comment = $this->find($params['id']);\n\n        $commenter = $comment->getCommenter();\n        $user = $commenter->getUser();\n\n        if (!isset($user)) {\n            return;\n        }\n\n        $attribute_value = $user->getAttribute(\"comment_recommended\");\n        $attribute_value = isset($attribute_value) ? ($attribute_value + 1) : 1;\n\n        $user->addAttribute(\"comment_recommended\", $attribute_value);\n\n        $points_action = $this->em->getRepository('Newscoop\\Entity\\UserPoints')\n                    ->getPointValueForAction(\"comment_recommended\");\n\n        $points = $user->getPoints();\n\n        $user->setPoints($points+$points_action);\n    }\n\n    private function comment_update($params)\n    {\n        $comment = $this->find($params['id']);\n    }\n\n    private function comment_delete($params)\n    {\n        $comment = $this->find($params['id']);\n\n        $commenter = $comment->getCommenter();\n        $user = $commenter->getUser();\n\n        if (!isset($user)) {\n            return;\n        }\n\n        $attribute_value = $user->getAttribute(\"comment_deleted\");\n        $attribute_value = isset($attribute_value) ? ($attribute_value + 1) : 1;\n\n        $user->addAttribute(\"comment_deleted\", $attribute_value);\n\n        //have to remove points for a deleted comment.\n        $points_action = $this->em->getRepository('Newscoop\\Entity\\UserPoints')\n                    ->getPointValueForAction(\"comment_delivered\");\n\n        $points = $user->getPoints();\n\n        $user->setPoints($points-$points_action);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/EditorService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2015 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Services;\n\nuse Newscoop\\EditorInterface;\nuse Newscoop\\EventDispatcher\\Events\\GenericEvent;\nuse Newscoop\\Entity\\Article;\n\n/**\n * Editor service responsible for choosing Article Edit Screen\n */\nclass EditorService implements EditorInterface\n{\n    const DEFAULT_EDITOR_LINK = \"/admin/articles/edit.php\";\n\n    protected $dispatcher;\n    protected $em;\n\n    public function __construct($dispatcher, $em)\n    {\n        $this->dispatcher = $dispatcher;\n        $this->em = $em;\n    }\n\n    /**\n     * {@inheritDoc}\n     */\n    public function getLink($article)\n    {\n        $articleInfo = $this->getArticleDetails($article);\n        $language = $this->em->getReference('Newscoop\\Entity\\Language', $articleInfo['languageId']);\n        $arguments = $this->dispatcher->dispatch('newscoop_admin.editor', new GenericEvent(null, array(\n            'articleNumber' => $articleInfo['number'],\n            'articleLanguage' => $language->getCode(),\n        )));\n\n        if ($arguments->hasArgument('link') && $arguments->getArgument('link')) {\n            return $arguments->getArgument('link');\n        }\n\n        return self::DEFAULT_EDITOR_LINK.$this->getLinkParameters($article);\n    }\n\n    /**\n     * {@inheritDoc}\n     */\n    public function getLinkParameters($article)\n    {\n        $article = $this->getArticleDetails($article);\n\n        return '?f_publication_id='.$article['publicationId']\n            .'&f_issue_number='.$article['issueId'].'&f_section_number='.$article['sectionId']\n            .'&f_article_number='.$article['number'].'&f_language_id='.$article['languageId']\n            .'&f_language_selected='.$article['languageId'];\n    }\n\n    private function getArticleDetails($article)\n    {\n        $articleInfo = array(\n            'publicationId' => $article->getPublicationId(),\n            'languageId' => $article->getLanguageId(),\n        );\n\n        if ($article instanceof Article) {\n            $articleInfo['issueId'] = $article->getIssueId();\n            $articleInfo['sectionId'] = $article->getSectionId();\n            $articleInfo['number'] = $article->getNumber();\n\n            return $articleInfo;\n        }\n\n        $articleInfo['issueId'] = $article->getIssueNumber();\n        $articleInfo['sectionId'] = $article->getSectionNumber();\n        $articleInfo['number'] = $article->getArticleNumber();\n\n        return $articleInfo;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/EmailService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Services;\n\nuse Newscoop\\Entity\\User;\nuse Newscoop\\Entity\\Comment;\nuse Newscoop\\Entity\\Article;\nuse Newscoop\\Entity\\Publication;\nuse Symfony\\Component\\DependencyInjection\\Container;\n\n/**\n * Email service\n */\nclass EmailService\n{\n    /** @var Container */\n    protected $container;\n\n    /**\n     * @param Container $container\n     */\n    public function __construct(Container $container)\n    {\n        $this->container = $container;\n    }\n\n    /**\n     * Send to user email confirmation token\n     *\n     * @param Newscoop\\Entity\\User $user\n     *\n     * @return void|Exception\n     */\n    public function sendConfirmationToken(User $user)\n    {\n        $tokenService = $this->container->get('user.token');\n        $publicationService = $this->container->get('newscoop_newscoop.publication_service');\n        $templatesService = $this->container->get('newscoop.templates.service');\n        $placeholdersService = $this->container->get('newscoop.placeholders.service');\n        $preferencesService = $this->container->get('preferences');\n        $smarty = $templatesService->getSmarty();\n        $smarty->assign('user', new \\MetaUser($user));\n        $smarty->assign('token', $tokenService->generateToken($user, 'email.confirm'));\n        $smarty->assign('site', $publicationService->getPublicationAlias()->getName());\n        $message = $templatesService->fetchTemplate(\"email_confirm.tpl\");\n        $this->send($placeholdersService->get('subject'), $message, $user->getEmail(), $preferencesService->EmailFromAddress);\n    }\n\n    /**\n     * Send password restore token\n     *\n     * @param Newscoop\\Entity\\User $user\n     *\n     * @return void|Exception\n     */\n    public function sendPasswordRestoreToken(User $user)\n    {\n        $tokenService = $this->container->get('user.token');\n        $publicationService = $this->container->get('newscoop_newscoop.publication_service');\n        $templatesService = $this->container->get('newscoop.templates.service');\n        $placeholdersService = $this->container->get('newscoop.placeholders.service');\n        $preferencesService = $this->container->get('preferences');\n        $smarty = $templatesService->getSmarty();\n        $smarty->assign('user', new \\MetaUser($user));\n        $smarty->assign('token', $tokenService->generateToken($user, 'password.restore'));\n        $smarty->assign('site', $publicationService->getPublicationAlias()->getName());\n        $message = $templatesService->fetchTemplate(\"email_password-restore.tpl\");\n        $this->send($placeholdersService->get('subject'), $message, $user->getEmail(), $preferencesService->EmailFromAddress);\n    }\n\n    /**\n     * Send email\n     *\n     * @param string      $placeholder\n     * @param string      $message\n     * @param string      $to\n     * @param string|null $from\n     * @param string|null $attachmentDir\n     *\n     * @return void\n     * @throws Exception when error sending email\n     */\n    public function send($placeholder, $message, $to, $from = null, $attachmentDir = null)\n    {\n        $publicationService = $this->container->get('newscoop_newscoop.publication_service');\n        $mailer = $this->container->get('mailer');\n        if (empty($from)) {\n            $from = 'no-reply@'.$publicationService->getPublicationAlias()->getName();\n        }\n\n        try {\n            $messageToSend = \\Swift_Message::newInstance();\n\n            if (is_array($to)) {\n                if (array_key_exists('moderator', $to)) {\n                    $messageToSend->addBcc($to['moderator']);\n                    unset($to['moderator']);\n                }\n            }\n\n            $messageToSend->setSubject($placeholder)\n                ->setFrom($from)\n                ->setTo($to)\n                ->setBody($message, 'text/html');\n\n            if ($attachmentDir) {\n                $messageToSend->attach(\\Swift_Attachment::fromPath($attachmentDir));\n            }\n\n            $mailer->send($messageToSend);\n        } catch (\\Exception $exception) {\n            throw $exception;\n        }\n    }\n\n    /**\n     * Send comment notification\n     *\n     * @param Newscoop\\Entity\\Comment $comment\n     * @param Newscoop\\Entity\\Article $article\n     * @param array                   $authors\n     * @param Newscoop\\Entity\\User    $user\n     *\n     * @return void\n     */\n    public function sendCommentNotification(Comment $comment, Article $article, array $authors, User $user = null)\n    {\n        $publicationService = $this->container->get('newscoop_newscoop.publication_service');\n        $templatesService = $this->container->get('newscoop.templates.service');\n        $placeholdersService = $this->container->get('newscoop.placeholders.service');\n        $preferencesService = $this->container->get('preferences');\n        $translator = $this->container->get('translator');\n        $emails = array_unique(array_filter(array_map(function ($author) {\n            return $author->getEmail();\n        }, $authors)));\n\n        $publication = $publicationService->getPublication();\n        $moderatorTo = $this->getModeratorEmailIfModerationEnabled($publication, $user);\n        $moderatorTo ? $emails['moderator'] = $moderatorTo : null;\n        $moderatorFrom = $publication->getModeratorFrom();\n\n        if (empty($emails)) {\n            return;\n        }\n\n        $smarty = $templatesService->getSmarty();\n        $uri = \\CampSite::GetURIInstance();\n        if ($user) {\n            $smarty->assign('username', $user->getUsername());\n        } else {\n            $smarty->assign('username', $translator->trans('anonymous'));\n        }\n\n        $smarty->assign('comment', $comment);\n        $smarty->assign('article', new \\MetaArticle($article->getLanguageId(), $article->getNumber()));\n        $smarty->assign('publication', $uri->getBase());\n        $smarty->assign('site', $uri->getBase());\n        $smarty->assign('articleLink', \\ShortURL::GetURI($article->getPublicationId(), $article->getLanguageId(), $article->getIssueId(), $article->getSectionId(), $article->getNumber()));\n\n        $message = $templatesService->fetchTemplate(\"email_comment-notify.tpl\");\n        $this->send($placeholdersService->get('subject'), $message, $emails, $moderatorFrom ?: $preferencesService->EmailFromAddress);\n    }\n\n    private function getModeratorEmailIfModerationEnabled(Publication $publication, $user = null)\n    {\n        if ($publication->getCommentsEnabled()) {\n            if ($publication->getCommentsSubscribersModerated() &&\n                ($publication->getPublicCommentsEnabled() && $publication->getCommentsPublicModerated())) {\n                return $publication->getModeratorTo();\n            }\n\n            if (($publication->getPublicCommentsEnabled() && $publication->getCommentsPublicModerated() &&\n                !$publication->getCommentsSubscribersModerated() && !$user) || $publication->getCommentsSubscribersModerated() &&\n                !($publication->getPublicCommentsEnabled() && $publication->getCommentsPublicModerated()) && $user) {\n                return $publication->getModeratorTo();\n            }\n        }\n    }\n\n    /**\n     * Send user message from other user\n     *\n     * @param string $from\n     * @param string $to\n     * @param string $subject\n     * @param string $message\n     *\n     * @return void\n     */\n    public function sendUserEmail($from, $to, $subject, $message)\n    {\n        $this->send($subject, $message, $to, $from);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/FilesystemService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Doctrine\\ORM\\EntityManager;\n\n/**\n * Filesystem service\n */\nclass FilesystemService\n{\n\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em;\n\n    /**\n     * Constructor\n     *\n     * @param Doctrine\\ORM\\EntityManager $em\n     */\n    public function __construct(EntityManager $em)\n    {\n        $this->em = $em;\n    }\n\n    /**\n     * Check if file is isReadable\n     *\n     * @param  string  $fileName\n     * @param  boolean $message  Show message\n     *\n     * @return boolean\n     */\n    public static function isReadable($fileName, $message = true)\n    {\n        if (!is_readable($fileName)) {\n            if ($message) {\n                echo \"\\nThis script requires access to the file $p_fileName.\\n\";\n                echo \"Please run this script as a user with appropriate privileges.\\n\";\n                echo \"Most often this user is 'root'.\\n\\n\";\n            }\n\n            return false;\n        }\n\n        return true;\n    }\n\n    /**\n     * Makes a file name safe to use.\n     *\n     * @param  string  $fileName\n     *\n     * @return string\n     */\n    public function sanitizeFileName($fileName)\n    {\n        $fileName = htmlentities($fileName, ENT_QUOTES, 'UTF-8');\n        $fileName = preg_replace('~&([a-z]{1,2})(acute|cedil|circ|grave|lig|orn|ring|slash|th|tilde|uml);~i', '$1', $fileName);\n        $fileName = html_entity_decode($fileName, ENT_QUOTES, 'UTF-8');\n        $fileName = preg_replace(array('~[^0-9a-z]~i', '~[ -]+~'), ' ', $fileName);\n\n        return trim($fileName, ' -');\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/GarbageCollectionService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Entity\\User;\n\n/**\n * Deletes inactive users after defined days\n */\nclass GarbageCollectionService\n{\n    /**\n     * @var Doctrine\\ORM\\EntityManager\n     */\n    protected $em;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     */\n    public function __construct(EntityManager $em)\n    {\n        $this->em = $em;\n    }\n\n    /**\n     * Run users garbage collection\n     *\n     * @param string $days\n     *\n     * @return void\n     */\n    public function run($days)\n    {\n        $this->gcUsers($days);\n        $this->gcTokens();\n    }\n\n    /**\n     * Remove obsolete users\n     *\n     * @param string $days\n     *\n     * @return void\n     */\n    private function gcUsers($days)\n    {\n        $query = $this->em->createQueryBuilder()\n            ->delete('Newscoop\\Entity\\User', 'u')\n            ->where('u.created < :ttl')\n            ->andWhere('u.status = :status')\n            ->getQuery();\n\n        $query->setParameter('ttl', new \\DateTime('-'.$days.' days'));\n        $query->setParameter('status', User::STATUS_INACTIVE);\n        $query->execute();\n    }\n\n    /**\n     * Remove obsolete tokens\n     *\n     * @return void\n     */\n    private function gcTokens()\n    {\n        $query = $this->em->createQueryBuilder()\n            ->delete('Newscoop\\Entity\\UserToken', 't')\n            ->where('t.user NOT IN (SELECT u.id FROM Newscoop\\Entity\\User u)')\n            ->getQuery();\n\n        $query->execute();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/InputManipulator.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Yorick Terweijden <yorick.terweijden@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\n/**\n * Input Manipulator service\n */\nclass InputManipulator\n{\n    /**\n     * cleanMagicQuotes\n     * @param array $array object to clean from quotes\n     *\n     * @return array $gpcList cleaned object\n     */\n\n    public static function cleanMagicQuotes(array $array)\n    {\n       $gpcList = array();\n\n       foreach ($array as $key => $value) {\n           $decodedKey = stripslashes($key);\n           if (is_array($value)) {\n               $decodedValue = self::cleanMagicQuotes($value);\n           } else {\n               $decodedValue = stripslashes($value);\n           }\n           $gpcList[$decodedKey] = $decodedValue;\n       }\n\n       return $gpcList;\n    }\n\n    /**\n     * getVar searches and returns the variable from an array or string in the requested type.\n     *\n     * @param array                $parameters\n     * @param array|string         $parameters['inputObject']   haystack\n     * @param string               $parameters['variableName']  needle\n     * @param string               $parameters['variableType']  type the variable should have (string, int, array, boolean)\n     * @param string|int|bool|null $parameters['defaultValue']  default value for the variable if it doesn't exist\n     * @param bool                 $parameters['checkIfExists'] check if the variable exists (for if statements, only returns BOOL)\n     * @param bool                 $parameters['ignoreErrors']  ignore errors, return empty\n     *\n     * @return string|int|bool the variable found or a bool with checkIfExists\n     */\n\n    public static function getVar(array $parameters = array())\n    {\n        $requiredParams = array('inputObject', 'variableName');\n        $defaultParams = array(\n                                'variableType' => 'string',\n                                'defaultValue' => null,\n                                'checkIfExists' => false,\n                                'ignoreErrors' => false\n                            );\n        foreach ($requiredParams as $requiredParam) {\n            if (!array_key_exists($requiredParam, $parameters)) {\n                throw new \\InvalidArgumentException(__METHOD__.': Parameter '.$requiredParam.' is required.');\n            }\n        }\n\n        foreach ($defaultParams as $defaultParam => $defaultValue) {\n            if (!array_key_exists($defaultParam, $parameters)) {\n                $parameters[$defaultParam] = $defaultValue;\n            }\n        }\n\n        // allow the GetVar to also use strings\n        if (!is_array($parameters['inputObject'])) {\n            $parameters['inputObject'] = array($parameters['variableName'] => $parameters['inputObject']);\n        }\n\n        $parameters['variableType'] = strtolower($parameters['variableType']);\n\n        if (!array_key_exists($parameters['variableName'], $parameters['inputObject'])) {\n            if ($parameters['checkIfExists']) {\n                return false;\n            }\n            if (!$parameters['ignoreErrors']) {\n                throw new \\InvalidArgumentException('\"'.$parameters['variableName'].'\" is not set');\n            }\n\n            return $parameters['defaultValue'];\n        } else {\n            if ($parameters['checkIfExists']) {\n                return true;\n            }\n        }\n        // Clean the slashes\n        if (get_magic_quotes_gpc()) {\n            if (is_array($parameters['inputObject'][$parameters['variableName']])) {\n                $parameters['inputObject'][$parameters['variableName']] = self::cleanMagicQuotes($parameters['inputObject'][$parameters['variableName']]);\n            } else {\n                $parameters['inputObject'][$parameters['variableName']] = stripslashes($parameters['inputObject'][$parameters['variableName']]);\n            }\n        }\n        switch ($parameters['variableType']) {\n            case 'boolean':\n                $value = strtolower($parameters['inputObject'][$parameters['variableName']]);\n                if ( ($value == \"true\") || (is_numeric($value) && ($value > 0)) ) {\n                    return true;\n                } else {\n                    return false;\n                }\n                break;\n            case 'int':\n                if (!is_numeric($parameters['inputObject'][$parameters['variableName']])) {\n                    if (!$parameters['ignoreErrors']) {\n                        throw new \\InvalidArgumentException('\"'.$parameters['variableName'].'\" Incorrect type. Expected type: \"'.$parameters['variableType'].'\" got \"'.gettype($parameters['inputObject'][$parameters['variableName']]).'\" (\"'.$parameters['inputObject'][$parameters['variableName']].'\") instead.');\n                    }\n\n                    return (int) $parameters['defaultValue'];\n                }\n                break;\n            case 'string':\n                if (!is_string($parameters['inputObject'][$parameters['variableName']])) {\n                    if (!$parameters['ignoreErrors']) {\n                        throw new \\InvalidArgumentException('\"'.$parameters['variableName'].'\" Incorrect type. Expected type: \"'.$parameters['variableType'].'\" got \"'.gettype($parameters['inputObject'][$parameters['variableName']]).'\" (\"'.$parameters['inputObject'][$parameters['variableName']].'\") instead.');\n                    }\n\n                    return $parameters['defaultValue'];\n                }\n                break;\n            case 'array':\n                if (!is_array($parameters['inputObject'][$parameters['variableName']])) {\n                    $newArray = array();\n                    $newArray[] = $parameters['inputObject'][$parameters['variableName']];\n\n                    return $newArray;\n                }\n                break;\n            default:\n                throw new \\InvalidArgumentException(__METHOD__.': Variable type '.$parameters['variableType'].' is not supported.');\n                break;\n        }\n\n        return $parameters['inputObject'][$parameters['variableName']];\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/IssueService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric z.ú.\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Services;\n\nuse Newscoop\\IssueServiceInterface;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Entity\\Issue;\n\n/**\n * Issue service\n */\nclass IssueService implements IssueServiceInterface\n{\n    /**\n     * Entity Manager\n     *\n     * @var EntityManager\n     */\n    protected $em;\n\n    /**\n     * Issue meta data array\n     *\n     * @var array\n     */\n    protected $issueMetadata = array();\n\n    /**\n     * Publication service\n     *\n     * @var PublicationService\n     */\n    protected $publicationService;\n\n    /**\n     * Issue object\n     *\n     * @var Issue\n     */\n    protected $issue;\n\n    /**\n     * Cache Service\n     *\n     * @var CacheService\n     */\n    protected $cacheService;\n\n    /**\n     * Construct\n     */\n    public function __construct(EntityManager $em, PublicationService $publicationService, CacheService $cacheService)\n    {\n        $this->em = $em;\n        $this->publicationService = $publicationService;\n        $this->cacheService = $cacheService;\n    }\n\n    /**\n     * {@inheritDoc}\n     */\n    public function getIssueMetadata()\n    {\n        return $this->issueMetadata;\n    }\n\n    /**\n     * {@inheritDoc}\n     */\n    public function getIssue()\n    {\n        if (!$this->issue) {\n            return $this->getLatestPublishedIssue();\n        }\n\n        return $this->issue;\n    }\n\n    /**\n     * {@inheritDoc}\n     */\n    public function setIssue(Issue $issue)\n    {\n        $this->issue = $issue;\n\n        return $this;\n    }\n\n    /**\n     * {@inheritDoc}\n     */\n    public function issueResolver(Request $request)\n    {\n        $uriParts = explode('/', $request->getRequestUri());\n        $uriPartsCount = count(array_filter($uriParts));\n        $issue = null;\n        $publication = $this->publicationService->getPublication();\n        if ($publication && $uriPartsCount >= 2 && $uriPartsCount <= 5) {\n            $cacheKey = $this->cacheService->getCacheKey(array(\n                'resolver',\n                $publication->getId(),\n                $uriParts[1],\n                $uriParts[2],\n            ), 'issue');\n\n            if ($this->cacheService->contains($cacheKey)) {\n                $issue = $this->cacheService->fetch($cacheKey);\n            } else {\n                $issue = $this->em->getRepository('Newscoop\\Entity\\Issue')\n                    ->getIssue($uriParts[1], $publication, $uriParts[2])\n                    ->getOneOrNullResult();\n\n                $this->cacheService->save($cacheKey, $issue);\n            }\n\n            if ($issue) {\n                $this->issueMetadata = array(\n                    'id' => $issue->getId(),\n                    'number' => $issue->getNumber(),\n                    'name' => $issue->getName(),\n                    'shortName' => $issue->getShortName(),\n                    'code_default_language' => $issue->getLanguage()->getCode(),\n                    'id_default_language' => $issue->getLanguageId(),\n                );\n\n                $request->attributes->set('_newscoop_issue_metadata', $this->issueMetadata);\n                $this->setIssue($issue);\n\n                return $issue;\n            }\n        }\n\n        return $this->getLatestPublishedIssue($request->getLocale());\n    }\n\n    /**\n     * {@inheritDoc}\n     */\n    public function getLatestPublishedIssue($languageCode = null)\n    {\n        $publication = $this->publicationService->getPublication();\n        if (!$publication) {\n            return;\n        }\n\n        $language = $this->em->getRepository('Newscoop\\Entity\\Language')\n            ->findOneBy(array('code' => $languageCode));\n        if (!($language instanceof \\Newscoop\\Entity\\Language)) {\n            $language = $publication->getDefaultLanguage();\n        }\n\n        $publicationId = $publication->getId();\n        $languageId = $language->getId();\n        $cacheKey = $this->cacheService->getCacheKey(array(\n            'latest_published',\n            $publicationId,\n            $languageId,\n        ), 'issue');\n\n        if ($this->cacheService->contains($cacheKey)) {\n            $issue = $this->cacheService->fetch($cacheKey);\n        } else {\n            try {\n                $issue = $this->em\n                    ->getRepository('Newscoop\\Entity\\Issue')\n                    ->getLastPublishedByPublicationAndLanguage($publicationId, $languageId)\n                    ->getSingleResult();\n            } catch(\\Doctrine\\ORM\\NoResultException $e) {\n                return;\n            }\n\n            $this->cacheService->save($cacheKey, $issue);\n        }\n\n        if (!$issue) {\n            return;\n        }\n\n        $this->setIssue($issue);\n\n        return $issue;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/ListPaginatorService.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @author Paweł Mikołąjczuk <pawel.mikolajczuk@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Knp\\Component\\Pager\\Paginator;\n\n/**\n * List Paginator service\n */\nclass ListPaginatorService\n{\n    /**\n     * @var \\Knp\\Component\\Pager\\Paginator\n     */\n    protected $paginator;\n\n\n    /**\n     * Set page partameter name\n     *\n     * @param string $pageParameterName\n     *\n     * @return self\n     */\n    public function setPageParameterName($pageParameterName)\n    {\n        $this->paginator->setDefaultPaginatorOptions(array(\n            'pageParameterName' => $pageParameterName,\n        ));\n\n        return $this;\n    }\n\n    /**\n     * Set used route\n     *\n     * @param string $route Used route in request\n     *\n     * @return self\n     */\n    public function setRoute($route)\n    {\n        $this->paginator->setDefaultPaginatorOptions(array(\n            'route' => $route\n        ));\n\n        return $this;\n    }\n\n    /**\n     * Set parameters required by route generator for used route\n     *\n     * @param array $params Route parameters\n     *\n     * @return self\n     */\n    public function setRouteParams(array $params = array())\n    {\n        $this->paginator->setDefaultPaginatorOptions(array(\n            'route_params' => $params\n        ));\n\n        return $this;\n    }\n\n    public function __construct()\n    {\n        $this->paginator = new Paginator();\n    }\n\n    /**\n     * Paginate target with passed page and limit, apply default pagination remplate to renderer\n     *\n     * @param mixed   $target\n     * @param integer $pageNumber\n     * @param integer $limit\n     *\n     * @return \\Knp\\Bundle\\PaginatorBundle\\Pagination\\SlidingPagination\n     */\n    public function paginate($target, $pageNumber = 1, $limit = 10)\n    {\n        $pagination = $this->paginator->paginate($target, $pageNumber, $limit);\n\n        return $pagination;\n    }\n\n    /**\n     * Get paginator\n     *\n     * @return \\Knp\\Component\\Pager\\Paginator\n     */\n    public function getPaginator()\n    {\n        return $this->paginator;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/ListUserService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\User\\UserCriteria;\n\n/**\n * List User service\n */\nclass ListUserService\n{\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em;\n\n    /** @var array */\n    protected $config = array('role' => 0);\n\n    /**\n     * @param array $config\n     * @param Doctrine\\ORM\\EntityManager $em\n     */\n    public function __construct(array $config, EntityManager $em)\n    {\n        $this->config = array_merge($this->config, $config);\n        $this->em = $em;\n    }\n\n    /**\n     * Find by criteria\n     *\n     * @param Newscoop\\User\\UserCriteria $criteria\n     * @return Newscoop\\ListResult;\n     */\n    public function findByCriteria(UserCriteria $criteria)\n    {\n        return $this->getRepository()->getListByCriteria($criteria);\n    }\n\n    /**\n     * Find by given criteria\n     *\n     * @param array $criteria\n     * @param array $orderBy\n     * @param int $limit\n     * @param int $offset\n     * @return array\n     */\n    public function findBy(array $criteria, array $orderBy = array(), $limit = NULL, $offset = NULL)\n    {\n        return $this->getRepository()\n            ->findBy($criteria, $orderBy, $limit, $offset);\n    }\n\n    /**\n     * Count by given criteria\n     *\n     * @param array $criteria\n     * @return int\n     */\n    public function countBy(array $criteria = array())\n    {\n        return $this->getRepository()->countBy($criteria);\n    }\n\n    /**\n     * Find one user by criteria\n     *\n     * @param array $criteria\n     * @return Newscoop\\Entity\\User\n     */\n    public function findOneBy(array $criteria)\n    {\n        return $this->getRepository()->findOneBy($criteria);\n    }\n\n    /**\n     * List active users\n     *\n     * @return array\n     */\n    public function getActiveUsers($countOnly=false, $page=1, $limit=8, $editors = array())\n    {   \n        $offset = ($page-1) * $limit;\n        $result = $this->getRepository()->findActiveUsers($countOnly, $offset, $limit, $editors);\n\n        if ($countOnly) {\n            return $result;\n        }\n\n        return $result;\n    }\n\n    /**\n     * Get random list of users\n     *\n     * @param int $limit\n     * @return array\n     */\n    public function getRandomList($limit = 25)\n    {\n        return $this->getRepository()->getRandomList($limit);\n    }\n\n    /**\n     * List users by first letter\n     *\n     * @return array\n     */\n    public function findUsersLastNameInRange($letters, $countOnly=false, $page=1, $limit=25)\n    {\n        $offset = ($page-1) * $limit;\n        $result = $this->getRepository()->findUsersLastNameInRange($letters, $countOnly, $offset, $limit);\n\n        if($countOnly) {\n            return $result[1];\n        }\n\n        return $result;\n    }\n\n    /**\n     * Find user by string\n     *\n     * @return array\n     */\n    public function findUsersBySearch($search, $countOnly=false, $page=1, $limit=25)\n    {\n        $offset = ($page-1) * $limit;\n\n        $result = $this->getRepository()->searchUsers($search, $countOnly, $offset, $limit);\n\n        if($countOnly) {\n            return $result[1];\n        }\n\n        return $result;\n    }\n\n    /**\n     * List editors\n     *\n     * @param int $limit\n     * @param int $offset\n     * @return array\n     */\n    public function findEditors($limit = NULL, $offset = NULL)\n    {\n        return $this->getRepository()->findEditors($this->config['role'], $limit, $offset);\n    }\n\n    /**\n     * Get editors count\n     *\n     * @return int\n     */\n    public function getEditorsCount()\n    {\n        return $this->getRepository()->getEditorsCount($this->config['role']);\n    }\n\n    /**\n     * Get repository\n     *\n     * @return Newscoop\\Entity\\Repository\\UserRepository\n     */\n    protected function getRepository()\n    {\n        return $this->em->getRepository('Newscoop\\Entity\\User');\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/NotificationService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Entity\\Acl\\Rule;\nuse Newscoop\\Entity\\Acl\\Role;\n\n/**\n * Notification Service\n */\nclass NotificationService\n{\n    const GROUP_DQL = \"\n        SELECT user.email\n        FROM Newscoop\\Entity\\User user\n            JOIN user.groups group\n            JOIN group.role role\n            JOIN role.rules rule\n        WHERE rule.type = :type\n            AND rule.resource = :resource\n            AND rule.action = :action\n    \";\n\n    const USER_DQL = \"\n        SELECT user.email\n        FROM Newscoop\\Entity\\User user\n            JOIN user.role role\n            JOIN role.rules rule\n        WHERE rule.type = :type\n            AND rule.resource = :resource\n            AND rule.action = :action\n    \";\n\n    /**\n     * @var array\n     */\n    protected $params = array(\n        'resource' => 'notification',\n        'action' => 'get',\n    );\n\n    /**\n     * @var Doctrine\\ORM\\EntityManager\n     */\n    protected $em;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     */\n    public function __construct(EntityManager $em)\n    {\n        $this->em = $em;\n    }\n\n    /**\n     * Find emails from users who should recieve notification\n     *\n     * @return array\n     */\n    public function findRecipients()\n    {\n        $emails = array_merge($this->findByGroup(), $this->findByUser());\n\n        return array_filter(array_unique($emails));\n    }\n\n    /**\n     * Find emails allowed by group role but those denied by user role\n     *\n     * @return array\n     */\n    private function findByGroup()\n    {\n        return array_diff(\n            $this->executeQuery(self::GROUP_DQL, Rule::ALLOW),\n            $this->executeQuery(self::USER_DQL, Rule::DENY)\n        );\n    }\n\n    /**\n     * Find emails allowed by user role\n     *\n     * @return array\n     */\n    private function findByUser()\n    {\n        return $this->executeQuery(self::USER_DQL, Rule::ALLOW);\n    }\n\n    /**\n     * Execute given dql query\n     *\n     * @param string $dql\n     * @param string $type\n     * @return array\n     */\n    private function executeQuery($dql, $type)\n    {\n        $query = $this->em->createQuery($dql);\n        $query->setParameters($this->params);\n        $query->setParameter('type', $type);\n        return array_map(function (array $row) {\n            return $row['email'];\n        }, $query->getResult());\n    }\n}\n\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/PlaceholdersService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Symfony\\Component\\HttpFoundation\\ParameterBag;\n\n/**\n * Placeholder service\n */\nclass PlaceholdersService extends ParameterBag\n{\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/PlaylistsService.php",
    "content": "<?php\n\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2015 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Services;\n\nuse Newscoop\\Entity\\Article;\nuse Newscoop\\Entity\\Playlist;\nuse Newscoop\\Entity\\PlaylistArticle;\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\EventDispatcher\\Events\\GenericEvent;\n\n/**\n * Manage playlists.\n */\nclass PlaylistsService\n{\n    /**\n     * @var EntityManager\n     */\n    protected $em;\n\n    /**\n     * @param EntityManager $em\n     */\n    public function __construct($em, $dispatcher, $cacheService)\n    {\n        $this->em = $em;\n        $this->dispatcher = $dispatcher;\n        $this->cacheService = $cacheService;\n    }\n\n    /**\n     * Get articles for playlist.\n     *\n     * @param \\Newscoop\\Entity\\Playlist $playlist\n     */\n    public function getPlaylistArticles(Playlist $playlist, $onlyPublished = true)\n    {\n        $playlistArticles = $this->em->getRepository('Newscoop\\Entity\\Playlist')\n            ->articles($playlist, null, true, null, null, $onlyPublished, true)\n            ->getResult();\n\n        return $playlistArticles;\n    }\n\n    /**\n     * Remove article from playlist.\n     *\n     * @param Playlist $playlist\n     * @param Article  $articleToRemove\n     *\n     * @return bool\n     */\n    public function removePlaylistArticle($playlist, $articleToRemove)\n    {\n        $playlistArticle = $this->em->getRepository('Newscoop\\Entity\\PlaylistArticle')\n            ->getPlaylistArticle($playlist, $articleToRemove)\n            ->getOneOrNullResult();\n\n        if ($playlistArticle) {\n            $this->em->remove($playlistArticle);\n            $this->em->flush();\n        }\n\n        $this->clearPlaylistTemplates($playlist);\n        return true;\n    }\n\n    /**\n     * Add new related article to related articles container.\n     *\n     * @param Article $article\n     * @param Article $articleToAdd\n     * @param int     $position\n     *\n     * @return bool\n     */\n    public function addArticle($playlist, $articleToAdd, $position = false)\n    {\n        $playlistArticle = $this->em->getRepository('Newscoop\\Entity\\PlaylistArticle')\n            ->getPlaylistArticle($playlist, $articleToAdd)\n            ->getOneOrNullResult();\n\n        if (!$playlistArticle) {\n            $playlistArticle = new PlaylistArticle($playlist, $articleToAdd);\n            $this->em->persist($playlistArticle);\n        }\n\n        if ($position) {\n            $playlistArticle->setOrder($position);\n        }\n\n        $this->em->flush();\n\n        $this->removeLeftItems($playlist);\n        $this->clearPlaylistTemplates($playlist);\n\n        return true;\n    }\n\n    /**\n     * Remove items above the limit on playlist.\n     *\n     * @param Playlist $playlist\n     */\n    public function removeLeftItems($playlist)\n    {\n        if ($playlist->getMaxItems() != null) {\n            $allowedArticles = $this->em\n                ->createQuery('SELECT pa.id FROM Newscoop\\Entity\\PlaylistArticle pa WHERE pa.idPlaylist = :playlistId AND pa.order >= 0 ORDER BY pa.order ASC')\n                ->setParameter('playlistId', $playlist->getId())\n                ->setMaxResults($playlist->getMaxItems())\n                ->getArrayResult();\n\n            $ids = array();\n            foreach ($allowedArticles as $article) {\n                $ids[] = $article['id'];\n            }\n\n            $this->em\n                ->createQuery('DELETE FROM Newscoop\\Entity\\PlaylistArticle pa WHERE pa.id NOT IN (:ids) AND pa.idPlaylist = :playlistId')\n                ->setParameter('ids', $ids)\n                ->setParameter('playlistId', $playlist->getId())\n                ->execute();\n        }\n    }\n\n    /**\n     * Load articlesLists from xml file.\n     *\n     * example template articles lists schema:\n     *\n     * <articlesLists> # main section\n     *   <list name=\"FrontPage\"> # single playlist declaration\n     *     <template file=\"article.tpl\" /> # single template file assigned to playlist declaration\n     *   </list>\n     *   <list name=\"Second Playlist\">\n     *     <template file=\"issue.tpl\" />\n     *     <template file=\"front.tpl\" />\n     *   </list>\n     * </articlesLists>\n     *\n     * Cache for all assigned to playlist templates will be cleared after playlist update action\n     *\n     * @param string $path\n     *\n     * @return array content of xml file as an array\n     */\n    public function loadThemePlaylists($path)\n    {\n        $xml = simplexml_load_file($path);\n\n        return json_decode(json_encode($xml->articlesLists), true);\n    }\n\n    /**\n     * Check if playlists have current theme lists definitions.\n     *\n     * @param Theme $theme\n     * @param array $themePlaylists\n     *\n     * @return bool\n     */\n    public function checkIfThemePlaylistsAreUpToDate($theme, $themePlaylists)\n    {\n        if (empty($themePlaylists)) {\n            return false;\n        }\n\n        foreach ($themePlaylists as $playlistName => $themePlaylist) {\n            $playlist = $this->em->getRepository('Newscoop\\Entity\\Playlist')->getPlaylistByTitle($playlistName)->getOneOrNullResult();\n            if (!$playlist) {\n                return false;\n            }\n\n            $themes = $playlist->getThemes();\n            if (!array_key_exists($theme->getId(), $themes)) {\n                return false;\n            }\n\n            foreach ($themePlaylist['templates'] as $template) {\n                if (is_array($themes[$theme->getId()])) {\n                    if (!in_array($template, $themes[$theme->getId()])) {\n                        return false;\n                    }\n                }\n            }\n        }\n\n        return true;\n    }\n\n    /**\n     * Update playists with current theme playlists definitions.\n     *\n     * @param Theme $theme\n     * @param array $themePlaylists\n     *\n     * @return bool\n     */\n    public function updateThemePlaylists($theme, $themePlaylists)\n    {\n        $newThemePlaylists = $this->buildNewThemePlaylists($themePlaylists);\n        if (!is_array($newThemePlaylists)) {\n            return true;\n        }\n\n        foreach ($newThemePlaylists as $playlistName => $themePlaylist) {\n            $playlist = $this->em->getRepository('Newscoop\\Entity\\Playlist')->getPlaylistByTitle($playlistName)->getOneOrNullResult();\n            if (!$playlist) {\n                $playlist = new Playlist();\n                $playlist->setName($playlistName);\n\n                $this->em->persist($playlist);\n            }\n\n            $themes = $playlist->getThemes();\n            $themes[$theme->getId()] = $themePlaylist['templates'];\n\n            $playlist->setThemes($themes);\n        }\n\n        $this->em->flush();\n\n        return true;\n    }\n\n    /**\n     * Clear playlists themes definitions on unassign action.\n     *\n     * @param Theme $theme\n     * @param array $themePlaylists\n     *\n     * @return bool\n     */\n    public function removeThemeFromPlaylists($theme, $themePlaylists)\n    {\n        if (empty($themePlaylists)) {\n            return false;\n        }\n\n        $newThemePlaylists = $this->buildNewThemePlaylists($themePlaylists);\n\n        foreach ($newThemePlaylists as $playlistName => $themePlaylist) {\n            $playlist = $this->em->getRepository('Newscoop\\Entity\\Playlist')->getPlaylistByTitle($playlistName)->getOneOrNullResult();\n            if (!$playlist) {\n                continue;\n            }\n\n            $themes = $playlist->getThemes();\n            unset($themes[$theme->getId()]);\n\n            $playlist->setThemes($themes);\n        }\n\n        $this->em->flush();\n\n        return true;\n    }\n\n    /**\n     * Clear cache for all temlates assigned to playlist.\n     *\n     * @param Playlist $playlist\n     */\n    public function clearPlaylistTemplates($playlist)\n    {\n        foreach ($playlist->getThemes() as $theme) {\n            if (is_array($theme)) {\n                foreach ($theme as $file) {\n                    \\TemplateCacheHandler_DB::clean($file);\n                }\n            }\n        }\n    }\n\n    public function buildNewThemePlaylists($themePlaylists)\n    {\n        if (!array_key_exists('list', $themePlaylists)) {\n            return null;\n        }\n\n        $newThemePlaylists = array();\n        if (array_key_exists('template', $themePlaylists['list'])) {\n            $bakThemePlaylists = $themePlaylists;\n            $themePlaylists = array();\n            $themePlaylists['list'][0] = $bakThemePlaylists['list'];\n        }\n\n        foreach ($themePlaylists['list'] as $themePlaylist) {\n            $playlistName = $themePlaylist['@attributes']['name'];\n            $newThemePlaylists[$playlistName] = array();\n            if (array_key_exists('@attributes', $themePlaylist['template'])) {\n                $bakThemePlaylist = $themePlaylist;\n                $themePlaylist = array();\n                $themePlaylist['template'][0] = $bakThemePlaylist['template'];\n            }\n\n            foreach ($themePlaylist['template'] as $template) {\n                $newThemePlaylists[$playlistName]['templates'][] = $template['@attributes']['file'];\n            }\n        }\n\n        return $newThemePlaylists;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/Plugins/ManagerService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services\\Plugins;\n\nuse Composer\\Package\\PackageInterface\\PackageInterface;\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Entity\\Plugin;\nuse Newscoop\\EventDispatcher\\EventDispatcher;\nuse Newscoop\\EventDispatcher\\Events\\GenericEvent;\nuse Symfony\\Bridge\\Monolog\\Logger;\nuse Symfony\\Component\\Console\\Output\\OutputInterface;\nuse Symfony\\Component\\Filesystem\\Filesystem;\nuse Symfony\\Component\\Finder\\Finder;\nuse Symfony\\Component\\Process\\Process;\n\n/**\n * Plugins Manager Service\n *\n * Manage plugins installation, status and more...\n */\nclass ManagerService\n{\n    /**\n     * @var Doctrine\\ORM\\EntityManager\n     */\n    protected $em;\n\n    /**\n     * @var Newscoop\\EventDispatcher\\EventDispatcher\n     */\n    protected $dispatcher;\n\n    /**\n     * Plugins service\n     * @var Newscoop\\Services\\Plugins\\PluginsService\n     */\n    protected $pluginsService;\n\n    /**\n     * Logger\n     * @var Symfony\\Bridge\\Monolog\\Logger\n     */\n    protected $logger;\n\n    /**\n     * Newscoop root directory\n     * @var string\n     */\n    protected $newsoopDir;\n\n    /**\n     * Plugins directory\n     * @var string\n     */\n    public $pluginsDir;\n\n    /**\n     * Config array\n     * @var array\n     */\n    protected $config = array();\n\n    /**\n     * Application environment\n     * @var string\n     */\n    protected $dev;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     * @param Newscoop\\EventDispatcher\\EventDispatcher $dispatcher\n     */\n    public function __construct(EntityManager $em, $dispatcher, $pluginsService, Logger $logger, array $config)\n    {\n        $this->em = $em;\n        $this->dispatcher = $dispatcher;\n        $this->pluginsService = $pluginsService;\n        $this->logger = $logger;\n        $this->newsoopDir = __DIR__ . '/../../../../';\n        $this->pluginsDir = $this->newsoopDir . 'plugins';\n        $this->handleConfig($config);\n\n        $this->dev = '';\n        if (APPLICATION_ENV === 'production') {\n            $this->dev = '--no-dev';\n        };\n    }\n\n    /**\n     * Install plugin inside Newscoop - it's a wrapper for all tasks connected with plugin installation\n     *\n     * @param string           $pluginName\n     * @param string           $version\n     * @param OutputInterface  $output\n     * @param boolean          $notify\n     */\n    public function installPlugin($pluginName, $version, $output, $notify = true)\n    {\n        $this->installComposer();\n        $this->prepareCacheDir();\n\n        $pluginMeta = explode('/', $pluginName);\n        if (count($pluginMeta) !== 2) {\n            throw new \\Exception(\"Plugin name is invalid, try \\\"vendor/plugin-name\\\"\", 1);\n        }\n\n        $process = new Process('cd ' . $this->newsoopDir . ' && php -d memory_limit='.$this->config['internal_memory_limit'].' composer.phar require ' . $pluginName .':' . $version);\n\n        $process->setTimeout(3600);\n        $process->run(function ($type, $buffer) use ($output) {\n            if ('err' === $type) {\n                $output->write('<error>'.$buffer.'</error>');\n            } else {\n                $output->write('<info>'.$buffer.'</info>');\n            }\n        });\n\n        if (!$process->isSuccessful()) {\n            throw new \\Exception(\"Error with installing plugin\", 1);\n        }\n\n        $cachedPluginMeta = $this->newsoopDir.'/plugins/cache/add_'.str_replace('/', '-', $pluginName).'_package.json';\n        if (file_exists($cachedPluginMeta)) {\n            $pluginMeta = json_decode(file_get_contents($cachedPluginMeta), true);\n            $pluginDetails = file_get_contents($this->pluginsDir.'/'.$pluginMeta['targetDir'].'/composer.json');\n            $this->em->getRepository('Newscoop\\Entity\\Plugin')->addPlugin($pluginMeta, $pluginDetails);\n\n            // clear cache files\n            $filesystem = new Filesystem();\n            $filesystem->remove($cachedPluginMeta);\n        }\n\n        $this->saveAvaiablePluginsToCacheFile();\n        $this->clearCache($output);\n\n        if ($notify) {\n            $process = new Process('cd ' . $this->newsoopDir . ' && php -d memory_limit='.$this->config['internal_memory_limit'].' application/console plugins:dispatch ' . $pluginName.' install');\n            $process->setTimeout(3600);\n            $process->run(function ($type, $buffer) use ($output) {\n                if ('err' === $type) {\n                    $output->write('<error>'.$buffer.'</error>');\n                } else {\n                    $output->write('<info>'.$buffer.'</info>');\n                }\n            });\n\n            if (!$process->isSuccessful()) {\n                throw new \\Exception(\"Error with dispatching install event\", 1);\n            }\n        }\n\n        $output->writeln('<info>Plugin '.$pluginName.' is installed!</info>');\n    }\n\n    /**\n     * Dispatch events for plugins\n     * @param  string $pluginName\n     * @param  string $eventName\n     * @param  mixed $output\n     */\n    public function dispatchEventForPlugin($pluginName, $eventName, $output = null)\n    {\n        $this->dispatcher->dispatch('plugin.'.$eventName, new GenericEvent($this, array(\n            'plugin_name' => $pluginName\n        )));\n\n        if ($output) {\n            $output->writeln('<info>We just fired: \"plugin.'.$eventName.'\" event</info>');\n        }\n\n        $this->dispatcher->dispatch(\n            'plugin.'.$eventName.'.'.str_replace('-', '_', str_replace('/', '_', $pluginName)),\n            new GenericEvent($this, array(\n                'plugin_name' => $pluginName\n            ))\n        );\n\n        if ($output) {\n            $output->writeln('<info>We just fired: \"plugin.'.$eventName.'.'.str_replace('-', '_', str_replace('/', '_', $pluginName)).'\" event</info>');\n        }\n    }\n\n    /**\n     * Remove plugin from newscoop (composer+database+cleaning)\n     *\n     * @param  string          $pluginName\n     * @param  OutputInterface $output\n     * @param  boolean         $notify\n     */\n    public function removePlugin($pluginName, OutputInterface $output, $notify = true)\n    {\n        $this->installComposer();\n        $this->prepareCacheDir();\n\n        /*if (!$this->isInstalled($pluginName)) {\n            $output->writeln('<info>Plugin \"'.$pluginName.'\" is not installed yet</info>');\n\n            return;\n        }*/\n\n        $composerFile = $this->newsoopDir . 'composer.json';\n        $composerDefinitions = json_decode(file_get_contents($composerFile), true);\n\n        foreach ($composerDefinitions['require'] as $package => $version) {\n            if ($package == $pluginName) {\n\n                if ($notify) {\n                    $process = new Process('cd ' . $this->newsoopDir . ' && php -d memory_limit='.$this->config['internal_memory_limit'].' application/console plugins:dispatch ' . $pluginName.' remove');\n                    $process->setTimeout(3600);\n                    $process->run(function ($type, $buffer) use ($output) {\n                        if ('err' === $type) {\n                            $output->write('<error>'.$buffer.'</error>');\n                        } else {\n                            $output->write('<info>'.$buffer.'</info>');\n                        }\n                    });\n\n                    if (!$process->isSuccessful()) {\n                        throw new \\Exception(\"Error with dispatching remove event\", 1);\n                    }\n                }\n\n                $output->writeln('<info>Remove \"'.$pluginName.'\"</info>');\n\n                $process = new Process('cd ' . $this->newsoopDir . ' && php -d memory_limit='.$this->config['internal_memory_limit'].' composer.phar remove '. $this->dev .' ' . $pluginName);\n                $process->setTimeout(3600);\n                $process->run(function ($type, $buffer) use ($output) {\n                    if ('err' === $type) {\n                        $output->write('<error>'.$buffer.'</error>');\n                    } else {\n                        $output->write('<info>'.$buffer.'</info>');\n                    }\n                });\n\n                if (!$process->isSuccessful()) {\n                    throw new \\Exception(\"Error with removing plugin\", 1);\n                }\n            }\n        }\n\n        $cachedPluginMeta = $this->newsoopDir.'/plugins/cache/uninstall_'.str_replace('/', '-', $pluginName).'_package.json';\n\n        if (file_exists($cachedPluginMeta)) {\n            $pluginMeta = json_decode(file_get_contents($cachedPluginMeta), true);\n\n            $this->em->getRepository('Newscoop\\Entity\\Plugin')->removePlugin($pluginName);\n\n            // clear cache files\n            $filesystem = new Filesystem();\n            $filesystem->remove($cachedPluginMeta);\n            $filesystem->remove($this->pluginsDir.'/'.$pluginMeta['targetDir'].'/');\n        }\n\n        $this->saveAvaiablePluginsToCacheFile();\n        $this->clearCache($output);\n\n        $output->writeln('<info>Plugin '.$pluginName.' is removed!</info>');\n    }\n\n    /**\n     * Update installed plugin\n     *\n     * @param  string          $pluginName\n     * @param  string          $version\n     * @param  OutputInterface $output\n     * @param  boolean         $notify\n     */\n    public function updatePlugin($pluginName, $version, OutputInterface $output, $notify = true)\n    {\n        $this->installComposer();\n\n        $output->writeln('<info>Update \"'.$pluginName.'\"</info>');sleep(10);\n        $process = new Process('cd ' . $this->newsoopDir . ' && php -d memory_limit='.$this->config['internal_memory_limit'].' composer.phar update --prefer-dist'. $this->dev .' ' . $pluginName);\n        $process->setTimeout(3600);\n        $process->run(function ($type, $buffer) use ($output) {\n            if ('err' === $type) {\n                $output->write('<error>'.$buffer.'</error>');\n            } else {\n                $output->write('<info>'.$buffer.'</info>');\n            }\n        });\n\n        if (!$process->isSuccessful()) {\n            throw new \\Exception(\"Error with updating plugin\", 1);\n        }\n\n        $this->saveAvaiablePluginsToCacheFile();\n\n        $this->clearCache($output);\n        $this->prepareCacheDir();\n\n        if ($notify) {\n            $process = new Process('cd ' . $this->newsoopDir . ' && php -d memory_limit='.$this->config['internal_memory_limit'].' application/console plugins:dispatch ' . $pluginName.' update');\n            $process->setTimeout(3600);\n            $process->run(function ($type, $buffer) use ($output) {\n                if ('err' === $type) {\n                    $output->write('<error>'.$buffer.'</error>');\n                } else {\n                    $output->write('<info>'.$buffer.'</info>');\n                }\n            });\n\n            if (!$process->isSuccessful()) {\n                throw new \\Exception(\"Error with dispatching update event\", 1);\n            }\n        }\n\n        $cachedPluginMeta = $this->newsoopDir.'/plugins/cache/update_'.str_replace('/', '-', $pluginName).'_package.json';\n\n        if (file_exists($cachedPluginMeta)) {\n            $pluginMeta = json_decode(file_get_contents($cachedPluginMeta), true);\n            $pluginDetails = file_get_contents($this->pluginsDir.'/'.$pluginMeta['target']['targetDir'].'/composer.json');\n\n            $this->em->getRepository('Newscoop\\Entity\\Plugin')->updatePlugin($pluginMeta['target'], $pluginDetails);\n\n            // clear cache files\n            $filesystem = new Filesystem();\n            $filesystem->remove($cachedPluginMeta);\n        }\n\n        $output->writeln('<info>Plugin '.$pluginName.' is updated!</info>');\n    }\n\n    /**\n     * Enable plugin\n     *\n     * @param  Plugin $plugin\n     */\n    public function enablePlugin(Plugin $plugin)\n    {\n        $this->dispatcher->dispatch('plugin.enable', new GenericEvent($this, array(\n            'plugin_name' => $plugin->getName(),\n            'plugin' => $plugin\n        )));\n    }\n\n    /**\n     * Disable plugin\n     * @param  Plugin $plugin\n     */\n    public function disablePlugin(Plugin $plugin)\n    {\n        $this->dispatcher->dispatch('plugin.disable', new GenericEvent($this, array(\n            'plugin_name' => $plugin->getName(),\n            'plugin' => $plugin\n        )));\n    }\n\n    /**\n     * Reinstall plugins after Newscoop upgrade (re-add them to composer)\n     */\n    public function upgrade(OutputInterface $output, $doUpdate = false)\n    {\n        if ($doUpdate) {\n            $this->clearCache($output);\n        }\n\n        $allPlugins = $this->pluginsService->getAllAvailablePlugins();\n        $require = array();\n        $update = array();\n        foreach ($allPlugins as $key => $value) {\n            // work only with modern packages\n            if (strpos($value->getName(), '/') !== false) {\n                $require[] = $value->getName() . ' ' . $value->getVersion();\n                $update[] = $value->getName();\n\n                if ($doUpdate) {\n                    $details = json_decode($value->getDetails(), true);\n                    if (array_key_exists('targetDir', $details)) {\n                        $filesystem = new Filesystem();\n                        if (!is_writable($this->pluginsDir.$details['targetDir'].'/')) {\n                            throw new Exception(\"Plugins directory must be writable: \".$this->pluginsDir, 1);\n                        }\n\n                        $filesystem->remove($this->pluginsDir.$details['targetDir'].'/');\n                    }\n                }\n            }\n        }\n\n        $require = implode(' ', $require);\n        $update = implode(' ', $update);\n\n        if ($doUpdate) {\n            $doUpdate = ' && php -d memory_limit='.$this->config['internal_memory_limit'].' composer.phar update ' . $update . ' '. $this->dev;\n        }\n\n        $process = new Process('cd ' . $this->newsoopDir . ' && php -d memory_limit='.$this->config['internal_memory_limit'].' composer.phar require ' . $require.' --no-update'.$doUpdate);\n        $output->writeln('<info>require ' . $require.' --no-update</info>');\n        if ($doUpdate) {\n            $output->writeln('<info>update ' . $update.'</info>');\n        }\n        $process->setTimeout(3600);\n        $process->run(function ($type, $buffer) use ($output) {\n            if ('err' === $type) {\n                $output->write('<error>'.$buffer.'</error>');\n            } else {\n                $output->write('<info>'.$buffer.'</info>');\n            }\n        });\n\n        if (!$process->isSuccessful()) {\n            throw new \\Exception(\"Error with reverting plugins\", 1);\n        }\n\n        $this->saveAvaiablePluginsToCacheFile();\n        if ($doUpdate) {\n            $this->clearCache($output);\n        }\n    }\n\n    /**\n     * Get installed plugins\n     * @return array Array with installed plugins info\n     */\n    public function getInstalledPlugins()\n    {\n        $cachedAvailablePlugins = $this->pluginsDir . '/available_plugins.json';\n        if (!file_exists($cachedAvailablePlugins)) {\n            return array();\n        }\n\n        return $plugins = json_decode(file_get_contents($cachedAvailablePlugins));\n    }\n\n    /**\n     * Check if plugin is installed\n     * TODO\n     *\n     * @param  string  $pluginName\n     * @return boolean\n     */\n    public function isInstalled($pluginName)\n    {\n        return $this->pluginsService->isInstalled($pluginName);\n    }\n\n    /**\n     * Clear cache after plugin installation\n     *\n     * @param  OutputInterface $output\n     */\n    private function clearCache($output)\n    {\n        $output->writeln('<info>remove '.realpath($this->newsoopDir.'cache/').'/*</info>');\n        $process = new Process('rm -rf '.realpath($this->newsoopDir.'cache/').'/*');\n        $process->setTimeout(3600);\n        $process->run(function ($type, $buffer) use ($output) {\n            if ('err' === $type) {\n                $output->write('<error>'.$buffer.'</error>');\n            } else {\n                $output->write('<info>'.$buffer.'</info>');\n            }\n        });\n\n        if ($process->isSuccessful()) {\n            $output->writeln('<info>Cache cleared</info>');\n        }\n\n        $this->prepareCacheDir();\n    }\n\n    /**\n     * Install composer\n     */\n    public function installComposer()\n    {\n        $filesystem = new Filesystem();\n        if (!$filesystem->exists($this->newsoopDir . 'composer.phar')) {\n            $installComposer = new Process('cd ' . $this->newsoopDir . ' && curl -s https://getcomposer.org/installer | php');\n            $installComposer->setTimeout(3600);\n            $installComposer->run();\n\n            if (!$installComposer->isSuccessful()) {\n                throw new \\Exception(\"Error with installing composer\", 1);\n            }\n        }\n    }\n\n    /**\n     * Find avaiable plugins\n     * @return array array('plugin/name' => \\Class\\Name)\n     */\n    public function findAvaiablePlugins()\n    {\n        $plugins = array();\n        $finder = new Finder();\n        $elements = $finder->directories()->depth('== 0')->in($this->pluginsDir);\n        if (count($elements) > 0) {\n            foreach ($elements as $element) {\n                $vendorName = $element->getFileName();\n                $secondFinder = new Finder();\n                $directories = $secondFinder->directories()->depth('== 0')->in($element->getPathName());\n                foreach ($directories as $directory) {\n                    $pluginName = $directory->getFileName();\n                    $className = $vendorName . '\\\\' .$pluginName . '\\\\' . $vendorName . $pluginName;\n                    $pos = strpos($pluginName, 'Bundle');\n                    if ($pos !== false) {\n                        $plugins[] = $className;\n                    }\n                }\n            }\n        }\n\n        return $plugins;\n    }\n\n    private function saveAvaiablePluginsToCacheFile()\n    {\n        $plugins = $this->findAvaiablePlugins();\n\n        file_put_contents($this->pluginsDir . '/available_plugins.json', json_encode($plugins));\n    }\n\n    private function prepareCacheDir()\n    {\n        if (!file_exists($this->newsoopDir.'/cache/prod')) {\n            $filesystem = new Filesystem();\n            $filesystem->mkdir($this->newsoopDir.'/cache/prod');\n            $filesystem->mkdir($this->newsoopDir.'/cache/dev');\n        }\n    }\n\n    private function handleConfig(array $config) {\n\n        foreach ($config as $key => $value) {\n            if (trim($value) == '') {\n                unset($config[$key]);\n            }\n        }\n\n        // Make sure internal_memory_limit is always set\n        if (!isset($config['internal_memory_limit'])) {\n            $config['internal_memory_limit'] = ini_get('memory_limit');\n        }\n\n        $this->config = array_merge($this->config, $config);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/Plugins/PluginsService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services\\Plugins;\n\nuse Doctrine\\Common\\Collections\\ArrayCollection;\nuse Doctrine\\Common\\Collections\\Collection;\nuse Doctrine\\Common\\Collections\\Criteria;\nuse Doctrine\\Common\\Collections\\ExpressionBuilder;\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\EventDispatcher\\EventDispatcher;\nuse Newscoop\\EventDispatcher\\Events\\PluginHooksEvent;\nuse Newscoop\\EventDispatcher\\Events\\CollectObjectsDataEvent;\nuse Newscoop\\EventDispatcher\\Events\\PluginPermissionsEvent;\n\n/**\n * Plugins Service\n *\n * Service for plugins stuff\n */\nclass PluginsService\n{\n    /**\n     * @var Newscoop\\EventDispatcher\\EventDispatcher\n     */\n    protected $dispatcher;\n\n    /**\n     * @var Doctrine\\ORM\\EntityManager\n     */\n    protected $em;\n\n    /**\n     * Avaiable plugins\n     * @var Collection\n     */\n    protected $availablePlugins;\n\n    /**\n     * @param Newscoop\\EventDispatcher\\EventDispatcher $dispatcher\n     * @param Doctrine\\ORM\\EntityManager               $em\n     */\n    public function __construct($dispatcher, EntityManager $em)\n    {\n        $this->dispatcher = $dispatcher;\n        $this->em = $em;\n    }\n\n    public function getAllAvailablePlugins()\n    {\n        if ($this->availablePlugins) {\n            return $this->availablePlugins;\n        }\n\n        return $this->availablePlugins = $this->em->getRepository('Newscoop\\Entity\\Plugin')->findAll();\n    }\n\n    public function getEnabledPlugins()\n    {\n        return new ArrayCollection(array_filter($this->getAllAvailablePlugins(), function($plugin) {\n            return $plugin->getEnabled() === true;\n        }));\n    }\n\n    public function getPluginByCriteria($criteria, $needle)\n    {\n        $eb = new ExpressionBuilder();\n        $expr = $eb->eq($criteria, $needle);\n        $criteria = new Criteria($expr);\n\n        $availablePlugins = new ArrayCollection($this->getAllAvailablePlugins());\n\n        return $availablePlugins->matching($criteria);\n    }\n\n    /**\n     * Dispatch hook event and render collected Response objects\n     *\n     * @param string $eventName\n     * @param mixed  $subject\n     * @param array  $options\n     *\n     * @return string\n     */\n    public function renderPluginHooks($eventName, $subject = null, $options = null)\n    {\n        $content = '';\n        $pluginHooksEvent = $this->dispatcher->dispatch($eventName, new PluginHooksEvent($subject, $options));\n\n        foreach ($pluginHooksEvent->getHooksResponses() as $key => $response) {\n            $content .= $response->getContent();\n        }\n\n        return $content;\n    }\n\n    /**\n     * Dispatch event for list objects registration\n     *\n     * @param mixed $subject\n     * @param array $options\n     *\n     * @return string\n     */\n    public function collectListObjects($subject = null, $options = array())\n    {\n        $collectedData = array('listObjects' => array(), 'objectTypes' => array());\n        $listObjectsRegistration = $this->dispatcher->dispatch('newscoop.listobjects.register', new CollectObjectsDataEvent($subject, $options));\n\n        foreach ($listObjectsRegistration->getListObjects() as $key => $object) {\n            $collectedData['listObjects'][$key] = $object;\n        }\n\n        foreach ($listObjectsRegistration->getObjectTypes() as $key => $object) {\n            $collectedData['objectTypes'][$key] = $object;\n        }\n\n        return $collectedData;\n    }\n\n    public function isEnabled($pluginName)\n    {\n        $plugin = $this->getPluginByCriteria('name', $pluginName)->first();\n        if ($plugin) {\n            if ($plugin->getEnabled()) {\n                return true;\n            }\n        }\n\n        return false;\n    }\n\n    public function isInstalled($pluginName)\n    {\n        $plugin = $this->getPluginByCriteria('name', $pluginName)->first();\n        if ($plugin) {\n            return true;\n        }\n\n        return false;\n    }\n\n    public function getPluginsDir()\n    {\n        $pluginsDir = __DIR__ . '/../../../../plugins';\n\n        if (file_exists($pluginsDir)) {\n            return realpath($pluginsDir);\n        }\n\n        return $pluginsDir;\n    }\n\n    /**\n     * Dispatch event for plugins permissions\n     *\n     * @param mixed $subject\n     * @param array $options\n     *\n     * @return array\n     */\n    public function collectPermissions($subject = null, $options = array())\n    {\n        $collectedPermissionsData = array();\n        $collectedPermissions = $this->dispatcher->dispatch('newscoop.plugins.permissions.register', new PluginPermissionsEvent($subject, $options));\n\n        foreach ($collectedPermissions->getPermissions() as $key => $object) {\n            $collectedPermissionsData[$key] = $object;\n        }\n\n        return $collectedPermissionsData;\n    }\n\n    /**\n     * Add dynamic right\n     *\n     * @param array $right\n     * @return void\n     *\n     * @deprecated will be deprecated since version 4.5\n     */\n    public function addRight(array $right)\n    {\n        $connection = $this->em->getConnection();\n        // get next id\n        $query = $connection->query('SELECT MAX(right_id) as max FROM liveuser_rights')->fetch();\n        $lastId = (int) $query['max'];\n        $nextId = $lastId + 1;\n        $areaId = (int) $right['area_id'];\n\n        $connection->executeUpdate('INSERT IGNORE INTO liveuser_rights (right_id, area_id, right_define_name) VALUES (:next, :area, :name)', array(\n            'next' => $nextId,\n            'area' => $areaId,\n            'name' => $right['right_define_name']\n        ));\n    }\n\n    /**\n     * Save plugin permissions in Newscoop ACL\n     *\n     * @param  array  $pluginPermissions Plugin permissions\n     *\n     * @return void\n     */\n    public function savePluginPermissions(array $pluginPermissions)\n    {\n        try {\n            foreach ($pluginPermissions as $permissionArray) {\n                foreach ($permissionArray as $permission => $permissionLabel) {\n                    $this->addRight(array(\n                        'area_id' => 0,\n                        'right_define_name' => $permission,\n                        'has_implied' => 1\n                    ));\n\n                    $permissionsArray = explode('_', $permission);\n                    $values = array(\n                        'role' => 1, //give access for admin group by default\n                        'type' => 'allow',\n                        'resource' => $permissionsArray[0] . '-' . $permissionsArray[1],\n                        'action' => $permissionsArray[2]\n                    );\n\n                    $this->em->getRepository('Newscoop\\Entity\\Acl\\Rule')->save($values);\n                }\n            }\n        } catch (\\Exception $e) {\n            throw new \\Exception(\"Error setting up plugin permissions\", 1);\n        }\n    }\n\n    /**\n     * Get rights\n     *\n     * @param array $params\n     * @return array\n     */\n    public function getRights(array $params)\n    {\n        $connection = $this->em->getConnection();\n\n        $permission = $params['filters']['right_define_name'];\n        $query = $connection->executeQuery('SELECT right_id FROM liveuser_rights WHERE right_define_name = :permission', array(\n            'permission' => $permission\n        ));\n\n        return $query->fetch();\n    }\n\n    /**\n     * Remove right\n     *\n     * @param array $params\n     * @return void\n     */\n    public function removeRight(array $params)\n    {\n        $rightId = (int) $params['right_id'];\n\n        // get permission\n        $connection = $this->em->getConnection();\n        $query = $connection->executeQuery('SELECT right_define_name as name FROM liveuser_rights WHERE right_id  = :rightId', array(\n            'rightId' => $rightId\n        ));\n\n        $permission = $query->fetch();\n        $permission = explode('_', $permission['name']);\n\n        $rules = $this->em->getRepository('Newscoop\\Entity\\Acl\\Rule')->findBy(array(\n            'resource' => $permission[0] . '-' . $permission[1]\n        ));\n\n        if ($rules) {\n            foreach ($rules as $key => $rule) {\n                $this->em->remove($rule);\n            }\n\n            $this->em->flush();\n        }\n\n        $connection->executeUpdate('DELETE FROM liveuser_rights WHERE right_id = :rightId', array(\n            'rightId' => $rightId\n        ));\n    }\n\n    /**\n     * Remove plugin permissions from database\n     *\n     * @param  array  $pluginPermissions Plugin permissions\n     *\n     * @return void\n     */\n    public function removePluginPermissions(array $pluginPermissions)\n    {\n        try {\n            foreach ($pluginPermissions as $permissionArray) {\n                foreach ($permissionArray as $permission => $permissionLabel) {\n                    $filter = array(\n                        \"fields\" => array(\"right_id\"),\n                        \"filters\" => array(\"right_define_name\" => $permission)\n                    );\n\n                    $rights = $this->getRights($filter);\n                    if (!empty($rights)) {\n                        $this->removeRight(array('right_id' => $rights['right_id']));\n                    }\n                }\n            }\n        } catch (\\Exception $e) {\n            throw new \\Exception(\"Error removing plugin permissions\", 1);\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/PublicationService.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Entity\\Publication;\nuse Newscoop\\Entity\\Aliases;\nuse Symfony\\Component\\HttpFoundation\\Request;\n\n/**\n * Manage requested publication\n */\nclass PublicationService\n{\n    /**\n     * Entity Manager\n     * @var EntityManager\n     */\n    protected $em;\n\n    /**\n     * Publication object\n     * @var Publication\n     */\n    protected $publication;\n\n    /**\n     * Alias object\n     * @var Aliases\n     */\n    protected $publicationAlias;\n\n    /**\n     * Publication metadata.\n     * @var array\n     */\n    protected $publicationMetadata = array();\n\n    /**\n     * Cache Service\n     * @var CacheService\n     */\n    protected $cacheService;\n\n    /**\n     * Construct Publication Service\n     * @param EntityManager $em           Entity Manager\n     * @param CacheService  $cacheService Cache Service\n     */\n    public function __construct(EntityManager $em, CacheService $cacheService)\n    {\n        $this->em = $em;\n        $this->cacheService = $cacheService;\n    }\n\n    /**\n     * Get Publication object\n     * @return Publication Publication entity object\n     */\n    public function getPublication()\n    {\n        return $this->publication;\n    }\n\n    /**\n     * Get used Aliases object - connected with choosen publication\n     * @return Aliases Aliases entity object\n     */\n    public function getPublicationAlias()\n    {\n        return $this->publicationAlias;\n    }\n\n    /**\n     * Set used Aliases object - connected with choosen publication\n     * @param Aliases $alias Aliases entity object\n     */\n    public function setPublicationAlias(Aliases $alias)\n    {\n        $this->publicationAlias = $alias;\n\n        return $this;\n    }\n\n    /**\n     * Set Publication object\n     * @param Publication $publication Publication entity object\n     */\n    public function setPublication(Publication $publication)\n    {\n        $this->publication = $publication;\n\n        return $this;\n    }\n\n    /**\n     * Get publication metadata\n     * @return array publication metadata\n     */\n    public function getPublicationMetadata()\n    {\n        return $this->publicationMetadata;\n    }\n\n    /**\n     * Resolve publication from provided data\n     *\n     * @param Request $request Request object\n     *\n     * @return Publication $publication Publication entity object\n     */\n    public function publicationResolver(Request $request)\n    {\n        /**\n         * By default try get publication alias from requested http_host\n         */\n        $publication = $request->server->get('HTTP_HOST');\n        $this->publicationMetadata['source'] = 'request_http_host';\n\n        /**\n         * If in request GET or POST params exists 'publication' use it.\n         */\n        if ($request->query->has('__publication_alias_name') || $request->request->has('__publication_alias_name')) {\n            $publication = $request->get('__publication_alias_name');\n            $this->publicationMetadata['source'] = 'optional_parameter';\n        }\n\n        $cacheKey = $this->cacheService->getCacheKey(array(\n            'resolver',\n            $publication,\n            $this->publicationMetadata['source']\n        ), 'publication');\n\n        $alias = array();\n        if ($this->cacheService->contains($cacheKey)) {\n            $alias = $this->cacheService->fetch($cacheKey);\n        } else {\n            $qb = $this->em->getRepository('Newscoop\\Entity\\Aliases')\n                ->createQueryBuilder('a');\n\n            $qb->select(\n                    'a.id as aliasId',\n                    'p.id as publicationId',\n                    'a.name as alias',\n                    'p.name as publicationName',\n                    'l.id as languageId',\n                    'l.code as languageCode'\n                )\n                ->leftJoin('a.publication', 'p')\n                ->leftJoin('p.language', 'l')\n                ->where('a.name = :name')\n                ->setParameter('name', $publication);\n\n            $alias = $qb->getQuery()->getArrayResult();\n            $this->cacheService->save($cacheKey, $alias);\n        }\n\n        if (empty($alias)) {\n            return;\n        }\n\n        $this->publicationMetadata['alias'] = array(\n            'name' => $alias[0]['alias'],\n            'publication_id' => $alias[0]['publicationId']\n        );\n\n        $this->publicationMetadata['publication'] = array(\n            'name' => $alias[0]['publicationName'],\n            'id_default_language' => $alias[0]['languageId'],\n            'code_default_language' => $alias[0]['languageCode']\n        );\n\n        $this->publicationMetadata['request'] = array(\n            'uri' => $request->getRequestUri()\n        );\n\n        /**\n         * Save publication metadata to into Request attributes.\n         */\n        $request->attributes->set('_newscoop_publication_metadata', $this->publicationMetadata);\n        $aliasObject = $this->em->getReference('Newscoop\\Entity\\Aliases', $alias[0]['aliasId']);\n        $this->setPublicationAlias($aliasObject);\n        if ($alias[0]['publicationId'] != null) {\n            $publicationObject = $this->em->getReference('Newscoop\\Entity\\Publication', $alias[0]['publicationId']);\n            $this->setPublication($publicationObject);\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/RelatedArticlesService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Newscoop\\Entity\\Article;\nuse Newscoop\\Entity\\RelatedArticles;\nuse Newscoop\\Entity\\RelatedArticle;\nuse Doctrine\\ORM\\EntityManager;\n\n/**\n * Manage related articles\n */\nclass RelatedArticlesService\n{\n    /**\n     * @var EntityManager\n     */\n    protected $em;\n\n    /**\n     * @param EntityManager $em\n     */\n    public function __construct($em)\n    {\n        $this->em = $em;\n    }\n\n    /**\n     * Get related articles for article\n     *\n     * @param Article $article\n     */\n    public function getRelatedArticles($article)\n    {\n        $relatedArticlesBox = $this->findRelatedArticlesBox($article);\n        $relatedArticles = $this->em->getRepository('Newscoop\\Entity\\RelatedArticle')\n            ->getAllArticles($relatedArticlesBox)\n            ->getResult();\n\n        return $relatedArticles;\n    }\n\n    /**\n     * Remove related article from related articles container\n     *\n     * @param Article $article\n     * @param Article $articleToRemove\n     *\n     * @return boolean\n     */\n    public function removeRelatedArticle($article, $articleToRemove)\n    {\n        $relatedArticles = $this->findRelatedArticlesBox($article);\n\n        $relatedArticle = $this->em->getRepository('Newscoop\\Entity\\RelatedArticle')\n            ->getRelatedArticle($relatedArticles, $articleToRemove->getNumber())\n            ->getOneOrNullResult();\n\n        if ($relatedArticle) {\n            $this->em->remove($relatedArticle);\n            $this->em->flush();\n\n            $this->reorderAfterRemove($relatedArticles, $relatedArticle->getOrder());\n        }\n\n        return true;\n    }\n\n    /**\n     * Add new related article to related articles container\n     *\n     * @param Article $article\n     * @param Article $articleToAdd\n     * @param integer $position\n     *\n     * @return boolean\n     */\n    public function addArticle($article, $articleToAdd, $position = false)\n    {\n        $relatedArticles = $this->findRelatedArticlesBox($article);\n\n        $relatedArticle = $this->em->getRepository('Newscoop\\Entity\\RelatedArticle')\n            ->getRelatedArticle($relatedArticles, $articleToAdd->getNumber())\n            ->getOneOrNullResult();\n\n        if ($relatedArticle) {\n            $this->positionRelateArticle($relatedArticles, $relatedArticle, $position);\n\n            return true;\n        }\n\n        $relatedArticle = new RelatedArticle($relatedArticles->getId(), $articleToAdd->getNumber());\n        $this->em->persist($relatedArticle);\n        $this->em->flush();\n\n        $this->positionRelateArticle($relatedArticles, $relatedArticle, $position);\n\n        return true;\n    }\n\n    private function reorderAfterRemove($relatedArticles, $removedRelatedArticlePosition)\n    {\n        $this->initOrderOnRelatedArticles($relatedArticles);\n\n        try {\n            $this->em->getConnection()->exec('LOCK TABLES context_articles WRITE;');\n\n            // move all bigger than old position up (-1)\n            $this->em\n                ->createQuery('UPDATE Newscoop\\Entity\\RelatedArticle r SET r.order = r.order-1 WHERE r.order > :oldPosition')\n                ->setParameter('oldPosition', $removedRelatedArticlePosition)\n                ->execute();\n\n            $this->em->getConnection()->exec('UNLOCK TABLES;');\n        } catch (\\Exception $e) {\n            $this->em->getConnection()->exec('UNLOCK TABLES;');\n        }\n\n        return true;\n    }\n\n    private function initOrderOnRelatedArticles($relatedArticles)\n    {\n        $articles = $this->em->getRepository('Newscoop\\Entity\\RelatedArticle')\n            ->getAllArticles($relatedArticles)\n            ->getResult();\n\n        $index = 0;\n        foreach ($articles as $article) {\n            if (is_int($article->getOrder()) && $article->getOrder() > 0 && $index == 0) {\n                return;\n            }\n            $index++;\n\n            $article->setOrder($index);\n        }\n\n        $this->em->flush();\n\n        return true;\n    }\n\n    private function positionRelateArticle($relatedArticles, $relatedArticle, $position)\n    {\n        if ($position == false) {\n            return;\n        }\n\n        $this->initOrderOnRelatedArticles($relatedArticles);\n\n        try {\n            $this->em->getConnection()->exec('LOCK TABLES context_articles WRITE, context_articles as c0_ WRITE;');\n\n            // check if position isn't bigger that max one;\n            $maxPosition = $this->em\n                ->createQuery('SELECT COUNT(r) FROM Newscoop\\Entity\\RelatedArticle r WHERE r.articleListId = :articleListId AND r.order > 0 ORDER BY r.order ASC')\n                ->setParameter('articleListId', $relatedArticles->getId())\n                ->getSingleScalarResult();\n\n            if ($position > ((int)$maxPosition)) {\n                $position = (int)$maxPosition ;\n            }\n\n            // get article - move to position 0\n            $oldOrder = $relatedArticle->getOrder();\n            $relatedArticle->setOrder(0);\n            $this->em->flush();\n\n            // move all bigger than old position up (-1)\n            $this->em\n                ->createQuery('UPDATE Newscoop\\Entity\\RelatedArticle r SET r.order = r.order-1 WHERE r.order > :oldPosition')\n                ->setParameter('oldPosition', $oldOrder)\n                ->execute();\n\n            // move all bigger than new position down (+1)\n            $this->em\n                ->createQuery('UPDATE Newscoop\\Entity\\RelatedArticle r SET r.order = r.order+1 WHERE r.order >= :newPosition')\n                ->setParameter('newPosition', $position)\n                ->execute();\n\n            // move changed element from position 0 to new position\n            $relatedArticle->setOrder($position);\n            $this->em->flush();\n\n            $this->em->getConnection()->exec('UNLOCK TABLES;');\n        } catch (\\Exception $e) {\n            $this->em->getConnection()->exec('UNLOCK TABLES;');\n        }\n    }\n\n    private function findRelatedArticlesBox($article)\n    {\n        $relatedArticles = $this->em->getRepository('Newscoop\\Entity\\RelatedArticles')\n            ->getRelatedArticles($article->getNumber())\n            ->getOneOrNullResult();\n\n        if (!$relatedArticles) {\n            return $this->createRelatedArticlesBox($article);\n        }\n\n        return $relatedArticles;\n    }\n\n    private function createRelatedArticlesBox($article)\n    {\n        $relatedArticlesBox = new RelatedArticles($article->getNumber());\n\n        $this->em->persist($relatedArticlesBox);\n        $this->em->flush();\n\n        return $relatedArticlesBox;\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Services/SchedulerService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric z.ú.\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\SchedulerServiceInterface;\nuse Newscoop\\Entity\\CronJob;\nuse Jobby\\Jobby;\nuse Cron\\CronExpression;\n\n/**\n * Scheduler Service to handle Jobby which is a PHP cron job manager\n */\nclass SchedulerService implements SchedulerServiceInterface\n{\n    protected $em;\n\n    protected $config;\n\n    protected $jobby;\n\n    /**\n     * Construct\n     */\n    public function __construct(EntityManager $em, $config = array())\n    {\n        $this->em = $em;\n        $this->config = $config;\n        $this->jobby = new Jobby();\n    }\n\n    /**\n     * {@inheritDoc}\n     */\n    public function registerJob($jobName, array $config)\n    {\n        try {\n            foreach (array(\"command\", \"schedule\") as $field) {\n                if (empty($config[$field])) {\n                    throw new \\Exception(\"'$field' is required for '$jobName' job\");\n                }\n            }\n\n            $jobByCommand = $this->em->getRepository('Newscoop\\Entity\\CronJob')->findOneByCommand($config['command']);\n            if (!$jobByCommand) {\n                $cronJob = new CronJob();\n                foreach ($config as $key => $value) {\n                    $setter = \"set\" . ucfirst($key);\n                    $cronJob->{$setter}($value);\n                }\n\n                $cronJob->setName($jobName);\n                $this->em->persist($cronJob);\n                $this->em->flush($cronJob);\n            }\n        } catch (\\Exception $e) {\n            throw new \\Exception(\"Could not register job: '$jobName'\", 0, $e);\n        }\n    }\n\n    /**\n     * {@inheritDoc}\n     */\n    public function removeJob($jobName, array $config)\n    {\n        if (empty($config[\"command\"])) {\n            throw new \\Exception(\"'command' is required for '$jobName' job\");\n        }\n\n        $config['name'] = $jobName;\n\n        $jobs = $this->em->getRepository('Newscoop\\Entity\\CronJob')->findBy($config);\n\n        foreach($jobs as $job) {\n            $this->em->remove($job);\n            $this->em->flush();\n        }\n    }\n\n    /**\n     * {@inheritDoc}\n     */\n    public function addSchedulerJob($jobName, array $config)\n    {\n        if (array_key_exists('environment', $this->config) && !empty($this->config['environment'])) {\n            $config['environment'] = $this->config['environment'];\n        }\n\n        $this->jobby->add($jobName, $config);\n    }\n\n    /**\n     * {@inheritDoc}\n     */\n    public function run()\n    {\n        $this->jobby->run();\n    }\n\n    /**\n     * {@inheritDoc}\n     */\n    public function getNextRunDate($schedule, $currentTime = 'now', $nth = 0, $allowCurrentDate = false)\n    {\n        $cron = CronExpression::factory($schedule);\n\n        return $cron->getNextRunDate($currentTime, $nth, $allowCurrentDate)->format('Y-m-d H:i:s');\n    }\n\n    /**\n     * {@inheritDoc}\n     */\n    public function getPreviousRunDate($schedule, $currentTime = 'now', $nth = 0, $allowCurrentDate = false)\n    {\n        $cron = CronExpression::factory($schedule);\n\n        return $cron->getPreviousRunDate($currentTime, $nth, $allowCurrentDate)->format('Y-m-d H:i:s');\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/StatService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Doctrine\\ORM\\EntityManager,\n    Newscoop\\Entity\\UserSubscription;\n\n/**\n * Stat service\n */\nclass StatService\n{\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     *\n     */\n    public function __construct(EntityManager $em)\n    {\n        $this->em = $em;\n\n        if (php_sapi_name() == 'cli') {\n            $_SERVER['SERVER_SOFTWARE'] = 'PHP CLI';\n            $_SERVER['SERVER_ADDR'] = '';\n        }\n    }\n\n    public function getAll()\n    {\n        $stats = array();\n        $stats['installationId'] = $this->getInstallationId();\n        $stats['server'] = $this->getServer();\n        $stats['ipAddress'] = $this->getIp();\n        $stats['ramUsed'] = $this->getRamUsed();\n        $stats['ramTotal'] = $this->getRamTotal();\n        $stats['version'] = $this->getVersion();\n        $stats['installMethod'] = $this->getInstallMethod();\n        $stats['publications'] = $this->getPublications();\n        $stats['issues'] = $this->getIssues();\n        $stats['sections'] = $this->getSections();\n        $stats['articles'] = $this->getArticles();\n        $stats['articlesPublished'] = $this->getArticles(true);\n        $stats['languages'] = $this->getLanguages();\n        $stats['authors'] = $this->getAuthors();\n        $stats['subscribers'] = $this->getSubscribers();\n        $stats['backendUsers'] = $this->getSubscribers(1);\n        $stats['images'] = $this->getImages();\n        $stats['attachments'] = $this->getAttachments();\n        $stats['topics'] = $this->getTopics();\n        $stats['comments'] = $this->getComments();\n        $stats['hits'] = $this->getHits();\n\n        return($stats);\n    }\n\n    public function getInstallationId()\n    {\n        $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n\n        return($preferencesService->installation_id);\n    }\n\n    public function getServer()\n    {\n        return($_SERVER['SERVER_SOFTWARE']);\n    }\n\n    public function getIp()\n    {\n        return($_SERVER['SERVER_ADDR']);\n    }\n\n    public function getRamUsed()\n    {\n        return(round((memory_get_usage()/(1024*1024)), 2));\n    }\n\n    public function getRamTotal()\n    {\n        return(str_replace('M', '', ini_get('memory_limit')));\n    }\n\n    public function getVersion()\n    {\n        return(\\Newscoop\\Version::VERSION);\n    }\n\n    public function getPublications()\n    {\n        $publicationRepository = $this->em->getRepository('Newscoop\\Entity\\Publication');\n        $publications = $publicationRepository->findAll();\n\n        return(count($publications));\n    }\n\n    public function getIssues()\n    {\n        $issues = \\Issue::GetNumIssues();\n\n        return($issues);\n    }\n\n    public function getSections()\n    {\n        return(\\Section::GetTotalSections());\n    }\n\n    public function getArticles($published = null)\n    {\n        $articleRepository = $this->em->getRepository('Newscoop\\Entity\\Article');\n\n        if ($published) {\n            return $articleRepository->createQueryBuilder('a')\n            ->select('COUNT(a)')\n            ->where('a.workflowStatus = \\'Y\\'')\n            ->getQuery()\n            ->getSingleScalarResult();\n        } else {\n            return $articleRepository->createQueryBuilder('a')\n            ->select('COUNT(a)')\n            ->getQuery()\n            ->getSingleScalarResult();\n        }\n    }\n\n    public function getLanguages()\n    {\n        $languagesArray = array();\n        $qb = $this->em->getRepository('Newscoop\\Entity\\Language')\n            ->createQueryBuilder('l');\n\n        $languages = $qb\n            ->select('l.name')\n            ->getQuery()\n            ->getArrayResult();\n\n        foreach ($languages as $language) {\n            if (!in_array($language['name'], $languagesArray)) {\n                $languagesArray[] = $language['name'];\n            }\n        }\n        $languages = implode(', ', $languagesArray);\n\n        return $languages;\n    }\n\n    public function getAuthors()\n    {\n        $authors = \\Author::GetAuthors();\n\n        return(count($authors));\n    }\n\n    public function getSubscribers($isAdmin = 0)\n    {\n        $userRepository = $this->em->getRepository('Newscoop\\Entity\\User');\n\n        return $userRepository->createQueryBuilder('u')\n        ->select('COUNT(u)')\n        ->where('u.is_admin = \\'{$isAdmin}\\'')\n        ->getQuery()\n        ->getSingleScalarResult();\n    }\n\n    public function getImages()\n    {\n        $images = \\Image::GetTotalImages();\n\n        return($images);\n    }\n\n    public function getAttachments()\n    {\n        $attachments = \\Attachment::GetTotalAttachments();\n\n        return($attachments);\n    }\n\n    public function getTopics()\n    {\n        $topicsCount = $this->em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')->countBy();\n\n        return $topicsCount;\n    }\n\n    public function getComments()\n    {\n        $commentRepository = $this->em->getRepository('Newscoop\\Entity\\Comment');\n\n        return $commentRepository->createQueryBuilder('c')\n        ->select('COUNT(c)')\n        ->getQuery()\n        ->getSingleScalarResult();\n    }\n\n    public function getInstallMethod()\n    {\n        $installMethod = 'tarball';\n        if (file_exists('debian')) {\n            $installMethod = 'debian';\n        }\n\n        return($installMethod);\n    }\n\n    public function getHits()\n    {\n        global $Campsite;\n        if (empty($Campsite)) {\n            $Campsite = array('db' => array());\n        }\n\n        $newscoop_path = dirname(dirname(dirname(dirname(__FILE__))));\n        require_once($newscoop_path . '/conf/database_conf.php');\n\n        $dbAccess = $Campsite['db'];\n        $db_host = $dbAccess['host'];\n        $db_port = $dbAccess['port'];\n        $db_user = $dbAccess['user'];\n        $db_pwd = $dbAccess['pass'];\n        $db_name = $dbAccess['name'];\n\n        $dbh = new \\PDO(\n            \"mysql:host=$db_host;port=$db_port;dbname=$db_name\",\n            \"$db_user\",\n            \"$db_pwd\",\n            array(\\PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8')\n        );\n\n        $query = \"SELECT SUM(`request_count`) as 'hits' FROM `RequestObjects`\";\n        $sth = $dbh->prepare($query);\n        $res = $sth->execute();\n        $hits = $sth->fetch(\\PDO::FETCH_ASSOC);\n\n        return($hits['hits']);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/SubscriptionService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Subscription\\Subscription;\nuse Newscoop\\Subscription\\SubscriptionData;\nuse Symfony\\Component\\Yaml\\Parser;\n\n/**\n */\nclass SubscriptionService\n{\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em;\n\n    /**\n     * Subscriptions config\n     * @var array\n     */\n    protected $subscriptionsConfig;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     */\n    public function __construct(EntityManager $em)\n    {\n        $this->em = $em;\n        $subscriptionsConfigFile = __DIR__ . '/../../../application/configs/subscriptions/subscriptions.yml';\n\n        if (file_exists($subscriptionsConfigFile)) {\n            $yamlParser = new Parser();\n            $this->subscriptionsConfig = $yamlParser->parse(file_get_contents($subscriptionsConfigFile));\n        } else {\n            $this->subscriptionsConfig = array();\n        }\n    }\n\n    public function getSubscriptionsConfig() {\n        return $this->subscriptionsConfig;\n    }\n\n    public function create()\n    {\n        $subscription = new Subscription();\n\n        return $subscription;\n    }\n\n    public function save(Subscription $subscription) {\n        $this->em->persist($subscription);\n        $this->em->flush();\n    }\n\n    public function remove($id)\n    {\n\n    }\n\n    /**\n     * Remove Subscription by Id\n     * @param  integer $id - user subscription id\n     * @return void\n     */\n    public function removeById($id) {\n        \n        $subscription = $this->em->getRepository('Newscoop\\Subscription\\Subscription')\n            ->findOneBy(array(\n                'id' => $id\n            ));\n            \n        if ($subscription) {\n            $subscription->setActive(false);\n            $this->em->flush();\n        }\n    }\n\n    public function getOneById($id)\n    {\n\n        $subscription = $this->em->getRepository('Newscoop\\Subscription\\Subscription')->findOneBy(array(\n            'id' => $id\n        ));\n\n        return $subscription;\n    }\n\n    public function getOneByUserAndPublication($userId, $publicationId)\n    {\n        $subscription = $this->em->getRepository('Newscoop\\Subscription\\Subscription')->findOneBy(array(\n            'user' => $userId,\n            'publication' => $publicationId\n        ));\n\n        return $subscription;\n    }\n\n    /**\n     * Update Subscription according to SubscritionData class\n     * @param  Subscription     $subscription\n     * @param  SubscriptionData $data\n     * @return Subscription\n     */\n    public function update(Subscription $subscription, SubscriptionData $data)\n    {\n        $subscription = $this->apply($subscription, $data);\n\n        return $subscription;\n    }\n\n    private function apply(Subscription $subscription, SubscriptionData $data) \n    {\n        if ($data->userId) {\n            $user = $this->em->getRepository('Newscoop\\Entity\\User')->getOneActiveUser($data->userId, false)->getOneOrNullResult();\n            if ($user) {\n                $subscription->setUser($user);    \n            }\n        }\n\n        if ($data->publicationId) {\n            $publication = $this->em->getRepository('Newscoop\\Entity\\Publication')->findOneBy(array('id' => $data->publicationId));\n            if ($publication) {\n                $subscription->setPublication($publication);\n            }\n        }\n\n        if ($data->toPay) {\n            $subscription->setToPay($data->toPay);\n        }\n\n        if ($data->currency) {\n            $subscription->setCurrency($data->currency);\n        }\n\n        if ($data->active) {\n            $subscription->setActive($data->active);\n        }\n\n        if ($data->type) {\n            $subscription->setType($data->type);\n        }\n\n        if ($data->sections) {\n            $sectionsIds = array();\n            foreach ($data->sections as $key => $section) {\n                $subscription->addSection($section);\n                $sectionsIds[] = $section->getId();\n            }\n\n            //Clean conncted sections list\n            $subscription->setSections($sectionsIds);\n        }\n\n        if ($data->articles) {\n            $articlesIds = array();\n            foreach ($data->articles as $key => $article) {\n                $subscription->addArticle($article);\n                $articlesIds[] = $article->getId();\n            }\n\n            //Clean conncted sections list\n            $subscription->setArticles($articlesIds);\n        }\n\n        if ($data->issues) {\n            $issuesIds = array();\n            foreach ($data->issues as $key => $issue) {\n                $subscription->addIssue($issue);\n                $issuesIds[] = $issue->getId();\n            }\n\n            //Clean conncted sections list\n            $subscription->setIssues($issuesIds);\n        }\n        \n        return $subscription;\n    }\n\n    public function getArticleRepository(){\n        return $this->em->getRepository('Newscoop\\Entity\\Article');\n    }\n\n    public function getSectionRepository(){\n        return $this->em->getRepository('Newscoop\\Entity\\Section');\n    }\n\n    public function getLanguageRepository(){\n        return $this->em->getRepository('Newscoop\\Entity\\Language');\n    }\n\n    public function getIssueRepository(){\n        return $this->em->getRepository('Newscoop\\Entity\\Issue');\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/TemplatesService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @author Paweł Mikołąjczuk <pawel.mikolajczuk@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Newscoop\\Services\\PublicationService;\n\n/**\n *  Templates service\n */\nclass TemplatesService\n{\n    /**\n     * @var \\CampTemplate\n     */\n    protected $smarty;\n\n    /**\n     * Themes Service\n     *\n     * @var ThemesServiceInterface\n     */\n    protected $themesService;\n\n    /**\n     * Publication Service\n     *\n     * @var PublicationService\n     */\n    protected $publicationService;\n\n    /**\n     * @var array\n     */\n    protected $originalVector;\n\n    /**\n     * @var string\n     */\n    protected $themePath;\n\n    /**\n     * Template file name used for rendering images from article content\n     *\n     * @var string\n     */\n    protected $contentImageTemplate;\n\n    public function __construct(ThemesService $themesService, PublicationService $publicationService)\n    {\n        $this->smarty = \\CampTemplate::singleton();\n        $this->smarty->assign('gimme', $this->smarty->context());\n        $this->themesService = $themesService;\n        $this->publicationService = $publicationService;\n        $this->originalVector = $this->smarty->campsiteVector;\n        $this->themePath = $this->themesService->getThemePath();\n        $this->contentImageTemplate = 'editor_image.tpl';\n        $this->preconfigureSmarty();\n    }\n\n    /**\n     * Fetch template with smarty\n     *\n     * @param string  $file     template file path\n     * @param array   $params   array with template parameters\n     * @param integer $lifetime template cache lifetime (default: 1400 seconds)\n     *\n     * @return string Template output\n     */\n    public function fetchTemplate($file, $params = array(), $lifetime = 1400)\n    {\n        $content = $this->renderTemplate($file, $params, $lifetime, false);\n        $this->preconfigureVector();\n\n        return $content;\n    }\n\n    /**\n     * Render template with smarty (will echo outupt)\n     *\n     * @param string  $file     template file path\n     * @param array   $params   array with template parameters\n     * @param integer $lifetime template cache lifetime (default: 1400 seconds)\n     * @param boolean $render   render or just fetch template (default: true [render])\n     *\n     * @return string Template output\n     */\n    public function renderTemplate($file, $params = array(), $lifetime = 1400, $render = true)\n    {\n        $this->assignParameters($params);\n        $this->setLifetime($lifetime, $file);\n\n        return $this->smarty->fetch($file, sha1(serialize($this->smarty->campsiteVector)), null, null, $render);\n    }\n\n    /**\n     * Get current smarty object\n     *\n     * @return \\Smarty\n     */\n    public function getSmarty()\n    {\n        return $this->smarty;\n    }\n\n    /**\n     *  Newscoop caching save cached template file content with special vector parameters.\n     *\n     *  By default vector is filled with 6 parameters:\n     *  * (int) language\n     *  * (int) publication\n     *  * (int) issue\n     *  * (int) section\n     *  * (int) article\n     *  * (string) params\n     *\n     *  In this service vector is allways prefilled only with publication and language values.\n     *  You need to set manualny (if needed) issue, section, article or params keys\n     *\n     * @param array $vector\n     */\n    public function setVector($vector)\n    {\n        $this->smarty->campsiteVector = $vector;\n    }\n\n    /**\n     * Set template file name used for rendering images from article content\n     *\n     * @param string $contentImageTemplate\n     */\n    public function setContentImageTemplate($contentImageTemplate)\n    {\n        $this->contentImageTemplate = $contentImageTemplate;\n\n        return $this;\n    }\n\n    /**\n     * Get template file name used for rendering images from article content\n     *\n     * @return string\n     */\n    public function getContentImageTemplate()\n    {\n        return $this->contentImageTemplate;\n    }\n\n    /**\n     * Set template cache lifetime\n     *\n     * @param integer $lifetime\n     */\n    public function setLifetime($lifetime, $file)\n    {\n        $this->smarty->cache_lifetime = $lifetime;\n\n        $filePath = $this->themePath . $file;\n        if (0 === strpos($file, '/')) {\n           $filePath = substr($file, strpos($file, $this->themePath));\n        }\n\n        $template = new \\Template($filePath);\n        $themeLifetime = $template->getCacheLifetime();\n        if (!is_null($themeLifetime) && $template->exists()) {\n            $this->smarty->cache_lifetime = (int) $themeLifetime;\n        }\n    }\n\n    private function assignParameters($params = array())\n    {\n        foreach ($params as $key => $value) {\n            $this->smarty->assign($key, $value);\n        }\n    }\n\n    private function preconfigureSmarty()\n    {\n        $this->smarty->addTemplateDir(realpath(APPLICATION_PATH . '/../themes/' . $this->themePath ));\n        $this->smarty->config_dir = (realpath(APPLICATION_PATH . '/../themes/' . $this->themePath . '_conf'));\n\n        // reverse templates dir order\n        $this->smarty->setTemplateDir(array_reverse($this->smarty->getTemplateDir()));\n\n        $this->preconfigureVector();\n    }\n\n    private function preconfigureVector()\n    {\n        $uri = \\CampSite::GetURIInstance();\n        $this->smarty->campsiteVector = $this->originalVector + $uri->getCampsiteVector();\n        $publicationMetadata = $this->publicationService->getPublicationMetadata();\n\n        if (isset($publicationMetadata['alias']) && isset($publicationMetadata['publication'])) {\n            $this->smarty->campsiteVector = $this->smarty->campsiteVector + array(\n                'publication' => $publicationMetadata['alias']['publication_id'],\n                'language' => $publicationMetadata['publication']['id_default_language']\n            );\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/ThemesService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric z.ú.\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Newscoop\\ThemesServiceInterface;\nuse Newscoop\\IssueServiceInterface;\nuse Newscoop\\Entity\\Issue;\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Entity\\Output;\n\n/**\n * Themes service\n */\nclass ThemesService implements ThemesServiceInterface\n{\n    /**\n     * Issue service\n     *\n     * @var IssueServiceInterface\n     */\n    protected $issueService;\n\n    /**\n     * Cache service\n     *\n     * @var CacheService\n     */\n    protected $cacheService;\n\n    /**\n     * Publication service\n     *\n     * @var PublicationService\n     */\n    protected $publicationService;\n\n    /**\n     * Entity Manager\n     *\n     * @var EntityManager\n     */\n    protected $em;\n\n    /**\n     * Construct\n     */\n    public function __construct(\n        IssueServiceInterface $issueService,\n        CacheService $cacheService,\n        PublicationService $publicationService,\n        EntityManager $em\n    )\n    {\n        $this->issueService = $issueService;\n        $this->cacheService = $cacheService;\n        $this->publicationService = $publicationService;\n        $this->em = $em;\n    }\n\n    /**\n     * {@inheritDoc}\n     */\n    public function getThemePath($language = null)\n    {\n        $frontpage = false;\n        $publicationMetadata = $this->publicationService->getPublicationMetadata();\n        if (isset($publicationMetadata['request'])) {\n            $frontpage = $this->isHomepage($publicationMetadata['request']['uri'], true);\n        }\n        $languageId = null;\n        $issue = $this->issueService->getIssue();\n        if (!$issue) {\n            return;\n        }\n\n        if (!($language instanceof \\Newscoop\\Entity\\Language)) {\n            $languageCode = $language;\n            $language = $this->em->getRepository('Newscoop\\Entity\\Language')\n                ->findOneBy(array('code' => $language));\n        }\n\n        if (!is_null($languageId)) {\n            $languageId = $language->getId();\n        } else if (is_null($languageId)) {\n            $languageId = $issue->getLanguageId();\n        }\n        $publication = $this->publicationService->getPublication();\n        $cacheKeyThemePath = $this->cacheService->getCacheKey(array('getThemePath', $frontpage, $languageId, $publication->getId(), $issue->getNumber()), 'issue');\n\n        $themePath = null;\n        if ($this->cacheService->contains($cacheKeyThemePath)) {\n            $themePath = $this->cacheService->fetch($cacheKeyThemePath);\n        } else {\n            $webOutput = null;\n            $outSetIssues = null;\n            $cacheKeyWebOutput = $this->cacheService->getCacheKey(array('OutputService', 'Web'), 'outputservice');\n            if ($this->cacheService->contains($cacheKeyWebOutput)) {\n                $webOutput = $this->cacheService->fetch($cacheKeyWebOutput);\n            } else {\n                $webOutput = $this->findByName('Web');\n                $this->cacheService->save($cacheKeyWebOutput, $webOutput);\n            }\n\n            if ($frontpage) {\n                $outSetPublication = $this->findByPublicationAndLanguageAndOuput($publication, $languageId, $webOutput);\n                if (!is_null($outSetPublication)) {\n                    $themePath = $outSetPublication->getThemePath()->getPath();\n                }\n            }\n            if (!$frontpage || ($frontpage && $themePath === null)) {\n                $outSetIssues = $this->findByIssueAndOutput($issue->getId(), $webOutput);\n                if (!is_null($outSetIssues)) {\n                    $themePath = $outSetIssues->getThemePath()->getPath();\n                }\n            }\n\n            $this->cacheService->save($cacheKeyThemePath, $themePath);\n        }\n\n        return $themePath;\n    }\n\n    /**\n     * Returns whether the url is the home page or not. Support for\n     * language homepages (/cz, /en, etc.) is also built in via a parameters.\n     *\n     * @param  boolean $withLanguageHomepage Whether to include language homepages\n     *                                       in the resulsts.\n     *\n     * @return boolean\n     */\n    public function isHomepage($path, $withLanguageHomepage = false)\n    {\n        $matches = array();\n        if ($path === '/') {\n            return true;\n        } elseif ($withLanguageHomepage && preg_match('@^/[a-z]{2}(?:-[A-Z]{2})?$@', $path, $matches)) {\n            try {\n                $language = $this->em->getRepository('Newscoop\\Entity\\Language')->findOneBy(array('code' => ltrim($matches[0], '/')));\n                if ($language) {\n                    return true;\n                }\n            } catch (\\Exception $e) {\n                return false;\n            }\n        }\n\n        return false;\n    }\n\n    /**\n     * Finds output by name\n     *\n     * @param string $name Output name ('Web' in this case)\n     *\n     * @return string|null\n     * @throws Exception   when wrong parameter supplied\n     */\n    public function findByName($name)\n    {\n        if (is_null($name)) {\n            throw new \\Exception(\"Please provide a value for the parameter 'name'\");\n        } elseif (is_string($name) && trim($name) == '') {\n            throw new \\Exception(\"Please provide a none empty value for the parameter 'name'.\");\n        }\n\n        $outputs = $this->em->getRepository('Newscoop\\Entity\\Output')->findBy(array('name' => $name));\n        if (isset($outputs) && count($outputs) > 0) {\n            return $outputs[0];\n        }\n\n        return null;\n    }\n\n    /**\n     * Finds output for issue by issue and output\n     *\n     * @param Issue  $issue  Issue object\n     * @param Output $output Output object\n     *\n     * @return string|null\n     */\n    public function findByIssueAndOutput($issue, $output)\n    {\n        $outputId = $output;\n        if ($output instanceof Output) {\n            $outputId = $output->getId();\n        }\n\n        $issueId = $issue;\n        if ($issue instanceof Issue) {\n            $issueId = $issue->getId();\n        }\n\n        $resources = $this->em->getRepository('Newscoop\\Entity\\Output\\OutputSettingsIssue')->findBy(array(\n            'issue' => $issueId,\n            'output' => $outputId\n        ));\n\n        if (!empty($resources)) {\n            return $resources[0];\n        }\n\n        return null;\n    }\n\n    /**\n     * Finds output for publication by publication, language and output.\n     *\n     * @param  Newscoop\\Entity\\Publication $publication\n     * @param  Newscoop\\Entity\\Language    $language\n     * @param  Newscoop\\Entity\\Output      $ouput\n     *\n     * @return Newscoop\\Entity\\Resource|null\n     */\n    public function findByPublicationAndLanguageAndOuput(\n        $publication,\n        $language,\n        $output\n    ) {\n\n        $outputId = $output;\n        if ($output instanceof Output) {\n            $outputId = $output->getId();\n        }\n\n        $languageId = $language;\n        if ($language instanceof Language) {\n            $languageId = $language->getId();\n        }\n\n        $publicationId = $publication;\n        if ($publication instanceof Publication) {\n            $publicationId = $publication->getId();\n        }\n\n        $resources = $this->em\n            ->getRepository('Newscoop\\Entity\\Output\\OutputSettingsPublication')\n            ->findBy(array(\n                'output' => $outputId,\n                'publication' => $publicationId,\n                'language' => $languageId,\n            )\n        );\n\n        if (!empty($resources)) {\n            return $resources[0];\n        }\n\n        return null;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/UserAttributeService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\Entity\\UserAttribute;\nuse Newscoop\\EventDispatcher\\Events\\GenericEvent;\n\n/**\n * User service\n */\nclass UserAttributeService\n{\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     */\n    public function __construct(EntityManager $em)\n    {\n        $this->em = $em;\n    }\n\n    /**\n     * Receives notifications of points events.\n     *\n     * @param GenericEvent $event\n     * @return void\n     */\n    public function update(GenericEvent $event)\n    {\n        $params = $event->getArguments();\n\n        $attribute_name =  str_replace(\".\", \"_\", $event->getName());\n        $user = $params['user'];\n\n        if (is_int($user)) {\n            $user_repo = $this->em->getRepository('Newscoop\\Entity\\User');\n            try {\n                $user = $user_repo->findOneById($user);\n            } catch (\\Exception $e) {\n                $user = '';\n            }\n        }\n\n        if (empty($user)) {\n            return;\n        }\n\n        $attribute_value = $user->getAttribute($attribute_name);\n        $attribute_value = isset($attribute_value) ? ($attribute_value+1) : 1;\n\n        $user->addAttribute($attribute_name, $attribute_value);\n\n        $this->em->flush();\n    }\n\n    /**\n     * Remove user attributes\n     *\n     * @param Newscoop\\Entity\\User $user\n     * @param array $attributes\n     *\n     * @return void\n     */\n    public function removeAttributes(User $user, array $attributes)\n    {\n        foreach ($attributes as $attribute) {\n            if ($entity = $user->removeAttribute($attribute)) {\n                $this->em->remove($entity);\n            }\n        }\n\n        $this->em->flush();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/UserPointsService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Entity\\UserPoints;\nuse Newscoop\\EventDispatcher\\Events\\GenericEvent;\n\n/**\n * User service\n */\nclass UserPointsService\n{\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     */\n    public function __construct(EntityManager $em)\n    {\n        $this->em = $em;\n    }\n\n    /**\n     * Find UserPoints entity object for this action.\n     *\n     * @param string $action\n     *\n     * @return Newscoop\\Entity\\UserPoints\n     */\n    public function find($action)\n    {\n        return $this->getRepository()->findOneBy(array(\n            'action' => $action,\n        ));\n    }\n\n    /**\n     * Find all userpoints\n     *\n     * @return array\n     */\n    public function findAll()\n    {\n        return $this->getRepository()\n            ->findAll();\n    }\n\n    /**\n     * Receives notifications of points events.\n     *\n     * @param GenericEvent $event\n     * @return void\n     */\n    public function update(GenericEvent $event)\n    {\n        $params = $event->getArguments();\n\n        $action =  str_replace('.', '_', $event->getName());\n        $user = $params['user'];\n\n        if (is_int($user)) {\n            $user_repo = $this->em->getRepository('Newscoop\\Entity\\User');\n            try {\n                $user = $user_repo->findOneById($user);\n            } catch (\\Exception $e) {\n                $user = '';\n            }\n        }\n\n        if (empty($user)) {\n            return;\n        }\n\n        $points = $user->getPoints();\n        $points_action = $this->getRepository()->getPointValueForAction($action);\n\n        $user->setPoints($points+$points_action);\n\n        $this->em->flush();\n    }\n\n    /**\n     * Update a points entry\n     *\n     * @param array $values\n     * @return void\n     */\n    public function updateEntries($values)\n    {\n        $entries = $this->findAll();\n\n        foreach ($entries as $entry) {\n            if(isset($values[$entry->getAction()])) {\n                $points = $values[$entry->getAction()];\n                $entry->setPoints($points);\n            }\n        }\n\n        $this->em->flush();\n    }\n\n    /**\n     * Get repository for userpoints entity\n     *\n     * @return Newscoop\\Entity\\Repository\\UserPointsRepository\n     */\n    protected function getRepository()\n    {\n        return $this->em->getRepository('Newscoop\\Entity\\UserPoints');\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/UserSearchService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Doctrine\\Common\\Persistence\\ObjectManager;\n\n/**\n */\nclass UserSearchService\n{\n    /** @var \\Doctrine\\Common\\Persistence\\ObjectManager */\n    protected $em;\n\n    /**\n     * @param \\Doctrine\\Common\\Persistence\\ObjectManager $em\n     */\n    public function __construct(ObjectManager $em)\n    {\n        $this->em = $em;\n    }\n\n    /**\n     * Find users by given query\n     *\n     * @param string $q\n     * @param int $limit\n     * @return array\n     */\n    public function find($q, $limit = 25)\n    {\n        if (empty($q)) {\n            return array();\n        }\n\n        $query = $this->em->createQueryBuilder()\n            ->select('u')\n            ->from('Newscoop\\Entity\\User', 'u')\n            ->where('u.email LIKE ?0')\n            ->orWhere('u.username LIKE ?0')\n            ->orderBy('u.id', 'asc')\n            ->setMaxResults($limit)\n            ->getQuery();\n\n        $query->setParameter(0, \"%$q%\");\n        return $query->getResult();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/UserService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Services;\n\nuse Doctrine\\Common\\Persistence\\ObjectManager;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\PaginatedCollection;\nuse InvalidArgumentException;\nuse Symfony\\Component\\Security\\Core\\Authentication\\Token\\UsernamePasswordToken;\nuse Symfony\\Component\\Security\\Core\\SecurityContext;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\EventDispatcher\\GenericEvent;\nuse Newscoop\\Exception\\AuthenticationException;\n\n/**\n * User service\n */\nclass UserService\n{\n    const USER_ENTITY = 'Newscoop\\Entity\\User';\n\n    /** @var \\Doctrine\\Common\\Persistence\\ObjectManager */\n    protected $em;\n\n    /** @var \\Zend_Auth */\n    protected $auth;\n\n    /** @var \\Newscoop\\Entity\\User */\n    protected $currentUser;\n\n    /** @var \\Newscoop\\Entity\\Repository\\UserRepository */\n    protected $repository;\n\n    /** @var SecurityContext */\n    protected $security;\n\n    /** @var $userIp */\n    protected $userIp;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     * @param Zend_Auth                  $auth\n     * @param SecurityContext            $security\n     */\n    public function __construct(ObjectManager $em, \\Zend_Auth $auth, SecurityContext $security)\n    {\n        $this->em = $em;\n        $this->auth = $auth;\n        $this->security = $security;\n    }\n\n    /**\n     * Get current user\n     *\n     * @return Newscoop\\Entity\\User\n     */\n    public function getCurrentUser()\n    {\n        if ($this->currentUser === null) {\n            if ($this->auth->hasIdentity()) {\n                $this->currentUser = $this->getRepository()->find($this->auth->getIdentity());\n            } elseif ($this->security->getToken()) {\n                if ($this->security->getToken()->getUser()) {\n                    $currentUser = $this->security->getToken()->getUser();\n                    if ($this->security->isGranted('IS_AUTHENTICATED_FULLY') ||\n                        $this->security->isGranted('IS_AUTHENTICATED_REMEMBERED')\n                    ) {\n                        $this->currentUser = $currentUser;\n                    } else {\n                        throw new AuthenticationException();\n                    }\n                } else {\n                    throw new AuthenticationException();\n                }\n            }\n        }\n\n        return $this->currentUser;\n    }\n\n    /**\n     * Find user\n     *\n     * @param int $id\n     *\n     * @return Newscoop\\Entity\\User\n     */\n    public function find($id)\n    {\n        return $this->getRepository()->find($id);\n    }\n\n    /**\n     * Find all users\n     *\n     * @return mixed\n     */\n    public function findAll()\n    {\n        return $this->getRepository()->findAll();\n    }\n\n    /**\n     * Find by given criteria\n     *\n     * @param array      $criteria\n     * @param array|null $orderBy\n     * @param int|null   $limit\n     * @param int|null   $offset\n     *\n     * @return mixed\n     */\n    public function findBy(array $criteria, array $orderBy = null, $limit = null, $offset = null)\n    {\n        return $this->getRepository()->findBy($criteria, $orderBy, $limit, $offset);\n    }\n\n    /**\n     * Get collection by given criteria\n     *\n     * @param array $criteria\n     * @param array $orderBy\n     * @param int   $limit\n     * @param int   $offset\n     *\n     * @return Newscoop\\PaginatedCollection\n     */\n    public function getCollection(array $criteria, array $orderBy, $limit = null, $offset = null)\n    {\n        $qb = $this->getRepository()->createQueryBuilder('u');\n        $qb->setFirstResult($offset);\n        $qb->setMaxResults($limit);\n\n        if (!empty($criteria['q'])) {\n            $q = $qb->expr()->literal('%'.$criteria['q'].'%');\n            $qb->andWhere($qb->expr()->orX(\n                $qb->expr()->like('u.username', $q),\n                $qb->expr()->like('u.email', $q)\n            ));\n        }\n\n        if (!empty($criteria['groups'])) {\n            $qb->join('u.groups', 'g', 'WITH', 'g.id = :group')\n                ->setParameter('group', $criteria['groups']);\n        }\n\n        if (isset($criteria['status'])) {\n            $qb->andWhere('u.status = :status')\n                ->setParameter('status', $criteria['status']);\n        }\n\n        if (isset($criteria['attribute']) && is_array($criteria['attribute'])) {\n            foreach ($criteria['attribute'] as $attribute => $value) {\n                $qb->join('u.attributes', 'a', 'WITH', 'a.attribute = :attribute AND a.value = :value');\n                $qb->setParameter('attribute', $attribute);\n                $qb->setParameter('value', $value);\n                break; // only 1\n            }\n        }\n\n        foreach ($orderBy as $column => $dir) {\n            $qb->addOrderBy(\"u.$column\", $dir);\n        }\n\n        return new PaginatedCollection($qb->getQuery());\n    }\n\n    /**\n     * Find one by given criteria\n     *\n     * @param array $criteria\n     *\n     * @return Newscoop\\Entity\\User\n     */\n    public function findOneBy(array $criteria)\n    {\n        return $this->getRepository()->findOneBy($criteria);\n    }\n\n    /**\n     * Save user\n     *\n     * @param array                $data\n     * @param Newscoop\\Entity\\User $user\n     *\n     * @return Newscoop\\Entity\\User\n     */\n    public function save(array $data, User $user = null)\n    {\n        if (null === $user) {\n            $user = new User();\n        }\n\n        if (empty($data['image'])) {\n            unset($data['image']);\n        }\n\n        if (empty($data['password'])) {\n            unset($data['password']);\n        }\n\n        $this->getRepository()->save($user, $data);\n        $this->em->flush();\n\n        return $user;\n    }\n\n    /**\n     * Delete user\n     *\n     * @param Newscoop\\Entity\\User $user\n     *\n     * @return void\n     */\n    public function delete(User $user)\n    {\n        if ($this->auth->getIdentity() == $user->getId()) {\n            throw new \\InvalidArgumentException(\"You can't delete yourself\");\n        }\n\n        // in case user logged in via e.g. FB,\n        // remove also identify so the new account\n        // with the same email can be created.\n        $identity = $this->em->getRepository('Newscoop\\Entity\\UserIdentity')->findOneByUser($user);\n\n        if (null !== $identity) {\n            $this->em->remove($identity);\n            $this->em->flush();\n        }\n\n        $this->getRepository()->delete($user);\n    }\n\n    /**\n     * Rename user\n     *\n     * @param object $command\n     *\n     * @return void\n     */\n    public function renameUser($command)\n    {\n        $user = $this->getRepository()->findOneById($command->userId);\n        if ($user->render()->username === $command->username) {\n            return;\n        }\n\n        $conflict = $this->getRepository()->findByUsername($command->username);\n        if (!empty($conflict)) {\n            throw new InvalidArgumentException($command->username);\n        }\n\n        $user->rename($command->username);\n        $this->em->flush();\n    }\n\n    /**\n     * Generate username\n     *\n     * @param string $firstName\n     * @param string $lastName\n     *\n     * @return string\n     */\n    public function generateUsername($firstName, $lastName)\n    {\n        if (empty($firstName) && empty($lastName)) {\n            return '';\n        }\n\n        $user = new User();\n        $user->setUsername(trim($firstName).' '.trim($lastName));\n        $username = $user->getUsername();\n\n        for ($i = '';; $i++) {\n            $conflict = $this->getRepository()->findOneBy(array(\n                'username' => \"$username{$i}\",\n            ));\n\n            if (empty($conflict)) {\n                return \"$username{$i}\";\n            }\n        }\n    }\n\n    /**\n     * Set user active\n     *\n     * @param Newscoop\\Entity\\User $user\n     *\n     * @return void\n     */\n    public function setActive(User $user)\n    {\n        $user->setStatus(User::STATUS_ACTIVE);\n        $this->em->flush();\n    }\n\n    /**\n     * Create pending user\n     *\n     * @param string      $email\n     * @param string|null $firstName\n     * @param string|null $lastName\n     * @param string|null $subscriber\n     *\n     * @return Newscoop\\Entity\\User\n     */\n    public function createPending($email, $firstName = null, $lastName = null, $subscriber = null, $publication = null)\n    {\n        $users = $this->findBy(array('email' => $email));\n        if (empty($users)) {\n            $user = new User($email);\n            $user->setPublic(true);\n        } else {\n            $user = $users[0];\n        }\n\n        if ($firstName) {\n            $user->setFirstName($firstName);\n        }\n\n        if ($lastName) {\n            $user->setLastName($lastName);\n        }\n\n        if ($subscriber) {\n            $user->setSubscriber($subscriber);\n        }\n\n        if ($publication) {\n            $user->setPublication($publication);\n        }\n\n        $this->em->persist($user);\n        $this->em->flush();\n\n        return $user;\n    }\n\n    /**\n     * Save pending user\n     *\n     * @param array                $data\n     * @param Newscoop\\Entity\\User $user\n     *\n     * @return void\n     */\n    public function savePending($data, User $user)\n    {\n        if (!$user->isPending()) {\n            throw new \\InvalidArgumentException(\"User '{$user->getUsername()}' is not pending user.\");\n        }\n\n        $user->setActive();\n        $user->setPublic(true);\n        $this->save($data, $user);\n\n        return $this;\n    }\n\n    /**\n     * Create new activated user\n     *\n     * @param string  $email\n     * @param string  $password\n     * @param string  $firstName\n     * @param string  $lastName\n     * @param integer $publication\n     */\n    public function createUser($email, $password, $username, $firstName = null, $lastName = null, $publication = 0, $public = true, $userTypes = array())\n    {\n        $users = $this->findBy(array('email' => $email));\n        if (!empty($users)) {\n            throw new \\Newscoop\\Exception\\ResourcesConflictException(\"User with this email already exists\");\n        }\n\n        $user = new User($email);\n        $user->setPassword($password);\n        $user->setUsername($username);\n        $user->setPublic($public);\n        $user->setActive();\n        $user->setFirstName($firstName);\n        $user->setLastName($lastName);\n        $user->setPublication($publication);\n\n        foreach ($userTypes as $type) {\n            $user->addUserType($this->em->getReference('Newscoop\\Entity\\User\\Group', $type));\n        }\n\n        $this->em->persist($user);\n        $this->em->flush();\n\n        return $user;\n    }\n\n    /**\n     * Test if username is available\n     *\n     * @param string $username\n     *\n     * @return bool\n     */\n    public function checkUsername($username)\n    {\n        return $this->getRepository()->isUnique('username', $username);\n    }\n\n    /**\n     * Find user by author\n     *\n     * @param int $authorId\n     *\n     * @return Newscoop\\Entity\\User|null\n     */\n    public function findByAuthor($authorId)\n    {\n        return $this->getRepository()->findOneBy(array(\n            'author' => $authorId,\n        ));\n    }\n\n    public function loadUserByUsername($username)\n    {\n        return $this->getRepository()->findOneBy(array(\n            'username' => $username,\n        ));\n    }\n\n    /**\n     * Count all users\n     *\n     * @return int\n     */\n    public function countAll()\n    {\n        return $this->getRepository()->countAll();\n    }\n\n    /**\n     * Count users by given criteria\n     *\n     * @param array $criteria\n     *\n     * @return int\n     */\n    public function countBy(array $criteria)\n    {\n        return $this->getRepository()->countBy($criteria);\n    }\n\n    /**\n     * Get count of public users\n     *\n     * @return int\n     */\n    public function getPublicUserCount()\n    {\n        return $this->countBy(array(\n            'status' => User::STATUS_ACTIVE,\n            'is_public' => true,\n        ));\n    }\n\n    /**\n     * Get repository for user entity\n     *\n     * @return Newscoop\\Entity\\Repository\\UserRepository\n     */\n    private function getRepository()\n    {\n        if (null === $this->repository) {\n            $this->repository = $this->em->getRepository($this->getClassName());\n        }\n\n        return $this->repository;\n    }\n\n    /**\n     * Get user entity class name\n     *\n     * @return string\n     */\n    public function getClassName()\n    {\n        return self::USER_ENTITY;\n    }\n\n    /**\n     * Get user group options\n     *\n     * @return array\n     */\n    public function getGroupOptions()\n    {\n        $query = $this->em->getRepository('Newscoop\\Entity\\User\\Group')\n            ->createQueryBuilder('g')\n            ->select('g.id, g.name')\n            ->orderBy('g.id')\n            ->getQuery();\n\n        $groups = array();\n        foreach ($query->getResult() as $row) {\n            $groups[$row['id']] = $row['name'];\n        }\n\n        return $groups;\n    }\n\n    /**\n     * Log in user\n     *\n     * @param Newscoop\\Entity\\User $user\n     * @param string               $providerKey\n     *\n     * @return UsernamePasswordToken\n     */\n    public function loginUser(User $user, $providerKey)\n    {\n        $roles = $user->getRoles();\n        $token = new UsernamePasswordToken($user, null, $providerKey, $roles);\n        $this->security->setToken($token);\n\n        return $token;\n    }\n\n    /**\n     * Get user IP\n     *\n     * @return string\n     */\n    public function getUserIp()\n    {\n        return $this->userIp;\n    }\n\n    /**\n     * Set user IP\n     *\n     * @param string $userIp User IP\n     *\n     * @return string\n     */\n    public function setUserIp($userIp = null)\n    {\n        $this->userIp = $userIp;\n\n        return $this;\n    }\n\n    /**\n     * Resolve user IP from provided data\n     *\n     * @param Request $request Request object\n     *\n     * @return string $userIp User IP\n     */\n    public function userIpResolver(Request $request)\n    {\n        $userIp = null;\n        if (!is_null($request->server->get('HTTP_CLIENT_IP'))) {\n            $userIp = $request->server->get('HTTP_CLIENT_IP');\n        } elseif (!is_null($request->server->get('HTTP_X_FORWARDED_FOR'))) {\n            $userIp = $request->server->get('HTTP_X_FORWARDED_FOR');\n        } else {\n            $userIp = $request->server->get('REMOTE_ADDR');\n        }\n\n        $this->setUserIp($userIp);\n\n        return $userIp;\n    }\n\n    /**\n     * Update user points\n     *\n     * @param  GenericEvent $event\n     * @return void\n     */\n    public function updateUserPoints(GenericEvent $event)\n    {\n        $params = $event->getArguments();\n        $user = null;\n        $authorId = null;\n        if (array_key_exists('user', $params)) {\n            $user = $params['user'];\n            if (is_numeric($params['user'])) {\n                $user = $this->find($params['user']);\n            }\n        }\n\n        if (array_key_exists('authorId', $params)) {\n            $authorId = $params['authorId'];\n        }\n\n        if ($user || $authorId) {\n            $this->getRepository()->setUserPoints($user, $authorId);\n        }\n    }\n\n    public function extractCriteriaFromRequest($request)\n    {\n        $criteria = new \\Newscoop\\User\\UserCriteria();\n\n        if ($request->query->has('sorts')) {\n            foreach ($request->get('sorts') as $key => $value) {\n                $criteria->orderBy[$key] = $value == '-1' ? 'desc' : 'asc';\n            }\n        }\n\n        if ($request->query->has('queries')) {\n            $queries = $request->query->get('queries');\n\n            if (array_key_exists('search', $queries)) {\n                $criteria->query = $queries['search'];\n            }\n\n            if (array_key_exists('search_name', $queries)) {\n                $criteria->query_name = $queries['search_name'];\n            }\n\n            if (array_key_exists('filter', $queries)) {\n                if ($queries['filter'] == 'active') {\n                    $criteria->lastLoginDays = 30;\n                }\n\n                if ($queries['filter'] == 'registered') {\n                    $criteria->status = User::STATUS_ACTIVE;\n                }\n\n                if ($queries['filter'] == 'pending') {\n                    $criteria->status = User::STATUS_INACTIVE;\n                }\n\n                if ($queries['filter'] == 'deleted') {\n                    $criteria->status = User::STATUS_DELETED;\n                }\n            }\n\n            if (array_key_exists('user-group', $queries)) {\n                foreach ($queries['user-group'] as $key => $value) {\n                    $criteria->groups[$key] = $value;\n                }\n            }\n        }\n\n        $criteria->maxResults = $request->query->get('perPage', 10);\n        if ($request->query->has('offset')) {\n            $criteria->firstResult = $request->query->get('offset');\n        }\n\n        return $criteria;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/UserTokenService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Doctrine\\ORM\\EntityManager,\n    Newscoop\\Entity\\User,\n    Newscoop\\Entity\\UserToken;\n\n/**\n * User service\n */\nclass UserTokenService\n{\n    const TOKEN_LENGTH = 40;\n    const TOKEN_LIFETIME = 'P2D'; // DateInterval syntax\n\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     */\n    public function __construct(EntityManager $em)\n    {\n        $this->em = $em;\n    }\n\n    /**\n     * Generate user action token\n     *\n     * @param Newscoop\\Entity\\User $user\n     * @param string $action\n     * @return string\n     */\n    public function generateToken(User $user, $action = 'any')\n    {\n        $token = $user->generateRandomString(self::TOKEN_LENGTH);\n        $this->em->persist(new UserToken($user, $action, $token));\n        $this->em->flush();\n        return $token;\n    }\n\n    /**\n     * Check user action token\n     *\n     * @param Newscoop\\Entity\\User $user\n     * @param string $token\n     * @param string $action\n     * @return bool\n     */\n    public function checkToken(User $user, $token, $action = 'any')\n    {\n        $userToken = $this->em->find('Newscoop\\Entity\\UserToken', array(\n            'user' => $user->getId(),\n            'action' => $action,\n            'token' => $token,\n        ));\n\n        if (empty($userToken)) {\n            return false;\n        }\n\n        $now = new \\DateTime();\n        return $now->sub(new \\DateInterval(self::TOKEN_LIFETIME))->getTimestamp() < $userToken->getCreated()->getTimestamp();\n    }\n\n    /**\n     * Invalidate token\n     *\n     * @param Newscoop\\Entity\\User $user\n     * @param string $action\n     * @return void\n     */\n    public function invalidateTokens(User $user, $action = 'any')\n    {\n        $tokens = $this->em->getRepository('Newscoop\\Entity\\UserToken')->findBy(array(\n            'user' => $user->getId(),\n            'action' => $action,\n        ));\n\n        foreach ($tokens as $token) {\n            $this->em->remove($token);\n        }\n\n        $this->em->flush();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/UserTopicService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Services;\n\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\EventDispatcher\\EventDispatcher;\nuse Newscoop\\NewscoopBundle\\Entity\\Topic;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\Entity\\UserTopic;\nuse Newscoop\\Topic\\SaveUserTopicsCommand;\nuse Exception;\n\n/**\n * UserTopic service\n */\nclass UserTopicService\n{\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em;\n\n    /** @var Newscoop\\EventDispatcher\\EventDispatcher */\n    protected $dispatcher;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager               $em\n     * @param Newscoop\\EventDispatcher\\EventDispatcher $dispatcher\n     */\n    public function __construct(EntityManager $em, $dispatcher = null)\n    {\n        $this->em = $em;\n        $this->dispatcher = $dispatcher;\n    }\n\n    /**\n     * Follow topic by user\n     *\n     * @param  Newscoop\\Entity\\User                 $user\n     * @param  Newscoop\\NewscoopBundle\\Entity\\Topic $topic\n     * @return void\n     */\n    public function followTopic(User $user, Topic $topic)\n    {\n        try {\n            $this->em->persist(new UserTopic($user, $topic));\n            $this->em->flush();\n            $this->notify($user, $topic);\n        } catch (Exception $e) { // ignore if exists\n        }\n    }\n\n    /**\n     * Unfollow topic\n     *\n     * @param  Newscoop\\Entity\\User                 $user\n     * @param  Newscoop\\NewscoopBundle\\Entity\\Topic $topic\n     * @return void\n     */\n    public function unfollowTopic(User $user, Topic $topic)\n    {\n        try {\n            $userTopics = $this->em->getRepository('Newscoop\\Entity\\UserTopic')\n                ->findByTopicAndUser($user, $topic);\n\n            if ($userTopics) {\n                if (is_array($userTopics)) {\n                    foreach ($userTopics as $userTopic) {\n                        $this->em->remove($userTopic);\n                    }\n                } else {\n                    $this->em->remove($userTopics);\n                }\n                $this->em->flush();\n            }\n        } catch (Exception $e) {\n            throw new Exception('Could not unfollow topic. ('.$e->getMessage().')');\n        }\n    }\n\n    /**\n     * Get user topics\n     *\n     * @param mixed  $user   User id or object\n     * @param string $locale Current locale\n     *\n     * @return array\n     */\n    public function getTopics($user, $locale = null)\n    {\n        $userId = is_int($user) ? $user : $user->getId();\n        $userTopics = $this->em->getRepository('Newscoop\\Entity\\UserTopic')\n            ->findByUser($userId, $locale);\n\n        $topics = array();\n        foreach ($userTopics as $userTopic) {\n            $topic = $userTopic->getTopic();\n            $topic->setTranslatableLocale($locale);\n            $topics[] = $topic;\n        }\n\n        return $topics;\n    }\n\n    /**\n     * Find topic\n     *\n     * @param  int                                  $id\n     * @return Newscoop\\NewscoopBundle\\Entity\\Topic\n     */\n    public function findTopic($id)\n    {\n        $topic = $this->em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')->findOneBy(array(\n            'id' => $id,\n        ));\n\n        if (!$topic) {\n            return;\n        }\n\n        return $topic;\n    }\n\n    /**\n     * Save user topics command\n     *\n     * @param  Newscoop\\Topic\\SaveUserTopicsCommand $command\n     * @return void\n     */\n    public function saveUserTopics(SaveUserTopicsCommand $command)\n    {\n        if (empty($command->topics)) {\n            $query = $this->em->createQuery('DELETE Newscoop\\Entity\\UserTopic ut WHERE ut.user = :user');\n            $query->execute(array('user' => $command->userId));\n        } else {\n            $topics = $this->em->getRepository('Newscoop\\Entity\\UserTopic')->findByUser($command->userId);\n            foreach ($topics as $topic) {\n                if (in_array($topic->getTopicId(), $command->topics)) {\n                    $this->em->remove($topic);\n                }\n            }\n\n            $this->em->flush();\n        }\n\n        $user = $this->em->getReference('Newscoop\\Entity\\User', $command->userId);\n        foreach ($command->selected as $topicId) {\n            $language = $this->em->getReference('Newscoop\\Entity\\Language', $command->languageId);\n            $topic = $this->em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')->getSingleTopicQuery($topicId, $language->getCode());\n            $this->em->persist(new UserTopic($user, $topic->getOneOrNullResult()));\n        }\n\n        $this->em->flush();\n    }\n\n    /**\n     * Update user topics\n     *\n     * @param Newscoop\\Entity\\User $user\n     * @param array                $topics\n     *\n     * @return void\n     */\n    public function updateTopics(User $user, array $topics)\n    {\n        $repository = $this->em->getRepository('Newscoop\\Entity\\UserTopic');\n        $userTopics = $repository->findByUser($user);\n        $matches = array();\n        foreach ($userTopics as $topic) {\n            if (array_key_exists($topic->getTopicId(), $topics)) {\n                $matches[$topic->getTopicId()] = $topic;\n            }\n        }\n\n        foreach ($topics as $topicId => $status) {\n            if ($status === 'false' && array_key_exists($topicId, $matches)) {\n                foreach ($matches as $match) {\n                    if ($match->getTopicId() == $topicId) {\n                        $this->em->remove($match);\n                    }\n                }\n            } elseif ($status === 'true' && !array_key_exists($topicId, $matches)) {\n                $topic = $this->findTopic($topicId);\n                if ($topic) {\n                    $this->em->persist(new UserTopic($user, $this->findTopic($topicId)));\n                }\n            }\n        }\n\n        $this->em->flush();\n    }\n\n    /**\n     * Dispatch event\n     *\n     * @param Newscoop\\Entity\\User                 $user\n     * @param Newscoop\\NewscoopBundle\\Entity\\Topic $topic\n     */\n    private function notify(User $user, Topic $topic)\n    {\n        if (empty($this->dispatcher)) {\n            return;\n        }\n\n        $this->dispatcher->dispatch('topic.follow', new \\Newscoop\\EventDispatcher\\Events\\GenericEvent($this, array(\n            'topic_name' => $topic->getName(),\n            'topic_id' => $topic->getTopicId(),\n            'user' => $user,\n        )));\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Services/UserTypeService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Services;\n\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Entity\\UserType;\n\n/**\n * User type service\n */\nclass UserTypeService\n{\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     */\n    public function __construct(EntityManager $em)\n    {\n        $this->em = $em;\n    }\n\n    /**\n     * Get user type options\n     *\n     * @return array\n     */\n    public function getOptions()\n    {\n        $options = array();\n        foreach ($this->getRepository()->findAll() as $userType) {\n            $options[$userType->getId()] = $userType->getName();\n        }\n\n        return $options;\n    }\n\n    /**\n     * Get repository for user entity\n     *\n     * @return Newscoop\\Entity\\Repository\\UserRepository\n     */\n    protected function getRepository()\n    {\n        return $this->em->getRepository('Newscoop\\Entity\\User\\Group');\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/SmartyView.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop;\n\n/**\n */\nclass SmartyView extends \\Zend_View_Abstract\n{\n    /**\n     * Render template\n     */\n    public function _run()\n    {\n        $container = \\Zend_Registry::get('container');\n        $templatesService = $container->getService('newscoop.templates.service');\n        $request = $container->getService('request');\n        $language = $container->get('em')->getRepository('Newscoop\\Entity\\Language')->findOneByCode($request->getLocale());\n\n        $params = $this->getVars();\n        $params['view'] = $this;\n\n        $paramsForVector = json_encode(array('request' => \\Zend_Controller_Front::getInstance()->getRequest()->getParams()));\n        if (strlen($paramsForVector) > 128) {\n            $paramsForVector = md5($paramsForVector);\n        }\n\n        $templatesService->setVector(array(\n            'publication' => $request->attributes->get('_newscoop_publication_metadata[alias][publication_id]', null, true),\n            'language' => $language->getId(),\n            'params' => $paramsForVector\n        ));\n\n        $file = array_shift(func_get_args());\n        $templatesService->renderTemplate($file, $params);\n    }\n\n    /**\n     * Add script path\n     *\n     * @param string $path\n     */\n    public function addPath($path)\n    {\n        $templatesService = \\Zend_Registry::get('container')->getService('newscoop.templates.service');\n        $templatesService->getSmarty()->addTemplateDir($path);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Storage/Item.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Storage;\n\n/**\n * Storage item\n */\nclass Item\n{\n    const TYPE_DIR = 'dir';\n\n    /** @var string */\n    protected $key;\n\n    /** @var Newscoop\\Storage */\n    protected $storage;\n\n    /** @var array */\n    protected $metadata = array();\n\n    /**\n     * @param string $key\n     * @param Newscoop\\Storage $storage\n     * @throws InvalidArgumentException\n     */\n    public function __construct($key, \\Newscoop\\Storage $storage)\n    {\n        $this->key = (string) $key;\n        if (empty($key)) {\n            throw new \\InvalidArgumentException($key);\n        }\n\n        $this->storage = $storage;\n    }\n\n    /**\n     * @return string\n     */\n    public function __toString()\n    {\n        return $this->getName();\n    }\n\n    /**\n     * Get key\n     *\n     * @return string\n     */\n    public function getKey()\n    {\n        return $this->key;\n    }\n\n    /**\n     * Get name\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        return basename($this->key);\n    }\n\n    /**\n     * Test if item is dir\n     *\n     * @return bool\n     */\n    public function isDir()\n    {\n        return $this->storage->isDir($this->key);\n    }\n\n    /**\n     * Get size\n     *\n     * @return int\n     */\n    public function getSize()\n    {\n        return $this->getMetadata()->size;\n    }\n\n    /**\n     * Get change time\n     *\n     * @return int\n     */\n    public function getChangeTime()\n    {\n        return $this->getMetadata()->change_time;\n    }\n\n    /**\n     * Get type\n     *\n     * @return string\n     */\n    public function getType()\n    {\n        if ($this->storage->isDir($this->key)) {\n            return self::TYPE_DIR;\n        }\n\n        return pathinfo($this->key, PATHINFO_EXTENSION);\n    }\n\n    /**\n     * Get metadata\n     *\n     * @return object\n     */\n    private function getMetadata()\n    {\n        if (empty($this->metadata)) {\n            $this->metadata = $this->storage->fetchMetadata($this->key);\n        }\n\n        return (object) $this->metadata;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Storage/StorageService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Storage;\n\nuse Zend_Cloud_StorageService_Adapter as Adapter;\n\n/**\n * Storage Service\n */\nclass StorageService\n{\n    /**\n     * @param Zend_Cloud_StorageService_Adapter\n     */\n    protected $adapter;\n\n    /**\n     * @param Zend_Cloud_StorageService_Adapter $adapter\n     */\n    public function __construct(Adapter $adapter)\n    {\n        $this->adapter = $adapter;\n    }\n\n    /**\n     * Move given image into new location\n     *\n     * @param string $path\n     * @return string\n     */\n    public function moveImage($path)\n    {\n        return $this->moveFile($path, 'images');\n    }\n\n    /**\n     * Move given thumbnail into new location\n     *\n     * @param string $path\n     * @return string\n     */\n    public function moveThumbnail($path)\n    {\n        return $this->moveFile($path, 'images/thumbnails');\n    }\n\n    /**\n     * Move file in given path to storage starting at root\n     *\n     * @param string $path\n     * @param string $root\n     * @return string\n     */\n    private function moveFile($path, $root)\n    {\n        $hash = sha1($this->adapter->fetchItem($path));\n        $name = sprintf(\n            '%s/%s/%s.%s',\n            substr($hash, 0, 1),\n            substr($hash, 1, 2),\n            $hash,\n            pathinfo($path, PATHINFO_EXTENSION)\n        );\n\n        $dest = trim($root, '/') . '/' . $name;\n        if (is_string($this->adapter->getClient())) {\n            $dir = $this->adapter->getClient() . '/' . dirname($dest);\n            if (!is_dir($dir)) {\n                mkdir($dir, 0755, true);\n            }\n        }\n\n        $this->adapter->moveItem($path, $dest);\n        return $name;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Storage.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop;\n\nuse Newscoop\\Storage\\Item;\n\n/**\n * Storage\n */\nclass Storage\n{\n    // error codes\n    const ERROR_NOT_FOUND = 1;\n    const ERROR_NOT_DIR = 2;\n    const ERROR_NOT_FILE = 3;\n    const ERROR_NOT_EMPTY = 4;\n    const ERROR_CONFLICT = 5;\n    const ERROR_KEY_INVALID = 6;\n\n    /** @var string */\n    protected $root;\n    /**\n     * @param string $root\n     */\n    public function __construct($root)\n    {\n        $this->root = realpath($root);\n\n        if (!$this->root) {\n            throw new \\InvalidArgumentException($root, self::ERROR_NOT_FOUND);\n        }\n\n        if (!is_dir($this->root)) {\n            throw new \\InvalidArgumentException($root, self::ERROR_NOT_DIR);\n        }\n    }\n\n    /**\n     * Store item\n     *\n     * @param string $dest\n     * @param string $data\n     * @return int\n     * @throws InvalidArgumentException\n     */\n    public function storeItem($dest, $data)\n    {\n        $path = $this->getPath($dest);\n        $realpath = realpath($path);\n        if ($realpath && !is_file($realpath)) {\n            throw new \\InvalidArgumentException($dest, self::ERROR_NOT_FILE);\n        }\n\n        $dir = dirname($path);\n        if (!is_dir($dir)) {\n            throw new \\InvalidArgumentException(dirname($dest), self::ERROR_NOT_DIR);\n        }\n\n        return file_put_contents($path, $data);\n    }\n\n    /**\n     * Fetch item\n     *\n     * @param string $key\n     * @return mixed\n     */\n    public function fetchItem($key)\n    {\n        $path = $this->getPath($key, TRUE);\n        if (!$path) {\n            return null;\n        }\n\n        if (is_dir($path)) {\n            throw new \\InvalidArgumentException($key, self::ERROR_NOT_FILE);\n        }\n\n        return file_get_contents($path);\n    }\n\n    /**\n     * Delete item\n     *\n     * @param string $key\n     * @return void\n     * @throws InvalidArgumentException\n     */\n    public function deleteItem($key)\n    {\n        $path = $this->getPath($key, TRUE);\n        if (!$path) {\n            throw new \\InvalidArgumentException($key, self::ERROR_NOT_FOUND);\n        }\n\n        if (is_dir($path)) {\n            foreach ($this->listItems($key) as $item) {\n                throw new \\InvalidArgumentException($key, self::ERROR_NOT_EMPTY);\n            }\n\n            rmdir($path);\n        } else {\n            unlink($path);\n        }\n    }\n\n    /**\n     * Copy item\n     *\n     * @param string $src\n     * @param string $dest\n     * @return bool\n     */\n    public function copyItem($src, $dest)\n    {\n        $srcPath = $this->getPath($src, TRUE);\n        if (!$srcPath) {\n            throw new \\InvalidArgumentException($src, self::ERROR_NOT_FOUND);\n        }\n\n        if (is_dir($srcPath)) {\n            throw new \\InvalidArgumentException($src, self::ERROR_NOT_FILE);\n        }\n\n        $dir = dirname($srcPath);\n        $destPath = \"$dir/\" . basename($dest);\n        if (realpath($destPath)) {\n            throw new \\InvalidArgumentException($dest, self::ERROR_CONFLICT);\n        }\n\n        return copy($srcPath, $destPath);\n    }\n\n    /**\n     * Move item\n     *\n     * @param string $src\n     * @param string $dest\n     * @return void\n     * @throws InvalidArgumentException\n     */\n    public function moveItem($src, $dest)\n    {\n        $srcPath = $this->getPath($src, TRUE);\n        if (!$srcPath || !is_file($srcPath)) { // src not found or !file\n            throw new \\InvalidArgumentException($src);\n        }\n\n        $destPath = $this->getPath($dest, TRUE);\n        if (!$destPath || !is_dir($destPath)) { // dest not found or !dir\n            throw new \\InvalidArgumentException($dest);\n        }\n\n        $name = basename($srcPath);\n        $destName = \"$destPath/$name\";\n        if (realpath($destName)) { // dest/name exists\n            throw new \\InvalidArgumentException(\"$dest/$name\");\n        }\n\n        rename($srcPath, $destName);\n        $this->replace($src, \"$dest/$name\");\n    }\n\n    /**\n     * Rename item\n     *\n     * @param string $src\n     * @param string $dest\n     * @return void\n     * @throws InvalidArgumentException\n     */\n    public function renameItem($src, $dest)\n    {\n        $srcPath = $this->getPath($src, TRUE);\n        if (!$srcPath) {\n            throw new \\InvalidArgumentException($src, self::ERROR_NOT_FOUND);\n        }\n\n        if (!is_file($srcPath)) {\n            throw new \\InvalidArgumentException($src, self::ERROR_NOT_FILE);\n        }\n\n        $dir = dirname($srcPath);\n        $destPath = \"$dir/\" . basename($dest);\n        if (realpath($destPath)) {\n            throw new \\InvalidArgumentException($dest, self::ERROR_CONFLICT);\n        }\n\n        rename($srcPath, $destPath);\n    }\n\n    /**\n     * List items\n     *\n     * @param string $key\n     * @return mixed\n     */\n    public function listItems($key)\n    {\n        $path = $this->getPath($key, TRUE);\n        if (!$path) {\n            throw new \\InvalidArgumentException($key, self::ERROR_NOT_FOUND);\n        }\n\n        if (!is_dir($path)) {\n            throw new \\InvalidArgumentException($key, self::ERROR_NOT_DIR);\n        }\n        $items = array();\n        foreach (glob(\"$path/*\") as $file) {\n            $items[] = basename($file);\n        }\n\n        return $items;\n    }\n\n    public function listPaths($dir)\n    {\n        $items = array();\n        $path = $this->getPath($dir, TRUE);\n        if (!$path) {\n            throw new \\InvalidArgumentException($dir, self::ERROR_NOT_FOUND);\n        }\n        $scanDirs = array($path);\n        for ($i=0;;$i++) {\n            // break if stack finished\n        \tif (!isset($scanDirs[$i])) break;\n        \t$currentDir = $scanDirs[$i];\n            foreach (array_diff(scandir($currentDir), array(\".\",\"..\")) as $file) {\n                // add directory to stack\n                if (is_dir($currentDir.\"/\".$file)) {\n                    $scanDirs[] = $currentDir.\"/\".$file;\n                    $items[] = substr( $currentDir.\"/\".$file, strlen($path) );\n                }\n            }\n        }\n        return $items;\n    }\n\n    public function nrListItems($dir)\n    {\n        $items = array();\n        $path = $this->getPath($dir, TRUE);\n        if (!$path) {\n            throw new \\InvalidArgumentException($dir, self::ERROR_NOT_FOUND);\n        }\n        $scanDirs = array($path);\n        for ($i=0;;$i++) {\n            // break if stack finished\n        \tif (!isset($scanDirs[$i])) break;\n        \t$currentDir = $scanDirs[$i];\n            foreach (array_diff(scandir($currentDir), array(\".\",\"..\")) as $file) {\n                // add directory to stack\n                if (is_dir($currentDir.\"/\".$file)) {\n                    $scanDirs[] = $currentDir.\"/\".$file;\n                }\n                // add file to items\n                else {\n                    $items[] = basename($file);\n                }\n            }\n        }\n        return $items;\n    }\n\n    /**\n     * Test if item is dir\n     *\n     * @param string $key\n     * @return bool\n     */\n    public function isDir($key)\n    {\n        return is_dir(\"$this->root/$key\");\n    }\n\n    /**\n     * Fetch item metadata\n     *\n     * @param string $key\n     * @return array\n     */\n    public function fetchMetadata($key)\n    {\n        $info = new \\SplFileInfo(\"$this->root/$key\");\n        return array(\n            'size' => $info->getSize(),\n            'change_time' => $info->getCTime(),\n        );\n    }\n\n    /**\n     * Test is writable\n     *\n     * @param string $key\n     * @return bool\n     */\n    public function isWritable($key)\n    {\n        $info = new \\SplFileInfo(\"$this->root/$key\");\n        return $info->isWritable();\n    }\n\n    /**\n     * Create dir\n     *\n     * @param string $key\n     * @return void\n     * @throws InvalidArgumentException\n     */\n    public function createDir($key)\n    {\n        $path = $this->getPath($key);\n        if (realpath($path) || !mkdir($path)) {\n            throw new \\InvalidArgumentException($key);\n        }\n    }\n\n    /**\n     * Create file\n     *\n     * @param string $key\n     * @return void\n     * @throws InvalidArgumentException\n     */\n    public function createFile($key)\n    {\n        $path = $this->getPath($key);\n        if (realpath($path) || !touch($path)) {\n            throw new \\InvalidArgumentException($key);\n        }\n    }\n\n    /**\n     * Test is used\n     *\n     * @param string $key\n     * @param object $searchEngine\n     * @return mixed\n     */\n    public function isUsed($key, $searchEngine = null)\n    {\n        if (!isset($searchEngine)) {\n            $searchEngine = new \\FileTextSearch();\n        }\n\n        $searchEngine->setExtensions(array('tpl', 'css'));\n        $searchEngine->setSearchKey($key);\n\n        $result = $searchEngine->findReplace($this->root);\n        if (is_array($result) && sizeof($result) > 0) {\n            return $result[0];\n        }\n\n        if (pathinfo($key, PATHINFO_EXTENSION) == 'tpl') {\n            $key = \" $key\";\n        }\n\n        $searchEngine->setSearchKey($key);\n        $result = $searchEngine->findReplace($this->root);\n        if (is_array($result) && sizeof($result) > 0) {\n            return $result[0];\n        }\n\n        return $searchEngine->m_totalFound > 0;\n    }\n\n    /**\n     * Get storage item\n     *\n     * @param string $key\n     * @return Newscoop\\StorageItem\n     */\n    public function getItem($key)\n    {\n        return new Item($key, $this);\n    }\n\n    /**\n     * Get mime type\n     *\n     * @param string $key\n     * @return string\n     */\n    public function getMimeType($key)\n    {\n        $realpath = realpath(\"$this->root/$key\");\n        $finfo = new \\finfo(FILEINFO_MIME);\n        return $finfo->file($realpath);\n    }\n\n    /**\n     * Get realpath\n     *\n     * @param string $key\n     * @return string\n     */\n    public function getRealpath($key)\n    {\n        return realpath(\"$this->root/$key\");\n    }\n\n    /**\n     * Get path\n     *\n     * @param string $key\n     * @param bool $isReal\n     * @return mixed\n     */\n    private function getPath($key, $isRealpath = FALSE)\n    {\n        $key = ltrim($key, ' /');\n        if (preg_match('#\\.\\.(/|$)#', $key)) {\n            throw new \\InvalidArgumentException($key, self::ERROR_KEY_INVALID);\n        }\n\n        $rootpath = \"$this->root/$key\";\n\n        // check if is realpath\n        if ($isRealpath) {\n            $realpath = realpath($rootpath);\n            if (!$realpath) {\n                return FALSE;\n            }\n\n            return $realpath;\n        }\n\n        return $rootpath;\n    }\n\n    /**\n     * Replace key in storage\n     *\n     * @param string $old\n     * @param string $new\n     * @param object $replaceEngine\n     * @return void\n     */\n    private function replace($old, $new, $replaceEngine = null)\n    {\n        if (!isset($replaceEngine)) {\n\t\t    $replaceEngine = new \\FileTextSearch();\n        }\n\n\t\t$replaceEngine->setExtensions(array('tpl', 'css'));\n\t\t$replaceEngine->setSearchKey($old);\n\t\t$replaceEngine->setReplacementKey($new);\n\t\t$replaceEngine->findReplace($this->root);\n\n\t\t$tpl1_name = $old;\n\t\t$tpl2_name = $new;\n\t\tif (pathinfo($old, PATHINFO_EXTENSION) == 'tpl') {\n\t\t\t$tpl1_name = ' ' . $old;\n\t\t\t$tpl2_name = ' ' . $new;\n\t\t}\n\n\t\t$replaceEngine->setSearchKey($tpl1_name);\n\t\t$replaceEngine->setReplacementKey($tpl2_name);\n\t\t$replaceEngine->findReplace($this->root);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Subscription/Article.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Subscription;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Newscoop\\Entity\\Article as ArticleEntity;\n\n/**\n * Subscription Article relation entity\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\SubscriptionArticleRepository\")\n * @ORM\\Table(name=\"SubscriptionArticle\")\n */\nclass Article\n{\n    /**\n     * @ORM\\Id \n     * @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Subscription\\Subscription\", inversedBy=\"sections\")\n     * @ORM\\JoinColumn(name=\"IdSubscription\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Subscription\\Subscription\n     */\n    protected $subscription;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"article_number\")\n     * @var int\n     */\n    protected $articleNumber;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Article\")\n     * @ORM\\JoinColumns({\n     *      @ORM\\JoinColumn(name=\"article_number\", referencedColumnName=\"Number\"),\n     *      @ORM\\JoinColumn(name=\"language_id\", referencedColumnName=\"IdLanguage\")\n     *  })\n     */\n    protected $article;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Language\")\n     * @ORM\\JoinColumn(name=\"language_id\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Language\n     */\n    protected $language;\n\n    /**\n     * @ORM\\Column(type=\"date\", name=\"StartDate\")\n     * @var DateTime\n     */\n    protected $startDate;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"Days\")\n     * @var int\n     */\n    protected $days;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"PaidDays\")\n     * @var int\n     */\n    protected $paidDays;\n\n    /**\n     * @ORM\\Column(name=\"NoticeSent\")\n     * @var string\n     */\n    protected $noticeSent;\n\n    /**\n     * @param Newscoop\\Subscription\\Subscription $subscription\n     * @param int $article\n     */\n    public function __construct(Subscription $subscription, ArticleEntity $article)\n    {\n        $this->subscription = $subscription;\n        $this->subscription->addArticle($this);\n\n        $this->article =  $article;\n        $this->articleNumber = $article->getNumber();\n        $this->noticeSent = 'N';\n        $this->paidDays = 0;\n    }\n\n    /**\n     * Get id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Get article\n     *\n     * @return string\n     */\n    public function getArticle()\n    {\n        return $this->article;\n    }\n\n    /**\n     * Get articleNumber\n     * \n     * @return int\n     */\n    public function getArticleNumber()\n    {\n        return $this->articleNumber;\n    }\n\n    /**\n     * Set language\n     *\n     * @param Newscoop\\Entity\\Language $language\n     * @return void\n     */\n    public function setLanguage(\\Newscoop\\Entity\\Language $language)\n    {\n        $this->language = $language;\n    }\n\n    /**\n     * Get language id\n     *\n     * @return int\n     */\n    public function getLanguageId()\n    {\n        try {\n            return $this->language ? $this->language->getId() : 0;\n        } catch (\\Doctrine\\ORM\\EntityNotFoundException $e) {\n            return 0;\n        }\n    }\n\n    /**\n     * Get language name\n     *\n     * @return string\n     */\n    public function getLanguageName()\n    {\n        try {\n            return $this->language ? $this->language->getName() : '';\n        } catch (\\Doctrine\\ORM\\EntityNotFoundException $e) {\n            return '';\n        }\n    }\n\n    /**\n     * Get language\n     *\n     * @return Newscoop\\Entity\\Language\n     */\n    public function getLanguage()\n    {\n        return $this->language;\n    }\n\n    /**\n     * Test if has language set\n     *\n     * @return bool\n     */\n    public function hasLanguage()\n    {\n        return $this->language !== null;\n    }\n\n    /**\n     * Set start date\n     *\n     * @param DateTime $date\n     * @return Newscoop\\Entity\\SubscriptionSection\n     */\n    public function setStartDate(\\DateTime $date)\n    {\n        $this->startDate = $date;\n    }\n\n    /**\n     * Get start date\n     *\n     * @return DateTime\n     */\n    public function getStartDate()\n    {\n        return $this->startDate;\n    }\n\n    /**\n     * Set days\n     *\n     * @param int $days\n     * @return Newscoop\\Entity\\SubscriptionSection\n     */\n    public function setDays($days)\n    {\n        $this->days = abs($days);\n        return $this;\n    }\n\n    /**\n     * Get days\n     *\n     * @return int\n     */\n    public function getDays()\n    {\n        return $this->days;\n    }\n\n    /**\n     * Set paid days\n     *\n     * @param int $paidDays\n     * @return Newscoop\\Entity\\SubscriptionSection\n     */\n    public function setPaidDays($paidDays)\n    {\n        $this->paidDays = abs($paidDays);\n    }\n\n    /**\n     * Get paid days\n     *\n     * @return int\n     */\n    public function getPaidDays()\n    {\n        return $this->paidDays;\n    }\n\n    /**\n     * Get name\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        if ($this->subscription->getPublication() === null) {\n            return '';\n        }\n\n        return $this->article->getName();\n    }\n\n    /**\n     * Get subscription\n     *\n     * @return Newscoop\\Subscription\\Subscription\n     */\n    public function getSubscription()\n    {\n        return $this->subscription;\n    }\n    \n    /**\n     * Get expiration date\n     * @return DateTime\n     */\n    public function getExpirationDate() {\n        $startDate = isset($this->startDate) ? $this->startDate : new \\DateTime('now');\n        $timeSpan = new \\DateInterval('P' . $this->days . 'D');\n        return $startDate->add($timeSpan);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Subscription/IpFacade.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Subscription;\n\nuse Newscoop\\Entity\\User\\Ip;\n\n/**\n * Ip Facade\n */\nclass IpFacade\n{\n    /**\n     * @var Doctrine\\ORM\\EntityManager\n     */\n    protected $em;\n\n    /**\n     * @var Newscoop\\Entity\\Repository\\User\\IpRepository\n     */\n    protected $repository;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     */\n    public function __construct(\\Doctrine\\ORM\\EntityManager $em)\n    {\n        $this->em = $em;\n        $this->repository = $this->em->getRepository('Newscoop\\Entity\\User\\Ip');\n    }\n\n    /**\n     * Find ips by user\n     *\n     * @param Newscoop\\Entity\\User|int $user\n     * @return array\n     */\n    public function findByUser($user)\n    {\n        return $this->repository->findByUser($user);\n    }\n\n    /**\n     * Save ip\n     *\n     * @param array $values\n     * @return Newscoop\\Entity\\User\\Ip\n     */\n    public function save(array $values)\n    {\n        $ip = new Ip($values['ip'], $values['number']);\n\n        if (array_key_exists('user', $values)) {\n            $ip->setUser(is_numeric($values['user']) ? $this->em->getReference('Newscoop\\Entity\\User', $values['user']) : $values['user']);\n        }\n\n        $this->em->persist($ip);\n        $this->em->flush($ip);\n        return $ip;\n    }\n\n    /**\n     * Delete ip\n     *\n     * @param array $id\n     * @return void\n     */\n    public function delete(array $id)\n    {\n        $id['ip'] = ip2long($id['ip']);\n        $this->em->remove($this->repository->findOneBy($id));\n        $this->em->flush();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Subscription/Issue.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Subscription;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Newscoop\\Entity\\Issue as IssueEntity;\n\n/**\n * Subscription Issue relation entity\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\SubscriptionIssueRepository\")\n * @ORM\\Table(name=\"SubscriptionIssue\")\n */\nclass Issue\n{\n    /**\n     * @ORM\\Id \n     * @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Subscription\\Subscription\", inversedBy=\"sections\")\n     * @ORM\\JoinColumn(name=\"IdSubscription\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Subscription\\Subscription\n     */\n    protected $subscription;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"issue_number\")\n     * @var int\n     */\n    protected $issueNumber;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Issue\")\n     * @ORM\\JoinColumn(name=\"issue_number\", referencedColumnName=\"Number\")\n     * @var Newscoop\\Entity\\Issue\n     */\n    protected $issue;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Language\")\n     * @ORM\\JoinColumn(name=\"language_id\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Language\n     */\n    protected $language;\n\n    /**\n     * @ORM\\Column(type=\"date\", name=\"StartDate\")\n     * @var DateTime\n     */\n    protected $startDate;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"Days\")\n     * @var int\n     */\n    protected $days;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"PaidDays\")\n     * @var int\n     */\n    protected $paidDays;\n\n    /**\n     * @ORM\\Column(name=\"NoticeSent\")\n     * @var string\n     */\n    protected $noticeSent;\n\n    /**\n     * @param Subscription $subscription\n     * @param IssueEntity $issue\n     */\n    public function __construct(Subscription $subscription, IssueEntity $issue)\n    {\n        $this->subscription = $subscription;\n        $this->subscription->addIssue($this);\n\n        $this->issueNumber = $issue->getNumber();\n        $this->issue = $issue;\n        $this->noticeSent = 'N';\n        $this->paidDays = 0;\n    }\n\n    /**\n     * Get id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Get issue\n     *\n     * @return string\n     */\n    public function getIssue()\n    {\n        return $this->issue;\n    }\n\n    /**\n     * Get issueNumber\n     * \n     * @return int\n     */\n    public function getIssueNumber()\n    {\n        return $this->issueNumber;\n    }\n\n    /**\n     * Set language\n     *\n     * @param Newscoop\\Entity\\Language $language\n     * @return void\n     */\n    public function setLanguage(\\Newscoop\\Entity\\Language $language)\n    {\n        $this->language = $language;\n    }\n\n    /**\n     * Get language id\n     *\n     * @return int\n     */\n    public function getLanguageId()\n    {\n        try {\n            return $this->language ? $this->language->getId() : 0;\n        } catch (\\Doctrine\\ORM\\EntityNotFoundException $e) {\n            return 0;\n        }\n    }\n\n    /**\n     * Get language name\n     *\n     * @return string\n     */\n    public function getLanguageName()\n    {\n        try {\n            return $this->language ? $this->language->getName() : '';\n        } catch (\\Doctrine\\ORM\\EntityNotFoundException $e) {\n            return '';\n        }\n    }\n\n    /**\n     * Get language\n     *\n     * @return Newscoop\\Entity\\Language\n     */\n    public function getLanguage()\n    {\n        return $this->language;\n    }\n\n    /**\n     * Test if has language set\n     *\n     * @return bool\n     */\n    public function hasLanguage()\n    {\n        return $this->language !== null;\n    }\n\n    /**\n     * Set start date\n     *\n     * @param DateTime $date\n     * @return Newscoop\\Entity\\SubscriptionSection\n     */\n    public function setStartDate(\\DateTime $date)\n    {\n        $this->startDate = $date;\n    }\n\n    /**\n     * Get start date\n     *\n     * @return DateTime\n     */\n    public function getStartDate()\n    {\n        return $this->startDate;\n    }\n\n    /**\n     * Set days\n     *\n     * @param int $days\n     * @return Newscoop\\Entity\\SubscriptionSection\n     */\n    public function setDays($days)\n    {\n        $this->days = abs($days);\n        return $this;\n    }\n\n    /**\n     * Get days\n     *\n     * @return int\n     */\n    public function getDays()\n    {\n        return $this->days;\n    }\n\n    /**\n     * Set paid days\n     *\n     * @param int $paidDays\n     * @return Newscoop\\Entity\\SubscriptionSection\n     */\n    public function setPaidDays($paidDays)\n    {\n        $this->paidDays = abs($paidDays);\n    }\n\n    /**\n     * Get paid days\n     *\n     * @return int\n     */\n    public function getPaidDays()\n    {\n        return $this->paidDays;\n    }\n\n    /**\n     * Get name\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        if ($this->subscription->getPublication() === null) {\n            return '';\n        }\n\n        return $this->issue->getName();\n    }\n\n    /**\n     * Get subscription\n     *\n     * @return Newscoop\\Subscription\\Subscription\n     */\n    public function getSubscription()\n    {\n        return $this->subscription;\n    }\n    \n    /**\n     * Get expiration date\n     * @return DateTime\n     */\n    public function getExpirationDate() {\n        $startDate = isset($this->startDate) ? $this->startDate : new \\DateTime('now');\n        $timeSpan = new \\DateInterval('P' . $this->days . 'D');\n        return $startDate->add($timeSpan);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Subscription/Section.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Subscription;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * Subscription Section relation entity\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Entity\\Repository\\SubscriptionSectionRepository\")\n * @ORM\\Table(name=\"SubsSections\")\n */\nclass Section\n{\n    /**\n     * @ORM\\Id \n     * @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Subscription\\Subscription\", inversedBy=\"sections\")\n     * @ORM\\JoinColumn(name=\"IdSubscription\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Subscription\\Subscription\n     */\n    protected $subscription;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"SectionNumber\")\n     * @var int\n     */\n    protected $sectionNumber;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Language\")\n     * @ORM\\JoinColumn(name=\"IdLanguage\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Language\n     */\n    protected $language;\n\n    /**\n     * @ORM\\Column(type=\"date\", name=\"StartDate\")\n     * @var DateTime\n     */\n    protected $startDate;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"Days\")\n     * @var int\n     */\n    protected $days;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"PaidDays\")\n     * @var int\n     */\n    protected $paidDays;\n\n    /**\n     * @ORM\\Column(name=\"NoticeSent\")\n     * @var string\n     */\n    protected $noticeSent;\n\n    /**\n     * @param Newscoop\\Subscription\\Subscription $subscription\n     * @param int $sectionNumber\n     */\n    public function __construct(Subscription $subscription, $sectionNumber)\n    {\n        $this->subscription = $subscription;\n        $this->subscription->addSection($this);\n\n        $this->sectionNumber = (int) $sectionNumber;\n        $this->noticeSent = 'N';\n        $this->paidDays = 0;\n    }\n\n    /**\n     * Get id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Get section number\n     *\n     * @return string\n     */\n    public function getSectionNumber()\n    {\n        return $this->sectionNumber;\n    }\n\n    /**\n     * Set language\n     *\n     * @param Newscoop\\Entity\\Language $language\n     * @return void\n     */\n    public function setLanguage(\\Newscoop\\Entity\\Language $language)\n    {\n        $this->language = $language;\n    }\n\n    /**\n     * Get language id\n     *\n     * @return int\n     */\n    public function getLanguageId()\n    {\n\t\ttry {\n\t\t\treturn $this->language ? $this->language->getId() : 0;\n\t\t} catch (\\Doctrine\\ORM\\EntityNotFoundException $e) {\n\t\t\treturn 0;\n\t\t}\n    }\n\n    /**\n     * Get language name\n     *\n     * @return string\n     */\n    public function getLanguageName()\n    {\n\t\ttry {\n\t\t\treturn $this->language ? $this->language->getName() : '';\n\t\t} catch (\\Doctrine\\ORM\\EntityNotFoundException $e) {\n\t\t\treturn '';\n\t\t}\n    }\n\n    /**\n     * Get language\n     *\n     * @return Newscoop\\Entity\\Language\n     */\n    public function getLanguage()\n    {\n        return $this->language;\n    }\n\n    /**\n     * Test if has language set\n     *\n     * @return bool\n     */\n    public function hasLanguage()\n    {\n        return $this->language !== null;\n    }\n\n    /**\n     * Set start date\n     *\n     * @param DateTime $date\n     * @return Newscoop\\Entity\\SubscriptionSection\n     */\n    public function setStartDate(\\DateTime $date)\n    {\n        $this->startDate = $date;\n    }\n\n    /**\n     * Get start date\n     *\n     * @return DateTime\n     */\n    public function getStartDate()\n    {\n        return $this->startDate;\n    }\n\n    /**\n     * Set days\n     *\n     * @param int $days\n     * @return Newscoop\\Entity\\SubscriptionSection\n     */\n    public function setDays($days)\n    {\n        $this->days = abs($days);\n        return $this;\n    }\n\n    /**\n     * Get days\n     *\n     * @return int\n     */\n    public function getDays()\n    {\n        return $this->days;\n    }\n\n    /**\n     * Set paid days\n     *\n     * @param int $paidDays\n     * @return Newscoop\\Entity\\SubscriptionSection\n     */\n    public function setPaidDays($paidDays)\n    {\n        $this->paidDays = abs($paidDays);\n    }\n\n    /**\n     * Get paid days\n     *\n     * @return int\n     */\n    public function getPaidDays()\n    {\n        return $this->paidDays;\n    }\n\n    /**\n     * Get name\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        if ($this->subscription->getPublication() === null) {\n            return '';\n        }\n\n        foreach ($this->subscription->getPublication()->getIssues() as $issue) {\n            if ($this->hasLanguage() && $issue->getLanguage() !== $this->language) {\n                continue;\n            }\n\n            foreach ($issue->getSections() as $section) {\n                if ($section->getNumber() == $this->sectionNumber) {\n                    return $section->getName();\n                }\n            }\n        }\n\n        return '';\n    }\n\n    /**\n     * Get subscription\n     *\n     * @return Newscoop\\Subscription\\Subscription\n     */\n    public function getSubscription()\n    {\n        return $this->subscription;\n    }\n\n    /**\n     * Get expiration date\n     * @return DateTime\n     */\n    public function getExpirationDate() {\n        $startDate = new \\DateTime(isset($this->startDate) ? $this->startDate : 'now');\n        $timeSpan = new \\DateInterval('P' . $this->days . 'D');\n\n        return $startDate->add($timeSpan);\n    }\n\n    /**\n     * Set noticeSent\n     *\n     * @param string $noticeSent\n     */\n    public function setNoticeSent($noticeSent)\n    {\n        $this->noticeSent = $noticeSent;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Subscription/SectionFacade.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Subscription;\n\n/**\n * Section Facade\n */\nclass SectionFacade\n{\n    /**\n     * @var Doctrine\\ORM\\EntityManager\n     */\n    protected $em;\n\n    /**\n     * @var Newscoop\\Subscription\\SectionRepository\n     */\n    protected $repository;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     */\n    public function __construct(\\Doctrine\\ORM\\EntityManager $em)\n    {\n        $this->em = $em;\n        $this->repository = $this->em->getRepository('Newscoop\\Subscription\\Section');\n    }\n\n    /**\n     * Find section\n     *\n     * @param int $id\n     * @return Newscoop\\Subscription\\Section\n     */\n    public function find($id)\n    {\n        return $this->repository->find($id);\n    }\n\n    /**\n     * Save section\n     *\n     * @param array $values\n     * @param Newscoop\\Subscription\\Section|null $section\n     * @return Newscoop\\Subscription\\Section\n     */\n    public function save(array $values, Section $section = null)\n    {\n        if ($section === null) {\n            if (!array_key_exists('subscription', $values)) {\n                throw new \\InvalidArgumentException(\"Subscription must be provided.\");\n            }\n\n            if (!array_key_exists('section', $values)) {\n                throw new \\InvalidArgumentException(\"Section must be provided.\");\n            }\n\n            $section = new Section($this->getSubscription($values), $this->getSectionNumber($values));\n            $this->em->persist($section);\n\n            if (!empty($values['language'])) {\n                $section->setLanguage($this->getLanguage($values));\n            }\n        }\n\n        $section->setStartDate(new \\DateTime($values['startDate']));\n        $section->setDays($values['days']);\n        $section->setPaidDays($values['paidDays']);\n\n        $this->em->flush();\n        return $section;\n    }\n\n    /**\n     * Get subscription\n     *\n     * @param array $values\n     * @return Newscoop\\Subscription\\Subscription\n     */\n    private function getSubscription(array $values)\n    {\n        return is_numeric($values['subscription']) ? $this->em->find('Newscoop\\Subscription\\Subscription', $values['subscription']) : $values['subscription'];\n    }\n\n    /**\n     * Get section number\n     *\n     * @param array $values\n     * @return int\n     */\n    private function getSectionNumber(array $values)\n    {\n        return is_array($values['section']) ? $values['section']['number'] : $values['section']->getNumber();\n    }\n\n    /**\n     * Get language\n     *\n     * @param array $values\n     * @return Newscoop\\Entity\\Language\n     */\n    private function getLanguage(array $values)\n    {\n        return is_array($values['language']) ? $this->em->find('Newscoop\\Entity\\Language', $values['language']['id']) : $values['language'];\n    }\n\n    /**\n     * Delete section\n     *\n     * @param int $id\n     * @return void\n     */\n    public function delete($id)\n    {\n        $this->em->remove($this->em->getReference('Newscoop\\Subscription\\Section', $id));\n        $this->em->flush();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Subscription/Subscription.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Subscription;\n\nuse Newscoop\\Entity\\Publication;\nuse Newscoop\\Entity\\User;\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Newscoop\\Subscription\\Article;\nuse Newscoop\\Subscription\\Issue;\n\n/**\n * Subscription entity\n * @ORM\\Entity(repositoryClass=\"Newscoop\\Subscription\\SubscriptionRepository\")\n * @ORM\\Table(name=\"Subscriptions\")\n */\nclass Subscription\n{\n    const TYPE_PAID = 'P';\n    const TYPE_PAID_NOW = 'PN';\n    const TYPE_TRIAL = 'T';\n\n    /**\n     * @ORM\\Id \n     * @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\", name=\"Id\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\User\")\n     * @ORM\\JoinColumn(name=\"IdUser\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\User\n     */\n    protected $user;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Publication\")\n     * @ORM\\JoinColumn(name=\"IdPublication\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Publication\n     */\n    protected $publication;\n\n    /**\n     * @ORM\\Column(type=\"decimal\", name=\"ToPay\")\n     * @var float\n     */\n    protected $toPay = 0.0;\n\n    /**\n     * @ORM\\Column(name=\"Type\")\n     * @var string\n     */\n    protected $type;\n\n    /**\n     * @ORM\\Column(name=\"Currency\")\n     * @var string\n     */\n    protected $currency;\n\n    /**\n     * @ORM\\Column(name=\"Active\")\n     * @var string\n     */\n    protected $active;\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"Newscoop\\Subscription\\Section\", mappedBy=\"subscription\", cascade={\"persist\", \"remove\"})\n     * @var array\n     */\n    protected $sections;\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"Newscoop\\Subscription\\Article\", mappedBy=\"subscription\", cascade={\"persist\", \"remove\"})\n     * @var array\n     */\n    protected $articles;\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"Newscoop\\Subscription\\Issue\", mappedBy=\"subscription\", cascade={\"persist\", \"remove\"})\n     * @var array\n     */\n    public $issues;\n\n    public function __construct()\n    {\n        $this->sections = new \\Doctrine\\Common\\Collections\\ArrayCollection();\n        $this->articles = new \\Doctrine\\Common\\Collections\\ArrayCollection();\n        $this->issues = new \\Doctrine\\Common\\Collections\\ArrayCollection();\n        $this->currency = '';\n        $this->active = false;\n        $this->type = self::TYPE_PAID;\n    }\n\n    /**\n     * Get id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return (int) $this->id;\n    }\n\n    /**\n     * Set user\n     *\n     * @param Newscoop\\Entity\\User $user\n     * @return void\n     */\n    public function setUser(User $user)\n    {\n        $this->user = $user;\n        return $this;\n    }\n\n    /**\n     * Get user\n     *\n     * @return Newscoop\\Entity\\User\n     */\n    public function getUser()\n    {\n        return $this->user;\n    }\n\n    /**\n     * Set publication\n     *\n     * @param Newscoop\\Entity\\Publication $publication\n     * @return Newscoop\\Entity\\Subscription\n     */\n    public function setPublication(Publication $publication)\n    {\n        $this->publication = $publication;\n        return $this;\n    }\n\n    /**\n     * Get publication\n     *\n     * @return Newscoop\\Entity\\Publication\n     */\n    public function getPublication()\n    {\n        return $this->publication;\n    }\n\n    /**\n     * Get publication name\n     *\n     * @return string\n     */\n    public function getPublicationName()\n    {\n        return $this->publication->getName();\n    }\n\n    /**\n     * Get publication id\n     *\n     * @return int\n     */\n    public function getPublicationId()\n    {\n        return $this->publication->getId();\n    }\n\n    /**\n     * Set to pay\n     *\n     * @param float $toPay\n     * @return Newscoop\\Entity\\Subscription\n     */\n    public function setToPay($toPay)\n    {\n        $this->toPay = (float) $toPay;\n        return $this;\n    }\n\n    /**\n     * Get to pay\n     *\n     * @return float\n     */\n    public function getToPay()\n    {\n        return (float) $this->toPay;\n    }\n\n    /**\n     * Set type\n     *\n     * @param string $type\n     * @return Newscoop\\Entity\\Subscription\n     */\n    public function setType($type)\n    {\n        $this->type = strtoupper($type) === self::TYPE_TRIAL ? self::TYPE_TRIAL : self::TYPE_PAID;\n        return $this;\n    }\n\n    /**\n     * Get type\n     *\n     * @return string\n     */\n    public function getType()\n    {\n        return $this->type;\n    }\n\n    /**\n     * Test if is trial\n     *\n     * @return bool\n     */\n    public function isTrial()\n    {\n        return $this->type === self::TYPE_TRIAL;\n    }\n\n    /**\n     * Set active\n     *\n     * @param bool $active\n     * @return Newscoop\\Entity\\Subscription\n     */\n    public function setActive($active)\n    {\n        $this->active = (bool) $active ? 'Y' : 'N';\n        return $this;\n    }\n\n    /**\n     * Is active\n     *\n     * @return bool\n     */\n    public function isActive()\n    {\n        return strtoupper($this->active) === 'Y';\n    }\n\n    /**\n     * Add sections\n     *\n     * @param array $values\n     * @param Newscoop\\Entity\\Publication $publication\n     * @return void\n     */\n    public function addSections(array $values, \\Newscoop\\Entity\\Publication $publication)\n    {\n        $languages = array();\n        if (!empty($values['individual_languages']) && $values['individual_languages']) {\n            $languages = $values['languages'];\n            if (empty($languages)) {\n                throw new \\InvalidArgumentException(\"No languages set for individual languages\");\n            }\n        }\n\n        foreach ($publication->getIssues() as $issue) {\n            if (!empty($languages) && !in_array($issue->getLanguageId(), $languages)) {\n                continue;\n            }\n\n            foreach ($issue->getSections() as $section) {\n                if ($this->hasSection($section, $languages)) {\n                    continue;\n                }\n\n                $subSection = new Section($this, $section->getNumber());\n                $subSection->setStartDate(new \\DateTime($values['start_date']));\n                $subSection->setDays($values['days']);\n\n                if ($this->isTrial() || $values['type'] === self::TYPE_PAID_NOW) {\n                    $subSection->setPaidDays($values['days']);\n                }\n\n                if (!empty($languages)) {\n                    $subSection->setLanguage($issue->getLanguage());\n                }\n            }\n        }\n    }\n\n    /**\n     * Set sections\n     *\n     * @param array $values\n     * @return void\n     */\n    public function setSections(array $values)\n    {\n        $ids = array_map(function($section) {\n            return !empty($section['id']) ? $section['id'] : null;\n        }, $values);\n\n        foreach ($this->sections as $key => $section) {\n            if (!in_array($section->getId(), $ids)) {\n                $this->sections->remove($key);\n            }\n        }\n    }\n\n    /**\n     * Add section\n     *\n     * @param Newscoop\\Subscription\\Section $section\n     * @return void\n     */\n    public function addSection(Section $section)\n    {\n        if (!$this->sections->contains($section)) {\n            $this->sections->add($section);\n        }\n    }\n\n    /**\n     * Set articles\n     *\n     * @param array $values\n     * @return void\n     */\n    public function setArticles(array $values)\n    {\n        $ids = array_map(function($article) {\n            return !empty($article['id']) ? $article['id'] : null;\n        }, $values);\n\n        foreach ($this->articles as $key => $article) {\n            if (!in_array($article->getId(), $ids)) {\n                $this->articles->remove($key);\n            }\n        }\n    }\n\n    /**\n     * Add article\n     * \n     * @param Newscoop\\Subscription\\Article $article\n     * @return void\n     */\n    public function addArticle(Article $article)\n    {\n        if (!$this->articles->contains($article)) {\n            $this->articles->add($article);\n        }\n    }\n\n    /**\n     * Set issues\n     *\n     * @param array $values\n     * @return void\n     */\n    public function setIssues(array $values)\n    {\n        $ids = array_map(function($issue) {\n            return !empty($issue['id']) ? $issue['id'] : null;\n        }, $values);\n\n        foreach ($this->issues as $key => $issue) {\n            if (!in_array($issue->getId(), $ids)) {\n                $this->issues->remove($key);\n            }\n        }\n    }\n\n    /**\n     * Add issue\n     * \n     * @param Newscoop\\Subscription\\Issue $issue\n     * @return void\n     */\n    public function addIssue(Issue $issue)\n    {\n        if (!$this->issues->contains($issue)) {\n            $this->issues->add($issue);\n        }\n    }\n\n    /**\n     * Test if has given section\n     *\n     * @param Newscoop\\Subscription\\Section $section\n     * @param array $languages\n     * @return bool\n     */\n    private function hasSection(\\Newscoop\\Entity\\Section $section, array $languages)\n    {\n        foreach ($this->sections as $s) {\n            if ($s->getSectionNumber() == $section->getNumber()) {\n                if (!$s->hasLanguage()) {\n                    return true;\n                } else if (empty($languages)) {\n                    $s->setLanguage(null);\n                    return true;\n                } else if ($s->getLanguage() == $section->getLanguage()) {\n                    return true;\n                }\n            }\n        }\n\n        return false;\n    }\n\n    /**\n     * Get sections\n     *\n     * @return array\n     */\n    public function getSections()\n    {\n        return $this->sections;\n    }\n\n    /**\n     * Get articles\n     *\n     * @return array\n     */\n    public function getArticles()\n    {\n        return $this->articles;\n    }\n\n    /**\n     * Get issues\n     *\n     * @return array\n     */\n    public function getIssues()\n    {\n        return $this->issues;\n    }\n\n    /**\n     * Get currency\n     * @return string\n     */\n    public function getCurrency() {\n        return $this->currency;\n    }\n\n    /**\n     * Set currency\n     * @return string\n     */\n    public function setCurrency($currency) {\n        $this->currency = $currency;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Subscription/SubscriptionData.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Subscription;\n\nuse Newscoop\\Subscription\\Subscription;\nuse Newscoop\\Entity\\Article as ArticleEntity;\nuse Newscoop\\Entity\\Section as SectionEntity;\nuse Newscoop\\Entity\\Issue as IssueEntity;\n\n/**\n * Subscription Data holder\n */\nclass SubscriptionData\n{   \n    /**\n     * Subscription Class\n     * @var Subscription\n     */\n    public $subscription;\n\n    /**\n     * Array of SubscriptionSections \n     * @var array\n     */\n    public $sections = array();\n\n    /**\n     * Array of Subscription Articles\n     * @var array\n     */\n    public $articles = array();\n\n    /**\n     * Array of Subscription Issues\n     * @var array\n     */\n    public $issues = array();\n\n    /**\n     * User id\n     * @var int\n     */\n    public $userId;\n\n    /**\n     * Subscription id\n     * @var int\n     */\n    public $subscriptionId;\n\n    /**\n     * Publication Id\n     * @var int\n     */\n    public $publicationId;\n\n    /**\n     * To pay value\n     * @var decimal\n     */\n    public $toPay;\n\n    /**\n     * Subscription start date\n     * @var \\DateTime\n     */\n    public $startDate;\n    \n    /**\n     * How long subscription should be valid\n     * @var int\n     */\n    public $days;\n\n    /**\n     * How long subscription will be valid\n     * @var int\n     */\n    public $paidDays;\n\n    /**\n     * Currency\n     * @var string\n     */\n    public $currency;\n\n    /**\n     * Subscription status \n     * @var boolean\n     */\n    public $active;\n\n    /**\n     * Subscription type.\n     * 'T' for Trial subscription, 'P' for paid subscription or 'PN' for paid now subscriptions.\n     * \n     * @var string\n     */\n    public $type = 'P';\n\n    public function __construct(array $data, Subscription $subscription = null) {\n        // process data array\n        $this->startDate = new \\DateTime();\n        foreach ($data as $key => $value) {\n            if (property_exists($this, $key)) {\n                $this->$key = $value;\n            }\n        }\n\n        // fill paidDays with days value\n        if (!$this->paidDays) {\n            $this->paidDays = $this->days;\n        }\n\n        if (!$subscription) {\n            $this->subscription = new Subscription();\n        } else {\n            $this->subscription = $subscription;\n        }\n\n        return $this;\n    }\n\n    public function addSection(SectionEntity $section, $language) {\n        $section = new \\Newscoop\\Subscription\\Section($this->subscription, $section->getNumber());\n        $section->setStartDate($this->startDate);\n        $section->setDays($this->days);\n        $section->setPaidDays($this->paidDays);\n        $section->setLanguage($language);\n\n        $this->sections[$section->getId()] = $section;\n    }\n\n    public function addArticle(ArticleEntity $article, $language) {\n        $article = new \\Newscoop\\Subscription\\Article($this->subscription, $article);\n        $article->setStartDate($this->startDate);\n        $article->setDays($this->days);\n        $article->setPaidDays($this->paidDays);\n        $article->setLanguage($language);\n\n        $this->articles[$article->getArticleNumber()] = $article;\n    }\n\n    public function addIssue(IssueEntity $issue, $language) {\n        $issue = new \\Newscoop\\Subscription\\Issue($this->subscription, $issue);\n        $issue->setStartDate($this->startDate);\n        $issue->setDays($this->days);\n        $issue->setPaidDays($this->paidDays);\n        $issue->setLanguage($language);\n        $this->issues[$issue->getIssueNumber()] = $issue;\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Subscription/SubscriptionFacade.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Subscription;\n\nuse Newscoop\\Entity\\User;\n\n/**\n * Subscription Facade\n */\nclass SubscriptionFacade\n{\n    /**\n     * @var Doctrine\\ORM\\EntityManager\n     */\n    protected $em;\n\n    /**\n     * @var Newscoop\\Subscription\\SubscriptionRepository\n     */\n    protected $repository;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     */\n    public function __construct(\\Doctrine\\ORM\\EntityManager $em)\n    {\n        $this->em = $em;\n        $this->repository = $this->em->getRepository('Newscoop\\Subscription\\Subscription');\n    }\n\n    /**\n     * Find subscriptions by user\n     *\n     * @param Newscoop\\Entity\\User|int $user\n     * @return array\n     */\n    public function findByUser($user)\n    {\n        return $this->repository->findByUser($user);\n    }\n\n    /**\n     * Save subscription\n     *\n     * @param array $values\n     * @param Newscoop\\Entity\\Subscription|null $subscription\n     * @return Newscoop\\Entity\\Subscription\n     */\n    public function save(array $values, Subscription $subscription = null)\n    {\n        if ($subscription === null) {\n            $subscription = new Subscription();\n            $this->em->persist($subscription);\n        }\n\n        if (array_key_exists('user', $values)) {\n            $subscription->setUser(is_numeric($values['user']) ? $this->em->getReference('Newscoop\\Entity\\User', $values['user']) : $values['user']);\n        }\n\n        if (array_key_exists('publication', $values)) {\n            $subscription->setPublication(is_numeric($values['publication']) ? $this->em->getReference('Newscoop\\Entity\\Publication', $values['publication']) : $values['publication']);\n        }\n\n        if (array_key_exists('type', $values)) {\n            $subscription->setType($values['type']);\n        }\n\n        if (array_key_exists('active', $values)) {\n            $subscription->setActive($values['active']);\n        }\n\n        if (array_key_exists('currency', $values)) {\n            $subscription->setCurrency($values['currency']);\n        }\n\n        if (array_key_exists('toPay', $values)) {\n            $subscription->setToPay($values['toPay']);\n        }\n\n        if (array_key_exists('add_sections', $values) && $values['add_sections']) {\n            if (!array_key_exists('publication', $values)) {\n                throw new \\InvalidArgumentException(\"No publication provided for adding sections\");\n            }\n\n            $publication = is_numeric($values['publication']) ? $this->em->getRepository('Newscoop\\Entity\\Publication')->find($values['publication']) : $values['publication'];\n            $subscription->addSections($values, $publication);\n        }\n\n        $this->em->flush();\n        return $subscription;\n    }\n\n    /**\n     * Delete subscription\n     *\n     * @param int $subscriptionId\n     * @return void\n     */\n    public function delete($id)\n    {\n        $this->em->remove($this->repository->find((int) $id));\n        $this->em->flush();\n    }\n\n    /**\n     * Find subscription by given id\n     *\n     * @param int $id\n     * @return Newscoop\\Subscription\\Subscription\n     */\n    public function find($id)\n    {\n        return $this->repository->find($id);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Subscription/SubscriptionRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Subscription;\n\nuse Doctrine\\ORM\\EntityRepository,\n    Newscoop\\Entity\\User;\n\n/**\n * Subscription repository\n */\nclass SubscriptionRepository extends EntityRepository\n{\n    /**\n     * Save subscription\n     *\n     * @param Newscoop\\Entity\\Subscription $subscription\n     * @param Newscoop\\Entity\\User\\Subscriber $subscriber\n     * @param array $values\n     * @return void\n     */\n    public function save(Subscription $subscription, Subscriber $subscriber, array $values)\n    {\n        $em = $this->getEntityManager();\n\n        $publication = $em->find('Newscoop\\Entity\\Publication', $values['publication']);\n\n        $subscription->setType($values['type']);\n        $subscription->setActive(!empty($values['active']));\n        $subscription->setPublication($publication);\n        $subscription->setSubscriber($subscriber);\n\n        $em->persist($subscription);\n\n        if (strtolower($values['sections']) == 'y') { // add sections\n            $languages = array_map('intval', (array) $values['languages']);\n            if ($values['language_set'] == 'select' && empty($languages)) {\n                throw new \\InvalidArgumentException('No languages specified');\n            }\n\n            foreach ($publication->getSections() as $section) {\n                $subscriptionSection = new SubscriptionSection;\n\n                if ($values['language_set'] == 'select' && !in_array($section->getLanguageId(), $languages)) {\n                    continue; // ignore by language if any\n                } elseif ($values['language_set'] == 'select') {\n                    $subscriptionSection->setLanguage($section->getLanguage());\n                }\n\n                $subscriptionSection\n                        ->setSubscription($subscription)\n                        ->setSectionNumber($section->getNumber())\n                        ->setStartDate(new \\DateTime($values['start_date']))\n                        ->setDays((int) $values['days'])\n                        ->setPaidDays(in_array($values['type'], array('PN', 'T')) ? (int) $values['days'] : 0);\n\n                $em->persist($subscriptionSection);\n            }\n        }\n    }\n\n    /**\n     * Add section to subscription\n     *\n     * @param Newscoop\\Entity\\Subscription\n     * @param array $values\n     * @return void\n     */\n    public function addSections(Subscription $subscription, array $values)\n    {\n        $em = $this->getEntityManager();\n\n        if ($values['language'] == 'select') {\n            if (empty($values['sections_select'])) {\n                throw new \\InvalidArgumentException('No sections specified');\n            }\n\n            foreach ($values['sections_select'] as $num_lang) {\n                list($num, $lang) = explode('_', $num_lang);\n\n                $subscriptionSection = new SubscriptionSection;\n                $subscriptionSection\n                    ->setSubscription($subscription)\n                    ->setSectionNumber($num)\n                    ->setLanguage($em->getReference('Newscoop\\Entity\\Language', $lang))\n                    ->setStartDate(new \\DateTime($values['start_date']))\n                    ->setDays($values['days'])\n                    ->setPaidDays($values['days']);\n\n                $em->persist($subscriptionSection);\n            }\n        } else {\n            if (empty($values['sections_all'])) {\n                throw new \\InvalidArgumentException('No sections specified');\n            }\n\n            foreach ($values['sections_all'] as $num) {\n                $subscriptionSection = new SubscriptionSection;\n                $subscriptionSection\n                    ->setSubscription($subscription)\n                    ->setSectionNumber($num)\n                    ->setStartDate(new \\DateTime($values['start_date']))\n                    ->setDays($values['days'])\n                    ->setPaidDays($values['days']);\n\n                $em->persist($subscriptionSection);\n            }\n        }\n    }\n\n    /**\n     * Delete subscription\n     *\n     * @param Newscoop\\Entity\\Subscription $subscription\n     * @return void\n     */\n    public function delete(Subscription $subscription)\n    {\n        $em = $this->getEntityManager();\n\n        foreach ($subscription->getSections() as $section) {\n            $em->remove($section);\n        }\n\n        $em->remove($subscription);\n    }\n\n    /**\n     * Find by user\n     *\n     * @param Newscoop\\Entity\\User|int $user\n     * @return array\n     */\n    public function findByUser($user)\n    {\n        if (empty($user)) {\n            return array();\n        }\n\n        return $this->findBy(array(\n            'user' => is_numeric($user) ? $user : $user->getId(),\n        ), array('id' => 'desc'), 1000);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/TemplateList/BaseList.php",
    "content": "<?php\n\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\TemplateList;\n\nuse Newscoop\\Criteria;\nuse Newscoop\\ListResult;\n\n/**\n * Base class for list of template objects (e.g. list issue, list section etc.)\n */\nabstract class BaseList \n{\n    /**\n     * The identifier of the list\n     *\n     * @var string\n     */\n    protected $id;\n\n    /**\n     * The name of the list\n     *\n     * @var string\n     */\n    protected $name;\n\n    /**\n     * The start page number from which to generate the list.\n     *\n     * @var int\n     */\n    protected $firstResult;\n\n    /**\n     * The maximum number of objects in the list, null or 0 for no limit\n     *\n     * @var int\n     */\n    protected $maxResults;\n\n    /**\n     * True if the generated list has more elements than $this->m_limit\n     *\n     * @var bool\n     */\n    protected $hasNextResults;\n\n    /**\n     * The number of columns (for generating tables)\n     *\n     * @var int\n     */\n    protected $columns;\n\n    /**\n     * The constraints array.\n     *\n     * @var array\n     */\n    protected $constraints;\n\n    /**\n     * The clean array of parameters\n     * @var array\n     */\n    protected $parameters;\n\n    /**\n     * The Criteria object\n     *\n     * @var Criteria\n     */\n    protected $critera;\n\n    /**\n     * The list of objects.\n     *\n     * @var Newscoop\\ListResult\n     */\n    protected $objectsList;\n\n    /**\n     * The total number of elements in the list without the limits.\n     *\n     * @var integer\n     */\n    protected $totalCount;\n\n    /**\n     * The default iterator for the current object.\n     *\n     * @var object\n     */\n    protected $defaultIterator = null;\n\n    /**\n     * List cache key\n     * @var mixed\n     */\n    protected $cacheKey = null;\n\n    protected $operatorsMap = array(\n        'is' => '=',\n        'smaller_equal' => '<=',\n        'greater_equal' => '>=',\n        'smaller' => '<',\n        'greater' => '>',\n        'not' => '<>',\n        'like' => 'like',\n        'match'=> 'match'\n    );\n\n    /**\n     * Default cache time\n     * @var integer\n     */\n    protected $defaultTTL = 600;\n\n    public function __construct($criteria)\n    {\n        $this->setCriteria($criteria);\n    }\n\n    /**\n     * Set Criteria object\n     * @param Criteria $criteria\n     */\n    protected function setCriteria($criteria)\n    {\n        // TODO: check if implement Newscoop/Criteria\n        $this->criteria = $criteria;\n    }\n\n    public function getList($firstResult, $parameters)\n    {\n        if (!array_key_exists('constraints', $parameters)) {\n            $parameters['constraints'] = '';\n        }\n\n        $this->convertParameters($firstResult, $parameters);\n        $this->constraints = $this->parseConstraintsString($parameters['constraints']);\n        $this->convertConstraints();\n\n        if ($this->constraints === false || $parameters === false) {\n            $this->totalCount = 0;\n            $this->objectsList = new ListResult();\n            $this->hasNextResults = false;\n\n            return;\n        }\n\n        $this->objectsList = $this->prepareList($this->criteria, $parameters);\n        $this->totalCount = $this->objectsList->count();\n        $this->hasNextResults = ceil($this->totalCount / $this->maxResults) > $this->firstResult;\n\n        return $this->objectsList;\n    }\n\n    /**\n     * Get ListResult object with list elements\n     *\n     * @param Criteria $criteria\n     * @param array    $parameters\n     *\n     * @return ListResult\n     */\n    abstract protected function prepareList($criteria, $parameters);\n\n    /**\n     * Convert constraints array to Criteria\n     */\n    protected function convertConstraints()\n    {\n        if (!is_array($this->criteria->perametersOperators)) {\n            $this->criteria->perametersOperators = array();\n        }\n\n        $this->constraints = array_chunk($this->constraints, 3, true);\n        foreach ($this->constraints as $constraint) {\n            $constraint = array_values($constraint);\n            if (count($constraint) == 3) {\n                if (array_key_exists($constraint[0], $this->criteria)) {\n                    $this->criteria->perametersOperators[$constraint[0]] = $this->operatorsMap[$constraint[1]];\n                    $this->criteria->$constraint[0] = $constraint[2];\n                }\n            }\n        }\n    }\n\n    /**\n     * Convert parameters array to Criteria\n     *\n     * @param integer $firstResult\n     * @param array   $parameters\n     *\n     * @return Criteria\n     */\n    protected function convertParameters($firstResult, $parameters)\n    {\n        $this->firstResult = is_numeric($firstResult) ? intval($firstResult) : $this->criteria->firstResult;\n        $this->maxResults = isset($parameters['length']) ? intval($parameters['length']) : $this->criteria->maxResults;\n        $this->columns = isset($parameters['columns']) ? intval($parameters['columns']) : 0;\n        $name = isset($parameters['name']) ? $parameters['name'] : '';\n        $this->name = is_string($name) && trim($name) != '' ? $name : $this->defaultName();\n\n        $orderString = isset($parameters['order']) ? str_replace('by', '', $parameters['order']) : '';\n        $orderArray = $this->parseConstraintsString($orderString);\n\n        foreach (array_chunk($orderArray, 2, true) as $order) {\n            if (count($order) == 2) {\n                foreach ($this->criteria as $key => $value) {\n                    if ($key == $order[0]) {\n                        $this->criteria->orderBy[$order[0]] = $order[1];\n                    }\n                }\n            }\n        }\n\n        // Set first and max results values to critera.\n        $this->criteria->firstResult = $this->firstResult;\n        $this->criteria->maxResults = $this->maxResults;\n    }\n\n    protected function getCacheKey()\n    {\n        if (is_null($this->cacheKey)) {\n            $this->cacheKey = get_class($this) . '__' . md5(serialize($this->criteria)) . '__' . $this->columns;\n        }\n\n        return $this->cacheKey;\n    }\n\n\n    /**\n     * Copies the given object\n     *\n     * @param object $source\n     *\n     * @return object\n     */\n    private function duplicateObject($source)\n    {\n        foreach ($source as $key => $value) {\n            $this->$key = $value;\n        }\n    }\n\n    /**\n     * Generates a unique name for this list object.\n     *\n     * @return string\n     */\n    private function defaultName()\n    {\n        return sha1(time().$this->id);\n    }\n\n    /**\n     * Returns the default iterator of this list.\n     *\n     * @return object of type ArrayIterator\n     */\n    public function defaultIterator()\n    {\n        if (!isset($this->defaultIterator)) {\n            $this->defaultIterator = $this->getIterator();\n        }\n\n        return $this->defaultIterator;\n    }\n\n    /**\n     * Returns the current element of the default iterator.\n     *\n     * @return object\n     */\n    public function getCurrent()\n    {\n        if ($this->isEmpty()) {\n            return null;\n        }\n\n        return $this->defaultIterator()->current();\n    }\n\n    /**\n     * Returns the index of the current element of the default iterator.\n     *\n     * @return int\n     */\n    public function getIndex()\n    {\n        if ($this->isEmpty()) {\n            return 0;\n        }\n\n        return 1 + $this->firstResult + $this->defaultIterator()->key();\n    }\n\n    /**\n     * Returns an iterator for this list.\n     *\n     * @return object of type ArrayIterator\n     */\n    public function getIterator()\n    {\n        return $this->objectsList->getIterator();\n    }\n\n    /**\n     * Returns the list name.\n     *\n     * @return string\n     */\n    public function getName()\n    {\n        return $this->name;\n    }\n\n    /**\n     * Returns the length of the list.\n     *\n     * @return int\n     */\n    public function getLength()\n    {\n        return $this->objectsList->count();\n    }\n\n    /**\n     * Return true if the list is blank (see the constructor documentation).\n     *\n     * @return bool\n     */\n    public function isBlank()\n    {\n        return $this->firstResult < 0;\n    }\n\n    /**\n     * Return true if the list is empty.\n     *\n     * @return bool\n     */\n    public function isEmpty()\n    {\n        return count($this->objectsList->items) == 0;\n    }\n\n    /**\n     * Returns true if the list is limited to a certain number of elements.\n     *\n     * @return bool\n     */\n    public function isLimited()\n    {\n        return $this->maxResults > 0;\n    }\n\n    /**\n     * Returns the maximum number of elements, 0 for limitless.\n     *\n     * @return int\n     */\n    public function getLimit()\n    {\n        return $this->maxResults;\n    }\n\n    /**\n     * Returns the index of the start element of this list in the\n     * original list from which this was truncated.\n     *\n     * @return int\n     */\n    public function getStart()\n    {\n        return $this->firstResult;\n    }\n\n    /**\n     * Returns the start element index of the previous group of items\n     * from the list. Returns null if the list had no limit.\n     *\n     * @return int\n     */\n    private function getPrevStart()\n    {\n        if ($this->maxResults == 0) {\n            return null;\n        }\n\n        return ($this->firstResult >= $this->maxResults ? ($this->firstResult - $this->maxResults) : 0);\n    }\n\n    /**\n     * Returns the start element index of the next group of items\n     * from the list. Returns null if the list had no limit.\n     *\n     * @return int\n     */\n    private function getNextStart()\n    {\n        if ($this->maxResults == 0) {\n            return null;\n        }\n\n        return $this->firstResult + $this->maxResults;\n    }\n\n    /**\n     * Returns the index of the last element of this list in the\n     * original list from which this was truncated.\n     *\n     * @return int\n     */\n    public function getEnd()\n    {\n        return $this->firstResult + count($this->objectsList->items);\n    }\n\n    /**\n     * Returns true if the index of the start element in the\n     * original list - from which this was truncated - is greater\n     * than 0.\n     *\n     * @return bool\n     */\n    public function hasPreviousElements()\n    {\n        return $this->firstResult > 0;\n    }\n\n    /**\n     * Returns true if this list is limited and elements still exist\n     * in the original list (from which this was truncated) after the\n     * last element of this list.\n     *\n     * @return bool\n     */\n    public function hasNextElements()\n    {\n        return $this->hasNextResults;\n    }\n\n    /**\n     * Returns the total number of elements in the list without the limits.\n     *\n     * @return unknown\n     */\n    public function getTotalCount()\n    {\n        return $this->totalCount;\n    }\n\n    /**\n     * Set list total count.\n     *\n     * @return unknown\n     */\n    public function setTotalCount($totalCount)\n    {\n        return $this->totalCount = $totalCount;\n    }\n\n    /**\n     * Returns the column number for the given iterator\n     *\n     * @param int $iterator\n     */\n    public function getColumn($iterator = null)\n    {\n        if (!isset($iterator)) {\n            $iterator = $this->defaultIterator();\n        }\n\n        if ($this->columns == 0 || $iterator->count() == 0) {\n            return 0;\n        }\n\n        return 1 + ($iterator->key() % $this->columns);\n    }\n\n    /**\n     * Returns the row number for the given iterator\n     *\n     * @param int $p_iterator\n     */\n    public function getRow($iterator = null)\n    {\n        if (!isset($iterator)) {\n            $iterator = $this->defaultIterator();\n        }\n\n        if ($this->columns == 0 || $this->columns == 1) {\n            return (1 + $iterator->key());\n        }\n\n        return 1 + (int)($iterator->key() / $this->columns);\n    }\n\n    /**\n     * Returns the number of columns.\n     *\n     * @return int\n     */\n    public function getColumns()\n    {\n        return $this->columns;\n    }\n\n    /**\n     * Returns the constraints.\n     *\n     * @return array\n     */\n    public function getConstraints()\n    {\n        return $this->constraints;\n    }\n\n    /**\n     * Overloaded method call to give access to the list properties.\n     *\n     * @param string $property - the property name\n     * \n     * @return mixed    the property value\n     */\n    public function __get($property)\n    {\n       $property = strtolower($property);\n        switch ($property) {\n            case 'column':\n                return $this->getColumn($this->defaultIterator());\n            case 'columns':\n                return $this->getColumns();\n            case 'current':\n                return $this->getCurrent();\n            case 'end':\n                return $this->getEnd();\n            case 'index':\n                return $this->getIndex();\n            case 'length':\n                return $this->getLength();\n            case 'limit':\n                return $this->getLimit();\n            case 'name':\n                return $this->getName();\n            case 'row':\n                return $this->getRow();\n            case 'start':\n                return $this->getStart();\n            case 'count':\n                return $this->getTotalCount();\n            case 'at_beginning':\n                return $this->getIndex() == ($this->getStart() + 1);\n            case 'at_end':\n                return $this->getIndex() == $this->getEnd();\n            case 'has_next_elements':\n                return $this->hasNextElements();\n            case 'has_previous_elements':\n                return $this->hasPreviousElements();\n            case 'previous_start':\n                return $this->getPrevStart();\n            case 'next_start':\n                return $this->getNextStart();\n            case 'id':\n                return $this->id;\n            default:\n                $errorMessage = INVALID_PROPERTY_STRING . \" $property \"\n                                . OF_OBJECT_STRING . ' list';\n                \\CampTemplate::singleton()->trigger_error($errorMessage);\n        }\n    }\n\n    /**\n     * Parses the constraints string and returns an array of words\n     *\n     * @param string $constraintsString\n     * @return array\n     */\n    protected function parseConstraintsString($constraintsString)\n    {\n        if (empty($constraintsString)) {\n            return array();\n        }\n\n        $words = array();\n        $escaped = false;\n        $lastWord = '';\n        foreach (str_split($constraintsString) as $char) {\n            if (preg_match('/[\\s]/', $char) && !$escaped) {\n                if (strlen($lastWord) > 0) {\n                    if ($lastWord == \"''\") {\n                        $lastWord = '';\n                    }\n                    $words[] = $lastWord;\n                    $lastWord = '';\n                }\n            } elseif ($char == \"\\\\\" && !$escaped) {\n                $escaped = true;\n            } else {\n                $lastWord .= $char;\n                $escaped = false;\n            }\n        }\n\n        if (strlen($lastWord) > 0) {\n            if ($lastWord == \"''\") {\n                $lastWord = '';\n            }\n            $words[] = $lastWord;\n        }\n\n        return $words;\n    }\n\n    /**\n     * Sets the list identifier\n     *\n     * @param string $id\n     */\n    public function setId($id)\n    {\n        $this->id = $id;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/TemplateList/Meta/MetaBase.php",
    "content": "<?php\n\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\TemplateList\\Meta;\n\nuse Doctrine\\Common\\Inflector\\Inflector;\n\n/**\n * Modern Meta class\n */\nabstract class MetaBase\n{\n    protected $dataObject;\n\n    public function __construct($dataObject = null)\n    {\n        $this->dataObject = $dataObject;\n    }\n\n    protected function getPropertiesMap()\n    {\n        return array();\n    }\n\n    public function __get($property)\n    {\n        if (count($this->getPropertiesMap()) > 0) {\n            $map = $this->getPropertiesMap();\n            if (array_key_exists($property, $map)) {\n                $methodName = $map[$property];\n\n                if (method_exists($this, $methodName)) {\n                    return $this->$methodName();\n                } elseif (method_exists($this->dataObject, $methodName)) {\n                    return $this->dataObject->$methodName();\n                }\n            }\n\n            throw new \\LogicException(\"Undefined \".$property.\" property.\");\n        }\n\n        $methodName = 'get'.\\Doctrine\\Common\\Util\\Inflector::classify($property);\n\n        if (method_exists($this, $methodName)) {\n            return $this->$methodName();\n        } elseif (property_exists($this, $property)) {\n            return $this->$property;\n        } elseif (method_exists($this->dataObject, $methodName)) {\n            return $this->dataObject->$methodName();\n        } elseif (property_exists($this->dataObject, $property)) {\n            return $this->dataObject->$property;\n        }\n\n        throw new \\LogicException(\"Undefined \".$methodName.\" method or missing \".$property.\" property.\");\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/TemplateList/Meta/SlideshowItemMeta.php",
    "content": "<?php\n\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\TemplateList\\Meta;\n\n/**\n * Slideshow item exposition for templates\n */\nclass SlideshowItemMeta extends MetaBase\n{\n    public function getImage()\n    {\n        return new \\MetaImage($this->dataObject->getImage()->getId());\n    }\n\n    public function getIsImage()\n    {\n        return $this->dataObject->isImage();\n    }\n\n    public function getSlideshow()\n    {\n        return new \\Newscoop\\TemplateList\\Meta\\SlideshowsMeta($this->dataObject->getPackage());\n    }\n\n    public function getVideo()\n    {\n        return (object) array(\n            'url' => $this->dataObject->getVideoUrl(),\n            'width' => $this->dataObject->getRendition()->getWidth(),\n            'height' => $this->dataObject->getRendition()->getHeight(),\n        );\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/TemplateList/Meta/SlideshowsMeta.php",
    "content": "<?php\n\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\TemplateList\\Meta;\n\n/**\n * Slideshow exposition for templates\n */\nclass SlideshowsMeta extends MetaBase\n{\n    protected function getPropertiesMap()\n    {\n        return array(\n            'id' => 'getId',\n            'headline' => 'getHeadline',\n            'description' => 'getDescription',\n            'items' => 'getItems',\n            'articles' => 'getArticles',\n            'slug' => 'getSlug',\n            'count' => 'getItemsCount'\n        );\n    }\n\n    public function getItems()\n    {\n        return $this->dataObject->getItems()->toArray();\n    }\n\n    public function getItemsCount()\n    {\n        return count($this->dataObject->getItems()->toArray());\n    }\n\n    public function getArticles()\n    {\n        return $this->dataObject->getArticles()->toArray();\n    }\n\n    public function getSlug()\n    {\n        return $this->slugify($this->dataObject->getHeadline());\n    }\n\n    /**\n     * Modifies a string to remove all non ASCII characters and spaces.\n     */\n    public function slugify($text)\n    {\n        $charMap = array(\n            // Latin symbols\n            '©' => '(c)',\n            // Polish\n            'Ą' => 'A', 'Ć' => 'C', 'Ę' => 'e', 'Ł' => 'L', 'Ń' => 'N', 'Ó' => 'o', 'Ś' => 'S', 'Ź' => 'Z',\n            'Ż' => 'Z',\n            'ą' => 'a', 'ć' => 'c', 'ę' => 'e', 'ł' => 'l', 'ń' => 'n', 'ó' => 'o', 'ś' => 's', 'ź' => 'z',\n            'ż' => 'z',\n        );\n        // Make custom replacements\n        $text = str_replace(array_keys($charMap), $charMap, $text);\n        // replace non letter or digits by -\n        $text = preg_replace('~[^\\\\pL\\d]+~u', '-', $text);\n        // trim\n        $text = trim($text, '-');\n        // transliterate\n        if (function_exists('iconv')) {\n            $text = iconv('utf-8', 'us-ascii//TRANSLIT', $text);\n        }\n        // lowercase\n        $text = strtolower($text);\n        // remove unwanted characters\n        $text = preg_replace('~[^-\\w]+~', '', $text);\n        if (empty($text)) {\n            return 'n-a';\n        }\n\n        return $text;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/TemplateList/PaginatedBaseList.php",
    "content": "<?php\n\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\TemplateList;\n\nuse Newscoop\\Criteria;\nuse Newscoop\\ListResult;\nuse Newscoop\\TemplateList\\BaseList;\n\n/**\n * Paginated Base List\n */\nabstract class PaginatedBaseList extends BaseList\n{\n    /**\n     * @var string\n     */\n    protected $pageParameterName;\n\n    /**\n     * @var int\n     */\n    protected $pageNumber = 1;\n\n    /**\n     * @var \\Newscoop\\Services\\TemplatesService\n     */\n    protected $paginatorService;\n\n    /**\n     * @var \\Newscoop\\Services\\CacheService\n     */\n    protected $cacheService;\n\n    /**\n     * @var \\Knp\\Component\\Pager\\Pagination\\PaginationInterface\n     */\n    public $pagination;\n\n    /**\n     * @param \\Newscoop\\Criteria                  $criteria\n     * @param \\Newscoop\\Services\\TemplatesService $paginatorService\n     * @param \\Newscoop\\Services\\CacheService     $cacheService\n     */\n    public function __construct($criteria, $paginatorService, $cacheService)\n    {\n        $this->paginatorService = $paginatorService;\n        $this->cacheService = $cacheService;\n\n        parent::__construct($criteria);\n    }\n\n    /**\n     * Get Paginator instance from PaginatorService\n     *\n     * @return \\Knp\\Component\\Pager\\Paginator\n     */\n    public function getPaginator()\n    {\n        return $this->paginatorService->getPaginator();\n    }\n\n    /**\n     * Paginate target and fill list items\n     *\n     * @param mixed      $target\n     * @param int        $pageNumber\n     * @param int        $maxResults\n     * @param ListResult $list\n     * @param boolean    $useCache\n     *\n     * @return ListResult\n     */\n    protected function paginateList($target, $pageNumber, $maxResults, $list = null, $useCache = true)\n    {\n        if (!$list) {\n            $list = new ListResult();\n        }\n\n        if (!$pageNumber) {\n            $pageNumber = $this->pageNumber;\n        }\n\n        if ($useCache) {\n            $cacheId = $this->cacheService->getCacheKey(array(\n                $this->getCacheKey(), $this->getPageNumber()\n            ), $this->getName());\n\n            if ($this->cacheService->contains($cacheId)) {\n                $this->pagination = $this->cacheService->fetch($cacheId);\n            } else {\n                $this->pagination = $this->paginatorService->paginate($target, $pageNumber, $maxResults);\n                $this->cacheService->save($cacheId, $this->pagination);\n            }\n        } else {\n            $this->pagination = $this->paginatorService->paginate($target, $pageNumber, $maxResults);\n        }\n\n        $list->count = count($this->pagination->getItems());\n        $list->items = $this->pagination->getItems();\n\n        return $list;\n    }\n\n    /**\n     * Gets the value of pageParameterName.\n     *\n     * @return mixed\n     */\n    public function getPageParameterName()\n    {\n        return $this->pageParameterName;\n    }\n\n    /**\n     * Sets the value of pageParameterName.\n     *\n     * @param mixed $pageParameterName the page parameter name\n     *\n     * @return self\n     */\n    public function setPageParameterName($pageParameterName)\n    {\n        $this->pageParameterName = $pageParameterName;\n        $this->paginatorService->setPageParameterName($this->pageParameterName);\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of pageNumber.\n     *\n     * @return mixed\n     */\n    public function getPageNumber()\n    {\n        return $this->pageNumber;\n    }\n\n    /**\n     * Sets the value of pageNumber.\n     *\n     * @param mixed $pageNumber the page number\n     *\n     * @return self\n     */\n    public function setPageNumber($pageNumber = 1)\n    {\n        $this->pageNumber = $pageNumber;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/TemplateList/SlideshowItemsList.php",
    "content": "<?php\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\TemplateList;\n\nuse Newscoop\\ListResult;\nuse Newscoop\\TemplateList\\PaginatedBaseList;\n\n/**\n * Slideshows List\n */\nclass SlideshowItemsList extends PaginatedBaseList\n{\n    protected function prepareList($criteria, $parameters)\n    {\n        $em = \\Zend_Registry::get('container')->get('em');\n        $queryBuilder = $em->getRepository('Newscoop\\Package\\Item')\n            ->getListByCriteria($criteria);\n        $list = $this->paginateList($queryBuilder, null, $criteria->maxResults, false);\n\n        $items = array();\n        foreach ($list->items as $item) {\n            $items[] = new \\Newscoop\\TemplateList\\Meta\\SlideshowItemMeta($item);\n        }\n        $list->items = $items;\n\n        return $list;\n    }\n\n    protected function convertParameters($firstResult, $parameters)\n    {\n        parent::convertParameters($firstResult, $parameters);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/TemplateList/SlideshowsList.php",
    "content": "<?php\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\TemplateList;\n\nuse Newscoop\\ListResult;\nuse Newscoop\\TemplateList\\PaginatedBaseList;\n\n/**\n * Slideshows List\n */\nclass SlideshowsList extends PaginatedBaseList\n{\n    protected function prepareList($criteria, $parameters)\n    {\n        $em = \\Zend_Registry::get('container')->get('em');\n        $queryBuilder = $em->getRepository('Newscoop\\Package\\Package')\n            ->getListByCriteria($criteria);\n        $list = $this->paginateList($queryBuilder, null, $criteria->maxResults, false);\n\n        $slideshows = array();\n        foreach ($list->items as $slideshow) {\n            $slideshows[] = new \\Newscoop\\TemplateList\\Meta\\SlideshowsMeta($slideshow);\n        }\n        $list->items = $slideshows;\n\n        return $list;\n    }\n\n    protected function convertParameters($firstResult, $parameters)\n    {\n        parent::convertParameters($firstResult, $parameters);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/TemplateList/UsersList.php",
    "content": "<?php\n\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\TemplateList;\n\n/**\n * List users\n */\nclass UsersList extends PaginatedBaseList\n{\n\n    protected function prepareList($criteria, $parameters)\n    {\n        $em = \\Zend_Registry::get('container')->get('em');\n        $result = $em->getRepository('Newscoop\\Entity\\User')->getListByCriteria($criteria, false);\n        $list = $this->paginateList($result[0], null, $criteria->maxResults, null, false);\n        $list->count = $result[1];\n\n        $tempList = array_map(function ($user) {\n              return new \\MetaUser($user);\n        }, $list->items);\n\n        $list->items = $tempList;\n\n        return $list;\n    }\n\n    protected function convertParameters($firstResult, $parameters)\n    {\n        $this->criteria->orderBy = array();\n        // run default simple parameters converting\n        parent::convertParameters($firstResult, $parameters);\n\n        // apply attributes as a filters\n        if (array_key_exists('attributes', $parameters)) {\n            $this->criteria->attributes = $this->parseConstraintsString($parameters['attributes']);\n        }\n\n        // convert your special parameters into criteria properties.\n        if (array_key_exists('search', $parameters)) {\n            $this->criteria->query = $parameters['search'];\n        } elseif (array_key_exists('filter', $parameters)) {\n            $filter = $parameters['filter'];\n            $this->criteria->groups = !empty($parameters['editor_groups']) ? array_map('intval', explode(',', $parameters['editor_groups'])) : array();\n            switch ($filter) {\n                case 'active':\n                    $this->criteria->orderBy = array('points' => 'desc');\n                    $this->criteria->excludeGroups = true;\n                    break;\n\n                case 'editors':\n                    $this->criteria->excludeGroups = false;\n                    break;\n\n                default:\n                    $this->criteria->groups = array();\n\n                    // example: filter=\"a-c\"\n                    if (preg_match('/([a-z])-([a-z])/', $filter, $matches)) {\n                        $this->criteria->nameRange = range($matches[1], $matches[2]);\n                    } else {\n                        \\CampTemplate::singleton()->trigger_error(\"invalid parameter $filter in filter\");\n                    }\n                    break;\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/ThemesServiceInterface.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric z.ú.\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop;\n\n/**\n * Themes service interface\n */\ninterface ThemesServiceInterface\n{\n    /**\n     * Gets current theme path\n     *\n     * @return string Returns current theme path\n     */\n    public function getThemePath();\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/AbstractIndexCommand.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Tools\\Console\\Command;\n\nuse Symfony\\Component\\Console\\Input\\InputArgument;\nuse Symfony\\Component\\Console\\Input\\InputOption;\nuse Symfony\\Component\\Console;\n\n/**\n * Base Index Command\n */\nabstract class AbstractIndexCommand extends Console\\Command\\Command\n{\n    /**\n     * Get all search services for indexable documents\n     *\n     * @return array\n     */\n    protected function getIndexers()\n    {\n        $container = $this->getApplication()->getKernel()->getContainer();\n        $servicIds = $container->getServiceIds();\n        $indexingServices = array();\n\n        foreach ($servicIds AS $serviceId) {\n\n            if (strpos($serviceId, 'indexer.') === false) {\n                continue;\n            }\n\n            $indexingServices[$serviceId] = $container->get($serviceId);\n        }\n\n        return $indexingServices;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/AssignThemeCommand.php",
    "content": "<?php\n/**\n * @package   Newscoop\n * @author    Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license   http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Tools\\Console\\Command;\n\nuse Symfony\\Component\\Console\\Input\\InputArgument;\nuse Symfony\\Component\\Console;\nuse Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand;\nuse Newscoop\\Service\\IThemeManagementService;\n\n/**\n * Assign themes for publication Command\n */\nclass AssignThemeCommand extends ContainerAwareCommand\n{\n    /**\n     */\n    protected function configure()\n    {\n        $this\n        ->setName('themes:assign')\n        ->addArgument('theme', InputArgument::OPTIONAL, 'Theme name to assign, e.g. set_quetzal', 1)\n        ->setDescription('Assign theme for publications');\n    }\n\n    /**\n     */\n    protected function execute(Console\\Input\\InputInterface $input, Console\\Output\\OutputInterface $output)\n    {\n        $resourceId = new \\Newscoop\\Service\\Resource\\ResourceId(__CLASS__);\n        $themeService = $resourceId->getService(IThemeManagementService::NAME_1);\n        $publicationService = $this->getContainer()->getService('content.publication');\n        $publications =  $publicationService->findAll();\n        $themeToSet = (string) $input->getArgument('theme');\n\n        if ($themeToSet != null) {\n            foreach ($themeService->getUnassignedThemes() as $theme) {\n                if (strpos($theme->getPath(), $themeToSet) !== false) {\n                    foreach ($publications as $publication) {\n                        $themeService->assignTheme($theme, $publication, true);\n                    }\n                }\n            }\n        } else {\n            foreach ($themeService->getUnassignedThemes() as $theme) {\n                foreach ($publications as $publication) {\n                    $themeService->assignTheme($theme, $publication, true);\n                }\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/AutopublishCommand.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Tools\\Console\\Command;\n\nuse Symfony\\Component\\Console;\nuse Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand;\n\n/**\n * Update Image Storage Command\n */\nclass AutopublishCommand extends ContainerAwareCommand\n{\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function configure()\n    {\n        $this\n            ->setName('newscoop:autopublish')\n            ->setDescription('Autopublish pending issues and articles')\n            ->setHelp('Modifies the status of issues and articles scheduled for certain actions.');\n    }\n\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function execute(Console\\Input\\InputInterface $input, Console\\Output\\OutputInterface $output)\n    {\n        $issueActions = \\IssuePublish::DoPendingActions();\n        $articleActions = \\ArticlePublish::DoPendingActions();\n        if ($issueActions > 0 || $articleActions > 0) {\n            fopen($this->getContainer()->getParameter('kernel.cache_dir') .'/reset_cache', 'w');\n        }\n\n        if ($input->getOption('verbose')) {\n            $output->writeln('Published issues: <info>'.$issueActions.'</info>.');\n            $output->writeln('Published articles: <info>'.$articleActions.'</info>.');\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/ClearIndexCommand.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Tools\\Console\\Command;\n\nuse Symfony\\Component\\Console\\Input\\InputArgument,\n    Symfony\\Component\\Console\\Input\\InputOption,\n    Symfony\\Component\\Console;\n\n/**\n * Index clear command\n */\nclass ClearIndexCommand extends AbstractIndexCommand\n{\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function configure()\n    {\n        $this\n        ->setName('index:clear')\n        ->setDescription('Clear index timestamps.')\n        ->addArgument('type', InputArgument::OPTIONAL, 'Types to clear index timestamp for', 'all')\n        ->setHelp('');\n    }\n\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function execute(Console\\Input\\InputInterface $input, Console\\Output\\OutputInterface $output)\n    {\n        global $g_ado_db;\n        $container = $this->getApplication()->getKernel()->getContainer();\n        $g_ado_db = $container->get('doctrine.adodb');\n\n        $type = $input->getArgument('type');\n        $indexers = $this->getIndexers();\n\n        if ($type !== 'all' && !array_key_exists($type, $indexers)) {\n\n            $output->writeln('<error>Invalid value for parameter type specified.</error> Valid values are: all, '\n                . implode(', ', array_keys($indexers)));\n        } else {\n\n            if ($type === 'all') {\n                foreach ($indexers as $name => $indexer) {\n                    $output->writeln('Clearing index timestamp on '.$name.'.');\n                    $indexer->clearAll();\n                }\n            } else {\n                $output->writeln('Clearing index timestamp on '.$type.'.');\n                $indexers[$type]->clearAll();\n            }\n\n            $output->writeln('Index timestamps cleared.');\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/ClearOldStatisticsCommand.php",
    "content": "<?php\r\n/**\r\n * @package Newscoop\r\n * @copyright 2012 Sourcefabric o.p.s.\r\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\r\n */\r\n\r\nnamespace Newscoop\\Tools\\Console\\Command;\r\n\r\nuse Symfony\\Component\\Console\\Input\\InputArgument;\r\nuse Symfony\\Component\\Console\\Input\\InputOption;\r\nuse Symfony\\Component\\Console;\r\n\r\n/**\r\n * Update Image Storage Command\r\n */\r\nclass ClearOldStatisticsCommand extends Console\\Command\\Command\r\n{\r\n    /**\r\n     * @see Console\\Command\\Command\r\n     */\r\n    protected function configure()\r\n    {\r\n        $this\r\n            ->setName('newscoop:statistics:clean-old')\r\n            ->setDescription('Remove old statistics from database')\r\n            ->setHelp('Find and remove old session and request logs from database.');\r\n    }\r\n\r\n    /**\r\n     * @see Console\\Command\\Command\r\n     */\r\n    protected function execute(Console\\Input\\InputInterface $input, Console\\Output\\OutputInterface $output)\r\n    {\r\n        $em = $this->getApplication()->getKernel()->getContainer()->getService('em');\r\n        $sessionDiff = 3600 * 48;\r\n        $requestTimeDiff = 3600;\r\n\r\n        // select sections older than 48 hours\r\n        $rsm = new \\Doctrine\\ORM\\Query\\ResultSetMapping();\r\n        $rsm->addEntityResult('\\Newscoop\\Entity\\Session', 's');\r\n        $rsm->addFieldResult('s', 'id', 'id');\r\n        $rsm->addFieldResult('s', 'start_time', 'start_time');\r\n        $rsm->addFieldResult('s', 'user_id', 'user_id');\r\n        $rsm->addJoinedEntityResult('\\Newscoop\\Entity\\Request', 'r', 's', null);\r\n        $rsm->addFieldResult('r', 'last_stats_update', 'last_stats_update');\r\n        $rsm->addFieldResult('r', 'session_id', 'session');\r\n        $rsm->addScalarResult('last_update_diff', 'last_update_diff');\r\n\r\n        $sql = \"SELECT\r\n                    s.id,\r\n                    s.start_time,\r\n                    s.user_id,\r\n                    MIN(TIME_TO_SEC(TIMEDIFF(NOW(), r.last_stats_update))) AS last_update_diff\r\n                FROM\r\n                    Sessions s\r\n                LEFT JOIN\r\n                    Requests r ON s.id = r.session_id\r\n                WHERE\r\n                    TIME_TO_SEC(TIMEDIFF(NOW(), s.start_time)) >= $sessionDiff\r\n        \";\r\n        $query = $em->createNativeQuery($sql, $rsm);\r\n        $sessions = $query->getResult();\r\n\r\n        if (count($sessions) == 0 || $sessions[0][0] == null) {\r\n            $output->writeln('<error>There is nothing to remove.</error>');\r\n\r\n            return;\r\n        }\r\n\r\n        foreach ($sessions as $session) {\r\n            if ($session['last_update_diff'] < $requestTimeDiff) {\r\n                // if there was a request for this session less than one hour ago do not process the session\r\n                continue;\r\n            }\r\n\r\n            foreach ($session[0]->getRequests() as $request) {\r\n                $em->remove($request);\r\n                $output->writeln('<info>Request for session with id: '.$session[0]->getId().' was removed.</info>');\r\n            }\r\n\r\n            $em->remove($session[0]);\r\n            $output->writeln('<info>Session with id: '.$session[0]->getId().' was removed.</info>');\r\n        }\r\n\r\n        $em->flush();\r\n\r\n        return true;\r\n    }\r\n}\r\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/CreateOAuthClientCommand.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Tools\\Console\\Command;\n\nuse Symfony\\Component\\Console;\nuse Symfony\\Component\\Console\\Input\\InputArgument;\nuse Symfony\\Component\\Console\\Input\\InputOption;\nuse Symfony\\Component\\Console\\Input\\InputInterface;\nuse Symfony\\Component\\Console\\Output\\OutputInterface;\n\n/**\n * Create oauth client\n */\nclass CreateOAuthClientCommand extends Console\\Command\\Command\n{\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function configure()\n    {\n        $this\n            ->setName('oauth:create-client')\n            ->setDescription('Create oauth2 client.')\n            ->addArgument('name', InputArgument::REQUIRED, 'Client name')\n            ->addArgument('publication', InputArgument::REQUIRED, 'Publication alias (without http, https and www)')\n            ->addArgument('redirectUris', InputArgument::OPTIONAL, 'Redirect uris')\n            ->addOption('test', null, InputOption::VALUE_NONE, 'If set it will create test client with predefined data (for automatic tests)')\n            ->addOption('default', null, InputOption::VALUE_NONE, 'If set it will create default client with predefined name');\n    }\n\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function execute(InputInterface $input, OutputInterface $output)\n    {\n        $container = $this->getApplication()->getKernel()->getContainer();\n        $router = $container->get('router');\n        $em = $container->getService('em');\n        $clientManager = $container->get('fos_oauth_server.client_manager.default');\n        $name = $input->getArgument('name');\n        $publication = $em->getRepository('\\Newscoop\\Entity\\Aliases')\n            ->findOneByName($input->getArgument('publication'))\n            ->getPublication();\n\n        $redirectUris = $input->getArgument('redirectUris');\n        if (is_null($redirectUris)) {\n            $redirectUris = $router->generate('oauth_authentication_result');\n        }\n\n        if ($input->getOption('default')) {\n            $preferencesService = $container->get('preferences');\n            $defaultClientName = 'newscoop_'.$preferencesService->SiteSecretKey;\n            $client = $em->getRepository('\\Newscoop\\GimmeBundle\\Entity\\Client')->findOneByName($defaultClientName);\n            if ($client) {\n                return;\n            }\n        }\n\n        $client = $clientManager->createClient();\n        $client->setAllowedGrantTypes(array('token', 'authorization_code', 'client_credentials', 'password'));\n        $client->setRedirectUris(array($redirectUris));\n        $client->setName($name);\n        $client->setPublication($publication);\n\n        if ($input->getOption('test')) {\n            $client->setRandomId('svdg45ew371vtsdgd29fgvwe5v');\n            $client->setSecret('h48fgsmv0due4nexjsy40jdf3sswwr');\n            $client->setTrusted(true);\n        }\n\n        if ($input->getOption('default')) {\n            $client->setName($defaultClientName);\n            $client->setTrusted(true);\n        }\n\n        $clientManager->updateClient($client);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/CreateUserCommand.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Tools\\Console\\Command;\n\nuse Symfony\\Component\\Console;\nuse Symfony\\Component\\Console\\Input\\InputArgument;\nuse Symfony\\Component\\Console\\Input\\InputOption;\nuse Symfony\\Component\\Console\\Input\\InputInterface;\nuse Symfony\\Component\\Console\\Output\\OutputInterface;\n\n/**\n * Create oauth client\n * Example usage: user:create test@example.org testpassword testuser \"Test Name\" \"Test Surname\" true null 1\n */\nclass CreateUserCommand extends Console\\Command\\Command\n{\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function configure()\n    {\n        $this\n            ->setName('user:create')\n            ->setDescription('Create New user.')\n            ->addArgument('email', InputArgument::REQUIRED, 'User email')\n            ->addArgument('pasword', InputArgument::REQUIRED, 'User password')\n            ->addArgument('username', InputArgument::REQUIRED, 'User login name')\n            ->addArgument('firstName', InputArgument::OPTIONAL, 'User first name')\n            ->addArgument('lastName', InputArgument::OPTIONAL, 'User last name')\n            ->addArgument('is_public', InputArgument::OPTIONAL, 'User is public', true)\n            ->addArgument('publication', InputArgument::OPTIONAL, 'Publication number assigned to user')\n            ->addArgument('roles', InputArgument::IS_ARRAY | InputArgument::OPTIONAL, 'User roles (separate multiple names with a space)');\n    }\n\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function execute(InputInterface $input, OutputInterface $output)\n    {\n        $container = $this->getApplication()->getKernel()->getContainer();\n        $userService = $container->getService('user');\n        $userService->createUser(\n            $input->getArgument('email'),\n            $input->getArgument('pasword'),\n            $input->getArgument('username'),\n            $input->getArgument('firstName'),\n            $input->getArgument('lastName'),\n            $input->getArgument('publication'),\n            $input->getArgument('is_public'),\n            $input->getArgument('roles')\n        );\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/DispatchEventForPluginCommand.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Tools\\Console\\Command;\n\nuse Symfony\\Component\\Console;\nuse Symfony\\Component\\Console\\Input\\InputArgument;\nuse Symfony\\Component\\Console\\Input\\InputInterface;\nuse Symfony\\Component\\Console\\Output\\OutputInterface;\n\n/**\n * Index Reset Command\n */\nclass DispatchEventForPluginCommand extends Console\\Command\\Command\n{\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function configure()\n    {\n        $this\n            ->setName('plugins:dispatch')\n            ->setDescription('Dispatch instalation event for new plugin in new request.')\n            ->addArgument('name', InputArgument::REQUIRED, 'Composer package name, ex. \"vendor/plugin-name\"')\n            ->addArgument('eventName', InputArgument::REQUIRED, 'Event name');\n    }\n\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function execute(InputInterface $input, OutputInterface $output)\n    {\n        $pluginsManager = $this->getApplication()->getKernel()->getContainer()->getService('newscoop.plugins.manager');\n        $name = $input->getArgument('name');\n        $eventName = $input->getArgument('eventName');\n\n        $pluginsManager->dispatchEventForPlugin($name, $eventName, $output);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/EventsNotifierCommand.php",
    "content": "<?php\r\n/**\r\n * @package Newscoop\r\n * @copyright 2011 Sourcefabric o.p.s.\r\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\r\n */\r\n\r\nnamespace Newscoop\\Tools\\Console\\Command;\r\n\r\nuse Symfony\\Component\\Console\\Input\\InputArgument;\r\nuse Symfony\\Component\\Console\\Input\\InputOption;\r\nuse Symfony\\Component\\Console;\r\nuse Newscoop\\Services\\FilesystemService;\r\n\r\n/**\r\n * Send events notifications command\r\n */\r\nclass EventsNotifierCommand extends Console\\Command\\Command\r\n{\r\n    private $em;\r\n\r\n    /**\r\n     * @see Console\\Command\\Command\r\n     */\r\n    protected function configure()\r\n    {\r\n        $this\r\n        ->setName('newscoop:notifier:events')\r\n        ->setDescription('Send events notifications');\r\n    }\r\n\r\n    /**\r\n     * @see Console\\Command\\Command\r\n     */\r\n    protected function execute(Console\\Input\\InputInterface $input, Console\\Output\\OutputInterface $output)\r\n    {\r\n        $this->em = $this->getApplication()->getKernel()->getContainer()->get('doctrine')->getManager();\r\n\r\n        $etcDirectory = APPLICATION_PATH . '/../conf/';\r\n        $notifierTemplate = '_events_notifier.tpl';\r\n        $message = array();\r\n\r\n        if (!FilesystemService::isReadable($etcDirectory . '/install_conf.php')) {\r\n            exit;\r\n        }\r\n\r\n        // includes installation configuration file\r\n        require_once($etcDirectory . '/install_conf.php');\r\n        // includes campsite initialisation\r\n        require_once(APPLICATION_PATH . '/../include/campsite_init.php');\r\n\r\n        if (!is_file($etcDirectory . '/database_conf.php')) {\r\n            $output->writeln('Database configuration file is missing!');\r\n\r\n            return;\r\n        }\r\n\r\n        $message['reply'] = $this->getReplyAddress();\r\n        $autoId = $this->getAutoId();\r\n        $logTimestamp = $autoId->getLogTimestamp();\r\n\r\n        $logs = $this->em->getRepository('Newscoop\\Entity\\Log')\r\n            ->createQueryBuilder('l')\r\n            ->select('l, e, u')\r\n            ->leftJoin('l.eventId', 'e')\r\n            ->leftJoin('l.userId', 'u')\r\n            ->where('l.eventId = e.id')\r\n            ->andWhere('l.userId = u.id')\r\n            ->andWhere('e.notify = :notify')\r\n            ->andWhere('l.created > :logTimestamp')\r\n            ->getQuery()\r\n            ->setParameters(array(\r\n                'logTimestamp' => $logTimestamp,\r\n                'notify' => 'Y'\r\n            ))\r\n            ->getResult();\r\n\r\n        if (count($logs) == 0) {\r\n            return false;\r\n        }\r\n\r\n        $tpl = $this->initSmarty();\r\n        $recipients = $this->getApplication()->getKernel()->getContainer()->getService('notification')->findRecipients();\r\n        $lastTimestamp = null;\r\n\r\n        if ($input->getOption('verbose')) {\r\n            $output->writeln('<info>Number of found logs: ' . count($logs). '.<info>');\r\n        }\r\n\r\n        foreach ($logs as $log) {\r\n            $lastTimestamp = $log->getCreated();\r\n\r\n            $tpl->assign('user_real_name', $log->getUser()->getFirstName());\r\n            $tpl->assign('user_name', $log->getUser()->getUsername());\r\n            $tpl->assign('user_email', $log->getUser()->getEmail());\r\n            $tpl->assign('event_text', $log->getMessage());\r\n            $tpl->assign('event_timestamp', $log->getCreated()->format('Y-m-d h:i:s'));\r\n\r\n            $message['text'] = $tpl->fetch($notifierTemplate);\r\n\r\n            if (count($recipients) <= 0) {\r\n                if ($input->getOption('verbose')) {\r\n                    $output->writeln('<error>There is no recipients.<error>');\r\n                }\r\n\r\n                continue;\r\n            }\r\n\r\n            $message['recipients'] = $recipients;\r\n            $message['subject'] = $log->getEvent()->getName();\r\n\r\n            $this->sendEmail($message);\r\n\r\n            if ($input->getOption('verbose')) {\r\n                $output->writeln('<info>Send message for event: ' . $log->getEvent()->getName() . '.<info>');\r\n            }\r\n        }\r\n\r\n        if ($lastTimestamp != null) {\r\n            $autoId->setLogTimestamp($lastTimestamp);\r\n        }\r\n\r\n        $this->em->flush();\r\n    }\r\n\r\n    /**\r\n     * Reads reply address\r\n     *\r\n     * @return string\r\n     */\r\n    private function getReplyAddress()\r\n    {\r\n        $adminUser = $this->em->getRepository('Newscoop\\Entity\\User')\r\n            ->findOneByUsername('admin');\r\n\r\n        if (!$adminUser) {\r\n            return false;\r\n        }\r\n\r\n        return $adminUser->getEmail();\r\n    }\r\n\r\n    /**\r\n     * @return string\r\n     */\r\n    private function getAutoId()\r\n    {\r\n        $autoId = $this->em->getRepository('Newscoop\\Entity\\AutoId')\r\n            ->createQueryBuilder('a')\r\n            ->getQuery()\r\n            ->getSingleResult();\r\n\r\n        return $autoId;\r\n    }\r\n\r\n    /**\r\n     * @return object $tpl Smarty object\r\n     */\r\n    private function initSmarty()\r\n    {\r\n        $tpl = new \\Smarty();\r\n\r\n        // inits smarty configuration settings\r\n        $tpl->left_delimiter = '{{';\r\n        $tpl->right_delimiter = '}}';\r\n        $tpl->force_compile = true;\r\n        $tpl->config_dir = APPLICATION_PATH . '/../include/smarty/configs';\r\n        $tpl->template_dir = APPLICATION_PATH . '/../themes/system_templates';\r\n        $tpl->compile_dir = APPLICATION_PATH . '/../cache';\r\n        $tpl->auto_literal = false;\r\n\r\n        return $tpl;\r\n    }\r\n\r\n    /**\r\n     * @return boolean true on success, false on failure\r\n     */\r\n    private function sendEmail($message)\r\n    {\r\n        if (!is_array($message) || empty($message)) {\r\n            return false;\r\n        }\r\n\r\n        $mail = new \\Zend_Mail('utf-8');\r\n        $mail->addTo($message['recipients']);\r\n        $mail->setSubject($message['subject']);\r\n        $mail->setBodyText($message['text']);\r\n\r\n        if (!empty($message['reply'])) {\r\n            $mail->setReplyTo($message['reply']);\r\n        }\r\n\r\n        return $mail->send();\r\n    }\r\n}\r\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/GenerateORMSchemaCommand.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Yorick Terweijden <yorick.terweijden@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Tools\\Console\\Command;\n\nuse Symfony\\Component\\Console;\nuse Symfony\\Component\\Console\\Input\\InputArgument;\nuse Symfony\\Component\\Console\\Input\\InputOption;\nuse Symfony\\Component\\Console\\Input\\InputInterface;\nuse Symfony\\Component\\Console\\Output\\OutputInterface;\nuse Doctrine\\DBAL\\DriverManager;\nuse Doctrine\\ORM\\EntityManager;\nuse Doctrine\\DBAL\\Connection;\n\n/**\n * Install newscoop with command line\n */\nclass GenerateORMSchemaCommand extends Console\\Command\\Command\n{\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function configure()\n    {\n        $this\n            ->setName('newscoop:generateOrmSchema')\n            ->setDescription('Generates SQL for an ORM Entity')\n            ->addOption('alter', null, InputOption::VALUE_NONE, 'If set, the task will output ALTER SQL')\n            ->addArgument('entity', InputArgument::IS_ARRAY | InputArgument::REQUIRED, 'Single or Multiple Entities');\n    }\n\n    /**\n     * @see Console\\Command\\Command\n     */\n    public function execute(InputInterface $input, OutputInterface $output)\n    {\n        $container = $this->getApplication()->getKernel()->getContainer();\n        $em = $container->getService('em');\n\n        $entityMetaClasses = array();\n\n        foreach ($input->getArgument('entity') as $entity) {\n            $entityMetaClasses[] = $em->getClassMetadata($entity);\n        }\n\n        $tool = new \\Doctrine\\ORM\\Tools\\SchemaTool($em);\n\n        if ($input->getOption('alter')) {\n            $schema = $tool->getUpdateSchemaSql($entityMetaClasses, true);\n        } else {\n            $schema = $tool->getCreateSchemaSql($entityMetaClasses);\n        }\n\n        array_walk($schema, function(&$value) {\n            $value = $value . ';';\n        });\n\n        $output->writeln($schema);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/GenerateWebcodeCommand.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Tools\\Console\\Command;\n\nuse Symfony\\Component\\Console;\nuse Symfony\\Component\\Console\\Input\\InputArgument;\nuse Symfony\\Component\\Console\\Input\\InputOption;\nuse Symfony\\Component\\Console\\Input\\InputInterface;\nuse Symfony\\Component\\Console\\Output\\OutputInterface;\n\n/**\n * Generates webcode for articles based on their numbers\n */\nclass GenerateWebcodeCommand extends Console\\Command\\Command\n{\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function configure()\n    {\n        $this\n            ->setName('webcode:generate')\n            ->setDescription('Generate webcodes for articles without webcode. It\\'s always safe to run the command without the clear parameters.')\n            ->addArgument('number', InputArgument::OPTIONAL, 'Article number range to start from, e.g. 300', 1)\n            ->addOption('clear', null, InputOption::VALUE_NONE, 'If set, clears webcodes and starts generating webcodes afterwards. Use this the first time.')\n            ->addOption('only-clear', null, InputOption::VALUE_NONE, 'If set, clears webcodes. Doesn\\'t start generation.');\n    }\n\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function execute(InputInterface $input, OutputInterface $output)\n    {\n        $em = $this->getApplication()->getKernel()->getContainer()->getService('em');\n        $webcodeService = $this->getApplication()->getKernel()->getContainer()->getService('webcode');\n\n        $number = (int) $input->getArgument('number');\n\n        try {\n            ini_set('memory_limit', '-1');\n\n            if ($input->getOption('clear') || $input->getOption('only-clear')) {\n                $output->writeln('<info>Clearing webcodes.</info>');\n\n                $qb = $em->createQueryBuilder();\n                $result = $qb->update('Newscoop\\Entity\\Article', 'a')\n                    ->set('a.webcode', 'null')\n                    ->getQuery()\n                    ->execute();\n\n                $output->writeln('<info>Articles clear from webcode: '.$result.'.</info>');\n\n                $result = $qb->update('Newscoop\\Entity\\Webcode', 'w')\n                    ->delete()\n                    ->getQuery()\n                    ->execute();\n\n                $output->writeln('<info>Webcodes cleared: '.$result.'.</info>');\n                if ($input->getOption('only-clear')) {\n                    return 0;\n                }\n            }\n\n            $output->writeln('<info>Generating webcodes. Please wait! It can take up to few minutes, depends on database size.</info>');\n\n            $articlesCount = (int) $em->getRepository('Newscoop\\Entity\\Article')\n                ->createQueryBuilder('a')\n                ->select('COUNT(a.number)')\n                ->where('a.webcode IS NULL')\n                ->getQuery()\n                ->getSingleScalarResult();\n\n            $output->writeln('<info>Articles to generate webcode for: '.$articlesCount.'.</info>');\n\n            $batch = 100;\n            $steps = ($articlesCount > $batch) ? ceil($articlesCount/$batch) : 1;\n\n            for ($i = 0; $i < $steps; $i++) {\n\n                $offset = $i * $batch;\n\n                $articles = $em->getRepository('Newscoop\\Entity\\Article')\n                    ->createQueryBuilder('a')\n                    ->where('a.webcode IS NULL')\n                    ->orderBy('a.number', 'ASC')\n                    ->setFirstResult($offset)\n                    ->setMaxResults($batch)\n                    ->getQuery()\n                    ->getResult();\n\n                foreach ($articles as $key => $article) {\n                    if ($article->getNumber() > $number && $number) {\n                        $this->clearWebcode($em, $article->getNumber(), $article->getLanguage());\n                        $webcodeService->setArticleWebcode($article);\n                    }\n                }\n            }\n\n            $output->writeln('<info>Webcodes generated successfully!</info>');\n            return 0;\n        } catch (\\Exception $e) {\n            $output->writeln('<error>'.$e->getMessage().'</error>');\n            return 1;\n        }\n    }\n\n    /**\n     * Clears old webcode\n     *\n     * @param EntityManager $em            Entity Manager\n     * @param string        $articleNumber Article\n     *\n     * @return void\n     */\n    private function clearWebcode($em, $articleNumber, $articleLanguage)\n    {\n        $webcode = $em->getRepository('Newscoop\\Entity\\Webcode')\n                ->createQueryBuilder('w')\n                ->leftJoin('w.article', 'a')\n                ->where('a.number = :number')\n                ->andWhere('a.language = :language')\n                ->setParameter('number', $articleNumber)\n                ->setParameter('language', $articleLanguage)\n                ->getQuery()\n                ->getOneOrNullResult();\n\n        if ($webcode) {\n            $em->remove($webcode);\n            $em->flush();\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/IndexerCommand.php",
    "content": "<?php\r\n/**\r\n * @package Newscoop\r\n * @copyright 2011 Sourcefabric o.p.s.\r\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\r\n */\r\n\r\nnamespace Newscoop\\Tools\\Console\\Command;\r\n\r\nuse Symfony\\Component\\Console\\Input\\InputArgument;\r\nuse Symfony\\Component\\Console\\Input\\InputOption;\r\nuse Symfony\\Component\\Console;\r\n\r\n\r\n/**\r\n * Index newscoop articles command\r\n */\r\nclass IndexerCommand extends Console\\Command\\Command\r\n{\r\n    /**\r\n     * @see Console\\Command\\Command\r\n     */\r\n    protected function configure()\r\n    {\r\n        $this\r\n        ->setName('newscoop:indexer:run')\r\n        ->setDescription('Run Newscoop Indexer')\r\n        ->addOption('time-limit', null, InputOption::VALUE_OPTIONAL, 'Interrupt the indexing after the specified number of seconds.', null);\r\n    }\r\n\r\n    /**\r\n     * @see Console\\Command\\Command\r\n     */\r\n    protected function execute(Console\\Input\\InputInterface $input, Console\\Output\\OutputInterface $output)\r\n    {\r\n        $res = \\ArticleIndex::RunIndexer($input->getOption('time-limit'));\r\n\r\n        if ($input->getOption('verbose')) {\r\n            $output->writeln($res['articles'] . ' out of ' . $res['total articles'] . ' articles were indexed with a total of ' . $res['words'] . ' words.');\r\n            $output->writeln('Total index time was ' . sprintf(\"%.3f\", $res['total time'] . ' seconds.'));\r\n            $output->writeln('Average article index time was ' . sprintf(\"%.3f\", $res['article time']) . ' seconds.');\r\n        }\r\n    }\r\n}\r\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/InstallNewscoopCommand.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\Tools\\Console\\Command;\n\nuse Symfony\\Component\\Console;\nuse Symfony\\Component\\Console\\Input\\InputArgument;\nuse Symfony\\Component\\Console\\Input\\InputOption;\nuse Symfony\\Component\\Console\\Input\\InputInterface;\nuse Symfony\\Component\\Console\\Output\\OutputInterface;\nuse Doctrine\\DBAL\\DriverManager;\nuse Doctrine\\DBAL\\Connection;\nuse Newscoop\\Installer\\Services;\nuse Symfony\\Component\\Console\\Input\\ArrayInput;\n\ndefine(\"DIR_SEP\", DIRECTORY_SEPARATOR);\n\n/**\n * Install newscoop with command line\n */\nclass InstallNewscoopCommand extends Console\\Command\\Command\n{\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function configure()\n    {\n        $this\n            ->setName('newscoop:install')\n            ->setDescription('Install newscoop with command line')\n            ->addArgument('alias', InputArgument::OPTIONAL, 'Newscoop instance alias', 'newscoop.dev')\n            ->addOption('fix', null, InputOption::VALUE_NONE, 'If set we will try to fix chmods')\n            ->addOption('database_server_name', null, InputOption::VALUE_OPTIONAL, 'Database host', 'localhost')\n            ->addOption('database_name', null, InputOption::VALUE_OPTIONAL, 'Database name', 'newscoop')\n            ->addOption('database_user', null, InputOption::VALUE_OPTIONAL, 'Database user', 'root')\n            ->addOption('database_password', null, InputOption::VALUE_REQUIRED, 'Database password')\n            ->addOption('database_server_port', null, InputOption::VALUE_OPTIONAL, 'Database server port', '3306')\n            ->addOption('database_override', null, InputOption::VALUE_NONE, 'Override existing database')\n            ->addOption('no-client', null, InputOption::VALUE_NONE, 'Don not create OAuth default client')\n            ->addArgument('site_title', InputArgument::OPTIONAL, 'Publication name', 'Newscoop publication')\n            ->addArgument('user_email', InputArgument::OPTIONAL, 'Admin email', 'admin@newscoop.dev')\n            ->addArgument('user_password', InputArgument::OPTIONAL, 'Admin user password', 'password');\n    }\n\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function execute(InputInterface $input, OutputInterface $output)\n    {\n        $container = $this->getApplication()->getKernel()->getContainer();\n        $output->writeln('<info>Welcome to Newscoop Installer.<info>');\n\n        $symfonyRequirements = new \\SymfonyRequirements();\n        $requirements = $symfonyRequirements->getRequirements();\n\n        $missingReq = array();\n        foreach ($requirements as $req) {\n            if (!$req->isFulfilled()) {\n                $missingReq[] = $req->getTestMessage().' - '.$req->getHelpText();\n            }\n        }\n\n        $fixCommonIssues = $input->getOption('fix');\n        if (count($missingReq) > 0 && !$fixCommonIssues) {\n            $output->writeln('<info>Before we start we need to fix some requirements.<info>');\n            $output->writeln('<info>Please read all messages and try to fix them:<info>');\n            foreach ($missingReq as $value) {\n                $output->writeln('<error>'.$value.'<error>');\n            }\n\n            $output->writeln('<error>Use --fix param to fix those errors<error>');\n\n            return;\n        } elseif (count($missingReq) > 0 && $fixCommonIssues) {\n            $newscoopDir = realpath(__DIR__.'/../../../../../');\n            // set chmods for directories\n            exec('chmod -R 777 '.$newscoopDir.'/cache/');\n            exec('chmod -R 777 '.$newscoopDir.'/log/');\n            exec('chmod -R 777 '.$newscoopDir.'/conf/');\n            exec('chmod -R 777 '.$newscoopDir.'/library/Proxy/');\n            exec('chmod -R 777 '.$newscoopDir.'/themes/');\n            exec('chmod -R 777 '.$newscoopDir.'/plugins/');\n            exec('chmod -R 777 '.$newscoopDir.'/public/');\n            exec('chmod -R 777 '.$newscoopDir.'/images/');\n        }\n\n        $dbParams = array(\n            'driver'    => 'pdo_mysql',\n            'charset'   => 'utf8',\n            'host' => $input->getOption('database_server_name'),\n            'dbname' => $input->getOption('database_name'),\n            'port' => $input->getOption('database_server_port'),\n        );\n\n        if ($input->getOption('database_user')) {\n            $dbParams['user'] = $input->getOption('database_user');\n        }\n\n        if ($input->getOption('database_password')) {\n            $dbParams['password'] = $input->getOption('database_password');\n        }\n\n        $databaseService = new Services\\DatabaseService($container->get('logger'));\n        $finishService = new Services\\FinishService();\n        $demositeService = new Services\\DemositeService($container->get('logger'));\n        $connection = DriverManager::getConnection($dbParams);\n        try {\n            $connection->connect();\n            if ($connection->getDatabase() === null) {\n                $databaseService->createNewscoopDatabase($connection);\n            }\n        } catch (\\Exception $e) {\n            if ($e->getCode() == '1049') {\n                $databaseService->createNewscoopDatabase($connection);\n            } elseif (strpos($e->getMessage(), 'database exists') === false) {\n                throw $e;\n            }\n        }\n\n        $output->writeln('<info>Successfully connected to database.<info>');\n\n        $tables = $connection->fetchAll('SHOW TABLES', array());\n        if (count($tables) == 0 || $input->getOption('database_override')) {\n            $databaseService->fillNewscoopDatabase($connection);\n            $databaseService->loadGeoData($connection);\n            $databaseService->saveDatabaseConfiguration($connection);\n        } else {\n            throw new \\Exception('There is already a database named '.$connection->getDatabase().'. If you are sure to overwrite it, use option --database_override. If not, just change the Database Name and continue.', 1);\n        }\n\n        $command = $this->getApplication()->find('cache:clear');\n        $arguments = array(\n            'command' => 'cache:clear',\n            '--no-warmup' => true,\n        );\n\n        $inputCache = new ArrayInput($arguments);\n        $command->run($inputCache, $output);\n\n        $databaseService->installDatabaseSchema($connection, $input->getArgument('alias'), $input->getArgument('site_title'));\n        $output->writeln('<info>Database schema has been processed successfully.<info>');\n        $demositeService->installEmptyTheme();\n        $output->writeln('<info>Empty theme has been installed successfully.<info>');\n        $clearEm = \\Doctrine\\ORM\\EntityManager::create($connection, $container->get('em')->getConfiguration(), $connection->getEventManager());\n        $finishService->saveCronjobs(new \\Newscoop\\Services\\SchedulerService($clearEm));\n        $output->writeln('<info>Cronjobs have been saved successfully<info>');\n        $finishService->generateProxies();\n        $output->writeln('<info>Proxies have been generated successfully<info>');\n        $finishService->installAssets();\n        $output->writeln('<info>Assets have been installed successfully<info>');\n        $finishService->saveInstanceConfig(array(\n            'site_title' => $input->getArgument('site_title'),\n            'user_email' => $input->getArgument('user_email'),\n            'recheck_user_password' => $input->getArgument('user_password'),\n        ), $connection);\n        $output->writeln('<info>Config have been saved successfully.<info>');\n        if (!$input->getOption('no-client')) {\n            $finishService->createDefaultOauthClient($input->getArgument('alias'));\n            $output->writeln('<info>Default OAuth client has been created successfully.<info>');\n        }\n\n        $output->writeln('<info>Newscoop is installed.<info>');\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/InstallPluginCommand.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Tools\\Console\\Command;\n\nuse Symfony\\Component\\Console;\nuse Symfony\\Component\\Console\\Input\\InputArgument;\nuse Symfony\\Component\\Console\\Input\\InputInterface;\nuse Symfony\\Component\\Console\\Output\\OutputInterface;\n\n/**\n * Index Reset Command\n */\nclass InstallPluginCommand extends Console\\Command\\Command\n{\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function configure()\n    {\n        $this\n            ->setName('plugins:install')\n            ->setDescription('Install Newscoop Plugin.')\n            ->addArgument('name', InputArgument::REQUIRED, 'Composer package name, ex. \"vendor/plugin-name\"')\n            ->addArgument('version', InputArgument::OPTIONAL, 'Composer package version, ex. \"dev-master\"', \"*\");\n    }\n\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function execute(InputInterface $input, OutputInterface $output)\n    {\n        $pluginsManager = $this->getApplication()->getKernel()->getContainer()->getService('newscoop.plugins.manager');\n        $name = $input->getArgument('name');\n        $version = $input->getArgument('version');\n\n        $pluginsManager->installPlugin($name, $version, $output);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/LogMaintenanceCommand.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Tools\\Console\\Command;\n\nuse Symfony\\Component\\Console\\Input\\InputArgument;\nuse Symfony\\Component\\Console\\Input\\InputOption;\nuse Symfony\\Component\\Console;\n\n/**\n * Log maintenance command\n */\nclass LogMaintenanceCommand extends Console\\Command\\Command\n{\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function configure()\n    {\n        $this\n        ->setName('log:maintenance')\n        ->setDescription('Simple log maintenance (Log and audit_event tables in db).')\n        ->setHelp(<<<EOT\nLog maintenance.\nEOT\n        );\n    }\n\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function execute(Console\\Input\\InputInterface $input, Console\\Output\\OutputInterface $output)\n    {\n        $audit = $this->getApplication()->getKernel()->getContainer()->getService('audit.maintenance');\n        $audit->flush();\n\n        if ($input->getOption('verbose')) {\n            $output->writeln('Log data processed.');\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/ReloadRenditionsCommand.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Tools\\Console\\Command;\n\nuse Symfony\\Component\\Console;\nuse Symfony\\Component\\Console\\Input\\InputInterface;\nuse Symfony\\Component\\Console\\Output\\OutputInterface;\n\n/**\n * Reload renditions Command\n */\nclass ReloadRenditionsCommand extends Console\\Command\\Command\n{\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function configure()\n    {\n        $this\n            ->setName('renditions:reload')\n            ->setDescription('Reload installed renditions.');\n    }\n\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function execute(InputInterface $input, OutputInterface $output)\n    {\n        $this->getApplication()->getKernel()->getContainer()->getService('image.rendition')->reloadRenditions();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/RemovePluginCommand.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Tools\\Console\\Command;\n\nuse Symfony\\Component\\Console;\nuse Symfony\\Component\\Console\\Input\\InputArgument;\nuse Symfony\\Component\\Console\\Input\\InputInterface;\nuse Symfony\\Component\\Console\\Output\\OutputInterface;\n\n/**\n * Index Reset Command\n */\nclass RemovePluginCommand extends Console\\Command\\Command\n{\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function configure()\n    {\n        $this\n            ->setName('plugins:remove')\n            ->setDescription('Remove Newscoop Plugin.')\n            ->addArgument('name', InputArgument::REQUIRED, 'Composer package name \"vendor/plugin-name\"');\n    }\n\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function execute(InputInterface $input, OutputInterface $output)\n    {\n        $pluginsManager = $this->getApplication()->getKernel()->getContainer()->getService('newscoop.plugins.manager');\n        $name = $input->getArgument('name');\n\n        $pluginsManager->removePlugin($name, $output);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/SchedulerManagerCommand.php",
    "content": "<?php\n/**\n * @package   Newscoop\n * @author    Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license   http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Tools\\Console\\Command;\n\nuse Symfony\\Component\\Console;\nuse Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand;\n\n/**\n * Runs all defined, enabled cron jobs\n */\nclass SchedulerManagerCommand extends ContainerAwareCommand\n{\n    /**\n     */\n    protected function configure()\n    {\n        $this\n            ->setName('scheduler:run')\n            ->setDescription('Runs all defined, enabled cron jobs');\n    }\n\n    /**\n     */\n    protected function execute(Console\\Input\\InputInterface $input, Console\\Output\\OutputInterface $output)\n    {\n        $systemPreferences = $this->getContainer()->getService('system_preferences_service');\n        $schedulerService = $this->getContainer()->getService('newscoop.scheduler');\n        $cacheService = $this->getContainer()->getService('newscoop.cache');\n        $em = $this->getContainer()->getService('em');\n\n        $jobsCount = $em->getRepository('Newscoop\\Entity\\CronJob')\n            ->createQueryBuilder('j')\n            ->select('count(j)')\n            ->where('j.enabled = true')\n            ->getQuery()\n            ->getSingleScalarResult();\n\n        $jobs = array();\n        $cacheKey = $cacheService->getCacheKey(array('jobs_count', $jobsCount), 'cronjobs');\n        if ($cacheService->contains($cacheKey)) {\n            $jobs = $cacheService->fetch($cacheKey);\n        } else {\n            $jobs = $em->getRepository('Newscoop\\Entity\\CronJob')\n                ->createQueryBuilder('j')\n                ->where('j.enabled = true')\n                ->getQuery()\n                ->getArrayResult();\n\n            $cacheService->save($cacheKey, $jobs);\n        }\n\n        if (!$systemPreferences->CronJobsNotificationEmail) {\n            $systemPreferences->CronJobsNotificationEmail = $systemPreferences->EmailFromAddress;\n        }\n\n        try {\n            foreach ($jobs as $job) {\n                unset($job['id']);\n                unset($job['createdAt']);\n                unset($job['detailsUrl']);\n                if ($job['sendMail']) {\n                    $job['recipients'] = $systemPreferences->CronJobsNotificationEmail;\n\n                    if ($systemPreferences->CronJobsSenderEmail) {\n                        $job['smtpSender'] = $systemPreferences->CronJobsSenderEmail;\n                    }\n\n                    if ($systemPreferences->CronJobsSenderName) {\n                        $job['smtpSenderName'] = $systemPreferences->CronJobsSenderName;\n                    }\n                }\n\n                if (is_null($job['output'])) {\n                    $job['output'] = realpath(__DIR__ . '/../../../../../log') . '/cron_job_' . $this->cleanString($job['name']). '.log';\n                }\n\n                unset($job['sendMail']);\n                $schedulerService->addSchedulerJob($job['name'], array_filter($job));\n            }\n\n            $schedulerService->run();\n        } catch (\\Exception $e) {\n            $output->writeln(\"<error>\" . $e->getMessage() . \"</error>\");\n        }\n    }\n\n    /**\n     * Remove special chars from string\n     *\n     * @param  string $string String from which special chars will be removed\n     *\n     * @return string         Clean string\n     */\n    private function cleanString($string)\n    {\n        $string = str_replace(' ', '-', strtolower($string));\n\n        return preg_replace('/[^A-Za-z0-9\\-]/', '', $string);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/SendStatsCommand.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Tools\\Console\\Command;\n\nuse Symfony\\Component\\Console\\Input\\InputArgument;\nuse Symfony\\Component\\Console\\Input\\InputOption;\nuse Symfony\\Component\\Console;\n\n/**\n * Send stats command\n */\nclass SendStatsCommand extends Console\\Command\\Command\n{\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function configure()\n    {\n        $this\n        ->setName('newscoop:stats:send')\n        ->setDescription('Sends stats')\n        ->setHelp(<<<EOT\nSends stats\nEOT\n        );\n    }\n\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function execute(Console\\Input\\InputInterface $input, Console\\Output\\OutputInterface $output)\n    {   \n        $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n        $supportSend = $preferencesService->support_send;\n        if ($supportSend) {\n            $stats = $this->getApplication()->getKernel()->getContainer()->getService('stat')->getAll();\n            \n            $statsUrl = 'http://stat.sourcefabric.org';\n            $parameters = array('p' => 'newscoop');\n            $parameters['installation_id'] = $stats['installationId'];\n            $parameters['server'] = $preferencesService->support_stats_server;\n            $parameters['ip_address'] = $preferencesService->support_stats_ip_address;\n            $parameters['ram_used'] = $stats['ramUsed'];\n            $parameters['ram_total'] = $preferencesService->support_stats_ram_total;\n            $parameters['version'] = $stats['version'];\n            $parameters['install_method'] = $stats['installMethod'];\n            $parameters['publications'] = $stats['publications'];\n            $parameters['issues'] = $stats['issues'];\n            $parameters['sections'] = $stats['sections'];\n            $parameters['articles'] = $stats['articles'];\n            $parameters['articles_published'] = $stats['articlesPublished'];\n            $parameters['languages'] = $stats['languages'];\n            $parameters['authors'] = $stats['authors'];\n            $parameters['subscribers'] = $stats['subscribers'];\n            $parameters['backend_users'] = $stats['backendUsers'];\n            $parameters['images'] = $stats['images'];\n            $parameters['attachments'] = $stats['attachments'];\n            $parameters['topics'] = $stats['topics'];\n            $parameters['comments'] = $stats['comments'];\n            $parameters['hits'] = $stats['hits'];\n            \n            $client = new \\Zend_Http_Client();\n            $client->setUri($statsUrl);\n            $client->setParameterPost($parameters);\n            $client->request('POST');\n        }\n    }\n}"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/SubscriptionsNotifierCommand.php",
    "content": "<?php\r\n/**\r\n * @package Newscoop\r\n * @copyright 2011 Sourcefabric o.p.s.\r\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\r\n */\r\n\r\nnamespace Newscoop\\Tools\\Console\\Command;\r\n\r\nuse Symfony\\Component\\Console\\Input\\InputArgument;\r\nuse Symfony\\Component\\Console\\Input\\InputOption;\r\nuse Symfony\\Component\\Console;\r\nuse Newscoop\\Services\\FilesystemService;\r\n\r\n/**\r\n * Send subscriptions notifications command\r\n */\r\nclass SubscriptionsNotifierCommand extends Console\\Command\\Command\r\n{\r\n    private $em;\r\n\r\n    /**\r\n     * @see Console\\Command\\Command\r\n     */\r\n    protected function configure()\r\n    {\r\n        $this\r\n        ->setName('newscoop:notifier:subscriptions')\r\n        ->setDescription('Send subscriptions notifications');\r\n    }\r\n\r\n    /**\r\n     * @see Console\\Command\\Command\r\n     */\r\n    protected function execute(Console\\Input\\InputInterface $input, Console\\Output\\OutputInterface $output)\r\n    {\r\n        $this->em = $this->getApplication()->getKernel()->getContainer()->getService('em');\r\n\r\n        $etcDirectory = APPLICATION_PATH . '/../conf/';\r\n        $notifierTemplate = '_subscription_notifier.tpl';\r\n        $message = array();\r\n        $notifiedIndex = false;\r\n\r\n        if (!FilesystemService::isReadable($etcDirectory . '/install_conf.php')) {\r\n            exit;\r\n        }\r\n\r\n        require_once($etcDirectory . '/install_conf.php');\r\n        require_once(APPLICATION_PATH . '/../include/campsite_init.php');\r\n\r\n        if (!is_file($etcDirectory . '/database_conf.php')) {\r\n            $output->writeln('Database configuration file is missed!');\r\n\r\n            return;\r\n        }\r\n\r\n        $message['reply'] = $this->getReplyAddress();\r\n        $endingSubscriptions = $this->getEndingSubscriptions();\r\n\r\n        if (count($endingSubscriptions) == 0) {\r\n            if ($input->getOption('verbose')) {\r\n                $output->writeln('<info>There is no ending subscriptions.<info>');\r\n            }\r\n\r\n            return;\r\n        }\r\n\r\n        $tpl = $this->initSmarty();\r\n        $notifiedIndex = 0;\r\n        foreach ($endingSubscriptions as $subscription) {\r\n            $issueMaxNumber = $this->getIssueMaxNumber($subscription->getPublication()->getId(), $subscription->getPublication()->getDefaultLanguage()->getId());\r\n            $subscriptionSectionToUpdate = $this->em->getRepository('Newscoop\\Subscription\\Section')\r\n                ->createQueryBuilder('ss')\r\n                ->where('ss.subscription = :subscription')\r\n                ->setParameter('subscription', $subscription->getId());\r\n\r\n            if ($issueMaxNumber === false) {\r\n                if ($input->getOption('verbose')) {\r\n                    $output->writeln('<info>There is o issues for publication default language.<info>');\r\n                }\r\n\r\n                return;\r\n            }\r\n\r\n            $sectionsCount = $this->getSectionCounts($subscription, $issueMaxNumber);\r\n            $subscritpionsSections = $this->getSubscritpionsSections($subscription->getId());\r\n            if ($subscritpionsSections <= 0) {\r\n                continue;\r\n            }\r\n\r\n            $text = '';\r\n            $notify = false;\r\n            $subsSections = 0;\r\n            $counter = 0;\r\n            $sections = '';\r\n\r\n            foreach ($subscritpionsSections as $subscriptionSection) {\r\n                $startDate = $subscriptionSection[0]->getStartDate();\r\n                $formatedStartDate = $subscriptionSection['formated_start_date'];\r\n                $paidDays = $subscriptionSection[0]->getPaidDays();\r\n                $toDaysStartDate = $subscriptionSection['to_days_start_date'];\r\n                $toDaysNow = $subscriptionSection['to_days_now'];\r\n                $formatedEndDate = $subscriptionSection['formated_end_date'];\r\n\r\n                if ($toDaysNow > ($paidDays + $toDaysStartDate)) {\r\n                    continue;\r\n                }\r\n\r\n                $remainedDays = $paidDays + $toDaysStartDate - $toDaysNow;\r\n                if ($remainedDays > 14 || $remainedDays <= 0) {\r\n                    continue;\r\n                }\r\n\r\n                $notify = true;\r\n                if (count($subscritpionsSections) == 1) {\r\n                    $subSectionsCount = $this->em->getRepository('Newscoop\\Subscription\\Section')\r\n                        ->createQueryBuilder('ss')\r\n                        ->select('ss')\r\n                        ->where('ss.subscription = :subscription')\r\n                        ->andWhere('ss.noticeSent = :noticeSent')\r\n                        ->andWhere('ss.startDate = :startDate')\r\n                        ->andWhere('ss.paidDays = :paidDays')\r\n                        ->getQuery()\r\n                        ->setParameters(array(\r\n                            'subscription' =>$subscription->getId(),\r\n                            'noticeSent' => 'N',\r\n                            'startDate' => $startDate,\r\n                            'paidDays' => $paidDays\r\n                        ))\r\n                        ->getResult();\r\n                }\r\n\r\n                if ($counter == 0) {\r\n                    $subsType = ($subscription->getType() == 'P') ? 'paid' : 'trial';\r\n                    $tpl->assign('user_title', $subscription->getUser()->getFirstName());\r\n                    $tpl->assign('user_name', $subscription->getUser()->getFirstName());\r\n                    $tpl->assign('subs_type', $subsType);\r\n                    $tpl->assign('subs_date', $formatedStartDate);\r\n                    $tpl->assign('publication_name', $subscription->getPublication()->getName());\r\n                }\r\n\r\n                if ($subsSections == $sectionsCount && count($subscritpionsSections) == 1) {\r\n                    $tpl->assign('subs_expire', 1);\r\n                    $tpl->assign('subs_expire_date', $formatedEndDate);\r\n                    $tpl->assign('subs_remained_days', $remainedDays);\r\n                } else {\r\n                    $sectionData = $this->em->getRepository('Newscoop\\Entity\\Section')\r\n                        ->createQueryBuilder('s')\r\n                        ->select('s.name, s.number')\r\n                        ->from('Newscoop\\Subscription\\Section', 'ss')\r\n                        ->andWhere('ss.subscription = :subscription')\r\n                        ->andWhere('ss.noticeSent = :noticeSent')\r\n                        ->andWhere('ss.startDate = :startDate')\r\n                        ->andWhere('ss.paidDays = :paidDays')\r\n                        ->andWhere('s.publication = :publication')\r\n                        ->andWhere('s.issue = :issue')\r\n                        ->andWhere('s.language = :language')\r\n                        ->andWhere('s.number = ss.sectionNumber')\r\n                        ->getQuery()\r\n                        ->setParameters(array(\r\n                            'subscription' =>$subscription->getId(),\r\n                            'noticeSent' => 'N',\r\n                            'startDate' => $startDate,\r\n                            'paidDays' => $paidDays,\r\n                            'publication' => $subscription->getPublication()->getId(),\r\n                            'issue' => $issueMaxNumber,\r\n                            'language' => $subscription->getPublication()->getDefaultLanguage()\r\n                        ))\r\n                        ->getResult();\r\n\r\n                    if ($counter == 0) {\r\n                        $tpl->assign('subs_expire_plan', 1);\r\n                    }\r\n\r\n                    $expirePlan = '\\t- ';\r\n                    $isFirst = true;\r\n\r\n                    foreach ($sectionData as $key => $section) {\r\n                        if (!$isFirst) {\r\n                            $expirePlan .= ', ';\r\n                        } else {\r\n                            $isFirst = false;\r\n                        }\r\n\r\n                        $subscriptionSectionToUpdate->orWhere('ss.section = :sectionNumber_'.$key);\r\n                        $subscriptionSectionToUpdate->setParameter('sectionNumber_'.$key, $section['number']);\r\n\r\n                        $expirePlan .= '\"' . $section['name'] . '\"';\r\n                    }\r\n\r\n                    $tpl->assign('expire_plan', $expirePlan);\r\n\r\n                    $tpl->assign('subs_expire_date', $formatedEndDate);\r\n                    $tpl->assign('subs_remained_days', $remainedDays);\r\n                    $tpl->assign('subs_start_date', $formatedStartDate);\r\n\r\n                    $counter++;\r\n                }\r\n            }\r\n\r\n            $tpl->assign('site', $subscription->getPublication()->getDefaultAlias()->getName());\r\n            if (!$notify) {\r\n                continue;\r\n            }\r\n\r\n            $message['recipients'] = array($subscription->getUser()->getEmail());\r\n            $message['text'] = $tpl->fetch($notifierTemplate);\r\n            $message['subject'] = 'Subscription to ' . $subscription->getPublication()->getName();\r\n\r\n            if ($this->sendEmail($message) == false) {\r\n                continue;\r\n            }\r\n\r\n            $subscriptionSectionToUpdate = $subscriptionSectionToUpdate->getQuery()->getResult();\r\n\r\n            foreach ($subscriptionSectionToUpdate as $updateMe) {\r\n                $updateMe->setNoticeSent('Y');\r\n            }\r\n            $this->em->flush();\r\n\r\n            $notifiedIndex++;\r\n        }\r\n\r\n        if ($notifiedIndex > 0) {\r\n            if ($input->getOption('verbose')) {\r\n                $output->writeln('<info>'.$notifiedIndex . ' user(s) notified.<info>');\r\n            }\r\n        }\r\n    }\r\n\r\n    /**\r\n     * Reads reply address\r\n     *\r\n     * @return string\r\n     */\r\n    private function getReplyAddress()\r\n    {\r\n        $adminUser = $this->em->getRepository('Newscoop\\Entity\\User')\r\n            ->findOneByUsername('admin');\r\n\r\n        if (!$adminUser) {\r\n            return false;\r\n        }\r\n\r\n        return $adminUser->getEmail();\r\n    }\r\n\r\n    /**\r\n     * Get ending subscriptions\r\n     * @return Newscoop\\Subscription\\Subscription\r\n     */\r\n    private function getEndingSubscriptions()\r\n    {\r\n        $subscriptions = $this->em->getRepository('Newscoop\\Subscription\\Subscription')\r\n            ->createQueryBuilder('s')\r\n            ->select('s, p, u, a')\r\n            ->leftJoin('s.publication', 'p')\r\n            ->leftJoin('s.user', 'u')\r\n            ->leftJoin('p.defaultAlias', 'a')\r\n            ->where('s.active = :active')\r\n            ->andWhere('s.toPay = :toPay')\r\n            ->getQuery()\r\n            ->setParameters(array(\r\n                'active' => 'Y',\r\n                'toPay' => '0.00'\r\n            ))\r\n            ->getResult();\r\n\r\n        return $subscriptions;\r\n    }\r\n\r\n    private function getIssueMaxNumber($publicationId, $languageId)\r\n    {\r\n        $issue = $this->em->getRepository('Newscoop\\Entity\\Issue')\r\n            ->createQueryBuilder('i')\r\n            ->select('MAX(i.number) AS MaxNumber')\r\n            ->where('i.publication = :publication')\r\n            ->andWhere('i.language = :language')\r\n            ->andWhere('i.workflowStatus = :workflowStatus')\r\n            ->getQuery()\r\n            ->setParameters(array(\r\n                'publication' => $publicationId,\r\n                'language' => $languageId,\r\n                'workflowStatus' => 'Y'\r\n            ))\r\n            ->getScalarResult();\r\n\r\n        if (count($issue) > 0) {\r\n            return $issue[0]['MaxNumber'];\r\n        }\r\n\r\n        return false;\r\n    }\r\n\r\n    private function getSectionCounts($subscription, $issueMaxNumber)\r\n    {\r\n        $sectionsCount = $this->em->getRepository('Newscoop\\Entity\\Section')\r\n            ->createQueryBuilder('s')\r\n            ->select('COUNT(s) AS numberOfSections')\r\n            ->where('s.publication = :publicationId')\r\n            ->andWhere('s.issue = :issueId')\r\n            ->andWhere('s.language = :language')\r\n            ->setParameters(array(\r\n                'publicationId' => $subscription->getPublication()->getId(),\r\n                'issueId' => $issueMaxNumber,\r\n                'language' => $subscription->getPublication()->getDefaultLanguage()->getId()\r\n            ))\r\n            ->getQuery()\r\n            ->getScalarResult();\r\n\r\n        return $sectionsCount;\r\n    }\r\n\r\n    private function getSubscritpionsSections($subscriptionId)\r\n    {\r\n        $sectionsCount = $this->em->getRepository('Newscoop\\Subscription\\Section')\r\n            ->createQueryBuilder('s');\r\n\r\n        // select sections older than 48 hours\r\n        $rsm = new \\Doctrine\\ORM\\Query\\ResultSetMapping();\r\n        $rsm->addEntityResult('\\Newscoop\\Subscription\\Section', 'ss');\r\n        $rsm->addFieldResult('ss', 'StartDate', 'startDate');\r\n        $rsm->addFieldResult('ss', 'PaidDays', 'paidDays');\r\n        $rsm->addFieldResult('ss', 'IdSubscription', 'subscription');\r\n        $rsm->addFieldResult('ss', 'NoticeSent', 'noticeSent');\r\n        $rsm->addScalarResult('formated_start_date', 'formated_start_date');\r\n        $rsm->addScalarResult('to_days_start_date', 'to_days_start_date');\r\n        $rsm->addScalarResult('to_days_now', 'to_days_now');\r\n        $rsm->addScalarResult('formated_end_date', 'formated_end_date');\r\n\r\n        $sql = \"SELECT \r\n                    ss.StartDate, \r\n                    DATE_FORMAT(ss.StartDate, '%M %D, %Y') AS formated_start_date, \r\n                    ss.PaidDays, \r\n                    TO_DAYS(ss.StartDate) AS to_days_start_date, \r\n                    TO_DAYS(now()) AS to_days_now, \r\n                    DATE_FORMAT(ADDDATE(ss.StartDate, INTERVAL ss.PaidDays DAY), '%M %D, %Y') AS formated_end_date\r\n                FROM \r\n                    SubsSections ss\r\n                WHERE \r\n                    ss.IdSubscription =  $subscriptionId \r\n                AND \r\n                    ss.NoticeSent = 'N' \r\n                GROUP BY \r\n                    ss.StartDate, ss.PaidDays\r\n        \";\r\n\r\n        $query = $this->em->createNativeQuery($sql, $rsm);\r\n\r\n        return $query->getResult();\r\n    }\r\n\r\n    /**\r\n     * @return object $tpl Smarty object\r\n     */\r\n    private function initSmarty()\r\n    {\r\n        $tpl = new \\Smarty();\r\n\r\n        // inits smarty configuration settings\r\n        $tpl->left_delimiter = '{{';\r\n        $tpl->right_delimiter = '}}';\r\n        $tpl->force_compile = true;\r\n        $tpl->config_dir = APPLICATION_PATH . '/../include/smarty/configs';\r\n        $tpl->template_dir = APPLICATION_PATH . '/../themes/system_templates';\r\n        $tpl->compile_dir = APPLICATION_PATH . '/../cache';\r\n\r\n        return $tpl;\r\n    }\r\n\r\n    /**\r\n     * Send notify email\r\n     *\r\n     * @param array $message\r\n     *\r\n     * @return boolean true on success, false on failure\r\n     */\r\n    private function sendEmail($message)\r\n    {\r\n        if (!is_array($message) || empty($message)) {\r\n            return false;\r\n        }\r\n\r\n        $mail = new \\Zend_Mail('utf-8');\r\n        $mail->addTo($message['recipients']);\r\n        $mail->setSubject($message['subject']);\r\n        $mail->setBodyText($message['text']);\r\n\r\n        if (!empty($message['reply'])) {\r\n            $mail->setReplyTo($message['reply']);\r\n        }\r\n\r\n        return $mail->send();\r\n    }\r\n}\r\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/UpdateAutoloadCommand.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Tools\\Console\\Command;\n\nuse Symfony\\Component\\Console\\Input\\InputArgument;\nuse Symfony\\Component\\Console\\Input\\InputOption;\nuse Symfony\\Component\\Console;\n\n/**\n * Autoload map update command\n */\nclass UpdateAutoloadCommand extends Console\\Command\\Command\n{\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function configure()\n    {\n        $this\n        ->setName('autoload:update')\n        ->setDescription('Update composer autoload map.');\n    }\n\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function execute(Console\\Input\\InputInterface $input, Console\\Output\\OutputInterface $output)\n    {\n        exec('php composer.phar dump-autoload && echo \"Found\" || echo \"Not Found\"', $out);\n        if ( $out[0] == \"Not Found\" ) {\n            exec('curl -s https://getcomposer.org/installer | php');\n            exec('php composer.phar dump-autoload');\n        }\n\n        $output->writeln('Autoload dumped.');\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/UpdateImageStorageCommand.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Tools\\Console\\Command;\n\nuse Symfony\\Component\\Console\\Input\\InputArgument;\nuse Symfony\\Component\\Console\\Input\\InputOption;\nuse Symfony\\Component\\Console;\n\n/**\n * Update Image Storage Command\n */\nclass UpdateImageStorageCommand extends Console\\Command\\Command\n{\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function configure()\n    {\n        $this\n            ->setName('image:update-storage')\n            ->setDescription('Move images into subfolders.')\n            ->setHelp('Move images from images/ folder into subfolders like images/a/, images/b/ etc.');\n    }\n\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function execute(Console\\Input\\InputInterface $input, Console\\Output\\OutputInterface $output)\n    {\n        $this->getApplication()->getKernel()->getContainer()->getService('image.update_storage')->updateStorage();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/UpdateIndexCommand.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Tools\\Console\\Command;\n\nuse Symfony\\Component\\Console\\Input\\InputArgument;\nuse Symfony\\Component\\Console\\Input\\InputOption;\nuse Symfony\\Component\\Console;\nuse Newscoop\\Tools\\Console\\Command\\AbstractIndexCommand;\n\n/**\n * Index update command\n */\nclass UpdateIndexCommand extends AbstractIndexCommand\n{\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function configure()\n    {\n        $this\n        ->setName('index:update')\n        ->setDescription('Update search index.')\n        ->addArgument('type', InputArgument::OPTIONAL, 'Types to index', 'all')\n        ->addArgument('limit', InputArgument::OPTIONAL, 'Items batch limit', 50)\n        ->setHelp('');\n    }\n\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function execute(Console\\Input\\InputInterface $input, Console\\Output\\OutputInterface $output)\n    {\n        // This is needed to surpress STRICT errors, else everything will FAIL :'(\n        error_reporting(E_ALL & ~E_DEPRECATED & ~E_NOTICE & ~E_STRICT);\n\n        global $g_ado_db;\n        $container = $this->getApplication()->getKernel()->getContainer();\n        $g_ado_db = $container->get('doctrine.adodb');\n\n        $type = $input->getArgument('type');\n        $indexers = $this->getIndexers();\n\n        if ($type !== 'all' && !array_key_exists($type, $indexers)) {\n\n            $output->writeln(\n                sprintf(\n                    '<error>Invalid value for parameter type specified.</error> Valid values are: all, %s',\n                    implode(', ', array_keys($indexers))\n                )\n            );\n        } else {\n\n            $output->writeln('Indexing started.');\n\n            if ($type === 'all') {\n                foreach ($indexers as $name => $indexer) {\n                    $indexer->update($input->getArgument('limit'));\n                }\n            } else {\n                $indexers[$type]->update($input->getArgument('limit'));\n            }\n\n            $output->writeln('Indexer is done.');\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/UpdatePluginCommand.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Tools\\Console\\Command;\n\nuse Symfony\\Component\\Console;\nuse Symfony\\Component\\Console\\Input\\InputArgument;\nuse Symfony\\Component\\Console\\Input\\InputInterface;\nuse Symfony\\Component\\Console\\Output\\OutputInterface;\n\n/**\n * Index Reset Command\n */\nclass UpdatePluginCommand extends Console\\Command\\Command\n{\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function configure()\n    {\n        $this\n            ->setName('plugins:update')\n            ->setDescription('Update Newscoop Plugin.')\n            ->addArgument('name', InputArgument::REQUIRED, 'Composer package name, ex. \"vendor/plugin-name\"')\n            ->addArgument('version', InputArgument::OPTIONAL, 'Composer package version, ex. \"dev-master\"', \"*\");\n    }\n\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function execute(InputInterface $input, OutputInterface $output)\n    {\n        $pluginsManager = $this->getApplication()->getKernel()->getContainer()->getService('newscoop.plugins.manager');\n        $name = $input->getArgument('name');\n        $version = $input->getArgument('version');\n\n        $pluginsManager->updatePlugin($name, $version, $output);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/UpgradePluginsCommand.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Tools\\Console\\Command;\n\nuse Symfony\\Component\\Console;\nuse Symfony\\Component\\Console\\Input\\InputOption;\nuse Symfony\\Component\\Console\\Input\\InputInterface;\nuse Symfony\\Component\\Console\\Output\\OutputInterface;\n\n/**\n * Update composer.json with plugins after Newscoop upgrade.\n */\nclass UpgradePluginsCommand extends Console\\Command\\Command\n{\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function configure()\n    {\n        $this\n            ->setName('plugins:upgrade')\n            ->setDescription('Update composer.json with plugins after Newscoop upgrade.')\n            ->addOption('update', null, InputOption::VALUE_OPTIONAL, 'Run composer update for reverted plugins.');\n    }\n\n    /**\n     * @see Console\\Command\\Command\n     */\n    protected function execute(InputInterface $input, OutputInterface $output)\n    {\n        $pluginsManager = $this->getApplication()->getKernel()->getContainer()->getService('newscoop.plugins.manager');\n\n        $pluginsManager->upgrade($output, $input->getOption('update'));\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Command/UserGarbageCollectionCommand.php",
    "content": "<?php\n/**\n * @package   Newscoop\n * @author    Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license   http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Tools\\Console\\Command;\n\nuse Symfony\\Component\\Console\\Input\\InputArgument;\nuse Symfony\\Component\\Console\\Input\\InputOption;\nuse Symfony\\Component\\Console;\nuse Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand;\n\n/**\n * Removes obsolete pending users data\n */\nclass UserGarbageCollectionCommand extends ContainerAwareCommand\n{\n    /**\n     */\n    protected function configure()\n    {\n        $this\n        ->setName('user:garbage')\n        ->setDescription('Users Garbage Collection')\n        ->setHelp(\"Removes obsolete pending users data\")\n        ->addOption('force', null, InputOption::VALUE_NONE, 'If set, foreces command execution omitting system preferences settings.');\n    }\n\n    /**\n     */\n    protected function execute(Console\\Input\\InputInterface $input, Console\\Output\\OutputInterface $output)\n    {\n        $systemPreferences = $this->getContainer()->getService('system_preferences_service');\n        $text = '<info>Obsolete pending users successfuly removed.</info>';\n\n        try {\n            if ($input->getOption('force')) {\n                $this->getContainer()->getService('user.garbage')->run($systemPreferences->get('userGarbageDays'));\n                if ($input->getOption('verbose')) {\n                    $output->writeln($text);\n                }\n            } elseif ($systemPreferences->get('userGarbageActive') === 'Y' && !is_null($systemPreferences->get('userGarbageActive'))) {\n                $this->getContainer()->getService('user.garbage')->run($systemPreferences->get('userGarbageDays'));\n                if ($input->getOption('verbose')) {\n                    $output->writeln($text);\n                }\n            }\n        } catch (\\Exception $e) {\n            throw new \\Exception($e->getMessage());\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Tools/Console/Helper/ServiceContainerHelper.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Tools\\Console\\Helper;\n\nuse Symfony\\Component\\Console\\Helper\\Helper;\nuse Symfony\\Component\\DependencyInjection\\Container;\n\n/**\n * Service Container Helper\n */\nclass ServiceContainerHelper extends Helper\n{\n    /** @var Symfony\\Component\\DependencyInjection\\Container */\n    protected $container;\n\n    /**\n     * @param Symfony\\Component\\DependencyInjection\\Container $container\n     */\n    public function __construct(Container $container)\n    {\n        $this->container = $container;\n    }\n\n    /**\n     * Get service\n     *\n     * @param string $name\n     * @return mixed\n     */\n    public function getService($name)\n    {\n        return $this->container->getService($name);\n    }\n\n    /**\n     * @see Helper\n     */\n    public function getName()\n    {\n        return 'serviceContainer';\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Topic/SaveUserTopicsCommand.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Topic;\n\nuse Newscoop\\Command;\n\n/**\n */\nclass SaveUserTopicsCommand extends Command\n{\n    /**\n     * @var array\n     */\n    public $topics = array();\n\n    /**\n     * @var array\n     */\n    public $selected = array();\n\n    /**\n     * @var int\n     */\n    public $userId;\n\n    /**\n     * @var int\n     */\n    public $languageId;\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/User/SearchService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\User;\n\nuse Newscoop\\Search\\ServiceInterface;\nuse Newscoop\\Search\\DocumentInterface;\nuse Newscoop\\Image\\ImageService;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\Entity\\UserAttribute;\n\n/**\n * Search Service\n */\nclass SearchService implements ServiceInterface\n{\n    /**\n     * @var Newscoop\\Image\\ImageService\n     */\n    protected $imageService;\n\n    /**\n     * @param Newscoop\\Image\\ImageService $imageService\n     * @param array $config\n     */\n    public function __construct(ImageService $imageService)\n    {\n        $this->imageService = $imageService;\n    }\n\n    /**\n     * Return type for this search service\n     *\n     * @return string identifier\n     */\n    public function getType()\n    {\n        return 'user';\n    }\n\n    /**\n     * Return sub type for the document\n     *\n     * @return string identifier\n     */\n    public function getSubType(DocumentInterface $user)\n    {\n        return 'user';\n    }\n\n    /**\n     * Test if user is indexed\n     *\n     * @param Newscoop\\Entity\\User $user\n     * @return bool\n     */\n    public function isIndexed(DocumentInterface $user)\n    {\n        return $user->getIndexed() !== null;\n    }\n\n    /**\n     * Test if user can be indexed\n     *\n     * @param Newscoop\\Entity\\User $user\n     * @return bool\n     */\n    public function isIndexable(DocumentInterface $user)\n    {\n        return $user->isPublic() && $user->isActive();\n    }\n\n    /**\n     * Get document representation for user\n     *\n     * @param Newscoop\\Entity\\User $user\n     * @return array\n     */\n    public function getDocument(DocumentInterface $user)\n    {\n        return array(\n            'id' => $this->getDocumentId($user),\n            'number' => $user->getId(),\n            'type' => 'user',\n            'user' => $user->getUsername(),\n            'bio' => $user->getAttribute('bio'),\n            'image' => $this->imageService->getUserImage($user) ?: '',\n            'published' => gmdate(self::DATE_FORMAT, $user->getCreated()->getTimestamp()),\n            'is_verified' => (bool) $user->getAttribute(UserAttribute::IS_VERIFIED),\n        );\n    }\n\n    /**\n     * Get document id\n     *\n     * @param Newscoop\\Entity\\User $user\n     * @return string\n     */\n    public function getDocumentId(DocumentInterface $user)\n    {\n        return sprintf('%s-%d', $this->getType(), $user->getId());\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/User/UserCriteria.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\User;\n\nuse Newscoop\\Criteria;\nuse Newscoop\\Entity\\User;\n\n/**\n * Available criteria for users listing.\n */\nclass UserCriteria extends Criteria\n{\n    /**\n     * @var array\n     */\n    public $attributes;\n\n    /**\n     * @var string\n     */\n    public $status = User::STATUS_ACTIVE;\n\n    /**\n     * @var bool\n     */\n    public $is_public = true;\n\n    /**\n     * @var string\n     */\n    public $created;\n\n    /**\n     * @var string\n     */\n    public $email;\n\n    /**\n     * @var string\n     */\n    public $username;\n\n    /**\n     * @var string\n     */\n    public $first_name;\n\n    /**\n     * @var string\n     */\n    public $last_name;\n\n    /**\n     * @var integer\n     */\n    public $lastLoginDays;\n\n    /**\n     * @var boolean\n     */\n    public $is_admin = false;\n\n    /**\n     * @var array\n     */\n    public $groups = array();\n\n    /**\n     * @var bool\n     */\n    public $excludeGroups = false;\n\n    /**\n     * @var array\n     */\n    public $nameRange = array();\n\n    /**\n     * @var string\n     */\n    public $query;\n\n    /**\n     * @var integer\n     */\n    public $publication;\n\n    /**\n     * @var bool\n     */\n    public $is_author = false;\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/User/UserManager.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\User;\n\nuse Doctrine\\Common\\Persistence\\ObjectManager;\nuse Symfony\\Component\\Security\\Core\\User\\UserInterface;\nuse Symfony\\Component\\Security\\Core\\User\\UserProviderInterface;\n\n/**\n * User service\n */\nclass UserManager implements UserProviderInterface\n{\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     */\n    public function __construct(ObjectManager $em)\n    {\n        $this->em = $em;\n    }\n\n    /**\n     * Load user by his username\n     *\n     * @param string $username\n     *\n     * @return \\Newscoop\\Entity\\User\n     */\n    public function loadUserByUsername($username)\n    {\n        return $this->em->getRepository('Newscoop\\Entity\\User')->findOneBy(array(\n            'username' => $username,\n        ));\n    }\n\n    /**\n     * Clear user sensitive data\n     *\n     * @param  UserInterface $user\n     *\n     * @return boolean\n     */\n    public function refreshUser(UserInterface $user)\n    {\n        return true;\n    }\n\n    /**\n     * Decide if privded class is supported\n     *\n     * @param string $class\n     *\n     * @return boolean\n     */\n    public function supportsClass($class) {\n        if ($class === 'Newscoop\\Entity\\User') {\n            return true;\n        }\n\n        return false;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Utils/Exception.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Utils;\n\n/**\n * Newscoop exception used in error_handler - can change file and line\n */\nclass Exception extends \\Exception\n{\n    /**\n     * Set file\n     *\n     * @param string $file\n     * @return void\n     */\n    public function setFile($file)\n    {\n        $file = realpath($file);\n        if ($file) {\n            $this->file = $file;\n        }\n    }\n\n    /**\n     * Set line\n     *\n     * @param int $line\n     * @return void\n     */\n    public function setLine($line)\n    {\n        $this->line = (int) $line;\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Utils/PermissionToAcl.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nnamespace Newscoop\\Utils;\n\n/**\n * Old permission to acl translator\n */\nclass PermissionToAcl\n{\n    /** @var array */\n    private static $filters = array(\n        'ToArticle' => '',\n        'ArticleTypes' => 'Article-Type',\n        'plugin_manager' => 'ManagePlugin',\n        'MailNotify' => 'GetNotification',\n        'Publish' => 'PublishArticle',\n        'plugin_poll' => 'EnablePluginPoll',\n        'Change' => 'Edit',\n        'Users' => 'User',\n        'Topics' => 'Topic',\n        'Languages' => 'Language',\n        'UserTypes' => 'User-Group',\n        'Authors' => 'Author',\n        'Countries' => 'Country',\n        'Logs' => 'Log',\n        'Readers' => 'Subscriber',\n        'Subscriptions' => 'Subscription',\n        'SystemPreferences' => 'System-Preferences',\n    );\n\n    /** @var array */\n    private static $resources = array(\n        'Editor',\n        'Comment',\n    );\n\n    /** @var array */\n    private static $actions = array(\n        'Add',\n        'Edit',\n        'Attach',\n        'Clear',\n        'Delete',\n        'Manage',\n        'Move',\n        'View',\n        'Translate',\n        'Get',\n        'Publish',\n        'Enable',\n        'Sync',\n    );\n\n    /** @var array */\n    private static $rename = array(\n        'Templ' => 'Template',\n        'Pub' => 'Publication',\n    );\n\n    /**\n     * Translate permission to resource - action pair\n     *\n     * @param  string                   $perm\n     * @return array\n     * @throws InvalidArgumentException\n     */\n    public static function translate($perm)\n    {\n        $perm = (string) $perm;\n\n        // apply filters\n        foreach (self::$filters as $search => $replace) {\n            $perm = str_replace($search, $replace, $perm);\n        }\n\n        // find plugins\n        $perm_ary = explode('_', $perm);\n        if (sizeof($perm_ary) == 3) {\n            $perm_ary = array_map('ucfirst', $perm_ary);\n            $resource = $perm_ary[0] . '-' . $perm_ary[1];\n            $action = $perm_ary[2];\n\n            return self::format($resource, $action);\n        }\n\n        // find known resource\n        foreach (self::$resources as $resource) {\n            if (strpos($perm, $resource) !== FALSE) {\n                $action = str_replace($resource, '', $perm);\n\n                return self::format($resource, $action);\n            }\n        }\n\n        // find known action\n        foreach (self::$actions as $action) {\n            if (strpos($perm, $action) !== FALSE) {\n                $resource = str_replace($action, '', $perm);\n                if (isset(self::$rename[$resource])) {\n                    $resource = self::$rename[$resource];\n                }\n\n                return self::format($resource, $action);\n            }\n        }\n\n        throw new \\InvalidArgumentException(\"'$perm' can't be translated\");\n    }\n\n    /**\n     * Format for return\n     *\n     * @param  string $resource\n     * @param  string $action\n     * @return array\n     */\n    private static function format($resource, $action)\n    {\n        return array_map('strtolower', array($resource, $action));\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Utils/Validation.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\Utils;\n\n\n/**\n * Utility class that provides methods for validating parameters.\n */\nclass Validation\n{\n\t/* --------------------------------------------------------------- */\n\n\t/**\n\t * Validates if the provided parameter is null.\n\t * Will throw exception if this is the case.\n\t *\n\t * @param mixed $parameter\n\t *\t\tThe parameter to check for nullity.\n\t * @param string $name\n\t *\t\tThe parameter name used for displaying the exception default 'unknown'.\n\t */\n\tpublic static function notNull($parameter, $name='unknown')\n\t{\n\t\tif(is_null($parameter)){\n\t\t\tthrow new \\Exception(\"Please provide a value for the parameter '$name'.\");\n\t\t}\n\t}\n\n\t/**\n\t * Validates if the provided parameter is null or empty.\n\t * Will throw exception if this is the case.\n\t *\n\t * @param mixed $parameter\n\t *\t\tThe parameter to check for nullity or empty.\n\t * @param string $name\n\t *\t\tThe parameter name used for displaying the exception default 'unknown'.\n\t * @throws InvalidArgumentException\n\t */\n\tpublic static function notEmpty($parameter, $name='unknown')\n\t{\n\t\tif(is_null($parameter)){\n\t\t\tthrow new \\Exception(\"Please provide a value for the parameter '$name'.\");\n\t\t} else if(is_string($parameter) && trim($parameter) == ''){\n\t\t\tthrow new \\Exception(\"Please provide a none empty value for the parameter '$name'.\");\n\t\t}\n\t}\n\n\t/* --------------------------------------------------------------- */\n\n\tprivate function __construct() {}\n\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/ValueObject.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop;\n\n/**\n * Value Object\n */\nabstract class ValueObject\n{\n    /**\n     * @param array $values\n     */\n    public function __construct($values = null)\n    {\n        if (is_array($values)) {\n            foreach ($values as $key => $val) {\n                if (property_exists($this, $key) && $val !== null) {\n                    $this->$key = $val;\n                }\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/Version.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop;\n\n/**\n * Vesrions class\n */\nclass Version\n{\n    const VERSION = '4.4.7';\n\n    const API_VERSION = '1.2';\n\n    /**\n     * Compare version with current Newscoop version\n     *\n     * @param string $version\n     *\n     * @return int\n     */\n    public static function compare($version)\n    {\n        $currentVersion = str_replace(' ', '', strtolower(self::VERSION));\n        $version = str_replace(' ', '', $version);\n\n        return version_compare($version, $currentVersion);\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/View/ArticleView.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\View;\n\n/**\n * Article View\n */\nclass ArticleView extends View\n{\n    /**\n     * @var int\n     */\n    public $number;\n\n    /**\n     * @var string\n     */\n    public $title;\n\n    /**\n     * @var string\n     */\n    public $type;\n\n    /**\n     * @var string\n     */\n    public $webcode;\n\n    /**\n     * @var string\n     */\n    public $language;\n\n    /**\n     * @var int\n     */\n    public $languageId;\n\n    /**\n     * @var int\n     */\n    public $publication_number;\n\n    /**\n     * @var int\n     */\n    public $issue_number;\n\n    /**\n     * @var int\n     */\n    public $section_number;\n\n    /**\n     * @var array\n     */\n    public $authors = array();\n\n    /**\n     * @var array\n     */\n    public $keywords = array();\n\n    /**\n     * @var array\n     */\n    public $topics = array();\n\n    /**\n     * @var array\n     */\n    public $fields = array();\n\n    /**\n     * @var DateTime\n     */\n    public $created;\n\n    /**\n     * @var DateTime\n     */\n    public $updated;\n\n    /**\n     * @var DateTime\n     */\n    public $published;\n\n    /**\n     * @var DateTime\n     */\n    public $indexed;\n\n    /**\n     * @var string\n     */\n    public $onFrontPage;\n\n    /**\n     * @var string\n     */\n    public $onSection;\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/View/AuthorView.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\View;\n\n/**\n * Author View\n */\nclass AuthorView extends View\n{\n    /**\n     * @var string\n     */\n    public $name;\n\n    /**\n     * @var string\n     */\n    public $imageId;\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/View/PackageView.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\View;\n\n/**\n * Package View\n */\nclass PackageView extends View\n{\n\tpublic $id;\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/View/TopicView.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\View;\n\n/**\n * Topic View\n */\nclass TopicView extends View\n{\n    /**\n     * @var int\n     */\n    public $identifier;\n\n    /**\n     * @var bool\n     */\n    public $defined = false;\n\n    /**\n     * @var string\n     */\n    public $name;\n\n    /**\n     * @var string\n     */\n    public $value;\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/View/UserView.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\View;\n\n/**\n * User View\n */\nclass UserView extends View\n{\n    /**\n     * @var int\n     */\n    public $identifier;\n\n    /**\n     * @var string\n     */\n    public $username;\n\n    /**\n     * @var string\n     */\n    public $email;\n\n    /**\n     * @var array\n     */\n    public $attributes = array();\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/View/View.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\View;\n\nuse Newscoop\\ValueObject;\n\n/**\n * Base View\n */\nabstract class View extends ValueObject\n{\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/View/ViewCollection.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\View;\n\nuse ArrayIterator;\n\n/**\n */\nclass ViewCollection extends ArrayIterator\n{\n    /**\n     * @inheritDocs\n     */\n    public function current()\n    {\n        $entity = parent::current();\n        return $entity->getView();\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/View/ViewFactory.php",
    "content": "<?php\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\View;\n\n/**\n * Zend View wrapper for setting in container.\n */\nclass ViewFactory\n{\n    /**\n     * Get view from Zend Registry\n     * @return object Zend_View\n     */\n    public static function getView() \n    {\n        if (\\Zend_Registry::isRegistered('view') ){\n            return \\Zend_Registry::get('view');\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Newscoop/WebcodeFacade.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop;\n\nuse Doctrine\\ORM\\EntityManager,\n    Newscoop\\Entity;\n\n/**\n * Webcode facade\n */\nclass WebcodeFacade\n{\n    /**\n     * @Doctrine\\ORM\\EntityManager\n     */\n    protected $em;\n\n    /**\n     * @Newscoop\\Random\n     */\n    protected $random;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     * @param Newscoop\\Random $random\n     */\n    public function __construct(EntityManager $em, Random $random)\n    {\n        $this->em = $em;\n        $this->random = $random;\n    }\n\n    /**\n     * Set article webcode\n     *\n     * @param Newscoop\\Entity\\Article $article\n     * @param string $webcode\n     * @return void\n     */\n    public function setArticleWebcode(Entity\\Article $article, $webcode = null)\n    {\n        if (empty($webcode)) {\n            $webcode = $this->generateWebcode();\n        }\n        if (!$this->isUnique($webcode)) {\n            throw new \\InvalidArgumentException(\"Webcode '$webcode' is in use.\");\n        }\n\n        $webcode = new Entity\\Webcode($webcode, $article);\n        $article->setWebcode($webcode);\n        $this->em->persist($webcode);\n        $this->em->flush();\n    }\n\n    /**\n     * Get article webcode\n     *\n     * @param Newscoop\\Entity\\Article $article\n     * @return string\n     */\n    public function getArticleWebcode(Entity\\Article $article)\n    {\n        if (!$article->hasWebcode()) {\n            $this->setArticleWebcode($article);\n        }\n\n        return $article->getWebcode();\n    }\n\n    /**\n     * Find article by webcode\n     *\n     * @param string $webcode\n     * @return Newscoop\\Entity\\Article\n     */\n    public function findArticleByWebcode($webcode)\n    {\n        $webcode = $this->getRepository()->findOneBy(array(\n            'webcode' => (string) $webcode,\n        ));\n\n        return $webcode !== null ? $webcode->getArticle() : null;\n    }\n\n    /**\n     * Generate webcode\n     *\n     * return string\n     */\n    private function generateWebcode()\n    {\n        return $this->random->getRandomString(5);\n    }\n\n    /**\n     * Test if webcode is unique\n     *\n     * @param string $webcode\n     * @return bool\n     */\n    private function isUnique($webcode)\n    {\n        return !$this->getRepository()->find($webcode);\n    }\n\n    /**\n     * Get webcode repository\n     *\n     * @return Doctrine\\ORM\\EntityRepository\n     */\n    private function getRepository()\n    {\n        return $this->em->getRepository('Newscoop\\Entity\\Webcode');\n    }\n}\n"
  },
  {
    "path": "newscoop/library/Proxy/.gitignore",
    "content": "*\n!.gitignore\n"
  },
  {
    "path": "newscoop/library/Resource/Acl/Annotation/Acl.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Resource\\Acl\\Annotation;\n\nuse Doctrine\\Common\\Annotations\\Annotation;\n\n/**\n * Acl annotation class\n */\nclass Acl extends Annotation\n{\n    /** @var string */\n    public $resource;\n\n    /** @var string */\n    public $action;\n\n    /** @var string */\n    public $ignore;\n\n    /** @var string */\n    public $allow;\n}\n"
  },
  {
    "path": "newscoop/library/Resource/Acl/RuleInterface.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Resource\\Acl;\n\n/**\n * Acl rule interface\n */\ninterface RuleInterface\n{\n    /**\n     * Get type\n     *\n     * @return string\n     */\n    public function getType();\n\n    /**\n     * Get resource\n     *\n     * @return mixed\n     */\n    public function getResource();\n\n    /**\n     * Get action\n     *\n     * @return mixed\n     */\n    public function getAction();\n}\n"
  },
  {
    "path": "newscoop/library/Resource/Acl/StorageInterface.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Resource\\Acl;\n\n/**\n * Acl storage interface\n */\ninterface StorageInterface\n{\n    /**\n     * Get rules for role\n     *\n     * @param Zend_Acl_Role_Interface $role\n     * @return array\n     */\n    public function getRules(\\Zend_Acl_Role_Interface $role);\n\n    /**\n     * Get stored resources\n     *\n     * @return array\n     */\n    public function getResources();\n}\n"
  },
  {
    "path": "newscoop/library/Resource/Acl.php",
    "content": "<?php\n/**\n * @package Resource\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n */\n\nuse Doctrine\\Common\\Annotations\\AnnotationReader,\n    Doctrine\\Common\\Annotations\\AnnotationRegistry,\n    Doctrine\\Common\\Annotations\\Parser,\n    Doctrine\\Common\\Cache\\ArrayCache,\n    Resource\\Acl\\StorageInterface,\n    Resource\\Acl\\RuleInterface;\n\n/**\n * Acl Zend application resource\n */\nclass Resource_Acl extends Zend_Application_Resource_ResourceAbstract\n{\n    const ANNOTATION = 'Newscoop\\Annotations\\Acl';\n\n    const PARENTS_METHOD = 'getGroups';\n\n    const CACHE_NAMESPACE = '_resource_acl';\n\n    /** @var Doctrine\\Common\\Annotations\\AnnotationReader */\n    private $reader;\n\n    /** @var Resource\\Acl\\StorageInterface */\n    private $storage;\n\n    /** @var array */\n    private $resources;\n\n    /** @var array */\n    private $access;\n\n    /** @var array */\n    private $cache = array();\n\n    /**\n     * Init acl\n     */\n    public function init()\n    {\n        Zend_Registry::set('acl', $this);\n\n        return $this;\n    }\n\n    /**\n     * Check access\n     *\n     * @param Zend_Acl_Role_Interface $role\n     * @param string $resource\n     * @param string $action\n     * @return bool\n     */\n    public function isAllowed(Zend_Acl_Role_Interface $role, $resource, $action)\n    {\n        $acl = $this->getAcl($role);\n        try {\n            return $acl->isAllowed($role, $resource, $action);\n        } catch (Zend_Acl_Exception $e) { // resource not found\n            return true;\n        }\n    }\n\n    /**\n     * Get acl for role\n     *\n     * @param Zend_Acl_Role_Interface $role\n     * @return Zend_Acl\n     */\n    public function getAcl(Zend_Acl_Role_Interface $role)\n    {\n        if (isset($this->cache[$role->getRoleId()])) {\n            return $this->cache[$role->getRoleId()];\n        }\n\n        $acl = new Zend_Acl;\n\n        // set resources\n        $resources = $this->getResources();\n        foreach (array_keys($resources) as $resource) {\n            $acl->addResource($resource);\n        }\n\n        // get role parents if possible\n        $method = self::PARENTS_METHOD;\n        $parents = NULL;\n        if (method_exists($role, $method)) {\n            foreach ($role->$method() as $parent) {\n                $parents[] = $parent;\n                $acl->addRole($parent);\n                $this->addRules($acl, $parent);\n            }\n        }\n\n        // set role\n        $acl->addRole($role, $parents);\n        $this->addRules($acl, $role);\n\n        return $this->cache[$role->getRoleId()] = $acl;\n    }\n\n    /**\n     * Add role rules\n     *\n     * @param Zend_Acl $acl\n     * @param Zend_Acl_Role_Interface $role\n     * @return void\n     */\n    private function addRules(Zend_Acl $acl, Zend_Acl_Role_Interface $role)\n    {\n        foreach ($this->getStorage()->getRules($role) as $rule) {\n            $type = $rule['type'];\n            $acl->$type($role, $rule['resource'], $rule['action']);\n        }\n    }\n\n    /**\n     * Get application resources\n     *\n     * @return array\n     */\n    public function getResources()\n    {\n        if ($this->resources === NULL) {\n            $this->scan();\n        }\n\n        return $this->resources;\n    }\n\n    /**\n     * Get access\n     *\n     * @param string $controller\n     * @param string $action\n     * @return array (resource, action)\n     */\n    public function getAccess($controller, $action)\n    {\n        if ($this->access === NULL) {\n            $this->scan();\n        }\n\n        if (isset($this->access[$controller][$action])) {\n            return $this->access[$controller][$action];\n        }\n\n        return array(null, null);\n    }\n\n    /**\n     * Get resource actions\n     *\n     * @param string $resource\n     * @return array\n     */\n    public function getActions($resource = '')\n    {\n        $resources = $this->getResources();\n\n        $actions = array();\n        if (!empty($resource)) { // resource specific\n            $actions = isset($resources[$resource]) ? $resources[$resource] : array();\n        } else {\n            foreach ($resources as $resource => $resourceActions) {\n                $actions = array_merge($actions, $resourceActions);\n            }\n        }\n\n        $actions = array_unique($actions);\n        sort($actions);\n        return $actions;\n    }\n\n    /**\n     * Set acl storage\n     *\n     * @param Resource\\Acl\\StorageInterface\n     * @return Resource_Acl\n     */\n    public function setStorage(StorageInterface $storage)\n    {\n        $this->storage = $storage;\n        return $this;\n    }\n\n    /**\n     * Get acl storage\n     *\n     * @return Resource\\Acl\\StorageInterface\n     */\n    private function getStorage()\n    {\n        return $this->storage;\n    }\n\n    /**\n     * Scan for resources/actions\n     *\n     * @return void\n     */\n    private function scan()\n    {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $options = $this->getOptions() + array(\n            'cache_ttl' => 300,\n        );\n\n        $cacheKey = $cacheService->getCacheKey(self::CACHE_NAMESPACE);\n        if ($cacheService->contains($cacheKey)) {\n            list($this->resources, $this->access) = json_decode($cacheService->fetch($cacheKey), TRUE);\n            return;\n        }\n\n        $resources = $access = array();\n\n        // load resources from file if any\n        $file = APPLICATION_PATH . '/configs/resources.ini';\n        if (file_exists($file)) {\n            $config = new Zend_Config_Ini($file);\n            $resources = $config->toArray();\n        }\n\n        // load dynamic resources from storage\n        foreach ($this->storage->getResources() as $resource => $actions) {\n            if (!isset($resources[$resource])) {\n                $resources[$resource] = array();\n            }\n\n            $resources[$resource] += $actions;\n        }\n\n        $reader = $this->getAnnotationReader();\n\n        // get modules to scan\n        $front = Zend_Controller_Front::getInstance();\n        $paths = $front->getControllerDirectory();\n        $modules = !empty($options['modules']) ? $options['modules'] : array();\n        foreach ($modules as $module) {\n            $path = $paths[$module];\n            foreach (glob(\"$path/*Controller.php\") as $controllerFile) {\n                require_once($controllerFile);\n                $controller = ucfirst($module) . '_' . current(explode('.', basename($controllerFile)));\n                $reflection = new ReflectionClass($controller);\n\n                $resource = $this->formatName($controller, $module);\n                $defaultAction = NULL;\n\n                $controllerKey = $resource;\n                $access[$controllerKey] = array();\n\n                // process annotations\n                $annotation = $reader->getClassAnnotation($reflection, self::ANNOTATION);\n                if ($annotation !== NULL) {\n                    if (!empty($annotation->ignore)) { // ignored class\n                        continue;\n                    }\n\n                    if (!empty($annotation->resource)) {\n                        $resource = $this->formatName($annotation->resource);\n                    }\n\n                    if (!empty($annotation->action)) {\n                        $defaultAction = $this->formatName($annotation->action);\n                    }\n                }\n\n                // get actions\n                $actions = array();\n                foreach ($reflection->getMethods(ReflectionMethod::IS_PUBLIC) as $method) {\n                    if (!preg_match('/Action$/', $method->getName())) {\n                        continue;\n                    }\n\n                    $action = $this->formatName($method->getName());\n                    $target = $resource;\n\n                    $methodKey = $action;\n                    $access[$controllerKey][$methodKey] = array(null, null);\n\n                    // process annotations\n                    $annotation = $reader->getMethodAnnotation($method, self::ANNOTATION);\n                    if ($annotation !== NULL) {\n                        if (!empty($annotation->ignore)) {\n                            continue;\n                        }\n\n                        if (!empty($annotation->resource)) {\n                            $target = $this->formatName($annotation->resource);\n                        }\n\n                        if (!empty($annotation->action)) {\n                            $action = $this->formatName($annotation->action);\n                        }\n                    } elseif ($defaultAction !== NULL) {\n                        $action = $defaultAction;\n                    }\n\n                    // add action to target resource\n                    if (!isset($resources[$target])) {\n                        $resources[$target] = array($action);\n                    } elseif (!in_array($action, $resources[$target])) {\n                        $resources[$target][] = $action;\n                    }\n\n                    if ($target) {\n                        $access[$controllerKey][$methodKey] = array($target, $action);\n                    }\n                }\n            }\n        }\n\n        // TODO: remove this dirty hack - replace this with registering custom Acl annotation in symfony controllers.\n        $resources['playlist'] = array('manage');\n        $resources['ingest'] = array('manage');\n\n        $this->resources = $resources;\n        $this->access = $access;\n\n        $cacheService->save($cacheKey, json_encode(array($resources, $access)), (int) $options['cache_ttl']);\n    }\n\n    /**\n     * Get annotation reader\n     *\n     * @return Doctrine\\Common\\Annotations\\AnnotationReader\n     */\n    private function getAnnotationReader()\n    {\n        if ($this->reader === NULL) {\n            AnnotationRegistry::registerAutoloadNamespace('Newscoop\\Annotations\\\\', APPLICATION_PATH . '/../library/');\n            $this->reader = new AnnotationReader();\n        }\n\n        return $this->reader;\n    }\n\n    /**\n     * Format name for resource/action\n     *\n     * @param string $name\n     * @param string $module\n     * @return string\n     */\n    private function formatName($name, $module = '')\n    {\n        $name = str_replace(array(\n            ucfirst($module) . '_',\n            'Controller',\n            'Action',\n        ), array(\n            '',\n        ), $name);\n\n        $parts = array();\n        foreach (preg_split('/([A-Z][a-z]+)/', $name, 0, PREG_SPLIT_DELIM_CAPTURE) as $part) {\n            if (empty($part)) {\n                continue;\n            }\n\n            $parts[] = strtolower($part);\n        }\n\n        return implode('-', $parts);\n    }\n}\n"
  },
  {
    "path": "newscoop/log/.gitignore",
    "content": "*\n\n!.gitignore\n!.htaccess"
  },
  {
    "path": "newscoop/log/.htaccess",
    "content": "Deny from all\n"
  },
  {
    "path": "newscoop/plugins/.gitignore",
    "content": "*\r\n\r\n!.gitignore"
  },
  {
    "path": "newscoop/public/.htaccess",
    "content": "\nRewriteEngine On\nRewriteCond %{REQUEST_FILENAME} -s [OR]\nRewriteCond %{REQUEST_FILENAME} -l [OR]\nRewriteCond %{REQUEST_FILENAME} -d\nRewriteRule ^.*$ - [NC,L]\nRewriteRule ^.*$ index.php [NC,L]\n"
  },
  {
    "path": "newscoop/public/bundles/.gitignore",
    "content": "*\n\n!.gitignore"
  },
  {
    "path": "newscoop/public/css/jquery.qtip.css",
    "content": "/*\n* qTip2 - Pretty powerful tooltips\n* http://craigsworks.com/projects/qtip2/\n*\n* Version: nightly\n* Copyright 2009-2010 Craig Michael Thompson - http://craigsworks.com\n*\n* Dual licensed under MIT or GPLv2 licenses\n*   http://en.wikipedia.org/wiki/MIT_License\n*   http://en.wikipedia.org/wiki/GNU_General_Public_License\n*\n* Date: Tue Sep  6 17:07:56.0000000000 2011\n*/\n\n/* Core qTip styles */\n.ui-tooltip, .qtip{\n\tposition: absolute;\n\tleft: -28000px;\n\ttop: -28000px;\n\tdisplay: none;\n\n\tmax-width: 280px;\n\tmin-width: 50px;\n\t\n\tfont-size: 10.5px;\n\tline-height: 12px;\n\n\tz-index: 15000;\n}\n\n\t/* Fluid class for determining actual width in IE */\n\t.ui-tooltip-fluid{\n\t\tdisplay: block;\n\t\tvisibility: hidden;\n\t\tposition: static !important;\n\t\tfloat: left !important;\n\t}\n\n\t.ui-tooltip-content{\n\t\tposition: relative;\n\t\tpadding: 5px 9px;\n\t\toverflow: hidden;\n\t\t\n\t\tborder-width: 1px;\n\t\tborder-style: solid;\n\t\t\n\t\ttext-align: left;\n\t\tword-wrap: break-word;\n\t\toverflow: hidden;\n\t}\n\n\t.ui-tooltip-titlebar{\n\t\tposition: relative;\n\t\tmin-height: 14px;\n\t\tpadding: 5px 35px 5px 10px;\n\t\toverflow: hidden;\n\t\t\n\t\tborder-width: 1px 1px 0;\n\t\tborder-style: solid;\n\n\t\tfont-weight: bold;\n\t}\n\n\t.ui-tooltip-titlebar + .ui-tooltip-content{ border-top-width: 0px !important; }\n\n\t\t/*! Default close button class */\n\t\t.ui-tooltip-titlebar .ui-state-default{\n\t\t\tposition: absolute;\n\t\t\tright: 4px;\n\t\t\ttop: 50%;\n\t\t\tmargin-top: -9px;\n\n\t\t\tcursor: pointer;\n\t\t\toutline: medium none;\n\n\t\t\tborder-width: 1px;\n\t\t\tborder-style: solid;\n\t\t}\n\t\t\n\t\t* html .ui-tooltip-titlebar .ui-state-default{ top: 16px; } /* IE fix */\n\n\t\t.ui-tooltip-titlebar .ui-icon,\n\t\t.ui-tooltip-icon .ui-icon{\n\t\t\tdisplay: block;\n\t\t\ttext-indent: -1000em;\n\t\t}\n\n\t\t.ui-tooltip-icon, .ui-tooltip-icon .ui-icon{\n\t\t\t-moz-border-radius: 3px;\n\t\t\t-webkit-border-radius: 3px;\n\t\t\tborder-radius: 3px;\n\t\t}\n\n\t\t\t.ui-tooltip-icon .ui-icon{\n\t\t\t\twidth: 18px;\n\t\t\t\theight: 14px;\n\n\t\t\t\ttext-align: center;\n\t\t\t\ttext-indent: 0;\n\t\t\t\tfont: normal bold 10px/13px Tahoma,sans-serif;\n\n\t\t\t\tcolor: inherit;\n\t\t\t\tbackground: transparent none no-repeat -100em -100em;\n\t\t\t}\n\n\n/* Applied to 'focused' tooltips e.g. most recently displayed/interacted with */\n.ui-tooltip-focus{\n\n}\n\n/* Applied on hover of tooltips i.e. added/removed on mouseenter/mouseleave respectively */\n.ui-tooltip-hover{\n\t\n}\n\n\n/*! Default tooltip style */\n.ui-tooltip-default .ui-tooltip-titlebar,\n.ui-tooltip-default .ui-tooltip-content{\n\tborder-color: #F1D031;\n\tbackground-color: #FFFFA3;\n\tcolor: #555;\n}\n\n\t.ui-tooltip-default .ui-tooltip-titlebar{\n\t\tbackground-color: #FFEF93;\n\t}\n\n\t.ui-tooltip-default .ui-tooltip-icon{\n\t\tborder-color: #CCC;\n\t\tbackground: #F1F1F1;\n\t\tcolor: #777;\n\t}\n\t\n\t.ui-tooltip-default .ui-tooltip-titlebar .ui-state-hover{\n\t\tborder-color: #AAA;\n\t\tcolor: #111;\n\t}\n\n/* Tips plugin */\n.ui-tooltip .ui-tooltip-tip{\n\tmargin: 0 auto;\n\toverflow: hidden;\n\n\tbackground: transparent !important;\n\tborder: 0px dashed transparent !important;\n\tz-index: 10;\n}\n\n\t.ui-tooltip .ui-tooltip-tip,\n\t.ui-tooltip .ui-tooltip-tip *{\n\t\tposition: absolute;\n\t\t\n\t\tline-height: 0.1px !important;\n\t\tfont-size: 0.1px !important;\n\t\tcolor: #123456;\n\n\t\tbackground: transparent;\n\t\tborder: 0px dashed transparent;\n\t}\n\t\n\t.ui-tooltip .ui-tooltip-tip canvas{ top: 0; left: 0; }\n\n\n/* Modal plugin */\n#qtip-overlay{\n\tposition: fixed;\n\tleft: -10000em;\n\ttop: -10000em;\n}\n\n\t/* Applied to modals with show.modal.blur set to true */\n\t#qtip-overlay.blurs{ cursor: pointer; }\n\n\t/* Change opacity of overlay here */\n\t#qtip-overlay div{\n\t\tposition: absolute;\n\t\tleft: 0; top: 0;\n\t\twidth: 100%; height: 100%;\n\n\t\tbackground-color: black;\n\n\t\topacity: 0.7;\n\t\tfilter:alpha(opacity=70);\n\t\t-ms-filter:\"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)\";\n\t}\n\n/*! Light tooltip style */\n.ui-tooltip-light .ui-tooltip-titlebar,\n.ui-tooltip-light .ui-tooltip-content{\n\tborder-color: #E2E2E2;\n\tcolor: #454545;\n}\n\n\t.ui-tooltip-light .ui-tooltip-content{\n\t\tbackground-color: white;\n\t}\n\n\t.ui-tooltip-light .ui-tooltip-titlebar{\n\t\tbackground-color: #f1f1f1;\n\t}\n\n\n/*! Dark tooltip style */\n.ui-tooltip-dark .ui-tooltip-titlebar,\n.ui-tooltip-dark .ui-tooltip-content{\n\tborder-color: #303030;\n\tcolor: #f3f3f3;\n}\n\n\t.ui-tooltip-dark .ui-tooltip-content{\n\t\tbackground-color: #505050;\n\t}\n\n\t.ui-tooltip-dark .ui-tooltip-titlebar{\n\t\tbackground-color: #404040;\n\t}\n\n\t.ui-tooltip-dark .ui-tooltip-icon{\n\t\tborder-color: #444;\n\t}\n\n\t.ui-tooltip-dark .ui-tooltip-titlebar .ui-state-hover{\n\t\tborder-color: #303030;\n\t}\n\n\n/*! Cream tooltip style */\n.ui-tooltip-cream .ui-tooltip-titlebar,\n.ui-tooltip-cream .ui-tooltip-content{\n\tborder-color: #F9E98E;\n\tcolor: #A27D35;\n}\n\n\t.ui-tooltip-cream .ui-tooltip-content{\n\t\tbackground-color: #FBF7AA;\n\t}\n\n\t.ui-tooltip-cream .ui-tooltip-titlebar{\n\t\tbackground-color: #F0DE7D;\n\t}\n\n\t.ui-tooltip-cream .ui-state-default .ui-tooltip-icon{\n\t\tbackground-position: -82px 0;\n\t}\n\n\n/*! Red tooltip style */\n.ui-tooltip-red .ui-tooltip-titlebar,\n.ui-tooltip-red .ui-tooltip-content{\n\tborder-color: #D95252;\n\tcolor: #912323;\n}\n\n\t.ui-tooltip-red .ui-tooltip-content{\n\t\tbackground-color: #F78B83;\n\t}\n\n\t.ui-tooltip-red .ui-tooltip-titlebar{\n\t\tbackground-color: #F06D65;\n\t}\n\n\t.ui-tooltip-red .ui-state-default .ui-tooltip-icon{\n\t\tbackground-position: -102px 0;\n\t}\n\n\t.ui-tooltip-red .ui-tooltip-icon{\n\t\tborder-color: #D95252;\n\t}\n\n\t.ui-tooltip-red .ui-tooltip-titlebar .ui-state-hover{\n\t\tborder-color: #D95252;\n\t}\n\n\n/*! Green tooltip style */\n.ui-tooltip-green .ui-tooltip-titlebar,\n.ui-tooltip-green .ui-tooltip-content{\n\tborder-color: #90D93F;\n\tcolor: #3F6219;\n}\n\n\t.ui-tooltip-green .ui-tooltip-content{\n\t\tbackground-color: #CAED9E;\n\t}\n\n\t.ui-tooltip-green .ui-tooltip-titlebar{\n\t\tbackground-color: #B0DE78;\n\t}\n\n\t.ui-tooltip-green .ui-state-default .ui-tooltip-icon{\n\t\tbackground-position: -42px 0;\n\t}\n\n\n/*! Blue tooltip style */\n.ui-tooltip-blue .ui-tooltip-titlebar,\n.ui-tooltip-blue .ui-tooltip-content{\n\tborder-color: #ADD9ED;\n\tcolor: #5E99BD;\n}\n\n\t.ui-tooltip-blue .ui-tooltip-content{\n\t\tbackground-color: #E5F6FE;\n\t}\n\n\t.ui-tooltip-blue .ui-tooltip-titlebar{\n\t\tbackground-color: #D0E9F5;\n\t}\n\n\t.ui-tooltip-blue .ui-state-default .ui-tooltip-icon{\n\t\tbackground-position: -2px 0;\n\t}\n\n/*! Add shadows to your tooltips in: FF3+, Chrome 2+, Opera 10.6+, IE6+, Safari 2+ */\n.ui-tooltip-shadow{\n\t-webkit-box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.15);\n\t-moz-box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.15);\n\tbox-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.15);\n}\n\n\t.ui-tooltip-shadow .ui-tooltip-titlebar,\n\t.ui-tooltip-shadow .ui-tooltip-content{\n\t\tfilter: progid:DXImageTransform.Microsoft.Shadow(Color='gray', Direction=135, Strength=3);\n\t\t-ms-filter:\"progid:DXImageTransform.Microsoft.Shadow(Color='gray', Direction=135, Strength=3)\";\n\n\t\t_margin-bottom: -3px; /* IE6 */\n\t\t.margin-bottom: -3px; /* IE7 */\n\t}\n\n\n/*! Add rounded corners to your tooltips in: FF3+, Chrome 2+, Opera 10.6+, IE9+, Safari 2+ */\n.ui-tooltip-rounded,\n.ui-tooltip-rounded .ui-tooltip-content,\n.ui-tooltip-tipsy,\n.ui-tooltip-tipsy .ui-tooltip-content,\n.ui-tooltip-youtube,\n.ui-tooltip-youtube .ui-tooltip-content{\n\t-moz-border-radius: 4px;\n\t-webkit-border-radius: 4px;\n\tborder-radius: 4px;\n}\n\n.ui-tooltip-rounded .ui-tooltip-titlebar,\n.ui-tooltip-tipsy .ui-tooltip-titlebar,\n.ui-tooltip-youtube .ui-tooltip-titlebar{\n\t-moz-border-radius: 5px 5px 0 0;\n\t-webkit-border-radius: 5px 5px 0 0;\n\tborder-radius: 5px 5px 0 0;\n}\n\n.ui-tooltip-rounded .ui-tooltip-titlebar + .ui-tooltip-content,\n.ui-tooltip-tipsy .ui-tooltip-titlebar + .ui-tooltip-content,\n.ui-tooltip-youtube .ui-tooltip-titlebar + .ui-tooltip-content{\n\t-moz-border-radius: 0 0 5px 5px;\n\t-webkit-border-radius: 0 0 5px 5px;\n\tborder-radius: 0 0 5px 5px;\n}\n\n\n/*! Youtube tooltip style */\n.ui-tooltip-youtube{\n\t-webkit-box-shadow: 0 0 3px #333;\n\t-moz-box-shadow: 0 0 3px #333;\n\tbox-shadow: 0 0 3px #333;\n}\n\n\t.ui-tooltip-youtube .ui-tooltip-titlebar,\n\t.ui-tooltip-youtube .ui-tooltip-content{\n\t\t_margin-bottom: 0; /* IE6 */\n\t\t.margin-bottom: 0; /* IE7 */\n\n\t\tbackground: transparent;\n\t\tbackground: rgba(0, 0, 0, 0.85);\n\t\tfilter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#D9000000,endColorstr=#D9000000);\n\t\t-ms-filter: \"progid:DXImageTransform.Microsoft.gradient(startColorstr=#D9000000,endColorstr=#D9000000)\";\n\n\t\tcolor: white;\n\t\tborder-color: #CCCCCC;\n\t}\n\n\t.ui-tooltip-youtube .ui-tooltip-icon{\n\t\tborder-color: #222;\n\t}\n\n\t.ui-tooltip-youtube .ui-tooltip-titlebar .ui-state-hover{\n\t\tborder-color: #303030;\n\t}\n\n\n/* jQuery TOOLS Tooltip style */\n.ui-tooltip-jtools{\n\tbackground: #232323;\n\tbackground: rgba(0, 0, 0, 0.7);\n\tbackground-image: -moz-linear-gradient(top, #717171, #232323);\n\tbackground-image: -webkit-gradient(linear, left top, left bottom, from(#717171), to(#232323));\n\t\n\tborder: 2px solid #ddd;\n\tborder: 2px solid rgba(241,241,241,1);\n\n\t-moz-border-radius: 2px;\n\t-webkit-border-radius: 2px;\n\tborder-radius: 2px;\n\n\t-webkit-box-shadow: 0 0 12px #333;\n\t-moz-box-shadow: 0 0 12px #333;\n\tbox-shadow: 0 0 12px #333;\n}\n\n\t/* IE Specific */\n\t.ui-tooltip-jtools .ui-tooltip-titlebar{\n\t\tfilter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#717171,endColorstr=#4A4A4A);\n\t\t-ms-filter: \"progid:DXImageTransform.Microsoft.gradient(startColorstr=#717171,endColorstr=#4A4A4A)\";\n\t}\n\t.ui-tooltip-jtools .ui-tooltip-content{\n\t\tfilter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#4A4A4A,endColorstr=#232323);\n\t\t-ms-filter: \"progid:DXImageTransform.Microsoft.gradient(startColorstr=#4A4A4A,endColorstr=#232323)\";\n\t}\n\n\t.ui-tooltip-jtools .ui-tooltip-titlebar,\n\t.ui-tooltip-jtools .ui-tooltip-content{\n\t\tbackground: transparent;\n\t\tcolor: white;\n\t\tborder: 0 dashed transparent;\n\t}\n\n\t.ui-tooltip-jtools .ui-tooltip-icon{\n\t\tborder-color: #555;\n\t}\n\n\t.ui-tooltip-jtools .ui-tooltip-titlebar .ui-state-hover{\n\t\tborder-color: #333;\n\t}\n\n\n/* Cluetip style */\n.ui-tooltip-cluetip{\n\t-webkit-box-shadow: 4px 4px 5px rgba(0, 0, 0, 0.4);\n\t-moz-box-shadow: 4px 4px 5px rgba(0, 0, 0, 0.4);\n\tbox-shadow: 4px 4px 5px rgba(0, 0, 0, 0.4);\n}\n\n\t.ui-tooltip-cluetip .ui-tooltip-titlebar{\n\t\tbackground-color: #87876A;\n\t\tcolor: white;\n\t\tborder: 0 dashed transparent;\n\t}\n\n\t.ui-tooltip-cluetip .ui-tooltip-content{\n\t\tbackground-color: #D9D9C2;\n\t\tcolor: #111;\n\t\tborder: 0 dashed transparent;\n\t}\n\t\n\t.ui-tooltip-cluetip .ui-tooltip-icon{\n\t\tborder-color: #808064;\n\t}\n\t\n\t.ui-tooltip-cluetip .ui-tooltip-titlebar .ui-state-hover{\n\t\tborder-color: #696952;\n\t\tcolor: #696952;\n\t}\n\n\n/* Tipsy style */\n.ui-tooltip-tipsy{\n\tborder: 0;\n}\n\n\t.ui-tooltip-tipsy .ui-tooltip-titlebar,\n\t.ui-tooltip-tipsy .ui-tooltip-content{\n\t\t_margin-bottom: 0; /* IE6 */\n\t\t.margin-bottom: 0; /* IE7 */\n\n\t\tbackground: transparent;\n\t\tbackground: rgba(0, 0, 0, .87);\n\t\tfilter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#D9000000,endColorstr=#D9000000);\n\t\t-ms-filter: \"progid:DXImageTransform.Microsoft.gradient(startColorstr=#D9000000,endColorstr=#D9000000)\";\n\t\t\n\t\tcolor: white;\n\t\tborder: 0px transparent;\n\n\t\tfont-size: 11px;\n\t\tfont-family: 'Lucida Grande', sans-serif;\n\t\tfont-weight: bold;\n\t\tline-height: 16px;\n\t\ttext-shadow: 0 1px black;\n\t}\n\n\t.ui-tooltip-tipsy .ui-tooltip-titlebar{\n\t\tpadding: 6px 35px 0 10;\n\t}\n\n\t.ui-tooltip-tipsy .ui-tooltip-content{\n\t\tpadding: 6px 10;\n\t}\n\t\n\t.ui-tooltip-tipsy .ui-tooltip-icon{\n\t\tborder-color: #222;\n\t\ttext-shadow: none;\n\t}\n\n\t.ui-tooltip-tipsy .ui-tooltip-titlebar .ui-state-hover{\n\t\tborder-color: #303030;\n\t}\n\n\n/* Tipped style */\n.ui-tooltip-tipped{\n\n}\n\t\n\t.ui-tooltip-tipped .ui-tooltip-titlebar,\n\t.ui-tooltip-tipped .ui-tooltip-content{\n\t\tborder: 3px solid #959FA9;\n\n\t\tfilter: none; -ms-filter: none;\n\t}\n\n\t.ui-tooltip-tipped .ui-tooltip-titlebar{\n\t\tbackground: #3A79B8;\n\t\tbackground-image: -moz-linear-gradient(top, #3A79B8, #2E629D);\n\t\tbackground-image: -webkit-gradient(linear, left top, left bottom, from(#3A79B8), to(#2E629D));\n\t\tfilter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#3A79B8,endColorstr=#2E629D);\n\t\t-ms-filter: \"progid:DXImageTransform.Microsoft.gradient(startColorstr=#3A79B8,endColorstr=#2E629D)\";\n\n\t\tcolor: white;\n\t\tfont-weight: normal;\n\t\tfont-family: serif;\n\n\t\tborder-bottom-width: 0;\n\t\t-moz-border-radius: 3px 3px 0 0;\n\t\t-webkit-border-radius: 3px 3px 0 0;\n\t\tborder-radius: 3px 3px 0 0;\n\t}\n\t\n\t.ui-tooltip-tipped .ui-tooltip-content{\n\t\tbackground-color: #F9F9F9;\n\t\tcolor: #454545;\n\n\t\t-moz-border-radius: 0 0 3px 3px;\n\t\t-webkit-border-radius: 0 0 3px 3px;\n\t\tborder-radius: 0 0 3px 3px;\n\t}\n\n\t.ui-tooltip-tipped .ui-tooltip-icon{\n\t\tborder: 2px solid #285589;\n\t\tbackground: #285589;\n\t}\n\t\t\n\t\t.ui-tooltip-tipped .ui-tooltip-icon .ui-icon{\n\t\t\tbackground-color: #FBFBFB;\n\t\t\tcolor: #555;\n\t\t}\n\n/* IE9 fix - removes all filters */\n.ui-tooltip:not(.ie9haxors) div.ui-tooltip-content,\n.ui-tooltip:not(.ie9haxors) div.ui-tooltip-titlebar{\n\tfilter: none;\n\t-ms-filter: none;\n}"
  },
  {
    "path": "newscoop/public/css/omnibox.css",
    "content": "#ob_wrapper {\n\tposition: fixed;\n\ttop: 0px;\n    z-index: 9999;\n    width: 0px;\n}\n#ob_wrapper #ob_handle {\n\tfloat: left;\n\tmargin-top: 10px;\n    position: relative;\n    left: -30px;\n}\n\n#ob_main {\n\tdisplay:none; position:relative; z-index:10;\n\tmargin:10px 0 0 0;\n\tbox-shadow:2px 2px 3px rgba(0,0,0,0.2); -moz-box-shadow:2px 2px 3px rgba(0,0,0,0.2); -webkit-box-shadow:2px 2px 3px rgba(0,0,0,0.2);\n\tbackground:#fff; background:rgba(255,255,255,0.97);\n\twidth: 600px;\n\tborder: solid 2px #09d987;\n\tpadding: 20px;\n\tfloat: left;\n    left: -30px;\n}\n#ob_wrapper .top_title {\n\tfont-family: Georgia, \"Times New Roman\", Times, serif; font-size:16px; line-height:22px;\n\tfloat: left;\n\tmargin-bottom: 18px;\n\tfont-weight: bold;\n}\n#ob_wrapper .top_user {\n\tfont-size:11px; font-family:Arial, Helvetica, sans-serif; line-height:15px;\n\tfloat: right;\n\ttext-align: right;\n}\n#ob_wrapper .top_user a {\n\ttext-decoration: none;\n\tcolor: #09d987;\n}\n#ob_wrapper .clear {\n\tclear: both;\n}\n#ob_wrapper .radio_container {\n\tmargin: 20px 20px 10px 0px;\n\tfloat: left;\n\tfont-size:12px; font-family:Arial, Helvetica, sans-serif; line-height:16px;\n}\n#ob_wrapper .left {\n\tfloat: left;\n}\n#ob_wrapper .right {\n\tfloat: right;\n}\n#ob_wrapper .text_container {\n\tfont-size:12px; font-family:Arial, Helvetica, sans-serif; line-height:16px;\n}\n#ob_wrapper .text_container label {\n\tfont-size: 11px;\n\tdisplay: block;\n}\n#ob_wrapper .text_container input {\n\twidth: 98%;\n\tdisplay: block;\n\tborder: 1px solid #a5a5a5;\n\tfont-family: Georgia, \"Times New Roman\", Times, serif; font-size:16px; line-height:22px;\n\tpadding: 4px;\n}\n#ob_wrapper .text_container textarea {\n\twidth: 98%;\n\theight: 100px;\n\tdisplay: block;\n\tborder: 1px solid #a5a5a5;\n\tfont-family: Georgia, \"Times New Roman\", Times, serif; font-size:16px; line-height:22px;\n\tpadding: 4px;\n}\n#ob_wrapper .text_container input.small {\n\tfloat: right;\n\twidth: 80%;\n\tdisplay: block;\n\tborder: 1px solid #a5a5a5;\n\tfont-size:10px; font-family:Arial, Helvetica, sans-serif; line-height:11px;\n\tpadding: 4px;\n\tmargin: 2px;\n}\n#ob_wrapper .text_container .send_button {\n\tfloat: right;\n\twidth: 100px;\n\tfont-size:11px; font-family:Arial, Helvetica, sans-serif; line-height:11px;\n\tborder: solid 1px #09d987;\n\tmargin: 2px;\n}\n\n#ob_wrapper .text_container .login_button {\n\tfloat: right;\n\twidth: 100px;\n\tfont-size:11px; font-family:Arial, Helvetica, sans-serif; line-height:11px;\n\tborder: solid 1px #09d987;\n\tmargin: 2px;\n    margin-top: 12px;\n}\n\n#ob_wrapper .text_container #ob_file_upload_container {\n\tfloat: left;\n}\n#ob_wrapper .text_container #ob_file_type {\n\tfont-size:11px; font-family:Arial, Helvetica, sans-serif; line-height:11px;\n\tvertical-align: bottom;\n}\n#ob_wrapper .text_container #ob_file_info {\n\tfont-size:11px; font-family:Arial, Helvetica, sans-serif; line-height:11px;\n\tvertical-align: bottom;\n}\n#ob_wrapper .text_container #ob_file_upload {\n\tfloat: left;\n\twidth: 100px;\n\tfont-size:11px; font-family:Arial, Helvetica, sans-serif; line-height:11px;\n\tborder: solid 1px #09d987;\n\tmargin: 2px;\n}\n#ob_wrapper .text_container #ob_file_clear {\n\tfloat: left;\n\twidth: 100px;\n\tfont-size:11px; font-family:Arial, Helvetica, sans-serif; line-height:11px;\n\tborder: solid 1px #09d987;\n\tmargin: 2px;\n}\n#ob_wrapper .register_link {\n\ttext-decoration: underline;\n\tcolor: #a5a5a5;\n\tfont-size:11px; font-family:Arial, Helvetica, sans-serif; line-height:11px;\n\tmargin-top: 8px;\n\tmargin-right: 24px;\n}\n#ob_wrapper .login_label {\n\tcolor: #a5a5a5;\n\tfont-size:11px; font-family:Arial, Helvetica, sans-serif; line-height:11px;\n\tmargin-left: 48px;\n}\n#ob_wrapper .half {\n\twidth: 300px;\n}\n#ob_wrapper #ob_message_wrapper {\n\tbackground-color: #e0ffe0;\n\tpadding: 4px;\n\tmargin-bottom: 4px;\n}\n#ob_wrapper #ob_message {\n\tfont-size:11px; font-family:Arial, Helvetica, sans-serif; line-height:11px;\n}\n#ob_wrapper #ob_message_close {\n\tfloat: right;\n\tvertical-align: top;\n}\n"
  },
  {
    "path": "newscoop/public/files/.gitignore",
    "content": "*\n\n!.gitignore"
  },
  {
    "path": "newscoop/public/index.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nif (!file_exists(__DIR__ . '/../vendor')) {\n    echo \"Missing dependency! Please install all dependencies with composer.\";\n    echo \"<pre>curl -s https://getcomposer.org/installer | php <br/>php composer.phar install  --no-dev</pre>\";\n    die;\n}\n\nrequire_once __DIR__ . '/../constants.php';\n\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException;\nuse Symfony\\Component\\Debug\\Debug;\n\nerror_reporting(error_reporting() & ~E_STRICT & ~E_DEPRECATED);\n\n// don't add php session Cache-Control values.\nsession_cache_limiter('none');\n\n// check if this is upgrade\nif (php_sapi_name() !== 'cli' &&\n    file_exists(APPLICATION_PATH . '/../conf/configuration.php') &&\n    file_exists(APPLICATION_PATH . '/../conf/database_conf.php') &&\n    file_exists(APPLICATION_PATH . '/../conf/upgrading.php') &&\n    file_exists(APPLICATION_PATH . '/../conf/installation.php')\n) {\n    // it's old installation\n    // remove installation mark\n    @unlink(APPLICATION_PATH . '/../conf/installation.php');\n}\n\n// check if this is installation\nif (php_sapi_name() !== 'cli' &&\n    !defined('INSTALL') &&\n    (!file_exists(APPLICATION_PATH . '/../conf/database_conf.php'))\n) {\n    $subdir = substr($_SERVER['SCRIPT_NAME'], 0, strrpos($_SERVER['SCRIPT_NAME'], '/', -2));\n    if (strpos($subdir, 'install') === false) {\n        header(\"Location: $subdir/install/\");\n        exit;\n    }\n}\n\nrequire_once __DIR__ . '/../application/bootstrap.php.cache';\nrequire_once __DIR__ . '/../application/AppKernel.php';\n\n/**\n * Create Symfony kernel\n */\nif (APPLICATION_ENV === 'production') {\n    $kernel = new AppKernel('prod', false);\n} else if (APPLICATION_ENV === 'development' || APPLICATION_ENV === 'dev') {\n    $current_error_reporting = error_reporting();\n    Debug::enable();\n    error_reporting($current_error_reporting);\n    $kernel = new AppKernel('dev', true);\n} else {\n    $kernel = new AppKernel(APPLICATION_ENV, true);\n}\n\n$kernel->loadClassCache();\n$request = Request::createFromGlobals();\nRequest::setTrustedProxies(array($request->server->get('REMOTE_ADDR')));\n$response = $kernel->handle($request);\n$response->send();\n$kernel->terminate($request, $response);\n"
  },
  {
    "path": "newscoop/public/js/fos_js_routes.js",
    "content": "fos.Router.setData({\"base_url\":\"\",\"routes\":{\"newscoop_exampleplugin_default_admin\":{\"tokens\":[[\"text\",\"\\/admin\\/example_plugin\"]],\"defaults\":[],\"requirements\":[],\"hosttokens\":[]}},\"prefix\":\"\",\"host\":\"localhost\",\"scheme\":\"http\"});"
  },
  {
    "path": "newscoop/public/js/jquery.wobscalendar.js",
    "content": "(function( $ ){\n\t\n\tvar defaults = {\n\t\t'namespace': 'wobs',\n\t\t'defaultView' : 'month',\n\t\t'today' : new Date(),\n\t\t'date' : new Date(),\n\t\t'dayNames': ['Sun','Mon','Tue','Wed','Thu','Fri','Sat'],\n\t\t'firstDay': 0,\n\t\t'monthNames': ['January','February','March','April','May','June','July','August','September','October','November','December'],\n\t\t'navigation': true,\n\t\t'showDayNames': true,\n\t\t'earliestMonth': undefined,\n\t\t'latestMonth': undefined\n    };\n  \n\tvar methods = {\n\t\tinit : function( options ) { \n\t\t\t// If options exist, lets merge them with our default settings\n\t\t\tif ( options ) { \n\t\t\t\toptions = $.extend( defaults, options );\n\t\t\t}\n\t\t\t\n\t\t\tthis.each(function(i, _element) {  \t\t\t\t\n\t\t\t\tvar element = $(_element);\n\t\t\t\tvar calendar = new WobsCalendar(element, options);\n\t\t\t\telement.data('wobscalendar', calendar);\n\t\t\t\tcalendar.render();\t\t\t\t\n\t\t\t});\n\t\t\n\t\t\treturn this;\n\t\t}\n\t};\n\t\t\n\t$.fn.wobscalendar = function( method ) {\n\t    \n\t    // Method calling logic\n\t\tif ( methods[method] ) {\n\t\t\treturn methods[ method ].apply( this, Array.prototype.slice.call( arguments, 1 ));\n\t\t} \n\t\telse if ( typeof method === 'object' || ! method ) {\n\t\t\treturn methods.init.apply( this, arguments );\n\t\t} \n\t\telse {\n\t\t  $.error( 'Method ' +  method + ' does not exist on jQuery.wobscalendar' );\n\t\t} \n\n\t};\n\t\n\t//element is in jquery form $()\n\tfunction WobsCalendar(element, options) {\n\t\t\n\t\tvar t = this;\n\t\n\t\tvar _get_articles = undefined;\n\t\tvar _date_cache = [];\t\n\t\tvar _start = undefined;\n\t\tvar _end = undefined;\n\t\tvar _today = options.today;\n\t\tvar _date = options.date;\n\t\tvar _view = options.defaultView;\n\t\tvar _header = undefined;\n\t\t\n\t\tthis.options = options;\n\t\t\n\t\tt.getCalendarDate = getCalendarDate;\n\t\tt.setCalendarDate = setCalendarDate;\n\t\tt.getTodaysDate = getTodaysDate;\n\t\tt.render = render;\n\t\t\n\t\tif ($.isFunction(options.articles)) {\n\t\t\t_get_articles = options.articles;\n\t\t\tdelete options.articles;\n\t\t}\n\t\n\t\tfunction render() {\n\t\n\t\t\tif (_view === 'month') {\n\t\t\t\tmonthView();\n\t\t\t\t_header = new Header(t, element, options);\n\t\t\t}\n\t\t\telse if(_view === 'widget') {\n\t\t\t\twidgetView();\n\t\t\t}\n\t\t\t\n\t\t\trenderArticles();\n\t\t}\n\t\t\n\t\tfunction getTodaysDate() {\n\t\t\treturn _today;\n\t\t}\n\t\t\n\t\tfunction getCalendarDate() {\n\t\t\treturn _date;\n\t\t}\n\t\t\n\t\tfunction setCalendarDate(date) {\n\t\t\t_date = date;\n\t\t\t\n\t\t\t//set these to empty date boxes.\n\t\t\tfor (var i=0; i<_date_cache.length; i++) {\n\t\t\t\t_date_cache[i].clear();\n\t\t\t}\n\t\t\t\n\t\t\tif (_view === 'month') {\n\t\t\t\tsetMonthViewDates();\n\t\t\t}\n\t\t\t\n\t\t\trenderArticles();\n\t\t}\n\t\t\n\t\tfunction renderArticles() {\n\t\t\t\n\t\t\tif (_get_articles !== undefined) {\n\t\t\t\tif (_view === 'month' && options.navigation === true) {\n\t\t\t\t\t_header.disableHeader();\n\t\t\t\t}\n\t\t\t\t_get_articles(_start, _end, updateCalendar);\n\t\t\t}\t\n\t\t}\n\t\t\n\t\tfunction updateCalendar(articles) {\n\t\t\tvar cached_date, tmpDate, article;\n\t\t\t\t\n\t\t\tfor (var i=0; i<articles.length; i++) {\n\t\t\t\tarticle = articles[i];\n\t\t\t\t\n\t\t\t\ttmpDate = new Date(article.date.year, article.date.month, article.date.day);\n\t\t\t\tcached_date = retrieveDateFromCache(tmpDate);\n\t\t\t\t\n\t\t\t\tif (article.title !== undefined) {\n\t\t\t\t\tcached_date.setTitle(article.title);\n\t\t\t\t}\n\t\t\t\tif (article.image !== undefined) {\n\t\t\t\t\tcached_date.setThumbnail(article.image);\n\t\t\t\t}\n\t\t\t\tif (article.url !== undefined) {\n\t\t\t\t\tcached_date.setUrl(article.url);\n\t\t\t\t}\t\t\n\t\t\t}\n\t\t\t\n\t\t\tif (_view === 'month' && options.navigation === true) {\n\t\t\t\t_header.enableHeader();\n\t\t\t}\n\t\t}\n\t\t\n\t\t//date is a js Date object.\n\t\tfunction retrieveDateFromCache(date) {\n\t\t\tvar one_day, diff;\n\t\t\t\n\t\t\tone_day=1000*60*60*24; //one day in milliseconds.\n\t\t\tdiff = Math.round((date.getTime() - _start.getTime())/one_day);\n\t\t\t\n\t\t\treturn _date_cache[diff];\n\t\t}\n\t\t\n\t\tfunction widgetView() {\n\t\t\tvar table, tr, td, dateBox;\n\t\t\t\n\t\t\ttable = $(\"<table><tbody></tbody></table>\");\n\t\t\ttr = $(\"<tr/>\");\n\t\t\t\n\t\t\tfor (var j=0; j<7; j++) {\n\t\t\t\t\n\t\t\t\ttd = $(\"<td/>\");\n\t\t\t\ttd.addClass(\"wobs-day-\"+j);\n\t\t\t\t\n\t\t\t\tdateBox = new DayBox(j, td);\n\t\t\t\t_date_cache.push(dateBox);\n\t\t\t\t\n\t\t\t\ttr.append(td);\n\t\t\t}\n\t\t\t\n\t\t\ttable.append(tr);\n\t\t\t\n\t\t\tsetWidgetViewDates();\n\t\t\t\n\t\t\telement.append(table);\n\t\t}\n\t\t\n\t\tfunction setWidgetViewDates() {\n\t\t\tvar y, m, d;\n\t\t\t\n\t\t\ty = _date.getFullYear();\n\t\t\tm = _date.getMonth();\n\t\t\td = _date.getDate() - 1;\n\t\t\t\n\t\t\tvar tmp_date;\n\t\t\tfor (var c=_date_cache.length-1; c>-1; c--) {\n\t\t\t\ttmp_date = new Date(y, m, d);\n\t\t\t\t\n\t\t\t\tif(c == 0) {\n\t\t\t\t\t_start = tmp_date;\n\t\t\t\t}\n\t\t\t\telse if(c == _date_cache.length-1) {\n\t\t\t\t\t_end = tmp_date;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\t_date_cache[c].setDate(tmp_date);\n\t\t\t\td--;\n\t\t\t}\n\t\t}\n\t\t\n\t\tfunction monthView() {\n\t\t\tvar table, thead, tbody, tr, td, th, dateBox, dayIndex;\n\t\t\t\n\t\t\ttable = $(\"<table/>\");\n\t\t\ttbody = $(\"<tbody/>\");\n\t\t\t\n\t\t\t//show the names of the days of the week on the calendar\n\t\t\tif(options.showDayNames) {\n\t\t\t\tthead = $(\"<thead/>\");\n\t\t\t\tthead.append(\"<tr/>\");\n\t\t\t\t\n\t\t\t\t//make the <thead> <tr> <th>s\n\t\t\t\tfor(var i=0; i<7; i++) {\n\t\t\t\t\tth = $(\"<th/>\");\n\t\t\t\t\t\n\t\t\t\t\tdayIndex = (options.firstDay + i) % 7;\n\t\t\t\t\tth.append(options.dayNames[dayIndex]);\n\t\t\t\t\t\n\t\t\t\t\tthead.find(\"tr\").append(th);\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\ttable.append(thead)\n\t\t\t}\n\t\t\t\n\t\t\t//make the <tbody> <tr>s\n\t\t\tfor(var i=0; i < 6; i++) {\n\t\t\t\t\n\t\t\t\ttr = $(\"<tr/>\");\n\t\t\t\ttr.addClass(\"wobs-week-\"+i);\n\t\t\t\t\n\t\t\t\tif(i === 0) {\n\t\t\t\t\ttr.addClass(\"wobs-week-first\");\n\t\t\t\t}\n\t\t\t\telse if(i === 5) {\n\t\t\t\t\ttr.addClass(\"wobs-week-last\");\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tfor (var j=0; j<7; j++) {\n\t\t\t\t\tvar dayNum = i*7+j;\n\t\t\t\t\t\n\t\t\t\t\ttd = $(\"<td/>\");\n\t\t\t\t\ttd.addClass(\"wobs-day-\"+dayNum);\n\t\t\t\t\t\n\t\t\t\t\tdateBox = new DayBox(t, td, dayNum);\n\t\t\t\t\t_date_cache.push(dateBox);\n\t\t\t\t\t\n\t\t\t\t\ttr.append(td);\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\ttbody.append(tr);\n\t\t\t}\n\t\t\t\n\t\t\ttable.append(tbody);\n\t\t\t\n\t\t\tsetMonthViewDates();\n\t\t\t\t\n\t\t\telement.append(table);\n\t\t}\t\n\t\t\n\t\tfunction setMonthViewDates() {\n\t\t\tvar y, m, begin, s_dofw, d, tmp_date;\n\t\t\t\n\t\t\ty = _date.getFullYear();\n\t\t\tm = _date.getMonth();\n\t\t\t\n\t\t\tbegin = new Date(y, m, 1);\n\t\t\ts_dofw = begin.getDay();\n\t\t\t\n\t\t\t//need this first day option to start week on either sunday/monday etc (leftmost day)\n\t\t\td = 1 - s_dofw + options.firstDay;\n\t\t\tif (s_dofw < options.firstDay) {\n\t\t\t\td = d - 7;\n\t\t\t}\n\n\t\t\tfor (var c=0; c<_date_cache.length; c++) {\n\t\t\t\ttmp_date = new Date(y, m, d);\n\t\t\t\t\n\t\t\t\tif(c == 0) {\n\t\t\t\t\t_start = tmp_date;\n\t\t\t\t}\n\t\t\t\telse if(c == _date_cache.length-1) {\n\t\t\t\t\t_end = tmp_date;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\t_date_cache[c].setDate(tmp_date);\n\t\t\t\td++;\n\t\t\t}\n\t\t}\n\t}\n\t\n\tfunction Header(calendar, element, options) {\n\t\t\n\t\tvar t, ul, html='';\n\t\t\n\t\tt = this;\n\t\tns = options.namespace;\n\t\t\n\t\tt.disableHeader = disableHeader;\n\t\tt.enableHeader = enableHeader;\n\t\t\n\t\tul = $('<ul class=\"'+ns+'-calendar-nav\"/>');\n\t\t\n\t\tif (options.navigation === true) {\n\t\t\thtml = html + '<li class=\"'+ns+'-button-next\"><a></a></li>';\n\t\t\thtml = html + '<li class=\"'+ns+'-button-prev\"><a></a></li>';\n\t\t}\t\n\t\t\n\t\thtml = html + '<li class=\"'+ns+'-calendar-month\"><p></p></li>';\n\t\t\n\t\t\n\t\tul.append(html);\n\t\t\n\t\tupdateHeader(calendar.getCalendarDate());\n\t\tenableHeader();\n\t\t\n\t\tul.find('.'+ns+'-button-prev').click(function(){\n\t\t\tvar date, mm, yyyy, newDate;\n\t\t\t\n\t\t\tif ($(this).hasClass(ns + '-state-disabled')) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t\n\t\t\tdate = calendar.getCalendarDate();\n\t\t\t\n\t\t\tyyyy = date.getFullYear();\n\t\t\tmm = date.getMonth();\n\t\t\t\n\t\t\tif (mm > 0) {\n\t\t\t\tmm = mm - 1;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tmm = 11;\n\t\t\t\tyyyy = yyyy -1;\n\t\t\t}\n\t\t\t\n\t\t\tnewDate = new Date(yyyy, mm);\n\t\t\t\n\t\t\tupdateHeader(newDate);\n\t\t\tcalendar.setCalendarDate(newDate);\t\t\t\n\t\t});\n\t\t\n\t\tul.find('.'+ns+'-button-next').click(function(){\n\t\t\tvar date, mm, yyyy, newDate;\n\t\t\t\n\t\t\tif ($(this).hasClass(ns + '-state-disabled')) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t\n\t\t\tdate = calendar.getCalendarDate();\n\t\t\t\n\t\t\tyyyy = date.getFullYear();\n\t\t\tmm = date.getMonth();\n\t\t\tmm = mm + 1;\n\t\t\t\n\t\t\tnewDate = new Date(yyyy, mm);\n\t\t\t\n\t\t\tupdateHeader(newDate);\n\t\t\tcalendar.setCalendarDate(newDate);\n\t\t});\n\t\t\n\t\telement.append(ul);\n\t\t\n\t\tfunction disableHeader() {\n\t\t\t\n\t\t\tdisableButton('prev');\n\t\t\tdisableButton('next');\t\t\n\t\t}\n\t\t\n\t\tfunction enableHeader() {\n\t\t\tvar date;\n\t\t\t\n\t\t\tdate = calendar.getCalendarDate();\n\t\t\t\n\t\t\t//have reached the earliest month we should show.\n\t\t\tif ((options.earliestMonth !== undefined) && (date.getTime() === options.earliestMonth.getTime())) {\n\t\t\t\tdeactivateButton('prev');\n\t\t\t}\n\t\t\telse {\n\t\t\t\tactivateButton('prev');\n\t\t\t\tenableButton('prev');\n\t\t\t}\n\t\t\t\n\t\t\t//have reached the latest month we should show.\n\t\t\tif ((options.latestMonth !== undefined) && (date.getTime() === options.latestMonth.getTime())) {\n\t\t\t\tdeactivateButton('next');\n\t\t\t}\n\t\t\telse {\n\t\t\t\tactivateButton('next');\n\t\t\t\tenableButton('next');\n\t\t\t}\n\t\t\t\t\t\n\t\t}\n\t\t\n\t\tfunction activateButton(buttonName) {\n\t\t\tul.find('.'+ns+'-button-' + buttonName)\n\t\t\t\t.removeClass('disabled');\n\t\t}\t\n\t\t\n\t\tfunction deactivateButton(buttonName) {\n\t\t\tul.find('.'+ns+'-button-' + buttonName)\n\t\t\t\t.addClass('disabled');\n\t\t}\n\t\t\t\n\t\tfunction disableButton(buttonName) {\n\t\t\tul.find('.'+ns+'-button-' + buttonName)\n\t\t\t\t.addClass(ns + '-state-disabled');\n\t\t}\n\t\t\t\n\t\tfunction enableButton(buttonName) {\n\t\t\tul.find('.'+ns+'-button-' + buttonName)\n\t\t\t\t.removeClass(ns + '-state-disabled')\n\t\t\t\t.removeClass(\"disabled\");\n\t\t}\n\t\t\n\t\tfunction updateHeader(date) {\n\t\t\tvar month;\n\t\t\t\n\t\t\tyyyy = date.getFullYear();\n\t\t\tmonth = date.getMonth();\n\t\t\tmonth = options.monthNames[month]; \n\t\t\t\n\t\t\tul.find('.'+ns+'-calendar-month p')\n\t\t\t\t.empty()\n\t\t\t\t.append(month+\" \"+yyyy);\n\t\t}\n\t\t\n\t\treturn t;\n\t}\n\t\n\tfunction DayBox(calendar, td, box_id) {\n\t\t\n\t\tvar _date = undefined;\n\t\tvar _title = undefined;\n\t\tvar _s_image = undefined;\n\t\tvar _url = undefined;\n\t\t\n\t\tvar _element = td;\n\t\t\n\t\tthis.setDate = setDate;\n\t\tthis.setTitle = setTitle;\n\t\tthis.setThumbnail = setThumbnail;\n\t\tthis.setUrl = setUrl;\n\t\tthis.clear = clear;\n\t\t\n\t\ttd.append('<div class=\"wobs-date-content\"><a></a></div>')\n\t\t\t.find(\"a\")\n\t\t\t.append('<div class=\"wobs-date-container\"/>')\n\t\t\t\t.find(\".wobs-date-container\")\n\t\t\t\t.append('<div class=\"wobs-date-label\"/>');\n\t\t\n\t\tfunction setDate(date) {\n\t\t\tvar cm, dm, today;\n\t\n\t\t\ttd.find(\".wobs-date-label\")\n\t\t\t\t.append(date.getDate());\n\t\t\t\n\t\t\tcm = calendar.getCalendarDate();\n\t\t\tcm = cm.getMonth();\n\t\t\tdm = date.getMonth();\n\t\t\t\n\t\t\tif (cm === dm) {\n\t\t\t\ttd.addClass(\"wobs-curr-month\");\n\t\t\t}\n\t\t\telse {\n\t\t\t\ttd.addClass(\"wobs-other-month\");\n\t\t\t}\n\t\t\t\n\t\t\ttoday = calendar.getTodaysDate();\n\t\t\t//date is today\n\t\t\tif (today.getTime() == date.getTime()) {\n\t\t\t\ttd.find(\".wobs-date-label\").addClass(\"wobs-today\");\n\t\t\t}\n\t\t\t\n\t\t\t_date = date;\n\t\t}\n\t\t\n\t\tfunction setTitle(title) {\n\t\t\t_title = title;\n\t\t\t\n\t\t\t$(td).qtip({\n\t\t\t    id: 'wobs-tooltip-'+box_id,\n\t\t\t    content: {\n\t\t\t        text: title\n\t\t\t    },\n\t\t\t\tposition: {\n\t\t\t\t\tmy: 'bottom center',\n\t\t\t\t\tat: 'top center'\n\t\t\t\t},\n\t\t\t\tstyle: {\n\t\t\t      classes: 'ui-tooltip-light ui-tooltip-shadow ui-tooltip-rounded'\n\t\t\t   }\n\t\t\t});\n\t\t}\n\t\t\n\t\tfunction setThumbnail(picture) {\n\t\t\t_s_image = picture;\n\t\t\t\n\t\t\ttd.find(\"a\").append('<img src=\"'+_s_image+'\"></img>');\n\t\t}\n\t\t\n\t\tfunction setUrl(url) {\n\t\t\t_url = url;\n\t\t\ttd.find(\"a\").attr(\"href\", url);\n\t\t}\n\t\t\n\t\tfunction clear() {\n\t\t\t_date = undefined;\n\t\t\t_title = undefined;\n\t\t\t_s_image = undefined;\n\t\t\t_url = undefined;\n\t\t\t\n\t\t\ttd.qtip('destroy');\n\t\t\t\n\t\t\ttd.removeClass(\"wobs-other-month\");\n\t\t\ttd.removeClass(\"wobs-curr-month\");\n\t\t\ttd.removeAttr(\"title\");\n\t\t\t\n\t\t\ttd.find(\"a\").removeAttr(\"href\");\n\t\t\t\n\t\t\ttd.find(\"img\")\n\t\t\t\t.remove();\n\t\n\t\t\ttd.find(\".wobs-date-label\")\n\t\t\t\t.removeClass(\"wobs-today\")\n\t\t\t\t.empty();\n\t\t}\n\t}\n\t\n})( jQuery );\n\n\n"
  },
  {
    "path": "newscoop/public/js/user_profile.js",
    "content": "$(document).ready(function(){\n\t\n\t$(\"a.user_uploaded_pics\").fancybox({\n\t\ttype: \"image\"\n\t});\n\t\n});"
  },
  {
    "path": "newscoop/public/pdf/.gitignore",
    "content": "*\n\n!.gitignore"
  },
  {
    "path": "newscoop/robots.txt",
    "content": "User-agent: *\nDisallow: /_statistics/\nDisallow: /admin-files/\nDisallow: /admin-style/\nDisallow: /admin.php\nDisallow: /api*/\n"
  },
  {
    "path": "newscoop/scripts/doctrine.php",
    "content": "<?php\ndefine('DONT_BOOTSTRAP_ZEND', TRUE);\n\nrequire_once __DIR__ . '/../constants.php';\nrequire_once __DIR__ . '/../application.php';\n\n$kernel->boot();\n$container = $kernel->getContainer();\n\\Zend_Registry::set('container', $container);\n\n// Retrieve Doctrine Container resource\n$em = Zend_Registry::get('container')->getService('em');\n\nglobal $g_ado_db;\n$g_ado_db = Zend_Registry::get('container')->getService('doctrine.adodb');\n\n// Console\n$cli = new \\Symfony\\Component\\Console\\Application(\n    'Doctrine Command Line Interface',\n    \\Doctrine\\Common\\Version::VERSION\n);\n\ntry {\n    // Bootstrapping Console HelperSet\n    $helperSet = array();\n\n    if (($dbal = $em->getConnection()) !== null) {\n        $helperSet['db'] = new \\Doctrine\\DBAL\\Tools\\Console\\Helper\\ConnectionHelper($dbal);\n    }\n\n    if ($em !== null) {\n        $helperSet['em'] = new \\Doctrine\\ORM\\Tools\\Console\\Helper\\EntityManagerHelper($em);\n    }\n} catch (\\Exception $e) {\n    $cli->renderException($e, new \\Symfony\\Component\\Console\\Output\\ConsoleOutput());\n}\n\n$cli->setCatchExceptions(true);\n$cli->setHelperSet(new \\Symfony\\Component\\Console\\Helper\\HelperSet($helperSet));\n\n$cli->addCommands(array(\n    // DBAL Commands\n    new \\Doctrine\\DBAL\\Tools\\Console\\Command\\RunSqlCommand(),\n    new \\Doctrine\\DBAL\\Tools\\Console\\Command\\ImportCommand(),\n\n    // ORM Commands\n    new \\Doctrine\\ORM\\Tools\\Console\\Command\\ClearCache\\MetadataCommand(),\n    new \\Doctrine\\ORM\\Tools\\Console\\Command\\ClearCache\\ResultCommand(),\n    new \\Doctrine\\ORM\\Tools\\Console\\Command\\ClearCache\\QueryCommand(),\n    new \\Doctrine\\ORM\\Tools\\Console\\Command\\SchemaTool\\CreateCommand(),\n    new \\Doctrine\\ORM\\Tools\\Console\\Command\\SchemaTool\\UpdateCommand(),\n    new \\Doctrine\\ORM\\Tools\\Console\\Command\\SchemaTool\\DropCommand(),\n    new \\Doctrine\\ORM\\Tools\\Console\\Command\\EnsureProductionSettingsCommand(),\n    new \\Doctrine\\ORM\\Tools\\Console\\Command\\ConvertDoctrine1SchemaCommand(),\n    new \\Doctrine\\ORM\\Tools\\Console\\Command\\GenerateRepositoriesCommand(),\n    new \\Doctrine\\ORM\\Tools\\Console\\Command\\GenerateEntitiesCommand(),\n    new \\Doctrine\\ORM\\Tools\\Console\\Command\\GenerateProxiesCommand(),\n    new \\Doctrine\\ORM\\Tools\\Console\\Command\\ConvertMappingCommand(),\n    new \\Doctrine\\ORM\\Tools\\Console\\Command\\RunDqlCommand(),\n    new \\Doctrine\\ORM\\Tools\\Console\\Command\\ValidateSchemaCommand(),\n));\n\n$cli->run();\n"
  },
  {
    "path": "newscoop/scripts/file_processing.php",
    "content": "<?php\n\nfunction camp_upload_errors($p_status)\n{\n\t$err_msg = 'Unknown error';\n\n\t$error_types = array(\n\t\tUPLOAD_ERR_OK => 'There is no error, the file uploaded with success.',\n\t\tUPLOAD_ERR_INI_SIZE => 'The uploaded file exceeds the upload_max_filesize directive in php.ini.',\n\t\tUPLOAD_ERR_FORM_SIZE => 'The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form.',\n\t\tUPLOAD_ERR_PARTIAL => 'The uploaded file was only partially uploaded.',\n\t\tUPLOAD_ERR_NO_FILE => 'No file was uploaded.',\n\t\tUPLOAD_ERR_NO_TMP_DIR => 'Missing a temporary folder.',\n\t\tUPLOAD_ERR_CANT_WRITE => 'Failed to write file to disk.',\n\t\tUPLOAD_ERR_EXTENSION => 'A PHP extension stopped the file upload.'\n\t);\n\n\tif (array_key_exists($p_status, $error_types)) {\n\t\t$err_msg = $error_types[$p_status];\n\t}\n\n\treturn $err_msg;\n}\n"
  },
  {
    "path": "newscoop/scripts/fixer.php",
    "content": "#!/usr/bin/env php\n<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n$newscoopDir = realpath(__DIR__ . '/../');\n// set chmods for directories\nexec('chmod -R 777 '.$newscoopDir.'/cache/');\nexec('chmod -R 777 '.$newscoopDir.'/log/');\nexec('chmod -R 777 '.$newscoopDir.'/conf/');\nexec('chmod -R 777 '.$newscoopDir.'/library/Proxy/');\nexec('chmod -R 777 '.$newscoopDir.'/themes/');\nexec('chmod -R 777 '.$newscoopDir.'/plugins/');\nexec('chmod -R 777 '.$newscoopDir.'/public/');\nexec('chmod -R 777 '.$newscoopDir.'/images/');\n"
  },
  {
    "path": "newscoop/scripts/newscoop.php",
    "content": "<?php\nrequire_once __DIR__ . '/../application/console';"
  },
  {
    "path": "newscoop/src/Newscoop/ArticlesBundle/DependencyInjection/Configuration.php",
    "content": "<?php\n\nnamespace Newscoop\\ArticlesBundle\\DependencyInjection;\n\nuse Symfony\\Component\\Config\\Definition\\Builder\\TreeBuilder;\nuse Symfony\\Component\\Config\\Definition\\ConfigurationInterface;\n\n/**\n * This is the class that validates and merges configuration from your app/config files\n *\n * To learn more see {@link http://symfony.com/doc/current/cookbook/bundles/extension.html#cookbook-bundles-extension-config-class}\n */\nclass Configuration implements ConfigurationInterface\n{\n    /**\n     * {@inheritDoc}\n     */\n    public function getConfigTreeBuilder()\n    {\n        $treeBuilder = new TreeBuilder();\n        $rootNode = $treeBuilder->root('articles');\n\n        // Here you should define the parameters that are allowed to\n        // configure your bundle. See the documentation linked above for\n        // more information on that topic.\n\n        return $treeBuilder;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/ArticlesBundle/DependencyInjection/NewscoopArticlesExtension.php",
    "content": "<?php\n\nnamespace Newscoop\\ArticlesBundle\\DependencyInjection;\n\nuse Symfony\\Component\\DependencyInjection\\ContainerBuilder;\nuse Symfony\\Component\\Config\\FileLocator;\nuse Symfony\\Component\\HttpKernel\\DependencyInjection\\Extension;\nuse Symfony\\Component\\DependencyInjection\\Loader;\n\n/**\n * This is the class that loads and manages your bundle configuration\n *\n * To learn more see {@link http://symfony.com/doc/current/cookbook/bundles/extension.html}\n */\nclass NewscoopArticlesExtension extends Extension\n{\n    /**\n     * {@inheritDoc}\n     */\n    public function load(array $configs, ContainerBuilder $container)\n    {\n        $configuration = new Configuration();\n        $config = $this->processConfiguration($configuration, $configs);\n\n        $loader = new Loader\\YamlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));\n        $loader->load('services.yml');\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/ArticlesBundle/Entity/EditorialComment.php",
    "content": "<?php\n\n/**\n * @package Newscoop\\ArticlesBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\ArticlesBundle\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\Entity\\Hierarchable;\n\n/**\n * @ORM\\Entity(repositoryClass=\"Newscoop\\ArticlesBundle\\Entity\\Repository\\EditorialCommentRepository\")\n * @ORM\\Table(name=\"editorial_comments\")\n */\nclass EditorialComment implements Hierarchable\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\Article\")\n     * @ORM\\JoinColumns({\n     *      @ORM\\JoinColumn(name=\"fk_article_number\", referencedColumnName=\"Number\"),\n     *      @ORM\\JoinColumn(name=\"fk_language_id\", referencedColumnName=\"IdLanguage\")\n     *  })\n     */\n    protected $article;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"fk_article_number\")\n     * @var int\n     */\n    protected $articleNumber;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"fk_language_id\")\n     * @var int\n     */\n    protected $languageId;\n\n    /**\n     * @ORM\\Column(type=\"text\", name=\"comment\")\n     * @var text\n     */\n    protected $comment;\n\n    /**\n     * @ORM\\Column(type=\"boolean\", name=\"resolved\")\n     * @var boolean\n     */\n    protected $resolved = false;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"EditorialComment\")\n     * @ORM\\JoinColumn(name=\"fk_parent_id\", referencedColumnName=\"id\", onDelete=\"SET NULL\")\n     * @var Newscoop\\ArticlesBundle\\Entity\\EditorialComment\n     */\n    protected $parent;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"fk_parent_id\")\n     * @var integer\n     */\n    protected $parentId;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\User\")\n     * @ORM\\JoinColumn(name=\"user_id\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\User\n     */\n    protected $user;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"created_at\")\n     * @var datetime\n     */\n    protected $created;\n\n    /**\n     * @ORM\\Column(type=\"boolean\", name=\"is_active\")\n     * @var boolean\n     */\n    protected $is_active = true;\n\n    public function __construct()\n    {\n        $this->created = new \\DateTime();\n    }\n\n    /**\n     * Gets the value of is_active.\n     *\n     * @return boolean\n     */\n    public function getIsActive()\n    {\n        return $this->is_active;\n    }\n\n    /**\n     * Sets the value of is_active.\n     *\n     * @param boolean $is_active the is  active\n     *\n     * @return self\n     */\n    public function setIsActive($is_active)\n    {\n        $this->is_active = $is_active;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of id.\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Sets the value of id.\n     *\n     * @param int $id the id\n     *\n     * @return self\n     */\n    public function setId($id)\n    {\n        $this->id = $id;\n\n        return $this;\n    }\n\n    /**\n     * Gets the }).\n     *\n     * @return mixed\n     */\n    public function getArticle()\n    {\n        return $this->article;\n    }\n\n    /**\n     * Sets the }).\n     *\n     * @param mixed $article the article\n     *\n     * @return self\n     */\n    public function setArticle($article)\n    {\n        $this->article = $article;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of articleNumber.\n     *\n     * @return int\n     */\n    public function getArticleNumber()\n    {\n        return $this->articleNumber;\n    }\n\n    /**\n     * Sets the value of articleNumber.\n     *\n     * @param int $articleNumber the article number\n     *\n     * @return self\n     */\n    public function setArticleNumber($articleNumber)\n    {\n        $this->articleNumber = $articleNumber;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of languageId.\n     *\n     * @return int\n     */\n    public function getLanguageId()\n    {\n        return $this->languageId;\n    }\n\n    /**\n     * Sets the value of languageId.\n     *\n     * @param int $languageId the language id\n     *\n     * @return self\n     */\n    public function setLanguageId($languageId)\n    {\n        $this->languageId = $languageId;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of comment.\n     *\n     * @return text\n     */\n    public function getComment()\n    {\n        return $this->comment;\n    }\n\n    /**\n     * Sets the value of comment.\n     *\n     * @param text $comment the comment\n     *\n     * @return self\n     */\n    public function setComment($comment)\n    {\n        $this->comment = $comment;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of resolved.\n     *\n     * @return boolean\n     */\n    public function getResolved()\n    {\n        return $this->resolved;\n    }\n\n    /**\n     * Sets the value of resolved.\n     *\n     * @param boolean $resolved the resolved\n     *\n     * @return self\n     */\n    public function setResolved($resolved)\n    {\n        $this->resolved = $resolved;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of parent.\n     *\n     * @return Newscoop\\ArticlesBundle\\Entity\\EditorialComment\n     */\n    public function getParent()\n    {\n        return $this->parent;\n    }\n\n    /**\n     * Sets the value of parent.\n     *\n     * @param Newscoop\\ArticlesBundle\\Entity\\EditorialComment $parent the parent\n     *\n     * @return self\n     */\n    public function setParent(EditorialComment $parent)\n    {\n        $this->parent = $parent;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of user.\n     *\n     * @return Newscoop\\Entity\\User\n     */\n    public function getUser()\n    {\n        return $this->user;\n    }\n\n    /**\n     * Sets the value of user.\n     *\n     * @param Newscoop\\Entity\\User $user the user\n     *\n     * @return self\n     */\n    public function setUser(User $user)\n    {\n        $this->user = $user;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of created.\n     *\n     * @return datetime\n     */\n    public function getCreated()\n    {\n        return $this->created;\n    }\n\n    /**\n     * Sets the value of created.\n     *\n     * @param datetime $created the created\n     *\n     * @return self\n     */\n    public function setCreated(\\DateTime $created)\n    {\n        $this->created = $created;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of parentId.\n     *\n     * @return integer\n     */\n    public function getParentId()\n    {\n        return $this->parentId;\n    }\n\n    /**\n     * Sets the value of parentId.\n     *\n     * @param integer $parentId the parent id\n     *\n     * @return self\n     */\n    protected function setParentId($parentId)\n    {\n        $this->parentId = $parentId;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/ArticlesBundle/Entity/Repository/EditorialCommentRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\\ArticlesBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\ArticlesBundle\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository;\n\n/**\n * Editorial comments repository\n */\nclass EditorialCommentRepository extends EntityRepository\n{\n    /**\n     * Get all editorial comments for article\n     *\n     * @param integer $articleNumber\n     * @param boolean $fetchReplies\n     *\n     * @return Doctrine\\ORM\\Query\n     */\n    public function getAllByArticleNumber($articleNumber, $fetchReplies = true)\n    {\n        $qb = $this->createQueryBuilder('ec');\n        $qb\n            ->select('ec', 'u')\n            ->join('ec.user', 'u')\n            ->where('ec.articleNumber = :articleNumber')\n            ->andWhere('ec.is_active = :is_active')\n            ->andWhere('ec.resolved = false')\n            ->setParameters(array(\n                'articleNumber' => $articleNumber,\n                'is_active' => true,\n            ));\n\n        if (!$fetchReplies) {\n            $qb->andWhere($qb->expr()->isNull('ec.parentId'));\n        }\n\n        return $qb->getQuery();\n    }\n\n    /**\n     * Get one editorial comment by article and comment id\n     *\n     * @param integer $articleNumber\n     * @param integer $languageId\n     * @param integer $commentId\n     * @param boolean $fetchReplies\n     *\n     * @return Doctrine\\ORM\\Query\n     */\n    public function getOneByArticleAndCommentId($articleNumber, $languageId, $commentId, $fetchReplies = true)\n    {\n        $qb = $this->createQueryBuilder('ec');\n        $qb\n            ->select('ec', 'u')\n            ->join('ec.user', 'u')\n            ->where('ec.articleNumber = :articleNumber')\n            ->andWhere('ec.languageId = :languageId')\n            ->andWhere('ec.id = :commentId')\n            ->andWhere('ec.is_active = :is_active')\n            ->setParameters(array(\n                'articleNumber' => $articleNumber,\n                'languageId' => $languageId,\n                'commentId' => $commentId,\n                'is_active' => true,\n            ));\n\n        if (!$fetchReplies) {\n            $qb->andWhere($qb->expr()->isNull('ec.parentId'));\n        }\n\n        return $qb->getQuery();\n    }\n\n    /**\n     * Get all editorial comments\n     *\n     * @param boolean $fetchReplies\n     *\n     * @return Doctrine\\ORM\\Query\n     */\n    public function getAll($fetchReplies = true)\n    {\n        $qb = $this->createQueryBuilder('ec');\n        $qb\n            ->select('ec', 'u')\n            ->join('ec.user', 'u')\n            ->andWhere('ec.is_active = :is_active')\n            ->setParameters(array(\n                'is_active' => true,\n            ));\n\n        if (!$fetchReplies) {\n            $qb->andWhere($qb->expr()->isNull('ec.parentId'));\n        }\n\n        return $qb->getQuery();\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/ArticlesBundle/EventListener/HookListener.php",
    "content": "<?php\n/**\n * @package Newscoop\\ArticlesBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\ArticlesBundle\\EventListener;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Templating\\EngineInterface;\nuse Newscoop\\EventDispatcher\\Events\\PluginHooksEvent;\nuse Doctrine\\ORM\\EntityManager;\n\nclass HookListener\n{\n    private $em;\n    private $templating;\n    private $clientManager;\n    private $preferencesService;\n    private $publicationService;\n\n    /**\n     * Construct\n     *\n     * @param EntityManager   $em         Entity manager\n     * @param EngineInterface $templating Templating\n     */\n    public function __construct(EntityManager $em, EngineInterface $templating, $clientManager, $preferencesService, $publicationService)\n    {\n        $this->em = $em;\n        $this->templating = $templating;\n        $this->clientManager = $clientManager;\n        $this->preferencesService = $preferencesService;\n        $this->publicationService = $publicationService;\n    }\n\n    /**\n     * Lists editorial comments for given article\n     *\n     * @param PluginHooksEvent $event Plugins hook event\n     *\n     * @return boolean\n     */\n    public function renderEditorialCommentsTemplate(PluginHooksEvent $event)\n    {\n        $article = $event->getArgument('article');\n        $clientName = 'newscoop_'.$this->preferencesService->SiteSecretKey;\n        $client = $this->em->getRepository('\\Newscoop\\GimmeBundle\\Entity\\Client')->findOneByName($clientName);\n\n        $response = $this->templating->renderResponse('NewscoopArticlesBundle:Hook:editorialComments.html.twig', array(\n            'article' => $article,\n            'articleNumber' => $article->getArticleNumber(),\n            'articleLanguage' => $article->getLanguageId(),\n            'clientId' => $client->getPublicId(),\n            'pluginName' => 'Editorial Comments',\n        ));\n\n        $event->addHookResponse($response);\n\n        return true;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/ArticlesBundle/Form/Type/EditorialCommentType.php",
    "content": "<?php\n/**\n * @package Newscoop\\ArticlesBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric ź.u.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\ArticlesBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\nuse Symfony\\Component\\Validator\\Constraints as Assert;\n\nclass EditorialCommentType extends AbstractType\n{\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $builder->add('comment', null, array(\n            'required' => true,\n        ));\n        $builder->add('resolved', 'checkbox', array(\n            'required' => false,\n        ));\n        $builder->add('parent', 'number', array(\n            'required' => false,\n        ));\n    }\n\n    public function getName()\n    {\n        return 'editorial_comment';\n    }\n\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {\n        $resolver->setDefaults(array(\n            'csrf_protection'   => false,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/ArticlesBundle/NewscoopArticlesBundle.php",
    "content": "<?php\n\nnamespace Newscoop\\ArticlesBundle;\n\nuse Symfony\\Component\\HttpKernel\\Bundle\\Bundle;\n\nclass NewscoopArticlesBundle extends Bundle\n{\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/ArticlesBundle/Resources/config/services.yml",
    "content": "services:\n    articles.hooks.listener:\n        class: \"Newscoop\\ArticlesBundle\\EventListener\\HookListener\"\n        arguments:\n            - @em\n            - @templating\n            - @fos_oauth_server.client_manager.default\n            - @system_preferences_service\n            - @newscoop_newscoop.publication_service\n        tags:\n          - { name: kernel.event_listener, event: newscoop_admin.interface.article.edit.sidebar.editorialComments, method: renderEditorialCommentsTemplate }\n\n    newscoop.editorial_comments:\n        class: Newscoop\\ArticlesBundle\\Services\\EditorialCommentsService\n        arguments:  [\"@em\"]\n"
  },
  {
    "path": "newscoop/src/Newscoop/ArticlesBundle/Resources/public/app/app.js",
    "content": "(function() {\n'use strict';\nvar app = angular.module('editorialCommentsApp', ['ngActivityIndicator', 'angularMoment', 'infinite-scroll', 'ngRoute'])\n  .config(function($interpolateProvider, $routeProvider) {\n    $routeProvider\n        .otherwise({\n            templateUrl: '../../bundles/newscooparticles/views/main.html',\n            controller: 'EditorialCommentsCtrl'\n        });\n\n      $interpolateProvider.startSymbol('{[{').endSymbol('}]}');\n});\n})();"
  },
  {
    "path": "newscoop/src/Newscoop/ArticlesBundle/Resources/public/app/comments-ctrl.js",
    "content": "'use strict';\n\n/**\n* AngularJS controller for managing various actions on the editorial comments, e.g.\n* adding new comments, resolving comments etc.\n*\n* @class EditorialCommentsCtrl\n*/\nangular.module('editorialCommentsApp').controller('EditorialCommentsCtrl', [\n\t'$scope',\n\t'$activityIndicator',\n\t'$timeout',\n\t'Comments',\n\t'$interval',\n\tfunction (\n\t\t$scope,\n\t\t$activityIndicator,\n\t\t$timeout,\n\t\tComments,\n\t\t$interval\n\t) {\n\n\tvar comments = new Comments();\n\t$scope.comments = comments;\n\t$scope.stopRefreshing = false;\n\n    $scope.trans = function (phrase) {\n        return Translator.trans(phrase);\n    }\n\n    /**\n     * It loads comments every 20 seconds to update\n     * the curent list of the comments\n     */\n    $scope.refresher = function () {\n        var intervalPromise = $interval(function(){\n            if (!$scope.stopRefreshing) {\n                comments.refresh();\n            }\n        }, 20000);\n\n        $scope.$on('$destroy', function() {\n            if (angular.isDefined(intervalPromise)) {\n                $interval.cancel(intervalPromise);\n                intervalPromise = undefined;\n            }\n        });\n    }\n\n\t/**\n     * Updates comments array. It adds a new comment to the array\n     * of the comments.\n     *\n     * @param  {array}   commentsArray Array of the comments data\n     * @param  {integer} parentId      Parent comment id\n     * @param  {object}  newComment    Newly inserted comment object\n     */\n    var addChildComment = function (commentsArray, parentId, newComment) {\n    \tvar index = 0;\n        for (var i = 0; i < commentsArray.length; i++) {\n            if (commentsArray[i].parent && commentsArray[i].parent.id == parentId) {\n            \tindex = commentsArray.indexOf(commentsArray[i]);\n            }\n        }\n\n        index = index + 1;\n        // add it as first child of the parent comment\n        if (index == 1) {\n        \tfor (var i = 0; i < commentsArray.length; i++) {\n\t            if (commentsArray[i].id == parentId) {\n\t            \tindex = commentsArray.indexOf(commentsArray[i]) + 1;\n\t            }\n\t        }\n        }\n\n        commentsArray.splice(index, 0, newComment);\n    };\n\n    /**\n     * Removes comment and its children from the array of not solved comments\n     *\n     * @param  {array}   commentsArray Array of comments\n     * @param  {integer} id       comment id\n     */\n    var removeCommentWithChildrenFromArray = function (commentsArray, id) {\n    \tvar removeComments = [];\n        for (var i = 0; i < commentsArray.length; i++) {\n            if (commentsArray[i].id == id || (commentsArray[i].parent && commentsArray[i].parent.id == id)) {\n            \tremoveComments.push(commentsArray[i]);\n            }\n        }\n\n        for (var i = 0; i < removeComments.length; i++) {\n            commentsArray.splice(commentsArray.indexOf(removeComments[i]), 1);\n        }\n    };\n\n\t/**\n     * Hides/shows replying box\n     *\n     * @method showReplyBox\n     * @param scope {object} currently selected element\n     */\n    $scope.showReplyBox = function(scope) {\n      if (scope.isReplying) {\n        scope.isReplying = false;\n        $scope.stopRefreshing = false;\n      } else {\n        scope.isReplying = true;\n        $scope.stopRefreshing = true;\n      }\n    };\n\n    /**\n     * Hides/shows edit box\n     *\n     * @method isEditing\n     * @param scope {object} currently selected element\n     */\n    $scope.isEditing = function(scope) {\n      if (scope.editing) {\n        scope.editing = false;\n        $scope.stopRefreshing = false;\n      } else {\n        scope.editing = true;\n        $scope.stopRefreshing = true;\n      }\n    };\n\n    /**\n     * Hide button, hiding extra options like e.g. adding new substopic etc.\n     *\n     * @method hideExtraOptions\n     * @parent scope {object} currently selected element in a tree\n     */\n    $scope.hide = function(scope) {\n      scope.editing = false;\n      scope.isReplying = false;\n      $scope.stopRefreshing = false;\n    };\n\n    /**\n     * Resolves editorial comment\n     *\n     * @method resolveComment\n     * @param commentId {integer} comment's id\n     */\n    $scope.resolveComment = function(commentId) {\n    \tvar postData = {\n            editorial_comment: {\n                resolved: true,\n            },\n            _csrf_token: token\n        };\n\n      \tcomments.update(postData, commentId).success(function (data) {\n\t        flashMessage(Translator.trans('editorial.alert.resolved', {}, 'comments'));\n\t        removeCommentWithChildrenFromArray($scope.comments.items, commentId);\n\t    }).error(function(data, status){\n\t        flashMessage(data.errors[0].message, 'error');\n\t    });\n    };\n\n    /**\n     * Updates comment\n     *\n     * @method editComment\n     * @param comment {object} comment object\n     */\n    $scope.editComment = function(comment) {\n       var postData = {\n          editorial_comment: {\n              comment: comment.comment,\n          },\n          _csrf_token: token\n      };\n\n      comments.update(postData, comment.id).success(function (data) {\n\t        flashMessage(Translator.trans('editorial.alert.edited', {}, 'comments'));\n\t\t\tcomment.editing = false;\n\t    }).error(function(data, status){\n\t        flashMessage(data.errors[0].message, 'error');\n\t    });\n\n    };\n\n    /**\n     * Deletes comment\n     *\n     * @method deleteComment\n     * @param comment {integer} comment's id\n     */\n    $scope.deleteComment = function(commentId) {\n      comments.delete(commentId).success(function (data) {\n\t        flashMessage(Translator.trans('editorial.alert.deleted', {}, 'comments'));\n\t        removeCommentWithChildrenFromArray($scope.comments.items, commentId);\n\t    }).error(function(data, status){\n\t        flashMessage(data.errors[0].message, 'error');\n\t    });\n    };\n\n    $scope.textareaMessage = {};\n    $scope.textareaReply = {};\n\n    /**\n     * Resolves editorial comment\n     *\n     * @method addComment\n     * @param comment {integer} comment\n     */\n    $scope.addComment = function(comment) {\n        var addFormData = {\n            editorial_comment: {},\n            _csrf_token: token\n        }\n\n        addFormData.editorial_comment[\"comment\"] = $scope.textareaMessage.comment;\n\n        if (comment.id && $scope.textareaReply.comment) {\n        \taddFormData.editorial_comment[\"comment\"] = $scope.textareaReply.comment;\n        \taddFormData.editorial_comment[\"parent\"] = comment.id;\n        }\n\n      \tcomments.create(addFormData).success(function (data, code, headers) {\n\t        comments.getOne(headers('X-Location')).success(function (data) {\n\t        \tif (addFormData.editorial_comment.parent) {\n\t        \t\taddChildComment(comments.items, addFormData.editorial_comment.parent, data);\n\t        \t} else {\n\t        \t\tcomments.items.push(data);\n\t        \t}\n\t        \tflashMessage(Translator.trans('editorial.alert.added', {}, 'comments'));\n\t        \t$scope.textareaMessage = {};\n\t        \t$scope.textareaReply = {};\n\t        \tcomment.isReplying = false;\n\t        \t$scope.enableTyping = false;\n                $scope.stopRefreshing = false;\n\t        }).error(function(data, status){\n\t\t        flashMessage(data.errors[0].message, 'error');\n\t\t    });\n\t    }).error(function(data, status){\n\t        flashMessage(data.errors[0].message, 'error');\n\t    });\n    };\n}]);"
  },
  {
    "path": "newscoop/src/Newscoop/ArticlesBundle/Resources/public/app/loading-bar.css",
    "content": ".ai-indicator,\n.ai-indicator *,\n.ai-indicator *:before,\n.ai-indicator *:after {\n  -webkit-box-sizing: border-box;\n  -moz-box-sizing: border-box;\n  box-sizing: border-box;\n}\n\n/* Colors */\n\n.ai-white-spin {\n  border-color: rgba(255,255,255,.5) rgba(255,255,255, .5) #fff #fff;\n}\n\n.ai-white-parent > * {\n  background: #fff;\n}\n\n.ai-grey-spin {\n  border-color: rgba(189, 195, 199, .5) rgba(189, 195, 199, .5) #bdc3c7 #bdc3c7;\n}\n\n.ai-grey-parent > * {\n  background: #bdc3c7;\n}\n\n.ai-dark-spin {\n  border-color: rgba(44, 62, 80, .5) rgba(44, 62, 80, .5) #2c3e50 #2c3e50;\n}\n\n.ai-dark-parent > * {\n  background: #2c3e50;\n}\n\n/* Circled */\n\n.ai-circled {\n  z-index: 9999;\n  height: 32px;\n  width: 32px;\n  position: relative;\n  border-width: 5px;\n  border-style: solid;\n  border-radius: 100%;\n  -webkit-animation: ai-clockwise .6s linear infinite;\n  animation: ai-clockwise .6s linear infinite;\n}\n\n@-webkit-keyframes ai-clockwise {\n  to {\n    -webkit-transform: rotate(360deg) translateZ(0);\n    transform: rotate(360deg) translateZ(0);\n  }\n}\n\n@keyframes ai-clockwise {\n  to {\n    -webkit-transform: rotate(360deg) translateZ(0);\n    -ms-transform: rotate(360deg) translateZ(0);\n    transform: rotate(360deg) translateZ(0);\n  }\n}\n\n/* Dotted */\n\n.ai-dotted {\n  width: 36px;\n}\n\n.ai-dotted .ai-inner1,\n.ai-dotted .ai-inner2,\n.ai-dotted .ai-inner3 {\n  display: inline-block;\n  margin: 0.125em;\n  width: 0.5em;\n  height: 0.5em;\n  border-radius: 100%;\n  -webkit-transform-origin: 50%;\n  -ms-transform-origin: 50%;\n  transform-origin: 50%;\n  -webkit-animation: ai-rotate .75s linear infinite;\n  animation: ai-rotate .75s linear infinite;\n}\n\n.ai-dotted .ai-inner2 {\n  -webkit-animation-delay: 0.1875s;\n  animation-delay: 0.1875s;\n}\n\n.ai-dotted .ai-inner3 {\n  -webkit-animation-delay: 0.375s;\n  animation-delay: 0.375s;\n}\n\n@-webkit-keyframes ai-rotate {\n  0% {\n    -webkit-transform: translateY(0%);\n    transform: translateY(0%);\n  }\n\n  30% {\n    -webkit-transform: translateY(-0.25em);\n    transform: translateY(-0.25em);\n  }\n\n  50% {\n    -webkit-transform: translateY(0%);\n    transform: translateY(0%);\n  }\n\n  70% {\n    -webkit-transform: translateY(0.25em);\n    transform: translateY(0.25em);\n  }\n}\n\n@keyframes ai-rotate {\n  0% {\n    -webkit-transform: translateY(0%);\n    -ms-transform: translateY(0%);\n    transform: translateY(0%);\n  }\n\n  30% {\n    -webkit-transform: translateY(-0.25em);\n    -ms-transform: translateY(-0.25em);\n    transform: translateY(-0.25em);\n  }\n\n  50% {\n    -webkit-transform: translateY(0%);\n    -ms-transform: translateY(0%);\n    transform: translateY(0%);\n  }\n\n  70% {\n    -webkit-transform: translateY(0.25em);\n    -ms-transform: translateY(0.25em);\n    transform: translateY(0.25em);\n  }\n}\n\n/* Spinner */\n\n.ai-spinner {\n  position: absolute;\n  width: 100px;\n  height: 100px;\n  -webkit-animation: ai-rotateThis 1s infinite linear;\n  animation: ai-rotateThis 1s infinite linear;\n  -webkit-transform: scale(0.3);\n  -ms-transform: scale(0.3);\n  transform: scale(0.3);\n}\n\n.ai-spinner > * {\n  width: 10px;\n  height: 30px;\n  position: absolute;\n  top: 35px;\n  left: 45px;\n  border-radius: 50px;\n}\n\n@-webkit-keyframes ai-rotateThis {\n  from {\n    -webkit-transform: scale(0.3) rotate(0deg);\n    transform: scale(0.3) rotate(0deg);\n  }\n\n  to {\n    -webkit-transform: scale(0.3) rotate(360deg);\n    transform: scale(0.3) rotate(360deg);\n  }\n}\n\n@keyframes ai-rotateThis {\n  from {\n    -webkit-transform: scale(0.3) rotate(0deg);\n    -ms-transform: scale(0.3) rotate(0deg);\n    transform: scale(0.3) rotate(0deg);\n  }\n\n  to {\n    -webkit-transform: scale(0.3) rotate(360deg);\n    -ms-transform: scale(0.3) rotate(360deg);\n    transform: scale(0.3) rotate(360deg);\n  }\n}\n\n.ai-bar1 {\n  -webkit-transform: rotate(0deg) translate(0, -40px);\n  -ms-transform: rotate(0deg) translate(0, -40px);\n  transform: rotate(0deg) translate(0, -40px);\n  opacity: 0.1;\n}\n\n.ai-bar2 {\n  -webkit-transform: rotate(36deg) translate(0, -40px);\n  -ms-transform: rotate(36deg) translate(0, -40px);\n  transform: rotate(36deg) translate(0, -40px);\n  opacity: 0.2;\n}\n\n.ai-bar3 {\n  -webkit-transform: rotate(72deg) translate(0, -40px);\n  -ms-transform: rotate(72deg) translate(0, -40px);\n  transform: rotate(72deg) translate(0, -40px);\n  opacity: 0.3;\n}\n\n.ai-bar4 {\n  -webkit-transform: rotate(108deg) translate(0, -40px);\n  -ms-transform: rotate(108deg) translate(0, -40px);\n  transform: rotate(108deg) translate(0, -40px);\n  opacity: 0.4;\n}\n\n.ai-bar5 {\n  -webkit-transform: rotate(144deg) translate(0, -40px);\n  -ms-transform: rotate(144deg) translate(0, -40px);\n  transform: rotate(144deg) translate(0, -40px);\n  opacity: 0.5;\n}\n\n.ai-bar6 {\n  -webkit-transform: rotate(180deg) translate(0, -40px);\n  -ms-transform: rotate(180deg) translate(0, -40px);\n  transform: rotate(180deg) translate(0, -40px);\n  opacity: 0.6;\n}\n\n.ai-bar7 {\n  -webkit-transform: rotate(216deg) translate(0, -40px);\n  -ms-transform: rotate(216deg) translate(0, -40px);\n  transform: rotate(216deg) translate(0, -40px);\n  opacity: 0.7;\n}\n\n.ai-bar8 {\n  -webkit-transform: rotate(252deg) translate(0, -40px);\n  -ms-transform: rotate(252deg) translate(0, -40px);\n  transform: rotate(252deg) translate(0, -40px);\n  opacity: 0.8;\n}\n\n.ai-bar9 {\n  -webkit-transform: rotate(288deg) translate(0, -40px);\n  -ms-transform: rotate(288deg) translate(0, -40px);\n  transform: rotate(288deg) translate(0, -40px);\n  opacity: 0.9;\n}\n\n.ai-bar10 {\n  -webkit-transform: rotate(324deg) translate(0, -40px);\n  -ms-transform: rotate(324deg) translate(0, -40px);\n  transform: rotate(324deg) translate(0, -40px);\n  opacity: 1;\n}"
  },
  {
    "path": "newscoop/src/Newscoop/ArticlesBundle/Resources/public/app/loading-bar.js",
    "content": "/*! ngActivityIndicator - v0.1.5 (https://github.com/voronianski/ngActivityIndicator) */\n!function(a,b){\"use strict\";var c=\"CircledGrey\",d={Circled:'      <div ng-show=\"AILoading\" class=\"ai-circled ai-indicator\"></div>',Dotted:'     <div ng-show=\"AILoading\" class=\"ai-dotted ai-indicator\">        <span class=\"ai-inner1\"></span><span class=\"ai-inner2\"></span><span class=\"ai-inner3\"></span>     </div>',Spinner:'     <div ng-show=\"AILoading\" class=\"ai-spinner ai-indicator\">       <div class=\"ai-bar1\"></div><div class=\"ai-bar2\"></div><div class=\"ai-bar3\"></div><div class=\"ai-bar4\"></div><div class=\"ai-bar5\"></div><div class=\"ai-bar6\"></div>        <div class=\"ai-bar7\"></div><div class=\"ai-bar8\"></div><div class=\"ai-bar7\"></div><div class=\"ai-bar8\"></div><div class=\"ai-bar9\"></div><div class=\"ai-bar10\"></div>     </div>'},e=function(a){var c=a.match(/([A-Z]?[^A-Z]*)/g).slice(0,-1),e=c[0],f=c[1].toLowerCase(),g=b.element(d[e]);return g.addClass(\"Circled\"===e?\"ai-\"+f+\"-spin\":\"ai-\"+f+\"-parent\"),g};b.module(\"ngActivityIndicator\",[]).provider(\"$activityIndicator\",function(){this.setActivityIndicatorStyle=function(a){c=a||c},this.$get=[\"$rootScope\",\"$timeout\",function(a,b){var c,d={startAnimating:function(){return b.cancel(c),a.AILoading=!0,d},stopAnimating:function(e){function f(){b.cancel(c),a.AILoading=!1}return e&&\"number\"==typeof e?(c=b(f,e),d):f()},isAnimating:function(){return a.AILoading||!1}};return d}]}).directive(\"ngActivityIndicator\",function(){return{restrict:\"AE\",compile:function(a,d){var f=d.ngActivityIndicator||c,g=e(f);if(\"BODY\"===a[0].nodeName){var h=b.element(document.querySelectorAll(\"[ng-view]\"));h.attr(\"ng-hide\",\"AILoading\")}a.append(g)}}})}(window,window.angular);"
  },
  {
    "path": "newscoop/src/Newscoop/ArticlesBundle/Resources/public/app/services/comments.js",
    "content": "'use strict';\n\n/**\n* A factory which is responsible to load comments using ngInfinite\n*\n* @class Comments\n*/\nangular.module('editorialCommentsApp').factory('Comments', function($http, $activityIndicator, $window) {\n  var Comments = function() {\n    this.items = [];\n    this.busy = false;\n    this.after = 1;\n    this.itemsCount = 1;\n    this.articleNumber = articleNumber;\n    this.articleLanguage = articleLanguage;\n  };\n\n  Comments.prototype.getOne = function(url) {\n    return $http({\n      method: \"GET\",\n      url: url\n    });\n  }\n\n  Comments.prototype.create = function(formData) {\n    return $http({\n      method: \"POST\",\n      url: Routing.generate(\"newscoop_gimme_articles_create_editorial_comment\", {\n        language: this.articleLanguage,\n        number: this.articleNumber\n      }),\n      headers: {\n        'Content-Type': 'application/x-www-form-urlencoded'\n      },\n      data: $.param(formData)\n    });\n  }\n\n  Comments.prototype.delete = function(commentId) {\n    return $http({\n      method: \"DELETE\",\n      url: Routing.generate(\"newscoop_gimme_articles_remove_editorial_comment\", {\n        language: this.articleLanguage,\n        number: this.articleNumber,\n        commentId: commentId\n      })\n    });\n  }\n\n  Comments.prototype.update = function(formData, commentId) {\n    return $http({\n      method: \"POST\",\n      url: Routing.generate(\"newscoop_gimme_articles_edit_editorial_comment\", {\n        language: this.articleLanguage,\n        number: this.articleNumber,\n        commentId: commentId\n      }),\n      headers: {\n        'Content-Type': 'application/x-www-form-urlencoded'\n      },\n      data: $.param(formData)\n    });\n  }\n\n  Comments.prototype.refresh = function() {\n\n    var url = Routing.generate(\"newscoop_gimme_articles_get_editorial_comments\", {\n      language: this.articleLanguage,\n      number: this.articleNumber,\n      order: 'nested',\n    });\n\n    if (this.itemsCount <= 5) {\n      if (this.busy) {\n        return;\n      }\n\n      this.busy = true;\n      $http.get(url).success(function (data) {\n        this.itemsCount = data.items.length;\n        var result = data.items;\n        if (this.items.length > result.length) {\n          this.items = _.difference(result, this.items);\n        } else {\n          for (var i = 0; i < result.length; i++) {\n            var found = false;\n            for (var j = 0; j < this.items.length; j++) {\n              if (this.items[j].id == result[i].id) {\n                found = true;\n                break;\n              }\n            }\n\n            if (found && (this.items[i].comment !== result[i].comment)) {\n              this.items[i] = result[i];\n            }\n\n            if (!found) {\n              this.items.splice(i, 0, result[i]);\n            }\n          }\n        }\n\n        this.busy = false;\n        $activityIndicator.stopAnimating();\n      }.bind(this));\n    }\n  }\n\n  Comments.prototype.nextPage = function() {\n    if (this.busy) return;\n    this.busy = true;\n\n    var that = this;\n\n    var url = Routing.generate(\"newscoop_gimme_articles_get_editorial_comments\", {\n      language: this.articleLanguage,\n      number: this.articleNumber,\n      order: 'nested'\n    });\n\n    if (!$window.sessionStorage.getItem('newscoop.token')) {\n      $http.get(Routing.generate(\"newscoop_gimme_users_getuseraccesstoken\", {\n        clientId: clientId\n      })).success(function(data, status, headers, config) {\n        $http.defaults.headers.common.Authorization = 'Bearer ' + data.access_token;\n        $window.sessionStorage.setItem('newscoop.token', data.access_token);\n        $http.get(url).success(function (data) {\n          that.items = data.items;\n          that.busy = false;\n        }.bind(this));\n      });\n    } else {\n      $http.defaults.headers.common.Authorization = 'Bearer ' + $window.sessionStorage.getItem('newscoop.token');\n      $http.get(url).success(function (data) {\n        this.items = data.items;\n        this.busy = false;\n      }.bind(this));\n    }\n  };\n\n  return Comments;\n});"
  },
  {
    "path": "newscoop/src/Newscoop/ArticlesBundle/Resources/public/css/editorial-comments.css",
    "content": ".tab-content.chat .notification-list-box {\n    overflow-y: auto;\n    height: auto;\n    max-height: 400px;\n    min-height: 30px;\n}\n.tabpane .tab-content.chat .notification-write-box {\n\n  padding: 10px 10px 5px;\n  -webkit-box-shadow: 0 -6px 5px -3px #dfdfdf;\n  -moz-box-shadow: 0 -6px 5px -3px #dfdfdf;\n  box-shadow: 0 -6px 5px -3px #dfdfdf;\n  border-top: 1px solid #fff;\n  background: #f5f5f5;\n}\n.notification-write-box .notification-writer {\n  border: 2px solid #5ea9c8;\n  -webkit-border-radius: 5px !important;\n  -moz-border-radius: 5px !important;\n  border-radius: 5px !important;\n  line-height: 18px;\n  padding: 3px 10px;\n  -webkit-box-sizing: border-box;\n  -moz-box-sizing: border-box;\n  -o-box-sizing: border-box;\n  -ms-box-sizing: border-box;\n  box-sizing: border-box;\n  height: 30px;\n  resize: none;\n  color: #787878;\n  overflow: hidden;\n  width: 100%;\n}\n.notification-write-box .notification-writer:focus {\n  outline: none;\n  -webkit-box-shadow: 0 0 4px #ddd;\n  -moz-box-shadow: 0 0 4px #ddd;\n  box-shadow: 0 0 4px #ddd;\n  border: 2px solid #287FA4 !important;\n}\n.typing-active .notification-write-box {\n  bottom: 160px;\n}\n.typing-active .notification-write-box .notification-writer {\n  height: 70px;\n  overflow: auto;\n}\n.typing-active .notification-write-box .button-area {\n  display: block;\n}\n.typing-active .notification-write-box .notification-important {\n  display: block;\n}\n.notification-write-box .notification-important {\n  width: 16px;\n  height: 16px;\n  padding: 2px;\n  -webkit-box-sizing: border-box;\n  -moz-box-sizing: border-box;\n  -o-box-sizing: border-box;\n  -ms-box-sizing: border-box;\n  box-sizing: border-box;\n  position: absolute;\n  right: 15px;\n  top: 11px;\n  opacity: .7;\n  filter: alpha(opacity=70);\n  display: none;\n}\n.notification-write-box .notification-important:hover {\n  opacity: .9;\n  filter: alpha(opacity=90);\n  cursor: pointer;\n}\n.notification-write-box .notification-writer.important {\n  border-color: #D62727 !important;\n}\n.notification-write-box .button-area {\n  margin: 10px 0 5px 0;\n  display: none;\n}\n.notification-write-box .button-area .btn + .btn {\n  margin-right: 8px;\n}\n.notification-list {\n  padding: 0 5px;\n}\n.notification-list::-webkit-scrollbar {\n  width: 14px !important;\n  height: 8px;\n  margin: -1px 0;\n}\n.notification-list::-webkit-scrollbar-track {\n  background: #f5f5f5;\n  border: none;\n  box-shadow: none;\n}\n.notification-list::-webkit-scrollbar-thumb {\n  background: #949494;\n  border-left: 6px solid rgba(0,0,0,0) !important;\n  background-clip: padding-box !important;\n}\n.notification-list::-webkit-scrollbar-thumb:hover {\n  background: #6e6e6e;\n  border-left: 6px solid rgba(0,0,0,0);\n  background-clip: padding-box;\n}\n.notification-list li {\n  border-top: 1px solid #dedede;\n  padding: 10px 5px;\n  -webkit-box-sizing: border-box;\n  -moz-box-sizing: border-box;\n  -o-box-sizing: border-box;\n  -ms-box-sizing: border-box;\n  box-sizing: border-box;\n  width: 100%;\n  min-height: 45px;\n  margin: 0;\n}\n.notification-list li:last-child {\n  border-bottom: 1px solid #dedede;\n}\n.notification-list li:first-child {\n  border-top: none;\n}\n.notification-list li.important {\n  border-left: 3px solid #A85050 !important;\n  -webkit-box-shadow: inset 0px 0px 1px 1px #e4b2b2, 0px 2px 6px 0px #d8d8d8;\n  -moz-box-shadow: inset 0px 0px 1px 1px #e4b2b2, 0px 2px 6px 0px #d8d8d8;\n  box-shadow: inset 0px 0px 1px 1px #e4b2b2, 0px 2px 6px 0px #d8d8d8;\n}\n.notification-list li.personal,\n.notification-list li.important {\n  border: 1px solid #e2e2e2;\n  border-left: 3px solid;\n  border-radius: 3px;\n  background-color: #fff;\n  padding: 5px;\n  margin-bottom: 7px;\n  -webkit-box-shadow: 0px 1px 0 #e2e2e2;\n  -moz-box-shadow: 0px 1px 0 #e2e2e2;\n  box-shadow: 0px 1px 0 #e2e2e2;\n}\n.notification-avatar {\n  margin: 2px 20px 0 15px;\n  float: left;\n  width: 24px;\n  height: 24px;\n  overflow: hidden;\n  background: url(\"../img/avatar-editorial.png\") no-repeat 0 0;\n}\n.notification-avatar img {\n  width: 100%;\n  -moz-border-radius: 12px;\n  -webkit-border-radius: 12px;\n  border-radius: 12px;\n}\n.author-headline {\n    height: 40px;\n    padding-left: 60px;\n}\n.notification-content .notification-text {\n  margin: -3px 0 0 0;\n  font-size: 12px;\n  overflow: hidden;\n}\n.notification-content .notification-author {\n  font-weight: 700;\n}\n.notification-info {\n  font-size: 11px;\n  color: #949494;\n}\n.resolve-btn, .editorial-btn {\n    float: right;\n    font-family: inherit;\n    font-size: 100%;\n    padding: .5em 1em;\n    color: #444;\n    border: 1px solid #CFCFCF;\n    background-color: #f5f5f5;\n    text-decoration: none;\n    border-radius: 2px;\n    background-image: -webkit-linear-gradient(top,#f5f5f5,#f1f1f1);\n    background-image: -moz-linear-gradient(top,#f5f5f5,#f1f1f1);\n    background-image: -ms-linear-gradient(top,#f5f5f5,#f1f1f1);\n    background-image: -o-linear-gradient(top,#f5f5f5,#f1f1f1);\n    background-image: linear-gradient(top,#f5f5f5,#f1f1f1);\n}\n.resolve-btn {\n    display: none;\n}\n.show-resolve {\n  display: inline;\n}\nul.notification-list .comment-reply {\n  margin-left: 15px;\n  width: 95%;\n  background-color: #f5f5f5;\n}\n.commenter-container {\n  padding-top: 5px;\n}\n.alignment-btn {\n  margin-right: 3px !important;\n}\na.icon.delete {\n  z-index: 1;\n}\n.spinner {\n  height: 20px !important;\n  width: 20px !important;\n  position: relative;\n  margin-top: -24px;\n  left: 90%; \n  margin-bottom: 4px;\n}"
  },
  {
    "path": "newscoop/src/Newscoop/ArticlesBundle/Resources/public/views/main.html",
    "content": "<section ng-controller=\"EditorialCommentsCtrl\" class=\"tab-content chat\" style=\"display: block;\">\n<div ng-show=\"comments.busy\" class=\"spinner ai-circled ai-indicator ai-grey-spin\"></div>\n  <div ng-init=\"refresher()\" id=\"main_block_with_scroll\" class=\"notification-list-box\">\n    <div ng-if=\"comments.items.length == 0\" style=\"padding: 10px;\">{[{ trans('editorial.label.nocomments') }]}</div>\n    <ul infinite-scroll=\"comments.nextPage()\" infinite-scroll-container=\"'#main_block_with_scroll'\" infinite-scroll-parent class=\"notification-list\">\n      <li class=\"personal\" ng-class=\"{'comment-reply': comment.parent}\" ng-repeat=\"comment in comments.items\" ng-mouseenter=\"hover = true\" ng-mouseleave=\"hover = false\">\n        <button ng-if=\"!comment.parent\" type=\"button\" ng-click=\"resolveComment(comment.id);\" ng-show=\"hover\" class=\"btn btn-xs btn-primary resolve-btn\">\n          <span title=\"{[{ trans('editorial.btn.resolve') }]}\" class=\"glyphicon glyphicon-ok-circle\"></span>\n        </button>\n        <button ng-if=\"comment.parent\" type=\"button\" ng-click=\"deleteComment(comment.id);\" ng-show=\"hover\" class=\"btn btn-xs btn-default resolve-btn\">\n          <span title=\"{[{ trans('editorial.btn.delete') }]}\" class=\"glyphicon glyphicon-remove\"></span>\n        </button>\n        <button type=\"button\" ng-click=\"isEditing(comment)\" ng-show=\"hover\" ng-class=\"{'active': comment.editing}\" class=\"btn btn-default btn-xs resolve-btn alignment-btn\"><span title=\"{[{ trans('editorial.btn.edit') }]}\" class=\"glyphicon glyphicon-pencil\"></span></button>\n        <button type=\"button\" ng-click=\"showReplyBox(comment)\" ng-show=\"hover && !comment.parent\" ng-class=\"{'active': comment.isReplying}\" class=\"btn btn-default btn-xs resolve-btn alignment-btn\"><span title=\"{[{ trans('editorial.btn.reply') }]}\" class=\"glyphicon glyphicon-share-alt\"></span></button>\n        <div class=\"commenter-container\">\n          <figure class=\"notification-avatar\">\n            <img ng-if=\"comment.user.image\" ng-src=\"{[{ comment.user.image }]}\">\n          </figure>\n          <div class=\"notification-content author-headline\">\n            <p class=\"notification-text\">\n              <span class=\"notification-author\">{[{ ::comment.user.firstName }]} {[{ ::comment.user.lastName }]}</span>\n              <br>\n              <span am-time-ago=\"comment.created\" title=\"{[{ comment.created }]}\" class=\"notification-info\"></span>\n            </p>\n          </div>\n          <div class=\"notification-content\" ng-if=\"!comment.editing\">\n            <p class=\"notification-text\">{[{ ::comment.comment }]}</p>\n          </div>\n        </div>\n        <br>\n        <form name=\"editForm\" class=\"form-inline\" role=\"form\" novalidate ng-if=\"comment.editing\">\n          <div class=\"typing-active\">\n            <div class=\"notification-write-box\">\n              <textarea ng-model=\"comment.comment\" name=\"comment\" required ng-minlength=\"1\" ng-maxlength=\"160\" value=\"{[{ ::comment.comment }]}\" class=\"notification-writer\" placeholder=\"{[{ trans('editorial.label.reply') }]}\"></textarea>\n              <div class=\"alert alert-danger\" ng-show=\"editForm.comment.$error.maxlength\" role=\"alert\">{[{ trans('editorial.alert.toolong') }]}</div>\n              <div class=\"button-area clearfix pull-right\">\n                <button class=\"btn btn-primary btn-xs send-notif\" ng-disabled=\"editForm.$invalid\" ng-click=\"editComment(comment);\">{[{ trans('editorial.btn.save') }]}</button>\n                <button class=\"btn btn-default btn-xs cancel-notif\" ng-click=\"hide(comment)\">{[{ trans('editorial.btn.cancel') }]}</button>\n              </div>\n            </div>\n          </div>\n        </form>\n        <form name=\"replyForm\" class=\"form-inline\" role=\"form\" novalidate ng-if=\"comment.isReplying && !comment.parent\">\n          <div class=\"typing-active\">\n            <div class=\"notification-write-box\">\n              <textarea ng-model=\"textareaReply.comment\" name=\"comment\" required ng-minlength=\"1\" ng-maxlength=\"160\" placeholder=\"{[{ trans('editorial.label.reply') }]}\" class=\"notification-writer\" placeholder=\"{[{ trans('editorial.label.reply') }]}\"></textarea>\n              <div class=\"alert alert-danger\" ng-show=\"replyForm.comment.$error.maxlength\" role=\"alert\">{[{ trans('editorial.alert.toolong') }]}</div>\n              <div class=\"button-area clearfix pull-right\">\n                <button class=\"btn btn-primary btn-xs send-notif\" ng-disabled=\"replyForm.$invalid\" ng-click=\"addComment(comment)\">{[{ trans('editorial.btn.send') }]}</button>\n                <button class=\"btn btn-default btn-xs cancel-notif\" ng-click=\"hide(comment)\">{[{ trans('editorial.btn.cancel') }]}</button>\n              </div>\n            </div>\n          </div>\n        </form>\n      </li>\n    </ul>\n  </div>\n  <div ng-class=\"{'typing-active': enableTyping}\">\n    <div class=\"notification-write-box\">\n      <form name=\"addForm\" class=\"form-inline\" role=\"form\" novalidate>\n        <textarea ng-model=\"textareaMessage.comment\" name=\"comment\" required ng-minlength=\"1\" ng-maxlength=\"160\" class=\"notification-writer\" ng-focus=\"enableTyping = true\" placeholder=\"{[{ trans('editorial.label.post') }]}\"></textarea>\n        <div class=\"alert alert-danger\" ng-show=\"addForm.comment.$error.maxlength\" role=\"alert\">{[{ trans('editorial.alert.toolong') }]}</div>\n        <div class=\"button-area clearfix pull-right\">\n          <button class=\"btn btn-primary send-notif\" ng-click=\"addComment(this)\" ng-disabled=\"addForm.$invalid\">{[{ trans('editorial.btn.send') }]}</button>\n          <button class=\"btn btn-default cancel-notif\" ng-click=\"enableTyping = false\">{[{ trans('editorial.btn.cancel') }]}</button>\n        </div>\n      </form>\n    </div>\n  </div>\n</section>"
  },
  {
    "path": "newscoop/src/Newscoop/ArticlesBundle/Resources/views/Hook/editorialComments.html.twig",
    "content": "<link rel=\"stylesheet\" href=\"{{ asset('/bundles/newscooparticles/css/editorial-comments.css') }}\">\n<link rel=\"stylesheet\" href=\"{{ asset('/bundles/newscooparticles/app/loading-bar.css') }}\">\n<link rel=\"stylesheet\" href=\"{{ asset('/bundles/newscoopnewscoop/css/bootstrap-custom-comments.css') }}\">\n<link rel=\"stylesheet\" href=\"{{ asset('/bundles/newscoopnewscoop/css/bootstrap-custom.css') }}\">\n{% trans_default_domain \"comments\" %}\n<script type=\"text/javascript\">\n    var clientId = '{{ clientId }}';\n    var  token = \"{{ default_csrf_token() }}\";\n    var  articleNumber = \"{{ articleNumber }}\";\n    var  articleLanguage = \"{{ articleLanguage }}\";\n</script>\n<script src=\"{{ asset('bundles/fosjsrouting/js/router.js') }}\"></script>\n<script src=\"{{ path('fos_js_routing_js', {'callback': 'fos.Router.setData'}) }}\"></script>\n\n<div ng-app=\"editorialCommentsApp\" class=\"tabpane articlebox\" title=\"{{ 'editorial.label.title'|trans }}\">\n<div ng-view=\"\"></div>\n<script src=\"{{ asset('/bundles/newscoopnewscoop/js/lodash.min.js') }}\"></script>\n<script type=\"text/javascript\" src=\"{{ asset('public/bundles/newscoopnewscoop/js/angular.min.js') }}\"></script>\n<script src=\"//ajax.googleapis.com/ajax/libs/angularjs/1.3.7/angular-route.js\"></script>\n<script type=\"text/javascript\" src=\"{{ asset('/bundles/newscooparticles/app/loading-bar.js') }}\"></script>\n<script type=\"text/javascript\" src=\"{{ asset('public/bundles/newscoopnewscoop/js/moment-with-locales.js') }}\"></script>\n<script type=\"text/javascript\" src=\"{{ asset('public/bundles/newscoopnewscoop/js/angular-moment.js') }}\"></script>\n<script type=\"text/javascript\" src=\"{{ asset('/bundles/newscooparticles/app/ng-infinite-scroll.min.js') }}\"></script>\n<script type=\"text/javascript\" src=\"{{ asset('/bundles/newscooparticles/app/app.js') }}\"></script>\n<script type=\"text/javascript\" src=\"{{ asset('/bundles/newscooparticles/app/comments-ctrl.js') }}\"></script>\n<script type=\"text/javascript\" src=\"{{ asset('/bundles/newscooparticles/app/services/comments.js') }}\"></script>\n<script src=\"{{ asset('bundles/bazingajstranslation/js/translator.min.js') }}\"></script>\n<script src=\"{{ url('bazinga_jstranslation_js', { 'domain': 'comments' }) }}?locales={{ localeFromCookie }}\"></script>\n</div>"
  },
  {
    "path": "newscoop/src/Newscoop/ArticlesBundle/Services/EditorialCommentsService.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2014 Sourcefabric ź.u.\n * @author Paweł Mikołąjczuk <pawel.mikolajczuk@sourcefabric.org>\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\ArticlesBundle\\Services;\n\nuse Newscoop\\Entity\\Article;\nuse Newscoop\\Entity\\User;\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\ArticlesBundle\\Entity\\EditorialComment;\nuse Symfony\\Component\\HttpKernel\\Exception\\AccessDeniedHttpException;\n\nclass EditorialCommentsService\n{\n    /**\n     * Entity Manager\n     * @var Doctrine\\ORM\\EntityManage\n     */\n    protected $em;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em [description]\n     */\n    public function __construct(EntityManager $em)\n    {\n        $this->em = $em;\n    }\n\n    /**\n     * Create new editorial comment for Article\n     *\n     * @param string                   $commentContent\n     * @param Article                  $article\n     * @param User                     $user\n     * @param EditorialComment\\null    $parrentComment\n     */\n    public function create($commentContent, Article $article, User $user, $parrentComment = null)\n    {\n        $editorialComment = new EditorialComment();\n        $editorialComment->setComment($commentContent);\n        $editorialComment->setUser($user);\n        $editorialComment->setArticle($article);\n\n        if ($parrentComment) {\n            $editorialComment->setParent($parrentComment);\n        }\n\n        $this->em->persist($editorialComment);\n        $this->em->flush();\n\n        return $editorialComment;\n    }\n\n    /**\n     * Edit existing editorial comment message\n     * @param string           $commentContent\n     * @param EditorialComment $comment\n     * @param User             $user\n     */\n    public function edit($commentContent, EditorialComment $comment, User $user)\n    {\n        if ($comment->getUser()->getId() == $user->getId() || $user->isAdmin()) {\n            $comment->setComment($commentContent);\n        } else {\n            throw new AccessDeniedHttpException(\"User is not allowed to edit someone else comment\");\n        }\n\n        $this->em->flush();\n\n        return true;\n    }\n\n    /**\n     * Resolve existing editorial comment\n     * @param EditorialComment $comment\n     * @param User             $user\n     */\n    public function resolve(EditorialComment $comment, User $user, $value = true)\n    {\n        if ($comment->getUser()->getId() == $user->getId() || $user->isAdmin()) {\n            $comment->setResolved($value);\n        } else {\n            throw new AccessDeniedHttpException(\"User is not allowed to resolve comment\");\n        }\n\n        $this->em->flush();\n\n        return true;\n    }\n\n    /**\n     * Remove (soft) existing editorial comment\n     * @param EditorialComment $comment\n     * @param User             $user\n     */\n    public function remove(EditorialComment $comment, User $user)\n    {\n        if ($comment->getUser()->getId() == $user->getId() || $user->isAdmin()) {\n            $comment->setIsActive(false);\n        } else {\n            throw new AccessDeniedHttpException(\"User is not allowed to remove comment\");\n        }\n\n        $this->em->flush();\n\n        return true;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/CommunityTickerBundle/Command/MigrateTablesCommand.php",
    "content": "<?php\n/**\n * @package Newscoop\\CommunityTickerBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\CommunityTickerBundle\\Command;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand;\nuse Symfony\\Component\\Console\\Input\\InputArgument;\nuse Symfony\\Component\\Console\\Input\\InputInterface;\nuse Symfony\\Component\\Console\\Input\\InputOption;\nuse Symfony\\Component\\Console\\Output\\OutputInterface;\nuse Doctrine\\ORM\\Query\\ResultSetMapping;\nuse Newscoop\\CommunityTickerBundle\\Entity\\CommunityTickerEvent;\n\n/**\n * Migrate community ticker data to plugin table\n */\nclass MigrateTablesCommand extends ContainerAwareCommand\n{\n    protected function configure()\n    {\n        $this\n            ->setName('ticker:migrate')\n            ->setDescription('Migrates community ticker data to plugin table and removes old one from core.');\n    }\n\n    protected function execute(InputInterface $input, OutputInterface $output)\n    {\n        try {\n            $em = $this->getApplication()->getKernel()->getContainer()->getService('em');\n            $this->migrateData($em, $output);\n\n            $connection = $em->getConnection();\n            $connection->beginTransaction();\n            try {\n                $connection->query('SET FOREIGN_KEY_CHECKS=0');\n                $connection->query('DROP TABLE community_ticker_event');\n                $connection->query('SET FOREIGN_KEY_CHECKS=1');\n                $connection->commit();\n                $output->writeln('<info>Successfully removed. Finished!</info>');\n            } catch (\\Exception $e) {\n                $connection->rollback();\n                $output->writeln('<error>Using rollback. Failed!</error>');\n            }\n\n        } catch (\\Exception $e) {\n            throw new \\Exception('Something went wrong!');\n        }\n    }\n\n    /**\n     * Migrate data to plugin database from core table\n     *\n     * @param EntityManager   $em\n     * @param OutputInterface $output\n     *\n     * @return void\n     */\n    public function migrateData($em, $output)\n    {\n        $rsm = new ResultSetMapping();\n        $rsm->addEntityResult('Newscoop\\CommunityTickerBundle\\Entity\\CommunityTickerEvent', 'e');\n        $rsm->addFieldResult('e', 'id', 'id');\n        $rsm->addFieldResult('e', 'event', 'event');\n        $rsm->addFieldResult('e', 'params', 'params');\n        $rsm->addFieldResult('e', 'created', 'created');\n        $rsm->addJoinedEntityResult('Newscoop\\Entity\\User', 'u', 'e', 'user');\n        $rsm->addFieldResult('u', 'Id', 'id');\n        $query = $em->createNativeQuery('SELECT e.id, e.event, e.params, e.created, u.Id FROM community_ticker_event e ' .\n            'LEFT JOIN liveuser_users u ON u.id = e.user_id',\n            $rsm\n        );\n        $events = $query->getArrayResult();\n        foreach ($events as $key => $event) {\n            $user = $em->getRepository('Newscoop\\Entity\\User')->findOneBy(array('id' => $event['user']['id']));\n            $existingEvent = $em->getRepository('Newscoop\\CommunityTickerBundle\\Entity\\CommunityTickerEvent')\n                ->findOneBy(array(\n                    'created' => $event['created'],\n                    'params' => $event['params']\n            ));\n\n            if (!$existingEvent) {\n                $newEvent = new CommunityTickerEvent();\n                $newEvent->setEvent($event['event']);\n                $newEvent->setParams($event['params'] != '[]' ? json_decode($event['params'], true) : array());\n                $newEvent->setCreated($event['created']);\n                $newEvent->setIsActive(true);\n                if ($user) {\n                    $newEvent->setUser($user);\n                }\n\n                $em->persist($newEvent);\n            }\n        }\n\n        $em->flush();\n        $output->writeln('<info>Data migrated to plugin table!</info>');\n        $output->writeln('<info>Removing old table...</info>');\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/CommunityTickerBundle/DependencyInjection/Configuration.php",
    "content": "<?php\n\nnamespace Newscoop\\CommunityTickerBundle\\DependencyInjection;\n\nuse Symfony\\Component\\Config\\Definition\\Builder\\TreeBuilder;\nuse Symfony\\Component\\Config\\Definition\\ConfigurationInterface;\n\n/**\n * This is the class that validates and merges configuration from your app/config files\n *\n * To learn more see {@link http://symfony.com/doc/current/cookbook/bundles/extension.html#cookbook-bundles-extension-config-class}\n */\nclass Configuration implements ConfigurationInterface\n{\n    /**\n     * {@inheritDoc}\n     */\n    public function getConfigTreeBuilder()\n    {\n        $treeBuilder = new TreeBuilder();\n        $rootNode = $treeBuilder->root('newscoop_ticker_plugin');\n\n        // Here you should define the parameters that are allowed to\n        // configure your bundle. See the documentation linked above for\n        // more information on that topic.\n\n        return $treeBuilder;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/CommunityTickerBundle/DependencyInjection/NewscoopCommunityTickerExtension.php",
    "content": "<?php\n\nnamespace Newscoop\\CommunityTickerBundle\\DependencyInjection;\n\nuse Symfony\\Component\\DependencyInjection\\ContainerBuilder;\nuse Symfony\\Component\\Config\\FileLocator;\nuse Symfony\\Component\\HttpKernel\\DependencyInjection\\Extension;\nuse Symfony\\Component\\DependencyInjection\\Loader;\n\n/**\n * This is the class that loads and manages your bundle configuration\n *\n * To learn more see {@link http://symfony.com/doc/current/cookbook/bundles/extension.html}\n */\nclass NewscoopCommunityTickerExtension extends Extension\n{\n    /**\n     * {@inheritDoc}\n     */\n    public function load(array $configs, ContainerBuilder $container)\n    {\n        $configuration = new Configuration();\n        $config = $this->processConfiguration($configuration, $configs);\n\n        $loader = new Loader\\YamlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));\n        $loader->load('services.yml');\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/CommunityTickerBundle/Entity/CommunityTickerEvent.php",
    "content": "<?php\n/**\n * @package Newscoop\\CommunityTickerBundle\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\CommunityTickerBundle\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Newscoop\\Entity\\User;\n\n/**\n * @ORM\\Entity(repositoryClass=\"Newscoop\\CommunityTickerBundle\\Entity\\Repository\\CommunityTickerEventRepository\")\n * @ORM\\Table(name=\"community_ticker_event\")\n */\nclass CommunityTickerEvent\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\GeneratedValue\n     * @ORM\\Column(type=\"integer\")\n     * @var int\n     */\n    private $id;\n\n    /**\n     * @ORM\\Column(type=\"string\", length=80)\n     * @var string\n     */\n    private $event;\n\n    /**\n     * @ORM\\Column(type=\"text\", nullable=True)\n     * @var string\n     */\n    private $params;\n\n    /**\n     * @ORM\\Column(type=\"datetime\")\n     * @var DateTime\n     */\n    private $created;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\User\")\n     * @ORM\\JoinColumn(referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\User\n     */\n    private $user;\n\n    /**\n     * @ORM\\Column(type=\"boolean\", name=\"is_active\")\n     * @var boolean\n     */\n    private $is_active;\n\n    public function __construct()\n    {\n        $this->created = new \\DateTime();\n        $this->setIsActive(true);\n    }\n\n    /**\n     * Get id\n     *\n     * @return int\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Set event\n     *\n     * @param string $event\n     *\n     * @return Newscoop\\CommunityTickerBundle\\Entity\\CommunityTickerEvent\n     */\n    public function setEvent($event)\n    {\n        $this->event = $event;\n\n        return $this;\n    }\n\n    /**\n     * Get event\n     *\n     * @return string\n     */\n    public function getEvent()\n    {\n        return $this->event;\n    }\n\n    /**\n     * Set params\n     *\n     * @param array $params\n     *\n     * @return Newscoop\\CommunityTickerBundle\\Entity\\CommunityTickerEvent\n     */\n    public function setParams(array $params)\n    {\n        $this->params = json_encode($params);\n\n        return $this;\n    }\n\n    /**\n     * Get params\n     *\n     * @return array\n     */\n    public function getParams()\n    {\n        return !empty($this->params) ? json_decode($this->params, true) : array();\n    }\n\n    /**\n     * Get created\n     *\n     * @return DateTime\n     */\n    public function getCreated()\n    {\n        return $this->created;\n    }\n\n    /**\n     * Set created\n     *\n     * @param DateTime $created\n     *\n     * @return DateTime\n     */\n    public function setCreated($created)\n    {\n        $this->created = $created;\n\n        return $this;\n    }\n\n    /**\n     * Get status\n     *\n     * @return boolean\n     */\n    public function getIsActive()\n    {\n        return $this->is_active;\n    }\n\n    /**\n     * Set status\n     *\n     * @param boolean $is_active\n     *\n     * @return boolean\n     */\n    public function setIsActive($is_active)\n    {\n        $this->is_active = $is_active;\n\n        return $this;\n    }\n\n    /**\n     * Set user\n     *\n     * @param Newscoop\\Entity\\User $user\n     *\n     * @return Newscoop\\CommunityTickerBundle\\Entity\\CommunityTickerEvent\n     */\n    public function setUser(User $user)\n    {\n        $this->user = $user;\n\n        return $this;\n    }\n\n    /**\n     * Get user\n     *\n     * @return Newscoop\\Entity\\User|null\n     */\n    public function getUser()\n    {\n        return $this->user;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/CommunityTickerBundle/Entity/Repository/CommunityTickerEventRepository.php",
    "content": "<?php\n/**\n * @package Newscoop\\CommunityTickerBundle\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\CommunityTickerBundle\\Entity\\Repository;\n\nuse Doctrine\\ORM\\EntityRepository;\nuse Newscoop\\CommunityTickerBundle\\Entity\\CommunityTickerEvent;\nuse Newscoop\\CommunityTickerBundle\\TemplateList\\ListCriteria;\nuse Newscoop\\ListResult;\n\n/**\n * Community Ticker Event Repository\n */\nclass CommunityTickerEventRepository extends EntityRepository\n{\n    /**\n     * Save event\n     *\n     * @param  CommunityTickerEvent $event\n     * @param  array                $values\n     * @return void\n     */\n    public function save(CommunityTickerEvent $event, array $values)\n    {\n        $event->setEvent($values['event']);\n        $event->setParams(isset($values['params']) ? $values['params'] : array());\n\n        if (!empty($values['user'])) {\n            $user = $values['user'];\n\n            if (is_int($user)) {\n                $user = $this->getEntityManager()->getReference('Newscoop\\Entity\\User', $values['user']);\n            }\n\n            $event->setUser($user);\n        }\n\n        $this->getEntityManager()->persist($event);\n        $this->getEntityManager()->flush();\n    }\n\n    /**\n     * Get list for given criteria\n     *\n     * @param  ListCriteria        $criteria\n     * @return Newscoop\\ListResult\n     */\n    public function getListByCriteria(ListCriteria $criteria)\n    {\n        $qb = $this->createQueryBuilder('ct');\n\n        $qb->andWhere('ct.is_active = :is_active')\n            ->setParameter('is_active', true);\n\n        foreach ($criteria->perametersOperators as $key => $operator) {\n            $qb->andWhere('ct.'.$key.' = :'.$key)\n                ->setParameter($key, $criteria->$key);\n        }\n\n        $list = new ListResult();\n        $countBuilder = clone $qb;\n        $list->count = (int) $countBuilder->select('COUNT(ct)')->getQuery()->getSingleScalarResult();\n\n        if($criteria->length != 0) {\n            $qb->setMaxResults($criteria->length);\n        }\n        \n        $metadata = $this->getClassMetadata();\n        foreach ($criteria->orderBy as $key => $order) {\n            if (array_key_exists($key, $metadata->columnNames)) {\n                $key = 'ct.' . $key;\n            }\n\n            $qb->orderBy($key, $order);\n        }\n\n        $list->items = $qb->getQuery()->getResult();\n\n        return $list;\n    }\n\n    /**\n     * Get community feeds count by given criteria\n     *\n     * @param array $criteria\n     * @return int\n     */\n    public function findByCount(array $criteria)\n    {\n        $queryBuilder = $this->getEntityManager()->createQueryBuilder()\n            ->select('COUNT(c)')\n            ->from($this->getEntityName(), 'c');\n\n        foreach ($criteria as $property => $value) {\n            if (!is_array($value)) {\n                $queryBuilder->andWhere(\"u.$property = :$property\");\n            }\n        }\n\n        $query = $queryBuilder->getQuery();\n        foreach ($criteria as $property => $value) {\n            if (!is_array($value)) {\n                $query->setParameter($property, $value);\n            }\n        }\n\n        return (int) $query->getSingleScalarResult();\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/CommunityTickerBundle/EventListener/LifecycleSubscriber.php",
    "content": "<?php\n/**\n * @package Newscoop\\CommunityTickerBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\CommunityTickerBundle\\EventListener;\n\nuse Symfony\\Component\\EventDispatcher\\EventSubscriberInterface;\nuse Newscoop\\EventDispatcher\\Events\\GenericEvent;\n\n/**\n * Event lifecycle management\n */\nclass LifecycleSubscriber implements EventSubscriberInterface\n{\n    private $em;\n\n    public function __construct($em) {\n        $this->em = $em;\n    }\n\n    public function install(GenericEvent $event)\n    {\n        $tool = new \\Doctrine\\ORM\\Tools\\SchemaTool($this->em);\n        $tool->updateSchema($this->getClasses(), true);\n\n        // Generate proxies for entities\n        $this->em->getProxyFactory()->generateProxyClasses($this->getClasses(), __DIR__ . '/../../../../library/Proxy');\n    }\n\n    public function update(GenericEvent $event)\n    {\n        $tool = new \\Doctrine\\ORM\\Tools\\SchemaTool($this->em);\n        $tool->updateSchema($this->getClasses(), true);\n\n        // Generate proxies for entities\n        $this->em->getProxyFactory()->generateProxyClasses($this->getClasses(), __DIR__ . '/../../../../library/Proxy');\n    }\n\n    public function remove(GenericEvent $event)\n    {\n        $tool = new \\Doctrine\\ORM\\Tools\\SchemaTool($this->em);\n        $tool->dropSchema($this->getClasses(), true);\n    }\n\n    public static function getSubscribedEvents()\n    {\n        return array(\n            'plugin.install.newscoop_community_ticker_plugin' => array('install', 1),\n            'plugin.update.newscoop_community_ticker_plugin' => array('update', 1),\n            'plugin.remove.newscoop_community_ticker_plugin' => array('remove', 1),\n        );\n    }\n\n    private function getClasses(){\n        return array(\n            $this->em->getClassMetadata('Newscoop\\CommunityTickerBundle\\Entity\\CommunityTickerEvent')\n        );\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/CommunityTickerBundle/EventListener/ListObjectsListener.php",
    "content": "<?php\n/**\n * @package Newscoop\\CommunityTickerBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\CommunityTickerBundle\\EventListener;\n\nuse Newscoop\\EventDispatcher\\Events\\CollectObjectsDataEvent;\n\nclass ListObjectsListener\n{\n    /**\n     * Register plugin list objects in Newscoop\n     * \n     * @param  CollectObjectsDataEvent $event\n     */\n    public function registerObjects(CollectObjectsDataEvent $event)\n    {\n        $event->registerListObject('newscoop\\communitytickerbundle\\templatelist\\communityfeeds', array(\n            'class' => 'Newscoop\\CommunityTickerBundle\\TemplateList\\CommunityFeeds',\n            'list' => 'community_feeds',\n            'url_id' => 'cmfid',\n        ));\n\n        $event->registerObjectTypes('community_feed', array(\n            'class' => '\\Newscoop\\CommunityTickerBundle\\Meta\\MetaCommunityTicker'\n        ));\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/CommunityTickerBundle/Meta/MetaCommunityTicker.php",
    "content": "<?php\n/**\n * @package Newscoop\\CommunityTickerBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\CommunityTickerBundle\\Meta;\n\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\CommunityTickerBundle\\Entity\\CommunityTickerEvent;\n\n/**\n * Meta Community ticker\n */\nclass MetaCommunityTicker\n{\n    /** \n     * @var CommunityTickerEvent\n     */\n    private $feed;\n\n    /** \n     * @var string\n     */\n    public $type;\n\n    /** \n     * @var array \n     */\n    public $params;\n\n    /** \n     * @var MetaComment\n     */\n    public $comment;\n\n    /** \n     * @var string\n     */\n    public $created;\n\n    /** \n     * @var MetaArticle\n     */\n    public $article;\n\n    /** \n     * @var MetaUser\n     */\n    public $user;\n\n    /** \n     * @var MetaTopic\n     */\n    public $topic;\n\n    /**\n     * @param CommunityTickerEvent $feed\n     */\n    public function __construct(CommunityTickerEvent $feed = null)\n    {\n        if (!$feed) {\n            return;\n        }\n\n        $this->params = $feed->getParams();\n        $this->type = implode('-', explode('.', $feed->getEvent()));\n        $this->user = $this->getUser($feed);\n        $this->comment = $this->getComment();\n        $this->created = $this->getCreated($feed);\n        $this->article = $this->getArticle();\n        $this->topic = $this->getTopic();\n    }\n\n    /**\n     * Get user\n     *\n     * @param CommunityTickerEvent $feed\n     *\n     * @return string\n     */\n    protected function getUser($feed)\n    {   \n        return $feed->getUser() ? new \\MetaUser($feed->getUser()) : null;\n    }\n\n    /**\n     * Get created date\n     *\n     * @param CommunityTickerEvent $feed\n     *\n     * @return string\n     */\n    protected function getCreated($feed)\n    {\n        $date = $feed->getCreated();\n\n        return $date->format('d.m.Y H:i:s');\n    }\n\n    /**\n     * Get comment\n     *\n     * @return MetaComment|null\n     */\n    protected function getComment()\n    {\n        return !empty($this->params['id']) ? new \\MetaComment($this->params['id']) : null;\n    }\n\n    /**\n     * Get article\n     *\n     * @return MetaArticle|null\n     */\n    protected function getArticle()\n    {\n        return !empty($this->params['number']) ? new \\MetaArticle($this->params['language'], $this->params['number']) : null;\n    }\n\n    /**\n     * Get topic\n     *\n     * @return MetaTopic|null\n     */\n    protected function getTopic()\n    {  \n        return !empty($this->params['topic_id']) ? new \\MetaTopic($this->params['topic_id']) : null;\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/CommunityTickerBundle/NewscoopCommunityTickerBundle.php",
    "content": "<?php\n\nnamespace Newscoop\\CommunityTickerBundle;\n\nuse Symfony\\Component\\HttpKernel\\Bundle\\Bundle;\n\nclass NewscoopCommunityTickerBundle extends Bundle\n{\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/CommunityTickerBundle/Resources/config/services.yml",
    "content": "services:\n    newscoop_ticker_plugin.lifecyclesubscriber:\n        class: Newscoop\\CommunityTickerBundle\\EventListener\\LifecycleSubscriber\n        arguments:\n            - @em\n        tags:\n            - { name: kernel.event_subscriber}\n\n    newscoop.criteria.communityticker:\n        class: Newscoop\\CommunityTickerBundle\\TemplateList\\ListCriteria\n\n    newscoop.template_lists.communityticker:\n        class:      Newscoop\\CommunityTickerBundle\\TemplateList\\CommunityFeedsList\n        arguments:  [\"@newscoop.criteria.communityticker\"]\n        tags:\n            -  { name: newscoop.template_lists }\n\n    newscoop_ticker_plugin.service:\n        class:      Newscoop\\CommunityTickerBundle\\Services\\CommunityFeedService\n        arguments:  [\"@em\"]\n        tags:\n            -  { name: kernel.event_listener, event: user.register, method: update }\n            -  { name: kernel.event_listener, event: comment.recommended, method: update }\n            -  { name: kernel.event_listener, event: topic.follow, method: update }\n            -  { name: kernel.event_listener, event: blog.published, method: update }\n\n    newscoop_ticker_plugin.list_objects.listener:\n        class: Newscoop\\CommunityTickerBundle\\EventListener\\ListObjectsListener\n        tags:\n          - { name: kernel.event_listener, event: newscoop.listobjects.register, method: registerObjects }"
  },
  {
    "path": "newscoop/src/Newscoop/CommunityTickerBundle/Resources/smartyPlugins/block.list_community_feeds.php",
    "content": "<?php\n/**\n * @package Newscoop\\CommunityTickerBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Newscoop list_community_feeds block plugin\n *\n * Type:     block\n * Name:     community_feeds\n *\n * @param array $params\n * @param mixed $content\n * @param object $smarty\n * @param bool $repeat\n * @return string\n */\nfunction smarty_block_list_community_feeds($params, $content, &$smarty, &$repeat)\n{\n    $context = $smarty->getTemplateVars('gimme');\n\n    if (!isset($content)) { // init\n        $start = $context->next_list_start('Newscoop\\CommunityTickerBundle\\TemplateList\\CommunityFeedsList');\n        $list = new \\Newscoop\\CommunityTickerBundle\\TemplateList\\CommunityFeedsList(new \\Newscoop\\CommunityTickerBundle\\TemplateList\\ListCriteria());\n        $list->getList($start, $params);\n        if ($list->isEmpty()) {\n            $context->setCurrentList($list, array());\n            $context->resetCurrentList();\n            $repeat = false;\n            return;\n        }\n\n        $context->setCurrentList($list, array('community_feed'));\n        $context->community_feed = $context->current_community_feeds_list->current;\n        $repeat = true;\n    } else { // next\n        $context->current_community_feeds_list->defaultIterator()->next();\n        if (!is_null($context->current_community_feeds_list->current)) {\n            $context->community_feed = $context->current_community_feeds_list->current;\n            $repeat = true;\n        } else {\n            $context->resetCurrentList();\n            $repeat = false;\n        }\n    }\n\n    return $content;\n}"
  },
  {
    "path": "newscoop/src/Newscoop/CommunityTickerBundle/Services/CommunityFeedService.php",
    "content": "<?php\n/**\n * @package Newscoop\\CommentListsBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\CommunityTickerBundle\\Services;\n\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\CommunityTickerBundle\\TemplateList\\ListCriteria;\nuse Newscoop\\CommunityTickerBundle\\Entity\\CommunityTickerEvent;\nuse Symfony\\Component\\EventDispatcher\\GenericEvent;\n/**\n * List Comment service\n */\nclass CommunityFeedService\n{\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em;\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     */\n    public function __construct(EntityManager $em)\n    {\n        $this->em = $em;\n    }\n\n    /**\n     * Update community ticker\n     *\n     * @param  GenericEvent $event\n     * @return void\n     */\n    public function update(GenericEvent $event)\n    {\n        $params = $event->getArguments();\n\n        $user = array_key_exists('user', $params) ? $params['user'] : null;\n        unset($params['user']);\n\n        $this->getRepository()->save(new CommunityTickerEvent(), array(\n            'event' => $event->getName(),\n            'user' => $user,\n            'params' => $params,\n        ));\n    }\n\n    /**\n     * Find by criteria\n     *\n     * @param  ListCriteria        $criteria\n     * @return Newscoop\\ListResult\n     */\n    public function findByCriteria(ListCriteria $criteria)\n    {\n        return $this->getRepository()->getListByCriteria($criteria);\n    }\n\n\n    /**\n     * Count by given criteria\n     *\n     * @param array $criteria\n     * @return int\n     */\n    public function countBy(array $criteria = array())\n    {\n        return $this->getRepository()->findByCount($criteria);\n    }\n\n    /**\n     * Get repository\n     *\n     * @return CommunityTickerEvent\n     */\n    protected function getRepository()\n    {\n        return $this->em->getRepository('Newscoop\\CommunityTickerBundle\\Entity\\CommunityTickerEvent');\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/CommunityTickerBundle/TemplateList/CommunityFeedsList.php",
    "content": "<?php\n/**\n * @package Newscoop\\CommunityTickerBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\CommunityTickerBundle\\TemplateList;\n\nuse Newscoop\\ListResult;\nuse Newscoop\\TemplateList\\BaseList;\nuse Newscoop\\CommunityTickerBundle\\Meta\\MetaCommunityTicker;\n\n/**\n * Community Feeds List\n */\nclass CommunityFeedsList extends BaseList \n{\n    /**\n     * Gets ListResult object with list elements\n     * \n     * @param  Criteria $criteria\n     * \n     * @return ListResult\n     */\n    protected function prepareList($criteria, $params)\n    {   \n        $service = \\Zend_Registry::get('container')->get('newscoop_ticker_plugin.service');\n        $lists = $service->findByCriteria($criteria);\n        foreach ($lists as $key => $feed) {\n            $lists->items[$key] = new MetaCommunityTicker($feed);\n        }\n\n        return $lists;\n    }\n\n    /**\n     * Converts parameters array to Criteria\n     * \n     * @param  integer  $firstResult\n     * @param  array    $parameters\n     * \n     * @return void\n     */\n    protected function convertParameters($firstResult, $parameters)\n    {\n        $this->criteria->orderBy = array();\n        // run default simple parameters converting\n        parent::convertParameters($firstResult, $parameters);\n\n        if (array_key_exists('length', $parameters)) {\n            $parameter = (int) $parameters['length'];\n            if ($parameter < 0) {\n                throw new \\Exception(\"Invalid value of parameter \\\"length\\\" in statement list_community_feeds\", 1);\n            }\n\n            $this->criteria->length = $parameter;\n        }    \n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/CommunityTickerBundle/TemplateList/ListCriteria.php",
    "content": "<?php\n/**\n * @package Newscoop\\CommunityTickerBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\CommunityTickerBundle\\TemplateList;\n\nuse Newscoop\\Criteria;\n\n/**\n * Available criteria for community feeds listing.\n */\nclass ListCriteria extends Criteria\n{\n    /**\n     * @var int\n     */\n    public $id;\n\n    /**\n     * @var int\n     */\n    public $length;\n\n    /**\n     * @var string\n     */\n    public $event;\n\n    /**\n     * @var array\n     */\n    public $created = array('created' => 'asc');\n}"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Controller/ArticleTypesController.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Controller;\n\nuse FOS\\RestBundle\\Controller\\FOSRestController;\nuse FOS\\RestBundle\\Controller\\Annotations\\View;\nuse Nelmio\\ApiDocBundle\\Annotation\\ApiDoc;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Method;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException;\n\nclass ArticleTypesController extends FOSRestController\n{\n    /**\n     * Get Article Types\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when article types found\",\n     *         404={\n     *           \"Returned when article types are not found\",\n     *         }\n     *     }\n     * )\n     *\n     * @Route(\"/articleTypes.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     */\n    public function getArticleTypesAction(Request $request)\n    {\n        $em = $this->container->get('em');\n\n        $articleTypes = $em->getRepository('Newscoop\\Entity\\ArticleType')->getAllTypes();\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $articleTypes = $paginator->paginate($articleTypes, array(\n            'distinct' => false\n        ));\n\n        return $articleTypes;\n    }\n\n    /**\n     * Get Article Type\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the article type is not found\",\n     *         }\n     *     },\n     *     parameters={\n     *         {\"name\"=\"name\", \"dataType\"=\"string\", \"required\"=true, \"description\"=\"Article Type name\"}\n     *     },\n     *     output=\"\\Newscoop\\Entity\\ArticleTypeField\"\n     * )\n     *\n     * @Route(\"/articleTypes/{name}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"details\"})\n     */\n    public function getArticleTypeAction(Request $request, $name)\n    {\n        $em = $this->container->get('em');\n        $type = $em->getRepository('Newscoop\\Entity\\ArticleType')->findOneByName($name);\n\n        if (!$type) {\n            throw new NotFoundHttpException('Article Type was not found');\n        }\n\n        $articleTypesFields = $em->getRepository('Newscoop\\Entity\\ArticleTypeField')\n            ->getFieldsForType($type)\n            ->getResult();\n\n        $allItems = array(\n            'name' => $type->getName(),\n            'fields' => $articleTypesFields\n        );\n\n        return $allItems;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Controller/ArticlesController.php",
    "content": "<?php\n\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @author Yorick Terweijden <yorick.terweijden@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\GimmeBundle\\Controller;\n\nuse FOS\\RestBundle\\Controller\\FOSRestController;\nuse FOS\\RestBundle\\Controller\\Annotations\\View;\nuse FOS\\RestBundle\\View as FOSView;\nuse Nelmio\\ApiDocBundle\\Annotation\\ApiDoc;\nuse Newscoop\\NewscoopException;\nuse Newscoop\\Exception\\InvalidParametersException;\nuse Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException;\nuse Doctrine\\ORM\\EntityNotFoundException;\nuse Newscoop\\GimmeBundle\\Form\\Type\\ArticleType;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Method;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Symfony\\Component\\Security\\Core\\Exception\\AccessDeniedException;\nuse Newscoop\\Criteria\\ArticleSearchCriteria;\nuse Newscoop\\Exception\\AuthenticationException;\n\n/**\n * Articles controller.\n */\nclass ArticlesController extends FOSRestController\n{\n    /**\n     * Create Article.\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         201=\"Returned when Article is created\",\n     *         404=\"Returned when one of required relations is not found\"\n     *     },\n     *     input=\"\\Newscoop\\GimmeBundle\\Form\\Type\\ArticleType\"\n     * )\n     *\n     * @Route(\"/articles/create.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_createarticle\")\n     * @Route(\"/articles/.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_createarticle_clear\")\n     *\n     * @Method(\"POST\")\n     */\n    public function createArticleAction(Request $request)\n    {\n        $user = $this->container->get('user')->getCurrentUser();\n        if (!$user->hasPermission('AddArticle')) {\n            throw new AccessDeniedException('You do not have the right to add articles.');\n        }\n\n        $form = $this->createForm(new ArticleType(), array());\n        $form->handleRequest($request);\n\n        if ($form->isValid()) {\n            $em = $this->container->get('em');\n            $articleService = $this->container->get('newscoop_newscoop.article_service');\n\n            $attributes = $form->getData();\n            $language = $em->getRepository('Newscoop\\Entity\\Language')->findOneBy(array('id' => $attributes['language']));\n            if (!$language) {\n                throw new EntityNotFoundException('Language was not found');\n            }\n\n            $articleType = $em->getRepository('Newscoop\\Entity\\ArticleType')->findOneBy(array('name' => $attributes['type']));\n            if (!$articleType) {\n                throw new EntityNotFoundException('Article type was not found');\n            }\n\n            $publication = $em->getRepository('Newscoop\\Entity\\Publication')->findOneBy(array('id' => $attributes['publication']));\n            if (!$publication) {\n                throw new EntityNotFoundException('Publication was not found');\n            }\n\n            $issue = $em->getRepository('Newscoop\\Entity\\Issue')\n                ->findOneBy(array('publication' => $publication, 'id' => $attributes['issue']));\n\n            $section = $em->getRepository('Newscoop\\Entity\\Section')\n                ->findOneBy(array('publication' => $publication, 'issue' => $issue, 'id' => $attributes['section']));\n\n            $article = $articleService->createArticle($articleType, $language, $user, $publication, $attributes, $issue, $section);\n\n            if (!$user->getAuthor()) {\n                $author = new \\Newscoop\\Entity\\Author($user->getFirstName(), $user->getLastName());\n                $em->persist($author);\n                $user->setAuthor($author);\n            }\n\n            $authorType = $em->getRepository('Newscoop\\Entity\\AuthorType')->findOneBy(array(\n                'type' => 'Journalist',\n            ));\n            if (!$authorType) {\n                $authorType = new \\Newscoop\\Entity\\AuthorType('Journalist');\n                $em->persist($authorType);\n            }\n            $em->flush();\n\n            $authorService = $this->container->get('author');\n            $authorService->addAuthorToArticle($article, $user->getAuthor(), $authorType);\n\n            $this->postAddUpdate($article);\n\n            $view = FOSView\\View::create($article, 201);\n            $view->setHeader('X-Location', $this->generateUrl('newscoop_gimme_articles_getarticle_language', array(\n                'number' => $article->getId(),\n                'language' => $article->getLanguageCode()\n            ), true));\n\n            return $view;\n        }\n\n        return $form;\n    }\n\n    /**\n     * Update Article.\n     *\n     * Additional form aparameters:\n     *\n     *  fields: array with article type fields and ther values.\n     *\n     *     article[fields][lead] = 'new lead'\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         201=\"Returned when Article is updated\"\n     *     },\n     *     parameters={\n     *         {\"name\"=\"number\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Article number\"},\n     *         {\"name\"=\"language\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Language code\"}\n     *     },\n     *     input=\"\\Newscoop\\GimmeBundle\\Form\\Type\\ArticleType\"\n     * )\n     *\n     * @Route(\"/articles/{number}/{language}.{_format}\", defaults={\"_format\"=\"json\", \"language\"=\"en\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_patcharticle\")\n     *\n     * @Method(\"PATCH|POST\")\n     */\n    public function patchArticleAction(Request $request, $number, $language)\n    {\n        $em = $this->container->get('em');\n        $user = $this->container->get('user')->getCurrentUser();\n        if (!$user->hasPermission('AddArticle')) {\n            throw new AccessDeniedException('You do not have the right to add articles.');\n        }\n\n        $article = $em->getRepository('Newscoop\\Entity\\Article')\n            ->getArticle($number, $request->get('language'))\n            ->getOneOrNullResult();\n\n        if (!$article) {\n            throw new NotFoundHttpException('Article was not found');\n        }\n\n        $form = $this->createForm(new ArticleType($article->getData(null)), array(), array(\n            'method' => $request->getMethod(),\n        ));\n        $form->handleRequest($request);\n        if ($form->isValid()) {\n            $articleService = $this->container->get('newscoop_newscoop.article_service');\n\n            $attributes = $form->getData();\n            $article = $articleService->updateArticle($article, $attributes);\n\n            $this->postAddUpdate($article);\n\n            return new FOSView\\View($article, 200, array(\n                'X-Location' => $this->generateUrl('newscoop_gimme_articles_getarticle', array(\n                    'number' => $article->getId(),\n                ), true), )\n            );\n        } else {\n            // TODO add support for global for errors handler\n        }\n\n        return new FOSView\\View($form, 400);\n    }\n\n    private function postAddUpdate($article)\n    {\n        $cacheService = $this->container->get('newscoop.cache');\n        $cacheService->clearNamespace('article');\n        $cacheService->clearNamespace('article_type');\n        $cacheService->clearNamespace('boxarticles');\n    }\n\n    /**\n     * Get Articles.\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when articles found\",\n     *         404={\n     *           \"Returned when articles are not found\",\n     *         }\n     *     },\n     *     parameters={\n     *         {\"name\"=\"type\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Article type\"},\n     *         {\"name\"=\"language\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Language code\"},\n     *         {\"name\"=\"issue\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Issue number\"},\n     *         {\"name\"=\"section\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Section number\"}\n     *     }\n     * )\n     *\n     * @Route(\"/articles.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_getarticles\")\n     *\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     *\n     * @return array\n     */\n    public function getArticlesAction(Request $request)\n    {\n        $em = $this->container->get('em');\n        $publication = $this->get('newscoop_newscoop.publication_service')->getPublication()->getId();\n\n        $articles = $em->getRepository('Newscoop\\Entity\\Article')\n            ->getArticles($publication, $request->get('type', null), $request->get('language', null), $request->get('issue', null), $request->get('section', null));\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $articles = $paginator->paginate($articles, array(\n            'distinct' => false,\n        ));\n\n        return $articles;\n    }\n\n    /**\n     * Search for articles.\n     *\n     * Parameter 'query' contains keywords seperated with \",\". Example: test,article,keyword3\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the articles are not found\"\n     *         }\n     *     },\n     *     parameters={\n     *         {\"name\"=\"query\", \"dataType\"=\"string\", \"required\"=true, \"description\"=\"article serach query\"},\n     *         {\"name\"=\"publication\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Filter by publication\"},\n     *         {\"name\"=\"issue\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Filter by issue\"},\n     *         {\"name\"=\"section\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Filter by section\"},\n     *         {\"name\"=\"language\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Filter by language\"},\n     *         {\"name\"=\"article_type\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Filter by article type\"},\n     *         {\"name\"=\"publish_date\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Filter by publish date\"},\n     *         {\"name\"=\"published_after\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Filter by published after date\"},\n     *         {\"name\"=\"published_before\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Filter by published before date\"},\n     *         {\"name\"=\"author\", \"dataType\"=\"integer\", \"required\"=false, \"description\"=\"Filter by author\"},\n     *         {\"name\"=\"creator\", \"dataType\"=\"integer\", \"required\"=false, \"description\"=\"Filter by creator\"},\n     *         {\"name\"=\"status\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Filter by status\"},\n     *         {\"name\"=\"topic\", \"dataType\"=\"integer\", \"required\"=false, \"description\"=\"Filter by topic\"}\n     *     }\n     * )\n     *\n     * @Route(\"/search/articles.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     *\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     *\n     * @return array\n     */\n    public function searchArticlesAction(Request $request)\n    {\n        $articleSearch = $this->container->get('search.article');\n        $publication = $this->get('newscoop.publication_service')->getPublication();\n        $onlyPublished = true;\n\n        try {\n            $user = $this->container->get('user')->getCurrentUser();\n            if ($user && $user->isAdmin()) {\n                $onlyPublished = false;\n            }\n        } catch (AuthenticationException $e) {/* User is not logged in */}\n\n        $articleSearchCriteria = new ArticleSearchCriteria();\n        $articleSearchCriteria->fillFromRequest($request);\n\n        $articles = $articleSearch->searchArticles(\n            $articleSearchCriteria,\n            $onlyPublished,\n            true\n        );\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $articles = $paginator->paginate($articles, array(\n            'distinct' => false,\n        ));\n\n        return $articles;\n    }\n\n    /**\n     * Get related articles.\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the articles are not found\"\n     *         }\n     *     }\n     * )\n     *\n     * @Route(\"/articles/{number}/related.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_related_default_lang\")\n     * @Route(\"/articles/{number}/{language}/related.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_related\")\n     *\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     *\n     * @return array\n     */\n    public function relatedArticlesAction(Request $request, $number, $language = null)\n    {\n        $em = $this->container->get('em');\n        $publication = $this->get('newscoop.publication_service')->getPublication();\n        $relatedArticlesService = $this->get('related_articles');\n\n        $article = $em->getRepository('Newscoop\\Entity\\Article')\n            ->getArticle($number, $request->get('language', $publication->getLanguage()->getCode()))\n            ->getOneOrNullResult();\n\n        if (!$article) {\n            throw new NotFoundHttpException('Article was not found');\n        }\n\n        $onlyPublished = true;\n        try {\n            $user = $this->container->get('user')->getCurrentUser();\n            if ($user && $user->isAdmin()) {\n                $onlyPublished = false;\n            }\n        } catch (AuthenticationException $e) {\n        }\n\n        $relatedArticles = $relatedArticlesService\n            ->getRelatedArticles($article);\n\n        $ids = array();\n        foreach ($relatedArticles as $relatedArticle) {\n            $ids[] = $relatedArticle->getArticleNumber();\n        }\n\n        $articleSearchCriteria = new ArticleSearchCriteria();\n        $articleSearchCriteria->language = $article->getLanguage()->getCode();\n        $articles = $em->getRepository('Newscoop\\Entity\\Article')\n            ->getArticlesByCriteria(\n                $articleSearchCriteria,\n                $ids,\n                $onlyPublished\n            );\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $paginator->setUsedRouteParams(array('number' => $number, 'language' => $article->getLanguage()->getCode()));\n        $articles = $paginator->paginate($articles, array(\n            'distinct' => false,\n        ));\n\n        return $articles;\n    }\n\n    /**\n     * Get article.\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the article is not found\",\n     *         }\n     *     },\n     *     filters={\n     *          {\"name\"=\"language\", \"dataType\"=\"string\", \"description\"=\"Language code\"}\n     *     },\n     *     output=\"\\Newscoop\\Entity\\Article\"\n     * )\n     *\n     * @Route(\"/articles/{number}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_getarticle\")\n     * @Route(\"/articles/{number}/{language}.{_format}\", requirements={\"number\" = \"\\d+\"}, defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_getarticle_language\")\n     *\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"details\"})\n     *\n     * @return Article\n     */\n    public function getArticleAction(Request $request, $number, $language = null)\n    {\n        $em = $this->container->get('em');\n        $publication = $this->get('newscoop_newscoop.publication_service')->getPublication();\n\n        $article = $em->getRepository('Newscoop\\Entity\\Article')\n            ->getArticle($number, $request->get('language', $publication->getLanguage()->getCode()))\n            ->getOneOrNullResult();\n\n        if (!$article) {\n            throw new NotFoundHttpException('Article was not found');\n        }\n\n        return $article;\n    }\n\n    /**\n     * Gets the list of playlist the given article belongs to..\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the article is not found\",\n     *         }\n     *     },\n     *     filters={\n     *          {\"name\"=\"language\", \"dataType\"=\"string\", \"description\"=\"Language code\"}\n     *     },\n     *     output=\"\\Newscoop\\Entity\\Article\"\n     * )\n     *\n     * @Route(\"/articles/{number}/{language}/playlists.{_format}\", requirements={\"number\" = \"\\d+\"}, defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_getarticle_language_playlists\")\n     *\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"details\"})\n     *\n     * @return array\n     */\n    public function getArticlePlaylistsAction(Request $request, $number, $language = null)\n    {\n        $em = $this->container->get('em');\n        $publication = $this->get('newscoop_newscoop.publication_service')->getPublication();\n\n        $article = $em->getRepository('Newscoop\\Entity\\Article')\n            ->getArticle($number, $request->get('language', $publication->getLanguage()->getCode()))\n            ->getOneOrNullResult();\n\n        if (!$article) {\n            throw new NotFoundHttpException('Article was not found');\n        }\n\n        $playlists = $em->getRepository('Newscoop\\Entity\\Playlist')\n            ->getArticlePlaylists($article->getNumber(), $article->getLanguageId());\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $paginator->setUsedRouteParams(array('number' => $number, 'language' => $article->getLanguage()->getCode()));\n        $playlists = $paginator->paginate($playlists);\n\n        return $playlists;\n    }\n\n    /**\n     * Link resource with Article entity.\n     *\n     * **article authors headers**:\n     *\n     *     header name: \"link\"\n     *     header value: \"</api/authors/7; rel=\"author\">,</api/authors/types/4; rel=\"author-type\">\"\n     *\n     * **attachments headers**:\n     *\n     *     header name: \"link\"\n     *     header value: \"</api/attachments/1; rel=\"attachment\">\"\n     *\n     * **images headers**:\n     *\n     *     header name: \"link\"\n     *     header value: \"</api/images/1; rel=\"image\">\"\n     *\n     * **topics headers**:\n     *\n     *     header name: \"link\"\n     *     header value: \"</api/topics/1; rel=\"topic\">\"\n     *\n     * **related articles headers**:\n     *\n     *     header name: \"link\"\n     *     header value: \"</api/article/1; rel=\"article\">\"\n     * or with specific language\n     *\n     *     header value: \"</api/article/1?language=en; rel=\"article\">\"\n     * you can also specify position on list\n     *\n     *     header value: \"</api/article/1?language=en; rel=\"article\">,<1; rel=\"article-position\">\"\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         201=\"Returned when successful\",\n     *         404=\"Returned when resource not found\",\n     *         409={\n     *           \"Returned when the link already exists\",\n     *         }\n     *     },\n     *     parameters={\n     *         {\"name\"=\"number\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Article number\"},\n     *         {\"name\"=\"language\", \"dataType\"=\"string\", \"required\"=true, \"description\"=\"Language string\"}\n     *     }\n     * )\n     *\n     * @Route(\"/articles/{number}/{language}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_linkarticle\")\n     * @Route(\"/articles/{number}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_linkarticle_default_lang\")\n     *\n     * @Method(\"LINK\")\n     * @View(statusCode=201)\n     *\n     * @return Article\n     */\n    public function linkArticleAction(Request $request, $number, $language = null)\n    {\n        $em = $this->container->get('em');\n        $publication = $this->get('newscoop.publication_service')->getPublication();\n\n        $article = $em->getRepository('Newscoop\\Entity\\Article')\n            ->getArticle($number, $request->get('language', $publication->getLanguage()->getCode()))\n            ->getOneOrNullResult();\n\n        if (!$article) {\n            throw new NotFoundHttpException('Article was not found');\n        }\n\n        $matched = false;\n        foreach ($request->attributes->get('links', array()) as $key => $objectArray) {\n            if (!is_array($objectArray)) {\n                return true;\n            }\n\n            $resourceType = $objectArray['resourceType'];\n            $object = $objectArray['object'];\n\n            if ($object instanceof \\Exception) {\n                throw $object;\n            }\n\n            if ($object instanceof \\Newscoop\\Image\\LocalImage) {\n                $imagesService = $this->get('image');\n                $imagesService->addArticleImage($article->getNumber(), $object);\n\n                $matched = true;\n\n                continue;\n            }\n\n            if ($object instanceof \\Newscoop\\Entity\\Attachment) {\n                $attachmentService = $this->get('attachment');\n                $attachmentService->addAttachmentToArticle($article, $object);\n\n                $matched = true;\n\n                continue;\n            }\n\n            if ($object instanceof \\Newscoop\\Entity\\Author) {\n                $authorService = $this->get('author');\n                $authorType = false;\n                foreach ($request->attributes->get('links') as $key => $tempObjectArray) {\n                    if ($tempObjectArray['object'] instanceof \\Newscoop\\Entity\\AuthorType) {\n                        $authorType = $tempObjectArray['object'];\n                    }\n                }\n\n                if ($authorType) {\n                    $authorService->addAuthorToArticle($article, $object, $authorType);\n\n                    $matched = true;\n                }\n\n                continue;\n            }\n\n            if ($object instanceof \\Newscoop\\Entity\\Snippet) {\n                $snippetRepo = $em->getRepository('Newscoop\\Entity\\Snippet');\n                $snippetRepo->addSnippetToArticle($object, $article);\n\n                $matched = true;\n\n                continue;\n            }\n\n            if ($object instanceof \\Newscoop\\NewscoopBundle\\Entity\\Topic) {\n                $topicService = $this->get('newscoop_newscoop.topic_service');\n                $topicService->addTopicToArticle($object, $article);\n\n                $matched = true;\n\n                continue;\n            }\n\n            if ($object instanceof \\Newscoop\\Entity\\Article) {\n                $relatedArticlesService = $this->get('related_articles');\n\n                $position = false;\n                if (count($notConvertedLinks = $this->getNotConvertedLinks($request)) > 0) {\n                    foreach ($notConvertedLinks as $link) {\n                        if (isset($link['resourceType']) && $link['resourceType'] == 'article-position') {\n                            $position = $link['resource'];\n                        }\n                    }\n                }\n\n                $relatedArticlesService->addArticle($article, $object, $position);\n\n                $matched = true;\n\n                continue;\n            }\n        }\n\n        if ($matched === false) {\n            throw new InvalidParametersException('Any supported link object not found');\n        }\n\n        return $article;\n    }\n\n    /**\n     * Unlink resource from Article.\n     *\n     * **article authors headers**:\n     *\n     *     header name: \"link\"\n     *     header value: \"</api/authors/7; rel=\"author\">,</api/authors/types/4; rel=\"author-type\">\"\n     *\n     * **attachments headers**:\n     *\n     *     header name: \"link\"\n     *     header value: \"</api/attachments/1; rel=\"attachment\">\"\n     *\n     * **images headers**:\n     *\n     *     header name: \"link\"\n     *     header value: \"</api/images/1; rel=\"image\">\"\n     *\n     * **topics headers**:\n     *\n     *     header name: \"link\"\n     *     header value: \"</api/topics/1; rel=\"topic\">\"\n     *\n     * **related articles headers**:\n     *\n     *     header name: \"link\"\n     *     header value: \"</api/articles/1; rel=\"article\">\"\n     * or with specific language\n     *\n     *     header value: \"</api/articles/1?language=en; rel=\"article\">\"\n     *\n     * **slideshows headers**:\n     *\n     *     header name: \"link\"\n     *     header value: \"</api/slideshows/1; rel=\"slideshow\">\"\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         204=\"Returned when successful\",\n     *         404=\"Returned when resource not found\"\n     *     },\n     *     parameters={\n     *         {\"name\"=\"number\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Article number\"}\n     *     }\n     * )\n     *\n     * @Route(\"/articles/{number}/{language}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_unlinkarticle\")\n     * @Route(\"/articles/{number}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_unlinkarticle_default_lang\")\n     *\n     * @Method(\"UNLINK\")\n     * @View(statusCode=204)\n     *\n     * @return Article\n     */\n    public function unlinkArticleAction(Request $request, $number, $language = null)\n    {\n        $em = $this->container->get('em');\n        $publication = $this->get('newscoop.publication_service')->getPublication();\n\n        $article = $em->getRepository('Newscoop\\Entity\\Article')\n            ->getArticle($number, $request->get('language', $publication->getLanguage()->getCode()))\n            ->getOneOrNullResult();\n\n        if (!$article) {\n            throw new NotFoundHttpException('Article was not found');\n        }\n\n        $matched = false;\n        foreach ($request->attributes->get('links', array()) as $key => $objectArray) {\n            $resourceType = $objectArray['resourceType'];\n\n            $object = $objectArray['object'];\n\n            if ($object instanceof \\Exception) {\n                throw $object;\n            }\n\n            if ($object instanceof \\Newscoop\\Image\\LocalImage) {\n                $imagesService = $this->get('image');\n                $articleImage = $em->getRepository('Newscoop\\Image\\ArticleImage')\n                    ->getArticleImage($article->getNumber(), $object)\n                    ->getOneOrNullResult();\n\n                if ($articleImage) {\n                    $imagesService->removeArticleImage($articleImage);\n                } else {\n                    throw new InvalidParametersException('Image is not linked to article');\n                }\n\n                $matched = true;\n\n                continue;\n            }\n\n            if ($object instanceof \\Newscoop\\Entity\\Attachment) {\n                $attachmentService = $this->get('attachment');\n                $attachmentService->removeAttachmentFormArticle($article, $object);\n\n                $matched = true;\n\n                continue;\n            }\n\n            if ($object instanceof \\Newscoop\\Entity\\Author) {\n                $authorService = $this->get('author');\n                $authorType = false;\n                foreach ($request->attributes->get('links') as $key => $tempObjectArray) {\n                    if ($tempObjectArray['object'] instanceof \\Newscoop\\Entity\\AuthorType) {\n                        $authorType = $tempObjectArray['object'];\n                    }\n                }\n\n                if ($authorType) {\n                    $authorService->removeAuthorFromArticle($article, $object, $authorType);\n\n                    $matched = true;\n                }\n\n                continue;\n            }\n\n            if ($object instanceof \\Newscoop\\Entity\\Snippet) {\n                $snippetRepo = $em->getRepository('Newscoop\\Entity\\Snippet');\n                $snippetRepo->removeSnippetFromArticle($object, $article);\n\n                $matched = true;\n\n                continue;\n            }\n\n            if ($object instanceof \\Newscoop\\NewscoopBundle\\Entity\\Topic) {\n                $topicService = $this->get('newscoop_newscoop.topic_service');\n                $topicService->removeTopicFromArticle($object, $article);\n\n                $matched = true;\n\n                continue;\n            }\n\n            if ($object instanceof \\Newscoop\\Entity\\Article) {\n                $relatedArticlesService = $this->get('related_articles');\n                $relatedArticlesService->removeRelatedArticle($article, $object);\n\n                $matched = true;\n\n                continue;\n            }\n\n            if ($object instanceof \\Newscoop\\Package\\Package) {\n                $packageService = $this->get('package');\n                $packageService->removeFromArticle($object, $article->getNumber());\n\n                $matched = true;\n\n                continue;\n            }\n        }\n\n        if ($matched === false) {\n            throw new InvalidParametersException('Any supported unlink object not found');\n        }\n\n        return $article;\n    }\n\n    /**\n     * Change Article status.\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         201=\"Returned when Article Status changed successfully\"\n     *     },\n     *     parameters={\n     *         {\"name\"=\"number\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Article number\"},\n     *         {\"name\"=\"language\", \"dataType\"=\"string\", \"required\"=true, \"description\"=\"Language code\"},\n     *         {\"name\"=\"status\", \"dataType\"=\"string\", \"required\"=true, \"description\"=\"Status code: 'N','S','M','Y'\"}\n     *     }\n     * )\n     *\n     * @Route(\"/articles/{number}/{language}/{status}.{_format}\", defaults={\"_format\"=\"json\", \"language\"=\"en\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_changearticlestatus\")\n     *\n     * @Method(\"PATCH\")\n     */\n    public function changeArticleStatus(Request $request, $number, $language, $status)\n    {\n        $user = $this->container->get('user')->getCurrentUser();\n        $statuses = array('N','S','M','Y');\n        if (!in_array($status, $statuses)) {\n            throw new InvalidParametersException('The provided Status is not valid, available: N, S, M, Y.');\n        }\n\n        $articleObj = $this->getArticle($number, $language, $user);\n        $success = $articleObj->setWorkflowStatus($status);\n        $response = new Response();\n        if ($success) {\n            $response->setStatusCode(201);\n        } else {\n            $response->setStatusCode(500);\n            throw new \\Exception('Setting status code failed');\n        }\n\n        return $response;\n    }\n\n    /**\n     * Lock or unlock article.\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when article has been locked\",\n     *         204=\"Returned when article has been unlocked\",\n     *         403=\"Returned when trying to set the same status\"\n     *     },\n     *     parameters={\n     *         {\"name\"=\"number\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Article number\"},\n     *         {\"name\"=\"language\", \"dataType\"=\"string\", \"required\"=true, \"description\"=\"Language code\"}\n     *     }\n     * )\n     *\n     * @Route(\"/articles/{number}/{language}/lock.{_format}\", defaults={\"_format\"=\"json\", \"language\"=\"en\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_changearticlelockstatus\")\n     *\n     * @Method(\"POST|DELETE\")\n     */\n    public function lockUnlockArticle(Request $request, $number, $language)\n    {\n        $em = $this->container->get('em');\n        $article = $em->getRepository('Newscoop\\Entity\\Article')\n            ->getArticle($number, $language)\n            ->getOneOrNullResult();\n\n        if (!$article) {\n            throw new NewscoopException('Article does not exist');\n        }\n\n        $response = new Response();\n        $response->setStatusCode(403);\n        if ($request->getMethod() === 'POST') {\n            if (!$article->isLocked()) {\n                $article->setLockUser($this->getUser());\n                $article->setLockTime(new \\DateTime());\n                $response->setStatusCode(200);\n            }\n        }\n\n        if ($request->getMethod() === 'DELETE') {\n            if ($article->isLocked()) {\n                $article->setLockUser();\n                $article->setLockTime();\n                $response->setStatusCode(204);\n            }\n        }\n\n        $em->flush();\n\n        return $response;\n    }\n\n    private function getNotConvertedLinks($request)\n    {\n        $links = array();\n        foreach ($request->attributes->get('links') as $idx => $link) {\n            if (is_string($link)) {\n                $linkParams = explode(';', trim($link));\n                $resourceType = null;\n                if (count($linkParams) > 1) {\n                    $resourceType = trim(preg_replace('/<|>/', '', $linkParams[1]));\n                    $resourceType = str_replace('\"', '', str_replace('rel=', '', $resourceType));\n                }\n                $resource = array_shift($linkParams);\n                $resource = preg_replace('/<|>/', '', $resource);\n\n                $links[] = array(\n                    'resource' => $resource,\n                    'resourceType' => $resourceType,\n                );\n            }\n        }\n\n        return $links;\n    }\n\n    private function getArticle($number, $language, $user)\n    {\n        $em = $this->container->get('em');\n        $languageObject = $em->getRepository('Newscoop\\Entity\\Language')->findOneByCode($language);\n\n        // Fetch article\n        $articleObj = new \\Article($languageObject->getId(), $number);\n\n        if (!$articleObj->exists()) {\n            throw new NewscoopException('Article does not exist');\n        }\n\n        if (!$articleObj->userCanModify($user)) {\n            throw new AccessDeniedException('User cannot modify article.');\n        }\n\n        // Only users with a lock on the article can change it.\n        if ($articleObj->isLocked() && ($user->getUserId() != $articleObj->getLockedByUser())) {\n            $lockTime = new \\DateTime($articleObj->getLockTime());\n            $now = new \\DateTime('now');\n            $difference = $now->diff($lockTime);\n            $ago = $difference->format('%R%H:%I:%S');\n            $lockUser = new \\User($articleObj->getLockedByUser());\n\n            throw new NewscoopException(sprintf('Article locked by %s (%s ago)', $lockUser->getRealName(), $ago));\n        }\n\n        return $articleObj;\n    }\n\n    private function processForm($request, $number, $language)\n    {\n        $em = $this->container->get('em');\n        $publication = $this->get('newscoop.publication_service')->getPublication();\n        $article = null;\n        $articles = $em->getRepository('Newscoop\\Entity\\Article')\n            ->getArticle($number, $language)\n            ->getResult();\n\n        if (count($articles) > 0) {\n            $article = $articles[0];\n        }\n\n        $statusCode = $article ? 200 : 201;\n\n        $form = $this->createForm(new ArticleType(), $article);\n        $form->bind($request);\n\n        if ($form->isValid()) {\n            if ($statusCode == 201) {\n                $em->persist($article);\n            }\n            $em->flush();\n\n            $response = new Response();\n            $response->setStatusCode($statusCode);\n\n            return $response;\n        }\n\n        return $form;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Controller/ArticlesListController.php",
    "content": "<?php\n\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\GimmeBundle\\Controller;\n\nuse FOS\\RestBundle\\Controller\\FOSRestController;\nuse FOS\\RestBundle\\Controller\\Annotations\\View;\nuse Nelmio\\ApiDocBundle\\Annotation\\ApiDoc;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Method;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse FOS\\RestBundle\\View as FOSView;\nuse Newscoop\\GimmeBundle\\Form\\Type\\PlaylistType;\nuse Newscoop\\Entity\\Playlist;\nuse Newscoop\\Entity\\Article;\nuse Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException;\nuse Symfony\\Component\\Security\\Core\\Exception\\AccessDeniedException;\nuse Newscoop\\Exception\\ResourcesConflictException;\nuse Newscoop\\Exception\\InvalidParametersException;\nuse Symfony\\Component\\HttpKernel\\HttpKernelInterface;\nuse Symfony\\Component\\HttpKernel\\KernelEvents;\nuse Symfony\\Component\\HttpKernel\\Event\\FilterControllerEvent;\nuse Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent;\nuse Newscoop\\Exception\\AuthenticationException;\n\nclass ArticlesListController extends FOSRestController\n{\n    /**\n     * Get Articles Lists.\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when articles lists found\",\n     *         404={\n     *           \"Returned when articles lists are not found\",\n     *         }\n     *     }\n     * )\n     *\n     * @Route(\"/articles-lists.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     *\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     */\n    public function getArticlesListsAction(Request $request)\n    {\n        $em = $this->container->get('em');\n\n        $playlists = $em->getRepository('Newscoop\\Entity\\Playlist')\n            ->getPlaylists();\n\n        if (!$playlists) {\n            throw new NotFoundHttpException('Result was not found.');\n        }\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $playlists = $paginator->paginate($playlists, array(\n            'distinct' => false,\n        ));\n\n        return $playlists;\n    }\n\n    /**\n     * Get Articles List.\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when articles lists found\",\n     *         404={\n     *           \"Returned when articles lists are not found\",\n     *         }\n     *     },\n     *     output=\"\\Newscoop\\Entity\\Playlist\"\n     * )\n     *\n     * @Route(\"/articles-lists/{id}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_lists_getlist\")\n     *\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"details\"})\n     */\n    public function getArticlesListAction(Request $request, $id)\n    {\n        $em = $this->container->get('em');\n\n        $playlist = $em->getRepository('Newscoop\\Entity\\Playlist')\n            ->getPlaylist($id)\n            ->getOneOrNullResult();\n\n        if (!$playlist) {\n            throw new NotFoundHttpException('Result was not found.');\n        }\n\n        return $playlist;\n    }\n\n    /**\n     * Get list of articles from \"playlist\".\n     *\n     * Returns array with articles under \"items\" key and requested list \"id\" and \"name\"\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when articles found\",\n     *         404={\n     *           \"Returned when articles are not found\",\n     *         }\n     *     }\n     * )\n     *\n     * @Route(\"/articles-lists/{id}/articles.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     *\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     */\n    public function getPlaylistsArticlesAction(Request $request, $id)\n    {\n        $em = $this->container->get('em');\n\n        $paginatorService = $this->get('newscoop.paginator.paginator_service');\n        $paginatorService->setUsedRouteParams(array('id' => $id));\n\n        $playlist = $em->getRepository('Newscoop\\Entity\\Playlist')\n            ->findOneBy(array(\n                'id' => $id,\n            ));\n\n        if (!$playlist) {\n            throw new NotFoundHttpException('Result was not found.');\n        }\n\n        $onlyPublished = true;\n        try {\n            $user = $this->container->get('user')->getCurrentUser();\n            if ($user && $user->isAdmin()) {\n                $onlyPublished = false;\n            }\n        } catch (AuthenticationException $e) {\n        }\n\n        $playlistArticles = $em->getRepository('Newscoop\\Entity\\Playlist')\n            ->articles($playlist, array(), true, null, null, $onlyPublished, true);\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $articles = $paginator->paginate($playlistArticles, array(\n            'distinct' => false,\n        ));\n\n        foreach ($articles['items'] as $key => $playlistArticle) {\n            $articles['items'][$key] = $em->getRepository('Newscoop\\Entity\\Article')\n                ->getArticle($playlistArticle->getArticleNumber(), $playlistArticle->getArticleLanguage())->getSingleResult();\n        }\n\n        $allItems = array_merge(array(\n            'id' => $playlist->getId(),\n            'name' => $playlist->getName(),\n            'notes' => $playlist->getNotes(),\n            'maxItems' => $playlist->getMaxItems(),\n            'articlesModificationTime' => $playlist->getArticlesModificationTime(),\n        ), $articles);\n\n        return $allItems;\n    }\n\n    /**\n     * Link article to playlist.\n     *\n     * ** articles headers**:\n     *\n     *     header name: \"link\"\n     *     header value: \"</api/articles/1; rel=\"article\">\"\n     * or with specific language\n     *\n     *     header value: \"</api/articles/1/en; rel=\"article\">\"\n     * you can also specify position on list\n     *\n     *     header value: \"</api/articles/1/en; rel=\"article\">,<1; rel=\"article-position\">\"\n     *\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         201=\"Returned when successful\",\n     *         404=\"Returned when resource not found\"\n     *     },\n     *     requirements={\n     *         {\"name\"=\"id\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Playlist Id\"}\n     *     }\n     * )\n     *\n     * @Route(\"articles-lists/{id}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_lists_linkarticle\")\n     *\n     * @Method(\"LINK\")\n     * @View(statusCode=201)\n     */\n    public function linkToPlaylistAction(Request $request, $id)\n    {\n        $em = $this->container->get('em');\n        $user = $this->container->get('user')->getCurrentUser();\n        if (!$user->hasPermission('ManagePlaylist')) {\n            throw new AccessDeniedException('You do not have the right to manage playlists.');\n        }\n\n        $playlist = $em->getRepository('Newscoop\\Entity\\Playlist')\n            ->getPlaylist($id)\n            ->getOneOrNullResult();\n\n        if (!$playlist) {\n            throw new NotFoundHttpException('Result was not found.');\n        }\n\n        $this->linkOrUnlinkResources($playlist, $request, 'link');\n\n        return $playlist;\n    }\n\n    /**\n     * Unlink article to playlist.\n     *\n     * ** articles headers**:\n     *\n     *     header name: \"link\"\n     *     header value: \"</api/articles/1; rel=\"article\">\"\n     * or with specific language\n     *\n     *     header value: \"</api/articles/1/en; rel=\"article\">\"\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         201=\"Returned when successful\",\n     *         404=\"Returned when resource not found\"\n     *     },\n     *     requirements={\n     *         {\"name\"=\"id\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Playlist Id\"}\n     *     }\n     * )\n     *\n     * @Route(\"articles-lists/{id}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_lists_unlinkarticle\")\n     *\n     * @Method(\"UNLINK\")\n     * @View(statusCode=204)\n     */\n    public function unlinkFromPlaylistAction(Request $request, $id)\n    {\n        $em = $this->container->get('em');\n        $user = $this->container->get('user')->getCurrentUser();\n        if (!$user->hasPermission('ManagePlaylist')) {\n            throw new AccessDeniedException('You do not have the right to manage playlists.');\n        }\n\n        $playlist = $em->getRepository('Newscoop\\Entity\\Playlist')\n            ->getPlaylist($id)\n            ->getOneOrNullResult();\n\n        if (!$playlist) {\n            throw new NotFoundHttpException('Result was not found.');\n        }\n\n        $this->linkOrUnlinkResources($playlist, $request, 'unlink');\n\n        return $playlist;\n    }\n\n    /**\n     * Save many changes for playlist items.\n     *\n     * example post data:\n     *```\n     * 'actions' => array [\n     *   0 => array [\n     *     \"link\" => \"</api/articles/67/en; rel=\"article\">,<3; rel=\"article-position\">\"\n     *   ]\n     *   1 => array [\n     *     \"unlink\" => \"</api/articles/64/en; rel=\"article\">\"\n     *   ]\n     *   2 => array [\n     *     \"link\" => \"</api/articles/64/en; rel=\"article\">,<1; rel=\"article-position\">\"\n     *   ]\n     * ]\n     *```\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         201=\"Returned when successful\",\n     *         404=\"Returned when resource not found\"\n     *     },\n     *     requirements={\n     *         {\"name\"=\"id\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Playlist Id\"}\n     *     },\n     *     parameters={\n     *         {\"name\"=\"articlesModificationTime\", \"dataType\"=\"datetime\", \"required\"=true, \"description\"=\"Playlist articles list last modification time\"}\n     *     }\n     * )\n     *\n     * @Route(\"articles-lists/{id}/articles.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     *\n     * @Method(\"POST\")\n     * @View(statusCode=200)\n     */\n    public function saveBatchActionsAction(Request $request, $id)\n    {\n        $user = $this->container->get('user')->getCurrentUser();\n        if (!$user->hasPermission('ManagePlaylist')) {\n            throw new AccessDeniedException('You do not have the right to manage playlists.');\n        }\n\n        $em = $this->container->get('em');\n        $urlMatcher = $this->container->get('router');\n        $controllerResolver = $this->container->get('controller_resolver');\n        $kernel = $this->container->get('kernel');\n        $dispatcher = $this->container->get('dispatcher');\n\n        $playlist = $em->getRepository('Newscoop\\Entity\\Playlist')\n            ->getPlaylist($id)\n            ->getOneOrNullResult();\n\n        if (!$playlist) {\n            throw new NotFoundHttpException('Result was not found.');\n        }\n\n        $actions = $request->request->get('actions', array());\n        $lastArtclesModificationTime = $request->request->get('articlesModificationTime');\n        if (!$lastArtclesModificationTime && $playlist->getArticlesModificationTime() != null) {\n            throw new InvalidParametersException('articlesModificationTime parameter is required');\n        } elseif (new \\DateTime($lastArtclesModificationTime, new \\DateTimeZone('UTC')) !=\n            $playlist->getArticlesModificationTime() &&\n            $playlist->getArticlesModificationTime() != null\n        ) {\n            throw new ResourcesConflictException('This list is already in a different state than the one in which it was loaded.', 409);\n        }\n\n        $playlist->setArticlesModificationTime(new \\DateTime('now'));\n        $em->flush();\n\n        // The controller resolver needs a request to resolve the controller.\n        $stubRequest = new Request();\n        $actionsResults = array();\n        foreach ($actions as $actionKey => $action) {\n            foreach ($action as $method => $header) {\n                $urlMatcher->getContext()->setMethod($method);\n                switch ($method) {\n                    case 'link':\n                        $resource = $this->generateUrl('newscoop_gimme_articles_lists_linkarticle', array('id' => $playlist->getId()));\n                        break;\n\n                    case 'unlink':\n                        $resource = $this->generateUrl('newscoop_gimme_articles_lists_unlinkarticle', array('id' => $playlist->getId()));\n                        break;\n                }\n\n                $tempRequest = Request::create($resource);\n                try {\n                    $route = $urlMatcher->match($tempRequest->getRequestUri());\n                } catch (\\Exception $e) {\n                    // If we don't have a matching route we return the original Link header\n                    continue;\n                }\n\n                $stubRequest->attributes->replace($route);\n                $stubRequest->server = $request->server;\n                $stubRequest->headers->set('link', $header);\n                if (false === $controller = $controllerResolver->getController($stubRequest)) {\n                    continue;\n                }\n\n                $subEvent = new FilterControllerEvent($kernel, $controller, $stubRequest, HttpKernelInterface::SUB_REQUEST);\n                $kernelSubEvent = new GetResponseEvent($kernel, $stubRequest, HttpKernelInterface::SUB_REQUEST);\n                $dispatcher->dispatch(KernelEvents::REQUEST, $kernelSubEvent);\n                $dispatcher->dispatch(KernelEvents::CONTROLLER, $subEvent);\n                $controller = $subEvent->getController();\n\n                $arguments = $controllerResolver->getArguments($stubRequest, $controller);\n\n                try {\n                    $result = call_user_func_array($controller, $arguments);\n\n                    if (!is_object($result)) {\n                        continue;\n                    }\n                    $actionsResults[$actionKey] = array(\n                        'object' => $result,\n                        'method' => $method,\n                        'header' => $header,\n                    );\n                } catch (\\Exception $e) {\n                    $actionsResults[$actionKey] = array(\n                        'object' => $e->getMessage(),\n                        'method' => $method,\n                        'header' => $header,\n                    );\n\n                    continue;\n                }\n            }\n        }\n\n        return $actionsResults;\n    }\n\n    /**\n     * Create new playlist.\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         201=\"Returned when successful\",\n     *         404=\"Returned when resource not found\"\n     *     },\n     *     parameters={\n     *         {\"name\"=\"access_token\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Access token\"}\n     *     },\n     *     input=\"\\Newscoop\\GimmeBundle\\Form\\Type\\PlaylistType\"\n     * )\n     *\n     * @Route(\"articles-lists.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     *\n     * @Method(\"POST\")\n     */\n    public function createPlaylistAction(Request $request)\n    {\n        $user = $this->container->get('user')->getCurrentUser();\n        if (!$user->hasPermission('ManagePlaylist')) {\n            throw new AccessDeniedException('You do not have the right to manage playlists.');\n        }\n\n        $em = $this->container->get('em');\n        $playlist = new Playlist();\n\n        $form = $this->createForm(new PlaylistType(), $playlist);\n        $form->handleRequest($request);\n\n        if ($form->isValid()) {\n            $existingPlaylist = $em->getRepository('Newscoop\\Entity\\Playlist')\n                ->getPlaylistByTitle($playlist->getName())\n                ->getOneOrNullResult();\n\n            if ($existingPlaylist) {\n                throw new ResourcesConflictException('Playlist with that name already exists', 409);\n            }\n\n            $em->persist($playlist);\n            $em->flush();\n\n            $view = FOSView\\View::create($playlist, 200);\n            $view->setHeader('X-Location', $this->generateUrl('newscoop_gimme_articles_lists_getlist', array(\n                'id' => $playlist->getId(),\n            ), true));\n\n            return $view;\n        }\n\n        return $form;\n    }\n\n    /**\n     * Update playlist.\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         201=\"Returned when successful\",\n     *         404=\"Returned when resource not found\"\n     *     },\n     *     parameters={\n     *         {\"name\"=\"id\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Playlist id\"}\n     *     },\n     *     input=\"\\Newscoop\\GimmeBundle\\Form\\Type\\PlaylistType\"\n     * )\n     *\n     * @Route(\"articles-lists/{id}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     *\n     * @Method(\"PATCH|POST\")\n     */\n    public function updatePlaylistAction(Request $request, $id)\n    {\n        $user = $this->container->get('user')->getCurrentUser();\n        if (!$user->hasPermission('ManagePlaylist')) {\n            throw new AccessDeniedException('You do not have the right to manage playlists.');\n        }\n\n        $em = $this->container->get('em');\n        $playlist = $em->getRepository('Newscoop\\Entity\\Playlist')\n            ->getPlaylist($id)\n            ->getOneOrNullResult();\n\n        if (!$playlist) {\n            throw new NotFoundHttpException('Result was not found.');\n        }\n        $oldMaxItems = $playlist->getMaxItems();\n\n        $form = $this->createForm(new PlaylistType(), $playlist, array(\n            'method' => $request->getMethod(),\n        ));\n        $form->handleRequest($request);\n        if ($form->isValid()) {\n            $em->persist($playlist);\n            $em->flush();\n\n            if ($oldMaxItems != $playlist->getMaxItems()) {\n                $playlistService = $this->get('playlists');\n                $playlistService->removeLeftItems($playlist);\n                $playlist = $em->getRepository('Newscoop\\Entity\\Playlist')\n                    ->getPlaylist($playlist->getId())\n                    ->getOneOrNullResult();\n            }\n\n            $view = FOSView\\View::create($playlist, 201);\n            $view->setHeader('X-Location', $this->generateUrl('newscoop_gimme_articles_lists_getlist', array(\n                'id' => $playlist->getId(),\n            ), true));\n\n            return $view;\n        }\n\n        return $form;\n    }\n\n    /**\n     * Delete playlist.\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         204=\"Returned when playlist removed succesfuly\",\n     *         404={\n     *           \"Returned when the playlist is not found\",\n     *         }\n     *     },\n     *     parameters={\n     *         {\"name\"=\"id\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"{laylist id\"}\n     *     }\n     * )\n     *\n     * @Route(\"articles-lists/{id}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     *\n     * @Method(\"DELETE\")\n     * @View(statusCode=204)\n     *\n     * @return Form\n     */\n    public function deletePlaylistAction(Request $request, $id)\n    {\n        $user = $this->container->get('user')->getCurrentUser();\n        if (!$user->hasPermission('ManagePlaylist')) {\n            throw new AccessDeniedException('You do not have the right to manage playlists.');\n        }\n\n        $em = $this->container->get('em');\n        $playlist = $em->getRepository('Newscoop\\Entity\\Playlist')\n            ->getPlaylist($id)\n            ->getOneOrNullResult();\n\n        if (!$playlist) {\n            throw new NotFoundHttpException('Result was not found.');\n        }\n\n        $em->remove($playlist);\n        $em->flush();\n    }\n\n    private function linkOrUnlinkResources($playlist, $request, $action = 'link')\n    {\n        $matched = false;\n        $resources = $request->attributes->get('links', array());\n        foreach ($resources as $key => $objectArray) {\n            if (!is_array($objectArray)) {\n                return true;\n            }\n\n            $object = $objectArray['object'];\n            if ($object instanceof \\Exception) {\n                throw $object;\n            }\n\n            if ($object instanceof Article) {\n                if ($action == 'link') {\n                    $position = false;\n                    if (count($notConvertedLinks = $this->getNotConvertedLinks($request)) > 0) {\n                        foreach ($notConvertedLinks as $link) {\n                            if (isset($link['resourceType']) && $link['resourceType'] == 'article-position') {\n                                $position = $link['resource'];\n                            }\n                        }\n                    }\n                    $playlistService = $this->get('playlists');\n                    $playlistService->addArticle($playlist, $object, $position);\n                } elseif ($action == 'unlink') {\n                    $playlistService = $this->get('playlists');\n                    $playlistService->removePlaylistArticle($playlist, $object);\n                }\n\n                $matched = true;\n\n                continue;\n            }\n        }\n\n        if ($matched === false) {\n            throw new InvalidParametersException('Any supported link object not found');\n        }\n    }\n\n    private function getNotConvertedLinks($request)\n    {\n        $links = array();\n        foreach ($request->attributes->get('links') as $idx => $link) {\n            if (is_string($link)) {\n                $linkParams = explode(';', trim($link));\n                $resourceType = null;\n                if (count($linkParams) > 1) {\n                    $resourceType = trim(preg_replace('/<|>/', '', $linkParams[1]));\n                    $resourceType = str_replace('\"', '', str_replace('rel=', '', $resourceType));\n                }\n                $resource = array_shift($linkParams);\n                $resource = preg_replace('/<|>/', '', $resource);\n\n                $links[] = array(\n                    'resource' => $resource,\n                    'resourceType' => $resourceType,\n                );\n            }\n        }\n\n        return $links;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Controller/AttachmentsController.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Controller;\n\nuse FOS\\RestBundle\\Controller\\FOSRestController;\nuse FOS\\RestBundle\\Controller\\Annotations\\View;\nuse Newscoop\\Entity\\Attachment;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\GimmeBundle\\Form\\Type\\AttachmentType;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Method;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Doctrine\\ORM\\EntityNotFoundException;\nuse Nelmio\\ApiDocBundle\\Annotation\\ApiDoc;\n\n/**\n * Attachment controller\n */\nclass AttachmentsController extends FOSRestController\n{\n    /**\n     * Get all attachments\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the attachments are not found\"\n     *         }\n     *     }\n     * )\n     *\n     * @Route(\"/attachments.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     *\n     * @return array\n     */\n    public function getAttachmentsAction(Request $request)\n    {\n        $em = $this->container->get('em');\n\n        $attachments = $em->getRepository('Newscoop\\Entity\\Attachment')\n            ->getAttachments();\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $attachments = $paginator->paginate($attachments, array(\n            'distinct' => false\n        ));\n\n        return $attachments;\n    }\n\n    /**\n     * Get attachment\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the attachment is not found\",\n     *         }\n     *     },\n     *     parameters={\n     *         {\"name\"=\"number\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Attachment id\"}\n     *     },\n     *     output=\"\\Newscoop\\Entity\\Attachment\"\n     * )\n     *\n     * @Route(\"/attachments/{number}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"details\"})\n     *\n     * @return Form\n     */\n    public function getAttachmentAction(Request $request, $number)\n    {\n        $em = $this->container->get('em');\n\n        $attachment = $em->getRepository('Newscoop\\Entity\\Attachment')\n            ->getAttachment($number)\n            ->getOneOrNullResult();\n\n        if (!$attachment) {\n            throw new EntityNotFoundException('Result was not found.');\n        }\n\n        return $attachment;\n    }\n\n    /**\n     * Create new attachment\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         201=\"Returned when attachment created succesfuly\"\n     *     },\n     *     input=\"\\Newscoop\\GimmeBundle\\Form\\Type\\AttachmentType\"\n     * )\n     *\n     * @Route(\"/attachments.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"POST\")\n     * @View()\n     *\n     * @return Form\n     */\n    public function createAttachmentAction(Request $request)\n    {\n        return $this->processForm($request);\n    }\n\n    /**\n     * Update attachment\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when attachment updated succesfuly\"\n     *     },\n     *     input=\"\\Newscoop\\GimmeBundle\\Form\\Type\\AttachmentType\",\n     *     parameters={\n     *         {\"name\"=\"number\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Attachment id\"}\n     *     }\n     * )\n     *\n     * @Route(\"/attachments/{number}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"POST|PATCH\")\n     * @View()\n     *\n     * @return Form\n     */\n    public function updateAttachmentAction(Request $request, $number)\n    {\n        return $this->processForm($request, $number);\n    }\n\n    /**\n     * Delete image\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         204=\"Returned when attachment removed succesfuly\",\n     *         404={\n     *           \"Returned when the attachment is not found\",\n     *         }\n     *     },\n     *     parameters={\n     *         {\"name\"=\"number\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Attachment id\"}\n     *     }\n     * )\n     *\n     * @Route(\"/attachments/{number}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"DELETE\")\n     * @View(statusCode=204)\n     *\n     * @return Form\n     */\n    public function deleteAttachmentAction(Request $request, $number)\n    {\n        $attachmentService = $this->container->get('attachment');\n        $em = $this->container->get('em');\n        $attachment = $em->getRepository('Newscoop\\Entity\\Attachment')->findOneById($number);\n\n        if (!$attachment) {\n            throw new EntityNotFoundException('Result was not found.');\n        }\n\n        $attachmentService->remove($attachment);\n    }\n\n    /**\n     * Process attachment form\n     *\n     * @param Request $request\n     * @param integer $attachment\n     *\n     * @return Form\n     */\n    private function processForm($request, $attachment = null)\n    {\n        $em = $this->container->get('em');\n        $attachmentService = $this->container->get('attachment');\n\n        if (!$attachment) {\n            $statusCode = 201;\n        } else {\n            $statusCode = 200;\n            $attachment = $em->getRepository('Newscoop\\Entity\\Attachment')->findOneById($attachment);\n\n            if (!$attachment) {\n                throw new EntityNotFoundException('Result was not found.');\n            }\n        }\n\n        $form = $this->createForm(new AttachmentType(), array());\n        $form->handleRequest($request);\n\n        if ($form->isValid()) {\n            $file = $form['attachment']->getData();\n            $attributes = $form->getData();\n            $user = $this->getUser();\n\n            if ($user) {\n                $attributes['user'] = $user;\n            }\n\n            $language = $em->getRepository('Newscoop\\Entity\\Language')\n                ->findOneById($attributes['language']);\n            unset($attributes['language']);\n\n            $attachment = $attachmentService->upload(\n                $file,\n                $attributes['description'],\n                $language,\n                $attributes,\n                $attachment\n            );\n\n            $response = new Response();\n            $response->setStatusCode($statusCode);\n\n            $response->headers->set(\n                'X-Location',\n                $this->generateUrl('newscoop_gimme_attachments_getattachment', array(\n                    'number' => $attachment->getId(),\n                ), true)\n            );\n\n            return $response;\n        }\n\n        return $form;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Controller/AuthorizeController.php",
    "content": "<?php\n/**\n * @package Newscoop\\GimmeBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Controller;\n\nuse FOS\\OAuthServerBundle\\Event\\OAuthEvent;\nuse Symfony\\Component\\Security\\Core\\SecurityContext;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse FOS\\OAuthServerBundle\\Controller\\AuthorizeController as BaseAuthorizeController;\nuse Newscoop\\GimmeBundle\\Form\\Model\\Authorize;\nuse Newscoop\\GimmeBundle\\Form\\Handler\\AuthorizeFormHandler;\nuse Newscoop\\GimmeBundle\\Entity\\Client;\nuse Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException;\nuse Symfony\\Component\\Security\\Core\\User\\UserInterface;\n\nclass AuthorizeController extends BaseAuthorizeController\n{\n    public function authorizeAction(Request $request)\n    {\n        if (!$request->get('client_id')) {\n            throw new NotFoundHttpException(\"Client id parameter {$request->get('client_id')} is missing.\");\n        }\n\n        $clientManager = $this->container->get('fos_oauth_server.client_manager.default');\n        $client = $clientManager->findClientByPublicId($request->get('client_id'));\n        if (!($client instanceof Client)) {\n            throw new NotFoundHttpException(\"Client {$request->get('client_id')} is not found.\");\n        }\n\n        $user = $this->container->get('security.context')->getToken()->getUser();\n\n        $form = $this->container->get('newscoop.gimme.authorize.form');\n        $formHandler = $this->container->get('newscoop.gimme.authorize.form_handler');\n\n        $event = $this->container->get('event_dispatcher')->dispatch(\n            OAuthEvent::PRE_AUTHORIZATION_PROCESS,\n            new OAuthEvent($user, $this->getClient())\n        );\n\n        if ($event->isAuthorizedClient()) {\n            $scope = $this->container->get('request')->get('scope', null);\n\n            return $this->container\n                ->get('fos_oauth_server.server')\n                ->finishClientAuthorization(true, $user, $request, $scope);\n        }\n\n        if (($response = $formHandler->process()) !== false) {\n            if (true === $this->container->get('session')->get('_fos_oauth_server.ensure_logout')) {\n                $this->container->get('security.context')->setToken(null);\n                $this->container->get('session')->invalidate();\n            }\n\n            $this->container->get('event_dispatcher')->dispatch(\n                OAuthEvent::POST_AUTHORIZATION_PROCESS,\n                new OAuthEvent($user, $this->getClient(), $formHandler->isAccepted())\n            );\n        }\n\n        $templatesService = $this->container->get('newscoop.templates.service');\n        $smarty = $templatesService->getSmarty();\n        $smarty->assign('client', $client);\n\n        return new Response($templatesService->fetchTemplate('oauth_authorize.tpl'));\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Controller/AuthorsController.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Controller;\n\nuse FOS\\RestBundle\\Controller\\FOSRestController;\nuse FOS\\RestBundle\\Controller\\Annotations\\View;\nuse Nelmio\\ApiDocBundle\\Annotation\\ApiDoc;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Method;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException;\nuse Newscoop\\Exception\\InvalidParametersException;\n\nclass AuthorsController extends FOSRestController\n{\n    /**\n     * Get author\n     *\n     * This route will be removed in 4.4\n     *\n     * @deprecated\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the author is not found\",\n     *         }\n     *     },\n     *     output=\"\\Newscoop\\Entity\\Author\"\n     * )\n     *\n     * @Route(\"/author/{id}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View()\n     */\n    public function getAuthorAction($id)\n    {\n        $em = $this->container->get('em');\n        $author = $em->getRepository('Newscoop\\Entity\\Author')\n            ->getAuthor($id)\n            ->getOneOrNullResult();\n\n        if (!$author) {\n            throw new NotFoundHttpException('Author was not found.');\n        }\n\n        return $author;\n    }\n\n    /**\n     * Get author\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the author is not found\",\n     *         }\n     *     },\n     *     output=\"\\Newscoop\\Entity\\Author\"\n     * )\n     *\n     * @Route(\"/authors/{id}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, requirements={\"id\" = \"[\\d]+\"})\n     * @Method(\"GET\")\n     * @View()\n     */\n    public function getAuthorByIdAction($id)\n    {\n        $em = $this->container->get('em');\n        $author = $em->getRepository('Newscoop\\Entity\\Author')\n            ->getAuthor($id)\n            ->getOneOrNullResult();\n\n        if (!$author) {\n            throw new NotFoundHttpException('Author was not found.');\n        }\n\n        return $author;\n    }\n\n    /**\n     * Get authors types\n     *\n     * Get list of authors types\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the authors types are not found\",\n     *         }\n     *     }\n     * )\n     *\n     * @Route(\"/authors/types.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     */\n    public function getAuthorsTypesAction()\n    {\n        $em = $this->container->get('em');\n        $authorsTypes = $em->getRepository('Newscoop\\Entity\\AuthorType')\n            ->getAuthorsTypes();\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $authorsTypes = $paginator->paginate($authorsTypes);\n\n        return $authorsTypes;\n    }\n\n    /**\n     * Get author type\n     *\n     * Get single author type\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the author type is not found\",\n     *         }\n     *     },\n     *     output=\"\\Newscoop\\Entity\\AuthorType\"\n     * )\n     *\n     * @Route(\"/authors/types/{id}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"details\"})\n     */\n    public function getAuthorTypeAction($id)\n    {\n        $em = $this->container->get('em');\n        $authorType = $em->getRepository('Newscoop\\Entity\\AuthorType')\n            ->getAuthorType($id)\n            ->getOneOrNullResult();\n\n        if (!$authorType) {\n            throw new NotFoundHttpException('Author Type was not found.');\n        }\n\n        return $authorType;\n    }\n\n    /**\n     * Search for authors\n     *\n     * Get list of authors for search query\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\"\n     *     },\n     *     filters={\n     *          {\"name\"=\"query\", \"dataType\"=\"string\", \"description\"=\"search query\"}\n     *     },\n     * )\n     *\n     * @Route(\"/search/authors.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     */\n    public function searchAuthorsAction(Request $request)\n    {\n        $em = $this->container->get('em');\n        $query = $request->query->get('query', '');\n        $authors = $em->getRepository('Newscoop\\Entity\\Author')\n            ->searchAuthors($query);\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $authors = $paginator->paginate($authors, array('distinct' => false));\n\n        return $authors;\n    }\n\n    /**\n     * Get article authors\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the authors are not found\",\n     *         }\n     *     }\n     * )\n     *\n     * @Route(\"/articles/{number}/{language}/authors.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Route(\"/authors/article/{number}/{language}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     */\n    public function getArticleAuthorsAction($number, $language)\n    {\n        $em = $this->container->get('em');\n        $authors = $em->getRepository('Newscoop\\Entity\\ArticleAuthor')\n            ->getArticleAuthors($number, $language);\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $authors = $paginator->paginate($authors, array('distinct' => false));\n\n        return $authors;\n    }\n\n    /**\n     * Get single article author\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404=\"Returned when the article author is not found\"\n     *     },\n     *     output=\"\\Newscoop\\Entity\\ArticleAuthor\"\n     * )\n     *\n     * @Route(\"/articles/{number}/{language}/authors/{id}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Route(\"/authors/{id}/article/{number}/{language}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     */\n    public function getArticleAuthorAction($number, $language, $id)\n    {\n        $em = $this->container->get('em');\n        $articleAuthor = $em->getRepository('Newscoop\\Entity\\ArticleAuthor')\n            ->getArticleAuthor($number, $language, $id)\n            ->getOneOrNullResult();\n\n        if (!$articleAuthor) {\n            throw new NotFoundHttpException('Article Author was not found.');\n        }\n\n        return $articleAuthor;\n    }\n\n    /**\n     * Update single article author\n     *\n     * To update currently assigned article author you need provide his old and new article\n     * type, it can be done with special ```link``` header value:\n     *\n     *     </{api-endpoint}/authors/types/{authorTypeId}; rel=\"old-author-type\">,</{api-endpoint}/authors/types/{authorTypeId}; rel=\"new-author-type\">\n     *\n     *  example:\n     *\n     *  **To update artile author with number 7 and type 1 to type 2 you need to send**:\n     *\n     *      [POST] /articles/{number}/{language}/authors/7\n     *\n     *  **With header ```link``` and his value:**\n     *\n     *      </{api-endpoint}/authors/types/1; rel=\"old-author-type\">,</{api-endpoint}/authors/types/2; rel=\"new-author-type\">\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         201=\"Returned when successful\",\n     *         404=\"Returned when the article author is not found\",\n     *         422=\"Invalid parameters\"\n     *     },\n     *     output=\"\\Newscoop\\Entity\\ArticleAuthor\"\n     * )\n     *\n     * @Route(\"/articles/{number}/{language}/authors/{authorId}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true},  requirements={\"authorId\" = \"[\\d]+\"})\n     * @Method(\"POST|PATCH\")\n     * @View(serializerGroups={\"list\"}, statusCode=201)\n     */\n    public function updateArticleAuthorAction(Request $request, $number, $language, $authorId)\n    {\n        $em = $this->container->get('em');\n        $links = $request->attributes->get('links', array());\n\n        $oldAuthorType = null;\n        $newAuthorType = null;\n        foreach ($links as $key => $objectArray) {\n            if ($objectArray['object'] instanceof \\Newscoop\\Entity\\AuthorType && $objectArray['resourceType'] == 'old-author-type') {\n                $oldAuthorType = $objectArray['object'];\n            }\n\n            if ($objectArray['object'] instanceof \\Newscoop\\Entity\\AuthorType && $objectArray['resourceType'] == 'new-author-type') {\n                $newAuthorType = $objectArray['object'];\n            }\n        }\n\n        if (!$oldAuthorType || !$newAuthorType) {\n            return new InvalidParametersException(\"\\\"old-author-type\\\" and \\\"new-author-type\\\" resources are required\");\n        }\n\n        $articleAuthor = $em->getRepository('Newscoop\\Entity\\ArticleAuthor')\n            ->getArticleAuthor($number, $language, $authorId, $oldAuthorType->getId())\n            ->getOneOrNullResult();\n\n        if (!$articleAuthor) {\n            throw new NotFoundHttpException('Article Author was not found.');\n        }\n\n        $articleAuthor->setType($newAuthorType);\n        $em->flush();\n    }\n\n    /**\n     * Set article authors order\n     *\n     * New order must be send with form in this format\n     *\n     *     order={authorId}-{authorType},{authorId}-{authorType},{authorId}-{authorType},{authorId}-{authorType}\n     *\n     * example:\n     *\n     *     order=7-1,8-1,5-2,4-2\n     *\n     * All article author-author type pair must be send.\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         422=\"Invalid parameters\"\n     *     }\n     * )\n     *\n     * @Route(\"/articles/{number}/{language}/authors/order.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"POST\")\n     * @View(serializerGroups={\"list\"}, statusCode=200)\n     */\n    public function setArticleAuthorsOrderAction(Request $request, $number, $language)\n    {\n        $em = $this->container->get('em');\n        $authorService = $this->get('author');\n        $articleAuthors = $em->getRepository('Newscoop\\Entity\\ArticleAuthor')\n            ->getArticleAuthors($number, $language)\n            ->getResult();\n\n        $order = explode(',', $request->get('order'));\n\n        if (count($order) != count($articleAuthors)) {\n            throw new InvalidParametersException(\"Number of sorted article authors must be this same as number of authors\");\n        }\n\n        $authorService->reorderAuthors($em, $articleAuthors, $order);\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Controller/CommentsController.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Controller;\n\nuse FOS\\RestBundle\\Controller\\FOSRestController;\nuse FOS\\RestBundle\\Controller\\Annotations\\View;\nuse Newscoop\\GimmeBundle\\Node\\NodeTree;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Method;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException;\nuse Newscoop\\Exception\\AuthenticationException;\nuse Symfony\\Component\\Security\\Core\\Exception\\AccessDeniedException;\nuse Nelmio\\ApiDocBundle\\Annotation\\ApiDoc;\nuse Doctrine\\ORM\\EntityNotFoundException;\nuse Newscoop\\GimmeBundle\\Form\\Type\\CommentType;\nuse Symfony\\Component\\Form\\Exception\\InvalidArgumentException;\nuse Newscoop\\Entity\\Comment;\n\nclass CommentsController extends FOSRestController\n{\n    /**\n     * Get all comments\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the comments are not found\"\n     *         }\n     *     }\n     * )\n     *\n     * @Route(\"/comments.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     *\n     * @return array\n     */\n    public function getCommentsAction()\n    {\n        $em = $this->container->get('em');\n\n        $showHidden = false;\n        try {\n            $user = $this->container->get('user')->getCurrentUser();\n            if ($user && $user->isAdmin()) {\n                $showHidden = true;\n            }\n        } catch (AuthenticationException $e) {}\n\n        $comments = $em->getRepository('Newscoop\\Entity\\Comment')\n            ->getComments(false, $showHidden);\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $comments = $paginator->paginate($comments, array(\n            'distinct' => false\n        ));\n\n        return $comments;\n    }\n\n    /**\n     * Get comment\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the comment is not found\",\n     *         }\n     *     },\n     *     parameters={\n     *         {\"name\"=\"id\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Comment id\"}\n     *     },\n     *     output=\"\\Newscoop\\Entity\\Comment\"\n     * )\n     *\n     * @Route(\"/comments/{id}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"details\"})\n     *\n     * @return Form\n     */\n    public function getCommentAction($id)\n    {\n        $em = $this->container->get('em');\n\n        $comment = $em->getRepository('Newscoop\\Entity\\Comment')\n            ->getComment($id, false)\n            ->getOneOrNullResult();\n\n        if (!$comment) {\n            throw new EntityNotFoundException('Result was not found.');\n        }\n\n        return $comment;\n    }\n\n    /**\n     * Get comments for article\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         204=\"Returned when successful but article doesn't have comments.\",\n     *         404={\n     *           \"Returned when the comments are not found\",\n     *         }\n     *     },\n     *     parameters={\n     *         {\"name\"=\"number\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Article number\"},\n     *         {\"name\"=\"language\", \"dataType\"=\"string\", \"required\"=true, \"description\"=\"Language code\"},\n     *         {\"name\"=\"order\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Ordering type. Possible values: [chrono, nested]\"}\n     *     }\n     * )\n     *\n     * @Route(\"/articles/{number}/{language}/comments/{order}.{_format}\", defaults={\"_format\"=\"json\", \"order\"=\"chrono\"}, options={\"expose\"=true})\n     * @Route(\"/comments/article/{number}/{language}/{order}.{_format}\", defaults={\"_format\"=\"json\", \"order\"=\"chrono\"}, options={\"expose\"=true})\n     * @Route(\"/comments/article/{number}/{language}/{order}/recommended.{_format}\", defaults={\"_format\"=\"json\", \"order\"=\"chrono\"}, options={\"expose\"=true}, name=\"newscoop_gimme_comments_getcommentsforarticle_recommended\")\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     */\n    public function getCommentsForArticleAction(Request $request, $number, $language, $order)\n    {\n        $em = $this->container->get('em');\n        $paginatorService = $this->get('newscoop.paginator.paginator_service');\n        $paginatorService->setUsedRouteParams(array('number' => $number, 'language' => $language));\n\n        $article = $em->getRepository('Newscoop\\Entity\\Article')\n            ->getArticle($number, $language)\n            ->getOneOrNullResult();\n\n        if (!$article) {\n            throw new NotFoundHttpException('Article with number:\"'.$number.'\" and language: \"'.$language.'\" was not found.');\n        }\n\n        $recommended = false;\n        if ($request->attributes->get('_route') === 'newscoop_gimme_comments_getcommentsforarticle_recommended') {\n            $recommended = true;\n        }\n\n        $showHidden = false;\n        try {\n            $user = $this->container->get('user')->getCurrentUser();\n            if ($user && $user->isAdmin()) {\n                $showHidden = true;\n            }\n        } catch (AuthenticationException $e) {}\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $sort = $paginator->getPagination()->getSort();\n        $articleComments = $em->getRepository('Newscoop\\Entity\\Comment')\n            ->getArticleComments($number, $language, $recommended, false, $showHidden, $sort)\n            ->getResult();\n\n        if ($order == 'nested' && $articleComments) {\n            $nodeTree = new NodeTree();\n            $nodeTree->build($articleComments);\n            $articleComments = $nodeTree->getFlattened();\n        }\n\n        $articleComments = $paginator->paginate($articleComments);\n\n        return $articleComments;\n    }\n\n    /**\n     * Create new comment\n     *\n     * **Comment available statuses:**\n     *\n     *     APPROVED - 0\n     *     PENDING  - 1\n     *     HIDDEN   - 2\n     *     DELETED  - 3\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         201=\"Returned when comment created succesfuly\"\n     *     },\n     *     input=\"\\Newscoop\\GimmeBundle\\Form\\Type\\CommentType\"\n     * )\n     *\n     * @Route(\"/comments/article/{articleNumber}/{languageCode}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"newscoop_gimme_comments_createcomment\")\n     * @Method(\"POST\")\n     * @View()\n     *\n     * @return Form\n     */\n    public function createCommentAction(Request $request, $articleNumber, $languageCode)\n    {\n        return $this->processForm($request, null, $articleNumber, $languageCode);\n    }\n\n    /**\n     * Update comment\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when comment updated succesfuly\"\n     *     },\n     *     input=\"\\Newscoop\\GimmeBundle\\Form\\Type\\CommentType\"\n     * )\n     *\n     * @Route(\"/comments/{commentId}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Route(\"/comments/article/{article}/{language}/{commentId}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"POST|PATCH\")\n     * @View()\n     *\n     * @return Form\n     */\n    public function updateCommentAction(Request $request, $commentId)\n    {\n        return $this->processForm($request, $commentId);\n    }\n\n    /**\n     * Delete comment\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         204=\"Returned when comment removed succesfuly\",\n     *         404={\n     *           \"Returned when the comment is not found\",\n     *         }\n     *     },\n     *     parameters={\n     *         {\"name\"=\"number\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Image id\"}\n     *     }\n     * )\n     *\n     * @Route(\"/comments/{commentId}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Route(\"/comments/article/{articleNumber}/{languageCode}/{commentId}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"DELETE\")\n     * @View(statusCode=204)\n     *\n     * @return Form\n     */\n    public function deleteCommentAction(Request $request, $commentId, $articleNumber = null, $languageCode = null)\n    {\n        $commentService = $this->container->get('comment');\n        $em = $this->container->get('em');\n        $comment = $em->getRepository('Newscoop\\Entity\\Comment')\n            ->getComment($commentId, false)\n            ->getOneOrNullResult();\n\n        if (!$comment) {\n            throw new EntityNotFoundException('Result was not found.');\n        }\n\n        $commentService->remove($comment);\n    }\n\n    /**\n     * Process comment form\n     *\n     * @param Request $request\n     * @param integer $comment\n     * @param integer $articleNumber\n     * @param string  $languageCode\n     *\n     * @return Form\n     */\n    private function processForm($request, $comment = null, $articleNumber = null, $languageCode = null)\n    {\n        $publicationService = $this->get('newscoop.publication_service');\n        $publication = $publicationService->getPublication();\n\n        if (\n            false === $this->get('security.context')->isGranted('IS_AUTHENTICATED_FULLY') &&\n            false === (bool) $publication->getPublicCommentsEnabled()\n        ) {\n            throw new AccessDeniedException('Public comments are disabled');\n        }\n\n        $em = $this->container->get('em');\n        $commentService = $this->container->get('comment');\n\n        if (!$comment) {\n            $comment = new Comment();\n            $statusCode = 201;\n            $patch = false;\n        } else {\n            $statusCode = 200;\n            $comment = $em->getRepository('Newscoop\\Entity\\Comment')->findOneById($comment);\n\n            if (!$comment) {\n                throw new EntityNotFoundException('Result was not found.');\n            }\n            $patch = true;\n        }\n\n        $form = $this->createForm(new CommentType(array('patch'=>$patch)), array(), array('method'=>$request->getMethod()));\n        $form->handleRequest($request);\n\n        if ($form->isValid()) {\n            $attributes = $form->getData();\n            $user = $this->getUser();\n\n            if ($comment->getId() !== null) {\n                // update comment\n                $comment = $commentService->updateComment($comment, $attributes);\n            } else {\n                // create new comment\n                if ($user) {\n                    $attributes['user'] = $user->getId();\n                } else if (!$attributes['name']) {\n                    throw new InvalidArgumentException('When user is not logged in, then commenter name is required.');\n                }\n\n                if ($articleNumber) {\n                    $attributes['thread'] = $articleNumber;\n                }\n\n                if ($languageCode) {\n                    $attributes['language'] = $languageCode;\n                }\n\n                $attributes['time_created'] = new \\DateTime();\n                $attributes['ip'] = $request->getClientIp();\n\n                $comment = $commentService->save($comment, $attributes, $user);\n            }\n\n            $response = new Response();\n            $response->setStatusCode($statusCode);\n\n            $response->headers->set(\n                'X-Location',\n                $this->generateUrl('newscoop_gimme_comments_getcomment', array(\n                    'id' => $comment->getId(),\n                ), true)\n            );\n\n            return $response;\n        }\n\n        return $form;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Controller/ConfigureApiController.php",
    "content": "<?php\n\n/**\n * @package   Newscoop\\Gimme\n * @author    Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license   http://www.gnu.org/licenses/gpl-3.0.txt GPL\n */\n\nnamespace Newscoop\\GimmeBundle\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Method;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Template;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Newscoop\\GimmeBundle\\Entity\\Client;\nuse Newscoop\\GimmeBundle\\Entity\\PublicApiResource;\nuse Newscoop\\GimmeBundle\\Form\\Type\\PublicResourcesType;\nuse Newscoop\\GimmeBundle\\Form\\Type\\ClientType;\nuse Symfony\\Component\\Form\\Form;\n\n/**\n * Configure Newscop REST API\n */\nclass ConfigureApiController extends Controller\n{\n    /**\n     * @param Request $request\n     *\n     * @Route(\"/admin/configure-api\", name=\"configure_api\", options={\"expose\"=false})\n     * @Method(\"GET|POST\")\n     * @Template()\n     *\n     * @return array\n     */\n    public function configureAction(Request $request)\n    {\n        $em = $this->getDoctrine()->getManager();\n        $publicResourcesForm = $this->getPublicResourcesForm();\n        $clientForm = $this->getClientForm();\n        $removeClientForm = $this->getRemoveClientForm();\n        $response = null;\n\n        if ($request->request->has($publicResourcesForm->getName())) {\n            $response = $this->configurePublicResources($request);\n        } elseif ($request->request->has($clientForm->getName())) {\n            $response = $this->addClient($request);\n        } elseif ($request->request->has($removeClientForm->getName())) {\n            $response = $this->removeClient($request);\n        }\n\n        if ($response instanceof Response) {\n            return $response;\n        }\n\n        $clients = $em->getRepository('\\Newscoop\\GimmeBundle\\Entity\\Client')->findAll();\n\n        return array(\n            'publicResourcesForm' => $publicResourcesForm->createView(),\n            'clientForm' => $clientForm->createView(),\n            'removeClientForm' => $removeClientForm->createView(),\n            'clients' => $clients\n        );\n    }\n\n    /**\n     * Add client to database (handle form submission)\n     *\n     * @param Request $request\n     *\n     * @return RedirectResponse\n     */\n    private function addClient(Request $request)\n    {\n        $em = $this->getDoctrine()->getManager();\n        $translator = $this->container->get('translator');\n        $clientManager = $this->container->get('fos_oauth_server.client_manager.default');\n        $client = $clientManager->createClient();\n\n        $clientForm = $this->getClientForm($client);\n\n        $clientForm->handleRequest($request);\n        if ($clientForm->isValid()) {\n            $client->setAllowedGrantTypes(array('token', 'authorization_code', 'client_credentials'));\n            $clientManager->updateClient($client);\n\n            $this->get('session')->getFlashBag()->add(\n                'success',\n                $translator->trans('client.added', array(), 'api')\n            );\n\n            return $this->redirect($this->generateUrl('configure_api'));\n        }\n    }\n\n    /**\n     * Remove client (handle form submission)\n     *\n     * @param Request $request\n     *\n     * @return mixed\n     */\n    private function removeClient(Request $request)\n    {\n        $translator = $this->container->get('translator');\n        $removeClientForm = $this->getRemoveClientForm();\n        $removeClientForm->handleRequest($request);\n\n        if ($removeClientForm->isValid()) {\n            $data = $removeClientForm->getData();\n            $clientManager = $this->container->get('fos_oauth_server.client_manager.default');\n            $client = $clientManager->findClientByPublicId($data['client_id']);\n\n            if (!$client) {\n                $this->get('session')->getFlashBag()->add(\n                    'error',\n                    $translator->trans('client.notfound', array(), 'api')\n                );\n\n                return;\n            }\n\n            $clientManager->deleteClient($client);\n            $this->get('session')->getFlashBag()->add(\n                'success',\n                $translator->trans('client.removed', array(), 'api')\n            );\n\n            return $this->redirect($this->generateUrl('configure_api'));\n        }\n    }\n\n    /**\n     * Save public resources in database (handle form submission)\n     *\n     * @param Request $request\n     *\n     * @return RedirectResponse\n     */\n    private function configurePublicResources(Request $request)\n    {\n        $em = $this->getDoctrine()->getManager();\n        $publicResourcesForm = $this->getPublicResourcesForm();\n        $translator = $this->container->get('translator');\n\n        $publicResourcesForm->handleRequest($request);\n        if ($publicResourcesForm->isValid()) {\n            $data = $publicResourcesForm->getData();\n\n            $existingResources = $em->getRepository('\\Newscoop\\GimmeBundle\\Entity\\PublicApiResource')->findAll();\n\n            foreach ($existingResources as $resource) {\n                if (!in_array($resource->getResource(), $data['routes'])) {\n                    $em->remove($resource);\n                } else {\n                    unset($data['routes'][array_search($resource->getResource(), $data['routes'])]);\n                }\n            }\n\n            foreach ($data['routes'] as $resource) {\n                $publicResource = new PublicApiResource();\n                $publicResource->setResource($resource);\n                $em->persist($publicResource);\n            }\n\n            $em->flush();\n            $this->get('session')->getFlashBag()->add(\n                'success',\n                $translator->trans('publicresources.updated', array(), 'api')\n            );\n\n            return $this->redirect($this->generateUrl('configure_api'));\n        }\n    }\n\n    /**\n     * Get form\n     *\n     * @return Form\n     */\n    private function getPublicResourcesForm()\n    {\n        $em = $this->getDoctrine()->getManager();\n        $router = $this->container->get('router');\n        $collection = $router->getRouteCollection();\n        $allRoutes = $collection->all();\n\n        // TODO:\n        // * add way to allow anonymous access for comments posting (if it's enabled in publications settings)\n        // * add way to allow anonymous access for feedback posting\n\n        $apiRoutes = array();\n        foreach ($allRoutes as $key => $route) {\n            if (strpos($key, 'newscoop_gimme_') !== false) {\n                $routeMethods = $route->getMethods();\n                if (in_array('GET', $route->getMethods())) {\n                    $apiRoutes[$key] = '['.$routeMethods[0].'] '.str_replace('{_format}', 'json', $route->getPath());\n                }\n            }\n        }\n\n        $existingResources = array();\n        foreach ($em->getRepository('\\Newscoop\\GimmeBundle\\Entity\\PublicApiResource')->findAll() as $resource) {\n            $existingResources[$resource->getResource()] = $resource->getResource();\n        }\n\n        $form = $this->createForm(new PublicResourcesType(), null, array(\n            'choices' => $apiRoutes,\n            'data' => $existingResources,\n            'action' => $this->generateUrl('configure_api'),\n            'method' => 'POST',\n        ));\n\n        return $form;\n    }\n\n    /**\n     * Get form\n     *\n     * @param Client $client\n     *\n     * @return Form\n     */\n    private function getClientForm($client = null)\n    {\n        if ($client == null) {\n            $clientManager = $this->container->get('fos_oauth_server.client_manager.default');\n            $client = $clientManager->createClient();\n        }\n\n        $form = $this->createForm(new ClientType(), $client, array(\n            'action' => $this->generateUrl('configure_api'),\n            'method' => 'POST',\n        ));\n\n        return $form;\n    }\n\n    /**\n     * Get form\n     *\n     * @return Form\n     */\n    private function getRemoveClientForm()\n    {\n        $form = $this->get('form.factory')->createNamedBuilder('removeClient', 'form', null, array())\n            ->add('client_id', 'hidden')\n            ->setAction($this->generateUrl('configure_api'))\n            ->setMethod('POST')\n            ->getForm();\n\n        return $form;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Controller/EditorialCommentsApiController.php",
    "content": "<?php\n\nnamespace Newscoop\\GimmeBundle\\Controller;\n\nuse FOS\\RestBundle\\Controller\\FOSRestController;\nuse FOS\\RestBundle\\Controller\\Annotations\\View;\nuse Newscoop\\GimmeBundle\\Node\\NodeTree;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Newscoop\\ArticlesBundle\\Form\\Type\\EditorialCommentType;\nuse Newscoop\\ArticlesBundle\\Entity\\EditorialComment;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Nelmio\\ApiDocBundle\\Annotation\\ApiDoc;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Method;\nuse Doctrine\\ORM\\EntityNotFoundException;\n\nclass EditorialCommentsApiController extends FOSRestController\n{\n    /**\n     * Get editorial comments\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when success\",\n     *     }\n     * )\n     *\n     * @Route(\"/articles/{number}/{language}/editorial_comments/order/{order}.{_format}\", defaults={\"_format\"=\"json\", \"order\"=\"chrono\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_get_editorial_comments\")\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     */\n    public function getCommentsAction(Request $request, $number, $language, $order)\n    {\n        $em = $this->container->get('em');\n\n        $editorialComments = $em->getRepository('Newscoop\\ArticlesBundle\\Entity\\EditorialComment')\n            ->getAllByArticleNumber($number)->getResult();\n\n        if ($order == 'nested' && $editorialComments) {\n            $nodeTree = new NodeTree();\n            $nodeTree->build($editorialComments);\n            $editorialComments = $nodeTree->getFlattened();\n        }\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $paginator->setUsedRouteParams(array('number' => $number, 'language' => $language));\n        $editorialComments = $paginator->paginate($editorialComments);\n\n        return $editorialComments;\n    }\n\n    /**\n     * Get single editorial comment\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when success\",\n     *     }\n     * )\n     *\n     * @Route(\"/articles/{number}/{language}/editorial_comments/{commentId}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_get_editorial_comment\")\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"details\"})\n     */\n    public function getCommentAction(Request $request, $number, $language, $commentId)\n    {\n        $em = $this->container->get('em');\n\n        $comment = $em->getRepository('Newscoop\\ArticlesBundle\\Entity\\EditorialComment')\n            ->getOneByArticleAndCommentId($number, $language, $commentId)\n            ->getOneOrNullResult();\n\n        if (!$comment) {\n            throw new EntityNotFoundException('Result was not found.');\n        }\n\n        return $comment;\n    }\n\n    /**\n     * Create editorial comments\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         201=\"Returned when editorial comment is created\",\n     *         404={\n     *           \"Returned when article is not found\",\n     *         }\n     *     },\n     *     input=\"\\Newscoop\\ArticlesBundle\\Form\\Type\\EditorialCommentType\"\n     * )\n     *\n     * @Route(\"/articles/{number}/{language}/editorial_comments.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_create_editorial_comment\")\n     * @Method(\"POST\")\n     * @View(serializerGroups={\"list\"})\n     */\n    public function createCommentAction(Request $request, $number, $language)\n    {\n        return $this->processForm($request, $number, $language);\n    }\n\n    /**\n     * Edit editorial comments\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         201=\"Returned when editorial comment is created\",\n     *         404={\n     *           \"Returned when article is not found\",\n     *         }\n     *     },\n     *     input=\"\\Newscoop\\ArticlesBundle\\Form\\Type\\EditorialCommentType\"\n     * )\n     *\n     * @Route(\"/articles/{number}/{language}/editorial_comments/{commentId}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_edit_editorial_comment\")\n     * @Method(\"POST\")\n     * @View(serializerGroups={\"list\"})\n     */\n    public function editCommentAction(Request $request, $number, $language, $commentId)\n    {\n        return $this->processForm($request, $number, $language, $commentId);\n    }\n\n    /**\n     * Edit editorial comments\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         204=\"Returned when editorial comment is removed\",\n     *         404={\n     *           \"Returned when entity is not found\",\n     *         }\n     *     }\n     * )\n     *\n     * @Route(\"/articles/{number}/{language}/editorial_comments/{commentId}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_remove_editorial_comment\")\n     * @Method(\"DELETE\")\n     * @View(serializerGroups={\"list\"})\n     */\n    public function removeCommentAction(Request $request, $number, $language, $commentId)\n    {\n        $em = $this->container->get('em');\n        $editorialCommentService = $this->container->get('newscoop.editorial_comments');\n        $user = $this->container->get('user')->getCurrentUser();\n\n        $comment = $em->getRepository('Newscoop\\ArticlesBundle\\Entity\\EditorialComment')\n            ->getOneByArticleAndCommentId($number, $language, $commentId)\n            ->getOneOrNullResult();\n\n        if (!$comment) {\n            throw new EntityNotFoundException('Result was not found.');\n        }\n\n        $editorialCommentService->remove($comment, $user);\n\n        $response = new Response();\n        $response->setStatusCode(204);\n\n        return $response;\n    }\n\n    /**\n     * Process editorial comments form\n     *\n     * @param Request $request\n     *\n     * @return Form\n     */\n    private function processForm($request, $articleNumber = null, $languageId = null, $commentId = null)\n    {\n        $em = $this->container->get('em');\n        $editorialCommentService = $this->container->get('newscoop.editorial_comments');\n\n        if (!$commentId) {\n            $statusCode = 201;\n        } else {\n            $statusCode = 200;\n            $comment = $em->getRepository('Newscoop\\ArticlesBundle\\Entity\\EditorialComment')\n                ->getOneByArticleAndCommentId($articleNumber, $languageId, $commentId)\n                ->getOneOrNullResult();\n\n            if (!$comment) {\n                throw new EntityNotFoundException('Result was not found.');\n            }\n        }\n\n        $form = $this->createForm(new EditorialCommentType(), array());\n        $form->handleRequest($request);\n\n        if ($form->isValid()) {\n            $attributes = $form->getData();\n            $user = $this->container->get('user')->getCurrentUser();\n\n            $response = new Response();\n            $response->setStatusCode($statusCode);\n\n            if ($statusCode == 201 && $articleNumber && $languageId) {\n                $article = $em->getRepository('Newscoop\\Entity\\Article')\n                    ->getArticle($articleNumber, $languageId)\n                    ->getOneOrNullResult();\n\n                $parent = false;\n                if (array_key_exists('parent', $attributes) && $attributes['parent'] != null) {\n                    $parent = $em->getRepository('Newscoop\\ArticlesBundle\\Entity\\EditorialComment')\n                        ->getOneByArticleAndCommentId($articleNumber, $languageId, $attributes['parent'])\n                        ->getOneOrNullResult();\n\n                    if (!$parent) {\n                        throw new EntityNotFoundException('Parent comment was not found.');\n                    }\n                }\n\n                $comment = $editorialCommentService->create($attributes['comment'], $article, $user, $parent);\n\n                $response->headers->set(\n                    'X-Location',\n                    $this->generateUrl('newscoop_gimme_articles_get_editorial_comment', array(\n                        'number' => $articleNumber,\n                        'language' => $languageId,\n                        'commentId' => $comment->getId()\n                    ), true)\n                );\n            } elseif ($statusCode == 200 && $comment) {\n                if (array_key_exists('comment', $attributes) && $attributes['comment'] != $comment->getComment() && $attributes['comment'] != '') {\n                    $editorialCommentService->edit($attributes['comment'], $comment, $user);\n                }\n\n                if (array_key_exists('resolved', $attributes) && $attributes['resolved'] != $comment->getResolved()) {\n                    $editorialCommentService->resolve($comment, $user, $attributes['resolved']);\n                }\n            }\n\n            return $response;\n        }\n\n        return $form;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Controller/ExceptionController.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\GimmeBundle\\Controller;\n\nuse FOS\\RestBundle\\Controller\\ExceptionController as FOSExceptionController;\nuse FOS\\RestBundle\\View\\ViewHandler;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpKernel\\Exception\\FlattenException;\nuse Symfony\\Component\\HttpKernel\\Log\\DebugLoggerInterface;\n\nclass ExceptionController extends FOSExceptionController\n{\n    /**\n     * Newscoop REST API exceptions Controller.\n     * Converts an Exception to a Response.\n     *\n     * TODO: change exceptions handling in listener - this controller should deal only with REST API exceptions.\n     *\n     * @param Request              $request   Request\n     * @param FlattenException     $exception A FlattenException instance\n     * @param DebugLoggerInterface $logger    A DebugLoggerInterface instance\n     * @param string               $format    The format to use for rendering (html, xml, ...)\n     *\n     * @return Response Response instance\n     */\n    public function showAction(Request $request, FlattenException $exception, DebugLoggerInterface $logger = null, $format = 'html')\n    {\n        $urlMatcher = $this->container->get('router');\n        try {\n            $context = new \\Symfony\\Component\\Routing\\RequestContext($request->getPathInfo(), $request->getMethod());\n            $urlMatcher->setContext($context);\n            $match = $urlMatcher->match($context->getBaseUrl());\n        } catch (\\Exception $e) {\n            return;\n        }\n\n        if (strpos($match['_route'], 'newscoop_gimme_') === false) {\n            // Skip newscoop rest api exceptions\n            $logger = $this->container->get('monolog.logger.sentry');\n            $logger->log(\\Psr\\Log\\LogLevel::CRITICAL, 'Uncaught exception', array('exception' => $exception));\n\n            return;\n        }\n\n        return parent::showAction($request, $exception, $logger, $format);\n    }\n\n    protected function createExceptionWrapper(array $parameters)\n    {\n        return $parameters;\n    }\n\n    protected function getParameters(ViewHandler $viewHandler, $currentContent, $code, FlattenException $exception, DebugLoggerInterface $logger = null, $format = 'html')\n    {\n        $defaultParameters = parent::getParameters($viewHandler, $currentContent, $code, $exception, $logger, $format);\n        $parameters = array(\n            'errors' => array(\n                array(\n                    'code' => $defaultParameters['status_code'],\n                    'message' => $defaultParameters['message'],\n                ),\n            ),\n        );\n\n        return $parameters;\n    }\n\n    /**\n     * Determine the format to use for the response\n     *\n     * @param Request $request Request instance\n     * @param string  $format  The format to use for rendering (html, xml, ...)\n     *\n     * @return string Encoding format\n     */\n    protected function getFormat(Request $request, $format)\n    {\n        return 'json';\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Controller/ImagesController.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\GimmeBundle\\Controller;\n\nuse FOS\\RestBundle\\Controller\\FOSRestController;\nuse FOS\\RestBundle\\Controller\\Annotations\\View;\nuse FOS\\RestBundle\\View as FOSView;\nuse Newscoop\\Entity\\LocalImage;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\GimmeBundle\\Form\\Type\\ImageType;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Method;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Doctrine\\ORM\\EntityNotFoundException;\nuse Nelmio\\ApiDocBundle\\Annotation\\ApiDoc;\n\n/**\n * Images controller\n */\nclass ImagesController extends FOSRestController\n{\n    /**\n     * Get all images\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the images are not found\"\n     *         }\n     *     }\n     * )\n     *\n     * @Route(\"/images.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     *\n     * @return array\n     */\n    public function getImagesAction(Request $request)\n    {\n        $em = $this->container->get('em');\n\n        $images = $em->getRepository('Newscoop\\Image\\LocalImage')\n            ->getImages();\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $images = $paginator->paginate($images, array(\n            'distinct' => false,\n        ));\n\n        return $images;\n    }\n\n    /**\n     * Search for images\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the images are not found\"\n     *         }\n     *     },\n     *     parameters={\n     *         {\"name\"=\"query\", \"dataType\"=\"mixed\", \"required\"=false, \"description\"=\"Image serach query\"},\n     *         {\"name\"=\"uploader\", \"dataType\"=\"integer\", \"required\"=false, \"description\"=\"Uploader id\"}\n     *     },\n     * )\n     *\n     * @Route(\"/search/images.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     *\n     * @return array\n     */\n    public function searchImagesAction(Request $request)\n    {\n        $imagesSerach = $this->container->get('image.search');\n        $criteria = array();\n        $count = null;\n\n        if ($request->query->get('uploader', false)) {\n            $criteria = array('user' => $request->query->get('uploader'));\n        }\n\n        $images = $imagesSerach->find($request->query->get('query', false), $criteria, null, null, $count, true);\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $images = $paginator->paginate($images, array(\n            'distinct' => false,\n        ));\n\n        return $images;\n    }\n\n    /**\n     * Get image\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the image is not found\",\n     *         }\n     *     },\n     *     parameters={\n     *         {\"name\"=\"number\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Image id\"}\n     *     },\n     *     output=\"\\Newscoop\\Image\\LocalImage\"\n     * )\n     *\n     * @Route(\"/images/{number}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"details\"})\n     *\n     * @return Form\n     */\n    public function getImageAction(Request $request, $number)\n    {\n        $em = $this->container->get('em');\n\n        $image = $em->getRepository('Newscoop\\Image\\LocalImage')\n            ->getImage($number)\n            ->getOneOrNullResult();\n\n        if (!$image) {\n            throw new EntityNotFoundException('Result was not found.');\n        }\n\n        return $image;\n    }\n\n    /**\n     * Get all images for specified article\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the images are not found\",\n     *         }\n     *     },\n     *     parameters={\n     *         {\"name\"=\"number\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Image id\"},\n     *         {\"name\"=\"language\", \"dataType\"=\"string\", \"required\"=true, \"description\"=\"Two letters code for article language\"}\n     *     }\n     * )\n     *\n     * @Route(\"/articles/{number}/{language}/images.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     */\n    public function getImagesForArticleAction($number, $language)\n    {\n        $em = $this->container->get('em');\n        $paginatorService = $this->get('newscoop.paginator.paginator_service');\n        $paginatorService->setUsedRouteParams(array('number' => $number, 'language' => $language));\n\n        $article = $em->getRepository('Newscoop\\Entity\\Article')\n            ->getArticle($number, $language)\n            ->getOneOrNullResult();\n\n        if (!$article) {\n            throw new EntityNotFoundException('Article with number:\"'.$number.'\" and language: \"'.$language.'\" was not found.');\n        }\n\n        $articleImages = $em->getRepository('Newscoop\\Image\\ArticleImage')\n            ->getArticleImages($number);\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $articleImages = $paginator->paginate($articleImages);\n\n        $images = array();\n        foreach ($articleImages['items'] as $articleImage) {\n            $image = $articleImage->getImage();\n            $image->setArticleImageId($articleImage->getNumber());\n            $images[] = $image;\n        }\n\n        $images = $paginator->paginate($images);\n\n        if (array_key_exists('pagination', $articleImages)) {\n            $images['pagination'] = $articleImages['pagination'];\n        }\n\n        return $images;\n    }\n\n    /**\n     * Create new image\n     *\n     * Request:\n     * Data should be send as multiparts formdata.\n     *\n     * Response:\n     * Succesful response will contain \"X-Location\" header with path to new resource.\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         201=\"Returned when image created succesfuly\"\n     *     },\n     *     input=\"\\Newscoop\\GimmeBundle\\Form\\Type\\ImageType\"\n     * )\n     *\n     * @Route(\"/images.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"POST\")\n     * @View()\n     *\n     * @return Form\n     */\n    public function createImageAction(Request $request)\n    {\n        return $this->processForm($request);\n    }\n\n    /**\n     * Update image\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when image updated succesfuly\",\n     *         404={\n     *           \"Returned when the images are not found\",\n     *         }\n     *     },\n     *     input=\"\\Newscoop\\GimmeBundle\\Form\\Type\\ImageType\",\n     *     parameters={\n     *         {\"name\"=\"number\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Image id\"}\n     *     }\n     * )\n     *\n     * @Route(\"/images/{number}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"POST|PATCH\")\n     * @View()\n     *\n     * @return Form\n     */\n    public function updateImageAction(Request $request, $number)\n    {\n        return $this->processForm($request, $number);\n    }\n\n    /**\n     * Delete image\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         204=\"Returned when image removed succesfuly\",\n     *         404={\n     *           \"Returned when the images are not found\",\n     *         }\n     *     },\n     *     parameters={\n     *         {\"name\"=\"number\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Image id\"}\n     *     }\n     * )\n     *\n     * @Route(\"/images/{number}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"DELETE\")\n     * @View(statusCode=204)\n     *\n     * @return Form\n     */\n    public function deleteImageAction(Request $request, $number)\n    {\n        $imageService = $this->container->get('image');\n        $em = $this->container->get('em');\n        $image = $em->getRepository('Newscoop\\Image\\LocalImage')->findOneById($number);\n\n        if (!$image) {\n            throw new EntityNotFoundException('Result was not found.');\n        }\n\n        $imageService->remove($image);\n    }\n\n    /**\n     * Process image form\n     *\n     * @param Request $request\n     * @param integer $image\n     *\n     * @return Form\n     */\n    private function processForm($request, $image = null)\n    {\n        $em = $this->container->get('em');\n        $imageService = $this->container->get('image');\n\n        if (!$image) {\n            $statusCode = 201;\n        } else {\n            $statusCode = 200;\n            $image = $em->getRepository('Newscoop\\Image\\LocalImage')->findOneById($image);\n\n            if (!$image) {\n                throw new EntityNotFoundException('Result was not found.');\n            }\n        }\n\n        $form = $this->createForm(new ImageType(), array(), array(\n            'image' => $image,\n            'method' => $request->getMethod(),\n        ));\n\n        $form->handleRequest($request);\n        if ($form->isValid()) {\n            $file = $form['image']->getData();\n            $attributes = $form->getData();\n            $user = $this->getUser();\n\n            if ($user) {\n                $attributes['user'] = $user;\n            }\n\n            if ($file) {\n                $image = $imageService->upload($file, $attributes, $image);\n            } else {\n                $imageService->fillImage($image, $attributes);\n                $em->flush();\n            }\n\n            return new FOSView\\View($image, $statusCode, array(\n                'X-Location' => $this->generateUrl('newscoop_gimme_images_getimage', array(\n                    'number' => $image->getId(),\n                ), true), )\n            );\n        }\n\n        return $form;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Controller/IssuesController.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\GimmeBundle\\Controller;\n\nuse FOS\\RestBundle\\Controller\\FOSRestController;\nuse FOS\\RestBundle\\Controller\\Annotations\\View;\nuse Nelmio\\ApiDocBundle\\Annotation\\ApiDoc;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Method;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException;\n\nclass IssuesController extends FOSRestController\n{\n    /**\n     * Get Issues\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when issues found\",\n     *         404={\n     *           \"Returned when issues are not found\",\n     *         }\n     *     },\n     *     parameters={\n     *         {\"name\"=\"publication\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Publication id\"}\n     *     }\n     * )\n     *\n     * @Route(\"/issues.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     */\n    public function getIssuesAction(Request $request)\n    {\n        $em = $this->container->get('em');\n        $publication = $this->get('newscoop_newscoop.publication_service')->getPublication()->getId();\n\n        $issues = $em->getRepository('Newscoop\\Entity\\Issue')\n            ->getLatestByPublication($request->query->get('publication', $publication), false, false);\n\n        if (!$issues) {\n            throw new NotFoundHttpException('Result was not found.');\n        }\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $issues = $paginator->paginate($issues, array(\n            'distinct' => false,\n        ));\n\n        return $issues;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Controller/OauthController.php",
    "content": "<?php\n/**\n * @package Newscoop\\GimmeBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\GimmeBundle\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\nuse Symfony\\Component\\Security\\Core\\SecurityContext;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Method;\nuse Nelmio\\ApiDocBundle\\Annotation\\ApiDoc;\n\nclass OauthController extends Controller\n{\n    /**\n     * Login user with oauth v2\n     *\n     * Find out more informations about Newscoop REST API authentiocation here: [click me][1]\n     *\n     * [1]: http://docs.sourcefabric.org/projects/newscoop-restful-api/en/master/tutorial.html\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\"\n     *     },\n     *     parameters={\n     *         {\"name\"=\"client_id\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Your client id, for example 9_1irxa0qcy3ms48c8c8wsgcgsc04k0s0w0g0sg4cco4kocoowoo\"},\n     *         {\"name\"=\"redirect_uri\", \"dataType\"=\"string\", \"required\"=true, \"description\"=\"The uri of your client web application, for example http://myapp.example.com/. This must match the URI you added in the Newscoop Admin Interface above. Remember to encode the URI.\"},\n     *         {\"name\"=\"response_type\", \"dataType\"=\"string\", \"required\"=true, \"description\"=\"Value must be: 'token'\"},\n     *     }\n     * )\n     */\n    public function loginAction(Request $request)\n    {\n        $session = $request->getSession();\n        $templatesService = $this->get('newscoop.templates.service');\n\n        if ($request->attributes->has(SecurityContext::AUTHENTICATION_ERROR)) {\n            $error = $request->attributes->get(SecurityContext::AUTHENTICATION_ERROR);\n        } elseif (null !== $session && $session->has(SecurityContext::AUTHENTICATION_ERROR)) {\n            $error = $session->get(SecurityContext::AUTHENTICATION_ERROR);\n            $session->remove(SecurityContext::AUTHENTICATION_ERROR);\n        } else {\n            $error = false;\n        }\n\n        if ($error) {\n            $error = $error->getMessage();\n        }\n\n        $lastUsername = (null === $session) ? '' : $session->get(SecurityContext::LAST_USERNAME);\n\n        $smarty = $templatesService->getSmarty();\n        $smarty->assign('lastUsername', $lastUsername);\n        $smarty->assign('error', $error);\n        $smarty->assign('targetPath', $request->getSession()->get('_security.oauth_authorize.target_path'));\n\n        return new Response($templatesService->fetchTemplate('oauth_login.tpl'), 200, array('Content-Type' => 'text/html'));\n    }\n\n    /**\n     * @Route(\"/oauth/authentication/result\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"oauth_authentication_result\")\n     * @Method(\"GET\")\n     */\n    public function defaultOauthRedirectAction(Request $request)\n    {\n        $templatesService = $this->get('newscoop.templates.service');\n\n        return new Response($templatesService->fetchTemplate('oauth_result.tpl'), 200, array('Content-Type' => 'text/html'));\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Controller/PublicationsController.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Controller;\n\nuse FOS\\RestBundle\\Controller\\FOSRestController;\nuse FOS\\RestBundle\\Controller\\Annotations\\View;\nuse Nelmio\\ApiDocBundle\\Annotation\\ApiDoc;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Method;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException;\n\nclass PublicationsController extends FOSRestController\n{\n    /**\n     * Get Publications\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when publications found\",\n     *         404={\n     *           \"Returned when publications are not found\",\n     *         }\n     *     }\n     * )\n     *\n     * @Route(\"/publications.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     */\n    public function getPublicationsAction(Request $request)\n    {\n        $em = $this->container->get('em');\n\n        $publications = $em->getRepository('Newscoop\\Entity\\Publication')\n            ->getPublications();\n\n        if (!$publications) {\n            throw new NotFoundHttpException('Result was not found.');\n        }\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $publications = $paginator->paginate($publications, array(\n            'distinct' => false\n        ));\n\n        return $publications;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Controller/SectionsController.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\GimmeBundle\\Controller;\n\nuse FOS\\RestBundle\\Controller\\FOSRestController;\nuse FOS\\RestBundle\\Controller\\Annotations\\View;\nuse Nelmio\\ApiDocBundle\\Annotation\\ApiDoc;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Method;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException;\n\nclass SectionsController extends FOSRestController\n{\n    /**\n     * Get Sections\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when sections found\",\n     *         404={\n     *           \"Returned when sections are not found\",\n     *         }\n     *     },\n     *     parameters={\n     *         {\"name\"=\"publication\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Publication id\"},\n     *         {\"name\"=\"issue\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Issue number\"},\n     *         {\"name\"=\"language\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Filter by language code\"},\n     *     }\n     * )\n     *\n     * @Route(\"/sections.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     */\n    public function getSectionsAction(Request $request)\n    {\n        $em = $this->container->get('em');\n        $publication = $this->get('newscoop_newscoop.publication_service')->getPublication()->getId();\n        $issue = null;\n        $language = null;\n        if ($request->query->has('language')) {\n            $language = $em->getRepository('Newscoop\\Entity\\Language')\n                ->findOneByCode($request->query->get('language'));\n        }\n\n        if (!$language) {\n            $language = $this->get('newscoop_newscoop.publication_service')->getPublication()->getLanguage();\n        }\n\n        if ($request->query->has('issue')) {\n            $issue = $em->getRepository('Newscoop\\Entity\\Issue')->getByPublicationAndNumberAndLanguage(\n                $request->query->get('publication', $publication),\n                $request->query->get('issue'),\n                $language\n            )->getOneOrNullResult();\n        }\n\n        $sections = $em->getRepository('Newscoop\\Entity\\Section')->getSections(\n            $request->query->get('publication', $publication),\n            $issue,\n            $issue ? $issue->getLanguage() : $language\n        )->getResult();\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $sections = $paginator->paginate($sections, array(\n            'distinct' => false,\n        ));\n\n        return $sections;\n    }\n\n    /**\n     * Get section articles\n     *\n     * Returns array with articles under \"items\" key and requested section \"id\" and \"title\"\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the section articles are not found\",\n     *         }\n     *     }\n     * )\n     *\n     * @Route(\"/sections/{number}/{language}/articles.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     */\n    public function getSectionsArticlesAction(Request $request, $number, $language)\n    {\n        $em = $this->container->get('em');\n        $publication = $this->get('newscoop_newscoop.publication_service')->getPublication()->getId();\n\n        $paginatorService = $this->get('newscoop.paginator.paginator_service');\n        $paginatorService->setUsedRouteParams(array('number' => $number, 'language' => $language));\n\n        $language = $em->getRepository('Newscoop\\Entity\\Language')\n                ->findOneByCode($language);\n\n        $section = $em->getRepository('Newscoop\\Entity\\Section')\n            ->findOneBy(array(\n                'number' => $number,\n                'language' => $language,\n                'publication' => $publication,\n            ));\n\n        if (!$section) {\n            throw new NotFoundHttpException('Result was not found.');\n        }\n\n        $articles = $em->getRepository('Newscoop\\Entity\\Article')\n            ->getArticlesForSection($publication, $number, $language);\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $articles = $paginator->paginate($articles, array(\n            'distinct' => false,\n        ));\n\n        $allItems = array_merge(array(\n            'id' => $section->getId(),\n            'title' => $section->getName(),\n        ), $articles);\n\n        return $allItems;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Controller/SlideshowsController.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\GimmeBundle\\Controller;\n\nuse FOS\\RestBundle\\Controller\\FOSRestController;\nuse FOS\\RestBundle\\Controller\\Annotations\\View;\nuse Nelmio\\ApiDocBundle\\Annotation\\ApiDoc;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Method;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException;\nuse Newscoop\\Criteria\\SlideshowCriteria;\n\nclass SlideshowsController extends FOSRestController\n{\n    /**\n     * Get slideshow and its items\n     *\n     * Returns array with items under \"items\" key and requested slideshow \"id\", \"title\" and \"summary\"\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the slideshow is not found\",\n     *         }\n     *     }\n     * )\n     *\n     * @Route(\"/slideshows/{id}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"details\"})\n     */\n    public function getSlideshowItemsAction(Request $request, $id)\n    {\n        $em = $this->container->get('em');\n        $package = $em->getRepository('Newscoop\\Package\\Package')->findOneBy(array(\n            'id' => $id,\n        ));\n\n        if (!$package) {\n            throw new NotFoundHttpException('Result was not found.');\n        }\n\n        return $package;\n    }\n\n    /**\n     * Get article slideshows\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the articles slideshows are not found\"\n     *         }\n     *     }\n     * )\n     *\n     * @Route(\"/articles/{number}/slideshows.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_slideshows_default_lang\")\n     * @Route(\"/articles/{number}/{language}/slideshows.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, name=\"newscoop_gimme_articles_slideshows\")\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     *\n     * @return array\n     */\n    public function getArticleSlideshowsAction(Request $request, $number, $language = null)\n    {\n        $em = $this->container->get('em');\n        $publication = $this->get('newscoop.publication_service')->getPublication();\n        $article = $em->getRepository('Newscoop\\Entity\\Article')\n            ->getArticle($number, $request->request->get('language', $publication->getLanguage()->getCode()))\n            ->getOneOrNullResult();\n\n        if (!$article) {\n            throw new NotFoundHttpException('Article was not found');\n        }\n\n        $criteria = new SlideshowCriteria();\n        $criteria->articleNumber = $article->getNumber();\n        $criteria->articleLanguage = $article->getLanguageId();\n        $slideshows = $em->getRepository('Newscoop\\Package\\Package')->getListByCriteria($criteria);\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $paginator->setUsedRouteParams(array('number' => $number, 'language' => $article->getLanguage()->getCode()));\n        $slideshows = $paginator->paginate($slideshows);\n\n        return $slideshows;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Controller/SnippetTemplatesController.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Yorick Terweijden <yorick.terweijden@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Controller;\n\nuse FOS\\RestBundle\\Controller\\FOSRestController;\nuse FOS\\RestBundle\\Controller\\Annotations\\View;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Method;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException;\nuse Symfony\\Component\\Security\\Core\\Exception\\AccessDeniedException;\nuse Nelmio\\ApiDocBundle\\Annotation\\ApiDoc;\nuse Doctrine\\ORM\\EntityNotFoundException;\nuse Newscoop\\GimmeBundle\\Form\\Type\\SnippetTemplateType;\nuse Symfony\\Component\\Form\\Exception\\InvalidArgumentException;\nuse Newscoop\\Entity\\Snippet;\nuse Newscoop\\Entity\\Snippet\\SnippetTemplate;\nuse Newscoop\\Entity\\Snippet\\SnippetTemplate\\SnippetTemplateField;\n\nclass SnippetTemplatesController extends FOSRestController\n{\n    /**\n     * Get all SnippetTemplates\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the snippets are not found\"\n     *         }\n     *     },\n     *     parameters={\n     *         {\"name\"=\"show\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Define which snippets to show, 'enabled', 'disabled', 'all'. Defaults to 'enabled'\"}\n     *     },\n     * )\n     *\n     * @Route(\"/snippetTemplates.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     *\n     * @return array\n     */\n    public function getSnippetTemplatesAction(Request $request)\n    {\n        $show = $request->query->get('show', 'enabled');\n        $em = $this->container->get('em');\n\n        $snippetTemplates = $em->getRepository('Newscoop\\Entity\\Snippet\\SnippetTemplate')\n            ->getSnippetTemplateQueryBuilder($show);\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $snippetTemplates = $paginator->paginate($snippetTemplates, array(\n            'distinct' => false\n        ));\n\n        return $snippetTemplates;\n    }\n\n    /**\n     * Get SnippetTemplate\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the SnippetTemplate is not found\",\n     *         }\n     *     },\n     *     parameters={\n     *         {\"name\"=\"id\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"SnippetTemplate id\"},\n     *         {\"name\"=\"show\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Define which SnippetTemplates to show, 'enabled', 'disabled', 'all'. Defaults to 'enabled'\"}\n     *     },\n     *     output=\"\\Newscoop\\Entity\\SnippetTemplate\"\n     * )\n     *\n     * @Route(\"/snippetTemplates/{id}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"details\"})\n     *\n     * @return array\n     */\n    public function getSingleSnippetTemplateAction(Request $request, $id)\n    {\n        $show = $request->query->get('show', 'enabled');\n        $em = $this->container->get('em');\n\n        $snippetTemplate = $em->getRepository('Newscoop\\Entity\\Snippet\\SnippetTemplate')\n            ->getTemplateById($id, $show);\n\n        if (!$snippetTemplate) {\n            throw new EntityNotFoundException('Result was not found.');\n        }\n\n        return $snippetTemplate;\n    }\n\n    /**\n     * Delete SnippetTemplate\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         204=\"Returned when SnippetTemplate removed succesfuly\",\n     *         404={\n     *           \"Returned when the SnippetTemplate is not found\",\n     *         },\n     *         409=\"Returned when SnippetTemplate is used by Articles\"\n     *     },\n     *     parameters={\n     *         {\"name\"=\"force\", \"dataType\"=\"boolean\", \"required\"=false, \"description\"=\"Force delete\"},\n     *     }\n     * )\n     *\n     * @Route(\"/snippetTemplates/{id}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"DELETE\")\n     * @View(statusCode=204)\n     */\n    public function deleteSnippetTemplateAction(Request $request, $id)\n    {\n        $force = $request->query->get('force', false);\n        $em = $this->container->get('em');\n        $articleSnippets = $em->getRepository('Newscoop\\Entity\\Snippet\\SnippetTemplate')\n            ->deleteSnippetTemplate($id, $force);\n    }\n\n    /**\n     * Create new SnippetTemplate\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         201=\"Returned when SnippetTemplate created succesfuly\"\n     *     },\n     *     input=\"\\Newscoop\\GimmeBundle\\Form\\Type\\SnippetTemplateType\"\n     * )\n     *\n     * @Route(\"/snippetTemplates.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"POST\")\n     * @View()\n     *\n     * @return Form\n     */\n    public function createSnippetTemplateAction(Request $request)\n    {\n        return $this->processForm($request, null);\n    }\n\n    /**\n     * Edit existing SnippetTemplate\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when SnippetTemplate edited succesfuly\"\n     *     },\n     *     input=\"\\Newscoop\\GimmeBundle\\Form\\Type\\SnippetTemplateType\"\n     * )\n     *\n     * @Route(\"/snippetTemplates/{snippetTemplateId}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"PATCH|POST\")\n     * @View()\n     *\n     * @return Form\n     */\n    public function editSnippetTemplateAction(Request $request, $snippetTemplateId)\n    {\n        return $this->processForm($request, $snippetTemplateId);\n    }\n\n    /**\n     * Process SnippetTemplate form\n     *\n     * @param Request $request\n     * @param integer $snippetTemplateId\n     *\n     * @return Form\n     */\n    private function processForm($request, $snippetTemplateId = null)\n    {\n        // XXX It breaks using PATCH\n        $em = $this->container->get('em');\n        $patch = false;\n        if (!is_null($snippetTemplateId) && !is_numeric($snippetTemplateId)) {\n            throw new InvalidArgumentException(\"Parameter 'template' is not numeric\");\n        }\n\n        if (!$snippetTemplateId) {\n            $snippetTemplate = new SnippetTemplate();\n            $statusCode = 201;\n        } else {\n            $snippetTemplate = $em->getRepository('Newscoop\\Entity\\Snippet\\SnippetTemplate')\n                ->getTemplateById($snippetTemplateId, 'all');\n            $statusCode = 200;\n            $patch = true;\n            if (is_null($snippetTemplate)) {\n                throw new InvalidArgumentException(\"Template with ID: '\".$snippetTemplateId.\"' does not exist.\");\n            }\n        }\n\n        $form = $this->container->get('form.factory')->create(new SnippetTemplateType(array('patch'=>$patch)), $snippetTemplate);\n        $form->handleRequest($request);\n\n        if ($form->isValid()) {\n            $snippetTemplate = $form->getData();\n            $em->getRepository('Newscoop\\Entity\\Snippet\\SnippetTemplate')\n                ->save($snippetTemplate);\n            $response = new Response();\n            $response->setStatusCode($statusCode);\n\n            $response->headers->set(\n                'X-Location',\n                $this->generateUrl('newscoop_gimme_snippettemplates_getsinglesnippettemplate', array(\n                    'id' => $snippetTemplate->getId(),\n                ), true)\n            );\n\n            return $response;\n        }\n\n        return $form;\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Controller/SnippetsController.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Yorick Terweijden <yorick.terweijden@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Controller;\n\nuse FOS\\RestBundle\\Controller\\FOSRestController;\nuse FOS\\RestBundle\\Controller\\Annotations\\View;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Method;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException;\nuse Symfony\\Component\\Security\\Core\\Exception\\AccessDeniedException;\nuse Nelmio\\ApiDocBundle\\Annotation\\ApiDoc;\nuse Doctrine\\ORM\\EntityNotFoundException;\nuse Newscoop\\GimmeBundle\\Form\\Type\\SnippetType;\nuse Symfony\\Component\\Form\\Exception\\InvalidArgumentException;\nuse Newscoop\\Entity\\Snippet;\nuse Newscoop\\Entity\\Snippet\\SnippetTemplate;\nuse Newscoop\\Entity\\Snippet\\SnippetTemplate\\SnippetTemplateField;\n\nclass SnippetsController extends FOSRestController\n{\n    /**\n     * Get all snippets\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the snippets are not found\"\n     *         }\n     *     },\n     *     parameters={\n     *         {\"name\"=\"show\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Define which snippets to show, 'enabled', 'disabled', 'all'. Defaults to 'enabled'\"},\n     *         {\"name\"=\"rendered\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Return a Rendered Snippet\"}\n     *     },\n     * )\n     *\n     * @Route(\"/snippets.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     *\n     * @return array\n     */\n    public function getSnippetsAction(Request $request)\n    {\n        $show = $request->query->get('show', 'enabled');\n        $rendered = $request->query->get('rendered', 'false');\n        $em = $this->container->get('em');\n\n        $snippets = $em->getRepository('Newscoop\\Entity\\Snippet')\n            ->getSnippets($show);\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $snippets = $paginator->paginate($snippets, array(\n            'distinct' => false\n        ));\n\n        if ($view = $request->attributes->get('_view')) {\n            if ($rendered == 'true') {\n                $view->setSerializerGroups(array('rendered'));\n            }\n        }\n\n        return $snippets;\n    }\n\n    /**\n     * Get Snippet\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the Snippet is not found\",\n     *         }\n     *     },\n     *     parameters={\n     *         {\"name\"=\"id\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Snippet id\"},\n     *         {\"name\"=\"show\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Define which snippets to show, 'enabled', 'disabled', 'all'. Defaults to 'enabled'\"},\n     *         {\"name\"=\"rendered\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Return a Rendered Snippet\"},\n     *     },\n     *     output=\"\\Newscoop\\Entity\\Snippet\"\n     * )\n     *\n     * @Route(\"/snippets/{snippetId}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Route(\"/articles/{articleNumber}/{languageCode}/snippets/{snippetId}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"details\", \"scopeNoBackend\"})\n     *\n     * @return array\n     */\n    public function getSnippetAction(Request $request, $snippetId)\n    {\n        // XXX Check if the SnippetID belongs to the articleNumber\n        $show = $request->query->get('show', 'enabled');\n        $rendered = $request->query->get('rendered', 'false');\n        $em = $this->container->get('em');\n\n        $snippetRepo = $em->getRepository('Newscoop\\Entity\\Snippet');\n        $snippet = $snippetRepo->getSnippetById($snippetId, $show);\n\n        if (!$snippet) {\n            throw new EntityNotFoundException('Result was not found.');\n        }\n\n        if ($view = $request->attributes->get('_view')) {\n            if ($rendered == 'true') {\n                $view->setSerializerGroups(array('rendered'));\n            }\n        }\n\n        return $snippet;\n    }\n\n    /**\n     * Get snippets for article\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         204=\"Returned when successful but article doesn't have snippets.\",\n     *         404={\n     *           \"Returned when the snippets are not found\",\n     *         }\n     *     },\n     *     parameters={\n     *         {\"name\"=\"number\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Article number\"},\n     *         {\"name\"=\"language\", \"dataType\"=\"string\", \"required\"=true, \"description\"=\"Language code\"},\n     *         {\"name\"=\"show\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Define which snippets to show, 'enabled', 'disabled', 'all'. Defaults to 'enabled'\"},\n     *         {\"name\"=\"rendered\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Return a Rendered Snippet\"}\n     *     }\n     * )\n     *\n     * @Route(\"/articles/{number}/{language}/snippets.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Route(\"/snippets/article/{number}/{language}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     */\n    public function getSnippetsForArticleAction(Request $request, $number, $language)\n    {\n        $show = $request->query->get('show', 'enabled');\n        $rendered = $request->query->get('rendered', 'false');\n        $em = $this->container->get('em');\n        $paginatorService = $this->get('newscoop.paginator.paginator_service');\n        $paginatorService->setUsedRouteParams(array('number' => $number, 'language' => $language));\n\n        $article = $em->getRepository('Newscoop\\Entity\\Article')\n            ->getArticle($number, $language)\n            ->getOneOrNullResult();\n\n        if (!$article) {\n            throw new NotFoundHttpException('Article with number:\"'.$number.'\" and language: \"'.$language.'\" was not found.');\n        }\n\n        $articleSnippets = $em->getRepository('Newscoop\\Entity\\Snippet')\n            ->getArticleSnippets($number, $language, $show)\n            ->getResult();\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $articleSnippets = $paginator->paginate($articleSnippets);\n\n        if ($view = $request->attributes->get('_view')) {\n            if ($rendered == 'true') {\n                $view->setSerializerGroups(array('rendered'));\n            }\n        }\n\n        return $articleSnippets;\n    }\n\n    /**\n     * Create new Snippet\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         201=\"Returned when Snippet created succesfuly\"\n     *     },\n     *     parameters={\n     *         {\"name\"=\"template\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"SnippetTemplate ID\"}\n     *     },\n     *     input=\"\\Newscoop\\GimmeBundle\\Form\\Type\\SnippetType\"\n     * )\n     *\n     * @Route(\"/snippets.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Route(\"/articles/{articleNumber}/{languageCode}/snippets.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"POST\")\n     * @View()\n     *\n     * @return Form\n     */\n    public function createSnippetAction(Request $request, $articleNumber = null, $languageCode = null)\n    {\n        return $this->processForm($request, null, $articleNumber, $languageCode);\n    }\n\n    /**\n     * Update Snippet\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when Snippet updated succesfuly\"\n     *     },\n     *     input=\"\\Newscoop\\GimmeBundle\\Form\\Type\\CommentType\"\n     * )\n     *\n     * @Route(\"/snippets/{snippetId}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Route(\"/articles/{articleNumber}/{languageCode}/snippets/{snippetId}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"POST|PATCH\")\n     * @View()\n     *\n     * @return Form\n     */\n    public function updateSnippetAction(Request $request, $snippetId, $articleNumber = null, $languageCode = null)\n    {\n        return $this->processForm($request, $snippetId, $articleNumber, $languageCode);\n    }\n\n    /**\n     * Delete Snippet\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         204=\"Returned when Snippet removed succesfuly\",\n     *         404={\n     *           \"Returned when the Snippet is not found\",\n     *         },\n     *         409=\"Returned when Snippet is used by Articles\"\n     *     },\n     *     parameters={\n     *         {\"name\"=\"force\", \"dataType\"=\"boolean\", \"required\"=false, \"description\"=\"Force delete\"},\n     *     }\n     * )\n     *\n     * @Route(\"/snippets/{snippetId}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Route(\"/snippets/article/{articleNumber}/{languageCode}/{snippetId}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"DELETE\")\n     * @View(statusCode=204)\n     */\n    public function deleteSnippetAction(Request $request, $snippetId, $articleNumber = null, $languageCode = null)\n    {\n        $force = $request->query->get('force', false);\n        $em = $this->container->get('em');\n        $articleSnippets = $em->getRepository('Newscoop\\Entity\\Snippet')\n            ->deleteSnippet($snippetId, $force);\n    }\n\n    /**\n     * Process Snippet form\n     *\n     * @param Request $request\n     * @param integer $snippet\n     * @param integer $articleNumber\n     * @param string  $languageCode\n     *\n     * @return Form\n     */\n    private function processForm($request, $snippetId = null, $articleNumber = null, $languageCode = null)\n    {\n        // XXX It breaks using PATCH\n        $em = $this->container->get('em');\n        $patch = false;\n\n        if (!$snippetId) {\n            $templateId = $request->request->get('template');\n\n            if (!is_numeric($templateId)) {\n                throw new InvalidArgumentException(\"Parameter 'template' is not numeric\");\n            }\n\n            $snippetTemplate = $em->getRepository('Newscoop\\Entity\\Snippet\\SnippetTemplate')\n                ->getTemplateById($templateId);\n            \n            if (is_null($snippetTemplate)) {\n                $snippetTemplate = $em->getRepository('Newscoop\\Entity\\Snippet\\SnippetTemplate')\n                    ->getTemplateById($templateId, 'all');\n                \n                if (is_null($snippetTemplate)) {\n                    throw new InvalidArgumentException(\"Template with ID: '\".$templateId.\"' does not exist.\");\n                }\n\n                throw new InvalidArgumentException(\"Template with ID: '\".$templateId.\"' is not enabled.\");\n            }\n\n            $snippet = new Snippet($snippetTemplate);\n            $statusCode = 201;\n        } else {\n            $snippet = $em->getRepository('Newscoop\\Entity\\Snippet')\n                ->getSnippetById($snippetId, 'all');\n            $statusCode = 200;\n            $patch = true;\n            if (is_null($snippet)) {\n                throw new NotFoundHttpException(\"Snippet with ID: '\".$snippetId.\"' was not found\");\n            }\n        }\n\n        $article = null;\n        if (!is_null($articleNumber) && !is_null($languageCode)) {\n            $article = $em->getRepository('Newscoop\\Entity\\Article')\n                ->getArticle($articleNumber, $languageCode)\n                ->getOneOrNullResult();\n\n            if (!$article) {\n                throw new NotFoundHttpException('Article with number:\"'.$articleNumber.'\" and language: \"'.$languageCode.'\" was not found.');\n            }\n        }\n\n        $form = $this->container->get('form.factory')->create(new SnippetType(array('patch'=>$patch)), $snippet);\n        $form->handleRequest($request);\n\n        if ($form->isValid()) {\n            $snippet = $form->getData();\n            if ($article) {\n                $snippet->addArticle($article);\n            }\n            $em->getRepository('Newscoop\\Entity\\Snippet')\n                ->save($snippet);\n            $response = new Response();\n            $response->setStatusCode($statusCode);\n\n            $response->headers->set(\n                'X-Location',\n                $this->generateUrl('newscoop_gimme_snippets_getsnippet', array(\n                    'snippetId' => $snippet->getId(),\n                ), true)\n            );\n\n            return $response;\n        }\n\n        return $form;\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Controller/TopicsController.php",
    "content": "<?php\n/**\n * @package Newscoop\\GimmeBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Controller;\n\nuse FOS\\RestBundle\\Controller\\FOSRestController;\nuse FOS\\RestBundle\\Controller\\Annotations\\View;\nuse Nelmio\\ApiDocBundle\\Annotation\\ApiDoc;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Method;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException;\nuse Newscoop\\NewscoopBundle\\Entity\\Topic;\nuse Newscoop\\NewscoopBundle\\Form\\Type\\TopicType;\nuse Symfony\\Component\\HttpFoundation\\Response;\n\nclass TopicsController extends FOSRestController\n{\n    /**\n     * Get all topics\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404=\"Returned when topics are not found\"\n     *     }\n     * )\n     *\n     * @Route(\"/topics.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     *\n     * @return array\n     */\n    public function getTopicsAction(Request $request)\n    {\n        $em = $this->container->get('em');\n\n        $topics = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')\n            ->getTopics($request->get('language'));\n\n        if (!$topics) {\n            throw new NotFoundHttpException('Result was not found.');\n        }\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $topics = $paginator->paginate($topics, array(\n            'distinct' => false\n        ));\n\n        return $topics;\n    }\n\n    /**\n     * Get single topic\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when topic successfully found\",\n     *         404=\"Returned when the topic is not found\",\n     *     },\n     *     output=\"\\Newscoop\\NewscoopBundle\\Entity\\Topic\"\n     * )\n     *\n     * @Route(\"/topics/{id}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true}, requirements={\"id\" = \"[\\d]+\"})\n     * @Method(\"GET\")\n     * @View()\n     */\n    public function getTopicByIdAction($id)\n    {\n        $em = $this->container->get('em');\n        $topic = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')\n            ->getSingleTopicQuery($id)\n            ->getOneOrNullResult();\n\n        if (!$topic) {\n            throw new NotFoundHttpException('Topic was not found.');\n        }\n\n        return $topic;\n    }\n\n    /**\n     * Create new Topic\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         201=\"Returned when Topic created successfully\"\n     *     },\n     *     input=\"\\Newscoop\\NewscoopBundle\\Form\\Type\\TopicType\"\n     * )\n     *\n     * @Route(\"/topics.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Route(\"/articles/{articleNumber}/{languageCode}/topics.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"POST\")\n     * @View()\n     *\n     * @return Form\n     */\n    public function createTopicAction(Request $request, $articleNumber = null, $languageCode = null)\n    {\n        return $this->processForm($request, null, $articleNumber, $languageCode);\n    }\n\n    /**\n     * Get topic articles\n     *\n     * Returns array with articles under \"items\" key and requested topic \"id\" and \"title\"\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404={\n     *           \"Returned when the topic is not found\",\n     *         }\n     *     }\n     * )\n     *\n     * @Route(\"/topics/{id}/{language}/articles.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     */\n    public function getTopicsArticlesAction(Request $request, $id, $language)\n    {\n        $em = $this->container->get('em');\n        $publication = $this->get('newscoop_newscoop.publication_service')->getPublication()->getId();\n\n        $paginatorService = $this->get('newscoop.paginator.paginator_service');\n        $paginatorService->setUsedRouteParams(array('id' => $id, 'language' => $language));\n\n        $language = $em->getRepository('Newscoop\\Entity\\Language')\n                ->findOneByCode($language);\n\n        $query = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')->getArticlesQueryByTopicIdAndLanguage($id, $language->getCode());\n        $topic = $query->getArrayResult();\n\n        if (empty($topic)) {\n            throw new NotFoundHttpException('Result was not found.');\n        }\n\n        $articles = $em->getRepository('Newscoop\\Entity\\Article')\n            ->getArticlesForTopic($publication, $id, false, false, 'desc');\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $articles = $paginator->paginate($articles, array(\n            'distinct' => false\n        ));\n\n        $allItems = array_merge(array(\n            'id' => $topic[0]['id'],\n            'title' => $topic[0]['title'],\n        ), $articles);\n\n        return $allItems;\n    }\n\n    /**\n     * Get article's topics\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when topic successfully found\",\n     *         404={\n     *           \"Returned when the topics are not found\",\n     *         }\n     *     }\n     * )\n     *\n     * @Route(\"/articles/{number}/{language}/topics.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Route(\"/topics/article/{number}/{language}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     */\n    public function getArticlesTopicsAction($number, $language)\n    {\n        $em = $this->container->get('em');\n        $topics = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')\n            ->getArticleTopics($number, $language);\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $paginator->setUsedRouteParams(array('number' => $number, 'language' => $language));\n        $topics = $paginator->paginate($topics);\n\n        return $topics;\n    }\n\n    /**\n     * Search for topics by title\n     *\n     * Get list of topics by given search query\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\"\n     *     },\n     *     filters={\n     *          {\"name\"=\"query\", \"dataType\"=\"string\", \"description\"=\"search query\"}\n     *     },\n     * )\n     *\n     * @Route(\"/search/topics.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     */\n    public function searchTopicsAction(Request $request)\n    {\n        $em = $this->container->get('em');\n        $query = $request->query->get('query', '');\n        $topics = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')\n            ->searchTopics($query);\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $topics = $paginator->paginate($topics, array('distinct' => false));\n\n        return $topics;\n    }\n\n    /**\n     * Delete topic\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         204=\"Returned when topic removed succesfully\",\n     *         404={\n     *           \"Returned when topic is not found\",\n     *         }\n     *     },\n     *     requirements={\n     *         {\"name\"=\"id\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"Topic id\"}\n     *     }\n     * )\n     *\n     * @Route(\"/topics/{id}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"DELETE\")\n     */\n    public function deleteTopicAction(Request $request, $id)\n    {\n        $topicService = $this->get('newscoop_newscoop.topic_service');\n        $em = $this->container->get('em');\n        $topic = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')->findOneBy(array(\n            'id' => $id,\n        ));\n\n        if (!$topic) {\n            throw new NotFoundHttpException('Topic was not found');\n        }\n\n        $topicService->deleteTopic($topic);\n        $response = new Response();\n        $response->setStatusCode(204);\n\n        return $response;\n    }\n\n    /**\n     * Process Topic form\n     *\n     * @param Request $request\n     * @param integer $topicId\n     * @param integer $articleNumber\n     * @param string  $languageCode\n     *\n     * @return Form\n     */\n    private function processForm($request, $topicId = null, $articleNumber = null, $languageCode = null)\n    {\n        $em = $this->get('em');\n        $topic = new Topic();\n        $statusCode = 201;\n        if ($topicId) {\n            $topic = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')->findOneById($topicId);\n            $statusCode = 200;\n            if (is_null($topic)) {\n                throw new NotFoundHttpException(\"Topic with ID: '\" . $topicId . \"' was not found\");\n            }\n        }\n\n        $article = null;\n        if (!is_null($articleNumber) && !is_null($languageCode)) {\n            $article = $em->getRepository('Newscoop\\Entity\\Article')\n                ->getArticle($articleNumber, $languageCode)\n                ->getOneOrNullResult();\n\n            if (!$article) {\n                throw new NotFoundHttpException('Article with number:\"' . $articleNumber . '\" and language: \"' . $languageCode . '\" was not found.');\n            }\n        }\n\n        $form = $this->get('form.factory')->create(new TopicType(), $topic);\n        $form->handleRequest($request);\n\n        if ($form->isValid()) {\n            if ($article) {\n                $topic->addArticleTopic($article);\n            }\n\n            $locale = null;\n            if (!$topic->getTranslatableLocale()) {\n                $locale = $request->getLocale();\n            }\n\n            $topicService = $this->get('newscoop_newscoop.topic_service');\n            $topicService->saveNewTopic($topic, $locale);\n            $response = new Response();\n            $response->setStatusCode($statusCode);\n\n            $response->headers->set(\n                'X-Location',\n                $this->generateUrl('newscoop_gimme_topics_gettopicbyid', array(\n                    'id' => $topic->getId(),\n                ), true)\n            );\n\n            return $response;\n        }\n\n        return $form;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Controller/UserTopicsController.php",
    "content": "<?php\n\n/**\n * @package Newscoop\\GimmeBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2015 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\GimmeBundle\\Controller;\n\nuse FOS\\RestBundle\\Controller\\FOSRestController;\nuse FOS\\RestBundle\\Controller\\Annotations\\View;\nuse Nelmio\\ApiDocBundle\\Annotation\\ApiDoc;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Method;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException;\nuse Newscoop\\NewscoopBundle\\Entity\\Topic;\nuse Newscoop\\Exception\\InvalidParametersException;\n\nclass UserTopicsController extends FOSRestController\n{\n    /**\n     * Get topics followed by user\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404=\"Returned when topics are not found\"\n     *     },\n     *     parameters={\n     *         {\"name\"=\"language\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Language code\"}\n     *     },\n     *     requirements={\n     *         {\"name\"=\"id\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"User Id\"}\n     *     }\n     * )\n     *\n     * @Route(\"/users/{id}/topics.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     *\n     * @return array\n     */\n    public function getUserTopicsAction(Request $request, $id)\n    {\n        $user = $this->findUserByIdOr404($id);\n        $userTopicsService = $this->get('user.topic');\n        $language = $request->query->get('language', null);\n        $userTopics = $userTopicsService->getTopics($user, $language);\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $paginator->setUsedRouteParams(array('id' => $id, 'language' => $language));\n        $userTopics = $paginator->paginate($userTopics, array(\n            'distinct' => false,\n        ));\n\n        return $userTopics;\n    }\n\n    /**\n     * Link topic to user\n     *\n     * **topics headers**:\n     *\n     *     header name: \"link\"\n     *     header value: \"</api/topics/1; rel=\"topic\">\"\n     *\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         201=\"Returned when successful\",\n     *         404=\"Returned when resource not found\"\n     *     },\n     *     requirements={\n     *         {\"name\"=\"id\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"User Id\"}\n     *     }\n     * )\n     *\n     * @Route(\"/users/{id}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"LINK\")\n     * @View(statusCode=201)\n     */\n    public function linkToUserAction(Request $request, $id)\n    {\n        $user = $this->findUserByIdOr404($id);\n        $this->linkOrUnlinkResources($request->attributes->get('links', array()), $user, true);\n    }\n\n    /**\n     * Unlink topic from the user\n     *\n     * **topics headers**:\n     *\n     *     header name: \"link\"\n     *     header value: \"</api/topics/1; rel=\"topic\">\"\n     *\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         204=\"Returned when successful\",\n     *         404=\"Returned when resource not found\"\n     *     },\n     *     requirements={\n     *         {\"name\"=\"id\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"User Id\"}\n     *     }\n     * )\n     *\n     * @Route(\"/users/{id}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"UNLINK\")\n     * @View(statusCode=204)\n     */\n    public function unlinkFromUserAction(Request $request, $id)\n    {\n        $user = $this->findUserByIdOr404($id);\n        $this->linkOrUnlinkResources($request->attributes->get('links', array()), $user);\n    }\n\n    private function findUserByIdOr404($id)\n    {\n        $em = $this->container->get('em');\n        $user = $em->getRepository('Newscoop\\Entity\\User')->findOneBy(array(\n            'id' => $id,\n        ));\n\n        if (!$user) {\n            throw new NotFoundHttpException('User was not found');\n        }\n\n        return $user;\n    }\n\n    private function linkOrUnlinkResources(array $resources, $user, $follow = false)\n    {\n        $matched = false;\n        foreach ($resources as $key => $objectArray) {\n            if (!is_array($objectArray)) {\n                return true;\n            }\n\n            $object = $objectArray['object'];\n            if ($object instanceof \\Exception) {\n                throw $object;\n            }\n\n            if ($object instanceof Topic) {\n                $userTopicService = $this->get('user.topic');\n                if ($follow) {\n                    $userTopicService->followTopic($user, $object);\n                } else {\n                    $userTopicService->unfollowTopic($user, $object);\n                }\n\n                $matched = true;\n\n                continue;\n            }\n        }\n\n        if ($matched === false) {\n            throw new InvalidParametersException('Any supported link object not found');\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Controller/UsersController.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\GimmeBundle\\Controller;\n\nuse FOS\\RestBundle\\Controller\\FOSRestController;\nuse FOS\\RestBundle\\Controller\\Annotations\\View;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Method;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException;\nuse Newscoop\\Exception\\AuthenticationException;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Nelmio\\ApiDocBundle\\Annotation\\ApiDoc;\nuse Newscoop\\GimmeBundle\\Entity\\Client;\nuse Newscoop\\Entity\\User;\nuse Symfony\\Component\\HttpKernel\\HttpKernelInterface;\n\n/**\n * Users Rest API Controller\n */\nclass UsersController extends FOSRestController\n{\n    /**\n     * Get all users\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *     }\n     * )\n     *\n     * @Route(\"/users.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     *\n     * @return array\n     */\n    public function getUsersAction(Request $request)\n    {\n        $em = $this->container->get('em');\n\n        $users = $em->getRepository('Newscoop\\Entity\\User')\n            ->getActiveUsers();\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $users = $paginator->paginate($users, array(\n            'distinct' => false,\n        ));\n\n        return $users;\n    }\n\n    /**\n     * Search for users\n     *\n     * Get list of users for search query\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\"\n     *     },\n     *     filters={\n     *          {\"name\"=\"query\", \"dataType\"=\"string\", \"description\"=\"search query\"}\n     *     },\n     * )\n     *\n     * @Route(\"/search/users.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     */\n    public function searchUsersAction(Request $request)\n    {\n        $em = $this->container->get('em');\n\n        $onlyPublic = true;\n        try {\n            $user = $this->container->get('user')->getCurrentUser();\n            if ($user && $user->isAdmin()) {\n                $onlyPublic = null;\n            }\n        } catch (AuthenticationException $e) {\n        }\n\n        $criteria = new \\Newscoop\\User\\UserCriteria();\n        $criteria->is_public = $onlyPublic;\n        $criteria->query_name = $request->query->get('query', '');\n\n        $results = $em->getRepository('Newscoop\\Entity\\User')\n            ->getListByCriteria($criteria, false);\n        $users = $results[0]->getQuery();\n\n        $paginator = $this->get('newscoop.paginator.paginator_service');\n        $users = $paginator->paginate($users, array('distinct' => false));\n\n        return $users;\n    }\n\n    /**\n     * Get user by given id\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404=\"Returned when the user is not found\",\n     *     },\n     *     parameters={\n     *         {\"name\"=\"id\", \"dataType\"=\"integer\", \"required\"=true, \"description\"=\"User id\"},\n     *         {\"name\"=\"image_type\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"User image specification (e.g. crop, fit)\"},\n     *         {\"name\"=\"image_width\", \"dataType\"=\"integer\", \"required\"=false, \"description\"=\"User image width\"},\n     *         {\"name\"=\"image_height\", \"dataType\"=\"integer\", \"required\"=false, \"description\"=\"User image height\"},\n     *     },\n     *     output=\"\\Newscoop\\Entity\\User\"\n     * )\n     *\n     * @Route(\"/users/{id}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     *\n     * @return array\n     */\n    public function getUserAction(Request $request, $id)\n    {\n        $em = $this->container->get('em');\n        $imageType = $request->get('image_type');\n        $imageHeight = $request->get('image_height');\n        $imageWidth = $request->get('image_width');\n\n        $user = $em->getRepository('Newscoop\\Entity\\User')\n            ->getOneActiveUser($id)\n            ->getOneOrNullResult();\n\n        if (!$user) {\n            throw new NotFoundHttpException('Result was not found.');\n        }\n\n        $metaUser = new \\MetaUser($user);\n        $user->setImage($metaUser->image(\n            is_numeric($imageWidth) ? $imageWidth : 80, is_numeric($imageHeight) ? $imageHeight : 80, !is_numeric($imageType) && is_string($imageType) ? $imageType : 'crop'\n        ));\n\n        return $user;\n    }\n\n    /**\n     * Log in user\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         403=\"Returned when wrong password given\",\n     *         404=\"Returned when the user is not found\",\n     *         400=\"Returned when invalid arguments\",\n     *         302=\"Returned when '_target_path' parameter given\",\n     *     },\n     *     parameters={\n     *         {\"name\"=\"username\", \"dataType\"=\"string\", \"required\"=true, \"description\"=\"Username or email\"},\n     *         {\"name\"=\"password\", \"dataType\"=\"string\", \"required\"=true, \"description\"=\"User password\"},\n     *         {\"name\"=\"_target_path\", \"dataType\"=\"string\", \"required\"=false, \"description\"=\"Target path to which user will be redirected after login.\"}\n     *     },\n     * )\n     *\n     * @Route(\"/users/login.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"POST\")\n     * @View(statusCode=200)\n     *\n     * @return array\n     */\n    public function loginAction(Request $request)\n    {\n        $zendRouter = $this->container->get('zend_router');\n        $userService = $this->container->get('user');\n        $em = $this->container->get('em');\n        $username = $request->get('username');\n        $password = $request->get('password');\n        $targetPath = $request->get('_target_path');\n        $response = new Response();\n        if (!$username || !$password) {\n            $response->setStatusCode(400);\n\n            return $response;\n        }\n\n        $passwordEncoder = $this->container->get('newscoop_newscoop.password_encoder');\n        $user = $em->getRepository('Newscoop\\Entity\\User')\n            ->findOneBy(array(\n                'username' => $username,\n            ));\n\n        if (!$user) {\n            $user = $user = $em->getRepository('Newscoop\\Entity\\User')\n                ->findOneBy(array(\n                    'email' => $username,\n                ));\n        }\n\n        if (!$user instanceof \\Newscoop\\Entity\\User) {\n            throw new NotFoundHttpException(\"User not found\");\n        }\n\n        if (!$passwordEncoder->isPasswordValid($user->getPassword(), $password, $user->getSalt())) {\n            $response->setStatusCode(403);\n\n            return $response;\n        }\n\n        $token = $userService->loginUser($user, 'frontend_area');\n        $session = $request->getSession();\n        $session->set('_security_frontend_area', serialize($token));\n\n        $loginSuccessHandler = $this->container->get('newscoop_newscoop.security.authentication.frontend.success_handler');\n        $loginSuccessHandler->onAuthenticationSuccess($request, $token);\n\n        $response->setStatusCode($targetPath ? 302 : 200);\n        $response->headers->set(\n            'X-Location',\n            $targetPath ? $request->getUriForPath($targetPath) : $this->generateUrl('newscoop_gimme_users_getuser', array(\n                'id' => $user->getId(),\n            ), true)\n        );\n\n        return $response;\n    }\n\n    /**\n     * Logout user\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\"\n     *     }\n     * )\n     *\n     * @Route(\"/users/logout.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"POST\")\n     * @View(statusCode=200)\n     */\n    public function logoutAction(Request $request)\n    {\n        $response = new Response();\n        $logoutHandler = $this->container->get('newscoop_newscoop.security.oauth.logout.success_handler');\n        $logoutHandler->onLogoutSuccess($request);\n\n        return $response;\n    }\n\n    /**\n     * Register user\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         409=\"Returned when user is already registered\",\n     *     },\n     *     parameters={\n     *         {\"name\"=\"email\", \"dataType\"=\"string\", \"required\"=true, \"description\"=\"User email\"}\n     *     },\n     * )\n     *\n     * @Route(\"/users/register.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"POST\")\n     * @View()\n     *\n     * @return Response|Exception\n     */\n    public function registerAction(Request $request)\n    {\n        $email = $request->get('email');\n        $userService = $this->container->get('user');\n        $emailService = $this->container->get('email');\n        $zendRouter = $this->container->get('zend_router');\n        $publicationMetadata = $request->attributes->get('_newscoop_publication_metadata');\n        $response = new Response();\n        $users = $userService->findBy(array(\n            'email' => $email,\n        ));\n\n        if (count($users) > 0) {\n            $user = array_pop($users);\n        } else {\n            $user = $userService->createPending($email);\n        }\n\n        if (!$user->isPending()) {\n            $response->setStatusCode(409);\n        } else {\n            $emailService->sendConfirmationToken($user);\n            $response->setStatusCode(200);\n            $response->headers->set(\n                'X-Location',\n                $request->getScheme().'://'.$publicationMetadata['alias']['name'].$zendRouter->assemble(array('controller' => 'register', 'action' => 'after'))\n            );\n        }\n\n        return $response;\n    }\n\n    /**\n     * Restore user password\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         404=\"Returned when email is not found\",\n     *     },\n     *     parameters={\n     *         {\"name\"=\"email\", \"dataType\"=\"string\", \"required\"=true, \"description\"=\"User email\"}\n     *     },\n     * )\n     *\n     * @Route(\"/users/restore-password.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"POST\")\n     * @View()\n     *\n     * @return Response\n     */\n    public function restorePasswordAction(Request $request)\n    {\n        $response = new Response();\n        $zendRouter = $this->container->get('zend_router');\n        $publicationMetadata = $request->attributes->get('_newscoop_publication_metadata');\n        $user = $this->container->get('user')->findOneBy(array(\n            'email' => $request->get('email'),\n        ));\n\n        if (!empty($user) && $user->isActive()) {\n            $this->container->get('email')->sendPasswordRestoreToken($user);\n            $response->setStatusCode(200);\n            $response->headers->set(\n                'X-Location',\n                $request->getScheme().'://'.$publicationMetadata['alias']['name'].$zendRouter->assemble(array('controller' => 'auth', 'action' => 'password-restore-after'))\n            );\n\n            return $response;\n        }\n\n        $response->setStatusCode(404);\n\n        return $response;\n    }\n\n    /**\n     * Get user access token\n     *\n     * @ApiDoc(\n     *     statusCodes={\n     *         200=\"Returned when successful\",\n     *         401=\"Returned when unauthorized\",\n     *     },\n     *     parameters={\n     *         {\"name\"=\"clientId\", \"dataType\"=\"string\", \"required\"=true, \"description\"=\"User's public client id\"},\n     *     },\n     * )\n     *\n     * @Route(\"/users/access_token/{clientId}.{_format}\", defaults={\"_format\"=\"json\"}, options={\"expose\"=true})\n     * @Method(\"GET\")\n     * @View(serializerGroups={\"list\"})\n     *\n     * @return array\n     */\n    public function getUserAccessTokenAction(Request $request, $clientId)\n    {\n        $response = new Response();\n        $session = $this->container->get('session');\n\n        $clientManager = $this->container->get('fos_oauth_server.client_manager.default');\n        $client = $clientManager->findClientByPublicId($clientId);\n        if (!($client instanceof Client)) {\n            throw new NotFoundHttpException(\"Client {$clientId} is not found.\");\n        }\n\n        $this->container->get('user')->getCurrentUser();\n        $redirectUris = $client->getRedirectUris();\n        $authUrl = $request->getUriForPath('/oauth/v2/auth');\n        $tokenUrl = $request->getUriForPath('/oauth/v2/token');\n        // GET to get code\n        $authRequest = Request::create($authUrl, 'GET', array(\n            'client_id' => $clientId,\n            'redirect_uri' => $redirectUris[0],\n            'response_type' => 'code',\n        ), $request->cookies->all());\n\n        $kernel = $this->get('http_kernel');\n        $codeResponse = $kernel->handle($authRequest);\n\n        $locationHeader = $codeResponse->headers->get('Location');\n        $code = substr($locationHeader, strpos($locationHeader, \"code=\") + 5);\n\n        if ($codeResponse->getStatusCode() !== 302) {\n            $codeResponse->setStatusCode(401);\n\n            return $codeResponse;\n        }\n\n        //make a GET to get token\n        $tokenRequest = Request::create($tokenUrl, 'GET', array(\n            \"client_id\" => $clientId,\n            \"client_secret\" => $client->getSecret(),\n            \"redirect_uri\" => $redirectUris[0],\n            \"code\" => $code,\n            \"grant_type\" => \"authorization_code\",\n        ));\n\n        $tokenResponse = $kernel->handle($tokenRequest, HttpKernelInterface::SUB_REQUEST);\n\n        return json_decode($tokenResponse->getContent(), true);\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/DependencyInjection/Configuration.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\DependencyInjection;\n\nuse Symfony\\Component\\Config\\Definition\\Builder\\TreeBuilder;\nuse Symfony\\Component\\Config\\Definition\\ConfigurationInterface;\n\n/**\n * This is the class that validates and merges configuration from your app/config files\n *\n * To learn more see {@link http://symfony.com/doc/current/cookbook/bundles/extension.html#cookbook-bundles-extension-config-class}\n */\nclass Configuration implements ConfigurationInterface\n{\n    /**\n     * {@inheritDoc}\n     */\n    public function getConfigTreeBuilder()\n    {\n        $treeBuilder = new TreeBuilder();\n        $rootNode = $treeBuilder->root('newscoop_gimme');\n\n        // Here you should define the parameters that are allowed to\n        // configure your bundle. See the documentation linked above for\n        // more information on that topic.\n\n        return $treeBuilder;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/DependencyInjection/NewscoopGimmeExtension.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\DependencyInjection;\n\nuse Symfony\\Component\\DependencyInjection\\ContainerBuilder;\nuse Symfony\\Component\\Config\\FileLocator;\nuse Symfony\\Component\\HttpKernel\\DependencyInjection\\Extension;\nuse Symfony\\Component\\DependencyInjection\\Loader;\n\n/**\n * This is the class that loads and manages your bundle configuration\n *\n * To learn more see {@link http://symfony.com/doc/current/cookbook/bundles/extension.html}\n */\nclass NewscoopGimmeExtension extends Extension\n{\n    /**\n     * {@inheritDoc}\n     */\n    public function load(array $configs, ContainerBuilder $container)\n    {\n        $config = array();\n        foreach ($configs as $subConfig) {\n            $config = array_merge($config, $subConfig);\n        }\n\n        if (array_key_exists('allow_origin', $config)) {\n            $container->setParameter('newscoop.gimme.allow_origin', $config['allow_origin']);\n        }\n\n        $loader = new Loader\\YamlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));\n        $loader->load('services.yml');\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Entity/AccessToken.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Entity;\n\nuse FOS\\OAuthServerBundle\\Entity\\AccessToken as BaseAccessToken;\nuse Doctrine\\ORM\\Mapping as ORM;\nuse Symfony\\Component\\Security\\Core\\User\\UserInterface;\n\n/**\n * @ORM\\Table(name=\"OAuthAccessToken\")\n * @ORM\\Entity()\n */\nclass AccessToken extends BaseAccessToken\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"integer\")\n     * @ORM\\GeneratedValue(strategy=\"AUTO\")\n     */\n    protected $id;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"\\Newscoop\\GimmeBundle\\Entity\\Client\")\n     * @ORM\\JoinColumn(nullable=false)\n     * @var Newscoop\\GimmeBundle\\Entity\\Client\n     */\n    protected $client;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"\\Newscoop\\Entity\\Publication\")\n     * @ORM\\JoinColumn(name=\"IdPublication\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Publication\n     */\n    protected $publication;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\User\")\n     * @ORM\\JoinColumn(referencedColumnName=\"Id\")\n     * @var UserInterface\n     */\n    protected $user;\n\n    /**\n     * Gets the value of id.\n     *\n     * @return mixed\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Sets the value of id.\n     *\n     * @param mixed $id the id\n     *\n     * @return self\n     */\n    public function setId($id)\n    {\n        $this->id = $id;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of client.\n     *\n     * @return  Newscoop\\GimmeBundle\\Entity\\Client\n     */\n    public function getClient()\n    {\n        return $this->client;\n    }\n\n    /**\n     * Sets the value of client.\n     *\n     * @param  Newscoop\\GimmeBundle\\Entity\\Client $client the client\n     *\n     * @return self\n     */\n    public function setClient(\\FOS\\OAuthServerBundle\\Model\\ClientInterface $client)\n    {\n        $this->client = $client;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of publication.\n     *\n     * @return Newscoop\\Entity\\Publication\n     */\n    public function getPublication()\n    {\n        return $this->publication;\n    }\n\n    /**\n     * Sets the value of publication.\n     *\n     * @param \\Newscoop\\Entity\\Publication $publication the publication\n     *\n     * @return self\n     */\n    public function setPublication(\\Newscoop\\Entity\\Publication $publication)\n    {\n        $this->publication = $publication;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of user.\n     *\n     * @return \\Newscoop\\Entity\\User\n     */\n    public function getUser()\n    {\n        return $this->user;\n    }\n\n    /**\n     * Sets the value of user.\n     *\n     * @param UserInterface  $user\n     *\n     * @return self\n     */\n    public function setUser(UserInterface  $user)\n    {\n        $this->user = $user;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Entity/AuthCode.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Entity;\n\nuse FOS\\OAuthServerBundle\\Entity\\AuthCode as BaseAuthCode;\nuse Doctrine\\ORM\\Mapping as ORM;\nuse Symfony\\Component\\Security\\Core\\User\\UserInterface;\n\n/**\n * @ORM\\Table(name=\"OAuthAuthCode\")\n * @ORM\\Entity()\n */\nclass AuthCode extends BaseAuthCode\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"integer\")\n     * @ORM\\GeneratedValue(strategy=\"AUTO\")\n     */\n    protected $id;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"\\Newscoop\\GimmeBundle\\Entity\\Client\")\n     * @ORM\\JoinColumn(nullable=false)\n     * @var Newscoop\\GimmeBundle\\Entity\\Client\n     */\n    protected $client;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"\\Newscoop\\Entity\\Publication\")\n     * @ORM\\JoinColumn(name=\"IdPublication\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Publication\n     */\n    protected $publication;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\User\")\n     * @ORM\\JoinColumn(referencedColumnName=\"Id\")\n     * @var UserInterface\n     */\n    protected $user;\n\n    /**\n     * Gets the value of id.\n     *\n     * @return mixed\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Sets the value of id.\n     *\n     * @param mixed $id the id\n     *\n     * @return self\n     */\n    public function setId($id)\n    {\n        $this->id = $id;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of client.\n     *\n     * @return Newscoop\\GimmeBundle\\Entity\\Client\n     */\n    public function getClient()\n    {\n        return $this->client;\n    }\n\n    /**\n     * Sets the value of client.\n     *\n     * @param Newscoop\\GimmeBundle\\Entity\\Client $client the client\n     *\n     * @return self\n     */\n    public function setClient(\\FOS\\OAuthServerBundle\\Model\\ClientInterface  $client)\n    {\n        $this->client = $client;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of publication.\n     *\n     * @return Newscoop\\Entity\\Publication\n     */\n    public function getPublication()\n    {\n        return $this->publication;\n    }\n\n    /**\n     * Sets the value of publication.\n     *\n     * @param \\Newscoop\\Entity\\Publication $publication the publication\n     *\n     * @return self\n     */\n    public function setPublication(\\Newscoop\\Entity\\Publication $publication)\n    {\n        $this->publication = $publication;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of user.\n     *\n     * @return \\Newscoop\\Entity\\User\n     */\n    public function getUser()\n    {\n        return $this->user;\n    }\n\n    /**\n     * Sets the value of user.\n     *\n     * @param \\Newscoop\\Entity\\User $user the user\n     *\n     * @return self\n     */\n    public function setUser(UserInterface $user)\n    {\n        $this->user = $user;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Entity/Client.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Entity;\n\nuse FOS\\OAuthServerBundle\\Entity\\Client as BaseClient;\nuse Doctrine\\ORM\\Mapping as ORM;\nuse Doctrine\\Common\\Collections\\ArrayCollection;\n\n/**\n * @ORM\\Table(name=\"OAuthClient\")\n * @ORM\\Entity()\n */\nclass Client extends BaseClient\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"integer\")\n     * @ORM\\GeneratedValue(strategy=\"AUTO\")\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(type=\"string\")\n     */\n    protected $name;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"\\Newscoop\\Entity\\Publication\")\n     * @ORM\\JoinColumn(name=\"IdPublication\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Publication\n     */\n    protected $publication;\n\n    /**\n     * @ORM\\ManyToMany(targetEntity=\"Newscoop\\Entity\\User\", mappedBy=\"clients\")\n     * @var array\n     */\n    protected $users;\n\n    /**\n     * @ORM\\Column(type=\"boolean\")\n     */\n    protected $trusted;\n\n    /**\n     * Construct Client object\n     */\n    public function __construct()\n    {\n        parent::__construct();\n        $this->users = new ArrayCollection();\n        $this->trusted = false;\n    }\n\n    /**\n     * Gets the value of id.\n     *\n     * @return mixed\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Sets the value of id.\n     *\n     * @param mixed $id the id\n     *\n     * @return self\n     */\n    public function setId($id)\n    {\n        $this->id = $id;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of name.\n     *\n     * @return mixed\n     */\n    public function getName()\n    {\n        return $this->name;\n    }\n\n    /**\n     * Sets the value of name.\n     *\n     * @param mixed $name the name\n     *\n     * @return self\n     */\n    public function setName($name)\n    {\n        $this->name = $name;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of publication.\n     *\n     * @return Newscoop\\Entity\\Publication\n     */\n    public function getPublication()\n    {\n        return $this->publication;\n    }\n\n    /**\n     * Sets the value of publication.\n     *\n     * @param Newscoop\\Entity\\Publication $publication the publication\n     *\n     * @return self\n     */\n    public function setPublication(\\Newscoop\\Entity\\Publication $publication)\n    {\n        $this->publication = $publication;\n\n        return $this;\n    }\n\n    /**\n     * {@inheritdoc}\n     */\n    public function getRedirectUrisString()\n    {\n        return implode(', ', $this->redirectUris);\n    }\n\n    /**\n     * Add User to client\n     *\n     * @param Newscoop\\Entity\\User $user\n     *\n     * @return self\n     */\n    public function addUser(\\Newscoop\\Entity\\User $user)\n    {\n        $this->users->add($user);\n\n        return $this;\n    }\n\n    /**\n     * Get all Client users\n     *\n     * @return ArrayCollection\n     */\n    public function getUsers()\n    {\n        return $this->users;\n    }\n\n    /**\n     * Gets trusted status.\n     *\n     * @return boolean\n     */\n    public function getTrusted()\n    {\n        return $this->trusted;\n    }\n\n    /**\n     * Sets trusted status.\n     *\n     * @param boolean $trusted App status\n     *\n     * @return self\n     */\n    public function setTrusted($trusted)\n    {\n        $this->trusted = $trusted;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Entity/PublicApiResource.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Entity;\n\nuse FOS\\OAuthServerBundle\\Entity\\AccessToken as BaseAccessToken;\nuse Doctrine\\ORM\\Mapping as ORM;\n\n/**\n * @ORM\\Table(name=\"OAuthPublicApiResources\")\n * @ORM\\Entity()\n */\nclass PublicApiResource\n{\n\t/**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"integer\")\n     * @ORM\\GeneratedValue(strategy=\"AUTO\")\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(type=\"string\")\n     */\n    protected $resource;\n\n\n    /**\n     * Gets the value of id.\n     *\n     * @return mixed\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n    \n    /**\n     * Sets the value of id.\n     *\n     * @param mixed $id the id\n     *\n     * @return self\n     */\n    public function setId($id)\n    {\n        $this->id = $id;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of resources.\n     *\n     * @return mixed\n     */\n    public function getResource()\n    {\n        return $this->resource;\n    }\n    \n    /**\n     * Sets the value of resources.\n     *\n     * @param mixed $resources the resources\n     *\n     * @return self\n     */\n    public function setResource($resource)\n    {\n        $this->resource = $resource;\n\n        return $this;\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Entity/RefreshToken.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Entity;\n\nuse FOS\\OAuthServerBundle\\Entity\\RefreshToken as BaseRefreshToken;\nuse Doctrine\\ORM\\Mapping as ORM;\nuse Symfony\\Component\\Security\\Core\\User\\UserInterface;\n\n/**\n * @ORM\\Table(name=\"OAuthRefreshToken\")\n * @ORM\\Entity()\n */\nclass RefreshToken extends BaseRefreshToken\n{\n    /**\n     * @ORM\\Id\n     * @ORM\\Column(type=\"integer\")\n     * @ORM\\GeneratedValue(strategy=\"AUTO\")\n     */\n    protected $id;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"\\Newscoop\\GimmeBundle\\Entity\\Client\")\n     * @ORM\\JoinColumn(nullable=false)\n     * @var Newscoop\\GimmeBundle\\Entity\\Client\n     */\n    protected $client;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"\\Newscoop\\Entity\\Publication\")\n     * @ORM\\JoinColumn(name=\"IdPublication\", referencedColumnName=\"Id\")\n     * @var Newscoop\\Entity\\Publication\n     */\n    protected $publication;\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\Entity\\User\")\n     * @ORM\\JoinColumn(referencedColumnName=\"Id\")\n     * @var UserInterface\n     */\n    protected $user;\n\n    /**\n     * Gets the value of user.\n     *\n     * @return \\Newscoop\\Entity\\User\n     */\n    public function getUser()\n    {\n        return $this->user;\n    }\n\n    /**\n     * Sets the value of user.\n     *\n     * @param \\Newscoop\\Entity\\User $user the user\n     *\n     * @return self\n     */\n    public function setUser(UserInterface $user)\n    {\n        $this->user = $user;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of id.\n     *\n     * @return mixed\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Sets the value of id.\n     *\n     * @param mixed $id the id\n     *\n     * @return self\n     */\n    public function setId($id)\n    {\n        $this->id = $id;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of client.\n     *\n     * @return Newscoop\\GimmeBundle\\Entity\\Client\n     */\n    public function getClient()\n    {\n        return $this->client;\n    }\n    \n    /**\n     * Sets the value of client.\n     *\n     * @param Newscoop\\GimmeBundle\\Entity\\Client $client the client\n     *\n     * @return self\n     */\n    public function setClient(\\FOS\\OAuthServerBundle\\Model\\ClientInterface $client)\n    {\n        $this->client = $client;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of publication.\n     *\n     * @return Newscoop\\Entity\\Publication\n     */\n    public function getPublication()\n    {\n        return $this->publication;\n    }\n    \n    /**\n     * Sets the value of publication.\n     *\n     * @param Newscoop\\Entity\\Publication $publication the publication\n     *\n     * @return self\n     */\n    public function setPublication(\\Newscoop\\Entity\\Publication $publication)\n    {\n        $this->publication = $publication;\n\n        return $this;\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/EventListener/AllowOriginListener.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\GimmeBundle\\EventListener;\n\nuse Symfony\\Component\\HttpKernel\\Event\\FilterResponseEvent;\nuse Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Symfony\\Component\\HttpKernel\\HttpKernelInterface;\nuse Newscoop\\Gimme\\Json;\n\n/**\n * Add Access-Control-Allow-Origin header to response.\n */\nclass AllowOriginListener\n{\n    protected $container;\n\n    public function __construct($container)\n    {\n        $this->container = $container;\n    }\n\n    public function onResponse(FilterResponseEvent $event)\n    {\n        if (HttpKernelInterface::MASTER_REQUEST !== $event->getRequestType()) {\n            return;\n        }\n\n        $response = $event->getResponse();\n        $request = $event->getRequest();\n\n        // HACK: revert exception status code to main request (i have no idea why it's chnaged to 500)\n        if (is_array($content = json_decode($response->getContent(), true))) {\n            if (array_key_exists('errors', $content)) {\n                if (isset($content['errors'][0]['code'])) {\n                    $response->setStatusCode($content['errors'][0]['code'], $content['errors'][0]['message']);\n                }\n            }\n        }\n\n        if (!$this->container->hasParameter('newscoop.gimme.allow_origin')) {\n            return false;\n        }\n\n        $allowedHosts = $this->container->getParameter('newscoop.gimme.allow_origin');\n\n        if (count($allowedHosts) == 0) {\n            return false;\n        }\n\n        $allowedMethods = array('POST', 'GET', 'PUT', 'DELETE', 'LINK', 'UNLINK', 'PATCH', 'OPTIONS');\n        if (preg_match('/Firefox/', $request->headers->get('user-agent'))) {\n            foreach ($allowedMethods as $method) {\n                $allowedMethods[] = ucfirst(strtolower($method));\n            }\n        }\n        $response->headers->set('Access-Control-Allow-Methods', implode(', ', $allowedMethods));\n\n        $response->headers->set('Access-Control-Expose-Headers', 'X-Location, X-Debug');\n\n        if (in_array('*', $allowedHosts)) {\n            $response->headers->set('Access-Control-Allow-Origin', '*');\n        } else {\n            foreach ($allowedHosts as $host) {\n                if ($request->server->get('HTTP_ORIGIN') == $host) {\n                    $response->headers->set('Access-Control-Allow-Origin', $host);\n                }\n            }\n        }\n\n        $event->setResponse($response);\n    }\n\n    /**\n     * @param GetResponseEvent $event\n     */\n    public function onKernelRequest(GetResponseEvent $event)\n    {\n        $request = $event->getRequest();\n        $response = new Response();\n\n        if ($request->getMethod() == 'OPTIONS') {\n            $response->headers->set('Access-Control-Allow-Headers', $request->headers->get('Access-Control-Request-Headers'));\n            $event->setResponse($response);\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/EventListener/ExceptionListener.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\GimmeBundle\\EventListener;\n\nuse Symfony\\Component\\HttpKernel\\Log\\DebugLoggerInterface;\nuse Symfony\\Component\\HttpKernel\\Event\\GetResponseForExceptionEvent;\nuse Symfony\\Component\\HttpKernel\\HttpKernelInterface;\nuse Symfony\\Component\\Debug\\Exception\\FlattenException;\nuse Symfony\\Component\\HttpKernel\\EventListener\\ExceptionListener as SymfonyExceptionListener;\n\n/**\n * ExceptionListener.\n *\n * @author Fabien Potencier <fabien@symfony.com>\n */\nclass ExceptionListener extends SymfonyExceptionListener\n{\n\n    public function onKernelException(GetResponseForExceptionEvent $event)\n    {\n        static $handling;\n\n        if (true === $handling) {\n            return false;\n        }\n\n        $handling = true;\n        $exception = $event->getException();\n        $request = $event->getRequest();\n        $this->logException($exception, sprintf('Uncaught PHP Exception %s: \"%s\" at %s line %s', get_class($exception), $exception->getMessage(), $exception->getFile(), $exception->getLine()));\n\n        $attributes = array(\n            '_controller' => $this->controller,\n            'exception'   => FlattenException::create($exception),\n            'logger'      => $this->logger instanceof DebugLoggerInterface ? $this->logger : null,\n            // keep for BC -- as $format can be an argument of the controller callable\n            // see src/Symfony/Bundle/TwigBundle/Controller/ExceptionController.php\n            // @deprecated in 2.4, to be removed in 3.0\n            'format'      => $request->getRequestFormat(),\n        );\n\n        $request = $request->duplicate(null, null, $attributes);\n        $request->setMethod($event->getRequest()->getMethod());\n\n        try {\n            $response = $event->getKernel()->handle($request, HttpKernelInterface::SUB_REQUEST, true);\n        } catch (\\Exception $e) {\n            $this->logException($exception, sprintf('Exception thrown when handling an exception (%s: %s)', get_class($e), $e->getMessage()), false);\n\n            // set handling to false otherwise it wont be able to handle further more\n            $handling = false;\n\n            // re-throw the exception from within HttpKernel as this is a catch-all\n            return;\n        }\n\n        $event->setResponse($response);\n\n        $handling = false;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/EventListener/FormatJsonResponseListener.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\GimmeBundle\\EventListener;\n\nuse Symfony\\Component\\HttpKernel\\Event\\FilterResponseEvent;\nuse Symfony\\Component\\HttpKernel\\HttpKernelInterface;\nuse Newscoop\\Gimme\\Json;\n\n/**\n * Preetify json response.\n */\nclass FormatJsonResponseListener\n{\n    public function onResponse(FilterResponseEvent $event)\n    {\n        if (HttpKernelInterface::MASTER_REQUEST !== $event->getRequestType()) {\n            return;\n        }\n\n        $request = $event->getRequest();\n        $route = $request->attributes->get('_route');\n        if (strpos($route, 'newscoop_gimme_') === false) {\n            return;\n        }\n\n        if (APPLICATION_ENV === 'development' || APPLICATION_ENV === 'dev' || $request->query->get('pretty_json', false) == true) {\n            $response = $event->getResponse();\n            $responseData = $event->getResponse()->getContent();\n            $response->setContent(Json::indent($responseData));\n            $event->setResponse($response);\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/EventListener/LinkRequestListener.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\GimmeBundle\\EventListener;\n\nuse Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent;\nuse Symfony\\Component\\HttpKernel\\Controller\\ControllerResolverInterface;\nuse Symfony\\Component\\Routing\\Matcher\\UrlMatcherInterface;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpKernel\\HttpKernelInterface;\nuse Symfony\\Component\\HttpKernel\\KernelEvents;\nuse Symfony\\Component\\HttpKernel\\Event\\FilterControllerEvent;\n\nclass LinkRequestListener\n{\n    /**\n     * @var ControllerResolverInterface\n     */\n    protected $resolver;\n    protected $urlMatcher;\n\n    /**\n     * @param ControllerResolverInterface $controllerResolver The 'controller_resolver' service\n     * @param UrlMatcherInterface         $urlMatcher         The 'router' service\n     */\n    public function __construct(ControllerResolverInterface $controllerResolver, UrlMatcherInterface $urlMatcher)\n    {\n        $this->resolver = $controllerResolver;\n        $this->urlMatcher = $urlMatcher;\n    }\n\n    /**\n     * @param GetResponseEvent $event\n     */\n    public function onKernelRequest(GetResponseEvent $event)\n    {\n        if (!$event->getRequest()->headers->has('link')) {\n            return;\n        }\n\n        $links  = array();\n        $header = $event->getRequest()->headers->get('link');\n\n        /*\n         * Due to limitations, multiple same-name headers are sent as comma\n         * separated values.\n         *\n         * This breaks those headers into Link headers following the format\n         * http://tools.ietf.org/html/rfc2068#section-19.6.2.4\n         */\n        while (preg_match('/^((?:[^\"]|\"[^\"]*\")*?),/', $header, $matches)) {\n            $header  = trim(substr($header, strlen($matches[0])));\n            $links[] = $matches[1];\n        }\n\n        if ($header) {\n            $links[] = $header;\n        }\n\n        $requestMethod = $this->urlMatcher->getContext()->getMethod();\n\n        // The controller resolver needs a request to resolve the controller.\n        $stubRequest = new Request();\n\n        foreach ($links as $idx => $link) {\n            // Force the GET method to avoid the use of the\n            // previous method (LINK/UNLINK)\n            $this->urlMatcher->getContext()->setMethod('GET');\n\n            $linkParams = explode(';', trim($link));\n            $resourceType = null;\n            if (count($linkParams) > 1) {\n                $resourceType = trim(preg_replace('/<|>/', '', $linkParams[1]));\n                $resourceType = str_replace(\"\\\"\", \"\", str_replace(\"rel=\", \"\", $resourceType));\n            }\n            $resource   = array_shift($linkParams);\n            $resource   = preg_replace('/<|>/', '', $resource);\n            $tempRequest = Request::create($resource);\n\n            try {\n                $route = $this->urlMatcher->match($tempRequest->getRequestUri());\n            } catch (\\Exception $e) {\n                // If we don't have a matching route we return the original Link header\n                continue;\n            }\n\n            if (strpos($route['_route'], 'newscoop_gimme_') === false) {\n                return;\n            }\n\n            $stubRequest->attributes->replace($route);\n            $stubRequest->server = $event->getRequest()->server;\n            if (false === $controller = $this->resolver->getController($stubRequest)) {\n                continue;\n            }\n\n            $subEvent = new FilterControllerEvent($event->getKernel(), $controller, $stubRequest, HttpKernelInterface::SUB_REQUEST);\n            $kernelSubEvent = new GetResponseEvent($event->getKernel(), $stubRequest, HttpKernelInterface::SUB_REQUEST);\n            $event->getDispatcher()->dispatch(KernelEvents::REQUEST, $kernelSubEvent);\n            $event->getDispatcher()->dispatch(KernelEvents::CONTROLLER, $subEvent);\n            $controller = $subEvent->getController();\n\n            $arguments = $this->resolver->getArguments($stubRequest, $controller);\n\n            try {\n                $result = call_user_func_array($controller, $arguments);\n                // Our api returns objects for single resources\n                if (!is_object($result)) {\n                    continue;\n                }\n                $links[$idx] = array(\n                    'object' => $result,\n                    'resourceType' => $resourceType\n                );\n            } catch (\\Exception $e) {\n                $links[$idx] = array(\n                    'object' => $e,\n                    'resourceType' => 'exception'\n                );\n\n                continue;\n            }\n        }\n\n        $event->getRequest()->attributes->set('links', $links);\n        $this->urlMatcher->getContext()->setMethod($requestMethod);\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/EventListener/OAuthEventListener.php",
    "content": "<?php\n\nnamespace Newscoop\\GimmeBundle\\EventListener;\n\nuse FOS\\OAuthServerBundle\\Event\\OAuthEvent;\n\nclass OAuthEventListener\n{\n    private $em;\n\n    public function __construct($em)\n    {\n        $this->em = $em;\n    }\n\n    public function onPreAuthorizationProcess(OAuthEvent $event)\n    {\n        if ($event->getClient()->getTrusted()) {\n            $event->setAuthorizedClient(true);\n\n            return true;\n        }\n\n        if ($user = $this->getUser($event)) {\n            $event->setAuthorizedClient(\n                $user->hasClient($event->getClient())\n            );\n        }\n    }\n\n    public function onPostAuthorizationProcess(OAuthEvent $event)\n    {\n        if ($event->isAuthorizedClient()) {\n            if (null !== $client = $event->getClient()) {\n                $user = $this->getUser($event);\n                $user->addClient($client);\n                $client->addUser($user);\n                $this->em->persist($user);\n                $this->em->persist($client);\n                $this->em->flush();\n            }\n        }\n    }\n\n    protected function getUser(OAuthEvent $event)\n    {\n        return $event->getUser();\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/EventListener/PaginationExtraDataSubscriber.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\EventListener;\n\nuse Symfony\\Component\\EventDispatcher\\EventSubscriberInterface;\nuse Knp\\Component\\Pager\\Event\\AfterEvent;\nuse Newscoop\\Gimme\\PaginatorService;\n\n/**\n * Collect data form paginator and pass them to Newscoop\\Gimme\\PaginatorService\n */\nclass PaginationExtraDataSubscriber implements EventSubscriberInterface\n{\n    protected $paginatorService;\n\n    public function __construct(PaginatorService $paginatorService)\n    {\n        $this->paginatorService = $paginatorService;\n    }\n\n    public function after(AfterEvent $event)\n    {\n        $paginatorData = $event->getPaginationView()->getPaginationData();\n        $usedRoute = $event->getPaginationView()->getRoute();\n        $this->paginatorService\n            ->setUsedRoute($usedRoute)\n            ->setPaginationData($paginatorData);\n    }\n\n    public static function getSubscribedEvents()\n    {\n        return array(\n            'knp_pager.after' => array('after', 1)\n        );\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/EventListener/PaginationListener.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\EventListener;\n\nuse Symfony\\Component\\HttpKernel\\HttpKernelInterface;\nuse Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent;\nuse Symfony\\Component\\HttpFoundation\\Session\\Session;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Newscoop\\Gimme\\Pagination;\nuse Newscoop\\Gimme\\PartialResponse;\nuse Newscoop\\Gimme\\PaginatorService;\n\n/**\n * Get parameters from request and set Pagination and PartialResponse objects to session\n */\nclass PaginationListener\n{\n    /**\n     * Session object\n     * @var Session\n     */\n    protected $session;\n\n    /**\n     * Paginator service object\n     * @var PaginatorService\n     */\n    protected $paginatorService;\n\n    /**\n     * Construct PaginationListener object\n     * @param PaginatorService $paginatorService PaginationService object\n     */\n    public function __construct(PaginatorService $paginatorService)\n    {\n        $this->paginatorService = $paginatorService;\n    }\n\n    /**\n     * Get data from request and create Pagination and PartialResponse events.\n     * @param  GetResponseEvent $event Event object with request\n     */\n    public function onRequest(GetResponseEvent $event)\n    {\n        if (HttpKernelInterface::MASTER_REQUEST !== $event->getRequestType()) {\n            return;\n        }\n\n        $request = $event->getRequest();\n        $pagination = new Pagination();\n        $partialResponse = new PartialResponse();\n\n        if ($request->query->has('page')) {\n            $pagination->setPage($request->query->get('page'));\n        }\n\n        if ($request->query->has('sort')) {\n            $pagination->setSort($request->query->get('sort'));\n        }\n\n        if ($request->query->has('items_per_page')) {\n            $pagination->setItemsPerPage($request->query->get('items_per_page'));\n        }\n\n        if ($request->query->has('fields')) {\n            $partialResponse->setFields($request->query->get('fields'));\n        }\n\n        $this->paginatorService->setPagination($pagination);\n        $this->paginatorService->setPartialResponse($partialResponse);\n\n        /**\n         * Append all used parameters from get and post\n         */\n        $this->paginatorService->setUsedRouteParams(array_merge(\n            $request->query->all(),\n            $request->request->all()\n        ));\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/EventListener/PublicResourcesListener.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\EventListener;\n\nuse Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent;\nuse OAuth2\\OAuth2;\nuse OAuth2\\OAuth2AuthenticateException;\n\n\nclass PublicResourcesListener\n{\n    protected $container;\n\n    public function __construct($container)\n    {\n        $this->container = $container;\n    }\n\n    public function onRequest(GetResponseEvent $event)\n    {\n        $request = $event->getRequest();\n        $route = $request->attributes->get('_route');\n        if (strpos($route, 'newscoop_gimme_') === false) {\n            return;\n        }\n\n        $unprotected = $this->container->get('em')->getRepository('\\Newscoop\\GimmeBundle\\Entity\\PublicApiResource')->findOneByResource($route);\n        $routesArray = array(\n            'newscoop_gimme_users_login',\n            'newscoop_gimme_users_logout',\n            'newscoop_gimme_users_register',\n            'newscoop_gimme_users_restorepassword',\n            'newscoop_gimme_users_getuseraccesstoken',\n        );\n\n        if ($request->getMethod() == 'POST' && $route == 'newscoop_gimme_comments_createcomment') {\n            $publicationService = $this->container->get('newscoop.publication_service');\n            $publication = $publicationService->getPublication();\n            if ($publication->getPublicCommentsEnabled()) {\n                $routesArray[] = 'newscoop_gimme_comments_createcomment';\n            }\n        }\n\n\n        if (in_array($route, $routesArray)) {\n            $unprotected = true;\n        }\n\n        if (!$unprotected &&\n            strpos($route, 'newscoop_gimme_') !== false &&\n            (false === $this->container->get('security.context')->isGranted('IS_AUTHENTICATED_FULLY') ||\n            false === $this->container->get('security.context')->isGranted('IS_AUTHENTICATED_REMEMBERED'))\n         ) {\n            throw new OAuth2AuthenticateException(OAuth2::HTTP_UNAUTHORIZED,\n                OAuth2::TOKEN_TYPE_BEARER,\n                $this->container->get('fos_oauth_server.server')->getVariable(OAuth2::CONFIG_WWW_REALM),\n                'OAuth2 authentication required'\n            );\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/EventListener/QuerySubscriber.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\EventListener;\n\nuse Symfony\\Component\\EventDispatcher\\EventSubscriberInterface;\nuse Knp\\Component\\Pager\\Event\\ItemsEvent;\nuse Knp\\Component\\Pager\\Event\\Subscriber\\Paginate\\Doctrine\\ORM\\Query\\Helper as QueryHelper;\nuse Doctrine\\ORM\\Query;\n\nclass QuerySubscriber implements EventSubscriberInterface\n{\n    protected $paginationService;\n\n    public function __construct($paginationService)\n    {\n        $this->paginationService = $paginationService;\n    }\n\n    public function serveQuery(ItemsEvent $event)\n    {\n        $pagination = $this->paginationService->getPagination();\n        $partialResponse = $this->paginationService->getPartialResponse();\n\n        if ($event->target instanceof Query) {\n            if ($pagination->getSort()) {\n                $event->target\n                    ->setHint('newscoop.api.sort', $pagination->getSort());\n\n                QueryHelper::addCustomTreeWalker($event->target, 'Newscoop\\GimmeBundle\\EventListener\\Sortable\\Doctrine\\ORM\\Query\\OrderByWalker');\n            }\n\n            if ($partialResponse->getFields()) {\n                $event->target\n                    ->setHint('newscoop.api.fields', $partialResponse->getFields());\n\n                QueryHelper::addCustomTreeWalker($event->target, 'Newscoop\\GimmeBundle\\EventListener\\Selectable\\Doctrine\\ORM\\Query\\SelectWalker');\n            }\n        }\n    }\n\n    public static function getSubscribedEvents()\n    {\n        return array(\n            'knp_pager.items' => array('serveQuery', 2)\n        );\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/EventListener/Selectable/Doctrine/ORM/Query/SelectWalker.php",
    "content": "<?php\n\nnamespace Newscoop\\GimmeBundle\\EventListener\\Selectable\\Doctrine\\ORM\\Query;\n\nuse Doctrine\\ORM\\Query\\TreeWalkerAdapter;\nuse Doctrine\\ORM\\Query\\AST\\SelectStatement;\nuse Doctrine\\ORM\\Query\\AST\\PathExpression;\nuse Doctrine\\ORM\\Query\\AST\\SelectExpression;\n\n/**\n * Select Query TreeWalker for partial response functionality\n */\nclass SelectWalker extends TreeWalkerAdapter\n{\n    /**\n     * Walks down a SelectStatement AST node, modifying it to\n     * select fields like requested by url\n     *\n     * @param SelectStatement $AST\n     * @return void\n     */\n    public function walkSelectStatement(SelectStatement $AST)\n    {\n        $query = $this->_getQuery();\n        $fields = $query->getHint('newscoop.api.fields');\n        $selectItems = array();\n\n        $parent = null;\n        $alias = null;\n        foreach ($this->_getQueryComponents() AS $dqlAlias => $qComp) {\n            if ($qComp['parent'] === null && $qComp['nestingLevel'] == 0) {\n                $parent = $qComp;\n                $alias = $dqlAlias;\n                break;\n            }\n        }\n\n        $components = $this->_getQueryComponents();\n        foreach ($fields as $field) {\n            $entityData = $this->findAliasForField($field);\n            $orginalField = $field;\n            $realField = \\Newscoop\\Gimme\\PropertyMatcher::match($entityData[1], $field);\n\n            if ($field != $realField) {\n                $entityData = $this->findAliasForField($realField);\n                $field = $realField;\n            }\n\n            if ($alias !== false) {\n                if (!array_key_exists($alias, $components)) {\n                    throw new \\UnexpectedValueException(\"There is no component aliased by [{$alias}] in the given Query\");\n                }\n                $meta = $components[$alias];\n\n                if ($meta['metadata']->hasAssociation($orginalField)) {\n                    throw new \\UnexpectedValueException(\"Associations (field {$orginalField}) in partial response are not yet implemented\");\n                }\n\n                if (!$meta['metadata']->hasField($field)) {\n                    throw new \\UnexpectedValueException(\"There is no such field [{$field}] in the given Query component, aliased by [$alias]\");\n                }\n            } else {\n                if (!array_key_exists($field, $components)) {\n                    throw new \\UnexpectedValueException(\"There is no component field [{$field}] in the given Query\");\n                }\n            }\n\n            if ($alias !== false) {\n                $pathExpression = new PathExpression(PathExpression::TYPE_STATE_FIELD | PathExpression::TYPE_SINGLE_VALUED_ASSOCIATION, $alias, $field);\n                $pathExpression->type = PathExpression::TYPE_STATE_FIELD;\n            } else {\n                $pathExpression = $field;\n            }\n\n            $simpleSelectExpression = new SelectExpression($pathExpression, $orginalField);\n            $selectItems[] = $simpleSelectExpression;\n        }\n\n        $AST->selectClause->selectExpressions = $selectItems;\n    }\n\n    /**\n     * Find alias for choosen field\n     * @param  string $field Field name\n     * @return array        array with alias or field name and class namespace\n     */\n    private function findAliasForField($field)\n    {\n        $components = $this->_getQueryComponents();\n\n        foreach (array_keys($components) as $alias) {\n            $meta = $components[$alias];\n            if ($meta['metadata']->hasField($field)) {\n                return array($alias, $meta['metadata']->name);\n            } else {\n                return array($field, $meta['metadata']->name);\n            }\n        }\n\n        return array($field, $components['metadata']->name);\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/EventListener/SerializerSubscriber.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\EventListener;\n\nuse Symfony\\Component\\EventDispatcher\\EventSubscriberInterface;\nuse Symfony\\Component\\HttpKernel\\Event\\FilterControllerEvent;\n\n/**\n * Interact with serilizer events\n */\nclass SerializerSubscriber implements EventSubscriberInterface\n{\n    private $container;\n\n    /**\n     * @param $container\n     */\n    public function __construct($container)\n    {\n        $this->container = $container;\n    }\n\n    /**\n     * @return array\n     */\n    public static function getSubscribedEvents()\n    {\n        return array(\n            'kernel.controller' => array('onController', -128)\n        );\n    }\n\n    /**\n     * @param FilterControllerEvent $event\n     */\n    public function onController(FilterControllerEvent $event)\n    {\n        $request = $this->container->get('request');\n        if ($configuration = $request->attributes->get('_view')) {\n            if ($request->query->has('expand')) {\n                $configuration->setSerializerGroups(array('details'));\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/EventListener/Sortable/Doctrine/ORM/Query/OrderByWalker.php",
    "content": "<?php\n\nnamespace Newscoop\\GimmeBundle\\EventListener\\Sortable\\Doctrine\\ORM\\Query;\n\nuse Doctrine\\ORM\\Query\\TreeWalkerAdapter,\n    Doctrine\\ORM\\Query\\AST\\SelectStatement,\n    Doctrine\\ORM\\Query\\AST\\PathExpression,\n    Doctrine\\ORM\\Query\\AST\\OrderByItem,\n    Doctrine\\ORM\\Query\\AST\\OrderByClause;\n\n/**\n * OrderBy Query TreeWalker for Sortable functionality\n * in doctrine paginator\n */\nclass OrderByWalker extends TreeWalkerAdapter\n{\n    /**\n     * Walks down a SelectStatement AST node, modifying it to\n     * sort the query like requested by url\n     *\n     * @param SelectStatement $AST\n     * @return void\n     */\n    public function walkSelectStatement(SelectStatement $AST)\n    {\n        $query = $this->_getQuery();\n        $sort = $query->getHint('newscoop.api.sort');\n        $orderByItems = array();\n\n        $components = $this->_getQueryComponents();\n        foreach ($sort as $field => $direction) {\n            $entityData = $this->findAliasForField($field);\n            $realField = \\Newscoop\\Gimme\\PropertyMatcher::match($entityData[1], $field);\n\n            if ($field != $realField) {\n                $entityData = $this->findAliasForField($realField);\n                $field = $realField;\n            }\n\n            $alias = $entityData[0];\n\n            if ($alias !== false) {\n                if (!array_key_exists($alias, $components)) {\n                    throw new \\UnexpectedValueException(\"There is no component aliased by [{$alias}] in the given Query\");\n                }\n                $meta = $components[$alias];\n                if (!$meta['metadata']->hasField($field)) {\n                    throw new \\UnexpectedValueException(\"There is no such field [{$field}] in the given Query component, aliased by [$alias]\");\n                }\n            } else {\n                if (!array_key_exists($field, $components)) {\n                    throw new \\UnexpectedValueException(\"There is no component field [{$field}] in the given Query\");\n                }\n            }\n\n            if ($alias !== false) {\n                $pathExpression = new PathExpression(PathExpression::TYPE_STATE_FIELD, $alias, $field);\n                $pathExpression->type = PathExpression::TYPE_STATE_FIELD;\n            } else {\n                $pathExpression = $field;\n            }\n\n            $orderByItem = new OrderByItem($pathExpression);\n            $orderByItem->type = $direction;\n            $orderByItems[] = $orderByItem;\n        }\n\n        $AST->orderByClause = new OrderByClause($orderByItems);\n    }\n\n    /**\n     * Find alias for choosen field\n     * @param  string $field Field name\n     * @return array         array with alias or field name and class namespace\n     */\n    private function findAliasForField($field)\n    {\n        $components = $this->_getQueryComponents();\n\n        foreach (array_keys($components) as $alias) {\n            $meta = $components[$alias];\n            if ($meta['metadata']->hasField($field)) {\n                return array($alias, $meta['metadata']->name);\n            } else {\n                 return array($field, $meta['metadata']->name);\n            }\n        }\n\n        return array($field, $components['metadata']->name);\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Form/DataTransformer/StringToArrayTransformer.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Form\\DataTransformer;\n\nuse Symfony\\Component\\Form\\DataTransformerInterface;\n\nclass StringToArrayTransformer implements DataTransformerInterface\n{\n    /**\n     * Transforms array to string with implode.\n     *\n     * @param  array $array\n     * \n     * @return string\n     */\n    public function transform($array)\n    {\n        return implode(',', $array);\n    }\n\n    /**\n     * \n     * Transforms string to array with explode and coma as delimiter.\n     *\n     * @param  array $string\n     *\n     * @return array\n     */\n    public function reverseTransform($string)\n    {\n        return explode(',', $string);\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Form/Handler/AuthorizeFormHandler.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Form\\Handler;\n\nuse Symfony\\Component\\Form\\Form;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Newscoop\\GimmeBundle\\Form\\Model\\Authorize;\nuse Symfony\\Component\\Security\\Core\\SecurityContextInterface;\nuse OAuth2\\OAuth2;\nuse OAuth2\\OAuth2ServerException;\nuse OAuth2\\OAuth2RedirectException;\nuse FOS\\OAuthServerBundle\\Form\\Handler\\AuthorizeFormHandler as BaseAuthorizeFormHandler;\n\nclass AuthorizeFormHandler extends BaseAuthorizeFormHandler\n{\n    protected $request;\n    protected $form;\n    protected $context;\n    protected $oauth2;\n\n    public function __construct(Form $form, Request $request, SecurityContextInterface $context, OAuth2 $oauth2)\n    {\n        parent::__construct($form, $request);\n        $this->context = $context;\n        $this->oauth2 = $oauth2;\n    }\n\n    public function isAccepted()\n    {\n        return $this->form->getData()->getAllowAccess();\n    }\n\n    public function isRejected()\n    {\n        return !$this->form->getData()->getAllowAccess();\n    }\n\n    public function process()\n    {\n        $this->form->setData(new Authorize(\n            $this->request->request->has('accepted'),\n            $this->request->query->all()\n        ));\n\n        if ($this->request->getMethod() == 'POST') {\n            $this->form->handleRequest($this->request);\n            if ($this->form->isValid()) {\n                try {\n                    $user = $this->context->getToken()->getUser();\n\n                    return $this->oauth2->finishClientAuthorization(true, $user, $this->request, null);\n                } catch (OAuth2ServerException $e) {\n                    return $e->getHttpResponse();\n                }\n            }\n        }\n\n        return false;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Form/Model/Authorize.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Form\\Model;\n\nclass Authorize\n{\n    protected $allowAccess;\n\n    public function getAllowAccess()\n    {\n        return $this->allowAccess;\n    }\n\n    public function setAllowAccess($allowAccess)\n    {\n        $this->allowAccess = $allowAccess;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Form/Type/ArticleFieldsType.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\nuse Symfony\\Component\\Form\\FormEvent;\nuse Symfony\\Component\\Form\\FormEvents;\nuse ArticleTypeField;\n\nclass ArticleFieldsType extends AbstractType\n{\n    private $articleData;\n\n    public function __construct($articleData = null)\n    {\n        $this->articleData = $articleData;\n    }\n\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        if (is_null($this->articleData)) {\n            throw new \\LogicException(\n                'The ArticleFieldsType cannot be used without article data!'\n            );\n        }\n\n        $articleData = $this->articleData;\n        $builder->addEventListener(\n            FormEvents::PRE_SET_DATA,\n            function (FormEvent $event) use ($articleData) {\n                $form = $event->getForm();\n\n                foreach ($articleData->getUserDefinedColumns(true) as $articleTypeField) {\n                    switch ($articleTypeField->getType()) {\n                        case ArticleTypeField::TYPE_TEXT:\n                        case ArticleTypeField::TYPE_COMPLEX_DATE:\n                        case ArticleTypeField::TYPE_DATE:\n                            $form->add(substr($articleTypeField->getName(), 1), 'text', array(\n                                'required' => false,\n                            ));\n                            break;\n\n                        case ArticleTypeField::TYPE_LONGTEXT:\n                        case ArticleTypeField::TYPE_BODY:\n                            $form->add(substr($articleTypeField->getName(), 1), 'textarea', array(\n                                'required' => false,\n                            ));\n                            break;\n\n                        case ArticleTypeField::TYPE_TOPIC:\n                        case ArticleTypeField::TYPE_NUMERIC:\n                            $form->add(substr($articleTypeField->getName(), 1), 'integer', array(\n                                'required' => false,\n                            ));\n                            break;\n\n                        case ArticleTypeField::TYPE_SWITCH:\n                            $form->add(substr($articleTypeField->getName(), 1), 'integer', array(\n                                'required' => false,\n                            ));\n                            break;\n                    }\n                }\n            }\n        );\n    }\n\n    public function getName()\n    {\n        return 'fields';\n    }\n\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {\n        $resolver->setDefaults(array(\n            'csrf_protection'   => false,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Form/Type/ArticleType.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\GimmeBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\n\nclass ArticleType extends AbstractType\n{\n    private $articleData;\n\n    public function __construct($articleData = null)\n    {\n        $this->articleData = $articleData;\n    }\n\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $builder\n        ->add('name', 'text', array(\n            'required' => true,\n        ))\n        ->add('language', 'text', array(\n            'required' => true,\n            'description' => 'Language identifier',\n        ))\n        ->add('publication', 'number', array(\n            'required' => true,\n            'description' => 'Publication identifier',\n        ))\n        ->add('issue', 'number', array(\n            'required' => false,\n            'description' => 'Issue identifier',\n        ))\n        ->add('section', 'number', array(\n            'required' => false,\n            'description' => 'Section identifier',\n        ))\n        ->add('comments_enabled', 'integer', array(\n            'required' => false,\n        ))\n        ->add('comments_locked', 'integer', array(\n            'required' => false,\n        ))\n        ->add('type', 'text', array(\n            'required' => true,\n            'description' => 'Article type (e.g. news)',\n        ))\n        ->add('onFrontPage', 'integer', array(\n            'required' => false,\n        ))\n        ->add('onSection', 'integer', array(\n            'required' => false,\n        ))\n        ->add('keywords', 'text', array(\n            'required' => false,\n        ));\n\n        if (!is_null($this->articleData)) {\n            $builder->add('fields', new ArticleFieldsType($this->articleData), array(\n                'required' => false,\n            ));\n        }\n    }\n\n    public function getName()\n    {\n        return 'article';\n    }\n\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {\n        $resolver->setDefaults(array(\n            'csrf_protection'   => false,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Form/Type/AttachmentType.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\nuse Symfony\\Component\\Validator\\Constraints as Assert;\n\nclass AttachmentType extends AbstractType\n{\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $builder->add('name', null, array(\n            'required' => false,\n        ));\n        $builder->add('description', null, array(\n            'required' => false,\n        ));\n        $builder->add('language', null, array(\n            'required' => false,\n        ));\n        $builder->add('attachment', 'file', array(\n            'constraints' => array(\n                new Assert\\File(),\n                new Assert\\NotNull()\n            )\n        ));\n    }\n\n    public function getName()\n    {\n        return 'attachment';\n    }\n\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {\n        $resolver->setDefaults(array(\n            'csrf_protection'   => false,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Form/Type/AuthorizeFormType.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\n\nclass AuthorizeFormType extends AbstractType\n{\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $builder->add('allowAccess', 'hidden', array(\n            'label' => 'Allow access',\n            'error_bubbling' => true\n        ));\n    }\n\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {\n        $resolver->setDefaults(array(\n            'data_class' => 'Newscoop\\GimmeBundle\\Form\\Model\\Authorize',\n            'csrf_protection'   => false\n        ));\n    }\n\n    public function getName()\n    {\n        return 'newscoop_gimme_oauth_authorize';\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Form/Type/ClientType.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Doctrine\\ORM\\EntityRepository;\nuse Newscoop\\GimmeBundle\\Form\\DataTransformer\\StringToArrayTransformer;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\n\nclass ClientType extends AbstractType\n{\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $transformer = new StringToArrayTransformer();\n        $builder->add('name', null, array(\n            'label' => 'api.form.client.label.name'\n        ));\n\n        $builder->add('publication', 'entity', array(\n            'class' => 'Newscoop\\Entity\\Publication',\n            'property' => 'name',\n            'query_builder' => function(EntityRepository $er) {\n                return $er->createQueryBuilder('p')\n                    ->orderBy('p.name', 'ASC');\n            },\n            'label' => 'api.form.client.label.publication'\n        ));\n\n        $builder->add(\n            $builder->create('redirectUris', 'text', array(\n                'label' => 'api.form.client.label.redirectUris'\n            ))\n            ->addModelTransformer($transformer)\n        );\n\n        $builder->add('trusted', 'checkbox', array(\n            'label' => 'api.form.client.label.trusted',\n            'required' => false\n        ));\n\n        $builder->add('save', 'submit', array(\n            'attr' => array('class' => 'btn btn-success pull-right'),\n            'label' => 'api.form.client.label.save'\n        ));\n    }\n\n    public function getName()\n    {\n        return 'client';\n    }\n\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {\n        $resolver->setDefaults(array(\n            'translation_domain' => 'api'\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Form/Type/CommentType.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @author Yorick Terweijden <yorick.terweijden@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\nuse Symfony\\Component\\Validator\\Constraints as Assert;\nuse Symfony\\Component\\Validator\\Constraints\\NotBlank;\n\nclass CommentType extends AbstractType\n{\n    private $patch;\n\n    public function __construct(array $options = array())\n    {\n        if (array_key_exists('patch', $options)) {\n            $this->patch = $options['patch'];\n        }\n    }\n\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $defaultRequired = true;\n        $constraints = array(\n            new NotBlank\n        );\n        \n        if ($this->patch) {\n            $defaultRequired = false;\n            $constraints = array();\n        }\n\n\n        $builder->add('subject', null, array(\n            'required' => false,\n        ));\n        $builder->add('message', null, array(\n            'required' => $defaultRequired,\n            'constraints'  => $constraints,\n        ));\n\n        $builder->add('name', null, array(\n            'required' => false,\n        ));\n\n        $builder->add('email', null, array(\n            'required' => false,\n        ));\n\n        $builder->add('parent', null, array(\n            'required' => false,\n        ));\n\n        $builder->add('recommended', 'integer', array(\n            'required' => false,\n        ));\n\n        $builder->add('status', null, array(\n            'required' => false,\n        ));\n    }\n\n    public function getName()\n    {\n        return 'comment';\n    }\n\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {\n        $resolver->setDefaults(array(\n            'csrf_protection'   => false,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Form/Type/ImageType.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\nuse Symfony\\Component\\Validator\\Constraints as Assert;\nuse Symfony\\Component\\Form\\FormEvent;\nuse Symfony\\Component\\Form\\FormEvents;\n\nclass ImageType extends AbstractType\n{\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $builder->add('description', null, array(\n            'required' => false,\n        ));\n        $builder->add('photographer', null, array(\n            'required' => false,\n        ));\n        $builder->add('photographer_url', null, array(\n            'required' => false,\n        ));\n        $builder->add('place', null, array(\n            'required' => false,\n        ));\n        $builder->add('image', 'file', array(\n            'constraints' => array(\n                new Assert\\File(),\n                new Assert\\NotNull()\n            )\n        ));\n\n        $builder->addEventListener(FormEvents::PRE_SET_DATA, function (FormEvent $event) use ($options) {\n            $image = $options['image'];\n            $form = $event->getForm();\n\n            $form->remove('image');\n\n            if ($image && null !== $image->getId()) {\n                $form->add('image', 'file', array(\n                    'required' => false\n                ));\n            } else {\n                $form->add('image', 'file', array(\n                    'constraints' => array(\n                        new Assert\\File(),\n                        new Assert\\NotNull()\n                    )\n                ));\n            }\n        });\n    }\n\n    public function getName()\n    {\n        return 'image';\n    }\n\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {\n        $resolver->setDefaults(array(\n            'csrf_protection'   => false,\n            'image' => null\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Form/Type/PlaylistType.php",
    "content": "<?php\n\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2015 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\GimmeBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\n\nclass PlaylistType extends AbstractType\n{\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $builder\n            ->add('name', 'text', array(\n                'required' => true,\n            ))\n            ->add('notes', 'text', array(\n                'required' => false,\n            ))\n            ->add('maxItems', 'integer', array(\n                'required' => false,\n            ));\n    }\n\n    public function getName()\n    {\n        return 'playlist';\n    }\n\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {\n        $resolver->setDefaults(array(\n            'csrf_protection' => false,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Form/Type/PublicResourcesType.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\n\nclass PublicResourcesType extends AbstractType\n{\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $builder->add('routes', 'choice', array(\n            'choices'   => $options['choices'],\n            'data'      => $options['data'],\n            'multiple'  => true,\n            'expanded'  => true,\n            'label' => 'api.form.PublicResources.label.routes'\n        ));\n\n\n        $builder->add('save', 'submit', array(\n            'attr' => array('class' => 'btn btn-success pull-right'),\n            'label' => 'api.form.PublicResources.label.save'\n        ));\n    }\n\n    public function getName()\n    {\n        return 'public_api_routes';\n    }\n\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {\n        $resolver->setDefaults(array(\n            'choices' => false,\n            'translation_domain' => 'api'\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Form/Type/SnippetFieldType.php",
    "content": "<?php\n/**\n * @package Newscoop\\GimmeBundle\n * @author Yorick Terweijden <yorick.terweijden@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\nuse Symfony\\Component\\Validator\\Constraints as Assert;\nuse Symfony\\Component\\Validator\\Constraints\\NotBlank;\nuse Symfony\\Component\\Form\\FormEvent;\nuse Symfony\\Component\\Form\\FormEvents;\n\nclass SnippetFieldType extends AbstractType\n{\n    private $patch;\n\n    public function __construct(array $options = array())\n    {\n        $this->patch = false;\n        if (array_key_exists('patch', $options)) {\n            $this->patch = $options['patch'];\n        }\n    }\n\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $defaultRequired = false;\n        $constraints = array();\n\n        $builder->addEventListener(\n            FormEvents::PRE_SET_DATA,\n            function (FormEvent $event) {\n                $form = $event->getForm();\n                $data = $event->getData();\n                $defaultRequired = false;\n                $constraints = array();\n                $fieldType = null;\n                if (!is_null($data)) {\n                    $fieldType = $data->getFieldType();\n                    $patch = (!is_null($this)) ? !$this->patch : false;\n                    if ($data->isRequired() && $patch) {\n                        $defaultRequired = true;\n                        $constraints = array(\n                            new NotBlank\n                        );\n                    }\n                }\n                $form->add('data', $fieldType, array(\n                    'required' => $defaultRequired,\n                    'constraints'  => $constraints,\n\n                ));\n            }\n        );\n    }\n\n    public function getName()\n    {\n        return 'snippetField';\n    }\n\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {\n        $resolver->setDefaults(array(\n            'csrf_protection'   => false,\n            'data_class' => 'Newscoop\\Entity\\Snippet\\SnippetField',\n        ));\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Form/Type/SnippetTemplateFieldType.php",
    "content": "<?php\n/**\n * @package Newscoop\\GimmeBundle\n * @author Yorick Terweijden <yorick.terweijden@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\nuse Symfony\\Component\\Validator\\Constraints as Assert;\nuse Symfony\\Component\\Validator\\Constraints\\NotBlank;\nuse Symfony\\Component\\Form\\FormEvent;\nuse Symfony\\Component\\Form\\FormEvents;\n\nclass SnippetTemplateFieldType extends AbstractType\n{\n    private $patch;\n\n    public function __construct(array $options = array())\n    {\n        $this->patch = false;\n        if (array_key_exists('patch', $options)) {\n            $this->patch = $options['patch'];\n        }\n    }\n\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $defaultRequired = true;\n        $constraints = array(\n            new NotBlank\n        );\n\n        if ($this->patch) {\n            $defaultRequired = false;\n            $constraints = array();\n        }\n\n        $builder->add('name', null, array(\n            'required' => $defaultRequired,\n            'constraints'  => $constraints,\n        ));\n\n        $builder->add('type', 'choice', array(\n            'choices' => array('integer' => 'integer', 'text' => 'text', 'textarea' => 'textarea', 'url' => 'url', 'boolean' => 'boolean'),\n            'required' => $defaultRequired,\n            'constraints'  => $constraints,\n        ));\n\n        $builder->add('scope', 'choice', array(\n            'choices' => array('frontend' => 'frontend', 'backend' => 'backend'),\n            'required' => $defaultRequired,\n            'constraints'  => $constraints,\n        ));\n\n        $builder->add('required', 'checkbox', array(\n            'required' => $defaultRequired,\n            'constraints'  => $constraints,\n        ));\n\n        $callback = function(FormEvent $event) {\n            if (null === $event->getData()) { // check if the Form's field is empty\n                if (is_bool($event->getForm()->getData())) { // check if it's a boolean\n                    if ($event->getForm()->getData()) {\n                        $event->setData('1');\n                    } else {\n                         $event->setData('0');\n                    }\n                } else { // set the data back\n                    $event->setData($event->getForm()->getData());\n                }\n            }\n        };\n\n        $builder->get('name')->addEventListener(FormEvents::PRE_SUBMIT, $callback);\n        $builder->get('type')->addEventListener(FormEvents::PRE_SUBMIT, $callback);\n        $builder->get('scope')->addEventListener(FormEvents::PRE_SUBMIT, $callback);\n        $builder->get('required')->addEventListener(FormEvents::PRE_SUBMIT, $callback);\n    }\n\n    public function getName()\n    {\n        return 'snippetField';\n    }\n\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {\n        $resolver->setDefaults(array(\n            'csrf_protection'   => false,\n            'data_class' => 'Newscoop\\Entity\\Snippet\\SnippetTemplate\\SnippetTemplateField',\n        ));\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Form/Type/SnippetTemplateType.php",
    "content": "<?php\n/**\n * @package Newscoop\\GimmeBundle\n * @author Yorick Terweijden <yorick.terweijden@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\nuse Symfony\\Component\\Validator\\Constraints as Assert;\nuse Symfony\\Component\\Validator\\Constraints\\NotBlank;\nuse Doctrine\\ORM\\EntityRepository;\nuse Symfony\\Component\\Form\\FormEvent;\nuse Symfony\\Component\\Form\\FormEvents;\n\nclass SnippetTemplateType extends AbstractType\n{\n    private $patch;\n\n    public function __construct(array $options = array())\n    {\n        $this->patch = false;\n        if (array_key_exists('patch', $options)) {\n            $this->patch = $options['patch'];\n        }\n    }\n\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $defaultRequired = true;\n        $constraints = array(\n            new NotBlank\n        );\n\n        if ($this->patch) {\n            $defaultRequired = false;\n            $constraints = array();\n        }\n\n        $builder->add('fields', 'collection', array(\n            'type' => new SnippetTemplateFieldType(array('patch'=>$this->patch)),\n            'required' => $defaultRequired,\n            'constraints' => $constraints,\n            'allow_add' => true\n        ));\n\n        $builder->add('name', 'text', array(\n            'required' => $defaultRequired,\n            'constraints'  => $constraints,\n        ));\n\n        $builder->add('templateCode', 'textarea', array(\n            'required' => $defaultRequired,\n            'constraints'  => $constraints,\n        ));\n\n        $builder->add('controller', 'text', array(\n            'required' => false,\n        ));\n\n        $builder->add('enabled', 'checkbox', array(\n            'required' => false,\n        ));\n\n        $builder->add('favourite', 'checkbox', array(\n            'required' => false,\n        ));\n\n        $builder->add('iconInactive', 'textarea', array(\n            'required' => false,\n        ));\n\n        $builder->add('iconActive', 'textarea', array(\n            'required' => false,\n        ));\n\n        $callback = function(FormEvent $event) {\n            if (null === $event->getData()) { // check if the Form's field is empty\n                if (is_bool($event->getForm()->getData())) { // check if it's a boolean\n                    if ($event->getForm()->getData()) {\n                        $event->setData('1');\n                    } else {\n                         $event->setData('0');\n                    }\n                } else { // set the data back\n                    $event->setData($event->getForm()->getData());\n                }\n            }\n        };\n\n        $builder->get('name')->addEventListener(FormEvents::PRE_SUBMIT, $callback);\n        $builder->get('templateCode')->addEventListener(FormEvents::PRE_SUBMIT, $callback);\n        $builder->get('controller')->addEventListener(FormEvents::PRE_SUBMIT, $callback);\n        $builder->get('enabled')->addEventListener(FormEvents::PRE_SUBMIT, $callback);\n        $builder->get('favourite')->addEventListener(FormEvents::PRE_SUBMIT, $callback);\n        $builder->get('iconInactive')->addEventListener(FormEvents::PRE_SUBMIT, $callback);\n        $builder->get('iconActive')->addEventListener(FormEvents::PRE_SUBMIT, $callback);\n\n    }\n\n    public function getName()\n    {\n        return 'snippetTemplate';\n    }\n\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {\n        $resolver->setDefaults(array(\n            'csrf_protection'   => false,\n            'data_class' => 'Newscoop\\Entity\\Snippet\\SnippetTemplate',\n        ));\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Form/Type/SnippetType.php",
    "content": "<?php\n/**\n * @package Newscoop\\GimmeBundle\n * @author Yorick Terweijden <yorick.terweijden@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\nuse Symfony\\Component\\Validator\\Constraints as Assert;\nuse Symfony\\Component\\Validator\\Constraints\\NotBlank;\nuse Doctrine\\ORM\\EntityRepository;\nuse Symfony\\Component\\Form\\FormEvent;\nuse Symfony\\Component\\Form\\FormEvents;\n\nclass SnippetType extends AbstractType\n{\n    private $patch;\n\n    public function __construct(array $options = array())\n    {\n        $this->patch = false;\n        if (array_key_exists('patch', $options)) {\n            $this->patch = $options['patch'];\n        }\n    }\n\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $defaultRequired = true;\n        $constraints = array(\n            new NotBlank\n        );\n        \n        if ($this->patch) {\n            $defaultRequired = false;\n            $constraints = array();\n        }\n\n        $builder->add('fields', 'collection', array(\n            'type' => new SnippetFieldType(array('patch'=>$this->patch)),\n            'required' => $defaultRequired,\n            'constraints' => $constraints,\n        ));\n\n        $builder->add('name', null, array(\n            'required' => $defaultRequired,\n            'constraints'  => $constraints,\n        ));\n\n        $builder->add('enabled', 'checkbox', array(\n            'required' => false,\n        ));\n\n        $callback = function(FormEvent $event) {\n            if (null === $event->getData()) { // check if the Form's field is empty\n                if (is_bool($event->getForm()->getData())) { // check if it's a boolean\n                    if ($event->getForm()->getData()) {\n                        $event->setData('1');\n                    } else {\n                         $event->setData('0');\n                    }\n                } else { // set the data back\n                    $event->setData($event->getForm()->getData());\n                }\n            }\n        };\n\n        $builder->get('name')->addEventListener(FormEvents::PRE_SUBMIT, $callback);\n        $builder->get('enabled')->addEventListener(FormEvents::PRE_SUBMIT, $callback);\n    }\n\n    public function getName()\n    {\n        return 'snippet';\n    }\n\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {\n        $resolver->setDefaults(array(\n            'csrf_protection'   => false,\n            'data_class' => 'Newscoop\\Entity\\Snippet',\n        ));\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/NewscoopGimmeBundle.php",
    "content": "<?php\n\nnamespace Newscoop\\GimmeBundle;\n\nuse Symfony\\Component\\HttpKernel\\Bundle\\Bundle;\nuse JMS\\SerializerBundle\\DependencyInjection\\JMSSerializerExtension;\nuse Newscoop\\GimmeBundle\\DependencyInjection\\Factory\\ArticleAuthorHandlerFactory;\nuse Newscoop\\GimmeBundle\\DependencyInjection\\Factory\\ArticleCommentsLinkHandlerFactory;\nuse Newscoop\\GimmeBundle\\DependencyInjection\\Factory\\AuthorImageUriHandlerFactory;\nuse Newscoop\\GimmeBundle\\DependencyInjection\\Factory\\PackageItemsLinkHandlerFactory;\nuse Newscoop\\GimmeBundle\\DependencyInjection\\Factory\\ItemLinkHandlerFactory;\nuse Newscoop\\GimmeBundle\\DependencyInjection\\Factory\\TopicArticlesLinkHandlerFactory;\nuse Newscoop\\GimmeBundle\\DependencyInjection\\Factory\\ArticleFieldsHandlerFactory;\nuse Newscoop\\GimmeBundle\\DependencyInjection\\Factory\\ArticleTranslationsHandlerFactory;\nuse Newscoop\\GimmeBundle\\DependencyInjection\\Factory\\ArticleRenditionsHandlerFactory;\n\nclass NewscoopGimmeBundle extends Bundle\n{\n    public function configureSerializerExtension(JMSSerializerExtension $ext)\n    {\n        $ext->addHandlerFactory(new ArticleAuthorHandlerFactory());\n        $ext->addHandlerFactory(new ArticleCommentsLinkHandlerFactory());\n        $ext->addHandlerFactory(new AuthorImageUriHandlerFactory());\n        $ext->addHandlerFactory(new PackageItemsLinkHandlerFactory());\n        $ext->addHandlerFactory(new ItemLinkHandlerFactory());\n        $ext->addHandlerFactory(new TopicArticlesLinkHandlerFactory());\n        $ext->addHandlerFactory(new ArticleFieldsHandlerFactory());\n        $ext->addHandlerFactory(new ArticleTranslationsHandlerFactory());\n        $ext->addHandlerFactory(new ArticleRenditionsHandlerFactory());\n    }\n\n    public function getParent()\n    {\n        return 'FOSOAuthServerBundle';\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Node/Node.php",
    "content": "<?php\n/**\n * @package   Newscoop\\Gimme\n * @author    Yorick Terweijden <yorick.terweijden@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license   http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Node;\n\n/**\n * Node class\n * A treewalker for nesting objects\n */\nclass Node\n{\n    public $id;\n    public $pid;\n    public $data;\n\n    private $children = array();\n\n    /**\n     * Create the root Node object to nest the rest inside of\n     *\n     * @param mixed $id   Object (ID)\n     * @param mixed $pid  Parent Object (ID)\n     * @param mixed $data Object Data\n     */\n    public function __construct($id, $pid, $data)\n    {\n        $this->id = $id;\n        $this->pid = $pid;\n        $this->data = $data;\n    }\n\n    /**\n     * Flatten created Node tree into an array\n     *\n     * @param bool $rootNode include root Node or not\n     *\n     * @return array flattened Node tree as array\n     */\n\n    public function flatten($rootNode = true)\n    {\n        $aggregate = ($rootNode) ? array($this->data) : array();\n\n        foreach ($this->children as $child) {\n            foreach ($child->flatten() as $flat) {\n                $aggregate[] = $flat;\n            }\n        }\n\n        return $aggregate;\n    }\n\n    /**\n     * @param array $nodes array of Nodes\n     */\n    public function buildTree(array $nodes)\n    {\n        $children = $this->buildSubTree($nodes, $this);\n        $this->setChildren($children);\n    }\n\n    /**\n     * @param array $nodes array of Nodes\n     * @param $parent Node whose subtree is to be built\n     * @return array Nodes, each with its subtree built\n     */\n    private function buildSubTree(array $nodes, $parent)\n    {\n        $children = array();\n\n        foreach ($nodes as $node) {\n            if ($node->pid === $parent->id) {\n                $grandChildren = $node->buildSubTree($nodes, $node);\n                $node->setChildren($grandChildren);\n                $children[$node->id] = $node;\n                unset($nodes[$node->id]);\n            }\n        }\n\n        return $children;\n    }\n\n    /**\n     * @param array $children array of Nodes\n     */\n    private function setChildren(array $children)\n    {\n        $this->children = $children;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Node/NodeTree.php",
    "content": "<?php\n/**\n * @package   Newscoop\\Gimme\n * @author    Daniel Read <daniel.read@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license   http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Node;\n\nuse Newscoop\\Entity\\Hierarchable;\n\nclass NodeTree\n{\n    private $root;\n\n    public function __construct()\n    {\n        $this->root = new Node(0,0,'');\n    }\n\n    public function build(array $hierarchables)\n    {\n        $nodes = array();\n        foreach ($hierarchables as $hierarchable) {\n            if ($hierarchable->getParent() instanceof Hierarchable) {\n                $node = new Node($hierarchable->getId(), $hierarchable->getParent()->getId(), $hierarchable);\n            } else {\n                $node = new Node($hierarchable->getId(), 0, $hierarchable);\n            }\n            $nodes[$node->id] = $node;\n        }\n\n        $this->root->buildTree($nodes);\n    }\n\n    public function getFlattened()\n    {\n        return $this->root->flatten(false);\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/routing.yml",
    "content": "NewscoopGimmeBundleArticles:\n    resource: \"@NewscoopGimmeBundle/Controller/ArticlesController.php\"\n    prefix:   /\n    type:     annotation\n\nNewscoopGimmeBundleAuthors:\n    resource: \"@NewscoopGimmeBundle/Controller/AuthorsController.php\"\n    prefix:   /\n    type:     annotation\n\nNewscoopGimmeBundleComments:\n    resource: \"@NewscoopGimmeBundle/Controller/CommentsController.php\"\n    prefix:   /\n    type:     annotation\n\nNewscoopGimmeBundleSlideshows:\n    resource: \"@NewscoopGimmeBundle/Controller/SlideshowsController.php\"\n    prefix:   /\n    type:     annotation\n\nNewscoopGimmeBundleTopics:\n    resource: \"@NewscoopGimmeBundle/Controller/TopicsController.php\"\n    prefix:   /\n    type:     annotation\n\nNewscoopGimmeBundleUsers:\n    resource: \"@NewscoopGimmeBundle/Controller/UsersController.php\"\n    prefix:   /\n    type:     annotation\n\nNewscoopGimmeBundleSections:\n    resource: \"@NewscoopGimmeBundle/Controller/SectionsController.php\"\n    prefix:   /\n    type:     annotation\n\nNewscoopGimmeBundleArticlesList:\n    resource: \"@NewscoopGimmeBundle/Controller/ArticlesListController.php\"\n    prefix:   /\n    type:     annotation\n\nNewscoopGimmeBundleArticleTypes:\n    resource: \"@NewscoopGimmeBundle/Controller/ArticleTypesController.php\"\n    prefix:   /\n    type:     annotation\n\nNewscoopGimmeBundleImages:\n    resource: \"@NewscoopGimmeBundle/Controller/ImagesController.php\"\n    prefix:   /\n    type:     annotation\n\n\nNewscoopGimmeBundleAttachments:\n    resource: \"@NewscoopGimmeBundle/Controller/AttachmentsController.php\"\n    prefix:   /\n    type:     annotation\n\nNewscoopGimmeBundleSnippets:\n    resource: \"@NewscoopGimmeBundle/Controller/SnippetsController.php\"\n    prefix:   /\n    type:     annotation\n\nNewscoopGimmeBundleSnippetTemplates:\n    resource: \"@NewscoopGimmeBundle/Controller/SnippetTemplatesController.php\"\n    prefix:   /\n    type:     annotation\n\nNewscoopEditorialCommentsApiController:\n    resource: \"@NewscoopGimmeBundle/Controller/EditorialCommentsApiController.php\"\n    prefix:   /\n    type:     annotation\n\nNewscoopPublicationController:\n    resource: \"@NewscoopGimmeBundle/Controller/PublicationsController.php\"\n    prefix:   /\n    type:     annotation\n\nNewscoopIssuesController:\n    resource: \"@NewscoopGimmeBundle/Controller/IssuesController.php\"\n    prefix:   /\n    type:     annotation\n\nNewscoopGimmeBundleUserTopics:\n    resource: \"@NewscoopGimmeBundle/Controller/UserTopicsController.php\"\n    prefix:   /\n    type:     annotation"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/Article.yml",
    "content": "Newscoop\\Entity\\Article:\n    exclusion_policy: ALL\n    properties:\n        number:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            serialized_name: number\n        name:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            serialized_name: title\n        updated:\n            expose: true\n            read_only: true\n            type: DateTime\n            groups: [\"list\", \"details\"]\n            serialized_name: updated\n        type:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            serialized_name: type\n        webcode:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            access_type: public_method\n            serialized_name: webcode\n        keywords:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            access_type: public_method\n            serialized_name: keywords\n        language:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            type: string\n            accessor:\n                getter: getLanguageCode\n                setter: setLanguageCode\n            serialized_name: language\n        section:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            serialized_name: section\n            since_version: 1.1\n        issue:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            serialized_name: issue\n            since_version: 1.1\n        published:\n            expose: true\n            read_only: true\n            type: DateTime\n            groups: [\"list\", \"details\"]\n            serialized_name: published\n        uploaded:\n            expose: true\n            read_only: true\n            type: DateTime\n            groups: [\"list\", \"details\"]\n            serialized_name: created\n            since_version: 1.2\n        articleAuthors:\n            expose: true\n            read_only: true\n            type: author\n            groups: [\"list\", \"details\"]\n            serialized_name: authors\n            accessor:\n                getter: getArticleAuthors\n        comments_count:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            type: comments_count\n            serialized_name: comments_count\n            accessor:\n                getter: getView\n            since_version: 1.1\n        recommended_comments_count:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            type: recommended_comments_count\n            serialized_name: recommended_comments_count\n            accessor:\n                getter: getView\n            since_version: 1.1\n        comments_link:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            type: comments_link\n            serialized_name: comments\n            accessor:\n                getter: getView\n        packages:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            access_type: public_method\n            serialized_name: slideshow\n        topics:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            access_type: public_method\n            serialized_name: topics\n        attachments:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            access_type: public_method\n            serialized_name: attachments\n            since_version: 1.1\n        fields:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            type: article_fields\n            serialized_name: fields\n            accessor:\n                getter: getView\n        translations:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            type: article_translations\n            access_type: public_method\n            serialized_name: translations\n            accessor:\n                getter: getView\n        renditions:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            type: article_renditions\n            access_type: public_method\n            serialized_name: renditions\n            accessor:\n                getter: getView\n        reads:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            access_type: public_method\n            serialized_name: reads\n        comments_enabled:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            serialized_name: comments_enabled\n            since_version: 1.1\n        commentsLocked:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            serialized_name: comments_locked\n            since_version: 1.1\n        publication:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            serialized_name: publication\n            accessor:\n                getter: getPublication\n            since_version: 1.2\n        lockTime:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            serialized_name: lockTime\n            since_version: 1.1\n        lockUser:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            serialized_name: lockUser\n            since_version: 1.1\n    virtual_properties:\n        getObject:\n            expose: true\n            groups: [\"list\", \"details\"]\n            type: article_url\n            serialized_name: url\n            since_version: 1.1\n        getLanguageObject:\n            expose: true\n            groups: [\"list\", \"details\"]\n            serialized_name: languageData\n            since_version: 1.2\n        getWorkflowStatus:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            serialized_name: status\n            accessor:\n                getter: getWorkflowStatus\n        isLocked:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            serialized_name: isLocked\n            accessor:\n                getter: isLocked\n            since_version: 1.1\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/ArticleAuthor.yml",
    "content": "Newscoop\\Entity\\ArticleAuthor:\n    exclusion_policy: ALL\n    exclude: false\n    properties:\n        author:\n            expose: true\n            read_only: true\n            serialized_name: author\n            groups: [\"list\", \"details\"]\n            since_version: 1.1\n        type:\n            expose: true\n            serialized_name: type\n            groups: [\"list\", \"details\"]\n            since_version: 1.1\n        order:\n            expose: true\n            serialized_name: order\n            groups: [\"list\", \"details\"]\n            since_version: 1.1"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/ArticleType.yml",
    "content": "Newscoop\\Entity\\ArticleType:\n    exclusion_policy: ALL\n    properties:\n        name:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            serialized_name: name\n            since_version: 1.1"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/ArticleTypeField.yml",
    "content": "Newscoop\\Entity\\ArticleTypeField:\n    exclusion_policy: ALL\n    properties:\n        name:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: name\n            since_version: 1.1\n        type:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: type\n            since_version: 1.1\n        length:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\"]\n            serialized_name: length\n            since_version: 1.1\n        fieldWeight:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\"]\n            serialized_name: fieldWeight\n            since_version: 1.1\n        isHidden:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\"]\n            serialized_name: isHidden\n            since_version: 1.1\n        commentsEnabled:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\"]\n            serialized_name: commentsEnabled\n            since_version: 1.1\n        fieldTypeParam:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: fieldTypeParam\n            since_version: 1.1\n        isContentField:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\"]\n            serialized_name: isContentField\n            since_version: 1.1\n        showInEditor:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\"]\n            serialized_name: showInEditor\n            since_version: 1.1\n        phrase:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: phrase\n            since_version: 1.1\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/Attachment.yml",
    "content": "Newscoop\\Entity\\Attachment:\n    exclusion_policy: ALL\n    properties:\n        id:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            serialized_name: id\n            since_version: 1.1\n        name:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            serialized_name: name\n            since_version: 1.1\n        extension:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: extension\n            since_version: 1.1\n        mimeType:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: mimeType\n            since_version: 1.1\n        contentDisposition:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: contentDisposition\n            since_version: 1.1\n        httpCharset:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: httpCharset\n            since_version: 1.1\n        sizeInBytes:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\"]\n            serialized_name: sizeInBytes\n            since_version: 1.1\n        description:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: description\n            access_type: public_method\n            since_version: 1.1\n        user:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\"]\n            serialized_name: user\n            access_type: public_method\n            accessor:\n                getter: getUserId\n            since_version: 1.1\n        source:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: source\n            since_version: 1.1\n        status:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            serialized_name: status\n            since_version: 1.1\n        updated:\n            expose: true\n            read_only: true\n            type: DateTime\n            groups: [\"details\"]\n            serialized_name: updated\n            since_version: 1.1\n        created:\n            expose: true\n            read_only: true\n            type: DateTime\n            groups: [\"details\"]\n            serialized_name: created\n            since_version: 1.1"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/Author.yml",
    "content": "Newscoop\\Entity\\Author:\n    exclusion_policy: ALL\n    exclude: false\n    properties:\n        id:\n            expose: true\n            read_only: true\n            type: integer\n            serialized_name: id\n            access_type: public_method\n            groups: [\"list\", \"details\"]\n        biography:\n            expose: true\n            read_only: true\n            type: string\n            serialized_name: biography\n            access_type: public_method\n            groups: [\"list\", \"details\"]\n        first_name:\n            expose: true\n            type: string\n            serialized_name: firstName\n            groups: [\"list\", \"details\"]\n        last_name:\n            expose: true\n            read_only: true\n            type: string\n            serialized_name: lastName\n            groups: [\"list\", \"details\"]\n        image:\n            expose: true\n            read_only: true\n            type: image_uri\n            serialized_name: image\n            accessor: \n                getter: getView\n            groups: [\"list\", \"details\"]\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/AuthorType.yml",
    "content": "Newscoop\\Entity\\AuthorType:\n    exclusion_policy: ALL\n    exclude: false\n    properties:\n        id:\n            expose: true\n            read_only: true\n            type: integer\n            serialized_name: id\n            groups: [\"list\", \"details\"]\n            since_version: 1.1\n        type:\n            expose: true\n            type: string\n            serialized_name: type\n            groups: [\"list\", \"details\"]\n            since_version: 1.1\n        authors:\n            expose: true\n            read_only: true\n            type: author\n            groups: [\"details\"]\n            serialized_name: authors\n            since_version: 1.1"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/Comment.yml",
    "content": "Newscoop\\Entity\\Comment:\n    exclusion_policy: ALL\n    properties:\n        id:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\", \"list\"]\n            serialized_name: id\n        subject:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\", \"list\"]\n            serialized_name: subject\n        message:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\", \"list\"]\n            serialized_name: message\n        time_updated:\n            expose: true\n            read_only: true\n            type: DateTime\n            groups: [\"details\", \"list\"]\n            serialized_name: updated\n            access_type: public_method\n            accessor:\n                getter: getTimeUpdated\n            since_version: 1.1\n        time_created:\n            expose: true\n            read_only: true\n            type: DateTime\n            groups: [\"details\", \"list\"]\n            serialized_name: created\n        commenter:\n            expose: true\n            read_only: true\n            groups: [\"details\", \"list\"]\n            accessor:\n                getter: getCommenter\n                setter: setCommenter\n            serialized_name: commenter\n            since_version: 1.1\n        parent:\n            expose: true\n            read_only: true\n            type: integer\n            accessor:\n                getter: getParentId\n            groups: [\"details\", \"list\"]\n            serialized_name: parent\n            since_version: 1.1\n        thread_level:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\", \"list\"]\n            serialized_name: thread_level\n            since_version: 1.1\n        thread_order:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\", \"list\"]\n            serialized_name: thread_order\n            since_version: 1.1\n        recommended:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\", \"list\"]\n            serialized_name: recommended\n            since_version: 1.1\n        status:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\", \"list\"]\n            serialized_name: status\n            access_type: public_method\n            since_version: 1.1\n        likes:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\", \"list\"]\n            serialized_name: likes\n            access_type: public_method\n            since_version: 1.1\n        dislikes:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\", \"list\"]\n            serialized_name: dislikes\n            access_type: public_method\n            since_version: 1.1\n    virtual_properties:\n        getCommenterName:\n            type: string\n            serialized_name: author\n            groups: [\"details\", \"list\"]"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/Commenter.yml",
    "content": "Newscoop\\Entity\\Comment\\Commenter:\n    exclusion_policy: ALL\n    properties:\n        id:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\", \"list\"]\n            serialized_name: id\n            since_version: 1.1\n        name:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\", \"list\"]\n            serialized_name: name\n            since_version: 1.1\n        email:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\", \"list\"]\n            serialized_name: email\n            since_version: 1.1\n        url:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\", \"list\"]\n            serialized_name: url\n            since_version: 1.1\n        ip:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\", \"list\"]\n            serialized_name: ip\n            since_version: 1.1\n        time_updated:\n            expose: true\n            read_only: true\n            type: DateTime\n            groups: [\"details\", \"list\"]\n            serialized_name: updated\n            access_type: public_method\n            accessor:\n                getter: getTimeUpdated\n            since_version: 1.1\n        time_created:\n            expose: true\n            read_only: true\n            type: DateTime\n            groups: [\"details\", \"list\"]\n            serialized_name: created\n            since_version: 1.1\n        user:\n            expose: true\n            read_only: true\n            groups: [\"details\", \"list\"]\n            serialized_name: user\n            since_version: 1.2\n    virtual_properties:\n        getUser:\n            type: image_uri\n            serialized_name: image\n            groups: [\"details\", \"list\"]\n            since_version: 1.1"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/EditorialComment.yml",
    "content": "Newscoop\\ArticlesBundle\\Entity\\EditorialComment:\n    exclusion_policy: ALL\n    exclude: false\n    properties:\n        id:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\", \"list\"]\n            serialized_name: id\n            since_version: 1.2\n        articleNumber:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\", \"list\"]\n            serialized_name: articleNumber\n            since_version: 1.2\n        languageId:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\", \"list\"]\n            serialized_name: languageId\n            since_version: 1.2\n        article:\n            expose: true\n            read_only: true\n            groups: [\"details\"]\n            serialized_name: article\n            since_version: 1.2\n        comment:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\", \"list\"]\n            serialized_name: comment\n            since_version: 1.2\n        resolved:\n            expose: true\n            read_only: true\n            type: boolean\n            groups: [\"details\", \"list\"]\n            serialized_name: resolved\n            since_version: 1.2\n        parent:\n            expose: true\n            read_only: true\n            groups: [\"details\", \"list\"]\n            serialized_name: parent\n            since_version: 1.2\n        user:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            serialized_name: user\n            since_version: 1.2\n        created:\n            expose: true\n            read_only: true\n            type: DateTime\n            groups: [\"details\", \"list\"]\n            serialized_name: created\n            since_version: 1.2\n        is_active:\n            expose: true\n            read_only: true\n            type: boolean\n            groups: [\"details\", \"list\"]\n            serialized_name: is_active\n            since_version: 1.2"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/Issue.yml",
    "content": "Newscoop\\Entity\\Issue:\n    exclusion_policy: ALL\n    properties:\n        number:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"list\", \"details\"]\n            serialized_name: number\n        name:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            serialized_name: title\n        workflowStatus:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            serialized_name: workflowStatus\n        shortName:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            serialized_name: shortName\n        language:\n            expose: true\n            read_only: true\n            type: string\n            accessor:\n                getter: getLanguageCode\n            groups: [\"list\", \"details\"]\n            serialized_name: language\n            since_version: 1.2"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/Item.yml",
    "content": "Newscoop\\Package\\Item:\n    exclusion_policy: ALL\n    properties:\n        caption:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\", \"list\"]\n            serialized_name: caption\n        type:\n            expose: true\n            read_only: true\n            type: string\n            access_type: public_method\n            groups: [\"details\", \"list\"]\n            serialized_name: type\n        link:\n            expose: true\n            read_only: true\n            type: image_uri\n            groups: [\"details\", \"list\"]\n            accessor:\n                getter: getItem\n            serialized_name: link\n    virtual_properties:\n        getImage:\n            expose: true\n            read_only: true\n            type: thumbnail_uri\n            groups: [\"details\", \"list\"]\n            serialized_name: thumbnail\n            since_version: 1.2"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/Language.yml",
    "content": "Newscoop\\Entity\\Language:\n    exclusion_policy: ALL\n    properties:\n        id:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"list\", \"details\"]\n            serialized_name: id\n            since_version: 1.2\n        name:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            serialized_name: name\n            since_version: 1.2\n        code:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            serialized_name: code\n            since_version: 1.2\n        RFC3066bis:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            serialized_name: RFC3066bis\n            since_version: 1.2"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/LocalImage.yml",
    "content": "Newscoop\\Image\\LocalImage:\n    exclusion_policy: ALL\n    properties:\n        id:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"list\", \"details\"]\n            serialized_name: id\n            since_version: 1.1\n        articleImageId:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\"]\n            serialized_name: articleImageId\n            since_version: 1.1    \n        location:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: location\n            since_version: 1.1\n        basename:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            serialized_name: basename\n            since_version: 1.1\n        thumbnailPath:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: thumbnailPath\n            since_version: 1.1\n        url:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: url\n            since_version: 1.1\n        description:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: description\n            since_version: 1.1\n        width:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: width\n            since_version: 1.1\n        height:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: height\n            since_version: 1.1\n        photographer:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: photographer\n            since_version: 1.1\n        photographerUrl:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: photographerUrl\n            since_version: 1.1\n        place:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: place\n            since_version: 1.1"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/Package.yml",
    "content": "Newscoop\\Package\\Package:\n    exclusion_policy: ALL\n    properties:\n        id:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\", \"list\"]\n        headline:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\", \"list\"]\n            serialized_name: title\n        items:\n            expose: true\n            read_only: true\n            type: ArrayCollection<string, Newscoop\\Package\\Item>\n            groups: [\"details\", \"list\"]\n            serialized_name: items\n        description:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\", \"list\"]\n            serialized_name: summary\n        itemsCount:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\", \"list\"]\n            serialized_name: itemsCount\n            accessor:\n                getter: getItemsCount\n            since_version: 1.2\n        itemsLink:\n            expose: true\n            read_only: true\n            type: items_link\n            groups: [\"details\", \"list\"]\n            serialized_name: itemsLink\n            until_version: 1.2\n            accessor:\n                getter: getView"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/Playlist.yml",
    "content": "Newscoop\\Entity\\Playlist:\n    exclusion_policy: ALL\n    properties:\n        id:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"list\", \"details\"]\n            serialized_name: id\n        name:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            serialized_name: name\n        notes:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            serialized_name: notes\n        maxItems:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"list\", \"details\"]\n            serialized_name: maxItems\n        articlesModificationTime:\n            expose: true\n            read_only: true\n            type: DateTime\n            groups: [\"list\", \"details\"]\n            serialized_name: articlesModificationTime\n        articlesLink:\n            expose: true\n            read_only: true\n            type: articles_link\n            groups: [\"list\", \"details\"]\n            serialized_name: articlesLink"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/Publication.yml",
    "content": "Newscoop\\Entity\\Publication:\n    exclusion_policy: ALL\n    properties:\n        id:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"list\", \"details\"]\n            serialized_name: id\n            since_version: 1.2\n        name:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            serialized_name: name\n            since_version: 1.2"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/Section.yml",
    "content": "Newscoop\\Entity\\Section:\n    exclusion_policy: ALL\n    properties:\n        number:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"list\", \"details\"]\n            serialized_name: number\n        name:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            serialized_name: title\n        publication:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            accessor:\n                getter: getPublicationName\n            serialized_name: publicationName\n            since_version: 1.1\n        issue:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            accessor:\n                getter: getIssueName\n            serialized_name: issueName\n            since_version: 1.1\n        language:\n            expose: true\n            read_only: true\n            type: string\n            accessor:\n                getter: getLanguageCode\n            groups: [\"list\", \"details\"]\n            serialized_name: language\n            since_version: 1.2"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/Snippet.yml",
    "content": "Newscoop\\Entity\\Snippet:\n    exclusion_policy: ALL\n    properties:\n        id:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\", \"list\", \"rendered\"]\n            serialized_name: id\n        name:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\", \"list\", \"rendered\"]\n            serialized_name: name\n        fields:\n            expose: true\n            read_only: true\n            groups: [\"details\"]\n            serialized_name: fields\n            type: ArrayCollection<string, Newscoop\\Entity\\Snippet\\SnippetField>\n            accessor:\n                getter: getFieldsWithoutBackend\n        template:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: templateName\n            accessor:\n                getter: getTemplateName\n        enabled:\n            expose: true\n            read_only: true\n            type: boolean\n            groups: [\"list\", \"details\"]\n            serialized_name: enabled\n        created:\n            expose: true\n            read_only: true\n            groups: [\"details\"]\n            serialized_name: created\n        modified:\n            expose: true\n            read_only: true\n            groups: [\"details\"]\n            serialized_name: modified\n    virtual_properties:\n        getTemplateId:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\", \"list\", \"rendered\"]\n            serialized_name: templateId\n            accessor:\n                getter: getTemplateId\n        render:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"rendered\"]\n            serialized_name: render\n            accessor:\n                getter: render\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/SnippetField.yml",
    "content": "Newscoop\\Entity\\Snippet\\SnippetField:\n    exclusion_policy: ALL\n    properties:\n        id:\n            expose: false\n            read_only: true\n            type: integer\n            groups: [\"details\"]\n            serialized_name: id\n        data:\n            expose: true\n            read_only: true\n            groups: [\"details\", \"list\"]\n            serialized_name: data\n            accessor:\n                getter: getData\n    virtual_properties:\n        getFieldName:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\", \"list\"]\n            serialized_name: name\n        getFieldType:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: type\n        getFieldScope:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"scope\"]\n            serialized_name: scope\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/SnippetTemplate.yml",
    "content": "Newscoop\\Entity\\Snippet\\SnippetTemplate:\n    exclusion_policy: ALL\n    properties:\n        id:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\", \"list\"]\n            serialized_name: id\n        name:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\", \"list\"]\n            serialized_name: name\n        controller:\n            expose: true\n            ready_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: controller\n        templateCode:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: template\n        fields:\n            expose: true\n            read_only: true\n            groups: [\"details\", \"list\"]\n            serialized_name: fields\n            type: ArrayCollection<string, Newscoop\\Entity\\Snippet\\SnippetTemplate\\SnippetTemplateField>\n            accessor:\n                getter: getFields\n        favourite:\n            expose: true\n            read_only: true\n            type: boolean\n            groups: [\"details\", \"list\"]\n            serialized_name: favourite\n        enabled:\n            expose: true\n            read_only: true\n            type: boolean\n            groups: [\"list\", \"details\"]\n            serialized_name: enabled\n        iconInactive:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: iconInactive\n        iconActive:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\"]\n            serialized_name: iconActive\n        created:\n            expose: true\n            read_only: true\n            type: DateTime\n            groups: [\"details\"]\n            serialized_name: created\n        modified:\n            expose: true\n            read_only: true\n            type: DateTime\n            groups: [\"details\"]\n            serialized_name: modified\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/SnippetTemplateField.yml",
    "content": "Newscoop\\Entity\\Snippet\\SnippetTemplate\\SnippetTemplateField:\n    exclusion_policy: ALL\n    properties:\n        id:\n            expose: false\n            read_only: true\n            type: integer\n            groups: [\"details\"]\n            serialized_name: id\n        templateFieldName:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\", \"list\"]\n            serialized_name: name\n        type:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\", \"list\"]\n            serialized_name: type\n        scope:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\", \"list\"]\n            serialized_name: scope\n        required:\n            expose: true\n            read_only: true\n            type: boolean\n            groups: [\"details\", \"list\"]\n            serialized_name: required\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/Template.yml",
    "content": "Newscoop\\Entity\\Template:\n    exclusion_policy: ALL\n    exclude: true\n    access_type: public_method"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/Topic.yml",
    "content": "Newscoop\\NewscoopBundle\\Entity\\Topic:\n    exclusion_policy: ALL\n    properties:\n        id:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"list\", \"details\"]\n        title:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n        root:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"list\", \"details\"]\n            serialized_name: root\n            since_version: 1.2\n        parent:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"list\", \"details\"]\n            serialized_name: parent\n            accessor:\n                getter: getParentAsInteger\n            since_version: 1.2\n        lft:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"list\", \"details\"]\n            serialized_name: left\n            since_version: 1.2\n        rgt:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"list\", \"details\"]\n            serialized_name: right\n            since_version: 1.2\n        level:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"list\", \"details\"]\n            since_version: 1.2\n        topicOrder:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"list\", \"details\"]\n            serialized_name: order\n            since_version: 1.2\n        translations:\n            expose: true\n            read_only: true\n            type: ArrayCollection<string, Newscoop\\NewscoopBundle\\Entity\\TopicTranslation>\n            groups: [\"list\", \"details\"]\n            since_version: 1.2\n        articlesLink:\n            expose: true\n            read_only: true\n            type: articles_link\n            groups: [\"list\", \"details\"]\n            serialized_name: articlesLink\n    virtual_properties:\n        getObject:\n            expose: true\n            read_only: true\n            type: topic_path\n            groups: [\"list\", \"details\"]\n            serialized_name: path\n            since_version: 1.2"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/TopicTranslation.yml",
    "content": "Newscoop\\NewscoopBundle\\Entity\\TopicTranslation:\n    exclusion_policy: ALL\n    properties:\n        id:\n            expose: false\n            read_only: true\n            type: integer\n            groups: [\"details\"]\n            serialized_name: id\n            since_version: 1.2\n    virtual_properties:\n        getId:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"details\", \"list\"]\n            serialized_name: id\n            since_version: 1.2\n        getContent:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\", \"list\"]\n            serialized_name: content\n            since_version: 1.2\n        getLocale:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"details\", \"list\"]\n            serialized_name: locale\n            since_version: 1.2\n\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/User.yml",
    "content": "Newscoop\\Entity\\User:\n    exclusion_policy: ALL\n    properties:\n        id:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"list\", \"details\"]\n            serialized_name: id\n        username:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            serialized_name: username\n        email:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            serialized_name: email\n        first_name:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            serialized_name: firstName\n        last_name:\n            expose: true\n            read_only: true\n            type: string\n            groups: [\"list\", \"details\"]\n            serialized_name: lastName\n        attributes:\n            expose: true\n            read_only: true\n            type: array\n            groups: [\"list\", \"details\"]\n            access_type: public_method\n            serialized_name: attributes\n        topics:\n            expose: true\n            read_only: true\n            type: array\n            groups: [\"list\", \"details\"]\n            access_type: public_method\n            serialized_name: topics\n    virtual_properties:\n        getObject:\n            type: image_uri\n            serialized_name: image\n            groups: [\"details\", \"list\"]"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/serializer/newscoop/UserTopic.yml",
    "content": "Newscoop\\Entity\\UserTopic:\n    exclusion_policy: ALL\n    properties:\n        id:\n            expose: true\n            read_only: true\n            type: integer\n            groups: [\"list\", \"details\"]\n            serialized_name: id\n            since_version: 1.2\n        user:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            serialized_name: user\n            since_version: 1.2\n        topic:\n            expose: true\n            read_only: true\n            groups: [\"list\", \"details\"]\n            serialized_name: topic\n            since_version: 1.2"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/config/services.yml",
    "content": "services:\n    newscoop.paginator.pagination_listener:\n        class: Newscoop\\GimmeBundle\\EventListener\\PaginationListener\n        tags:\n            - { name: kernel.event_listener, event: kernel.request, method: onRequest, priority: 31 }\n        arguments:  [\"@newscoop.paginator.paginator_service\"]\n    newscoop.paginator.paginator_service:\n        class: Newscoop\\Gimme\\PaginatorService\n        arguments:  [\"@knp_paginator\", \"@router\"]\n    newscoop.paginator.query_subscriber:\n        class: Newscoop\\GimmeBundle\\EventListener\\QuerySubscriber\n        arguments:  [\"@newscoop.paginator.paginator_service\"]\n        tags:\n            - { name: kernel.event_subscriber}\n    newscoop.serializer.serializer_subscriber:\n        class: Newscoop\\GimmeBundle\\EventListener\\SerializerSubscriber\n        arguments:  [\"@service_container\"]\n        tags:\n            - { name: kernel.event_subscriber}\n    newscoop.paginator.pagination_extra_data_subscriber:\n        class: Newscoop\\GimmeBundle\\EventListener\\PaginationExtraDataSubscriber\n        arguments:  [\"@newscoop.paginator.paginator_service\"]\n        tags:\n            - { name: kernel.event_subscriber}\n\n    newscoop.gimme.listener.link_request:\n        class: Newscoop\\GimmeBundle\\EventListener\\LinkRequestListener\n        arguments:  [\"@controller_resolver\", \"@router\"]\n        tags:\n            - { name: kernel.event_listener, event: kernel.request, method: onKernelRequest }\n    newscoop.gimme.listener.public_resources:\n        class: Newscoop\\GimmeBundle\\EventListener\\PublicResourcesListener\n        arguments:  [\"@service_container\"]\n        tags:\n            - { name: kernel.event_listener, event: kernel.request, method: onRequest, priority: 6 }\n    newscoop.gimme.listener.format_json:\n        class: Newscoop\\GimmeBundle\\EventListener\\FormatJsonResponseListener\n        tags:\n            - { name: kernel.event_listener, event: kernel.response, method: onResponse }\n    newscoop.gimme.listener.allow_origin:\n        class: Newscoop\\GimmeBundle\\EventListener\\AllowOriginListener\n        arguments:  [\"@service_container\"]\n        tags:\n            - { name: kernel.event_listener, event: kernel.request, method: onKernelRequest }\n            - { name: kernel.event_listener, event: kernel.response, method: onResponse }\n\n    newscoop.gimme.authorize.form_type:\n        class: Newscoop\\GimmeBundle\\Form\\Type\\AuthorizeFormType\n    newscoop.gimme.authorize.form:\n        class: Symfony\\Component\\Form\\Form\n        factory_service: form.factory\n        factory_method: createNamed\n        arguments: [\"newscoop_gimme_oauth_authorize\", \"@newscoop.gimme.authorize.form_type\"]\n    newscoop.gimme.authorize.form_handler:\n        class: Newscoop\\GimmeBundle\\Form\\Handler\\AuthorizeFormHandler\n        arguments:  [\"@newscoop.gimme.authorize.form\", \"@request\", \"@security.context\", \"@fos_oauth_server.server\"]\n        scope:        request\n\n    newscoop.gimme.serializer.article_author_handler:\n        class: Newscoop\\GimmeBundle\\Serializer\\Article\\AuthorHandler\n        arguments: [\"@router\"]\n        tags:\n            - { name: jms_serializer.handler, type: author, direction: serialization, format:json, method:serializeToJson }\n    newscoop.gimme.serializer.image_image_uri_handler:\n        class: Newscoop\\GimmeBundle\\Serializer\\Image\\ImageUriHandler\n        arguments:  [\"@image\", \"@zend_router\", \"@article.link\"]\n        tags:\n            - { name: jms_serializer.handler, type: image_uri, direction: serialization, format:json, method:serializeToJson }\n    newscoop.gimme.serializer.package_items_link_handler:\n        class: Newscoop\\GimmeBundle\\Serializer\\Package\\ItemsLinkHandler\n        arguments:  [\"@router\"]\n        tags:\n            - { name: jms_serializer.handler, type: items_link, direction: serialization, format:json, method:serializeToJson }\n    newscoop.gimme.serializer.article_fields_handler:\n        class: Newscoop\\GimmeBundle\\Serializer\\Article\\FieldsHandler\n        tags:\n            - { name: jms_serializer.handler, type: article_fields, direction: serialization, format:json, method:serializeToJson }\n    newscoop.gimme.serializer.article_translations_handler:\n        class: Newscoop\\GimmeBundle\\Serializer\\Article\\TranslationsHandler\n        arguments:  [\"@em\", \"@router\"]\n        tags:\n            - { name: jms_serializer.handler, type: article_translations, direction: serialization, format:json, method:serializeToJson }\n    newscoop.gimme.serializer.article_renditions_handler:\n        class: Newscoop\\GimmeBundle\\Serializer\\Article\\RenditionsHandler\n        arguments:  [\"@image\", \"@zend_router\", \"@newscoop_newscoop.publication_service\", \"@image.rendition\"]\n        tags:\n            - { name: jms_serializer.handler, type: article_renditions, direction: serialization, format:json, method:serializeToJson }\n    newscoop.gimme.serializer.article_comments_link_handler:\n        class: Newscoop\\GimmeBundle\\Serializer\\Article\\CommentsLinkHandler\n        arguments:  [\"@router\"]\n        tags:\n            - { name: jms_serializer.handler, type: comments_link, direction: serialization, format:json, method:serializeToJson }\n    newscoop.gimme.serializer.article_recommended_comments_count_handler:\n        class: Newscoop\\GimmeBundle\\Serializer\\Article\\CommentsCountHandler\n        arguments:  [\"@comment\"]\n        tags:\n            - { name: jms_serializer.handler, type: recommended_comments_count, direction: serialization, format:json, method:getRecomendedCommentsCount }\n    newscoop.gimme.serializer.article_comments_count_handler:\n        class: Newscoop\\GimmeBundle\\Serializer\\Article\\CommentsCountHandler\n        arguments:  [\"@comment\"]\n        tags:\n            - { name: jms_serializer.handler, type: comments_count, direction: serialization, format:json, method:getCommentsCount }\n    newscoop.gimme.serializer.article_url_handler:\n        class: Newscoop\\GimmeBundle\\Serializer\\Article\\UrlHandler\n        arguments:  [\"@article.link\"]\n        tags:\n            - { name: jms_serializer.handler, type: article_url, direction: serialization, format:json, method:getArticleUrl }\n\n    newscoop.gimme.serializer.topic_path_handler:\n        class: Newscoop\\GimmeBundle\\Serializer\\Topic\\TopicPathHandler\n        arguments:  [\"@em\"]\n        tags:\n            - { name: jms_serializer.handler, type: topic_path, direction: serialization, format:json, method:serializeToJson }\n\n    newscoop.gimme.serializer.image_thumbnail_uri_handler:\n        class: Newscoop\\GimmeBundle\\Serializer\\Image\\ThumbnailUriHandler\n        arguments:  [\"@article.link\"]\n        tags:\n            - { name: jms_serializer.handler, type: thumbnail_uri, direction: serialization, format:json, method:serializeToJson }\n\n    newscoop.gimme.oauth_event_listener:\n        class:  Newscoop\\GimmeBundle\\EventListener\\OAuthEventListener\n        arguments:  [\"@em\"]\n        tags:\n            - { name: kernel.event_listener, event: fos_oauth_server.pre_authorization_process, method: onPreAuthorizationProcess }\n            - { name: kernel.event_listener, event: fos_oauth_server.post_authorization_process, method: onPostAuthorizationProcess }\n\nparameters:\n    twig.exception_listener.class: Newscoop\\GimmeBundle\\EventListener\\ExceptionListener\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/public/css/jquery.dynatable.css",
    "content": "th a {\n  color: #fff;\n}\nth a:hover {\n  color: #fff;\n  text-decoration: underline;\n}\n\n.dynatable-search {\n  float: right;\n  margin-bottom: 10px;\n}\n\n.dynatable-pagination-links {\n  float: right;\n}\n\n.dynatable-record-count {\n  display: block;\n  padding: 5px 0;\n}\n\n.dynatable-pagination-links span,\n.dynatable-pagination-links li {\n  display: inline-block;\n}\n\n.dynatable-page-link,\n.dynatable-page-break {\n  display: block;\n  padding: 5px 7px;\n}\n\n.dynatable-page-link {\n  cursor: pointer;\n}\n\n.dynatable-active-page {\n  background: #71AF5A;\n  border-radius: 5px;\n  color: #fff;\n}\n.dynatable-page-prev.dynatable-active-page,\n.dynatable-page-next.dynatable-active-page {\n  background: none;\n  color: #999;\n  cursor: text;\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/public/js/jquery.dynatable.js",
    "content": "/*\n * jQuery Dynatable plugin 0.2.2\n *\n * Copyright (c) 2013 Steve Schwartz (JangoSteve)\n *\n * Dual licensed under the MIT and GPL licenses:\n *   http://www.opensource.org/licenses/mit-license.php\n *   http://www.gnu.org/licenses/gpl.html\n *\n * Date: Tue Aug 13 12:50:00 2013 -0500\n */\n//\n\n(function($) {\n  var defaults,\n      mergeSettings,\n      dt,\n      Model,\n      modelPrototypes = {\n        dom: Dom,\n        domColumns: DomColumns,\n        records: Records,\n        recordsCount: RecordsCount,\n        processingIndicator: ProcessingIndicator,\n        state: State,\n        sorts: Sorts,\n        sortsHeaders: SortsHeaders,\n        queries: Queries,\n        inputsSearch: InputsSearch,\n        paginationPage: PaginationPage,\n        paginationPerPage: PaginationPerPage,\n        paginationLinks: PaginationLinks\n      },\n      utility,\n      build,\n      processAll,\n      initModel,\n      defaultRowWriter,\n      defaultCellWriter,\n      defaultAttributeWriter,\n      defaultAttributeReader;\n\n  //-----------------------------------------------------------------\n  // Cached plugin global defaults\n  //-----------------------------------------------------------------\n\n  defaults = {\n    features: {\n      paginate: true,\n      sort: true,\n      pushState: true,\n      search: true,\n      recordCount: true,\n      perPageSelect: true\n    },\n    table: {\n      defaultColumnIdStyle: 'camelCase',\n      columns: null,\n      headRowSelector: 'thead tr', // or e.g. tr:first-child\n      bodyRowSelector: 'tbody tr',\n      headRowClass: null\n    },\n    inputs: {\n      queries: null,\n      sorts: null,\n      multisort: ['ctrlKey', 'shiftKey', 'metaKey'],\n      page: null,\n      queryEvent: 'blur change',\n      recordCountTarget: null,\n      recordCountPlacement: 'after',\n      paginationLinkTarget: null,\n      paginationLinkPlacement: 'after',\n      paginationPrev: 'Previous',\n      paginationNext: 'Next',\n      paginationGap: [1,2,2,1],\n      searchTarget: null,\n      searchPlacement: 'before',\n      perPageTarget: null,\n      perPagePlacement: 'before',\n      perPageText: 'Show: ',\n      recordCountText: 'Showing ',\n      processingText: 'Processing...'\n    },\n    dataset: {\n      ajax: false,\n      ajaxUrl: null,\n      ajaxCache: null,\n      ajaxOnLoad: false,\n      ajaxMethod: 'GET',\n      ajaxDataType: 'json',\n      totalRecordCount: null,\n      queries: {},\n      queryRecordCount: null,\n      page: null,\n      perPageDefault: 10,\n      perPageOptions: [10,20,50,100],\n      sorts: {},\n      sortsKeys: null,\n      sortTypes: {},\n      records: null\n    },\n    writers: {\n      _rowWriter: defaultRowWriter,\n      _cellWriter: defaultCellWriter,\n      _attributeWriter: defaultAttributeWriter\n    },\n    readers: {\n      _rowReader: null,\n      _attributeReader: defaultAttributeReader\n    },\n    params: {\n      dynatable: 'dynatable',\n      queries: 'queries',\n      sorts: 'sorts',\n      page: 'page',\n      perPage: 'perPage',\n      offset: 'offset',\n      records: 'records',\n      record: null,\n      queryRecordCount: 'queryRecordCount',\n      totalRecordCount: 'totalRecordCount'\n    }\n  };\n\n  //-----------------------------------------------------------------\n  // Each dynatable instance inherits from this,\n  // set properties specific to instance\n  //-----------------------------------------------------------------\n\n  dt = {\n    init: function(element, options) {\n      this.settings = mergeSettings(options);\n      this.element = element;\n      this.$element = $(element);\n\n      // All the setup that doesn't require element or options\n      build.call(this);\n\n      return this;\n    },\n\n    process: function(skipPushState) {\n      processAll.call(this, skipPushState);\n    }\n  };\n\n  //-----------------------------------------------------------------\n  // Cached plugin global functions\n  //-----------------------------------------------------------------\n\n  mergeSettings = function(options) {\n    var newOptions = $.extend(true, {}, defaults, options);\n\n    // TODO: figure out a better way to do this.\n    // Doing `extend(true)` causes any elements that are arrays\n    // to merge the default and options arrays instead of overriding the defaults.\n    if (options) {\n      if (options.inputs) {\n        if (options.inputs.multisort) {\n          newOptions.inputs.multisort = options.inputs.multisort;\n        }\n        if (options.inputs.paginationGap) {\n          newOptions.inputs.paginationGap = options.inputs.paginationGap;\n        }\n      }\n      if (options.dataset && options.dataset.perPageOptions) {\n        newOptions.dataset.perPageOptions = options.dataset.perPageOptions;\n      }\n    }\n\n    return newOptions;\n  };\n\n  build = function() {\n    for (model in modelPrototypes) {\n      if (modelPrototypes.hasOwnProperty(model)) {\n        var modelInstance = this[model] = new modelPrototypes[model](this, this.settings);\n        if (modelInstance.initOnLoad()) {\n          modelInstance.init();\n        }\n      }\n    }\n\n    this.$element.trigger('dynatable:init', this);\n\n    if (!this.settings.dataset.ajax || (this.settings.dataset.ajax && this.settings.dataset.ajaxOnLoad) || this.settings.features.paginate) {\n      this.process();\n    }\n  };\n\n  processAll = function(skipPushState) {\n    var data = {};\n\n    this.$element.trigger('dynatable:beforeProcess', data);\n\n    if (!$.isEmptyObject(this.settings.dataset.queries)) { data[this.settings.params.queries] = this.settings.dataset.queries; }\n    // TODO: Wrap this in a try/rescue block to hide the processing indicator and indicate something went wrong if error\n    this.processingIndicator.show();\n\n    if (this.settings.features.sort && !$.isEmptyObject(this.settings.dataset.sorts)) { data[this.settings.params.sorts] = this.settings.dataset.sorts; }\n    if (this.settings.features.paginate && this.settings.dataset.page) {\n      var page = this.settings.dataset.page,\n          perPage = this.settings.dataset.perPage;\n      data[this.settings.params.page] = page;\n      data[this.settings.params.perPage] = perPage;\n      data[this.settings.params.offset] = (page - 1) * perPage;\n    }\n    if (this.settings.dataset.ajaxData) { $.extend(data, this.settings.dataset.ajaxData); }\n\n    // If ajax, sends query to ajaxUrl with queries and sorts serialized and appended in ajax data\n    // otherwise, executes queries and sorts on in-page data\n    if (this.settings.dataset.ajax) {\n      var _this = this;\n      var options = {\n        type: _this.settings.dataset.ajaxMethod,\n        dataType: _this.settings.dataset.ajaxDataType,\n        data: data,\n        error: function(xhr, error) {\n        },\n        success: function(response) {\n          _this.$element.trigger('dynatable:ajax:success', response);\n          // Merge ajax results and meta-data into dynatables cached data\n          _this.records.updateFromJson(response);\n          // update table with new records\n          _this.dom.update();\n\n          if (!skipPushState && _this.state.initOnLoad()) {\n            _this.state.push(data);\n          }\n        },\n        complete: function() {\n          _this.processingIndicator.hide();\n        }\n      };\n      // Do not pass url to `ajax` options if blank\n      if (this.settings.dataset.ajaxUrl) {\n        options.url = this.settings.dataset.ajaxUrl;\n\n      // If ajaxUrl is blank, then we're using the current page URL,\n      // we need to strip out any query, sort, or page data controlled by dynatable\n      // that may have been in URL when page loaded, so that it doesn't conflict with\n      // what's passed in with the data ajax parameter\n      } else {\n        options.url = utility.refreshQueryString(window.location.href, {}, this.settings);\n      }\n      if (this.settings.dataset.ajaxCache !== null) { options.cache = this.settings.dataset.ajaxCache; }\n\n      $.ajax(options);\n    } else {\n      this.records.resetOriginal();\n      this.queries.run();\n      if (this.settings.features.sort) {\n        this.records.sort();\n      }\n      if (this.settings.features.paginate) {\n        this.records.paginate();\n      }\n      this.dom.update();\n      this.processingIndicator.hide();\n\n      if (!skipPushState && this.state.initOnLoad()) {\n        this.state.push(data);\n      }\n    }\n    this.$element.trigger('dynatable:afterProcess', data);\n  };\n\n  function defaultRowWriter(rowIndex, record, columns, cellWriter) {\n    var tr = '';\n\n    // grab the record's attribute for each column\n    for (var i = 0, len = columns.length; i < len; i++) {\n      tr += cellWriter(columns[i], record);\n    }\n\n    return '<tr>' + tr + '</tr>';\n  };\n\n  function defaultCellWriter(column, record) {\n    var html = column.attributeWriter(record),\n        td = '<td';\n\n    // keep cells for hidden column headers hidden\n    if (column.hidden) {\n      td += ' display=\"none\"';\n    }\n\n    // keep cells aligned as their column headers are aligned\n    if (column.textAlign) {\n      td += ' style=\"text-align: ' + column.textAlign + ';\"';\n    }\n\n    return td + '>' + html + '</td>';\n  };\n\n  function defaultAttributeWriter(record) {\n    // `this` is the column object in settings.columns\n    // TODO: automatically convert common types, such as arrays and objects, to string\n    return record[this.id];\n  };\n\n  function defaultAttributeReader(cell, record) {\n    return $(cell).html();\n  };\n\n  //-----------------------------------------------------------------\n  // Dynatable object model prototype\n  // (all object models get these default functions)\n  //-----------------------------------------------------------------\n\n  Model = {\n    initOnLoad: function() {\n      return true;\n    },\n\n    init: function() {}\n  };\n\n  for (model in modelPrototypes) {\n    if (modelPrototypes.hasOwnProperty(model)) {\n      var modelPrototype = modelPrototypes[model];\n      modelPrototype.prototype = Model;\n    }\n  }\n\n  //-----------------------------------------------------------------\n  // Dynatable object models\n  //-----------------------------------------------------------------\n\n  function Dom(obj, settings) {\n    var _this = this;\n\n    // update table contents with new records array\n    // from query (whether ajax or not)\n    this.update = function() {\n      var rows = '',\n          columns = settings.table.columns,\n          rowWriter = settings.writers._rowWriter,\n          cellWriter = settings.writers._cellWriter;\n\n      obj.$element.trigger('dynatable:beforeUpdate', rows);\n\n      // loop through records\n      for (var i = 0, len = settings.dataset.records.length; i < len; i++) {\n        var record = settings.dataset.records[i],\n            tr = rowWriter(i, record, columns, cellWriter);\n        rows += tr;\n      }\n\n      // Appended dynatable interactive elements\n      if (settings.features.recordCount) {\n        $('#dynatable-record-count-' + obj.element.id).replaceWith(obj.recordsCount.create());\n      }\n      if (settings.features.paginate) {\n        $('#dynatable-pagination-links-' + obj.element.id).replaceWith(obj.paginationLinks.create());\n        if (settings.features.perPageSelect) {\n          $('#dynatable-per-page-' + obj.element.id).val(parseInt(settings.dataset.perPage));\n        }\n      }\n\n      // Sort headers functionality\n      if (settings.features.sort && columns) {\n        obj.sortsHeaders.removeAllArrows();\n        for (var i = 0, len = columns.length; i < len; i++) {\n          var column = columns[i],\n              sortedByColumn = utility.allMatch(settings.dataset.sorts, column.sorts, function(sorts, sort) { return sort in sorts; }),\n              value = settings.dataset.sorts[column.sorts[0]];\n\n          if (sortedByColumn) {\n            obj.$element.find('[data-dynatable-column=\"' + column.id + '\"]').find('.dynatable-sort-header').each(function(){\n              if (value == 1) {\n                obj.sortsHeaders.appendArrowUp($(this));\n              } else {\n                obj.sortsHeaders.appendArrowDown($(this));\n              }\n            });\n          }\n        }\n      }\n\n      // Query search functionality\n      if (settings.inputs.queries) {\n        settings.inputs.queries.each(function() {\n          var $this = $(this),\n              q = settings.dataset.queries[$this.data('dynatable-query')];\n          $(this).val(q || '');\n        });\n      }\n      obj.$element.find(settings.table.bodyRowSelector).remove();\n      obj.$element.append(rows);\n\n      obj.$element.trigger('dynatable:afterUpdate', rows);\n    };\n  };\n\n  function DomColumns(obj, settings) {\n    var _this = this;\n\n    this.initOnLoad = function() {\n      return obj.$element.is('table');\n    };\n\n    this.init = function() {\n      settings.table.columns = [];\n      this.getFromTable();\n    };\n\n    // initialize table[columns] array\n    this.getFromTable = function() {\n      var $columns = obj.$element.find(settings.table.headRowSelector).children('th,td');\n      if ($columns.length) {\n        $columns.each(function(index){\n          _this.add($(this), index, true);\n        });\n      } else {\n        return $.error(\"Couldn't find any columns headers in '\" + settings.table.headRowSelector + \" th,td'. If your header row is different, specify the selector in the table: headRowSelector option.\");\n      }\n    };\n\n    this.add = function($column, position, skipAppend, skipUpdate) {\n      var columns = settings.table.columns,\n          label = $column.text(),\n          id = $column.data('dynatable-column') || utility.normalizeText(label, settings.table.defaultColumnIdStyle),\n          dataSorts = $column.data('dynatable-sorts'),\n          sorts = dataSorts ? $.map(dataSorts.split(','), function(text) { return $.trim(text); }) : [id];\n\n      // If the column id is blank, generate an id for it\n      if ( !id ) {\n        this.generate($column);\n        id = $column.data('dynatable-column');\n      }\n      // Add column data to plugin instance\n      columns.splice(position, 0, {\n        index: position,\n        label: label,\n        id: id,\n        attributeWriter: settings.writers[id] || settings.writers._attributeWriter,\n        attributeReader: settings.readers[id] || settings.readers._attributeReader,\n        sorts: sorts,\n        hidden: $column.css('display') === 'none',\n        textAlign: $column.css('text-align')\n      });\n\n      // Modify header cell\n      $column\n        .attr('data-dynatable-column', id)\n        .addClass('dynatable-head');\n      if (settings.table.headRowClass) { $column.addClass(settings.table.headRowClass); }\n\n      // Append column header to table\n      if (!skipAppend) {\n        var domPosition = position + 1,\n            $sibling = obj.$element.find(settings.table.headRowSelector)\n              .children('th:nth-child(' + domPosition + '),td:nth-child(' + domPosition + ')').first(),\n            columnsAfter = columns.slice(position + 1, columns.length);\n\n        if ($sibling.length) {\n          $sibling.before($column);\n        // sibling column doesn't yet exist (maybe this is the last column in the header row)\n        } else {\n          obj.$element.find(settings.table.headRowSelector).append($column);\n        }\n\n        obj.sortsHeaders.attachOne($column.get());\n\n        // increment the index of all columns after this one that was just inserted\n        if (columnsAfter.length) {\n          for (var i = 0, len = columnsAfter.length; i < len; i++) {\n            columnsAfter[i].index += 1;\n          }\n        }\n\n        if (!skipUpdate) {\n          obj.dom.update();\n        }\n      }\n\n      return dt;\n    };\n\n    this.remove = function(columnIndexOrId) {\n      var columns = settings.table.columns,\n          length = columns.length;\n\n      if (typeof(columnIndexOrId) === \"number\") {\n        var column = columns[columnIndexOrId];\n        this.removeFromTable(column.id);\n        this.removeFromArray(columnIndexOrId);\n      } else {\n        // Traverse columns array in reverse order so that subsequent indices\n        // don't get messed up when we delete an item from the array in an iteration\n        for (var i = columns.length - 1; i >= 0; i--) {\n          var column = columns[i];\n\n          if (column.id === columnIndexOrId) {\n            this.removeFromTable(columnIndexOrId);\n            this.removeFromArray(i);\n          }\n        }\n      }\n\n      obj.dom.update();\n    };\n\n    this.removeFromTable = function(columnId) {\n      obj.$element.find(settings.table.headRowSelector).children('[data-dynatable-column=\"' + columnId + '\"]').first()\n        .remove();\n    };\n\n    this.removeFromArray = function(index) {\n      var columns = settings.table.columns,\n          adjustColumns;\n      columns.splice(index, 1);\n      adjustColumns = columns.slice(index, columns.length);\n      for (var i = 0, len = adjustColumns.length; i < len; i++) {\n        adjustColumns[i].index -= 1;\n      }\n    };\n\n    this.generate = function($cell) {\n      var cell = $cell === undefined ? $('<th></th>') : $cell;\n      return this.attachGeneratedAttributes(cell);\n    };\n\n    this.attachGeneratedAttributes = function($cell) {\n      // Use increment to create unique column name that is the same each time the page is reloaded,\n      // in order to avoid errors with mismatched attribute names when loading cached `dataset.records` array\n      var increment = obj.$element.find(settings.table.headRowSelector).children('th[data-dynatable-generated]').length;\n      return $cell\n        .attr('data-dynatable-column', 'dynatable-generated-' + increment) //+ utility.randomHash(),\n        .attr('data-dynatable-no-sort', 'true')\n        .attr('data-dynatable-generated', increment);\n    };\n  };\n\n  function Records(obj, settings) {\n    var _this = this;\n\n    this.initOnLoad = function() {\n      return !settings.dataset.ajax;\n    };\n\n    this.init = function() {\n      if (settings.dataset.records === null) {\n        settings.dataset.records = this.getFromTable();\n\n        if (!settings.dataset.queryRecordCount) {\n          settings.dataset.queryRecordCount = this.count();\n        }\n\n        if (!settings.dataset.totalRecordCount){\n          settings.dataset.totalRecordCount = settings.dataset.queryRecordCount;\n        }\n      }\n\n      // Create cache of original full recordset (unpaginated and unqueried)\n      settings.dataset.originalRecords = $.extend(true, [], settings.dataset.records);\n    };\n\n    // merge ajax response json with cached data including\n    // meta-data and records\n    this.updateFromJson = function(data) {\n      var records;\n      if (settings.params.records === \"_root\") {\n        records = data;\n      } else if (settings.params.records in data) {\n        records = data[settings.params.records];\n      }\n      if (settings.params.record) {\n        var len = records.length - 1;\n        for (var i = 0; i < len; i++) {\n          records[i] = records[i][settings.params.record];\n        }\n      }\n      if (settings.params.queryRecordCount in data) {\n        settings.dataset.queryRecordCount = data[settings.params.queryRecordCount];\n      }\n      if (settings.params.totalRecordCount in data) {\n        settings.dataset.totalRecordCount = data[settings.params.totalRecordCount];\n      }\n      settings.dataset.records = records;\n    };\n\n    // For really advanced sorting,\n    // see http://james.padolsey.com/javascript/sorting-elements-with-jquery/\n    this.sort = function() {\n      var sort = [].sort,\n          sorts = settings.dataset.sorts,\n          sortsKeys = settings.dataset.sortsKeys,\n          sortTypes = settings.dataset.sortTypes;\n\n      var sortFunction = function(a, b) {\n        var comparison;\n        if ($.isEmptyObject(sorts)) {\n          comparison = obj.sorts.functions['originalPlacement'](a, b);\n        } else {\n          for (var i = 0, len = sortsKeys.length; i < len; i++) {\n            var attr = sortsKeys[i],\n                direction = sorts[attr],\n                sortType = sortTypes[attr] || obj.sorts.guessType(a, b, attr);\n            comparison = obj.sorts.functions[sortType](a, b, attr, direction);\n            // Don't need to sort any further unless this sort is a tie between a and b,\n            // so break the for loop unless tied\n            if (comparison !== 0) { break; }\n          }\n        }\n        return comparison;\n      }\n\n      return sort.call(settings.dataset.records, sortFunction);\n    };\n\n    this.paginate = function() {\n      var bounds = this.pageBounds(),\n          first = bounds[0], last = bounds[1];\n      settings.dataset.records = settings.dataset.records.slice(first, last);\n    };\n\n    this.resetOriginal = function() {\n      settings.dataset.records = settings.dataset.originalRecords || [];\n    };\n\n    this.pageBounds = function() {\n      var page = settings.dataset.page || 1,\n          first = (page - 1) * settings.dataset.perPage,\n          last = Math.min(first + settings.dataset.perPage, settings.dataset.queryRecordCount);\n      return [first,last];\n    };\n\n    // get initial recordset to populate table\n    // if ajax, call ajaxUrl\n    // otherwise, initialize from in-table records\n    this.getFromTable = function() {\n      var records = [],\n          columns = settings.table.columns,\n          tableRecords = obj.$element.find(settings.table.bodyRowSelector);\n\n      tableRecords.each(function(index){\n        var record = {};\n        record['dynatable-original-index'] = index;\n        $(this).find('th,td').each(function(index) {\n          if (columns[index] === undefined) {\n            // Header cell didn't exist for this column, so let's generate and append\n            // a new header cell with a randomly generated name (so we can store and\n            // retrieve the contents of this column for each record)\n            obj.domColumns.add(obj.domColumns.generate(), columns.length, false, true); // don't skipAppend, do skipUpdate\n          }\n          var value = columns[index].attributeReader(this, record),\n              attr = columns[index].id;\n\n          // If value from table is HTML, let's get and cache the text equivalent for\n          // the default string sorting, since it rarely makes sense for sort headers\n          // to sort based on HTML tags.\n          if (typeof(value) === \"string\" && value.match(/\\s*\\<.+\\>/)) {\n            if (! record['dynatable-sortable-text']) {\n              record['dynatable-sortable-text'] = {};\n            }\n            record['dynatable-sortable-text'][attr] = $.trim($('<div></div>').html(value).text());\n          }\n\n          record[attr] = value;\n        });\n        // Allow configuration function which alters record based on attributes of\n        // table row (e.g. from html5 data- attributes)\n        if (typeof(settings.readers._rowReader) === \"function\") {\n          settings.readers._rowReader(index, this, record);\n        }\n        records.push(record);\n      });\n      return records; // 1st row is header\n    };\n\n    // count records from table\n    this.count = function() {\n      return settings.dataset.records.length;\n    };\n  };\n\n  function RecordsCount(obj, settings) {\n    this.initOnLoad = function() {\n      return settings.features.recordCount;\n    };\n\n    this.init = function() {\n      this.attach();\n    };\n\n    this.create = function() {\n      var recordsShown = obj.records.count(),\n          recordsQueryCount = settings.dataset.queryRecordCount,\n          recordsTotal = settings.dataset.totalRecordCount,\n          text = settings.inputs.recordCountText,\n          collection_name = settings.params.records;\n\n      if (recordsShown < recordsQueryCount && settings.features.paginate) {\n        var bounds = obj.records.pageBounds();\n        text += \"<span class='dynatable-record-bounds'>\" + (bounds[0] + 1) + \" to \" + bounds[1] + \"</span> of \";\n      } else if (recordsShown === recordsQueryCount && settings.features.paginate) {\n        text += recordsShown + \" of \";\n      }\n      text += recordsQueryCount + \" \" + collection_name;\n      if (recordsQueryCount < recordsTotal) {\n        text += \" (filtered from \" + recordsTotal + \" total records)\";\n      }\n\n      return $('<span></span>', {\n                id: 'dynatable-record-count-' + obj.element.id,\n                'class': 'dynatable-record-count',\n                html: text\n              });\n    };\n\n    this.attach = function() {\n      var $target = settings.inputs.recordCountTarget ? $(settings.inputs.recordCountTarget) : obj.$element;\n      $target[settings.inputs.recordCountPlacement](this.create());\n    };\n  };\n\n  function ProcessingIndicator(obj, settings) {\n    this.init = function() {\n      this.attach();\n    };\n\n    this.create = function() {\n      var $processing = $('<div></div>', {\n            html: '<span>' + settings.inputs.processingText + '</span>',\n            id: 'dynatable-processing-' + obj.element.id,\n            'class': 'dynatable-processing',\n            style: 'position: absolute; display: none;'\n          });\n\n      return $processing;\n    };\n\n    this.position = function() {\n      var $processing = $('#dynatable-processing-' + obj.element.id),\n          $span = $processing.children('span'),\n          spanHeight = $span.outerHeight(),\n          spanWidth = $span.outerWidth(),\n          $covered = obj.$element,\n          offset = $covered.offset(),\n          height = $covered.outerHeight(), width = $covered.outerWidth();\n\n      $processing\n        .offset({left: offset.left, top: offset.top})\n        .width(width)\n        .height(height)\n      $span\n        .offset({left: offset.left + ( (width - spanWidth) / 2 ), top: offset.top + ( (height - spanHeight) / 2 )});\n\n      return $processing;\n    };\n\n    this.attach = function() {\n      obj.$element.before(this.create());\n    };\n\n    this.show = function() {\n      $('#dynatable-processing-' + obj.element.id).show();\n      this.position();\n    };\n\n    this.hide = function() {\n      $('#dynatable-processing-' + obj.element.id).hide();\n    };\n  };\n\n  function State(obj, settings) {\n    this.initOnLoad = function() {\n      // Check if pushState option is true, and if browser supports it\n      return settings.features.pushState && history.pushState;\n    };\n\n    this.init = function() {\n      window.onpopstate = function(event) {\n        if (event.state && event.state.dynatable) {\n          obj.state.pop(event);\n        }\n      }\n    };\n\n    this.push = function(data) {\n      var urlString = window.location.search,\n          urlOptions,\n          path,\n          params,\n          hash,\n          newParams,\n          cacheStr,\n          cache,\n          // replaceState on initial load, then pushState after that\n          firstPush = !(window.history.state && window.history.state.dynatable),\n          pushFunction = firstPush ? 'replaceState' : 'pushState';\n\n      if (urlString && /^\\?/.test(urlString)) { urlString = urlString.substring(1); }\n      $.extend(urlOptions, data);\n\n      params = utility.refreshQueryString(urlString, data, settings);\n      if (params) { params = '?' + params; }\n      hash = window.location.hash;\n      path = window.location.pathname;\n\n      obj.$element.trigger('dynatable:push', data);\n\n      cache = { dynatable: { dataset: settings.dataset } };\n      if (!firstPush) { cache.dynatable.scrollTop = $(window).scrollTop(); }\n      cacheStr = JSON.stringify(cache);\n\n      // Mozilla has a 640k char limit on what can be stored in pushState.\n      // See \"limit\" in https://developer.mozilla.org/en/DOM/Manipulating_the_browser_history#The_pushState().C2.A0method\n      // and \"dataStr.length\" in http://wine.git.sourceforge.net/git/gitweb.cgi?p=wine/wine-gecko;a=patch;h=43a11bdddc5fc1ff102278a120be66a7b90afe28\n      //\n      // Likewise, other browsers may have varying (undocumented) limits.\n      // Also, Firefox's limit can be changed in about:config as browser.history.maxStateObjectSize\n      // Since we don't know what the actual limit will be in any given situation, we'll just try caching and rescue\n      // any exceptions by retrying pushState without caching the records.\n      //\n      // I have aboslutely no idea why perPageOptions suddenly becomes an array-like object instead of an array,\n      // but just recently, this started throwing an error if I don't convert it:\n      // 'Uncaught Error: DATA_CLONE_ERR: DOM Exception 25'\n      cache.dynatable.dataset.perPageOptions = $.makeArray(cache.dynatable.dataset.perPageOptions);\n\n      try {\n        window.history[pushFunction](cache, \"Dynatable state\", path + params + hash);\n      } catch(error) {\n        // Make cached records = null, so that `pop` will rerun process to retrieve records\n        cache.dynatable.dataset.records = null;\n        window.history[pushFunction](cache, \"Dynatable state\", path + params + hash);\n      }\n    };\n\n    this.pop = function(event) {\n      var data = event.state.dynatable;\n      settings.dataset = data.dataset;\n\n      if (data.scrollTop) { $(window).scrollTop(data.scrollTop); }\n\n      // If dataset.records is cached from pushState\n      if ( data.dataset.records ) {\n        obj.dom.update();\n      } else {\n        obj.process(true);\n      }\n    };\n  };\n\n  function Sorts(obj, settings) {\n    this.initOnLoad = function() {\n      return settings.features.sort;\n    };\n\n    this.init = function() {\n      var sortsUrl = window.location.search.match(new RegExp(settings.params.sorts + '[^&=]*=[^&]*', 'g'));\n      settings.dataset.sorts = sortsUrl ? utility.deserialize(sortsUrl)[settings.params.sorts] : {};\n      settings.dataset.sortsKeys = sortsUrl ? utility.keysFromObject(settings.dataset.sorts) : [];\n    };\n\n    this.add = function(attr, direction) {\n      var sortsKeys = settings.dataset.sortsKeys,\n          index = $.inArray(attr, sortsKeys);\n      settings.dataset.sorts[attr] = direction;\n      if (index === -1) { sortsKeys.push(attr); }\n      return dt;\n    };\n\n    this.remove = function(attr) {\n      var sortsKeys = settings.dataset.sortsKeys,\n          index = $.inArray(attr, sortsKeys);\n      delete settings.dataset.sorts[attr];\n      if (index !== -1) { sortsKeys.splice(index, 1); }\n      return dt;\n    };\n\n    this.clear = function() {\n      settings.dataset.sorts = {};\n      settings.dataset.sortsKeys.length = 0;\n    };\n\n    // Try to intelligently guess which sort function to use\n    // based on the type of attribute values.\n    // Consider using something more robust than `typeof` (http://javascriptweblog.wordpress.com/2011/08/08/fixing-the-javascript-typeof-operator/)\n    this.guessType = function(a, b, attr) {\n      var types = {\n            string: 'string',\n            number: 'number',\n            'boolean': 'number',\n            object: 'number' // dates and null values are also objects, this works...\n          },\n          attrType = a[attr] ? typeof(a[attr]) : typeof(b[attr]),\n          type = types[attrType] || 'number';\n      return type;\n    };\n\n    // Built-in sort functions\n    // (the most common use-cases I could think of)\n    this.functions = {\n      number: function(a, b, attr, direction) {\n        return a[attr] === b[attr] ? 0 : (direction > 0 ? a[attr] - b[attr] : b[attr] - a[attr]);\n      },\n      string: function(a, b, attr, direction) {\n        var aAttr = (a['dynatable-sortable-text'] && a['dynatable-sortable-text'][attr]) ? a['dynatable-sortable-text'][attr] : a[attr],\n            bAttr = (b['dynatable-sortable-text'] && b['dynatable-sortable-text'][attr]) ? b['dynatable-sortable-text'][attr] : b[attr],\n            comparison;\n        aAttr = aAttr.toLowerCase();\n        bAttr = bAttr.toLowerCase();\n        comparison = aAttr === bAttr ? 0 : (direction > 0 ? aAttr > bAttr : bAttr > aAttr);\n        // force false boolean value to -1, true to 1, and tie to 0\n        return comparison === false ? -1 : (comparison - 0);\n      },\n      originalPlacement: function(a, b) {\n        return a['dynatable-original-index'] - b['dynatable-original-index'];\n      }\n    };\n  };\n\n  // turn table headers into links which add sort to sorts array\n  function SortsHeaders(obj, settings) {\n    var _this = this;\n\n    this.initOnLoad = function() {\n      return settings.features.sort;\n    };\n\n    this.init = function() {\n      this.attach();\n    };\n\n    this.create = function(cell) {\n      var $cell = $(cell),\n          $link = $('<a></a>', {\n            'class': 'dynatable-sort-header',\n            href: '#',\n            html: $cell.html()\n          }),\n          id = $cell.data('dynatable-column'),\n          column = utility.findObjectInArray(settings.table.columns, {id: id});\n\n      $link.bind('click', function(e) {\n        _this.toggleSort(e, $link, column);\n        obj.process();\n\n        e.preventDefault();\n      });\n\n      if (this.sortedByColumn($link, column)) {\n        if (this.sortedByColumnValue(column) == 1) {\n          this.appendArrowUp($link);\n        } else {\n          this.appendArrowDown($link);\n        }\n      }\n\n      return $link;\n    };\n\n    this.removeAll = function() {\n      obj.$element.find(settings.table.headRowSelector).children('th,td').each(function(){\n        _this.removeAllArrows();\n        _this.removeOne(this);\n      });\n    };\n\n    this.removeOne = function(cell) {\n      var $cell = $(cell),\n          $link = $cell.find('.dynatable-sort-header');\n      if ($link.length) {\n        var html = $link.html();\n        $link.remove();\n        $cell.html($cell.html() + html);\n      }\n    };\n\n    this.attach = function() {\n      obj.$element.find(settings.table.headRowSelector).children('th,td').each(function(){\n        _this.attachOne(this);\n      });\n    };\n\n    this.attachOne = function(cell) {\n      var $cell = $(cell);\n      if (!$cell.data('dynatable-no-sort')) {\n        $cell.html(this.create(cell));\n      }\n    };\n\n    this.appendArrowUp = function($link) {\n      this.removeArrow($link);\n      $link.append(\"<span class='dynatable-arrow'> &#9650;</span>\");\n    };\n\n    this.appendArrowDown = function($link) {\n      this.removeArrow($link);\n      $link.append(\"<span class='dynatable-arrow'> &#9660;</span>\");\n    };\n\n    this.removeArrow = function($link) {\n      // Not sure why `parent()` is needed, the arrow should be inside the link from `append()` above\n      $link.find('.dynatable-arrow').remove();\n    };\n\n    this.removeAllArrows = function() {\n      obj.$element.find('.dynatable-arrow').remove();\n    };\n\n    this.toggleSort = function(e, $link, column) {\n      var sortedByColumn = this.sortedByColumn($link, column),\n          value = this.sortedByColumnValue(column);\n      // Clear existing sorts unless this is a multisort event\n      if (!settings.inputs.multisort || !utility.anyMatch(e, settings.inputs.multisort, function(evt, key) { return e[key]; })) {\n        this.removeAllArrows();\n        obj.sorts.clear();\n      }\n\n      // If sorts for this column are already set\n      if (sortedByColumn) {\n        // If ascending, then make descending\n        if (value == 1) {\n          for (var i = 0, len = column.sorts.length; i < len; i++) {\n            obj.sorts.add(column.sorts[i], -1);\n          }\n          this.appendArrowDown($link);\n        // If descending, remove sort\n        } else {\n          for (var i = 0, len = column.sorts.length; i < len; i++) {\n            obj.sorts.remove(column.sorts[i]);\n          }\n          this.removeArrow($link);\n        }\n      // Otherwise, if not already set, set to ascending\n      } else {\n        for (var i = 0, len = column.sorts.length; i < len; i++) {\n          obj.sorts.add(column.sorts[i], 1);\n        }\n        this.appendArrowUp($link);\n      }\n    };\n\n    this.sortedByColumn = function($link, column) {\n      return utility.allMatch(settings.dataset.sorts, column.sorts, function(sorts, sort) { return sort in sorts; });\n    };\n\n    this.sortedByColumnValue = function(column) {\n      return settings.dataset.sorts[column.sorts[0]];\n    };\n  };\n\n  function Queries(obj, settings) {\n    var _this = this;\n\n    this.initOnLoad = function() {\n      return settings.inputs.queries || settings.features.search;\n    };\n\n    this.init = function() {\n      var queriesUrl = window.location.search.match(new RegExp(settings.params.queries + '[^&=]*=[^&]*', 'g'));\n\n      settings.dataset.queries = queriesUrl ? utility.deserialize(queriesUrl)[settings.params.queries] : {};\n      if (settings.dataset.queries === \"\") { settings.dataset.queries = {}; }\n\n      if (settings.inputs.queries) {\n        this.setupInputs();\n      }\n    };\n\n    this.add = function(name, value) {\n      // reset to first page since query will change records\n      if (settings.features.paginate) {\n        settings.dataset.page = 1;\n      }\n      settings.dataset.queries[name] = value;\n      return dt;\n    };\n\n    this.remove = function(name) {\n      delete settings.dataset.queries[name];\n      return dt;\n    };\n\n    this.run = function() {\n      for (query in settings.dataset.queries) {\n        if (settings.dataset.queries.hasOwnProperty(query)) {\n          var value = settings.dataset.queries[query];\n          if (_this.functions[query] === undefined) {\n            // Try to lazily evaluate query from column names if not explictly defined\n            var queryColumn = utility.findObjectInArray(settings.table.columns, {id: query});\n            if (queryColumn) {\n              _this.functions[query] = function(record, queryValue) {\n                return record[query] == queryValue;\n              };\n            } else {\n              $.error(\"Query named '\" + query + \"' called, but not defined in queries.functions\");\n              continue; // to skip to next query\n            }\n          }\n          // collect all records that return true for query\n          settings.dataset.records = $.map(settings.dataset.records, function(record) {\n            return _this.functions[query](record, value) ? record : null;\n          });\n        }\n      }\n      settings.dataset.queryRecordCount = obj.records.count();\n    };\n\n    // Shortcut for performing simple query from built-in search\n    this.runSearch = function(q) {\n      var origQueries = $.extend({}, settings.dataset.queries);\n      if (q) {\n        this.add('search', q);\n      } else {\n        this.remove('search');\n      }\n      if (!utility.objectsEqual(settings.dataset.queries, origQueries)) {\n        obj.process();\n      }\n    };\n\n    this.setupInputs = function() {\n      settings.inputs.queries.each(function() {\n        var $this = $(this),\n            event = $this.data('dynatable-query-event') || settings.inputs.queryEvent,\n            query = $this.data('dynatable-query') || $this.attr('name') || this.id,\n            queryFunction = function(e) {\n              var q = $(this).val();\n              if (q === \"\") { q = undefined; }\n              if (q === settings.dataset.queries[query]) { return false; }\n              if (q) {\n                _this.add(query, q);\n              } else {\n                _this.remove(query);\n              }\n              obj.process();\n              e.preventDefault();\n            };\n\n        $this\n          .attr('data-dynatable-query', query)\n          .bind(event, queryFunction)\n          .bind('keypress', function(e) {\n            if (e.which == 13) {\n              queryFunction.call(this, e);\n            }\n          });\n\n        if (settings.dataset.queries[query]) { $this.val(decodeURIComponent(settings.dataset.queries[query])); }\n      });\n    };\n\n    // Query functions for in-page querying\n    // each function should take a record and a value as input\n    // and output true of false as to whether the record is a match or not\n    this.functions = {\n      search: function(record, queryValue) {\n        var contains = false;\n        // Loop through each attribute of record\n        for (attr in record) {\n          if (record.hasOwnProperty(attr)) {\n            var attrValue = record[attr];\n            if (typeof(attrValue) === \"string\" && attrValue.toLowerCase().indexOf(queryValue.toLowerCase()) !== -1) {\n              contains = true;\n              // Don't need to keep searching attributes once found\n              break;\n            } else {\n              continue;\n            }\n          }\n        }\n        return contains;\n      }\n    };\n  };\n\n  function InputsSearch(obj, settings) {\n    var _this = this;\n\n    this.initOnLoad = function() {\n      return settings.features.search;\n    };\n\n    this.init = function() {\n      this.attach();\n    };\n\n    this.create = function() {\n      var $search = $('<input />', {\n            type: 'search',\n            id: 'dynatable-query-search-' + obj.element.id,\n            value: settings.dataset.queries.search\n          }),\n          $searchSpan = $('<span></span>', {\n            id: 'dynatable-search-' + obj.element.id,\n            'class': 'dynatable-search',\n            text: 'Search: '\n          }).append($search);\n\n      $search\n        .bind(settings.inputs.queryEvent, function() {\n          obj.queries.runSearch($(this).val());\n        })\n        .bind('keypress', function(e) {\n          if (e.which == 13) {\n            obj.queries.runSearch($(this).val());\n            e.preventDefault();\n          }\n        });\n      return $searchSpan;\n    };\n\n    this.attach = function() {\n      var $target = settings.inputs.searchTarget ? $(settings.inputs.searchTarget) : obj.$element;\n      $target[settings.inputs.searchPlacement](this.create());\n    };\n  };\n\n  // provide a public function for selecting page\n  function PaginationPage(obj, settings) {\n    this.initOnLoad = function() {\n      return settings.features.paginate;\n    };\n\n    this.init = function() {\n      var pageUrl = window.location.search.match(new RegExp(settings.params.page + '=([^&]*)'));\n      // If page is present in URL parameters and pushState is enabled\n      // (meaning that it'd be possible for dynatable to have put the\n      // page parameter in the URL)\n      if (pageUrl && settings.features.pushState) {\n        this.set(pageUrl[1]);\n      } else {\n        this.set(1);\n      }\n    };\n\n    this.set = function(page) {\n      settings.dataset.page = parseInt(page, 10);\n    }\n  };\n\n  function PaginationPerPage(obj, settings) {\n    var _this = this;\n\n    this.initOnLoad = function() {\n      return settings.features.paginate;\n    };\n\n    this.init = function() {\n      var perPageUrl = window.location.search.match(new RegExp(settings.params.perPage + '=([^&]*)'));\n\n      // If perPage is present in URL parameters and pushState is enabled\n      // (meaning that it'd be possible for dynatable to have put the\n      // perPage parameter in the URL)\n      if (perPageUrl && settings.features.pushState) {\n        // Don't reset page to 1 on init, since it might override page\n        // set on init from URL\n        this.set(perPageUrl[1], true);\n      } else {\n        this.set(settings.dataset.perPageDefault, true);\n      }\n\n      if (settings.features.perPageSelect) {\n        this.attach();\n      }\n    };\n\n    this.create = function() {\n      var $select = $('<select>', {\n            id: 'dynatable-per-page-' + obj.element.id,\n            'class': 'dynatable-per-page-select'\n          });\n\n      for (var i = 0, len = settings.dataset.perPageOptions.length; i < len; i++) {\n        var number = settings.dataset.perPageOptions[i],\n            selected = settings.dataset.perPage == number ? 'selected=\"selected\"' : '';\n        $select.append('<option value=\"' + number + '\" ' + selected + '>' + number + '</option>');\n      }\n\n      $select.bind('change', function(e) {\n        _this.set($(this).val());\n        obj.process();\n      });\n\n      return $('<span />', {\n        'class': 'dynatable-per-page'\n      }).append(\"<span class='dynatable-per-page-label'>\" + settings.inputs.perPageText + \"</span>\").append($select);\n    };\n\n    this.attach = function() {\n      var $target = settings.inputs.perPageTarget ? $(settings.inputs.perPageTarget) : obj.$element;\n      $target[settings.inputs.perPagePlacement](this.create());\n    };\n\n    this.set = function(number, skipResetPage) {\n      if (!skipResetPage) { obj.paginationPage.set(1); }\n      settings.dataset.perPage = parseInt(number);\n    };\n  };\n\n  // pagination links which update dataset.page attribute\n  function PaginationLinks(obj, settings) {\n    var _this = this;\n\n    this.initOnLoad = function() {\n      return settings.features.paginate;\n    };\n\n    this.init = function() {\n      this.attach();\n    };\n\n    this.create = function() {\n      var $pageLinks = $('<ul></ul>', {\n            id: 'dynatable-pagination-links-' + obj.element.id,\n            'class': 'dynatable-pagination-links',\n            html: '<span>Pages: </span>'\n          }),\n          pageLinkClass = 'dynatable-page-link',\n          activePageClass = 'dynatable-active-page',\n          pages = Math.ceil(settings.dataset.queryRecordCount / settings.dataset.perPage),\n          page = settings.dataset.page,\n          breaks = [\n            settings.inputs.paginationGap[0],\n            settings.dataset.page - settings.inputs.paginationGap[1],\n            settings.dataset.page + settings.inputs.paginationGap[2],\n            (pages + 1) - settings.inputs.paginationGap[3]\n          ],\n          $link;\n\n      for (var i = 1; i <= pages; i++) {\n        if ( (i > breaks[0] && i < breaks[1]) || (i > breaks[2] && i < breaks[3])) {\n          // skip to next iteration in loop\n          continue;\n        } else {\n          $link = $('<a></a>',{\n            html: i,\n            'class': pageLinkClass,\n            'data-dynatable-page': i\n          }).appendTo($pageLinks);\n\n          if (page == i) { $link.addClass(activePageClass); }\n\n          // If i is not between one of the following\n          // (1 + (settings.paginationGap[0]))\n          // (page - settings.paginationGap[1])\n          // (page + settings.paginationGap[2])\n          // (pages - settings.paginationGap[3])\n          var breakIndex = $.inArray(i, breaks),\n              nextBreak = breaks[breakIndex + 1];\n          if (breakIndex > 0 && i !== 1 && nextBreak && nextBreak > (i + 1)) {\n            var $ellip = $('<span class=\"dynatable-page-break\">&hellip;</span>');\n            $link = breakIndex < 2 ? $link.before($ellip) : $link.after($ellip);\n          }\n\n        }\n\n        if (settings.inputs.paginationPrev && i === 1) {\n          var $prevLink = $('<a></a>',{\n            html: settings.inputs.paginationPrev,\n            'class': pageLinkClass + ' dynatable-page-prev',\n            'data-dynatable-page': page - 1\n          });\n          if (page === 1) { $prevLink.addClass(activePageClass); }\n          $link = $link.before($prevLink);\n        }\n        if (settings.inputs.paginationNext && i === pages) {\n          var $nextLink = $('<a></a>',{\n            html: settings.inputs.paginationNext,\n            'class': pageLinkClass + ' dynatable-page-next',\n            'data-dynatable-page': page + 1\n          });\n          if (page === pages) { $nextLink.addClass(activePageClass); }\n          $link = $link.after($nextLink);\n        }\n      }\n\n      $pageLinks.children().wrap('<li></li>');\n\n      // only bind page handler to non-active pages\n      var selector = '#dynatable-pagination-links-' + obj.element.id + ' .' + pageLinkClass + ':not(.' + activePageClass + ')';\n      // kill any existing delegated-bindings so they don't stack up\n      $(document).undelegate(selector, 'click.dynatable');\n      $(document).delegate(selector, 'click.dynatable', function(e) {\n        $this = $(this);\n        $this.closest('.dynatable-pagination-links').find('.' + activePageClass).removeClass(activePageClass);\n        $this.addClass(activePageClass);\n\n        obj.paginationPage.set($this.data('dynatable-page'));\n        obj.process();\n        e.preventDefault();\n      });\n\n      return $pageLinks;\n    };\n\n    this.attach = function() {\n      // append page liks *after* delegate-event-binding so it doesn't need to\n      // find and select all page links to bind event\n      var $target = settings.inputs.paginationLinkTarget ? $(settings.inputs.paginationLinkTarget) : obj.$element;\n      $target[settings.inputs.paginationLinkPlacement](obj.paginationLinks.create());\n    };\n  };\n\n  utility = {\n    normalizeText: function(text, style) {\n      text = this.textTransform[style](text);\n      return text;\n    },\n    textTransform: {\n      trimDash: function(text) {\n        return text.replace(/^\\s+|\\s+$/g, \"\").replace(/\\s+/g, \"-\");\n      },\n      camelCase: function(text) {\n        text = this.trimDash(text);\n        return text\n          .replace(/(\\-[a-zA-Z])/g, function($1){return $1.toUpperCase().replace('-','');})\n          .replace(/([A-Z])([A-Z]+)/g, function($1,$2,$3){return $2 + $3.toLowerCase();})\n          .replace(/^[A-Z]/, function($1){return $1.toLowerCase();});\n      },\n      dashed: function(text) {\n        text = this.trimDash(text);\n        return this.lowercase(text);\n      },\n      underscore: function(text) {\n        text = this.trimDash(text);\n        return this.lowercase(text.replace(/(-)/g, '_'));\n      },\n      lowercase: function(text) {\n        return text.replace(/([A-Z])/g, function($1){return $1.toLowerCase();});\n      }\n    },\n    // Deserialize params in URL to object\n    // see http://stackoverflow.com/questions/1131630/javascript-jquery-param-inverse-function/3401265#3401265\n    deserialize: function(query) {\n      if (!query) return {};\n      // modified to accept an array of partial URL strings\n      if (typeof(query) === \"object\") { query = query.join('&'); }\n\n      var hash = {},\n          vars = query.split(\"&\");\n\n      for (var i = 0; i < vars.length; i++) {\n        var pair = vars[i].split(\"=\"),\n            k = decodeURIComponent(pair[0]),\n            v, m;\n\n        if (!pair[1]) { continue };\n        v = decodeURIComponent(pair[1].replace(/\\+/g, ' '));\n\n        // modified to parse multi-level parameters (e.g. \"hi[there][dude]=whatsup\" => hi: {there: {dude: \"whatsup\"}})\n        while (m = k.match(/([^&=]+)\\[([^&=]+)\\]$/)) {\n          var origV = v;\n          k = m[1];\n          v = {};\n\n          // If nested param ends in '][', then the regex above erroneously included half of a trailing '[]',\n          // which indicates the end-value is part of an array\n          if (m[2].substr(m[2].length-2) == '][') { // must use substr for IE to understand it\n            v[m[2].substr(0,m[2].length-2)] = [origV];\n          } else {\n            v[m[2]] = origV;\n          }\n        }\n\n        // If it is the first entry with this name\n        if (typeof hash[k] === \"undefined\") {\n          if (k.substr(k.length-2) != '[]') { // not end with []. cannot use negative index as IE doesn't understand it\n            hash[k] = v;\n          } else {\n            hash[k] = [v];\n          }\n        // If subsequent entry with this name and not array\n        } else if (typeof hash[k] === \"string\") {\n          hash[k] = v;  // replace it\n        // modified to add support for objects\n        } else if (typeof hash[k] === \"object\") {\n          hash[k] = $.extend({}, hash[k], v);\n        // If subsequent entry with this name and is array\n        } else {\n          hash[k].push(v);\n        }\n      }\n      return hash;\n    },\n    refreshQueryString: function(urlString, data, settings) {\n      var _this = this,\n          queryString = urlString.split('?'),\n          path = queryString.shift(),\n          urlOptions;\n\n      urlOptions = this.deserialize(urlString);\n\n      // Loop through each dynatable param and update the URL with it\n      for (attr in settings.params) {\n        if (settings.params.hasOwnProperty(attr)) {\n          var label = settings.params[attr];\n          // Skip over parameters matching attributes for disabled features (i.e. leave them untouched),\n          // because if the feature is turned off, then parameter name is a coincidence and it's unrelated to dynatable.\n          if (\n            (!settings.features.sort && attr == \"sorts\") ||\n              (!settings.features.paginate && _this.anyMatch(attr, [\"page\", \"perPage\", \"offset\"], function(attr, param) { return attr == param; }))\n          ) {\n            continue;\n          }\n\n          // Delete page and offset from url params if on page 1 (default)\n          if ((attr === \"page\" || attr === \"offset\") && data[\"page\"] === 1) {\n            if (urlOptions[label]) {\n              delete urlOptions[label];\n            }\n            continue;\n          }\n\n          // Delete perPage from url params if default perPage value\n          if (attr === \"perPage\" && data[label] == settings.dataset.perPageDefault) {\n            if (urlOptions[label]) {\n              delete urlOptions[label];\n            }\n            continue;\n          }\n\n          // For queries, we're going to handle each possible query parameter individually here instead of\n          // handling the entire queries object below, since we need to make sure that this is a query controlled by dynatable.\n          if (attr == \"queries\" && data[label]) {\n            var queries = settings.inputs.queries || [],\n                inputQueries = $.makeArray(queries.map(function() { return $(this).attr('name') }));\n            for (var i = 0, len = inputQueries.length; i < len; i++) {\n              var attr = inputQueries[i];\n              if (data[label][attr]) {\n                if (typeof urlOptions[label] === 'undefined') { urlOptions[label] = {}; }\n                urlOptions[label][attr] = data[label][attr];\n              } else {\n                delete urlOptions[label][attr];\n              }\n            }\n            continue;\n          }\n\n          // If we havne't returned true by now, then we actually want to update the parameter in the URL\n          if (data[label]) {\n            urlOptions[label] = data[label];\n          } else {\n            delete urlOptions[label];\n          }\n        }\n      }\n      return decodeURI($.param(urlOptions));\n    },\n    // Get array of keys from object\n    // see http://stackoverflow.com/questions/208016/how-to-list-the-properties-of-a-javascript-object/208020#208020\n    keysFromObject: function(obj){\n      var keys = [];\n      for (var key in obj){\n        keys.push(key);\n      }\n      return keys;\n    },\n    // Find an object in an array of objects by attributes.\n    // E.g. find object with {id: 'hi', name: 'there'} in an array of objects\n    findObjectInArray: function(array, objectAttr) {\n      var _this = this,\n          foundObject;\n      for (var i = 0, len = array.length; i < len; i++) {\n        var item = array[i];\n        // For each object in array, test to make sure all attributes in objectAttr match\n        if (_this.allMatch(item, objectAttr, function(item, key, value) { return item[key] == value; })) {\n          foundObject = item;\n          break;\n        }\n      }\n      return foundObject;\n    },\n    // Return true if supplied test function passes for ALL items in an array\n    allMatch: function(item, arrayOrObject, test) {\n      // start off with true result by default\n      var match = true,\n          isArray = $.isArray(arrayOrObject);\n      // Loop through all items in array\n      $.each(arrayOrObject, function(key, value) {\n        var result = isArray ? test(item, value) : test(item, key, value);\n        // If a single item tests false, go ahead and break the array by returning false\n        // and return false as result,\n        // otherwise, continue with next iteration in loop\n        // (if we make it through all iterations without overriding match with false,\n        // then we can return the true result we started with by default)\n        if (!result) { return match = false; }\n      });\n      return match;\n    },\n    // Return true if supplied test function passes for ANY items in an array\n    anyMatch: function(item, arrayOrObject, test) {\n      var match = false,\n          isArray = $.isArray(arrayOrObject);\n\n      $.each(arrayOrObject, function(key, value) {\n        var result = isArray ? test(item, value) : test(item, key, value);\n        if (result) {\n          // As soon as a match is found, set match to true, and return false to stop the `$.each` loop\n          match = true;\n          return false;\n        }\n      });\n      return match;\n    },\n    // Return true if two objects are equal\n    // (i.e. have the same attributes and attribute values)\n    objectsEqual: function(a, b) {\n      for (attr in a) {\n        if (a.hasOwnProperty(attr)) {\n          if (!b.hasOwnProperty(attr) || a[attr] !== b[attr]) {\n            return false;\n          }\n        }\n      }\n      for (attr in b) {\n        if (b.hasOwnProperty(attr) && !a.hasOwnProperty(attr)) {\n          return false;\n        }\n      }\n      return true;\n    },\n    // Taken from http://stackoverflow.com/questions/105034/how-to-create-a-guid-uuid-in-javascript/105074#105074\n    randomHash: function() {\n      return (((1+Math.random())*0x10000)|0).toString(16).substring(1);\n    }\n  };\n\n  //-----------------------------------------------------------------\n  // Build the dynatable plugin\n  //-----------------------------------------------------------------\n\n  // Object.create support test, and fallback for browsers without it\n  if ( typeof Object.create !== \"function\" ) {\n    Object.create = function (o) {\n      function F() {}\n      F.prototype = o;\n      return new F();\n    };\n  }\n\n  //-----------------------------------------------------------------\n  // Global dynatable plugin setting defaults\n  //-----------------------------------------------------------------\n\n  $.dynatableSetup = function(options) {\n    defaults = mergeSettings(options);\n  };\n\n  // Create dynatable plugin based on a defined object\n  $.dynatable = function( object ) {\n    $.fn['dynatable'] = function( options ) {\n      return this.each(function() {\n        if ( ! $.data( this, 'dynatable' ) ) {\n          $.data( this, 'dynatable', Object.create(object).init(this, options) );\n        }\n      });\n    };\n  };\n\n  $.dynatable(dt);\n\n})(jQuery);\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/views/ConfigureApi/configure.html.twig",
    "content": "{% extends 'NewscoopNewscoopBundle::admin_layout.html.twig' %}\n{% trans_default_domain \"api\" %}\n\n{% form_theme publicResourcesForm _self %}\n{% form_theme clientForm _self %}\n\n{% block choice_widget_expanded %}\n{% spaceless %}\n    <div {{ block('widget_container_attributes') }}>\n    {% for child in form %}\n        <li class=\"form-control\">\n            {{ form_widget(child) }}\n            {{ form_label(child) }}\n        </li>\n    {% endfor %}\n    </div>\n{% endspaceless %}\n{% endblock choice_widget_expanded %}\n\n{% block admin_title %}{{ 'api.configure.title'|trans }}{% endblock %}\n{% block admin_page_title_content %}{{ 'api.configure.title_content'|trans }}{% endblock %}\n\n{% block admin_stylesheets %}\n<link rel=\"stylesheet\" href=\"{{ Newscoop['WEBSITE_URL'] }}/bundles/newscoopnewscoop/css/bootstrap.css\">\n<link rel=\"stylesheet\" href=\"{{ Newscoop['WEBSITE_URL'] }}/bundles/newscoopgimme/css/jquery.dynatable.css\">\n<style type=\"text/css\">\n    .form-control {\n        margin: 0px 0px 10px 0px;\n    }\n    .form-control input {\n        margin-right: 10px;\n    }\n\n    .dynatable-container {\n        padding: 10px;\n        border: 1px solid #ccc;\n    }\n\n    .dynatable-container th {\n        background: #007fb3;\n    }\n</style>\n{% endblock %}\n\n{% block admin_scripts %}\n<script src=\"{{ Newscoop['WEBSITE_URL'] }}/bundles/newscoopgimme/js/jquery.dynatable.js\"></script>\n{% endblock %}\n\n{% block admin_content %}\n{% if form_errors(publicResourcesForm) %}\n    <div class=\"alerts alert-danger\">\n        {{ form_errors(publicResourcesForm) }}\n    </div>\n{% endif %}\n\n{% if form_errors(clientForm) %}\n    <div class=\"alerts alert-danger\">\n        {{ form_errors(clientForm) }}\n    </div>\n{% endif %}\n\n{% if form_errors(removeClientForm) %}\n    <div class=\"alerts alert-danger\">\n        {{ form_errors(removeClientForm) }}\n    </div>\n{% endif %}\n\n{% for flashMessage in app.session.flashbag.get('error') %}\n        <div class=\"alerts alert-danger\">\n            {{ flashMessage }}\n        </div>\n{% endfor %}\n{% for flashMessage in app.session.flashbag.get('success') %}\n        <div class=\"alerts alert-success\">\n            {{ flashMessage }}\n        </div>\n{% endfor %}\n\n<div class=\"row\">\n    <div class=\"col-md-10\" style=\"background-color: #fff;border: 1px solid #9d9d9d;float: none;margin: 30px 30px;padding: 20px 20px 50px 20px;-moz-box-shadow: 0 2px 2px rgba(0,0,0,.10);-webkit-box-shadow: 0 2px 2px rgba(0,0,0,.10);box-shadow: 0 2px 2px rgba(0,0,0,.10);\">\n        <div class=\"tabbable tabs-left\">\n            <ul class=\"nav nav-tabs\">\n                <li class=\"active\"><a href=\"#public_resources\" data-toggle=\"tab\">{{ 'api.configure.tabs.resources'|trans }}</a></li>\n                <li><a href=\"#clients\" data-toggle=\"tab\">{{ 'api.configure.tabs.clients'|trans }}</a></li>\n            </ul>\n            <div class=\"tab-content\">\n                <div class=\"tab-pane active\" id=\"public_resources\">\n                    <p>{{ 'api.configure.resources.info'|trans }}</p>\n                    <p>{{ 'api.configure.resources.api_docs'|trans }}: <a href=\"/documentation/rest-api/\">/documentation/rest-api/</a></p>\n                    {{ form_start(publicResourcesForm) }}\n                        {{ form_errors(publicResourcesForm) }}\n\n                        <div class=\"form-group\">\n                            {{ form_row(publicResourcesForm.routes) }}\n                        </div>\n                        <div class=\"form-group\">\n                            {{ form_row(publicResourcesForm.save, {attr: {class: 'btn btn-success pull-right'}}) }}\n                        </div>\n                        <div class=\"clearfix\"></div>\n                    {{ form_end(publicResourcesForm) }}\n                </div>\n                <div class=\"tab-pane\" id=\"clients\">\n                    <button type=\"button\" class=\"btn btn-success js-show-client-form\">\n                        <span class=\"glyphicon glyphicon-plus-sign\"></span> {{ 'api.configure.resources.add_button'|trans }}\n                    </button>\n\n                    <div style=\"display:none; padding: 10px; border: 1px solid #CCC; margin: 10px 0px;\" class=\"client-form\">\n                    {{ form_start(clientForm) }}\n                        {{ form_errors(clientForm) }}\n\n                        <div class=\"row\" style=\"height: 160px;\">\n                            <div class=\"col-md-4\">\n                                <div class=\"form-group\">\n                                    <div class=\"form_row\">\n                                        {{ form_label(clientForm.name) }}\n                                        {{ form_errors(clientForm.name) }}\n                                        {{ form_widget(clientForm.name, {'attr': {'class': 'form-control'}}) }}\n                                    </div>\n                                </div>\n                            </div>\n\n                            <div class=\"col-md-4\">\n                                <div class=\"form-group\">\n                                    {{ form_label(clientForm.publication) }}\n                                    {{ form_errors(clientForm.publication) }}\n                                    {{ form_widget(clientForm.publication, {'attr': {'class': 'form-control'}}) }}\n                                </div>\n                            </div>\n                            <div class=\"col-md-4\">\n                                <div class=\"form-group\">\n                                    {{ form_label(clientForm.redirectUris) }}\n                                    {{ form_errors(clientForm.redirectUris) }}\n                                    {{ form_widget(clientForm.redirectUris, {'attr': {'class': 'form-control'}}) }}\n                                </div>\n                            </div>\n                            <div class=\"col-md-8\">\n                                <div class=\"form-group\">\n                                    {{ form_label(clientForm.trusted) }}<br>\n                                    {{ form_errors(clientForm.trusted) }}\n                                    {{ form_widget(clientForm.trusted) }}\n                                </div>\n                            </div>\n\n                            <div class=\"col-md-4 col-md-offset-8\">\n                                <div class=\"form-group\">\n                                    {{ form_row(clientForm.save, {attr: {class: 'btn btn-success pull-right'}}) }}\n                                </div>\n                            </div>\n                        </div>\n                    {{ form_end(clientForm) }}\n                    </div>\n                    <div style=\"margin-bottom: 15px;\"></div>\n                    <div class=\"dynatable-container\">\n                      <table id=\"clients-table\" class=\"table table-bordered table-hover\" style=\"word-wrap: break-word;table-layout: fixed;\">\n                        <thead>\n                          <tr>\n                            <th>{{ 'api.configure.clients.table.name'|trans }}</th>\n                            <th>{{ 'api.configure.clients.table.id'|trans }}</th>\n                            <th>{{ 'api.configure.clients.table.secret'|trans }}</th>\n                            <th>{{ 'api.configure.clients.table.redirect'|trans }}</th>\n                            <th>{{ 'api.configure.clients.table.publication'|trans }}</th>\n                            <th>{{ 'api.configure.clients.table.trusted'|trans }}</th>\n                            <th>{{ 'api.configure.clients.table.actions'|trans }}</th>\n                          </tr>\n                        </thead>\n                        <tbody>\n                        {% for client in clients %}\n                          <tr>\n                            <td>{{ client.name }}</td>\n                            <td>{{ client.getPublicId() }}</td>\n                            <td>{{ client.secret }}</td>\n                            <td>{{ client.getRedirectUrisString() }}</td>\n                            <td>{{ client.publication.name }}</td>\n                            <td>{{ client.trusted ? 'Yes'|trans({}, \"messages\") : 'No'|trans({}, \"messages\") }}</td>\n                            <td>\n                                <button type=\"button\" class=\"btn btn-danger btn-xs js-remove-client\" data-form-id=\"{{ client.getPublicId() }}\">\n                                    <span class=\"glyphicon glyphicon-remove\"></span> {{ 'api.configure.clients.table.actions_buttons.remove'|trans }}\n                                </button>\n                            </td>\n                          </tr>\n                        {% endfor %}\n                        </tbody>\n                      </table>\n                    </div>\n\n                    {{ form(removeClientForm) }}\n                </div>\n            </div>\n        </div>\n    </div>\n</div>\n<script type=\"text/javascript\">\n    $('.js-show-client-form').click(function(){\n        $('.client-form').show();\n    });\n\n    $('#clients-table').dynatable({\n        inputs: {\n          paginationClass: 'pagination',\n          paginationActiveClass: 'current',\n          paginationDisabledClass: 'unavailable',\n          paginationPrev: '&laquo;',\n          paginationNext: '&raquo;'\n        }\n    });\n\n    $('.js-remove-client').click(function(){\n        if (confirm('{{ 'api.configure.clients.actions.remove.confirm'|trans }}')) {\n            var form_id = $(this).data('formId');\n            $('#removeClient_client_id').val(form_id);\n            $('#removeClient').parent().submit();\n        }\n    });\n</script>\n{% endblock %}"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Resources/views/Oauth/login.html.twig",
    "content": "<html lang=\"{{ localeFromCookie }}\" dir=\"ltr\">\n<head>\n    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n    <meta http-equiv=\"Expires\" content=\"now\" />\n    <title>{% block admin_title %}{{ Newscoop['site']['title'] }} - {{ 'Login'|trans }}{% endblock %}</title>\n    <link rel=\"shortcut icon\" href=\"{{ Newscoop['WEBSITE_URL'] }}/images/7773658c3ccbf03954b4dacb029b2229.ico\" />\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"{{ Newscoop['ADMIN_STYLE_URL'] }}/admin_stylesheet_new.css\" />\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"{{ Newscoop['ADMIN_STYLE_URL'] }}/admin_stylesheet.css\" />\n\n    <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/campsite.js\"></script>\n    <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/fValidate/fValidate.config.js\"></script>\n    <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/fValidate/fValidate.core.js\"></script>\n    <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/fValidate/fValidate.lang-enUS.js\"></script>\n    <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/fValidate/fValidate.validators.js\"></script>\n    <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/crypt.js\"></script>\n</head>\n<body>\n    <form name=\"login_form\" action=\"{{ path('oauth_login_check') }}{% if app.request.query.has('ajax') %}?ajax=true{% endif %} \" method=\"post\">\n        <div class=\"login_box\">\n            {% if not app.request.query.has('ajax') %}\n            <div class=\"logobox\">\n                <img src=\"{{ Newscoop['ADMIN_IMAGE_BASE_URL'] }}/sign_big.gif\" border=\"0\" alt=\"\" />\n            </div>\n            {% endif %}\n            <h2>{{ \"Login\"|trans }}</h2>\n            <noscript>\n               {{ \"Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.\"|trans({},'home') }}\n            </noscript>\n\n            <div class=\"login_error\" style=\"color: #ff2200;\">\n            {% if error %}\n                {{ error.message|trans({},'home') }}\n            {% endif %}\n            </div>\n\n            <table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"box_table login\" width=\"420\">\n                <tr>\n                    <td colspan=\"2\"><span class=\"light\">{{ \"Please enter your user name and password\"|trans({},'home') }}:</span></td>\n                </tr>\n                <tr>\n                    <td align=\"right\" >\n                        <strong>{{ \"User name\"|trans({},'home') }}:</strong>\n                    </td>\n                    <td>\n                        <input type=\"text\" value=\"{{ last_username }}\" name=\"_username\" size=\"32\" class=\"input_text\" alt=\"blank\" style=\"width:250px;\" emsg=\"{{ \"Please enter your user name.\"|trans({},'home') }}\" />\n                    </td>\n                </tr>\n                <tr>\n                    <td align=\"right\"><strong>{{ \"Password\"|trans }}:</strong></td>\n                    <td>\n                        <input type=\"password\" name=\"_password\" size=\"32\" class=\"input_text\" alt=\"blank\" style=\"width:250px;\" emsg=\"{{ \"Please enter your password.\"|trans({},'home') }}\" />\n                        <input type=\"hidden\" name=\"_target_path\" value=\"{% if app.request.server.get('REDIRECT_URL') != path('oauth_login') %}{{ app.request.server.get('REDIRECT_URL') }}?{{ app.request.server.get('REDIRECT_QUERY_STRING') }}{% else %}/admin{% endif %}\" />\n                    </td>\n                </tr>\n\n                <tr class=\"buttonBlock2\">\n                    <td>\n                    {% if getSystemPref('PasswordRecovery') == 'Y' %}\n                        <a href=\"{{ Newscoop['WEBSITE_URL'] }}/admin/password-recovery\">{{ 'Forgot your password?'|trans({},'home') }}</a>\n                    {% endif %}\n                    </td>\n                    <td>\n                        <noscript>\n                          <input type=\"submit\" class=\"button\" name=\"Login\" value=\"{{ 'Login'|trans }}\" disabled />\n                        </noscript>\n                        <script type=\"text/javascript\">\n                            document.write('<input type=\"submit\" class=\"button\" name=\"Login\" value=\"{{ 'Login'|trans }}\"/>');\n                        </script>\n                    </td>\n                </tr>\n            </table>\n        </div>\n    </form>\n\n    <div class=\"footer\">\n        <a href=\"http://newscoop.sourcefabric.org/\" target=\"_blank\">{{ NewscoopVersion.getPackage() }}</a>, the open content management system for professional journalists. \n        <br />\n        &copy; {{ NewscoopVersion.getCopyrightYear() }} \n        <a href=\"{{ NewscoopVersion.getWebURL() }}\" target=\"_blank\">{{ NewscoopVersion.getOrganization() }}</a> {{ NewscoopVersion.getPackage() }} is distributed under {{ NewscoopVersion.getLicense() }}   \n    </div>\n</body>"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Serializer/Article/AuthorHandler.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Serializer\\Article;\n\nuse JMS\\Serializer\\JsonSerializationVisitor;\n\n/**\n * Create simple Author object from Newscoop\\Entity\\Author object.\n */\nclass AuthorHandler\n{\n    protected $router;\n\n    public function __construct($router)\n    {\n        $this->router = $router;\n    }\n\n    public function serializeToJson(JsonSerializationVisitor $visitor, $articleAuthors, $type)\n    {\n        if (count($articleAuthors) == 0) {\n            return null;\n        }\n\n        $simpleArticleAuthors = array();\n        foreach ($articleAuthors as $author) {\n            $simpleArticleAuthors[] = array(\n                'name' => $author->getFullName(),\n                'link' => $this->router->generate('newscoop_gimme_authors_getauthor', array('id' => $author->getId()), true)\n            );\n        }\n\n        return $simpleArticleAuthors;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Serializer/Article/CommentsCountHandler.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Serializer\\Article;\n\nuse JMS\\Serializer\\JsonSerializationVisitor;\n\n/**\n * Return recommended comments count for article\n */\nclass CommentsCountHandler\n{\n    protected $commentService;\n\n    public function __construct($commentService)\n    {\n        $this->commentService = $commentService;\n    }\n\n    public function getRecomendedCommentsCount(JsonSerializationVisitor $visitor, $data, $type)\n    {\n        $commentsCount = $this->commentService->getCommentCounts(array($data->number), true);\n\n        if (count($commentsCount)) {\n            return $commentsCount[0][1];\n        }\n\n        return 0;\n    }\n\n    public function getCommentsCount(JsonSerializationVisitor $visitor, $data, $type)\n    {\n        $commentsCount = $this->commentService->getCommentCounts(array($data->number), false, true);\n\n        if (count($commentsCount)) {\n            return $commentsCount[0][1];\n        }\n\n        return 0;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Serializer/Article/CommentsLinkHandler.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Serializer\\Article;\n\nuse JMS\\Serializer\\JsonSerializationVisitor;\n\n/**\n * Create simple Author object from Newscoop\\Entity\\Author object.\n */\nclass CommentsLinkHandler\n{\n    protected $router;\n\n    public function __construct($router)\n    {\n        $this->router = $router;\n    }\n\n    public function serializeToJson(JsonSerializationVisitor $visitor, $data, $type)\n    {\n        return $this->router->generate('newscoop_gimme_comments_getcommentsforarticle', array('number' => $data->number, 'language' => $data->language), true);\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Serializer/Article/FieldsHandler.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Serializer\\Article;\n\nuse JMS\\Serializer\\JsonSerializationVisitor;\n\n/**\n * Create array of Article type fields.\n */\nclass FieldsHandler\n{\n\n    public function serializeToJson(JsonSerializationVisitor $visitor, $data, $type)\n    {\n        $articleData = new \\ArticleData($data->type, $data->number, $data->languageId);\n        if (count($articleData->getUserDefinedColumns()) == 0) {\n            return null;\n        }\n\n        $fields = array();\n        foreach ($articleData->getUserDefinedColumns() as $column) {\n            $fields[$column->getPrintName()] = \\MetaSubtitle::ProcessContent(\n                $articleData->getFieldValue($column->getPrintName()),\n                $data->number,\n                $data->languageId\n            );\n        }\n\n        $fields['show_on_front_page'] = $data->onFrontPage == \"Y\" ? 1 : 0;\n        $fields['show_on_section_page'] = $data->onSection == \"Y\" ? 1 : 0;\n\n        return $fields;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Serializer/Article/RenditionsHandler.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Serializer\\Article;  \n\nuse JMS\\Serializer\\JsonSerializationVisitor;\n\n/**\n * Create Renditions array for Newscoop\\Entity\\Article resource.\n */\nclass RenditionsHandler\n{\n    protected $imageService;\n    protected $zendRouter;\n    protected $publicationAliasName;\n    protected $renditionService;\n\n    public function __construct($imageService, $zendRouter, $publicationService, $renditionService)\n    {\n        $this->imageService = $imageService;\n        $this->zendRouter = $zendRouter;\n        $this->publicationAliasName = $publicationService->getPublicationAlias()->getName();\n        $this->renditionService = $renditionService;\n    }\n\n    public function serializeToJson(JsonSerializationVisitor $visitor, $data, $type)\n    {\n        $articleRenditions = $this->renditionService->getArticleRenditions($data->number);\n        $renditions = $this->renditionService->getRenditions();\n        $media = array();\n\n        if (count($renditions) == 0) {\n            return null;\n        }\n\n        foreach ($renditions as $renditionName => $rendition) {\n            if (!$articleRenditions->offsetExists($rendition)) {\n                continue;\n            }\n\n            $image = $this->imageService->find($articleRenditions[$rendition]->getImage()->getId());\n            $articleRenditionImage = $this->renditionService->getArticleRenditionImage($data->number, $renditionName);\n\n            $articleRenditionImage['original']->src = $this->publicationAliasName . $this->zendRouter->assemble(array(\n                'src' => $articleRenditionImage['original']->src\n            ), 'image');\n\n            $media[] = array(\n                'caption' => $renditionName,\n                'type' => 'image',\n                'link' => $this->publicationAliasName . $this->zendRouter->assemble(array(\n                    'src' => $articleRenditionImage['src']\n                ), 'image'),\n                'details' => array(\n                    'width' => $articleRenditionImage['width'],\n                    'height' => $articleRenditionImage['height'],\n                    'caption' => $articleRenditionImage['caption'],\n                    'photographer' => $articleRenditionImage['photographer'],\n                    'photographer_url' => $articleRenditionImage['photographer_url'],\n                    'original' => $articleRenditionImage['original']\n                )\n            );\n        }\n\n        return $media;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Serializer/Article/TranslationsHandler.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Serializer\\Article;\n\nuse JMS\\Serializer\\JsonSerializationVisitor;\n\n/**\n * Create Article translations array.\n */\nclass TranslationsHandler\n{\n    protected $em;\n    protected $router;\n\n    public function __construct($em, $router)\n    {\n        $this->em = $em;\n        $this->router = $router;\n    }\n\n    public function serializeToJson(JsonSerializationVisitor $visitor, $data, $type)\n    {\n        $articleTranslations = $this->em->getRepository('Newscoop\\Entity\\Article')\n            ->getArticleTranslations($data->number, $data->languageId)\n            ->getResult();\n\n        if (count($articleTranslations) == 0) {\n            return null;\n        }\n\n        $articleTranslationsArray = array();\n        foreach ($articleTranslations as $article) {\n            $articleTranslationsArray[$article->getLanguageCode()] = $this->router->generate('newscoop_gimme_articles_getarticle', array('number' => $article->getNumber(), 'language' => $article->getLanguageCode()), true);\n        }\n\n        return $articleTranslationsArray;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Serializer/Article/UrlHandler.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Serializer\\Article;\n\nuse JMS\\Serializer\\JsonSerializationVisitor;\n\n/**\n * Return url for article\n */\nclass UrlHandler\n{\n    protected $linkService;\n\n    public function __construct($linkService)\n    {\n        $this->linkService = $linkService;\n    }\n\n    public function getArticleUrl(JsonSerializationVisitor $visitor, $data, $type)\n    {\n        $articleUrl = $this->linkService->getLink($data);\n\n        return $articleUrl;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Serializer/Image/ImageUriHandler.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\GimmeBundle\\Serializer\\Image;\n\nuse JMS\\Serializer\\JsonSerializationVisitor;\n\nclass ImageUriHandler\n{\n    protected $imageService;\n    protected $zendRouter;\n    protected $linkService;\n\n    public function __construct($imageService, $zendRouter, $linkService)\n    {\n        $this->imageService = $imageService;\n        $this->zendRouter = $zendRouter;\n        $this->linkService = $linkService;\n    }\n\n    public function serializeToJson(JsonSerializationVisitor $visitor, $data, array $type)\n    {\n        if (property_exists($data, 'videoUrl') && is_string($data->getVideoUrl())) {\n            return $data->getVideoUrl();\n        }\n\n        if (!property_exists($data, 'imageId') && !property_exists($data, 'image')) {\n            return;\n        }\n\n        if (property_exists($data, 'image') && is_string($data->image)) {\n            $imageUri = $this->linkService->getBaseUrl($this->zendRouter->assemble(array(\n                'controller' => 'images',\n                'action' => null,\n            )).'/'.$data->image);\n\n            return $imageUri;\n        } elseif (property_exists($data, 'imageId') && $data->imageId) {\n            $image = $this->imageService->find($data->imageId);\n            $imageSrc = $this->imageService->getSrc($image->getPath(), $image->getWidth(), $image->getHeight());\n            $imageUri = $this->linkService->getBaseUrl($this->zendRouter->assemble(array(\n                'src' => $imageSrc,\n            ), 'image', true, false));\n\n            return $imageUri;\n        } elseif (property_exists($data, 'image') && is_object($data->image)) {\n            $image = $data->image;\n            $imageSrc = $this->imageService->getSrc($image->getPath(), $image->getWidth(), $image->getHeight());\n            $imageUri = $this->linkService->getBaseUrl($this->zendRouter->assemble(array(\n                'src' => $imageSrc,\n            ), 'image', false, false));\n\n            return $imageUri;\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Serializer/Image/ThumbnailUriHandler.php",
    "content": "<?php\n\n/**\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2015 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Serializer\\Image;\n\nuse JMS\\Serializer\\JsonSerializationVisitor;\n\nclass ThumbnailUriHandler\n{\n    protected $linkService;\n\n    public function __construct($linkService)\n    {\n        $this->linkService = $linkService;\n    }\n\n    public function serializeToJson(JsonSerializationVisitor $visitor, $item, $type)\n    {\n        if ($item->getThumbnailPath()) {\n            return $this->linkService->getBaseUrl('/'.$item->getThumbnailPath());\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Serializer/Package/ItemsLinkHandler.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Serializer\\Package;  \n\nuse JMS\\Serializer\\JsonSerializationVisitor;\n\n/**\n * Create uri for items resource.\n */\nclass ItemsLinkHandler\n{\n    protected $router;\n\n    public function __construct($router)\n    {\n        $this->router = $router;\n    }\n\n    public function serializeToJson(JsonSerializationVisitor $visitor, $data, $type)\n    {\n        return $uri = $this->router->generate('newscoop_gimme_slideshows_getslideshowitems', array(\n            'id' => $data->id\n        ), true);\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/GimmeBundle/Serializer/Topic/TopicPathHandler.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\GimmeBundle\\Serializer\\Topic;\n\nuse JMS\\Serializer\\JsonSerializationVisitor;\nuse Doctrine\\ORM\\EntityManager;\n\n/**\n * Generates path for given topic and display it in Topic object in API.\n * e.g. / root topic / subtopic 1 / subtopic 1-1\n */\nclass TopicPathHandler\n{\n    /**\n     * Entity Manager\n     * @var EntityManager\n     */\n    protected $em;\n\n    /**\n     * Construct\n     * @param EntityManager $em Entity Manager\n     */\n    public function __construct(EntityManager $em)\n    {\n        $this->em = $em;\n    }\n\n    public function serializeToJson(JsonSerializationVisitor $visitor, $topic, $type)\n    {\n        if (!$topic) {\n            return null;\n        }\n\n        $path = $this->em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')->getReadablePath($topic);\n\n        return $path;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Controller/AttachmentsController.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Template;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\Routing\\Exception\\ResourceNotFoundException;\nuse Symfony\\Component\\HttpFoundation\\BinaryFileResponse;\nuse Symfony\\Component\\HttpFoundation\\ResponseHeaderBag;\nuse Newscoop\\Entity\\Attachment;\n\nclass AttachmentsController extends Controller\n{\n    /**\n     * @Route(\"attachment/{id}/{name}\")\n     */\n    public function downloadAttachmentAction(Request $request, $id, $name)\n    {\n        $em = $this->get('em');\n        $attachmentService = $this->get('attachment');\n        $download = $request->query->get('g_download');\n        $showInBrowser = $request->query->get('g_show_in_browser');\n\n        $attachment = $em->getRepository('Newscoop\\Entity\\Attachment')\n            ->getAttachment($id)\n            ->getOneOrNullResult();\n\n        if (!$attachment) {\n            throw new ResourceNotFoundException(\"Attachment not found\");\n        }\n\n        if ($download) {\n            $response = $this->sendFileAsAttachment($attachment, $attachmentService);\n        } elseif ($showInBrowser) {\n            $response = $this->openFileInBrowser($attachment, $attachmentService);\n        } else {\n            if ($attachment->getContentDisposition() == Attachment::CONTENT_DISPOSITION) {\n                $response = $this->sendFileAsAttachment($attachment, $attachmentService);\n            } else {\n                $response = $this->openFileInBrowser($attachment, $attachmentService);\n            }\n        }\n\n        return $response;\n    }\n\n    private function sendFileAsAttachment($attachment, $attachmentService)\n    {\n        $file = $attachmentService->getStorageLocation($attachment);\n        $fileSystemService = $this->get('newscoop.filesystem');\n        $response = new BinaryFileResponse($file);\n        $d = $response->headers->makeDisposition(\n            ResponseHeaderBag::DISPOSITION_ATTACHMENT,\n            $attachment->getName(),\n            $fileSystemService->sanitizeFileName($attachment->getName())\n        );\n\n        $response->headers->set('Content-Disposition', $d);\n\n        return $response;\n    }\n\n    private function openFileInBrowser($attachment, $attachmentService)\n    {\n        $file = $attachmentService->getStorageLocation($attachment);\n        $response = new BinaryFileResponse($file);\n\n        return $response;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Controller/AuthorsController.php",
    "content": "<?php\n/**\n * @package   Newscoop\\NewscoopBundle\n * @author    Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license   http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Symfony\\Component\\HttpFoundation\\JsonResponse;\nuse Symfony\\Component\\HttpFoundation\\Request;\n\n/**\n * Authors controller.\n */\nclass AuthorsController extends Controller\n{\n    /**\n     * @Route(\"/admin/authors/get\", options={\"expose\"=true})\n     */\n    public function getAuthorsAction(Request $request)\n    {\n        $authorService = $this->get('author');\n\n        $limit = $request->query->get('limit', null);\n        $term = $request->query->get('term', null);\n        $alsoUsers = $request->query->get('users', false);\n\n        $authors = $authorService->getAuthors($term, $limit, $alsoUsers);\n\n        return new JsonResponse($authors);\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Controller/BackendArticleImagesController.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Template;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Method;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\RedirectResponse;\nuse Symfony\\Component\\Routing\\Exception\\ResourceNotFoundException;\nuse Newscoop\\NewscoopBundle\\Form\\Type\\ArticleImageType;\n\nclass BackendArticleImagesController extends Controller\n{\n    /**\n     * @Route(\"/admin/articles/{language}/{articleNumber}/images/{imageId}/edit\", name=\"newscoop_newscoop_article_images_edit\")\n     * @Template()\n     */\n    public function editAction(Request $request, $language, $articleNumber, $imageId)\n    {\n        $em = $this->get('em');\n        $imageService = $this->container->get('image');\n        $articleImage = $imageService->getArticleImage($articleNumber, $imageId);\n        $preferencesService = $this->container->get('preferences');\n\n        $description = $articleImage->getImage()->getDescription();\n        $caption = $articleImage->getCaption($language);\n        $captions = $articleImage->getImage()->getCaptions();\n\n        if ($preferencesService->MediaRichTextCaptions == 'N') {\n            $description = strip_tags($description);\n            $caption = strip_tags($caption);\n            if (is_array($captions) && count($captions) > 0) {\n                array_walk($captions, function(&$value) {\n                    $value = strip_tags($value);\n                });\n            }\n        }\n\n        $form = $this->container->get('form.factory')->create(new ArticleImageType(), array(\n            'number' => $articleImage->getNumber(),\n            'caption' => $caption,\n            'language' => $language,\n            'status' => $articleImage->getImage()->getStatus(),\n            'description' => $description,\n            'photographer' => $articleImage->getImage()->getPhotographer(),\n            'photographer_url' => $articleImage->getImage()->getPhotographerUrl(),\n            'place' => $articleImage->getImage()->getPlace(),\n            'date' => $articleImage->getImage()->getDate(),\n        ), array(\n            'action' => $this->generateUrl('newscoop_newscoop_article_images_edit', array(\n                'language' => $language,\n                'articleNumber' => $articleNumber,\n                'imageId' => $imageId\n            )),\n            'method' => 'POST',\n            'rich_text_caption' => $preferencesService->MediaRichTextCaptions,\n        ));\n\n        if ($request->isMethod('POST')) {\n            $form->bind($request);\n            if ($form->isValid()) {\n                $data = $form->getData();\n                $data['user'] = $this->container->get('user')->getCurrentUser();\n                $imageService->fillImage($articleImage->getImage(), $data);\n                $imageService->saveArticleImage($articleImage, $data);\n\n                return new RedirectResponse($this->generateUrl('newscoop_newscoop_article_images_edit', array(\n                    'language' => $language,\n                    'articleNumber' => $articleNumber,\n                    'imageId' => $imageId\n                )));\n            }\n        }\n\n        $editor = '';\n        if ($preferencesService->MediaRichTextCaptions == 'Y') {\n\n            $editorLanguage = $request->getLocale();\n            $editorOptions  = array(\n                'max_chars' => $preferencesService->MediaCaptionLength,\n                'toolbar_length' => 11,\n            );\n\n            $userService = $this->container->get('user');\n\n            ob_start();\n            require_once($GLOBALS['g_campsiteDir'].\"/admin-files/media-archive/editor_load_tinymce.php\");\n            editor_load_tinymce(array('article_image_caption', 'article_image_description'), $userService->getCurrentUser(), $editorLanguage, $editorOptions);\n            $editor = ob_get_contents();\n            ob_end_clean();\n        }\n\n        return array(\n            'form' => $form->createView(),\n            'imageService' => $imageService,\n            'articleImage' => $articleImage,\n            'image' => $articleImage->getImage(),\n            'caption' => $caption,\n            'captions' => $captions,\n            'editor' => $editor,\n            'rich_text_caption' => $preferencesService->MediaRichTextCaptions,\n        );\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Controller/BackendJournalistDashboardController.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Template;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\JsonResponse;\n\nclass BackendJournalistDashboardController extends Controller\n{\n    /**\n     * @Route(\"/admin/dashboard/journalist/\", name=\"newscoop_newscoop_dashboard_journalist\")\n     * @Template()\n     */\n    public function indexAction(Request $request)\n    {\n        $em = $this->get('em');\n        $userService = $this->get('user');\n        $author = $userService->getCurrentUser()->getAuthor();\n\n        $commentsPerDay = $em->getRepository('Newscoop\\Entity\\Comment')\n            ->getCommentsForAuthorArticlesPerDay($author)\n            ->getArrayResult();\n        foreach ($commentsPerDay as $key => $value) {\n            $commentsPerDay[$value['date']] = $value;\n            unset($commentsPerDay[$key]);\n        }\n\n        $articlesPerDay = $em->getRepository('Newscoop\\Entity\\Article')\n            ->getArticlesForAuthorPerDay($author)\n            ->getArrayResult();\n        foreach ($articlesPerDay as $key => $value) {\n            $articlesPerDay[$value['date']] = $value;\n            unset($articlesPerDay[$key]);\n        }\n\n        $begin = new \\DateTime('NOW');\n        $begin->modify('-60 days');\n        $end = new \\DateTime('NOW');\n        $end->modify('+1 day');\n\n        $interval = \\DateInterval::createFromDateString('1 day');\n        $period = new \\DatePeriod($begin, $interval, $end);\n\n        $lineWidgetData = array();\n        foreach ($period as $dt) {\n          $element = array('date' => $dt->format(\"Y-m-d\"));\n          if (array_key_exists($dt->format(\"Y-m-d\"), $commentsPerDay)) {\n            $element['comments'] = $commentsPerDay[$dt->format(\"Y-m-d\")]['number'];\n          } else {\n            $element['comments'] = 0;\n          }\n\n        if (array_key_exists($dt->format(\"Y-m-d\"), $articlesPerDay)) {\n            $element['articles'] = $articlesPerDay[$dt->format(\"Y-m-d\")]['number'];\n          } else {\n            $element['articles'] = 0;\n          }\n\n          $lineWidgetData[] = $element;\n        }\n\n        return array(\n            'lineWidgetData' => $lineWidgetData\n        );\n    }\n\n    /**\n     * @Route(\"admin/dashboard/loadAuthorArticles/\", options={\"expose\"=true}, name=\"newscoop_newscoop_dashboard_author_articles\")\n     */\n    public function loadUsersAction(Request $request)\n    {\n        $em = $this->get('em');\n        $userService = $this->get('user');\n        $cacheService = $this->get('newscoop.cache');\n        $linkService = $this->get('article.link');\n        $author = $userService->getCurrentUser()->getAuthor();\n\n        if (!$author) {\n            return new JsonResponse(array('error' => 'No Author'));\n        }\n\n        $criteria = $this->getCriteria($request);\n        $cacheKey = $cacheService->getCacheKey(array('author_articles__'.md5(serialize($criteria)), $author->getId()));\n\n        if ($cacheService->contains($cacheKey)) {\n            $responseArray =  $cacheService->fetch($cacheKey);\n        } else {\n            $articlesQuery = $em->getRepository('Newscoop\\Entity\\Article')\n                ->getArticlesForAuthor($author->getId(), $criteria);\n            $totalCount = $articlesQuery->getHint('knp_paginator.count');\n            $dirtyArticles = $articlesQuery->getResult();\n\n            $articles = array();\n            foreach ($dirtyArticles as $key => $article) {\n                $articles[] = array(\n                    'id' => $article->getNumber().'_'.$article->getLanguageId(),\n                    'name' => $article->getName(),\n                    'published' => $article->getPublished(),\n                    'reads' => $article->getReads(),\n                    'link' => $linkService->getLink($article)\n                );\n            }\n\n            $responseArray = array(\n                'records' => $articles,\n                'queryRecordCount' => count($articles),\n                'totalRecordCount'=> $totalCount\n            );\n\n            $cacheService->save($cacheKey, $responseArray);\n        }\n\n        return new JsonResponse($responseArray);\n    }\n\n    private function getCriteria($request)\n    {\n        $criteria = new \\Newscoop\\Criteria();\n\n        if ($request->query->has('sorts')) {\n            foreach ($request->get('sorts') as $key => $value) {\n                $criteria->orderBy[$key] = $value == '-1' ? 'desc' : 'asc';\n            }\n        }\n\n        if ($request->query->has('queries')) {\n            $queries = $request->query->get('queries');\n\n            if (array_key_exists('search', $queries)) {\n                $criteria->query = $queries['search'];\n            }\n        }\n\n        $criteria->maxResults = $request->query->get('perPage', 10);\n        if ($request->query->has('offset')) {\n            $criteria->firstResult = $request->query->get('offset');\n        }\n\n        return $criteria;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Controller/BackendPublicationsController.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Template;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Symfony\\Component\\HttpFoundation\\RedirectResponse;\nuse Symfony\\Component\\HttpFoundation\\JsonResponse;\nuse Symfony\\Component\\Security\\Core\\Exception\\AccessDeniedException;\nuse Newscoop\\Entity\\Publication;\nuse Newscoop\\Entity\\Aliases;\nuse Newscoop\\NewscoopBundle\\Form\\Type\\PublicationType;\nuse Newscoop\\NewscoopBundle\\Form\\Type\\RemovePublicationType;\nuse Newscoop\\Service\\Resource\\ResourceId;\nuse Newscoop\\Service\\IThemeManagementService;\nuse Newscoop\\Service\\ISyncResourceService;\nuse Newscoop\\Entity\\Output\\OutputSettingsPublication;\n\nclass BackendPublicationsController extends Controller\n{\n    /**\n     * @Route(\"/admin/publications/\", name=\"newscoop_newscoop_publications_index\")\n     */\n    public function indexAction(Request $request)\n    {\n        $em = $this->get('em');\n\n        $user = $this->container->get('user')->getCurrentUser();\n        $translator = $this->container->get('translator');\n        if (!$user->hasPermission('ManagePub')) {\n            throw new AccessDeniedException($translator->trans(\"You do not have the right to change publication information.\", array(), 'pub'));\n        }\n\n        $publications = $em->getRepository('Newscoop\\Entity\\Publication')\n            ->getPublications()\n            ->getArrayResult();\n\n        return $this->render(\n            'NewscoopNewscoopBundle:BackendPublications:index.html.twig',\n            array(\n                'publications' => $publications\n            )\n        );\n    }\n\n    /**\n     * @Route(\"/admin/publications/{id}/edit/\", name=\"newscoop_newscoop_publications_edit\")\n     */\n    public function editAction(Request $request, Publication $publication)\n    {\n        $resourceId = new ResourceId('Publication/Edit');\n        $themeManagementService = $resourceId->getService(IThemeManagementService::NAME_1);\n        $publicationThemes = $themeManagementService->getThemes($publication);\n\n        $user = $this->container->get('user')->getCurrentUser();\n        $translator = $this->container->get('translator');\n        if (!$user->hasPermission('ManagePub')) {\n            throw new AccessDeniedException($translator->trans(\"You do not have the right to change publication information.\", array(), 'pub'));\n        }\n\n        $form = $this->createForm(new PublicationType(), $publication, array(\n            'publication' => $publication,\n            'publication_themes' => $publicationThemes,\n            'em' => $this->container->get('em')\n        ));\n\n        if ($request->getMethod() === 'POST') {\n            $form = $this->processRequest($request, $form, $publication);\n\n            if ($form instanceof RedirectResponse) {\n                return $form;\n            }\n        }\n\n        $publicationIssuesLanguages = array();\n        if ($publication->getIssues()->count() > 0) {\n            foreach ($publication->getIssues() as $issue) {\n                if (!in_array($issue->getLanguageCode(), $publicationIssuesLanguages)) {\n                    $publicationIssuesLanguages[] = $issue->getLanguageCode();\n                }\n            }\n        }\n\n        return $this->render(\n            'NewscoopNewscoopBundle:BackendPublications:edit.html.twig',\n            array(\n                'form' => $form->createView(),\n                'pageTitle' => $translator->trans('publications.title.edit', array(), 'pub'),\n                'publication' => $publication,\n                'publicationIssuesLanguages' => $publicationIssuesLanguages\n            )\n        );\n    }\n\n    /**\n     * @Route(\"/admin/publications/add/\", name=\"newscoop_newscoop_publications_add\")\n     */\n    public function createAction(Request $request)\n    {\n        $user = $this->container->get('user')->getCurrentUser();\n        $translator = $this->container->get('translator');\n        if (!$user->hasPermission('ManagePub')) {\n            throw new AccessDeniedException($translator->trans(\"You do not have the right to add publications.\", array(), 'pub'));\n        }\n\n        $form = $this->createForm(new PublicationType(), new Publication());\n\n        if ($request->getMethod() === 'POST') {\n            return $this->processRequest($request, $form);\n        }\n\n        return $this->render(\n            'NewscoopNewscoopBundle:BackendPublications:edit.html.twig',\n            array(\n                'form' => $form->createView(),\n                'publication' => null,\n                'pageTitle' => $translator->trans('publications.title.add', array(), 'pub')\n            )\n        );\n    }\n\n    /**\n     * @Route(\"/admin/publications/{id}/remove/\", name=\"newscoop_newscoop_publications_remove\")\n     */\n    public function removeAction(Request $request, Publication $publication)\n    {\n        $em = $this->container->get('em');\n        $user = $this->container->get('user')->getCurrentUser();\n        $translator = $this->container->get('translator');\n        if (!$user->hasPermission('ManagePub')) {\n            throw new AccessDeniedException($translator->trans(\"You do not have the right to delete publications.\", array(), 'pub'));\n        }\n\n        $issuesRemaining = $em->getRepository('Newscoop\\Entity\\Issue')->getIssuesCountForPublication($publication->getId())->getSingleScalarResult();\n        $sectionsRemaining = $em->getRepository('Newscoop\\Entity\\Section')->getSectionsCountForPublication($publication->getId())->getSingleScalarResult();\n        $articlesRemaining = $em->getRepository('Newscoop\\Entity\\Article')->getArticlesCountForPublication($publication->getId())->getSingleScalarResult();\n\n        $form = $this->createForm(new RemovePublicationType(), $publication);\n\n        if ($request->getMethod() === 'POST' && $issuesRemaining == 0 && $sectionsRemaining == 0 && $articlesRemaining == 0) {\n            $form->handleRequest($request);\n            if ($form->isValid()) {\n                // remove publication aliases\n                $dql = \"DELETE FROM Newscoop\\Entity\\Aliases as a WHERE a.publication = :publication\";\n                $em->createQuery($dql)->setParameters(array('publication' => $publication))->getResult();\n\n                $em->remove($publication);\n                $em->flush();\n\n                $cacheService = $this->container->get('newscoop.cache');\n                $cacheService->clearNamespace('publication');\n\n                $this->get('session')->getFlashBag()->add('success', $translator->trans('publications.publication_removed', array(), 'pub'));\n\n                return new RedirectResponse($this->generateUrl('newscoop_newscoop_publications_index'));\n            }\n        }\n\n        return $this->render(\n            'NewscoopNewscoopBundle:BackendPublications:remove.html.twig',\n            array(\n                'publication' => $publication,\n                'issuesRemaining' => $issuesRemaining,\n                'sectionsRemaining' => $sectionsRemaining,\n                'articlesRemaining' => $articlesRemaining,\n                'form' => $form->createView()\n            )\n        );\n    }\n\n    private function processRequest($request, $form, $publication = null)\n    {\n        $em = $this->container->get('em');\n\n        $form->handleRequest($request);\n        if ($form->isValid()) {\n            if(!$publication) {\n                $publication = $form->getData();\n                $alias = new Aliases();\n                $alias->setName($publication->getDefaultAlias());\n                $em->persist($alias);\n                $em->flush();\n                $publication->setDefaultAlias($alias);\n                $em->persist($publication);\n                $alias->setPublication($publication);\n            }\n\n            $publicationIssuesLanguages = array();\n            if ($publication->getIssues()->count() > 0) {\n                foreach ($publication->getIssues() as $key => $issue) {\n                    if (!array_key_exists($issue->getLanguageCode(), $publicationIssuesLanguages)) {\n                        $publicationIssuesLanguages[$issue->getLanguageCode()] = $issue->getLanguage();\n                    }\n                }\n            }\n\n            $resourceId = new ResourceId('Publication/Edit');\n            $syncRsc = $resourceId->getService(ISyncResourceService::NAME);\n            foreach ($publicationIssuesLanguages as $languageCode => $language) {\n                $outputSettingsPublication = $em\n                    ->getRepository('Newscoop\\Entity\\Output\\OutputSettingsPublication')\n                    ->findOneBy(array(\n                        'output' => 1,\n                        'publication' => $publication->getId(),\n                        'language' => $language,\n                    )\n                );\n\n                if ($form->get($languageCode.'_front_theme')->getData() !== 0) {\n                    $themeResource = $syncRsc->getThemePath($form->get($languageCode.'_front_theme')->getData());\n                    if (is_null($outputSettingsPublication)) {\n                        $outputSettingsPublication = new OutputSettingsPublication();\n                        $em->persist($outputSettingsPublication);\n                    }\n\n                    $outputSettingsPublication->setPublication($publication);\n                    $outputSettingsPublication->setOutput($em->getReference(\"Newscoop\\Entity\\Output\", 1));\n                    $outputSettingsPublication->setLanguage($language);\n                    $outputSettingsPublication->setThemePath($themeResource);\n                } else {\n                    if ($outputSettingsPublication){\n                        $em->remove($outputSettingsPublication);\n                    }\n                }\n            }\n\n            $em->flush();\n\n            $cacheService = $this->container->get('newscoop.cache');\n            $cacheService->clearNamespace('publication');\n\n            $translator = $this->get('translator');\n            $this->get('session')->getFlashBag()->add('success', $translator->trans('publications.publication_saved', array(), 'pub'));\n\n            return new RedirectResponse($this->generateUrl('newscoop_newscoop_publications_index'));\n        }\n\n        return $form;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Controller/CommentsController.php",
    "content": "<?php\n/**\n * @package   Newscoop\\NewscoopBundle\n * @author    Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license   http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\NewscoopBundle\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Template;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\JsonResponse;\nuse Newscoop\\EventDispatcher\\Events\\GenericEvent;\nuse Newscoop\\Entity\\Comment;\nuse Newscoop\\NewscoopBundle\\Form\\Type\\CommentsFilterType;\nuse Newscoop\\NewscoopBundle\\Form\\Type\\CommentSearchType;\nuse Symfony\\Component\\HttpFoundation\\ParameterBag;\nuse Symfony\\Component\\Security\\Core\\Exception\\AccessDeniedException;\nuse Newscoop\\Entity\\Section;\n\n/**\n * Comments controller.\n */\nclass CommentsController extends Controller\n{\n    /**\n     * @Route(\"/admin/comments\", options={\"expose\"=true})\n     * @Route(\"/admin/comments/search\", name=\"newscoop_newscoop_comments_search\",  options={\"expose\"=true})\n     * @Template()\n     */\n    public function indexAction(Request $request)\n    {\n        $userService = $this->get('user');\n        $blogService = $this->get('blog');\n        $user = $userService->getCurrentUser();\n\n        if (!$user->hasPermission('ModerateComment')) {\n            throw new AccessDeniedException();\n        }\n\n        $em = $this->container->get('em');\n        $translator = $this->container->get('translator');\n        $imageService = $this->container->get('image');\n        $paginator = $this->get('knp_paginator');\n        $commentService = $this->container->get('comment');\n        $statusMap = Comment::$status_enum;\n        $queryBuilder = $em->getRepository('Newscoop\\Entity\\Comment')\n            ->createQueryBuilder('c');\n\n        $queryBuilder\n            ->select('c', 'cm.name')\n            ->leftJoin('c.commenter', 'cm')\n            ->where($queryBuilder->expr()->isNotNull('c.thread'))\n            ->andWhere('c.status != :deleted')\n            ->setParameter('deleted', array_search('deleted', $statusMap))\n            ->orderBy('c.time_created', 'desc');\n\n        $session = $request->getSession();\n        $pageNumber = $this->get('request')->query->get('knp_page', 1);\n        $displayPerPage = 20;\n\n        $filters = new ParameterBag();\n        $filterForm = $this->container->get('form.factory')->create(new CommentsFilterType(), array(), array());\n        $searchForm = $this->container->get('form.factory')->create(new CommentSearchType(), array(), array());\n        $or = $queryBuilder->expr()->orX();\n        $and = $queryBuilder->expr()->andX();\n\n        if ($request->get('_route') === \"newscoop_newscoop_comments_search\") {\n            $searchForm->handleRequest($request);\n            if ($request->isMethod('POST')) {\n                if ($searchForm->isValid()) {\n                    $data = $searchForm->getData();\n\n                    $commentsQueryBuilder = $commentService->searchByPhrase($data['search']);\n                    $countQueryBuilder = clone $commentsQueryBuilder;\n                    $countQueryBuilder->select('COUNT(c)');\n                    $count = $countQueryBuilder->getQuery()->getSingleScalarResult();\n\n                    $comments = $commentsQueryBuilder->getQuery();\n                    $comments->setHint('knp_paginator.count', $count);\n\n                    $pagination = $paginator->paginate($comments, $pageNumber, $displayPerPage, array('distinct' => false));\n                    $pagination->setTemplate('NewscoopNewscoopBundle:Pagination:pagination_bootstrap3.html.twig');\n\n                    return array(\n                        'pagination' => $pagination,\n                        'commentsArray' => $this->createCommentsArray($pagination, $imageService),\n                        'filterForm' => $filterForm->createView(),\n                        'searchForm' => $searchForm->createView(),\n                    );\n                }\n            }\n        }\n\n        $filterForm->handleRequest($request);\n        if ($filterForm->isValid()) {\n            $data = $filterForm->getData();\n            $pageNumber = 1;\n            // if more than one filter applied\n            if (count(array_filter($data)) > 1) {\n                if ($data['recommended'] && $data['unrecommended']) {\n                    $queryBuilder->andWhere($queryBuilder->expr()->orX(\n                        $queryBuilder->expr()->eq('c.recommended', 1),\n                        $queryBuilder->expr()->eq('c.recommended', 0)\n                    ));\n\n                    $filters->set('filterRecommended', $data['recommended']);\n                    $filters->set('filterUnrecommended', $data['unrecommended']);\n                } else {\n                    if ($data['recommended']) {\n                        $queryBuilder->andWhere($queryBuilder->expr()->eq('c.recommended', 1));\n                        $filters->set('filterRecommended', $data['recommended']);\n                    }\n\n                    if ($data['unrecommended']) {\n                        $queryBuilder->andWhere($queryBuilder->expr()->eq('c.recommended', 0));\n                        $filters->set('filterUnrecommended', $data['unrecommended']);\n                    }\n                }\n                unset($data['recommended']);\n                unset($data['unrecommended']);\n                $queryBuilder->andWhere($this->buildFilterQuery($data, $or, $filters, $queryBuilder));\n            } else {\n                if ($data['recommended'] && $data['unrecommended']) {\n                    $queryBuilder->andWhere($queryBuilder->expr()->orX(\n                        $queryBuilder->expr()->eq('c.recommended', 1),\n                        $queryBuilder->expr()->eq('c.recommended', 0)\n                    ));\n\n                    $filters->set('filterRecommended', $data['recommended']);\n                    $filters->set('filterUnrecommended', $data['unrecommended']);\n                } else {\n                    if ($data['recommended']) {\n                        $queryBuilder->andWhere($queryBuilder->expr()->eq('c.recommended', 1));\n                        $filters->set('filterRecommended', $data['recommended']);\n                    }\n\n                    if ($data['unrecommended']) {\n                        $queryBuilder->andWhere($queryBuilder->expr()->eq('c.recommended', 0));\n                        $filters->set('filterUnrecommended', $data['unrecommended']);\n                    }\n                }\n\n                unset($data['recommended']);\n                unset($data['unrecommended']);\n                $queryBuilder->andWhere($this->buildFilterQuery($data, $and, $filters, $queryBuilder));\n            }\n\n            $session->set('commentsFilters', $filters);\n        } else {\n            if ($session->get('commentsFilters')) {\n                // if more than one filter applied\n                if ($session->get('commentsFilters')->count() > 1) {\n                    if ($session->get('commentsFilters')->get('filterRecommended') && $session->get('commentsFilters')->get('filterUnrecommended')) {\n                        $queryBuilder->andWhere($queryBuilder->expr()->orX(\n                            $queryBuilder->expr()->eq('c.recommended', 1),\n                            $queryBuilder->expr()->eq('c.recommended', 0)\n                        ));\n                    } else {\n                        if ($session->get('commentsFilters')->get('filterRecommended')) {\n                            $queryBuilder->andWhere($queryBuilder->expr()->eq('c.recommended', 1));\n                        }\n\n                        if ($session->get('commentsFilters')->get('filterUnrecommended')) {\n                            $queryBuilder->andWhere($queryBuilder->expr()->eq('c.recommended', 0));\n                        }\n                    }\n\n                    $queryBuilder->andWhere($this->buildSessionFilters($session->get('commentsFilters'), $or, $queryBuilder));\n                } else {\n                    if ($session->get('commentsFilters')->get('filterRecommended') && $session->get('commentsFilters')->get('filterUnrecommended')) {\n                        $queryBuilder->andWhere($queryBuilder->expr()->orX(\n                            $queryBuilder->expr()->eq('c.recommended', 1),\n                            $queryBuilder->expr()->eq('c.recommended', 0)\n                        ));\n                    } else {\n                        if ($session->get('commentsFilters')->get('filterRecommended')) {\n                            $queryBuilder->andWhere($queryBuilder->expr()->eq('c.recommended', 1));\n                        }\n\n                        if ($session->get('commentsFilters')->get('filterUnrecommended')) {\n                            $queryBuilder->andWhere($queryBuilder->expr()->eq('c.recommended', 0));\n                        }\n                    }\n\n                    $queryBuilder->andWhere($this->buildSessionFilters($session->get('commentsFilters'), $and, $queryBuilder));\n                }\n            }\n        }\n\n        if (!$session->get('commentsFilters', null)) {\n            $session->set('commentsFilters', $filters);\n        }\n\n        $comments = $queryBuilder->getQuery();\n        $pagination = $paginator->paginate($comments, $pageNumber, $displayPerPage);\n        $pagination->setTemplate('NewscoopNewscoopBundle:Pagination:pagination_bootstrap3.html.twig');\n\n        return array(\n            'pagination' => $pagination,\n            'commentsArray' => $this->createCommentsArray($pagination, $imageService),\n            'filterForm' => $filterForm->createView(),\n            'searchForm' => $searchForm->createView(),\n        );\n    }\n\n    /**\n     * @Route(\"/admin/comments/set-status\", options={\"expose\"=true})\n     */\n    public function setStatusAction(Request $request)\n    {\n        $translator = $this->container->get('translator');\n        $user = $this->container->get('user');\n        $em = $this->container->get('em');\n        $commentService = $this->container->get('comment');\n        $commentsRepository = $commentService->getRepository();\n        $status = $request->request->get('status');\n        $comments = $request->request->get('comment');\n\n        if ($request->isMethod('POST')) {\n            if (!is_array($comments)) {\n                $comments = array($comments);\n            }\n\n            if ($status == \"deleted\") {\n                $comments = array_unique(array_merge($comments, $commentService->getAllReplies($comments, $commentsRepository)));\n            }\n\n            try {\n                foreach ($comments as $id) {\n                    $comment = $em->getRepository('Newscoop\\Entity\\Comment')->find($id);\n                    $thread = $em->getRepository('Newscoop\\Entity\\Article')->findOneBy(array('number' => $comment->getThread()));\n                    if ($status == \"deleted\") {\n                        $message = $translator->trans('comments.msg.error.deletefromarticle', array('$1' => $user->getCurrentUser()->getName(),\n                            '$2' => $thread->getName(), '$3' => $comment->getLanguage()->getCode(), ), 'new_comments');\n                    } else {\n                        $message = $translator->trans('comments.msg.commentinarticle', array('$1' => $user->getCurrentUser()->getName(),\n                            '$2' => $thread->getName(), '$3' => $comment->getLanguage()->getCode(), '$4' => $status, ), 'new_comments');\n                    }\n                }\n\n                $em->getRepository('Newscoop\\Entity\\Comment')->setStatus($comments, $status);\n                $em->flush();\n\n                $cacheService = $this->container->get('newscoop.cache');\n                $cacheService->clearNamespace('comment');\n            } catch (\\Exception $e) {\n                return new JsonResponse(array('message' => $e->getMessage()));\n            }\n\n            return new JsonResponse(array(\n                'message' => $message,\n                'comments' => $comments,\n                'status' => $status,\n            ));\n        }\n    }\n\n    /**\n     * @Route(\"/admin/comments/reply/{id}\", options={\"expose\"=true})\n     */\n    public function replyAction(Request $request, $id)\n    {\n        if ($request->isMethod('POST')) {\n            $em = $this->container->get('em');\n            $values = $request->request->all();\n            $comment = new Comment();\n\n            if (!$values['subject'] || !$values['message']) {\n                return new JsonResponse(array('status' => false));\n            }\n\n            $values['parent'] = $id;\n            $values['user'] = $this->container->get('user')->getCurrentUser();\n            $values['time_created'] = new \\DateTime();\n            $values['ip'] = $request->getClientIp();\n            $values['status'] = 'approved';\n\n            try {\n                $comment = $em->getRepository('Newscoop\\Entity\\Comment')->save($comment, $values);\n                $em->flush();\n            } catch (\\Exception $e) {\n                return new JsonResponse(array(\n                    'status' => $e->getMessage(),\n                ));\n            }\n\n            return new JsonResponse(array(\n                'status' => true,\n            ));\n        }\n    }\n\n    /**\n     * @Route(\"/admin/comments/set-recommended/{comments}/{recommended}\", options={\"expose\"=true})\n     */\n    public function setRecommendedAction(Request $request, $comments, $recommended)\n    {\n        $em = $this->container->get('em');\n        if (!is_array($comments)) {\n            $comments = array($comments);\n        }\n\n        foreach ($comments as $commentId) {\n            if (!$recommended) {\n                continue;\n            }\n            $comment = $em->getRepository('Newscoop\\Entity\\Comment')->find($commentId);\n            $thread = $em->getRepository('Newscoop\\Entity\\Article')->findOneBy(array('number' => $comment->getThread()));\n            $this->container->get('dispatcher')->dispatch('comment.recommended', new GenericEvent($this, array(\n                    'id' => $comment->getId(),\n                    'subject' => $comment->getSubject(),\n                    'article' => $thread->getName(),\n                    'commenter' => $comment->getCommenterName(),\n                )));\n        }\n\n        try {\n            $em->getRepository('Newscoop\\Entity\\Comment')->setRecommended($comments, $recommended);\n            $em->flush();\n        } catch (\\Exception $e) {\n            return new JsonResponse(array('status' => $e->getMessage()));\n        }\n\n        return new JsonResponse(array('status' => true));\n    }\n\n    /**\n     * @Route(\"/admin/comments/update/{id}\", options={\"expose\"=true})\n     */\n    public function updateAction(Request $request, $id)\n    {\n        if ($request->isMethod('POST')) {\n            $em = $this->container->get('em');\n            $values = $request->request->all();\n            if (!$values['subject'] || !$values['message']) {\n                return new JsonResponse(array('status' => false));\n            }\n\n            try {\n                $comment = $em->getRepository('Newscoop\\Entity\\Comment')->find($id);\n                $em->getRepository('Newscoop\\Entity\\Comment')->update($comment, $values);\n                $em->flush();\n            } catch (\\Exception $e) {\n                return new JsonResponse(array('status' => $e->getMessage()));\n            }\n\n            return new JsonResponse(array(\n                'status' => true,\n                'comment' => $id,\n                'subject' => $values['subject'],\n                'message' => $values['message'],\n            ));\n        }\n    }\n\n    /**\n     * @Route(\"/admin/comments/list\", options={\"expose\"=true})\n     */\n    public function listAction(Request $request)\n    {\n        $cols = array('thread_order' => 'default');\n        $article = $request->request->get('article');\n        $language = $request->request->get('language');\n        $comment = $request->request->get('comment');\n\n        if ($article) {\n            $filter = array(\n                'thread' => $article,\n                'language' => $language,\n            );\n        } elseif ($comment) {\n            $filter = array('id' => $comment);\n        }\n\n        $params = array(\n            'sFilter' => $filter,\n            'iDisplayStart' => $request->request->get('iDisplayStart') != null ? $request->request->get('iDisplayStart') : 0,\n            'iDisplayLength' => $request->request->get('iDisplayLength'),\n            'iSortCol_0' => 0,\n            'sSortDir_0' => 'desc',\n        );\n\n        $commentService = $this->container->get('comment');\n        $commentRepository = $commentService->getRepository();\n        $comments = $commentRepository->getData($params, $cols);\n        $result = array();\n        foreach ($comments as $comment) {\n            $commenter = $comment->getCommenter();\n            $result[] = array(\n                'name' => $commenter->getName(),\n                'email' => $commenter->getEmail(),\n                'ip' => $commenter->getIp(),\n                'id' => $comment->getId(),\n                'status' => $comment->getStatus(),\n                'subject' => $comment->getSubject(),\n                'message' => $comment->getMessage(),\n                'time_created' => $comment->getTimeCreated()->format('Y-m-d H:i:s'),\n                'recommended_toggle' => (int) !$comment->getRecommended(),\n            );\n        }\n\n        return new JsonResponse(array('result' => $result));\n    }\n\n    /**\n     * Creates query for given form filters\n     *\n     * @param array                                         $filters          Filters\n     * @param Doctrine\\ORM\\Query\\Expr                       $query            Query operator\n     * @param Symfony\\Component\\HttpFoundation\\ParameterBag $sessionParameter Query operator\n     * @param Doctrine\\ORM\\QueryBuilder                     $queryBuilder     Query builder\n     *\n     * @return Doctrine\\ORM\\Query\\Expr\n     */\n    private function buildFilterQuery($filters, $query, $sessionParameter, $queryBuilder)\n    {\n        $statusMap = Comment::$status_enum;\n        foreach ($filters as $key => $value) {\n            if ($value) {\n                $query->add($queryBuilder->expr()->eq('c.status', array_search($key, $statusMap)));\n                $sessionParameter->set('filter'.ucfirst($key), array_search($key, $statusMap));\n                if ($key == 'approved') {\n                    $sessionParameter->set('filter'.ucfirst($key), true);\n                }\n            }\n        }\n\n        return $query;\n    }\n\n    /**\n     * Creates query for given filters in stored in session\n     *\n     * @param array                     $sessionData  Filters\n     * @param Doctrine\\ORM\\Query\\Expr   $query        Query operator\n     * @param Doctrine\\ORM\\QueryBuilder $queryBuilder Query builder\n     *\n     * @return Doctrine\\ORM\\Query\\Expr\n     */\n    private function buildSessionFilters($sessionData, $query, $queryBuilder)\n    {\n        foreach ($sessionData as $key => $value) {\n            if ($key) {\n                if ($key == 'filterApproved') {\n                    $query->add($queryBuilder->expr()->eq('c.status', 0));\n                } else {\n                    $query->add($queryBuilder->expr()->eq('c.status', $value));\n                }\n            }\n        }\n\n        return $query;\n    }\n\n    /**\n     * Creates comments array for paginator\n     *\n     * @param Knp\\Bundle\\PaginatorBundle     $pagination   Pagination\n     * @param Newscoop\\Services\\ImageService $imageService Image service\n     *\n     * @return array\n     */\n    private function createCommentsArray($pagination, $imageService)\n    {\n        $em = $this->container->get('em');\n        $counter = 1;\n        $commentService = $this->container->get('comment');\n        $commentsArray = array();\n\n        $commentIds = array();\n        foreach ($pagination as $key => $value) {\n            $commentIds[] = $value[0]->getId();\n        }\n\n        if (!empty($commentIds)) {\n            $qb = $em->createQueryBuilder();\n            $comments = $qb\n                ->from('Newscoop\\Entity\\Comment', 'c', 'c.id')\n                ->select('c', 'cc', 'u')\n                ->leftJoin('c.commenter', 'cc')\n                ->leftJoin('cc.user', 'u')\n                ->where($qb->expr()->in('c.id', $commentIds))\n                ->getQuery()\n                ->getResult();\n\n            foreach ($pagination as $comment) {\n                $comment = $comment[0];\n                $thread = $em->getRepository('Newscoop\\Entity\\Article')->findOneBy(array('number' => $comment->getThread()));\n                if (!$thread) {\n                    continue;\n                }\n\n                try {\n                    $threadSection = $thread->getSection();\n                    $sectionName = $threadSection->getName();\n                } catch (\\Doctrine\\ORM\\EntityNotFoundException $e) {\n                    $thread->setSection(new Section(0, 'No section'));\n                    $sectionName = 'No section';\n                }\n\n                $commentsArray[] = array(\n                    'banned' => $commentService->isBanned($comments[$comment->getId()]->getCommenter()),\n                    'avatarHash' => md5($comments[$comment->getId()]->getCommenter()->getEmail()),\n                    'user' =>  $comments[$comment->getId()]->getCommenter()->getUser() ? new \\MetaUser($comments[$comment->getId()]->getCommenter()->getUser()) : null,\n                    'issueNumber' => $thread->getIssueId(),\n                    'section' => $sectionName,\n                    'comment' => $comment,\n                    'index' => $counter,\n                    'article' => $thread\n                );\n\n                $counter++;\n            }\n\n            return $commentsArray;\n        }\n\n        return $commentIds;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Controller/EmbedlyController.php",
    "content": "<?php\n\n/**\n * @author Yorick Terweijden <yorick.terweijden@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\NewscoopBundle\\Controller;\n\nuse Newscoop\\Entity\\Snippet;\nuse Symfony\\Component\\Serializer\\Encoder\\JsonDecode;\n\n// Use this SnippetTemplate creation code to use the Embed.ly Controller.\n// {\"snippetTemplate\":{\"name\":\"Embed.ly\",\"controller\":\"Newscoop\\\\NewscoopBundle\\\\Controller\\\\EmbedlyController\",\"fields\":{\"url\":{\"name\":\"URL\",\"type\":\"text\",\"scope\":\"frontend\",\"required\":\"true\"},\"endpoint\":{\"name\":\"Endpoint\",\"type\":\"text\",\"scope\":\"frontend\",\"required\":\"false\"},\"maxwidth\":{\"name\":\"maxwidth\",\"type\":\"integer\",\"scope\":\"frontend\",\"required\":\"false\"},\"provider_url\":{\"name\":\"provider_url\",\"type\":\"text\",\"scope\":\"backend\",\"required\":\"false\"},\"description\":{\"name\":\"description\",\"type\":\"text\",\"scope\":\"backend\",\"required\":\"false\"},\"title\":{\"name\":\"title\",\"type\":\"text\",\"scope\":\"backend\",\"required\":\"false\"},\"type\":{\"name\":\"type\",\"type\":\"text\",\"scope\":\"backend\",\"required\":\"false\"},\"thumbnail_width\":{\"name\":\"thumbnail_width\",\"type\":\"text\",\"scope\":\"backend\",\"required\":\"false\"},\"height\":{\"name\":\"height\",\"type\":\"integer\",\"scope\":\"backend\",\"required\":\"false\"},\"width\":{\"name\":\"width\",\"type\":\"integer\",\"scope\":\"backend\",\"required\":\"false\"},\"html\":{\"name\":\"html\",\"type\":\"text\",\"scope\":\"backend\",\"required\":\"false\"},\"author_name\":{\"name\":\"author_name\",\"type\":\"text\",\"scope\":\"backend\",\"required\":\"false\"},\"version\":{\"name\":\"version\",\"type\":\"text\",\"scope\":\"backend\",\"required\":\"false\"},\"provider_name\":{\"name\":\"provider_name\",\"type\":\"text\",\"scope\":\"backend\",\"required\":\"false\"},\"thumbnail_url\":{\"name\":\"thumbnail_url\",\"type\":\"text\",\"scope\":\"backend\",\"required\":\"false\"},\"thumbnail_height\":{\"name\":\"thumbnail_height\",\"type\":\"integer\",\"scope\":\"backend\",\"required\":\"false\"},\"author_url\":{\"name\":\"author_url\",\"type\":\"text\",\"scope\":\"backend\",\"required\":\"false\"}},\"templateCode\":\"<a class=\\\"embedly-card\\\" href=\\\"{{ URL }}\\\">{{ title }}</a><script>!function(a){var b=\\\"embedly-platform\\\",c=\\\"script\\\";if(!a.getElementById(b)){var d=a.createElement(c);d.id=b,d.src=(\\\"https:\\\"===document.location.protocol?\\\"https\\\":\\\"http\\\")+\\\"://cdn.embedly.com/widgets/platform.js\\\";var e=document.getElementsByTagName(c)[0];e.parentNode.insertBefore(d,e)}}(document);</script>\"}}\n\nclass EmbedlyController implements SnippetControllerInterface\n{\n    private $snippet;\n    private $endpoints = array('oembed', 'extract');\n    private $apiKey;\n\n    public function __construct(Snippet $snippet, $update = false)\n    {\n        $this->snippet = $snippet;\n        $parameters = array();\n        $parameters = $this->preProcess($parameters);\n        $parameters = $this->Process($parameters);\n        $parameters = $this->postProcess($parameters);\n    }\n\n    public function getSnippet()\n    {\n        return $this->snippet;\n    }\n\n    public function update($parameters)\n    {\n        return $parameters;\n    }\n\n    public function preProcess($parameters)\n    {\n        $parameters['param']['url'] = $this->snippet->getFields()->get('URL')->getData();\n        if (is_null($parameters['param']['url'])) {\n            throw new \\Exception('URL cannot be empty');\n        }\n        $parameters['endpoint'] = $this->snippet->getFields()->get('Endpoint')->getData();\n        if (is_null($parameters['endpoint']) || !in_array($parameters['endpoint'], $this->endpoints)) {\n            $parameters['endpoint'] = 'oembed';\n        }\n        $parameters['param']['maxwidth'] = $this->snippet->getFields()->get('maxwidth')->getData();\n        if ($parameters['param']['maxwidth'] <= 1) {\n            $parameters['param']['maxwidth'] = 550;\n        }\n\n        return $parameters;\n    }\n\n    public function Process($parameters)\n    {\n        // set the URL parameters\n        $content = '';\n        $count = count($parameters['param']);\n        foreach ($parameters['param'] as $paramName => $param) {\n            $content .= $paramName.'='.rawurlencode($param);\n            if (--$count > 0) {\n                $content .= '&';\n            }\n        }\n\n        $request = new \\Buzz\\Message\\Request(\n            'GET',\n            '/1/'.$parameters['endpoint'].'?'.$content.'&key='.$this->getEmbedlyApiKey(),\n            'http://api.embed.ly'\n        );\n        $response = new \\Buzz\\Message\\Response();\n\n        $client = new \\Buzz\\Client\\FileGetContents();\n        $client->send($request, $response);\n        $json = $response->getContent();\n        $decoder = new JsonDecode(true);\n        $result = $decoder->decode($json, 'json');\n        if ($response->getStatusCode() == '200') {\n            $parameters['response'] = $result;\n        } else {\n            $msg = 'Something went wrong';\n            if (isset($result['error_message'])) {\n                $msg = $result['error_message'];\n            }\n\n            throw new \\Exception($msg);\n        }\n\n        return $parameters;\n    }\n\n    public function postProcess($parameters)\n    {\n        foreach ($this->snippet->getFields()->getKeys() as $fieldName) {\n            if (array_key_exists($fieldName, $parameters['response'])) {\n                $this->snippet->setData($fieldName, $parameters['response'][$fieldName]);\n            }\n        }\n\n        return $parameters;\n    }\n\n    private function getEmbedlyApiKey()\n    {\n        if (!$this->apiKey) {\n            return \\Zend_Registry::get('container')->getParameter('embedly.api_key');\n        }\n\n        return $this->apiKey;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Controller/FeedController.php",
    "content": "<?php\n/**\n * @package   Newscoop\\NewscoopBundle\n * @author    Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2016 Sourcefabric z.ú.\n * @license   http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\Response;\n\n/**\n * Provides url's for custom rss/atom feeds\n */\nclass FeedController extends Controller\n{\n    /**\n     * @Route(\"/{languageCode}/feed/\", name=\"newscoop_feed\")\n     * @Route(\"/{languageCode}/feed/{feedName}.{format}\", requirements={\"format\" = \"(rss|atom)\"}, name=\"newscoop_feed_details\")\n     */\n    public function renderFeedAction(Request $request, $languageCode = \"en\", $feedName = \"default\", $format = \"rss\")\n    {\n        $response = new Response();\n        $templatesService = $this->container->get('newscoop.templates.service');\n        $language = $this->container->get('em')->getRepository('Newscoop\\Entity\\Language')->findOneByCode($languageCode);\n        if (!is_null($language)) {\n            $templatesService->getSmarty()->context()->language = new \\MetaLanguage($language->getId());\n        }\n\n        try {\n            $templatesService->setVector(array(\n                'params' => serialize(array($request->query->all(), $feedName, $format, $languageCode))\n            ));\n            $response->setContent($templatesService->fetchTemplate('_feed/'.$feedName.'.tpl'));\n            $response->setStatusCode(Response::HTTP_OK);\n            $response->headers->set('Content-Type', 'application/'.$format.'+xml; charset=UTF-8');\n        } catch (\\SmartyException $e) {\n            $response->setContent($templatesService->fetchTemplate('404.tpl'));\n            $response->setStatusCode(Response::HTTP_NOT_FOUND);\n        }\n\n        return $response;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Controller/ImagesController.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Template;\nuse Symfony\\Component\\HttpFoundation\\Request;\n\nclass ImagesController extends Controller\n{\n    /**\n     * @Route(\"get_img\", name=\"newscoop_get_img\")\n     */\n    public function indexAction(Request $request)\n    {\n        // reads parameters from image link URI\n        $imageId = $request->get('ImageId', null);\n        $articleNr = $request->get('NrArticle', null);\n        $imageNr = $request->get('NrImage', null);\n        $imageRatio = $request->get('ImageRatio', null);\n        $imageResizeWidth = $request->get('ImageWidth', null);\n        $imageResizeHeight = $request->get('ImageHeight', null);\n        $imageCrop = $request->get('ImageForcecrop', null);\n        $resizeCrop = $request->get('ImageCrop', null);\n\n        if (empty($imageId) && !empty($imageNr) && !empty($articleNr)) {\n            $articleImage = new \\ArticleImage($articleNr, null, $imageNr);\n            $imageId = $articleImage->getImageId();\n        }\n\n        $showImage = new \\CampGetImage($imageId, $imageRatio, $imageResizeWidth, $imageResizeHeight, $imageCrop, $resizeCrop);\n        die();\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Controller/LanguageController.php",
    "content": "<?php\n\n/**\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2015 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\NewscoopBundle\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Symfony\\Component\\HttpFoundation\\JsonResponse;\nuse Symfony\\Component\\HttpFoundation\\Request;\n\n/**\n * Language controller.\n */\nclass LanguageController extends Controller\n{\n    /**\n     * @Route(\"/admin/languages/get-all\", options={\"expose\"=true})\n     */\n    public function getLanguages(Request $request)\n    {\n        $languages = $this->get('em')\n            ->getRepository('Newscoop\\Entity\\Language')\n            ->getAllLanguages()\n            ->getArrayResult();\n\n        return new JsonResponse(array(\n            'languages' => $languages,\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Controller/PasswordRecoveryController.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Template;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Newscoop\\NewscoopBundle\\Form\\Type\\PasswordRecoveryType;\nuse Newscoop\\NewscoopBundle\\Form\\Type\\PasswordCheckType;\nuse Newscoop\\Entity\\User;\n\nclass PasswordRecoveryController extends Controller\n{\n    /**\n     * @Route(\"/admin/password-recovery\")\n     * @Template()\n     */\n    public function indexAction(Request $request)\n    {\n        $translator = $this->container->get('translator');\n        $preferencesService = $this->container->get('system_preferences_service');\n        $sent = false;\n        $error = '';\n        $disabled = false;\n        $form = $this->container->get('form.factory')->create(new PasswordRecoveryType(), array(), array());\n\n        if ($preferencesService->get(\"PasswordRecovery\") == 'N') {\n            $disabled = true;\n        } else {\n            if ($request->isMethod('POST')) {\n                $form->handleRequest($request);\n                if ($form->isValid()) {\n                    $data = $form->getData();\n                    $user = $this->container->get('user')->findOneBy(array(\n                        'email' => $data['email'],\n                        'is_admin' => true\n                    ));\n\n                    if ($user != null && is_numeric($user->getId()) && $user->getId() > 0) {\n                        try {\n                            $token = $this->setPasswordResetToken($user);\n                            $this->sendToken($data['email'], $token);\n                            $sent = true;\n                        } catch (\\Exception $exception) {\n                            $error = $translator->trans(\"Fatal error occurred. Please try again later.\", array(), 'home');\n                        }\n                    } else {\n                        $error = $translator->trans(\"No user is registered with this email.\", array(), 'home');\n                    }\n                }\n            }\n        }\n\n        return array(\n            'form' => $form->createView(),\n            'sent' => $sent,\n            'disabled' => $disabled,\n            'error' => $error\n        );\n    }\n\n    /**\n     * @Route(\"/admin/password-check-token\")\n     * @Template(\"NewscoopNewscoopBundle:PasswordRecovery:check.html.twig\")\n     */\n    public function checkTokenAction(Request $request)\n    {\n        $translator = $this->container->get('translator');\n        $preferencesService = $this->container->get('system_preferences_service');\n        $email = $request->get('email');\n        $token = $request->get('token');\n        $noPassword = false;\n        $success = false;\n        $error = '';\n        $form = $this->container->get('form.factory')->create(new PasswordCheckType(), array(), array());\n\n        if ($preferencesService->get(\"PasswordRecovery\") == 'N') {\n            $noPassword = false;\n            $error = $translator->trans('Password recovery is disabled.', array(), 'home');\n        } elseif (!stristr($email, \"@\") == false && strlen($token) > 4) {\n            $noPassword = true;\n            $user = $this->container->get('user')->findOneBy(array(\n                'email' => $email,\n                'is_admin' => true\n            ));\n\n            if ($user != null) {\n                $tokenGenerated = (int) substr($token, -10);\n\n                // valid for 48 hours\n                if ($user->getResetToken() == $token && (time() - $tokenGenerated < 48 * 3600)) {\n                    if ($request->isMethod('POST')) {\n                        $form->handleRequest($request);\n                        if ($form->isValid()) {\n                            $data = $form->getData();\n                            $newPassword = $data['password'];\n                            if (strlen($newPassword) >= 6) {\n                                $this->setPassword($user, $newPassword);\n                                $success = true;\n                                $noPassword = false;\n                            } else {\n                                $error = $translator->trans('Your new password must have at least 6 characters.', array(), 'home');\n                            }\n                        }\n                    }\n                } else {\n                    $noPassword = false;\n                    $error = $translator->trans('This link is not valid.', array(), 'home');\n                }\n            } else {\n                $noPassword = false;\n                $error = $translator->trans('Bad input parameters.', array(), 'home');\n            }\n        } else {\n            $noPassword = false;\n            $error = $translator->trans('Bad input parameters.', array(), 'home');\n        }\n\n        return array(\n            'form' => $form->createView(),\n            'error' => $error,\n            'success' => $success,\n            'noPassword' => $noPassword,\n            'email' => $email,\n            'token' => $token\n        );\n    }\n\n    /**\n     * Generates token for given user\n     *\n     * @param  Newscoop\\Entity\\User $user User\n     *\n     * @return string\n     */\n    public function setPasswordResetToken(User $user)\n    {   \n        $token = sha1(uniqid('', TRUE)) . (string) time();\n        $em = $this->container->get('em');\n        $queryBuilder = $em->createQueryBuilder();\n        $resetToken = $queryBuilder->update('Newscoop\\Entity\\User', 'u')\n            ->set('u.resetToken', ':token')\n            ->where('u = :user')\n            ->setParameters(array(\n                'token' => $token,\n                'user' => $user\n            ))\n            ->getQuery();\n        $resetToken->execute();\n\n        return $token;\n    }\n\n    /**\n     * Sends email message with password reset token\n     *\n     * @param  string User email\n     * @param  string Token\n     *\n     * @return void\n     */\n    public function sendToken($email, $token)\n    {\n        $translator = $this->container->get('translator');\n        $preferencesService = $this->container->get('system_preferences_service');\n\n        $link = $this->container->get('router')->generate('newscoop_newscoop_passwordrecovery_checktoken', array(\n            'token' => $token, \n            'email' => $email\n        ), true);\n        \n        $from = $preferencesService->get('PasswordRecoveryFrom');\n        if (empty($from)) {\n            $from = 'no-reply@' . $this->getRequest()->getHost();\n        }\n\n        try {\n            $message = \\Swift_Message::newInstance()\n                ->setSubject($translator->trans('Password recovery', array(), 'home'))\n                ->setFrom($from)\n                ->setTo($email)\n                ->setBody(\n                    $this->renderView(\n                        'NewscoopNewscoopBundle:PasswordRecovery:email.txt.twig',\n                        array('link' => urldecode($link))\n                    )\n                );\n\n            $this->container->get('mailer')->send($message);\n        } catch (\\Exception $exception) {\n            throw new \\Exception(\"Error sending email.\", 1); \n        }\n    }\n\n    /**\n     * Set password\n     *\n     * @param  Newscoop\\Entity\\User $user     User\n     * @param  string               $password New user password\n     *\n     * @return void\n     */\n    public function setPassword(User $user, $password)\n    {\n        $salt = $this->generateRandomString();\n        $password = implode('$', array(\n            'sha1',\n            $salt,\n            hash('sha1', $salt . $password),\n        ));\n\n        $em = $this->container->get('em');   \n        $queryBuilder = $em->createQueryBuilder();\n        $resetToken = $queryBuilder->update('Newscoop\\Entity\\User', 'u')\n            ->set('u.password', ':password')\n            ->set('u.resetToken', ':resetToken')\n            ->where('u = :user')\n            ->setParameters(array(\n                'password' => $password,\n                'resetToken' => null,\n                'user' => $user\n            ))\n            ->getQuery();\n        $resetToken->execute();\n    }\n\n    /**\n     * Get random string\n     *\n     * @param  int    $length       String length\n     * @param  string $allowedChars Chars allowed\n     *\n     * @return string\n     */\n    public function generateRandomString($length = 12, $allowedChars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789')\n    {\n        $return = '';\n        for ($i = 0; $i < $length; $i++) {\n            $return .= $allowedChars[mt_rand(0, strlen($allowedChars) - 1)];\n        }\n\n        return $return;\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Controller/PlaylistsController.php",
    "content": "<?php\n\n/**\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2015 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\NewscoopBundle\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\RedirectResponse;\nuse Symfony\\Component\\Security\\Core\\Exception\\AccessDeniedException;\nuse Newscoop\\Entity\\Article;\nuse Doctrine\\ORM\\EntityNotFoundException;\n\n/**\n * Playlists controller.\n */\nclass PlaylistsController extends Controller\n{\n    /**\n     * @Route(\"/admin/playlists/\")\n     * @Route(\"/admin/playlists/{articleNumber}/{language}/editor-view/{listId}\",\n     * \t\toptions={\"expose\"=true},\n     * \t\tname=\"newscoop_newscoop_playlists_editor\"\n     * )\n     */\n    public function indexAction(Request $request, $articleNumber = null, $language = null, $listId = null)\n    {\n        $preferencesService = $this->get('preferences');\n        $em = $this->get('em');\n        $user = $this->get('user')->getCurrentUser();\n        if (!$user->hasPermission('ManagePlaylist')) {\n            throw new AccessDeniedException();\n        }\n\n        $clientName = 'newscoop_'.$preferencesService->SiteSecretKey;\n        $client = $em->getRepository('\\Newscoop\\GimmeBundle\\Entity\\Client')->findOneByName($clientName);\n\n        $editorView = false;\n        $languageCode = null;\n        if ($request->get('_route') === 'newscoop_newscoop_playlists_editor') {\n            $editorView = true;\n            $language = $em->getRepository('Newscoop\\Entity\\Language')->findOneById($language);\n            if ($language) {\n                $languageCode = $language->getCode();\n            }\n        }\n\n        return $this->render('NewscoopNewscoopBundle:Playlists:index.html.twig', array(\n            'clientId' => $client ? $client->getPublicId() : '',\n            'redirectUris' => $client->getRedirectUrisString(),\n            'editorView' => $editorView,\n            'articleNumber' => $articleNumber,\n            'language' => $languageCode,\n            'selectedListId' => $listId,\n        ));\n    }\n\n    /**\n     * @Route(\"/admin/playlist/article-preview\", options={\"expose\"=true})\n     */\n    public function articlePreviewAction(Request $request)\n    {\n        $em = $this->get('em');\n        $router = $this->get('router');\n        $number = $request->get('id');\n        $language = $request->get('lang');\n        $article = $em->getRepository('Newscoop\\Entity\\Article')->getArticle($number, $language)->getOneOrNullResult();\n\n        if (!$article) {\n            throw new EntityNotFoundException();\n        }\n\n        return new RedirectResponse($this->createArticleLegacyPreviewUrl($article));\n    }\n\n    private function createArticleLegacyPreviewUrl(Article $article)\n    {\n        $params = array(\n            'f_publication_id' => $article->getPublicationId(),\n            'f_issue_number' => $article->getIssueId(),\n            'f_section_number' => $article->getSectionId(),\n            'f_article_number' => $article->getNumber(),\n            'f_language_id' => $article->getLanguageId(),\n            'f_language_selected' => $article->getLanguageId(),\n        );\n\n        return '/admin/articles/get.php?'.http_build_query($params);\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Controller/PluginsController.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Template;\nuse Symfony\\Component\\Security\\Core\\Exception\\AccessDeniedException;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Symfony\\Component\\HttpFoundation\\JsonResponse;\nuse Symfony\\Component\\Process\\Process;\nuse Newscoop\\NewscoopBundle\\Form\\Type\\PrivatePluginUploadType;\nuse Symfony\\Component\\Filesystem\\Filesystem;\n\nclass PluginsController extends Controller\n{\n\n    /**\n     * Private plugins directory, this directory is configured in composer.json\n     * under: \"repositories\"\n     */\n    const PRIVATE_PLUGINS_DIR = '/private_plugins';\n\n    const PRIVATE_PLUGINS_CACHE_DIR = '/cache';\n\n    /**\n     * @Route(\"/admin/plugins\")\n     * @Template()\n     */\n    public function indexAction(Request $request)\n    {\n        $user = $this->container->get('user')->getCurrentUser();\n        $translator = $this->container->get('translator');\n        if (!$user->hasPermission('plugin_manager')) {\n            throw new AccessDeniedException($translator->trans(\"You do not have the right to manage plugins.\", array(), 'plugins'));\n        }\n\n        $pluginService = $this->container->get('newscoop.plugins.service');\n        $allAvailablePlugins = array();\n\n        // show only modern plugins\n        foreach ($pluginService->getAllAvailablePlugins() as $key => $value) {\n            if (strpos($value->getName(), '/') !== false) {\n                $allAvailablePlugins[] = $value;\n            }\n        }\n\n        $form = $this->container->get('form.factory')\n            ->create(new PrivatePluginUploadType(), array());\n\n        $this->createFolderStructure($pluginService);\n\n        // handle private plugin upload\n        if ($request->getMethod() == 'POST') {\n            $form->handleRequest($request);\n\n            if ($form->isValid()) {\n                $file = $form['package']->getData();\n\n                $extension = $file->guessExtension();\n                if ($extension != 'zip') {\n                    $request->getSession()->getFlashBag()->add('error', $translator->trans('newscoop.plugins_manager.form.package_must_be_zip', array(), 'plugins_manager'));\n\n                    return $this->redirect($this->generateUrl('newscoop_newscoop_plugins_index'));\n                }\n                $file->move($pluginService->getPluginsDir().self::PRIVATE_PLUGINS_DIR, $file->getClientOriginalName());\n\n                return $this->redirect($this->generateUrl('newscoop_newscoop_plugins_index'));\n            }\n        }\n\n        // check if private plugins is writable\n        $privatePluginsPathWritable = is_writable($pluginService->getPluginsDir().self::PRIVATE_PLUGINS_DIR);\n\n        // search for private plugins\n        $privatePackages = $this->searchForPrivatePlugins($pluginService);\n\n        foreach ($privatePackages as $resultKey => $package) {\n            $package['installed'] = false;\n            foreach ($pluginService->getAllAvailablePlugins() as $key => $plugin) {\n                if ($package['name'] == $plugin->getName()) {\n                    $package['installed'] = true;\n                }\n            }\n\n            $privatePackages[$resultKey] = $package;\n        }\n\n        return array(\n            'allAvailablePlugins' => $allAvailablePlugins,\n            'privatePackages' => $privatePackages,\n            'form' => $form->createView(),\n            'newscoopPath' => realpath($pluginService->getPluginsDir() .'/../'),\n            'privatePluginsPath' => $pluginService->getPluginsDir().self::PRIVATE_PLUGINS_DIR,\n            'privatePluginsPathWritable' => $privatePluginsPathWritable,\n        );\n    }\n\n    /**\n     * @Route(\"/admin/plugins/getPackagesFromPackagist\")\n     */\n    public function searchOnPackagistAction(Request $request)\n    {\n        $response = new JsonResponse();\n        $query = $request->get('q', '');\n\n        $client = new \\Buzz\\Client\\Curl();\n        $client->setTimeout(3600);\n        $browser = new \\Buzz\\Browser($client);\n        $packagistResponse =  $browser->get('https://packagist.org/search.json?type=newscoop-plugin&q='.$query);\n        $packages = json_decode($packagistResponse->getContent(), true);\n        $results = $packages['results'];\n        $this->aasort($results, 'downloads');\n\n        // hide already installed plugins\n        $cleanResults = array();\n        $pluginService = $this->container->get('newscoop.plugins.service');\n        foreach ($results as $resultKey => $package) {\n            $installed = false;\n            foreach ($pluginService->getAllAvailablePlugins() as $key => $plugin) {\n                if ($package['name'] == $plugin->getName()) {\n                    $installed = true;\n                    $packages['total'] = $packages['total']-1;\n                }\n            }\n\n            if (!$installed) {\n                $cleanResults[] = $package;\n            }\n        }\n\n        $packages['results'] = $cleanResults;\n\n        return $response->setData($packages);\n    }\n\n\n\n    /**\n     * @Route(\"/admin/plugins/chnageStatus/{action}/{pluginId}\", requirements={\"action\" = \"enable|disable\"})\n     */\n    public function changePluginStatusAction(Request $request, $action, $pluginId)\n    {\n        $pluginService = $this->container->get('newscoop.plugins.service');\n        $pluginsManager = $this->container->get('newscoop.plugins.manager');\n\n        $plugin = $pluginService->getPluginByCriteria('id', intval($pluginId))->first();\n        $em = $this->container->get('em');\n        if ($action == 'enable') {\n            $plugin->setEnabled(true);\n        } else {\n            $plugin->setEnabled(false);\n        }\n\n        $em->flush();\n\n        // send event for plugin\n        $pluginsManager->dispatchEventForPlugin($plugin->getName(), $action);\n\n        return new Response(json_encode(array(\n            $pluginId => $plugin->getEnabled()\n        )));\n    }\n\n    private function createFolderStructure($pluginService)\n    {\n        $filesystem = new Filesystem();\n        $privatePluginsPath = $pluginService->getPluginsDir() . self::PRIVATE_PLUGINS_DIR;\n        $privatePluginsCachePath = $pluginService->getPluginsDir() . self::PRIVATE_PLUGINS_CACHE_DIR;\n        if (!$filesystem->exists($privatePluginsPath)) {\n            $filesystem->mkdir($privatePluginsPath);\n        }\n\n        if (!$filesystem->exists($privatePluginsCachePath)) {\n            $filesystem->mkdir($privatePluginsCachePath);\n        }\n    }\n\n    private function searchForPrivatePlugins($pluginService)\n    {\n        $packages = array();\n\n        foreach (new \\RecursiveDirectoryIterator($pluginService->getPluginsDir().self::PRIVATE_PLUGINS_DIR) as $file) {\n            /* @var $file \\SplFileInfo */\n            if (!$file->isFile()) {\n                continue;\n            }\n\n            if (!extension_loaded('zip')) {\n                throw new Exception(\"In order to use private plugins, you need to have zip extension enabled\");\n            }\n\n            $zip = new \\ZipArchive();\n            $zip->open($file->getPathname());\n\n            if (0 == $zip->numFiles) {\n                continue;\n            }\n\n            $foundFileIndex = $zip->locateName('composer.json', \\ZipArchive::FL_NODIR);\n            if (false === $foundFileIndex) {\n                continue;\n            }\n\n            $configurationFileName = $zip->getNameIndex($foundFileIndex);\n\n            $composerFile = \"zip://{$file->getPathname()}#$configurationFileName\";\n            $json = file_get_contents($composerFile);\n\n            $package = json_decode($json, true);\n            $package['dist'] = array(\n                'type' => 'zip',\n                'url' => $file->getRealPath(),\n                'reference' => $file->getBasename(),\n                'shasum' => sha1_file($file->getRealPath())\n            );\n\n            $packages[] = $package;\n        }\n\n        return $packages;\n    }\n\n    public function dump_chunk($chunk)\n    {\n       echo $chunk;\n       echo \"\\r\\n\";\n       flush();\n       ob_flush();\n    }\n\n    private function aasort(&$array, $key)\n    {\n        $sorter=array();$ret=array();reset($array);\n\n        foreach ($array as $ii => $va) {\n            $sorter[$ii]=$va[$key];\n        }\n\n        arsort($sorter);\n\n        foreach ($sorter as $ii => $va) {\n            $ret[$ii]=$array[$ii];\n        }\n\n        $array=$ret;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Controller/SecurityController.php",
    "content": "<?php\n\n/**\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\NewscoopBundle\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\nuse Symfony\\Component\\Security\\Core\\SecurityContext;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\Cookie;\n\nclass SecurityController extends Controller\n{\n    public function loginAction(Request $request)\n    {\n        $em = $this->container->get('em');\n\n        if ($request->attributes->has(SecurityContext::AUTHENTICATION_ERROR)) {\n            $error = $request->attributes->get(SecurityContext::AUTHENTICATION_ERROR);\n        } else {\n            $error = $request->getSession()->get(SecurityContext::AUTHENTICATION_ERROR);\n        }\n\n        $languages = $em->getRepository('Newscoop\\Entity\\Language')->getLanguages();\n\n        \\LoginAttempts::DeleteOldLoginAttempts();\n\n        return $this->render('NewscoopNewscoopBundle:Security:login.html.twig', array(\n            'last_username' => $request->getSession()->get(SecurityContext::LAST_USERNAME),\n            'error' => $error,\n            'languages' => $languages,\n            'defaultLanguage' => $this->getDefaultLanguage($request, $languages),\n            'maxLoginAttemptsExceeded' => \\LoginAttempts::MaxLoginAttemptsExceeded(),\n        ));\n    }\n\n    private function getDefaultLanguage($request, $languages)\n    {\n        $defaultLanguage = 'en';\n\n        if ($request->request->has('TOL_Language')) {\n            $defaultLanguage = $request->request->get('TOL_Language');\n        } elseif ($request->cookies->has('TOL_Language')) {\n            $defaultLanguage = $request->cookies->get('TOL_Language');\n        } else {\n            // Get the browser languages\n            $browserLanguageStr = $request->server->get('HTTP_ACCEPT_LANGUAGE', '');\n            $browserLanguageArray = preg_split('/[,;]/', $browserLanguageStr);\n            $browserLanguagePrefs = array();\n            foreach ($browserLanguageArray as $tmpLang) {\n                if (!(substr($tmpLang, 0, 2) == 'q=')) {\n                    $browserLanguagePrefs[] = $tmpLang;\n                }\n            }\n            // Try to match preference exactly.\n            foreach ($browserLanguagePrefs as $pref) {\n                if (array_key_exists($pref, $languages)) {\n                    $defaultLanguage = $pref;\n                    break;\n                }\n            }\n            // Try to match two-letter language code.\n            if (is_null($defaultLanguage)) {\n                foreach ($browserLanguagePrefs as $pref) {\n                    if (substr($pref, 0, 2) != '' && array_key_exists(substr($pref, 0, 2), $languages)) {\n                        $defaultLanguage = $pref;\n                        break;\n                    }\n                }\n            }\n\n            $request->request->set('TOL_Language', $defaultLanguage);\n        }\n\n        return $defaultLanguage;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Controller/SnippetControllerInterface.php",
    "content": "<?php\n/**\n * @package Newscoop\\Newscoop\n * @author Yorick Terweijden <yorick.terweijden@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Controller;\nuse Newscoop\\Entity\\Snippet;\n\ninterface SnippetControllerInterface\n{\n    public function __construct(Snippet $snippet, $update = false);\n    public function getSnippet();\n    public function update($parameters);\n    public function preProcess($parameters);\n    public function Process($parameters);\n    public function postProcess($parameters);\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Controller/SystemPrefController.php",
    "content": "<?php\n\n/**\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Template;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\JsonResponse;\nuse Symfony\\Component\\HttpFoundation\\RedirectResponse;\nuse Newscoop\\NewscoopBundle\\Form\\Type\\PreferencesType;\n\nclass SystemPrefController extends Controller\n{\n    /**\n     * @Route(\"/admin/preferences\")\n     * @Template(\"NewscoopNewscoopBundle:SystemPref:index.html.twig\")\n     */\n    public function indexAction(Request $request)\n    {\n        $em = $this->container->get('em');\n        $preferencesService = $this->container->get('system_preferences_service');\n        $schedulerService = $this->container->get('newscoop.scheduler');\n\n        $locations = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\CityLocations')\n            ->createQueryBuilder('a')\n            ->select('count(a)')\n            ->getQuery()\n            ->getOneOrNullResult();\n\n        $cities = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\CityNames')\n            ->createQueryBuilder('a')\n            ->select('count(a)')\n            ->getQuery()\n            ->getOneOrNullResult();\n\n        $jobs = $em->getRepository('Newscoop\\Entity\\CronJob')\n            ->createQueryBuilder('j')\n            ->getQuery()\n            ->getArrayResult();\n\n        foreach ($jobs as $key => $job) {\n            $jobs[$key]['nextRun'] = $schedulerService->getNextRunDate($job['schedule']);\n            $jobs[$key]['prevRun'] = $schedulerService->getPreviousRunDate($job['schedule']);\n        }\n\n        $hasManagePermission = false;\n\n        if (\\SaaS::singleton()->hasPermission('ManageSystemPreferences')) {\n            $hasManagePermission = true;\n        }\n\n        $max_upload_filesize = $preferencesService->MaxUploadFileSize;\n        if (empty($max_upload_filesize) || $this->convertToBytes($max_upload_filesize) == 0) {\n            $preferencesService->MaxUploadFileSize = ini_get('upload_max_filesize');\n        }\n\n        $currentUser = $this->get('user')->getCurrentUser();\n        $translator = $this->get('translator');\n\n        $sp_session_lifetime = 0 + $preferencesService->SiteSessionLifeTime;\n\n        $upload_min_filesize = $this->formatBytes(\n            min(\n                $this->convertToBytes(ini_get('post_max_size')),\n                $this->convertToBytes(ini_get('upload_max_filesize'))\n            ),\n            0\n        );\n\n        $mysql_client_command_path = $preferencesService->MysqlClientCommandPath;\n\n        if (!$locations || !$cities) {\n            $mysql_client_command_path_def = '/usr/bin/mysql';\n            if (empty($mysql_client_command_path) && file_exists($mysql_client_command_path_def)) {\n                $mysql_client_command_path = $mysql_client_command_path_def;\n            }\n        }\n\n        $geo_preferred_lang = $preferencesService->GeoSearchPreferredLanguage;\n        if (empty($geo_preferred_lang)) {\n            $geo_preferred_lang = 'en';\n        }\n\n        $default_marker_source = $preferencesService->MapMarkerSourceDefault;\n\n        $marker_icons = \\Geo_Preferences::GetIconsFiles();\n        if (0 < count($marker_icons)) {\n            $default_marker_source = array();\n            foreach ($marker_icons as $one_icon) {\n                $default_marker_source[$one_icon] = $one_icon;\n            }\n        }\n\n        $form = $this->container->get('form.factory')->create(new PreferencesType(), array(\n            'siteonline' => $preferencesService->SiteOnline,\n            'title' => $preferencesService->SiteTitle,\n            'meta_keywords' => $preferencesService->SiteMetaKeywords,\n            'meta_description' => $preferencesService->SiteMetaDescription,\n            'timezone' => $preferencesService->TimeZone,\n            'cache_engine' => $preferencesService->DBCacheEngine,\n            'cache_engine_host' => $preferencesService->DBCacheEngineHost,\n            'cache_engine_port' => $preferencesService->DBCacheEnginePort,\n            'cache_template' => $preferencesService->TemplateCacheHandler,\n            'cache_image' => $preferencesService->ImagecacheLifetime,\n            'allow_recovery' => $preferencesService->PasswordRecovery,\n            'secret_key' => $preferencesService->SiteSecretKey,\n            'session_lifetime' => $sp_session_lifetime,\n            'separator' => $preferencesService->KeywordSeparator,\n            'captcha' => $preferencesService->LoginFailedAttemptsNum,\n            'max_upload_size' => $preferencesService->MaxUploadFileSize,\n            'automatic_collection' => $preferencesService->CollectStatistics,\n            'smtp_host' => $preferencesService->SMTPHost,\n            'smtp_port' => $preferencesService->SMTPPort,\n            'email_from' => $preferencesService->EmailFromAddress,\n            'mediaRichTextCaptions' => $preferencesService->MediaRichTextCaptions,\n            'mediaCaptionLength' => $preferencesService->MediaCaptionLength,\n            'image_ratio' => $preferencesService->EditorImageRatio,\n            'image_width' => (int) $preferencesService->EditorImageResizeWidth,\n            'image_height' => (int) $preferencesService->EditorImageResizeHeight,\n            'zoom' => $preferencesService->EditorImageZoom,\n            'use_replication_host' => $preferencesService->DBReplicationHost,\n            'use_replication_user' => $preferencesService->DBReplicationUser,\n            'use_replication_password' => $preferencesService->DBReplicationPass,\n            'use_replication' => $preferencesService->UseDBReplication,\n            'use_replication_port' => $preferencesService->DBReplicationPort,\n            'template_filter' => $preferencesService->TemplateFilter,\n            'mysql_client_command_path' => $mysql_client_command_path,\n            'center_latitude_default' => (float) $preferencesService->MapCenterLatitudeDefault,\n            'center_longitude_default' => (float) $preferencesService->MapCenterLongitudeDefault,\n            'map_display_resolution_default' => (int) $preferencesService->MapDisplayResolutionDefault,\n            'map_view_width_default' => $preferencesService->MapViewWidthDefault,\n            'map_view_height_default' => $preferencesService->MapViewHeightDefault,\n            'map_auto_focus_default' => $preferencesService->MapAutoFocusDefault == '0' ? false : true,\n            'map_auto_focus_max_zoom' => $preferencesService->MapAutoFocusMaxZoom,\n            'map_auto_focus_border' => $preferencesService->MapAutoFocusBorder,\n            'map_auto_cSS_file' => $preferencesService->MapAutoCSSFile,\n            'map_provider_available_google_v3' => $preferencesService->MapProviderAvailableGoogleV3 == '0' ? false : true,\n            'map_provider_available_map_quest' => $preferencesService->MapProviderAvailableMapQuest == '0' ? false : true,\n            'map_provider_available_oSM' => $preferencesService->MapProviderAvailableOSM == '0' ? false : true,\n            'map_provider_default' => $preferencesService->MapProviderDefault,\n            'geo_search_local_geonames' => $preferencesService->GeoSearchLocalGeonames == '0' ? false : true,\n            'geo_search_mapquest_nominatim' => $preferencesService->GeoSearchMapquestNominatim == '0' ? false : true,\n            'geo_search_preferred_language' => $geo_preferred_lang,\n            'map_marker_directory' => $preferencesService->MapMarkerDirectory,\n            'map_popup_width_min' => $preferencesService->MapPopupWidthMin,\n            'map_popup_height_min' => $preferencesService->MapPopupHeightMin,\n            'map_video_width_you_tube' => $preferencesService->MapVideoWidthYouTube,\n            'map_video_height_you_tube' => $preferencesService->MapVideoHeightYouTube,\n            'map_video_width_vimeo' => $preferencesService->MapVideoWidthVimeo,\n            'map_video_height_vimeo' => $preferencesService->MapVideoHeightVimeo,\n            'map_video_width_flash' => $preferencesService->MapVideoWidthFlash,\n            'map_video_height_flash' => $preferencesService->MapVideoHeightFlash,\n            'geo_flash_server' => $preferencesService->FlashServer,\n            'geo_flash_directory' => $preferencesService->FlashDirectory,\n            'facebook_appid' => $preferencesService->facebook_appid,\n            'facebook_appsecret' => $preferencesService->facebook_appsecret,\n            'recaptchaPublicKey' => $preferencesService->RecaptchaPublicKey,\n            'recaptchaPrivateKey' => $preferencesService->RecaptchaPrivateKey,\n            'recaptchaSecure' => $preferencesService->RecaptchaSecure,\n            'userGarbageActive' => $preferencesService->userGarbageActive ?: 'N',\n            'userGarbageDays' => $preferencesService->userGarbageDays ?: 90,\n            'smartyUseProtocol' => $preferencesService->SmartyUseProtocol,\n            'cronJobNotificationEmail' => $preferencesService->CronJobsNotificationEmail,\n            'cronJobSmtpSender' => $preferencesService->CronJobsSenderEmail,\n            'cronJobSmtpSenderName' => $preferencesService->CronJobsSenderName,\n        ), array(\n            'cacheService' => $this->container->get('newscoop.cache'),\n        ));\n\n        if ($request->isMethod('POST')) {\n            $form->bind($request);\n            if ($form->isValid()) {\n                if (!$currentUser->hasPermission('ChangeSystemPreferences')) {\n                    camp_html_display_error($translator->trans('newscoop.preferences.error.noaccess', array(), 'system_pref'));\n                    exit;\n                }\n\n                $data = $form->getData();\n                $geoLocation = array(\n                    'map_display_resolution_default' => $data['map_display_resolution_default'],\n                    'map_view_width_default' => $hasManagePermission ? $data['map_view_width_default'] : $preferencesService->MapViewWidthDefault,\n                    'map_view_height_default' => $hasManagePermission ? $data['map_view_height_default'] : $preferencesService->MapViewHeightDefault,\n                    'map_auto_cSS_file' => strip_tags($data['map_auto_cSS_file']),\n                    'map_auto_focus_default' => $data['map_auto_focus_default'] ? '1' : '0',\n                    'map_auto_focus_max_zoom' => $data['map_auto_focus_max_zoom'],\n                    'map_auto_focus_border' => $data['map_auto_focus_border'],\n                    'map_provider_available_google_v3' => $data['map_provider_available_google_v3'] ? '1' : '0',\n                    'map_provider_available_map_quest' => $data['map_provider_available_map_quest'] ? '1' : '0',\n                    'map_provider_available_oSM' => $data['map_provider_available_oSM'] ? '1' : '0',\n                    'map_provider_default' => $data['map_provider_default'],\n                    'geo_search_local_geonames' => $data['geo_search_local_geonames'] ? '1' : '0',\n                    'geo_search_mapquest_nominatim' => $data['geo_search_mapquest_nominatim'] ? '1' : '0',\n                    'geo_search_preferred_language' => $data['geo_search_preferred_language'],\n                    'map_marker_directory' => $hasManagePermission ? strip_tags($data['map_marker_directory']) : $preferencesService->MapMarkerDirectory,\n                    'map_marker_source_default' => strip_tags($data['map_marker_source_default']),\n                    'map_popup_width_min' => $hasManagePermission ? $data['map_popup_width_min'] : $preferencesService->MapPopupWidthMin,\n                    'map_popup_height_min' => $hasManagePermission ? $data['map_popup_height_min'] : $preferencesService->MapPopupHeightMin,\n                    'map_video_width_you_tube' => $hasManagePermission ? $data['map_video_width_you_tube'] : $preferencesService->MapVideoWidthYouTube,\n                    'map_video_height_you_tube' => $hasManagePermission ? $data['map_video_height_you_tube'] : $preferencesService->MapVideoHeightYouTube,\n                    'map_video_width_vimeo' => $hasManagePermission ? $data['map_video_width_vimeo'] : $preferencesService->MapVideoWidthVimeo,\n                    'map_video_height_vimeo' => $hasManagePermission ? $data['map_video_height_vimeo'] : $preferencesService->MapVideoHeightVimeo,\n                    'map_video_width_flash' => $hasManagePermission ? $data['map_video_width_flash'] : $preferencesService->MapVideoWidthFlash,\n                    'map_video_height_flash' => $hasManagePermission ? $data['map_video_height_flash'] : $preferencesService->MapVideoHeightFlash,\n                    'flash_server' => $hasManagePermission ? strip_tags($data['geo_flash_server']) : $preferencesService->FlashServer,\n                    'flash_directory' => $hasManagePermission ? strip_tags($data['geo_flash_directory']) : $preferencesService->FlashDirectory,\n                );\n                // Max Upload File Size\n                $uploadSettings = $this->maxUpload($data['max_upload_size'], $translator);\n\n                if ($uploadSettings instanceof RedirectResponse) {\n                    return $uploadSettings;\n                }\n                //geolocation\n                $geolocationSettings = $this->geolocation($data['center_latitude_default'], $data['center_longitude_default'], $geoLocation, $translator);\n                if ($geolocationSettings instanceof RedirectResponse) {\n                    return $geolocationSettings;\n                }\n\n                if ($hasManagePermission) {\n                    // DB Caching\n                    $databaseCacheSettings = $this->databaseCache($data['cache_engine'], $data['cache_engine_host'], $data['cache_engine_port']);\n\n                    if ($databaseCacheSettings instanceof RedirectResponse) {\n                        return $databaseCacheSettings;\n                    }\n                    // Template Caching\n                    $templateCacheSettings = $this->templateCache($data['cache_template'], $translator);\n\n                    if ($templateCacheSettings instanceof RedirectResponse) {\n                        return $templateCacheSettings;\n                    }\n\n                    $replicationSettings = $this->useReplication($data['use_replication_user'], $data['use_replication_host'], $data['use_replication_password'],\n                        $data['use_replication'], $data['use_replication_port'], $translator);\n\n                    if ($replicationSettings instanceof RedirectResponse) {\n                        return $replicationSettings;\n                    }\n                    // Statistics collecting\n                    $this->collectStats($data['automatic_collection']);\n                    // SMTP Host/Port\n                    $this->smtpConfiguration($data['smtp_host'], $data['smtp_port']);\n                    // Image resizing for WYSIWYG editor\n                    $this->imageResizing($data['image_ratio'], $data['image_width'], $data['image_height'], $data['zoom']);\n                    // Rich text captions, set default\n                    $preferencesService->set('MediaRichTextCaptions', $data['mediaRichTextCaptions']);\n                    if ($data['mediaRichTextCaptions'] == 'Y') {\n                        $preferencesService->set('MediaCaptionLength', $data['mediaCaptionLength']);\n                    } else {\n                        // Override and set to 255 chars max\n                        $preferencesService->set('MediaCaptionLength', 255);\n                    }\n                    // template filter\n                    $this->templateFilter($data['template_filter']);\n                    // users garbage settings\n                    $preferencesService->set('userGarbageActive', $data['userGarbageActive']);\n                    $preferencesService->set('userGarbageDays', $data['userGarbageDays']);\n                    // smarty use protocol settings\n                    $preferencesService->set('SmartyUseProtocol', $data['smartyUseProtocol']);\n                    // cron jobs settings\n                    $preferencesService->set('CronJobsNotificationEmail', $data['cronJobNotificationEmail']);\n                    $preferencesService->set('CronJobsSenderEmail', $data['cronJobSmtpSender']);\n                    $preferencesService->set('CronJobsSenderName', $data['cronJobSmtpSenderName']);\n                }\n                // General Settings\n                $this->generalSettings($data['siteonline'], $data['title'], $data['meta_keywords'], $data['meta_description'], $data['timezone'], $data['cache_image'], $data['allow_recovery'], $data['email_from'],\n                    $data['session_lifetime'], $data['separator'], $data['captcha'], $data['mysql_client_command_path']);\n                //Facebook\n                $this->facebook($data['facebook_appid'], $data['facebook_appsecret']);\n                //ReCaptcha\n                $this->recaptcha($data['recaptchaPublicKey'], $data['recaptchaPrivateKey'], $data['recaptchaSecure']);\n                $this->get('session')->getFlashBag()->add('success', $translator->trans('newscoop.preferences.success.saved', array(), 'system_pref'));\n\n                return $this->redirect($this->generateUrl('newscoop_newscoop_systempref_index'));\n            }\n        }\n\n        return array(\n            'form' => $form->createView(),\n            'upload_min_filesize' => $upload_min_filesize,\n            'hasManagePermission' => $hasManagePermission,\n            'mysql_client_command_path' => $mysql_client_command_path,\n            'map_marker_source_default' => $default_marker_source,\n            'map_marker_source_selected' => $preferencesService->MapMarkerSourceDefault,\n            'jobs' => $jobs,\n        );\n    }\n\n    /**\n     * @Route(\"/admin/preferences/cache/clear\", options={\"expose\"=true})\n     * @Template()\n     */\n    public function clearDatabaseCacheAction(Request $request)\n    {\n        $cacheService = $this->get('newscoop.cache');\n        $cacheDriver = $cacheService->getCacheDriver();\n\n        try {\n            $cacheDriver->deleteAll();\n            $cacheDriver->flushAll();\n        } catch (\\Exception $e) {\n            return new JsonResponse(array($e->getMessage()), 404);\n        }\n\n        return new JsonResponse(array('status' => 'success'), 200);\n    }\n\n    /**\n     * @Route(\"/admin/preferences/job/enable/{id}\", options={\"expose\"=true})\n     */\n    public function enableJobAction(Request $request, $id)\n    {\n        $em = $this->get('em');\n        $cacheService = $this->get('newscoop.cache');\n        $job = $em->getRepository('Newscoop\\Entity\\CronJob')->findOneById($id);\n\n        try {\n            if (!$job->getEnabled()) {\n                $job->setEnabled(true);\n                $em->flush();\n                $cacheService->clearNamespace('cronjobs');\n            }\n        } catch (Exception $e) {\n            return new JsonResponse(array($e->getMessage()), 404);\n        }\n\n        return new JsonResponse(array('status' => 'success'), 200);\n    }\n\n    /**\n     * @Route(\"/admin/preferences/job/disable/{id}\", options={\"expose\"=true})\n     */\n    public function disableJobAction(Request $request, $id)\n    {\n        $em = $this->get('em');\n        $cacheService = $this->get('newscoop.cache');\n        $job = $em->getRepository('Newscoop\\Entity\\CronJob')->findOneById($id);\n\n        try {\n            if ($job->getEnabled()) {\n                $job->setEnabled(false);\n                $em->flush();\n                $cacheService->clearNamespace('cronjobs');\n            }\n        } catch (Exception $e) {\n            return new JsonResponse(array($e->getMessage()), 404);\n        }\n\n        return new JsonResponse(array('status' => 'success'), 200);\n    }\n\n    /**\n     * @Route(\"/admin/preferences/job/notify/{id}\", options={\"expose\"=true})\n     */\n    public function jobNotifyAction(Request $request, $id)\n    {\n        $em = $this->get('em');\n        $cacheService = $this->get('newscoop.cache');\n        $job = $em->getRepository('Newscoop\\Entity\\CronJob')->findOneById($id);\n\n        try {\n            if ($job->getSendMail()) {\n                $job->setSendMail(false);\n            } else {\n                $job->setSendMail(true);\n            }\n\n            $em->flush();\n            $cacheService->clearNamespace('cronjobs');\n        } catch (Exception $e) {\n            return new JsonResponse(array($e->getMessage()), 404);\n        }\n\n        return new JsonResponse(array('status' => 'success'), 200);\n    }\n\n    /**\n     * Sets database caching.\n     *\n     * @param string $cache_engine\n     * @param string $cache_engine_host\n     * @param string $cache_engine_port\n     *\n     * @return void|RedirectResponse\n     */\n    private function databaseCache($cache_engine, $cache_engine_host, $cache_engine_port)\n    {\n        $preferencesService = $this->container->get('system_preferences_service');\n        $preferencesService->set('DBCacheEngine', $cache_engine);\n        $preferencesService->set('DBCacheEngineHost', $cache_engine_host);\n        $preferencesService->set('DBCacheEnginePort', $cache_engine_port);\n    }\n\n    /**\n     * Sets templates caching.\n     *\n     * @param string                                   $cache_template Values 1 or 0\n     * @param Symfony\\Component\\Translation\\Translator $translator     Translator\n     *\n     * @return void|RedirectResponse\n     */\n    private function templateCache($cache_template, $translator)\n    {\n        $preferencesService = $this->container->get('system_preferences_service');\n\n        if ($preferencesService->TemplateCacheHandler !=  $cache_template && $cache_template) {\n            $handler = \\CampTemplateCache::factory($cache_template);\n\n            if ($handler && \\CampTemplateCache::factory($cache_template)->isSupported()) {\n                $preferencesService->TemplateCacheHandler = $cache_template;\n                \\CampTemplateCache::factory($cache_template)->clean();\n            } else {\n                $this->get('session')->getFlashBag()->add('error', $translator->trans('newscoop.preferences.error.cache',\n                    array('%cache%' => $cache_template), 'system_pref'\n                ));\n\n                return $this->redirect($this->generateUrl('newscoop_newscoop_systempref_index'));\n            }\n        } else {\n            $preferencesService->TemplateCacheHandler = $cache_template;\n        }\n    }\n\n    /**\n     * Sets replication settings.\n     *\n     * @param string                                   $user            Replication server user\n     * @param string                                   $host            Replication server hostname\n     * @param string                                   $user            Replication server password\n     * @param string                                   $use_replication Defines if replication is on or off\n     * @param int                                      $port            Replication server port\n     * @param Symfony\\Component\\Translation\\Translator $translator      Translator\n     *\n     * @return void|RedirectResponse\n     */\n    private function useReplication($user, $host, $password, $use_replication, $port, $translator)\n    {\n        $preferencesService = $this->container->get('system_preferences_service');\n\n        if ($use_replication == 'Y') {\n            // Database Replication Host, User and Password\n            if (!empty($host) && !empty($user)) {\n                $preferencesService->DBReplicationHost = strip_tags($host);\n                $preferencesService->DBReplicationUser = strip_tags($user);\n                $preferencesService->DBReplicationPass = strip_tags($password);\n                $preferencesService->UseDBReplication = $use_replication;\n            } else {\n                $this->get('session')->getFlashBag()->add('error', $translator->trans('newscoop.preferences.error.replication', array(), 'system_pref'));\n\n                return $this->redirect($this->generateUrl('newscoop_newscoop_systempref_index'));\n            }\n            // Database Replication Port\n            if (empty($port) || !is_int($port)) {\n                $port = 3306;\n            }\n\n            $preferencesService->DBReplicationPort = $port;\n        } else {\n            $preferencesService->UseDBReplication = 'N';\n        }\n    }\n\n    /**\n     * Defines and sets max upload file size.\n     *\n     * @param string                                   $max_size   Max upload file size\n     * @param Symfony\\Component\\Translation\\Translator $translator Translator\n     *\n     * @return void|RedirectResponse\n     */\n    private function maxUpload($max_size, $translator)\n    {\n        $max_upload_filesize_bytes = $this->convertToBytes($max_size);\n        $preferencesService = $this->container->get('system_preferences_service');\n        if ($max_upload_filesize_bytes > 0 &&\n            $max_upload_filesize_bytes <= min($this->convertToBytes(ini_get('post_max_size')), $this->convertToBytes(ini_get('upload_max_filesize')))) {\n            $preferencesService->MaxUploadFileSize = strip_tags($max_size);\n        } else {\n            $this->get('session')->getFlashBag()->add('error', $translator->trans('newscoop.preferences.error.maxupload', array(), 'system_pref'));\n\n            return $this->redirect($this->generateUrl('newscoop_newscoop_systempref_index'));\n        }\n    }\n\n    private function convertToBytes($from)\n    {\n        $number = substr(trim($from), 0, -1);\n        switch (strtoupper(substr($from, -1))) {\n            case 'K':\n                return $number * 1024;\n            case 'M':\n                return $number * pow(1024, 2);\n            case 'G':\n                return $number * pow(1024, 3);\n            default:\n                return $from;\n        }\n    }\n\n    private function formatBytes($size, $precision = 2)\n    {\n        $base = log($size, 1024);\n        $suffixes = array('', 'k', 'M', 'G');\n\n        return round(pow(1024, $base - floor($base)), $precision).$suffixes[floor($base)];\n    }\n\n    /**\n     * Sets geolocation options.\n     *\n     * @param point                                    $latitude    Latitude\n     * @param point                                    $longitude   Longitude\n     * @param array                                    $geoLocation Geolocation data\n     * @param Symfony\\Component\\Translation\\Translator $translator  Translator\n     *\n     * @return void|RedirectResponse\n     */\n    private function geolocation($latitude, $longitude, $geoLocation, $translator)\n    {\n        $preferencesService = $this->container->get('system_preferences_service');\n\n        if ($latitude > 90 || $latitude < -90 ||\n            $longitude > 180 || $longitude < -180) {\n            $this->get('session')->getFlashBag()->add('error', $translator->trans('newscoop.preferences.error.geolocation', array(), 'system_pref'));\n\n            return $this->redirect($this->generateUrl('newscoop_newscoop_systempref_index'));\n        } else {\n            $preferencesService->MapCenterLatitudeDefault = $latitude;\n            $preferencesService->MapCenterLongitudeDefault = $longitude;\n        }\n\n        foreach ($geoLocation as $key => $value) {\n            $name = '';\n            foreach (explode('_', $key) as $part) {\n                $name .= ucfirst($part);\n                $preferencesService->$name = $value;\n            }\n        }\n    }\n\n    /**\n     * Sets facebook options.\n     *\n     * @param string $appId  Facebook application ID\n     * @param string $secret Facebook Secret key\n     */\n    private function facebook($appId, $secret)\n    {\n        $preferencesService = $this->container->get('system_preferences_service');\n        $preferencesService->facebook_appid = strip_tags($appId);\n        $preferencesService->facebook_appsecret = strip_tags($secret);\n    }\n\n    /**\n     * Sets recaptcha options.\n     *\n     * @param string $publicKey  ReCaptcha public key\n     * @param string $privateKey ReCaptcha private key\n     * @param string $secure     Secure ReCaptcha\n     */\n    private function recaptcha($publicKey, $privateKey, $secure)\n    {\n        $preferencesService = $this->container->get('system_preferences_service');\n        $preferencesService->RecaptchaPublicKey = strip_tags($publicKey);\n        $preferencesService->RecaptchaPrivateKey = strip_tags($privateKey);\n        $preferencesService->RecaptchaSecure = strip_tags($secure);\n    }\n\n    /**\n     * Sets automatic statistics collection options.\n     *\n     * @param string $automatic_collection Values Y or N\n     */\n    private function collectStats($automatic_collection)\n    {\n        $preferencesService = $this->container->get('system_preferences_service');\n        $preferencesService->CollectStatistics = $automatic_collection;\n    }\n\n    /**\n     * Sets SMTP options.\n     *\n     * @param string $host SMTP host\n     * @param int    $port SMTP port\n     */\n    private function smtpConfiguration($host, $port)\n    {\n        $preferencesService = $this->container->get('system_preferences_service');\n        $preferencesService->SMTPHost = strip_tags($host);\n        $preferencesService->SMTPPort = $port;\n    }\n\n    /**\n     * Sets images resizing options.\n     *\n     * @param string $ratio        Image ratio\n     * @param int    $image_width  Image width\n     * @param int    $image_height Image height\n     * @param int    $zoom         Image zoom\n     */\n    private function imageResizing($ratio, $image_width, $image_height, $zoom)\n    {\n        $preferencesService = $this->container->get('system_preferences_service');\n        $preferencesService->EditorImageRatio = $ratio;\n        $preferencesService->EditorImageResizeWidth = $image_width;\n        $preferencesService->EditorImageResizeHeight = $image_height;\n        $preferencesService->EditorImageZoom = $zoom;\n    }\n\n    /**\n     * Sets template filter.\n     *\n     * @param string $template_filter Template filter\n     */\n    private function templateFilter($template_filter)\n    {\n        $preferencesService = $this->container->get('system_preferences_service');\n        $preferencesService->TemplateFilter = strip_tags($template_filter);\n    }\n\n    /**\n     * Sets general options.\n     *\n     * @param string $siteOnline                Website status\n     * @param string $title                     Website title\n     * @param string $meta_keywords             Website meta keywords\n     * @param string $meta_description          Website meta description\n     * @param string $timezone                  Website timezone\n     * @param int    $cache_image               Image cache lifetime\n     * @param string $allow_recovery            Password recovery\n     * @param string $emailFrom                 Email address for system notifications\n     * @param int    $session_lifetime          Session lifetime\n     * @param string $separator                 Keyword separator\n     * @param int    $captcha                   Number of failed login attempts before showing CAPTCHA\n     * @param string $mysql_client_command_path MySQL client command path\n     */\n    private function generalSettings($siteOnline, $title, $meta_keywords, $meta_description, $timezone, $cache_image, $allow_recovery,\n        $emailFrom, $session_lifetime, $separator, $captcha, $mysql_client_command_path)\n    {\n        $preferencesService = $this->container->get('system_preferences_service');\n        $preferencesService->SiteOnline = strip_tags($siteOnline);\n        $preferencesService->SiteTitle = strip_tags($title);\n        $preferencesService->SiteMetaKeywords = strip_tags($meta_keywords);\n        $preferencesService->SiteMetaDescription = strip_tags($meta_description);\n        $preferencesService->TimeZone = (string) $timezone;\n        $preferencesService->ImagecacheLifetime = $cache_image;\n        $preferencesService->PasswordRecovery = $allow_recovery;\n        $preferencesService->EmailFromAddress = $emailFrom;\n        $preferencesService->SiteSessionLifeTime = $session_lifetime;\n        $preferencesService->KeywordSeparator = strip_tags($separator);\n        $preferencesService->LoginFailedAttemptsNum = $captcha;\n        if (strip_tags($mysql_client_command_path)) {\n            $preferencesService->MysqlClientCommandPath = strip_tags($mysql_client_command_path);\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Controller/TopicsController.php",
    "content": "<?php\n\n/**\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\NewscoopBundle\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Method;\nuse Symfony\\Component\\HttpFoundation\\JsonResponse;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Newscoop\\NewscoopBundle\\Entity\\Topic;\nuse Newscoop\\NewscoopBundle\\Form\\Type\\TopicType;\nuse Newscoop\\NewscoopBundle\\Form\\Type\\TopicTranslationType;\nuse Newscoop\\NewscoopBundle\\Entity\\TopicTranslation;\nuse Doctrine\\ORM\\Query;\nuse Newscoop\\EventDispatcher\\Events\\GenericEvent;\n\n/**\n * Topic controller.\n */\nclass TopicsController extends Controller\n{\n    /**\n     * @Route(\"/admin/topics/get\", options={\"expose\"=true})\n     */\n    public function getTopicsAction(Request $request)\n    {\n        $term = $request->query->get('term', '');\n        $limit = $request->query->get('limit', null);\n\n        if (trim($term) === '') {\n            return new JsonResponse(array());\n        }\n\n        $locale = $request->get('_code', $request->getLocale());\n        $topics = $this->container->get('em')\n            ->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')\n            ->searchTopics($term, array('title' => 'asc'), $limit, $locale)\n            ->getArrayResult();\n\n        return new JsonResponse($topics);\n    }\n\n    /**\n     * @Route(\"/admin/topics/\", options={\"expose\"=true}, name=\"newscoop_newscoop_topics_index\")\n     * @Route(\"/admin/topics/view/{compactView}/{articleNumber}/{language}\", options={\"expose\"=true}, name=\"newscoop_newscoop_topics_index_compact\")\n     */\n    public function indexAction($compactView = false, $articleNumber = null, $language = null)\n    {\n        $assignedTopics = array();\n        if ($compactView === 'compact') {\n            $compactView = true;\n            $entityManager = $this->get('em');\n            $repository = $entityManager->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic');\n            $assignedTopics = $repository\n                ->getArticleTopics($articleNumber, $language)\n                ->getArrayResult();\n\n            foreach ($assignedTopics as $key => $topic) {\n                $topicObj = $entityManager->getReference('Newscoop\\NewscoopBundle\\Entity\\Topic', $topic['id']);\n                $topic['path'] = $repository->getReadablePath($topicObj, $language);\n                $assignedTopics[$key] = $topic;\n            }\n        }\n\n        return $this->render('NewscoopNewscoopBundle:Topics:index.html.twig', array(\n            'compactView' => $compactView,\n            'articleLanguage' => $language,\n            'articleNumber' => $articleNumber,\n            'assignedTopics' => $assignedTopics,\n        ));\n    }\n\n    /**\n     * @Route(\"/admin/topics/tree/\", options={\"expose\"=true})\n     *\n     * @Method(\"GET\")\n     */\n    public function treeAction(Request $request)\n    {\n        $em = $this->get('em');\n        $locale = $request->get('_code');\n        $articleNumber = $request->get('_articleNumber');\n        $topicService = $this->get('newscoop_newscoop.topic_service');\n        $cacheService = $this->get('newscoop.cache');\n        $topicsCount = $topicService->countBy();\n        $attachedCount = $topicService->countArticleTopicsBy();\n        $cacheKey = $cacheService->getCacheKey(array('topics', $topicsCount, $attachedCount, $articleNumber), 'topic');\n        $repository = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic');\n        if ($cacheService->contains($cacheKey)) {\n            $nodes = $cacheService->fetch($cacheKey);\n        } else {\n            $topicsQuery = $repository->getTranslatableTopics($locale);\n            $nodes = $topicsQuery->getArrayResult();\n            if ($articleNumber) {\n                $nodes = $this->setAttachedKeysForArticleTopics($nodes, $articleNumber);\n            }\n\n            $cacheService->save($cacheKey, $nodes);\n        }\n\n        $tree = $repository->buildTreeArray($nodes);\n\n        usort($tree, function ($node1, $node2) {\n            return $node2['topicOrder'] - $node1['topicOrder'];\n        });\n\n        return new JsonResponse(array('tree' => $tree));\n    }\n\n    /**\n     * Adds \"attached\" and \"hasAttachedSubtopic\" keys with values to the array of the topic;.\n     *\n     * @param array  $nodes         Array of topics\n     * @param string $articleNumber Article number\n     *\n     * @return array\n     */\n    private function setAttachedKeysForArticleTopics($nodes, $articleNumber)\n    {\n        $topicsIds = $this->getArticleTopicsIds($articleNumber);\n        foreach ($nodes as $key => $topic) {\n            if (in_array($topic['id'], $topicsIds)) {\n                $topic['attached'] = true;\n                $nodes[$key] = $topic;\n            }\n        }\n\n        return $nodes;\n    }\n\n    /**\n     * @Route(\"/admin/topics/move/{id}\", options={\"expose\"=true})\n     */\n    public function moveAction(Request $request, $id)\n    {\n        $em = $this->get('em');\n        $repository = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic');\n        $topicService = $this->get('newscoop_newscoop.topic_service');\n        $translator = $this->get('translator');\n        $cacheService = $this->get('newscoop.cache');\n        $node = $this->findOr404($id);\n        if (is_array($node)) {\n            return new JsonResponse($node, 404);\n        }\n\n        $params = $request->request->all();\n        $parent = isset($params['parent']) && $params['parent'] ? $params['parent'] : null;\n        $result = $topicService->saveTopicPosition($node, $params);\n\n        if (!$result) {\n            return new JsonResponse(array(\n                'status' => false,\n                'message' => $translator->trans('topics.failedfind', array('%id%' => $id), 'topics'),\n            ));\n        }\n\n        if (($request->get('last') || $request->get('first') || $request->get('middle')) && !$parent) {\n            $rootNodes = $repository->getRootNodesQuery()->getResult();\n            $order = array_reverse(explode(',', $request->get('order')));\n            $topicService->reorderRootNodes($rootNodes, $order);\n        }\n\n        $cacheService->clearNamespace('topic');\n\n        return new JsonResponse(array(\n            'topic' => array(\n                'id' => $node->getId(),\n                'root' => $node->getRoot(),\n                'parentId' => $node->getParentId()\n            ),\n            'status' => true,\n            'message' => $translator->trans('topics.alerts.ordersaved', array(), 'topics'),\n        ), 200);\n    }\n\n    /**\n     * @Route(\"/admin/topics/add/\", options={\"expose\"=true})\n     *\n     * @Method(\"POST\")\n     */\n    public function addAction(Request $request)\n    {\n        $node = new Topic();\n        $translator = $this->get('translator');\n        $cacheService = $this->get('newscoop.cache');\n        $form = $this->createForm(new TopicType(), $node);\n        $form->handleRequest($request);\n        $response = array(\n            'status' => false,\n            'message' => $translator->trans('topics.error', array(), 'topics'),\n        );\n\n        if (!$this->get('form.csrf_provider')->isCsrfTokenValid('default', $request->get('_csrf_token'))) {\n            return new JsonResponse(array(\n                'status' => false,\n                'message' => $translator->trans('topics.csrfinvalid', array(), 'topics'),\n            ), 403);\n        }\n\n        if ($form->isValid()) {\n            $locale = $request->get('_code', $request->getLocale());\n            $topicService = $this->get('newscoop_newscoop.topic_service');\n            try {\n                $topicService->saveNewTopic($node, $locale);\n            } catch (\\Exception $e) {\n                $response = array(\n                    'status' => false,\n                    'message' => $translator->trans('topics.exists', array(), 'topics'),\n                );\n\n                return new JsonResponse($response, 409);\n            }\n\n            $response = array(\n                'status' => true,\n                'message' => $translator->trans('topics.added', array(), 'topics'),\n                'topicId' => $node->getId(),\n                'topicTitle' => $node->getTitle(),\n                'locale' => $locale,\n            );\n\n            $cacheService->clearNamespace('topic');\n        } else {\n            $response = array(\n                'status' => false,\n                'message' => $form->getErrors()->getChildren()->getMessage(),\n            );\n        }\n\n        return new JsonResponse($response);\n    }\n\n    /**\n     * @Route(\"/admin/topics/add/translation/{id}\", requirements={\"id\" = \"\\d+\"}, options={\"expose\"=true})\n     *\n     * @Method(\"POST\")\n     */\n    public function addTranslation(Request $request, $id)\n    {\n        $em = $this->get('em');\n        $translator = $this->get('translator');\n        $cacheService = $this->get('newscoop.cache');\n        $form = $this->createForm(new TopicTranslationType());\n        $form->handleRequest($request);\n        $response = array(\n            'status' => false,\n            'message' => $translator->trans('topics.error', array(), 'topics'),\n        );\n\n        if (!$this->get('form.csrf_provider')->isCsrfTokenValid('default', $request->get('_csrf_token'))) {\n            return new JsonResponse(array(\n                'status' => false,\n                'message' => $translator->trans('topics.csrfinvalid', array(), 'topics'),\n            ), 403);\n        }\n\n        $node = $this->findOr404($id);\n        if (is_array($node)) {\n            return new JsonResponse($node, 404);\n        }\n\n        if ($form->isValid()) {\n            $data = $form->getData();\n            $locale = $data['locale'];\n            $language = $em\n                ->getRepository('Newscoop\\Entity\\Language')\n                ->findOneByCode($locale);\n\n            if (!$language) {\n                return new JsonResponse(array(\n                    'status' => false,\n                    'message' => $translator->trans('topics.alerts.languagenotfound', array('%locale%' => $locale), 'topics'),\n                ), 404);\n            }\n\n            try {\n                $topicTranslation = new TopicTranslation($language->getCode(), 'title', $data['title']);\n                $node->addTranslation($topicTranslation);\n                $em->flush();\n            } catch (\\Exception $e) {\n                return new JsonResponse(array(\n                    'status' => false,\n                    'message' => $translator->trans('topics.alerts.translationexists', array('%locale%' => $locale), 'topics'),\n                ), 403);\n            }\n\n            $response = array(\n                'status' => true,\n                'message' => $translator->trans('topics.alerts.translationadded', array(), 'topics'),\n                'topicTranslationId' => $topicTranslation->getId(),\n                'topicTranslationTitle' => $topicTranslation->getContent(),\n                'topicTranslationLocale' => $topicTranslation->getLocale(),\n            );\n\n            $cacheService->clearNamespace('topic');\n        }\n\n        return new JsonResponse($response);\n    }\n\n    /**\n     * @Route(\"/admin/topics/delete/{id}\", options={\"expose\"=true})\n     *\n     * @Method(\"POST\")\n     */\n    public function deleteAction(Request $request, $id)\n    {\n        $translator = $this->get('translator');\n        $cacheService = $this->get('newscoop.cache');\n        $node = $this->findOr404($id);\n        if (is_array($node)) {\n            return new JsonResponse($node, 404);\n        }\n\n        $topicService = $this->get('newscoop_newscoop.topic_service');\n        $topicService->deleteTopic($node);\n        $cacheService->clearNamespace('topic');\n\n        $this->get('dispatcher')->dispatch('topic.delete', new GenericEvent($this, array(\n            'title' => $node->getTitle(),\n            'id' => array(\n                'id' => $id,\n            ),\n            'diff' => array(\n                'id' => $id,\n                'title' => $node->getTitle(),\n            ),\n        )));\n\n        return new JsonResponse(array(\n            'status' => true,\n            'message' => $translator->trans('topics.removed', array('%title%' => $node->getTitle()), 'topics'),\n        ));\n    }\n\n    /**\n     * @Route(\"/admin/topics/is-attached/{id}\", options={\"expose\"=true})\n     *\n     * @Method(\"GET\")\n     */\n    public function isAttachedAction(Request $request, $id)\n    {\n        $translator = $this->get('translator');\n        $topicService = $this->get('newscoop_newscoop.topic_service');\n        $node = $this->findOr404($id);\n        if (is_array($node)) {\n            return new JsonResponse($node, 404);\n        }\n\n        $result = $topicService->isAttached($id, true);\n\n        if ($result[1]) {\n            return new JsonResponse(array(\n                'status' => true,\n                'message' => $translator->trans('topics.attached', array('%occurence%' => $result[0]), 'topics'),\n            ));\n        }\n\n        return new JsonResponse(array(\n            'status' => false,\n        ));\n    }\n\n    /**\n     * @Route(\"/admin/topics/translations/delete/{id}\", options={\"expose\"=true})\n     *\n     * @Method(\"POST\")\n     */\n    public function deleteTranslationAction(Request $request, $id)\n    {\n        $translator = $this->get('translator');\n        $cacheService = $this->get('newscoop.cache');\n        $em = $this->get('em');\n        $topicTranslation = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\TopicTranslation')->findOneBy(array(\n            'id' => $id,\n        ));\n\n        if (!$topicTranslation) {\n            return new JsonResponse(array(\n                'status' => false,\n                'message' => $translator->trans('topics.failedfindTranslation', array('%id%' => $id), 'topics'),\n            ), 404);\n        }\n\n        if ($topicTranslation->getIsDefault()) {\n            return new JsonResponse(array(\n                'status' => false,\n                'message' => $translator->trans('topics.failedremoveTranslation', array(), 'topics'),\n            ), 403);\n        }\n\n        $em->remove($topicTranslation);\n        $em->flush();\n\n        $cacheService->clearNamespace('topic');\n\n        return new JsonResponse(array(\n            'status' => true,\n            'message' => $translator->trans('topics.removedTranslation', array(), 'topics'),\n        ));\n    }\n\n    /**\n     * @Route(\"/admin/topics/edit/{id}\", options={\"expose\"=true})\n     *\n     * @Method(\"POST\")\n     */\n    public function editAction(Request $request, $id)\n    {\n        $em = $this->get('em');\n        $translator = $this->get('translator');\n        $topicService = $this->get('newscoop_newscoop.topic_service');\n        $cacheService = $this->get('newscoop.cache');\n\n        if (!$this->get('form.csrf_provider')->isCsrfTokenValid('default', $request->get('_csrf_token'))) {\n            return new JsonResponse(array(\n                'status' => false,\n                'message' => $translator->trans('topics.csrfinvalid', array(), 'topics'),\n            ), 403);\n        }\n\n        $node = $this->findOr404($id);\n        if (is_array($node)) {\n            return new JsonResponse($node, 404);\n        }\n\n        $locale = $request->get('_code', $request->getLocale());\n        $form = $this->createForm(new TopicType());\n        $form->handleRequest($request);\n        if ($form->isValid()) {\n            $data = $form->getData();\n\n            if ($topicService->checkTopicName($locale, $data['title'])) {\n                return new JsonResponse(array(\n                    'status' => false,\n                    'message' => $translator->trans('topics.existsname', array(), 'topics'),\n                ));\n            }\n\n            foreach ($node->getTranslations() as $translation) {\n                if ($translation->getLocale() == $locale && $translation->getField() == 'title') {\n                    $translation->setContent($data['title']);\n                    $exists = true;\n                }\n            }\n\n            $em->flush();\n            $cacheService->clearNamespace('topic');\n\n            return new JsonResponse(array(\n                'status' => true,\n                'message' => $translator->trans('topics.updated', array(), 'topics'),\n            ));\n        }\n\n        return new JsonResponse(array(\n            'status' => false,\n            'message' => $translator->trans('topics.error', array(), 'topics'),\n        ));\n    }\n\n    /**\n     * @Route(\"/admin/topics/detach\", options={\"expose\"=true})\n     *\n     * @Method(\"POST\")\n     */\n    public function detachTopicAction(Request $request)\n    {\n        $translator = $this->get('translator');\n        $em = $this->get('em');\n        $userService = $this->get('user');\n        $cacheService = $this->get('newscoop.cache');\n        $user = $userService->getCurrentUser();\n        $topicService = $this->get('newscoop_newscoop.topic_service');\n        if (!$user->hasPermission('AttachTopicToArticle')) {\n            return new JsonResponse(array(\n                'status' => false,\n                'message' => $translator->trans('You do not have the right to detach topics from articles.', array(), 'article_topics'),\n            ), 403);\n        }\n\n        $articleNumber = $request->get('articleNumber');\n        $topicId = $request->get('topicId');\n        $language = $request->get('language');\n        $articleObj = $em->getRepository('Newscoop\\Entity\\Article')->findOneBy(array(\n            'number' => $articleNumber,\n            'language' => $language,\n        ));\n\n        if (!$articleObj) {\n            return new JsonResponse(array(\n                'status' => false,\n                'message' => $translator->trans('Article does not exist.'),\n            ), 404);\n        }\n\n        $topicObj = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')->getSingleTopicQuery($topicId)->getOneOrNullResult();\n\n        if (!$topicObj) {\n            return new JsonResponse(array(\n                'status' => false,\n                'message' => $translator->trans('Topic does not exist.'),\n            ), 404);\n        }\n\n        $topicService->removeTopicFromArticle($topicObj, $articleObj);\n        $cacheService->clearNamespace('topic');\n\n        return new JsonResponse(array(\n            'status' => true,\n            'message' => $translator->trans('The topic $1 has been removed from article.', array('$1' => $topicObj->getTitle()), 'article_topics'),\n        ));\n    }\n\n    /**\n     * @Route(\"/admin/topics/attach\", options={\"expose\"=true})\n     *\n     * @Method(\"POST\")\n     */\n    public function attachTopicAction(Request $request)\n    {\n        $translator = $this->get('translator');\n        $em = $this->get('em');\n        $userService = $this->get('user');\n        $user = $userService->getCurrentUser();\n        $cacheService = $this->get('newscoop.cache');\n        $topicService = $this->get('newscoop_newscoop.topic_service');\n        if (!$user->hasPermission('AttachTopicToArticle')) {\n            return new JsonResponse(array(\n                'status' => false,\n                'message' => $translator->trans('You do not have the right to attach topics to articles.', array(), 'article_topics'),\n            ), 403);\n        }\n\n        $articleNumber = $request->get('_articleNumber');\n        $languageCode = $request->get('_languageCode');\n        $qb = $em->getRepository('Newscoop\\Entity\\Article')->createQueryBuilder('a')\n            ->join('a.language', 'l')\n            ->where('a.number = :number')\n            ->andWhere('l.code = :code')\n            ->setParameters(array(\n                'number' => $articleNumber,\n                'code' => $languageCode,\n            ));\n\n        $articleObj = $qb->getQuery()->getOneOrNullResult();\n\n        if (!$articleObj) {\n            return new JsonResponse(array(\n                'status' => false,\n                'message' => $translator->trans('Article does not exist.'),\n            ), 404);\n        }\n\n        $ids = $request->get('ids');\n        $topicsIds = $this->getArticleTopicsIds($articleNumber);\n        $idsDiff = array_merge(array_diff($ids, $topicsIds), array_diff($topicsIds, $ids));\n        foreach ($idsDiff as $key => $topicId) {\n            $topicObj = $em->getReference(\"Newscoop\\NewscoopBundle\\Entity\\Topic\", $topicId);\n            if (in_array($topicId, $topicsIds)) {\n                $topicService->removeTopicFromArticle($topicObj, $articleObj);\n            } else {\n                $topicService->addTopicToArticle($topicObj, $articleObj);\n            }\n        }\n\n        $cacheService->clearNamespace('topic');\n\n        return new JsonResponse(array(\n            'status' => true,\n            'message' => $translator->trans('topics.alerts.saved', array(), 'topics'),\n        ));\n    }\n\n    public function findOr404($id)\n    {\n        $em = $this->get('em');\n        $translator = $this->get('translator');\n        $node = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')->findOneBy(array(\n            'id' => $id,\n        ));\n\n        if (!$node) {\n            return array(\n                'status' => false,\n                'message' => $translator->trans('topics.failedfind', array('%id%' => $id), 'topics'),\n            );\n        }\n\n        return $node;\n    }\n\n    /**\n     * Get Article Topics.\n     *\n     * @param string $articleNumber Article number\n     *\n     * @return array Ids of article topics\n     */\n    private function getArticleTopicsIds($articleNumber)\n    {\n        $em = $this->get('em');\n        $query = $em->getRepository('Newscoop\\Entity\\ArticleTopic')->getArticleTopicsIds($articleNumber, true);\n        $articleTopics = $query->getArrayResult();\n\n        $topicsIds = array();\n        foreach ($articleTopics as $articleTopic) {\n            $topicsIds[] = reset($articleTopic);\n        }\n\n        return $topicsIds;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Controller/UsersController.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Template;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\JsonResponse;\nuse Symfony\\Component\\Security\\Core\\Exception\\AccessDeniedException;\nuse Newscoop\\Entity\\User;\n\nclass UsersController extends Controller\n{\n    /**\n     * @Route(\"/admin/users/\")\n     */\n    public function indexAction(Request $request)\n    {\n        $userService = $this->get('user');\n        $blogService = $this->get('blog');\n        $user = $userService->getCurrentUser();\n        if ($blogService->isBlogger($user)) {\n            throw new AccessDeniedException();\n        }\n\n        $em = $this->get('em');\n\n        $registered = $userService->countBy(array('status' => User::STATUS_ACTIVE));\n        $pending = $userService->countBy(array('status' => User::STATUS_INACTIVE));\n        $deleted = $userService->countBy(array('status' => User::STATUS_DELETED));\n        $active = $em->getRepository('Newscoop\\Entity\\User')->getLatelyLoggedInUsers(14, true)->getSingleScalarResult();\n        $userGroups = $em->getRepository('Newscoop\\Entity\\User\\Group')->findAll();\n\n        return $this->render(\n            'NewscoopNewscoopBundle:Users:index.html.twig',\n            array(\n                'registered' => $registered,\n                'pending' => $pending,\n                'deleted' => $deleted,\n                'active' => $active,\n                'userGroups' => $userGroups,\n                'active_logins' => array(\n                    'newscoop' => $em->getRepository('Newscoop\\Entity\\User')->getNewscoopLoginCount(),\n                    'external' => $em->getRepository('Newscoop\\Entity\\User')->getExternalLoginCount(),\n                )\n            )\n        );\n    }\n\n    /**\n     * @Route(\"admin/users/load/\", options={\"expose\"=true})\n     * @Template()\n     */\n    public function loadUsersAction(Request $request)\n    {\n        $em = $this->get('em');\n        $zendRouter = $this->get('zend_router');\n        $userService = $this->get('user');\n        $cacheService = $this->get('newscoop.cache');\n\n        $criteria = $userService->extractCriteriaFromRequest($request);\n        $criteria->is_public = null;\n        $registered = $userService->countBy(array('status' => User::STATUS_ACTIVE));\n        $pending = $userService->countBy(array('status' => User::STATUS_INACTIVE));\n\n        $cacheKey = $cacheService->getCacheKey(array('users__'.md5(serialize($criteria)), $registered, $pending));\n\n        if ($cacheService->contains($cacheKey)) {\n            $responseArray =  $cacheService->fetch($cacheKey);\n        } else {\n            $users = $em->getRepository('Newscoop\\Entity\\User')->getListByCriteria($criteria);\n\n            $pocessed = array();\n            foreach ($users as $user) {\n                $pocessed[] = $this->processUser($user, $zendRouter);\n            }\n\n            $responseArray = array(\n                'records' => $pocessed,\n                'queryRecordCount' => $users->count,\n                'totalRecordCount'=> count($users->items)\n            );\n\n            $cacheService->save($cacheKey, $responseArray);\n        }\n\n        return new JsonResponse($responseArray);\n    }\n\n    private function processUser($user, $zendRouter)\n    {\n        switch ($user->getStatus()) {\n            case '0':\n                $status = 'Inactive';\n                break;\n            case '1':\n                $status = 'Active';\n                break;\n            case '2':\n                $status = 'Banned';\n                break;\n            case '3':\n                $status = 'Deleted';\n                break;\n        }\n\n        $types = array();\n        foreach ($user->getUserTypes() as $type) {\n            $types[] = $type->getName();\n        }\n\n        return array(\n            'id' => $user->getId(),\n            'email' => $user->getEmail(),\n            'username' => $user->getUsername(),\n            'first_name' => $user->getFirstName(),\n            'last_name' => $user->getLastName(),\n            'created' => $user->getCreated(),\n            'updated' => $user->getUpdated(),\n            'is_verified' => (bool) $user->getAttribute(\\Newscoop\\Entity\\UserAttribute::IS_VERIFIED),\n            'status' => $status,\n            'types' => implode(', ', $types),\n            'links' => array(\n                array(\n                    'rel' => 'edit',\n                    'href' => $zendRouter->assemble(array(\n                        'module' => 'admin',\n                        'controller' => 'user',\n                        'action' => 'edit',\n                        'user' => $user->getId(),\n                    ), 'default', true)\n                ),\n                array(\n                    'rel' => 'token',\n                    'href' => $zendRouter->assemble(array(\n                        'module' => 'admin',\n                        'controller' => 'user',\n                        'action' => 'send-confirm-email',\n                        'user' => $user->getId(),\n                    ), 'default', true)\n                ),\n                array(\n                    'rel' => 'rename',\n                    'href' => $zendRouter->assemble(array(\n                        'module' => 'admin',\n                        'controller' => 'user',\n                        'action' => 'rename',\n                        'user' => $user->getId(),\n                    ), 'default', true),\n                ),\n                array(\n                    'rel' => 'delete',\n                    'href' => $zendRouter->assemble(array(\n                        'module' => 'admin',\n                        'controller' => 'user',\n                        'action' => 'delete',\n                        'user' => $user->getId(),\n                    ), 'default', true)\n                ),\n            )\n        );\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Controller/WebcodeRedirectController.php",
    "content": "<?php\n/**\n * @package   Newscoop\\NewscoopBundle\n * @author    Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license   http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\Response;\n\n/**\n * Redirects article with webcode to original article link\n */\nclass WebcodeRedirectController extends Controller\n{\n    /**\n     * @Route(\"/{webcode}\", requirements={\"webcode\" = \"^\\+[a-z0-9]{5}\"})\n     */\n    public function webcodeRedirectAction(Request $request, $webcode)\n    {\n        $em = $this->get('em');\n        $linkService = $this->get('article.link');\n        $response = new Response();\n        $templatesService = $this->get('newscoop.templates.service');\n\n        $article = $em->getRepository('Newscoop\\Entity\\Article')\n            ->createQueryBuilder('a')\n            ->where('a.webcode = :webcode')\n            ->setParameter('webcode', str_replace('+', '', $webcode))\n            ->getQuery()\n            ->getOneOrNullResult();\n\n        if (!is_null($article) && $article->isPublished()) {\n            $link = $linkService->getLink($article);\n\n            return $this->redirect($link, 301);\n        }\n\n        $response->setContent($templatesService->fetchTemplate('404.tpl'));\n        $response->setStatusCode(Response::HTTP_NOT_FOUND);\n\n        return $response;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/DependencyInjection/Configuration.php",
    "content": "<?php\n\nnamespace Newscoop\\NewscoopBundle\\DependencyInjection;\n\nuse Symfony\\Component\\Config\\Definition\\Builder\\TreeBuilder;\nuse Symfony\\Component\\Config\\Definition\\ConfigurationInterface;\n\n/**\n * This is the class that validates and merges configuration from your app/config files\n *\n * To learn more see {@link http://symfony.com/doc/current/cookbook/bundles/extension.html#cookbook-bundles-extension-config-class}\n */\nclass Configuration implements ConfigurationInterface\n{\n    /**\n     * {@inheritDoc}\n     */\n    public function getConfigTreeBuilder()\n    {\n        $treeBuilder = new TreeBuilder();\n        $rootNode = $treeBuilder->root('newscoop_newscoop');\n\n        // Here you should define the parameters that are allowed to\n        // configure your bundle. See the documentation linked above for\n        // more information on that topic.\n\n        return $treeBuilder;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/DependencyInjection/NewscoopNewscoopExtension.php",
    "content": "<?php\n\nnamespace Newscoop\\NewscoopBundle\\DependencyInjection;\n\nuse Symfony\\Component\\DependencyInjection\\ContainerBuilder;\nuse Symfony\\Component\\Config\\FileLocator;\nuse Symfony\\Component\\HttpKernel\\DependencyInjection\\Extension;\nuse Symfony\\Component\\DependencyInjection\\Loader;\nuse Symfony\\Component\\DependencyInjection\\Loader\\YamlFileLoader;\nuse Symfony\\Component\\DependencyInjection\\Extension\\PrependExtensionInterface;\n\n/**\n * This is the class that loads and manages your bundle configuration\n *\n * To learn more see {@link http://symfony.com/doc/current/cookbook/bundles/extension.html}\n */\nclass NewscoopNewscoopExtension extends Extension implements PrependExtensionInterface\n{\n    /**\n     * {@inheritDoc}\n     */\n    public function load(array $configs, ContainerBuilder $container)\n    {\n        $configuration = new Configuration();\n        $config = $this->processConfiguration($configuration, $configs);\n\n        $loader = new Loader\\YamlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));\n        $loader->load('services.yml');\n    }\n\n    public function prepend(ContainerBuilder $container)\n    {\n        global $Campsite;\n\n        $this->mergeParameters($container);\n        $containerParameters = $container->getParameterBag()->all();\n\n        $config_file = APPLICATION_PATH.'/../conf/database_conf.php';\n        if (is_readable($config_file)) {\n            require_once $config_file;\n        }\n\n        $doctrine_dbal_config = array(\n            'default_connection' => 'default',\n            'connections' => array(\n                'default' => array(\n                    'dbname' => $Campsite['DATABASE_NAME'],\n                    'host' => $Campsite['DATABASE_SERVER_ADDRESS'],\n                    'port' => $Campsite['DATABASE_SERVER_PORT'],\n                    'user' => $Campsite['DATABASE_USER'],\n                    'password' => $Campsite['DATABASE_PASSWORD'],\n                    'driver' => 'pdo_mysql',\n                    'charset' => 'UTF8',\n                    'mapping_types' => array(\n                        'enum' => 'string',\n                        'point' => 'string',\n                        'geometry' => 'string',\n                    ),\n                ),\n            ),\n        );\n\n        $doctrine_orm_config = array(\n            'auto_generate_proxy_classes' => $containerParameters['doctrine']['proxy']['autogenerate'],\n            'proxy_namespace' => $containerParameters['doctrine']['proxy']['namespace'],\n            'proxy_dir' =>  $this->truepath($containerParameters['doctrine']['proxy']['dir']),\n            'default_entity_manager' => 'default',\n            'entity_managers' => array(\n                'default' => array(\n                    # The name of a DBAL connection (the one marked as default is used if not set)\n                    'connection' => 'default',\n                    'auto_mapping' => false,\n                    'mappings' => array(\n                        'newscoop_entity' => array(\n                            'mapping' => 'true',\n                            'type' => 'annotation',\n                            'dir' => $this->truepath($containerParameters['doctrine']['entity']['dir']),\n                            'is_bundle' => false,\n                            'prefix' => 'Newscoop\\Entity',\n                        ),\n                        'newscoop_package' => array(\n                            'mapping' => 'true',\n                            'type' => 'annotation',\n                            'dir' => $this->truepath($containerParameters['doctrine']['entity']['dir']),\n                            'is_bundle' => false,\n                            'prefix' => 'Newscoop\\Package',\n                        ),\n                        'newscoop_image' => array(\n                            'mapping' => 'true',\n                            'type' => 'annotation',\n                            'dir' => $this->truepath($containerParameters['doctrine']['entity']['dir']),\n                            'is_bundle' => false,\n                            'prefix' => 'Newscoop\\Image',\n                        ),\n                        'newscoop_subscription' => array(\n                            'mapping' => 'true',\n                            'type' => 'annotation',\n                            'dir' => $this->truepath($containerParameters['doctrine']['entity']['dir']),\n                            'is_bundle' => false,\n                            'prefix' => 'Newscoop\\Subscription',\n                        ),\n                    ),\n                    # All cache drivers have to be array, apc, xcache or memcache\n                    'metadata_cache_driver' => $containerParameters['doctrine']['cache'],\n                    'query_cache_driver' => $containerParameters['doctrine']['cache'],\n                    'dql' => array(\n                        'numeric_functions' => $containerParameters['doctrine']['functions'],\n                    ),\n                ),\n            ),\n        );\n\n        $container->prependExtensionConfig('doctrine', array(\n            'dbal' => $doctrine_dbal_config,\n            'orm' => $doctrine_orm_config,\n        ));\n    }\n\n    /**\n     * Merge parameters for env's.\n     */\n    public function mergeParameters($container)\n    {\n        $container->setParameter('application_path', APPLICATION_PATH);\n\n        /**\n         * Allways load config for env\n         */\n        $this->loader = new YamlFileLoader($container, new FileLocator(APPLICATION_PATH.'/configs/'));\n        $this->loader->load(APPLICATION_PATH.'/configs/parameters/parameters.yml');\n\n        if (APPLICATION_ENV !== 'production') {\n            $tempContainer = new ContainerBuilder();\n            $tempLoader = new YamlFileLoader($tempContainer, new FileLocator(APPLICATION_PATH.'/configs/'));\n\n            if (file_exists($file = APPLICATION_PATH.'/configs/parameters/parameters_'.APPLICATION_ENV.'.yml')) {\n                $tempLoader->load($file);\n            }\n\n            $containerParameters = $container->getParameterBag()->all();\n            $tempContainerParameters = $tempContainer->getParameterBag()->all();\n            $parameters = $this->array_merge_recursive_distinct($containerParameters, $tempContainerParameters);\n\n            foreach ($parameters as $key => $value) {\n                $container->setParameter($key, $value);\n            }\n        }\n\n        $container->setParameter('storage', array(\n            \\Zend_Cloud_StorageService_Adapter_FileSystem::LOCAL_DIRECTORY => APPLICATION_PATH.'/..',\n        ));\n\n        // load custom instalation parameter\n        if (file_exists($file = APPLICATION_PATH.'/configs/parameters/custom_parameters.yml')) {\n            $this->loader->load($file);\n        }\n\n        /**\n         * Load all configs from services directory.\n         */\n        $services = glob(APPLICATION_PATH.'/configs/services/*.yml');\n        foreach ($services as $service) {\n            $this->loader->load($service);\n        }\n    }\n\n    /**\n     * array_merge_recursive does indeed merge arrays, but it converts values with duplicate\n     * keys to arrays rather than overwriting the value in the first array with the duplicate\n     * value in the second array, as array_merge does. I.e., with array_merge_recursive,\n     * this happens (documented behavior):\n     *\n     * array_merge_recursive(array('key' => 'org value'), array('key' => 'new value'));\n     *     => array('key' => array('org value', 'new value'));\n     *\n     * array_merge_recursive_distinct does not change the datatypes of the values in the arrays.\n     * Matching keys' values in the second array overwrite those in the first array, as is the\n     * case with array_merge, i.e.:\n     *\n     * array_merge_recursive_distinct(array('key' => 'org value'), array('key' => 'new value'));\n     *     => array('key' => 'new value');\n     *\n     * Parameters are passed by reference, though only for performance reasons. They're not\n     * altered by this function.\n     *\n     * @param  array $array1\n     * @param  mixed $array2\n     * @author daniel@danielsmedegaardbuus.dk\n     * @return array\n     */\n    private function &array_merge_recursive_distinct(array &$array1, &$array2 = null)\n    {\n        $merged = $array1;\n\n        if (is_array($array2)) {\n            foreach ($array2 as $key => $val) {\n                if (is_array($array2[$key])) {\n                    $mergedKey = !empty($merged[$key]) ? $merged[$key] : null;\n                    $arrayKey = $array2[$key];\n                    $merged[$key] = is_array($mergedKey) ? $this->array_merge_recursive_distinct($mergedKey, $arrayKey) : $arrayKey;\n                } else {\n                    $merged[$key] = $val;\n                }\n            }\n        }\n\n        return $merged;\n    }\n\n    /**\n     * This function is to replace PHP's extremely buggy realpath().\n     * @param string The original path, can be relative etc.\n     * @return string The resolved path, it might not exist.\n     */\n    public function truepath($path)\n    {\n        $path = str_replace('%application_path%', APPLICATION_PATH, $path);\n\n        // whether $path is unix or not\n        $unipath = strlen($path) == 0 || $path{0}\n        != '/';\n        // attempts to detect if path is relative in which case, add cwd\n        if (strpos($path, ':') === false && $unipath) {\n            $path = getcwd().DIRECTORY_SEPARATOR.$path;\n        }\n        // resolve path parts (single dot, double dot and double delimiters)\n        $path = str_replace(array('/', '\\\\'), DIRECTORY_SEPARATOR, $path);\n        $parts = array_filter(explode(DIRECTORY_SEPARATOR, $path), 'strlen');\n        $absolutes = array();\n        foreach ($parts as $part) {\n            if ('.'  == $part) {\n                continue;\n            }\n            if ('..' == $part) {\n                array_pop($absolutes);\n            } else {\n                $absolutes[] = $part;\n            }\n        }\n        $path = implode(DIRECTORY_SEPARATOR, $absolutes);\n        // put initial separator that could have been lost\n        $path = !$unipath ? '/'.$path : $path;\n\n        return $path;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Entity/CityLocations.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\nuse Newscoop\\NewscoopBundle\\ORM\\Point;\n\n/**\n * City Locations entity\n *\n * @ORM\\Entity()\n * @ORM\\Table(name=\"CityLocations\")\n */\nclass CityLocations \n{\n    /**\n     * @ORM\\Id()\n     * @ORM\\GeneratedValue(strategy=\"AUTO\")\n     * @ORM\\Column(type=\"integer\", name=\"id\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(type=\"point\", name=\"position\")\n     */\n    protected $position;\n\n    /**\n     * @ORM\\Column(type=\"string\", name=\"city_type\", nullable=true)\n     * @var string\n     */\n    protected $city_type;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"population\")\n     * @var int\n     */\n    protected $population;\n\n    /**\n     * @ORM\\Column(type=\"string\", columnDefinition=\"CHAR(2) NOT NULL\", name=\"elevation\")\n     * @var string\n     */\n    protected $elevation;\n\n    /**\n     * @ORM\\Column(type=\"string\", length=1023, name=\"time_zone\")\n     * @var string\n     */\n    protected $time_zone;\n\n    public function __construct() {}\n\n    /**\n     * Get id\n     *\n     * @return integer\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Get city_type\n     *\n     * @return string\n     */\n    public function getCityType()\n    {\n        return $this->city_type;\n    }\n\n    /**\n     * Set city_type\n     *\n     * @param string $city_type\n     *\n     */\n    public function setCityType($city_type)\n    {\n        $this->city_type = $city_type;\n\n        return $this;\n    }\n\n    /**\n     * Set position\n     *\n     * @return Point $position\n     */\n    public function setPosition(Point $position) \n    {\n        $this->position = $position;\n\n        return $this;\n    }\n    \n    /**\n     * Get position\n     *\n     * @return Point\n     */\n    public function getPosition() \n    {\n        return $this->position;\n    }\n\n    /**\n     * Set population\n     *\n     * @return integer $population\n     */\n    public function setPopulation($population) \n    {\n        $this->population = $population;\n\n        return $this;\n    }\n    \n    /**\n     * Get population\n     *\n     * @return integer\n     */\n    public function getPopulation() \n    {\n        return $this->population;\n    }\n\n    /**\n     * Set elevation\n     *\n     * @return integer $elevation\n     */\n    public function setElevation($elevation) \n    {\n        $this->elevation = $elevation;\n\n        return $this;\n    }\n    \n    /**\n     * Get elevation\n     *\n     * @return integer\n     */\n    public function getElevation() \n    {\n        return $this->elevation;\n    }\n\n    /**\n     * Set time zone\n     *\n     * @return string $time_zone\n     */\n    public function setTimeZone($time_zone) \n    {\n        $this->time_zone = $time_zone;\n\n        return $this;\n    }\n    \n    /**\n     * Get time zone\n     *\n     * @return string\n     */\n    public function getTimeZone() \n    {\n        return $this->time_zone;\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Entity/CityNames.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Entity;\n\nuse Doctrine\\ORM\\Mapping AS ORM;\n\n/**\n * City Names entity\n *\n * @ORM\\Entity()\n * @ORM\\Table(name=\"CityNames\")\n */\nclass CityNames\n{\n    /**\n     * @ORM\\Id()\n     * @ORM\\ManyToOne(targetEntity=\"Newscoop\\NewscoopBundle\\Entity\\CityLocations\")\n     */\n    protected $fk_citylocations;\n\n    /**\n     * @ORM\\Column(type=\"string\", length=10, name=\"name_type\")\n     * @var int\n     */\n    protected $name_type;\n\n    /**\n     * @ORM\\Column(type=\"string\", length=1024, name=\"city_name\")\n     * @var string\n     */\n    protected $city_name;\n\n    public function __construct() {}\n\n    /**\n     * Get fk_citylocations\n     *\n     * @return integer\n     */\n    public function getFkCitylocations()\n    {\n        return $this->fk_citylocations;\n    }\n\n    /**\n     * Get name_type\n     *\n     * @return string\n     */\n    public function getNameType()\n    {\n        return $this->name_type;\n    }\n\n    /**\n     * Set name_type\n     *\n     * @param string $name_type\n     *\n     */\n    public function setNameType($name_type)\n    {\n        $this->name_type = $name_type;\n\n        return $this;\n    }\n\n    /**\n     * Get city_name\n     *\n     * @return string\n     */\n    public function getCityName()\n    {\n        return $this->city_name;\n    }\n\n    /**\n     * Set city_name\n     *\n     * @param string $city_name\n     *\n     */\n    public function setCityName($city_name)\n    {\n        $this->city_name = $city_name;\n\n        return $this;\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Entity/Repository/TopicRepository.php",
    "content": "<?php\n\n/**\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\NewscoopBundle\\Entity\\Repository;\n\nuse Gedmo\\Tree\\Entity\\Repository\\NestedTreeRepository;\nuse Doctrine\\ORM\\Query;\nuse Newscoop\\NewscoopBundle\\Entity\\Topic;\nuse Closure;\nuse Gedmo\\Translatable\\TranslatableListener;\nuse Gedmo\\Tool\\Wrapper\\EntityWrapper;\nuse Gedmo\\Exception\\InvalidArgumentException;\n\nclass TopicRepository extends NestedTreeRepository\n{\n    public $onChildrenQuery;\n\n    /**\n     * Get all topics.\n     *\n     * @param $languageCode Language code\n     *\n     * @return Doctrine\\ORM\\Query\n     */\n    public function getTopics($languageCode = null)\n    {\n        $meta = $this->getClassMetadata();\n        $config = $this->listener->getConfiguration($this->_em, $meta->name);\n\n        $queryBuilder = $this\n            ->getQueryBuilder('t')\n            ->from($config['useObjectClass'], 't');\n\n        if ($languageCode) {\n            $queryBuilder->leftJoin('t.translations', 'tt')\n                ->where('tt.locale = :locale')\n                ->setParameter('locale', $languageCode);\n        }\n\n        $countQueryBuilder = clone($queryBuilder);\n        $countQueryBuilder->select('count(t)');\n\n        $queryBuilder->select('t');\n        $topicsCount = $countQueryBuilder->getQuery()->getSingleScalarResult();\n        $query = $this->setTranslatableHint($queryBuilder->getQuery(), $languageCode);\n        $query->setHint('knp_paginator.count', $topicsCount);\n\n        return $query;\n    }\n\n    /**\n     * Get all parent choices.\n     *\n     * @param Topic|null $node Topic object\n     *\n     * @return array\n     */\n    public function findAllParentChoices(Topic $node = null)\n    {\n        $dql = \"SELECT c FROM {$this->_entityName} c\";\n        if (!is_null($node)) {\n            $subSelect = \"SELECT n FROM {$this->_entityName} n\";\n            $subSelect .= ' WHERE n.root = '.$node->getRoot();\n            $subSelect .= ' AND n.lft BETWEEN '.$node->getLeft().' AND '.$node->getRight();\n\n            $dql .= \" WHERE c.id NOT IN ({$subSelect})\";\n        }\n        $q = $this->_em->createQuery($dql);\n        $q->setHint(\n            Query::HINT_CUSTOM_OUTPUT_WALKER,\n            'Gedmo\\\\Translatable\\\\Query\\\\TreeWalker\\\\TranslationWalker'\n        );\n        $nodes = $q->getArrayResult();\n        $indexed = array();\n        foreach ($nodes as $node) {\n            $indexed[$node['id']] = $node['title'];\n        }\n\n        return $indexed;\n    }\n\n    /**\n     * Will do reordering based on current translations.\n     */\n    public function childrenQuery($node = null, $direct = false, $sortByField = null, $direction = 'ASC', $include = false)\n    {\n        $q = parent::childrenQuery($node, $direct, $sortByField, $direction, $include);\n        if ($this->onChildrenQuery instanceof Closure) {\n            $c = &$this->onChildrenQuery;\n            $c($q);\n        }\n\n        return $q;\n    }\n\n    public function getTopicsQuery($direction = 'ASC')\n    {\n        $meta = $this->getClassMetadata();\n        $config = $this->listener->getConfiguration($this->_em, $meta->name);\n\n        return $this\n            ->getQueryBuilder()\n            ->select('node')\n            ->from($config['useObjectClass'], 'node')\n            ->orderBy('node.root, node.lft', $direction)\n            ->getQuery();\n    }\n\n    /**\n     * Gets the single topic's query by id.\n     *\n     * @param int    $id     Topic id\n     * @param string $locale Language code\n     *\n     * @return Query $query Query object\n     */\n    public function getSingleTopicQuery($id, $locale = null)\n    {\n        $meta = $this->getClassMetadata();\n        $config = $this->listener->getConfiguration($this->_em, $meta->name);\n\n        $queryBuilder = $this->getQueryBuilder()\n            ->select('t')\n            ->from($config['useObjectClass'], 't')\n            ->where('t.id = :id')\n            ->setParameter('id', $id);\n\n        $query = $queryBuilder->getQuery();\n\n        return $this->setTranslatableHint($query, $locale);\n    }\n\n    /**\n     * Get topics query and set translatable hints.\n     *\n     * @param Query $query Query object\n     */\n    public function getTranslatableTopics($locale, $order = 'asc')\n    {\n        $query = $this\n            ->getQueryBuilder()\n            ->select('node', 't')\n            ->from('Newscoop\\NewscoopBundle\\Entity\\Topic', 'node')\n            ->leftJoin('node.translations', 't')\n            ->where(\"t.field = 'title'\");\n\n        $query = $query\n            ->orderBy('node.root, node.lft', $order)\n            ->getQuery();\n\n        return $this->setTranslatableHint($query, $locale);\n    }\n\n    /**\n     * Add hints to the query.\n     *\n     * @param Query       $query  Query\n     * @param string|null $locale Lecale to which fallback\n     *\n     * @return Query\n     */\n    public function setTranslatableHint(Query $query, $locale = null)\n    {\n        $query->setHint(\n            Query::HINT_CUSTOM_OUTPUT_WALKER,\n            'Gedmo\\\\Translatable\\\\Query\\\\TreeWalker\\\\TranslationWalker'\n        );\n        $query->setHint(\n            TranslatableListener::HINT_INNER_JOIN,\n            false\n        );\n        $query->setHint(\n            TranslatableListener::HINT_TRANSLATABLE_LOCALE,\n            $locale\n        );\n        $query->setHint(\n            TranslatableListener::HINT_FALLBACK,\n            true\n        );\n\n        return $query;\n    }\n\n    /**\n     * Get all articles for given topic by topic id and language code.\n     *\n     * @param int    $topicId         Topic id\n     * @param string $languageCode    Language code\n     * @param bool   $defaultFallback Sets the language of the topic to the default one\n     *\n     * @return Query\n     */\n    public function getArticlesQueryByTopicIdAndLanguage($topicId, $languageCode, $defaultFallback = false)\n    {\n        $query = $this\n            ->getQueryBuilder()\n            ->select('node', 't')\n            ->from('Newscoop\\NewscoopBundle\\Entity\\Topic', 'node')\n            ->leftJoin('node.translations', 't')\n            ->where(\"t.field = 'title'\")\n            ->andWhere('node.id = :id')\n            ->setParameter('id', $topicId);\n\n        if ($defaultFallback) {\n            return $this->setTranslatableHint($query->getQuery(), $languageCode);\n        }\n\n        $query->andWhere('t.locale = :locale')\n            ->setParameter('locale', $languageCode);\n\n        return $query->getQuery();\n    }\n\n    /**\n     * Search topic by given query.\n     *\n     * @param string $query\n     * @param array  $sort\n     *\n     * @return Query\n     */\n    public function searchTopics($query, $sort = array(), $limit = null, $locale = null)\n    {\n        $meta = $this->getClassMetadata();\n        $config = $this->listener->getConfiguration($this->_em, $meta->name);\n        $qb = $this->getQueryBuilder()\n            ->select('t', 'tt')\n            ->from($config['useObjectClass'], 't')\n            ->leftJoin('t.translations', 'tt')\n            ->where(\"tt.field = 'title'\");\n\n        $orX = $qb->expr()->orx();\n\n        $orX->add($qb->expr()->like('t.title', $qb->expr()->literal(\"%{$query}%\")));\n        $orX->add($qb->expr()->like('tt.content', $qb->expr()->literal(\"%{$query}%\")));\n        $qb->andWhere($orX);\n\n        if ((!empty($sort)) && is_array($sort)) {\n            foreach ($sort as $sortColumn => $sortDir) {\n                $qb->addOrderBy('t.'.$sortColumn, $sortDir);\n            }\n        }\n\n        if (!is_null($limit)) {\n            $qb->setMaxResults($limit);\n        }\n\n        return $this->setTranslatableHint($qb->getQuery(), $locale);\n    }\n\n    /**\n     * Find topic options.\n     *\n     * @return array\n     */\n    public function findOptions()\n    {\n        $query = $this->createQueryBuilder('t')\n            ->select('t.id, t.title as name')\n            ->orderBy('t.title')\n            ->getQuery();\n\n        $options = array();\n        foreach ($query->getResult() as $row) {\n            $options[$row['id']] = $row['name'];\n        }\n\n        return $options;\n    }\n\n    /**\n     * Gets topic's path.\n     *\n     * @param Topic $topic Topic\n     *\n     * @return string Path of the topic\n     */\n    public function getReadablePath(Topic $topic, $locale = null)\n    {\n        $pathQuery = $this->getPathQuery($topic);\n        if (!$locale) {\n            $locale = $this->getTranslatableTopicLocale($topic);\n        }\n\n        $this->setTranslatableHint($pathQuery, $locale);\n        $path = $pathQuery->getArrayResult();\n        $pathStr = '';\n        foreach ($path as $element) {\n            $pathStr = $pathStr.' / '.$element['title'];\n        }\n\n        return $pathStr;\n    }\n\n    public function getTranslatableTopicLocale(Topic $topic)\n    {\n        foreach ($topic->getTranslations()->toArray() as $translation) {\n            if ($translation->getField() == 'title' && $topic->getTitle() == $translation->getContent()) {\n                return $translation->getLocale();\n            }\n        }\n    }\n\n    /**\n     * Get Topics for Article.\n     *\n     * Returns all the associated Topics to an Article.\n     *\n     * @param int    $articleNr    Article number\n     * @param string $languageCode Language code in format \"en\" for example.\n     * @param string $order        Order of the topics, default ascending\n     *\n     * @return Doctrine\\ORM\\Query Query\n     */\n    public function getArticleTopics($articleNr, $languageCode, $order = 'asc')\n    {\n        $em = $this->getEntityManager();\n        $articleTopicsIds = $em->getRepository('Newscoop\\Entity\\ArticleTopic')->getArticleTopicsIds($articleNr, true);\n        $articleTopicsIds = $articleTopicsIds->getArrayResult();\n        $topicsIds = array();\n        foreach ($articleTopicsIds as $key => $value) {\n            $topicsIds[$key] = $value[1];\n        }\n\n        $queryBuilder = $this->createQueryBuilder('t')\n            ->where('t.id IN(:ids)')\n            ->setParameters(array(\n                'ids' => $topicsIds,\n            ))\n            ->orderBy('t.root, t.lft', $order);\n\n        $countQueryBuilder = clone $queryBuilder;\n        $countQueryBuilder->select('COUNT(t)');\n        $count = $countQueryBuilder->getQuery()->getSingleScalarResult();\n\n        $query = $queryBuilder->getQuery();\n        $query->setHint('knp_paginator.count', $count);\n        $query = $this->setTranslatableHint($query, $languageCode);\n\n        return $query;\n    }\n\n    /**\n     * Count topics by given criteria.\n     *\n     * @param array $criteria\n     *\n     * @return int\n     */\n    public function countBy(array $criteria = array())\n    {\n        $queryBuilder = $this->getQueryBuilder()\n            ->select('COUNT(t)')\n            ->from($this->getEntityName(), 't');\n\n        foreach ($criteria as $property => $value) {\n            if (!is_array($value)) {\n                $queryBuilder->andWhere(\"t.$property = :$property\")\n                    ->setParameter($property, $value);\n            }\n        }\n\n        $query = $queryBuilder->getQuery();\n\n        return (int) $query->getSingleScalarResult();\n    }\n\n    /**\n     * Gets topic by given id or name.\n     *\n     * @param string|int $topicIdOrName Topicid or name\n     * @param string|int $locale        Current locale, language code or id\n     *\n     * @return Query\n     */\n    public function getTopicByIdOrName($topicIdOrName, $locale = null)\n    {\n        $qb = $this->getQueryBuilder()\n            ->select('t', 'tt', 'p')\n            ->from($this->getEntityName(), 't')\n            ->leftJoin('t.translations', 'tt')\n            ->leftJoin('t.parent', 'p')\n            ->where(\"tt.field = 'title'\");\n\n        if (is_numeric($topicIdOrName)) {\n            $qb\n                 ->andWhere('t.id = :id')\n                 ->setParameter('id', $topicIdOrName);\n        } else {\n            $qb\n                ->andWhere('t.title = :title')\n                ->setParameter('title', $topicIdOrName);\n        }\n\n        if (is_numeric($locale)) {\n            $language = $this->_em->getReference('Newscoop\\Entity\\Language', $locale);\n            $locale = $language->getCode();\n        }\n\n        $topic = $this->setTranslatableHint($qb->getQuery(), $locale);\n\n        return $topic;\n    }\n\n    /**\n     * @see getChildrenQueryBuilder\n     */\n    public function childrenWithTranslations(\n        $node = null,\n        $locale = null,\n        $direct = false,\n        $sortByField = null,\n        $direction = 'ASC',\n        $includeNode = false,\n        $start = null,\n        $limit = null\n    ) {\n        $meta = $this->getClassMetadata();\n        $config = $this->listener->getConfiguration($this->_em, $meta->name);\n\n        $qb = $this->getQueryBuilder();\n        $qb->select('node', 't')\n            ->from($config['useObjectClass'], 'node')\n            ->leftJoin('node.translations', 't')\n        ;\n        if ($node !== null) {\n            if ($node instanceof $meta->name) {\n                $wrapped = new EntityWrapper($node, $this->_em);\n                if (!$wrapped->hasValidIdentifier()) {\n                    throw new InvalidArgumentException('Node is not managed by UnitOfWork');\n                }\n                if ($direct) {\n                    $id = $wrapped->getIdentifier();\n                    $qb->where($id === null ?\n                        $qb->expr()->isNull('node.'.$config['parent']) :\n                        $qb->expr()->eq('node.'.$config['parent'], is_string($id) ? $qb->expr()->literal($id) : $id)\n                    );\n                } else {\n                    $left = $wrapped->getPropertyValue($config['left']);\n                    $right = $wrapped->getPropertyValue($config['right']);\n                    if ($left && $right) {\n                        $qb\n                            ->where($qb->expr()->lt('node.'.$config['right'], $right))\n                            ->andWhere($qb->expr()->gt('node.'.$config['left'], $left))\n                        ;\n                    }\n                }\n                if (isset($config['root'])) {\n                    $rootId = $wrapped->getPropertyValue($config['root']);\n                    $qb->andWhere($rootId === null ?\n                        $qb->expr()->isNull('node.'.$config['root']) :\n                        $qb->expr()->eq('node.'.$config['root'], is_string($rootId) ? $qb->expr()->literal($rootId) : $rootId)\n                    );\n                }\n                if ($includeNode) {\n                    $idField = $meta->getSingleIdentifierFieldName();\n                    $qb->where('('.$qb->getDqlPart('where').') OR node.'.$idField.' = :rootNode');\n                    $qb->setParameter('rootNode', $node);\n                }\n            } else {\n                throw new \\InvalidArgumentException('Node is not related to this repository');\n            }\n        } else {\n            if ($direct) {\n                $qb->where($qb->expr()->isNull('node.'.$config['parent']));\n            }\n        }\n        if (!$sortByField) {\n            $qb->orderBy('node.'.$config['left'], 'ASC');\n        } elseif (is_array($sortByField)) {\n            $fields = '';\n            foreach ($sortByField as $field) {\n                $fields .= 'node.'.$field.',';\n            }\n            $fields = rtrim($fields, ',');\n            $qb->orderBy($fields, $direction);\n        } else {\n            if ($meta->hasField($sortByField) && in_array(strtolower($direction), array('asc', 'desc'))) {\n                $qb->orderBy('node.'.$sortByField, $direction);\n            } else {\n                throw new InvalidArgumentException(\"Invalid sort options specified: field - {$sortByField}, direction - {$direction}\");\n            }\n        }\n\n        if ($start) {\n            $qb->setFirstResult($start);\n        }\n\n        if ($limit) {\n            $qb->setMaxResults($limit);\n        }\n\n        return $this->setTranslatableHint($qb->getQuery(), $locale);\n    }\n\n    /**\n     * {@inheritDoc}\n     */\n    public function getRootNodes($locale = null, $sortByField = null, $direction = 'asc')\n    {\n        $meta = $this->getClassMetadata();\n        $config = $this->listener->getConfiguration($this->_em, $meta->name);\n        $qb = $this->getQueryBuilder();\n        $qb\n            ->select('node', 't', 'c')\n            ->from($config['useObjectClass'], 'node')\n            ->leftJoin('node.translations', 't')\n            ->leftJoin('node.children', 'c')\n            ->where($qb->expr()->isNull('node.'.$config['parent']));\n\n        if ($sortByField !== null) {\n            $qb->orderBy('node.'.$sortByField, strtolower($direction) === 'asc' ? 'asc' : 'desc');\n        } else {\n            $qb->orderBy('node.'.$config['left'], 'ASC');\n        }\n\n        return $this->setTranslatableHint($qb->getQuery(), $locale);\n    }\n\n    public function getOneByExtractedFullName($name, $languageCode)\n    {\n        return $this\n            ->getQueryBuilder()\n            ->from('Newscoop\\NewscoopBundle\\Entity\\TopicTranslation', 'tt')\n            ->select('tt', 'o')\n            ->leftJoin('tt.object', 'o')\n            ->where('tt.content = :content')\n            ->andWhere('tt.locale = :locale')\n            ->andWhere('tt.field = :field')\n            ->setParameters(array(\n                'content' => $name,\n                'locale' => $languageCode,\n                'field' => 'title'\n            ))\n            ->getQuery();\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Entity/SystemPreferences.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\NewscoopBundle\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\n\n/**\n * System Preferences entity\n *\n * @ORM\\Entity()\n * @ORM\\Table(name=\"SystemPreferences\")\n */\nclass SystemPreferences\n{\n    /**\n     * @ORM\\Id()\n     * @ORM\\GeneratedValue(strategy=\"AUTO\")\n     * @ORM\\Column(type=\"integer\", name=\"id\")\n     * @var int\n     */\n    protected $id;\n\n    /**\n     * @ORM\\Column(type=\"string\", length=100, name=\"varname\")\n     * @var string\n     */\n    protected $option;\n\n    /**\n     * @ORM\\Column(type=\"string\", length=100, name=\"value\", nullable=true)\n     * @var string\n     */\n    protected $value;\n\n    /**\n     * @ORM\\Column(type=\"datetime\", name=\"last_modified\")\n     * @var datetime\n     */\n    protected $created_at;\n\n    public function __construct()\n    {\n        $this->setCreatedAt(new \\DateTime());\n    }\n\n    /**\n     * Get id\n     *\n     * @return integer\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Get value\n     *\n     * @return string\n     */\n    public function getValue()\n    {\n        return $this->value;\n    }\n\n    /**\n     * Set value\n     *\n     * @param  string $value\n     * @return string\n     */\n    public function setValue($value)\n    {\n        $this->value = $value;\n\n        return $this;\n    }\n\n    /**\n     * Set option\n     *\n     * @param  string $option\n     * @return string\n     */\n    public function setOption($option)\n    {\n        $this->option = $option;\n\n        return $this;\n    }\n\n    /**\n     * Set create date\n     *\n     * @param  datetime $created_at\n     * @return datetime\n     */\n    public function setCreatedAt(\\DateTime $created_at)\n    {\n        $this->created_at = $created_at;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of option.\n     *\n     * @return string\n     */\n    public function getOption()\n    {\n        return $this->option;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Entity/Topic.php",
    "content": "<?php\n\n/**\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\NewscoopBundle\\Entity;\n\nuse Doctrine\\Common\\Collections\\ArrayCollection;\nuse Gedmo\\Mapping\\Annotation as Gedmo;\nuse Doctrine\\ORM\\Mapping as ORM;\nuse Newscoop\\Entity\\Article;\nuse Newscoop\\View\\TopicView;\n\n/**\n * @Gedmo\\Tree(type=\"nested\")\n * @Gedmo\\TranslationEntity(class=\"Newscoop\\NewscoopBundle\\Entity\\TopicTranslation\")\n * @ORM\\Table(name=\"main_topics\")\n * @ORM\\Entity(repositoryClass=\"Newscoop\\NewscoopBundle\\Entity\\Repository\\TopicRepository\")\n */\nclass Topic\n{\n    /**\n     * @ORM\\Column(type=\"integer\")\n     * @ORM\\Id\n     * @ORM\\GeneratedValue\n     */\n    protected $id;\n\n    /**\n     * @Gedmo\\Translatable\n     * @ORM\\Column(length=64)\n     */\n    protected $title;\n\n    /**\n     * @Gedmo\\TreeLeft\n     * @ORM\\Column(type=\"integer\")\n     */\n    protected $lft;\n\n    /**\n     * @Gedmo\\TreeRight\n     * @ORM\\Column(type=\"integer\")\n     */\n    protected $rgt;\n\n    /**\n     * @Gedmo\\TreeParent\n     * @ORM\\ManyToOne(targetEntity=\"Topic\", inversedBy=\"children\")\n     * @ORM\\JoinColumn(name=\"parent_id\", referencedColumnName=\"id\", onDelete=\"SET NULL\")\n     */\n    protected $parent;\n\n    /**\n     * @ORM\\Column(type=\"integer\", name=\"parent_id\", nullable=true)\n     *\n     * @var int\n     */\n    protected $parentId;\n\n    /**\n     * @Gedmo\\TreeRoot\n     * @ORM\\Column(type=\"integer\", nullable=true)\n     */\n    protected $root;\n\n    /**\n     * @Gedmo\\TreeLevel\n     * @ORM\\Column(name=\"lvl\", type=\"integer\")\n     */\n    protected $level;\n\n    /**\n     * @ORM\\OneToMany(targetEntity=\"Topic\", mappedBy=\"parent\")\n     * @ORM\\OrderBy({\"lft\" = \"ASC\"})\n     */\n    protected $children;\n\n    /**\n     * @Gedmo\\Translatable\n     * @ORM\\Column(type=\"text\", nullable=true)\n     */\n    protected $description;\n\n    /**\n     * @Gedmo\\Timestampable(on=\"create\")\n     * @ORM\\Column(type=\"datetime\")\n     */\n    protected $created;\n\n    /**\n     * @Gedmo\\Timestampable(on=\"update\")\n     * @ORM\\Column(type=\"datetime\")\n     */\n    protected $updated;\n\n    /**\n     * @Gedmo\\Locale\n     * Used locale to override Translation listener`s locale\n     * this is not a mapped field of entity metadata, just a simple property\n     */\n    public $locale;\n\n    /**\n     * @ORM\\Column(type=\"integer\", nullable=true)\n     *\n     * @var int\n     */\n    protected $topicOrder;\n\n    /**\n     * @ORM\\OneToMany(\n     *   targetEntity=\"TopicTranslation\",\n     *   mappedBy=\"object\",\n     *   cascade={\"persist\", \"remove\"}\n     * )\n     */\n    protected $translations;\n\n    /**\n     * @ORM\\ManyToMany(targetEntity=\"Newscoop\\Entity\\Article\", mappedBy=\"topics\")\n     * @ORM\\JoinColumns({\n     *      @ORM\\JoinColumn(name=\"ArticleNr\", referencedColumnName=\"Number\"),\n     *      @ORM\\JoinColumn(name=\"LanguageId\", referencedColumnName=\"IdLanguage\")\n     *      })\n     *\n     * @var Newscoop\\Entity\\Article\n     */\n    protected $articles;\n\n    /**\n     * Link to topic articles resource.\n     *\n     * @var string\n     */\n    protected $articlesLink;\n\n    public function __construct()\n    {\n        $this->children = new ArrayCollection();\n        $this->translations = new ArrayCollection();\n        $this->created = new \\DateTime();\n        $this->updated = new \\DateTime();\n        $this->articles = new ArrayCollection();\n    }\n\n    /**\n     * Gets the value of id.\n     *\n     * @return mixed\n     */\n    public function getId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Gets the value of id.\n     *\n     * @return mixed\n     */\n    public function getTopicId()\n    {\n        return $this->id;\n    }\n\n    /**\n     * Sets the value of id.\n     *\n     * @param mixed $id the id\n     *\n     * @return self\n     */\n    public function setId($id)\n    {\n        $this->id = $id;\n\n        return $this;\n    }\n\n    /**\n     * Sets the value of id.\n     *\n     * @param mixed $id the id\n     *\n     * @return self\n     */\n    public function setTopicId($id)\n    {\n        $this->id = $id;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of title.\n     *\n     * @return mixed\n     */\n    public function getTitle()\n    {\n        return $this->title;\n    }\n\n    /**\n     * Sets the value of title.\n     *\n     * @param mixed $title the title\n     *\n     * @return self\n     */\n    public function setTitle($title)\n    {\n        $this->title = $title;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of title.\n     *\n     * @return mixed\n     */\n    public function getName()\n    {\n        return $this->title;\n    }\n\n    /**\n     * Sets the value of title.\n     *\n     * @param mixed $title the title\n     *\n     * @return self\n     */\n    public function setName($title)\n    {\n        $this->title = $title;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of lft.\n     *\n     * @return mixed\n     */\n    public function getLeft()\n    {\n        return $this->lft;\n    }\n\n    /**\n     * Sets the value of lft.\n     *\n     * @param mixed $lft the lft\n     *\n     * @return self\n     */\n    public function setLeft($lft)\n    {\n        $this->lft = $lft;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of rgt.\n     *\n     * @return mixed\n     */\n    public function getRight()\n    {\n        return $this->rgt;\n    }\n\n    /**\n     * Sets the value of rgt.\n     *\n     * @param mixed $rgt the rgt\n     *\n     * @return self\n     */\n    public function setRight($rgt)\n    {\n        $this->rgt = $rgt;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of parent.\n     *\n     * @return mixed\n     */\n    public function getParent()\n    {\n        return $this->parent;\n    }\n\n    /**\n     * Gets the value of parent id.\n     *\n     * @return mixed\n     */\n    public function getParentId()\n    {\n        return $this->parentId;\n    }\n\n    /**\n     * Gets the integer value of parent.\n     *\n     * @return int\n     */\n    public function getParentAsInteger()\n    {\n        if ($this->parent) {\n            return (int) $this->parent->getId();\n        }\n    }\n\n    /**\n     * Sets the value of parent.\n     *\n     * @param mixed $parent the parent\n     *\n     * @return self\n     */\n    public function setParent($parent = null)\n    {\n        $this->parent = $parent;\n\n        return $this;\n    }\n\n    /**\n     * Checkes if topic is root.\n     *\n     * @return bool\n     */\n    public function isRoot()\n    {\n        if ($this->root == $this->id) {\n            return true;\n        }\n\n        return false;\n    }\n\n    /**\n     * Gets the value of root.\n     *\n     * @return mixed\n     */\n    public function getRoot()\n    {\n        return $this->root;\n    }\n\n    /**\n     * Sets the value of root.\n     *\n     * @param mixed $root the root\n     *\n     * @return self\n     */\n    public function setRoot($root)\n    {\n        $this->root = $root;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of level.\n     *\n     * @return mixed\n     */\n    public function getLevel()\n    {\n        return $this->level;\n    }\n\n    /**\n     * Sets the value of level.\n     *\n     * @param mixed $level the level\n     *\n     * @return self\n     */\n    public function setLevel($level)\n    {\n        $this->level = $level;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of children.\n     *\n     * @return mixed\n     */\n    public function getChildren()\n    {\n        return $this->children;\n    }\n\n    /**\n     * Sets the value of children.\n     *\n     * @param mixed $children the children\n     *\n     * @return self\n     */\n    public function setChildren($children)\n    {\n        $this->children = $children;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of description.\n     *\n     * @return mixed\n     */\n    public function getDescription()\n    {\n        return $this->description;\n    }\n\n    /**\n     * Sets the value of description.\n     *\n     * @param mixed $description the description\n     *\n     * @return self\n     */\n    public function setDescription($description)\n    {\n        $this->description = strip_tags($description);\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of created.\n     *\n     * @return mixed\n     */\n    public function getCreated()\n    {\n        return $this->created;\n    }\n\n    /**\n     * Sets the value of created.\n     *\n     * @param mixed $created the created\n     *\n     * @return self\n     */\n    public function setCreated($created)\n    {\n        $this->created = $created;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of updated.\n     *\n     * @return mixed\n     */\n    public function getUpdated()\n    {\n        return $this->updated;\n    }\n\n    /**\n     * Sets the value of updated.\n     *\n     * @param mixed $updated the updated\n     *\n     * @return self\n     */\n    public function setUpdated($updated)\n    {\n        $this->updated = $updated;\n\n        return $this;\n    }\n\n    /**\n     * Gets the translations.\n     *\n     * @return mixed\n     */\n    public function getTranslations()\n    {\n        return $this->translations;\n    }\n\n    /**\n     * Adds the translation.\n     *\n     * @param mixed $translations the translations\n     *\n     * @return self\n     */\n    public function addTranslation(TopicTranslation $translation)\n    {\n        if (!$this->translations->contains($translation)) {\n            $this->translations[] = $translation;\n            $translation->setObject($this);\n        }\n    }\n\n    /**\n     * Checks if there is translation.\n     *\n     * @param mixed $locale the locale\n     *\n     * @return self\n     */\n    public function hasTranslation($locale)\n    {\n        return isset($this->translations[$locale]);\n    }\n\n    /**\n     * Gets the translation.\n     *\n     * @param mixed $locale the locale\n     *\n     * @return mixed\n     */\n    public function getTranslation($locale)\n    {\n        if ($this->hasTranslation($locale)) {\n            return $this->translations[$locale];\n        } else {\n            return;\n        }\n    }\n\n    /**\n     * Gets the Used locale to override Translation listener`s locale.\n     *\n     * @return mixed\n     */\n    public function getTranslatableLocale()\n    {\n        return $this->locale;\n    }\n\n    /**\n     * Sets the Used locale to override Translation listener`s locale.\n     *\n     * @param mixed $locale the locale\n     *\n     * @return self\n     */\n    public function setTranslatableLocale($locale)\n    {\n        $this->locale = $locale;\n\n        return $this;\n    }\n\n    /**\n     * Gets the value of topic order.\n     *\n     * @return int\n     */\n    public function getOrder()\n    {\n        return $this->topicOrder;\n    }\n\n    /**\n     * Sets the value of topic order.\n     *\n     * @param int topicOrder the topic order\n     *\n     * @return self\n     */\n    public function setOrder($topicOrder = null)\n    {\n        $this->topicOrder = $topicOrder;\n\n        return $this;\n    }\n\n    /**\n     * Adds Topic to Article.\n     *\n     * @param Article $article the Article to attach\n     *\n     * @return Topic\n     */\n    public function addArticleTopic(Article $article)\n    {\n        if (!$this->articles->contains($article)) {\n            $this->articles->add($article);\n            $article->addTopic($this);\n        }\n\n        return $this;\n    }\n\n    /**\n     * Removes Topic from Article.\n     *\n     * @param Article $article the Article to deattach topic\n     *\n     * @return Topic\n     */\n    public function removeArticleTopic(Article $article)\n    {\n        if (!$this->articles->contains($article)) {\n            $article->removeTopic($this);\n            $this->articles->removeElement($article);\n        }\n\n        return $this;\n    }\n\n    /**\n     * Returns topic's title when echo this object.\n     *\n     * @return string\n     */\n    public function __toString()\n    {\n        return $this->title;\n    }\n\n    /**\n     * Get view.\n     *\n     * @return Newscoop\\View\\TopicView\n     */\n    public function getView()\n    {\n        $view = new TopicView();\n        $view->defined = true;\n        $view->identifier = $this->id;\n        $view->name = $this->title;\n        $view->value = sprintf('%s:%s', $this->title, $this->locale);\n\n        return $view;\n    }\n\n    /**\n     * Gets object.\n     *\n     * @return Topic\n     */\n    public function getObject()\n    {\n        return clone $this;\n    }\n\n    /**\n     * Set link to topic articles resource.\n     *\n     * @param string $articlesLink Link to topic articles resource\n     */\n    public function setArticlesLink($articlesLink)\n    {\n        $this->articlesLink = $articlesLink;\n\n        return $this;\n    }\n\n    /**\n     * Get link to topic articles resource.\n     *\n     * @return string Link to topic articles resource\n     */\n    public function getArticlesLink()\n    {\n        return $this->articlesLink;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Entity/TopicTranslation.php",
    "content": "<?php\n\n/**\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\NewscoopBundle\\Entity;\n\nuse Doctrine\\ORM\\Mapping as ORM;\nuse Gedmo\\Translatable\\Entity\\MappedSuperclass\\AbstractPersonalTranslation;\n\n/**\n * @ORM\\Entity\n * @ORM\\Table(name=\"topic_translations\",\n *     uniqueConstraints={@ORM\\UniqueConstraint(name=\"lookup_unique_idx\", columns={\n *         \"locale\", \"object_id\", \"field\"\n *     })}\n * )\n */\nclass TopicTranslation extends AbstractPersonalTranslation\n{\n    /**\n     * Constructor.\n     *\n     * @param string $locale\n     * @param string $field\n     * @param string $value\n     */\n    public function __construct($locale, $field, $value, $isDefault = null)\n    {\n        $this->setLocale($locale);\n        $this->setField($field);\n        $this->setContent($value);\n        $this->setIsDefault($isDefault);\n    }\n\n    /**\n     * @ORM\\ManyToOne(targetEntity=\"Topic\", inversedBy=\"translations\", cascade={\"persist\"})\n     * @ORM\\JoinColumn(name=\"object_id\", referencedColumnName=\"id\", onDelete=\"CASCADE\")\n     */\n    protected $object;\n\n    /**\n     * @ORM\\Column(name=\"isDefault\", type=\"boolean\", nullable=true)\n     */\n    protected $isDefault;\n\n    /**\n     * Gets the value of isDefault.\n     *\n     * @return mixed\n     */\n    public function getIsDefault()\n    {\n        return $this->isDefault;\n    }\n\n    /**\n     * Sets the value of isDefault.\n     *\n     * @param mixed $isDefault the is default\n     *\n     * @return self\n     */\n    public function setIsDefault($isDefault)\n    {\n        $this->isDefault = $isDefault;\n\n        return $this;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Event/ConfigureMenuEvent.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Event;\n\nuse Knp\\Menu\\FactoryInterface;\nuse Knp\\Menu\\ItemInterface;\nuse Symfony\\Component\\EventDispatcher\\Event;\nuse Symfony\\Bundle\\FrameworkBundle\\Routing\\Router;\n\nclass ConfigureMenuEvent extends Event\n{\n    protected $factory;\n    protected $menu;\n    protected $router;\n\n    /**\n     * @param \\Knp\\Menu\\FactoryInterface $factory\n     * @param \\Knp\\Menu\\ItemInterface $menu\n     * @param \\Symfony\\Bundle\\FrameworkBundle\\Routing\\Router $router\n     */\n    public function __construct(FactoryInterface $factory, ItemInterface $menu, Router $router)\n    {\n        $this->factory = $factory;\n        $this->menu = $menu;\n        $this->router = $router;\n    }\n\n    /**\n     * @return \\Knp\\Menu\\FactoryInterface\n     */\n    public function getFactory()\n    {\n        return $this->factory;\n    }\n\n    /**\n     * @return \\Knp\\Menu\\ItemInterface\n     */\n    public function getMenu()\n    {\n        return $this->menu;\n    }\n\n    public function getRouter()\n    {\n        return $this->router;\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/EventListener/AccessDeniedExceptionListener.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\EventListener;\n\nuse Symfony\\Component\\HttpKernel\\Event\\GetResponseForExceptionEvent;\nuse Symfony\\Component\\HttpKernel\\Exception\\AccessDeniedHttpException;\nuse Symfony\\Component\\HttpFoundation\\JsonResponse;\n\nclass AccessDeniedExceptionListener\n{\n    private $container;\n\n    /**\n     * Construct\n     * @param Service Container\n     */\n    public function __construct($container)\n    {\n        $this->container = $container;\n    }\n\n    public function onKernelException(GetResponseForExceptionEvent $event)\n    {\n        $exception = $event->getException();\n\n        if ($exception instanceof AccessDeniedHttpException) {\n            $request = $event->getRequest();\n            $response = new JsonResponse(array('message' => $exception->getMessage()));\n\n            if ($request->getRequestFormat() === 'html') {\n                $response = $this->container->get('templating')->renderResponse('NewscoopNewscoopBundle:Exception:exception.html.twig', array(\n                    'message' => $exception->getMessage()\n                ));\n            }\n\n            $event->setResponse($response);\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/EventListener/ArticleListener.php",
    "content": "<?php\n/**\n * @package Newscoop\\Newscoop\n * @author Yorick Terweijden <yorick.terweijden@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\EventListener;\n\nuse Newscoop\\Services\\ArticleService;\nuse Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent;\n\n/**\n * Run publication resolver on request\n */\nclass ArticleListener\n{\n    /**\n     * Article service\n     * @var ArticleService\n     */\n    protected $articleService;\n\n    /**\n     * Construct ArticleListener object\n     * @param ArticleService $articleService Article service\n     */\n    public function __construct(ArticleService $articleService)\n    {\n        $this->articleService = $articleService;\n    }\n\n    public function onRequest(GetResponseEvent $event)\n    {\n        $request = $event->getRequest();\n        $pos = strpos($request->getRequestUri(), '/admin');\n        if ($pos === false) {\n            $this->articleService->articleResolver($request);\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/EventListener/CaptchaUsernamePasswordFormAuthenticationListener.php",
    "content": "<?php\n\n/*\n * This file is part of the Symfony package.\n *\n * (c) Fabien Potencier <fabien@symfony.com>\n *\n * For the full copyright and license information, please view the LICENSE\n * file that was distributed with this source code.\n */\n\nnamespace Newscoop\\NewscoopBundle\\EventListener;\n\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\Security\\Http\\Firewall\\UsernamePasswordFormAuthenticationListener;\nuse Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException;\nuse Symfony\\Component\\Security\\Core\\SecurityContextInterface;\n\n/**\n * UsernamePasswordFormAuthenticationListener is the default implementation of\n * an authentication via a simple form composed of a username and a password.\n *\n * @author Fabien Potencier <fabien@symfony.com>\n */\nclass CaptchaUsernamePasswordFormAuthenticationListener extends UsernamePasswordFormAuthenticationListener\n{    \n    /**\n     *\n     * TODO: Add Recaptcha, but first:\n     * * add recaptcha config to newscoop preferences not in recaptcha plugin config\n     * * remove old recaptcha libraries\n     * * reenable failed logins counter here Newscoop\\NewscoopBundle\\Security\\Http\\Authentication\\AuthenticationFailedHandler\n     * * clean code\n     * \n     * {@inheritdoc}\n     */\n    protected function attemptAuthentication(Request $request)\n    {\n        if ($request->request->has('captcha_code', $request->query->has('captcha_code')) && \\LoginAttempts::MaxLoginAttemptsExceeded()) {\n            if (false /* add recaptcha validation here */) {\n                throw new AuthenticationException($translator->trans(\"CAPTCHA code is not valid.  Please try again.\", array(), 'home'));\n            }\n        }\n\n        return parent::attemptAuthentication($request);\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/EventListener/IssueListener.php",
    "content": "<?php\n/**\n * @package Newscoop\\Newscoop\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\EventListener;\n\nuse Newscoop\\Services\\IssueService;\nuse Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent;\n\n/**\n * Issue listener to identify current issue\n */\nclass IssueListener\n{\n    /**\n     * Issue service\n     * @var IssueService\n     */\n    protected $issueService;\n\n    /**\n     * Contruct\n     *\n     * @param IssueService $issueService Issue service\n     */\n    public function __construct(IssueService $issueService)\n    {\n        $this->issueService = $issueService;\n    }\n\n    /**\n     * Resolve issue on request\n     *\n     * @param GetResponseEvent $event GetResponseEvent event\n     *\n     * @return void\n     */\n    public function onRequest(GetResponseEvent $event)\n    {\n        $onAdminInterface = strpos($event->getRequest()->getRequestUri(), '/admin');\n        $onApi = strpos($event->getRequest()->get('_route'), 'newscoop_gimme');\n        if ($onAdminInterface === false && $onApi === false &&\n            $event->getRequest()->get('_route') != 'newscoop_get_img') {\n            $this->issueService->issueResolver($event->getRequest());\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/EventListener/ListObjectsListener.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\EventListener;\n\nuse Newscoop\\EventDispatcher\\Events\\CollectObjectsDataEvent;\n\n/**\n * Register new lists in $gimme\n */\nclass ListObjectsListener\n{\n    /**\n     * Register plugin list objects in Newscoop\n     *\n     * @param CollectObjectsDataEvent $event\n     */\n    public function registerObjects(CollectObjectsDataEvent $event)\n    {\n        $event->registerListObject('newscoop\\templatelist\\users', array(\n            'class' => 'Newscoop\\TemplateList\\Users',\n            'list' => 'users',\n            'url_id' => 'uid',\n        ));\n\n        $event->registerListObject('newscoop\\templatelist\\slideshows', array(\n            'class' => 'Newscoop\\TemplateList\\Slideshows',\n            'list' => 'slideshows',\n            'url_id' => 'sliid',\n        ));\n\n        $event->registerListObject('newscoop\\templatelist\\slideshowitems', array(\n            'class' => 'Newscoop\\TemplateList\\SlideshowItems',\n            'list' => 'slideshow_items',\n            'url_id' => 'slit',\n        ));\n\n        $event->registerObjectTypes('slideshow', array(\n            'class' => '\\Newscoop\\TemplateList\\Meta\\SlideshowsMeta'\n        ));\n\n        $event->registerObjectTypes('slideshow_item', array(\n            'class' => '\\Newscoop\\TemplateList\\Meta\\SlideshowItemMeta'\n        ));\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/EventListener/LocaleListener.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\EventListener;\n\nuse Symfony\\Component\\HttpKernel\\Event\\FilterResponseEvent;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Symfony\\Component\\HttpKernel\\HttpKernelInterface;\nuse Symfony\\Component\\HttpFoundation\\Cookie;\nuse Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent;\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Services\\CacheService;\n\n/**\n * Save locale cookie.\n */\nclass LocaleListener\n{\n    protected $cacheService;\n\n    protected $em;\n\n    protected $translator;\n\n    public function __construct(CacheService $cacheService, EntityManager $em, $translator)\n    {\n        $this->cacheService = $cacheService;\n        $this->em = $em;\n        $this->translator = $translator;\n    }\n\n    public function onResponse(FilterResponseEvent $event)\n    {\n        if (HttpKernelInterface::MASTER_REQUEST !== $event->getRequestType()) {\n            return;\n        }\n\n        $request = $event->getRequest();\n        if ($request->request->has('login_language')) {\n            $response = $event->getResponse();\n            $response->headers->setCookie(new Cookie('TOL_Language', $request->request->get('login_language'), 2147483647, '/admin'));\n            $event->setResponse($response);\n        }\n    }\n\n    public function onRequest(GetResponseEvent $event)\n    {\n        $request = $event->getRequest();\n        $isAdmin = (strpos($request->server->get('REQUEST_URI'), '/admin') !== false);\n        $cookies = $request->cookies;\n        $session = $request->getSession();\n        $languageCode = null;\n\n        // Backend cookie\n        if ($isAdmin) {\n            if ($cookies->has('TOL_Language')) {\n                $languageCode = $cookies->get(\"TOL_Language\");\n            }\n\n        } else {\n            // Session language\n            if ($session && $session->has('languageCode')) {\n                $languageCode = $session->get('languageCode');\n            }\n\n            // Allow for overriding locale with get parameter\n            if ($request->query->has('__set_lang')) {\n\n                try {\n                    $language = $this->em->getRepository('Newscoop\\Entity\\Language')\n                        ->findByRFC3066bis($request->query->get('__set_lang'), true);\n\n                    if ($language) {\n                        $languageCode = $language->getCode();\n                    }\n                } catch (\\Exception $e) {}\n            }\n\n            // Try to get locale from issue\n            $issueMetadata = $request->attributes->get('_newscoop_issue_metadata');\n            $issueLanguageCode = $issueMetadata['code_default_language'];\n            if ($issueLanguageCode) {\n                $languageCode = $issueLanguageCode;\n            }\n\n            // Determine language from URL\n            $locale = $this->extractLocaleFromUri($request->getRequestUri());\n            if ($locale) {\n                $language = $this->em->getRepository('Newscoop\\Entity\\Language')\n                        ->findOneByCode($locale);\n                if ($language) {\n                    $languageCode = $language->getCode();\n                }\n            }\n\n            // Last fallback is to use default publication language\n            if (is_null($languageCode)) {\n                $publicationMetadata = $request->attributes->get('_newscoop_publication_metadata');\n                $languageCode = $publicationMetadata['publication']['code_default_language'];\n            }\n\n            if ($session) {\n                $session->set('languageCode', $languageCode);\n            }\n        }\n\n        if (!is_null($languageCode)) {\n            $request->setLocale($languageCode);\n            $this->translator->setLocale($languageCode);\n        }\n    }\n\n    private function extractLocaleFromUri($requestUri)\n    {\n        if ($requestUri !== \"/\") {\n            $requestUri = str_replace(\"?\", \"\", $requestUri);\n            $extractedUri = array_filter(explode(\"/\", $requestUri));\n            if (isset($extractedUri[1])) {\n                return $extractedUri[1];\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/EventListener/NoCacheListener.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\NewscoopBundle\\EventListener;\n\nuse Symfony\\Component\\HttpKernel\\Event\\FilterResponseEvent;\nuse Symfony\\Component\\HttpKernel\\HttpKernelInterface;\nuse Symfony\\Component\\HttpFoundation\\Cookie;\n\n/**\n * NoCache cookie listener.\n */\nclass NoCacheListener\n{\n    public function onResponse(FilterResponseEvent $event)\n    {\n        if (HttpKernelInterface::MASTER_REQUEST !== $event->getRequestType()) {\n            return;\n        }\n\n        $request = $event->getRequest();\n        $session = $request->getSession();\n        if ($session->has('NO_CACHE')) {\n            if ($session->get('NO_CACHE') == true) {\n                $response = $event->getResponse();\n                $response->headers->setCookie(new Cookie('NO_CACHE', 1, 0, '/'));\n                $event->setResponse($response);\n            } elseif ($session->get('NO_CACHE') == false) {\n                $response = $event->getResponse();\n                $response->headers->clearCookie('NO_CACHE', '/');\n                $event->setResponse($response);\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/EventListener/OldPluginsTranslationListener.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\NewscoopBundle\\EventListener;\n\nuse Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent;\nuse Symfony\\Component\\Finder\\Finder;\nuse Symfony\\Component\\Translation\\TranslatorInterface as Translator;\nuse Symfony\\Component\\Translation\\Loader\\YamlFileLoader;\n\n/**\n * Add old plugins translations\n */\nclass OldPluginsTranslationListener\n{\n    protected $translator;\n\n    protected $cacheService;\n\n    protected $pluginsService;\n\n    /**\n     * @param Translator $translator\n     */\n    public function __construct(Translator $translator, $cacheService, $pluginsService)\n    {\n        $this->translator = $translator;\n        $this->cacheService = $cacheService;\n        $this->pluginsService = $pluginsService;\n    }\n\n    public function onRequest(GetResponseEvent $event)\n    {\n        $request = $event->getRequest();\n        $route = $request->attributes->get('_route');\n        if (strpos($route, 'newscoop_gimme_') !== false || $route == 'newscoop_get_img') {\n            return;\n        }\n\n        $locale = $event->getRequest()->getLocale();\n        $cacheKey = $this->cacheService->getCacheKey('oldPlugins_translations_'.count($this->pluginsService->getEnabledPlugins()));\n        if ($this->cacheService->contains($cacheKey)) {\n            $files = $this->cacheService->fetch($cacheKey);\n        } else {\n            $finder = new Finder();\n            $extension = $locale.'.yml';\n            $files = array();\n            try {\n                $finder->files()->in(__DIR__.'/../../../../plugins/*/admin-files/translations');\n                $finder->files()->name('*.'.$locale.'.yml');\n            } catch (\\InvalidArgumentException $e) {\n                return;\n            }\n\n            foreach ($finder as $file) {\n                $domain = substr($file->getFileName(), 0, -1 * strlen($extension) - 1);\n                $files[$domain] = $file->getRealpath();\n            }\n\n            $this->cacheService->save($cacheKey, $files);\n        }\n\n        try {\n            if (count($files) > 0) {\n                $this->translator->addLoader('yaml', new YamlFileLoader());\n                foreach ($files as $key => $file) {\n                    $this->translator->addResource('yaml', $file, $locale, $key);\n                }\n            }\n        } catch (\\InvalidArgumentException $exception) {\n            throw new \\Exception('Plugins directory doesn\\'t exist!');\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/EventListener/PublicationListener.php",
    "content": "<?php\n/**\n * @package Newscoop\\Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\EventListener;\n\nuse Newscoop\\Services\\PublicationService;\nuse Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent;\n\n/**\n * Run publication resolver on request\n */\nclass PublicationListener\n{\n    /**\n     * Publication service\n     * @var PublicationService\n     */\n    protected $publicationService;\n\n    /**\n     * Contruct PublicationListener object\n     * @param PublicationService $publicationService Publication service\n     */\n    public function __construct(PublicationService $publicationService)\n    {\n        $this->publicationService = $publicationService;\n    }\n\n    public function onRequest(GetResponseEvent $event)\n    {\n        if ($event->getRequest()->get('_route') != 'newscoop_get_img') {\n            $this->publicationService->publicationResolver($event->getRequest());\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/EventListener/RouteListener.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\NewscoopBundle\\EventListener;\n\nuse Symfony\\Component\\HttpKernel\\Event\\FilterResponseEvent;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Symfony\\Component\\HttpKernel\\HttpKernelInterface;\nuse Symfony\\Component\\HttpFoundation\\Cookie;\nuse Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent;\n\n/**\n * Add route and route params to listPaginator.\n */\nclass RouteListener\n{\n    protected $listPaginatorService;\n\n    /**\n     * @param \\Newscoop\\Services\\ListPaginatorService $listPaginatorService\n     */\n    public function __construct($listPaginatorService)\n    {\n        $this->listPaginatorService = $listPaginatorService;\n    }\n\n    /**\n     * Fill listPaginatorService with information about route and parameters from request\n     *\n     * @param GetResponseEvent $event\n     */\n    public function onRequest(GetResponseEvent $event)\n    {\n        $request = $event->getRequest();\n\n        $params = array_merge($request->query->all(), $request->attributes->all());\n        foreach ($params as $key => $param) {\n            if (substr($key, 0, 1) == '_') {\n                unset($params[$key]);\n            }\n        }\n\n        $this->listPaginatorService->setRouteParams($params);\n        $this->listPaginatorService->setRoute($request->attributes->get('_route'));\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/EventListener/UserIpListener.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\EventListener;\n\nuse Newscoop\\Services\\UserService;\nuse Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent;\nuse Symfony\\Component\\HttpKernel\\HttpKernel;\n\n/**\n * Run user ip resolver on request\n */\nclass UserIpListener\n{\n    /**\n     * User service\n     *\n     * @var UserService\n     */\n    protected $userService;\n\n    /**\n     * Contruct UserIpListener object\n     *\n     * @param UserService $userService User service\n     */\n    public function __construct(UserService $userService)\n    {\n        $this->userService = $userService;\n    }\n\n    public function onRequest(GetResponseEvent $event)\n    {\n        if (HttpKernel::MASTER_REQUEST != $event->getRequestType()) {\n            // don't do anything if it's not the master request\n            return;\n        }\n\n        $this->userService->userIpResolver($event->getRequest());\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Form/Type/ArticleImageType.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\n\nclass ArticleImageType extends AbstractType\n{\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $builder->add('number', 'number', array(\n            'label' => 'articles.images.edit.form.number',\n            'trim' => true,\n            'error_bubbling' => true,\n        ));\n\n        if ($options['rich_text_caption'] == 'Y') {\n            $builder->add('caption', 'textarea', array(\n                'label' => 'articles.images.edit.form.caption',\n                'error_bubbling' => true,\n            ));\n        } else {\n            $builder->add('caption', 'text', array(\n                'label' => 'articles.images.edit.form.caption',\n                'error_bubbling' => true,\n            ));\n        }\n\n        $builder->add('language', 'hidden', array(\n            'error_bubbling' => true\n        ));\n\n        $builder->add('status', 'choice', array(\n            'choices'   => array(\n                'Y' => 'articles.images.edit.form.status_approved',\n                'N' => 'articles.images.edit.form.status_unapproved'\n            ),\n            'error_bubbling' => true,\n            'multiple' => false,\n            'expanded' => false,\n            'required' => true,\n            'label' => 'articles.images.edit.form.status',\n        ));\n\n        if ($options['rich_text_caption'] == 'Y') {\n            $builder->add('description', 'textarea', array(\n                'label' => 'articles.images.edit.form.description',\n                'error_bubbling' => true,\n            ));\n        } else {\n            $builder->add('description', 'text', array(\n                'label' => 'articles.images.edit.form.description',\n                'error_bubbling' => true,\n            ));\n        }\n\n        $builder->add('photographer', 'text', array(\n            'label' => 'articles.images.edit.form.photographer',\n            'error_bubbling' => true,\n        ));\n\n        $builder->add('photographer_url', 'text', array(\n            'label' => 'articles.images.edit.form.photographer_url',\n            'error_bubbling' => true,\n        ));\n\n        $builder->add('place', 'text', array(\n            'label' => 'articles.images.edit.form.place',\n            'error_bubbling' => true,\n        ));\n\n        $builder->add('date', 'text', array(\n            'label' => 'articles.images.edit.form.date',\n            'error_bubbling' => true,\n            'attr' => array(\n                'placeholder' => date('Y-m-d')\n            )\n        ));\n    }\n\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {\n        $resolver->setDefaults(array(\n            'translation_domain' => 'articles',\n            'rich_text_caption' => 'N',\n        ));\n    }\n\n    public function getName()\n    {\n        return 'article_image';\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Form/Type/CommentSearchType.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\n\nclass CommentSearchType extends AbstractType\n{\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $builder->add('search', 'search', array(\n            'label' => 'comments.label.search',\n            'trim' => true,\n            'required'  => false,\n        ));\n    }\n\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {\n        $resolver->setDefaults(array(\n            'translation_domain' => 'new_comments',\n        ));\n    }\n\n    public function getName()\n    {\n        return 'searchForm';\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Form/Type/CommentsFilterType.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\n\nclass CommentsFilterType extends AbstractType\n{\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $builder->add('pending', 'checkbox', array(\n            'label' => 'comments.label.new',\n            'required'  => false,\n        ))\n        ->add('approved', 'checkbox', array(\n            'label' => 'comments.label.approved',\n            'required'  => false,\n        ))\n        ->add('hidden', 'checkbox', array(\n            'label' => 'comments.label.hidden',\n            'required'  => false,\n        ))\n        ->add('recommended', 'checkbox', array(\n            'label' => 'comments.label.recommended',\n            'required'  => false,\n        ))\n        ->add('unrecommended', 'checkbox', array(\n            'label' => 'comments.label.unrecommended',\n            'required'  => false,\n        ))\n        ->add('filterButton', 'submit', array(\n            'label' => 'comments.btn.filter'\n        ));\n    }\n\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {\n        $resolver->setDefaults(array(\n            'translation_domain' => 'new_comments',\n            'csrf_protection' => false\n        ));\n    }\n\n    public function getName()\n    {\n        return 'filterForm';\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Form/Type/PasswordCheckType.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\n\nclass PasswordCheckType extends AbstractType\n{\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $builder->add('password', 'password', array(\n            'required' => true,\n        ));\n    }\n\n    public function getName()\n    {\n        return 'password_check_recovery_form';\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Form/Type/PasswordRecoveryType.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\n\nclass PasswordRecoveryType extends AbstractType\n{\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $builder->add('email', 'email', array(\n            'required' => true\n        ));\n    }\n\n    public function getName()\n    {\n        return 'password_recovery_form';\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Form/Type/PreferencesType.php",
    "content": "<?php\n\n/**\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\nuse Symfony\\Component\\Validator\\Constraints as Assert;\n\nclass PreferencesType extends AbstractType\n{\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $timeZones = array();\n        $timezoneIdentifiers = timezone_identifiers_list();\n        array_walk($timezoneIdentifiers, function ($timeZone) use (&$timeZones) {\n            $timeZoneGroup = (strpos($timeZone, '/') !== false) ? substr($timeZone, 0, strpos($timeZone, '/')) : $timeZone;\n            $value = (strpos($timeZone, '/') !== false) ? substr($timeZone, strpos($timeZone, '/') + 1) : $timeZone;\n            $value = str_replace('_', ' ', $value);\n            $value = str_replace('/', ' - ', $value);\n            $timeZones[$timeZoneGroup][$timeZone] = $value;\n        });\n\n        $availableCacheEngines = $options['cacheService']->getAvailableCacheEngines();\n        $availableTemplateCacheHandlers = \\CampTemplateCache::availableHandlers();\n        $cacheEngines = array();\n        $cacheTemplate = array();\n        foreach ($availableCacheEngines as $cacheEngineName => $engineValue) {\n            $cacheEngines[$engineValue] = $cacheEngineName;\n        }\n\n        foreach ($availableTemplateCacheHandlers as $handler => $value) {\n            $cacheTemplate[$handler] = $handler;\n        }\n\n        $cacheLifetime = array();\n        foreach (array(0 => 'newscoop.preferences.label.disabled',\n                       30 => '30 Seconds',\n                       60 => '1 Minute',\n                       300 => '5 Minutes',\n                       900 => '15 Minutes',\n                       1800 => '30 Minutes',\n                       3600 => '1 Hour',\n                       3600 * 24 => '1 Day',\n                       3600 * 24 * 2 => '2 Days',\n                       3600 * 24 * 3 => '3 Days',\n                       3600 * 24 * 4 => '4 Days',\n                       3600 * 24 * 5 => '5 Days',\n                       3600 * 24 * 6 => '6 Days',\n                       3600 * 24 * 7 => '1 Week',\n                       3600 * 24 * 14 => '2 Weeks',\n                       3600 * 24 * 21 => '3 Weeks',\n                       3600 * 24 * 31 => '1 Month',\n                       3600 * 24 * 61 => '2 Months',\n                       3600 * 24 * 91 => '3 Months',\n                       3600 * 24 * 183 => '6 Months',\n                       3600 * 24 * 365 => '1 Year',\n                       -1 => 'Infinite', ) as $k => $v) {\n            $cacheLifetime[$k] = $v;\n        }\n\n        $language_codes_639_1 = \\Language::Get6391List();\n\n        asort($language_codes_639_1);\n        $languages = array();\n\n        foreach ($language_codes_639_1 as $geo_lang_code => $geo_lang_name) {\n            $languages[$geo_lang_code] = $geo_lang_name;\n        }\n\n        $builder\n        ->add('siteonline', 'choice', array(\n            'choices' => array(\n                'Y' => 'newscoop.preferences.label.yesoption',\n                'N' => 'newscoop.preferences.label.nooption',\n            ),\n            'multiple' => false,\n            'expanded' => true,\n            'constraints' => array(\n                new Assert\\NotBlank(),\n            ),\n        ))\n        ->add('title', null, array(\n            'attr' => array('size' => '64'),\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'string')),\n                new Assert\\Length(array(\n                    'max' => 100,\n                )),\n            ),\n        ))\n        ->add('meta_keywords', null, array(\n            'attr' => array('size' => '64'),\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'string')),\n                new Assert\\Length(array(\n                    'max' => 100,\n                )),\n            ),\n        ))\n        ->add('meta_description', null, array(\n            'attr' => array('size' => '64'),\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'string')),\n                new Assert\\Length(array(\n                    'max' => 100,\n                )),\n            ),\n        ))\n        ->add('timezone', 'choice', array(\n            'choices' => $timeZones,\n            'empty_value' => 'newscoop.preferences.label.disabled',\n            'required' => false,\n        ))\n        ->add('cache_engine', 'choice', array(\n            'choices' => $cacheEngines,\n            'empty_value' => 'Array',\n            'required' => false,\n        ))\n        ->add('cache_engine_host', 'text')\n        ->add('cache_engine_port', 'text')\n        ->add('cache_template', 'choice', array(\n            'choices' => $cacheTemplate,\n            'empty_value' => 'newscoop.preferences.label.disabled',\n            'required' => false,\n        ))\n        ->add('cache_image', 'choice', array(\n            'choices' => $cacheLifetime,\n            'constraints' => array(\n                new Assert\\NotBlank(),\n            ),\n        ))\n        ->add('allow_recovery', 'choice', array(\n            'choices' => array(\n                'Y' => 'newscoop.preferences.label.yesoption',\n                'N' => 'newscoop.preferences.label.nooption',\n            ),\n            'multiple' => false,\n            'expanded' => true,\n            'constraints' => array(\n                new Assert\\NotBlank(),\n            ),\n        ))\n        ->add('secret_key', null, array(\n            'attr' => array('size' => '64'),\n            'constraints' => array(\n                new Assert\\Length(array(\n                    'max' => 32,\n                )),\n            ),\n        ))\n        ->add('session_lifetime', 'integer', array(\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'integer')),\n                new Assert\\Range(array(\n                    'min' => 0,\n                    'max' => 86400,\n                )),\n            ),\n        ))\n        ->add('separator', null, array(\n            'attr' => array('size' => '5'),\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'string')),\n                new Assert\\Length(array(\n                    'max' => 2,\n                )),\n            ),\n        ))\n        ->add('captcha', 'integer', array(\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'integer')),\n                new Assert\\Range(array(\n                    'min' => 0,\n                    'max' => 99,\n                )),\n            ),\n        ))\n        ->add('max_upload_size', null, array(\n            'attr' => array('size' => '5'),\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'string')),\n                new Assert\\Length(array(\n                    'max' => 12,\n                )),\n            ),\n        ))\n        ->add('automatic_collection', 'choice', array(\n            'choices' => array(\n                'Y' => 'newscoop.preferences.label.yesoption',\n                'N' => 'newscoop.preferences.label.nooption',\n            ),\n            'multiple' => false,\n            'expanded' => true,\n            'constraints' => array(\n                new Assert\\NotBlank(),\n            ),\n        ))\n        ->add('smtp_host', null, array(\n            'attr' => array('size' => 64),\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'string')),\n                new Assert\\Length(array(\n                    'max' => 100,\n                )),\n            ),\n        ))\n        ->add('smtp_port', 'integer', array(\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'integer')),\n                new Assert\\Range(array(\n                    'min' => 1,\n                    'max' => 999999,\n                )),\n            ),\n        ))\n        ->add('email_from', 'email', array(\n            'attr' => array('size' => 64),\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Email(),\n                new Assert\\Type(array('type' => 'string')),\n                new Assert\\Length(array(\n                    'max' => 100,\n                )),\n            ),\n        ))\n        ->add('image_ratio', 'integer', array(\n            'attr' => array('max' => 100, 'min' => 1),\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'integer')),\n                new Assert\\Range(array(\n                    'min' => 1,\n                    'max' => 100,\n                )),\n            ),\n        ))\n        ->add('image_width', 'integer', array(\n            'constraints' => array(\n                new Assert\\Range(array(\n                    'min' => 0,\n                    'max' => 999999,\n                )),\n            ),\n        ))\n        ->add('image_height', 'integer', array(\n            'constraints' => array(\n                new Assert\\Range(array(\n                    'min' => 0,\n                    'max' => 999999,\n                )),\n            ),\n        ))\n        ->add('zoom', 'choice', array(\n            'choices' => array(\n                'Y' => 'newscoop.preferences.label.yesoption',\n                'N' => 'newscoop.preferences.label.nooption',\n            ),\n            'multiple' => false,\n            'expanded' => true,\n            'constraints' => array(\n                new Assert\\NotBlank(),\n            ),\n        ))\n        ->add('mediaRichTextCaptions', 'choice', array(\n            'choices' => array(\n                'Y' => 'newscoop.preferences.label.yesoption',\n                'N' => 'newscoop.preferences.label.nooption',\n            ),\n            'multiple' => false,\n            'expanded' => true,\n            'constraints' => array(\n                new Assert\\NotBlank(),\n            ),\n        ))\n         ->add('mediaCaptionLength', 'integer', array(\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'integer')),\n                new Assert\\Range(array(\n                    'min' => 0,\n                    'max' => 999999,\n                )),\n            ),\n        ))\n        ->add('use_replication', 'choice', array(\n            'choices' => array(\n                'Y' => 'newscoop.preferences.label.yesoption',\n                'N' => 'newscoop.preferences.label.nooption',\n            ),\n            'multiple' => false,\n            'expanded' => true,\n            'constraints' => array(\n                new Assert\\NotBlank(),\n            ),\n        ))\n        ->add('use_replication_host', null, array(\n            'attr' => array('size' => 30),\n            'constraints' => array(\n                new Assert\\Length(array(\n                    'max' => 60,\n                )),\n            ),\n        ))\n        ->add('use_replication_user', null, array(\n            'attr' => array('size' => 30),\n            'constraints' => array(\n                new Assert\\Length(array(\n                    'max' => 20,\n                )),\n            ),\n        ))\n        ->add('use_replication_password', null, array(\n            'attr' => array('size' => 30),\n            'constraints' => array(\n                new Assert\\Length(array(\n                    'max' => 20,\n                )),\n            ),\n        ))\n        ->add('use_replication_port', 'integer', array(\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'integer')),\n                new Assert\\Range(array(\n                    'min' => 0,\n                    'max' => 999999,\n                )),\n            ),\n        ))\n        ->add('template_filter', 'text', array(\n            'attr' => array('size' => 30),\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'string')),\n                new Assert\\Length(array(\n                    'max' => 50,\n                )),\n            ),\n        ))\n        ->add('mysql_client_command_path', 'text', array(\n            'attr' => array('size' => 40),\n            'constraints' => array(\n                new Assert\\Length(array(\n                    'max' => 200,\n                )),\n            ),\n        ))\n        ->add('center_latitude_default', 'number', array(\n            'attr' => array('size' => 10),\n            'precision' => 6,\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'float')),\n            ),\n        ))\n        ->add('center_longitude_default', 'number', array(\n            'attr' => array('size' => 10),\n            'precision' => 6,\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'float')),\n            ),\n        ))\n        ->add('map_display_resolution_default', 'integer', array(\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'integer')),\n                new Assert\\Range(array(\n                    'min' => 0,\n                    'max' => 99,\n                )),\n            ),\n        ))\n        ->add('map_view_width_default', 'integer', array(\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'integer')),\n                new Assert\\Range(array(\n                    'min' => 0,\n                    'max' => 999,\n                )),\n            ),\n        ))\n        ->add('map_view_height_default', 'integer', array(\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'integer')),\n                new Assert\\Range(array(\n                    'min' => 0,\n                    'max' => 999,\n                )),\n            ),\n        ))\n        ->add('map_auto_cSS_file', null, array(\n            'attr' => array('size' => 50),\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'string')),\n                new Assert\\Length(array(\n                    'max' => 80,\n                )),\n            ),\n        ))\n        ->add('map_auto_focus_default', 'checkbox')\n        ->add('map_auto_focus_max_zoom', 'integer', array(\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'integer')),\n                new Assert\\Range(array(\n                    'min' => 0,\n                    'max' => 18,\n                )),\n            ),\n        ))\n        ->add('map_auto_focus_border', 'integer', array(\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'integer')),\n                new Assert\\Range(array(\n                    'min' => -99,\n                    'max' => 999,\n                )),\n            ),\n        ))\n        ->add('map_provider_available_google_v3', 'checkbox')\n        ->add('map_provider_available_map_quest', 'checkbox')\n        ->add('map_provider_available_oSM', 'checkbox')\n        ->add('map_provider_default', 'choice', array(\n            'choices' => array(\n                'GoogleV3' => 'Google Maps',\n                'MapQuest' => 'MapQuest Open',\n                'OSM' => 'OpenStreetMap',\n            ),\n            'constraints' => array(\n                new Assert\\NotBlank(),\n            ),\n        ))\n        ->add('geo_search_local_geonames', 'checkbox', array(\n            'required' => false,\n        ))\n        ->add('geo_search_mapquest_nominatim', 'checkbox', array(\n            'required' => false,\n        ))\n        ->add('geo_search_preferred_language', 'choice', array(\n            'choices' => $languages,\n            'constraints' => array(\n                new Assert\\NotBlank(),\n            ),\n        ))\n        ->add('map_marker_directory', null, array(\n            'attr' => array('size' => 50),\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'string')),\n                new Assert\\Length(array(\n                    'max' => 80,\n                )),\n            ),\n        ))\n        ->add('map_marker_source_default', null, array())\n        ->add('map_popup_width_min', 'integer', array(\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'integer')),\n                new Assert\\Range(array(\n                    'min' => 0,\n                    'max' => 999,\n                )),\n            ),\n        ))\n        ->add('map_popup_height_min', 'integer', array(\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'integer')),\n                new Assert\\Range(array(\n                    'min' => 0,\n                    'max' => 999,\n                )),\n            ),\n        ))\n        ->add('map_video_width_you_tube', 'integer', array(\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'integer')),\n                new Assert\\Range(array(\n                    'min' => 0,\n                    'max' => 999,\n                )),\n            ),\n        ))\n        ->add('map_video_height_you_tube', 'integer', array(\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'integer')),\n                new Assert\\Range(array(\n                    'min' => 0,\n                    'max' => 999,\n                )),\n            ),\n        ))\n        ->add('map_video_width_vimeo', 'integer', array(\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'integer')),\n                new Assert\\Range(array(\n                    'min' => 0,\n                    'max' => 999,\n                )),\n            ),\n        ))\n        ->add('map_video_height_vimeo', 'integer', array(\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'integer')),\n                new Assert\\Range(array(\n                    'min' => 0,\n                    'max' => 999,\n                )),\n            ),\n        ))\n        ->add('map_video_width_flash', 'integer', array(\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'integer')),\n                new Assert\\Range(array(\n                    'min' => 0,\n                    'max' => 999,\n                )),\n            ),\n        ))\n        ->add('map_video_height_flash', 'integer', array(\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'integer')),\n                new Assert\\Range(array(\n                    'min' => 0,\n                    'max' => 999,\n                )),\n            ),\n        ))\n        ->add('geo_flash_server', null, array(\n            'attr' => array('size' => 40),\n            'constraints' => array(\n                new Assert\\Length(array(\n                    'max' => 80,\n                )),\n            ),\n        ))\n        ->add('geo_flash_directory', null, array(\n            'attr' => array('size' => 40),\n            'constraints' => array(\n                new Assert\\Length(array(\n                    'max' => 200,\n                )),\n            ),\n        ))\n        ->add('facebook_appid', null, array(\n            'attr' => array('size' => 40),\n            'constraints' => array(\n                new Assert\\Length(array(\n                    'max' => 200,\n                )),\n            ),\n        ))\n        ->add('facebook_appsecret', null, array(\n            'attr' => array('size' => 40),\n            'constraints' => array(\n                new Assert\\Length(array(\n                    'max' => 200,\n                )),\n            ),\n        ))\n        ->add('recaptchaPublicKey', null, array(\n            'attr' => array('size' => 40),\n            'constraints' => array(\n                new Assert\\Length(array(\n                    'max' => 200,\n                )),\n            ),\n        ))\n        ->add('recaptchaPrivateKey', null, array(\n            'attr' => array('size' => 40),\n            'constraints' => array(\n                new Assert\\Length(array(\n                    'max' => 200,\n                )),\n            ),\n        ))\n        ->add('recaptchaSecure', 'choice', array(\n            'choices' => array(\n                'Y' => 'newscoop.preferences.label.yesoption',\n                'N' => 'newscoop.preferences.label.nooption',\n            ),\n            'data' => 'N',\n            'multiple' => false,\n            'expanded' => true,\n            'constraints' => array(\n                new Assert\\NotBlank(),\n            ),\n        ))\n        ->add('userGarbageActive', 'choice', array(\n            'choices' => array(\n                'Y' => 'newscoop.preferences.label.yesoption',\n                'N' => 'newscoop.preferences.label.nooption',\n            ),\n            'multiple' => false,\n            'expanded' => true,\n            'constraints' => array(\n                new Assert\\NotBlank(),\n            ),\n        ))\n        ->add('userGarbageDays', 'integer', array(\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Type(array('type' => 'integer')),\n                new Assert\\Range(array(\n                    'min' => 1,\n                    'max' => 999,\n                )),\n            ),\n        ))\n        ->add('smartyUseProtocol', 'choice', array(\n            'choices' => array(\n                'Y' => 'newscoop.preferences.label.yesoption',\n                'N' => 'newscoop.preferences.label.nooption',\n            ),\n            'multiple' => false,\n            'expanded' => true,\n            'constraints' => array(\n                new Assert\\NotBlank(),\n            ),\n        ))\n        ->add('cronJobNotificationEmail', 'email', array(\n            'attr' => array('size' => 64),\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Email(),\n                new Assert\\Length(array(\n                    'max' => 255,\n                )),\n            ),\n        ))\n        ->add('cronJobSmtpSender', 'email', array(\n            'attr' => array('size' => 64),\n            'constraints' => array(\n                new Assert\\Email(),\n                new Assert\\Length(array(\n                    'max' => 255,\n                )),\n            ),\n        ))\n        ->add('cronJobSmtpSenderName', null, array(\n            'attr' => array('size' => '64'),\n            'constraints' => array(\n                new Assert\\Length(array(\n                    'max' => 100,\n                )),\n            ),\n        ));\n    }\n\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {\n        $resolver->setDefaults(array(\n            'translation_domain' => 'system_pref',\n        ));\n\n        $resolver->setRequired(array(\n            'cacheService',\n        ));\n    }\n\n    public function getName()\n    {\n        return 'preferencesform';\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Form/Type/PrivatePluginUploadType.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\n\nclass PrivatePluginUploadType extends AbstractType\n{\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $builder->add('package', 'file', array('label' => 'newscoop.plugins_manager.form.package'));\n        $builder->add('upload', 'submit', array('label' => 'newscoop.plugins_manager.form.submit'));\n    }\n\n    public function getName()\n    {\n        return 'upload_private_plugin';\n    }\n\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {    \n        $resolver->setDefaults(array(\n            'translation_domain' => 'plugins_manager'\n        ));\n\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Form/Type/PublicationType.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\NewscoopBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\nuse Doctrine\\ORM\\EntityRepository;\nuse Symfony\\Component\\Validator\\Constraints\\Length;\nuse Symfony\\Component\\Validator\\Constraints\\NotBlank;\n\nclass PublicationType extends AbstractType\n{\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $builder->add('name', 'text', array(\n            'label' => 'publications.form_type.label.name',\n            'trim' => true,\n            'error_bubbling' => true,\n            'constraints' => array(\n               new NotBlank(),\n               new Length(array('min' => 3, 'minMessage' => 'type_publications.name.min')),\n            ),\n            'required' => true,\n        ));\n\n        if ($options['publication']) {\n            $builder->add('defaultAlias', 'entity', array(\n                'class' => 'Newscoop\\Entity\\Aliases',\n                'property' => 'name',\n                'query_builder' => function (EntityRepository $er) use ($options) {\n                    return $er->createQueryBuilder('a')\n                        ->where('a.publication = :publicationId')\n                        ->setParameter('publicationId', $options['publication']->getId())\n                        ->orderBy('a.name', 'ASC');\n                },\n                'error_bubbling' => true,\n                'label' => 'publications.form_type.label.alias',\n                'required' => true,\n            ));\n        } else {\n            $builder->add('defaultAlias', 'text', array(\n                'error_bubbling' => true,\n                'label' => 'publications.form_type.label.alias',\n                'required' => true,\n            ));\n        }\n\n        if (!is_null($options['publication'])) {\n            $publicationIssuesLanguages = array();\n            foreach ($options['publication']->getIssues() as $key => $issue) {\n                if (!array_key_exists($issue->getLanguageCode(), $publicationIssuesLanguages)) {\n                    $publicationIssuesLanguages[$issue->getLanguageCode()] = $issue->getLanguage();\n                }\n            }\n\n            foreach ($publicationIssuesLanguages as $languageCode => $language) {\n                $outputSettingsPublication = $options['em']->getRepository('Newscoop\\Entity\\Output\\OutputSettingsPublication')\n                    ->findOneBy(array(\n                        'output' => 1,\n                        'publication' => $options['publication']->getId(),\n                        'language' => $language,\n                    ));\n\n                $frontThemeChoices = array('0' => 'publications.form_type.label.follow_current_issue_theme');\n                $choosedTheme = 0;\n                foreach ($options['publication_themes'] as $value) {\n                    $frontThemeChoices[$value->getPath()] = $value->getName()->__toString() .' ('.$value->getDescription().')';\n                    if ($outputSettingsPublication && $value->getPath() == $outputSettingsPublication->getThemePath()->getPath()) {\n                        $choosedTheme = $value->getPath();\n                    }\n                }\n\n                $builder->add($languageCode . '_front_theme', 'choice', array(\n                    'choices'   => $frontThemeChoices,\n                    'data' => $choosedTheme,\n                    'label' => $language->getName().': ',\n                    'error_bubbling' => true,\n                    'required' => true,\n                    'mapped' => false\n                ));\n            }\n        }\n\n        $builder->add('language', 'entity', array(\n            'class' => 'Newscoop\\Entity\\Language',\n            'property' => 'name',\n            'query_builder' => function (EntityRepository $er) {\n                return $er->createQueryBuilder('a')\n                    ->orderBy('a.name', 'ASC');\n            },\n            'error_bubbling' => true,\n            'required' => true,\n        ))\n        ->add('urlTypeId', 'choice', array(\n            'choices'   => array('2' => 'publications.form_type.label.short_names', '1' => 'publications.form_type.label.template_path'),\n            'label' => 'publications.form_type.label.url_type',\n            'error_bubbling' => true,\n            'required' => true,\n        ))\n        ->add('seoChoices', 'choice', array(\n            'choices'   => array(\n                'name' => 'publications.form_type.label.seo_article_title',\n                'keywords' => 'publications.form_type.label.seo_article_keywords',\n                'topics' => 'publications.form_type.label.seo_article_topics'\n            ),\n            'label' => 'publications.form_type.label.seo',\n            'expanded' => true,\n            'multiple'  => true,\n            'error_bubbling' => true,\n            'required' => false,\n        ))\n        ->add('metaTitle', null, array(\n            'label' => 'publications.form_type.label.meta_title',\n            'error_bubbling' => true,\n            'required' => false,\n            'constraints' => array(\n               new Length(array('max' => 255, 'maxMessage' => 'type_publications.metaTitle.max')),\n            )\n        ))\n        ->add('metaKeywords', null, array(\n            'label' => 'publications.form_type.label.meta_keywords',\n            'error_bubbling' => true,\n            'required' => false,\n            'constraints' => array(\n               new Length(array('max' => 255, 'maxMessage' => 'type_publications.metaKeywords.max')),\n            )\n        ))\n        ->add('metaDescription', 'textarea', array(\n            'label' => 'publications.form_type.label.meta_description',\n            'required' => false,\n            'error_bubbling' => true,\n            'constraints' => array(\n               new Length(array('max' => 255, 'maxMessage' => 'type_publications.metaDescription.max')),\n            )\n        ))\n        ->add('moderator_to', 'email', array(\n            'label' => 'publications.form_type.label.moderator_to',\n            'error_bubbling' => true,\n            'required' => false,\n        ))\n        ->add('moderator_from', 'email', array(\n            'label' => 'publications.form_type.label.moderator_from',\n            'error_bubbling' => true,\n            'required' => false,\n        ))\n        ->add('commentsEnabled', null, array(\n            'label' => 'publications.form_type.label.comments_enabled',\n            'error_bubbling' => true,\n            'required' => false,\n        ))\n        ->add('public_enabled', 'checkbox', array(\n            'label' => 'publications.form_type.label.public_comments_enabled',\n            'error_bubbling' => true,\n            'required' => false,\n        ))\n        ->add('commentsArticleDefaultEnabled', null, array(\n            'label' => 'publications.form_type.label.comments_article_default_enabled',\n            'error_bubbling' => true,\n            'required' => false,\n        ))\n        ->add('commentsSubscribersModerated', null, array(\n            'label' => 'publications.form_type.label.comments_subscribers_moderated',\n            'error_bubbling' => true,\n            'required' => false,\n        ))\n        ->add('commentsPublicModerated', null, array(\n            'label' => 'publications.form_type.label.comments_public_moderated',\n            'error_bubbling' => true,\n            'required' => false,\n        ))\n        ->add('commentsCaptchaEnabled', null, array(\n            'label' => 'publications.form_type.label.comments_captcha_enabled',\n            'error_bubbling' => true,\n            'required' => false,\n        ))\n        ->add('commentsSpamBlockingEnabled', null, array(\n            'label' => 'publications.form_type.label.comments_spam_blocking_enabled',\n            'error_bubbling' => true,\n            'required' => false,\n        ))\n        ;\n    }\n\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {\n        $resolver->setDefaults(array(\n            'translation_domain' => 'pub',\n            'publication' => null,\n            'publication_themes' => array(),\n            'em' => null\n        ));\n    }\n\n    public function getName()\n    {\n        return 'publication';\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Form/Type/RecaptchaType.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Form\\Type;\n\nuse Symfony\\Component\\DependencyInjection\\ContainerInterface;\nuse EWZ\\Bundle\\RecaptchaBundle\\Form\\Type\\RecaptchaType as BaseRecaptcha;\n\n/**\n * A field for entering a recaptcha text.\n */\nclass RecaptchaType extends BaseRecaptcha\n{\n    /**\n     * Construct.\n     *\n     * @param ContainerInterface $container An ContainerInterface instance\n     */\n    public function __construct(ContainerInterface $container)\n    {   \n        $preferensService = $container->get('system_preferences_service');\n        $this->publicKey = $preferensService->get('RecaptchaPublicKey');\n        $this->secure = $preferensService->get('RecaptchaSecure') == 'Y' ? true : false;\n        $this->enabled = $container->getParameter('ewz_recaptcha.enabled');\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Form/Type/RemovePublicationType.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\nuse Doctrine\\ORM\\EntityRepository;\nuse Symfony\\Component\\Validator\\Constraints\\Length;\nuse Symfony\\Component\\Validator\\Constraints\\NotBlank;\n\nclass RemovePublicationType extends AbstractType\n{\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $builder->add('id', 'hidden', array(\n            'required' => true\n        ));\n    }\n\n    public function getName()\n    {\n        return 'remove_publication';\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Form/Type/TopicTranslationType.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\nuse Symfony\\Component\\Validator\\Constraints as Assert;\n\nclass TopicTranslationType extends AbstractType\n{\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $builder->add('title', null, array(\n            'required' => true,\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Length(array(\n                    'max' => 60,\n                ))\n            ),\n            'error_bubbling' => true\n        ));\n\n        $builder->add('locale', null, array(\n            'required' => true,\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Length(array(\n                    'max' => 5,\n                ))\n            ),\n            'error_bubbling' => true\n        ));\n    }\n\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {\n        $resolver->setDefaults(array(\n            'csrf_protection' => false\n        ));\n    }\n\n    public function getName()\n    {\n        return 'topicTranslation';\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Form/Type/TopicType.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Form\\Type;\n\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\nuse Symfony\\Component\\Validator\\Constraints as Assert;\n\nclass TopicType extends AbstractType\n{\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $builder->add('title', 'text', array(\n            'required' => true,\n            'constraints' => array(\n                new Assert\\NotBlank(),\n                new Assert\\Length(array(\n                    'max' => 60,\n                ))\n            ),\n            'error_bubbling' => true\n        ));\n        $builder->add('locale', null, array(\n            'required' => false,\n            'constraints' => array(\n                new Assert\\Length(array(\n                    'max' => 5,\n                ))\n            ),\n            'error_bubbling' => true\n        ));\n        $builder->add('description', 'textarea', array('required' => false));\n        $builder->add('parent', null, array('required' => false));\n    }\n\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {\n        $resolver->setDefaults(array(\n            'csrf_protection' => false\n        ));\n    }\n\n    public function getName()\n    {\n        return 'topic';\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Menu/Builder.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\NewscoopBundle\\Menu;\n\nuse Knp\\Menu\\FactoryInterface;\nuse Newscoop\\NewscoopBundle\\Event\\ConfigureMenuEvent;\n\nclass Builder\n{\n\n    protected $factory;\n    protected $container;\n    protected $user;\n    protected $showPublishingEnvironmentMenu;\n    protected $showConfigureMenu;\n    protected $showUserMenu;\n    protected $menu = null;\n\n    private function preparePrivileges()\n    {\n        $this->showPublishingEnvironmentMenu = (\n            $this->user->hasPermission('ManageTempl') ||\n            $this->user->hasPermission('DeleteTempl') ||\n            $this->user->hasPermission('ManageArticleTypes') ||\n            $this->user->hasPermission('DeleteArticleTypes') ||\n            $this->user->hasPermission('ManageTopics') ||\n            $this->user->hasPermission('ManageLanguages') ||\n            $this->user->hasPermission('DeleteLanguages') ||\n            $this->user->hasPermission('ManageCountries') ||\n            $this->user->hasPermission('DeleteCountries')\n        );\n\n        $this->showConfigureMenu = (\n            $this->showPublishingEnvironmentMenu ||\n            $this->user->hasPermission('ViewLogs')\n        );\n\n        $this->showUserMenu = (\n            $this->user->hasPermission('ManageUsers') ||\n            $this->user->hasPermission('DeleteUsers') ||\n            $this->user->hasPermission('ManageSubscriptions') ||\n            $this->user->hasPermission('ManageUserTypes') ||\n            $this->user->hasPermission('ManageReaders') ||\n            $this->user->hasPermission('EditAuthors')\n        );\n    }\n\n    public function __construct(FactoryInterface $factory, $container)\n    {\n        $this->factory = $factory;\n        $this->container = $container;\n    }\n\n    public function mainMenu($modern = false)\n    {\n        if ($this->menu !== null) {\n            return $this->menu;\n        }\n\n        $translator = $this->container->get('translator');\n        $this->user = $this->container->getService('user')->getCurrentUser();\n        $this->preparePrivileges();\n\n        $menu = $this->factory->createItem('root');\n\n        if ($modern) {\n            $menu->setChildrenAttribute('class', 'nav navbar-nav');\n        } else {\n            $menu->setChildrenAttribute('class', 'navigation');\n        }\n\n        // change menu for blogger\n        $blogService = $this->container->get('blog');\n        if ($blogService->isBlogger($this->user)) {\n            $menu->addChild('Blog', array('uri' => $this->generateZendRoute('admin'), 'attributes' => array(\n                'data-menu' => 'not-menu',\n            )));\n\n            if (!$modern) {\n                $menu = $this->decorateMenu($menu);\n            }\n\n            return $menu;\n        }\n\n        if ($modern) {\n            $menu->addChild($translator->trans('Dashboard', array(), 'home'), array('uri' => $this->generateZendRoute('admin')));\n\n            $menu->addChild($translator->trans('Content'), array('uri' => '#'))\n                ->setAttribute('dropdown', true)\n                ->setLinkAttribute('data-toggle', 'dropdown');\n\n            $this->prepareContentMenu($menu[$translator->trans('Content')], $modern);\n\n            $menu->addChild($translator->trans('Actions'), array('uri' => '#'))\n                ->setAttribute('dropdown', true)\n                ->setLinkAttribute('data-toggle', 'dropdown');\n\n            $this->prepareActionsMenu($menu[$translator->trans('Actions')]);\n\n            if ($this->showConfigureMenu) {\n                $menu->addChild($translator->trans('Configure'), array('uri' => '#'))\n                    ->setAttribute('dropdown', true)\n                    ->setLinkAttribute('data-toggle', 'dropdown');\n                $this->prepareConfigureMenu($menu[$translator->trans('Configure')]);\n            }\n\n            if ($this->showUserMenu) {\n                $menu->addChild($translator->trans('Users'), array('uri' => '#'))\n                    ->setAttribute('dropdown', true)\n                    ->setLinkAttribute('data-toggle', 'dropdown');\n                $this->prepareUsersMenu($menu[$translator->trans('Users')]);\n            }\n        } else {\n            $menu->addChild($translator->trans('Dashboard', array(), 'home'), array('uri' => $this->generateZendRoute('admin')));\n\n            $menu->addChild($translator->trans('Content'), array('uri' => '#'));\n            $this->prepareContentMenu($menu[$translator->trans('Content')], $modern);\n\n            $menu->addChild($translator->trans('Actions'), array('uri' => '#'));\n            $this->prepareActionsMenu($menu[$translator->trans('Actions')]);\n\n            if ($this->showConfigureMenu) {\n                $menu->addChild($translator->trans('Configure'), array('uri' => '#'));\n                $this->prepareConfigureMenu($menu[$translator->trans('Configure')]);\n            }\n\n            if ($this->showUserMenu) {\n                $menu->addChild($translator->trans('Users'), array('uri' => '#'));\n                $this->prepareUsersMenu($menu[$translator->trans('Users')]);\n            }\n        }\n\n        $this->preparePluginsMenu($menu);\n\n        // Extend menu with events\n        $this->container->get('event_dispatcher')->dispatch('newscoop_newscoop.menu_configure', new ConfigureMenuEvent(\n            $this->factory,\n            $menu,\n            $this->container->get('router')\n        ));\n\n        if (!$modern) {\n            $menu = $this->decorateMenu($menu);\n        }\n\n        $this->menu = $menu;\n\n        return $menu;\n    }\n\n    public function mainBreadcrumb()\n    {\n        $menu = $this->container->get('newscoop_newscoop.menu.main');\n\n        $matcher = new \\Knp\\Menu\\Matcher\\Matcher();\n        $matcher->addVoter(new \\Knp\\Menu\\Matcher\\Voter\\UriVoter($_SERVER['REQUEST_URI']));\n\n        $treeIterator = new \\RecursiveIteratorIterator(\n            new \\Knp\\Menu\\Iterator\\RecursiveItemIterator(\n                new \\ArrayIterator(array($menu))\n            ),\n            \\RecursiveIteratorIterator::SELF_FIRST\n        );\n\n        $iterator = new \\Knp\\Menu\\Iterator\\CurrentItemFilterIterator($treeIterator, $matcher);\n\n        // Set Current as an empty Item in order to avoid exceptions on knp_menu_get\n        $current = new \\Knp\\Menu\\MenuItem('', $this->factory);\n\n        foreach ($iterator as $item) {\n            $item->setCurrent(true);\n            $current = $item;\n            break;\n        }\n\n        return $current;\n    }\n\n    private function decorateMenu($menu)\n    {\n        foreach ($menu as $key => $value) {\n            $value->setLinkAttribute('class', 'fg-button fg-button-menu ui-widget fg-button-icon-right fg-button-ui-state-default fg-button-ui-corner-all');\n        }\n\n        return $menu;\n    }\n\n    private function prepareContentMenu($menu, $modern)\n    {\n        $translator = $this->container->get('translator');\n\n        $this->addChild($menu, $translator->trans('Publications'), array(\n            'uri' => $this->container->get('router')->generate('newscoop_newscoop_publications_index'),\n            'resource' => 'publication',\n            'privilege' => 'manage',\n        ));\n\n        if ($menu[$translator->trans('Publications')]) {\n            $publicationId = $this->container->get('request')->get('id', 1);\n            if (!is_numeric($publicationId)) {\n                $publicationId = 1;\n            }\n\n            $this->addChild($menu[$translator->trans('Publications')], $translator->trans('publications.title.edit', array(), 'pub'), array(\n                'route' => 'newscoop_newscoop_publications_edit',\n                'routeParameters' => array('id' => $publicationId),\n                'resource' => 'publication',\n                'privilege' => 'manage',\n            ))->setDisplay(false);\n\n            $this->addChild($menu[$translator->trans('Publications')], $translator->trans('publications.title.remove', array(), 'pub'), array(\n                'route' => 'newscoop_newscoop_publications_remove',\n                'routeParameters' => array('id' => $publicationId),\n                'resource' => 'publication',\n                'privilege' => 'manage',\n            ))->setDisplay(false);\n        }\n\n        $this->addChild(\n            $menu,\n            $translator->trans('comments.label.menu', array(), 'new_comments'),\n            array(\n                'uri' => $this->container->get('router')->generate('newscoop_newscoop_comments_index'),\n                'resource' => 'comment',\n                'privilege' => 'moderate',\n            )\n        );\n\n        $this->addChild($menu, $translator->trans('Feedback', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'feedback',\n                'action' => 'index',\n            ),\n            'resource' => 'feedback',\n            'privilege' => 'manage',\n        ));\n\n        $this->addChild($menu, $translator->trans('Media Archive', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'media-archive',\n                'action' => 'index.php',\n            ),\n        ));\n\n        $this->addChild($menu, $translator->trans('Search'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'universal-list',\n                'action' => 'index.php',\n            ),\n        ));\n\n        $this->addChild($menu, $translator->trans('Pending articles', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'pending_articles',\n                'action' => 'index.php',\n            ),\n        ));\n\n        $this->addChild($menu, $translator->trans('Featured Article Lists', array(), 'home'), array(\n            'uri' => $this->container->get('router')->generate('newscoop_newscoop_playlists_index'),\n            'resource' => 'playlist',\n            'privilege' => 'manage',\n        ));\n\n        // add content/publications\n        $publicationService = $this->container->get('content.publication');\n        foreach ($publicationService->getPublicationsForMenu()->getArrayResult() as $publication) {\n            $pubId = $publication['id'];\n            $this->addChild($menu, $publication['name'], array('uri' => $this->generateZendRoute('admin').\"/issues/?Pub=$pubId\"))\n                ->setAttribute('rightdrop', true)\n                ->setLinkAttribute('data-toggle', 'rightdrop');\n\n            $query = $this->container->get('em')\n                ->getRepository('Newscoop\\Entity\\Issue')\n                ->getLatestByPublication($pubId, 11);\n\n            if ($query) {\n                $issues = $query->getArrayResult();\n            } else {\n                $issues = array();\n            }\n\n            $moreIssues = count($issues) > 10 ? true : false;\n            if ($moreIssues) {\n                unset($issues[10]);\n            }\n\n            // add content/publication/issue\n            $latestPublished = false;\n            foreach ($issues as $issue) {\n                $issueId = $issue['number'];\n                $languageId = $issue['language']['id'];\n                $issueName = sprintf('%d. %s (%s)', $issue['number'], $issue['name'], $issue['language']['name']);\n                $issueChild = $this->addChild(\n                    $menu[$publication['name']],\n                    $issueName,\n                    array('uri' => $this->generateZendRoute('admin', array('zend_route' => array('reset_params' => true))).\"/sections/?Pub=$pubId&Issue=$issueId&Language=$languageId\",\n                ))->setAttribute('rightdrop', true)\n                ->setLinkAttribute('data-toggle', 'rightdrop');\n\n                if (($issue['workflowStatus'] === 'Y' ? true : false) && !$latestPublished) {\n                    $issueChild->setLinkAttribute('class', 'latest-published');\n                    $latestPublished = true;\n                }\n\n                // add content/publication/issue/section\n                    $firstSections = array();\n                foreach ($issue['sections'] as $section) {\n                    $firstSections[$section['number']] = $section;\n                }\n\n                ksort($firstSections);\n                $sectionsCounter = 0;\n                foreach ($firstSections as $section) {\n                    if ($sectionsCounter < 10) {\n                        $sectionId = $section['number'];\n                        $sectionName = sprintf('%d. %s', $section['number'], $section['name']);\n                        $this->addChild(\n                                $menu[$publication['name']][$issueName],\n                                $sectionName,\n                                array('uri' => $this->generateZendRoute('admin', array('zend_route' => array('reset_params' => true))).\"/articles/?f_publication_id=$pubId&f_issue_number=$issueId&f_language_id=$languageId&f_section_number=$sectionId\",\n                            ));\n                        $sectionsCounter ++;\n                    }\n                }\n\n                if (count($issue['sections']) > 0) {\n                    if (!$modern) {\n                        $this->addChild($menu[$publication['name']][$issueName], null, array())->setAttribute('class', 'divider');\n                        $this->addChild(\n                                $menu[$publication['name']][$issueName],\n                                $translator->trans('More...'),\n                                array('uri' => $this->generateZendRoute('admin', array('zend_route' => array('reset_params' => true))).\"/sections/?Pub=$pubId&Issue=$issueId&Language=$languageId\",\n                            ));\n                    } else {\n                        $this->addChild(\n                                $menu[$publication['name']][$issueName],\n                                $translator->trans('More...'),\n                                array('uri' => $this->generateZendRoute('admin', array('zend_route' => array('reset_params' => true))).\"/sections/?Pub=$pubId&Issue=$issueId&Language=$languageId\",\n                            ))->setAttribute('divider_prepend', true);\n                    }\n                }\n            }\n\n            if ($moreIssues) {\n                if (!$modern) {\n                    $this->addChild($menu[$publication['name']], null, array())->setAttribute('class', 'divider');\n                    $this->addChild(\n                        $menu[$publication['name']],\n                        $translator->trans('More...'),\n                        array('uri' => $this->generateZendRoute('admin', array('zend_route' => array('reset_params' => true))).\"/issues/?Pub=$pubId\",\n                    ));\n                } else {\n                    $this->addChild(\n                        $menu[$publication['name']],\n                        $translator->trans('More...'),\n                        array('uri' => $this->generateZendRoute('admin', array('zend_route' => array('reset_params' => true))).\"/issues/?Pub=$pubId\",\n                    ))->setAttribute('divider_prepend', true);\n                }\n            }\n        }\n    }\n\n    private function prepareActionsMenu($menu)\n    {\n        $translator = $this->container->get('translator');\n\n        $this->addChild($menu, $translator->trans('Add new article'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'articles',\n                'action' => 'add_move.php',\n            ),\n            'resource' => 'article',\n            'privilege' => 'add',\n        ));\n\n        $this->addChild($menu, $translator->trans('publications.title.add', array(), 'pub'), array(\n            'uri' => $this->container->get('router')->generate('newscoop_newscoop_publications_add'),\n            'resource' => 'publication',\n            'privilege' => 'manage',\n        ));\n\n        $this->addChild($menu, $translator->trans('Add new user', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'user',\n                'action' => 'create',\n            ),\n            'resource' => 'user',\n            'privilege' => 'manage',\n        ));\n\n        $this->addChild($menu, $translator->trans('Add new user type', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'user-group',\n                'action' => 'add',\n            ),\n            'resource' => 'user-group',\n            'privilege' => 'manage',\n        ));\n\n        $this->addChild($menu, $translator->trans('Add new article type'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'article_types',\n                'action' => 'add.php',\n                'reset_params' => false,\n            ),\n            'resource' => 'article-type',\n            'privilege' => 'manage',\n        ));\n\n        $this->addChild($menu, $translator->trans('Merge article types', array(), 'article_types'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'article_types',\n                'action' => 'merge.php',\n                'reset_params' => false,\n            ),\n            'resource' => 'article-type',\n            'privilege' => 'manage',\n        ));\n\n        $status = $this->addChild($menu[$translator->trans('Merge article types', array(), 'article_types')], $translator->trans('Step 2'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'article_types',\n                'action' => 'merge2.php',\n                'reset_params' => false,\n            ),\n            'resource' => 'article-type',\n            'privilege' => 'manage',\n        ));\n\n        if ($status) {\n            $menu[$translator->trans('Merge article types', array(), 'article_types')][$translator->trans('Step 2', array(), 'article_types')]->setDisplay(false);\n        }\n\n        $status = $this->addChild($menu[$translator->trans('Merge article types', array(), 'article_types')], $translator->trans('Step 3', array(), 'article_types'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'article_types',\n                'action' => 'merge3.php',\n                'reset_params' => false,\n            ),\n            'resource' => 'article-type',\n            'privilege' => 'manage',\n        ));\n\n        if ($status) {\n            $menu[$translator->trans('Merge article types', array(), 'article_types')][$translator->trans('Step 3', array(), 'article_types')]->setDisplay(false);\n        }\n\n        if ($this->user->hasPermission('ManageCountries') || $this->user->hasPermission('DeleteCountries')) {\n            $status = $this->addChild($menu, $translator->trans('Countries'), array('zend_route' => array(\n                    'module' => 'admin',\n                    'controller' => 'country',\n                    'action' => 'index.php',\n                ),\n            ));\n\n            if ($status) {\n                $menu[$translator->trans('Countries')]->setDisplay(false);\n            }\n\n            $this->addChild($menu[$translator->trans('Countries')], $translator->trans('Add new country'), array('zend_route' => array(\n                    'module' => 'admin',\n                    'controller' => 'country',\n                    'action' => 'add.php',\n                ),\n                'resource' => 'country',\n                'privilege' => 'manage',\n            ));\n\n            $status = $this->addChild($menu[$translator->trans('Countries')], $translator->trans('Edit country'), array('zend_route' => array(\n                    'module' => 'admin',\n                    'controller' => 'country',\n                    'action' => 'edit.php',\n                    'reset_params' => false,\n                ),\n                'resource' => 'country',\n                'privilege' => 'manage',\n            ));\n\n            if ($status) {\n                $menu[$translator->trans('Countries')][$translator->trans('Edit country')]->setDisplay(false);\n            }\n        }\n\n        $this->addChild($menu, $translator->trans('Edit your password', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'user',\n                'action' => 'edit-password',\n            ),\n        ));\n\n        if ($this->user->hasPermission('ManageIssue') && $this->user->hasPermission('AddArticle')) {\n            $this->addChild($menu, $translator->trans('Import XML', array(), 'home'), array('zend_route' => array(\n                    'module' => 'admin',\n                    'controller' => 'articles',\n                    'action' => 'la_import.php',\n                ),\n            ));\n        }\n\n        $this->addChild($menu, $translator->trans('Backup/Restore', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'backup.php',\n                'action' => null,\n            ),\n            'resource' => 'backup',\n            'privilege' => 'manage',\n        ));\n\n        if (\\CampCache::IsEnabled() && $this->user->hasPermission('ClearCache')) {\n            $this->addChild(\n                $menu,\n                $translator->trans('Clear system cache', array(), 'home'),\n                array('uri' => $this->generateZendRoute('admin').\"/?clear_cache=yes\",\n            ));\n        }\n    }\n\n    private function prepareConfigureMenu($menu)\n    {\n        $translator = $this->container->get('translator');\n\n        $this->addChild($menu, $translator->trans('System Preferences'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'preferences',\n                'action' => 'index',\n            ),\n            'resource' => 'system-preferences',\n            'privilege' => 'edit',\n        ));\n\n        $status = $this->addChild($menu, $translator->trans('Templates', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'template',\n                'action' => 'index',\n            ),\n        ));\n\n        if ($status) {\n            $menu[$translator->trans('Templates', array(), 'home')]->setDisplay(false);\n        }\n\n        $status = $this->addChild($menu[$translator->trans('Templates', array(), 'home')], $translator->trans('Edit'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'template',\n                'action' => 'edit',\n            ),\n        ));\n\n        if ($status) {\n            $menu[$translator->trans('Templates', array(), 'home')][$translator->trans('Edit')]->setDisplay(false);\n        }\n\n        $status = $this->addChild($menu[$translator->trans('Templates', array(), 'home')], $translator->trans('Upload', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'template',\n                'action' => 'upload',\n            ),\n        ));\n\n        if ($status) {\n            $menu[$translator->trans('Templates', array(), 'home')][$translator->trans('Upload', array(), 'home')]->setDisplay(false);\n        }\n\n        $this->addChild($menu, $translator->trans('Themes', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'themes',\n                'action' => null,\n            ),\n            'resource' => 'theme',\n            'privilege' => 'manage',\n        ));\n\n        $status = $this->addChild($menu[$translator->trans('Themes', array(), 'home')], $translator->trans('Settings', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'themes',\n                'action' => 'advanced-theme-settings',\n                'params' => array(\n                    'next' => null,\n                    'file' => null,\n                ),\n                'reset_params' => false,\n            ),\n        ));\n\n        if ($status) {\n            $menu[$translator->trans('Themes', array(), 'home')][$translator->trans('Settings', array(), 'home')]->setDisplay(false);\n        }\n\n        $status = $this->addChild($menu[$translator->trans('Themes', array(), 'home')][$translator->trans('Settings', array(), 'home')], $translator->trans('Upload', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'template',\n                'action' => 'upload',\n                'reset_params' => false,\n            ),\n        ));\n\n        if ($status) {\n            $menu[$translator->trans('Themes', array(), 'home')][$translator->trans('Settings', array(), 'home')][$translator->trans('Upload', array(), 'home')]->setDisplay(false);\n        }\n\n        $status = $this->addChild($menu[$translator->trans('Themes', array(), 'home')][$translator->trans('Settings', array(), 'home')], $translator->trans('Edit'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'template',\n                'action' => 'edit',\n                'reset_params' => false,\n            ),\n        ));\n\n        if ($status) {\n            $menu[$translator->trans('Themes', array(), 'home')][$translator->trans('Settings', array(), 'home')][$translator->trans('Edit')]->setDisplay(false);\n        }\n\n        if ($this->user->hasPermission('DeleteArticleTypes')) {\n            $this->addChild($menu, $translator->trans('Article Types'), array('zend_route' => array(\n                    'module' => 'admin',\n                    'controller' => 'article_types',\n                    'action' => 'index.php',\n                ),\n                'resource' => 'article-type',\n                'privilege' => 'manage',\n            ));\n        }\n\n        $this->addChild($menu, $translator->trans('Topics'), array(\n            'uri' => $this->container->get('router')->generate('newscoop_newscoop_topics_index'),\n            'resource' => 'topic',\n            'privilege' => 'manage',\n        ));\n\n        $this->addChild($menu, $translator->trans('Languages'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'languages',\n                'action' => null,\n            ),\n            'resource' => 'language',\n            'privilege' => 'manage',\n        ));\n\n        $status = $this->addChild($menu[$translator->trans('Languages')], $translator->trans('Edit language', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'languages',\n                'action' => 'edit',\n                'reset_params' => false,\n            ),\n            'resource' => 'language',\n            'privilege' => 'manage',\n        ));\n\n        if ($status) {\n            $menu[$translator->trans('Languages')][$translator->trans('Edit language', array(), 'home')]->setDisplay(false);\n        }\n\n        $status = $this->addChild($menu[$translator->trans('Languages')], $translator->trans('Add new language'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'languages',\n                'action' => 'add',\n            ),\n            'resource' => 'language',\n            'privilege' => 'manage',\n        ));\n\n        if ($status) {\n            $menu[$translator->trans('Languages')][$translator->trans('Add new language')]->setDisplay(false);\n        }\n\n        if ($this->user->hasPermission('ManageCountries') || $this->user->hasPermission('DeleteCountries')) {\n            $this->addChild($menu, $translator->trans('Countries'), array('zend_route' => array(\n                    'module' => 'admin',\n                    'controller' => 'country',\n                    'action' => 'index.php',\n                ),\n            ));\n        }\n\n        if ($this->user->hasPermission('ViewLogs')) {\n            $this->addChild($menu, $translator->trans('Logs'), array('zend_route' => array(\n                    'module' => 'admin',\n                    'controller' => 'log',\n                    'action' => null,\n                ),\n                'resource' => 'log',\n                'privilege' => 'view',\n            ));\n        }\n\n        $this->addChild($menu, $translator->trans('Support', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'support',\n                'action' => null,\n                'params' => array(\n                    'id' => 'stat',\n                ),\n            ),\n        ));\n\n        $this->addChild($menu, $translator->trans('Image Rendering', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'rendition',\n                'action' => null,\n            ),\n        ));\n\n        $this->addChild(\n            $menu,\n            $translator->trans('api.configure.menu', array(), 'api'),\n            array('uri' => $this->container->get('router')->generate('configure_api'))\n        );\n    }\n\n    private function prepareUsersMenu($menu)\n    {\n        $zendRequest = $this->container->get('zend_router')->getFrontController()->getRequest();\n        $translator = $this->container->get('translator');\n        $this->addChild(\n            $menu,\n            $translator->trans('users.menu.manage', array(), 'users'),\n            array('uri' => $this->container->get('router')->generate('newscoop_newscoop_users_index'))\n        );\n\n        $status = $this->addChild($menu[$translator->trans('users.menu.manage', array(), 'users')], $translator->trans('Edit user', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'user',\n                'action' => 'edit',\n                'params' => array (\n                    'user' => $zendRequest ? $zendRequest->getParam('user') : null,\n                ),\n                'reset_params' => false,\n            ),\n        ));\n\n        if ($status) {\n            $menu[$translator->trans('users.menu.manage', array(), 'users')][$translator->trans('Edit user', array(), 'home')]->setDisplay(false);\n        }\n\n        $status = $this->addChild($menu[$translator->trans('users.menu.manage', array(), 'users')][$translator->trans('Edit user', array(), 'home')], $translator->trans('Edit permissions', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'acl',\n                'action' => 'edit',\n            ),\n        ));\n\n        if ($status) {\n            $menu[$translator->trans('users.menu.manage', array(), 'users')][$translator->trans('Edit user', array(), 'home')][$translator->trans('Edit permissions', array(), 'home')]->setDisplay(false);\n        }\n\n        $status = $this->addChild($menu[$translator->trans('users.menu.manage', array(), 'users')], $translator->trans('Rename user', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'user',\n                'action' => 'rename',\n                'reset_params' => false,\n            ),\n        ));\n\n        if ($status) {\n            $menu[$translator->trans('users.menu.manage', array(), 'users')][$translator->trans('Rename user', array(), 'home')]->setDisplay(false);\n        }\n\n        $status = $this->addChild($menu[$translator->trans('users.menu.manage', array(), 'users')], $translator->trans('Create new user', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'user',\n                'action' => 'create',\n                'reset_params' => false,\n            ),\n        ));\n\n        if ($status) {\n            $menu[$translator->trans('users.menu.manage', array(), 'users')][$translator->trans('Create new user', array(), 'home')]->setDisplay(false);\n        }\n\n        $this->addChild($menu, $translator->trans('Manage Authors', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'users',\n                'action' => 'authors.php',\n            ),\n        ));\n\n        $this->addChild($menu, $translator->trans('Manage Authors', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'users',\n                'action' => 'authors.php',\n            ),\n            'resource' => 'autors',\n            'privilege' => 'edit',\n        ));\n\n        $this->addChild($menu, $translator->trans('Manage User Types', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'user-group',\n                'action' => null,\n            ),\n            'resource' => 'user-group',\n            'privilege' => 'manage',\n        ));\n\n        $status = $this->addChild($menu[$translator->trans('Manage User Types', array(), 'home')], $translator->trans('Edit user type', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'user-group',\n                'action' => 'edit-access',\n                'reset_params' => false,\n            ),\n        ));\n\n        if ($status) {\n            $menu[$translator->trans('Manage User Types', array(), 'home')][$translator->trans('Edit user type', array(), 'home')]->setDisplay(false);\n        }\n\n        $this->addChild($menu, $translator->trans('Create new account', array(), 'home'), array('zend_route' => array(\n                'module' => 'admin',\n                'controller' => 'user',\n                'action' => 'create',\n            ),\n        ));\n    }\n\n    public function preparePluginsMenu($menu)\n    {\n        $translator = $this->container->get('translator');\n        $rootMenu = false;\n        $pluginInfos = \\CampPlugin::GetPluginsInfo(true);\n        if ($this->user->hasPermission('plugin_manager')) {\n            $rootMenu = true;\n        }\n\n        foreach ($pluginInfos as $info) {\n            if (isset($info['menu']['permission']) && $this->user->hasPermission($info['menu']['permission'])) {\n                $rootMenu = true;\n            } elseif (isset($info['menu']['sub']) && is_array($info['menu']['sub'])) {\n                foreach ($info['menu']['sub'] as $menuInfo) {\n                    if ($this->user->hasPermission($menuInfo['permission'])) {\n                        $rootMenu = true;\n                    }\n                }\n            }\n        }\n\n        $menu->addChild($translator->trans('Plugins'), array('uri' => '#'))\n            ->setAttribute('dropdown', true)\n            ->setLinkAttribute('data-toggle', 'dropdown');\n\n        if (!$rootMenu) {\n            $menu[$translator->trans('Plugins')]->setDisplay(false);\n\n            return;\n        }\n\n        if ($this->user->hasPermission('plugin_manager')) {\n            $this->addChild($menu[$translator->trans('Plugins')], $translator->trans('Manage Plugins'),  array('uri' => $this->container->get('router')->generate('newscoop_newscoop_plugins_index')));\n        }\n\n        $enabled = \\CampPlugin::GetEnabled();\n        $enabledIds = array();\n        foreach ($enabled as $plugin) {\n            $enabledIds[] = $plugin->getName();\n        }\n\n        foreach ($pluginInfos as $info) {\n            if (in_array($info['name'], $enabledIds)) {\n                $parentMenu = false;\n\n                if (isset($info['menu']['permission']) && $this->user->hasPermission($info['menu']['permission'])) {\n                    $parentMenu = true;\n                } elseif (isset($info['menu']['sub']) && is_array($info['menu']['sub'])) {\n                    foreach ($info['menu']['sub'] as $menuInfo) {\n                        if ($this->user->hasPermission($menuInfo['permission'])) {\n                            $parentMenu = true;\n                        }\n                    }\n                }\n\n                if ($parentMenu && isset($info['menu'])) {\n                    $uri = '#';\n                    if (isset($info['menu']['path'])) {\n                        $uri = $this->generateZendRoute('admin').'/'.$info['menu']['path'];\n                    }\n\n                    $this->addChild($menu[$translator->trans('Plugins')], $translator->trans($info['menu']['label']), array(\n                        'uri' => $uri,\n                    ))->setLinkAttribute('data-toggle', 'rightdrop');\n                }\n\n                if (isset($info['menu']['sub']) && is_array($info['menu']['sub'])) {\n                    foreach ($info['menu']['sub'] as $menuInfo) {\n                        if ($this->user->hasPermission($menuInfo['permission'])) {\n                            $uri = '#';\n                            if (isset($menuInfo['path'])) {\n                                $uri = $this->generateZendRoute('admin').'/'.$menuInfo['path'];\n                            }\n\n                            $this->addChild($menu[$translator->trans('Plugins')][$translator->trans($info['menu']['label'])], $translator->trans($menuInfo['label']), array(\n                                'uri' => $uri,\n                            ));\n                        }\n                    }\n                }\n            }\n        }\n\n        return $menu;\n    }\n\n    protected function addChild($menu, $name, $element)\n    {\n        if (array_key_exists('resource', $element) && array_key_exists('privilege', $element)) {\n            if (!$this->hasPermission($element['resource'], $element['privilege'])) {\n                return false;\n            }\n        }\n\n        if (array_key_exists('zend_route', $element)) {\n            $element['uri'] = $this->generateZendRoute($element['zend_route']['module'], $element);\n        }\n\n        if (is_object($menu)) {\n            return $menu->addChild($name, $element);\n        }\n    }\n\n    private function hasPermission($resource, $action)\n    {\n        return $this->user->hasPermission(null, $resource, $action);\n    }\n\n    private function generateZendRoute($module, $element = array())\n    {\n        if (!array_key_exists('zend_route', $element)) {\n            $element['zend_route'] = array();\n        }\n\n        $zendRouteParams = $element['zend_route'];\n        $params = array_key_exists('params', $zendRouteParams) == true ? $zendRouteParams['params'] : array();\n        $controller = array_key_exists('controller', $zendRouteParams) == true ? $zendRouteParams['controller'] : null;\n        $action = array_key_exists('action', $zendRouteParams) == true ? $zendRouteParams['action'] : null;\n        $module = array_key_exists('module', $zendRouteParams) == true ? $zendRouteParams['module'] : $module;\n        $resetParams = array_key_exists('reset_params', $zendRouteParams) == true ? $zendRouteParams['reset_params'] : true;\n\n        $getParams = '';\n        if (count($_GET) > 0 && !$resetParams) {\n            $getParams = '?'.http_build_query($_GET);\n        }\n\n        return $this->container->get('zend_router')->assemble(array(\n            'controller' => $controller,\n            'action' => $action,\n            'module' => $module,\n        ) + $params, 'default', $resetParams).$getParams;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/NewscoopNewscoopBundle.php",
    "content": "<?php\n\nnamespace Newscoop\\NewscoopBundle;\n\nuse Symfony\\Component\\HttpKernel\\Bundle\\Bundle;\n\nclass NewscoopNewscoopBundle extends Bundle\n{\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/ORM/Point.php",
    "content": "<?php\n\nnamespace Newscoop\\NewscoopBundle\\ORM;\n\n/**\n * Point object for spatial mapping\n */\nclass Point {\n\n    protected $latitude;\n    protected $longitude;\n\n    public function __construct($latitude, $longitude) {\n        $this->latitude = $latitude;\n        $this->longitude = $longitude;\n    }\n\n    public function setLatitude($x) \n    {\n        $this->latitude = $x;\n    }\n\n    public function getLatitude() \n    {\n        return $this->latitude;\n    }\n\n    public function setLongitude($y) \n    {\n        $this->longitude = $y;\n    }\n\n    public function getLongitude() \n    {\n        return $this->longitude;\n    }\n\n    public function __toString() \n    {\n\n        return sprintf('POINT(%f %f)', $this->latitude, $this->longitude);\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/ORM/PointType.php",
    "content": "<?php\n\nnamespace Newscoop\\NewscoopBundle\\ORM;\n\nuse Doctrine\\DBAL\\Types\\Type as BaseType;\nuse Doctrine\\DBAL\\Platforms\\AbstractPlatform;\n\n/**\n * Mapping type for spatial POINT objects\n */\nclass PointType extends BaseType {\n\n    const POINT = 'point';\n\n    /**\n     * Gets the name of this type.\n     *\n     * @return string\n     */\n    public function getName() \n    {\n        return self::POINT;\n    }\n\n    /**\n     * Gets the SQL declaration snippet for a field of this type.\n     *\n     * @param array $fieldDeclaration The field declaration.\n     * @param AbstractPlatform $platform The currently used database platform.\n     */\n    public function getSQLDeclaration(array $fieldDeclaration, AbstractPlatform $platform) \n    {\n        return 'POINT';\n    }\n\n    public function convertToPHPValue($value, AbstractPlatform $platform) \n    {\n\n        if($value == '') {\n            return null;\n        }\n\n        $data = unpack('x/x/x/x/corder/Ltype/dlat/dlon', $value);\n        return new \\Newscoop\\NewscoopBundle\\ORM\\Point($data['lat'], $data['lon']);\n    }\n\n    public function convertToDatabaseValue($value, AbstractPlatform $platform) \n    {\n        if (!$value) return;\n        \n        return pack('xxxxcLdd', '0', 1, $value->getLatitude(), $value->getLongitude());\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/ORM/UTCDateTimeType.php",
    "content": "<?php\n\nnamespace Newscoop\\NewscoopBundle\\ORM;\n\nuse Doctrine\\DBAL\\Types\\DateTimeType;\nuse Doctrine\\DBAL\\Platforms\\AbstractPlatform;\nuse Doctrine\\DBAL\\Types\\ConversionException;\n\nclass UTCDateTimeType extends DateTimeType\n{\n    private static $utc = null;\n\n    public function convertToDatabaseValue($value, AbstractPlatform $platform)\n    {\n        if ($value === null) {\n            return;\n        }\n\n        if (is_null(self::$utc)) {\n            self::$utc = new \\DateTimeZone('UTC');\n        }\n\n        $value->setTimeZone(self::$utc);\n\n        return $value->format($platform->getDateTimeFormatString());\n    }\n\n    public function convertToPHPValue($value, AbstractPlatform $platform)\n    {\n        if ($value === null) {\n            return;\n        }\n\n        if (is_null(self::$utc)) {\n            self::$utc = new \\DateTimeZone('UTC');\n        }\n\n        $val = \\DateTime::createFromFormat($platform->getDateTimeFormatString(), $value, self::$utc);\n\n        if (!$val) {\n            throw ConversionException::conversionFailed($value, $this->getName());\n        }\n\n        return $val;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/config/routing.yml",
    "content": "newscoop_newscoop:\n    resource: \"@NewscoopNewscoopBundle/Controller/\"\n    type: annotation\n    prefix: /\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/config/services.yml",
    "content": "services:\n    newscoop_newscoop.routing.loader.plugins:\n        class: Newscoop\\NewscoopBundle\\Routing\\PluginsLoader\n        arguments: [\"@newscoop.plugins.manager\", \"@service_container\"]\n        tags:\n            - { name: routing.loader }\n\n    newscoop_newscoop.doctrine.event_dispatcher_proxy:\n        class: Newscoop\\Doctrine\\EventDispatcherProxy\n        arguments: [\"@event_dispatcher\"]\n        tags:\n            - { name: doctrine.event_subscriber, connection: default }\n\n    newscoop_newscoop.menu_builder:\n        class: %newscoop_newscoop.menu_builder.class%\n        arguments: [\"@knp_menu.factory\", \"@service_container\"]\n\n    newscoop_newscoop.menu.main:\n        class: Knp\\Menu\\MenuItem # the service definition requires setting the class\n        factory_service: newscoop_newscoop.menu_builder\n        factory_method: mainMenu\n        tags:\n            - { name: knp_menu.menu, alias: main } # The alias is what is used to retrieve the menu\n\n    newscoop_newscoop.menu.main_modern:\n        class: Knp\\Menu\\MenuItem # the service definition requires setting the class\n        factory_service: newscoop_newscoop.menu_builder\n        factory_method: mainMenu\n        arguments:\n            - true\n        tags:\n            - { name: knp_menu.menu, alias: main_modern } # The alias is what is used to retrieve the menu\n\n    newscoop_newscoop.menu.breadcrumb:\n        class: Knp\\Menu\\MenuItem # the service definition requires setting the class\n        factory_service: newscoop_newscoop.menu_builder\n        factory_method: mainBreadcrumb\n        tags:\n            - { name: knp_menu.menu, alias: breadcrumb } # The alias is what is used to retrieve the menu\n\n    newscoop_newscoop.twig.newscoop_extension:\n        class: Newscoop\\NewscoopBundle\\Twig\\NewscoopExtension\n        arguments:\n            - @service_container\n        tags:\n            - { name: twig.extension }\n\n    newscoop_newscoop.twig.include_as_verbatim_extension:\n        class: Newscoop\\NewscoopBundle\\Twig\\IncludeAsVerbatimExtension\n        tags:\n            - { name: twig.extension }\n\n    newscoop_newscoop.password_encoder:\n        class: Newscoop\\NewscoopBundle\\Security\\Encoder\\NewscoopPasswordEncoder\n\n    newscoop_newscoop.security.authentication.success_handler:\n        class: %newscoop_newscoop.security.authentication.success_handler.class%\n        public: false\n        arguments:  ['@security.http_utils', {}, '@auth.adapter', '@em', '@user']\n\n    newscoop_newscoop.security.authentication.frontend.success_handler:\n        class: %newscoop_newscoop.security.authentication.frontend.success_handler.class%\n        public: true\n        arguments:  ['@security.http_utils', {}, '@auth.adapter', '@user']\n\n    newscoop_newscoop.security.logout.success_handler:\n        class: %newscoop_newscoop.security.logout.success_handler.class%\n        public: false\n        arguments:  ['@security.http_utils', '/', '@security.context']\n\n    newscoop_newscoop.security.frontend.logout.success_handler:\n        class: %newscoop_newscoop.security.frontend.logout.success_handler.class%\n        public: false\n        arguments:  ['@security.http_utils', '/', '@security.context']\n\n    newscoop_newscoop.security.oauth.success_handler:\n        class: %newscoop_newscoop.security.oauth.success_handler.class%\n        public: false\n        arguments:  ['@security.http_utils', {}, '@auth.adapter', '@user']\n\n    newscoop_newscoop.security.oauth.logout.success_handler:\n        class: %newscoop_newscoop.security.oauth.logout.success_handler.class%\n        arguments:  ['@security.http_utils', '@security.context']\n\n    newscoop_newscoop.publication_service:\n        class: Newscoop\\Services\\PublicationService\n        arguments:  [\"@em\", \"@newscoop.cache\"]\n\n    newscoop_newscoop.listener.publication:\n        class: Newscoop\\NewscoopBundle\\EventListener\\PublicationListener\n        arguments:  [\"@newscoop_newscoop.publication_service\"]\n        tags:\n            - { name: kernel.event_listener, event: kernel.request, method: onRequest, priority: 7 }\n\n    newscoop.publication_service:\n        alias: newscoop_newscoop.publication_service\n\n    newscoop_newscoop.issue_service:\n        class: Newscoop\\Services\\IssueService\n        arguments:  [\"@em\", \"@newscoop_newscoop.publication_service\", \"@newscoop.cache\"]\n\n    newscoop_newscoop.listener.locale_listener:\n        class: Newscoop\\NewscoopBundle\\EventListener\\LocaleListener\n        arguments: [\"@newscoop.cache\", \"@em\", \"@translator\"]\n        tags:\n            - { name: kernel.event_listener, event: kernel.request, method: onRequest }\n            - { name: kernel.event_listener, event: kernel.response, method: onResponse }\n\n    newscoop_newscoop.listener.issue:\n        class: Newscoop\\NewscoopBundle\\EventListener\\IssueListener\n        arguments:  [\"@newscoop_newscoop.issue_service\"]\n        tags:\n            - { name: kernel.event_listener, event: kernel.request, method: onRequest }\n\n    newscoop_newscoop.listener.route_listener:\n        class: Newscoop\\NewscoopBundle\\EventListener\\RouteListener\n        tags:\n            - { name: kernel.event_listener, event: kernel.request, method: onRequest, priority: 30 }\n        arguments:  ['@newscoop.listpaginator.service']\n\n    newscoop_newscoop.listener.no_cache_listener:\n        class: Newscoop\\NewscoopBundle\\EventListener\\NoCacheListener\n        tags:\n            - { name: kernel.event_listener, event: kernel.response, method: onResponse }\n\n    newscoop_newscoop.translation_listener:\n        class: Newscoop\\NewscoopBundle\\EventListener\\OldPluginsTranslationListener\n        arguments:  ['@translator', '@newscoop.cache', '@newscoop.plugins.service']\n        tags:\n            - { name: kernel.event_listener, event: kernel.request, method: onRequest }\n\n    system_preferences_service:\n        alias: preferences\n\n    newscoop_newscoop.session.storage:\n        class:     %newscoop_newscoop.session.storage.class%\n        arguments: [%session.storage.options%, \"@system_preferences_service\"]\n\n    newscoop_newscoop.criteria.users:\n        class: Newscoop\\User\\UserCriteria\n\n    newscoop_newscoop.template_lists.users:\n        class:      Newscoop\\TemplateList\\UsersList\n        arguments:  [\"@newscoop_newscoop.criteria.users\"]\n        tags:\n            -  { name: newscoop.template_lists }\n\n    newscoop_newscoop.list_objects.listener:\n        class: Newscoop\\NewscoopBundle\\EventListener\\ListObjectsListener\n        tags:\n          - { name: kernel.event_listener, event: newscoop.listobjects.register, method: registerObjects }\n\n    newscoop_newscoop.themes_service:\n        class: Newscoop\\Services\\ThemesService\n        arguments:  [\"@newscoop_newscoop.issue_service\", \"@newscoop.cache\", \"@newscoop_newscoop.publication_service\", \"@em\"]\n\n    newscoop_newscoop.issue_service:\n        class: Newscoop\\Services\\IssueService\n        arguments:  [\"@em\", \"@newscoop_newscoop.publication_service\", \"@newscoop.cache\"]\n\n    newscoop_newscoop.themes_service:\n        class: Newscoop\\Services\\ThemesService\n        arguments:  [\"@newscoop_newscoop.issue_service\", \"@newscoop.cache\", \"@newscoop_newscoop.publication_service\", \"@em\"]\n\n    newscoop_newscoop.listener.userip:\n        class: Newscoop\\NewscoopBundle\\EventListener\\UserIpListener\n        arguments:  [\"@user\"]\n        tags:\n            - { name: kernel.event_listener, event: kernel.request, method: onRequest }\n\n    newscoop_newscoop.article_service:\n        class: Newscoop\\Services\\ArticleService\n        arguments:  [\"@em\"]\n\n    newscoop_newscoop.topic_service:\n        class: Newscoop\\NewscoopBundle\\Services\\TopicService\n        arguments:  [\"@em\", \"@dispatcher\"]\n\n    newscoop_newscoop.listener.article:\n        class: Newscoop\\NewscoopBundle\\EventListener\\ArticleListener\n        arguments:  [\"@newscoop_newscoop.article_service\"]\n        tags:\n            - { name: kernel.event_listener, event: kernel.request, method: onRequest }\n\n    newscoop_newscoop.listener.access_denied:\n        class: Newscoop\\NewscoopBundle\\EventListener\\AccessDeniedExceptionListener\n        arguments:  [\"@service_container\"]\n        tags:\n            - { name: kernel.event_listener, event: kernel.exception, method: onKernelException }\n\n    newscoop_newscoop.simple_user_provider:\n        class: Newscoop\\NewscoopBundle\\Security\\User\\SimpleUserProvider\n        arguments: [\"@em\", %simple_security%]\n\nparameters:\n    smarty.extension.routing.class: \"Newscoop\\\\NewscoopBundle\\\\Extension\\\\RoutingExtension\"\n    smarty.extension.assetic.dynamic.class: \"Newscoop\\\\NewscoopBundle\\\\Extension\\\\DynamicAsseticExtension\"\n    smarty.extension.assetic.static.class: \"Newscoop\\\\NewscoopBundle\\\\Extension\\\\StaticAsseticExtension\"\n    newscoop_newscoop.security.authentication.success_handler.class: \"Newscoop\\\\NewscoopBundle\\\\Security\\\\Http\\\\Authentication\\\\AuthenticationSuccessHandler\"\n    newscoop_newscoop.security.authentication.frontend.success_handler.class: \"Newscoop\\\\NewscoopBundle\\\\Security\\\\Http\\\\Authentication\\\\AuthenticationFrontendSuccessHandler\"\n    security.authentication.failure_handler.class: \"Newscoop\\\\NewscoopBundle\\\\Security\\\\Http\\\\Authentication\\\\AuthenticationFailedHandler\"\n    newscoop_newscoop.security.logout.success_handler.class: \"Newscoop\\\\NewscoopBundle\\\\Security\\\\Http\\\\Authentication\\\\LogoutSuccessHandler\"\n    newscoop_newscoop.security.frontend.logout.success_handler.class: \"Newscoop\\\\NewscoopBundle\\\\Security\\\\Http\\\\Authentication\\\\FrontendLogoutSuccessHandler\"\n    security.authentication.listener.form.class: \"Newscoop\\\\NewscoopBundle\\\\EventListener\\\\CaptchaUsernamePasswordFormAuthenticationListener\"\n    newscoop_newscoop.menu_builder.class: \"Newscoop\\\\NewscoopBundle\\\\Menu\\\\Builder\"\n    newscoop_newscoop.session.storage.class: \"Newscoop\\\\NewscoopBundle\\\\Session\\\\Storage\"\n    ewz_recaptcha.form.type.class: \"Newscoop\\\\NewscoopBundle\\\\Form\\\\Type\\\\RecaptchaType\"\n    security.authentication.rememberme.services.simplehash.class: \"Newscoop\\\\NewscoopBundle\\\\Security\\\\Http\\\\Authentication\\\\InteractiveLogin\"\n    newscoop_newscoop.security.oauth.success_handler.class: \"Newscoop\\\\NewscoopBundle\\\\Security\\\\Http\\\\Authentication\\\\OAuthSuccessHandler\"\n    newscoop_newscoop.security.oauth.logout.success_handler.class: \"Newscoop\\\\NewscoopBundle\\\\Security\\\\Http\\\\Authentication\\\\OAuthLogoutSuccessHandler\"\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/doc/index.rst",
    "content": ""
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/css/DT_bootstrap.css",
    "content": "div.dataTables_length label {\n    font-weight: normal;\n    float: left;\n    text-align: left;\n}\n\ndiv.dataTables_length select {\n    width: 75px;\n}\n\ndiv.dataTables_filter label {\n    font-weight: normal;\n    float: right;\n}\n\ndiv.dataTables_filter input {\n    width: 16em;\n}\n\ndiv.dataTables_info {\n    padding-top: 8px;\n}\n\ndiv.dataTables_paginate {\n    float: right;\n    margin: 0;\n}\n\ndiv.dataTables_paginate ul.pagination {\n    margin: 2px;\n}\n\ntable.dataTable,\ntable.dataTable td,\ntable.dataTable th {\n    -webkit-box-sizing: content-box;\n    -moz-box-sizing: content-box;\n    box-sizing: content-box;\n}\n\n\ntable.dataTable {\n    clear: both;\n    margin-top: 6px !important;\n    margin-bottom: 6px !important;\n    max-width: none !important;\n}\n\ntable.dataTable thead .sorting,\ntable.dataTable thead .sorting_asc,\ntable.dataTable thead .sorting_desc,\ntable.dataTable thead .sorting_asc_disabled,\ntable.dataTable thead .sorting_desc_disabled {\n    cursor: pointer;\n}\n\ntable.dataTable thead .sorting { background: url('../images/sort_both.png') no-repeat center right; }\ntable.dataTable thead .sorting_asc { background: url('../images/sort_asc.png') no-repeat center right; }\ntable.dataTable thead .sorting_desc { background: url('../images/sort_desc.png') no-repeat center right; }\n\ntable.dataTable thead .sorting_asc_disabled { background: url('../images/sort_asc_disabled.png') no-repeat center right; }\ntable.dataTable thead .sorting_desc_disabled { background: url('../images/sort_desc_disabled.png') no-repeat center right; }\n\ntable.dataTable th:active {\n    outline: none;\n}\n\n/* Scrolling */\ndiv.dataTables_scrollHead table {\n    margin-bottom: 0 !important;\n    border-bottom-left-radius: 0;\n    border-bottom-right-radius: 0;\n}\n\ndiv.dataTables_scrollHead table thead tr:last-child th:first-child,\ndiv.dataTables_scrollHead table thead tr:last-child td:first-child {\n    border-bottom-left-radius: 0 !important;\n    border-bottom-right-radius: 0 !important;\n}\n\ndiv.dataTables_scrollBody table {\n    border-top: none;\n    margin-bottom: 0 !important;\n}\n\ndiv.dataTables_scrollBody tbody tr:first-child th,\ndiv.dataTables_scrollBody tbody tr:first-child td {\n    border-top: none;\n}\n\ndiv.dataTables_scrollFoot table {\n    border-top: none;\n}\n\n\n\n\n/*\n * TableTools styles\n */\n.table tbody tr.active td,\n.table tbody tr.active th {\n    background-color: #08C;\n    color: white;\n}\n\n.table tbody tr.active:hover td,\n.table tbody tr.active:hover th {\n    background-color: #0075b0 !important;\n}\n\n.table tbody tr.active a {\n    color: white;\n}\n\n.table-striped tbody tr.active:nth-child(odd) td,\n.table-striped tbody tr.active:nth-child(odd) th {\n    background-color: #017ebc;\n}\n\ntable.DTTT_selectable tbody tr {\n    cursor: pointer;\n}\n\ndiv.DTTT .btn {\n    color: #333 !important;\n    font-size: 12px;\n}\n\ndiv.DTTT .btn:hover {\n    text-decoration: none !important;\n}\n\nul.DTTT_dropdown.dropdown-menu {\n  z-index: 2003;\n}\n\nul.DTTT_dropdown.dropdown-menu a {\n    color: #333 !important; /* needed only when demo_page.css is included */\n}\n\nul.DTTT_dropdown.dropdown-menu li {\n    position: relative;\n}\n\nul.DTTT_dropdown.dropdown-menu li:hover a {\n    background-color: #0088cc;\n    color: white !important;\n}\n\ndiv.DTTT_collection_background {\n    z-index: 2002;  \n}\n\n/* TableTools information display */\ndiv.DTTT_print_info.modal {\n    height: 150px;\n    margin-top: -75px;\n    text-align: center;\n}\n\ndiv.DTTT_print_info h6 {\n    font-weight: normal;\n    font-size: 28px;\n    line-height: 28px;\n    margin: 1em;\n}\n\ndiv.DTTT_print_info p {\n    font-size: 14px;\n    line-height: 20px;\n}\n\n\n\n/*\n * FixedColumns styles\n */\ndiv.DTFC_LeftHeadWrapper table,\ndiv.DTFC_LeftFootWrapper table,\ndiv.DTFC_RightHeadWrapper table,\ndiv.DTFC_RightFootWrapper table,\ntable.DTFC_Cloned tr.even {\n    background-color: white;\n}\n \ndiv.DTFC_RightHeadWrapper table ,\ndiv.DTFC_LeftHeadWrapper table {\n    margin-bottom: 0 !important;\n    border-top-right-radius: 0 !important;\n    border-bottom-left-radius: 0 !important;\n    border-bottom-right-radius: 0 !important;\n}\n \ndiv.DTFC_RightHeadWrapper table thead tr:last-child th:first-child,\ndiv.DTFC_RightHeadWrapper table thead tr:last-child td:first-child,\ndiv.DTFC_LeftHeadWrapper table thead tr:last-child th:first-child,\ndiv.DTFC_LeftHeadWrapper table thead tr:last-child td:first-child {\n    border-bottom-left-radius: 0 !important;\n    border-bottom-right-radius: 0 !important;\n}\n \ndiv.DTFC_RightBodyWrapper table,\ndiv.DTFC_LeftBodyWrapper table {\n    border-top: none;\n    margin-bottom: 0 !important;\n}\n \ndiv.DTFC_RightBodyWrapper tbody tr:first-child th,\ndiv.DTFC_RightBodyWrapper tbody tr:first-child td,\ndiv.DTFC_LeftBodyWrapper tbody tr:first-child th,\ndiv.DTFC_LeftBodyWrapper tbody tr:first-child td {\n    border-top: none;\n}\n \ndiv.DTFC_RightFootWrapper table,\ndiv.DTFC_LeftFootWrapper table {\n    border-top: none;\n}\n\n\ndiv.dataTables_length label\n{\n  vertical-align: middle;\n}\n \ndiv.dataTables_length select\n{\n  min-width: 75px;\n}\n \ndiv.dataTables_filter label\n{\n  vertical-align: middle;\n}\n \ndiv.dataTables_filter\n{\n  margin-bottom: 5px !important;\n}\n \ndiv.dataTables_length\n{\n  margin-bottom: 5px !important;\n}\n \n \ndiv.dataTables_info\n{\n  padding-top: 8px;\n}\n \ndiv.dataTables_paginate\n{\n  float: right;\n  margin: 0;\n}\n \n  div.dataTables_paginate ul.pagination\n  {\n    margin: 2px;\n  }\n \ntable.table\n{\n  clear: both;\n  margin-top: 6px !important;\n  margin-bottom: 6px !important;\n  max-width: none !important;\n}\n \n  table.table thead .sorting,\n  table.table thead .sorting_asc,\n  table.table thead .sorting_desc,\n  table.table thead .sorting_asc_disabled,\n  table.table thead .sorting_desc_disabled\n  {\n    cursor: pointer;\n  }\n \n  table.table thead .sorting\n  {\n    background: url('../images/sort_both.png') no-repeat center right;\n  }\n \n  table.table thead .sorting_asc\n  {\n    background: url('../images/sort_asc.png') no-repeat center right;\n  }\n \n  table.table thead .sorting_desc\n  {\n    background: url('../images/sort_desc.png') no-repeat center right;\n  }\n \n  table.table thead .sorting_asc_disabled\n  {\n    background: url('../images/sort_asc_disabled.png') no-repeat center right;\n  }\n \n  table.table thead .sorting_desc_disabled\n  {\n    background: url('../images/sort_desc_disabled.png') no-repeat center right;\n  }\n \n  table.table thead .sorting,\n  table.table thead .sorting_asc,\n  table.table thead .sorting_desc,\n  table.table thead .sorting_asc_disabled,\n  table.table thead .sorting_desc_disabled\n  {\n    padding-right: 20px;\n  }\n \n \ntable.dataTable th:active\n{\n  outline: none;\n}\n \n/* Scrolling */\ndiv.dataTables_scrollHead table\n{\n  margin-bottom: 0 !important;\n  border-bottom-left-radius: 0;\n  border-bottom-right-radius: 0;\n}\n \n  div.dataTables_scrollHead table thead tr:last-child th:first-child,\n  div.dataTables_scrollHead table thead tr:last-child td:first-child\n  {\n    border-bottom-left-radius: 0 !important;\n    border-bottom-right-radius: 0 !important;\n  }\n \ndiv.dataTables_scrollBody table\n{\n  border-top: none;\n  margin-bottom: 0 !important;\n}\n \ndiv.dataTables_scrollBody tbody tr:first-child th,\ndiv.dataTables_scrollBody tbody tr:first-child td\n{\n  border-top: none;\n}\n \ndiv.dataTables_scrollFoot table\n{\n  border-top: none;\n}\n \n \n \n \n/*\n * TableTools styles\n */\n.table tbody tr.active td,\n.table tbody tr.active th\n{\n  background-color: #08C;\n  color: white;\n}\n \n.table tbody tr.active:hover td,\n.table tbody tr.active:hover th\n{\n  background-color: #0075b0 !important;\n}\n \n.table-striped tbody tr.active:nth-child(odd) td,\n.table-striped tbody tr.active:nth-child(odd) th\n{\n  background-color: #017ebc;\n}\n \ntable.DTTT_selectable tbody tr\n{\n  cursor: pointer;\n}\n \ndiv.DTTT .btn\n{\n  color: #333 !important;\n  font-size: 12px;\n}\n \n  div.DTTT .btn:hover\n  {\n    text-decoration: none !important;\n  }\n \nul.DTTT_dropdown.dropdown-menu\n{\n  z-index: 2003;\n}\n \n \n  ul.DTTT_dropdown.dropdown-menu a\n  {\n    color: #333 !important; /* needed only when demo_page.css is included */\n  }\n \n  ul.DTTT_dropdown.dropdown-menu li\n  {\n    position: relative;\n  }\n \n    ul.DTTT_dropdown.dropdown-menu li:hover a\n    {\n      background-color: #0088cc;\n      color: white !important;\n    }\n \n/* TableTools information display */\ndiv.DTTT_print_info.modal\n{\n  height: 150px;\n  margin-top: -75px;\n  text-align: center;\n}\n \ndiv.DTTT_print_info h6\n{\n  font-weight: normal;\n  font-size: 28px;\n  line-height: 28px;\n  margin: 1em;\n}\n \ndiv.DTTT_print_info p\n{\n  font-size: 14px;\n  line-height: 20px;\n}\n \n \n \n/*\n * FixedColumns styles\n */\ndiv.DTFC_LeftHeadWrapper table,\ndiv.DTFC_LeftFootWrapper table,\ndiv.DTFC_RightHeadWrapper table,\ndiv.DTFC_RightFootWrapper table,\ntable.DTFC_Cloned tr.even\n{\n  background-color: white;\n}\n \ndiv.DTFC_RightHeadWrapper table,\ndiv.DTFC_LeftHeadWrapper table\n{\n  margin-bottom: 0 !important;\n  border-top-right-radius: 0 !important;\n  border-bottom-left-radius: 0 !important;\n  border-bottom-right-radius: 0 !important;\n}\n \n  div.DTFC_RightHeadWrapper table thead tr:last-child th:first-child,\n  div.DTFC_RightHeadWrapper table thead tr:last-child td:first-child,\n  div.DTFC_LeftHeadWrapper table thead tr:last-child th:first-child,\n  div.DTFC_LeftHeadWrapper table thead tr:last-child td:first-child\n  {\n    border-bottom-left-radius: 0 !important;\n    border-bottom-right-radius: 0 !important;\n  }\n \ndiv.DTFC_RightBodyWrapper table,\ndiv.DTFC_LeftBodyWrapper table\n{\n  border-top: none;\n  margin-bottom: 0 !important;\n}\n \ndiv.DTFC_RightBodyWrapper tbody tr:first-child th,\ndiv.DTFC_RightBodyWrapper tbody tr:first-child td,\ndiv.DTFC_LeftBodyWrapper tbody tr:first-child th,\ndiv.DTFC_LeftBodyWrapper tbody tr:first-child td\n{\n  border-top: none;\n}\n \ndiv.DTFC_RightFootWrapper table,\ndiv.DTFC_LeftFootWrapper table\n{\n  border-top: none;\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/css/bootstrap-custom-comments.css",
    "content": "/*!\n * Bootstrap v3.3.2 (http://getbootstrap.com)\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n\n/*!\n * Generated using the Bootstrap Customizer (http://getbootstrap.com/customize/?id=f65e7bb50d0b5e543cee)\n * Config saved to config.json and https://gist.github.com/f65e7bb50d0b5e543cee\n */\n/*! normalize.css v3.0.2 | MIT License | git.io/normalize */\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n  color: inherit;\n  font: inherit;\n  margin: 0;\n}\nbutton {\n  overflow: visible;\n}\nbutton,\nselect {\n  text-transform: none;\n}\nbutton,\nhtml input[type=\"button\"],\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n  -webkit-appearance: button;\n  cursor: pointer;\n}\nbutton[disabled],\nhtml input[disabled] {\n  cursor: default;\n}\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n  border: 0;\n  padding: 0;\n}\ninput {\n  line-height: normal;\n}\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n  -webkit-box-sizing: border-box;\n     -moz-box-sizing: border-box;\n          box-sizing: border-box;\n  padding: 0;\n}\n.img-responsive {\n  display: block;\n  max-width: 100%;\n  height: auto;\n}\n.img-rounded {\n  border-radius: 6px;\n}\n.img-thumbnail {\n  padding: 4px;\n  line-height: 1.42857143;\n  background-color: #ffffff;\n  border: 1px solid #dddddd;\n  border-radius: 4px;\n  -webkit-transition: all 0.2s ease-in-out;\n  -o-transition: all 0.2s ease-in-out;\n  transition: all 0.2s ease-in-out;\n  display: inline-block;\n  max-width: 100%;\n  height: auto;\n}\n.img-circle {\n  border-radius: 50%;\n}\nhr {\n  margin-top: 20px;\n  margin-bottom: 20px;\n  border: 0;\n  border-top: 1px solid #eeeeee;\n}\n.sr-only {\n  position: absolute;\n  width: 1px;\n  height: 1px;\n  margin: -1px;\n  padding: 0;\n  overflow: hidden;\n  clip: rect(0, 0, 0, 0);\n  border: 0;\n}\n.sr-only-focusable:active,\n.sr-only-focusable:focus {\n  position: static;\n  width: auto;\n  height: auto;\n  margin: 0;\n  overflow: visible;\n  clip: auto;\n}\n.btn {\n  display: inline-block;\n  margin-bottom: 0;\n  font-weight: normal;\n  text-align: center;\n  vertical-align: middle;\n  -ms-touch-action: manipulation;\n      touch-action: manipulation;\n  cursor: pointer;\n  background-image: none;\n  border: 1px solid transparent;\n  white-space: nowrap;\n  padding: 6px 12px;\n  font-size: 14px;\n  line-height: 1.42857143;\n  border-radius: 4px;\n  -webkit-user-select: none;\n  -moz-user-select: none;\n  -ms-user-select: none;\n  user-select: none;\n}\n.btn:focus,\n.btn:active:focus,\n.btn.active:focus,\n.btn.focus,\n.btn:active.focus,\n.btn.active.focus {\n  outline: thin dotted;\n  outline: 5px auto -webkit-focus-ring-color;\n  outline-offset: -2px;\n}\n.btn:hover,\n.btn:focus,\n.btn.focus {\n  color: #333333;\n  text-decoration: none;\n}\n.btn:active,\n.btn.active {\n  outline: 0;\n  background-image: none;\n  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn.disabled,\n.btn[disabled],\nfieldset[disabled] .btn {\n  cursor: not-allowed;\n  pointer-events: none;\n  opacity: 0.65;\n  filter: alpha(opacity=65);\n  -webkit-box-shadow: none;\n  box-shadow: none;\n}\n.btn-default {\n  color: #333333;\n  background-color: #ffffff;\n  border-color: #cccccc;\n}\n.btn-default:hover,\n.btn-default:focus,\n.btn-default.focus,\n.btn-default:active,\n.btn-default.active,\n.open > .dropdown-toggle.btn-default {\n  color: #333333;\n  background-color: #e6e6e6;\n  border-color: #adadad;\n}\n.btn-default:active,\n.btn-default.active,\n.open > .dropdown-toggle.btn-default {\n  background-image: none;\n}\n.btn-default.disabled,\n.btn-default[disabled],\nfieldset[disabled] .btn-default,\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus,\n.btn-default.disabled:active,\n.btn-default[disabled]:active,\nfieldset[disabled] .btn-default:active,\n.btn-default.disabled.active,\n.btn-default[disabled].active,\nfieldset[disabled] .btn-default.active {\n  background-color: #ffffff;\n  border-color: #cccccc;\n}\n.btn-default .badge {\n  color: #ffffff;\n  background-color: #333333;\n}\n.btn-primary {\n  color: #ffffff;\n  background-color: #337ab7;\n  border-color: #2e6da4;\n}\n.btn-primary:hover,\n.btn-primary:focus,\n.btn-primary.focus,\n.btn-primary:active,\n.btn-primary.active,\n.open > .dropdown-toggle.btn-primary {\n  color: #ffffff;\n  background-color: #286090;\n  border-color: #204d74;\n}\n.btn-primary:active,\n.btn-primary.active,\n.open > .dropdown-toggle.btn-primary {\n  background-image: none;\n}\n.btn-primary.disabled,\n.btn-primary[disabled],\nfieldset[disabled] .btn-primary,\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus,\n.btn-primary.disabled:active,\n.btn-primary[disabled]:active,\nfieldset[disabled] .btn-primary:active,\n.btn-primary.disabled.active,\n.btn-primary[disabled].active,\nfieldset[disabled] .btn-primary.active {\n  background-color: #337ab7;\n  border-color: #2e6da4;\n}\n.btn-primary .badge {\n  color: #337ab7;\n  background-color: #ffffff;\n}\n.btn-success {\n  color: #ffffff;\n  background-color: #5cb85c;\n  border-color: #4cae4c;\n}\n.btn-success:hover,\n.btn-success:focus,\n.btn-success.focus,\n.btn-success:active,\n.btn-success.active,\n.open > .dropdown-toggle.btn-success {\n  color: #ffffff;\n  background-color: #449d44;\n  border-color: #398439;\n}\n.btn-success:active,\n.btn-success.active,\n.open > .dropdown-toggle.btn-success {\n  background-image: none;\n}\n.btn-success.disabled,\n.btn-success[disabled],\nfieldset[disabled] .btn-success,\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus,\n.btn-success.disabled:active,\n.btn-success[disabled]:active,\nfieldset[disabled] .btn-success:active,\n.btn-success.disabled.active,\n.btn-success[disabled].active,\nfieldset[disabled] .btn-success.active {\n  background-color: #5cb85c;\n  border-color: #4cae4c;\n}\n.btn-success .badge {\n  color: #5cb85c;\n  background-color: #ffffff;\n}\n.btn-info {\n  color: #ffffff;\n  background-color: #5bc0de;\n  border-color: #46b8da;\n}\n.btn-info:hover,\n.btn-info:focus,\n.btn-info.focus,\n.btn-info:active,\n.btn-info.active,\n.open > .dropdown-toggle.btn-info {\n  color: #ffffff;\n  background-color: #31b0d5;\n  border-color: #269abc;\n}\n.btn-info:active,\n.btn-info.active,\n.open > .dropdown-toggle.btn-info {\n  background-image: none;\n}\n.btn-info.disabled,\n.btn-info[disabled],\nfieldset[disabled] .btn-info,\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus,\n.btn-info.disabled:active,\n.btn-info[disabled]:active,\nfieldset[disabled] .btn-info:active,\n.btn-info.disabled.active,\n.btn-info[disabled].active,\nfieldset[disabled] .btn-info.active {\n  background-color: #5bc0de;\n  border-color: #46b8da;\n}\n.btn-info .badge {\n  color: #5bc0de;\n  background-color: #ffffff;\n}\n.btn-warning {\n  color: #ffffff;\n  background-color: #f0ad4e;\n  border-color: #eea236;\n}\n.btn-warning:hover,\n.btn-warning:focus,\n.btn-warning.focus,\n.btn-warning:active,\n.btn-warning.active,\n.open > .dropdown-toggle.btn-warning {\n  color: #ffffff;\n  background-color: #ec971f;\n  border-color: #d58512;\n}\n.btn-warning:active,\n.btn-warning.active,\n.open > .dropdown-toggle.btn-warning {\n  background-image: none;\n}\n.btn-warning.disabled,\n.btn-warning[disabled],\nfieldset[disabled] .btn-warning,\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus,\n.btn-warning.disabled:active,\n.btn-warning[disabled]:active,\nfieldset[disabled] .btn-warning:active,\n.btn-warning.disabled.active,\n.btn-warning[disabled].active,\nfieldset[disabled] .btn-warning.active {\n  background-color: #f0ad4e;\n  border-color: #eea236;\n}\n.btn-warning .badge {\n  color: #f0ad4e;\n  background-color: #ffffff;\n}\n.btn-danger {\n  color: #ffffff;\n  background-color: #d9534f;\n  border-color: #d43f3a;\n}\n.btn-danger:hover,\n.btn-danger:focus,\n.btn-danger.focus,\n.btn-danger:active,\n.btn-danger.active,\n.open > .dropdown-toggle.btn-danger {\n  color: #ffffff;\n  background-color: #c9302c;\n  border-color: #ac2925;\n}\n.btn-danger:active,\n.btn-danger.active,\n.open > .dropdown-toggle.btn-danger {\n  background-image: none;\n}\n.btn-danger.disabled,\n.btn-danger[disabled],\nfieldset[disabled] .btn-danger,\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus,\n.btn-danger.disabled:active,\n.btn-danger[disabled]:active,\nfieldset[disabled] .btn-danger:active,\n.btn-danger.disabled.active,\n.btn-danger[disabled].active,\nfieldset[disabled] .btn-danger.active {\n  background-color: #d9534f;\n  border-color: #d43f3a;\n}\n.btn-danger .badge {\n  color: #d9534f;\n  background-color: #ffffff;\n}\n.btn-link {\n  color: #337ab7;\n  font-weight: normal;\n  border-radius: 0;\n}\n.btn-link,\n.btn-link:active,\n.btn-link.active,\n.btn-link[disabled],\nfieldset[disabled] .btn-link {\n  background-color: transparent;\n  -webkit-box-shadow: none;\n  box-shadow: none;\n}\n.btn-link,\n.btn-link:hover,\n.btn-link:focus,\n.btn-link:active {\n  border-color: transparent;\n}\n.btn-link:hover,\n.btn-link:focus {\n  color: #23527c;\n  text-decoration: underline;\n  background-color: transparent;\n}\n.btn-link[disabled]:hover,\nfieldset[disabled] .btn-link:hover,\n.btn-link[disabled]:focus,\nfieldset[disabled] .btn-link:focus {\n  color: #777777;\n  text-decoration: none;\n}\n.btn-lg {\n  padding: 10px 16px;\n  font-size: 18px;\n  line-height: 1.3333333;\n  border-radius: 6px;\n}\n.btn-sm {\n  padding: 5px 10px;\n  font-size: 12px;\n  line-height: 1.5;\n  border-radius: 3px;\n}\n.btn-xs {\n  padding: 1px 5px;\n  font-size: 12px;\n  line-height: 1.5;\n  border-radius: 3px;\n}\n.btn-block {\n  display: block;\n  width: 100%;\n}\n.btn-block + .btn-block {\n  margin-top: 5px;\n}\ninput[type=\"submit\"].btn-block,\ninput[type=\"reset\"].btn-block,\ninput[type=\"button\"].btn-block {\n  width: 100%;\n}\n.clearfix:before,\n.clearfix:after {\n  content: \" \";\n  display: table;\n}\n.clearfix:after {\n  clear: both;\n}\n.center-block {\n  display: block;\n  margin-left: auto;\n  margin-right: auto;\n}\n.pull-right {\n  float: right !important;\n}\n.pull-left {\n  float: left !important;\n}\n.hide {\n  display: none !important;\n}\n.show {\n  display: block !important;\n}\n.invisible {\n  visibility: hidden;\n}\n.text-hide {\n  font: 0/0 a;\n  color: transparent;\n  text-shadow: none;\n  background-color: transparent;\n  border: 0;\n}\n.hidden {\n  display: none !important;\n  visibility: hidden !important;\n}\n.affix {\n  position: fixed;\n}\n@font-face {\n  font-family: 'Glyphicons Halflings';\n  src: url('../fonts/glyphicons-halflings-regular.eot');\n  src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg');\n}\n.glyphicon {\n  position: relative;\n  top: 1px;\n  display: inline-block;\n  font-family: 'Glyphicons Halflings';\n  font-style: normal;\n  font-weight: normal;\n  line-height: 1;\n  -webkit-font-smoothing: antialiased;\n  -moz-osx-font-smoothing: grayscale;\n}\n.glyphicon-asterisk:before {\n  content: \"\\2a\";\n}\n.glyphicon-plus:before {\n  content: \"\\2b\";\n}\n.glyphicon-euro:before,\n.glyphicon-eur:before {\n  content: \"\\20ac\";\n}\n.glyphicon-minus:before {\n  content: \"\\2212\";\n}\n.glyphicon-cloud:before {\n  content: \"\\2601\";\n}\n.glyphicon-envelope:before {\n  content: \"\\2709\";\n}\n.glyphicon-pencil:before {\n  content: \"\\270f\";\n}\n.glyphicon-glass:before {\n  content: \"\\e001\";\n}\n.glyphicon-music:before {\n  content: \"\\e002\";\n}\n.glyphicon-search:before {\n  content: \"\\e003\";\n}\n.glyphicon-heart:before {\n  content: \"\\e005\";\n}\n.glyphicon-star:before {\n  content: \"\\e006\";\n}\n.glyphicon-star-empty:before {\n  content: \"\\e007\";\n}\n.glyphicon-user:before {\n  content: \"\\e008\";\n}\n.glyphicon-film:before {\n  content: \"\\e009\";\n}\n.glyphicon-th-large:before {\n  content: \"\\e010\";\n}\n.glyphicon-th:before {\n  content: \"\\e011\";\n}\n.glyphicon-th-list:before {\n  content: \"\\e012\";\n}\n.glyphicon-ok:before {\n  content: \"\\e013\";\n}\n.glyphicon-remove:before {\n  content: \"\\e014\";\n}\n.glyphicon-zoom-in:before {\n  content: \"\\e015\";\n}\n.glyphicon-zoom-out:before {\n  content: \"\\e016\";\n}\n.glyphicon-off:before {\n  content: \"\\e017\";\n}\n.glyphicon-signal:before {\n  content: \"\\e018\";\n}\n.glyphicon-cog:before {\n  content: \"\\e019\";\n}\n.glyphicon-trash:before {\n  content: \"\\e020\";\n}\n.glyphicon-home:before {\n  content: \"\\e021\";\n}\n.glyphicon-file:before {\n  content: \"\\e022\";\n}\n.glyphicon-time:before {\n  content: \"\\e023\";\n}\n.glyphicon-road:before {\n  content: \"\\e024\";\n}\n.glyphicon-download-alt:before {\n  content: \"\\e025\";\n}\n.glyphicon-download:before {\n  content: \"\\e026\";\n}\n.glyphicon-upload:before {\n  content: \"\\e027\";\n}\n.glyphicon-inbox:before {\n  content: \"\\e028\";\n}\n.glyphicon-play-circle:before {\n  content: \"\\e029\";\n}\n.glyphicon-repeat:before {\n  content: \"\\e030\";\n}\n.glyphicon-refresh:before {\n  content: \"\\e031\";\n}\n.glyphicon-list-alt:before {\n  content: \"\\e032\";\n}\n.glyphicon-lock:before {\n  content: \"\\e033\";\n}\n.glyphicon-flag:before {\n  content: \"\\e034\";\n}\n.glyphicon-headphones:before {\n  content: \"\\e035\";\n}\n.glyphicon-volume-off:before {\n  content: \"\\e036\";\n}\n.glyphicon-volume-down:before {\n  content: \"\\e037\";\n}\n.glyphicon-volume-up:before {\n  content: \"\\e038\";\n}\n.glyphicon-qrcode:before {\n  content: \"\\e039\";\n}\n.glyphicon-barcode:before {\n  content: \"\\e040\";\n}\n.glyphicon-tag:before {\n  content: \"\\e041\";\n}\n.glyphicon-tags:before {\n  content: \"\\e042\";\n}\n.glyphicon-book:before {\n  content: \"\\e043\";\n}\n.glyphicon-bookmark:before {\n  content: \"\\e044\";\n}\n.glyphicon-print:before {\n  content: \"\\e045\";\n}\n.glyphicon-camera:before {\n  content: \"\\e046\";\n}\n.glyphicon-font:before {\n  content: \"\\e047\";\n}\n.glyphicon-bold:before {\n  content: \"\\e048\";\n}\n.glyphicon-italic:before {\n  content: \"\\e049\";\n}\n.glyphicon-text-height:before {\n  content: \"\\e050\";\n}\n.glyphicon-text-width:before {\n  content: \"\\e051\";\n}\n.glyphicon-align-left:before {\n  content: \"\\e052\";\n}\n.glyphicon-align-center:before {\n  content: \"\\e053\";\n}\n.glyphicon-align-right:before {\n  content: \"\\e054\";\n}\n.glyphicon-align-justify:before {\n  content: \"\\e055\";\n}\n.glyphicon-list:before {\n  content: \"\\e056\";\n}\n.glyphicon-indent-left:before {\n  content: \"\\e057\";\n}\n.glyphicon-indent-right:before {\n  content: \"\\e058\";\n}\n.glyphicon-facetime-video:before {\n  content: \"\\e059\";\n}\n.glyphicon-picture:before {\n  content: \"\\e060\";\n}\n.glyphicon-map-marker:before {\n  content: \"\\e062\";\n}\n.glyphicon-adjust:before {\n  content: \"\\e063\";\n}\n.glyphicon-tint:before {\n  content: \"\\e064\";\n}\n.glyphicon-edit:before {\n  content: \"\\e065\";\n}\n.glyphicon-share:before {\n  content: \"\\e066\";\n}\n.glyphicon-check:before {\n  content: \"\\e067\";\n}\n.glyphicon-move:before {\n  content: \"\\e068\";\n}\n.glyphicon-step-backward:before {\n  content: \"\\e069\";\n}\n.glyphicon-fast-backward:before {\n  content: \"\\e070\";\n}\n.glyphicon-backward:before {\n  content: \"\\e071\";\n}\n.glyphicon-play:before {\n  content: \"\\e072\";\n}\n.glyphicon-pause:before {\n  content: \"\\e073\";\n}\n.glyphicon-stop:before {\n  content: \"\\e074\";\n}\n.glyphicon-forward:before {\n  content: \"\\e075\";\n}\n.glyphicon-fast-forward:before {\n  content: \"\\e076\";\n}\n.glyphicon-step-forward:before {\n  content: \"\\e077\";\n}\n.glyphicon-eject:before {\n  content: \"\\e078\";\n}\n.glyphicon-chevron-left:before {\n  content: \"\\e079\";\n}\n.glyphicon-chevron-right:before {\n  content: \"\\e080\";\n}\n.glyphicon-plus-sign:before {\n  content: \"\\e081\";\n}\n.glyphicon-minus-sign:before {\n  content: \"\\e082\";\n}\n.glyphicon-remove-sign:before {\n  content: \"\\e083\";\n}\n.glyphicon-ok-sign:before {\n  content: \"\\e084\";\n}\n.glyphicon-question-sign:before {\n  content: \"\\e085\";\n}\n.glyphicon-info-sign:before {\n  content: \"\\e086\";\n}\n.glyphicon-screenshot:before {\n  content: \"\\e087\";\n}\n.glyphicon-remove-circle:before {\n  content: \"\\e088\";\n}\n.glyphicon-ok-circle:before {\n  content: \"\\e089\";\n}\n.glyphicon-ban-circle:before {\n  content: \"\\e090\";\n}\n.glyphicon-arrow-left:before {\n  content: \"\\e091\";\n}\n.glyphicon-arrow-right:before {\n  content: \"\\e092\";\n}\n.glyphicon-arrow-up:before {\n  content: \"\\e093\";\n}\n.glyphicon-arrow-down:before {\n  content: \"\\e094\";\n}\n.glyphicon-share-alt:before {\n  content: \"\\e095\";\n}\n.glyphicon-resize-full:before {\n  content: \"\\e096\";\n}\n.glyphicon-resize-small:before {\n  content: \"\\e097\";\n}\n.glyphicon-exclamation-sign:before {\n  content: \"\\e101\";\n}\n.glyphicon-gift:before {\n  content: \"\\e102\";\n}\n.glyphicon-leaf:before {\n  content: \"\\e103\";\n}\n.glyphicon-fire:before {\n  content: \"\\e104\";\n}\n.glyphicon-eye-open:before {\n  content: \"\\e105\";\n}\n.glyphicon-eye-close:before {\n  content: \"\\e106\";\n}\n.glyphicon-warning-sign:before {\n  content: \"\\e107\";\n}\n.glyphicon-plane:before {\n  content: \"\\e108\";\n}\n.glyphicon-calendar:before {\n  content: \"\\e109\";\n}\n.glyphicon-random:before {\n  content: \"\\e110\";\n}\n.glyphicon-comment:before {\n  content: \"\\e111\";\n}\n.glyphicon-magnet:before {\n  content: \"\\e112\";\n}\n.glyphicon-chevron-up:before {\n  content: \"\\e113\";\n}\n.glyphicon-chevron-down:before {\n  content: \"\\e114\";\n}\n.glyphicon-retweet:before {\n  content: \"\\e115\";\n}\n.glyphicon-shopping-cart:before {\n  content: \"\\e116\";\n}\n.glyphicon-folder-close:before {\n  content: \"\\e117\";\n}\n.glyphicon-folder-open:before {\n  content: \"\\e118\";\n}\n.glyphicon-resize-vertical:before {\n  content: \"\\e119\";\n}\n.glyphicon-resize-horizontal:before {\n  content: \"\\e120\";\n}\n.glyphicon-hdd:before {\n  content: \"\\e121\";\n}\n.glyphicon-bullhorn:before {\n  content: \"\\e122\";\n}\n.glyphicon-bell:before {\n  content: \"\\e123\";\n}\n.glyphicon-certificate:before {\n  content: \"\\e124\";\n}\n.glyphicon-thumbs-up:before {\n  content: \"\\e125\";\n}\n.glyphicon-thumbs-down:before {\n  content: \"\\e126\";\n}\n.glyphicon-hand-right:before {\n  content: \"\\e127\";\n}\n.glyphicon-hand-left:before {\n  content: \"\\e128\";\n}\n.glyphicon-hand-up:before {\n  content: \"\\e129\";\n}\n.glyphicon-hand-down:before {\n  content: \"\\e130\";\n}\n.glyphicon-circle-arrow-right:before {\n  content: \"\\e131\";\n}\n.glyphicon-circle-arrow-left:before {\n  content: \"\\e132\";\n}\n.glyphicon-circle-arrow-up:before {\n  content: \"\\e133\";\n}\n.glyphicon-circle-arrow-down:before {\n  content: \"\\e134\";\n}\n.glyphicon-globe:before {\n  content: \"\\e135\";\n}\n.glyphicon-wrench:before {\n  content: \"\\e136\";\n}\n.glyphicon-tasks:before {\n  content: \"\\e137\";\n}\n.glyphicon-filter:before {\n  content: \"\\e138\";\n}\n.glyphicon-briefcase:before {\n  content: \"\\e139\";\n}\n.glyphicon-fullscreen:before {\n  content: \"\\e140\";\n}\n.glyphicon-dashboard:before {\n  content: \"\\e141\";\n}\n.glyphicon-paperclip:before {\n  content: \"\\e142\";\n}\n.glyphicon-heart-empty:before {\n  content: \"\\e143\";\n}\n.glyphicon-link:before {\n  content: \"\\e144\";\n}\n.glyphicon-phone:before {\n  content: \"\\e145\";\n}\n.glyphicon-pushpin:before {\n  content: \"\\e146\";\n}\n.glyphicon-usd:before {\n  content: \"\\e148\";\n}\n.glyphicon-gbp:before {\n  content: \"\\e149\";\n}\n.glyphicon-sort:before {\n  content: \"\\e150\";\n}\n.glyphicon-sort-by-alphabet:before {\n  content: \"\\e151\";\n}\n.glyphicon-sort-by-alphabet-alt:before {\n  content: \"\\e152\";\n}\n.glyphicon-sort-by-order:before {\n  content: \"\\e153\";\n}\n.glyphicon-sort-by-order-alt:before {\n  content: \"\\e154\";\n}\n.glyphicon-sort-by-attributes:before {\n  content: \"\\e155\";\n}\n.glyphicon-sort-by-attributes-alt:before {\n  content: \"\\e156\";\n}\n.glyphicon-unchecked:before {\n  content: \"\\e157\";\n}\n.glyphicon-expand:before {\n  content: \"\\e158\";\n}\n.glyphicon-collapse-down:before {\n  content: \"\\e159\";\n}\n.glyphicon-collapse-up:before {\n  content: \"\\e160\";\n}\n.glyphicon-log-in:before {\n  content: \"\\e161\";\n}\n.glyphicon-flash:before {\n  content: \"\\e162\";\n}\n.glyphicon-log-out:before {\n  content: \"\\e163\";\n}\n.glyphicon-new-window:before {\n  content: \"\\e164\";\n}\n.glyphicon-record:before {\n  content: \"\\e165\";\n}\n.glyphicon-save:before {\n  content: \"\\e166\";\n}\n.glyphicon-open:before {\n  content: \"\\e167\";\n}\n.glyphicon-saved:before {\n  content: \"\\e168\";\n}\n.glyphicon-import:before {\n  content: \"\\e169\";\n}\n.glyphicon-export:before {\n  content: \"\\e170\";\n}\n.glyphicon-send:before {\n  content: \"\\e171\";\n}\n.glyphicon-floppy-disk:before {\n  content: \"\\e172\";\n}\n.glyphicon-floppy-saved:before {\n  content: \"\\e173\";\n}\n.glyphicon-floppy-remove:before {\n  content: \"\\e174\";\n}\n.glyphicon-floppy-save:before {\n  content: \"\\e175\";\n}\n.glyphicon-floppy-open:before {\n  content: \"\\e176\";\n}\n.glyphicon-credit-card:before {\n  content: \"\\e177\";\n}\n.glyphicon-transfer:before {\n  content: \"\\e178\";\n}\n.glyphicon-cutlery:before {\n  content: \"\\e179\";\n}\n.glyphicon-header:before {\n  content: \"\\e180\";\n}\n.glyphicon-compressed:before {\n  content: \"\\e181\";\n}\n.glyphicon-earphone:before {\n  content: \"\\e182\";\n}\n.glyphicon-phone-alt:before {\n  content: \"\\e183\";\n}\n.glyphicon-tower:before {\n  content: \"\\e184\";\n}\n.glyphicon-stats:before {\n  content: \"\\e185\";\n}\n.glyphicon-sd-video:before {\n  content: \"\\e186\";\n}\n.glyphicon-hd-video:before {\n  content: \"\\e187\";\n}\n.glyphicon-subtitles:before {\n  content: \"\\e188\";\n}\n.glyphicon-sound-stereo:before {\n  content: \"\\e189\";\n}\n.glyphicon-sound-dolby:before {\n  content: \"\\e190\";\n}\n.glyphicon-sound-5-1:before {\n  content: \"\\e191\";\n}\n.glyphicon-sound-6-1:before {\n  content: \"\\e192\";\n}\n.glyphicon-sound-7-1:before {\n  content: \"\\e193\";\n}\n.glyphicon-copyright-mark:before {\n  content: \"\\e194\";\n}\n.glyphicon-registration-mark:before {\n  content: \"\\e195\";\n}\n.glyphicon-cloud-download:before {\n  content: \"\\e197\";\n}\n.glyphicon-cloud-upload:before {\n  content: \"\\e198\";\n}\n.glyphicon-tree-conifer:before {\n  content: \"\\e199\";\n}\n.glyphicon-tree-deciduous:before {\n  content: \"\\e200\";\n}\n.glyphicon-cd:before {\n  content: \"\\e201\";\n}\n.glyphicon-save-file:before {\n  content: \"\\e202\";\n}\n.glyphicon-open-file:before {\n  content: \"\\e203\";\n}\n.glyphicon-level-up:before {\n  content: \"\\e204\";\n}\n.glyphicon-copy:before {\n  content: \"\\e205\";\n}\n.glyphicon-paste:before {\n  content: \"\\e206\";\n}\n.glyphicon-alert:before {\n  content: \"\\e209\";\n}\n.glyphicon-equalizer:before {\n  content: \"\\e210\";\n}\n.glyphicon-king:before {\n  content: \"\\e211\";\n}\n.glyphicon-queen:before {\n  content: \"\\e212\";\n}\n.glyphicon-pawn:before {\n  content: \"\\e213\";\n}\n.glyphicon-bishop:before {\n  content: \"\\e214\";\n}\n.glyphicon-knight:before {\n  content: \"\\e215\";\n}\n.glyphicon-baby-formula:before {\n  content: \"\\e216\";\n}\n.glyphicon-tent:before {\n  content: \"\\26fa\";\n}\n.glyphicon-blackboard:before {\n  content: \"\\e218\";\n}\n.glyphicon-bed:before {\n  content: \"\\e219\";\n}\n.glyphicon-apple:before {\n  content: \"\\f8ff\";\n}\n.glyphicon-erase:before {\n  content: \"\\e221\";\n}\n.glyphicon-hourglass:before {\n  content: \"\\231b\";\n}\n.glyphicon-lamp:before {\n  content: \"\\e223\";\n}\n.glyphicon-duplicate:before {\n  content: \"\\e224\";\n}\n.glyphicon-piggy-bank:before {\n  content: \"\\e225\";\n}\n.glyphicon-scissors:before {\n  content: \"\\e226\";\n}\n.glyphicon-bitcoin:before {\n  content: \"\\e227\";\n}\n.glyphicon-yen:before {\n  content: \"\\00a5\";\n}\n.glyphicon-ruble:before {\n  content: \"\\20bd\";\n}\n.glyphicon-scale:before {\n  content: \"\\e230\";\n}\n.glyphicon-ice-lolly:before {\n  content: \"\\e231\";\n}\n.glyphicon-ice-lolly-tasted:before {\n  content: \"\\e232\";\n}\n.glyphicon-education:before {\n  content: \"\\e233\";\n}\n.glyphicon-option-horizontal:before {\n  content: \"\\e234\";\n}\n.glyphicon-option-vertical:before {\n  content: \"\\e235\";\n}\n.glyphicon-menu-hamburger:before {\n  content: \"\\e236\";\n}\n.glyphicon-modal-window:before {\n  content: \"\\e237\";\n}\n.glyphicon-oil:before {\n  content: \"\\e238\";\n}\n.glyphicon-grain:before {\n  content: \"\\e239\";\n}\n.glyphicon-sunglasses:before {\n  content: \"\\e240\";\n}\n.glyphicon-text-size:before {\n  content: \"\\e241\";\n}\n.glyphicon-text-color:before {\n  content: \"\\e242\";\n}\n.glyphicon-text-background:before {\n  content: \"\\e243\";\n}\n.glyphicon-object-align-top:before {\n  content: \"\\e244\";\n}\n.glyphicon-object-align-bottom:before {\n  content: \"\\e245\";\n}\n.glyphicon-object-align-horizontal:before {\n  content: \"\\e246\";\n}\n.glyphicon-object-align-left:before {\n  content: \"\\e247\";\n}\n.glyphicon-object-align-vertical:before {\n  content: \"\\e248\";\n}\n.glyphicon-object-align-right:before {\n  content: \"\\e249\";\n}\n.glyphicon-triangle-right:before {\n  content: \"\\e250\";\n}\n.glyphicon-triangle-left:before {\n  content: \"\\e251\";\n}\n.glyphicon-triangle-bottom:before {\n  content: \"\\e252\";\n}\n.glyphicon-triangle-top:before {\n  content: \"\\e253\";\n}\n.glyphicon-console:before {\n  content: \"\\e254\";\n}\n.glyphicon-superscript:before {\n  content: \"\\e255\";\n}\n.glyphicon-subscript:before {\n  content: \"\\e256\";\n}\n.glyphicon-menu-left:before {\n  content: \"\\e257\";\n}\n.glyphicon-menu-right:before {\n  content: \"\\e258\";\n}\n.glyphicon-menu-down:before {\n  content: \"\\e259\";\n}\n.glyphicon-menu-up:before {\n  content: \"\\e260\";\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/css/bootstrap-custom.css",
    "content": "/* AES Bootstrap custom overwrite */\n\n.btn.disabled,\n.btn[disabled],\nfieldset[disabled] .btn {\n  opacity: 0.65;\n  filter: alpha(opacity=65);\n}\n\n.dropdown-menu button {\n  display: block;\n  padding: 4px 15px;\n  clear: both;\n  font-weight: 400;\n  line-height: 18px;\n  color: #333;\n  white-space: nowrap;\n  border: 0;\n  background-color: transparent;\n  width: 100%;\n  text-align: left;\n}\n\n.dropdown-menu button:hover {\n  color: #fff;\n  background-color: #007fb3;\n  cursor: default;\n}\n\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);\n  -webkit-box-shadow: 0 1px 0 #ffffff, inset 0 1px 0 #ffffff;\n  box-shadow: 0 1px 0 #ffffff, inset 0 1px 0 #ffffff;\n  border-radius: 2px;\n}\n\n.btn-default:active,\n.btn-primary:active,\n.btn-success:active,\n.btn-info:active,\n.btn-warning:active,\n.btn-danger:active,\n.btn-default.active,\n.btn-primary.active,\n.btn-success.active,\n.btn-info.active,\n.btn-warning.active,\n.btn-danger.active {\n  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n\n.btn-primary,\n.btn-danger {\n  -webkit-box-shadow: 0 1px 0 #ffffff, inset 0 1px 0 rgba(255, 255, 255, 0.3);\n  box-shadow: 0 1px 0 #ffffff, inset 0 1px 0 rgba(255, 255, 255, 0.3);\n}\n\n.btn {\n  font-size: 13px;\n  padding: 5px 12px;\n}\n\n.btn:active,\n.btn.active {\n  background-image: none;\n}\n\n.btn-default {\n  background-image: -webkit-linear-gradient(top, #f6f5f6 0%, #e8e5e8 100%);\n  background-image: -webkit-gradient(linear, left top, left bottom, from(#f6f5f6), to(#e8e5e8));\n  background-image: linear-gradient(to bottom, #f6f5f6 0%, #e8e5e8 100%);\n  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff6f5f6', endColorstr='#ffe8e5e8', GradientType=0);\n  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n  background-repeat: repeat-x;\n  border-color: #dedade;\n  text-shadow: 0 1px 0 #fff;\n  border-color: #cecece;\n}\n\n.btn-default:hover,\n.btn-default:focus {\n  background-color: #e8e5e8;\n  background-position: 0 -25px;\n}\n\n.btn-default:active,\n.btn-default.active {\n  background-color: #d9d5d9;\n  border-color: #d4cfd4;\n}\n\n.btn-primary {\n  background-image: -webkit-linear-gradient(top, #2591be 0%, #207da4 100%);\n  background-image: -webkit-gradient(linear, left top, left bottom, from(#2591be), to(#207da4));\n  background-image: linear-gradient(to bottom, #2591be 0%, #207da4 100%);\n  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff2591be', endColorstr='#ff207da4', GradientType=0);\n  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n  background-repeat: repeat-x;\n  border-color: #1d7093;\n}\n\n.btn-primary:hover,\n.btn-primary:focus {\n  background-color: #207da4;\n  background-position: 0 -25px;\n}\n\n.btn-primary:active,\n.btn-primary.active {\n  background-color: #1b6a8b;\n  border-color: #196382;\n}\n\n.btn-success {\n  background-image: -webkit-linear-gradient(top, #5cb85c 0%, #4aab4a 100%);\n  background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#4aab4a));\n  background-image: linear-gradient(to bottom, #5cb85c 0%, #4aab4a 100%);\n  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff4aab4a', GradientType=0);\n  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n  background-repeat: repeat-x;\n  border-color: #449d44;\n}\n\n.btn-success:hover,\n.btn-success:focus {\n  background-color: #4aab4a;\n  background-position: 0 -25px;\n}\n\n.btn-success:active,\n.btn-success.active {\n  background-color: #419641;\n  border-color: #3e8f3e;\n}\n\n.btn-info {\n  background-image: -webkit-linear-gradient(top, #5bc0de 0%, #42b6d9 100%);\n  background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#42b6d9));\n  background-image: linear-gradient(to bottom, #5bc0de 0%, #42b6d9 100%);\n  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff42b6d9', GradientType=0);\n  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n  background-repeat: repeat-x;\n  border-color: #31b0d5;\n}\n\n.btn-info:hover,\n.btn-info:focus {\n  background-color: #42b6d9;\n  background-position: 0 -25px;\n}\n\n.btn-info:active,\n.btn-info.active {\n  background-color: #2aabd2;\n  border-color: #28a4c9;\n}\n\n.btn-warning {\n  background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eea032 100%);\n  background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#eea032));\n  background-image: linear-gradient(to bottom, #f0ad4e 0%, #eea032 100%);\n  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeea032', GradientType=0);\n  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n  background-repeat: repeat-x;\n  border-color: #ec971f;\n}\n\n.btn-warning:hover,\n.btn-warning:focus {\n  background-color: #eea032;\n  background-position: 0 -25px;\n}\n\n.btn-warning:active,\n.btn-warning.active {\n  background-color: #eb9316;\n  border-color: #e38d13;\n}\n\n.btn-danger {\n  background-image: -webkit-linear-gradient(top, #d9534f 0%, #d43a36 100%);\n  background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#d43a36));\n  background-image: linear-gradient(to bottom, #d9534f 0%, #d43a36 100%);\n  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffd43a36', GradientType=0);\n  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n  background-repeat: repeat-x;\n  border-color: #c9302c;\n}\n\n.btn-danger:hover,\n.btn-danger:focus {\n  background-color: #d43a36;\n  background-position: 0 -25px;\n}\n\n.btn-danger:active,\n.btn-danger.active {\n  background-color: #c12e2a;\n  border-color: #b92c28;\n}\n\n.btn-sm,\n.btn-group-sm > .btn,\n.btn-group-sm > .btn {\n  padding: 4px 10px;\n}\n\n.btn-xs,\n.btn-group-xs > .btn,\n.btn-group-xs > .btn {\n  padding: 2px 6px;\n  font-size: 12px;\n  line-height: 1.5;\n  border-radius: 2px;\n}\n\n.btn.disabled,\n.btn[disabled],\nfieldset[disabled] .btn {\n  opacity: 0.45;\n  filter: alpha(opacity=45);\n}\n\n.modal-backdrop.in {\n  opacity: 0.7;\n  filter: alpha(opacity=70);\n}\n\n.thumbnail {\n  border-radius: 0;\n  border: none;\n}\n\na.list-group-item {\n  border: none;\n  color: #007fb3;\n  font-size: 13px;\n  border-top: 1px solid #fff;\n  border-bottom: 1px solid #fff;\n}\n\na.list-group-item:hover,\na.list-group-item:focus {\n  text-decoration: none;\n  background-color: #fafafa;\n  color: #007fb3;\n}\n\na.list-group-item.active,\na.list-group-item.active:hover,\na.list-group-item.active:focus {\n  background: #f8f8f8;\n  color: #333333;\n  font-weight: 500;\n  border-top: 1px solid #d2d2d2;\n  border-bottom: 1px solid #d2d2d2;\n  margin-right: -1px;\n}\n\n.list-group-item:first-child {\n  border-top-left-radius: 0;\n  border-top-right-radius: 0;\n}\n\n.list-group-item:last-child {\n  border-bottom-right-radius: 0;\n  border-bottom-left-radius: 0;\n}\n\ninput.form-control {\n  border-radius: 2px;\n}\n\ninput.form-control + .form-control {\n  margin-top: 10px;\n}\n\n.checkbox label {\n  line-height: 1.6em;\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/css/bootstrap.css",
    "content": "/*!\n * Bootstrap v3.0.0\n *\n * Copyright 2013 Twitter, Inc\n * Licensed under the Apache License v2.0\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Designed and built with all the love in the world @twitter by @mdo and @fat.\n */\n\n.nav {\n  margin-bottom: 0;\n  padding-left: 0;\n  list-style: none;\n}\n.nav:before,\n.nav:after {\n  content: \" \";\n  /* 1 */\n\n  display: table;\n  /* 2 */\n\n}\n.nav:after {\n  clear: both;\n}\n.nav:before,\n.nav:after {\n  content: \" \";\n  /* 1 */\n\n  display: table;\n  /* 2 */\n\n}\n.nav:after {\n  clear: both;\n}\n.nav > li {\n  position: relative;\n  display: block;\n}\n.nav > li > a {\n  position: relative;\n  display: block;\n  padding: 10px 5px;\n}\n.nav > li > a:hover,\n.nav > li > a:focus {\n  text-decoration: none;\n  background-color: #eeeeee;\n}\n.nav > li.disabled > a {\n  color: #999999;\n}\n.nav > li.disabled > a:hover,\n.nav > li.disabled > a:focus {\n  color: #999999;\n  text-decoration: none;\n  background-color: transparent;\n  cursor: not-allowed;\n}\n.nav .open > a,\n.nav .open > a:hover,\n.nav .open > a:focus {\n  background-color: #eeeeee;\n  border-color: #428bca;\n}\n.nav .nav-divider {\n  height: 1px;\n  margin: 9px 0;\n  overflow: hidden;\n  background-color: #e5e5e5;\n}\n.nav > li > a > img {\n  max-width: none;\n}\n.nav-tabs {\n  border-bottom: 1px solid #dddddd;\n}\n.nav-tabs > li {\n  float: left;\n  margin-bottom: -1px;\n}\n.nav-tabs > li > a {\n  margin-right: 2px;\n  line-height: 1.428571429;\n  border: 1px solid transparent;\n  border-radius: 2px 2px 0 0;\n}\n.nav-tabs > li > a:hover {\n  border-color: #eeeeee #eeeeee #dddddd;\n}\n.nav-tabs > li.active > a,\n.nav-tabs > li.active > a:hover,\n.nav-tabs > li.active > a:focus {\n  color: #555555;\n  background-color: #ffffff;\n  border: 1px solid #dddddd;\n  border-bottom-color: transparent;\n  cursor: default;\n  font-weight: bold;\n}\n.nav-tabs.nav-justified {\n  width: 100%;\n  border-bottom: 0;\n}\n.nav-tabs.nav-justified > li {\n  float: none;\n}\n.nav-tabs.nav-justified > li > a {\n  text-align: center;\n}\n.nav-tabs.nav-justified > li > a {\n  border-bottom: 1px solid #dddddd;\n  margin-right: 0;\n}\n.nav-tabs.nav-justified > .active > a {\n  border-bottom-color: #ffffff;\n}\n.nav-tabs-justified {\n  border-bottom: 0;\n}\n.nav-tabs-justified > li > a {\n  border-bottom: 1px solid #dddddd;\n  margin-right: 0;\n}\n.nav-tabs-justified > .active > a {\n  border-bottom-color: #ffffff;\n}\n.tabbable:before,\n.tabbable:after {\n  content: \" \";\n  /* 1 */\n\n  display: table;\n  /* 2 */\n\n}\n.tabbable:after {\n  clear: both;\n}\n.tabbable:before,\n.tabbable:after {\n  content: \" \";\n  /* 1 */\n\n  display: table;\n  /* 2 */\n\n}\n.tabbable:after {\n  clear: both;\n}\n.tab-content > .tab-pane,\n.pill-content > .pill-pane {\n  display: none;\n}\n.tab-content > .active,\n.pill-content > .active {\n  display: block;\n  margin-left: 200px;\n}\n\n.tabs-left > .nav-tabs {\n  border-bottom: 0;\n}\n.tabs-left > .nav-tabs > li {\n  float: none;\n}\n.tabs-left > .nav-tabs > li > a {\n  min-width: 160px;\n  margin-right: 0;\n  font-size: 13px;\n}\n.tabs-left > .nav-tabs {\n  float: left;\n  margin-right: 19px;\n  margin-top: 30px;\n  border-right: 1px solid #ccc;\n  min-height: 300px;\n}\n.tabs-left > .nav-tabs > li > a {\n  margin-right: -1px;\n  -webkit-border-radius: 2px 0 0 2px;\n  -moz-border-radius: 2px 0 0 2px;\n  border-radius: 2px 0 0 2px;\n  border-bottom: 1px solid #eee;\n}\n.tabs-left > .nav-tabs > li > a:hover,\n.tabs-left > .nav-tabs > li > a:focus {\n  border-color: #cccccc #cccccc #eeeeee #eeeeee;\n}\n.tabs-left > .nav-tabs .active > a,\n.tabs-left > .nav-tabs .active > a:hover,\n.tabs-left > .nav-tabs .active > a:focus {\n  border-color: #ccc transparent #ccc transparent;\n  *border-right-color: #ffffff;\n}\n.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);border:0;}\n.popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;background-color:#ffffff;background-clip:padding-box;border:1px solid #cccccc;border:1px solid rgba(0, 0, 0, 0.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0, 0, 0, 0.2);box-shadow:0 5px 10px rgba(0, 0, 0, 0.2);white-space:normal;}.popover.top{margin-top:-10px;}\n.popover.right{margin-left:10px;}\n.popover.bottom{margin-top:10px;}\n.popover.left{margin-left:-10px;}\n.popover-title{margin:0;padding:8px 14px;font-size:14px;font-weight:normal;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0;}\n.popover-content{padding:9px 14px;}\n.popover .arrow,.popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid;}\n.popover .arrow{border-width:11px;}\n.popover .arrow:after{border-width:10px;content:\"\";}\n.popover.top .arrow{left:50%;margin-left:-11px;border-bottom-width:0;border-top-color:#999999;border-top-color:rgba(0, 0, 0, 0.25);bottom:-11px;}.popover.top .arrow:after{content:\" \";bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#ffffff;}\n.popover.right .arrow{top:50%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999999;border-right-color:rgba(0, 0, 0, 0.25);}.popover.right .arrow:after{content:\" \";left:1px;bottom:-10px;border-left-width:0;border-right-color:#ffffff;}\n.popover.bottom .arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999999;border-bottom-color:rgba(0, 0, 0, 0.25);top:-11px;}.popover.bottom .arrow:after{content:\" \";top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#ffffff;}\n.popover.left .arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999999;border-left-color:rgba(0, 0, 0, 0.25);}.popover.left .arrow:after{content:\" \";right:1px;border-right-width:0;border-left-color:#ffffff;bottom:-10px;}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/css/comments.css",
    "content": ".plugin-container {\n    padding: 10px 10px 30px 10px;\n    border: 1px solid #ccc;\n    background-color: #FFF;\n    font-size: 12px;\n}\n\n.hidden {\n    display: block!important;\n    visibility: visible!important;\n}\n\n.status-hidden {\n    background-color: #ccc;\n}\n\n.ban-btn {\n    margin-top: 3px;\n}\n\n#commentsTable_filter_input {\n    float: left;\n    margin-left: -570px;\n}\n\n.pagination-wrapper {\n    text-align: center;\n}\n\n.pagination {\n    display: inline-block;\n    padding-left: 0;\n    margin: 0;\n    border-radius: 4px;\n}\n\ndiv.table-responsive {\n    padding: 20px 30px;\n}\n\n#commentsTable thead > tr > th {\n    border: 1px solid #ddd;\n}\n\n#commentsTable tbody > tr {\n    border-left: 1px solid #ddd;\n    border-right: 1px solid #ddd;\n}\n\n#commentsTable tbody > tr > td:first-child {\n    border-right: 1px solid #ddd;\n}\n\n#commentsTable tbody > tr:last-child > td:first-child {\n    border-top: none;\n}\n\n#commentsTable tbody > tr:last-child {\n    border-bottom: 1px solid #ddd;\n}\n\n#commentsTable tbody > tr > td:last-child {\n    border-right: 1px solid #ddd;\n}\n\n.dateCommentHolderReply h3 {\n    padding: 0;\n    margin-top: 0;\n}\n\n.reply-cancel {\n    margin-right: 5px;\n}\n\n.edit-cancel {\n    margin-right: 5px;\n}\n\ndiv.form-group input {\n    width: 500px;\n}\n\nform.navbar-form.navbar-left {\n    margin-left: 15px;\n    margin-bottom: 20px;\n}\n\n.commentBtns ul {\n    height: 30px;\n}\n\n#hoverBtns {\n    height: 35px;\n}\n\n#hoverBtns td:last-child {\n    border: none;\n    padding: 0 0 5px 0;\n}\n\n#hoverBtns td:first-child {\n    border-top: none;\n}\n\nfieldset.filters {\n    height: 75px;\n}\n\nfieldset ul {\n    height: 30px;\n}\n\n#showComments fieldset ul li {\n    height: 30px;\n    padding-top: 2px;\n}\n\n#showComments fieldset ul li#filterBtn {\n    margin-top: -2px;\n}\n\ndiv.table-responsive {\n    padding: 0 30px 20px 30px;\n}\n\n.status-actions {\n    margin: 15px 30px;\n    padding: 10px;\n    border: 1px solid #ccc;\n    height: 85px;\n}\n\n#paging {\n    margin-left: 15px;\n}\n\n.modal-body {\n    font-size: 14px;\n    color: #a94442;\n}\n\n.dateCommentHolder h4 span.label {\n    color: #fff;\n    font-weight: none;\n}\n\n.select2-search-choice-close {\n    top: 0px;\n    background-size: 64px 51px;\n}\n\na.select2-search-choice-close:hover {\n    top: -1px;\n    background-size: 64px 45px;\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/css/jquery.dynatable.css",
    "content": "th a {\n  color: #fff;\n}\nth a:hover {\n  color: #fff;\n  text-decoration: underline;\n}\n\n.dynatable-search {\n  float: right;\n  margin-bottom: 10px;\n}\n\n.dynatable-pagination-links {\n  float: right;\n}\n\n.dynatable-record-count {\n  display: block;\n  padding: 5px 0;\n}\n\n.dynatable-pagination-links span,\n.dynatable-pagination-links li {\n  display: inline-block;\n}\n\n.dynatable-page-link,\n.dynatable-page-break {\n  display: block;\n  padding: 5px 7px;\n}\n\n.dynatable-page-link {\n  cursor: pointer;\n}\n\n.dynatable-active-page {\n  background: #71AF5A;\n  border-radius: 5px;\n  color: #fff;\n}\n.dynatable-page-prev.dynatable-active-page,\n.dynatable-page-next.dynatable-active-page {\n  background: none;\n  color: #999;\n  cursor: text;\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/css/new-design.css",
    "content": ".system_pref.topics .container {\n    background: transparent;\n    padding: 0;\n}\n\n.system_pref.topics .container .row {\n    margin-bottom: 10px;\n}\n\n.system_pref.topics .container .row form .input-group {\n    margin: 0;\n}\n\n.system_pref.topics .container .row h3 {\n    font-size: 12px;\n    font-weight: bold;\n    font-family: Arial,Helvetica,sans-serif;\n    text-transform: uppercase;\n    border-bottom: 0;\n    margin-bottom: 0;\n    line-height: 28px;\n    padding: 0 0 6px 0;\n}\n\n.system_pref.topics .container .row h3 .expand-btn .label {\n    color: #999;\n    font-size: 12px;\n    font-weight: normal;\n    text-transform: none;\n}\n\n.system_pref.topics .container .row .form-group {\n    width: 100%;\n}\n\n.system_pref.topics .container .row .form-group input {\n    width: 82%;\n    background: #fff;\n}\n\n.system_pref.topics .container .row .form-group .btn {\n    width: 15%;\n    padding-left: 0;\n    padding-right: 0;\n    padding: 4px 10px 5px 10px;\n}\n\n.system_pref.topics .container .row input.form-control {\n    background: #fff;\n}\n\n.system_pref.topics .container .row input.form-control.search {\n    padding-left: 30px;\n    background: url('../images/search.png') no-repeat 5px 4px;\n}\n\n.system_pref.topics .container .row .form-control {\n    margin-right: 3px;\n}\n\n.system_pref.topics .angular-ui-tree {\n    margin-top: 2px;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node.active {\n    border: 1px solid #5ea9c8;\n    -webkit-box-shadow: 0 1px 6px rgba(0,0,0,0.1);\n    -moz-box-shadow: 0 1px 6px rgba(0,0,0,0.1);\n    box-shadow: 0 1px 6px rgba(0,0,0,0.1);\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node.active .btn-group {\n    display: block!important;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .glyphicon {\n    color: #333;\n    font-size: 12px;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .pointer {\n    margin-right: 4px;\n    color: #5195b0;\n    position: absolute;\n    top: 8px;\n    left: 10px;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .btn-group {\n    margin-top: -6px;\n    display: none;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node:hover .btn-group {\n    display: block;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .default-wrap {\n    display: inline-block;\n    margin-bottom: 5px;\n    width: 85%;\n    line-height: 140%;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .default-wrap div {\n    display: inline-flex;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .default-wrap div ul {\n    padding-left: 10px;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .default-wrap .topic-marker {\n    margin-right: 4px;\n    position: absolute;\n    top: 8px;\n    left: 29px;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-edit-div {\n    display: inline-block;\n    margin: 5px 0 0;\n    padding: 0;\n    border: 0;\n    background: transparent;\n    min-width: 500px;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-edit-div .form-group {\n    margin-bottom: 5px;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-edit-div .form-group input.form-control {\n    width: 85%;\n    margin: 0 1% 0 0;\n    float: left;\n    -webkit-box-sizing: border-box;\n    -moz-box-sizing: border-box;\n    -o-box-sizing: border-box;\n    -ms-box-sizing: border-box;\n    box-sizing: border-box;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-edit-div .form-group .btn {\n    width: 14%;\n    margin: 0;\n    float: right;\n    -webkit-box-sizing: border-box;\n    -moz-box-sizing: border-box;\n    -o-box-sizing: border-box;\n    -ms-box-sizing: border-box;\n    box-sizing: border-box;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-lang-div {\n    margin: 10px -16px 0 -30px;\n    border-top: 1px solid #e0e0e0;\n    padding: 12px 30px;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-lang-div h3 {\n    margin: 0;\n    color: #666;\n    font-weight: normal;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-lang-div .form-inline {\n    min-width: 500px;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-lang-div .form-inline .btn {\n    max-width: 70px;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-lang-div .form-inline input.form-control {\n    max-width: 258px;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-lang-div .form-inline+h3 {\n    margin-top: 20px;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-lang-div .lang-list {\n    list-style: none;\n    margin: 0 0 10px 0;\n    font-weight: normal;\n    padding: 0;\n    border: 1px solid #d0d0d0;\n    background: #fff;\n    -moz-border-radius: 2px;\n    -webkit-border-radius: 2px;\n    border-radius: 2px;\n    max-width: 500px;\n    line-height: 26px;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-lang-div .lang-list li {\n    border-bottom: 1px solid #e5e5e5;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-lang-div .lang-list li:last-child {\n    border-bottom: 0;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-lang-div .lang-list li div {\n    position: relative;\n    padding: 4px 10px;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-lang-div .lang-list li div .badge {\n    margin-right: 6px;\n    -moz-border-radius: 3px;\n    -webkit-border-radius: 3px;\n    border-radius: 3px;\n    font-size: 13px;\n    font-weight: normal;\n    background: #b3b3b3;\n    padding: 2px 4px 2px 4px;\n    min-width: 26px;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-lang-div .lang-list li div .remove-translation {\n    position: absolute;\n    right: 4px;\n    top: 4px;\n    bottom: 4px;\n    display: block;\n    padding: 1px 10px;\n    cursor: pointer;\n    -moz-border-radius: 2px;\n    -webkit-border-radius: 2px;\n    border-radius: 2px;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-lang-div .lang-list li div .remove-translation:hover {\n    background: #ddd;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-lang-div .lang-list li div .remove-translation:hover .glyphicon {\n    color: #333;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-lang-div .lang-list li div .remove-translation .glyphicon {\n    color: #c8c8c8;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-add-subtopic-div {\n    margin: 10px -16px 0 -30px;\n    border-top: 1px solid #e0e0e0;\n    padding: 12px 30px;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-add-subtopic-div h3 {\n    margin: 0;\n    color: #666;\n    font-weight: normal;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-add-subtopic-div .form-inline {\n    min-width: 500px;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-add-subtopic-div .form-inline .btn {\n    max-width: 70px;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .node-add-subtopic-div .node-edit-div {\n    margin: 0;\n}\n\n.system_pref.topics .angular-ui-tree .angular-ui-tree-node .tree-node .button-close {\n    position: absolute;\n    bottom: 14px;\n    right: 16px;\n}\n\n.system_pref.topics .angular-ui-tree-handle {\n    background: #f2f2f2;\n    border: 0;\n    border-style: solid;\n    border-color: #f2f2f2 #f2f2f2 #d9d9d9 #f2f2f2;\n    border-width: 1px 1px 1px 1px;\n    box-shadow: 0 1px 0 0 #fff;\n    font-size: 12px;\n    padding: 10px 16px 4px 30px;\n    margin-bottom: 5px;\n}\n\n.system_pref.topics .angular-ui-tree-handle:hover {\n    border-color: #d9d9d9;\n    box-shadow: 0 1px 0 0 #d9d9d9;\n    color: #333;\n}\n\n.system_pref.topics .angular-ui-tree .list-group {\n    margin: 0;\n    overflow: hidden;\n}\n\n.system_pref.topics .angular-ui-tree .list-group li.list-group-item {\n    background: 0;\n    float: left;\n    border: 0;\n    padding: 0;\n}\n\n.system_pref.topics .angular-ui-tree .list-group li.list-group-item .badge {\n    margin-right: 4px;\n    -moz-border-radius: 3px;\n    -webkit-border-radius: 3px;\n    border-radius: 3px;\n    font-size: 11px;\n    font-weight: normal;\n    background: #c7c7c7;\n    padding: 2px 4px 3px 5px;\n    line-height: 12px;\n}\n\n.system_pref.topics .angular-ui-tree .list-group li.list-group-item.active .badge {\n    background: #5195b0;\n}\n\n.system_pref.topics .angular-ui-tree .list-group li.list-group-item.fallback .badge {\n    background: #bc3f39;\n}\n\n.angular-ui-tree-drag {\n    margin-top: 2px;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node {\n    padding: 8px 16px 4px 30px;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node.active {\n    border: 1px solid #5ea9c8;\n    -webkit-box-shadow: 0 1px 6px rgba(0,0,0,0.1);\n    -moz-box-shadow: 0 1px 6px rgba(0,0,0,0.1);\n    box-shadow: 0 1px 6px rgba(0,0,0,0.1);\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .glyphicon {\n    color: #333;\n    font-size: 12px;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .pointer {\n    margin-right: 4px;\n    color: #5195b0;\n    position: absolute;\n    top: 6px;\n    left: 10px;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .btn-group {\n    margin-top: 4px;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node:hover .btn-group {\n    display: block;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .default-wrap {\n    display: inline-block;\n    margin-bottom: 5px;\n    width: 85%;\n    line-height: 140%;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-edit-div {\n    display: inline-block;\n    margin: 5px 0 0;\n    padding: 0;\n    border: 0;\n    background: transparent;\n    min-width: 500px;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-edit-div .form-group {\n    margin-bottom: 5px;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-edit-div .form-group input.form-control {\n    width: 85%;\n    margin: 0 1% 0 0;\n    float: left;\n    -webkit-box-sizing: border-box;\n    -moz-box-sizing: border-box;\n    -o-box-sizing: border-box;\n    -ms-box-sizing: border-box;\n    box-sizing: border-box;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-edit-div .form-group .btn {\n    width: 14%;\n    margin: 0;\n    float: right;\n    -webkit-box-sizing: border-box;\n    -moz-box-sizing: border-box;\n    -o-box-sizing: border-box;\n    -ms-box-sizing: border-box;\n    box-sizing: border-box;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-lang-div {\n    margin: 10px -16px 0 -30px;\n    border-top: 1px solid #e0e0e0;\n    padding: 12px 30px;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-lang-div h3 {\n    margin: 0;\n    color: #666;\n    font-weight: normal;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-lang-div .form-inline {\n    min-width: 500px;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-lang-div .form-inline .btn {\n    max-width: 70px;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-lang-div .form-inline input.form-control {\n    max-width: 258px;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-lang-div .form-inline+h3 {\n    margin-top: 20px;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-lang-div .lang-list {\n    list-style: none;\n    margin: 0 0 10px 0;\n    font-weight: normal;\n    padding: 0;\n    border: 1px solid #d0d0d0;\n    background: #fff;\n    -moz-border-radius: 2px;\n    -webkit-border-radius: 2px;\n    border-radius: 2px;\n    max-width: 500px;\n    line-height: 26px;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-lang-div .lang-list li {\n    border-bottom: 1px solid #e5e5e5;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-lang-div .lang-list li:last-child {\n    border-bottom: 0;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-lang-div .lang-list li div {\n    position: relative;\n    padding: 4px 10px;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-lang-div .lang-list li div .badge {\n    margin-right: 6px;\n    -moz-border-radius: 3px;\n    -webkit-border-radius: 3px;\n    border-radius: 3px;\n    font-size: 13px;\n    font-weight: normal;\n    background: #b3b3b3;\n    padding: 2px 4px 2px 4px;\n    min-width: 26px;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-lang-div .lang-list li div .remove-translation {\n    position: absolute;\n    right: 4px;\n    top: 4px;\n    bottom: 4px;\n    display: block;\n    padding: 1px 10px;\n    cursor: pointer;\n    -moz-border-radius: 2px;\n    -webkit-border-radius: 2px;\n    border-radius: 2px;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-lang-div .lang-list li div .remove-translation:hover {\n    background: #ddd;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-lang-div .lang-list li div .remove-translation:hover .glyphicon {\n    color: #333;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-lang-div .lang-list li div .remove-translation .glyphicon {\n    color: #c8c8c8;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-add-subtopic-div {\n    margin: 10px -16px 0 -30px;\n    border-top: 1px solid #e0e0e0;\n    padding: 12px 30px;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-add-subtopic-div h3 {\n    margin: 0;\n    color: #666;\n    font-weight: normal;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-add-subtopic-div .form-inline {\n    min-width: 500px;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-add-subtopic-div .form-inline .btn {\n    max-width: 70px;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .node-add-subtopic-div .node-edit-div {\n    margin: 0;\n}\n\n.angular-ui-tree-drag .angular-ui-tree-node .tree-node .button-close {\n    position: absolute;\n    bottom: 14px;\n    right: 16px;\n}\n\n.angular-ui-tree-drag-handle {\n    background: #f2f2f2;\n    border: 0;\n    border-style: solid;\n    border-color: #f2f2f2 #f2f2f2 #d9d9d9 #f2f2f2;\n    border-width: 1px 1px 1px 1px;\n    box-shadow: 0 1px 0 0 #fff;\n    font-size: 12px;\n    padding: 10px 16px 4px 30px;\n    margin-bottom: 5px;\n}\n\n.angular-ui-tree-drag-handle:hover {\n    border-color: #d9d9d9;\n    box-shadow: 0 1px 0 0 #d9d9d9;\n    color: #333;\n}\n\n.angular-ui-tree-drag .list-group {\n    margin: 6px 0 2px 0;\n    overflow: hidden;\n}\n\n.angular-ui-tree-drag .list-group li.list-group-item {\n    background: 0;\n    float: left;\n    border: 0;\n    padding: 0;\n}\n\n.angular-ui-tree-drag .list-group li.list-group-item .badge {\n    margin-right: 4px;\n    -moz-border-radius: 3px;\n    -webkit-border-radius: 3px;\n    border-radius: 3px;\n    font-size: 11px;\n    font-weight: normal;\n    background: #c7c7c7;\n    padding: 2px 4px 3px 5px;\n    line-height: 12px;\n}\n\n.angular-ui-tree-drag .list-group li.list-group-item.active .badge {\n    background: #5195b0;\n}\n\n.angular-ui-tree-drag .list-group li.list-group-item.fallback .badge {\n    background: #bc3f39;\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/css/playlists.css",
    "content": ".font-fix {\n    font-size: 12px;\n}\n.toggle.filters legend {\n    cursor: pointer;\n}\n\n#playlist-id {\n    font-size:12px;\n    width:50px\n}\n\n.toolbar h2 {\n    width:700px;\n}\n\n.select2-chosen {\n    font-size: 12px;\n}\n\n.select2-results {\n    min-height: 60px;\n}\n\n.content .actions {\n    margin: 0 auto;\n    width: 500px;\n}\n\n.plugin-toolbar {\n    height: 50px;\n}\n\n#playlist-name-label, #playlist-id-label {\n    float: left;\n    padding: 0 0 0 12px;\n    line-height: 18px;\n}\n\n.plugin-context-block {\n    height: 600px;\n    width: calc(50% - 10px);\n    margin: 0;\n    background: #f9f9f9;\n    border: 1px solid #ccc;\n    box-shadow: none;\n    -webkit-box-shadow: none;\n    -moz-box-shadow: none;\n    padding: 0;\n}\n.context-content > .plugin-context-block {\n    margin: 0 20px 0 0;\n    width: calc(50% - 10px);\n    padding: 10px;\n}\n.context-content > .plugin-context-block:nth-child(3) {\n    margin: 0;\n}\n.plugin-context-block .row {\n    margin: 10px -5px;\n}\n#drag-here-to-add-to-list {\n    border: 2px #CCCCCC dashed;\n    margin: 0px 10px 10px 10px;\n    padding: 20px;\n    color: #CCCCCC;\n    font-size: 20px;\n}\n.context-item-subject {\n    color: #343434;\n    padding-top: 5px;\n}\n.menu-options {\n    float: right;\n    display: inline;\n    margin-right: 44px;\n}\n.context-item-summary {\n    color: #007fb3;\n}\n.context-search {\n    overflow-y: scroll;\n}\n.context-search .context-item {\n    border-bottom: none;\n}\nul#context_list {\n    display:block;\n    height: 100%;\n    overflow-y:auto;\n    overflow-x:hidden;\n    padding: 10px 0px 0px 0px;\n}\ndiv#placeholder-wrapper {\n    position: absolute;\n    top: 0;\n    bottom: 0;\n    left: 0;\n    right: 0;\n}\ndiv#placeholder-wrapper.empty-placeholder {\n    border: 2px #CCCCCC dashed;\n    margin: 10px;\n    padding: 20px;\n    color: #CCCCCC;\n    font-size: 20px;\n}\ndiv#placeholder-wrapper p {\n    display: none;\n    text-align: center;\n}\ndiv#placeholder-wrapper.empty-placeholder p {\n    display: block;\n}\n.fade-featured {\n    opacity: 0;\n    -webkit-transition: opacity .2s linear;\n    transition: opacity .2s linear;\n}\n.first-menu {\n    margin: 0 0 10px 0;\n    padding: 0;\n}\n.system_pref h3 {\n    border: none;\n}\n.loading-container {\n    position: relative;\n}\n.loading-container .loading:before, .loading-container .loading:after {\n    content: \" \";\n    position: absolute;\n    top: 0;\n    left: 0;\n    right: 0;\n    bottom: 0;\n    min-height: 50px;\n    min-width: 50px;\n}\n.loading-container .loading:before {\n    background-color: white;\n    opacity: 0.5;\n}\n.context-item-header {\n    margin-bottom: 5px;\n}\n#playlistId {\n    width: 70px;\n}\n.context-list .context-item {\n    width: auto;\n    max-width: 100%;\n    display: block;\n    float: none;\n    clear: both;\n    box-sizing: border-box;\n    -moz-box-sizing: border-box;\n    -webkit-box-sizing: border-box;\n    margin: 0 8px 10px 10px;\n    border: 1px solid #E2E2E2;\n}\n.context-preview {\n    margin-top: 22px;\n    margin-left: 11px;\n}\n.list-group-item {\n    padding: 3px 0 3px 15px;\n    border: none;\n    background: transparent;\n}\n.system_pref input {\n    float: left !important;\n    padding: 4px 10px;\n    height: auto;\n}\n.input-filter-date {\n    width: 200px;\n    float: left !important;\n}\n.container {\n    margin: 0;\n    padding: 0 10px;\n    overflow-x: hidden;\n}\n\n.heading button {\n    line-height: 1em;\n    box-shadow: none !important;\n    padding: 8px 8px 10px;\n    margin: 0;\n    width: 100%;\n    text-align: left;\n    outline:none !important;\n\n}\n.btn-sf-invisible {\n    background: #e6e6e6;\n    border: 0;\n    padding: 0;\n}\n\n.filters {\n    background: #e6e6e6;\n    margin: 20px 0px;\n    padding-right: 14px;\n}\n.filters .container {\n    background: transparent;\n    padding:0;\n    overflow-x: visible; \n}\n.filters .row {\n    margin-right: -15px;\n    margin-left: -15px;\n}\n.filters-left {\n    width: 50%;\n    float: left;\n    margin: 0;\n    padding: 0;\n}\n.filters-right {\n    width: 50%;\n    float: left;\n    margin: 0;\n    padding: 0;\n}\n.filters input {\n    width: 100%;\n    background: #FFF;\n    border: 1px solid #aaa;\n}\n.filters .glyphicon {\n    font-size: 12px;\n}\n.add-text {\n    text-transform: uppercase;\n}\n.ng-table-pager {\n    margin: 0 auto;\n    margin-top: -20px;\n}\n.ui-datepicker-trigger {\n    margin-top: 5px;\n    position: absolute;\n    top: 4px;\n    right: 6px;\n}\n.limit-input {\n    float: right !important;\n}\n.limit-input label {\n    padding: 5px 6px 0 6px !important;\n}\n.modal-body {\n    font-size: 14px;\n}\n\n.context-content {\n    border: none;\n    background: transparent;\n    box-shadow: none;\n    height: 600px;\n    clear: both;\n}\n.context-list-results {\n    position: relative;\n    border: none;\n    background: transparent;\n    box-shadow: none;\n    -moz-box-shadow: none;\n    -webkit-box-shadow: none;\n    border-top: 1px solid #DDD;\n    border-right: 1px solid transparent;\n    height: 512px;\n}\n.smartlist .table {\n    background: white;\n    border-style: none;\n}\n.smartlist .table tr td,\n.smartlist .table tr th {\n    border-width: 1px !important;\n    border-color: #E2E2E2;\n}\n.smartlist .table>thead:first-child>tr:first-child>th {\n    border-top: 1px solid #E2E2E2 !important;\n}\n.select2-container {\n    width: 100%;\n}\n.select2-container .select2-choice {\n    border-radius: 2px !important;\n    -moz-border-radius: 2px !important;\n    -webkit-border-radius: 2px !important;\n    height: auto !important;\n    padding: 0px 8px 1px 8px !important;\n}\n.select2-container .select2-choice > .select2-chosen {\n    max-width: 200px;\n}\n.save-button-bar {\n    margin-left: 0 !important;\n}\n.list-inline>li {\n    padding: 0 2px;    \n}\n.list-inline>li:first-child,\n.list-inline>li:nth-child(6) {\n    border-right: 1px solid #ccc;\n    padding-right: 20px;\n    margin-right: 14px;\n}\n.error-custom {\n    line-height: 26px;\n    padding-left: 10px;\n    color: #a94442;\n}\n\n.limit-alert-wrapper {\n    position: absolute;\n    top:0;\n    bottom: 0;\n    left: 0;\n    right: 0;\n    background: rgba(255,255,255,0.9);\n}\n.limit-alert {\n    background-color: #FFF;\n    border: 1px solid rgba(0,0,0,.4);\n    color: #333;\n    padding-bottom: 50px;\n    font-size: 14px;\n    margin: 40px 25px 25px;\n    -moz-border-radius: 4px;\n    -webkit-border-radius: 4px;\n    border-radius: 4px;\n    -webkit-box-shadow: 0 3px 10px rgba(0,0,0,0.3);\n    box-shadow: 0 3px 10px rgba(0,0,0,.3);\n    position: relative;\n}\n.limit-alert button.close {\n    position: absolute;\n    top: 6px;\n    right: 10px;\n}\n.limit-alert-content {\n    padding: 12px 28px 12px 16px;\n}\n.limit-alert-footer {\n    position: absolute;\n    bottom: 0;\n    left: 0;\n    right: 0;\n    padding: 10px 16px;\n    border-top: 1px solid rgba(0,0,0,0.1);\n    text-align: right;\n}\n\n\n/* Media query */\n@media only screen and (max-width: 1091px) {\n    .first-menu {\n        min-height: 75px;\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/css/plugin.css",
    "content": "/* General styles */\r\n\r\n.container {\r\n\twidth: 100%;\r\n\tpadding-top: 0px;\r\n\tborder: none;\r\n\tbackground: #f5f5f5;\r\n}\r\n\r\n.meta-bar {\r\n\tfont-size: 11px;\r\n\theight: 23px;\r\n}\r\n\r\n.meta-bar ul {\r\n\tpadding: 2px 0 0 0;\r\n}\r\n\r\n.meta-bar ul li {\r\n\tfloat: left;\r\n}\r\n\r\n.desktop_hide {\r\n\tdisplay: none;\r\n}\r\n\r\n\r\n/* Navigation menu */\r\n\r\n.navbar-default {\r\n\tbackground: #3b3b3b;\r\n\tborder-color: transparent;\r\n}\r\n\r\n.navbar-default .navbar-nav>li>a {\r\n\tcolor: #fff;\r\n\tpadding: 8px 15px;\r\n\ttext-transform: uppercase;\r\n\tfont-size: 12px;\r\n\tfont-weight: bold;\r\n}\r\n\r\n.navbar-default .navbar-nav>li>a:hover {\r\n\tcolor: #fff;\r\n\tbackground: #252525;\r\n}\r\n\r\n.navbar-default .navbar-nav>li>a:focus {\r\n\tcolor: #fff;\r\n}\r\n\r\n.navbar-default .navbar-nav>.open>a, .navbar-default .navbar-nav>.open>a:hover, .navbar-default .navbar-nav>.open>a:focus {\r\n\tcolor: #fff;\r\n\tbackground-color: #252525;\r\n}\r\n\r\n.navbar {\r\n\tborder-radius: 0px;\r\n\tmin-height: inherit;\r\n\tmargin-bottom: 0px;\r\n}\r\n\r\n.navbar-collapse {\r\n\tpadding-left: 0px;\r\n}\r\n\r\n.dropdown-menu {\r\n\tbackground: #282828;\r\n}\r\n\r\n.dropdown-menu li {\r\n\tposition: relative;\r\n}\r\n\r\n.dropdown-menu li ul {\r\n\tdisplay: none;\r\n}\r\n\r\n.dropdown-menu li:hover > ul {\r\n\tdisplay: block;\r\n\tposition: absolute;\r\n\ttop: 0;\r\n\tleft: 100%;\r\n\tpadding: 5px 0px 5px 0px;\r\n\tlist-style: none;\r\n\tbackground-color: #282828;\r\n\tborder: 1px solid #ccc;\r\n\tborder: 1px solid rgba(0,0,0,0.15);\r\n\tborder-radius: 4px;\r\n\t-webkit-box-shadow: 0 6px 12px rgba(0,0,0,0.175);\r\n\tbox-shadow: 0 6px 12px rgba(0,0,0,0.175);\r\n\tbackground-clip: padding-box;\r\n}\r\n\r\n.dropdown-menu li a {\r\n\tdisplay: block;\r\n\tpadding: 3px 25px 3px 20px;\r\n\tclear: both;\r\n\tfont-size: 12px;\r\n\tfont-weight: normal;\r\n\tline-height: 1.428571429;\r\n\tcolor: #fff;\r\n\twhite-space: nowrap;\r\n\tborder: 1px solid transparent;\r\n\r\n}\r\n\r\n.dropdown-menu li a:hover, .dropdown-menu li a:focus {\r\n\tcolor: #fff;\r\n\ttext-decoration: none;\r\n\tborder: 1px solid #409fc6;\r\n\tbackground-color: #007fb3;\r\n}\r\n\r\n.dropdown-menu .divider {\r\n\tbackground-color: #535353;\r\n}\r\n\r\n.caret-right {\r\n\tborder-bottom: 4px solid transparent;\r\n    border-top: 4px solid transparent;\r\n    border-left: 4px solid #999;\r\n\tdisplay: inline-block;\r\n\theight: 0;\r\n\topacity: 1;\r\n\twidth: 0;\r\n\tposition: absolute;\r\n\tright: 10px;\r\n\ttop: 10px;\r\n}\r\n\r\n.navbar .logo {\r\n\tmargin: 8px 0px 0px 0px;\r\n}\r\n\r\n.navbar-default .navbar-nav>.dropdown>a:hover .caret, .navbar-default .navbar-nav>.dropdown>a:focus .caret {\r\n\tborder-top-color: #777;\r\n\tborder-bottom-color: #777;\r\n}\r\n\r\n/* Breadcrumb */\r\n\r\n.breadcrumb {\r\n\tfont-size: 11px;\r\n\ttext-align: left;\r\n\tpadding: 7px 0px 7px 16px;\r\n\tmargin-bottom: 0px;\r\n\tborder-bottom: 1px solid #cccccc;\r\n\tclear: both;\r\n\tbackground: #fff;\r\n\t-moz-box-shadow: 0 0px 4px rgba(0,0,0,.15);\r\n\t-webkit-box-shadow: 0 0px 4px rgba(0,0,0,.15);\r\n\tbox-shadow: 0 0px 4px rgba(0,0,0,.15);\r\n\tborder-radius: 0px;\r\n}\r\n\r\n.breadcrumb .category {\r\n\tfont-weight: bold;\r\n}\r\n\r\n.breadcrumb li {\r\n\tposition: relative;\r\n}\r\n\r\n.breadcrumb li:after {\r\n\tcontent: url('/admin-style/images/breadcrumb_arrow.png');\r\n\tposition: relative;\r\n\theight: 10px;\r\n\twidth: 10px;\r\n\tvisibility: visible;\r\n\tdisplay: inline-block;\r\n\tmargin-left: 10px;\r\n}\r\n\r\n.breadcrumb>li+li:before {\r\n\tdisplay: none;\r\n}\r\n\r\n\r\n/* Toolbar */\r\n\r\n.toolbar {\r\n\tpadding: 10px 24px 15px 30px;\r\n}\r\n\r\n/* Main content */\r\n\r\n.action_buttons {\r\n\tmargin-left: 30px;\r\n}\r\n\r\n.action_buttons input[type=\"file\"] {\r\n\tdisplay: inline-block;\r\n}\r\n\r\n@media (max-width: 768px) {\r\n\t.desktop_hide {\r\n\t\tdisplay: inline-block;\r\n\t}\r\n}\r\n\r\n@media (max-width: 767px) {\r\n\t\r\n\t.navbar-collapse {\r\n\tpadding-left: 15px;\r\n\t}\r\n\r\n\t.navbar-default .navbar-nav .open .dropdown-menu>li>a {\r\n\t\tcolor: #fff;\r\n\t}\r\n\r\n\t.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover, .navbar-default .navbar-nav .open .dropdown-menu>li>a:focus {\r\n\t\tcolor: #fff;\r\n\t\tborder: 1px solid #409fc6;\r\n\t\tbackground-color: #007fb3;\r\n\t}\r\n\r\n\t.dropdown-menu li:hover > ul {\r\n\t\tpadding-left: 20px;\r\n\t\tposition: relative;\r\n\t\tleft: 0px;\r\n\t}\r\n}\r\n\r\nul.pagination li:after {\r\n\tdisplay: none;\r\n}\r\n\r\n.dropdown-menu li a.latest-published {\r\n    background-color: #008148;\r\n    border-radius: 3px 3px;\r\n}\r\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/DT_bootstrap.js",
    "content": "    /* Set the defaults for DataTables initialisation */\n    $.extend(true, $.fn.dataTable.defaults, {\n      \"sDom\": \"<'row'<'col-xs-5 col-sm-6'l><'col-xs-7 col-sm-6 text-right'f>r>t<'row'<'col-xs-3 col-sm-4 col-md-5'i><'col-xs-9 col-sm-8 col-md-7 text-right'p>>\",\n      \"sPaginationType\": \"bootstrap\",\n      \"oLanguage\": {\n        \"sLengthMenu\": \"_MENU_ records per page\"\n      },\n      \"fnInitComplete\": function (oSettings, json) {\n        var currentId = $(this).attr('id');\n        console.log(currentId);\n        if (currentId) {\n     \n          var thisLength = $('#' + currentId + '_length');\n          var thisLengthLabel = $('#' + currentId + '_length label');\n          var thisLengthSelect = $('#' + currentId + '_length label select');\n     \n          var thisFilter = $('#' + currentId + '_filter');\n          var thisFilterLabel = $('#' + currentId + '_filter label');\n          var thisFilterInput = $('#' + currentId + '_filter label input');\n     \n          // Re-arrange the records selection for a form-horizontal layout\n          thisLength.addClass('form-group');\n          thisLengthLabel.addClass('control-label col-xs-12 col-sm-7 col-md-6').attr('for', currentId + '_length_select').css('text-align', 'left');\n          thisLengthSelect.addClass('form-control input-sm').attr('id', currentId + '_length_select');\n          thisLengthSelect.prependTo(thisLength).wrap('<div class=\"col-xs-12 col-sm-5 col-md-6\" />');\n          // Re-arrange the search input for a form-horizontal layout\n          thisFilter.addClass('form-group');\n          thisFilterLabel.addClass('control-label col-xs-4 col-sm-3 col-md-3').attr('for', currentId + '_filter_input');\n          thisFilterInput.addClass('form-control input-sm').attr('id', currentId + '_filter_input');\n          thisFilterInput.appendTo(thisFilter).wrap('<div class=\"col-xs-8 col-sm-9 col-md-9 \" />');\n        }\n      }\n    });\n     \n    $.extend($.fn.dataTableExt.oStdClasses, {\n      \"sWrapper\": \"dataTables_wrapper form-horizontal\"\n    });\n     \n    /* API method to get paging information */\n    $.fn.dataTableExt.oApi.fnPagingInfo = function (oSettings) {\n      return {\n        \"iStart\": oSettings._iDisplayStart,\n        \"iEnd\": oSettings.fnDisplayEnd(),\n        \"iLength\": oSettings._iDisplayLength,\n        \"iTotal\": oSettings.fnRecordsTotal(),\n        \"iFilteredTotal\": oSettings.fnRecordsDisplay(),\n        \"iPage\": oSettings._iDisplayLength === -1 ? 0 : Math.ceil(oSettings._iDisplayStart / oSettings._iDisplayLength),\n        \"iTotalPages\": oSettings._iDisplayLength === -1 ? 0 : Math.ceil(oSettings.fnRecordsDisplay() / oSettings._iDisplayLength)\n      };\n    };\n     \n     \n    /* Bootstrap style pagination control */\n    $.extend($.fn.dataTableExt.oPagination, {\n      \"bootstrap\": {\n        \"fnInit\": function (oSettings, nPaging, fnDraw) {\n          var oLang = oSettings.oLanguage.oPaginate;\n          var fnClickHandler = function (e) {\n            e.preventDefault();\n            if (oSettings.oApi._fnPageChange(oSettings, e.data.action)) {\n              fnDraw(oSettings);\n            }\n          };\n     \n          $(nPaging).append(\n           '<ul class=\"pagination\">' +\n            '<li class=\"first disabled\"><a href=\"#\" title=\"' + oLang.sFirst + '\"><span class=\"glyphicon glyphicon-fast-backward\"></span></a></li>' +\n            '<li class=\"prev disabled\"><a href=\"#\" title=\"' + oLang.sPrevious + '\"><span class=\"glyphicon glyphicon-chevron-left\"></span></a></li>' +\n            '<li class=\"next disabled\"><a href=\"#\" title=\"' + oLang.sNext + '\"><span class=\"glyphicon glyphicon-chevron-right\"></span></a></li>' +\n            '<li class=\"last disabled\"><a href=\"#\" title=\"' + oLang.sLast + '\"><span class=\"glyphicon glyphicon-fast-forward\"></span></a></li>' +\n           '</ul>'\n          );\n          var els = $('a', nPaging);\n          $(els[0]).bind('click.DT', { action: \"first\" }, fnClickHandler);\n          $(els[1]).bind('click.DT', { action: \"previous\" }, fnClickHandler);\n          $(els[2]).bind('click.DT', { action: \"next\" }, fnClickHandler);\n          $(els[3]).bind('click.DT', { action: \"last\" }, fnClickHandler);\n        },\n     \n        \"fnUpdate\": function (oSettings, fnDraw) {\n          var iListLength = 5;\n          var oPaging = oSettings.oInstance.fnPagingInfo();\n          var an = oSettings.aanFeatures.p;\n          var i, j, sClass, iStart, iEnd, iHalf = Math.floor(iListLength / 2);\n     \n            if (oPaging.iTotalPages < iListLength) { iStart = 1; iEnd = oPaging.iTotalPages; } else if (oPaging.iPage <= iHalf) { iStart = 1; iEnd = iListLength; } else if (oPaging.iPage >= oPaging.iTotalPages - iHalf) { iStart = oPaging.iTotalPages - iListLength + 1; iEnd = oPaging.iTotalPages; } else { iStart = oPaging.iPage - iHalf + 1; iEnd = iStart + iListLength - 1; }\n     \n            for (i = 0, iLen = an.length ; i < iLen ; i++) {\n              // Remove the middle elements\n              $('li:gt(1)', an[i]).filter(':not(.next,.last)').remove();\n     \n              // Add the new list items and their event handlers\n              for (j = iStart; j <= iEnd; j++) { sClass = j == oPaging.iPage + 1 ? 'class=\"active\"' : \"\"; $(\"<li \" + sClass + '><a href=\"#\">' + j + \"</a></li>\").insertBefore($(\".next,.last\", an[i])[0]).bind(\"click\", function (a) { a.preventDefault(); oSettings._iDisplayStart = (parseInt($(\"a\", this).text(), 10) - 1) * oPaging.iLength; fnDraw(oSettings) }) }\n     \n              // Add / remove disabled classes from the static elements\n              if (oPaging.iPage === 0) $(\".first,.prev\", an[i]).addClass(\"disabled\"); else $(\".first,.prev\", an[i]).removeClass(\"disabled\")\n     \n              if (oPaging.iPage === oPaging.iTotalPages - 1 || oPaging.iTotalPages === 0) $(\".next,.last\", an[i]).addClass(\"disabled\"); else $(\".next,.last\", an[i]).removeClass(\"disabled\")\n            }\n        }\n      }\n    });\n     \n     \n    /*\n    * TableTools Bootstrap compatibility\n    * Required TableTools 2.1+\n    */\n    if ($.fn.DataTable.TableTools) {\n      // Set the classes that TableTools uses to something suitable for Bootstrap\n      // Set the classes that TableTools uses to something suitable for Bootstrap\n      $.extend(true, $.fn.DataTable.TableTools.classes, {\n        \"container\": \"DTTT btn-group\",\n        \"buttons\": {\n          \"normal\": \"btn btn-default\",\n          \"disabled\": \"disabled\"\n        },\n        \"collection\": {\n          \"container\": \"DTTT_dropdown dropdown-menu\",\n          \"buttons\": {\n            \"normal\": \"\",\n            \"disabled\": \"disabled\"\n          }\n        },\n        \"print\": {\n          \"info\": \"DTTT_print_info modal\"\n        },\n        \"select\": {\n          \"row\": \"active\"\n        }\n      });\n     \n      // Have the collection use a bootstrap compatible dropdown\n      $.extend(true, $.fn.DataTable.TableTools.DEFAULTS.oTags, {\n        \"collection\": {\n          \"container\": \"ul\",\n          \"button\": \"li\",\n          \"liner\": \"a\"\n        }\n      });\n    }\n     \n    // Moved to the bottom.\n    if ($.fn.DataTable.defaults) {\n      $.extend($.fn.dataTable.defaults, {\n        'bAutoWidth': false,\n        'aLengthMenu': [[5, 10, 25, 50, 100], [5, 10, 25, 50, 100]],\n        'iDisplayLength': 10,\n        \"bFilter\": true\n      });\n    }"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/Sortable.js",
    "content": "/**!\n * Sortable\n * @author\tRubaXa   <trash@rubaxa.org>\n * @license MIT\n */\n\n\n(function (factory) {\n\t\"use strict\";\n\n\tif (typeof define === \"function\" && define.amd) {\n\t\tdefine(factory);\n\t}\n\telse if (typeof module != \"undefined\" && typeof module.exports != \"undefined\") {\n\t\tmodule.exports = factory();\n\t}\n\telse if (typeof Package !== \"undefined\") {\n\t\tSortable = factory();  // export for Meteor.js\n\t}\n\telse {\n\t\t/* jshint sub:true */\n\t\twindow[\"Sortable\"] = factory();\n\t}\n})(function () {\n\t\"use strict\";\n\n\tvar dragEl,\n\t\tparentEl,\n\t\tghostEl,\n\t\tcloneEl,\n\t\trootEl,\n\t\tnextEl,\n\n\t\tscrollEl,\n\t\tscrollParentEl,\n\n\t\tlastEl,\n\t\tlastCSS,\n\t\tlastParentCSS,\n\n\t\toldIndex,\n\t\tnewIndex,\n\n\t\tactiveGroup,\n\t\tautoScroll = {},\n\n\t\ttapEvt,\n\t\ttouchEvt,\n\n\t\tmoved,\n\n\t\t/** @const */\n\t\tRSPACE = /\\s+/g,\n\n\t\texpando = 'Sortable' + (new Date).getTime(),\n\n\t\twin = window,\n\t\tdocument = win.document,\n\t\tparseInt = win.parseInt,\n\n\t\tsupportDraggable = !!('draggable' in document.createElement('div')),\n\t\tsupportCssPointerEvents = (function (el) {\n\t\t\tel = document.createElement('x');\n\t\t\tel.style.cssText = 'pointer-events:auto';\n\t\t\treturn el.style.pointerEvents === 'auto';\n\t\t})(),\n\n\t\t_silent = false,\n\n\t\tabs = Math.abs,\n\t\tslice = [].slice,\n\n\t\ttouchDragOverListeners = [],\n\n\t\t_autoScroll = _throttle(function (/**Event*/evt, /**Object*/options, /**HTMLElement*/rootEl) {\n\t\t\t// Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=505521\n\t\t\tif (rootEl && options.scroll) {\n\t\t\t\tvar el,\n\t\t\t\t\trect,\n\t\t\t\t\tsens = options.scrollSensitivity,\n\t\t\t\t\tspeed = options.scrollSpeed,\n\n\t\t\t\t\tx = evt.clientX,\n\t\t\t\t\ty = evt.clientY,\n\n\t\t\t\t\twinWidth = window.innerWidth,\n\t\t\t\t\twinHeight = window.innerHeight,\n\n\t\t\t\t\tvx,\n\t\t\t\t\tvy\n\t\t\t\t;\n\n\t\t\t\t// Delect scrollEl\n\t\t\t\tif (scrollParentEl !== rootEl) {\n\t\t\t\t\tscrollEl = options.scroll;\n\t\t\t\t\tscrollParentEl = rootEl;\n\n\t\t\t\t\tif (scrollEl === true) {\n\t\t\t\t\t\tscrollEl = rootEl;\n\n\t\t\t\t\t\tdo {\n\t\t\t\t\t\t\tif ((scrollEl.offsetWidth < scrollEl.scrollWidth) ||\n\t\t\t\t\t\t\t\t(scrollEl.offsetHeight < scrollEl.scrollHeight)\n\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/* jshint boss:true */\n\t\t\t\t\t\t} while (scrollEl = scrollEl.parentNode);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (scrollEl) {\n\t\t\t\t\tel = scrollEl;\n\t\t\t\t\trect = scrollEl.getBoundingClientRect();\n\t\t\t\t\tvx = (abs(rect.right - x) <= sens) - (abs(rect.left - x) <= sens);\n\t\t\t\t\tvy = (abs(rect.bottom - y) <= sens) - (abs(rect.top - y) <= sens);\n\t\t\t\t}\n\n\n\t\t\t\tif (!(vx || vy)) {\n\t\t\t\t\tvx = (winWidth - x <= sens) - (x <= sens);\n\t\t\t\t\tvy = (winHeight - y <= sens) - (y <= sens);\n\n\t\t\t\t\t/* jshint expr:true */\n\t\t\t\t\t(vx || vy) && (el = win);\n\t\t\t\t}\n\n\n\t\t\t\tif (autoScroll.vx !== vx || autoScroll.vy !== vy || autoScroll.el !== el) {\n\t\t\t\t\tautoScroll.el = el;\n\t\t\t\t\tautoScroll.vx = vx;\n\t\t\t\t\tautoScroll.vy = vy;\n\n\t\t\t\t\tclearInterval(autoScroll.pid);\n\n\t\t\t\t\tif (el) {\n\t\t\t\t\t\tautoScroll.pid = setInterval(function () {\n\t\t\t\t\t\t\tif (el === win) {\n\t\t\t\t\t\t\t\twin.scrollTo(win.pageXOffset + vx * speed, win.pageYOffset + vy * speed);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tvy && (el.scrollTop += vy * speed);\n\t\t\t\t\t\t\t\tvx && (el.scrollLeft += vx * speed);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}, 24);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}, 30),\n\n\t\t_prepareGroup = function (options) {\n\t\t\tvar group = options.group;\n\n\t\t\tif (!group || typeof group != 'object') {\n\t\t\t\tgroup = options.group = {name: group};\n\t\t\t}\n\n\t\t\t['pull', 'put'].forEach(function (key) {\n\t\t\t\tif (!(key in group)) {\n\t\t\t\t\tgroup[key] = true;\n\t\t\t\t}\n\t\t\t});\n\n\t\t\toptions.groups = ' ' + group.name + (group.put.join ? ' ' + group.put.join(' ') : '') + ' ';\n\t\t}\n\t;\n\n\n\n\t/**\n\t * @class  Sortable\n\t * @param  {HTMLElement}  el\n\t * @param  {Object}       [options]\n\t */\n\tfunction Sortable(el, options) {\n\t\tif (!(el && el.nodeType && el.nodeType === 1)) {\n\t\t\tthrow 'Sortable: `el` must be HTMLElement, and not ' + {}.toString.call(el);\n\t\t}\n\n\t\tthis.el = el; // root element\n\t\tthis.options = options = _extend({}, options);\n\n\n\t\t// Export instance\n\t\tel[expando] = this;\n\n\n\t\t// Default options\n\t\tvar defaults = {\n\t\t\tgroup: Math.random(),\n\t\t\tsort: true,\n\t\t\tdisabled: false,\n\t\t\tstore: null,\n\t\t\thandle: null,\n\t\t\tscroll: true,\n\t\t\tscrollSensitivity: 30,\n\t\t\tscrollSpeed: 10,\n\t\t\tdraggable: /[uo]l/i.test(el.nodeName) ? 'li' : '>*',\n\t\t\tghostClass: 'sortable-ghost',\n\t\t\tchosenClass: 'sortable-chosen',\n\t\t\tignore: 'a, img',\n\t\t\tfilter: null,\n\t\t\tanimation: 0,\n\t\t\tsetData: function (dataTransfer, dragEl) {\n\t\t\t\tdataTransfer.setData('Text', dragEl.textContent);\n\t\t\t},\n\t\t\tdropBubble: false,\n\t\t\tdragoverBubble: false,\n\t\t\tdataIdAttr: 'data-id',\n\t\t\tdelay: 0,\n\t\t\tforceFallback: false,\n\t\t\tfallbackClass: 'sortable-fallback',\n\t\t\tfallbackOnBody: false\n\t\t};\n\n\n\t\t// Set default options\n\t\tfor (var name in defaults) {\n\t\t\t!(name in options) && (options[name] = defaults[name]);\n\t\t}\n\n\t\t_prepareGroup(options);\n\n\t\t// Bind all private methods\n\t\tfor (var fn in this) {\n\t\t\tif (fn.charAt(0) === '_') {\n\t\t\t\tthis[fn] = this[fn].bind(this);\n\t\t\t}\n\t\t}\n\n\t\t// Setup drag mode\n\t\tthis.nativeDraggable = options.forceFallback ? false : supportDraggable;\n\n\t\t// Bind events\n\t\t_on(el, 'mousedown', this._onTapStart);\n\t\t_on(el, 'touchstart', this._onTapStart);\n\n\t\tif (this.nativeDraggable) {\n\t\t\t_on(el, 'dragover', this);\n\t\t\t_on(el, 'dragenter', this);\n\t\t}\n\n\t\ttouchDragOverListeners.push(this._onDragOver);\n\n\t\t// Restore sorting\n\t\toptions.store && this.sort(options.store.get(this));\n\t}\n\n\n\tSortable.prototype = /** @lends Sortable.prototype */ {\n\t\tconstructor: Sortable,\n\n\t\t_onTapStart: function (/** Event|TouchEvent */evt) {\n\t\t\tvar _this = this,\n\t\t\t\tel = this.el,\n\t\t\t\toptions = this.options,\n\t\t\t\ttype = evt.type,\n\t\t\t\ttouch = evt.touches && evt.touches[0],\n\t\t\t\ttarget = (touch || evt).target,\n\t\t\t\toriginalTarget = target,\n\t\t\t\tfilter = options.filter;\n\n\n\t\t\tif (type === 'mousedown' && evt.button !== 0 || options.disabled) {\n\t\t\t\treturn; // only left button or enabled\n\t\t\t}\n\n\t\t\ttarget = _closest(target, options.draggable, el);\n\n\t\t\tif (!target) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// get the index of the dragged element within its parent\n\t\t\toldIndex = _index(target);\n\n\t\t\t// Check filter\n\t\t\tif (typeof filter === 'function') {\n\t\t\t\tif (filter.call(this, evt, target, this)) {\n\t\t\t\t\t_dispatchEvent(_this, originalTarget, 'filter', target, el, oldIndex);\n\t\t\t\t\tevt.preventDefault();\n\t\t\t\t\treturn; // cancel dnd\n\t\t\t\t}\n\t\t\t}\n\t\t\telse if (filter) {\n\t\t\t\tfilter = filter.split(',').some(function (criteria) {\n\t\t\t\t\tcriteria = _closest(originalTarget, criteria.trim(), el);\n\n\t\t\t\t\tif (criteria) {\n\t\t\t\t\t\t_dispatchEvent(_this, criteria, 'filter', target, el, oldIndex);\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tif (filter) {\n\t\t\t\t\tevt.preventDefault();\n\t\t\t\t\treturn; // cancel dnd\n\t\t\t\t}\n\t\t\t}\n\n\n\t\t\tif (options.handle && !_closest(originalTarget, options.handle, el)) {\n\t\t\t\treturn;\n\t\t\t}\n\n\n\t\t\t// Prepare `dragstart`\n\t\t\tthis._prepareDragStart(evt, touch, target);\n\t\t},\n\n\t\t_prepareDragStart: function (/** Event */evt, /** Touch */touch, /** HTMLElement */target) {\n\t\t\tvar _this = this,\n\t\t\t\tel = _this.el,\n\t\t\t\toptions = _this.options,\n\t\t\t\townerDocument = el.ownerDocument,\n\t\t\t\tdragStartFn;\n\n\t\t\tif (target && !dragEl && (target.parentNode === el)) {\n\t\t\t\ttapEvt = evt;\n\n\t\t\t\trootEl = el;\n\t\t\t\tdragEl = target;\n\t\t\t\tparentEl = dragEl.parentNode;\n\t\t\t\tnextEl = dragEl.nextSibling;\n\t\t\t\tactiveGroup = options.group;\n\n\t\t\t\tdragStartFn = function () {\n\t\t\t\t\t// Delayed drag has been triggered\n\t\t\t\t\t// we can re-enable the events: touchmove/mousemove\n\t\t\t\t\t_this._disableDelayedDrag();\n\n\t\t\t\t\t// Make the element draggable\n\t\t\t\t\tdragEl.draggable = true;\n\n\t\t\t\t\t// Chosen item\n\t\t\t\t\t_toggleClass(dragEl, _this.options.chosenClass, true);\n\n\t\t\t\t\t// Bind the events: dragstart/dragend\n\t\t\t\t\t_this._triggerDragStart(touch);\n\t\t\t\t};\n\n\t\t\t\t// Disable \"draggable\"\n\t\t\t\toptions.ignore.split(',').forEach(function (criteria) {\n\t\t\t\t\t_find(dragEl, criteria.trim(), _disableDraggable);\n\t\t\t\t});\n\n\t\t\t\t_on(ownerDocument, 'mouseup', _this._onDrop);\n\t\t\t\t_on(ownerDocument, 'touchend', _this._onDrop);\n\t\t\t\t_on(ownerDocument, 'touchcancel', _this._onDrop);\n\n\t\t\t\tif (options.delay) {\n\t\t\t\t\t// If the user moves the pointer or let go the click or touch\n\t\t\t\t\t// before the delay has been reached:\n\t\t\t\t\t// disable the delayed drag\n\t\t\t\t\t_on(ownerDocument, 'mouseup', _this._disableDelayedDrag);\n\t\t\t\t\t_on(ownerDocument, 'touchend', _this._disableDelayedDrag);\n\t\t\t\t\t_on(ownerDocument, 'touchcancel', _this._disableDelayedDrag);\n\t\t\t\t\t_on(ownerDocument, 'mousemove', _this._disableDelayedDrag);\n\t\t\t\t\t_on(ownerDocument, 'touchmove', _this._disableDelayedDrag);\n\n\t\t\t\t\t_this._dragStartTimer = setTimeout(dragStartFn, options.delay);\n\t\t\t\t} else {\n\t\t\t\t\tdragStartFn();\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\t_disableDelayedDrag: function () {\n\t\t\tvar ownerDocument = this.el.ownerDocument;\n\n\t\t\tclearTimeout(this._dragStartTimer);\n\t\t\t_off(ownerDocument, 'mouseup', this._disableDelayedDrag);\n\t\t\t_off(ownerDocument, 'touchend', this._disableDelayedDrag);\n\t\t\t_off(ownerDocument, 'touchcancel', this._disableDelayedDrag);\n\t\t\t_off(ownerDocument, 'mousemove', this._disableDelayedDrag);\n\t\t\t_off(ownerDocument, 'touchmove', this._disableDelayedDrag);\n\t\t},\n\n\t\t_triggerDragStart: function (/** Touch */touch) {\n\t\t\tif (touch) {\n\t\t\t\t// Touch device support\n\t\t\t\ttapEvt = {\n\t\t\t\t\ttarget: dragEl,\n\t\t\t\t\tclientX: touch.clientX,\n\t\t\t\t\tclientY: touch.clientY\n\t\t\t\t};\n\n\t\t\t\tthis._onDragStart(tapEvt, 'touch');\n\t\t\t}\n\t\t\telse if (!this.nativeDraggable) {\n\t\t\t\tthis._onDragStart(tapEvt, true);\n\t\t\t}\n\t\t\telse {\n\t\t\t\t_on(dragEl, 'dragend', this);\n\t\t\t\t_on(rootEl, 'dragstart', this._onDragStart);\n\t\t\t}\n\n\t\t\ttry {\n\t\t\t\tif (document.selection) {\n\t\t\t\t\tdocument.selection.empty();\n\t\t\t\t} else {\n\t\t\t\t\twindow.getSelection().removeAllRanges();\n\t\t\t\t}\n\t\t\t} catch (err) {\n\t\t\t}\n\t\t},\n\n\t\t_dragStarted: function () {\n\t\t\tif (rootEl && dragEl) {\n\t\t\t\t// Apply effect\n\t\t\t\t_toggleClass(dragEl, this.options.ghostClass, true);\n\n\t\t\t\tSortable.active = this;\n\n\t\t\t\t// Drag start event\n\t\t\t\t_dispatchEvent(this, rootEl, 'start', dragEl, rootEl, oldIndex);\n\t\t\t}\n\t\t},\n\n\t\t_emulateDragOver: function () {\n\t\t\tif (touchEvt) {\n\t\t\t\tif (this._lastX === touchEvt.clientX && this._lastY === touchEvt.clientY) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tthis._lastX = touchEvt.clientX;\n\t\t\t\tthis._lastY = touchEvt.clientY;\n\n\t\t\t\tif (!supportCssPointerEvents) {\n\t\t\t\t\t_css(ghostEl, 'display', 'none');\n\t\t\t\t}\n\n\t\t\t\tvar target = document.elementFromPoint(touchEvt.clientX, touchEvt.clientY),\n\t\t\t\t\tparent = target,\n\t\t\t\t\tgroupName = ' ' + this.options.group.name + '',\n\t\t\t\t\ti = touchDragOverListeners.length;\n\n\t\t\t\tif (parent) {\n\t\t\t\t\tdo {\n\t\t\t\t\t\tif (parent[expando] && parent[expando].options.groups.indexOf(groupName) > -1) {\n\t\t\t\t\t\t\twhile (i--) {\n\t\t\t\t\t\t\t\ttouchDragOverListeners[i]({\n\t\t\t\t\t\t\t\t\tclientX: touchEvt.clientX,\n\t\t\t\t\t\t\t\t\tclientY: touchEvt.clientY,\n\t\t\t\t\t\t\t\t\ttarget: target,\n\t\t\t\t\t\t\t\t\trootEl: parent\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\ttarget = parent; // store last element\n\t\t\t\t\t}\n\t\t\t\t\t/* jshint boss:true */\n\t\t\t\t\twhile (parent = parent.parentNode);\n\t\t\t\t}\n\n\t\t\t\tif (!supportCssPointerEvents) {\n\t\t\t\t\t_css(ghostEl, 'display', '');\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\n\t\t_onTouchMove: function (/**TouchEvent*/evt) {\n\t\t\tif (tapEvt) {\n\t\t\t\t// only set the status to dragging, when we are actually dragging\n\t\t\t\tif (!Sortable.active) {\n\t\t\t\t\tthis._dragStarted();\n\t\t\t\t}\n\n\t\t\t\t// as well as creating the ghost element on the document body\n\t\t\t\tthis._appendGhost();\n\n\t\t\t\tvar touch = evt.touches ? evt.touches[0] : evt,\n\t\t\t\t\tdx = touch.clientX - tapEvt.clientX,\n\t\t\t\t\tdy = touch.clientY - tapEvt.clientY,\n\t\t\t\t\ttranslate3d = evt.touches ? 'translate3d(' + dx + 'px,' + dy + 'px,0)' : 'translate(' + dx + 'px,' + dy + 'px)';\n\n\t\t\t\tmoved = true;\n\t\t\t\ttouchEvt = touch;\n\n\t\t\t\t_css(ghostEl, 'webkitTransform', translate3d);\n\t\t\t\t_css(ghostEl, 'mozTransform', translate3d);\n\t\t\t\t_css(ghostEl, 'msTransform', translate3d);\n\t\t\t\t_css(ghostEl, 'transform', translate3d);\n\n\t\t\t\tevt.preventDefault();\n\t\t\t}\n\t\t},\n\n\t\t_appendGhost: function () {\n\t\t\tif (!ghostEl) {\n\t\t\t\tvar rect = dragEl.getBoundingClientRect(),\n\t\t\t\t\tcss = _css(dragEl),\n\t\t\t\t\toptions = this.options,\n\t\t\t\t\tghostRect;\n\n\t\t\t\tghostEl = dragEl.cloneNode(true);\n\n\t\t\t\t_toggleClass(ghostEl, options.ghostClass, false);\n\t\t\t\t_toggleClass(ghostEl, options.fallbackClass, true);\n\n\t\t\t\t_css(ghostEl, 'top', rect.top - parseInt(css.marginTop, 10));\n\t\t\t\t_css(ghostEl, 'left', rect.left - parseInt(css.marginLeft, 10));\n\t\t\t\t_css(ghostEl, 'width', rect.width);\n\t\t\t\t_css(ghostEl, 'height', rect.height);\n\t\t\t\t_css(ghostEl, 'opacity', '0.8');\n\t\t\t\t_css(ghostEl, 'position', 'fixed');\n\t\t\t\t_css(ghostEl, 'zIndex', '100000');\n\t\t\t\t_css(ghostEl, 'pointerEvents', 'none');\n\n\t\t\t\toptions.fallbackOnBody && document.body.appendChild(ghostEl) || rootEl.appendChild(ghostEl);\n\n\t\t\t\t// Fixing dimensions.\n\t\t\t\tghostRect = ghostEl.getBoundingClientRect();\n\t\t\t\t_css(ghostEl, 'width', rect.width * 2 - ghostRect.width);\n\t\t\t\t_css(ghostEl, 'height', rect.height * 2 - ghostRect.height);\n\t\t\t}\n\t\t},\n\n\t\t_onDragStart: function (/**Event*/evt, /**boolean*/useFallback) {\n\t\t\tvar dataTransfer = evt.dataTransfer,\n\t\t\t\toptions = this.options;\n\n\t\t\tthis._offUpEvents();\n\n\t\t\tif (activeGroup.pull == 'clone') {\n\t\t\t\tcloneEl = dragEl.cloneNode(true);\n\t\t\t\t_css(cloneEl, 'display', 'none');\n\t\t\t\trootEl.insertBefore(cloneEl, dragEl);\n\t\t\t}\n\n\t\t\tif (useFallback) {\n\n\t\t\t\tif (useFallback === 'touch') {\n\t\t\t\t\t// Bind touch events\n\t\t\t\t\t_on(document, 'touchmove', this._onTouchMove);\n\t\t\t\t\t_on(document, 'touchend', this._onDrop);\n\t\t\t\t\t_on(document, 'touchcancel', this._onDrop);\n\t\t\t\t} else {\n\t\t\t\t\t// Old brwoser\n\t\t\t\t\t_on(document, 'mousemove', this._onTouchMove);\n\t\t\t\t\t_on(document, 'mouseup', this._onDrop);\n\t\t\t\t}\n\n\t\t\t\tthis._loopId = setInterval(this._emulateDragOver, 50);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tif (dataTransfer) {\n\t\t\t\t\tdataTransfer.effectAllowed = 'move';\n\t\t\t\t\toptions.setData && options.setData.call(this, dataTransfer, dragEl);\n\t\t\t\t}\n\n\t\t\t\t_on(document, 'drop', this);\n\t\t\t\tsetTimeout(this._dragStarted, 0);\n\t\t\t}\n\t\t},\n\n\t\t_onDragOver: function (/**Event*/evt) {\n\t\t\tvar el = this.el,\n\t\t\t\ttarget,\n\t\t\t\tdragRect,\n\t\t\t\trevert,\n\t\t\t\toptions = this.options,\n\t\t\t\tgroup = options.group,\n\t\t\t\tgroupPut = group.put,\n\t\t\t\tisOwner = (activeGroup === group),\n\t\t\t\tcanSort = options.sort;\n\n\t\t\tif (evt.preventDefault !== void 0) {\n\t\t\t\tevt.preventDefault();\n\t\t\t\t!options.dragoverBubble && evt.stopPropagation();\n\t\t\t}\n\n\t\t\tmoved = true;\n\n\t\t\tif (activeGroup && !options.disabled &&\n\t\t\t\t(isOwner\n\t\t\t\t\t? canSort || (revert = !rootEl.contains(dragEl)) // Reverting item into the original list\n\t\t\t\t\t: activeGroup.pull && groupPut && (\n\t\t\t\t\t\t(activeGroup.name === group.name) || // by Name\n\t\t\t\t\t\t(groupPut.indexOf && ~groupPut.indexOf(activeGroup.name)) // by Array\n\t\t\t\t\t)\n\t\t\t\t) &&\n\t\t\t\t(evt.rootEl === void 0 || evt.rootEl === this.el) // touch fallback\n\t\t\t) {\n\t\t\t\t// Smart auto-scrolling\n\t\t\t\t_autoScroll(evt, options, this.el);\n\n\t\t\t\tif (_silent) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\ttarget = _closest(evt.target, options.draggable, el);\n\t\t\t\tdragRect = dragEl.getBoundingClientRect();\n\n\t\t\t\tif (revert) {\n\t\t\t\t\t_cloneHide(true);\n\n\t\t\t\t\tif (cloneEl || nextEl) {\n\t\t\t\t\t\trootEl.insertBefore(dragEl, cloneEl || nextEl);\n\t\t\t\t\t}\n\t\t\t\t\telse if (!canSort) {\n\t\t\t\t\t\trootEl.appendChild(dragEl);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\n\t\t\t\tif ((el.children.length === 0) || (el.children[0] === ghostEl) ||\n\t\t\t\t\t(el === evt.target) && (target = _ghostIsLast(el, evt))\n\t\t\t\t) {\n\n\t\t\t\t\tif (target) {\n\t\t\t\t\t\tif (target.animated) {\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\ttargetRect = target.getBoundingClientRect();\n\t\t\t\t\t}\n\n\t\t\t\t\t_cloneHide(isOwner);\n\n\t\t\t\t\tif (_onMove(rootEl, el, dragEl, dragRect, target, targetRect) !== false) {\n\t\t\t\t\t\tif (!dragEl.contains(el)) {\n\t\t\t\t\t\t\tel.appendChild(dragEl);\n\t\t\t\t\t\t\tparentEl = el; // actualization\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tthis._animate(dragRect, dragEl);\n\t\t\t\t\t\ttarget && this._animate(targetRect, target);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse if (target && !target.animated && target !== dragEl && (target.parentNode[expando] !== void 0)) {\n\t\t\t\t\tif (lastEl !== target) {\n\t\t\t\t\t\tlastEl = target;\n\t\t\t\t\t\tlastCSS = _css(target);\n\t\t\t\t\t\tlastParentCSS = _css(target.parentNode);\n\t\t\t\t\t}\n\n\n\t\t\t\t\tvar targetRect = target.getBoundingClientRect(),\n\t\t\t\t\t\twidth = targetRect.right - targetRect.left,\n\t\t\t\t\t\theight = targetRect.bottom - targetRect.top,\n\t\t\t\t\t\tfloating = /left|right|inline/.test(lastCSS.cssFloat + lastCSS.display)\n\t\t\t\t\t\t\t|| (lastParentCSS.display == 'flex' && lastParentCSS['flex-direction'].indexOf('row') === 0),\n\t\t\t\t\t\tisWide = (target.offsetWidth > dragEl.offsetWidth),\n\t\t\t\t\t\tisLong = (target.offsetHeight > dragEl.offsetHeight),\n\t\t\t\t\t\thalfway = (floating ? (evt.clientX - targetRect.left) / width : (evt.clientY - targetRect.top) / height) > 0.5,\n\t\t\t\t\t\tnextSibling = target.nextElementSibling,\n\t\t\t\t\t\tmoveVector = _onMove(rootEl, el, dragEl, dragRect, target, targetRect),\n\t\t\t\t\t\tafter\n\t\t\t\t\t;\n\n\t\t\t\t\tif (moveVector !== false) {\n\t\t\t\t\t\t_silent = true;\n\t\t\t\t\t\tsetTimeout(_unsilent, 30);\n\n\t\t\t\t\t\t_cloneHide(isOwner);\n\n\t\t\t\t\t\tif (moveVector === 1 || moveVector === -1) {\n\t\t\t\t\t\t\tafter = (moveVector === 1);\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse if (floating) {\n\t\t\t\t\t\t\tvar elTop = dragEl.offsetTop,\n\t\t\t\t\t\t\t\ttgTop = target.offsetTop;\n\n\t\t\t\t\t\t\tif (elTop === tgTop) {\n\t\t\t\t\t\t\t\tafter = (target.previousElementSibling === dragEl) && !isWide || halfway && isWide;\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tafter = tgTop > elTop;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tafter = (nextSibling !== dragEl) && !isLong || halfway && isLong;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (!dragEl.contains(el)) {\n\t\t\t\t\t\t\tif (after && !nextSibling) {\n\t\t\t\t\t\t\t\tel.appendChild(dragEl);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\ttarget.parentNode.insertBefore(dragEl, after ? nextSibling : target);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tparentEl = dragEl.parentNode; // actualization\n\n\t\t\t\t\t\tthis._animate(dragRect, dragEl);\n\t\t\t\t\t\tthis._animate(targetRect, target);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\t_animate: function (prevRect, target) {\n\t\t\tvar ms = this.options.animation;\n\n\t\t\tif (ms) {\n\t\t\t\tvar currentRect = target.getBoundingClientRect();\n\n\t\t\t\t_css(target, 'transition', 'none');\n\t\t\t\t_css(target, 'transform', 'translate3d('\n\t\t\t\t\t+ (prevRect.left - currentRect.left) + 'px,'\n\t\t\t\t\t+ (prevRect.top - currentRect.top) + 'px,0)'\n\t\t\t\t);\n\n\t\t\t\ttarget.offsetWidth; // repaint\n\n\t\t\t\t_css(target, 'transition', 'all ' + ms + 'ms');\n\t\t\t\t_css(target, 'transform', 'translate3d(0,0,0)');\n\n\t\t\t\tclearTimeout(target.animated);\n\t\t\t\ttarget.animated = setTimeout(function () {\n\t\t\t\t\t_css(target, 'transition', '');\n\t\t\t\t\t_css(target, 'transform', '');\n\t\t\t\t\ttarget.animated = false;\n\t\t\t\t}, ms);\n\t\t\t}\n\t\t},\n\n\t\t_offUpEvents: function () {\n\t\t\tvar ownerDocument = this.el.ownerDocument;\n\n\t\t\t_off(document, 'touchmove', this._onTouchMove);\n\t\t\t_off(ownerDocument, 'mouseup', this._onDrop);\n\t\t\t_off(ownerDocument, 'touchend', this._onDrop);\n\t\t\t_off(ownerDocument, 'touchcancel', this._onDrop);\n\t\t},\n\n\t\t_onDrop: function (/**Event*/evt) {\n\t\t\tvar el = this.el,\n\t\t\t\toptions = this.options;\n\n\t\t\tclearInterval(this._loopId);\n\t\t\tclearInterval(autoScroll.pid);\n\t\t\tclearTimeout(this._dragStartTimer);\n\n\t\t\t// Unbind events\n\t\t\t_off(document, 'mousemove', this._onTouchMove);\n\n\t\t\tif (this.nativeDraggable) {\n\t\t\t\t_off(document, 'drop', this);\n\t\t\t\t_off(el, 'dragstart', this._onDragStart);\n\t\t\t}\n\n\t\t\tthis._offUpEvents();\n\n\t\t\tif (evt) {\n\t\t\t\tif (moved) {\n\t\t\t\t\tevt.preventDefault();\n\t\t\t\t\t!options.dropBubble && evt.stopPropagation();\n\t\t\t\t}\n\n\t\t\t\tghostEl && ghostEl.parentNode.removeChild(ghostEl);\n\n\t\t\t\tif (dragEl) {\n\t\t\t\t\tif (this.nativeDraggable) {\n\t\t\t\t\t\t_off(dragEl, 'dragend', this);\n\t\t\t\t\t}\n\n\t\t\t\t\t_disableDraggable(dragEl);\n\n\t\t\t\t\t// Remove class's\n\t\t\t\t\t_toggleClass(dragEl, this.options.ghostClass, false);\n\t\t\t\t\t_toggleClass(dragEl, this.options.chosenClass, false);\n\n\t\t\t\t\tif (rootEl !== parentEl) {\n\t\t\t\t\t\tnewIndex = _index(dragEl);\n\n\t\t\t\t\t\tif (newIndex >= 0) {\n\t\t\t\t\t\t\t// drag from one list and drop into another\n\t\t\t\t\t\t\t_dispatchEvent(null, parentEl, 'sort', dragEl, rootEl, oldIndex, newIndex);\n\t\t\t\t\t\t\t_dispatchEvent(this, rootEl, 'sort', dragEl, rootEl, oldIndex, newIndex);\n\n\t\t\t\t\t\t\t// Add event\n\t\t\t\t\t\t\t_dispatchEvent(null, parentEl, 'add', dragEl, rootEl, oldIndex, newIndex);\n\n\t\t\t\t\t\t\t// Remove event\n\t\t\t\t\t\t\t_dispatchEvent(this, rootEl, 'remove', dragEl, rootEl, oldIndex, newIndex);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\t// Remove clone\n\t\t\t\t\t\tcloneEl && cloneEl.parentNode.removeChild(cloneEl);\n\n\t\t\t\t\t\tif (dragEl.nextSibling !== nextEl) {\n\t\t\t\t\t\t\t// Get the index of the dragged element within its parent\n\t\t\t\t\t\t\tnewIndex = _index(dragEl);\n\n\t\t\t\t\t\t\tif (newIndex >= 0) {\n\t\t\t\t\t\t\t\t// drag & drop within the same list\n\t\t\t\t\t\t\t\t_dispatchEvent(this, rootEl, 'update', dragEl, rootEl, oldIndex, newIndex);\n\t\t\t\t\t\t\t\t_dispatchEvent(this, rootEl, 'sort', dragEl, rootEl, oldIndex, newIndex);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (Sortable.active) {\n\t\t\t\t\t\tif (newIndex === null || newIndex === -1) {\n\t\t\t\t\t\t\tnewIndex = oldIndex;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t_dispatchEvent(this, rootEl, 'end', dragEl, rootEl, oldIndex, newIndex);\n\n\t\t\t\t\t\t// Save sorting\n\t\t\t\t\t\tthis.save();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Nulling\n\t\t\t\trootEl =\n\t\t\t\tdragEl =\n\t\t\t\tparentEl =\n\t\t\t\tghostEl =\n\t\t\t\tnextEl =\n\t\t\t\tcloneEl =\n\n\t\t\t\tscrollEl =\n\t\t\t\tscrollParentEl =\n\n\t\t\t\ttapEvt =\n\t\t\t\ttouchEvt =\n\n\t\t\t\tmoved =\n\t\t\t\tnewIndex =\n\n\t\t\t\tlastEl =\n\t\t\t\tlastCSS =\n\n\t\t\t\tactiveGroup =\n\t\t\t\tSortable.active = null;\n\t\t\t}\n\t\t},\n\n\n\t\thandleEvent: function (/**Event*/evt) {\n\t\t\tvar type = evt.type;\n\n\t\t\tif (type === 'dragover' || type === 'dragenter') {\n\t\t\t\tif (dragEl) {\n\t\t\t\t\tthis._onDragOver(evt);\n\t\t\t\t\t_globalDragOver(evt);\n\t\t\t\t}\n\t\t\t}\n\t\t\telse if (type === 'drop' || type === 'dragend') {\n\t\t\t\tthis._onDrop(evt);\n\t\t\t}\n\t\t},\n\n\n\t\t/**\n\t\t * Serializes the item into an array of string.\n\t\t * @returns {String[]}\n\t\t */\n\t\ttoArray: function () {\n\t\t\tvar order = [],\n\t\t\t\tel,\n\t\t\t\tchildren = this.el.children,\n\t\t\t\ti = 0,\n\t\t\t\tn = children.length,\n\t\t\t\toptions = this.options;\n\n\t\t\tfor (; i < n; i++) {\n\t\t\t\tel = children[i];\n\t\t\t\tif (_closest(el, options.draggable, this.el)) {\n\t\t\t\t\torder.push(el.getAttribute(options.dataIdAttr) || _generateId(el));\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn order;\n\t\t},\n\n\n\t\t/**\n\t\t * Sorts the elements according to the array.\n\t\t * @param  {String[]}  order  order of the items\n\t\t */\n\t\tsort: function (order) {\n\t\t\tvar items = {}, rootEl = this.el;\n\n\t\t\tthis.toArray().forEach(function (id, i) {\n\t\t\t\tvar el = rootEl.children[i];\n\n\t\t\t\tif (_closest(el, this.options.draggable, rootEl)) {\n\t\t\t\t\titems[id] = el;\n\t\t\t\t}\n\t\t\t}, this);\n\n\t\t\torder.forEach(function (id) {\n\t\t\t\tif (items[id]) {\n\t\t\t\t\trootEl.removeChild(items[id]);\n\t\t\t\t\trootEl.appendChild(items[id]);\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\n\n\t\t/**\n\t\t * Save the current sorting\n\t\t */\n\t\tsave: function () {\n\t\t\tvar store = this.options.store;\n\t\t\tstore && store.set(this);\n\t\t},\n\n\n\t\t/**\n\t\t * For each element in the set, get the first element that matches the selector by testing the element itself and traversing up through its ancestors in the DOM tree.\n\t\t * @param   {HTMLElement}  el\n\t\t * @param   {String}       [selector]  default: `options.draggable`\n\t\t * @returns {HTMLElement|null}\n\t\t */\n\t\tclosest: function (el, selector) {\n\t\t\treturn _closest(el, selector || this.options.draggable, this.el);\n\t\t},\n\n\n\t\t/**\n\t\t * Set/get option\n\t\t * @param   {string} name\n\t\t * @param   {*}      [value]\n\t\t * @returns {*}\n\t\t */\n\t\toption: function (name, value) {\n\t\t\tvar options = this.options;\n\n\t\t\tif (value === void 0) {\n\t\t\t\treturn options[name];\n\t\t\t} else {\n\t\t\t\toptions[name] = value;\n\n\t\t\t\tif (name === 'group') {\n\t\t\t\t\t_prepareGroup(options);\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\n\t\t/**\n\t\t * Destroy\n\t\t */\n\t\tdestroy: function () {\n\t\t\tvar el = this.el;\n\n\t\t\tel[expando] = null;\n\n\t\t\t_off(el, 'mousedown', this._onTapStart);\n\t\t\t_off(el, 'touchstart', this._onTapStart);\n\n\t\t\tif (this.nativeDraggable) {\n\t\t\t\t_off(el, 'dragover', this);\n\t\t\t\t_off(el, 'dragenter', this);\n\t\t\t}\n\n\t\t\t// Remove draggable attributes\n\t\t\tArray.prototype.forEach.call(el.querySelectorAll('[draggable]'), function (el) {\n\t\t\t\tel.removeAttribute('draggable');\n\t\t\t});\n\n\t\t\ttouchDragOverListeners.splice(touchDragOverListeners.indexOf(this._onDragOver), 1);\n\n\t\t\tthis._onDrop();\n\n\t\t\tthis.el = el = null;\n\t\t}\n\t};\n\n\n\tfunction _cloneHide(state) {\n\t\tif (cloneEl && (cloneEl.state !== state)) {\n\t\t\t_css(cloneEl, 'display', state ? 'none' : '');\n\t\t\t!state && cloneEl.state && rootEl.insertBefore(cloneEl, dragEl);\n\t\t\tcloneEl.state = state;\n\t\t}\n\t}\n\n\n\tfunction _closest(/**HTMLElement*/el, /**String*/selector, /**HTMLElement*/ctx) {\n\t\tif (el) {\n\t\t\tctx = ctx || document;\n\t\t\tselector = selector.split('.');\n\n\t\t\tvar tag = selector.shift().toUpperCase(),\n\t\t\t\tre = new RegExp('\\\\s(' + selector.join('|') + ')(?=\\\\s)', 'g');\n\n\t\t\tdo {\n\t\t\t\tif (\n\t\t\t\t\t(tag === '>*' && el.parentNode === ctx) || (\n\t\t\t\t\t\t(tag === '' || el.nodeName.toUpperCase() == tag) &&\n\t\t\t\t\t\t(!selector.length || ((' ' + el.className + ' ').match(re) || []).length == selector.length)\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\treturn el;\n\t\t\t\t}\n\t\t\t}\n\t\t\twhile (el !== ctx && (el = el.parentNode));\n\t\t}\n\n\t\treturn null;\n\t}\n\n\n\tfunction _globalDragOver(/**Event*/evt) {\n\t\tif (evt.dataTransfer) {\n\t\t\tevt.dataTransfer.dropEffect = 'move';\n\t\t}\n\t\tevt.preventDefault();\n\t}\n\n\n\tfunction _on(el, event, fn) {\n\t\tel.addEventListener(event, fn, false);\n\t}\n\n\n\tfunction _off(el, event, fn) {\n\t\tel.removeEventListener(event, fn, false);\n\t}\n\n\n\tfunction _toggleClass(el, name, state) {\n\t\tif (el) {\n\t\t\tif (el.classList) {\n\t\t\t\tel.classList[state ? 'add' : 'remove'](name);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tvar className = (' ' + el.className + ' ').replace(RSPACE, ' ').replace(' ' + name + ' ', ' ');\n\t\t\t\tel.className = (className + (state ? ' ' + name : '')).replace(RSPACE, ' ');\n\t\t\t}\n\t\t}\n\t}\n\n\n\tfunction _css(el, prop, val) {\n\t\tvar style = el && el.style;\n\n\t\tif (style) {\n\t\t\tif (val === void 0) {\n\t\t\t\tif (document.defaultView && document.defaultView.getComputedStyle) {\n\t\t\t\t\tval = document.defaultView.getComputedStyle(el, '');\n\t\t\t\t}\n\t\t\t\telse if (el.currentStyle) {\n\t\t\t\t\tval = el.currentStyle;\n\t\t\t\t}\n\n\t\t\t\treturn prop === void 0 ? val : val[prop];\n\t\t\t}\n\t\t\telse {\n\t\t\t\tif (!(prop in style)) {\n\t\t\t\t\tprop = '-webkit-' + prop;\n\t\t\t\t}\n\n\t\t\t\tstyle[prop] = val + (typeof val === 'string' ? '' : 'px');\n\t\t\t}\n\t\t}\n\t}\n\n\n\tfunction _find(ctx, tagName, iterator) {\n\t\tif (ctx) {\n\t\t\tvar list = ctx.getElementsByTagName(tagName), i = 0, n = list.length;\n\n\t\t\tif (iterator) {\n\t\t\t\tfor (; i < n; i++) {\n\t\t\t\t\titerator(list[i], i);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn list;\n\t\t}\n\n\t\treturn [];\n\t}\n\n\n\n\tfunction _dispatchEvent(sortable, rootEl, name, targetEl, fromEl, startIndex, newIndex) {\n\t\tvar evt = document.createEvent('Event'),\n\t\t\toptions = (sortable || rootEl[expando]).options,\n\t\t\tonName = 'on' + name.charAt(0).toUpperCase() + name.substr(1);\n\n\t\tevt.initEvent(name, true, true);\n\n\t\tevt.to = rootEl;\n\t\tevt.from = fromEl || rootEl;\n\t\tevt.item = targetEl || rootEl;\n\t\tevt.clone = cloneEl;\n\n\t\tevt.oldIndex = startIndex;\n\t\tevt.newIndex = newIndex;\n\n\t\trootEl.dispatchEvent(evt);\n\n\t\tif (options[onName]) {\n\t\t\toptions[onName].call(sortable, evt);\n\t\t}\n\t}\n\n\n\tfunction _onMove(fromEl, toEl, dragEl, dragRect, targetEl, targetRect) {\n\t\tvar evt,\n\t\t\tsortable = fromEl[expando],\n\t\t\tonMoveFn = sortable.options.onMove,\n\t\t\tretVal;\n\n\t\tevt = document.createEvent('Event');\n\t\tevt.initEvent('move', true, true);\n\n\t\tevt.to = toEl;\n\t\tevt.from = fromEl;\n\t\tevt.dragged = dragEl;\n\t\tevt.draggedRect = dragRect;\n\t\tevt.related = targetEl || toEl;\n\t\tevt.relatedRect = targetRect || toEl.getBoundingClientRect();\n\n\t\tfromEl.dispatchEvent(evt);\n\n\t\tif (onMoveFn) {\n\t\t\tretVal = onMoveFn.call(sortable, evt);\n\t\t}\n\n\t\treturn retVal;\n\t}\n\n\n\tfunction _disableDraggable(el) {\n\t\tel.draggable = false;\n\t}\n\n\n\tfunction _unsilent() {\n\t\t_silent = false;\n\t}\n\n\n\t/** @returns {HTMLElement|false} */\n\tfunction _ghostIsLast(el, evt) {\n\t\tvar lastEl = el.lastElementChild,\n\t\t\t\trect = lastEl.getBoundingClientRect();\n\n\t\treturn ((evt.clientY - (rect.top + rect.height) > 5) || (evt.clientX - (rect.right + rect.width) > 5)) && lastEl; // min delta\n\t}\n\n\n\t/**\n\t * Generate id\n\t * @param   {HTMLElement} el\n\t * @returns {String}\n\t * @private\n\t */\n\tfunction _generateId(el) {\n\t\tvar str = el.tagName + el.className + el.src + el.href + el.textContent,\n\t\t\ti = str.length,\n\t\t\tsum = 0;\n\n\t\twhile (i--) {\n\t\t\tsum += str.charCodeAt(i);\n\t\t}\n\n\t\treturn sum.toString(36);\n\t}\n\n\t/**\n\t * Returns the index of an element within its parent\n\t * @param  {HTMLElement} el\n\t * @return {number}\n\t */\n\tfunction _index(el) {\n\t\tvar index = 0;\n\n\t\tif (!el || !el.parentNode) {\n\t\t\treturn -1;\n\t\t}\n\n\t\twhile (el && (el = el.previousElementSibling)) {\n\t\t\tif (el.nodeName.toUpperCase() !== 'TEMPLATE') {\n\t\t\t\tindex++;\n\t\t\t}\n\t\t}\n\n\t\treturn index;\n\t}\n\n\tfunction _throttle(callback, ms) {\n\t\tvar args, _this;\n\n\t\treturn function () {\n\t\t\tif (args === void 0) {\n\t\t\t\targs = arguments;\n\t\t\t\t_this = this;\n\n\t\t\t\tsetTimeout(function () {\n\t\t\t\t\tif (args.length === 1) {\n\t\t\t\t\t\tcallback.call(_this, args[0]);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tcallback.apply(_this, args);\n\t\t\t\t\t}\n\n\t\t\t\t\targs = void 0;\n\t\t\t\t}, ms);\n\t\t\t}\n\t\t};\n\t}\n\n\tfunction _extend(dst, src) {\n\t\tif (dst && src) {\n\t\t\tfor (var key in src) {\n\t\t\t\tif (src.hasOwnProperty(key)) {\n\t\t\t\t\tdst[key] = src[key];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn dst;\n\t}\n\n\n\t// Export utils\n\tSortable.utils = {\n\t\ton: _on,\n\t\toff: _off,\n\t\tcss: _css,\n\t\tfind: _find,\n\t\tis: function (el, selector) {\n\t\t\treturn !!_closest(el, selector, el);\n\t\t},\n\t\textend: _extend,\n\t\tthrottle: _throttle,\n\t\tclosest: _closest,\n\t\ttoggleClass: _toggleClass,\n\t\tindex: _index\n\t};\n\n\n\t/**\n\t * Create sortable instance\n\t * @param {HTMLElement}  el\n\t * @param {Object}      [options]\n\t */\n\tSortable.create = function (el, options) {\n\t\treturn new Sortable(el, options);\n\t};\n\n\n\t// Export\n\tSortable.version = '1.3.0';\n\treturn Sortable;\n});"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/angular-moment.js",
    "content": "/* angular-moment.js / v0.9.0 / (c) 2013, 2014, 2015 Uri Shaked / MIT Licence */\n\n'format global';\n/* global define */\n'deps angular';\n'deps moment';\n\n(function () {\n\t'use strict';\n\n\tfunction angularMoment(angular, moment) {\n\n\t\t/**\n\t\t * @ngdoc overview\n\t\t * @name angularMoment\n\t\t *\n\t\t * @description\n\t\t * angularMoment module provides moment.js functionality for angular.js apps.\n\t\t */\n\t\treturn angular.module('angularMoment', [])\n\n\t\t/**\n\t\t * @ngdoc object\n\t\t * @name angularMoment.config:angularMomentConfig\n\t\t *\n\t\t * @description\n\t\t * Common configuration of the angularMoment module\n\t\t */\n\t\t\t.constant('angularMomentConfig', {\n\t\t\t\t/**\n\t\t\t\t * @ngdoc property\n\t\t\t\t * @name angularMoment.config.angularMomentConfig#preprocess\n\t\t\t\t * @propertyOf angularMoment.config:angularMomentConfig\n\t\t\t\t * @returns {string} The default preprocessor to apply\n\t\t\t\t *\n\t\t\t\t * @description\n\t\t\t\t * Defines a default preprocessor to apply (e.g. 'unix', 'etc', ...). The default value is null,\n\t\t\t\t * i.e. no preprocessor will be applied.\n\t\t\t\t */\n\t\t\t\tpreprocess: null, // e.g. 'unix', 'utc', ...\n\n\t\t\t\t/**\n\t\t\t\t * @ngdoc property\n\t\t\t\t * @name angularMoment.config.angularMomentConfig#timezone\n\t\t\t\t * @propertyOf angularMoment.config:angularMomentConfig\n\t\t\t\t * @returns {string} The default timezone\n\t\t\t\t *\n\t\t\t\t * @description\n\t\t\t\t * The default timezone (e.g. 'Europe/London'). Empty string by default (does not apply\n\t\t\t\t * any timezone shift).\n\t\t\t\t */\n\t\t\t\ttimezone: '',\n\n\t\t\t\t/**\n\t\t\t\t * @ngdoc property\n\t\t\t\t * @name angularMoment.config.angularMomentConfig#format\n\t\t\t\t * @propertyOf angularMoment.config:angularMomentConfig\n\t\t\t\t * @returns {string} The pre-conversion format of the date\n\t\t\t\t *\n\t\t\t\t * @description\n\t\t\t\t * Specify the format of the input date. Essentially it's a\n\t\t\t\t * default and saves you from specifying a format in every\n\t\t\t\t * element. Overridden by element attr. Null by default.\n\t\t\t\t */\n\t\t\t\tformat: null,\n\n\t\t\t\t/**\n\t\t\t\t * @ngdoc property\n\t\t\t\t * @name angularMoment.config.angularMomentConfig#statefulFilters\n\t\t\t\t * @propertyOf angularMoment.config:angularMomentConfig\n\t\t\t\t * @returns {boolean} Whether angular-moment filters should be stateless (or not)\n\t\t\t\t *\n\t\t\t\t * @description\n\t\t\t\t * Specifies whether the filters included with angular-moment are stateful.\n\t\t\t\t * Stateful filters will automatically re-evaluate whenever you change the timezone\n\t\t\t\t * or language settings, but may negatively impact performance. true by default.\n\t\t\t\t */\n\t\t\t\tstatefulFilters: true\n\t\t\t})\n\n\t\t/**\n\t\t * @ngdoc object\n\t\t * @name angularMoment.object:moment\n\t\t *\n\t\t * @description\n\t\t * moment global (as provided by the moment.js library)\n\t\t */\n\t\t\t.constant('moment', moment)\n\n\t\t/**\n\t\t * @ngdoc object\n\t\t * @name angularMoment.config:amTimeAgoConfig\n\t\t * @module angularMoment\n\t\t *\n\t\t * @description\n\t\t * configuration specific to the amTimeAgo directive\n\t\t */\n\t\t\t.constant('amTimeAgoConfig', {\n\t\t\t\t/**\n\t\t\t\t * @ngdoc property\n\t\t\t\t * @name angularMoment.config.amTimeAgoConfig#withoutSuffix\n\t\t\t\t * @propertyOf angularMoment.config:amTimeAgoConfig\n\t\t\t\t * @returns {boolean} Whether to include a suffix in am-time-ago directive\n\t\t\t\t *\n\t\t\t\t * @description\n\t\t\t\t * Defaults to false.\n\t\t\t\t */\n\t\t\t\twithoutSuffix: false,\n\n\t\t\t\t/**\n\t\t\t\t * @ngdoc property\n\t\t\t\t * @name angularMoment.config.amTimeAgoConfig#serverTime\n\t\t\t\t * @propertyOf angularMoment.config:amTimeAgoConfig\n\t\t\t\t * @returns {number} Server time in milliseconds since the epoch\n\t\t\t\t *\n\t\t\t\t * @description\n\t\t\t\t * If set, time ago will be calculated relative to the given value.\n\t\t\t\t * If null, local time will be used. Defaults to null.\n\t\t\t\t */\n\t\t\t\tserverTime: null,\n\n\t\t\t\t/**\n\t\t\t\t * @ngdoc property\n\t\t\t\t * @name angularMoment.config.amTimeAgoConfig#format\n\t\t\t\t * @propertyOf angularMoment.config:amTimeAgoConfig\n\t\t\t\t * @returns {string} The format of the date to be displayed in the title of the element. If null,\n\t\t\t\t *        the directive set the title of the element.\n\t\t\t\t *\n\t\t\t\t * @description\n\t\t\t\t * Specify the format of the date when displayed. null by default.\n\t\t\t\t */\n\t\t\t\ttitleFormat: null\n\t\t\t})\n\n\t\t/**\n\t\t * @ngdoc directive\n\t\t * @name angularMoment.directive:amTimeAgo\n\t\t * @module angularMoment\n\t\t *\n\t\t * @restrict A\n\t\t */\n\t\t\t.directive('amTimeAgo', ['$window', 'moment', 'amMoment', 'amTimeAgoConfig', 'angularMomentConfig', function ($window, moment, amMoment, amTimeAgoConfig, angularMomentConfig) {\n\n\t\t\t\treturn function (scope, element, attr) {\n\t\t\t\t\tvar activeTimeout = null;\n\t\t\t\t\tvar currentValue;\n\t\t\t\t\tvar currentFormat = angularMomentConfig.format;\n\t\t\t\t\tvar withoutSuffix = amTimeAgoConfig.withoutSuffix;\n\t\t\t\t\tvar titleFormat = amTimeAgoConfig.titleFormat;\n\t\t\t\t\tvar localDate = new Date().getTime();\n\t\t\t\t\tvar preprocess = angularMomentConfig.preprocess;\n\t\t\t\t\tvar modelName = attr.amTimeAgo.replace(/^::/, '');\n\t\t\t\t\tvar isBindOnce = (attr.amTimeAgo.indexOf('::') === 0);\n\t\t\t\t\tvar isTimeElement = ('TIME' === element[0].nodeName.toUpperCase());\n\t\t\t\t\tvar unwatchChanges;\n\n\t\t\t\t\tfunction getNow() {\n\t\t\t\t\t\tvar now;\n\t\t\t\t\t\tif (amTimeAgoConfig.serverTime) {\n\t\t\t\t\t\t\tvar localNow = new Date().getTime();\n\t\t\t\t\t\t\tvar nowMillis = localNow - localDate + amTimeAgoConfig.serverTime;\n\t\t\t\t\t\t\tnow = moment(nowMillis);\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tnow = moment();\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn now;\n\t\t\t\t\t}\n\n\t\t\t\t\tfunction cancelTimer() {\n\t\t\t\t\t\tif (activeTimeout) {\n\t\t\t\t\t\t\t$window.clearTimeout(activeTimeout);\n\t\t\t\t\t\t\tactiveTimeout = null;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tfunction updateTime(momentInstance) {\n\t\t\t\t\t\telement.text(momentInstance.from(getNow(), withoutSuffix));\n\n\t\t\t\t\t\tif (titleFormat && !element.attr('title')) {\n\t\t\t\t\t\t\telement.attr('title', momentInstance.local().format(titleFormat));\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (!isBindOnce) {\n\n\t\t\t\t\t\t\tvar howOld = Math.abs(getNow().diff(momentInstance, 'minute'));\n\t\t\t\t\t\t\tvar secondsUntilUpdate = 3600;\n\t\t\t\t\t\t\tif (howOld < 1) {\n\t\t\t\t\t\t\t\tsecondsUntilUpdate = 1;\n\t\t\t\t\t\t\t} else if (howOld < 60) {\n\t\t\t\t\t\t\t\tsecondsUntilUpdate = 30;\n\t\t\t\t\t\t\t} else if (howOld < 180) {\n\t\t\t\t\t\t\t\tsecondsUntilUpdate = 300;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tactiveTimeout = $window.setTimeout(function () {\n\t\t\t\t\t\t\t\tupdateTime(momentInstance);\n\t\t\t\t\t\t\t}, secondsUntilUpdate * 1000);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tfunction updateDateTimeAttr(value) {\n\t\t\t\t\t\tif (isTimeElement) {\n\t\t\t\t\t\t\telement.attr('datetime', value);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tfunction updateMoment() {\n\t\t\t\t\t\tcancelTimer();\n\t\t\t\t\t\tif (currentValue) {\n\t\t\t\t\t\t\tvar momentValue = amMoment.preprocessDate(currentValue, preprocess, currentFormat);\n\t\t\t\t\t\t\tupdateTime(momentValue);\n\t\t\t\t\t\t\tupdateDateTimeAttr(momentValue.toISOString());\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tunwatchChanges = scope.$watch(modelName, function (value) {\n\t\t\t\t\t\tif ((typeof value === 'undefined') || (value === null) || (value === '')) {\n\t\t\t\t\t\t\tcancelTimer();\n\t\t\t\t\t\t\tif (currentValue) {\n\t\t\t\t\t\t\t\telement.text('');\n\t\t\t\t\t\t\t\tupdateDateTimeAttr('');\n\t\t\t\t\t\t\t\tcurrentValue = null;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tcurrentValue = value;\n\t\t\t\t\t\tupdateMoment();\n\n\t\t\t\t\t\tif (value !== undefined && isBindOnce) {\n\t\t\t\t\t\t\tunwatchChanges();\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\n\t\t\t\t\tif (angular.isDefined(attr.amWithoutSuffix)) {\n\t\t\t\t\t\tscope.$watch(attr.amWithoutSuffix, function (value) {\n\t\t\t\t\t\t\tif (typeof value === 'boolean') {\n\t\t\t\t\t\t\t\twithoutSuffix = value;\n\t\t\t\t\t\t\t\tupdateMoment();\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\twithoutSuffix = amTimeAgoConfig.withoutSuffix;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\n\t\t\t\t\tattr.$observe('amFormat', function (format) {\n\t\t\t\t\t\tif (typeof format !== 'undefined') {\n\t\t\t\t\t\t\tcurrentFormat = format;\n\t\t\t\t\t\t\tupdateMoment();\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\n\t\t\t\t\tattr.$observe('amPreprocess', function (newValue) {\n\t\t\t\t\t\tpreprocess = newValue;\n\t\t\t\t\t\tupdateMoment();\n\t\t\t\t\t});\n\n\t\t\t\t\tscope.$on('$destroy', function () {\n\t\t\t\t\t\tcancelTimer();\n\t\t\t\t\t});\n\n\t\t\t\t\tscope.$on('amMoment:localeChanged', function () {\n\t\t\t\t\t\tupdateMoment();\n\t\t\t\t\t});\n\t\t\t\t};\n\t\t\t}])\n\n\t\t/**\n\t\t * @ngdoc service\n\t\t * @name angularMoment.service.amMoment\n\t\t * @module angularMoment\n\t\t */\n\t\t\t.service('amMoment', ['moment', '$rootScope', '$log', 'angularMomentConfig', function (moment, $rootScope, $log, angularMomentConfig) {\n\t\t\t\t/**\n\t\t\t\t * @ngdoc property\n\t\t\t\t * @name angularMoment:amMoment#preprocessors\n\t\t\t\t * @module angularMoment\n\t\t\t\t *\n\t\t\t\t * @description\n\t\t\t\t * Defines the preprocessors for the preprocessDate method. By default, the following preprocessors\n\t\t\t\t * are defined: utc, unix.\n\t\t\t\t */\n\t\t\t\tthis.preprocessors = {\n\t\t\t\t\tutc: moment.utc,\n\t\t\t\t\tunix: moment.unix\n\t\t\t\t};\n\n\t\t\t\t/**\n\t\t\t\t * @ngdoc function\n\t\t\t\t * @name angularMoment.service.amMoment#changeLocale\n\t\t\t\t * @methodOf angularMoment.service.amMoment\n\t\t\t\t *\n\t\t\t\t * @description\n\t\t\t\t * Changes the locale for moment.js and updates all the am-time-ago directive instances\n\t\t\t\t * with the new locale. Also broadcasts a `amMoment:localeChanged` event on $rootScope.\n\t\t\t\t *\n\t\t\t\t * @param {string} locale Locale code (e.g. en, es, ru, pt-br, etc.)\n\t\t\t\t */\n\t\t\t\tthis.changeLocale = function (locale) {\n\t\t\t\t\tvar result = moment.locale(locale);\n\t\t\t\t\tif (angular.isDefined(locale)) {\n\t\t\t\t\t\t$rootScope.$broadcast('amMoment:localeChanged');\n\n\t\t\t\t\t}\n\t\t\t\t\treturn result;\n\t\t\t\t};\n\n\t\t\t\t/**\n\t\t\t\t * @ngdoc function\n\t\t\t\t * @name angularMoment.service.amMoment#preprocessDate\n\t\t\t\t * @methodOf angularMoment.service.amMoment\n\t\t\t\t *\n\t\t\t\t * @description\n\t\t\t\t * Preprocess a given value and convert it into a Moment instance appropriate for use in the\n\t\t\t\t * am-time-ago directive and the filters.\n\t\t\t\t *\n\t\t\t\t * @param {*} value The value to be preprocessed\n\t\t\t\t * @param {string} preprocess The name of the preprocessor the apply (e.g. utc, unix)\n\t\t\t\t * @param {string=} format Specifies how to parse the value (see {@link http://momentjs.com/docs/#/parsing/string-format/})\n\t\t\t\t * @return {Moment} A value that can be parsed by the moment library\n\t\t\t\t */\n\t\t\t\tthis.preprocessDate = function (value, preprocess, format) {\n\t\t\t\t\tif (angular.isUndefined(preprocess)) {\n\t\t\t\t\t\tpreprocess = angularMomentConfig.preprocess;\n\t\t\t\t\t}\n\t\t\t\t\tif (this.preprocessors[preprocess]) {\n\t\t\t\t\t\treturn this.preprocessors[preprocess](value, format);\n\t\t\t\t\t}\n\t\t\t\t\tif (preprocess) {\n\t\t\t\t\t\t$log.warn('angular-moment: Ignoring unsupported value for preprocess: ' + preprocess);\n\t\t\t\t\t}\n\t\t\t\t\tif (!isNaN(parseFloat(value)) && isFinite(value)) {\n\t\t\t\t\t\t// Milliseconds since the epoch\n\t\t\t\t\t\treturn moment(parseInt(value, 10));\n\t\t\t\t\t}\n\t\t\t\t\t// else just returns the value as-is.\n\t\t\t\t\treturn moment(value, format);\n\t\t\t\t};\n\n\t\t\t\t/**\n\t\t\t\t * @ngdoc function\n\t\t\t\t * @name angularMoment.service.amMoment#applyTimezone\n\t\t\t\t * @methodOf angularMoment.service.amMoment\n\t\t\t\t *\n\t\t\t\t * @description\n\t\t\t\t * Apply a timezone onto a given moment object - if moment-timezone.js is included\n\t\t\t\t * Otherwise, it'll not apply any timezone shift.\n\t\t\t\t *\n\t\t\t\t * @param {Moment} aMoment a moment() instance to apply the timezone shift to\n\t\t\t\t * @returns {Moment} The given moment with the timezone shift applied\n\t\t\t\t */\n\t\t\t\tthis.applyTimezone = function (aMoment) {\n\t\t\t\t\tvar timezone = angularMomentConfig.timezone;\n\t\t\t\t\tif (aMoment && timezone) {\n\t\t\t\t\t\tif (aMoment.tz) {\n\t\t\t\t\t\t\taMoment = aMoment.tz(timezone);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$log.warn('angular-moment: timezone specified but moment.tz() is undefined. Did you forget to include moment-timezone.js?');\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn aMoment;\n\t\t\t\t};\n\t\t\t}])\n\n\t\t/**\n\t\t * @ngdoc filter\n\t\t * @name angularMoment.filter:amCalendar\n\t\t * @module angularMoment\n\t\t */\n\t\t\t.filter('amCalendar', ['moment', 'amMoment', 'angularMomentConfig', function (moment, amMoment, angularMomentConfig) {\n\t\t\t\tfunction amCalendarFilter(value, preprocess) {\n\t\t\t\t\tif (typeof value === 'undefined' || value === null) {\n\t\t\t\t\t\treturn '';\n\t\t\t\t\t}\n\n\t\t\t\t\tvalue = amMoment.preprocessDate(value, preprocess);\n\t\t\t\t\tvar date = moment(value);\n\t\t\t\t\tif (!date.isValid()) {\n\t\t\t\t\t\treturn '';\n\t\t\t\t\t}\n\n\t\t\t\t\treturn amMoment.applyTimezone(date).calendar();\n\t\t\t\t}\n\n\t\t\t\t// Since AngularJS 1.3, filters have to explicitly define being stateful\n\t\t\t\t// (this is no longer the default).\n\t\t\t\tamCalendarFilter.$stateful = angularMomentConfig.statefulFilters;\n\n\t\t\t\treturn amCalendarFilter;\n\t\t\t}])\n\n\t\t/**\n\t\t * @ngdoc filter\n\t\t * @name angularMoment.filter:amDateFormat\n\t\t * @module angularMoment\n\t\t * @function\n\t\t */\n\t\t\t.filter('amDateFormat', ['moment', 'amMoment', 'angularMomentConfig', function (moment, amMoment, angularMomentConfig) {\n\t\t\t\tfunction amDateFormatFilter(value, format, preprocess) {\n\t\t\t\t\tif (typeof value === 'undefined' || value === null) {\n\t\t\t\t\t\treturn '';\n\t\t\t\t\t}\n\n\t\t\t\t\tvalue = amMoment.preprocessDate(value, preprocess);\n\t\t\t\t\tvar date = moment(value);\n\t\t\t\t\tif (!date.isValid()) {\n\t\t\t\t\t\treturn '';\n\t\t\t\t\t}\n\n\t\t\t\t\treturn amMoment.applyTimezone(date).format(format);\n\t\t\t\t}\n\n\t\t\t\tamDateFormatFilter.$stateful = angularMomentConfig.statefulFilters;\n\n\t\t\t\treturn amDateFormatFilter;\n\t\t\t}])\n\n\t\t/**\n\t\t * @ngdoc filter\n\t\t * @name angularMoment.filter:amDurationFormat\n\t\t * @module angularMoment\n\t\t * @function\n\t\t */\n\t\t\t.filter('amDurationFormat', ['moment', 'angularMomentConfig', function (moment, angularMomentConfig) {\n\t\t\t\tfunction amDurationFormatFilter(value, format, suffix) {\n\t\t\t\t\tif (typeof value === 'undefined' || value === null) {\n\t\t\t\t\t\treturn '';\n\t\t\t\t\t}\n\n\t\t\t\t\treturn moment.duration(value, format).humanize(suffix);\n\t\t\t\t}\n\n\t\t\t\tamDurationFormatFilter.$stateful = angularMomentConfig.statefulFilters;\n\n\t\t\t\treturn amDurationFormatFilter;\n\t\t\t}])\n\n\t\t/**\n\t\t * @ngdoc filter\n\t\t * @name angularMoment.filter:amTimeAgo\n\t\t * @module angularMoment\n\t\t * @function\n\t\t */\n\t\t\t.filter('amTimeAgo', ['moment', 'amMoment', 'angularMomentConfig', function (moment, amMoment, angularMomentConfig) {\n\t\t\t\tfunction amTimeAgoFilter(value, preprocess, suffix) {\n\t\t\t\t\tif (typeof value === 'undefined' || value === null) {\n\t\t\t\t\t\treturn '';\n\t\t\t\t\t}\n\n\t\t\t\t\tvalue = amMoment.preprocessDate(value, preprocess);\n\t\t\t\t\tvar date = moment(value);\n\t\t\t\t\tif (!date.isValid()) {\n\t\t\t\t\t\treturn '';\n\t\t\t\t\t}\n\n\t\t\t\t\treturn amMoment.applyTimezone(date).fromNow(suffix);\n\t\t\t\t}\n\n\t\t\t\tamTimeAgoFilter.$stateful = angularMomentConfig.statefulFilters;\n\n\t\t\t\treturn amTimeAgoFilter;\n\t\t\t}]);\n\t}\n\n\tif (typeof define === 'function' && define.amd) {\n\t\tdefine('angular-moment', ['angular', 'moment'], angularMoment);\n\t} else if (typeof module !== 'undefined' && module && module.exports) {\n\t\tangularMoment(angular, require('moment'));\n\t} else {\n\t\tangularMoment(angular, window.moment);\n\t}\n})();\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/angular-ui-tree.js",
    "content": "/**\n * @license Angular UI Tree v2.1.5\n * (c) 2010-2014. https://github.com/JimLiu/angular-ui-tree\n * License: MIT\n */\n(function(){\"use strict\";angular.module(\"ui.tree\",[]).constant(\"treeConfig\",{treeClass:\"angular-ui-tree\",emptyTreeClass:\"angular-ui-tree-empty\",hiddenClass:\"angular-ui-tree-hidden\",nodesClass:\"angular-ui-tree-nodes\",nodeClass:\"angular-ui-tree-node\",handleClass:\"angular-ui-tree-handle\",placeHolderClass:\"angular-ui-tree-placeholder\",dragClass:\"angular-ui-tree-drag\",dragThreshold:3,levelThreshold:30})})();(function(){\"use strict\";angular.module(\"ui.tree\").factory(\"$uiTreeHelper\",[\"$document\",\"$window\",function(e,t){return{nodesData:{},setNodeAttribute:function(e,t,n){if(!e.$modelValue)return null;var r=this.nodesData[e.$modelValue.$$hashKey];if(!r){r={};this.nodesData[e.$modelValue.$$hashKey]=r}r[t]=n},getNodeAttribute:function(e,t){if(!e.$modelValue)return null;var n=this.nodesData[e.$modelValue.$$hashKey];if(n){return n[t]}return null},nodrag:function(e){return typeof e.attr(\"data-nodrag\")!=\"undefined\"},eventObj:function(e){var t=e;if(e.targetTouches!==undefined){t=e.targetTouches.item(0)}else if(e.originalEvent!==undefined&&e.originalEvent.targetTouches!==undefined){t=e.originalEvent.targetTouches.item(0)}return t},dragInfo:function(e){return{source:e,sourceInfo:{nodeScope:e,index:e.index(),nodesScope:e.$parentNodesScope},index:e.index(),siblings:e.siblings().slice(0),parent:e.$parentNodesScope,moveTo:function(e,t,n){this.parent=e;this.siblings=t.slice(0);var r=this.siblings.indexOf(this.source);if(r>-1){this.siblings.splice(r,1);if(this.source.index()<n){n--}}this.siblings.splice(n,0,this.source);this.index=n},parentNode:function(){return this.parent.$nodeScope},prev:function(){if(this.index>0){return this.siblings[this.index-1]}return null},next:function(){if(this.index<this.siblings.length-1){return this.siblings[this.index+1]}return null},isDirty:function(){return this.source.$parentNodesScope!=this.parent||this.source.index()!=this.index},eventArgs:function(e,t){return{source:this.sourceInfo,dest:{index:this.index,nodesScope:this.parent},elements:e,pos:t}},apply:function(){var e=this.source.$modelValue;this.source.remove();this.parent.insertNode(this.index,e)}}},height:function(e){return e.prop(\"scrollHeight\")},width:function(e){return e.prop(\"scrollWidth\")},offset:function(n){var r=n[0].getBoundingClientRect();return{width:n.prop(\"offsetWidth\"),height:n.prop(\"offsetHeight\"),top:r.top+(t.pageYOffset||e[0].body.scrollTop||e[0].documentElement.scrollTop),left:r.left+(t.pageXOffset||e[0].body.scrollLeft||e[0].documentElement.scrollLeft)}},positionStarted:function(e,t){var n={};n.offsetX=e.pageX-this.offset(t).left;n.offsetY=e.pageY-this.offset(t).top;n.startX=n.lastX=e.pageX;n.startY=n.lastY=e.pageY;n.nowX=n.nowY=n.distX=n.distY=n.dirAx=0;n.dirX=n.dirY=n.lastDirX=n.lastDirY=n.distAxX=n.distAxY=0;return n},positionMoved:function(e,t,n){t.lastX=t.nowX;t.lastY=t.nowY;t.nowX=e.pageX;t.nowY=e.pageY;t.distX=t.nowX-t.lastX;t.distY=t.nowY-t.lastY;t.lastDirX=t.dirX;t.lastDirY=t.dirY;t.dirX=t.distX===0?0:t.distX>0?1:-1;t.dirY=t.distY===0?0:t.distY>0?1:-1;var r=Math.abs(t.distX)>Math.abs(t.distY)?1:0;if(n){t.dirAx=r;t.moving=true;return}if(t.dirAx!==r){t.distAxX=0;t.distAxY=0}else{t.distAxX+=Math.abs(t.distX);if(t.dirX!==0&&t.dirX!==t.lastDirX){t.distAxX=0}t.distAxY+=Math.abs(t.distY);if(t.dirY!==0&&t.dirY!==t.lastDirY){t.distAxY=0}}t.dirAx=r}}}])})();(function(){\"use strict\";angular.module(\"ui.tree\").controller(\"TreeController\",[\"$scope\",\"$element\",\"$attrs\",\"treeConfig\",function(e,t,n,r){this.scope=e;e.$element=t;e.$nodesScope=null;e.$type=\"uiTree\";e.$emptyElm=null;e.$callbacks=null;e.dragEnabled=true;e.emptyPlaceHolderEnabled=true;e.maxDepth=0;e.dragDelay=0;e.isEmpty=function(){return e.$nodesScope&&e.$nodesScope.$modelValue&&e.$nodesScope.$modelValue.length===0};e.place=function(t){e.$nodesScope.$element.append(t);e.$emptyElm.remove()};e.resetEmptyElement=function(){if(e.$nodesScope.$modelValue.length===0&&e.emptyPlaceHolderEnabled){t.append(e.$emptyElm)}else{e.$emptyElm.remove()}};var i=function(e,t){var n=e.childNodes();for(var r=0;r<n.length;r++){t?n[r].collapse():n[r].expand();var s=n[r].$childNodesScope;if(s){i(s,t)}}};e.collapseAll=function(){i(e.$nodesScope,true)};e.expandAll=function(){i(e.$nodesScope,false)}}])})();(function(){\"use strict\";angular.module(\"ui.tree\").controller(\"TreeNodesController\",[\"$scope\",\"$element\",\"treeConfig\",function(e,t,n){this.scope=e;e.$element=t;e.$modelValue=null;e.$nodeScope=null;e.$treeScope=null;e.$type=\"uiTreeNodes\";e.$nodesMap={};e.nodrop=false;e.maxDepth=0;e.initSubNode=function(t){if(!t.$modelValue)return null;e.$nodesMap[t.$modelValue.$$hashKey]=t};e.destroySubNode=function(t){if(!t.$modelValue)return null;e.$nodesMap[t.$modelValue.$$hashKey]=null};e.accept=function(t,n){return e.$treeScope.$callbacks.accept(t,e,n)};e.beforeDrag=function(t){return e.$treeScope.$callbacks.beforeDrag(t)};e.isParent=function(t){return t.$parentNodesScope==e};e.hasChild=function(){return e.$modelValue.length>0};e.safeApply=function(e){var t=this.$root.$$phase;if(t==\"$apply\"||t==\"$digest\"){if(e&&typeof e===\"function\"){e()}}else{this.$apply(e)}};e.removeNode=function(t){var n=e.$modelValue.indexOf(t.$modelValue);if(n>-1){e.safeApply(function(){e.$modelValue.splice(n,1)[0]});return t}return null};e.insertNode=function(t,n){e.safeApply(function(){e.$modelValue.splice(t,0,n)})};e.childNodes=function(){var t=[];if(e.$modelValue){for(var n=0;n<e.$modelValue.length;n++){t.push(e.$nodesMap[e.$modelValue[n].$$hashKey])}}return t};e.depth=function(){if(e.$nodeScope){return e.$nodeScope.depth()}return 0};e.outOfDepth=function(t){var n=e.maxDepth||e.$treeScope.maxDepth;if(n>0){return e.depth()+t.maxSubDepth()+1>n}return false}}])})();(function(){\"use strict\";angular.module(\"ui.tree\").controller(\"TreeNodeController\",[\"$scope\",\"$element\",\"$attrs\",\"treeConfig\",function(e,t,n,r){this.scope=e;e.$element=t;e.$modelValue=null;e.$parentNodeScope=null;e.$childNodesScope=null;e.$parentNodesScope=null;e.$treeScope=null;e.$handleScope=null;e.$type=\"uiTreeNode\";e.$$apply=false;e.collapsed=false;e.init=function(n){var r=n[0];e.$treeScope=n[1]?n[1].scope:null;e.$parentNodeScope=r.scope.$nodeScope;e.$modelValue=r.scope.$modelValue[e.$index];e.$parentNodesScope=r.scope;r.scope.initSubNode(e);t.on(\"$destroy\",function(){r.scope.destroySubNode(e)})};e.index=function(){return e.$parentNodesScope.$modelValue.indexOf(e.$modelValue)};e.dragEnabled=function(){return!(e.$treeScope&&!e.$treeScope.dragEnabled)};e.isSibling=function(t){return e.$parentNodesScope==t.$parentNodesScope};e.isChild=function(t){var n=e.childNodes();return n&&n.indexOf(t)>-1};e.prev=function(){var t=e.index();if(t>0){return e.siblings()[t-1]}return null};e.siblings=function(){return e.$parentNodesScope.childNodes()};e.childNodesCount=function(){return e.childNodes()?e.childNodes().length:0};e.hasChild=function(){return e.childNodesCount()>0};e.childNodes=function(){return e.$childNodesScope&&e.$childNodesScope.$modelValue?e.$childNodesScope.childNodes():null};e.accept=function(t,n){return e.$childNodesScope&&e.$childNodesScope.$modelValue&&e.$childNodesScope.accept(t,n)};e.removeNode=function(){var t=e.remove();e.$callbacks.removed(t);return t};e.remove=function(){return e.$parentNodesScope.removeNode(e)};e.toggle=function(){e.collapsed=!e.collapsed};e.collapse=function(){e.collapsed=true};e.expand=function(){e.collapsed=false};e.depth=function(){var t=e.$parentNodeScope;if(t){return t.depth()+1}return 1};var i=0;var s=function(e){var t=0;var n=e.childNodes();for(var r=0;r<n.length;r++){var o=n[r].$childNodesScope;if(o){t=1;s(o)}}i+=t};e.maxSubDepth=function(){i=0;if(e.$childNodesScope){s(e.$childNodesScope)}return i}}])})();(function(){\"use strict\";angular.module(\"ui.tree\").controller(\"TreeHandleController\",[\"$scope\",\"$element\",\"$attrs\",\"treeConfig\",function(e,t,n,r){this.scope=e;e.$element=t;e.$nodeScope=null;e.$type=\"uiTreeHandle\"}])})();(function(){\"use strict\";angular.module(\"ui.tree\").directive(\"uiTree\",[\"treeConfig\",\"$window\",function(e,t){return{restrict:\"A\",scope:true,controller:\"TreeController\",link:function(n,r,i){var s={accept:null,beforeDrag:null};var o={};angular.extend(o,e);if(o.treeClass){r.addClass(o.treeClass)}n.$emptyElm=angular.element(t.document.createElement(\"div\"));if(o.emptyTreeClass){n.$emptyElm.addClass(o.emptyTreeClass)}n.$watch(\"$nodesScope.$modelValue.length\",function(){if(n.$nodesScope.$modelValue){n.resetEmptyElement()}},true);n.$watch(i.dragEnabled,function(e){if(typeof e==\"boolean\"){n.dragEnabled=e}});n.$watch(i.emptyPlaceHolderEnabled,function(e){if(typeof e==\"boolean\"){n.emptyPlaceHolderEnabled=e}});n.$watch(i.maxDepth,function(e){if(typeof e==\"number\"){n.maxDepth=e}});n.$watch(i.dragDelay,function(e){if(typeof e==\"number\"){n.dragDelay=e}});s.accept=function(e,t,n){if(t.nodrop||t.outOfDepth(e)){return false}return true};s.beforeDrag=function(e){return true};s.removed=function(e){};s.dropped=function(e){};s.dragStart=function(e){};s.dragMove=function(e){};s.dragStop=function(e){};s.beforeDrop=function(e){};n.$watch(i.uiTree,function(e,t){angular.forEach(e,function(e,t){if(s[t]){if(typeof e===\"function\"){s[t]=e}}});n.$callbacks=s},true)}}}])})();(function(){\"use strict\";angular.module(\"ui.tree\").directive(\"uiTreeNodes\",[\"treeConfig\",\"$window\",function(e){return{require:[\"ngModel\",\"?^uiTreeNode\",\"^uiTree\"],restrict:\"A\",scope:true,controller:\"TreeNodesController\",link:function(t,n,r,i){var s={};angular.extend(s,e);if(s.nodesClass){n.addClass(s.nodesClass)}var o=i[0];var u=i[1];var a=i[2];if(u){u.scope.$childNodesScope=t;t.$nodeScope=u.scope}else{a.scope.$nodesScope=t}t.$treeScope=a.scope;if(o){o.$render=function(){if(!o.$modelValue||!angular.isArray(o.$modelValue)){t.$modelValue=[]}t.$modelValue=o.$modelValue}}t.$watch(r.maxDepth,function(e){if(typeof e==\"number\"){t.maxDepth=e}});r.$observe(\"nodrop\",function(e){t.nodrop=typeof e!=\"undefined\"});r.$observe(\"horizontal\",function(e){t.horizontal=typeof e!=\"undefined\"})}}}])})();(function(){\"use strict\";angular.module(\"ui.tree\").directive(\"uiTreeNode\",[\"treeConfig\",\"$uiTreeHelper\",\"$window\",\"$document\",\"$timeout\",function(e,t,n,r,i){return{require:[\"^uiTreeNodes\",\"^uiTree\"],restrict:\"A\",controller:\"TreeNodeController\",link:function(s,o,u,a){var f={};angular.extend(f,e);if(f.nodeClass){o.addClass(f.nodeClass)}s.init(a);s.collapsed=!!t.getNodeAttribute(s,\"collapsed\");s.$watch(u.collapsed,function(e){if(typeof e==\"boolean\"){s.collapsed=e}});s.$watch(\"collapsed\",function(e){t.setNodeAttribute(s,\"collapsed\",e);u.$set(\"collapsed\",e)});var l=\"ontouchstart\"in window;var c,h,p,d;var v,m,g;var y=null;var b;var w=true;var E=false;var S=null;var x=document.body,T=document.documentElement,N,C;var k=function(e){if(!l&&(e.button==2||e.which==3)){return}if(e.uiTreeDragging||e.originalEvent&&e.originalEvent.uiTreeDragging){return}var i=angular.element(e.target);var u=i.scope();if(!u||!u.$type){return}if(u.$type!=\"uiTreeNode\"&&u.$type!=\"uiTreeHandle\"){return}if(u.$type==\"uiTreeNode\"&&u.$handleScope){return}var a=i.prop(\"tagName\").toLowerCase();if(a==\"input\"||a==\"textarea\"||a==\"button\"||a==\"select\"){return}while(i&&i[0]&&i[0]!=o){if(t.nodrag(i)){return}i=i.parent()}if(!s.beforeDrag(s)){return}e.uiTreeDragging=true;if(e.originalEvent){e.originalEvent.uiTreeDragging=true}e.preventDefault();var c=t.eventObj(e);h=true;p=t.dragInfo(s);var y=s.$element.prop(\"tagName\");if(y.toLowerCase()===\"tr\"){v=angular.element(n.document.createElement(y));var w=angular.element(n.document.createElement(\"td\")).addClass(f.placeHolderClass);v.append(w)}else{v=angular.element(n.document.createElement(y)).addClass(f.placeHolderClass)}m=angular.element(n.document.createElement(y));if(f.hiddenClass){m.addClass(f.hiddenClass)}d=t.positionStarted(c,s.$element);v.css(\"height\",t.height(s.$element)+\"px\");v.css(\"width\",t.width(s.$element)+\"px\");g=angular.element(n.document.createElement(s.$parentNodesScope.$element.prop(\"tagName\"))).addClass(s.$parentNodesScope.$element.attr(\"class\")).addClass(f.dragClass);g.css(\"width\",t.width(s.$element)+\"px\");g.css(\"z-index\",9999);var E=(s.$element[0].querySelector(\".angular-ui-tree-handle\")||s.$element[0]).currentStyle;if(E){document.body.setAttribute(\"ui-tree-cursor\",r.find(\"body\").css(\"cursor\")||\"\");r.find(\"body\").css({cursor:E.cursor+\"!important\"})}s.$element.after(v);s.$element.after(m);g.append(s.$element);r.find(\"body\").append(g);g.css({left:c.pageX-d.offsetX+\"px\",top:c.pageY-d.offsetY+\"px\"});b={placeholder:v,dragging:g};angular.element(r).bind(\"touchend\",_);angular.element(r).bind(\"touchcancel\",_);angular.element(r).bind(\"touchmove\",M);angular.element(r).bind(\"mouseup\",_);angular.element(r).bind(\"mousemove\",M);angular.element(r).bind(\"mouseleave\",D);N=Math.max(x.scrollHeight,x.offsetHeight,T.clientHeight,T.scrollHeight,T.offsetHeight);C=Math.max(x.scrollWidth,x.offsetWidth,T.clientWidth,T.scrollWidth,T.offsetWidth)};var L=function(e){if(!E){if(!w){E=true;s.$apply(function(){s.$callbacks.dragStart(p.eventArgs(b,d))})}return}var r=t.eventObj(e);var i,o,u;if(g){e.preventDefault();if(n.getSelection){n.getSelection().removeAllRanges()}else if(n.document.selection){n.document.selection.empty()}o=r.pageX-d.offsetX;u=r.pageY-d.offsetY;if(o<0){o=0}if(u<0){u=0}if(u+10>N){u=N-10}if(o+10>C){o=C-10}g.css({left:o+\"px\",top:u+\"px\"});var a=window.pageYOffset||n.document.documentElement.scrollTop;var l=a+(window.innerHeight||n.document.clientHeight||n.document.clientHeight);if(l<r.pageY&&l<=N){window.scrollBy(0,10)}if(a>r.pageY){window.scrollBy(0,-10)}t.positionMoved(e,d,h);if(h){h=false;return}if(d.dirAx&&d.distAxX>=f.levelThreshold){d.distAxX=0;if(d.distX>0){i=p.prev();if(i&&!i.collapsed&&i.accept(s,i.childNodesCount())){i.$childNodesScope.$element.append(v);p.moveTo(i.$childNodesScope,i.childNodes(),i.childNodesCount())}}if(d.distX<0){var c=p.next();if(!c){var m=p.parentNode();if(m&&m.$parentNodesScope.accept(s,m.index()+1)){m.$element.after(v);p.moveTo(m.$parentNodesScope,m.siblings(),m.index()+1)}}}}var S=t.offset(g).left-t.offset(v).left>=f.threshold;var x=r.pageX-n.document.body.scrollLeft;var T=r.pageY-(window.pageYOffset||n.document.documentElement.scrollTop);var k;if(angular.isFunction(g.hide)){g.hide()}else{k=g[0].style.display;g[0].style.display=\"none\"}n.document.elementFromPoint(x,T);var L=angular.element(n.document.elementFromPoint(x,T));if(angular.isFunction(g.show)){g.show()}else{g[0].style.display=k}if(!d.dirAx){var A,O;O=L.scope();var M=false;if(!O){return}if(O.$type==\"uiTree\"&&O.dragEnabled){M=O.isEmpty()}if(O.$type==\"uiTreeHandle\"){O=O.$nodeScope}if(O.$type!=\"uiTreeNode\"&&!M){return}if(y&&v.parent()[0]!=y.$element[0]){y.resetEmptyElement();y=null}if(M){y=O;if(O.$nodesScope.accept(s,0)){O.place(v);p.moveTo(O.$nodesScope,O.$nodesScope.childNodes(),0)}}else if(O.dragEnabled()){L=O.$element;var _=t.offset(L);A=O.horizontal?r.pageX<_.left+t.width(L)/2:r.pageY<_.top+t.height(L)/2;if(O.$parentNodesScope.accept(s,O.index())){if(A){L[0].parentNode.insertBefore(v[0],L[0]);p.moveTo(O.$parentNodesScope,O.siblings(),O.index())}else{L.after(v);p.moveTo(O.$parentNodesScope,O.siblings(),O.index()+1)}}else if(!A&&O.accept(s,O.childNodesCount())){O.$childNodesScope.$element.append(v);p.moveTo(O.$childNodesScope,O.childNodes(),O.childNodesCount())}}}s.$apply(function(){s.$callbacks.dragMove(p.eventArgs(b,d))})}};var A=function(e){e.preventDefault();if(g){s.$treeScope.$apply(function(){s.$callbacks.beforeDrop(p.eventArgs(b,d))});m.replaceWith(s.$element);v.remove();g.remove();g=null;if(s.$$apply){p.apply();s.$treeScope.$apply(function(){s.$callbacks.dropped(p.eventArgs(b,d))})}else{P()}s.$treeScope.$apply(function(){s.$callbacks.dragStop(p.eventArgs(b,d))});s.$$apply=false;p=null}var t=document.body.getAttribute(\"ui-tree-cursor\");if(t!==null){r.find(\"body\").css({cursor:t});document.body.removeAttribute(\"ui-tree-cursor\")}angular.element(r).unbind(\"touchend\",_);angular.element(r).unbind(\"touchcancel\",_);angular.element(r).unbind(\"touchmove\",M);angular.element(r).unbind(\"mouseup\",_);angular.element(r).unbind(\"mousemove\",M);angular.element(n.document.body).unbind(\"mouseleave\",D)};var O=function(e){if(s.dragEnabled()){k(e)}};var M=function(e){L(e)};var _=function(e){s.$$apply=true;A(e)};var D=function(e){A(e)};var P=function(){o.bind(\"touchstart mousedown\",function(e){w=true;E=false;O(e);S=i(function(){w=false},s.dragDelay)});o.bind(\"touchend touchcancel mouseup\",function(){i.cancel(S)})};P();angular.element(n.document.body).bind(\"keydown\",function(e){if(e.keyCode==27){s.$$apply=false;A(e)}})}}}])})();(function(){\"use strict\";angular.module(\"ui.tree\").directive(\"uiTreeHandle\",[\"treeConfig\",\"$window\",function(e){return{require:\"^uiTreeNode\",restrict:\"A\",scope:true,controller:\"TreeHandleController\",link:function(t,n,r,i){var s={};angular.extend(s,e);if(s.handleClass){n.addClass(s.handleClass)}if(t!=i.scope){t.$nodeScope=i.scope;i.scope.$handleScope=t}}}}])})()"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/checklist-model.js",
    "content": "/**\n * Checklist-model\n * AngularJS directive for list of checkboxes\n */\n\nangular.module('checklist-model', [])\n.directive('checklistModel', ['$parse', '$compile', function($parse, $compile) {\n  // contains\n  function contains(arr, item) {\n    if (angular.isArray(arr)) {\n      for (var i = 0; i < arr.length; i++) {\n        if (angular.equals(arr[i], item)) {\n          return true;\n        }\n      }\n    }\n    return false;\n  }\n\n  // add\n  function add(arr, item) {\n    arr = angular.isArray(arr) ? arr : [];\n    for (var i = 0; i < arr.length; i++) {\n      if (angular.equals(arr[i], item)) {\n        return arr;\n      }\n    }    \n    arr.push(item);\n    return arr;\n  }  \n\n  // remove\n  function remove(arr, item) {\n    if (angular.isArray(arr)) {\n      for (var i = 0; i < arr.length; i++) {\n        if (angular.equals(arr[i], item)) {\n          arr.splice(i, 1);\n          break;\n        }\n      }\n    }\n    return arr;\n  }\n\n  // http://stackoverflow.com/a/19228302/1458162\n  function postLinkFn(scope, elem, attrs) {\n    // compile with `ng-model` pointing to `checked`\n    $compile(elem)(scope);\n\n    // getter / setter for original model\n    var getter = $parse(attrs.checklistModel);\n    var setter = getter.assign;\n\n    // value added to list\n    var value = $parse(attrs.checklistValue)(scope.$parent);\n\n    // watch UI checked change\n    scope.$watch('checked', function(newValue, oldValue) {\n      if (newValue === oldValue) { \n        return;\n      } \n      var current = getter(scope.$parent);\n      if (newValue === true) {\n        setter(scope.$parent, add(current, value));\n      } else {\n        setter(scope.$parent, remove(current, value));\n      }\n    });\n\n    // watch original model change\n    scope.$parent.$watch(attrs.checklistModel, function(newArr, oldArr) {\n      scope.checked = contains(newArr, value);\n    }, true);\n  }\n\n  return {\n    restrict: 'A',\n    priority: 1000,\n    terminal: true,\n    scope: true,\n    compile: function(tElement, tAttrs) {\n      if (tElement[0].tagName !== 'INPUT' || tElement.attr('type') !== 'checkbox') {\n      throw 'checklist-model should be applied to input[type=\"checkbox\"].';\n      }\n\n      if (!tAttrs.checklistValue) {\n        throw 'You should provide `checklist-value`.';\n      }\n\n      // exclude recursion\n      tElement.removeAttr('checklist-model');\n      \n      // local scope var storing individual checkbox model\n      tElement.attr('ng-model', 'checked');\n\n      return postLinkFn;\n    }\n  };\n}]);"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/jquery.dynatable.js",
    "content": "/*\n * jQuery Dynatable plugin 0.2.2\n *\n * Copyright (c) 2013 Steve Schwartz (JangoSteve)\n *\n * Dual licensed under the MIT and GPL licenses:\n *   http://www.opensource.org/licenses/mit-license.php\n *   http://www.gnu.org/licenses/gpl.html\n *\n * Date: Tue Aug 13 12:50:00 2013 -0500\n */\n//\n\n(function($) {\n  var defaults,\n      mergeSettings,\n      dt,\n      Model,\n      modelPrototypes = {\n        dom: Dom,\n        domColumns: DomColumns,\n        records: Records,\n        recordsCount: RecordsCount,\n        processingIndicator: ProcessingIndicator,\n        state: State,\n        sorts: Sorts,\n        sortsHeaders: SortsHeaders,\n        queries: Queries,\n        inputsSearch: InputsSearch,\n        paginationPage: PaginationPage,\n        paginationPerPage: PaginationPerPage,\n        paginationLinks: PaginationLinks\n      },\n      utility,\n      build,\n      processAll,\n      initModel,\n      defaultRowWriter,\n      defaultCellWriter,\n      defaultAttributeWriter,\n      defaultAttributeReader;\n\n  //-----------------------------------------------------------------\n  // Cached plugin global defaults\n  //-----------------------------------------------------------------\n\n  defaults = {\n    features: {\n      paginate: true,\n      sort: true,\n      pushState: true,\n      search: true,\n      recordCount: true,\n      perPageSelect: true\n    },\n    table: {\n      defaultColumnIdStyle: 'camelCase',\n      columns: null,\n      headRowSelector: 'thead tr', // or e.g. tr:first-child\n      bodyRowSelector: 'tbody tr',\n      headRowClass: null\n    },\n    inputs: {\n      queries: null,\n      sorts: null,\n      multisort: ['ctrlKey', 'shiftKey', 'metaKey'],\n      page: null,\n      queryEvent: 'blur change',\n      recordCountTarget: null,\n      recordCountPlacement: 'after',\n      paginationLinkTarget: null,\n      paginationLinkPlacement: 'after',\n      paginationPrev: 'Previous',\n      paginationNext: 'Next',\n      paginationGap: [1,2,2,1],\n      searchTarget: null,\n      searchPlacement: 'before',\n      perPageTarget: null,\n      perPagePlacement: 'before',\n      perPageText: 'Show: ',\n      recordCountText: 'Showing ',\n      processingText: 'Processing...'\n    },\n    dataset: {\n      ajax: false,\n      ajaxUrl: null,\n      ajaxCache: null,\n      ajaxOnLoad: false,\n      ajaxMethod: 'GET',\n      ajaxDataType: 'json',\n      totalRecordCount: null,\n      queries: {},\n      queryRecordCount: null,\n      page: null,\n      perPageDefault: 10,\n      perPageOptions: [10,20,50,100],\n      sorts: {},\n      sortsKeys: null,\n      sortTypes: {},\n      records: null\n    },\n    writers: {\n      _rowWriter: defaultRowWriter,\n      _cellWriter: defaultCellWriter,\n      _attributeWriter: defaultAttributeWriter\n    },\n    readers: {\n      _rowReader: null,\n      _attributeReader: defaultAttributeReader\n    },\n    params: {\n      dynatable: 'dynatable',\n      queries: 'queries',\n      sorts: 'sorts',\n      page: 'page',\n      perPage: 'perPage',\n      offset: 'offset',\n      records: 'records',\n      record: null,\n      queryRecordCount: 'queryRecordCount',\n      totalRecordCount: 'totalRecordCount'\n    }\n  };\n\n  //-----------------------------------------------------------------\n  // Each dynatable instance inherits from this,\n  // set properties specific to instance\n  //-----------------------------------------------------------------\n\n  dt = {\n    init: function(element, options) {\n      this.settings = mergeSettings(options);\n      this.element = element;\n      this.$element = $(element);\n\n      // All the setup that doesn't require element or options\n      build.call(this);\n\n      return this;\n    },\n\n    process: function(skipPushState) {\n      processAll.call(this, skipPushState);\n    }\n  };\n\n  //-----------------------------------------------------------------\n  // Cached plugin global functions\n  //-----------------------------------------------------------------\n\n  mergeSettings = function(options) {\n    var newOptions = $.extend(true, {}, defaults, options);\n\n    // TODO: figure out a better way to do this.\n    // Doing `extend(true)` causes any elements that are arrays\n    // to merge the default and options arrays instead of overriding the defaults.\n    if (options) {\n      if (options.inputs) {\n        if (options.inputs.multisort) {\n          newOptions.inputs.multisort = options.inputs.multisort;\n        }\n        if (options.inputs.paginationGap) {\n          newOptions.inputs.paginationGap = options.inputs.paginationGap;\n        }\n      }\n      if (options.dataset && options.dataset.perPageOptions) {\n        newOptions.dataset.perPageOptions = options.dataset.perPageOptions;\n      }\n    }\n\n    return newOptions;\n  };\n\n  build = function() {\n    for (model in modelPrototypes) {\n      if (modelPrototypes.hasOwnProperty(model)) {\n        var modelInstance = this[model] = new modelPrototypes[model](this, this.settings);\n        if (modelInstance.initOnLoad()) {\n          modelInstance.init();\n        }\n      }\n    }\n\n    this.$element.trigger('dynatable:init', this);\n\n    if (!this.settings.dataset.ajax || (this.settings.dataset.ajax && this.settings.dataset.ajaxOnLoad) || this.settings.features.paginate) {\n      this.process();\n    }\n  };\n\n  processAll = function(skipPushState) {\n    var data = {};\n\n    this.$element.trigger('dynatable:beforeProcess', data);\n\n    if (!$.isEmptyObject(this.settings.dataset.queries)) { data[this.settings.params.queries] = this.settings.dataset.queries; }\n    // TODO: Wrap this in a try/rescue block to hide the processing indicator and indicate something went wrong if error\n    this.processingIndicator.show();\n\n    if (this.settings.features.sort && !$.isEmptyObject(this.settings.dataset.sorts)) { data[this.settings.params.sorts] = this.settings.dataset.sorts; }\n    if (this.settings.features.paginate && this.settings.dataset.page) {\n      var page = this.settings.dataset.page,\n          perPage = this.settings.dataset.perPage;\n      data[this.settings.params.page] = page;\n      data[this.settings.params.perPage] = perPage;\n      data[this.settings.params.offset] = (page - 1) * perPage;\n    }\n    if (this.settings.dataset.ajaxData) { $.extend(data, this.settings.dataset.ajaxData); }\n\n    // If ajax, sends query to ajaxUrl with queries and sorts serialized and appended in ajax data\n    // otherwise, executes queries and sorts on in-page data\n    if (this.settings.dataset.ajax) {\n      var _this = this;\n      var options = {\n        type: _this.settings.dataset.ajaxMethod,\n        dataType: _this.settings.dataset.ajaxDataType,\n        data: data,\n        error: function(xhr, error) {\n        },\n        success: function(response) {\n          _this.$element.trigger('dynatable:ajax:success', response);\n          // Merge ajax results and meta-data into dynatables cached data\n          _this.records.updateFromJson(response);\n          // update table with new records\n          _this.dom.update();\n\n          if (!skipPushState && _this.state.initOnLoad()) {\n            _this.state.push(data);\n          }\n        },\n        complete: function() {\n          _this.processingIndicator.hide();\n        }\n      };\n      // Do not pass url to `ajax` options if blank\n      if (this.settings.dataset.ajaxUrl) {\n        options.url = this.settings.dataset.ajaxUrl;\n\n      // If ajaxUrl is blank, then we're using the current page URL,\n      // we need to strip out any query, sort, or page data controlled by dynatable\n      // that may have been in URL when page loaded, so that it doesn't conflict with\n      // what's passed in with the data ajax parameter\n      } else {\n        options.url = utility.refreshQueryString(window.location.href, {}, this.settings);\n      }\n      if (this.settings.dataset.ajaxCache !== null) { options.cache = this.settings.dataset.ajaxCache; }\n\n      $.ajax(options);\n    } else {\n      this.records.resetOriginal();\n      this.queries.run();\n      if (this.settings.features.sort) {\n        this.records.sort();\n      }\n      if (this.settings.features.paginate) {\n        this.records.paginate();\n      }\n      this.dom.update();\n      this.processingIndicator.hide();\n\n      if (!skipPushState && this.state.initOnLoad()) {\n        this.state.push(data);\n      }\n    }\n    this.$element.trigger('dynatable:afterProcess', data);\n  };\n\n  function defaultRowWriter(rowIndex, record, columns, cellWriter) {\n    var tr = '';\n\n    // grab the record's attribute for each column\n    for (var i = 0, len = columns.length; i < len; i++) {\n      tr += cellWriter(columns[i], record);\n    }\n\n    return '<tr>' + tr + '</tr>';\n  };\n\n  function defaultCellWriter(column, record) {\n    var html = column.attributeWriter(record),\n        td = '<td';\n\n    // keep cells for hidden column headers hidden\n    if (column.hidden) {\n      td += ' display=\"none\"';\n    }\n\n    // keep cells aligned as their column headers are aligned\n    if (column.textAlign) {\n      td += ' style=\"text-align: ' + column.textAlign + ';\"';\n    }\n\n    return td + '>' + html + '</td>';\n  };\n\n  function defaultAttributeWriter(record) {\n    // `this` is the column object in settings.columns\n    // TODO: automatically convert common types, such as arrays and objects, to string\n    return record[this.id];\n  };\n\n  function defaultAttributeReader(cell, record) {\n    return $(cell).html();\n  };\n\n  //-----------------------------------------------------------------\n  // Dynatable object model prototype\n  // (all object models get these default functions)\n  //-----------------------------------------------------------------\n\n  Model = {\n    initOnLoad: function() {\n      return true;\n    },\n\n    init: function() {}\n  };\n\n  for (model in modelPrototypes) {\n    if (modelPrototypes.hasOwnProperty(model)) {\n      var modelPrototype = modelPrototypes[model];\n      modelPrototype.prototype = Model;\n    }\n  }\n\n  //-----------------------------------------------------------------\n  // Dynatable object models\n  //-----------------------------------------------------------------\n\n  function Dom(obj, settings) {\n    var _this = this;\n\n    // update table contents with new records array\n    // from query (whether ajax or not)\n    this.update = function() {\n      var rows = '',\n          columns = settings.table.columns,\n          rowWriter = settings.writers._rowWriter,\n          cellWriter = settings.writers._cellWriter;\n\n      obj.$element.trigger('dynatable:beforeUpdate', rows);\n\n      // loop through records\n      for (var i = 0, len = settings.dataset.records.length; i < len; i++) {\n        var record = settings.dataset.records[i],\n            tr = rowWriter(i, record, columns, cellWriter);\n        rows += tr;\n      }\n\n      // Appended dynatable interactive elements\n      if (settings.features.recordCount) {\n        $('#dynatable-record-count-' + obj.element.id).replaceWith(obj.recordsCount.create());\n      }\n      if (settings.features.paginate) {\n        $('#dynatable-pagination-links-' + obj.element.id).replaceWith(obj.paginationLinks.create());\n        if (settings.features.perPageSelect) {\n          $('#dynatable-per-page-' + obj.element.id).val(parseInt(settings.dataset.perPage));\n        }\n      }\n\n      // Sort headers functionality\n      if (settings.features.sort && columns) {\n        obj.sortsHeaders.removeAllArrows();\n        for (var i = 0, len = columns.length; i < len; i++) {\n          var column = columns[i],\n              sortedByColumn = utility.allMatch(settings.dataset.sorts, column.sorts, function(sorts, sort) { return sort in sorts; }),\n              value = settings.dataset.sorts[column.sorts[0]];\n\n          if (sortedByColumn) {\n            obj.$element.find('[data-dynatable-column=\"' + column.id + '\"]').find('.dynatable-sort-header').each(function(){\n              if (value == 1) {\n                obj.sortsHeaders.appendArrowUp($(this));\n              } else {\n                obj.sortsHeaders.appendArrowDown($(this));\n              }\n            });\n          }\n        }\n      }\n\n      // Query search functionality\n      if (settings.inputs.queries) {\n        settings.inputs.queries.each(function() {\n          var $this = $(this),\n              q = settings.dataset.queries[$this.data('dynatable-query')];\n          $(this).val(q || '');\n        });\n      }\n      obj.$element.find(settings.table.bodyRowSelector).remove();\n      obj.$element.append(rows);\n\n      obj.$element.trigger('dynatable:afterUpdate', rows);\n    };\n  };\n\n  function DomColumns(obj, settings) {\n    var _this = this;\n\n    this.initOnLoad = function() {\n      return obj.$element.is('table');\n    };\n\n    this.init = function() {\n      settings.table.columns = [];\n      this.getFromTable();\n    };\n\n    // initialize table[columns] array\n    this.getFromTable = function() {\n      var $columns = obj.$element.find(settings.table.headRowSelector).children('th,td');\n      if ($columns.length) {\n        $columns.each(function(index){\n          _this.add($(this), index, true);\n        });\n      } else {\n        return $.error(\"Couldn't find any columns headers in '\" + settings.table.headRowSelector + \" th,td'. If your header row is different, specify the selector in the table: headRowSelector option.\");\n      }\n    };\n\n    this.add = function($column, position, skipAppend, skipUpdate) {\n      var columns = settings.table.columns,\n          label = $column.text(),\n          id = $column.data('dynatable-column') || utility.normalizeText(label, settings.table.defaultColumnIdStyle),\n          dataSorts = $column.data('dynatable-sorts'),\n          sorts = dataSorts ? $.map(dataSorts.split(','), function(text) { return $.trim(text); }) : [id];\n\n      // If the column id is blank, generate an id for it\n      if ( !id ) {\n        this.generate($column);\n        id = $column.data('dynatable-column');\n      }\n      // Add column data to plugin instance\n      columns.splice(position, 0, {\n        index: position,\n        label: label,\n        id: id,\n        attributeWriter: settings.writers[id] || settings.writers._attributeWriter,\n        attributeReader: settings.readers[id] || settings.readers._attributeReader,\n        sorts: sorts,\n        hidden: $column.css('display') === 'none',\n        textAlign: $column.css('text-align')\n      });\n\n      // Modify header cell\n      $column\n        .attr('data-dynatable-column', id)\n        .addClass('dynatable-head');\n      if (settings.table.headRowClass) { $column.addClass(settings.table.headRowClass); }\n\n      // Append column header to table\n      if (!skipAppend) {\n        var domPosition = position + 1,\n            $sibling = obj.$element.find(settings.table.headRowSelector)\n              .children('th:nth-child(' + domPosition + '),td:nth-child(' + domPosition + ')').first(),\n            columnsAfter = columns.slice(position + 1, columns.length);\n\n        if ($sibling.length) {\n          $sibling.before($column);\n        // sibling column doesn't yet exist (maybe this is the last column in the header row)\n        } else {\n          obj.$element.find(settings.table.headRowSelector).append($column);\n        }\n\n        obj.sortsHeaders.attachOne($column.get());\n\n        // increment the index of all columns after this one that was just inserted\n        if (columnsAfter.length) {\n          for (var i = 0, len = columnsAfter.length; i < len; i++) {\n            columnsAfter[i].index += 1;\n          }\n        }\n\n        if (!skipUpdate) {\n          obj.dom.update();\n        }\n      }\n\n      return dt;\n    };\n\n    this.remove = function(columnIndexOrId) {\n      var columns = settings.table.columns,\n          length = columns.length;\n\n      if (typeof(columnIndexOrId) === \"number\") {\n        var column = columns[columnIndexOrId];\n        this.removeFromTable(column.id);\n        this.removeFromArray(columnIndexOrId);\n      } else {\n        // Traverse columns array in reverse order so that subsequent indices\n        // don't get messed up when we delete an item from the array in an iteration\n        for (var i = columns.length - 1; i >= 0; i--) {\n          var column = columns[i];\n\n          if (column.id === columnIndexOrId) {\n            this.removeFromTable(columnIndexOrId);\n            this.removeFromArray(i);\n          }\n        }\n      }\n\n      obj.dom.update();\n    };\n\n    this.removeFromTable = function(columnId) {\n      obj.$element.find(settings.table.headRowSelector).children('[data-dynatable-column=\"' + columnId + '\"]').first()\n        .remove();\n    };\n\n    this.removeFromArray = function(index) {\n      var columns = settings.table.columns,\n          adjustColumns;\n      columns.splice(index, 1);\n      adjustColumns = columns.slice(index, columns.length);\n      for (var i = 0, len = adjustColumns.length; i < len; i++) {\n        adjustColumns[i].index -= 1;\n      }\n    };\n\n    this.generate = function($cell) {\n      var cell = $cell === undefined ? $('<th></th>') : $cell;\n      return this.attachGeneratedAttributes(cell);\n    };\n\n    this.attachGeneratedAttributes = function($cell) {\n      // Use increment to create unique column name that is the same each time the page is reloaded,\n      // in order to avoid errors with mismatched attribute names when loading cached `dataset.records` array\n      var increment = obj.$element.find(settings.table.headRowSelector).children('th[data-dynatable-generated]').length;\n      return $cell\n        .attr('data-dynatable-column', 'dynatable-generated-' + increment) //+ utility.randomHash(),\n        .attr('data-dynatable-no-sort', 'true')\n        .attr('data-dynatable-generated', increment);\n    };\n  };\n\n  function Records(obj, settings) {\n    var _this = this;\n\n    this.initOnLoad = function() {\n      return !settings.dataset.ajax;\n    };\n\n    this.init = function() {\n      if (settings.dataset.records === null) {\n        settings.dataset.records = this.getFromTable();\n\n        if (!settings.dataset.queryRecordCount) {\n          settings.dataset.queryRecordCount = this.count();\n        }\n\n        if (!settings.dataset.totalRecordCount){\n          settings.dataset.totalRecordCount = settings.dataset.queryRecordCount;\n        }\n      }\n\n      // Create cache of original full recordset (unpaginated and unqueried)\n      settings.dataset.originalRecords = $.extend(true, [], settings.dataset.records);\n    };\n\n    // merge ajax response json with cached data including\n    // meta-data and records\n    this.updateFromJson = function(data) {\n      var records;\n      if (settings.params.records === \"_root\") {\n        records = data;\n      } else if (settings.params.records in data) {\n        records = data[settings.params.records];\n      }\n      if (settings.params.record) {\n        var len = records.length - 1;\n        for (var i = 0; i < len; i++) {\n          records[i] = records[i][settings.params.record];\n        }\n      }\n      if (settings.params.queryRecordCount in data) {\n        settings.dataset.queryRecordCount = data[settings.params.queryRecordCount];\n      }\n      if (settings.params.totalRecordCount in data) {\n        settings.dataset.totalRecordCount = data[settings.params.totalRecordCount];\n      }\n      settings.dataset.records = records;\n    };\n\n    // For really advanced sorting,\n    // see http://james.padolsey.com/javascript/sorting-elements-with-jquery/\n    this.sort = function() {\n      var sort = [].sort,\n          sorts = settings.dataset.sorts,\n          sortsKeys = settings.dataset.sortsKeys,\n          sortTypes = settings.dataset.sortTypes;\n\n      var sortFunction = function(a, b) {\n        var comparison;\n        if ($.isEmptyObject(sorts)) {\n          comparison = obj.sorts.functions['originalPlacement'](a, b);\n        } else {\n          for (var i = 0, len = sortsKeys.length; i < len; i++) {\n            var attr = sortsKeys[i],\n                direction = sorts[attr],\n                sortType = sortTypes[attr] || obj.sorts.guessType(a, b, attr);\n            comparison = obj.sorts.functions[sortType](a, b, attr, direction);\n            // Don't need to sort any further unless this sort is a tie between a and b,\n            // so break the for loop unless tied\n            if (comparison !== 0) { break; }\n          }\n        }\n        return comparison;\n      }\n\n      return sort.call(settings.dataset.records, sortFunction);\n    };\n\n    this.paginate = function() {\n      var bounds = this.pageBounds(),\n          first = bounds[0], last = bounds[1];\n      settings.dataset.records = settings.dataset.records.slice(first, last);\n    };\n\n    this.resetOriginal = function() {\n      settings.dataset.records = settings.dataset.originalRecords || [];\n    };\n\n    this.pageBounds = function() {\n      var page = settings.dataset.page || 1,\n          first = (page - 1) * settings.dataset.perPage,\n          last = Math.min(first + settings.dataset.perPage, settings.dataset.queryRecordCount);\n      return [first,last];\n    };\n\n    // get initial recordset to populate table\n    // if ajax, call ajaxUrl\n    // otherwise, initialize from in-table records\n    this.getFromTable = function() {\n      var records = [],\n          columns = settings.table.columns,\n          tableRecords = obj.$element.find(settings.table.bodyRowSelector);\n\n      tableRecords.each(function(index){\n        var record = {};\n        record['dynatable-original-index'] = index;\n        $(this).find('th,td').each(function(index) {\n          if (columns[index] === undefined) {\n            // Header cell didn't exist for this column, so let's generate and append\n            // a new header cell with a randomly generated name (so we can store and\n            // retrieve the contents of this column for each record)\n            obj.domColumns.add(obj.domColumns.generate(), columns.length, false, true); // don't skipAppend, do skipUpdate\n          }\n          var value = columns[index].attributeReader(this, record),\n              attr = columns[index].id;\n\n          // If value from table is HTML, let's get and cache the text equivalent for\n          // the default string sorting, since it rarely makes sense for sort headers\n          // to sort based on HTML tags.\n          if (typeof(value) === \"string\" && value.match(/\\s*\\<.+\\>/)) {\n            if (! record['dynatable-sortable-text']) {\n              record['dynatable-sortable-text'] = {};\n            }\n            record['dynatable-sortable-text'][attr] = $.trim($('<div></div>').html(value).text());\n          }\n\n          record[attr] = value;\n        });\n        // Allow configuration function which alters record based on attributes of\n        // table row (e.g. from html5 data- attributes)\n        if (typeof(settings.readers._rowReader) === \"function\") {\n          settings.readers._rowReader(index, this, record);\n        }\n        records.push(record);\n      });\n      return records; // 1st row is header\n    };\n\n    // count records from table\n    this.count = function() {\n      return settings.dataset.records.length;\n    };\n  };\n\n  function RecordsCount(obj, settings) {\n    this.initOnLoad = function() {\n      return settings.features.recordCount;\n    };\n\n    this.init = function() {\n      this.attach();\n    };\n\n    this.create = function() {\n      var recordsShown = obj.records.count(),\n          recordsQueryCount = settings.dataset.queryRecordCount,\n          recordsTotal = settings.dataset.totalRecordCount,\n          text = settings.inputs.recordCountText,\n          collection_name = settings.params.records;\n\n      if (recordsShown < recordsQueryCount && settings.features.paginate) {\n        var bounds = obj.records.pageBounds();\n        text += \"<span class='dynatable-record-bounds'>\" + (bounds[0] + 1) + \" to \" + bounds[1] + \"</span> of \";\n      } else if (recordsShown === recordsQueryCount && settings.features.paginate) {\n        text += recordsShown + \" of \";\n      }\n      text += recordsQueryCount + \" \" + collection_name;\n      if (recordsQueryCount < recordsTotal) {\n        text += \" (filtered from \" + recordsTotal + \" total records)\";\n      }\n\n      return $('<span></span>', {\n                id: 'dynatable-record-count-' + obj.element.id,\n                'class': 'dynatable-record-count',\n                html: text\n              });\n    };\n\n    this.attach = function() {\n      var $target = settings.inputs.recordCountTarget ? $(settings.inputs.recordCountTarget) : obj.$element;\n      $target[settings.inputs.recordCountPlacement](this.create());\n    };\n  };\n\n  function ProcessingIndicator(obj, settings) {\n    this.init = function() {\n      this.attach();\n    };\n\n    this.create = function() {\n      var $processing = $('<div></div>', {\n            html: '<span>' + settings.inputs.processingText + '</span>',\n            id: 'dynatable-processing-' + obj.element.id,\n            'class': 'dynatable-processing',\n            style: 'position: absolute; display: none;'\n          });\n\n      return $processing;\n    };\n\n    this.position = function() {\n      var $processing = $('#dynatable-processing-' + obj.element.id),\n          $span = $processing.children('span'),\n          spanHeight = $span.outerHeight(),\n          spanWidth = $span.outerWidth(),\n          $covered = obj.$element,\n          offset = $covered.offset(),\n          height = $covered.outerHeight(), width = $covered.outerWidth();\n\n      $processing\n        .offset({left: offset.left, top: offset.top})\n        .width(width)\n        .height(height)\n      $span\n        .offset({left: offset.left + ( (width - spanWidth) / 2 ), top: offset.top + ( (height - spanHeight) / 2 )});\n\n      return $processing;\n    };\n\n    this.attach = function() {\n      obj.$element.before(this.create());\n    };\n\n    this.show = function() {\n      $('#dynatable-processing-' + obj.element.id).show();\n      this.position();\n    };\n\n    this.hide = function() {\n      $('#dynatable-processing-' + obj.element.id).hide();\n    };\n  };\n\n  function State(obj, settings) {\n    this.initOnLoad = function() {\n      // Check if pushState option is true, and if browser supports it\n      return settings.features.pushState && history.pushState;\n    };\n\n    this.init = function() {\n      window.onpopstate = function(event) {\n        if (event.state && event.state.dynatable) {\n          obj.state.pop(event);\n        }\n      }\n    };\n\n    this.push = function(data) {\n      var urlString = window.location.search,\n          urlOptions,\n          path,\n          params,\n          hash,\n          newParams,\n          cacheStr,\n          cache,\n          // replaceState on initial load, then pushState after that\n          firstPush = !(window.history.state && window.history.state.dynatable),\n          pushFunction = firstPush ? 'replaceState' : 'pushState';\n\n      if (urlString && /^\\?/.test(urlString)) { urlString = urlString.substring(1); }\n      $.extend(urlOptions, data);\n\n      params = utility.refreshQueryString(urlString, data, settings);\n      if (params) { params = '?' + params; }\n      hash = window.location.hash;\n      path = window.location.pathname;\n\n      obj.$element.trigger('dynatable:push', data);\n\n      cache = { dynatable: { dataset: settings.dataset } };\n      if (!firstPush) { cache.dynatable.scrollTop = $(window).scrollTop(); }\n      cacheStr = JSON.stringify(cache);\n\n      // Mozilla has a 640k char limit on what can be stored in pushState.\n      // See \"limit\" in https://developer.mozilla.org/en/DOM/Manipulating_the_browser_history#The_pushState().C2.A0method\n      // and \"dataStr.length\" in http://wine.git.sourceforge.net/git/gitweb.cgi?p=wine/wine-gecko;a=patch;h=43a11bdddc5fc1ff102278a120be66a7b90afe28\n      //\n      // Likewise, other browsers may have varying (undocumented) limits.\n      // Also, Firefox's limit can be changed in about:config as browser.history.maxStateObjectSize\n      // Since we don't know what the actual limit will be in any given situation, we'll just try caching and rescue\n      // any exceptions by retrying pushState without caching the records.\n      //\n      // I have aboslutely no idea why perPageOptions suddenly becomes an array-like object instead of an array,\n      // but just recently, this started throwing an error if I don't convert it:\n      // 'Uncaught Error: DATA_CLONE_ERR: DOM Exception 25'\n      cache.dynatable.dataset.perPageOptions = $.makeArray(cache.dynatable.dataset.perPageOptions);\n\n      try {\n        window.history[pushFunction](cache, \"Dynatable state\", path + params + hash);\n      } catch(error) {\n        // Make cached records = null, so that `pop` will rerun process to retrieve records\n        cache.dynatable.dataset.records = null;\n        window.history[pushFunction](cache, \"Dynatable state\", path + params + hash);\n      }\n    };\n\n    this.pop = function(event) {\n      var data = event.state.dynatable;\n      settings.dataset = data.dataset;\n\n      if (data.scrollTop) { $(window).scrollTop(data.scrollTop); }\n\n      // If dataset.records is cached from pushState\n      if ( data.dataset.records ) {\n        obj.dom.update();\n      } else {\n        obj.process(true);\n      }\n    };\n  };\n\n  function Sorts(obj, settings) {\n    this.initOnLoad = function() {\n      return settings.features.sort;\n    };\n\n    this.init = function() {\n      var sortsUrl = window.location.search.match(new RegExp(settings.params.sorts + '[^&=]*=[^&]*', 'g'));\n      settings.dataset.sorts = sortsUrl ? utility.deserialize(sortsUrl)[settings.params.sorts] : {};\n      settings.dataset.sortsKeys = sortsUrl ? utility.keysFromObject(settings.dataset.sorts) : [];\n    };\n\n    this.add = function(attr, direction) {\n      var sortsKeys = settings.dataset.sortsKeys,\n          index = $.inArray(attr, sortsKeys);\n      settings.dataset.sorts[attr] = direction;\n      if (index === -1) { sortsKeys.push(attr); }\n      return dt;\n    };\n\n    this.remove = function(attr) {\n      var sortsKeys = settings.dataset.sortsKeys,\n          index = $.inArray(attr, sortsKeys);\n      delete settings.dataset.sorts[attr];\n      if (index !== -1) { sortsKeys.splice(index, 1); }\n      return dt;\n    };\n\n    this.clear = function() {\n      settings.dataset.sorts = {};\n      settings.dataset.sortsKeys.length = 0;\n    };\n\n    // Try to intelligently guess which sort function to use\n    // based on the type of attribute values.\n    // Consider using something more robust than `typeof` (http://javascriptweblog.wordpress.com/2011/08/08/fixing-the-javascript-typeof-operator/)\n    this.guessType = function(a, b, attr) {\n      var types = {\n            string: 'string',\n            number: 'number',\n            'boolean': 'number',\n            object: 'number' // dates and null values are also objects, this works...\n          },\n          attrType = a[attr] ? typeof(a[attr]) : typeof(b[attr]),\n          type = types[attrType] || 'number';\n      return type;\n    };\n\n    // Built-in sort functions\n    // (the most common use-cases I could think of)\n    this.functions = {\n      number: function(a, b, attr, direction) {\n        return a[attr] === b[attr] ? 0 : (direction > 0 ? a[attr] - b[attr] : b[attr] - a[attr]);\n      },\n      string: function(a, b, attr, direction) {\n        var aAttr = (a['dynatable-sortable-text'] && a['dynatable-sortable-text'][attr]) ? a['dynatable-sortable-text'][attr] : a[attr],\n            bAttr = (b['dynatable-sortable-text'] && b['dynatable-sortable-text'][attr]) ? b['dynatable-sortable-text'][attr] : b[attr],\n            comparison;\n        aAttr = aAttr.toLowerCase();\n        bAttr = bAttr.toLowerCase();\n        comparison = aAttr === bAttr ? 0 : (direction > 0 ? aAttr > bAttr : bAttr > aAttr);\n        // force false boolean value to -1, true to 1, and tie to 0\n        return comparison === false ? -1 : (comparison - 0);\n      },\n      originalPlacement: function(a, b) {\n        return a['dynatable-original-index'] - b['dynatable-original-index'];\n      }\n    };\n  };\n\n  // turn table headers into links which add sort to sorts array\n  function SortsHeaders(obj, settings) {\n    var _this = this;\n\n    this.initOnLoad = function() {\n      return settings.features.sort;\n    };\n\n    this.init = function() {\n      this.attach();\n    };\n\n    this.create = function(cell) {\n      var $cell = $(cell),\n          $link = $('<a></a>', {\n            'class': 'dynatable-sort-header',\n            href: '#',\n            html: $cell.html()\n          }),\n          id = $cell.data('dynatable-column'),\n          column = utility.findObjectInArray(settings.table.columns, {id: id});\n\n      $link.bind('click', function(e) {\n        _this.toggleSort(e, $link, column);\n        obj.process();\n\n        e.preventDefault();\n      });\n\n      if (this.sortedByColumn($link, column)) {\n        if (this.sortedByColumnValue(column) == 1) {\n          this.appendArrowUp($link);\n        } else {\n          this.appendArrowDown($link);\n        }\n      }\n\n      return $link;\n    };\n\n    this.removeAll = function() {\n      obj.$element.find(settings.table.headRowSelector).children('th,td').each(function(){\n        _this.removeAllArrows();\n        _this.removeOne(this);\n      });\n    };\n\n    this.removeOne = function(cell) {\n      var $cell = $(cell),\n          $link = $cell.find('.dynatable-sort-header');\n      if ($link.length) {\n        var html = $link.html();\n        $link.remove();\n        $cell.html($cell.html() + html);\n      }\n    };\n\n    this.attach = function() {\n      obj.$element.find(settings.table.headRowSelector).children('th,td').each(function(){\n        _this.attachOne(this);\n      });\n    };\n\n    this.attachOne = function(cell) {\n      var $cell = $(cell);\n      if (!$cell.data('dynatable-no-sort')) {\n        $cell.html(this.create(cell));\n      }\n    };\n\n    this.appendArrowUp = function($link) {\n      this.removeArrow($link);\n      $link.append(\"<span class='dynatable-arrow'> &#9650;</span>\");\n    };\n\n    this.appendArrowDown = function($link) {\n      this.removeArrow($link);\n      $link.append(\"<span class='dynatable-arrow'> &#9660;</span>\");\n    };\n\n    this.removeArrow = function($link) {\n      // Not sure why `parent()` is needed, the arrow should be inside the link from `append()` above\n      $link.find('.dynatable-arrow').remove();\n    };\n\n    this.removeAllArrows = function() {\n      obj.$element.find('.dynatable-arrow').remove();\n    };\n\n    this.toggleSort = function(e, $link, column) {\n      var sortedByColumn = this.sortedByColumn($link, column),\n          value = this.sortedByColumnValue(column);\n      // Clear existing sorts unless this is a multisort event\n      if (!settings.inputs.multisort || !utility.anyMatch(e, settings.inputs.multisort, function(evt, key) { return e[key]; })) {\n        this.removeAllArrows();\n        obj.sorts.clear();\n      }\n\n      // If sorts for this column are already set\n      if (sortedByColumn) {\n        // If ascending, then make descending\n        if (value == 1) {\n          for (var i = 0, len = column.sorts.length; i < len; i++) {\n            obj.sorts.add(column.sorts[i], -1);\n          }\n          this.appendArrowDown($link);\n        // If descending, remove sort\n        } else {\n          for (var i = 0, len = column.sorts.length; i < len; i++) {\n            obj.sorts.remove(column.sorts[i]);\n          }\n          this.removeArrow($link);\n        }\n      // Otherwise, if not already set, set to ascending\n      } else {\n        for (var i = 0, len = column.sorts.length; i < len; i++) {\n          obj.sorts.add(column.sorts[i], 1);\n        }\n        this.appendArrowUp($link);\n      }\n    };\n\n    this.sortedByColumn = function($link, column) {\n      return utility.allMatch(settings.dataset.sorts, column.sorts, function(sorts, sort) { return sort in sorts; });\n    };\n\n    this.sortedByColumnValue = function(column) {\n      return settings.dataset.sorts[column.sorts[0]];\n    };\n  };\n\n  function Queries(obj, settings) {\n    var _this = this;\n\n    this.initOnLoad = function() {\n      return settings.inputs.queries || settings.features.search;\n    };\n\n    this.init = function() {\n      var queriesUrl = window.location.search.match(new RegExp(settings.params.queries + '[^&=]*=[^&]*', 'g'));\n\n      settings.dataset.queries = queriesUrl ? utility.deserialize(queriesUrl)[settings.params.queries] : {};\n      if (settings.dataset.queries === \"\") { settings.dataset.queries = {}; }\n\n      if (settings.inputs.queries) {\n        this.setupInputs();\n      }\n    };\n\n    this.add = function(name, value) {\n      // reset to first page since query will change records\n      if (settings.features.paginate) {\n        settings.dataset.page = 1;\n      }\n      settings.dataset.queries[name] = value;\n      return dt;\n    };\n\n    this.remove = function(name) {\n      delete settings.dataset.queries[name];\n      return dt;\n    };\n\n    this.run = function() {\n      for (query in settings.dataset.queries) {\n        if (settings.dataset.queries.hasOwnProperty(query)) {\n          var value = settings.dataset.queries[query];\n          if (_this.functions[query] === undefined) {\n            // Try to lazily evaluate query from column names if not explictly defined\n            var queryColumn = utility.findObjectInArray(settings.table.columns, {id: query});\n            if (queryColumn) {\n              _this.functions[query] = function(record, queryValue) {\n                return record[query] == queryValue;\n              };\n            } else {\n              $.error(\"Query named '\" + query + \"' called, but not defined in queries.functions\");\n              continue; // to skip to next query\n            }\n          }\n          // collect all records that return true for query\n          settings.dataset.records = $.map(settings.dataset.records, function(record) {\n            return _this.functions[query](record, value) ? record : null;\n          });\n        }\n      }\n      settings.dataset.queryRecordCount = obj.records.count();\n    };\n\n    // Shortcut for performing simple query from built-in search\n    this.runSearch = function(q) {\n      var origQueries = $.extend({}, settings.dataset.queries);\n      if (q) {\n        this.add('search', q);\n      } else {\n        this.remove('search');\n      }\n      if (!utility.objectsEqual(settings.dataset.queries, origQueries)) {\n        obj.process();\n      }\n    };\n\n    this.setupInputs = function() {\n      settings.inputs.queries.each(function() {\n        var $this = $(this),\n            event = $this.data('dynatable-query-event') || settings.inputs.queryEvent,\n            query = $this.data('dynatable-query') || $this.attr('name') || this.id,\n            queryFunction = function(e) {\n              var q = $(this).val();\n              if (q === \"\") { q = undefined; }\n              if (q === settings.dataset.queries[query]) { return false; }\n              if (q) {\n                _this.add(query, q);\n              } else {\n                _this.remove(query);\n              }\n              obj.process();\n              e.preventDefault();\n            };\n\n        $this\n          .attr('data-dynatable-query', query)\n          .bind(event, queryFunction)\n          .bind('keypress', function(e) {\n            if (e.which == 13) {\n              queryFunction.call(this, e);\n            }\n          });\n\n        if (settings.dataset.queries[query]) { $this.val(decodeURIComponent(settings.dataset.queries[query])); }\n      });\n    };\n\n    // Query functions for in-page querying\n    // each function should take a record and a value as input\n    // and output true of false as to whether the record is a match or not\n    this.functions = {\n      search: function(record, queryValue) {\n        var contains = false;\n        // Loop through each attribute of record\n        for (attr in record) {\n          if (record.hasOwnProperty(attr)) {\n            var attrValue = record[attr];\n            if (typeof(attrValue) === \"string\" && attrValue.toLowerCase().indexOf(queryValue.toLowerCase()) !== -1) {\n              contains = true;\n              // Don't need to keep searching attributes once found\n              break;\n            } else {\n              continue;\n            }\n          }\n        }\n        return contains;\n      }\n    };\n  };\n\n  function InputsSearch(obj, settings) {\n    var _this = this;\n\n    this.initOnLoad = function() {\n      return settings.features.search;\n    };\n\n    this.init = function() {\n      this.attach();\n    };\n\n    this.create = function() {\n      var $search = $('<input />', {\n            type: 'search',\n            id: 'dynatable-query-search-' + obj.element.id,\n            value: settings.dataset.queries.search\n          }),\n          $searchSpan = $('<span></span>', {\n            id: 'dynatable-search-' + obj.element.id,\n            'class': 'dynatable-search',\n            text: 'Search: '\n          }).append($search);\n\n      $search\n        .bind(settings.inputs.queryEvent, function() {\n          obj.queries.runSearch($(this).val());\n        })\n        .bind('keypress', function(e) {\n          if (e.which == 13) {\n            obj.queries.runSearch($(this).val());\n            e.preventDefault();\n          }\n        });\n      return $searchSpan;\n    };\n\n    this.attach = function() {\n      var $target = settings.inputs.searchTarget ? $(settings.inputs.searchTarget) : obj.$element;\n      $target[settings.inputs.searchPlacement](this.create());\n    };\n  };\n\n  // provide a public function for selecting page\n  function PaginationPage(obj, settings) {\n    this.initOnLoad = function() {\n      return settings.features.paginate;\n    };\n\n    this.init = function() {\n      var pageUrl = window.location.search.match(new RegExp(settings.params.page + '=([^&]*)'));\n      // If page is present in URL parameters and pushState is enabled\n      // (meaning that it'd be possible for dynatable to have put the\n      // page parameter in the URL)\n      if (pageUrl && settings.features.pushState) {\n        this.set(pageUrl[1]);\n      } else {\n        this.set(1);\n      }\n    };\n\n    this.set = function(page) {\n      settings.dataset.page = parseInt(page, 10);\n    }\n  };\n\n  function PaginationPerPage(obj, settings) {\n    var _this = this;\n\n    this.initOnLoad = function() {\n      return settings.features.paginate;\n    };\n\n    this.init = function() {\n      var perPageUrl = window.location.search.match(new RegExp(settings.params.perPage + '=([^&]*)'));\n\n      // If perPage is present in URL parameters and pushState is enabled\n      // (meaning that it'd be possible for dynatable to have put the\n      // perPage parameter in the URL)\n      if (perPageUrl && settings.features.pushState) {\n        // Don't reset page to 1 on init, since it might override page\n        // set on init from URL\n        this.set(perPageUrl[1], true);\n      } else {\n        this.set(settings.dataset.perPageDefault, true);\n      }\n\n      if (settings.features.perPageSelect) {\n        this.attach();\n      }\n    };\n\n    this.create = function() {\n      var $select = $('<select>', {\n            id: 'dynatable-per-page-' + obj.element.id,\n            'class': 'dynatable-per-page-select'\n          });\n\n      for (var i = 0, len = settings.dataset.perPageOptions.length; i < len; i++) {\n        var number = settings.dataset.perPageOptions[i],\n            selected = settings.dataset.perPage == number ? 'selected=\"selected\"' : '';\n        $select.append('<option value=\"' + number + '\" ' + selected + '>' + number + '</option>');\n      }\n\n      $select.bind('change', function(e) {\n        _this.set($(this).val());\n        obj.process();\n      });\n\n      return $('<span />', {\n        'class': 'dynatable-per-page'\n      }).append(\"<span class='dynatable-per-page-label'>\" + settings.inputs.perPageText + \"</span>\").append($select);\n    };\n\n    this.attach = function() {\n      var $target = settings.inputs.perPageTarget ? $(settings.inputs.perPageTarget) : obj.$element;\n      $target[settings.inputs.perPagePlacement](this.create());\n    };\n\n    this.set = function(number, skipResetPage) {\n      if (!skipResetPage) { obj.paginationPage.set(1); }\n      settings.dataset.perPage = parseInt(number);\n    };\n  };\n\n  // pagination links which update dataset.page attribute\n  function PaginationLinks(obj, settings) {\n    var _this = this;\n\n    this.initOnLoad = function() {\n      return settings.features.paginate;\n    };\n\n    this.init = function() {\n      this.attach();\n    };\n\n    this.create = function() {\n      var $pageLinks = $('<ul></ul>', {\n            id: 'dynatable-pagination-links-' + obj.element.id,\n            'class': 'dynatable-pagination-links',\n            html: '<span>Pages: </span>'\n          }),\n          pageLinkClass = 'dynatable-page-link',\n          activePageClass = 'dynatable-active-page',\n          pages = Math.ceil(settings.dataset.queryRecordCount / settings.dataset.perPage),\n          page = settings.dataset.page,\n          breaks = [\n            settings.inputs.paginationGap[0],\n            settings.dataset.page - settings.inputs.paginationGap[1],\n            settings.dataset.page + settings.inputs.paginationGap[2],\n            (pages + 1) - settings.inputs.paginationGap[3]\n          ],\n          $link;\n\n      for (var i = 1; i <= pages; i++) {\n        if ( (i > breaks[0] && i < breaks[1]) || (i > breaks[2] && i < breaks[3])) {\n          // skip to next iteration in loop\n          continue;\n        } else {\n          $link = $('<a></a>',{\n            html: i,\n            'class': pageLinkClass,\n            'data-dynatable-page': i\n          }).appendTo($pageLinks);\n\n          if (page == i) { $link.addClass(activePageClass); }\n\n          // If i is not between one of the following\n          // (1 + (settings.paginationGap[0]))\n          // (page - settings.paginationGap[1])\n          // (page + settings.paginationGap[2])\n          // (pages - settings.paginationGap[3])\n          var breakIndex = $.inArray(i, breaks),\n              nextBreak = breaks[breakIndex + 1];\n          if (breakIndex > 0 && i !== 1 && nextBreak && nextBreak > (i + 1)) {\n            var $ellip = $('<span class=\"dynatable-page-break\">&hellip;</span>');\n            $link = breakIndex < 2 ? $link.before($ellip) : $link.after($ellip);\n          }\n\n        }\n\n        if (settings.inputs.paginationPrev && i === 1) {\n          var $prevLink = $('<a></a>',{\n            html: settings.inputs.paginationPrev,\n            'class': pageLinkClass + ' dynatable-page-prev',\n            'data-dynatable-page': page - 1\n          });\n          if (page === 1) { $prevLink.addClass(activePageClass); }\n          $link = $link.before($prevLink);\n        }\n        if (settings.inputs.paginationNext && i === pages) {\n          var $nextLink = $('<a></a>',{\n            html: settings.inputs.paginationNext,\n            'class': pageLinkClass + ' dynatable-page-next',\n            'data-dynatable-page': page + 1\n          });\n          if (page === pages) { $nextLink.addClass(activePageClass); }\n          $link = $link.after($nextLink);\n        }\n      }\n\n      $pageLinks.children().wrap('<li></li>');\n\n      // only bind page handler to non-active pages\n      var selector = '#dynatable-pagination-links-' + obj.element.id + ' .' + pageLinkClass + ':not(.' + activePageClass + ')';\n      // kill any existing delegated-bindings so they don't stack up\n      $(document).undelegate(selector, 'click.dynatable');\n      $(document).delegate(selector, 'click.dynatable', function(e) {\n        $this = $(this);\n        $this.closest('.dynatable-pagination-links').find('.' + activePageClass).removeClass(activePageClass);\n        $this.addClass(activePageClass);\n\n        obj.paginationPage.set($this.data('dynatable-page'));\n        obj.process();\n        e.preventDefault();\n      });\n\n      return $pageLinks;\n    };\n\n    this.attach = function() {\n      // append page liks *after* delegate-event-binding so it doesn't need to\n      // find and select all page links to bind event\n      var $target = settings.inputs.paginationLinkTarget ? $(settings.inputs.paginationLinkTarget) : obj.$element;\n      $target[settings.inputs.paginationLinkPlacement](obj.paginationLinks.create());\n    };\n  };\n\n  utility = {\n    normalizeText: function(text, style) {\n      text = this.textTransform[style](text);\n      return text;\n    },\n    textTransform: {\n      trimDash: function(text) {\n        return text.replace(/^\\s+|\\s+$/g, \"\").replace(/\\s+/g, \"-\");\n      },\n      camelCase: function(text) {\n        text = this.trimDash(text);\n        return text\n          .replace(/(\\-[a-zA-Z])/g, function($1){return $1.toUpperCase().replace('-','');})\n          .replace(/([A-Z])([A-Z]+)/g, function($1,$2,$3){return $2 + $3.toLowerCase();})\n          .replace(/^[A-Z]/, function($1){return $1.toLowerCase();});\n      },\n      dashed: function(text) {\n        text = this.trimDash(text);\n        return this.lowercase(text);\n      },\n      underscore: function(text) {\n        text = this.trimDash(text);\n        return this.lowercase(text.replace(/(-)/g, '_'));\n      },\n      lowercase: function(text) {\n        return text.replace(/([A-Z])/g, function($1){return $1.toLowerCase();});\n      }\n    },\n    // Deserialize params in URL to object\n    // see http://stackoverflow.com/questions/1131630/javascript-jquery-param-inverse-function/3401265#3401265\n    deserialize: function(query) {\n      if (!query) return {};\n      // modified to accept an array of partial URL strings\n      if (typeof(query) === \"object\") { query = query.join('&'); }\n\n      var hash = {},\n          vars = query.split(\"&\");\n\n      for (var i = 0; i < vars.length; i++) {\n        var pair = vars[i].split(\"=\"),\n            k = decodeURIComponent(pair[0]),\n            v, m;\n\n        if (!pair[1]) { continue };\n        v = decodeURIComponent(pair[1].replace(/\\+/g, ' '));\n\n        // modified to parse multi-level parameters (e.g. \"hi[there][dude]=whatsup\" => hi: {there: {dude: \"whatsup\"}})\n        while (m = k.match(/([^&=]+)\\[([^&=]+)\\]$/)) {\n          var origV = v;\n          k = m[1];\n          v = {};\n\n          // If nested param ends in '][', then the regex above erroneously included half of a trailing '[]',\n          // which indicates the end-value is part of an array\n          if (m[2].substr(m[2].length-2) == '][') { // must use substr for IE to understand it\n            v[m[2].substr(0,m[2].length-2)] = [origV];\n          } else {\n            v[m[2]] = origV;\n          }\n        }\n\n        // If it is the first entry with this name\n        if (typeof hash[k] === \"undefined\") {\n          if (k.substr(k.length-2) != '[]') { // not end with []. cannot use negative index as IE doesn't understand it\n            hash[k] = v;\n          } else {\n            hash[k] = [v];\n          }\n        // If subsequent entry with this name and not array\n        } else if (typeof hash[k] === \"string\") {\n          hash[k] = v;  // replace it\n        // modified to add support for objects\n        } else if (typeof hash[k] === \"object\") {\n          hash[k] = $.extend({}, hash[k], v);\n        // If subsequent entry with this name and is array\n        } else {\n          hash[k].push(v);\n        }\n      }\n      return hash;\n    },\n    refreshQueryString: function(urlString, data, settings) {\n      var _this = this,\n          queryString = urlString.split('?'),\n          path = queryString.shift(),\n          urlOptions;\n\n      urlOptions = this.deserialize(urlString);\n\n      // Loop through each dynatable param and update the URL with it\n      for (attr in settings.params) {\n        if (settings.params.hasOwnProperty(attr)) {\n          var label = settings.params[attr];\n          // Skip over parameters matching attributes for disabled features (i.e. leave them untouched),\n          // because if the feature is turned off, then parameter name is a coincidence and it's unrelated to dynatable.\n          if (\n            (!settings.features.sort && attr == \"sorts\") ||\n              (!settings.features.paginate && _this.anyMatch(attr, [\"page\", \"perPage\", \"offset\"], function(attr, param) { return attr == param; }))\n          ) {\n            continue;\n          }\n\n          // Delete page and offset from url params if on page 1 (default)\n          if ((attr === \"page\" || attr === \"offset\") && data[\"page\"] === 1) {\n            if (urlOptions[label]) {\n              delete urlOptions[label];\n            }\n            continue;\n          }\n\n          // Delete perPage from url params if default perPage value\n          if (attr === \"perPage\" && data[label] == settings.dataset.perPageDefault) {\n            if (urlOptions[label]) {\n              delete urlOptions[label];\n            }\n            continue;\n          }\n\n          // For queries, we're going to handle each possible query parameter individually here instead of\n          // handling the entire queries object below, since we need to make sure that this is a query controlled by dynatable.\n          if (attr == \"queries\" && data[label]) {\n            var queries = settings.inputs.queries || [],\n                inputQueries = $.makeArray(queries.map(function() { return $(this).attr('name') }));\n            for (var i = 0, len = inputQueries.length; i < len; i++) {\n              var attr = inputQueries[i];\n              if (data[label][attr]) {\n                if (typeof urlOptions[label] === 'undefined') { urlOptions[label] = {}; }\n                urlOptions[label][attr] = data[label][attr];\n              } else {\n                delete urlOptions[label][attr];\n              }\n            }\n            continue;\n          }\n\n          // If we havne't returned true by now, then we actually want to update the parameter in the URL\n          if (data[label]) {\n            urlOptions[label] = data[label];\n          } else {\n            delete urlOptions[label];\n          }\n        }\n      }\n      return decodeURI($.param(urlOptions));\n    },\n    // Get array of keys from object\n    // see http://stackoverflow.com/questions/208016/how-to-list-the-properties-of-a-javascript-object/208020#208020\n    keysFromObject: function(obj){\n      var keys = [];\n      for (var key in obj){\n        keys.push(key);\n      }\n      return keys;\n    },\n    // Find an object in an array of objects by attributes.\n    // E.g. find object with {id: 'hi', name: 'there'} in an array of objects\n    findObjectInArray: function(array, objectAttr) {\n      var _this = this,\n          foundObject;\n      for (var i = 0, len = array.length; i < len; i++) {\n        var item = array[i];\n        // For each object in array, test to make sure all attributes in objectAttr match\n        if (_this.allMatch(item, objectAttr, function(item, key, value) { return item[key] == value; })) {\n          foundObject = item;\n          break;\n        }\n      }\n      return foundObject;\n    },\n    // Return true if supplied test function passes for ALL items in an array\n    allMatch: function(item, arrayOrObject, test) {\n      // start off with true result by default\n      var match = true,\n          isArray = $.isArray(arrayOrObject);\n      // Loop through all items in array\n      $.each(arrayOrObject, function(key, value) {\n        var result = isArray ? test(item, value) : test(item, key, value);\n        // If a single item tests false, go ahead and break the array by returning false\n        // and return false as result,\n        // otherwise, continue with next iteration in loop\n        // (if we make it through all iterations without overriding match with false,\n        // then we can return the true result we started with by default)\n        if (!result) { return match = false; }\n      });\n      return match;\n    },\n    // Return true if supplied test function passes for ANY items in an array\n    anyMatch: function(item, arrayOrObject, test) {\n      var match = false,\n          isArray = $.isArray(arrayOrObject);\n\n      $.each(arrayOrObject, function(key, value) {\n        var result = isArray ? test(item, value) : test(item, key, value);\n        if (result) {\n          // As soon as a match is found, set match to true, and return false to stop the `$.each` loop\n          match = true;\n          return false;\n        }\n      });\n      return match;\n    },\n    // Return true if two objects are equal\n    // (i.e. have the same attributes and attribute values)\n    objectsEqual: function(a, b) {\n      for (attr in a) {\n        if (a.hasOwnProperty(attr)) {\n          if (!b.hasOwnProperty(attr) || a[attr] !== b[attr]) {\n            return false;\n          }\n        }\n      }\n      for (attr in b) {\n        if (b.hasOwnProperty(attr) && !a.hasOwnProperty(attr)) {\n          return false;\n        }\n      }\n      return true;\n    },\n    // Taken from http://stackoverflow.com/questions/105034/how-to-create-a-guid-uuid-in-javascript/105074#105074\n    randomHash: function() {\n      return (((1+Math.random())*0x10000)|0).toString(16).substring(1);\n    }\n  };\n\n  //-----------------------------------------------------------------\n  // Build the dynatable plugin\n  //-----------------------------------------------------------------\n\n  // Object.create support test, and fallback for browsers without it\n  if ( typeof Object.create !== \"function\" ) {\n    Object.create = function (o) {\n      function F() {}\n      F.prototype = o;\n      return new F();\n    };\n  }\n\n  //-----------------------------------------------------------------\n  // Global dynatable plugin setting defaults\n  //-----------------------------------------------------------------\n\n  $.dynatableSetup = function(options) {\n    defaults = mergeSettings(options);\n  };\n\n  // Create dynatable plugin based on a defined object\n  $.dynatable = function( object ) {\n    $.fn['dynatable'] = function( options ) {\n      return this.each(function() {\n        if ( ! $.data( this, 'dynatable' ) ) {\n          $.data( this, 'dynatable', Object.create(object).init(this, options) );\n        }\n      });\n    };\n  };\n\n  $.dynatable(dt);\n\n})(jQuery);\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/moment-with-locales.js",
    "content": "//! moment.js\n//! version : 2.9.0\n//! authors : Tim Wood, Iskren Chernev, Moment.js contributors\n//! license : MIT\n//! momentjs.com\n\n(function (undefined) {\n    /************************************\n        Constants\n    ************************************/\n\n    var moment,\n        VERSION = '2.9.0',\n        // the global-scope this is NOT the global object in Node.js\n        globalScope = (typeof global !== 'undefined' && (typeof window === 'undefined' || window === global.window)) ? global : this,\n        oldGlobalMoment,\n        round = Math.round,\n        hasOwnProperty = Object.prototype.hasOwnProperty,\n        i,\n\n        YEAR = 0,\n        MONTH = 1,\n        DATE = 2,\n        HOUR = 3,\n        MINUTE = 4,\n        SECOND = 5,\n        MILLISECOND = 6,\n\n        // internal storage for locale config files\n        locales = {},\n\n        // extra moment internal properties (plugins register props here)\n        momentProperties = [],\n\n        // check for nodeJS\n        hasModule = (typeof module !== 'undefined' && module && module.exports),\n\n        // ASP.NET json date format regex\n        aspNetJsonRegex = /^\\/?Date\\((\\-?\\d+)/i,\n        aspNetTimeSpanJsonRegex = /(\\-)?(?:(\\d*)\\.)?(\\d+)\\:(\\d+)(?:\\:(\\d+)\\.?(\\d{3})?)?/,\n\n        // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html\n        // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere\n        isoDurationRegex = /^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/,\n\n        // format tokens\n        formattingTokens = /(\\[[^\\[]*\\])|(\\\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Q|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,4}|x|X|zz?|ZZ?|.)/g,\n        localFormattingTokens = /(\\[[^\\[]*\\])|(\\\\)?(LTS|LT|LL?L?L?|l{1,4})/g,\n\n        // parsing token regexes\n        parseTokenOneOrTwoDigits = /\\d\\d?/, // 0 - 99\n        parseTokenOneToThreeDigits = /\\d{1,3}/, // 0 - 999\n        parseTokenOneToFourDigits = /\\d{1,4}/, // 0 - 9999\n        parseTokenOneToSixDigits = /[+\\-]?\\d{1,6}/, // -999,999 - 999,999\n        parseTokenDigits = /\\d+/, // nonzero number of digits\n        parseTokenWord = /[0-9]*['a-z\\u00A0-\\u05FF\\u0700-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]+|[\\u0600-\\u06FF\\/]+(\\s*?[\\u0600-\\u06FF]+){1,2}/i, // any word (or two) characters or numbers including two/three word month in arabic.\n        parseTokenTimezone = /Z|[\\+\\-]\\d\\d:?\\d\\d/gi, // +00:00 -00:00 +0000 -0000 or Z\n        parseTokenT = /T/i, // T (ISO separator)\n        parseTokenOffsetMs = /[\\+\\-]?\\d+/, // 1234567890123\n        parseTokenTimestampMs = /[\\+\\-]?\\d+(\\.\\d{1,3})?/, // 123456789 123456789.123\n\n        //strict parsing regexes\n        parseTokenOneDigit = /\\d/, // 0 - 9\n        parseTokenTwoDigits = /\\d\\d/, // 00 - 99\n        parseTokenThreeDigits = /\\d{3}/, // 000 - 999\n        parseTokenFourDigits = /\\d{4}/, // 0000 - 9999\n        parseTokenSixDigits = /[+-]?\\d{6}/, // -999,999 - 999,999\n        parseTokenSignedNumber = /[+-]?\\d+/, // -inf - inf\n\n        // iso 8601 regex\n        // 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00)\n        isoRegex = /^\\s*(?:[+-]\\d{6}|\\d{4})-(?:(\\d\\d-\\d\\d)|(W\\d\\d$)|(W\\d\\d-\\d)|(\\d\\d\\d))((T| )(\\d\\d(:\\d\\d(:\\d\\d(\\.\\d+)?)?)?)?([\\+\\-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/,\n\n        isoFormat = 'YYYY-MM-DDTHH:mm:ssZ',\n\n        isoDates = [\n            ['YYYYYY-MM-DD', /[+-]\\d{6}-\\d{2}-\\d{2}/],\n            ['YYYY-MM-DD', /\\d{4}-\\d{2}-\\d{2}/],\n            ['GGGG-[W]WW-E', /\\d{4}-W\\d{2}-\\d/],\n            ['GGGG-[W]WW', /\\d{4}-W\\d{2}/],\n            ['YYYY-DDD', /\\d{4}-\\d{3}/]\n        ],\n\n        // iso time formats and regexes\n        isoTimes = [\n            ['HH:mm:ss.SSSS', /(T| )\\d\\d:\\d\\d:\\d\\d\\.\\d+/],\n            ['HH:mm:ss', /(T| )\\d\\d:\\d\\d:\\d\\d/],\n            ['HH:mm', /(T| )\\d\\d:\\d\\d/],\n            ['HH', /(T| )\\d\\d/]\n        ],\n\n        // timezone chunker '+10:00' > ['10', '00'] or '-1530' > ['-', '15', '30']\n        parseTimezoneChunker = /([\\+\\-]|\\d\\d)/gi,\n\n        // getter and setter names\n        proxyGettersAndSetters = 'Date|Hours|Minutes|Seconds|Milliseconds'.split('|'),\n        unitMillisecondFactors = {\n            'Milliseconds' : 1,\n            'Seconds' : 1e3,\n            'Minutes' : 6e4,\n            'Hours' : 36e5,\n            'Days' : 864e5,\n            'Months' : 2592e6,\n            'Years' : 31536e6\n        },\n\n        unitAliases = {\n            ms : 'millisecond',\n            s : 'second',\n            m : 'minute',\n            h : 'hour',\n            d : 'day',\n            D : 'date',\n            w : 'week',\n            W : 'isoWeek',\n            M : 'month',\n            Q : 'quarter',\n            y : 'year',\n            DDD : 'dayOfYear',\n            e : 'weekday',\n            E : 'isoWeekday',\n            gg: 'weekYear',\n            GG: 'isoWeekYear'\n        },\n\n        camelFunctions = {\n            dayofyear : 'dayOfYear',\n            isoweekday : 'isoWeekday',\n            isoweek : 'isoWeek',\n            weekyear : 'weekYear',\n            isoweekyear : 'isoWeekYear'\n        },\n\n        // format function strings\n        formatFunctions = {},\n\n        // default relative time thresholds\n        relativeTimeThresholds = {\n            s: 45,  // seconds to minute\n            m: 45,  // minutes to hour\n            h: 22,  // hours to day\n            d: 26,  // days to month\n            M: 11   // months to year\n        },\n\n        // tokens to ordinalize and pad\n        ordinalizeTokens = 'DDD w W M D d'.split(' '),\n        paddedTokens = 'M D H h m s w W'.split(' '),\n\n        formatTokenFunctions = {\n            M    : function () {\n                return this.month() + 1;\n            },\n            MMM  : function (format) {\n                return this.localeData().monthsShort(this, format);\n            },\n            MMMM : function (format) {\n                return this.localeData().months(this, format);\n            },\n            D    : function () {\n                return this.date();\n            },\n            DDD  : function () {\n                return this.dayOfYear();\n            },\n            d    : function () {\n                return this.day();\n            },\n            dd   : function (format) {\n                return this.localeData().weekdaysMin(this, format);\n            },\n            ddd  : function (format) {\n                return this.localeData().weekdaysShort(this, format);\n            },\n            dddd : function (format) {\n                return this.localeData().weekdays(this, format);\n            },\n            w    : function () {\n                return this.week();\n            },\n            W    : function () {\n                return this.isoWeek();\n            },\n            YY   : function () {\n                return leftZeroFill(this.year() % 100, 2);\n            },\n            YYYY : function () {\n                return leftZeroFill(this.year(), 4);\n            },\n            YYYYY : function () {\n                return leftZeroFill(this.year(), 5);\n            },\n            YYYYYY : function () {\n                var y = this.year(), sign = y >= 0 ? '+' : '-';\n                return sign + leftZeroFill(Math.abs(y), 6);\n            },\n            gg   : function () {\n                return leftZeroFill(this.weekYear() % 100, 2);\n            },\n            gggg : function () {\n                return leftZeroFill(this.weekYear(), 4);\n            },\n            ggggg : function () {\n                return leftZeroFill(this.weekYear(), 5);\n            },\n            GG   : function () {\n                return leftZeroFill(this.isoWeekYear() % 100, 2);\n            },\n            GGGG : function () {\n                return leftZeroFill(this.isoWeekYear(), 4);\n            },\n            GGGGG : function () {\n                return leftZeroFill(this.isoWeekYear(), 5);\n            },\n            e : function () {\n                return this.weekday();\n            },\n            E : function () {\n                return this.isoWeekday();\n            },\n            a    : function () {\n                return this.localeData().meridiem(this.hours(), this.minutes(), true);\n            },\n            A    : function () {\n                return this.localeData().meridiem(this.hours(), this.minutes(), false);\n            },\n            H    : function () {\n                return this.hours();\n            },\n            h    : function () {\n                return this.hours() % 12 || 12;\n            },\n            m    : function () {\n                return this.minutes();\n            },\n            s    : function () {\n                return this.seconds();\n            },\n            S    : function () {\n                return toInt(this.milliseconds() / 100);\n            },\n            SS   : function () {\n                return leftZeroFill(toInt(this.milliseconds() / 10), 2);\n            },\n            SSS  : function () {\n                return leftZeroFill(this.milliseconds(), 3);\n            },\n            SSSS : function () {\n                return leftZeroFill(this.milliseconds(), 3);\n            },\n            Z    : function () {\n                var a = this.utcOffset(),\n                    b = '+';\n                if (a < 0) {\n                    a = -a;\n                    b = '-';\n                }\n                return b + leftZeroFill(toInt(a / 60), 2) + ':' + leftZeroFill(toInt(a) % 60, 2);\n            },\n            ZZ   : function () {\n                var a = this.utcOffset(),\n                    b = '+';\n                if (a < 0) {\n                    a = -a;\n                    b = '-';\n                }\n                return b + leftZeroFill(toInt(a / 60), 2) + leftZeroFill(toInt(a) % 60, 2);\n            },\n            z : function () {\n                return this.zoneAbbr();\n            },\n            zz : function () {\n                return this.zoneName();\n            },\n            x    : function () {\n                return this.valueOf();\n            },\n            X    : function () {\n                return this.unix();\n            },\n            Q : function () {\n                return this.quarter();\n            }\n        },\n\n        deprecations = {},\n\n        lists = ['months', 'monthsShort', 'weekdays', 'weekdaysShort', 'weekdaysMin'],\n\n        updateInProgress = false;\n\n    // Pick the first defined of two or three arguments. dfl comes from\n    // default.\n    function dfl(a, b, c) {\n        switch (arguments.length) {\n            case 2: return a != null ? a : b;\n            case 3: return a != null ? a : b != null ? b : c;\n            default: throw new Error('Implement me');\n        }\n    }\n\n    function hasOwnProp(a, b) {\n        return hasOwnProperty.call(a, b);\n    }\n\n    function defaultParsingFlags() {\n        // We need to deep clone this object, and es5 standard is not very\n        // helpful.\n        return {\n            empty : false,\n            unusedTokens : [],\n            unusedInput : [],\n            overflow : -2,\n            charsLeftOver : 0,\n            nullInput : false,\n            invalidMonth : null,\n            invalidFormat : false,\n            userInvalidated : false,\n            iso: false\n        };\n    }\n\n    function printMsg(msg) {\n        if (moment.suppressDeprecationWarnings === false &&\n                typeof console !== 'undefined' && console.warn) {\n            console.warn('Deprecation warning: ' + msg);\n        }\n    }\n\n    function deprecate(msg, fn) {\n        var firstTime = true;\n        return extend(function () {\n            if (firstTime) {\n                printMsg(msg);\n                firstTime = false;\n            }\n            return fn.apply(this, arguments);\n        }, fn);\n    }\n\n    function deprecateSimple(name, msg) {\n        if (!deprecations[name]) {\n            printMsg(msg);\n            deprecations[name] = true;\n        }\n    }\n\n    function padToken(func, count) {\n        return function (a) {\n            return leftZeroFill(func.call(this, a), count);\n        };\n    }\n    function ordinalizeToken(func, period) {\n        return function (a) {\n            return this.localeData().ordinal(func.call(this, a), period);\n        };\n    }\n\n    function monthDiff(a, b) {\n        // difference in months\n        var wholeMonthDiff = ((b.year() - a.year()) * 12) + (b.month() - a.month()),\n            // b is in (anchor - 1 month, anchor + 1 month)\n            anchor = a.clone().add(wholeMonthDiff, 'months'),\n            anchor2, adjust;\n\n        if (b - anchor < 0) {\n            anchor2 = a.clone().add(wholeMonthDiff - 1, 'months');\n            // linear across the month\n            adjust = (b - anchor) / (anchor - anchor2);\n        } else {\n            anchor2 = a.clone().add(wholeMonthDiff + 1, 'months');\n            // linear across the month\n            adjust = (b - anchor) / (anchor2 - anchor);\n        }\n\n        return -(wholeMonthDiff + adjust);\n    }\n\n    while (ordinalizeTokens.length) {\n        i = ordinalizeTokens.pop();\n        formatTokenFunctions[i + 'o'] = ordinalizeToken(formatTokenFunctions[i], i);\n    }\n    while (paddedTokens.length) {\n        i = paddedTokens.pop();\n        formatTokenFunctions[i + i] = padToken(formatTokenFunctions[i], 2);\n    }\n    formatTokenFunctions.DDDD = padToken(formatTokenFunctions.DDD, 3);\n\n\n    function meridiemFixWrap(locale, hour, meridiem) {\n        var isPm;\n\n        if (meridiem == null) {\n            // nothing to do\n            return hour;\n        }\n        if (locale.meridiemHour != null) {\n            return locale.meridiemHour(hour, meridiem);\n        } else if (locale.isPM != null) {\n            // Fallback\n            isPm = locale.isPM(meridiem);\n            if (isPm && hour < 12) {\n                hour += 12;\n            }\n            if (!isPm && hour === 12) {\n                hour = 0;\n            }\n            return hour;\n        } else {\n            // thie is not supposed to happen\n            return hour;\n        }\n    }\n\n    /************************************\n        Constructors\n    ************************************/\n\n    function Locale() {\n    }\n\n    // Moment prototype object\n    function Moment(config, skipOverflow) {\n        if (skipOverflow !== false) {\n            checkOverflow(config);\n        }\n        copyConfig(this, config);\n        this._d = new Date(+config._d);\n        // Prevent infinite loop in case updateOffset creates new moment\n        // objects.\n        if (updateInProgress === false) {\n            updateInProgress = true;\n            moment.updateOffset(this);\n            updateInProgress = false;\n        }\n    }\n\n    // Duration Constructor\n    function Duration(duration) {\n        var normalizedInput = normalizeObjectUnits(duration),\n            years = normalizedInput.year || 0,\n            quarters = normalizedInput.quarter || 0,\n            months = normalizedInput.month || 0,\n            weeks = normalizedInput.week || 0,\n            days = normalizedInput.day || 0,\n            hours = normalizedInput.hour || 0,\n            minutes = normalizedInput.minute || 0,\n            seconds = normalizedInput.second || 0,\n            milliseconds = normalizedInput.millisecond || 0;\n\n        // representation for dateAddRemove\n        this._milliseconds = +milliseconds +\n            seconds * 1e3 + // 1000\n            minutes * 6e4 + // 1000 * 60\n            hours * 36e5; // 1000 * 60 * 60\n        // Because of dateAddRemove treats 24 hours as different from a\n        // day when working around DST, we need to store them separately\n        this._days = +days +\n            weeks * 7;\n        // It is impossible translate months into days without knowing\n        // which months you are are talking about, so we have to store\n        // it separately.\n        this._months = +months +\n            quarters * 3 +\n            years * 12;\n\n        this._data = {};\n\n        this._locale = moment.localeData();\n\n        this._bubble();\n    }\n\n    /************************************\n        Helpers\n    ************************************/\n\n\n    function extend(a, b) {\n        for (var i in b) {\n            if (hasOwnProp(b, i)) {\n                a[i] = b[i];\n            }\n        }\n\n        if (hasOwnProp(b, 'toString')) {\n            a.toString = b.toString;\n        }\n\n        if (hasOwnProp(b, 'valueOf')) {\n            a.valueOf = b.valueOf;\n        }\n\n        return a;\n    }\n\n    function copyConfig(to, from) {\n        var i, prop, val;\n\n        if (typeof from._isAMomentObject !== 'undefined') {\n            to._isAMomentObject = from._isAMomentObject;\n        }\n        if (typeof from._i !== 'undefined') {\n            to._i = from._i;\n        }\n        if (typeof from._f !== 'undefined') {\n            to._f = from._f;\n        }\n        if (typeof from._l !== 'undefined') {\n            to._l = from._l;\n        }\n        if (typeof from._strict !== 'undefined') {\n            to._strict = from._strict;\n        }\n        if (typeof from._tzm !== 'undefined') {\n            to._tzm = from._tzm;\n        }\n        if (typeof from._isUTC !== 'undefined') {\n            to._isUTC = from._isUTC;\n        }\n        if (typeof from._offset !== 'undefined') {\n            to._offset = from._offset;\n        }\n        if (typeof from._pf !== 'undefined') {\n            to._pf = from._pf;\n        }\n        if (typeof from._locale !== 'undefined') {\n            to._locale = from._locale;\n        }\n\n        if (momentProperties.length > 0) {\n            for (i in momentProperties) {\n                prop = momentProperties[i];\n                val = from[prop];\n                if (typeof val !== 'undefined') {\n                    to[prop] = val;\n                }\n            }\n        }\n\n        return to;\n    }\n\n    function absRound(number) {\n        if (number < 0) {\n            return Math.ceil(number);\n        } else {\n            return Math.floor(number);\n        }\n    }\n\n    // left zero fill a number\n    // see http://jsperf.com/left-zero-filling for performance comparison\n    function leftZeroFill(number, targetLength, forceSign) {\n        var output = '' + Math.abs(number),\n            sign = number >= 0;\n\n        while (output.length < targetLength) {\n            output = '0' + output;\n        }\n        return (sign ? (forceSign ? '+' : '') : '-') + output;\n    }\n\n    function positiveMomentsDifference(base, other) {\n        var res = {milliseconds: 0, months: 0};\n\n        res.months = other.month() - base.month() +\n            (other.year() - base.year()) * 12;\n        if (base.clone().add(res.months, 'M').isAfter(other)) {\n            --res.months;\n        }\n\n        res.milliseconds = +other - +(base.clone().add(res.months, 'M'));\n\n        return res;\n    }\n\n    function momentsDifference(base, other) {\n        var res;\n        other = makeAs(other, base);\n        if (base.isBefore(other)) {\n            res = positiveMomentsDifference(base, other);\n        } else {\n            res = positiveMomentsDifference(other, base);\n            res.milliseconds = -res.milliseconds;\n            res.months = -res.months;\n        }\n\n        return res;\n    }\n\n    // TODO: remove 'name' arg after deprecation is removed\n    function createAdder(direction, name) {\n        return function (val, period) {\n            var dur, tmp;\n            //invert the arguments, but complain about it\n            if (period !== null && !isNaN(+period)) {\n                deprecateSimple(name, 'moment().' + name  + '(period, number) is deprecated. Please use moment().' + name + '(number, period).');\n                tmp = val; val = period; period = tmp;\n            }\n\n            val = typeof val === 'string' ? +val : val;\n            dur = moment.duration(val, period);\n            addOrSubtractDurationFromMoment(this, dur, direction);\n            return this;\n        };\n    }\n\n    function addOrSubtractDurationFromMoment(mom, duration, isAdding, updateOffset) {\n        var milliseconds = duration._milliseconds,\n            days = duration._days,\n            months = duration._months;\n        updateOffset = updateOffset == null ? true : updateOffset;\n\n        if (milliseconds) {\n            mom._d.setTime(+mom._d + milliseconds * isAdding);\n        }\n        if (days) {\n            rawSetter(mom, 'Date', rawGetter(mom, 'Date') + days * isAdding);\n        }\n        if (months) {\n            rawMonthSetter(mom, rawGetter(mom, 'Month') + months * isAdding);\n        }\n        if (updateOffset) {\n            moment.updateOffset(mom, days || months);\n        }\n    }\n\n    // check if is an array\n    function isArray(input) {\n        return Object.prototype.toString.call(input) === '[object Array]';\n    }\n\n    function isDate(input) {\n        return Object.prototype.toString.call(input) === '[object Date]' ||\n            input instanceof Date;\n    }\n\n    // compare two arrays, return the number of differences\n    function compareArrays(array1, array2, dontConvert) {\n        var len = Math.min(array1.length, array2.length),\n            lengthDiff = Math.abs(array1.length - array2.length),\n            diffs = 0,\n            i;\n        for (i = 0; i < len; i++) {\n            if ((dontConvert && array1[i] !== array2[i]) ||\n                (!dontConvert && toInt(array1[i]) !== toInt(array2[i]))) {\n                diffs++;\n            }\n        }\n        return diffs + lengthDiff;\n    }\n\n    function normalizeUnits(units) {\n        if (units) {\n            var lowered = units.toLowerCase().replace(/(.)s$/, '$1');\n            units = unitAliases[units] || camelFunctions[lowered] || lowered;\n        }\n        return units;\n    }\n\n    function normalizeObjectUnits(inputObject) {\n        var normalizedInput = {},\n            normalizedProp,\n            prop;\n\n        for (prop in inputObject) {\n            if (hasOwnProp(inputObject, prop)) {\n                normalizedProp = normalizeUnits(prop);\n                if (normalizedProp) {\n                    normalizedInput[normalizedProp] = inputObject[prop];\n                }\n            }\n        }\n\n        return normalizedInput;\n    }\n\n    function makeList(field) {\n        var count, setter;\n\n        if (field.indexOf('week') === 0) {\n            count = 7;\n            setter = 'day';\n        }\n        else if (field.indexOf('month') === 0) {\n            count = 12;\n            setter = 'month';\n        }\n        else {\n            return;\n        }\n\n        moment[field] = function (format, index) {\n            var i, getter,\n                method = moment._locale[field],\n                results = [];\n\n            if (typeof format === 'number') {\n                index = format;\n                format = undefined;\n            }\n\n            getter = function (i) {\n                var m = moment().utc().set(setter, i);\n                return method.call(moment._locale, m, format || '');\n            };\n\n            if (index != null) {\n                return getter(index);\n            }\n            else {\n                for (i = 0; i < count; i++) {\n                    results.push(getter(i));\n                }\n                return results;\n            }\n        };\n    }\n\n    function toInt(argumentForCoercion) {\n        var coercedNumber = +argumentForCoercion,\n            value = 0;\n\n        if (coercedNumber !== 0 && isFinite(coercedNumber)) {\n            if (coercedNumber >= 0) {\n                value = Math.floor(coercedNumber);\n            } else {\n                value = Math.ceil(coercedNumber);\n            }\n        }\n\n        return value;\n    }\n\n    function daysInMonth(year, month) {\n        return new Date(Date.UTC(year, month + 1, 0)).getUTCDate();\n    }\n\n    function weeksInYear(year, dow, doy) {\n        return weekOfYear(moment([year, 11, 31 + dow - doy]), dow, doy).week;\n    }\n\n    function daysInYear(year) {\n        return isLeapYear(year) ? 366 : 365;\n    }\n\n    function isLeapYear(year) {\n        return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0;\n    }\n\n    function checkOverflow(m) {\n        var overflow;\n        if (m._a && m._pf.overflow === -2) {\n            overflow =\n                m._a[MONTH] < 0 || m._a[MONTH] > 11 ? MONTH :\n                m._a[DATE] < 1 || m._a[DATE] > daysInMonth(m._a[YEAR], m._a[MONTH]) ? DATE :\n                m._a[HOUR] < 0 || m._a[HOUR] > 24 ||\n                    (m._a[HOUR] === 24 && (m._a[MINUTE] !== 0 ||\n                                           m._a[SECOND] !== 0 ||\n                                           m._a[MILLISECOND] !== 0)) ? HOUR :\n                m._a[MINUTE] < 0 || m._a[MINUTE] > 59 ? MINUTE :\n                m._a[SECOND] < 0 || m._a[SECOND] > 59 ? SECOND :\n                m._a[MILLISECOND] < 0 || m._a[MILLISECOND] > 999 ? MILLISECOND :\n                -1;\n\n            if (m._pf._overflowDayOfYear && (overflow < YEAR || overflow > DATE)) {\n                overflow = DATE;\n            }\n\n            m._pf.overflow = overflow;\n        }\n    }\n\n    function isValid(m) {\n        if (m._isValid == null) {\n            m._isValid = !isNaN(m._d.getTime()) &&\n                m._pf.overflow < 0 &&\n                !m._pf.empty &&\n                !m._pf.invalidMonth &&\n                !m._pf.nullInput &&\n                !m._pf.invalidFormat &&\n                !m._pf.userInvalidated;\n\n            if (m._strict) {\n                m._isValid = m._isValid &&\n                    m._pf.charsLeftOver === 0 &&\n                    m._pf.unusedTokens.length === 0 &&\n                    m._pf.bigHour === undefined;\n            }\n        }\n        return m._isValid;\n    }\n\n    function normalizeLocale(key) {\n        return key ? key.toLowerCase().replace('_', '-') : key;\n    }\n\n    // pick the locale from the array\n    // try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each\n    // substring from most specific to least, but move to the next array item if it's a more specific variant than the current root\n    function chooseLocale(names) {\n        var i = 0, j, next, locale, split;\n\n        while (i < names.length) {\n            split = normalizeLocale(names[i]).split('-');\n            j = split.length;\n            next = normalizeLocale(names[i + 1]);\n            next = next ? next.split('-') : null;\n            while (j > 0) {\n                locale = loadLocale(split.slice(0, j).join('-'));\n                if (locale) {\n                    return locale;\n                }\n                if (next && next.length >= j && compareArrays(split, next, true) >= j - 1) {\n                    //the next array item is better than a shallower substring of this one\n                    break;\n                }\n                j--;\n            }\n            i++;\n        }\n        return null;\n    }\n\n    function loadLocale(name) {\n        var oldLocale = null;\n        if (!locales[name] && hasModule) {\n            try {\n                oldLocale = moment.locale();\n                require('./locale/' + name);\n                // because defineLocale currently also sets the global locale, we want to undo that for lazy loaded locales\n                moment.locale(oldLocale);\n            } catch (e) { }\n        }\n        return locales[name];\n    }\n\n    // Return a moment from input, that is local/utc/utcOffset equivalent to\n    // model.\n    function makeAs(input, model) {\n        var res, diff;\n        if (model._isUTC) {\n            res = model.clone();\n            diff = (moment.isMoment(input) || isDate(input) ?\n                    +input : +moment(input)) - (+res);\n            // Use low-level api, because this fn is low-level api.\n            res._d.setTime(+res._d + diff);\n            moment.updateOffset(res, false);\n            return res;\n        } else {\n            return moment(input).local();\n        }\n    }\n\n    /************************************\n        Locale\n    ************************************/\n\n\n    extend(Locale.prototype, {\n\n        set : function (config) {\n            var prop, i;\n            for (i in config) {\n                prop = config[i];\n                if (typeof prop === 'function') {\n                    this[i] = prop;\n                } else {\n                    this['_' + i] = prop;\n                }\n            }\n            // Lenient ordinal parsing accepts just a number in addition to\n            // number + (possibly) stuff coming from _ordinalParseLenient.\n            this._ordinalParseLenient = new RegExp(this._ordinalParse.source + '|' + /\\d{1,2}/.source);\n        },\n\n        _months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),\n        months : function (m) {\n            return this._months[m.month()];\n        },\n\n        _monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n        monthsShort : function (m) {\n            return this._monthsShort[m.month()];\n        },\n\n        monthsParse : function (monthName, format, strict) {\n            var i, mom, regex;\n\n            if (!this._monthsParse) {\n                this._monthsParse = [];\n                this._longMonthsParse = [];\n                this._shortMonthsParse = [];\n            }\n\n            for (i = 0; i < 12; i++) {\n                // make the regex if we don't have it already\n                mom = moment.utc([2000, i]);\n                if (strict && !this._longMonthsParse[i]) {\n                    this._longMonthsParse[i] = new RegExp('^' + this.months(mom, '').replace('.', '') + '$', 'i');\n                    this._shortMonthsParse[i] = new RegExp('^' + this.monthsShort(mom, '').replace('.', '') + '$', 'i');\n                }\n                if (!strict && !this._monthsParse[i]) {\n                    regex = '^' + this.months(mom, '') + '|^' + this.monthsShort(mom, '');\n                    this._monthsParse[i] = new RegExp(regex.replace('.', ''), 'i');\n                }\n                // test the regex\n                if (strict && format === 'MMMM' && this._longMonthsParse[i].test(monthName)) {\n                    return i;\n                } else if (strict && format === 'MMM' && this._shortMonthsParse[i].test(monthName)) {\n                    return i;\n                } else if (!strict && this._monthsParse[i].test(monthName)) {\n                    return i;\n                }\n            }\n        },\n\n        _weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n        weekdays : function (m) {\n            return this._weekdays[m.day()];\n        },\n\n        _weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n        weekdaysShort : function (m) {\n            return this._weekdaysShort[m.day()];\n        },\n\n        _weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n        weekdaysMin : function (m) {\n            return this._weekdaysMin[m.day()];\n        },\n\n        weekdaysParse : function (weekdayName) {\n            var i, mom, regex;\n\n            if (!this._weekdaysParse) {\n                this._weekdaysParse = [];\n            }\n\n            for (i = 0; i < 7; i++) {\n                // make the regex if we don't have it already\n                if (!this._weekdaysParse[i]) {\n                    mom = moment([2000, 1]).day(i);\n                    regex = '^' + this.weekdays(mom, '') + '|^' + this.weekdaysShort(mom, '') + '|^' + this.weekdaysMin(mom, '');\n                    this._weekdaysParse[i] = new RegExp(regex.replace('.', ''), 'i');\n                }\n                // test the regex\n                if (this._weekdaysParse[i].test(weekdayName)) {\n                    return i;\n                }\n            }\n        },\n\n        _longDateFormat : {\n            LTS : 'h:mm:ss A',\n            LT : 'h:mm A',\n            L : 'MM/DD/YYYY',\n            LL : 'MMMM D, YYYY',\n            LLL : 'MMMM D, YYYY LT',\n            LLLL : 'dddd, MMMM D, YYYY LT'\n        },\n        longDateFormat : function (key) {\n            var output = this._longDateFormat[key];\n            if (!output && this._longDateFormat[key.toUpperCase()]) {\n                output = this._longDateFormat[key.toUpperCase()].replace(/MMMM|MM|DD|dddd/g, function (val) {\n                    return val.slice(1);\n                });\n                this._longDateFormat[key] = output;\n            }\n            return output;\n        },\n\n        isPM : function (input) {\n            // IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays\n            // Using charAt should be more compatible.\n            return ((input + '').toLowerCase().charAt(0) === 'p');\n        },\n\n        _meridiemParse : /[ap]\\.?m?\\.?/i,\n        meridiem : function (hours, minutes, isLower) {\n            if (hours > 11) {\n                return isLower ? 'pm' : 'PM';\n            } else {\n                return isLower ? 'am' : 'AM';\n            }\n        },\n\n\n        _calendar : {\n            sameDay : '[Today at] LT',\n            nextDay : '[Tomorrow at] LT',\n            nextWeek : 'dddd [at] LT',\n            lastDay : '[Yesterday at] LT',\n            lastWeek : '[Last] dddd [at] LT',\n            sameElse : 'L'\n        },\n        calendar : function (key, mom, now) {\n            var output = this._calendar[key];\n            return typeof output === 'function' ? output.apply(mom, [now]) : output;\n        },\n\n        _relativeTime : {\n            future : 'in %s',\n            past : '%s ago',\n            s : 'a few seconds',\n            m : 'a minute',\n            mm : '%d minutes',\n            h : 'an hour',\n            hh : '%d hours',\n            d : 'a day',\n            dd : '%d days',\n            M : 'a month',\n            MM : '%d months',\n            y : 'a year',\n            yy : '%d years'\n        },\n\n        relativeTime : function (number, withoutSuffix, string, isFuture) {\n            var output = this._relativeTime[string];\n            return (typeof output === 'function') ?\n                output(number, withoutSuffix, string, isFuture) :\n                output.replace(/%d/i, number);\n        },\n\n        pastFuture : function (diff, output) {\n            var format = this._relativeTime[diff > 0 ? 'future' : 'past'];\n            return typeof format === 'function' ? format(output) : format.replace(/%s/i, output);\n        },\n\n        ordinal : function (number) {\n            return this._ordinal.replace('%d', number);\n        },\n        _ordinal : '%d',\n        _ordinalParse : /\\d{1,2}/,\n\n        preparse : function (string) {\n            return string;\n        },\n\n        postformat : function (string) {\n            return string;\n        },\n\n        week : function (mom) {\n            return weekOfYear(mom, this._week.dow, this._week.doy).week;\n        },\n\n        _week : {\n            dow : 0, // Sunday is the first day of the week.\n            doy : 6  // The week that contains Jan 1st is the first week of the year.\n        },\n\n        firstDayOfWeek : function () {\n            return this._week.dow;\n        },\n\n        firstDayOfYear : function () {\n            return this._week.doy;\n        },\n\n        _invalidDate: 'Invalid date',\n        invalidDate: function () {\n            return this._invalidDate;\n        }\n    });\n\n    /************************************\n        Formatting\n    ************************************/\n\n\n    function removeFormattingTokens(input) {\n        if (input.match(/\\[[\\s\\S]/)) {\n            return input.replace(/^\\[|\\]$/g, '');\n        }\n        return input.replace(/\\\\/g, '');\n    }\n\n    function makeFormatFunction(format) {\n        var array = format.match(formattingTokens), i, length;\n\n        for (i = 0, length = array.length; i < length; i++) {\n            if (formatTokenFunctions[array[i]]) {\n                array[i] = formatTokenFunctions[array[i]];\n            } else {\n                array[i] = removeFormattingTokens(array[i]);\n            }\n        }\n\n        return function (mom) {\n            var output = '';\n            for (i = 0; i < length; i++) {\n                output += array[i] instanceof Function ? array[i].call(mom, format) : array[i];\n            }\n            return output;\n        };\n    }\n\n    // format date using native date object\n    function formatMoment(m, format) {\n        if (!m.isValid()) {\n            return m.localeData().invalidDate();\n        }\n\n        format = expandFormat(format, m.localeData());\n\n        if (!formatFunctions[format]) {\n            formatFunctions[format] = makeFormatFunction(format);\n        }\n\n        return formatFunctions[format](m);\n    }\n\n    function expandFormat(format, locale) {\n        var i = 5;\n\n        function replaceLongDateFormatTokens(input) {\n            return locale.longDateFormat(input) || input;\n        }\n\n        localFormattingTokens.lastIndex = 0;\n        while (i >= 0 && localFormattingTokens.test(format)) {\n            format = format.replace(localFormattingTokens, replaceLongDateFormatTokens);\n            localFormattingTokens.lastIndex = 0;\n            i -= 1;\n        }\n\n        return format;\n    }\n\n\n    /************************************\n        Parsing\n    ************************************/\n\n\n    // get the regex to find the next token\n    function getParseRegexForToken(token, config) {\n        var a, strict = config._strict;\n        switch (token) {\n        case 'Q':\n            return parseTokenOneDigit;\n        case 'DDDD':\n            return parseTokenThreeDigits;\n        case 'YYYY':\n        case 'GGGG':\n        case 'gggg':\n            return strict ? parseTokenFourDigits : parseTokenOneToFourDigits;\n        case 'Y':\n        case 'G':\n        case 'g':\n            return parseTokenSignedNumber;\n        case 'YYYYYY':\n        case 'YYYYY':\n        case 'GGGGG':\n        case 'ggggg':\n            return strict ? parseTokenSixDigits : parseTokenOneToSixDigits;\n        case 'S':\n            if (strict) {\n                return parseTokenOneDigit;\n            }\n            /* falls through */\n        case 'SS':\n            if (strict) {\n                return parseTokenTwoDigits;\n            }\n            /* falls through */\n        case 'SSS':\n            if (strict) {\n                return parseTokenThreeDigits;\n            }\n            /* falls through */\n        case 'DDD':\n            return parseTokenOneToThreeDigits;\n        case 'MMM':\n        case 'MMMM':\n        case 'dd':\n        case 'ddd':\n        case 'dddd':\n            return parseTokenWord;\n        case 'a':\n        case 'A':\n            return config._locale._meridiemParse;\n        case 'x':\n            return parseTokenOffsetMs;\n        case 'X':\n            return parseTokenTimestampMs;\n        case 'Z':\n        case 'ZZ':\n            return parseTokenTimezone;\n        case 'T':\n            return parseTokenT;\n        case 'SSSS':\n            return parseTokenDigits;\n        case 'MM':\n        case 'DD':\n        case 'YY':\n        case 'GG':\n        case 'gg':\n        case 'HH':\n        case 'hh':\n        case 'mm':\n        case 'ss':\n        case 'ww':\n        case 'WW':\n            return strict ? parseTokenTwoDigits : parseTokenOneOrTwoDigits;\n        case 'M':\n        case 'D':\n        case 'd':\n        case 'H':\n        case 'h':\n        case 'm':\n        case 's':\n        case 'w':\n        case 'W':\n        case 'e':\n        case 'E':\n            return parseTokenOneOrTwoDigits;\n        case 'Do':\n            return strict ? config._locale._ordinalParse : config._locale._ordinalParseLenient;\n        default :\n            a = new RegExp(regexpEscape(unescapeFormat(token.replace('\\\\', '')), 'i'));\n            return a;\n        }\n    }\n\n    function utcOffsetFromString(string) {\n        string = string || '';\n        var possibleTzMatches = (string.match(parseTokenTimezone) || []),\n            tzChunk = possibleTzMatches[possibleTzMatches.length - 1] || [],\n            parts = (tzChunk + '').match(parseTimezoneChunker) || ['-', 0, 0],\n            minutes = +(parts[1] * 60) + toInt(parts[2]);\n\n        return parts[0] === '+' ? minutes : -minutes;\n    }\n\n    // function to convert string input to date\n    function addTimeToArrayFromToken(token, input, config) {\n        var a, datePartArray = config._a;\n\n        switch (token) {\n        // QUARTER\n        case 'Q':\n            if (input != null) {\n                datePartArray[MONTH] = (toInt(input) - 1) * 3;\n            }\n            break;\n        // MONTH\n        case 'M' : // fall through to MM\n        case 'MM' :\n            if (input != null) {\n                datePartArray[MONTH] = toInt(input) - 1;\n            }\n            break;\n        case 'MMM' : // fall through to MMMM\n        case 'MMMM' :\n            a = config._locale.monthsParse(input, token, config._strict);\n            // if we didn't find a month name, mark the date as invalid.\n            if (a != null) {\n                datePartArray[MONTH] = a;\n            } else {\n                config._pf.invalidMonth = input;\n            }\n            break;\n        // DAY OF MONTH\n        case 'D' : // fall through to DD\n        case 'DD' :\n            if (input != null) {\n                datePartArray[DATE] = toInt(input);\n            }\n            break;\n        case 'Do' :\n            if (input != null) {\n                datePartArray[DATE] = toInt(parseInt(\n                            input.match(/\\d{1,2}/)[0], 10));\n            }\n            break;\n        // DAY OF YEAR\n        case 'DDD' : // fall through to DDDD\n        case 'DDDD' :\n            if (input != null) {\n                config._dayOfYear = toInt(input);\n            }\n\n            break;\n        // YEAR\n        case 'YY' :\n            datePartArray[YEAR] = moment.parseTwoDigitYear(input);\n            break;\n        case 'YYYY' :\n        case 'YYYYY' :\n        case 'YYYYYY' :\n            datePartArray[YEAR] = toInt(input);\n            break;\n        // AM / PM\n        case 'a' : // fall through to A\n        case 'A' :\n            config._meridiem = input;\n            // config._isPm = config._locale.isPM(input);\n            break;\n        // HOUR\n        case 'h' : // fall through to hh\n        case 'hh' :\n            config._pf.bigHour = true;\n            /* falls through */\n        case 'H' : // fall through to HH\n        case 'HH' :\n            datePartArray[HOUR] = toInt(input);\n            break;\n        // MINUTE\n        case 'm' : // fall through to mm\n        case 'mm' :\n            datePartArray[MINUTE] = toInt(input);\n            break;\n        // SECOND\n        case 's' : // fall through to ss\n        case 'ss' :\n            datePartArray[SECOND] = toInt(input);\n            break;\n        // MILLISECOND\n        case 'S' :\n        case 'SS' :\n        case 'SSS' :\n        case 'SSSS' :\n            datePartArray[MILLISECOND] = toInt(('0.' + input) * 1000);\n            break;\n        // UNIX OFFSET (MILLISECONDS)\n        case 'x':\n            config._d = new Date(toInt(input));\n            break;\n        // UNIX TIMESTAMP WITH MS\n        case 'X':\n            config._d = new Date(parseFloat(input) * 1000);\n            break;\n        // TIMEZONE\n        case 'Z' : // fall through to ZZ\n        case 'ZZ' :\n            config._useUTC = true;\n            config._tzm = utcOffsetFromString(input);\n            break;\n        // WEEKDAY - human\n        case 'dd':\n        case 'ddd':\n        case 'dddd':\n            a = config._locale.weekdaysParse(input);\n            // if we didn't get a weekday name, mark the date as invalid\n            if (a != null) {\n                config._w = config._w || {};\n                config._w['d'] = a;\n            } else {\n                config._pf.invalidWeekday = input;\n            }\n            break;\n        // WEEK, WEEK DAY - numeric\n        case 'w':\n        case 'ww':\n        case 'W':\n        case 'WW':\n        case 'd':\n        case 'e':\n        case 'E':\n            token = token.substr(0, 1);\n            /* falls through */\n        case 'gggg':\n        case 'GGGG':\n        case 'GGGGG':\n            token = token.substr(0, 2);\n            if (input) {\n                config._w = config._w || {};\n                config._w[token] = toInt(input);\n            }\n            break;\n        case 'gg':\n        case 'GG':\n            config._w = config._w || {};\n            config._w[token] = moment.parseTwoDigitYear(input);\n        }\n    }\n\n    function dayOfYearFromWeekInfo(config) {\n        var w, weekYear, week, weekday, dow, doy, temp;\n\n        w = config._w;\n        if (w.GG != null || w.W != null || w.E != null) {\n            dow = 1;\n            doy = 4;\n\n            // TODO: We need to take the current isoWeekYear, but that depends on\n            // how we interpret now (local, utc, fixed offset). So create\n            // a now version of current config (take local/utc/offset flags, and\n            // create now).\n            weekYear = dfl(w.GG, config._a[YEAR], weekOfYear(moment(), 1, 4).year);\n            week = dfl(w.W, 1);\n            weekday = dfl(w.E, 1);\n        } else {\n            dow = config._locale._week.dow;\n            doy = config._locale._week.doy;\n\n            weekYear = dfl(w.gg, config._a[YEAR], weekOfYear(moment(), dow, doy).year);\n            week = dfl(w.w, 1);\n\n            if (w.d != null) {\n                // weekday -- low day numbers are considered next week\n                weekday = w.d;\n                if (weekday < dow) {\n                    ++week;\n                }\n            } else if (w.e != null) {\n                // local weekday -- counting starts from begining of week\n                weekday = w.e + dow;\n            } else {\n                // default to begining of week\n                weekday = dow;\n            }\n        }\n        temp = dayOfYearFromWeeks(weekYear, week, weekday, doy, dow);\n\n        config._a[YEAR] = temp.year;\n        config._dayOfYear = temp.dayOfYear;\n    }\n\n    // convert an array to a date.\n    // the array should mirror the parameters below\n    // note: all values past the year are optional and will default to the lowest possible value.\n    // [year, month, day , hour, minute, second, millisecond]\n    function dateFromConfig(config) {\n        var i, date, input = [], currentDate, yearToUse;\n\n        if (config._d) {\n            return;\n        }\n\n        currentDate = currentDateArray(config);\n\n        //compute day of the year from weeks and weekdays\n        if (config._w && config._a[DATE] == null && config._a[MONTH] == null) {\n            dayOfYearFromWeekInfo(config);\n        }\n\n        //if the day of the year is set, figure out what it is\n        if (config._dayOfYear) {\n            yearToUse = dfl(config._a[YEAR], currentDate[YEAR]);\n\n            if (config._dayOfYear > daysInYear(yearToUse)) {\n                config._pf._overflowDayOfYear = true;\n            }\n\n            date = makeUTCDate(yearToUse, 0, config._dayOfYear);\n            config._a[MONTH] = date.getUTCMonth();\n            config._a[DATE] = date.getUTCDate();\n        }\n\n        // Default to current date.\n        // * if no year, month, day of month are given, default to today\n        // * if day of month is given, default month and year\n        // * if month is given, default only year\n        // * if year is given, don't default anything\n        for (i = 0; i < 3 && config._a[i] == null; ++i) {\n            config._a[i] = input[i] = currentDate[i];\n        }\n\n        // Zero out whatever was not defaulted, including time\n        for (; i < 7; i++) {\n            config._a[i] = input[i] = (config._a[i] == null) ? (i === 2 ? 1 : 0) : config._a[i];\n        }\n\n        // Check for 24:00:00.000\n        if (config._a[HOUR] === 24 &&\n                config._a[MINUTE] === 0 &&\n                config._a[SECOND] === 0 &&\n                config._a[MILLISECOND] === 0) {\n            config._nextDay = true;\n            config._a[HOUR] = 0;\n        }\n\n        config._d = (config._useUTC ? makeUTCDate : makeDate).apply(null, input);\n        // Apply timezone offset from input. The actual utcOffset can be changed\n        // with parseZone.\n        if (config._tzm != null) {\n            config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);\n        }\n\n        if (config._nextDay) {\n            config._a[HOUR] = 24;\n        }\n    }\n\n    function dateFromObject(config) {\n        var normalizedInput;\n\n        if (config._d) {\n            return;\n        }\n\n        normalizedInput = normalizeObjectUnits(config._i);\n        config._a = [\n            normalizedInput.year,\n            normalizedInput.month,\n            normalizedInput.day || normalizedInput.date,\n            normalizedInput.hour,\n            normalizedInput.minute,\n            normalizedInput.second,\n            normalizedInput.millisecond\n        ];\n\n        dateFromConfig(config);\n    }\n\n    function currentDateArray(config) {\n        var now = new Date();\n        if (config._useUTC) {\n            return [\n                now.getUTCFullYear(),\n                now.getUTCMonth(),\n                now.getUTCDate()\n            ];\n        } else {\n            return [now.getFullYear(), now.getMonth(), now.getDate()];\n        }\n    }\n\n    // date from string and format string\n    function makeDateFromStringAndFormat(config) {\n        if (config._f === moment.ISO_8601) {\n            parseISO(config);\n            return;\n        }\n\n        config._a = [];\n        config._pf.empty = true;\n\n        // This array is used to make a Date, either with `new Date` or `Date.UTC`\n        var string = '' + config._i,\n            i, parsedInput, tokens, token, skipped,\n            stringLength = string.length,\n            totalParsedInputLength = 0;\n\n        tokens = expandFormat(config._f, config._locale).match(formattingTokens) || [];\n\n        for (i = 0; i < tokens.length; i++) {\n            token = tokens[i];\n            parsedInput = (string.match(getParseRegexForToken(token, config)) || [])[0];\n            if (parsedInput) {\n                skipped = string.substr(0, string.indexOf(parsedInput));\n                if (skipped.length > 0) {\n                    config._pf.unusedInput.push(skipped);\n                }\n                string = string.slice(string.indexOf(parsedInput) + parsedInput.length);\n                totalParsedInputLength += parsedInput.length;\n            }\n            // don't parse if it's not a known token\n            if (formatTokenFunctions[token]) {\n                if (parsedInput) {\n                    config._pf.empty = false;\n                }\n                else {\n                    config._pf.unusedTokens.push(token);\n                }\n                addTimeToArrayFromToken(token, parsedInput, config);\n            }\n            else if (config._strict && !parsedInput) {\n                config._pf.unusedTokens.push(token);\n            }\n        }\n\n        // add remaining unparsed input length to the string\n        config._pf.charsLeftOver = stringLength - totalParsedInputLength;\n        if (string.length > 0) {\n            config._pf.unusedInput.push(string);\n        }\n\n        // clear _12h flag if hour is <= 12\n        if (config._pf.bigHour === true && config._a[HOUR] <= 12) {\n            config._pf.bigHour = undefined;\n        }\n        // handle meridiem\n        config._a[HOUR] = meridiemFixWrap(config._locale, config._a[HOUR],\n                config._meridiem);\n        dateFromConfig(config);\n        checkOverflow(config);\n    }\n\n    function unescapeFormat(s) {\n        return s.replace(/\\\\(\\[)|\\\\(\\])|\\[([^\\]\\[]*)\\]|\\\\(.)/g, function (matched, p1, p2, p3, p4) {\n            return p1 || p2 || p3 || p4;\n        });\n    }\n\n    // Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript\n    function regexpEscape(s) {\n        return s.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n    }\n\n    // date from string and array of format strings\n    function makeDateFromStringAndArray(config) {\n        var tempConfig,\n            bestMoment,\n\n            scoreToBeat,\n            i,\n            currentScore;\n\n        if (config._f.length === 0) {\n            config._pf.invalidFormat = true;\n            config._d = new Date(NaN);\n            return;\n        }\n\n        for (i = 0; i < config._f.length; i++) {\n            currentScore = 0;\n            tempConfig = copyConfig({}, config);\n            if (config._useUTC != null) {\n                tempConfig._useUTC = config._useUTC;\n            }\n            tempConfig._pf = defaultParsingFlags();\n            tempConfig._f = config._f[i];\n            makeDateFromStringAndFormat(tempConfig);\n\n            if (!isValid(tempConfig)) {\n                continue;\n            }\n\n            // if there is any input that was not parsed add a penalty for that format\n            currentScore += tempConfig._pf.charsLeftOver;\n\n            //or tokens\n            currentScore += tempConfig._pf.unusedTokens.length * 10;\n\n            tempConfig._pf.score = currentScore;\n\n            if (scoreToBeat == null || currentScore < scoreToBeat) {\n                scoreToBeat = currentScore;\n                bestMoment = tempConfig;\n            }\n        }\n\n        extend(config, bestMoment || tempConfig);\n    }\n\n    // date from iso format\n    function parseISO(config) {\n        var i, l,\n            string = config._i,\n            match = isoRegex.exec(string);\n\n        if (match) {\n            config._pf.iso = true;\n            for (i = 0, l = isoDates.length; i < l; i++) {\n                if (isoDates[i][1].exec(string)) {\n                    // match[5] should be 'T' or undefined\n                    config._f = isoDates[i][0] + (match[6] || ' ');\n                    break;\n                }\n            }\n            for (i = 0, l = isoTimes.length; i < l; i++) {\n                if (isoTimes[i][1].exec(string)) {\n                    config._f += isoTimes[i][0];\n                    break;\n                }\n            }\n            if (string.match(parseTokenTimezone)) {\n                config._f += 'Z';\n            }\n            makeDateFromStringAndFormat(config);\n        } else {\n            config._isValid = false;\n        }\n    }\n\n    // date from iso format or fallback\n    function makeDateFromString(config) {\n        parseISO(config);\n        if (config._isValid === false) {\n            delete config._isValid;\n            moment.createFromInputFallback(config);\n        }\n    }\n\n    function map(arr, fn) {\n        var res = [], i;\n        for (i = 0; i < arr.length; ++i) {\n            res.push(fn(arr[i], i));\n        }\n        return res;\n    }\n\n    function makeDateFromInput(config) {\n        var input = config._i, matched;\n        if (input === undefined) {\n            config._d = new Date();\n        } else if (isDate(input)) {\n            config._d = new Date(+input);\n        } else if ((matched = aspNetJsonRegex.exec(input)) !== null) {\n            config._d = new Date(+matched[1]);\n        } else if (typeof input === 'string') {\n            makeDateFromString(config);\n        } else if (isArray(input)) {\n            config._a = map(input.slice(0), function (obj) {\n                return parseInt(obj, 10);\n            });\n            dateFromConfig(config);\n        } else if (typeof(input) === 'object') {\n            dateFromObject(config);\n        } else if (typeof(input) === 'number') {\n            // from milliseconds\n            config._d = new Date(input);\n        } else {\n            moment.createFromInputFallback(config);\n        }\n    }\n\n    function makeDate(y, m, d, h, M, s, ms) {\n        //can't just apply() to create a date:\n        //http://stackoverflow.com/questions/181348/instantiating-a-javascript-object-by-calling-prototype-constructor-apply\n        var date = new Date(y, m, d, h, M, s, ms);\n\n        //the date constructor doesn't accept years < 1970\n        if (y < 1970) {\n            date.setFullYear(y);\n        }\n        return date;\n    }\n\n    function makeUTCDate(y) {\n        var date = new Date(Date.UTC.apply(null, arguments));\n        if (y < 1970) {\n            date.setUTCFullYear(y);\n        }\n        return date;\n    }\n\n    function parseWeekday(input, locale) {\n        if (typeof input === 'string') {\n            if (!isNaN(input)) {\n                input = parseInt(input, 10);\n            }\n            else {\n                input = locale.weekdaysParse(input);\n                if (typeof input !== 'number') {\n                    return null;\n                }\n            }\n        }\n        return input;\n    }\n\n    /************************************\n        Relative Time\n    ************************************/\n\n\n    // helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize\n    function substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) {\n        return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture);\n    }\n\n    function relativeTime(posNegDuration, withoutSuffix, locale) {\n        var duration = moment.duration(posNegDuration).abs(),\n            seconds = round(duration.as('s')),\n            minutes = round(duration.as('m')),\n            hours = round(duration.as('h')),\n            days = round(duration.as('d')),\n            months = round(duration.as('M')),\n            years = round(duration.as('y')),\n\n            args = seconds < relativeTimeThresholds.s && ['s', seconds] ||\n                minutes === 1 && ['m'] ||\n                minutes < relativeTimeThresholds.m && ['mm', minutes] ||\n                hours === 1 && ['h'] ||\n                hours < relativeTimeThresholds.h && ['hh', hours] ||\n                days === 1 && ['d'] ||\n                days < relativeTimeThresholds.d && ['dd', days] ||\n                months === 1 && ['M'] ||\n                months < relativeTimeThresholds.M && ['MM', months] ||\n                years === 1 && ['y'] || ['yy', years];\n\n        args[2] = withoutSuffix;\n        args[3] = +posNegDuration > 0;\n        args[4] = locale;\n        return substituteTimeAgo.apply({}, args);\n    }\n\n\n    /************************************\n        Week of Year\n    ************************************/\n\n\n    // firstDayOfWeek       0 = sun, 6 = sat\n    //                      the day of the week that starts the week\n    //                      (usually sunday or monday)\n    // firstDayOfWeekOfYear 0 = sun, 6 = sat\n    //                      the first week is the week that contains the first\n    //                      of this day of the week\n    //                      (eg. ISO weeks use thursday (4))\n    function weekOfYear(mom, firstDayOfWeek, firstDayOfWeekOfYear) {\n        var end = firstDayOfWeekOfYear - firstDayOfWeek,\n            daysToDayOfWeek = firstDayOfWeekOfYear - mom.day(),\n            adjustedMoment;\n\n\n        if (daysToDayOfWeek > end) {\n            daysToDayOfWeek -= 7;\n        }\n\n        if (daysToDayOfWeek < end - 7) {\n            daysToDayOfWeek += 7;\n        }\n\n        adjustedMoment = moment(mom).add(daysToDayOfWeek, 'd');\n        return {\n            week: Math.ceil(adjustedMoment.dayOfYear() / 7),\n            year: adjustedMoment.year()\n        };\n    }\n\n    //http://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday\n    function dayOfYearFromWeeks(year, week, weekday, firstDayOfWeekOfYear, firstDayOfWeek) {\n        var d = makeUTCDate(year, 0, 1).getUTCDay(), daysToAdd, dayOfYear;\n\n        d = d === 0 ? 7 : d;\n        weekday = weekday != null ? weekday : firstDayOfWeek;\n        daysToAdd = firstDayOfWeek - d + (d > firstDayOfWeekOfYear ? 7 : 0) - (d < firstDayOfWeek ? 7 : 0);\n        dayOfYear = 7 * (week - 1) + (weekday - firstDayOfWeek) + daysToAdd + 1;\n\n        return {\n            year: dayOfYear > 0 ? year : year - 1,\n            dayOfYear: dayOfYear > 0 ?  dayOfYear : daysInYear(year - 1) + dayOfYear\n        };\n    }\n\n    /************************************\n        Top Level Functions\n    ************************************/\n\n    function makeMoment(config) {\n        var input = config._i,\n            format = config._f,\n            res;\n\n        config._locale = config._locale || moment.localeData(config._l);\n\n        if (input === null || (format === undefined && input === '')) {\n            return moment.invalid({nullInput: true});\n        }\n\n        if (typeof input === 'string') {\n            config._i = input = config._locale.preparse(input);\n        }\n\n        if (moment.isMoment(input)) {\n            return new Moment(input, true);\n        } else if (format) {\n            if (isArray(format)) {\n                makeDateFromStringAndArray(config);\n            } else {\n                makeDateFromStringAndFormat(config);\n            }\n        } else {\n            makeDateFromInput(config);\n        }\n\n        res = new Moment(config);\n        if (res._nextDay) {\n            // Adding is smart enough around DST\n            res.add(1, 'd');\n            res._nextDay = undefined;\n        }\n\n        return res;\n    }\n\n    moment = function (input, format, locale, strict) {\n        var c;\n\n        if (typeof(locale) === 'boolean') {\n            strict = locale;\n            locale = undefined;\n        }\n        // object construction must be done this way.\n        // https://github.com/moment/moment/issues/1423\n        c = {};\n        c._isAMomentObject = true;\n        c._i = input;\n        c._f = format;\n        c._l = locale;\n        c._strict = strict;\n        c._isUTC = false;\n        c._pf = defaultParsingFlags();\n\n        return makeMoment(c);\n    };\n\n    moment.suppressDeprecationWarnings = false;\n\n    moment.createFromInputFallback = deprecate(\n        'moment construction falls back to js Date. This is ' +\n        'discouraged and will be removed in upcoming major ' +\n        'release. Please refer to ' +\n        'https://github.com/moment/moment/issues/1407 for more info.',\n        function (config) {\n            config._d = new Date(config._i + (config._useUTC ? ' UTC' : ''));\n        }\n    );\n\n    // Pick a moment m from moments so that m[fn](other) is true for all\n    // other. This relies on the function fn to be transitive.\n    //\n    // moments should either be an array of moment objects or an array, whose\n    // first element is an array of moment objects.\n    function pickBy(fn, moments) {\n        var res, i;\n        if (moments.length === 1 && isArray(moments[0])) {\n            moments = moments[0];\n        }\n        if (!moments.length) {\n            return moment();\n        }\n        res = moments[0];\n        for (i = 1; i < moments.length; ++i) {\n            if (moments[i][fn](res)) {\n                res = moments[i];\n            }\n        }\n        return res;\n    }\n\n    moment.min = function () {\n        var args = [].slice.call(arguments, 0);\n\n        return pickBy('isBefore', args);\n    };\n\n    moment.max = function () {\n        var args = [].slice.call(arguments, 0);\n\n        return pickBy('isAfter', args);\n    };\n\n    // creating with utc\n    moment.utc = function (input, format, locale, strict) {\n        var c;\n\n        if (typeof(locale) === 'boolean') {\n            strict = locale;\n            locale = undefined;\n        }\n        // object construction must be done this way.\n        // https://github.com/moment/moment/issues/1423\n        c = {};\n        c._isAMomentObject = true;\n        c._useUTC = true;\n        c._isUTC = true;\n        c._l = locale;\n        c._i = input;\n        c._f = format;\n        c._strict = strict;\n        c._pf = defaultParsingFlags();\n\n        return makeMoment(c).utc();\n    };\n\n    // creating with unix timestamp (in seconds)\n    moment.unix = function (input) {\n        return moment(input * 1000);\n    };\n\n    // duration\n    moment.duration = function (input, key) {\n        var duration = input,\n            // matching against regexp is expensive, do it on demand\n            match = null,\n            sign,\n            ret,\n            parseIso,\n            diffRes;\n\n        if (moment.isDuration(input)) {\n            duration = {\n                ms: input._milliseconds,\n                d: input._days,\n                M: input._months\n            };\n        } else if (typeof input === 'number') {\n            duration = {};\n            if (key) {\n                duration[key] = input;\n            } else {\n                duration.milliseconds = input;\n            }\n        } else if (!!(match = aspNetTimeSpanJsonRegex.exec(input))) {\n            sign = (match[1] === '-') ? -1 : 1;\n            duration = {\n                y: 0,\n                d: toInt(match[DATE]) * sign,\n                h: toInt(match[HOUR]) * sign,\n                m: toInt(match[MINUTE]) * sign,\n                s: toInt(match[SECOND]) * sign,\n                ms: toInt(match[MILLISECOND]) * sign\n            };\n        } else if (!!(match = isoDurationRegex.exec(input))) {\n            sign = (match[1] === '-') ? -1 : 1;\n            parseIso = function (inp) {\n                // We'd normally use ~~inp for this, but unfortunately it also\n                // converts floats to ints.\n                // inp may be undefined, so careful calling replace on it.\n                var res = inp && parseFloat(inp.replace(',', '.'));\n                // apply sign while we're at it\n                return (isNaN(res) ? 0 : res) * sign;\n            };\n            duration = {\n                y: parseIso(match[2]),\n                M: parseIso(match[3]),\n                d: parseIso(match[4]),\n                h: parseIso(match[5]),\n                m: parseIso(match[6]),\n                s: parseIso(match[7]),\n                w: parseIso(match[8])\n            };\n        } else if (duration == null) {// checks for null or undefined\n            duration = {};\n        } else if (typeof duration === 'object' &&\n                ('from' in duration || 'to' in duration)) {\n            diffRes = momentsDifference(moment(duration.from), moment(duration.to));\n\n            duration = {};\n            duration.ms = diffRes.milliseconds;\n            duration.M = diffRes.months;\n        }\n\n        ret = new Duration(duration);\n\n        if (moment.isDuration(input) && hasOwnProp(input, '_locale')) {\n            ret._locale = input._locale;\n        }\n\n        return ret;\n    };\n\n    // version number\n    moment.version = VERSION;\n\n    // default format\n    moment.defaultFormat = isoFormat;\n\n    // constant that refers to the ISO standard\n    moment.ISO_8601 = function () {};\n\n    // Plugins that add properties should also add the key here (null value),\n    // so we can properly clone ourselves.\n    moment.momentProperties = momentProperties;\n\n    // This function will be called whenever a moment is mutated.\n    // It is intended to keep the offset in sync with the timezone.\n    moment.updateOffset = function () {};\n\n    // This function allows you to set a threshold for relative time strings\n    moment.relativeTimeThreshold = function (threshold, limit) {\n        if (relativeTimeThresholds[threshold] === undefined) {\n            return false;\n        }\n        if (limit === undefined) {\n            return relativeTimeThresholds[threshold];\n        }\n        relativeTimeThresholds[threshold] = limit;\n        return true;\n    };\n\n    moment.lang = deprecate(\n        'moment.lang is deprecated. Use moment.locale instead.',\n        function (key, value) {\n            return moment.locale(key, value);\n        }\n    );\n\n    // This function will load locale and then set the global locale.  If\n    // no arguments are passed in, it will simply return the current global\n    // locale key.\n    moment.locale = function (key, values) {\n        var data;\n        if (key) {\n            if (typeof(values) !== 'undefined') {\n                data = moment.defineLocale(key, values);\n            }\n            else {\n                data = moment.localeData(key);\n            }\n\n            if (data) {\n                moment.duration._locale = moment._locale = data;\n            }\n        }\n\n        return moment._locale._abbr;\n    };\n\n    moment.defineLocale = function (name, values) {\n        if (values !== null) {\n            values.abbr = name;\n            if (!locales[name]) {\n                locales[name] = new Locale();\n            }\n            locales[name].set(values);\n\n            // backwards compat for now: also set the locale\n            moment.locale(name);\n\n            return locales[name];\n        } else {\n            // useful for testing\n            delete locales[name];\n            return null;\n        }\n    };\n\n    moment.langData = deprecate(\n        'moment.langData is deprecated. Use moment.localeData instead.',\n        function (key) {\n            return moment.localeData(key);\n        }\n    );\n\n    // returns locale data\n    moment.localeData = function (key) {\n        var locale;\n\n        if (key && key._locale && key._locale._abbr) {\n            key = key._locale._abbr;\n        }\n\n        if (!key) {\n            return moment._locale;\n        }\n\n        if (!isArray(key)) {\n            //short-circuit everything else\n            locale = loadLocale(key);\n            if (locale) {\n                return locale;\n            }\n            key = [key];\n        }\n\n        return chooseLocale(key);\n    };\n\n    // compare moment object\n    moment.isMoment = function (obj) {\n        return obj instanceof Moment ||\n            (obj != null && hasOwnProp(obj, '_isAMomentObject'));\n    };\n\n    // for typechecking Duration objects\n    moment.isDuration = function (obj) {\n        return obj instanceof Duration;\n    };\n\n    for (i = lists.length - 1; i >= 0; --i) {\n        makeList(lists[i]);\n    }\n\n    moment.normalizeUnits = function (units) {\n        return normalizeUnits(units);\n    };\n\n    moment.invalid = function (flags) {\n        var m = moment.utc(NaN);\n        if (flags != null) {\n            extend(m._pf, flags);\n        }\n        else {\n            m._pf.userInvalidated = true;\n        }\n\n        return m;\n    };\n\n    moment.parseZone = function () {\n        return moment.apply(null, arguments).parseZone();\n    };\n\n    moment.parseTwoDigitYear = function (input) {\n        return toInt(input) + (toInt(input) > 68 ? 1900 : 2000);\n    };\n\n    moment.isDate = isDate;\n\n    /************************************\n        Moment Prototype\n    ************************************/\n\n\n    extend(moment.fn = Moment.prototype, {\n\n        clone : function () {\n            return moment(this);\n        },\n\n        valueOf : function () {\n            return +this._d - ((this._offset || 0) * 60000);\n        },\n\n        unix : function () {\n            return Math.floor(+this / 1000);\n        },\n\n        toString : function () {\n            return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ');\n        },\n\n        toDate : function () {\n            return this._offset ? new Date(+this) : this._d;\n        },\n\n        toISOString : function () {\n            var m = moment(this).utc();\n            if (0 < m.year() && m.year() <= 9999) {\n                if ('function' === typeof Date.prototype.toISOString) {\n                    // native implementation is ~50x faster, use it when we can\n                    return this.toDate().toISOString();\n                } else {\n                    return formatMoment(m, 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]');\n                }\n            } else {\n                return formatMoment(m, 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]');\n            }\n        },\n\n        toArray : function () {\n            var m = this;\n            return [\n                m.year(),\n                m.month(),\n                m.date(),\n                m.hours(),\n                m.minutes(),\n                m.seconds(),\n                m.milliseconds()\n            ];\n        },\n\n        isValid : function () {\n            return isValid(this);\n        },\n\n        isDSTShifted : function () {\n            if (this._a) {\n                return this.isValid() && compareArrays(this._a, (this._isUTC ? moment.utc(this._a) : moment(this._a)).toArray()) > 0;\n            }\n\n            return false;\n        },\n\n        parsingFlags : function () {\n            return extend({}, this._pf);\n        },\n\n        invalidAt: function () {\n            return this._pf.overflow;\n        },\n\n        utc : function (keepLocalTime) {\n            return this.utcOffset(0, keepLocalTime);\n        },\n\n        local : function (keepLocalTime) {\n            if (this._isUTC) {\n                this.utcOffset(0, keepLocalTime);\n                this._isUTC = false;\n\n                if (keepLocalTime) {\n                    this.subtract(this._dateUtcOffset(), 'm');\n                }\n            }\n            return this;\n        },\n\n        format : function (inputString) {\n            var output = formatMoment(this, inputString || moment.defaultFormat);\n            return this.localeData().postformat(output);\n        },\n\n        add : createAdder(1, 'add'),\n\n        subtract : createAdder(-1, 'subtract'),\n\n        diff : function (input, units, asFloat) {\n            var that = makeAs(input, this),\n                zoneDiff = (that.utcOffset() - this.utcOffset()) * 6e4,\n                anchor, diff, output, daysAdjust;\n\n            units = normalizeUnits(units);\n\n            if (units === 'year' || units === 'month' || units === 'quarter') {\n                output = monthDiff(this, that);\n                if (units === 'quarter') {\n                    output = output / 3;\n                } else if (units === 'year') {\n                    output = output / 12;\n                }\n            } else {\n                diff = this - that;\n                output = units === 'second' ? diff / 1e3 : // 1000\n                    units === 'minute' ? diff / 6e4 : // 1000 * 60\n                    units === 'hour' ? diff / 36e5 : // 1000 * 60 * 60\n                    units === 'day' ? (diff - zoneDiff) / 864e5 : // 1000 * 60 * 60 * 24, negate dst\n                    units === 'week' ? (diff - zoneDiff) / 6048e5 : // 1000 * 60 * 60 * 24 * 7, negate dst\n                    diff;\n            }\n            return asFloat ? output : absRound(output);\n        },\n\n        from : function (time, withoutSuffix) {\n            return moment.duration({to: this, from: time}).locale(this.locale()).humanize(!withoutSuffix);\n        },\n\n        fromNow : function (withoutSuffix) {\n            return this.from(moment(), withoutSuffix);\n        },\n\n        calendar : function (time) {\n            // We want to compare the start of today, vs this.\n            // Getting start-of-today depends on whether we're locat/utc/offset\n            // or not.\n            var now = time || moment(),\n                sod = makeAs(now, this).startOf('day'),\n                diff = this.diff(sod, 'days', true),\n                format = diff < -6 ? 'sameElse' :\n                    diff < -1 ? 'lastWeek' :\n                    diff < 0 ? 'lastDay' :\n                    diff < 1 ? 'sameDay' :\n                    diff < 2 ? 'nextDay' :\n                    diff < 7 ? 'nextWeek' : 'sameElse';\n            return this.format(this.localeData().calendar(format, this, moment(now)));\n        },\n\n        isLeapYear : function () {\n            return isLeapYear(this.year());\n        },\n\n        isDST : function () {\n            return (this.utcOffset() > this.clone().month(0).utcOffset() ||\n                this.utcOffset() > this.clone().month(5).utcOffset());\n        },\n\n        day : function (input) {\n            var day = this._isUTC ? this._d.getUTCDay() : this._d.getDay();\n            if (input != null) {\n                input = parseWeekday(input, this.localeData());\n                return this.add(input - day, 'd');\n            } else {\n                return day;\n            }\n        },\n\n        month : makeAccessor('Month', true),\n\n        startOf : function (units) {\n            units = normalizeUnits(units);\n            // the following switch intentionally omits break keywords\n            // to utilize falling through the cases.\n            switch (units) {\n            case 'year':\n                this.month(0);\n                /* falls through */\n            case 'quarter':\n            case 'month':\n                this.date(1);\n                /* falls through */\n            case 'week':\n            case 'isoWeek':\n            case 'day':\n                this.hours(0);\n                /* falls through */\n            case 'hour':\n                this.minutes(0);\n                /* falls through */\n            case 'minute':\n                this.seconds(0);\n                /* falls through */\n            case 'second':\n                this.milliseconds(0);\n                /* falls through */\n            }\n\n            // weeks are a special case\n            if (units === 'week') {\n                this.weekday(0);\n            } else if (units === 'isoWeek') {\n                this.isoWeekday(1);\n            }\n\n            // quarters are also special\n            if (units === 'quarter') {\n                this.month(Math.floor(this.month() / 3) * 3);\n            }\n\n            return this;\n        },\n\n        endOf: function (units) {\n            units = normalizeUnits(units);\n            if (units === undefined || units === 'millisecond') {\n                return this;\n            }\n            return this.startOf(units).add(1, (units === 'isoWeek' ? 'week' : units)).subtract(1, 'ms');\n        },\n\n        isAfter: function (input, units) {\n            var inputMs;\n            units = normalizeUnits(typeof units !== 'undefined' ? units : 'millisecond');\n            if (units === 'millisecond') {\n                input = moment.isMoment(input) ? input : moment(input);\n                return +this > +input;\n            } else {\n                inputMs = moment.isMoment(input) ? +input : +moment(input);\n                return inputMs < +this.clone().startOf(units);\n            }\n        },\n\n        isBefore: function (input, units) {\n            var inputMs;\n            units = normalizeUnits(typeof units !== 'undefined' ? units : 'millisecond');\n            if (units === 'millisecond') {\n                input = moment.isMoment(input) ? input : moment(input);\n                return +this < +input;\n            } else {\n                inputMs = moment.isMoment(input) ? +input : +moment(input);\n                return +this.clone().endOf(units) < inputMs;\n            }\n        },\n\n        isBetween: function (from, to, units) {\n            return this.isAfter(from, units) && this.isBefore(to, units);\n        },\n\n        isSame: function (input, units) {\n            var inputMs;\n            units = normalizeUnits(units || 'millisecond');\n            if (units === 'millisecond') {\n                input = moment.isMoment(input) ? input : moment(input);\n                return +this === +input;\n            } else {\n                inputMs = +moment(input);\n                return +(this.clone().startOf(units)) <= inputMs && inputMs <= +(this.clone().endOf(units));\n            }\n        },\n\n        min: deprecate(\n                 'moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548',\n                 function (other) {\n                     other = moment.apply(null, arguments);\n                     return other < this ? this : other;\n                 }\n         ),\n\n        max: deprecate(\n                'moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548',\n                function (other) {\n                    other = moment.apply(null, arguments);\n                    return other > this ? this : other;\n                }\n        ),\n\n        zone : deprecate(\n                'moment().zone is deprecated, use moment().utcOffset instead. ' +\n                'https://github.com/moment/moment/issues/1779',\n                function (input, keepLocalTime) {\n                    if (input != null) {\n                        if (typeof input !== 'string') {\n                            input = -input;\n                        }\n\n                        this.utcOffset(input, keepLocalTime);\n\n                        return this;\n                    } else {\n                        return -this.utcOffset();\n                    }\n                }\n        ),\n\n        // keepLocalTime = true means only change the timezone, without\n        // affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]-->\n        // 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset\n        // +0200, so we adjust the time as needed, to be valid.\n        //\n        // Keeping the time actually adds/subtracts (one hour)\n        // from the actual represented time. That is why we call updateOffset\n        // a second time. In case it wants us to change the offset again\n        // _changeInProgress == true case, then we have to adjust, because\n        // there is no such time in the given timezone.\n        utcOffset : function (input, keepLocalTime) {\n            var offset = this._offset || 0,\n                localAdjust;\n            if (input != null) {\n                if (typeof input === 'string') {\n                    input = utcOffsetFromString(input);\n                }\n                if (Math.abs(input) < 16) {\n                    input = input * 60;\n                }\n                if (!this._isUTC && keepLocalTime) {\n                    localAdjust = this._dateUtcOffset();\n                }\n                this._offset = input;\n                this._isUTC = true;\n                if (localAdjust != null) {\n                    this.add(localAdjust, 'm');\n                }\n                if (offset !== input) {\n                    if (!keepLocalTime || this._changeInProgress) {\n                        addOrSubtractDurationFromMoment(this,\n                                moment.duration(input - offset, 'm'), 1, false);\n                    } else if (!this._changeInProgress) {\n                        this._changeInProgress = true;\n                        moment.updateOffset(this, true);\n                        this._changeInProgress = null;\n                    }\n                }\n\n                return this;\n            } else {\n                return this._isUTC ? offset : this._dateUtcOffset();\n            }\n        },\n\n        isLocal : function () {\n            return !this._isUTC;\n        },\n\n        isUtcOffset : function () {\n            return this._isUTC;\n        },\n\n        isUtc : function () {\n            return this._isUTC && this._offset === 0;\n        },\n\n        zoneAbbr : function () {\n            return this._isUTC ? 'UTC' : '';\n        },\n\n        zoneName : function () {\n            return this._isUTC ? 'Coordinated Universal Time' : '';\n        },\n\n        parseZone : function () {\n            if (this._tzm) {\n                this.utcOffset(this._tzm);\n            } else if (typeof this._i === 'string') {\n                this.utcOffset(utcOffsetFromString(this._i));\n            }\n            return this;\n        },\n\n        hasAlignedHourOffset : function (input) {\n            if (!input) {\n                input = 0;\n            }\n            else {\n                input = moment(input).utcOffset();\n            }\n\n            return (this.utcOffset() - input) % 60 === 0;\n        },\n\n        daysInMonth : function () {\n            return daysInMonth(this.year(), this.month());\n        },\n\n        dayOfYear : function (input) {\n            var dayOfYear = round((moment(this).startOf('day') - moment(this).startOf('year')) / 864e5) + 1;\n            return input == null ? dayOfYear : this.add((input - dayOfYear), 'd');\n        },\n\n        quarter : function (input) {\n            return input == null ? Math.ceil((this.month() + 1) / 3) : this.month((input - 1) * 3 + this.month() % 3);\n        },\n\n        weekYear : function (input) {\n            var year = weekOfYear(this, this.localeData()._week.dow, this.localeData()._week.doy).year;\n            return input == null ? year : this.add((input - year), 'y');\n        },\n\n        isoWeekYear : function (input) {\n            var year = weekOfYear(this, 1, 4).year;\n            return input == null ? year : this.add((input - year), 'y');\n        },\n\n        week : function (input) {\n            var week = this.localeData().week(this);\n            return input == null ? week : this.add((input - week) * 7, 'd');\n        },\n\n        isoWeek : function (input) {\n            var week = weekOfYear(this, 1, 4).week;\n            return input == null ? week : this.add((input - week) * 7, 'd');\n        },\n\n        weekday : function (input) {\n            var weekday = (this.day() + 7 - this.localeData()._week.dow) % 7;\n            return input == null ? weekday : this.add(input - weekday, 'd');\n        },\n\n        isoWeekday : function (input) {\n            // behaves the same as moment#day except\n            // as a getter, returns 7 instead of 0 (1-7 range instead of 0-6)\n            // as a setter, sunday should belong to the previous week.\n            return input == null ? this.day() || 7 : this.day(this.day() % 7 ? input : input - 7);\n        },\n\n        isoWeeksInYear : function () {\n            return weeksInYear(this.year(), 1, 4);\n        },\n\n        weeksInYear : function () {\n            var weekInfo = this.localeData()._week;\n            return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy);\n        },\n\n        get : function (units) {\n            units = normalizeUnits(units);\n            return this[units]();\n        },\n\n        set : function (units, value) {\n            var unit;\n            if (typeof units === 'object') {\n                for (unit in units) {\n                    this.set(unit, units[unit]);\n                }\n            }\n            else {\n                units = normalizeUnits(units);\n                if (typeof this[units] === 'function') {\n                    this[units](value);\n                }\n            }\n            return this;\n        },\n\n        // If passed a locale key, it will set the locale for this\n        // instance.  Otherwise, it will return the locale configuration\n        // variables for this instance.\n        locale : function (key) {\n            var newLocaleData;\n\n            if (key === undefined) {\n                return this._locale._abbr;\n            } else {\n                newLocaleData = moment.localeData(key);\n                if (newLocaleData != null) {\n                    this._locale = newLocaleData;\n                }\n                return this;\n            }\n        },\n\n        lang : deprecate(\n            'moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.',\n            function (key) {\n                if (key === undefined) {\n                    return this.localeData();\n                } else {\n                    return this.locale(key);\n                }\n            }\n        ),\n\n        localeData : function () {\n            return this._locale;\n        },\n\n        _dateUtcOffset : function () {\n            // On Firefox.24 Date#getTimezoneOffset returns a floating point.\n            // https://github.com/moment/moment/pull/1871\n            return -Math.round(this._d.getTimezoneOffset() / 15) * 15;\n        }\n\n    });\n\n    function rawMonthSetter(mom, value) {\n        var dayOfMonth;\n\n        // TODO: Move this out of here!\n        if (typeof value === 'string') {\n            value = mom.localeData().monthsParse(value);\n            // TODO: Another silent failure?\n            if (typeof value !== 'number') {\n                return mom;\n            }\n        }\n\n        dayOfMonth = Math.min(mom.date(),\n                daysInMonth(mom.year(), value));\n        mom._d['set' + (mom._isUTC ? 'UTC' : '') + 'Month'](value, dayOfMonth);\n        return mom;\n    }\n\n    function rawGetter(mom, unit) {\n        return mom._d['get' + (mom._isUTC ? 'UTC' : '') + unit]();\n    }\n\n    function rawSetter(mom, unit, value) {\n        if (unit === 'Month') {\n            return rawMonthSetter(mom, value);\n        } else {\n            return mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value);\n        }\n    }\n\n    function makeAccessor(unit, keepTime) {\n        return function (value) {\n            if (value != null) {\n                rawSetter(this, unit, value);\n                moment.updateOffset(this, keepTime);\n                return this;\n            } else {\n                return rawGetter(this, unit);\n            }\n        };\n    }\n\n    moment.fn.millisecond = moment.fn.milliseconds = makeAccessor('Milliseconds', false);\n    moment.fn.second = moment.fn.seconds = makeAccessor('Seconds', false);\n    moment.fn.minute = moment.fn.minutes = makeAccessor('Minutes', false);\n    // Setting the hour should keep the time, because the user explicitly\n    // specified which hour he wants. So trying to maintain the same hour (in\n    // a new timezone) makes sense. Adding/subtracting hours does not follow\n    // this rule.\n    moment.fn.hour = moment.fn.hours = makeAccessor('Hours', true);\n    // moment.fn.month is defined separately\n    moment.fn.date = makeAccessor('Date', true);\n    moment.fn.dates = deprecate('dates accessor is deprecated. Use date instead.', makeAccessor('Date', true));\n    moment.fn.year = makeAccessor('FullYear', true);\n    moment.fn.years = deprecate('years accessor is deprecated. Use year instead.', makeAccessor('FullYear', true));\n\n    // add plural methods\n    moment.fn.days = moment.fn.day;\n    moment.fn.months = moment.fn.month;\n    moment.fn.weeks = moment.fn.week;\n    moment.fn.isoWeeks = moment.fn.isoWeek;\n    moment.fn.quarters = moment.fn.quarter;\n\n    // add aliased format methods\n    moment.fn.toJSON = moment.fn.toISOString;\n\n    // alias isUtc for dev-friendliness\n    moment.fn.isUTC = moment.fn.isUtc;\n\n    /************************************\n        Duration Prototype\n    ************************************/\n\n\n    function daysToYears (days) {\n        // 400 years have 146097 days (taking into account leap year rules)\n        return days * 400 / 146097;\n    }\n\n    function yearsToDays (years) {\n        // years * 365 + absRound(years / 4) -\n        //     absRound(years / 100) + absRound(years / 400);\n        return years * 146097 / 400;\n    }\n\n    extend(moment.duration.fn = Duration.prototype, {\n\n        _bubble : function () {\n            var milliseconds = this._milliseconds,\n                days = this._days,\n                months = this._months,\n                data = this._data,\n                seconds, minutes, hours, years = 0;\n\n            // The following code bubbles up values, see the tests for\n            // examples of what that means.\n            data.milliseconds = milliseconds % 1000;\n\n            seconds = absRound(milliseconds / 1000);\n            data.seconds = seconds % 60;\n\n            minutes = absRound(seconds / 60);\n            data.minutes = minutes % 60;\n\n            hours = absRound(minutes / 60);\n            data.hours = hours % 24;\n\n            days += absRound(hours / 24);\n\n            // Accurately convert days to years, assume start from year 0.\n            years = absRound(daysToYears(days));\n            days -= absRound(yearsToDays(years));\n\n            // 30 days to a month\n            // TODO (iskren): Use anchor date (like 1st Jan) to compute this.\n            months += absRound(days / 30);\n            days %= 30;\n\n            // 12 months -> 1 year\n            years += absRound(months / 12);\n            months %= 12;\n\n            data.days = days;\n            data.months = months;\n            data.years = years;\n        },\n\n        abs : function () {\n            this._milliseconds = Math.abs(this._milliseconds);\n            this._days = Math.abs(this._days);\n            this._months = Math.abs(this._months);\n\n            this._data.milliseconds = Math.abs(this._data.milliseconds);\n            this._data.seconds = Math.abs(this._data.seconds);\n            this._data.minutes = Math.abs(this._data.minutes);\n            this._data.hours = Math.abs(this._data.hours);\n            this._data.months = Math.abs(this._data.months);\n            this._data.years = Math.abs(this._data.years);\n\n            return this;\n        },\n\n        weeks : function () {\n            return absRound(this.days() / 7);\n        },\n\n        valueOf : function () {\n            return this._milliseconds +\n              this._days * 864e5 +\n              (this._months % 12) * 2592e6 +\n              toInt(this._months / 12) * 31536e6;\n        },\n\n        humanize : function (withSuffix) {\n            var output = relativeTime(this, !withSuffix, this.localeData());\n\n            if (withSuffix) {\n                output = this.localeData().pastFuture(+this, output);\n            }\n\n            return this.localeData().postformat(output);\n        },\n\n        add : function (input, val) {\n            // supports only 2.0-style add(1, 's') or add(moment)\n            var dur = moment.duration(input, val);\n\n            this._milliseconds += dur._milliseconds;\n            this._days += dur._days;\n            this._months += dur._months;\n\n            this._bubble();\n\n            return this;\n        },\n\n        subtract : function (input, val) {\n            var dur = moment.duration(input, val);\n\n            this._milliseconds -= dur._milliseconds;\n            this._days -= dur._days;\n            this._months -= dur._months;\n\n            this._bubble();\n\n            return this;\n        },\n\n        get : function (units) {\n            units = normalizeUnits(units);\n            return this[units.toLowerCase() + 's']();\n        },\n\n        as : function (units) {\n            var days, months;\n            units = normalizeUnits(units);\n\n            if (units === 'month' || units === 'year') {\n                days = this._days + this._milliseconds / 864e5;\n                months = this._months + daysToYears(days) * 12;\n                return units === 'month' ? months : months / 12;\n            } else {\n                // handle milliseconds separately because of floating point math errors (issue #1867)\n                days = this._days + Math.round(yearsToDays(this._months / 12));\n                switch (units) {\n                    case 'week': return days / 7 + this._milliseconds / 6048e5;\n                    case 'day': return days + this._milliseconds / 864e5;\n                    case 'hour': return days * 24 + this._milliseconds / 36e5;\n                    case 'minute': return days * 24 * 60 + this._milliseconds / 6e4;\n                    case 'second': return days * 24 * 60 * 60 + this._milliseconds / 1000;\n                    // Math.floor prevents floating point math errors here\n                    case 'millisecond': return Math.floor(days * 24 * 60 * 60 * 1000) + this._milliseconds;\n                    default: throw new Error('Unknown unit ' + units);\n                }\n            }\n        },\n\n        lang : moment.fn.lang,\n        locale : moment.fn.locale,\n\n        toIsoString : deprecate(\n            'toIsoString() is deprecated. Please use toISOString() instead ' +\n            '(notice the capitals)',\n            function () {\n                return this.toISOString();\n            }\n        ),\n\n        toISOString : function () {\n            // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js\n            var years = Math.abs(this.years()),\n                months = Math.abs(this.months()),\n                days = Math.abs(this.days()),\n                hours = Math.abs(this.hours()),\n                minutes = Math.abs(this.minutes()),\n                seconds = Math.abs(this.seconds() + this.milliseconds() / 1000);\n\n            if (!this.asSeconds()) {\n                // this is the same as C#'s (Noda) and python (isodate)...\n                // but not other JS (goog.date)\n                return 'P0D';\n            }\n\n            return (this.asSeconds() < 0 ? '-' : '') +\n                'P' +\n                (years ? years + 'Y' : '') +\n                (months ? months + 'M' : '') +\n                (days ? days + 'D' : '') +\n                ((hours || minutes || seconds) ? 'T' : '') +\n                (hours ? hours + 'H' : '') +\n                (minutes ? minutes + 'M' : '') +\n                (seconds ? seconds + 'S' : '');\n        },\n\n        localeData : function () {\n            return this._locale;\n        },\n\n        toJSON : function () {\n            return this.toISOString();\n        }\n    });\n\n    moment.duration.fn.toString = moment.duration.fn.toISOString;\n\n    function makeDurationGetter(name) {\n        moment.duration.fn[name] = function () {\n            return this._data[name];\n        };\n    }\n\n    for (i in unitMillisecondFactors) {\n        if (hasOwnProp(unitMillisecondFactors, i)) {\n            makeDurationGetter(i.toLowerCase());\n        }\n    }\n\n    moment.duration.fn.asMilliseconds = function () {\n        return this.as('ms');\n    };\n    moment.duration.fn.asSeconds = function () {\n        return this.as('s');\n    };\n    moment.duration.fn.asMinutes = function () {\n        return this.as('m');\n    };\n    moment.duration.fn.asHours = function () {\n        return this.as('h');\n    };\n    moment.duration.fn.asDays = function () {\n        return this.as('d');\n    };\n    moment.duration.fn.asWeeks = function () {\n        return this.as('weeks');\n    };\n    moment.duration.fn.asMonths = function () {\n        return this.as('M');\n    };\n    moment.duration.fn.asYears = function () {\n        return this.as('y');\n    };\n\n    /************************************\n        Default Locale\n    ************************************/\n\n\n    // Set default locale, other locale will inherit from English.\n    moment.locale('en', {\n        ordinalParse: /\\d{1,2}(th|st|nd|rd)/,\n        ordinal : function (number) {\n            var b = number % 10,\n                output = (toInt(number % 100 / 10) === 1) ? 'th' :\n                (b === 1) ? 'st' :\n                (b === 2) ? 'nd' :\n                (b === 3) ? 'rd' : 'th';\n            return number + output;\n        }\n    });\n\n    // moment.js locale configuration\n// locale : afrikaans (af)\n// author : Werner Mollentze : https://github.com/wernerm\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('af', {\n        months : 'Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember'.split('_'),\n        monthsShort : 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des'.split('_'),\n        weekdays : 'Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag'.split('_'),\n        weekdaysShort : 'Son_Maa_Din_Woe_Don_Vry_Sat'.split('_'),\n        weekdaysMin : 'So_Ma_Di_Wo_Do_Vr_Sa'.split('_'),\n        meridiemParse: /vm|nm/i,\n        isPM : function (input) {\n            return /^nm$/i.test(input);\n        },\n        meridiem : function (hours, minutes, isLower) {\n            if (hours < 12) {\n                return isLower ? 'vm' : 'VM';\n            } else {\n                return isLower ? 'nm' : 'NM';\n            }\n        },\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd, D MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay : '[Vandag om] LT',\n            nextDay : '[MĂ´re om] LT',\n            nextWeek : 'dddd [om] LT',\n            lastDay : '[Gister om] LT',\n            lastWeek : '[Laas] dddd [om] LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'oor %s',\n            past : '%s gelede',\n            s : '\\'n paar sekondes',\n            m : '\\'n minuut',\n            mm : '%d minute',\n            h : '\\'n uur',\n            hh : '%d ure',\n            d : '\\'n dag',\n            dd : '%d dae',\n            M : '\\'n maand',\n            MM : '%d maande',\n            y : '\\'n jaar',\n            yy : '%d jaar'\n        },\n        ordinalParse: /\\d{1,2}(ste|de)/,\n        ordinal : function (number) {\n            return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de'); // Thanks to Joris RĂśling : https://github.com/jjupiter\n        },\n        week : {\n            dow : 1, // Maandag is die eerste dag van die week.\n            doy : 4  // Die week wat die 4de Januarie bevat is die eerste week van die jaar.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : Moroccan Arabic (ar-ma)\n// author : ElFadili Yassine : https://github.com/ElFadiliY\n// author : Abdel Said : https://github.com/abdelsaid\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('ar-ma', {\n        months : 'ŮŮŘ§ŮŘą_ŮŘ¨ŘąŘ§ŮŘą_ŮŘ§ŘąŘł_ŘŁŘ¨ŘąŮŮ_ŮŘ§Ů_ŮŮŮŮŮ_ŮŮŮŮŮŘ˛_ŘşŘ´ŘŞ_Ř´ŘŞŮŘ¨Řą_ŘŁŮŘŞŮŘ¨Řą_ŮŮŮŘ¨Řą_ŘŻŘŹŮŘ¨Řą'.split('_'),\n        monthsShort : 'ŮŮŘ§ŮŘą_ŮŘ¨ŘąŘ§ŮŘą_ŮŘ§ŘąŘł_ŘŁŘ¨ŘąŮŮ_ŮŘ§Ů_ŮŮŮŮŮ_ŮŮŮŮŮŘ˛_ŘşŘ´ŘŞ_Ř´ŘŞŮŘ¨Řą_ŘŁŮŘŞŮŘ¨Řą_ŮŮŮŘ¨Řą_ŘŻŘŹŮŘ¨Řą'.split('_'),\n        weekdays : 'Ř§ŮŘŁŘ­ŘŻ_Ř§ŮŘĽŘŞŮŮŮ_Ř§ŮŘŤŮŘ§ŘŤŘ§ŘĄ_Ř§ŮŘŁŘąŘ¨ŘšŘ§ŘĄ_Ř§ŮŘŽŮŮŘł_Ř§ŮŘŹŮŘšŘŠ_Ř§ŮŘłŘ¨ŘŞ'.split('_'),\n        weekdaysShort : 'Ř§Ř­ŘŻ_Ř§ŘŞŮŮŮ_ŘŤŮŘ§ŘŤŘ§ŘĄ_Ř§ŘąŘ¨ŘšŘ§ŘĄ_ŘŽŮŮŘł_ŘŹŮŘšŘŠ_ŘłŘ¨ŘŞ'.split('_'),\n        weekdaysMin : 'Ř­_Ů_ŘŤ_Řą_ŘŽ_ŘŹ_Řł'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd D MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay: '[Ř§ŮŮŮŮ ŘšŮŮ Ř§ŮŘłŘ§ŘšŘŠ] LT',\n            nextDay: '[ŘşŘŻŘ§ ŘšŮŮ Ř§ŮŘłŘ§ŘšŘŠ] LT',\n            nextWeek: 'dddd [ŘšŮŮ Ř§ŮŘłŘ§ŘšŘŠ] LT',\n            lastDay: '[ŘŁŮŘł ŘšŮŮ Ř§ŮŘłŘ§ŘšŘŠ] LT',\n            lastWeek: 'dddd [ŘšŮŮ Ř§ŮŘłŘ§ŘšŘŠ] LT',\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : 'ŮŮ %s',\n            past : 'ŮŮŘ° %s',\n            s : 'ŘŤŮŘ§Ů',\n            m : 'ŘŻŮŮŮŘŠ',\n            mm : '%d ŘŻŮŘ§ŘŚŮ',\n            h : 'ŘłŘ§ŘšŘŠ',\n            hh : '%d ŘłŘ§ŘšŘ§ŘŞ',\n            d : 'ŮŮŮ',\n            dd : '%d ŘŁŮŘ§Ů',\n            M : 'Ř´ŮŘą',\n            MM : '%d ŘŁŘ´ŮŘą',\n            y : 'ŘłŮŘŠ',\n            yy : '%d ŘłŮŮŘ§ŘŞ'\n        },\n        week : {\n            dow : 6, // Saturday is the first day of the week.\n            doy : 12  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : Arabic Saudi Arabia (ar-sa)\n// author : Suhail Alkowaileet : https://github.com/xsoh\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var symbolMap = {\n        '1': 'ŮĄ',\n        '2': 'Ů˘',\n        '3': 'ŮŁ',\n        '4': 'Ů¤',\n        '5': 'ŮĽ',\n        '6': 'ŮŚ',\n        '7': 'Ů§',\n        '8': 'Ů¨',\n        '9': 'ŮŠ',\n        '0': 'Ů '\n    }, numberMap = {\n        'ŮĄ': '1',\n        'Ů˘': '2',\n        'ŮŁ': '3',\n        'Ů¤': '4',\n        'ŮĽ': '5',\n        'ŮŚ': '6',\n        'Ů§': '7',\n        'Ů¨': '8',\n        'ŮŠ': '9',\n        'Ů ': '0'\n    };\n\n    return moment.defineLocale('ar-sa', {\n        months : 'ŮŮŘ§ŮŘą_ŮŘ¨ŘąŘ§ŮŘą_ŮŘ§ŘąŘł_ŘŁŘ¨ŘąŮŮ_ŮŘ§ŮŮ_ŮŮŮŮŮ_ŮŮŮŮŮ_ŘŁŘşŘłŘˇŘł_ŘłŘ¨ŘŞŮŘ¨Řą_ŘŁŮŘŞŮŘ¨Řą_ŮŮŮŮŘ¨Řą_ŘŻŮŘłŮŘ¨Řą'.split('_'),\n        monthsShort : 'ŮŮŘ§ŮŘą_ŮŘ¨ŘąŘ§ŮŘą_ŮŘ§ŘąŘł_ŘŁŘ¨ŘąŮŮ_ŮŘ§ŮŮ_ŮŮŮŮŮ_ŮŮŮŮŮ_ŘŁŘşŘłŘˇŘł_ŘłŘ¨ŘŞŮŘ¨Řą_ŘŁŮŘŞŮŘ¨Řą_ŮŮŮŮŘ¨Řą_ŘŻŮŘłŮŘ¨Řą'.split('_'),\n        weekdays : 'Ř§ŮŘŁŘ­ŘŻ_Ř§ŮŘĽŘŤŮŮŮ_Ř§ŮŘŤŮŘ§ŘŤŘ§ŘĄ_Ř§ŮŘŁŘąŘ¨ŘšŘ§ŘĄ_Ř§ŮŘŽŮŮŘł_Ř§ŮŘŹŮŘšŘŠ_Ř§ŮŘłŘ¨ŘŞ'.split('_'),\n        weekdaysShort : 'ŘŁŘ­ŘŻ_ŘĽŘŤŮŮŮ_ŘŤŮŘ§ŘŤŘ§ŘĄ_ŘŁŘąŘ¨ŘšŘ§ŘĄ_ŘŽŮŮŘł_ŘŹŮŘšŘŠ_ŘłŘ¨ŘŞ'.split('_'),\n        weekdaysMin : 'Ř­_Ů_ŘŤ_Řą_ŘŽ_ŘŹ_Řł'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'HH:mm:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd D MMMM YYYY LT'\n        },\n        meridiemParse: /Řľ|Ů/,\n        isPM : function (input) {\n            return 'Ů' === input;\n        },\n        meridiem : function (hour, minute, isLower) {\n            if (hour < 12) {\n                return 'Řľ';\n            } else {\n                return 'Ů';\n            }\n        },\n        calendar : {\n            sameDay: '[Ř§ŮŮŮŮ ŘšŮŮ Ř§ŮŘłŘ§ŘšŘŠ] LT',\n            nextDay: '[ŘşŘŻŘ§ ŘšŮŮ Ř§ŮŘłŘ§ŘšŘŠ] LT',\n            nextWeek: 'dddd [ŘšŮŮ Ř§ŮŘłŘ§ŘšŘŠ] LT',\n            lastDay: '[ŘŁŮŘł ŘšŮŮ Ř§ŮŘłŘ§ŘšŘŠ] LT',\n            lastWeek: 'dddd [ŘšŮŮ Ř§ŮŘłŘ§ŘšŘŠ] LT',\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : 'ŮŮ %s',\n            past : 'ŮŮŘ° %s',\n            s : 'ŘŤŮŘ§Ů',\n            m : 'ŘŻŮŮŮŘŠ',\n            mm : '%d ŘŻŮŘ§ŘŚŮ',\n            h : 'ŘłŘ§ŘšŘŠ',\n            hh : '%d ŘłŘ§ŘšŘ§ŘŞ',\n            d : 'ŮŮŮ',\n            dd : '%d ŘŁŮŘ§Ů',\n            M : 'Ř´ŮŘą',\n            MM : '%d ŘŁŘ´ŮŘą',\n            y : 'ŘłŮŘŠ',\n            yy : '%d ŘłŮŮŘ§ŘŞ'\n        },\n        preparse: function (string) {\n            return string.replace(/[ŮĄŮ˘ŮŁŮ¤ŮĽŮŚŮ§Ů¨ŮŠŮ ]/g, function (match) {\n                return numberMap[match];\n            }).replace(/Ř/g, ',');\n        },\n        postformat: function (string) {\n            return string.replace(/\\d/g, function (match) {\n                return symbolMap[match];\n            }).replace(/,/g, 'Ř');\n        },\n        week : {\n            dow : 6, // Saturday is the first day of the week.\n            doy : 12  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale  : Tunisian Arabic (ar-tn)\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('ar-tn', {\n        months: 'ŘŹŘ§ŮŮŮ_ŮŮŮŘąŮ_ŮŘ§ŘąŘł_ŘŁŮŘąŮŮ_ŮŘ§Ů_ŘŹŮŘ§Ů_ŘŹŮŮŮŮŘŠ_ŘŁŮŘŞ_ŘłŘ¨ŘŞŮŘ¨Řą_ŘŁŮŘŞŮŘ¨Řą_ŮŮŮŮŘ¨Řą_ŘŻŮŘłŮŘ¨Řą'.split('_'),\n        monthsShort: 'ŘŹŘ§ŮŮŮ_ŮŮŮŘąŮ_ŮŘ§ŘąŘł_ŘŁŮŘąŮŮ_ŮŘ§Ů_ŘŹŮŘ§Ů_ŘŹŮŮŮŮŘŠ_ŘŁŮŘŞ_ŘłŘ¨ŘŞŮŘ¨Řą_ŘŁŮŘŞŮŘ¨Řą_ŮŮŮŮŘ¨Řą_ŘŻŮŘłŮŘ¨Řą'.split('_'),\n        weekdays: 'Ř§ŮŘŁŘ­ŘŻ_Ř§ŮŘĽŘŤŮŮŮ_Ř§ŮŘŤŮŘ§ŘŤŘ§ŘĄ_Ř§ŮŘŁŘąŘ¨ŘšŘ§ŘĄ_Ř§ŮŘŽŮŮŘł_Ř§ŮŘŹŮŘšŘŠ_Ř§ŮŘłŘ¨ŘŞ'.split('_'),\n        weekdaysShort: 'ŘŁŘ­ŘŻ_ŘĽŘŤŮŮŮ_ŘŤŮŘ§ŘŤŘ§ŘĄ_ŘŁŘąŘ¨ŘšŘ§ŘĄ_ŘŽŮŮŘł_ŘŹŮŘšŘŠ_ŘłŘ¨ŘŞ'.split('_'),\n        weekdaysMin: 'Ř­_Ů_ŘŤ_Řą_ŘŽ_ŘŹ_Řł'.split('_'),\n        longDateFormat: {\n            LT: 'HH:mm',\n            LTS: 'LT:ss',\n            L: 'DD/MM/YYYY',\n            LL: 'D MMMM YYYY',\n            LLL: 'D MMMM YYYY LT',\n            LLLL: 'dddd D MMMM YYYY LT'\n        },\n        calendar: {\n            sameDay: '[Ř§ŮŮŮŮ ŘšŮŮ Ř§ŮŘłŘ§ŘšŘŠ] LT',\n            nextDay: '[ŘşŘŻŘ§ ŘšŮŮ Ř§ŮŘłŘ§ŘšŘŠ] LT',\n            nextWeek: 'dddd [ŘšŮŮ Ř§ŮŘłŘ§ŘšŘŠ] LT',\n            lastDay: '[ŘŁŮŘł ŘšŮŮ Ř§ŮŘłŘ§ŘšŘŠ] LT',\n            lastWeek: 'dddd [ŘšŮŮ Ř§ŮŘłŘ§ŘšŘŠ] LT',\n            sameElse: 'L'\n        },\n        relativeTime: {\n            future: 'ŮŮ %s',\n            past: 'ŮŮŘ° %s',\n            s: 'ŘŤŮŘ§Ů',\n            m: 'ŘŻŮŮŮŘŠ',\n            mm: '%d ŘŻŮŘ§ŘŚŮ',\n            h: 'ŘłŘ§ŘšŘŠ',\n            hh: '%d ŘłŘ§ŘšŘ§ŘŞ',\n            d: 'ŮŮŮ',\n            dd: '%d ŘŁŮŘ§Ů',\n            M: 'Ř´ŮŘą',\n            MM: '%d ŘŁŘ´ŮŘą',\n            y: 'ŘłŮŘŠ',\n            yy: '%d ŘłŮŮŘ§ŘŞ'\n        },\n        week: {\n            dow: 1, // Monday is the first day of the week.\n            doy: 4 // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// Locale: Arabic (ar)\n// Author: Abdel Said: https://github.com/abdelsaid\n// Changes in months, weekdays: Ahmed Elkhatib\n// Native plural forms: forabi https://github.com/forabi\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var symbolMap = {\n        '1': 'ŮĄ',\n        '2': 'Ů˘',\n        '3': 'ŮŁ',\n        '4': 'Ů¤',\n        '5': 'ŮĽ',\n        '6': 'ŮŚ',\n        '7': 'Ů§',\n        '8': 'Ů¨',\n        '9': 'ŮŠ',\n        '0': 'Ů '\n    }, numberMap = {\n        'ŮĄ': '1',\n        'Ů˘': '2',\n        'ŮŁ': '3',\n        'Ů¤': '4',\n        'ŮĽ': '5',\n        'ŮŚ': '6',\n        'Ů§': '7',\n        'Ů¨': '8',\n        'ŮŠ': '9',\n        'Ů ': '0'\n    }, pluralForm = function (n) {\n        return n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5;\n    }, plurals = {\n        s : ['ŘŁŮŮ ŮŮ ŘŤŘ§ŮŮŘŠ', 'ŘŤŘ§ŮŮŘŠ ŮŘ§Ř­ŘŻŘŠ', ['ŘŤŘ§ŮŮŘŞŘ§Ů', 'ŘŤŘ§ŮŮŘŞŮŮ'], '%d ŘŤŮŘ§Ů', '%d ŘŤŘ§ŮŮŘŠ', '%d ŘŤŘ§ŮŮŘŠ'],\n        m : ['ŘŁŮŮ ŮŮ ŘŻŮŮŮŘŠ', 'ŘŻŮŮŮŘŠ ŮŘ§Ř­ŘŻŘŠ', ['ŘŻŮŮŮŘŞŘ§Ů', 'ŘŻŮŮŮŘŞŮŮ'], '%d ŘŻŮŘ§ŘŚŮ', '%d ŘŻŮŮŮŘŠ', '%d ŘŻŮŮŮŘŠ'],\n        h : ['ŘŁŮŮ ŮŮ ŘłŘ§ŘšŘŠ', 'ŘłŘ§ŘšŘŠ ŮŘ§Ř­ŘŻŘŠ', ['ŘłŘ§ŘšŘŞŘ§Ů', 'ŘłŘ§ŘšŘŞŮŮ'], '%d ŘłŘ§ŘšŘ§ŘŞ', '%d ŘłŘ§ŘšŘŠ', '%d ŘłŘ§ŘšŘŠ'],\n        d : ['ŘŁŮŮ ŮŮ ŮŮŮ', 'ŮŮŮ ŮŘ§Ř­ŘŻ', ['ŮŮŮŘ§Ů', 'ŮŮŮŮŮ'], '%d ŘŁŮŘ§Ů', '%d ŮŮŮŮŘ§', '%d ŮŮŮ'],\n        M : ['ŘŁŮŮ ŮŮ Ř´ŮŘą', 'Ř´ŮŘą ŮŘ§Ř­ŘŻ', ['Ř´ŮŘąŘ§Ů', 'Ř´ŮŘąŮŮ'], '%d ŘŁŘ´ŮŘą', '%d Ř´ŮŘąŘ§', '%d Ř´ŮŘą'],\n        y : ['ŘŁŮŮ ŮŮ ŘšŘ§Ů', 'ŘšŘ§Ů ŮŘ§Ř­ŘŻ', ['ŘšŘ§ŮŘ§Ů', 'ŘšŘ§ŮŮŮ'], '%d ŘŁŘšŮŘ§Ů', '%d ŘšŘ§ŮŮŘ§', '%d ŘšŘ§Ů']\n    }, pluralize = function (u) {\n        return function (number, withoutSuffix, string, isFuture) {\n            var f = pluralForm(number),\n                str = plurals[u][pluralForm(number)];\n            if (f === 2) {\n                str = str[withoutSuffix ? 0 : 1];\n            }\n            return str.replace(/%d/i, number);\n        };\n    }, months = [\n        'ŮŘ§ŮŮŮ Ř§ŮŘŤŘ§ŮŮ ŮŮŘ§ŮŘą',\n        'Ř´Ř¨Ř§Řˇ ŮŘ¨ŘąŘ§ŮŘą',\n        'Ř˘Ř°Ř§Řą ŮŘ§ŘąŘł',\n        'ŮŮŘłŘ§Ů ŘŁŘ¨ŘąŮŮ',\n        'ŘŁŮŘ§Řą ŮŘ§ŮŮ',\n        'Ř­Ř˛ŮŘąŘ§Ů ŮŮŮŮŮ',\n        'ŘŞŮŮŘ˛ ŮŮŮŮŮ',\n        'Ř˘Ř¨ ŘŁŘşŘłŘˇŘł',\n        'ŘŁŮŮŮŮ ŘłŘ¨ŘŞŮŘ¨Řą',\n        'ŘŞŘ´ŘąŮŮ Ř§ŮŘŁŮŮ ŘŁŮŘŞŮŘ¨Řą',\n        'ŘŞŘ´ŘąŮŮ Ř§ŮŘŤŘ§ŮŮ ŮŮŮŮŘ¨Řą',\n        'ŮŘ§ŮŮŮ Ř§ŮŘŁŮŮ ŘŻŮŘłŮŘ¨Řą'\n    ];\n\n    return moment.defineLocale('ar', {\n        months : months,\n        monthsShort : months,\n        weekdays : 'Ř§ŮŘŁŘ­ŘŻ_Ř§ŮŘĽŘŤŮŮŮ_Ř§ŮŘŤŮŘ§ŘŤŘ§ŘĄ_Ř§ŮŘŁŘąŘ¨ŘšŘ§ŘĄ_Ř§ŮŘŽŮŮŘł_Ř§ŮŘŹŮŘšŘŠ_Ř§ŮŘłŘ¨ŘŞ'.split('_'),\n        weekdaysShort : 'ŘŁŘ­ŘŻ_ŘĽŘŤŮŮŮ_ŘŤŮŘ§ŘŤŘ§ŘĄ_ŘŁŘąŘ¨ŘšŘ§ŘĄ_ŘŽŮŮŘł_ŘŹŮŘšŘŠ_ŘłŘ¨ŘŞ'.split('_'),\n        weekdaysMin : 'Ř­_Ů_ŘŤ_Řą_ŘŽ_ŘŹ_Řł'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'HH:mm:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd D MMMM YYYY LT'\n        },\n        meridiemParse: /Řľ|Ů/,\n        isPM : function (input) {\n            return 'Ů' === input;\n        },\n        meridiem : function (hour, minute, isLower) {\n            if (hour < 12) {\n                return 'Řľ';\n            } else {\n                return 'Ů';\n            }\n        },\n        calendar : {\n            sameDay: '[Ř§ŮŮŮŮ ŘšŮŘŻ Ř§ŮŘłŘ§ŘšŘŠ] LT',\n            nextDay: '[ŘşŘŻŮŘ§ ŘšŮŘŻ Ř§ŮŘłŘ§ŘšŘŠ] LT',\n            nextWeek: 'dddd [ŘšŮŘŻ Ř§ŮŘłŘ§ŘšŘŠ] LT',\n            lastDay: '[ŘŁŮŘł ŘšŮŘŻ Ř§ŮŘłŘ§ŘšŘŠ] LT',\n            lastWeek: 'dddd [ŘšŮŘŻ Ř§ŮŘłŘ§ŘšŘŠ] LT',\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : 'Ř¨ŘšŘŻ %s',\n            past : 'ŮŮŘ° %s',\n            s : pluralize('s'),\n            m : pluralize('m'),\n            mm : pluralize('m'),\n            h : pluralize('h'),\n            hh : pluralize('h'),\n            d : pluralize('d'),\n            dd : pluralize('d'),\n            M : pluralize('M'),\n            MM : pluralize('M'),\n            y : pluralize('y'),\n            yy : pluralize('y')\n        },\n        preparse: function (string) {\n            return string.replace(/[ŮĄŮ˘ŮŁŮ¤ŮĽŮŚŮ§Ů¨ŮŠŮ ]/g, function (match) {\n                return numberMap[match];\n            }).replace(/Ř/g, ',');\n        },\n        postformat: function (string) {\n            return string.replace(/\\d/g, function (match) {\n                return symbolMap[match];\n            }).replace(/,/g, 'Ř');\n        },\n        week : {\n            dow : 6, // Saturday is the first day of the week.\n            doy : 12  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : azerbaijani (az)\n// author : topchiyev : https://github.com/topchiyev\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var suffixes = {\n        1: '-inci',\n        5: '-inci',\n        8: '-inci',\n        70: '-inci',\n        80: '-inci',\n\n        2: '-nci',\n        7: '-nci',\n        20: '-nci',\n        50: '-nci',\n\n        3: '-ĂźncĂź',\n        4: '-ĂźncĂź',\n        100: '-ĂźncĂź',\n\n        6: '-ncÄą',\n\n        9: '-uncu',\n        10: '-uncu',\n        30: '-uncu',\n\n        60: '-ÄąncÄą',\n        90: '-ÄąncÄą'\n    };\n    return moment.defineLocale('az', {\n        months : 'yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr'.split('_'),\n        monthsShort : 'yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek'.split('_'),\n        weekdays : 'Bazar_Bazar ertÉsi_ĂÉrĹÉnbÉ axĹamÄą_ĂÉrĹÉnbÉ_CĂźmÉ axĹamÄą_CĂźmÉ_ĹÉnbÉ'.split('_'),\n        weekdaysShort : 'Baz_BzE_ĂAx_ĂÉr_CAx_CĂźm_ĹÉn'.split('_'),\n        weekdaysMin : 'Bz_BE_ĂA_ĂÉ_CA_CĂź_ĹÉ'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD.MM.YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd, D MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay : '[bugĂźn saat] LT',\n            nextDay : '[sabah saat] LT',\n            nextWeek : '[gÉlÉn hÉftÉ] dddd [saat] LT',\n            lastDay : '[dĂźnÉn] LT',\n            lastWeek : '[keĂ§Én hÉftÉ] dddd [saat] LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : '%s sonra',\n            past : '%s ÉvvÉl',\n            s : 'birneĂ§É saniyyÉ',\n            m : 'bir dÉqiqÉ',\n            mm : '%d dÉqiqÉ',\n            h : 'bir saat',\n            hh : '%d saat',\n            d : 'bir gĂźn',\n            dd : '%d gĂźn',\n            M : 'bir ay',\n            MM : '%d ay',\n            y : 'bir il',\n            yy : '%d il'\n        },\n        meridiemParse: /gecÉ|sÉhÉr|gĂźndĂźz|axĹam/,\n        isPM : function (input) {\n            return /^(gĂźndĂźz|axĹam)$/.test(input);\n        },\n        meridiem : function (hour, minute, isLower) {\n            if (hour < 4) {\n                return 'gecÉ';\n            } else if (hour < 12) {\n                return 'sÉhÉr';\n            } else if (hour < 17) {\n                return 'gĂźndĂźz';\n            } else {\n                return 'axĹam';\n            }\n        },\n        ordinalParse: /\\d{1,2}-(ÄąncÄą|inci|nci|ĂźncĂź|ncÄą|uncu)/,\n        ordinal : function (number) {\n            if (number === 0) {  // special case for zero\n                return number + '-ÄąncÄą';\n            }\n            var a = number % 10,\n                b = number % 100 - a,\n                c = number >= 100 ? 100 : null;\n\n            return number + (suffixes[a] || suffixes[b] || suffixes[c]);\n        },\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : belarusian (be)\n// author : Dmitry Demidov : https://github.com/demidov91\n// author: Praleska: http://praleska.pro/\n// Author : Menelion ElensĂşle : https://github.com/Oire\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    function plural(word, num) {\n        var forms = word.split('_');\n        return num % 10 === 1 && num % 100 !== 11 ? forms[0] : (num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) ? forms[1] : forms[2]);\n    }\n\n    function relativeTimeWithPlural(number, withoutSuffix, key) {\n        var format = {\n            'mm': withoutSuffix ? 'ŃĐ˛ŃĐťŃĐ˝Đ°_ŃĐ˛ŃĐťŃĐ˝Ń_ŃĐ˛ŃĐťŃĐ˝' : 'ŃĐ˛ŃĐťŃĐ˝Ń_ŃĐ˛ŃĐťŃĐ˝Ń_ŃĐ˛ŃĐťŃĐ˝',\n            'hh': withoutSuffix ? 'ĐłĐ°Đ´ĐˇŃĐ˝Đ°_ĐłĐ°Đ´ĐˇŃĐ˝Ń_ĐłĐ°Đ´ĐˇŃĐ˝' : 'ĐłĐ°Đ´ĐˇŃĐ˝Ń_ĐłĐ°Đ´ĐˇŃĐ˝Ń_ĐłĐ°Đ´ĐˇŃĐ˝',\n            'dd': 'Đ´ĐˇĐľĐ˝Ń_Đ´Đ˝Ń_Đ´ĐˇŃĐ˝',\n            'MM': 'ĐźĐľŃŃŃ_ĐźĐľŃŃŃŃ_ĐźĐľŃŃŃĐ°Ń',\n            'yy': 'ĐłĐžĐ´_ĐłĐ°Đ´Ń_ĐłĐ°Đ´ĐžŃ'\n        };\n        if (key === 'm') {\n            return withoutSuffix ? 'ŃĐ˛ŃĐťŃĐ˝Đ°' : 'ŃĐ˛ŃĐťŃĐ˝Ń';\n        }\n        else if (key === 'h') {\n            return withoutSuffix ? 'ĐłĐ°Đ´ĐˇŃĐ˝Đ°' : 'ĐłĐ°Đ´ĐˇŃĐ˝Ń';\n        }\n        else {\n            return number + ' ' + plural(format[key], +number);\n        }\n    }\n\n    function monthsCaseReplace(m, format) {\n        var months = {\n            'nominative': 'ŃŃŃĐ´ĐˇĐľĐ˝Ń_ĐťŃŃŃ_ŃĐ°ĐşĐ°Đ˛ŃĐş_ĐşŃĐ°ŃĐ°Đ˛ŃĐş_ŃŃĐ°Đ˛ĐľĐ˝Ń_ŃŃŃĐ˛ĐľĐ˝Ń_ĐťŃĐżĐľĐ˝Ń_ĐśĐ˝ŃĐ˛ĐľĐ˝Ń_Đ˛ĐľŃĐ°ŃĐľĐ˝Ń_ĐşĐ°ŃŃŃŃŃĐ˝ŃĐş_ĐťŃŃŃĐ°ĐżĐ°Đ´_ŃĐ˝ĐľĐśĐ°Đ˝Ń'.split('_'),\n            'accusative': 'ŃŃŃĐ´ĐˇĐľĐ˝Ń_ĐťŃŃĐ°ĐłĐ°_ŃĐ°ĐşĐ°Đ˛ŃĐşĐ°_ĐşŃĐ°ŃĐ°Đ˛ŃĐşĐ°_ŃŃĐ°ŃĐ˝Ń_ŃŃŃĐ˛ĐľĐ˝Ń_ĐťŃĐżĐľĐ˝Ń_ĐśĐ˝ŃŃĐ˝Ń_Đ˛ĐľŃĐ°ŃĐ˝Ń_ĐşĐ°ŃŃŃŃŃĐ˝ŃĐşĐ°_ĐťŃŃŃĐ°ĐżĐ°Đ´Đ°_ŃĐ˝ĐľĐśĐ˝Ń'.split('_')\n        },\n\n        nounCase = (/D[oD]?(\\[[^\\[\\]]*\\]|\\s+)+MMMM?/).test(format) ?\n            'accusative' :\n            'nominative';\n\n        return months[nounCase][m.month()];\n    }\n\n    function weekdaysCaseReplace(m, format) {\n        var weekdays = {\n            'nominative': 'Đ˝ŃĐ´ĐˇĐľĐťŃ_ĐżĐ°Đ˝ŃĐ´ĐˇĐľĐťĐ°Đş_Đ°ŃŃĐžŃĐ°Đş_ŃĐľŃĐ°Đ´Đ°_ŃĐ°ŃĐ˛ĐľŃ_ĐżŃŃĐ˝ŃŃĐ°_ŃŃĐąĐžŃĐ°'.split('_'),\n            'accusative': 'Đ˝ŃĐ´ĐˇĐľĐťŃ_ĐżĐ°Đ˝ŃĐ´ĐˇĐľĐťĐ°Đş_Đ°ŃŃĐžŃĐ°Đş_ŃĐľŃĐ°Đ´Ń_ŃĐ°ŃĐ˛ĐľŃ_ĐżŃŃĐ˝ŃŃŃ_ŃŃĐąĐžŃŃ'.split('_')\n        },\n\n        nounCase = (/\\[ ?[ĐĐ˛] ?(?:ĐźŃĐ˝ŃĐťŃŃ|Đ˝Đ°ŃŃŃĐżĐ˝ŃŃ)? ?\\] ?dddd/).test(format) ?\n            'accusative' :\n            'nominative';\n\n        return weekdays[nounCase][m.day()];\n    }\n\n    return moment.defineLocale('be', {\n        months : monthsCaseReplace,\n        monthsShort : 'ŃŃŃĐ´_ĐťŃŃ_ŃĐ°Đş_ĐşŃĐ°Ń_ŃŃĐ°Đ˛_ŃŃŃĐ˛_ĐťŃĐż_ĐśĐ˝ŃĐ˛_Đ˛ĐľŃ_ĐşĐ°ŃŃ_ĐťŃŃŃ_ŃĐ˝ĐľĐś'.split('_'),\n        weekdays : weekdaysCaseReplace,\n        weekdaysShort : 'Đ˝Đ´_ĐżĐ˝_Đ°Ń_ŃŃ_ŃŃ_ĐżŃ_ŃĐą'.split('_'),\n        weekdaysMin : 'Đ˝Đ´_ĐżĐ˝_Đ°Ń_ŃŃ_ŃŃ_ĐżŃ_ŃĐą'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD.MM.YYYY',\n            LL : 'D MMMM YYYY Đł.',\n            LLL : 'D MMMM YYYY Đł., LT',\n            LLLL : 'dddd, D MMMM YYYY Đł., LT'\n        },\n        calendar : {\n            sameDay: '[ĐĄŃĐ˝Đ˝Ń Ń] LT',\n            nextDay: '[ĐĐ°ŃŃŃĐ° Ń] LT',\n            lastDay: '[ĐŁŃĐžŃĐ° Ń] LT',\n            nextWeek: function () {\n                return '[ĐŁ] dddd [Ń] LT';\n            },\n            lastWeek: function () {\n                switch (this.day()) {\n                case 0:\n                case 3:\n                case 5:\n                case 6:\n                    return '[ĐŁ ĐźŃĐ˝ŃĐťŃŃ] dddd [Ń] LT';\n                case 1:\n                case 2:\n                case 4:\n                    return '[ĐŁ ĐźŃĐ˝ŃĐťŃ] dddd [Ń] LT';\n                }\n            },\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : 'ĐżŃĐ°Đˇ %s',\n            past : '%s ŃĐ°ĐźŃ',\n            s : 'Đ˝ĐľĐşĐ°ĐťŃĐşŃ ŃĐľĐşŃĐ˝Đ´',\n            m : relativeTimeWithPlural,\n            mm : relativeTimeWithPlural,\n            h : relativeTimeWithPlural,\n            hh : relativeTimeWithPlural,\n            d : 'Đ´ĐˇĐľĐ˝Ń',\n            dd : relativeTimeWithPlural,\n            M : 'ĐźĐľŃŃŃ',\n            MM : relativeTimeWithPlural,\n            y : 'ĐłĐžĐ´',\n            yy : relativeTimeWithPlural\n        },\n        meridiemParse: /Đ˝ĐžŃŃ|ŃĐ°Đ˝ŃŃŃ|Đ´Đ˝Ń|Đ˛ĐľŃĐ°ŃĐ°/,\n        isPM : function (input) {\n            return /^(Đ´Đ˝Ń|Đ˛ĐľŃĐ°ŃĐ°)$/.test(input);\n        },\n        meridiem : function (hour, minute, isLower) {\n            if (hour < 4) {\n                return 'Đ˝ĐžŃŃ';\n            } else if (hour < 12) {\n                return 'ŃĐ°Đ˝ŃŃŃ';\n            } else if (hour < 17) {\n                return 'Đ´Đ˝Ń';\n            } else {\n                return 'Đ˛ĐľŃĐ°ŃĐ°';\n            }\n        },\n\n        ordinalParse: /\\d{1,2}-(Ń|Ń|ĐłĐ°)/,\n        ordinal: function (number, period) {\n            switch (period) {\n            case 'M':\n            case 'd':\n            case 'DDD':\n            case 'w':\n            case 'W':\n                return (number % 10 === 2 || number % 10 === 3) && (number % 100 !== 12 && number % 100 !== 13) ? number + '-Ń' : number + '-Ń';\n            case 'D':\n                return number + '-ĐłĐ°';\n            default:\n                return number;\n            }\n        },\n\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : bulgarian (bg)\n// author : Krasen Borisov : https://github.com/kraz\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('bg', {\n        months : 'ŃĐ˝ŃĐ°ŃĐ¸_ŃĐľĐ˛ŃŃĐ°ŃĐ¸_ĐźĐ°ŃŃ_Đ°ĐżŃĐ¸Đť_ĐźĐ°Đš_ŃĐ˝Đ¸_ŃĐťĐ¸_Đ°Đ˛ĐłŃŃŃ_ŃĐľĐżŃĐľĐźĐ˛ŃĐ¸_ĐžĐşŃĐžĐźĐ˛ŃĐ¸_Đ˝ĐžĐľĐźĐ˛ŃĐ¸_Đ´ĐľĐşĐľĐźĐ˛ŃĐ¸'.split('_'),\n        monthsShort : 'ŃĐ˝Ń_ŃĐľĐ˛_ĐźĐ°Ń_Đ°ĐżŃ_ĐźĐ°Đš_ŃĐ˝Đ¸_ŃĐťĐ¸_Đ°Đ˛Đł_ŃĐľĐż_ĐžĐşŃ_Đ˝ĐžĐľ_Đ´ĐľĐş'.split('_'),\n        weekdays : 'Đ˝ĐľĐ´ĐľĐťŃ_ĐżĐžĐ˝ĐľĐ´ĐľĐťĐ˝Đ¸Đş_Đ˛ŃĐžŃĐ˝Đ¸Đş_ŃŃŃĐ´Đ°_ŃĐľŃĐ˛ŃŃŃŃĐş_ĐżĐľŃŃĐş_ŃŃĐąĐžŃĐ°'.split('_'),\n        weekdaysShort : 'Đ˝ĐľĐ´_ĐżĐžĐ˝_Đ˛ŃĐž_ŃŃŃ_ŃĐľŃ_ĐżĐľŃ_ŃŃĐą'.split('_'),\n        weekdaysMin : 'Đ˝Đ´_ĐżĐ˝_Đ˛Ń_ŃŃ_ŃŃ_ĐżŃ_ŃĐą'.split('_'),\n        longDateFormat : {\n            LT : 'H:mm',\n            LTS : 'LT:ss',\n            L : 'D.MM.YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd, D MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay : '[ĐĐ˝ĐľŃ Đ˛] LT',\n            nextDay : '[ĐŁŃŃĐľ Đ˛] LT',\n            nextWeek : 'dddd [Đ˛] LT',\n            lastDay : '[ĐŃĐľŃĐ° Đ˛] LT',\n            lastWeek : function () {\n                switch (this.day()) {\n                case 0:\n                case 3:\n                case 6:\n                    return '[Đ Đ¸ĐˇĐźĐ¸Đ˝Đ°ĐťĐ°ŃĐ°] dddd [Đ˛] LT';\n                case 1:\n                case 2:\n                case 4:\n                case 5:\n                    return '[Đ Đ¸ĐˇĐźĐ¸Đ˝Đ°ĐťĐ¸Ń] dddd [Đ˛] LT';\n                }\n            },\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'ŃĐťĐľĐ´ %s',\n            past : 'ĐżŃĐľĐ´Đ¸ %s',\n            s : 'Đ˝ŃĐşĐžĐťĐşĐž ŃĐľĐşŃĐ˝Đ´Đ¸',\n            m : 'ĐźĐ¸Đ˝ŃŃĐ°',\n            mm : '%d ĐźĐ¸Đ˝ŃŃĐ¸',\n            h : 'ŃĐ°Ń',\n            hh : '%d ŃĐ°ŃĐ°',\n            d : 'Đ´ĐľĐ˝',\n            dd : '%d Đ´Đ˝Đ¸',\n            M : 'ĐźĐľŃĐľŃ',\n            MM : '%d ĐźĐľŃĐľŃĐ°',\n            y : 'ĐłĐžĐ´Đ¸Đ˝Đ°',\n            yy : '%d ĐłĐžĐ´Đ¸Đ˝Đ¸'\n        },\n        ordinalParse: /\\d{1,2}-(ĐľĐ˛|ĐľĐ˝|ŃĐ¸|Đ˛Đ¸|ŃĐ¸|ĐźĐ¸)/,\n        ordinal : function (number) {\n            var lastDigit = number % 10,\n                last2Digits = number % 100;\n            if (number === 0) {\n                return number + '-ĐľĐ˛';\n            } else if (last2Digits === 0) {\n                return number + '-ĐľĐ˝';\n            } else if (last2Digits > 10 && last2Digits < 20) {\n                return number + '-ŃĐ¸';\n            } else if (lastDigit === 1) {\n                return number + '-Đ˛Đ¸';\n            } else if (lastDigit === 2) {\n                return number + '-ŃĐ¸';\n            } else if (lastDigit === 7 || lastDigit === 8) {\n                return number + '-ĐźĐ¸';\n            } else {\n                return number + '-ŃĐ¸';\n            }\n        },\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : Bengali (bn)\n// author : Kaushik Gandhi : https://github.com/kaushikgandhi\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var symbolMap = {\n        '1': 'ŕ§§',\n        '2': 'ŕ§¨',\n        '3': 'ŕ§Š',\n        '4': 'ŕ§Ş',\n        '5': 'ŕ§Ť',\n        '6': 'ŕ§Ź',\n        '7': 'ŕ§­',\n        '8': 'ŕ§Ž',\n        '9': 'ŕ§Ż',\n        '0': 'ŕ§Ś'\n    },\n    numberMap = {\n        'ŕ§§': '1',\n        'ŕ§¨': '2',\n        'ŕ§Š': '3',\n        'ŕ§Ş': '4',\n        'ŕ§Ť': '5',\n        'ŕ§Ź': '6',\n        'ŕ§­': '7',\n        'ŕ§Ž': '8',\n        'ŕ§Ż': '9',\n        'ŕ§Ś': '0'\n    };\n\n    return moment.defineLocale('bn', {\n        months : 'ŕŚŕŚžŕŚ¨ŕ§ŕ§ŕŚžŕŚ°ŕ§_ŕŚŤŕ§ŕŚŹŕ§ŕ§ŕŚžŕŚ°ŕ§_ŕŚŽŕŚžŕŚ°ŕ§ŕŚ_ŕŚŕŚŞŕ§ŕŚ°ŕŚżŕŚ˛_ŕŚŽŕ§_ŕŚŕ§ŕŚ¨_ŕŚŕ§ŕŚ˛ŕŚžŕŚ_ŕŚŕŚŕŚžŕŚ¸ŕ§ŕŚ_ŕŚ¸ŕ§ŕŚŞŕ§ŕŚŕ§ŕŚŽŕ§ŕŚŹŕŚ°_ŕŚŕŚŕ§ŕŚŕ§ŕŚŹŕŚ°_ŕŚ¨ŕŚ­ŕ§ŕŚŽŕ§ŕŚŹŕŚ°_ŕŚĄŕŚżŕŚ¸ŕ§ŕŚŽŕ§ŕŚŹŕŚ°'.split('_'),\n        monthsShort : 'ŕŚŕŚžŕŚ¨ŕ§_ŕŚŤŕ§ŕŚŹ_ŕŚŽŕŚžŕŚ°ŕ§ŕŚ_ŕŚŕŚŞŕŚ°_ŕŚŽŕ§_ŕŚŕ§ŕŚ¨_ŕŚŕ§ŕŚ˛_ŕŚŕŚ_ŕŚ¸ŕ§ŕŚŞŕ§ŕŚ_ŕŚŕŚŕ§ŕŚŕ§_ŕŚ¨ŕŚ­_ŕŚĄŕŚżŕŚ¸ŕ§ŕŚŽŕ§'.split('_'),\n        weekdays : 'ŕŚ°ŕŚŹŕŚżŕŚŹŕŚžŕŚ°_ŕŚ¸ŕ§ŕŚŽŕŚŹŕŚžŕŚ°_ŕŚŽŕŚŕ§ŕŚŕŚ˛ŕŚŹŕŚžŕŚ°_ŕŚŹŕ§ŕŚ§ŕŚŹŕŚžŕŚ°_ŕŚŹŕ§ŕŚšŕŚ¸ŕ§ŕŚŞŕŚ¤ŕ§ŕŚ¤ŕŚżŕŚŹŕŚžŕŚ°_ŕŚśŕ§ŕŚŕ§ŕŚ°ŕ§ŕŚŹŕŚžŕŚ°_ŕŚśŕŚ¨ŕŚżŕŚŹŕŚžŕŚ°'.split('_'),\n        weekdaysShort : 'ŕŚ°ŕŚŹŕŚż_ŕŚ¸ŕ§ŕŚŽ_ŕŚŽŕŚŕ§ŕŚŕŚ˛_ŕŚŹŕ§ŕŚ§_ŕŚŹŕ§ŕŚšŕŚ¸ŕ§ŕŚŞŕŚ¤ŕ§ŕŚ¤ŕŚż_ŕŚśŕ§ŕŚŕ§ŕŚ°ŕ§_ŕŚśŕŚ¨ŕŚż'.split('_'),\n        weekdaysMin : 'ŕŚ°ŕŚŹ_ŕŚ¸ŕŚŽ_ŕŚŽŕŚŕ§ŕŚ_ŕŚŹŕ§_ŕŚŹŕ§ŕŚ°ŕŚżŕŚš_ŕŚśŕ§_ŕŚśŕŚ¨ŕŚż'.split('_'),\n        longDateFormat : {\n            LT : 'A h:mm ŕŚ¸ŕŚŽŕ§',\n            LTS : 'A h:mm:ss ŕŚ¸ŕŚŽŕ§',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY, LT',\n            LLLL : 'dddd, D MMMM YYYY, LT'\n        },\n        calendar : {\n            sameDay : '[ŕŚŕŚ] LT',\n            nextDay : '[ŕŚŕŚŕŚžŕŚŽŕ§ŕŚŕŚžŕŚ˛] LT',\n            nextWeek : 'dddd, LT',\n            lastDay : '[ŕŚŕŚ¤ŕŚŕŚžŕŚ˛] LT',\n            lastWeek : '[ŕŚŕŚ¤] dddd, LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : '%s ŕŚŞŕŚ°ŕ§',\n            past : '%s ŕŚŕŚŕ§',\n            s : 'ŕŚŕŚŕŚ ŕŚ¸ŕ§ŕŚŕ§ŕŚ¨ŕ§ŕŚĄ',\n            m : 'ŕŚŕŚ ŕŚŽŕŚżŕŚ¨ŕŚżŕŚ',\n            mm : '%d ŕŚŽŕŚżŕŚ¨ŕŚżŕŚ',\n            h : 'ŕŚŕŚ ŕŚŕŚ¨ŕ§ŕŚŕŚž',\n            hh : '%d ŕŚŕŚ¨ŕ§ŕŚŕŚž',\n            d : 'ŕŚŕŚ ŕŚŚŕŚżŕŚ¨',\n            dd : '%d ŕŚŚŕŚżŕŚ¨',\n            M : 'ŕŚŕŚ ŕŚŽŕŚžŕŚ¸',\n            MM : '%d ŕŚŽŕŚžŕŚ¸',\n            y : 'ŕŚŕŚ ŕŚŹŕŚŕŚ°',\n            yy : '%d ŕŚŹŕŚŕŚ°'\n        },\n        preparse: function (string) {\n            return string.replace(/[ŕ§§ŕ§¨ŕ§Šŕ§Şŕ§Ťŕ§Źŕ§­ŕ§Žŕ§Żŕ§Ś]/g, function (match) {\n                return numberMap[match];\n            });\n        },\n        postformat: function (string) {\n            return string.replace(/\\d/g, function (match) {\n                return symbolMap[match];\n            });\n        },\n        meridiemParse: /ŕŚ°ŕŚžŕŚ¤|ŕŚśŕŚŕŚžŕŚ˛|ŕŚŚŕ§ŕŚŞŕ§ŕŚ°|ŕŚŹŕŚżŕŚŕ§ŕŚ˛|ŕŚ°ŕŚžŕŚ¤/,\n        isPM: function (input) {\n            return /^(ŕŚŚŕ§ŕŚŞŕ§ŕŚ°|ŕŚŹŕŚżŕŚŕ§ŕŚ˛|ŕŚ°ŕŚžŕŚ¤)$/.test(input);\n        },\n        //Bengali is a vast language its spoken\n        //in different forms in various parts of the world.\n        //I have just generalized with most common one used\n        meridiem : function (hour, minute, isLower) {\n            if (hour < 4) {\n                return 'ŕŚ°ŕŚžŕŚ¤';\n            } else if (hour < 10) {\n                return 'ŕŚśŕŚŕŚžŕŚ˛';\n            } else if (hour < 17) {\n                return 'ŕŚŚŕ§ŕŚŞŕ§ŕŚ°';\n            } else if (hour < 20) {\n                return 'ŕŚŹŕŚżŕŚŕ§ŕŚ˛';\n            } else {\n                return 'ŕŚ°ŕŚžŕŚ¤';\n            }\n        },\n        week : {\n            dow : 0, // Sunday is the first day of the week.\n            doy : 6  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : tibetan (bo)\n// author : Thupten N. Chakrishar : https://github.com/vajradog\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var symbolMap = {\n        '1': 'ŕźĄ',\n        '2': 'ŕź˘',\n        '3': 'ŕźŁ',\n        '4': 'ŕź¤',\n        '5': 'ŕźĽ',\n        '6': 'ŕźŚ',\n        '7': 'ŕź§',\n        '8': 'ŕź¨',\n        '9': 'ŕźŠ',\n        '0': 'ŕź '\n    },\n    numberMap = {\n        'ŕźĄ': '1',\n        'ŕź˘': '2',\n        'ŕźŁ': '3',\n        'ŕź¤': '4',\n        'ŕźĽ': '5',\n        'ŕźŚ': '6',\n        'ŕź§': '7',\n        'ŕź¨': '8',\n        'ŕźŠ': '9',\n        'ŕź ': '0'\n    };\n\n    return moment.defineLocale('bo', {\n        months : 'ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕ˝ŕźŕ˝ŕ˝ź_ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕ˝ŕ˝˛ŕ˝Śŕźŕ˝_ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕ˝Śŕ˝´ŕ˝ŕźŕ˝_ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕ˝ŕ˝˛ŕźŕ˝_ŕ˝ŕžłŕźŕ˝ŕźŕ˝Łŕžŕźŕ˝_ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕž˛ŕ˝´ŕ˝ŕźŕ˝_ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕ˝ŕ˝´ŕ˝ŕźŕ˝_ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕ˝˘ŕžŕžąŕ˝ŕźŕ˝_ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕ˝ŕ˝´ŕźŕ˝_ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕ˝ŕ˝´ŕźŕ˝_ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕ˝ŕ˝´ŕźŕ˝ŕ˝ŕ˝˛ŕ˝ŕźŕ˝_ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕ˝ŕ˝´ŕźŕ˝ŕ˝ŕ˝˛ŕ˝Śŕźŕ˝'.split('_'),\n        monthsShort : 'ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕ˝ŕźŕ˝ŕ˝ź_ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕ˝ŕ˝˛ŕ˝Śŕźŕ˝_ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕ˝Śŕ˝´ŕ˝ŕźŕ˝_ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕ˝ŕ˝˛ŕźŕ˝_ŕ˝ŕžłŕźŕ˝ŕźŕ˝Łŕžŕźŕ˝_ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕž˛ŕ˝´ŕ˝ŕźŕ˝_ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕ˝ŕ˝´ŕ˝ŕźŕ˝_ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕ˝˘ŕžŕžąŕ˝ŕźŕ˝_ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕ˝ŕ˝´ŕźŕ˝_ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕ˝ŕ˝´ŕźŕ˝_ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕ˝ŕ˝´ŕźŕ˝ŕ˝ŕ˝˛ŕ˝ŕźŕ˝_ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕ˝ŕ˝´ŕźŕ˝ŕ˝ŕ˝˛ŕ˝Śŕźŕ˝'.split('_'),\n        weekdays : 'ŕ˝ŕ˝ŕ˝ ŕźŕ˝ŕ˝˛ŕźŕ˝ŕź_ŕ˝ŕ˝ŕ˝ ŕźŕ˝ŕžłŕźŕ˝ŕź_ŕ˝ŕ˝ŕ˝ ŕźŕ˝ŕ˝˛ŕ˝ŕźŕ˝ŕ˝ŕ˝˘ŕź_ŕ˝ŕ˝ŕ˝ ŕźŕ˝Łŕžˇŕ˝ŕźŕ˝ŕź_ŕ˝ŕ˝ŕ˝ ŕźŕ˝ŕ˝´ŕ˝˘ŕźŕ˝ŕ˝´_ŕ˝ŕ˝ŕ˝ ŕźŕ˝ŕźŕ˝Śŕ˝ŕ˝Śŕź_ŕ˝ŕ˝ŕ˝ ŕźŕ˝Śŕž¤ŕ˝şŕ˝ŕźŕ˝ŕź'.split('_'),\n        weekdaysShort : 'ŕ˝ŕ˝˛ŕźŕ˝ŕź_ŕ˝ŕžłŕźŕ˝ŕź_ŕ˝ŕ˝˛ŕ˝ŕźŕ˝ŕ˝ŕ˝˘ŕź_ŕ˝Łŕžˇŕ˝ŕźŕ˝ŕź_ŕ˝ŕ˝´ŕ˝˘ŕźŕ˝ŕ˝´_ŕ˝ŕźŕ˝Śŕ˝ŕ˝Śŕź_ŕ˝Śŕž¤ŕ˝şŕ˝ŕźŕ˝ŕź'.split('_'),\n        weekdaysMin : 'ŕ˝ŕ˝˛ŕźŕ˝ŕź_ŕ˝ŕžłŕźŕ˝ŕź_ŕ˝ŕ˝˛ŕ˝ŕźŕ˝ŕ˝ŕ˝˘ŕź_ŕ˝Łŕžˇŕ˝ŕźŕ˝ŕź_ŕ˝ŕ˝´ŕ˝˘ŕźŕ˝ŕ˝´_ŕ˝ŕźŕ˝Śŕ˝ŕ˝Śŕź_ŕ˝Śŕž¤ŕ˝şŕ˝ŕźŕ˝ŕź'.split('_'),\n        longDateFormat : {\n            LT : 'A h:mm',\n            LTS : 'LT:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY, LT',\n            LLLL : 'dddd, D MMMM YYYY, LT'\n        },\n        calendar : {\n            sameDay : '[ŕ˝ŕ˝˛ŕźŕ˝˘ŕ˝˛ŕ˝] LT',\n            nextDay : '[ŕ˝Śŕ˝ŕźŕ˝ŕ˝˛ŕ˝] LT',\n            nextWeek : '[ŕ˝ŕ˝ŕ˝´ŕ˝ŕźŕ˝ŕž˛ŕ˝ŕźŕ˝˘ŕžŕ˝şŕ˝Śŕźŕ˝], LT',\n            lastDay : '[ŕ˝ŕźŕ˝Śŕ˝] LT',\n            lastWeek : '[ŕ˝ŕ˝ŕ˝´ŕ˝ŕźŕ˝ŕž˛ŕ˝ŕźŕ˝ŕ˝ŕ˝ ŕźŕ˝] dddd, LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : '%s ŕ˝Łŕź',\n            past : '%s ŕ˝Śŕžŕ˝ŕźŕ˝Ł',\n            s : 'ŕ˝Łŕ˝ŕźŕ˝Śŕ˝',\n            m : 'ŕ˝Śŕžŕ˝˘ŕźŕ˝ŕźŕ˝ŕ˝ŕ˝˛ŕ˝',\n            mm : '%d ŕ˝Śŕžŕ˝˘ŕźŕ˝',\n            h : 'ŕ˝ŕ˝´ŕźŕ˝ŕ˝źŕ˝ŕźŕ˝ŕ˝ŕ˝˛ŕ˝',\n            hh : '%d ŕ˝ŕ˝´ŕźŕ˝ŕ˝źŕ˝',\n            d : 'ŕ˝ŕ˝˛ŕ˝ŕźŕ˝ŕ˝ŕ˝˛ŕ˝',\n            dd : '%d ŕ˝ŕ˝˛ŕ˝ŕź',\n            M : 'ŕ˝ŕžłŕźŕ˝ŕźŕ˝ŕ˝ŕ˝˛ŕ˝',\n            MM : '%d ŕ˝ŕžłŕźŕ˝',\n            y : 'ŕ˝Łŕ˝źŕźŕ˝ŕ˝ŕ˝˛ŕ˝',\n            yy : '%d ŕ˝Łŕ˝ź'\n        },\n        preparse: function (string) {\n            return string.replace(/[ŕźĄŕź˘ŕźŁŕź¤ŕźĽŕźŚŕź§ŕź¨ŕźŠŕź ]/g, function (match) {\n                return numberMap[match];\n            });\n        },\n        postformat: function (string) {\n            return string.replace(/\\d/g, function (match) {\n                return symbolMap[match];\n            });\n        },\n        meridiemParse: /ŕ˝ŕ˝ŕ˝ŕźŕ˝ŕ˝ź|ŕ˝ŕ˝źŕ˝ŕ˝Śŕźŕ˝ŕ˝Ś|ŕ˝ŕ˝˛ŕ˝ŕźŕ˝ŕ˝´ŕ˝|ŕ˝ŕ˝ŕ˝źŕ˝ŕźŕ˝ŕ˝|ŕ˝ŕ˝ŕ˝ŕźŕ˝ŕ˝ź/,\n        isPM: function (input) {\n            return /^(ŕ˝ŕ˝˛ŕ˝ŕźŕ˝ŕ˝´ŕ˝|ŕ˝ŕ˝ŕ˝źŕ˝ŕźŕ˝ŕ˝|ŕ˝ŕ˝ŕ˝ŕźŕ˝ŕ˝ź)$/.test(input);\n        },\n        meridiem : function (hour, minute, isLower) {\n            if (hour < 4) {\n                return 'ŕ˝ŕ˝ŕ˝ŕźŕ˝ŕ˝ź';\n            } else if (hour < 10) {\n                return 'ŕ˝ŕ˝źŕ˝ŕ˝Śŕźŕ˝ŕ˝Ś';\n            } else if (hour < 17) {\n                return 'ŕ˝ŕ˝˛ŕ˝ŕźŕ˝ŕ˝´ŕ˝';\n            } else if (hour < 20) {\n                return 'ŕ˝ŕ˝ŕ˝źŕ˝ŕźŕ˝ŕ˝';\n            } else {\n                return 'ŕ˝ŕ˝ŕ˝ŕźŕ˝ŕ˝ź';\n            }\n        },\n        week : {\n            dow : 0, // Sunday is the first day of the week.\n            doy : 6  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : breton (br)\n// author : Jean-Baptiste Le Duigou : https://github.com/jbleduigou\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    function relativeTimeWithMutation(number, withoutSuffix, key) {\n        var format = {\n            'mm': 'munutenn',\n            'MM': 'miz',\n            'dd': 'devezh'\n        };\n        return number + ' ' + mutation(format[key], number);\n    }\n\n    function specialMutationForYears(number) {\n        switch (lastNumber(number)) {\n        case 1:\n        case 3:\n        case 4:\n        case 5:\n        case 9:\n            return number + ' bloaz';\n        default:\n            return number + ' vloaz';\n        }\n    }\n\n    function lastNumber(number) {\n        if (number > 9) {\n            return lastNumber(number % 10);\n        }\n        return number;\n    }\n\n    function mutation(text, number) {\n        if (number === 2) {\n            return softMutation(text);\n        }\n        return text;\n    }\n\n    function softMutation(text) {\n        var mutationTable = {\n            'm': 'v',\n            'b': 'v',\n            'd': 'z'\n        };\n        if (mutationTable[text.charAt(0)] === undefined) {\n            return text;\n        }\n        return mutationTable[text.charAt(0)] + text.substring(1);\n    }\n\n    return moment.defineLocale('br', {\n        months : 'Genver_C\\'hwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu'.split('_'),\n        monthsShort : 'Gen_C\\'hwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker'.split('_'),\n        weekdays : 'Sul_Lun_Meurzh_Merc\\'her_Yaou_Gwener_Sadorn'.split('_'),\n        weekdaysShort : 'Sul_Lun_Meu_Mer_Yao_Gwe_Sad'.split('_'),\n        weekdaysMin : 'Su_Lu_Me_Mer_Ya_Gw_Sa'.split('_'),\n        longDateFormat : {\n            LT : 'h[e]mm A',\n            LTS : 'h[e]mm:ss A',\n            L : 'DD/MM/YYYY',\n            LL : 'D [a viz] MMMM YYYY',\n            LLL : 'D [a viz] MMMM YYYY LT',\n            LLLL : 'dddd, D [a viz] MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay : '[Hiziv da] LT',\n            nextDay : '[Warc\\'hoazh da] LT',\n            nextWeek : 'dddd [da] LT',\n            lastDay : '[Dec\\'h da] LT',\n            lastWeek : 'dddd [paset da] LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'a-benn %s',\n            past : '%s \\'zo',\n            s : 'un nebeud segondennoĂš',\n            m : 'ur vunutenn',\n            mm : relativeTimeWithMutation,\n            h : 'un eur',\n            hh : '%d eur',\n            d : 'un devezh',\n            dd : relativeTimeWithMutation,\n            M : 'ur miz',\n            MM : relativeTimeWithMutation,\n            y : 'ur bloaz',\n            yy : specialMutationForYears\n        },\n        ordinalParse: /\\d{1,2}(aĂą|vet)/,\n        ordinal : function (number) {\n            var output = (number === 1) ? 'aĂą' : 'vet';\n            return number + output;\n        },\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : bosnian (bs)\n// author : Nedim Cholich : https://github.com/frontyard\n// based on (hr) translation by Bojan MarkoviÄ\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    function translate(number, withoutSuffix, key) {\n        var result = number + ' ';\n        switch (key) {\n        case 'm':\n            return withoutSuffix ? 'jedna minuta' : 'jedne minute';\n        case 'mm':\n            if (number === 1) {\n                result += 'minuta';\n            } else if (number === 2 || number === 3 || number === 4) {\n                result += 'minute';\n            } else {\n                result += 'minuta';\n            }\n            return result;\n        case 'h':\n            return withoutSuffix ? 'jedan sat' : 'jednog sata';\n        case 'hh':\n            if (number === 1) {\n                result += 'sat';\n            } else if (number === 2 || number === 3 || number === 4) {\n                result += 'sata';\n            } else {\n                result += 'sati';\n            }\n            return result;\n        case 'dd':\n            if (number === 1) {\n                result += 'dan';\n            } else {\n                result += 'dana';\n            }\n            return result;\n        case 'MM':\n            if (number === 1) {\n                result += 'mjesec';\n            } else if (number === 2 || number === 3 || number === 4) {\n                result += 'mjeseca';\n            } else {\n                result += 'mjeseci';\n            }\n            return result;\n        case 'yy':\n            if (number === 1) {\n                result += 'godina';\n            } else if (number === 2 || number === 3 || number === 4) {\n                result += 'godine';\n            } else {\n                result += 'godina';\n            }\n            return result;\n        }\n    }\n\n    return moment.defineLocale('bs', {\n        months : 'januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar'.split('_'),\n        monthsShort : 'jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.'.split('_'),\n        weekdays : 'nedjelja_ponedjeljak_utorak_srijeda_Äetvrtak_petak_subota'.split('_'),\n        weekdaysShort : 'ned._pon._uto._sri._Äet._pet._sub.'.split('_'),\n        weekdaysMin : 'ne_po_ut_sr_Äe_pe_su'.split('_'),\n        longDateFormat : {\n            LT : 'H:mm',\n            LTS : 'LT:ss',\n            L : 'DD. MM. YYYY',\n            LL : 'D. MMMM YYYY',\n            LLL : 'D. MMMM YYYY LT',\n            LLLL : 'dddd, D. MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay  : '[danas u] LT',\n            nextDay  : '[sutra u] LT',\n\n            nextWeek : function () {\n                switch (this.day()) {\n                case 0:\n                    return '[u] [nedjelju] [u] LT';\n                case 3:\n                    return '[u] [srijedu] [u] LT';\n                case 6:\n                    return '[u] [subotu] [u] LT';\n                case 1:\n                case 2:\n                case 4:\n                case 5:\n                    return '[u] dddd [u] LT';\n                }\n            },\n            lastDay  : '[juÄer u] LT',\n            lastWeek : function () {\n                switch (this.day()) {\n                case 0:\n                case 3:\n                    return '[proĹĄlu] dddd [u] LT';\n                case 6:\n                    return '[proĹĄle] [subote] [u] LT';\n                case 1:\n                case 2:\n                case 4:\n                case 5:\n                    return '[proĹĄli] dddd [u] LT';\n                }\n            },\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'za %s',\n            past   : 'prije %s',\n            s      : 'par sekundi',\n            m      : translate,\n            mm     : translate,\n            h      : translate,\n            hh     : translate,\n            d      : 'dan',\n            dd     : translate,\n            M      : 'mjesec',\n            MM     : translate,\n            y      : 'godinu',\n            yy     : translate\n        },\n        ordinalParse: /\\d{1,2}\\./,\n        ordinal : '%d.',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : catalan (ca)\n// author : Juan G. Hurtado : https://github.com/juanghurtado\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('ca', {\n        months : 'gener_febrer_marĂ§_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre'.split('_'),\n        monthsShort : 'gen._febr._mar._abr._mai._jun._jul._ag._set._oct._nov._des.'.split('_'),\n        weekdays : 'diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte'.split('_'),\n        weekdaysShort : 'dg._dl._dt._dc._dj._dv._ds.'.split('_'),\n        weekdaysMin : 'Dg_Dl_Dt_Dc_Dj_Dv_Ds'.split('_'),\n        longDateFormat : {\n            LT : 'H:mm',\n            LTS : 'LT:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd D MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay : function () {\n                return '[avui a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';\n            },\n            nextDay : function () {\n                return '[demĂ  a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';\n            },\n            nextWeek : function () {\n                return 'dddd [a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';\n            },\n            lastDay : function () {\n                return '[ahir a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';\n            },\n            lastWeek : function () {\n                return '[el] dddd [passat a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';\n            },\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'en %s',\n            past : 'fa %s',\n            s : 'uns segons',\n            m : 'un minut',\n            mm : '%d minuts',\n            h : 'una hora',\n            hh : '%d hores',\n            d : 'un dia',\n            dd : '%d dies',\n            M : 'un mes',\n            MM : '%d mesos',\n            y : 'un any',\n            yy : '%d anys'\n        },\n        ordinalParse: /\\d{1,2}(r|n|t|Ă¨|a)/,\n        ordinal : function (number, period) {\n            var output = (number === 1) ? 'r' :\n                (number === 2) ? 'n' :\n                (number === 3) ? 'r' :\n                (number === 4) ? 't' : 'Ă¨';\n            if (period === 'w' || period === 'W') {\n                output = 'a';\n            }\n            return number + output;\n        },\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : czech (cs)\n// author : petrbela : https://github.com/petrbela\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var months = 'leden_Ăşnor_bĹezen_duben_kvÄten_Äerven_Äervenec_srpen_zĂĄĹĂ­_ĹĂ­jen_listopad_prosinec'.split('_'),\n        monthsShort = 'led_Ăşno_bĹe_dub_kvÄ_Ävn_Ävc_srp_zĂĄĹ_ĹĂ­j_lis_pro'.split('_');\n\n    function plural(n) {\n        return (n > 1) && (n < 5) && (~~(n / 10) !== 1);\n    }\n\n    function translate(number, withoutSuffix, key, isFuture) {\n        var result = number + ' ';\n        switch (key) {\n        case 's':  // a few seconds / in a few seconds / a few seconds ago\n            return (withoutSuffix || isFuture) ? 'pĂĄr sekund' : 'pĂĄr sekundami';\n        case 'm':  // a minute / in a minute / a minute ago\n            return withoutSuffix ? 'minuta' : (isFuture ? 'minutu' : 'minutou');\n        case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago\n            if (withoutSuffix || isFuture) {\n                return result + (plural(number) ? 'minuty' : 'minut');\n            } else {\n                return result + 'minutami';\n            }\n            break;\n        case 'h':  // an hour / in an hour / an hour ago\n            return withoutSuffix ? 'hodina' : (isFuture ? 'hodinu' : 'hodinou');\n        case 'hh': // 9 hours / in 9 hours / 9 hours ago\n            if (withoutSuffix || isFuture) {\n                return result + (plural(number) ? 'hodiny' : 'hodin');\n            } else {\n                return result + 'hodinami';\n            }\n            break;\n        case 'd':  // a day / in a day / a day ago\n            return (withoutSuffix || isFuture) ? 'den' : 'dnem';\n        case 'dd': // 9 days / in 9 days / 9 days ago\n            if (withoutSuffix || isFuture) {\n                return result + (plural(number) ? 'dny' : 'dnĂ­');\n            } else {\n                return result + 'dny';\n            }\n            break;\n        case 'M':  // a month / in a month / a month ago\n            return (withoutSuffix || isFuture) ? 'mÄsĂ­c' : 'mÄsĂ­cem';\n        case 'MM': // 9 months / in 9 months / 9 months ago\n            if (withoutSuffix || isFuture) {\n                return result + (plural(number) ? 'mÄsĂ­ce' : 'mÄsĂ­cĹŻ');\n            } else {\n                return result + 'mÄsĂ­ci';\n            }\n            break;\n        case 'y':  // a year / in a year / a year ago\n            return (withoutSuffix || isFuture) ? 'rok' : 'rokem';\n        case 'yy': // 9 years / in 9 years / 9 years ago\n            if (withoutSuffix || isFuture) {\n                return result + (plural(number) ? 'roky' : 'let');\n            } else {\n                return result + 'lety';\n            }\n            break;\n        }\n    }\n\n    return moment.defineLocale('cs', {\n        months : months,\n        monthsShort : monthsShort,\n        monthsParse : (function (months, monthsShort) {\n            var i, _monthsParse = [];\n            for (i = 0; i < 12; i++) {\n                // use custom parser to solve problem with July (Äervenec)\n                _monthsParse[i] = new RegExp('^' + months[i] + '$|^' + monthsShort[i] + '$', 'i');\n            }\n            return _monthsParse;\n        }(months, monthsShort)),\n        weekdays : 'nedÄle_pondÄlĂ­_ĂşterĂ˝_stĹeda_Ätvrtek_pĂĄtek_sobota'.split('_'),\n        weekdaysShort : 'ne_po_Ăşt_st_Ät_pĂĄ_so'.split('_'),\n        weekdaysMin : 'ne_po_Ăşt_st_Ät_pĂĄ_so'.split('_'),\n        longDateFormat : {\n            LT: 'H:mm',\n            LTS : 'LT:ss',\n            L : 'DD.MM.YYYY',\n            LL : 'D. MMMM YYYY',\n            LLL : 'D. MMMM YYYY LT',\n            LLLL : 'dddd D. MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay: '[dnes v] LT',\n            nextDay: '[zĂ­tra v] LT',\n            nextWeek: function () {\n                switch (this.day()) {\n                case 0:\n                    return '[v nedÄli v] LT';\n                case 1:\n                case 2:\n                    return '[v] dddd [v] LT';\n                case 3:\n                    return '[ve stĹedu v] LT';\n                case 4:\n                    return '[ve Ätvrtek v] LT';\n                case 5:\n                    return '[v pĂĄtek v] LT';\n                case 6:\n                    return '[v sobotu v] LT';\n                }\n            },\n            lastDay: '[vÄera v] LT',\n            lastWeek: function () {\n                switch (this.day()) {\n                case 0:\n                    return '[minulou nedÄli v] LT';\n                case 1:\n                case 2:\n                    return '[minulĂŠ] dddd [v] LT';\n                case 3:\n                    return '[minulou stĹedu v] LT';\n                case 4:\n                case 5:\n                    return '[minulĂ˝] dddd [v] LT';\n                case 6:\n                    return '[minulou sobotu v] LT';\n                }\n            },\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : 'za %s',\n            past : 'pĹed %s',\n            s : translate,\n            m : translate,\n            mm : translate,\n            h : translate,\n            hh : translate,\n            d : translate,\n            dd : translate,\n            M : translate,\n            MM : translate,\n            y : translate,\n            yy : translate\n        },\n        ordinalParse : /\\d{1,2}\\./,\n        ordinal : '%d.',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : chuvash (cv)\n// author : Anatoly Mironov : https://github.com/mirontoli\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('cv', {\n        months : 'ĐşÄŃĐťĐ°Ń_Đ˝Đ°ŃÄŃ_ĐżŃŃ_Đ°ĐşĐ°_ĐźĐ°Đš_Ă§ÄŃŃĐźĐľ_ŃŃÄ_Ă§ŃŃĐťĐ°_Đ°Đ˛ÄĐ˝_ŃĐżĐ°_ŃÓłĐş_ŃĐ°ŃŃĐ°Đ˛'.split('_'),\n        monthsShort : 'ĐşÄŃ_Đ˝Đ°Ń_ĐżŃŃ_Đ°ĐşĐ°_ĐźĐ°Đš_Ă§ÄŃ_ŃŃÄ_Ă§ŃŃ_Đ°Đ˛_ŃĐżĐ°_ŃÓłĐş_ŃĐ°Ń'.split('_'),\n        weekdays : 'Đ˛ŃŃŃĐ°ŃĐ˝Đ¸ĐşŃĐ˝_ŃŃĐ˝ŃĐ¸ĐşŃĐ˝_ŃŃĐťĐ°ŃĐ¸ĐşŃĐ˝_ŃĐ˝ĐşŃĐ˝_ĐşÄĂ§Đ˝ĐľŃĐ˝Đ¸ĐşŃĐ˝_ŃŃĐ˝ĐľĐşŃĐ˝_ŃÄĐźĐ°ŃĐşŃĐ˝'.split('_'),\n        weekdaysShort : 'Đ˛ŃŃ_ŃŃĐ˝_ŃŃĐť_ŃĐ˝_ĐşÄĂ§_ŃŃĐ˝_ŃÄĐź'.split('_'),\n        weekdaysMin : 'Đ˛Ń_ŃĐ˝_ŃŃ_ŃĐ˝_ĐşĂ§_ŃŃ_ŃĐź'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD-MM-YYYY',\n            LL : 'YYYY [Ă§ŃĐťŃĐ¸] MMMM [ŃĐšÄŃÄĐ˝] D[-ĐźÄŃÄ]',\n            LLL : 'YYYY [Ă§ŃĐťŃĐ¸] MMMM [ŃĐšÄŃÄĐ˝] D[-ĐźÄŃÄ], LT',\n            LLLL : 'dddd, YYYY [Ă§ŃĐťŃĐ¸] MMMM [ŃĐšÄŃÄĐ˝] D[-ĐźÄŃÄ], LT'\n        },\n        calendar : {\n            sameDay: '[ĐĐ°ŃĐ˝] LT [ŃĐľŃĐľŃŃĐľ]',\n            nextDay: '[ĐŤŃĐ°Đ˝] LT [ŃĐľŃĐľŃŃĐľ]',\n            lastDay: '[ÄĐ˝ĐľŃ] LT [ŃĐľŃĐľŃŃĐľ]',\n            nextWeek: '[ĂĐ¸ŃĐľŃ] dddd LT [ŃĐľŃĐľŃŃĐľ]',\n            lastWeek: '[ĐŃŃĐ˝Ä] dddd LT [ŃĐľŃĐľŃŃĐľ]',\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : function (output) {\n                var affix = /ŃĐľŃĐľŃ$/i.exec(output) ? 'ŃĐľĐ˝' : /Ă§ŃĐť$/i.exec(output) ? 'ŃĐ°Đ˝' : 'ŃĐ°Đ˝';\n                return output + affix;\n            },\n            past : '%s ĐşĐ°ŃĐťĐťĐ°',\n            s : 'ĐżÄŃ-Đ¸Đş Ă§ĐľĐşĐşŃĐ˝Ń',\n            m : 'ĐżÄŃ ĐźĐ¸Đ˝ŃŃ',\n            mm : '%d ĐźĐ¸Đ˝ŃŃ',\n            h : 'ĐżÄŃ ŃĐľŃĐľŃ',\n            hh : '%d ŃĐľŃĐľŃ',\n            d : 'ĐżÄŃ ĐşŃĐ˝',\n            dd : '%d ĐşŃĐ˝',\n            M : 'ĐżÄŃ ŃĐšÄŃ',\n            MM : '%d ŃĐšÄŃ',\n            y : 'ĐżÄŃ Ă§ŃĐť',\n            yy : '%d Ă§ŃĐť'\n        },\n        ordinalParse: /\\d{1,2}-ĐźÄŃ/,\n        ordinal : '%d-ĐźÄŃ',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : Welsh (cy)\n// author : Robert Allen\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('cy', {\n        months: 'Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr'.split('_'),\n        monthsShort: 'Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag'.split('_'),\n        weekdays: 'Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn'.split('_'),\n        weekdaysShort: 'Sul_Llun_Maw_Mer_Iau_Gwe_Sad'.split('_'),\n        weekdaysMin: 'Su_Ll_Ma_Me_Ia_Gw_Sa'.split('_'),\n        // time formats are the same as en-gb\n        longDateFormat: {\n            LT: 'HH:mm',\n            LTS : 'LT:ss',\n            L: 'DD/MM/YYYY',\n            LL: 'D MMMM YYYY',\n            LLL: 'D MMMM YYYY LT',\n            LLLL: 'dddd, D MMMM YYYY LT'\n        },\n        calendar: {\n            sameDay: '[Heddiw am] LT',\n            nextDay: '[Yfory am] LT',\n            nextWeek: 'dddd [am] LT',\n            lastDay: '[Ddoe am] LT',\n            lastWeek: 'dddd [diwethaf am] LT',\n            sameElse: 'L'\n        },\n        relativeTime: {\n            future: 'mewn %s',\n            past: '%s yn Ă´l',\n            s: 'ychydig eiliadau',\n            m: 'munud',\n            mm: '%d munud',\n            h: 'awr',\n            hh: '%d awr',\n            d: 'diwrnod',\n            dd: '%d diwrnod',\n            M: 'mis',\n            MM: '%d mis',\n            y: 'blwyddyn',\n            yy: '%d flynedd'\n        },\n        ordinalParse: /\\d{1,2}(fed|ain|af|il|ydd|ed|eg)/,\n        // traditional ordinal numbers above 31 are not commonly used in colloquial Welsh\n        ordinal: function (number) {\n            var b = number,\n                output = '',\n                lookup = [\n                    '', 'af', 'il', 'ydd', 'ydd', 'ed', 'ed', 'ed', 'fed', 'fed', 'fed', // 1af to 10fed\n                    'eg', 'fed', 'eg', 'eg', 'fed', 'eg', 'eg', 'fed', 'eg', 'fed' // 11eg to 20fed\n                ];\n\n            if (b > 20) {\n                if (b === 40 || b === 50 || b === 60 || b === 80 || b === 100) {\n                    output = 'fed'; // not 30ain, 70ain or 90ain\n                } else {\n                    output = 'ain';\n                }\n            } else if (b > 0) {\n                output = lookup[b];\n            }\n\n            return number + output;\n        },\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : danish (da)\n// author : Ulrik Nielsen : https://github.com/mrbase\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('da', {\n        months : 'januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december'.split('_'),\n        monthsShort : 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n        weekdays : 'sĂ¸ndag_mandag_tirsdag_onsdag_torsdag_fredag_lĂ¸rdag'.split('_'),\n        weekdaysShort : 'sĂ¸n_man_tir_ons_tor_fre_lĂ¸r'.split('_'),\n        weekdaysMin : 'sĂ¸_ma_ti_on_to_fr_lĂ¸'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D. MMMM YYYY',\n            LLL : 'D. MMMM YYYY LT',\n            LLLL : 'dddd [d.] D. MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay : '[I dag kl.] LT',\n            nextDay : '[I morgen kl.] LT',\n            nextWeek : 'dddd [kl.] LT',\n            lastDay : '[I gĂĽr kl.] LT',\n            lastWeek : '[sidste] dddd [kl] LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'om %s',\n            past : '%s siden',\n            s : 'fĂĽ sekunder',\n            m : 'et minut',\n            mm : '%d minutter',\n            h : 'en time',\n            hh : '%d timer',\n            d : 'en dag',\n            dd : '%d dage',\n            M : 'en mĂĽned',\n            MM : '%d mĂĽneder',\n            y : 'et ĂĽr',\n            yy : '%d ĂĽr'\n        },\n        ordinalParse: /\\d{1,2}\\./,\n        ordinal : '%d.',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : austrian german (de-at)\n// author : lluchs : https://github.com/lluchs\n// author: Menelion ElensĂşle: https://github.com/Oire\n// author : Martin Groller : https://github.com/MadMG\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    function processRelativeTime(number, withoutSuffix, key, isFuture) {\n        var format = {\n            'm': ['eine Minute', 'einer Minute'],\n            'h': ['eine Stunde', 'einer Stunde'],\n            'd': ['ein Tag', 'einem Tag'],\n            'dd': [number + ' Tage', number + ' Tagen'],\n            'M': ['ein Monat', 'einem Monat'],\n            'MM': [number + ' Monate', number + ' Monaten'],\n            'y': ['ein Jahr', 'einem Jahr'],\n            'yy': [number + ' Jahre', number + ' Jahren']\n        };\n        return withoutSuffix ? format[key][0] : format[key][1];\n    }\n\n    return moment.defineLocale('de-at', {\n        months : 'JĂ¤nner_Februar_MĂ¤rz_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split('_'),\n        monthsShort : 'JĂ¤n._Febr._Mrz._Apr._Mai_Jun._Jul._Aug._Sept._Okt._Nov._Dez.'.split('_'),\n        weekdays : 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split('_'),\n        weekdaysShort : 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'),\n        weekdaysMin : 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n        longDateFormat : {\n            LT: 'HH:mm',\n            LTS: 'HH:mm:ss',\n            L : 'DD.MM.YYYY',\n            LL : 'D. MMMM YYYY',\n            LLL : 'D. MMMM YYYY LT',\n            LLLL : 'dddd, D. MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay: '[Heute um] LT [Uhr]',\n            sameElse: 'L',\n            nextDay: '[Morgen um] LT [Uhr]',\n            nextWeek: 'dddd [um] LT [Uhr]',\n            lastDay: '[Gestern um] LT [Uhr]',\n            lastWeek: '[letzten] dddd [um] LT [Uhr]'\n        },\n        relativeTime : {\n            future : 'in %s',\n            past : 'vor %s',\n            s : 'ein paar Sekunden',\n            m : processRelativeTime,\n            mm : '%d Minuten',\n            h : processRelativeTime,\n            hh : '%d Stunden',\n            d : processRelativeTime,\n            dd : processRelativeTime,\n            M : processRelativeTime,\n            MM : processRelativeTime,\n            y : processRelativeTime,\n            yy : processRelativeTime\n        },\n        ordinalParse: /\\d{1,2}\\./,\n        ordinal : '%d.',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : german (de)\n// author : lluchs : https://github.com/lluchs\n// author: Menelion ElensĂşle: https://github.com/Oire\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    function processRelativeTime(number, withoutSuffix, key, isFuture) {\n        var format = {\n            'm': ['eine Minute', 'einer Minute'],\n            'h': ['eine Stunde', 'einer Stunde'],\n            'd': ['ein Tag', 'einem Tag'],\n            'dd': [number + ' Tage', number + ' Tagen'],\n            'M': ['ein Monat', 'einem Monat'],\n            'MM': [number + ' Monate', number + ' Monaten'],\n            'y': ['ein Jahr', 'einem Jahr'],\n            'yy': [number + ' Jahre', number + ' Jahren']\n        };\n        return withoutSuffix ? format[key][0] : format[key][1];\n    }\n\n    return moment.defineLocale('de', {\n        months : 'Januar_Februar_MĂ¤rz_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split('_'),\n        monthsShort : 'Jan._Febr._Mrz._Apr._Mai_Jun._Jul._Aug._Sept._Okt._Nov._Dez.'.split('_'),\n        weekdays : 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split('_'),\n        weekdaysShort : 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'),\n        weekdaysMin : 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),\n        longDateFormat : {\n            LT: 'HH:mm',\n            LTS: 'HH:mm:ss',\n            L : 'DD.MM.YYYY',\n            LL : 'D. MMMM YYYY',\n            LLL : 'D. MMMM YYYY LT',\n            LLLL : 'dddd, D. MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay: '[Heute um] LT [Uhr]',\n            sameElse: 'L',\n            nextDay: '[Morgen um] LT [Uhr]',\n            nextWeek: 'dddd [um] LT [Uhr]',\n            lastDay: '[Gestern um] LT [Uhr]',\n            lastWeek: '[letzten] dddd [um] LT [Uhr]'\n        },\n        relativeTime : {\n            future : 'in %s',\n            past : 'vor %s',\n            s : 'ein paar Sekunden',\n            m : processRelativeTime,\n            mm : '%d Minuten',\n            h : processRelativeTime,\n            hh : '%d Stunden',\n            d : processRelativeTime,\n            dd : processRelativeTime,\n            M : processRelativeTime,\n            MM : processRelativeTime,\n            y : processRelativeTime,\n            yy : processRelativeTime\n        },\n        ordinalParse: /\\d{1,2}\\./,\n        ordinal : '%d.',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : modern greek (el)\n// author : Aggelos Karalias : https://github.com/mehiel\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('el', {\n        monthsNominativeEl : 'ÎÎąÎ˝ÎżĎÎŹĎÎšÎżĎ_ÎŚÎľÎ˛ĎÎżĎÎŹĎÎšÎżĎ_ÎÎŹĎĎÎšÎżĎ_ÎĎĎÎŻÎťÎšÎżĎ_ÎÎŹÎšÎżĎ_ÎÎżĎÎ˝ÎšÎżĎ_ÎÎżĎÎťÎšÎżĎ_ÎĎÎłÎżĎĎĎÎżĎ_ÎŁÎľĎĎÎ­ÎźÎ˛ĎÎšÎżĎ_ÎÎşĎĎÎ˛ĎÎšÎżĎ_ÎÎżÎ­ÎźÎ˛ĎÎšÎżĎ_ÎÎľÎşÎ­ÎźÎ˛ĎÎšÎżĎ'.split('_'),\n        monthsGenitiveEl : 'ÎÎąÎ˝ÎżĎÎąĎÎŻÎżĎ_ÎŚÎľÎ˛ĎÎżĎÎąĎÎŻÎżĎ_ÎÎąĎĎÎŻÎżĎ_ÎĎĎÎšÎťÎŻÎżĎ_ÎÎąÎÎżĎ_ÎÎżĎÎ˝ÎŻÎżĎ_ÎÎżĎÎťÎŻÎżĎ_ÎĎÎłÎżĎĎĎÎżĎ_ÎŁÎľĎĎÎľÎźÎ˛ĎÎŻÎżĎ_ÎÎşĎĎÎ˛ĎÎŻÎżĎ_ÎÎżÎľÎźÎ˛ĎÎŻÎżĎ_ÎÎľÎşÎľÎźÎ˛ĎÎŻÎżĎ'.split('_'),\n        months : function (momentToFormat, format) {\n            if (/D/.test(format.substring(0, format.indexOf('MMMM')))) { // if there is a day number before 'MMMM'\n                return this._monthsGenitiveEl[momentToFormat.month()];\n            } else {\n                return this._monthsNominativeEl[momentToFormat.month()];\n            }\n        },\n        monthsShort : 'ÎÎąÎ˝_ÎŚÎľÎ˛_ÎÎąĎ_ÎĎĎ_ÎÎąĎ_ÎÎżĎÎ˝_ÎÎżĎÎť_ÎĎÎł_ÎŁÎľĎ_ÎÎşĎ_ÎÎżÎľ_ÎÎľÎş'.split('_'),\n        weekdays : 'ÎĎĎÎšÎąÎşÎŽ_ÎÎľĎĎÎ­ĎÎą_Î¤ĎÎŻĎÎˇ_Î¤ÎľĎÎŹĎĎÎˇ_Î Î­ÎźĎĎÎˇ_Î ÎąĎÎąĎÎşÎľĎÎŽ_ÎŁÎŹÎ˛Î˛ÎąĎÎż'.split('_'),\n        weekdaysShort : 'ÎĎĎ_ÎÎľĎ_Î¤ĎÎš_Î¤ÎľĎ_Î ÎľÎź_Î ÎąĎ_ÎŁÎąÎ˛'.split('_'),\n        weekdaysMin : 'ÎĎ_ÎÎľ_Î¤Ď_Î¤Îľ_Î Îľ_Î Îą_ÎŁÎą'.split('_'),\n        meridiem : function (hours, minutes, isLower) {\n            if (hours > 11) {\n                return isLower ? 'ÎźÎź' : 'ÎÎ';\n            } else {\n                return isLower ? 'ĎÎź' : 'Î Î';\n            }\n        },\n        isPM : function (input) {\n            return ((input + '').toLowerCase()[0] === 'Îź');\n        },\n        meridiemParse : /[Î Î]\\.?Î?\\.?/i,\n        longDateFormat : {\n            LT : 'h:mm A',\n            LTS : 'h:mm:ss A',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd, D MMMM YYYY LT'\n        },\n        calendarEl : {\n            sameDay : '[ÎŁÎŽÎźÎľĎÎą {}] LT',\n            nextDay : '[ÎĎĎÎšÎż {}] LT',\n            nextWeek : 'dddd [{}] LT',\n            lastDay : '[Î§Î¸ÎľĎ {}] LT',\n            lastWeek : function () {\n                switch (this.day()) {\n                    case 6:\n                        return '[ĎÎż ĎĎÎżÎˇÎłÎżĎÎźÎľÎ˝Îż] dddd [{}] LT';\n                    default:\n                        return '[ĎÎˇÎ˝ ĎĎÎżÎˇÎłÎżĎÎźÎľÎ˝Îˇ] dddd [{}] LT';\n                }\n            },\n            sameElse : 'L'\n        },\n        calendar : function (key, mom) {\n            var output = this._calendarEl[key],\n                hours = mom && mom.hours();\n\n            if (typeof output === 'function') {\n                output = output.apply(mom);\n            }\n\n            return output.replace('{}', (hours % 12 === 1 ? 'ĎĎÎˇ' : 'ĎĎÎšĎ'));\n        },\n        relativeTime : {\n            future : 'ĎÎľ %s',\n            past : '%s ĎĎÎšÎ˝',\n            s : 'ÎťÎŻÎłÎą Î´ÎľĎĎÎľĎĎÎťÎľĎĎÎą',\n            m : 'Î­Î˝Îą ÎťÎľĎĎĎ',\n            mm : '%d ÎťÎľĎĎÎŹ',\n            h : 'ÎźÎŻÎą ĎĎÎą',\n            hh : '%d ĎĎÎľĎ',\n            d : 'ÎźÎŻÎą ÎźÎ­ĎÎą',\n            dd : '%d ÎźÎ­ĎÎľĎ',\n            M : 'Î­Î˝ÎąĎ ÎźÎŽÎ˝ÎąĎ',\n            MM : '%d ÎźÎŽÎ˝ÎľĎ',\n            y : 'Î­Î˝ÎąĎ ĎĎĎÎ˝ÎżĎ',\n            yy : '%d ĎĎĎÎ˝ÎšÎą'\n        },\n        ordinalParse: /\\d{1,2}Îˇ/,\n        ordinal: '%dÎˇ',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : australian english (en-au)\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('en-au', {\n        months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),\n        monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n        weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n        weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n        weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n        longDateFormat : {\n            LT : 'h:mm A',\n            LTS : 'h:mm:ss A',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd, D MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay : '[Today at] LT',\n            nextDay : '[Tomorrow at] LT',\n            nextWeek : 'dddd [at] LT',\n            lastDay : '[Yesterday at] LT',\n            lastWeek : '[Last] dddd [at] LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'in %s',\n            past : '%s ago',\n            s : 'a few seconds',\n            m : 'a minute',\n            mm : '%d minutes',\n            h : 'an hour',\n            hh : '%d hours',\n            d : 'a day',\n            dd : '%d days',\n            M : 'a month',\n            MM : '%d months',\n            y : 'a year',\n            yy : '%d years'\n        },\n        ordinalParse: /\\d{1,2}(st|nd|rd|th)/,\n        ordinal : function (number) {\n            var b = number % 10,\n                output = (~~(number % 100 / 10) === 1) ? 'th' :\n                (b === 1) ? 'st' :\n                (b === 2) ? 'nd' :\n                (b === 3) ? 'rd' : 'th';\n            return number + output;\n        },\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : canadian english (en-ca)\n// author : Jonathan Abourbih : https://github.com/jonbca\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('en-ca', {\n        months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),\n        monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n        weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n        weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n        weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n        longDateFormat : {\n            LT : 'h:mm A',\n            LTS : 'h:mm:ss A',\n            L : 'YYYY-MM-DD',\n            LL : 'D MMMM, YYYY',\n            LLL : 'D MMMM, YYYY LT',\n            LLLL : 'dddd, D MMMM, YYYY LT'\n        },\n        calendar : {\n            sameDay : '[Today at] LT',\n            nextDay : '[Tomorrow at] LT',\n            nextWeek : 'dddd [at] LT',\n            lastDay : '[Yesterday at] LT',\n            lastWeek : '[Last] dddd [at] LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'in %s',\n            past : '%s ago',\n            s : 'a few seconds',\n            m : 'a minute',\n            mm : '%d minutes',\n            h : 'an hour',\n            hh : '%d hours',\n            d : 'a day',\n            dd : '%d days',\n            M : 'a month',\n            MM : '%d months',\n            y : 'a year',\n            yy : '%d years'\n        },\n        ordinalParse: /\\d{1,2}(st|nd|rd|th)/,\n        ordinal : function (number) {\n            var b = number % 10,\n                output = (~~(number % 100 / 10) === 1) ? 'th' :\n                (b === 1) ? 'st' :\n                (b === 2) ? 'nd' :\n                (b === 3) ? 'rd' : 'th';\n            return number + output;\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : great britain english (en-gb)\n// author : Chris Gedrim : https://github.com/chrisgedrim\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('en-gb', {\n        months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),\n        monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),\n        weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),\n        weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),\n        weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'HH:mm:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd, D MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay : '[Today at] LT',\n            nextDay : '[Tomorrow at] LT',\n            nextWeek : 'dddd [at] LT',\n            lastDay : '[Yesterday at] LT',\n            lastWeek : '[Last] dddd [at] LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'in %s',\n            past : '%s ago',\n            s : 'a few seconds',\n            m : 'a minute',\n            mm : '%d minutes',\n            h : 'an hour',\n            hh : '%d hours',\n            d : 'a day',\n            dd : '%d days',\n            M : 'a month',\n            MM : '%d months',\n            y : 'a year',\n            yy : '%d years'\n        },\n        ordinalParse: /\\d{1,2}(st|nd|rd|th)/,\n        ordinal : function (number) {\n            var b = number % 10,\n                output = (~~(number % 100 / 10) === 1) ? 'th' :\n                (b === 1) ? 'st' :\n                (b === 2) ? 'nd' :\n                (b === 3) ? 'rd' : 'th';\n            return number + output;\n        },\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : esperanto (eo)\n// author : Colin Dean : https://github.com/colindean\n// komento: Mi estas malcerta se mi korekte traktis akuzativojn en tiu traduko.\n//          Se ne, bonvolu korekti kaj avizi min por ke mi povas lerni!\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('eo', {\n        months : 'januaro_februaro_marto_aprilo_majo_junio_julio_aĹ­gusto_septembro_oktobro_novembro_decembro'.split('_'),\n        monthsShort : 'jan_feb_mar_apr_maj_jun_jul_aĹ­g_sep_okt_nov_dec'.split('_'),\n        weekdays : 'DimanÄo_Lundo_Mardo_Merkredo_Ä´aĹ­do_Vendredo_Sabato'.split('_'),\n        weekdaysShort : 'Dim_Lun_Mard_Merk_Ä´aĹ­_Ven_Sab'.split('_'),\n        weekdaysMin : 'Di_Lu_Ma_Me_Ä´a_Ve_Sa'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'YYYY-MM-DD',\n            LL : 'D[-an de] MMMM, YYYY',\n            LLL : 'D[-an de] MMMM, YYYY LT',\n            LLLL : 'dddd, [la] D[-an de] MMMM, YYYY LT'\n        },\n        meridiemParse: /[ap]\\.t\\.m/i,\n        isPM: function (input) {\n            return input.charAt(0).toLowerCase() === 'p';\n        },\n        meridiem : function (hours, minutes, isLower) {\n            if (hours > 11) {\n                return isLower ? 'p.t.m.' : 'P.T.M.';\n            } else {\n                return isLower ? 'a.t.m.' : 'A.T.M.';\n            }\n        },\n        calendar : {\n            sameDay : '[HodiaĹ­ je] LT',\n            nextDay : '[MorgaĹ­ je] LT',\n            nextWeek : 'dddd [je] LT',\n            lastDay : '[HieraĹ­ je] LT',\n            lastWeek : '[pasinta] dddd [je] LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'je %s',\n            past : 'antaĹ­ %s',\n            s : 'sekundoj',\n            m : 'minuto',\n            mm : '%d minutoj',\n            h : 'horo',\n            hh : '%d horoj',\n            d : 'tago',//ne 'diurno', Äar estas uzita por proksimumo\n            dd : '%d tagoj',\n            M : 'monato',\n            MM : '%d monatoj',\n            y : 'jaro',\n            yy : '%d jaroj'\n        },\n        ordinalParse: /\\d{1,2}a/,\n        ordinal : '%da',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : spanish (es)\n// author : Julio NapurĂ­ : https://github.com/julionc\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var monthsShortDot = 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split('_'),\n        monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_');\n\n    return moment.defineLocale('es', {\n        months : 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split('_'),\n        monthsShort : function (m, format) {\n            if (/-MMM-/.test(format)) {\n                return monthsShort[m.month()];\n            } else {\n                return monthsShortDot[m.month()];\n            }\n        },\n        weekdays : 'domingo_lunes_martes_miĂŠrcoles_jueves_viernes_sĂĄbado'.split('_'),\n        weekdaysShort : 'dom._lun._mar._miĂŠ._jue._vie._sĂĄb.'.split('_'),\n        weekdaysMin : 'Do_Lu_Ma_Mi_Ju_Vi_SĂĄ'.split('_'),\n        longDateFormat : {\n            LT : 'H:mm',\n            LTS : 'LT:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D [de] MMMM [de] YYYY',\n            LLL : 'D [de] MMMM [de] YYYY LT',\n            LLLL : 'dddd, D [de] MMMM [de] YYYY LT'\n        },\n        calendar : {\n            sameDay : function () {\n                return '[hoy a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n            },\n            nextDay : function () {\n                return '[maĂąana a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n            },\n            nextWeek : function () {\n                return 'dddd [a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n            },\n            lastDay : function () {\n                return '[ayer a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n            },\n            lastWeek : function () {\n                return '[el] dddd [pasado a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';\n            },\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'en %s',\n            past : 'hace %s',\n            s : 'unos segundos',\n            m : 'un minuto',\n            mm : '%d minutos',\n            h : 'una hora',\n            hh : '%d horas',\n            d : 'un dĂ­a',\n            dd : '%d dĂ­as',\n            M : 'un mes',\n            MM : '%d meses',\n            y : 'un aĂąo',\n            yy : '%d aĂąos'\n        },\n        ordinalParse : /\\d{1,2}Âş/,\n        ordinal : '%dÂş',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : estonian (et)\n// author : Henry Kehlmann : https://github.com/madhenry\n// improvements : Illimar Tambek : https://github.com/ragulka\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    function processRelativeTime(number, withoutSuffix, key, isFuture) {\n        var format = {\n            's' : ['mĂľne sekundi', 'mĂľni sekund', 'paar sekundit'],\n            'm' : ['Ăźhe minuti', 'Ăźks minut'],\n            'mm': [number + ' minuti', number + ' minutit'],\n            'h' : ['Ăźhe tunni', 'tund aega', 'Ăźks tund'],\n            'hh': [number + ' tunni', number + ' tundi'],\n            'd' : ['Ăźhe pĂ¤eva', 'Ăźks pĂ¤ev'],\n            'M' : ['kuu aja', 'kuu aega', 'Ăźks kuu'],\n            'MM': [number + ' kuu', number + ' kuud'],\n            'y' : ['Ăźhe aasta', 'aasta', 'Ăźks aasta'],\n            'yy': [number + ' aasta', number + ' aastat']\n        };\n        if (withoutSuffix) {\n            return format[key][2] ? format[key][2] : format[key][1];\n        }\n        return isFuture ? format[key][0] : format[key][1];\n    }\n\n    return moment.defineLocale('et', {\n        months        : 'jaanuar_veebruar_mĂ¤rts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember'.split('_'),\n        monthsShort   : 'jaan_veebr_mĂ¤rts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets'.split('_'),\n        weekdays      : 'pĂźhapĂ¤ev_esmaspĂ¤ev_teisipĂ¤ev_kolmapĂ¤ev_neljapĂ¤ev_reede_laupĂ¤ev'.split('_'),\n        weekdaysShort : 'P_E_T_K_N_R_L'.split('_'),\n        weekdaysMin   : 'P_E_T_K_N_R_L'.split('_'),\n        longDateFormat : {\n            LT   : 'H:mm',\n            LTS : 'LT:ss',\n            L    : 'DD.MM.YYYY',\n            LL   : 'D. MMMM YYYY',\n            LLL  : 'D. MMMM YYYY LT',\n            LLLL : 'dddd, D. MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay  : '[TĂ¤na,] LT',\n            nextDay  : '[Homme,] LT',\n            nextWeek : '[JĂ¤rgmine] dddd LT',\n            lastDay  : '[Eile,] LT',\n            lastWeek : '[Eelmine] dddd LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : '%s pĂ¤rast',\n            past   : '%s tagasi',\n            s      : processRelativeTime,\n            m      : processRelativeTime,\n            mm     : processRelativeTime,\n            h      : processRelativeTime,\n            hh     : processRelativeTime,\n            d      : processRelativeTime,\n            dd     : '%d pĂ¤eva',\n            M      : processRelativeTime,\n            MM     : processRelativeTime,\n            y      : processRelativeTime,\n            yy     : processRelativeTime\n        },\n        ordinalParse: /\\d{1,2}\\./,\n        ordinal : '%d.',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : euskara (eu)\n// author : Eneko Illarramendi : https://github.com/eillarra\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('eu', {\n        months : 'urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua'.split('_'),\n        monthsShort : 'urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.'.split('_'),\n        weekdays : 'igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata'.split('_'),\n        weekdaysShort : 'ig._al._ar._az._og._ol._lr.'.split('_'),\n        weekdaysMin : 'ig_al_ar_az_og_ol_lr'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'YYYY-MM-DD',\n            LL : 'YYYY[ko] MMMM[ren] D[a]',\n            LLL : 'YYYY[ko] MMMM[ren] D[a] LT',\n            LLLL : 'dddd, YYYY[ko] MMMM[ren] D[a] LT',\n            l : 'YYYY-M-D',\n            ll : 'YYYY[ko] MMM D[a]',\n            lll : 'YYYY[ko] MMM D[a] LT',\n            llll : 'ddd, YYYY[ko] MMM D[a] LT'\n        },\n        calendar : {\n            sameDay : '[gaur] LT[etan]',\n            nextDay : '[bihar] LT[etan]',\n            nextWeek : 'dddd LT[etan]',\n            lastDay : '[atzo] LT[etan]',\n            lastWeek : '[aurreko] dddd LT[etan]',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : '%s barru',\n            past : 'duela %s',\n            s : 'segundo batzuk',\n            m : 'minutu bat',\n            mm : '%d minutu',\n            h : 'ordu bat',\n            hh : '%d ordu',\n            d : 'egun bat',\n            dd : '%d egun',\n            M : 'hilabete bat',\n            MM : '%d hilabete',\n            y : 'urte bat',\n            yy : '%d urte'\n        },\n        ordinalParse: /\\d{1,2}\\./,\n        ordinal : '%d.',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : Persian (fa)\n// author : Ebrahim Byagowi : https://github.com/ebraminio\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var symbolMap = {\n        '1': 'Űą',\n        '2': 'Ű˛',\n        '3': 'Űł',\n        '4': 'Ű´',\n        '5': 'Űľ',\n        '6': 'Űś',\n        '7': 'Űˇ',\n        '8': 'Ű¸',\n        '9': 'Űš',\n        '0': 'Ű°'\n    }, numberMap = {\n        'Űą': '1',\n        'Ű˛': '2',\n        'Űł': '3',\n        'Ű´': '4',\n        'Űľ': '5',\n        'Űś': '6',\n        'Űˇ': '7',\n        'Ű¸': '8',\n        'Űš': '9',\n        'Ű°': '0'\n    };\n\n    return moment.defineLocale('fa', {\n        months : 'ÚŘ§ŮŮŰŮ_ŮŮŘąŰŮ_ŮŘ§ŘąŘł_Ř˘ŮŘąŰŮ_ŮŮ_ÚŮŘŚŮ_ÚŮŘŚŰŮ_Ř§ŮŘŞ_ŘłŮžŘŞŘ§ŮŘ¨Řą_Ř§ÚŠŘŞŘ¨Řą_ŮŮŘ§ŮŘ¨Řą_ŘŻŘłŘ§ŮŘ¨Řą'.split('_'),\n        monthsShort : 'ÚŘ§ŮŮŰŮ_ŮŮŘąŰŮ_ŮŘ§ŘąŘł_Ř˘ŮŘąŰŮ_ŮŮ_ÚŮŘŚŮ_ÚŮŘŚŰŮ_Ř§ŮŘŞ_ŘłŮžŘŞŘ§ŮŘ¨Řą_Ř§ÚŠŘŞŘ¨Řą_ŮŮŘ§ŮŘ¨Řą_ŘŻŘłŘ§ŮŘ¨Řą'.split('_'),\n        weekdays : 'ŰÚŠ\\u200cŘ´ŮŘ¨Ů_ŘŻŮŘ´ŮŘ¨Ů_ŘłŮ\\u200cŘ´ŮŘ¨Ů_ÚŮŘ§ŘąŘ´ŮŘ¨Ů_ŮžŮŘŹ\\u200cŘ´ŮŘ¨Ů_ŘŹŮŘšŮ_Ř´ŮŘ¨Ů'.split('_'),\n        weekdaysShort : 'ŰÚŠ\\u200cŘ´ŮŘ¨Ů_ŘŻŮŘ´ŮŘ¨Ů_ŘłŮ\\u200cŘ´ŮŘ¨Ů_ÚŮŘ§ŘąŘ´ŮŘ¨Ů_ŮžŮŘŹ\\u200cŘ´ŮŘ¨Ů_ŘŹŮŘšŮ_Ř´ŮŘ¨Ů'.split('_'),\n        weekdaysMin : 'Ű_ŘŻ_Řł_Ú_Ůž_ŘŹ_Ř´'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd, D MMMM YYYY LT'\n        },\n        meridiemParse: /ŮŘ¨Ů Ř§Ř˛ Ř¸ŮŘą|Ř¨ŘšŘŻ Ř§Ř˛ Ř¸ŮŘą/,\n        isPM: function (input) {\n            return /Ř¨ŘšŘŻ Ř§Ř˛ Ř¸ŮŘą/.test(input);\n        },\n        meridiem : function (hour, minute, isLower) {\n            if (hour < 12) {\n                return 'ŮŘ¨Ů Ř§Ř˛ Ř¸ŮŘą';\n            } else {\n                return 'Ř¨ŘšŘŻ Ř§Ř˛ Ř¸ŮŘą';\n            }\n        },\n        calendar : {\n            sameDay : '[Ř§ŮŘąŮŘ˛ ŘłŘ§ŘšŘŞ] LT',\n            nextDay : '[ŮŘąŘŻŘ§ ŘłŘ§ŘšŘŞ] LT',\n            nextWeek : 'dddd [ŘłŘ§ŘšŘŞ] LT',\n            lastDay : '[ŘŻŰŘąŮŘ˛ ŘłŘ§ŘšŘŞ] LT',\n            lastWeek : 'dddd [ŮžŰŘ´] [ŘłŘ§ŘšŘŞ] LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'ŘŻŘą %s',\n            past : '%s ŮžŰŘ´',\n            s : 'ÚŮŘŻŰŮ ŘŤŘ§ŮŰŮ',\n            m : 'ŰÚŠ ŘŻŮŰŮŮ',\n            mm : '%d ŘŻŮŰŮŮ',\n            h : 'ŰÚŠ ŘłŘ§ŘšŘŞ',\n            hh : '%d ŘłŘ§ŘšŘŞ',\n            d : 'ŰÚŠ ŘąŮŘ˛',\n            dd : '%d ŘąŮŘ˛',\n            M : 'ŰÚŠ ŮŘ§Ů',\n            MM : '%d ŮŘ§Ů',\n            y : 'ŰÚŠ ŘłŘ§Ů',\n            yy : '%d ŘłŘ§Ů'\n        },\n        preparse: function (string) {\n            return string.replace(/[Ű°-Űš]/g, function (match) {\n                return numberMap[match];\n            }).replace(/Ř/g, ',');\n        },\n        postformat: function (string) {\n            return string.replace(/\\d/g, function (match) {\n                return symbolMap[match];\n            }).replace(/,/g, 'Ř');\n        },\n        ordinalParse: /\\d{1,2}Ů/,\n        ordinal : '%dŮ',\n        week : {\n            dow : 6, // Saturday is the first day of the week.\n            doy : 12 // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : finnish (fi)\n// author : Tarmo Aidantausta : https://github.com/bleadof\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var numbersPast = 'nolla yksi kaksi kolme neljĂ¤ viisi kuusi seitsemĂ¤n kahdeksan yhdeksĂ¤n'.split(' '),\n        numbersFuture = [\n            'nolla', 'yhden', 'kahden', 'kolmen', 'neljĂ¤n', 'viiden', 'kuuden',\n            numbersPast[7], numbersPast[8], numbersPast[9]\n        ];\n\n    function translate(number, withoutSuffix, key, isFuture) {\n        var result = '';\n        switch (key) {\n        case 's':\n            return isFuture ? 'muutaman sekunnin' : 'muutama sekunti';\n        case 'm':\n            return isFuture ? 'minuutin' : 'minuutti';\n        case 'mm':\n            result = isFuture ? 'minuutin' : 'minuuttia';\n            break;\n        case 'h':\n            return isFuture ? 'tunnin' : 'tunti';\n        case 'hh':\n            result = isFuture ? 'tunnin' : 'tuntia';\n            break;\n        case 'd':\n            return isFuture ? 'pĂ¤ivĂ¤n' : 'pĂ¤ivĂ¤';\n        case 'dd':\n            result = isFuture ? 'pĂ¤ivĂ¤n' : 'pĂ¤ivĂ¤Ă¤';\n            break;\n        case 'M':\n            return isFuture ? 'kuukauden' : 'kuukausi';\n        case 'MM':\n            result = isFuture ? 'kuukauden' : 'kuukautta';\n            break;\n        case 'y':\n            return isFuture ? 'vuoden' : 'vuosi';\n        case 'yy':\n            result = isFuture ? 'vuoden' : 'vuotta';\n            break;\n        }\n        result = verbalNumber(number, isFuture) + ' ' + result;\n        return result;\n    }\n\n    function verbalNumber(number, isFuture) {\n        return number < 10 ? (isFuture ? numbersFuture[number] : numbersPast[number]) : number;\n    }\n\n    return moment.defineLocale('fi', {\n        months : 'tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesĂ¤kuu_heinĂ¤kuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu'.split('_'),\n        monthsShort : 'tammi_helmi_maalis_huhti_touko_kesĂ¤_heinĂ¤_elo_syys_loka_marras_joulu'.split('_'),\n        weekdays : 'sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai'.split('_'),\n        weekdaysShort : 'su_ma_ti_ke_to_pe_la'.split('_'),\n        weekdaysMin : 'su_ma_ti_ke_to_pe_la'.split('_'),\n        longDateFormat : {\n            LT : 'HH.mm',\n            LTS : 'HH.mm.ss',\n            L : 'DD.MM.YYYY',\n            LL : 'Do MMMM[ta] YYYY',\n            LLL : 'Do MMMM[ta] YYYY, [klo] LT',\n            LLLL : 'dddd, Do MMMM[ta] YYYY, [klo] LT',\n            l : 'D.M.YYYY',\n            ll : 'Do MMM YYYY',\n            lll : 'Do MMM YYYY, [klo] LT',\n            llll : 'ddd, Do MMM YYYY, [klo] LT'\n        },\n        calendar : {\n            sameDay : '[tĂ¤nĂ¤Ă¤n] [klo] LT',\n            nextDay : '[huomenna] [klo] LT',\n            nextWeek : 'dddd [klo] LT',\n            lastDay : '[eilen] [klo] LT',\n            lastWeek : '[viime] dddd[na] [klo] LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : '%s pĂ¤Ă¤stĂ¤',\n            past : '%s sitten',\n            s : translate,\n            m : translate,\n            mm : translate,\n            h : translate,\n            hh : translate,\n            d : translate,\n            dd : translate,\n            M : translate,\n            MM : translate,\n            y : translate,\n            yy : translate\n        },\n        ordinalParse: /\\d{1,2}\\./,\n        ordinal : '%d.',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : faroese (fo)\n// author : Ragnar Johannesen : https://github.com/ragnar123\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('fo', {\n        months : 'januar_februar_mars_aprĂ­l_mai_juni_juli_august_september_oktober_november_desember'.split('_'),\n        monthsShort : 'jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'),\n        weekdays : 'sunnudagur_mĂĄnadagur_tĂ˝sdagur_mikudagur_hĂłsdagur_frĂ­ggjadagur_leygardagur'.split('_'),\n        weekdaysShort : 'sun_mĂĄn_tĂ˝s_mik_hĂłs_frĂ­_ley'.split('_'),\n        weekdaysMin : 'su_mĂĄ_tĂ˝_mi_hĂł_fr_le'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd D. MMMM, YYYY LT'\n        },\n        calendar : {\n            sameDay : '[Ă dag kl.] LT',\n            nextDay : '[Ă morgin kl.] LT',\n            nextWeek : 'dddd [kl.] LT',\n            lastDay : '[Ă gjĂĄr kl.] LT',\n            lastWeek : '[sĂ­Ă°stu] dddd [kl] LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'um %s',\n            past : '%s sĂ­Ă°ani',\n            s : 'fĂĄ sekund',\n            m : 'ein minutt',\n            mm : '%d minuttir',\n            h : 'ein tĂ­mi',\n            hh : '%d tĂ­mar',\n            d : 'ein dagur',\n            dd : '%d dagar',\n            M : 'ein mĂĄnaĂ°i',\n            MM : '%d mĂĄnaĂ°ir',\n            y : 'eitt ĂĄr',\n            yy : '%d ĂĄr'\n        },\n        ordinalParse: /\\d{1,2}\\./,\n        ordinal : '%d.',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : canadian french (fr-ca)\n// author : Jonathan Abourbih : https://github.com/jonbca\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('fr-ca', {\n        months : 'janvier_fĂŠvrier_mars_avril_mai_juin_juillet_aoĂťt_septembre_octobre_novembre_dĂŠcembre'.split('_'),\n        monthsShort : 'janv._fĂŠvr._mars_avr._mai_juin_juil._aoĂťt_sept._oct._nov._dĂŠc.'.split('_'),\n        weekdays : 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n        weekdaysShort : 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n        weekdaysMin : 'Di_Lu_Ma_Me_Je_Ve_Sa'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'YYYY-MM-DD',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd D MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay: '[Aujourd\\'hui Ă ] LT',\n            nextDay: '[Demain Ă ] LT',\n            nextWeek: 'dddd [Ă ] LT',\n            lastDay: '[Hier Ă ] LT',\n            lastWeek: 'dddd [dernier Ă ] LT',\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : 'dans %s',\n            past : 'il y a %s',\n            s : 'quelques secondes',\n            m : 'une minute',\n            mm : '%d minutes',\n            h : 'une heure',\n            hh : '%d heures',\n            d : 'un jour',\n            dd : '%d jours',\n            M : 'un mois',\n            MM : '%d mois',\n            y : 'un an',\n            yy : '%d ans'\n        },\n        ordinalParse: /\\d{1,2}(er|)/,\n        ordinal : function (number) {\n            return number + (number === 1 ? 'er' : '');\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : french (fr)\n// author : John Fischer : https://github.com/jfroffice\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('fr', {\n        months : 'janvier_fĂŠvrier_mars_avril_mai_juin_juillet_aoĂťt_septembre_octobre_novembre_dĂŠcembre'.split('_'),\n        monthsShort : 'janv._fĂŠvr._mars_avr._mai_juin_juil._aoĂťt_sept._oct._nov._dĂŠc.'.split('_'),\n        weekdays : 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),\n        weekdaysShort : 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),\n        weekdaysMin : 'Di_Lu_Ma_Me_Je_Ve_Sa'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd D MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay: '[Aujourd\\'hui Ă ] LT',\n            nextDay: '[Demain Ă ] LT',\n            nextWeek: 'dddd [Ă ] LT',\n            lastDay: '[Hier Ă ] LT',\n            lastWeek: 'dddd [dernier Ă ] LT',\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : 'dans %s',\n            past : 'il y a %s',\n            s : 'quelques secondes',\n            m : 'une minute',\n            mm : '%d minutes',\n            h : 'une heure',\n            hh : '%d heures',\n            d : 'un jour',\n            dd : '%d jours',\n            M : 'un mois',\n            MM : '%d mois',\n            y : 'un an',\n            yy : '%d ans'\n        },\n        ordinalParse: /\\d{1,2}(er|)/,\n        ordinal : function (number) {\n            return number + (number === 1 ? 'er' : '');\n        },\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : frisian (fy)\n// author : Robin van der Vliet : https://github.com/robin0van0der0v\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var monthsShortWithDots = 'jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.'.split('_'),\n        monthsShortWithoutDots = 'jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_');\n\n    return moment.defineLocale('fy', {\n        months : 'jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber'.split('_'),\n        monthsShort : function (m, format) {\n            if (/-MMM-/.test(format)) {\n                return monthsShortWithoutDots[m.month()];\n            } else {\n                return monthsShortWithDots[m.month()];\n            }\n        },\n        weekdays : 'snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon'.split('_'),\n        weekdaysShort : 'si._mo._ti._wo._to._fr._so.'.split('_'),\n        weekdaysMin : 'Si_Mo_Ti_Wo_To_Fr_So'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD-MM-YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd D MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay: '[hjoed om] LT',\n            nextDay: '[moarn om] LT',\n            nextWeek: 'dddd [om] LT',\n            lastDay: '[juster om] LT',\n            lastWeek: '[Ă´frĂťne] dddd [om] LT',\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : 'oer %s',\n            past : '%s lyn',\n            s : 'in pear sekonden',\n            m : 'ien minĂşt',\n            mm : '%d minuten',\n            h : 'ien oere',\n            hh : '%d oeren',\n            d : 'ien dei',\n            dd : '%d dagen',\n            M : 'ien moanne',\n            MM : '%d moannen',\n            y : 'ien jier',\n            yy : '%d jierren'\n        },\n        ordinalParse: /\\d{1,2}(ste|de)/,\n        ordinal : function (number) {\n            return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de');\n        },\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : galician (gl)\n// author : Juan G. Hurtado : https://github.com/juanghurtado\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('gl', {\n        months : 'Xaneiro_Febreiro_Marzo_Abril_Maio_XuĂąo_Xullo_Agosto_Setembro_Outubro_Novembro_Decembro'.split('_'),\n        monthsShort : 'Xan._Feb._Mar._Abr._Mai._XuĂą._Xul._Ago._Set._Out._Nov._Dec.'.split('_'),\n        weekdays : 'Domingo_Luns_Martes_MĂŠrcores_Xoves_Venres_SĂĄbado'.split('_'),\n        weekdaysShort : 'Dom._Lun._Mar._MĂŠr._Xov._Ven._SĂĄb.'.split('_'),\n        weekdaysMin : 'Do_Lu_Ma_MĂŠ_Xo_Ve_SĂĄ'.split('_'),\n        longDateFormat : {\n            LT : 'H:mm',\n            LTS : 'LT:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd D MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay : function () {\n                return '[hoxe ' + ((this.hours() !== 1) ? 'ĂĄs' : 'ĂĄ') + '] LT';\n            },\n            nextDay : function () {\n                return '[maĂąĂĄ ' + ((this.hours() !== 1) ? 'ĂĄs' : 'ĂĄ') + '] LT';\n            },\n            nextWeek : function () {\n                return 'dddd [' + ((this.hours() !== 1) ? 'ĂĄs' : 'a') + '] LT';\n            },\n            lastDay : function () {\n                return '[onte ' + ((this.hours() !== 1) ? 'ĂĄ' : 'a') + '] LT';\n            },\n            lastWeek : function () {\n                return '[o] dddd [pasado ' + ((this.hours() !== 1) ? 'ĂĄs' : 'a') + '] LT';\n            },\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : function (str) {\n                if (str === 'uns segundos') {\n                    return 'nuns segundos';\n                }\n                return 'en ' + str;\n            },\n            past : 'hai %s',\n            s : 'uns segundos',\n            m : 'un minuto',\n            mm : '%d minutos',\n            h : 'unha hora',\n            hh : '%d horas',\n            d : 'un dĂ­a',\n            dd : '%d dĂ­as',\n            M : 'un mes',\n            MM : '%d meses',\n            y : 'un ano',\n            yy : '%d anos'\n        },\n        ordinalParse : /\\d{1,2}Âş/,\n        ordinal : '%dÂş',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : Hebrew (he)\n// author : Tomer Cohen : https://github.com/tomer\n// author : Moshe Simantov : https://github.com/DevelopmentIL\n// author : Tal Ater : https://github.com/TalAter\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('he', {\n        months : '×× ×××¨_×¤××¨×××¨_××¨×Ľ_××¤×¨××_×××_××× ×_××××_×××××Ą×_×Ą×¤××××¨_×××§××××¨_× ×××××¨_××Ś×××¨'.split('_'),\n        monthsShort : '×× ××ł_×¤××¨×ł_××¨×Ľ_××¤×¨×ł_×××_××× ×_××××_××××ł_×Ą×¤××ł_×××§×ł_× ×××ł_××Ś××ł'.split('_'),\n        weekdays : '×¨××Š××_×Š× ×_×Š×××Š×_×¨×××˘×_××××Š×_×Š××Š×_×Š××Ş'.split('_'),\n        weekdaysShort : '××ł_××ł_××ł_××ł_××ł_××ł_×Š×ł'.split('_'),\n        weekdaysMin : '×_×_×_×_×_×_×Š'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D [×]MMMM YYYY',\n            LLL : 'D [×]MMMM YYYY LT',\n            LLLL : 'dddd, D [×]MMMM YYYY LT',\n            l : 'D/M/YYYY',\n            ll : 'D MMM YYYY',\n            lll : 'D MMM YYYY LT',\n            llll : 'ddd, D MMM YYYY LT'\n        },\n        calendar : {\n            sameDay : '[×××× ×Öž]LT',\n            nextDay : '[×××¨ ×Öž]LT',\n            nextWeek : 'dddd [××Š×˘×] LT',\n            lastDay : '[××Ş××× ×Öž]LT',\n            lastWeek : '[××××] dddd [××××¨×× ××Š×˘×] LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : '××˘×× %s',\n            past : '××¤× × %s',\n            s : '××Ą×¤×¨ ×Š× ×××Ş',\n            m : '××§×',\n            mm : '%d ××§××Ş',\n            h : '×Š×˘×',\n            hh : function (number) {\n                if (number === 2) {\n                    return '×Š×˘×Ş×××';\n                }\n                return number + ' ×Š×˘××Ş';\n            },\n            d : '×××',\n            dd : function (number) {\n                if (number === 2) {\n                    return '××××××';\n                }\n                return number + ' ××××';\n            },\n            M : '××××Š',\n            MM : function (number) {\n                if (number === 2) {\n                    return '××××Š×××';\n                }\n                return number + ' ××××Š××';\n            },\n            y : '×Š× ×',\n            yy : function (number) {\n                if (number === 2) {\n                    return '×Š× ×Ş×××';\n                } else if (number % 10 === 0 && number !== 10) {\n                    return number + ' ×Š× ×';\n                }\n                return number + ' ×Š× ××';\n            }\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : hindi (hi)\n// author : Mayank Singhal : https://github.com/mayanksinghal\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var symbolMap = {\n        '1': 'ŕĽ§',\n        '2': 'ŕĽ¨',\n        '3': 'ŕĽŠ',\n        '4': 'ŕĽŞ',\n        '5': 'ŕĽŤ',\n        '6': 'ŕĽŹ',\n        '7': 'ŕĽ­',\n        '8': 'ŕĽŽ',\n        '9': 'ŕĽŻ',\n        '0': 'ŕĽŚ'\n    },\n    numberMap = {\n        'ŕĽ§': '1',\n        'ŕĽ¨': '2',\n        'ŕĽŠ': '3',\n        'ŕĽŞ': '4',\n        'ŕĽŤ': '5',\n        'ŕĽŹ': '6',\n        'ŕĽ­': '7',\n        'ŕĽŽ': '8',\n        'ŕĽŻ': '9',\n        'ŕĽŚ': '0'\n    };\n\n    return moment.defineLocale('hi', {\n        months : 'ŕ¤ŕ¤¨ŕ¤ľŕ¤°ŕĽ_ŕ¤Ťŕ¤źŕ¤°ŕ¤ľŕ¤°ŕĽ_ŕ¤Žŕ¤žŕ¤°ŕĽŕ¤_ŕ¤ŕ¤ŞŕĽŕ¤°ŕĽŕ¤˛_ŕ¤Žŕ¤_ŕ¤ŕĽŕ¤¨_ŕ¤ŕĽŕ¤˛ŕ¤žŕ¤_ŕ¤ŕ¤ŕ¤¸ŕĽŕ¤¤_ŕ¤¸ŕ¤żŕ¤¤ŕ¤ŽŕĽŕ¤Źŕ¤°_ŕ¤ŕ¤ŕĽŕ¤ŕĽŕ¤Źŕ¤°_ŕ¤¨ŕ¤ľŕ¤ŽŕĽŕ¤Źŕ¤°_ŕ¤Śŕ¤żŕ¤¸ŕ¤ŽŕĽŕ¤Źŕ¤°'.split('_'),\n        monthsShort : 'ŕ¤ŕ¤¨._ŕ¤Ťŕ¤źŕ¤°._ŕ¤Žŕ¤žŕ¤°ŕĽŕ¤_ŕ¤ŕ¤ŞŕĽŕ¤°ŕĽ._ŕ¤Žŕ¤_ŕ¤ŕĽŕ¤¨_ŕ¤ŕĽŕ¤˛._ŕ¤ŕ¤._ŕ¤¸ŕ¤żŕ¤¤._ŕ¤ŕ¤ŕĽŕ¤ŕĽ._ŕ¤¨ŕ¤ľ._ŕ¤Śŕ¤żŕ¤¸.'.split('_'),\n        weekdays : 'ŕ¤°ŕ¤ľŕ¤żŕ¤ľŕ¤žŕ¤°_ŕ¤¸ŕĽŕ¤Žŕ¤ľŕ¤žŕ¤°_ŕ¤Žŕ¤ŕ¤ŕ¤˛ŕ¤ľŕ¤žŕ¤°_ŕ¤ŹŕĽŕ¤§ŕ¤ľŕ¤žŕ¤°_ŕ¤ŕĽŕ¤°ŕĽŕ¤ľŕ¤žŕ¤°_ŕ¤śŕĽŕ¤ŕĽŕ¤°ŕ¤ľŕ¤žŕ¤°_ŕ¤śŕ¤¨ŕ¤żŕ¤ľŕ¤žŕ¤°'.split('_'),\n        weekdaysShort : 'ŕ¤°ŕ¤ľŕ¤ż_ŕ¤¸ŕĽŕ¤Ž_ŕ¤Žŕ¤ŕ¤ŕ¤˛_ŕ¤ŹŕĽŕ¤§_ŕ¤ŕĽŕ¤°ŕĽ_ŕ¤śŕĽŕ¤ŕĽŕ¤°_ŕ¤śŕ¤¨ŕ¤ż'.split('_'),\n        weekdaysMin : 'ŕ¤°_ŕ¤¸ŕĽ_ŕ¤Žŕ¤_ŕ¤ŹŕĽ_ŕ¤ŕĽ_ŕ¤śŕĽ_ŕ¤ś'.split('_'),\n        longDateFormat : {\n            LT : 'A h:mm ŕ¤Źŕ¤ŕĽ',\n            LTS : 'A h:mm:ss ŕ¤Źŕ¤ŕĽ',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY, LT',\n            LLLL : 'dddd, D MMMM YYYY, LT'\n        },\n        calendar : {\n            sameDay : '[ŕ¤ŕ¤] LT',\n            nextDay : '[ŕ¤ŕ¤˛] LT',\n            nextWeek : 'dddd, LT',\n            lastDay : '[ŕ¤ŕ¤˛] LT',\n            lastWeek : '[ŕ¤Şŕ¤żŕ¤ŕ¤˛ŕĽ] dddd, LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : '%s ŕ¤ŽŕĽŕ¤',\n            past : '%s ŕ¤Şŕ¤šŕ¤˛ŕĽ',\n            s : 'ŕ¤ŕĽŕ¤ ŕ¤šŕĽ ŕ¤ŕĽŕ¤ˇŕ¤Ł',\n            m : 'ŕ¤ŕ¤ ŕ¤Žŕ¤żŕ¤¨ŕ¤',\n            mm : '%d ŕ¤Žŕ¤żŕ¤¨ŕ¤',\n            h : 'ŕ¤ŕ¤ ŕ¤ŕ¤ŕ¤ŕ¤ž',\n            hh : '%d ŕ¤ŕ¤ŕ¤ŕĽ',\n            d : 'ŕ¤ŕ¤ ŕ¤Śŕ¤żŕ¤¨',\n            dd : '%d ŕ¤Śŕ¤żŕ¤¨',\n            M : 'ŕ¤ŕ¤ ŕ¤Žŕ¤šŕĽŕ¤¨ŕĽ',\n            MM : '%d ŕ¤Žŕ¤šŕĽŕ¤¨ŕĽ',\n            y : 'ŕ¤ŕ¤ ŕ¤ľŕ¤°ŕĽŕ¤ˇ',\n            yy : '%d ŕ¤ľŕ¤°ŕĽŕ¤ˇ'\n        },\n        preparse: function (string) {\n            return string.replace(/[ŕĽ§ŕĽ¨ŕĽŠŕĽŞŕĽŤŕĽŹŕĽ­ŕĽŽŕĽŻŕĽŚ]/g, function (match) {\n                return numberMap[match];\n            });\n        },\n        postformat: function (string) {\n            return string.replace(/\\d/g, function (match) {\n                return symbolMap[match];\n            });\n        },\n        // Hindi notation for meridiems are quite fuzzy in practice. While there exists\n        // a rigid notion of a 'Pahar' it is not used as rigidly in modern Hindi.\n        meridiemParse: /ŕ¤°ŕ¤žŕ¤¤|ŕ¤¸ŕĽŕ¤Źŕ¤š|ŕ¤ŚŕĽŕ¤Şŕ¤šŕ¤°|ŕ¤śŕ¤žŕ¤Ž/,\n        meridiemHour : function (hour, meridiem) {\n            if (hour === 12) {\n                hour = 0;\n            }\n            if (meridiem === 'ŕ¤°ŕ¤žŕ¤¤') {\n                return hour < 4 ? hour : hour + 12;\n            } else if (meridiem === 'ŕ¤¸ŕĽŕ¤Źŕ¤š') {\n                return hour;\n            } else if (meridiem === 'ŕ¤ŚŕĽŕ¤Şŕ¤šŕ¤°') {\n                return hour >= 10 ? hour : hour + 12;\n            } else if (meridiem === 'ŕ¤śŕ¤žŕ¤Ž') {\n                return hour + 12;\n            }\n        },\n        meridiem : function (hour, minute, isLower) {\n            if (hour < 4) {\n                return 'ŕ¤°ŕ¤žŕ¤¤';\n            } else if (hour < 10) {\n                return 'ŕ¤¸ŕĽŕ¤Źŕ¤š';\n            } else if (hour < 17) {\n                return 'ŕ¤ŚŕĽŕ¤Şŕ¤šŕ¤°';\n            } else if (hour < 20) {\n                return 'ŕ¤śŕ¤žŕ¤Ž';\n            } else {\n                return 'ŕ¤°ŕ¤žŕ¤¤';\n            }\n        },\n        week : {\n            dow : 0, // Sunday is the first day of the week.\n            doy : 6  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : hrvatski (hr)\n// author : Bojan MarkoviÄ : https://github.com/bmarkovic\n\n// based on (sl) translation by Robert SedovĹĄek\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    function translate(number, withoutSuffix, key) {\n        var result = number + ' ';\n        switch (key) {\n        case 'm':\n            return withoutSuffix ? 'jedna minuta' : 'jedne minute';\n        case 'mm':\n            if (number === 1) {\n                result += 'minuta';\n            } else if (number === 2 || number === 3 || number === 4) {\n                result += 'minute';\n            } else {\n                result += 'minuta';\n            }\n            return result;\n        case 'h':\n            return withoutSuffix ? 'jedan sat' : 'jednog sata';\n        case 'hh':\n            if (number === 1) {\n                result += 'sat';\n            } else if (number === 2 || number === 3 || number === 4) {\n                result += 'sata';\n            } else {\n                result += 'sati';\n            }\n            return result;\n        case 'dd':\n            if (number === 1) {\n                result += 'dan';\n            } else {\n                result += 'dana';\n            }\n            return result;\n        case 'MM':\n            if (number === 1) {\n                result += 'mjesec';\n            } else if (number === 2 || number === 3 || number === 4) {\n                result += 'mjeseca';\n            } else {\n                result += 'mjeseci';\n            }\n            return result;\n        case 'yy':\n            if (number === 1) {\n                result += 'godina';\n            } else if (number === 2 || number === 3 || number === 4) {\n                result += 'godine';\n            } else {\n                result += 'godina';\n            }\n            return result;\n        }\n    }\n\n    return moment.defineLocale('hr', {\n        months : 'sjeÄanj_veljaÄa_oĹžujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac'.split('_'),\n        monthsShort : 'sje._vel._oĹžu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.'.split('_'),\n        weekdays : 'nedjelja_ponedjeljak_utorak_srijeda_Äetvrtak_petak_subota'.split('_'),\n        weekdaysShort : 'ned._pon._uto._sri._Äet._pet._sub.'.split('_'),\n        weekdaysMin : 'ne_po_ut_sr_Äe_pe_su'.split('_'),\n        longDateFormat : {\n            LT : 'H:mm',\n            LTS : 'LT:ss',\n            L : 'DD. MM. YYYY',\n            LL : 'D. MMMM YYYY',\n            LLL : 'D. MMMM YYYY LT',\n            LLLL : 'dddd, D. MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay  : '[danas u] LT',\n            nextDay  : '[sutra u] LT',\n\n            nextWeek : function () {\n                switch (this.day()) {\n                case 0:\n                    return '[u] [nedjelju] [u] LT';\n                case 3:\n                    return '[u] [srijedu] [u] LT';\n                case 6:\n                    return '[u] [subotu] [u] LT';\n                case 1:\n                case 2:\n                case 4:\n                case 5:\n                    return '[u] dddd [u] LT';\n                }\n            },\n            lastDay  : '[juÄer u] LT',\n            lastWeek : function () {\n                switch (this.day()) {\n                case 0:\n                case 3:\n                    return '[proĹĄlu] dddd [u] LT';\n                case 6:\n                    return '[proĹĄle] [subote] [u] LT';\n                case 1:\n                case 2:\n                case 4:\n                case 5:\n                    return '[proĹĄli] dddd [u] LT';\n                }\n            },\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'za %s',\n            past   : 'prije %s',\n            s      : 'par sekundi',\n            m      : translate,\n            mm     : translate,\n            h      : translate,\n            hh     : translate,\n            d      : 'dan',\n            dd     : translate,\n            M      : 'mjesec',\n            MM     : translate,\n            y      : 'godinu',\n            yy     : translate\n        },\n        ordinalParse: /\\d{1,2}\\./,\n        ordinal : '%d.',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : hungarian (hu)\n// author : Adam Brunner : https://github.com/adambrunner\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var weekEndings = 'vasĂĄrnap hĂŠtfĹn kedden szerdĂĄn csĂźtĂśrtĂśkĂśn pĂŠnteken szombaton'.split(' ');\n\n    function translate(number, withoutSuffix, key, isFuture) {\n        var num = number,\n            suffix;\n\n        switch (key) {\n        case 's':\n            return (isFuture || withoutSuffix) ? 'nĂŠhĂĄny mĂĄsodperc' : 'nĂŠhĂĄny mĂĄsodperce';\n        case 'm':\n            return 'egy' + (isFuture || withoutSuffix ? ' perc' : ' perce');\n        case 'mm':\n            return num + (isFuture || withoutSuffix ? ' perc' : ' perce');\n        case 'h':\n            return 'egy' + (isFuture || withoutSuffix ? ' Ăłra' : ' ĂłrĂĄja');\n        case 'hh':\n            return num + (isFuture || withoutSuffix ? ' Ăłra' : ' ĂłrĂĄja');\n        case 'd':\n            return 'egy' + (isFuture || withoutSuffix ? ' nap' : ' napja');\n        case 'dd':\n            return num + (isFuture || withoutSuffix ? ' nap' : ' napja');\n        case 'M':\n            return 'egy' + (isFuture || withoutSuffix ? ' hĂłnap' : ' hĂłnapja');\n        case 'MM':\n            return num + (isFuture || withoutSuffix ? ' hĂłnap' : ' hĂłnapja');\n        case 'y':\n            return 'egy' + (isFuture || withoutSuffix ? ' ĂŠv' : ' ĂŠve');\n        case 'yy':\n            return num + (isFuture || withoutSuffix ? ' ĂŠv' : ' ĂŠve');\n        }\n\n        return '';\n    }\n\n    function week(isFuture) {\n        return (isFuture ? '' : '[mĂşlt] ') + '[' + weekEndings[this.day()] + '] LT[-kor]';\n    }\n\n    return moment.defineLocale('hu', {\n        months : 'januĂĄr_februĂĄr_mĂĄrcius_ĂĄprilis_mĂĄjus_jĂşnius_jĂşlius_augusztus_szeptember_oktĂłber_november_december'.split('_'),\n        monthsShort : 'jan_feb_mĂĄrc_ĂĄpr_mĂĄj_jĂşn_jĂşl_aug_szept_okt_nov_dec'.split('_'),\n        weekdays : 'vasĂĄrnap_hĂŠtfĹ_kedd_szerda_csĂźtĂśrtĂśk_pĂŠntek_szombat'.split('_'),\n        weekdaysShort : 'vas_hĂŠt_kedd_sze_csĂźt_pĂŠn_szo'.split('_'),\n        weekdaysMin : 'v_h_k_sze_cs_p_szo'.split('_'),\n        longDateFormat : {\n            LT : 'H:mm',\n            LTS : 'LT:ss',\n            L : 'YYYY.MM.DD.',\n            LL : 'YYYY. MMMM D.',\n            LLL : 'YYYY. MMMM D., LT',\n            LLLL : 'YYYY. MMMM D., dddd LT'\n        },\n        meridiemParse: /de|du/i,\n        isPM: function (input) {\n            return input.charAt(1).toLowerCase() === 'u';\n        },\n        meridiem : function (hours, minutes, isLower) {\n            if (hours < 12) {\n                return isLower === true ? 'de' : 'DE';\n            } else {\n                return isLower === true ? 'du' : 'DU';\n            }\n        },\n        calendar : {\n            sameDay : '[ma] LT[-kor]',\n            nextDay : '[holnap] LT[-kor]',\n            nextWeek : function () {\n                return week.call(this, true);\n            },\n            lastDay : '[tegnap] LT[-kor]',\n            lastWeek : function () {\n                return week.call(this, false);\n            },\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : '%s mĂşlva',\n            past : '%s',\n            s : translate,\n            m : translate,\n            mm : translate,\n            h : translate,\n            hh : translate,\n            d : translate,\n            dd : translate,\n            M : translate,\n            MM : translate,\n            y : translate,\n            yy : translate\n        },\n        ordinalParse: /\\d{1,2}\\./,\n        ordinal : '%d.',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : Armenian (hy-am)\n// author : Armendarabyan : https://github.com/armendarabyan\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    function monthsCaseReplace(m, format) {\n        var months = {\n            'nominative': 'Ő°Ő¸ÖŐśŐžŐĄÖ_ÖŐĽŐżÖŐžŐĄÖ_Ő´ŐĄÖŐż_ŐĄŐşÖŐŤŐŹ_Ő´ŐĄŐľŐŤŐ˝_Ő°Ő¸ÖŐśŐŤŐ˝_Ő°Ő¸ÖŐŹŐŤŐ˝_ÖŐŁŐ¸Ő˝ŐżŐ¸Ő˝_Ő˝ŐĽŐşŐżŐĽŐ´Ő˘ŐĽÖ_Ő°Ő¸ŐŻŐżŐĽŐ´Ő˘ŐĽÖ_ŐśŐ¸ŐľŐĽŐ´Ő˘ŐĽÖ_Ő¤ŐĽŐŻŐżŐĽŐ´Ő˘ŐĽÖ'.split('_'),\n            'accusative': 'Ő°Ő¸ÖŐśŐžŐĄÖŐŤ_ÖŐĽŐżÖŐžŐĄÖŐŤ_Ő´ŐĄÖŐżŐŤ_ŐĄŐşÖŐŤŐŹŐŤ_Ő´ŐĄŐľŐŤŐ˝ŐŤ_Ő°Ő¸ÖŐśŐŤŐ˝ŐŤ_Ő°Ő¸ÖŐŹŐŤŐ˝ŐŤ_ÖŐŁŐ¸Ő˝ŐżŐ¸Ő˝ŐŤ_Ő˝ŐĽŐşŐżŐĽŐ´Ő˘ŐĽÖŐŤ_Ő°Ő¸ŐŻŐżŐĽŐ´Ő˘ŐĽÖŐŤ_ŐśŐ¸ŐľŐĽŐ´Ő˘ŐĽÖŐŤ_Ő¤ŐĽŐŻŐżŐĽŐ´Ő˘ŐĽÖŐŤ'.split('_')\n        },\n\n        nounCase = (/D[oD]?(\\[[^\\[\\]]*\\]|\\s+)+MMMM?/).test(format) ?\n            'accusative' :\n            'nominative';\n\n        return months[nounCase][m.month()];\n    }\n\n    function monthsShortCaseReplace(m, format) {\n        var monthsShort = 'Ő°ŐśŐž_ÖŐżÖ_Ő´ÖŐż_ŐĄŐşÖ_Ő´ŐľŐ˝_Ő°ŐśŐ˝_Ő°ŐŹŐ˝_ÖŐŁŐ˝_Ő˝ŐşŐż_Ő°ŐŻŐż_ŐśŐ´Ő˘_Ő¤ŐŻŐż'.split('_');\n\n        return monthsShort[m.month()];\n    }\n\n    function weekdaysCaseReplace(m, format) {\n        var weekdays = 'ŐŻŐŤÖŐĄŐŻŐŤ_ŐĽÖŐŻŐ¸ÖŐˇŐĄŐ˘ŐŠŐŤ_ŐĽÖŐĽÖŐˇŐĄŐ˘ŐŠŐŤ_ŐšŐ¸ÖŐĽÖŐˇŐĄŐ˘ŐŠŐŤ_Ő°ŐŤŐśŐŁŐˇŐĄŐ˘ŐŠŐŤ_Ő¸ÖÖŐ˘ŐĄŐŠ_ŐˇŐĄŐ˘ŐĄŐŠ'.split('_');\n\n        return weekdays[m.day()];\n    }\n\n    return moment.defineLocale('hy-am', {\n        months : monthsCaseReplace,\n        monthsShort : monthsShortCaseReplace,\n        weekdays : weekdaysCaseReplace,\n        weekdaysShort : 'ŐŻÖŐŻ_ŐĽÖŐŻ_ŐĽÖÖ_ŐšÖÖ_Ő°ŐśŐŁ_Ő¸ÖÖŐ˘_ŐˇŐ˘ŐŠ'.split('_'),\n        weekdaysMin : 'ŐŻÖŐŻ_ŐĽÖŐŻ_ŐĽÖÖ_ŐšÖÖ_Ő°ŐśŐŁ_Ő¸ÖÖŐ˘_ŐˇŐ˘ŐŠ'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD.MM.YYYY',\n            LL : 'D MMMM YYYY ŐŠ.',\n            LLL : 'D MMMM YYYY ŐŠ., LT',\n            LLLL : 'dddd, D MMMM YYYY ŐŠ., LT'\n        },\n        calendar : {\n            sameDay: '[ŐĄŐľŐ˝ÖÖ] LT',\n            nextDay: '[ŐžŐĄŐ˛Ő¨] LT',\n            lastDay: '[ŐĽÖŐĽŐŻ] LT',\n            nextWeek: function () {\n                return 'dddd [ÖÖŐ¨ ŐŞŐĄŐ´Ő¨] LT';\n            },\n            lastWeek: function () {\n                return '[ŐĄŐśÖŐĄŐŽ] dddd [ÖÖŐ¨ ŐŞŐĄŐ´Ő¨] LT';\n            },\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : '%s Ő°ŐĽŐżŐ¸',\n            past : '%s ŐĄŐźŐĄŐť',\n            s : 'Ő´ŐŤ ÖŐĄŐśŐŤ ŐžŐĄŐľÖŐŻŐľŐĄŐś',\n            m : 'ÖŐ¸ŐşŐĽ',\n            mm : '%d ÖŐ¸ŐşŐĽ',\n            h : 'ŐŞŐĄŐ´',\n            hh : '%d ŐŞŐĄŐ´',\n            d : 'ÖÖ',\n            dd : '%d ÖÖ',\n            M : 'ŐĄŐ´ŐŤŐ˝',\n            MM : '%d ŐĄŐ´ŐŤŐ˝',\n            y : 'ŐżŐĄÖŐŤ',\n            yy : '%d ŐżŐĄÖŐŤ'\n        },\n\n        meridiemParse: /ŐŁŐŤŐˇŐĽÖŐžŐĄ|ŐĄŐźŐĄŐžŐ¸ŐżŐžŐĄ|ÖŐĽÖŐĽŐŻŐžŐĄ|ŐĽÖŐĽŐŻŐ¸ŐľŐĄŐś/,\n        isPM: function (input) {\n            return /^(ÖŐĽÖŐĽŐŻŐžŐĄ|ŐĽÖŐĽŐŻŐ¸ŐľŐĄŐś)$/.test(input);\n        },\n        meridiem : function (hour) {\n            if (hour < 4) {\n                return 'ŐŁŐŤŐˇŐĽÖŐžŐĄ';\n            } else if (hour < 12) {\n                return 'ŐĄŐźŐĄŐžŐ¸ŐżŐžŐĄ';\n            } else if (hour < 17) {\n                return 'ÖŐĽÖŐĽŐŻŐžŐĄ';\n            } else {\n                return 'ŐĽÖŐĽŐŻŐ¸ŐľŐĄŐś';\n            }\n        },\n\n        ordinalParse: /\\d{1,2}|\\d{1,2}-(ŐŤŐś|ÖŐ¤)/,\n        ordinal: function (number, period) {\n            switch (period) {\n            case 'DDD':\n            case 'w':\n            case 'W':\n            case 'DDDo':\n                if (number === 1) {\n                    return number + '-ŐŤŐś';\n                }\n                return number + '-ÖŐ¤';\n            default:\n                return number;\n            }\n        },\n\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : Bahasa Indonesia (id)\n// author : Mohammad Satrio Utomo : https://github.com/tyok\n// reference: http://id.wikisource.org/wiki/Pedoman_Umum_Ejaan_Bahasa_Indonesia_yang_Disempurnakan\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('id', {\n        months : 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember'.split('_'),\n        monthsShort : 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nov_Des'.split('_'),\n        weekdays : 'Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu'.split('_'),\n        weekdaysShort : 'Min_Sen_Sel_Rab_Kam_Jum_Sab'.split('_'),\n        weekdaysMin : 'Mg_Sn_Sl_Rb_Km_Jm_Sb'.split('_'),\n        longDateFormat : {\n            LT : 'HH.mm',\n            LTS : 'LT.ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY [pukul] LT',\n            LLLL : 'dddd, D MMMM YYYY [pukul] LT'\n        },\n        meridiemParse: /pagi|siang|sore|malam/,\n        meridiemHour : function (hour, meridiem) {\n            if (hour === 12) {\n                hour = 0;\n            }\n            if (meridiem === 'pagi') {\n                return hour;\n            } else if (meridiem === 'siang') {\n                return hour >= 11 ? hour : hour + 12;\n            } else if (meridiem === 'sore' || meridiem === 'malam') {\n                return hour + 12;\n            }\n        },\n        meridiem : function (hours, minutes, isLower) {\n            if (hours < 11) {\n                return 'pagi';\n            } else if (hours < 15) {\n                return 'siang';\n            } else if (hours < 19) {\n                return 'sore';\n            } else {\n                return 'malam';\n            }\n        },\n        calendar : {\n            sameDay : '[Hari ini pukul] LT',\n            nextDay : '[Besok pukul] LT',\n            nextWeek : 'dddd [pukul] LT',\n            lastDay : '[Kemarin pukul] LT',\n            lastWeek : 'dddd [lalu pukul] LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'dalam %s',\n            past : '%s yang lalu',\n            s : 'beberapa detik',\n            m : 'semenit',\n            mm : '%d menit',\n            h : 'sejam',\n            hh : '%d jam',\n            d : 'sehari',\n            dd : '%d hari',\n            M : 'sebulan',\n            MM : '%d bulan',\n            y : 'setahun',\n            yy : '%d tahun'\n        },\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : icelandic (is)\n// author : Hinrik Ărn SigurĂ°sson : https://github.com/hinrik\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    function plural(n) {\n        if (n % 100 === 11) {\n            return true;\n        } else if (n % 10 === 1) {\n            return false;\n        }\n        return true;\n    }\n\n    function translate(number, withoutSuffix, key, isFuture) {\n        var result = number + ' ';\n        switch (key) {\n        case 's':\n            return withoutSuffix || isFuture ? 'nokkrar sekĂşndur' : 'nokkrum sekĂşndum';\n        case 'm':\n            return withoutSuffix ? 'mĂ­nĂşta' : 'mĂ­nĂştu';\n        case 'mm':\n            if (plural(number)) {\n                return result + (withoutSuffix || isFuture ? 'mĂ­nĂştur' : 'mĂ­nĂştum');\n            } else if (withoutSuffix) {\n                return result + 'mĂ­nĂşta';\n            }\n            return result + 'mĂ­nĂştu';\n        case 'hh':\n            if (plural(number)) {\n                return result + (withoutSuffix || isFuture ? 'klukkustundir' : 'klukkustundum');\n            }\n            return result + 'klukkustund';\n        case 'd':\n            if (withoutSuffix) {\n                return 'dagur';\n            }\n            return isFuture ? 'dag' : 'degi';\n        case 'dd':\n            if (plural(number)) {\n                if (withoutSuffix) {\n                    return result + 'dagar';\n                }\n                return result + (isFuture ? 'daga' : 'dĂśgum');\n            } else if (withoutSuffix) {\n                return result + 'dagur';\n            }\n            return result + (isFuture ? 'dag' : 'degi');\n        case 'M':\n            if (withoutSuffix) {\n                return 'mĂĄnuĂ°ur';\n            }\n            return isFuture ? 'mĂĄnuĂ°' : 'mĂĄnuĂ°i';\n        case 'MM':\n            if (plural(number)) {\n                if (withoutSuffix) {\n                    return result + 'mĂĄnuĂ°ir';\n                }\n                return result + (isFuture ? 'mĂĄnuĂ°i' : 'mĂĄnuĂ°um');\n            } else if (withoutSuffix) {\n                return result + 'mĂĄnuĂ°ur';\n            }\n            return result + (isFuture ? 'mĂĄnuĂ°' : 'mĂĄnuĂ°i');\n        case 'y':\n            return withoutSuffix || isFuture ? 'ĂĄr' : 'ĂĄri';\n        case 'yy':\n            if (plural(number)) {\n                return result + (withoutSuffix || isFuture ? 'ĂĄr' : 'ĂĄrum');\n            }\n            return result + (withoutSuffix || isFuture ? 'ĂĄr' : 'ĂĄri');\n        }\n    }\n\n    return moment.defineLocale('is', {\n        months : 'janĂşar_febrĂşar_mars_aprĂ­l_maĂ­_jĂşnĂ­_jĂşlĂ­_ĂĄgĂşst_september_oktĂłber_nĂłvember_desember'.split('_'),\n        monthsShort : 'jan_feb_mar_apr_maĂ­_jĂşn_jĂşl_ĂĄgĂş_sep_okt_nĂłv_des'.split('_'),\n        weekdays : 'sunnudagur_mĂĄnudagur_ĂžriĂ°judagur_miĂ°vikudagur_fimmtudagur_fĂśstudagur_laugardagur'.split('_'),\n        weekdaysShort : 'sun_mĂĄn_Ăžri_miĂ°_fim_fĂśs_lau'.split('_'),\n        weekdaysMin : 'Su_MĂĄ_Ăr_Mi_Fi_FĂś_La'.split('_'),\n        longDateFormat : {\n            LT : 'H:mm',\n            LTS : 'LT:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D. MMMM YYYY',\n            LLL : 'D. MMMM YYYY [kl.] LT',\n            LLLL : 'dddd, D. MMMM YYYY [kl.] LT'\n        },\n        calendar : {\n            sameDay : '[Ă­ dag kl.] LT',\n            nextDay : '[ĂĄ morgun kl.] LT',\n            nextWeek : 'dddd [kl.] LT',\n            lastDay : '[Ă­ gĂŚr kl.] LT',\n            lastWeek : '[sĂ­Ă°asta] dddd [kl.] LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'eftir %s',\n            past : 'fyrir %s sĂ­Ă°an',\n            s : translate,\n            m : translate,\n            mm : translate,\n            h : 'klukkustund',\n            hh : translate,\n            d : translate,\n            dd : translate,\n            M : translate,\n            MM : translate,\n            y : translate,\n            yy : translate\n        },\n        ordinalParse: /\\d{1,2}\\./,\n        ordinal : '%d.',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : italian (it)\n// author : Lorenzo : https://github.com/aliem\n// author: Mattia Larentis: https://github.com/nostalgiaz\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('it', {\n        months : 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split('_'),\n        monthsShort : 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'),\n        weekdays : 'Domenica_LunedĂŹ_MartedĂŹ_MercoledĂŹ_GiovedĂŹ_VenerdĂŹ_Sabato'.split('_'),\n        weekdaysShort : 'Dom_Lun_Mar_Mer_Gio_Ven_Sab'.split('_'),\n        weekdaysMin : 'D_L_Ma_Me_G_V_S'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd, D MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay: '[Oggi alle] LT',\n            nextDay: '[Domani alle] LT',\n            nextWeek: 'dddd [alle] LT',\n            lastDay: '[Ieri alle] LT',\n            lastWeek: function () {\n                switch (this.day()) {\n                    case 0:\n                        return '[la scorsa] dddd [alle] LT';\n                    default:\n                        return '[lo scorso] dddd [alle] LT';\n                }\n            },\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : function (s) {\n                return ((/^[0-9].+$/).test(s) ? 'tra' : 'in') + ' ' + s;\n            },\n            past : '%s fa',\n            s : 'alcuni secondi',\n            m : 'un minuto',\n            mm : '%d minuti',\n            h : 'un\\'ora',\n            hh : '%d ore',\n            d : 'un giorno',\n            dd : '%d giorni',\n            M : 'un mese',\n            MM : '%d mesi',\n            y : 'un anno',\n            yy : '%d anni'\n        },\n        ordinalParse : /\\d{1,2}Âş/,\n        ordinal: '%dÂş',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : japanese (ja)\n// author : LI Long : https://github.com/baryon\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('ja', {\n        months : '1ć_2ć_3ć_4ć_5ć_6ć_7ć_8ć_9ć_10ć_11ć_12ć'.split('_'),\n        monthsShort : '1ć_2ć_3ć_4ć_5ć_6ć_7ć_8ć_9ć_10ć_11ć_12ć'.split('_'),\n        weekdays : 'ćĽććĽ_ćććĽ_çŤććĽ_ć°´ććĽ_ć¨ććĽ_éććĽ_ĺććĽ'.split('_'),\n        weekdaysShort : 'ćĽ_ć_çŤ_ć°´_ć¨_é_ĺ'.split('_'),\n        weekdaysMin : 'ćĽ_ć_çŤ_ć°´_ć¨_é_ĺ'.split('_'),\n        longDateFormat : {\n            LT : 'Ahćmĺ',\n            LTS : 'LTsç§',\n            L : 'YYYY/MM/DD',\n            LL : 'YYYYĺš´MćDćĽ',\n            LLL : 'YYYYĺš´MćDćĽLT',\n            LLLL : 'YYYYĺš´MćDćĽLT dddd'\n        },\n        meridiemParse: /ĺĺ|ĺĺž/i,\n        isPM : function (input) {\n            return input === 'ĺĺž';\n        },\n        meridiem : function (hour, minute, isLower) {\n            if (hour < 12) {\n                return 'ĺĺ';\n            } else {\n                return 'ĺĺž';\n            }\n        },\n        calendar : {\n            sameDay : '[äťćĽ] LT',\n            nextDay : '[ććĽ] LT',\n            nextWeek : '[ćĽéą]dddd LT',\n            lastDay : '[ć¨ćĽ] LT',\n            lastWeek : '[ĺéą]dddd LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : '%sĺž',\n            past : '%sĺ',\n            s : 'ć°ç§',\n            m : '1ĺ',\n            mm : '%dĺ',\n            h : '1ćé',\n            hh : '%dćé',\n            d : '1ćĽ',\n            dd : '%dćĽ',\n            M : '1ăść',\n            MM : '%dăść',\n            y : '1ĺš´',\n            yy : '%dĺš´'\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : Georgian (ka)\n// author : Irakli Janiashvili : https://github.com/irakli-janiashvili\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    function monthsCaseReplace(m, format) {\n        var months = {\n            'nominative': 'áááááá á_ááááá áááá_ááá á˘á_ááá ááá_ááááĄá_áááááĄá_áááááĄá_áááááĄá˘á_áĄááĽá˘ááááá á_ááĽá˘ááááá á_ááááááá á_áááááááá á'.split('_'),\n            'accusative': 'áááááá áĄ_ááááá ááááĄ_ááá á˘áĄ_ááá ááááĄ_ááááĄáĄ_áááááĄáĄ_áááááĄáĄ_áááááĄá˘áĄ_áĄááĽá˘ááááá áĄ_ááĽá˘ááááá áĄ_ááááááá áĄ_áááááááá áĄ'.split('_')\n        },\n\n        nounCase = (/D[oD] *MMMM?/).test(format) ?\n            'accusative' :\n            'nominative';\n\n        return months[nounCase][m.month()];\n    }\n\n    function weekdaysCaseReplace(m, format) {\n        var weekdays = {\n            'nominative': 'áááá á_áá á¨ááááá_áĄááá¨ááááá_áááŽá¨ááááá_áŽáŁáá¨ááááá_ááá ááĄáááá_á¨ááááá'.split('_'),\n            'accusative': 'áááá ááĄ_áá á¨áááááĄ_áĄááá¨áááááĄ_áááŽá¨áááááĄ_áŽáŁáá¨áááááĄ_ááá ááĄááááĄ_á¨áááááĄ'.split('_')\n        },\n\n        nounCase = (/(áŹááá|á¨ááááá)/).test(format) ?\n            'accusative' :\n            'nominative';\n\n        return weekdays[nounCase][m.day()];\n    }\n\n    return moment.defineLocale('ka', {\n        months : monthsCaseReplace,\n        monthsShort : 'ááá_ááá_ááá _ááá _ááá_ááá_ááá_ááá_áĄááĽ_ááĽá˘_ááá_ááá'.split('_'),\n        weekdays : weekdaysCaseReplace,\n        weekdaysShort : 'ááá_áá á¨_áĄáá_áááŽ_áŽáŁá_ááá _á¨áá'.split('_'),\n        weekdaysMin : 'áá_áá _áĄá_áá_áŽáŁ_áá_á¨á'.split('_'),\n        longDateFormat : {\n            LT : 'h:mm A',\n            LTS : 'h:mm:ss A',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd, D MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay : '[ááŚááĄ] LT[-áá]',\n            nextDay : '[áŽááá] LT[-áá]',\n            lastDay : '[ááŁá¨áá] LT[-áá]',\n            nextWeek : '[á¨ááááá] dddd LT[-áá]',\n            lastWeek : '[áŹááá] dddd LT-áá',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : function (s) {\n                return (/(áŹááá|áŹáŁáá|áĄáááá|áŹááá)/).test(s) ?\n                    s.replace(/á$/, 'á¨á') :\n                    s + 'á¨á';\n            },\n            past : function (s) {\n                if ((/(áŹááá|áŹáŁáá|áĄáááá|ááŚá|ááá)/).test(s)) {\n                    return s.replace(/(á|á)$/, 'ááĄ áŹáá');\n                }\n                if ((/áŹááá/).test(s)) {\n                    return s.replace(/áŹááá$/, 'áŹáááĄ áŹáá');\n                }\n            },\n            s : 'á áááááááá áŹááá',\n            m : 'áŹáŁáá',\n            mm : '%d áŹáŁáá',\n            h : 'áĄáááá',\n            hh : '%d áĄáááá',\n            d : 'ááŚá',\n            dd : '%d ááŚá',\n            M : 'ááá',\n            MM : '%d ááá',\n            y : 'áŹááá',\n            yy : '%d áŹááá'\n        },\n        ordinalParse: /0|1-áá|áá-\\d{1,2}|\\d{1,2}-á/,\n        ordinal : function (number) {\n            if (number === 0) {\n                return number;\n            }\n\n            if (number === 1) {\n                return number + '-áá';\n            }\n\n            if ((number < 20) || (number <= 100 && (number % 20 === 0)) || (number % 100 === 0)) {\n                return 'áá-' + number;\n            }\n\n            return number + '-á';\n        },\n        week : {\n            dow : 1,\n            doy : 7\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : khmer (km)\n// author : Kruy Vanna : https://github.com/kruyvanna\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('km', {\n        months: 'ááááś_ááťáááá_ááˇááś_ááááś_á§áááś_ááˇááťááś_ááááááś_áá¸á áś_áááááś_ááťááś_ááˇááááˇááś_ááááź'.split('_'),\n        monthsShort: 'ááááś_ááťáááá_ááˇááś_ááááś_á§áááś_ááˇááťááś_ááááááś_áá¸á áś_áááááś_ááťááś_ááˇááááˇááś_ááááź'.split('_'),\n        weekdays: 'á˘áśááˇááá_ááááá_á˘ááááśá_ááťá_áááá áááááˇá_ááťááá_áááá'.split('_'),\n        weekdaysShort: 'á˘áśááˇááá_ááááá_á˘ááááśá_ááťá_áááá áááááˇá_ááťááá_áááá'.split('_'),\n        weekdaysMin: 'á˘áśááˇááá_ááááá_á˘ááááśá_ááťá_áááá áááááˇá_ááťááá_áááá'.split('_'),\n        longDateFormat: {\n            LT: 'HH:mm',\n            LTS : 'LT:ss',\n            L: 'DD/MM/YYYY',\n            LL: 'D MMMM YYYY',\n            LLL: 'D MMMM YYYY LT',\n            LLLL: 'dddd, D MMMM YYYY LT'\n        },\n        calendar: {\n            sameDay: '[áááááá áááá] LT',\n            nextDay: '[ááá˘áá áááá] LT',\n            nextWeek: 'dddd [áááá] LT',\n            lastDay: '[ááááˇáááˇá áááá] LT',\n            lastWeek: 'dddd [áááááśá áááťá] [áááá] LT',\n            sameElse: 'L'\n        },\n        relativeTime: {\n            future: '%sááá',\n            past: '%sááťá',\n            s: 'áááťááááśáááˇááśáá¸',\n            m: 'áá˝áááśáá¸',\n            mm: '%d ááśáá¸',\n            h: 'áá˝ááááá',\n            hh: '%d áááá',\n            d: 'áá˝ááááá',\n            dd: '%d áááá',\n            M: 'áá˝ááá',\n            MM: '%d áá',\n            y: 'áá˝áááááśá',\n            yy: '%d ááááśá'\n        },\n        week: {\n            dow: 1, // Monday is the first day of the week.\n            doy: 4 // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : korean (ko)\n//\n// authors\n//\n// - Kyungwook, Park : https://github.com/kyungw00k\n// - Jeeeyul Lee <jeeeyul@gmail.com>\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('ko', {\n        months : '1ě_2ě_3ě_4ě_5ě_6ě_7ě_8ě_9ě_10ě_11ě_12ě'.split('_'),\n        monthsShort : '1ě_2ě_3ě_4ě_5ě_6ě_7ě_8ě_9ě_10ě_11ě_12ě'.split('_'),\n        weekdays : 'ěźěěź_ěěěź_íěěź_ěěěź_ëŞŠěěź_ę¸ěěź_í ěěź'.split('_'),\n        weekdaysShort : 'ěź_ě_í_ě_ëŞŠ_ę¸_í '.split('_'),\n        weekdaysMin : 'ěź_ě_í_ě_ëŞŠ_ę¸_í '.split('_'),\n        longDateFormat : {\n            LT : 'A hě mëś',\n            LTS : 'A hě mëś sě´',\n            L : 'YYYY.MM.DD',\n            LL : 'YYYYë MMMM Děź',\n            LLL : 'YYYYë MMMM Děź LT',\n            LLLL : 'YYYYë MMMM Děź dddd LT'\n        },\n        calendar : {\n            sameDay : 'ě¤ë LT',\n            nextDay : 'ë´ěź LT',\n            nextWeek : 'dddd LT',\n            lastDay : 'ě´ě  LT',\n            lastWeek : 'ě§ëěŁź dddd LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : '%s í',\n            past : '%s ě ',\n            s : 'ëŞě´',\n            ss : '%dě´',\n            m : 'ěźëś',\n            mm : '%dëś',\n            h : 'íěę°',\n            hh : '%děę°',\n            d : 'íëŁ¨',\n            dd : '%děź',\n            M : 'íëŹ',\n            MM : '%dëŹ',\n            y : 'ěźë',\n            yy : '%dë'\n        },\n        ordinalParse : /\\d{1,2}ěź/,\n        ordinal : '%děź',\n        meridiemParse : /ě¤ě |ě¤í/,\n        isPM : function (token) {\n            return token === 'ě¤í';\n        },\n        meridiem : function (hour, minute, isUpper) {\n            return hour < 12 ? 'ě¤ě ' : 'ě¤í';\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : Luxembourgish (lb)\n// author : mweimerskirch : https://github.com/mweimerskirch, David Raison : https://github.com/kwisatz\n\n// Note: Luxembourgish has a very particular phonological rule ('Eifeler Regel') that causes the\n// deletion of the final 'n' in certain contexts. That's what the 'eifelerRegelAppliesToWeekday'\n// and 'eifelerRegelAppliesToNumber' methods are meant for\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    function processRelativeTime(number, withoutSuffix, key, isFuture) {\n        var format = {\n            'm': ['eng Minutt', 'enger Minutt'],\n            'h': ['eng Stonn', 'enger Stonn'],\n            'd': ['een Dag', 'engem Dag'],\n            'M': ['ee Mount', 'engem Mount'],\n            'y': ['ee Joer', 'engem Joer']\n        };\n        return withoutSuffix ? format[key][0] : format[key][1];\n    }\n\n    function processFutureTime(string) {\n        var number = string.substr(0, string.indexOf(' '));\n        if (eifelerRegelAppliesToNumber(number)) {\n            return 'a ' + string;\n        }\n        return 'an ' + string;\n    }\n\n    function processPastTime(string) {\n        var number = string.substr(0, string.indexOf(' '));\n        if (eifelerRegelAppliesToNumber(number)) {\n            return 'viru ' + string;\n        }\n        return 'virun ' + string;\n    }\n\n    /**\n     * Returns true if the word before the given number loses the '-n' ending.\n     * e.g. 'an 10 Deeg' but 'a 5 Deeg'\n     *\n     * @param number {integer}\n     * @returns {boolean}\n     */\n    function eifelerRegelAppliesToNumber(number) {\n        number = parseInt(number, 10);\n        if (isNaN(number)) {\n            return false;\n        }\n        if (number < 0) {\n            // Negative Number --> always true\n            return true;\n        } else if (number < 10) {\n            // Only 1 digit\n            if (4 <= number && number <= 7) {\n                return true;\n            }\n            return false;\n        } else if (number < 100) {\n            // 2 digits\n            var lastDigit = number % 10, firstDigit = number / 10;\n            if (lastDigit === 0) {\n                return eifelerRegelAppliesToNumber(firstDigit);\n            }\n            return eifelerRegelAppliesToNumber(lastDigit);\n        } else if (number < 10000) {\n            // 3 or 4 digits --> recursively check first digit\n            while (number >= 10) {\n                number = number / 10;\n            }\n            return eifelerRegelAppliesToNumber(number);\n        } else {\n            // Anything larger than 4 digits: recursively check first n-3 digits\n            number = number / 1000;\n            return eifelerRegelAppliesToNumber(number);\n        }\n    }\n\n    return moment.defineLocale('lb', {\n        months: 'Januar_Februar_MĂ¤erz_AbrĂŤll_Mee_Juni_Juli_August_September_Oktober_November_Dezember'.split('_'),\n        monthsShort: 'Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.'.split('_'),\n        weekdays: 'Sonndeg_MĂŠindeg_DĂŤnschdeg_MĂŤttwoch_Donneschdeg_Freideg_Samschdeg'.split('_'),\n        weekdaysShort: 'So._MĂŠ._DĂŤ._MĂŤ._Do._Fr._Sa.'.split('_'),\n        weekdaysMin: 'So_MĂŠ_DĂŤ_MĂŤ_Do_Fr_Sa'.split('_'),\n        longDateFormat: {\n            LT: 'H:mm [Auer]',\n            LTS: 'H:mm:ss [Auer]',\n            L: 'DD.MM.YYYY',\n            LL: 'D. MMMM YYYY',\n            LLL: 'D. MMMM YYYY LT',\n            LLLL: 'dddd, D. MMMM YYYY LT'\n        },\n        calendar: {\n            sameDay: '[Haut um] LT',\n            sameElse: 'L',\n            nextDay: '[Muer um] LT',\n            nextWeek: 'dddd [um] LT',\n            lastDay: '[GĂŤschter um] LT',\n            lastWeek: function () {\n                // Different date string for 'DĂŤnschdeg' (Tuesday) and 'Donneschdeg' (Thursday) due to phonological rule\n                switch (this.day()) {\n                    case 2:\n                    case 4:\n                        return '[Leschten] dddd [um] LT';\n                    default:\n                        return '[Leschte] dddd [um] LT';\n                }\n            }\n        },\n        relativeTime : {\n            future : processFutureTime,\n            past : processPastTime,\n            s : 'e puer Sekonnen',\n            m : processRelativeTime,\n            mm : '%d Minutten',\n            h : processRelativeTime,\n            hh : '%d Stonnen',\n            d : processRelativeTime,\n            dd : '%d Deeg',\n            M : processRelativeTime,\n            MM : '%d MĂŠint',\n            y : processRelativeTime,\n            yy : '%d Joer'\n        },\n        ordinalParse: /\\d{1,2}\\./,\n        ordinal: '%d.',\n        week: {\n            dow: 1, // Monday is the first day of the week.\n            doy: 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : Lithuanian (lt)\n// author : Mindaugas MozĹŤras : https://github.com/mmozuras\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var units = {\n        'm' : 'minutÄ_minutÄs_minutÄ',\n        'mm': 'minutÄs_minuÄiĹł_minutes',\n        'h' : 'valanda_valandos_valandÄ',\n        'hh': 'valandos_valandĹł_valandas',\n        'd' : 'diena_dienos_dienÄ',\n        'dd': 'dienos_dienĹł_dienas',\n        'M' : 'mÄnuo_mÄnesio_mÄnesÄŻ',\n        'MM': 'mÄnesiai_mÄnesiĹł_mÄnesius',\n        'y' : 'metai_metĹł_metus',\n        'yy': 'metai_metĹł_metus'\n    },\n    weekDays = 'sekmadienis_pirmadienis_antradienis_treÄiadienis_ketvirtadienis_penktadienis_ĹĄeĹĄtadienis'.split('_');\n\n    function translateSeconds(number, withoutSuffix, key, isFuture) {\n        if (withoutSuffix) {\n            return 'kelios sekundÄs';\n        } else {\n            return isFuture ? 'keliĹł sekundĹžiĹł' : 'kelias sekundes';\n        }\n    }\n\n    function translateSingular(number, withoutSuffix, key, isFuture) {\n        return withoutSuffix ? forms(key)[0] : (isFuture ? forms(key)[1] : forms(key)[2]);\n    }\n\n    function special(number) {\n        return number % 10 === 0 || (number > 10 && number < 20);\n    }\n\n    function forms(key) {\n        return units[key].split('_');\n    }\n\n    function translate(number, withoutSuffix, key, isFuture) {\n        var result = number + ' ';\n        if (number === 1) {\n            return result + translateSingular(number, withoutSuffix, key[0], isFuture);\n        } else if (withoutSuffix) {\n            return result + (special(number) ? forms(key)[1] : forms(key)[0]);\n        } else {\n            if (isFuture) {\n                return result + forms(key)[1];\n            } else {\n                return result + (special(number) ? forms(key)[1] : forms(key)[2]);\n            }\n        }\n    }\n\n    function relativeWeekDay(moment, format) {\n        var nominative = format.indexOf('dddd HH:mm') === -1,\n            weekDay = weekDays[moment.day()];\n\n        return nominative ? weekDay : weekDay.substring(0, weekDay.length - 2) + 'ÄŻ';\n    }\n\n    return moment.defineLocale('lt', {\n        months : 'sausio_vasario_kovo_balandĹžio_geguĹžÄs_birĹželio_liepos_rugpjĹŤÄio_rugsÄjo_spalio_lapkriÄio_gruodĹžio'.split('_'),\n        monthsShort : 'sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd'.split('_'),\n        weekdays : relativeWeekDay,\n        weekdaysShort : 'Sek_Pir_Ant_Tre_Ket_Pen_Ĺ eĹĄ'.split('_'),\n        weekdaysMin : 'S_P_A_T_K_Pn_Ĺ '.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'YYYY-MM-DD',\n            LL : 'YYYY [m.] MMMM D [d.]',\n            LLL : 'YYYY [m.] MMMM D [d.], LT [val.]',\n            LLLL : 'YYYY [m.] MMMM D [d.], dddd, LT [val.]',\n            l : 'YYYY-MM-DD',\n            ll : 'YYYY [m.] MMMM D [d.]',\n            lll : 'YYYY [m.] MMMM D [d.], LT [val.]',\n            llll : 'YYYY [m.] MMMM D [d.], ddd, LT [val.]'\n        },\n        calendar : {\n            sameDay : '[Ĺ iandien] LT',\n            nextDay : '[Rytoj] LT',\n            nextWeek : 'dddd LT',\n            lastDay : '[Vakar] LT',\n            lastWeek : '[PraÄjusÄŻ] dddd LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'po %s',\n            past : 'prieĹĄ %s',\n            s : translateSeconds,\n            m : translateSingular,\n            mm : translate,\n            h : translateSingular,\n            hh : translate,\n            d : translateSingular,\n            dd : translate,\n            M : translateSingular,\n            MM : translate,\n            y : translateSingular,\n            yy : translate\n        },\n        ordinalParse: /\\d{1,2}-oji/,\n        ordinal : function (number) {\n            return number + '-oji';\n        },\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : latvian (lv)\n// author : Kristaps Karlsons : https://github.com/skakri\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var units = {\n        'mm': 'minĹŤti_minĹŤtes_minĹŤte_minĹŤtes',\n        'hh': 'stundu_stundas_stunda_stundas',\n        'dd': 'dienu_dienas_diena_dienas',\n        'MM': 'mÄnesi_mÄneĹĄus_mÄnesis_mÄneĹĄi',\n        'yy': 'gadu_gadus_gads_gadi'\n    };\n\n    function format(word, number, withoutSuffix) {\n        var forms = word.split('_');\n        if (withoutSuffix) {\n            return number % 10 === 1 && number !== 11 ? forms[2] : forms[3];\n        } else {\n            return number % 10 === 1 && number !== 11 ? forms[0] : forms[1];\n        }\n    }\n\n    function relativeTimeWithPlural(number, withoutSuffix, key) {\n        return number + ' ' + format(units[key], number, withoutSuffix);\n    }\n\n    return moment.defineLocale('lv', {\n        months : 'janvÄris_februÄris_marts_aprÄŤlis_maijs_jĹŤnijs_jĹŤlijs_augusts_septembris_oktobris_novembris_decembris'.split('_'),\n        monthsShort : 'jan_feb_mar_apr_mai_jĹŤn_jĹŤl_aug_sep_okt_nov_dec'.split('_'),\n        weekdays : 'svÄtdiena_pirmdiena_otrdiena_treĹĄdiena_ceturtdiena_piektdiena_sestdiena'.split('_'),\n        weekdaysShort : 'Sv_P_O_T_C_Pk_S'.split('_'),\n        weekdaysMin : 'Sv_P_O_T_C_Pk_S'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD.MM.YYYY',\n            LL : 'YYYY. [gada] D. MMMM',\n            LLL : 'YYYY. [gada] D. MMMM, LT',\n            LLLL : 'YYYY. [gada] D. MMMM, dddd, LT'\n        },\n        calendar : {\n            sameDay : '[Ĺ odien pulksten] LT',\n            nextDay : '[RÄŤt pulksten] LT',\n            nextWeek : 'dddd [pulksten] LT',\n            lastDay : '[Vakar pulksten] LT',\n            lastWeek : '[PagÄjuĹĄÄ] dddd [pulksten] LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : '%s vÄlÄk',\n            past : '%s agrÄk',\n            s : 'daĹžas sekundes',\n            m : 'minĹŤti',\n            mm : relativeTimeWithPlural,\n            h : 'stundu',\n            hh : relativeTimeWithPlural,\n            d : 'dienu',\n            dd : relativeTimeWithPlural,\n            M : 'mÄnesi',\n            MM : relativeTimeWithPlural,\n            y : 'gadu',\n            yy : relativeTimeWithPlural\n        },\n        ordinalParse: /\\d{1,2}\\./,\n        ordinal : '%d.',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : macedonian (mk)\n// author : Borislav Mickov : https://github.com/B0k0\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('mk', {\n        months : 'ŃĐ°Đ˝ŃĐ°ŃĐ¸_ŃĐľĐ˛ŃŃĐ°ŃĐ¸_ĐźĐ°ŃŃ_Đ°ĐżŃĐ¸Đť_ĐźĐ°Ń_ŃŃĐ˝Đ¸_ŃŃĐťĐ¸_Đ°Đ˛ĐłŃŃŃ_ŃĐľĐżŃĐľĐźĐ˛ŃĐ¸_ĐžĐşŃĐžĐźĐ˛ŃĐ¸_Đ˝ĐžĐľĐźĐ˛ŃĐ¸_Đ´ĐľĐşĐľĐźĐ˛ŃĐ¸'.split('_'),\n        monthsShort : 'ŃĐ°Đ˝_ŃĐľĐ˛_ĐźĐ°Ń_Đ°ĐżŃ_ĐźĐ°Ń_ŃŃĐ˝_ŃŃĐť_Đ°Đ˛Đł_ŃĐľĐż_ĐžĐşŃ_Đ˝ĐžĐľ_Đ´ĐľĐş'.split('_'),\n        weekdays : 'Đ˝ĐľĐ´ĐľĐťĐ°_ĐżĐžĐ˝ĐľĐ´ĐľĐťĐ˝Đ¸Đş_Đ˛ŃĐžŃĐ˝Đ¸Đş_ŃŃĐľĐ´Đ°_ŃĐľŃĐ˛ŃŃĐžĐş_ĐżĐľŃĐžĐş_ŃĐ°ĐąĐžŃĐ°'.split('_'),\n        weekdaysShort : 'Đ˝ĐľĐ´_ĐżĐžĐ˝_Đ˛ŃĐž_ŃŃĐľ_ŃĐľŃ_ĐżĐľŃ_ŃĐ°Đą'.split('_'),\n        weekdaysMin : 'Đ˝e_Đżo_Đ˛Ń_ŃŃ_ŃĐľ_ĐżĐľ_Ńa'.split('_'),\n        longDateFormat : {\n            LT : 'H:mm',\n            LTS : 'LT:ss',\n            L : 'D.MM.YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd, D MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay : '[ĐĐľĐ˝ĐľŃ Đ˛Đž] LT',\n            nextDay : '[ĐŁŃŃĐľ Đ˛Đž] LT',\n            nextWeek : 'dddd [Đ˛Đž] LT',\n            lastDay : '[ĐŃĐľŃĐ° Đ˛Đž] LT',\n            lastWeek : function () {\n                switch (this.day()) {\n                case 0:\n                case 3:\n                case 6:\n                    return '[ĐĐž Đ¸ĐˇĐźĐ¸Đ˝Đ°ŃĐ°ŃĐ°] dddd [Đ˛Đž] LT';\n                case 1:\n                case 2:\n                case 4:\n                case 5:\n                    return '[ĐĐž Đ¸ĐˇĐźĐ¸Đ˝Đ°ŃĐ¸ĐžŃ] dddd [Đ˛Đž] LT';\n                }\n            },\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'ĐżĐžŃĐťĐľ %s',\n            past : 'ĐżŃĐľĐ´ %s',\n            s : 'Đ˝ĐľĐşĐžĐťĐşŃ ŃĐľĐşŃĐ˝Đ´Đ¸',\n            m : 'ĐźĐ¸Đ˝ŃŃĐ°',\n            mm : '%d ĐźĐ¸Đ˝ŃŃĐ¸',\n            h : 'ŃĐ°Ń',\n            hh : '%d ŃĐ°ŃĐ°',\n            d : 'Đ´ĐľĐ˝',\n            dd : '%d Đ´ĐľĐ˝Đ°',\n            M : 'ĐźĐľŃĐľŃ',\n            MM : '%d ĐźĐľŃĐľŃĐ¸',\n            y : 'ĐłĐžĐ´Đ¸Đ˝Đ°',\n            yy : '%d ĐłĐžĐ´Đ¸Đ˝Đ¸'\n        },\n        ordinalParse: /\\d{1,2}-(ĐľĐ˛|ĐľĐ˝|ŃĐ¸|Đ˛Đ¸|ŃĐ¸|ĐźĐ¸)/,\n        ordinal : function (number) {\n            var lastDigit = number % 10,\n                last2Digits = number % 100;\n            if (number === 0) {\n                return number + '-ĐľĐ˛';\n            } else if (last2Digits === 0) {\n                return number + '-ĐľĐ˝';\n            } else if (last2Digits > 10 && last2Digits < 20) {\n                return number + '-ŃĐ¸';\n            } else if (lastDigit === 1) {\n                return number + '-Đ˛Đ¸';\n            } else if (lastDigit === 2) {\n                return number + '-ŃĐ¸';\n            } else if (lastDigit === 7 || lastDigit === 8) {\n                return number + '-ĐźĐ¸';\n            } else {\n                return number + '-ŃĐ¸';\n            }\n        },\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : malayalam (ml)\n// author : Floyd Pink : https://github.com/floydpink\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('ml', {\n        months : 'ŕ´ŕ´¨ŕľŕ´ľŕ´°ŕ´ż_ŕ´Ťŕľŕ´Źŕľŕ´°ŕľŕ´ľŕ´°ŕ´ż_ŕ´Žŕ´žŕľźŕ´ŕľŕ´ŕľ_ŕ´ŕ´Şŕľŕ´°ŕ´żŕľ˝_ŕ´Žŕľŕ´Żŕľ_ŕ´ŕľŕľş_ŕ´ŕľŕ´˛ŕľ_ŕ´ŕ´ŕ´¸ŕľŕ´ąŕľŕ´ąŕľ_ŕ´¸ŕľŕ´Şŕľŕ´ąŕľŕ´ąŕ´ŕ´Źŕľź_ŕ´ŕ´ŕľŕ´ŕľŕ´Źŕľź_ŕ´¨ŕ´ľŕ´ŕ´Źŕľź_ŕ´Ąŕ´żŕ´¸ŕ´ŕ´Źŕľź'.split('_'),\n        monthsShort : 'ŕ´ŕ´¨ŕľ._ŕ´Ťŕľŕ´Źŕľŕ´°ŕľ._ŕ´Žŕ´žŕľź._ŕ´ŕ´Şŕľŕ´°ŕ´ż._ŕ´Žŕľŕ´Żŕľ_ŕ´ŕľŕľş_ŕ´ŕľŕ´˛ŕľ._ŕ´ŕ´._ŕ´¸ŕľŕ´Şŕľŕ´ąŕľŕ´ą._ŕ´ŕ´ŕľŕ´ŕľ._ŕ´¨ŕ´ľŕ´._ŕ´Ąŕ´żŕ´¸ŕ´.'.split('_'),\n        weekdays : 'ŕ´ŕ´žŕ´Żŕ´ąŕ´žŕ´´ŕľŕ´_ŕ´¤ŕ´żŕ´ŕľŕ´ŕ´łŕ´žŕ´´ŕľŕ´_ŕ´ŕľŕ´ľŕľŕ´ľŕ´žŕ´´ŕľŕ´_ŕ´Źŕľŕ´§ŕ´¨ŕ´žŕ´´ŕľŕ´_ŕ´ľŕľŕ´Żŕ´žŕ´´ŕ´žŕ´´ŕľŕ´_ŕ´ľŕľŕ´łŕľŕ´łŕ´żŕ´Żŕ´žŕ´´ŕľŕ´_ŕ´śŕ´¨ŕ´żŕ´Żŕ´žŕ´´ŕľŕ´'.split('_'),\n        weekdaysShort : 'ŕ´ŕ´žŕ´Żŕľź_ŕ´¤ŕ´żŕ´ŕľŕ´ŕľž_ŕ´ŕľŕ´ľŕľŕ´ľ_ŕ´Źŕľŕ´§ŕľť_ŕ´ľŕľŕ´Żŕ´žŕ´´ŕ´_ŕ´ľŕľŕ´łŕľŕ´łŕ´ż_ŕ´śŕ´¨ŕ´ż'.split('_'),\n        weekdaysMin : 'ŕ´ŕ´ž_ŕ´¤ŕ´ż_ŕ´ŕľ_ŕ´Źŕľ_ŕ´ľŕľŕ´Żŕ´ž_ŕ´ľŕľ_ŕ´ś'.split('_'),\n        longDateFormat : {\n            LT : 'A h:mm -ŕ´¨ŕľ',\n            LTS : 'A h:mm:ss -ŕ´¨ŕľ',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY, LT',\n            LLLL : 'dddd, D MMMM YYYY, LT'\n        },\n        calendar : {\n            sameDay : '[ŕ´ŕ´¨ŕľŕ´¨ŕľ] LT',\n            nextDay : '[ŕ´¨ŕ´žŕ´łŕľ] LT',\n            nextWeek : 'dddd, LT',\n            lastDay : '[ŕ´ŕ´¨ŕľŕ´¨ŕ´˛ŕľ] LT',\n            lastWeek : '[ŕ´ŕ´´ŕ´żŕ´ŕľŕ´] dddd, LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : '%s ŕ´ŕ´´ŕ´żŕ´ŕľŕ´ŕľ',\n            past : '%s ŕ´Žŕľŕľťŕ´Şŕľ',\n            s : 'ŕ´ŕľ˝ŕ´Ş ŕ´¨ŕ´żŕ´Žŕ´żŕ´ˇŕ´ŕľŕ´ŕľž',\n            m : 'ŕ´ŕ´°ŕľ ŕ´Žŕ´żŕ´¨ŕ´żŕ´ąŕľŕ´ąŕľ',\n            mm : '%d ŕ´Žŕ´żŕ´¨ŕ´żŕ´ąŕľŕ´ąŕľ',\n            h : 'ŕ´ŕ´°ŕľ ŕ´Žŕ´Łŕ´żŕ´ŕľŕ´ŕľŕľź',\n            hh : '%d ŕ´Žŕ´Łŕ´żŕ´ŕľŕ´ŕľŕľź',\n            d : 'ŕ´ŕ´°ŕľ ŕ´Śŕ´żŕ´ľŕ´¸ŕ´',\n            dd : '%d ŕ´Śŕ´żŕ´ľŕ´¸ŕ´',\n            M : 'ŕ´ŕ´°ŕľ ŕ´Žŕ´žŕ´¸ŕ´',\n            MM : '%d ŕ´Žŕ´žŕ´¸ŕ´',\n            y : 'ŕ´ŕ´°ŕľ ŕ´ľŕľźŕ´ˇŕ´',\n            yy : '%d ŕ´ľŕľźŕ´ˇŕ´'\n        },\n        meridiemParse: /ŕ´°ŕ´žŕ´¤ŕľŕ´°ŕ´ż|ŕ´°ŕ´žŕ´ľŕ´żŕ´˛ŕľ|ŕ´ŕ´ŕľŕ´ ŕ´ŕ´´ŕ´żŕ´ŕľŕ´ŕľ|ŕ´ľŕľŕ´ŕľŕ´¨ŕľŕ´¨ŕľŕ´°ŕ´|ŕ´°ŕ´žŕ´¤ŕľŕ´°ŕ´ż/i,\n        isPM : function (input) {\n            return /^(ŕ´ŕ´ŕľŕ´ ŕ´ŕ´´ŕ´żŕ´ŕľŕ´ŕľ|ŕ´ľŕľŕ´ŕľŕ´¨ŕľŕ´¨ŕľŕ´°ŕ´|ŕ´°ŕ´žŕ´¤ŕľŕ´°ŕ´ż)$/.test(input);\n        },\n        meridiem : function (hour, minute, isLower) {\n            if (hour < 4) {\n                return 'ŕ´°ŕ´žŕ´¤ŕľŕ´°ŕ´ż';\n            } else if (hour < 12) {\n                return 'ŕ´°ŕ´žŕ´ľŕ´żŕ´˛ŕľ';\n            } else if (hour < 17) {\n                return 'ŕ´ŕ´ŕľŕ´ ŕ´ŕ´´ŕ´żŕ´ŕľŕ´ŕľ';\n            } else if (hour < 20) {\n                return 'ŕ´ľŕľŕ´ŕľŕ´¨ŕľŕ´¨ŕľŕ´°ŕ´';\n            } else {\n                return 'ŕ´°ŕ´žŕ´¤ŕľŕ´°ŕ´ż';\n            }\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : Marathi (mr)\n// author : Harshad Kale : https://github.com/kalehv\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var symbolMap = {\n        '1': 'ŕĽ§',\n        '2': 'ŕĽ¨',\n        '3': 'ŕĽŠ',\n        '4': 'ŕĽŞ',\n        '5': 'ŕĽŤ',\n        '6': 'ŕĽŹ',\n        '7': 'ŕĽ­',\n        '8': 'ŕĽŽ',\n        '9': 'ŕĽŻ',\n        '0': 'ŕĽŚ'\n    },\n    numberMap = {\n        'ŕĽ§': '1',\n        'ŕĽ¨': '2',\n        'ŕĽŠ': '3',\n        'ŕĽŞ': '4',\n        'ŕĽŤ': '5',\n        'ŕĽŹ': '6',\n        'ŕĽ­': '7',\n        'ŕĽŽ': '8',\n        'ŕĽŻ': '9',\n        'ŕĽŚ': '0'\n    };\n\n    return moment.defineLocale('mr', {\n        months : 'ŕ¤ŕ¤žŕ¤¨ŕĽŕ¤ľŕ¤žŕ¤°ŕĽ_ŕ¤ŤŕĽŕ¤ŹŕĽŕ¤°ŕĽŕ¤ľŕ¤žŕ¤°ŕĽ_ŕ¤Žŕ¤žŕ¤°ŕĽŕ¤_ŕ¤ŕ¤ŞŕĽŕ¤°ŕ¤żŕ¤˛_ŕ¤ŽŕĽ_ŕ¤ŕĽŕ¤¨_ŕ¤ŕĽŕ¤˛ŕĽ_ŕ¤ŕ¤ŕ¤¸ŕĽŕ¤_ŕ¤¸ŕ¤ŞŕĽŕ¤ŕĽŕ¤ŕ¤Źŕ¤°_ŕ¤ŕ¤ŕĽŕ¤ŕĽŕ¤Źŕ¤°_ŕ¤¨ŕĽŕ¤ľŕĽŕ¤šŕĽŕ¤ŕ¤Źŕ¤°_ŕ¤Ąŕ¤żŕ¤¸ŕĽŕ¤ŕ¤Źŕ¤°'.split('_'),\n        monthsShort: 'ŕ¤ŕ¤žŕ¤¨ŕĽ._ŕ¤ŤŕĽŕ¤ŹŕĽŕ¤°ŕĽ._ŕ¤Žŕ¤žŕ¤°ŕĽŕ¤._ŕ¤ŕ¤ŞŕĽŕ¤°ŕ¤ż._ŕ¤ŽŕĽ._ŕ¤ŕĽŕ¤¨._ŕ¤ŕĽŕ¤˛ŕĽ._ŕ¤ŕ¤._ŕ¤¸ŕ¤ŞŕĽŕ¤ŕĽŕ¤._ŕ¤ŕ¤ŕĽŕ¤ŕĽ._ŕ¤¨ŕĽŕ¤ľŕĽŕ¤šŕĽŕ¤._ŕ¤Ąŕ¤żŕ¤¸ŕĽŕ¤.'.split('_'),\n        weekdays : 'ŕ¤°ŕ¤ľŕ¤żŕ¤ľŕ¤žŕ¤°_ŕ¤¸ŕĽŕ¤Žŕ¤ľŕ¤žŕ¤°_ŕ¤Žŕ¤ŕ¤ŕ¤łŕ¤ľŕ¤žŕ¤°_ŕ¤ŹŕĽŕ¤§ŕ¤ľŕ¤žŕ¤°_ŕ¤ŕĽŕ¤°ŕĽŕ¤ľŕ¤žŕ¤°_ŕ¤śŕĽŕ¤ŕĽŕ¤°ŕ¤ľŕ¤žŕ¤°_ŕ¤śŕ¤¨ŕ¤żŕ¤ľŕ¤žŕ¤°'.split('_'),\n        weekdaysShort : 'ŕ¤°ŕ¤ľŕ¤ż_ŕ¤¸ŕĽŕ¤Ž_ŕ¤Žŕ¤ŕ¤ŕ¤ł_ŕ¤ŹŕĽŕ¤§_ŕ¤ŕĽŕ¤°ŕĽ_ŕ¤śŕĽŕ¤ŕĽŕ¤°_ŕ¤śŕ¤¨ŕ¤ż'.split('_'),\n        weekdaysMin : 'ŕ¤°_ŕ¤¸ŕĽ_ŕ¤Žŕ¤_ŕ¤ŹŕĽ_ŕ¤ŕĽ_ŕ¤śŕĽ_ŕ¤ś'.split('_'),\n        longDateFormat : {\n            LT : 'A h:mm ŕ¤ľŕ¤žŕ¤ŕ¤¤ŕ¤ž',\n            LTS : 'A h:mm:ss ŕ¤ľŕ¤žŕ¤ŕ¤¤ŕ¤ž',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY, LT',\n            LLLL : 'dddd, D MMMM YYYY, LT'\n        },\n        calendar : {\n            sameDay : '[ŕ¤ŕ¤] LT',\n            nextDay : '[ŕ¤ŕ¤ŚŕĽŕ¤Żŕ¤ž] LT',\n            nextWeek : 'dddd, LT',\n            lastDay : '[ŕ¤ŕ¤žŕ¤˛] LT',\n            lastWeek: '[ŕ¤Žŕ¤žŕ¤ŕĽŕ¤˛] dddd, LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : '%s ŕ¤¨ŕ¤ŕ¤¤ŕ¤°',\n            past : '%s ŕ¤ŞŕĽŕ¤°ŕĽŕ¤ľŕĽ',\n            s : 'ŕ¤¸ŕĽŕ¤ŕ¤ŕ¤Ś',\n            m: 'ŕ¤ŕ¤ ŕ¤Žŕ¤żŕ¤¨ŕ¤żŕ¤',\n            mm: '%d ŕ¤Žŕ¤żŕ¤¨ŕ¤żŕ¤ŕĽ',\n            h : 'ŕ¤ŕ¤ ŕ¤¤ŕ¤žŕ¤¸',\n            hh : '%d ŕ¤¤ŕ¤žŕ¤¸',\n            d : 'ŕ¤ŕ¤ ŕ¤Śŕ¤żŕ¤ľŕ¤¸',\n            dd : '%d ŕ¤Śŕ¤żŕ¤ľŕ¤¸',\n            M : 'ŕ¤ŕ¤ ŕ¤Žŕ¤šŕ¤żŕ¤¨ŕ¤ž',\n            MM : '%d ŕ¤Žŕ¤šŕ¤żŕ¤¨ŕĽ',\n            y : 'ŕ¤ŕ¤ ŕ¤ľŕ¤°ŕĽŕ¤ˇ',\n            yy : '%d ŕ¤ľŕ¤°ŕĽŕ¤ˇŕĽ'\n        },\n        preparse: function (string) {\n            return string.replace(/[ŕĽ§ŕĽ¨ŕĽŠŕĽŞŕĽŤŕĽŹŕĽ­ŕĽŽŕĽŻŕĽŚ]/g, function (match) {\n                return numberMap[match];\n            });\n        },\n        postformat: function (string) {\n            return string.replace(/\\d/g, function (match) {\n                return symbolMap[match];\n            });\n        },\n        meridiemParse: /ŕ¤°ŕ¤žŕ¤¤ŕĽŕ¤°ŕĽ|ŕ¤¸ŕ¤ŕ¤žŕ¤łŕĽ|ŕ¤ŚŕĽŕ¤Şŕ¤žŕ¤°ŕĽ|ŕ¤¸ŕ¤žŕ¤Żŕ¤ŕ¤ŕ¤žŕ¤łŕĽ/,\n        meridiemHour : function (hour, meridiem) {\n            if (hour === 12) {\n                hour = 0;\n            }\n            if (meridiem === 'ŕ¤°ŕ¤žŕ¤¤ŕĽŕ¤°ŕĽ') {\n                return hour < 4 ? hour : hour + 12;\n            } else if (meridiem === 'ŕ¤¸ŕ¤ŕ¤žŕ¤łŕĽ') {\n                return hour;\n            } else if (meridiem === 'ŕ¤ŚŕĽŕ¤Şŕ¤žŕ¤°ŕĽ') {\n                return hour >= 10 ? hour : hour + 12;\n            } else if (meridiem === 'ŕ¤¸ŕ¤žŕ¤Żŕ¤ŕ¤ŕ¤žŕ¤łŕĽ') {\n                return hour + 12;\n            }\n        },\n        meridiem: function (hour, minute, isLower)\n        {\n            if (hour < 4) {\n                return 'ŕ¤°ŕ¤žŕ¤¤ŕĽŕ¤°ŕĽ';\n            } else if (hour < 10) {\n                return 'ŕ¤¸ŕ¤ŕ¤žŕ¤łŕĽ';\n            } else if (hour < 17) {\n                return 'ŕ¤ŚŕĽŕ¤Şŕ¤žŕ¤°ŕĽ';\n            } else if (hour < 20) {\n                return 'ŕ¤¸ŕ¤žŕ¤Żŕ¤ŕ¤ŕ¤žŕ¤łŕĽ';\n            } else {\n                return 'ŕ¤°ŕ¤žŕ¤¤ŕĽŕ¤°ŕĽ';\n            }\n        },\n        week : {\n            dow : 0, // Sunday is the first day of the week.\n            doy : 6  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : Bahasa Malaysia (ms-MY)\n// author : Weldan Jamili : https://github.com/weldan\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('ms-my', {\n        months : 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split('_'),\n        monthsShort : 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'),\n        weekdays : 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'),\n        weekdaysShort : 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'),\n        weekdaysMin : 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'),\n        longDateFormat : {\n            LT : 'HH.mm',\n            LTS : 'LT.ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY [pukul] LT',\n            LLLL : 'dddd, D MMMM YYYY [pukul] LT'\n        },\n        meridiemParse: /pagi|tengahari|petang|malam/,\n        meridiemHour: function (hour, meridiem) {\n            if (hour === 12) {\n                hour = 0;\n            }\n            if (meridiem === 'pagi') {\n                return hour;\n            } else if (meridiem === 'tengahari') {\n                return hour >= 11 ? hour : hour + 12;\n            } else if (meridiem === 'petang' || meridiem === 'malam') {\n                return hour + 12;\n            }\n        },\n        meridiem : function (hours, minutes, isLower) {\n            if (hours < 11) {\n                return 'pagi';\n            } else if (hours < 15) {\n                return 'tengahari';\n            } else if (hours < 19) {\n                return 'petang';\n            } else {\n                return 'malam';\n            }\n        },\n        calendar : {\n            sameDay : '[Hari ini pukul] LT',\n            nextDay : '[Esok pukul] LT',\n            nextWeek : 'dddd [pukul] LT',\n            lastDay : '[Kelmarin pukul] LT',\n            lastWeek : 'dddd [lepas pukul] LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'dalam %s',\n            past : '%s yang lepas',\n            s : 'beberapa saat',\n            m : 'seminit',\n            mm : '%d minit',\n            h : 'sejam',\n            hh : '%d jam',\n            d : 'sehari',\n            dd : '%d hari',\n            M : 'sebulan',\n            MM : '%d bulan',\n            y : 'setahun',\n            yy : '%d tahun'\n        },\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : Burmese (my)\n// author : Squar team, mysquar.com\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var symbolMap = {\n        '1': 'á',\n        '2': 'á',\n        '3': 'á',\n        '4': 'á',\n        '5': 'á',\n        '6': 'á',\n        '7': 'á',\n        '8': 'á',\n        '9': 'á',\n        '0': 'á'\n    }, numberMap = {\n        'á': '1',\n        'á': '2',\n        'á': '3',\n        'á': '4',\n        'á': '5',\n        'á': '6',\n        'á': '7',\n        'á': '8',\n        'á': '9',\n        'á': '0'\n    };\n    return moment.defineLocale('my', {\n        months: 'áááşáááŤááŽ_ááąááąáŹáşááŤááŽ_áááş_á§ááźáŽ_ááą_áá˝ááş_áá°áá­áŻááş_ááźááŻááş_áááşáááşááŹ_áĄáąáŹááşáá­áŻááŹ_áá­áŻáááşááŹ_ááŽáááşááŹ'.split('_'),\n        monthsShort: 'áááş_ááą_áááş_ááźáŽ_ááą_áá˝ááş_áá­áŻááş_ááź_áááş_áĄáąáŹááş_áá­áŻ_ááŽ'.split('_'),\n        weekdays: 'ááááşášááá˝áą_ááááşášááŹ_áĄááşášááŤ_ááŻáášááá°á¸_ááźáŹááááąá¸_ááąáŹááźáŹ_áááą'.split('_'),\n        weekdaysShort: 'áá˝áą_ááŹ_ááşášááŤ_áá°á¸_ááźáŹ_ááąáŹ_ááą'.split('_'),\n        weekdaysMin: 'áá˝áą_ááŹ_ááşášááŤ_áá°á¸_ááźáŹ_ááąáŹ_ááą'.split('_'),\n        longDateFormat: {\n            LT: 'HH:mm',\n            LTS: 'HH:mm:ss',\n            L: 'DD/MM/YYYY',\n            LL: 'D MMMM YYYY',\n            LLL: 'D MMMM YYYY LT',\n            LLLL: 'dddd D MMMM YYYY LT'\n        },\n        calendar: {\n            sameDay: '[áááą.] LT [áážáŹ]',\n            nextDay: '[ááááşááźááş] LT [áážáŹ]',\n            nextWeek: 'dddd LT [áážáŹ]',\n            lastDay: '[áááą.á] LT [áážáŹ]',\n            lastWeek: '[ááźáŽá¸áá˛áˇááąáŹ] dddd LT [áážáŹ]',\n            sameElse: 'L'\n        },\n        relativeTime: {\n            future: 'ááŹáááşáˇ %s áážáŹ',\n            past: 'áá˝ááşáá˛áˇááąáŹ %s á',\n            s: 'ááášáááş.áĄáááşá¸áááş',\n            m: 'áááşáá­áááş',\n            mm: '%d áá­áááş',\n            h: 'áááşááŹááŽ',\n            hh: '%d ááŹááŽ',\n            d: 'áááşáááş',\n            dd: '%d áááş',\n            M: 'áááşá',\n            MM: '%d á',\n            y: 'áááşáážááş',\n            yy: '%d áážááş'\n        },\n        preparse: function (string) {\n            return string.replace(/[áááááááááá]/g, function (match) {\n                return numberMap[match];\n            });\n        },\n        postformat: function (string) {\n            return string.replace(/\\d/g, function (match) {\n                return symbolMap[match];\n            });\n        },\n        week: {\n            dow: 1, // Monday is the first day of the week.\n            doy: 4 // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : norwegian bokmĂĽl (nb)\n// authors : Espen Hovlandsdal : https://github.com/rexxars\n//           Sigurd Gartmann : https://github.com/sigurdga\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('nb', {\n        months : 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split('_'),\n        monthsShort : 'jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'),\n        weekdays : 'sĂ¸ndag_mandag_tirsdag_onsdag_torsdag_fredag_lĂ¸rdag'.split('_'),\n        weekdaysShort : 'sĂ¸n_man_tirs_ons_tors_fre_lĂ¸r'.split('_'),\n        weekdaysMin : 'sĂ¸_ma_ti_on_to_fr_lĂ¸'.split('_'),\n        longDateFormat : {\n            LT : 'H.mm',\n            LTS : 'LT.ss',\n            L : 'DD.MM.YYYY',\n            LL : 'D. MMMM YYYY',\n            LLL : 'D. MMMM YYYY [kl.] LT',\n            LLLL : 'dddd D. MMMM YYYY [kl.] LT'\n        },\n        calendar : {\n            sameDay: '[i dag kl.] LT',\n            nextDay: '[i morgen kl.] LT',\n            nextWeek: 'dddd [kl.] LT',\n            lastDay: '[i gĂĽr kl.] LT',\n            lastWeek: '[forrige] dddd [kl.] LT',\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : 'om %s',\n            past : 'for %s siden',\n            s : 'noen sekunder',\n            m : 'ett minutt',\n            mm : '%d minutter',\n            h : 'en time',\n            hh : '%d timer',\n            d : 'en dag',\n            dd : '%d dager',\n            M : 'en mĂĽned',\n            MM : '%d mĂĽneder',\n            y : 'ett ĂĽr',\n            yy : '%d ĂĽr'\n        },\n        ordinalParse: /\\d{1,2}\\./,\n        ordinal : '%d.',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : nepali/nepalese\n// author : suvash : https://github.com/suvash\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var symbolMap = {\n        '1': 'ŕĽ§',\n        '2': 'ŕĽ¨',\n        '3': 'ŕĽŠ',\n        '4': 'ŕĽŞ',\n        '5': 'ŕĽŤ',\n        '6': 'ŕĽŹ',\n        '7': 'ŕĽ­',\n        '8': 'ŕĽŽ',\n        '9': 'ŕĽŻ',\n        '0': 'ŕĽŚ'\n    },\n    numberMap = {\n        'ŕĽ§': '1',\n        'ŕĽ¨': '2',\n        'ŕĽŠ': '3',\n        'ŕĽŞ': '4',\n        'ŕĽŤ': '5',\n        'ŕĽŹ': '6',\n        'ŕĽ­': '7',\n        'ŕĽŽ': '8',\n        'ŕĽŻ': '9',\n        'ŕĽŚ': '0'\n    };\n\n    return moment.defineLocale('ne', {\n        months : 'ŕ¤ŕ¤¨ŕ¤ľŕ¤°ŕĽ_ŕ¤ŤŕĽŕ¤ŹŕĽŕ¤°ŕĽŕ¤ľŕ¤°ŕĽ_ŕ¤Žŕ¤žŕ¤°ŕĽŕ¤_ŕ¤ŕ¤ŞŕĽŕ¤°ŕ¤żŕ¤˛_ŕ¤Žŕ¤_ŕ¤ŕĽŕ¤¨_ŕ¤ŕĽŕ¤˛ŕ¤žŕ¤_ŕ¤ŕ¤ŕ¤ˇŕĽŕ¤_ŕ¤¸ŕĽŕ¤ŞŕĽŕ¤ŕĽŕ¤ŽŕĽŕ¤Źŕ¤°_ŕ¤ŕ¤ŕĽŕ¤ŕĽŕ¤Źŕ¤°_ŕ¤¨ŕĽŕ¤­ŕĽŕ¤ŽŕĽŕ¤Źŕ¤°_ŕ¤Ąŕ¤żŕ¤¸ŕĽŕ¤ŽŕĽŕ¤Źŕ¤°'.split('_'),\n        monthsShort : 'ŕ¤ŕ¤¨._ŕ¤ŤŕĽŕ¤ŹŕĽŕ¤°ŕĽ._ŕ¤Žŕ¤žŕ¤°ŕĽŕ¤_ŕ¤ŕ¤ŞŕĽŕ¤°ŕ¤ż._ŕ¤Žŕ¤_ŕ¤ŕĽŕ¤¨_ŕ¤ŕĽŕ¤˛ŕ¤žŕ¤._ŕ¤ŕ¤._ŕ¤¸ŕĽŕ¤ŞŕĽŕ¤._ŕ¤ŕ¤ŕĽŕ¤ŕĽ._ŕ¤¨ŕĽŕ¤­ŕĽ._ŕ¤Ąŕ¤żŕ¤¸ŕĽ.'.split('_'),\n        weekdays : 'ŕ¤ŕ¤ŕ¤¤ŕ¤Źŕ¤žŕ¤°_ŕ¤¸ŕĽŕ¤Žŕ¤Źŕ¤žŕ¤°_ŕ¤Žŕ¤ŕĽŕ¤ŕ¤˛ŕ¤Źŕ¤žŕ¤°_ŕ¤ŹŕĽŕ¤§ŕ¤Źŕ¤žŕ¤°_ŕ¤Źŕ¤żŕ¤šŕ¤żŕ¤Źŕ¤žŕ¤°_ŕ¤śŕĽŕ¤ŕĽŕ¤°ŕ¤Źŕ¤žŕ¤°_ŕ¤śŕ¤¨ŕ¤żŕ¤Źŕ¤žŕ¤°'.split('_'),\n        weekdaysShort : 'ŕ¤ŕ¤ŕ¤¤._ŕ¤¸ŕĽŕ¤Ž._ŕ¤Žŕ¤ŕĽŕ¤ŕ¤˛._ŕ¤ŹŕĽŕ¤§._ŕ¤Źŕ¤żŕ¤šŕ¤ż._ŕ¤śŕĽŕ¤ŕĽŕ¤°._ŕ¤śŕ¤¨ŕ¤ż.'.split('_'),\n        weekdaysMin : 'ŕ¤ŕ¤._ŕ¤¸ŕĽ._ŕ¤Žŕ¤ŕĽ_ŕ¤ŹŕĽ._ŕ¤Źŕ¤ż._ŕ¤śŕĽ._ŕ¤ś.'.split('_'),\n        longDateFormat : {\n            LT : 'Aŕ¤ŕĽ h:mm ŕ¤Źŕ¤ŕĽ',\n            LTS : 'Aŕ¤ŕĽ h:mm:ss ŕ¤Źŕ¤ŕĽ',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY, LT',\n            LLLL : 'dddd, D MMMM YYYY, LT'\n        },\n        preparse: function (string) {\n            return string.replace(/[ŕĽ§ŕĽ¨ŕĽŠŕĽŞŕĽŤŕĽŹŕĽ­ŕĽŽŕĽŻŕĽŚ]/g, function (match) {\n                return numberMap[match];\n            });\n        },\n        postformat: function (string) {\n            return string.replace(/\\d/g, function (match) {\n                return symbolMap[match];\n            });\n        },\n        meridiemParse: /ŕ¤°ŕ¤žŕ¤¤ŕĽ|ŕ¤Źŕ¤żŕ¤šŕ¤žŕ¤¨|ŕ¤Śŕ¤żŕ¤ŕ¤ŕ¤¸ŕĽ|ŕ¤ŹŕĽŕ¤˛ŕĽŕ¤ŕ¤ž|ŕ¤¸ŕ¤žŕ¤ŕ¤|ŕ¤°ŕ¤žŕ¤¤ŕĽ/,\n        meridiemHour : function (hour, meridiem) {\n            if (hour === 12) {\n                hour = 0;\n            }\n            if (meridiem === 'ŕ¤°ŕ¤žŕ¤¤ŕĽ') {\n                return hour < 3 ? hour : hour + 12;\n            } else if (meridiem === 'ŕ¤Źŕ¤żŕ¤šŕ¤žŕ¤¨') {\n                return hour;\n            } else if (meridiem === 'ŕ¤Śŕ¤żŕ¤ŕ¤ŕ¤¸ŕĽ') {\n                return hour >= 10 ? hour : hour + 12;\n            } else if (meridiem === 'ŕ¤ŹŕĽŕ¤˛ŕĽŕ¤ŕ¤ž' || meridiem === 'ŕ¤¸ŕ¤žŕ¤ŕ¤') {\n                return hour + 12;\n            }\n        },\n        meridiem : function (hour, minute, isLower) {\n            if (hour < 3) {\n                return 'ŕ¤°ŕ¤žŕ¤¤ŕĽ';\n            } else if (hour < 10) {\n                return 'ŕ¤Źŕ¤żŕ¤šŕ¤žŕ¤¨';\n            } else if (hour < 15) {\n                return 'ŕ¤Śŕ¤żŕ¤ŕ¤ŕ¤¸ŕĽ';\n            } else if (hour < 18) {\n                return 'ŕ¤ŹŕĽŕ¤˛ŕĽŕ¤ŕ¤ž';\n            } else if (hour < 20) {\n                return 'ŕ¤¸ŕ¤žŕ¤ŕ¤';\n            } else {\n                return 'ŕ¤°ŕ¤žŕ¤¤ŕĽ';\n            }\n        },\n        calendar : {\n            sameDay : '[ŕ¤ŕ¤] LT',\n            nextDay : '[ŕ¤­ŕĽŕ¤˛ŕĽ] LT',\n            nextWeek : '[ŕ¤ŕ¤ŕ¤ŕ¤ŚŕĽ] dddd[,] LT',\n            lastDay : '[ŕ¤šŕ¤żŕ¤ŕĽ] LT',\n            lastWeek : '[ŕ¤ŕ¤ŕ¤ŕĽ] dddd[,] LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : '%sŕ¤Žŕ¤ž',\n            past : '%s ŕ¤ŕ¤ŕ¤žŕ¤ĄŕĽ',\n            s : 'ŕ¤ŕĽŕ¤šŕĽ ŕ¤¸ŕ¤Žŕ¤Ż',\n            m : 'ŕ¤ŕ¤ ŕ¤Žŕ¤żŕ¤¨ŕĽŕ¤',\n            mm : '%d ŕ¤Žŕ¤żŕ¤¨ŕĽŕ¤',\n            h : 'ŕ¤ŕ¤ ŕ¤ŕ¤ŁŕĽŕ¤ŕ¤ž',\n            hh : '%d ŕ¤ŕ¤ŁŕĽŕ¤ŕ¤ž',\n            d : 'ŕ¤ŕ¤ ŕ¤Śŕ¤żŕ¤¨',\n            dd : '%d ŕ¤Śŕ¤żŕ¤¨',\n            M : 'ŕ¤ŕ¤ ŕ¤Žŕ¤šŕ¤żŕ¤¨ŕ¤ž',\n            MM : '%d ŕ¤Žŕ¤šŕ¤żŕ¤¨ŕ¤ž',\n            y : 'ŕ¤ŕ¤ ŕ¤Źŕ¤°ŕĽŕ¤ˇ',\n            yy : '%d ŕ¤Źŕ¤°ŕĽŕ¤ˇ'\n        },\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : dutch (nl)\n// author : Joris RĂśling : https://github.com/jjupiter\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var monthsShortWithDots = 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'),\n        monthsShortWithoutDots = 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split('_');\n\n    return moment.defineLocale('nl', {\n        months : 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split('_'),\n        monthsShort : function (m, format) {\n            if (/-MMM-/.test(format)) {\n                return monthsShortWithoutDots[m.month()];\n            } else {\n                return monthsShortWithDots[m.month()];\n            }\n        },\n        weekdays : 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'),\n        weekdaysShort : 'zo._ma._di._wo._do._vr._za.'.split('_'),\n        weekdaysMin : 'Zo_Ma_Di_Wo_Do_Vr_Za'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD-MM-YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd D MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay: '[vandaag om] LT',\n            nextDay: '[morgen om] LT',\n            nextWeek: 'dddd [om] LT',\n            lastDay: '[gisteren om] LT',\n            lastWeek: '[afgelopen] dddd [om] LT',\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : 'over %s',\n            past : '%s geleden',\n            s : 'een paar seconden',\n            m : 'ĂŠĂŠn minuut',\n            mm : '%d minuten',\n            h : 'ĂŠĂŠn uur',\n            hh : '%d uur',\n            d : 'ĂŠĂŠn dag',\n            dd : '%d dagen',\n            M : 'ĂŠĂŠn maand',\n            MM : '%d maanden',\n            y : 'ĂŠĂŠn jaar',\n            yy : '%d jaar'\n        },\n        ordinalParse: /\\d{1,2}(ste|de)/,\n        ordinal : function (number) {\n            return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de');\n        },\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : norwegian nynorsk (nn)\n// author : https://github.com/mechuwind\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('nn', {\n        months : 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split('_'),\n        monthsShort : 'jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'),\n        weekdays : 'sundag_mĂĽndag_tysdag_onsdag_torsdag_fredag_laurdag'.split('_'),\n        weekdaysShort : 'sun_mĂĽn_tys_ons_tor_fre_lau'.split('_'),\n        weekdaysMin : 'su_mĂĽ_ty_on_to_fr_lĂ¸'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD.MM.YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd D MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay: '[I dag klokka] LT',\n            nextDay: '[I morgon klokka] LT',\n            nextWeek: 'dddd [klokka] LT',\n            lastDay: '[I gĂĽr klokka] LT',\n            lastWeek: '[FĂ¸regĂĽande] dddd [klokka] LT',\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : 'om %s',\n            past : 'for %s sidan',\n            s : 'nokre sekund',\n            m : 'eit minutt',\n            mm : '%d minutt',\n            h : 'ein time',\n            hh : '%d timar',\n            d : 'ein dag',\n            dd : '%d dagar',\n            M : 'ein mĂĽnad',\n            MM : '%d mĂĽnader',\n            y : 'eit ĂĽr',\n            yy : '%d ĂĽr'\n        },\n        ordinalParse: /\\d{1,2}\\./,\n        ordinal : '%d.',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : polish (pl)\n// author : Rafal Hirsz : https://github.com/evoL\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var monthsNominative = 'styczeĹ_luty_marzec_kwiecieĹ_maj_czerwiec_lipiec_sierpieĹ_wrzesieĹ_paĹşdziernik_listopad_grudzieĹ'.split('_'),\n        monthsSubjective = 'stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_wrzeĹnia_paĹşdziernika_listopada_grudnia'.split('_');\n\n    function plural(n) {\n        return (n % 10 < 5) && (n % 10 > 1) && ((~~(n / 10) % 10) !== 1);\n    }\n\n    function translate(number, withoutSuffix, key) {\n        var result = number + ' ';\n        switch (key) {\n        case 'm':\n            return withoutSuffix ? 'minuta' : 'minutÄ';\n        case 'mm':\n            return result + (plural(number) ? 'minuty' : 'minut');\n        case 'h':\n            return withoutSuffix  ? 'godzina'  : 'godzinÄ';\n        case 'hh':\n            return result + (plural(number) ? 'godziny' : 'godzin');\n        case 'MM':\n            return result + (plural(number) ? 'miesiÄce' : 'miesiÄcy');\n        case 'yy':\n            return result + (plural(number) ? 'lata' : 'lat');\n        }\n    }\n\n    return moment.defineLocale('pl', {\n        months : function (momentToFormat, format) {\n            if (/D MMMM/.test(format)) {\n                return monthsSubjective[momentToFormat.month()];\n            } else {\n                return monthsNominative[momentToFormat.month()];\n            }\n        },\n        monthsShort : 'sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paĹş_lis_gru'.split('_'),\n        weekdays : 'niedziela_poniedziaĹek_wtorek_Ĺroda_czwartek_piÄtek_sobota'.split('_'),\n        weekdaysShort : 'nie_pon_wt_Ĺr_czw_pt_sb'.split('_'),\n        weekdaysMin : 'N_Pn_Wt_Ĺr_Cz_Pt_So'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD.MM.YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd, D MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay: '[DziĹ o] LT',\n            nextDay: '[Jutro o] LT',\n            nextWeek: '[W] dddd [o] LT',\n            lastDay: '[Wczoraj o] LT',\n            lastWeek: function () {\n                switch (this.day()) {\n                case 0:\n                    return '[W zeszĹÄ niedzielÄ o] LT';\n                case 3:\n                    return '[W zeszĹÄ ĹrodÄ o] LT';\n                case 6:\n                    return '[W zeszĹÄ sobotÄ o] LT';\n                default:\n                    return '[W zeszĹy] dddd [o] LT';\n                }\n            },\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : 'za %s',\n            past : '%s temu',\n            s : 'kilka sekund',\n            m : translate,\n            mm : translate,\n            h : translate,\n            hh : translate,\n            d : '1 dzieĹ',\n            dd : '%d dni',\n            M : 'miesiÄc',\n            MM : translate,\n            y : 'rok',\n            yy : translate\n        },\n        ordinalParse: /\\d{1,2}\\./,\n        ordinal : '%d.',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : brazilian portuguese (pt-br)\n// author : Caio Ribeiro Pereira : https://github.com/caio-ribeiro-pereira\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('pt-br', {\n        months : 'janeiro_fevereiro_marĂ§o_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro'.split('_'),\n        monthsShort : 'jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez'.split('_'),\n        weekdays : 'domingo_segunda-feira_terĂ§a-feira_quarta-feira_quinta-feira_sexta-feira_sĂĄbado'.split('_'),\n        weekdaysShort : 'dom_seg_ter_qua_qui_sex_sĂĄb'.split('_'),\n        weekdaysMin : 'dom_2ÂŞ_3ÂŞ_4ÂŞ_5ÂŞ_6ÂŞ_sĂĄb'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D [de] MMMM [de] YYYY',\n            LLL : 'D [de] MMMM [de] YYYY [Ă s] LT',\n            LLLL : 'dddd, D [de] MMMM [de] YYYY [Ă s] LT'\n        },\n        calendar : {\n            sameDay: '[Hoje Ă s] LT',\n            nextDay: '[AmanhĂŁ Ă s] LT',\n            nextWeek: 'dddd [Ă s] LT',\n            lastDay: '[Ontem Ă s] LT',\n            lastWeek: function () {\n                return (this.day() === 0 || this.day() === 6) ?\n                    '[Ăltimo] dddd [Ă s] LT' : // Saturday + Sunday\n                    '[Ăltima] dddd [Ă s] LT'; // Monday - Friday\n            },\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : 'em %s',\n            past : '%s atrĂĄs',\n            s : 'segundos',\n            m : 'um minuto',\n            mm : '%d minutos',\n            h : 'uma hora',\n            hh : '%d horas',\n            d : 'um dia',\n            dd : '%d dias',\n            M : 'um mĂŞs',\n            MM : '%d meses',\n            y : 'um ano',\n            yy : '%d anos'\n        },\n        ordinalParse: /\\d{1,2}Âş/,\n        ordinal : '%dÂş'\n    });\n}));\n// moment.js locale configuration\n// locale : portuguese (pt)\n// author : Jefferson : https://github.com/jalex79\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('pt', {\n        months : 'janeiro_fevereiro_marĂ§o_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro'.split('_'),\n        monthsShort : 'jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez'.split('_'),\n        weekdays : 'domingo_segunda-feira_terĂ§a-feira_quarta-feira_quinta-feira_sexta-feira_sĂĄbado'.split('_'),\n        weekdaysShort : 'dom_seg_ter_qua_qui_sex_sĂĄb'.split('_'),\n        weekdaysMin : 'dom_2ÂŞ_3ÂŞ_4ÂŞ_5ÂŞ_6ÂŞ_sĂĄb'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D [de] MMMM [de] YYYY',\n            LLL : 'D [de] MMMM [de] YYYY LT',\n            LLLL : 'dddd, D [de] MMMM [de] YYYY LT'\n        },\n        calendar : {\n            sameDay: '[Hoje Ă s] LT',\n            nextDay: '[AmanhĂŁ Ă s] LT',\n            nextWeek: 'dddd [Ă s] LT',\n            lastDay: '[Ontem Ă s] LT',\n            lastWeek: function () {\n                return (this.day() === 0 || this.day() === 6) ?\n                    '[Ăltimo] dddd [Ă s] LT' : // Saturday + Sunday\n                    '[Ăltima] dddd [Ă s] LT'; // Monday - Friday\n            },\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : 'em %s',\n            past : 'hĂĄ %s',\n            s : 'segundos',\n            m : 'um minuto',\n            mm : '%d minutos',\n            h : 'uma hora',\n            hh : '%d horas',\n            d : 'um dia',\n            dd : '%d dias',\n            M : 'um mĂŞs',\n            MM : '%d meses',\n            y : 'um ano',\n            yy : '%d anos'\n        },\n        ordinalParse: /\\d{1,2}Âş/,\n        ordinal : '%dÂş',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : romanian (ro)\n// author : Vlad Gurdiga : https://github.com/gurdiga\n// author : Valentin Agachi : https://github.com/avaly\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    function relativeTimeWithPlural(number, withoutSuffix, key) {\n        var format = {\n                'mm': 'minute',\n                'hh': 'ore',\n                'dd': 'zile',\n                'MM': 'luni',\n                'yy': 'ani'\n            },\n            separator = ' ';\n        if (number % 100 >= 20 || (number >= 100 && number % 100 === 0)) {\n            separator = ' de ';\n        }\n\n        return number + separator + format[key];\n    }\n\n    return moment.defineLocale('ro', {\n        months : 'ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie'.split('_'),\n        monthsShort : 'ian._febr._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.'.split('_'),\n        weekdays : 'duminicÄ_luni_marČi_miercuri_joi_vineri_sĂ˘mbÄtÄ'.split('_'),\n        weekdaysShort : 'Dum_Lun_Mar_Mie_Joi_Vin_SĂ˘m'.split('_'),\n        weekdaysMin : 'Du_Lu_Ma_Mi_Jo_Vi_SĂ˘'.split('_'),\n        longDateFormat : {\n            LT : 'H:mm',\n            LTS : 'LT:ss',\n            L : 'DD.MM.YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY H:mm',\n            LLLL : 'dddd, D MMMM YYYY H:mm'\n        },\n        calendar : {\n            sameDay: '[azi la] LT',\n            nextDay: '[mĂ˘ine la] LT',\n            nextWeek: 'dddd [la] LT',\n            lastDay: '[ieri la] LT',\n            lastWeek: '[fosta] dddd [la] LT',\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : 'peste %s',\n            past : '%s ĂŽn urmÄ',\n            s : 'cĂ˘teva secunde',\n            m : 'un minut',\n            mm : relativeTimeWithPlural,\n            h : 'o orÄ',\n            hh : relativeTimeWithPlural,\n            d : 'o zi',\n            dd : relativeTimeWithPlural,\n            M : 'o lunÄ',\n            MM : relativeTimeWithPlural,\n            y : 'un an',\n            yy : relativeTimeWithPlural\n        },\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : russian (ru)\n// author : Viktorminator : https://github.com/Viktorminator\n// Author : Menelion ElensĂşle : https://github.com/Oire\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    function plural(word, num) {\n        var forms = word.split('_');\n        return num % 10 === 1 && num % 100 !== 11 ? forms[0] : (num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) ? forms[1] : forms[2]);\n    }\n\n    function relativeTimeWithPlural(number, withoutSuffix, key) {\n        var format = {\n            'mm': withoutSuffix ? 'ĐźĐ¸Đ˝ŃŃĐ°_ĐźĐ¸Đ˝ŃŃŃ_ĐźĐ¸Đ˝ŃŃ' : 'ĐźĐ¸Đ˝ŃŃŃ_ĐźĐ¸Đ˝ŃŃŃ_ĐźĐ¸Đ˝ŃŃ',\n            'hh': 'ŃĐ°Ń_ŃĐ°ŃĐ°_ŃĐ°ŃĐžĐ˛',\n            'dd': 'Đ´ĐľĐ˝Ń_Đ´Đ˝Ń_Đ´Đ˝ĐľĐš',\n            'MM': 'ĐźĐľŃŃŃ_ĐźĐľŃŃŃĐ°_ĐźĐľŃŃŃĐľĐ˛',\n            'yy': 'ĐłĐžĐ´_ĐłĐžĐ´Đ°_ĐťĐľŃ'\n        };\n        if (key === 'm') {\n            return withoutSuffix ? 'ĐźĐ¸Đ˝ŃŃĐ°' : 'ĐźĐ¸Đ˝ŃŃŃ';\n        }\n        else {\n            return number + ' ' + plural(format[key], +number);\n        }\n    }\n\n    function monthsCaseReplace(m, format) {\n        var months = {\n            'nominative': 'ŃĐ˝Đ˛Đ°ŃŃ_ŃĐľĐ˛ŃĐ°ĐťŃ_ĐźĐ°ŃŃ_Đ°ĐżŃĐľĐťŃ_ĐźĐ°Đš_Đ¸ŃĐ˝Ń_Đ¸ŃĐťŃ_Đ°Đ˛ĐłŃŃŃ_ŃĐľĐ˝ŃŃĐąŃŃ_ĐžĐşŃŃĐąŃŃ_Đ˝ĐžŃĐąŃŃ_Đ´ĐľĐşĐ°ĐąŃŃ'.split('_'),\n            'accusative': 'ŃĐ˝Đ˛Đ°ŃŃ_ŃĐľĐ˛ŃĐ°ĐťŃ_ĐźĐ°ŃŃĐ°_Đ°ĐżŃĐľĐťŃ_ĐźĐ°Ń_Đ¸ŃĐ˝Ń_Đ¸ŃĐťŃ_Đ°Đ˛ĐłŃŃŃĐ°_ŃĐľĐ˝ŃŃĐąŃŃ_ĐžĐşŃŃĐąŃŃ_Đ˝ĐžŃĐąŃŃ_Đ´ĐľĐşĐ°ĐąŃŃ'.split('_')\n        },\n\n        nounCase = (/D[oD]?(\\[[^\\[\\]]*\\]|\\s+)+MMMM?/).test(format) ?\n            'accusative' :\n            'nominative';\n\n        return months[nounCase][m.month()];\n    }\n\n    function monthsShortCaseReplace(m, format) {\n        var monthsShort = {\n            'nominative': 'ŃĐ˝Đ˛_ŃĐľĐ˛_ĐźĐ°ŃŃ_Đ°ĐżŃ_ĐźĐ°Đš_Đ¸ŃĐ˝Ń_Đ¸ŃĐťŃ_Đ°Đ˛Đł_ŃĐľĐ˝_ĐžĐşŃ_Đ˝ĐžŃ_Đ´ĐľĐş'.split('_'),\n            'accusative': 'ŃĐ˝Đ˛_ŃĐľĐ˛_ĐźĐ°Ń_Đ°ĐżŃ_ĐźĐ°Ń_Đ¸ŃĐ˝Ń_Đ¸ŃĐťŃ_Đ°Đ˛Đł_ŃĐľĐ˝_ĐžĐşŃ_Đ˝ĐžŃ_Đ´ĐľĐş'.split('_')\n        },\n\n        nounCase = (/D[oD]?(\\[[^\\[\\]]*\\]|\\s+)+MMMM?/).test(format) ?\n            'accusative' :\n            'nominative';\n\n        return monthsShort[nounCase][m.month()];\n    }\n\n    function weekdaysCaseReplace(m, format) {\n        var weekdays = {\n            'nominative': 'Đ˛ĐžŃĐşŃĐľŃĐľĐ˝ŃĐľ_ĐżĐžĐ˝ĐľĐ´ĐľĐťŃĐ˝Đ¸Đş_Đ˛ŃĐžŃĐ˝Đ¸Đş_ŃŃĐľĐ´Đ°_ŃĐľŃĐ˛ĐľŃĐł_ĐżŃŃĐ˝Đ¸ŃĐ°_ŃŃĐąĐąĐžŃĐ°'.split('_'),\n            'accusative': 'Đ˛ĐžŃĐşŃĐľŃĐľĐ˝ŃĐľ_ĐżĐžĐ˝ĐľĐ´ĐľĐťŃĐ˝Đ¸Đş_Đ˛ŃĐžŃĐ˝Đ¸Đş_ŃŃĐľĐ´Ń_ŃĐľŃĐ˛ĐľŃĐł_ĐżŃŃĐ˝Đ¸ŃŃ_ŃŃĐąĐąĐžŃŃ'.split('_')\n        },\n\n        nounCase = (/\\[ ?[ĐĐ˛] ?(?:ĐżŃĐžŃĐťŃŃ|ŃĐťĐľĐ´ŃŃŃŃŃ|ŃŃŃ)? ?\\] ?dddd/).test(format) ?\n            'accusative' :\n            'nominative';\n\n        return weekdays[nounCase][m.day()];\n    }\n\n    return moment.defineLocale('ru', {\n        months : monthsCaseReplace,\n        monthsShort : monthsShortCaseReplace,\n        weekdays : weekdaysCaseReplace,\n        weekdaysShort : 'Đ˛Ń_ĐżĐ˝_Đ˛Ń_ŃŃ_ŃŃ_ĐżŃ_ŃĐą'.split('_'),\n        weekdaysMin : 'Đ˛Ń_ĐżĐ˝_Đ˛Ń_ŃŃ_ŃŃ_ĐżŃ_ŃĐą'.split('_'),\n        monthsParse : [/^ŃĐ˝Đ˛/i, /^ŃĐľĐ˛/i, /^ĐźĐ°Ń/i, /^Đ°ĐżŃ/i, /^ĐźĐ°[Đš|Ń]/i, /^Đ¸ŃĐ˝/i, /^Đ¸ŃĐť/i, /^Đ°Đ˛Đł/i, /^ŃĐľĐ˝/i, /^ĐžĐşŃ/i, /^Đ˝ĐžŃ/i, /^Đ´ĐľĐş/i],\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD.MM.YYYY',\n            LL : 'D MMMM YYYY Đł.',\n            LLL : 'D MMMM YYYY Đł., LT',\n            LLLL : 'dddd, D MMMM YYYY Đł., LT'\n        },\n        calendar : {\n            sameDay: '[ĐĄĐľĐłĐžĐ´Đ˝Ń Đ˛] LT',\n            nextDay: '[ĐĐ°Đ˛ŃŃĐ° Đ˛] LT',\n            lastDay: '[ĐŃĐľŃĐ° Đ˛] LT',\n            nextWeek: function () {\n                return this.day() === 2 ? '[ĐĐž] dddd [Đ˛] LT' : '[Đ] dddd [Đ˛] LT';\n            },\n            lastWeek: function (now) {\n                if (now.week() !== this.week()) {\n                    switch (this.day()) {\n                    case 0:\n                        return '[Đ ĐżŃĐžŃĐťĐžĐľ] dddd [Đ˛] LT';\n                    case 1:\n                    case 2:\n                    case 4:\n                        return '[Đ ĐżŃĐžŃĐťŃĐš] dddd [Đ˛] LT';\n                    case 3:\n                    case 5:\n                    case 6:\n                        return '[Đ ĐżŃĐžŃĐťŃŃ] dddd [Đ˛] LT';\n                    }\n                } else {\n                    if (this.day() === 2) {\n                        return '[ĐĐž] dddd [Đ˛] LT';\n                    } else {\n                        return '[Đ] dddd [Đ˛] LT';\n                    }\n                }\n            },\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : 'ŃĐľŃĐľĐˇ %s',\n            past : '%s Đ˝Đ°ĐˇĐ°Đ´',\n            s : 'Đ˝ĐľŃĐşĐžĐťŃĐşĐž ŃĐľĐşŃĐ˝Đ´',\n            m : relativeTimeWithPlural,\n            mm : relativeTimeWithPlural,\n            h : 'ŃĐ°Ń',\n            hh : relativeTimeWithPlural,\n            d : 'Đ´ĐľĐ˝Ń',\n            dd : relativeTimeWithPlural,\n            M : 'ĐźĐľŃŃŃ',\n            MM : relativeTimeWithPlural,\n            y : 'ĐłĐžĐ´',\n            yy : relativeTimeWithPlural\n        },\n\n        meridiemParse: /Đ˝ĐžŃĐ¸|ŃŃŃĐ°|Đ´Đ˝Ń|Đ˛ĐľŃĐľŃĐ°/i,\n        isPM : function (input) {\n            return /^(Đ´Đ˝Ń|Đ˛ĐľŃĐľŃĐ°)$/.test(input);\n        },\n\n        meridiem : function (hour, minute, isLower) {\n            if (hour < 4) {\n                return 'Đ˝ĐžŃĐ¸';\n            } else if (hour < 12) {\n                return 'ŃŃŃĐ°';\n            } else if (hour < 17) {\n                return 'Đ´Đ˝Ń';\n            } else {\n                return 'Đ˛ĐľŃĐľŃĐ°';\n            }\n        },\n\n        ordinalParse: /\\d{1,2}-(Đš|ĐłĐž|Ń)/,\n        ordinal: function (number, period) {\n            switch (period) {\n            case 'M':\n            case 'd':\n            case 'DDD':\n                return number + '-Đš';\n            case 'D':\n                return number + '-ĐłĐž';\n            case 'w':\n            case 'W':\n                return number + '-Ń';\n            default:\n                return number;\n            }\n        },\n\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : slovak (sk)\n// author : Martin Minka : https://github.com/k2s\n// based on work of petrbela : https://github.com/petrbela\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var months = 'januĂĄr_februĂĄr_marec_aprĂ­l_mĂĄj_jĂşn_jĂşl_august_september_oktĂłber_november_december'.split('_'),\n        monthsShort = 'jan_feb_mar_apr_mĂĄj_jĂşn_jĂşl_aug_sep_okt_nov_dec'.split('_');\n\n    function plural(n) {\n        return (n > 1) && (n < 5);\n    }\n\n    function translate(number, withoutSuffix, key, isFuture) {\n        var result = number + ' ';\n        switch (key) {\n        case 's':  // a few seconds / in a few seconds / a few seconds ago\n            return (withoutSuffix || isFuture) ? 'pĂĄr sekĂşnd' : 'pĂĄr sekundami';\n        case 'm':  // a minute / in a minute / a minute ago\n            return withoutSuffix ? 'minĂşta' : (isFuture ? 'minĂştu' : 'minĂştou');\n        case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago\n            if (withoutSuffix || isFuture) {\n                return result + (plural(number) ? 'minĂşty' : 'minĂşt');\n            } else {\n                return result + 'minĂştami';\n            }\n            break;\n        case 'h':  // an hour / in an hour / an hour ago\n            return withoutSuffix ? 'hodina' : (isFuture ? 'hodinu' : 'hodinou');\n        case 'hh': // 9 hours / in 9 hours / 9 hours ago\n            if (withoutSuffix || isFuture) {\n                return result + (plural(number) ? 'hodiny' : 'hodĂ­n');\n            } else {\n                return result + 'hodinami';\n            }\n            break;\n        case 'd':  // a day / in a day / a day ago\n            return (withoutSuffix || isFuture) ? 'deĹ' : 'dĹom';\n        case 'dd': // 9 days / in 9 days / 9 days ago\n            if (withoutSuffix || isFuture) {\n                return result + (plural(number) ? 'dni' : 'dnĂ­');\n            } else {\n                return result + 'dĹami';\n            }\n            break;\n        case 'M':  // a month / in a month / a month ago\n            return (withoutSuffix || isFuture) ? 'mesiac' : 'mesiacom';\n        case 'MM': // 9 months / in 9 months / 9 months ago\n            if (withoutSuffix || isFuture) {\n                return result + (plural(number) ? 'mesiace' : 'mesiacov');\n            } else {\n                return result + 'mesiacmi';\n            }\n            break;\n        case 'y':  // a year / in a year / a year ago\n            return (withoutSuffix || isFuture) ? 'rok' : 'rokom';\n        case 'yy': // 9 years / in 9 years / 9 years ago\n            if (withoutSuffix || isFuture) {\n                return result + (plural(number) ? 'roky' : 'rokov');\n            } else {\n                return result + 'rokmi';\n            }\n            break;\n        }\n    }\n\n    return moment.defineLocale('sk', {\n        months : months,\n        monthsShort : monthsShort,\n        monthsParse : (function (months, monthsShort) {\n            var i, _monthsParse = [];\n            for (i = 0; i < 12; i++) {\n                // use custom parser to solve problem with July (Äervenec)\n                _monthsParse[i] = new RegExp('^' + months[i] + '$|^' + monthsShort[i] + '$', 'i');\n            }\n            return _monthsParse;\n        }(months, monthsShort)),\n        weekdays : 'nedeÄža_pondelok_utorok_streda_ĹĄtvrtok_piatok_sobota'.split('_'),\n        weekdaysShort : 'ne_po_ut_st_ĹĄt_pi_so'.split('_'),\n        weekdaysMin : 'ne_po_ut_st_ĹĄt_pi_so'.split('_'),\n        longDateFormat : {\n            LT: 'H:mm',\n            LTS : 'LT:ss',\n            L : 'DD.MM.YYYY',\n            LL : 'D. MMMM YYYY',\n            LLL : 'D. MMMM YYYY LT',\n            LLLL : 'dddd D. MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay: '[dnes o] LT',\n            nextDay: '[zajtra o] LT',\n            nextWeek: function () {\n                switch (this.day()) {\n                case 0:\n                    return '[v nedeÄžu o] LT';\n                case 1:\n                case 2:\n                    return '[v] dddd [o] LT';\n                case 3:\n                    return '[v stredu o] LT';\n                case 4:\n                    return '[vo ĹĄtvrtok o] LT';\n                case 5:\n                    return '[v piatok o] LT';\n                case 6:\n                    return '[v sobotu o] LT';\n                }\n            },\n            lastDay: '[vÄera o] LT',\n            lastWeek: function () {\n                switch (this.day()) {\n                case 0:\n                    return '[minulĂş nedeÄžu o] LT';\n                case 1:\n                case 2:\n                    return '[minulĂ˝] dddd [o] LT';\n                case 3:\n                    return '[minulĂş stredu o] LT';\n                case 4:\n                case 5:\n                    return '[minulĂ˝] dddd [o] LT';\n                case 6:\n                    return '[minulĂş sobotu o] LT';\n                }\n            },\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : 'za %s',\n            past : 'pred %s',\n            s : translate,\n            m : translate,\n            mm : translate,\n            h : translate,\n            hh : translate,\n            d : translate,\n            dd : translate,\n            M : translate,\n            MM : translate,\n            y : translate,\n            yy : translate\n        },\n        ordinalParse: /\\d{1,2}\\./,\n        ordinal : '%d.',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : slovenian (sl)\n// author : Robert SedovĹĄek : https://github.com/sedovsek\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    function translate(number, withoutSuffix, key) {\n        var result = number + ' ';\n        switch (key) {\n        case 'm':\n            return withoutSuffix ? 'ena minuta' : 'eno minuto';\n        case 'mm':\n            if (number === 1) {\n                result += 'minuta';\n            } else if (number === 2) {\n                result += 'minuti';\n            } else if (number === 3 || number === 4) {\n                result += 'minute';\n            } else {\n                result += 'minut';\n            }\n            return result;\n        case 'h':\n            return withoutSuffix ? 'ena ura' : 'eno uro';\n        case 'hh':\n            if (number === 1) {\n                result += 'ura';\n            } else if (number === 2) {\n                result += 'uri';\n            } else if (number === 3 || number === 4) {\n                result += 'ure';\n            } else {\n                result += 'ur';\n            }\n            return result;\n        case 'dd':\n            if (number === 1) {\n                result += 'dan';\n            } else {\n                result += 'dni';\n            }\n            return result;\n        case 'MM':\n            if (number === 1) {\n                result += 'mesec';\n            } else if (number === 2) {\n                result += 'meseca';\n            } else if (number === 3 || number === 4) {\n                result += 'mesece';\n            } else {\n                result += 'mesecev';\n            }\n            return result;\n        case 'yy':\n            if (number === 1) {\n                result += 'leto';\n            } else if (number === 2) {\n                result += 'leti';\n            } else if (number === 3 || number === 4) {\n                result += 'leta';\n            } else {\n                result += 'let';\n            }\n            return result;\n        }\n    }\n\n    return moment.defineLocale('sl', {\n        months : 'januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december'.split('_'),\n        monthsShort : 'jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.'.split('_'),\n        weekdays : 'nedelja_ponedeljek_torek_sreda_Äetrtek_petek_sobota'.split('_'),\n        weekdaysShort : 'ned._pon._tor._sre._Äet._pet._sob.'.split('_'),\n        weekdaysMin : 'ne_po_to_sr_Äe_pe_so'.split('_'),\n        longDateFormat : {\n            LT : 'H:mm',\n            LTS : 'LT:ss',\n            L : 'DD. MM. YYYY',\n            LL : 'D. MMMM YYYY',\n            LLL : 'D. MMMM YYYY LT',\n            LLLL : 'dddd, D. MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay  : '[danes ob] LT',\n            nextDay  : '[jutri ob] LT',\n\n            nextWeek : function () {\n                switch (this.day()) {\n                case 0:\n                    return '[v] [nedeljo] [ob] LT';\n                case 3:\n                    return '[v] [sredo] [ob] LT';\n                case 6:\n                    return '[v] [soboto] [ob] LT';\n                case 1:\n                case 2:\n                case 4:\n                case 5:\n                    return '[v] dddd [ob] LT';\n                }\n            },\n            lastDay  : '[vÄeraj ob] LT',\n            lastWeek : function () {\n                switch (this.day()) {\n                case 0:\n                case 3:\n                case 6:\n                    return '[prejĹĄnja] dddd [ob] LT';\n                case 1:\n                case 2:\n                case 4:\n                case 5:\n                    return '[prejĹĄnji] dddd [ob] LT';\n                }\n            },\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'Äez %s',\n            past   : '%s nazaj',\n            s      : 'nekaj sekund',\n            m      : translate,\n            mm     : translate,\n            h      : translate,\n            hh     : translate,\n            d      : 'en dan',\n            dd     : translate,\n            M      : 'en mesec',\n            MM     : translate,\n            y      : 'eno leto',\n            yy     : translate\n        },\n        ordinalParse: /\\d{1,2}\\./,\n        ordinal : '%d.',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : Albanian (sq)\n// author : FlakĂŤrim Ismani : https://github.com/flakerimi\n// author: Menelion ElensĂşle: https://github.com/Oire (tests)\n// author : Oerd Cukalla : https://github.com/oerd (fixes)\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('sq', {\n        months : 'Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_NĂŤntor_Dhjetor'.split('_'),\n        monthsShort : 'Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_NĂŤn_Dhj'.split('_'),\n        weekdays : 'E Diel_E HĂŤnĂŤ_E MartĂŤ_E MĂŤrkurĂŤ_E Enjte_E Premte_E ShtunĂŤ'.split('_'),\n        weekdaysShort : 'Die_HĂŤn_Mar_MĂŤr_Enj_Pre_Sht'.split('_'),\n        weekdaysMin : 'D_H_Ma_MĂŤ_E_P_Sh'.split('_'),\n        meridiemParse: /PD|MD/,\n        isPM: function (input) {\n            return input.charAt(0) === 'M';\n        },\n        meridiem : function (hours, minutes, isLower) {\n            return hours < 12 ? 'PD' : 'MD';\n        },\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd, D MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay : '[Sot nĂŤ] LT',\n            nextDay : '[NesĂŤr nĂŤ] LT',\n            nextWeek : 'dddd [nĂŤ] LT',\n            lastDay : '[Dje nĂŤ] LT',\n            lastWeek : 'dddd [e kaluar nĂŤ] LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'nĂŤ %s',\n            past : '%s mĂŤ parĂŤ',\n            s : 'disa sekonda',\n            m : 'njĂŤ minutĂŤ',\n            mm : '%d minuta',\n            h : 'njĂŤ orĂŤ',\n            hh : '%d orĂŤ',\n            d : 'njĂŤ ditĂŤ',\n            dd : '%d ditĂŤ',\n            M : 'njĂŤ muaj',\n            MM : '%d muaj',\n            y : 'njĂŤ vit',\n            yy : '%d vite'\n        },\n        ordinalParse: /\\d{1,2}\\./,\n        ordinal : '%d.',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : Serbian-cyrillic (sr-cyrl)\n// author : Milan JanaÄkoviÄ<milanjanackovic@gmail.com> : https://github.com/milan-j\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var translator = {\n        words: { //Different grammatical cases\n            m: ['ŃĐľĐ´Đ°Đ˝ ĐźĐ¸Đ˝ŃŃ', 'ŃĐľĐ´Đ˝Đľ ĐźĐ¸Đ˝ŃŃĐľ'],\n            mm: ['ĐźĐ¸Đ˝ŃŃ', 'ĐźĐ¸Đ˝ŃŃĐľ', 'ĐźĐ¸Đ˝ŃŃĐ°'],\n            h: ['ŃĐľĐ´Đ°Đ˝ ŃĐ°Ń', 'ŃĐľĐ´Đ˝ĐžĐł ŃĐ°ŃĐ°'],\n            hh: ['ŃĐ°Ń', 'ŃĐ°ŃĐ°', 'ŃĐ°ŃĐ¸'],\n            dd: ['Đ´Đ°Đ˝', 'Đ´Đ°Đ˝Đ°', 'Đ´Đ°Đ˝Đ°'],\n            MM: ['ĐźĐľŃĐľŃ', 'ĐźĐľŃĐľŃĐ°', 'ĐźĐľŃĐľŃĐ¸'],\n            yy: ['ĐłĐžĐ´Đ¸Đ˝Đ°', 'ĐłĐžĐ´Đ¸Đ˝Đľ', 'ĐłĐžĐ´Đ¸Đ˝Đ°']\n        },\n        correctGrammaticalCase: function (number, wordKey) {\n            return number === 1 ? wordKey[0] : (number >= 2 && number <= 4 ? wordKey[1] : wordKey[2]);\n        },\n        translate: function (number, withoutSuffix, key) {\n            var wordKey = translator.words[key];\n            if (key.length === 1) {\n                return withoutSuffix ? wordKey[0] : wordKey[1];\n            } else {\n                return number + ' ' + translator.correctGrammaticalCase(number, wordKey);\n            }\n        }\n    };\n\n    return moment.defineLocale('sr-cyrl', {\n        months: ['ŃĐ°Đ˝ŃĐ°Ń', 'ŃĐľĐąŃŃĐ°Ń', 'ĐźĐ°ŃŃ', 'Đ°ĐżŃĐ¸Đť', 'ĐźĐ°Ń', 'ŃŃĐ˝', 'ŃŃĐť', 'Đ°Đ˛ĐłŃŃŃ', 'ŃĐľĐżŃĐľĐźĐąĐ°Ń', 'ĐžĐşŃĐžĐąĐ°Ń', 'Đ˝ĐžĐ˛ĐľĐźĐąĐ°Ń', 'Đ´ĐľŃĐľĐźĐąĐ°Ń'],\n        monthsShort: ['ŃĐ°Đ˝.', 'ŃĐľĐą.', 'ĐźĐ°Ń.', 'Đ°ĐżŃ.', 'ĐźĐ°Ń', 'ŃŃĐ˝', 'ŃŃĐť', 'Đ°Đ˛Đł.', 'ŃĐľĐż.', 'ĐžĐşŃ.', 'Đ˝ĐžĐ˛.', 'Đ´ĐľŃ.'],\n        weekdays: ['Đ˝ĐľĐ´ĐľŃĐ°', 'ĐżĐžĐ˝ĐľĐ´ĐľŃĐ°Đş', 'ŃŃĐžŃĐ°Đş', 'ŃŃĐľĐ´Đ°', 'ŃĐľŃĐ˛ŃŃĐ°Đş', 'ĐżĐľŃĐ°Đş', 'ŃŃĐąĐžŃĐ°'],\n        weekdaysShort: ['Đ˝ĐľĐ´.', 'ĐżĐžĐ˝.', 'ŃŃĐž.', 'ŃŃĐľ.', 'ŃĐľŃ.', 'ĐżĐľŃ.', 'ŃŃĐą.'],\n        weekdaysMin: ['Đ˝Đľ', 'ĐżĐž', 'ŃŃ', 'ŃŃ', 'ŃĐľ', 'ĐżĐľ', 'ŃŃ'],\n        longDateFormat: {\n            LT: 'H:mm',\n            LTS : 'LT:ss',\n            L: 'DD. MM. YYYY',\n            LL: 'D. MMMM YYYY',\n            LLL: 'D. MMMM YYYY LT',\n            LLLL: 'dddd, D. MMMM YYYY LT'\n        },\n        calendar: {\n            sameDay: '[Đ´Đ°Đ˝Đ°Ń Ń] LT',\n            nextDay: '[ŃŃŃŃĐ° Ń] LT',\n\n            nextWeek: function () {\n                switch (this.day()) {\n                case 0:\n                    return '[Ń] [Đ˝ĐľĐ´ĐľŃŃ] [Ń] LT';\n                case 3:\n                    return '[Ń] [ŃŃĐľĐ´Ń] [Ń] LT';\n                case 6:\n                    return '[Ń] [ŃŃĐąĐžŃŃ] [Ń] LT';\n                case 1:\n                case 2:\n                case 4:\n                case 5:\n                    return '[Ń] dddd [Ń] LT';\n                }\n            },\n            lastDay  : '[ŃŃŃĐľ Ń] LT',\n            lastWeek : function () {\n                var lastWeekDays = [\n                    '[ĐżŃĐžŃĐťĐľ] [Đ˝ĐľĐ´ĐľŃĐľ] [Ń] LT',\n                    '[ĐżŃĐžŃĐťĐžĐł] [ĐżĐžĐ˝ĐľĐ´ĐľŃĐşĐ°] [Ń] LT',\n                    '[ĐżŃĐžŃĐťĐžĐł] [ŃŃĐžŃĐşĐ°] [Ń] LT',\n                    '[ĐżŃĐžŃĐťĐľ] [ŃŃĐľĐ´Đľ] [Ń] LT',\n                    '[ĐżŃĐžŃĐťĐžĐł] [ŃĐľŃĐ˛ŃŃĐşĐ°] [Ń] LT',\n                    '[ĐżŃĐžŃĐťĐžĐł] [ĐżĐľŃĐşĐ°] [Ń] LT',\n                    '[ĐżŃĐžŃĐťĐľ] [ŃŃĐąĐžŃĐľ] [Ń] LT'\n                ];\n                return lastWeekDays[this.day()];\n            },\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'ĐˇĐ° %s',\n            past   : 'ĐżŃĐľ %s',\n            s      : 'Đ˝ĐľĐşĐžĐťĐ¸ĐşĐž ŃĐľĐşŃĐ˝Đ´Đ¸',\n            m      : translator.translate,\n            mm     : translator.translate,\n            h      : translator.translate,\n            hh     : translator.translate,\n            d      : 'Đ´Đ°Đ˝',\n            dd     : translator.translate,\n            M      : 'ĐźĐľŃĐľŃ',\n            MM     : translator.translate,\n            y      : 'ĐłĐžĐ´Đ¸Đ˝Ń',\n            yy     : translator.translate\n        },\n        ordinalParse: /\\d{1,2}\\./,\n        ordinal : '%d.',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : Serbian-latin (sr)\n// author : Milan JanaÄkoviÄ<milanjanackovic@gmail.com> : https://github.com/milan-j\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var translator = {\n        words: { //Different grammatical cases\n            m: ['jedan minut', 'jedne minute'],\n            mm: ['minut', 'minute', 'minuta'],\n            h: ['jedan sat', 'jednog sata'],\n            hh: ['sat', 'sata', 'sati'],\n            dd: ['dan', 'dana', 'dana'],\n            MM: ['mesec', 'meseca', 'meseci'],\n            yy: ['godina', 'godine', 'godina']\n        },\n        correctGrammaticalCase: function (number, wordKey) {\n            return number === 1 ? wordKey[0] : (number >= 2 && number <= 4 ? wordKey[1] : wordKey[2]);\n        },\n        translate: function (number, withoutSuffix, key) {\n            var wordKey = translator.words[key];\n            if (key.length === 1) {\n                return withoutSuffix ? wordKey[0] : wordKey[1];\n            } else {\n                return number + ' ' + translator.correctGrammaticalCase(number, wordKey);\n            }\n        }\n    };\n\n    return moment.defineLocale('sr', {\n        months: ['januar', 'februar', 'mart', 'april', 'maj', 'jun', 'jul', 'avgust', 'septembar', 'oktobar', 'novembar', 'decembar'],\n        monthsShort: ['jan.', 'feb.', 'mar.', 'apr.', 'maj', 'jun', 'jul', 'avg.', 'sep.', 'okt.', 'nov.', 'dec.'],\n        weekdays: ['nedelja', 'ponedeljak', 'utorak', 'sreda', 'Äetvrtak', 'petak', 'subota'],\n        weekdaysShort: ['ned.', 'pon.', 'uto.', 'sre.', 'Äet.', 'pet.', 'sub.'],\n        weekdaysMin: ['ne', 'po', 'ut', 'sr', 'Äe', 'pe', 'su'],\n        longDateFormat: {\n            LT: 'H:mm',\n            LTS : 'LT:ss',\n            L: 'DD. MM. YYYY',\n            LL: 'D. MMMM YYYY',\n            LLL: 'D. MMMM YYYY LT',\n            LLLL: 'dddd, D. MMMM YYYY LT'\n        },\n        calendar: {\n            sameDay: '[danas u] LT',\n            nextDay: '[sutra u] LT',\n\n            nextWeek: function () {\n                switch (this.day()) {\n                case 0:\n                    return '[u] [nedelju] [u] LT';\n                case 3:\n                    return '[u] [sredu] [u] LT';\n                case 6:\n                    return '[u] [subotu] [u] LT';\n                case 1:\n                case 2:\n                case 4:\n                case 5:\n                    return '[u] dddd [u] LT';\n                }\n            },\n            lastDay  : '[juÄe u] LT',\n            lastWeek : function () {\n                var lastWeekDays = [\n                    '[proĹĄle] [nedelje] [u] LT',\n                    '[proĹĄlog] [ponedeljka] [u] LT',\n                    '[proĹĄlog] [utorka] [u] LT',\n                    '[proĹĄle] [srede] [u] LT',\n                    '[proĹĄlog] [Äetvrtka] [u] LT',\n                    '[proĹĄlog] [petka] [u] LT',\n                    '[proĹĄle] [subote] [u] LT'\n                ];\n                return lastWeekDays[this.day()];\n            },\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'za %s',\n            past   : 'pre %s',\n            s      : 'nekoliko sekundi',\n            m      : translator.translate,\n            mm     : translator.translate,\n            h      : translator.translate,\n            hh     : translator.translate,\n            d      : 'dan',\n            dd     : translator.translate,\n            M      : 'mesec',\n            MM     : translator.translate,\n            y      : 'godinu',\n            yy     : translator.translate\n        },\n        ordinalParse: /\\d{1,2}\\./,\n        ordinal : '%d.',\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : swedish (sv)\n// author : Jens Alm : https://github.com/ulmus\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('sv', {\n        months : 'januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december'.split('_'),\n        monthsShort : 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'),\n        weekdays : 'sĂśndag_mĂĽndag_tisdag_onsdag_torsdag_fredag_lĂśrdag'.split('_'),\n        weekdaysShort : 'sĂśn_mĂĽn_tis_ons_tor_fre_lĂśr'.split('_'),\n        weekdaysMin : 'sĂś_mĂĽ_ti_on_to_fr_lĂś'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'YYYY-MM-DD',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd D MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay: '[Idag] LT',\n            nextDay: '[Imorgon] LT',\n            lastDay: '[IgĂĽr] LT',\n            nextWeek: 'dddd LT',\n            lastWeek: '[FĂśrra] dddd[en] LT',\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : 'om %s',\n            past : 'fĂśr %s sedan',\n            s : 'nĂĽgra sekunder',\n            m : 'en minut',\n            mm : '%d minuter',\n            h : 'en timme',\n            hh : '%d timmar',\n            d : 'en dag',\n            dd : '%d dagar',\n            M : 'en mĂĽnad',\n            MM : '%d mĂĽnader',\n            y : 'ett ĂĽr',\n            yy : '%d ĂĽr'\n        },\n        ordinalParse: /\\d{1,2}(e|a)/,\n        ordinal : function (number) {\n            var b = number % 10,\n                output = (~~(number % 100 / 10) === 1) ? 'e' :\n                (b === 1) ? 'a' :\n                (b === 2) ? 'a' :\n                (b === 3) ? 'e' : 'e';\n            return number + output;\n        },\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : tamil (ta)\n// author : Arjunkumar Krishnamoorthy : https://github.com/tk120404\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    /*var symbolMap = {\n            '1': 'ŕŻ§',\n            '2': 'ŕŻ¨',\n            '3': 'ŕŻŠ',\n            '4': 'ŕŻŞ',\n            '5': 'ŕŻŤ',\n            '6': 'ŕŻŹ',\n            '7': 'ŕŻ­',\n            '8': 'ŕŻŽ',\n            '9': 'ŕŻŻ',\n            '0': 'ŕŻŚ'\n        },\n        numberMap = {\n            'ŕŻ§': '1',\n            'ŕŻ¨': '2',\n            'ŕŻŠ': '3',\n            'ŕŻŞ': '4',\n            'ŕŻŤ': '5',\n            'ŕŻŹ': '6',\n            'ŕŻ­': '7',\n            'ŕŻŽ': '8',\n            'ŕŻŻ': '9',\n            'ŕŻŚ': '0'\n        }; */\n\n    return moment.defineLocale('ta', {\n        months : 'ŕŽŕŽŠŕŽľŕŽ°ŕŽż_ŕŽŞŕŽżŕŽŞŕŻŕŽ°ŕŽľŕŽ°ŕŽż_ŕŽŽŕŽžŕŽ°ŕŻŕŽŕŻ_ŕŽŕŽŞŕŻŕŽ°ŕŽ˛ŕŻ_ŕŽŽŕŻ_ŕŽŕŻŕŽŠŕŻ_ŕŽŕŻŕŽ˛ŕŻ_ŕŽŕŽŕŽ¸ŕŻŕŽŕŻ_ŕŽŕŻŕŽŞŕŻŕŽŕŻŕŽŽŕŻŕŽŞŕŽ°ŕŻ_ŕŽŕŽŕŻŕŽŕŻŕŽžŕŽŞŕŽ°ŕŻ_ŕŽ¨ŕŽľŕŽŽŕŻŕŽŞŕŽ°ŕŻ_ŕŽŕŽżŕŽŕŽŽŕŻŕŽŞŕŽ°ŕŻ'.split('_'),\n        monthsShort : 'ŕŽŕŽŠŕŽľŕŽ°ŕŽż_ŕŽŞŕŽżŕŽŞŕŻŕŽ°ŕŽľŕŽ°ŕŽż_ŕŽŽŕŽžŕŽ°ŕŻŕŽŕŻ_ŕŽŕŽŞŕŻŕŽ°ŕŽ˛ŕŻ_ŕŽŽŕŻ_ŕŽŕŻŕŽŠŕŻ_ŕŽŕŻŕŽ˛ŕŻ_ŕŽŕŽŕŽ¸ŕŻŕŽŕŻ_ŕŽŕŻŕŽŞŕŻŕŽŕŻŕŽŽŕŻŕŽŞŕŽ°ŕŻ_ŕŽŕŽŕŻŕŽŕŻŕŽžŕŽŞŕŽ°ŕŻ_ŕŽ¨ŕŽľŕŽŽŕŻŕŽŞŕŽ°ŕŻ_ŕŽŕŽżŕŽŕŽŽŕŻŕŽŞŕŽ°ŕŻ'.split('_'),\n        weekdays : 'ŕŽŕŽžŕŽŻŕŽżŕŽąŕŻŕŽąŕŻŕŽŕŻŕŽŕŽżŕŽ´ŕŽŽŕŻ_ŕŽ¤ŕŽżŕŽŕŻŕŽŕŽŕŻŕŽŕŽżŕŽ´ŕŽŽŕŻ_ŕŽŕŻŕŽľŕŻŕŽľŕŽžŕŽŻŕŻŕŽŕŽżŕŽ´ŕŽŽŕŻ_ŕŽŞŕŻŕŽ¤ŕŽŠŕŻŕŽŕŽżŕŽ´ŕŽŽŕŻ_ŕŽľŕŽżŕŽŻŕŽžŕŽ´ŕŽŕŻŕŽŕŽżŕŽ´ŕŽŽŕŻ_ŕŽľŕŻŕŽłŕŻŕŽłŕŽżŕŽŕŻŕŽŕŽżŕŽ´ŕŽŽŕŻ_ŕŽŕŽŠŕŽżŕŽŕŻŕŽŕŽżŕŽ´ŕŽŽŕŻ'.split('_'),\n        weekdaysShort : 'ŕŽŕŽžŕŽŻŕŽżŕŽąŕŻ_ŕŽ¤ŕŽżŕŽŕŻŕŽŕŽłŕŻ_ŕŽŕŻŕŽľŕŻŕŽľŕŽžŕŽŻŕŻ_ŕŽŞŕŻŕŽ¤ŕŽŠŕŻ_ŕŽľŕŽżŕŽŻŕŽžŕŽ´ŕŽŠŕŻ_ŕŽľŕŻŕŽłŕŻŕŽłŕŽż_ŕŽŕŽŠŕŽż'.split('_'),\n        weekdaysMin : 'ŕŽŕŽž_ŕŽ¤ŕŽż_ŕŽŕŻ_ŕŽŞŕŻ_ŕŽľŕŽż_ŕŽľŕŻ_ŕŽ'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY, LT',\n            LLLL : 'dddd, D MMMM YYYY, LT'\n        },\n        calendar : {\n            sameDay : '[ŕŽŕŽŠŕŻŕŽąŕŻ] LT',\n            nextDay : '[ŕŽ¨ŕŽžŕŽłŕŻ] LT',\n            nextWeek : 'dddd, LT',\n            lastDay : '[ŕŽ¨ŕŻŕŽąŕŻŕŽąŕŻ] LT',\n            lastWeek : '[ŕŽŕŽŕŽ¨ŕŻŕŽ¤ ŕŽľŕŽžŕŽ°ŕŽŽŕŻ] dddd, LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : '%s ŕŽŕŽ˛ŕŻ',\n            past : '%s ŕŽŽŕŻŕŽŠŕŻ',\n            s : 'ŕŽŕŽ°ŕŻ ŕŽŕŽżŕŽ˛ ŕŽľŕŽżŕŽ¨ŕŽžŕŽŕŽżŕŽŕŽłŕŻ',\n            m : 'ŕŽŕŽ°ŕŻ ŕŽ¨ŕŽżŕŽŽŕŽżŕŽŕŽŽŕŻ',\n            mm : '%d ŕŽ¨ŕŽżŕŽŽŕŽżŕŽŕŽŕŻŕŽŕŽłŕŻ',\n            h : 'ŕŽŕŽ°ŕŻ ŕŽŽŕŽŁŕŽż ŕŽ¨ŕŻŕŽ°ŕŽŽŕŻ',\n            hh : '%d ŕŽŽŕŽŁŕŽż ŕŽ¨ŕŻŕŽ°ŕŽŽŕŻ',\n            d : 'ŕŽŕŽ°ŕŻ ŕŽ¨ŕŽžŕŽłŕŻ',\n            dd : '%d ŕŽ¨ŕŽžŕŽŕŻŕŽŕŽłŕŻ',\n            M : 'ŕŽŕŽ°ŕŻ ŕŽŽŕŽžŕŽ¤ŕŽŽŕŻ',\n            MM : '%d ŕŽŽŕŽžŕŽ¤ŕŽŕŻŕŽŕŽłŕŻ',\n            y : 'ŕŽŕŽ°ŕŻ ŕŽľŕŽ°ŕŻŕŽŕŽŽŕŻ',\n            yy : '%d ŕŽŕŽŁŕŻŕŽŕŻŕŽŕŽłŕŻ'\n        },\n/*        preparse: function (string) {\n            return string.replace(/[ŕŻ§ŕŻ¨ŕŻŠŕŻŞŕŻŤŕŻŹŕŻ­ŕŻŽŕŻŻŕŻŚ]/g, function (match) {\n                return numberMap[match];\n            });\n        },\n        postformat: function (string) {\n            return string.replace(/\\d/g, function (match) {\n                return symbolMap[match];\n            });\n        },*/\n        ordinalParse: /\\d{1,2}ŕŽľŕŽ¤ŕŻ/,\n        ordinal : function (number) {\n            return number + 'ŕŽľŕŽ¤ŕŻ';\n        },\n\n\n        // refer http://ta.wikipedia.org/s/1er1\n        meridiemParse: /ŕŽŻŕŽžŕŽŽŕŽŽŕŻ|ŕŽľŕŻŕŽŕŽąŕŻ|ŕŽŕŽžŕŽ˛ŕŻ|ŕŽ¨ŕŽŁŕŻŕŽŞŕŽŕŽ˛ŕŻ|ŕŽŕŽąŕŻŕŽŞŕŽžŕŽŕŻ|ŕŽŽŕŽžŕŽ˛ŕŻ/,\n        meridiem : function (hour, minute, isLower) {\n            if (hour < 2) {\n                return ' ŕŽŻŕŽžŕŽŽŕŽŽŕŻ';\n            } else if (hour < 6) {\n                return ' ŕŽľŕŻŕŽŕŽąŕŻ';  // ŕŽľŕŻŕŽŕŽąŕŻ\n            } else if (hour < 10) {\n                return ' ŕŽŕŽžŕŽ˛ŕŻ'; // ŕŽŕŽžŕŽ˛ŕŻ\n            } else if (hour < 14) {\n                return ' ŕŽ¨ŕŽŁŕŻŕŽŞŕŽŕŽ˛ŕŻ'; // ŕŽ¨ŕŽŁŕŻŕŽŞŕŽŕŽ˛ŕŻ\n            } else if (hour < 18) {\n                return ' ŕŽŕŽąŕŻŕŽŞŕŽžŕŽŕŻ'; // ŕŽŕŽąŕŻŕŽŞŕŽžŕŽŕŻ\n            } else if (hour < 22) {\n                return ' ŕŽŽŕŽžŕŽ˛ŕŻ'; // ŕŽŽŕŽžŕŽ˛ŕŻ\n            } else {\n                return ' ŕŽŻŕŽžŕŽŽŕŽŽŕŻ';\n            }\n        },\n        meridiemHour : function (hour, meridiem) {\n            if (hour === 12) {\n                hour = 0;\n            }\n            if (meridiem === 'ŕŽŻŕŽžŕŽŽŕŽŽŕŻ') {\n                return hour < 2 ? hour : hour + 12;\n            } else if (meridiem === 'ŕŽľŕŻŕŽŕŽąŕŻ' || meridiem === 'ŕŽŕŽžŕŽ˛ŕŻ') {\n                return hour;\n            } else if (meridiem === 'ŕŽ¨ŕŽŁŕŻŕŽŞŕŽŕŽ˛ŕŻ') {\n                return hour >= 10 ? hour : hour + 12;\n            } else {\n                return hour + 12;\n            }\n        },\n        week : {\n            dow : 0, // Sunday is the first day of the week.\n            doy : 6  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : thai (th)\n// author : Kridsada Thanabulpong : https://github.com/sirn\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('th', {\n        months : 'ŕ¸Ąŕ¸ŕ¸Łŕ¸˛ŕ¸ŕ¸Ą_ŕ¸ŕ¸¸ŕ¸Ąŕ¸ ŕ¸˛ŕ¸ŕ¸ąŕ¸ŕ¸ŕš_ŕ¸Ąŕ¸ľŕ¸ŕ¸˛ŕ¸ŕ¸Ą_ŕšŕ¸Ąŕ¸Šŕ¸˛ŕ¸˘ŕ¸_ŕ¸ŕ¸¤ŕ¸Šŕ¸ ŕ¸˛ŕ¸ŕ¸Ą_ŕ¸Ąŕ¸´ŕ¸ŕ¸¸ŕ¸ŕ¸˛ŕ¸˘ŕ¸_ŕ¸ŕ¸Łŕ¸ŕ¸ŕ¸˛ŕ¸ŕ¸Ą_ŕ¸Şŕ¸´ŕ¸ŕ¸Ťŕ¸˛ŕ¸ŕ¸Ą_ŕ¸ŕ¸ąŕ¸ŕ¸˘ŕ¸˛ŕ¸˘ŕ¸_ŕ¸ŕ¸¸ŕ¸Ľŕ¸˛ŕ¸ŕ¸Ą_ŕ¸ŕ¸¤ŕ¸¨ŕ¸ŕ¸´ŕ¸ŕ¸˛ŕ¸˘ŕ¸_ŕ¸ŕ¸ąŕ¸ŕ¸§ŕ¸˛ŕ¸ŕ¸Ą'.split('_'),\n        monthsShort : 'ŕ¸Ąŕ¸ŕ¸Łŕ¸˛_ŕ¸ŕ¸¸ŕ¸Ąŕ¸ ŕ¸˛_ŕ¸Ąŕ¸ľŕ¸ŕ¸˛_ŕšŕ¸Ąŕ¸Šŕ¸˛_ŕ¸ŕ¸¤ŕ¸Šŕ¸ ŕ¸˛_ŕ¸Ąŕ¸´ŕ¸ŕ¸¸ŕ¸ŕ¸˛_ŕ¸ŕ¸Łŕ¸ŕ¸ŕ¸˛_ŕ¸Şŕ¸´ŕ¸ŕ¸Ťŕ¸˛_ŕ¸ŕ¸ąŕ¸ŕ¸˘ŕ¸˛_ŕ¸ŕ¸¸ŕ¸Ľŕ¸˛_ŕ¸ŕ¸¤ŕ¸¨ŕ¸ŕ¸´ŕ¸ŕ¸˛_ŕ¸ŕ¸ąŕ¸ŕ¸§ŕ¸˛'.split('_'),\n        weekdays : 'ŕ¸­ŕ¸˛ŕ¸ŕ¸´ŕ¸ŕ¸˘ŕš_ŕ¸ŕ¸ąŕ¸ŕ¸ŕ¸Łŕš_ŕ¸­ŕ¸ąŕ¸ŕ¸ŕ¸˛ŕ¸Ł_ŕ¸ŕ¸¸ŕ¸_ŕ¸ŕ¸¤ŕ¸Ťŕ¸ąŕ¸Şŕ¸ŕ¸ŕ¸ľ_ŕ¸¨ŕ¸¸ŕ¸ŕ¸Łŕš_ŕšŕ¸Şŕ¸˛ŕ¸Łŕš'.split('_'),\n        weekdaysShort : 'ŕ¸­ŕ¸˛ŕ¸ŕ¸´ŕ¸ŕ¸˘ŕš_ŕ¸ŕ¸ąŕ¸ŕ¸ŕ¸Łŕš_ŕ¸­ŕ¸ąŕ¸ŕ¸ŕ¸˛ŕ¸Ł_ŕ¸ŕ¸¸ŕ¸_ŕ¸ŕ¸¤ŕ¸Ťŕ¸ąŕ¸Ş_ŕ¸¨ŕ¸¸ŕ¸ŕ¸Łŕš_ŕšŕ¸Şŕ¸˛ŕ¸Łŕš'.split('_'), // yes, three characters difference\n        weekdaysMin : 'ŕ¸­ŕ¸˛._ŕ¸._ŕ¸­._ŕ¸._ŕ¸ŕ¸¤._ŕ¸¨._ŕ¸Ş.'.split('_'),\n        longDateFormat : {\n            LT : 'H ŕ¸ŕ¸˛ŕ¸Źŕ¸´ŕ¸ŕ¸˛ m ŕ¸ŕ¸˛ŕ¸ŕ¸ľ',\n            LTS : 'LT s ŕ¸§ŕ¸´ŕ¸ŕ¸˛ŕ¸ŕ¸ľ',\n            L : 'YYYY/MM/DD',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY ŕšŕ¸§ŕ¸Ľŕ¸˛ LT',\n            LLLL : 'ŕ¸§ŕ¸ąŕ¸ddddŕ¸ŕ¸ľŕš D MMMM YYYY ŕšŕ¸§ŕ¸Ľŕ¸˛ LT'\n        },\n        meridiemParse: /ŕ¸ŕšŕ¸­ŕ¸ŕšŕ¸ŕ¸ľŕšŕ¸˘ŕ¸|ŕ¸Ťŕ¸Ľŕ¸ąŕ¸ŕšŕ¸ŕ¸ľŕšŕ¸˘ŕ¸/,\n        isPM: function (input) {\n            return input === 'ŕ¸Ťŕ¸Ľŕ¸ąŕ¸ŕšŕ¸ŕ¸ľŕšŕ¸˘ŕ¸';\n        },\n        meridiem : function (hour, minute, isLower) {\n            if (hour < 12) {\n                return 'ŕ¸ŕšŕ¸­ŕ¸ŕšŕ¸ŕ¸ľŕšŕ¸˘ŕ¸';\n            } else {\n                return 'ŕ¸Ťŕ¸Ľŕ¸ąŕ¸ŕšŕ¸ŕ¸ľŕšŕ¸˘ŕ¸';\n            }\n        },\n        calendar : {\n            sameDay : '[ŕ¸§ŕ¸ąŕ¸ŕ¸ŕ¸ľŕš ŕšŕ¸§ŕ¸Ľŕ¸˛] LT',\n            nextDay : '[ŕ¸ŕ¸Łŕ¸¸ŕšŕ¸ŕ¸ŕ¸ľŕš ŕšŕ¸§ŕ¸Ľŕ¸˛] LT',\n            nextWeek : 'dddd[ŕ¸Ťŕ¸ŕšŕ¸˛ ŕšŕ¸§ŕ¸Ľŕ¸˛] LT',\n            lastDay : '[ŕšŕ¸Ąŕ¸ˇŕšŕ¸­ŕ¸§ŕ¸˛ŕ¸ŕ¸ŕ¸ľŕš ŕšŕ¸§ŕ¸Ľŕ¸˛] LT',\n            lastWeek : '[ŕ¸§ŕ¸ąŕ¸]dddd[ŕ¸ŕ¸ľŕšŕšŕ¸Ľŕšŕ¸§ ŕšŕ¸§ŕ¸Ľŕ¸˛] LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'ŕ¸­ŕ¸ľŕ¸ %s',\n            past : '%sŕ¸ŕ¸ľŕšŕšŕ¸Ľŕšŕ¸§',\n            s : 'ŕšŕ¸Ąŕšŕ¸ŕ¸ľŕšŕ¸§ŕ¸´ŕ¸ŕ¸˛ŕ¸ŕ¸ľ',\n            m : '1 ŕ¸ŕ¸˛ŕ¸ŕ¸ľ',\n            mm : '%d ŕ¸ŕ¸˛ŕ¸ŕ¸ľ',\n            h : '1 ŕ¸ŕ¸ąŕšŕ¸§ŕšŕ¸Ąŕ¸',\n            hh : '%d ŕ¸ŕ¸ąŕšŕ¸§ŕšŕ¸Ąŕ¸',\n            d : '1 ŕ¸§ŕ¸ąŕ¸',\n            dd : '%d ŕ¸§ŕ¸ąŕ¸',\n            M : '1 ŕšŕ¸ŕ¸ˇŕ¸­ŕ¸',\n            MM : '%d ŕšŕ¸ŕ¸ˇŕ¸­ŕ¸',\n            y : '1 ŕ¸ŕ¸ľ',\n            yy : '%d ŕ¸ŕ¸ľ'\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : Tagalog/Filipino (tl-ph)\n// author : Dan Hagman\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('tl-ph', {\n        months : 'Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre'.split('_'),\n        monthsShort : 'Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis'.split('_'),\n        weekdays : 'Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado'.split('_'),\n        weekdaysShort : 'Lin_Lun_Mar_Miy_Huw_Biy_Sab'.split('_'),\n        weekdaysMin : 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'MM/D/YYYY',\n            LL : 'MMMM D, YYYY',\n            LLL : 'MMMM D, YYYY LT',\n            LLLL : 'dddd, MMMM DD, YYYY LT'\n        },\n        calendar : {\n            sameDay: '[Ngayon sa] LT',\n            nextDay: '[Bukas sa] LT',\n            nextWeek: 'dddd [sa] LT',\n            lastDay: '[Kahapon sa] LT',\n            lastWeek: 'dddd [huling linggo] LT',\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : 'sa loob ng %s',\n            past : '%s ang nakalipas',\n            s : 'ilang segundo',\n            m : 'isang minuto',\n            mm : '%d minuto',\n            h : 'isang oras',\n            hh : '%d oras',\n            d : 'isang araw',\n            dd : '%d araw',\n            M : 'isang buwan',\n            MM : '%d buwan',\n            y : 'isang taon',\n            yy : '%d taon'\n        },\n        ordinalParse: /\\d{1,2}/,\n        ordinal : function (number) {\n            return number;\n        },\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : turkish (tr)\n// authors : Erhan Gundogan : https://github.com/erhangundogan,\n//           Burak YiÄit Kaya: https://github.com/BYK\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    var suffixes = {\n        1: '\\'inci',\n        5: '\\'inci',\n        8: '\\'inci',\n        70: '\\'inci',\n        80: '\\'inci',\n\n        2: '\\'nci',\n        7: '\\'nci',\n        20: '\\'nci',\n        50: '\\'nci',\n\n        3: '\\'ĂźncĂź',\n        4: '\\'ĂźncĂź',\n        100: '\\'ĂźncĂź',\n\n        6: '\\'ncÄą',\n\n        9: '\\'uncu',\n        10: '\\'uncu',\n        30: '\\'uncu',\n\n        60: '\\'ÄąncÄą',\n        90: '\\'ÄąncÄą'\n    };\n\n    return moment.defineLocale('tr', {\n        months : 'Ocak_Ĺubat_Mart_Nisan_MayÄąs_Haziran_Temmuz_AÄustos_EylĂźl_Ekim_KasÄąm_AralÄąk'.split('_'),\n        monthsShort : 'Oca_Ĺub_Mar_Nis_May_Haz_Tem_AÄu_Eyl_Eki_Kas_Ara'.split('_'),\n        weekdays : 'Pazar_Pazartesi_SalÄą_ĂarĹamba_PerĹembe_Cuma_Cumartesi'.split('_'),\n        weekdaysShort : 'Paz_Pts_Sal_Ăar_Per_Cum_Cts'.split('_'),\n        weekdaysMin : 'Pz_Pt_Sa_Ăa_Pe_Cu_Ct'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD.MM.YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd, D MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay : '[bugĂźn saat] LT',\n            nextDay : '[yarÄąn saat] LT',\n            nextWeek : '[haftaya] dddd [saat] LT',\n            lastDay : '[dĂźn] LT',\n            lastWeek : '[geĂ§en hafta] dddd [saat] LT',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : '%s sonra',\n            past : '%s Ăśnce',\n            s : 'birkaĂ§ saniye',\n            m : 'bir dakika',\n            mm : '%d dakika',\n            h : 'bir saat',\n            hh : '%d saat',\n            d : 'bir gĂźn',\n            dd : '%d gĂźn',\n            M : 'bir ay',\n            MM : '%d ay',\n            y : 'bir yÄąl',\n            yy : '%d yÄąl'\n        },\n        ordinalParse: /\\d{1,2}'(inci|nci|ĂźncĂź|ncÄą|uncu|ÄąncÄą)/,\n        ordinal : function (number) {\n            if (number === 0) {  // special case for zero\n                return number + '\\'ÄąncÄą';\n            }\n            var a = number % 10,\n                b = number % 100 - a,\n                c = number >= 100 ? 100 : null;\n\n            return number + (suffixes[a] || suffixes[b] || suffixes[c]);\n        },\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : Morocco Central Atlas TamaziÉŁt in Latin (tzm-latn)\n// author : Abdel Said : https://github.com/abdelsaid\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('tzm-latn', {\n        months : 'innayr_brË¤ayrË¤_marË¤sË¤_ibrir_mayyw_ywnyw_ywlywz_ÉŁwĹĄt_ĹĄwtanbir_ktË¤wbrË¤_nwwanbir_dwjnbir'.split('_'),\n        monthsShort : 'innayr_brË¤ayrË¤_marË¤sË¤_ibrir_mayyw_ywnyw_ywlywz_ÉŁwĹĄt_ĹĄwtanbir_ktË¤wbrË¤_nwwanbir_dwjnbir'.split('_'),\n        weekdays : 'asamas_aynas_asinas_akras_akwas_asimwas_asiá¸yas'.split('_'),\n        weekdaysShort : 'asamas_aynas_asinas_akras_akwas_asimwas_asiá¸yas'.split('_'),\n        weekdaysMin : 'asamas_aynas_asinas_akras_akwas_asimwas_asiá¸yas'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd D MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay: '[asdkh g] LT',\n            nextDay: '[aska g] LT',\n            nextWeek: 'dddd [g] LT',\n            lastDay: '[assant g] LT',\n            lastWeek: 'dddd [g] LT',\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : 'dadkh s yan %s',\n            past : 'yan %s',\n            s : 'imik',\n            m : 'minuá¸',\n            mm : '%d minuá¸',\n            h : 'saÉa',\n            hh : '%d tassaÉin',\n            d : 'ass',\n            dd : '%d ossan',\n            M : 'ayowr',\n            MM : '%d iyyirn',\n            y : 'asgas',\n            yy : '%d isgasn'\n        },\n        week : {\n            dow : 6, // Saturday is the first day of the week.\n            doy : 12  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : Morocco Central Atlas TamaziÉŁt (tzm)\n// author : Abdel Said : https://github.com/abdelsaid\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('tzm', {\n        months : 'âľâľâľâ´°âľ˘âľ_â´ąâľâ´°âľ˘âľ_âľâ´°âľâľ_âľâ´ąâľâľâľ_âľâ´°âľ˘âľ˘âľ_âľ˘âľâľâľ˘âľ_âľ˘âľâľâľ˘âľâľŁ_âľâľâľâľ_âľâľâľâ´°âľâ´ąâľâľ_â´˝âľâľâ´ąâľ_âľâľâľĄâ´°âľâ´ąâľâľ_â´ˇâľâľâľâ´ąâľâľ'.split('_'),\n        monthsShort : 'âľâľâľâ´°âľ˘âľ_â´ąâľâ´°âľ˘âľ_âľâ´°âľâľ_âľâ´ąâľâľâľ_âľâ´°âľ˘âľ˘âľ_âľ˘âľâľâľ˘âľ_âľ˘âľâľâľ˘âľâľŁ_âľâľâľâľ_âľâľâľâ´°âľâ´ąâľâľ_â´˝âľâľâ´ąâľ_âľâľâľĄâ´°âľâ´ąâľâľ_â´ˇâľâľâľâ´ąâľâľ'.split('_'),\n        weekdays : 'â´°âľâ´°âľâ´°âľ_â´°âľ˘âľâ´°âľ_â´°âľâľâľâ´°âľ_â´°â´˝âľâ´°âľ_â´°â´˝âľĄâ´°âľ_â´°âľâľâľâľĄâ´°âľ_â´°âľâľâ´šâľ˘â´°âľ'.split('_'),\n        weekdaysShort : 'â´°âľâ´°âľâ´°âľ_â´°âľ˘âľâ´°âľ_â´°âľâľâľâ´°âľ_â´°â´˝âľâ´°âľ_â´°â´˝âľĄâ´°âľ_â´°âľâľâľâľĄâ´°âľ_â´°âľâľâ´šâľ˘â´°âľ'.split('_'),\n        weekdaysMin : 'â´°âľâ´°âľâ´°âľ_â´°âľ˘âľâ´°âľ_â´°âľâľâľâ´°âľ_â´°â´˝âľâ´°âľ_â´°â´˝âľĄâ´°âľ_â´°âľâľâľâľĄâ´°âľ_â´°âľâľâ´šâľ˘â´°âľ'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS: 'LT:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'dddd D MMMM YYYY LT'\n        },\n        calendar : {\n            sameDay: '[â´°âľâ´ˇâľ â´´] LT',\n            nextDay: '[â´°âľâ´˝â´° â´´] LT',\n            nextWeek: 'dddd [â´´] LT',\n            lastDay: '[â´°âľâ´°âľâľ â´´] LT',\n            lastWeek: 'dddd [â´´] LT',\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : 'â´ˇâ´°â´ˇâľ âľ âľ˘â´°âľ %s',\n            past : 'âľ˘â´°âľ %s',\n            s : 'âľâľâľâ´˝',\n            m : 'âľâľâľâľâ´ş',\n            mm : '%d âľâľâľâľâ´ş',\n            h : 'âľâ´°âľâ´°',\n            hh : '%d âľâ´°âľâľâ´°âľâľâľ',\n            d : 'â´°âľâľ',\n            dd : '%d oâľâľâ´°âľ',\n            M : 'â´°âľ˘oâľâľ',\n            MM : '%d âľâľ˘âľ˘âľâľâľ',\n            y : 'â´°âľâ´łâ´°âľ',\n            yy : '%d âľâľâ´łâ´°âľâľ'\n        },\n        week : {\n            dow : 6, // Saturday is the first day of the week.\n            doy : 12  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : ukrainian (uk)\n// author : zemlanin : https://github.com/zemlanin\n// Author : Menelion ElensĂşle : https://github.com/Oire\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    function plural(word, num) {\n        var forms = word.split('_');\n        return num % 10 === 1 && num % 100 !== 11 ? forms[0] : (num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) ? forms[1] : forms[2]);\n    }\n\n    function relativeTimeWithPlural(number, withoutSuffix, key) {\n        var format = {\n            'mm': 'ŃĐ˛Đ¸ĐťĐ¸Đ˝Đ°_ŃĐ˛Đ¸ĐťĐ¸Đ˝Đ¸_ŃĐ˛Đ¸ĐťĐ¸Đ˝',\n            'hh': 'ĐłĐžĐ´Đ¸Đ˝Đ°_ĐłĐžĐ´Đ¸Đ˝Đ¸_ĐłĐžĐ´Đ¸Đ˝',\n            'dd': 'Đ´ĐľĐ˝Ń_Đ´Đ˝Ń_Đ´Đ˝ŃĐ˛',\n            'MM': 'ĐźŃŃŃŃŃ_ĐźŃŃŃŃŃ_ĐźŃŃŃŃŃĐ˛',\n            'yy': 'ŃŃĐş_ŃĐžĐşĐ¸_ŃĐžĐşŃĐ˛'\n        };\n        if (key === 'm') {\n            return withoutSuffix ? 'ŃĐ˛Đ¸ĐťĐ¸Đ˝Đ°' : 'ŃĐ˛Đ¸ĐťĐ¸Đ˝Ń';\n        }\n        else if (key === 'h') {\n            return withoutSuffix ? 'ĐłĐžĐ´Đ¸Đ˝Đ°' : 'ĐłĐžĐ´Đ¸Đ˝Ń';\n        }\n        else {\n            return number + ' ' + plural(format[key], +number);\n        }\n    }\n\n    function monthsCaseReplace(m, format) {\n        var months = {\n            'nominative': 'ŃŃŃĐľĐ˝Ń_ĐťŃŃĐ¸Đš_ĐąĐľŃĐľĐˇĐľĐ˝Ń_ĐşĐ˛ŃŃĐľĐ˝Ń_ŃŃĐ°Đ˛ĐľĐ˝Ń_ŃĐľŃĐ˛ĐľĐ˝Ń_ĐťĐ¸ĐżĐľĐ˝Ń_ŃĐľŃĐżĐľĐ˝Ń_Đ˛ĐľŃĐľŃĐľĐ˝Ń_ĐśĐžĐ˛ŃĐľĐ˝Ń_ĐťĐ¸ŃŃĐžĐżĐ°Đ´_ĐłŃŃĐ´ĐľĐ˝Ń'.split('_'),\n            'accusative': 'ŃŃŃĐ˝Ń_ĐťŃŃĐžĐłĐž_ĐąĐľŃĐľĐˇĐ˝Ń_ĐşĐ˛ŃŃĐ˝Ń_ŃŃĐ°Đ˛Đ˝Ń_ŃĐľŃĐ˛Đ˝Ń_ĐťĐ¸ĐżĐ˝Ń_ŃĐľŃĐżĐ˝Ń_Đ˛ĐľŃĐľŃĐ˝Ń_ĐśĐžĐ˛ŃĐ˝Ń_ĐťĐ¸ŃŃĐžĐżĐ°Đ´Đ°_ĐłŃŃĐ´Đ˝Ń'.split('_')\n        },\n\n        nounCase = (/D[oD]? *MMMM?/).test(format) ?\n            'accusative' :\n            'nominative';\n\n        return months[nounCase][m.month()];\n    }\n\n    function weekdaysCaseReplace(m, format) {\n        var weekdays = {\n            'nominative': 'Đ˝ĐľĐ´ŃĐťŃ_ĐżĐžĐ˝ĐľĐ´ŃĐťĐžĐş_Đ˛ŃĐ˛ŃĐžŃĐžĐş_ŃĐľŃĐľĐ´Đ°_ŃĐľŃĐ˛ĐľŃ_ĐżâŃŃĐ˝Đ¸ŃŃ_ŃŃĐąĐžŃĐ°'.split('_'),\n            'accusative': 'Đ˝ĐľĐ´ŃĐťŃ_ĐżĐžĐ˝ĐľĐ´ŃĐťĐžĐş_Đ˛ŃĐ˛ŃĐžŃĐžĐş_ŃĐľŃĐľĐ´Ń_ŃĐľŃĐ˛ĐľŃ_ĐżâŃŃĐ˝Đ¸ŃŃ_ŃŃĐąĐžŃŃ'.split('_'),\n            'genitive': 'Đ˝ĐľĐ´ŃĐťŃ_ĐżĐžĐ˝ĐľĐ´ŃĐťĐşĐ°_Đ˛ŃĐ˛ŃĐžŃĐşĐ°_ŃĐľŃĐľĐ´Đ¸_ŃĐľŃĐ˛ĐľŃĐłĐ°_ĐżâŃŃĐ˝Đ¸ŃŃ_ŃŃĐąĐžŃĐ¸'.split('_')\n        },\n\n        nounCase = (/(\\[[ĐĐ˛ĐŁŃ]\\]) ?dddd/).test(format) ?\n            'accusative' :\n            ((/\\[?(?:ĐźĐ¸Đ˝ŃĐťĐžŃ|Đ˝Đ°ŃŃŃĐżĐ˝ĐžŃ)? ?\\] ?dddd/).test(format) ?\n                'genitive' :\n                'nominative');\n\n        return weekdays[nounCase][m.day()];\n    }\n\n    function processHoursFunction(str) {\n        return function () {\n            return str + 'Đž' + (this.hours() === 11 ? 'Đą' : '') + '] LT';\n        };\n    }\n\n    return moment.defineLocale('uk', {\n        months : monthsCaseReplace,\n        monthsShort : 'ŃŃŃ_ĐťŃŃ_ĐąĐľŃ_ĐşĐ˛ŃŃ_ŃŃĐ°Đ˛_ŃĐľŃĐ˛_ĐťĐ¸Đż_ŃĐľŃĐż_Đ˛ĐľŃ_ĐśĐžĐ˛Ń_ĐťĐ¸ŃŃ_ĐłŃŃĐ´'.split('_'),\n        weekdays : weekdaysCaseReplace,\n        weekdaysShort : 'Đ˝Đ´_ĐżĐ˝_Đ˛Ń_ŃŃ_ŃŃ_ĐżŃ_ŃĐą'.split('_'),\n        weekdaysMin : 'Đ˝Đ´_ĐżĐ˝_Đ˛Ń_ŃŃ_ŃŃ_ĐżŃ_ŃĐą'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD.MM.YYYY',\n            LL : 'D MMMM YYYY Ń.',\n            LLL : 'D MMMM YYYY Ń., LT',\n            LLLL : 'dddd, D MMMM YYYY Ń., LT'\n        },\n        calendar : {\n            sameDay: processHoursFunction('[ĐĄŃĐžĐłĐžĐ´Đ˝Ń '),\n            nextDay: processHoursFunction('[ĐĐ°Đ˛ŃŃĐ° '),\n            lastDay: processHoursFunction('[ĐŃĐžŃĐ° '),\n            nextWeek: processHoursFunction('[ĐŁ] dddd ['),\n            lastWeek: function () {\n                switch (this.day()) {\n                case 0:\n                case 3:\n                case 5:\n                case 6:\n                    return processHoursFunction('[ĐĐ¸Đ˝ŃĐťĐžŃ] dddd [').call(this);\n                case 1:\n                case 2:\n                case 4:\n                    return processHoursFunction('[ĐĐ¸Đ˝ŃĐťĐžĐłĐž] dddd [').call(this);\n                }\n            },\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : 'ĐˇĐ° %s',\n            past : '%s ŃĐžĐźŃ',\n            s : 'Đ´ĐľĐşŃĐťŃĐşĐ° ŃĐľĐşŃĐ˝Đ´',\n            m : relativeTimeWithPlural,\n            mm : relativeTimeWithPlural,\n            h : 'ĐłĐžĐ´Đ¸Đ˝Ń',\n            hh : relativeTimeWithPlural,\n            d : 'Đ´ĐľĐ˝Ń',\n            dd : relativeTimeWithPlural,\n            M : 'ĐźŃŃŃŃŃ',\n            MM : relativeTimeWithPlural,\n            y : 'ŃŃĐş',\n            yy : relativeTimeWithPlural\n        },\n\n        // M. E.: those two are virtually unused but a user might want to implement them for his/her website for some reason\n\n        meridiemParse: /Đ˝ĐžŃŃ|ŃĐ°Đ˝ĐşŃ|Đ´Đ˝Ń|Đ˛ĐľŃĐžŃĐ°/,\n        isPM: function (input) {\n            return /^(Đ´Đ˝Ń|Đ˛ĐľŃĐžŃĐ°)$/.test(input);\n        },\n        meridiem : function (hour, minute, isLower) {\n            if (hour < 4) {\n                return 'Đ˝ĐžŃŃ';\n            } else if (hour < 12) {\n                return 'ŃĐ°Đ˝ĐşŃ';\n            } else if (hour < 17) {\n                return 'Đ´Đ˝Ń';\n            } else {\n                return 'Đ˛ĐľŃĐžŃĐ°';\n            }\n        },\n\n        ordinalParse: /\\d{1,2}-(Đš|ĐłĐž)/,\n        ordinal: function (number, period) {\n            switch (period) {\n            case 'M':\n            case 'd':\n            case 'DDD':\n            case 'w':\n            case 'W':\n                return number + '-Đš';\n            case 'D':\n                return number + '-ĐłĐž';\n            default:\n                return number;\n            }\n        },\n\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 1st is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : uzbek (uz)\n// author : Sardor Muminov : https://github.com/muminoff\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('uz', {\n        months : 'ŃĐ˝Đ˛Đ°ŃŃ_ŃĐľĐ˛ŃĐ°ĐťŃ_ĐźĐ°ŃŃ_Đ°ĐżŃĐľĐťŃ_ĐźĐ°Đš_Đ¸ŃĐ˝Ń_Đ¸ŃĐťŃ_Đ°Đ˛ĐłŃŃŃ_ŃĐľĐ˝ŃŃĐąŃŃ_ĐžĐşŃŃĐąŃŃ_Đ˝ĐžŃĐąŃŃ_Đ´ĐľĐşĐ°ĐąŃŃ'.split('_'),\n        monthsShort : 'ŃĐ˝Đ˛_ŃĐľĐ˛_ĐźĐ°Ń_Đ°ĐżŃ_ĐźĐ°Đš_Đ¸ŃĐ˝_Đ¸ŃĐť_Đ°Đ˛Đł_ŃĐľĐ˝_ĐžĐşŃ_Đ˝ĐžŃ_Đ´ĐľĐş'.split('_'),\n        weekdays : 'ĐŻĐşŃĐ°Đ˝ĐąĐ°_ĐŃŃĐ°Đ˝ĐąĐ°_ĐĄĐľŃĐ°Đ˝ĐąĐ°_Đ§ĐžŃŃĐ°Đ˝ĐąĐ°_ĐĐ°ĐšŃĐ°Đ˝ĐąĐ°_ĐŃĐźĐ°_Đ¨Đ°Đ˝ĐąĐ°'.split('_'),\n        weekdaysShort : 'ĐŻĐşŃ_ĐŃŃ_ĐĄĐľŃ_Đ§ĐžŃ_ĐĐ°Đš_ĐŃĐź_Đ¨Đ°Đ˝'.split('_'),\n        weekdaysMin : 'ĐŻĐş_ĐŃ_ĐĄĐľ_Đ§Đž_ĐĐ°_ĐŃ_Đ¨Đ°'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM YYYY',\n            LLL : 'D MMMM YYYY LT',\n            LLLL : 'D MMMM YYYY, dddd LT'\n        },\n        calendar : {\n            sameDay : '[ĐŃĐłŃĐ˝ ŃĐžĐ°Ń] LT [Đ´Đ°]',\n            nextDay : '[Đ­ŃŃĐ°ĐłĐ°] LT [Đ´Đ°]',\n            nextWeek : 'dddd [ĐşŃĐ˝Đ¸ ŃĐžĐ°Ń] LT [Đ´Đ°]',\n            lastDay : '[ĐĐľŃĐ° ŃĐžĐ°Ń] LT [Đ´Đ°]',\n            lastWeek : '[ĐŁŃĐłĐ°Đ˝] dddd [ĐşŃĐ˝Đ¸ ŃĐžĐ°Ń] LT [Đ´Đ°]',\n            sameElse : 'L'\n        },\n        relativeTime : {\n            future : 'ĐŻĐşĐ¸Đ˝ %s Đ¸ŃĐ¸Đ´Đ°',\n            past : 'ĐĐ¸Ń Đ˝ĐľŃĐ° %s ĐžĐťĐ´Đ¸Đ˝',\n            s : 'ŃŃŃŃĐ°Ń',\n            m : 'ĐąĐ¸Ń Đ´Đ°ĐşĐ¸ĐşĐ°',\n            mm : '%d Đ´Đ°ĐşĐ¸ĐşĐ°',\n            h : 'ĐąĐ¸Ń ŃĐžĐ°Ń',\n            hh : '%d ŃĐžĐ°Ń',\n            d : 'ĐąĐ¸Ń ĐşŃĐ˝',\n            dd : '%d ĐşŃĐ˝',\n            M : 'ĐąĐ¸Ń ĐžĐš',\n            MM : '%d ĐžĐš',\n            y : 'ĐąĐ¸Ń ĐšĐ¸Đť',\n            yy : '%d ĐšĐ¸Đť'\n        },\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 7  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : vietnamese (vi)\n// author : Bang Nguyen : https://github.com/bangnk\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('vi', {\n        months : 'thĂĄng 1_thĂĄng 2_thĂĄng 3_thĂĄng 4_thĂĄng 5_thĂĄng 6_thĂĄng 7_thĂĄng 8_thĂĄng 9_thĂĄng 10_thĂĄng 11_thĂĄng 12'.split('_'),\n        monthsShort : 'Th01_Th02_Th03_Th04_Th05_Th06_Th07_Th08_Th09_Th10_Th11_Th12'.split('_'),\n        weekdays : 'cháť§ nháş­t_tháťŠ hai_tháťŠ ba_tháťŠ tĆ°_tháťŠ nÄm_tháťŠ sĂĄu_tháťŠ báşŁy'.split('_'),\n        weekdaysShort : 'CN_T2_T3_T4_T5_T6_T7'.split('_'),\n        weekdaysMin : 'CN_T2_T3_T4_T5_T6_T7'.split('_'),\n        longDateFormat : {\n            LT : 'HH:mm',\n            LTS : 'LT:ss',\n            L : 'DD/MM/YYYY',\n            LL : 'D MMMM [nÄm] YYYY',\n            LLL : 'D MMMM [nÄm] YYYY LT',\n            LLLL : 'dddd, D MMMM [nÄm] YYYY LT',\n            l : 'DD/M/YYYY',\n            ll : 'D MMM YYYY',\n            lll : 'D MMM YYYY LT',\n            llll : 'ddd, D MMM YYYY LT'\n        },\n        calendar : {\n            sameDay: '[HĂ´m nay lĂşc] LT',\n            nextDay: '[NgĂ y mai lĂşc] LT',\n            nextWeek: 'dddd [tuáş§n táťi lĂşc] LT',\n            lastDay: '[HĂ´m qua lĂşc] LT',\n            lastWeek: 'dddd [tuáş§n ráťi lĂşc] LT',\n            sameElse: 'L'\n        },\n        relativeTime : {\n            future : '%s táťi',\n            past : '%s trĆ°áťc',\n            s : 'vĂ i giĂ˘y',\n            m : 'máťt phĂşt',\n            mm : '%d phĂşt',\n            h : 'máťt giáť',\n            hh : '%d giáť',\n            d : 'máťt ngĂ y',\n            dd : '%d ngĂ y',\n            M : 'máťt thĂĄng',\n            MM : '%d thĂĄng',\n            y : 'máťt nÄm',\n            yy : '%d nÄm'\n        },\n        ordinalParse: /\\d{1,2}/,\n        ordinal : function (number) {\n            return number;\n        },\n        week : {\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : chinese (zh-cn)\n// author : suupic : https://github.com/suupic\n// author : Zeno Zeng : https://github.com/zenozeng\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('zh-cn', {\n        months : 'ä¸ć_äşć_ä¸ć_ĺć_äşć_ĺ­ć_ä¸ć_ĺŤć_äšć_ĺć_ĺä¸ć_ĺäşć'.split('_'),\n        monthsShort : '1ć_2ć_3ć_4ć_5ć_6ć_7ć_8ć_9ć_10ć_11ć_12ć'.split('_'),\n        weekdays : 'ćććĽ_ććä¸_ććäş_ććä¸_ććĺ_ććäş_ććĺ­'.split('_'),\n        weekdaysShort : 'ĺ¨ćĽ_ĺ¨ä¸_ĺ¨äş_ĺ¨ä¸_ĺ¨ĺ_ĺ¨äş_ĺ¨ĺ­'.split('_'),\n        weekdaysMin : 'ćĽ_ä¸_äş_ä¸_ĺ_äş_ĺ­'.split('_'),\n        longDateFormat : {\n            LT : 'Ahçšmm',\n            LTS : 'Ahçšmĺsç§',\n            L : 'YYYY-MM-DD',\n            LL : 'YYYYĺš´MMMDćĽ',\n            LLL : 'YYYYĺš´MMMDćĽLT',\n            LLLL : 'YYYYĺš´MMMDćĽddddLT',\n            l : 'YYYY-MM-DD',\n            ll : 'YYYYĺš´MMMDćĽ',\n            lll : 'YYYYĺš´MMMDćĽLT',\n            llll : 'YYYYĺš´MMMDćĽddddLT'\n        },\n        meridiemParse: /ĺć¨|ćŠä¸|ä¸ĺ|ä¸­ĺ|ä¸ĺ|ćä¸/,\n        meridiemHour: function (hour, meridiem) {\n            if (hour === 12) {\n                hour = 0;\n            }\n            if (meridiem === 'ĺć¨' || meridiem === 'ćŠä¸' ||\n                    meridiem === 'ä¸ĺ') {\n                return hour;\n            } else if (meridiem === 'ä¸ĺ' || meridiem === 'ćä¸') {\n                return hour + 12;\n            } else {\n                // 'ä¸­ĺ'\n                return hour >= 11 ? hour : hour + 12;\n            }\n        },\n        meridiem : function (hour, minute, isLower) {\n            var hm = hour * 100 + minute;\n            if (hm < 600) {\n                return 'ĺć¨';\n            } else if (hm < 900) {\n                return 'ćŠä¸';\n            } else if (hm < 1130) {\n                return 'ä¸ĺ';\n            } else if (hm < 1230) {\n                return 'ä¸­ĺ';\n            } else if (hm < 1800) {\n                return 'ä¸ĺ';\n            } else {\n                return 'ćä¸';\n            }\n        },\n        calendar : {\n            sameDay : function () {\n                return this.minutes() === 0 ? '[äťĺ¤Š]Ah[çšć´]' : '[äťĺ¤Š]LT';\n            },\n            nextDay : function () {\n                return this.minutes() === 0 ? '[ćĺ¤Š]Ah[çšć´]' : '[ćĺ¤Š]LT';\n            },\n            lastDay : function () {\n                return this.minutes() === 0 ? '[ć¨ĺ¤Š]Ah[çšć´]' : '[ć¨ĺ¤Š]LT';\n            },\n            nextWeek : function () {\n                var startOfWeek, prefix;\n                startOfWeek = moment().startOf('week');\n                prefix = this.unix() - startOfWeek.unix() >= 7 * 24 * 3600 ? '[ä¸]' : '[ćŹ]';\n                return this.minutes() === 0 ? prefix + 'dddAhçšć´' : prefix + 'dddAhçšmm';\n            },\n            lastWeek : function () {\n                var startOfWeek, prefix;\n                startOfWeek = moment().startOf('week');\n                prefix = this.unix() < startOfWeek.unix()  ? '[ä¸]' : '[ćŹ]';\n                return this.minutes() === 0 ? prefix + 'dddAhçšć´' : prefix + 'dddAhçšmm';\n            },\n            sameElse : 'LL'\n        },\n        ordinalParse: /\\d{1,2}(ćĽ|ć|ĺ¨)/,\n        ordinal : function (number, period) {\n            switch (period) {\n            case 'd':\n            case 'D':\n            case 'DDD':\n                return number + 'ćĽ';\n            case 'M':\n                return number + 'ć';\n            case 'w':\n            case 'W':\n                return number + 'ĺ¨';\n            default:\n                return number;\n            }\n        },\n        relativeTime : {\n            future : '%sĺ',\n            past : '%sĺ',\n            s : 'ĺ ç§',\n            m : '1ĺé',\n            mm : '%dĺé',\n            h : '1ĺ°ćś',\n            hh : '%dĺ°ćś',\n            d : '1ĺ¤Š',\n            dd : '%dĺ¤Š',\n            M : '1ä¸Şć',\n            MM : '%dä¸Şć',\n            y : '1ĺš´',\n            yy : '%dĺš´'\n        },\n        week : {\n            // GB/T 7408-1994ăć°ćŽĺĺäş¤ć˘ć źĺźÂˇäżĄćŻäş¤ć˘ÂˇćĽćĺćśé´čĄ¨ç¤şćłăä¸ISO 8601:1988ç­ć\n            dow : 1, // Monday is the first day of the week.\n            doy : 4  // The week that contains Jan 4th is the first week of the year.\n        }\n    });\n}));\n// moment.js locale configuration\n// locale : traditional chinese (zh-tw)\n// author : Ben : https://github.com/ben-lin\n\n(function (factory) {\n    factory(moment);\n}(function (moment) {\n    return moment.defineLocale('zh-tw', {\n        months : 'ä¸ć_äşć_ä¸ć_ĺć_äşć_ĺ­ć_ä¸ć_ĺŤć_äšć_ĺć_ĺä¸ć_ĺäşć'.split('_'),\n        monthsShort : '1ć_2ć_3ć_4ć_5ć_6ć_7ć_8ć_9ć_10ć_11ć_12ć'.split('_'),\n        weekdays : 'ćććĽ_ććä¸_ććäş_ććä¸_ććĺ_ććäş_ććĺ­'.split('_'),\n        weekdaysShort : 'éąćĽ_éąä¸_éąäş_éąä¸_éąĺ_éąäş_éąĺ­'.split('_'),\n        weekdaysMin : 'ćĽ_ä¸_äş_ä¸_ĺ_äş_ĺ­'.split('_'),\n        longDateFormat : {\n            LT : 'Ahéťmm',\n            LTS : 'Ahéťmĺsç§',\n            L : 'YYYYĺš´MMMDćĽ',\n            LL : 'YYYYĺš´MMMDćĽ',\n            LLL : 'YYYYĺš´MMMDćĽLT',\n            LLLL : 'YYYYĺš´MMMDćĽddddLT',\n            l : 'YYYYĺš´MMMDćĽ',\n            ll : 'YYYYĺš´MMMDćĽ',\n            lll : 'YYYYĺš´MMMDćĽLT',\n            llll : 'YYYYĺš´MMMDćĽddddLT'\n        },\n        meridiemParse: /ćŠä¸|ä¸ĺ|ä¸­ĺ|ä¸ĺ|ćä¸/,\n        meridiemHour : function (hour, meridiem) {\n            if (hour === 12) {\n                hour = 0;\n            }\n            if (meridiem === 'ćŠä¸' || meridiem === 'ä¸ĺ') {\n                return hour;\n            } else if (meridiem === 'ä¸­ĺ') {\n                return hour >= 11 ? hour : hour + 12;\n            } else if (meridiem === 'ä¸ĺ' || meridiem === 'ćä¸') {\n                return hour + 12;\n            }\n        },\n        meridiem : function (hour, minute, isLower) {\n            var hm = hour * 100 + minute;\n            if (hm < 900) {\n                return 'ćŠä¸';\n            } else if (hm < 1130) {\n                return 'ä¸ĺ';\n            } else if (hm < 1230) {\n                return 'ä¸­ĺ';\n            } else if (hm < 1800) {\n                return 'ä¸ĺ';\n            } else {\n                return 'ćä¸';\n            }\n        },\n        calendar : {\n            sameDay : '[äťĺ¤Š]LT',\n            nextDay : '[ćĺ¤Š]LT',\n            nextWeek : '[ä¸]ddddLT',\n            lastDay : '[ć¨ĺ¤Š]LT',\n            lastWeek : '[ä¸]ddddLT',\n            sameElse : 'L'\n        },\n        ordinalParse: /\\d{1,2}(ćĽ|ć|éą)/,\n        ordinal : function (number, period) {\n            switch (period) {\n            case 'd' :\n            case 'D' :\n            case 'DDD' :\n                return number + 'ćĽ';\n            case 'M' :\n                return number + 'ć';\n            case 'w' :\n            case 'W' :\n                return number + 'éą';\n            default :\n                return number;\n            }\n        },\n        relativeTime : {\n            future : '%sĺ§',\n            past : '%sĺ',\n            s : 'ĺšžç§',\n            m : 'ä¸ĺé',\n            mm : '%dĺé',\n            h : 'ä¸ĺ°ć',\n            hh : '%dĺ°ć',\n            d : 'ä¸ĺ¤Š',\n            dd : '%dĺ¤Š',\n            M : 'ä¸ĺć',\n            MM : '%dĺć',\n            y : 'ä¸ĺš´',\n            yy : '%dĺš´'\n        }\n    });\n}));\n\n    moment.locale('en');\n\n\n    /************************************\n        Exposing Moment\n    ************************************/\n\n    function makeGlobal(shouldDeprecate) {\n        /*global ender:false */\n        if (typeof ender !== 'undefined') {\n            return;\n        }\n        oldGlobalMoment = globalScope.moment;\n        if (shouldDeprecate) {\n            globalScope.moment = deprecate(\n                    'Accessing Moment through the global scope is ' +\n                    'deprecated, and will be removed in an upcoming ' +\n                    'release.',\n                    moment);\n        } else {\n            globalScope.moment = moment;\n        }\n    }\n\n    // CommonJS module is defined\n    if (hasModule) {\n        module.exports = moment;\n    } else if (typeof define === 'function' && define.amd) {\n        define(function (require, exports, module) {\n            if (module.config && module.config() && module.config().noGlobal === true) {\n                // release the global variable\n                globalScope.moment = oldGlobalMoment;\n            }\n\n            return moment;\n        });\n        makeGlobal(true);\n    } else {\n        makeGlobal();\n    }\n}).call(this);"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/ng-sortable.js",
    "content": "/**\n * @author RubaXa <trash@rubaxa.org>\n * @licence MIT\n */\n(function (factory) {\n\t'use strict';\n\n\tif (window.angular && window.Sortable) {\n\t\tfactory(angular, Sortable);\n\t}\n\telse if (typeof define === 'function' && define.amd) {\n\t\tdefine(['angular', './Sortable'], factory);\n\t}\n})(function (angular, Sortable) {\n\t'use strict';\n\n\n\t/**\n\t * @typedef   {Object}        ngSortEvent\n\t * @property  {*}             model      List item\n\t * @property  {Object|Array}  models     List of items\n\t * @property  {number}        oldIndex   before sort\n\t * @property  {number}        newIndex   after sort\n\t */\n\n\n\tangular.module('ng-sortable', [])\n\t\t.constant('$version', '0.3.5')\n\t\t.directive('ngSortable', ['$parse', function ($parse) {\n\t\t\tvar removed,\n\t\t\t\tnextSibling;\n\n\t\t\tfunction getSource(el) {\n\t\t\t\tvar scope = angular.element(el).scope();\n\t\t\t\tvar ngRepeat = [].filter.call(el.childNodes, function (node) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t\t(node.nodeType === 8) &&\n\t\t\t\t\t\t\t(node.nodeValue.indexOf('ngRepeat:') !== -1)\n\t\t\t\t\t\t);\n\t\t\t\t})[0];\n\n\t\t\t\tif (!ngRepeat) {\n\t\t\t\t\t// Without ng-repeat\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\t// tests: http://jsbin.com/kosubutilo/1/edit?js,output\n\t\t\t\tngRepeat = ngRepeat.nodeValue.match(/ngRepeat:\\s*(?:\\(.*?,\\s*)?([^\\s)]+)[\\s)]+in\\s+([^\\s|]+)/);\n\n\t\t\t\tvar itemExpr = $parse(ngRepeat[1]);\n\t\t\t\tvar itemsExpr = $parse(ngRepeat[2]);\n\n\t\t\t\treturn {\n\t\t\t\t\titem: function (el) {\n\t\t\t\t\t\treturn itemExpr(angular.element(el).scope());\n\t\t\t\t\t},\n\t\t\t\t\titems: function () {\n\t\t\t\t\t\treturn itemsExpr(scope);\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t}\n\n\n\t\t\t// Export\n\t\t\treturn {\n\t\t\t\trestrict: 'AC',\n\t\t\t\tlink: function (scope, $el, attrs) {\n\t\t\t\t\tvar el = $el[0],\n\t\t\t\t\t\tngSortable = attrs.ngSortable,\n\t\t\t\t\t\toptions = scope.$eval(ngSortable) || {},\n\t\t\t\t\t\tsource = getSource(el),\n\t\t\t\t\t\tsortable\n\t\t\t\t\t;\n\n\n\t\t\t\t\tfunction _emitEvent(/**Event*/evt, /*Mixed*/item) {\n\t\t\t\t\t\tvar name = 'on' + evt.type.charAt(0).toUpperCase() + evt.type.substr(1);\n\n\t\t\t\t\t\t/* jshint expr:true */\n\t\t\t\t\t\toptions[name] && options[name]({\n\t\t\t\t\t\t\tmodel: item,\n\t\t\t\t\t\t\tmodels: source && source.items(),\n\t\t\t\t\t\t\toldIndex: evt.oldIndex,\n\t\t\t\t\t\t\tnewIndex: evt.newIndex\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\n\n\t\t\t\t\tfunction _sync(/**Event*/evt) {\n\t\t\t\t\t\tif (!source) {\n\t\t\t\t\t\t\t// Without ng-repeat\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tvar oldIndex = evt.oldIndex,\n\t\t\t\t\t\t\tnewIndex = evt.newIndex,\n\t\t\t\t\t\t\titems = source.items();\n\n\t\t\t\t\t\tif (el !== evt.from) {\n\t\t\t\t\t\t\tvar prevSource = getSource(evt.from),\n\t\t\t\t\t\t\t\tprevItems = prevSource.items();\n\n\t\t\t\t\t\t\toldIndex = prevItems.indexOf(prevSource.item(evt.item));\n\t\t\t\t\t\t\tremoved = prevItems[oldIndex];\n\n\t\t\t\t\t\t\tif (evt.clone) {\n\t\t\t\t\t\t\t\tevt.from.removeChild(evt.clone);\n\t\t\t\t\t\t\t\tremoved = angular.copy(removed);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\tprevItems.splice(oldIndex, 1);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\titems.splice(newIndex, 0, removed);\n\n\t\t\t\t\t\t\tevt.from.insertBefore(evt.item, nextSibling); // revert element\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\titems.splice(newIndex, 0, items.splice(oldIndex, 1)[0]);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tscope.$apply();\n\t\t\t\t\t}\n\n\n\t\t\t\t\tsortable = Sortable.create(el, Object.keys(options).reduce(function (opts, name) {\n\t\t\t\t\t\topts[name] = opts[name] || options[name];\n\t\t\t\t\t\treturn opts;\n\t\t\t\t\t}, {\n\t\t\t\t\t\tonStart: function (/**Event*/evt) {\n\t\t\t\t\t\t\tnextSibling = evt.item.nextSibling;\n\t\t\t\t\t\t\t_emitEvent(evt);\n\t\t\t\t\t\t\tscope.$apply();\n\t\t\t\t\t\t},\n\t\t\t\t\t\tonEnd: function (/**Event*/evt) {\n\t\t\t\t\t\t\t_emitEvent(evt, removed);\n\t\t\t\t\t\t\tscope.$apply();\n\t\t\t\t\t\t},\n\t\t\t\t\t\tonAdd: function (/**Event*/evt) {\n\t\t\t\t\t\t\t_sync(evt);\n\t\t\t\t\t\t\t_emitEvent(evt, removed);\n\t\t\t\t\t\t\tscope.$apply();\n\t\t\t\t\t\t},\n\t\t\t\t\t\tonUpdate: function (/**Event*/evt) {\n\t\t\t\t\t\t\t_sync(evt);\n\t\t\t\t\t\t\t_emitEvent(evt, source && source.item(evt.item));\n\t\t\t\t\t\t},\n\t\t\t\t\t\tonRemove: function (/**Event*/evt) {\n\t\t\t\t\t\t\t_emitEvent(evt, removed);\n\t\t\t\t\t\t},\n\t\t\t\t\t\tonSort: function (/**Event*/evt) {\n\t\t\t\t\t\t\t_emitEvent(evt, source && source.item(evt.item));\n\t\t\t\t\t\t}\n\t\t\t\t\t}));\n\n\t\t\t\t\t$el.on('$destroy', function () {\n\t\t\t\t\t\tsortable.destroy();\n\t\t\t\t\t\tsortable = null;\n\t\t\t\t\t\tnextSibling = null;\n\t\t\t\t\t});\n\n\t\t\t\t\tif (ngSortable && !/{|}/.test(ngSortable)) { // todo: ugly\n\t\t\t\t\t\tangular.forEach(['sort', 'disabled', 'draggable', 'handle', 'animation'], function (name) {\n\t\t\t\t\t\t\tscope.$watch(ngSortable + '.' + name, function (value) {\n\t\t\t\t\t\t\t\tif (value !== void 0) {\n\t\t\t\t\t\t\t\t\toptions[name] = value;\n\t\t\t\t\t\t\t\t\tsortable.option(name, value);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\t\t}]);\n});"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/playlists/app.js",
    "content": "(function() {\n'use strict';\nvar app = angular.module('playlistsApp', [\n    'ngSanitize',\n    'ui.select',\n    'ngTable',\n    'ng-sortable',\n    'ui.bootstrap',\n    'infinite-scroll',\n    'ngActivityIndicator'\n]).config(function($interpolateProvider, $httpProvider) {\n    $interpolateProvider.startSymbol('{[{').endSymbol('}]}');\n    $httpProvider.interceptors.push('authInterceptor');\n});\n})();"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/playlists/controllers/articles-filters.js",
    "content": "'use strict';\n\n/**\n* AngularJS controller for loading available articles by given filter.\n*\n* @class FiltersController\n*/\nangular.module('playlistsApp').controller('FiltersController', [\n    '$scope',\n    'Playlist',\n    'Filter',\n    function (\n        $scope,\n        Playlist,\n        Filter\n        ) {\n        // assign tableParams (ng-table) from PlaylistsController\n        // so we can load articles by given filters\n        var tableParams = $scope.$parent.tableParams;\n        $scope.publication = {}\n        $scope.issue = {};\n        $scope.section = {};\n        // article statuses\n        $scope.statuses = [\n            {code: null, name: Translator.trans(\"All\", {}, 'messages')},\n            {code: 'Y', name: Translator.trans(\"Published\", {}, 'messages')},\n            {code: 'S', name: Translator.trans(\"Submitted\", {}, 'messages')},\n            {code: 'N', name: Translator.trans(\"New\", {}, 'messages')}\n        ];\n\n    /**\n     * Loads all publications to filter articles by\n     */\n     $scope.loadPublications = function () {\n        if (_.isEmpty($scope.publications)) {\n            $scope.publications = Filter.getAllPublications();\n        }\n    }\n\n    /**\n     * Loads all issues and articles by publication id\n     *\n     * @param  {Object} item Publication object\n     */\n     $scope.loadIssues = function (item) {\n        $scope.issues = [];\n        $scope.issue.selected = undefined;\n        $scope.sections = [];\n        $scope.section.selected = undefined;\n        tableParams.$params.filter.issue = undefined;\n        tableParams.$params.filter.section = undefined;\n        $scope.issues = Filter.getAllIssues(item.id);\n        //load by publication id\n        mergeFilters({publication: item.id});\n    };\n\n    /**\n     * Loads all sections and articles by publication id and issue number\n     *\n     * @param  {Object} item Issue object\n     */\n     $scope.loadSections = function (item) {\n        var publicationId = $scope.publication.selected.id;\n        $scope.sections = [];\n        $scope.section.selected = undefined;\n        tableParams.$params.filter.section = undefined;\n        $scope.sections = Filter.getAllSections(publicationId, item);\n        // load by publication id and issue number\n        mergeFilters({\n            publication: publicationId,\n            issue: item.number,\n            language: item.language\n        });\n    };\n\n    /**\n     * Loads all articles by publication id, issue number\n     * and section number\n     *\n     * @param  {Object} item Section object\n     */\n     $scope.loadByMainFilters = function (item) {\n        var publicationId = $scope.publication.selected.id;\n        var issue = $scope.issue.selected.number;\n\n        // load by publication id and issue number\n        mergeFilters({\n            publication: publicationId,\n            issue: issue,\n            section: item.number\n        });\n    };\n\n    /**\n     * Loads all articles' types\n     */\n     $scope.loadArticleTypes = function () {\n        if (_.isEmpty($scope.articleTypes)) {\n            $scope.articleTypes = Filter.getArticleTypes();\n        }\n    }\n\n    /**\n     * Loads all articles' types\n     *\n     * @param {Object} type Article type\n     */\n     $scope.loadByArticleTypesOnSelect = function (type) {\n        var filters = {\n            article_type: type.name\n        };\n\n        mergeFilters(filters);\n    }\n\n    $scope.author = {};\n    $scope.user = {};\n    $scope.topic = {};\n    $scope.language = {};\n    $scope.languages = [];\n\n\n    $scope.loadAuthors = function (term) {\n        $scope.authors = [];\n        $scope.author.selected = undefined;\n        if (term) {\n            $scope.authors = Filter.getAuthors(term);\n        } else {\n            tableParams.$params.filter.author = undefined;\n        }\n    }\n\n    /**\n     * Loads all authors\n     *\n     * @param {Object} type Author object\n     */\n     $scope.loadByAuthorsOnSelect = function (item) {\n        var filters = {\n            author: item.id\n        };\n\n        mergeFilters(filters);\n    }\n\n    /**\n     * Loads articles by publish date\n     *\n     * @param {Object} scope Current scope\n     */\n    $scope.loadByDateOnChange = function (scope) {\n        var filters = {\n            publish_date: scope.filterDate\n        };\n\n        mergeFilters(filters);\n    }\n\n    /**\n     * Loads articles by published before date\n     *\n     * @param {Object} scope Current scope\n     */\n    $scope.loadByPublishedBeforeOnChange = function (scope) {\n        if (scope.filterPublishedBefore) {\n            var dateTime = scope.filterPublishedBefore + ' 00:00:00';\n            var filters = {\n                published_before: dateTime\n            };\n\n            mergeFilters(filters);\n        } else {\n            tableParams.$params.filter.published_before = undefined;\n        }\n    }\n\n    /**\n     * Loads articles by published after date\n     *\n     * @param {Object} scope Current scope\n     */\n    $scope.loadByPublishedAfterOnChange = function (scope) {\n        if (scope.filterPublishedAfter) {\n            var dateTime = scope.filterPublishedAfter + ' 00:00:00';\n            var filters = {\n                published_after: dateTime\n            };\n\n            mergeFilters(filters);\n        } else {\n            tableParams.$params.filter.published_after = undefined;\n        }\n    }\n\n    /**\n     * Loads all users\n     *\n     * @param {Object} item User object\n     */\n     $scope.loadUsers = function (term) {\n        $scope.users = [];\n        $scope.user.selected = undefined;\n        if (term) {\n            $scope.users = Filter.getUsers(term);\n        } else {\n            tableParams.$params.filter.creator = undefined;\n        }\n    }\n\n    /**\n     * Loads all articles by user\n     *\n     * @param {Object} item User object\n     */\n     $scope.loadByUsersOnSelect = function (item) {\n        var filters = {\n            creator: item.id\n        };\n\n        mergeFilters(filters);\n    }\n\n    /**\n     * Loads articles by status\n     *\n     * @param {Object} item User object\n     */\n     $scope.loadByStatusOnSelect = function (item) {\n        var filters = {\n            status: item.code\n        };\n\n        mergeFilters(filters);\n    }\n\n    /**\n     * Loads all topics\n     *\n     * @param {Object} item Topic object\n     */\n     $scope.loadTopics = function (term) {\n        $scope.topics = [];\n        $scope.topic.selected = undefined;\n        if (term) {\n            $scope.topics = Filter.getTopics(term);\n        }\n    }\n\n    /**\n     * Loads all articles by topic\n     *\n     * @param {Object} item Topic object\n     */\n     $scope.loadByTopicOnSelect = function (item) {\n        var filters = {\n            topic: item.id\n        };\n\n        mergeFilters(filters);\n    }\n\n    /**\n     * Loads all languages\n     *\n     * @param {Object} item Language object\n     */\n     $scope.loadLanguages = function () {\n        if ($scope.languages.length == 0) {\n            $scope.languages = Filter.getLanguages();\n        }\n    }\n\n    /**\n     * Loads all articles by language\n     *\n     * @param {Object} item Language object\n     */\n     $scope.loadByLanguageOnSelect = function (item) {\n        var filters = {\n            language: item.code\n        };\n\n        mergeFilters(filters);\n    }\n\n    /**\n     * It merges new filter into current filters, so we can\n     * get articles by given filters\n     *\n     * @param  {Object} newFilter New filter object\n     * @return {Array}           Array of filers' objects\n     */\n    var mergeFilters = function (newFilter) {\n        return _.merge(\n            tableParams.$params.filter,\n            newFilter\n        );\n    }\n}]);"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/playlists/controllers/featured-articles.js",
    "content": "'use strict';\n\n/**\n* AngularJS controller for loading featured articles.\n*\n* @class FeaturedController\n*/\nangular.module('playlistsApp').controller('FeaturedController', [\n    '$scope',\n    'Playlist',\n    'modalFactory',\n    function (\n        $scope,\n        Playlist,\n        modalFactory\n    ) {\n\n    var countDownTimeInSeconds = 11;\n    $scope.sortableConfig = {\n        group: 'articles',\n        animation: 150,\n        onAdd: function (evt/**Event*/){\n         var item,\n            number,\n            occurences,\n            isInLogList = false,\n            limit;\n            item = evt.model; // the current dragged article\n            number = item.number;\n            occurences = 0;\n            angular.forEach($scope.$parent.featuredArticles, function(value, key) {\n                if (value.number == number && value.language == item.language) {\n                    occurences++;\n                }\n            });\n\n            if (occurences > 1) {\n                $scope.$parent.featuredArticles.splice(evt.newIndex, 1);\n                flashMessage(Translator.trans('Item already exists in the list', {}, 'articles'), 'error');\n\n                return true;\n            }\n\n            limit = $scope.$parent.playlist.selected.maxItems;\n            // show alert with revert button\n            if (limit && limit != 0 && $scope.$parent.featuredArticles.length > limit) {\n                // article that shouldn't be removed, its needed to determine on\n                // which position it's placed so we can remove the last one elment\n                // from the list or the one before last - see removeLastArticle function\n                $scope.$parent.articleNotToRemove = item;\n                $scope.$parent.articleOverLimitIndex = evt.newIndex;\n                $scope.$parent.articleOverLimitNumber = number;\n                $scope.$parent.showLimitAlert = true;\n                $scope.$parent.countDown = countDownTimeInSeconds;\n                $scope.$parent.startCountDown();\n            }\n\n            isInLogList = _.some(\n                Playlist.getLogList(),\n                {number: number, language: item.language, _method: 'unlink'}\n            );\n\n            if (!isInLogList) {\n                // this check prevents inserting duplicate article\n                // when it's drag from the available articles list.\n                // onSort event is executed before onEnd so in both of them it will\n                // insert the same value to the log list\n                isInLogList = _.some(\n                    Playlist.getLogList(),\n                    {number: number, language: item.language}\n                );\n\n                if (!isInLogList) {\n                    // add article to log list, so we can save it later using batch save\n                    item._method = 'link';\n                    item._order = evt.newIndex + 1;\n                    Playlist.addItemToLogList(item);\n                }\n            } else {\n                Playlist.removeItemFromLogList(item, 'unlink');\n            }\n        },\n        onSort: function (evt/**Event*/){\n            var article = evt.model;\n            var articleInList = _.find(\n                $scope.$parent.featuredArticles,\n                {number: article.number, language: article.language}\n            );\n\n            if (articleInList !== undefined && evt.newIndex !== evt.oldIndex) {\n                Playlist.removeItemFromLogList(articleInList, 'link');\n                article._order = evt.newIndex + 1;\n                article._method = \"link\";\n                Playlist.addItemToLogList(article);\n            }\n        }\n    };\n\n    /**\n     * It reverts new article insertion over the playlist's limit\n     */\n    $scope.revertAction = function () {\n        if ($scope.$parent.articleOverLimitIndex !== undefined) {\n            $scope.$parent.featuredArticles.splice($scope.$parent.articleOverLimitIndex, 1);\n            $scope.$parent.showLimitAlert = false;\n            $scope.$parent.isCounting = false;\n            Playlist.removeItemFromLogList($scope.$parent.articleNotToRemove, 'link');\n        }\n    }\n\n    /**\n     * Deletes single article from the currently loaded playlist\n     *\n     * @param  {Object} article Article object\n     */\n    $scope.deleteSingleArticle = function (article) {\n        Playlist.removeSingleArticle(article.number, article.language)\n        .then(function () {\n            _.remove(\n                $scope.$parent.featuredArticles,\n                {number: article.number}\n            );\n            flashMessage(Translator.trans('List updated.', {}, 'articles'));\n            Playlist.setCurrentPlaylistArticles($scope.$parent.featuredArticles);\n        });\n    };\n\n    /**\n     * Removes article from the playlist.\n     * Checks if article exist in the list of available articles (on the current page)\n     * if it doesn't exist put it at the first position, else don't add it -\n     * purpose of it is that this article can be reused again after it will be removed\n     * from the list of Featured comments, so no need to search for it again etc.\n     *\n     * @param  {Object} article Article object\n     */\n    $scope.removeArticle = function (article) {\n        var availablArticles = [],\n            featuredArticles = [],\n            exists = false,\n            isInLogList = false;\n\n        availablArticles = $scope.$parent.tableParams.data;\n        featuredArticles = $scope.$parent.featuredArticles;\n        exists = _.some(\n            availablArticles,\n            {number: article.number, language: article.language}\n        );\n\n        if (!exists) {\n            availablArticles.unshift(article);\n        }\n\n        _.remove(\n            featuredArticles,\n            {number: article.number, language: article.language}\n        );\n\n        // check if the article exists in the logList,\n        // if user will drag article to the playlist, it will add new field called \"_method\"\n        // set to \"link\" value. Then if user will remove article from the featured articles' list\n        // it should remove it from the logList to not pass fake data to the server, else it will add\n        // article to the logList with field \"_method\": \"unlink\" so the article can be unlinked from\n        // the playlist.\n        isInLogList = _.some(\n            Playlist.getLogList(),\n            {number: article.number, language: article.language, _method: 'link'}\n        );\n\n        if (!isInLogList) {\n            // set method for the removed object so we can pass it to\n            // the API endpoint and remove item using batch remove feature\n            article._method = \"unlink\";\n            Playlist.addItemToLogList(article);\n        } else {\n            Playlist.removeItemFromLogList(article, 'link');\n        }\n\n        Playlist.setCurrentPlaylistArticles(featuredArticles);\n    }\n\n    /**\n     * Updates parent controller's playlistLimit variable, so save button\n     * can be disabled when limit is incorrect, i.e. is string not number.\n     * It also shows the limit modal when list limit has been changed.\n     *\n     * @param  {Object} scope Current scope\n     */\n    $scope.updateParentLimit = function (scope) {\n        var newLimit = $scope.$parent.playlist.selected.maxItems,\n        oldLimit = $scope.$parent.playlist.selected.oldLimit;\n\n        $scope.$parent.playlistLimit = scope.limitForm.$valid;\n\n        if (newLimit && newLimit != 0 && newLimit < oldLimit ||\n            ((oldLimit === null || oldLimit === 0) && newLimit > oldLimit)\n        ) {\n            var title = Translator.trans('Info', {}, 'articles'),\n                text = Translator.trans('articles.playlists.alert', {}, 'articles'),\n                okText = Translator.trans('OK', {}, 'messages'),\n                cancelText = Translator.trans('Cancel', {}, 'messages'),\n                modal;\n\n            modal = modalFactory.confirmLight(title, text, okText, cancelText);\n            modal.result.then(function () {\n                var sliced = $scope.$parent.featuredArticles.slice(0, newLimit);\n                $scope.$parent.featuredArticles = sliced;\n                Playlist.setCurrentPlaylistArticles(sliced);\n            }, function () {\n                $scope.$parent.playlist.selected.maxItems = oldLimit;\n            });\n        }\n    }\n}]);"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/playlists/controllers/playlists.js",
    "content": "'use strict';\n\n/**\n* AngularJS controller for managing playlists\n*\n* @class PlaylistsController\n*/\nangular.module('playlistsApp').controller('PlaylistsController', [\n    '$scope',\n    'Playlist',\n    'ngTableParams',\n    'modalFactory',\n    '$q',\n    '$timeout',\n    '$activityIndicator',\n    function (\n        $scope,\n        Playlist,\n        ngTableParams,\n        modalFactory,\n        $q,\n        $timeout,\n        $activityIndicator\n    ) {\n    $scope.isViewing = false;\n    $scope.playlist = {};\n    $scope.playlists = [];\n    $scope.playlistInfo = undefined;\n    $scope.featuredArticles = [];\n    $scope.formData = {};\n    $scope.processing = false;\n    $scope.playlist.selected = undefined;\n    // limit var, which is set to false by FeaturedController\n    // when provided limit is invalid\n    $scope.playlistLimit = true;\n    $scope.showLimitAlert = false;\n    var countDownTimeInSeconds = 11;\n\n    // array of the articles,\n    // that will be removed or added to the list\n    $scope.logList = [];\n\n    $scope.sortableConfig = {\n        group: {\n            name: 'articles',\n            pull: 'clone',\n            put: false\n        },\n        sort: false,\n        animation: 150,\n        handle: \".move-elements\",\n        filter: \".ignore-elements\"\n    };\n\n    $scope.tableParams = new ngTableParams({\n        //page: 1, // show first page\n        count: 10 // count per page\n    }, {\n        total: 0,// length of data\n        counts: [], // disable page sizes\n        getData: function($defer, params) {\n            Playlist.getAllArticles($defer, params);\n        }\n    });\n\n    // preload featured article list when selectedListId variable\n    // is given.\n    // selectedListId variable is set globally in twig template. Its value\n    // is filled with the data from the url parameter.\n    // Preloads all featured article lists when value of selectedListId is\n    // not found in existing lists, fetched from the server.\n    // When selectedListId is empty it will do nothing.\n    if (_.isEmpty($scope.playlists) && selectedListId) {\n        Playlist.getAll().$promise.then(function (data) {\n            $scope.playlists = data.items;\n            var selectedList = _.find(data.items, { 'id': parseInt(selectedListId) });\n            if (selectedList !== undefined) {\n                $scope.playlist.selected = selectedList;\n                $scope.setPlaylistInfoOnChange(selectedList);\n            }\n        });\n    }\n\n    // stops, starts counter\n    $scope.isCounting = false;\n\n    $scope.startCountDown = function () {\n        countDown();\n    }\n\n    /**\n     * This function count seconds after which revert popup will be closed\n     * and removes last article from the playlist if the limit is reached,\n     * inserts new article\n     */\n    var countDown = function(){\n       if($scope.isCounting) {\n            return;\n       }\n\n       $scope.isCounting = true;\n       (function countEvery() {\n            if ($scope.isCounting) {\n                $scope.countDown--;\n                $timeout(countEvery, 1000);\n                if ($scope.countDown === 0) {\n                    removeLastArticle();\n                }\n            }\n        }());\n    }\n\n    /**\n     * It removes last article from the playlist if the limit is reached,\n     * inserts new article. It is called from FeaturedController.\n     */\n    $scope.removeLastInsertNew = function () {\n        removeLastArticle();\n    }\n\n    /**\n     * It removes last article from the playlist if the limit is reached,\n     * inserts new article\n     */\n    var removeLastArticle =  function () {\n        // remove one before last article from the featured articles list\n        // when we drag-drop to the list as a last element, thats why we need to remove\n        // one before last article else remove last one (-1)\n        var articleToRemove = $scope.featuredArticles[$scope.featuredArticles.length - 1];\n        if ($scope.articleNotToRemove._order == $scope.featuredArticles.length) {\n            articleToRemove = $scope.featuredArticles[$scope.featuredArticles.length - 2];\n        }\n\n        articleToRemove._method = \"unlink\";\n        _.remove(\n            $scope.featuredArticles,\n            {number: articleToRemove.number, language: articleToRemove.language}\n        );\n\n        Playlist.addItemToLogList(articleToRemove);\n        var logList = Playlist.getLogList();\n\n        // we have to now replace last element with one before last in log list\n        // so it can be saved in API in a proper order, actually we firstly add a\n        // new article to the featured articles list and then we unlink the last one.\n        // We need to do it in a reverse way, so we first unlink, and then add a new one.\n        var lastElement = logList[logList.length - 1];\n        var beforeLast = logList[logList.length - 2];\n\n        // also decrease the order for a new item only when it is last on the list\n        if (beforeLast._order > $scope.featuredArticles.length) {\n            beforeLast._order = beforeLast._order - 1;\n        }\n\n        logList[logList.length - 1] = beforeLast;\n        logList[logList.length - 2] = lastElement;\n\n        Playlist.setLogList(logList);\n        $scope.showLimitAlert = false;\n        $scope.isCounting = false;\n    }\n\n    /**\n     * Checks if list name max length is not exceeded,\n     * if it is, then it will display flash message with error.\n     *\n     * @param  {Object} scope Current scope\n     */\n    $scope.validateListName = function (scope) {\n        if (scope.listNameForm.playlistName.$error.maxlength) {\n            flashMessage(Translator.trans('List name should not be longer than 40 chars', {}, 'articles'), 'error');\n        }\n    }\n\n    /**\n     * Loads available playlists on select box click (lazy load)\n     */\n    $scope.loadAllPlaylists = function () {\n        if (_.isEmpty($scope.playlists)) {\n            $scope.playlists = Playlist.getAll();\n        }\n    }\n\n    /**\n     * Opens selected article's preview\n     *\n     * @param  {Object} article Seected article\n     */\n     $scope.viewArticle = function (article) {\n        $scope.isViewing = true;\n        $scope.articlePreview = article;\n    };\n\n    /**\n     * Closes article's preview window\n     */\n     $scope.closeViewArticle = function () {\n        $scope.isViewing = false;\n    };\n\n    /**\n     * Adds article to the playlist, which is currently in preview mode\n     */\n     $scope.addArticleToListFromPreview = function () {\n        var exists = _.some(\n            $scope.featuredArticles,\n            {\n                number: $scope.articlePreview.number,\n                language: $scope.articlePreview.language\n            });\n\n        if (!exists) {\n            var isInLogList = _.some(\n                Playlist.getLogList(),\n                {\n                    number: $scope.articlePreview.number,\n                    language: $scope.articlePreview.language\n                }\n            );\n\n            if (isLimitReached()) {\n                $scope.articleNotToRemove = $scope.articlePreview;\n                $scope.articleOverLimitIndex = 0;\n                $scope.articleOverLimitNumber = $scope.articlePreview.number;\n                $scope.showLimitAlert = true;\n                $scope.countDown = countDownTimeInSeconds;\n                $scope.startCountDown();\n            }\n\n            $scope.articlePreview._method = \"link\";\n            $scope.articlePreview._order = 1;\n            Playlist.addItemToLogList($scope.articlePreview);\n            $scope.featuredArticles.unshift($scope.articlePreview);\n            $scope.isViewing = false;\n        } else {\n            flashMessage(Translator.trans('Item already exists in the list', {}, 'articles'), 'error');\n        }\n    };\n\n    /**\n     * Adds article to the playlist from the editor mode\n     */\n     $scope.addArticleToListFromEditor = function (number, language) {\n        var exists = _.some(\n            $scope.featuredArticles,\n            {\n                number: number,\n                language: language\n            });\n\n        if (!exists) {\n            var article = undefined,\n            isInLogList;\n            $scope.processing = true;\n            isInLogList = _.some(\n                Playlist.getLogList(),\n                {\n                    number: number,\n                    language: language\n                }\n            );\n\n            if (!isInLogList) {\n                Playlist.getArticle(number, language).then(function (article) {\n                    if (isLimitReached()) {\n                        $scope.articleNotToRemove = article;\n                        $scope.articleOverLimitIndex = 0;\n                        $scope.articleOverLimitNumber = article.number;\n                        $scope.showLimitAlert = true;\n                        $scope.countDown = countDownTimeInSeconds;\n                        $scope.startCountDown();\n                    }\n\n                    article._method = \"link\";\n                    article._order = 1;\n                    Playlist.addItemToLogList(article);\n                    $scope.featuredArticles.unshift(article);\n                    $scope.processing = false;\n                }, function() {\n                    flashMessage(Translator.trans('Error List', {}, 'articles'), 'error');\n                });\n\n                return true;\n            }\n        }\n\n        flashMessage(Translator.trans('Item already exists in the list', {}, 'articles'), 'error');\n    };\n\n    /**\n     * Checks if playlist's limit is reached.\n     *\n     * @return {Boolean}\n     */\n    var isLimitReached = function () {\n        var limit = 0;\n        if ($scope.playlist.selected !== undefined) {\n            limit = $scope.playlist.selected.maxItems;\n        }\n\n        return (limit && limit != 0 && $scope.featuredArticles.length >= limit);\n    }\n\n    /**\n     * Saves playlist from the article edit screen view\n     */\n    $scope.savePlaylistInEditorMode = function () {\n        saveList();\n    }\n\n    // page variable is needed for fetching articles on scroll in playlist box\n    // (right box), by default it's set to 2 because we start fetching new\n    // articles from page 2, since articles on page 1 are loaded\n    // by default when selecting playlist.\n    // set in scope so we can reset it when playlist will be saved\n    // and it can load more articles on scroll, without a need\n    // to refresh the page\n    $scope.page = 2;\n    $scope.isRunning = false;\n    $scope.isEmpty = false;\n\n    /**\n     * Sets playlist details to the current scope.\n     *\n     * It loads playlist details on select2 change.\n     *\n     * @param  {Object} list  Playlist\n     */\n     $scope.setPlaylistInfoOnChange = function (list) {\n        $scope.loadingSpinner = true;\n        scrollTop();\n        Playlist.getArticlesByListId(list).then(function (data) {\n            $scope.featuredArticles = data.items;\n            $scope.loadingSpinner = false;\n\n            $scope.isEmpty = false;\n            $scope.page = 2;\n            $activityIndicator.stopAnimating();\n        }, function(response) {\n            flashMessage(Translator.trans('Could not refresh the list', {}, 'articles'), 'error');\n            $scope.loadingSpinner = false;\n            $activityIndicator.stopAnimating();\n        });\n\n        Playlist.clearLogList();\n        Playlist.setListId(list.id);\n        $scope.playlistInfo = list;\n        $scope.playlist.selected.oldLimit = list.maxItems;\n        $scope.formData = {title: list.title}\n        $scope.isRunning = false;\n    };\n\n    /**\n     * Loads more playlist's articles on scroll\n     */\n     $scope.loadArticlesOnScrollDown = function () {\n        if ($scope.playlist.selected) {\n            if (!$scope.isEmpty && !$scope.isRunning) {\n                $scope.isRunning = true;\n                Playlist.getArticlesByListId($scope.playlist.selected, $scope.page)\n                .then(function (response) {\n                    if (response.items.length == 0) {\n                        $scope.isEmpty = true;\n                    } else {\n                        $scope.page++;\n                        $scope.isEmpty = false;\n                        angular.forEach(response.items, function(value, key) {\n                            if (value.number !== undefined) {\n                                $scope.featuredArticles.push(value);\n                            }\n                        });\n                    }\n                    $scope.isRunning = false;\n                }, function(response) {\n                    flashMessage(Translator.trans('Could not refresh the list', {}, 'articles'), 'error');\n                });\n            }\n        }\n    }\n\n    /**\n     * Adds new playlist. Sets default list name to current date.\n     */\n     $scope.addNewPlaylist = function () {\n        var defaultListName,\n        currentDate = new Date();\n\n        $scope.playlist.selected = {};\n        defaultListName = currentDate.toString();\n        Playlist.setCurrentPlaylistArticles([]);\n        $scope.featuredArticles = Playlist.getCurrentPlaylistArticles();\n        Playlist.clearLogList();\n        $scope.formData.title = defaultListName;\n        $scope.playlist.selected = {title: defaultListName, id: undefined};\n    }\n\n    /**\n     * Removes playlist\n     */\n    $scope.removePlaylist = function () {\n        var modal,\n        title,\n        text,\n        okText,\n        cancelText;\n\n        title = Translator.trans('Remove list', {}, 'articles');\n        text = Translator.trans('Are you sure you want to delete this list?', {}, 'articles');\n        okText = Translator.trans('OK', {}, 'messages');\n        cancelText = Translator.trans('Cancel', {}, 'messages');\n\n        modal = modalFactory.confirmDanger(title, text, okText, cancelText);\n        modal.result.then(function (data) {\n            if ($scope.playlist.selected.id !== undefined) {\n                Playlist.deletePlaylist().then(function () {\n                    flashMessage(Translator.trans('Entry deleted.', {}, 'messsages'));\n                    _.remove(\n                      $scope.playlists,\n                      {id: $scope.playlist.selected.id}\n                      );\n\n                    $scope.playlist.selected = undefined;\n                }, function () {\n                  flashMessage(Translator.trans('Error List', {}, 'articles'), 'error');\n              });\n            } else {\n                $scope.playlist.selected = undefined;\n            }\n        }, function (reason) {\n        });\n    }\n\n    /**\n     * It makes a proper API calls (create, update, link, unlink) based on\n     * performed actions. If the list's limit will be changed, popup will be displayed.\n     */\n    $scope.savePlaylist = function () {\n        var newLimit = $scope.playlist.selected.maxItems,\n            oldLimit = $scope.playlist.selected.oldLimit,\n            modal,\n            title,\n            text,\n            okText,\n            cancelText;\n\n        if ($scope.playlist.selected.title !== $scope.formData.title && $scope.playlist.selected.id !== undefined) {\n            title = Translator.trans('Info', {}, 'articles');\n            text = Translator.trans('articles.playlists.namechanged', {}, 'articles');\n            okText = Translator.trans('OK', {}, 'messages');\n            cancelText = Translator.trans('Cancel', {}, 'messages');\n            modal = modalFactory.confirmLight(title, text, okText, cancelText);\n\n            modal.result.then(function () {\n                saveList();\n\n                return true;\n            });\n        } else {\n            saveList();\n        }\n    };\n\n    /**\n     * Saves, updates playlist with all articles on server side.\n     * It makes batch link or unlink of the articles. It also\n     * saves a proper order of the articles. All list's changes are saved\n     * by clicking Save button.\n     */\n    var saveList = function () {\n        var deferred,\n            listname,\n            logList = [],\n            playlistExists,\n            list;\n\n        listname = $scope.formData.title\n        playlistExists = _.some(\n            $scope.playlists,\n            {title: listname}\n        );\n\n        var update = false;\n        // if we rename the current playlist, update it only\n        if (listname != $scope.playlist.selected.title && $scope.playlist.selected.id !== undefined) {\n            update = true;\n        }\n\n        $scope.playlist.selected.title = listname;\n        var flash = flashMessage(Translator.trans('Processing', {}, 'messages'), null, true);\n        $scope.processing = true;\n\n        if (!playlistExists && !update && $scope.playlist.selected.id === undefined) {\n            Playlist.createPlaylist($scope.playlist.selected).then(function (response) {\n                $scope.playlist.selected.id = response.id;\n                logList = Playlist.getLogList();\n                if (logList.length == 0) {\n                    afterSave(response);\n                    $scope.playlists = Playlist.getAll();\n                    flash.fadeOut();\n                    return;\n                }\n\n                Playlist.batchUpdate(logList, $scope.playlist.selected).then(function (data) {\n                    afterSave(data);\n                    flash.fadeOut();\n                }, function(response) {\n                    flash.fadeOut();\n                    afterSaveError(response);\n                });\n            }, function(response) {\n                flash.fadeOut();\n                afterSaveError(response);\n            });\n\n            return;\n        }\n\n        if ($scope.playlist.selected !== undefined) {\n            Playlist.updatePlaylist($scope.playlist.selected).then(function (response) {\n                logList = Playlist.getLogList();\n                if (logList.length == 0) {\n                    afterSave(response);\n                    flash.fadeOut();\n                    return;\n                }\n\n                Playlist.batchUpdate(logList, $scope.playlist.selected).then(function (data) {\n                    afterSave(data);\n                    flash.fadeOut();\n                }, function(response) {\n                    flash.fadeOut();\n                    afterSaveError(response);\n                });\n            }, function(response) {\n                flash.fadeOut();\n                afterSaveError(response);\n            });\n        }\n    }\n\n    var afterSave = function (response) {\n        $scope.processing = false;\n        Playlist.clearLogList();\n        flashMessage(Translator.trans('List saved', {}, 'articles'));\n        $scope.loadingSpinner = true;\n        scrollTop();\n        Playlist.getArticlesByListId({id: Playlist.getListId(), maxItems: $scope.playlist.selected.maxItems}).then(function (data) {\n            $scope.featuredArticles = data.items;\n            $scope.loadingSpinner = false;\n            $scope.isEmpty = false;\n            $scope.page = 2;\n            $activityIndicator.stopAnimating();\n        }, function(response) {\n            flashMessage(Translator.trans('Could not refresh the list', {}, 'articles'), 'error');\n            $scope.loadingSpinner = false;\n            $activityIndicator.stopAnimating();\n        });\n\n        $scope.playlist.selected.id = Playlist.getListId();\n        $scope.playlist.selected.oldLimit = $scope.playlist.selected.maxItems;\n\n        if (response && response[0] !== undefined && response[0].object.articlesModificationTime !== undefined) {\n            $scope.playlist.selected.articlesModificationTime = response[0].object.articlesModificationTime;\n        }\n    }\n\n    var afterSaveError = function (response) {\n        if (response.errors[0].code === 409) {\n            flashMessage(Translator.trans(\n                        'This list is already in a different state than the one in which it was loaded.', {}, 'articles'\n            ), 'error');\n            // automatically refresh playlist\n            $scope.loadingSpinner = true;\n            Playlist.getArticlesByListId({id: Playlist.getListId()}).then(function (data) {\n                $scope.featuredArticles = data.items;\n                $scope.playlist.selected.articlesModificationTime = data.articlesModificationTime;\n                $scope.loadingSpinner = false;\n                $activityIndicator.stopAnimating();\n            }, function(response) {\n               flashMessage(Translator.trans('Could not refresh the list', {}, 'articles'), 'error');\n               $scope.loadingSpinner = false;\n               $activityIndicator.stopAnimating();\n            });\n        } else {\n            flashMessage(Translator.trans('Could not save the list', {}, 'articles'), 'error');\n        }\n\n        $scope.processing = false;\n    }\n\n    /**\n     * Scrolls the featured list articles to the top.\n     */\n    var scrollTop = function () {\n        var el = angular.element('ul#context_list');\n        el.scrollTop(0);\n    }\n}]);"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/playlists/directives/loading-container.js",
    "content": "'use strict';\n\n/**\n* A directive which shows loading container\n*\n* @class loadingContainer\n*/\nangular.module('playlistsApp').directive('loadingContainer', function () {\n    return {\n        restrict: 'A',\n        scope: false,\n        link: function(scope, element, attrs) {\n            var loadingLayer = angular.element('<div class=\"loading\"></div>');\n            element.append(loadingLayer);\n            element.addClass('loading-container');\n            scope.$watch(attrs.loadingContainer, function(value) {\n                loadingLayer.toggleClass('ng-hide', !value);\n            });\n        }\n    };\n});"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/playlists/directives/sf-iframe.js",
    "content": "/**\n* A directive which creates an iframe containing the Newscoop login form.\n*\n* @class sfIframeLogin\n*/\nangular.module('playlistsApp').directive('sfIframeLogin', [\n    function () {\n        return {\n            template: '<iframe></iframe>',\n            replace: true,\n            restrict: 'E',\n            link: function(scope, $element, attrs) {\n                var url;\n\n                url = [\n                    Routing.generate('fos_oauth_server_authorize'),\n                    '?client_id=', clientId,\n                    '&redirect_uri=', redirectUris,\n                    '&response_type=token'\n                ].join('');\n\n                $element.attr('src', url);\n            }\n        };\n    }\n]);"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/playlists/filters/lists-search.js",
    "content": "'use strict';\n\n/**\n * AngularJS default filter with the following expression:\n * \"playlist in playlists | filter: {name: $select.search, someProperty: $select.search}\"\n * performs a AND between 'name: $select.search' and 'someProperty: $select.search'.\n * We want to perform a OR.\n *\n * @class listsFilter\n */\nangular.module('playlistsApp').filter('listsFilter', function() {\n  return function(items, props) {\n    var out = [];\n\n    if (angular.isArray(items)) {\n      items.forEach(function(item) {\n        var itemMatches = false;\n\n        var keys = Object.keys(props);\n        for (var i = 0; i < keys.length; i++) {\n          var prop = keys[i];\n          var text = props[prop].toLowerCase();\n          if (item[prop].toString().toLowerCase().indexOf(text) !== -1) {\n            itemMatches = true;\n            break;\n          }\n        }\n\n        if (itemMatches) {\n          out.push(item);\n        }\n      });\n    } else {\n      // Let the output be the input untouched\n      out = items;\n    }\n\n    return out;\n  }\n});"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/playlists/services/auth-interceptor.js",
    "content": "'use strict';\n\n/**\n* AngularJS Service for intercepting API requests and adding authorization\n* info to them.\n*\n* @class authInterceptor\n*/\nangular.module('playlistsApp').factory('authInterceptor', [\n    '$injector',\n    '$q',\n    function ($injector, $q) {\n        // NOTE: userAuth service is not injected directly, because it depends\n        // on the $http service and the latter's provider uses this\n        // authInterceptor service --> circular dependency.\n        // We thus inject need to inject userAuth service on the fly (when it\n        // is actually needed).\n\n        return {\n            request: function (config) {\n                var token,\n                    userAuth = $injector.get('userAuth');\n\n                config.headers = config.headers || {};\n                token = userAuth.token();\n                if (token && !config.IS_AUTHORIZATION_HEADER) {\n                    config.headers.Authorization = 'Bearer ' + token;\n                }\n\n                return config;\n            },\n\n            // If we receive an error response because authentication token\n            // is invalid/expired, we handle it by removing current token from\n            // the session and getting the new one.\n            //\n            // If login succeeds and a new token is obtained, the failed http\n            // request is transparently repeated with a correct token. If even\n            // this retried request (recognized by a special marker flag in\n            // request's http config) fails, the error is not further handled\n            // and is passed to through to the other parts of the application.\n            //\n            // Other types of http errors are not handled here and are simply\n            // passed through.\n            responseError: function (response) {\n                var configToRepeat,\n                    failedRequestConfig,\n                    retryDeferred,\n                    userAuth,\n                    $http;\n\n                userAuth = $injector.get('userAuth');\n                if (response.config.IS_RETRY) {\n                    // Tried to retry the initial failed request but failed\n                    // again --> forward the error without another retry (to\n                    // avoid a possible infinite loop).\n                    return $q.reject(response);\n                }\n\n                 if (response.status === 401 ||\n                    response.statusText === 'OAuth2 authentication required'\n                ) {\n                    // Request failed due to invalid oAuth token - try to\n                    // obtain a new token and then repeat the failed request.\n                    failedRequestConfig = response.config;\n                    retryDeferred = $q.defer();\n                    $http = $injector.get('$http');\n                    configToRepeat = angular.copy(failedRequestConfig);\n                    configToRepeat.IS_RETRY = true;\n\n                    userAuth.obtainToken()\n                    .then(function (responseBody) {\n                        $http(configToRepeat)\n                        .then(function (newResponse) {\n                            delete newResponse.config.IS_RETRY;\n                            retryDeferred.resolve(newResponse);\n                        })\n                        .catch(function () {\n                            retryDeferred.reject(response);\n                        });\n                    }, function (responseBody) {\n                        userAuth.newTokenByLoginModal()\n                        .then(function () {\n                            // new token successfully obtained,\n                            // repeat the request\n                            $http(configToRepeat)\n                            .then(function (newResponse) {\n                                delete newResponse.config.IS_RETRY;\n                                retryDeferred.resolve(newResponse);\n                            })\n                            .catch(function () {\n                                retryDeferred.reject(response);\n                            });\n                        })\n                        .catch(function () {\n                            // obtaining new token failed, reject the request\n                            retryDeferred.reject(response);\n                        });\n                    });\n\n                    return retryDeferred.promise;\n                } else {\n                    // some non-authentication error occured, these kind of\n                    // errors are not handled by this interceptor --> simply\n                    // forward the error\n                    return $q.reject(response);\n                }\n            }\n        };\n    }\n]);\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/playlists/services/filters-service.js",
    "content": "'use strict';\n\nangular.module('playlistsApp').factory('Filter', [\n    '$http',\n    '$q',\n    '$timeout',\n    function ($http, $q, $timeout) {\n        var Filter = function () {};  // Filter constructor\n\n        /**\n        * Retrieves a list of all existing playlists.\n        *\n        * Initially, an empty array is returned, which is later filled with\n        * data on successful server response. At that point the given promise\n        * is resolved (exposed as a $promise property of the returned array).\n        *\n        * @method getAll\n        * @return {Object} array of playlists\n        */\n        Filter.getAllPublications = function () {\n            var items = [],\n                deferredGet = $q.defer(),\n                url;\n\n            items.$promise = deferredGet.promise;\n\n            url = Routing.generate(\n                'newscoop_gimme_publications_getpublications',\n                {items_per_page: 9999},\n                true\n            );\n\n            $http.get(url)\n            .success(function (response) {\n                response.items.forEach(function (item) {\n                    items.push(item);\n                });\n                deferredGet.resolve();\n            }).error(function (responseBody) {\n                deferredGet.reject(responseBody);\n            });\n\n            return items;\n        };\n\n        Filter.getAllIssues = function (publicationId) {\n            var items = [],\n                deferredGet = $q.defer(),\n                url;\n\n            items.$promise = deferredGet.promise;\n\n            url = Routing.generate(\n                'newscoop_gimme_issues_getissues',\n                {items_per_page: 9999, publication: publicationId},\n                true\n            );\n\n            $http.get(url)\n            .success(function (response) {\n                response.items.forEach(function (item) {\n                    items.push(item);\n                });\n                deferredGet.resolve();\n            }).error(function (responseBody) {\n                deferredGet.reject(responseBody);\n            });\n\n            return items;\n        };\n\n        Filter.getAllSections = function (publicationId, issue) {\n            var items = [],\n                deferredGet = $q.defer(),\n                url;\n\n            items.$promise = deferredGet.promise;\n\n            url = Routing.generate(\n                'newscoop_gimme_sections_getsections',\n                {\n                    items_per_page: 9999,\n                    publication: publicationId,\n                    issue: issue.number,\n                    language: issue.language\n                },\n                true\n            );\n\n            $http.get(url)\n            .success(function (response) {\n                response.items.forEach(function (item) {\n                    items.push(item);\n                });\n                deferredGet.resolve();\n            }).error(function (responseBody) {\n                deferredGet.reject(responseBody);\n            });\n\n            return items;\n        };\n\n        Filter.getArticleTypes = function () {\n            var items = [],\n                deferredGet = $q.defer(),\n                url;\n\n            items.$promise = deferredGet.promise;\n\n            url = Routing.generate(\n                'newscoop_gimme_articletypes_getarticletypes',\n                {\n                    items_per_page: 9999\n                },\n                true\n            );\n\n            $http.get(url)\n            .success(function (response) {\n                response.items.forEach(function (item) {\n                    items.push(item);\n                });\n                deferredGet.resolve();\n            }).error(function (responseBody) {\n                deferredGet.reject(responseBody);\n            });\n\n            return items;\n        };\n\n        Filter.getAuthors = function (term) {\n            var items = [],\n                deferredGet = $q.defer(),\n                url;\n\n            items.$promise = deferredGet.promise;\n\n            url = Routing.generate(\n                'newscoop_gimme_authors_searchauthors',\n                {\n                    items_per_page: 25,\n                    query: term\n                },\n                true\n            );\n\n            $http.get(url)\n            .success(function (response) {\n                response.items.forEach(function (item) {\n                    items.push(item);\n                });\n                deferredGet.resolve();\n            }).error(function (responseBody) {\n                deferredGet.reject(responseBody);\n            });\n\n            return items;\n        };\n\n        Filter.getUsers = function (term) {\n            var items = [],\n                deferredGet = $q.defer(),\n                url;\n\n            items.$promise = deferredGet.promise;\n\n            url = Routing.generate(\n                'newscoop_gimme_users_searchusers',\n                {\n                    query: term,\n                    items_per_page: 25\n                },\n                true\n            );\n\n            $http.get(url)\n            .success(function (response) {\n                response.items.forEach(function (item) {\n                    items.push(item);\n                });\n                deferredGet.resolve();\n            }).error(function (responseBody) {\n                deferredGet.reject(responseBody);\n            });\n\n            return items;\n        };\n\n        Filter.getTopics = function (term) {\n            var items = [],\n                deferredGet = $q.defer(),\n                url;\n\n            items.$promise = deferredGet.promise;\n\n            url = Routing.generate(\n                'newscoop_gimme_topics_searchtopics',\n                {\n                    items_per_page: 25,\n                    query: term\n                },\n                true\n            );\n\n            $http.get(url)\n            .success(function (response) {\n                response.items.forEach(function (item) {\n                    items.push(item);\n                });\n                deferredGet.resolve();\n            }).error(function (responseBody) {\n                deferredGet.reject(responseBody);\n            });\n\n            return items;\n        };\n\n        Filter.getLanguages = function () {\n            var items = [],\n                deferredGet = $q.defer(),\n                url;\n\n            items.$promise = deferredGet.promise;\n\n            url = Routing.generate(\n                'newscoop_newscoop_language_getlanguages',\n                {},\n                true\n            );\n\n            $http.get(url)\n            .success(function (response) {\n                response.languages.forEach(function (item) {\n                    items.push(item);\n                });\n                items.unshift({\"code\": null, \"name\": Translator.trans(\"All\", {}, 'messages')});\n                deferredGet.resolve();\n            }).error(function (responseBody) {\n                deferredGet.reject(responseBody);\n            });\n\n            return items;\n        };\n\n        return Filter;\n    }\n]);\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/playlists/services/modal-factory.js",
    "content": "'use strict';\n\n/**\n* Constructor function for modal confirmations controllers.\n*\n* @class ModalCtrlConstructor\n* @param $scope {Object} AngularJS $scope object\n* @param $modalInstance {Object} AngularJS UI instance of the modal\n*     window the coontroller controls.\n* @param title {String} title of the modal window\n* @param text {String} text in the modal window's body\n* @param okText {String} confirm button text\n* @param cancelText {String} cancel button text\n*/\n// XXX: this is defined as a variable, because there were *big* problems with\n// injecting controller as a dependency (and we need it to pass it as a\n// parameter to $modal.open())\nvar ModalCtrlConstructor = function ($scope, $modalInstance, title, text, okText, cancelText) {\n\n    $scope.title = title;\n    $scope.text = text;\n    $scope.okText = okText;\n    $scope.cancelText = cancelText;\n\n    /**\n    * Closes the modal with a resolution of OK.\n    * @method ok\n    */\n    $scope.ok = function () {\n        $modalInstance.close(true);\n    };\n\n    /**\n    * Closes the modal with a resolution of CANCEL.\n    * @method ok\n    */\n    $scope.cancel = function () {\n        $modalInstance.dismiss(false);\n    };\n};\n\n// needed so that it works even when the code gets minified\nModalCtrlConstructor.$inject = ['$scope', '$modalInstance', 'title', 'text', 'okText', 'cancelText'];\n\n\n/**\n* AngularJS Service for creating modal dialog instances.\n*\n* @class modalFactory\n*/\nangular.module('playlistsApp').factory('modalFactory', [\n    '$modal',\n    function ($modal) {\n\n        return {\n            /**\n            * @class modalFactory\n            */\n\n            /**\n            * Creates a new confirmation dialog instance.\n            *\n            * @class createConfirmInstance\n            * @param title {String} title of the modal window\n            * @param text {String} text in the modal window's body\n            * @param okText {String} confirm button text\n            * @param cancelText {String} cancel button text\n            * @param isDanger {Boolean} whether to create a \"danger\" version\n            *   of the confirmation dialog\n            * @return {Object} AngularJS UI modal dialog instance\n            */\n            _createConfirmInstance: function (title, text, okText, cancelText, isDanger) {\n                // this method, although \"private\", is publicly exposed in the\n                // factory object for easier testability\n                var templateUrl = isDanger ?\n                    '../../bundles/newscoopnewscoop/views/modal-danger.html' :\n                    '../../bundles/newscoopnewscoop/views/modal-confirm.html';\n\n                return $modal.open({\n                    templateUrl: templateUrl,\n                    controller: ModalCtrlConstructor,\n                    backdrop: 'static',\n                    keyboard: false,\n                    resolve: {\n                        title: function () {\n                            return title;\n                        },\n                        text: function () {\n                            return text;\n                        },\n                        okText: function () {\n                            return okText;\n                        },\n                        cancelText: function () {\n                            return cancelText;\n                        }\n                    }\n                });\n            },\n\n            /**\n            * Opens a \"light\" confirmation dialog (generally used for\n            * confirming non-critical actions).\n            * @method confirmLight\n            * @param title {String} title of the modal window\n            * @param text {String} text in the modal window's body\n            * @param okText {String} confirm button text\n            * @param cancelText {String} cancel button text\n            * @return {Object} modal dialog instance\n            */\n            confirmLight: function (title, text, okText, cancelText) {\n                return this._createConfirmInstance(title, text, okText, cancelText, false);\n            },\n\n            /**\n            * Opens a \"danger\" confirmation dialog (generally used for\n            * confirming critical actions with major and/or irreversible\n            * effects).\n            * @method confirmDanger\n            * @param title {String} title of the modal window\n            * @param text {String} text in the modal window's body\n            * @param okText {String} confirm button text\n            * @param cancelText {String} cancel button text\n            * @return {Object} modal dialog instance\n            */\n            confirmDanger:  function (title, text, okText, cancelText) {\n                return this._createConfirmInstance(title, text, okText, cancelText, true);\n            },\n        };\n\n    }\n]);\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/playlists/services/playlists.js",
    "content": "'use strict';\n\nangular.module('playlistsApp').factory('Playlist', [\n    '$http',\n    '$q',\n    '$timeout',\n    '$filter',\n    function ($http, $q, $timeout, $filter) {\n        var Playlist = function () {};  // Playlist constructor\n\n        var listId = undefined,\n\t\t\tplaylistArticles = [],\n\t\t\tlogList = [];\n\n        /**\n        * Retrieves a list of all existing playlists.\n        *\n        * Initially, an empty array is returned, which is later filled with\n        * data on successful server response. At that point the given promise\n        * is resolved (exposed as a $promise property of the returned array).\n        *\n        * @method getAll\n        * @return {Object} array of playlists\n        */\n        Playlist.getAll = function () {\n            var playlists = [],\n                deferredGet = $q.defer(),\n                url;\n\n            playlists.$promise = deferredGet.promise;\n\n            url = Routing.generate(\n                'newscoop_gimme_articleslist_getarticleslists',\n                {items_per_page: 9999},\n                true\n            );\n\n            $http.get(url)\n            .success(function (response) {\n                if (response.items !== undefined) {\n                    response.items.forEach(function (item) {\n                        item.title = item.name;\n                        playlists.push(item);\n                    });\n\n                    deferredGet.resolve(response);\n                }\n            }).error(function (responseBody) {\n                deferredGet.reject(responseBody);\n            });\n\n            return playlists;\n        };\n\n        /**\n        * Retrieves a list of all articles by given list id.\n        *\n        * Initially, an empty array is returned, which is later filled with\n        * data on successful server response. At that point the given promise\n        * is resolved (exposed as a $promise property of the returned array).\n        *\n        * @method getArticlesByListId\n        * @return {Object} array of playlists\n        */\n        Playlist.getArticlesByListId = function (playlist, page) {\n            var articles = [],\n                deferredGet = $q.defer(),\n                url;\n\n            var params = {id: playlist.id};\n            if (playlist.maxItems !== null && playlist.maxItems >= 0 ||\n                playlist.maxItems == undefined\n            ) {\n                params.items_per_page = 10;\n            } else {\n                params.items_per_page = 9999;\n            }\n\n            if (page !== undefined) {\n            \tparams.page = page;\n            }\n\n            url = Routing.generate(\n                'newscoop_gimme_articleslist_getplaylistsarticles',\n                params,\n                true\n            );\n\n            $http.get(url)\n            .success(function (response) {\n                response.items.forEach(function (item) {\n                    articles.push(item);\n                });\n                playlistArticles = articles;\n                response.title = response.name;\n                deferredGet.resolve(response);\n            }).error(function (responseBody) {\n                deferredGet.reject(responseBody);\n            });\n\n            return deferredGet.promise;\n        };\n\n        Playlist.getArticle = function (number, language) {\n            var deferredGet = $q.defer(),\n                url;\n\n            url = Routing.generate(\n                'newscoop_gimme_articles_getarticle_language',\n                {number: number, language: language},\n                true\n            );\n\n            $http.get(url)\n            .success(function (response) {\n                deferredGet.resolve(response);\n            }).error(function (responseBody) {\n                deferredGet.reject(responseBody);\n            });\n\n            return deferredGet.promise;\n        };\n\n        /**\n        * Retrieves a list of all available articles.\n        *\n        * At the begining we check for valid ngTable parameters\n        * and pass them to the API endpoint, next we make a GET call\n        * and fill ngTable with data returned from the API.\n        *\n        * @method getAllArticles\n        * @return {Object} array of playlists\n        */\n        Playlist.getAllArticles = function ($defer, params) {\n            var url,\n            \trequestParams;\n\n           \trequestParams = {items_per_page: 10};\n\n           \tif(params.$params.page !== undefined) {\n           \t\trequestParams.page = params.$params.page;\n           \t}\n\n           \tif (!_.isEmpty(params.filter())) {\n            \trequestParams = _.merge(requestParams, params.filter());\n        \t}\n\n            url = Routing.generate(\n                'newscoop_gimme_articles_searcharticles',\n                requestParams,\n                true\n            );\n\n            $http.get(url)\n            .success(function (response) {\n                if (response.pagination !== undefined) {\n                    params.total(response.pagination.itemsCount);\n                } else {\n                    params.total(response.items.length);\n                }\n                $defer.resolve(response.items);\n            }).error(function (responseBody) {\n                $defer.reject(responseBody);\n            });\n        };\n\n        /**\n        * Saves playlist items and order.\n        *\n        * @method batchUpdate\n        * @param number {Array} array which keeps modified articles for given playlist\n        * @param playlist {Object} selected playlist\n        * @return {Object} promise object that is resolved on successful server\n        *   response and rejected on server error response\n        */\n        Playlist.batchUpdate = function(logList, playlist) {\n            var deferred = $q.defer(),\n                postParams,\n                now,\n                date,\n                playlistDateTime = undefined;\n\n            date = new Date();\n            now = new Date(\n                date.getUTCFullYear(),\n                date.getUTCMonth(),\n                date.getUTCDate(),\n                date.getUTCHours(),\n                date.getUTCMinutes(),\n                date.getUTCSeconds()\n            );\n\n            postParams = parseAndBuildParams(logList);\n\n            if (playlist.articlesModificationTime !== undefined) {\n                playlistDateTime = playlist.articlesModificationTime;\n            }\n\n            $http({\n                url: Routing.generate(\n                    'newscoop_gimme_articleslist_savebatchactions',\n                    {id: listId},\n                    true\n                ),\n                method: 'POST',\n                headers: {\n\t                'Content-Type': 'application/x-www-form-urlencoded'\n\t            },\n\t            transformRequest: function (data) {\n\t                var str = [];\n\t\t\t        angular.forEach(data, function(param, key){\n\t\t\t        \tstr.push(\"actions[][\"+param.method+\"]=\" + encodeURIComponent(param.link));\n\t\t\t    \t});\n\n\t\t\t        // send also datetime to see if playlist is locked by diffrent user\n\t\t\t        if (playlistDateTime !== undefined) {\n\t\t\t    \t\tstr.push(\"articlesModificationTime=\" + encodeURIComponent(playlistDateTime));\n\t\t\t    \t} else {\n\t\t\t    \t\tstr.push(\"articlesModificationTime=\" + $filter('date')(now, 'yyyy-MM-ddTHH:mm:ss'));\n\t\t\t    \t}\n\n\t\t\t        return str.join(\"&\");\n\t            },\n\t            data: postParams\n            })\n            .success(function (response) {\n                deferred.resolve(response);\n            })\n            .error(function (responseBody) {\n                deferred.reject(responseBody);\n            });\n\n            return deferred.promise;\n        };\n\n        /**\n         * It parses and builds params that need to be submitted in the POSt request,\n         * based on log list, which keeps articles to modify.\n         * @param  {Array} logList Log list\n         * @return {Array}         Array with parameters\n         */\n        var parseAndBuildParams = function (logList) {\n        \tvar postParams = [];\n        \tangular.forEach(logList, function(article, key) {\n            \tvar link = [\n            \t\t'<',\n\t                Routing.generate(\n\t                    'newscoop_gimme_articles_getarticle_language',\n\t                    {number: article.number, language: article.language},\n\t                    false\n\t                ),\n\t                '; rel=\"article\">'].join('');;\n\n\t            if (article._method == 'link') {\n\t            \tvar position = [',<',\n\t                article._order,\n\t                '; rel=\"article-position\">'].join('');\n\t                link = link.concat(position);\n\t            }\n\n            \tpostParams.push({link: link, method: article._method});\n            });\n\n            return postParams;\n        }\n\n        /**\n        * Creates new playlist\n\n        * @method createPlaylist\n        * @return {String} playlist name\n        */\n        Playlist.createPlaylist = function (playlist) {\n            var url,\n            \tdeferred = $q.defer();\n\n            url = Routing.generate(\n                'newscoop_gimme_articleslist_createplaylist'\n            );\n\n            var formData = {\n            \tplaylist: {\n            \t\tname: playlist.title\n            \t}\n            };\n\n            if (playlist.maxItems !== undefined) {\n            \tformData.playlist.maxItems = playlist.maxItems;\n            }\n\n            $http({\n\t            method: \"POST\",\n\t            url: url,\n\t            headers: {\n\t                'Content-Type': 'application/x-www-form-urlencoded'\n\t            },\n\t            data: $.param(formData)\n        \t}).success(function (response) {\n        \t\tlistId = response.id;\n                deferred.resolve(response);\n            }).error(function (responseBody) {\n                deferred.reject(responseBody);\n            });\n\n            return deferred.promise;\n        };\n\n        /**\n        * Removes playlist\n\n        * @method createPlaylist\n        * @return {String} playlist name\n        */\n        Playlist.deletePlaylist = function () {\n            var url,\n            \tdeferred = $q.defer();\n\n            url = Routing.generate(\n                'newscoop_gimme_articleslist_deleteplaylist',\n                {id: listId},\n                true\n            );\n\n            $http.delete(url)\n            .success(function (response) {\n                deferred.resolve();\n            }).error(function (responseBody) {\n                deferred.reject(responseBody);\n            });\n\n            return deferred.promise;\n        };\n\n        /**\n        * Updates playlist\n\n        * @method updatePlaylist\n        * @return {Object} playlist Selected playlist\n        */\n        Playlist.updatePlaylist = function (playlist) {\n            var url,\n            \tdeferred = $q.defer();\n\n\n            url = Routing.generate(\n                'newscoop_gimme_articleslist_updateplaylist',\n                {id: playlist.id}\n            );\n\n            var formData = {\n            \tplaylist: {\n            \t\tname: playlist.title\n            \t}\n            };\n\n            if (playlist.maxItems !== undefined) {\n            \tformData.playlist.maxItems = playlist.maxItems == null ? 0 : playlist.maxItems;\n            }\n\n            $http({\n\t            method: \"POST\",\n\t            url: url,\n\t            headers: {\n\t                'Content-Type': 'application/x-www-form-urlencoded'\n\t            },\n\t            data: $.param(formData)\n        \t}).success(function (response) {\n                deferred.resolve(response);\n            }).error(function (responseBody) {\n                deferred.reject(responseBody);\n            });\n\n            return deferred.promise;\n        };\n\n        /**\n         * Gets list identifier\n         *\n         * @return {Integer|null} List id\n         */\n        Playlist.getListId = function () {\n            return listId;\n        };\n\n        /**\n         * Sets list identifier\n         *\n         * @param {Integer} value List id\n         */\n        Playlist.setListId = function(value) {\n            listId = value;\n        };\n\n        /**\n         * Gets playlist's articles array\n         *\n         * @return {Array} Playlist's articles\n         */\n        Playlist.getCurrentPlaylistArticles = function () {\n            return playlistArticles;\n        };\n\n        /**\n         * Sets current playlist articles\n         *\n         * @param {Array} list Playlist's articles\n         */\n        Playlist.setCurrentPlaylistArticles = function (list) {\n            playlistArticles = list;\n        };\n\n        /**\n         * Gets log list\n         *\n         * @return {Array} Log list\n         */\n        Playlist.getLogList = function () {\n            return logList;\n        };\n\n        /**\n         * Sets log list\n         *\n         * @param {Array} Log list\n         */\n        Playlist.setLogList = function (list) {\n            logList = list;\n        };\n\n        /**\n         * Clears log list\n         *\n         * @return {Array} Log list\n         */\n        Playlist.clearLogList = function () {\n        \tlogList = [];\n\n            return logList;\n        };\n\n        /**\n         * Adds new item to the logList\n         * @param {Object} article Article object\n         */\n        Playlist.addItemToLogList = function (article) {\n            logList.push(article);\n        };\n\n        /**\n         * Removes article from logList by number and method\n         *\n         * @param  {Article} article Article object\n         * @param  {String} method         method type (e.g. \"unlink\" or \"link\")\n         */\n        Playlist.removeItemFromLogList = function (article, method) {\n        \t_.remove(\n                logList,\n                {\n                    number: article.number,\n                    language: article.language,\n                    _method: method\n                }\n            );\n        }\n\n        return Playlist;\n    }\n]);\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/playlists/services/user-auth.js",
    "content": "(function () {\n    'use strict';\n\n    /**\n    * Constructor function for the login modal controller\n    *\n    * @class ModalLoginCtrl\n    */\n    function ModalLoginCtrl($modalInstance, $window) {\n        // On successful login, Newscoop login form redirects user to some\n        // redirect URL and that URL contains the new authentication token.\n        // Upon redirect, the iframe in modal body is reloaded and its\n        // Javascript code extracts the token from the URL. On session\n        // storage change login modal will be closed.\n        angular.element($window).on('storage', function() {\n            if ($window.sessionStorage.getItem('newscoop.token')) {\n                $modalInstance.close();\n            }\n        });\n    }\n\n    ModalLoginCtrl.$inject = ['$modalInstance', '$window'];\n\n    /**\n    * A service for managing user authentication.\n    *\n    * @class userAuth\n    */\n    angular.module('playlistsApp').service('userAuth', [\n        '$http',\n        '$modal',\n        '$q',\n        '$window',\n        function ($http, $modal, $q, $window) {\n            var self = this;\n\n            /**\n            * Returns the current oAuth token in sessionStorage.\n            *\n            * @method token\n            * @return {String} the token itself or null if does not exist\n            */\n            self.token = function () {\n                return $window.sessionStorage.getItem('newscoop.token');\n            };\n\n            /**\n            * Sets the current oAuth token in sessionStorage.\n            *\n            * @method setToken\n            */\n            self.setToken = function (token) {\n                $window.sessionStorage.setItem('newscoop.token', token);\n            };\n\n            /**\n            * Returns true if the current user is authenticated (=has a token),\n            * otherwise false.\n            *\n            * @method isAuthenticated\n            * @return {Boolean}\n            */\n            self.isAuthenticated = function () {\n                return !!$window.sessionStorage.getItem('newscoop.token');\n            };\n\n            /**\n            * Gets access token by client id. Opening a modal when user session\n            * in Newscoop is still valid, is not needed then. Instead a new token\n            * is obtained directly from the API.\n            *\n            * @method obtainToken\n            * @return {Object} promise object\n            */\n            self.obtainToken = function () {\n                var deferredGet = $q.defer();\n\n                $http.get(Routing.generate(\"newscoop_gimme_users_getuseraccesstoken\", {\n                    clientId: clientId\n                }), {IS_RETRY: true, IS_AUTHORIZATION_HEADER: true})\n                .success(function(response) {\n                    self.setToken(response.access_token);\n                    deferredGet.resolve(response);\n                })\n                .error(function (response) {\n                    deferredGet.reject(response);\n                });\n\n                return deferredGet.promise;\n            }\n\n            /**\n            * Opens a modal with Newscoop login form. On successful login it\n            * stores the new authentication token into session storage and\n            * resolves given promise with it.\n            *\n            * @method newTokenByLoginModal\n            * @return {Object} promise object\n            */\n            self.newTokenByLoginModal = function () {\n                var deferred = $q.defer(),\n                    dialog;\n\n                dialog = $modal.open({\n                    templateUrl: '/bundles/newscoopnewscoop/views/modal-login.html',\n                    controller: ModalLoginCtrl,\n                    controllerAs: 'ctrl',\n                    windowClass: 'modalLogin',\n                    backdrop: 'static'\n                });\n\n                dialog.result.then(function () {\n                    flashMessage(Translator.trans('Successfully refreshed authentication token.', {}, 'messages'));\n                    deferred.resolve();\n                })\n                .catch(function (reason) {\n                    flashMessage(Translator.trans('Failed to refresh authentication token.', {}, 'messages'), 'error');\n                    deferred.reject(reason);\n                });\n\n                return deferred.promise;\n            };\n        }\n    ]);\n}());\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/popover.js",
    "content": "/*!\n * Bootstrap v3.0.0\n *\n * Copyright 2013 Twitter, Inc\n * Licensed under the Apache License v2.0\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Designed and built with all the love in the world @twitter by @mdo and @fat.\n */\n\n+function(a){\"use strict\";var b=function(a,b){this.type=this.options=this.enabled=this.timeout=this.hoverState=this.$element=null,this.init(\"tooltip\",a,b)};b.DEFAULTS={animation:!0,placement:\"top\",selector:!1,template:'<div class=\"tooltip\"><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>',trigger:\"hover focus\",title:\"\",delay:0,html:!1,container:!1},b.prototype.init=function(b,c,d){this.enabled=!0,this.type=b,this.$element=a(c),this.options=this.getOptions(d);var e=this.options.trigger.split(\" \");for(var f=e.length;f--;){var g=e[f];if(g==\"click\")this.$element.on(\"click.\"+this.type,this.options.selector,a.proxy(this.toggle,this));else if(g!=\"manual\"){var h=g==\"hover\"?\"mouseenter\":\"focus\",i=g==\"hover\"?\"mouseleave\":\"blur\";this.$element.on(h+\".\"+this.type,this.options.selector,a.proxy(this.enter,this)),this.$element.on(i+\".\"+this.type,this.options.selector,a.proxy(this.leave,this))}}this.options.selector?this._options=a.extend({},this.options,{trigger:\"manual\",selector:\"\"}):this.fixTitle()},b.prototype.getDefaults=function(){return b.DEFAULTS},b.prototype.getOptions=function(b){return b=a.extend({},this.getDefaults(),this.$element.data(),b),b.delay&&typeof b.delay==\"number\"&&(b.delay={show:b.delay,hide:b.delay}),b},b.prototype.getDelegateOptions=function(){var b={},c=this.getDefaults();return this._options&&a.each(this._options,function(a,d){c[a]!=d&&(b[a]=d)}),b},b.prototype.enter=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget)[this.type](this.getDelegateOptions()).data(\"bs.\"+this.type);clearTimeout(c.timeout),c.hoverState=\"in\";if(!c.options.delay||!c.options.delay.show)return c.show();c.timeout=setTimeout(function(){c.hoverState==\"in\"&&c.show()},c.options.delay.show)},b.prototype.leave=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget)[this.type](this.getDelegateOptions()).data(\"bs.\"+this.type);clearTimeout(c.timeout),c.hoverState=\"out\";if(!c.options.delay||!c.options.delay.hide)return c.hide();c.timeout=setTimeout(function(){c.hoverState==\"out\"&&c.hide()},c.options.delay.hide)},b.prototype.show=function(){var b=a.Event(\"show.bs.\"+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(b);if(b.isDefaultPrevented())return;var c=this.tip();this.setContent(),this.options.animation&&c.addClass(\"fade\");var d=typeof this.options.placement==\"function\"?this.options.placement.call(this,c[0],this.$element[0]):this.options.placement,e=/\\s?auto?\\s?/i,f=e.test(d);f&&(d=d.replace(e,\"\")||\"top\"),c.detach().css({top:0,left:0,display:\"block\"}).addClass(d),this.options.container?c.appendTo(this.options.container):c.insertAfter(this.$element);var g=this.getPosition(),h=c[0].offsetWidth,i=c[0].offsetHeight;if(f){var j=this.$element.parent(),k=d,l=document.documentElement.scrollTop||document.body.scrollTop,m=this.options.container==\"body\"?window.innerWidth:j.outerWidth(),n=this.options.container==\"body\"?window.innerHeight:j.outerHeight(),o=this.options.container==\"body\"?0:j.offset().left;d=d==\"bottom\"&&g.top+g.height+i-l>n?\"top\":d==\"top\"&&g.top-l-i<0?\"bottom\":d==\"right\"&&g.right+h>m?\"left\":d==\"left\"&&g.left-h<o?\"right\":d,c.removeClass(k).addClass(d)}var p=this.getCalculatedOffset(d,g,h,i);this.applyPlacement(p,d),this.$element.trigger(\"shown.bs.\"+this.type)}},b.prototype.applyPlacement=function(a,b){var c,d=this.tip(),e=d[0].offsetWidth,f=d[0].offsetHeight,g=parseInt(d.css(\"margin-top\"),10),h=parseInt(d.css(\"margin-left\"),10);isNaN(g)&&(g=0),isNaN(h)&&(h=0),a.top=a.top+g,a.left=a.left+h,d.offset(a).addClass(\"in\");var i=d[0].offsetWidth,j=d[0].offsetHeight;b==\"top\"&&j!=f&&(c=!0,a.top=a.top+f-j);if(/bottom|top/.test(b)){var k=0;a.left<0&&(k=a.left*-2,a.left=0,d.offset(a),i=d[0].offsetWidth,j=d[0].offsetHeight),this.replaceArrow(k-e+i,i,\"left\")}else this.replaceArrow(j-f,j,\"top\");c&&d.offset(a)},b.prototype.replaceArrow=function(a,b,c){this.arrow().css(c,a?50*(1-a/b)+\"%\":\"\")},b.prototype.setContent=function(){var a=this.tip(),b=this.getTitle();a.find(\".tooltip-inner\")[this.options.html?\"html\":\"text\"](b),a.removeClass(\"fade in top bottom left right\")},b.prototype.hide=function(){function e(){b.hoverState!=\"in\"&&c.detach()}var b=this,c=this.tip(),d=a.Event(\"hide.bs.\"+this.type);this.$element.trigger(d);if(d.isDefaultPrevented())return;return c.removeClass(\"in\"),a.support.transition&&this.$tip.hasClass(\"fade\")?c.one(a.support.transition.end,e).emulateTransitionEnd(150):e(),this.$element.trigger(\"hidden.bs.\"+this.type),this},b.prototype.fixTitle=function(){var a=this.$element;(a.attr(\"title\")||typeof a.attr(\"data-original-title\")!=\"string\")&&a.attr(\"data-original-title\",a.attr(\"title\")||\"\").attr(\"title\",\"\")},b.prototype.hasContent=function(){return this.getTitle()},b.prototype.getPosition=function(){var b=this.$element[0];return a.extend({},typeof b.getBoundingClientRect==\"function\"?b.getBoundingClientRect():{width:b.offsetWidth,height:b.offsetHeight},this.$element.offset())},b.prototype.getCalculatedOffset=function(a,b,c,d){return a==\"bottom\"?{top:b.top+b.height,left:b.left+b.width/2-c/2}:a==\"top\"?{top:b.top-d,left:b.left+b.width/2-c/2}:a==\"left\"?{top:b.top+b.height/2-d/2,left:b.left-c}:{top:b.top+b.height/2-d/2,left:b.left+b.width}},b.prototype.getTitle=function(){var a,b=this.$element,c=this.options;return a=b.attr(\"data-original-title\")||(typeof c.title==\"function\"?c.title.call(b[0]):c.title),a},b.prototype.tip=function(){return this.$tip=this.$tip||a(this.options.template)},b.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(\".tooltip-arrow\")},b.prototype.validate=function(){this.$element[0].parentNode||(this.hide(),this.$element=null,this.options=null)},b.prototype.enable=function(){this.enabled=!0},b.prototype.disable=function(){this.enabled=!1},b.prototype.toggleEnabled=function(){this.enabled=!this.enabled},b.prototype.toggle=function(b){var c=b?a(b.currentTarget)[this.type](this.getDelegateOptions()).data(\"bs.\"+this.type):this;c.tip().hasClass(\"in\")?c.leave(c):c.enter(c)},b.prototype.destroy=function(){this.hide().$element.off(\".\"+this.type).removeData(\"bs.\"+this.type)};var c=a.fn.tooltip;a.fn.tooltip=function(c){return this.each(function(){var d=a(this),e=d.data(\"bs.tooltip\"),f=typeof c==\"object\"&&c;e||d.data(\"bs.tooltip\",e=new b(this,f)),typeof c==\"string\"&&e[c]()})},a.fn.tooltip.Constructor=b,a.fn.tooltip.noConflict=function(){return a.fn.tooltip=c,this}}(window.jQuery),+function(a){\"use strict\";var b=function(a,b){this.init(\"popover\",a,b)};if(!a.fn.tooltip)throw new Error(\"Popover requires tooltip.js\");b.DEFAULTS=a.extend({},a.fn.tooltip.Constructor.DEFAULTS,{placement:\"right\",trigger:\"click\",content:\"\",template:'<div class=\"popover\"><div class=\"arrow\"></div><h3 class=\"popover-title\"></h3><div class=\"popover-content\"></div></div>'}),b.prototype=a.extend({},a.fn.tooltip.Constructor.prototype),b.prototype.constructor=b,b.prototype.getDefaults=function(){return b.DEFAULTS},b.prototype.setContent=function(){var a=this.tip(),b=this.getTitle(),c=this.getContent();a.find(\".popover-title\")[this.options.html?\"html\":\"text\"](b),a.find(\".popover-content\")[this.options.html?\"html\":\"text\"](c),a.removeClass(\"fade top bottom left right in\"),a.find(\".popover-title\").html()||a.find(\".popover-title\").hide()},b.prototype.hasContent=function(){return this.getTitle()||this.getContent()},b.prototype.getContent=function(){var a=this.$element,b=this.options;return a.attr(\"data-content\")||(typeof b.content==\"function\"?b.content.call(a[0]):b.content)},b.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(\".arrow\")},b.prototype.tip=function(){return this.$tip||(this.$tip=a(this.options.template)),this.$tip};var c=a.fn.popover;a.fn.popover=function(c){return this.each(function(){var d=a(this),e=d.data(\"bs.popover\"),f=typeof c==\"object\"&&c;e||d.data(\"bs.popover\",e=new b(this,f)),typeof c==\"string\"&&e[c]()})},a.fn.popover.Constructor=b,a.fn.popover.noConflict=function(){return a.fn.popover=c,this}}(window.jQuery)"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/sanitize.js",
    "content": "/**\n * @license AngularJS v1.3.7\n * (c) 2010-2014 Google, Inc. http://angularjs.org\n * License: MIT\n */\n(function(window, angular, undefined) {'use strict';\n\nvar $sanitizeMinErr = angular.$$minErr('$sanitize');\n\n/**\n * @ngdoc module\n * @name ngSanitize\n * @description\n *\n * # ngSanitize\n *\n * The `ngSanitize` module provides functionality to sanitize HTML.\n *\n *\n * <div doc-module-components=\"ngSanitize\"></div>\n *\n * See {@link ngSanitize.$sanitize `$sanitize`} for usage.\n */\n\n/*\n * HTML Parser By Misko Hevery (misko@hevery.com)\n * based on:  HTML Parser By John Resig (ejohn.org)\n * Original code by Erik Arvidsson, Mozilla Public License\n * http://erik.eae.net/simplehtmlparser/simplehtmlparser.js\n *\n * // Use like so:\n * htmlParser(htmlString, {\n *     start: function(tag, attrs, unary) {},\n *     end: function(tag) {},\n *     chars: function(text) {},\n *     comment: function(text) {}\n * });\n *\n */\n\n\n/**\n * @ngdoc service\n * @name $sanitize\n * @kind function\n *\n * @description\n *   The input is sanitized by parsing the HTML into tokens. All safe tokens (from a whitelist) are\n *   then serialized back to properly escaped html string. This means that no unsafe input can make\n *   it into the returned string, however, since our parser is more strict than a typical browser\n *   parser, it's possible that some obscure input, which would be recognized as valid HTML by a\n *   browser, won't make it through the sanitizer. The input may also contain SVG markup.\n *   The whitelist is configured using the functions `aHrefSanitizationWhitelist` and\n *   `imgSrcSanitizationWhitelist` of {@link ng.$compileProvider `$compileProvider`}.\n *\n * @param {string} html HTML input.\n * @returns {string} Sanitized HTML.\n *\n * @example\n   <example module=\"sanitizeExample\" deps=\"angular-sanitize.js\">\n   <file name=\"index.html\">\n     <script>\n         angular.module('sanitizeExample', ['ngSanitize'])\n           .controller('ExampleController', ['$scope', '$sce', function($scope, $sce) {\n             $scope.snippet =\n               '<p style=\"color:blue\">an html\\n' +\n               '<em onmouseover=\"this.textContent=\\'PWN3D!\\'\">click here</em>\\n' +\n               'snippet</p>';\n             $scope.deliberatelyTrustDangerousSnippet = function() {\n               return $sce.trustAsHtml($scope.snippet);\n             };\n           }]);\n     </script>\n     <div ng-controller=\"ExampleController\">\n        Snippet: <textarea ng-model=\"snippet\" cols=\"60\" rows=\"3\"></textarea>\n       <table>\n         <tr>\n           <td>Directive</td>\n           <td>How</td>\n           <td>Source</td>\n           <td>Rendered</td>\n         </tr>\n         <tr id=\"bind-html-with-sanitize\">\n           <td>ng-bind-html</td>\n           <td>Automatically uses $sanitize</td>\n           <td><pre>&lt;div ng-bind-html=\"snippet\"&gt;<br/>&lt;/div&gt;</pre></td>\n           <td><div ng-bind-html=\"snippet\"></div></td>\n         </tr>\n         <tr id=\"bind-html-with-trust\">\n           <td>ng-bind-html</td>\n           <td>Bypass $sanitize by explicitly trusting the dangerous value</td>\n           <td>\n           <pre>&lt;div ng-bind-html=\"deliberatelyTrustDangerousSnippet()\"&gt;\n&lt;/div&gt;</pre>\n           </td>\n           <td><div ng-bind-html=\"deliberatelyTrustDangerousSnippet()\"></div></td>\n         </tr>\n         <tr id=\"bind-default\">\n           <td>ng-bind</td>\n           <td>Automatically escapes</td>\n           <td><pre>&lt;div ng-bind=\"snippet\"&gt;<br/>&lt;/div&gt;</pre></td>\n           <td><div ng-bind=\"snippet\"></div></td>\n         </tr>\n       </table>\n       </div>\n   </file>\n   <file name=\"protractor.js\" type=\"protractor\">\n     it('should sanitize the html snippet by default', function() {\n       expect(element(by.css('#bind-html-with-sanitize div')).getInnerHtml()).\n         toBe('<p>an html\\n<em>click here</em>\\nsnippet</p>');\n     });\n\n     it('should inline raw snippet if bound to a trusted value', function() {\n       expect(element(by.css('#bind-html-with-trust div')).getInnerHtml()).\n         toBe(\"<p style=\\\"color:blue\\\">an html\\n\" +\n              \"<em onmouseover=\\\"this.textContent='PWN3D!'\\\">click here</em>\\n\" +\n              \"snippet</p>\");\n     });\n\n     it('should escape snippet without any filter', function() {\n       expect(element(by.css('#bind-default div')).getInnerHtml()).\n         toBe(\"&lt;p style=\\\"color:blue\\\"&gt;an html\\n\" +\n              \"&lt;em onmouseover=\\\"this.textContent='PWN3D!'\\\"&gt;click here&lt;/em&gt;\\n\" +\n              \"snippet&lt;/p&gt;\");\n     });\n\n     it('should update', function() {\n       element(by.model('snippet')).clear();\n       element(by.model('snippet')).sendKeys('new <b onclick=\"alert(1)\">text</b>');\n       expect(element(by.css('#bind-html-with-sanitize div')).getInnerHtml()).\n         toBe('new <b>text</b>');\n       expect(element(by.css('#bind-html-with-trust div')).getInnerHtml()).toBe(\n         'new <b onclick=\"alert(1)\">text</b>');\n       expect(element(by.css('#bind-default div')).getInnerHtml()).toBe(\n         \"new &lt;b onclick=\\\"alert(1)\\\"&gt;text&lt;/b&gt;\");\n     });\n   </file>\n   </example>\n */\nfunction $SanitizeProvider() {\n  this.$get = ['$$sanitizeUri', function($$sanitizeUri) {\n    return function(html) {\n      var buf = [];\n      htmlParser(html, htmlSanitizeWriter(buf, function(uri, isImage) {\n        return !/^unsafe/.test($$sanitizeUri(uri, isImage));\n      }));\n      return buf.join('');\n    };\n  }];\n}\n\nfunction sanitizeText(chars) {\n  var buf = [];\n  var writer = htmlSanitizeWriter(buf, angular.noop);\n  writer.chars(chars);\n  return buf.join('');\n}\n\n\n// Regular Expressions for parsing tags and attributes\nvar START_TAG_REGEXP =\n       /^<((?:[a-zA-Z])[\\w:-]*)((?:\\s+[\\w:-]+(?:\\s*=\\s*(?:(?:\"[^\"]*\")|(?:'[^']*')|[^>\\s]+))?)*)\\s*(\\/?)\\s*(>?)/,\n  END_TAG_REGEXP = /^<\\/\\s*([\\w:-]+)[^>]*>/,\n  ATTR_REGEXP = /([\\w:-]+)(?:\\s*=\\s*(?:(?:\"((?:[^\"])*)\")|(?:'((?:[^'])*)')|([^>\\s]+)))?/g,\n  BEGIN_TAG_REGEXP = /^</,\n  BEGING_END_TAGE_REGEXP = /^<\\//,\n  COMMENT_REGEXP = /<!--(.*?)-->/g,\n  DOCTYPE_REGEXP = /<!DOCTYPE([^>]*?)>/i,\n  CDATA_REGEXP = /<!\\[CDATA\\[(.*?)]]>/g,\n  SURROGATE_PAIR_REGEXP = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]/g,\n  // Match everything outside of normal chars and \" (quote character)\n  NON_ALPHANUMERIC_REGEXP = /([^\\#-~| |!])/g;\n\n\n// Good source of info about elements and attributes\n// http://dev.w3.org/html5/spec/Overview.html#semantics\n// http://simon.html5.org/html-elements\n\n// Safe Void Elements - HTML5\n// http://dev.w3.org/html5/spec/Overview.html#void-elements\nvar voidElements = makeMap(\"area,br,col,hr,img,wbr\");\n\n// Elements that you can, intentionally, leave open (and which close themselves)\n// http://dev.w3.org/html5/spec/Overview.html#optional-tags\nvar optionalEndTagBlockElements = makeMap(\"colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr\"),\n    optionalEndTagInlineElements = makeMap(\"rp,rt\"),\n    optionalEndTagElements = angular.extend({},\n                                            optionalEndTagInlineElements,\n                                            optionalEndTagBlockElements);\n\n// Safe Block Elements - HTML5\nvar blockElements = angular.extend({}, optionalEndTagBlockElements, makeMap(\"address,article,\" +\n        \"aside,blockquote,caption,center,del,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,\" +\n        \"h6,header,hgroup,hr,ins,map,menu,nav,ol,pre,script,section,table,ul\"));\n\n// Inline Elements - HTML5\nvar inlineElements = angular.extend({}, optionalEndTagInlineElements, makeMap(\"a,abbr,acronym,b,\" +\n        \"bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,q,ruby,rp,rt,s,\" +\n        \"samp,small,span,strike,strong,sub,sup,time,tt,u,var\"));\n\n// SVG Elements\n// https://wiki.whatwg.org/wiki/Sanitization_rules#svg_Elements\nvar svgElements = makeMap(\"animate,animateColor,animateMotion,animateTransform,circle,defs,\" +\n        \"desc,ellipse,font-face,font-face-name,font-face-src,g,glyph,hkern,image,linearGradient,\" +\n        \"line,marker,metadata,missing-glyph,mpath,path,polygon,polyline,radialGradient,rect,set,\" +\n        \"stop,svg,switch,text,title,tspan,use\");\n\n// Special Elements (can contain anything)\nvar specialElements = makeMap(\"script,style\");\n\nvar validElements = angular.extend({},\n                                   voidElements,\n                                   blockElements,\n                                   inlineElements,\n                                   optionalEndTagElements,\n                                   svgElements);\n\n//Attributes that have href and hence need to be sanitized\nvar uriAttrs = makeMap(\"background,cite,href,longdesc,src,usemap,xlink:href\");\n\nvar htmlAttrs = makeMap('abbr,align,alt,axis,bgcolor,border,cellpadding,cellspacing,class,clear,' +\n    'color,cols,colspan,compact,coords,dir,face,headers,height,hreflang,hspace,' +\n    'ismap,lang,language,nohref,nowrap,rel,rev,rows,rowspan,rules,' +\n    'scope,scrolling,shape,size,span,start,summary,target,title,type,' +\n    'valign,value,vspace,width');\n\n// SVG attributes (without \"id\" and \"name\" attributes)\n// https://wiki.whatwg.org/wiki/Sanitization_rules#svg_Attributes\nvar svgAttrs = makeMap('accent-height,accumulate,additive,alphabetic,arabic-form,ascent,' +\n    'attributeName,attributeType,baseProfile,bbox,begin,by,calcMode,cap-height,class,color,' +\n    'color-rendering,content,cx,cy,d,dx,dy,descent,display,dur,end,fill,fill-rule,font-family,' +\n    'font-size,font-stretch,font-style,font-variant,font-weight,from,fx,fy,g1,g2,glyph-name,' +\n    'gradientUnits,hanging,height,horiz-adv-x,horiz-origin-x,ideographic,k,keyPoints,' +\n    'keySplines,keyTimes,lang,marker-end,marker-mid,marker-start,markerHeight,markerUnits,' +\n    'markerWidth,mathematical,max,min,offset,opacity,orient,origin,overline-position,' +\n    'overline-thickness,panose-1,path,pathLength,points,preserveAspectRatio,r,refX,refY,' +\n    'repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,rotate,rx,ry,slope,stemh,' +\n    'stemv,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,stroke,' +\n    'stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,' +\n    'stroke-opacity,stroke-width,systemLanguage,target,text-anchor,to,transform,type,u1,u2,' +\n    'underline-position,underline-thickness,unicode,unicode-range,units-per-em,values,version,' +\n    'viewBox,visibility,width,widths,x,x-height,x1,x2,xlink:actuate,xlink:arcrole,xlink:role,' +\n    'xlink:show,xlink:title,xlink:type,xml:base,xml:lang,xml:space,xmlns,xmlns:xlink,y,y1,y2,' +\n    'zoomAndPan');\n\nvar validAttrs = angular.extend({},\n                                uriAttrs,\n                                svgAttrs,\n                                htmlAttrs);\n\nfunction makeMap(str) {\n  var obj = {}, items = str.split(','), i;\n  for (i = 0; i < items.length; i++) obj[items[i]] = true;\n  return obj;\n}\n\n\n/**\n * @example\n * htmlParser(htmlString, {\n *     start: function(tag, attrs, unary) {},\n *     end: function(tag) {},\n *     chars: function(text) {},\n *     comment: function(text) {}\n * });\n *\n * @param {string} html string\n * @param {object} handler\n */\nfunction htmlParser(html, handler) {\n  if (typeof html !== 'string') {\n    if (html === null || typeof html === 'undefined') {\n      html = '';\n    } else {\n      html = '' + html;\n    }\n  }\n  var index, chars, match, stack = [], last = html, text;\n  stack.last = function() { return stack[ stack.length - 1 ]; };\n\n  while (html) {\n    text = '';\n    chars = true;\n\n    // Make sure we're not in a script or style element\n    if (!stack.last() || !specialElements[ stack.last() ]) {\n\n      // Comment\n      if (html.indexOf(\"<!--\") === 0) {\n        // comments containing -- are not allowed unless they terminate the comment\n        index = html.indexOf(\"--\", 4);\n\n        if (index >= 0 && html.lastIndexOf(\"-->\", index) === index) {\n          if (handler.comment) handler.comment(html.substring(4, index));\n          html = html.substring(index + 3);\n          chars = false;\n        }\n      // DOCTYPE\n      } else if (DOCTYPE_REGEXP.test(html)) {\n        match = html.match(DOCTYPE_REGEXP);\n\n        if (match) {\n          html = html.replace(match[0], '');\n          chars = false;\n        }\n      // end tag\n      } else if (BEGING_END_TAGE_REGEXP.test(html)) {\n        match = html.match(END_TAG_REGEXP);\n\n        if (match) {\n          html = html.substring(match[0].length);\n          match[0].replace(END_TAG_REGEXP, parseEndTag);\n          chars = false;\n        }\n\n      // start tag\n      } else if (BEGIN_TAG_REGEXP.test(html)) {\n        match = html.match(START_TAG_REGEXP);\n\n        if (match) {\n          // We only have a valid start-tag if there is a '>'.\n          if (match[4]) {\n            html = html.substring(match[0].length);\n            match[0].replace(START_TAG_REGEXP, parseStartTag);\n          }\n          chars = false;\n        } else {\n          // no ending tag found --- this piece should be encoded as an entity.\n          text += '<';\n          html = html.substring(1);\n        }\n      }\n\n      if (chars) {\n        index = html.indexOf(\"<\");\n\n        text += index < 0 ? html : html.substring(0, index);\n        html = index < 0 ? \"\" : html.substring(index);\n\n        if (handler.chars) handler.chars(decodeEntities(text));\n      }\n\n    } else {\n      html = html.replace(new RegExp(\"(.*)<\\\\s*\\\\/\\\\s*\" + stack.last() + \"[^>]*>\", 'i'),\n        function(all, text) {\n          text = text.replace(COMMENT_REGEXP, \"$1\").replace(CDATA_REGEXP, \"$1\");\n\n          if (handler.chars) handler.chars(decodeEntities(text));\n\n          return \"\";\n      });\n\n      parseEndTag(\"\", stack.last());\n    }\n\n    if (html == last) {\n      throw $sanitizeMinErr('badparse', \"The sanitizer was unable to parse the following block \" +\n                                        \"of html: {0}\", html);\n    }\n    last = html;\n  }\n\n  // Clean up any remaining tags\n  parseEndTag();\n\n  function parseStartTag(tag, tagName, rest, unary) {\n    tagName = angular.lowercase(tagName);\n    if (blockElements[ tagName ]) {\n      while (stack.last() && inlineElements[ stack.last() ]) {\n        parseEndTag(\"\", stack.last());\n      }\n    }\n\n    if (optionalEndTagElements[ tagName ] && stack.last() == tagName) {\n      parseEndTag(\"\", tagName);\n    }\n\n    unary = voidElements[ tagName ] || !!unary;\n\n    if (!unary)\n      stack.push(tagName);\n\n    var attrs = {};\n\n    rest.replace(ATTR_REGEXP,\n      function(match, name, doubleQuotedValue, singleQuotedValue, unquotedValue) {\n        var value = doubleQuotedValue\n          || singleQuotedValue\n          || unquotedValue\n          || '';\n\n        attrs[name] = decodeEntities(value);\n    });\n    if (handler.start) handler.start(tagName, attrs, unary);\n  }\n\n  function parseEndTag(tag, tagName) {\n    var pos = 0, i;\n    tagName = angular.lowercase(tagName);\n    if (tagName)\n      // Find the closest opened tag of the same type\n      for (pos = stack.length - 1; pos >= 0; pos--)\n        if (stack[ pos ] == tagName)\n          break;\n\n    if (pos >= 0) {\n      // Close all the open elements, up the stack\n      for (i = stack.length - 1; i >= pos; i--)\n        if (handler.end) handler.end(stack[ i ]);\n\n      // Remove the open elements from the stack\n      stack.length = pos;\n    }\n  }\n}\n\nvar hiddenPre=document.createElement(\"pre\");\nvar spaceRe = /^(\\s*)([\\s\\S]*?)(\\s*)$/;\n/**\n * decodes all entities into regular string\n * @param value\n * @returns {string} A string with decoded entities.\n */\nfunction decodeEntities(value) {\n  if (!value) { return ''; }\n\n  // Note: IE8 does not preserve spaces at the start/end of innerHTML\n  // so we must capture them and reattach them afterward\n  var parts = spaceRe.exec(value);\n  var spaceBefore = parts[1];\n  var spaceAfter = parts[3];\n  var content = parts[2];\n  if (content) {\n    hiddenPre.innerHTML=content.replace(/</g,\"&lt;\");\n    // innerText depends on styling as it doesn't display hidden elements.\n    // Therefore, it's better to use textContent not to cause unnecessary\n    // reflows. However, IE<9 don't support textContent so the innerText\n    // fallback is necessary.\n    content = 'textContent' in hiddenPre ?\n      hiddenPre.textContent : hiddenPre.innerText;\n  }\n  return spaceBefore + content + spaceAfter;\n}\n\n/**\n * Escapes all potentially dangerous characters, so that the\n * resulting string can be safely inserted into attribute or\n * element text.\n * @param value\n * @returns {string} escaped text\n */\nfunction encodeEntities(value) {\n  return value.\n    replace(/&/g, '&amp;').\n    replace(SURROGATE_PAIR_REGEXP, function(value) {\n      var hi = value.charCodeAt(0);\n      var low = value.charCodeAt(1);\n      return '&#' + (((hi - 0xD800) * 0x400) + (low - 0xDC00) + 0x10000) + ';';\n    }).\n    replace(NON_ALPHANUMERIC_REGEXP, function(value) {\n      return '&#' + value.charCodeAt(0) + ';';\n    }).\n    replace(/</g, '&lt;').\n    replace(/>/g, '&gt;');\n}\n\n/**\n * create an HTML/XML writer which writes to buffer\n * @param {Array} buf use buf.jain('') to get out sanitized html string\n * @returns {object} in the form of {\n *     start: function(tag, attrs, unary) {},\n *     end: function(tag) {},\n *     chars: function(text) {},\n *     comment: function(text) {}\n * }\n */\nfunction htmlSanitizeWriter(buf, uriValidator) {\n  var ignore = false;\n  var out = angular.bind(buf, buf.push);\n  return {\n    start: function(tag, attrs, unary) {\n      tag = angular.lowercase(tag);\n      if (!ignore && specialElements[tag]) {\n        ignore = tag;\n      }\n      if (!ignore && validElements[tag] === true) {\n        out('<');\n        out(tag);\n        angular.forEach(attrs, function(value, key) {\n          var lkey=angular.lowercase(key);\n          var isImage = (tag === 'img' && lkey === 'src') || (lkey === 'background');\n          if (validAttrs[lkey] === true &&\n            (uriAttrs[lkey] !== true || uriValidator(value, isImage))) {\n            out(' ');\n            out(key);\n            out('=\"');\n            out(encodeEntities(value));\n            out('\"');\n          }\n        });\n        out(unary ? '/>' : '>');\n      }\n    },\n    end: function(tag) {\n        tag = angular.lowercase(tag);\n        if (!ignore && validElements[tag] === true) {\n          out('</');\n          out(tag);\n          out('>');\n        }\n        if (tag == ignore) {\n          ignore = false;\n        }\n      },\n    chars: function(chars) {\n        if (!ignore) {\n          out(encodeEntities(chars));\n        }\n      }\n  };\n}\n\n\n// define ngSanitize module and register $sanitize service\nangular.module('ngSanitize', []).provider('$sanitize', $SanitizeProvider);\n\n/* global sanitizeText: false */\n\n/**\n * @ngdoc filter\n * @name linky\n * @kind function\n *\n * @description\n * Finds links in text input and turns them into html links. Supports http/https/ftp/mailto and\n * plain email address links.\n *\n * Requires the {@link ngSanitize `ngSanitize`} module to be installed.\n *\n * @param {string} text Input text.\n * @param {string} target Window (_blank|_self|_parent|_top) or named frame to open links in.\n * @returns {string} Html-linkified text.\n *\n * @usage\n   <span ng-bind-html=\"linky_expression | linky\"></span>\n *\n * @example\n   <example module=\"linkyExample\" deps=\"angular-sanitize.js\">\n     <file name=\"index.html\">\n       <script>\n         angular.module('linkyExample', ['ngSanitize'])\n           .controller('ExampleController', ['$scope', function($scope) {\n             $scope.snippet =\n               'Pretty text with some links:\\n'+\n               'http://angularjs.org/,\\n'+\n               'mailto:us@somewhere.org,\\n'+\n               'another@somewhere.org,\\n'+\n               'and one more: ftp://127.0.0.1/.';\n             $scope.snippetWithTarget = 'http://angularjs.org/';\n           }]);\n       </script>\n       <div ng-controller=\"ExampleController\">\n       Snippet: <textarea ng-model=\"snippet\" cols=\"60\" rows=\"3\"></textarea>\n       <table>\n         <tr>\n           <td>Filter</td>\n           <td>Source</td>\n           <td>Rendered</td>\n         </tr>\n         <tr id=\"linky-filter\">\n           <td>linky filter</td>\n           <td>\n             <pre>&lt;div ng-bind-html=\"snippet | linky\"&gt;<br>&lt;/div&gt;</pre>\n           </td>\n           <td>\n             <div ng-bind-html=\"snippet | linky\"></div>\n           </td>\n         </tr>\n         <tr id=\"linky-target\">\n          <td>linky target</td>\n          <td>\n            <pre>&lt;div ng-bind-html=\"snippetWithTarget | linky:'_blank'\"&gt;<br>&lt;/div&gt;</pre>\n          </td>\n          <td>\n            <div ng-bind-html=\"snippetWithTarget | linky:'_blank'\"></div>\n          </td>\n         </tr>\n         <tr id=\"escaped-html\">\n           <td>no filter</td>\n           <td><pre>&lt;div ng-bind=\"snippet\"&gt;<br>&lt;/div&gt;</pre></td>\n           <td><div ng-bind=\"snippet\"></div></td>\n         </tr>\n       </table>\n     </file>\n     <file name=\"protractor.js\" type=\"protractor\">\n       it('should linkify the snippet with urls', function() {\n         expect(element(by.id('linky-filter')).element(by.binding('snippet | linky')).getText()).\n             toBe('Pretty text with some links: http://angularjs.org/, us@somewhere.org, ' +\n                  'another@somewhere.org, and one more: ftp://127.0.0.1/.');\n         expect(element.all(by.css('#linky-filter a')).count()).toEqual(4);\n       });\n\n       it('should not linkify snippet without the linky filter', function() {\n         expect(element(by.id('escaped-html')).element(by.binding('snippet')).getText()).\n             toBe('Pretty text with some links: http://angularjs.org/, mailto:us@somewhere.org, ' +\n                  'another@somewhere.org, and one more: ftp://127.0.0.1/.');\n         expect(element.all(by.css('#escaped-html a')).count()).toEqual(0);\n       });\n\n       it('should update', function() {\n         element(by.model('snippet')).clear();\n         element(by.model('snippet')).sendKeys('new http://link.');\n         expect(element(by.id('linky-filter')).element(by.binding('snippet | linky')).getText()).\n             toBe('new http://link.');\n         expect(element.all(by.css('#linky-filter a')).count()).toEqual(1);\n         expect(element(by.id('escaped-html')).element(by.binding('snippet')).getText())\n             .toBe('new http://link.');\n       });\n\n       it('should work with the target property', function() {\n        expect(element(by.id('linky-target')).\n            element(by.binding(\"snippetWithTarget | linky:'_blank'\")).getText()).\n            toBe('http://angularjs.org/');\n        expect(element(by.css('#linky-target a')).getAttribute('target')).toEqual('_blank');\n       });\n     </file>\n   </example>\n */\nangular.module('ngSanitize').filter('linky', ['$sanitize', function($sanitize) {\n  var LINKY_URL_REGEXP =\n        /((ftp|https?):\\/\\/|(www\\.)|(mailto:)?[A-Za-z0-9._%+-]+@)\\S*[^\\s.;,(){}<>\"”’]/,\n      MAILTO_REGEXP = /^mailto:/;\n\n  return function(text, target) {\n    if (!text) return text;\n    var match;\n    var raw = text;\n    var html = [];\n    var url;\n    var i;\n    while ((match = raw.match(LINKY_URL_REGEXP))) {\n      // We can not end in these as they are sometimes found at the end of the sentence\n      url = match[0];\n      // if we did not match ftp/http/www/mailto then assume mailto\n      if (!match[2] && !match[4]) {\n        url = (match[3] ? 'http://' : 'mailto:') + url;\n      }\n      i = match.index;\n      addText(raw.substr(0, i));\n      addLink(url, match[0].replace(MAILTO_REGEXP, ''));\n      raw = raw.substring(i + match[0].length);\n    }\n    addText(raw);\n    return $sanitize(html.join(''));\n\n    function addText(text) {\n      if (!text) {\n        return;\n      }\n      html.push(sanitizeText(text));\n    }\n\n    function addLink(url, text) {\n      html.push('<a ');\n      if (angular.isDefined(target)) {\n        html.push('target=\"',\n                  target,\n                  '\" ');\n      }\n      html.push('href=\"',\n                url.replace(/\"/g, '&quot;'),\n                '\">');\n      addText(text);\n      html.push('</a>');\n    }\n  };\n}]);\n\n\n})(window, window.angular);"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/tree.js",
    "content": "(function() {\n  'use strict';\n\n  var app = angular.module('treeApp', ['ui.tree', 'ui.tree-filter', 'ui.highlight', 'checklist-model'])\n    .config(function($interpolateProvider, $httpProvider, uiTreeFilterSettingsProvider) {\n      $interpolateProvider.startSymbol('{[{').endSymbol('}]}');\n      uiTreeFilterSettingsProvider.descendantCollection = \"__children\";\n      $httpProvider.interceptors.push(function($q, $injector) {\n        return {\n          'responseError': function(response) {\n            var configToRepeat,\n              failedRequestConfig,\n              retryDeferred,\n              $http;\n\n            if (response.config.IS_RETRY) {\n              return $q.reject(response);\n            }\n\n            if (response.status === 401) {\n              failedRequestConfig = response.config;\n              retryDeferred = $q.defer();\n              $http = $injector.get('$http');\n              configToRepeat = angular.copy(failedRequestConfig);\n              configToRepeat.IS_RETRY = true;\n\n              callServer('ping', [], function(json) {\n                $http(configToRepeat)\n                  .then(function(newResponse) {\n                    delete newResponse.config.IS_RETRY;\n                    retryDeferred.resolve(newResponse);\n                  })\n                  .catch(function() {\n                    retryDeferred.reject(response);\n                  });\n              });\n\n              return retryDeferred.promise;\n            } else {\n              return $q.reject(response);\n            }\n          }\n        };\n      });\n    });\n\n  /**\n   * A factory which keeps routes to manage topics.\n   *\n   * @class Topic\n   */\n  app.factory('TopicsFactory', function($http) {\n    return {\n      getTopics: function(language, articleNumber) {\n        return $http({\n          method: \"GET\",\n          url: Routing.generate(\"newscoop_newscoop_topics_tree\"),\n          params: {\n            _code: language,\n            _articleNumber: articleNumber\n          }\n        });\n      },\n      getLanguages: function() {\n        return $http.get(Routing.generate(\"newscoop_newscoop_language_getlanguages\"));\n      },\n      isAttached: function(id) {\n        return $http.get(Routing.generate(\"newscoop_newscoop_topics_isattached\", {\n          id: id\n        }));\n      },\n      deleteTopic: function(id) {\n        return $http.post(Routing.generate(\"newscoop_newscoop_topics_delete\", {\n          id: id\n        }));\n      },\n      moveTopic: function(id, params) {\n        return $http({\n          method: \"POST\",\n          url: Routing.generate(\"newscoop_newscoop_topics_move\", {\n            id: id\n          }),\n          data: params\n        });\n      },\n      deleteTopicTranslation: function(id) {\n        return $http.post(Routing.generate(\"newscoop_newscoop_topics_deletetranslation\", {\n          id: id\n        }));\n      },\n      addTopic: function(formData, language) {\n        return $http({\n          method: \"POST\",\n          url: Routing.generate(\"newscoop_newscoop_topics_add\"),\n          headers: {\n            'Content-Type': 'application/x-www-form-urlencoded'\n          },\n          data: $.param(formData),\n          params: {\n            _code: language\n          }\n        });\n      },\n      attachTopics: function(formData, articleNumber, language) {\n        return $http({\n          method: \"POST\",\n          url: Routing.generate(\"newscoop_newscoop_topics_attachtopic\"),\n          headers: {\n            'Content-Type': 'application/x-www-form-urlencoded'\n          },\n          data: $.param(formData),\n          params: {\n            _articleNumber: articleNumber,\n            _languageCode: language\n          }\n        });\n      },\n      updateTopic: function(formData, id, language) {\n        return $http({\n          method: \"POST\",\n          url: Routing.generate(\"newscoop_newscoop_topics_edit\", {\n            id: id\n          }),\n          headers: {\n            'Content-Type': 'application/x-www-form-urlencoded'\n          },\n          data: $.param(formData),\n          params: {\n            _code: language\n          }\n        });\n      },\n      addTranslation: function(formData, id) {\n        return $http({\n          method: \"POST\",\n          url: Routing.generate(\"newscoop_newscoop_topics_addtranslation\", {\n            id: id\n          }),\n          headers: {\n            'Content-Type': 'application/x-www-form-urlencoded'\n          },\n          data: $.param(formData)\n        });\n      },\n    };\n  });\n\n  /**\n   * AngularJS controller for managing various actions on the topics, e.g.\n   * changing topic's position in tree, adding new topics, adding new translations etc.\n   *\n   * @class treeController\n   */\n  app.controller('treeController', function(TopicsFactory, $filter, $location, $anchorScroll) {\n      var self = this;\n\n      self.treeOptions = {\n        dropped: function(event) {\n          var closestNode = event.dest.nodesScope.$$childHead;\n          var draggedNode = event.dest.nodesScope.$$childTail;\n          var params = {};\n\n          if (draggedNode.$first) {\n            params['first'] = true;\n            if (event.dest.nodesScope.$parent.$modelValue) {\n              params['parent'] = event.dest.nodesScope.$parent.$modelValue.id;\n            } else {\n              params['order'] = [];\n              angular.forEach(event.dest.nodesScope.$modelValue, function(value, key) {\n                params['order'].push(parseInt(value.id));\n              });\n\n              params['order'] = params['order'].join();\n              if (draggedNode.node.id != draggedNode.node.root) {\n                params['asRoot'] = true;\n              }\n            }\n          }\n\n          if (draggedNode.$last) {\n            params['last'] = true;\n            if (event.dest.nodesScope.$parent.$modelValue) {\n              params['parent'] = event.dest.nodesScope.$parent.$modelValue.id;\n            } else {\n              params['order'] = [];\n              angular.forEach(event.dest.nodesScope.$modelValue, function(value, key) {\n                params['order'].push(parseInt(value.id));\n              });\n\n              params['order'] = params['order'].join();\n              if (draggedNode.node.id != draggedNode.node.root) {\n                params['asRoot'] = true;\n              }\n            }\n          }\n\n          if (draggedNode.$middle) {\n            params['middle'] = true;\n            if (event.dest.nodesScope.$parent.$modelValue) {\n              var draggedIndex = draggedNode.$index;\n              if (closestNode.$$nextSibling.node !== undefined) {\n                params['parent'] = closestNode.$$nextSibling.node.id;\n              }\n            } else {\n\n              params['order'] = [];\n              angular.forEach(event.dest.nodesScope.$modelValue, function(value, key) {\n                params['order'].push(parseInt(value.id));\n              });\n\n              params['order'] = params['order'].join();\n              if (draggedNode.node.id != draggedNode.node.root) {\n                params['asRoot'] = true;\n              }\n            }\n          }\n\n          moveTopic(event.source.nodeScope.$modelValue.id, params);\n        }\n      };\n      self.treeFilter = $filter('uiTreeFilter');\n      self.availableFields = ['content', 'title'];\n      self.supportedFields = ['content', 'title'];\n      self.deleteDisabled = false;\n      var languageCode = null;\n      var languageSelected = null;\n\n      /**\n       * Go to topic function.\n       * This function sets pattern to the current\n       * topic title. Thus, the whole subtree will be found\n       * using the search field, not needed topics won't be shown.\n       * It also scrolls down to the found topic.\n       *\n       * @param {String}  title topic title\n       * @param {Integer} id    topic id\n       */\n      self.goToTopic = function(title, id) {\n        $anchorScroll.yOffset = 300;\n        var newHash = 'node' + id;\n        self.pattern = title;\n        if ($location.hash() !== newHash) {\n          $location.path('scroll')\n          $location.hash(newHash);\n        } else {\n          $anchorScroll();\n        }\n      }\n\n      /**\n       * Loads all topics. It loads all the topics in tree structure\n       *\n       * @method loadTopicsTree\n       * @param {String} current locale\n       */\n      self.loadTopicsTree = function(currentLocale) {\n        TopicsFactory.getTopics().success(function(data) {\n          self.data = data.tree;\n          setLanguageLabels(self.data, currentLocale);\n        }).error(function(data, status) {\n          flashMessage(data.message, 'error');\n        });\n      }\n\n      TopicsFactory.getLanguages().success(function(data) {\n        self.languageList = data.languages;\n      }).error(function(data, status) {\n        flashMessage(data.message, 'error');\n      });\n\n      /**\n       * Moves topic. It moves topic to given position in a tree.\n       *\n       * @method moveTopic\n       * @param draggedNode {string} topic's id which will be moved\n       * @param params {array} parameters e.g. order, parent etc.\n       */\n      var moveTopic = function(draggedNode, params) {\n        TopicsFactory.moveTopic(draggedNode, params).success(function(response) {\n          if (response.status) {\n            flashMessage(response.message);\n            updateTopicAfterMove(self.data, draggedNode, response.topic);\n          } else {\n            flashMessage(response.message, 'error');\n          }\n        }).error(function(response, status) {\n          flashMessage(response.message, 'error');\n        });\n      }\n\n      self.selectedTopics = {\n        ids: []\n      };\n\n      /**\n       * Get topics assigned to the article\n       *\n       * @param  {Array} array array of all the topics\n       */\n      var getSelectedTopics = function(array) {\n        if (array) {\n          for (var i = 0; i < array.length; i++) {\n            if (array[i].attached) {\n              self.selectedTopics.ids.push(array[i].id);\n            }\n\n            getSelectedTopics(array[i].__children);\n          }\n        }\n      };\n\n      /**\n       * Removes topic from the array of the topics\n       *\n       * @param  {array} children Array of children\n       * @param  {integer} id     Topic id\n       * @return {boolean}        true or false\n       */\n      var updateList = function(children, id) {\n        if (children) {\n          for (var i = 0; i < children.length; i++) {\n            if (children[i].id == id) {\n              children.splice(children.indexOf(children[i]), 1);\n\n              return true;\n            }\n\n            var found = updateList(children[i].__children, id);\n            if (found) {\n              return true;\n            }\n          }\n        }\n      };\n\n      /**\n       * Updates topic after it has been moved.\n       *\n       * @param  {array} children   Array of children\n       * @param  {integer} id       Topic id\n       * @param  {object}  response Object with data returned from the server\n       * @return {boolean}          True when topic found\n       */\n      var updateTopicAfterMove = function(children, id, response) {\n        if (children) {\n          for (var i = 0; i < children.length; i++) {\n            if (children[i].id == id) {\n              children[i].root = response.root;\n              children[i].parentId = response.parentId;\n\n              return children[i];\n            }\n\n            var found = updateTopicAfterMove(children[i].__children, id, response);\n            if (found) {\n              return found;\n            }\n          }\n        }\n      };\n\n      /**\n       * Removes topic from the array of the topics\n       *\n       * @param  {array} children Array of children\n       * @param  {integer} id     Topic id\n       * @return {boolean}        True when topic removed from array\n       */\n      var updateTranslations = function(children, id) {\n        if (children) {\n          for (var i = 0; i < children.length; i++) {\n            angular.forEach(children[i].translations, function(value, key) {\n              if (value.id == id) {\n                children[i].translations.splice(children[i].translations.indexOf(value), 1);\n                self.setLanguageLabel(children[i]);\n\n                return true;\n              }\n            });\n\n            var found = updateTranslations(children[i].__children, id);\n            if (found) {\n              return true;\n            }\n          }\n        }\n      };\n\n      var setLanguageLabels = function (children, currentLocale) {\n        if (children) {\n          for (var i = 0; i < children.length; i++) {\n            self.setLanguageLabel(children[i], currentLocale);\n\n            setLanguageLabels(children[i].__children, currentLocale);\n          }\n        }\n      };\n\n      /**\n       * Removes topic's translation from the array of the topics' translations\n       *\n       * @param  {array} children   Array of children\n       * @param  {integer} id       Topic id\n       * @param  {object}  response Object with data returned from the server\n       * @return {boolean}          True when topic removed from array\n       */\n      var updateAfterAddTranslation = function(children, id, response) {\n        if (children) {\n          for (var i = 0; i < children.length; i++) {\n            if (children[i].id == id) {\n              children[i].translations.push({\n                id: response.topicTranslationId,\n                locale: response.topicTranslationLocale,\n                field: \"title\",\n                content: response.topicTranslationTitle\n              });\n              return children[i];\n            }\n\n            var found = updateAfterAddTranslation(children[i].__children, id, response);\n            if (found) {\n              return found;\n            }\n          }\n        }\n      };\n\n      /**\n       * Updates topics' array. It adds a new topic to the array\n       * of the topics when it is added.\n       *\n       * @param  {array} children   Array of children\n       * @param  {integer} id       Topic id\n       * @param  {object}  response Object with data returned from the server\n       * @return {object}           Returns added topic object\n       */\n      var updateAfterAddSubtopic = function(children, id, response) {\n        if (children) {\n          for (var i = 0; i < children.length; i++) {\n            if (children[i].id == id) {\n              if (children[i]['__children'].length == 0) {\n                children[i]['__children'].push({\n                  id: response.topicId,\n                  locale: response.locale,\n                  title: response.topicTitle,\n                  __children: []\n                });\n                children[i]['__children'][0]['translations'] = [{\n                  locale: response.locale,\n                  field: \"title\",\n                  content: response.topicTitle\n                }];\n\n                self.setLanguageLabel(children[i]['__children'][0], response.locale);\n              } else {\n                var topic = {\n                  id: response.topicId,\n                  locale: response.locale,\n                  title: response.topicTitle,\n                  __children: [],\n                  translations: [{\n                    locale: response.locale,\n                    field: \"title\",\n                    content: response.topicTitle\n                  }]\n                };\n\n                self.setLanguageLabel(topic, response.locale);\n                children[i]['__children'].push(topic);\n              }\n\n              return children[i];\n            }\n\n            var found = updateAfterAddSubtopic(children[i].__children, id, response);\n            if (found) {\n              return found;\n            }\n          }\n        }\n      };\n\n      var removeTopicId = null;\n\n      /**\n       * Displays alert to inform user if he/she is sure to remove this topic.\n       * It also checks if topic is assigned to any article and returns number\n       * of articles its assigned to.\n       *\n       * @method removeTopicAlert\n       * @param topicId {integer} topic's id which will be removed\n       */\n      self.removeTopicAlert = function(topicId) {\n        removeTopicId = topicId;\n        var attachedInfo = $('#removeAlert').find('.attached-info');\n        attachedInfo.hide();\n        attachedInfo.html('');\n        TopicsFactory.isAttached(removeTopicId).success(function(response) {\n          if (response.status) {\n            attachedInfo.show();\n            attachedInfo.append(response.message);\n          }\n        }).error(function(response, status) {\n          flashMessage(response.message, 'error');\n          $('#removeAlert').modal('hide');\n        });\n      }\n\n      /**\n       * Removes topic by given id and closes the alert popup\n       *\n       * @method removeTopic\n       */\n      self.removeTopic = function() {\n        self.deleteDisabled = true;\n        TopicsFactory.deleteTopic(removeTopicId).success(function(response) {\n          if (response.status) {\n            $('#removeAlert').modal('hide');\n            flashMessage(response.message);\n            updateList(self.data, removeTopicId);\n          } else {\n            flashMessage(response.message, 'error');\n          }\n          self.deleteDisabled = false;\n        }).error(function(response, status) {\n          self.deleteDisabled = false;\n          flashMessage(response.message, 'error');\n        });\n      };\n\n      /**\n       * Removes topic's translation by given translation id.\n       *\n       * @method removeTranslation\n       */\n      self.removeTranslation = function(translationId) {\n        TopicsFactory.deleteTopicTranslation(translationId).success(function(response) {\n          if (response.status) {\n            flashMessage(response.message);\n            updateTranslations(self.data, translationId);\n          } else {\n            flashMessage(response.message, 'error');\n          }\n        }).error(function(response, status) {\n          flashMessage(response.message, 'error');\n        });\n      }\n\n      /**\n       * Expand or collapse all elements in the tree\n       *\n       * @method expandCollapseAll\n       */\n      self.expandCollapseAll = function() {\n          if (self.showExpanded) {\n            self.showExpanded = false;\n          } else {\n            self.showExpanded = true;\n          }\n      };\n\n      /**\n       * Hides/shows more options of the tree node\n       *\n       * @method startEditing\n       * @parent scope {object} currently selected element in a tree\n       */\n      self.startEditing = function(scope) {\n        if (scope.editing) {\n          scope.editing = false;\n        } else {\n          scope.editing = true;\n          scope.addingSubtopic = false;\n        }\n      };\n\n      /**\n       * Hides/shows options to add new subtopic\n       *\n       * @method showNewSubtopicBox\n       * @parent scope {object} currently selected element in a tree\n       */\n      self.showNewSubtopicBox = function(scope) {\n        if (scope.addingSubtopic) {\n          scope.addingSubtopic = false;\n        } else {\n          scope.addingSubtopic = true;\n          scope.editing = false;\n        }\n      };\n\n      /**\n       * Hide button, hiding extra options like e.g. adding new substopic etc.\n       *\n       * @method hideExtraOptions\n       * @parent scope {object} currently selected element in a tree\n       */\n      self.hideExtraOptions = function(scope) {\n        scope.editing = false;\n        scope.addingSubtopic = false;\n      }\n\n      self.formData = {};\n\n      /**\n       * Adds a new topic\n       *\n       * @method addNewTopic\n       * @param scope {Object} Current topic scope\n       */\n      self.addNewTopic = function(scope) {\n        var addFormData = {\n          topic: {},\n          _csrf_token: token\n        }\n\n        var topic;\n        if (scope !== undefined) {\n          topic = scope.$parent.$nodeScope.$modelValue;\n        }\n\n        if (topic !== undefined) {\n          addFormData.topic[\"title\"] = topic.newChild[topic.id];\n          addFormData.topic[\"parent\"] = topic.id;\n          topic.newChild = {};\n        } else {\n          addFormData.topic[\"title\"] = self.formData.title;\n        }\n\n        TopicsFactory.addTopic(addFormData, languageCode).success(function(response) {\n          if (response.status) {\n            flashMessage(response.message);\n            if (topic == undefined) {\n              topic = {\n                id: response.topicId,\n                title: response.topicTitle,\n                root: response.topicId,\n                __children: [],\n                translations: [{\n                  content: response.topicTitle,\n                  locale: response.locale\n                }]\n              };\n\n              self.setLanguageLabel(topic, response.locale);\n              self.data.unshift(topic);\n\n            } else {\n              updateAfterAddSubtopic(self.data, topic.id, response);\n              scope.$parent.collapse();\n              self.hideExtraOptions(scope.$parent);\n            }\n            self.formData = null;\n          } else {\n            flashMessage(response.message, 'error');\n          }\n        }).error(function(response, status) {\n          flashMessage(response.message, 'error');\n        });\n      };\n\n      /**\n       * Attach topics to the articles. If attaching topics from AES, it also closes the iframe\n       * when the topic has been assigned successfully.\n       *\n       * @method attachTopics\n       * @param articleNumber {integer} article's number to which topic will be assigned\n       * @param languageCode {integer} article's language to which topic will be assigned\n       */\n      self.attachTopics = function(articleNumber, languageCode) {\n        var topicsIds = self.selectedTopics;\n        TopicsFactory.attachTopics(topicsIds, articleNumber, languageCode).success(function(response) {\n          if (response.status) {\n            flashMessage(response.message);\n            setTimeout(function() {\n              window.parent.$.fancybox.close();\n            }, 1500);\n          } else {\n            flashMessage(response.message, 'error');\n          }\n        }).error(function(response, status) {\n          flashMessage(response.message, 'error');\n        });\n      }\n\n      self.editFormData = {};\n\n      /**\n       * Updates topic's name\n       *\n       * @method updateTopic\n       * @param node {object} topic object\n       */\n      self.updateTopic = function(node) {\n        var postData = {\n          topic: {\n            title: node.title,\n          },\n          _csrf_token: token\n        };\n\n        TopicsFactory.updateTopic(postData, node.id, languageCode).success(function(response) {\n          if (response.status) {\n            flashMessage(response.message);\n            self.editFormData = null;\n          } else {\n            flashMessage(response.message, 'error');\n          }\n        }).error(function(response, status) {\n          flashMessage(response.message, 'error');\n        });\n      };\n\n      /**\n       * On language change in box when adding a new translation, it assigns selected\n       * language code to the variable so it can be used later elsewhere.\n       *\n       * @method onLanguageChange\n       * @param language {object} language object\n       */\n      self.onLanguageChange = function(language) {\n        if (language !== undefined) {\n          languageCode = language.code;\n          languageSelected = languageCode;\n        }\n      }\n\n      /**\n       * It loads the topics' tree by given language. If selected language is english,\n       * it will load tree with topics by english language.\n       *\n       * @method onFilterLanguageChange\n       * @param langCode {string} language's code\n       * @param currentLocale {string} current locale\n       * @param articleNumber {integer} article's number\n       */\n      self.onFilterLanguageChange = function(langCode, currentLocale, articleNumber) {\n        if (langCode === undefined) {\n          languageCode = currentLocale;\n        } else {\n          languageCode = langCode;\n        }\n        self.languageCode = languageCode;\n        TopicsFactory.getTopics(langCode, articleNumber).success(function(data) {\n          self.data = data.tree;\n          self.pattern = undefined;\n          getSelectedTopics(data.tree);\n          setLanguageLabels(self.data, currentLocale);\n        }).error(function(data, status) {\n          flashMessage(data.message, 'error');\n        });\n      }\n\n      /**\n       * It adds a new translation for given topic object.\n       *\n       * @method addTranslation\n       * @param topicId {integer} topic object\n       */\n      self.addTranslation = function(topic) {\n        var postData = {\n          topicTranslation: {\n            title: topic.newTranslation[topic.id],\n            locale: languageSelected\n          },\n          _csrf_token: token\n        };\n\n        topic.newTranslation = {};\n        TopicsFactory.addTranslation(postData, topic.id).success(function(response) {\n          if (response.status) {\n            flashMessage(response.message);\n            self.languageCode = null;\n            languageCode = null;\n            updateAfterAddTranslation(self.data, topic.id, response);\n            self.setLanguageLabel(topic, languageCode);\n          } else {\n            flashMessage(response.message, 'error');\n          }\n        }).error(function(response, status) {\n          flashMessage(response.message, 'error');\n        });\n      };\n\n      /**\n       * It sets a proper key: \"activeLabel\" or \"fallback\" in translation\n       * object, based on the current locale and selected filter language\n       *\n       * @method setLanguageLabel\n       * @param node {Object} topic\n       * @param langCode {String} Current locale\n       */\n      self.setLanguageLabel = function(node, langCode) {\n        angular.forEach(node.translations, function(value, key) {\n          if (languageCode === value.locale) {\n            value.activeLabel = true;\n          }\n\n          if (!languageCode) {\n            if (value.locale === langCode) {\n              value.activeLabel = true;\n            }\n          }\n\n        });\n\n        // find element with activeLabel set to true\n        // if set to true, set fallback to false\n        // else to true\n        var setfallback = true;\n        var i;\n        angular.forEach(node.translations, function(value, key) {\n          if (value.activeLabel) {\n            setfallback = false;\n          }\n        });\n\n        for (i = 0; i < node.translations.length; i++) {\n          if (node.translations[i].activeLabel == undefined && setfallback) {\n            node.translations[i].fallback = true;\n          }\n        }\n\n        // if languageCode not in array\n        // choose first locale and set fallback\n        var inArray = false;\n        for (i = 0; i < node.translations.length; i++) {\n          if (angular.equals(node.translations[i].locale, languageCode)) {\n            inArray = true;\n          }\n        }\n\n        if (!inArray) {\n          // restore fallback fields\n          // first translation is always default, so  we unset fallback\n          // for all translations diffrent than default\n          for (i = 0; i < node.translations.length; i++) {\n            if (!angular.equals(node.translations[i].locale, languageCode) && i !== 0) {\n              node.translations[i].fallback = false;\n            }\n          }\n        }\n      };\n    })\n    /**\n     * Ad-hoc $sce trusting to be used with ng-bind-html\n     */\n    .filter('trust', function($sce) {\n      return function(val) {\n        return $sce.trustAsHtml(val);\n      };\n    });\n})();\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/js/ui-bootstrap-modal.js",
    "content": "/*\n * angular-ui-bootstrap\n * http://angular-ui.github.io/bootstrap/\n\n * Version: 0.12.1 - 2015-02-20\n * License: MIT\n */\nangular.module(\"ui.bootstrap\",[\"ui.bootstrap.tpls\",\"ui.bootstrap.modal\",\"ui.bootstrap.transition\"]),angular.module(\"ui.bootstrap.tpls\",[\"template/modal/backdrop.html\",\"template/modal/window.html\"]),angular.module(\"ui.bootstrap.modal\",[\"ui.bootstrap.transition\"]).factory(\"$$stackedMap\",function(){return{createNew:function(){var n=[];return{add:function(e,t){n.push({key:e,value:t})},get:function(e){for(var t=0;t<n.length;t++)if(e==n[t].key)return n[t]},keys:function(){for(var e=[],t=0;t<n.length;t++)e.push(n[t].key);return e},top:function(){return n[n.length-1]},remove:function(e){for(var t=-1,o=0;o<n.length;o++)if(e==n[o].key){t=o;break}return n.splice(t,1)[0]},removeTop:function(){return n.splice(n.length-1,1)[0]},length:function(){return n.length}}}}}).directive(\"modalBackdrop\",[\"$timeout\",function(n){return{restrict:\"EA\",replace:!0,templateUrl:\"template/modal/backdrop.html\",link:function(e,t,o){e.backdropClass=o.backdropClass||\"\",e.animate=!1,n(function(){e.animate=!0})}}}]).directive(\"modalWindow\",[\"$modalStack\",\"$timeout\",function(n,e){return{restrict:\"EA\",scope:{index:\"@\",animate:\"=\"},replace:!0,transclude:!0,templateUrl:function(n,e){return e.templateUrl||\"template/modal/window.html\"},link:function(t,o,a){o.addClass(a.windowClass||\"\"),t.size=a.size,e(function(){t.animate=!0,o[0].querySelectorAll(\"[autofocus]\").length||o[0].focus()}),t.close=function(e){var t=n.getTop();t&&t.value.backdrop&&\"static\"!=t.value.backdrop&&e.target===e.currentTarget&&(e.preventDefault(),e.stopPropagation(),n.dismiss(t.key,\"backdrop click\"))}}}}]).directive(\"modalTransclude\",function(){return{link:function(n,e,t,o,a){a(n.$parent,function(n){e.empty(),e.append(n)})}}}).factory(\"$modalStack\",[\"$transition\",\"$timeout\",\"$document\",\"$compile\",\"$rootScope\",\"$$stackedMap\",function(n,e,t,o,a,r){function i(){for(var n=-1,e=m.keys(),t=0;t<e.length;t++)m.get(e[t]).value.backdrop&&(n=t);return n}function l(n){var e=t.find(\"body\").eq(0),o=m.get(n).value;m.remove(n),s(o.modalDomEl,o.modalScope,300,function(){o.modalScope.$destroy(),e.toggleClass(p,m.length()>0),c()})}function c(){if(d&&-1==i()){var n=u;s(d,u,150,function(){n.$destroy(),n=null}),d=void 0,u=void 0}}function s(t,o,a,r){function i(){i.done||(i.done=!0,t.remove(),r&&r())}o.animate=!1;var l=n.transitionEndEventName;if(l){var c=e(i,a);t.bind(l,function(){e.cancel(c),i(),o.$apply()})}else e(i)}var d,u,p=\"modal-open\",m=r.createNew(),f={};return a.$watch(i,function(n){u&&(u.index=n)}),t.bind(\"keydown\",function(n){var e;27===n.which&&(e=m.top(),e&&e.value.keyboard&&(n.preventDefault(),a.$apply(function(){f.dismiss(e.key,\"escape key press\")})))}),f.open=function(n,e){m.add(n,{deferred:e.deferred,modalScope:e.scope,backdrop:e.backdrop,keyboard:e.keyboard});var r=t.find(\"body\").eq(0),l=i();if(l>=0&&!d){u=a.$new(!0),u.index=l;var c=angular.element(\"<div modal-backdrop></div>\");c.attr(\"backdrop-class\",e.backdropClass),d=o(c)(u),r.append(d)}var s=angular.element(\"<div modal-window></div>\");s.attr({\"template-url\":e.windowTemplateUrl,\"window-class\":e.windowClass,size:e.size,index:m.length()-1,animate:\"animate\"}).html(e.content);var f=o(s)(e.scope);m.top().value.modalDomEl=f,r.append(f),r.addClass(p)},f.close=function(n,e){var t=m.get(n);t&&(t.value.deferred.resolve(e),l(n))},f.dismiss=function(n,e){var t=m.get(n);t&&(t.value.deferred.reject(e),l(n))},f.dismissAll=function(n){for(var e=this.getTop();e;)this.dismiss(e.key,n),e=this.getTop()},f.getTop=function(){return m.top()},f}]).provider(\"$modal\",function(){var n={options:{backdrop:!0,keyboard:!0},$get:[\"$injector\",\"$rootScope\",\"$q\",\"$http\",\"$templateCache\",\"$controller\",\"$modalStack\",function(e,t,o,a,r,i,l){function c(n){return n.template?o.when(n.template):a.get(angular.isFunction(n.templateUrl)?n.templateUrl():n.templateUrl,{cache:r}).then(function(n){return n.data})}function s(n){var t=[];return angular.forEach(n,function(n){(angular.isFunction(n)||angular.isArray(n))&&t.push(o.when(e.invoke(n)))}),t}var d={};return d.open=function(e){var a=o.defer(),r=o.defer(),d={result:a.promise,opened:r.promise,close:function(n){l.close(d,n)},dismiss:function(n){l.dismiss(d,n)}};if(e=angular.extend({},n.options,e),e.resolve=e.resolve||{},!e.template&&!e.templateUrl)throw new Error(\"One of template or templateUrl options is required.\");var u=o.all([c(e)].concat(s(e.resolve)));return u.then(function(n){var o=(e.scope||t).$new();o.$close=d.close,o.$dismiss=d.dismiss;var r,c={},s=1;e.controller&&(c.$scope=o,c.$modalInstance=d,angular.forEach(e.resolve,function(e,t){c[t]=n[s++]}),r=i(e.controller,c),e.controllerAs&&(o[e.controllerAs]=r)),l.open(d,{scope:o,deferred:a,content:n[0],backdrop:e.backdrop,keyboard:e.keyboard,backdropClass:e.backdropClass,windowClass:e.windowClass,windowTemplateUrl:e.windowTemplateUrl,size:e.size})},function(n){a.reject(n)}),u.then(function(){r.resolve(!0)},function(){r.reject(!1)}),d},d}]};return n}),angular.module(\"ui.bootstrap.transition\",[]).factory(\"$transition\",[\"$q\",\"$timeout\",\"$rootScope\",function(n,e,t){function o(n){for(var e in n)if(void 0!==r.style[e])return n[e]}var a=function(o,r,i){i=i||{};var l=n.defer(),c=a[i.animation?\"animationEndEventName\":\"transitionEndEventName\"],s=function(){t.$apply(function(){o.unbind(c,s),l.resolve(o)})};return c&&o.bind(c,s),e(function(){angular.isString(r)?o.addClass(r):angular.isFunction(r)?r(o):angular.isObject(r)&&o.css(r),c||l.resolve(o)}),l.promise.cancel=function(){c&&o.unbind(c,s),l.reject(\"Transition cancelled\")},l.promise},r=document.createElement(\"trans\"),i={WebkitTransition:\"webkitTransitionEnd\",MozTransition:\"transitionend\",OTransition:\"oTransitionEnd\",transition:\"transitionend\"},l={WebkitTransition:\"webkitAnimationEnd\",MozTransition:\"animationend\",OTransition:\"oAnimationEnd\",transition:\"animationend\"};return a.transitionEndEventName=o(i),a.animationEndEventName=o(l),a}]),angular.module(\"template/modal/backdrop.html\",[]).run([\"$templateCache\",function(n){n.put(\"template/modal/backdrop.html\",'<div class=\"modal-backdrop fade {{ backdropClass }}\"\\n     ng-class=\"{in: animate}\"\\n     ng-style=\"{\\'z-index\\': 1040 + (index && 1 || 0) + index*10}\"\\n></div>\\n')}]),angular.module(\"template/modal/window.html\",[]).run([\"$templateCache\",function(n){n.put(\"template/modal/window.html\",'<div tabindex=\"-1\" role=\"dialog\" class=\"modal fade\" ng-class=\"{in: animate}\" ng-style=\"{\\'z-index\\': 1050 + index*10, display: \\'block\\'}\" ng-click=\"close($event)\">\\n    <div class=\"modal-dialog\" ng-class=\"{\\'modal-sm\\': size == \\'sm\\', \\'modal-lg\\': size == \\'lg\\'}\"><div class=\"modal-content\" modal-transclude></div></div>\\n</div>')}]);"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/views/modal-confirm.html",
    "content": "<div class=\"modal-header\">\n\t<h3 class=\"modal-title\">{[{ title }]}</h3>\n</div>\n<div class=\"modal-body\">\n\t{[{ text }]}\n</div>\n<div class=\"modal-footer\">\n\t<button class=\"btn btn-primary\" ng-click=\"ok()\">{[{ okText }]}</button>\n\t<button class=\"btn btn-default\" ng-click=\"cancel()\">{[{ cancelText }]}</button>\n</div>\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/views/modal-danger.html",
    "content": "<div class=\"modal-header\">\n\t<h3 class=\"modal-title\">{[{title}]}</h3>\n</div>\n\n<div class=\"modal-body\">\n\t<p>{[{text}]}</p>\n</div>\n\n<div class=\"modal-footer\">\n\t<button class=\"btn btn-danger\" ng-click=\"ok()\">{[{ okText }]}</button>\n\t<button class=\"btn btn-default\" ng-click=\"cancel()\">{[{ cancelText }]}</button>\n</div>"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/public/views/modal-login.html",
    "content": "<style>\n.modal-login {\n    background-color: #f2f2f2;\n    -webkit-border-radius: 6px;\n    -moz-border-radius: 6px;\n    -ms-border-radius: 6px;\n    -o-border-radius: 6px;\n    border-radius: 6px;\n}\n.modal-login .modal-body {\n    padding: 0;\n}\niframe {\n    border: none;\n    outline: none;\n }\n</style>\n<div class=\"modal-login\">\n    <div class=\"modal-body\">\n        <sf-iframe-login width=\"100%\" height=\"440px\"></sf-iframe-login>\n    </div>\n</div>"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.ar.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': 'ليس لون'\n'No such field': 'لا يوجد مثل هده الخانة'\n'Color saved': 'تم حفظ اللون'\n'Color not saved': 'لم يحفظ اللون'\n'Topic created': 'تم إنشاء الموضوع'\n'The topic name is already in use by another topic.': 'اسم الموضوع حالياً قيد الاستخدام من موضوع آخر.'\n'Complex Date': 'تاريخ معقد'\nvertices: القمم\n'There was a problem trying to execute the XML RPC function.': 'حدثت مشكلة أثناء تنفيذ اجراء XML RPC.'\n'The Campcaster server configuration is invalid.': 'تهيئة خادم كامبكاستر غير صالحة ـ'\n'Pan Map': 'خريطة الإنتقال'\n'Open large map': 'إفتح خريطة كبيرة'\n'No news available.': 'لا أخبار متوفرة.'\n'Edit Polygon': 'عدل مضلع '\n'Create Polygon': 'أنش مضلع'\n'Communication error: ': 'خطأ المواصلات:'\n'Cant fetch news from $1': 'غير قادر على الحصول على  أخبار من $1'\nLoading...: 'قيد التحميل'\nVersion: إصدار\nLicense: الترخيص\nHomepage: 'الصفحة الرئيسية'\n'Show original map': 'أظهر الخريطة الأصلية'\n'The uploaded archive does not contain an valid newscoop plugin.': 'لا يشمل الأرشيف المرفوع ملحق صالح لـنيوسكوب.'\nMap: الخريطة\nCenter: توسيط\nTitle: العنوان\n'Invalid security token.': 'الرمز الأمني غير صالح.'\n'Callback $1 is not callable.': 'إعادة النداء $1 غير قابلة للنداء'\n'Article translated to $4 ($5)': 'المقالة مترجمة الى $4 ($5)'\n'Article status changed from $1 to $2.': 'تم تغيير حالة المقال من $1 الى $2.'\n'Article deleted.': 'تم حذف المقال.'\n'Article created.': 'تم إنشاء المقال.'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': 'المقالة منسوخة على المقالة $4 (منشور $5، اصدار $6، قسم $7).'\n'Article URL': 'عنوان الرابط للمقال'\n'Article Number': 'رقم المقال'\n'Access denied.': 'الدخول مرفوض'\n'Publish with issue': 'إنشر مع العدد'\n'Article \"$1\" not processed': null\nunknown: 'غير معروف'\nSwitch: تبديل\nNumeric: رقمي\n'The uploaded file format is unsupported.': 'تنسيق الملف المرفوع غير مدعوم.'\n'The following fields are mandatory:': 'الخانات التالية ضرورية:'\n'Missing value for $1': 'قيمة مفقودة لـ $1'\n'Manage Plugins': 'إدارة ملحقات'\n'* Marked fields are mandatory.': 'الخانات التي تحمل العلامة النجمية ضرورية'\n'$1 is of type $2': '$1 من نوع  $2'\n'Invalid resize width/height.': 'إعادة تشكيل حجم العرض/الاتساع غير صالح.'\n'Image type $1 is not supported.': 'نوع الصورة $1 غير مدعوم'\n'The file uploaded is not an image.': 'ليس صورة الملف الذي تم رفعه'\n'Could not delete record from the database.': 'لم يحذف السجل من قاعدة البيانات.'\n'template path': 'مسار النماذج'\n'short names': 'أسماء قصيرة'\n'Unable to fetch image from remote server.': 'لم يحصل عليها الصورة من الخادم البعيد'\nLast: الأخير\nFirst: الأول\n'Single-line Text': 'نص بسطر واحد'\n'Multi-line Text with WYSIWYG': 'نص متعددة الأسطر بـ WYSIWYG'\n'URL $1 is invalid or is not an image.': 'عنوان الرابط $1 غير صحيح أو ليس صورة.'\n'URL $1 is not an image.': 'عنوان الرابط $1 ليس صورة.'\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: 'تم تحديث الموارد العامة.'\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: 'وفقاً للإعدادات الإفتراضية فإن جميع الموارد محية بواسطة جدار حماية، ولكن يمكنك إختيار موارد لجعلها متاحة للجميع.'\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: موثوق؟\n                redirect: null\n                publication: المنشور\n                actions: الاجراءات\n                actions_buttons:\n                    remove: إزالة\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: حفظ\n        PublicResources:\n            label:\n                routes: null\n                save: حفظ\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.az.yml",
    "content": "'No such article type': 'Belə məqalə növü yoxdur'\n'Multi-line Text': 'Çox zolaqlı Mətn'\n'Filter saved': 'Filter saxlandı'\n'Filter not saved': 'Filter saxlanmadı'\n'Not a color': Rəngsiz\n'No such field': 'Belə sahə yoxdur'\n'Color saved': 'Rəng saxlandı'\n'Color not saved': 'Rəng saxlanmadı'\n'Topic created': 'Mövzu yaradıldı'\n'The topic name is already in use by another topic.': 'Təklif edilən mövzu adı başqa mövzuda istifadə edilir.'\n'Complex Date': 'Əlavə Məlumatlı Tarix'\nvertices: zirvələr\n'There was a problem trying to execute the XML RPC function.': 'XML RPC əməliyyatının icrasında problem yarandı.'\n'The Campcaster server configuration is invalid.': 'Airtime server konfiqurasiyası səhvdir.'\n'Pan Map': 'Panoramik Xəritə'\n'Open large map': 'Böyük xəritəni aç'\n'No news available.': 'Hal-hazırda xəbər yoxdur.'\n'Edit Polygon': 'Çoxbucaqlını Dəyiş'\n'Create Polygon': 'Çoxbucaqlı Yarat'\n'Communication error: ': 'Ünsiyyət xətası:'\n'Cant fetch news from $1': 'Xəbər $1-dən(dan) endirilə bilmir'\nLoading...: Yüklənir...\nVersion: Versiya\nLicense: Lisenziya\nHomepage: 'Baş səhifə'\n'Show original map': 'Orijinal xəritəni göstər'\n'The uploaded archive does not contain an valid newscoop plugin.': 'Yüklənmiş arxivdə qüvvədə olan newscoop plaqini yoxdur.'\nMap: Xəritə\nCenter: Mərkəz\nTitle: Başlıq\n'Invalid security token.': 'Səhv təhlükəsizlik nişanı.'\n'Callback $1 is not callable.': '$1 istiqamətində geriyə zəng mümkün deyil.'\n'Article translated to $4 ($5)': 'Məqalə $4 ($5) dilinə tərcümə edildi'\n'Article status changed from $1 to $2.': 'Məqalə başlığı $1 variantından $2 variantına dəyişdirildi.'\n'Article deleted.': 'Məqalə silindi.'\n'Article created.': 'Məqalə yaradıldı.'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': 'Məqalə $4 Məqaləsinə köçürüldü (nəşr $5, maddə $6, bölmə $7).'\n'Article URL': 'Məqalə URL-i'\n'Article Number': 'Məqalə Nömrəsi'\n'Access denied.': 'Giriş qadağandır.'\n'Publish with issue': 'Maddə ilə nümayiş et'\n'Article \"$1\" not processed': null\nunknown: naməlum\nSwitch: Keç\nNumeric: Rəqəmsal\n'The uploaded file format is unsupported.': 'Yüklənmiş fayl növü dəstəklənmir.'\n'The following fields are mandatory:': 'Növbəti sahələr məcburidir:'\n'Missing value for $1': '$1 üçün dəyər çatmır'\n'Manage Plugins': 'Plaqinləri Quraşdır'\n'* Marked fields are mandatory.': '* ilə işarələnmiş sahələr məcburidir.'\n'$1 is of type $2': '$1 $2-nin növüdür'\n'Invalid resize width/height.': 'Enin/uzunun ölçüsünün dəyişilməsində səhv.'\n'Image type $1 is not supported.': '$1 şəkil növü dəstəklənmir.'\n'The file uploaded is not an image.': 'Yüklənmiş fayl şəkil deyil.'\n'Could not delete record from the database.': 'Yazı məlumat bazasından silinə bilmədi.'\n'template path': 'nümunənin istiqaməti'\n'short names': 'qısa adlar'\n'Unable to fetch image from remote server.': 'Şəkil serverdən endirilə bilmədi.'\nLast: Son\nFirst: İlk\n'Single-line Text': 'Bir sətirli Mətn'\n'Multi-line Text with WYSIWYG': 'WYSIWYG ilə çox sətirli Mətn'\n'URL $1 is invalid or is not an image.': '$1 URL-i səhvdir və ya şəkil deyil.'\n'URL $1 is not an image.': '$1 URL-i şəkil deyil.'\nclient:\n    added: 'Sifarişçi əlavə edildi'\n    notfound: 'Sifarişçi tapılmadı'\n    removed: 'Sifarişçi xaric edildi'\npublicresources:\n    updated: 'İctimai vəsait yeniləndi'\napi:\n    configure:\n        title: 'API - ictimai vəsaiti konfiqurasiya et'\n        title_content: 'API - ictimai vəsaiti konfiqurasiya et'\n        tabs:\n            resources: 'İctimai Vəsaitlər'\n            clients: Sifarişçilər\n        resources:\n            info: 'Mövcud halda bütün vəsaitlər qoruyucu divar tərəfindən qorunur, amma sən istədiyin vəsaitləri ictimailəşdirmək üçün seçə bilərsən.'\n            api_docs: null\n            add_button: 'Sifarişçi Əlavə Et'\n        clients:\n            table:\n                name: 'Sifarişçi adı'\n                id: 'Sifarişçi id-si'\n                secret: Sirr\n                trusted: 'İnanırsınız?'\n                redirect: 'Urisi Başqa Yerə Yönəlt'\n                publication: Nəşr\n                actions: Addımlar\n                actions_buttons:\n                    remove: 'Xaric Et'\n            actions:\n                remove:\n                    confirm: 'Bu sifarişçini xaric etmək istədiyinə əminsən?'\n        menu: API\n    form:\n        client:\n            label:\n                name: 'Sifarişçin üçün ad seç:'\n                publication: 'Sifarişçin üçün nəşr seç:'\n                redirectUris: 'Sifarişçin üçün yönü dəyişilmiş urisi seç:'\n                trusted: 'İnanırsınız?'\n                save: Saxla\n        PublicResources:\n            label:\n                routes: 'İctimailəşdirmək üçün vəsait seç:'\n                save: Saxla\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.be.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': 'Не зяўляецца колерам'\n'No such field': 'Няма такога поля'\n'Color saved': 'Колер захаваны'\n'Color not saved': 'Колер не захаваны'\n'Topic created': 'Тэма створаная'\n'The topic name is already in use by another topic.': 'Гэтае імя ўжо выкарыстоўваецца іншай тэмай.'\n'Complex Date': 'Складовая дата'\nvertices: вяршыні\n'There was a problem trying to execute the XML RPC function.': 'Памылка ў спробе выканання функцыі XML RPC.'\n'The Campcaster server configuration is invalid.': 'Няправільныя налады сервера Airtime.'\n'Pan Map': 'Панарамаванне Карты'\n'Open large map': 'Адкрыць у вялікім акне'\n'No news available.': 'Няма даступных навін.'\n'Edit Polygon': 'Рэдагаваць ламаную'\n'Create Polygon': 'Стварыць ламаную'\n'Communication error: ': 'Памылка сувязі:'\n'Cant fetch news from $1': 'Немагчыма атрымаць навіны з $1'\nLoading...: Пампуецца...\nVersion: Версія\nLicense: Ліцэнзія\nHomepage: Галоўная\n'Show original map': 'Паказаць азначаную карту'\n'The uploaded archive does not contain an valid newscoop plugin.': 'Загружаны архіў не змяшчае правільны плагін Newscoop.'\nMap: Карта\nCenter: Цэнтр\nTitle: Загаловак\n'Invalid security token.': 'Няправільны маркер бяспекі.'\n'Callback $1 is not callable.': 'Зваротнае тэлефанаванне $ 1 недаступнае'\n'Article translated to $4 ($5)': 'Артыкул перакладзены на $4 ($5)'\n'Article status changed from $1 to $2.': 'Статут артыкула зменены з $1 на $2.'\n'Article deleted.': 'Артыкул выдалены.'\n'Article created.': 'Артыкул створаны.'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': 'Артыкул скапіраваны ў артыкул Article  $ 4 (выданне $5, выпуск $6, рубрыка $7)'\n'Article URL': 'URL артыкула'\n'Article Number': 'Нумар артыкула'\n'Access denied.': 'Адмоўлена ў доступе.'\n'Publish with issue': 'Апублiкаваць выпуск'\n'Article \"$1\" not processed': null\nunknown: невядома\nSwitch: Пераключальнік\nNumeric: Лічбавы\n'The uploaded file format is unsupported.': 'Фармат файлу для загрузкі не падтрымліваецца сыстэмай.'\n'The following fields are mandatory:': 'Дадзеныя палі абавязковыя  для запаўненьня'\n'Missing value for $1': 'Прапушчанае значэньне пераменнай $1'\n'Manage Plugins': 'Кіраваць  прагінамі'\n'* Marked fields are mandatory.': '* Адзначаныя  палі абавязковыя  для запаўненьня'\n'$1 is of type $2': '$1 мае тып $2'\n'Invalid resize width/height.': 'Немагчыма зьмяніць даўжыню/шырыню.'\n'Image type $1 is not supported.': 'Тып графiчнага файла $1 не падтрымлiваецца.'\n'The file uploaded is not an image.': 'Загружаны файл ня ёсьць графiчны файл.'\n'Could not delete record from the database.': 'Не ўдалося выдаліць запiс з базы даных.'\n'template path': 'шлях да шаблёну'\n'short names': 'кароткiя iмёны '\n'Unable to fetch image from remote server.': 'Немагчыма '\nLast: Апошнi\nFirst: Першы\n'Single-line Text': Тэкст\n'Multi-line Text with WYSIWYG': 'Цела артыкула'\n'URL $1 is invalid or is not an image.': 'URL $1 няправільны цi не зьяўляецца графічным файлам.'\n'URL $1 is not an image.': 'URL $1 не зьяўляецца графIчным файлам.'\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: Выданьне\n                actions: Апэрацыi\n                actions_buttons:\n                    remove: Выдалiць\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: Захаваць\n        PublicResources:\n            label:\n                routes: null\n                save: Захаваць\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.bn.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': null\n'Open large map': null\n'No news available.': null\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': null\n'Cant fetch news from $1': null\nLoading...: null\nVersion: null\nLicense: null\nHomepage: null\n'Show original map': null\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: null\nCenter: null\nTitle: null\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': null\n'Article created.': null\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': 'বিষয় প্রকাশ'\n'Article \"$1\" not processed': null\nunknown: null\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': 'প্লাগইন ব্যবস্থাপন'\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': null\n'Could not delete record from the database.': null\n'template path': null\n'short names': null\n'Unable to fetch image from remote server.': null\nLast: null\nFirst: null\n'Single-line Text': null\n'Multi-line Text with WYSIWYG': null\n'URL $1 is invalid or is not an image.': null\n'URL $1 is not an image.': null\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: প্রকাশন\n                actions: null\n                actions_buttons:\n                    remove: null\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: null\n        PublicResources:\n            label:\n                routes: null\n                save: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.cs.yml",
    "content": "'No such article type': 'Tento typ článku nenalezen'\n'Multi-line Text': 'Několikařádkový text'\n'Filter saved': 'Filtr uložen'\n'Filter not saved': 'Filtr neuložen'\n'Not a color': 'To není barva'\n'No such field': 'Žádné takové pole'\n'Color saved': 'Barva uložena'\n'Color not saved': 'Barva neuložena'\n'Topic created': 'Námět vytvořen'\n'The topic name is already in use by another topic.': 'Název námětu je již užíván u jiného námětu.'\n'Complex Date': 'Komplexní datum'\nvertices: vrchol\n'There was a problem trying to execute the XML RPC function.': 'Vyskytl se problém při pokusu o provedení XML RPC funkce.'\n'The Campcaster server configuration is invalid.': 'Campcaster konfigurace serveru je neplatná.'\n'Pan Map': 'Pan Mapa'\n'Open large map': 'Otevřená velká mapa'\n'No news available.': 'Žádné novinky k dispozici.'\n'Edit Polygon': 'Upravit Polygon'\n'Create Polygon': 'Vytvořit Polygon'\n'Communication error: ': 'Komunikační eror:'\n'Cant fetch news from $1': 'Není možné získat zprávy z $1 '\nLoading...: 'Nahrává se...'\nVersion: Verze\nLicense: Licence\nHomepage: 'Domovská stránka'\n'Show original map': 'Ukázat původní rozdělení'\n'The uploaded archive does not contain an valid newscoop plugin.': 'Nahraný archiv neobsahuje platný plugin Newscoopu.'\nMap: Rozdělení\nCenter: Střed\nTitle: Název\n'Invalid security token.': 'Neplatný bezpečnostní symbol.'\n'Callback $1 is not callable.': 'Volání $1 není možné.'\n'Article translated to $4 ($5)': 'Článek přeložen do $4 ($5)'\n'Article status changed from $1 to $2.': 'Status článku změněn z $1 na $2.'\n'Article deleted.': 'Článek smazán.'\n'Article created.': 'Článek vytvořen.'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': 'Článek kopírován do článku $4 (publikace $5, vydání $6, sekce $7).'\n'Article URL': 'Článek URL'\n'Article Number': 'Číslo Článku'\n'Access denied.': 'Přístup byl odepřen.'\n'Publish with issue': 'Publikovat s vydáním'\n'Article \"$1\" not processed': null\nunknown: neznámý\nSwitch: Přepnout\nNumeric: Číselný\n'The uploaded file format is unsupported.': 'Formát nahraného souboru není podporován.'\n'The following fields are mandatory:': 'Následující pole jsou povinné:'\n'Missing value for $1': 'Chybí hodnota pro $1'\n'Manage Plugins': 'Spravovat Pluginy'\n'* Marked fields are mandatory.': '* Označená pole jsou povinná.'\n'$1 is of type $2': '$1 je typu $2'\n'Invalid resize width/height.': 'Neplatná změna velikosti šířka/výška.'\n'Image type $1 is not supported.': 'Typ obrázku $1 není podporován.'\n'The file uploaded is not an image.': 'Nahraný soubor není obrázek.'\n'Could not delete record from the database.': 'Nezdařilo se odstranit záznam z databáze.'\n'template path': 'cesta šablony'\n'short names': 'krátká jména'\n'Unable to fetch image from remote server.': 'Nezdařilo se načíst obrázek ze vzdáleného serveru.'\nLast: Poslední\nFirst: První\n'Single-line Text': 'Jednořádkový text'\n'Multi-line Text with WYSIWYG': 'Více řádkový text WYSIWYG'\n'URL $1 is invalid or is not an image.': 'URL $1 není platné, nebo se nejedná o obrázek.'\n'URL $1 is not an image.': 'URL $1 není obrázek'\nclient:\n    added: 'Klient byl přidán'\n    notfound: 'Klient nenalezen'\n    removed: 'Klient byl odstraněn'\npublicresources:\n    updated: 'Veřejné zdroje byly aktualizovány'\napi:\n    configure:\n        title: 'Konfigurace API - veřejné zdroje'\n        title_content: 'Konfigurace API - veřejné zdroje'\n        tabs:\n            resources: 'Veřejné zdroje'\n            clients: Klienti\n        resources:\n            info: 'Defoltně jsou všechny zdroje chráněné Firewall, ale můžete si vybrat zdroje, které zveřejníte.'\n            api_docs: null\n            add_button: 'Přidat klienta'\n        clients:\n            table:\n                name: 'Jméno klienta'\n                id: 'ID klienta'\n                secret: Tajný\n                trusted: 'Důvěryhodný?'\n                redirect: 'Přesměrovat Uris'\n                publication: Publikace\n                actions: Činnosti\n                actions_buttons:\n                    remove: Odstranit\n            actions:\n                remove:\n                    confirm: 'Určitě chcete odstranit tohoto klienta?'\n        menu: API\n    form:\n        client:\n            label:\n                name: 'Vyber jméno pro svého klienta:'\n                publication: 'Vyber publikaci pro svého klienta:'\n                redirectUris: 'Vyber přesměrování uris pro svého klienta:'\n                trusted: 'Důvěryhodný?'\n                save: Uložit\n        PublicResources:\n            label:\n                routes: 'Vyber zdroje pro zveřejnění:'\n                save: Uložit\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.da.yml",
    "content": "'No such article type': 'Artikel typen eksisterer ikke'\n'Multi-line Text': Tekstfelt\n'Filter saved': 'Filteret blev gemt'\n'Filter not saved': 'Filteret blev ikke gemt'\n'Not a color': 'Ikke en farve'\n'No such field': 'Feltet eksisterer ikke'\n'Color saved': 'Farven blev gemt'\n'Color not saved': 'Farven blev ikke gemt'\n'Topic created': 'Emne oprettet'\n'The topic name is already in use by another topic.': 'Navnet bruges af et andet emne.'\n'Complex Date': 'Kompleks dato'\nvertices: punkter\n'There was a problem trying to execute the XML RPC function.': 'XML RPC funktionen kunne ikke køre.'\n'The Campcaster server configuration is invalid.': 'Campcaster serverens opsætning er ugyldig.'\n'Pan Map': 'Træk kort'\n'Open large map': 'Åben stort kort'\n'No news available.': 'Ingen nyheder.'\n'Edit Polygon': 'Ret Polygon'\n'Create Polygon': 'Opret polygon'\n'Communication error: ': 'Kommunikationsfejl:'\n'Cant fetch news from $1': 'Kunne ikke hente nyheder fra $1'\nLoading...: Henter...\nVersion: Version\nLicense: Licens\nHomepage: Hjemmeside\n'Show original map': 'Vis originalt kort'\n'The uploaded archive does not contain an valid newscoop plugin.': 'Det uploadede arkiv indeholder ikke en gyldig newscoop plugin.'\nMap: Kort\nCenter: Centrér\nTitle: Titel\n'Invalid security token.': 'Ugyldig sikkerheds token.'\n'Callback $1 is not callable.': 'Callback $1 kan ikke kaldes.'\n'Article translated to $4 ($5)': 'Artikel oversat til $4 ($5)'\n'Article status changed from $1 to $2.': 'Artikel status ændret fra $1 til $2.'\n'Article deleted.': 'Artikel slettet.'\n'Article created.': 'Artikel oprettet.'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': 'Artikel kopieret til artikel $4 (publikation $5, udgivelse $6, sektion $7).'\n'Article URL': 'Artikel URL'\n'Article Number': 'Artikel nummer'\n'Access denied.': 'Adgang nægtet'\n'Publish with issue': 'Udgiv med udgivelsen'\n'Article \"$1\" not processed': null\nunknown: ukendt\nSwitch: Skift\nNumeric: Numerisk\n'The uploaded file format is unsupported.': 'Det uploadede filformat understøttes ikke.'\n'The following fields are mandatory:': 'Disse felter er obligatoriske:'\n'Missing value for $1': 'Manglende værdi for $1'\n'Manage Plugins': 'Administrer plugins'\n'* Marked fields are mandatory.': '* markerede felter er obligatoriske.'\n'$1 is of type $2': '$1 er type $2'\n'Invalid resize width/height.': 'Ugyldig højde/bredde'\n'Image type $1 is not supported.': 'Billeder af typen $1 understøttes ikke.'\n'The file uploaded is not an image.': 'Den uploadede fil er ikke et billede.'\n'Could not delete record from the database.': 'Posten kunne ikke slettes fra databasen.'\n'template path': 'skabelon sti'\n'short names': 'korte navne'\n'Unable to fetch image from remote server.': 'Billedet kunne ikke hentes fra serveren.'\nLast: Sidste\nFirst: Første\n'Single-line Text': 'Enkelt linje tekst'\n'Multi-line Text with WYSIWYG': 'Tekstfelt med WYSIWYG'\n'URL $1 is invalid or is not an image.': 'URL $1 er ugyldig eller er ikke et billede.'\n'URL $1 is not an image.': 'URL $1 er ikke et billede.'\nclient:\n    added: 'Klient tilføjet'\n    notfound: 'Klienten kunne ikke findes'\n    removed: 'Klient fjernet'\npublicresources:\n    updated: 'Offentlige ressourcer opdateret'\napi:\n    configure:\n        title: 'Indstil API - offentlige ressourcer'\n        title_content: 'Indstil API - offentlige ressourcer'\n        tabs:\n            resources: 'Offentlige ressourcer'\n            clients: Klienter\n        resources:\n            info: 'Som standard er alle resourcer beskyttet af firewall, men du kan vælge resourcer der skal være offentligt tilgængelige.'\n            api_docs: 'Fuld dokumentation for APIen kan findes på din server (det er offentligt)'\n            add_button: 'Tilføj klient'\n        clients:\n            table:\n                name: 'Klient navn'\n                id: 'Klient id'\n                secret: Hemmelighed\n                trusted: 'Betroet?'\n                redirect: 'URI''er til omdirigering'\n                publication: Publikation\n                actions: Handlinger\n                actions_buttons:\n                    remove: Fjern\n            actions:\n                remove:\n                    confirm: 'Vil du fjerne klienten?'\n        menu: API\n    form:\n        client:\n            label:\n                name: 'Klientens navn:'\n                publication: 'Klientens publikation:'\n                redirectUris: 'Klientens uri:'\n                trusted: 'Betroet?'\n                save: Gem\n        PublicResources:\n            label:\n                routes: 'Vælg ressourcer der skal gøres offentlige:'\n                save: Gem\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.de.yml",
    "content": "'No such article type': 'Artikeltyp nicht vorhanden'\n'Multi-line Text': 'Mehrzeiliger Text'\n'Filter saved': 'Filter gespeichert'\n'Filter not saved': 'Filter nicht gespeichert'\n'Not a color': 'Ist keine Farbe'\n'No such field': 'Feld existiert nicht'\n'Color saved': 'Farbe gespeichert'\n'Color not saved': 'Farbe nicht gespeichert'\n'Topic created': 'Thema angelegt. '\n'The topic name is already in use by another topic.': 'Der Themenname ist bereits in Verwendung. '\n'Complex Date': 'Komplexes Datum'\nvertices: Eckpunkte\n'There was a problem trying to execute the XML RPC function.': 'Es gab ein Problem beim Versuch die XML RPC Funktion auszuführen. '\n'The Campcaster server configuration is invalid.': 'Die Campcaster Server Konfiguration is ungültig.'\n'Pan Map': 'Karte schieben'\n'Open large map': 'Öffne große Karte'\n'No news available.': 'Keine Nachrichten verfügbar. '\n'Edit Polygon': 'Polygon bearbeiten.'\n'Create Polygon': 'Polygon erstellen'\n'Communication error: ': 'Übertragungsfehler:'\n'Cant fetch news from $1': 'Die Nachrichten von $1 konnten nicht abgerufen werden.'\nLoading...: Lade...\nVersion: Version\nLicense: Lizenz\nHomepage: Dashboard\n'Show original map': 'Ursprüngliche Karte anzeigen'\n'The uploaded archive does not contain an valid newscoop plugin.': 'Das hochgeladene Archiv enthält kein gültiges Newscoop Plugin.'\nMap: Karte\nCenter: Zentrieren\nTitle: Titel\n'Invalid security token.': 'Ungültiges Sicherheits-Token.'\n'Callback $1 is not callable.': 'Rückfrage $1 ist nicht abrufbar.'\n'Article translated to $4 ($5)': 'Artikel übersetzt nach $4 ($5).'\n'Article status changed from $1 to $2.': 'Artikelstatus von $1 nach $2 geändert.'\n'Article deleted.': 'Artikel gelöscht.'\n'Article created.': 'Artikel erstellt.'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': 'Artikel nach Artikel $4 (Publikation $5, Ausgabe $6, Rubrik $7) kopiert.'\n'Article URL': 'Artikel URL'\n'Article Number': Artikelnummer\n'Access denied.': 'Zugang verweigert'\n'Publish with issue': 'Mit Ausgabe veröffentlichen'\n'Article \"$1\" not processed': null\nunknown: unbekannt\nSwitch: Schalter\nNumeric: Numerisch\n'The uploaded file format is unsupported.': 'Das hochgeladene Dateiformat wird nicht unterstützt.'\n'The following fields are mandatory:': 'Die folgenden Felder sind Pflichtfelder:'\n'Missing value for $1': 'Fehlender Wert für $1'\n'Manage Plugins': 'Plugins verwalten'\n'* Marked fields are mandatory.': 'Markierte Felder sind Pflichtfelder.'\n'$1 is of type $2': '$1 ist vom Typ $2'\n'Invalid resize width/height.': 'Ungültige Änderung der Breite/Höhe.'\n'Image type $1 is not supported.': 'Bildtyp $1 wird nicht unterstützt.'\n'The file uploaded is not an image.': 'Die hochgeladene Datei ist keine Bilddatei.'\n'Could not delete record from the database.': 'Der Eintrag konnte nicht aus der Datenbank gelöscht werden.'\n'template path': Templatepfad\n'short names': Kurznamen\n'Unable to fetch image from remote server.': 'Das Bild konnte nicht vom Remote Server abgerufen werden.'\nLast: Letzte\nFirst: Erste\n'Single-line Text': Textzeile\n'Multi-line Text with WYSIWYG': 'Fließtext mit WYSIWYG '\n'URL $1 is invalid or is not an image.': 'URL $1 ist ungültig oder es ist kein Bild.'\n'URL $1 is not an image.': 'Unter URL $1 ist kein Bild verfügbar.'\nclient:\n    added: 'Kunde wurde hinzugefügt'\n    notfound: 'Kunde wurde nicht gefunden'\n    removed: 'Kunde wurde entfernt'\npublicresources:\n    updated: 'Öffentliche Ressourcen wurden aktualisiert'\napi:\n    configure:\n        title: 'Konfiguriere API - öffentliche Ressourcen'\n        title_content: 'Konfiguriere API - öffentliche Ressourcen'\n        tabs:\n            resources: 'Öffentliche Ressourcen'\n            clients: Kunden\n        resources:\n            info: 'Alle Ressourcen sind per Voreinstellung nicht öffentlich und durch eine Firewall geschützt. Sie können die Voreinstellung ändern und eine oder mehrere Ressourcen öffentlich zur Verfügung stellen.'\n            api_docs: 'Eine vollständige Dokumentation der API können Sie auf Ihrer Newscoop Instanz finden (sie ist öffentlich zugänglich)'\n            add_button: 'Kunden hinzufügen'\n        clients:\n            table:\n                name: 'Name des Kunden'\n                id: 'Kunden ID'\n                secret: Geheim\n                trusted: 'Vertrauenswürdig?'\n                redirect: 'Umleitungs URIs'\n                publication: Publikation\n                actions: Aktionen\n                actions_buttons:\n                    remove: Entferne\n            actions:\n                remove:\n                    confirm: 'Sind Sie sicher, dass Sie diesen Kunden entfernen wollen?'\n        menu: API\n    form:\n        client:\n            label:\n                name: 'Namen für Kunden auswählen:'\n                publication: 'Publikation für Kunden auswählen:'\n                redirectUris: 'Wählen Sie Umleitungs URIs für Ihren Kunden:'\n                trusted: 'Vertrauenswürdig?'\n                save: Speichern\n        PublicResources:\n            label:\n                routes: 'Wählen Sie Ressourcen aus, die Sie öffentlich machen wollen:'\n                save: Speichern\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.de_AT.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': 'Ist keine Farbe'\n'No such field': 'Feld existiert nicht'\n'Color saved': 'Farbe gespeichert'\n'Color not saved': 'Farbe nicht gespeichert'\n'Topic created': 'Thema angelegt. '\n'The topic name is already in use by another topic.': 'Der Themenname ist bereits in Verwendung. '\n'Complex Date': 'Komplexes Datum'\nvertices: Eckpunkte\n'There was a problem trying to execute the XML RPC function.': 'Es gab ein Problem beim Versuch die XML RPC Funktion auszuführen. '\n'The Campcaster server configuration is invalid.': 'Die Campcaster Server Konfiguration is ungültig.'\n'Pan Map': 'Karte schieben'\n'Open large map': 'Öffne große Karte'\n'No news available.': 'Keine Nachrichten verfügbar. '\n'Edit Polygon': 'Polygon bearbeiten.'\n'Create Polygon': 'Polygon erstellen'\n'Communication error: ': 'Übertragungsfehler:'\n'Cant fetch news from $1': 'Die Nachrichten von $1 konnten nicht abgerufen werden.'\nLoading...: Lade...\nVersion: Version\nLicense: Lizenz\nHomepage: Dashboard\n'Show original map': 'Ursprüngliche Karte anzeigen'\n'The uploaded archive does not contain an valid newscoop plugin.': 'Das hochgeladene Archiv enthält kein gültiges Newscoop Plugin.'\nMap: Karte\nCenter: Zentrieren\nTitle: Titel\n'Invalid security token.': 'Ungültiges Sicherheits-Token.'\n'Callback $1 is not callable.': 'Rückfrage $1 ist nicht abrufbar.'\n'Article translated to $4 ($5)': 'Artikel übersetzt nach $4 ($5).'\n'Article status changed from $1 to $2.': 'Artikelstatus von $1 nach $2 geändert.'\n'Article deleted.': 'Artikel gelöscht.'\n'Article created.': 'Artikel erstellt.'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': 'Artikel nach Artikel $4 (Publikation $5, Ausgabe $6, Rubrik $7) kopiert.'\n'Article URL': 'Artikel URL'\n'Article Number': Artikelnummer\n'Access denied.': 'Zugang verweigert'\n'Publish with issue': 'Mit Ausgabe veröffentlichen'\n'Article \"$1\" not processed': null\nunknown: unbekannt\nSwitch: Schalter\nNumeric: Numerisch\n'The uploaded file format is unsupported.': 'Das hochgeladene Dateiformat wird nicht unterstützt.'\n'The following fields are mandatory:': 'Die folgenden Felder sind Pflichtfelder:'\n'Missing value for $1': 'Fehlender Wert für $1'\n'Manage Plugins': 'Plugins verwalten'\n'* Marked fields are mandatory.': 'Markierte Felder sind Pflichtfelder.'\n'$1 is of type $2': '$1 ist vom Typ $2'\n'Invalid resize width/height.': 'Ungültige Änderung der Breite/Höhe.'\n'Image type $1 is not supported.': 'Bildtyp $1 wird nicht unterstützt.'\n'The file uploaded is not an image.': 'Die hochgeladene Datei ist keine Bilddatei.'\n'Could not delete record from the database.': 'Der Eintrag konnte nicht aus der Datenbank gelöscht werden.'\n'template path': Templatepfad\n'short names': Kurznamen\n'Unable to fetch image from remote server.': 'Das Bild konnte nicht vom Remote Server abgerufen werden.'\nLast: Letzte\nFirst: Erste\n'Single-line Text': Textzeile\n'Multi-line Text with WYSIWYG': 'Fließtext mit WYSIWYG '\n'URL $1 is invalid or is not an image.': 'URL $1 ist ungültig oder es ist kein Bild.'\n'URL $1 is not an image.': 'Unter URL $1 ist kein Bild verfügbar.'\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: Publikation\n                actions: Aktionen\n                actions_buttons:\n                    remove: Entferne\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: Speichern\n        PublicResources:\n            label:\n                routes: null\n                save: Speichern\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.el.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': 'Δεν αποτελεί χρώμα'\n'No such field': 'Δεν υφίσταται τέτοιο πεδίο'\n'Color saved': 'Το χρώμα αποθηκεύτηκε'\n'Color not saved': 'Το χρώμα δεν αποθηκεύτηκε'\n'Topic created': 'Το θέμα αποθηκεύτηκε'\n'The topic name is already in use by another topic.': 'Το όνομα του θέματος χρησιμοποιείται ήδη από άλλο θέμα.'\n'Complex Date': 'Σύνθετη Ημερομηνία'\nvertices: κορυφές\n'There was a problem trying to execute the XML RPC function.': 'Παρουσιάστηκε πρόβλημα κατά την εκτέλεση της λειτουργίας XML RPC.'\n'The Campcaster server configuration is invalid.': 'Η διαμόρφωση του διακομιστή Campcaster είναι άκυρη.'\n'Pan Map': 'Πανοραμικός Χάρτης'\n'Open large map': 'Προβολή μεγαλύτερου χάρτη'\n'No news available.': 'Δεν υπάρχουν διαθέσιμα νέα.'\n'Edit Polygon': 'Επεξεργασία Polygon'\n'Create Polygon': 'Δημιουργία Polygon'\n'Communication error: ': 'Σφάλμα επικοινωνίας:'\n'Cant fetch news from $1': 'Η λήψη νέων από $1 είναι αδύνατη'\nLoading...: Φόρτωση...\nVersion: Εκδοχή\nLicense: Άδεια\nHomepage: 'Αρχική σελίδα'\n'Show original map': 'Εμφάνιση αρχικού χάρτη'\n'The uploaded archive does not contain an valid newscoop plugin.': 'Το ανεβασμένο αρχείο δεν περιέχει έγκυρο πρόσθετο του newscoop.'\nMap: Χάρτης\nCenter: Κέντρο\nTitle: Τίτλος\n'Invalid security token.': 'Μη έγκυρο τεκμήριο ασφαλείας.'\n'Callback $1 is not callable.': 'Η επανάκληση $1 δεν είναι δυνατή.'\n'Article translated to $4 ($5)': 'Το άρθρο μεταφράστηκε σε $4 ($5)'\n'Article status changed from $1 to $2.': 'Η κατάσταση του άρθρου άλλαξε από $1 σε $2.'\n'Article deleted.': 'Το άρθρο διαγράφτηκε.'\n'Article created.': 'Το άρθρο δημιουργήθηκε.'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': 'Το άρθρο αντιγράφτηκε στο Άρθρο $4 (δημοσίευση $5, τεύχος $6, ενότητα $7).'\n'Article URL': 'URL Άρθρου '\n'Article Number': 'Αριθμός Άρθρου'\n'Access denied.': 'Άρνηση πρόσβασης.'\n'Publish with issue': 'Δημοσίευση με τεύχος'\n'Article \"$1\" not processed': null\nunknown: άγνωστο\nSwitch: Εναλλαγή\nNumeric: Αριθμητικός\n'The uploaded file format is unsupported.': 'Η μορφή του αρχείου που ανέβηκε δεν υποστηρίζεται.'\n'The following fields are mandatory:': 'Τα παρακάτω πεδία είναι υποχρεωτικά:'\n'Missing value for $1': 'Λείπει αξία για $1'\n'Manage Plugins': 'Διαχείριση Προσθέτων'\n'* Marked fields are mandatory.': 'Τα πεδία που επισημάνθηκαν * είναι υποχρεωτικά.'\n'$1 is of type $2': '$1 είναι τύπου $2'\n'Invalid resize width/height.': 'Μη έγκυρη αλλαγή πλάτους/ύψους.'\n'Image type $1 is not supported.': 'Ο τύπος εικόνας $1 δεν υποστηρίζεται.'\n'The file uploaded is not an image.': 'Το αρχείο που ανέβηκε δεν αποτελεί εικόνα.'\n'Could not delete record from the database.': 'Δεν ήταν δυνατή η διαγραφή της εγγραφής από τη βάση δεδομένων.'\n'template path': 'διαδρομή προτύπου'\n'short names': 'σύντομα ονόματα'\n'Unable to fetch image from remote server.': 'Η λήψη εικόνας από τον απομακρυσμένο διακομιστή είναι αδύνατη.'\nLast: Τελευταίο\nFirst: Πρώτο\n'Single-line Text': 'Κείμενο σε μία γραμμή'\n'Multi-line Text with WYSIWYG': 'Κείμενο πολλαπλών γραμμών με WYSIWYG'\n'URL $1 is invalid or is not an image.': 'Είτε το URL $1 δεν είναι έγκυρο ή δεν είναι εικόνα.'\n'URL $1 is not an image.': 'Το URL $1 δεν είναι εικόνα. '\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: Δημοσίευση\n                actions: Ενέργειες\n                actions_buttons:\n                    remove: Αφαίρεση\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: Αποθήκευση\n        PublicResources:\n            label:\n                routes: null\n                save: Αποθήκευση\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.en.yml",
    "content": "'No such article type': 'No such article type'\n'Multi-line Text': 'Multi-line Text'\n'Filter saved': 'Filter saved'\n'Filter not saved': 'Filter not saved'\n'Not a color': 'Not a color'\n'No such field': 'No such field'\n'Color saved': 'Color saved'\n'Color not saved': 'Color not saved'\n'Topic created': 'Topic created'\n'The topic name is already in use by another topic.': 'The topic name is already in use by another topic.'\n'Complex Date': 'Complex Date'\nvertices: vertices\n'There was a problem trying to execute the XML RPC function.': 'There was a problem trying to execute the XML RPC function.'\n'The Campcaster server configuration is invalid.': 'The Campcaster server configuration is invalid.'\n'Pan Map': 'Pan Map'\n'Open large map': 'Open large map'\n'No news available.': 'No news available.'\n'Edit Polygon': 'Edit Polygon'\n'Create Polygon': 'Create Polygon'\n'Communication error: ': 'Communication error: '\n'Cant fetch news from $1': 'Cant fetch news from $1'\nLoading...: Loading...\nVersion: Version\nLicense: License\nHomepage: Homepage\n'Show original map': 'Show original map'\n'The uploaded archive does not contain an valid newscoop plugin.': 'The uploaded archive does not contain an valid newscoop plugin.'\nMap: Map\nCenter: Center\nTitle: Title\n'Invalid security token.': 'Invalid security token.'\n'Callback $1 is not callable.': 'Callback $1 is not callable.'\n'Article translated to $4 ($5)': 'Article translated to $4 ($5)'\n'Article status changed from $1 to $2.': 'Article status changed from $1 to $2.'\n'Article deleted.': 'Article deleted.'\n'Article created.': 'Article created.'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': 'Article copied to Article $4 (publication $5, issue $6, section $7).'\n'Article URL': 'Article URL'\n'Article Number': 'Article Number'\n'Access denied.': 'Access denied.'\n'Publish with issue': 'Publish with issue'\n'Article \"$1\" not processed': 'Article \"$1\" not processed'\nunknown: unknown\nSwitch: Switch\nNumeric: Numeric\n'The uploaded file format is unsupported.': 'The uploaded file format is unsupported.'\n'The following fields are mandatory:': 'The following fields are mandatory:'\n'Missing value for $1': 'Missing value for $1'\n'Manage Plugins': 'Manage Plugins'\n'* Marked fields are mandatory.': '* Marked fields are mandatory.'\n'$1 is of type $2': '$1 is of type $2'\n'Invalid resize width/height.': 'Invalid resize width/height.'\n'Image type $1 is not supported.': 'Image type $1 is not supported.'\n'The file uploaded is not an image.': 'The file uploaded is not an image.'\n'Could not delete record from the database.': 'Could not delete record from the database.'\n'template path': 'template path'\n'short names': 'short names'\n'Unable to fetch image from remote server.': 'Unable to fetch image from remote server.'\nLast: Last\nFirst: First\n'Single-line Text': 'Single-line Text'\n'Multi-line Text with WYSIWYG': 'Multi-line Text with WYSIWYG'\n'URL $1 is invalid or is not an image.': 'URL $1 is invalid or is not an image.'\n'URL $1 is not an image.': 'URL $1 is not an image.'\nclient:\n  added: 'Client was added'\n  notfound: 'Client not found'\n  removed: 'Client was removed'\npublicresources:\n  updated: 'Public resources was updated'\napi:\n  configure:\n    title: 'Configure API - public resources'\n    title_content: 'Configure API - public resources'\n    tabs:\n      resources: 'Public Resources'\n      clients: 'Clients'\n    resources:\n      info: 'By default all resources are protected by firewall, but you can choose resources to make them public for everyone.'\n      api_docs: \"A full documentation of the API can be found on your instance (and it's public)\"\n      add_button: 'Add Client'\n    clients:\n      table:\n        name: 'Client name'\n        id: 'Client id'\n        secret: 'Secret'\n        trusted: 'Trusted?'\n        redirect: 'Redirect Uris'\n        publication: 'Publication'\n        actions: 'Actions'\n        actions_buttons:\n          remove: 'Remove'\n      actions:\n        remove:\n          confirm: 'You sure that you want remove this client?'\n    menu: 'API'\n  form:\n    client:\n      label:\n        name: 'Choose name for your client:'\n        publication: 'Choose publication for your client:'\n        redirectUris: 'Choose redirect uris for your client:'\n        trusted: 'Trusted?'\n        save: 'Save'\n    PublicResources:\n      label:\n        routes: 'Choose resources to make public:'\n        save: 'Save'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.en_GB.yml",
    "content": "'No such article type': 'No such article type'\n'Multi-line Text': 'Multi-line Text'\n'Filter saved': 'Filter saved'\n'Filter not saved': 'Filter not saved'\n'Not a color': 'Not a colour'\n'No such field': 'No such field'\n'Color saved': 'Colour saved'\n'Color not saved': 'Colour not saved'\n'Topic created': 'Topic created'\n'The topic name is already in use by another topic.': 'The topic name is already in use by another topic.'\n'Complex Date': 'Complex Date'\nvertices: vertices\n'There was a problem trying to execute the XML RPC function.': 'There was a problem trying to execute the XML RPC function.'\n'The Campcaster server configuration is invalid.': 'The Campcaster server configuration is invalid.'\n'Pan Map': 'Pan Map'\n'Open large map': 'Open large map'\n'No news available.': 'No news available.'\n'Edit Polygon': 'Edit Polygon'\n'Create Polygon': 'Create Polygon'\n'Communication error: ': 'Communication error: '\n'Cant fetch news from $1': 'Can not fetch news from $1'\nLoading...: Loading...\nVersion: Version\nLicense: License\nHomepage: Homepage\n'Show original map': 'Show original map'\n'The uploaded archive does not contain an valid newscoop plugin.': 'The uploaded archive does not contain a valid Newscoop plugin.'\nMap: Map\nCenter: Center\nTitle: Title\n'Invalid security token.': 'Invalid security token.'\n'Callback $1 is not callable.': 'Callback $1 is not callable.'\n'Article translated to $4 ($5)': 'Article translated to $4 ($5)'\n'Article status changed from $1 to $2.': 'Article status changed from $1 to $2.'\n'Article deleted.': 'Article deleted.'\n'Article created.': 'Article created.'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': 'Article copied to Article $4 (publication $5, issue $6, section $7).'\n'Article URL': 'Article URL'\n'Article Number': 'Article Number'\n'Access denied.': 'Access denied.'\n'Publish with issue': 'Publish with issue'\n'Article \"$1\" not processed': 'Article \"$1\" was not processed'\nunknown: unknown\nSwitch: Switch\nNumeric: Numeric\n'The uploaded file format is unsupported.': 'The uploaded file format is unsupported.'\n'The following fields are mandatory:': 'The following fields are mandatory:'\n'Missing value for $1': 'Missing value for $1'\n'Manage Plugins': 'Manage Plugins'\n'* Marked fields are mandatory.': '* Marked fields are mandatory.'\n'$1 is of type $2': '$1 is of type $2'\n'Invalid resize width/height.': 'Invalid resize width/height.'\n'Image type $1 is not supported.': 'Image type $1 is not supported.'\n'The file uploaded is not an image.': 'The file uploaded is not an image.'\n'Could not delete record from the database.': 'Could not delete record from the database.'\n'template path': 'template path'\n'short names': 'short names'\n'Unable to fetch image from remote server.': 'Unable to fetch image from remote server.'\nLast: Last\nFirst: First\n'Single-line Text': 'Single-line Text'\n'Multi-line Text with WYSIWYG': 'Multi-line Text with WYSIWYG'\n'URL $1 is invalid or is not an image.': 'URL $1 is invalid or is not an image.'\n'URL $1 is not an image.': 'URL $1 is not an image.'\nclient:\n    added: 'Client was added'\n    notfound: 'Client not found'\n    removed: 'Client was removed'\npublicresources:\n    updated: 'Public resources were updated'\napi:\n    configure:\n        title: 'Configure API - public resources'\n        title_content: 'Configure API - public resources'\n        tabs:\n            resources: 'Public Resources'\n            clients: Clients\n        resources:\n            info: 'By default all resources are protected by a firewall, but you can choose resources to make them public for everyone.'\n            api_docs: 'Full documentation of the API can be found on your instance (and it''s public)'\n            add_button: 'Add Client'\n        clients:\n            table:\n                name: 'Client name'\n                id: 'Client ID'\n                secret: Secret\n                trusted: 'Trusted?'\n                redirect: 'Redirect URIs'\n                publication: Publication\n                actions: Actions\n                actions_buttons:\n                    remove: Remove\n            actions:\n                remove:\n                    confirm: 'Are you sure that you want to remove this client?'\n        menu: API\n    form:\n        client:\n            label:\n                name: 'Choose name for your client:'\n                publication: 'Choose publication for your client:'\n                redirectUris: 'Choose redirect URIs for your client:'\n                trusted: 'Trusted?'\n                save: Save\n        PublicResources:\n            label:\n                routes: 'Choose resources to make public:'\n                save: Save\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.es.yml",
    "content": "'No such article type': 'No existe ese tipo de archivo'\n'Multi-line Text': 'Texto multilínea'\n'Filter saved': 'Filtro guardado'\n'Filter not saved': 'Filtro no guardado'\n'Not a color': 'No es un color'\n'No such field': 'No existe ese campo'\n'Color saved': 'Color guardado'\n'Color not saved': 'No pudo guardarse el color'\n'Topic created': 'Tópico creado'\n'The topic name is already in use by another topic.': 'Este nombre de tópico ya está en uso.'\n'Complex Date': 'Fecha compleja'\nvertices: vertices\n'There was a problem trying to execute the XML RPC function.': 'Surgió un problema al tratar de ejecutar la función XML RPC.'\n'The Campcaster server configuration is invalid.': 'La configuración del servidor Campcaster es inválida.'\n'Pan Map': 'Recorrer el mapa'\n'Open large map': 'Abrir mapa grande'\n'No news available.': 'No hay noticias disponibles.'\n'Edit Polygon': 'Editar el Polygon'\n'Create Polygon': 'Crear el Polygon'\n'Communication error: ': 'Error de comunicación.'\n'Cant fetch news from $1': 'No es posible extraer noticias de  $1'\nLoading...: Cargando...\nVersion: Versión\nLicense: Licencia\nHomepage: Inicio\n'Show original map': 'Mostrar el mapa original'\n'The uploaded archive does not contain an valid newscoop plugin.': 'El archivo cargado no contine un plugin válido en Newscoop'\nMap: Mapa\nCenter: Centro\nTitle: Tìtulo\n'Invalid security token.': 'Credencial de seguridad inválida.'\n'Callback $1 is not callable.': 'El Callback $1 no es operable.'\n'Article translated to $4 ($5)': 'El artículo se tradujo al $4 ($5)'\n'Article status changed from $1 to $2.': 'El estatus del artículo cambió de $1 a $2.'\n'Article deleted.': 'Se eliminó el artículo'\n'Article created.': 'Se creó el artículo'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': 'El artículo se copió al Artículo $4 (publicación $5, edición $6, sección $7).'\n'Article URL': 'URL del artículo'\n'Article Number': 'Número del artículo'\n'Access denied.': 'Acceso denegado.'\n'Publish with issue': 'Publicar con edición'\n'Article \"$1\" not processed': null\nunknown: desconocido\nSwitch: Cambiar\nNumeric: Numérico\n'The uploaded file format is unsupported.': 'El formato del archivo subido no es apoyado.'\n'The following fields are mandatory:': 'Los siguientes campos son obligatorios:'\n'Missing value for $1': 'Valor faltante para $1'\n'Manage Plugins': 'Administrar Plugins'\n'* Marked fields are mandatory.': '* Los campos marcados son obligatorios.'\n'$1 is of type $2': '$1 es del tipo $2'\n'Invalid resize width/height.': 'Redimensión de ancho/altura inválida.'\n'Image type $1 is not supported.': 'Imagen de tipo $1 no es apoyada.'\n'The file uploaded is not an image.': 'El archivo cargado no es una imagen'\n'Could not delete record from the database.': 'No se pudo eliminar el archivo de la base de datos.'\n'template path': 'Trayectoria (path) de la plantilla'\n'short names': 'Nombres cortos'\n'Unable to fetch image from remote server.': 'No fue posible traer la imagen del servidor remoto.'\nLast: Último\nFirst: Primero\n'Single-line Text': Texto\n'Multi-line Text with WYSIWYG': 'Cuerpo del artículo'\n'URL $1 is invalid or is not an image.': 'El URL $1 es inválido o no es una imagen.'\n'URL $1 is not an image.': 'El URL $1 no es una imagen.'\nclient:\n    added: 'El cliente fue añadido'\n    notfound: 'Cliente no encontrado'\n    removed: 'El cliente fue eliminado'\npublicresources:\n    updated: 'El recurso público ha sido actualizado'\napi:\n    configure:\n        title: 'Configurar API - recursos públicos'\n        title_content: 'Configurar API - recursos públicos'\n        tabs:\n            resources: 'Recursos Públicos'\n            clients: Clientes\n        resources:\n            info: 'Por defecto todos los recursos están protegidos por un cortafuegos, pero puede elegir los recursos que desee hacer públicos para todo el mundo.'\n            api_docs: null\n            add_button: 'Añadir cliente'\n        clients:\n            table:\n                name: 'Nombre del Cliente'\n                id: 'ID del Cliente'\n                secret: Secreto\n                trusted: null\n                redirect: 'URIs para redirección'\n                publication: Publicación\n                actions: Acciones\n                actions_buttons:\n                    remove: Eliminar\n            actions:\n                remove:\n                    confirm: '¿Está seguro de que quiere eliminar a este cliente?'\n        menu: API\n    form:\n        client:\n            label:\n                name: 'Elija un nombre para su cliente:'\n                publication: 'Elija una publicación para su cliente:'\n                redirectUris: 'Elija los URI de redirección para su cliente:'\n                trusted: null\n                save: Guardar\n        PublicResources:\n            label:\n                routes: 'Elija los recursos que desee hacer públicos:'\n                save: Guardar\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.es_AR.yml",
    "content": "'No such article type': 'No existe ese tipo de archivo'\n'Multi-line Text': 'Texto multilínea'\n'Filter saved': 'Filtro guardado'\n'Filter not saved': 'Filtro no guardado'\n'Not a color': 'No es un color'\n'No such field': 'No existe ese campo'\n'Color saved': 'Color guardado'\n'Color not saved': 'No pudo guardarse el color'\n'Topic created': 'Tema creado'\n'The topic name is already in use by another topic.': 'Este nombre de tema ya está en uso.'\n'Complex Date': 'Fecha compleja'\nvertices: vértices\n'There was a problem trying to execute the XML RPC function.': 'Surgió un problema intentando ejecutar la función XML RPC.'\n'The Campcaster server configuration is invalid.': 'La configuración del servidor Campcaster es inválida.'\n'Pan Map': 'Recorrer el mapa'\n'Open large map': 'Abrir mapa grande'\n'No news available.': 'No hay noticias disponibles.'\n'Edit Polygon': 'Editar el Polygon'\n'Create Polygon': 'Crear el Polygon'\n'Communication error: ': 'Error de comunicación.'\n'Cant fetch news from $1': 'No se puede extraer noticias de $1'\nLoading...: Cargando...\nVersion: Versión\nLicense: Licencia\nHomepage: Inicio\n'Show original map': 'Mostrar el mapa original'\n'The uploaded archive does not contain an valid newscoop plugin.': 'El archivo subido no contiene un plugin válido en Newscoop'\nMap: Mapa\nCenter: Centro\nTitle: Título\n'Invalid security token.': 'Credencial de seguridad inválida.'\n'Callback $1 is not callable.': 'El Callback $1 no es operable.'\n'Article translated to $4 ($5)': 'El artículo se tradujo al $4 ($5)'\n'Article status changed from $1 to $2.': 'El estado del artículo cambió de $1 a $2.'\n'Article deleted.': 'Artículo eliminado.'\n'Article created.': 'Artículo creado.'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': 'Artículo se copiado al Artículo $4 (publicación $5, edición $6, sección $7).'\n'Article URL': 'URL del artículo'\n'Article Number': 'Número del artículo'\n'Access denied.': 'Acceso denegado.'\n'Publish with issue': 'Publicar con edición'\n'Article \"$1\" not processed': null\nunknown: desconocido\nSwitch: Cambiar\nNumeric: Numérico\n'The uploaded file format is unsupported.': 'El formato del archivo subido no está soportado.'\n'The following fields are mandatory:': 'Los siguientes campos son obligatorios:'\n'Missing value for $1': 'Valor faltante para $1'\n'Manage Plugins': 'Administrar Plugins'\n'* Marked fields are mandatory.': '* Los campos marcados son obligatorios.'\n'$1 is of type $2': '$1 es del tipo $2'\n'Invalid resize width/height.': 'Redimensión de ancho/alto inválida.'\n'Image type $1 is not supported.': 'Imagen de tipo $1 no está soportada.'\n'The file uploaded is not an image.': 'El archivo subido no es una imagen'\n'Could not delete record from the database.': 'No se pudo eliminar el registro de la base de datos.'\n'template path': 'Ruta a la plantilla'\n'short names': 'Nombres cortos'\n'Unable to fetch image from remote server.': 'No fue posible obtener la imagen del servidor remoto.'\nLast: Último\nFirst: Primero\n'Single-line Text': 'Texto en una línea'\n'Multi-line Text with WYSIWYG': 'Texto multilínea con WYSIWYG'\n'URL $1 is invalid or is not an image.': 'El URL $1 es inválido o no es una imagen.'\n'URL $1 is not an image.': 'El URL $1 no es una imagen.'\nclient:\n    added: 'El cliente fue añadido'\n    notfound: 'Cliente no encontrado'\n    removed: 'El cliente fue eliminado'\npublicresources:\n    updated: 'El recurso público ha sido actualizado'\napi:\n    configure:\n        title: 'Configurar API - recursos públicos'\n        title_content: 'Configurar API - recursos públicos'\n        tabs:\n            resources: 'Recursos Públicos'\n            clients: Clientes\n        resources:\n            info: 'Por defecto todos los recursos están protegidos por un cortafuegos, pero podés elegir los recursos que deseás hacer públicos para todo el mundo.'\n            api_docs: null\n            add_button: 'Añadir Cliente'\n        clients:\n            table:\n                name: 'Nombre del Cliente'\n                id: 'ID del Cliente'\n                secret: Secreto\n                trusted: '¿Confiable?'\n                redirect: 'Uris de Redirección'\n                publication: Publicación\n                actions: Acciones\n                actions_buttons:\n                    remove: Eliminar\n            actions:\n                remove:\n                    confirm: '¿Estás seguro de que querés eliminar a este cliente?'\n        menu: API\n    form:\n        client:\n            label:\n                name: 'Elegí un nombre para tu cliente:'\n                publication: 'Elegí una publicación para tu cliente:'\n                redirectUris: 'Elegí los URI de redirección para tu cliente:'\n                trusted: '¿Confiable?'\n                save: Guardar\n        PublicResources:\n            label:\n                routes: 'Elegí los recursos que deseás hacer públicos:'\n                save: Guardar\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.fa.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': null\n'Open large map': null\n'No news available.': null\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': null\n'Cant fetch news from $1': null\nLoading...: null\nVersion: null\nLicense: null\nHomepage: null\n'Show original map': null\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: null\nCenter: null\nTitle: null\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': null\n'Article created.': null\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': null\n'Article \"$1\" not processed': null\nunknown: null\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': null\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': null\n'Could not delete record from the database.': null\n'template path': null\n'short names': null\n'Unable to fetch image from remote server.': null\nLast: null\nFirst: null\n'Single-line Text': null\n'Multi-line Text with WYSIWYG': null\n'URL $1 is invalid or is not an image.': null\n'URL $1 is not an image.': null\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: null\n                actions: null\n                actions_buttons:\n                    remove: null\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: null\n        PublicResources:\n            label:\n                routes: null\n                save: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.fa_AF.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': null\n'Open large map': null\n'No news available.': null\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': null\n'Cant fetch news from $1': null\nLoading...: null\nVersion: null\nLicense: null\nHomepage: null\n'Show original map': null\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: null\nCenter: null\nTitle: null\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': null\n'Article created.': null\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': null\nunknown: null\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': null\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': null\n'Could not delete record from the database.': null\n'template path': null\n'short names': null\n'Unable to fetch image from remote server.': null\nLast: null\nFirst: null\n'Single-line Text': null\n'Multi-line Text with WYSIWYG': null\n'URL $1 is invalid or is not an image.': null\n'URL $1 is not an image.': null\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: null\n                actions: null\n                actions_buttons:\n                    remove: null\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: null\n        PublicResources:\n            label:\n                routes: null\n                save: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.fr.yml",
    "content": "'No such article type': 'Pas de type d''article'\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': 'Carte panoramique'\n'Open large map': null\n'No news available.': null\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': null\n'Cant fetch news from $1': null\nLoading...: null\nVersion: null\nLicense: null\nHomepage: null\n'Show original map': null\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: null\nCenter: null\nTitle: Titre\n'Invalid security token.': 'Jeton de sécurité invalide.'\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': null\n'Article created.': null\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': null\n'Article \"$1\" not processed': null\nunknown: null\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': null\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': null\n'Could not delete record from the database.': null\n'template path': null\n'short names': null\n'Unable to fetch image from remote server.': null\nLast: Dernier\nFirst: Premier\n'Single-line Text': Texte\n'Multi-line Text with WYSIWYG': null\n'URL $1 is invalid or is not an image.': null\n'URL $1 is not an image.': 'L''URL $1 n''est pas une image'\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: Publication\n                actions: Actions\n                actions_buttons:\n                    remove: Enlever\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: Sauvegarder\n        PublicResources:\n            label:\n                routes: null\n                save: Sauvegarder\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.he.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': null\n'Open large map': null\n'No news available.': null\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': null\n'Cant fetch news from $1': null\nLoading...: null\nVersion: null\nLicense: null\nHomepage: null\n'Show original map': null\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: null\nCenter: null\nTitle: null\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': null\n'Article created.': null\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': 'פרסם עם מהדורה'\n'Article \"$1\" not processed': null\nunknown: null\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': 'ניהול הרחבות'\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': null\n'Could not delete record from the database.': null\n'template path': null\n'short names': null\n'Unable to fetch image from remote server.': null\nLast: null\nFirst: null\n'Single-line Text': null\n'Multi-line Text with WYSIWYG': null\n'URL $1 is invalid or is not an image.': null\n'URL $1 is not an image.': null\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: הוצאה\n                actions: פעילויות\n                actions_buttons:\n                    remove: הסר\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: שמור\n        PublicResources:\n            label:\n                routes: null\n                save: שמור\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.hr.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': null\n'Open large map': null\n'No news available.': null\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': null\n'Cant fetch news from $1': null\nLoading...: null\nVersion: null\nLicense: null\nHomepage: null\n'Show original map': null\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: null\nCenter: null\nTitle: null\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': null\n'Article created.': null\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': null\n'Article \"$1\" not processed': null\nunknown: null\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': null\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': null\n'Could not delete record from the database.': null\n'template path': null\n'short names': null\n'Unable to fetch image from remote server.': null\nLast: Zadnji\nFirst: Prvi\n'Single-line Text': Tekst\n'Multi-line Text with WYSIWYG': 'Tijelo članka'\n'URL $1 is invalid or is not an image.': 'URL $1 je neispravan ili nije slika.'\n'URL $1 is not an image.': 'URL $1 nije slika.'\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: Publikacija\n                actions: Radnje\n                actions_buttons:\n                    remove: Ukloni\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: Spremi\n        PublicResources:\n            label:\n                routes: null\n                save: Spremi\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.hu.yml",
    "content": "'No such article type': 'Nincs ilyen cikktípus'\n'Multi-line Text': 'Többsoros szöveg'\n'Filter saved': 'A szűrő mentése megtörtént'\n'Filter not saved': 'Nem történt meg a szűrő mentése'\n'Not a color': 'Nem szín'\n'No such field': 'Nincs ilyen mező'\n'Color saved': 'A szín mentése megtörtént'\n'Color not saved': 'Nem történt meg a szín mentése'\n'Topic created': 'A téma létrehozása megtörtént'\n'The topic name is already in use by another topic.': 'Már használja egy másik téma a téma nevét.'\n'Complex Date': 'Összetett dátum'\nvertices: csúcsok\n'There was a problem trying to execute the XML RPC function.': 'Hiba történt az XML RPC funkció végrehajtásának megkísérlésekor.'\n'The Campcaster server configuration is invalid.': 'A Campcaster-kiszolgáló konfigurációja érvénytelen.'\n'Pan Map': 'Térkép pásztázása'\n'Open large map': 'Nagy térkép megnyitása'\n'No news available.': 'Nincsenek hírek.'\n'Edit Polygon': 'Sokszög szerkesztése'\n'Create Polygon': 'Sokszög létrehozása'\n'Communication error: ': 'Kommunikációs hiba:'\n'Cant fetch news from $1': 'Nem lehet híreket lehívni a következő helyről: $1'\nLoading...: Betöltés...\nVersion: Verzió\nLicense: Licenc\nHomepage: Honlap\n'Show original map': 'Eredeti térkép megjelenítése'\n'The uploaded archive does not contain an valid newscoop plugin.': 'A feltöltött archívum nem tartalmaz érvényes Newscoop-bővítményt.'\nMap: Térkép\nCenter: Központ\nTitle: Cím\n'Invalid security token.': 'Érvénytelen biztonsági jogkivonat.'\n'Callback $1 is not callable.': 'A/z $1 visszahívás nem hívható.'\n'Article translated to $4 ($5)': 'A cikk lefordítása a/z $4 ($5) nyelvre megtörtént'\n'Article status changed from $1 to $2.': 'A cikk állapota megváltozott erről: $1 erre: $2.'\n'Article deleted.': 'A cikk törlése megtörtént.'\n'Article created.': 'A cikk létrehozása megtörtént.'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': 'A cikk másolása a/z $4 cikkbe megtörtént (kiadvány: $5, szám: $6, rovat: $7).'\n'Article URL': 'Cikk URL-címe'\n'Article Number': 'Cikk száma'\n'Access denied.': 'Hozzáférés megtagadva.'\n'Publish with issue': 'Közzététel folyóiratszámmal'\n'Article \"$1\" not processed': null\nunknown: ismeretlen\nSwitch: Váltás\nNumeric: Numerikus\n'The uploaded file format is unsupported.': 'A feltöltött fájl formátuma nem támogatott.'\n'The following fields are mandatory:': 'A következő mezők kitöltése kötelező:'\n'Missing value for $1': 'A/z $1 értéke hiányzik'\n'Manage Plugins': 'Bővítmények kezelése'\n'* Marked fields are mandatory.': 'A *-gal jelölt mezők kitöltése kötelező.'\n'$1 is of type $2': 'A/z $1 $2 típusú'\n'Invalid resize width/height.': 'Érvénytelen átméretezési szélesség/magasság.'\n'Image type $1 is not supported.': 'A/z $1 képtípus nem támogatott.'\n'The file uploaded is not an image.': 'A feltöltött fájl nem kép.'\n'Could not delete record from the database.': 'Nem lehet törölni a rekordot az adatbázisból.'\n'template path': 'sablon elérési útja'\n'short names': 'rövid nevek'\n'Unable to fetch image from remote server.': 'Nem lehet képet lehívni a távoli kiszolgálóról.'\nLast: Utolsó\nFirst: Első\n'Single-line Text': 'Egysoros szöveg'\n'Multi-line Text with WYSIWYG': 'Többsoros szöveg alakhű szerkesztővel'\n'URL $1 is invalid or is not an image.': 'A/z $1 URL-cím érvénytelen vagy nem kép.'\n'URL $1 is not an image.': 'A/z $1 URL-cím nem kép.'\nclient:\n    added: 'Az ügyfél hozzáadása megtörtént'\n    notfound: 'Az ügyfél nem található'\n    removed: 'Az ügyfél eltávolítása megtörtént'\npublicresources:\n    updated: 'A nyilvános erőforrások frissítésre kerültek.'\napi:\n    configure:\n        title: 'API konfigurálása - nyilvános erőforrások'\n        title_content: 'API konfigurálása - nyilvános erőforrások'\n        tabs:\n            resources: 'Nyilvános erőforrások'\n            clients: Ügyfelek\n        resources:\n            info: 'Alapértelmezésként az összes erőforrást tűzfal védi, viszont kiválaszthatod azokat az erőforrásokat, melyeket mindenki számára nyilvánossá akarsz tenni.'\n            api_docs: null\n            add_button: 'Ügyfél hozzáadása'\n        clients:\n            table:\n                name: 'Ügyfél neve'\n                id: Ügyfél-azonosító\n                secret: Titkos\n                trusted: 'Megbízható?'\n                redirect: 'URL-címek átirányítása'\n                publication: Kiadvány\n                actions: Műveletek\n                actions_buttons:\n                    remove: Eltávolítás\n            actions:\n                remove:\n                    confirm: 'Biztosan el akarod távolítani ezt az ügyfelet?'\n        menu: API\n    form:\n        client:\n            label:\n                name: 'Válassz nevet az ügyfelednek:'\n                publication: 'Válassz kiadványt az ügyfeled számára:'\n                redirectUris: 'Válaszd ki az ügyfeled átirányító URL-címeit.'\n                trusted: 'Megbízható?'\n                save: Mentés\n        PublicResources:\n            label:\n                routes: 'Válaszd ki a nyilvánossá teendő erőforrásokat:'\n                save: Mentés\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.hy.yml",
    "content": "'No such article type': 'Հոդվածի այսպիսի տարատեսակ առկա չէ'\n'Multi-line Text': 'Բազմատող տեքստ'\n'Filter saved': 'Ֆիլտրը պահպանված է'\n'Filter not saved': 'Ֆիլտրը պահպանված չէ'\n'Not a color': 'Սա գույն չէ'\n'No such field': 'Այսպիսի դաշտ առկա չէ'\n'Color saved': 'Գույնը պահպանված է'\n'Color not saved': 'Գույնը պահպանված չէ'\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': null\n'Open large map': null\n'No news available.': 'Այս պահին նորություններ առկա չեն'\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': 'Հաղորդակցման սխալ'\n'Cant fetch news from $1': null\nLoading...: 'Բեռնվում է...'\nVersion: null\nLicense: null\nHomepage: 'Գլխավոր էջ'\n'Show original map': 'Ցույց տալ նախնական քարտեզը'\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: Քարտեզ\nCenter: Կենտրոն\nTitle: Վերնագիր\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': 'Հոդվածը ջնջված է'\n'Article created.': 'Հոդվածը ստեղծված է'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': null\nunknown: null\nSwitch: null\nNumeric: Թվային\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': null\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': null\n'Could not delete record from the database.': null\n'template path': null\n'short names': 'Կարճ անուններ'\n'Unable to fetch image from remote server.': null\nLast: Վերջին\nFirst: Առաջին\n'Single-line Text': 'Մեկ տողանի տեքստ'\n'Multi-line Text with WYSIWYG': null\n'URL $1 is invalid or is not an image.': null\n'URL $1 is not an image.': null\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: 'A full documentation of the API can be found on your instance (and it''s public)'\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: Գաղտնի\n                trusted: 'Վստահելի՞ է'\n                redirect: null\n                publication: Հրապարակում\n                actions: null\n                actions_buttons:\n                    remove: Հեռացնել\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: 'Վստահելի՞ է'\n                save: Պահպանել\n        PublicResources:\n            label:\n                routes: null\n                save: Պահպանել\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.hy_AM.yml",
    "content": "'No such article type': 'Հոդվածի այսպիսի տարատեսակ առկա չէ'\n'Multi-line Text': 'Բազմատող տեքստ'\n'Filter saved': 'Ֆիլտրը պահպանված է'\n'Filter not saved': 'Ֆիլտրը պահպանված չէ'\n'Not a color': 'Սա գույն չէ'\n'No such field': 'Այսպիսի դաշտ առկա չէ'\n'Color saved': 'Գույնը պահպանված է'\n'Color not saved': 'Գույնը պահպանված չէ'\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': 'Բարդ գրառումով ամսաթիվ'\nvertices: Գագաթներ\n'There was a problem trying to execute the XML RPC function.': 'Հայտնաբերվել է տեխնիկական խնդիր XML RPC ֆունկցիան կատարելիս'\n'The Campcaster server configuration is invalid.': 'Campcaster սերվերի կոնֆիգուրացիան թերի է'\n'Pan Map': null\n'Open large map': null\n'No news available.': 'Այս պահին նորություններ առկա չեն'\n'Edit Polygon': 'Խմբագրել բազմանկյունը'\n'Create Polygon': 'Ստեղծել բազմանկյուն'\n'Communication error: ': 'Հաղորդակցման սխալ'\n'Cant fetch news from $1': null\nLoading...: 'Բեռնվում է...'\nVersion: null\nLicense: Արտոնագիր\nHomepage: 'Գլխավոր էջ'\n'Show original map': 'Ցույց տալ նախնական քարտեզը'\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: Քարտեզ\nCenter: Կենտրոն\nTitle: Վերնագիր\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': 'Հոդվածը ջնջված է'\n'Article created.': 'Հոդվածը ստեղծված է'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': null\n'Article \"$1\" not processed': null\nunknown: null\nSwitch: null\nNumeric: Թվային\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': null\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': null\n'Could not delete record from the database.': null\n'template path': null\n'short names': 'Կարճ անուններ'\n'Unable to fetch image from remote server.': null\nLast: Վերջին\nFirst: Առաջին\n'Single-line Text': 'Մեկ տողանի տեքստ'\n'Multi-line Text with WYSIWYG': null\n'URL $1 is invalid or is not an image.': null\n'URL $1 is not an image.': null\nclient:\n    added: 'Բաժանորդը ավելացված է'\n    notfound: 'Բաժանորդը գտնված չէ'\n    removed: 'Բաժանորդը հեռացված է'\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: 'Հանրային ռեսուրսներ'\n            clients: Բաժանորդներ\n        resources:\n            info: null\n            api_docs: null\n            add_button: 'Ավելացնել բաժանորդ'\n        clients:\n            table:\n                name: 'Բաժանորդի անունը'\n                id: null\n                secret: Գաղտնի\n                trusted: 'Վստահելի՞ է'\n                redirect: null\n                publication: Հրապարակում\n                actions: Գործողություններ\n                actions_buttons:\n                    remove: Հեռացնել\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: 'Վստահելի՞ է'\n                save: Պահպանել\n        PublicResources:\n            label:\n                routes: null\n                save: Պահպանել\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.id.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': null\n'Open large map': null\n'No news available.': null\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': null\n'Cant fetch news from $1': null\nLoading...: null\nVersion: null\nLicense: null\nHomepage: null\n'Show original map': null\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: null\nCenter: null\nTitle: null\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': null\n'Article created.': null\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': null\n'Article \"$1\" not processed': null\nunknown: null\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': null\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': null\n'Could not delete record from the database.': null\n'template path': null\n'short names': null\n'Unable to fetch image from remote server.': null\nLast: null\nFirst: null\n'Single-line Text': null\n'Multi-line Text with WYSIWYG': null\n'URL $1 is invalid or is not an image.': null\n'URL $1 is not an image.': null\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: null\n                actions: null\n                actions_buttons:\n                    remove: null\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: null\n        PublicResources:\n            label:\n                routes: null\n                save: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.it.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': 'Non è un colore'\n'No such field': 'Campo non trovato'\n'Color saved': 'Colore salvato'\n'Color not saved': 'Colore non salvato'\n'Topic created': 'Argomento creato'\n'The topic name is already in use by another topic.': 'Questo nome è già usato per un altro argomento.'\n'Complex Date': 'Data complessa'\nvertices: vertici\n'There was a problem trying to execute the XML RPC function.': 'Cè stato un problema eseguendo la funzione XML RPC.'\n'The Campcaster server configuration is invalid.': 'La configurazione del server Campcaster non è valida.'\n'Pan Map': 'Scorri mappa'\n'Open large map': 'Apri mappa ingrandita'\n'No news available.': 'Nessuna notizia disponibile.'\n'Edit Polygon': 'Modifica poligono'\n'Create Polygon': 'Crea poligono'\n'Communication error: ': 'Errore di comunicazione:'\n'Cant fetch news from $1': 'Non posso acquisire notizie da $1'\nLoading...: Caricamento...\nVersion: Versione\nLicense: Licenza\nHomepage: Homepage\n'Show original map': 'Mostra mappa originale'\n'The uploaded archive does not contain an valid newscoop plugin.': 'Larchivio caricato non contiene un plugin di Newscoop valido.'\nMap: Mappa\nCenter: Centro\nTitle: Titolo\n'Invalid security token.': 'Token di sicurezza non valido.'\n'Callback $1 is not callable.': 'Il riferimento $1 non è richiamabile.'\n'Article translated to $4 ($5)': 'Articolo tradotto in $4 ($5)'\n'Article status changed from $1 to $2.': 'Stato dellarticolo cambiato da $1 a $2.'\n'Article deleted.': 'Articolo eliminato.'\n'Article created.': 'Articolo creato.'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': 'Articolo copiato nellarticolo n. $4 (pubblicazione $5, edizione $6, sezione $7)'\n'Article URL': 'URL articolo'\n'Article Number': 'Numero articolo'\n'Access denied.': 'Accesso negato.'\n'Publish with issue': 'Pubblica con ledizione'\n'Article \"$1\" not processed': null\nunknown: sconosciuto\nSwitch: Opzione\nNumeric: Numerico\n'The uploaded file format is unsupported.': 'Il formato del file caricato non è supportato.'\n'The following fields are mandatory:': 'I seguenti campi sono obbligatori:'\n'Missing value for $1': 'Valore mancante per $1'\n'Manage Plugins': 'Gestisci plugin'\n'* Marked fields are mandatory.': 'I valori indicati con (*) sono obbligatori.'\n'$1 is of type $2': '$1 è di tipo $2'\n'Invalid resize width/height.': 'Larghezza/altezza di ridimensionamento non valide.'\n'Image type $1 is not supported.': 'Il tipo immagine $1 non è supportato.'\n'The file uploaded is not an image.': 'Il file caricato non è una immagine.'\n'Could not delete record from the database.': 'Impossibile eliminare la voce dal database.'\n'template path': 'percorso template'\n'short names': 'nome breve'\n'Unable to fetch image from remote server.': 'Impossibile recuperare limmagine dal server remoto.'\nLast: Ultimo\nFirst: Primo\n'Single-line Text': 'Linea di testo'\n'Multi-line Text with WYSIWYG': 'Area di testo con WYSIWYG'\n'URL $1 is invalid or is not an image.': 'LURL $1 non è valido o non è una immagine.'\n'URL $1 is not an image.': 'LURL $1 non è una immagine.'\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: Pubblicazione\n                actions: Azioni\n                actions_buttons:\n                    remove: Rimuovi\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: Salva\n        PublicResources:\n            label:\n                routes: null\n                save: Salva\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.ka.yml",
    "content": "'No such article type': 'ასეთი სტატიის ტიპი არ არსებობს'\n'Multi-line Text': 'მრავალხაზიანი ტექსტი'\n'Filter saved': 'ფილტრი დამახსოვრებულია'\n'Filter not saved': 'ფილტრი არ არის დამახსოვრებული'\n'Not a color': 'ეს ფერი არ არის'\n'No such field': 'ასეთი ველი არ არსებობს'\n'Color saved': 'ფერი დამახსოვრებულია'\n'Color not saved': 'ფერი არ არის დამახსოვრებული'\n'Topic created': 'თემა შექმნილია'\n'The topic name is already in use by another topic.': 'თემის სათაური უკვე გამოყენებულია სხვა თემაზე.'\n'Complex Date': 'კომპლექსური თარიღი '\nvertices: მწვერვალი\n'There was a problem trying to execute the XML RPC function.': 'XML RPC ფუნქციის შესრულებისას დაფიქსირდა პრობლემა.'\n'The Campcaster server configuration is invalid.': 'კემპკასტერის სერვერის კონფიგურაცია არასწორია'\n'Pan Map': 'ინტერაქტიული რუკა'\n'Open large map': 'გახსენით დიდი რუკა'\n'No news available.': 'ახალი ამბები არ არის.'\n'Edit Polygon': 'პოლიგონის რედაქტირება'\n'Create Polygon': 'პოლიგონის შექმნა'\n'Communication error: ': 'კომუნიკაციის ხარვეზი:'\n'Cant fetch news from $1': '$1-დან ნიუსი არ მოდის'\nLoading...: იტვირთება...\nVersion: ვერსია\nLicense: ლიცენზია\nHomepage: მთავარი\n'Show original map': 'მაჩვენე ორიგინალი რუკა'\n'The uploaded archive does not contain an valid newscoop plugin.': 'ატვირთული არქივი არ შეიცავს ნიუსქუფის მუშა ფლაგინს.'\nMap: რუკა\nCenter: ცენტრი\nTitle: სათაური\n'Invalid security token.': 'არასწორია უსაფრთხოების სიმბოლო'\n'Callback $1 is not callable.': 'უკან გაწვევა $1 არ ექვემდებარება გაწვევას. '\n'Article translated to $4 ($5)': 'სტატია ითარგმნა $4 ($5) ენაზე'\n'Article status changed from $1 to $2.': 'სტატიის სტატუსი შეიცვალა $1-დან $2-სკენ'\n'Article deleted.': 'სტატია წაიშალა.'\n'Article created.': 'სტატია შეიქმნა.'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': 'სტატია დაკოპირდა $4 სტატიაში (პუბლიკაცია $5, გამოცემა $6, სექცია $7).'\n'Article URL': 'სტატიის URL'\n'Article Number': 'სტატიის ნომერი'\n'Access denied.': 'წვდომა აკრძალულია'\n'Publish with issue': 'გამოქვეყნება გამოცემასთან ერთად'\n'Article \"$1\" not processed': null\nunknown: უცნობი\nSwitch: გადართვა\nNumeric: რიცხვითი\n'The uploaded file format is unsupported.': 'ატვირთული ფაილის ფორმატი შეუსაბამოა'\n'The following fields are mandatory:': 'ეს ველები არის სავალდებულო'\n'Missing value for $1': '$1-ის დანიშნულება არ არსებობს'\n'Manage Plugins': 'პლაგინების მართვა'\n'* Marked fields are mandatory.': '*-ით მონიშნული ველები სავალდებულოა'\n'$1 is of type $2': '$1 არის $2 ტიპის'\n'Invalid resize width/height.': 'არასწორი სიმაღლის/სიგანის ზომა'\n'Image type $1 is not supported.': 'სურათის ტიპი $1 შეუსაბამოა'\n'The file uploaded is not an image.': 'ატვირთული ფაილი არ არის სურათი'\n'Could not delete record from the database.': 'მონაცემის ბაზიდან წაშლა უშედეგოდ დასრულდა'\n'template path': 'შაბლონის ბმული'\n'short names': 'მოკლე სახელები'\n'Unable to fetch image from remote server.': 'ამ სურათის სერვერიდან აგრეგირება შეუძლებელია'\nLast: ბოლო\nFirst: პირველი\n'Single-line Text': 'ერთ-ხაზიანი ტექსტი'\n'Multi-line Text with WYSIWYG': 'მრავალ-ხაზიანი ტექსტი WYSIWYG-ით'\n'URL $1 is invalid or is not an image.': '$1 URL არასწორია, ან არ არის სურათი'\n'URL $1 is not an image.': '$1 URL არ არის სურათი'\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: პუბლიკაცია\n                actions: მოქმედება\n                actions_buttons:\n                    remove: მოხსნა\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: შენახვა\n        PublicResources:\n            label:\n                routes: null\n                save: შენახვა\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.ko.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': null\n'Open large map': null\n'No news available.': null\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': null\n'Cant fetch news from $1': null\nLoading...: null\nVersion: null\nLicense: null\nHomepage: null\n'Show original map': null\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: null\nCenter: null\nTitle: null\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': null\n'Article created.': null\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': null\n'Article \"$1\" not processed': null\nunknown: null\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': null\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': null\n'Could not delete record from the database.': null\n'template path': null\n'short names': null\n'Unable to fetch image from remote server.': null\nLast: 마지막\nFirst: 처음\n'Single-line Text': 텍스트\n'Multi-line Text with WYSIWYG': '기사 본문'\n'URL $1 is invalid or is not an image.': 'URL $1은 비정상이거나 이미지가 아닙니다.'\n'URL $1 is not an image.': 'URL $1 은 이미지가 아닙니다.'\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: 출판\n                actions: 기능\n                actions_buttons:\n                    remove: 삭제\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: 저장\n        PublicResources:\n            label:\n                routes: null\n                save: 저장\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.ku.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': null\n'Open large map': null\n'No news available.': null\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': null\n'Cant fetch news from $1': null\nLoading...: null\nVersion: null\nLicense: null\nHomepage: null\n'Show original map': null\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: null\nCenter: null\nTitle: null\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': null\n'Article created.': null\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': null\n'Article \"$1\" not processed': null\nunknown: null\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': null\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': null\n'Could not delete record from the database.': null\n'template path': null\n'short names': null\n'Unable to fetch image from remote server.': null\nLast: null\nFirst: null\n'Single-line Text': null\n'Multi-line Text with WYSIWYG': null\n'URL $1 is invalid or is not an image.': null\n'URL $1 is not an image.': null\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: null\n                actions: null\n                actions_buttons:\n                    remove: null\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: null\n        PublicResources:\n            label:\n                routes: null\n                save: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.lv.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': null\n'Open large map': null\n'No news available.': null\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': null\n'Cant fetch news from $1': null\nLoading...: null\nVersion: null\nLicense: null\nHomepage: null\n'Show original map': null\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: null\nCenter: null\nTitle: null\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': null\n'Article created.': null\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': null\n'Article \"$1\" not processed': null\nunknown: null\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': null\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': null\n'Could not delete record from the database.': null\n'template path': null\n'short names': null\n'Unable to fetch image from remote server.': null\nLast: null\nFirst: null\n'Single-line Text': null\n'Multi-line Text with WYSIWYG': null\n'URL $1 is invalid or is not an image.': null\n'URL $1 is not an image.': null\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: null\n                actions: null\n                actions_buttons:\n                    remove: null\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: null\n        PublicResources:\n            label:\n                routes: null\n                save: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.mr.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': null\n'Open large map': null\n'No news available.': null\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': null\n'Cant fetch news from $1': null\nLoading...: null\nVersion: null\nLicense: null\nHomepage: null\n'Show original map': null\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: null\nCenter: null\nTitle: null\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': null\n'Article created.': null\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': null\n'Article \"$1\" not processed': null\nunknown: null\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': null\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': null\n'Could not delete record from the database.': null\n'template path': null\n'short names': null\n'Unable to fetch image from remote server.': null\nLast: null\nFirst: null\n'Single-line Text': null\n'Multi-line Text with WYSIWYG': null\n'URL $1 is invalid or is not an image.': null\n'URL $1 is not an image.': null\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: null\n                actions: null\n                actions_buttons:\n                    remove: null\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: null\n        PublicResources:\n            label:\n                routes: null\n                save: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.nb_NO.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': null\n'Open large map': null\n'No news available.': null\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': null\n'Cant fetch news from $1': null\nLoading...: null\nVersion: null\nLicense: null\nHomepage: null\n'Show original map': null\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: null\nCenter: null\nTitle: null\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': null\n'Article created.': null\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': null\n'Article \"$1\" not processed': null\nunknown: null\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': null\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': null\n'Could not delete record from the database.': null\n'template path': null\n'short names': null\n'Unable to fetch image from remote server.': null\nLast: null\nFirst: null\n'Single-line Text': null\n'Multi-line Text with WYSIWYG': null\n'URL $1 is invalid or is not an image.': null\n'URL $1 is not an image.': null\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: null\n                actions: null\n                actions_buttons:\n                    remove: null\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: null\n        PublicResources:\n            label:\n                routes: null\n                save: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.nl.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': null\n'Open large map': null\n'No news available.': null\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': null\n'Cant fetch news from $1': null\nLoading...: null\nVersion: null\nLicense: null\nHomepage: null\n'Show original map': null\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: null\nCenter: null\nTitle: null\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': null\n'Article created.': null\n'Article copied to Article $4 (publication $5, issue $6, section $7).': 'Artikel gekopieerd naar Artikel $4 (publicatie $5, uitgave $6, rubriek $7).'\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': null\n'Article \"$1\" not processed': null\nunknown: null\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': null\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': null\n'Could not delete record from the database.': null\n'template path': null\n'short names': null\n'Unable to fetch image from remote server.': null\nLast: Laatste\nFirst: Eerste\n'Single-line Text': null\n'Multi-line Text with WYSIWYG': null\n'URL $1 is invalid or is not an image.': 'URL $1 is niet geldig of is geen afbeelding'\n'URL $1 is not an image.': 'URL $1 is geen afbeelding'\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: Publicatie\n                actions: Acties\n                actions_buttons:\n                    remove: Verwijderen\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: Opslaan\n        PublicResources:\n            label:\n                routes: null\n                save: Opslaan\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.pa.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': null\n'Open large map': null\n'No news available.': null\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': null\n'Cant fetch news from $1': null\nLoading...: null\nVersion: null\nLicense: null\nHomepage: null\n'Show original map': null\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: null\nCenter: null\nTitle: null\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': null\n'Article created.': null\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': null\nunknown: null\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': null\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': null\n'Could not delete record from the database.': null\n'template path': null\n'short names': null\n'Unable to fetch image from remote server.': null\nLast: null\nFirst: null\n'Single-line Text': null\n'Multi-line Text with WYSIWYG': null\n'URL $1 is invalid or is not an image.': null\n'URL $1 is not an image.': null\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: 'A full documentation of the API can be found on your instance (and it''s public)'\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: null\n                actions: null\n                actions_buttons:\n                    remove: null\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: null\n        PublicResources:\n            label:\n                routes: null\n                save: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.pl.yml",
    "content": "'No such article type': 'Brak takiego typu artykułu'\n'Multi-line Text': 'Tekst wieloliniowy'\n'Filter saved': 'Filtr został zapisany'\n'Filter not saved': 'Filtr nie został zapisany'\n'Not a color': 'Wartość nie jest kolorem.'\n'No such field': 'Nie ma takiego pola'\n'Color saved': 'Kolor został zapisany'\n'Color not saved': 'Kolor nie został zapisany'\n'Topic created': 'Temat został utworzony'\n'The topic name is already in use by another topic.': 'Ta nazwa jest już wykorzystywana przez inny temat.'\n'Complex Date': 'Data złożona.'\nvertices: wierzchołki\n'There was a problem trying to execute the XML RPC function.': 'Wystąpił błąd podczas uruchamiania funkcji XML RPC.'\n'The Campcaster server configuration is invalid.': 'Konfiguracja serwera Campcaster jest nieprawidłowa.'\n'Pan Map': 'Wyśrodkuj mapę.'\n'Open large map': 'Otwórz dużą mapę'\n'No news available.': 'Brak dostępnych wiadomości.'\n'Edit Polygon': 'Edytuj wielokąt'\n'Create Polygon': 'Utwórz wilokąt'\n'Communication error: ': 'Bład przesyłania danych.'\n'Cant fetch news from $1': 'Nie można pobrać wiadomości z $1'\nLoading...: Ladowanie...\nVersion: Wersja\nLicense: Licencja\nHomepage: 'Strona domowa'\n'Show original map': 'Pokaż oryginalną mapę'\n'The uploaded archive does not contain an valid newscoop plugin.': 'Dodane archiwum nie zawiera ważnych pluginów Newscoop'\nMap: Mapa\nCenter: Wyśrodkuj\nTitle: Tytuł\n'Invalid security token.': 'Niepoprawny token bezpieczeństwa.'\n'Callback $1 is not callable.': 'Callback $1 nie jest w zasięgu.'\n'Article translated to $4 ($5)': 'Artykuł przetłumaczony na $4 ($5)'\n'Article status changed from $1 to $2.': 'Status artykułu zmieniony z $1 na $2.'\n'Article deleted.': 'Artykuł usunięty.'\n'Article created.': 'Artykuł utworzony.'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': 'Artykuł skopiowany do Artykułu $4 (publikacja $5, wydanie $6, sekcja $7).'\n'Article URL': 'URL artykułu'\n'Article Number': 'Numer artykułu'\n'Access denied.': 'Dostęp zabroniony.'\n'Publish with issue': 'Opublikuj z wydaniem'\n'Article \"$1\" not processed': 'Artykuł \"$1\" nie został przetworzony'\nunknown: nieznane\nSwitch: Przełącznik\nNumeric: Liczbowy\n'The uploaded file format is unsupported.': 'Format wgranego pliku nie jest obsługiwany.'\n'The following fields are mandatory:': 'Poniższe pola są obowiązkowe:'\n'Missing value for $1': 'Brakująca wartość dla $1'\n'Manage Plugins': 'Zarządzanie Wtyczkami'\n'* Marked fields are mandatory.': '* Oznaczone pola są obowiązkowe.'\n'$1 is of type $2': '$1 jest typu $2'\n'Invalid resize width/height.': 'Niewłaściwe rozmiary długości/wysokości.'\n'Image type $1 is not supported.': 'Typ zdjęcia $1 nie jest obsługiwany.'\n'The file uploaded is not an image.': 'Przesłany plik nie jest obrazem.'\n'Could not delete record from the database.': 'Nie można usunąć rekordu z bazą danych.'\n'template path': 'ścieżka szablonu'\n'short names': 'krótkie nazwy'\n'Unable to fetch image from remote server.': 'Nie można pobrać obrazu z serwera.'\nLast: Ostatni\nFirst: Pierwszy\n'Single-line Text': 'Tekst jednoliniowy'\n'Multi-line Text with WYSIWYG': 'Tekst jednoliniowy z WYSIWYG'\n'URL $1 is invalid or is not an image.': 'URL $1 jest niepoprawny albo nie jest obrazkiem.'\n'URL $1 is not an image.': 'URL $1 nie jest zdjęciem'\nclient:\n    added: 'Klient został dodany'\n    notfound: 'Nie ma takiego klienta'\n    removed: 'Klient został usunięty'\npublicresources:\n    updated: 'Zasoby publiczne zostały zaktualizowane'\napi:\n    configure:\n        title: 'Konfiguracja API - zasoby publiczne'\n        title_content: 'Konfiguracja API - zasoby publiczne'\n        tabs:\n            resources: 'Zasoby Publiczne'\n            clients: Klienci\n        resources:\n            info: 'Domyślnie wszystkie zasoby są strzeżone przez firewall, możesz jednak zdecydować które z nich będą publiczne (dostępne bez uwierzytelniania) dla wszystkich. '\n            api_docs: null\n            add_button: 'Dodaj klienta'\n        clients:\n            table:\n                name: 'Nazwa klienta'\n                id: 'Id klienta'\n                secret: 'sekretny kod'\n                trusted: 'Zaufany?'\n                redirect: 'Adresy przekierowań'\n                publication: Publikacja\n                actions: Akcje\n                actions_buttons:\n                    remove: Usuń\n            actions:\n                remove:\n                    confirm: 'Jesteś pewien że chcesz usunąć tego klienta?'\n        menu: API\n    form:\n        client:\n            label:\n                name: 'Podaj nazwę dla klienta:'\n                publication: 'Wybierz publikację klienta:'\n                redirectUris: 'Wybierz adresy przekierowań dla klienta:'\n                trusted: 'Zaufany?'\n                save: Zapisz\n        PublicResources:\n            label:\n                routes: 'Wybierz publiczne zasoby:'\n                save: Zapisz\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.ps.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': null\n'Open large map': null\n'No news available.': null\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': null\n'Cant fetch news from $1': null\nLoading...: null\nVersion: null\nLicense: null\nHomepage: null\n'Show original map': null\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: null\nCenter: null\nTitle: null\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': null\n'Article created.': null\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': null\n'Article \"$1\" not processed': null\nunknown: null\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': null\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': null\n'Could not delete record from the database.': null\n'template path': null\n'short names': null\n'Unable to fetch image from remote server.': null\nLast: null\nFirst: null\n'Single-line Text': null\n'Multi-line Text with WYSIWYG': null\n'URL $1 is invalid or is not an image.': null\n'URL $1 is not an image.': null\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: null\n                actions: null\n                actions_buttons:\n                    remove: null\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: null\n        PublicResources:\n            label:\n                routes: null\n                save: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.pt.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': null\n'Open large map': null\n'No news available.': null\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': null\n'Cant fetch news from $1': null\nLoading...: null\nVersion: null\nLicense: null\nHomepage: null\n'Show original map': null\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: null\nCenter: null\nTitle: null\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': null\n'Article created.': null\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': null\n'Article \"$1\" not processed': null\nunknown: null\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': 'Gerenciar plugins'\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': null\n'Could not delete record from the database.': null\n'template path': null\n'short names': null\n'Unable to fetch image from remote server.': null\nLast: Ultimo\nFirst: Primeiro\n'Single-line Text': Texto\n'Multi-line Text with WYSIWYG': 'Corpo do artigo'\n'URL $1 is invalid or is not an image.': 'O Endereço $1 não é uma imagem ou é inválido'\n'URL $1 is not an image.': 'O Endereço $1 não é uma imagem'\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: Publicação\n                actions: Acções\n                actions_buttons:\n                    remove: Remover\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: Guardar\n        PublicResources:\n            label:\n                routes: null\n                save: Guardar\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.pt_BR.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': 'Não é uma cor'\n'No such field': 'Este campo não existe'\n'Color saved': 'Cor salva'\n'Color not saved': 'Cor não foi salva'\n'Topic created': 'Tópico criado'\n'The topic name is already in use by another topic.': 'O nome do tópico já está em uso'\n'Complex Date': 'Data complexa'\nvertices: vértices\n'There was a problem trying to execute the XML RPC function.': 'Ocorreu um problema na tentativa de executar a função XML RPC.'\n'The Campcaster server configuration is invalid.': 'A configuração do servidor do Campcaster está inválida.'\n'Pan Map': 'Girar o mapa'\n'Open large map': 'Abrir mapa grande'\n'No news available.': 'Não há notícias disponíveis'\n'Edit Polygon': 'Editar polígono'\n'Create Polygon': 'Criar polígono'\n'Communication error: ': 'Erro de comunicação:'\n'Cant fetch news from $1': 'Não é possível obter notícias do $1'\nLoading...: Carregando...\nVersion: Versão\nLicense: Licença\nHomepage: 'Página principal'\n'Show original map': 'Mostrar mapa original'\n'The uploaded archive does not contain an valid newscoop plugin.': 'O arquivo que foi enviado não contêm o plugin válido de Newscoop.'\nMap: Mapa\nCenter: Centro\nTitle: Título\n'Invalid security token.': 'Token de segurança inválido.'\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': 'Artigo traduzido para $4 ($5)'\n'Article status changed from $1 to $2.': 'Status do artigo mudou de $1 para $2.'\n'Article deleted.': 'Artigo removido.'\n'Article created.': 'Artigo criado.'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': 'O artigo foi copiado para artigo no. $4 (publicação $5, edição $6, seção $7).'\n'Article URL': 'URL do artigo'\n'Article Number': 'Número do artigo'\n'Access denied.': 'Acesso proibido.'\n'Publish with issue': 'Publicar com edição'\n'Article \"$1\" not processed': null\nunknown: desconhecido\nSwitch: Switch\nNumeric: Numérico\n'The uploaded file format is unsupported.': 'O formato do arquivo enviado não é suportado.'\n'The following fields are mandatory:': 'Os seguintes campos são obrigatórios:'\n'Missing value for $1': 'Está faltando valor para $1'\n'Manage Plugins': 'Gerenciar plugins'\n'* Marked fields are mandatory.': 'Campos marcados com * são obrigatórios.'\n'$1 is of type $2': '$1 é do tipo $2'\n'Invalid resize width/height.': 'Redimensionamento de largura/altura não é válido.'\n'Image type $1 is not supported.': 'Imagem do tipo $1 não é suportada.'\n'The file uploaded is not an image.': 'O arquivo enviado não é uma imagem.'\n'Could not delete record from the database.': 'Não foi possível remover a informação da base de dados'\n'template path': 'caminho do template'\n'short names': 'nomes curtos'\n'Unable to fetch image from remote server.': 'Não é possível obter imagens do servidor remoto'\nLast: Ultimo\nFirst: Primeiro\n'Single-line Text': Texto\n'Multi-line Text with WYSIWYG': 'Corpo do artigo'\n'URL $1 is invalid or is not an image.': 'O Endereço $1 não é uma imagem ou é inválido'\n'URL $1 is not an image.': 'O Endereço $1 não é uma imagem'\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: Publicação\n                actions: Ações\n                actions_buttons:\n                    remove: Remover\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: Salvar\n        PublicResources:\n            label:\n                routes: null\n                save: Salvar\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.ro.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': null\n'The topic name is already in use by another topic.': 'Numele subiectului de discuţie este deja folosit de un alt subiect de discuţie.'\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': null\n'Open large map': null\n'No news available.': null\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': null\n'Cant fetch news from $1': null\nLoading...: null\nVersion: Versiune\nLicense: Licență\nHomepage: null\n'Show original map': null\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: Hartă\nCenter: null\nTitle: null\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': 'Articolul a fost şters.'\n'Article created.': 'Articolul a fost creat.'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': 'Publică cu ediția'\n'Article \"$1\" not processed': null\nunknown: null\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': 'Gestionează plug-in'\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': 'Fişierul încărcat în baza de date nu este o imagine.'\n'Could not delete record from the database.': 'Nu a putut fi ştearsă înregistrarea din baza de date.'\n'template path': 'calea către şablon'\n'short names': 'denumiri scurte'\n'Unable to fetch image from remote server.': 'Nu a putut fi preluată imaginea de pe serverul distant.'\nLast: Ultimul\nFirst: Primul\n'Single-line Text': Text\n'Multi-line Text with WYSIWYG': 'Corpul articolului'\n'URL $1 is invalid or is not an image.': 'Adresa de Internet $1 nu este validă sau nu este un fişier de tip imagine.'\n'URL $1 is not an image.': 'Adresa de Internet $1 nu este un fişier de tip imagine.'\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: Publicaţie\n                actions: Acţiuni\n                actions_buttons:\n                    remove: Şterge\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: Salvează\n        PublicResources:\n            label:\n                routes: null\n                save: Salvează\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.ru.yml",
    "content": "'No such article type': 'Нет такого типа статьи'\n'Multi-line Text': 'Многострочный текст'\n'Filter saved': 'Фильтр сохранен'\n'Filter not saved': 'Фильтр не сохранен'\n'Not a color': 'Не является цветом'\n'No such field': 'Нет такого поля'\n'Color saved': 'Цвет сохранен'\n'Color not saved': 'Цвет не сохранен'\n'Topic created': 'Тема создана'\n'The topic name is already in use by another topic.': 'Это имя уже используется другой темой.'\n'Complex Date': 'Составная дата'\nvertices: вершины\n'There was a problem trying to execute the XML RPC function.': 'Ошибка при попытке выполнения функции XML RPC.'\n'The Campcaster server configuration is invalid.': 'Неправильные настройки сервера Airtime.'\n'Pan Map': 'Панорамирование карты'\n'Open large map': 'Открыть в большом окне'\n'No news available.': 'Нет доступных новостей.'\n'Edit Polygon': 'Редактировать ломаную'\n'Create Polygon': 'Создать ломаную'\n'Communication error: ': 'Ошибка связи:'\n'Cant fetch news from $1': 'Не удалось получить новости из $1'\nLoading...: Загрузка...\nVersion: Версия\nLicense: Лицензия\nHomepage: Главная\n'Show original map': 'Показать исходную карту'\n'The uploaded archive does not contain an valid newscoop plugin.': 'Загруженный архив не содержит верный плагин Newscoop.'\nMap: Карта\nCenter: Центр\nTitle: Заголовок\n'Invalid security token.': 'Неверный маркер безопасности.'\n'Callback $1 is not callable.': 'Обратный звонок $1 недоступен'\n'Article translated to $4 ($5)': 'Статья переведена на $4 ($5)'\n'Article status changed from $1 to $2.': 'Статус статьи изменен с $1 на $2.'\n'Article deleted.': 'Статья удалена.'\n'Article created.': 'Статья создана.'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': 'Статья скопирована в статью Article $4 (издание $5, выпуск $6, рубрика $7 )'\n'Article URL': 'URL статьи'\n'Article Number': 'Номер статьи'\n'Access denied.': 'Отказано в доступе.'\n'Publish with issue': 'Опубликовать выпуск'\n'Article \"$1\" not processed': null\nunknown: неизвестно\nSwitch: Переключатель\nNumeric: Числовой\n'The uploaded file format is unsupported.': 'Формат файл для загрузки не поддерживается системой.'\n'The following fields are mandatory:': 'Данные поля обязательны для заполнения:'\n'Missing value for $1': 'Пропущено значение переменной $1'\n'Manage Plugins': 'Управлять прагинами'\n'* Marked fields are mandatory.': '* Отмеченные поля обязательны для заполнения'\n'$1 is of type $2': '$1 имеет тип $2'\n'Invalid resize width/height.': 'Невозможно изменить длину/ширину.'\n'Image type $1 is not supported.': 'Тип картинки $1 не поддерживается.'\n'The file uploaded is not an image.': 'Загруженный файл не является изображением.'\n'Could not delete record from the database.': 'Не удалось удалить запись из базы данных.'\n'template path': 'путь к шаблону'\n'short names': 'короткие имена'\n'Unable to fetch image from remote server.': 'Невозможно извлечь изображение из удаленного сервера.'\nLast: Последняя\nFirst: Первая\n'Single-line Text': Текст\n'Multi-line Text with WYSIWYG': 'Тело статьи'\n'URL $1 is invalid or is not an image.': 'URL $1 неверен или не является изображением.'\n'URL $1 is not an image.': 'URL $1 не является изображением.'\nclient:\n    added: 'Клиент добавлен'\n    notfound: 'Клиент не найден'\n    removed: 'Клиент удален'\npublicresources:\n    updated: 'Открытые элементы обновлены'\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: 'Открытые элементы'\n            clients: Клиенты\n        resources:\n            info: 'По умолчанию все элементы защищены файрволом, но вы можете выбрать те из них, доступ к которым хотите открыть'\n            api_docs: null\n            add_button: 'Добавить клиента'\n        clients:\n            table:\n                name: 'Имя клиента'\n                id: 'ID клиента'\n                secret: 'Секретный ключ'\n                trusted: 'Проверенный клиент?'\n                redirect: null\n                publication: Издание\n                actions: Операции\n                actions_buttons:\n                    remove: Удалить\n            actions:\n                remove:\n                    confirm: 'Вы действительно хотите удалить этого клиента?'\n        menu: API\n    form:\n        client:\n            label:\n                name: 'Выберите имя для клиента:'\n                publication: 'Выберите издание для клиента:'\n                redirectUris: null\n                trusted: 'Проверенный клиент? '\n                save: Сохранить\n        PublicResources:\n            label:\n                routes: 'Выберите элементы, доступ к которым хотите открыть:'\n                save: Сохранить\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.sh.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': 'Topik kreiran'\n'The topic name is already in use by another topic.': 'Ime za topik je već u upotrebi'\n'Complex Date': 'Složen datum'\nvertices: čvorovi\n'There was a problem trying to execute the XML RPC function.': 'Došlo je do problema pri pokušaju izvršenja XML RPC funkcije'\n'The Campcaster server configuration is invalid.': 'Podešavanja Kempkaster servera su neispravna'\n'Pan Map': 'Pomeraj mapu'\n'Open large map': 'Otvori veliku mapu'\n'No news available.': 'Nema dostupnih vesti'\n'Edit Polygon': 'Uredi poligon'\n'Create Polygon': 'Napravi poligon'\n'Communication error: ': 'Greška u komunikaciji'\n'Cant fetch news from $1': 'Nije moguće preuzeti vesti sa $1'\nLoading...: Učitavanje...\nVersion: Verzija\nLicense: Licenca\nHomepage: 'Početna strana'\n'Show original map': 'Prikaži originalnu mapu'\n'The uploaded archive does not contain an valid newscoop plugin.': 'Arhiva aplouda ne sadrži ispravan Newscoop plagin'\nMap: Mapa\nCenter: Centar\nTitle: Naslov\n'Invalid security token.': 'Pogrešan sigurnosni token'\n'Callback $1 is not callable.': 'Callback $1 is not callable.'\n'Article translated to $4 ($5)': 'Tekst je preveden u $4 ($5)'\n'Article status changed from $1 to $2.': 'Status teksta je promenjen iz $1 u $2.'\n'Article deleted.': 'Tekst je obrisan.'\n'Article created.': 'Tekst je napravljen.'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': 'Tekst je kopiran u tekst $4 (publikacija $5, izdanje $6, rubrika $7).'\n'Article URL': 'URL teksta'\n'Article Number': 'Broj teksta'\n'Access denied.': 'Pristup zabranjen.'\n'Publish with issue': 'Objavi zajedno sa izdanjem'\n'Article \"$1\" not processed': null\nunknown: nepoznato\nSwitch: Prekidač\nNumeric: 'Brojačna vrednost'\n'The uploaded file format is unsupported.': 'Format ulpoadovanog fajla nije podržan.'\n'The following fields are mandatory:': 'Sledeća polja su obavezna:'\n'Missing value for $1': 'Nedostaje vrednost za $1'\n'Manage Plugins': 'Upravljanje pluginovima'\n'* Marked fields are mandatory.': 'Polja označena * su obavezna'\n'$1 is of type $2': '$1 je za tip $2'\n'Invalid resize width/height.': 'Neispravne vrednosti za promenu dimenzija širina/visina'\n'Image type $1 is not supported.': 'Tip slike $1 nije podržan'\n'The file uploaded is not an image.': 'Uploadovani fajl nije slika.'\n'Could not delete record from the database.': 'Nije moguće obrisati zapis iz baze.'\n'template path': 'šablonska putanja'\n'short names': 'skraćeni nazivi'\n'Unable to fetch image from remote server.': 'Nije moguće pokupiti sliku sa udaljenog servera.'\nLast: Poslednji\nFirst: Prvi\n'Single-line Text': Tekst\n'Multi-line Text with WYSIWYG': 'Složen tekst'\n'URL $1 is invalid or is not an image.': 'URL $1 je neispravan ili nije slika'\n'URL $1 is not an image.': 'URL $1 nije slika.'\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: Klijenti\n        resources:\n            info: null\n            api_docs: null\n            add_button: 'Dodaj klijenta'\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: Publikacija\n                actions: Akcije\n                actions_buttons:\n                    remove: Ukloni\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: Snimi\n        PublicResources:\n            label:\n                routes: null\n                save: Snimi\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.sq.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': null\n'Open large map': null\n'No news available.': null\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': null\n'Cant fetch news from $1': null\nLoading...: null\nVersion: null\nLicense: null\nHomepage: null\n'Show original map': null\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: null\nCenter: null\nTitle: null\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': null\n'Article created.': null\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': null\n'Article \"$1\" not processed': null\nunknown: null\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': null\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': null\n'Could not delete record from the database.': null\n'template path': null\n'short names': null\n'Unable to fetch image from remote server.': null\nLast: null\nFirst: null\n'Single-line Text': null\n'Multi-line Text with WYSIWYG': null\n'URL $1 is invalid or is not an image.': null\n'URL $1 is not an image.': null\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: null\n                actions: null\n                actions_buttons:\n                    remove: null\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: null\n        PublicResources:\n            label:\n                routes: null\n                save: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.sr.yml",
    "content": "'No such article type': 'Не постоји такав тип чланка'\n'Multi-line Text': null\n'Filter saved': 'Филтер сачуван'\n'Filter not saved': 'Филтер није сачуван'\n'Not a color': 'Нема изабране боје'\n'No such field': 'Непостојеће поље'\n'Color saved': 'Изабрана боја сачувана'\n'Color not saved': 'Изабрана боја није сачувана'\n'Topic created': 'Топик креиран'\n'The topic name is already in use by another topic.': 'Име за топик је већ у употреби'\n'Complex Date': 'Сложен датум'\nvertices: чворови\n'There was a problem trying to execute the XML RPC function.': 'Дошло је до проблема при покушају извршења XML RPC функције'\n'The Campcaster server configuration is invalid.': 'Подешавања Кемпкастер сервера су неисправна'\n'Pan Map': 'Померај мапу'\n'Open large map': 'Отвори велику мапу'\n'No news available.': 'Нема доступних вести'\n'Edit Polygon': 'Уреди полигон'\n'Create Polygon': 'Направи полигон'\n'Communication error: ': 'Грешка у комуникацији'\n'Cant fetch news from $1': 'Није могуће преузети вести са $1'\nLoading...: Учитавање...\nVersion: Верзија\nLicense: Лиценца\nHomepage: 'Почетна страна'\n'Show original map': 'Прикажи оригиналну мапу'\n'The uploaded archive does not contain an valid newscoop plugin.': 'Архива аплоуда не садржи исправан Newscoop плагин'\nMap: Мапа\nCenter: Центар\nTitle: Наслов\n'Invalid security token.': 'Погрешан сигурносни токен'\n'Callback $1 is not callable.': 'Callback $1 is not callable.'\n'Article translated to $4 ($5)': 'Текст је преведен у $4 ($5)'\n'Article status changed from $1 to $2.': 'Статус текста је промењен из $1 у $2'\n'Article deleted.': 'Текст је обрисан'\n'Article created.': 'Текст је направљен'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': 'Текст је копиран у текст $4 (публикација $5, издање $6, рубрика $7).'\n'Article URL': 'УРЛ текста'\n'Article Number': 'Број текста'\n'Access denied.': 'Приступ забрањен'\n'Publish with issue': 'Објави заједно са издањем'\n'Article \"$1\" not processed': null\nunknown: непознато\nSwitch: Прекидач\nNumeric: 'Бројчана вредност'\n'The uploaded file format is unsupported.': 'Формат аплоудованог фајла није подржан.'\n'The following fields are mandatory:': 'Следећа поља су обавезна:'\n'Missing value for $1': 'Недостаје вредност за $1'\n'Manage Plugins': 'Управљање плагиновима'\n'* Marked fields are mandatory.': 'Поља означена са * су обавезна'\n'$1 is of type $2': '$1 је за тип $2'\n'Invalid resize width/height.': 'Неисправне вредности за промену димензија ширина/висина'\n'Image type $1 is not supported.': 'Тип слике $1 није подржан'\n'The file uploaded is not an image.': 'Аплоудовани фајл није слика.'\n'Could not delete record from the database.': 'Није могуће обрисати запис из базе.'\n'template path': 'Шаблонска путања'\n'short names': 'скраћени називи'\n'Unable to fetch image from remote server.': 'Није могуће покупити слику са удаљеног сервера.'\nLast: Последњи\nFirst: Први\n'Single-line Text': текст\n'Multi-line Text with WYSIWYG': 'Сложен текст'\n'URL $1 is invalid or is not an image.': 'УРЛ $1је неисправан или није слика'\n'URL $1 is not an image.': 'УРЛ $1 није слика.'\nclient:\n    added: 'Корисник је додат'\n    notfound: 'Тражени корисник није пронађен'\n    removed: 'Корисник је избрисан'\npublicresources:\n    updated: null\napi:\n    configure:\n        title: 'Подеси API - public resources'\n        title_content: 'Подеси API - public resources'\n        tabs:\n            resources: null\n            clients: Корисници\n        resources:\n            info: null\n            api_docs: null\n            add_button: 'Додај корисника'\n        clients:\n            table:\n                name: 'Име корисника'\n                id: 'Идентификациони број корисника'\n                secret: 'Тајна шифра'\n                trusted: 'Поверљив?'\n                redirect: 'Преусмери веб адресе'\n                publication: Публикација\n                actions: Акције\n                actions_buttons:\n                    remove: Уклони\n            actions:\n                remove:\n                    confirm: 'Да ли сте сигурни да желите да избришете корисника?'\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: 'Поверљив?'\n                save: Сними\n        PublicResources:\n            label:\n                routes: null\n                save: Сними\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.sv.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': null\n'Open large map': null\n'No news available.': null\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': null\n'Cant fetch news from $1': null\nLoading...: null\nVersion: null\nLicense: null\nHomepage: null\n'Show original map': null\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: null\nCenter: null\nTitle: null\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': null\n'Article created.': null\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': null\n'Article \"$1\" not processed': null\nunknown: null\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': null\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': 'Den uppladdade filen är inte en bild.'\n'Could not delete record from the database.': 'Kunde inte radera posten från databasen.'\n'template path': mallsökväg\n'short names': 'korta namn'\n'Unable to fetch image from remote server.': 'Kunde inte hämta bilden från servern.'\nLast: Sista\nFirst: Första\n'Single-line Text': Text\n'Multi-line Text with WYSIWYG': Artikeltext\n'URL $1 is invalid or is not an image.': 'URL $1 är ogiltig eller inte en bild.'\n'URL $1 is not an image.': 'URL $1 är inte en bild.'\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: Publikation\n                actions: Handlingar\n                actions_buttons:\n                    remove: 'Ta bort'\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: Spara\n        PublicResources:\n            label:\n                routes: null\n                save: Spara\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.tr.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': null\n'Open large map': null\n'No news available.': null\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': null\n'Cant fetch news from $1': null\nLoading...: null\nVersion: null\nLicense: null\nHomepage: null\n'Show original map': null\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: null\nCenter: null\nTitle: null\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': null\n'Article created.': null\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': null\n'Article \"$1\" not processed': null\nunknown: null\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': null\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': null\n'Could not delete record from the database.': null\n'template path': null\n'short names': null\n'Unable to fetch image from remote server.': null\nLast: null\nFirst: null\n'Single-line Text': null\n'Multi-line Text with WYSIWYG': null\n'URL $1 is invalid or is not an image.': null\n'URL $1 is not an image.': null\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: null\n                actions: null\n                actions_buttons:\n                    remove: null\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: null\n        PublicResources:\n            label:\n                routes: null\n                save: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.uk.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': 'Не кольорове'\n'No such field': 'Немає полів'\n'Color saved': 'Колір збережено'\n'Color not saved': 'Колір не збережено'\n'Topic created': 'Тема створена'\n'The topic name is already in use by another topic.': 'Назва вже існуе у іншій темі'\n'Complex Date': 'Комплексна дата'\nvertices: вершини\n'There was a problem trying to execute the XML RPC function.': 'Проблеми с виконанням XML RPC'\n'The Campcaster server configuration is invalid.': 'Конфігурація сервера Campcaster пошкоджена'\n'Pan Map': 'Панорама карти'\n'Open large map': 'Відкрити збільшену карту'\n'No news available.': 'Немає доступних новин'\n'Edit Polygon': 'Редагувати полігон'\n'Create Polygon': 'Створити полігон'\n'Communication error: ': 'Помилка зв’язку'\n'Cant fetch news from $1': 'Не вдалося отримати новини з $ 1'\nLoading...: Завантаження...\nVersion: Версія\nLicense: Ліцензія\nHomepage: 'Домашнья сторінка'\n'Show original map': 'Показати первинну карту'\n'The uploaded archive does not contain an valid newscoop plugin.': 'Завантажений архів не містить дійсних плагінів'\nMap: Карта\nCenter: Центр\nTitle: Заголовок\n'Invalid security token.': 'Не дійсний маркер безпеки'\n'Callback $1 is not callable.': 'Колбек $1 не є зворотним'\n'Article translated to $4 ($5)': 'Стаття перекладена на $4 ($5)'\n'Article status changed from $1 to $2.': 'Статус статті змінений з $1 на $2.'\n'Article deleted.': 'Стаття видалена.'\n'Article created.': 'Стаття створена'\n'Article copied to Article $4 (publication $5, issue $6, section $7).': 'Стаття скопійована як стаття $4 (публікація $5, випуск $6, секція $7).'\n'Article URL': 'посилання статті'\n'Article Number': 'номер статті'\n'Access denied.': 'Доступ заборонено'\n'Publish with issue': 'Опублікувати з випуском'\n'Article \"$1\" not processed': null\nunknown: невідомий\nSwitch: Перемикнути\nNumeric: Числовий\n'The uploaded file format is unsupported.': 'формат завантаженого файлу не підтримується'\n'The following fields are mandatory:': 'Наступні поля є обовязковими:'\n'Missing value for $1': 'не вистачае значення для $1'\n'Manage Plugins': 'Керування плагінами'\n'* Marked fields are mandatory.': '* відмічені поля є обовязковими:'\n'$1 is of type $2': '$1 це тип $2'\n'Invalid resize width/height.': 'Невірний розмір ширини / висоти.'\n'Image type $1 is not supported.': 'Тип зображення $1 не підтримується.'\n'The file uploaded is not an image.': 'Завантажений файл не є зображенням.'\n'Could not delete record from the database.': 'Не вдалося видалили запис з бази даних.'\n'template path': 'шлях до шаблону'\n'short names': 'коротке ім’я'\n'Unable to fetch image from remote server.': 'Неможливо отримати зображення з видаленого сервера.'\nLast: Останнє\nFirst: Перше\n'Single-line Text': 'Однорядковий текст'\n'Multi-line Text with WYSIWYG': 'Декількарядковий текст с WYSIWYG'\n'URL $1 is invalid or is not an image.': 'посилання $1 невірне або це не зображення'\n'URL $1 is not an image.': 'посилання  $1 не є зображенням'\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: Публікація\n                actions: Дії\n                actions_buttons:\n                    remove: Видалити\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: Зберегти\n        PublicResources:\n            label:\n                routes: null\n                save: Зберегти\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.vi.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': null\n'Open large map': null\n'No news available.': null\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': null\n'Cant fetch news from $1': null\nLoading...: null\nVersion: null\nLicense: null\nHomepage: null\n'Show original map': null\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: null\nCenter: null\nTitle: null\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': null\n'Article created.': null\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': null\n'Article \"$1\" not processed': null\nunknown: null\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': null\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': null\n'Could not delete record from the database.': null\n'template path': null\n'short names': null\n'Unable to fetch image from remote server.': null\nLast: null\nFirst: null\n'Single-line Text': null\n'Multi-line Text with WYSIWYG': null\n'URL $1 is invalid or is not an image.': null\n'URL $1 is not an image.': null\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: null\n                actions: null\n                actions_buttons:\n                    remove: null\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: null\n        PublicResources:\n            label:\n                routes: null\n                save: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.zh.yml",
    "content": "'No such article type': 没有这种文章类型\n'Multi-line Text': 多行文本\n'Filter saved': null\n'Filter not saved': null\n'Not a color': 不是一种颜色\n'No such field': 没有该领域\n'Color saved': 保存颜色设置\n'Color not saved': 颜色设置未保存\n'Topic created': 创建话题\n'The topic name is already in use by another topic.': 该话题名已被其他话题使用\n'Complex Date': 完整日期\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': 该Campcaster服务器配置无效\n'Pan Map': null\n'Open large map': 打开大地图\n'No news available.': 没有新闻。\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': '通讯错误:'\n'Cant fetch news from $1': null\nLoading...: 加载中...\nVersion: 版本\nLicense: 许可证\nHomepage: 主页\n'Show original map': 显示起始地图\n'The uploaded archive does not contain an valid newscoop plugin.': 上载的文档不包含有效的newscoop插件。\nMap: 地图\nCenter: 中心\nTitle: 标题\n'Invalid security token.': 无效的安全令牌\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': 文章删除。\n'Article created.': 文章创建。\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': 文章网址链接\n'Article Number': 文章编号\n'Access denied.': '拒绝访问。 '\n'Publish with issue': null\n'Article \"$1\" not processed': null\nunknown: 未知\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': null\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': '上传的文件不是图像。 '\n'Could not delete record from the database.': 无法从数据库中删除记录。\n'template path': '模板路径 '\n'short names': '短名字 '\n'Unable to fetch image from remote server.': '无法从远程服务器获取图像。 '\nLast: 最后\nFirst: '最初 '\n'Single-line Text': 单行文本\n'Multi-line Text with WYSIWYG': '所见即所得的多行文本 '\n'URL $1 is invalid or is not an image.': 'URL $1 无效或不是图像。'\n'URL $1 is not an image.': 'URL $1 不是图像。'\nclient:\n    added: '加入客户 '\n    notfound: 找不到客户\n    removed: 客户被删除\npublicresources:\n    updated: '公共资源已更新 '\napi:\n    configure:\n        title: '配置API - 公共资源 '\n        title_content: '配置API - 公共资源 '\n        tabs:\n            resources: ' 公共资源'\n            clients: 客户\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: 是否信任？\n                redirect: null\n                publication: 出版物\n                actions: null\n                actions_buttons:\n                    remove: null\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: 是否信任？\n                save: 保存\n        PublicResources:\n            label:\n                routes: null\n                save: 保存\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/api.zh_TW.yml",
    "content": "'No such article type': null\n'Multi-line Text': null\n'Filter saved': null\n'Filter not saved': null\n'Not a color': null\n'No such field': null\n'Color saved': null\n'Color not saved': null\n'Topic created': null\n'The topic name is already in use by another topic.': null\n'Complex Date': null\nvertices: null\n'There was a problem trying to execute the XML RPC function.': null\n'The Campcaster server configuration is invalid.': null\n'Pan Map': null\n'Open large map': null\n'No news available.': null\n'Edit Polygon': null\n'Create Polygon': null\n'Communication error: ': null\n'Cant fetch news from $1': null\nLoading...: null\nVersion: null\nLicense: null\nHomepage: null\n'Show original map': null\n'The uploaded archive does not contain an valid newscoop plugin.': null\nMap: null\nCenter: null\nTitle: null\n'Invalid security token.': null\n'Callback $1 is not callable.': null\n'Article translated to $4 ($5)': null\n'Article status changed from $1 to $2.': null\n'Article deleted.': null\n'Article created.': null\n'Article copied to Article $4 (publication $5, issue $6, section $7).': null\n'Article URL': null\n'Article Number': null\n'Access denied.': null\n'Publish with issue': null\n'Article \"$1\" not processed': null\nunknown: null\nSwitch: null\nNumeric: null\n'The uploaded file format is unsupported.': null\n'The following fields are mandatory:': null\n'Missing value for $1': null\n'Manage Plugins': 管理插件\n'* Marked fields are mandatory.': null\n'$1 is of type $2': null\n'Invalid resize width/height.': null\n'Image type $1 is not supported.': null\n'The file uploaded is not an image.': null\n'Could not delete record from the database.': null\n'template path': null\n'short names': null\n'Unable to fetch image from remote server.': null\nLast: null\nFirst: null\n'Single-line Text': null\n'Multi-line Text with WYSIWYG': null\n'URL $1 is invalid or is not an image.': null\n'URL $1 is not an image.': null\nclient:\n    added: null\n    notfound: null\n    removed: null\npublicresources:\n    updated: null\napi:\n    configure:\n        title: null\n        title_content: null\n        tabs:\n            resources: null\n            clients: null\n        resources:\n            info: null\n            api_docs: null\n            add_button: null\n        clients:\n            table:\n                name: null\n                id: null\n                secret: null\n                trusted: null\n                redirect: null\n                publication: 出版物\n                actions: null\n                actions_buttons:\n                    remove: null\n            actions:\n                remove:\n                    confirm: null\n        menu: null\n    form:\n        client:\n            label:\n                name: null\n                publication: null\n                redirectUris: null\n                trusted: null\n                save: 儲存\n        PublicResources:\n            label:\n                routes: null\n                save: 儲存\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.ar.yml",
    "content": "Recommended: 'موصى به'\n'There are no more comments': 'لا يوجد المزيد من التعليقات'\n'Show more comments': 'إعرض المزيد من التعليقات'\nUnrecommend: 'إلغاء التوصية'\n'Save comment': 'إحفظ التعليق'\nRecommend: 'قم بالتوصية'\n'Comment updated.': 'تم تحديث التعليق.'\n'Comment saved.': 'تم حفظ التعليق'\n'Comments updated.': 'تم تحديث التعليقات'\n'Post a Comment': 'اكتب تعليق'\nFrom: من\n'Reply to comment': 'الرد على التعليق'\n'No comments posted.': 'لا توجد تعليقات مكتوبة'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.az.yml",
    "content": "Recommended: 'Tövsiyyə Olunur'\n'There are no more comments': 'Başqa şərh yoxdur'\n'Show more comments': 'Daha çox şərh göstər'\nUnrecommend: 'Tövsiyyə Etmə'\n'Save comment': 'Şərhi saxla'\nRecommend: 'Tövsiyyə Et'\n'Comment updated.': 'Şərh yeniləndi.'\n'Comment saved.': 'Şərh saxlandı.'\n'Comments updated.': 'Şərhlər yeniləndi.'\n'Post a Comment': 'Şərh Yaz'\nFrom: Göndərən\n'Reply to comment': 'Şərhə cavab yaz'\n'No comments posted.': 'Şərh yazılmayıb.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.be.yml",
    "content": "Recommended: Рэкамендуецца\n'There are no more comments': 'Няма больш каментароў'\n'Show more comments': 'Паказаць больш каментароў'\nUnrecommend: 'Не рэкамендаваць'\n'Save comment': 'Захаваць каментар'\nRecommend: Рэкамендаваць\n'Comment updated.': 'Каментар абноўлены.'\n'Comment saved.': 'Каментар захаваны.'\n'Comments updated.': 'Каментары абноўленыя.'\n'Post a Comment': 'Адправіць каментар'\nFrom: З\n'Reply to comment': 'Адказаць на камэнтар'\n'No comments posted.': 'Няма адпраўленых камэнтароў.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.bn.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.cs.yml",
    "content": "Recommended: Doporučené\n'There are no more comments': 'Nejsou tam další komentáře'\n'Show more comments': 'Ukázat více komentářů'\nUnrecommend: Nedoporučeno\n'Save comment': 'Uložit komentář'\nRecommend: Doporučeno\n'Comment updated.': 'Komentář aktualizován.'\n'Comment saved.': 'Komentář uložen.'\n'Comments updated.': 'Komentáře jsou aktualizovány.'\n'Post a Comment': 'Vložte komentář'\nFrom: Od\n'Reply to comment': 'Odpovědět na komentář'\n'No comments posted.': 'Žádné komentáře'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.da.yml",
    "content": "Recommended: Anbefalet\n'There are no more comments': 'Der er ikke flere kommentarer'\n'Show more comments': 'Vis flere kommentarer'\nUnrecommend: 'Anbefal ikke'\n'Save comment': 'Gem kommentar'\nRecommend: Anbefalet\n'Comment updated.': 'Kommentaren er opdateret.'\n'Comment saved.': 'Kommentaren er gemt.'\n'Comments updated.': 'Kommentarer opdateret'\n'Post a Comment': 'Skriv en kommentar'\nFrom: Fra\n'Reply to comment': 'Svar på komentaren'\n'No comments posted.': 'Der er ingen kommentarer'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.de.yml",
    "content": "Recommended: Empfohlen\n'There are no more comments': 'Es sind keine weiteren Kommentare vorhanden. '\n'Show more comments': 'Zeige mehr Kommentare'\nUnrecommend: 'Empfehlung zurücknehmen'\n'Save comment': 'Kommentar speichern'\nRecommend: Empfehlen\n'Comment updated.': 'Kommentar aktualisiert.'\n'Comment saved.': 'Kommentar gespeichert. '\n'Comments updated.': 'Kommentare aktualisiert.'\n'Post a Comment': 'Kommentar abschicken'\nFrom: Von\n'Reply to comment': 'Kommentar beantworten'\n'No comments posted.': 'Keine Kommentare vorhanden.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.de_AT.yml",
    "content": "Recommended: Empfohlen\n'There are no more comments': 'Es sind keine weiteren Kommentare vorhanden. '\n'Show more comments': 'Zeige mehr Kommentare'\nUnrecommend: 'Empfehlung zurücknehmen'\n'Save comment': 'Kommentar speichern'\nRecommend: Empfehlen\n'Comment updated.': 'Kommentar aktualisiert.'\n'Comment saved.': 'Kommentar gespeichert. '\n'Comments updated.': 'Kommentare aktualisiert.'\n'Post a Comment': 'Kommentar abschicken'\nFrom: Von\n'Reply to comment': 'Kommentar beantworten'\n'No comments posted.': 'Keine Kommentare vorhanden.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.el.yml",
    "content": "Recommended: Προτινόμενο\n'There are no more comments': 'Δεν υπάρχουν άλλα σχόλια'\n'Show more comments': 'Εμφάνιση περισσότερων σχολίων'\nUnrecommend: 'Δεν συνιστάται'\n'Save comment': 'Αποθήκευση σχολίου'\nRecommend: Συνιστάται\n'Comment updated.': 'Το σχόλιο ενημερώθηκε.'\n'Comment saved.': 'Το σχόλιο αποθηκεύτηκε.'\n'Comments updated.': 'Τα σχόλια ενημερώθηκαν.'\n'Post a Comment': Σχολιάστε\nFrom: Από\n'Reply to comment': 'Απάντηση σε σχόλιο'\n'No comments posted.': 'Δεν υπάρχουν σχόλια.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.en.yml",
    "content": "Recommended: Recommended\n'There are no more comments': 'There are no more comments'\n'Show more comments': 'Show more comments'\nUnrecommend: Unrecommend\n'Save comment': 'Save comment'\nRecommend: Recommend\n'Comment updated.': 'Comment updated.'\n'Comment saved.': 'Comment saved.'\n'Comments updated.': 'Comments updated.'\n'Post a Comment': 'Post a Comment'\nFrom: From\n'Reply to comment': 'Reply to comment'\n'No comments posted.': 'No comments posted.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.en_GB.yml",
    "content": "Recommended: Recommended\n'There are no more comments': 'There are no more comments'\n'Show more comments': 'Show more comments'\nUnrecommend: Unrecommend\n'Save comment': 'Save comment'\nRecommend: Recommend\n'Comment updated.': 'Comment updated.'\n'Comment saved.': 'Comment saved.'\n'Comments updated.': 'Comments updated.'\n'Post a Comment': 'Post a Comment'\nFrom: From\n'Reply to comment': 'Reply to comment'\n'No comments posted.': 'No comments posted.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.es.yml",
    "content": "Recommended: Recomendado\n'There are no more comments': 'No hay más comentarios'\n'Show more comments': 'Mostrar más comentarios'\nUnrecommend: 'No recomendar'\n'Save comment': 'Guardar comentario'\nRecommend: Recomendar\n'Comment updated.': 'Comentario actualizado'\n'Comment saved.': 'Comentario guardado'\n'Comments updated.': 'Se actualizaron los comentarios.'\n'Post a Comment': 'Publicar un comentario'\nFrom: De\n'Reply to comment': 'Responder al comentario'\n'No comments posted.': 'No se han publicado comentarios.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.es_AR.yml",
    "content": "Recommended: Recomendado\n'There are no more comments': 'No hay más comentarios'\n'Show more comments': 'Mostrar más comentarios'\nUnrecommend: 'No recomendado'\n'Save comment': 'Guardar comentario'\nRecommend: Recomendado\n'Comment updated.': 'Comentario actualizado.'\n'Comment saved.': 'Comentario guardado.'\n'Comments updated.': 'Comentarios actualizados.'\n'Post a Comment': 'Publicar un comentario'\nFrom: De\n'Reply to comment': 'Responder al comentario'\n'No comments posted.': 'No hay comentarios publicados.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.fa.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.fa_AF.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.fr.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.he.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.hr.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.hu.yml",
    "content": "Recommended: Ajánlott\n'There are no more comments': 'Nincs több hozzászólás'\n'Show more comments': 'További hozzászólások'\nUnrecommend: 'Ajánlat visszavonása'\n'Save comment': 'Hozzászólás mentése'\nRecommend: Ajánlás\n'Comment updated.': 'A hozzászólás javítása megtörtént.'\n'Comment saved.': 'A hozzászólás mentése megtörtént.'\n'Comments updated.': 'A hozzászólások frissítése megtörtént.'\n'Post a Comment': 'Hozzászólás küldése'\nFrom: null\n'Reply to comment': 'Válasz a hozzászólásra'\n'No comments posted.': 'Nem érkezett hozzászólás.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.hy.yml",
    "content": "Recommended: null\n'There are no more comments': 'Ուրիշ մեկնաբանություններ չկան'\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.hy_AM.yml",
    "content": "Recommended: null\n'There are no more comments': 'Ուրիշ մեկնաբանություններ չկան'\n'Show more comments': null\nUnrecommend: null\n'Save comment': 'Պահպանել մեկնաբանությունը'\nRecommend: null\n'Comment updated.': 'Մեկնաբանությունը թարմացված է։'\n'Comment saved.': 'Մեկնաբանությունը պահպանված է։'\n'Comments updated.': 'Մեկնաբանությունները թարմացված են։'\n'Post a Comment': 'Թողնել մեկնաբանություն։'\nFrom: null\n'Reply to comment': 'Պատասխանել մեկնաբանությանը։'\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.id.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.it.yml",
    "content": "Recommended: Consigliato\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: Sconsiglia\n'Save comment': 'Salva commento'\nRecommend: Consiglia\n'Comment updated.': 'Commento aggiornato.'\n'Comment saved.': 'Commento salvato.'\n'Comments updated.': 'Commenti aggiornati.'\n'Post a Comment': 'Pubblica un commento'\nFrom: Da\n'Reply to comment': 'Rispondi al commento'\n'No comments posted.': 'Nessun commento pubblicato.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.ka.yml",
    "content": "Recommended: რეკომენდირებული\n'There are no more comments': 'მეტი კომენტარები არ არის'\n'Show more comments': 'მეტი კომენტარების ნახვს'\nUnrecommend: 'რეკომენდაციის უკუგდება'\n'Save comment': 'კომენტარის დამახსოვრება'\nRecommend: 'რეკომენდაციის მიცემა'\n'Comment updated.': 'კომენტარი განახლებულია. '\n'Comment saved.': 'კომენტარი დამახსოვრდა.'\n'Comments updated.': 'კომენტარები განახლდა.'\n'Post a Comment': 'კომენტარის დატოვება'\nFrom: '-დან'\n'Reply to comment': 'კომენტარზე პასუხის გაცემა'\n'No comments posted.': 'კომენტარი ჯერ არ დაწერილა.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.ko.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.ku.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.lv.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.mr.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.nb_NO.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.nl.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.pa.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.pl.yml",
    "content": "Recommended: Polecany\n'There are no more comments': 'Nie ma więcej komentarzy'\n'Show more comments': 'Pokaż więcej komentarzy'\nUnrecommend: 'Niepolecany '\n'Save comment': 'Zapisz komentarz'\nRecommend: Poleć\n'Comment updated.': 'Komentarz zaktualizowany.'\n'Comment saved.': 'Komentarz zapisany.'\n'Comments updated.': 'Komentarze uaktulnione.'\n'Post a Comment': 'Dodaj komentarz'\nFrom: Od\n'Reply to comment': 'Odpowiedz na komentarz'\n'No comments posted.': 'Brak komentarzy.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.ps.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.pt.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.pt_BR.yml",
    "content": "Recommended: Recomendado\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: 'Não recomendo'\n'Save comment': 'Salvar o comentário'\nRecommend: Recomendo\n'Comment updated.': 'Comentário atualizado.'\n'Comment saved.': 'Comentário guardado.'\n'Comments updated.': 'Comentários atualizados.'\n'Post a Comment': 'Postar o comentário'\nFrom: De\n'Reply to comment': 'Responder ao comentário'\n'No comments posted.': 'Nenhum comentário postado.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.ro.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': 'Răspunde la comentariu'\n'No comments posted.': 'Nici un comentariu publicat.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.ru.yml",
    "content": "Recommended: Рекомендовано\n'There are no more comments': 'Больше комментариев нет'\n'Show more comments': 'Показать больше комментариев'\nUnrecommend: 'Не рекомендовать'\n'Save comment': 'Сохранить комментарий'\nRecommend: Рекомендовать\n'Comment updated.': 'Комментарий обновлен.'\n'Comment saved.': 'Комментарий сохранен.'\n'Comments updated.': 'Комментарии обновлены.'\n'Post a Comment': 'Отправить комментарий'\nFrom: Из\n'Reply to comment': 'Ответить на комментарий'\n'No comments posted.': 'Нет отправленных комментариев.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.sh.yml",
    "content": "Recommended: Preporučeni\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: Nepreporučen\n'Save comment': 'Snimi komentar'\nRecommend: Preporučen\n'Comment updated.': 'Komentar izmenjen.'\n'Comment saved.': 'Komentar snimljen.'\n'Comments updated.': 'Komentari izmenjeni.'\n'Post a Comment': 'Pošalji komentar'\nFrom: Od\n'Reply to comment': 'Odgovorite na komentar'\n'No comments posted.': 'Nema poslatih komentara.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.sq.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.sr.yml",
    "content": "Recommended: Препоручени\n'There are no more comments': 'Нема додатних коментара'\n'Show more comments': 'Учитај још коментара'\nUnrecommend: Непрепоручен\n'Save comment': 'Сними коментар'\nRecommend: Препоручен\n'Comment updated.': 'Коментар измењен.'\n'Comment saved.': 'Коментар снимљен.'\n'Comments updated.': 'Коментари измењени.'\n'Post a Comment': 'Пошаљи коментар'\nFrom: Од\n'Reply to comment': 'Одговорите на коментар'\n'No comments posted.': 'Нема послатих коментара.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.sv.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.tr.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.uk.yml",
    "content": "Recommended: Рекомендовано\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: 'Не рекомендувати'\n'Save comment': 'Зберегти коментарій'\nRecommend: Рекомендувати\n'Comment updated.': 'Коментарій оновлено.'\n'Comment saved.': 'Коментарій збережено.'\n'Comments updated.': 'Коментарії оновлено.'\n'Post a Comment': 'Відправити коментарій'\nFrom: З\n'Reply to comment': 'Відповісти на коментар'\n'No comments posted.': 'Немає відправлених коментарів.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.vi.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.zh.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_comments.zh_TW.yml",
    "content": "Recommended: null\n'There are no more comments': null\n'Show more comments': null\nUnrecommend: null\n'Save comment': null\nRecommend: null\n'Comment updated.': null\n'Comment saved.': null\n'Comments updated.': null\n'Post a Comment': null\nFrom: null\n'Reply to comment': null\n'No comments posted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.ar.yml",
    "content": "'Files attached.': 'تم إرفاق الملفات.'\n'File $1 unattached.': 'ملف $1 منفصل.'\n'Attach new file': 'أرفق ملف جديد'\n'Attach existing file': 'أرفق ملف موجود'\n'$1 file/s attached to article': '$1 ملف(-ات) مرفق(ة) على المقال'\n'File attached.': 'تم إرفاق الملف.'\n'The maximum file upload size was not configured in Newscoop.': 'لم يتم تهيئة الحد الأقصى للحجم لرفع الملفات في نيوسكوب.'\n'File $1 $2 unattached': 'ملف  $1 $2 غير مرفق'\n'File $1 $2 attached to article': 'ملف  $1 $2 مرفق على المقالة'\n'Unable to add attachment.': 'غير قادر على إضافة المرفق.'\n'There was a problem uploading the file.': 'حدثت مشكلة في رفع الملف.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'كان جزئيا فقط تحميل الملف الذي تم تحميله. وهذا أمر شائع عند الحد الأقصى للوقت برفع ملف منخفض على النقيض من حجم الملف الذي تحاول الإدخال. يتم تحديد أقصى وقت لإدخال في ملف php.ini'\n'The file exceeds the allowed max file size.': 'يتجاوز الملف الحد الأقصى المسموح لحجم الملف.'\n'Please make sure you upgraded the database correctly: run $1 in a shell.': 'يرجى التأكد من تحسين قاعدة البيانات بشكل صحيح: تشغيل $1 في قذيفة.'\n'Maximum Upload Size': 'الحد الأقصى لحجم ملف مرفوع'\n'File Size': 'حجم ملف'\n'File Name': 'اسم ملف'\nDownload: حمل\n'File $1 updated.': 'تم تحديث ملف $1.'\n'Edit article': 'عدل المقال'\n'You do not have the right to delete file attachments.': 'ليس لديك الحق في إزالة الملفات المرفقة ـ'\n'You must select a file to upload.': 'يجب عليك تحديد ملف للرفع.'\n'You do not have the right to delete files.': 'ليس لديك الحق في إزالة ملفات ـ'\n'You do not have the right to change the article.': 'ليس لديك الحق في تغيير المقال ـ'\n'You do not have the right to change files.': 'ليس لديك الحق في تغيير ملفات ـ'\n'You do not have the right to add files.': 'ليس لديك الحق في إضافة ملفات.'\n'Should this file only be available for this translation of the article, or for all translations?': 'هل يجب أن يكون هذا الملف متوفر لهذه الترجمة من المقال، أم لجميع الترجمات؟'\n'Please enter a description for the file.': 'يرجى الإدخال وصفاً للملف.'\n'Open in the browser': 'إفتح في المتصفح'\n'Only this translation': 'فقط هذه الترجمة'\n'File information': 'معلومات الملف'\n'Do you want this file to open in the users browser, or to automatically download?': 'هل تريد لهذا الملف أن يفتح بمتصفح المستخدم ام يبدأ بتنزيله بشكل تلقائي؟'\n'Change file information': 'غير معلومات الملف'\n'Automatically download': 'حمل بشكل تلقائي'\nAttachments: مرفقات\n'Attachment does not exist.': 'المرفق غير موجود'\n'Attach File to Article': 'أرفق الملف بالمقال'\n'All translations': 'كل الترجمات'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.az.yml",
    "content": "'Files attached.': 'Fayllar əlavə edildi.'\n'File $1 unattached.': 'Əlavə edilmiş $1 faylı çıxarıldı.'\n'Attach new file': 'Yeni fayl əlavə et'\n'Attach existing file': 'Mövcud faylı əlavə et'\n'$1 file/s attached to article': 'Məqaləyə $1 fayl əlavə edildi'\n'File attached.': 'Fayl əlavə edildi.'\n'The maximum file upload size was not configured in Newscoop.': 'Newscoop-da yüklənəcək faylın maksimal ölçüsü quraşdırılmayıb.'\n'File $1 $2 unattached': 'Əlavə edilmiş $1 $2 faylı çıxarıldı'\n'File $1 $2 attached to article': '$1 $2 faylı məqaləyə əlavə edildi'\n'Unable to add attachment.': 'Əlavə fayl daxil etmək mümkün deyil.'\n'There was a problem uploading the file.': 'Faylın yüklənməsi ilə bağlı problem var idi.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Fayl yarımçıq yüklənmişdir. Adətən bu hadisə yükləmək istədiyiniz faylın ölçüsü ilə onun yüklənəcəyi zaman arasında tərs mütənasiblik olduqda baş verir. Faylın maksimal yüklənmə zamanı php.ini-də təqdim edilir'\n'The file exceeds the allowed max file size.': 'Faylın ölçüsü icazə verilən maksimal ölçünü keçir.'\n'Please make sure you upgraded the database correctly: run $1 in a shell.': 'Lütfən, məlumat bazasını düzgün təkmilləşdirdiyinə əmin ol: $1 çərçivədə işə salınsın.'\n'Maximum Upload Size': 'Maksimal Yükləmə Ölçüsü'\n'File Size': 'Faylın Ölçüsü'\n'File Name': 'Faylın Adı'\nDownload: Endir\n'File $1 updated.': '$1 faylı yeniləndi.'\n'Edit article': 'Məqaləni dəyiş'\n'You do not have the right to delete file attachments.': 'Əlavə edilmiş faylları silmək ixtiyarın yoxdur.'\n'You must select a file to upload.': 'Yükləmək üçün fayl seçməlisən.'\n'You do not have the right to delete files.': 'Faylları silməyə ixtiyarın yoxdur.'\n'You do not have the right to change the article.': 'Məqaləni dəyişməyə ixtiyarın yoxdur.'\n'You do not have the right to change files.': 'Faylları dəyişməyə ixtiyarın yoxdur.'\n'You do not have the right to add files.': 'Fayl əlavə etməyə ixtiyarın yoxdur.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Bu fayl məqalənin yalnız mövcud tərcüməsinə, yoxsa bütün tərcümələrinə aiddir?'\n'Please enter a description for the file.': 'Lütfən, fayl üçün izahat yazın.'\n'Open in the browser': 'Brauzerdə aç'\n'Only this translation': 'Yalnız bu tərcümə'\n'File information': 'Fayl məlumatı'\n'Do you want this file to open in the users browser, or to automatically download?': 'Bu faylın istifadəçi brauzerdə açılmasını, yoxsa avtomatik endirilməsini istəyirsən?'\n'Change file information': 'Fayl məlumatını dəyiş'\n'Automatically download': 'Avtomatik endirilmə'\nAttachments: 'Əlavə fayllar'\n'Attachment does not exist.': 'Əlavə fayl mövcud deyil.'\n'Attach File to Article': 'Məqaləyə Fayl Əlavə Et'\n'All translations': 'Bütün tərcümələr'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.be.yml",
    "content": "'Files attached.': 'Файлы далучаныя.'\n'File $1 unattached.': 'Файл $ 1 далучаны.'\n'Attach new file': 'Далучыць новы файл'\n'Attach existing file': 'Далучыць існуючы файл'\n'$1 file/s attached to article': '$1 файлаў далучана'\n'File attached.': 'Файл далучаны.'\n'The maximum file upload size was not configured in Newscoop.': 'Максімальны памер загружанага файла быў не канфігураваны ў наладах Newscoop.'\n'File $1 $2 unattached': 'Файл $1 $2 адлучаны'\n'File $1 $2 attached to article': 'Файл  $1 $2 прымацаваны да артыкулу'\n'Unable to add attachment.': 'Немагчыма дадаць файл.'\n'There was a problem uploading the file.': 'Праблема загрузкі файла.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Загружаны файл захаваны на сервер часткова. Гэта звязана з тым, што максімальна дапушчальны час загрузкі файла пераўзыходзіць час, неабходны для загрузкі гэтага файла. Максімальны час загрузкі вызначаны ў файле php.ini'\n'The file exceeds the allowed max file size.': 'Памер гэтага файла пераўзыходзіць дапушчальны.'\n'Please make sure you upgraded the database correctly: run $1 in a shell.': 'Калі ласка пераканайцеся, што Вы правільна абнавілі базу дадзеных: запусціце $1 у абалонцы.'\n'Maximum Upload Size': 'Максімальны памер загружанага файла'\n'File Size': 'Памер файла'\n'File Name': 'Імя файла'\nDownload: Загрузіць\n'File $1 updated.': 'Файл $1 абноўлены. '\n'Edit article': 'Рэдагаваць артыкул'\n'You do not have the right to delete file attachments.': 'Вы ня маеце права  выдаляць прыкладзены файл.'\n'You must select a file to upload.': 'Вы павiнны выбраць файл для загрузкi.'\n'You do not have the right to delete files.': 'Вы ня маеце права выдаляць файлы.'\n'You do not have the right to change the article.': 'Вы ня маеце права зьмяняць зьмест артыкула.'\n'You do not have the right to change files.': 'Вы ня маеце права зьмяняць файлы.'\n'You do not have the right to add files.': 'Вы ня маеце права дадаваць файлы.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Гэты файл павiнен быць даступны толькi для гэтага перакладу цi для ўсiх перакладаў?'\n'Please enter a description for the file.': 'Калi ласка, стварыце апiсаньне для файла.'\n'Open in the browser': 'Адкрыць у браўзэре'\n'Only this translation': 'Толькi гэты пераклад'\n'File information': 'Iнфармацыя аб файле.'\n'Do you want this file to open in the users browser, or to automatically download?': 'Цi Вы жадаеце, штоб гэты файл адкрываўся ў браўзэре карыстальнiка цi аўтаматычна загружаўся'\n'Change file information': 'Зьмянiць iнфармацыю аб файле'\n'Automatically download': 'Аўтаматычная загрузка'\nAttachments: Дадаткі\n'Attachment does not exist.': 'Дадатку не icнye.'\n'Attach File to Article': 'Прымацаваць файл да артыкула'\n'All translations': 'Усе пераклады'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.bn.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: null\n'File $1 updated.': null\n'Edit article': null\n'You do not have the right to delete file attachments.': null\n'You must select a file to upload.': null\n'You do not have the right to delete files.': null\n'You do not have the right to change the article.': null\n'You do not have the right to change files.': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file.': null\n'Open in the browser': null\n'Only this translation': null\n'File information': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Change file information': null\n'Automatically download': null\nAttachments: null\n'Attachment does not exist.': null\n'Attach File to Article': null\n'All translations': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.cs.yml",
    "content": "'Files attached.': 'Soubory jsou přiloženy.'\n'File $1 unattached.': 'Soubor $1 není přiložen.'\n'Attach new file': 'Přiložit nový soubor'\n'Attach existing file': 'Přiložit existující soubor'\n'$1 file/s attached to article': '$1 soubor(y) přiložen(y) ke článku'\n'File attached.': 'Soubor je přiložen.'\n'The maximum file upload size was not configured in Newscoop.': 'Maximální velikost nahrávaného souboru nebyla v Newscoopu nastavena.'\n'File $1 $2 unattached': 'Soubor $1 $2 nepřipojen'\n'File $1 $2 attached to article': 'Soubor $1 $2 připojen ke článku'\n'Unable to add attachment.': 'Nezdařilo se přidat přílohu.'\n'There was a problem uploading the file.': 'Vyskytl se problém při nahrávání souboru.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Nahrávaný soubor není celý. K tomuto dochází, kdyžje překročen maximální povolený čas k nahrání souboru. Maximalní čas lze upravit v php.ini.'\n'The file exceeds the allowed max file size.': 'Soubor překračuje maximální povolenou velikost.'\n'Please make sure you upgraded the database correctly: run $1 in a shell.': 'Prosím ujistěte se, že jste databázi aktualizovali správně: spusťte $1 v příkazovém řádku.'\n'Maximum Upload Size': 'Maximální velikost nahávaného souboru'\n'File Size': 'Velikost Souboru'\n'File Name': 'Název Souboru'\nDownload: Stáhnout\n'File $1 updated.': 'Soubor $1 aktualizován.'\n'Edit article': 'Upravit článek'\n'You do not have the right to delete file attachments.': 'Nemáte oprávnění mazat přílohy.'\n'You must select a file to upload.': 'Zvolte soubor k nahrání.'\n'You do not have the right to delete files.': 'Nemáte oprávnění mazat soubory.'\n'You do not have the right to change the article.': 'Nemáte oprávnění měnit článek.'\n'You do not have the right to change files.': 'Nemáte oprávnění měnit soubory.'\n'You do not have the right to add files.': 'Nemáte oprávnění přidávat soubory.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Měl by tento soubor být dostupný pouze pro tento překlad článku nebo pro všechny.'\n'Please enter a description for the file.': 'Prosím vložte popis tohoto souboru.'\n'Open in the browser': 'Otevřít v prohlížeči.'\n'Only this translation': 'Pouze tento překlad'\n'File information': 'Informace o souboru'\n'Do you want this file to open in the users browser, or to automatically download?': 'Chcete, aby se tento soubor otevíral v prohlížeči nebo se automaticky stáhl.'\n'Change file information': 'Změnit informace o souboru'\n'Automatically download': 'Automaticky stáhnout'\nAttachments: Přílohy\n'Attachment does not exist.': 'Příloha neexistuje.'\n'Attach File to Article': 'Přiložit Soubor k Článku'\n'All translations': 'Všechny překlady'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.da.yml",
    "content": "'Files attached.': 'Filer vedhæftet.'\n'File $1 unattached.': 'Fil $1 fjernet.'\n'Attach new file': 'Vedhæft ny fil'\n'Attach existing file': 'Vedhæft eksisterende fil'\n'$1 file/s attached to article': '$1 fil(er) vedhæftet'\n'File attached.': 'Fil vedhæftet.'\n'The maximum file upload size was not configured in Newscoop.': 'Maksimal fil upload størrelse er ikke indstillet i Newscoop.'\n'File $1 $2 unattached': 'Fil $1 $2 fjernet.'\n'File $1 $2 attached to article': 'Fil $1 $2 vedhæftet'\n'Unable to add attachment.': 'Kunne ikke tilføje vedhæftning.'\n'There was a problem uploading the file.': 'Filen kunne ikke uploades.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Filen blev kun delvist uploadet. Dette er almindeligt når den tilladte tid til upload er lav i forhold til filens størrelse. Den tilladte tid indstilles i php.ini'\n'The file exceeds the allowed max file size.': 'Filen er for stor.'\n'Please make sure you upgraded the database correctly: run $1 in a shell.': 'Kontroller at du har opgraderet databasen korrekt: Kør $1 i en terminal.'\n'Maximum Upload Size': 'Maksimal filstørrelse'\n'File Size': 'Fil størrelse'\n'File Name': 'Fil navn'\nDownload: Download\n'File $1 updated.': 'Fil $1 opdateret.'\n'Edit article': 'Rediger artikel'\n'You do not have the right to delete file attachments.': 'Du har ikke rettigheder til at slette vedhæftede filer.'\n'You must select a file to upload.': 'Vælg fil til upload.'\n'You do not have the right to delete files.': 'Du har ikke rettigheder til at slette filer.'\n'You do not have the right to change the article.': 'Du har ikke rettigheder til at ændre artiklen.'\n'You do not have the right to change files.': 'Du har ikke rettigheder til at filer.'\n'You do not have the right to add files.': 'Du har ikke rettigheder til at tilføje filer.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Skal filen kun bruges til denne oversættelse af artiklen eller til alle oversættelser?'\n'Please enter a description for the file.': 'Giv en beskrivelse af filen.'\n'Open in the browser': 'Åben i browseren'\n'Only this translation': 'Kun denne oversættelse'\n'File information': 'Fil information'\n'Do you want this file to open in the users browser, or to automatically download?': 'Skal filen åbne i brugerens browser eller downloades automatisk?'\n'Change file information': 'Rediger fil information'\n'Automatically download': 'Download automatisk'\nAttachments: Vedhæftninger\n'Attachment does not exist.': 'Vedhæftningen findes ikke.'\n'Attach File to Article': 'Vedhæft fil'\n'All translations': 'Alle oversættelser'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.de.yml",
    "content": "'Files attached.': 'Dateien angehängt'\n'File $1 unattached.': 'Datei $1 ist nicht angehängt.'\n'Attach new file': 'Neue Datei anhängen'\n'Attach existing file': 'Existierende Datei anhängen'\n'$1 file/s attached to article': '$1 Datei/en an Artikel angehängt.'\n'File attached.': 'Datei angehängt.'\n'The maximum file upload size was not configured in Newscoop.': 'Die maximale Dateigröße zum Hochladen wurde nicht in Newscoop konfiguriert.'\n'File $1 $2 unattached': 'Datei $1 $2 nicht angehängt.'\n'File $1 $2 attached to article': 'Datei $1 $2 an den Artikel angehängt.'\n'Unable to add attachment.': 'Anhang konnte nicht hinzugefügt werden.'\n'There was a problem uploading the file.': 'Probleme beim Hochladen der Datei.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Die Datei wurde nur teilweise hochgeladen. Dies passiert wenn die Höchstdauer für das Hochladen der Datei im Vergleich zur Dateigröße zu kurz ist. Die Höchstdauer ist in php.ini festgelegt.'\n'The file exceeds the allowed max file size.': 'Die Datei überschreitet die maximal zulässige Dateigröße.'\n'Please make sure you upgraded the database correctly: run $1 in a shell.': 'Bitte sicherstellen, dass die Datenbank korrekt aktualisiert wurde. Führen Sie $1 in einer Shell aus.'\n'Maximum Upload Size': 'Maximale Dateigröße zum Hochladen'\n'File Size': Dateigröße\n'File Name': Dateiname\nDownload: Herunterladen\n'File $1 updated.': 'Datei $1 aktualisiert.'\n'Edit article': 'Artikel bearbeiten'\n'You do not have the right to delete file attachments.': 'Keine Berechtigung Anlagen zu löschen.'\n'You must select a file to upload.': 'Datei zum Hochladen auswählen.'\n'You do not have the right to delete files.': 'Sie haben keine Zugriffsrechte zum Löschen von Dateien.'\n'You do not have the right to change the article.': 'Sie haben keine Berechtigung, den Artikel zu ändern.'\n'You do not have the right to change files.': 'Sie haben keine Berechtigung, Dateien zu ändern.'\n'You do not have the right to add files.': 'Sie haben keine Berechtigung, Dateien hinzuzufügen.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Soll diese Datei nur für diese Übersetzung des Artikels verfügbar sein oder für alle Übersetzungen?'\n'Please enter a description for the file.': 'Geben Sie eine Beschreibung der Datei ein.'\n'Open in the browser': 'Im Browser öffnen'\n'Only this translation': 'Nur diese Übersetzung'\n'File information': Dateiinformation\n'Do you want this file to open in the users browser, or to automatically download?': 'Soll diese Datei im Browser geöffnet oder automatisch zum Herunterladen angeboten werden?'\n'Change file information': 'Dateiinformation ändern'\n'Automatically download': 'Automatisch herunterladen'\nAttachments: Anlagen\n'Attachment does not exist.': 'Die Anlage existiert nicht.'\n'Attach File to Article': 'Datei mit Artikel verknüpfen'\n'All translations': 'Alle Übersetzungen'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.de_AT.yml",
    "content": "'Files attached.': 'Dateien angehängt'\n'File $1 unattached.': 'Datei $1 ist nicht angehängt.'\n'Attach new file': 'Neue Datei anhängen'\n'Attach existing file': 'Existierende Datei anhängen'\n'$1 file/s attached to article': '$1 Datei/en an Artikel angehängt.'\n'File attached.': 'Datei angehängt.'\n'The maximum file upload size was not configured in Newscoop.': 'Die maximale Dateigröße zum Hochladen wurde nicht in Newscoop konfiguriert.'\n'File $1 $2 unattached': 'Datei $1 $2 nicht angehängt.'\n'File $1 $2 attached to article': 'Datei $1 $2 an den Artikel angehängt.'\n'Unable to add attachment.': 'Anhang konnte nicht hinzugefügt werden.'\n'There was a problem uploading the file.': 'Probleme beim Hochladen der Datei.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Die Datei wurde nur teilweise hochgeladen. Dies passiert wenn die Höchstdauer für das Hochladen der Datei im Vergleich zur Dateigröße zu kurz ist. Die Höchstdauer ist in php.ini festgelegt.'\n'The file exceeds the allowed max file size.': 'Die Datei überschreitet die maximal zulässige Dateigröße.'\n'Please make sure you upgraded the database correctly: run $1 in a shell.': 'Bitte sicherstellen, dass die Datenbank korrekt aktualisiert wurde. Führen Sie $1 in einer Shell aus.'\n'Maximum Upload Size': 'Maximale Dateigröße zum Hochladen'\n'File Size': Dateigröße\n'File Name': Dateiname\nDownload: Herunterladen\n'File $1 updated.': 'Datei $1 aktualisiert.'\n'Edit article': 'Artikel bearbeiten'\n'You do not have the right to delete file attachments.': 'Keine Berechtigung Anlagen zu löschen.'\n'You must select a file to upload.': 'Datei zum Hochladen auswählen.'\n'You do not have the right to delete files.': 'Sie haben keine Zugriffsrechte zum Löschen von Dateien.'\n'You do not have the right to change the article.': 'Sie haben keine Berechtigung, den Artikel zu ändern.'\n'You do not have the right to change files.': 'Sie haben keine Berechtigung, Dateien zu ändern.'\n'You do not have the right to add files.': 'Sie haben keine Berechtigung, Dateien hinzuzufügen.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Soll diese Datei nur für diese Übersetzung des Artikels verfügbar sein oder für alle Übersetzungen?'\n'Please enter a description for the file.': 'Geben Sie eine Beschreibung der Datei ein.'\n'Open in the browser': 'Im Browser öffnen'\n'Only this translation': 'Nur diese Übersetzung'\n'File information': Dateiinformation\n'Do you want this file to open in the users browser, or to automatically download?': 'Soll diese Datei im Browser geöffnet oder automatisch zum Herunterladen angeboten werden?'\n'Change file information': 'Dateiinformation ändern'\n'Automatically download': 'Automatisch herunterladen'\nAttachments: Anlagen\n'Attachment does not exist.': 'Die Anlage existiert nicht.'\n'Attach File to Article': 'Datei mit Artikel verknüpfen'\n'All translations': 'Alle Übersetzungen'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.el.yml",
    "content": "'Files attached.': 'Τα αρχεία επισυνάφθηκαν.'\n'File $1 unattached.': 'Το αρχείο $1 αποσυνδέθηκε.'\n'Attach new file': 'Επισύναψη νέου αρχείου'\n'Attach existing file': 'Επισύναψη υπάρχοντος αρχείου'\n'$1 file/s attached to article': '$1 αρχείο/α επισυνάφθηκαν στο άρθρο'\n'File attached.': 'Το αρχείο επισυνάφθηκε.'\n'The maximum file upload size was not configured in Newscoop.': 'Το μέγιστο μέγεθος ανεβάσματος αρχείου δεν διαμορφώθηκε στο Newscoop.'\n'File $1 $2 unattached': 'Αποσύναψη αρχείου $1 $2 '\n'File $1 $2 attached to article': 'Το αρχείο $1 $2 επισυνάφθηκε στο άρθρο'\n'Unable to add attachment.': 'Η προσθήκη συννημένου ήταν αδύνατη.'\n'There was a problem uploading the file.': 'Υπήρξε ένα πρόβλημα κατά το ανέβασμα του αρχείου.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Το αρχείο ανεβάστηκε μερικώς. Αυτό είναι σύνηθες όταν ο μέγιστος χρόνος ανεβάσματος ενός αρχείου είναι χαμηλός σε αντίθεση με το μέγεθος αρχείου που προσπαθείτε να εισάγετε. Ο μέγιστος χρόνος εισαγωγής  καθορίστηκε στο php.ini'\n'The file exceeds the allowed max file size.': 'Το αρχείο υπερβαίνει το επιτρεπόμενο μέγιστο μέγεθος αρχείου.'\n'Please make sure you upgraded the database correctly: run $1 in a shell.': 'Παρακαλούμε βεβαιωθείτε ότι αναβαθμίσατε την βάση δεδομένων σωστά: τρέξτε $1 σε ενα κελί. '\n'Maximum Upload Size': 'Μέγιστο Μέγεθος Ανεβάσματος'\n'File Size': 'Μέγεθος Αρχείου'\n'File Name': 'Όνομα Αρχείου'\nDownload: Download\n'File $1 updated.': 'Το αρχείο $1 ανανεώθηκε.'\n'Edit article': 'Επεξεργασία άρθρου'\n'You do not have the right to delete file attachments.': 'Δεν έχετε το δικαίωμα να διαγράψετε συννημένα αρχεία.'\n'You must select a file to upload.': 'Πρέπει να επιλέξετε ένα αρχείο για ανέβασμα.'\n'You do not have the right to delete files.': 'Δεν έχετε το δικαίωμα να διαγράψετε αρχεία.'\n'You do not have the right to change the article.': 'Δεν έχετε το δικαίωμα να πραγματοποιήσετε αλλαγές στο άρθρο.'\n'You do not have the right to change files.': 'Δεν έχετε το δικαίωμα να αλλάξετε αρχεία.'\n'You do not have the right to add files.': 'Δεν έχετε το δικαίωμα να προσθέσετε αρχεία.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Να είναι αυτό το αρχείο διαθέσιμο μόνο για αυτή τη μετάφραση του άρθρου ή για όλες τις μεταφράσεις;'\n'Please enter a description for the file.': 'Παρακαλώ εισάγετε μια περιγραφή για το αρχείο.'\n'Open in the browser': 'Άνοιγμα στο πρόγραμμα περιήγησης'\n'Only this translation': 'Μόνο αυτή η μετάφραση'\n'File information': 'Πληροφορίες αρχείου'\n'Do you want this file to open in the users browser, or to automatically download?': 'Θέλετε αυτό το αρχείο να ανοίξει στο πρόγραμμα περιήγησης του χρήστη ή να πραγματοποιήσει αυτόματο κατέβασμα;'\n'Change file information': 'Αλλαγή πληροφοριών αρχείου'\n'Automatically download': 'Αυτόματο κατέβασμα'\nAttachments: Συννημένα\n'Attachment does not exist.': 'Το συννημένο δεν υπάρχει.'\n'Attach File to Article': 'Επισύναψη Αρχείου στο Άρθρο'\n'All translations': 'Όλες οι μεταφράσεις'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.en.yml",
    "content": "'Files attached.': 'Files attached.'\n'File $1 unattached.': 'File $1 unattached.'\n'Attach new file': 'Attach new file'\n'Attach existing file': 'Attach existing file'\n'$1 file/s attached to article': '$1 file/s attached to article'\n'File attached.': 'File attached.'\n'The maximum file upload size was not configured in Newscoop.': 'The maximum file upload size was not configured in Newscoop.'\n'File $1 $2 unattached': 'File $1 $2 unattached'\n'File $1 $2 attached to article': 'File $1 $2 attached to article'\n'Unable to add attachment.': 'Unable to add attachment.'\n'There was a problem uploading the file.': 'There was a problem uploading the file.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini'\n'The file exceeds the allowed max file size.': 'The file exceeds the allowed max file size.'\n'Please make sure you upgraded the database correctly: run $1 in a shell.': 'Please make sure you upgraded the database correctly: run $1 in a shell.'\n'Maximum Upload Size': 'Maximum Upload Size'\n'File Size': 'File Size'\n'File Name': 'File Name'\nDownload: Download\n'File $1 updated.': 'File $1 updated.'\n'Edit article': 'Edit article'\n'You do not have the right to delete file attachments.': 'You do not have the right to delete file attachments.'\n'You must select a file to upload.': 'You must select a file to upload.'\n'You do not have the right to delete files.': 'You do not have the right to delete files.'\n'You do not have the right to change the article.': 'You do not have the right to change the article.'\n'You do not have the right to change files.': 'You do not have the right to change files.'\n'You do not have the right to add files.': 'You do not have the right to add files.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Should this file only be available for this translation of the article, or for all translations?'\n'Please enter a description for the file.': 'Please enter a description for the file.'\n'Open in the browser': 'Open in the browser'\n'Only this translation': 'Only this translation'\n'File information': 'File information'\n'Do you want this file to open in the users browser, or to automatically download?': 'Do you want this file to open in the users browser, or to automatically download?'\n'Change file information': 'Change file information'\n'Automatically download': 'Automatically download'\nAttachments: Attachments\n'Attachment does not exist.': 'Attachment does not exist.'\n'Attach File to Article': 'Attach File to Article'\n'All translations': 'All translations'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.en_GB.yml",
    "content": "'Files attached.': 'Files attached.'\n'File $1 unattached.': 'File $1 unattached.'\n'Attach new file': 'Attach new file'\n'Attach existing file': 'Attach existing file'\n'$1 file/s attached to article': '$1 file/s attached to article'\n'File attached.': 'File attached.'\n'The maximum file upload size was not configured in Newscoop.': 'The maximum file upload size was not configured in Newscoop.'\n'File $1 $2 unattached': 'File $1 $2 unattached'\n'File $1 $2 attached to article': 'File $1 $2 attached to article'\n'Unable to add attachment.': 'Unable to add attachment.'\n'There was a problem uploading the file.': 'There was a problem uploading the file.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini'\n'The file exceeds the allowed max file size.': 'The file exceeds the allowed max file size.'\n'Please make sure you upgraded the database correctly: run $1 in a shell.': 'Please make sure you upgraded the database correctly: run $1 in a shell.'\n'Maximum Upload Size': 'Maximum Upload Size'\n'File Size': 'File Size'\n'File Name': 'File Name'\nDownload: Download\n'File $1 updated.': 'File $1 updated.'\n'Edit article': 'Edit article'\n'You do not have the right to delete file attachments.': 'You do not have the right to delete file attachments.'\n'You must select a file to upload.': 'You must select a file to upload.'\n'You do not have the right to delete files.': 'You do not have the right to delete files.'\n'You do not have the right to change the article.': 'You do not have the right to change the article.'\n'You do not have the right to change files.': 'You do not have the right to change files.'\n'You do not have the right to add files.': 'You do not have the right to add files.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Should this file only be available for this translation of the article, or for all translations?'\n'Please enter a description for the file.': 'Please enter a description for the file.'\n'Open in the browser': 'Open in the browser'\n'Only this translation': 'Only this translation'\n'File information': 'File information'\n'Do you want this file to open in the users browser, or to automatically download?': 'Do you want this file to open in the users browser, or to automatically download?'\n'Change file information': 'Change file information'\n'Automatically download': 'Automatically download'\nAttachments: Attachments\n'Attachment does not exist.': 'Attachment does not exist.'\n'Attach File to Article': 'Attach File to Article'\n'All translations': 'All translations'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.es.yml",
    "content": "'Files attached.': 'Archivos adjuntos'\n'File $1 unattached.': 'Se desvinculó el archivo $1 '\n'Attach new file': 'Adjuntar un nuevo archivo'\n'Attach existing file': 'Adjuntar un archivo existente'\n'$1 file/s attached to article': 'Se adjuntaron $1 al artículo'\n'File attached.': 'Archivo adjunto.'\n'The maximum file upload size was not configured in Newscoop.': 'No se configuró en Newscoop el tamaño máximo de un archivo a cargar. '\n'File $1 $2 unattached': 'Se desvinculó el archivo $1 $2'\n'File $1 $2 attached to article': 'Se adjuntó el archivo $1 $2 al artículo'\n'Unable to add attachment.': 'No es posible agregar un adjunto.'\n'There was a problem uploading the file.': 'Hubo un problema al subir el archivo.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'El archivo solo subió parcialmente. Esto es común cuando el tiempo máximo para cargar un archivo es bajo en contraste con el tamaño del archivo que se está cargando. El tiempo máximo para cargar está especificado en php.ini'\n'The file exceeds the allowed max file size.': 'El archivo sobrepasa el tamaño máximo permitido para un archivo.'\n'Please make sure you upgraded the database correctly: run $1 in a shell.': 'Por favor asegúrese de haber actualizado la base de datos correctamente: ejecute $1 en la línea de comandos.'\n'Maximum Upload Size': 'Tamaño máximo para subir'\n'File Size': 'Tamaño de archivo'\n'File Name': 'Nombre de archivo'\nDownload: Descargar\n'File $1 updated.': 'Se actualizó el archivo $1 '\n'Edit article': 'Editar artículo'\n'You do not have the right to delete file attachments.': 'No tiene autorización para eliminar archivos adjuntos'\n'You must select a file to upload.': 'Debe seleccionar un archivo para cargar.'\n'You do not have the right to delete files.': 'No tiene autorización para eliminar archivos.'\n'You do not have the right to change the article.': 'No tiene autorización para cambiar el artículo.'\n'You do not have the right to change files.': 'No tiene autorización para cambiar archivos.'\n'You do not have the right to add files.': 'No tiene autorización para añadir archivos.'\n'Should this file only be available for this translation of the article, or for all translations?': '¿Desea tener disponible este archivo sólo para esta traducción del artículo o para todas las traducciones?'\n'Please enter a description for the file.': 'Por favor ingrese una descripción para el archivo.'\n'Open in the browser': 'Abrir en el navegador'\n'Only this translation': 'Sólo esta traducción'\n'File information': 'Información del archivo'\n'Do you want this file to open in the users browser, or to automatically download?': '¿Desea que este archivo se despliegue en el navegador del usuario o que se descargue automáticamente?'\n'Change file information': 'Cambiar la información del archivo'\n'Automatically download': 'Descargar automáticamente'\nAttachments: Adjuntos\n'Attachment does not exist.': 'El adjunto no existe.'\n'Attach File to Article': 'Adjuntar un archivo al artículo'\n'All translations': 'Todas las traducciones'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.es_AR.yml",
    "content": "'Files attached.': 'Archivos adjuntos.'\n'File $1 unattached.': 'Se desvinculó el archivo $1'\n'Attach new file': 'Adjuntar un nuevo archivo'\n'Attach existing file': 'Adjuntar un archivo existente'\n'$1 file/s attached to article': 'Se adjuntaron $1 archivos al artículo'\n'File attached.': 'Archivo adjunto.'\n'The maximum file upload size was not configured in Newscoop.': 'No se configuró en Newscoop el tamaño máximo de los archivos a subir.'\n'File $1 $2 unattached': 'Se desvinculó el archivo $1 $2'\n'File $1 $2 attached to article': 'Se adjuntó el archivo $1 $2 al artículo'\n'Unable to add attachment.': 'No es posible agregar un adjunto.'\n'There was a problem uploading the file.': 'Hubo un problema al subir el archivo.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'El archivo se subió parcialmente. Esto es común cuando el tiempo máximo para subir un archivo es bajo en contraste con el tamaño del archivo que se está cargando. El tiempo máximo para cargar está especificado en php.ini'\n'The file exceeds the allowed max file size.': 'El archivo sobrepasa el tamaño máximo permitido para un archivo.'\n'Please make sure you upgraded the database correctly: run $1 in a shell.': 'Por favor asegurate de haber actualizado la base de datos correctamente: ejecutá $1 en la línea de comandos.'\n'Maximum Upload Size': 'Tamaño máximo para subir'\n'File Size': 'Tamaño de Archivo'\n'File Name': 'Nombre de Archivo'\nDownload: Descargar\n'File $1 updated.': 'Se actualizó el archivo $1'\n'Edit article': 'Editar artículo'\n'You do not have the right to delete file attachments.': 'No tenés autorización para eliminar archivos adjuntos'\n'You must select a file to upload.': 'Tenés que seleccionar un archivo para subir.'\n'You do not have the right to delete files.': 'No tenés autorización para eliminar archivos.'\n'You do not have the right to change the article.': 'No tenés autorización para cambiar el artículo.'\n'You do not have the right to change files.': 'No tenés autorización para cambiar archivos.'\n'You do not have the right to add files.': 'No tenés autorización para añadir archivos.'\n'Should this file only be available for this translation of the article, or for all translations?': '¿Deseás tener disponible este archivo sólo para esta traducción del artículo o para todas las traducciones?'\n'Please enter a description for the file.': 'Por favor ingresá una descripción para el archivo.'\n'Open in the browser': 'Abrir en el navegador'\n'Only this translation': null\n'File information': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Change file information': null\n'Automatically download': null\nAttachments: null\n'Attachment does not exist.': null\n'Attach File to Article': null\n'All translations': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.fa.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: null\n'File $1 updated.': null\n'Edit article': null\n'You do not have the right to delete file attachments.': null\n'You must select a file to upload.': null\n'You do not have the right to delete files.': null\n'You do not have the right to change the article.': null\n'You do not have the right to change files.': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file.': null\n'Open in the browser': null\n'Only this translation': null\n'File information': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Change file information': null\n'Automatically download': null\nAttachments: null\n'Attachment does not exist.': null\n'Attach File to Article': null\n'All translations': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.fa_AF.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: null\n'File $1 updated.': null\n'Edit article': null\n'You do not have the right to delete file attachments.': null\n'You must select a file to upload.': null\n'You do not have the right to delete files.': null\n'You do not have the right to change the article.': null\n'You do not have the right to change files.': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file.': null\n'Open in the browser': null\n'Only this translation': null\n'File information': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Change file information': null\n'Automatically download': null\nAttachments: null\n'Attachment does not exist.': null\n'Attach File to Article': null\n'All translations': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.fr.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: null\n'File $1 updated.': null\n'Edit article': 'Éditer l''article'\n'You do not have the right to delete file attachments.': 'Vous navez pas le droit de supprimer des attachements de fichier. '\n'You must select a file to upload.': 'Vous devez choisir un fichier à télécharger.'\n'You do not have the right to delete files.': 'Vous navez pas le droit de supprimer des fichiers'\n'You do not have the right to change the article.': 'Vous navez pas le droit de changer larticle. '\n'You do not have the right to change files.': 'Vous navez pas le droit de changer des fichiers. '\n'You do not have the right to add files.': 'Vous navez pas le droit dajouter des fichiers.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Ce fichier doit-il être seulement disponible pour cette traduction de larticle, ou pour toutes les traductions ? '\n'Please enter a description for the file.': 'Entrez Sil vous plaît une description pour le fichier.'\n'Open in the browser': 'Ouvrir dans le navigateur '\n'Only this translation': 'Seulement cette traduction'\n'File information': 'Information du fichier '\n'Do you want this file to open in the users browser, or to automatically download?': 'Voulez-vous que ce fichier souvre dans le navigateur de lutilisateur, ou automatiquement téléchargé ? '\n'Change file information': 'Changer l''information du fichier'\n'Automatically download': 'Automatiquement téléchargé'\nAttachments: 'Attachements '\n'Attachment does not exist.': 'L''attachement n''existe pas. '\n'Attach File to Article': 'Attacher Fichier à Article '\n'All translations': 'Toutes les traductions '\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.he.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: null\n'File $1 updated.': null\n'Edit article': null\n'You do not have the right to delete file attachments.': null\n'You must select a file to upload.': null\n'You do not have the right to delete files.': null\n'You do not have the right to change the article.': null\n'You do not have the right to change files.': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file.': null\n'Open in the browser': null\n'Only this translation': null\n'File information': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Change file information': null\n'Automatically download': null\nAttachments: null\n'Attachment does not exist.': null\n'Attach File to Article': null\n'All translations': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.hr.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: null\n'File $1 updated.': null\n'Edit article': 'Uredi članak'\n'You do not have the right to delete file attachments.': 'Nemate prava brisati zakačene datoteke.'\n'You must select a file to upload.': 'Morate označiti datoteku za postavljanje.'\n'You do not have the right to delete files.': 'Nemate prava brisati datoteke.'\n'You do not have the right to change the article.': 'Nemate ovlasti mijenjati članak.'\n'You do not have the right to change files.': 'Nemate ovlasti mijenjati datoteke.'\n'You do not have the right to add files.': 'Nemate ovlasti dodavati datoteke.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Da li ova Datoteka treba biti dostupna za ovaj prijevod članka, ili za sve prijevode?'\n'Please enter a description for the file.': 'Unesite opis datoteke.'\n'Open in the browser': 'Otvori u pretraživaču'\n'Only this translation': 'Samo ovaj prijevod'\n'File information': 'Podaci o datoteci'\n'Do you want this file to open in the users browser, or to automatically download?': 'Da li želite da se ova datoteka otvara u pretraživaču korisnika, ili da se automatski preuzme?'\n'Change file information': 'Promijeni informacije o datoteci'\n'Automatically download': 'Automatsko preuzimanje'\nAttachments: Privitci\n'Attachment does not exist.': 'Privitak ne postoji.'\n'Attach File to Article': 'Priloži datoteku uz članak'\n'All translations': 'Svi prijevodi'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.hu.yml",
    "content": "'Files attached.': 'A fájlok csatolása megtörtént.'\n'File $1 unattached.': 'A/z $1 fájl leválasztása megtörtént.'\n'Attach new file': 'Új fájl csatolása'\n'Attach existing file': 'Létező fájl csatolása'\n'$1 file/s attached to article': '$1 fájl van csatolva a cikkhez'\n'File attached.': 'A fájl csatolása megtörtént.'\n'The maximum file upload size was not configured in Newscoop.': 'Nem konfigurálták a maximális fájlfeltöltési méretet a Newscoop-ban.'\n'File $1 $2 unattached': 'A/z $1 $2 fájl leválasztása megtörtént'\n'File $1 $2 attached to article': 'A/z $1 $2 fájl csatolása a cikkhez megtörtént'\n'Unable to add attachment.': 'Nem lehet csatolmányt hozzáadni.'\n'There was a problem uploading the file.': 'Probléma merült fel a fájl feltöltése során.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'A feltöltött fájl csak részben került feltöltésre. Ez gyakran előfordul, ha rövid a maximális fájlfeltöltési idő a bevinni próbált fájl méretével szemben. A maximális feltöltési időt a php.ini fájlban adják meg.'\n'The file exceeds the allowed max file size.': 'A fájl mérete meghaladja a megengedett maximális fájlméretet.'\n'Please make sure you upgraded the database correctly: run $1 in a shell.': 'Győződj meg róla, hogy megfelelően frissítetted-e az adatbázist: futtasd le parancshéjban a/z $1 parancsot.'\n'Maximum Upload Size': 'Maximális feltölthető méret'\n'File Size': Fájlméret\n'File Name': Fájlnév\nDownload: Letöltés\n'File $1 updated.': 'A/z $1 fájl frissítése megtörtént.'\n'Edit article': 'Cikk szerkesztése'\n'You do not have the right to delete file attachments.': 'Nincs jogod a fájlmellékletek törléséhez.'\n'You must select a file to upload.': 'Ki kell választanod egy feltöltendő fájlt.'\n'You do not have the right to delete files.': 'Nincs jogod a fájlok törléséhez.'\n'You do not have the right to change the article.': 'Nincs jogod a cikk módosításához.'\n'You do not have the right to change files.': 'Nincs jogod a fájlok módosításához.'\n'You do not have the right to add files.': 'Nincs jogod a fájlok hozzáadásához.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Ez a fájl a cikk csak ezen fordításához vagy az összes fordításhoz legyen elérhető?'\n'Please enter a description for the file.': 'Add meg a fájl leírását.'\n'Open in the browser': 'Megnyitás a böngészőben'\n'Only this translation': 'Csak ez a fordítás'\n'File information': Fájlinformáció\n'Do you want this file to open in the users browser, or to automatically download?': 'Ezt a fájlt a felhasználó böngészőjében akarod megnyitni, vagy automatikusan letöltésre kerül?'\n'Change file information': 'Fájlinformáció módosítása'\n'Automatically download': 'Automatikus letöltés'\nAttachments: Csatolmányok\n'Attachment does not exist.': 'A csatolmány nem létezik.'\n'Attach File to Article': 'Fájl csatolása a cikkhez'\n'All translations': 'Minden fordítás'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.hy.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: null\n'File $1 updated.': null\n'Edit article': 'Խմբագրել հոդված'\n'You do not have the right to delete file attachments.': null\n'You must select a file to upload.': null\n'You do not have the right to delete files.': null\n'You do not have the right to change the article.': null\n'You do not have the right to change files.': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file.': null\n'Open in the browser': null\n'Only this translation': null\n'File information': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Change file information': null\n'Automatically download': null\nAttachments: null\n'Attachment does not exist.': null\n'Attach File to Article': null\n'All translations': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.hy_AM.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': 'Կցել նոր ֆայլ'\n'Attach existing file': 'Կցել գոյություն ունեցող ֆայլ'\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': 'Ֆայլի չափը'\n'File Name': 'Ֆայլի անունը'\nDownload: Ներբեռնում\n'File $1 updated.': null\n'Edit article': 'Խմբագրել հոդված'\n'You do not have the right to delete file attachments.': null\n'You must select a file to upload.': null\n'You do not have the right to delete files.': null\n'You do not have the right to change the article.': null\n'You do not have the right to change files.': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file.': null\n'Open in the browser': null\n'Only this translation': null\n'File information': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Change file information': null\n'Automatically download': null\nAttachments: null\n'Attachment does not exist.': null\n'Attach File to Article': null\n'All translations': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.id.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: null\n'File $1 updated.': null\n'Edit article': null\n'You do not have the right to delete file attachments.': null\n'You must select a file to upload.': null\n'You do not have the right to delete files.': null\n'You do not have the right to change the article.': null\n'You do not have the right to change files.': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file.': null\n'Open in the browser': null\n'Only this translation': null\n'File information': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Change file information': null\n'Automatically download': null\nAttachments: null\n'Attachment does not exist.': null\n'Attach File to Article': null\n'All translations': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.it.yml",
    "content": "'Files attached.': 'File allegato.'\n'File $1 unattached.': 'File $1 tolto dagli allegati.'\n'Attach new file': 'Allega nuovo file.'\n'Attach existing file': 'Alelga un file esistente.'\n'$1 file/s attached to article': '$1 file allegati allarticolo.'\n'File attached.': 'File alelgato.'\n'The maximum file upload size was not configured in Newscoop.': 'La dimensione massima di upload non e stata configurata.'\n'File $1 $2 unattached': 'File $1 $2 tolto dagli allegati.'\n'File $1 $2 attached to article': 'File $1 $2 allegato.'\n'Unable to add attachment.': 'Impossibile allegare il file.'\n'There was a problem uploading the file.': 'Si e verificato un problema durante il caricamento del file.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Il file e stato caricato solo parzialmente. Questo succede di solito quando il massimo tempo di upload e troppo breve per la dimensione del file. Questa impostazione si trova in php.ini'\n'The file exceeds the allowed max file size.': 'Il file eccede la dimensione massima per i file.'\n'Please make sure you upgraded the database correctly: run $1 in a shell.': 'Per favore verifica di aver aggiornato il database. Esegui $1 al prompt dei comandi.'\n'Maximum Upload Size': 'Dimensione massima di upload.'\n'File Size': 'Dimensione file'\n'File Name': 'Nome file'\nDownload: Scarica\n'File $1 updated.': 'File $1 aggiornato.'\n'Edit article': 'Modifica articolo'\n'You do not have the right to delete file attachments.': 'Non si possiedono i diritti per eliminare i file allegati.'\n'You must select a file to upload.': 'Devi selezionare un file da caricare.'\n'You do not have the right to delete files.': 'Non si possiedono i dirittti per eliminare file.'\n'You do not have the right to change the article.': 'Nno si possiedono i diritti per modificare larticolo.'\n'You do not have the right to change files.': 'Non si possiedono i diritti per cambiare i file.'\n'You do not have the right to add files.': 'Non si possiedono i diritti per aggiungere file.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Rendere disponibile questo file solo per questa traduzione, o per tutte?'\n'Please enter a description for the file.': 'Per favore inserisci una descrizione per il file.'\n'Open in the browser': 'Apri nel browser'\n'Only this translation': 'Solo questa traduzione'\n'File information': 'Informazioni file'\n'Do you want this file to open in the users browser, or to automatically download?': 'Preferisci che questo file sia aperto nel browser, o automaticamente scaricato?'\n'Change file information': 'Cambia le informazioni file'\n'Automatically download': 'Scarica automaticamente'\nAttachments: Allegati\n'Attachment does not exist.': 'Lallegato non esiste.'\n'Attach File to Article': 'Allega il file allarticolo'\n'All translations': 'Tutte le traduzioni'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.ka.yml",
    "content": "'Files attached.': 'ფაილი მიმაგრებულია.'\n'File $1 unattached.': '$1 ფაილი მოხსნილია.'\n'Attach new file': 'ახალი ფაილის დამატება'\n'Attach existing file': 'არსებული ფაილის მიმაგრება.'\n'$1 file/s attached to article': '$1 ფაილ(ები) მიმაგრება სტატიაზე'\n'File attached.': 'ფაილი მიმაგრებულია.'\n'The maximum file upload size was not configured in Newscoop.': 'ასატვირთი ფაილის მაქსიმალური ზომა არ განსაზღვრულა'\n'File $1 $2 unattached': 'ფაილი $1 $2 მოიხსნა'\n'File $1 $2 attached to article': 'ფაილი $1 $2 დაემატა სტატიას'\n'Unable to add attachment.': 'შეუძლებელია დანართის დამატება.'\n'There was a problem uploading the file.': 'პრობლემა იყო ფაილის ატვირთვისას.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'ატვირთული ფაილი მხოლოდ ნაწილობრივ აიტვირთა. ეს მაშინ ხდება, როცა ფაილის ასატვირთი მაქსიმალური დრო არ შეესაბამება  ფაილის ზომას, რომლის ატვირთვასაც ცდილობთ. შეტანის მაქსიმალური დრო განსაზღვრულიაphp.ini –ში '\n'The file exceeds the allowed max file size.': 'ამ ფაილის ზომა აღემატება მაქსიმალურ დასაშვებს. '\n'Please make sure you upgraded the database correctly: run $1 in a shell.': 'გთხოვთ, დარწმუნდით რომ თქვენ გაზარდეთ მონაცემთა ბაზა სწორად: $1 გაშვება გარსში '\n'Maximum Upload Size': 'ატვირთვის მაქსიმალური ზომა'\n'File Size': 'ფაილის ზომა'\n'File Name': 'ფაილის სახელი'\nDownload: ჩამოქაჩვა\n'File $1 updated.': 'ფაილი $1 განახლებულია'\n'Edit article': 'სტატიის რედაქტირება'\n'You do not have the right to delete file attachments.': 'თქვენ არა გაქვთ მიმაგრებული ფაილის წაშლის უფლება'\n'You must select a file to upload.': 'თქვენ უნდა მონიშნოთ ფაილი ასატვითად'\n'You do not have the right to delete files.': 'თქვენ არა გაქვთ ფაილების წაშლის უფლება'\n'You do not have the right to change the article.': 'თქვენ არა გაქვთ სტატიის შეცვლის უფლება'\n'You do not have the right to change files.': 'თქვენ არა გაქვთ ფაილის შეცვლის უფლება'\n'You do not have the right to add files.': 'თქვენ არა გაქვთ ფაილის დამატების უფლება'\n'Should this file only be available for this translation of the article, or for all translations?': 'ეს ფაილი მისაწვდომი უნდა იყოს მხოლოდ ამ თარგმანისთვის თუ ყველა თარგმანისთვის?'\n'Please enter a description for the file.': 'გთხოვთ, შეიყვანეთდოკუმენტის აღწერა'\n'Open in the browser': 'ბრაუზერში გახსნა'\n'Only this translation': 'მხოლოდ ამ თარგმანისთვის'\n'File information': 'ფაილის ინფორმაცია'\n'Do you want this file to open in the users browser, or to automatically download?': 'გსურთ ეს ფაილი გაიხსნას მომხმარებლის ბრაუზერში თუ ავტომატურად ჩამოიქაჩოს?'\n'Change file information': 'შეცვალე ფაილის ინფორმაცია'\n'Automatically download': 'ავტომატური ჩამოქაჩვა'\nAttachments: 'მიმაგრებული ფაილები'\n'Attachment does not exist.': 'მიმაგრებული ფაილი არ არსებობს '\n'Attach File to Article': 'მიამაგრე ფაილი სტატიაზე'\n'All translations': 'ყველა თარგმანი'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.ko.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: null\n'File $1 updated.': null\n'Edit article': '기사 편집'\n'You do not have the right to delete file attachments.': '파일 첨부를 삭제할 권한이 없습니다. '\n'You must select a file to upload.': '업로드할 파일을 선택하시오.'\n'You do not have the right to delete files.': '파일을 삭제할 권한이 없습니다. '\n'You do not have the right to change the article.': '기사를 수정할 권한이 없습니다. '\n'You do not have the right to change files.': '파일을 변경할 권한이 없습니다. '\n'You do not have the right to add files.': '파일을 추가할 권한이 없습니다. '\n'Should this file only be available for this translation of the article, or for all translations?': '이 파일이 기사의 이 번역에만 해당됩니까, 아니면 모든 번역에 해당됩니까?'\n'Please enter a description for the file.': '파일에 대한 설명을 입력하시오'\n'Open in the browser': '브라우저에서 열기'\n'Only this translation': '이 번역만 '\n'File information': '파일 정보'\n'Do you want this file to open in the users browser, or to automatically download?': '이 파일이 브라우저에서 열기를 원합니까? 자동으로 다운로드 할까요? '\n'Change file information': '파일 정보 수정'\n'Automatically download': '자동 다운로드'\nAttachments: 첨부\n'Attachment does not exist.': '첨부가 없습니다.'\n'Attach File to Article': '기사에 파일 첨부'\n'All translations': '모든 번역'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.ku.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: null\n'File $1 updated.': null\n'Edit article': null\n'You do not have the right to delete file attachments.': null\n'You must select a file to upload.': null\n'You do not have the right to delete files.': null\n'You do not have the right to change the article.': null\n'You do not have the right to change files.': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file.': null\n'Open in the browser': null\n'Only this translation': null\n'File information': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Change file information': null\n'Automatically download': null\nAttachments: null\n'Attachment does not exist.': null\n'Attach File to Article': null\n'All translations': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.lv.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: null\n'File $1 updated.': null\n'Edit article': null\n'You do not have the right to delete file attachments.': null\n'You must select a file to upload.': null\n'You do not have the right to delete files.': null\n'You do not have the right to change the article.': null\n'You do not have the right to change files.': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file.': null\n'Open in the browser': null\n'Only this translation': null\n'File information': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Change file information': null\n'Automatically download': null\nAttachments: null\n'Attachment does not exist.': null\n'Attach File to Article': null\n'All translations': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.mr.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: null\n'File $1 updated.': null\n'Edit article': null\n'You do not have the right to delete file attachments.': null\n'You must select a file to upload.': null\n'You do not have the right to delete files.': null\n'You do not have the right to change the article.': null\n'You do not have the right to change files.': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file.': null\n'Open in the browser': null\n'Only this translation': null\n'File information': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Change file information': null\n'Automatically download': null\nAttachments: null\n'Attachment does not exist.': null\n'Attach File to Article': null\n'All translations': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.nb_NO.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: null\n'File $1 updated.': null\n'Edit article': null\n'You do not have the right to delete file attachments.': null\n'You must select a file to upload.': null\n'You do not have the right to delete files.': null\n'You do not have the right to change the article.': null\n'You do not have the right to change files.': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file.': null\n'Open in the browser': null\n'Only this translation': null\n'File information': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Change file information': null\n'Automatically download': null\nAttachments: null\n'Attachment does not exist.': null\n'Attach File to Article': null\n'All translations': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.nl.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: null\n'File $1 updated.': null\n'Edit article': 'Bewerk artikel'\n'You do not have the right to delete file attachments.': null\n'You must select a file to upload.': null\n'You do not have the right to delete files.': null\n'You do not have the right to change the article.': null\n'You do not have the right to change files.': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': 'Moet dit bestand alleen beschikbaar zijn voor deze vertaling of voor alle vertalingen?'\n'Please enter a description for the file.': 'Voeg een beschrijving voor dit bestand toe.'\n'Open in the browser': 'Open in de browser.'\n'Only this translation': 'Alleen deze vertaling'\n'File information': 'Bestand informatie'\n'Do you want this file to open in the users browser, or to automatically download?': 'Wilt u dat dit bestand opent in de browser of dat het wordt gedownload?'\n'Change file information': 'Bewerk bestand informatie'\n'Automatically download': 'Automatisch downloaden'\nAttachments: Bijlagen\n'Attachment does not exist.': 'Bijlage bestaat niet'\n'Attach File to Article': 'Voeg bestand aan artikel'\n'All translations': 'Alle vertalingen'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.pa.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: null\n'File $1 updated.': null\n'Edit article': null\n'You do not have the right to delete file attachments.': null\n'You must select a file to upload.': null\n'You do not have the right to delete files.': null\n'You do not have the right to change the article.': null\n'You do not have the right to change files.': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file.': null\n'Open in the browser': null\n'Only this translation': null\n'File information': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Change file information': null\n'Automatically download': null\nAttachments: null\n'Attachment does not exist.': null\n'Attach File to Article': null\n'All translations': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.pl.yml",
    "content": "'Files attached.': 'Plik załaczony.'\n'File $1 unattached.': 'Plik $1 odłączony.'\n'Attach new file': 'Załącz nowy plik'\n'Attach existing file': 'Załącz istniejący plik'\n'$1 file/s attached to article': 'Plików dołączonych do artykułu: $1'\n'File attached.': 'Plik załączony.'\n'The maximum file upload size was not configured in Newscoop.': 'Maksymalny rozmiar pliku nie zostal skonfigurowany w Newscoop.'\n'File $1 $2 unattached': 'Plik $1 $2 odłączony'\n'File $1 $2 attached to article': 'Plik $1 $2 załączony do artykułu'\n'Unable to add attachment.': 'Załącznik nie został dodany.'\n'There was a problem uploading the file.': 'Wystąpił błąd podczas dodawania pliku.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Wgyrwany plik został dodany tylko w części. To częsty błąd gdy czas wgrywania pliku nie jest zgodny z jego rozmiarem. Maksymalny czas wgrywania ustalany jest w pliku php.ini'\n'The file exceeds the allowed max file size.': 'Plik jest większy od maksymalnego rozmiaru.'\n'Please make sure you upgraded the database correctly: run $1 in a shell.': 'Upewnij się, że aktualizacja bazy danych przebiegła pomyślnie: uruchom $1 w shellu.'\n'Maximum Upload Size': 'Maksymalny rozmiar pliku'\n'File Size': 'Rozmiar pliku'\n'File Name': 'Nazwa pliku'\nDownload: Pobierz\n'File $1 updated.': 'Plik $1 uaktualniony'\n'Edit article': 'Edycja artykułu'\n'You do not have the right to delete file attachments.': 'Nie masz uprawnień aby usuwać załączniki.'\n'You must select a file to upload.': 'Musisz wybrać pliki do dodania.'\n'You do not have the right to delete files.': 'Nie masz uprawnień do usuwania plików.'\n'You do not have the right to change the article.': 'Nie masz praw aby zmieniać artykuł.'\n'You do not have the right to change files.': 'Nie masz praw aby zmieniać pliki.'\n'You do not have the right to add files.': 'Nie masz praw aby dodawać pliki.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Czy plik powinień być dostępny do tłumaczenia tego artykułu, czy dla wszystkich tłumaczeń?'\n'Please enter a description for the file.': 'Dodaj opis do pliku.'\n'Open in the browser': 'Otwórz w przeglądarce'\n'Only this translation': 'Tylko to tłumaczenie'\n'File information': 'Informacja o pliku'\n'Do you want this file to open in the users browser, or to automatically download?': 'Czy ten plik ma się otwierać w przeglądarce czy pobierać automatycznie?'\n'Change file information': 'Zmień info o pliku'\n'Automatically download': 'Pobierz automatycznie'\nAttachments: Załączniki\n'Attachment does not exist.': 'Załącznik nie istnieje'\n'Attach File to Article': 'Załącz plik do artykułu'\n'All translations': 'Wszystkie tłumaczenia'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.ps.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: null\n'File $1 updated.': null\n'Edit article': null\n'You do not have the right to delete file attachments.': null\n'You must select a file to upload.': null\n'You do not have the right to delete files.': null\n'You do not have the right to change the article.': null\n'You do not have the right to change files.': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file.': null\n'Open in the browser': null\n'Only this translation': null\n'File information': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Change file information': null\n'Automatically download': null\nAttachments: null\n'Attachment does not exist.': null\n'Attach File to Article': null\n'All translations': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.pt.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: null\n'File $1 updated.': null\n'Edit article': 'Editar Artigo'\n'You do not have the right to delete file attachments.': 'Não tem permissão para eliminar anexos de artigos.'\n'You must select a file to upload.': 'Tem de selecionar um ficheiro para transferir'\n'You do not have the right to delete files.': 'Não tem permissões para eliminar ficheiros'\n'You do not have the right to change the article.': 'Não tem permissões para alterar este artigo.'\n'You do not have the right to change files.': 'Não tem permissões para alterar ficheiros.'\n'You do not have the right to add files.': 'Não tem permissões para anexar ficheiros.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Este ficheiro deverá estar apenas dipsonivél para esta tradução, ou para todas as traduções?'\n'Please enter a description for the file.': 'Insira uma descrição para o ficheiro.'\n'Open in the browser': 'Abrir no navegador'\n'Only this translation': 'Apenas esta tradução'\n'File information': 'Informações do ficheiro'\n'Do you want this file to open in the users browser, or to automatically download?': 'Deseja que o ficheiro seja aberto na janela do navegador ou que deva ser feita automáticamente a transferência do ficheiro?'\n'Change file information': 'Alterar as informações do ficheiro'\n'Automatically download': 'Transferir automaticamente.'\nAttachments: Anexos\n'Attachment does not exist.': 'Não existe(m) anexo(s).'\n'Attach File to Article': 'Anexar ficheiros ao artigo'\n'All translations': 'Todas as traduções.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.pt_BR.yml",
    "content": "'Files attached.': 'Arquivos anexados.'\n'File $1 unattached.': 'Arquivo $1 não foi anexado.'\n'Attach new file': 'Anexar novo arquivo'\n'Attach existing file': 'Anexar arquivo existente'\n'$1 file/s attached to article': '$1 arquivo(s) anexados ao artigo'\n'File attached.': 'Arquivo anexado'\n'The maximum file upload size was not configured in Newscoop.': 'O tamanho máximo do arquivo para upload não foi configurada no Newscoop.'\n'File $1 $2 unattached': 'Arquivo no. $1 $2 não foi anexado'\n'File $1 $2 attached to article': 'Arquivo no. $1 $2 anexado ao artigo'\n'Unable to add attachment.': 'Não foi possível adicionar o anexo.'\n'There was a problem uploading the file.': 'Ocorreu um problema durante o upload do aquivo.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'O upload do arquivo foi apenas parcial. Isso acontece quando o tempo máximo para fazer upload é curto comparado com o tamanho do arquivo que você está tentando mandar. O tempo máximo do upload é definido no php.ini.'\n'The file exceeds the allowed max file size.': 'O tamanho do arquivo é maior do que permitido.'\n'Please make sure you upgraded the database correctly: run $1 in a shell.': 'Por favor verifique se atualizou a base de dados corretamente: executar $1 na cápsula.'\n'Maximum Upload Size': 'Tamanho máximo para upload'\n'File Size': 'Tamanho do arquivo'\n'File Name': 'Nome do arquivo'\nDownload: Baixar\n'File $1 updated.': 'Arquivo $1 atualizado.'\n'Edit article': 'Editar Artigo'\n'You do not have the right to delete file attachments.': 'Não tem permissão para eliminar anexos de artigos.'\n'You must select a file to upload.': 'Tem de selecionar um ficheiro para transferir'\n'You do not have the right to delete files.': 'Não tem permissões para eliminar ficheiros'\n'You do not have the right to change the article.': 'Não tem permissões para alterar este artigo.'\n'You do not have the right to change files.': 'Não tem permissões para alterar ficheiros.'\n'You do not have the right to add files.': 'Não tem permissões para anexar ficheiros.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Este ficheiro deverá estar apenas dipsonivél para esta tradução, ou para todas as traduções?'\n'Please enter a description for the file.': 'Insira uma descrição para o ficheiro.'\n'Open in the browser': 'Abrir no navegador'\n'Only this translation': 'Apenas esta tradução'\n'File information': 'Informações do ficheiro'\n'Do you want this file to open in the users browser, or to automatically download?': 'Deseja que o ficheiro seja aberto na janela do navegador ou que deva ser feita automáticamente a transferência do ficheiro?'\n'Change file information': 'Alterar as informações do ficheiro'\n'Automatically download': 'Transferir automaticamente.'\nAttachments: Anexos\n'Attachment does not exist.': 'Não existe(m) anexo(s).'\n'Attach File to Article': 'Anexar ficheiros ao artigo'\n'All translations': 'Todas as traduções.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.ro.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: 'Salvează local'\n'File $1 updated.': 'Fişierul $1 a fost actualizat.'\n'Edit article': 'Modifică articolul'\n'You do not have the right to delete file attachments.': 'Nu ai dreptul să ştergi fişiere ataşate.'\n'You must select a file to upload.': 'Trebuie să selectezi un fişier pentru a-l încărca în sistem.'\n'You do not have the right to delete files.': 'Nu ai dreptul să ştergi fişiere.'\n'You do not have the right to change the article.': 'Nu ai dreptul să modifici articolul.'\n'You do not have the right to change files.': 'Nu ai dreptul să modifici fişiere.'\n'You do not have the right to add files.': 'Nu ai dreptul să adaugi fişiere.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Acest fişier ar trebuie să fie disponibil pentru această traducere a articolului sau pentru toate traducerile?'\n'Please enter a description for the file.': 'Introdu o descriere a fişierului.'\n'Open in the browser': 'Deschide în browser'\n'Only this translation': 'Numai această traducere'\n'File information': 'Informaţii despre fişier'\n'Do you want this file to open in the users browser, or to automatically download?': 'Vrei ca acest fişier să se deschidă în browser-ul utilizatorului, sau să se descarce automat?'\n'Change file information': 'Schimbă informaţiile despre fişier'\n'Automatically download': 'Descărcare automată'\nAttachments: 'Fişiere ataşate'\n'Attachment does not exist.': 'Fişierul ataşat nu există.'\n'Attach File to Article': 'Ataşează fişier la articol'\n'All translations': 'Toate traducerile'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.ru.yml",
    "content": "'Files attached.': 'Файлы присоединены.'\n'File $1 unattached.': 'Файл $1 присоединен.'\n'Attach new file': 'Присоединить новый файл'\n'Attach existing file': 'Присоединить существующий файл'\n'$1 file/s attached to article': '$1 файлов присоединено'\n'File attached.': 'Файл присоединен.'\n'The maximum file upload size was not configured in Newscoop.': 'Максимальный размер загруженного файла был не конфигурирован в настройках Newscoop.'\n'File $1 $2 unattached': 'Файл $1 $2 откреплен'\n'File $1 $2 attached to article': 'Файл $1 $2 прикреплен к статье'\n'Unable to add attachment.': 'Невозможно добавить файл.'\n'There was a problem uploading the file.': 'Проблема загрузки файла.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Загруженный файл сохранен на сервер частично. Это в связано с тем, что максимально допустимое время загрузки файла превосходит время, необходимое для загрузки этого файла. Максимальное время загрузки определено в файле  php.ini'\n'The file exceeds the allowed max file size.': 'Рамер этого файла превосходит допустимый.'\n'Please make sure you upgraded the database correctly: run $1 in a shell.': 'Пожалуйста убедитесь, что Вы правильно обновили базу данных: запуск $1 в оболочке'\n'Maximum Upload Size': 'Максимальный размер загружаемого файла'\n'File Size': 'Размер файла'\n'File Name': 'Имя файла'\nDownload: Загрузить\n'File $1 updated.': 'Файл $1 обновлен.'\n'Edit article': 'Редактировать статью'\n'You do not have the right to delete file attachments.': 'Вы не имеете прав доступа для удаления приложенного файла.'\n'You must select a file to upload.': 'Вы должны выбрать файл для загрузки.'\n'You do not have the right to delete files.': 'Вы не имеете прав доступа для удаления файлов.'\n'You do not have the right to change the article.': 'Вы не имеете прав доступа для изменения статьи.'\n'You do not have the right to change files.': 'Вы не имеете прав доступа для изменения файлов.'\n'You do not have the right to add files.': 'Вы не имеете прав доступа для добавления файлов.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Этот файл должен быть доступен только для этого перевода статьи, или для всех переводов?'\n'Please enter a description for the file.': 'Пожалуйста введите описание для файла.'\n'Open in the browser': 'Открыть в браузере'\n'Only this translation': 'Только этот перевод'\n'File information': 'Информация о файле'\n'Do you want this file to open in the users browser, or to automatically download?': 'Вы хотите, чтобы этот файл открывался в браузере пользователя или автоматически загружался?'\n'Change file information': 'Изменить информацию о файле'\n'Automatically download': 'Автоматическая загрузка'\nAttachments: Приложения\n'Attachment does not exist.': 'Приложения не существует.'\n'Attach File to Article': 'Прикрепить файл к статье'\n'All translations': 'Все переводы'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.sh.yml",
    "content": "'Files attached.': 'Fajl je zakačen'\n'File $1 unattached.': 'fajl $1 je uklonjen'\n'Attach new file': 'Zakači novi fajl'\n'Attach existing file': 'Zakači postojeći fajl'\n'$1 file/s attached to article': '$1 fajl(ova) dodat(o) u tekst'\n'File attached.': 'Fajl zakačen.'\n'The maximum file upload size was not configured in Newscoop.': 'Maksimalna veličina fajla nije podešena u Newscoopu.'\n'File $1 $2 unattached': 'Fajl $1 $2 uklonjen'\n'File $1 $2 attached to article': 'Fajl $1 $2 zakačen uz tekst'\n'Unable to add attachment.': 'Nije moguće dodati atačment.'\n'There was a problem uploading the file.': 'došlo je do problema pri uploadovanju fajla.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Fajl je delimično uploadovan. Ovo se obično dešava kad je maks. vreme za upload kratko u odnosu na veličinu fajla. Maksimalna veličina se podešava u php.ini'\n'The file exceeds the allowed max file size.': 'fajl prelazi maksimalno dozvoljenu veličinu.'\n'Please make sure you upgraded the database correctly: run $1 in a shell.': 'Proverite da li ste spravno upgradovali bazu: pokrenite $1 u shellu.'\n'Maximum Upload Size': 'Maksimalna veličina fajla za upload'\n'File Size': 'Veličina fajla'\n'File Name': 'Ime fajla'\nDownload: Preuzmi\n'File $1 updated.': 'fajl $1 izmenjen.'\n'Edit article': 'Uredi tekst'\n'You do not have the right to delete file attachments.': 'Nemate pravo da brišete prikačene fajlove.'\n'You must select a file to upload.': 'Morate izabrati fajl za aploud.'\n'You do not have the right to delete files.': 'Nemate pravo da  brišete fajlove.'\n'You do not have the right to change the article.': 'Nemate pravo da menjate tekst.'\n'You do not have the right to change files.': 'Nemate pravo da menjate fajlove.'\n'You do not have the right to add files.': 'Nemate pravo da dodajete fajlove.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Da li ovaj fajl treba da bude dostupan za ovaj prevod teksta, ili za sve prevode?'\n'Please enter a description for the file.': 'Unesite opis za ovaj fajl.'\n'Open in the browser': 'Otvori u pretraživaču'\n'Only this translation': 'Samo ovaj prevod'\n'File information': 'Podaci o fajlu'\n'Do you want this file to open in the users browser, or to automatically download?': 'Da li želite da se ovaj fajl otvara u pretraživaču korisnika, ili da se automatski preuzme?'\n'Change file information': 'Promeni informacije o fajlu'\n'Automatically download': 'Automatsko preuzimanje'\nAttachments: 'Prikačeni fajlovi'\n'Attachment does not exist.': 'Nema prikačenih fajlova'\n'Attach File to Article': 'Prikači fajl uz tekst'\n'All translations': 'Svi prevodi'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.sq.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: null\n'File $1 updated.': null\n'Edit article': null\n'You do not have the right to delete file attachments.': null\n'You must select a file to upload.': null\n'You do not have the right to delete files.': null\n'You do not have the right to change the article.': null\n'You do not have the right to change files.': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file.': null\n'Open in the browser': null\n'Only this translation': null\n'File information': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Change file information': null\n'Automatically download': null\nAttachments: null\n'Attachment does not exist.': null\n'Attach File to Article': null\n'All translations': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.sr.yml",
    "content": "'Files attached.': 'Фајл је закачен'\n'File $1 unattached.': 'фајл $1 је уклоњен'\n'Attach new file': 'Закачи нови фајл'\n'Attach existing file': 'Закачи постојећи фајл'\n'$1 file/s attached to article': '$1 фајл(ова) додат(о) у текст'\n'File attached.': 'Фајл је закачен'\n'The maximum file upload size was not configured in Newscoop.': 'Максимална величина фајла није подешена у Newscoopu'\n'File $1 $2 unattached': 'Фајл $1 $2 уклоњен'\n'File $1 $2 attached to article': 'Фајл $1 $2 закачен уз текст'\n'Unable to add attachment.': 'Није могуће закачити фајл.'\n'There was a problem uploading the file.': 'Дошло је до проблема при аплоуду фајла.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Фајл је делимично аплоудован. Ово се обично дешава када је макс. време за аплоуд кратко у односу на величину фајла. Максимална величина се подешава у php.ini'\n'The file exceeds the allowed max file size.': 'фајл прелази максимално дозвољену величину.'\n'Please make sure you upgraded the database correctly: run $1 in a shell.': 'Проверите да ли сте исправно апгрејдовали базу: покрените $1 у shell-у'\n'Maximum Upload Size': 'Максимална величина фајла за аплоуд'\n'File Size': 'Величина фајла'\n'File Name': 'Назив фајла'\nDownload: Преузми\n'File $1 updated.': 'Фајл $1 је измењен.'\n'Edit article': 'Уреди текст'\n'You do not have the right to delete file attachments.': 'Немате право да бришете прикачене фајлове.'\n'You must select a file to upload.': 'Морате изабрати фајл за аплоуд.'\n'You do not have the right to delete files.': 'Немате право да бришете фајлове.'\n'You do not have the right to change the article.': 'Немате право да мењате текст'\n'You do not have the right to change files.': 'Немате право да мењате фајлове.'\n'You do not have the right to add files.': 'Немате право да додајете фајлове.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Да ли овај фајл треба да буде доступан за овај превод текста, или за све преводе?'\n'Please enter a description for the file.': 'Унесите опис за овај фајл.'\n'Open in the browser': 'Отвори у претраживачу'\n'Only this translation': 'Само овај превод'\n'File information': 'Подаци о фајлу'\n'Do you want this file to open in the users browser, or to automatically download?': 'Да ли желите да се овај фајл отвара у претраживачу корисника, или да се аутоматски преузме?'\n'Change file information': 'Промени информације о фајлу'\n'Automatically download': 'Аутоматско преузимање'\nAttachments: 'Прикачени фајлови'\n'Attachment does not exist.': 'Нема прикаћених фајлова'\n'Attach File to Article': 'Прикачи фајл уз чланак'\n'All translations': 'Сви преводи'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.sv.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: null\n'File $1 updated.': null\n'Edit article': 'Redigera artikel'\n'You do not have the right to delete file attachments.': 'Du har inte rättighet att radera bifogade filer.'\n'You must select a file to upload.': 'Du måste välja en fil att ladda upp.'\n'You do not have the right to delete files.': 'Du har inte rätt att radera filer.'\n'You do not have the right to change the article.': 'Du har inte rätt att ändra artikeln.'\n'You do not have the right to change files.': 'Du har inte rätt att ändra filer.'\n'You do not have the right to add files.': 'Du har inte rätt att lägga till filer.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Ska den här filen bara vara tillgänglig för den här översättningen av artikeln eller för alla översättningar?'\n'Please enter a description for the file.': 'Var god skriv in en beskrivning för filen.'\n'Open in the browser': 'Öppna i webbläsaren'\n'Only this translation': 'Bara i denna översättning'\n'File information': Filinformation\n'Do you want this file to open in the users browser, or to automatically download?': 'Vill du att den här filen ska öppnas i användarens webbläsare eller automatiskt laddas ner?'\n'Change file information': 'Ändra filinformation'\n'Automatically download': 'Automatiskt laddas ner'\nAttachments: Bilagor\n'Attachment does not exist.': 'Bilagan finns inte.'\n'Attach File to Article': 'Bifoga fil till artikel'\n'All translations': 'Alla översättningar'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.tr.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: null\n'File $1 updated.': null\n'Edit article': null\n'You do not have the right to delete file attachments.': null\n'You must select a file to upload.': null\n'You do not have the right to delete files.': null\n'You do not have the right to change the article.': null\n'You do not have the right to change files.': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file.': null\n'Open in the browser': null\n'Only this translation': null\n'File information': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Change file information': null\n'Automatically download': null\nAttachments: null\n'Attachment does not exist.': null\n'Attach File to Article': null\n'All translations': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.uk.yml",
    "content": "'Files attached.': 'Файли прієднані.'\n'File $1 unattached.': 'Файл $1 приєднан.'\n'Attach new file': 'Приєднати новий файл'\n'Attach existing file': 'Приєднати існуючий файл'\n'$1 file/s attached to article': ' $1  файлів приєднано'\n'File attached.': 'Файл приєднан'\n'The maximum file upload size was not configured in Newscoop.': 'Максимальний розмір завантаженого файлу не був сконфігурован у налаштуваннях Newscoop'\n'File $1 $2 unattached': 'Файл  $1  $2 відкріплений'\n'File $1 $2 attached to article': 'Файл $1 $2 прикріплений до статті'\n'Unable to add attachment.': 'Неможливо додати файл.'\n'There was a problem uploading the file.': 'Проблема завантаження файла.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Завантажений файл збережен на сервері частково. Це пов’язано з тим, що максимально дозволений час для завантаження файлу перевищує час, необхідний для завантаження цього файлу. Максимальний час завантаження визначений у файлі php.ini'\n'The file exceeds the allowed max file size.': 'Розмір цього файлу перевищує допустимий.'\n'Please make sure you upgraded the database correctly: run $1 in a shell.': 'Будь ласка переконайтесь, що Ви правильно оновили базу даних: запуск $1 у оболонці.'\n'Maximum Upload Size': 'Максимальній розмір завантажуваного файлу'\n'File Size': 'Розмір файлу'\n'File Name': 'Ім’я файлу'\nDownload: Завантажити\n'File $1 updated.': ' Файл $1 оновлено.'\n'Edit article': 'Редагувати статтю'\n'You do not have the right to delete file attachments.': 'Ви не маєте прав видаляти приєднаного файлу'\n'You must select a file to upload.': 'Ви маєте вибрати файл для завантаження.'\n'You do not have the right to delete files.': 'Ви не маєте прав видаляти файли.'\n'You do not have the right to change the article.': 'Ви не маєте прав змінювати статті.'\n'You do not have the right to change files.': 'Ви не маєте прав змінювати файли.'\n'You do not have the right to add files.': 'Ви не маєте прав додавати файли.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Цей файл має бути дозволений тільки для цього перекладу, або для всіх?'\n'Please enter a description for the file.': 'Будь ласка введіть опис файлу.'\n'Open in the browser': 'Відкрити у браузері'\n'Only this translation': 'Тільки цей переклад'\n'File information': 'Інформація про файл'\n'Do you want this file to open in the users browser, or to automatically download?': 'Ви бажаєте щоб цей файл відкривався у бразері користувача або автоматично завантажувався?'\n'Change file information': 'Змінити інформацію про файл'\n'Automatically download': 'Автоматичне завантаження'\nAttachments: Додатки\n'Attachment does not exist.': 'Додатків не існує'\n'Attach File to Article': 'Прікріпити файл до статті'\n'All translations': 'Усі переклади'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.vi.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: null\n'File $1 updated.': null\n'Edit article': null\n'You do not have the right to delete file attachments.': null\n'You must select a file to upload.': null\n'You do not have the right to delete files.': null\n'You do not have the right to change the article.': null\n'You do not have the right to change files.': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file.': null\n'Open in the browser': null\n'Only this translation': null\n'File information': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Change file information': null\n'Automatically download': null\nAttachments: null\n'Attachment does not exist.': null\n'Attach File to Article': null\n'All translations': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.zh.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': 文件名\nDownload: 下载\n'File $1 updated.': null\n'Edit article': 编辑文章\n'You do not have the right to delete file attachments.': null\n'You must select a file to upload.': null\n'You do not have the right to delete files.': null\n'You do not have the right to change the article.': null\n'You do not have the right to change files.': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file.': null\n'Open in the browser': null\n'Only this translation': null\n'File information': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Change file information': null\n'Automatically download': null\nAttachments: null\n'Attachment does not exist.': null\n'Attach File to Article': null\n'All translations': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_files.zh_TW.yml",
    "content": "'Files attached.': null\n'File $1 unattached.': null\n'Attach new file': null\n'Attach existing file': null\n'$1 file/s attached to article': null\n'File attached.': null\n'The maximum file upload size was not configured in Newscoop.': null\n'File $1 $2 unattached': null\n'File $1 $2 attached to article': null\n'Unable to add attachment.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\n'Please make sure you upgraded the database correctly: run $1 in a shell.': null\n'Maximum Upload Size': null\n'File Size': null\n'File Name': null\nDownload: null\n'File $1 updated.': null\n'Edit article': null\n'You do not have the right to delete file attachments.': null\n'You must select a file to upload.': null\n'You do not have the right to delete files.': null\n'You do not have the right to change the article.': null\n'You do not have the right to change files.': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file.': null\n'Open in the browser': null\n'Only this translation': null\n'File information': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Change file information': null\n'Automatically download': null\nAttachments: null\n'Attachment does not exist.': null\n'Attach File to Article': null\n'All translations': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.ar.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': 'آسف أن تلك الصورة صغيرة جداً ويجب  أن تكون على الأقل %dx%d‫.‬'\n'Slideshow rendition': 'هيكلة عرض الشرائح'\n'Renditions reloaded': 'تم إعادة تحميل الهيكلات '\n'Reload renditions': 'إعادة تحميل الهيكلات'\n'Edit images': 'عدل الصور'\n'Specify image url if you want to load it.': 'حدد عنوان الكتروني للصورة اذا اردت أن تحميلها'\n'Items: ': 'بنود‫:‬'\n'Attach slideshows': 'أرفق عروض الشرائح'\n'original size:': 'الحجم الأصلي:'\n'no caption': 'لا عنوان فرعي'\n'Video URL': 'رابط الفيديو'\n'Use for all': 'استخدم للكل'\n'Use default': 'استخدم الاختيار الافتراضي'\n'Slug must be unique': 'يجب أن يكون اسم الرسالة فريد من نوعه.'\nSlug: 'اسم الرسالة'\n'Slideshow headline': 'العنوان الرئيسي لعرض الشرائح'\nSlideshow: 'عرض الشرائح'\n'Set selected as default image': 'عين الصورة المختارة كالصورة الافتراضية'\n'Set as default': 'عين افتراضياً'\nSaving...: 'قيد الحفظ...'\nSaved: 'تم الحفظ'\n'Save headline': 'إحفظ العنوان الرئيسي'\n'Place Images': 'ضع صور'\n'No renditions defined.': 'لا توجد هيكلات محدّدة.'\n'No images found.': 'لم يتم العثور على أي صور.'\n'No images attached to article.': 'لا توجد صور مرفقة بالمقال.'\n'No images': 'لا يوجد صور'\n'Next: Upload and Edit Metadata': 'المقبل: إرفع البيانات الوصفية  وعدّلها'\n'Next: Place Images': 'المقبل: ضع الصور'\n'Media Archive': 'أرشيف إعلامي'\nLocation: الموقع\nItems: البنود\nItem: بند\n'Image files': 'ملقات صور'\n'Image Files: ': 'ملفات الصور'\nHeadline: 'العنوان الرئيسي'\nFinish: أنْهِ\n'Edit Image Data': 'عدل بيانات الصورة'\n'Edit $1': 'عدل $1'\n'Done editing': 'تم إنهاء تعديل'\nDetach: إفصل\nCreate: أنش\nCaption: 'عنوان فرعي'\n'Attached images': 'صور مرفقة'\n'Attach & Place': 'أرفق وضع'\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': 'أضف رابط فيديو (على سبيل المثال http://vimeo.com/25083275 لفيميو، http://youtu.be/1XsPVO61e9w ليوتيوب)'\n'Add video': 'أضف فيديو'\n'Add caption': 'أضف عنوان فرعي'\n'Show all': '... إعرض الكل'\n'The image has been removed from the article.': 'تم إزالة الصورة من هذا المقال.'\n'Unable to add new image.': 'غير قادر على إضافة صورة جديدة'\n'Image number $1 already exists': 'الصورة رقم $1 موجودة مسبقا'\n'You do not have the right to change image information.': 'ليس لديك الحق في تغيير معلومات الصور.'\n'The image number specified is already in use.': 'رقم الصورة المحدد قيد الاستخدام مسبقاً.'\n'Image $1 updated.': 'تم تحديث الصورة $1'\n'Image $1 added.': 'تم إضافة الصورة $1.'\n'Edit article': 'عدل المقال'\n'You do not have the right to attach images to articles.': 'ليس لديك الحق في إرفاق صور بمقالات.'\n'You do not have the right to add images.': 'ليس لديك الحق في إضافة صور'\n'Image information': 'معلومات الصورة'\n'Attach New Image': 'أرفق صورة جديدة'\n'Attach Image To Article': 'أرفق الصورة بالمقال'\n'Attach Existing Image': 'أرفق صورة موجودة'\n'Add New Image': 'أرفق صورة جديدة'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: 'التاريخ <br> <SMALL> (اليوم، الشهرة، السنة) </SMALL>'\n'You must select an image file to upload.': 'يجب عليك أن تختار ملف صورة من أجل الرفع'\n'Change image information': 'غير معلومات الصورة'\n'You do not have the right to add images': 'ليس لديك الحق في إضافة صور.'\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.az.yml",
    "content": "'Display newsfeed images': 'Xəbər zolağı şəkillərini nümayiş et'\n'Mark image': 'Şəkil seç'\n'Add selected images to slideshow': 'Seçilmiş şəkilləri slayd-şouya əlavə et'\n'Sorry that image is too small. Image needs to be at least %dx%d.': 'Təəssüflər olsun ki, şəkil çox kiçikdir. Şəklin ölçüsü ən az %dx%d olmalıdır.'\n'Slideshow rendition': 'Slayd-şounun ifası'\n'Renditions reloaded': 'İfalar yenidən yükləndi'\n'Reload renditions': 'İfaları yenidən yüklə'\n'Edit images': 'Şəkilləri dəyiş'\n'Specify image url if you want to load it.': 'Şəkli yükləmək istəyirsənsə, onun url-ini müəyyən et.'\n'Items: ': 'Elementlər:'\n'Attach slideshows': 'Slayd-şouları əlavə et'\n'original size:': 'orijinal ölçü:'\n'no caption': başlıqsız\n'Video URL': 'Video URL-i'\n'Use for all': 'Hamısı üçün istifadə et'\n'Use default': 'Mövcud olanı istifadə et'\n'Slug must be unique': 'Başlıq unikal olmalıdır'\nSlug: Başlıq\n'Slideshow headline': 'Slayd-şou əsas başlığı'\nSlideshow: Slayd-şou\n'Set selected as default image': 'Seçilmiş şəkli ilkin variant kimi quraşdır'\n'Set as default': 'İlkin variant kimi quraşdır'\nSaving...: Saxlanır...\nSaved: Saxlandı\n'Save headline': 'Əsas başlığı saxla'\n'Place Images': 'Şəkil Yerləşdir'\n'No renditions defined.': 'Heç bir ifa müəyyən edilmədi.'\n'No images found.': 'Şəkil tapılmadı.'\n'No images attached to article.': 'Məqaləyə şəkil əlavə edilməyib.'\n'No images': 'Şəkil yoxdur'\n'Next: Upload and Edit Metadata': 'Növbəti: Meta-məlumatı Yüklə və Dəyiş'\n'Next: Place Images': 'Növbəti: Şəkil Yerləşdir'\n'Media Archive': 'Mətbuat Arxivi'\nLocation: Məkan\nItems: Elementlər\nItem: Element\n'Image files': 'Şəkil faylları'\n'Image Files: ': 'Şəkil Faylları:'\nHeadline: 'Əsas başlıq'\nFinish: Bitir\n'Edit Image Data': 'Şəkil Haqqında Məlumatı Dəyiş'\n'Edit $1': '$1-a dəyişiklik et'\n'Done editing': 'Dəyişiklik yerinə yetirildi'\nDetach: Çıxar\nCreate: Yarat\nCaption: Sərlövhə\n'Attached images': 'Şəkil əlavə et'\n'Attach & Place': 'Əlavə et & Yerləşdir'\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': 'Videonun url-ini əlavə et (nümunə: Vimeo üçün http://vimeo.com/25083275, YouTube üçün http://youtu.be/1XsPVO61e9w)'\n'Add video': 'Video yüklə'\n'Add caption': 'Sərlövhə əlavə et'\n'Show all': Göstər\n'The image has been removed from the article.': 'Şəkil məqalədən silinib.'\n'Unable to add new image.': 'Yeni şəkil əlavə etmək mümkün deyil.'\n'Image number $1 already exists': '$1 adlı şəkil artıq istifadə olunub.'\n'You do not have the right to change image information.': 'Şəkil haqqında məlumatı dəyişməyə ixtiyarın yoxdur.'\n'The image number specified is already in use.': 'Bu saylı şəkil artıq istifadədədir.'\n'Image $1 updated.': '$1 şəkil yeniləndi.'\n'Image $1 added.': '$1 şəkil yükləndi '\n'Edit article': 'Məqaləni dəyiş'\n'You do not have the right to attach images to articles.': 'Məqaləyə şəkil əlavə etməyə ixtiyarın yoxdur.'\n'You do not have the right to add images.': 'Şəkil əlavə etməyə ixtiyarın yoxdur.'\n'Image information': 'Şəkil məlumatı'\n'Attach New Image': 'Yeni şəkil yüklə'\n'Attach Image To Article': 'Yazıya şəkil əlavə et'\n'Attach Existing Image': 'Hazır şəkili əlavə et'\n'Add New Image': 'Yeni şəkil əlavə et'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: Tarix<BR><SMALL>(iiii-aa-gg)</SMALL>\n'You must select an image file to upload.': 'Yükləmək üçün şəkil seçməlisiniz.'\n'Change image information': 'Şəkil məlumatını dəyiş'\n'You do not have the right to add images': 'Şəkil əlavə etməyə ixtiyarın yoxdur'\n'Filter by uploader...': 'Yükləyən tərəfindən filtrləmə...'\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.be.yml",
    "content": "'Display newsfeed images': null\n'Mark image': 'Адзначыць выяву'\n'Add selected images to slideshow': 'Дадаць выбраныя выявы ў слайд-шоў'\n'Sorry that image is too small. Image needs to be at least %dx%d.': 'На жаль, гэта выява занадта малая. Памер малюнкаў павінен быць па меншай меры %dx%d.'\n'Slideshow rendition': 'Камплект памераў слайд-шоў'\n'Renditions reloaded': 'Камплект памераў перазагружаны'\n'Reload renditions': 'Паўтарыць загрузку камплекта памераў'\n'Edit images': 'Рэдагаваць выявы'\n'Specify image url if you want to load it.': 'Пазначце URL выявы, калі жадаеце загрузіць яе.'\n'Items: ': 'Пункты:'\n'Attach slideshows': 'Прымацаваць слайд-шоў'\n'original size:': 'першапачатковы памер'\n'no caption': 'без подпісу'\n'Video URL': 'URL відэа'\n'Use for all': 'Выкарыстоўваць для ўсіх'\n'Use default': 'Выкарыстоўваць па змаўчанні'\n'Slug must be unique': 'Кароткае імя павінна быць унікальным'\nSlug: 'Кароткае імя'\n'Slideshow headline': 'Загаловак слайд-шоў'\nSlideshow: Слайд-шоў\n'Set selected as default image': 'Прызначыць абраную выяву па змаўчанні'\n'Set as default': 'Ўсталяваць як значэнне па змаўчанні'\nSaving...: 'Захоўваецца ...'\nSaved: Захаванае\n'Save headline': 'Захаваць загаловак'\n'Place Images': 'Устанавіць выяву'\n'No renditions defined.': 'Адпаведнасці не вызначаныя.'\n'No images found.': 'Выяваў знойдзена: 0'\n'No images attached to article.': 'Да артыкула няма прымацаваных малюнкаў.'\n'No images': 'Няма выяваў'\n'Next: Upload and Edit Metadata': 'Далей: Запампаваць і рэдагаваць мета дадзеныя'\n'Next: Place Images': 'Далей: змясціць выявы.'\n'Media Archive': Медыя-архіў\nLocation: Месца\nItems: Пункты\nItem: Пункт\n'Image files': 'Файлы выяваў'\n'Image Files: ': 'Файлы выяваў:'\nHeadline: Загаловок\nFinish: Канец\n'Edit Image Data': 'Рэдагаваць дадзеныя гэтай выявы'\n'Edit $1': 'Рэдагаваць $1'\n'Done editing': 'Закончыць рэдагаванне'\nDetach: Адлучыць\nCreate: Стварыць\nCaption: Подпіс\n'Attached images': 'Прымацаваныя выявы'\n'Attach & Place': 'Прымацаваць і размясціць'\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': 'Дадаць відеа'\n'Add caption': 'Дадаць подпіс'\n'Show all': 'Паказаць усе'\n'The image has been removed from the article.': 'Гэта фота было выдаленае з артыкула.'\n'Unable to add new image.': 'Немагчыма дадаць новы графiчны файл.'\n'Image number $1 already exists': 'Графiчны файл з нумарам $1  ужо не існуе.'\n'You do not have the right to change image information.': 'Вы ня маеце права зьмяняць iнфармацыю аб графiчным файле.'\n'The image number specified is already in use.': 'Уведзены нумар графiчнага файлу ўжо выкарыстаны.'\n'Image $1 updated.': 'Графiчны файл $1 абноўлены.'\n'Image $1 added.': 'Графiчны файл $1  даданы.'\n'Edit article': 'Рэдагаваць артыкул'\n'You do not have the right to attach images to articles.': 'Вы ня маеце права дадаваць графiчны файл да артыкулу.'\n'You do not have the right to add images.': 'Вы ня маеце права  дадаваць графiчныя файлы.'\n'Image information': 'Iнфармацыя аб графiчным файле'\n'Attach New Image': 'Дадаць новы графiчны файл'\n'Attach Image To Article': 'Дадаць графiчны файл да артыкула'\n'Attach Existing Image': 'Дадаць iснуючы графiчны файл'\n'Add New Image': 'Дадаць новы графiчны файл'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: ' Дата<BR><SMALL>(гггг-мм-дд)</SMALL> '\n'You must select an image file to upload.': 'Вы павiнны выбраць графiчны файл для загрузкi.'\n'Change image information': 'Змянiць iнфармацыю аб графiчным файле'\n'You do not have the right to add images': 'Вы ня маеце права  дадаваць графiчны файл'\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.bn.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': null\n'You do not have the right to attach images to articles.': null\n'You do not have the right to add images.': null\n'Image information': null\n'Attach New Image': null\n'Attach Image To Article': null\n'Attach Existing Image': null\n'Add New Image': null\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: null\n'You must select an image file to upload.': null\n'Change image information': null\n'You do not have the right to add images': null\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.cs.yml",
    "content": "'Display newsfeed images': 'Zobrazit newsfeed obrázky'\n'Mark image': 'Označit obrázek'\n'Add selected images to slideshow': 'Přidej vybrané obrázky do slideshow'\n'Sorry that image is too small. Image needs to be at least %dx%d.': 'Obrázek je příliš malý, jeho velikost musí být alespoň %dx%d'\n'Slideshow rendition': 'Ukázat slideshow'\n'Renditions reloaded': 'Formáty znovu nahrány'\n'Reload renditions': 'Znovu nahrané formáty'\n'Edit images': 'Editovat obrázky'\n'Specify image url if you want to load it.': 'Specifikujte URL obrázku, pokud ho chcete nahrát.'\n'Items: ': 'Položky:'\n'Attach slideshows': 'Připojit slideshows'\n'original size:': 'originální velikost:'\n'no caption': 'žádný titulek'\n'Video URL': 'Video URL'\n'Use for all': 'Použít pro všechny'\n'Use default': 'Použít default'\n'Slug must be unique': 'Článek musí být unikátní'\nSlug: Článek\n'Slideshow headline': 'Název slideshow'\nSlideshow: Slideshow\n'Set selected as default image': 'Nastavit vybraný obrázek defaultně'\n'Set as default': 'Nastavit defaultně'\nSaving...: Ukládání...\nSaved: Uloženo\n'Save headline': 'Uložit headline'\n'Place Images': 'Umístit obrázky'\n'No renditions defined.': 'Žádné formáty nejsou definované.'\n'No images found.': 'Obrázky nenalezeny'\n'No images attached to article.': 'Žádné obrázky nevloženy ke článku.'\n'No images': 'Žádné obrázky'\n'Next: Upload and Edit Metadata': 'Další: Nahrát a Editovat Metadata'\n'Next: Place Images': 'Další: Umístit obrázky'\n'Media Archive': 'Archiv Médií'\nLocation: Lokace\nItems: Položky\nItem: Položka\n'Image files': 'Soubory obrázků'\n'Image Files: ': 'Soboury obrázků:'\nHeadline: Titulek\nFinish: Hotovo\n'Edit Image Data': 'Editovat data obrázku'\n'Edit $1': 'Editovat $1'\n'Done editing': 'Editace dokončení'\nDetach: Odpojit\nCreate: Vytvořit\nCaption: Popisek\n'Attached images': 'Připojené obrázky'\n'Attach & Place': 'Připojit & Umístit'\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': 'Přidat URL videa (např.  http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)'\n'Add video': 'Přidat video'\n'Add caption': 'Přidat popisek'\n'Show all': 'Ukázat vše'\n'The image has been removed from the article.': 'Obrázek byl ze článku odstraněn.'\n'Unable to add new image.': 'Nezdařilo se přidat nový obrázek.'\n'Image number $1 already exists': 'Číslo obrázku $1 již existuje.'\n'You do not have the right to change image information.': 'Nemáte oprávnění měnit informace o obrázku.'\n'The image number specified is already in use.': 'Zvolené číslo obrázku se již používá.'\n'Image $1 updated.': 'Obrázek  $1 aktualizován.'\n'Image $1 added.': 'Obrázek  $1 přidán.'\n'Edit article': 'Upravit článek'\n'You do not have the right to attach images to articles.': 'Nemáte oprávnění přikládat obrázky k článkům.'\n'You do not have the right to add images.': 'Nemáte oprávnění přidávat  obrázky.'\n'Image information': 'Informace o obrázku'\n'Attach New Image': 'Přiložit nový obrázek'\n'Attach Image To Article': 'Přiložit obrázek k článku'\n'Attach Existing Image': 'Přiložit wxistující obrázek'\n'Add New Image': 'Přidat obrázek'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: 'Datum <BR><SMALL>(rrrr-mm-dd)</SMALL>'\n'You must select an image file to upload.': 'Zvolte obrázkový soubor k nahrání.'\n'Change image information': 'Změnit informace obrázku'\n'You do not have the right to add images': 'Nemáte právo přidavat obrázky'\n'Filter by uploader...': 'Filtrovat dle vkladatele...'\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.da.yml",
    "content": "'Display newsfeed images': 'Vis nyhedsfeed billeder'\n'Mark image': 'Vælg billede'\n'Add selected images to slideshow': 'Brug valgte billeder til galleri'\n'Sorry that image is too small. Image needs to be at least %dx%d.': 'Billedet er for lille. Det skal være mindst %dx%d.'\n'Slideshow rendition': 'Billedudgave til galleri'\n'Renditions reloaded': 'Billedudgaver opdateret'\n'Reload renditions': 'Opdater billedudgaver'\n'Edit images': 'Rediger billeder'\n'Specify image url if you want to load it.': 'Angiv billede url hvis du vil hente det.'\n'Items: ': 'Elementer:'\n'Attach slideshows': 'Vedhæft gallerier'\n'original size:': 'original størrelse:'\n'no caption': 'ingen billedtekst'\n'Video URL': 'Video URL'\n'Use for all': 'Brug til alle'\n'Use default': 'Brug standard'\n'Slug must be unique': 'Slug skal være unik'\nSlug: Slug\n'Slideshow headline': 'Galleriets overskrift'\nSlideshow: Galleri\n'Set selected as default image': 'Brug valgte billede som standard'\n'Set as default': 'Vælg som standard'\nSaving...: Gemmer...\nSaved: Gemt\n'Save headline': 'Gem overskrift'\n'Place Images': 'Indsæt billeder'\n'No renditions defined.': 'Der er ikke defineret nogen billedudgaver.'\n'No images found.': 'Ingen billeder fundet.'\n'No images attached to article.': 'Artiklen har ingen vedhæftede billeder.'\n'No images': 'Ingen billeder'\n'Next: Upload and Edit Metadata': 'Næste: Upload og rediger metadata'\n'Next: Place Images': 'Næste: Indsæt billeder'\n'Media Archive': 'Medie arkiv'\nLocation: Sted\nItems: Elementer\nItem: Element\n'Image files': Billedfiler\n'Image Files: ': 'Billedfiler:'\nHeadline: Overskrift\nFinish: Afslut\n'Edit Image Data': 'Rediger billed data'\n'Edit $1': 'Rediger $1'\n'Done editing': 'Afslut redigering'\nDetach: Fjern\nCreate: Opret\nCaption: Billedtekst\n'Attached images': 'Vedhæftede billeder'\n'Attach & Place': 'Vedhæft & indsæt'\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': 'Tilføj video url (f.eks. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)'\n'Add video': 'Tilføj video'\n'Add caption': 'Tilføj beskrivelse'\n'Show all': 'Vis alle'\n'The image has been removed from the article.': 'Billedet blev fjernet fra artiklen.'\n'Unable to add new image.': 'Kunne ikke tilføje nyt billede.'\n'Image number $1 already exists': 'Billede nummer $1 findes allerede'\n'You do not have the right to change image information.': 'Du har ikke rettigheder til at ændre billedinformation.'\n'The image number specified is already in use.': 'Billednummeret er allerede i brug.'\n'Image $1 updated.': 'Billede $1 blev opdateret'\n'Image $1 added.': 'Billede $1 tilføjet'\n'Edit article': 'Rediger artikel'\n'You do not have the right to attach images to articles.': 'Du har ikke rettigheder til at vedhæfte billeder til artikler.'\n'You do not have the right to add images.': 'Du har ikke rettigheder til at tilføje billeder.'\n'Image information': 'Billede information'\n'Attach New Image': 'Vedhæft nyt billede'\n'Attach Image To Article': 'Vedhæft billede til artiklen'\n'Attach Existing Image': 'Vedhæft eksisterende billede'\n'Add New Image': 'Tilføj nyt billede'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: Dato<BR><SMALL>(åååå-mm-dd)</SMALL>\n'You must select an image file to upload.': 'Vælg en billedfil til upload.'\n'Change image information': 'Rediger billedinformation'\n'You do not have the right to add images': 'Du har ikke rettigheder til at tilføje billeder'\n'Filter by uploader...': 'Filtrer efter uploader...'\n'Slideshow images': 'Galleri billeder'\n'Add items to slideshow': 'Føj billeder til galleri'\n'Attached Slideshows': 'Vedhæftede gallerier'\n'Value is required and can''t be empty': 'Værdien er påkrævet og kan ikke være tom'\n'Select all images': 'Vælg alle billeder'\n'Unselect all images': 'Fravælg alle billeder'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.de.yml",
    "content": "'Display newsfeed images': 'Zeige Newsfeed Bilder an.'\n'Mark image': 'Wählen Sie ein Foto'\n'Add selected images to slideshow': 'Markierte Bilder zur Bildstrecke hinzufügen. '\n'Sorry that image is too small. Image needs to be at least %dx%d.': 'Das Bild ist leider zu klein. Das Bild muss mindestens  %dx%d groß sein.'\n'Slideshow rendition': 'Bildzuschnitt für Bildstrecke'\n'Renditions reloaded': 'Bildzuschnitte neu geladen'\n'Reload renditions': 'Bildzuschnitte neu laden'\n'Edit images': 'Bilder bearbeiten'\n'Specify image url if you want to load it.': 'Geben Sie die URL für das Bild an, das Sie laden wollen'\n'Items: ': Objekte\n'Attach slideshows': 'Bildstrecken anhängen'\n'original size:': Originalgrösse\n'no caption': 'Bildlegende fehlt'\n'Video URL': 'Video URL (youtu.be/... oder vimeo.com/...)'\n'Use for all': 'Für alle Bilder verwenden'\n'Use default': zurücksetzen\n'Slug must be unique': 'Diese Kopfzeile wird bereits von einer anderen Bildstrecke verwendet'\nSlug: 'Kopfzeile (Slug)'\n'Slideshow headline': 'Name der Bildstrecke'\nSlideshow: Bildstrecke\n'Set selected as default image': 'Angewähltes Bild als Standard verwenden'\n'Set as default': 'Als Standardbild definiert'\nSaving...: 'Wird gespeichert...'\nSaved: Gespeichert\n'Save headline': 'Name speichern'\n'Place Images': 'Bilder zuschneiden'\n'No renditions defined.': 'Keine Zuschnitte definiert. '\n'No images found.': 'Keine Bilder gefunden'\n'No images attached to article.': 'Keine Bilder angehängt'\n'No images': 'Keine Bilder vorhanden'\n'Next: Upload and Edit Metadata': 'Weiter (Bildlegende erfassen)'\n'Next: Place Images': 'Weiter (Bilder zuschneiden)'\n'Media Archive': Medienarchiv\nLocation: Ort\nItems: Elemente\nItem: Element\n'Image files': Bilddateien\n'Image Files: ': Bilddateien\nHeadline: 'Name der Slideshow'\nFinish: Fertig\n'Edit Image Data': 'Bildinformationen bearbeiten'\n'Edit $1': Bearbeiten\n'Done editing': Schliessen\nDetach: Entfernen\nCreate: Erstellen\nCaption: Bildlegende\n'Attached images': 'Bilder dieses Artikels'\n'Attach & Place': 'Anhängen und platzieren'\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': 'Video URL (youtu.be/... oder vimeo.com/...)'\n'Add video': 'Video hinzufügen'\n'Add caption': 'Bildlegende hinzufügen'\n'Show all': 'Alle anzeigen'\n'The image has been removed from the article.': 'Das Bild wurde aus dem Artikel entfernt.'\n'Unable to add new image.': 'Neues Bild kann nicht hinzugefügt werden.'\n'Image number $1 already exists': 'Bildnummer $1 bereits vorhanden.'\n'You do not have the right to change image information.': 'Keine Berechtigung Bildinformation zu ändern.'\n'The image number specified is already in use.': 'Die gewählte Bildnummer ist bereits vorhanden.'\n'Image $1 updated.': 'Bild $1 aktualisiert.'\n'Image $1 added.': 'Bild $1 hinzugefügt.'\n'Edit article': 'Artikel bearbeiten'\n'You do not have the right to attach images to articles.': 'Keine Berechtigung Bilder zu Artikeln hinzuzufügen.'\n'You do not have the right to add images.': 'Keine Berechtigung neue Bilder hinzuzufügen.'\n'Image information': Bildinformation\n'Attach New Image': 'Neues Bild hinzufügen'\n'Attach Image To Article': 'Bild mit Artikel verknüpfen'\n'Attach Existing Image': 'Existierendes Bild verknüpfen'\n'Add New Image': 'Neues Bild hinzufügen'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: 'Datum<BR><SMALL>(yyyy-mm-dd)</SMALL> '\n'You must select an image file to upload.': 'Eine Bilddatei zum Hochladen auswählen.'\n'Change image information': 'Bildinformation ändern'\n'You do not have the right to add images': 'Keine Berechtigung Bilder hinzuzufügen.'\n'Filter by uploader...': 'Filtern nach uploader...'\n'Slideshow images': 'Slideshow Bilder'\n'Add items to slideshow': 'Fügen Sie der Slideshow Objekte hinzu'\n'Attached Slideshows': 'Angehängte Slideshows'\n'Value is required and can''t be empty': 'Der Wert ist erforderlich. '\n'Select all images': 'Alle Bilder auswählen'\n'Unselect all images': 'Die Auswahl aller Bilder rückgängig machen'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.de_AT.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': 'Das Bild ist leider zu klein. Das Bild muss mindestens  %dx%d groß sein.'\n'Slideshow rendition': 'Bildzuschnitt für Bildstrecke'\n'Renditions reloaded': 'Bildzuschnitte neu geladen'\n'Reload renditions': 'Bildzuschnitte neu laden'\n'Edit images': 'Bilder bearbeiten'\n'Specify image url if you want to load it.': 'Geben Sie die URL für das Bild an, das Sie laden wollen'\n'Items: ': Objekte\n'Attach slideshows': 'Bildstrecken anhängen'\n'original size:': Originalgrösse\n'no caption': 'Bildlegende fehlt'\n'Video URL': 'Video URL (youtu.be/... oder vimeo.com/...)'\n'Use for all': 'Für alle Bilder verwenden'\n'Use default': zurücksetzen\n'Slug must be unique': 'Diese Kopfzeile wird bereits von einer anderen Bildstrecke verwendet'\nSlug: 'Kopfzeile (Slug)'\n'Slideshow headline': 'Name der Bildstrecke'\nSlideshow: Bildstrecke\n'Set selected as default image': 'Angewähltes Bild als Standard verwenden'\n'Set as default': 'Als Standardbild definiert'\nSaving...: 'Wird gespeichert...'\nSaved: Gespeichert\n'Save headline': 'Name speichern'\n'Place Images': 'Bilder zuschneiden'\n'No renditions defined.': 'Keine Zuschnitte definiert. '\n'No images found.': 'Keine Bilder gefunden'\n'No images attached to article.': 'Keine Bilder angehängt'\n'No images': 'Keine Bilder vorhanden'\n'Next: Upload and Edit Metadata': 'Weiter (Bildlegende erfassen)'\n'Next: Place Images': 'Weiter (Bilder zuschneiden)'\n'Media Archive': Medienarchiv\nLocation: Ort\nItems: Elemente\nItem: Element\n'Image files': Bilddateien\n'Image Files: ': Bilddateien\nHeadline: 'Name der Slideshow'\nFinish: Fertig\n'Edit Image Data': 'Bildinformationen bearbeiten'\n'Edit $1': Bearbeiten\n'Done editing': Schliessen\nDetach: Entfernen\nCreate: Erstellen\nCaption: Bildlegende\n'Attached images': 'Bilder dieses Artikels'\n'Attach & Place': 'Anhängen und platzieren'\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': 'Video URL (youtu.be/... oder vimeo.com/...)'\n'Add video': 'Video hinzufügen'\n'Add caption': 'Bildlegende hinzufügen'\n'Show all': 'Alle anzeigen'\n'The image has been removed from the article.': 'Das Bild wurde aus dem Artikel entfernt.'\n'Unable to add new image.': 'Neues Bild kann nicht hinzugefügt werden.'\n'Image number $1 already exists': 'Bildnummer $1 bereits vorhanden.'\n'You do not have the right to change image information.': 'Keine Berechtigung Bildinformation zu ändern.'\n'The image number specified is already in use.': 'Die gewählte Bildnummer ist bereits vorhanden.'\n'Image $1 updated.': 'Bild $1 aktualisiert.'\n'Image $1 added.': 'Bild $1 hinzugefügt.'\n'Edit article': 'Artikel bearbeiten'\n'You do not have the right to attach images to articles.': 'Keine Berechtigung Bilder zu Artikeln hinzuzufügen.'\n'You do not have the right to add images.': 'Keine Berechtigung neue Bilder hinzuzufügen.'\n'Image information': Bildinformation\n'Attach New Image': 'Neues Bild hinzufügen'\n'Attach Image To Article': 'Bild mit Artikel verknüpfen'\n'Attach Existing Image': 'Existierendes Bild verknüpfen'\n'Add New Image': 'Neues Bild hinzufügen'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: 'Datum<BR><SMALL>(yyyy-mm-dd)</SMALL> '\n'You must select an image file to upload.': 'Eine Bilddatei zum Hochladen auswählen.'\n'Change image information': 'Bildinformation ändern'\n'You do not have the right to add images': 'Keine Berechtigung Bilder hinzuzufügen.'\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.el.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': 'Η εικόνα είναι πολύ μικρή. Πρέπει να είναι τουλάχιστον %dx%d.'\n'Slideshow rendition': 'Απόδοση Slideshow'\n'Renditions reloaded': 'Οι αποδόσεις επαναφορτώθηκαν'\n'Reload renditions': 'Επαναφόρτωση αποδόσεων'\n'Edit images': 'Επεξεργασία εικόνων'\n'Specify image url if you want to load it.': 'Προσδιορίστε το url της εικόνας, σε περίπτωση φόρτωσης.'\n'Items: ': 'Αντικείμενα:'\n'Attach slideshows': 'Σύναψη slideshows'\n'original size:': 'αρχικό μέγεθος:'\n'no caption': 'καμία λεζάντα'\n'Video URL': 'URL Βίντεο'\n'Use for all': 'Χρήση για όλα'\n'Use default': 'Χρήση προεπιλογής'\n'Slug must be unique': 'Ο κωδικός άρθρου πρέπει να είναι μοναδικός'\nSlug: 'Κωδικός άρθρου'\n'Slideshow headline': 'Επικεφαλίδα Slideshow'\nSlideshow: Slideshow\n'Set selected as default image': 'Η ομάδα ορίστηκε ως εικόνα προεπιλογής'\n'Set as default': 'Ορισμός ως προεπιλογή'\nSaving...: Αποθήκευση...\nSaved: Αποθηκεύτηκε\n'Save headline': 'Αποθήκευση επικεφαλίδας'\n'Place Images': 'Τοποθέτηση Εικόνων'\n'No renditions defined.': 'Δεν ορίστηκαν αποδόσεις.'\n'No images found.': 'Δεν βρέθηκαν εικόνες.'\n'No images attached to article.': 'Δεν υπάρχουν συνημμένες εικόνες στο άρθρο.'\n'No images': 'Δεν υπάρχουν εικόνες'\n'Next: Upload and Edit Metadata': 'Επομενο: Ανέβασμα και Επεξεργασία Μεταδεδομένων (Metadata)'\n'Next: Place Images': 'Επόμενο: Τοποθέτηση Εικόνων'\n'Media Archive': 'Αρχείο Πολυμέσων'\nLocation: Τοποθεσία\nItems: Αντικείμενα\nItem: Αντικείμενο\n'Image files': 'Αρχεία εικόνων'\n'Image Files: ': 'Αρχεία Εικόνων:'\nHeadline: Επικεφαλίδα\nFinish: Τέλος\n'Edit Image Data': 'Επεξεργασία Δεδομένων Εικόνας'\n'Edit $1': 'Επεξεργασία $1'\n'Done editing': 'Τέλος επεξεργασίας'\nDetach: Αφαίρεση\nCreate: Δημιουργία\nCaption: Λεζάντα\n'Attached images': 'Συνημμένες εικόνες'\n'Attach & Place': 'Σύναψη και Τοποθέτηση'\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': 'Προσθήκη url βίντεο (e.g. http://vimeo.com/25083275 για Vimeo, http://youtu.be/1XsPVO61e9w για YouTube)'\n'Add video': 'Προσθήκη βίντεο'\n'Add caption': 'Προσθήκη λεζάντας'\n'Show all': 'Εμφάνιση όλων'\n'The image has been removed from the article.': 'Η εικόνα έχει αφαιρεθεί από το άρθρο.'\n'Unable to add new image.': 'Η προσθήκη νέας εικόνας ήταν αδύνατη.'\n'Image number $1 already exists': 'Ο αριθμός εικόνας $1 ήδη υπάρχει '\n'You do not have the right to change image information.': 'Δεν έχετε το δικαίωμα να αλλάξετε τις πληροφορίες εικόνας. '\n'The image number specified is already in use.': 'Ο προσδιορισμένος αριθμός εικόνας βρίσκεται ήδη σε χρήση.'\n'Image $1 updated.': 'Η εικόνα $1 ανανεώθηκε.'\n'Image $1 added.': 'Η εικόνα $1 προστέθηκε.'\n'Edit article': 'Επεξεργασία άρθρου'\n'You do not have the right to attach images to articles.': 'Δεν έχετε το δικαίωμα να επισυνάψετε εικόνες στα άρθρα.'\n'You do not have the right to add images.': 'Δεν έχετε το δικαίωμα να προσθέσετε εικόνες.'\n'Image information': 'Πληροφορίες εικόνας'\n'Attach New Image': 'Επισύναψη Νέας Εικόνας'\n'Attach Image To Article': 'Επισύναψη Εικόνας στο Άρθρο'\n'Attach Existing Image': 'Επισύναψη Υπάρχουσας Εικόνας'\n'Add New Image': 'Προσθήκη Νέας Εικόνας'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: Ημερομηνία<BR><SMALL>(εεεε-μμ-ηη)</SMALL>\n'You must select an image file to upload.': 'Πρέπει να επιλέξετε ένα αρχείο εικόνας για ανέβασμα.'\n'Change image information': 'Αλλαγή πληροφοριών εικόνας'\n'You do not have the right to add images': 'Δεν έχετε το δικαίωμα προσθήκης εικόνων'\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.en.yml",
    "content": "'Display newsfeed images': 'Display newsfeed images'\n'Mark image': 'Mark image'\n'Add selected images to slideshow': 'Add selected images to slideshow'\n'Sorry that image is too small. Image needs to be at least %dx%d.': 'Sorry that image is too small. Image needs to be at least %dx%d.'\n'Slideshow rendition': 'Slideshow rendition'\n'Renditions reloaded': 'Renditions reloaded'\n'Reload renditions': 'Reload renditions'\n'Edit images': 'Edit images'\n'Specify image url if you want to load it.': 'Specify image url if you want to load it.'\n'Items: ': 'Items: '\n'Attach slideshows': 'Attach slideshows'\n'original size:': 'original size:'\n'no caption': 'no caption'\n'Video URL': 'Video URL'\n'Use for all': 'Use for all'\n'Use default': 'Use default'\n'Slug must be unique': 'Slug must be unique'\nSlug: Slug\n'Slideshow headline': 'Slideshow headline'\nSlideshow: Slideshow\n'Set selected as default image': 'Set selected as default image'\n'Set as default': 'Set as default'\nSaving...: Saving...\nSaved: Saved\n'Save headline': 'Save headline'\n'Place Images': 'Place Images'\n'No renditions defined.': 'No renditions defined.'\n'No images found.': 'No images found.'\n'No images attached to article.': 'No images attached to article.'\n'No images': 'No images'\n'Next: Upload and Edit Metadata': 'Next: Upload and Edit Metadata'\n'Next: Place Images': 'Next: Place Images'\n'Media Archive': 'Media Archive'\nLocation: Location\nItems: Items\nItem: Item\n'Image files': 'Image files'\n'Image Files: ': 'Image Files: '\nHeadline: Headline\nFinish: Finish\n'Edit Image Data': 'Edit Image Data'\n'Edit $1': 'Edit $1'\n'Done editing': 'Done editing'\nDetach: Detach\nCreate: Create\nCaption: Caption\n'Attached images': 'Attached images'\n'Attach & Place': 'Attach & Place'\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': 'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)'\n'Add video': 'Add video'\n'Add caption': 'Add caption'\n'Show all': 'Show all'\n'The image has been removed from the article.': 'The image has been removed from the article.'\n'Unable to add new image.': 'Unable to add new image.'\n'Image number $1 already exists': 'Image number $1 already exists'\n'You do not have the right to change image information.': 'You do not have the right to change image information.'\n'The image number specified is already in use.': 'The image number specified is already in use.'\n'Image $1 updated.': 'Image $1 updated.'\n'Image $1 added.': 'Image $1 added.'\n'Edit article': 'Edit article'\n'You do not have the right to attach images to articles.': 'You do not have the right to attach images to articles.'\n'You do not have the right to add images.': 'You do not have the right to add images.'\n'Image information': 'Image information'\n'Attach New Image': 'Attach New Image'\n'Attach Image To Article': 'Attach Image To Article'\n'Attach Existing Image': 'Attach Existing Image'\n'Add New Image': 'Add New Image'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: Date<BR><SMALL>(yyyy-mm-dd)</SMALL>\n'You must select an image file to upload.': 'You must select an image file to upload.'\n'Change image information': 'Change image information'\n'You do not have the right to add images': 'You do not have the right to add images'\n'Filter by uploader...': 'Filter by uploader...'\n'Slideshow images': 'Slideshow images'\n'Add items to slideshow': 'Add items to slideshow'\n'Attached Slideshows': 'Attached Slideshows'\n\"Value is required and can't be empty\": \"Value is required and can't be empty\"\n'Select all images': 'Select all images'\n'Unselect all images': 'Unselect all images'"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.en_GB.yml",
    "content": "'Display newsfeed images': 'Display newsfeed images'\n'Mark image': 'Mark image'\n'Add selected images to slideshow': 'Add selected images to slideshow'\n'Sorry that image is too small. Image needs to be at least %dx%d.': 'Sorry that image is too small. Image needs to be at least %dx%d.'\n'Slideshow rendition': 'Slideshow rendition'\n'Renditions reloaded': 'Renditions reloaded'\n'Reload renditions': 'Reload renditions'\n'Edit images': 'Edit images'\n'Specify image url if you want to load it.': 'Specify image url if you want to load it.'\n'Items: ': 'Items: '\n'Attach slideshows': 'Attach slideshows'\n'original size:': 'original size:'\n'no caption': 'no caption'\n'Video URL': 'Video URL'\n'Use for all': 'Use for all'\n'Use default': 'Use default'\n'Slug must be unique': 'Slug must be unique'\nSlug: Slug\n'Slideshow headline': 'Slideshow headline'\nSlideshow: Slideshow\n'Set selected as default image': 'Set selected as default image'\n'Set as default': 'Set as default'\nSaving...: Saving...\nSaved: Saved\n'Save headline': 'Save headline'\n'Place Images': 'Place Images'\n'No renditions defined.': 'No renditions defined.'\n'No images found.': 'No images found.'\n'No images attached to article.': 'No images attached to article.'\n'No images': 'No images'\n'Next: Upload and Edit Metadata': 'Next: Upload and Edit Metadata'\n'Next: Place Images': 'Next: Place Images'\n'Media Archive': 'Media Archive'\nLocation: Location\nItems: Items\nItem: Item\n'Image files': 'Image files'\n'Image Files: ': 'Image Files: '\nHeadline: Headline\nFinish: Finish\n'Edit Image Data': 'Edit Image Data'\n'Edit $1': 'Edit $1'\n'Done editing': 'Done editing'\nDetach: Detach\nCreate: Create\nCaption: Caption\n'Attached images': 'Attached images'\n'Attach & Place': 'Attach & Place'\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': 'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)'\n'Add video': 'Add video'\n'Add caption': 'Add caption'\n'Show all': 'Show all'\n'The image has been removed from the article.': 'The image has been removed from the article.'\n'Unable to add new image.': 'Unable to add new image.'\n'Image number $1 already exists': 'Image number $1 already exists'\n'You do not have the right to change image information.': 'You do not have the right to change image information.'\n'The image number specified is already in use.': 'The image number specified is already in use.'\n'Image $1 updated.': 'Image $1 updated.'\n'Image $1 added.': 'Image $1 added.'\n'Edit article': 'Edit article'\n'You do not have the right to attach images to articles.': 'You do not have the right to attach images to articles.'\n'You do not have the right to add images.': 'You do not have the right to add images.'\n'Image information': 'Image information'\n'Attach New Image': 'Attach New Image'\n'Attach Image To Article': 'Attach Image To Article'\n'Attach Existing Image': 'Attach Existing Image'\n'Add New Image': 'Add New Image'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: Date<BR><SMALL>(yyyy-mm-dd)</SMALL>\n'You must select an image file to upload.': 'You must select an image file to upload.'\n'Change image information': 'Change image information'\n'You do not have the right to add images': 'You do not have the right to add images'\n'Filter by uploader...': 'Filter by uploader...'\n'Slideshow images': 'Slideshow images'\n'Add items to slideshow': 'Add items to slideshow'\n'Attached Slideshows': 'Attached Slideshows'\n'Value is required and can''t be empty': 'Value is required and can not be empty'\n'Select all images': 'Select all images'\n'Unselect all images': 'Deselect all images'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.es.yml",
    "content": "'Display newsfeed images': 'Desplegar imágenes de los suministros de noticias'\n'Mark image': 'Marca imagen'\n'Add selected images to slideshow': 'Agregar las imágenes seleccionadas a la presentación'\n'Sorry that image is too small. Image needs to be at least %dx%d.': 'Lo siento, esa imagen es muy pequeña.  Cada imagen debe ser de al menos  %dx%d.'\n'Slideshow rendition': 'Rendición del slideshow'\n'Renditions reloaded': 'Rendiciones recargadas'\n'Reload renditions': 'Recargar rendiciones'\n'Edit images': 'Editar imágenes'\n'Specify image url if you want to load it.': 'Especifique el url de la imagen si desea cargarla.'\n'Items: ': Objetos\n'Attach slideshows': 'Añadir diapositivas'\n'original size:': 'tamaño original'\n'no caption': 'sin leyenda'\n'Video URL': 'URL de video'\n'Use for all': 'Usar en todo'\n'Use default': 'Uso predeterminado'\n'Slug must be unique': 'Enlace amigable (slug) debe ser único.'\nSlug: 'Enlace amigable (slug)'\n'Slideshow headline': 'Encabezado de presentación'\nSlideshow: Presentación\n'Set selected as default image': 'Fijar selección como imagen predeterminada'\n'Set as default': 'Fijar como predeterminado'\nSaving...: Guardando...\nSaved: Guardado\n'Save headline': 'Guardar encabezado'\n'Place Images': 'Colocar imágenes'\n'No renditions defined.': 'No hay rendiciones definidas'\n'No images found.': 'No se hallaron imágenes'\n'No images attached to article.': 'No hay imágenes agregadas al artículo'\n'No images': 'Sin imágenes'\n'Next: Upload and Edit Metadata': 'Siguiente: Cargar o editar metadatos'\n'Next: Place Images': 'Siguiente: Colocar imágenes'\n'Media Archive': 'Archivo multimedia'\nLocation: Locación\nItems: Objetos\nItem: Objeto\n'Image files': 'Archivos de imagen'\n'Image Files: ': 'Archivos de imagen:'\nHeadline: Encabezado\nFinish: Terminar\n'Edit Image Data': 'Editar datos de imagen'\n'Edit $1': 'Editar $1'\n'Done editing': 'Finalizar edición'\nDetach: Desunir\nCreate: Crear\nCaption: Leyenda\n'Attached images': 'Imágenes añadidas'\n'Attach & Place': 'Añadir y colocar'\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': 'Agregar url de video (ej. http://vimeo.com/25083275 para Vimeo, http://youtu.be/1XsPVO61e9w para YouTube)'\n'Add video': 'Añadir video'\n'Add caption': 'Añadir leyenda'\n'Show all': 'Mostrar todo'\n'The image has been removed from the article.': 'La imagen ha sido removida del artículo.'\n'Unable to add new image.': 'No es posible añadir nueva imagen. '\n'Image number $1 already exists': 'Imagen número $1 ya existe.'\n'You do not have the right to change image information.': 'No tiene autorización para cambiar la información de la imagen.'\n'The image number specified is already in use.': 'El número de imagen especificado ya está en uso.'\n'Image $1 updated.': 'Se actualizó la imagen $1 '\n'Image $1 added.': 'Se añadió la imagen $1 '\n'Edit article': 'Editar artículo'\n'You do not have the right to attach images to articles.': 'No tiene autorización  para adjuntar imágenes a los artículos'\n'You do not have the right to add images.': 'No tiene autorización para añadir imágenes.'\n'Image information': 'Información de la imagen'\n'Attach New Image': 'Adjuntar nueva imagen'\n'Attach Image To Article': 'Adjuntar imagen al artículo'\n'Attach Existing Image': 'Adjuntar imagen existente'\n'Add New Image': 'Agregar nueva imagen'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: aaaa-mm-dd\n'You must select an image file to upload.': 'Debe seleccionar un archivo de imagen para cargar.'\n'Change image information': 'Cambiar información de imagen'\n'You do not have the right to add images': 'No tiene autorización  para agregar imágenes.'\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.es_AR.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': 'Editar artículo'\n'You do not have the right to attach images to articles.': null\n'You do not have the right to add images.': null\n'Image information': null\n'Attach New Image': null\n'Attach Image To Article': null\n'Attach Existing Image': null\n'Add New Image': null\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: null\n'You must select an image file to upload.': null\n'Change image information': null\n'You do not have the right to add images': null\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.fa.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': null\n'You do not have the right to attach images to articles.': null\n'You do not have the right to add images.': null\n'Image information': null\n'Attach New Image': null\n'Attach Image To Article': null\n'Attach Existing Image': null\n'Add New Image': null\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: null\n'You must select an image file to upload.': null\n'Change image information': null\n'You do not have the right to add images': null\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.fa_AF.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': null\n'You do not have the right to attach images to articles.': null\n'You do not have the right to add images.': null\n'Image information': null\n'Attach New Image': null\n'Attach Image To Article': null\n'Attach Existing Image': null\n'Add New Image': null\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: null\n'You must select an image file to upload.': null\n'Change image information': null\n'You do not have the right to add images': null\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.fr.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: Créer\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': 'Éditer l''article'\n'You do not have the right to attach images to articles.': 'Vous navez pas le droit dattacher des images aux articles. '\n'You do not have the right to add images.': 'Vous navez pas le droit dajouter des images. '\n'Image information': 'Information dimage '\n'Attach New Image': 'Attacher Nouvelle Image '\n'Attach Image To Article': 'Attacher Image à Article '\n'Attach Existing Image': 'Attacher Image Existante '\n'Add New Image': 'Ajouter Nouvelle Image '\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: Date<BR><SMALL>(aaaa-mm-jj)</SMALL>\n'You must select an image file to upload.': 'Vous devez choisir un fichier dimage à télécharger. '\n'Change image information': 'Changer linformation dimage'\n'You do not have the right to add images': 'Vous navez pas le droit dajouter des images '\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.he.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': null\n'You do not have the right to attach images to articles.': null\n'You do not have the right to add images.': null\n'Image information': null\n'Attach New Image': null\n'Attach Image To Article': null\n'Attach Existing Image': null\n'Add New Image': null\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: null\n'You must select an image file to upload.': null\n'Change image information': null\n'You do not have the right to add images': null\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.hr.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': 'Uredi članak'\n'You do not have the right to attach images to articles.': 'Nemate prava dodavati slike u članak.'\n'You do not have the right to add images.': 'Nemate ovlasti dodavati slike.'\n'Image information': 'Podaci o slici'\n'Attach New Image': 'Priloži novu sliku'\n'Attach Image To Article': 'Priloži sliku uz članak'\n'Attach Existing Image': 'Priloži postojeću sliku'\n'Add New Image': 'Dodaj novu sliku'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: 'Datum <br><small>(gggg-mm-dd)</small>'\n'You must select an image file to upload.': 'Morate označiti sliku koju želite postaviti.'\n'Change image information': 'Promijenite podatke o slici'\n'You do not have the right to add images': 'Nemate ovlasti dodavati slike'\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.hu.yml",
    "content": "'Display newsfeed images': 'Hírcsatornaképek kijelzése'\n'Mark image': 'Kép megjelölése'\n'Add selected images to slideshow': 'A kiválasztott képek hozzáadása a diavetítéshez'\n'Sorry that image is too small. Image needs to be at least %dx%d.': 'Sajnos túl kicsi a kép. A képnek legalább %dx%d méretűnek kell lennie.'\n'Slideshow rendition': 'Diavetítés megjelenítése'\n'Renditions reloaded': 'A megjelenítések újratöltése megtörtént'\n'Reload renditions': 'Megjelenítések újratöltése'\n'Edit images': 'Képek szerkesztése'\n'Specify image url if you want to load it.': 'Add meg a kép URL-címét, ha be szeretnéd tölteni.'\n'Items: ': 'Elemek:'\n'Attach slideshows': 'Diavetítések csatolása'\n'original size:': 'eredeti méret:'\n'no caption': 'nincs képaláírás'\n'Video URL': 'Videó URL-címe'\n'Use for all': 'Használat mindre'\n'Use default': 'Alapértelmezett használata'\n'Slug must be unique': 'Az idehivatkozási címnek egyedinek kell lennie'\nSlug: 'Idehivatkozási lapcím'\n'Slideshow headline': 'Diavetítés főcíme'\nSlideshow: Diavetítés\n'Set selected as default image': 'A kijelölt beállítása alapértelmezett képként'\n'Set as default': 'Beállítás alapértelmezettként'\nSaving...: Mentés...\nSaved: 'A mentés megtörtént'\n'Save headline': 'Főcím mentése'\n'Place Images': 'Képek elhelyezése'\n'No renditions defined.': 'Nincsenek meghatározott megjelenítések.'\n'No images found.': 'Nem találhatók képek.'\n'No images attached to article.': 'Nincsenek a cikkhez csatolt képek.'\n'No images': 'Nincsenek képek'\n'Next: Upload and Edit Metadata': 'Következő: Feltöltés és a metaadatok szerkesztése'\n'Next: Place Images': 'Következő: Képek elhelyezése'\n'Media Archive': Médiaarchívum\nLocation: Hely\nItems: Elemek\nItem: Elem\n'Image files': Képfájlok\n'Image Files: ': 'Képfájlok:'\nHeadline: Főcím\nFinish: Befejezés\n'Edit Image Data': 'Képadatok szerkesztése'\n'Edit $1': 'A/z $1 szerkesztése'\n'Done editing': 'A szerkesztés kész'\nDetach: Leválasztás\nCreate: Létrehozás\nCaption: Képaláírás\n'Attached images': 'Csatolt képek'\n'Attach & Place': 'Csatolás és elhelyezés'\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': 'Videó URL-cím hozzáadása (pl.: Vimeo esetén http://vimeo.com/25083275, YouTube esetén http://youtu.be/1XsPVO61e9w)'\n'Add video': 'Videó hozzáadása'\n'Add caption': 'Képaláírás hozzáadása'\n'Show all': 'Az összes megjelenítése'\n'The image has been removed from the article.': 'A kép eltávolítása a cikkből megtörtént.'\n'Unable to add new image.': 'Nem lehet új képet hozzáadni.'\n'Image number $1 already exists': 'Már létezik $1 számú kép'\n'You do not have the right to change image information.': 'Nincs jogod a képinformációk módosításaihoz.'\n'The image number specified is already in use.': 'A kép megadott száma már használatban van.'\n'Image $1 updated.': 'A/z $1 kép frissítése már megtörtént.'\n'Image $1 added.': 'A/z $1 kép hozzáadása megtörtént.'\n'Edit article': 'Cikk szerkesztése'\n'You do not have the right to attach images to articles.': 'Nincs jogod a képek cikkekhez való csatolásához.'\n'You do not have the right to add images.': 'Nincs jogod a képek hozzáadásához.'\n'Image information': Képinformációk\n'Attach New Image': 'Új kép csatolása'\n'Attach Image To Article': 'Kép csatolása a cikkhez'\n'Attach Existing Image': 'Meglévő kép csatolása'\n'Add New Image': 'Új kép hozzáadása'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: Dátum<BR><SMALL>(éééé-hh-nn)</SMALL>\n'You must select an image file to upload.': 'Ki kell választanod egy feltöltendő képfájlt.'\n'Change image information': 'Képinformációk módosítása'\n'You do not have the right to add images': 'Nincs jogod a képek hozzáadásához'\n'Filter by uploader...': 'Szűrés feltöltő szerint...'\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.hy.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': 'Խմբագրել հոդված'\n'You do not have the right to attach images to articles.': null\n'You do not have the right to add images.': null\n'Image information': null\n'Attach New Image': null\n'Attach Image To Article': null\n'Attach Existing Image': null\n'Add New Image': null\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: null\n'You must select an image file to upload.': null\n'Change image information': null\n'You do not have the right to add images': null\n'Filter by uploader...': null\n'Slideshow images': 'Slideshow images'\n'Add items to slideshow': 'Add items to slideshow'\n'Attached Slideshows': 'Attached Slideshows'\n'Value is required and can''t be empty': 'Value is required and can''t be empty'\n'Select all images': 'Select all images'\n'Unselect all images': 'Unselect all images'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.hy_AM.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': 'Խմբագրել հոդված'\n'You do not have the right to attach images to articles.': null\n'You do not have the right to add images.': null\n'Image information': null\n'Attach New Image': null\n'Attach Image To Article': null\n'Attach Existing Image': null\n'Add New Image': null\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: null\n'You must select an image file to upload.': null\n'Change image information': null\n'You do not have the right to add images': null\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.id.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': null\n'You do not have the right to attach images to articles.': null\n'You do not have the right to add images.': null\n'Image information': null\n'Attach New Image': null\n'Attach Image To Article': null\n'Attach Existing Image': null\n'Add New Image': null\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: null\n'You must select an image file to upload.': null\n'Change image information': null\n'You do not have the right to add images': null\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.it.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': 'Questa immagine è troppo piccola. Le immagini devono essere almeno %d×%x'\n'Slideshow rendition': 'Rendition delle gallerie di immagini'\n'Renditions reloaded': 'Rendition ricaricate'\n'Reload renditions': 'Ricarica le rendition'\n'Edit images': 'Modifica immagini'\n'Specify image url if you want to load it.': 'Se vuoi caricare unimmagine esterna indica lURL'\n'Items: ': 'Elementi:'\n'Attach slideshows': 'Allega gallerie di immagini'\n'original size:': 'dimensione originale:'\n'no caption': 'senza didascalia'\n'Video URL': 'URL del video'\n'Use for all': 'Usa per tutti'\n'Use default': 'Usa il default'\n'Slug must be unique': 'Lo slug devessere unico'\nSlug: Slug\n'Slideshow headline': 'Titolo della galleria di immagini'\nSlideshow: 'Galleria di immagini'\n'Set selected as default image': 'Imposta limmagine scelta come immagine di default'\n'Set as default': 'Imposta come default'\nSaving...: Salvataggio...\nSaved: Salvato\n'Save headline': 'Salva titolo'\n'Place Images': 'Posiziona immagini'\n'No renditions defined.': 'Nessuna rendition definita.'\n'No images found.': 'Nessuna immagine trovata.'\n'No images attached to article.': 'Nessuna immagine allegata allarticolo.'\n'No images': 'Nessuna immagine'\n'Next: Upload and Edit Metadata': 'Segue: Caricamento e modifica metadati'\n'Next: Place Images': 'Segue: Posiziona immagini'\n'Media Archive': 'Archivio media'\nLocation: Posizione\nItems: Elementi\nItem: Elemento\n'Image files': 'File immagine'\n'Image Files: ': 'File immagine:'\nHeadline: Titolo\nFinish: Fine\n'Edit Image Data': 'Modifica i dati dellimmagine'\n'Edit $1': 'Modifica $1'\n'Done editing': 'Fine modifiche'\nDetach: Scollega\nCreate: Crea\nCaption: Didascalia\n'Attached images': 'Immagini allegate'\n'Attach & Place': 'Allega e posiziona'\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': 'Aggiungi URL del video (es.: http://vimeo.com/25083275 per Vimeo, http://youtu.be/1XsPVO61e9w per YouTube)'\n'Add video': 'Aggiungi video'\n'Add caption': 'Aggiungi didascalia'\n'Show all': 'Mostra tutto'\n'The image has been removed from the article.': 'Limmagine è stata rimossa dallarticolo.'\n'Unable to add new image.': 'Impossibile aggiungere la nuova immagine.'\n'Image number $1 already exists': 'Cè già limmagine numero $1'\n'You do not have the right to change image information.': 'Non hai il permesso di cambiare le informazioni dellimmagine'\n'The image number specified is already in use.': 'Questo numero è già usato per unaltra immagine.'\n'Image $1 updated.': 'Immagine $1 aggiornata.'\n'Image $1 added.': 'Immagine $1 aggiunta.'\n'Edit article': 'Modifica articolo'\n'You do not have the right to attach images to articles.': 'Non hai il permesso di aggiungere immagini agli articoli.'\n'You do not have the right to add images.': 'Non hai il permesso di aggiungere immagini.'\n'Image information': 'Informazioni sullimmagine'\n'Attach New Image': 'Allega nuova immagine'\n'Attach Image To Article': 'Allega immagine allarticolo'\n'Attach Existing Image': 'Allega una immagine già presente'\n'Add New Image': 'Aggiungi una nuova immagine'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: Data<BR><SMALL>(aaaa-mm-gg)</SMALL>\n'You must select an image file to upload.': 'Seleziona una immagine da caricare.'\n'Change image information': 'Cambia le informazioni dellimmagine'\n'You do not have the right to add images': 'Non hai il permesso di aggiungere immagini'\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.ka.yml",
    "content": "'Display newsfeed images': 'ახალი ამბების გამოსახულებების ჩვენება'\n'Mark image': 'გამოსახულების მონიშვნა'\n'Add selected images to slideshow': 'დაუმატეთ მონიშნული გამოსახულებები სლაიდშოუს'\n'Sorry that image is too small. Image needs to be at least %dx%d.': 'სამწუხაროდ ეს გამოსახულება ძალიან პატარაა. გამოსახულება უნდა იყოს სულ მცირე %dx%d. '\n'Slideshow rendition': 'სლაიდშოუს განმარტება'\n'Renditions reloaded': 'რეპროდუქციები გადაიტვირთა'\n'Reload renditions': 'რეპროდუქციების გადატვირთვა'\n'Edit images': 'გამოსახულების რედაქტირება'\n'Specify image url if you want to load it.': 'მიუთითეთ გამოსახულების url, თუ გსურთ მისი ჩატვირთვა. '\n'Items: ': 'ელემენტები:'\n'Attach slideshows': 'სლაიდშოუს მიმაგრება'\n'original size:': 'ორიგინალი ზომა:'\n'no caption': უსათაურო\n'Video URL': 'ვიდეოს URL'\n'Use for all': 'გამოყენება ყველა შემთხვევისთვის'\n'Use default': 'ნაგულისხმევის გამოყენება '\n'Slug must be unique': 'სტატიის ესკიზის კოდური სახელი უნდა იყოს უნიუკალური'\nSlug: 'სტატიის ესკიზის კოდური სახელი '\n'Slideshow headline': 'სლაიდშოუს სათაური'\nSlideshow: სლაიდშოუ\n'Set selected as default image': 'მოცემული გამოსახულების ნაგულისხმევ გამოსახულებად დაყენება'\n'Set as default': 'ნაგულისხმებად დაყენება'\nSaving...: დამახსოვრება...\nSaved: დამახსოვრებულია\n'Save headline': 'სათაურის დამახსოვრება'\n'Place Images': 'გამოსახულებების მოთავსება'\n'No renditions defined.': 'განმარტებები არ არის განსაზღვრული. '\n'No images found.': 'გამოსახულებები ვერ მოიძებნა.'\n'No images attached to article.': 'სტატიას არ ერთვის გამოსახულებები. '\n'No images': 'გამოსახულებები არ არის. '\n'Next: Upload and Edit Metadata': 'შემდეგი: მეტამონაცემების ატვირთვა და რედაქტირება'\n'Next: Place Images': 'შემდეგ: გამოსახულებების მოთავსება'\n'Media Archive': 'მედია არქივი'\nLocation: ლოკაცია\nItems: ელემენტები\nItem: ელემენტი\n'Image files': 'გამოსახულებითი ფაილები'\n'Image Files: ': 'გამოსახულებითი ფაილები:'\nHeadline: სათაური\nFinish: დასასრული\n'Edit Image Data': 'გამოსახულების მონაცემის რედაქტირება'\n'Edit $1': 'რედაქტირება $1'\n'Done editing': 'რედაქტირება დასრულებულია'\nDetach: მოხსნა\nCreate: შექმნა\nCaption: 'სათაური '\n'Attached images': 'გამოსახულების მიმაგრება'\n'Attach & Place': 'მიმაგრება და მოთავსება'\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': 'დაამატეთ ვიდეო URL (ე.ი. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)'\n'Add video': 'ვიდეოს დამატება'\n'Add caption': 'სათაურის დამატება'\n'Show all': 'ყველაფრის ჩვენება'\n'The image has been removed from the article.': 'გამოსახულება მოიხსნა სტატიიდან.'\n'Unable to add new image.': 'გამოსახულება არ დაემატა'\n'Image number $1 already exists': 'გამოსახულებების რიცხვი $1 უკვე არსებობს'\n'You do not have the right to change image information.': 'თქვენ არ გაქვთ გამოსახულების ინფორმაციის შეცვლის უფლება.'\n'The image number specified is already in use.': 'მითითებული გამოსახულების ნომერი უკვე გამოყენებულია'\n'Image $1 updated.': 'გამოსახულება $1 განახლდა'\n'Image $1 added.': 'გამოსახულება $1 დაემატა'\n'Edit article': 'სტატიის რედაქტირება'\n'You do not have the right to attach images to articles.': 'თქვენ არ გაქვთ სტატიაზე გამოსახულების მიბმის უფლება.'\n'You do not have the right to add images.': 'თქვენ არ გაქვთ გამოსახულების დამატების უფლება.'\n'Image information': 'გამოსახულების ინფორმაცია'\n'Attach New Image': 'გამოსახულების მიკვრა'\n'Attach Image To Article': 'გამოსახულების სტატიაზე მიბმა'\n'Attach Existing Image': 'არსებული გამოსახულების დამატება'\n'Add New Image': 'ახალი გამოსახულების დამატება'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: თარიღი<BR><SMALL>(წელი-თვე-დღე)</SMALL>\n'You must select an image file to upload.': 'თქვენ უნდა აირჩიოთ გამოსახულება ასატვირთად'\n'Change image information': 'გამოსახულების ინფორმაციის შეცვლა'\n'You do not have the right to add images': 'თქვენ არ გაქვთ გამოსახულების დამატების უფლება'\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.ko.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': '기사 편집'\n'You do not have the right to attach images to articles.': '기사에 이미지를 첨부할 권한이 없습니다. '\n'You do not have the right to add images.': '이미지를 추가할 권한이 없습니다. '\n'Image information': '이미지 정보'\n'Attach New Image': '새로운 이미지 첨부'\n'Attach Image To Article': '기사에 이미지 첨부'\n'Attach Existing Image': '기존 이미지 첨부 '\n'Add New Image': '새로운 이미지 첨부'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: 일자<BR><SAMLL>(년-월-일)</SMALL>\n'You must select an image file to upload.': '업로드할 이미지 파일을 선택하시오.'\n'Change image information': '이미지 정보 수정'\n'You do not have the right to add images': '이미지를 추가할 권한이 없습니다. '\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.ku.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': null\n'You do not have the right to attach images to articles.': null\n'You do not have the right to add images.': null\n'Image information': null\n'Attach New Image': null\n'Attach Image To Article': null\n'Attach Existing Image': null\n'Add New Image': null\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: null\n'You must select an image file to upload.': null\n'Change image information': null\n'You do not have the right to add images': null\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.lv.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': null\n'You do not have the right to attach images to articles.': null\n'You do not have the right to add images.': null\n'Image information': null\n'Attach New Image': null\n'Attach Image To Article': null\n'Attach Existing Image': null\n'Add New Image': null\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: null\n'You must select an image file to upload.': null\n'Change image information': null\n'You do not have the right to add images': null\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.mr.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': null\n'You do not have the right to attach images to articles.': null\n'You do not have the right to add images.': null\n'Image information': null\n'Attach New Image': null\n'Attach Image To Article': null\n'Attach Existing Image': null\n'Add New Image': null\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: null\n'You must select an image file to upload.': null\n'Change image information': null\n'You do not have the right to add images': null\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.nb_NO.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': null\n'You do not have the right to attach images to articles.': null\n'You do not have the right to add images.': null\n'Image information': null\n'Attach New Image': null\n'Attach Image To Article': null\n'Attach Existing Image': null\n'Add New Image': null\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: null\n'You must select an image file to upload.': null\n'Change image information': null\n'You do not have the right to add images': null\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.nl.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': 'Bewerk artikel'\n'You do not have the right to attach images to articles.': null\n'You do not have the right to add images.': null\n'Image information': 'Afbeelding informatie'\n'Attach New Image': 'Voeg nieuwe afbeelding toe'\n'Attach Image To Article': 'Voeg afbeelding bij artikel'\n'Attach Existing Image': 'Voeg bestaande afbeelding bij'\n'Add New Image': 'Voeg nieuwe afbeelding toe'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: Datum<BR><SMALL>(yyyy-mm-dd)</SMALL>\n'You must select an image file to upload.': null\n'Change image information': 'Wijzig afbeelding informatie'\n'You do not have the right to add images': null\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.pa.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': null\n'You do not have the right to attach images to articles.': null\n'You do not have the right to add images.': null\n'Image information': null\n'Attach New Image': null\n'Attach Image To Article': null\n'Attach Existing Image': null\n'Add New Image': null\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: null\n'You must select an image file to upload.': null\n'Change image information': null\n'You do not have the right to add images': null\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': 'Select all images'\n'Unselect all images': 'Unselect all images'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.pl.yml",
    "content": "'Display newsfeed images': 'Pokazuj obrazy z kanałów informacyjnych'\n'Mark image': 'Zaznacz zdjęcie'\n'Add selected images to slideshow': 'Dodaj zaznaczone obrazy do galerii '\n'Sorry that image is too small. Image needs to be at least %dx%d.': 'To zdjęcie jest za małe. Zdjęcie musi mieć przynajmniej %d na %d'\n'Slideshow rendition': 'Galerie obrazów'\n'Renditions reloaded': 'Rendycje zostały odświeżone. '\n'Reload renditions': 'Odśwież rendycje'\n'Edit images': 'Edytuj zdjecia'\n'Specify image url if you want to load it.': 'Podaj adres url do zdjęcia aby je załadować.'\n'Items: ': Elementy\n'Attach slideshows': 'Dodaj galerie'\n'original size:': 'rozmiar orginalny'\n'no caption': 'Brak podpisu'\n'Video URL': 'Link do wideo'\n'Use for all': 'Zastosuj dla wszystkich'\n'Use default': 'Użyj domyślny'\n'Slug must be unique': 'Slug musi być unikalny'\nSlug: Slug\n'Slideshow headline': 'Nagłówek galerii'\nSlideshow: Galeria\n'Set selected as default image': 'Ustaw wybrany jako domyślny obraz'\n'Set as default': 'Ustaw jako domyślne'\nSaving...: Zapisywanie...\nSaved: Zapisano\n'Save headline': 'Zapisz nagłówek'\n'Place Images': 'Umieść zdjęcia'\n'No renditions defined.': 'Nie masz zdefiniowanych obrazów.'\n'No images found.': 'Nie znaleziono zdjęć.'\n'No images attached to article.': 'Ten artykuł nie ma żadnych zdjęć'\n'No images': 'Brak zdjęć'\n'Next: Upload and Edit Metadata': 'Dalej: Wgraj i edytuj informacje'\n'Next: Place Images': 'Dalej: Umieść zjdęcia'\n'Media Archive': 'Biblioteka Mediów'\nLocation: Lokalizacja\nItems: Elementy\nItem: Element\n'Image files': 'Pliki zdjęć'\n'Image Files: ': 'Pliki zdjęć:'\nHeadline: Nagłówek\nFinish: Zakończ\n'Edit Image Data': 'Edytuj dane zdjecia'\n'Edit $1': 'Edytuj $1'\n'Done editing': 'Zakończ edycję'\nDetach: Usuń\nCreate: Utwórz\nCaption: Podpis\n'Attached images': 'Zalączone zdjęcia'\n'Attach & Place': 'Załącz i umieść'\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': 'Dodaj link do wideo (np. http://vimeo.com/25083275 dla Vimeo albo http://youtu.be/1XsPVO61e9w dla YouTube)'\n'Add video': 'Dodaj film'\n'Add caption': 'Dodaj podpis'\n'Show all': 'Pokaż wszystkie'\n'The image has been removed from the article.': 'Zdjęcie zostało usunięte z artykułu.'\n'Unable to add new image.': 'Nie można dodać nowego zdjęcia.'\n'Image number $1 already exists': 'Zdjęcie numer $1 już istnieje'\n'You do not have the right to change image information.': 'Nie masz praw aby zmieniać informacje o zdjęciu.'\n'The image number specified is already in use.': 'Numer zdjęcia jest już w użyciu.'\n'Image $1 updated.': 'Zdjęcie $1 zaktualizowane.'\n'Image $1 added.': 'Zdjęcie $1 dodane.'\n'Edit article': 'Edycja artykułu'\n'You do not have the right to attach images to articles.': 'Nie masz praw aby załączać zdjęcia do artykułu.'\n'You do not have the right to add images.': 'Nie masz uprawnień do dodawania zdjęć.'\n'Image information': 'Informacje o zdjęciu'\n'Attach New Image': 'Dodaj nowe zdjęcie'\n'Attach Image To Article': 'Dodaj zdjęcie do artykułu'\n'Attach Existing Image': 'Załącz istniejące zdjęcie'\n'Add New Image': 'Dodaj nowe zdjęcie'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: 'Data <BR><SMALL>(rrrr-mm-dd)</SMALL>'\n'You must select an image file to upload.': 'Musisz wybrać zdjęcie nim je dodasz.'\n'Change image information': 'Zmień informacje o zdjęciu'\n'You do not have the right to add images': 'Nie masz praw aby dodawać zdjęcia'\n'Filter by uploader...': 'Filtruj po osobie przesyłającej'\n'Slideshow images': 'Zdjęcia w galerii'\n'Add items to slideshow': 'Dodaj elementy do galerii'\n'Attached Slideshows': 'Załączone galerie'\n'Value is required and can''t be empty': 'Wartość jest wymagana i nie może być pusta.'\n'Select all images': 'Zaznacz wszystkie zdjęcia'\n'Unselect all images': 'Odznacz wszystkie zdjęcia'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.ps.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': null\n'You do not have the right to attach images to articles.': null\n'You do not have the right to add images.': null\n'Image information': null\n'Attach New Image': null\n'Attach Image To Article': null\n'Attach Existing Image': null\n'Add New Image': null\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: null\n'You must select an image file to upload.': null\n'Change image information': null\n'You do not have the right to add images': null\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.pt.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': 'Editar Artigo'\n'You do not have the right to attach images to articles.': 'Não tem permissão para anexar imagens a artigos.'\n'You do not have the right to add images.': 'Nao tem permissões para adicionar imagens.'\n'Image information': 'Informações da Imagem'\n'Attach New Image': 'Anexar nova imagem'\n'Attach Image To Article': 'Anexar imagem ao artigo'\n'Attach Existing Image': 'Anexar imagem do arquivo'\n'Add New Image': 'Adicionar Imagem'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: 'Data (aaaa-mm-dd)'\n'You must select an image file to upload.': 'Selecione uma imagem para transferir'\n'Change image information': 'Alterar informações da imagem'\n'You do not have the right to add images': 'Não tem permissões para adicionar imagens'\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.pt_BR.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': 'Editar imagens'\n'Specify image url if you want to load it.': 'Especifique o endereço url da imagem se quer fazer o load dela.'\n'Items: ': 'itens:'\n'Attach slideshows': 'Anexar slideshows'\n'original size:': 'tamanho original:'\n'no caption': 'sem legenda'\n'Video URL': 'URL do vídeo'\n'Use for all': 'Usar para tudo'\n'Use default': 'Usar padrão'\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': 'Título do slideshow'\nSlideshow: Slideshow\n'Set selected as default image': 'Definir a selecionada como imagem padrão'\n'Set as default': 'Definir como padrão'\nSaving...: Carregando...\nSaved: Salvo\n'Save headline': 'Salvar manchete'\n'Place Images': null\n'No renditions defined.': 'Nenhum formato foi definido.'\n'No images found.': 'Nenhuma imagem encontrada'\n'No images attached to article.': 'O artigo não tem imagens anexadas.'\n'No images': 'Não há imagens'\n'Next: Upload and Edit Metadata': 'Próximo: Upload e edição de metadados'\n'Next: Place Images': null\n'Media Archive': 'Arquivo de mídia'\nLocation: Localidade\nItems: Itens\nItem: Item\n'Image files': 'Arquivos de imagem'\n'Image Files: ': 'Arquivos de imagem'\nHeadline: Título\nFinish: Terminar\n'Edit Image Data': 'Editar dados da imagem'\n'Edit $1': 'Editar $1'\n'Done editing': 'Edição terminada'\nDetach: 'Remover anexo'\nCreate: Criar\nCaption: Legenda\n'Attached images': 'Imagens anexadas'\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': 'Adicionar o url do vídeo (ex: http://vimeo.com/25083275 para Vimeo, http://youtu.be/1XsPVO61e9w para YouTube)'\n'Add video': 'Adicionar vídeo'\n'Add caption': 'Adicionar legenda'\n'Show all': 'Mostrar tudo'\n'The image has been removed from the article.': 'A imagem foi removida do artigo'\n'Unable to add new image.': 'Não foi possível adicionar novas imagens'\n'Image number $1 already exists': 'Imagem número $1 já existe'\n'You do not have the right to change image information.': 'Você não tem o direito de mudar os dados da imagem'\n'The image number specified is already in use.': 'Este número de imagem já está em uso.'\n'Image $1 updated.': 'Imagem $1 foi atualizada.'\n'Image $1 added.': 'Imagem $1 adicionada.'\n'Edit article': 'Editar Artigo'\n'You do not have the right to attach images to articles.': 'Não tem permissão para anexar imagens a artigos.'\n'You do not have the right to add images.': 'Nao tem permissões para adicionar imagens.'\n'Image information': 'Informações da Imagem'\n'Attach New Image': 'Anexar nova imagem'\n'Attach Image To Article': 'Anexar imagem ao artigo'\n'Attach Existing Image': 'Anexar imagem do arquivo'\n'Add New Image': 'Adicionar Imagem'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: Data<BR><SMALL>(aaaa-mm-dd)</SMALL>\n'You must select an image file to upload.': 'Selecione uma imagem para transferir'\n'Change image information': 'Alterar informações da imagem'\n'You do not have the right to add images': 'Não tem permissões para adicionar imagens'\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.ro.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': 'Arhivă media'\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': 'Nu pot sa ataşez imaginea.'\n'Image number $1 already exists': 'Imaginea cu numărul $1 există deja'\n'You do not have the right to change image information.': 'Nu ai dreptul să schimbi informaţiile despre imagine.'\n'The image number specified is already in use.': 'Numărul specificat al imaginii este deja folosit.'\n'Image $1 updated.': 'Imaginea $1 a fost actualizată.'\n'Image $1 added.': 'Imaginea $1 a fost adăugată.'\n'Edit article': 'Modifică articolul'\n'You do not have the right to attach images to articles.': 'Nu ai dreptul să ataşezi imagini la articole.'\n'You do not have the right to add images.': 'Nu ai dreptul să adaugi imagini.'\n'Image information': 'Informaţii despre imagine'\n'Attach New Image': 'Ataşează o imagine nouă'\n'Attach Image To Article': 'Ataşează imaginea la articol'\n'Attach Existing Image': 'Ataşează o imagine existentă'\n'Add New Image': 'Adaugă o imagine nouă'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: 'Data <BR><SMALL>(aaaa-ll-zz)</SMALL>'\n'You must select an image file to upload.': 'Selectează o imagine pentru a o încărca în sistem.'\n'Change image information': 'Modifică informaţiile despre imagine'\n'You do not have the right to add images': 'Nu ai dreptul să adăugi imagini'\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.ru.yml",
    "content": "'Display newsfeed images': 'Отобразить изображения ленты новостей'\n'Mark image': 'Отметить изображение'\n'Add selected images to slideshow': 'Добавить выбранные изображения в слайдшоу'\n'Sorry that image is too small. Image needs to be at least %dx%d.': 'К сожалению, это изображение слишком мало. Размер изображений должен быть по меньшей мере %dx%d.'\n'Slideshow rendition': 'Размеры изображений в слайд-шоу'\n'Renditions reloaded': 'Размеры  перезагружены'\n'Reload renditions': 'Перезагрузить размеры'\n'Edit images': 'Редактировать изображения'\n'Specify image url if you want to load it.': 'Укажите url изображения, если хотите загрузить его.'\n'Items: ': 'Пункты:'\n'Attach slideshows': 'Прикрепить слайд-шоу'\n'original size:': 'оригинальный размер:'\n'no caption': 'без подписи'\n'Video URL': 'URL видео '\n'Use for all': 'Использовать для всех'\n'Use default': 'Использовать по умолчанию'\n'Slug must be unique': 'Краткое имя должно быть уникальным'\nSlug: 'Краткое имя'\n'Slideshow headline': 'Заголовок слайд-шоу'\nSlideshow: Слайд-шоу\n'Set selected as default image': 'Назначить выбранное изображением по умолчанию'\n'Set as default': 'Установить как значение по умолчанию'\nSaving...: Сохраняется...\nSaved: Сохранено\n'Save headline': 'Сохранить заголовок'\n'Place Images': 'Разместить изображения'\n'No renditions defined.': 'Размеры не определены. '\n'No images found.': 'Изображений не найдено.'\n'No images attached to article.': 'К статье не прикреплены изображения.'\n'No images': 'Нет изображений'\n'Next: Upload and Edit Metadata': 'Далее: Загрузить и редактировать мета-данные'\n'Next: Place Images': 'Далее: разместить изображения.'\n'Media Archive': Медиа-архив\nLocation: Место\nItems: Пункты\nItem: Пункт\n'Image files': 'Файлы изображений'\n'Image Files: ': 'Файл изображений:'\nHeadline: Заголовок\nFinish: Завершить\n'Edit Image Data': 'Редактировать данные изображения'\n'Edit $1': 'Редактировать $1'\n'Done editing': 'Закончить редактирование'\nDetach: Отсоединить\nCreate: Создать\nCaption: Подпись\n'Attached images': 'Прикрепленные изображения'\n'Attach & Place': 'Прикрепить и разместить'\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': 'Добавить url видео (например, http://vimeo.com/25083275 для Vimeo, http://youtu.be/1XsPVO61e9w для YouTube)'\n'Add video': 'Добавить видео'\n'Add caption': 'Добавить подпись'\n'Show all': 'Показать все'\n'The image has been removed from the article.': 'Это изображение было удалено из статьи.'\n'Unable to add new image.': 'Невозможно добавление нового изображения.'\n'Image number $1 already exists': 'Изображение с номером $1  уже существует.'\n'You do not have the right to change image information.': 'Вы не имеете права изменять информацию об изображении.'\n'The image number specified is already in use.': 'Указанный номер изображения уже используется.'\n'Image $1 updated.': 'Изображение $1 обновлено.'\n'Image $1 added.': 'Изображение $1 добавлено.'\n'Edit article': 'Редактировать статью'\n'You do not have the right to attach images to articles.': 'Вы не имеете прав доступа для добавления изображения к статье.'\n'You do not have the right to add images.': 'Вы не имеете прав доступа для добавления изображений.'\n'Image information': 'Информация об изображении.'\n'Attach New Image': 'Добавить новое изображение'\n'Attach Image To Article': 'Добавить изображение к статье'\n'Attach Existing Image': 'Добавить существующее изображение'\n'Add New Image': 'Добавить новое изображение'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: Дата<BR><SMALL>(гггг-мм-дд)</SMALL>\n'You must select an image file to upload.': 'Вы должны выбрать графический файл для загрузки.'\n'Change image information': 'Измениить информацию об изображении'\n'You do not have the right to add images': 'Вы не имеете прав доступа к добавлению изображения'\n'Filter by uploader...': 'Фильтр по загрузке...'\n'Slideshow images': 'Изображения в слайд-шоу'\n'Add items to slideshow': 'Добавить в слайд-шоу'\n'Attached Slideshows': 'Прикрепленные слайд-шоу'\n'Value is required and can''t be empty': 'Поле значения нельзя оставить пустым'\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.sh.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': 'Uredi slike'\n'Specify image url if you want to load it.': 'Odredite URL slike ako želite da je učitate.'\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': 'Koristi za sve.'\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: Sačuvano\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': 'Arhiva medijskih zapisa'\nLocation: null\nItems: null\nItem: null\n'Image files': Slike\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': 'Uredi $1'\n'Done editing': null\nDetach: null\nCreate: Napravi\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': 'Dodaj video'\n'Add caption': 'Dodaj opis'\n'Show all': 'Prikaži sve'\n'The image has been removed from the article.': 'Slika je uklonjena iz teksta'\n'Unable to add new image.': 'Nije moguće dodati novu sliku.'\n'Image number $1 already exists': 'Slika broj $1 već postoji'\n'You do not have the right to change image information.': 'Nemate pravo menjanja podataka o slikama.'\n'The image number specified is already in use.': 'Broj slike koji ste uneli je već upotrebljen.'\n'Image $1 updated.': 'slika $1 je izmenjena.'\n'Image $1 added.': 'Slika $1 je dodata.'\n'Edit article': 'Uredi tekst'\n'You do not have the right to attach images to articles.': 'Nemate pravo da kačite slike uz tekstove.'\n'You do not have the right to add images.': 'Nemate pravo da dodajete slike.'\n'Image information': 'Podaci o slici'\n'Attach New Image': 'Zakači novu sliku'\n'Attach Image To Article': 'Prikači sliku uz tekst'\n'Attach Existing Image': 'Prikači postojeću sliku'\n'Add New Image': 'Dodaj novu sliku'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: Datum<br><small>(gggg-mm-dd)</small>\n'You must select an image file to upload.': 'Morate izabrati sliku koju želite da aploudujete.'\n'Change image information': 'Promeni podatke o slici'\n'You do not have the right to add images': 'Nemate pravo da dodajete slike'\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.sq.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': null\n'You do not have the right to attach images to articles.': null\n'You do not have the right to add images.': null\n'Image information': null\n'Attach New Image': null\n'Attach Image To Article': null\n'Attach Existing Image': null\n'Add New Image': null\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: null\n'You must select an image file to upload.': null\n'Change image information': null\n'You do not have the right to add images': null\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.sr.yml",
    "content": "'Display newsfeed images': null\n'Mark image': 'Обележи слику'\n'Add selected images to slideshow': 'Изабрану слику додај у галерију'\n'Sorry that image is too small. Image needs to be at least %dx%d.': 'Слика није довољно велика, потребно је да буде бар %dx%d.'\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': 'Уреди слике'\n'Specify image url if you want to load it.': 'Одредите УРЛ слике ако желите да је учитате.'\n'Items: ': null\n'Attach slideshows': 'Додај галерију слика'\n'original size:': 'Оригинална величина'\n'no caption': 'Слика је без потписа'\n'Video URL': 'Видео урл'\n'Use for all': 'Користи за све.'\n'Use default': 'Дифолтно подешавање'\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': 'Наслов галерије слика'\nSlideshow: 'Галерија слика'\n'Set selected as default image': 'Подеси изабрану слику као дифолтну'\n'Set as default': 'Подеси као дифолтно'\nSaving...: Снимам...\nSaved: Сачувано\n'Save headline': 'Сачувај наслов'\n'Place Images': 'Додај слике'\n'No renditions defined.': null\n'No images found.': 'Слике нису нађене.'\n'No images attached to article.': 'Уз чланак нису додате слике.'\n'No images': 'Нема слика'\n'Next: Upload and Edit Metadata': 'Учитај и измени мета-податке'\n'Next: Place Images': 'Следећи корак: Постави слику'\n'Media Archive': 'Архива медијских записа'\nLocation: Локација\nItems: null\nItem: null\n'Image files': Слике\n'Image Files: ': 'Слике:'\nHeadline: Наслов\nFinish: Заврши\n'Edit Image Data': 'Уреди податке о слици'\n'Edit $1': 'Уреди $1'\n'Done editing': 'Заврши уређивање'\nDetach: Избаци\nCreate: Креирај\nCaption: Потпис\n'Attached images': 'Прикачи слике'\n'Attach & Place': 'Прикачи и позиционирај слике'\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': 'Додај видео (пример формата: http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)'\n'Add video': 'Додај видео'\n'Add caption': 'Додај потпис'\n'Show all': 'Прикажи све'\n'The image has been removed from the article.': 'Слика је уклоњена из текста'\n'Unable to add new image.': 'Није могуће додати нову слику.'\n'Image number $1 already exists': 'Слика број $1 већ постоји'\n'You do not have the right to change image information.': 'Немате право мењања података о сликама.'\n'The image number specified is already in use.': 'Број слике који сте унели је већ у употреби.'\n'Image $1 updated.': 'Слика $1 је измењена.'\n'Image $1 added.': 'Слика $1 је додата.'\n'Edit article': 'Уреди текст'\n'You do not have the right to attach images to articles.': 'Немате право да качите слике уз текстове.'\n'You do not have the right to add images.': 'Немате право да додајете слике.'\n'Image information': 'Подаци о слици'\n'Attach New Image': 'Прикачи нову слику'\n'Attach Image To Article': 'Прикачи слику уз текст'\n'Attach Existing Image': 'Прикачи постојећу слику'\n'Add New Image': 'Додај нову слику'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: Датум<br><small>(гггг-мм-дд)</small>\n'You must select an image file to upload.': 'Морате изабрати слику коју желите да аплоудујете.'\n'Change image information': 'Промени податке о слици'\n'You do not have the right to add images': 'Немате право да додајете слике'\n'Filter by uploader...': 'Филтрирај по...'\n'Slideshow images': 'Прикажи слике из галерије'\n'Add items to slideshow': 'Додај слику у галерију'\n'Attached Slideshows': 'Прикачене галерије слика'\n'Value is required and can''t be empty': 'Вредност је обавезна, поље не може бити празно'\n'Select all images': 'Изабери све слике'\n'Unselect all images': 'Одселектуј све слике'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.sv.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': 'Redigera artikel'\n'You do not have the right to attach images to articles.': 'Du har inte rättighet att bifoga bilder till artiklar.'\n'You do not have the right to add images.': 'Du har inte rätt att lägga till bilder.'\n'Image information': Bildinformation\n'Attach New Image': 'Bifoga ny bild'\n'Attach Image To Article': 'Bifoga bild till artikel'\n'Attach Existing Image': 'Bifoga existerande bild'\n'Add New Image': 'Lägg till ny bild'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: Datum<BR><SMALL>(åååå-mm-dd)</SMALL>\n'You must select an image file to upload.': 'Du måste välja en bild att ladda upp.'\n'Change image information': 'Ändra bildinformation'\n'You do not have the right to add images': 'Du har inte rätt att lägga till bilder'\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.tr.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': null\n'You do not have the right to attach images to articles.': null\n'You do not have the right to add images.': null\n'Image information': null\n'Attach New Image': null\n'Attach Image To Article': null\n'Attach Existing Image': null\n'Add New Image': null\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: null\n'You must select an image file to upload.': null\n'Change image information': null\n'You do not have the right to add images': null\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.uk.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': 'Вибачте, але це зображення замале. Воно повинно бути принаймні %dx%d.'\n'Slideshow rendition': 'Комплект размірів слайдшоу'\n'Renditions reloaded': 'Комплект розмірів перезавантажений'\n'Reload renditions': 'Повторити завантаження комплекту розмірів'\n'Edit images': 'Редагувати зображення'\n'Specify image url if you want to load it.': 'Вкажіть посилання на зображення, якщо хочете його завантажити.'\n'Items: ': 'Пункти:'\n'Attach slideshows': 'Прікріпити слайдшоу'\n'original size:': 'Первиний розмір:'\n'no caption': 'Без підпису'\n'Video URL': 'Посилання відео'\n'Use for all': 'Використати для всіх'\n'Use default': 'Використати за замовчуванням'\n'Slug must be unique': 'Коротке ім’я має бути унікальним'\nSlug: 'Коротке ім’я'\n'Slideshow headline': 'Заголовок слайдшоу'\nSlideshow: Слайдшоу\n'Set selected as default image': 'Призначити вибране зображення за замовчуванням'\n'Set as default': 'Встановити як значення за замовчуванням'\nSaving...: Зберігається...\nSaved: Збережено\n'Save headline': 'Зберегти заголовок'\n'Place Images': 'Розмістити зображення'\n'No renditions defined.': 'Не визначені видачи.'\n'No images found.': 'Зображення не знайдені.'\n'No images attached to article.': 'Немає прікріплених зображень до статті.'\n'No images': 'Немає зображень'\n'Next: Upload and Edit Metadata': 'Далі: Завантажити та редагувати метадані'\n'Next: Place Images': 'Далі: Розмістити зображення'\n'Media Archive': 'Медіа архів'\nLocation: Місцезнаходження\nItems: Пункти\nItem: Пункт\n'Image files': 'Графічні файли'\n'Image Files: ': 'Графічні файли:'\nHeadline: Тема\nFinish: Завершити\n'Edit Image Data': 'Редагувати дані зображення'\n'Edit $1': 'Редагувати $1'\n'Done editing': 'Завершити редагування'\nDetach: Від’єднати\nCreate: Створити\nCaption: Підпис\n'Attached images': 'Прікріплені зображення'\n'Attach & Place': 'Прікріпити та Розташувати'\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': 'Додати посилання на відео (наприклад http://vimeo.com/25083275 з Vimeo, http://youtu.be/1XsPVO61e9w з YouTube)'\n'Add video': 'Додати відео'\n'Add caption': 'Додати підпис'\n'Show all': 'Показати все'\n'The image has been removed from the article.': 'Зображення видалені зі статті.'\n'Unable to add new image.': 'Неможливо додати нове зображення.'\n'Image number $1 already exists': 'Зображення номер $1 вже існує'\n'You do not have the right to change image information.': 'Ви не маєте прав змінювати інофрмацію про зображення'\n'The image number specified is already in use.': 'Визначений номер зображення вже використовується.'\n'Image $1 updated.': 'Зображення  $1 оновлене.'\n'Image $1 added.': 'Зображення  $1  додане.'\n'Edit article': 'Редагувати статтю'\n'You do not have the right to attach images to articles.': 'Ви не маєте прав прікріпляти зображення до статей.'\n'You do not have the right to add images.': 'Ви не маєте прав додавати зображення.'\n'Image information': 'Інформація про зображення'\n'Attach New Image': 'Приєднати нове зображення'\n'Attach Image To Article': 'Прікріпити зображення до статті.'\n'Attach Existing Image': 'Прікріпити зображення '\n'Add New Image': 'Додати нове зображення'\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: Дата<BR><SMALL>(рррр-мм-дд)</SMALL>\n'You must select an image file to upload.': 'Ви маєте вибрати зображення для завантаження.'\n'Change image information': 'Змінити інформацію про зображення'\n'You do not have the right to add images': 'Ви не маєте прав додавати зображення'\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.vi.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': null\n'You do not have the right to attach images to articles.': null\n'You do not have the right to add images.': null\n'Image information': null\n'Attach New Image': null\n'Attach Image To Article': null\n'Attach Existing Image': null\n'Add New Image': null\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: null\n'You must select an image file to upload.': null\n'Change image information': null\n'You do not have the right to add images': null\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.zh.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': 图像文件\n'Image Files: ': 图像文件：\nHeadline: 头条\nFinish: 完成\n'Edit Image Data': 编辑图像数据\n'Edit $1': '编辑 $1'\n'Done editing': 编辑完成\nDetach: 拆分\nCreate: 创建\nCaption: 标题\n'Attached images': 附加图片\n'Attach & Place': 连接和放置\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': '添加视频网址 (例如，Vimeo网站的http://vimeo.com/25083275, YouTube 网站的http://youtu.be/1XsPVO61e9w) '\n'Add video': '添加视频 '\n'Add caption': 添加标题\n'Show all': 显示所有\n'The image has been removed from the article.': 图像已经从文章中移除。\n'Unable to add new image.': 无法添加新图片。\n'Image number $1 already exists': '图像编号$1 已经存在'\n'You do not have the right to change image information.': 您没有权限更改图像信息。\n'The image number specified is already in use.': 指定图像编号已在使用中。\n'Image $1 updated.': '图像 $1 已更新。'\n'Image $1 added.': '图像 $1 已添加'\n'Edit article': 编辑文章\n'You do not have the right to attach images to articles.': 您没有权限将图像附加到文章中。\n'You do not have the right to add images.': 您没有权限添加图片。\n'Image information': 图像信息\n'Attach New Image': 附加新的图片\n'Attach Image To Article': 将图像附加到文章\n'Attach Existing Image': 附加已经存在的图像\n'Add New Image': 添加新图片\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: 日期(yyyy-mm-dd)\n'You must select an image file to upload.': null\n'Change image information': 修改图片信息\n'You do not have the right to add images': 您无权限增加图片\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_images.zh_TW.yml",
    "content": "'Display newsfeed images': null\n'Mark image': null\n'Add selected images to slideshow': null\n'Sorry that image is too small. Image needs to be at least %dx%d.': null\n'Slideshow rendition': null\n'Renditions reloaded': null\n'Reload renditions': null\n'Edit images': null\n'Specify image url if you want to load it.': null\n'Items: ': null\n'Attach slideshows': null\n'original size:': null\n'no caption': null\n'Video URL': null\n'Use for all': null\n'Use default': null\n'Slug must be unique': null\nSlug: null\n'Slideshow headline': null\nSlideshow: null\n'Set selected as default image': null\n'Set as default': null\nSaving...: null\nSaved: null\n'Save headline': null\n'Place Images': null\n'No renditions defined.': null\n'No images found.': null\n'No images attached to article.': null\n'No images': null\n'Next: Upload and Edit Metadata': null\n'Next: Place Images': null\n'Media Archive': null\nLocation: null\nItems: null\nItem: null\n'Image files': null\n'Image Files: ': null\nHeadline: null\nFinish: null\n'Edit Image Data': null\n'Edit $1': null\n'Done editing': null\nDetach: null\nCreate: null\nCaption: null\n'Attached images': null\n'Attach & Place': null\n'Add video url (e.g. http://vimeo.com/25083275 for Vimeo, http://youtu.be/1XsPVO61e9w for YouTube)': null\n'Add video': null\n'Add caption': null\n'Show all': null\n'The image has been removed from the article.': null\n'Unable to add new image.': null\n'Image number $1 already exists': null\n'You do not have the right to change image information.': null\n'The image number specified is already in use.': null\n'Image $1 updated.': null\n'Image $1 added.': null\n'Edit article': null\n'You do not have the right to attach images to articles.': null\n'You do not have the right to add images.': null\n'Image information': null\n'Attach New Image': null\n'Attach Image To Article': null\n'Attach Existing Image': null\n'Add New Image': 添加新图片\nDate<BR><SMALL>(yyyy-mm-dd)</SMALL>: 日期(yyyy-mm-dd)\n'You must select an image file to upload.': null\n'Change image information': 修改图片信息\n'You do not have the right to add images': 您无权限增加图片\n'Filter by uploader...': null\n'Slideshow images': null\n'Add items to slideshow': null\n'Attached Slideshows': null\n'Value is required and can''t be empty': null\n'Select all images': null\n'Unselect all images': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.ar.yml",
    "content": "'You must enter a name for the topic.': 'يجب عليك أن تدخل اسم للموضوع.'\n'Show All': 'أظهر الجميع'\n'Select the parent of the topic': 'حدد أصل الموضوع'\nNone: 'لا شيء'\n'Add new topic': 'أضف موضوع جديد'\n'No topics have been created yet.': 'لم يتم حتى الآن إنشاء أي موضوع.'\n'Topics updated.': 'تم تحديث الموضوعات'\n'Topic does not exist.': 'الموضوع غير موجود.'\n'The topic $1 has been removed from article.': 'تم إزالة الموضوع $1 من المقالة.'\n'You do not have the right to detach topics from articles.': 'ليس لديك الحق في فصل الموضوعات عن المقالات.'\n'You do not have the right to attach topics to articles.': 'ليس لديك الحق في إرفاق الموضوعات بالمقالات.'\n'Attach Topics': 'أرفق موضوعات'\n'Attach Topic To Article': 'أرفق الموضوع بالمقال'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.az.yml",
    "content": "'You must enter a name for the topic.': 'Mövzu üçün ad daxil etməlisən.'\n'Show All': 'Hamısını Göstər'\n'Select the parent of the topic': 'Mövzunun mənbəyini seç'\nNone: 'Heç biri'\n'Add new topic': 'Yeni mövzu əlavə et'\n'No topics have been created yet.': 'Hələ ki heç bir mövzu yaradılmayıb.'\n'Topics updated.': 'Mövzular yeniləndi.'\n'Topic does not exist.': 'Mövzu mövcud deyil.'\n'The topic $1 has been removed from article.': '$1 adlı mövzu məqalədən silinib.'\n'You do not have the right to detach topics from articles.': 'Əlavə edilmiş mövzuları məqalələrdən çəxarmağa ixtiyarın yoxdur.'\n'You do not have the right to attach topics to articles.': 'Məqaləyə mövzu əlavə etməyə ixtiyarın yoxdur.'\n'Attach Topics': 'Məvzu Əlavə Et'\n'Attach Topic To Article': 'Məqaləyə Mövzu Əlavə Et'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.be.yml",
    "content": "'You must enter a name for the topic.': 'Вы павінны ўвесці назву тэмы.'\n'Show All': 'Паказаць усе'\n'Select the parent of the topic': 'Абраць верхні ўзровень тэмы'\nNone: Ніводная\n'Add new topic': 'Дадаць новую тэму'\n'No topics have been created yet.': 'Няма тэм, створаных карыстальнікамі.'\n'Topics updated.': 'Тэмы абноўленыя.'\n'Topic does not exist.': 'Тэмы не iснуе.'\n'The topic $1 has been removed from article.': 'Тэма $1 выдалена з артыкула.'\n'You do not have the right to detach topics from articles.': 'Вы ня маеце права выдаляць тэмы з артыкулаў.'\n'You do not have the right to attach topics to articles.': 'Вы ня маеце права дадаваць тэмы да артыкулаў.'\n'Attach Topics': 'Прымацаваць тэмы'\n'Attach Topic To Article': 'Прымацаваць тэму да артыкула'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.bn.yml",
    "content": "'You must enter a name for the topic.': null\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': null\n'You do not have the right to attach topics to articles.': null\n'Attach Topics': null\n'Attach Topic To Article': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.cs.yml",
    "content": "'You must enter a name for the topic.': 'Musíte vložit název námětu.'\n'Show All': 'Ukázat vše'\n'Select the parent of the topic': 'Vybrat tvůrce námětu'\nNone: Žádné\n'Add new topic': 'Přidat nový námět'\n'No topics have been created yet.': 'Žádná témata ještě nebyla vytvořena.'\n'Topics updated.': 'Téma aktulizováno.'\n'Topic does not exist.': 'Téma neexistuje.'\n'The topic $1 has been removed from article.': 'Téma $1 bylo odstraněno z článku.'\n'You do not have the right to detach topics from articles.': 'Nemáte oprávnění odpojit téma od článku.'\n'You do not have the right to attach topics to articles.': 'Nemáte oprávnění připojit téma k článku.'\n'Attach Topics': 'Připojit Téma'\n'Attach Topic To Article': 'Připojit Téma k Článku'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.da.yml",
    "content": "'You must enter a name for the topic.': 'Du skal give emnet et navn.'\n'Show All': 'Vis alle'\n'Select the parent of the topic': 'Vælg emnets forælder'\nNone: Ingen\n'Add new topic': 'Tilføj nyt emne'\n'No topics have been created yet.': 'Der er ikke nogen emner.'\n'Topics updated.': 'Emner opdateret.'\n'Topic does not exist.': 'Emnet findes ikke.'\n'The topic $1 has been removed from article.': 'Emnet $1 blev fjernet fra artiklen.'\n'You do not have the right to detach topics from articles.': 'Du har ikke rettigheder til at fjerne emner fra artikler.'\n'You do not have the right to attach topics to articles.': 'Du har ikke rettigheder til at tilføje emner til artikler.'\n'Attach Topics': 'Tilføj emner'\n'Attach Topic To Article': 'Tilføj emne til artikel'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.de.yml",
    "content": "'You must enter a name for the topic.': 'Einen Namen für das Thema eingeben. '\n'Show All': 'Alle anzeigen'\n'Select the parent of the topic': 'Übergeordnetes Thema auswählen'\nNone: Keine\n'Add new topic': 'Neues Thema hinzufügen'\n'No topics have been created yet.': 'Es wurden noch keine Themen angelegt. '\n'Topics updated.': 'Themen aktualisiert.'\n'Topic does not exist.': 'Thema existiert nicht.'\n'The topic $1 has been removed from article.': 'Das Thema $1 wurde vom Artikel entfernt.'\n'You do not have the right to detach topics from articles.': 'Keine Berechtigung, Themen von Artikeln zu entkoppeln.'\n'You do not have the right to attach topics to articles.': 'Keine Berechtigung, Themen mit Artikeln zu verknüpfen.'\n'Attach Topics': 'Thema hinzufügen'\n'Attach Topic To Article': 'Thema mit Artikel verknüpfen'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.de_AT.yml",
    "content": "'You must enter a name for the topic.': 'Einen Namen für das Thema eingeben. '\n'Show All': 'Alle anzeigen'\n'Select the parent of the topic': 'Übergeordnetes Thema auswählen'\nNone: Keine\n'Add new topic': 'Neues Thema hinzufügen'\n'No topics have been created yet.': 'Es wurden noch keine Themen angelegt. '\n'Topics updated.': 'Themen aktualisiert.'\n'Topic does not exist.': 'Thema existiert nicht.'\n'The topic $1 has been removed from article.': 'Das Thema $1 wurde vom Artikel entfernt.'\n'You do not have the right to detach topics from articles.': 'Keine Berechtigung, Themen von Artikeln zu entkoppeln.'\n'You do not have the right to attach topics to articles.': 'Keine Berechtigung, Themen mit Artikeln zu verknüpfen.'\n'Attach Topics': 'Thema hinzufügen'\n'Attach Topic To Article': 'Thema mit Artikel verknüpfen'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.el.yml",
    "content": "'You must enter a name for the topic.': 'Πρέπει να εισάγετε ένα όνομα για το θέμα.'\n'Show All': 'Εμφάνιση Όλων'\n'Select the parent of the topic': 'Επιλέξτε το γονικό του θέματος'\nNone: Κανένα\n'Add new topic': 'Προσθήκη νέου θέματος'\n'No topics have been created yet.': 'Δεν έχουν δημιουργηθεί ακόμη θέματα.'\n'Topics updated.': 'Τα θέματα ανανεώθηκαν.'\n'Topic does not exist.': 'Το θέμα δεν υπάρχει.'\n'The topic $1 has been removed from article.': 'Το θέμα $1 αφαιρέθηκε από το άρθρο.'\n'You do not have the right to detach topics from articles.': 'Δεν έχετε το δικαίωμα να αποσπάσετε θέματα από τα άρθρα.'\n'You do not have the right to attach topics to articles.': 'Δεν έχετε το δικαίωμα να επισυνάψετε θέματα στα άρθρα.'\n'Attach Topics': 'Επισύναψη Θεμάτων'\n'Attach Topic To Article': 'Επισύναψη Θέματος Στο Άρθρο'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.en.yml",
    "content": "'You must enter a name for the topic.': 'You must enter a name for the topic.'\n'Show All': 'Show All'\n'Select the parent of the topic': 'Select the parent of the topic'\nNone: None\n'Add new topic': 'Add new topic'\n'No topics have been created yet.': 'No topics have been created yet.'\n'Topics updated.': 'Topics updated.'\n'Topic does not exist.': 'Topic does not exist.'\n'The topic $1 has been removed from article.': 'The topic $1 has been removed from article.'\n'You do not have the right to detach topics from articles.': 'You do not have the right to detach topics from articles.'\n'You do not have the right to attach topics to articles.': 'You do not have the right to attach topics to articles.'\n'Attach Topics': 'Attach Topics'\n'Attach Topic To Article': 'Attach Topic To Article'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.en_GB.yml",
    "content": "'You must enter a name for the topic.': 'You must enter a name for the topic.'\n'Show All': 'Show All'\n'Select the parent of the topic': 'Select the parent of the topic'\nNone: None\n'Add new topic': 'Add new topic'\n'No topics have been created yet.': 'No topics have been created yet.'\n'Topics updated.': 'Topics updated.'\n'Topic does not exist.': 'Topic does not exist.'\n'The topic $1 has been removed from article.': 'The topic $1 has been removed from article.'\n'You do not have the right to detach topics from articles.': 'You do not have the right to detach topics from articles.'\n'You do not have the right to attach topics to articles.': 'You do not have the right to attach topics to articles.'\n'Attach Topics': 'Attach Topics'\n'Attach Topic To Article': 'Attach Topic To Article'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.es.yml",
    "content": "'You must enter a name for the topic.': 'Debe nombrar el tópico.'\n'Show All': 'Mostrar todo.'\n'Select the parent of the topic': 'Seleccione la raíz del tópico.'\nNone: Ninguno.\n'Add new topic': 'Añadir nuevo tópico.'\n'No topics have been created yet.': 'Aún no se han creado tópicos.'\n'Topics updated.': 'Se actualizaron los tópicos.'\n'Topic does not exist.': 'Este tópico no existe.'\n'The topic $1 has been removed from article.': 'Se eliminó el tópico $1 del artículo.'\n'You do not have the right to detach topics from articles.': 'No tiene autorización para desvincular los tópicos de los artículos'\n'You do not have the right to attach topics to articles.': 'No puede vincular tópicos a los artículos'\n'Attach Topics': 'Adjuntar tópicos'\n'Attach Topic To Article': 'Adjuntar tópico al artículo'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.es_AR.yml",
    "content": "'You must enter a name for the topic.': null\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': null\n'You do not have the right to attach topics to articles.': null\n'Attach Topics': null\n'Attach Topic To Article': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.fa.yml",
    "content": "'You must enter a name for the topic.': null\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': null\n'You do not have the right to attach topics to articles.': null\n'Attach Topics': null\n'Attach Topic To Article': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.fa_AF.yml",
    "content": "'You must enter a name for the topic.': null\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': null\n'You do not have the right to attach topics to articles.': null\n'Attach Topics': null\n'Attach Topic To Article': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.fr.yml",
    "content": "'You must enter a name for the topic.': 'Vous devez entrer un nom pour le sujet. '\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': 'Vous navez pas le droit de détacher des sujets darticles. '\n'You do not have the right to attach topics to articles.': 'Vous navez pas le droit dattacher des sujets aux articles. '\n'Attach Topics': 'Attacher Sujets'\n'Attach Topic To Article': 'Attacher Sujet à Article '\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.he.yml",
    "content": "'You must enter a name for the topic.': null\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': null\n'You do not have the right to attach topics to articles.': null\n'Attach Topics': null\n'Attach Topic To Article': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.hr.yml",
    "content": "'You must enter a name for the topic.': 'Morate unijeti ime za temu.'\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': 'Nemate prava uklanjati teme iz članaka.'\n'You do not have the right to attach topics to articles.': 'Nemate prava dodavati teme člancima'\n'Attach Topics': 'Priloži temu'\n'Attach Topic To Article': 'Priloži temu uz članak'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.hu.yml",
    "content": "'You must enter a name for the topic.': 'Meg kell adnod a téma nevét.'\n'Show All': 'Az összes megjelenítése'\n'Select the parent of the topic': 'A téma szülőjének kiválasztása'\nNone: Nincs\n'Add new topic': 'Új téma hozzáadása'\n'No topics have been created yet.': 'Még egy téma létrehozása sem történt meg.'\n'Topics updated.': 'A témák frissítése megtörtént.'\n'Topic does not exist.': 'A téma nem létezik.'\n'The topic $1 has been removed from article.': 'A/z $1 téma eltávolítása megtörtént a cikkből.'\n'You do not have the right to detach topics from articles.': 'Nincs jogod a témák cikkekről való leválasztásához.'\n'You do not have the right to attach topics to articles.': 'Nincs jogod a témák cikkekhez való csatolásához.'\n'Attach Topics': 'Témák csatolása'\n'Attach Topic To Article': 'Téma csatolása cikkhez'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.hy.yml",
    "content": "'You must enter a name for the topic.': null\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': null\n'You do not have the right to attach topics to articles.': null\n'Attach Topics': null\n'Attach Topic To Article': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.hy_AM.yml",
    "content": "'You must enter a name for the topic.': null\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': null\n'You do not have the right to attach topics to articles.': null\n'Attach Topics': null\n'Attach Topic To Article': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.id.yml",
    "content": "'You must enter a name for the topic.': null\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': null\n'You do not have the right to attach topics to articles.': null\n'Attach Topics': null\n'Attach Topic To Article': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.it.yml",
    "content": "'You must enter a name for the topic.': 'Occorre inserire un nome per largomento.'\n'Show All': 'Mostra tutti'\n'Select the parent of the topic': 'Scegli largomento padre'\nNone: Nessuno\n'Add new topic': 'Aggiungi un nuovo argomento'\n'No topics have been created yet.': 'Non è stato ancora creato nessun argomento.'\n'Topics updated.': 'Argomenti aggiornati.'\n'Topic does not exist.': 'Largomento non esiste.'\n'The topic $1 has been removed from article.': 'Largomento $1 è stato tolto dallarticolo.'\n'You do not have the right to detach topics from articles.': 'Non hai il permesso di togliere gli argomenti dagli articoli.'\n'You do not have the right to attach topics to articles.': 'Non hai il permesso di collegarre argomenti agli articoli.'\n'Attach Topics': 'Collega argomenti'\n'Attach Topic To Article': 'Allega largomento allarticolo'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.ka.yml",
    "content": "'You must enter a name for the topic.': 'თქვენ უნდა აკრიფოთ თემის სახელი.'\n'Show All': 'ყველას ნახვა'\n'Select the parent of the topic': 'მონიშნეთ თემის მშობელი'\nNone: არცერთი\n'Add new topic': 'ახალი თემის დამატება'\n'No topics have been created yet.': 'თემები ჯერ არ შექმნილა.'\n'Topics updated.': 'თემები განახლდა'\n'Topic does not exist.': 'თემა არ არსებობს'\n'The topic $1 has been removed from article.': 'თემა $1 მოხსნილია სტატიიდან'\n'You do not have the right to detach topics from articles.': 'თქვენ არა გაქვთ უფლება მოხსნათ თემები სტატიებიდან.'\n'You do not have the right to attach topics to articles.': 'თქვენ არა გაქვთ უფლება მიამაგროთ თემები სტატიას'\n'Attach Topics': 'მიამაგრე თემები'\n'Attach Topic To Article': 'მიამაგრე თემა სტატიას'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.ko.yml",
    "content": "'You must enter a name for the topic.': '토픽에 대한 이름을 입력하시오.'\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': '기사에서 토픽을 띄어내기할 권한이 없습니다.'\n'You do not have the right to attach topics to articles.': '기사를 토픽에 첨부할 권한이 없습니다. '\n'Attach Topics': '토픽 첨부'\n'Attach Topic To Article': '기사에 토픽 첨부'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.ku.yml",
    "content": "'You must enter a name for the topic.': null\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': null\n'You do not have the right to attach topics to articles.': null\n'Attach Topics': null\n'Attach Topic To Article': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.lv.yml",
    "content": "'You must enter a name for the topic.': null\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': null\n'You do not have the right to attach topics to articles.': null\n'Attach Topics': null\n'Attach Topic To Article': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.mr.yml",
    "content": "'You must enter a name for the topic.': null\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': null\n'You do not have the right to attach topics to articles.': null\n'Attach Topics': null\n'Attach Topic To Article': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.nb_NO.yml",
    "content": "'You must enter a name for the topic.': null\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': null\n'You do not have the right to attach topics to articles.': null\n'Attach Topics': null\n'Attach Topic To Article': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.nl.yml",
    "content": "'You must enter a name for the topic.': null\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': 'Voeg een onderwerp toe'\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': 'Onderwerp bestaat niet.'\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': null\n'You do not have the right to attach topics to articles.': null\n'Attach Topics': 'Voeg onderwerp toe'\n'Attach Topic To Article': 'Voeg onderwer bij artikel'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.pa.yml",
    "content": "'You must enter a name for the topic.': null\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': null\n'You do not have the right to attach topics to articles.': null\n'Attach Topics': null\n'Attach Topic To Article': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.pl.yml",
    "content": "'You must enter a name for the topic.': 'Musisz podać nazwę dla tematu.'\n'Show All': 'Pokaż wszystkie'\n'Select the parent of the topic': 'Wybierz rodzica dla tematu'\nNone: Brak\n'Add new topic': 'Dodaj nowy temat'\n'No topics have been created yet.': 'Nie ma jeszcze żadnego tematu.'\n'Topics updated.': 'Tematy uaktualnione.'\n'Topic does not exist.': 'Temat nie istnieje.'\n'The topic $1 has been removed from article.': 'Temat $1 został usunięty z artykułu.'\n'You do not have the right to detach topics from articles.': 'Nie masz praw aby odłączać tematy od artykułów.'\n'You do not have the right to attach topics to articles.': 'Nie masz praw by dołączać tematy do artykułów.'\n'Attach Topics': 'Dołącz Tematy'\n'Attach Topic To Article': 'Dołącz Temat do Artykułu'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.ps.yml",
    "content": "'You must enter a name for the topic.': null\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': null\n'You do not have the right to attach topics to articles.': null\n'Attach Topics': null\n'Attach Topic To Article': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.pt.yml",
    "content": "'You must enter a name for the topic.': 'Tem de usar um nome para o tema.'\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': 'Não tem permissão para eliminar anexos de artigos'\n'You do not have the right to attach topics to articles.': 'Não tem permissão para adicionar anexos a artigos'\n'Attach Topics': 'Anexar Tópicos'\n'Attach Topic To Article': 'Anexar tópico ao artigo'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.pt_BR.yml",
    "content": "'You must enter a name for the topic.': 'Você tem que digitar o nome para o tema.'\n'Show All': 'Mostrar tudo'\n'Select the parent of the topic': 'Selecionar a matriz do tópico'\nNone: Nenhum\n'Add new topic': 'Adicionar novo tema'\n'No topics have been created yet.': 'Nenhum tema foi criado ainda.'\n'Topics updated.': 'Temas atualizados.'\n'Topic does not exist.': 'Tema não existe.'\n'The topic $1 has been removed from article.': 'O tópico$1 foi removido do artigo.'\n'You do not have the right to detach topics from articles.': 'Não tem permissão para eliminar anexos de artigos'\n'You do not have the right to attach topics to articles.': 'Não tem permissão para adicionar anexos a artigos'\n'Attach Topics': 'Anexar Tópicos'\n'Attach Topic To Article': 'Anexar tópico ao artigo'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.ro.yml",
    "content": "'You must enter a name for the topic.': 'Trebuie să selectezi o denumire pentru subiect.'\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': 'Subiectul de discuţie nu există.'\n'The topic $1 has been removed from article.': 'Subiectul de discuţie $1 a fost îndepărtat de la articol.'\n'You do not have the right to detach topics from articles.': 'Nu ai dreptul să detaşezi subiecte de articole.'\n'You do not have the right to attach topics to articles.': 'Nu ai dreptul să ataşezi subiecte la articole.'\n'Attach Topics': 'Ataşează subiecte'\n'Attach Topic To Article': 'Ataşează subiectul la articol'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.ru.yml",
    "content": "'You must enter a name for the topic.': 'Вы должны ввести название темы.'\n'Show All': 'Показать все'\n'Select the parent of the topic': 'Выбрать верхний уровень темы'\nNone: 'Ни один'\n'Add new topic': 'Добавить новую тему'\n'No topics have been created yet.': 'Нет тем, созданных пользователями.'\n'Topics updated.': 'Темы обновлены.'\n'Topic does not exist.': 'Тема не существует.'\n'The topic $1 has been removed from article.': 'Тема $1 удалена из статьи.'\n'You do not have the right to detach topics from articles.': 'Вы не имеете прав доступа для удаления тем из статей.'\n'You do not have the right to attach topics to articles.': 'Вы не имеете прав доступа для добавления тем к статьям.'\n'Attach Topics': 'Прикрепить темы'\n'Attach Topic To Article': 'Прикрепить тему к статье'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.sh.yml",
    "content": "'You must enter a name for the topic.': 'Morate uneti ime topika.'\n'Show All': 'Prikaži sve'\n'Select the parent of the topic': 'Izaberite matični topik'\nNone: Nijedan\n'Add new topic': 'dodaj novi topik'\n'No topics have been created yet.': 'Nema kreiranih topika'\n'Topics updated.': 'Tema izmenjena.'\n'Topic does not exist.': 'tema ne postoji.'\n'The topic $1 has been removed from article.': 'tema $1 je uklonjena iz članka.'\n'You do not have the right to detach topics from articles.': 'Nemate pravo da uklanjate teme iz tekstova.'\n'You do not have the right to attach topics to articles.': 'Nemate pravo da dodajete teme tekstovima.'\n'Attach Topics': 'Prikači temu'\n'Attach Topic To Article': 'Dodaj temu tekstu'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.sq.yml",
    "content": "'You must enter a name for the topic.': null\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': null\n'You do not have the right to attach topics to articles.': null\n'Attach Topics': null\n'Attach Topic To Article': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.sr.yml",
    "content": "'You must enter a name for the topic.': 'Морате унети име топика.'\n'Show All': 'Прикажи све'\n'Select the parent of the topic': 'Изаберите матични топик'\nNone: Ниједан\n'Add new topic': 'додај нови топик'\n'No topics have been created yet.': 'Нема креираних топика'\n'Topics updated.': 'Тема измењена.'\n'Topic does not exist.': 'тема не постоји.'\n'The topic $1 has been removed from article.': 'тема $1 је уклоњена из текста.'\n'You do not have the right to detach topics from articles.': 'Немате право да уклањате теме из текстова.'\n'You do not have the right to attach topics to articles.': 'Немате право да додајете теме текстовима.'\n'Attach Topics': 'Прикачи тему'\n'Attach Topic To Article': 'Додај тему тексту'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.sv.yml",
    "content": "'You must enter a name for the topic.': 'Du måste skriva ett namn för temat.'\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': 'Du har inte rätt att ta bort teman från artiklar.'\n'You do not have the right to attach topics to articles.': 'Du har inte rätt att lägga till teman till artiklar.'\n'Attach Topics': 'Bifoga teman'\n'Attach Topic To Article': 'Bifoga teman till artikel'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.tr.yml",
    "content": "'You must enter a name for the topic.': null\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': null\n'You do not have the right to attach topics to articles.': null\n'Attach Topics': null\n'Attach Topic To Article': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.uk.yml",
    "content": "'You must enter a name for the topic.': 'Ви маєте ввести назву теми.'\n'Show All': 'Показати все'\n'Select the parent of the topic': 'Вибрати верхній рівень теми'\nNone: 'Ні один'\n'Add new topic': 'Додати нову тему'\n'No topics have been created yet.': 'Немає тем, створених користувачем.'\n'Topics updated.': 'Теми оновлені.'\n'Topic does not exist.': 'Тема не існує.'\n'The topic $1 has been removed from article.': 'Тема $1 видалена зі статті.'\n'You do not have the right to detach topics from articles.': 'Ви не маєте прав видалення тем зі статей.'\n'You do not have the right to attach topics to articles.': 'Ви не маєте прав додавати теми до статей.'\n'Attach Topics': 'Прікріпити теми.'\n'Attach Topic To Article': 'Прікріпити тему до статті.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.vi.yml",
    "content": "'You must enter a name for the topic.': null\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': null\n'You do not have the right to attach topics to articles.': null\n'Attach Topics': null\n'Attach Topic To Article': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.zh.yml",
    "content": "'You must enter a name for the topic.': 您必须为话题输入一个名字。\n'Show All': 显示所有\n'Select the parent of the topic': null\nNone: 没有\n'Add new topic': 添加新话题\n'No topics have been created yet.': 没有创建任何话题。\n'Topics updated.': 话题更新完毕。\n'Topic does not exist.': 话题不存在。\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': null\n'You do not have the right to attach topics to articles.': null\n'Attach Topics': null\n'Attach Topic To Article': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_topics.zh_TW.yml",
    "content": "'You must enter a name for the topic.': null\n'Show All': null\n'Select the parent of the topic': null\nNone: null\n'Add new topic': null\n'No topics have been created yet.': null\n'Topics updated.': null\n'Topic does not exist.': null\n'The topic $1 has been removed from article.': null\n'You do not have the right to detach topics from articles.': null\n'You do not have the right to attach topics to articles.': null\n'Attach Topics': null\n'Attach Topic To Article': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.ar.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': 'لون الحدث'\n'You must input a number greater than $1 and less than $2 into the $3 field.': 'يجب عليك إدخال رقم أكبر من $1 وأقل من $2 في الخانة $3.'\n'You do not have the right to translate article types.': 'ليس لديك الحق في ترجمة أنواع المقال.'\n'You do not have the right to reorder article types.': 'ليس لديك الحق في إعادة ترتيب أنواع المقال.'\n'You do not have the right to reassign article type fields.': 'ليس لديك الحق في إعادة تعيين خانات لنوع المقال.'\n'You do not have the right to manage article types.': 'ليس لديك الحق في إدارة أنواع المقال.'\n'You do not have the right to hide article types.': 'ليس لديك الحق في إخفاء أنواع المقال.'\n'You do not have the right to delete article types.': 'ليس لديك الحق في حذف أنواع المقال.'\n'Small ($1 pixels)': 'الصغير ($1 بكسل) ـ'\n'Medium ($1 pixels)': 'المتوسط ($1 بكسل) ـ'\n'Large ($1 pixels)': 'الكبير ($1 بكسل) ـ'\n'Hide human-readable field names': 'أخف أسماء الخانات القابلة مقروئة من الانسان'\n'Editor size': 'حجم المحرّر'\n'Edit and translate human-readable field names': 'عدل وترجم أسماء الخانات القابلة مقروئة للإنسان'\nCustom: 'الصناعة حسب الطلب'\n'Characters limit': 'حد الحروف'\n'The template name may only contain letters and the underscore (_) character.': 'يسمح لإسم النموذج فقط ان يحتوي على حروف والعلامة (_) ـ'\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': 'كان اسم الخانة مستخدم مسبقاً كخاصية أساسية من هذا المقال. لن يتم عرض محتوى الخانة في النماذج.'\n'The property $1 is already in use.': 'كانت الخاصية $1 قيد الاستخدام من قبل.'\nPrecision: الدقة\n'Can not convert the field $1 from $2 to type $3.': 'لا يمكن تحويل الخانة $1 من $2 إلى نوع $3.'\n'Are you sure you want to make $1 a $2 field?': 'هل أنت متأكد أنك تريد أن تجعل $1 في الخانة $2؟'\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': 'الرجوع إلى القائمة لأنواع المقال'\nshow: أظهر\nhide: أخف\n'You must enter a name for the field.': 'يجب عليك إدخال اسم للخانة.'\n'You must choose a language for the field.': 'يجب عليك اختيار لغة للخانة.'\n'You do not have the right to rename article type fields.': 'ليس لديك الحق في تسمية الخانات لأنواع المقال.'\n'You do not have the right to reassign a field type.': 'ليس لديك الحق في إعادة تعيين نوع الخانة.'\n'Translating field': 'قيد الترجمة الخانة'\n'The translation could not be added.': 'لم تضف الترجمة.'\n'The field $1 does not exist.': 'الخانة $1 غير موجودة.'\n'The $1 field may only contain letters and underscore (_) character.': 'يسمح للخانة $1 فقط ان تحتوي على الحروف والحرف (_) ـ'\n'Template Field Name': 'اسم خانة النموذج'\n'Show to Authors?': null\n'Renaming article type field': 'إعادة تسمية خانة لنوع المقال'\n'Rename field': 'إعادة تسمية الخانة'\n'Reassign a field type': 'إعادة تعيين نوع الخانة'\n'Display Name': 'اسم العرض'\n'Are you sure you want to $1 the article type field $2?': 'هل أنت متأكد أنك تريد أن $1 الخانة لنوع المقال 2'\n'Adding new article type': 'قيد إضافة نوع مقال جديد'\n'Add translation:': 'أضف ترجمة:'\n'$1 article type field $2': '$1 الخانة لنوع المقال $2'\n'$1 article type $2': '$1 نوع المقال $2'\n'Top element': 'العنصر الأعلى'\n'Article type fields': 'خانات نوع المقال'\n'Delete field $1': 'إحذف الخانة $1'\n'Adding new field': 'قيد الإضافة خانة جديدة'\n'You do not have the right to add article type fields.': 'ليس لديك الحق في إضافة خانات لأنواع المقال.'\n'The field $1 already exists.': 'الخانة $1 موجودة مسبقاً'\n'The $1  must not be void and may only contain letters and underscore (_) character.': 'لا يمكن للخانة $1 أن تكون فارغة ويمكن أن تحتوى فقط على حروف أجنبية و الحرف (_) ـ'\n'Invalid field type.': 'نوع الخانة غير صحيح'\n'You do not have the right to delete article type fields.': 'ليس لديك الحق في إضافة خانات لأنواع المقال.'\n'Are you sure you want to delete the field $1?': 'هل أنت متأكد أنك تريد حذف الخانة $1 ؟'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'سوف يحذف كل الخانات التي تحمل الأسم نفسه من كل المقالات من هذا النوع في كل المنشورات.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.az.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': 'Tədbirin Rəngi'\n'You must input a number greater than $1 and less than $2 into the $3 field.': 'Sən $3 adlı sahəyə $1-dan çox, $2-dan az rəqəmi daxil etməlisən. '\n'You do not have the right to translate article types.': 'Məqalə növlərini tərcümə etməyə ixtiyarın yoxdur.'\n'You do not have the right to reorder article types.': 'Məqalə növlərini yenidən sıralamağa ixtiyarın yoxdur.'\n'You do not have the right to reassign article type fields.': 'Məqalə növü sahəsini yenidən təyin etməyə ixtiyarın yoxdur.'\n'You do not have the right to manage article types.': 'Məqalə növlərini idarə etməyə ixtiyarın yoxdur.'\n'You do not have the right to hide article types.': 'Məqalə növlərini gizləməyə ixtiyarın yoxdur.'\n'You do not have the right to delete article types.': 'Məqalə növlərini silməyə ixtiyarın yoxdur.'\n'Small ($1 pixels)': 'Kiçik ($1 piksel)'\n'Medium ($1 pixels)': 'Orta ($1 piksel)'\n'Large ($1 pixels)': 'Böyük ($1 piksel)'\n'Hide human-readable field names': 'İnsanın oxuya biləcəyi sahə adlarını gizlə'\n'Editor size': 'Redaktorun ölçüsü'\n'Edit and translate human-readable field names': 'İnsanın oxuya biləcəyi sahə adlarını dəyiş və tərcümə et'\nCustom: Xüsusi\n'Characters limit': 'İşarə limiti'\n'The template name may only contain letters and the underscore (_) character.': 'Nümunə adı yalnız hərf və alt xətt (_) işarəsindən ibarət ola bilər.'\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': 'Sahənin adı məqalənin əsas ünvanının adı kimi istifadə edilir. Sahənin tərkibi nümunələrdə nümayiş olunmayacaq.'\n'The property $1 is already in use.': '$1 ünvanı artıq istifadədədir.'\nPrecision: Dəqiqlik\n'Can not convert the field $1 from $2 to type $3.': '$1 sahəsi $2 halından $3 halına çevrilə bilmir.'\n'Are you sure you want to make $1 a $2 field?': '$1-i $2 sahəsi etmək istədiyinə əminsən?'\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': 'Məqalə Növü Siyahısına qayıt'\nshow: göstər\nhide: gizlə\n'You must enter a name for the field.': 'Sahə üçün ad daxil etməlisən.'\n'You must choose a language for the field.': 'Sahə üçün dil seçməlisən.'\n'You do not have the right to rename article type fields.': 'Məqalə növü sahəsinin adını dəyişməyə ixtiyarın yoxdur.'\n'You do not have the right to reassign a field type.': 'Sahə növünü yenidən təyin etməyə ixtiyarın yoxdur.'\n'Translating field': 'Sahənin tərcüməsi'\n'The translation could not be added.': 'Tərcümə əlavə edilə bilmədi.'\n'The field $1 does not exist.': '$1 sahəsi mövcud deyil.'\n'The $1 field may only contain letters and underscore (_) character.': '$1 sahə adı yalnız hərf və alt xətt (_) işarəsindən ibarət ola bilər.'\n'Template Field Name': 'Nümunə Sahəsinin Adı'\n'Show to Authors?': null\n'Renaming article type field': 'Məqalə növü sahəsinin adını dəyişilməsi'\n'Rename field': 'Sahənin adını dəyiş'\n'Reassign a field type': 'Sahə növünü yenidən təyin et'\n'Display Name': 'Adı Nümayiş Et'\n'Are you sure you want to $1 the article type field $2?': '$2 məqalə növü sahəsini $1 istədiyinə əminsən?'\n'Adding new article type': 'Yeni məqalə növünün əlavə edilməsi'\n'Add translation:': 'Tərcümə Əlavə Et:'\n'$1 article type field $2': '$1 məqalə növü sahəsi $2'\n'$1 article type $2': '$1 məqalə növü $2'\n'Top element': 'Əsas Element'\n'Article type fields': 'Məqalə növü sahələri'\n'Delete field $1': '$1 sahəsini sil'\n'Adding new field': 'Yeni sahənin əlavə edilməsi'\n'You do not have the right to add article type fields.': 'Məqalə növü sahəsi əlavə etməyə ixtiyarın yoxdur.'\n'The field $1 already exists.': '$1 sahəsi artıq mövcuddur.'\n'The $1  must not be void and may only contain letters and underscore (_) character.': '$1 boş saxlana bilməz və yalnız hərf və alt xətt (_) işarəsindən ibarət ola bilər.'\n'Invalid field type.': 'Səhv sahə növü.'\n'You do not have the right to delete article type fields.': 'Məqalə növü sahəsini silməyə ixtiyarın yoxdur.'\n'Are you sure you want to delete the field $1?': '$1 sahəsini silmək istədiyinə əminsən?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'Sən həmçinin mövcud nəşrdəki bu növə aid olan bütün məqalələrdən adı belə olan bütün sahələri silmiş olacaqsan.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.be.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': 'Вы ня маеце права выдаляць тыпы артыкулаў.'\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': 'Імя шаблёну можа змяшчаць толькі літары і знак падкрэслівання (_).'\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': 'Гэтае імя поля ўжо выкарыстоўваецца як базавая ўласцівасць артыкула. Змест гэтага поля не можа быць адлюстраваны ў шаблоне.'\n'The property $1 is already in use.': 'Уласцівасць  $1 ужо выкарыстоўваецца. '\nPrecision: Дакладнасць\n'Can not convert the field $1 from $2 to type $3.': 'Немагчыма канвертаваць поле $1 з $2 у поле $3.'\n'Are you sure you want to make $1 a $2 field?': 'Вы ўпэўненыя, што жадаеце зрабіць $1 полем $2'\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': 'Вярнуцца да спісу тыпаў артыкулаў'\nshow: Паказаць\nhide: Схаваць\n'You must enter a name for the field.': 'Вы павiнны ўвесьцi назву поля.'\n'You must choose a language for the field.': 'Вы павiнны вызначыць мову для поля.'\n'You do not have the right to rename article type fields.': 'Вы ня маеце права пераймяноўваць поле тыпу артыкулаў.'\n'You do not have the right to reassign a field type.': 'Вы ня маеце права перапрызначаць тып поля.'\n'Translating field': 'Поле перакладу'\n'The translation could not be added.': 'Пераклад ня можа быць даданы.'\n'The field $1 does not exist.': 'Поле $1 не iснуе.'\n'The $1 field may only contain letters and underscore (_) character.': 'Поле $1 можа зьмяшчаць толькi лiтары i сымбаль падкрэсьлiваньня (_).'\n'Template Field Name': 'Назва поля шаблёну'\n'Show to Authors?': null\n'Renaming article type field': 'Перайменаваньне поля тыпа артыкулаў'\n'Rename field': 'Перайменаваць поле'\n'Reassign a field type': 'Перапрызначыць тып поля'\n'Display Name': 'Адлюстраваная назва'\n'Are you sure you want to $1 the article type field $2?': 'Цi Вы ўпэўненыя, што хочаце $1 поле тыпу артыкулаў $2?'\n'Adding new article type': 'Дадаваньне новага тыпу артыкула'\n'Add translation:': 'Дадаць пераклад'\n'$1 article type field $2': '$1 поле тыпа артыкулаў $2 '\n'$1 article type $2': '$1 тып артыкулаў $2 '\n'Top element': 'Верхнi элемэнт'\n'Article type fields': 'Палi тыпаў артыкулаў'\n'Delete field $1': 'Выдалiць поле $1'\n'Adding new field': 'Дадаваньне новага поля'\n'You do not have the right to add article type fields.': 'Вы ня маеце права  дадаваць палі тыпаў артыкулаў.'\n'The field $1 already exists.': 'Поле $1 ўжо iснуе.'\n'The $1  must not be void and may only contain letters and underscore (_) character.': '$1 павiнна быць непустым і зьмяшчаць толькi лiтары i сымбаль падкрэсьлiваньня (_).'\n'Invalid field type.': 'Недапушчальны тып поля.'\n'You do not have the right to delete article type fields.': 'Вы ня маеце права выдаляць палі тыпаў артыкулаў.'\n'Are you sure you want to delete the field $1?': 'Цi Вы ўпэўненыя, што хочаце выдалiць поле $1?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'Вы таксама выдалiце ўсе палi з такой жа назвай з усIх артыкулаў гэтага тыпу ўсiх выданьняў.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.bn.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': null\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'Template Field Name': null\n'Show to Authors?': null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': null\n'Add translation:': null\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': null\n'Article type fields': null\n'Delete field $1': null\n'Adding new field': null\n'You do not have the right to add article type fields.': null\n'The field $1 already exists.': null\n'The $1  must not be void and may only contain letters and underscore (_) character.': null\n'Invalid field type.': null\n'You do not have the right to delete article type fields.': null\n'Are you sure you want to delete the field $1?': null\n'You will also delete all fields with this name from all articles of this type from all publications.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.cs.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': 'Barva události'\n'You must input a number greater than $1 and less than $2 into the $3 field.': 'Musíte vložit číslo větší než  $1 a menší než  $2 do políčka  $3.'\n'You do not have the right to translate article types.': 'Nemáte oprávnění k překladání těchto typů článků.'\n'You do not have the right to reorder article types.': 'Nemáte oprávnění k reorganizovat tyto typy článků.'\n'You do not have the right to reassign article type fields.': 'Nemáte oprávnění přeřazovat pole tohoto typu článku.'\n'You do not have the right to manage article types.': 'Nemáte oprávnění spravovat tento typ článků.'\n'You do not have the right to hide article types.': 'Nemáte oprávnění schovávat tento typ článků.'\n'You do not have the right to delete article types.': 'Nemáte oprávnění vymazat tento typ článků.'\n'Small ($1 pixels)': 'Malé ( $1 pixels)'\n'Medium ($1 pixels)': 'Střední ( $1 pixels)'\n'Large ($1 pixels)': 'Velké ( $1 pixels)'\n'Hide human-readable field names': 'Skrýt pole se jmény lidí'\n'Editor size': 'Editor size'\n'Edit and translate human-readable field names': 'Uprav a přelož pole se jmény lidí'\nCustom: Zvyk\n'Characters limit': 'Limit charakterů'\n'The template name may only contain letters and the underscore (_) character.': 'Jméno šablony může obsahovat písmena a podtržítko (_).'\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': 'Název pole se již používá jako základní vlastnost článku. Obsah pole nebude zobrazen v šablonách.'\n'The property $1 is already in use.': 'Vlastnost $1 se již používá.'\nPrecision: Přesnost\n'Can not convert the field $1 from $2 to type $3.': 'Nelze konvertovat pole $1 z $2 do typu $3.'\n'Are you sure you want to make $1 a $2 field?': 'Jste si jistí, že chcete udělat z $1 $2 pole?'\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': 'Zpět na Přehled Typů Článků'\nshow: zobrazit\nhide: skrýt\n'You must enter a name for the field.': 'Zadejte název pole.'\n'You must choose a language for the field.': 'Zvolte jazyk pole.'\n'You do not have the right to rename article type fields.': 'Nemáte oprávnění přejmenovávat pole typu článku.'\n'You do not have the right to reassign a field type.': 'Nemáte oprávnění přeřadit typ pole.'\n'Translating field': 'Pole pro překlad'\n'The translation could not be added.': 'Nezdařilo se přidat překlad.'\n'The field $1 does not exist.': 'Pole $1 neexistuje.'\n'The $1 field may only contain letters and underscore (_) character.': 'Pole $1 smí obsahovat pouze písmena a podtržítko (_).'\n'Template Field Name': 'Název Pole Šablony'\n'Show to Authors?': null\n'Renaming article type field': 'Přejmenovává se pole typu článku'\n'Rename field': 'Přejmenovat pole'\n'Reassign a field type': 'Přeřadit typ pole'\n'Display Name': Popisek\n'Are you sure you want to $1 the article type field $2?': 'Jste si jistí, že chcete $1 pole typu článku $2?'\n'Adding new article type': 'Přidává se nový typ článku'\n'Add translation:': 'Přidat překlad:'\n'$1 article type field $2': '$1 pole typu článku $2'\n'$1 article type $2': '$1 typ článku $2'\n'Top element': 'Hlavní prvek'\n'Article type fields': 'Pole typu článku'\n'Delete field $1': 'Smazat pole $1 '\n'Adding new field': 'Přidání nového pole'\n'You do not have the right to add article type fields.': 'Nemáte právo přidat pole tohoto typu článku'\n'The field $1 already exists.': 'Pole $1 již existuje'\n'The $1  must not be void and may only contain letters and underscore (_) character.': '$1 nesmí být prázdný a musí obsahovat pouze písmena'\n'Invalid field type.': 'Špatně zadaný typ pole'\n'You do not have the right to delete article type fields.': 'Nemáte práva mazat pole typu článku'\n'Are you sure you want to delete the field $1?': 'Určitě chcete smazat pole $1?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'Tímto smažete také všechna pole se stejným názvem ze článků tohoto typu ze všech publikací'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.da.yml",
    "content": "'Does serving this field count as a page read for statistics?': 'Skal visning af dette felt tælles som en sidelæsning i statistikken?'\n'Is this field intended for the reader to view? If not, it is metadata.': 'Skal dette felt vises til læseren? Ellers er det metadata.'\n'Event Color': 'Farve på begivenhed'\n'You must input a number greater than $1 and less than $2 into the $3 field.': 'Indtast et tal større end $1 og mindre end $2 i $3 feltet.'\n'You do not have the right to translate article types.': 'Du har ikke rettigheder til at oversætte artikel typer.'\n'You do not have the right to reorder article types.': 'Du har ikke rettigheder til at ændre sortering for artikel typer.'\n'You do not have the right to reassign article type fields.': 'Du har ikke rettigheder til at redigere felter i artikel typer.'\n'You do not have the right to manage article types.': 'Du har ikke rettigheder til at administrere artikel typer.'\n'You do not have the right to hide article types.': 'Du har ikke rettigheder til at skjule artikel typer.'\n'You do not have the right to delete article types.': 'Du har ikke rettigheder til at slette artikel typer.'\n'Small ($1 pixels)': 'Lille ($1 pixel)'\n'Medium ($1 pixels)': 'Medium ($1 pixel)'\n'Large ($1 pixels)': 'Stor ($1 pixel)'\n'Hide human-readable field names': 'Skjul læsevenlige feltnavne'\n'Editor size': 'Editor størrelse'\n'Edit and translate human-readable field names': 'Rediger og oversæt læsevenlige feltnavne'\nCustom: Brugerdefineret\n'Characters limit': 'Tegn begrænsning'\n'The template name may only contain letters and the underscore (_) character.': 'Skabelonens navn må kun indeholde bogstaver og underscore tegnet (_)'\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': 'Feltnavnent er i brug som en grundegenskab for artiklen. Feltets indhold bliver ikke vist i skabelonerne.'\n'The property $1 is already in use.': 'Egenskaben $1 er allerede i brug.'\nPrecision: Præcision\n'Can not convert the field $1 from $2 to type $3.': 'Feltet $1 kan ikke konverteres fra type $2 til type $3.'\n'Are you sure you want to make $1 a $2 field?': 'Vil du lave $1 til et $2 felt?'\n'Page Read Count?': 'Besøgstæller?'\n'Editorial Content?': 'Redaktionelt indhold?'\n'Back to Article Types List': 'Tilbage til artikel type liste'\nshow: vis\nhide: skjul\n'You must enter a name for the field.': 'Giv feltet et navn.'\n'You must choose a language for the field.': 'Vælg et sprog for feltet.'\n'You do not have the right to rename article type fields.': 'Du har ikke rettigheder til at omdøbe felter i artikel typer.'\n'You do not have the right to reassign a field type.': 'Du har ikke rettigheder til at ændre felt typer.'\n'Translating field': 'Oversætter felt'\n'The translation could not be added.': 'Oversættelsen kunne ikke tilføjes.'\n'The field $1 does not exist.': 'Feltet $1 findes ikke.'\n'The $1 field may only contain letters and underscore (_) character.': '$1 feltet må kun indeholde bogstaver og underscore tegnet (_).'\n'Template Field Name': 'Skabelon feltnavn'\n'Show to Authors?': 'Vis til forfattere?'\n'Renaming article type field': 'Omdøber artikel type felt'\n'Rename field': 'Omdøb felt'\n'Reassign a field type': 'Tildel en ny felttype'\n'Display Name': 'Vist navn'\n'Are you sure you want to $1 the article type field $2?': 'Vil du $1 artikel type feltet $2?'\n'Adding new article type': 'Tilføjer ny artikel type'\n'Add translation:': 'Tilføj oversættelse:'\n'$1 article type field $2': '$1 artikel type felt $2'\n'$1 article type $2': '$1 artikel type $2'\n'Top element': Topelement\n'Article type fields': 'Artikel type felter'\n'Delete field $1': 'Slet felt $1'\n'Adding new field': 'Tilføjer nyt felt'\n'You do not have the right to add article type fields.': 'Du har ikke rettigheder til at tilføje artikel type felter.'\n'The field $1 already exists.': 'Feltet $1 findes allerede.'\n'The $1  must not be void and may only contain letters and underscore (_) character.': '$1 må ikke være tom og må kun indeholde bogstaver og underscore tegnet (_).'\n'Invalid field type.': 'Ugyldig felt type.'\n'You do not have the right to delete article type fields.': 'Du har ikke rettigheder til at slette artikel type felter.'\n'Are you sure you want to delete the field $1?': 'Vil du slette feltet $1?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'Dette vil også slette alle felter med dette navn fra alle artikler af denne type fra alle publikationer.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.de.yml",
    "content": "'Does serving this field count as a page read for statistics?': 'Soll die Auslieferung dieses Feldes als Seitenaufruf in der Statistik gewertet werden?'\n'Is this field intended for the reader to view? If not, it is metadata.': 'Richtet sich der Inhalt dieses Feldes an Leser? Wenn nicht, dann sind es Metadaten.'\n'Event Color': 'Farbe des Events'\n'You must input a number greater than $1 and less than $2 into the $3 field.': 'Bitte geben Sie eine Zahl größer als $1 und kleiner als $2 in das Feld $3.'\n'You do not have the right to translate article types.': 'Ihnen fehlt die Berechtigung Artikeltypen zu übersetzen.'\n'You do not have the right to reorder article types.': 'Keine Berechtigung Artikeltypen neu zu ordnen.'\n'You do not have the right to reassign article type fields.': 'Keine Berechtigung Felder von Artikeltypen neu zuzuweisen.'\n'You do not have the right to manage article types.': 'Keine Berechtigung Artikeltypen zu verwalten.'\n'You do not have the right to hide article types.': 'Keine Berechtigung Artikeltypen zu verbergen.'\n'You do not have the right to delete article types.': 'Keine Berechtigung Artikeltypen zu löschen.'\n'Small ($1 pixels)': 'Klein ($1 Pixel)'\n'Medium ($1 pixels)': 'Mittel ($1 Pixel)'\n'Large ($1 pixels)': 'Groß ($1 Pixel)'\n'Hide human-readable field names': 'Verberge von Menschen lesbare Feldnamen'\n'Editor size': Editorgröße\n'Edit and translate human-readable field names': 'Bearbeite und übersetze von Menschen lesbare Feldnamen'\nCustom: Benutzerdefiniert\n'Characters limit': 'Maximale Zeichenlänge'\n'The template name may only contain letters and the underscore (_) character.': 'Der Templatename darf nur Buchstaben und den Unterstrich (_) enthalten.'\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': 'Der Feldname war bereits als Grundeigenschaft für den Artikel in Gebrauch. Der Feldinhalt wird nicht in den Templates angezeigt.'\n'The property $1 is already in use.': 'Die Eigenschaft $1 ist bereits in Gebrauch.'\nPrecision: Präzision\n'Can not convert the field $1 from $2 to type $3.': 'Feld $1 kann nicht von $2 nach Typ $3 konvertiert werden.'\n'Are you sure you want to make $1 a $2 field?': 'Wirklich aus $1 ein $2 Feld machen?'\n'Page Read Count?': 'Seitenaufruf Zähler'\n'Editorial Content?': 'Redaktioneller Inhalt?'\n'Back to Article Types List': 'Zurück zur Artikeltypen Liste'\nshow: anzeigen\nhide: verbergen\n'You must enter a name for the field.': 'Sie müssen einen Feldnamen eingeben.'\n'You must choose a language for the field.': 'Sie müssen eine Sprache für das Feld wählen.'\n'You do not have the right to rename article type fields.': 'Keine Berechtigung um Artikeltypen Felder umzubenennen.'\n'You do not have the right to reassign a field type.': 'Keine Berechtigung um Feldtypen neu zu vergeben.'\n'Translating field': 'Feld wird übersetzt'\n'The translation could not be added.': 'Die Übersetzung konnte nicht hinzugefügt werden.'\n'The field $1 does not exist.': 'das Feld $1 existiert nicht.'\n'The $1 field may only contain letters and underscore (_) character.': 'Das $1 Feld darf nur Buchstaben und den Unterstrich (_) enthalten.'\n'Template Field Name': 'Template Feldname'\n'Show to Authors?': 'Autoren anzeigen?'\n'Renaming article type field': 'Artikel Feldtyp umbenennen'\n'Rename field': 'Feld umbennen'\n'Reassign a field type': 'Feldtyp neu vergeben'\n'Display Name': Anzeigename\n'Are you sure you want to $1 the article type field $2?': 'Wirklich Artikel Feldtyp $2 $1?'\n'Adding new article type': 'Neuer Artikeltyp wird hinzugefügt'\n'Add translation:': 'Übersetzung hinzufügen:'\n'$1 article type field $2': 'Artikeltyp Feld $2 $1'\n'$1 article type $2': 'Artikeltyp $2 $1'\n'Top element': 'Oberstes Element'\n'Article type fields': 'Artikeltyp Felder'\n'Delete field $1': 'Feld $1 löschen'\n'Adding new field': 'Neues Feld hinzufügen'\n'You do not have the right to add article type fields.': 'Keine Berechtigung Artikeltyp Felder hinzuzufügen'\n'The field $1 already exists.': 'Feld $1 existiert bereits.'\n'The $1  must not be void and may only contain letters and underscore (_) character.': '$1 darf nicht leer sein und darf nur Buchstaben und den Unterstrich (_) enthalten.'\n'Invalid field type.': 'Ungültiger Feldtyp.'\n'You do not have the right to delete article type fields.': 'Keine Berechtigung Artikeltyp Felder zu löschen.'\n'Are you sure you want to delete the field $1?': 'Feld $1 wirklich löschen?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'Dabei werden automatisch alle Felder mit diesem Namen aus allen Artikeln dieses Typs aus allen Publikationen gelöscht.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.de_AT.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': 'Farbe des Events'\n'You must input a number greater than $1 and less than $2 into the $3 field.': 'Bitte geben Sie eine Zahl größer als $1 und kleiner als $2 in das Feld $3.'\n'You do not have the right to translate article types.': 'Ihnen fehlt die Berechtigung Artikeltypen zu übersetzen.'\n'You do not have the right to reorder article types.': 'Keine Berechtigung Artikeltypen neu zu ordnen.'\n'You do not have the right to reassign article type fields.': 'Keine Berechtigung Felder von Artikeltypen neu zuzuweisen.'\n'You do not have the right to manage article types.': 'Keine Berechtigung Artikeltypen zu verwalten.'\n'You do not have the right to hide article types.': 'Keine Berechtigung Artikeltypen zu verbergen.'\n'You do not have the right to delete article types.': 'Keine Berechtigung Artikeltypen zu löschen.'\n'Small ($1 pixels)': 'Klein ($1 Pixel)'\n'Medium ($1 pixels)': 'Mittel ($1 Pixel)'\n'Large ($1 pixels)': 'Groß ($1 Pixel)'\n'Hide human-readable field names': 'Verberge von Menschen lesbare Feldnamen'\n'Editor size': Editorgröße\n'Edit and translate human-readable field names': 'Bearbeite und übersetze von Menschen lesbare Feldnamen'\nCustom: Benutzerdefiniert\n'Characters limit': 'Maximale Zeichenlänge'\n'The template name may only contain letters and the underscore (_) character.': 'Der Templatename darf nur Buchstaben und den Unterstrich (_) enthalten.'\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': 'Der Feldname war bereits als Grundeigenschaft für den Artikel in Gebrauch. Der Feldinhalt wird nicht in den Templates angezeigt.'\n'The property $1 is already in use.': 'Die Eigenschaft $1 ist bereits in Gebrauch.'\nPrecision: Präzision\n'Can not convert the field $1 from $2 to type $3.': 'Feld $1 kann nicht von $2 nach Typ $3 konvertiert werden.'\n'Are you sure you want to make $1 a $2 field?': 'Wirklich aus $1 ein $2 Feld machen?'\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': 'Zurück zur Artikeltypen Liste'\nshow: anzeigen\nhide: verbergen\n'You must enter a name for the field.': 'Sie müssen einen Feldnamen eingeben.'\n'You must choose a language for the field.': 'Sie müssen eine Sprache für das Feld wählen.'\n'You do not have the right to rename article type fields.': 'Keine Berechtigung um Artikeltypen Felder umzubenennen.'\n'You do not have the right to reassign a field type.': 'Keine Berechtigung um Feldtypen neu zu vergeben.'\n'Translating field': 'Feld wird übersetzt'\n'The translation could not be added.': 'Die Übersetzung konnte nicht hinzugefügt werden.'\n'The field $1 does not exist.': 'das Feld $1 existiert nicht.'\n'The $1 field may only contain letters and underscore (_) character.': 'Das $1 Feld darf nur Buchstaben und den Unterstrich (_) enthalten.'\n'Template Field Name': 'Template Feldname'\n'Show to Authors?': null\n'Renaming article type field': 'Artikel Feldtyp umbenennen'\n'Rename field': 'Feld umbennen'\n'Reassign a field type': 'Feldtyp neu vergeben'\n'Display Name': Anzeigename\n'Are you sure you want to $1 the article type field $2?': 'Wirklich Artikel Feldtyp $2 $1?'\n'Adding new article type': 'Neuer Artikeltyp wird hinzugefügt'\n'Add translation:': 'Übersetzung hinzufügen:'\n'$1 article type field $2': 'Artikeltyp Feld $2 $1'\n'$1 article type $2': 'Artikeltyp $2 $1'\n'Top element': 'Oberstes Element'\n'Article type fields': 'Artikeltyp Felder'\n'Delete field $1': 'Feld $1 löschen'\n'Adding new field': 'Neues Feld hinzufügen'\n'You do not have the right to add article type fields.': 'Keine Berechtigung Artikeltyp Felder hinzuzufügen'\n'The field $1 already exists.': 'Feld $1 existiert bereits.'\n'The $1  must not be void and may only contain letters and underscore (_) character.': '$1 darf nicht leer sein und darf nur Buchstaben und den Unterstrich (_) enthalten.'\n'Invalid field type.': 'Ungültiger Feldtyp.'\n'You do not have the right to delete article type fields.': 'Keine Berechtigung Artikeltyp Felder zu löschen.'\n'Are you sure you want to delete the field $1?': 'Feld $1 wirklich löschen?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'Dabei werden automatisch alle Felder mit diesem Namen aus allen Artikeln dieses Typs aus allen Publikationen gelöscht.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.el.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': 'Χρώμα Εκδήλωσης'\n'You must input a number greater than $1 and less than $2 into the $3 field.': 'Πρέπει να εισάγετε έναν αριθμό μεγαλύτερο από $1 και μικρότερο από $2 στο πεδίο $3.'\n'You do not have the right to translate article types.': 'Δεν έχετε το δικαίωμα μετάφρασης τύπων άρθρου.'\n'You do not have the right to reorder article types.': 'Δεν έχετε το δικαίωμα αναδιάταξης τύπων άρθρου.'\n'You do not have the right to reassign article type fields.': 'Δεν έχετε το δικαίωμα ανάθεσης πεδίων τύπου άρθρου.'\n'You do not have the right to manage article types.': 'Δεν έχετε το δικαίωμα διαχείρισης τύπων άρθρου.'\n'You do not have the right to hide article types.': 'Δεν έχετε το δικαίωμα απόκρυψης τύπων άρθρου.'\n'You do not have the right to delete article types.': 'Δεν έχετε το δικαίωμα διαγραφής τύπων άρθρου.'\n'Small ($1 pixels)': 'Μικρό ($1 pixels)'\n'Medium ($1 pixels)': 'Μεσσαίο ($1 pixels)'\n'Large ($1 pixels)': 'Μεγάλο ($1 pixels)'\n'Hide human-readable field names': 'Απόκρυψη ανθρωπίνως αναγνώσιμων ονομάτων πεδίων'\n'Editor size': 'Μέγεθος επεξεργαστή'\n'Edit and translate human-readable field names': 'Επεξεργασία και μετάφραση ανθρωπίνως αναγνώσιμων ονομάτων πεδίων'\nCustom: Προσαρμογή\n'Characters limit': 'Όριο χαρακτήρων'\n'The template name may only contain letters and the underscore (_) character.': 'Το όνομα προτύπου μπορεί να περιλαμβάνει μόνο γράμματα και τον χαρακτήρα υπογραμμισης (_).'\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': 'Το όνομα πεδίου βρισκόταν ήδη σε χρήση ως βασική ιδιοκτησία του άρθρου. Το περιεχόμενο του πεδίου δεν θα εμφανίζεται στα πρότυπα.'\n'The property $1 is already in use.': 'Η ιδιοκτησία $1 βρίσκεται ήδη σε χρήση.'\nPrecision: Ακρίβεια\n'Can not convert the field $1 from $2 to type $3.': 'Αδύνατη η μετατροπή του πεδίου $1 από $2 σε τύπο $3.'\n'Are you sure you want to make $1 a $2 field?': 'Είστε σίγουρος/η ότι θέλετε να μετατρέψετε το  πεδίο $1 σε $2;'\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': 'Πίσω στην Λίστα Τύπων Άρθρου'\nshow: εμφάνιση\nhide: απόκρυψη\n'You must enter a name for the field.': 'Πρέπει να εισάγετε όνομα για το πεδίο.'\n'You must choose a language for the field.': 'Πρέπει να επιλέξετε γλώσσα για το πεδίο.'\n'You do not have the right to rename article type fields.': 'Δεν έχετε το δικαίωμα να μετονομάσετε πεδία τύπου άρθρου.'\n'You do not have the right to reassign a field type.': 'Δεν έχετε το δικαίωμα να επανεκχωρίσετε έναν τύπο πεδίου.'\n'Translating field': 'Μεταφραστικό πεδίο'\n'The translation could not be added.': 'Η μετάφραση δεν μπόρεσε να προστεθεί.'\n'The field $1 does not exist.': 'Το πεδίο $1 δεν υπάρχει.'\n'The $1 field may only contain letters and underscore (_) character.': 'Το πεδίο $1 μπορεί να περιέχει μόνο γράμματα και τον χαρακτήρα υπογράμμισης (_).'\n'Template Field Name': 'Όνομα Πεδίου Προτύπων'\n'Show to Authors?': null\n'Renaming article type field': 'Μετονομασία πεδίου τύπου άρθρου'\n'Rename field': 'Μετονομασία πεδίου'\n'Reassign a field type': 'Εκ νέου εκχώριση ενός τύπου πεδίου'\n'Display Name': 'Εμφανιζόμενο Όνομα'\n'Are you sure you want to $1 the article type field $2?': 'Είστε σίγουρος/η ότι θέλετε να $1 τον τύπο άρθρου $2;'\n'Adding new article type': 'Προσθήκη νέου τύπου άρθρου'\n'Add translation:': 'Προσθήκη μετάφρασης:'\n'$1 article type field $2': '$1 πεδίο τύπου άρθρου $2'\n'$1 article type $2': '$1 τύπος άρθρου $2'\n'Top element': 'Κορυφαίο στοιχείο'\n'Article type fields': 'Πεδία τύπου άρθρου'\n'Delete field $1': 'Διαγραφή πεδίου $1'\n'Adding new field': 'Προσθήκη νέου πεδίου'\n'You do not have the right to add article type fields.': 'Δεν έχετε το δικαίωμα να προσθέσετε πεδία τύπου άρθρου.'\n'The field $1 already exists.': 'Το πεδίο $1 υπάρχει ήδη.'\n'The $1  must not be void and may only contain letters and underscore (_) character.': 'Το $1 δεν πρέπει να είναι κενό και μπορεί να περιέχει μόνο γράμματα και τον χαρακτήρα υπογράμμισης (_).'\n'Invalid field type.': 'Μη έγκυρος τύπος πεδίου.'\n'You do not have the right to delete article type fields.': 'Δεν έχετε το δικαίωμα να διαγράψετε πεδία τύπου άρθρου.'\n'Are you sure you want to delete the field $1?': 'Είστε σίγουρος πως θέλετε να διαγράψετε το πεδίο $1?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'Θα διαγράψετε επίσης όλα τα πεδία με αυτό το όνομα από όλα τα άρθρα αυτού του τύπου από όλες τις δημοσιεύσεις.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.en.yml",
    "content": "'Does serving this field count as a page read for statistics?': 'Does serving this field count as a page read for statistics?'\n'Is this field intended for the reader to view? If not, it is metadata.': 'Is this field intended for the reader to view? If not, it is metadata.'\n'Event Color': 'Event Color'\n'You must input a number greater than $1 and less than $2 into the $3 field.': 'You must input a number greater than $1 and less than $2 into the $3 field.'\n'You do not have the right to translate article types.': 'You do not have the right to translate article types.'\n'You do not have the right to reorder article types.': 'You do not have the right to reorder article types.'\n'You do not have the right to reassign article type fields.': 'You do not have the right to reassign article type fields.'\n'You do not have the right to manage article types.': 'You do not have the right to manage article types.'\n'You do not have the right to hide article types.': 'You do not have the right to hide article types.'\n'You do not have the right to delete article types.': 'You do not have the right to delete article types.'\n'Small ($1 pixels)': 'Small ($1 pixels)'\n'Medium ($1 pixels)': 'Medium ($1 pixels)'\n'Large ($1 pixels)': 'Large ($1 pixels)'\n'Hide human-readable field names': 'Hide human-readable field names'\n'Editor size': 'Editor size'\n'Edit and translate human-readable field names': 'Edit and translate human-readable field names'\nCustom: Custom\n'Characters limit': 'Characters limit'\n'The template name may only contain letters and the underscore (_) character.': 'The template name may only contain letters and the underscore (_) character.'\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': 'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.'\n'The property $1 is already in use.': 'The property $1 is already in use.'\nPrecision: Precision\n'Can not convert the field $1 from $2 to type $3.': 'Can not convert the field $1 from $2 to type $3.'\n'Are you sure you want to make $1 a $2 field?': 'Are you sure you want to make $1 a $2 field?'\n'Page Read Count?': 'Page Read Count?'\n'Editorial Content?': 'Editorial Content?'\n'Back to Article Types List': 'Back to Article Types List'\nshow: show\nhide: hide\n'You must enter a name for the field.': 'You must enter a name for the field.'\n'You must choose a language for the field.': 'You must choose a language for the field.'\n'You do not have the right to rename article type fields.': 'You do not have the right to rename article type fields.'\n'You do not have the right to reassign a field type.': 'You do not have the right to reassign a field type.'\n'Translating field': 'Translating field'\n'The translation could not be added.': 'The translation could not be added.'\n'The field $1 does not exist.': 'The field $1 does not exist.'\n'The $1 field may only contain letters and underscore (_) character.': 'The $1 field may only contain letters and underscore (_) character.'\n'Template Field Name': 'Template Field Name'\n'Show to Authors?': 'Show to Authors?'\n'Renaming article type field': 'Renaming article type field'\n'Rename field': 'Rename field'\n'Reassign a field type': 'Reassign a field type'\n'Display Name': 'Display Name'\n'Are you sure you want to $1 the article type field $2?': 'Are you sure you want to $1 the article type field $2?'\n'Adding new article type': 'Adding new article type'\n'Add translation:': 'Add translation:'\n'$1 article type field $2': '$1 article type field $2'\n'$1 article type $2': '$1 article type $2'\n'Top element': 'Top element'\n'Article type fields': 'Article type fields'\n'Delete field $1': 'Delete field $1'\n'Adding new field': 'Adding new field'\n'You do not have the right to add article type fields.': 'You do not have the right to add article type fields.'\n'The field $1 already exists.': 'The field $1 already exists.'\n'The $1  must not be void and may only contain letters and underscore (_) character.': 'The $1  must not be void and may only contain letters and underscore (_) character.'\n'Invalid field type.': 'Invalid field type.'\n'You do not have the right to delete article type fields.': 'You do not have the right to delete article type fields.'\n'Are you sure you want to delete the field $1?': 'Are you sure you want to delete the field $1?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'You will also delete all fields with this name from all articles of this type from all publications.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.en_GB.yml",
    "content": "'Does serving this field count as a page read for statistics?': 'Does serving this field count as a page read for statistics?'\n'Is this field intended for the reader to view? If not, it is metadata.': 'Is this field intended for the reader to view? If not, it is metadata.'\n'Event Color': 'Event Colour'\n'You must input a number greater than $1 and less than $2 into the $3 field.': 'You must input a number greater than $1 and less than $2 into the $3 field.'\n'You do not have the right to translate article types.': 'You do not have the right to translate article types.'\n'You do not have the right to reorder article types.': 'You do not have the right to reorder article types.'\n'You do not have the right to reassign article type fields.': 'You do not have the right to reassign article type fields.'\n'You do not have the right to manage article types.': 'You do not have the right to manage article types.'\n'You do not have the right to hide article types.': 'You do not have the right to hide article types.'\n'You do not have the right to delete article types.': 'You do not have the right to delete article types.'\n'Small ($1 pixels)': 'Small ($1 pixels)'\n'Medium ($1 pixels)': 'Medium ($1 pixels)'\n'Large ($1 pixels)': 'Large ($1 pixels)'\n'Hide human-readable field names': 'Hide human-readable field names'\n'Editor size': 'Editor size'\n'Edit and translate human-readable field names': 'Edit and translate human-readable field names'\nCustom: Custom\n'Characters limit': 'Characters limit'\n'The template name may only contain letters and the underscore (_) character.': 'The template name may only contain letters and the underscore (_) character.'\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': 'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.'\n'The property $1 is already in use.': 'The property $1 is already in use.'\nPrecision: Precision\n'Can not convert the field $1 from $2 to type $3.': 'Can not convert the field $1 from $2 to type $3.'\n'Are you sure you want to make $1 a $2 field?': 'Are you sure you want to make $1 a $2 field?'\n'Page Read Count?': 'Page Read Count?'\n'Editorial Content?': 'Editorial Content?'\n'Back to Article Types List': 'Back to Article Types List'\nshow: show\nhide: hide\n'You must enter a name for the field.': 'You must enter a name for the field.'\n'You must choose a language for the field.': 'You must choose a language for the field.'\n'You do not have the right to rename article type fields.': 'You do not have the right to rename article type fields.'\n'You do not have the right to reassign a field type.': 'You do not have the right to reassign a field type.'\n'Translating field': 'Translating field'\n'The translation could not be added.': 'The translation could not be added.'\n'The field $1 does not exist.': 'The field $1 does not exist.'\n'The $1 field may only contain letters and underscore (_) character.': 'The $1 field may only contain letters and underscore (_) character.'\n'Template Field Name': 'Template Field Name'\n'Show to Authors?': 'Show to Authors?'\n'Renaming article type field': 'Renaming article type field'\n'Rename field': 'Rename field'\n'Reassign a field type': 'Reassign a field type'\n'Display Name': 'Display Name'\n'Are you sure you want to $1 the article type field $2?': 'Are you sure you want to $1 the article type field $2?'\n'Adding new article type': 'Adding new article type'\n'Add translation:': 'Add translation:'\n'$1 article type field $2': '$1 article type field $2'\n'$1 article type $2': '$1 article type $2'\n'Top element': 'Top element'\n'Article type fields': 'Article type fields'\n'Delete field $1': 'Delete field $1'\n'Adding new field': 'Adding new field'\n'You do not have the right to add article type fields.': 'You do not have the right to add article type fields.'\n'The field $1 already exists.': 'The field $1 already exists.'\n'The $1  must not be void and may only contain letters and underscore (_) character.': 'The $1  must not be void and may only contain letters and underscore (_) character.'\n'Invalid field type.': 'Invalid field type.'\n'You do not have the right to delete article type fields.': 'You do not have the right to delete article type fields.'\n'Are you sure you want to delete the field $1?': 'Are you sure you want to delete the field $1?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'You will also delete all fields with this name from all articles of this type from all publications.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.es.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': 'Color de evento'\n'You must input a number greater than $1 and less than $2 into the $3 field.': 'Debe proveer un número mayor a $1 y menor que $2 en el campo $3.'\n'You do not have the right to translate article types.': 'No tiene autorización para traducir tipos de artículo.'\n'You do not have the right to reorder article types.': 'No tiene autorización para reordenar tipos de artículo.'\n'You do not have the right to reassign article type fields.': 'No tiene autorización para reasignar tipos de artículo.'\n'You do not have the right to manage article types.': 'No tiene autorización para administrar tipos de artículo.'\n'You do not have the right to hide article types.': 'No tiene autorización paa ocultar tipos de artículo.'\n'You do not have the right to delete article types.': 'No tiene autorización para eliminar tipos de artículo.'\n'Small ($1 pixels)': 'Pequeño ($1 píxeles)'\n'Medium ($1 pixels)': 'Mediano  ($1 píxeles)'\n'Large ($1 pixels)': 'Grande  ($1 píxeles)'\n'Hide human-readable field names': 'Ocultar nombres de campo legibles.'\n'Editor size': 'Tamaño de editor'\n'Edit and translate human-readable field names': 'Editar y traducir nombres de campo legibles.'\nCustom: Opcional\n'Characters limit': 'Límite de caracteres'\n'The template name may only contain letters and the underscore (_) character.': 'El nombre de la plantilla solo puede contener letras y el caracter de guión bajo (_).'\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': 'El campo ya estaba en uso como una propriedad del articulo. El contenido no se mostrará en las plantillas.'\n'The property $1 is already in use.': 'La propiedad $1 ya estaba en uso.'\nPrecision: Precisión.\n'Can not convert the field $1 from $2 to type $3.': 'No se pudo convertir el campo $1 de $2 al tipo $3.'\n'Are you sure you want to make $1 a $2 field?': '¿Está seguro de que desea convertir el campo $1 al $2?'\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': 'Regresar a lista de tipos de artículo'\nshow: mostrar\nhide: ocultar\n'You must enter a name for the field.': 'Debe ingresar un nombre para este campo.'\n'You must choose a language for the field.': 'Debe elegir un idioma para el campo.'\n'You do not have the right to rename article type fields.': 'No tiene privilegios para renombrar los campos de tipo de artículo.'\n'You do not have the right to reassign a field type.': 'No tiene privilegios para reasignar un tipo de campo.'\n'Translating field': 'Campo de traducción'\n'The translation could not be added.': 'No se pudo agregar la traducción.'\n'The field $1 does not exist.': 'El campo $1 no existe.'\n'The $1 field may only contain letters and underscore (_) character.': 'El campo $1 solo puede contener letras y el caracter de guión mayor (_).'\n'Template Field Name': 'Nombre del campo de plantilla'\n'Show to Authors?': null\n'Renaming article type field': 'Renombrando el campo de tipo de artículo '\n'Rename field': 'Renombrar campo'\n'Reassign a field type': 'Reasignar un tipo de campo'\n'Display Name': 'Nombre a mostrar'\n'Are you sure you want to $1 the article type field $2?': '¿Está seguro de que desea $1 el campo de tipo de artículo $2?'\n'Adding new article type': 'Añadir nuevo tipo de artículo'\n'Add translation:': 'Agregar traducción:'\n'$1 article type field $2': '$1 el campo de tipo de artículo $2'\n'$1 article type $2': '$1 el tipo de artículo $2'\n'Top element': 'Elemento superior o encabezado'\n'Article type fields': 'Campos de tipo de archivo'\n'Delete field $1': 'Borrar campo $1'\n'Adding new field': 'Agregar nuevo campo'\n'You do not have the right to add article type fields.': 'No tiene privilegios para agregar campos de tipo articulo'\n'The field $1 already exists.': 'El campo $1 ya existe'\n'The $1  must not be void and may only contain letters and underscore (_) character.': 'El $1 no debe estar vacio y solo puede contener letras y el caracter de guión mayor (_).'\n'Invalid field type.': 'Tipo de campo inválido'\n'You do not have the right to delete article type fields.': 'No tiene privilegios para eliminar campos de tipo articulo'\n'Are you sure you want to delete the field $1?': '¿Está seguro de que desea borrar el campo $1?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'También borrará todos los campos con este nombre de todos los artículos de este tipo de todas las publicaciones'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.es_AR.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': null\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'Template Field Name': null\n'Show to Authors?': null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': null\n'Add translation:': null\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': null\n'Article type fields': null\n'Delete field $1': null\n'Adding new field': null\n'You do not have the right to add article type fields.': null\n'The field $1 already exists.': null\n'The $1  must not be void and may only contain letters and underscore (_) character.': null\n'Invalid field type.': null\n'You do not have the right to delete article type fields.': null\n'Are you sure you want to delete the field $1?': null\n'You will also delete all fields with this name from all articles of this type from all publications.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.fa.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': null\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'Template Field Name': null\n'Show to Authors?': null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': null\n'Add translation:': null\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': null\n'Article type fields': null\n'Delete field $1': null\n'Adding new field': null\n'You do not have the right to add article type fields.': null\n'The field $1 already exists.': null\n'The $1  must not be void and may only contain letters and underscore (_) character.': null\n'Invalid field type.': null\n'You do not have the right to delete article type fields.': null\n'Are you sure you want to delete the field $1?': null\n'You will also delete all fields with this name from all articles of this type from all publications.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.fa_AF.yml",
    "content": "'Usage at automatic statistics': null\n'Show field in article edit screen': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': null\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Is Content': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'Template Field Name': null\nShow/Hide: null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': null\n'Add translation:': null\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': null\n'Article type fields': null\n'Delete field $1': null\n'Adding new field': null\n'You do not have the right to add article type fields.': null\n'The field $1 already exists.': null\n'The $1  must not be void and may only contain letters and underscore (_) character.': null\n'Invalid field type.': null\n'You do not have the right to delete article type fields.': null\n'Are you sure you want to delete the field $1?': null\n'You will also delete all fields with this name from all articles of this type from all publications.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.fr.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': 'Vous navez pas le droit de supprimer des types darticle.'\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': 'Le champ $1 peut seulement contenir des lettres et le caractère souligné (_).'\n'Template Field Name': null\n'Show to Authors?': null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': 'Ajout nouveau type darticle'\n'Add translation:': 'Ajouter traduction:'\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': 'Top élément'\n'Article type fields': 'Champs de type darticle'\n'Delete field $1': 'Supprimer champ $ '\n'Adding new field': 'Ajout nouveau champ'\n'You do not have the right to add article type fields.': 'Vous navez pas le droit dajouter des champs de type darticle.'\n'The field $1 already exists.': 'Le champ $1 existe déjà.'\n'The $1  must not be void and may only contain letters and underscore (_) character.': 'Le $1 ne doit pas être vide et peut seulement contenir des lettres et le caractère souligné (_).'\n'Invalid field type.': 'Type de champ invalide.'\n'You do not have the right to delete article type fields.': 'Vous navez pas le droit de supprimer des champs de type darticle. '\n'Are you sure you want to delete the field $1?': 'Etes-vous sûrs que vous voulez supprimer le champ $1?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'Vous supprimerez aussi tous les champs avec ce nom de tous les articles de ce type de toutes les publications. '\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.he.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': null\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'Template Field Name': null\n'Show to Authors?': null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': null\n'Add translation:': null\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': null\n'Article type fields': null\n'Delete field $1': null\n'Adding new field': null\n'You do not have the right to add article type fields.': null\n'The field $1 already exists.': null\n'The $1  must not be void and may only contain letters and underscore (_) character.': null\n'Invalid field type.': null\n'You do not have the right to delete article type fields.': null\n'Are you sure you want to delete the field $1?': null\n'You will also delete all fields with this name from all articles of this type from all publications.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.hr.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': 'Nemate ovlasti brisati tipove članaka.'\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': 'Polje $1 može imati samo slova i znak podvlake (_).'\n'Template Field Name': null\n'Show to Authors?': null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': 'Dodavanje novog tipa članka'\n'Add translation:': 'Dodaj prijevod:'\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': 'Vršni element'\n'Article type fields': 'Polja za tip članaka'\n'Delete field $1': 'Izbriši polje $1'\n'Adding new field': 'Dodavanje novog polja'\n'You do not have the right to add article type fields.': 'Nemate ovlasti dodavati polja za tip članaka.'\n'The field $1 already exists.': 'Polje $1 već postoji.'\n'The $1  must not be void and may only contain letters and underscore (_) character.': '$1 ne može ostati nepopunjeno, a može sadržavati isključivo slova i znak podvlake (_).'\n'Invalid field type.': 'Kriva vrsta polja.'\n'You do not have the right to delete article type fields.': 'Nemate ovlasti brisati polja za tipa članka.'\n'Are you sure you want to delete the field $1?': 'Jeste li sigurni da želite obrisati polje $1?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'S tim ćete obrisati i sva polja ovog naziva iz svih članaka ovog tipa unutar cijele publikacije.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.hu.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': 'Esemény színe'\n'You must input a number greater than $1 and less than $2 into the $3 field.': 'Meg kell adnod egy számot, amely nagyobb, mint $1 és kisebb, mint $2 a/z $3 mezőben.'\n'You do not have the right to translate article types.': 'Nincs jogod a cikktípusok lefordításához.'\n'You do not have the right to reorder article types.': 'Nincs jogod a cikktípusok átrendezéséhez.'\n'You do not have the right to reassign article type fields.': 'Nincs jogod a cikktípus-mezők ismételt hozzárendeléséhez.'\n'You do not have the right to manage article types.': 'Nincs jogod a cikktípusok kezeléséhez.'\n'You do not have the right to hide article types.': 'Nincs jogod a cikktípusok elrejtéséhez.'\n'You do not have the right to delete article types.': 'Nincs jogod a cikktípusok törléséhez.'\n'Small ($1 pixels)': 'Kicsi ($1 képpont)'\n'Medium ($1 pixels)': 'Közepes ($1 képpont)'\n'Large ($1 pixels)': 'Nagy ($1 képpont)'\n'Hide human-readable field names': 'Az ember által olvasható mezőnevek elrejtése'\n'Editor size': 'Szerkesztő mérete'\n'Edit and translate human-readable field names': 'Az ember által olvasható mezőnevek szerkesztése és fordítása'\nCustom: Egyéni\n'Characters limit': 'Karakterek korlátozása'\n'The template name may only contain letters and the underscore (_) character.': 'A sablonnév csak betűket és aláhúzásjelet (_) tartalmazhat.'\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': 'A mezőnév a cikk alaptulajdonságaként már használatban volt. A mező tartalma nem fog megjelenni a sablonokban.'\n'The property $1 is already in use.': 'A/z $1 tulajdonság már használatban van.'\nPrecision: Pontosság\n'Can not convert the field $1 from $2 to type $3.': 'A/z $1 mező nem alakítható át $2 típusról $3 típusra.'\n'Are you sure you want to make $1 a $2 field?': 'Biztosan $1 mezővé akarsz tenni egy $2 mezőt?'\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': 'Vissza a Cikktípusok listájához'\nshow: megjelenítés\nhide: elrejtés\n'You must enter a name for the field.': 'Meg kell adnod a mező nevét.'\n'You must choose a language for the field.': 'Ki kell választanod a mező nyelvét.'\n'You do not have the right to rename article type fields.': 'Nincs jogod a cikktípusmezők átnevezéséhez.'\n'You do not have the right to reassign a field type.': 'Nincs jogod egy mezőtípus ismételt hozzárendeléséhez.'\n'Translating field': null\n'The translation could not be added.': 'Nem lehetett hozzáadni a fordítást.'\n'The field $1 does not exist.': 'A/z $1 mező nem létezik.'\n'The $1 field may only contain letters and underscore (_) character.': 'A/z $1 mező csak betűket és aláhúzásjelet (_) tartalmazhat.'\n'Template Field Name': 'Sablonmező neve'\n'Show to Authors?': null\n'Renaming article type field': 'Cikktípusmező átnevezése'\n'Rename field': 'Mező átnevezése'\n'Reassign a field type': 'Mezőtípus ismételt hozzárendelése'\n'Display Name': 'Megjelenítendő név'\n'Are you sure you want to $1 the article type field $2?': 'Biztosan $1 akarod a/z $2 cikktípusmezőt?'\n'Adding new article type': 'Új cikktípus hozzáadása'\n'Add translation:': 'Fordítás hozzáadása:'\n'$1 article type field $2': '$1 cikktípus $2 mező'\n'$1 article type $2': '$1 cikk $2 típus'\n'Top element': 'Felső elem'\n'Article type fields': Cikktípusmezők\n'Delete field $1': 'A/z $1 mező törlése'\n'Adding new field': 'Új mező hozzáadása'\n'You do not have the right to add article type fields.': 'Nincs jogod a cikktípusmezők hozzáadásához.'\n'The field $1 already exists.': 'A/z $1 mező már létezik.'\n'The $1  must not be void and may only contain letters and underscore (_) character.': 'A/z $1 ne legyen üres, csak betűket és aláhúzásjelet (_) tartalmazhat.'\n'Invalid field type.': 'Érvénytelen mezőtípus.'\n'You do not have the right to delete article type fields.': 'Nincs jogod a cikktípusmezők törléséhez.'\n'Are you sure you want to delete the field $1?': 'Biztosan törölni akarod a/z $1 mezőt?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'Az összes ilyen nevű mezőt törölni is fogod az összes kiadvány összes ilyen típusú cikkeiből.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.hy.yml",
    "content": "'Does serving this field count as a page read for statistics?': 'Does serving this field count as a page read for statistics?'\n'Is this field intended for the reader to view? If not, it is metadata.': 'Is this field intended for the reader to view? If not, it is metadata.'\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': null\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': 'Page Read Count?'\n'Editorial Content?': 'Editorial Content?'\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'Template Field Name': null\n'Show to Authors?': 'Show to Authors?'\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': null\n'Add translation:': null\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': null\n'Article type fields': null\n'Delete field $1': null\n'Adding new field': null\n'You do not have the right to add article type fields.': null\n'The field $1 already exists.': null\n'The $1  must not be void and may only contain letters and underscore (_) character.': null\n'Invalid field type.': null\n'You do not have the right to delete article type fields.': null\n'Are you sure you want to delete the field $1?': null\n'You will also delete all fields with this name from all articles of this type from all publications.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.hy_AM.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': null\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'Template Field Name': null\n'Show to Authors?': null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': null\n'Add translation:': null\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': null\n'Article type fields': null\n'Delete field $1': null\n'Adding new field': null\n'You do not have the right to add article type fields.': null\n'The field $1 already exists.': null\n'The $1  must not be void and may only contain letters and underscore (_) character.': null\n'Invalid field type.': null\n'You do not have the right to delete article type fields.': null\n'Are you sure you want to delete the field $1?': null\n'You will also delete all fields with this name from all articles of this type from all publications.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.id.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': null\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'Template Field Name': null\n'Show to Authors?': null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': null\n'Add translation:': null\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': null\n'Article type fields': null\n'Delete field $1': null\n'Adding new field': null\n'You do not have the right to add article type fields.': null\n'The field $1 already exists.': null\n'The $1  must not be void and may only contain letters and underscore (_) character.': null\n'Invalid field type.': null\n'You do not have the right to delete article type fields.': null\n'Are you sure you want to delete the field $1?': null\n'You will also delete all fields with this name from all articles of this type from all publications.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.it.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': 'Colore evento'\n'You must input a number greater than $1 and less than $2 into the $3 field.': 'Nel campo $3 va inserito un numero maggiore di $1 e minore di $2.'\n'You do not have the right to translate article types.': 'Non hai il permesso di tradurre i tipi di articolo'\n'You do not have the right to reorder article types.': 'Non hai il permesso di riordinare i tipi di articolo.'\n'You do not have the right to reassign article type fields.': 'Non hai il permesso di riassegnare i campi dei tipi di articolo.'\n'You do not have the right to manage article types.': 'Non hai il permesso di gestire i tipi di articolo.'\n'You do not have the right to hide article types.': 'Non hai il permesso di nascondere i tipi di articolo.'\n'You do not have the right to delete article types.': 'Non hai il permesso di cancellare i tipi di articolo.'\n'Small ($1 pixels)': 'Piccola ($1 pixel)'\n'Medium ($1 pixels)': 'Media ($1 pixel)'\n'Large ($1 pixels)': 'Grande ($1 pixel)'\n'Hide human-readable field names': 'Nascondi i nomi campo'\n'Editor size': 'Dimensioni editor'\n'Edit and translate human-readable field names': 'Modifica e traduci i nomi campo.'\nCustom: Personalizzato\n'Characters limit': 'Limite caratteri'\n'The template name may only contain letters and the underscore (_) character.': 'Il nome del template può contenere solo lettere e trattino basso ( _ ).'\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': 'Il nome campo è già usato come proprietà base dellarticolo. Non si potrà mostrare il contenuto del campo nei template.'\n'The property $1 is already in use.': 'La proprietà $1 è già utilizzata.'\nPrecision: Precisione\n'Can not convert the field $1 from $2 to type $3.': 'Impossibile convertire il campo $1 dal $2 al tipo $3.'\n'Are you sure you want to make $1 a $2 field?': 'Vuoi davvero rendere $1 un campo di $2?'\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': 'Torna allelenco dei tipi di articolo'\nshow: mostra\nhide: nascondi\n'You must enter a name for the field.': 'Devi dare un nome al campo.'\n'You must choose a language for the field.': 'Devi scegliere una lingua per il campo.'\n'You do not have the right to rename article type fields.': 'Non hai il permesso di rinominare i campi dei tipi articolo.'\n'You do not have the right to reassign a field type.': 'Non hai il permesso di riassegnare un tipo di campo.'\n'Translating field': 'Traduzione campo'\n'The translation could not be added.': 'Non è stato possibile aggiungere la traduzione.'\n'The field $1 does not exist.': 'Il campo $1 non esiste.'\n'The $1 field may only contain letters and underscore (_) character.': '$1 può contenere solo lettere e trattino basso ( _ ).'\n'Template Field Name': 'Nome campo del template'\n'Show to Authors?': null\n'Renaming article type field': 'Rinomina il campo del tipo articolo'\n'Rename field': 'Rinomina campo'\n'Reassign a field type': 'Riassegna un tipo di campo'\n'Display Name': 'Mostra nome'\n'Are you sure you want to $1 the article type field $2?': 'Vuo davvero $1 il campo del tipo di articolo $2?'\n'Adding new article type': 'Aggiungi tipo articolo'\n'Add translation:': 'Aggiungi traduzione:'\n'$1 article type field $2': '$1 campo del tipo articolo $2'\n'$1 article type $2': '$1 tipo articolo $2'\n'Top element': 'Primo elemento'\n'Article type fields': 'Campi del tipo articolo'\n'Delete field $1': 'Elimina campo $1'\n'Adding new field': 'Aggiungi campo'\n'You do not have the right to add article type fields.': 'Non si dispone dei diritti per aggiungere campi di tipo articolo.'\n'The field $1 already exists.': 'Esiste già il campo $1.'\n'The $1  must not be void and may only contain letters and underscore (_) character.': '$1 non può essere vuoto e deve contenere solo lettere e trattino basso ( _ ).'\n'Invalid field type.': 'Tipo di campo non valido.'\n'You do not have the right to delete article type fields.': 'Non hai il permesso di eliminare campi del tipo articolo.'\n'Are you sure you want to delete the field $1?': 'Vuoi davvero eliminare il campo $1?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'Eliminerai anche tutti i campi con questo nome da tutti gli articoli di questo tipo da tutte le pubblicazioni.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.ka.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': 'მოვლენის ფერი'\n'You must input a number greater than $1 and less than $2 into the $3 field.': '$3 ველში შეიყვანეთ რიცხვი რომელიც $1-ზე მეტია და $2-ზე ნაკლები.'\n'You do not have the right to translate article types.': 'თქვენ არ გაქვთ სტატიის ტიპის თარგმნის უფლება.'\n'You do not have the right to reorder article types.': 'თქვენ არ გაქვთ სტატიის ტიპების გადაადგილების უფლება.'\n'You do not have the right to reassign article type fields.': 'თქვენ არ გაქვთ სტატიის ტიპების ხელახლა განაწილების უფლება.'\n'You do not have the right to manage article types.': 'თქვენ არ გაქვთ სტატიის ტიპების მართვის უფლება.'\n'You do not have the right to hide article types.': 'თქვენ არ გაქვთ სტატიის ტიპების დამალვის უფლება.'\n'You do not have the right to delete article types.': 'თქვენ არ გაქვთ სტატიის ტიპების წაშლის უფლება.'\n'Small ($1 pixels)': 'პატარა ($1 პიქსელი)'\n'Medium ($1 pixels)': 'საშუალო ($1 პიქსელი)'\n'Large ($1 pixels)': 'დიდი ($1 პიქსელი)'\n'Hide human-readable field names': 'ადამიანის მიერ წაკითხვადი ველების დამალვა'\n'Editor size': 'რედაქტორის ზომა'\n'Edit and translate human-readable field names': 'ადამიანის მიერ წაკითხვადი ველების რედაქტირება და თარგმნა'\nCustom: პერსონალიზებული\n'Characters limit': 'სიმბოლოების ლიმიტი'\n'The template name may only contain letters and the underscore (_) character.': 'შაბლონის სახელი უნდა შეიცავდე მხოლოს ასოებს და _ სიმბოლოს.'\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': 'ველის სახელი უკვე გამოყენებული იქნა, როგორც სტატიის საბაზისო პარამეტრი.  ველის შემადგენლობა არ იქნება ნაჩვენები შაბლონებში.    '\n'The property $1 is already in use.': '$1 უკვე გამოყენებულია'\nPrecision: სიზუსტე\n'Can not convert the field $1 from $2 to type $3.': '$1 ველის $2-დან $3 ტიპზე კონვერტირება შეუძლებელია'\n'Are you sure you want to make $1 a $2 field?': 'დარწმუნებული ხართ რომ გსურთ $1-ის $2 ველად ქცევა?'\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': 'სტატიის ტიპების სიაზე დაბრუნება'\nshow: ჩვენება\nhide: დამალვა\n'You must enter a name for the field.': 'მიუთითეთ ველის სახელი.'\n'You must choose a language for the field.': 'აირჩიეთ ველის ენა.'\n'You do not have the right to rename article type fields.': 'თქვენ არ გაქვთ სტატიის ტიპის ველის სახელის შეცვლის უფლება.'\n'You do not have the right to reassign a field type.': 'თქვენ არ გაქვთ ველის ტიპების ხელახლა განაწილების უფლება'\n'Translating field': 'ველის თარგმნა'\n'The translation could not be added.': 'თარგმანი ვერ დაემატა'\n'The field $1 does not exist.': '$1 ველი არ არსებობს'\n'The $1 field may only contain letters and underscore (_) character.': '$1 ველი უნდა შეიცავდე მხოლოდ ასოებს და _ სიმბოლოს.'\n'Template Field Name': 'შაბლონის ველის სახელი'\n'Show to Authors?': null\n'Renaming article type field': 'სტატიის ტიპის ველის სახელის შეცვლა'\n'Rename field': 'ველის სახელის შეცვლა'\n'Reassign a field type': 'ველის ტიპის ხელახლა მინიჭება'\n'Display Name': 'საჩვენებელი სახელი'\n'Are you sure you want to $1 the article type field $2?': 'დარწმუნებული ხართ რომ გსურთ $1 $2 სტატიის ტიპის ველი?'\n'Adding new article type': 'ახალი სტატიის ტიპის დამატება'\n'Add translation:': 'თარგმანის დამატება:'\n'$1 article type field $2': '$1 $2 სტატიის ტიპის ველი'\n'$1 article type $2': '$1 $2 სტატიის ტიპი'\n'Top element': 'ზედა ელემენტი'\n'Article type fields': 'სტატიის ტიპის ველები'\n'Delete field $1': '$1 ველის წაშლა'\n'Adding new field': 'ახალი ველის დამატება'\n'You do not have the right to add article type fields.': 'თქვენ არ გაქვთ სტატიის ტიპის ველების დამატების უფლება'\n'The field $1 already exists.': '$1 ველი უკვე არსებობს.'\n'The $1  must not be void and may only contain letters and underscore (_) character.': '$1 არ უნდა იყოს ცარიელი და უნდა შეიცავდე მხოლოდ ასოებს და _ სიმბოლოს.'\n'Invalid field type.': 'არასწორი ველის ტიპი.'\n'You do not have the right to delete article type fields.': 'თქვენ არ გაქვთ სტატიის ტიპის ველების წაშლის უფლება.'\n'Are you sure you want to delete the field $1?': 'დარწმუნებული ხართ რომ გსურთ $1 ველის წაშლა?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'ასევე წაიშლება ყველა ასეთი სახელის მქონე ველი ყველა მსგავსი ტიპის სტატიიდან, რომელიც მსგავს პუბლიკაციებში არსებობს.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.ko.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': '기사 타입을 삭제할 권한이 없습니다. '\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': '$1 필드는 문자나 밑줄 (_) 문자만 포함합니다.'\n'Template Field Name': null\n'Show to Authors?': null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': '새로운 기사 타입 추가중'\n'Add translation:': '번역 추가'\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': '톱 구성요소'\n'Article type fields': '기사 타입 필드'\n'Delete field $1': '필드 $1 삭제'\n'Adding new field': '새로운 필드 추가'\n'You do not have the right to add article type fields.': '기사 타입 필드를 추가할 권한이 없습니다.'\n'The field $1 already exists.': '필드 $1 이 이미 존재합니다. '\n'The $1  must not be void and may only contain letters and underscore (_) character.': '$1 은 문자나 밑줄(_) 글자만을 포함합니다. '\n'Invalid field type.': '비정상 필드 타입'\n'You do not have the right to delete article type fields.': '기사 타입 필드를 삭제할 수 없습니다. '\n'Are you sure you want to delete the field $1?': '필드 $1 을 확실히 삭제합니까?'\n'You will also delete all fields with this name from all articles of this type from all publications.': '모든 출판의 이런 타입 기사에서 같은 이름을 가진 필드를 삭제할 수 있습니다.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.ku.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': null\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'Template Field Name': null\n'Show to Authors?': null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': null\n'Add translation:': null\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': null\n'Article type fields': null\n'Delete field $1': null\n'Adding new field': null\n'You do not have the right to add article type fields.': null\n'The field $1 already exists.': null\n'The $1  must not be void and may only contain letters and underscore (_) character.': null\n'Invalid field type.': null\n'You do not have the right to delete article type fields.': null\n'Are you sure you want to delete the field $1?': null\n'You will also delete all fields with this name from all articles of this type from all publications.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.lv.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': null\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'Template Field Name': null\n'Show to Authors?': null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': null\n'Add translation:': null\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': null\n'Article type fields': null\n'Delete field $1': null\n'Adding new field': null\n'You do not have the right to add article type fields.': null\n'The field $1 already exists.': null\n'The $1  must not be void and may only contain letters and underscore (_) character.': null\n'Invalid field type.': null\n'You do not have the right to delete article type fields.': null\n'Are you sure you want to delete the field $1?': null\n'You will also delete all fields with this name from all articles of this type from all publications.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.mr.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': null\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'Template Field Name': null\n'Show to Authors?': null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': null\n'Add translation:': null\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': null\n'Article type fields': null\n'Delete field $1': null\n'Adding new field': null\n'You do not have the right to add article type fields.': null\n'The field $1 already exists.': null\n'The $1  must not be void and may only contain letters and underscore (_) character.': null\n'Invalid field type.': null\n'You do not have the right to delete article type fields.': null\n'Are you sure you want to delete the field $1?': null\n'You will also delete all fields with this name from all articles of this type from all publications.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.nb_NO.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': null\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'Template Field Name': null\n'Show to Authors?': null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': null\n'Add translation:': null\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': null\n'Article type fields': null\n'Delete field $1': null\n'Adding new field': null\n'You do not have the right to add article type fields.': null\n'The field $1 already exists.': null\n'The $1  must not be void and may only contain letters and underscore (_) character.': null\n'Invalid field type.': null\n'You do not have the right to delete article type fields.': null\n'Are you sure you want to delete the field $1?': null\n'You will also delete all fields with this name from all articles of this type from all publications.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.nl.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': null\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': 'Het $1 veld mag alleen letters en laagstreepje (_) bevatten.'\n'Template Field Name': null\n'Show to Authors?': null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': 'Toevoegen niew artikel type'\n'Add translation:': 'Voeg vertaling toe:'\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': 'Top element'\n'Article type fields': 'Artikel type velden'\n'Delete field $1': 'Verwijder veld $1'\n'Adding new field': 'Toevoegen nieuw veld'\n'You do not have the right to add article type fields.': null\n'The field $1 already exists.': 'Het veld $1 bestaat al.'\n'The $1  must not be void and may only contain letters and underscore (_) character.': 'De $1 mag niet leeg zijn en mag alleen letters en het lage streepje (_) bevatten.'\n'Invalid field type.': 'Verkeerd veld type.'\n'You do not have the right to delete article type fields.': null\n'Are you sure you want to delete the field $1?': 'Weet u zeker dat u het veld $1 wilt verwijderen?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'U zult ook alle velden verwijderen met deze naam van alle artikelen van dit type van alle publicaties.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.pa.yml",
    "content": "'Does serving this field count as a page read for statistics?': 'Does serving this field count as a page read for statistics?'\n'Is this field intended for the reader to view? If not, it is metadata.': 'Is this field intended for the reader to view? If not, it is metadata.'\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': null\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': 'Page Read Count?'\n'Editorial Content?': 'Editorial Content?'\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'Template Field Name': null\n'Show to Authors?': 'Show to Authors?'\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': null\n'Add translation:': null\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': null\n'Article type fields': null\n'Delete field $1': null\n'Adding new field': null\n'You do not have the right to add article type fields.': null\n'The field $1 already exists.': null\n'The $1  must not be void and may only contain letters and underscore (_) character.': null\n'Invalid field type.': null\n'You do not have the right to delete article type fields.': null\n'Are you sure you want to delete the field $1?': null\n'You will also delete all fields with this name from all articles of this type from all publications.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.pl.yml",
    "content": "'Does serving this field count as a page read for statistics?': 'Wyświetlanie tego pola liczy się jako odsłona dla wewnętrznego systemu statystyk?'\n'Is this field intended for the reader to view? If not, it is metadata.': 'Czy to pole powinno być wyświetlane dla czytelnika? Jeśli nie to jest ono traktowane jako metadane.'\n'Event Color': 'Kolor wydarzenia'\n'You must input a number greater than $1 and less than $2 into the $3 field.': 'W pole $3 musisz wprowadzić liczbę większą od $1 i mniejszą od $2.'\n'You do not have the right to translate article types.': 'Nie masz uprawnień do tłumaczenia typów artykułu.'\n'You do not have the right to reorder article types.': 'Nie masz uprawnień do zmiany kolejności typów artykułu.'\n'You do not have the right to reassign article type fields.': 'Nie masz uprawnień do przydzielania typów artykułu.'\n'You do not have the right to manage article types.': 'Nie masz uprawnień do zarządzania typami artykułów.'\n'You do not have the right to hide article types.': 'Nie masz uprawnień do ukrywania typów artykułu.'\n'You do not have the right to delete article types.': 'Nie masz uprawnień do usówania typów artykułu'\n'Small ($1 pixels)': 'Mały ($1 pixeli)'\n'Medium ($1 pixels)': 'Średni ($1 pikseli)'\n'Large ($1 pixels)': 'Duży ($1 pixeli)'\n'Hide human-readable field names': 'Ukryj wyjaśnione nazwy pól'\n'Editor size': 'Rozmiar edytora'\n'Edit and translate human-readable field names': 'Przetłumacz ludzkie nazwy pól'\nCustom: Własny\n'Characters limit': 'Limit znaków'\n'The template name may only contain letters and the underscore (_) character.': 'Nazwa szablonu może zawierać wyłącznie litery oraz podkreślenie (_)'\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': \"Nazwa pola była już\\_w użyciu jako wartość podstawowa artykułu. Pole nie będzie wyświetlane w szablonach.\"\n'The property $1 is already in use.': 'Wartość $1 jest już w użyciu.'\nPrecision: Precyzja\n'Can not convert the field $1 from $2 to type $3.': 'Nie można przekonwertować pola $1 z $2 do typu $3.'\n'Are you sure you want to make $1 a $2 field?': 'Na pewno chcesz zamienić pole $1 na $2?'\n'Page Read Count?': 'Zliczać odsłony strony?'\n'Editorial Content?': 'Treść redakcyjna?'\n'Back to Article Types List': 'Powrót do Listy Typów Artykułów'\nshow: pokaż\nhide: schowaj\n'You must enter a name for the field.': 'Musisz podać nazwę dla pola.'\n'You must choose a language for the field.': 'Musisz wybrać język dla pola.'\n'You do not have the right to rename article type fields.': 'Nie masz praw aby zmieniać nazwy typów pola artykułów.'\n'You do not have the right to reassign a field type.': 'Nie masz praw aby zmieniać typu pola.'\n'Translating field': 'Tłumaczone pole'\n'The translation could not be added.': 'Tłumaczenie nie zostało dodane.'\n'The field $1 does not exist.': 'Pole $1 nie istnieje.'\n'The $1 field may only contain letters and underscore (_) character.': 'Pole $1 może jedynie zawierać litery oraz podkreślnik (_)'\n'Template Field Name': 'Nazwa pola używana w szablonach'\n'Show to Authors?': 'Pokaż dla autorów?'\n'Renaming article type field': 'Zmiana nazw typów artykułów'\n'Rename field': 'Zmień nazwę pola'\n'Reassign a field type': 'Zmień typ pola'\n'Display Name': 'Wyświetl nazwę'\n'Are you sure you want to $1 the article type field $2?': 'Na pewno chcesz $1 pole typu artykułu $2?'\n'Adding new article type': 'Dodawanie nowego typu artykułu'\n'Add translation:': 'Dodaj tłumaczenie:'\n'$1 article type field $2': '$1 typ pola artykułu $2'\n'$1 article type $2': '$1 typ artykulu $2'\n'Top element': 'Główny element'\n'Article type fields': 'Typy pola artykułów'\n'Delete field $1': 'Usuń pole $1'\n'Adding new field': 'Dodawanie nowego pola'\n'You do not have the right to add article type fields.': 'Nie masz praw aby dodawać pola typów artykułów.'\n'The field $1 already exists.': 'Pole $1 już istnieje.'\n'The $1  must not be void and may only contain letters and underscore (_) character.': '$1 nie może być cyfrą i musi zawierać litery i/lub podkreślnik (_).'\n'Invalid field type.': 'Niepoprawny typ pola.'\n'You do not have the right to delete article type fields.': 'Nie masz praw aby usuwać pola typów artykułów.'\n'Are you sure you want to delete the field $1?': 'Na pewno chcesz usunąć pole $1?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'Przy okazji usuniesz wszystkie pola z tą nazwą ze wszystkich artykułow ze wszystkich form publikacji.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.ps.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': null\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'Template Field Name': null\n'Show to Authors?': null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': null\n'Add translation:': null\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': null\n'Article type fields': null\n'Delete field $1': null\n'Adding new field': null\n'You do not have the right to add article type fields.': null\n'The field $1 already exists.': null\n'The $1  must not be void and may only contain letters and underscore (_) character.': null\n'Invalid field type.': null\n'You do not have the right to delete article type fields.': null\n'Are you sure you want to delete the field $1?': null\n'You will also delete all fields with this name from all articles of this type from all publications.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.pt.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': 'Não tem permissões para eliminar Tipo de Artigos'\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': 'O nome do campo $1 só pode conter letras'\n'Template Field Name': null\n'Show to Authors?': null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': 'Adicionando Tipo de Artigo'\n'Add translation:': 'Adicionar tradução:'\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': 'Elemento Principal'\n'Article type fields': 'Campo para este Tipo de Artigo'\n'Delete field $1': 'Eliminar campo $1'\n'Adding new field': 'Adicionando campo'\n'You do not have the right to add article type fields.': 'Não tem permissões para adicionar campos'\n'The field $1 already exists.': 'Campo $1 já existente'\n'The $1  must not be void and may only contain letters and underscore (_) character.': 'O $1 não não pode estar vazio e só pode conter letras e o caracter underscore(_)'\n'Invalid field type.': 'Tipo de campo inválido'\n'You do not have the right to delete article type fields.': 'Não tem permissões para eliminar campos'\n'Are you sure you want to delete the field $1?': 'Eliminar campo $1?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'Irão ser eliminados todos os campos com este nome em todas as publicações'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.pt_BR.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': 'Cor do evento'\n'You must input a number greater than $1 and less than $2 into the $3 field.': 'Você tem que digitar um número maior que $1 e menor que $2 no campo $3.'\n'You do not have the right to translate article types.': 'Você não tem o direito de traduzir tipos de artigos.'\n'You do not have the right to reorder article types.': 'Você não tem o direito de mudar a ordem dos tipos de artigos.'\n'You do not have the right to reassign article type fields.': 'Você não tem direito de mudar o campo de tipo de artigo.'\n'You do not have the right to manage article types.': 'Você não tem o direito de gerenciar tipos de artigos.'\n'You do not have the right to hide article types.': 'Você não tem o direito de esconder tipos de artigos.'\n'You do not have the right to delete article types.': 'Você não tem o direito de remover tipos de artigos.'\n'Small ($1 pixels)': 'Pequeno ($1 pixels)'\n'Medium ($1 pixels)': 'Médio ($1 pixels)'\n'Large ($1 pixels)': 'Grande ($1 pixels)'\n'Hide human-readable field names': 'Esconder nomes de campos que podem ser lidos pelas pessoas'\n'Editor size': 'Tamanho do editor'\n'Edit and translate human-readable field names': 'Editar e traduzir campos que podem ser lidos pelas pessoas'\nCustom: Customisado\n'Characters limit': 'Limite de caracteres'\n'The template name may only contain letters and the underscore (_) character.': 'O nome do template pode ter apenas letras e o underscore (_).'\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': 'A propriedade $1 já está em uso.'\nPrecision: Precisão\n'Can not convert the field $1 from $2 to type $3.': 'Não é possível converter o campo $1 de $2 para o tipo $3'\n'Are you sure you want to make $1 a $2 field?': 'Tem certeza que quer transformar $1 em campo do tipo $2?'\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': 'Voltar para a lista de tipos de artigos'\nshow: mostrar\nhide: esconder\n'You must enter a name for the field.': 'Você tem que digitar o nome do campo.'\n'You must choose a language for the field.': 'Você tem que escolher a língua para o campo.'\n'You do not have the right to rename article type fields.': 'Você não tem o direito de mudar o nome dos campos dos tipos de artigos'\n'You do not have the right to reassign a field type.': 'Você não tem direito de mudar o tipo de campo.'\n'Translating field': 'Traduzindo o campo'\n'The translation could not be added.': 'Não foi possível adicionar a tradução'\n'The field $1 does not exist.': 'Campo $1 não existe.'\n'The $1 field may only contain letters and underscore (_) character.': 'O campo $1 pode ter apenas letras e o underscore (_).'\n'Template Field Name': 'Nome do campo de template'\n'Show to Authors?': null\n'Renaming article type field': 'Renomeando o campo de tipo de artigo'\n'Rename field': 'Mude o nome do campo'\n'Reassign a field type': 'Reatribuir o tipo de campo'\n'Display Name': 'Mostrar nome'\n'Are you sure you want to $1 the article type field $2?': 'Tem certeza que quer $1 o campo do tipo do artigo $2?'\n'Adding new article type': 'Adicionando o novo tipo de artigo'\n'Add translation:': 'Adicionar a tradução:'\n'$1 article type field $2': '$1 campo do artigo do tipo $2'\n'$1 article type $2': '$1 artigo do tipo $2'\n'Top element': 'Elemento Principal'\n'Article type fields': 'Campo para este Tipo de Artigo'\n'Delete field $1': 'Eliminar campo $1'\n'Adding new field': 'Adicionando campo'\n'You do not have the right to add article type fields.': 'Não tem permissões para adicionar campos'\n'The field $1 already exists.': 'Campo $1 já existente'\n'The $1  must not be void and may only contain letters and underscore (_) character.': 'O $1 não não pode estar vazio e só pode conter letras e o caracter underscore(_)'\n'Invalid field type.': 'Tipo de campo inválido'\n'You do not have the right to delete article type fields.': 'Não tem permissões para eliminar campos'\n'Are you sure you want to delete the field $1?': 'Eliminar campo $1?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'Irão ser eliminados todos os campos com este nome em todas as publicações'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.ro.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': 'Nu ai dreptul să ştergi tipuri de articole.'\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': 'Înapoi la lista tipurilor de articole'\nshow: arată\nhide: ascunde\n'You must enter a name for the field.': 'Trebuie să introduci un nume pentru câmp.'\n'You must choose a language for the field.': 'Trebuie să alegi o limbă pentru câmp.'\n'You do not have the right to rename article type fields.': 'Nu ai dreptul să redenumeşti câmpurile tipului de articol.'\n'You do not have the right to reassign a field type.': 'Nu ai dreotul să realoci un tip de câmp.'\n'Translating field': 'Se traduce câmpul'\n'The translation could not be added.': 'Traducerea nu a putut fi adăugată.'\n'The field $1 does not exist.': 'Câmpul $1 nu există.'\n'The $1 field may only contain letters and underscore (_) character.': 'Câmpul $1 poate conţine doar litere sau caracterul underscore (_).'\n'Template Field Name': 'Numele câmpului şablonului'\n'Show to Authors?': null\n'Renaming article type field': 'Se redenumeşte câmpul tipului de articol'\n'Rename field': 'Redenumeşte câmpul'\n'Reassign a field type': 'Realocă un tip de câmp'\n'Display Name': 'Nume public'\n'Are you sure you want to $1 the article type field $2?': 'Eşti sigur că vrei să $1 câmpul tipului de articol $2?'\n'Adding new article type': 'Se adaugă un tip nou de articol'\n'Add translation:': 'Adaugă traducere:'\n'$1 article type field $2': '$1 câmpul tipului de articol $2'\n'$1 article type $2': '$1 tipul de articol $2'\n'Top element': 'Elementul principal'\n'Article type fields': 'Câmpurile tipului de articol'\n'Delete field $1': 'Şterge câmpul $1'\n'Adding new field': 'Adaug câmp nou'\n'You do not have the right to add article type fields.': 'Nu aveţi dreptul să adăugaţi câmpuri ale tipurilor de articole.'\n'The field $1 already exists.': 'Câmpul $1 există deja.'\n'The $1  must not be void and may only contain letters and underscore (_) character.': 'Câmpul $1 nu are voie să fie gol şi trebuie să conţină numai litere.'\n'Invalid field type.': 'Tip de câmp invalid.'\n'You do not have the right to delete article type fields.': 'Nu ai dreptul să ştergi câmpurile tipurilor de articole.'\n'Are you sure you want to delete the field $1?': 'Eşti sigur că vrei să ştergi câmpul $1?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'Vei şterge şi toate câmpurile cu acest nume, din toate articolele de acest tip, din toate publicaţiile.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.ru.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': 'Цвет события'\n'You must input a number greater than $1 and less than $2 into the $3 field.': 'В поле $3 нужно ввести число большее, чем $1 и меньшее, чем $2.'\n'You do not have the right to translate article types.': 'У вас нет прав на перевод типов статей. '\n'You do not have the right to reorder article types.': 'У вас нет прав на изменение порядка типов статей. '\n'You do not have the right to reassign article type fields.': 'У вас нет прав переопределять поля типов статей. '\n'You do not have the right to manage article types.': 'У вас нет прав управлять типами статей. '\n'You do not have the right to hide article types.': 'У вас нет прав скрывать типы статей.'\n'You do not have the right to delete article types.': 'У вас нет прав удалять типы статей.'\n'Small ($1 pixels)': 'Маленький ($1 пикселей)'\n'Medium ($1 pixels)': 'Средний ($1 пикселей)'\n'Large ($1 pixels)': 'Большой ($1 пикселей) '\n'Hide human-readable field names': 'Скрыть названия полей удобные для восприятия человеком'\n'Editor size': 'Размер редактора'\n'Edit and translate human-readable field names': 'Редактировать и перевести названия полей удобные для восприятия человеком'\nCustom: Пользовательский\n'Characters limit': 'Ограничение знаков'\n'The template name may only contain letters and the underscore (_) character.': 'Имя шаблона может содержать только буквы и знак подчеркивания (_).'\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': 'Это имя поля уже используется как базовое свойство статьи. Содержимое этого поля не может быть отображено в шаблоне.'\n'The property $1 is already in use.': 'Свойство $1 уже используется.'\nPrecision: Точность\n'Can not convert the field $1 from $2 to type $3.': 'Невозможно конвертировать поле $1 из $2 в поле $3.'\n'Are you sure you want to make $1 a $2 field?': 'Вы уверены, что хотите сделать $1 полем $2?'\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': 'Вернуться к списку типов статей'\nshow: Показывать\nhide: Спрятать\n'You must enter a name for the field.': 'Вы должны ввести название поля.'\n'You must choose a language for the field.': 'Вы должны выбрать язык для поля.'\n'You do not have the right to rename article type fields.': 'Вы не имеете прав доступа для переименования поля типа статей.'\n'You do not have the right to reassign a field type.': 'Вы не имеете прав доступа для переназначения типа поля.'\n'Translating field': 'Поле перевода'\n'The translation could not be added.': 'Перевод не может быть добавлен.'\n'The field $1 does not exist.': 'Поле $1 не существует.'\n'The $1 field may only contain letters and underscore (_) character.': 'Поле $1 может содержать только буквы и символ подчеркивания (_).'\n'Template Field Name': 'Название поля шаблона'\n'Show to Authors?': null\n'Renaming article type field': 'Переименование поля типа статей'\n'Rename field': 'Переименовать поле'\n'Reassign a field type': 'Переназначить тип поля'\n'Display Name': 'Отображаемое название'\n'Are you sure you want to $1 the article type field $2?': 'Вы уверены, что хотите $1 поле типа статей $2?'\n'Adding new article type': 'Добавление нового типа статьи'\n'Add translation:': 'Добавить перевод:'\n'$1 article type field $2': '$1 поле типа статей $2'\n'$1 article type $2': '$1 тип статей $2'\n'Top element': 'Верхний элемент'\n'Article type fields': 'Поля типов статей'\n'Delete field $1': 'Удалить поле $1'\n'Adding new field': 'Добавление нового поля'\n'You do not have the right to add article type fields.': 'Вы не имеете права добавления полей типов статей.'\n'The field $1 already exists.': 'Поле $1 уже существует.'\n'The $1  must not be void and may only contain letters and underscore (_) character.': '$1 должно быть непустым и содержать только буквы и знак подчеркивания.'\n'Invalid field type.': 'Недопустимый тип поля.'\n'You do not have the right to delete article type fields.': 'Вы не имеете прав доступа для удаления полей типов статей.'\n'Are you sure you want to delete the field $1?': 'Вы уверены, что хотите удалить поле $1?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'Вы также удалите все поля с таким названием из всех статей этого типа всех изданий.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.sh.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': 'Morate uneti broj veći od $1 i manji od $2 u polje $3.'\n'You do not have the right to translate article types.': 'Nemate pravo da prevodite tipove tekstova'\n'You do not have the right to reorder article types.': 'Nemate pravo da menjate poredak tipova tekstova.'\n'You do not have the right to reassign article type fields.': 'Nemate pravo da dodeljujete tipove polja '\n'You do not have the right to manage article types.': 'Nemate pravo da upravljate tipovima tekstova'\n'You do not have the right to hide article types.': 'Nemate pravo da sakrivate tipove tekstova.'\n'You do not have the right to delete article types.': 'Nemate pravo da brišete tipove tekstova.'\n'Small ($1 pixels)': 'Mali ($1 piksela)'\n'Medium ($1 pixels)': 'Srednji ($1 piksela)'\n'Large ($1 pixels)': 'Veliki ($1 piksela)'\n'Hide human-readable field names': 'Sakri nazive polja prilagođene ljudima'\n'Editor size': 'Veličina editora'\n'Edit and translate human-readable field names': 'Uredi i prevedi nazive polja prilagođene ljudima'\nCustom: Slobodno\n'Characters limit': 'Broj karaktera'\n'The template name may only contain letters and the underscore (_) character.': 'Naziv polja može sadržati samo slova i donju crtu (_).'\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': 'Ime polja je već u upotrebi kao osnovno svojstvo teksta. Sadržaj polja neće biti prikazan u šablonima.'\n'The property $1 is already in use.': 'Svojstvo $1 je već u upotrebi.'\nPrecision: Preciznost\n'Can not convert the field $1 from $2 to type $3.': 'Nije moguće konvertovati polje $1 iz $2 u tip $3.'\n'Are you sure you want to make $1 a $2 field?': 'Da li ste sigurni da želite da od $1 napravite $2 polje'\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': 'Nazad na listu tipova članaka'\nshow: prikaži\nhide: sakri\n'You must enter a name for the field.': 'Morate umeti ime polja.'\n'You must choose a language for the field.': 'Morate izabrati jezik za polje.'\n'You do not have the right to rename article type fields.': 'Nemate pravo da preimenujete polja tipa članka.'\n'You do not have the right to reassign a field type.': 'Nemate pravo da dodeljujete tipove polja'\n'Translating field': 'Prevođenje polja'\n'The translation could not be added.': 'Prevod ne može biti dodat.'\n'The field $1 does not exist.': 'Polje $1 ne postoji.'\n'The $1 field may only contain letters and underscore (_) character.': 'Polje $1 može sadržati isključivo slova i donju crtu (_).'\n'Template Field Name': 'Ime polja šablona'\n'Show to Authors?': null\n'Renaming article type field': 'Preimenovanje polja tipa članka'\n'Rename field': 'Preimenuj polje'\n'Reassign a field type': 'Ponovo dodeli tip polja'\n'Display Name': 'Prikazno ime'\n'Are you sure you want to $1 the article type field $2?': 'Da li ste sigurni da želite da $1 polje tipa članka $2?'\n'Adding new article type': 'dodavanje novog tipa članka'\n'Add translation:': 'dodaj prevod:'\n'$1 article type field $2': '$1 polje tipa članka $2'\n'$1 article type $2': '$1 tip članka $2'\n'Top element': 'Osnovni element'\n'Article type fields': 'Polja za tip teksta'\n'Delete field $1': 'Obriši polje $1'\n'Adding new field': 'Dodavanje novog polja'\n'You do not have the right to add article type fields.': 'Nemate pravo da dodajete polja za tip teksta.'\n'The field $1 already exists.': 'Polje $1 već postoji'\n'The $1  must not be void and may only contain letters and underscore (_) character.': '$1 ne može ostati nepopunjeno, a može sadržati isključivo slova'\n'Invalid field type.': 'Pogrešan tip polja.'\n'You do not have the right to delete article type fields.': 'Nemate pravo da brišete polja za tip teksta.'\n'Are you sure you want to delete the field $1?': 'Sigurni ste da želite da obrišete polje $1?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'Takođe ćete obrisati sva polja istog imena iz svih tekstova ovog tipa u svim publikacijama.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.sq.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': null\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'Template Field Name': null\n'Show to Authors?': null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': null\n'Add translation:': null\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': null\n'Article type fields': null\n'Delete field $1': null\n'Adding new field': null\n'You do not have the right to add article type fields.': null\n'The field $1 already exists.': null\n'The $1  must not be void and may only contain letters and underscore (_) character.': null\n'Invalid field type.': null\n'You do not have the right to delete article type fields.': null\n'Are you sure you want to delete the field $1?': null\n'You will also delete all fields with this name from all articles of this type from all publications.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.sr.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': 'Морате унети број већи од $1 и мањи од $2 у поље $3.'\n'You do not have the right to translate article types.': 'Немате право да преводите типове текстова'\n'You do not have the right to reorder article types.': 'Немате право да мењате поредак типова текстова.'\n'You do not have the right to reassign article type fields.': 'Немате право да додељујете типове поља'\n'You do not have the right to manage article types.': 'Немате право да управљате типовима текстова'\n'You do not have the right to hide article types.': 'Немате право да сакривате типове текстова.'\n'You do not have the right to delete article types.': 'Немате право да бришете типове текстова.'\n'Small ($1 pixels)': 'Мали ($1 пиксела)'\n'Medium ($1 pixels)': 'Средњи ($1 пиксела)'\n'Large ($1 pixels)': 'Велики ($1 пиксела)'\n'Hide human-readable field names': 'Сакри називе поља прилагођене људима'\n'Editor size': 'Величина едитора'\n'Edit and translate human-readable field names': 'Уреди и преведи називе поља прилагођене људима'\nCustom: Слободно\n'Characters limit': 'Број карактера'\n'The template name may only contain letters and the underscore (_) character.': 'Назив поља може садржати искључиво слова и доњу црту (_)'\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': 'Име поља је већ у употреби као основно својство текста. Садржај поља неће бити приказан у шаблонима.'\n'The property $1 is already in use.': 'Својство $1 је већ у употреби'\nPrecision: Прецизност\n'Can not convert the field $1 from $2 to type $3.': 'Није могуће конвертовати поље $1 из $2 у тип $3'\n'Are you sure you want to make $1 a $2 field?': 'Да ли сте сигурни да желите да од $1 направите $2 поље'\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': 'Назад на листу типова текстова'\nshow: прикажи\nhide: сакри\n'You must enter a name for the field.': 'Морате унети име поља'\n'You must choose a language for the field.': 'Морате изабрати језик за поље'\n'You do not have the right to rename article type fields.': 'Немате право да преименујете поља типа текста'\n'You do not have the right to reassign a field type.': 'Немате право да додељујете типове поља'\n'Translating field': 'Превођење поља'\n'The translation could not be added.': 'Превод не може бити додат'\n'The field $1 does not exist.': 'Поље $1 не постоји'\n'The $1 field may only contain letters and underscore (_) character.': 'Поље $1 може садржати искључиво слова и доњу црту (_)'\n'Template Field Name': 'Име поља шаблона'\n'Show to Authors?': 'Видљиво за ауторе?'\n'Renaming article type field': 'Преименовање поља типа тикста'\n'Rename field': 'Преименуј поље'\n'Reassign a field type': 'Поново додели тип поља'\n'Display Name': 'Приказно име'\n'Are you sure you want to $1 the article type field $2?': 'Да ли сте сигурни да желите да $1 поље типа текста $2?'\n'Adding new article type': 'додавање новог типа текста'\n'Add translation:': 'додај превод:'\n'$1 article type field $2': '$1 поље типа текста $2'\n'$1 article type $2': '$1 тип текста $2'\n'Top element': 'Основни елемент'\n'Article type fields': 'Поља за тип текста'\n'Delete field $1': 'Обриши поље $1'\n'Adding new field': 'Додавање новог поља'\n'You do not have the right to add article type fields.': 'Немате право да додајете поља за тип текста'\n'The field $1 already exists.': 'Поље $1 већ постоји'\n'The $1  must not be void and may only contain letters and underscore (_) character.': '$1 не може остати непопуњено, а може садржати искључиво слова'\n'Invalid field type.': 'Погрешан тип поља'\n'You do not have the right to delete article type fields.': 'Немате право да бришете поља за тип чланка'\n'Are you sure you want to delete the field $1?': 'Сигурни сте да желите да обришете поље $1?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'Такође ћете обрисати сва поља истог имена из свих текстова овог типа у свим публикацијама'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.sv.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': 'Du har inte rätt att radera artikeltyper.'\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': 'Fältet $1 får bara innehålla bokstäver och understreck (_)'\n'Template Field Name': null\n'Show to Authors?': null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': 'Lägger till ny artikeltyp'\n'Add translation:': 'Lägg till översättning:'\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': Huvudtema\n'Article type fields': Artikeltypfält\n'Delete field $1': 'Radera fält $1'\n'Adding new field': 'Lägg till nytt fält'\n'You do not have the right to add article type fields.': 'Du har inte rätt att lägga till artikeltypfält.'\n'The field $1 already exists.': 'Fältet $1 finns redan.'\n'The $1  must not be void and may only contain letters and underscore (_) character.': '$1 får inte vara tomt och får bara innehålla bokstäver och understreck (_).'\n'Invalid field type.': 'Felaktig fälttyp.'\n'You do not have the right to delete article type fields.': 'Du har inte rätt att radera artikeltypfält.'\n'Are you sure you want to delete the field $1?': 'Är du säker att du vill radera fältet $1?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'Du kommer också att radera alla fält med det här namnet från alla artiklar av den här typen från alla publikationer.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.tr.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': null\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'Template Field Name': null\n'Show to Authors?': null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': null\n'Add translation:': null\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': null\n'Article type fields': null\n'Delete field $1': null\n'Adding new field': null\n'You do not have the right to add article type fields.': null\n'The field $1 already exists.': null\n'The $1  must not be void and may only contain letters and underscore (_) character.': null\n'Invalid field type.': null\n'You do not have the right to delete article type fields.': null\n'Are you sure you want to delete the field $1?': null\n'You will also delete all fields with this name from all articles of this type from all publications.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.uk.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': 'Колір дії'\n'You must input a number greater than $1 and less than $2 into the $3 field.': 'У полі $3 потрібно ввести число більше ніж $1 та менше ніж $2'\n'You do not have the right to translate article types.': 'У Вас не має прав на переклад статей.'\n'You do not have the right to reorder article types.': 'У Вас не має прав на зміну порядку типів статей.'\n'You do not have the right to reassign article type fields.': 'У Вас не має прав перевизначати поля типів статей.'\n'You do not have the right to manage article types.': 'У Вас не має праа керувати типами статей.'\n'You do not have the right to hide article types.': 'У Вас не має прав приховувати типи статей.'\n'You do not have the right to delete article types.': 'У Вас не має прав видаляти типи статей.'\n'Small ($1 pixels)': 'Маленький ($1 пікселів)'\n'Medium ($1 pixels)': 'Средній ($1 пікселів)'\n'Large ($1 pixels)': 'Великий ($1 пикселей) '\n'Hide human-readable field names': 'Приховати назву полів зручні для сприйняття людиною'\n'Editor size': 'Розмір редактора (здоровий бля)'\n'Edit and translate human-readable field names': 'Редагувати так перекласти назву полів зручну для сприйняття людиною'\nCustom: Користувацький\n'Characters limit': 'Обмеження знаків'\n'The template name may only contain letters and the underscore (_) character.': 'Ім’я шаблону може містити тільки букви та знак підкреслення (_)'\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': 'Це ім’я поля вже використовується як базова властивість статті. Вміст цього поля не може бути відображений у статті.'\n'The property $1 is already in use.': 'Властивість $1 вже використовується.'\nPrecision: Точність\n'Can not convert the field $1 from $2 to type $3.': 'Неможливо ковертувати поле $1 з $2 у $3.'\n'Are you sure you want to make $1 a $2 field?': 'Ви впевнені що хочете зробити $1 поля $2'\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': 'До списку типів статей'\nshow: Показати\nhide: Приховати\n'You must enter a name for the field.': 'Ви маєте ввести назву поля.'\n'You must choose a language for the field.': 'Ви маєте обрати мову для поля'\n'You do not have the right to rename article type fields.': 'Ви не маєте прав перейменовувати поля типів статей.'\n'You do not have the right to reassign a field type.': 'Ви не маєте прав переназначати типи поля.'\n'Translating field': 'Поле перекладу'\n'The translation could not be added.': 'Переклад не може бути додан.'\n'The field $1 does not exist.': 'Поле $1 не існує.'\n'The $1 field may only contain letters and underscore (_) character.': 'Поле $1 може містити тільки літери та символ підкреслення (_)'\n'Template Field Name': 'Назва поля шаблону'\n'Show to Authors?': null\n'Renaming article type field': 'Перейменування поля типів статей'\n'Rename field': 'Перейменувати поле'\n'Reassign a field type': 'Перевизначити тип поля'\n'Display Name': 'Відображена назва'\n'Are you sure you want to $1 the article type field $2?': 'Ви впевнені що хочете $1 поле типа статей $2?'\n'Adding new article type': 'Додання нового типу статті'\n'Add translation:': 'Додати переклад:'\n'$1 article type field $2': '$1 поле типу статей $2'\n'$1 article type $2': '$1 тип статті $2'\n'Top element': 'Верхній елемент'\n'Article type fields': 'Поля типів статей'\n'Delete field $1': 'Видалити поле $1'\n'Adding new field': 'Додання нового поля'\n'You do not have the right to add article type fields.': 'Ви не маєте прав додавати поля типів статей.'\n'The field $1 already exists.': 'Поле $1 вже існує.'\n'The $1  must not be void and may only contain letters and underscore (_) character.': '$1 має бути непустим та містити тільки літери та знак підкреслення (_).'\n'Invalid field type.': 'Недопустимий тип поля.'\n'You do not have the right to delete article type fields.': 'Ви не маєте прав для видалення полів типів статей.'\n'Are you sure you want to delete the field $1?': 'Ви впевнені, що хочете видалити поле $1?'\n'You will also delete all fields with this name from all articles of this type from all publications.': 'Ви також видалите всі поля з такою назвою зі всіх статей цього типу всіх видань.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.vi.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': null\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'Template Field Name': null\n'Show to Authors?': null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': null\n'Add translation:': null\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': null\n'Article type fields': null\n'Delete field $1': null\n'Adding new field': null\n'You do not have the right to add article type fields.': null\n'The field $1 already exists.': null\n'The $1  must not be void and may only contain letters and underscore (_) character.': null\n'Invalid field type.': null\n'You do not have the right to delete article type fields.': null\n'Are you sure you want to delete the field $1?': null\n'You will also delete all fields with this name from all articles of this type from all publications.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.zh.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': 您权删除文章类型\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': $1字段只包括字母\n'Template Field Name': null\n'Show to Authors?': null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': 正在增加新文章类型\n'Add translation:': null\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': null\n'Article type fields': 文章类型字段\n'Delete field $1': 删除字段$1\n'Adding new field': 正在增加新字段\n'You do not have the right to add article type fields.': 您无权增加文章类型字段\n'The field $1 already exists.': 字段$1已经存在\n'The $1  must not be void and may only contain letters and underscore (_) character.': $1只能包含有字母\n'Invalid field type.': 非法字段类型\n'You do not have the right to delete article type fields.': 您无权删除文章类型字段\n'Are you sure you want to delete the field $1?': 您确认要删除字段$1\n'You will also delete all fields with this name from all articles of this type from all publications.': 同时你将从发布的所有文章中删除含有此名的所有字段\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_type_fields.zh_TW.yml",
    "content": "'Does serving this field count as a page read for statistics?': null\n'Is this field intended for the reader to view? If not, it is metadata.': null\n'Event Color': null\n'You must input a number greater than $1 and less than $2 into the $3 field.': null\n'You do not have the right to translate article types.': null\n'You do not have the right to reorder article types.': null\n'You do not have the right to reassign article type fields.': null\n'You do not have the right to manage article types.': null\n'You do not have the right to hide article types.': null\n'You do not have the right to delete article types.': null\n'Small ($1 pixels)': null\n'Medium ($1 pixels)': null\n'Large ($1 pixels)': null\n'Hide human-readable field names': null\n'Editor size': null\n'Edit and translate human-readable field names': null\nCustom: null\n'Characters limit': null\n'The template name may only contain letters and the underscore (_) character.': null\n'The field name was already in use as a base property of the article. The field content will not be displayed in the templates.': null\n'The property $1 is already in use.': null\nPrecision: null\n'Can not convert the field $1 from $2 to type $3.': null\n'Are you sure you want to make $1 a $2 field?': null\n'Page Read Count?': null\n'Editorial Content?': null\n'Back to Article Types List': null\nshow: null\nhide: null\n'You must enter a name for the field.': null\n'You must choose a language for the field.': null\n'You do not have the right to rename article type fields.': null\n'You do not have the right to reassign a field type.': null\n'Translating field': null\n'The translation could not be added.': null\n'The field $1 does not exist.': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'Template Field Name': null\n'Show to Authors?': null\n'Renaming article type field': null\n'Rename field': null\n'Reassign a field type': null\n'Display Name': null\n'Are you sure you want to $1 the article type field $2?': null\n'Adding new article type': null\n'Add translation:': null\n'$1 article type field $2': null\n'$1 article type $2': null\n'Top element': null\n'Article type fields': null\n'Delete field $1': null\n'Adding new field': null\n'You do not have the right to add article type fields.': null\n'The field $1 already exists.': null\n'The $1  must not be void and may only contain letters and underscore (_) character.': null\n'Invalid field type.': null\n'You do not have the right to delete article type fields.': null\n'Are you sure you want to delete the field $1?': null\n'You will also delete all fields with this name from all articles of this type from all publications.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.ar.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': 'أخف أسماء الخانات القابلة مقروئة من الانسان'\n'Edit and translate human-readable field names': 'عدل وترجم أسماء الخانات القابلة مقروئة للإنسان'\n'The template name may only contain letters and the underscore (_) character.': 'يسمح لإسم النموذج فقط ان يحتوي على حروف والعلامة (_) ـ'\n'Rename article type $1': 'إعادة تسمية نوع المقالة $ 1'\n'Invalid article type $1.': 'نوع المقالة غير الصالح $1.'\n'You cannot merge the same type into itself.': 'لا يمكنك دمج نفس النوع في حد ذاته.'\n'View the source ($1) version of $2': 'إعرض المصدر ($1) الإصدار من $2'\n'View of original ($1) $2': 'عرض الأصل  ($1) $2'\n'To return to the preview click here': 'للرجوع إلى المعاينة، أنقر هنا'\n'This is the first translation of $1': 'هذه هي أول ترجمة من $1'\n'There is no article associated with the preview.': 'لا يوجد مقال مرتبط بالمعاينة.'\n'There are $1 articles associated with $2 that will be merged.': 'توجد $1 مقالات مرتبطة بــ $2 سيتم دمجها.'\n'The source article type ($1) does not have any articles.': 'مصدر نوع القال ($1) ليس لديه أي مقالات.'\n'Source Article Type': 'نوع المقال المصدر'\n'Preview of $1': 'معاينة من $1'\n'Preview a sample of the merge configuration.': 'إنظر معاينة من عينة إعداد الدمج'\nNOTHING: 'لا شيء'\n'Merge failed.': 'فشل الدمج.'\n'Merge configuration for merging $1 into $2.': 'إعداد الدمج لدمج $1 في $2.'\n'Merge Article Types: Step $1 of $2': 'دمج أنواع المقال: الخطوة 1$ من $2'\n'Merge $1 into $2': 'إدمج $1 في $2'\n'Destination Article Type': 'نوع المقال المتسهدف'\n'Delete the source article type ($1) when finished.': 'إحذف نوع المقال المصدر ($1) عند الانتهاء.'\n'Cycle through your articles to verify that the merge configuration is correct.': 'راجع مقالاتك للتحقق من أن إعداد الدمج يكون صحيحاً.'\n'Clicking Merge will merge ($1) article(s).': 'الضغط على  دمج  سيدمج المقالة (-ات) ($1).'\n'Cannot merge a $1 field ($2) into a $3 field ($4).': 'لا يمكن دمج خانة $1 ($2) في خانة $3 ($4) ـ'\n'--None--': '--لا شيء--'\n'(Null merge warning.)': 'تحذير الدمج الفارغ'\n'(No merge warning.)': 'لا يوجد تحذير الدمج'\n'(Duplicate warning.)': 'تحذير مكرر'\n'(!) Do NOT merge $1': '(!) لا تدمج $1'\n'$1 of $2': '$1 من $2'\nshow: أظهر\nhide: أخف\ndeactivate: عطل\nactivate: تشغيل\n'You must enter a name for the type.': 'يجب عليك إدخال اسم للنوع.'\n'You must choose a language for the article type.': 'يجب عليك اختيار لغة لنوع المقال.'\n'You do not have the right to rename article types.': 'ليس لديك الحق في اعادة تسمية  أنواع المقال.'\n'You do not have the right to merge article types.': 'ليس لديك الحق في دمج أنواع المقال.'\n'The translation could not be added.': 'لم تضف الترجمة.'\n'The article type $1 does not exist.': 'لا يوجد نوع المقال $1.'\n'Template Type Name': 'اسم نوع النموذج'\n'Show to Authors?': null\n'Show article on section page': 'عرض المقال في صفحة الأقسام'\n'Show article on front page': 'عرض المقال في الصفحة الأمامية'\n'Publish date': 'تاريخ الصدور'\nMerge!: إدمج!\n'Merge types': 'إدمج الأنواع'\n'Merge article type': 'إدمج نوع المقال'\n'Link to public page': 'إربط بصفحة عمومية'\n'Go to Step 3': 'إذهب إلى الخطوة 3'\n'Go to Step 2': 'إذهب إلى الخطوة 2'\n'Display Name': 'اسم العرض'\n'Delete article type $1.': 'إحذف نوع المقال $1.'\n'Comments Enabled?': null\n'Back to Step 2': 'الرجوع إلى الخطوة 2'\n'Back to Step 1': 'الرجوع إلى الخطوة 1'\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': 'هل أنت متأكد أنك تريد حذف نوع المقال 1$ ؟ تحذير: حذف هذا النوع من المقال سوف يحذف جميع المقالات المرتبطة بهذا النوع من المقال.'\n'Are you sure you want to $1 the article type $2?': 'هل أنت متأكد أنك تريد $1 نوع المقال 2'\n'Are you sure you want to $1 comments for article type $2?': 'هل أنت متأكد أنك تريد $1 تعليقات لنوع المقال 2'\n'Allow users without subscriptions to view the article': 'إسمح للمستخدمين بدون اشتراكات أن يروا المقال'\n'Add translation:': 'أضف ترجمة:'\n'$1 comments for article type $2': '$1 تعليقات لنوع المقال $2'\n'$1 comments for article type $1': '$1 تعليقات لنوع المقال $1'\n'$1 article type $2': '$1 نوع المقال $2'\n'No article types.': 'لا توجد أنواع مقالات'\n'Delete article type $1': 'إحذف نوع المقال $1'\n'You do not have the right to add article types.': 'ليس لديك الحق في إضافة أنواع المقال.'\n'Adding new article type': 'قيد إضافة نوع مقال جديد'\n'The $1 field may only contain letters and underscore (_) character.': 'يسمح للخانة $1 فقط ان تحتوي على الحروف والحرف (_) ـ'\n'The article type $1 already exists.': 'نوع المقال $1 موجود مسبقاً'\n'You do not have the right to delete article types.': 'ليس لديك الحق في حذف أنواع المقال.'\n'The article type $1 could not be deleted.': 'لم يحذف نوع المقال $1'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.az.yml",
    "content": "list: siyahı\nfilter: filtr\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': '$2 məqalə növünün məqalələrini $1 istədiyinə əminsən?'\n'$1 articles of article type $2': '$2 məqalə növünün $1 məqalələri'\n'Hide human-readable field names': 'İnsanın oxuya biləcəyi sahə adlarını gizlə'\n'Edit and translate human-readable field names': 'İnsanın oxuya biləcəyi sahə adlarını dəyiş və tərcümə et'\n'The template name may only contain letters and the underscore (_) character.': 'Nümunə adı yalnız hərf və alt xətt (_) işarəsindən ibarət ola bilər.'\n'Rename article type $1': '$1 məqalə növünün adını dəyiş'\n'Invalid article type $1.': 'Səhv $1 məqalə növü.'\n'You cannot merge the same type into itself.': 'Eyni növü özünə birləşdirə bilməzsən.'\n'View the source ($1) version of $2': '$2 üçün mənbə ($1) versiyasına bax'\n'View of original ($1) $2': '$2 üçün orijinala ($1) bax'\n'To return to the preview click here': 'Ön baxışa qayıtmaq üçün kliklə'\n'This is the first translation of $1': 'Bu $1 üçün ilk tərcümədir'\n'There is no article associated with the preview.': 'Bu nümayişlə əlaqəli məqalə yoxdur.'\n'There are $1 articles associated with $2 that will be merged.': '$2 ilə əlaqəli olan və birləşdiriləcək $1 məqalə var.'\n'The source article type ($1) does not have any articles.': 'Mənbə məqalə növündə ($1) heç bir məqalə yoxdur.'\n'Source Article Type': 'Mənbə Məqalə Növü'\n'Preview of $1': '$1 üçün ön baxış'\n'Preview a sample of the merge configuration.': 'Birləşdirmə konfiqurasiyasının nümunəsinə bax.'\nNOTHING: 'HEÇ NƏ'\n'Merge failed.': 'Birləşmə alınmadı.'\n'Merge configuration for merging $1 into $2.': '$1 ilə $2 üçün birləşmə konfiqurasiyası.'\n'Merge Article Types: Step $1 of $2': 'Məqalə Növlərini Birləşdir: $2 addım içindən $1'\n'Merge $1 into $2': '$1-i $2-ə birləşdir'\n'Destination Article Type': 'Hədəf Məqalə Növü'\n'Delete the source article type ($1) when finished.': 'Bitdikdə mənbə məqalə növünü ($1) sil.'\n'Cycle through your articles to verify that the merge configuration is correct.': 'Birləşmə konfiqurasiyasının düzgünlüyünü yoxlamaq üçün məqalələriniz arasında dövrə vur.'\n'Clicking Merge will merge ($1) article(s).': 'Birləş düyməsini klikləməklə məqalə(lər)i birləşdirə ($1) bilərsən.'\n'Cannot merge a $1 field ($2) into a $3 field ($4).': '$1 sahəsi ($2) $3 sahəsi ($4) ilə birləşdirilə bilmir.'\n'--None--': '--Heç biri--'\n'(Null merge warning.)': '(Boş birləşmə xəbərdarlığı.)'\n'(No merge warning.)': '(Baş verməyən birləşmə xəbərdarlığı.)'\n'(Duplicate warning.)': '(Surət çıxarma xəbərdarlığı.)'\n'(!) Do NOT merge $1': '(!) $1 üçün birləşmə əməliyyatı ETMƏ'\n'$1 of $2': '$2-nin $1-i'\nshow: göstər\nhide: gizlə\ndeactivate: 'ləğv et'\nactivate: aktivləşdir\n'You must enter a name for the type.': 'Növ üçün ad daxil etməlisən.'\n'You must choose a language for the article type.': 'Məqalə növü üçün dil seçməlisən.'\n'You do not have the right to rename article types.': 'Məqalə növlərinin adını dəyişməyə ixtiyarın yoxdur.'\n'You do not have the right to merge article types.': 'Məqalə növlərini birləşdirməyə ixtiyarın yoxdur.'\n'The translation could not be added.': 'Tərcümə əlavə edilə bilmədi.'\n'The article type $1 does not exist.': '$1 məqalə növü mövcud deyil.'\n'Template Type Name': 'Nümunə Növü Adı'\n'Show to Authors?': null\n'Show article on section page': 'Bölmə səhifəsində məqalə göstər'\n'Show article on front page': 'Ön səhifədə məqalə göstər'\n'Publish date': 'Nümayiş tarixi'\nMerge!: Birləşdir!\n'Merge types': 'Növləri birləşdir'\n'Merge article type': 'Məqalə növlərini birləşdir'\n'Link to public page': 'İctimai səhifəyə keçid'\n'Go to Step 3': 'Addım 3-ə keç'\n'Go to Step 2': 'Addım 2-ə keç'\n'Display Name': 'Adı Nümayiş Et'\n'Delete article type $1.': '$1 məqalə növünü sil.'\n'Comments Enabled?': null\n'Back to Step 2': 'Addım 2-ə qayıt'\n'Back to Step 1': 'Addım 1-ə qayıt'\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': '$1 məqalə növünü silmək istədiyinə əminsən? DİQQƏT: Bu məqalə növünü silsən, onunla əlaqəli olan bütün məqalələr də silinəcək.'\n'Are you sure you want to $1 the article type $2?': '$2 məqalə növünü $1 istədiyinə əminsən?'\n'Are you sure you want to $1 comments for article type $2?': '$2 məqalə növü üçün şərhləri $1 istədiyinə əminsən?'\n'Allow users without subscriptions to view the article': 'İstifadəçilərə abunə olmadan məqaləyə baxmağa icazə ver'\n'Add translation:': 'Tərcümə Əlavə Et:'\n'$1 comments for article type $2': '$2 məqalə növü üçün $1 şərh'\n'$1 comments for article type $1': '$1 məqalə növü üçün $1 şərh'\n'$1 article type $2': '$1 məqalə növü $2'\n'No article types.': 'Məqalə növü yoxdur.'\n'Delete article type $1': '$1 məqalə növünü sil'\n'You do not have the right to add article types.': 'Məqalə növünü əlavə etməyə ixtiyarın yoxdur.'\n'Adding new article type': 'Yeni məqalə növünün əlavə edilməsi'\n'The $1 field may only contain letters and underscore (_) character.': '$1 sahə adı yalnız hərf və alt xətt (_) işarəsindən ibarət ola bilər.'\n'The article type $1 already exists.': '$1 məqalə növü artıq mövcuddur.'\n'You do not have the right to delete article types.': 'Məqalə növlərini silməyə ixtiyarın yoxdur.'\n'The article type $1 could not be deleted.': '$1 məqalə növü silinə bilmədi.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.be.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': 'Імя шаблёну можа змяшчаць толькі літары і знак падкрэслівання (_).'\n'Rename article type $1': 'Пераіменаваць тып артыкула  $1 '\n'Invalid article type $1.': 'Няправільны тып артыкула $1.'\n'You cannot merge the same type into itself.': 'Вы ня можаце абяднаць тып сам з сабой.'\n'View the source ($1) version of $2': 'Прагляд крынiцы ($1) вэрсii $2'\n'View of original ($1) $2': 'Прагляд арыгіналу ($1) $2'\n'To return to the preview click here': 'Для звароту да папярэдняга агляду нацiсьнiце тут.'\n'This is the first translation of $1': 'Гэта першы пераклад $1'\n'There is no article associated with the preview.': 'Няма артыкулаў, прызначаных для папярэдняга агляду.'\n'There are $1 articles associated with $2 that will be merged.': 'Артыкулаў, асацыяваных з $2, якiя будуць абяднаныя:'\n'The source article type ($1) does not have any articles.': 'Тып $1 артыкула крынiцы ня мае артыкулаў.'\n'Source Article Type': 'Тып артыкула крынiцы'\n'Preview of $1': 'Папярэднi агляд $1'\n'Preview a sample of the merge configuration.': 'Папярэднi агляд узора абяднанай канфiгурацыi.'\nNOTHING: НIЧОГА\n'Merge failed.': 'Абяднаньне не ўдалося .'\n'Merge configuration for merging $1 into $2.': 'Канфiгурацыя абяднаньня для зьлiцьця $1 у $2.'\n'Merge Article Types: Step $1 of $2': 'Тыпы абядноўваных артыкулаў: Крок $1 з $2 '\n'Merge $1 into $2': 'Абяднаць $1 i $2 '\n'Destination Article Type': 'Тып вынiковага артыкула'\n'Delete the source article type ($1) when finished.': 'Выдалiць тып артыкула ($1) пасьля завяршэньня.'\n'Cycle through your articles to verify that the merge configuration is correct.': 'Пракруціць Ваш артыкул для праверкi, цi канфiгурацыя абяднаньня сулшная. '\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': 'Немагчыма зьлiць поле $1 ($2) у поле $3 ($4). '\n'--None--': '--Нічога--'\n'(Null merge warning.)': '(Няма папярэджаньняў аб абяднаньнi.)'\n'(No merge warning.)': '(Няма папярэджаньняў аб абяднаньнi.)'\n'(Duplicate warning.)': '(Дубляваць папярэджаньнi)'\n'(!) Do NOT merge $1': '(!) Не абядноўвайце $1'\n'$1 of $2': '$1 з $2 '\nshow: Паказаць\nhide: Схаваць\ndeactivate: дэактываваць\nactivate: актывіваваць\n'You must enter a name for the type.': 'Вы павiнны ўвесьцi назву тыпу.'\n'You must choose a language for the article type.': 'Вы павiнны выбраць мову для тыпу артыкула.'\n'You do not have the right to rename article types.': 'Вы ня маеце права пераймяноўваць тыпы артыкулаў.'\n'You do not have the right to merge article types.': 'Вы ня маеце права абядноўваць тыпы артыкулаў.'\n'The translation could not be added.': 'Пераклад ня можа быць даданы.'\n'The article type $1 does not exist.': 'Тып артыкула $1 не iснуе.'\n'Template Type Name': 'Назва тыпу шаблёну'\n'Show to Authors?': null\n'Show article on section page': 'Паказаць артыкул на старонцы рубрыкi.'\n'Show article on front page': 'Паказаць артыкул на тытульнай старонцы '\n'Publish date': 'Дата публiкацыі '\nMerge!: Абяднаць!\n'Merge types': 'Абяднаць тыпы'\n'Merge article type': 'Абяднаць тыпы артыкулаў'\n'Link to public page': 'Спасылка на агульнадаступную старонку'\n'Go to Step 3': 'Перайсьцi да кроку 3'\n'Go to Step 2': 'Перайсьцi да кроку 2'\n'Display Name': 'Адлюстраваная назва'\n'Delete article type $1.': 'Выдалiць тып артыкулаў $1.'\n'Comments Enabled?': null\n'Back to Step 2': 'Назад да кроку 2'\n'Back to Step 1': 'Назад да кроку 1'\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': 'Цi Вы ўпэўнены, што хочаце выдалiць тып артыкула $1? ПАПЯРЭДЖАНЬНЕ: выдаленьне гэтага тыпу артыкулаў пацягне за сабой выдаленьне ўсіх артыкулаў, асацыяваных з гэтым тыпам.'\n'Are you sure you want to $1 the article type $2?': 'Цi Вы ўпэўнены, што хочаце $1 тыпа артыкулаў $2? '\n'Are you sure you want to $1 comments for article type $2?': 'Цi Вы ўпэўнены, што хочаце $1 камэнтары для тыпу артыкула $2?'\n'Allow users without subscriptions to view the article': 'Дазволiць карыстальнiкам без падпiскі чытаць артыкулы.'\n'Add translation:': 'Дадаць пераклад'\n'$1 comments for article type $2': 'Камэнтароў для артыкулаў тыпу $2: $1'\n'$1 comments for article type $1': 'Камэнтароў для артыкулаў тыпу $1: $1'\n'$1 article type $2': '$1 тып артыкулаў $2 '\n'No article types.': 'Няма тыпаў артыкулаў.'\n'Delete article type $1': 'Выдалiць тып артыкула $1'\n'You do not have the right to add article types.': 'Вы ня маеце права выдаляць тыпы артыкулаў.'\n'Adding new article type': 'Дадаваньне новага тыпу артыкула'\n'The $1 field may only contain letters and underscore (_) character.': 'Поле $1 можа зьмяшчаць толькi лiтары i сымбаль падкрэсьлiваньня (_).'\n'The article type $1 already exists.': 'Тып артыкула $1 ужо iснуе. '\n'You do not have the right to delete article types.': 'Вы ня маеце права выдаляць тыпы артыкулаў.'\n'The article type $1 could not be deleted.': 'Немагчыма выдалiць тып артыкулаў $1.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.bn.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': null\n'Show article on front page': null\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': null\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': null\n'Delete article type $1': null\n'You do not have the right to add article types.': null\n'Adding new article type': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'The article type $1 already exists.': null\n'You do not have the right to delete article types.': null\n'The article type $1 could not be deleted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.cs.yml",
    "content": "list: seznam\nfilter: filtr\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': 'Jste si jist, že chcete $1 články jako typ článku $2? '\n'$1 articles of article type $2': '$1 články typu článku $2'\n'Hide human-readable field names': 'Skrýt pole se jmény lidí'\n'Edit and translate human-readable field names': 'Uprav a přelož pole se jmény lidí'\n'The template name may only contain letters and the underscore (_) character.': 'Jméno šablony může obsahovat písmena a podtržítko (_).'\n'Rename article type $1': 'Přejmenovat typ článku $1'\n'Invalid article type $1.': 'Neplatný typ článku $1.'\n'You cannot merge the same type into itself.': 'Nelze vnořit stejný typ do sebe sama.'\n'View the source ($1) version of $2': 'Zobrazit zdrojovou ($1) verzi $2'\n'View of original ($1) $2': 'Náhled originálu ($1) $2'\n'To return to the preview click here': 'K návratu do náhledu klikněte zde'\n'This is the first translation of $1': 'Toto je první překlad z $1'\n'There is no article associated with the preview.': 'S náhledem nejsou spojené žádné články.'\n'There are $1 articles associated with $2 that will be merged.': 'S $2 jsou spojené $1 články, které budou vnořeny.'\n'The source article type ($1) does not have any articles.': 'Zdrojový typ článku ($1) neobsahuje žádné články.'\n'Source Article Type': 'Zdrojový Typ Článku'\n'Preview of $1': 'Náhled $1'\n'Preview a sample of the merge configuration.': 'Zobrazit příklad nastavení vnoření.'\nNOTHING: NIC\n'Merge failed.': 'Vnoření selhalo.'\n'Merge configuration for merging $1 into $2.': 'Nastavení vnoření pro vnoření $1 do $2.'\n'Merge Article Types: Step $1 of $2': 'Vnořit Typy Článků: Krok $1 z $2'\n'Merge $1 into $2': 'Vnořit $1 do $2'\n'Destination Article Type': 'Cílový Typ Článku'\n'Delete the source article type ($1) when finished.': 'Po dokončení odstranit typ článku ($1).'\n'Cycle through your articles to verify that the merge configuration is correct.': 'Projít znovu články a ověřit, že nastavení vnoření je správné.'\n'Clicking Merge will merge ($1) article(s).': 'Kliknutím na Vnořit se vnoří ($1) článků.'\n'Cannot merge a $1 field ($2) into a $3 field ($4).': 'Nezdařilo se vnořit $1 pole ($2) do $3 pole ($4).'\n'--None--': '--Žádné--'\n'(Null merge warning.)': '(Nulové varování o vnoření.)'\n'(No merge warning.)': '(Žádné varování o vnoření.)'\n'(Duplicate warning.)': '(Duplikovat varování.)'\n'(!) Do NOT merge $1': '(!) Nevnořujte $1'\n'$1 of $2': '$1 z $2'\nshow: zobrazit\nhide: skrýt\ndeactivate: vypnout\nactivate: zapnout\n'You must enter a name for the type.': 'Vložte název typu.'\n'You must choose a language for the article type.': 'Zvolte jazyk pro typ článku.'\n'You do not have the right to rename article types.': 'Nemáte oprávnění přejmenovávat typy článků.'\n'You do not have the right to merge article types.': 'Nemáte oprávnění vnořovat typy článků.'\n'The translation could not be added.': 'Nezdařilo se přidat překlad.'\n'The article type $1 does not exist.': 'Typ článku $1 neexistuje.'\n'Template Type Name': 'Název Typu Šablony'\n'Show to Authors?': null\n'Show article on section page': 'Zobrazit článek na stránce rubrik'\n'Show article on front page': 'Zobrazit článek na hlavní stránce'\n'Publish date': 'Datum publikování'\nMerge!: Vnořit!\n'Merge types': 'Typy vnoření'\n'Merge article type': 'Vnořit typy článků'\n'Link to public page': 'Navázat na hlavní stánku'\n'Go to Step 3': 'Jít na Krok 3'\n'Go to Step 2': 'Jít na Krok 2'\n'Display Name': Popisek\n'Delete article type $1.': 'Odstranit typ článku $1.'\n'Comments Enabled?': null\n'Back to Step 2': 'Zpět na Krok 2'\n'Back to Step 1': 'Zpět na Krok 1'\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': 'Jste si jistí, že chcete odstranit typ článku $1? VAROVÁNÍ: Odstraněním tohoto typu článku zároveň odstraníte všechny články spojené s tímto typem.'\n'Are you sure you want to $1 the article type $2?': 'Jste si jistí, že chcete $1 typ článku $2?'\n'Are you sure you want to $1 comments for article type $2?': 'Jste si jistí, že chcete $1 komentáře typu článku $2?'\n'Allow users without subscriptions to view the article': 'Povolit uživatelům bez předplatného zobrazit článek'\n'Add translation:': 'Přidat překlad:'\n'$1 comments for article type $2': '$1 komentáře pro typ článku $2'\n'$1 comments for article type $1': '$1 komentáře pro typ článku $1'\n'$1 article type $2': '$1 typ článku $2'\n'No article types.': 'Žádný typ článku'\n'Delete article type $1': 'Smazat typ článku $1'\n'You do not have the right to add article types.': 'Nemáte práva přidat typ článku'\n'Adding new article type': 'Přidává se nový typ článku'\n'The $1 field may only contain letters and underscore (_) character.': 'Pole $1 smí obsahovat pouze písmena a podtržítko (_).'\n'The article type $1 already exists.': 'Tento typ článku už existuje'\n'You do not have the right to delete article types.': 'Nemáte oprávnění vymazat tento typ článků.'\n'The article type $1 could not be deleted.': 'Typ článku $1 nemohl být smazán'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.da.yml",
    "content": "list: liste\nfilter: filter\n'Show in Article Lists?': 'Vis i artikel lister?'\n'Are you sure you want to $1 articles of article type $2?': 'Vil du $1 artikler af type $2?'\n'$1 articles of article type $2': '$1 artikler af type $2'\n'Hide human-readable field names': 'Skjul læsevenlige feltnavne'\n'Edit and translate human-readable field names': 'Rediger og oversæt læsevenlige feltnavne'\n'The template name may only contain letters and the underscore (_) character.': 'Skabelonens navn må kun indeholde bogstaver og underscore tegnet (_)'\n'Rename article type $1': 'Omdøb artikel type $1'\n'Invalid article type $1.': 'Ugyldig artikel type $1.'\n'You cannot merge the same type into itself.': 'Du kan ikke flette den samme type med sig selv.'\n'View the source ($1) version of $2': 'Se originalversionen ($1) til $2'\n'View of original ($1) $2': 'Viser original ($1) $2'\n'To return to the preview click here': 'Klik her for at vende tilbage til forhåndsvisning'\n'This is the first translation of $1': 'Dette er oversættelsen af $1'\n'There is no article associated with the preview.': 'Ingen artikel til forhåndsvisning'\n'There are $1 articles associated with $2 that will be merged.': '$1 artikler forbundet med $2 vil blive flettet.'\n'The source article type ($1) does not have any articles.': 'Kilde artikeltypen ($1) har ingen artikler.'\n'Source Article Type': 'Kilde artikeltype'\n'Preview of $1': 'Forhåndsvisning af $1'\n'Preview a sample of the merge configuration.': 'Se en forhåndsvisning af fletnings indstillingerne.'\nNOTHING: INGENTING\n'Merge failed.': 'Fletning lykkedes ikke.'\n'Merge configuration for merging $1 into $2.': 'Indstillinger for fletning af $1 ind i $2.'\n'Merge Article Types: Step $1 of $2': 'Flet artikeltyper: Trin $1 af $2'\n'Merge $1 into $2': 'Flet $1 ind i $2'\n'Destination Article Type': 'Til artikeltype'\n'Delete the source article type ($1) when finished.': 'Slet kilde artikeltypen ($1) efter fletning.'\n'Cycle through your articles to verify that the merge configuration is correct.': 'Gennemgå dine artikler for at kontrollere at indstillingerne for fletning er korrekte.'\n'Clicking Merge will merge ($1) article(s).': 'Tryk flet for at flette ($1) artikler.'\n'Cannot merge a $1 field ($2) into a $3 field ($4).': 'Et $1 felt ($2) kan ikke flettes ind i et $3 felt ($4).'\n'--None--': '--Ingen--'\n'(Null merge warning.)': '(Advarsel: Tom fletning).'\n'(No merge warning.)': '(Advarsel: Ingen fletning).'\n'(Duplicate warning.)': '(Advarsel: Gentagelse.)'\n'(!) Do NOT merge $1': '(!) Flet IKKE $1'\n'$1 of $2': '$1 af $2'\nshow: vis\nhide: skjul\ndeactivate: deaktiver\nactivate: aktiver\n'You must enter a name for the type.': 'Du skal give typen et navn.'\n'You must choose a language for the article type.': 'Vælg et sprog for artikel typen.'\n'You do not have the right to rename article types.': 'Du har ikke rettigheder til at omdøbe artikel type felter.'\n'You do not have the right to merge article types.': 'Du har ikke rettigheder til at flette artikel typer.'\n'The translation could not be added.': 'Oversættelsen kunne ikke tilføjes.'\n'The article type $1 does not exist.': 'Artikel typen $1 findes ikke.'\n'Template Type Name': 'Skabelon type navn'\n'Show to Authors?': 'Vis til forfattere?'\n'Show article on section page': 'Vis artiklen på sektions siden'\n'Show article on front page': 'Vis artiklen på forsiden'\n'Publish date': 'Udgivelses dato'\nMerge!: Flet!\n'Merge types': 'Flet typer'\n'Merge article type': 'Flet artikel typer'\n'Link to public page': 'Link til offentlig side'\n'Go to Step 3': 'Gå til trin 3'\n'Go to Step 2': 'Gå til trin 2'\n'Display Name': 'Vist navn'\n'Delete article type $1.': 'Slet artikel type $1.'\n'Comments Enabled?': 'Slå kommentarer til?'\n'Back to Step 2': 'Tilbage til trin 2'\n'Back to Step 1': 'Tilbage til trin 1'\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': 'Vil du slette artikeltypen $1? ADVARSEL: Hvis du sletter artikeltypen bliver alle artikler af denne type slettet.'\n'Are you sure you want to $1 the article type $2?': 'Vil du $1 artikeltypen $2?'\n'Are you sure you want to $1 comments for article type $2?': 'Vil du $1 kommentarer for artikel type $2?'\n'Allow users without subscriptions to view the article': 'Tillad brugere uden abonnement at se artiklen'\n'Add translation:': 'Tilføj oversættelse:'\n'$1 comments for article type $2': '$1 kommentarer til artikel type $2'\n'$1 comments for article type $1': '$1 kommentarer for artikel type $1'\n'$1 article type $2': '$1 artikel type $2'\n'No article types.': 'Ingen artikel typer.'\n'Delete article type $1': 'Slet artikel type $1'\n'You do not have the right to add article types.': 'Du har ikke rettigheder til at tilføje artikel typer.'\n'Adding new article type': 'Tilføjer ny artikel type'\n'The $1 field may only contain letters and underscore (_) character.': '$1 feltet må kun indeholde bogstaver og underscore tegnet (_).'\n'The article type $1 already exists.': 'Artikel typen $1 eksisterer allerede.'\n'You do not have the right to delete article types.': 'Du har ikke rettigheder til at slette artikel typer.'\n'The article type $1 could not be deleted.': 'Artikel typen $1 kunne ikke slettes.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.de.yml",
    "content": "list: Liste\nfilter: Filter\n'Show in Article Lists?': 'In Artikellisten anzeigen?'\n'Are you sure you want to $1 articles of article type $2?': 'Wirklich $1 Artikel vom Artikeltyp $2?'\n'$1 articles of article type $2': '$1 Artikel vom Artikeltyp $2'\n'Hide human-readable field names': 'Verberge von Menschen lesbare Feldnamen'\n'Edit and translate human-readable field names': 'Bearbeite und übersetze von Menschen lesbare Feldnamen'\n'The template name may only contain letters and the underscore (_) character.': 'Der Templatename darf nur Buchstaben und den Unterstrich (_) enthalten.'\n'Rename article type $1': 'Artikeltyp $1 umbenennen'\n'Invalid article type $1.': 'Ungültiger Artikeltyp $1.'\n'You cannot merge the same type into itself.': 'Gleiche Typen können nicht zusammengeführt werden.'\n'View the source ($1) version of $2': 'Quelle ($1) Version von $2 betrachten'\n'View of original ($1) $2': 'Original ($1) $2 betrachten'\n'To return to the preview click here': 'Um zur Vorschau zurückzukehren hier klicken.'\n'This is the first translation of $1': 'Dies ist die Übersetzung von $1.'\n'There is no article associated with the preview.': 'Mit dieser Vorschau ist kein Artikel verknüpft.'\n'There are $1 articles associated with $2 that will be merged.': '$1 Artikel die mit $2 verknüpft sind werden zusammengeführt.'\n'The source article type ($1) does not have any articles.': 'Der Quellartikeltyp ($1) hat keine Artikel.'\n'Source Article Type': Quellartikeltyp\n'Preview of $1': 'Vorschau von $1'\n'Preview a sample of the merge configuration.': 'Vorschau auf eine beispielhafte Zusammenführungskonfiguration.'\nNOTHING: NICHTS\n'Merge failed.': 'Zusammenführen fehlgeschlagen.'\n'Merge configuration for merging $1 into $2.': 'Zusammenführungskonfiguration für das Zusammenführen von $1 nach $2.'\n'Merge Article Types: Step $1 of $2': 'Artikeltypen zusammenführen: Schritt $1 von $2'\n'Merge $1 into $2': '$1 nach $2 zusammenführen'\n'Destination Article Type': Zielartikeltyp\n'Delete the source article type ($1) when finished.': 'Quellartikeltyp ($1) nach Fertigstellung löschen.'\n'Cycle through your articles to verify that the merge configuration is correct.': 'Gehen Sie die Artikel durch um die korrekte Zusammenführungskonfiguration zu überprüfen.'\n'Clicking Merge will merge ($1) article(s).': 'Auf Zusammenführen klicken um ($1) Artikel zusammenzuführen.'\n'Cannot merge a $1 field ($2) into a $3 field ($4).': 'Ein $1 Feld ($2) kann nicht mit einem $3 Feld ($4) zusammengeführt werden.'\n'--None--': '--Keine--'\n'(Null merge warning.)': '(Warnung: Null Zusammenführung)'\n'(No merge warning.)': '(Warnung: keine Zusammenführung)'\n'(Duplicate warning.)': (Duplizierungswarnung)\n'(!) Do NOT merge $1': '(!) $1 NICHT zusammenführen'\n'$1 of $2': '$1 von $2'\nshow: anzeigen\nhide: verbergen\ndeactivate: deaktivieren\nactivate: aktivieren\n'You must enter a name for the type.': 'Sie müssen einen Typnamen eingeben.'\n'You must choose a language for the article type.': 'Sie müssen eine Sprache für den Artikeltyp wählen.'\n'You do not have the right to rename article types.': 'Keine Berechtigung Artikeltypen umzubenennen.'\n'You do not have the right to merge article types.': 'Keine Berechtigung Artikeltypen zusammenzuführen.'\n'The translation could not be added.': 'Die Übersetzung konnte nicht hinzugefügt werden.'\n'The article type $1 does not exist.': 'Der Artikeltyp $1 existiert nicht.'\n'Template Type Name': 'Templatetyp Name'\n'Show to Authors?': 'Autoren anzeigen?'\n'Show article on section page': 'Artikel in der Rubrik anzeigen'\n'Show article on front page': 'Artikel auf der Startseite anzeigen'\n'Publish date': Veröffentlichungsdatum\nMerge!: Zusammenführen!\n'Merge types': 'Artikeltypen zusammenführen'\n'Merge article type': 'Artikeltypen zusammenführen'\n'Link to public page': 'Mit öffentlicher Seite verlinken'\n'Go to Step 3': 'Zu Schritt 3 gehen'\n'Go to Step 2': 'Zu Schritt 2 gehen'\n'Display Name': Anzeigename\n'Delete article type $1.': 'Artikeltyp $1 löschen.'\n'Comments Enabled?': 'Kommentare aktiviert?'\n'Back to Step 2': 'Zurück zu Schritt 2'\n'Back to Step 1': 'Zurück zu Schritt 1'\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': 'Wirklich Artikeltyp $1 löschen? WARNUNG: Wenn dieser Artikeltyp gelöscht wird, werden alle verknüpften Artikel ebenfalls gelöscht.'\n'Are you sure you want to $1 the article type $2?': 'Wirklich den Artikeltyp $2 $1?'\n'Are you sure you want to $1 comments for article type $2?': 'Wirklich Kommentare für Artikeltyp $2 $1?'\n'Allow users without subscriptions to view the article': 'Usern ohne Abonnement erlauben den Artikel zu sehen.'\n'Add translation:': 'Übersetzung hinzufügen:'\n'$1 comments for article type $2': '$1 Kommentare für Artikeltyp $2'\n'$1 comments for article type $1': '$1 Kommentare für Artikeltyp $1'\n'$1 article type $2': 'Artikeltyp $2 $1'\n'No article types.': 'Keine Artikeltypen'\n'Delete article type $1': 'Artikeltyp $1 löschen'\n'You do not have the right to add article types.': 'Keine Berechtigung Artikeltypen hinzuzufügen.'\n'Adding new article type': 'Neuer Artikeltyp wird hinzugefügt'\n'The $1 field may only contain letters and underscore (_) character.': 'Das $1 Feld darf nur Buchstaben und den Unterstrich (_) enthalten.'\n'The article type $1 already exists.': 'Artikeltyp $1 existiert bereits.'\n'You do not have the right to delete article types.': 'Keine Berechtigung Artikeltypen zu löschen.'\n'The article type $1 could not be deleted.': 'Artikeltyp $1 konnte nicht gelöscht werden.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.de_AT.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': 'Verberge von Menschen lesbare Feldnamen'\n'Edit and translate human-readable field names': 'Bearbeite und übersetze von Menschen lesbare Feldnamen'\n'The template name may only contain letters and the underscore (_) character.': 'Der Templatename darf nur Buchstaben und den Unterstrich (_) enthalten.'\n'Rename article type $1': 'Artikeltyp $1 umbenennen'\n'Invalid article type $1.': 'Ungültiger Artikeltyp $1.'\n'You cannot merge the same type into itself.': 'Gleiche Typen können nicht zusammengeführt werden.'\n'View the source ($1) version of $2': 'Quelle ($1) Version von $2 betrachten'\n'View of original ($1) $2': 'Original ($1) $2 betrachten'\n'To return to the preview click here': 'Um zur Vorschau zurückzukehren hier klicken.'\n'This is the first translation of $1': 'Dies ist die Übersetzung von $1.'\n'There is no article associated with the preview.': 'Mit dieser Vorschau ist kein Artikel verknüpft.'\n'There are $1 articles associated with $2 that will be merged.': '$1 Artikel die mit $2 verknüpft sind werden zusammengeführt.'\n'The source article type ($1) does not have any articles.': 'Der Quellartikeltyp ($1) hat keine Artikel.'\n'Source Article Type': Quellartikeltyp\n'Preview of $1': 'Vorschau von $1'\n'Preview a sample of the merge configuration.': 'Vorschau auf eine beispielhafte Zusammenführungskonfiguration.'\nNOTHING: NICHTS\n'Merge failed.': 'Zusammenführen fehlgeschlagen.'\n'Merge configuration for merging $1 into $2.': 'Zusammenführungskonfiguration für das Zusammenführen von $1 nach $2.'\n'Merge Article Types: Step $1 of $2': 'Artikeltypen zusammenführen: Schritt $1 von $2'\n'Merge $1 into $2': '$1 nach $2 zusammenführen'\n'Destination Article Type': Zielartikeltyp\n'Delete the source article type ($1) when finished.': 'Quellartikeltyp ($1) nach Fertigstellung löschen.'\n'Cycle through your articles to verify that the merge configuration is correct.': 'Gehen Sie die Artikel durch um die korrekte Zusammenführungskonfiguration zu überprüfen.'\n'Clicking Merge will merge ($1) article(s).': 'Auf Zusammenführen klicken um ($1) Artikel zusammenzuführen.'\n'Cannot merge a $1 field ($2) into a $3 field ($4).': 'Ein $1 Feld ($2) kann nicht mit einem $3 Feld ($4) zusammengeführt werden.'\n'--None--': '--Keine--'\n'(Null merge warning.)': '(Warnung: Null Zusammenführung)'\n'(No merge warning.)': '(Warnung: keine Zusammenführung)'\n'(Duplicate warning.)': (Duplizierungswarnung)\n'(!) Do NOT merge $1': '(!) $1 NICHT zusammenführen'\n'$1 of $2': '$1 von $2'\nshow: anzeigen\nhide: verbergen\ndeactivate: deaktivieren\nactivate: aktivieren\n'You must enter a name for the type.': 'Sie müssen einen Typnamen eingeben.'\n'You must choose a language for the article type.': 'Sie müssen eine Sprache für den Artikeltyp wählen.'\n'You do not have the right to rename article types.': 'Keine Berechtigung Artikeltypen umzubenennen.'\n'You do not have the right to merge article types.': 'Keine Berechtigung Artikeltypen zusammenzuführen.'\n'The translation could not be added.': 'Die Übersetzung konnte nicht hinzugefügt werden.'\n'The article type $1 does not exist.': 'Der Artikeltyp $1 existiert nicht.'\n'Template Type Name': 'Templatetyp Name'\n'Show to Authors?': null\n'Show article on section page': 'Artikel in der Rubrik anzeigen'\n'Show article on front page': 'Artikel auf der Startseite anzeigen'\n'Publish date': Veröffentlichungsdatum\nMerge!: Zusammenführen!\n'Merge types': 'Artikeltypen zusammenführen'\n'Merge article type': 'Artikeltypen zusammenführen'\n'Link to public page': 'Mit öffentlicher Seite verlinken'\n'Go to Step 3': 'Zu Schritt 3 gehen'\n'Go to Step 2': 'Zu Schritt 2 gehen'\n'Display Name': Anzeigename\n'Delete article type $1.': 'Artikeltyp $1 löschen.'\n'Comments Enabled?': null\n'Back to Step 2': 'Zurück zu Schritt 2'\n'Back to Step 1': 'Zurück zu Schritt 1'\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': 'Wirklich Artikeltyp $1 löschen? WARNUNG: Wenn dieser Artikeltyp gelöscht wird, werden alle verknüpften Artikel ebenfalls gelöscht.'\n'Are you sure you want to $1 the article type $2?': 'Wirklich den Artikeltyp $2 $1?'\n'Are you sure you want to $1 comments for article type $2?': 'Wirklich Kommentare für Artikeltyp $2 $1?'\n'Allow users without subscriptions to view the article': 'Usern ohne Abonnement erlauben den Artikel zu sehen.'\n'Add translation:': 'Übersetzung hinzufügen:'\n'$1 comments for article type $2': '$1 Kommentare für Artikeltyp $2'\n'$1 comments for article type $1': '$1 Kommentare für Artikeltyp $1'\n'$1 article type $2': 'Artikeltyp $2 $1'\n'No article types.': 'Keine Artikeltypen'\n'Delete article type $1': 'Artikeltyp $1 löschen'\n'You do not have the right to add article types.': 'Keine Berechtigung Artikeltypen hinzuzufügen.'\n'Adding new article type': 'Neuer Artikeltyp wird hinzugefügt'\n'The $1 field may only contain letters and underscore (_) character.': 'Das $1 Feld darf nur Buchstaben und den Unterstrich (_) enthalten.'\n'The article type $1 already exists.': 'Artikeltyp $1 existiert bereits.'\n'You do not have the right to delete article types.': 'Keine Berechtigung Artikeltypen zu löschen.'\n'The article type $1 could not be deleted.': 'Artikeltyp $1 konnte nicht gelöscht werden.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.el.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': 'Απόκρυψη ανθρωπίνως αναγνώσιμων ονομάτων πεδίων'\n'Edit and translate human-readable field names': 'Επεξεργασία και μετάφραση ανθρωπίνως αναγνώσιμων ονομάτων πεδίων'\n'The template name may only contain letters and the underscore (_) character.': 'Το όνομα προτύπου μπορεί να περιλαμβάνει μόνο γράμματα και τον χαρακτήρα υπογραμμισης (_).'\n'Rename article type $1': 'Μετονομασία τύπου άρθρου $1'\n'Invalid article type $1.': 'Μη έγκυρος τύπος άρθρου$1.'\n'You cannot merge the same type into itself.': 'Δεν μπορείτε να συγχωνεύσετε τον ίδιο τύπο στον εαυτό του.'\n'View the source ($1) version of $2': 'Προβολή πηγής ($1) εκδοχή του $2'\n'View of original ($1) $2': 'Προβολή αυθεντικού ($1) $2'\n'To return to the preview click here': 'Για να επιστρέψετε στο προηγούμενο, κάντε κλίκ εδώ'\n'This is the first translation of $1': 'Αυτή είναι η πρώτη μετάφραση του $1'\n'There is no article associated with the preview.': 'Δεν υπάρχει άρθρο που να σχετίζεται με το προηγούμενο.'\n'There are $1 articles associated with $2 that will be merged.': 'Υπάρχουν $1 άρθρα σχετιζόμενα με $2 που θα συγχωνευτούν.'\n'The source article type ($1) does not have any articles.': 'Ο τύπος πηγαίου άρθρου ($1) δεν έχει κανένα άρθρο.'\n'Source Article Type': 'Τύπος Πηγαίου  Άρθρου'\n'Preview of $1': 'Προεπισκόπιση του $1'\n'Preview a sample of the merge configuration.': 'Προεπισκόπιση δείγματος της διαμόρφωσης της συγχώνευσης.'\nNOTHING: ΤΙΠΟΤΑ\n'Merge failed.': 'Η συγχώνευση απέτυχε.'\n'Merge configuration for merging $1 into $2.': 'Διαμόρφωση συγχώνευσης για τη συγχώνευση $1 σε $2.'\n'Merge Article Types: Step $1 of $2': 'Συγχώνευση Τύπων Άρθρου: Βήμα $1 από $2'\n'Merge $1 into $2': 'Συγχώνευση $1 σε $2'\n'Destination Article Type': 'Προορισμός Τύπου Άρθρου'\n'Delete the source article type ($1) when finished.': 'Διαγραφή του τύπου πηγαίου άρθρου ($1) όταν ολοκληρωθεί.'\n'Cycle through your articles to verify that the merge configuration is correct.': 'Περιηγηθείτε στα άρθρα σας για να επιβεβαιώστε ότι η διαμόρφωση συγχώνευσης είναι σωστή.'\n'Clicking Merge will merge ($1) article(s).': 'Κάνοντας κλίκ στη Συγχώνευση θα συγχωνευτούν άρθρα ($1).'\n'Cannot merge a $1 field ($2) into a $3 field ($4).': 'Είναι αδύνατον να συγχωνευτεί ένα $1 αρχείο ($2) σε ένα $3 αρχείο ($4).'\n'--None--': '--Κανένα--'\n'(Null merge warning.)': '(Προειδοποίηση μηδενικής συγχώνευσης)'\n'(No merge warning.)': '(Καμία προειδοποίηση συγχώνευσης.)'\n'(Duplicate warning.)': '(Αντιγραφή προειδοποίησης.)'\n'(!) Do NOT merge $1': '(!)Να ΜΗΝ γίνει συγχώνευση $1'\n'$1 of $2': '$1 από $2'\nshow: εμφάνιση\nhide: απόκρυψη\ndeactivate: απενεργοποίηση\nactivate: ενεργοποίηση\n'You must enter a name for the type.': 'Πρέπει να εισάγετε ένα όνομα για τον τύπο.'\n'You must choose a language for the article type.': 'Πρέπει να επιλέξετε μια γλώσσα για τον τύπου του άρθρου.'\n'You do not have the right to rename article types.': 'Δεν έχετε το δικαίωμα να μετονομάσετε τύπους άρθρων.'\n'You do not have the right to merge article types.': 'Δεν έχετε το δικαίωμα να συγχωνεύσετε τύπους άρθρων.'\n'The translation could not be added.': 'Η μετάφραση δεν μπόρεσε να προστεθεί.'\n'The article type $1 does not exist.': 'Ο τύπος άρθρου $1 δεν υπάρχει.'\n'Template Type Name': 'Όνομα Τύπου Προτύπου'\n'Show to Authors?': null\n'Show article on section page': 'Εμφάνιση άρθρου στην σελίδα ενότητας'\n'Show article on front page': 'Εμφάνιση άρθρου στην αρχική σελίδα'\n'Publish date': 'Δημοσίευση ημερομηνίας'\nMerge!: Συγχώνευση!\n'Merge types': 'Τύποι συγχώνευσης'\n'Merge article type': 'Συγχώνευση τύπου άρθρου'\n'Link to public page': 'Σύνδεση σε δημόσια σελίδα'\n'Go to Step 3': 'Πήγαινε στο Βήμα 3'\n'Go to Step 2': 'Πήγαινε στο Βήμα 2'\n'Display Name': 'Εμφανιζόμενο Όνομα'\n'Delete article type $1.': 'Διαγραφή τύπου άρθρου $1.'\n'Comments Enabled?': null\n'Back to Step 2': 'Πίσω στο Βήμα 2'\n'Back to Step 1': 'Πίσω στο Βήμα 1'\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': 'Είστε σίγουρος/η ότι θέλετε να διαγράψετε τον τύπο άρθρου $1; ΠΡΟΣΟΧΗ: Με την διαγραφή του συγκεκριμένου τύπου άρθρου, θα διαγραφούν και όλα τα σχετιζόμενα με αυτόν άρθρα.'\n'Are you sure you want to $1 the article type $2?': 'Είστε σίγουρος/η ότι θέλετε να $1 τον τύπο άρθρου $2;'\n'Are you sure you want to $1 comments for article type $2?': 'Είστε σίγουρος/η ότι θέλετε να $1 σχόλια για τον τύπο άρθρου $2;'\n'Allow users without subscriptions to view the article': 'Επιτρέπει στους χρήστες χωρίς συνδρομή να δούν το άρθρο'\n'Add translation:': 'Προσθήκη μετάφρασης:'\n'$1 comments for article type $2': '$1 σχόλια για τον τύπο άρθρου $2'\n'$1 comments for article type $1': '$1 σχόλια για τον τύπο άρθρου $1'\n'$1 article type $2': '$1 τύπος άρθρου $2'\n'No article types.': 'Κανένας τύπος άρθρου.'\n'Delete article type $1': 'Διαγραφή τύπου άρθρου $1'\n'You do not have the right to add article types.': 'Δεν έχετε το δικαίωμα να προσθέσετε τύπους άρθρων.'\n'Adding new article type': 'Προσθήκη νέου τύπου άρθρου'\n'The $1 field may only contain letters and underscore (_) character.': 'Το πεδίο $1 μπορεί να περιέχει μόνο γράμματα και τον χαρακτήρα υπογράμμισης (_).'\n'The article type $1 already exists.': 'Ο τύπος άρθρου $1 ήδη υπάρχει.'\n'You do not have the right to delete article types.': 'Δεν έχετε το δικαίωμα διαγραφής τύπων άρθρου.'\n'The article type $1 could not be deleted.': 'Ο τύπος άρθρου $1 δεν ήταν δυνατόν να διαγραφεί.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.en.yml",
    "content": "list: list\nfilter: filter\n'Show in Article Lists?': 'Show in Article Lists?'\n'Are you sure you want to $1 articles of article type $2?': 'Are you sure you want to $1 articles of article type $2?'\n'$1 articles of article type $2': '$1 articles of article type $2'\n'Hide human-readable field names': 'Hide human-readable field names'\n'Edit and translate human-readable field names': 'Edit and translate human-readable field names'\n'The template name may only contain letters and the underscore (_) character.': 'The template name may only contain letters and the underscore (_) character.'\n'Rename article type $1': 'Rename article type $1'\n'Invalid article type $1.': 'Invalid article type $1.'\n'You cannot merge the same type into itself.': 'You cannot merge the same type into itself.'\n'View the source ($1) version of $2': 'View the source ($1) version of $2'\n'View of original ($1) $2': 'View of original ($1) $2'\n'To return to the preview click here': 'To return to the preview click here'\n'This is the first translation of $1': 'This is the first translation of $1'\n'There is no article associated with the preview.': 'There is no article associated with the preview.'\n'There are $1 articles associated with $2 that will be merged.': 'There are $1 articles associated with $2 that will be merged.'\n'The source article type ($1) does not have any articles.': 'The source article type ($1) does not have any articles.'\n'Source Article Type': 'Source Article Type'\n'Preview of $1': 'Preview of $1'\n'Preview a sample of the merge configuration.': 'Preview a sample of the merge configuration.'\nNOTHING: NOTHING\n'Merge failed.': 'Merge failed.'\n'Merge configuration for merging $1 into $2.': 'Merge configuration for merging $1 into $2.'\n'Merge Article Types: Step $1 of $2': 'Merge Article Types: Step $1 of $2'\n'Merge $1 into $2': 'Merge $1 into $2'\n'Destination Article Type': 'Destination Article Type'\n'Delete the source article type ($1) when finished.': 'Delete the source article type ($1) when finished.'\n'Cycle through your articles to verify that the merge configuration is correct.': 'Cycle through your articles to verify that the merge configuration is correct.'\n'Clicking Merge will merge ($1) article(s).': 'Clicking Merge will merge ($1) article(s).'\n'Cannot merge a $1 field ($2) into a $3 field ($4).': 'Cannot merge a $1 field ($2) into a $3 field ($4).'\n--None--: --None--\n'(Null merge warning.)': '(Null merge warning.)'\n'(No merge warning.)': '(No merge warning.)'\n'(Duplicate warning.)': '(Duplicate warning.)'\n'(!) Do NOT merge $1': '(!) Do NOT merge $1'\n'$1 of $2': '$1 of $2'\nshow: show\nhide: hide\ndeactivate: deactivate\nactivate: activate\n'You must enter a name for the type.': 'You must enter a name for the type.'\n'You must choose a language for the article type.': 'You must choose a language for the article type.'\n'You do not have the right to rename article types.': 'You do not have the right to rename article types.'\n'You do not have the right to merge article types.': 'You do not have the right to merge article types.'\n'The translation could not be added.': 'The translation could not be added.'\n'The article type $1 does not exist.': 'The article type $1 does not exist.'\n'Template Type Name': 'Template Type Name'\n'Show to Authors?': 'Show to Authors?'\n'Show article on section page': 'Show article on section page'\n'Show article on front page': 'Show article on front page'\n'Publish date': 'Publish date'\nMerge!: Merge!\n'Merge types': 'Merge types'\n'Merge article type': 'Merge article type'\n'Link to public page': 'Link to public page'\n'Go to Step 3': 'Go to Step 3'\n'Go to Step 2': 'Go to Step 2'\n'Display Name': 'Display Name'\n'Delete article type $1.': 'Delete article type $1.'\n'Comments Enabled?': 'Comments Enabled?'\n'Back to Step 2': 'Back to Step 2'\n'Back to Step 1': 'Back to Step 1'\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': 'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.'\n'Are you sure you want to $1 the article type $2?': 'Are you sure you want to $1 the article type $2?'\n'Are you sure you want to $1 comments for article type $2?': 'Are you sure you want to $1 comments for article type $2?'\n'Allow users without subscriptions to view the article': 'Allow users without subscriptions to view the article'\n'Add translation:': 'Add translation:'\n'$1 comments for article type $2': '$1 comments for article type $2'\n'$1 comments for article type $1': '$1 comments for article type $1'\n'$1 article type $2': '$1 article type $2'\n'No article types.': 'No article types.'\n'Delete article type $1': 'Delete article type $1'\n'You do not have the right to add article types.': 'You do not have the right to add article types.'\n'Adding new article type': 'Adding new article type'\n'The $1 field may only contain letters and underscore (_) character.': 'The $1 field may only contain letters and underscore (_) character.'\n'The article type $1 already exists.': 'The article type $1 already exists.'\n'You do not have the right to delete article types.': 'You do not have the right to delete article types.'\n'The article type $1 could not be deleted.': 'The article type $1 could not be deleted.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.en.yml~",
    "content": "list: list\nfilter: filter\n'In Lists?': 'In Lists?'\n'Are you sure you want to $1 articles of article type $2?': 'Are you sure you want to $1 articles of article type $2?'\n'$1 articles of article type $2': '$1 articles of article type $2'\n'Hide human-readable field names': 'Hide human-readable field names'\n'Edit and translate human-readable field names': 'Edit and translate human-readable field names'\n'The template name may only contain letters and the underscore (_) character.': 'The template name may only contain letters and the underscore (_) character.'\n'Rename article type $1': 'Rename article type $1'\n'Invalid article type $1.': 'Invalid article type $1.'\n'You cannot merge the same type into itself.': 'You cannot merge the same type into itself.'\n'View the source ($1) version of $2': 'View the source ($1) version of $2'\n'View of original ($1) $2': 'View of original ($1) $2'\n'To return to the preview click here': 'To return to the preview click here'\n'This is the first translation of $1': 'This is the first translation of $1'\n'There is no article associated with the preview.': 'There is no article associated with the preview.'\n'There are $1 articles associated with $2 that will be merged.': 'There are $1 articles associated with $2 that will be merged.'\n'The source article type ($1) does not have any articles.': 'The source article type ($1) does not have any articles.'\n'Source Article Type': 'Source Article Type'\n'Preview of $1': 'Preview of $1'\n'Preview a sample of the merge configuration.': 'Preview a sample of the merge configuration.'\nNOTHING: NOTHING\n'Merge failed.': 'Merge failed.'\n'Merge configuration for merging $1 into $2.': 'Merge configuration for merging $1 into $2.'\n'Merge Article Types: Step $1 of $2': 'Merge Article Types: Step $1 of $2'\n'Merge $1 into $2': 'Merge $1 into $2'\n'Destination Article Type': 'Destination Article Type'\n'Delete the source article type ($1) when finished.': 'Delete the source article type ($1) when finished.'\n'Cycle through your articles to verify that the merge configuration is correct.': 'Cycle through your articles to verify that the merge configuration is correct.'\n'Clicking ': 'Clicking '\n'Cannot merge a $1 field ($2) into a $3 field ($4).': 'Cannot merge a $1 field ($2) into a $3 field ($4).'\n--None--: --None--\n'(Null merge warning.)': '(Null merge warning.)'\n'(No merge warning.)': '(No merge warning.)'\n'(Duplicate warning.)': '(Duplicate warning.)'\n'(!) Do NOT merge $1': '(!) Do NOT merge $1'\n'$1 of $2': '$1 of $2'\nshow: show\nhide: hide\ndeactivate: deactivate\nactivate: activate\n'You must enter a name for the type.': 'You must enter a name for the type.'\n'You must choose a language for the article type.': 'You must choose a language for the article type.'\n'You do not have the right to rename article types.': 'You do not have the right to rename article types.'\n'You do not have the right to merge article types.': 'You do not have the right to merge article types.'\n'The translation could not be added.': 'The translation could not be added.'\n'The article type $1 does not exist.': 'The article type $1 does not exist.'\n'Template Type Name': 'Template Type Name'\nShow/Hide: Show/Hide\n'Show article on section page': 'Show article on section page'\n'Show article on front page': 'Show article on front page'\n'Publish date': 'Publish date'\nMerge!: Merge!\n'Merge types': 'Merge types'\n'Merge article type': 'Merge article type'\n'Link to public page': 'Link to public page'\n'Go to Step 3': 'Go to Step 3'\n'Go to Step 2': 'Go to Step 2'\n'Display Name': 'Display Name'\n'Delete article type $1.': 'Delete article type $1.'\n'Comments enabled?': 'Comments enabled?'\n'Back to Step 2': 'Back to Step 2'\n'Back to Step 1': 'Back to Step 1'\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': 'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.'\n'Are you sure you want to $1 the article type $2?': 'Are you sure you want to $1 the article type $2?'\n'Are you sure you want to $1 comments for article type $2?': 'Are you sure you want to $1 comments for article type $2?'\n'Allow users without subscriptions to view the article': 'Allow users without subscriptions to view the article'\n'Add translation:': 'Add translation:'\n'$1 comments for article type $2': '$1 comments for article type $2'\n'$1 comments for article type $1': '$1 comments for article type $1'\n'$1 article type $2': '$1 article type $2'\n'No article types.': 'No article types.'\n'Delete article type $1': 'Delete article type $1'\n'You do not have the right to add article types.': 'You do not have the right to add article types.'\n'Adding new article type': 'Adding new article type'\n'The $1 field may only contain letters and underscore (_) character.': 'The $1 field may only contain letters and underscore (_) character.'\n'The article type $1 already exists.': 'The article type $1 already exists.'\n'You do not have the right to delete article types.': 'You do not have the right to delete article types.'\n'The article type $1 could not be deleted.': 'The article type $1 could not be deleted.'\n'Small ($1 pixels)':\n'Medium ($1 pixels)':\n'Large ($1 pixels)':\n'Custom':\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.en_GB.yml",
    "content": "list: list\nfilter: filter\n'Show in Article Lists?': 'Show in Article Lists?'\n'Are you sure you want to $1 articles of article type $2?': 'Are you sure you want to $1 articles of article type $2?'\n'$1 articles of article type $2': '$1 articles of article type $2'\n'Hide human-readable field names': 'Hide human-readable field names'\n'Edit and translate human-readable field names': 'Edit and translate human-readable field names'\n'The template name may only contain letters and the underscore (_) character.': 'The template name may only contain letters and the underscore (_) character.'\n'Rename article type $1': 'Rename article type $1'\n'Invalid article type $1.': 'Invalid article type $1.'\n'You cannot merge the same type into itself.': 'You cannot merge the same type into itself.'\n'View the source ($1) version of $2': 'View the source ($1) version of $2'\n'View of original ($1) $2': 'View of original ($1) $2'\n'To return to the preview click here': 'To return to the preview click here'\n'This is the first translation of $1': 'This is the first translation of $1'\n'There is no article associated with the preview.': 'There is no article associated with the preview.'\n'There are $1 articles associated with $2 that will be merged.': 'There are $1 articles associated with $2 that will be merged.'\n'The source article type ($1) does not have any articles.': 'The source article type ($1) does not have any articles.'\n'Source Article Type': 'Source Article Type'\n'Preview of $1': 'Preview of $1'\n'Preview a sample of the merge configuration.': 'Preview a sample of the merge configuration.'\nNOTHING: NOTHING\n'Merge failed.': 'Merge failed.'\n'Merge configuration for merging $1 into $2.': 'Merge configuration for merging $1 into $2.'\n'Merge Article Types: Step $1 of $2': 'Merge Article Types: Step $1 of $2'\n'Merge $1 into $2': 'Merge $1 into $2'\n'Destination Article Type': 'Destination Article Type'\n'Delete the source article type ($1) when finished.': 'Delete the source article type ($1) when finished.'\n'Cycle through your articles to verify that the merge configuration is correct.': 'Cycle through your articles to verify that the merge configuration is correct.'\n'Clicking Merge will merge ($1) article(s).': 'Clicking Merge will merge ($1) article(s).'\n'Cannot merge a $1 field ($2) into a $3 field ($4).': 'Cannot merge a $1 field ($2) into a $3 field ($4).'\n'--None--': '--None--'\n'(Null merge warning.)': '(Null merge warning.)'\n'(No merge warning.)': '(No merge warning.)'\n'(Duplicate warning.)': '(Duplicate warning.)'\n'(!) Do NOT merge $1': '(!) Do NOT merge $1'\n'$1 of $2': '$1 of $2'\nshow: show\nhide: hide\ndeactivate: deactivate\nactivate: activate\n'You must enter a name for the type.': 'You must enter a name for the type.'\n'You must choose a language for the article type.': 'You must choose a language for the article type.'\n'You do not have the right to rename article types.': 'You do not have the right to rename article types.'\n'You do not have the right to merge article types.': 'You do not have the right to merge article types.'\n'The translation could not be added.': 'The translation could not be added.'\n'The article type $1 does not exist.': 'The article type $1 does not exist.'\n'Template Type Name': 'Template Type Name'\n'Show to Authors?': 'Show to Authors?'\n'Show article on section page': 'Show article on section page'\n'Show article on front page': 'Show article on front page'\n'Publish date': 'Publish date'\nMerge!: Merge!\n'Merge types': 'Merge types'\n'Merge article type': 'Merge article type'\n'Link to public page': 'Link to public page'\n'Go to Step 3': 'Go to Step 3'\n'Go to Step 2': 'Go to Step 2'\n'Display Name': 'Display Name'\n'Delete article type $1.': 'Delete article type $1.'\n'Comments Enabled?': 'Comments Enabled?'\n'Back to Step 2': 'Back to Step 2'\n'Back to Step 1': 'Back to Step 1'\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': 'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.'\n'Are you sure you want to $1 the article type $2?': 'Are you sure you want to $1 the article type $2?'\n'Are you sure you want to $1 comments for article type $2?': 'Are you sure you want to $1 comments for article type $2?'\n'Allow users without subscriptions to view the article': 'Allow users without subscriptions to view the article'\n'Add translation:': 'Add translation:'\n'$1 comments for article type $2': '$1 comments for article type $2'\n'$1 comments for article type $1': '$1 comments for article type $1'\n'$1 article type $2': '$1 article type $2'\n'No article types.': 'No article types.'\n'Delete article type $1': 'Delete article type $1'\n'You do not have the right to add article types.': 'You do not have the right to add article types.'\n'Adding new article type': 'Adding new article type'\n'The $1 field may only contain letters and underscore (_) character.': 'The $1 field may only contain letters and underscore (_) character.'\n'The article type $1 already exists.': 'The article type $1 already exists.'\n'You do not have the right to delete article types.': 'You do not have the right to delete article types.'\n'The article type $1 could not be deleted.': 'The article type $1 could not be deleted.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.es.yml",
    "content": "list: lista\nfilter: filtro\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': '¿Está seguro de querer $1 los artículos del tipo $2?'\n'$1 articles of article type $2': '$1 artículos del tipo $2'\n'Hide human-readable field names': 'Ocultar nombres de campo legibles.'\n'Edit and translate human-readable field names': 'Editar y traducir nombres de campo legibles.'\n'The template name may only contain letters and the underscore (_) character.': 'El nombre de la plantilla solo puede contener letras y el caracter de guión bajo (_).'\n'Rename article type $1': 'Renombrar artículo tipo $1'\n'Invalid article type $1.': 'El tipo de artículo $1 es inválido.'\n'You cannot merge the same type into itself.': 'No puede combinar el mismo tipo en sí mismo.'\n'View the source ($1) version of $2': 'Ver la versión de la fuente ($1) de $2'\n'View of original ($1) $2': 'Vista del original ($1) $2'\n'To return to the preview click here': 'Para regresar a la previsualización presione aquí'\n'This is the first translation of $1': 'Esta es la primera traducción de $1'\n'There is no article associated with the preview.': 'No existen artículos asociados con esta previsualización.'\n'There are $1 articles associated with $2 that will be merged.': 'Hay $1 artículos asociados con $2 que serán combinados.'\n'The source article type ($1) does not have any articles.': 'La fuente del tipo de artículo (1$) no tiene ningún artículo.'\n'Source Article Type': 'Fuente de tipo artículo'\n'Preview of $1': 'Previsualización de $1'\n'Preview a sample of the merge configuration.': 'Previsualizar una muestra de la configuración combinada.'\nNOTHING: NADA\n'Merge failed.': 'La combinación falló.'\n'Merge configuration for merging $1 into $2.': 'Configuración para combinar $1 en $2.'\n'Merge Article Types: Step $1 of $2': 'Combinar los tipos de artículo: Paso $1 de $2'\n'Merge $1 into $2': 'Combinar $1 en $2'\n'Destination Article Type': 'Destino del tipo artículo'\n'Delete the source article type ($1) when finished.': 'Eliminar la fuente del tipo de artículo ($1) cuando finalice.'\n'Cycle through your articles to verify that the merge configuration is correct.': 'Circule entre sus artículos para verificar que la configuración de la combinación es correcta.'\n'Clicking Merge will merge ($1) article(s).': 'Si hace click en combinar se combinará el o los artículo(s) ($1).'\n'Cannot merge a $1 field ($2) into a $3 field ($4).': 'No es posible combinar un campo $1 ($2) en un campo $3 ($4).'\n'--None--': '--Ninguno--'\n'(Null merge warning.)': '(Advertencia de combinación nula.)'\n'(No merge warning.)': '(Sin advertencia de combinación.)'\n'(Duplicate warning.)': '(Duplicar advertencia.)'\n'(!) Do NOT merge $1': '(!) NO combine el $1'\n'$1 of $2': '$1 de $2'\nshow: mostrar\nhide: ocultar\ndeactivate: desactivar\nactivate: activar\n'You must enter a name for the type.': 'Debe ingresar un nombre para el tipo.'\n'You must choose a language for the article type.': 'Debe elegir un idioma para el tipo de artículo.'\n'You do not have the right to rename article types.': 'No tiene privilegios para renombrar los tipos de artículo.'\n'You do not have the right to merge article types.': 'No tiene privilegios para combinar tipos de artículo.'\n'The translation could not be added.': 'No se pudo agregar la traducción.'\n'The article type $1 does not exist.': 'El tipo de artículo $1 no existe.'\n'Template Type Name': 'Nombre del tipo de plantilla'\n'Show to Authors?': null\n'Show article on section page': 'Mostrar artículo en página de sección'\n'Show article on front page': 'Mostrar artículo en portada'\n'Publish date': 'Publicar fecha'\nMerge!: ¡Combinar!\n'Merge types': 'Combinar tipos'\n'Merge article type': 'Combinar tipo de artículo'\n'Link to public page': 'Vincular a página pública'\n'Go to Step 3': 'Ir a Paso 3'\n'Go to Step 2': 'Ir a Paso 2'\n'Display Name': 'Nombre a mostrar'\n'Delete article type $1.': 'Eliminar tipo de artículo $1'\n'Comments Enabled?': null\n'Back to Step 2': 'De vuelta al paso 2'\n'Back to Step 1': 'De vuelta al paso 1'\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': '¿Está seguro de que quiere eliminar el tipo de artículo $1? ADVERTENCIA:  eliminar este tipo de artículo eliminará todos los artículos asociados con este tipo de artículo'\n'Are you sure you want to $1 the article type $2?': '¿Está seguro de que desea $1 el tipo de artículo $2?'\n'Are you sure you want to $1 comments for article type $2?': '¿Está seguro de que desea $1 los comentarios para el tipo de artículo $2?'\n'Allow users without subscriptions to view the article': 'Mostrar el artículo a usuarios sin suscripción'\n'Add translation:': 'Agregar traducción:'\n'$1 comments for article type $2': '$1 comentario(s) para el tipo de artículo $2'\n'$1 comments for article type $1': '$1 comentario(s) para el tipo de artículo $1'\n'$1 article type $2': '$1 el tipo de artículo $2'\n'No article types.': 'Sin tipo de artículo'\n'Delete article type $1': 'Borrar tipo de artículo $1'\n'You do not have the right to add article types.': 'No tiene derecho a agregar tipos de artículo.'\n'Adding new article type': 'Añadir nuevo tipo de artículo'\n'The $1 field may only contain letters and underscore (_) character.': 'El campo $1 solo puede contener letras y el caracter de guión mayor (_).'\n'The article type $1 already exists.': 'El tipo de artículo $1 ya existe'\n'You do not have the right to delete article types.': 'No tiene autorización para eliminar tipos de artículo.'\n'The article type $1 could not be deleted.': 'El tipo de artículo $1 no pudo ser eliminado'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.es_AR.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': null\n'Show article on front page': null\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': null\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': null\n'Delete article type $1': null\n'You do not have the right to add article types.': null\n'Adding new article type': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'The article type $1 already exists.': null\n'You do not have the right to delete article types.': null\n'The article type $1 could not be deleted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.fa.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': null\n'Show article on front page': null\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': null\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': null\n'Delete article type $1': null\n'You do not have the right to add article types.': null\n'Adding new article type': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'The article type $1 already exists.': null\n'You do not have the right to delete article types.': null\n'The article type $1 could not be deleted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.fa_AF.yml",
    "content": "list: null\nfilter: null\n'In Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\nShow/Hide: null\n'Show article on section page': null\n'Show article on front page': null\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': null\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': null\n'Delete article type $1': null\n'You do not have the right to add article types.': null\n'Adding new article type': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'The article type $1 already exists.': null\n'You do not have the right to delete article types.': null\n'The article type $1 could not be deleted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.fr.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': 'Afficher larticle dans la page de section'\n'Show article on front page': 'Afficher larticle en première page'\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': 'Ajouter traduction:'\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': 'Aucun type darticles.'\n'Delete article type $1': 'Supprimer type darticle $1'\n'You do not have the right to add article types.': 'Vous navez pas le droit dajouter des types darticles.'\n'Adding new article type': 'Ajout nouveau type darticle'\n'The $1 field may only contain letters and underscore (_) character.': 'Le champ $1 peut seulement contenir des lettres et le caractère souligné (_).'\n'The article type $1 already exists.': 'Le type darticle $1 existe déjà.'\n'You do not have the right to delete article types.': 'Vous navez pas le droit de supprimer des types darticle.'\n'The article type $1 could not be deleted.': 'Le type darticle $1 ne pouvait pas être supprimé.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.he.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': null\n'Show article on front page': null\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': null\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': null\n'Delete article type $1': null\n'You do not have the right to add article types.': null\n'Adding new article type': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'The article type $1 already exists.': null\n'You do not have the right to delete article types.': null\n'The article type $1 could not be deleted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.hr.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': 'Prikaži članak na stranici rubrike'\n'Show article on front page': 'Prikaži članak na naslovnici'\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': 'Dodaj prijevod:'\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': 'Nema tipova članaka.'\n'Delete article type $1': 'Izbriši tip članka $1'\n'You do not have the right to add article types.': 'Nemate ovlasti dodavati tipove članaka.'\n'Adding new article type': 'Dodavanje novog tipa članka'\n'The $1 field may only contain letters and underscore (_) character.': 'Polje $1 može imati samo slova i znak podvlake (_).'\n'The article type $1 already exists.': 'Tip članka $1 već postoji.'\n'You do not have the right to delete article types.': 'Nemate ovlasti brisati tipove članaka.'\n'The article type $1 could not be deleted.': 'Tip članka $1 ne može se obrisati.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.hu.yml",
    "content": "list: lista\nfilter: szűrő\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': 'Biztosan $1 akarod a/z $2 cikktípusú cikkeket?'\n'$1 articles of article type $2': '$1 cikkei a/z $2 cikktípusnak'\n'Hide human-readable field names': 'Az ember által olvasható mezőnevek elrejtése'\n'Edit and translate human-readable field names': 'Az ember által olvasható mezőnevek szerkesztése és fordítása'\n'The template name may only contain letters and the underscore (_) character.': 'A sablonnév csak betűket és aláhúzásjelet (_) tartalmazhat.'\n'Rename article type $1': 'A/z $1 cikktípus átnevezése'\n'Invalid article type $1.': 'Érvénytelen $1 cikktípus.'\n'You cannot merge the same type into itself.': 'Az azonos típusok nem egyesíthetők.'\n'View the source ($1) version of $2': 'Forrásverzió ($1) megtekintése, $2'\n'View of original ($1) $2': 'Az eredeti ($1) $2 megtekintése'\n'To return to the preview click here': 'Kattints ide az előnézethez való visszatéréshez'\n'This is the first translation of $1': 'Ez a/z $1 első fordítása'\n'There is no article associated with the preview.': 'Nincs az előnézethez társított cikk.'\n'There are $1 articles associated with $2 that will be merged.': '$1 cikk van a/z $2 típushoz társítva, melyek egyesítésre fognak kerülni.'\n'The source article type ($1) does not have any articles.': 'A forrás cikktípusnak ($1) nincs semmilyen cikke.'\n'Source Article Type': 'Forrás cikktípus'\n'Preview of $1': '$1 előnézete'\n'Preview a sample of the merge configuration.': 'A konfigurációegyesítés mintájának előnézete.'\nNOTHING: SEMMI\n'Merge failed.': 'Az egyesítés nem sikerült.'\n'Merge configuration for merging $1 into $2.': 'Konfigurációegyesítés a/z $1 egyesítéséhez a következővel: $2.'\n'Merge Article Types: Step $1 of $2': 'Cikktípusok egyesítése: $1. lépés / $2'\n'Merge $1 into $2': 'A/z $1 egyesítése a következővel: $2'\n'Destination Article Type': 'Cél cikktípus'\n'Delete the source article type ($1) when finished.': 'A forrás cikktípus ($1) törlése befejezéskor.'\n'Cycle through your articles to verify that the merge configuration is correct.': 'A cikkek közti lépkedéssel ellenőrizd, hogy megfelelő-e a konfigurációegyesítés.'\n'Clicking Merge will merge ($1) article(s).': 'Az Egyesítés gombra kattintás cikk(ek)et ($1) fog egyesíteni.'\n'Cannot merge a $1 field ($2) into a $3 field ($4).': 'Egy $1 mező ($2) nem egyesíthető egy $3 mezővel ($4).'\n'--None--': '--Nincs--'\n'(Null merge warning.)': '(Nulla egyesítési figyelmeztetés.)'\n'(No merge warning.)': '(Nincs egyesítési figyelmeztetés.)'\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': '(!) NE egyesítse a következőt: $1'\n'$1 of $2': '$1 / $2'\nshow: megjelenítés\nhide: elrejtés\ndeactivate: inaktiválás\nactivate: aktiválás\n'You must enter a name for the type.': 'Meg kell adnod a típus nevét.'\n'You must choose a language for the article type.': 'Ki kell választanod a cikktípus nyelvét.'\n'You do not have the right to rename article types.': 'Nincs jogod a cikktípusok átnevezéséhez..'\n'You do not have the right to merge article types.': 'Nincs jogod a cikktípusok egyesítéséhez.'\n'The translation could not be added.': 'Nem lehetett hozzáadni a fordítást.'\n'The article type $1 does not exist.': 'A/z $1 cikktípus nem létezik.'\n'Template Type Name': 'Sablontípus neve'\n'Show to Authors?': null\n'Show article on section page': 'A cikk megjelenítése a rovatlapon'\n'Show article on front page': 'A cikk megjelenítése a címlapon'\n'Publish date': 'Közzététel dátuma'\nMerge!: Egyesítsd!\n'Merge types': 'Típusok egyesítése'\n'Merge article type': 'Cikktípus egyesítése'\n'Link to public page': 'Hivatkozás a nyilvános lapra'\n'Go to Step 3': 'Ugrás a 3. lépésre'\n'Go to Step 2': 'Ugrás a 2. lépésre'\n'Display Name': 'Megjelenítendő név'\n'Delete article type $1.': 'A/z $1 cikktípus törlése.'\n'Comments Enabled?': null\n'Back to Step 2': 'Vissza a 2. lépésre'\n'Back to Step 1': 'Vissza az 1. lépésre'\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': 'Biztosan törölni akarod a/z $1 cikktípust? FIGYELMEZTETÉS: A cikktípus törlése az ehhez a cikktípushoz társított összes cikket törölni fogja.'\n'Are you sure you want to $1 the article type $2?': 'Biztosan $1 akarod a/z $2 cikktípust?'\n'Are you sure you want to $1 comments for article type $2?': 'Biztosan $1 akarod a/z $2 cikktípus hozzászólásait?'\n'Allow users without subscriptions to view the article': 'Lehetővé teszi a felhasználók számára a cikk előfizetések nélküli megtekintését'\n'Add translation:': 'Fordítás hozzáadása:'\n'$1 comments for article type $2': '$1 hozzászólás a/z $2 cikktípushoz'\n'$1 comments for article type $1': '$1 hozzászólás a/z $1 cikktípushoz'\n'$1 article type $2': '$1 cikk $2 típus'\n'No article types.': 'Nincsenek cikktípusok.'\n'Delete article type $1': 'A/z $1 cikktípus törlése'\n'You do not have the right to add article types.': 'Nincs jogod a cikktípusok hozzáadásához.'\n'Adding new article type': 'Új cikktípus hozzáadása'\n'The $1 field may only contain letters and underscore (_) character.': 'A/z $1 mező csak betűket és aláhúzásjelet (_) tartalmazhat.'\n'The article type $1 already exists.': 'A/z $1 cikktípus már létezik.'\n'You do not have the right to delete article types.': 'Nincs jogod a cikktípusok törléséhez.'\n'The article type $1 could not be deleted.': 'A/z $1 cikktípust nem lehet törölni.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.hy.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': 'Show in Article Lists?'\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': 'Show to Authors?'\n'Show article on section page': null\n'Show article on front page': null\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': 'Comments Enabled?'\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': null\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': null\n'Delete article type $1': null\n'You do not have the right to add article types.': null\n'Adding new article type': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'The article type $1 already exists.': null\n'You do not have the right to delete article types.': null\n'The article type $1 could not be deleted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.hy_AM.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': null\n'Show article on front page': null\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': null\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': null\n'Delete article type $1': null\n'You do not have the right to add article types.': null\n'Adding new article type': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'The article type $1 already exists.': null\n'You do not have the right to delete article types.': null\n'The article type $1 could not be deleted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.id.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': null\n'Show article on front page': null\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': null\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': null\n'Delete article type $1': null\n'You do not have the right to add article types.': null\n'Adding new article type': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'The article type $1 already exists.': null\n'You do not have the right to delete article types.': null\n'The article type $1 could not be deleted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.it.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': 'Nascondi i nomi campo'\n'Edit and translate human-readable field names': 'Modifica e traduci i nomi campo.'\n'The template name may only contain letters and the underscore (_) character.': 'Il nome del template può contenere solo lettere e trattino basso ( _ ).'\n'Rename article type $1': 'Rinomina tipo articolo $1'\n'Invalid article type $1.': 'Tipo articolo $1 non valido.'\n'You cannot merge the same type into itself.': 'Non puoi unire un tipo con sé stesso.'\n'View the source ($1) version of $2': 'Vedi il sorgente ($1) di $2'\n'View of original ($1) $2': 'Vedi originale ($1) $2'\n'To return to the preview click here': 'Torna allanteprima'\n'This is the first translation of $1': 'Questa è la prima traduzione di $1'\n'There is no article associated with the preview.': 'Non ci sono articoli associati allanteprima.'\n'There are $1 articles associated with $2 that will be merged.': 'Ci sono $1 articoli associati con $2 che saranno uniti.'\n'The source article type ($1) does not have any articles.': 'Il tipo di articolo sorgente ($1) non ha nessun articolo.'\n'Source Article Type': 'Tipo di articolo sorgente'\n'Preview of $1': 'Atneprima di $1'\n'Preview a sample of the merge configuration.': 'Vedi unanteprima di esempio della configurazione unita.'\nNOTHING: NESSUNO\n'Merge failed.': 'Unione fallita.'\n'Merge configuration for merging $1 into $2.': 'Configura lunione per unire $1 in $2.'\n'Merge Article Types: Step $1 of $2': 'Unisci tipi articolo: Passo $1 di $2'\n'Merge $1 into $2': 'Unisci $1 in $2'\n'Destination Article Type': 'Tipo di destinazione articolo'\n'Delete the source article type ($1) when finished.': 'Elimina il tipo di articolo sorgente ($1) quando finito.'\n'Cycle through your articles to verify that the merge configuration is correct.': 'Scorri gli articoli per verificare che la configurazione dellunione sia corretta.'\n'Clicking Merge will merge ($1) article(s).': 'Cliccando Unisci verranno uniti ($1) articoli.'\n'Cannot merge a $1 field ($2) into a $3 field ($4).': 'Impossibile unire un campo $1 ($2) in uno $3 ($4).'\n'--None--': '--Nessuno--'\n'(Null merge warning.)': '(Attenzione: unione vuota.)'\n'(No merge warning.)': '(Attenzione: nessuna unione.)'\n'(Duplicate warning.)': '(Attenzione: duplicato.)'\n'(!) Do NOT merge $1': '(!) NON unire $1'\n'$1 of $2': '$1 di $2'\nshow: mostra\nhide: nascondi\ndeactivate: disattiva\nactivate: attiva\n'You must enter a name for the type.': 'Devi inserire un nome per il tipo.'\n'You must choose a language for the article type.': 'Devi scegliere una lingua per il tipo di articolo.'\n'You do not have the right to rename article types.': 'Non si dispone dei diritti per rinominare tipi articolo.'\n'You do not have the right to merge article types.': 'Non si dispone dei diritti per unire tipi articolo.'\n'The translation could not be added.': 'Non è stato possibile aggiungere la traduzione.'\n'The article type $1 does not exist.': 'Il tipo articolo $1 non esiste.'\n'Template Type Name': 'Nome del tipo di template'\n'Show to Authors?': null\n'Show article on section page': 'In pagina di sezione'\n'Show article on front page': 'In prima pagina'\n'Publish date': 'Data di pubblicazione'\nMerge!: Unisci!\n'Merge types': 'Unisci tipi'\n'Merge article type': 'Unisci tipi di articolo'\n'Link to public page': 'Link a pagina pubblica'\n'Go to Step 3': 'Vai a step 3'\n'Go to Step 2': 'Vai a step 2'\n'Display Name': 'Mostra nome'\n'Delete article type $1.': 'Elimina tipo articolo $1.'\n'Comments Enabled?': null\n'Back to Step 2': 'Torna a step 2'\n'Back to Step 1': 'Torna a step 1'\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': 'Confermi di eliminare il tipo articolo $1? ATTENZIONE: eliminando questo tipo articolo, tutti gli articoli associati saranno eliminati.'\n'Are you sure you want to $1 the article type $2?': 'Confermi di voler $1 il tipo articolo $2?'\n'Are you sure you want to $1 comments for article type $2?': 'Confermi di voler $1 commenti per il tipo articolo $2?'\n'Allow users without subscriptions to view the article': 'Permetti agli utenti senza sottoscrizione di vedere larticolo'\n'Add translation:': 'Aggiungi traduzione:'\n'$1 comments for article type $2': '$1 commenti per il tipo articolo $2'\n'$1 comments for article type $1': '$1 commenti per il tipo articolo $2'\n'$1 article type $2': '$1 tipo articolo $2'\n'No article types.': 'Nessun tipo articolo.'\n'Delete article type $1': 'Elimina tipo articolo $1'\n'You do not have the right to add article types.': 'Non si dispone dei diritti per aggiungere i tipi articolo.'\n'Adding new article type': 'Aggiungi tipo articolo'\n'The $1 field may only contain letters and underscore (_) character.': '$1 può contenere solo lettere e trattino basso ( _ ).'\n'The article type $1 already exists.': 'Il tipo articolo $1 e gia esistente.'\n'You do not have the right to delete article types.': 'Non hai il permesso di cancellare i tipi di articolo.'\n'The article type $1 could not be deleted.': 'Il tipo articolo $1 non e stato eliminato.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.ka.yml",
    "content": "list: სია\nfilter: ფილტრი\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': 'დარწმუნებული ხართ, რომ გსურთ $2 სტატიის ტიპის $1 სატატიები?'\n'$1 articles of article type $2': '$2 სტატიის ტიპის $1 სტატიები '\n'Hide human-readable field names': 'ადამიანის მიერ წაკითხვადი ველების დამალვა'\n'Edit and translate human-readable field names': 'ადამიანის მიერ წაკითხვადი ველების რედაქტირება და თარგმნა'\n'The template name may only contain letters and the underscore (_) character.': 'შაბლონის სახელი უნდა შეიცავდე მხოლოს ასოებს და _ სიმბოლოს.'\n'Rename article type $1': 'შეცვალეთ $1 ტიპის სტატიის სახელი'\n'Invalid article type $1.': '$1 არასწორი სტატიის ტიპი'\n'You cannot merge the same type into itself.': 'ერთი და იგივე ტიპის მის თავთან შეერთება შეუძლებელია.'\n'View the source ($1) version of $2': '$2-ის ($2) საწყისი ვერსიის ჩვენება'\n'View of original ($1) $2': 'ორიგინალის ჩვენება ($1) $2'\n'To return to the preview click here': 'გადახედვაზე დასაბრუნებლად დააჭირეთ აქ'\n'This is the first translation of $1': 'ეს არის $1-ის პირველი თარგმანი'\n'There is no article associated with the preview.': 'ამ გადახედვაზე ასოცირებული სტატია არ არსებობს.'\n'There are $1 articles associated with $2 that will be merged.': '$2-თან ასოცირებული $1 სტატიები შეერთდება'\n'The source article type ($1) does not have any articles.': '($1) წყარო სტატიის ტიპი არ შეიცავს სტატიებს'\n'Source Article Type': 'წყარო სტატიის ტიპი'\n'Preview of $1': '$1-ის გადახედვა'\n'Preview a sample of the merge configuration.': 'შეერთების კონფიგურაციის ნიმუშის გადახედვა'\nNOTHING: არაფერი\n'Merge failed.': 'შეერთება ვერ მოხერხდა'\n'Merge configuration for merging $1 into $2.': '$1 $2-სთან შეერთების კონფიგურაცია'\n'Merge Article Types: Step $1 of $2': 'სტატიის ტიპების შეერთება: $2-is $1 ნაბიჯი'\n'Merge $1 into $2': '$1 და $2 შეერთება'\n'Destination Article Type': 'მიმართულების სტატიის ტიპი'\n'Delete the source article type ($1) when finished.': 'დასრულების შემდეგ ($1) ტიპის წყარო სტატიის წაშლა .'\n'Cycle through your articles to verify that the merge configuration is correct.': 'გადახედეთ სტატიებს რათა დარწმუნდეთ რომ შეერთების კონფიგურაცია სწორია.'\n'Clicking Merge will merge ($1) article(s).': 'შეერთება-ზე დაჭერით ($1) სტატია(ები) შეერთდება.'\n'Cannot merge a $1 field ($2) into a $3 field ($4).': '$1 ველის ($2) $3 ველზე ($4) შეერთება ვერ ხერხდება'\n'--None--': '--არაფერი--'\n'(Null merge warning.)': '(გაუქმებული შეერთების გაფრთხილება.)'\n'(No merge warning.)': '(შეერთების გაფრთხილება არ არსებობს)'\n'(Duplicate warning.)': '(გაფრთხილების დუბლირება)'\n'(!) Do NOT merge $1': '(!) არ შეაერთოთ $1'\n'$1 of $2': '$2-ის $1'\nshow: ჩვენება\nhide: დამალვა\ndeactivate: დეაქტივაცია\nactivate: აქტივაცია\n'You must enter a name for the type.': 'მიუთითეთ ტიპის სახელი'\n'You must choose a language for the article type.': 'აირჩიეთ ტიპის ენა'\n'You do not have the right to rename article types.': 'თქვენ არ გაქვთ სტატიის ტიპის სახელის შეცვლის უფლება'\n'You do not have the right to merge article types.': 'თქვენ არ გაქვთ სტატიის ტიპების შეერთების უფლება'\n'The translation could not be added.': 'თარგმანი ვერ დაემატა'\n'The article type $1 does not exist.': 'სტატიის ტიპი $1 არ არსებობს.'\n'Template Type Name': 'შაბლონის ტიპის სახელი'\n'Show to Authors?': null\n'Show article on section page': 'სტატიის სექციის გვერდზე ჩვენება'\n'Show article on front page': 'სტატიის მთავარ გვერდზე ჩვენება'\n'Publish date': 'გამოცემის თარიღი'\nMerge!: შეერთება!\n'Merge types': 'შეერთების ტიპები'\n'Merge article type': 'სტატიის ტიპის შეერთება'\n'Link to public page': 'საჯარო გვერდზე დალინკვა'\n'Go to Step 3': 'გადადით მე-3 ნაბიჯზე'\n'Go to Step 2': 'გადადით მე-2 ნაბიჯზე'\n'Display Name': 'საჩვენებელი სახელი'\n'Delete article type $1.': '$1 სტატიის ტიპის წაშლა'\n'Comments Enabled?': null\n'Back to Step 2': 'მე-2 ნაბიჯზე დაბრუნდება'\n'Back to Step 1': 'პირველ ნაბიჯზე დაბრუნება'\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': 'დარწმუნებული ხართ რომ გსურთ $1 სტატიის ტიპის წაშლა? გაფრთხილება: ამ სტატიის ტიპის წაშლით წაიშლება ყველა სტატია რომელიც ამ ტიპთან არის ასოცირებული.'\n'Are you sure you want to $1 the article type $2?': 'დარწმუნებული ხართ რომ გსურთ $1 $2 ტიპის სტატია?'\n'Are you sure you want to $1 comments for article type $2?': 'დარწმუნებული ხართ რომ გსურთ $1 კომენტარები $2 ტიპის სტატიისთვის?'\n'Allow users without subscriptions to view the article': 'სტატიის ნახვის უფლების მიცემა იმ მომხმარებლებისთვის, რომლებიც გამომწერები არ არიან'\n'Add translation:': 'თარგმანის დამატება:'\n'$1 comments for article type $2': '$1 კომენტარები $2 სტატიის ტიპისთვის'\n'$1 comments for article type $1': '$1 კომენტარები $1 სტატიის ტიპისთვის'\n'$1 article type $2': '$1 $2 სტატიის ტიპი'\n'No article types.': 'არ არის სტატიის ტიპები.'\n'Delete article type $1': '$1 სტატიის ტიპის წაშლა'\n'You do not have the right to add article types.': 'თქვენ არ გაქვთ სტატიის ტიპის დამატების უფლება'\n'Adding new article type': 'ახალი სტატიის ტიპის დამატება'\n'The $1 field may only contain letters and underscore (_) character.': '$1 ველი უნდა შეიცავდე მხოლოდ ასოებს და _ სიმბოლოს.'\n'The article type $1 already exists.': '$1 სტატიის ტიპი უკვე არსებობს'\n'You do not have the right to delete article types.': 'თქვენ არ გაქვთ სტატიის ტიპების წაშლის უფლება.'\n'The article type $1 could not be deleted.': '$1 სტატიის ტიპი ვერ წაიშალა'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.ko.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': '섹션 페이지에 기사 보기'\n'Show article on front page': '프론트페이지에 기사 보기'\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': '번역 추가'\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': '기사 타입 없슴.'\n'Delete article type $1': '기사 타입 $1 삭제'\n'You do not have the right to add article types.': '기사 타입을 추가할 권한이 없습니다. '\n'Adding new article type': '새로운 기사 타입 추가중'\n'The $1 field may only contain letters and underscore (_) character.': '$1 필드는 문자나 밑줄 (_) 문자만 포함합니다.'\n'The article type $1 already exists.': '기사 타입 $1 이 이미 존재합니다.'\n'You do not have the right to delete article types.': '기사 타입을 삭제할 권한이 없습니다. '\n'The article type $1 could not be deleted.': '기사 타입 $1 을 삭제할 수 없습니다. '\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.ku.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': null\n'Show article on front page': null\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': null\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': null\n'Delete article type $1': null\n'You do not have the right to add article types.': null\n'Adding new article type': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'The article type $1 already exists.': null\n'You do not have the right to delete article types.': null\n'The article type $1 could not be deleted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.lv.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': null\n'Show article on front page': null\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': null\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': null\n'Delete article type $1': null\n'You do not have the right to add article types.': null\n'Adding new article type': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'The article type $1 already exists.': null\n'You do not have the right to delete article types.': null\n'The article type $1 could not be deleted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.mr.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': null\n'Show article on front page': null\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': null\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': null\n'Delete article type $1': null\n'You do not have the right to add article types.': null\n'Adding new article type': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'The article type $1 already exists.': null\n'You do not have the right to delete article types.': null\n'The article type $1 could not be deleted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.nb_NO.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': null\n'Show article on front page': null\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': null\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': null\n'Delete article type $1': null\n'You do not have the right to add article types.': null\n'Adding new article type': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'The article type $1 already exists.': null\n'You do not have the right to delete article types.': null\n'The article type $1 could not be deleted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.nl.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': 'Toon artikel op rubriekspagina'\n'Show article on front page': 'Toon article op voorpagina'\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': 'Voeg vertaling toe:'\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': 'Geen artikel types.'\n'Delete article type $1': 'Verwijder artikel type $1'\n'You do not have the right to add article types.': null\n'Adding new article type': 'Toevoegen niew artikel type'\n'The $1 field may only contain letters and underscore (_) character.': 'Het $1 veld mag alleen letters en laagstreepje (_) bevatten.'\n'The article type $1 already exists.': 'Het artikel type $1 bestaat al.'\n'You do not have the right to delete article types.': null\n'The article type $1 could not be deleted.': 'Het artikel type $1 kan niet worden verwijderd.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.pa.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': 'Show in Article Lists?'\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': 'Show to Authors?'\n'Show article on section page': null\n'Show article on front page': null\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': 'Comments Enabled?'\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': null\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': null\n'Delete article type $1': null\n'You do not have the right to add article types.': null\n'Adding new article type': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'The article type $1 already exists.': null\n'You do not have the right to delete article types.': null\n'The article type $1 could not be deleted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.pl.yml",
    "content": "list: lista\nfilter: filtr\n'Show in Article Lists?': 'Pokazywać w listach artykułów?'\n'Are you sure you want to $1 articles of article type $2?': 'Jesteś pewien że chcesz $1 artykułów z typu artykułu $2?'\n'$1 articles of article type $2': '$1 artykułów z typu artykułu $2'\n'Hide human-readable field names': 'Ukryj wyjaśnione nazwy pól'\n'Edit and translate human-readable field names': 'Przetłumacz ludzkie nazwy pól'\n'The template name may only contain letters and the underscore (_) character.': 'Nazwa szablonu może zawierać wyłącznie litery oraz podkreślenie (_)'\n'Rename article type $1': 'Zmień nazwę typu artykułu $1'\n'Invalid article type $1.': 'Niepoprawny typ artykułu $1'\n'You cannot merge the same type into itself.': 'Nie możesz połączyć typu z tym samym typem.'\n'View the source ($1) version of $2': 'Zobacz źródlo ($1) wersja od $2'\n'View of original ($1) $2': 'Zobacz oryginał ($1) $2'\n'To return to the preview click here': 'Aby powrócić do podglądu kliknij tutaj'\n'This is the first translation of $1': 'Pierwsze tłumaczenie $1'\n'There is no article associated with the preview.': 'Nie ma artykułu powiązanego z podglądem.'\n'There are $1 articles associated with $2 that will be merged.': 'Istnieją $1 artykułu powiązane z $2, które zostaną połączone.'\n'The source article type ($1) does not have any articles.': 'Źródłowy typ artykułu ($1) nie zawiera żadnych artykułów.'\n'Source Article Type': 'Źródłowy typ artykułu'\n'Preview of $1': 'Podgląd $1'\n'Preview a sample of the merge configuration.': 'Zobacz podgląd konfiguracji połączenia.'\nNOTHING: NIC\n'Merge failed.': 'Połącznie nie powiodło się'\n'Merge configuration for merging $1 into $2.': 'Konfiguracja łączenia $1 z $2'\n'Merge Article Types: Step $1 of $2': 'Połącz typy artykułó∑: Krok $1 z $2'\n'Merge $1 into $2': 'Połącz $1 z $2'\n'Destination Article Type': 'Docelowy typ artykułu'\n'Delete the source article type ($1) when finished.': 'Usuń źródłowy typ artykułu ($1) po ukończeniu.'\n'Cycle through your articles to verify that the merge configuration is correct.': 'Przejrzyj artykuły by sprawdzić, że konfiguracja łączenia jest poprawna.'\n'Clicking Merge will merge ($1) article(s).': 'Klikając Połącz połączyc ($1) artykułów.'\n'Cannot merge a $1 field ($2) into a $3 field ($4).': 'Nie można połączyć pola ($2) z $3, pole ($4)'\n'--None--': '--Brak--'\n'(Null merge warning.)': '(Ostrzeżenie o braku łączenia.)'\n'(No merge warning.)': '(Ostrzeżenie o braku łączenia.)'\n'(Duplicate warning.)': '(Ostrzeżenie o duplikacji.)'\n'(!) Do NOT merge $1': '(1) NIE łącz $1'\n'$1 of $2': '$1 z $2'\nshow: pokaż\nhide: schowaj\ndeactivate: deaktywuj\nactivate: aktywuj\n'You must enter a name for the type.': 'Musisz podać nazwę typu.'\n'You must choose a language for the article type.': 'Musisz wybrać język dla artykułu'\n'You do not have the right to rename article types.': 'Nie masz praw aby zmieniać nazwy typy artykułów.'\n'You do not have the right to merge article types.': 'Nie masz praw aby łączyć typy artykułów.'\n'The translation could not be added.': 'Tłumaczenie nie zostało dodane.'\n'The article type $1 does not exist.': 'Typ artykułu $1 nie istnieje.'\n'Template Type Name': 'Nazwa typu szablonu'\n'Show to Authors?': 'Pokaż dla autorów?'\n'Show article on section page': 'Pokaż artykuł na stronie sekcji'\n'Show article on front page': 'Pokaż artykuł na stronie głównej'\n'Publish date': 'Data publikacji'\nMerge!: Połącz!\n'Merge types': 'Typy łączenia'\n'Merge article type': 'Łączenie typów artykułu'\n'Link to public page': 'Linkuj do strony publicznej'\n'Go to Step 3': 'Idź do Kroku 3'\n'Go to Step 2': 'Idź do Kroku 2'\n'Display Name': 'Wyświetl nazwę'\n'Delete article type $1.': 'Usuń typ artykułu $1'\n'Comments Enabled?': 'Komentarze aktywne?'\n'Back to Step 2': 'Powrót do Krok 2'\n'Back to Step 1': 'Powrót do Krok 1'\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': 'Czy na pewno chcesz usunąć typ artykułu $1? OSTRZEŻENIE: Usunięcie typu artykułu spowoduje usunięcie wszystkich artykułów powiązanych z tym typem.'\n'Are you sure you want to $1 the article type $2?': 'Czy na pewno chcesz $1 do typu artykułu $2?'\n'Are you sure you want to $1 comments for article type $2?': 'Czy na pewno chcesz $1 komentarze do typu artykułu $2?'\n'Allow users without subscriptions to view the article': 'Zezwól użytkownikom bez subskrypcji oglądać artykul'\n'Add translation:': 'Dodaj tłumaczenie:'\n'$1 comments for article type $2': '$1 komentarzy do typu artykułu $2'\n'$1 comments for article type $1': '$1 komentarzy do typu artykułu $2'\n'$1 article type $2': '$1 typ artykulu $2'\n'No article types.': 'Brak typów artykułów.'\n'Delete article type $1': 'Usuń typ artykułu $1'\n'You do not have the right to add article types.': 'Nie masz praw aby dodawać typy artykułów.'\n'Adding new article type': 'Dodawanie nowego typu artykułu'\n'The $1 field may only contain letters and underscore (_) character.': 'Pole $1 może jedynie zawierać litery oraz podkreślnik (_)'\n'The article type $1 already exists.': 'Typ artykułu $1 już istnieje.'\n'You do not have the right to delete article types.': 'Nie masz uprawnień do usówania typów artykułu'\n'The article type $1 could not be deleted.': 'Typ artykułu $1 nie został usunięty.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.ps.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': null\n'Show article on front page': null\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': null\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': null\n'Delete article type $1': null\n'You do not have the right to add article types.': null\n'Adding new article type': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'The article type $1 already exists.': null\n'You do not have the right to delete article types.': null\n'The article type $1 could not be deleted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.pt.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': 'Mostrar Artigo na página de Secção'\n'Show article on front page': 'Mostrar Artigo na 1ª Página'\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': 'Adicionar tradução:'\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': 'Não existem Tipo de Artigos definidos'\n'Delete article type $1': 'Eliminar Tipo de Artigo $1'\n'You do not have the right to add article types.': 'Não tem permissões para adicionar Tipos de Artigos'\n'Adding new article type': 'Adicionando Tipo de Artigo'\n'The $1 field may only contain letters and underscore (_) character.': 'O nome do campo $1 só pode conter letras'\n'The article type $1 already exists.': 'O Tipo de Artigo $1 já existe'\n'You do not have the right to delete article types.': 'Não tem permissões para eliminar Tipo de Artigos'\n'The article type $1 could not be deleted.': 'Tipo de Artigo $1 não pode ser eliminado'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.pt_BR.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': 'Esconder nomes de campos que podem ser lidos pelas pessoas'\n'Edit and translate human-readable field names': 'Editar e traduzir campos que podem ser lidos pelas pessoas'\n'The template name may only contain letters and the underscore (_) character.': 'O nome do template pode ter apenas letras e o underscore (_).'\n'Rename article type $1': 'Modifique o nome do artigo tipo $1'\n'Invalid article type $1.': 'Artigo tipo $1 é inválido.'\n'You cannot merge the same type into itself.': 'Você não pode fundir um tipo com si mesmo.'\n'View the source ($1) version of $2': 'Ver a versão fonte ($1) do $2'\n'View of original ($1) $2': 'Vista do original ($1) $2'\n'To return to the preview click here': 'Para voltar para a visualização clique aqui'\n'This is the first translation of $1': 'Esta é a primeira tradução do $1'\n'There is no article associated with the preview.': 'Não há artigo associado à visualização'\n'There are $1 articles associated with $2 that will be merged.': 'Há $1 artigos associados com $2 que serão fundidos.'\n'The source article type ($1) does not have any articles.': 'O artigo fonte do tipo ($1) não contêm nenhum artigo.'\n'Source Article Type': 'Tipo de artigo fonte'\n'Preview of $1': 'Visualização do $1'\n'Preview a sample of the merge configuration.': 'Visualizar amostra da configuração de fusão.'\nNOTHING: NADA\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': 'Configuração de fusão para fundir $1 com $2.'\n'Merge Article Types: Step $1 of $2': 'Fundir tipos de artigos: Passo $1 de $2'\n'Merge $1 into $2': 'Fundir $1 com $2.'\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': 'Apagar o tipo do artigo fonte ($1) quando terminar.'\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': 'Clicando no Fundir você vai fundir ($1) artigo(s).'\n'Cannot merge a $1 field ($2) into a $3 field ($4).': 'Não é possível fundir um campo do tipo $1 ($2) com um campo do tipo $3 ($4).'\n'--None--': '--Nenhum--'\n'(Null merge warning.)': '(Aviso de fusão nulo.)'\n'(No merge warning.)': '(Sem aviso de fusão.)'\n'(Duplicate warning.)': '(Duplicar aviso.)'\n'(!) Do NOT merge $1': '(!) NÃO fundir $1'\n'$1 of $2': '$1 de $2'\nshow: mostrar\nhide: esconder\ndeactivate: deativar\nactivate: ativar\n'You must enter a name for the type.': 'Você tem que digitar o nome para o tipo.'\n'You must choose a language for the article type.': 'Você tem que escolher a língua para o tipo de arquivo.'\n'You do not have the right to rename article types.': 'Você não tem o direito de mudar o nome de tipo de arquivo.'\n'You do not have the right to merge article types.': 'Você não tem o direito de fundir tipos de artigos.'\n'The translation could not be added.': 'Não foi possível adicionar a tradução'\n'The article type $1 does not exist.': 'O artigo do tipo $1 não existe.'\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': 'Mostrar artigo na página de seção'\n'Show article on front page': 'Mostrar artigo na página principal'\n'Publish date': 'Data de publicação'\nMerge!: Fundir!\n'Merge types': 'Tipos de fusão'\n'Merge article type': 'Fundir tipo de arquivo'\n'Link to public page': null\n'Go to Step 3': 'Vá para passo 3'\n'Go to Step 2': 'Vá para passo 2'\n'Display Name': 'Mostrar nome'\n'Delete article type $1.': 'Remover artigo do tipo $1'\n'Comments Enabled?': null\n'Back to Step 2': 'Voltar para passo 2'\n'Back to Step 1': 'Voltar para passo 1'\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': 'Você tem certeza que quer apagar o tipo de artigo $1? ATENÇÃO: Apagando este tipo de artigo você vai apagar todos os artigos associados com este tipo de artigo. '\n'Are you sure you want to $1 the article type $2?': 'Tem certeza que quer $1 o artigo do tipo $2'\n'Are you sure you want to $1 comments for article type $2?': 'Tem certeza que quer $1 os comentários do artigo do tipo $2'\n'Allow users without subscriptions to view the article': 'Permitir usuários não-assinantes a verem o artigo'\n'Add translation:': 'Adicionar a tradução:'\n'$1 comments for article type $2': '$1 comentários para o artigo do tipo $2'\n'$1 comments for article type $1': '$1 comentários para o artigo do tipo $1'\n'$1 article type $2': '$1 artigo do tipo $2'\n'No article types.': 'Não existem Tipo de Artigos definidos'\n'Delete article type $1': 'Eliminar Tipo de Artigo $1'\n'You do not have the right to add article types.': 'Não tem permissões para adicionar Tipos de Artigos'\n'Adding new article type': 'Adicionando o novo tipo de artigo'\n'The $1 field may only contain letters and underscore (_) character.': 'O campo $1 pode ter apenas letras e o underscore (_).'\n'The article type $1 already exists.': 'O Tipo de Artigo $1 já existe'\n'You do not have the right to delete article types.': 'Você não tem o direito de remover tipos de artigos.'\n'The article type $1 could not be deleted.': 'Tipo de Artigo $1 não pode ser eliminado'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.ro.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': 'Nu poţi combina acelaşi tip cu el însuşi.'\n'View the source ($1) version of $2': 'Vezi versiunea ($1) a sursei pentru $2'\n'View of original ($1) $2': 'Vizualizarea originalului ($1) $2'\n'To return to the preview click here': 'Pentru a te întoarce la previzualizare, apasă aici'\n'This is the first translation of $1': 'Aceasta este prima traducere a lui $1'\n'There is no article associated with the preview.': 'Nu există nici un articol asociat cu această previzualizare.'\n'There are $1 articles associated with $2 that will be merged.': '$1 articole asociate cu $2 vor fi combinate.'\n'The source article type ($1) does not have any articles.': 'Tipul ($1) de articol sursă nu are nici un articol. '\n'Source Article Type': 'Tipul de articol sursă'\n'Preview of $1': 'Previzualizarea lui $1'\n'Preview a sample of the merge configuration.': 'Previzualizează un exemplu al configuraţiei de combinare.'\nNOTHING: NIMIC\n'Merge failed.': 'Combinarea a eşuat.'\n'Merge configuration for merging $1 into $2.': 'Configuraţia de combinare pentru combinarea lui $1 cu $2.'\n'Merge Article Types: Step $1 of $2': 'Combină tipurile de articol: pasul $1 din $2'\n'Merge $1 into $2': 'Combină $1 cu $2'\n'Destination Article Type': 'Tipul de articol destinaţie'\n'Delete the source article type ($1) when finished.': 'Şterge tipul de articol sursă ($1) când procedura s-a încheiat.'\n'Cycle through your articles to verify that the merge configuration is correct.': 'Navighează prin articole pentru a verifica dacă este corectă configuraţia de combinare.'\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': 'Nu se poate combina un câmp $1 ($2) cu un câmp $3 ($4).'\n'--None--': '--Nici unul--'\n'(Null merge warning.)': '(Atenţionare de combinare invalidă).'\n'(No merge warning.)': '(Atenţionare de eşec al combinării).'\n'(Duplicate warning.)': '(Alertă de duplicare).'\n'(!) Do NOT merge $1': '(!) NU combina $1'\n'$1 of $2': '$1 din $2'\nshow: arată\nhide: ascunde\ndeactivate: dezactivează\nactivate: activează\n'You must enter a name for the type.': 'Trebuie să introduci un nume pentru acest tip.'\n'You must choose a language for the article type.': 'Trebuie să alegi o limbă pentru tipul articolului.'\n'You do not have the right to rename article types.': 'Nu ai dreptul să redenumeşti tipurile de articol.'\n'You do not have the right to merge article types.': 'Nu ai dreptul să combini tipuri de articole.'\n'The translation could not be added.': 'Traducerea nu a putut fi adăugată.'\n'The article type $1 does not exist.': 'Tipul $1 al articolului nu există.'\n'Template Type Name': 'Numele tipului şablonului'\n'Show to Authors?': null\n'Show article on section page': 'Afişează articolul pe pagina secţiunii'\n'Show article on front page': 'Afişează articolul pe prima pagină'\n'Publish date': 'Data publicării'\nMerge!: Combină!\n'Merge types': 'Tipuri de combinare'\n'Merge article type': 'Combină tipul articolului'\n'Link to public page': 'Legătură spre un site public'\n'Go to Step 3': 'Mergi la pasul 3'\n'Go to Step 2': 'Mergi la pasul 2'\n'Display Name': 'Nume public'\n'Delete article type $1.': 'Şterge tipul de articol $1.'\n'Comments Enabled?': null\n'Back to Step 2': 'Înapoi la pasul 2'\n'Back to Step 1': 'Înapoi la pasul 1'\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': 'Eşti sigur că vrei să ştergi tipul de articol $1? ATENŢIE: Dacă ştergi acest tip de articol, toate articolele asociate cu acest tip vor fi şterse.'\n'Are you sure you want to $1 the article type $2?': 'Eşti sigur că vrei să combini tipul de articol $2?'\n'Are you sure you want to $1 comments for article type $2?': 'Eşti sigur că vrei să combini comentariile pentru tipul de articol $2?'\n'Allow users without subscriptions to view the article': 'Permite utilizatorilor fără abonament să vadă articolul'\n'Add translation:': 'Adaugă traducere:'\n'$1 comments for article type $2': '$1 comentarii sunt la tipul de articol $2'\n'$1 comments for article type $1': '$1 comentarii sunt la tipul de articol $1'\n'$1 article type $2': '$1 tipul de articol $2'\n'No article types.': 'Nu există tipuri de articole.'\n'Delete article type $1': 'Şterge tipul de articol $1'\n'You do not have the right to add article types.': 'Nu ai dreptul să adăugi tipuri de articole.'\n'Adding new article type': 'Se adaugă un tip nou de articol'\n'The $1 field may only contain letters and underscore (_) character.': 'Câmpul $1 poate conţine doar litere sau caracterul underscore (_).'\n'The article type $1 already exists.': 'Tipul de articol $1 există deja.'\n'You do not have the right to delete article types.': 'Nu ai dreptul să ştergi tipuri de articole.'\n'The article type $1 could not be deleted.': 'Tipul de articol $1 nu poate fi şters.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.ru.yml",
    "content": "list: список\nfilter: фильтр\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': 'Вы действительно хотите $1 статьи типа $2?'\n'$1 articles of article type $2': '$1 статьи типа $2'\n'Hide human-readable field names': 'Скрыть названия полей удобные для восприятия человеком'\n'Edit and translate human-readable field names': 'Редактировать и перевести названия полей удобные для восприятия человеком'\n'The template name may only contain letters and the underscore (_) character.': 'Имя шаблона может содержать только буквы и знак подчеркивания (_).'\n'Rename article type $1': 'Переименовать тип статьи $1'\n'Invalid article type $1.': 'Неправильный тип статьи $1.'\n'You cannot merge the same type into itself.': 'Вы не можете объединить тип сам с собой.'\n'View the source ($1) version of $2': 'Просмотр источника ($1) версии $2'\n'View of original ($1) $2': 'Просмотр оригинала ($1) $2'\n'To return to the preview click here': 'Для возврата в предварительный просмотр щелкните здесь'\n'This is the first translation of $1': 'Это первый перевод $1'\n'There is no article associated with the preview.': 'Нет статей, ассоциированных с предварительным просмотром.'\n'There are $1 articles associated with $2 that will be merged.': 'Статей, ассоциированных с $2, которые будут объеденены: $1'\n'The source article type ($1) does not have any articles.': 'Тип $1 статьи источника не имеет статей.'\n'Source Article Type': 'Тип статьи источника'\n'Preview of $1': 'Предварительный просмотр $1'\n'Preview a sample of the merge configuration.': 'Предварительный просмотр образца объединенной конфигурации.'\nNOTHING: НИЧЕГО\n'Merge failed.': 'Объединение не удалось.'\n'Merge configuration for merging $1 into $2.': 'Конфигурация объединения для слияние $1 в $2.'\n'Merge Article Types: Step $1 of $2': 'Типы объединяемых статей: Шаг $1 из $2'\n'Merge $1 into $2': 'Объединить $1 и $2'\n'Destination Article Type': 'Тип результирующей статьи'\n'Delete the source article type ($1) when finished.': 'Удалить тип статьи ($1) после завершения.'\n'Cycle through your articles to verify that the merge configuration is correct.': 'Прокрутить Вашу статью для проверки, что конфигурация объединения верна.'\n'Clicking Merge will merge ($1) article(s).': 'Щелчок по Объединить объединит $1 статей.'\n'Cannot merge a $1 field ($2) into a $3 field ($4).': 'Невозможно слить поле $1 ($2) в поле $3 ($4).'\n'--None--': '-- Ничего --'\n'(Null merge warning.)': '(Нет предупреждений об объединении.)'\n'(No merge warning.)': '(Нет предупреждений об объединении.)'\n'(Duplicate warning.)': '(Дублировать предупреждение.)'\n'(!) Do NOT merge $1': '(!) Не объединяйте $1'\n'$1 of $2': ' $1 из $2'\nshow: Показывать\nhide: Спрятать\ndeactivate: деактивировать\nactivate: активировать\n'You must enter a name for the type.': 'Вы должны ввести название типа.'\n'You must choose a language for the article type.': 'Вы должны выбрать язык для типа статьи.'\n'You do not have the right to rename article types.': 'Вы не имеете прав доступа для переименования типов статей.'\n'You do not have the right to merge article types.': 'Вы не имеете прав доступа для объединения типов статей.'\n'The translation could not be added.': 'Перевод не может быть добавлен.'\n'The article type $1 does not exist.': 'Тип статьи $1 не существует.'\n'Template Type Name': 'Название типа шаблона'\n'Show to Authors?': null\n'Show article on section page': 'Показать статью на странице рубрики'\n'Show article on front page': 'Показать статью на титульной странице'\n'Publish date': 'Дата публикации'\nMerge!: Объединить!\n'Merge types': 'Объединить типы'\n'Merge article type': 'Объединить типы статей'\n'Link to public page': 'Ссылка на общедоступную страницу'\n'Go to Step 3': 'Перейти к шагу 3'\n'Go to Step 2': 'Перейти к шагу 2'\n'Display Name': 'Отображаемое название'\n'Delete article type $1.': 'Удалить тип статей $1.'\n'Comments Enabled?': null\n'Back to Step 2': 'Назад к шагу 2'\n'Back to Step 1': 'Назад к шагу 1'\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': 'Вы уверены, что хотите удалить тип статьи $1? ПРЕДУПРЕЖДЕНИЕ: удаление этого типа статей удалит повлечет за собой удаление всех статей, ассоциированные с этим типом.'\n'Are you sure you want to $1 the article type $2?': 'Вы уверены, что хотите $1 тип статей $2?'\n'Are you sure you want to $1 comments for article type $2?': 'Вы уверены, что хотите $1 комментарии для статьи типа $2?'\n'Allow users without subscriptions to view the article': 'Позволить пользователям без подписки просматривать статьи'\n'Add translation:': 'Добавить перевод:'\n'$1 comments for article type $2': 'Комментариев для статей типа $2: $1'\n'$1 comments for article type $1': 'Комментариев для статей типа $1: $1'\n'$1 article type $2': '$1 тип статей $2'\n'No article types.': 'Нет типов статей.'\n'Delete article type $1': 'Удалить тип статьи $1'\n'You do not have the right to add article types.': 'Вы не имеете права удаления типов статей.'\n'Adding new article type': 'Добавление нового типа статьи'\n'The $1 field may only contain letters and underscore (_) character.': 'Поле $1 может содержать только буквы и символ подчеркивания (_).'\n'The article type $1 already exists.': 'Тип статьи $1 уже существует.'\n'You do not have the right to delete article types.': 'У вас нет прав удалять типы статей.'\n'The article type $1 could not be deleted.': 'Невозможно удалить тип статей $1.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.sh.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': 'Sakri nazive polja prilagođene ljudima'\n'Edit and translate human-readable field names': 'Uredi i prevedi nazive polja prilagođene ljudima'\n'The template name may only contain letters and the underscore (_) character.': 'Naziv polja može sadržati samo slova i donju crtu (_).'\n'Rename article type $1': 'Preimenuj tip teksta $1'\n'Invalid article type $1.': 'Pogrešan tip teksta $1.'\n'You cannot merge the same type into itself.': 'Ne možete spojiti tip članka sa samim sobom.'\n'View the source ($1) version of $2': 'Pogledajte izvornu ($1) verziju $2'\n'View of original ($1) $2': 'Pogledaj originalni ($1) $2'\n'To return to the preview click here': 'Za povratak na pregled kliknte ovde'\n'This is the first translation of $1': 'Ovo je prvi prevod $1'\n'There is no article associated with the preview.': 'Nema članka povezanog sa ovim pregledom'\n'There are $1 articles associated with $2 that will be merged.': 'Postoji $1 članka asociranih sa $2 koji će biti spojeni.'\n'The source article type ($1) does not have any articles.': 'Za izvorni tip članka ($1) nema članaka'\n'Source Article Type': 'Izvorni tip članka'\n'Preview of $1': 'Pregled $1'\n'Preview a sample of the merge configuration.': 'Pregled primera konfiguracije spajanja.'\nNOTHING: NIŠTA\n'Merge failed.': 'Spajanje nije uspelo.'\n'Merge configuration for merging $1 into $2.': 'Konfiguracija spajanja za $1 u $2.'\n'Merge Article Types: Step $1 of $2': 'Spajanje tipova članaka: korak $1 od $2'\n'Merge $1 into $2': 'Spoj $1 u $2'\n'Destination Article Type': 'Ciljni tip članka'\n'Delete the source article type ($1) when finished.': 'Obriši izvorni tip članka ($1) po završetku.'\n'Cycle through your articles to verify that the merge configuration is correct.': 'Prođite kroz članke da proverite da je knofiguracija spajanje ispravna.'\n'Clicking Merge will merge ($1) article(s).': 'Klikom na Spoji spojićete ($1) članak(a).'\n'Cannot merge a $1 field ($2) into a $3 field ($4).': 'Nije moguće spojiti $1 polje ($2) u $3 polje ($4). '\n'--None--': '-- Prazno --'\n'(Null merge warning.)': '(Upozorenju o spajanju bez rezultata)'\n'(No merge warning.)': '(Upozorenje o nemogućnosti spajanja)'\n'(Duplicate warning.)': '(Upozorenje o dupliranju)'\n'(!) Do NOT merge $1': '(!) Ne spajaj $1'\n'$1 of $2': '$1 od $2'\nshow: prikaži\nhide: sakri\ndeactivate: deaktiviraj\nactivate: aktiviraj\n'You must enter a name for the type.': 'Morate uneti naziv za tip'\n'You must choose a language for the article type.': 'Morate iabrati jezik za tip članka.'\n'You do not have the right to rename article types.': 'Nemate pravo da preimenujete tipove članaka.'\n'You do not have the right to merge article types.': 'Nemate pravo da spajate tipove članka'\n'The translation could not be added.': 'Prevod ne može biti dodat.'\n'The article type $1 does not exist.': 'Tip članka $1 ne postoji.'\n'Template Type Name': 'Naziv tipa šablona'\n'Show to Authors?': null\n'Show article on section page': 'Prikaži članak na strani rubrike'\n'Show article on front page': 'Prikaži članak na prvoj strani'\n'Publish date': 'Datum objavljivanja'\nMerge!: Spoji!\n'Merge types': 'Spoj tipove'\n'Merge article type': 'Spoj tip članka'\n'Link to public page': 'Link na stranu'\n'Go to Step 3': 'Idi na korak 3'\n'Go to Step 2': 'Idi na korak 2'\n'Display Name': 'Prikazno ime'\n'Delete article type $1.': 'Obriši tip članka $1.'\n'Comments Enabled?': null\n'Back to Step 2': 'Nazad na korak 2'\n'Back to Step 1': 'Nazad na korak 1'\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': 'Da li ste sigurni da želite da obrišete tip članka $1? UPOZORENJE: Brisanje tipa članka će obrisati i sve članke dodate korišćenjem ovog tipa članka.'\n'Are you sure you want to $1 the article type $2?': 'Da li ste sigurni da želite da $1 tip članka $2?'\n'Are you sure you want to $1 comments for article type $2?': 'Da li ste sigurni da želite da $1 komentara za tip članka $2?'\n'Allow users without subscriptions to view the article': 'Dozvoli korisnicima bez pretplate da vide ovaj članak'\n'Add translation:': 'dodaj prevod:'\n'$1 comments for article type $2': '$1 komentara za tip članka $2'\n'$1 comments for article type $1': '$1 komentara za tp članka $1'\n'$1 article type $2': '$1 tip članka $2'\n'No article types.': 'Nije definisan nijedan tip teksta'\n'Delete article type $1': 'Obriši tip teksta $1'\n'You do not have the right to add article types.': 'Nemate pravo da dodajete tipove tekstova.'\n'Adding new article type': 'dodavanje novog tipa članka'\n'The $1 field may only contain letters and underscore (_) character.': 'Polje $1 može sadržati isključivo slova i donju crtu (_).'\n'The article type $1 already exists.': 'Tip teksta $1 već postoji.'\n'You do not have the right to delete article types.': 'Nemate pravo da brišete tipove tekstova.'\n'The article type $1 could not be deleted.': 'Tip teksta $1 ne može biti obrisan.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.sq.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': null\n'Show article on front page': null\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': null\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': null\n'Delete article type $1': null\n'You do not have the right to add article types.': null\n'Adding new article type': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'The article type $1 already exists.': null\n'You do not have the right to delete article types.': null\n'The article type $1 could not be deleted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.sr.yml",
    "content": "list: листа\nfilter: filter\n'Show in Article Lists?': 'Прикажи у листи чланака'\n'Are you sure you want to $1 articles of article type $2?': 'Да ли сте сигурни да желите да $1 чланака типа $2?'\n'$1 articles of article type $2': '$1 чланака тип чланка $2'\n'Hide human-readable field names': 'Сакри називе поља прилагођене људима'\n'Edit and translate human-readable field names': 'Уреди и преведи називе поља прилагођене људима'\n'The template name may only contain letters and the underscore (_) character.': 'Назив поља може садржати искључиво слова и доњу црту (_)'\n'Rename article type $1': 'Преименуј тип текста $1'\n'Invalid article type $1.': 'Погрешан тип текста $1'\n'You cannot merge the same type into itself.': 'Не можете спојити тип текста са самим собом'\n'View the source ($1) version of $2': 'Погледајте изворну ($1) верзију $2'\n'View of original ($1) $2': 'Погледај орогинални ($1) $2'\n'To return to the preview click here': 'За повраљтак на преглед кликните овде'\n'This is the first translation of $1': 'Ово је први превод $1'\n'There is no article associated with the preview.': 'Нема текста повезаног са овим прегледом'\n'There are $1 articles associated with $2 that will be merged.': 'Постоји $1 текстова асоцираних са $2 који ће бити спојени.'\n'The source article type ($1) does not have any articles.': 'За изворни тип текста ($1) нема текстова'\n'Source Article Type': 'Изворни тип текста'\n'Preview of $1': 'Преглед $1'\n'Preview a sample of the merge configuration.': 'Преглед примера конфигурације спајања.'\nNOTHING: НИШТА\n'Merge failed.': 'Спајање није успело.'\n'Merge configuration for merging $1 into $2.': 'Конфигурација спајања за $1 у $2.'\n'Merge Article Types: Step $1 of $2': 'Спајање типова текстова: корак $1 од $2'\n'Merge $1 into $2': 'Спој $1 у $2'\n'Destination Article Type': 'Циљни тип текста'\n'Delete the source article type ($1) when finished.': 'Обриши изворни тип теккста ($1) по завршетку'\n'Cycle through your articles to verify that the merge configuration is correct.': 'Прођите кроз текстове да проверите да ли је спајање исправно подешено.'\n'Clicking Merge will merge ($1) article(s).': 'Кликом на Споји спојићете ($1) текст(ова).'\n'Cannot merge a $1 field ($2) into a $3 field ($4).': 'Није могуће спојити $1 поље ($2) у $3 поље ($4)'\n'--None--': '-- Празно --'\n'(Null merge warning.)': '(Упозорење о спајању без резултата)'\n'(No merge warning.)': '(Упозорење о немогућности спајања)'\n'(Duplicate warning.)': '(Упозорење о дуплирању)'\n'(!) Do NOT merge $1': '(!) не спајај $1'\n'$1 of $2': '$1 од $2'\nshow: прикажи\nhide: сакри\ndeactivate: деактивирај\nactivate: активирај\n'You must enter a name for the type.': 'Морате унети назив типа'\n'You must choose a language for the article type.': 'Морате изабрати језик за тип текста.'\n'You do not have the right to rename article types.': 'Немате право да преименујете типове текстова.'\n'You do not have the right to merge article types.': 'Немате право да спајате типове текстова'\n'The translation could not be added.': 'Превод не може бити додат'\n'The article type $1 does not exist.': 'Тип текста $1 не постоји'\n'Template Type Name': 'Назив типа шаблона'\n'Show to Authors?': 'Видљиво за ауторе?'\n'Show article on section page': 'Прикажи текст на страни рубрике'\n'Show article on front page': 'Прикажи текст на првој страни'\n'Publish date': 'Датум објављивања'\nMerge!: Споји!\n'Merge types': 'Спој типове'\n'Merge article type': 'Спој тип текста'\n'Link to public page': 'Линк на страну'\n'Go to Step 3': 'Иди на корак 3'\n'Go to Step 2': 'Иди на корак 2'\n'Display Name': 'Приказно име'\n'Delete article type $1.': 'Обриши тип текста $1.'\n'Comments Enabled?': 'Омогући коментаре?'\n'Back to Step 2': 'Назад на корак 2'\n'Back to Step 1': 'Назад на корак 1'\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': 'Да ли сте сигурни да желите да обришете тип текста $1? УПОЗОРЕЊЕ: брисање типа текста ће обрисати и све текстове додате коришћењем овог типа текста.'\n'Are you sure you want to $1 the article type $2?': 'Да ли сте сигурни да желите да $1 тип текста $2?'\n'Are you sure you want to $1 comments for article type $2?': 'Да ли сте сигурни да желите да $1 коментара за тип текста'\n'Allow users without subscriptions to view the article': 'Дозволи корисницима без претплате да виде овај текст.'\n'Add translation:': 'додај превод:'\n'$1 comments for article type $2': '$1коментара за тип текста $2'\n'$1 comments for article type $1': '$1 коментара за тип текста $2'\n'$1 article type $2': '$1 тип текста $2'\n'No article types.': 'Није дефинисан ниједан тип текста'\n'Delete article type $1': 'Обриши тип текста $1'\n'You do not have the right to add article types.': 'Немате право да додајете типове текстова.'\n'Adding new article type': 'додавање новог типа текста'\n'The $1 field may only contain letters and underscore (_) character.': 'Поље $1 може садржати искључиво слова и доњу црту (_)'\n'The article type $1 already exists.': 'Тип текста $1 већ постоји'\n'You do not have the right to delete article types.': 'Немате право да бришете типове текстова.'\n'The article type $1 could not be deleted.': 'Тип текста $1 не може бити обрисан'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.sv.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': 'Visa artikeln på sektionssidan'\n'Show article on front page': 'Visa artikeln på framsidan'\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': 'Lägg till översättning:'\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': 'Inga artikeltyper.'\n'Delete article type $1': 'Radera artikeltyp $1'\n'You do not have the right to add article types.': 'Du har inte rätt att lägga till artikeltyper.'\n'Adding new article type': 'Lägger till ny artikeltyp'\n'The $1 field may only contain letters and underscore (_) character.': 'Fältet $1 får bara innehålla bokstäver och understreck (_)'\n'The article type $1 already exists.': 'Artikeltypen $1 finns redan.'\n'You do not have the right to delete article types.': 'Du har inte rätt att radera artikeltyper.'\n'The article type $1 could not be deleted.': 'Artikeltypen $1 kunde inte raderas.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.tr.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': null\n'Show article on front page': null\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': null\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': null\n'Delete article type $1': null\n'You do not have the right to add article types.': null\n'Adding new article type': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'The article type $1 already exists.': null\n'You do not have the right to delete article types.': null\n'The article type $1 could not be deleted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.uk.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': 'Приховати назву полів зручні для сприйняття людиною'\n'Edit and translate human-readable field names': 'Редагувати так перекласти назву полів зручну для сприйняття людиною'\n'The template name may only contain letters and the underscore (_) character.': 'Ім’я шаблону може містити тільки букви та знак підкреслення (_)'\n'Rename article type $1': 'Перейменувати тип статті $1'\n'Invalid article type $1.': 'Невірний тип статті $1.'\n'You cannot merge the same type into itself.': 'Ви не можете об’єднувати ідентичні типи один в одне.'\n'View the source ($1) version of $2': 'Переглянути д ($1) версії $2'\n'View of original ($1) $2': 'Переглянути оригінал ($1) $2'\n'To return to the preview click here': 'Для повернення до перегляду клікніть тут'\n'This is the first translation of $1': 'Це перший переклад $1'\n'There is no article associated with the preview.': 'Немає статей асоційованих з переглядом'\n'There are $1 articles associated with $2 that will be merged.': ' $1 статей асоційовано з  $2 та буде об’єднано.'\n'The source article type ($1) does not have any articles.': 'Тип джерела статі ($1) не має ніяких статей.'\n'Source Article Type': 'Тип джерела статті'\n'Preview of $1': 'Перегляд $1'\n'Preview a sample of the merge configuration.': 'Попередній перегляд зразка конфігурації злиття.'\nNOTHING: НІЧОГО\n'Merge failed.': 'Злиття невдалося.'\n'Merge configuration for merging $1 into $2.': 'Конфігурація злиття для злиття $1 у $2.'\n'Merge Article Types: Step $1 of $2': 'Злиття типів статей: Крок $1 з $2'\n'Merge $1 into $2': 'Злити  $1 у $2'\n'Destination Article Type': 'Тип статті призначення'\n'Delete the source article type ($1) when finished.': 'Видалить тип джерела статті ($1), коли закінчите.'\n'Cycle through your articles to verify that the merge configuration is correct.': 'Через ваші статті  злиття циклічне, переконайтись що конфігурація злиття є правильною.'\n'Clicking Merge will merge ($1) article(s).': 'Натиснувши кнопку Обєднати зіллються ($ 1) статті (статей).'\n'Cannot merge a $1 field ($2) into a $3 field ($4).': 'Не вдається злити $1 поле ($2) у  $3 поле ($4).'\n'--None--': '--Нічого--'\n'(Null merge warning.)': '(Попереджень злиття немає)'\n'(No merge warning.)': '(Попередження про незлиття)'\n'(Duplicate warning.)': '(Попередження дублікацій)'\n'(!) Do NOT merge $1': '(!) Не зливаються $1'\n'$1 of $2': '$1 з $2'\nshow: Показати\nhide: Приховати\ndeactivate: деактивувати\nactivate: активувати\n'You must enter a name for the type.': 'Ви маєте ввести номер типу.'\n'You must choose a language for the article type.': 'Ви маєте вибрати мову типу статті.'\n'You do not have the right to rename article types.': 'Ви не маєте права перейменовувати типи статей.'\n'You do not have the right to merge article types.': 'Ви не маєте права об’єднувати типи статей.'\n'The translation could not be added.': 'Переклад не може бути додан.'\n'The article type $1 does not exist.': 'Тип статті $1 не існує'\n'Template Type Name': 'Назва типу шаблону'\n'Show to Authors?': null\n'Show article on section page': 'Показати статтю у цьому розділі'\n'Show article on front page': 'Показати статтю на головній'\n'Publish date': 'Дата опублікування'\nMerge!: Об’єднання!\n'Merge types': 'Типи об’єднання'\n'Merge article type': 'Об’єднати типи статей'\n'Link to public page': 'Посилання на загальнодоступну сторінку'\n'Go to Step 3': 'Їти до кроку 3'\n'Go to Step 2': 'Їти до кроку 2'\n'Display Name': 'Відображена назва'\n'Delete article type $1.': 'Видалити тип статті $1.'\n'Comments Enabled?': null\n'Back to Step 2': 'Назад до кроку 2'\n'Back to Step 1': 'Назад до кроку 1'\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': 'Ви впевнені, що хочете видалити статтю типу $1? ПОПЕРЕДЖЕННЯ: Видалення цього типу статтей призведе до видалення всіх статтей, повязані з статтею цього типу.'\n'Are you sure you want to $1 the article type $2?': 'Ви впевнені, що хочете до $1 тип статті $2?'\n'Are you sure you want to $1 comments for article type $2?': 'Ви впевнені, що хочете до $1 коментарі для статті типу $2?'\n'Allow users without subscriptions to view the article': 'Дозволити користувачам без підписок переглядати статтю'\n'Add translation:': 'Додати переклад:'\n'$1 comments for article type $2': '$1 коментарів до статі типу $2'\n'$1 comments for article type $1': '$1 коментарів до статті типу $1'\n'$1 article type $2': '$1 тип статті $2'\n'No article types.': 'Немає типів статей'\n'Delete article type $1': 'Видалити тип статті $1'\n'You do not have the right to add article types.': 'Ви не маєте прав додавати типи статей.'\n'Adding new article type': 'Додання нового типу статті'\n'The $1 field may only contain letters and underscore (_) character.': 'Поле $1 може містити тільки літери та символ підкреслення (_)'\n'The article type $1 already exists.': 'Тип статті $1 вже існує.'\n'You do not have the right to delete article types.': 'У Вас не має прав видаляти типи статей.'\n'The article type $1 could not be deleted.': 'Тип статті $1 не може бути видалений.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.vi.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': null\n'Show article on front page': null\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': null\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': null\n'Delete article type $1': null\n'You do not have the right to add article types.': null\n'Adding new article type': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'The article type $1 already exists.': null\n'You do not have the right to delete article types.': null\n'The article type $1 could not be deleted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.zh.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': 在区页显示文章\n'Show article on front page': 在首页显示文章\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': null\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': 无文章类型\n'Delete article type $1': 删除文章类型$1\n'You do not have the right to add article types.': 您无权增加文章类型\n'Adding new article type': 正在增加新文章类型\n'The $1 field may only contain letters and underscore (_) character.': $1字段只包括字母\n'The article type $1 already exists.': 文章类型$1已经存在\n'You do not have the right to delete article types.': 您权删除文章类型\n'The article type $1 could not be deleted.': 文章类型$1不能删除\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/article_types.zh_TW.yml",
    "content": "list: null\nfilter: null\n'Show in Article Lists?': null\n'Are you sure you want to $1 articles of article type $2?': null\n'$1 articles of article type $2': null\n'Hide human-readable field names': null\n'Edit and translate human-readable field names': null\n'The template name may only contain letters and the underscore (_) character.': null\n'Rename article type $1': null\n'Invalid article type $1.': null\n'You cannot merge the same type into itself.': null\n'View the source ($1) version of $2': null\n'View of original ($1) $2': null\n'To return to the preview click here': null\n'This is the first translation of $1': null\n'There is no article associated with the preview.': null\n'There are $1 articles associated with $2 that will be merged.': null\n'The source article type ($1) does not have any articles.': null\n'Source Article Type': null\n'Preview of $1': null\n'Preview a sample of the merge configuration.': null\nNOTHING: null\n'Merge failed.': null\n'Merge configuration for merging $1 into $2.': null\n'Merge Article Types: Step $1 of $2': null\n'Merge $1 into $2': null\n'Destination Article Type': null\n'Delete the source article type ($1) when finished.': null\n'Cycle through your articles to verify that the merge configuration is correct.': null\n'Clicking Merge will merge ($1) article(s).': null\n'Cannot merge a $1 field ($2) into a $3 field ($4).': null\n'--None--': null\n'(Null merge warning.)': null\n'(No merge warning.)': null\n'(Duplicate warning.)': null\n'(!) Do NOT merge $1': null\n'$1 of $2': null\nshow: null\nhide: null\ndeactivate: null\nactivate: null\n'You must enter a name for the type.': null\n'You must choose a language for the article type.': null\n'You do not have the right to rename article types.': null\n'You do not have the right to merge article types.': null\n'The translation could not be added.': null\n'The article type $1 does not exist.': null\n'Template Type Name': null\n'Show to Authors?': null\n'Show article on section page': null\n'Show article on front page': null\n'Publish date': null\nMerge!: null\n'Merge types': null\n'Merge article type': null\n'Link to public page': null\n'Go to Step 3': null\n'Go to Step 2': null\n'Display Name': null\n'Delete article type $1.': null\n'Comments Enabled?': null\n'Back to Step 2': null\n'Back to Step 1': null\n'Are you sure you want to delete the article type $1?  WARNING: Deleting this article type will delete all the articles associated with this article type.': null\n'Are you sure you want to $1 the article type $2?': null\n'Are you sure you want to $1 comments for article type $2?': null\n'Allow users without subscriptions to view the article': null\n'Add translation:': null\n'$1 comments for article type $2': null\n'$1 comments for article type $1': null\n'$1 article type $2': null\n'No article types.': null\n'Delete article type $1': null\n'You do not have the right to add article types.': null\n'Adding new article type': null\n'The $1 field may only contain letters and underscore (_) character.': null\n'The article type $1 already exists.': null\n'You do not have the right to delete article types.': null\n'The article type $1 could not be deleted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.ar.yml",
    "content": "'Edit metadata': null\nRating: تقييم\n'Enable Rating': 'تفعيل التقييم'\n'Blog management': 'إدارة المدونة'\n'View article': 'إعرض المقال'\n'Select a list': 'حدد قائمة'\n'Remove list': 'أزل قائمة'\n'Please select a list': 'يرجى الاختيار قائمة'\nPlaylist: 'قائمة التشغيل'\n'List updated.': 'تم تحديث القائمة.'\n'List saved': 'تم حفظ القائمة'\n'List Name': 'اسم القائمة'\n'List ID': 'هوية القائمة'\n'Item already exists in the list': 'البند موجود مسبقاً في القائمة'\n'Featured Articles': 'مقالات مميزة'\n'Featured Article Lists': 'فهارس المقالات المميزة'\n'Featured Article List': 'فهرس المقالات المميزة'\n'Duplicate list': 'قائمة مكررة'\n'Duplicate article entry found': 'تم العثور على ادخال مقال مكرر'\n'Drag here to add to list': 'اسحب هنا من أجل الإضافة إلى القائمة'\n'Could not save the list': 'لم تحفظ القائمة'\n'Available Articles': 'مقالات متوفرة'\n'Are you sure you want to delete this list?': 'هل أنت متأكد من حذف هذه القائمة؟'\n'Add to list': 'أضف إلى القائمة'\n'Add list': 'أضف قائمة'\n'Multi date events': 'أحداث ذات مواعيد متعددة'\nSlideshows: 'عروض الشرائح'\n'Place images': 'ضع الصور'\n'Youre not allowed to edit article.': 'لا يسمح لك أن تعدل المقالة'\nWebcode: 'كود الويب'\nUnapproved: 'غير موافق عليه'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'أما هذا العدد، لا يمكن أن ترى معاينته. يرجى التحقق أن تم تعيين نسق الى المنشور.'\n'The article could not be submitted.': 'لم يسلّم هذا المقال.'\n'Submit articles': 'سلم المقالات'\n'Submit article': 'سلم المقال'\n'Related Articles': 'مقالات ذات صلة :'\n'Pending articles': 'مقالات معلقة'\n'Pending Articles': 'مقالات معلقة'\n'Context Box updated': 'تم تحديث صندوق السياق'\nOn: 'قيد التشغيل'\nOff: 'قيد الإيقاف'\n'You do not have the right to moderate comments.': 'ليس لديك الحق في تعديل التعليقات.'\n'You can not schedule opposing events at the same time': 'لا يمكن جدولة أحداث معارضة في نفس الوقت'\n'Unable to reach Newscoop. Please check your internet connection.': 'غير قادر على الوصول إلى نيوسكوب. يرجى التحقق من اتصالك بالإنترنت.'\nTitle: العنوان\n'There already is an article with the same name. Please change the name and try again.': 'يوجد مقال يحمل الاسم نفسه. يرجى التغيير الاسم والمحاولة مرة أخرى.'\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': 'يرجى العلم بأنه سيتم حذف كافة الأحداث المجدولة للنشر لهذه المقالة عند تعيين المقالة كحالة New. يرجى تأكيد تغيير الحالة.'\nGeolocation: 'الموقع الجغرافي'\nNewscoop: نيوسكوب\n'Overwrite articles with matching names': 'إستبدل المقالات بأسماء متطابقة.'\n'Article <i>$1</i> already exists, and was not overwritten.<br />': 'المقالة <i>$1</i> موجودة من قبل، ولم يكتب فوقها. <br />'\nFiles: ملفات\n'Select section:': 'اختر القسم'\n'Add another author': 'أضف مؤلف آخر'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'تم تأمين المقال من $1 ($2) $3 دقائق مضت.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'تم تأمين المقال من $1 ($2) $3 ساعة(-ات) و $4 دقائق مضت.'\n'Switches saved.': 'تم حفظ التبديلات.'\n'Keywords saved.': 'تم حفظ الكلمات الدالة.'\n'Comment settings': 'إعدادات التعليقات'\nAuthors: المؤلفون\n'Attach Topic To Article': 'أرفق الموضوع بالمقال'\n'Article saved.': 'تم حفظ المقال.'\n'Article is locked': 'تم تأمين المقال'\n'Actions updated.': 'تم تحديث الإجراءات.'\n'Your work has not been saved. Do you want to continue and lose your changes?': 'لم  يتم حفظ عملك. هل تريد المواصلة فقد تفقد التغييرات؟'\nSwitches: التبديلات\n'No subtopics available': 'لا يتوفر أي موضوعات فرعية'\n'Newscoop Subhead': 'عنوان فرعي لـ نيوسكوب.'\nMedia: 'وسائل الإعلام'\n'Last modified': 'آخر تعديل'\n'Keywords &amp; Topics': 'الكلمات الدالة والموضوعات'\nInfo: معلومات\n'Go to live article': 'إذهب الى المقال الحي'\nCreated: 'تم الإنشاء'\n'Are you sure you want to remove the map from the article?': 'هل أنت متأكد أنك تريد إزالة الخريطة من المقال؟'\n'Scheduled action added': 'تم إضافة الإجراء المجدول'\n'Content edited': 'تم تحرير المحتوى'\n'You must select an article language.': 'يجب عليك تحديد لغة المقال.'\n'You must select a publication.': 'يجب عليك تحديد منشور.'\n'You must select a file to upload.': 'يجب عليك تحديد ملف للرفع.'\n'You must select a XML input file.': 'يجب عليك تحديد ملف XML للإدخال.'\n'You do not have the right to import XML archives.': 'ليس لديك الحق في استيراد أرشيفات XML.'\n'There was a problem uploading the file.': 'حدثت مشكلة في رفع الملف.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'كان جزئيا فقط تحميل الملف الذي تم تحميله. وهذا أمر شائع عند الحد الأقصى للوقت برفع ملف منخفض على النقيض من حجم الملف الذي تحاول الإدخال. يتم تحديد أقصى وقت لإدخال في ملف php.ini'\n'The file exceeds the allowed max file size.': 'يتجاوز الملف الحد الأقصى المسموح لحجم الملف.'\nOptional: اختياري\n'Input File': 'ملف الإدخال'\n'Import XML': 'استيراد XML'\n'File is not a valid XML file.': 'الملف ليس ملف XML صالح.'\n'File does not exist.': 'الملف غير موجود.'\n'File could not be uploaded.': 'لم يرفع الملف'\n'File could not be read.': 'لم يقرأ الملف.'\n'Error List': 'قائمة الأخطاء'\n'Bad format in XML file.': 'تنسيق سيئ في ملف XML.'\n'Article could not be created.': 'لم ينشئ المقال.'\n'---Select article type---': '---اختر نوع المقال---'\n'$1 articles successfully imported.': 'تم استيراد $1 مقالات بنجاح.'\nSaved: 'تم الحفظ'\n'Save All': 'إحفظ الكل'\n'Online Server: On': 'الخادم على الانترنت: قيد التشغيل'\n'Online Server: Off': 'الخادم على الانترنت: قيد الإيقاف'\nDownload: حمل\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': 'لا يمكن أن تحمل مقالتين نفس الاسم في نفس القسم. اسم المقالة الذي حددته قيد الاستخدام من قبل من المقالة $1.'\n'Visible to non-subscribers': 'قابل للنظر لغير المشتركين'\n'The article could not be published.': 'لم ينشر المقال.'\n'Scheduled action deleted.': 'تم حذف الإجراء المجدول.'\n'Scheduled action added.': 'تم إضافة الإجراء المجدول.'\n'Article(s) unlocked.': 'المقال(-ات) غير مؤمّن(ة) ـ'\n'Article(s) duplicated.': 'تم تكرار المقال (-ات).'\n'Article(s) deleted.': 'تم حذف المقال (-ات).'\n'Article status set to $1': 'تم تعيين حالة المقالة الى $1.'\n'Article unlocked.': 'المقال غير مؤمّن.'\n'Article translation created.': 'تم إنشاء ترجمة المقال.'\n'Article order changed.': 'تم تغيير ترتيب المقالات.'\n'Article moved.': 'تم نقل المقال.'\n'Article deleted.': 'تم حذف المقال.'\n'Article created.': 'تم إنشاء المقال.'\n'$1 toggled.': 'تم تبديل $1.'\n'Total:': 'المجموع:'\n'Show Comments': 'أظهر التعليقات'\nLocked: 'تم التأمين.'\n'Invalid type: $1': 'نوع غير صالح: $1.'\n'Hide Comments': 'أخف التعليقات'\nEnabled: 'تم تفعيل'\nDisabled: 'تم المنع من العمل'\nComments: تعليقات\n'The article has already been translated into $1.': 'تم ترجمة المقال مسبقاً في $1.'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'يجب عليك تحديد المنشور والاصدار والقسم لهذه المقالة قبل جدولتها للنشر. إذهب إلى قائمة $1 واختر $2 لفعل هذا.'\n'You do not have the right to translate articles.': 'ليس لديك الحق في ترجمة مقالات.'\n'You do not have the right to publish articles.': 'ليس لديك الحق في نشر مقالات.'\n'You do not have the right to move articles.': 'ليس لديك الحق في نقل مقالات.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'لا يمكنك $1 المقالات المحددة باللون الأحمر لان لم يتم ترجمة العدد المستهدف في للغة المناسبة.'\n'Publish?': 'يتم النشر؟'\n'Publish articles': 'إنشر المقالات.'\n'Publish article': 'إنشر المقال.'\n'Move?': 'يتم النقل؟'\n'Move articles': 'إنقل المقالات.'\n'Move article': 'إنقل المقال.'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'يجب أن ينشئ عدد للغة المختارة ولكن ليس لديك الحق في إنشاء عدد.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'يجب أن ينشئ قسم للغة المختارة ولكن ليس لديك الحق في إنشاء قسم.'\n'to section': 'إلى قسم'\n'You must choose a language': 'يجب عليك إختيار لغة'\n'Unable to create the section for translation $1.': 'غير قادر على إنشاء القسم للترجمة $1.'\n'Unable to create the issue for translation $1.': 'غير قادر على إنشاء العدد للترجمة $1.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'المقالات التالية جديدة. لا يمكن جدولتها للنشر الاّلي.'\n'Section URL Name': 'اسم الرابط للقسم'\n'Section Name': 'اسم القسم'\n'Publish Schedule': 'جدول النشر'\n'No action specified': 'لم يحدد إجراء'\n'New section name': 'اسم قسم جديد'\n'New section URL name': 'اسم الرابط لقسم جديد'\n'New issue name': 'اسم عدد جديد'\n'New issue URL name': 'اسم الرابط لعدد جديد'\n'New article name': 'اسم مقال جديد'\n'Issue URL Name': 'اسم الرابط للعدد'\n'Issue Name': 'اسم العدد'\n'Duplicate?': 'يتم التكرار؟'\n'Duplicate articles': 'مقالات مكررة'\n'Article name ($1)': 'اسم المقال ($1)'\n'Article List': 'قائمة المقالات'\n'Are you sure you want to remove the topic $1 from the article?': 'هل أنت متأكد من إزالة الموضوع $1 من المقال؟'\n'Are you sure you want to remove the file $1 from the article?': 'هل أنت متأكد من إزالة الملف $1 من المقال؟'\n'Are you sure you want to remove the event scheduled on $1?': 'هل أنت متأكد من إزالة الحدث المجدول في $1؟'\n'Are you sure you want to delete this article?': 'هل أنت متأكد من إزالة هذا المقال؟'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'يجب إنشاء عدد للغة المختارة. يرجى إدخال اسم العدد وعنوان الرابط.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'يجب إنشاء قسم للغة المختارة. يرجى إدخال اسم القسم وعنوان الرابط.'\n'Article Type': 'نوع المقال'\n'Show article on front page': 'عرض المقال في الصفحة الأمامية'\n'Show article on section page': 'عرض المقال في صفحة الأقسام'\n'Translate article': 'ترجم المقال'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'ليس لديك الحق في تغيير هذا المقال. يسمح لك تعديل فقط المقالات الخاصة بك وعند التسليم يمكن تغير المقالات فقط من مستخدمين مفوضين.'\n'Duplicate article': 'مقال مكرر'\n'The destination section is the same as the source section.': 'القسم المستهدف هو نفس القسم المصدر'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'المقال جديد. لا يمكن جدولته للنشر الأوتوماتي.'\n'No article types were defined. You must create an article type first.': 'لم يحدد أي نوع مقال. يرجى إنشاء نوع مقال أولا.'\n'Edit article types': 'عدل أنواع مقال'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'لم يحفظ المقال. لقد تم تأمين المقال بواسطة $1 منذ $2 ساعات و $3 دقائق.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'ليس لديك الحق في تغيير حالة هذا المقال. عند التسليم، يمكن فقط المستخدمون المفوضون أن يغيروا المقال.'\n'You do not have the right to delete articles.': 'ليس لديك الحق في حذف مقالات.'\n'You must select an article type.': 'يحب عليك إختيار نوع مقال.'\n'Are you sure you want to remove the image $1 from the article?': 'هل أنت متأكد من إزالة الصورة $1 من المقال؟'\n'There was an error reading request parameters.': 'حدث خطأ أثناء قراءة متغيرات الطلب'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'لا يمكن معاينة هذا المقال. يرجى التأكد أن نموذج المقال مختار.'\n'No such article.': 'لا يوجد مثل هذا المقال.'\n'No such section.': 'لا يوجد القسم.'\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.az.yml",
    "content": "'Edit metadata': 'Meta-məlumatı dəyiş'\nRating: Qiymətləndirmə\n'Enable Rating': 'Qiymətləndirməyə İcazə Ver'\n'Blog management': 'Bloqun idarə edilməsi'\n'View article': 'Məqaləyə bax'\n'Select a list': 'Siyahı seç'\n'Remove list': 'Siyahını xaric et'\n'Please select a list': 'Lütfən, siyahı seç'\nPlaylist: Pleylist\n'List updated.': 'Siyahı yeniləndi.'\n'List saved': 'Siyahı saxlandı'\n'List Name': 'Siyahı Adı'\n'List ID': 'Siyahı ID-si'\n'Item already exists in the list': 'Element artıq siyahıdadır'\n'Featured Articles': 'Seçilmiş Məqalələr'\n'Featured Article Lists': 'Seçilmiş Məqalə Siyahıları'\n'Featured Article List': 'Seçilmiş Məqalə Siyahısı'\n'Duplicate list': 'Siyahının surətini çıxar'\n'Duplicate article entry found': 'Məqalə girişinin surəti tapıldı'\n'Drag here to add to list': 'Siyahıya əlavə etmək üçün bura sürüşdür'\n'Could not save the list': 'Siyahı saxlana bilmədi'\n'Available Articles': 'Mövcud Məqalələr'\n'Are you sure you want to delete this list?': 'Bu siyahını silmək istədiyinə əminsən?'\n'Add to list': 'Siyahıya əlavə et'\n'Add list': 'Siyahı əlavə et'\n'Multi date events': 'Bir neçə günlük tədbirlər'\nSlideshows: Slayd-şoular\n'Place images': 'Şəkilləri yerləşdir'\n'Youre not allowed to edit article.': 'Məqaləni dəyişməyə ixtiyarın yoxdur.'\nWebcode: Vebşifrə\nUnapproved: Təsdiqlənməmiş\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Bu məsələyə ön baxış etmək mümkün deyil. Lütfən, nəşrə təyin edilmiş mövzunun mövcudluğuna əmin ol.'\n'The article could not be submitted.': 'Məqalə daxil edilə bilmədi.'\n'Submit articles': 'Məqalə daxil et'\n'Submit article': 'Məqalə daxil et'\n'Related Articles': 'Uyğun Məqalələr'\n'Pending articles': 'Gözləmədəki məqalələr'\n'Pending Articles': 'Gözləmədəki Məqalələr'\n'Context Box updated': 'Kontekst Qutusu yeniləndi'\nOn: Açıq\nOff: Qapalı\n'You do not have the right to moderate comments.': 'Şərhləri idarə etməyə ixtiyarın yoxdur.'\n'You can not schedule opposing events at the same time': 'Ziddiyyət təşkil edən tədbirləri eyni vaxta planlaşdıra bilməzsən'\n'Unable to reach Newscoop. Please check your internet connection.': 'Newscoop-a keçmək mümkün deyil. Lütfən, internet bağlantını yoxla.'\nTitle: Başlıq\n'There already is an article with the same name. Please change the name and try again.': 'Eyndi adlı məqalə artıq mövcuddur. Lütfən, adı dəyiş və yenidən sına.'\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': 'Lütfən, nəzərə al ki, bu məqaləyə Yeni dövlət quraşdırdıqda məqaləyə aid olan nümayiş edilmiş bütün tədbirlər silinəcək. Lütfən, dövlət dəyişikliyini təsdiqlə.'\nGeolocation: Xəritə\nNewscoop: Newscoop\n'Overwrite articles with matching names': 'Məqalələri uyğun adlarla yenidən yaz'\n'Article <i>$1</i> already exists, and was not overwritten.<br />': '<i>$1</i> məqaləsi artıq mövcuddur və yenidən yazılbayıb.<br />'\nFiles: Fayllar\n'Select section:': 'Bölmə seç:'\n'Add another author': 'Başqa müəllif əlavə et'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Məqalə $3 dəqiqə əvvəl $1 ($2) tərəfindən kilidlənib.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Məqalə $3 saat $4 dəqiqə əvvəl $1 ($2) tərəfindən kilidlənib.'\n'Switches saved.': 'Dəyişikliklər saxlandı.'\n'Keywords saved.': 'Açar sözlər saxlandı.'\n'Comment settings': 'Şərh parametrləri'\nAuthors: Müəlliflər\n'Attach Topic To Article': 'Məqaləyə Mövzu Əlavə Et'\n'Article saved.': 'Məqalə saxlandı.'\n'Article is locked': 'Məqalə kilidləndi'\n'Actions updated.': 'Fəaliyyətlər yeniləndi.'\n'Your work has not been saved. Do you want to continue and lose your changes?': 'Gördüyün iş saxlanmadı. Davam etmək və dəyişikliklərini itirmək istəyirsən?'\nSwitches: Dəyişikliklər\n'No subtopics available': 'Alt mövzu mövcud deyil'\n'Newscoop Subhead': 'Newscoop Bölmə Başlığı'\nMedia: Mətbuat\n'Last modified': 'Son redaktələr'\n'Keywords &amp; Topics': 'Açar Sözlər &amp; Mövzular'\nInfo: Məlumat\n'Go to live article': 'Canlı məqaləyə keç'\nCreated: Yaradıldı\n'Are you sure you want to remove the map from the article?': 'Xəritəni məqalədən xaric etmək istədiyinə əminsən?'\n'Scheduled action added': 'Planlaşdırılmış fəaliyyət əlavə edildi'\n'Content edited': 'Məzmun dəyişdirildi'\n'You must select an article language.': 'Məqaləyə dil seçməlisən.'\n'You must select a publication.': 'Nəşr seçməlisən.'\n'You must select a file to upload.': 'Yükləmək üçün fayl seçməlisən.'\n'You must select a XML input file.': 'XML giriş faylı seçməlisən.'\n'You do not have the right to import XML archives.': 'XML arxivini daxil etməyə ixtiyarın yoxdur.'\n'There was a problem uploading the file.': 'Faylın yüklənməsi ilə bağlı problem var idi.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Fayl yarımçıq yüklənmişdir. Adətən bu hadisə yükləmək istədiyiniz faylın ölçüsü ilə onun yüklənəcəyi zaman arasında tərs mütənasiblik olduqda baş verir. Faylın maksimal yüklənmə zamanı php.ini-də təqdim edilir'\n'The file exceeds the allowed max file size.': 'Faylın ölçüsü icazə verilən maksimal ölçünü keçir.'\nOptional: Könüllü\n'Input File': 'Giriş Faylı'\n'Import XML': 'XML Daxil Et'\n'File is not a valid XML file.': 'Bu düzgün XML fayl deyil.'\n'File does not exist.': 'Fayl mövcud deyil.'\n'File could not be uploaded.': 'Fayl yüklənə bilmədi.'\n'File could not be read.': 'Fayl oxuna bilmədi.'\n'Error List': 'Xəta Siyahısı'\n'Bad format in XML file.': 'XML faylda pis format.'\n'Article could not be created.': 'Məqalə yaradıla bilmədi.'\n'---Select article type---': '---Məqalə növünü seç---'\n'$1 articles successfully imported.': '$1 məqalələr uğurla daxil edildi.'\nSaved: Saxlandı\n'Save All': 'Hamısını Saxla'\n'Online Server: On': 'Onlayn Server: Açıq'\n'Online Server: Off': 'Onlayn Server: Qapalı'\nDownload: Endir\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': 'Eyni bölmədə eyni adlı iki məqaləyə sahib ola bilməzsən. Təklif etdiyin məqalə adı artıq $1 məqaləsi tərəfindən istifadədədir.'\n'Visible to non-subscribers': 'Abunə olmayanlara görünür'\n'The article could not be published.': 'Məqalə nümayiş etdirilə bilmədi.'\n'Scheduled action deleted.': 'Planlaşdırılmış fəaliyyət silindi.'\n'Scheduled action added.': 'Planlaşdırılmış fəaliyyət əlavə edildi.'\n'Article(s) unlocked.': 'Məqalə(lər) kilidi açıldı.'\n'Article(s) duplicated.': 'Məqalə(lər)in surəti çıxarıldı.'\n'Article(s) deleted.': 'Məqalə(lər) silindi.'\n'Article status set to $1': 'Məqalə statusu $1 olaraq təyin edildi'\n'Article unlocked.': 'Məqalənin kilidi açıldı.'\n'Article translation created.': 'Məqalə tərcüməsi yaradıldı.'\n'Article order changed.': 'Məqalə sıralaması dəyişdirildi.'\n'Article moved.': 'Məqalə köçürüldü.'\n'Article deleted.': 'Məqalə silindi.'\n'Article created.': 'Məqalə yaradıldı.'\n'$1 toggled.': '$1 keçirildi.'\n'Total:': 'Cəmi:'\n'Show Comments': 'Şərhləri Göstər'\nLocked: Kilidləndi\n'Invalid type: $1': 'Səhv növ: $1'\n'Hide Comments': 'Şərhləri Gizlə'\nEnabled: 'İcazə Verildi'\nDisabled: 'Qadağa Edildi'\nComments: Şərhlər\n'The article has already been translated into $1.': 'Məqalə artıq $1 dilinə tərcümə edilib.'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'Məqalənin nəşrini planlamazdan əvvəl onun üçün nəşr, məsələ və bölmə seçməlisən. $1 menyusuna get və bunu etmək üçün $2 seç.'\n'You do not have the right to translate articles.': 'Məqalələri tərcümə etməyə ixtiyarın yoxdur.'\n'You do not have the right to publish articles.': 'Məqalələri nümayiş etdirməyə ixtiyarın yoxdur.'\n'You do not have the right to move articles.': 'Məqalələri köçürməyə ixtiyarın yoxdur.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'Son çatma məsələsi münasib dilə tərcümə edilməmiş qırmızı işarələnmiş məqalələri $1 bilməzsən.'\n'Publish?': 'Nümayiş edirsən?'\n'Publish articles': 'Məqalələri nümayiş et'\n'Publish article': 'Məqaləni nümayiş et'\n'Move?': 'Köçürürsən?'\n'Move articles': 'Məqalələri köçür'\n'Move article': 'Məqaləni köçür'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'Seçilmiş dil üçün məsələ yaradılmalıdır, amma sənin bunu etməyə ixtiyarın yoxdur.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'Seçilmiş dil üçün bölmə yaradılmalıdır, amma sənin bunu etməyə ixtiyarın yoxdur.'\n'to section': bölməyə\n'You must choose a language': 'Dil seçməlisən'\n'Unable to create the section for translation $1.': '$1 tərcüməsi üçün bölmə yaratmaq mümkün deyil.'\n'Unable to create the issue for translation $1.': '$1 tərcüməsi üçün məsələ yaratmaq mümkün deyil.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'Növbəti məqalələr yenidir; onları avtomatik nəşr üçün planlaşdırmaq mümkün deyil'\n'Section URL Name': 'Bölmənin URL Adı'\n'Section Name': 'Bölmə Adı'\n'Publish Schedule': 'Planı Nümayiş Et'\n'No action specified': 'Heç bir fəaliyyət qeyd edilmir'\n'New section name': 'Yeni bölmə adı'\n'New section URL name': 'Yeni bölmə URL adı'\n'New issue name': 'Yeni məsələ adı'\n'New issue URL name': 'Yeni məsələ URL adı'\n'New article name': 'Yeni məqalə adı'\n'Issue URL Name': 'Məsələ URL Adı'\n'Issue Name': 'Məsələ Adı'\n'Duplicate?': 'Surəti çıxarılsın?'\n'Duplicate articles': 'Məqalələrin surətini çıxar'\n'Article name ($1)': 'Məqalə adı ($1)'\n'Article List': 'Məqalə Siyahısı'\n'Are you sure you want to remove the topic $1 from the article?': '$1 mövzusunu məqalədən xaric etmək istədiyinə əminsən?'\n'Are you sure you want to remove the file $1 from the article?': '$1 faylını məqalədən xaric etmək istədiyinə əminsən?'\n'Are you sure you want to remove the event scheduled on $1?': '$1 tarixinə planlaşdırılmış tədbiri xaric etmək istədiyinə əminsən?'\n'Are you sure you want to delete this article?': 'Bu məqaləni silmək istədiyinə əminsən?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'Seçilmiş dil üçün məsələ yaradılmalıdır. Lütfən, məsələ adını və URL adını daxil et.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'Seçilmiş dil üçün bölmə yaradılmalıdır. Lütfən, bölmə adı və URL adını daxil et.'\n'Article Type': 'Məqalə Növü'\n'Show article on front page': 'Ön səhifədə məqalə göstər'\n'Show article on section page': 'Bölmə səhifəsində məqalə göstər'\n'Translate article': 'Məqaləni tərcümə et'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'Bu məqaləni dəyişməyə ixtiyarın yoxdur. Sən yalnız öz məqalələrinə dəyişiklik edə bilərsən və bu əməliyyat edildikdən sonra səlahiyyətli istifadəçilər bunu dəyişə bilərlər.'\n'Duplicate article': 'Məqalənin surətini çıxar'\n'The destination section is the same as the source section.': 'Son çatma ünvanı mənbə ünvünı ilə eynidir.'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'Məqalə yenidir; onu avtomatik nəşrə planlaşdırmaq mümkün deyil.'\n'No article types were defined. You must create an article type first.': 'Heç bir məqalə növü müəyyən edilmədi. İlk olaraq məqalə növü yaratmalısan.'\n'Edit article types': 'Məqalə növlərini dəyiş'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Məqalə saxlana bilmədi. O $2 saat $3 dəqiqə əvvəl $1 tərəfindən kilidlənib.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Bu məqalənin statusunu dəyişməyə ixtiyarın yoxdur. Məqalə daxil edildikdən sonra yalnız səlahiyyətli istifadəçilər tərəfindən dəyişdirilə bilər.'\n'You do not have the right to delete articles.': 'Məqalə silməyə ixtiyarın yoxdur.'\n'You must select an article type.': 'Məqalə növü seçməlisən.'\n'Are you sure you want to remove the image $1 from the article?': '$1 şəklini məqalədən xaric etmək istədiyinə əminsən?'\n'There was an error reading request parameters.': 'Soruğu parametrlərinin oxunmasında xəta baş verdi.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'Məqaləyə ön baxış etmək mümkün deyil. Lütfən, ona məxsus seçilmiş məqalə nümunəsinin mövcudluğuna əmin ol.'\n'No such article.': 'Belə məqalə yoxdur.'\n'No such section.': 'Belə bölmə yoxdur.'\nCharacters: İşarələr\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: 'Şəkilin metaməlumatıdı dəyiş'\n            save: null\n            form:\n                use: İstifadə\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: 'Seçilən yazı'\n                global: null\n                other_captions: Şəkilaltılar\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.be.yml",
    "content": "'Edit metadata': 'змяніць метададзеныя'\nRating: Рэйтынг\n'Enable Rating': 'Актывізіраваць рэйтынг'\n'Blog management': 'Кіраванне блогамі'\n'View article': 'Прагляд артыкула'\n'Select a list': 'Вылучыць спіс'\n'Remove list': 'Выдаліць спіс'\n'Please select a list': 'Калі ласка, вылучыце спіс'\nPlaylist: Плэйліст\n'List updated.': 'Абноўлены спіс.'\n'List saved': 'Захаваны спіс.'\n'List Name': 'Назва спісу'\n'List ID': 'ID спісу'\n'Item already exists in the list': 'Гэты пункт ужо ёсць у спісе'\n'Featured Articles': 'Выбраныя артыкулы'\n'Featured Article Lists': 'Спісы Выбраных артыкулаў'\n'Featured Article List': 'Спіс Выбраных артыкулаў'\n'Duplicate list': 'Дубляваць спіс'\n'Duplicate article entry found': 'Дубляваць знойдзены артыкул'\n'Drag here to add to list': 'Перацягнуць у спіс'\n'Could not save the list': 'Не атрымалася захаваць спіс'\n'Available Articles': 'Даступныя артыкулы'\n'Are you sure you want to delete this list?': 'Вы ўпэўненыя, што жадаеце выдаліць гэты спіс?'\n'Add to list': 'Дадаць у спіс'\n'Add list': 'Дадаць спіс'\n'Multi date events': 'Каляндар падзей'\nSlideshows: Слайдшоў\n'Place images': 'Размясціць выявы'\n'Youre not allowed to edit article.': 'У вас няма правоў каб рэдагаваць гэты артыкул.'\nWebcode: Web-код\nUnapproved: 'Не зацверджана'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Немагчыма зрабіць папярэдні прагляд выпуску. Калі ласка, пераканайцеся, што для выдання існуе патрэбная тэма (шаблон).'\n'The article could not be submitted.': 'Немагчыма адправіць артыкул.'\n'Submit articles': 'Адправіць артыкулы'\n'Submit article': 'Адправіць артыкул'\n'Related Articles': 'Артыкулы па тэме'\n'Pending articles': 'Незакончаныя артыкулы'\n'Pending Articles': 'Незакончаныя артыкулы'\n'Context Box updated': 'Кантэкстны блок адноўлены '\nOn: Укл.\nOff: Выкл.\n'You do not have the right to moderate comments.': 'У вас няма правоў для мадэрацыі каментароў.'\n'You can not schedule opposing events at the same time': 'Немагчыма запланаваць супрацьлеглыя мерапрыемствы адначасова'\n'Unable to reach Newscoop. Please check your internet connection.': 'Немагчыма звязацца з Newscoop. Калі ласка, праверце ваша інтэрнэт-злучэнне.'\nTitle: Загаловак\n'There already is an article with the same name. Please change the name and try again.': 'Артыкул з такой назвай ужо існуе. Калі ласка, зьмяніце назву і зрабіце яшчэ адну спробу.'\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': 'Для звесткі: усе запланаваныя дзеянні для гэтага артыкула будуць выдаленыя, як толькі для артыкула будзе прызначаны статус Новая. Калі ласка, пацвердзіце змену статусу.'\nGeolocation: 'Вызначэньне месца на карце'\nNewscoop: Newscoop\n'Overwrite articles with matching names': 'Перапісаць артыкулы з адпаведнымі імёнамі'\n'Article <i>$1</i> already exists, and was not overwritten.<br />': 'Артыкул <i> $1</ i> ужо існуе і не быў перазапісаны. <br />'\nFiles: Файлы\n'Select section:': 'Выберыце раздзел'\n'Add another author': 'Дадаць аўтара'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Гэты артыкул быў заблакаваны $1 ($2) $3 хвілін таму.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Гэты артыкул быў заблакаваны $1 ($2) $3 гадзін і $4 хвілін таму.'\n'Switches saved.': 'Статут маркераў захаваны.'\n'Keywords saved.': 'Ключавыя словы захаваныя'\n'Comment settings': 'Наладкі каментаваньня'\nAuthors: Аўтары\n'Attach Topic To Article': 'Прымацаваць тэму да артыкула'\n'Article saved.': 'Змесціва артыкула захаванае.'\n'Article is locked': 'Артыкул заблакаваны'\n'Actions updated.': 'Дзеянне абноўленае.'\n'Your work has not been saved. Do you want to continue and lose your changes?': 'Вашы дзеянні на сайце не былі захаваныя. Ці жадаеце Вы працягнуць і страціць зробленыя змяненні?'\nSwitches: Маркеры\n'No subtopics available': 'Няма даступных падтем для выкарыстання'\n'Newscoop Subhead': 'Падзагаловак Newscoop'\nMedia: Медыя\n'Last modified': 'Апошнія змяненні'\n'Keywords &amp; Topics': 'Ключавыя словы & Тэмы'\nInfo: Інфармацыя\n'Go to live article': 'Перайсці да актыўнага артыкула'\nCreated: Створаная\n'Are you sure you want to remove the map from the article?': 'Вы ўпэўненыя, што жадаеце выдаліць гэтую карту з артыкула?'\n'Scheduled action added': 'Запланаванае дзеянне дададзена'\n'Content edited': 'Запланаванае дзеянне дададзенае'\n'You must select an article language.': 'Вы павінны выбраць мову артыкула.'\n'You must select a publication.': 'Вы павінны выбраць выданне.'\n'You must select a file to upload.': 'Вы павiнны выбраць файл для загрузкi.'\n'You must select a XML input file.': 'Вы павінны выбраць уваходны XML-файл'\n'You do not have the right to import XML archives.': 'У вас няма правоў доступу для імпартавання  XML архіваў.'\n'There was a problem uploading the file.': 'Праблема загрузкі файла.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Загружаны файл захаваны на сервер часткова. Гэта звязана з тым, што максімальна дапушчальны час загрузкі файла пераўзыходзіць час, неабходны для загрузкі гэтага файла. Максімальны час загрузкі вызначаны ў файле php.ini'\n'The file exceeds the allowed max file size.': 'Памер гэтага файла пераўзыходзіць дапушчальны.'\nOptional: Неабавязковае\n'Input File': 'Уваходны файл'\n'Import XML': 'Імпарт XML'\n'File is not a valid XML file.': 'Гэты файл не зяўляецца XML-файлам'\n'File does not exist.': 'Такі файл не існуе'\n'File could not be uploaded.': 'Немагчыма загрузіць дадзены файл.'\n'File could not be read.': 'Немагчыма прачытаць дадзены файл'\n'Error List': 'Спіс памылак'\n'Bad format in XML file.': 'Няправільны фармат файла'\n'Article could not be created.': 'Артыкул не можа быць створаны'\n'---Select article type---': '---Выберыце тып артыкула---'\n'$1 articles successfully imported.': '$1 артыкулы паспяхова імпартаваныя.'\nSaved: Захаванае\n'Save All': 'Захаваць усё'\n'Online Server: On': 'Сервер ён-лайн: уключаны'\n'Online Server: Off': 'Сервер ён-лайн: выключаны'\nDownload: Загрузіць\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': 'Вы ня можаце мець два артыкулы ў адной рубрыцы з аднолькавай назвай. Азначаная назва ўжо выкарыстоўваецца артыкулам $1.'\n'Visible to non-subscribers': 'Вiдаць ня толькi падпiсчыкам'\n'The article could not be published.': 'Артыкул ня можа быць апублiкаваны.'\n'Scheduled action deleted.': 'Заплянаванае дзеяньне адмененае.'\n'Scheduled action added.': 'Заплянаванае дзеяньне дадана.'\n'Article(s) unlocked.': 'Артыкул(ы) заблякаваныя.'\n'Article(s) duplicated.': 'Артыкул(ы) прадубляваныя.'\n'Article(s) deleted.': 'Артыкулы выдаленыя.'\n'Article status set to $1': 'Статус артыкула ўстаноўлены  ў $1 '\n'Article unlocked.': 'Артыкул разблякаваны.'\n'Article translation created.': 'Пераклады артыкула створаныя.'\n'Article order changed.': 'Парадак артыкулаў зьменены.'\n'Article moved.': 'Артыкул перамешчаны.'\n'Article deleted.': 'Артыкул выдалены.'\n'Article created.': 'Артыкул створаны.'\n'$1 toggled.': '$1 зьменена.'\n'Total:': 'Усяго:'\n'Show Comments': 'Паказаць камэнтары'\nLocked: Заблякавана\n'Invalid type: $1': 'Няправiльны тып: $1'\n'Hide Comments': 'Схаваць камэнтары'\nEnabled: Дазволена\nDisabled: Забаронена\nComments: Камэнтары\n'The article has already been translated into $1.': 'Артыкул ужо быў перакладены на $1.'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': null\n'You do not have the right to translate articles.': 'Вы ня маеце правоў  перакладаць рубрыкі.'\n'You do not have the right to publish articles.': 'Вы ня маеце правоў  публiкаваць артыкулы.'\n'You do not have the right to move articles.': 'Вы ня маеце правоў перамяшчаць артыкулы.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'Вы ня можаце $1 артыкулы, якiя азначаныя чырвоным колерам, таму што выпуск прызначэньня не перакладзены на адпаведную мову'\n'Publish?': 'Апублiкаваць?'\n'Publish articles': 'Апублiкаваць артыкулы'\n'Publish article': 'Апублiкаваць артыкул'\n'Move?': 'Перанесьцi?'\n'Move articles': 'Перанесьцi артыкулы'\n'Move article': 'Перанесьцi артыкул'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'Выпуск павiнен быць створаны для выбранай мовы, але Вы ня маеце правоў доступу для стварэньня выпуску.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'Павiнна быць створана рубрыка для абранай мовы, але Вы не маеце правоў доступу дзеля ставрэння рубрыцы.'\n'to section': 'да рубрыцы'\n'You must choose a language': 'Вы павiнны вызначыць мову'\n'Unable to create the section for translation $1.': 'Немагчыма стварыць рубрыку для перакладу $1.'\n'Unable to create the issue for translation $1.': 'Немагчыма стварыць выпуск для перакладу $1.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'Дадзеныя артыкулы новыя; немагчыма прызначыць iх для аўтаматычнага публiкаваньня'\n'Section URL Name': 'Назва URL рубрыкі'\n'Section Name': 'Назва рубрыкі'\n'Publish Schedule': 'Расклад публікацый'\n'No action specified': 'Дзеяньнi ня вызначаныя'\n'New section name': 'Назва новай рубрыкі'\n'New section URL name': 'Назва URL новай рубрыцы'\n'New issue name': 'Назва новага выпуску'\n'New issue URL name': 'Назва URL новага выпуску'\n'New article name': 'Назва новага артыкула'\n'Issue URL Name': 'Назва URL выпуску'\n'Issue Name': 'Назва выпуску'\n'Duplicate?': 'Дубляваць?'\n'Duplicate articles': 'Дубляваць артыкул'\n'Article name ($1)': 'Назва артыкула ($1)'\n'Article List': 'Сьпiс артыкулаў'\n'Are you sure you want to remove the topic $1 from the article?': 'Цi Вы ўпэўненыя, што жадаеце выдалiць тэму $1 з артыкула?'\n'Are you sure you want to remove the file $1 from the article?': 'Цi Вы ўпэўненыя, што жадаеце выдалiць файл $1 з артыкула?'\n'Are you sure you want to remove the event scheduled on $1?': 'Ці Вы ўпэўнены, што хочаце выдалiць дзеяньне, прызначанае на $1?'\n'Are you sure you want to delete this article?': 'Цi Вы ўпэўненыя, што жадаеце выдалiць гэты артыкул?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'Выпуск павiнен быць створаны для выбранай мовы. Калі ласка, увядзеце назву выпуску і назву URL. '\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'Рубрыка павiнна быць створаная для выбранай мовы. Калi ласка, увядзеце назву рубрыкі і назву URL.'\n'Article Type': 'Тып артыкула'\n'Show article on front page': 'Паказаць артыкул на тытульнай старонцы '\n'Show article on section page': 'Паказаць артыкул на старонцы рубрыкi.'\n'Translate article': 'Перакласьцi артыкул'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'Вы ня маеце правоў доступу для зьмяненьня гэтага артыкула. Вы можаце рэдагаваць толькi свае асабiстыя артыкулы. Калі артыкул адпраўлены, ён можа быць зьменены толькі ўпаўнаважанымі карыстальнікамі.'\n'Duplicate article': 'Дубляваць артыкул'\n'The destination section is the same as the source section.': 'Рубрыка прызначэння тая ж, што і рубрыка крыніцы.'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'Артыкул новы, яго немагчыма прызначыць для аўтаматычнай публiкацыі.'\n'No article types were defined. You must create an article type first.': 'Тыпы артыкулаў ня вызначаныя. Вы павінны спачатку стварыць тыпы артыкулаў.'\n'Edit article types': 'Рэдагаваць тыпы артыкулаў'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Не ўдалося захаваць артыкул. Ён заблякаваны карыстальнікам $1 $2 гадзіны  і $3 хвілін таму. '\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Вы ня маеце правоў зьмяняць стан гэтага артыкула.  Калі артыкул адпраўлены, ён можа быць зьменены толькі ўпаўнаважанымі карыстальнікамі.'\n'You do not have the right to delete articles.': 'Вы ня маеце правоў выдаляць артыкул.'\n'You must select an article type.': 'Вы павінны выбраць  тып артыкула.'\n'Are you sure you want to remove the image $1 from the article?': 'Цi Вы ўпэўненыя, што жадаеце выдаліць графічны файл $1 з артыкула? '\n'There was an error reading request parameters.': 'Памылка чытаньня парамэтраў запыту.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'Немагчыма зрабіць папярэдні агляд артыкула. Пераканайцеся, ці выбраны шаблён артыкула.'\n'No such article.': 'Няма такога артыкула.'\n'No such section.': 'Няма такой рубрыкі:by '\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.bn.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: null\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: null\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: লেখক\n'Attach Topic To Article': null\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': null\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: null\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': null\n'Article created.': null\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: 'এতগুলি মন্তব্য'\n'The article has already been translated into $1.': null\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': null\n'You do not have the right to translate articles.': null\n'You do not have the right to publish articles.': null\n'You do not have the right to move articles.': null\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': null\n'Publish?': null\n'Publish articles': null\n'Publish article': null\n'Move?': null\n'Move articles': null\n'Move article': null\n'An issue must be created for the selected language but you do not have the right to create an issue.': null\n'A section must be created for the selected language but you do not have the right to create a section.': null\n'to section': null\n'You must choose a language': null\n'Unable to create the section for translation $1.': null\n'Unable to create the issue for translation $1.': null\n'The following articles are new; it is not possible to schedule them for automatic publishing': null\n'Section URL Name': null\n'Section Name': null\n'Publish Schedule': null\n'No action specified': null\n'New section name': null\n'New section URL name': null\n'New issue name': null\n'New issue URL name': null\n'New article name': null\n'Issue URL Name': null\n'Issue Name': null\n'Duplicate?': null\n'Duplicate articles': null\n'Article name ($1)': null\n'Article List': null\n'Are you sure you want to remove the topic $1 from the article?': null\n'Are you sure you want to remove the file $1 from the article?': null\n'Are you sure you want to remove the event scheduled on $1?': null\n'Are you sure you want to delete this article?': null\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': null\n'A section must be created for the selected language.  Please enter the section name and URL name.': null\n'Article Type': null\n'Show article on front page': null\n'Show article on section page': null\n'Translate article': null\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': null\n'Duplicate article': null\n'The destination section is the same as the source section.': null\n'The article is new; it is not possible to schedule it for automatic publishing.': null\n'No article types were defined. You must create an article type first.': null\n'Edit article types': null\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'You do not have the right to delete articles.': null\n'You must select an article type.': null\n'Are you sure you want to remove the image $1 from the article?': null\n'There was an error reading request parameters.': null\n'This article cannot be previewed. Please make sure it has the article template selected.': null\n'No such article.': null\n'No such section.': null\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.cs.yml",
    "content": "'Edit metadata': 'Upravit metadata'\nRating: Hodnocení\n'Enable Rating': 'Povolit hodnocení'\n'Blog management': 'Blog management'\n'View article': 'Ukázat článek'\n'Select a list': 'Vybrat seznam'\n'Remove list': 'Odstranit seznam..'\n'Please select a list': 'Prosím vyberte seznam'\nPlaylist: Playlist\n'List updated.': 'Seznam aktualizován'\n'List saved': 'Seznam uložen'\n'List Name': 'Název seznamu'\n'List ID': 'ID seznamu'\n'Item already exists in the list': 'V seznamu již položka existuje'\n'Featured Articles': 'Výběr článků'\n'Featured Article Lists': 'Výběr článku ze seznamů'\n'Featured Article List': 'Výběr článků ze seznamu'\n'Duplicate list': 'Kopírovat seznam'\n'Duplicate article entry found': 'Vstup k duplicitnímu článku nalezen'\n'Drag here to add to list': 'Chytněte zde a přetáhněte do seznamu.'\n'Could not save the list': 'Seznam se nepodařilo uložit.'\n'Available Articles': 'Dostupné články'\n'Are you sure you want to delete this list?': 'Jste si jisti, že chcete vymazat tento seznam?'\n'Add to list': 'Přidat do seznamu'\n'Add list': 'Přidat seznam'\n'Multi date events': 'Několikadenní údálosti'\nSlideshows: Slideshows\n'Place images': 'Umístit obrázky'\n'Youre not allowed to edit article.': 'Nemáte povolení k úpravě článku.'\nWebcode: Webcode\nUnapproved: Neschválené\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Toto vydání nemůže být zobrazeno. Prosím ujistěte se, že publikace má přiděleno téma.'\n'The article could not be submitted.': 'Článek nemohl být zadán.'\n'Submit articles': 'Předložit články'\n'Submit article': 'Předložit článek'\n'Related Articles': 'Související články'\n'Pending articles': 'Dosud nevyřízené články'\n'Pending Articles': 'Dosud nevyřízené články'\n'Context Box updated': 'Kontext Box aktualizován'\nOn: Vypnout\nOff: Zapnout\n'You do not have the right to moderate comments.': 'Nemáte právo zmírnit komentáře.'\n'You can not schedule opposing events at the same time': 'Nemůžete naplánovat protichůdné události ve stejnou dobu'\n'Unable to reach Newscoop. Please check your internet connection.': 'Nepodařilo se spojit s Newscoop. Zkontrolujte prosím své připojení k internetu.'\nTitle: Název\n'There already is an article with the same name. Please change the name and try again.': 'Článek se stejným názvem již existuje. Prosím změňte název a zkuste znovu.'\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': 'Mějte prosím na paměti, že všechny plánované akce pro publikování tohoto článku budou smazány pokud nastavíte článek do Nového stavu. Prosíme o potvrzení změny stavu.'\nGeolocation: Geolokace\nNewscoop: Newscoop\n'Overwrite articles with matching names': 'Přepsat články odpovídajícími názvy'\n'Article <i>$1</i> already exists, and was not overwritten.<br />': 'Článek <i>$1</i> již existuje, a nebyl přepsán. <br />'\nFiles: Soubory\n'Select section:': 'Vybrat rubriku:'\n'Add another author': 'Přidat dalšího autora'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Tento článek uzamkl $1 ($2) před $3 minutami.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Tento článek uzamkl $1 ($2) před $3 hodinami a $4 minutami.'\n'Switches saved.': 'Přepnutí jsou uložena.'\n'Keywords saved.': 'Klíčová slova jsou uložena.'\n'Comment settings': 'Okomentovant nastavení'\nAuthors: Autoři\n'Attach Topic To Article': 'Připojit Téma k Článku'\n'Article saved.': 'Článek uložen'\n'Article is locked': 'Článek je uzamčen'\n'Actions updated.': 'Akce jsou aktualizovány'\n'Your work has not been saved. Do you want to continue and lose your changes?': 'Vaše práce nebyla uložena. Chcete pokračovat i přes to, že ztratíte všechna neuložená data?'\nSwitches: Přepínání\n'No subtopics available': 'Nejsou k dispozici žádná dílčí témata'\n'Newscoop Subhead': 'Podnadpis Newscoopu'\nMedia: Média\n'Last modified': 'Naposledy změněno'\n'Keywords &amp; Topics': 'Klíčová slova & Témata'\nInfo: Info\n'Go to live article': 'Jděte na nyní publikovaný článek'\nCreated: Vytvořeno\n'Are you sure you want to remove the map from the article?': 'Jste si jisti, že chcete ze článku odstranit mapu?'\n'Scheduled action added': 'Plánovaná akce přidána'\n'Content edited': 'Obsah editován'\n'You must select an article language.': 'Zvolte jazyk článku.'\n'You must select a publication.': 'Zvolte publikaci.'\n'You must select a file to upload.': 'Zvolte soubor k nahrání.'\n'You must select a XML input file.': 'Zvolte XML vstupní soubor.'\n'You do not have the right to import XML archives.': 'Nemáte oprávnění k importování XML archivy.'\n'There was a problem uploading the file.': 'Vyskytl se problém při nahrávání souboru.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Nahrávaný soubor není celý. K tomuto dochází, kdyžje překročen maximální povolený čas k nahrání souboru. Maximalní čas lze upravit v php.ini.'\n'The file exceeds the allowed max file size.': 'Soubor překračuje maximální povolenou velikost.'\nOptional: Volitelné\n'Input File': 'Vstupní Soubor'\n'Import XML': 'Importovat XML'\n'File is not a valid XML file.': 'Soubor není validní XML soubor.'\n'File does not exist.': 'Soubor neexistuje.'\n'File could not be uploaded.': 'Nezdařilo se nahrát soubor.'\n'File could not be read.': 'Nezdařilo se přečíst soubor.'\n'Error List': 'Seznam Chyb'\n'Bad format in XML file.': 'Špatný formát v XML souboru.'\n'Article could not be created.': 'Nezdařilo se vytvořit článek.'\n'---Select article type---': '---Zvolte typ článku---'\n'$1 articles successfully imported.': '$1 články úspěšně importovány.'\nSaved: Uloženo\n'Save All': 'Uložit Vše'\n'Online Server: On': 'Online Server: On'\n'Online Server: Off': 'Online Server: Off'\nDownload: Stáhnout\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': 'Nelze mít dva články pod stejným názvem v jedné rubrice. Název článku se již používá článkem $1.'\n'Visible to non-subscribers': 'Viditelné ne-předplatitelům'\n'The article could not be published.': 'Nezdařilo se publikovat článek.'\n'Scheduled action deleted.': 'Plánovaná činnost odstraněna.'\n'Scheduled action added.': 'Plánovaná činnost přidána.'\n'Article(s) unlocked.': 'Články odemčeny.'\n'Article(s) duplicated.': 'Články duplikovány.'\n'Article(s) deleted.': 'Články odstraněny.'\n'Article status set to $1': 'Status článku nastaven na $1'\n'Article unlocked.': 'Článek odemčen.'\n'Article translation created.': 'Vytvořen překlad článku.'\n'Article order changed.': 'Pořadí článku změněno.'\n'Article moved.': 'Článek přesunut.'\n'Article deleted.': 'Článek smazán.'\n'Article created.': 'Článek vytvořen.'\n'$1 toggled.': '$1 vybráno.'\n'Total:': 'Celkem:'\n'Show Comments': 'Zobrazit Komentáře'\nLocked: Uzamčeno\n'Invalid type: $1': 'Neplatný typ: $1'\n'Hide Comments': 'Skrýt Komentáře'\nEnabled: Zapnuto\nDisabled: Vypnuto\nComments: Komentáře\n'The article has already been translated into $1.': 'Článek již byl přeložený do $1.'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'Před naplánováním publikování článku musíte nastavit publikaci, vydání a sekci, ve které má být článek umístěn. Abyste toho dosáhli, použijte menu $1 a vyberte položku $2.'\n'You do not have the right to translate articles.': 'K překladu článku nemáte dostatečná práva.'\n'You do not have the right to publish articles.': 'Nemáte práva publikovat článek.'\n'You do not have the right to move articles.': 'Nemáte práva přesunout článek.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'Nelze $1 články označené červeně, protože cílové vydání nebylo přeloženo do patřičného jazyka.'\n'Publish?': 'Publikovat?'\n'Publish articles': 'Publikovat články'\n'Publish article': 'Publikovat článek'\n'Move?': 'Přesunout?'\n'Move articles': 'Přesunout články'\n'Move article': 'Přesunout článek'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'Musí být vytvořeno vydání pro zvolený jazyk, ale k tomu nemáte oprávnění.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'Musí být vytvořena rubrika pro zvolený jazyk, ale k tomu nemáte oprávnění.'\n'to section': 'do rubriky'\n'You must choose a language': 'Musíte zvolit jazyk'\n'Unable to create the section for translation $1.': 'Nezdařilo se vytvořit rubriku pro překlad $1.'\n'Unable to create the issue for translation $1.': 'Nezdařilo se vytvořit vydání pro překlad $1.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'Následující články jsou nové; nelze je naplánovat na automatické publikování'\n'Section URL Name': 'URL Název Rubriky'\n'Section Name': 'Název Rubriky'\n'Publish Schedule': 'Publikační Plán'\n'No action specified': 'Nebyla vybrána žádná činnost'\n'New section name': 'Nový název rubriky'\n'New section URL name': 'Nový URL název rubriky'\n'New issue name': 'Nový název vydání'\n'New issue URL name': 'Nový URL název vydání'\n'New article name': 'Nový název článku'\n'Issue URL Name': 'URL Název vydání'\n'Issue Name': 'Název vydání'\n'Duplicate?': 'Duplikovat?'\n'Duplicate articles': 'Duplikovat články'\n'Article name ($1)': 'Název článku ($1)'\n'Article List': 'Seznam článků'\n'Are you sure you want to remove the topic $1 from the article?': 'Jste si jistí, že chcete odstranit téma $1 z článku?'\n'Are you sure you want to remove the file $1 from the article?': 'Jste si jistí, že chcete odstranit soubor $1 z článku?'\n'Are you sure you want to remove the event scheduled on $1?': 'Jste si jistí, že chcete odstranit událost plánovanou na $1?'\n'Are you sure you want to delete this article?': 'Jste si jistí, že chcete odstranit tento článek?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'Musí být vytvořeno vydání pro zvolený jazyk. Prosím zadejte název a URL název vydání.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'Musí být vytvořena rubrika pro zvolený jazyk. Prosím zadejte název a URL název rubriky.'\n'Article Type': 'Typ Článku'\n'Show article on front page': 'Zobrazit článek na hlavní stránce'\n'Show article on section page': 'Zobrazit článek na stránce rubrik'\n'Translate article': 'Překlad článku'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'Nemáte právo změnit tento článek. Můžete pouze editova své vlastní články. Podané články mohou být změněny pouze autorizovanými uživateli.'\n'Duplicate article': 'Duplikovat článek'\n'The destination section is the same as the source section.': 'Cílová a zdrojová sekce jsou totožné'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'Článek je nový; nelze jej nastavit na automatické publikování.'\n'No article types were defined. You must create an article type first.': 'Nejsou definovány žádné typy článku. Nejprve musíte alespoň jeden typ článku vytvořit.'\n'Edit article types': 'Editovat typy článků'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Nezdařilo se uložit článek.  Byl uzamčen $1 před $2 hodin a $3 minut.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Nemáte oprávnění měnit status článku. Jakmile je článek podán, mohou jej měnit pouze autorizovaní uživatelé.'\n'You do not have the right to delete articles.': 'Nemáte právo mazat články'\n'You must select an article type.': 'Musíte zvolit typ článku'\n'Are you sure you want to remove the image $1 from the article?': 'Opravdu chcete obrázek $1 z článku odstranit?'\n'There was an error reading request parameters.': 'Vyskytla se chyba při čtení.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'Článek nelze prohlédnout. Prosím ujistěte se, že má zvolenou šablonu článku.'\n'No such article.': 'Článek neexistuje'\n'No such section.': 'Rubrika neexistuje.'\nCharacters: Znaky\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.da.yml",
    "content": "'Edit metadata': 'Rediger metadata'\nRating: Bedømmelse\n'Enable Rating': 'Slå bedømmelse til'\n'Blog management': 'Blog håndtering'\n'View article': 'Se artikel'\n'Select a list': 'Vælg en liste'\n'Remove list': 'Fjern liste'\n'Please select a list': 'Vælg en liste'\nPlaylist: Playliste\n'List updated.': 'Liste opdateret'\n'List saved': 'Liste gemt'\n'List Name': 'Liste navn'\n'List ID': 'Liste ID'\n'Item already exists in the list': 'Emnet findes allerede i listen'\n'Featured Articles': 'Fremhævede artikler'\n'Featured Article Lists': 'Fremhævede artikler'\n'Featured Article List': 'Fremhævede artikler'\n'Duplicate list': 'Kopier liste'\n'Duplicate article entry found': 'Der blev fundet en dublet artikel'\n'Drag here to add to list': 'Træk hertil for at tilføje til listen'\n'Could not save the list': 'Listen kunne ikke gemmes'\n'Available Articles': 'Tilgængelige artikler'\n'Are you sure you want to delete this list?': 'Vil du slette listen?'\n'Add to list': 'Tilføj til listen'\n'Add list': 'Tilføj liste'\n'Multi date events': 'Begivenhed over flere dage'\nSlideshows: Gallerier\n'Place images': 'Placer billeder'\n'Youre not allowed to edit article.': 'Du kan ikke redigere artiklen.'\nWebcode: Webkode\nUnapproved: 'Ikke godkent'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Forhåndsvisning af udgivelsen er ikke mulig. Kontroller at publikationen har et tema.'\n'The article could not be submitted.': 'Artiklen kunne ikke indsendes'\n'Submit articles': 'Indsend artikler'\n'Submit article': 'Indsend artikel'\n'Related Articles': 'Relaterede artikler'\n'Pending articles': 'Ventende artikler'\n'Pending Articles': 'Ventende artikler'\n'Context Box updated': 'Infoboks opdateret'\nOn: Til\nOff: Fra\n'You do not have the right to moderate comments.': 'Du har ikke rettigheder til at moderere kommentarer'\n'You can not schedule opposing events at the same time': 'Du kan ikke planlægge modsatrettede begivenheder på samme tid'\n'Unable to reach Newscoop. Please check your internet connection.': 'Ingen kontakt til Newscoop. Tjek at du har forbindelse til internettet.'\nTitle: Titel\n'There already is an article with the same name. Please change the name and try again.': 'Der findes allerede en artikel med det navn. Ret navnet og prøv igen.'\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': 'Alle planlagte udgivelser af denne artikel bliver slettet hvis du sætter artiklens status til Ny.'\nGeolocation: Geolocation\nNewscoop: Newscoop\n'Overwrite articles with matching names': 'Overskriv artikler med identiske navne'\n'Article <i>$1</i> already exists, and was not overwritten.<br />': 'Artiklen <i>$1</i> eksisterer allerede og blev ikke overskrevet.<br />'\nFiles: Filer\n'Select section:': 'Vælg sektion:'\n'Add another author': 'Tilføj en forfatter'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Artiklen blev låst af $1 ($2) for $3 minutter siden.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Artiklen blev låst af $1 ($2) for $3 timer og $4 minutter siden.'\n'Switches saved.': 'Indstillinger gemt.'\n'Keywords saved.': 'Nøgleord er gemt'\n'Comment settings': 'Indstillinger for kommentarer'\nAuthors: Forfattere\n'Attach Topic To Article': 'Tilføj emne til artikel'\n'Article saved.': 'Artiklen blev gemt'\n'Article is locked': 'Artiklen er låst'\n'Actions updated.': 'Handlinger opdateret.'\n'Your work has not been saved. Do you want to continue and lose your changes?': 'Dit arbejde er ikke gemt. Vil du fortsætte og miste dine ændringer?'\nSwitches: Indstillinger\n'No subtopics available': 'Ingen tilgængelige underemner'\n'Newscoop Subhead': 'Newscoop underoverskrift'\nMedia: Medier\n'Last modified': 'Sidst ændret'\n'Keywords &amp; Topics': 'Nøgleord & Emner'\nInfo: Info\n'Go to live article': 'Gå til live artiklen'\nCreated: Oprettet\n'Are you sure you want to remove the map from the article?': 'Vil du fjerne kortet fra artiklen?'\n'Scheduled action added': 'Planlagt handling tilføjet'\n'Content edited': 'Indhold redigeret'\n'You must select an article language.': 'Vælg et artikel sprog.'\n'You must select a publication.': 'Vælg en publikation.'\n'You must select a file to upload.': 'Vælg fil til upload.'\n'You must select a XML input file.': 'Vælg en XML fil.'\n'You do not have the right to import XML archives.': 'Du har ikke rettigheder til at importere XML arkiver.'\n'There was a problem uploading the file.': 'Filen kunne ikke uploades.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Filen blev kun delvist uploadet. Dette er almindeligt når den tilladte tid til upload er lav i forhold til filens størrelse. Den tilladte tid indstilles i php.ini'\n'The file exceeds the allowed max file size.': 'Filen er for stor.'\nOptional: Valgfri\n'Input File': Fil\n'Import XML': 'Importer XML'\n'File is not a valid XML file.': 'Filen er ikke gyldig XML.'\n'File does not exist.': 'Filen findes ikke.'\n'File could not be uploaded.': 'Filen kunne ikke uploades.'\n'File could not be read.': 'Filen kunne ikke læses.'\n'Error List': 'Fejl liste'\n'Bad format in XML file.': 'Forkert format i XML filen.'\n'Article could not be created.': 'Artiklen kunne ikke oprettes.'\n'---Select article type---': '---Vælg artikel type---'\n'$1 articles successfully imported.': '$1 artikler importeret.'\nSaved: Gemt\n'Save All': 'Gem alt'\n'Online Server: On': 'Online server: Til'\n'Online Server: Off': 'Online server: Fra'\nDownload: Download\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': 'Du kan ikke have to artikler med samme navn i samme sektion. Artikelnavnet bruges allerede af artiklen $1.'\n'Visible to non-subscribers': 'Synlig for ikke-abonnenter'\n'The article could not be published.': 'Artiklen kunne ikke udgives.'\n'Scheduled action deleted.': 'Planlagt handling slettet.'\n'Scheduled action added.': 'Planlagt handling tilføjet.'\n'Article(s) unlocked.': 'Artikler låst op.'\n'Article(s) duplicated.': 'Artikler kopieret.'\n'Article(s) deleted.': 'Artikler slettet.'\n'Article status set to $1': 'Artikel status sat til $1'\n'Article unlocked.': 'Artikel låst op.'\n'Article translation created.': 'Artikel oversættelse oprettet.'\n'Article order changed.': 'Artikel sortering ændret.'\n'Article moved.': 'Artikel flyttet.'\n'Article deleted.': 'Artikel slettet.'\n'Article created.': 'Artikel oprettet.'\n'$1 toggled.': '$1 skiftet.'\n'Total:': 'Total:'\n'Show Comments': 'Vis kommentarer'\nLocked: Låst\n'Invalid type: $1': 'Ugyldig type: $1'\n'Hide Comments': 'Skjul kommentarer'\nEnabled: 'Slået til'\nDisabled: 'Slået fra'\nComments: Kommentarer\n'The article has already been translated into $1.': 'Artiklen er allerede oversat til $1.'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'Du skal vælge publikation, udgivelse og sektion for artiklen før du kan planlægge udgivelse. Gå til $1 menuen og vælg $2.'\n'You do not have the right to translate articles.': 'Du har ikke rettigheder til at oversætte artikler.'\n'You do not have the right to publish articles.': 'Du har ikke rettigheder til at udgive artikler.'\n'You do not have the right to move articles.': 'Du har ikke rettigheder til at flytte artikler.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'Du kan ikke $1 artiklerne markeret med rød. Destinations udgivelsen er ikke oversat til det relevante sprog.'\n'Publish?': 'Udgiv?'\n'Publish articles': 'Udgiv artikler'\n'Publish article': 'Udgiv artikel'\n'Move?': 'Flyt?'\n'Move articles': 'Flyt artikler'\n'Move article': 'Flyt artikel'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'Der skal oprettes en udgivelse for det valgte sprog, men du har ikke rettigheder til at oprette udgivelser.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'Der skal oprettes en sektion for det valgte sprog, men du har ikke rettigheder til at oprette sektioner.'\n'to section': 'til sektion'\n'You must choose a language': 'Vælg et sprog'\n'Unable to create the section for translation $1.': 'Kunne ikke oprette sektionen til oversættelse $1.'\n'Unable to create the issue for translation $1.': 'Kunne ikke oprette udgivelsen til oversættelse $1.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'De følgende artikler er nye og kan ikke planlægges til automatisk udgivelse'\n'Section URL Name': 'Sektions URL navn'\n'Section Name': 'Sektions navn'\n'Publish Schedule': 'Planlagt udgivelse'\n'No action specified': 'Ingen handling valgt'\n'New section name': 'Navn på ny sektion'\n'New section URL name': 'URL til ny sektion'\n'New issue name': 'Navn på ny sektion'\n'New issue URL name': 'URL på ny sektion'\n'New article name': 'Navn på ny artikel'\n'Issue URL Name': 'URL på ny udgivelse'\n'Issue Name': 'Navn på udgivelse'\n'Duplicate?': 'Kopier?'\n'Duplicate articles': 'Kopier artikler'\n'Article name ($1)': 'Artikel navn ($1)'\n'Article List': 'Artikel liste'\n'Are you sure you want to remove the topic $1 from the article?': 'Vil du fjerne emnet $1 fra artiklen?'\n'Are you sure you want to remove the file $1 from the article?': 'Vil du fjerne filen $1 fra artiklen?'\n'Are you sure you want to remove the event scheduled on $1?': 'Vil du fjerne begivenheden planlagt til $1?'\n'Are you sure you want to delete this article?': 'Vil du slette artiklen?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'Der skal oprettes en udgivelse for det valgte sprog. Indtast navn og URL navn for udgivelsen.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'Der skal oprettes en sektion for det valgte sprog. Indtast navn og URL navn for sektionen.'\n'Article Type': 'Artikel type'\n'Show article on front page': 'Vis artiklen på forsiden'\n'Show article on section page': 'Vis artiklen på sektions siden'\n'Translate article': 'Oversæt artikel'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'Du har ikke rettigheder til at ændre artiklen. Du må kun redigere dine egne artikler, og når en artikel er indsendt, kan den kun ændres af autoriserede brugere.'\n'Duplicate article': 'Kopier artikel'\n'The destination section is the same as the source section.': 'Kilde sektion og destinations sektion er identiske.'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'Artiklen er ny. Den kan ikke planlægges til automatisk udgivelse.'\n'No article types were defined. You must create an article type first.': 'Ingen artikel typer defineret. Du skal oprette en artikel type først.'\n'Edit article types': 'Rediger artikel typer'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Artiklen kunne ikke gemmes. Den har været låst af $1 for $2 timer og $3 minutter siden.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Du har ikke tilladelse til at ændre artiklens status. Når en artikel er indsendt kan den kun ændres af autoriserede brugere.'\n'You do not have the right to delete articles.': 'Du har ikke tilladelse til at slette artikler'\n'You must select an article type.': 'Vælg en artikel type'\n'Are you sure you want to remove the image $1 from the article?': 'Vil du fjerne billedet $1 fra artiklen?'\n'There was an error reading request parameters.': 'Efterspørgslens parametre kunne ikke læses.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'Forhåndsvisning af artiklen er ikke mulig. Kontroller at artikel skabelonen er valgt.'\n'No such article.': 'Artiklen findes ikke.'\n'No such section.': 'Sektionen findes ikke.'\nCharacters: Tegn\nSnippet: Uddrag\n'This list is already in a different state than the one in which it was loaded.': 'Listen er allerede ændret siden den blev åbnet.'\n'List name should not be longer than 40 chars': 'Listens navn må ikke være længere end 40 tegn'\n'Not valid number': 'Ikke et gyldigt tal'\n'List limit': 'Liste begrænsning'\n'The last article of this list has been removed.': 'Den sidste artikel på denne liste er blevet fjernet.'\nRevert: Fortryd\n'Could not automatically refresh the list': 'Listen kunne ikke opdateres automatisk'\n'The article slideshows have been successfully updated, please close the window.': 'Artiklens gallerier blev opdateret. Luk vinduet.'\narticles:\n    playlists:\n        namechanged: 'Er du sikker på du vil ændre lsitens navn? Navnet bruges muligvis i Newscoop skabeloner for at vise listen på hjemmesiden. Spørg hjemmesidens administrator hvis du er i tvivl.'\n        alert: \"Vil du ændre det maksimale antal artikler på listen? Hvis du reducerer grænsen vil alle yderligere artikler blive fjernet fra listen.\\nEksempel: Hvis du ændrer grænsen fra 50 til 30 vil de 20 artikler fra nummer 31 til 50 blive fjernet fra listen.\"\n    images:\n        see_original: 'Se billeder i fuld størrelse på en ny fane'\n        edit:\n            edit_image_metadata: 'Rediger billedets metadata'\n            save: Gem\n            form:\n                use: Brug\n                number: Nummer\n                caption: Billedtekst\n                status_approved: Godkendt\n                status_unapproved: 'Ikke godkent'\n                status: Status\n                description: Beskrivelse\n                photographer: Fotograf\n                photographer_url: 'Fotograf URL'\n                place: Sted\n                date: Dato\n                article_specific: 'Artikel specifik'\n                global: Global\n                other_captions: 'Andre billedtekster'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.de.yml",
    "content": "'Edit metadata': 'bearbeiten von Metadaten'\nRating: Bewertung\n'Enable Rating': 'Bewertung zulassen'\n'Blog management': Blog-Managment\n'View article': 'Artikel ansehen'\n'Select a list': 'Liste auswählen'\n'Remove list': 'Liste entfernen'\n'Please select a list': 'Bitte eine Liste wählen'\nPlaylist: Playlist\n'List updated.': 'Liste aktualisiert. '\n'List saved': 'Liste gespeichert'\n'List Name': Listenname\n'List ID': 'Listen ID'\n'Item already exists in the list': 'Der Artikel ist bereits in der Liste'\n'Featured Articles': 'Ausgewählte Artikel'\n'Featured Article Lists': 'Listen ausgewählter Artikel'\n'Featured Article List': 'Liste ausgewählter Artikel'\n'Duplicate list': 'Liste duplizieren'\n'Duplicate article entry found': 'Artikeldublette gefunden'\n'Drag here to add to list': 'Hierher ziehen, um zur Liste hinzuzufügen'\n'Could not save the list': 'Konnte Liste nicht speichern'\n'Available Articles': 'Verfügbare Artikel'\n'Are you sure you want to delete this list?': 'Wollen Sie diese Liste wirklich löschen?'\n'Add to list': 'Zur Liste hinzufügen'\n'Add list': 'Liste hinzufügen'\n'Multi date events': 'Mehrtägige Ereignisse'\nSlideshows: Bildstrecken\n'Place images': 'Bilder platzieren'\n'Youre not allowed to edit article.': 'Sie haben keine Berechtigung um einen Artikel zu bearbeiten. '\nWebcode: Webcode\nUnapproved: 'Nicht genehmigt'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Vom Artikel kann keine Vorschau erstellt werden. Bitte stellen Sie sicher, dass er einer Designvorlage zugeordnet wurde. '\n'The article could not be submitted.': 'Der Artikel konnte nicht eingepflegt werden'\n'Submit articles': 'Artikel einpflegen'\n'Submit article': 'Artikel einpflegen'\n'Related Articles': 'Verwandte Artikel'\n'Pending articles': 'Eingereichte Artikel'\n'Pending Articles': 'Eingereichte Artikel'\n'Context Box updated': 'Content Box aktualisiert'\nOn: An\nOff: Aus\n'You do not have the right to moderate comments.': 'Sie haben keine Berechtigung, Kommentare zu moderieren. '\n'You can not schedule opposing events at the same time': 'Sich widersprechenden Ereignisse können nicht zeitgleich automatisiert werden. '\n'Unable to reach Newscoop. Please check your internet connection.': 'Die Verbindung zu Newscoop kann nicht hergestellt werden. Bitte überprüfen Sie ihre Internetverbindung. '\nTitle: Titel\n'There already is an article with the same name. Please change the name and try again.': 'Es gibt bereits einen gleichnamigen Artikel. Bitte ändern Sie den Namen des Artikels und versuchen Sie es erneut. '\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': 'Bitte seien Sie sich darüber im Klaren, dass alle automatisierten Veröffentlichungsereignisse für diesen Artikel gelöscht werden, wenn Sie den Artikel auf Neu einstellen. Bitte bestätigen Sie die Statusänderung. '\nGeolocation: Geoinformation\nNewscoop: Newscoop\n'Overwrite articles with matching names': 'Überschreibe Artikel mit gleichen Namen. '\n'Article <i>$1</i> already exists, and was not overwritten.<br />': 'Der Artikel  <i>$1</i> existiert bereits und wurde nicht überschrieben. <br />'\nFiles: Dateien\n'Select section:': 'Rubrik wählen'\n'Add another author': 'Autor/in hinzufügen'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Achtung: Der Artikel ist durch $1 ($2) seit $3 Minute(n) gesperrt.<br/>Du kannst die Sperrung aufheben, dabei gehen aber alle nicht gespeicherten Änderungen verloren. Bitte stelle sicher, dass $1 ($2) den Artikel nicht mehr am Bearbeiten ist.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Achtung: Der Artikel ist durch $1 ($2) seit $3 Stunde(n) und $4 Minute(n) gesperrt.<br/>Du kannst die Sperrung aufheben, dabei gehen aber alle nicht gespeicherten Änderungen verloren. Bitte stelle sicher, dass $1 ($2) den Artikel nicht mehr am Bearbeiten ist.'\n'Switches saved.': 'Schalter gespeichert.'\n'Keywords saved.': 'Schlagwörter gespeichert.'\n'Comment settings': 'Einstellungen kommentieren'\nAuthors: Autoren/innen\n'Attach Topic To Article': 'Thema mit Artikel verknüpfen'\n'Article saved.': 'Artikel gespeichert.'\n'Article is locked': 'Der Artikel ist gesperrt.'\n'Actions updated.': 'Aktionen aktualisiert.'\n'Your work has not been saved. Do you want to continue and lose your changes?': 'Sie haben nicht gespeichert. Wollen Sie fortfahren und Änderungen verlieren?'\nSwitches: Schalter\n'No subtopics available': 'Keine Unterthemen verfügbar'\n'Newscoop Subhead': 'Newscoop Zwischentitel'\nMedia: Medien\n'Last modified': 'Zuletzt geändert'\n'Keywords &amp; Topics': 'Schlagwörter & Themen'\nInfo: Info\n'Go to live article': 'Gehe zu veröffentlichtem Artikel'\nCreated: Angelegt\n'Are you sure you want to remove the map from the article?': 'Soll die Karte wirklich aus Artikel entfernen?'\n'Scheduled action added': 'Automatisierte Aktion hinzufügen'\n'Content edited': 'Inhalt bearbeitet'\n'You must select an article language.': 'Artikelsprache muss ausgewählt werden.'\n'You must select a publication.': 'Publikation muss ausgewählt werden.'\n'You must select a file to upload.': 'Datei zum Hochladen auswählen.'\n'You must select a XML input file.': 'XML Input Datei auswählen.'\n'You do not have the right to import XML archives.': 'Keine Berechtigung um XML Archive zu importieren.'\n'There was a problem uploading the file.': 'Probleme beim Hochladen der Datei.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Die Datei wurde nur teilweise hochgeladen. Dies passiert wenn die Höchstdauer für das Hochladen der Datei im Vergleich zur Dateigröße zu kurz ist. Die Höchstdauer ist in php.ini festgelegt.'\n'The file exceeds the allowed max file size.': 'Die Datei überschreitet die maximal zulässige Dateigröße.'\nOptional: Optional\n'Input File': 'Eingabe Datei'\n'Import XML': 'XML importieren'\n'File is not a valid XML file.': 'Keine gültige XML Datei.'\n'File does not exist.': 'Datei existiert nicht.'\n'File could not be uploaded.': 'Datei konnte nicht hochgeladen werden.'\n'File could not be read.': 'Datei konnte nicht gelesen werden.'\n'Error List': Fehlerliste\n'Bad format in XML file.': 'Schlechtes Format in XML Datei.'\n'Article could not be created.': 'Artikel konnte nicht erstellt werden.'\n'---Select article type---': '---Artikeltyp auswählen---'\n'$1 articles successfully imported.': '$1 Artikel erfolgreich importiert.'\nSaved: Gespeichert\n'Save All': 'Alle speichern'\n'Online Server: On': 'Online Server: Ein'\n'Online Server: Off': 'Online Server: Aus'\nDownload: Herunterladen\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': 'Zwei Artikel in derselben Rubrik können nicht gleich benannt werden. Der gewählte Artikelname wird bereits von Artikel $1 verwendet.'\n'Visible to non-subscribers': 'Sichtbar für Nicht-Abonnenten'\n'The article could not be published.': 'Der Artikel konnte nicht veröffentlicht werden.'\n'Scheduled action deleted.': 'Automatisierte Aktion gelöscht.'\n'Scheduled action added.': 'Automatisierte Aktion hinzugefügt.'\n'Article(s) unlocked.': 'Artikel entsperrt.'\n'Article(s) duplicated.': 'Artikel dupliziert.'\n'Article(s) deleted.': 'Artikel gelöscht.'\n'Article status set to $1': 'Artikelstatus auf $1 gesetzt.'\n'Article unlocked.': 'Artikel entsperrt.'\n'Article translation created.': 'Artikelübersetzung erstellt.'\n'Article order changed.': 'Artikelreihenfolge geändert.'\n'Article moved.': 'Artikel verschoben.'\n'Article deleted.': 'Artikel gelöscht.'\n'Article created.': 'Artikel erstellt.'\n'$1 toggled.': '$1 ausgewählt.'\n'Total:': 'Gesamt:'\n'Show Comments': 'Kommentare anzeigen'\nLocked: Gesperrt\n'Invalid type: $1': 'Ungültiger Typ: $1'\n'Hide Comments': 'Kommentare verbergen'\nEnabled: Aktiviert\nDisabled: Deaktiviert\nComments: Kommentare\n'The article has already been translated into $1.': 'Der Artikel wurde bereits nach $1 übersetzt.'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'Vor dem Automatisieren müssen Publikation, Ausgabe und Rubrik für diesen Artikel bestimmt werden. Gehe dafür zum Menü $1 und wähle $2.'\n'You do not have the right to translate articles.': 'Keine Berechtigung Artikel zu übersetzen.'\n'You do not have the right to publish articles.': 'Keine Berechtigung Artikel zu publizieren.'\n'You do not have the right to move articles.': 'Keine Berechtigung Artikel zu verschieben.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'Sie können die in rot markierten Artikel nich $1, weil die Ziel-Ausgabe nicht in die entsprechende Sprache übersetzt wurde.'\n'Publish?': 'Veröffentlichen?'\n'Publish articles': 'Artikel veröffentlichen'\n'Publish article': 'Artikel veröffentlichen'\n'Move?': 'Verschieben?'\n'Move articles': 'Artikel verschieben'\n'Move article': 'Artikel verschieben'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'Für die gewählte Sprache muss eine Ausgabe angelegt werden, wozu Sie keine Rechte haben.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'Für die gewählte Sprache muss eine Rubrik angelegt werden, wozu Sie keine Rechte haben.'\n'to section': 'in Rubrik'\n'You must choose a language': 'Eine Sprache muss ausgewählt werden'\n'Unable to create the section for translation $1.': 'Fehler beim Erstellen der Rubrik für Übersetzung $1.'\n'Unable to create the issue for translation $1.': 'Fehler beim Erstellen der Ausgabe für Übersetzung $1.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'Die folgenden Artikel sind neu und können deshalb nicht für die automatisierte Veröffentlichung genutzt werden'\n'Section URL Name': 'URL Name der Rubrik'\n'Section Name': Rubrikenname\n'Publish Schedule': 'Automatisierte Veröffentlichung'\n'No action specified': 'Es wurde keine Aktion ausgewählt'\n'New section name': 'Neuer Rubrikenname'\n'New section URL name': 'Neuer URL Name für die Rubrik'\n'New issue name': 'Neuer Ausgabenname'\n'New issue URL name': 'Neuer URL Name für die Ausgabe'\n'New article name': 'Neuer Artikelname'\n'Issue URL Name': 'URL Name der Ausgabe'\n'Issue Name': Ausgabenname\n'Duplicate?': 'Duplizieren?'\n'Duplicate articles': 'Artikel duplizieren'\n'Article name ($1)': 'Artikelname ($1)'\n'Article List': Artikelliste\n'Are you sure you want to remove the topic $1 from the article?': 'Soll das Thema $1 von diesem Artikel entkoppelt werden?'\n'Are you sure you want to remove the file $1 from the article?': 'Soll die Datei $1 von diesem Artikel entkoppelt werden?'\n'Are you sure you want to remove the event scheduled on $1?': 'Soll das automatisierte Ereignis von $1 entfernt werden?'\n'Are you sure you want to delete this article?': 'Soll der Artikel gelöscht werden?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'Eine Ausgabe muss für die ausgewählte Sprache angelegt werden. Bitte Namen für Ausgabe und URL angeben.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'Eine Rubrik muss für die ausgewählte Sprache angelegt werden. Bitte Namen für Ausgabe und URL angeben.'\n'Article Type': Artikeltyp\n'Show article on front page': 'Artikel auf der Startseite anzeigen'\n'Show article on section page': 'Artikel in der Rubrik anzeigen'\n'Translate article': 'Artikel übersetzen.'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'Keine Berechtigung, den Artikel zu ändern. Bearbeiten nur von eigenen Artikeln möglich. Bereits eingepflegte Artikel können nur von berechtigten Usern verändert werden.'\n'Duplicate article': 'Artikel duplizieren'\n'The destination section is the same as the source section.': 'Die Zielrubrik ist identisch mit der Ausgangsrubrik.'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'Der Artikel ist neu und kann deshalb nicht für die automatisierte Veröffentlichung genutzt werden.'\n'No article types were defined. You must create an article type first.': 'Zuerst müssen Artikeltypen angelegt werden.'\n'Edit article types': 'Artikeltypen bearbeiten'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Fehler beim Speichern des Artikels. Er wurde von $1 vor $2 Stunden und $3 Minuten gesperrt.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Keine Zugriffsrechte auf die Änderung des Artikelstatus. Eingepflegte Artikel können nur mit den dazugehörigen Rechten geändert werden.'\n'You do not have the right to delete articles.': 'Fehlende Zugriffsrechte für das Löschen von Artikeln.'\n'You must select an article type.': 'Der Artikeltyp muss ausgewählt werden.'\n'Are you sure you want to remove the image $1 from the article?': 'Soll das Bild $1 vom Artikel entkoppelt werden?'\n'There was an error reading request parameters.': 'Fehler beim Lesen der Anfrageparameter.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'Dieser Artikel kann nicht in der Vorschau angezeigt werden. Bitte prüfen, ob die Artikel Template ausgewählt wurde.'\n'No such article.': 'Artikel nicht vorhanden'\n'No such section.': 'Rubrik nicht vorhanden'\nCharacters: Zeichen\nSnippet: Code-Schnipsel\n'This list is already in a different state than the one in which it was loaded.': 'Die Liste wurde zwischenzeitlich aktualisiert und hat einen anderen Stand, als zu dem Zeitpunkt, als sie geladen wurde.'\n'List name should not be longer than 40 chars': 'Der Name der Liste sollte 40 Zeichen nicht überschreiten'\n'Not valid number': 'Ungültige Nummer'\n'List limit': 'Listen Begrenzung'\n'The last article of this list has been removed.': 'Der letzte Artikel von dieser Liste wurde entfernt.'\nRevert: 'Rückgängig machen'\n'Could not automatically refresh the list': 'Die Liste konnte nicht automatisch aktualisiert werden.'\n'The article slideshows have been successfully updated, please close the window.': 'Die Slideshow des Artikels wurde erfolgreich aktualisiert, bitte schließen Sie das Fenster.'\narticles:\n    playlists:\n        namechanged: 'Sind Sie sicher, daß Sie den Namen der Liste ändern wollen? Der Name wird vermutlich in den Newscoop Templates verwendet, um die Liste im Frontend zur Anzeige zu bringen. Im Zweifel fragen Sie bitte Ihren Administrator.'\n        alert: 'Sind Sie sicher das Sie die maximale Anzahl an Artikeln für diese Liste ändern wollen? Wenn Sie die Begrenzung anpassen, dann werden alle Artikel die außerhalb der Begrenzung liegen automatisch von der Liste entfernt. Beispiel: Wenn Sie die Begrenzung von 50 auf 30 verringern, dann werden alle 20 Artikel von Position 31 an aus der Liste entfernt.'\n    images:\n        see_original: 'Bild in voller Größe in neuem Tab öffnen.'\n        edit:\n            edit_image_metadata: 'Metadaten des Bildes editieren'\n            save: Speichern\n            form:\n                use: Verwenden\n                number: Nummer\n                caption: Bildlegende\n                status_approved: Genehmigt\n                status_unapproved: 'Nicht genehmigt'\n                status: Status\n                description: Beschreibung\n                photographer: Fotograf/in\n                photographer_url: 'URL/Webadresse des Photographen'\n                place: Ort\n                date: Datum\n                article_specific: 'Artikel spezifisch'\n                global: Globale\n                other_captions: 'Weitere Bildunterschriften'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.de_AT.yml",
    "content": "'Edit metadata': 'bearbeiten von Metadaten'\nRating: Bewertung\n'Enable Rating': 'Bewertung zulassen'\n'Blog management': Blog-Managment\n'View article': 'Artikel ansehen'\n'Select a list': 'Liste auswählen'\n'Remove list': 'Liste entfernen'\n'Please select a list': 'Bitte eine Liste wählen'\nPlaylist: Playlist\n'List updated.': 'Liste aktualisiert. '\n'List saved': 'Liste gespeichert'\n'List Name': Listenname\n'List ID': 'Listen ID'\n'Item already exists in the list': 'Der Artikel ist bereits in der Liste'\n'Featured Articles': 'Ausgewählte Artikel'\n'Featured Article Lists': 'Listen ausgewählter Artikel'\n'Featured Article List': 'Liste ausgewählter Artikel'\n'Duplicate list': 'Liste duplizieren'\n'Duplicate article entry found': 'Artikeldublette gefunden'\n'Drag here to add to list': 'Hierher ziehen, um zur Liste hinzuzufügen'\n'Could not save the list': 'Konnte Liste nicht speichern'\n'Available Articles': 'Verfügbare Artikel'\n'Are you sure you want to delete this list?': 'Wollen Sie diese Liste wirklich löschen?'\n'Add to list': 'Zur Liste hinzufügen'\n'Add list': 'Liste hinzufügen'\n'Multi date events': 'Mehrtägige Ereignisse'\nSlideshows: Bildstrecken\n'Place images': 'Bilder platzieren'\n'Youre not allowed to edit article.': 'Sie haben keine Berechtigung um einen Artikel zu bearbeiten. '\nWebcode: Webcode\nUnapproved: 'Nicht genehmigt'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Vom Artikel kann keine Vorschau erstellt werden. Bitte stellen Sie sicher, dass er einem Thema zugeordnet wurde. '\n'The article could not be submitted.': 'Der Artikel konnte nicht eingepflegt werden'\n'Submit articles': 'Artikel einpflegen'\n'Submit article': 'Artikel einpflegen'\n'Related Articles': 'Verwandte Artikel'\n'Pending articles': 'Eingereichte Artikel'\n'Pending Articles': 'Eingereichte Artikel'\n'Context Box updated': 'Content Box aktualisiert'\nOn: An\nOff: Aus\n'You do not have the right to moderate comments.': 'Sie haben keine Berechtigung, Kommentare zu moderieren. '\n'You can not schedule opposing events at the same time': 'Sich widersprechenden Ereignisse können nicht zeitgleich automatisiert werden. '\n'Unable to reach Newscoop. Please check your internet connection.': 'Die Verbindung zu Newscoop kann nicht hergestellt werden. Bitte überprüfen Sie ihre Internetverbindung. '\nTitle: Titel\n'There already is an article with the same name. Please change the name and try again.': 'Es gibt bereits einen gleichnamigen Artikel. Bitte ändern Sie den Namen des Artikels und versuchen Sie es erneut. '\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': 'Bitte seien Sie sich darüber im Klaren, dass alle automatisierten Veröffentlichungsereignisse für diesen Artikel gelöscht werden, wenn Sie den Artikel auf Neu einstellen. Bitte bestätigen Sie die Statusänderung. '\nGeolocation: Geoinformation\nNewscoop: Newscoop\n'Overwrite articles with matching names': 'Überschreibe Artikel mit gleichen Namen. '\n'Article <i>$1</i> already exists, and was not overwritten.<br />': 'Der Artikel  <i>$1</i> existiert bereits und wurde nicht überschrieben. <br />'\nFiles: Dateien\n'Select section:': 'Rubrik wählen'\n'Add another author': 'Autor/in hinzufügen'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Achtung: Der Artikel ist durch $1 ($2) seit $3 Minute(n) gesperrt.<br/>Du kannst die Sperrung aufheben, dabei gehen aber alle nicht gespeicherten Änderungen verloren. Bitte stelle sicher, dass $1 ($2) den Artikel nicht mehr am Bearbeiten ist.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Achtung: Der Artikel ist durch $1 ($2) seit $3 Stunde(n) und $4 Minute(n) gesperrt.<br/>Du kannst die Sperrung aufheben, dabei gehen aber alle nicht gespeicherten Änderungen verloren. Bitte stelle sicher, dass $1 ($2) den Artikel nicht mehr am Bearbeiten ist.'\n'Switches saved.': 'Schalter gespeichert.'\n'Keywords saved.': 'Schlagwörter gespeichert.'\n'Comment settings': 'Einstellungen kommentieren'\nAuthors: Autoren/innen\n'Attach Topic To Article': 'Thema mit Artikel verknüpfen'\n'Article saved.': 'Artikel gespeichert.'\n'Article is locked': 'Der Artikel ist gesperrt.'\n'Actions updated.': 'Aktionen aktualisiert.'\n'Your work has not been saved. Do you want to continue and lose your changes?': 'Sie haben nicht gespeichert. Wollen Sie fortfahren und Änderungen verlieren?'\nSwitches: Schalter\n'No subtopics available': 'Keine Unterthemen verfügbar'\n'Newscoop Subhead': 'Newscoop Zwischentitel'\nMedia: Medien\n'Last modified': 'Zuletzt geändert'\n'Keywords &amp; Topics': 'Schlagwörter & Themen'\nInfo: Info\n'Go to live article': 'Gehe zu veröffentlichtem Artikel'\nCreated: Angelegt\n'Are you sure you want to remove the map from the article?': 'Soll die Karte wirklich aus Artikel entfernen?'\n'Scheduled action added': 'Automatisierte Aktion hinzufügen'\n'Content edited': 'Inhalt bearbeitet'\n'You must select an article language.': 'Artikelsprache muss ausgewählt werden.'\n'You must select a publication.': 'Publikation muss ausgewählt werden.'\n'You must select a file to upload.': 'Datei zum Hochladen auswählen.'\n'You must select a XML input file.': 'XML Input Datei auswählen.'\n'You do not have the right to import XML archives.': 'Keine Berechtigung um XML Archive zu importieren.'\n'There was a problem uploading the file.': 'Probleme beim Hochladen der Datei.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Die Datei wurde nur teilweise hochgeladen. Dies passiert wenn die Höchstdauer für das Hochladen der Datei im Vergleich zur Dateigröße zu kurz ist. Die Höchstdauer ist in php.ini festgelegt.'\n'The file exceeds the allowed max file size.': 'Die Datei überschreitet die maximal zulässige Dateigröße.'\nOptional: Optional\n'Input File': 'Eingabe Datei'\n'Import XML': 'XML importieren'\n'File is not a valid XML file.': 'Keine gültige XML Datei.'\n'File does not exist.': 'Datei existiert nicht.'\n'File could not be uploaded.': 'Datei konnte nicht hochgeladen werden.'\n'File could not be read.': 'Datei konnte nicht gelesen werden.'\n'Error List': Fehlerliste\n'Bad format in XML file.': 'Schlechtes Format in XML Datei.'\n'Article could not be created.': 'Artikel konnte nicht erstellt werden.'\n'---Select article type---': '---Artikeltyp auswählen---'\n'$1 articles successfully imported.': '$1 Artikel erfolgreich importiert.'\nSaved: Gespeichert\n'Save All': 'Alle speichern'\n'Online Server: On': 'Online Server: Ein'\n'Online Server: Off': 'Online Server: Aus'\nDownload: Herunterladen\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': 'Zwei Artikel in derselben Rubrik können nicht gleich benannt werden. Der gewählte Artikelname wird bereits von Artikel $1 verwendet.'\n'Visible to non-subscribers': 'Sichtbar für Nicht-Abonnenten'\n'The article could not be published.': 'Der Artikel konnte nicht veröffentlicht werden.'\n'Scheduled action deleted.': 'Automatisierte Aktion gelöscht.'\n'Scheduled action added.': 'Automatisierte Aktion hinzugefügt.'\n'Article(s) unlocked.': 'Artikel entsperrt.'\n'Article(s) duplicated.': 'Artikel dupliziert.'\n'Article(s) deleted.': 'Artikel gelöscht.'\n'Article status set to $1': 'Artikelstatus auf $1 gesetzt.'\n'Article unlocked.': 'Artikel entsperrt.'\n'Article translation created.': 'Artikelübersetzung erstellt.'\n'Article order changed.': 'Artikelreihenfolge geändert.'\n'Article moved.': 'Artikel verschoben.'\n'Article deleted.': 'Artikel gelöscht.'\n'Article created.': 'Artikel erstellt.'\n'$1 toggled.': '$1 ausgewählt.'\n'Total:': 'Gesamt:'\n'Show Comments': 'Kommentare anzeigen'\nLocked: Gesperrt\n'Invalid type: $1': 'Ungültiger Typ: $1'\n'Hide Comments': 'Kommentare verbergen'\nEnabled: Aktiviert\nDisabled: Deaktiviert\nComments: Kommentare\n'The article has already been translated into $1.': 'Der Artikel wurde bereits nach $1 übersetzt.'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'Vor dem Automatisieren müssen Publikation, Ausgabe und Rubrik für diesen Artikel bestimmt werden. Gehe dafür zum Menü $1 und wähle $2.'\n'You do not have the right to translate articles.': 'Keine Berechtigung Artikel zu übersetzen.'\n'You do not have the right to publish articles.': 'Keine Berechtigung Artikel zu publizieren.'\n'You do not have the right to move articles.': 'Keine Berechtigung Artikel zu verschieben.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': null\n'Publish?': 'Veröffentlichen?'\n'Publish articles': 'Artikel veröffentlichen'\n'Publish article': 'Artikel veröffentlichen'\n'Move?': 'Verschieben?'\n'Move articles': 'Artikel verschieben'\n'Move article': 'Artikel verschieben'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'Für die gewählte Sprache muss eine Ausgabe angelegt werden, wozu Sie keine Rechte haben.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'Für die gewählte Sprache muss eine Rubrik angelegt werden, wozu Sie keine Rechte haben.'\n'to section': 'in Rubrik'\n'You must choose a language': 'Eine Sprache muss ausgewählt werden'\n'Unable to create the section for translation $1.': 'Fehler beim Erstellen der Rubrik für Übersetzung $1.'\n'Unable to create the issue for translation $1.': 'Fehler beim Erstellen der Ausgabe für Übersetzung $1.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'Die folgenden Artikel sind neu und können deshalb nicht für die automatisierte Veröffentlichung genutzt werden'\n'Section URL Name': 'URL Name der Rubrik'\n'Section Name': Rubrikenname\n'Publish Schedule': 'Automatisierte Veröffentlichung'\n'No action specified': 'Es wurde keine Aktion ausgewählt'\n'New section name': 'Neuer Rubrikenname'\n'New section URL name': 'Neuer URL Name für die Rubrik'\n'New issue name': 'Neuer Ausgabenname'\n'New issue URL name': 'Neuer URL Name für die Ausgabe'\n'New article name': 'Neuer Artikelname'\n'Issue URL Name': 'URL Name der Ausgabe'\n'Issue Name': Ausgabenname\n'Duplicate?': 'Duplizieren?'\n'Duplicate articles': 'Artikel duplizieren'\n'Article name ($1)': 'Artikelname ($1)'\n'Article List': Artikelliste\n'Are you sure you want to remove the topic $1 from the article?': 'Soll das Thema $1 von diesem Artikel entkoppelt werden?'\n'Are you sure you want to remove the file $1 from the article?': 'Soll die Datei $1 von diesem Artikel entkoppelt werden?'\n'Are you sure you want to remove the event scheduled on $1?': 'Soll das automatisierte Ereignis von $1 entfernt werden?'\n'Are you sure you want to delete this article?': 'Soll der Artikel gelöscht werden?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'Eine Ausgabe muss für die ausgewählte Sprache angelegt werden. Bitte Namen für Ausgabe und URL angeben.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'Eine Rubrik muss für die ausgewählte Sprache angelegt werden. Bitte Namen für Ausgabe und URL angeben.'\n'Article Type': Artikeltyp\n'Show article on front page': 'Artikel auf der Startseite anzeigen'\n'Show article on section page': 'Artikel in der Rubrik anzeigen'\n'Translate article': 'Artikel übersetzen.'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'Keine Berechtigung, den Artikel zu ändern. Bearbeiten nur von eigenen Artikeln möglich. Bereits eingepflegte Artikel können nur von berechtigten Usern verändert werden.'\n'Duplicate article': 'Artikel duplizieren'\n'The destination section is the same as the source section.': 'Die Zielrubrik ist identisch mit der Ausgangsrubrik.'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'Der Artikel ist neu und kann deshalb nicht für die automatisierte Veröffentlichung genutzt werden.'\n'No article types were defined. You must create an article type first.': 'Zuerst müssen Artikeltypen angelegt werden.'\n'Edit article types': 'Artikeltypen bearbeiten'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Fehler beim Speichern des Artikels. Er wurde von $1 vor $2 Stunden und $3 Minuten gesperrt.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Keine Zugriffsrechte auf die Änderung des Artikelstatus. Eingepflegte Artikel können nur mit den dazugehörigen Rechten geändert werden.'\n'You do not have the right to delete articles.': 'Fehlende Zugriffsrechte für das Löschen von Artikeln.'\n'You must select an article type.': 'Der Artikeltyp muss ausgewählt werden.'\n'Are you sure you want to remove the image $1 from the article?': 'Soll das Bild $1 vom Artikel entkoppelt werden?'\n'There was an error reading request parameters.': 'Fehler beim Lesen der Anfrageparameter.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'Dieser Artikel kann nicht in der Vorschau angezeigt werden. Bitte prüfen, ob die Artikel Template ausgewählt wurde.'\n'No such article.': 'Artikel nicht vorhanden'\n'No such section.': 'Rubrik nicht vorhanden'\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.el.yml",
    "content": "'Edit metadata': 'Επεξεργασία μεταδεδομένων'\nRating: Αξιολόγηση\n'Enable Rating': 'Ενεργοποίηση Αξιολόγησης'\n'Blog management': 'Διαχείριση blog'\n'View article': 'Προβολή άρθρου'\n'Select a list': 'Επιλέξτε μια λίστα'\n'Remove list': 'Αφαίρεση λίστας'\n'Please select a list': 'Παρακαλούμε επιλέξτε μια λίστα'\nPlaylist: 'Λίστα αναπαραγωγής'\n'List updated.': 'Η λίστα ενημερώθηκε.'\n'List saved': 'Η λίστα αποθηκεύτηκε'\n'List Name': 'Όνομα Λίστας'\n'List ID': 'Ταυτότητα Λίστας'\n'Item already exists in the list': 'Το αντικείμενο υπάρχει ήδη στη λίστα'\n'Featured Articles': 'Προτεινόμενα Άρθρα'\n'Featured Article Lists': 'Λίστες Προτεινόμενων Άρθρων'\n'Featured Article List': 'Λίστα Προτεινόμενων Άρθρων'\n'Duplicate list': 'Αντιγραφή λίστας'\n'Duplicate article entry found': 'Βρέθηκε είσοδος άρθρου εις διπλούν'\n'Drag here to add to list': 'Σύρετε εδώ για να προσθέσετε στη λίστα'\n'Could not save the list': 'Δεν ήταν δυνατή η αποθήκευση της λίστας '\n'Available Articles': 'Διαθέσιμα Άρθρα'\n'Are you sure you want to delete this list?': 'Είστε σίγουρος/η ότι θέλετε να διαγράψετε αυτή τη λίστα;'\n'Add to list': 'Προσθήκη στη λίστα'\n'Add list': 'Προσθήκη λίστας'\n'Multi date events': 'Εκδηλώσεις πολλαπλών ημερομηνιών'\nSlideshows: Slideshows\n'Place images': 'Τοποθέτηση εικόνων'\n'Youre not allowed to edit article.': 'Δεν έχετε το δικαίωμα επεξεργασίας άρθρου.'\nWebcode: Webcode\nUnapproved: 'Δεν εγκρίθηκε'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Το τεύχος δεν μπόρεσε να προβληθεί. Παρακαλούμε βεβαιωθείτε ότι έχετε αποδόσει θέμα στην έκδοση.'\n'The article could not be submitted.': 'Το άρθρο δεν μπόρεσε να υποβληθεί.'\n'Submit articles': 'Υποβολή άρθρων'\n'Submit article': 'Υποβολή άρθρου'\n'Related Articles': 'Σχετικά Άρθρα'\n'Pending articles': 'Εκκρεμή άρθρα'\n'Pending Articles': 'Εκκρεμή Άρθρα'\n'Context Box updated': 'Το κουτί περιεχομένου ενημερώθηκε'\nOn: On\nOff: Off\n'You do not have the right to moderate comments.': 'Δεν έχετε το δικαίωμα διαχείρισης σχολίων.'\n'You can not schedule opposing events at the same time': 'Δεν μπορείτε να προγραμματίσετε ταυτόχρονα αντιτιθέμενες εκδηλώσεις '\n'Unable to reach Newscoop. Please check your internet connection.': 'Αδύνατη η πρόσβαση στο Newscoop. Παρακαλούμε ελέγξτε την σύνδεση σας.'\nTitle: Τίτλος\n'There already is an article with the same name. Please change the name and try again.': 'Υπάρχει ήδη ένα άρθρο με το ίδιο όνομα. Παρακαλούμε αλλάξτε το όνομα και προσπαθήστε ξανά.'\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': 'Όλες οι προγραμματισμένες εκδηλώσεις δημοσίευσης για αυτό το άρθρο θα διαγραφούν, σε περίπτωση που το καταστήσετε «Νέο». Παρακαλούμε επιβεβαιώστε την αλλαγή κατάστασης.'\nGeolocation: Geolocation\nNewscoop: Newscoop\n'Overwrite articles with matching names': 'Επεγγραφή  άρθρων με αντίστοιχα ονόματα'\n'Article <i>$1</i> already exists, and was not overwritten.<br />': 'Το άρθρο <i>$1</i> υπάρχει ήδη και δεν υπέστει επεγγραφή. <br />'\nFiles: Αρχεία\n'Select section:': 'Επιλογή ενότητας:'\n'Add another author': 'Προσθήκη άλλου συγγραφέα'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Το άρθρο κλειδώθηκε από $1 ($2) πριν από $3 λεπτό/ά.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Το άρθρο κλειδώθηκε από $1 ($2) πριν από $3 ώρα/ες και $4 λεπτό/ά.'\n'Switches saved.': 'Οι εναλλαγές αποθηκεύτηκαν.'\n'Keywords saved.': 'Οι λέξεις-κλειδιά αποθηκεύτηκαν.'\n'Comment settings': 'Σχολιασμός ρυθμίσεων'\nAuthors: Συγγραφείς\n'Attach Topic To Article': 'Επισύναψη Θέματος Στο Άρθρο'\n'Article saved.': 'Το άρθρο αποθηκεύτηκε.'\n'Article is locked': 'Το άρθρο είναι κλειδωμένο'\n'Actions updated.': 'Οι ενέργειες ενημερώθηκαν.'\n'Your work has not been saved. Do you want to continue and lose your changes?': 'Η δουλειά σας δεν έχει αποθηκευτεί. Επιθυμείτε να συνεχίσετε και να χάσετε τις αλλαγές σας;'\nSwitches: Εναλλαγές\n'No subtopics available': 'Καμία διαθέσιμη κατηγορία'\n'Newscoop Subhead': 'Υποκεφαλίδα Newscoop'\nMedia: Media\n'Last modified': 'Τελευταίως τροποποιημένα'\n'Keywords &amp; Topics': 'Λέξεις κλειδιά &  Θέματα'\nInfo: Πληροφορίες\n'Go to live article': 'Πήγαινε στο ζωντανό άρθρο'\nCreated: Δημιουργήθηκε\n'Are you sure you want to remove the map from the article?': 'Είστε σίγουρος/η ότι θέλετε να αφαιρέσετε τον χάρτη από το άρθρο;'\n'Scheduled action added': 'Η προγραμματισμένη ενέργεια προστέθηκε'\n'Content edited': 'Το περιεχόμενο υπέστη επεξεργασία'\n'You must select an article language.': 'Πρέπει να επιλέξετε μια γλώσσα για το άρθρο.'\n'You must select a publication.': 'Πρέπει να επιλέξετε μια δημοσίευση.'\n'You must select a file to upload.': 'Πρέπει να επιλέξετε ένα αρχείο για ανέβασμα.'\n'You must select a XML input file.': 'Πρέπει να επιλέξετε ένα αρχείο εισαγωγής XML.'\n'You do not have the right to import XML archives.': 'Δεν έχετε το δικαίωμα να εισάγετε XML αρχεία.'\n'There was a problem uploading the file.': 'Υπήρξε ένα πρόβλημα κατά το ανέβασμα του αρχείου.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Το αρχείο ανεβάστηκε μερικώς. Αυτό είναι σύνηθες όταν ο μέγιστος χρόνος ανεβάσματος ενός αρχείου είναι χαμηλός σε αντίθεση με το μέγεθος αρχείου που προσπαθείτε να εισάγετε. Ο μέγιστος χρόνος εισαγωγής  καθορίστηκε στο php.ini'\n'The file exceeds the allowed max file size.': 'Το αρχείο υπερβαίνει το επιτρεπόμενο μέγιστο μέγεθος αρχείου.'\nOptional: Προαιρετικό\n'Input File': 'Εισαγωγή Αρχείου'\n'Import XML': 'Εισαγωγή XML'\n'File is not a valid XML file.': 'Το αρχείο δεν είναι έγκυρο XML αρχείο.'\n'File does not exist.': 'Το αρχείο δεν υπάρχει.'\n'File could not be uploaded.': 'Το αρχείο δεν μπόρεσε να φορτωθεί.'\n'File could not be read.': 'Το αρχείο δεν μπόρεσε να διαβαστεί.'\n'Error List': 'Λίστα Σφάλματος'\n'Bad format in XML file.': 'Κακή μορφή σε αρχείο XML.'\n'Article could not be created.': 'Το άρθρο δεν μπόρεσε να δημιουργηθεί.'\n'---Select article type---': '---Επιλογή τύπου άρθρου---'\n'$1 articles successfully imported.': '$1 άρθρα εισήχθησαν επιτυχώς.'\nSaved: Αποθηκεύτηκε\n'Save All': 'Αποθήκευση Όλων'\n'Online Server: On': 'Online Διακομιστής: On'\n'Online Server: Off': 'Online Διακομιστής: Off'\nDownload: Download\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': 'Δεν μπορείτε να έχετε δυο άρθρα με το ίδιο όνομα στην ίδια ενότητα. Το όνομα άρθρου που ορίσατε χρησιμοποιήται ήδη από το άρθρο $1.'\n'Visible to non-subscribers': 'Ορατό σε μη-συνδρομητές'\n'The article could not be published.': 'Το άρθρο δεν μπόρεσε να δημοσιευθεί.'\n'Scheduled action deleted.': 'Η προγραμματισμένη ενέργεια διαγράφτηκε.'\n'Scheduled action added.': 'Η προγραμματισμένη ενέργεια προστέθηκε.'\n'Article(s) unlocked.': 'Το άρθρο/α ξεκλειδώθηκαν.'\n'Article(s) duplicated.': 'Το άρθρο/α αντιγράφτηκαν.'\n'Article(s) deleted.': 'Το άρθρο/α διαγράφτηκαν.'\n'Article status set to $1': 'Η κατάσταση του άρθρου ορίστηκε σε $1'\n'Article unlocked.': 'Το άρθρο ξεκλειδώθηκε.'\n'Article translation created.': 'Η μετάφραση του άρθρου δημιουργήθηκε.'\n'Article order changed.': 'Η εντολή του άρθρου άλλαξε.'\n'Article moved.': 'Το άρθρο μετακινήθηκε.'\n'Article deleted.': 'Το άρθρο διαγράφτηκε.'\n'Article created.': 'Το άρθρο δημιουργήθηκε.'\n'$1 toggled.': '$1 εναλλάχθηκε.'\n'Total:': 'Σύνολο:'\n'Show Comments': 'Εμφάνιση Σχολίων'\nLocked: Κλειδώθηκε\n'Invalid type: $1': 'Μη έγκυρος τύπος: $1'\n'Hide Comments': 'Απόκρυψη Σχολίων'\nEnabled: Ενεργοποιήθηκε\nDisabled: Απενεργοποιήθηκε\nComments: Σχόλια\n'The article has already been translated into $1.': 'Το άρθρο έχει ήδη μεταφραστεί στα $1.'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'Πρέπει να ορίσετε την δημοσίευση, το τεύχος και την ενότητα για αυτό το άρθρο, για να μπορέσετε να το προγραμματίσετε για δημοσίευση. Για να γίνει αυτό, πηγαίνετε στο μενού $1 και επιλέξτε $2.'\n'You do not have the right to translate articles.': 'Δεν έχετε το δικαίωμα να μεταφράσετε άρθρα.'\n'You do not have the right to publish articles.': 'Δεν έχετε το δικαίωμα να δημοσιεύσετε άρθρα.'\n'You do not have the right to move articles.': 'Δεν έχετε το δικαίωμα να μετακινήσετε άρθρα.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'Δεν μπορείτε $1 τα σημειωμένα με κόκκινο άρθρα, επειδή το τεύχος προορισμού δεν έχει μεταφραστεί στην κατάλληλη γλώσσα. '\n'Publish?': 'Δημοσίευση?'\n'Publish articles': 'Δημοσίευση άρθρων'\n'Publish article': 'Δημοσίευση άρθρου'\n'Move?': 'Μετακίνηση?'\n'Move articles': 'Μετακίνηση άρθρων'\n'Move article': 'Μετακίνηση άρθρου'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'Πρέπει να δημιουργηθεί ένα τεύχος για την επιλεγμένη γλώσσα, αλλά δεν έχετε το δικαίωμα να δημιουργήσετε τεύχος.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'Πρέπει να δημιουργηθεί μια ενότητα για την επιλεγμένη γλώσσα, αλλά δεν έχετε το δικαίωμα να δημιουργήσετε ενότητα.'\n'to section': 'στην ενότητα'\n'You must choose a language': 'Πρέπει να επιλέξετε γλώσσα'\n'Unable to create the section for translation $1.': 'Η δημιουργία ενότητας για την μετάφραση $1 ήταν αδύνατη.'\n'Unable to create the issue for translation $1.': 'Η δημιουργία τεύχους για την μετάφραση $1 ήταν αδύνατη.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'Τα παρακάτω άρθρα είναι νέα. Δεν είναι δυνατόν να προγραμματιστούν για αυτόματη δημοσίευση'\n'Section URL Name': 'URL Όνομα Ενότητας'\n'Section Name': 'Όνομα Ενότητας'\n'Publish Schedule': 'Δημοσίευση Προγράμματος'\n'No action specified': 'Δεν ορίστηκε καμία ενέργεια'\n'New section name': 'Νέο όνομα ενότητας'\n'New section URL name': 'Νέο URL όνομα ενότητας'\n'New issue name': 'Νέο όνομα τεύχους'\n'New issue URL name': 'Νέο URL όνομα τεύχους'\n'New article name': 'Νέο όνομα άρθρου'\n'Issue URL Name': 'URL Όνομα Τεύχους'\n'Issue Name': 'Όνομα Τεύχους'\n'Duplicate?': Αντιγραφή;\n'Duplicate articles': 'Αντιγραφή άρθρων'\n'Article name ($1)': 'Όνομα άρθρου ($1)'\n'Article List': 'Λίστα Άρθρου'\n'Are you sure you want to remove the topic $1 from the article?': 'Είστε σίγουρος/η ότι θέλετε να αφαιρέσετε το θέμα $1 από το άρθρο;'\n'Are you sure you want to remove the file $1 from the article?': 'Είστε σίγουρος/η ότι θέλετε να αφαιρέσετε το αρχείο $1 από το άρθρο;'\n'Are you sure you want to remove the event scheduled on $1?': 'Είστε σίγουρος/η ότι θέλετε να αφαιρέσετε την προγραμματισμένη εκδήλωση στις $1;'\n'Are you sure you want to delete this article?': 'Είστε σίγουρος πως θέλετε να διαγράψετε αυτό το άρθρο;'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'Ένα τεύχος πρέπει να δημιουργηθεί για την επιλεγμένη γλώσσα. Παρακαλούμε εισάγετε το όνομα τεύχους και το όνομα URL.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'Μια ενότητα πρέπει να δημιουργηθεί για την επιλεγμένη γλώσσα. Παρακαλούμε εισάγετε το όνομα κατηγορίας και το όνομα URL.'\n'Article Type': 'Τύπος Άρθρου'\n'Show article on front page': 'Εμφάνιση άρθρου στην αρχική σελίδα'\n'Show article on section page': 'Εμφάνιση άρθρου στην σελίδα ενότητας'\n'Translate article': 'Μετάφραση άρθρου'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'Δεν έχετε το δικαίωμα να αλλάξετε αυτό το άρθρο. Μπορείτε να επεξεργαστείτε μόνο τα δικά σας άρθρα και μόλις ένα άρθρο υποβληθεί, μπορεί να αλλάξει μόνο από εξουσιοδοτημένους χρήστες.'\n'Duplicate article': 'Αντιγραφή άρθρου'\n'The destination section is the same as the source section.': 'Η ενότητητα προορισμού είναι ίδια με την υφιστάμενη.'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'Το άρθρο είναι νέο. Δεν είναι δυνατόν να προγραμματιστεί για αυτόματη δημοσίευση.'\n'No article types were defined. You must create an article type first.': 'Κανένας τύπος άρθρου δεν ορίστηκε. Πρέπει να δημιουργήσετε πρώτα έναν τύπο άρθρου. '\n'Edit article types': 'Επεξεργασία τύπων άρθρων'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Το άρθρο ήταν αδύνατον να αποθηκευτεί. Έχει κλειδωθεί πριν από $1 $2 ώρες και $3 λεπτά.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Δεν έχετε το δικαίωμα να αλλάξετε την κατάσταση του άρθρου. Μόλις ένα άρθρο υποβληθεί μπορεί να αλλάξει μόνο από εξουσιοδοτημένους χρήστες.'\n'You do not have the right to delete articles.': 'Δεν έχετε το δικαίωμα να διαγράψετε άρθρα.'\n'You must select an article type.': 'Πρέπει να επιλέξετε έναν τύπο άρθρου.'\n'Are you sure you want to remove the image $1 from the article?': 'Είστε σίγουρος/η ότι θέλετε να αφαιρέσετε την εικόνα $1 από το άρθρο;'\n'There was an error reading request parameters.': 'Υπήρξε σφάλμα κατά την ανάγνωση αιτήματος των παραμέτρων.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'Η προεπισκόπιση του άρθρου δεν ήταν δυνατή. Παρακαλούμε βεβαιωθείτε ότι έχει επιλεγεί το πρότυπο του άρθρου.'\n'No such article.': 'Δεν υπάρχει τέτοιο άρθρο.'\n'No such section.': 'Δεν υπάρχει τέτοια ενότητα.'\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.en.yml",
    "content": "'Edit metadata': 'Edit metadata'\nRating: Rating\n'Enable Rating': 'Enable Rating'\n'Blog management': 'Blog management'\n'View article': 'View article'\n'Select a list': 'Select a list'\n'Remove list': 'Remove list'\n'Please select a list': 'Please select a list'\nPlaylist: Playlist\n'List updated.': 'List updated.'\n'List saved': 'List saved'\n'List Name': 'List Name'\n'List ID': 'List ID'\n'Item already exists in the list': 'Item already exists in the list'\n'Featured Articles': 'Featured Articles'\n'Featured Article Lists': 'Featured Article Lists'\n'Featured Article List': 'Featured Article List'\n'Duplicate list': 'Duplicate list'\n'Duplicate article entry found': 'Duplicate article entry found'\n'Drag here to add to list': 'Drag here to add to list'\n'Could not save the list': 'Could not save the list'\n'Available Articles': 'Available Articles'\n'Are you sure you want to delete this list?': 'Are you sure you want to delete this list?'\n'Add to list': 'Add to list'\n'Add list': 'Add list'\n'Multi date events': 'Multi date events'\nSlideshows: Slideshows\n'Place images': 'Place images'\n'Youre not allowed to edit article.': 'Youre not allowed to edit article.'\nWebcode: Webcode\nUnapproved: Unapproved\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'This issue cannot be previewed. Please make sure the publication has a theme assigned.'\n'The article could not be submitted.': 'The article could not be submitted.'\n'Submit articles': 'Submit articles'\n'Submit article': 'Submit article'\n'Related Articles': 'Related Articles'\n'Pending articles': 'Pending articles'\n'Pending Articles': 'Pending Articles'\n'Context Box updated': 'Context Box updated'\nOn: On\nOff: Off\n'You do not have the right to moderate comments.': 'You do not have the right to moderate comments.'\n'You can not schedule opposing events at the same time': 'You can not schedule opposing events at the same time'\n'Unable to reach Newscoop. Please check your internet connection.': 'Unable to reach Newscoop. Please check your internet connection.'\nTitle: Title\n'There already is an article with the same name. Please change the name and try again.': 'There already is an article with the same name. Please change the name and try again.'\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': 'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.'\nGeolocation: Geolocation\nNewscoop: Newscoop\n'Overwrite articles with matching names': 'Overwrite articles with matching names'\n'Article <i>$1</i> already exists, and was not overwritten.<br />': 'Article <i>$1</i> already exists, and was not overwritten.<br />'\nFiles: Files\n'Select section:': 'Select section:'\n'Add another author': 'Add another author'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'The article has been locked by $1 ($2) $3 minute(s) ago.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.'\n'Switches saved.': 'Switches saved.'\n'Keywords saved.': 'Keywords saved.'\n'Comment settings': 'Comment settings'\nAuthors: Authors\n'Attach Topic To Article': 'Attach Topic To Article'\n'Article saved.': 'Article saved.'\n'Article is locked': 'Article is locked'\n'Actions updated.': 'Actions updated.'\n'Your work has not been saved. Do you want to continue and lose your changes?': 'Your work has not been saved. Do you want to continue and lose your changes?'\nSwitches: Switches\n'No subtopics available': 'No subtopics available'\n'Newscoop Subhead': 'Newscoop Subhead'\nMedia: Media\n'Last modified': 'Last modified'\n'Keywords &amp; Topics': 'Keywords &amp; Topics'\nInfo: Info\n'Go to live article': 'Go to live article'\nCreated: Created\n'Are you sure you want to remove the map from the article?': 'Are you sure you want to remove the map from the article?'\n'Scheduled action added': 'Scheduled action added'\n'Content edited': 'Content edited'\n'You must select an article language.': 'You must select an article language.'\n'You must select a publication.': 'You must select a publication.'\n'You must select a file to upload.': 'You must select a file to upload.'\n'You must select a XML input file.': 'You must select a XML input file.'\n'You do not have the right to import XML archives.': 'You do not have the right to import XML archives.'\n'There was a problem uploading the file.': 'There was a problem uploading the file.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini'\n'The file exceeds the allowed max file size.': 'The file exceeds the allowed max file size.'\nOptional: Optional\n'Input File': 'Input File'\n'Import XML': 'Import XML'\n'File is not a valid XML file.': 'File is not a valid XML file.'\n'File does not exist.': 'File does not exist.'\n'File could not be uploaded.': 'File could not be uploaded.'\n'File could not be read.': 'File could not be read.'\n'Error List': 'Error List'\n'Bad format in XML file.': 'Bad format in XML file.'\n'Article could not be created.': 'Article could not be created.'\n'---Select article type---': '---Select article type---'\n'$1 articles successfully imported.': '$1 articles successfully imported.'\nSaved: Saved\n'Save All': 'Save All'\n'Online Server: On': 'Online Server: On'\n'Online Server: Off': 'Online Server: Off'\nDownload: Download\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': 'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.'\n'Visible to non-subscribers': 'Visible to non-subscribers'\n'The article could not be published.': 'The article could not be published.'\n'Scheduled action deleted.': 'Scheduled action deleted.'\n'Scheduled action added.': 'Scheduled action added.'\n'Article(s) unlocked.': 'Article(s) unlocked.'\n'Article(s) duplicated.': 'Article(s) duplicated.'\n'Article(s) deleted.': 'Article(s) deleted.'\n'Article status set to $1': 'Article status set to $1'\n'Article unlocked.': 'Article unlocked.'\n'Article translation created.': 'Article translation created.'\n'Article order changed.': 'Article order changed.'\n'Article moved.': 'Article moved.'\n'Article deleted.': 'Article deleted.'\n'Article created.': 'Article created.'\n'$1 toggled.': '$1 toggled.'\n'Total:': 'Total:'\n'Show Comments': 'Show Comments'\nLocked: Locked\n'Invalid type: $1': 'Invalid type: $1'\n'Hide Comments': 'Hide Comments'\nEnabled: Enabled\nDisabled: Disabled\nComments: Comments\n'The article has already been translated into $1.': 'The article has already been translated into $1.'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.'\n'You do not have the right to translate articles.': 'You do not have the right to translate articles.'\n'You do not have the right to publish articles.': 'You do not have the right to publish articles.'\n'You do not have the right to move articles.': 'You do not have the right to move articles.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.'\n'Publish?': 'Publish?'\n'Publish articles': 'Publish articles'\n'Publish article': 'Publish article'\n'Move?': 'Move?'\n'Move articles': 'Move articles'\n'Move article': 'Move article'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'An issue must be created for the selected language but you do not have the right to create an issue.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'A section must be created for the selected language but you do not have the right to create a section.'\n'to section': 'to section'\n'You must choose a language': 'You must choose a language'\n'Unable to create the section for translation $1.': 'Unable to create the section for translation $1.'\n'Unable to create the issue for translation $1.': 'Unable to create the issue for translation $1.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'The following articles are new; it is not possible to schedule them for automatic publishing'\n'Section URL Name': 'Section URL Name'\n'Section Name': 'Section Name'\n'Publish Schedule': 'Publish Schedule'\n'No action specified': 'No action specified'\n'New section name': 'New section name'\n'New section URL name': 'New section URL name'\n'New issue name': 'New issue name'\n'New issue URL name': 'New issue URL name'\n'New article name': 'New article name'\n'Issue URL Name': 'Issue URL Name'\n'Issue Name': 'Issue Name'\n'Duplicate?': 'Duplicate?'\n'Duplicate articles': 'Duplicate articles'\n'Article name ($1)': 'Article name ($1)'\n'Article List': 'Article List'\n'Are you sure you want to remove the topic $1 from the article?': 'Are you sure you want to remove the topic $1 from the article?'\n'Are you sure you want to remove the file $1 from the article?': 'Are you sure you want to remove the file $1 from the article?'\n'Are you sure you want to remove the event scheduled on $1?': 'Are you sure you want to remove the event scheduled on $1?'\n'Are you sure you want to delete this article?': 'Are you sure you want to delete this article?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'An issue must be created for the selected language.  Please enter the issue name and URL name.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'A section must be created for the selected language.  Please enter the section name and URL name.'\n'Article Type': 'Article Type'\n'Show article on front page': 'Show article on front page'\n'Show article on section page': 'Show article on section page'\n'Translate article': 'Translate article'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.'\n'Duplicate article': 'Duplicate article'\n'The destination section is the same as the source section.': 'The destination section is the same as the source section.'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'The article is new; it is not possible to schedule it for automatic publishing.'\n'No article types were defined. You must create an article type first.': 'No article types were defined. You must create an article type first.'\n'Edit article types': 'Edit article types'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.'\n'You do not have the right to delete articles.': 'You do not have the right to delete articles.'\n'You must select an article type.': 'You must select an article type.'\n'Are you sure you want to remove the image $1 from the article?': 'Are you sure you want to remove the image $1 from the article?'\n'There was an error reading request parameters.': 'There was an error reading request parameters.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'This article cannot be previewed. Please make sure it has the article template selected.'\n'No such article.': 'No such article.'\n'No such section.': 'No such section.'\n'Characters': 'Characters'\n'Snippet': 'Snippet'\n'This list is already in a different state than the one in which it was loaded.': 'This list is already in a different state than the one in which it was loaded.'\n'List name should not be longer than 40 chars': 'List name should not be longer than 40 chars'\n'Not valid number': 'Not valid number'\n'List limit': 'List limit'\n'The last article of this list has been removed.': 'The last article of this list has been removed.'\n'Revert': 'Revert'\n'Could not automatically refresh the list': 'Could not automatically refresh the list'\n'The article slideshows have been successfully updated, please close the window.': 'The article slideshows have been successfully updated, please close the window.'\narticles:\n    playlists:\n        namechanged: 'Are you sure you want to change the list name? The name might be used in the Newscoop templates to render the list in the frontend. Please check with your siteadmin if you have doubts.'\n        alert: 'Are you sure you want to change the maximum number of articles for this featured article list? If you change the limit, all articles beyond this limit will be deleted. Example: If you change the limit from 50 to 30 articles all 20 articles starting from position number 31 till 50 will be deleted from the list.'\n    images:\n        see_original: See full-size image in a new tab\n        edit:\n            edit_image_metadata: Edit image metadata\n            save: Save\n            form:\n                use: Use\n                number: Number\n                caption: Caption\n                status_approved: Approved\n                status_unapproved: Unapproved\n                status: Status\n                description: Description\n                photographer: Photographer\n                photographer_url: Photographer URL\n                place: Place\n                date: Date\n                article_specific: Article specific\n                global: Global\n                other_captions: Other Captions\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.en_GB.yml",
    "content": "'Edit metadata': 'Edit metadata'\nRating: Rating\n'Enable Rating': 'Enable Rating'\n'Blog management': 'Blog management'\n'View article': 'View article'\n'Select a list': 'Select a list'\n'Remove list': 'Remove list'\n'Please select a list': 'Please select a list'\nPlaylist: Playlist\n'List updated.': 'List updated.'\n'List saved': 'List saved'\n'List Name': 'List Name'\n'List ID': 'List ID'\n'Item already exists in the list': 'Item already exists in the list'\n'Featured Articles': 'Featured Articles'\n'Featured Article Lists': 'Featured Article Lists'\n'Featured Article List': 'Featured Article List'\n'Duplicate list': 'Duplicate list'\n'Duplicate article entry found': 'Duplicate article entry found'\n'Drag here to add to list': 'Drag here to add to list'\n'Could not save the list': 'Could not save the list'\n'Available Articles': 'Available Articles'\n'Are you sure you want to delete this list?': 'Are you sure you want to delete this list?'\n'Add to list': 'Add to list'\n'Add list': 'Add list'\n'Multi date events': 'Multi date events'\nSlideshows: Slideshows\n'Place images': 'Place images'\n'Youre not allowed to edit article.': 'Youre not allowed to edit article.'\nWebcode: Webcode\nUnapproved: Unapproved\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'This issue cannot be previewed. Please make sure the publication has a theme assigned.'\n'The article could not be submitted.': 'The article could not be submitted.'\n'Submit articles': 'Submit articles'\n'Submit article': 'Submit article'\n'Related Articles': 'Related Articles'\n'Pending articles': 'Pending articles'\n'Pending Articles': 'Pending Articles'\n'Context Box updated': 'Context Box updated'\nOn: On\nOff: Off\n'You do not have the right to moderate comments.': 'You do not have the right to moderate comments.'\n'You can not schedule opposing events at the same time': 'You can not schedule opposing events at the same time'\n'Unable to reach Newscoop. Please check your internet connection.': 'Unable to reach Newscoop. Please check your internet connection.'\nTitle: Title\n'There already is an article with the same name. Please change the name and try again.': 'There already is an article with the same name. Please change the name and try again.'\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': 'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.'\nGeolocation: Geolocation\nNewscoop: Newscoop\n'Overwrite articles with matching names': 'Overwrite articles with matching names'\n'Article <i>$1</i> already exists, and was not overwritten.<br />': 'Article <i>$1</i> already exists, and was not overwritten.<br />'\nFiles: Files\n'Select section:': 'Select section:'\n'Add another author': 'Add another author'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'The article has been locked by $1 ($2) $3 minute(s) ago.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.'\n'Switches saved.': 'Switches saved.'\n'Keywords saved.': 'Keywords saved.'\n'Comment settings': 'Comment settings'\nAuthors: Authors\n'Attach Topic To Article': 'Attach Topic To Article'\n'Article saved.': 'Article saved.'\n'Article is locked': 'Article is locked'\n'Actions updated.': 'Actions updated.'\n'Your work has not been saved. Do you want to continue and lose your changes?': 'Your work has not been saved. Do you want to continue and lose your changes?'\nSwitches: Switches\n'No subtopics available': 'No subtopics available'\n'Newscoop Subhead': 'Newscoop Subhead'\nMedia: Media\n'Last modified': 'Last modified'\n'Keywords &amp; Topics': 'Keywords & Topics'\nInfo: Info\n'Go to live article': 'Go to live article'\nCreated: Created\n'Are you sure you want to remove the map from the article?': 'Are you sure you want to remove the map from the article?'\n'Scheduled action added': 'Scheduled action added'\n'Content edited': 'Content edited'\n'You must select an article language.': 'You must select an article language.'\n'You must select a publication.': 'You must select a publication.'\n'You must select a file to upload.': 'You must select a file to upload.'\n'You must select a XML input file.': 'You must select a XML input file.'\n'You do not have the right to import XML archives.': 'You do not have the right to import XML archives.'\n'There was a problem uploading the file.': 'There was a problem uploading the file.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini'\n'The file exceeds the allowed max file size.': 'The file exceeds the allowed max file size.'\nOptional: Optional\n'Input File': 'Input File'\n'Import XML': 'Import XML'\n'File is not a valid XML file.': 'File is not a valid XML file.'\n'File does not exist.': 'File does not exist.'\n'File could not be uploaded.': 'File could not be uploaded.'\n'File could not be read.': 'File could not be read.'\n'Error List': 'Error List'\n'Bad format in XML file.': 'Bad format in XML file.'\n'Article could not be created.': 'Article could not be created.'\n'---Select article type---': '---Select article type---'\n'$1 articles successfully imported.': '$1 articles successfully imported.'\nSaved: Saved\n'Save All': 'Save All'\n'Online Server: On': 'Online Server: On'\n'Online Server: Off': 'Online Server: Off'\nDownload: Download\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': 'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.'\n'Visible to non-subscribers': 'Visible to non-subscribers'\n'The article could not be published.': 'The article could not be published.'\n'Scheduled action deleted.': 'Scheduled action deleted.'\n'Scheduled action added.': 'Scheduled action added.'\n'Article(s) unlocked.': 'Article(s) unlocked.'\n'Article(s) duplicated.': 'Article(s) duplicated.'\n'Article(s) deleted.': 'Article(s) deleted.'\n'Article status set to $1': 'Article status set to $1'\n'Article unlocked.': 'Article unlocked.'\n'Article translation created.': 'Article translation created.'\n'Article order changed.': 'Article order changed.'\n'Article moved.': 'Article moved.'\n'Article deleted.': 'Article deleted.'\n'Article created.': 'Article created.'\n'$1 toggled.': '$1 toggled.'\n'Total:': 'Total:'\n'Show Comments': 'Show Comments'\nLocked: Locked\n'Invalid type: $1': 'Invalid type: $1'\n'Hide Comments': 'Hide Comments'\nEnabled: Enabled\nDisabled: Disabled\nComments: Comments\n'The article has already been translated into $1.': 'The article has already been translated into $1.'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.'\n'You do not have the right to translate articles.': 'You do not have the right to translate articles.'\n'You do not have the right to publish articles.': 'You do not have the right to publish articles.'\n'You do not have the right to move articles.': 'You do not have the right to move articles.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.'\n'Publish?': 'Publish?'\n'Publish articles': 'Publish articles'\n'Publish article': 'Publish article'\n'Move?': 'Move?'\n'Move articles': 'Move articles'\n'Move article': 'Move article'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'An issue must be created for the selected language but you do not have the right to create an issue.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'A section must be created for the selected language but you do not have the right to create a section.'\n'to section': 'to section'\n'You must choose a language': 'You must choose a language'\n'Unable to create the section for translation $1.': 'Unable to create the section for translation $1.'\n'Unable to create the issue for translation $1.': 'Unable to create the issue for translation $1.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'The following articles are new; it is not possible to schedule them for automatic publishing'\n'Section URL Name': 'Section URL Name'\n'Section Name': 'Section Name'\n'Publish Schedule': 'Publish Schedule'\n'No action specified': 'No action specified'\n'New section name': 'New section name'\n'New section URL name': 'New section URL name'\n'New issue name': 'New issue name'\n'New issue URL name': 'New issue URL name'\n'New article name': 'New article name'\n'Issue URL Name': 'Issue URL Name'\n'Issue Name': 'Issue Name'\n'Duplicate?': 'Duplicate?'\n'Duplicate articles': 'Duplicate articles'\n'Article name ($1)': 'Article name ($1)'\n'Article List': 'Article List'\n'Are you sure you want to remove the topic $1 from the article?': 'Are you sure you want to remove the topic $1 from the article?'\n'Are you sure you want to remove the file $1 from the article?': 'Are you sure you want to remove the file $1 from the article?'\n'Are you sure you want to remove the event scheduled on $1?': 'Are you sure you want to remove the event scheduled on $1?'\n'Are you sure you want to delete this article?': 'Are you sure you want to delete this article?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'An issue must be created for the selected language.  Please enter the issue name and URL name.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'A section must be created for the selected language.  Please enter the section name and URL name.'\n'Article Type': 'Article Type'\n'Show article on front page': 'Show article on front page'\n'Show article on section page': 'Show article on section page'\n'Translate article': 'Translate article'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.'\n'Duplicate article': 'Duplicate article'\n'The destination section is the same as the source section.': 'The destination section is the same as the source section.'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'The article is new; it is not possible to schedule it for automatic publishing.'\n'No article types were defined. You must create an article type first.': 'No article types were defined. You must create an article type first.'\n'Edit article types': 'Edit article types'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.'\n'You do not have the right to delete articles.': 'You do not have the right to delete articles.'\n'You must select an article type.': 'You must select an article type.'\n'Are you sure you want to remove the image $1 from the article?': 'Are you sure you want to remove the image $1 from the article?'\n'There was an error reading request parameters.': 'There was an error reading request parameters.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'This article cannot be previewed. Please make sure it has the article template selected.'\n'No such article.': 'No such article.'\n'No such section.': 'No such section.'\nCharacters: Characters\nSnippet: Snippet\n'This list is already in a different state than the one in which it was loaded.': 'This list is already in a different state than the one in which it was loaded.'\n'List name should not be longer than 40 chars': 'List name should not be longer than 40 characters'\n'Not valid number': 'Not a valid number'\n'List limit': 'List limit'\n'The last article of this list has been removed.': 'The last article of this list has been removed.'\nRevert: Revert\n'Could not automatically refresh the list': 'Could not automatically refresh the list'\n'The article slideshows have been successfully updated, please close the window.': 'The article slideshows have been successfully updated, please close the window.'\narticles:\n    playlists:\n        namechanged: 'Are you sure you want to change the list name? The name might be used in the Newscoop templates to render the list in the front end. Please check with your site administrator if you have doubts.'\n        alert: 'Are you sure you want to change the maximum number of articles for this featured article list? If you change the limit, all articles beyond this limit will be deleted. Example: If you change the limit from 50 to 30 articles all 20 articles starting from position number 31 to 50 will be deleted from the list.'\n    images:\n        see_original: 'See full-size image in a new tab'\n        edit:\n            edit_image_metadata: 'Edit image metadata'\n            save: Save\n            form:\n                use: Use\n                number: Number\n                caption: Caption\n                status_approved: Approved\n                status_unapproved: Unapproved\n                status: Status\n                description: Description\n                photographer: Photographer\n                photographer_url: 'Photographer URL'\n                place: Place\n                date: Date\n                article_specific: 'Article specific'\n                global: Global\n                other_captions: 'Other Captions'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.es.yml",
    "content": "'Edit metadata': 'Editar metadatos'\nRating: Calificación\n'Enable Rating': 'Activar calificación'\n'Blog management': 'Administración del blog'\n'View article': 'Ver artículo'\n'Select a list': 'Seleccionar una lista'\n'Remove list': 'Remover lista'\n'Please select a list': 'Por favor selecciones una lista'\nPlaylist: 'Lista de artículos inteligente'\n'List updated.': 'Lista actualizada'\n'List saved': 'Lista almacenada'\n'List Name': 'Nombre de la lista'\n'List ID': 'ID de la lista'\n'Item already exists in the list': 'Este artículo ya existe en la lista'\n'Featured Articles': 'Artículos seleccionados'\n'Featured Article Lists': 'Listas de artículos seleccionados'\n'Featured Article List': 'Lista de artículos seleccionados'\n'Duplicate list': 'Duplicar lista'\n'Duplicate article entry found': 'Se detectó un artículo duplicado'\n'Drag here to add to list': 'Arrastra hasta aquí para agregar a la lista'\n'Could not save the list': 'No fue posible guardar la lista'\n'Available Articles': 'Artículos disponibles'\n'Are you sure you want to delete this list?': '¿Realmente desea eliminar esta lista?'\n'Add to list': 'Añadir a lista'\n'Add list': 'Añadir lista'\n'Multi date events': 'Eventos con múltiples fechas'\nSlideshows: Diapositivas\n'Place images': 'Colocar imágenes'\n'Youre not allowed to edit article.': 'No tiene permitido editar un artículo.'\nWebcode: Webcode\nUnapproved: 'No aprobado'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'No es posible previsualizar esta edición.  Por favor asegúrese de que la publicación tiene un tema asignado.'\n'The article could not be submitted.': 'No fue posible enviar el artículo.'\n'Submit articles': 'Enviar artículos'\n'Submit article': 'Enviar artículo'\n'Related Articles': 'Artículos relacionados'\n'Pending articles': 'Artículos pendientes'\n'Pending Articles': 'Artículos pendientes'\n'Context Box updated': 'Se actualizó la Casilla de Contexto'\nOn: Encendido\nOff: Apagado\n'You do not have the right to moderate comments.': 'No tienes autorización para moderar comentarios.'\n'You can not schedule opposing events at the same time': 'No puedes asignar eventos opuestos en el mismo horario'\n'Unable to reach Newscoop. Please check your internet connection.': 'No se pudo conectar a Newscoop. Por favor, verifica tu conexión a Internet.'\nTitle: Tìtulo\n'There already is an article with the same name. Please change the name and try again.': 'Ya existe un archivo con ese nombre. Por favor, cámbialo e intenta de nuevo.'\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': 'Por favor, recuerde que todos los eventos de publicación calendarizados para este artículo serán eliminados cuando cambie el estado a Nuevo. Confirme el cambio de estado.'\nGeolocation: Geolocalización\nNewscoop: Newscoop\n'Overwrite articles with matching names': 'Sobreescribir artículos con nombres idénticos'\n'Article <i>$1</i> already exists, and was not overwritten.<br />': 'Ya existe el artículo <i>$1</i> y no fue sobreescrito.<br />'\nFiles: Archivos\n'Select section:': 'Elija sección:'\n'Add another author': 'Añada otro autor'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': '$1 ($2) bloqueó el artículo hace $3 minuto(s).'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': '$1 ($2) bloqueó el artículo hace $3 hora(s) y $4 minuto(s).'\n'Switches saved.': 'Se almacenaron los switches.'\n'Keywords saved.': 'Se almacenaron las palabras clave.'\n'Comment settings': 'Configuración de comentarios'\nAuthors: Autores\n'Attach Topic To Article': 'Adjuntar tópico al artículo'\n'Article saved.': 'Artículo almacenado'\n'Article is locked': 'Artículo bloqueado'\n'Actions updated.': 'Se actualizaron las acciones.'\n'Your work has not been saved. Do you want to continue and lose your changes?': 'No ha almacenado su trabajo.  ¿Desea continuar y perder los cambios?'\nSwitches: Switches\n'No subtopics available': 'No hay subtópicos disponibles.'\n'Newscoop Subhead': 'Subtítulo de Newscoop'\nMedia: Multimedia\n'Last modified': 'Modificado por última vez'\n'Keywords &amp; Topics': 'Palabras clave & tópicos'\nInfo: Info\n'Go to live article': 'Previsualizar artículo'\nCreated: Creado\n'Are you sure you want to remove the map from the article?': '¿Desea remover el mapa del artículo?'\n'Scheduled action added': 'Se añadió una acción programada'\n'Content edited': 'Se editó el contenido'\n'You must select an article language.': 'Debes seleccionar un lenguaje para el artículo.'\n'You must select a publication.': 'Debes seleccionar una publicación.'\n'You must select a file to upload.': 'Debe seleccionar un archivo para cargar.'\n'You must select a XML input file.': 'Debes selecionar un archivor input XML '\n'You do not have the right to import XML archives.': 'No tienes el derecho de importar archivos XML.'\n'There was a problem uploading the file.': 'Hubo un problema al subir el archivo.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'El archivo solo subió parcialmente. Esto es común cuando el tiempo máximo para cargar un archivo es bajo en contraste con el tamaño del archivo que se está cargando. El tiempo máximo para cargar está especificado en php.ini'\n'The file exceeds the allowed max file size.': 'El archivo sobrepasa el tamaño máximo permitido para un archivo.'\nOptional: Opciones\n'Input File': 'Archivo de entrada'\n'Import XML': 'Importar XML'\n'File is not a valid XML file.': 'El archivo no es un archivo XML válido'\n'File does not exist.': 'El archivo no existe.'\n'File could not be uploaded.': 'El archivo no pudo ser cargado.'\n'File could not be read.': 'El archivo no pudo ser leído.'\n'Error List': 'Lista de errores.'\n'Bad format in XML file.': 'Formato erróneo en archivo XML.'\n'Article could not be created.': 'El artículo no pudo ser creado.'\n'---Select article type---': '- - - Seleccione un tipo de archivo - - -'\n'$1 articles successfully imported.': '$1 artículos exitosamente importada.'\nSaved: Guardado\n'Save All': 'Guardar todo'\n'Online Server: On': 'Servidor en línea: encendido'\n'Online Server: Off': 'Servidor en línea: apagado'\nDownload: Descargar\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': 'No puede tener dos artículos con el mismo nombre en la misma sección.  El nombre de artículo que especificó ya se está utilizando en el artículo $1. '\n'Visible to non-subscribers': 'Visible a no suscriptores'\n'The article could not be published.': 'No se pudo publicar el artículo.'\n'Scheduled action deleted.': 'Se eliminó la acción programada.'\n'Scheduled action added.': 'Se añadió la acción programada.'\n'Article(s) unlocked.': 'Se desbloqueó el o los artículos.'\n'Article(s) duplicated.': 'Se duplicó el o los artículos.'\n'Article(s) deleted.': 'Se eliminó el o los artículos.'\n'Article status set to $1': 'Se estableció el estatus del artículo en $1'\n'Article unlocked.': 'Se desbloqueó el artículo.'\n'Article translation created.': 'Se creó la traducción del artículo.'\n'Article order changed.': 'Se cambió el orden del artículo'\n'Article moved.': 'Se movió el artículo.'\n'Article deleted.': 'Se eliminó el artículo'\n'Article created.': 'Se creó el artículo'\n'$1 toggled.': '$ seleccionados/deseleccionados'\n'Total:': 'Total:'\n'Show Comments': 'Mostrar comentarios'\nLocked: Blquear\n'Invalid type: $1': 'Tipo inválido:  $1'\n'Hide Comments': 'Ocultar comentarios'\nEnabled: Activar\nDisabled: Desactivar\nComments: Comentarios\n'The article has already been translated into $1.': 'El artículo ya fue traducido a $1.'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'Debe especificar la publicación, edición y sección antes de programarla para publicación.  Vaya al menú $1 y seleccione $2 para hacerlo.  '\n'You do not have the right to translate articles.': 'No tiene permiso para traducir artículos'\n'You do not have the right to publish articles.': 'No tiene permiso para publicar artículos'\n'You do not have the right to move articles.': 'No tiene permiso para mover artículos'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'No puede $1 los artículos marcados en rojo porque la edición de destino no ha sido traducida al idioma apropiado.'\n'Publish?': '¿Publicar?'\n'Publish articles': 'Publicar artículos'\n'Publish article': 'Publicar artículo'\n'Move?': '¿Mover?'\n'Move articles': 'Mover artículos'\n'Move article': 'Mover artículo'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'Se debe crear una edición para el idioma seleccionado pero no tiene privilegios para hacerlo.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'Se debe crear una sección para el idioma seleccionado pero no tiene los privilegios para hacerlo.'\n'to section': 'a sección'\n'You must choose a language': 'Debe elegir un idioma.'\n'Unable to create the section for translation $1.': 'No fue posible crear la sección para la traducción $1.'\n'Unable to create the issue for translation $1.': 'No fue posible crear la edición para la traducción $1.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'Los siguientes artículos son nuevos; no es posible programarlos para publicación automática.'\n'Section URL Name': 'Nombre del URL de sección'\n'Section Name': 'Nombre de sección'\n'Publish Schedule': 'Publicar horario'\n'No action specified': 'No se ha especificado una acción'\n'New section name': 'Nombre de nueva sección'\n'New section URL name': 'Nuevo nombre para el URL de sección'\n'New issue name': 'Nombre de nueva edición'\n'New issue URL name': 'Nuevo nombre para URL de edición'\n'New article name': 'Nuevo nombre de artículo'\n'Issue URL Name': 'Nombre para URL de edición'\n'Issue Name': 'Nombre de edición'\n'Duplicate?': '¿Duplicar?'\n'Duplicate articles': 'Duplicar artículos'\n'Article name ($1)': 'Nombre de artículo ($1)'\n'Article List': 'Lista de artículos'\n'Are you sure you want to remove the topic $1 from the article?': '¿Está seguro de que desea eliminar el tópico $1 del artículo?'\n'Are you sure you want to remove the file $1 from the article?': '¿Está seguro de que desea eliminar el archivo $1 del artículo?'\n'Are you sure you want to remove the event scheduled on $1?': '¿Está seguro de que desea eliminar el evento programado para el $1?'\n'Are you sure you want to delete this article?': '¿Está seguro de que desea eliminar este artículo?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'Se debe crear una edición para el idioma seleccionado.  Por favor ingrese el nombre de la edición y del URL.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'Se debe crear una sección para el idioma seleccionado.  Por favor ingrese el nombre de la sección y del URL.'\n'Article Type': 'Tipo de artículo'\n'Show article on front page': 'Mostrar artículo en portada'\n'Show article on section page': 'Mostrar artículo en página de sección'\n'Translate article': 'Traducir artículo'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'No tiene derechos para cambiar este artículo.  Solamente puede editar sus propios artículos y una vez enviado un artículo sólo puede ser cambiado por usuarios autorizados.'\n'Duplicate article': 'Duplicar articulo'\n'The destination section is the same as the source section.': 'La seccion destino es la misma que la seccion fuente.'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'El artículo es nuevo; no es posible programarlo para publicación automática.'\n'No article types were defined. You must create an article type first.': 'No se definieron tipos de artículo.  Primero debe crear un tipo de artículo.'\n'Edit article types': 'Editar tipos de artículo'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'No puede almacenar el artículo.  Ha sido bloqueado por $1 hace $2 hora(s) y $3 minuto(s).'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'No tiene los privilegios para cambiar el estatus de este artículo.  Una vez enviado el artículo solo los usuarios autorizados pueden modificarlos.'\n'You do not have the right to delete articles.': 'No tiene privilegios para eliminar artículos.'\n'You must select an article type.': 'Debe seleccionar un tipo de artículo.'\n'Are you sure you want to remove the image $1 from the article?': '¿Está seguro de que desea eliminar la imagen $1 del artículo?'\n'There was an error reading request parameters.': 'Hubo un error en la lectura de parámetros de solicitud'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'No se puede previsualizar este artículo.  Por favor asegúrese que seleccionó el template artículo.'\n'No such article.': 'No existe articulo'\n'No such section.': 'No existe sección'\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.es_AR.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: Título\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: null\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': null\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': 'Tenés que seleccionar un archivo para subir.'\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': 'Hubo un problema al subir el archivo.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'El archivo se subió parcialmente. Esto es común cuando el tiempo máximo para subir un archivo es bajo en contraste con el tamaño del archivo que se está cargando. El tiempo máximo para cargar está especificado en php.ini'\n'The file exceeds the allowed max file size.': 'El archivo sobrepasa el tamaño máximo permitido para un archivo.'\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: Descargar\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': 'Artículo eliminado.'\n'Article created.': 'Artículo creado.'\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: null\n'The article has already been translated into $1.': null\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': null\n'You do not have the right to translate articles.': null\n'You do not have the right to publish articles.': null\n'You do not have the right to move articles.': null\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': null\n'Publish?': null\n'Publish articles': null\n'Publish article': null\n'Move?': null\n'Move articles': null\n'Move article': null\n'An issue must be created for the selected language but you do not have the right to create an issue.': null\n'A section must be created for the selected language but you do not have the right to create a section.': null\n'to section': null\n'You must choose a language': null\n'Unable to create the section for translation $1.': null\n'Unable to create the issue for translation $1.': null\n'The following articles are new; it is not possible to schedule them for automatic publishing': null\n'Section URL Name': null\n'Section Name': null\n'Publish Schedule': null\n'No action specified': null\n'New section name': null\n'New section URL name': null\n'New issue name': null\n'New issue URL name': null\n'New article name': null\n'Issue URL Name': null\n'Issue Name': null\n'Duplicate?': null\n'Duplicate articles': null\n'Article name ($1)': null\n'Article List': null\n'Are you sure you want to remove the topic $1 from the article?': null\n'Are you sure you want to remove the file $1 from the article?': null\n'Are you sure you want to remove the event scheduled on $1?': null\n'Are you sure you want to delete this article?': null\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': null\n'A section must be created for the selected language.  Please enter the section name and URL name.': null\n'Article Type': null\n'Show article on front page': null\n'Show article on section page': null\n'Translate article': null\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': null\n'Duplicate article': null\n'The destination section is the same as the source section.': null\n'The article is new; it is not possible to schedule it for automatic publishing.': null\n'No article types were defined. You must create an article type first.': null\n'Edit article types': null\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'You do not have the right to delete articles.': null\n'You must select an article type.': null\n'Are you sure you want to remove the image $1 from the article?': null\n'There was an error reading request parameters.': null\n'This article cannot be previewed. Please make sure it has the article template selected.': null\n'No such article.': null\n'No such section.': null\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.fa.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: null\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: null\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': null\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': null\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: null\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': null\n'Article created.': null\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: null\n'The article has already been translated into $1.': null\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': null\n'You do not have the right to translate articles.': null\n'You do not have the right to publish articles.': null\n'You do not have the right to move articles.': null\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': null\n'Publish?': null\n'Publish articles': null\n'Publish article': null\n'Move?': null\n'Move articles': null\n'Move article': null\n'An issue must be created for the selected language but you do not have the right to create an issue.': null\n'A section must be created for the selected language but you do not have the right to create a section.': null\n'to section': null\n'You must choose a language': null\n'Unable to create the section for translation $1.': null\n'Unable to create the issue for translation $1.': null\n'The following articles are new; it is not possible to schedule them for automatic publishing': null\n'Section URL Name': null\n'Section Name': null\n'Publish Schedule': null\n'No action specified': null\n'New section name': null\n'New section URL name': null\n'New issue name': null\n'New issue URL name': null\n'New article name': null\n'Issue URL Name': null\n'Issue Name': null\n'Duplicate?': null\n'Duplicate articles': null\n'Article name ($1)': null\n'Article List': null\n'Are you sure you want to remove the topic $1 from the article?': null\n'Are you sure you want to remove the file $1 from the article?': null\n'Are you sure you want to remove the event scheduled on $1?': null\n'Are you sure you want to delete this article?': null\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': null\n'A section must be created for the selected language.  Please enter the section name and URL name.': null\n'Article Type': null\n'Show article on front page': null\n'Show article on section page': null\n'Translate article': null\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': null\n'Duplicate article': null\n'The destination section is the same as the source section.': null\n'The article is new; it is not possible to schedule it for automatic publishing.': null\n'No article types were defined. You must create an article type first.': null\n'Edit article types': null\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'You do not have the right to delete articles.': null\n'You must select an article type.': null\n'Are you sure you want to remove the image $1 from the article?': null\n'There was an error reading request parameters.': null\n'This article cannot be previewed. Please make sure it has the article template selected.': null\n'No such article.': null\n'No such section.': null\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.fa_AF.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: null\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: null\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': null\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': null\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: null\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': null\n'Article created.': null\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: null\n'The article has already been translated into $1.': null\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': null\n'You do not have the right to translate articles.': null\n'You do not have the right to publish articles.': null\n'You do not have the right to move articles.': null\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': null\n'Publish?': null\n'Publish articles': null\n'Publish article': null\n'Move?': null\n'Move articles': null\n'Move article': null\n'An issue must be created for the selected language but you do not have the right to create an issue.': null\n'A section must be created for the selected language but you do not have the right to create a section.': null\n'to section': null\n'You must choose a language': null\n'Unable to create the section for translation $1.': null\n'Unable to create the issue for translation $1.': null\n'The following articles are new; it is not possible to schedule them for automatic publishing': null\n'Section URL Name': null\n'Section Name': null\n'Publish Schedule': null\n'No action specified': null\n'New section name': null\n'New section URL name': null\n'New issue name': null\n'New issue URL name': null\n'New article name': null\n'Issue URL Name': null\n'Issue Name': null\n'Duplicate?': null\n'Duplicate articles': null\n'Article name ($1)': null\n'Article List': null\n'Are you sure you want to remove the topic $1 from the article?': null\n'Are you sure you want to remove the file $1 from the article?': null\n'Are you sure you want to remove the event scheduled on $1?': null\n'Are you sure you want to delete this article?': null\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': null\n'A section must be created for the selected language.  Please enter the section name and URL name.': null\n'Article Type': null\n'Show article on front page': null\n'Show article on section page': null\n'Translate article': null\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': null\n'Duplicate article': null\n'The destination section is the same as the source section.': null\n'The article is new; it is not possible to schedule it for automatic publishing.': null\n'No article types were defined. You must create an article type first.': null\n'Edit article types': null\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'You do not have the right to delete articles.': null\n'You must select an article type.': null\n'Are you sure you want to remove the image $1 from the article?': null\n'There was an error reading request parameters.': null\n'This article cannot be previewed. Please make sure it has the article template selected.': null\n'No such article.': null\n'No such section.': null\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.fr.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: Titre\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: null\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': 'Attacher Sujet à Article '\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': 'Vous devez choisir un fichier à télécharger.'\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: null\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': null\n'Article created.': null\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: null\n'The article has already been translated into $1.': 'Larticle a déjà été traduit dans 1 $. '\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'Vous devez mettre la publication, lédition et la section pour cet article avant que vous ne puissiez le prévoir pour la publication. Allez au menu $1  et  choisir $2 pour faire cela. '\n'You do not have the right to translate articles.': 'Vous navez pas le droit de traduire des articles. '\n'You do not have the right to publish articles.': 'Vous navez pas le droit de publier des articles.'\n'You do not have the right to move articles.': 'Vous navez pas le droit de déplacer des articles.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'Vous ne pouvez pas $1 les articles marqués en rouge parce que lédition de destination na pas encore été traduite dans la langue appropriée. '\n'Publish?': 'Publier?'\n'Publish articles': 'Publier articles'\n'Publish article': 'Publier article'\n'Move?': 'Déplacer?'\n'Move articles': 'Déplacer articles'\n'Move article': 'Déplacer article'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'Une édition doit être créée pour la langue choisie mais vous navez pas le droit de créer une édition.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'Une section doit être créée pour la langue choisie mais vous navez pas le droit de créer une section. '\n'to section': 'à section'\n'You must choose a language': 'Vous devez choisir une langue'\n'Unable to create the section for translation $1.': 'Incapable de créer la section pour traduction $1.'\n'Unable to create the issue for translation $1.': 'Incapable de créer lédition pour traduction $1.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'Les articles suivants sont nouveaux; il nest pas possible de les prévoir pour la publication automatique'\n'Section URL Name': 'Nom URL de la Section'\n'Section Name': 'Nom de Section'\n'Publish Schedule': 'Publier un horaire'\n'No action specified': 'Aucune action spécifié.'\n'New section name': 'Nouveau nom de section'\n'New section URL name': 'Nouveau nom URL de section'\n'New issue name': 'Nouveau nom dédition'\n'New issue URL name': 'Nouveau nom URL dédition'\n'New article name': 'Nouveau nom darticle'\n'Issue URL Name': 'Nom URL déditition'\n'Issue Name': 'Nom dédition'\n'Duplicate?': 'Dupliquer?'\n'Duplicate articles': 'Dupliquer articles'\n'Article name ($1)': 'Nom darticle ($1)'\n'Article List': 'Liste des articles'\n'Are you sure you want to remove the topic $1 from the article?': 'Etes-vous sûr que vous voulez enlever le sujet $1 de larticle ? '\n'Are you sure you want to remove the file $1 from the article?': 'Etes-vous sûrs que vous voulez enlever le fichier $1 de larticle ? '\n'Are you sure you want to remove the event scheduled on $1?': 'Etes-vous sûrs que vous voulez enlever lévénement prévu sur $1? '\n'Are you sure you want to delete this article?': 'Ete-vous sûr de vouloir supprimer cet article?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'Une édition doit être créée pour la langue choisie. Entrez sil vous plaît le nom de lédition et le nom URL.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'Une section doit être créée pour la langue choisie. Entrez sil vous plaît le nom de section et le nom dURL.'\n'Article Type': 'Type dArticle '\n'Show article on front page': 'Afficher larticle en première page'\n'Show article on section page': 'Afficher larticle dans la page de section'\n'Translate article': 'Traduire article'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'Vous navez pas le droit de changer cet article. Vous pouvez seulement éditer vos propres articles et une fois soumis un article peut seulement être changé par des utilisateurs autorisés. '\n'Duplicate article': 'Dupliquer article'\n'The destination section is the same as the source section.': 'La section de destination est la même comme la section source. '\n'The article is new; it is not possible to schedule it for automatic publishing.': 'Larticle est nouveau; il nest pas possible de le prévoir pour la publication automatique. '\n'No article types were defined. You must create an article type first.': 'Aucun type darticle na été défini. Vous devez créer un type darticle dabord. '\n'Edit article types': 'Editer les types darticles'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Ne pouvait pas sauvegarder larticle. Il a été fermé par $1 $2 heures et $3 il y a des minutes.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Vous navez pas le droit de changer ce statut darticle. Une fois soumis un article peut seulement être changé par des utilisateurs autorisés. '\n'You do not have the right to delete articles.': 'Vous navez pas le droit de supprimer des articles.'\n'You must select an article type.': 'Vous devez choisir un type darticle. '\n'Are you sure you want to remove the image $1 from the article?': 'Etes-vous sûrs que vous voulez enlever limage $1 de larticle ? '\n'There was an error reading request parameters.': 'Il y avait une erreur survenu lors de la lecture des paramètres requis.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'Cet article ne peut être visualisé. SVP assurez-vous que son template darticle est sélectionné.'\n'No such article.': 'Pas darticle correspondant'\n'No such section.': 'Pas une telle section.'\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.he.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: null\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: null\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: כתבים\n'Attach Topic To Article': null\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': null\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: null\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': null\n'Article created.': null\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: תגובות\n'The article has already been translated into $1.': null\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': null\n'You do not have the right to translate articles.': null\n'You do not have the right to publish articles.': null\n'You do not have the right to move articles.': null\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': null\n'Publish?': null\n'Publish articles': null\n'Publish article': null\n'Move?': null\n'Move articles': null\n'Move article': null\n'An issue must be created for the selected language but you do not have the right to create an issue.': null\n'A section must be created for the selected language but you do not have the right to create a section.': null\n'to section': null\n'You must choose a language': null\n'Unable to create the section for translation $1.': null\n'Unable to create the issue for translation $1.': null\n'The following articles are new; it is not possible to schedule them for automatic publishing': null\n'Section URL Name': null\n'Section Name': null\n'Publish Schedule': null\n'No action specified': null\n'New section name': null\n'New section URL name': null\n'New issue name': null\n'New issue URL name': null\n'New article name': null\n'Issue URL Name': null\n'Issue Name': null\n'Duplicate?': null\n'Duplicate articles': null\n'Article name ($1)': null\n'Article List': null\n'Are you sure you want to remove the topic $1 from the article?': null\n'Are you sure you want to remove the file $1 from the article?': null\n'Are you sure you want to remove the event scheduled on $1?': null\n'Are you sure you want to delete this article?': null\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': null\n'A section must be created for the selected language.  Please enter the section name and URL name.': null\n'Article Type': null\n'Show article on front page': null\n'Show article on section page': null\n'Translate article': null\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': null\n'Duplicate article': null\n'The destination section is the same as the source section.': null\n'The article is new; it is not possible to schedule it for automatic publishing.': null\n'No article types were defined. You must create an article type first.': null\n'Edit article types': null\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'You do not have the right to delete articles.': null\n'You must select an article type.': null\n'Are you sure you want to remove the image $1 from the article?': null\n'There was an error reading request parameters.': null\n'This article cannot be previewed. Please make sure it has the article template selected.': null\n'No such article.': null\n'No such section.': null\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.hr.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: null\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: Datoteke\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': 'Priloži temu uz članak'\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': 'Morate označiti datoteku za postavljanje.'\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: null\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': null\n'Article created.': null\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: null\n'The article has already been translated into $1.': 'Članak je već preveden na $1.'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'Morate označiti publikaciju, izdanje i rubriku za ovaj članak prije nego što ga rasporedite za automatsko objavljivanje. Idite u izbornik $1 i označite $2'\n'You do not have the right to translate articles.': 'Nemate prava prevesti članak.'\n'You do not have the right to publish articles.': 'Nemate prava objaviti članak.'\n'You do not have the right to move articles.': 'Nemate prava premjestiti članak.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'Ne možete $1 na člancima naglašenim crvenom bojom jer odredišno izdanje nije prevedeno na odgovarajući jezik.'\n'Publish?': 'Objaviti?'\n'Publish articles': 'Objavi članke'\n'Publish article': 'Objavi članak'\n'Move?': 'Premjestiti?'\n'Move articles': 'Premjesti članke'\n'Move article': 'Premjesti članak'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'Mora biti kreirano izdanje za odabrani jezik, ali vi nemate prava za kreiranje izdanje.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'Mora biti kreirana rubrika za odabrani jezik, ali vi nemate prava za kreiranje rubrike.'\n'to section': 'u rubriku'\n'You must choose a language': 'Morate izabrati jezik'\n'Unable to create the section for translation $1.': 'Za prijevod $1 ne može biti kreirana rubrika.'\n'Unable to create the issue for translation $1.': 'Za prijevod $1 ne može biti kreirano izdanje.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'Sljedeći članci su novi; nije ih moguće rasporediti za automatsko objavljivanje'\n'Section URL Name': 'URL ime rubrike'\n'Section Name': 'Ime rubrike'\n'Publish Schedule': 'Raspored objavljivanja'\n'No action specified': 'Nije određena radnja'\n'New section name': 'Novo ime rubrike'\n'New section URL name': 'Novo URL ime rubrike'\n'New issue name': 'Novo ime izdanja'\n'New issue URL name': 'Novo URL ime izdanja'\n'New article name': 'Novo ime članka'\n'Issue URL Name': 'URL ime izdanja'\n'Issue Name': 'Ime izdanja'\n'Duplicate?': 'Udvostručiti?'\n'Duplicate articles': 'Udvostruči članke'\n'Article name ($1)': 'Ime članka ($1)'\n'Article List': 'LIsta članaka'\n'Are you sure you want to remove the topic $1 from the article?': 'Jeste li sigurni da želite ukloniti temu $1 iz članka?'\n'Are you sure you want to remove the file $1 from the article?': ' Jeste li sigurni da želite ukloniti datoteku $1 iz članka?'\n'Are you sure you want to remove the event scheduled on $1?': ' Jeste li sigurni da želite ukloniti zakazani događaj za $1?'\n'Are you sure you want to delete this article?': 'Jeste li sigurni da želite da obrišete ovaj članak?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'Izdanje mora biti kreirano za odabrani jezik. Unesite ime izdanja i URL.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'Rubrika mora biti kreirana za odabrani jezik. Unesite ime rubrike i URL.'\n'Article Type': 'Tip članka'\n'Show article on front page': 'Prikaži članak na naslovnici'\n'Show article on section page': 'Prikaži članak na stranici rubrike'\n'Translate article': 'Prevedi članak'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'Nemate ovlasti mijenjati ovaj članak. Možete uređivati samo vlastite članke, a jednom predani članci mogu biti mijenjani samo od strane ovlaštenog korisnika.'\n'Duplicate article': 'Udvostruči članak'\n'The destination section is the same as the source section.': 'Odredišna rubrika je ista kao i izvorna rubrika'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'Članak je nov: nije ga moguće rasporediti za automatsko objavljivanje.'\n'No article types were defined. You must create an article type first.': 'Nije definiran tip članka. Morate prvo kreirati tip članka.'\n'Edit article types': 'Uredi tip članka'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Nemoguće je spremiti članak. Zaključan je prije $1 $2 sati i $3 minuta.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Nemate prava mijenjati status članka. Predatom članku status može mijenjati samo prijavljeni korisnik.'\n'You do not have the right to delete articles.': 'Nemate prava brisati članke.'\n'You must select an article type.': 'Morate označiti tip članka.'\n'Are you sure you want to remove the image $1 from the article?': 'Jeste li sigurni da želite ukloniti sliku $1 iz članka'\n'There was an error reading request parameters.': 'Greška pri čitanju traženih parametra.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'Članak se ne može pregledati. Provjerite da li ste označili predložak članka.'\n'No such article.': 'Nema tog članka.'\n'No such section.': 'Nema te sekcije.'\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.hu.yml",
    "content": "'Edit metadata': 'Metaadatok szerkesztése'\nRating: Értékelés\n'Enable Rating': 'Értékelés engedélyezése'\n'Blog management': 'Blog kezelése'\n'View article': 'Cikk megtekintése'\n'Select a list': 'Válassz listát'\n'Remove list': 'Lista eltávolítása'\n'Please select a list': 'Válassz egy listát'\nPlaylist: 'Lejátszási lista'\n'List updated.': 'A lista frissítése megtörtént.'\n'List saved': 'A lista mentése megtörtént.'\n'List Name': 'Lista neve'\n'List ID': Listaazonosító\n'Item already exists in the list': 'Az elem már szerepel a listán'\n'Featured Articles': 'Kiemelt cikkek'\n'Featured Article Lists': 'Kiemelt cikklisták'\n'Featured Article List': 'Kiemelt cikkek listája'\n'Duplicate list': 'Lista megkettőzése'\n'Duplicate article entry found': 'Ismétlődő cikkbejegyzés található'\n'Drag here to add to list': 'Húzz ide fájlokat a listára vételhez'\n'Could not save the list': 'Nem sikerült menteni a listát'\n'Available Articles': 'Elérhető cikkek'\n'Are you sure you want to delete this list?': 'Biztosan törölni akarod ezt a listát?'\n'Add to list': 'Felvétel a listára'\n'Add list': 'Lista hozzáadása'\n'Multi date events': 'Többdátumos események'\nSlideshows: Diavetítések\n'Place images': 'Képek elhelyezése'\n'Youre not allowed to edit article.': 'A cikkszerkesztés nem engedélyezett a számodra.'\nWebcode: Webkód\nUnapproved: 'Nem jóváhagyott'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Ez a szám nem tekinthető meg. Ellenőrizd, hogy hozzárendeltek-e egy témát a kiadványhoz.'\n'The article could not be submitted.': 'Nem lehet beküldeni a cikket.'\n'Submit articles': 'Cikkek beküldése'\n'Submit article': 'Cikk beküldése'\n'Related Articles': 'Kapcsolódó cikkek'\n'Pending articles': 'Függőben lévő cikkek'\n'Pending Articles': 'Függőben lévő cikkek'\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': 'Nincs jogod a hozzászólások moderálásához.'\n'You can not schedule opposing events at the same time': 'Nem ütemezhetsz be egyidejűleg ütköző eseményeket'\n'Unable to reach Newscoop. Please check your internet connection.': 'Nem érhető el a Newscoop. Ellenőrizd az internetkapcsolatodat.'\nTitle: Cím\n'There already is an article with the same name. Please change the name and try again.': 'Már van ugyanilyen nevű cikk. Változtasd meg a nevét, és próbálkozz újra.'\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': 'Vedd figyelembe, hogy ennek a cikknek az összes beütemezett közzéteendő eseménye törlésre fog kerülni, ha ennek a cikknek az állapotát Újra állítod. Erősítsd meg az állapot módosítását.'\nGeolocation: 'Földrajzi hely'\nNewscoop: Newscoop\n'Overwrite articles with matching names': 'Az egyező nevű cikkek felülírása'\n'Article <i>$1</i> already exists, and was not overwritten.<br />': 'Már létezik <i>$1</i> nevű cikk, és nem került felülírásra.<br />'\nFiles: Fájlok\n'Select section:': 'Válassz rovatot:'\n'Add another author': 'További szerző hozzáadása'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'A cikket $1 ($2) zárolta $3 perce.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'A cikket $1 ($2) zárolta $3 órája és $4 perce.'\n'Switches saved.': 'A kapcsolók mentése megtörtént.'\n'Keywords saved.': 'A kulcsszavak mentése megtörtént.'\n'Comment settings': 'Hozzászólás beállításai'\nAuthors: Szerzők\n'Attach Topic To Article': 'Téma csatolása cikkhez'\n'Article saved.': 'A cikk mentése megtörtént.'\n'Article is locked': 'A cikk zárolása megtörtént'\n'Actions updated.': 'A műveletek frissítése megtörtént.'\n'Your work has not been saved. Do you want to continue and lose your changes?': 'Nem történt meg a munkád mentése. Szeretnéd folytatni és elveszíteni a változtatásaidat?'\nSwitches: Kapcsolók\n'No subtopics available': 'Nincs elérhető altéma'\n'Newscoop Subhead': 'Newscoop alcím'\nMedia: Média\n'Last modified': 'Utolsó módosítás'\n'Keywords &amp; Topics': 'Kulcsszavak és témák'\nInfo: null\n'Go to live article': 'Ugrás az élő cikkre'\nCreated: Létrehozva\n'Are you sure you want to remove the map from the article?': 'Biztosan el akarod távolítani a térképet a cikkből?'\n'Scheduled action added': 'A beütemezett művelet hozzáadása megtörtént'\n'Content edited': 'A tartalom szerkesztése megtörtént'\n'You must select an article language.': 'Ki kell választanod a cikk nyelvét.'\n'You must select a publication.': 'Ki kell választanod egy kiadványt.'\n'You must select a file to upload.': 'Ki kell választanod egy feltöltendő fájlt.'\n'You must select a XML input file.': 'Ki kell választanod egy bemeneti XML-fájlt.'\n'You do not have the right to import XML archives.': 'Nincs jogod az XML-archívumok importálásához.'\n'There was a problem uploading the file.': 'Probléma merült fel a fájl feltöltése során.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'A feltöltött fájl csak részben került feltöltésre. Ez gyakran előfordul, ha rövid a maximális fájlfeltöltési idő a bevinni próbált fájl méretével szemben. A maximális feltöltési időt a php.ini fájlban adják meg.'\n'The file exceeds the allowed max file size.': 'A fájl mérete meghaladja a megengedett maximális fájlméretet.'\nOptional: Elhagyható\n'Input File': 'Bemeneti fájl'\n'Import XML': 'XML importálása'\n'File is not a valid XML file.': 'A fájl nem érvényes XML-fájl.'\n'File does not exist.': 'A fájl nem létezik.'\n'File could not be uploaded.': 'A fájl nem tölthető fel.'\n'File could not be read.': 'A fájl nem olvasható.'\n'Error List': Hibalista\n'Bad format in XML file.': 'Rossz formátum az XML-fájlban.'\n'Article could not be created.': 'A cikk nem hozható létre.'\n'---Select article type---': '---Válassz cikktípust---'\n'$1 articles successfully imported.': '$1 cikk importálása sikerült.'\nSaved: 'A mentés megtörtént'\n'Save All': 'Az összes mentése'\n'Online Server: On': 'Online kiszolgáló: be'\n'Online Server: Off': 'Online kiszolgáló: ki'\nDownload: Letöltés\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': 'Nem lehet két azonos nevű cikk ugyanabban a rovatban. A/z $1 cikk már az általad megadott cikknevet használja.'\n'Visible to non-subscribers': 'Látható a nem-előfizetők számára'\n'The article could not be published.': 'Nem lehet közzétenni a cikket.'\n'Scheduled action deleted.': 'A beütemezett művelet törlése megtörtént.'\n'Scheduled action added.': 'A beütemezett művelet hozzáadása megtörtént.'\n'Article(s) unlocked.': 'A cikk(ek) zárolásának feloldása megtörtént.'\n'Article(s) duplicated.': 'A cikk(ek) megkettőzése megtörtént.'\n'Article(s) deleted.': 'A cikk(ek) törlése megtörtént.'\n'Article status set to $1': 'A cikk állapotának beállítása megtörtént erre: $1'\n'Article unlocked.': 'A cikk zárolásának feloldása megtörtént.'\n'Article translation created.': 'A cikk fordítása elkészült.'\n'Article order changed.': 'A cikksorrend módosítása megtörtént.'\n'Article moved.': 'A cikk áthelyezése megtörtént.'\n'Article deleted.': 'A cikk törlése megtörtént.'\n'Article created.': 'A cikk létrehozása megtörtént.'\n'$1 toggled.': 'A/z $1 átváltása megtörtént.'\n'Total:': 'Összes:'\n'Show Comments': 'A hozzászólások megjelenítése'\nLocked: Zárolva\n'Invalid type: $1': 'Érvénytelen típus: $1'\n'Hide Comments': 'A hozzászólások elrejtése'\nEnabled: Engedélyezve\nDisabled: Letiltva\nComments: Hozzászólások\n'The article has already been translated into $1.': 'A cikket lefordították már $1 nyelvre.'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'Meg kell adnod ennek a cikknek a kiadványát, számát és rovatát a közzététele beütemezése előtt.  Lépj a/z $1 menüre, és végrehajtásához válaszd a/z $2 elemet.'\n'You do not have the right to translate articles.': 'Nincs jogod a cikkek fordításaihoz.'\n'You do not have the right to publish articles.': 'Nincs jogod a cikkek közzétételeihez.'\n'You do not have the right to move articles.': 'Nincs jogod a cikkek áthelyezéséhez.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'A pirossal jelölt cikkeket nem lehet $1, mert nem történt meg a célszám lefordítása a megfelelő nyelvre.'\n'Publish?': 'Közzéteszed?'\n'Publish articles': 'Cikkek közzététele'\n'Publish article': 'Cikk közzététele'\n'Move?': 'Áthelyezed?'\n'Move articles': 'Cikkek áthelyezése'\n'Move article': 'Cikk áthelyezése'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'Létre kell hoznod egy számot a választott nyelvhez, viszont szám létrehozásához nincs jogod.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'Létre kell hoznod egy rovatot a választott nyelvhez, viszont rovat létrehozásához nincs jogod.'\n'to section': rovathoz\n'You must choose a language': 'Ki kell választanod egy nyelvet'\n'Unable to create the section for translation $1.': 'Nem lehet létrehozni a rovatot a/z $1 fordításhoz.'\n'Unable to create the issue for translation $1.': 'Nem lehet létrehozni a számot a/z $1 fordításhoz.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'Az alábbi cikkek újak; nem lehet őket automatikus közzétételre beütemezni'\n'Section URL Name': 'A rovat URL-neve'\n'Section Name': 'Rovat neve'\n'Publish Schedule': 'Közzététel beütemezése'\n'No action specified': 'Nincs művelet megadva'\n'New section name': 'Új rovat neve'\n'New section URL name': 'Az új rovat URL-neve'\n'New issue name': 'Új szám neve'\n'New issue URL name': 'Az új szám URL-neve'\n'New article name': 'Új cikk neve'\n'Issue URL Name': 'Szám URL-neve'\n'Issue Name': 'Szám neve'\n'Duplicate?': 'Megkettőzés?'\n'Duplicate articles': 'Cikkek duplikálása'\n'Article name ($1)': 'Cikk neve ($1)'\n'Article List': Cikklista\n'Are you sure you want to remove the topic $1 from the article?': 'Biztosan el akarod távolítani a/z $1 témát a cikkből?'\n'Are you sure you want to remove the file $1 from the article?': 'Biztosan el akarod távolítani a/z $1 fájlt a cikkből?'\n'Are you sure you want to remove the event scheduled on $1?': 'Biztosan el akarod távolítani a/z $1 időpontra beütemezett eseményt?'\n'Are you sure you want to delete this article?': 'Biztosan törölni akarod ezt a cikket?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'Létre kell hozni egy számot a választott nyelvhez. Add meg a szám nevét és URL-nevét.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'Létre kell hozni egy rovatot a választott nyelvhez. Add meg a rovat nevét és URL-nevét.'\n'Article Type': Cikktípus\n'Show article on front page': 'A cikk megjelenítése a címlapon'\n'Show article on section page': 'A cikk megjelenítése a rovatlapon'\n'Translate article': 'Cikk fordítása'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'Nincs jogod ennek a cikknek a módosításához. Csak a saját cikkeidet szerkesztheted, beküldés után csak a jogosult felhasználók módosíthatják.'\n'Duplicate article': 'Cikk megkettőzése'\n'The destination section is the same as the source section.': 'A célrovat azonos a forrásrovattal.'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'A cikk új; nem lehet automatikus közzétételre beütemezni.'\n'No article types were defined. You must create an article type first.': 'Nem voltak cikktípusok meghatározva. Először létre kell hoznod egy cikktípust.'\n'Edit article types': 'Cikktípusok szerkesztése'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Nem menthetői a cikk. $1 zárolta $2 órája és $3 perce.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Nincs jogod ennek ennek a cikknek az állapotát módosítani. Cikk beküldése után csak a jogosult felhasználók módosíthatják.'\n'You do not have the right to delete articles.': 'Nincs jogod a cikkek törléséhez.'\n'You must select an article type.': 'Ki kell választania egy cikktípust.'\n'Are you sure you want to remove the image $1 from the article?': 'Biztosan el akarod távolítani a/z $1 képet a cikkből?'\n'There was an error reading request parameters.': 'Hiba történt a kérésparaméterek olvasásakor.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'Ez a cikk nem tekinthető meg. Győződj meg róla, hogy van-e kiválasztva cikksablonja.'\n'No such article.': 'Nincs ilyen cikk.'\n'No such section.': 'Nincs ilyen rovat.'\nCharacters: Karakterek\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: 'Kép metaadatainak szerkesztése'\n            save: Mentés\n            form:\n                use: Használat\n                number: Sorszám\n                caption: Képaláírás\n                status_approved: Jóváhagyott\n                status_unapproved: 'Nem jóváhagyott'\n                status: Állapot\n                description: Leírás\n                photographer: Fotós\n                photographer_url: 'Fotós URL-címe'\n                place: Hely\n                date: Dátum\n                article_specific: Cikkspecifikus\n                global: Globális\n                other_captions: 'Egyéb feliratok'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.hy.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: Վերնագիր\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: Newscoop\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: null\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': null\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': null\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: null\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': 'Հոդվածը ջնջված է'\n'Article created.': 'Հոդվածը ստեղծված է'\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: null\n'The article has already been translated into $1.': null\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': null\n'You do not have the right to translate articles.': null\n'You do not have the right to publish articles.': null\n'You do not have the right to move articles.': null\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': null\n'Publish?': null\n'Publish articles': null\n'Publish article': null\n'Move?': null\n'Move articles': null\n'Move article': null\n'An issue must be created for the selected language but you do not have the right to create an issue.': null\n'A section must be created for the selected language but you do not have the right to create a section.': null\n'to section': null\n'You must choose a language': null\n'Unable to create the section for translation $1.': null\n'Unable to create the issue for translation $1.': null\n'The following articles are new; it is not possible to schedule them for automatic publishing': null\n'Section URL Name': null\n'Section Name': null\n'Publish Schedule': null\n'No action specified': null\n'New section name': null\n'New section URL name': null\n'New issue name': null\n'New issue URL name': null\n'New article name': null\n'Issue URL Name': null\n'Issue Name': null\n'Duplicate?': null\n'Duplicate articles': null\n'Article name ($1)': null\n'Article List': null\n'Are you sure you want to remove the topic $1 from the article?': null\n'Are you sure you want to remove the file $1 from the article?': null\n'Are you sure you want to remove the event scheduled on $1?': null\n'Are you sure you want to delete this article?': null\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': null\n'A section must be created for the selected language.  Please enter the section name and URL name.': null\n'Article Type': null\n'Show article on front page': null\n'Show article on section page': null\n'Translate article': null\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': null\n'Duplicate article': null\n'The destination section is the same as the source section.': null\n'The article is new; it is not possible to schedule it for automatic publishing.': null\n'No article types were defined. You must create an article type first.': null\n'Edit article types': null\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'You do not have the right to delete articles.': null\n'You must select an article type.': null\n'Are you sure you want to remove the image $1 from the article?': null\n'There was an error reading request parameters.': null\n'This article cannot be previewed. Please make sure it has the article template selected.': null\n'No such article.': null\n'No such section.': null\nCharacters: null\nSnippet: Snippet\n'This list is already in a different state than the one in which it was loaded.': 'This list is already in a different state than the one in which it was loaded.'\n'List name should not be longer than 40 chars': 'List name should not be longer than 40 chars'\n'Not valid number': 'Not valid number'\n'List limit': 'List limit'\n'The last article of this list has been removed.': 'The last article of this list has been removed.'\nRevert: Revert\n'Could not automatically refresh the list': 'Could not automatically refresh the list'\n'The article slideshows have been successfully updated, please close the window.': 'The article slideshows have been successfully updated, please close the window.'\narticles:\n    playlists:\n        namechanged: 'Are you sure you want to change the list name? The name might be used in the Newscoop templates to render the list in the frontend. Please check with your siteadmin if you have doubts.'\n        alert: 'Are you sure you want to change the maximum number of articles for this featured article list? If you change the limit, all articles beyond this limit will be deleted. Example: If you change the limit from 50 to 30 articles all 20 articles starting from position number 31 till 50 will be deleted from the list.'\n    images:\n        see_original: 'See full-size image in a new tab'\n        edit:\n            edit_image_metadata: 'Edit image metadata'\n            save: Save\n            form:\n                use: Use\n                number: Number\n                caption: Caption\n                status_approved: Approved\n                status_unapproved: Unapproved\n                status: Status\n                description: Description\n                photographer: Photographer\n                photographer_url: 'Photographer URL'\n                place: Place\n                date: Date\n                article_specific: 'Article specific'\n                global: Global\n                other_captions: 'Other Captions'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.hy_AM.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: Վերնագիր\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: Newscoop\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: null\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': null\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': null\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: Ներբեռնում\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': 'Հոդվածը ջնջված է'\n'Article created.': 'Հոդվածը ստեղծված է'\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: Մեկնաբանություններ\n'The article has already been translated into $1.': null\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': null\n'You do not have the right to translate articles.': null\n'You do not have the right to publish articles.': null\n'You do not have the right to move articles.': null\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': null\n'Publish?': null\n'Publish articles': null\n'Publish article': null\n'Move?': null\n'Move articles': null\n'Move article': null\n'An issue must be created for the selected language but you do not have the right to create an issue.': null\n'A section must be created for the selected language but you do not have the right to create a section.': null\n'to section': null\n'You must choose a language': null\n'Unable to create the section for translation $1.': null\n'Unable to create the issue for translation $1.': null\n'The following articles are new; it is not possible to schedule them for automatic publishing': null\n'Section URL Name': null\n'Section Name': null\n'Publish Schedule': null\n'No action specified': null\n'New section name': null\n'New section URL name': null\n'New issue name': null\n'New issue URL name': null\n'New article name': null\n'Issue URL Name': null\n'Issue Name': null\n'Duplicate?': null\n'Duplicate articles': null\n'Article name ($1)': null\n'Article List': null\n'Are you sure you want to remove the topic $1 from the article?': null\n'Are you sure you want to remove the file $1 from the article?': null\n'Are you sure you want to remove the event scheduled on $1?': null\n'Are you sure you want to delete this article?': null\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': null\n'A section must be created for the selected language.  Please enter the section name and URL name.': null\n'Article Type': null\n'Show article on front page': null\n'Show article on section page': null\n'Translate article': null\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': null\n'Duplicate article': null\n'The destination section is the same as the source section.': null\n'The article is new; it is not possible to schedule it for automatic publishing.': null\n'No article types were defined. You must create an article type first.': null\n'Edit article types': null\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'You do not have the right to delete articles.': null\n'You must select an article type.': null\n'Are you sure you want to remove the image $1 from the article?': null\n'There was an error reading request parameters.': null\n'This article cannot be previewed. Please make sure it has the article template selected.': null\n'No such article.': null\n'No such section.': null\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.id.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: null\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: null\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': null\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': null\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: null\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': null\n'Article created.': null\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: null\n'The article has already been translated into $1.': null\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': null\n'You do not have the right to translate articles.': null\n'You do not have the right to publish articles.': null\n'You do not have the right to move articles.': null\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': null\n'Publish?': null\n'Publish articles': null\n'Publish article': null\n'Move?': null\n'Move articles': null\n'Move article': null\n'An issue must be created for the selected language but you do not have the right to create an issue.': null\n'A section must be created for the selected language but you do not have the right to create a section.': null\n'to section': null\n'You must choose a language': null\n'Unable to create the section for translation $1.': null\n'Unable to create the issue for translation $1.': null\n'The following articles are new; it is not possible to schedule them for automatic publishing': null\n'Section URL Name': null\n'Section Name': null\n'Publish Schedule': null\n'No action specified': null\n'New section name': null\n'New section URL name': null\n'New issue name': null\n'New issue URL name': null\n'New article name': null\n'Issue URL Name': null\n'Issue Name': null\n'Duplicate?': null\n'Duplicate articles': null\n'Article name ($1)': null\n'Article List': null\n'Are you sure you want to remove the topic $1 from the article?': null\n'Are you sure you want to remove the file $1 from the article?': null\n'Are you sure you want to remove the event scheduled on $1?': null\n'Are you sure you want to delete this article?': null\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': null\n'A section must be created for the selected language.  Please enter the section name and URL name.': null\n'Article Type': null\n'Show article on front page': null\n'Show article on section page': null\n'Translate article': null\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': null\n'Duplicate article': null\n'The destination section is the same as the source section.': null\n'The article is new; it is not possible to schedule it for automatic publishing.': null\n'No article types were defined. You must create an article type first.': null\n'Edit article types': null\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'You do not have the right to delete articles.': null\n'You must select an article type.': null\n'Are you sure you want to remove the image $1 from the article?': null\n'There was an error reading request parameters.': null\n'This article cannot be previewed. Please make sure it has the article template selected.': null\n'No such article.': null\n'No such section.': null\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.it.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': 'Gestione blog'\n'View article': 'Vedi articolo'\n'Select a list': 'Scegli una lista'\n'Remove list': 'Rimuovi lista'\n'Please select a list': 'Scegli una lista'\nPlaylist: Raccolta\n'List updated.': 'Lista aggiornata.'\n'List saved': 'Lista salvata'\n'List Name': 'Nome lista'\n'List ID': 'ID Lista'\n'Item already exists in the list': 'Loggetto è già nella lista'\n'Featured Articles': 'Articoli in vetrina'\n'Featured Article Lists': 'Liste di articoli in vetrina'\n'Featured Article List': 'Lista di articoli in vetrina'\n'Duplicate list': 'Duplica la lista'\n'Duplicate article entry found': 'Cè un articolo doppio'\n'Drag here to add to list': 'Trascina qui per aggiungere alla lista'\n'Could not save the list': 'Non è stato possibile salvare la lista'\n'Available Articles': 'Articoli disponibili'\n'Are you sure you want to delete this list?': 'Vuoi davvero eliminare questa lista?'\n'Add to list': 'Aggiungi alla lista'\n'Add list': 'Aggiungi lista'\n'Multi date events': 'Eventi con date multiple'\nSlideshows: 'Gallerie di immagini'\n'Place images': 'Posiziona immagini'\n'Youre not allowed to edit article.': 'Non hai il permesso di modificare larticolo.'\nWebcode: 'Codice web'\nUnapproved: 'Non approvato'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Non è possibile vedere lanteprima di questa edizione. Verifica che sia stato assegnato un tema a questa pubblicazione.'\n'The article could not be submitted.': 'Larticolo non può essere inviato.'\n'Submit articles': 'Invia articoli'\n'Submit article': 'Invia articolo'\n'Related Articles': 'Articoli correlati'\n'Pending articles': 'Articoli in attesa'\n'Pending Articles': 'Articoli in attesa'\n'Context Box updated': 'Casella del contesto aggiornata'\nOn: On\nOff: Off\n'You do not have the right to moderate comments.': 'Non hai il permesso di moderare i commenti.'\n'You can not schedule opposing events at the same time': 'Non puoi programmare eventi opposti nello stesso momento'\n'Unable to reach Newscoop. Please check your internet connection.': 'Impossibile raggiungere Newscoop. Verifica la connessione internet.'\nTitle: Titolo\n'There already is an article with the same name. Please change the name and try again.': 'Esiste già un articolo con quel nome. Cambia il nome e riprova.'\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': 'Ricordati che tutte le programmazioni di pubblicazione di questo articolo verranno eliminate se imposti lo stato dellarticolo a Nuovo. Riconferma il cambiamento di stato.'\nGeolocation: Geolocalizzazione\nNewscoop: Newscoop\n'Overwrite articles with matching names': 'Sovrascrivi articoli con nomi corrispondenti'\n'Article <i>$1</i> already exists, and was not overwritten.<br />': 'Larticolo<i>$1</i> esiste già e non sarà sovrascritto.<br />'\nFiles: File\n'Select section:': 'Seleziona sezione:'\n'Add another author': 'Aggiungi un altro autore'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Larticolo è stato bloccato da $1($2) $3 minuti fa.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Larticolo è stato bloccato da $1 ($2) $3 ore e $4 minuti fa.'\n'Switches saved.': 'Opzioni salvate.'\n'Keywords saved.': 'Parole chiave salvate.'\n'Comment settings': 'Impostazioni commenti'\nAuthors: Autori\n'Attach Topic To Article': 'Allega largomento allarticolo'\n'Article saved.': 'Articolo salvato.'\n'Article is locked': 'Articolo bloccato'\n'Actions updated.': 'Articolo aggiornato.'\n'Your work has not been saved. Do you want to continue and lose your changes?': 'Le modifiche non sono state salvate. Vuoi continuare perdendo i cambiamenti?'\nSwitches: Opzioni\n'No subtopics available': 'Nessun sottoargomento disponibile'\n'Newscoop Subhead': 'Sottotitolo Newscoop'\nMedia: Multimedia\n'Last modified': 'Ultima modifica'\n'Keywords &amp; Topics': 'Parole chiave & Argomenti'\nInfo: Info\n'Go to live article': 'Vai allarticolo'\nCreated: Creato\n'Are you sure you want to remove the map from the article?': 'Sei sicuro di voler togliere la mappa dallarticolo?'\n'Scheduled action added': 'Aggiunta lazione programmata'\n'Content edited': 'Contenuto modificato'\n'You must select an article language.': 'Devi selezionare una lingua per larticolo.'\n'You must select a publication.': 'Devi selezionare una pubblicazione.'\n'You must select a file to upload.': 'Devi selezionare un file da caricare.'\n'You must select a XML input file.': 'Devi selezionare un file XML di input.'\n'You do not have the right to import XML archives.': 'Non hai il permesso di importare un archivio XML.'\n'There was a problem uploading the file.': 'Si e verificato un problema durante il caricamento del file.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Il file e stato caricato solo parzialmente. Questo succede di solito quando il massimo tempo di upload e troppo breve per la dimensione del file. Questa impostazione si trova in php.ini'\n'The file exceeds the allowed max file size.': 'Il file eccede la dimensione massima per i file.'\nOptional: Opzionale\n'Input File': 'File di input'\n'Import XML': 'Importa XML'\n'File is not a valid XML file.': 'Il file non contiene un XML valido.'\n'File does not exist.': 'Il file non esiste.'\n'File could not be uploaded.': 'Il file non è stato caricato.'\n'File could not be read.': 'Impossibile leggere il file.'\n'Error List': 'Elenco degli errori'\n'Bad format in XML file.': 'XML malformato.'\n'Article could not be created.': 'Larticolo non è stato creato.'\n'---Select article type---': '--Scegli il tipo articolo--'\n'$1 articles successfully imported.': 'Sono stati importato $1 articoli.'\nSaved: Salvato\n'Save All': 'Salva tutto'\n'Online Server: On': 'Server online: On'\n'Online Server: Off': 'Server online: Off'\nDownload: Scarica\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': 'Non si possono avere due articoli con lo stesso nome nella stessa sezione. Il nome articolo specificato è già usato dallarticolo $1.'\n'Visible to non-subscribers': 'Visibile ai non iscritti'\n'The article could not be published.': 'Larticolo non è stato pubblicato.'\n'Scheduled action deleted.': 'Eliminata lazione programmata.'\n'Scheduled action added.': 'Aggiunta lazione programmata.'\n'Article(s) unlocked.': 'Articoli sbloccati.'\n'Article(s) duplicated.': 'Articoli duplicati.'\n'Article(s) deleted.': 'Articoli eliminati.'\n'Article status set to $1': 'Stato dellarticolo impostato a  $1'\n'Article unlocked.': 'Articolo sbloccato.'\n'Article translation created.': 'Traduzione articolo creata.'\n'Article order changed.': 'Ordine articoli cambiato.'\n'Article moved.': 'Articolo spostato.'\n'Article deleted.': 'Articolo eliminato.'\n'Article created.': 'Articolo creato.'\n'$1 toggled.': '$1 modificato.'\n'Total:': 'Totale:'\n'Show Comments': 'Mostra commenti'\nLocked: Bloccato\n'Invalid type: $1': 'Tipo non valido: $1'\n'Hide Comments': 'Nascondi commenti'\nEnabled: Abilitato\nDisabled: Disabilitato\nComments: Commenti\n'The article has already been translated into $1.': 'Larticolo è già stato tradotto in $1.'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'Prima di programmare la pubblicazione di questo articolo devono essere impostate pubblicazione, edizione e sezione: per farlo, vai al menu  $1 e  scegli $2.'\n'You do not have the right to translate articles.': 'Non hai il permesso di tradurre articoli.'\n'You do not have the right to publish articles.': 'Non hai il permesso di pubblicare articoli.'\n'You do not have the right to move articles.': 'Non hai il permesso di spostare articoli.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'Impossibile $1 gli articoli marcati in rosso perchè ledizione di destinazione non è stata tradotta nella lingua appropriata.'\n'Publish?': 'Pubblicare?'\n'Publish articles': 'Pubblica articoli'\n'Publish article': 'Pubblica articolo'\n'Move?': 'Spostare?'\n'Move articles': 'Sposta articoli'\n'Move article': 'Sposta articolo'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'Sarebbe necessario creare unedizione in questa lingua, ma tu non hai il permesso di creare edizioni.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'Sarebbe necessario creare una sezione in questa lingua, ma tu non hai il permesso di creare sezioni.'\n'to section': 'alla sezione'\n'You must choose a language': 'Devi scegliere una lingua'\n'Unable to create the section for translation $1.': 'Impossibile creare la sezione per la traduzione $1.'\n'Unable to create the issue for translation $1.': 'Impossibile creare ledizione per la traduzione $1.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'I seguenti articoli sono nuovi; non è possibile progammarne la pubblicazione automatica.'\n'Section URL Name': 'URL della sezione'\n'Section Name': 'Nome sezione'\n'Publish Schedule': 'Programmazione della pubblicazione'\n'No action specified': 'Nessuna azione specificata'\n'New section name': 'Nuovo nome di sezione'\n'New section URL name': 'Nuovo URL della sezione'\n'New issue name': 'Nuova edizione'\n'New issue URL name': 'Nuovo URL delledizione'\n'New article name': 'Nuovo nome articolo'\n'Issue URL Name': 'URL edizione'\n'Issue Name': 'Nome edizione'\n'Duplicate?': 'Duplicare?'\n'Duplicate articles': 'Duplica articoli'\n'Article name ($1)': 'Nome articolo ($1)'\n'Article List': 'Lista articoli'\n'Are you sure you want to remove the topic $1 from the article?': 'Vuoi davvero togliere largomento $1 dallarticolo?'\n'Are you sure you want to remove the file $1 from the article?': 'Vuoi davvero togliere il file $1 dallarticolo?'\n'Are you sure you want to remove the event scheduled on $1?': 'Vuoi davvero eliminare levento programmato su $1?'\n'Are you sure you want to delete this article?': 'Vuoi davvero eliminare questo articolo?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'Per la lingua selezionata occorre creare unedizione: inserisci il nome e lURL delledizione.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'Per la lingua selezionata occorre creare una sezione: inserisci il nome e lURL della sezione.'\n'Article Type': 'Tipo articolo'\n'Show article on front page': 'In prima pagina'\n'Show article on section page': 'In pagina di sezione'\n'Translate article': 'Traduci articolo'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'Non hai il permesso di modificare larticolo. Puoi solo modificare i tuoi articoli e, una volta inviati, questi possono essere modificati solo da utenti autorizzati.'\n'Duplicate article': 'Duplica articolo'\n'The destination section is the same as the source section.': 'La sezione di destinazione è la stessa di quella di origine.'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'Larticolo è nuovo; non è possibile programmarne la pubblicazione automatica.'\n'No article types were defined. You must create an article type first.': 'Nessun tipo articolo è stato definito. Devi  prima creare un tipo articolo.'\n'Edit article types': 'Modifica tipo articoli'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Impossibile salvare larticolo. E stato bloccato da $1 $2 ore e $3 minuti fa.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'non si dispone dNon hai il permesso di cambiare lo stato dellarticolo: una volta inviato, larticolo può essere modificato solo da utenti autorizzati.'\n'You do not have the right to delete articles.': 'Non hai il permesso di eliminare articoli.'\n'You must select an article type.': 'Devi selezionare un tipo articolo.'\n'Are you sure you want to remove the image $1 from the article?': 'Vuoi davvero togliere limmagine $1 dallarticolo?'\n'There was an error reading request parameters.': 'Ce stato un errore leggendo i paramenti richiesti.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'Impossibile mostrare lanteprima dellarticolo. Assicurati che sia selezionato un template per larticolo selezionato.'\n'No such article.': 'Larticolo non esiste.'\n'No such section.': 'La sezione non esiste.'\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.ka.yml",
    "content": "'Edit metadata': 'მეტამონაცემების რედაქტირება'\nRating: რეიტინგი\n'Enable Rating': 'რეიტინგის ჩართვა'\n'Blog management': 'ბლოგის მართვა'\n'View article': 'სტატიის ნახვა'\n'Select a list': 'სიის არჩევა'\n'Remove list': 'სიის ამოღება'\n'Please select a list': 'გთხოვთ მონიშნოთ სია'\nPlaylist: 'დასაკრავი სია'\n'List updated.': 'სია განახლებულია.'\n'List saved': 'სია დამახსოვრებულია'\n'List Name': 'სიის სახელი'\n'List ID': 'სიის საიდენტიფიკაციო ნომერი'\n'Item already exists in the list': 'ელემენტი უკვე არსებობს სიაში'\n'Featured Articles': 'წარმოდგენილი სტატიები'\n'Featured Article Lists': 'წარმოდგენილი სტატიების სიები'\n'Featured Article List': 'წარმოდგენილი სტატიების სია'\n'Duplicate list': 'დუპლიკატი სია'\n'Duplicate article entry found': 'ნაპოვნია სტატიის დუპლიკატი ჩანაწერი'\n'Drag here to add to list': 'ჩააგდეთ აქ, რათა დაუმატოთ სიას. '\n'Could not save the list': 'სიის დამახსოვრება ვერ მოხერხდა'\n'Available Articles': 'არსებული სტატიებიები'\n'Are you sure you want to delete this list?': 'დარწმუნებული ხართ რომ გსურთ ამ სიის წასშლა?'\n'Add to list': 'სიაში დამატება'\n'Add list': 'სიის დამატება'\n'Multi date events': 'მრავალთარიღიანი ღონისძიებები'\nSlideshows: სლაიდშოუები\n'Place images': 'გამოსახულების მოთავსება'\n'Youre not allowed to edit article.': 'თქვენ არ გაქვთ უფლება შეცვალოთ სტატია. '\nWebcode: 'ქსელური კოდი'\nUnapproved: დაუმტკიცებელი\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'ამ გამოშვების გადახედვა შეუძლებელია. გთხოვთ დარწმუნდით რომ პუბლიკაციისთვის მინიჭებულია თემა.'\n'The article could not be submitted.': 'სტატიის ატვირთვა ვერ განხორციელდა.'\n'Submit articles': 'სტატიების ატვირთვა'\n'Submit article': 'სტატიის ატვირთვა'\n'Related Articles': 'დაკავშირებული სტატიები'\n'Pending articles': 'მიმდინარე სტატიები'\n'Pending Articles': 'მიმდინარე სტატიები'\n'Context Box updated': 'კონტექსტის კოლოფი განახლებულია'\nOn: ჩართვა\nOff: გამორთვა\n'You do not have the right to moderate comments.': 'თქვენ არ გაქვთ კომენტარების მოდერაციის უფლება'\n'You can not schedule opposing events at the same time': 'თქვენ არ შეგიძლიათ დაპირისპირებული მოვლენების ერთდროულად დაგეგმვა'\n'Unable to reach Newscoop. Please check your internet connection.': 'ნიუსქუფთან დაკავშირება ვერ ხერხდება. გთხოვთ შეამოწმოთ თქვენი ინტერნეტ კავშირი.'\nTitle: სათაური\n'There already is an article with the same name. Please change the name and try again.': 'მსგავსი სათაურის სტატია უკვე არსებობს. გთხოვთ შეცვალოთ სათაური და თავიდან სცადოთ.'\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': 'გაითვალისწინეთ რომ ამ სტატიისთვის დაგეგმილი გამოსაქვეყნებელი მოვლენები წაშლება, როდესაც სტატიის სტატუსი გახდება ახალი. დაადასტურეთ ეს ცვლილება'\nGeolocation: 'გეოგრაფიული მდებარეობა'\nNewscoop: Newscoop\n'Overwrite articles with matching names': 'მსგავსი სახელწოდების სტატიების ერთმანეთზე გადაწერა'\n'Article <i>$1</i> already exists, and was not overwritten.<br />': '<i>$1</i> სტატია უკვე არსებობს, და ის არ გადაეწერა. <br />'\nFiles: ფაილები\n'Select section:': 'აირჩიეთ სექცია'\n'Add another author': 'ავტორის დამატება'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'სტატია დალუქა მოხმარებელმა $1 ($2) $3 წუთ(ებ)ის წინ.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'სტატია დალუქა მოხმარებელმა $1 ($2) $3 საათ(ებ)ის და $4 წუთ(ებ)ის წინ.'\n'Switches saved.': 'სვიჩები დამახსოვრებულია.'\n'Keywords saved.': 'საძიებო სიტყვები დამახსოვრებულია.'\n'Comment settings': 'კომენტარის პარამეტრები'\nAuthors: ავტორები\n'Attach Topic To Article': 'მიამაგრე თემა სტატიას'\n'Article saved.': 'სტატია დამახსოვრებულია'\n'Article is locked': 'სტატია დალუქულია'\n'Actions updated.': 'მოქმედებები განახლებულია.'\n'Your work has not been saved. Do you want to continue and lose your changes?': 'თქვენი ნაშრომი არ შეინახა. გსურთ გაგრძელება და ცვილელების დაკარგვა?'\nSwitches: სვიჩები\n'No subtopics available': 'ქვესათაურები არ არსებობს.'\n'Newscoop Subhead': 'ნიუსქუფის ქვესათაური'\nMedia: მედია\n'Last modified': 'ბოლო მოდიფიკაცია'\n'Keywords &amp; Topics': 'საკვანძო სიტყვები &, სათაურები'\nInfo: ინფო\n'Go to live article': 'მიმდინარე სტატეიბზე გადასვლა'\nCreated: შექმნილია\n'Are you sure you want to remove the map from the article?': 'დარწმუნებული ხართ რომ სტატიიდან რუკის მოხსნა გსურთ?'\n'Scheduled action added': 'დაგეგმილი მოქმედება დაემატა'\n'Content edited': 'კონტენტი რედაქტირებულია'\n'You must select an article language.': 'თქვენ უნდა მონიშნოთ სტატიის ენა'\n'You must select a publication.': 'თქვენ უნდა მონიშნოთ გამოცემა'\n'You must select a file to upload.': 'თქვენ უნდა მონიშნოთ ფაილი ასატვითად'\n'You must select a XML input file.': 'თქვენ უნდა მონიშნოთ XML ფაილის შესატანად'\n'You do not have the right to import XML archives.': 'თქვენ არა გაქვთ XML არქივის იმპორტირების უფლება'\n'There was a problem uploading the file.': 'პრობლემა იყო ფაილის ატვირთვისას.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'ატვირთული ფაილი მხოლოდ ნაწილობრივ აიტვირთა. ეს მაშინ ხდება, როცა ფაილის ასატვირთი მაქსიმალური დრო არ შეესაბამება  ფაილის ზომას, რომლის ატვირთვასაც ცდილობთ. შეტანის მაქსიმალური დრო განსაზღვრულიაphp.ini –ში '\n'The file exceeds the allowed max file size.': 'ამ ფაილის ზომა აღემატება მაქსიმალურ დასაშვებს. '\nOptional: არასავალდებული\n'Input File': 'ფაილის '\n'Import XML': 'XML ს იმპორტი'\n'File is not a valid XML file.': 'ფაილი არ არის სწორი XML ფაილი'\n'File does not exist.': 'ფაილი არ არსებობს'\n'File could not be uploaded.': 'ფაილის ატვირთვა არ მოხერხდა'\n'File could not be read.': 'ფაილის წაკითხვა არ მოხერხდა'\n'Error List': 'ხარვეზების სია'\n'Bad format in XML file.': 'არასწორი ფორმატი XML ფაილში.'\n'Article could not be created.': 'სტატიის შექმნა არ მოხერხდა'\n'---Select article type---': '---აირჩიეთ სტატიის ტიპი---'\n'$1 articles successfully imported.': '$1 სტატიის იმპორტირება წარმატებით დასრულდა.'\nSaved: დამახსოვრებულია\n'Save All': 'ყველაფრის დამახსოვრება'\n'Online Server: On': 'ონლაინ სერვერი: ჩართულია'\n'Online Server: Off': 'ონლაინ სერვერი: გამორთულია'\nDownload: ჩამოქაჩვა\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': 'ერთ სექციაში ორი მსგავსი სათაურის სტატიის ქონა შეუძლებელია. თქვენს მიერ მითითებული სათაური უკვე გამოყენებულია სტატიაში $1'\n'Visible to non-subscribers': 'ხელმისაწვდომია ყველასთვის'\n'The article could not be published.': 'სტატია არ გამოქვეყნდა.'\n'Scheduled action deleted.': 'დაგეგმილი მოქმედება წაიშალა.'\n'Scheduled action added.': 'დაგეგმილი მოქმედება დაემატა.'\n'Article(s) unlocked.': 'სტატია(ები) გაიხსნა.'\n'Article(s) duplicated.': 'სტატიის(ების) დუბლირება მოხდა.'\n'Article(s) deleted.': 'სტატია(ები) წაიშალა'\n'Article status set to $1': 'სტატიის სტატუსი შეიცვალა - $1'\n'Article unlocked.': 'სტატია გაიხსნა.'\n'Article translation created.': 'სტატიის თარგმანი შეიქმნა.'\n'Article order changed.': 'სტატიის თანმიმდევრობა შეიცვალა.'\n'Article moved.': 'სტატიამ გადაინაცვლა.'\n'Article deleted.': 'სტატია წაიშალა.'\n'Article created.': 'სტატია შეიქმნა.'\n'$1 toggled.': '$1 ჩაირთო'\n'Total:': 'სულ:'\n'Show Comments': 'კომენტარების ჩვენება'\nLocked: დაილუქა\n'Invalid type: $1': 'არასწორი ტიპი: $1'\n'Hide Comments': 'კომენტარების დამალვა'\nEnabled: ჩართულია\nDisabled: გამორთულია\nComments: კომენტარები\n'The article has already been translated into $1.': 'სტატია უკვე ითარგმნა $1 ენაზე'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'ამ სტატიისთვის უნდა მიუთითოთ პუბლიკაცია, გამოცემა და სექცია, რათა დაგეგმოთ მისი გამოცემა. ამის გასაკეთებლად გადადით $1 მენიუში და აირჩიეთ $2.'\n'You do not have the right to translate articles.': 'თქვენ არ გაქვთ ამ სტატიის თარგმნის უფლება.'\n'You do not have the right to publish articles.': 'თქვენ არ გაქვთ ამ სტატიის გამოცემის უფლება.'\n'You do not have the right to move articles.': 'თქვენ არ გაქვთ სტატიების გადაადგილების უფლება.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'შეუძლებელია $1 სტატიებისთვის, რომლებიც მონიშნულია წითლად, რადგან მითითებული გამოცემა არ ითარგმნა სათანადო ენაზე.'\n'Publish?': 'გამოქვეყნება?'\n'Publish articles': 'სტატიების გამოქვეყნება'\n'Publish article': 'სტატიის გამოქვეყნება'\n'Move?': 'გადავიდეს?'\n'Move articles': 'სტატიების გადატანა'\n'Move article': 'სტატიის გადატანა'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'მითითებული ენისთვის უნდა შეიქმნას გამოცემა, თუმცა თქვენ არ გაქვთ ამის უფლება.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'მითითებული ენისთვის უნდა შეიქმნას სექცია, თუმცა თქვენ არ გაქვთ ამის უფლება.'\n'to section': სექციაში\n'You must choose a language': 'აირჩიეთ ენა'\n'Unable to create the section for translation $1.': '$1 თარგმანისთვის სექცია ვერ შეიქმნა.'\n'Unable to create the issue for translation $1.': '$1 თარგმანისთვის გამოცემა ვერ შეიქმნა.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'ეს სტატიები არის ახალი. შეუძლებელია მათთვის გამოცემის ავტომატური დაგეგმვა'\n'Section URL Name': 'სექციის URL'\n'Section Name': 'სექციის სახელი'\n'Publish Schedule': 'პუბლიკაციის განრიგი'\n'No action specified': 'მოქმედება არ არის მითითებული'\n'New section name': 'ახალი სექციის სახელი'\n'New section URL name': 'ახალი სექციის URL'\n'New issue name': 'ახალი გამოცემის სახელი'\n'New issue URL name': 'ახალი გამოცემის URL'\n'New article name': 'ახალი სტატიის სახელი'\n'Issue URL Name': 'გამოცემის URL'\n'Issue Name': 'გამოცემის სახელი'\n'Duplicate?': 'გსურთ დუბლირება?'\n'Duplicate articles': 'სტატიების დუბლირება'\n'Article name ($1)': 'სტატიის სახელი ($1)'\n'Article List': 'სტატიების სია'\n'Are you sure you want to remove the topic $1 from the article?': 'დარწმუნებული ხართ რომ გსურთ სტატიიდან $1 სათაურის წაშლა?'\n'Are you sure you want to remove the file $1 from the article?': 'დარწმუნებული ხართ რომ გსურთ სტატიიდან $1 ფაილის წაშლა?'\n'Are you sure you want to remove the event scheduled on $1?': 'დარწმუნებული ხართ რომ $1-ზე დაგეგმილი მოვლენის მოხსნა გსურთ?'\n'Are you sure you want to delete this article?': 'დარწმუნებული ხართ რომ გსურთ ამ სტატიის წაშლა?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'არჩეული ენისთვის უნდა შეიქმნას გამოცემა. გთხოვთ მიუთითოთ გამოცემის სახელი და URL.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'არჩეული ენისთვის უნდა შეიქმნას სექცია. გთხოვთ მიუთითოთ სექციის სახელი და URL.'\n'Article Type': 'სტატიის ტიპი'\n'Show article on front page': 'სტატიის მთავარ გვერდზე ჩვენება'\n'Show article on section page': 'სტატიის სექციის გვერდზე ჩვენება'\n'Translate article': 'სტატიის თარგმნა'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'თქვენ არ გაქვთ ამ სტატიის შეცვლის უფლება. თქვენ შეგიძლიათ მხოლოდ საკუთარი სტატიების რედაქტირება და წარდგენის შემდეგ მხოლოდ ავტორიზებულ მომხმარებლებს შეუძლიათ მათი შეცვლა.'\n'Duplicate article': 'სტატიის დუბლირება'\n'The destination section is the same as the source section.': 'მითითებული სექცია არის იგივე რაც საწყისი.'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'ეს სტატია არის ახალი. შეუძლებელია მისი ავტომატური გამოქვეყნების დაგეგმვა.'\n'No article types were defined. You must create an article type first.': 'სტატიის ტიპი არ არის განსაზღვრული. პირველ რიგში თქვენ უნდა შექმნათ სტატიის ტიპი.'\n'Edit article types': 'სტატიის ტიპების რედაქტირება'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'სტატია არ იქნა დამახსოვრებული. იგი დაილუქა $1 მიერ $2 საათისა და $3 წუთის წინ'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'თქვენ არ გაქვთ ამ სტატიის სტატუსის შეცვლის ნებართვა. სტატიის შეცვლა მხოლოდ ავტორიზებულ მომხმარებლებს შეუძლიათ.'\n'You do not have the right to delete articles.': 'თქვენ არ გაქვთ სტატიების წაშლის ნებართვა'\n'You must select an article type.': 'თქვენ უნდა აირჩიოთ სტატიის ტიპი'\n'Are you sure you want to remove the image $1 from the article?': 'დარწმუნებული ხართ რომ გსურთ ამ სურათის $1 სტატიიდან წაშლა?'\n'There was an error reading request parameters.': 'მოთხოვნილი პარამეტრების წაკითხვისას დაფიქსირდა ხარვეზი.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'ამ სტატიის დათვალიერება შეუძლებელია. გთხოვთ გადაამოწმოთ, რომ ამ სტატიის შაბლონი მითითებულია.'\n'No such article.': 'ასეთი სტატია არ არსებობს.'\n'No such section.': 'ასეთი სექცია არ არსებობს'\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.ko.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: null\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: 파일\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': '기사에 토픽 첨부'\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': '업로드할 파일을 선택하시오.'\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: null\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': null\n'Article created.': null\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: null\n'The article has already been translated into $1.': '기사가 이미 $1 으로 번역되었습니다. '\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': '스케쥴하기전에 이 기사에 대해 출판사이트, 이슈, 섹션을 설정해야 합니다. $1 메뉴로 가서 $2 를 선택하시오.'\n'You do not have the right to translate articles.': '기사를 번역할 권한이 없습니다.'\n'You do not have the right to publish articles.': '기사를 출판할 권한이 없습니다.'\n'You do not have the right to move articles.': '기사를 이동할 권한이 없습니다. '\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': '기사를 붉은 색으로 표시할 수 없습니다. 목표 이슈가 적당한 언어로 번역되지 않았습니다.'\n'Publish?': '출판?'\n'Publish articles': '기사 출판'\n'Publish article': '기사 출판'\n'Move?': '이동?'\n'Move articles': '기사 이동'\n'Move article': '기사 이동'\n'An issue must be created for the selected language but you do not have the right to create an issue.': '선택한 언어로 이슈를 생성해야 합니다. 이슈를 생성할 권한이 없습니다.'\n'A section must be created for the selected language but you do not have the right to create a section.': '선택한 언어로 섹션을 생성해야 합니다. 섹션을 생성할 권한이 없습니다. '\n'to section': 섹션으로\n'You must choose a language': '언어를 선택하시오.'\n'Unable to create the section for translation $1.': '$1 번역할 섹션을 생성할 수 없슴.'\n'Unable to create the issue for translation $1.': '$1 번역할 이슈를 생성할 수 없슴.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': '다음 기사는 신규이므로, 자동 출판으로 스케쥴할 수 없습니다. '\n'Section URL Name': '섹션 URL  이름'\n'Section Name': '섹션 이름'\n'Publish Schedule': '출판 스케쥴'\n'No action specified': '기능 미지정'\n'New section name': '새로운 섹션 이름 '\n'New section URL name': '새로운 섹션  URL  dlfma'\n'New issue name': '새로운 이슈 이름'\n'New issue URL name': '새로운 이슈  URL 이름'\n'New article name': '새로운 기사 이름'\n'Issue URL Name': '이슈  URL  이름'\n'Issue Name': '이슈 이름'\n'Duplicate?': '복사?'\n'Duplicate articles': '기사 복사'\n'Article name ($1)': '기사 이름 ($1)'\n'Article List': '기사 리스트'\n'Are you sure you want to remove the topic $1 from the article?': '기사에서 토픽 $1 을 삭제합니까?'\n'Are you sure you want to remove the file $1 from the article?': '기사에서 파일 $1 을 삭제합니까?'\n'Are you sure you want to remove the event scheduled on $1?': '$1 에 예정된 이벤트를 삭제합니까?'\n'Are you sure you want to delete this article?': '기사를 삭제합니까?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': '선택한 언어로 이슈를 생성해야 합니다. 이슈 이름과 URL이름을 입력하시오.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': '선택한 언어로 섹션을 생성해야합니다. 섹션 이름과 URL 이름을 입력하시오.'\n'Article Type': '기사 타입 '\n'Show article on front page': '프론트페이지에 기사 보기'\n'Show article on section page': '섹션 페이지에 기사 보기'\n'Translate article': '기사 번역'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': '기사를 수정할 권한이 없습니다. 자기가 쓴 쓴 기사만 수정할 수 있고, 송고된 기사는 권한있는 사용자만 수정할 수 있습니다. '\n'Duplicate article': '기사 복사'\n'The destination section is the same as the source section.': '목표 섹션이 원래 색션과 같습니다. '\n'The article is new; it is not possible to schedule it for automatic publishing.': '이 기사는 신규입니다. 자동 출판을 스케쥴할 수 없습니다. '\n'No article types were defined. You must create an article type first.': '기사 타입이 미지정입니다. 기사 타입을 먼저 생성하시오.'\n'Edit article types': '기사 타입 수정'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': '기사를 저장할 수없습니다. $1 이 $2 시간 $3 분전에 잠금상태로 되었습니다. '\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': '기사 상태를 변경할 권한이 없습니다. 송고된 기사는 권한있는 사용자만 수정할 수 있습니다. '\n'You do not have the right to delete articles.': '기사를 삭제할 권한이 없습니다. '\n'You must select an article type.': '기사 타입을 선택하시오.'\n'Are you sure you want to remove the image $1 from the article?': '기사에서 이미지 $1 삭제합니까?'\n'There was an error reading request parameters.': '요구 파라미터를 읽는중 에러가 있습니다. '\n'This article cannot be previewed. Please make sure it has the article template selected.': '기사를 미리볼 수 없습니다. 기사 템플레이트을 선택했는지 확인하시오.'\n'No such article.': '그런 기사 없슴'\n'No such section.': '그런 섹션 없슴.'\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.ku.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: null\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: null\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': null\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': null\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: null\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': null\n'Article created.': null\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: null\n'The article has already been translated into $1.': null\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': null\n'You do not have the right to translate articles.': null\n'You do not have the right to publish articles.': null\n'You do not have the right to move articles.': null\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': null\n'Publish?': null\n'Publish articles': null\n'Publish article': null\n'Move?': null\n'Move articles': null\n'Move article': null\n'An issue must be created for the selected language but you do not have the right to create an issue.': null\n'A section must be created for the selected language but you do not have the right to create a section.': null\n'to section': null\n'You must choose a language': null\n'Unable to create the section for translation $1.': null\n'Unable to create the issue for translation $1.': null\n'The following articles are new; it is not possible to schedule them for automatic publishing': null\n'Section URL Name': null\n'Section Name': null\n'Publish Schedule': null\n'No action specified': null\n'New section name': null\n'New section URL name': null\n'New issue name': null\n'New issue URL name': null\n'New article name': null\n'Issue URL Name': null\n'Issue Name': null\n'Duplicate?': null\n'Duplicate articles': null\n'Article name ($1)': null\n'Article List': null\n'Are you sure you want to remove the topic $1 from the article?': null\n'Are you sure you want to remove the file $1 from the article?': null\n'Are you sure you want to remove the event scheduled on $1?': null\n'Are you sure you want to delete this article?': null\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': null\n'A section must be created for the selected language.  Please enter the section name and URL name.': null\n'Article Type': null\n'Show article on front page': null\n'Show article on section page': null\n'Translate article': null\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': null\n'Duplicate article': null\n'The destination section is the same as the source section.': null\n'The article is new; it is not possible to schedule it for automatic publishing.': null\n'No article types were defined. You must create an article type first.': null\n'Edit article types': null\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'You do not have the right to delete articles.': null\n'You must select an article type.': null\n'Are you sure you want to remove the image $1 from the article?': null\n'There was an error reading request parameters.': null\n'This article cannot be previewed. Please make sure it has the article template selected.': null\n'No such article.': null\n'No such section.': null\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.lv.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: null\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: null\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': null\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': null\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: null\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': null\n'Article created.': null\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: null\n'The article has already been translated into $1.': null\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': null\n'You do not have the right to translate articles.': null\n'You do not have the right to publish articles.': null\n'You do not have the right to move articles.': null\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': null\n'Publish?': null\n'Publish articles': null\n'Publish article': null\n'Move?': null\n'Move articles': null\n'Move article': null\n'An issue must be created for the selected language but you do not have the right to create an issue.': null\n'A section must be created for the selected language but you do not have the right to create a section.': null\n'to section': null\n'You must choose a language': null\n'Unable to create the section for translation $1.': null\n'Unable to create the issue for translation $1.': null\n'The following articles are new; it is not possible to schedule them for automatic publishing': null\n'Section URL Name': null\n'Section Name': null\n'Publish Schedule': null\n'No action specified': null\n'New section name': null\n'New section URL name': null\n'New issue name': null\n'New issue URL name': null\n'New article name': null\n'Issue URL Name': null\n'Issue Name': null\n'Duplicate?': null\n'Duplicate articles': null\n'Article name ($1)': null\n'Article List': null\n'Are you sure you want to remove the topic $1 from the article?': null\n'Are you sure you want to remove the file $1 from the article?': null\n'Are you sure you want to remove the event scheduled on $1?': null\n'Are you sure you want to delete this article?': null\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': null\n'A section must be created for the selected language.  Please enter the section name and URL name.': null\n'Article Type': null\n'Show article on front page': null\n'Show article on section page': null\n'Translate article': null\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': null\n'Duplicate article': null\n'The destination section is the same as the source section.': null\n'The article is new; it is not possible to schedule it for automatic publishing.': null\n'No article types were defined. You must create an article type first.': null\n'Edit article types': null\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'You do not have the right to delete articles.': null\n'You must select an article type.': null\n'Are you sure you want to remove the image $1 from the article?': null\n'There was an error reading request parameters.': null\n'This article cannot be previewed. Please make sure it has the article template selected.': null\n'No such article.': null\n'No such section.': null\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.mr.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: null\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: null\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': null\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': null\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: null\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': null\n'Article created.': null\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: null\n'The article has already been translated into $1.': null\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': null\n'You do not have the right to translate articles.': null\n'You do not have the right to publish articles.': null\n'You do not have the right to move articles.': null\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': null\n'Publish?': null\n'Publish articles': null\n'Publish article': null\n'Move?': null\n'Move articles': null\n'Move article': null\n'An issue must be created for the selected language but you do not have the right to create an issue.': null\n'A section must be created for the selected language but you do not have the right to create a section.': null\n'to section': null\n'You must choose a language': null\n'Unable to create the section for translation $1.': null\n'Unable to create the issue for translation $1.': null\n'The following articles are new; it is not possible to schedule them for automatic publishing': null\n'Section URL Name': null\n'Section Name': null\n'Publish Schedule': null\n'No action specified': null\n'New section name': null\n'New section URL name': null\n'New issue name': null\n'New issue URL name': null\n'New article name': null\n'Issue URL Name': null\n'Issue Name': null\n'Duplicate?': null\n'Duplicate articles': null\n'Article name ($1)': null\n'Article List': null\n'Are you sure you want to remove the topic $1 from the article?': null\n'Are you sure you want to remove the file $1 from the article?': null\n'Are you sure you want to remove the event scheduled on $1?': null\n'Are you sure you want to delete this article?': null\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': null\n'A section must be created for the selected language.  Please enter the section name and URL name.': null\n'Article Type': null\n'Show article on front page': null\n'Show article on section page': null\n'Translate article': null\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': null\n'Duplicate article': null\n'The destination section is the same as the source section.': null\n'The article is new; it is not possible to schedule it for automatic publishing.': null\n'No article types were defined. You must create an article type first.': null\n'Edit article types': null\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'You do not have the right to delete articles.': null\n'You must select an article type.': null\n'Are you sure you want to remove the image $1 from the article?': null\n'There was an error reading request parameters.': null\n'This article cannot be previewed. Please make sure it has the article template selected.': null\n'No such article.': null\n'No such section.': null\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.nb_NO.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: null\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: null\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': null\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': null\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: null\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': null\n'Article created.': null\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: null\n'The article has already been translated into $1.': null\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': null\n'You do not have the right to translate articles.': null\n'You do not have the right to publish articles.': null\n'You do not have the right to move articles.': null\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': null\n'Publish?': null\n'Publish articles': null\n'Publish article': null\n'Move?': null\n'Move articles': null\n'Move article': null\n'An issue must be created for the selected language but you do not have the right to create an issue.': null\n'A section must be created for the selected language but you do not have the right to create a section.': null\n'to section': null\n'You must choose a language': null\n'Unable to create the section for translation $1.': null\n'Unable to create the issue for translation $1.': null\n'The following articles are new; it is not possible to schedule them for automatic publishing': null\n'Section URL Name': null\n'Section Name': null\n'Publish Schedule': null\n'No action specified': null\n'New section name': null\n'New section URL name': null\n'New issue name': null\n'New issue URL name': null\n'New article name': null\n'Issue URL Name': null\n'Issue Name': null\n'Duplicate?': null\n'Duplicate articles': null\n'Article name ($1)': null\n'Article List': null\n'Are you sure you want to remove the topic $1 from the article?': null\n'Are you sure you want to remove the file $1 from the article?': null\n'Are you sure you want to remove the event scheduled on $1?': null\n'Are you sure you want to delete this article?': null\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': null\n'A section must be created for the selected language.  Please enter the section name and URL name.': null\n'Article Type': null\n'Show article on front page': null\n'Show article on section page': null\n'Translate article': null\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': null\n'Duplicate article': null\n'The destination section is the same as the source section.': null\n'The article is new; it is not possible to schedule it for automatic publishing.': null\n'No article types were defined. You must create an article type first.': null\n'Edit article types': null\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'You do not have the right to delete articles.': null\n'You must select an article type.': null\n'Are you sure you want to remove the image $1 from the article?': null\n'There was an error reading request parameters.': null\n'This article cannot be previewed. Please make sure it has the article template selected.': null\n'No such article.': null\n'No such section.': null\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.nl.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: null\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: Bestanden\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': 'Voeg onderwer bij artikel'\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: Informatie\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': null\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: null\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': null\n'Article created.': null\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: null\n'The article has already been translated into $1.': 'Het artikel is al vertaald in $1.'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': null\n'You do not have the right to translate articles.': null\n'You do not have the right to publish articles.': null\n'You do not have the right to move articles.': null\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'U kan de artikelen in rood gemarkeerd niet $1 omdat de doel uitgave niet is vertaald in de passende taal.'\n'Publish?': 'Publiceer?'\n'Publish articles': 'Publiceer artikelen'\n'Publish article': 'Publiceer artikel'\n'Move?': 'Verplaats?'\n'Move articles': 'Verplaats artikelen'\n'Move article': 'Verplaats artikel'\n'An issue must be created for the selected language but you do not have the right to create an issue.': null\n'A section must be created for the selected language but you do not have the right to create a section.': null\n'to section': 'naar rubriek'\n'You must choose a language': null\n'Unable to create the section for translation $1.': 'Probleem bij het maken van de rubriek voor vertaling $1.'\n'Unable to create the issue for translation $1.': 'Probleem bij het maken van de uitgave voor vertaling $1.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'De volgende artikelen zijn nieuw; het is niet mogelijk om ze te plannen voor automatisch publiceren.'\n'Section URL Name': 'Rubriek URL Naam'\n'Section Name': 'Rubriek naam'\n'Publish Schedule': 'Publicatie Planning'\n'No action specified': 'Geen Actie gespecificeerd'\n'New section name': 'Nieuwe rubriek naam'\n'New section URL name': 'Nieuwe rubriek URL naam'\n'New issue name': 'Nieuwe uitgave naam'\n'New issue URL name': 'Nieuwe uitgave URL naam'\n'New article name': 'Nieuwe artikel naam'\n'Issue URL Name': 'Uitgave URL Naam'\n'Issue Name': 'Uitgave Naam'\n'Duplicate?': 'Dupliceer?'\n'Duplicate articles': 'Dupliceer artikelen'\n'Article name ($1)': 'Artikel naam ($1)'\n'Article List': 'Artikel Lijst'\n'Are you sure you want to remove the topic $1 from the article?': 'Weet u zeker dat u het onderwerp $1 wilt verwijderen uit het artikel?'\n'Are you sure you want to remove the file $1 from the article?': 'Weet u zeker dat u het bestand $1 wilt verwijderen uit het artikel?'\n'Are you sure you want to remove the event scheduled on $1?': 'Weet u zeker dat u de actie gepland op $1 wilt verwijderen van het artikel?'\n'Are you sure you want to delete this article?': 'Weet u zeker dat u dit artikel wilt verwijderen?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'Een uitgave moet worden gemaakt voor de geselecteerde taal. Vul de uitgave naam en URL naam in.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'Een rubriek moet worden gemaakt voor de geselecteerde taal. Vul een rubriek naam en URL naam in.'\n'Article Type': 'Artikel Type'\n'Show article on front page': 'Toon article op voorpagina'\n'Show article on section page': 'Toon artikel op rubriekspagina'\n'Translate article': 'Vertaal artikel'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': null\n'Duplicate article': 'Dupliceer artikel'\n'The destination section is the same as the source section.': 'De doel rubriek is het zelfde als de oorspronkelijke rubriek.'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'Het artikel is new; het is niet mogelijk om het te plannen voor automatische publicatie.'\n'No article types were defined. You must create an article type first.': null\n'Edit article types': 'Bewerk artikel typen'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Kan het artikel niet opslaan. Het is beveiligd door $1 $2 uur en $3 minuten geleden.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'You do not have the right to delete articles.': null\n'You must select an article type.': null\n'Are you sure you want to remove the image $1 from the article?': null\n'There was an error reading request parameters.': 'Er was een fout bij het lezen van de aanvraag parameters.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'Dit artikel kan niet worden getoond. Zorg er voor dat een sjabloon is geselecteerd.'\n'No such article.': 'Artikel bestaat niet.'\n'No such section.': 'Rubriek bestaat niet.'\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.pa.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: null\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: null\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': null\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': null\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: null\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': null\n'Article created.': null\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: null\n'The article has already been translated into $1.': null\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': null\n'You do not have the right to translate articles.': null\n'You do not have the right to publish articles.': null\n'You do not have the right to move articles.': null\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': null\n'Publish?': null\n'Publish articles': null\n'Publish article': null\n'Move?': null\n'Move articles': null\n'Move article': null\n'An issue must be created for the selected language but you do not have the right to create an issue.': null\n'A section must be created for the selected language but you do not have the right to create a section.': null\n'to section': null\n'You must choose a language': null\n'Unable to create the section for translation $1.': null\n'Unable to create the issue for translation $1.': null\n'The following articles are new; it is not possible to schedule them for automatic publishing': null\n'Section URL Name': null\n'Section Name': null\n'Publish Schedule': null\n'No action specified': null\n'New section name': null\n'New section URL name': null\n'New issue name': null\n'New issue URL name': null\n'New article name': null\n'Issue URL Name': null\n'Issue Name': null\n'Duplicate?': null\n'Duplicate articles': null\n'Article name ($1)': null\n'Article List': null\n'Are you sure you want to remove the topic $1 from the article?': null\n'Are you sure you want to remove the file $1 from the article?': null\n'Are you sure you want to remove the event scheduled on $1?': null\n'Are you sure you want to delete this article?': null\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': null\n'A section must be created for the selected language.  Please enter the section name and URL name.': null\n'Article Type': null\n'Show article on front page': null\n'Show article on section page': null\n'Translate article': null\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': null\n'Duplicate article': null\n'The destination section is the same as the source section.': null\n'The article is new; it is not possible to schedule it for automatic publishing.': null\n'No article types were defined. You must create an article type first.': null\n'Edit article types': null\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'You do not have the right to delete articles.': null\n'You must select an article type.': null\n'Are you sure you want to remove the image $1 from the article?': null\n'There was an error reading request parameters.': null\n'This article cannot be previewed. Please make sure it has the article template selected.': null\n'No such article.': null\n'No such section.': null\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': 'The article slideshows have been successfully updated, please close the window.'\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: 'See full-size image in a new tab'\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.pl.yml",
    "content": "'Edit metadata': 'Edytuj metadane'\nRating: Ocenianie\n'Enable Rating': 'Aktywuj ocenianie.'\n'Blog management': 'Zarządzanie blogami'\n'View article': 'Zobacz artykuł'\n'Select a list': 'Wybierz listę'\n'Remove list': 'Usuń listę'\n'Please select a list': 'Wybierz listę'\nPlaylist: 'Lista odtwarzania'\n'List updated.': 'Lista została zaktualizowana'\n'List saved': 'Lista została zapisana'\n'List Name': 'Nazwa listy'\n'List ID': 'Numer listy'\n'Item already exists in the list': 'Element jest już na tej liście'\n'Featured Articles': 'Promowane artykuły'\n'Featured Article Lists': 'Listy artykułów'\n'Featured Article List': 'Lista artykułów'\n'Duplicate list': 'Skopiuj listę'\n'Duplicate article entry found': 'Znaleziono duplikowane artykuły.'\n'Drag here to add to list': 'Przeciągnij tutaj aby dodać do listy'\n'Could not save the list': 'Nie można zapisac listy'\n'Available Articles': 'Dostepne artykuły'\n'Are you sure you want to delete this list?': 'Jesteś pewien że chcesz usunąć tą listę?'\n'Add to list': 'Dodaj do listy'\n'Add list': 'Dodaj listę'\n'Multi date events': 'Wielokrotne wydarzenie'\nSlideshows: Galerie\n'Place images': 'Umieść obrazy'\n'Youre not allowed to edit article.': 'Nie masz uprawnień do edycji artykułu.'\nWebcode: 'Kod internetowy'\nUnapproved: Nieuprawniony\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Nie możesz podejrzeć tego wydania. Upewnij się że publikacja ma przydzielony szablon.'\n'The article could not be submitted.': 'Artykuł nie może zostać wysłany.'\n'Submit articles': 'Wyślij artykuly'\n'Submit article': 'Wyślij artykuł'\n'Related Articles': 'Powiązane artykuły'\n'Pending articles': 'Oczekujące artykuły'\n'Pending Articles': 'Oczekujące artykuły'\n'Context Box updated': 'Powiązane artykuły zaktualizowane'\nOn: Włączony\nOff: Wyłączony\n'You do not have the right to moderate comments.': 'Nie masz uprawnień aby moderować komentarze.'\n'You can not schedule opposing events at the same time': 'Nie możesz zaplanować przeciwstawnych wydarzeń w tym samym czasie'\n'Unable to reach Newscoop. Please check your internet connection.': 'Nie można połączyć z Newscoop. Sprawdź swoje połączenie z Internetem.'\nTitle: Tytuł\n'There already is an article with the same name. Please change the name and try again.': 'Artykuł z taką nazwą już istnieje. Zmień nazwę i spróbuj ponownie.'\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': 'Miej na uwadze że zaplanowana publikacja tego artykułu zostanie anulowana gdy zmienisz status na Nowy. Potwierdź zmianę statusu.'\nGeolocation: Geololalizacja\nNewscoop: Newscoop\n'Overwrite articles with matching names': 'Nadpisz artykuły o tej nazwie.'\n'Article <i>$1</i> already exists, and was not overwritten.<br />': 'Artykuł <i>$1</i> już istnieje, i nie może być nadpisany.<br />'\nFiles: Pliki\n'Select section:': 'Wybierz sekcję:'\n'Add another author': 'Dodaj kolejnego autora'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Artykuł zostal zablokowany przez $1 ($2) $3 minut(y) temu.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Artykuł zostal zablokowany przez $1 ($2) $3 godziny i $4 minut(y) temu.'\n'Switches saved.': 'Przełączniki zapisane.'\n'Keywords saved.': 'Słowa kluczowe zapisane.'\n'Comment settings': 'Ustawienia komentarzy.'\nAuthors: Autorzy\n'Attach Topic To Article': 'Dołącz Temat do Artykułu'\n'Article saved.': 'Artykuł zapisany.'\n'Article is locked': 'Artykuł jest zablokowany'\n'Actions updated.': 'Akcje uaktualnione.'\n'Your work has not been saved. Do you want to continue and lose your changes?': 'Twoja praca nie została zapisana. Chcesz kontynuować czy utracić swoje zmiany?'\nSwitches: Przełączniki\n'No subtopics available': 'Brak podtematów'\n'Newscoop Subhead': 'Podtytuł Newscoop'\nMedia: Media\n'Last modified': 'Ostatnia modyfikacja'\n'Keywords &amp; Topics': 'Słowa kluczowe & Tematy'\nInfo: Info\n'Go to live article': 'Zobacz arykuł live'\nCreated: Utworzono\n'Are you sure you want to remove the map from the article?': 'Na pewnoc hcesz usunąć mapę z artykułu?'\n'Scheduled action added': 'Dodaną zaplanowaną akcję'\n'Content edited': 'Edycja kontentu zakończona'\n'You must select an article language.': 'Musisz wybrać język artykułu.'\n'You must select a publication.': 'Musisz wybrać publikację.'\n'You must select a file to upload.': 'Musisz wybrać pliki do dodania.'\n'You must select a XML input file.': 'Musisz wybrać plik XML.'\n'You do not have the right to import XML archives.': 'Nie masz praw aby importować archiwa XML.'\n'There was a problem uploading the file.': 'Wystąpił błąd podczas dodawania pliku.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Wgyrwany plik został dodany tylko w części. To częsty błąd gdy czas wgrywania pliku nie jest zgodny z jego rozmiarem. Maksymalny czas wgrywania ustalany jest w pliku php.ini'\n'The file exceeds the allowed max file size.': 'Plik jest większy od maksymalnego rozmiaru.'\nOptional: Opcjonalne\n'Input File': 'Plik wsadowy'\n'Import XML': 'Import XML'\n'File is not a valid XML file.': 'Plik XML nie jest poprawny.'\n'File does not exist.': 'Plik nie istnieje.'\n'File could not be uploaded.': 'Plik nie został dodany.'\n'File could not be read.': 'Plik nie mógł być odczytant.'\n'Error List': 'Lista błędów'\n'Bad format in XML file.': 'Zły format w pliku XML.'\n'Article could not be created.': 'Artykuł nie został odczytany.'\n'---Select article type---': '---Wybierz typ artykułu---'\n'$1 articles successfully imported.': 'Artykuły zaimportowane pomyślnie: $1'\nSaved: Zapisano\n'Save All': 'Zapisz wszystko'\n'Online Server: On': 'Serwer Online: ON'\n'Online Server: Off': 'Serwer Online: Off'\nDownload: Pobierz\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': 'Dwa artykły o tej samej nazwie nie mogą znajdować się w tej samej sekcji. Wybrana nazwa artykuły jest już w użyciu przez artykuł $1'\n'Visible to non-subscribers': 'Dostępne dla nie-subskrynentów'\n'The article could not be published.': 'Artykuł nie zostal opublikowany.'\n'Scheduled action deleted.': 'Zaplanowana akcja usunięta.'\n'Scheduled action added.': 'Zaplanowana akcja dodana.'\n'Article(s) unlocked.': 'Artykuł(y) odblokowane.'\n'Article(s) duplicated.': 'Artykuł(y) zduplikowane.'\n'Article(s) deleted.': 'Artykuł(y) usunięte.'\n'Article status set to $1': 'Status artykułu zmieniony na $1'\n'Article unlocked.': 'Artykuł odblokowany.'\n'Article translation created.': 'Utworzono tłumaczenie artykułu.'\n'Article order changed.': 'Kierunek artykułów zmieniony.'\n'Article moved.': 'Artykuł przeniesiony.'\n'Article deleted.': 'Artykuł usunięty.'\n'Article created.': 'Artykuł utworzony.'\n'$1 toggled.': '$1 toggled.'\n'Total:': 'Całkowicie:'\n'Show Comments': 'Pokaż komentarze'\nLocked: Zablokowane\n'Invalid type: $1': 'Niewłaściwy typ: $1'\n'Hide Comments': 'Schowaj komentarze '\nEnabled: Właczone\nDisabled: Wyłączone\nComments: Komentarze\n'The article has already been translated into $1.': 'Artykuł został już przetłumaczony na $1.'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'Musisz wybrać publikację, wydanie oraz sekcję do tego artykułu zanim zaplanujesz jego publikację. Idź do menu $1 i wybierz $2 aby to uczynić.'\n'You do not have the right to translate articles.': 'Nie masz praw aby tłumaczyć artykuły.'\n'You do not have the right to publish articles.': 'Nie masz praw aby dodawać artykuły.'\n'You do not have the right to move articles.': 'Nie masz praw aby przenosić artykuły.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'Nie możes $1 zaznaczonych artykułów na czerwono ponieważ docelowe wydanie nie zostało przetłumaczone na właściwy język.'\n'Publish?': 'Opublikowac?'\n'Publish articles': 'Opublikuj artykuły'\n'Publish article': 'Opublikuj artykuł'\n'Move?': 'Przenieść?'\n'Move articles': 'Przenieś artykuły'\n'Move article': 'Przenieś artykuł'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'Wydanie musi zostać utworzone do wskazanego języka ale nie masz praw aby to uczynić.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'Sekcja musi zostać utworzona do wskazanego języka ale nie masz praw aby to uczynić.'\n'to section': 'do sekcji'\n'You must choose a language': 'Musisz wybrać język'\n'Unable to create the section for translation $1.': 'Nie można utworzyć sekcji do tłumaczenia $1.'\n'Unable to create the issue for translation $1.': 'Nie można utworzyć wydania do tłumaczenia $1.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'Następujące artykuły są nowe; nie można ich zaplanować do automatycznej publikacji'\n'Section URL Name': 'Nazwa URL sekcji'\n'Section Name': 'Nazwa sekcji'\n'Publish Schedule': 'Kalendarz wydawniczy'\n'No action specified': 'Brak wybranej akcji'\n'New section name': 'Nowa nazwa sekcji'\n'New section URL name': 'Nowa nazwa URL sekcji'\n'New issue name': 'Nowa nazwa wydania'\n'New issue URL name': 'Nowa nazwa URL wydania'\n'New article name': 'Nowa nazwa artykułu'\n'Issue URL Name': 'Nazwa URL Wydania'\n'Issue Name': 'Nazwa wydania'\n'Duplicate?': 'Duplikować?'\n'Duplicate articles': 'Duplikuj artykuły'\n'Article name ($1)': 'Nazwa artykułu ($1)'\n'Article List': 'Lista artykułów'\n'Are you sure you want to remove the topic $1 from the article?': 'Czy na pewno chcesz usunąć temat $1 z artykułu?'\n'Are you sure you want to remove the file $1 from the article?': 'Czy na pewno chcesz usunąć plik $1 z artykułu?'\n'Are you sure you want to remove the event scheduled on $1?': 'Czy na pewno chcesz usunąć wydarzenie zaplanowane na $1?'\n'Are you sure you want to delete this article?': 'Czy na pewno chcesz usunąć ten artykuł?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'Wydanie musi zostać utworzone do wybranego języka. Podaj nazwę wydanie i URL nazwy.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'Sekcja musi zostać utworzona do wybranego języka. Podaj nazwę wydanie i URL nazwy.'\n'Article Type': 'Typ artykułu'\n'Show article on front page': 'Pokaż artykuł na stronie głównej'\n'Show article on section page': 'Pokaż artykuł na stronie sekcji'\n'Translate article': 'Przetłumacz artykul'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'Nie masz praw aby zmieniać ten artykuł. Możesz tylko edytować swoje a po ich przesłaniu tylko autoryzowane osoby mogą je zmieniać.'\n'Duplicate article': 'Duplikuj artykuł '\n'The destination section is the same as the source section.': 'Docelowa sekcja jest taka sama jak pierwotna.'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'Ten artykuł jest nowy; nie można go dodać do automatycznej publikacji.'\n'No article types were defined. You must create an article type first.': 'Nie zdefiniowana typów artykułów. Musisz wpierw ustawić chociaż jeden.'\n'Edit article types': 'Edytuj typy artykułów'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Nie można zapisać artykułu. Został zablokowany przez $1 $2 godzin i $3 minut temu.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Nie masz praw aby zmieniac status artykułu. Po wysłaniu artykuł może być zmieniony tylko przez autoryzowane osoby.'\n'You do not have the right to delete articles.': 'Nie masz praw aby usuwać artykuły.'\n'You must select an article type.': 'Musisz wpierw wybrać typ artykułu.'\n'Are you sure you want to remove the image $1 from the article?': 'Czy na pewno chcesz usunąć obraz $1 z artykułu?'\n'There was an error reading request parameters.': 'Wystąpił błąd podczas odczytywania parametrów zapytania.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'Ten artykuł nie może być podejrzany. Upewnij się, że szablon artykułu jest wybrany.'\n'No such article.': 'Brak artykułu.'\n'No such section.': 'Brak sekcji.'\nCharacters: Znaków\nSnippet: Fragment\n'This list is already in a different state than the one in which it was loaded.': 'Ta lista wygląda już inaczej niż w momencie jej załadowania. Ktoś inny zapisał jej inną wersję. '\n'List name should not be longer than 40 chars': 'Nazwa listy nie może być dłuższa niż 40 znaków'\n'Not valid number': 'Podana wartość nie jest liczbą'\n'List limit': 'Limit artykułów na liście'\n'The last article of this list has been removed.': 'Ostatni artykuł z tej listy został usunięty.'\nRevert: Cofnij\n'Could not automatically refresh the list': 'Nie można odświeżyć tej listy'\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: 'Jesteś pewien że chcesz zmienić nazwę tej listy? Nazwa może być używana w szablonach twojego motywu do wyświetlania zawartości tej listy. Jeśli masz wątpliwości zapytaj osobę odpowiedzialną za używany motyw.'\n        alert: null\n    images:\n        see_original: 'Zobacz zdjęcie w pełnym rozmiarze w nowej karcie.'\n        edit:\n            edit_image_metadata: 'Edytuj metadane zdjęcia'\n            save: Zapisz\n            form:\n                use: Użyj\n                number: Numer\n                caption: Podpis\n                status_approved: Zatwierdzony\n                status_unapproved: Odrzucony\n                status: Status\n                description: Opis\n                photographer: Fotograf\n                photographer_url: 'Adres URL fotografa'\n                place: Miejsce\n                date: Data\n                article_specific: 'Specyficzne dla artykułu'\n                global: Ogólne\n                other_captions: 'Inne podpisy'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.ps.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: null\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: null\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': null\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': null\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: null\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': null\n'Article created.': null\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: null\n'The article has already been translated into $1.': null\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': null\n'You do not have the right to translate articles.': null\n'You do not have the right to publish articles.': null\n'You do not have the right to move articles.': null\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': null\n'Publish?': null\n'Publish articles': null\n'Publish article': null\n'Move?': null\n'Move articles': null\n'Move article': null\n'An issue must be created for the selected language but you do not have the right to create an issue.': null\n'A section must be created for the selected language but you do not have the right to create a section.': null\n'to section': null\n'You must choose a language': null\n'Unable to create the section for translation $1.': null\n'Unable to create the issue for translation $1.': null\n'The following articles are new; it is not possible to schedule them for automatic publishing': null\n'Section URL Name': null\n'Section Name': null\n'Publish Schedule': null\n'No action specified': null\n'New section name': null\n'New section URL name': null\n'New issue name': null\n'New issue URL name': null\n'New article name': null\n'Issue URL Name': null\n'Issue Name': null\n'Duplicate?': null\n'Duplicate articles': null\n'Article name ($1)': null\n'Article List': null\n'Are you sure you want to remove the topic $1 from the article?': null\n'Are you sure you want to remove the file $1 from the article?': null\n'Are you sure you want to remove the event scheduled on $1?': null\n'Are you sure you want to delete this article?': null\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': null\n'A section must be created for the selected language.  Please enter the section name and URL name.': null\n'Article Type': null\n'Show article on front page': null\n'Show article on section page': null\n'Translate article': null\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': null\n'Duplicate article': null\n'The destination section is the same as the source section.': null\n'The article is new; it is not possible to schedule it for automatic publishing.': null\n'No article types were defined. You must create an article type first.': null\n'Edit article types': null\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'You do not have the right to delete articles.': null\n'You must select an article type.': null\n'Are you sure you want to remove the image $1 from the article?': null\n'There was an error reading request parameters.': null\n'This article cannot be previewed. Please make sure it has the article template selected.': null\n'No such article.': null\n'No such section.': null\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.pt.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: null\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: Ficheiros\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: Autores\n'Attach Topic To Article': 'Anexar tópico ao artigo'\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': 'Tem de selecionar um ficheiro para transferir'\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: null\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': null\n'Article created.': null\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: Comentários\n'The article has already been translated into $1.': 'Este artigo ja foi traduzido para $1'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'Tem de escolher a publicação, numero e secção para este artigo antes de agendar a sua publicação. Vá ao menu $1 e escolha a opção $2 para fazê-lo'\n'You do not have the right to translate articles.': 'Não tem permissão para traduzir artigos.'\n'You do not have the right to publish articles.': 'Não tem permissão para publicar artigos'\n'You do not have the right to move articles.': 'Não tem permissão para mover artigos.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'Não pode mover os artigos assinalados a vermelho porque a edição de destino não se encontra traduzido para o idioma apropriado.'\n'Publish?': 'Publicar?'\n'Publish articles': 'Publicar artigos'\n'Publish article': 'Publicar artigo'\n'Move?': 'Mover?'\n'Move articles': 'Mover artigos'\n'Move article': 'Mover artigo'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'Tem de criar uma edição para o idioma escolhido, mas não possui permissões para tal.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'Tem de criar um secção para o idioma escolhido, mas não possui permissões para tal.'\n'to section': 'para secção'\n'You must choose a language': 'Tem de escolher um idioma'\n'Unable to create the section for translation $1.': 'Não é possivél criar a secção para traduzir $1.'\n'Unable to create the issue for translation $1.': 'Não é possivél criar a edição para traduzir $1.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'Os artigos seguintes são novos; não é possivél agendar para publicação automática.'\n'Section URL Name': 'Nome URL da secção'\n'Section Name': 'Nome da secção'\n'Publish Schedule': 'Agendamento de publicação'\n'No action specified': 'Sem acção especificada'\n'New section name': 'Novo nome de secção'\n'New section URL name': 'Novo nome de URL de secção'\n'New issue name': 'Novo nome de edição'\n'New issue URL name': 'Novo nome URL de edição'\n'New article name': 'Novo nome de artigo'\n'Issue URL Name': 'Nome URL da edição'\n'Issue Name': 'Nome da edição'\n'Duplicate?': 'Duplicar?'\n'Duplicate articles': 'Duplicar artigos'\n'Article name ($1)': 'Nome do Artigo ($1)'\n'Article List': 'Lista de artigos'\n'Are you sure you want to remove the topic $1 from the article?': 'Confirma a eliminação do tópico $1 do artigo?'\n'Are you sure you want to remove the file $1 from the article?': 'Confirma a eliminação do anexo $1 do artigo?'\n'Are you sure you want to remove the event scheduled on $1?': 'Confirma a eliminação do agendamento para $1?'\n'Are you sure you want to delete this article?': 'Confirma a eliminação deste artigo?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'Tem de existir uma edição para o idioma selecionado. Introduza o nome da edição e respectivo nome URL.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'Tem de existir uma secção para o idioma selecionado. Introduza o nome da secção e respectivo nome URL.'\n'Article Type': 'Tipo de artigo'\n'Show article on front page': 'Mostrar Artigo na 1ª Página'\n'Show article on section page': 'Mostrar Artigo na página de Secção'\n'Translate article': 'Traduzir Artigo'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'Não tem permissões para alterar o Estado do Artigo. Apenas pode alterar os seus artigos, mas após um artigo ser submetido apenas poderá ser alterado por Utilizadores autorizados pelo Sistema.'\n'Duplicate article': 'Duplicar Artigo'\n'The destination section is the same as the source section.': 'Secção destino idêntica à de origem.'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'Este artigo é novo; não é possivél agendar publicação automática.'\n'No article types were defined. You must create an article type first.': 'Não existem tipos de artigos definidos. Tem de criar tipo de artigo antes.'\n'Edit article types': 'Editar tipos de artigos'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Não é possivél gravar artigo. Este foi bloqueado por $1 à $2 horas e $3 minutos.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Não tem permissões para alterar o estado do artigo. Uma vez submetido apenas os utilizadores autorizados podem alterar o seu estado.'\n'You do not have the right to delete articles.': 'Não tem permissões para eliminar artigos. '\n'You must select an article type.': 'Tem de escolher o tipo de artigo.'\n'Are you sure you want to remove the image $1 from the article?': 'Confirma a eliminação da imagem $1 do artigo?'\n'There was an error reading request parameters.': 'Ocorreu um erro na leitura do parametro solicitado.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'Este artigo não pode ser prévisualizado, verifique se existe um modelo atribuido à visualização de artigos.'\n'No such article.': 'Artigo Desconhecido.'\n'No such section.': 'Secção Desconhecida.'\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.pt_BR.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': 'Ver artigo'\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': 'Eventos de datas múltiplas'\nSlideshows: Slideshows\n'Place images': null\n'Youre not allowed to edit article.': 'Você não tem permissão de editar o artigo.'\nWebcode: 'Código de web'\nUnapproved: 'Não foi aprovado'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Esta edição não pode ser visualizada. Por favor certifique-se de que a publicação tem um tema designado.'\n'The article could not be submitted.': 'Não foi possível entregar o artigo.'\n'Submit articles': 'Entregar artigos'\n'Submit article': 'Entregar artigo'\n'Related Articles': 'Artigos relacionados'\n'Pending articles': 'Artigos pendentes'\n'Pending Articles': 'Artigos pendentes'\n'Context Box updated': null\nOn: Ligar\nOff: Desligar\n'You do not have the right to moderate comments.': 'Você não tem o direito de moderar os comentários.'\n'You can not schedule opposing events at the same time': 'Não é possível marcar eventos opostos no mesmo horário'\n'Unable to reach Newscoop. Please check your internet connection.': 'Não foi possivel fazer conexão com Newscoop. Por favor verifique a sua conexão com internet.'\nTitle: Título\n'There already is an article with the same name. Please change the name and try again.': 'Já existe um artigo com mesmo nome. Por favor modifique o nome e tente de novo.'\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': 'Por favor lembre que todas as ações de publicação agendadas para este artigo vão ser apagadas quando você definir este artigo como Novo. Por favor confirme a modificação do estado.'\nGeolocation: Geolocalização\nNewscoop: Newscoop\n'Overwrite articles with matching names': 'Sobrescrever artigos com nomes correspondentes'\n'Article <i>$1</i> already exists, and was not overwritten.<br />': 'Artigo <i>$1</i> já existe, e não foi sobresrito.<br />'\nFiles: Arquivos\n'Select section:': 'Selecionar seção:'\n'Add another author': 'Adicionar outro autor'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'O artigo foi trancado por $1 ($2) $3 minuto(s) atrás.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'O artigo foi trancado por $1 ($2) $3 hora(s) e $4 minuto(s) atrás.'\n'Switches saved.': 'Interruptores salvos.'\n'Keywords saved.': 'Palavras-chaves memorizadas'\n'Comment settings': 'Preferências de comentário'\nAuthors: Autores\n'Attach Topic To Article': 'Anexar tópico ao artigo'\n'Article saved.': 'Artigo foi salvado'\n'Article is locked': 'O artigo está trancado'\n'Actions updated.': 'Ações atualizadas'\n'Your work has not been saved. Do you want to continue and lose your changes?': 'Seu trabalho não foi salvo. Quer continuar e perder as mudanças feitas?'\nSwitches: Interruptores\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: Mídia\n'Last modified': 'Modificado pela última vez'\n'Keywords &amp; Topics': 'Palavras chaves & Tópicos'\nInfo: Info\n'Go to live article': 'Ir para artigo vivo'\nCreated: Criado\n'Are you sure you want to remove the map from the article?': 'Tem certeza que quer remover o mapa do artigo?'\n'Scheduled action added': 'Ação agendada foi adicionada.'\n'Content edited': 'Conteúdo editado'\n'You must select an article language.': 'Você tem que selecionar a língua do artigo.'\n'You must select a publication.': 'Você tem que selecionar uma publicação.'\n'You must select a file to upload.': 'Tem de selecionar um ficheiro para transferir'\n'You must select a XML input file.': 'Você tem que selecionar o arquivo de entrada XML.'\n'You do not have the right to import XML archives.': 'Você não tem o direito de importar arquivos XML.'\n'There was a problem uploading the file.': 'Ocorreu um problema durante o upload do aquivo.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'O upload do arquivo foi apenas parcial. Isso acontece quando o tempo máximo para fazer upload é curto comparado com o tamanho do arquivo que você está tentando mandar. O tempo máximo do upload é definido no php.ini.'\n'The file exceeds the allowed max file size.': 'O tamanho do arquivo é maior do que permitido.'\nOptional: Opcional\n'Input File': 'Arquivo de entrada'\n'Import XML': 'Importar XML'\n'File is not a valid XML file.': 'O arquivo não é um arquivo XML válido.'\n'File does not exist.': 'O arquivo não existe.'\n'File could not be uploaded.': 'Não foi possível fazer o upload do arquivo.'\n'File could not be read.': 'O arquivo não pôde ser lido.'\n'Error List': 'Lista de erros'\n'Bad format in XML file.': 'Formato ruim no arquivo XML.'\n'Article could not be created.': 'O artigo não pôde ser criado'\n'---Select article type---': '--Seleciona o tipo de artigo--'\n'$1 articles successfully imported.': '$1 artigo(s) importados com sucesso.'\nSaved: Salvo\n'Save All': 'Salvar tudo'\n'Online Server: On': 'Servidor online: Ligado'\n'Online Server: Off': 'Servidor online: Desligado'\nDownload: Baixar\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': 'Você não pode ter dois artigos com mesmo nome na mesma seção. O nome do artigo que digitou já está em uso por artigo $1.'\n'Visible to non-subscribers': 'Visível para não-assinantes'\n'The article could not be published.': 'O artigo não pôde ser publicado.'\n'Scheduled action deleted.': 'Ação agendada foi apagada.'\n'Scheduled action added.': 'Ação agendada foi adicionada.'\n'Article(s) unlocked.': 'Artigo(s) destrancado(s)'\n'Article(s) duplicated.': 'Artigo(s) duplicados.'\n'Article(s) deleted.': 'Artigo(s) apagados.'\n'Article status set to $1': 'Status do artigo definido como $1'\n'Article unlocked.': 'Artigo destrancado.'\n'Article translation created.': 'Tradução do artigo foi criada.'\n'Article order changed.': 'Ordem de artigos foi modificada.'\n'Article moved.': 'Artigo foi movido.'\n'Article deleted.': 'Artigo removido.'\n'Article created.': 'Artigo criado.'\n'$1 toggled.': '$1 alternado.'\n'Total:': 'Total:'\n'Show Comments': 'Mostrar comentários'\nLocked: Trancado\n'Invalid type: $1': 'Tipo inválido: $1'\n'Hide Comments': 'Esconder comentários'\nEnabled: Ativado\nDisabled: Desativado\nComments: Comentários\n'The article has already been translated into $1.': 'Este artigo ja foi traduzido para $1'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'Tem de escolher a publicação, numero e secção para este artigo antes de agendar a sua publicação. Vá ao menu $1 e escolha a opção $2 para fazê-lo'\n'You do not have the right to translate articles.': 'Não tem permissão para traduzir artigos.'\n'You do not have the right to publish articles.': 'Não tem permissão para publicar artigos'\n'You do not have the right to move articles.': 'Não tem permissão para mover artigos.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'Não pode mover os artigos assinalados a vermelho porque a edição de destino não se encontra traduzido para o idioma apropriado.'\n'Publish?': 'Publicar?'\n'Publish articles': 'Publicar artigos'\n'Publish article': 'Publicar artigo'\n'Move?': 'Mover?'\n'Move articles': 'Mover artigos'\n'Move article': 'Mover artigo'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'Tem de criar uma edição para o idioma escolhido, mas não possui permissões para tal.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'Tem de criar um secção para o idioma escolhido, mas não possui permissões para tal.'\n'to section': 'para secção'\n'You must choose a language': 'Tem de escolher um idioma'\n'Unable to create the section for translation $1.': 'Não é possivél criar a secção para traduzir $1.'\n'Unable to create the issue for translation $1.': 'Não é possivél criar a edição para traduzir $1.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'Os artigos seguintes são novos; não é possivél agendar para publicação automática.'\n'Section URL Name': 'Nome URL da secção'\n'Section Name': 'Nome da secção'\n'Publish Schedule': 'Agendamento de publicação'\n'No action specified': 'Sem acção especificada'\n'New section name': 'Novo nome de seção'\n'New section URL name': 'Novo nome de URL de seção'\n'New issue name': 'Novo nome de edição'\n'New issue URL name': 'Novo nome URL de edição'\n'New article name': 'Novo nome de artigo'\n'Issue URL Name': 'Nome URL da edição'\n'Issue Name': 'Nome da edição'\n'Duplicate?': 'Duplicar?'\n'Duplicate articles': 'Duplicar artigos'\n'Article name ($1)': 'Nome do artigo ($1)'\n'Article List': 'Lista de artigos'\n'Are you sure you want to remove the topic $1 from the article?': 'Tem certeza que quer remover o tópico $1 do artigo?'\n'Are you sure you want to remove the file $1 from the article?': 'Tem certeza que quer remover o arquivo $1 do artigo?'\n'Are you sure you want to remove the event scheduled on $1?': 'Tem certeza que quer remover o evento agendado para $1?'\n'Are you sure you want to delete this article?': 'Tem certeza que quer remover este artigo?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'Tem que existir uma edição para o idioma selecionado. Introduza o nome da edição e respectivo nome URL.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'Tem de existir uma secção para o idioma selecionado. Introduza o nome da secção e respectivo nome URL.'\n'Article Type': 'Tipo de artigo'\n'Show article on front page': 'Mostrar artigo na página principal'\n'Show article on section page': 'Mostrar artigo na página de seção'\n'Translate article': 'Traduzir artigo'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'Não tem permissões para alterar o Estado do Artigo. Apenas pode alterar os seus artigos, mas após um artigo ser submetido apenas poderá ser alterado por Utilizadores autorizados pelo Sistema.'\n'Duplicate article': 'Duplicar Artigo'\n'The destination section is the same as the source section.': 'Secção destino idêntica à de origem.'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'Este artigo é novo; não é possivél agendar publicação automática.'\n'No article types were defined. You must create an article type first.': 'Não existem tipos de artigos definidos. Tem de criar tipo de artigo antes.'\n'Edit article types': 'Editar tipos de artigos'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Não é possivél gravar artigo. Este foi bloqueado por $1 à $2 horas e $3 minutos.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Não tem permissões para alterar o estado do artigo. Uma vez submetido apenas os utilizadores autorizados podem alterar o seu estado.'\n'You do not have the right to delete articles.': 'Não tem permissões para eliminar artigos. '\n'You must select an article type.': 'Tem de escolher o tipo de artigo.'\n'Are you sure you want to remove the image $1 from the article?': 'Confirma a eliminação da imagem $1 do artigo?'\n'There was an error reading request parameters.': 'Ocorreu um erro na leitura do parametro solicitado.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'Este artigo não pode ser prévisualizado, verifique se existe um modelo atribuido à visualização de artigos.'\n'No such article.': 'Artigo Desconhecido.'\n'No such section.': 'Secção Desconhecida.'\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.ro.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: null\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: Fișiere\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': 'Ataşează subiectul la articol'\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': 'Ultima modificare'\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': 'Trebuie să selectezi un fişier pentru a-l încărca în sistem.'\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': 'Importă XML'\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': 'Salvează totul'\n'Online Server: On': null\n'Online Server: Off': null\nDownload: 'Salvează local'\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': 'Nu pot exista două articole cu acelaşi nume în aceeaşi secţiune. Numele articolului pe care l-ai specificat este deja folosit de articolul $1.'\n'Visible to non-subscribers': 'Vizibil pentru cei care nu sunt abonaţi.'\n'The article could not be published.': 'Articolul nu a putut fi publicat.'\n'Scheduled action deleted.': 'Acţiunea programată a fost ştearsă.'\n'Scheduled action added.': 'Acţiunea programată a fost adăugată.'\n'Article(s) unlocked.': 'Articol(e) blocat(e).'\n'Article(s) duplicated.': 'Articol(e) duplicat(e).'\n'Article(s) deleted.': 'Articol(e) şters(e).'\n'Article status set to $1': 'Statusul articolului a fost stabilit ca $1'\n'Article unlocked.': 'Articol deblocat.'\n'Article translation created.': 'Traducerea articolului a fost creată.'\n'Article order changed.': 'Ordinea articolelor a fost schimbată.'\n'Article moved.': 'Articolul a fost mutat.'\n'Article deleted.': 'Articolul a fost şters.'\n'Article created.': 'Articolul a fost creat.'\n'$1 toggled.': '$1 schimbat.'\n'Total:': 'Total:'\n'Show Comments': 'Arată comentariile'\nLocked: Blocat\n'Invalid type: $1': 'Tip invalid: $1'\n'Hide Comments': 'Ascunde comentariile'\nEnabled: Activat\nDisabled: Dezactivat\nComments: Comentarii\n'The article has already been translated into $1.': 'Articolul a fost deja tradus în $1.'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'Trebuie să alegi publicaţia, ediţia şi secţiunea articolului înainte de a-l programa pentru publicare. Mergi la meniul $1 şi selectează $2 pentru a face acest lucru.'\n'You do not have the right to translate articles.': 'Nu ai dreptul să traduci articole.'\n'You do not have the right to publish articles.': 'Nu ai dreptul să publici articole.'\n'You do not have the right to move articles.': 'Nu ai dreptul să muţi articole.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'Nu poţi $1 articolele marcate cu roşu pentru că ediţia de destinaţie nu a fost tradusă în limba corespunzătoare.'\n'Publish?': 'Publici?'\n'Publish articles': 'Publică articolele'\n'Publish article': 'Publică articolul'\n'Move?': 'Muţi?'\n'Move articles': 'Mută articolele'\n'Move article': 'Mută articolul'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'Trebuie creată o ediţie pentru limba selectată dar nu ai dreptul să creezi o ediţie.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'Trebuie creată o secţiune pentru limba selectată dar nu ai dreptul să creezi o secţiune.'\n'to section': 'către secţiunea'\n'You must choose a language': 'Trebuie să alegi o limbă.'\n'Unable to create the section for translation $1.': 'Secţiunea pentru traducerea $1 nu a putut fi creată.'\n'Unable to create the issue for translation $1.': 'Ediţia pentru traducerea $1 nu a putut fi creată.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'Următoarele articole sunt noi; ele nu pot fi programate pentru publicare automată.'\n'Section URL Name': 'Denumirea adresei de Internet a secţiunii'\n'Section Name': 'Denumirea secţiunii'\n'Publish Schedule': 'Programarea publicării'\n'No action specified': 'Nu a fost precizată nici o acţiune'\n'New section name': 'Denumirea secţiunii noi'\n'New section URL name': 'Denumirea adresei de Internet a secţiunii noi'\n'New issue name': 'Denumirea ediţiei noi'\n'New issue URL name': 'Denumirea adresei de Internet a ediţiei noi'\n'New article name': 'Denumirea articolului nou'\n'Issue URL Name': 'Denumirea adresei de Internet a ediţiei'\n'Issue Name': 'Denumirea ediţiei'\n'Duplicate?': 'Duplici?'\n'Duplicate articles': 'Duplică articolele '\n'Article name ($1)': 'Denumirea articolului ($1)'\n'Article List': 'Lista articolelor'\n'Are you sure you want to remove the topic $1 from the article?': 'Eşti sigur că vrei să ştergi subiectul $1 de la articol?'\n'Are you sure you want to remove the file $1 from the article?': 'Eşti sigur că vrei să ştergi fişierul $1 de la articol?'\n'Are you sure you want to remove the event scheduled on $1?': 'Eşti sigur că vrei să ştergi evenimentul programat la $1?'\n'Are you sure you want to delete this article?': 'Eşti sigur că vrei să ştergi acest articol?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'Trebuie creată o ediţie pentru limba selectată. Introdu denumirea ediţiei şi denumirea adresei de Internet.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'Trebuie creată o secţiune pentru limba selectată. Introdu denumirea secţiunii şi'\n'Article Type': 'Tipul articolului'\n'Show article on front page': 'Afişează articolul pe prima pagină'\n'Show article on section page': 'Afişează articolul pe pagina secţiunii'\n'Translate article': 'Traducere articol'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'Nu aveţi dreptul să modificaţi articolul. Puteţi să editaţi numai articolele dumneavoastră. Odată propus un articol poate fi modificat numai de utilizatori autorizaţi.'\n'Duplicate article': 'Duplică articolul'\n'The destination section is the same as the source section.': 'Secţiunea destinaţie este aceeaşi cu cea sursă.'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'Articolul este nou; nu este posibilă programarea lui pentru publicare automată.'\n'No article types were defined. You must create an article type first.': 'Nu au fost definite tipuri de articole. Trebuie să creezi mai întâi un tip de articol.'\n'Edit article types': 'Modifică tipurile articolelor'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Articolul nu a putut fi salvat. A fost securizat de $1, în urmă cu $2 ore şi $3 minute.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Nu ai dreptul să schimbi status-ul articolului. O dată trimis spre publicare, un articol nu poate fi modificat decât de utilizatorii autorizaţi.'\n'You do not have the right to delete articles.': 'Nu ai dreptul să ştergi articole.'\n'You must select an article type.': 'Trebuie să selectezi un tip de articol.'\n'Are you sure you want to remove the image $1 from the article?': 'Eşti sigur că vrei să ştergi imaginea $1 de la articol?'\n'There was an error reading request parameters.': 'O eroare s-a produs în timpul interpretării parametrilor cererii.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'Acest articol nu poate fi previzualizat. Asigură-te că este selectat şablonul articolului.'\n'No such article.': 'Articolul nu există'\n'No such section.': 'Secţiunea nu există.'\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.ru.yml",
    "content": "'Edit metadata': 'изменить метаданные'\nRating: Рейтинг\n'Enable Rating': 'Активировать рейтинг'\n'Blog management': 'Управление блогами'\n'View article': 'Просмотр статьи'\n'Select a list': 'Выбрать список'\n'Remove list': 'Удалить список'\n'Please select a list': 'Пожалуйста, выберите список'\nPlaylist: Плейлист\n'List updated.': 'Обновленный список.'\n'List saved': 'Сохраненный список.'\n'List Name': 'Название списка'\n'List ID': 'ID списка'\n'Item already exists in the list': 'Этот пункт уже есть в списке'\n'Featured Articles': 'Избранные статьи'\n'Featured Article Lists': 'Списки Избранных статей'\n'Featured Article List': 'Список Избранных статей'\n'Duplicate list': 'Дублировать список'\n'Duplicate article entry found': 'Дублировать найденную статью'\n'Drag here to add to list': 'Перетянуть в список'\n'Could not save the list': 'Не удалось сохранить список'\n'Available Articles': 'Доступные статьи'\n'Are you sure you want to delete this list?': 'Вы уверены, что хотите удалить этот список?'\n'Add to list': 'Добавить в список'\n'Add list': 'Добавить список'\n'Multi date events': 'Календарь событий'\nSlideshows: Слайдшоу\n'Place images': 'Поместить изображения'\n'Youre not allowed to edit article.': 'У вас нет прав редактирования статьи.'\nWebcode: Web-код\nUnapproved: 'Не утверждено'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Предварительный просмотр выпуска невозможен. Пожалуйста, убедитесь, что для издания существует нужный шаблон.'\n'The article could not be submitted.': 'Невозможно отправить статью.'\n'Submit articles': 'Отправить статьи'\n'Submit article': 'Отправить статью'\n'Related Articles': 'Связанные статьи'\n'Pending articles': 'Неоконченные статьи'\n'Pending Articles': 'Неоконченные статьи'\n'Context Box updated': 'Обновлен контекстный блок'\nOn: Вкл.\nOff: Выкл.\n'You do not have the right to moderate comments.': 'У вас нет прав модерации комментариев.'\n'You can not schedule opposing events at the same time': 'Вы не можете запланировать противоположные мероприятия одновременно'\n'Unable to reach Newscoop. Please check your internet connection.': 'Невозможно связаться с Newscoop. Пожалуйста, проверьте ваше интернет-соединение.'\nTitle: Заголовок\n'There already is an article with the same name. Please change the name and try again.': 'Статья с таким заголовком уже существует. Пожалуйста, измените название и сделайте еще одну попытку. '\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': 'Для вашего сведения: все запланированные действия для этой статьи будут удалены, как только для статьи будет назначен статус Новая. Пожалуйста, подтвердите изменение статуса. '\nGeolocation: Геопозиционирование\nNewscoop: Newscoop\n'Overwrite articles with matching names': 'Переписать статьи с соответствующими именами'\n'Article <i>$1</i> already exists, and was not overwritten.<br />': 'Статья <i>$1</i> уже существует и не была перезаписана. <br />'\nFiles: Файлы\n'Select section:': 'Выберите раздел'\n'Add another author': 'Добавить автора'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Эта статья была заблокирована $1 ($2) $3 минут назад.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Эта статья была заблокирована $1 ($2) $3 часов и $4 минут назад.'\n'Switches saved.': 'Статус переключателей сохранен.'\n'Keywords saved.': 'Ключевые слова сохранены'\n'Comment settings': 'Настройки комментирования'\nAuthors: Авторы\n'Attach Topic To Article': 'Прикрепить тему к статье'\n'Article saved.': 'Содержимое статьи сохранено.'\n'Article is locked': 'Статья заблокирована'\n'Actions updated.': 'Действие обновлено.'\n'Your work has not been saved. Do you want to continue and lose your changes?': 'Ваши действия на сайте не были сохранены. Хотите ли Вы продолжить и потерять сделанные изменения?'\nSwitches: Переключатели\n'No subtopics available': 'Нет доступных подтем для использования'\n'Newscoop Subhead': 'Подзаголовок Newscoop'\nMedia: Медиа\n'Last modified': 'Последние изменения'\n'Keywords &amp; Topics': 'Ключевые слова & Темы'\nInfo: Информация\n'Go to live article': 'Перейти к активной статье'\nCreated: Создана\n'Are you sure you want to remove the map from the article?': 'Вы уверены, что хотите удалить эту карту из статьи?'\n'Scheduled action added': 'Запланированное действие добавлено'\n'Content edited': 'Содержимое обновлено'\n'You must select an article language.': 'Вы должны выбрать язык статьи.'\n'You must select a publication.': 'Вы должны выбрать издание.'\n'You must select a file to upload.': 'Вы должны выбрать файл для загрузки.'\n'You must select a XML input file.': 'Вы должны выбрать входной XML-файл'\n'You do not have the right to import XML archives.': 'У Вас нет прав доступа для импортирования XML архивов.'\n'There was a problem uploading the file.': 'Проблема загрузки файла.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Загруженный файл сохранен на сервер частично. Это в связано с тем, что максимально допустимое время загрузки файла превосходит время, необходимое для загрузки этого файла. Максимальное время загрузки определено в файле  php.ini'\n'The file exceeds the allowed max file size.': 'Рамер этого файла превосходит допустимый.'\nOptional: Необязательное\n'Input File': 'Входной файл'\n'Import XML': 'Импорт XML'\n'File is not a valid XML file.': 'Этот файл не является XML-файлом.'\n'File does not exist.': 'Такой файл не существует'\n'File could not be uploaded.': 'Невозможно загрузить данный файл.'\n'File could not be read.': 'Невозможно прочитать данный файл'\n'Error List': 'Список ошибок'\n'Bad format in XML file.': 'Неправильный формат XML-файла'\n'Article could not be created.': 'Статья не может быть создания.'\n'---Select article type---': '---Выберите тип статьи---'\n'$1 articles successfully imported.': '$1 статьи успешно импортированы.'\nSaved: Сохранено\n'Save All': 'Сохранить все'\n'Online Server: On': 'Сервер он-лайн: включен'\n'Online Server: Off': 'Сервер он-лайн: выключен'\nDownload: Загрузить\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': 'Вы не можете иметь две статьи в одной рубрике с одинаковым названием. Указанное название уже используется статьей $1.'\n'Visible to non-subscribers': 'Видно не только подписчикам'\n'The article could not be published.': 'Статья не может быть опубликована.'\n'Scheduled action deleted.': 'Запланированное действие отменено.'\n'Scheduled action added.': 'Запланированное действие добавлено.'\n'Article(s) unlocked.': 'Статья(-и) разблокированы.'\n'Article(s) duplicated.': 'Статья(-и) продублированы.'\n'Article(s) deleted.': 'Статья(-и) удалены.'\n'Article status set to $1': 'Статус статьи установлен в $1'\n'Article unlocked.': 'Статья разблокирована.'\n'Article translation created.': 'Переводы статьи созданы.'\n'Article order changed.': 'Порядок статей изменен.'\n'Article moved.': 'Статья перемещена.'\n'Article deleted.': 'Статья удалена.'\n'Article created.': 'Статья создана.'\n'$1 toggled.': '$1 изменено.'\n'Total:': 'Всего:'\n'Show Comments': 'Показать комментарии'\nLocked: Заблокировано\n'Invalid type: $1': 'Неправильный тип: $1'\n'Hide Comments': 'Спрятать комментарии'\nEnabled: Разрешено\nDisabled: Запрещено\nComments: Комментарии\n'The article has already been translated into $1.': 'Статья уже была переведена на $1.'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'Прежде, чем запланировать публикацию статьи, вы должны назначить для нее издание, номер и рубрику. Для этого перейдите к $1 меню и выберите $2.'\n'You do not have the right to translate articles.': 'Вы не имеете прав доступа для перевода статей.'\n'You do not have the right to publish articles.': 'Вы не имеете прав доступа для публикации статей.'\n'You do not have the right to move articles.': 'Вы не имеете прав доступа для переноса статей.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'Вы не можете $1 статьи, помеченные красным, поскольку выпуск назначения не переведен на соответсвующий язык'\n'Publish?': 'Опубликовать?'\n'Publish articles': 'Опубликовать статьи'\n'Publish article': 'Опубликовать статью'\n'Move?': 'Перенести?'\n'Move articles': 'Перенести статьи'\n'Move article': 'Перенести статью'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'Выпуск должен быть создан для выбранного языка, но вы не имеете права создания выпуска.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'Должна быть создана рубрика для выбранного языка, но вы не имеете права создания рубрики.'\n'to section': 'к рубрике'\n'You must choose a language': 'Вы должны выбрать язык'\n'Unable to create the section for translation $1.': 'Невозможно создать рубрику для перевода $1.'\n'Unable to create the issue for translation $1.': 'Невозможно создать выпуск для перевода $1.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'Данные статьи новые; невозможно назначить их для автоматической публикации'\n'Section URL Name': 'Название URL рубрики'\n'Section Name': 'Название рубрики'\n'Publish Schedule': 'Расписание публикаций'\n'No action specified': 'Действия не указаны'\n'New section name': 'Название новой рубрики'\n'New section URL name': 'Название URL новой рубрики'\n'New issue name': 'Название нового выпуска'\n'New issue URL name': 'Название URL нового выпуска'\n'New article name': 'Название новой статьи'\n'Issue URL Name': 'Название URL выпуска'\n'Issue Name': 'Название выпуска'\n'Duplicate?': 'Дублировать?'\n'Duplicate articles': 'Дублировать статью'\n'Article name ($1)': 'Заголовок статьи ($1)'\n'Article List': 'Список статей'\n'Are you sure you want to remove the topic $1 from the article?': 'Вы уверены, что хотите удалить тему $1 из статьи?'\n'Are you sure you want to remove the file $1 from the article?': 'Вы уверены, что хотите удалить файл $1 из статьи?'\n'Are you sure you want to remove the event scheduled on $1?': 'Вы уверены, что хотите удалить событие, назначенное на $1?'\n'Are you sure you want to delete this article?': 'Вы уверены, что хотите удалить эту статью?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'Выпуск должен быть создан для выбранного языка. Пожалуйста, введите название выпуска и название URL.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'Рубрика должна быть создана для выбранного языка. Пожалуйста, введите название рубрики и название URL.'\n'Article Type': 'Тип статьи'\n'Show article on front page': 'Показать статью на титульной странице'\n'Show article on section page': 'Показать статью на странице рубрики'\n'Translate article': 'Перевести статью'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'Вы не имеете прав доступа для изменения этой статьи. Вы можете только редактировать свои собственные статьи и, будучи отправленной, статья может быть изменена только уполномоченными пользователями.'\n'Duplicate article': 'Дублировать статью'\n'The destination section is the same as the source section.': 'Рубрика назначения та же, что и рубрика источника.'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'Статья новая, ее невозможно назначить для автоматической публикации.'\n'No article types were defined. You must create an article type first.': 'Типы статей не определены. Вы сначала должны создать типы статей.'\n'Edit article types': 'Редактировать типы статей'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Не удалось сохранить статью. Она заблокирована пользователем $1 $2 часа и $3 минут назад.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Вы не имеете прав доступа для изменения состояние этой статьи. Будучи отправленной статья может быть изменена только уполномоченным пользователем.'\n'You do not have the right to delete articles.': 'Вы не имеете прав доступа для удаления статьи.'\n'You must select an article type.': 'Вы должны выбрать тип статьи.'\n'Are you sure you want to remove the image $1 from the article?': 'Вы уверены, что хотите удалить изображение $1 из статьи?'\n'There was an error reading request parameters.': 'Ошибка чтения параметров запроса.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'Невозможен предварительный просмотр статьи. Убедитесь, что выбран шаблон статьи.'\n'No such article.': 'Нет такой статьи.'\n'No such section.': 'Нет такой рубрики.'\nCharacters: Знаки\nSnippet: Фрагмент\n'This list is already in a different state than the one in which it was loaded.': 'Список на данный момент отличается от загруженного изначально. '\n'List name should not be longer than 40 chars': 'Название списка не должно содержать более 40 знаков'\n'Not valid number': 'Недействующий номер'\n'List limit': 'Ограничение списка'\n'The last article of this list has been removed.': 'Последняя статья списка удалена.'\nRevert: Восстановить\n'Could not automatically refresh the list': 'Автоматическое обновление списка не удалось'\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: 'Вы действительно хотите изменить название списка? Название может использоваться в шаблонах Newscoop для воспроизведения списка во внешнем интерфейсе. Если не уверены, проконсультируйтесь с администратором сайта.'\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: 'Редактировать метаданные изображения'\n            save: Сохранить\n            form:\n                use: Использовать\n                number: Номер\n                caption: Подпись\n                status_approved: Утверждено\n                status_unapproved: 'Не утверждено'\n                status: Состояние\n                description: Описание\n                photographer: Фотограф\n                photographer_url: 'URL фотографа'\n                place: Место\n                date: Дата\n                article_specific: null\n                global: Всеобщий\n                other_captions: 'Другие подписи'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.sh.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': 'Pogledaj tekst'\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': 'Lista izmenjena.'\n'List saved': 'Lista snimljena.'\n'List Name': 'Naziv liste.'\n'List ID': 'ID liste'\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': 'Nemate pravo uređivanja teksta'\nWebcode: 'Web kod'\nUnapproved: Neodobren\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Ovo izdanje ne može biti prikazano. Proverite da li publikacija ima dodeljenu temu.'\n'The article could not be submitted.': 'Tekst ne može biti predat.'\n'Submit articles': 'Predaj tekstove'\n'Submit article': 'Predaj tekst'\n'Related Articles': 'Vezani tekstovi'\n'Pending articles': 'Tekstovi na čekanju'\n'Pending Articles': 'Tekstovi na čekanju'\n'Context Box updated': 'Kontekst boks izmenjen'\nOn: Uključeno\nOff: Isključeno\n'You do not have the right to moderate comments.': 'Nemate pravo moderisanja komentara.'\n'You can not schedule opposing events at the same time': 'Ne možete zakazati suprotne radnje za isto vreme'\n'Unable to reach Newscoop. Please check your internet connection.': 'Newscoop nije dostupan. Proverite svoju interent vezu.'\nTitle: Naslov\n'There already is an article with the same name. Please change the name and try again.': 'Već postoji tekst sa istim naslovom. Promenite naziv teksta i pokušajte ponovo.'\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': 'Vodite računa o tome da će sve zakazane akcije za ovaj tekst biti obrisane kada mu promenite status u novi. Molimo potvrdite izmenu statusa.'\nGeolocation: Geolokacija\nNewscoop: Newscoop\n'Overwrite articles with matching names': 'Pretabaj tekstove sa poklapajućim imenima'\n'Article <i>$1</i> already exists, and was not overwritten.<br />': 'Tekst <i>$1</i> već postoji i nije pretaban.<br />'\nFiles: Fajlova\n'Select section:': 'Izaberi rubriku:'\n'Add another author': 'Dodaj autora'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Tekst je zaključan od strane $1 ($2) pre $3 minut(a).'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Tekst je zaključan od strane $1 ($2) pre $3 čas(ova) i $4 minut(a).'\n'Switches saved.': 'Svičevi snimljeni.'\n'Keywords saved.': 'Ključne reči snimljene'\n'Comment settings': 'Podešavanje komentara'\nAuthors: Autori\n'Attach Topic To Article': 'Dodaj temu tekstu'\n'Article saved.': 'Tekst snimljen'\n'Article is locked': 'Tekst je zaključan'\n'Actions updated.': 'Akcije izmenjene'\n'Your work has not been saved. Do you want to continue and lose your changes?': 'Vaš rad nije snimljen. Da li želite da nastavite i izgubite izmene koje ste uneli?'\nSwitches: Svičevi\n'No subtopics available': 'Nisu dostupne pod-teme'\n'Newscoop Subhead': 'Newscoop podnaslov'\nMedia: Media\n'Last modified': Izmenjeno\n'Keywords &amp; Topics': 'Ključne reči i teme'\nInfo: Info\n'Go to live article': 'Idi na živi tekst '\nCreated: Napravljeno\n'Are you sure you want to remove the map from the article?': 'Da li ste sigurni da želite da uklonite mapu iz teksta?'\n'Scheduled action added': 'Akcija je zakazana'\n'Content edited': 'Sadržaj je uređen'\n'You must select an article language.': 'Morate izabrati jezik teksta.'\n'You must select a publication.': 'Morate izabrati publikaciju.'\n'You must select a file to upload.': 'Morate izabrati fajl za aploud.'\n'You must select a XML input file.': 'Morate izabrati XML ulazni fajl.'\n'You do not have the right to import XML archives.': 'Nemate pravo uvoza XML arhiva.'\n'There was a problem uploading the file.': 'došlo je do problema pri uploadovanju fajla.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Fajl je delimično uploadovan. Ovo se obično dešava kad je maks. vreme za upload kratko u odnosu na veličinu fajla. Maksimalna veličina se podešava u php.ini'\n'The file exceeds the allowed max file size.': 'fajl prelazi maksimalno dozvoljenu veličinu.'\nOptional: Opciono\n'Input File': 'Fajl za unos'\n'Import XML': 'Uvezi XML'\n'File is not a valid XML file.': 'Fajl nije validan XML fajl.'\n'File does not exist.': 'Fajl ne postoji.'\n'File could not be uploaded.': 'Fajl ne može biti aploudovan.'\n'File could not be read.': 'Fajl ne može da se čita.'\n'Error List': 'Lista grešaka'\n'Bad format in XML file.': 'Loš format u XML fajlu.'\n'Article could not be created.': 'Tekst ne može biti kreiran.'\n'---Select article type---': '---Izaberi tip teksta---'\n'$1 articles successfully imported.': '$1 tekstova uspešno uvezeno.'\nSaved: Sačuvano\n'Save All': 'Sačuvaj sve'\n'Online Server: On': 'Online Server: On'\n'Online Server: Off': 'Online Server: Off'\nDownload: Preuzmi\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': 'Ne možete imati dva članka u istoj rubrici sa istim imenom. Naslov članka koji ste uneli se već koristi u članku $1.'\n'Visible to non-subscribers': 'Vidljivo ne-pretplatnicima'\n'The article could not be published.': 'Članak ne može biti objavljen.'\n'Scheduled action deleted.': 'Obrisana je zakazana akcija.'\n'Scheduled action added.': 'dodata je zakazana akcija.'\n'Article(s) unlocked.': 'Članak otključan.'\n'Article(s) duplicated.': 'Tekst(ovi) dupliran(i)'\n'Article(s) deleted.': 'Tekst(ovi) obrisan(i).'\n'Article status set to $1': 'Status članka je podešen u $1'\n'Article unlocked.': 'Članak je otključan.'\n'Article translation created.': 'Napravljen je prevod članka.'\n'Article order changed.': 'Raspored članaka je izmenjen.'\n'Article moved.': 'Članak je premešten.'\n'Article deleted.': 'Tekst je obrisan.'\n'Article created.': 'Tekst je napravljen.'\n'$1 toggled.': '$1 izmenjeno u suprotno.'\n'Total:': 'Ukupno:'\n'Show Comments': 'Prikaži komentare'\nLocked: Zaključan\n'Invalid type: $1': 'Pogrešan tip: $1'\n'Hide Comments': 'Sakri komentare'\nEnabled: Omogućeni\nDisabled: Onemogućeni\nComments: Komentari\n'The article has already been translated into $1.': 'Tekst je već preveden na $1.'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'Moraš odrediti publikaciju, izdanje i rubriku za ovaj tekst pre nego što mu zakažete automatsko objavljivanje. Idite u meni $1 i izaberi $2'\n'You do not have the right to translate articles.': 'Nemate pravo da prevodite tekstove.'\n'You do not have the right to publish articles.': 'Nemate pravo da objavljujete tekstove.'\n'You do not have the right to move articles.': 'Nemate pravo da premeštate tekstove.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'Ne možete vršiti radnju $1 na tekstovima naglašenim crvenom bojom jer ciljno izdanje nije prevedeno na odgovarajući jezik.'\n'Publish?': 'Objavi?'\n'Publish articles': 'Objavi tekstove'\n'Publish article': 'Objavi tekst'\n'Move?': 'Premesti?'\n'Move articles': 'Premesti tekstove'\n'Move article': 'Premesti tekst'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'Mora biti kreirano izdanje za odabrani jezik, ali vi nemate pravo da kreirate izdanje.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'Mora biti kreirana rubrika za odabrani jezik, ali vi nemate pravo da kreirate rubriku.'\n'to section': 'u rubriku'\n'You must choose a language': 'Morate izabrati jezik'\n'Unable to create the section for translation $1.': 'Ne može biti kreirana rubrika za prevod  $1.'\n'Unable to create the issue for translation $1.': 'Ne može biti kreirano izdanje za prevod  $1.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'Sledeći tekstovi su novi; nemoguće je predvideti ih za automatsko objavljivanje'\n'Section URL Name': 'URL ime rubrike'\n'Section Name': 'Ime rubrike'\n'Publish Schedule': 'Raspored objavljivanja'\n'No action specified': 'Nije predviđena nikakva radnja'\n'New section name': 'Novo ime rubrike'\n'New section URL name': 'Novo URL ime rubrike'\n'New issue name': 'novo ime izdanja'\n'New issue URL name': 'Novo URL ime izdanja'\n'New article name': 'Novo ime teksta'\n'Issue URL Name': 'URL ime izdanja'\n'Issue Name': 'Ime izdanja'\n'Duplicate?': 'Dupliraj?'\n'Duplicate articles': 'dupliraj tekstove'\n'Article name ($1)': 'Ime teksta ($1)'\n'Article List': 'Lista tekstova'\n'Are you sure you want to remove the topic $1 from the article?': 'Da li ste sigurni da iz teksta želite da uklonite temu $1?'\n'Are you sure you want to remove the file $1 from the article?': 'Da li ste sigurni da iz teksta želite da uklonite fajl $1?'\n'Are you sure you want to remove the event scheduled on $1?': 'Da li ste sigurni da želite da uklonite zakazanu akciju za $1?'\n'Are you sure you want to delete this article?': 'Da li ste sigurni da želite da obrišete tekst?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'Mora biti kreirano izdanje za odabrani jezik. Unesite ime izdanja i URL ime.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'Mora biti kreirana rubrika za odabrani jezik. Unesite ime rubrike i URL ime.'\n'Article Type': 'Tip teksta'\n'Show article on front page': 'Prikaži članak na prvoj strani'\n'Show article on section page': 'Prikaži članak na strani rubrike'\n'Translate article': 'Prevedi tekst'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'Nemate pravo da menjate tekst. Možete pregledati jedino sopstvene tekstove, a jednom predati tekst može biti menjan samo od strane ovlašćenih korisnika'\n'Duplicate article': 'Dupliraj tekst'\n'The destination section is the same as the source section.': 'Ciljna rubrika je ista kao matična.'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'Tekst ima status novi; nemoguće je zakazati akciju automatskog objavljivanja.'\n'No article types were defined. You must create an article type first.': 'Nema definisanih tipova tekstova. Morate kreirati neki.'\n'Edit article types': 'Uredi tipove tekstova'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Tekst ne može biti snimljen. Zaključan je od strane $1 pre $2časova i $3 minuta.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Nemate pravo da menajte status teksta. Predatom tekstu status može promeniti samo ovlašćeni korisnik.'\n'You do not have the right to delete articles.': 'Nemate pravo da brišete tekstove.'\n'You must select an article type.': 'Morate izabrati tip teksta.'\n'Are you sure you want to remove the image $1 from the article?': 'Da li ste sigurni da želite da uklonite sliku $1 iz članka?'\n'There was an error reading request parameters.': 'Greška pri čitanju traženih parametara.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'Tekst ne može biti pregledan. Proverite da li je odabran šablon za za prikaz teksta.'\n'No such article.': 'Nema takvog teksta.'\n'No such section.': 'Nema te rubrike.'\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: Snimi\n            form:\n                use: null\n                number: Broj\n                caption: null\n                status_approved: Odobren\n                status_unapproved: Neodobren\n                status: Status\n                description: Opis\n                photographer: Fotograf\n                photographer_url: null\n                place: Mesto\n                date: Datum\n                article_specific: null\n                global: Globalno\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.sq.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: null\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: null\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': null\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': null\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: null\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': null\n'Article created.': null\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: null\n'The article has already been translated into $1.': null\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': null\n'You do not have the right to translate articles.': null\n'You do not have the right to publish articles.': null\n'You do not have the right to move articles.': null\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': null\n'Publish?': null\n'Publish articles': null\n'Publish article': null\n'Move?': null\n'Move articles': null\n'Move article': null\n'An issue must be created for the selected language but you do not have the right to create an issue.': null\n'A section must be created for the selected language but you do not have the right to create a section.': null\n'to section': null\n'You must choose a language': null\n'Unable to create the section for translation $1.': null\n'Unable to create the issue for translation $1.': null\n'The following articles are new; it is not possible to schedule them for automatic publishing': null\n'Section URL Name': null\n'Section Name': null\n'Publish Schedule': null\n'No action specified': null\n'New section name': null\n'New section URL name': null\n'New issue name': null\n'New issue URL name': null\n'New article name': null\n'Issue URL Name': null\n'Issue Name': null\n'Duplicate?': null\n'Duplicate articles': null\n'Article name ($1)': null\n'Article List': null\n'Are you sure you want to remove the topic $1 from the article?': null\n'Are you sure you want to remove the file $1 from the article?': null\n'Are you sure you want to remove the event scheduled on $1?': null\n'Are you sure you want to delete this article?': null\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': null\n'A section must be created for the selected language.  Please enter the section name and URL name.': null\n'Article Type': null\n'Show article on front page': null\n'Show article on section page': null\n'Translate article': null\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': null\n'Duplicate article': null\n'The destination section is the same as the source section.': null\n'The article is new; it is not possible to schedule it for automatic publishing.': null\n'No article types were defined. You must create an article type first.': null\n'Edit article types': null\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'You do not have the right to delete articles.': null\n'You must select an article type.': null\n'Are you sure you want to remove the image $1 from the article?': null\n'There was an error reading request parameters.': null\n'This article cannot be previewed. Please make sure it has the article template selected.': null\n'No such article.': null\n'No such section.': null\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.sr.yml",
    "content": "'Edit metadata': 'Уреди мета-податке'\nRating: Рејтинг\n'Enable Rating': 'Активирај рејтинг'\n'Blog management': 'Подешавање блога'\n'View article': 'Погледај текст'\n'Select a list': 'Изабери листу'\n'Remove list': 'Уклони листу'\n'Please select a list': 'Изабери листу'\nPlaylist: 'Плејлиста текстова'\n'List updated.': 'Листа измењена'\n'List saved': 'Листа сачувана'\n'List Name': 'Назив листе'\n'List ID': 'Број листе'\n'Item already exists in the list': 'Изабрана ставка већ постоји у листи'\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': 'Дуплирај листу'\n'Duplicate article entry found': 'Дуплирај нађени текст'\n'Drag here to add to list': 'Превуци да додаш у листу'\n'Could not save the list': 'Није могуће сачувати промене за листу'\n'Available Articles': 'Понуђени текстови'\n'Are you sure you want to delete this list?': 'Да ли сте сигурни да желите да обришете листу?'\n'Add to list': 'Додај у листу'\n'Add list': 'Додај листу'\n'Multi date events': 'Догађаји са више датума'\nSlideshows: 'Галерија слика'\n'Place images': 'Додај слике'\n'Youre not allowed to edit article.': 'Немате право уређивања текста'\nWebcode: 'Веб код'\nUnapproved: Неодобрен\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Ово издање не може бити приказано. Проверите да ли публикација има додељену тему.'\n'The article could not be submitted.': 'Текст не може бити предат.'\n'Submit articles': 'Предај текстове.'\n'Submit article': 'Предај текст'\n'Related Articles': 'Везани текстови'\n'Pending articles': 'Текстови на чекању'\n'Pending Articles': 'Текстови на чекању'\n'Context Box updated': 'Контекст бокс измењен'\nOn: Укључено\nOff: Искључено\n'You do not have the right to moderate comments.': 'Немате право модерисања коментара'\n'You can not schedule opposing events at the same time': 'Не можете заказати супротне радње за исто време'\n'Unable to reach Newscoop. Please check your internet connection.': 'Newscoop није доступан. Проверите своју интернет везу.'\nTitle: Наслов\n'There already is an article with the same name. Please change the name and try again.': 'Већ постоји текст са истим насловом. Промените назив текста и покушајте поново.'\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': 'Водите рачуна о томе да ће све заказане акције за овај текст бити обрисане када му промените статус у нови. Молимо потврдите измену статуса.'\nGeolocation: Геолокација\nNewscoop: Newscoop\n'Overwrite articles with matching names': 'Претабај текстове са поклапајућим именима'\n'Article <i>$1</i> already exists, and was not overwritten.<br />': 'Tekst <i>$1</i> већ постоји и није претабан.<br />'\nFiles: Фајлова\n'Select section:': 'Изабери рубрику:'\n'Add another author': 'Додај аутора'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Текст је закључан од стране $1 ($2) пре $3 минут(а)'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Текст је закључан од стране $1 ($2) пре $3 час(ова) и $4 минут(а)'\n'Switches saved.': 'Свичеви сниљени'\n'Keywords saved.': 'Кључне речи снимљене'\n'Comment settings': 'Подешавања коментара'\nAuthors: Аутори\n'Attach Topic To Article': 'Додај тему тексту'\n'Article saved.': 'Текст снимљен'\n'Article is locked': 'Текст је закључан'\n'Actions updated.': 'Акције измењене'\n'Your work has not been saved. Do you want to continue and lose your changes?': 'Ваш рад није снимљен. Да ли желите да наставите и изгубите измене које сте унели?'\nSwitches: Свичеви\n'No subtopics available': 'Нису доступне под-теме'\n'Newscoop Subhead': 'Newscoop поднаслов'\nMedia: Медиа\n'Last modified': Измењено\n'Keywords &amp; Topics': 'Кључне речи и теме'\nInfo: Инфо\n'Go to live article': 'Иди на живи текст'\nCreated: Направљено\n'Are you sure you want to remove the map from the article?': 'Да ли сте сигурни да желите да уклоните мапу из текста?'\n'Scheduled action added': 'Акција је заказана'\n'Content edited': 'Садржај је уређен'\n'You must select an article language.': 'Морате изабрати језик текста.'\n'You must select a publication.': 'Морате изабрати публикацију.'\n'You must select a file to upload.': 'Морате изабрати фајл за аплоуд.'\n'You must select a XML input file.': 'Морате изабрати XML улазни фајл.'\n'You do not have the right to import XML archives.': 'Немате право увоза XML архива.'\n'There was a problem uploading the file.': 'Дошло је до проблема при аплоуду фајла.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Фајл је делимично аплоудован. Ово се обично дешава када је макс. време за аплоуд кратко у односу на величину фајла. Максимална величина се подешава у php.ini'\n'The file exceeds the allowed max file size.': 'фајл прелази максимално дозвољену величину.'\nOptional: Опционо\n'Input File': 'Фајл за унос'\n'Import XML': 'Увези XML'\n'File is not a valid XML file.': 'Фајл није валидан XML фајл.'\n'File does not exist.': 'Фајл не постоји.'\n'File could not be uploaded.': 'Фајл не може бити аплоудован.'\n'File could not be read.': 'Фајл не може да се чита.'\n'Error List': 'Листа грешака'\n'Bad format in XML file.': 'Лош формат у XML фајлу.'\n'Article could not be created.': 'текст не може бити креиран.'\n'---Select article type---': '---Изабери тип текста---'\n'$1 articles successfully imported.': '$1 текстова успешно увезено'\nSaved: Сачувано\n'Save All': 'сачувај све'\n'Online Server: On': 'Онлајн сервер: укључен'\n'Online Server: Off': 'Онлајн сервер: искључен'\nDownload: Преузми\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': 'Не можете имати два текста у истој рубрици са истим именом. НАслов текста који сте унели се већ користи у тексту $1.'\n'Visible to non-subscribers': 'Видљиво не-претплатницима'\n'The article could not be published.': 'Текст не може бити објављен.'\n'Scheduled action deleted.': 'Обрисана је заказана акција.'\n'Scheduled action added.': 'додата заказана акција.'\n'Article(s) unlocked.': 'Текст откључан.'\n'Article(s) duplicated.': 'Текст(ови) дуплиран(и)'\n'Article(s) deleted.': 'Текст(ови) обрисан(и).'\n'Article status set to $1': 'Статус текста је подешен у $1'\n'Article unlocked.': 'Текст је откључан.'\n'Article translation created.': 'Направљен је превод текста.'\n'Article order changed.': 'Распоред текстова је измењен.'\n'Article moved.': 'Текст је премештен.'\n'Article deleted.': 'Текст је обрисан'\n'Article created.': 'Текст је направљен'\n'$1 toggled.': '$1 измењено у спротно.'\n'Total:': 'Укупно:'\n'Show Comments': 'Прикажи коментаре'\nLocked: Закључан\n'Invalid type: $1': 'Погрешан тип: $1'\n'Hide Comments': 'Сакриј коментаре'\nEnabled: Омогућени\nDisabled: Онемогућени\nComments: Коментари\n'The article has already been translated into $1.': 'Текст је већ преведен на $1.'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'Морате одредити публикацију, издање и рубрику за овај текст пре него што му закажете аутоматско објављивање, Идите у мени $1 и изаберите $2'\n'You do not have the right to translate articles.': 'Немате право да преводите текстове.'\n'You do not have the right to publish articles.': 'Немате право да објављујете текстове.'\n'You do not have the right to move articles.': 'Немате право да премештате текстове.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'Не можете вршити радњу $1 на текстовима наглашеним црвеном бојом јер циљно издање није преведено на одговарајући језик.'\n'Publish?': 'Објави?'\n'Publish articles': 'Објави текстове'\n'Publish article': 'Објави текст'\n'Move?': 'Премести?'\n'Move articles': 'Премести текстове'\n'Move article': 'Премести текст'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'Мора бити креирано издање за одабрани језик, али ви немате право да креирате издање.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'Мора бити креирана рубрика за одабрани језик, али ви немате право да креирате рубрику.'\n'to section': 'у рубрику'\n'You must choose a language': 'Морате изабрати језик'\n'Unable to create the section for translation $1.': 'Не може бити креирана рубрика за превод $1.'\n'Unable to create the issue for translation $1.': 'Не може бити креирано издање за превод $1.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'Следећи текстови су нови; немогуће је предвидети их за аутоматско објављивање'\n'Section URL Name': 'УРЛ име рубрике'\n'Section Name': 'Име рубрике'\n'Publish Schedule': 'Распоред објављивања'\n'No action specified': 'Није предвиђена никаква радња'\n'New section name': 'Ново име рубрике'\n'New section URL name': 'Ново УРЛ име рубрике'\n'New issue name': 'Ново име издања'\n'New issue URL name': 'Ново УРЛ име издања'\n'New article name': 'Ново име текста'\n'Issue URL Name': 'УРЛ име издања'\n'Issue Name': 'Име издања'\n'Duplicate?': 'Дуплирај?'\n'Duplicate articles': 'Дуплирај текстове'\n'Article name ($1)': 'Наслов текста ($1)'\n'Article List': 'Листа текстова'\n'Are you sure you want to remove the topic $1 from the article?': 'Да ли сте сигурни да из текста желите да уклоните тему $1?'\n'Are you sure you want to remove the file $1 from the article?': 'Да ли сте сигурни да из текста желите да уклоните фајл $1?'\n'Are you sure you want to remove the event scheduled on $1?': 'Да ли сте сигурни да желите да уклоните заказану акцију за $1?'\n'Are you sure you want to delete this article?': 'Да ли сте сигурни да желите да обришете текст?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'Мора бити креирано издање за одабрани језик. Унесите име издања и УРЛ име.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'Мора бити креирана рубрика за одабрани језик. Унесите име рубрике и УРЛ име.'\n'Article Type': 'Тип текста'\n'Show article on front page': 'Прикажи текст на првој страни'\n'Show article on section page': 'Прикажи текст на страни рубрике'\n'Translate article': 'Преведи текст'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'Немате право да мењате текст. Можете прегледати једино сопствене текстове, а једном предати текст може бити мењан само од стране овлашћених корисника'\n'Duplicate article': 'Дуплирај текст'\n'The destination section is the same as the source section.': 'Циљна рубрика је иста као матична рубрика.'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'Текст има статус нови; није могуће заказати му акцију аутоматског објављивања.'\n'No article types were defined. You must create an article type first.': 'Нема дефинисаних типова тесктова. Морате креирати неки.'\n'Edit article types': 'Прикажи типове текстова'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Текст не може бити снимљен. Закључан је од стране $1 пре $2 часова и $3 минута.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Немате право да мењате статус текста. Предатом тексту статус може променити само овлашћени корисник.'\n'You do not have the right to delete articles.': 'Немате право да бришете текстове.'\n'You must select an article type.': 'Морате изабрати тип текста.'\n'Are you sure you want to remove the image $1 from the article?': 'Да ли сте сигурни да желите да уконите слику $1 из текста?'\n'There was an error reading request parameters.': 'Дошло је до грешке при читању тражених параметара.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'Текст не може бити прегелдан. Проверите да ли је одређен шаблон за приказ текста.'\n'No such article.': 'Нема таквог текста.'\n'No such section.': 'Нема те рубрике.'\nCharacters: Карактери\nSnippet: Снипет\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': 'Назив листе не би требало да буде дужи од 40 карактера'\n'Not valid number': 'Број није исправан'\n'List limit': 'Лимит листе'\n'The last article of this list has been removed.': 'Последњи текст у листи је избачен.'\nRevert: 'Поврати страницу пре измена'\n'Could not automatically refresh the list': 'Листа није аутоматски освежена'\n'The article slideshows have been successfully updated, please close the window.': 'Галерија слика уз овај чланак је успешно измењена. Затворите овај прозор.'\narticles:\n    playlists:\n        namechanged: 'Сигурни сте да желите да измените назив листе? Назив листе се можда користи у систему, за приказивање текстова на почетној страни. Уколико нисте сигурни, консултујте се са администратором сајта.'\n        alert: 'Сигурни сте да желите да промените максималан број чланака за листу? Уколико овај лимит промените, сви артикли изнад лимита ће бити избачени са листе. Пример: Уколико промените лимит са 50 на 30, свих 20 чланака од позиције 31 до 50 це бити избачени са листе.'\n    images:\n        see_original: 'Преглед слике у оригиналној величини у новом табу'\n        edit:\n            edit_image_metadata: 'Уреди мета-податке за слику'\n            save: Сними\n            form:\n                use: Употреби\n                number: Број\n                caption: Потпис\n                status_approved: Одобрен\n                status_unapproved: Неодобрен\n                status: Статус\n                description: Опис\n                photographer: Фотограф\n                photographer_url: null\n                place: Место\n                date: Датум\n                article_specific: null\n                global: Глобално\n                other_captions: 'Други потписи'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.sv.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: null\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: Filer\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': 'Bifoga teman till artikel'\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': 'Du måste välja en fil att ladda upp.'\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: null\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': null\n'Article created.': null\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: Kommentarer\n'The article has already been translated into $1.': 'Artikeln har redan översatts till $1.'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'Du måste välja publication, utgåva och sektion för den här artikeln innan du kan schemalägga den för publicering. Gå till $1-menyn och välj $2 för att göra detta.'\n'You do not have the right to translate articles.': 'Du har inte rättighet arr översätta artiklar.'\n'You do not have the right to publish articles.': 'Du har inte rättighet arr publicera artiklar.'\n'You do not have the right to move articles.': 'Du har inte rättighet arr flytta artiklar.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'Du kan inte $1 artiklarna som är rödmarkerade för att destinationsutgåvan har inte översatts till det valda språket.'\n'Publish?': 'Publicera?'\n'Publish articles': 'Publicera artiklar'\n'Publish article': 'Publicera artikel'\n'Move?': 'Flytta?'\n'Move articles': 'Flytta artiklar'\n'Move article': 'Flytta artikel'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'En utgåva måste skapas för det valda språket, men du har inte rätt att skapa en utgåva.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'En sektion måste skapas för det valda språket, men du har inte rätt att skapa en sektion.'\n'to section': 'till sektion'\n'You must choose a language': 'Du måste välja ett språk'\n'Unable to create the section for translation $1.': 'Kunde inte skapa sektionen för översättning $1.'\n'Unable to create the issue for translation $1.': 'Kunde inte skapa utgåvan för översättning $1.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'Följande artiklar är nya; det är inte möjligt att schemalägga dem för automatisk publicering'\n'Section URL Name': Sektions-URL-namn\n'Section Name': Sektionsnamn\n'Publish Schedule': Publiceringsschema\n'No action specified': 'Ingen händelse specificerad'\n'New section name': 'Nytt sektionsnamn'\n'New section URL name': 'Nytt sektions-URL-namn'\n'New issue name': 'Nytt utgåvenamn'\n'New issue URL name': 'Nytt utgåve-URL-namn'\n'New article name': 'Nytt artikelnamn'\n'Issue URL Name': Utgåve-URL-namn\n'Issue Name': Utgåvenamn\n'Duplicate?': 'Duplicera?'\n'Duplicate articles': 'Duplicera artiklar'\n'Article name ($1)': 'Artikelnamn ($1)'\n'Article List': Artikellista\n'Are you sure you want to remove the topic $1 from the article?': 'Är du säker att du vill ta bort temat $1 från artikeln?'\n'Are you sure you want to remove the file $1 from the article?': 'Är du säker att du vill ta bort filen $1 från artikeln?'\n'Are you sure you want to remove the event scheduled on $1?': 'Är du säker att du vill ta bort den schemalagda händelsen på $1?'\n'Are you sure you want to delete this article?': 'Är du säker att du vill radera den här artikeln?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'En utgåva måste skapas för det valda språket. Var god skriv in utgåvenamnet och ett URL-namn.'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'En sektion måste skapas för det valda språket. Var god skriv in sektionsnamnet och ett URL-namn.'\n'Article Type': Artikeltyp\n'Show article on front page': 'Visa artikeln på framsidan'\n'Show article on section page': 'Visa artikeln på sektionssidan'\n'Translate article': 'Översätt artikeln'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'Du har inte rätt att ändra den här artikeln. Du får bara redigera dina egna artiklar och så fort en artikel har skickats in kan den bara redigeras av behöriga användare.'\n'Duplicate article': 'Duplicera artikel'\n'The destination section is the same as the source section.': 'Destinationssektionen är samma som källsektionen.'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'Artikeln är ny; det är inte möjligt att schemalägga den för automatisk publicering.'\n'No article types were defined. You must create an article type first.': 'Inga artikeltyper är definierade. Du måste skapa en artikeltyp först.'\n'Edit article types': 'Redigera artikeltyper'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Kunde inte spara artikeln. Den har låsts av $1 ($2) för $3 timme(ar) och $4 minut(er) sen.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Du har inte rätt att ändra den här artikelns status. Så fort en artikel har skickats in kan den bara ändras av behöriga användare.'\n'You do not have the right to delete articles.': 'Du har inte rätt att radera artiklar'\n'You must select an article type.': 'Du måste välja en artikeltyp'\n'Are you sure you want to remove the image $1 from the article?': 'Är du säker att du vill ta bort bilden $1 från artikeln?'\n'There was an error reading request parameters.': 'Ett fel uppstod vid läsning av förfrågningsparametern.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'Denna artikel kunde inte förhandsgranskas. Var god kontrollera att den har den valda mallen.'\n'No such article.': 'Artikeln finns inte.'\n'No such section.': 'Sektionen finns inte.'\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.tr.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: null\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: null\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': null\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': null\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: null\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': null\n'Article created.': null\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: null\n'The article has already been translated into $1.': null\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': null\n'You do not have the right to translate articles.': null\n'You do not have the right to publish articles.': null\n'You do not have the right to move articles.': null\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': null\n'Publish?': null\n'Publish articles': null\n'Publish article': null\n'Move?': null\n'Move articles': null\n'Move article': null\n'An issue must be created for the selected language but you do not have the right to create an issue.': null\n'A section must be created for the selected language but you do not have the right to create a section.': null\n'to section': null\n'You must choose a language': null\n'Unable to create the section for translation $1.': null\n'Unable to create the issue for translation $1.': null\n'The following articles are new; it is not possible to schedule them for automatic publishing': null\n'Section URL Name': null\n'Section Name': null\n'Publish Schedule': null\n'No action specified': null\n'New section name': null\n'New section URL name': null\n'New issue name': null\n'New issue URL name': null\n'New article name': null\n'Issue URL Name': null\n'Issue Name': null\n'Duplicate?': null\n'Duplicate articles': null\n'Article name ($1)': null\n'Article List': null\n'Are you sure you want to remove the topic $1 from the article?': null\n'Are you sure you want to remove the file $1 from the article?': null\n'Are you sure you want to remove the event scheduled on $1?': null\n'Are you sure you want to delete this article?': null\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': null\n'A section must be created for the selected language.  Please enter the section name and URL name.': null\n'Article Type': null\n'Show article on front page': null\n'Show article on section page': null\n'Translate article': null\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': null\n'Duplicate article': null\n'The destination section is the same as the source section.': null\n'The article is new; it is not possible to schedule it for automatic publishing.': null\n'No article types were defined. You must create an article type first.': null\n'Edit article types': null\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'You do not have the right to delete articles.': null\n'You must select an article type.': null\n'Are you sure you want to remove the image $1 from the article?': null\n'There was an error reading request parameters.': null\n'This article cannot be previewed. Please make sure it has the article template selected.': null\n'No such article.': null\n'No such section.': null\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.uk.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': 'Керування блогами'\n'View article': 'Перегляд статті'\n'Select a list': 'Вибрати список'\n'Remove list': 'Видалити список'\n'Please select a list': 'Будь ласка, виберіть список'\nPlaylist: Плейлист\n'List updated.': 'Оновлений список.'\n'List saved': 'Збережений список.'\n'List Name': 'Назва списку'\n'List ID': 'ID списку'\n'Item already exists in the list': 'Цей пункт вже існує у списку'\n'Featured Articles': 'Вибрані статі'\n'Featured Article Lists': 'Списки вибраних статей'\n'Featured Article List': 'Список вибраних статей'\n'Duplicate list': 'Дублювати список'\n'Duplicate article entry found': 'Дублювати знайдену статтю'\n'Drag here to add to list': 'Перетягнути у список'\n'Could not save the list': 'Не вдалося зберегти список'\n'Available Articles': 'Доступні статті'\n'Are you sure you want to delete this list?': 'Ви впевнені, що хочете видалити цей список?'\n'Add to list': 'Додати у список'\n'Add list': 'Додати список'\n'Multi date events': 'Календар подій'\nSlideshows: Слайдшоу\n'Place images': 'Помістить зображення'\n'Youre not allowed to edit article.': 'У вас не має прав редагувати статті.'\nWebcode: Web-код\nUnapproved: 'Не затверджено'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Попередній перегляд неможливий. Будь ласка переконайтесь, що для публікації призначена тема.'\n'The article could not be submitted.': 'Неможливо відправити статю.'\n'Submit articles': 'Відправити статті.'\n'Submit article': 'Відправити статтю'\n'Related Articles': 'Пов’язані статті'\n'Pending articles': 'Незакінчені статті'\n'Pending Articles': 'Незакінчені Статті'\n'Context Box updated': 'Оновлений контекстний блок'\nOn: Вкл.\nOff: Викл.\n'You do not have the right to moderate comments.': 'У Вас не має права модерувати коментарі'\n'You can not schedule opposing events at the same time': 'Ви не можете запланувати протилежні заходи одночасно'\n'Unable to reach Newscoop. Please check your internet connection.': 'Неможливо зв’язатись з Newscoop. Будь ласка, перевірте ваше інтернет-з’єднання.'\nTitle: Заголовок\n'There already is an article with the same name. Please change the name and try again.': 'Стаття з таким заголовком вже існує. Змініть назву та спробуйте ще раз.'\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': 'До Вашої уваги: Всі заплановані дії для цієї статті будуть видалені, як тільки статті буде призначено статус Нова. Будь ласка підтвердте зміну статусу.'\nGeolocation: Геопозіціонування\nNewscoop: Newscoop\n'Overwrite articles with matching names': 'Переписати статті з відповідними іменами'\n'Article <i>$1</i> already exists, and was not overwritten.<br />': 'Стаття <i>$1</i> вже існує та не буле перезаписана. <br />'\nFiles: Файли\n'Select section:': 'Виберіть розділ'\n'Add another author': 'Додати автора'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Ця стаття була заблокована $1 ($2) $3 хвилин тому.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Ця стаття була заблокована $1 ($2) $3 годин та $4 хвилин тому.'\n'Switches saved.': 'Статус перемикачів збережено.'\n'Keywords saved.': 'Ключові слова збережені.'\n'Comment settings': 'Налаштування коментування'\nAuthors: Автори\n'Attach Topic To Article': 'Прікріпити тему до статті.'\n'Article saved.': 'Вміст статті збережено.'\n'Article is locked': 'Стаття заблокована'\n'Actions updated.': 'Дія оновлена'\n'Your work has not been saved. Do you want to continue and lose your changes?': 'Ваші дії не були збережені. Чи хочете Ви продовжити та втратити внесені зміни? '\nSwitches: Перемикачі\n'No subtopics available': 'Немає доступних підтем для використання'\n'Newscoop Subhead': 'Підзаголовок Newscoop'\nMedia: Медіа\n'Last modified': 'Останні зміни'\n'Keywords &amp; Topics': 'Ключові слова та Теми'\nInfo: Інформація\n'Go to live article': 'Перейти до активної статті'\nCreated: Створена\n'Are you sure you want to remove the map from the article?': 'Ви впевнені, що хочете видалити цю карту зі статті?'\n'Scheduled action added': 'Зпланована дія додана'\n'Content edited': 'Вміст оновлено'\n'You must select an article language.': 'Ви маєте вибрати мову статті.'\n'You must select a publication.': 'Ви маєте вибрати видання'\n'You must select a file to upload.': 'Ви маєте вибрати файл для завантаження.'\n'You must select a XML input file.': 'Ви маєте вибрати вхідний XML-файл'\n'You do not have the right to import XML archives.': 'У Вас немає прав імпортувати XML-аріхви'\n'There was a problem uploading the file.': 'Проблема завантаження файла.'\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': 'Завантажений файл збережен на сервері частково. Це пов’язано з тим, що максимально дозволений час для завантаження файлу перевищує час, необхідний для завантаження цього файлу. Максимальний час завантаження визначений у файлі php.ini'\n'The file exceeds the allowed max file size.': 'Розмір цього файлу перевищує допустимий.'\nOptional: Необов’язкове\n'Input File': 'Вхідний файл'\n'Import XML': 'Імпорт XML'\n'File is not a valid XML file.': 'Цей файл не є XML-файлом.'\n'File does not exist.': 'Такого файлу не існує'\n'File could not be uploaded.': 'Неможливо завантажити цей файл.'\n'File could not be read.': 'Неможливо прочитати цей файл.'\n'Error List': 'Список помилок'\n'Bad format in XML file.': 'Невірний формат XML-файла'\n'Article could not be created.': 'Стаття не може бути створена.'\n'---Select article type---': '--Виберіть тип статті--'\n'$1 articles successfully imported.': '$1 статті успішно імпортовані.'\nSaved: Збережено\n'Save All': 'Зберегти все'\n'Online Server: On': 'Сервер онлайн: увімкнений'\n'Online Server: Off': 'Сервер онлайн: вимкнений'\nDownload: Завантажити\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': 'Ви не можете мати дві статті у одній рубриці з однаковою назвою. Вказана назва вже використовується статею  $1.'\n'Visible to non-subscribers': 'Видно не тільки підписчикам'\n'The article could not be published.': 'Стаття не може бути опублікована.'\n'Scheduled action deleted.': 'Запланована дія відмінена.'\n'Scheduled action added.': 'Запланована дія додана.'\n'Article(s) unlocked.': 'Стаття(-і) розблокована.'\n'Article(s) duplicated.': 'Стаття(-і) продубльована(-и)'\n'Article(s) deleted.': 'Стаття(-і) видалена(-и).'\n'Article status set to $1': 'Статус статті встановлено в $1'\n'Article unlocked.': 'Стаття розблокована.'\n'Article translation created.': 'Переклади статті створено.'\n'Article order changed.': 'Порядок статей змінено.'\n'Article moved.': 'Стаття переміщена.'\n'Article deleted.': 'Стаття видалена.'\n'Article created.': 'Стаття створена'\n'$1 toggled.': '$1 змінено.'\n'Total:': 'Всього:'\n'Show Comments': 'Показати коментарі'\nLocked: Заблоковано\n'Invalid type: $1': 'Невірний тип: $1'\n'Hide Comments': 'Сховати коментарі'\nEnabled: Дозволено\nDisabled: Заборонено\nComments: Коментарі\n'The article has already been translated into $1.': 'Стаття вже була перекладена на $1.'\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': 'Ви маєте призначити видання, випуск та секцію для цієї статті до планування статті у публікації. Перейдіть до меню $1 та виберіть $2, щоб зробити це.'\n'You do not have the right to translate articles.': 'Ви не маєте права перекладати статті.'\n'You do not have the right to publish articles.': 'Ви не маєте права публікувати статті.'\n'You do not have the right to move articles.': 'Ви не маєте права переміщати статті.'\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': 'Не можна $1 статті, відмічені червоним, оскільки випуск призанчення не перекладений на відповідну мову.'\n'Publish?': 'Опублікувати?'\n'Publish articles': 'Опублікувати статті'\n'Publish article': 'Опублікувати статтю'\n'Move?': 'Перемістити?'\n'Move articles': 'Перемістити статті'\n'Move article': 'Перемістити статтю'\n'An issue must be created for the selected language but you do not have the right to create an issue.': 'Випуск має бути створено для вибраної мови, але Ви не маєте прав створювати випуски.'\n'A section must be created for the selected language but you do not have the right to create a section.': 'Має бути створена рубрика для вибраної мови, але Ви не маєте права створювати рубрики.'\n'to section': 'До рубрики'\n'You must choose a language': 'Ви маєте вибрати мову'\n'Unable to create the section for translation $1.': 'Неможливо створити рубрику для перекладу $1.'\n'Unable to create the issue for translation $1.': 'Неможливо створити випуск для перекладу $1.'\n'The following articles are new; it is not possible to schedule them for automatic publishing': 'Ці статті нові; неможливо призначити їх для автоматичної публікації'\n'Section URL Name': 'Назва посилання рубрики'\n'Section Name': 'Назва рубрики'\n'Publish Schedule': 'Розклад публікацій'\n'No action specified': 'Дії не вказані'\n'New section name': 'Навза нової рубрики'\n'New section URL name': 'Назва посилання нової рубрики'\n'New issue name': 'Назва нового випуску'\n'New issue URL name': 'Назва посилання нового випуску'\n'New article name': 'Назва нової статті'\n'Issue URL Name': 'Назва посилання випуску'\n'Issue Name': 'Назва випуску'\n'Duplicate?': 'Дублювати?'\n'Duplicate articles': 'Дублювати статтю'\n'Article name ($1)': 'Заголовок статті ($1)'\n'Article List': 'Список статей'\n'Are you sure you want to remove the topic $1 from the article?': 'Ви впевнені, що хочете видалити тему $1 зі статті?'\n'Are you sure you want to remove the file $1 from the article?': 'Ви впевнені, що хочете видалити файл $1 зі статті?'\n'Are you sure you want to remove the event scheduled on $1?': 'Ви впевнені, що хочете видалити дію, призначену на $1?'\n'Are you sure you want to delete this article?': 'Ви впевнені, ща хочете видалити цю статтю?'\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': 'Випуск має бути створено для вибраної мови. Введіть назву випуску та назву посилання'\n'A section must be created for the selected language.  Please enter the section name and URL name.': 'Рубрика має бути створена для вибраної мови. Введіть назву рубрики та назву посилання'\n'Article Type': 'Тип статті'\n'Show article on front page': 'Показати статтю на головній'\n'Show article on section page': 'Показати статтю у цьому розділі'\n'Translate article': 'Перекласти статтю'\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 'Ви не маєте права змінювати цю статтю. Ви можете редагувати тільки власні статті та будучи відправленой, стаття може бути змінена тільки уповноваженим користувачем'\n'Duplicate article': 'Дублювати статтю'\n'The destination section is the same as the source section.': 'Рубрика призначення така ж сама що і рубрика джерела'\n'The article is new; it is not possible to schedule it for automatic publishing.': 'Стаття нова, її неможливо призначити до автоматичної публікації.'\n'No article types were defined. You must create an article type first.': 'Типи статей не визначені. Спочатку Ви маєте їх створити.'\n'Edit article types': 'Редагувати типи статей'\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': 'Не вдалося зберегти статтю. Вона заблокована користувачем $1 $2 годин і $3 хвилин тому.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Ви не маєте права змінювати стан статті. Відправлена стаття може бути змінена тільки уповноваженим користувачем.'\n'You do not have the right to delete articles.': 'Ви не маєте права видаляти статті.'\n'You must select an article type.': 'Ви маєте вибрати тип статті.'\n'Are you sure you want to remove the image $1 from the article?': 'Ви впевнені, що хочете видалити зображення  $1 зі статті?'\n'There was an error reading request parameters.': 'Помилка читання параметрів запиту.'\n'This article cannot be previewed. Please make sure it has the article template selected.': 'Попередній перегляд неможливий. Переконайтесь, що вибран шаблон статті.'\n'No such article.': 'Немає такої статті.'\n'No such section.': 'Немає такої рубрики:ua'\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.vi.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: null\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: null\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': null\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': null\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: null\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': null\n'Article created.': null\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: null\n'The article has already been translated into $1.': null\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': null\n'You do not have the right to translate articles.': null\n'You do not have the right to publish articles.': null\n'You do not have the right to move articles.': null\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': null\n'Publish?': null\n'Publish articles': null\n'Publish article': null\n'Move?': null\n'Move articles': null\n'Move article': null\n'An issue must be created for the selected language but you do not have the right to create an issue.': null\n'A section must be created for the selected language but you do not have the right to create a section.': null\n'to section': null\n'You must choose a language': null\n'Unable to create the section for translation $1.': null\n'Unable to create the issue for translation $1.': null\n'The following articles are new; it is not possible to schedule them for automatic publishing': null\n'Section URL Name': null\n'Section Name': null\n'Publish Schedule': null\n'No action specified': null\n'New section name': null\n'New section URL name': null\n'New issue name': null\n'New issue URL name': null\n'New article name': null\n'Issue URL Name': null\n'Issue Name': null\n'Duplicate?': null\n'Duplicate articles': null\n'Article name ($1)': null\n'Article List': null\n'Are you sure you want to remove the topic $1 from the article?': null\n'Are you sure you want to remove the file $1 from the article?': null\n'Are you sure you want to remove the event scheduled on $1?': null\n'Are you sure you want to delete this article?': null\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': null\n'A section must be created for the selected language.  Please enter the section name and URL name.': null\n'Article Type': null\n'Show article on front page': null\n'Show article on section page': null\n'Translate article': null\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': null\n'Duplicate article': null\n'The destination section is the same as the source section.': null\n'The article is new; it is not possible to schedule it for automatic publishing.': null\n'No article types were defined. You must create an article type first.': null\n'Edit article types': null\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'You do not have the right to delete articles.': null\n'You must select an article type.': null\n'Are you sure you want to remove the image $1 from the article?': null\n'There was an error reading request parameters.': null\n'This article cannot be previewed. Please make sure it has the article template selected.': null\n'No such article.': null\n'No such section.': null\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.zh.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: 标题\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: 文件\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': null\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': null\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: 下载\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': 文章删除。\n'Article created.': 文章创建。\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: null\n'The article has already been translated into $1.': null\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': null\n'You do not have the right to translate articles.': null\n'You do not have the right to publish articles.': null\n'You do not have the right to move articles.': null\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': null\n'Publish?': null\n'Publish articles': null\n'Publish article': null\n'Move?': null\n'Move articles': null\n'Move article': null\n'An issue must be created for the selected language but you do not have the right to create an issue.': null\n'A section must be created for the selected language but you do not have the right to create a section.': null\n'to section': null\n'You must choose a language': null\n'Unable to create the section for translation $1.': null\n'Unable to create the issue for translation $1.': null\n'The following articles are new; it is not possible to schedule them for automatic publishing': null\n'Section URL Name': null\n'Section Name': null\n'Publish Schedule': null\n'No action specified': null\n'New section name': null\n'New section URL name': null\n'New issue name': null\n'New issue URL name': null\n'New article name': null\n'Issue URL Name': null\n'Issue Name': null\n'Duplicate?': null\n'Duplicate articles': null\n'Article name ($1)': null\n'Article List': null\n'Are you sure you want to remove the topic $1 from the article?': null\n'Are you sure you want to remove the file $1 from the article?': null\n'Are you sure you want to remove the event scheduled on $1?': null\n'Are you sure you want to delete this article?': null\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': null\n'A section must be created for the selected language.  Please enter the section name and URL name.': null\n'Article Type': null\n'Show article on front page': 在首页显示文章\n'Show article on section page': 在区页显示文章\n'Translate article': 翻译文章\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': 您无权修改此文章，你只能编辑自己的文章，提交的文章只能由审定的用户修改\n'Duplicate article': null\n'The destination section is the same as the source section.': null\n'The article is new; it is not possible to schedule it for automatic publishing.': null\n'No article types were defined. You must create an article type first.': null\n'Edit article types': null\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'You do not have the right to delete articles.': null\n'You must select an article type.': null\n'Are you sure you want to remove the image $1 from the article?': null\n'There was an error reading request parameters.': null\n'This article cannot be previewed. Please make sure it has the article template selected.': null\n'No such article.': 无此文章\n'No such section.': 无此区\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: 保存\n            form:\n                use: null\n                number: 数字编号\n                caption: 标题\n                status_approved: null\n                status_unapproved: null\n                status: 状态\n                description: 描述\n                photographer: 摄影师\n                photographer_url: null\n                place: 地点\n                date: 日期\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/articles.zh_TW.yml",
    "content": "'Edit metadata': null\nRating: null\n'Enable Rating': null\n'Blog management': null\n'View article': null\n'Select a list': null\n'Remove list': null\n'Please select a list': null\nPlaylist: null\n'List updated.': null\n'List saved': null\n'List Name': null\n'List ID': null\n'Item already exists in the list': null\n'Featured Articles': null\n'Featured Article Lists': null\n'Featured Article List': null\n'Duplicate list': null\n'Duplicate article entry found': null\n'Drag here to add to list': null\n'Could not save the list': null\n'Available Articles': null\n'Are you sure you want to delete this list?': null\n'Add to list': null\n'Add list': null\n'Multi date events': null\nSlideshows: null\n'Place images': null\n'Youre not allowed to edit article.': null\nWebcode: null\nUnapproved: null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'The article could not be submitted.': null\n'Submit articles': null\n'Submit article': null\n'Related Articles': null\n'Pending articles': null\n'Pending Articles': null\n'Context Box updated': null\nOn: null\nOff: null\n'You do not have the right to moderate comments.': null\n'You can not schedule opposing events at the same time': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nTitle: null\n'There already is an article with the same name. Please change the name and try again.': null\n'Please be aware that all scheduled publishing events for this article will be deleted when you set this article to New state. Please confirm the state change.': null\nGeolocation: null\nNewscoop: null\n'Overwrite articles with matching names': null\n'Article <i>$1</i> already exists, and was not overwritten.<br />': null\nFiles: null\n'Select section:': null\n'Add another author': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Switches saved.': null\n'Keywords saved.': null\n'Comment settings': null\nAuthors: null\n'Attach Topic To Article': null\n'Article saved.': null\n'Article is locked': null\n'Actions updated.': null\n'Your work has not been saved. Do you want to continue and lose your changes?': null\nSwitches: null\n'No subtopics available': null\n'Newscoop Subhead': null\nMedia: null\n'Last modified': null\n'Keywords &amp; Topics': null\nInfo: null\n'Go to live article': null\nCreated: null\n'Are you sure you want to remove the map from the article?': null\n'Scheduled action added': null\n'Content edited': null\n'You must select an article language.': null\n'You must select a publication.': null\n'You must select a file to upload.': null\n'You must select a XML input file.': null\n'You do not have the right to import XML archives.': null\n'There was a problem uploading the file.': null\n'The uploaded file was only partially uploaded. This is common when the maximum time to upload a file is low in contrast with the file size you are trying to input. The maximum input time is specified in php.ini': null\n'The file exceeds the allowed max file size.': null\nOptional: null\n'Input File': null\n'Import XML': null\n'File is not a valid XML file.': null\n'File does not exist.': null\n'File could not be uploaded.': null\n'File could not be read.': null\n'Error List': null\n'Bad format in XML file.': null\n'Article could not be created.': null\n'---Select article type---': null\n'$1 articles successfully imported.': null\nSaved: null\n'Save All': null\n'Online Server: On': null\n'Online Server: Off': null\nDownload: null\n'You cannot have two articles in the same section with the same name.  The article name you specified is already in use by the article $1.': null\n'Visible to non-subscribers': null\n'The article could not be published.': null\n'Scheduled action deleted.': null\n'Scheduled action added.': null\n'Article(s) unlocked.': null\n'Article(s) duplicated.': null\n'Article(s) deleted.': null\n'Article status set to $1': null\n'Article unlocked.': null\n'Article translation created.': null\n'Article order changed.': null\n'Article moved.': null\n'Article deleted.': null\n'Article created.': null\n'$1 toggled.': null\n'Total:': null\n'Show Comments': null\nLocked: null\n'Invalid type: $1': null\n'Hide Comments': null\nEnabled: null\nDisabled: null\nComments: null\n'The article has already been translated into $1.': null\n'You must set the publication, issue, and section for this article before you can schedule it for publishing.  Go to the $1 menu and select $2 to do this.': null\n'You do not have the right to translate articles.': null\n'You do not have the right to publish articles.': null\n'You do not have the right to move articles.': null\n'You cannot $1 the articles marked in red because the destination issue has not been translated into the appropriate language.': null\n'Publish?': null\n'Publish articles': null\n'Publish article': null\n'Move?': null\n'Move articles': null\n'Move article': null\n'An issue must be created for the selected language but you do not have the right to create an issue.': null\n'A section must be created for the selected language but you do not have the right to create a section.': null\n'to section': null\n'You must choose a language': null\n'Unable to create the section for translation $1.': null\n'Unable to create the issue for translation $1.': null\n'The following articles are new; it is not possible to schedule them for automatic publishing': null\n'Section URL Name': null\n'Section Name': null\n'Publish Schedule': null\n'No action specified': null\n'New section name': null\n'New section URL name': null\n'New issue name': null\n'New issue URL name': null\n'New article name': null\n'Issue URL Name': null\n'Issue Name': null\n'Duplicate?': null\n'Duplicate articles': null\n'Article name ($1)': null\n'Article List': null\n'Are you sure you want to remove the topic $1 from the article?': null\n'Are you sure you want to remove the file $1 from the article?': null\n'Are you sure you want to remove the event scheduled on $1?': null\n'Are you sure you want to delete this article?': null\n'An issue must be created for the selected language.  Please enter the issue name and URL name.': null\n'A section must be created for the selected language.  Please enter the section name and URL name.': null\n'Article Type': null\n'Show article on front page': null\n'Show article on section page': null\n'Translate article': null\n'You do not have the right to change this article.  You may only edit your own articles and once submitted an article can only be changed by authorized users.': null\n'Duplicate article': null\n'The destination section is the same as the source section.': null\n'The article is new; it is not possible to schedule it for automatic publishing.': null\n'No article types were defined. You must create an article type first.': null\n'Edit article types': null\n'Could not save the article. It has been locked by $1 $2 hours and $3 minutes ago.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'You do not have the right to delete articles.': null\n'You must select an article type.': null\n'Are you sure you want to remove the image $1 from the article?': null\n'There was an error reading request parameters.': null\n'This article cannot be previewed. Please make sure it has the article template selected.': null\n'No such article.': null\n'No such section.': null\nCharacters: null\nSnippet: null\n'This list is already in a different state than the one in which it was loaded.': null\n'List name should not be longer than 40 chars': null\n'Not valid number': null\n'List limit': null\n'The last article of this list has been removed.': null\nRevert: null\n'Could not automatically refresh the list': null\n'The article slideshows have been successfully updated, please close the window.': null\narticles:\n    playlists:\n        namechanged: null\n        alert: null\n    images:\n        see_original: null\n        edit:\n            edit_image_metadata: null\n            save: null\n            form:\n                use: null\n                number: null\n                caption: null\n                status_approved: null\n                status_unapproved: null\n                status: null\n                description: null\n                photographer: null\n                photographer_url: null\n                place: null\n                date: null\n                article_specific: null\n                global: null\n                other_captions: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.ar.yml",
    "content": "'Translate from': 'الترجمة من'\n'Total articles': 'كل المقالات'\nSkype: Skype\n'Save All': 'إحفظ الكل'\nReset: 'أعد التعيين'\n'Please enter the last name': 'يرجى الإدخال اسم العائلة'\n'Please enter the first name': 'يرجى الادخال الاسم الأول'\n'No records found': 'لا توجد سجلات تاريخية'\n'Last name': 'اسم العائلة'\nJabber: Jabber\nGeneral: عام\n'First name': 'الاسم الأول'\nEmail: 'بريد إلكتروني'\n'Delete author': 'إحذف المؤلف'\nContacts: الاتصالات\nBiography: 'سيرة حياة'\nAliases: 'الأسماء المستعارة'\nAIM: AIM\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.az.yml",
    "content": "'Translate from': 'Buradan tərcümə et'\n'Total articles': 'Cəmi məqalələr'\nSkype: Skype\n'Save All': 'Hamısını Saxla'\nReset: Sıfırla\n'Please enter the last name': 'Lütfən, soyadını daxil et'\n'Please enter the first name': 'Lütfən, adını daxil et'\n'No records found': 'Yazı tapılmadı'\n'Last name': Soyad\nJabber: Jabber\nGeneral: Ümumi\n'First name': Ad\nEmail: Email\n'Delete author': 'Müəllifi sil'\nContacts: Əlaqələr\nBiography: Tərcümeyi-hal\nAliases: Ləqəblər\nAIM: MƏQSƏD\n'Search for authors': 'Müəllif axtar'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.be.yml",
    "content": "'Translate from': 'Перакласці з'\n'Total articles': 'Усяго артыкулаў'\nSkype: Skype\n'Save All': 'Захаваць усё'\nReset: Аднавіць\n'Please enter the last name': 'Калі ласка, увядзіце прозвішча'\n'Please enter the first name': 'Калі ласка, увядзіце імя'\n'No records found': 'Не знойдзена запісаў па гэтаму запыту'\n'Last name': Прозвішча\nJabber: Jabber\nGeneral: Агульная\n'First name': Імя\nEmail: Email\n'Delete author': 'Выдаліць аўтара'\nContacts: Кантакты\nBiography: Біяграфія\nAliases: Псеўданімы\nAIM: AIM\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.bn.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.cs.yml",
    "content": "'Translate from': 'Přeložit z'\n'Total articles': 'Článků celkem'\nSkype: Skype\n'Save All': 'Uložit Vše'\nReset: Resetovat\n'Please enter the last name': 'Prosíme zadejte své příjmení'\n'Please enter the first name': 'Prosíme zadejte své jméno'\n'No records found': 'Nebyly nalezeny žádné záznamy'\n'Last name': Příjmení\nJabber: Jabber\nGeneral: Obecné\n'First name': Jméno\nEmail: Email\n'Delete author': 'Odstranit autora'\nContacts: Kontakty\nBiography: Biografie\nAliases: Přezdívky\nAIM: AIM\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.da.yml",
    "content": "'Translate from': 'Oversæt fra'\n'Total articles': 'Artikler i alt'\nSkype: Skype\n'Save All': 'Gem alt'\nReset: Nulstil\n'Please enter the last name': 'Indtast efternavn'\n'Please enter the first name': 'Indtast fornavn'\n'No records found': 'Ingen resultater'\n'Last name': Efternavn\nJabber: Jabber\nGeneral: Generelt\n'First name': Fornavn\nEmail: Email\n'Delete author': 'Slet forfatter'\nContacts: Kontakter\nBiography: Biografi\nAliases: Aliaser\nAIM: AIM\n'Search for authors': 'Søg efter forfattere'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.de.yml",
    "content": "'Translate from': 'Übersetzen von'\n'Total articles': 'Artikel gesamt'\nSkype: Skype\n'Save All': 'Alle speichern'\nReset: Zurücksetzen\n'Please enter the last name': 'Bitte Nachnamen eingeben'\n'Please enter the first name': 'Bitte Vornamen eingeben'\n'No records found': 'Keine Daten gefunden'\n'Last name': Nachname\nJabber: Jabber\nGeneral: Allgemein\n'First name': Vorname\nEmail: E-Mail\n'Delete author': 'Autor/in löschen'\nContacts: Kontakte\nBiography: Biographie\nAliases: Aliase\nAIM: AIM\n'Search for authors': 'Suche nach Autoren'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.de_AT.yml",
    "content": "'Translate from': 'Übersetzen von'\n'Total articles': 'Artikel gesamt'\nSkype: Skype\n'Save All': 'Alle speichern'\nReset: Zurücksetzen\n'Please enter the last name': 'Bitte Nachnamen eingeben'\n'Please enter the first name': 'Bitte Vornamen eingeben'\n'No records found': 'Keine Daten gefunden'\n'Last name': Nachname\nJabber: Jabber\nGeneral: Allgemein\n'First name': Vorname\nEmail: E-Mail\n'Delete author': 'Autor/in löschen'\nContacts: Kontakte\nBiography: Biographie\nAliases: Aliase\nAIM: AIM\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.el.yml",
    "content": "'Translate from': 'Μετάφραση από'\n'Total articles': 'Συνολικά άρθρα'\nSkype: Skype\n'Save All': 'Αποθήκευση Όλων'\nReset: Επαναφορά\n'Please enter the last name': 'Παρακαλούμε εισάγετε το επώνυμο'\n'Please enter the first name': 'Παρακαλούμε εισάγετε το μικρό όνομα'\n'No records found': 'Δεν βρέθηκαν δεδομένα'\n'Last name': Επώνυμο\nJabber: Jabber\nGeneral: Γενικά\n'First name': Όνομα\nEmail: Email\n'Delete author': 'Διαγραφή συγγραφέα'\nContacts: Επαφές\nBiography: Βιογραφία\nAliases: Ψευδώνυμα\nAIM: AIM\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.en.yml",
    "content": "'Translate from': 'Translate from'\n'Total articles': 'Total articles'\nSkype: Skype\n'Save All': 'Save All'\nReset: Reset\n'Please enter the last name': 'Please enter the last name'\n'Please enter the first name': 'Please enter the first name'\n'No records found': 'No records found'\n'Last name': 'Last name'\nJabber: Jabber\nGeneral: General\n'First name': 'First name'\nEmail: Email\n'Delete author': 'Delete author'\nContacts: Contacts\nBiography: Biography\nAliases: Aliases\nAIM: AIM\n'Search for authors': 'Search for authors'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.en_GB.yml",
    "content": "'Translate from': 'Translate from'\n'Total articles': 'Total articles'\nSkype: Skype\n'Save All': 'Save All'\nReset: Reset\n'Please enter the last name': 'Please enter the last name'\n'Please enter the first name': 'Please enter the first name'\n'No records found': 'No records found'\n'Last name': 'Last name'\nJabber: Jabber\nGeneral: General\n'First name': 'First name'\nEmail: Email\n'Delete author': 'Delete author'\nContacts: Contacts\nBiography: Biography\nAliases: Aliases\nAIM: AIM\n'Search for authors': 'Search for authors'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.es.yml",
    "content": "'Translate from': 'Traducir de'\n'Total articles': 'Artículos totales'\nSkype: Skype\n'Save All': 'Guardar todo'\nReset: Reiniciar\n'Please enter the last name': 'Ingrese su apellido'\n'Please enter the first name': 'Ingrese su nombre'\n'No records found': 'No se encontraron registros'\n'Last name': Apellido\nJabber: Jabber\nGeneral: General\n'First name': 'Primer nombre'\nEmail: 'Correo electrónico'\n'Delete author': 'Eliminar autor'\nContacts: Contactos\nBiography: Biografía\nAliases: Alias\nAIM: AIM\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.es_AR.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.fa.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.fa_AF.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.fr.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: Général\n'First name': null\nEmail: Courriel\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.he.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.hr.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.hu.yml",
    "content": "'Translate from': 'Fordítás erről:'\n'Total articles': 'Összes cikk'\nSkype: Skype\n'Save All': 'Az összes mentése'\nReset: Törlés\n'Please enter the last name': 'Add meg a vezetéknevedet'\n'Please enter the first name': 'Add meg a keresztnevedet'\n'No records found': 'Nem találhatók rekordok.'\n'Last name': Vezetéknév\nJabber: Jabber\nGeneral: Általános\n'First name': Keresztnév\nEmail: E-mail\n'Delete author': 'Szerző törlése'\nContacts: Elérhetőségek\nBiography: Életrajz\nAliases: Aliasok\nAIM: AIM\n'Search for authors': 'Szerzők keresése'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.hy.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.hy_AM.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: Ծածկանուններ\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.id.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.it.yml",
    "content": "'Translate from': 'Traduci da'\n'Total articles': 'Totale articoli'\nSkype: Skype\n'Save All': 'Salva tutto'\nReset: Reset\n'Please enter the last name': 'Inserisci il Cognome'\n'Please enter the first name': 'Inserisci il Nome'\n'No records found': 'Nessuna voce trovata'\n'Last name': Cognome\nJabber: Jabber\nGeneral: Generale\n'First name': Nome\nEmail: Email\n'Delete author': 'Elimina autore'\nContacts: Contatti\nBiography: Biografia\nAliases: Alias\nAIM: AIM\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.ka.yml",
    "content": "'Translate from': 'თარგმანის ფორმა'\n'Total articles': 'სულ სტატიები'\nSkype: Skype\n'Save All': 'ყველაფრის დამახსოვრება'\nReset: 'საწყის მდგომარეობაში დაბრუნება'\n'Please enter the last name': 'შეიყვანეთ გვარი'\n'Please enter the first name': 'შეიყვანეთ სახელი'\n'No records found': 'მონაცემები არ მოიძებნა'\n'Last name': გვარი\nJabber: Jabber\nGeneral: ზოგადი\n'First name': სახელი\nEmail: ელფოსტა\n'Delete author': 'ავტორის წაშლა'\nContacts: კონტაქტები\nBiography: ბიოგრაფია\nAliases: ფსევდონიმები\nAIM: AIM\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.ko.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.ku.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.lv.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.mr.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.nb_NO.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.nl.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.pa.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.pl.yml",
    "content": "'Translate from': 'Tłumacz z '\n'Total articles': 'Wszystkie artykuły'\nSkype: Skype\n'Save All': 'Zapisz wszystko'\nReset: Reset\n'Please enter the last name': Nazwisko\n'Please enter the first name': Imię\n'No records found': 'Nie znaleziono rekordów'\n'Last name': Nazwisko\nJabber: Jabber\nGeneral: Ogólne\n'First name': Imię\nEmail: Email\n'Delete author': 'Usuń autora'\nContacts: Kontakty\nBiography: Biografia\nAliases: Aliasy\nAIM: AIM\n'Search for authors': 'Szukaj autorów'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.ps.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.pt.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.pt_BR.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': 'Salvar tudo'\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: Email\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.ro.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': 'Salvează totul'\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: Email\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.ru.yml",
    "content": "'Translate from': 'Перевести из'\n'Total articles': 'Всего статей'\nSkype: Skype\n'Save All': 'Сохранить все'\nReset: Сбросить\n'Please enter the last name': 'Введите фамилию'\n'Please enter the first name': 'Введите имя'\n'No records found': 'Не найдено записей по этому запросу'\n'Last name': Фамилия\nJabber: Jabber\nGeneral: Общая\n'First name': Имя\nEmail: Email\n'Delete author': 'Удалить автора'\nContacts: Контакты\nBiography: Биография\nAliases: Псевдонимы\nAIM: AIM\n'Search for authors': 'Поиск авторов'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.sh.yml",
    "content": "'Translate from': 'Prevedi formu'\n'Total articles': 'Ukupno tekstova'\nSkype: Skype\n'Save All': 'Sačuvaj sve'\nReset: Poništi\n'Please enter the last name': 'Unesite prezime'\n'Please enter the first name': 'Unesite ime'\n'No records found': 'Nema pronađenih rezulata'\n'Last name': Prezime\nJabber: Jabber\nGeneral: Opšte\n'First name': Ime\nEmail: email\n'Delete author': 'Obriši autora'\nContacts: Kontakti\nBiography: Biografija\nAliases: Alijasi\nAIM: AIM\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.sq.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.sr.yml",
    "content": "'Translate from': 'Преведи форму'\n'Total articles': 'Укупно текстова'\nSkype: Skype\n'Save All': 'сачувај све'\nReset: Поништи\n'Please enter the last name': 'Унесите измене'\n'Please enter the first name': 'Унесите име'\n'No records found': 'Нема пронађених резултата'\n'Last name': Презиме\nJabber: Jabber\nGeneral: Опште\n'First name': Име\nEmail: email\n'Delete author': 'Обриши аутора'\nContacts: Контакти\nBiography: Биографија\nAliases: Алијаси\nAIM: AIM\n'Search for authors': 'Претражи ауторе'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.sv.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.tr.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.uk.yml",
    "content": "'Translate from': 'Перкласти з:'\n'Total articles': 'Всього статей'\nSkype: Skype\n'Save All': 'Зберегти все'\nReset: Скинути\n'Please enter the last name': 'Будь ласка, введіть фамілію'\n'Please enter the first name': 'Будь ласка, введіть ім’я'\n'No records found': 'Записей не знайдено'\n'Last name': Фамілія\nJabber: Jabber\nGeneral: Загальне\n'First name': Ім’я\nEmail: Е-пошта\n'Delete author': 'Видалити автора'\nContacts: Контакти\nBiography: Біографія\nAliases: Псевдоніми\nAIM: АІМ\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.vi.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.zh.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/authors.zh_TW.yml",
    "content": "'Translate from': null\n'Total articles': null\nSkype: null\n'Save All': null\nReset: null\n'Please enter the last name': null\n'Please enter the first name': null\n'No records found': null\n'Last name': null\nJabber: null\nGeneral: null\n'First name': null\nEmail: null\n'Delete author': null\nContacts: null\nBiography: null\nAliases: null\nAIM: null\n'Search for authors': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.ar.yml",
    "content": "'You have reached the error page': 'لقد وصلت إلى صفحة الأخطاء'\n'Stack trace:': 'تتبع المكدس:'\n'Request Parameters:': 'متغيرات الطلب:'\n'Page not found': 'الصفحة غير موجودة'\n'Exception information:': 'معلومات عن الاستثناءات:'\n'Application error': 'خطأ التطبيق'\n'An error occurred': 'حدث خطأ.'\n'Newscoop has encountered a problem.': 'قد واجه نيوسكوب مشكلة.'\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': 'من أجل مساعدة فريق نيوسكوب في بحث وتحديد المسألة، يرجى التوقّف لحظة لوصف ما حدث.'\n'What were you trying to do when this happened?': 'ماذا كنت تحاول أن تفعل عندما حدث هذا؟'\n'Description:': 'الوصف:'\n'We are sorry for the inconvenience.': 'نحن متأسفون للإزعاج.'\n'Show error details': 'أظهر تفاصيل الخطأ'\n'Hide error details': 'أخف تفاصيل الخطأ'\n'Error Report': 'تقرير الخطأ'\n'Backtrace:': 'التتبع الى الوراء:'\n'Error ID:': 'هوية الخطأ:'\n'Error Message:': 'رسالة عن خطأ'\n'Error Number:': 'رقم الخطأ:'\n'Error String:': 'سلسلة الخطأ:'\n'Software:': البرامجيات\n'We are sorry, but there was a problem sending your bug report.': 'نعتذر، ولكن حدثت مشكلة في إرسال تقرير العلة الخاص بك.'\n'Simply copy and paste the error report below and send it to:': 'ببساطة إنسخ وإلصق تقرير الخطأ أدناه وأرسله إلى:'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.az.yml",
    "content": "'You have reached the error page': 'Xətalı səhifəyə daxil oldun'\n'Stack trace:': 'Xəta zolağı:'\n'Request Parameters:': 'Parametrlər üçün tələb göndər:'\n'Page not found': 'Səhifə tapılmadı'\n'Exception information:': 'İstisna məlumat:'\n'Application error': 'Proqram xətası'\n'An error occurred': 'Xəta baş verdi'\n'Newscoop has encountered a problem.': 'Newscoop problem ilə üzləşib.'\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': 'Newscoop komandasına dəstək olmaq məqsədilə baş vermiş hadisə haqqında yazmaq üçün bir neçə dəqiqəni istifadə edib izah verməlisən.'\n'What were you trying to do when this happened?': 'Bu baş verdikdə nə etməyi düşünürsən?'\n'Description:': 'İzah:'\n'We are sorry for the inconvenience.': 'Narahatlıq üçün üzr istəyirik.'\n'Show error details': 'Xəta məlumatlarını göstər'\n'Hide error details': 'Xəta məlumatlarını gizlə'\n'Error Report': 'Xəta Hesabatı:'\n'Backtrace:': 'Xəta yoxlaması:'\n'Error ID:': 'Xəta ID-si:'\n'Error Message:': 'Xəta Mesajı:'\n'Error Number:': 'Xəta Nömrəsi:'\n'Error String:': 'Xəta Cərgəsi:'\n'Software:': 'Proqram:'\n'We are sorry, but there was a problem sending your bug report.': 'Üzr istəyirik, amma sənin bloq hesabatının göndərilməsi ilə bağlı problem var idi.'\n'Simply copy and paste the error report below and send it to:': 'Sadəcə xəta hesabatını köçürüb aşağı yapışdır və bura göndər:'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.be.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': 'Campsite сутыкнуўся з праблемай.'\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': 'Для таго, каб дапамагчы камандзе Newscoop даследаваць і вызначыць прычыну непаладкі, калі ласка, апішыце, што адбылося падчас працы.'\n'What were you trying to do when this happened?': 'Якiя дзеяньнi Вы выконвалі, калi гэта адбылося?'\n'Description:': 'Апiсаньне:'\n'We are sorry for the inconvenience.': 'Прыносiм свае прабачэньні за нязручнасьці.'\n'Show error details': 'Паказаць падрабязнасьцi памылкi'\n'Hide error details': 'Схаваць падрабязнасьцi памылкi'\n'Error Report': 'Справаздача аб памылках'\n'Backtrace:': 'Зваротная трасіроўка:'\n'Error ID:': 'ID памылкi:'\n'Error Message:': 'Паведамленьне аб памылцы'\n'Error Number:': 'Нумар памылкі'\n'Error String:': 'Радок памылкі:'\n'Software:': 'Праграмнае забесьпячэньне'\n'We are sorry, but there was a problem sending your bug report.': 'На жаль, адбыўся збой пры адпраўцы Вашага паведамленьня аб памылцы.'\n'Simply copy and paste the error report below and send it to:': 'Проста скапiюйце i ўстаўце нiжэй справаздачу аб памылках i адпраўце яе ў:'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.bn.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.cs.yml",
    "content": "'You have reached the error page': 'Dostali jste se na stránku chyby'\n'Stack trace:': 'Stack trace:'\n'Request Parameters:': 'Požadované parametry:'\n'Page not found': 'Stránka nenalezena'\n'Exception information:': 'Vyjímečná informace:'\n'Application error': 'Chyba aplikace'\n'An error occurred': 'Objevila se chyba'\n'Newscoop has encountered a problem.': 'Campsite narazil na problém.'\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': 'Abyste pomohli týmu Newscoopu vyšetřit a indentifikovat problém, prosíme vyšetřete si chvliličku na to, abyste popsali, co se stalo.'\n'What were you trying to do when this happened?': 'Co jste se pokoušel udělat, když k tomuto došlo?'\n'Description:': 'Popis:'\n'We are sorry for the inconvenience.': 'Omlouváme se za potíže.'\n'Show error details': 'Zobrazit podrobnosti chyby'\n'Hide error details': 'Skrýt podrobnosti chyby'\n'Error Report': 'Chybové hlášení'\n'Backtrace:': 'Původ:'\n'Error ID:': 'ID Chyby:'\n'Error Message:': 'Chybová zpráva'\n'Error Number:': 'Číslo chyby:'\n'Error String:': 'Chybový řetězec:'\n'Software:': 'Software:'\n'We are sorry, but there was a problem sending your bug report.': 'Omlouváme se, ale vyskytl se problém při odesílání hlášení o chybě.'\n'Simply copy and paste the error report below and send it to:': 'Jednoduše zkopírujte a vložte chybové hlášení níže a odešlete na:'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.da.yml",
    "content": "'You have reached the error page': 'Du er havnet på fejl siden'\n'Stack trace:': 'Stack trace:'\n'Request Parameters:': 'Request Parametre:'\n'Page not found': 'Siden findes ikke'\n'Exception information:': 'Exception information:'\n'Application error': Programfejl\n'An error occurred': 'Der skete en fejl'\n'Newscoop has encountered a problem.': 'Newscoop er stødt på et problem.'\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': 'Beskriv hvad der skete. Det hjælper Newscoop holdet med at undersøge problemet og fastslå årsagen.'\n'What were you trying to do when this happened?': 'Hvad prøvede du at gøre da det skete?'\n'Description:': 'Beskrivelse:'\n'We are sorry for the inconvenience.': 'Vi beklager ulejligheden.'\n'Show error details': 'Vis information om fejlen'\n'Hide error details': 'Skjul information om fejlen'\n'Error Report': 'Fejl rapport'\n'Backtrace:': 'Backtrace:'\n'Error ID:': 'Fejl ID:'\n'Error Message:': 'Fejl besked:'\n'Error Number:': 'Fejl nummer:'\n'Error String:': 'Fejl streng:'\n'Software:': 'Software:'\n'We are sorry, but there was a problem sending your bug report.': 'Fejl rapporten kunne ikke sendes.'\n'Simply copy and paste the error report below and send it to:': 'Kopier nedenstående fejl rapport og send den til:'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.de.yml",
    "content": "'You have reached the error page': 'Sie sind auf der Fehlerseite angekommen'\n'Stack trace:': 'Stacktrace: '\n'Request Parameters:': 'Parameter anfordern: '\n'Page not found': 'Seite nicht gefunden'\n'Exception information:': 'Ausnahme Information:'\n'Application error': Anwendungsfehler\n'An error occurred': 'Es ist ein Fehler aufgetreten. '\n'Newscoop has encountered a problem.': 'Newscoop ist auf ein Problem gestoßen.'\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': 'Um dem Newscoop Team bei der Bearbeitung zu helfen, nehmen Sie sich bitte einen Moment Zeit um das Problem zu schildern.'\n'What were you trying to do when this happened?': 'Was wollten Sie gerade machen, als das Problem auftrat?'\n'Description:': 'Beschreibung:'\n'We are sorry for the inconvenience.': 'Wir entschuldigen uns für die Unannehmlichkeiten.'\n'Show error details': 'Fehlerdetails anzeigen'\n'Hide error details': 'Fehlerdetails verbergen'\n'Error Report': Fehlermeldung\n'Backtrace:': Zurückverfolgen\n'Error ID:': 'Fehler ID:'\n'Error Message:': 'Fehlernachricht:'\n'Error Number:': 'Fehlernummer:'\n'Error String:': 'Fehlereintrag:'\n'Software:': 'Software:'\n'We are sorry, but there was a problem sending your bug report.': 'Leider ist ein Problem bei der Übermittlung der Fehlermeldung aufgetreten.'\n'Simply copy and paste the error report below and send it to:': 'Einfach die Fehlermeldung unten kopieren und einfügen und senden an:'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.de_AT.yml",
    "content": "'You have reached the error page': 'Sie sind auf der Fehlerseite angekommen'\n'Stack trace:': 'Stacktrace: '\n'Request Parameters:': 'Parameter anfordern: '\n'Page not found': 'Seite nicht gefunden'\n'Exception information:': 'Ausnahme Information:'\n'Application error': Anwendungsfehler\n'An error occurred': 'Es ist ein Fehler aufgetreten. '\n'Newscoop has encountered a problem.': 'Newscoop ist auf ein Problem gestoßen.'\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': 'Um dem Newscoop Team bei der Bearbeitung zu helfen, nehmen Sie sich bitte einen Moment Zeit um das Problem zu schildern.'\n'What were you trying to do when this happened?': 'Was wollten Sie gerade machen, als das Problem auftrat?'\n'Description:': 'Beschreibung:'\n'We are sorry for the inconvenience.': 'Wir entschuldigen uns für die Unannehmlichkeiten.'\n'Show error details': 'Fehlerdetails anzeigen'\n'Hide error details': 'Fehlerdetails verbergen'\n'Error Report': Fehlermeldung\n'Backtrace:': Zurückverfolgen\n'Error ID:': 'Fehler ID:'\n'Error Message:': 'Fehlernachricht:'\n'Error Number:': 'Fehlernummer:'\n'Error String:': 'Fehlereintrag:'\n'Software:': 'Software:'\n'We are sorry, but there was a problem sending your bug report.': 'Leider ist ein Problem bei der Übermittlung der Fehlermeldung aufgetreten.'\n'Simply copy and paste the error report below and send it to:': 'Einfach die Fehlermeldung unten kopieren und einfügen und senden an:'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.el.yml",
    "content": "'You have reached the error page': 'Φτάσατε στη σελίδα σφάλματος'\n'Stack trace:': 'Stack trace:'\n'Request Parameters:': 'Παράμετροι Αιτημάτων:'\n'Page not found': 'Η σελίδα δεν βρέθηκε'\n'Exception information:': 'Πληροφορίες εξαίρεσης:'\n'Application error': 'Σφάλμα αίτησης'\n'An error occurred': 'Παρουσιάστηκε σφάλμα'\n'Newscoop has encountered a problem.': 'Το Campsite αντιμετώπισε κάποιο πρόβλημα.'\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': 'Για να βοηθήσετε την ομάδα Newscoop να εξετάσει και να εντοπίσει το ζήτημα, παρακαλούμε αφιερώστε λίγο χρόνο για να περιγράψετε τι συνέβη:'\n'What were you trying to do when this happened?': 'Τί προσπαθούσατε να κάνετε όταν αυτό συνέβη;'\n'Description:': 'Περιγραφή:'\n'We are sorry for the inconvenience.': 'Σας ζητάμε συγνώμη για την ταλαιπωρία.'\n'Show error details': 'Εμφάνιση λεπτομερειών σφάλματος'\n'Hide error details': 'Απόκρυψη λεπτομερειών σφάλματος'\n'Error Report': 'Αναφορά σφάλματος'\n'Backtrace:': 'Backtrace:'\n'Error ID:': 'ID Σφάλματος:'\n'Error Message:': 'Μήνυμα Σφάλματος:'\n'Error Number:': 'Αριθμός Σφάλματος:'\n'Error String:': 'Σειρά Σφάλματος:'\n'Software:': 'Λογισμικό:'\n'We are sorry, but there was a problem sending your bug report.': 'Σας ζητάμε συγνώμη, αλλά παρουσιάστηκε πρόβλημα κατά την αποστολή της αναφοράς σφάλματός σας.'\n'Simply copy and paste the error report below and send it to:': 'Απλώς αντιγράψτε και επικολλήστε την αναφορά σφάλματος και στείλτε την σε:'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.en.yml",
    "content": "'You have reached the error page': 'You have reached the error page'\n'Stack trace:': 'Stack trace:'\n'Request Parameters:': 'Request Parameters:'\n'Page not found': 'Page not found'\n'Exception information:': 'Exception information:'\n'Application error': 'Application error'\n'An error occurred': 'An error occurred'\n'Newscoop has encountered a problem.': 'Newscoop has encountered a problem.'\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': 'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.'\n'What were you trying to do when this happened?': 'What were you trying to do when this happened?'\n'Description:': 'Description:'\n'We are sorry for the inconvenience.': 'We are sorry for the inconvenience.'\n'Show error details': 'Show error details'\n'Hide error details': 'Hide error details'\n'Error Report': 'Error Report'\n'Backtrace:': 'Backtrace:'\n'Error ID:': 'Error ID:'\n'Error Message:': 'Error Message:'\n'Error Number:': 'Error Number:'\n'Error String:': 'Error String:'\n'Software:': 'Software:'\n'We are sorry, but there was a problem sending your bug report.': 'We are sorry, but there was a problem sending your bug report.'\n'Simply copy and paste the error report below and send it to:': 'Simply copy and paste the error report below and send it to:'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.en_GB.yml",
    "content": "'You have reached the error page': 'You have reached the error page'\n'Stack trace:': 'Stack trace:'\n'Request Parameters:': 'Request Parameters:'\n'Page not found': 'Page not found'\n'Exception information:': 'Exception information:'\n'Application error': 'Application error'\n'An error occurred': 'An error occurred'\n'Newscoop has encountered a problem.': 'Newscoop has encountered a problem.'\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': 'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.'\n'What were you trying to do when this happened?': 'What were you trying to do when this happened?'\n'Description:': 'Description:'\n'We are sorry for the inconvenience.': 'We are sorry for the inconvenience.'\n'Show error details': 'Show error details'\n'Hide error details': 'Hide error details'\n'Error Report': 'Error Report'\n'Backtrace:': 'Backtrace:'\n'Error ID:': 'Error ID:'\n'Error Message:': 'Error Message:'\n'Error Number:': 'Error Number:'\n'Error String:': 'Error String:'\n'Software:': 'Software:'\n'We are sorry, but there was a problem sending your bug report.': 'We are sorry, but there was a problem sending your bug report.'\n'Simply copy and paste the error report below and send it to:': 'Simply copy and paste the error report below and send it to:'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.es.yml",
    "content": "'You have reached the error page': 'Ha ingresado a la página de errores.'\n'Stack trace:': 'Ordenar rastro:'\n'Request Parameters:': 'Exigir Parámetros:'\n'Page not found': 'Página no encontrada'\n'Exception information:': 'Información de excepción:'\n'Application error': 'Error de aplicación'\n'An error occurred': 'Ocurrió un error.'\n'Newscoop has encountered a problem.': 'Campsite encontró un problema.'\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': 'A fin de que el equipo de Newscoop pueda investigar y determinar cuál fue el problema, por favor, tómese un momento para describir lo que ocurrió'\n'What were you trying to do when this happened?': '¿Qué estaba tratando de hacer cuando esto sucedió?'\n'Description:': 'Descripción:'\n'We are sorry for the inconvenience.': 'Nuestras disculpas por el inconveniente.'\n'Show error details': 'Mostrar detalles de error'\n'Hide error details': 'Oculte detalles de erro'\n'Error Report': 'Reporte de error'\n'Backtrace:': 'Backtrace:'\n'Error ID:': 'ID del error:'\n'Error Message:': 'Mensaje de error:'\n'Error Number:': 'Número de error:'\n'Error String:': 'String de error:'\n'Software:': 'Software:'\n'We are sorry, but there was a problem sending your bug report.': 'Lo sentimos pero hubo un problema al enviar su reporte de error.'\n'Simply copy and paste the error report below and send it to:': 'Solo copie y pegue el reporte de error abajo y envíelo a:'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.es_AR.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.fa.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.fa_AF.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.fr.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': 'Description:'\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.he.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.hr.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.hu.yml",
    "content": "'You have reached the error page': 'A hibaoldalra érkeztél'\n'Stack trace:': 'Veremkivonat:'\n'Request Parameters:': 'Kérelem paraméterei:'\n'Page not found': 'Az oldal nem található'\n'Exception information:': 'Kivétel adatai:'\n'Application error': Alkalmazáshiba\n'An error occurred': 'Hiba történt'\n'Newscoop has encountered a problem.': 'A Newscoop problémát észlelt.'\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': 'A Newscoop csapat munkájának a probléma elemzése és megtalálása elősegítése érdekében kérjük, szánjon egy percet arra, hogy leírja, mi történt.'\n'What were you trying to do when this happened?': 'Mit akart csinálni, amikor ez történt?'\n'Description:': 'Leírás:'\n'We are sorry for the inconvenience.': 'Elnézést kérünk a kellemetlenségért.'\n'Show error details': 'A hiba részleteinek megtekintése'\n'Hide error details': 'A hiba részleteinek elrejtése'\n'Error Report': 'Hiba bejelentése'\n'Backtrace:': 'Visszakövetés:'\n'Error ID:': 'Hibaazonosító:'\n'Error Message:': 'Hibaüzenet:'\n'Error Number:': 'Hiba száma:'\n'Error String:': 'Hibakarakterlánc:'\n'Software:': 'Szoftver:'\n'We are sorry, but there was a problem sending your bug report.': 'Sajnáljuk, probléma merült fel a hibabejelentés küldésekor.'\n'Simply copy and paste the error report below and send it to:': 'Egyszerűen csak másold a vágólapra és illeszd be alább a hibajelentést, majd küldd el erre a címre:'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.hy.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.hy_AM.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.id.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.it.yml",
    "content": "'You have reached the error page': 'Hai raggiunto una pagina di errore'\n'Stack trace:': 'Stack trace:'\n'Request Parameters:': 'Parametri richeisti:'\n'Page not found': 'Pagina non trovata'\n'Exception information:': 'Informazioni sulleccezione:'\n'Application error': 'Errore applicazione'\n'An error occurred': 'Un errore si e verificato'\n'Newscoop has encountered a problem.': 'Newscoop ha incontrato un problema.'\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': 'Per aiutare Newscoop ad investigare il problema, per favore compila questi dati.'\n'What were you trying to do when this happened?': 'Cosa cercavi di fare quando il problema si e verificato?'\n'Description:': 'Descrizione:'\n'We are sorry for the inconvenience.': 'Ci scusiamo per linconveniente.'\n'Show error details': 'Mostra i dettagli dellerrore'\n'Hide error details': 'Nascondi i dettagli dellerrore'\n'Error Report': 'Rapporto dellerrore'\n'Backtrace:': 'Backtrace:'\n'Error ID:': 'ID errore:'\n'Error Message:': 'Messaggio di errore:'\n'Error Number:': 'Errore numero:'\n'Error String:': 'Stringa errore:'\n'Software:': 'Software:'\n'We are sorry, but there was a problem sending your bug report.': 'Ci scusiamo, ma si e verificato un errore inviando il report di errore.'\n'Simply copy and paste the error report below and send it to:': 'Copia e incolla lerrore riportato qui sotto e invialo a:'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.ka.yml",
    "content": "'You have reached the error page': 'თქვენ გახსენით ხარვეზული გვერდი '\n'Stack trace:': 'ხარვეზის ჩვენება'\n'Request Parameters:': 'მოთხოვნის პარამეტრები:'\n'Page not found': 'გვერდი არ არის ნაპოვნი'\n'Exception information:': 'გამონაკლისი ინფორმაცია:'\n'Application error': 'აპლიკაციის შეცდომა'\n'An error occurred': 'დაფიქსირდა ხარვეზი'\n'Newscoop has encountered a problem.': 'ნიუსქუფმა დააფიქსირა პრობლემა'\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': 'იმისათვის რათა ნიუსქუფის გუნდმა შეძლოს პრობლემის გასწორება, გთხოვთ აღწეროთ თუ რა მოხდა.'\n'What were you trying to do when this happened?': 'რის გაკეთებას ცდილობდით როდესაც ეს მოხდა?'\n'Description:': 'აღწერა:'\n'We are sorry for the inconvenience.': 'ბოდიშს გიხდით შეფერხებისთვის.'\n'Show error details': 'შეცდომის დეტელაბის ჩვენება'\n'Hide error details': 'შეცდომის დეტალების დამალვა'\n'Error Report': 'შეცდომის აღრიცხვა'\n'Backtrace:': 'ხარვეზის ჩვენება'\n'Error ID:': 'შეცდომის ID:'\n'Error Message:': 'ხარვეზის შეტყობინება:'\n'Error Number:': 'ხარვეზის ნომერი:'\n'Error String:': 'ხარვეზების მწკრივი:'\n'Software:': 'კომპიუტერული პროგრამა'\n'We are sorry, but there was a problem sending your bug report.': 'შეცდომის მოხსენების გაგზავნისას დაფიქსირდა შეცდომა.'\n'Simply copy and paste the error report below and send it to:': 'აქ ჩასვით შეცდომის აღრიცხვა და გააგზავნეთ ამ მისამართზე:'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.ko.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.ku.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.lv.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.mr.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.nb_NO.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.nl.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.pa.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.pl.yml",
    "content": "'You have reached the error page': 'Trafiłeś na stronę błedu.'\n'Stack trace:': 'Stack trace:'\n'Request Parameters:': 'Request Parameters:'\n'Page not found': 'Nie znaleziono takiej strony'\n'Exception information:': 'Exception information:'\n'Application error': 'Błąd aplikacji'\n'An error occurred': 'Wystąpił błąd'\n'Newscoop has encountered a problem.': 'Newscoop napotkał błąd.'\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': 'Aby pomóc nam namierzyć błąd w Newscoop, poświęć chwilę i opisz dokładnie co się stało.'\n'What were you trying to do when this happened?': 'Co próbowałeś zrobić gdy wystąpił błąd?'\n'Description:': 'Opis:'\n'We are sorry for the inconvenience.': 'Przepraszamy za problem:'\n'Show error details': 'Pokaż szczegóły błedu'\n'Hide error details': 'Schowaj szczegóły błędu'\n'Error Report': 'Raport błędu'\n'Backtrace:': 'Backtrace:'\n'Error ID:': 'ID błędu:'\n'Error Message:': 'Wiadomość błędu:'\n'Error Number:': 'Numer błędu:'\n'Error String:': 'Wartość błędu:'\n'Software:': 'Oprogramowanie:'\n'We are sorry, but there was a problem sending your bug report.': 'Przepraszamy, ale wystąpił błąd przy wysyłaniu twojego zgłoszenia.'\n'Simply copy and paste the error report below and send it to:': 'Kopiuj i wklej raport błędu i wyślij do nas:'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.ps.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.pt.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.pt_BR.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.ro.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': 'Campsite a întâmpinat o problemă.'\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': 'Ce încercai să faci când a avut loc incidentul?'\n'Description:': 'Descriere:'\n'We are sorry for the inconvenience.': 'Ne pare rău pentru această neplăcere.'\n'Show error details': 'Arată detaliile erorii'\n'Hide error details': 'Ascunde detaliile erorii'\n'Error Report': 'Raportarea erorii'\n'Backtrace:': 'Traseul:'\n'Error ID:': 'ID-ul erorii:'\n'Error Message:': 'Mesajul de eroare:'\n'Error Number:': 'Numărul erorii:'\n'Error String:': 'String-ul erorii:'\n'Software:': 'Software:'\n'We are sorry, but there was a problem sending your bug report.': 'Ne pare rău, dar a apărut o problemă la trimiterea raportului.'\n'Simply copy and paste the error report below and send it to:': 'Copiază şi lipeşte raportul de mai jos al erorii şi trimite-l la:'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.ru.yml",
    "content": "'You have reached the error page': 'Страница ошибки'\n'Stack trace:': 'Отчет о записях активации:'\n'Request Parameters:': 'Параметры '\n'Page not found': 'Такой страницы не существует'\n'Exception information:': 'Информация об исключениях:'\n'Application error': 'Ошибка приложения'\n'An error occurred': 'Произошла ошибка'\n'Newscoop has encountered a problem.': 'Campsite столкнулся с проблемой.'\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': 'Для того, чтобы помочь команде Newscoop исследовать и определить причину неполадок, пожалуйста, опишите, что произошло в процессе работы.'\n'What were you trying to do when this happened?': 'Какие действия Вы выполняли, когда это произошло?'\n'Description:': 'Описание:'\n'We are sorry for the inconvenience.': 'Приносим свои извинения за неудобства.'\n'Show error details': 'Показать подробности ошибки'\n'Hide error details': 'Скрыть подробности ошибки'\n'Error Report': 'Отчет об ошибках'\n'Backtrace:': 'Обратная трассировка:'\n'Error ID:': 'ID ошибки:'\n'Error Message:': 'Сообщение об ошибке:'\n'Error Number:': 'Номер ошибки:'\n'Error String:': 'Строка ошибки:'\n'Software:': 'Программное обеспечение:'\n'We are sorry, but there was a problem sending your bug report.': 'Сожалеем, но произошел сбой при отправке вашего отчета об ошибке.'\n'Simply copy and paste the error report below and send it to:': 'Просто скопируйте и вставьте ниже отчет об ошибках и отправьте его в:'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.sh.yml",
    "content": "'You have reached the error page': 'Došli ste na stranu sa obaveštenjem o grešci'\n'Stack trace:': 'Trag (Stack trace)'\n'Request Parameters:': 'Parametri zahteva:'\n'Page not found': 'Strana nije pronađena'\n'Exception information:': 'Informacija o izuzetku:'\n'Application error': 'Greška u aplikaciji'\n'An error occurred': 'Došlo je do greške'\n'Newscoop has encountered a problem.': 'Kempsajt je naišao na problem.'\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': 'Da biste pomogli Newscoop timu da istraži i popravi ovu grešku, molimo dovojte koji trenutak da opišete šta se desilo'\n'What were you trying to do when this happened?': 'Šta ste pokušavali da uradite kada se ovo desilo?'\n'Description:': 'Opis:'\n'We are sorry for the inconvenience.': 'Žao nam je zbog neprijatnosti.'\n'Show error details': 'Prikaži detalje greške'\n'Hide error details': 'Sakri detalje o grešci'\n'Error Report': 'Prijava greške'\n'Backtrace:': 'Prethodne radnje:'\n'Error ID:': 'ID greške:'\n'Error Message:': 'Poruka o grešci:'\n'Error Number:': 'Broj greške:'\n'Error String:': 'Objašnjenje greške:'\n'Software:': 'Softver:'\n'We are sorry, but there was a problem sending your bug report.': 'Žao nam je, ali došlo je do problema pri slanju izveštaja o grešci.'\n'Simply copy and paste the error report below and send it to:': 'Jednostavno kopiraj/zalepi izveštaj o grešci dole i pošalji na:'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.sq.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.sr.yml",
    "content": "'You have reached the error page': 'дошли сте на страну са обавештењем о грешци'\n'Stack trace:': 'Траг (Stack trace)'\n'Request Parameters:': 'Параметри захтева:'\n'Page not found': 'Страна није пронађена'\n'Exception information:': 'Информација о изузетку'\n'Application error': 'Грешка у апликацији'\n'An error occurred': 'Дошло је до грешке'\n'Newscoop has encountered a problem.': 'Кемпсајт је наишао на проблем.'\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': 'Да бисте помогли Newscoop тиму да истражи и поправи ову грешку, молимо одвојите који тренутак да опишете шта се десило'\n'What were you trying to do when this happened?': 'Шта сте покушавали да урадите када се ово десило?'\n'Description:': 'Опис:'\n'We are sorry for the inconvenience.': 'Жао нам је због непријатности.'\n'Show error details': 'Прикажи детаље грешке'\n'Hide error details': 'Сакриј детаље о грешци'\n'Error Report': 'Пријава грешке'\n'Backtrace:': 'Претходне радње:'\n'Error ID:': ' ID грешке:'\n'Error Message:': 'Порука о грешци:'\n'Error Number:': 'Број грешке:'\n'Error String:': 'Објашњење грешке:'\n'Software:': 'Софтвер:'\n'We are sorry, but there was a problem sending your bug report.': 'Жао нам је, али дошло је до проблема при слању извештаја о грешци.'\n'Simply copy and paste the error report below and send it to:': 'Једноставно копирај/залепи извештај о грешци доле и пошаљи на:'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.sv.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.tr.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.uk.yml",
    "content": "'You have reached the error page': 'Ви потрапили на сторінику помилки'\n'Stack trace:': 'Трасування стека:'\n'Request Parameters:': 'Параметри запиту:'\n'Page not found': 'Сторінка не знайдена'\n'Exception information:': 'Відомості про виключення:'\n'Application error': 'Помилка програми'\n'An error occurred': 'Сталася помилка'\n'Newscoop has encountered a problem.': 'Newscoop зіткнувся з проблемою.'\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': 'Для того, щоб допомогти команді Newscoop розслідувати та виявити проблеми, будь ласка, знайдіть час, щоб описати, що сталося.'\n'What were you trying to do when this happened?': 'Що ви намагались зробити, коли це сталося?'\n'Description:': 'Опис:'\n'We are sorry for the inconvenience.': 'Приносимо вибачення за причинені незручності.'\n'Show error details': 'Показати деталі помилки'\n'Hide error details': 'Сховати деталі помилки'\n'Error Report': 'Повідомити про помилку'\n'Backtrace:': 'Зворотнє стеження'\n'Error ID:': 'ID Помилки:'\n'Error Message:': 'Повідомлення помилки:'\n'Error Number:': 'Номер помилки:'\n'Error String:': 'Рядок помилки:'\n'Software:': 'ПЗ:'\n'We are sorry, but there was a problem sending your bug report.': 'Ми шкодуємо, але виникла проблема відправки звіту про помилку.'\n'Simply copy and paste the error report below and send it to:': 'Просто скопіюйте та вставте звіт про помилку нижче, і відправити її за адресою:'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.vi.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.zh.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/bug_reporting.zh_TW.yml",
    "content": "'You have reached the error page': null\n'Stack trace:': null\n'Request Parameters:': null\n'Page not found': null\n'Exception information:': null\n'Application error': null\n'An error occurred': null\n'Newscoop has encountered a problem.': null\n'In order to help the Newscoop team investigate and pinpoint the issue please take a moment to describe what happened.': null\n'What were you trying to do when this happened?': null\n'Description:': null\n'We are sorry for the inconvenience.': null\n'Show error details': null\n'Hide error details': null\n'Error Report': null\n'Backtrace:': null\n'Error ID:': null\n'Error Message:': null\n'Error Number:': null\n'Error String:': null\n'Software:': null\n'We are sorry, but there was a problem sending your bug report.': null\n'Simply copy and paste the error report below and send it to:': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.ar.yml",
    "content": "'No attachment': null\nat: في\n'With no attachment': 'بلا مرفق'\n'With image attachment': 'بمرفق صورة'\n'With document attachment': 'بمرفق وثيقة'\n'Unable to reach Newscoop. Please check your internet connection.': 'غير قادر على الوصول إلى نيوسكوب. يرجى التحقق من اتصالك بالإنترنت.'\nStarred: 'بعلامة نجمية'\nStar: 'علامة نجمية'\n'Showing _START_ to _END_ of _TOTAL_ entries': 'قيد العرض _START_ لـ_END_ من _TOTAL_ إدخالات'\n'Reply to message': 'الرد على الرسالة'\nReply: رد\nProcessed: 'تم المعالجة'\n'No records found.': 'لم يتم العثور على سجلات.'\n'No entries to show': 'لا إدخالات من أجل الإظهار'\n'Messages updated.': 'تم تحديث الرسائل.'\n'Messages status change to $1.': 'تتغير حالة الرسائل الى $1.'\n'Messages deleted.': 'تم حذف الرسائل.'\n'Message updated.': 'تم تحديث الرسالة.'\n'Message status change to $1.': 'تتغير حالة الرسالة الى $1 .'\n'Message deleted.': 'تم حذف الرسالة'\nMessage: الرسالة\nLast: الأخير\n'Full article': 'المقالة الكاملة'\nFirst: الأول\n'Feedback Messages': 'رسائل التغذية المرتدة'\n'Display _MENU_ records': 'إعرض سجلات من _MENU_'\nDeleted: 'تم الحذف'\n'Change selected messages status': 'تغيير حالة الرسائل المحددة'\nAttachment: المرفق\nApproved.: 'موافق عليه'\nApprove: الموافقة\nAnonymous: null\n' - filtering from _MAX_ records': '- قيد التصفية من السجلات _MAX_'\n'You are about to permanently delete multiple messages.': 'توشك أن تحذف رسائل متعددة بشكل دائم ـ'\n'You are about to permanently delete a message.': 'توشك أن تحذف رسالة بشكل دائم ـ'\nUser: المستخدم\nNone: 'لا شيء'\n'Coming from': 'قادماً من'\n'Ban/Unban user': 'حظر / إزالة حظر المستخدم'\nIp: 'بروتوكول الإنترنت (IP)'\n'Bans can be applied to a users name, email address or IP address.': 'يمكن تطبيق التحريمات على اسم المستخدم، عنوانه البريد الإلكتروني أو عنوانه IP.'\n'You are about to permanently delete multiple comments.': 'توشك أن تحذف تعليقات متعددة بشكل دائم.'\n'You are about to permanently delete a comment.': 'توشك أن تحذف تعليقاًت بشكل دائم.'\nWebsite: 'موقع إلكتروني'\n'Value is not $1 characters long': 'ليست القيمة $1 حروف'\nUsername: 'اسم المستخدم'\n'User id': 'هوية المستخدم'\n'User ban settings': 'إعدادات حظر المستخدمين '\n'Update comment': 'حدّث التعليق'\nUnrecommended: 'تم إلغاء التوصية'\nUnrecommend: 'إلغاء التوصية'\n'Subject is not $1 characters long': 'ليس الموضوع $1 حروف'\n'Sort by Thread order': 'إرتب من خلال ترتيب المناقشة'\n'Show parent comment': 'أظهر التعليق الأصلي'\n'Show commenter details': 'أظهر تفاصيل المعلق'\n'Show commenter': 'أظهر المعلق'\n'Show comment user details': 'أظهر تفاصيل المستخدم للتعليق'\n'Show comment user': 'أظهر مستخدم التعليق'\n'Show comment details': 'أظهر تفاصيل التعليق'\n'Select status': 'حدد الحالة'\n'Search Type': 'نوع البحث'\n'Reply to comment': 'الرد على التعليق'\nRecommended: 'موصى به'\nRecommend: 'قم بالتوصية'\n'Quick edit': 'التعديل السريع'\nParent: أصل\nID: هوية\n'Go to edit article': 'إذهب إلى تعديل المقال'\nForum: 'المنتدى للنقاش'\n'For Column': للعمود\nEmail: 'بريد إلكتروني'\n'Edit acceptance criteria': 'عدل معايير القبول'\nE-mail: 'البريد الإلكتروني '\n'Delete all comments?': 'إحذف جميع التعليقات؟'\n'Date Created': 'تم انشاء التاريخ'\n'Comments updated.': 'تم تحديث التعليقات'\n'Comments status change to $1.': 'تغيير حالة التعليقات الى $1.'\n'Comments deleted.': 'تم حذف التعليقات'\n'Commenter $1 saved.': 'تم حفظ المعلق $1.'\n'Commenter $1 deleted.': 'تم حذف المعلق $1.'\nCommenter: المعلق\n'Comment updated.': 'تم تحديث التعليق.'\n'Comment status change to $1.': 'تغيير حالة التعليق الى $1.'\n'Comment id': 'رقم التعليق'\n'Comment deleted.': 'تم حذف التعليق.'\n'Comment delete by $1 from the article $2 ($3)': 'تم حذف التعليق من $1 من المقال $2 ($3)'\n'Comment Acceptance': 'قبول التعليق'\n'Comment $4 by $1 in the article $2 ($3)': 'التعليق $4 من $1 في المقال $2 ($3)'\n'Comment $1 saved.': 'تم الحفظ التعليق $1.'\nColumn: العمود\n'Change subscriber information': 'تغيير معلومات المشترك'\n'Ban for commenter $1 saved.': 'تم حفظ تحريم للمعلق $1.'\nBan: تحريم\n'Are you sure you want to do it?': 'هل أنت متأكد أنك تريد المواصلة؟'\n'Add rating': 'أضف تقييم'\n'Add new comment commenter': 'أضف معلق جديد'\n'Add new comment': 'أضف تعليق جديد'\n'Add new acceptance criteria': 'أضف معايير القبول الجديدة'\n'Acceptance $1 saved.': 'تم حفظ القبول $1.'\n'Acceptance $1 deleted.': 'تم حذف القبول $1.'\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.az.yml",
    "content": "'No attachment': 'Əlavə edilmiş fayl yoxdur'\nat: burada\n'With no attachment': 'Əlavə faylsız'\n'With image attachment': 'Şəkil əlavəsi ilə'\n'With document attachment': 'Sənəd əlavəsi ilə'\n'Unable to reach Newscoop. Please check your internet connection.': 'Newscoop-a keçmək mümkün deyil. Lütfən, internet bağlantını yoxla.'\nStarred: Ulduzlu\nStar: Ulduz\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Ümumilikdə _TOTAL_ girişin _START_-dan/dən _END_-a/ə qaydasında nümayişi'\n'Reply to message': 'Mesaja cavab yaz'\nReply: 'Cavab yaz'\nProcessed: 'İcra edildi'\n'No records found.': 'Yazı tapılmadı.'\n'No entries to show': 'Nümayiş üçün giriş yoxdur'\n'Messages updated.': 'Mesajlar yeniləndi.'\n'Messages status change to $1.': 'Mesajların statusu $1 olaraq təyin edildi.'\n'Messages deleted.': 'Mesajlar silindi.'\n'Message updated.': 'Mesaj yeniləndi.'\n'Message status change to $1.': 'Mesaj statusu $1 olaraq təyin edildi.'\n'Message deleted.': 'Mesaj silindi.'\nMessage: Mesaj\nLast: Son\n'Full article': 'Tam məqalə'\nFirst: İlk\n'Feedback Messages': 'Rəy Mesajları'\n'Display _MENU_ records': '_MENU_ yazılarını göstər'\nDeleted: Silindi\n'Change selected messages status': 'Seçilmiş mesajların statusunu dəyiş'\nAttachment: 'Əlavə fayl'\nApproved.: Təsdiqləndi.\nApprove: 'Təsdiq et'\nAnonymous: Anonim\n' - filtering from _MAX_ records': '- _MAX_ yazılarından filtrləmə'\n'You are about to permanently delete multiple messages.': 'Çoxsaylı mesajları həmişəlik silmək ərəfəsindəsən.'\n'You are about to permanently delete a message.': 'Mesajı həmişəlik silmək ərəfəsindəsən.'\nUser: İstifadəçi\nNone: 'Heç biri'\n'Coming from': 'Göndərənin ünvanı'\n'Ban/Unban user': 'İstifadəçini Kilidlə/Kilidini Aç'\nIp: Ip\n'Bans can be applied to a users name, email address or IP address.': 'Kilid istifadəçi adı, email ünvan və IP ünvana tətbiq edilə bilər.'\n'You are about to permanently delete multiple comments.': 'Çoxsaylı şərhləri həmişəlik silmək ərəfəsindəsən.'\n'You are about to permanently delete a comment.': 'Şərhi həmişəlik silmək ərəfəsindəsən.'\nWebsite: Vebsayt\n'Value is not $1 characters long': 'Dəyər $1 uzunluqda işarədən ibarət deyil'\nUsername: 'İstifadəçi adı'\n'User id': 'İstifadəçi Id-si'\n'User ban settings': 'İstifadəçi kilid parametrləri'\n'Update comment': 'Şərhi yenilə'\nUnrecommended: 'Tövsiyyə Edilmədi'\nUnrecommend: 'Tövsiyyə Etmə'\n'Subject is not $1 characters long': 'Başlıq $1 uzunluqda işarədən ibarət deyil'\n'Sort by Thread order': 'Keçid sıralaması ilə yerləşdir'\n'Show parent comment': 'Mənbə şərhi göstər'\n'Show commenter details': 'Şərh edənin məlumatlarını göstər'\n'Show commenter': 'Şərh edəni göstər'\n'Show comment user details': 'Şərhin istifadəçisinin məlumatlarını göstər'\n'Show comment user': 'Şərhin istifadəçisini göstər'\n'Show comment details': 'Şərh məlumatlarını göstər'\n'Select status': 'Status seç'\n'Search Type': 'Axtarış Növü'\n'Reply to comment': 'Şərhə cavab yaz'\nRecommended: 'Tövsiyyə Olunur'\nRecommend: 'Tövsiyyə Et'\n'Quick edit': 'Tez dəyiş'\nParent: Mənbə\nID: ID\n'Go to edit article': 'Məqaləni dəyişməyə keç'\nForum: Forum\n'For Column': 'Sütun Üçün'\nEmail: Email\n'Edit acceptance criteria': 'Qəbul kriteriyasını dəyiş'\nE-mail: E-mail\n'Delete all comments?': 'Şərhlərin hamısını silirsən?'\n'Date Created': 'Məlumat Yaradıldı'\n'Comments updated.': 'Şərhlər yeniləndi.'\n'Comments status change to $1.': 'Şərhlərin statusunu $1 olaraq təyin et.'\n'Comments deleted.': 'Şərhlər silindi.'\n'Commenter $1 saved.': '$1 şərh sahibi saxlandı.'\n'Commenter $1 deleted.': '$1 şərh sahibi silindi.'\nCommenter: 'Şərh sahibi'\n'Comment updated.': 'Şərh yeniləndi.'\n'Comment status change to $1.': 'Şərh statusu $1 olaraq təyin edilir.'\n'Comment id': 'Şərh Id-si'\n'Comment deleted.': 'Şərh silindi.'\n'Comment delete by $1 from the article $2 ($3)': 'Şərh $2 ($3) məqaləsindən $1 tərəfindən silindi'\n'Comment Acceptance': 'Şərhin Qəbulu'\n'Comment $4 by $1 in the article $2 ($3)': '$2 ($3) məqaləsində $1 tərəfindən $4 şərhi'\n'Comment $1 saved.': '$1 şərhi saxlandı.'\nColumn: Sütun\n'Change subscriber information': 'Abunə məlumatını dəyiş'\n'Ban for commenter $1 saved.': '$1 şərhçisi üçün kilid saxlandı.'\nBan: Kilid\n'Are you sure you want to do it?': 'Bunu etmək istədiyinə əminsən?'\n'Add rating': 'Qiymət əlavə et'\n'Add new comment commenter': 'Yeni şərhçi əlavə et'\n'Add new comment': 'Yeni şəth əlavə et'\n'Add new acceptance criteria': 'Yeni qəbul kriteriyası əlavə et'\n'Acceptance $1 saved.': '$1 təhvili saxlandı.'\n'Acceptance $1 deleted.': '$1 təhvili silindi.'\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.be.yml",
    "content": "'No attachment': null\nat: на\n'With no attachment': 'Без ўкладання'\n'With image attachment': 'З прыкладзенай выявай'\n'With document attachment': 'З прыкладзеным дакументам'\n'Unable to reach Newscoop. Please check your internet connection.': 'Немагчыма звязацца з Newscoop. Калі ласка, праверце ваша інтэрнэт-злучэнне.'\nStarred: 'Пазначаныя зорачкай'\nStar: Зорачка\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Паказаныя _START_ да _END_ / _TOTAL_ запісаў'\n'Reply to message': 'Адказаць на паведамленне'\nReply: Адказ\nProcessed: Апрацаванае\n'No records found.': 'Не абрана ніводная з запісаў'\n'No entries to show': 'Няма запісаў для прагляду'\n'Messages updated.': 'Паведамленні абноўленыя'\n'Messages status change to $1.': 'Статус паведамлення зменены на $1.'\n'Messages deleted.': 'Паведамленні выдаленыя.'\n'Message updated.': 'Паведамленне абноўленае'\n'Message status change to $1.': 'Статус паведамлення зменены на $1.'\n'Message deleted.': 'Паведамленне выдаленае.'\nMessage: Паведамленне\nLast: Апошнi\n'Full article': 'Увесь тэкст артыкула'\nFirst: Першы\n'Feedback Messages': 'Адказ на паведамленні'\n'Display _MENU_ records': 'Адлюстраваць _MENU_ запісы'\nDeleted: Выдаленае\n'Change selected messages status': 'Змяніць статус выдзеленых паведамленняў'\nAttachment: 'Прымацаваны файл'\nApproved.: Зацверджана\nApprove: Зацвердзіць\nAnonymous: null\n' - filtering from _MAX_ records': 'фільтраванне ад _MAX_ запісаў'\n'You are about to permanently delete multiple messages.': 'Вы прыйшлі на старонку, каб назаўсёды выдаліць шматлікія паведамленні.'\n'You are about to permanently delete a message.': 'Вы прыйшлі на старонку, каб выдаліць паведамленне.'\nUser: Карыстальнік\nNone: Ніводная\n'Coming from': Адпраўлена\n'Ban/Unban user': 'Забараніць/дазволіць карыстальніку камэнтаваць'\nIp: ' Ip'\n'Bans can be applied to a users name, email address or IP address.': 'Забараніць камэнтаваць можна па імені карыстальніка, email альбо IP адрасе.'\n'You are about to permanently delete multiple comments.': 'Вы збіраецеся канчаткова выдаліць каментары.'\n'You are about to permanently delete a comment.': 'Вы збіраецеся канчаткова выдаліць каментары.'\nWebsite: Web-сайт.\n'Value is not $1 characters long': 'Значэнне не змяшчае $ знакаў'\nUsername: 'Імя карыстальніка'\n'User id': 'id карыстальніка'\n'User ban settings': 'Налады забароны на каментары'\n'Update comment': 'Аднавіць каментары'\nUnrecommended: 'Не рэкамендуецца'\nUnrecommend: 'Не рэкамендаваць'\n'Subject is not $1 characters long': 'Тэма не змяшчае $ 1 знакаў'\n'Sort by Thread order': 'Сартаваць па парадку паведамленняў'\n'Show parent comment': 'Паказаць пачатковы каментар'\n'Show commenter details': 'Паказаць інфармацыю аб каментатары'\n'Show commenter': 'Паказаць каментатара'\n'Show comment user details': 'Паказаць дадзеныя'\n'Show comment user': 'Паказаць карыстальніка каментара'\n'Show comment details': 'Паказаць інфармацыю аб каментары'\n'Select status': 'Абраць статус'\n'Search Type': 'Шукаць тып'\n'Reply to comment': 'Адказаць на камэнтар'\nRecommended: Рэкамендуецца\nRecommend: Рэкамендаваць\n'Quick edit': 'Хуткае рэдагаванне'\nParent: Крыніца\nID: ID\n'Go to edit article': 'Перайсці да рэдагуемага артыкулу'\nForum: Форум\n'For Column': 'Для калёнкі'\nEmail: Email\n'Edit acceptance criteria': 'Рэдагаваць крытэрыі дапушчальнасці'\nE-mail: E-mail\n'Delete all comments?': 'Выдаліць усе каментары?'\n'Date Created': 'Дата створаная'\n'Comments updated.': 'Каментары абноўленыя.'\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': 'Каментар абноўлены.'\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: Забаронены\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.bn.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: null\n'Full article': null\nFirst: null\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: null\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.cs.yml",
    "content": "'No attachment': 'Žádná příloha'\nat: na\n'With no attachment': 'Bez přílohy'\n'With image attachment': 'S přílohou obrázku'\n'With document attachment': 'S přílohou dokumentu'\n'Unable to reach Newscoop. Please check your internet connection.': 'Nepodařilo se spojit s Newscoop. Zkontrolujte prosím své připojení k internetu.'\nStarred: 'S hvězdičkou'\nStar: Hvězda\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Ukázat _START_ až _END_ z _TOTAL_ záznamů'\n'Reply to message': 'Odpovědět na zprávu'\nReply: Odpovědět\nProcessed: Zpracováno\n'No records found.': 'Nebyly nalezeny žádné záznamy.'\n'No entries to show': 'Nejsou zde žádné příspěvky k zobrazení'\n'Messages updated.': 'Zprávy aktualizovány'\n'Messages status change to $1.': 'Statu zpráv změněn na  $1'\n'Messages deleted.': 'Zprávy vymazány'\n'Message updated.': 'Zpráva aktualizována'\n'Message status change to $1.': 'Status zprávy změněn na  $1'\n'Message deleted.': 'Zpráva vymazána'\nMessage: Zpráva;\nLast: Poslední\n'Full article': 'Celý článek'\nFirst: První\n'Feedback Messages': 'Feedback zpráv'\n'Display _MENU_ records': 'Zobrazit _MENU_ záznamy'\nDeleted: Vymazat\n'Change selected messages status': 'Změnit statu vybraným zprávám'\nAttachment: Příloha\nApproved.: Schváleno\nApprove: Schválit\nAnonymous: Anonymní\n' - filtering from _MAX_ records': '- filtrováno z _MAX_ záznamů'\n'You are about to permanently delete multiple messages.': 'Chystáte se trvale vymazat hromadné zprávy'\n'You are about to permanently delete a message.': 'Chystáte se permanentně vymazat zprávu'\nUser: Uživatel\nNone: Žádné\n'Coming from': 'Přichází od '\n'Ban/Unban user': 'Zakázat/Obnovit uživatele'\nIp: IP\n'Bans can be applied to a users name, email address or IP address.': 'Zákazy mohou být aplikované na uřivatelské jméno, emailovou nebo IP adresu.'\n'You are about to permanently delete multiple comments.': 'Právě se chystáte permanentně vymazat hromadné komentáře.'\n'You are about to permanently delete a comment.': 'Právě se chystáte permanentně vymazat komentář.'\nWebsite: 'Webová stránka'\n'Value is not $1 characters long': 'Hodnota není $1 znaků dlouhá'\nUsername: 'Uživatelské jméno'\n'User id': 'Uživatelské ID'\n'User ban settings': 'Nastavení zákazu pro uživatele'\n'Update comment': 'Aktualizovat komentář'\nUnrecommended: Nedoproučený\nUnrecommend: Nedoporučeno\n'Subject is not $1 characters long': 'Předmět není $1 charakterů dlouhý'\n'Sort by Thread order': 'Seřadit podle vláken'\n'Show parent comment': 'Ukázat ústřední komentář'\n'Show commenter details': 'Ukázat detail komentátora'\n'Show commenter': 'Ukázat komentátora'\n'Show comment user details': 'Ukázat detail komentátora'\n'Show comment user': 'Ukázat komentujícího uživatel'\n'Show comment details': 'Ukázat detaily komentáře'\n'Select status': 'Vybrat status'\n'Search Type': 'Vyhledat typ'\n'Reply to comment': 'Odpovědět na komentář'\nRecommended: Doporučené\nRecommend: Doporučeno\n'Quick edit': 'Rychlá editace '\nParent: Ústřední\nID: ID\n'Go to edit article': 'Jděte upravit článek'\nForum: Fórum\n'For Column': 'Pro odstavec'\nEmail: Email\n'Edit acceptance criteria': 'Upravit kritéria pro přijetí'\nE-mail: Email\n'Delete all comments?': 'Vymazat všechny komentáře?'\n'Date Created': 'Datum vytvořeno'\n'Comments updated.': 'Komentáře jsou aktualizovány.'\n'Comments status change to $1.': 'Status komentářů změněno na $1.'\n'Comments deleted.': 'Komentáře vymazány.'\n'Commenter $1 saved.': 'Komentátor $1 uložen.'\n'Commenter $1 deleted.': 'Komentátor $1 vymazán.'\nCommenter: Komentátor\n'Comment updated.': 'Komentář aktualizován.'\n'Comment status change to $1.': 'Status komentáře změněn na $1.'\n'Comment id': 'ID komentáře'\n'Comment deleted.': 'Komentář vymazán.'\n'Comment delete by $1 from the article $2 ($3)': 'Komentář vymazán $1 z článku $2 ($3)'\n'Comment Acceptance': 'Přijetí komentáře'\n'Comment $4 by $1 in the article $2 ($3)': 'Komentář $4'\n'Comment $1 saved.': 'Komentář $1 uložen.'\nColumn: 'Odstavec '\n'Change subscriber information': 'Změna informací registrovaného'\n'Ban for commenter $1 saved.': 'Zákaz pro komentátora $1 uloženo.'\nBan: Zakázat\n'Are you sure you want to do it?': 'Jste si jisti, že to chcete udělat?'\n'Add rating': 'Přidat hodnocení'\n'Add new comment commenter': 'Přidat nový komentář'\n'Add new comment': 'Přidat nový komentář'\n'Add new acceptance criteria': 'Přidat nová kritéria pro přijetí'\n'Acceptance $1 saved.': 'Akceptace $1 uložena.'\n'Acceptance $1 deleted.': 'Akceptace $1 vymazána.'\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.da.yml",
    "content": "'No attachment': 'Ingen vedhæfning'\nat: på\n'With no attachment': 'Uden vedhæftninger'\n'With image attachment': 'Med vedhæftet billede'\n'With document attachment': 'Med vedhæftet dokument'\n'Unable to reach Newscoop. Please check your internet connection.': 'Ingen kontakt til Newscoop. Tjek at du har forbindelse til internettet.'\nStarred: Stjernemarkeret\nStar: Stjernemarkér\n'Showing _START_ to _END_ of _TOTAL_ entries': 'VISER _START_ til _END_ af _TOTAL_ opslag'\n'Reply to message': 'Send svar'\nReply: Svar\nProcessed: Behandlet\n'No records found.': 'Ingen opslag.'\n'No entries to show': 'Intet at vise'\n'Messages updated.': 'Beskeder opdateret.'\n'Messages status change to $1.': 'Beskeders status ændret til $1.'\n'Messages deleted.': 'Beskeder slettet.'\n'Message updated.': 'Besked opdateret.'\n'Message status change to $1.': 'Beskeds status ændret til $1.'\n'Message deleted.': 'Besked slettet.'\nMessage: Besked\nLast: Sidste\n'Full article': 'Fuld artikel'\nFirst: Første\n'Feedback Messages': 'Feedback beskeder'\n'Display _MENU_ records': 'Vis _MENU_ opslag'\nDeleted: Slettet\n'Change selected messages status': 'Skift status for valgte beskeder'\nAttachment: Vedhæftning\nApproved.: Godkendt.\nApprove: Godkend\nAnonymous: Anonym\n' - filtering from _MAX_ records': '- filtreret fra _MAX_ opslag'\n'You are about to permanently delete multiple messages.': 'Du er ved at slette flere meddelelser permanent.'\n'You are about to permanently delete a message.': 'Du er ved at slette nen meddelelse permanent.'\nUser: Bruger\nNone: Ingen\n'Coming from': Fra\n'Ban/Unban user': 'Bloker/afbloker bruger'\nIp: IP\n'Bans can be applied to a users name, email address or IP address.': 'Du kan blokere et brugernavn, en email adresse eller en IP adresse.'\n'You are about to permanently delete multiple comments.': 'Du er ved at slette adskillige kommentarer permanent.'\n'You are about to permanently delete a comment.': 'Du er ved at slette en kommentar permanent.'\nWebsite: Website\n'Value is not $1 characters long': 'Værdien er ikke $1 tegn lang'\nUsername: Brugernavn\n'User id': 'Bruger id'\n'User ban settings': 'Indstillinger for blokering af brugere'\n'Update comment': 'Opdater kommentar'\nUnrecommended: 'Ikke anbefalet'\nUnrecommend: 'Anbefal ikke'\n'Subject is not $1 characters long': 'Emnet er ikke $1 tegn langt'\n'Sort by Thread order': 'Sorter efter tråd'\n'Show parent comment': 'Vis ovenstående kommentar'\n'Show commenter details': 'Vis info om debattør'\n'Show commenter': 'Vis debattør'\n'Show comment user details': 'Vis bruger info for kommentar'\n'Show comment user': 'Vis bruger for kommentar'\n'Show comment details': 'Vis info om kommentar'\n'Select status': 'Vælg status'\n'Search Type': 'Søg type'\n'Reply to comment': 'Svar på komentaren'\nRecommended: Anbefalet\nRecommend: Anbefalet\n'Quick edit': 'Hurtig redigering'\nParent: Forælder\nID: ID\n'Go to edit article': 'Rediger artikel'\nForum: Forum\n'For Column': 'Til kolonne'\nEmail: Email\n'Edit acceptance criteria': 'Rediger godkendelseskriterier'\nE-mail: E-mail\n'Delete all comments?': 'Slet alle kommentarer?'\n'Date Created': Oprettelsesdato\n'Comments updated.': 'Kommentarer opdateret'\n'Comments status change to $1.': 'Kommentar status ændret til $1'\n'Comments deleted.': 'Kommentarer slettet'\n'Commenter $1 saved.': 'Debattør $1 gemt.'\n'Commenter $1 deleted.': 'Debattør $1 slettet.'\nCommenter: Debattør\n'Comment updated.': 'Kommentaren er opdateret.'\n'Comment status change to $1.': 'Kommentar status ændret til $1.'\n'Comment id': 'Kommentar id'\n'Comment deleted.': 'Kommentar slettet.'\n'Comment delete by $1 from the article $2 ($3)': '$1 har slettet kommentar fra artiklen $2 ($3)'\n'Comment Acceptance': Kommentargodkendelse\n'Comment $4 by $1 in the article $2 ($3)': 'Kommentar $4 af $1 i artiklen $2 ($3)'\n'Comment $1 saved.': 'Kommentar $1 gemt.'\nColumn: Kolonne\n'Change subscriber information': 'Ret abonnent information'\n'Ban for commenter $1 saved.': 'Blokering af debattør $1 blev gemt.'\nBan: Bloker\n'Are you sure you want to do it?': 'Er du sikker på det er det du vil?'\n'Add rating': 'Tilføj bedømmelse'\n'Add new comment commenter': 'Tilføj debattør'\n'Add new comment': 'Tilføj kommentar'\n'Add new acceptance criteria': 'Tilføj godkendelseskriterie'\n'Acceptance $1 saved.': 'Godkendelse $1 gemt.'\n'Acceptance $1 deleted.': 'Godkendelse $1 slettet.'\neditorial:\n    alert:\n        toolong: 'Beskedden er for lang.'\n        added: 'Kommentaren blev tilføjet.'\n        edited: 'Kommentaren blev opdateret.'\n        resolved: null\n        deleted: 'Kommentaren blev slettet.'\n    btn:\n        send: Send\n        cancel: Annullér\n        resolve: null\n        save: Gem\n        edit: Rediger\n        delete: Slet\n        reply: Svar\n    label:\n        title: 'Redaktionelle kommentar'\n        post: 'Skriv en ny kommentar'\n        reply: Svar...\n        nocomments: 'Ingen kommentarer endnu.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.de.yml",
    "content": "'No attachment': 'Kein Anhang'\nat: auf\n'With no attachment': 'Ohne Anhang'\n'With image attachment': 'Mit angehängtem Bild '\n'With document attachment': 'Mit angehängtem Dokument'\n'Unable to reach Newscoop. Please check your internet connection.': 'Die Verbindung zu Newscoop kann nicht hergestellt werden. Bitte überprüfen Sie ihre Internetverbindung. '\nStarred: 'Mit Stern versehen'\nStar: Stern\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Zeige _START_ bis _END_ von _TOTAL_ Einträgen'\n'Reply to message': 'Auf Nachricht antworten'\nReply: Antworten\nProcessed: Verarbeitet\n'No records found.': 'Keine Angaben gefunden.'\n'No entries to show': 'Keine Einträge zum Anzeigen gefunden.'\n'Messages updated.': 'Nachrichten aktualisiert. '\n'Messages status change to $1.': 'Status der Nachrichen ändern zu $1.'\n'Messages deleted.': 'Nachrichten gelöscht. '\n'Message updated.': 'Nachricht aktualisiert. '\n'Message status change to $1.': 'Status der Nachricht ändern zu $1.'\n'Message deleted.': 'Nachrichten gelöscht. '\nMessage: Nachricht\nLast: Letzte\n'Full article': 'Ganzer Artikel'\nFirst: Erste\n'Feedback Messages': 'Feedback Nachricht'\n'Display _MENU_ records': 'Anzeigen _MENU_ Einträge'\nDeleted: Gelöscht\n'Change selected messages status': 'Status der ausgewählten Nachrichen ändern.'\nAttachment: Anhang\nApproved.: 'Genehmigt. '\nApprove: Genehmigen\nAnonymous: Anonym\n' - filtering from _MAX_ records': ' - filtert aus _MAX_ Einträgen '\n'You are about to permanently delete multiple messages.': 'Sie sind im Begriff mehrere Nachrichten permanent zu löschen. '\n'You are about to permanently delete a message.': 'Sie sind im Begriff eine Nachricht permanent zu löschen. '\nUser: Benutzer\nNone: Keine\n'Coming from': 'von '\n'Ban/Unban user': 'User sperren / entsperren '\nIp: IP\n'Bans can be applied to a users name, email address or IP address.': 'Sperren können auf einen Benutzernamen, eine Email-Adresse oder eine IP-Adresse angewendet werden. '\n'You are about to permanently delete multiple comments.': 'Sie sind im Begriff mehrere Kommentare permant zu löschen. '\n'You are about to permanently delete a comment.': 'Sie sind im Begriff einen Kommentar permanent zu löschen. '\nWebsite: Website\n'Value is not $1 characters long': 'Wert ist nicht $1 Zeichen lang. '\nUsername: Benutzername\n'User id': 'Benutzer id'\n'User ban settings': 'Benutzer Sperreinstellungen'\n'Update comment': 'Kommentar aktualisieren'\nUnrecommended: 'Empfehlung zurückgenommen. '\nUnrecommend: 'Empfehlung zurücknehmen'\n'Subject is not $1 characters long': 'Thema ist nicht $1 Zeichen lang'\n'Sort by Thread order': 'Nach Themenreihenfolge sortieren'\n'Show parent comment': 'Zeige Elternkommentar'\n'Show commenter details': 'Zeige Kommentatordetails.'\n'Show commenter': 'Zeige Kommentator'\n'Show comment user details': 'Zeige Kommentardetails zum Benutzer'\n'Show comment user': 'Zeige Kommentar Benutzer'\n'Show comment details': 'Zeige Kommentardetails'\n'Select status': 'Status auswählen '\n'Search Type': 'Suche Typ'\n'Reply to comment': 'Kommentar beantworten'\nRecommended: Empfohlen\nRecommend: Empfehlen\n'Quick edit': Schnellbearbeitung\nParent: Eltern\nID: ID\n'Go to edit article': 'Gehe zur Artikelbearbeitung'\nForum: Forum\n'For Column': 'Für Spalte'\nEmail: E-Mail\n'Edit acceptance criteria': 'Bearbeite Freigabekriterien'\nE-mail: E-Mail\n'Delete all comments?': 'Alle Kommentare löschen?'\n'Date Created': 'Datum erstellt'\n'Comments updated.': 'Kommentare aktualisiert.'\n'Comments status change to $1.': 'Kommentarstatus zu $1 ändern. '\n'Comments deleted.': 'Kommentare gelöscht. '\n'Commenter $1 saved.': 'Kommentator $1 gespeichert. '\n'Commenter $1 deleted.': 'Kommentator $1 gelöscht. '\nCommenter: Kommentator\n'Comment updated.': 'Kommentar aktualisiert.'\n'Comment status change to $1.': 'Kommentarstatus geändert zu $1.'\n'Comment id': 'Kommentar id'\n'Comment deleted.': 'Kommentar gelöscht. '\n'Comment delete by $1 from the article $2 ($3)': 'Kommentar gelöscht von $1 aus dem Artikel $2 ($3)'\n'Comment Acceptance': Kommentarfreigabe\n'Comment $4 by $1 in the article $2 ($3)': 'Kommentar $4 von $1 im Artikel $2 ($3)'\n'Comment $1 saved.': 'Kommentar $1 gespeichert. '\nColumn: Spalte\n'Change subscriber information': 'Abonnenteninformation ändern. '\n'Ban for commenter $1 saved.': 'Sperre für Kommentator $1 gespeichert. '\nBan: Sperre\n'Are you sure you want to do it?': 'Sind Sie sicher, dass Sie das tun wollen? '\n'Add rating': 'Bewertung hinzufügen '\n'Add new comment commenter': 'Neuen Kommentar Kommentator hinzufügen'\n'Add new comment': 'Neuen Kommentar hinzufügen'\n'Add new acceptance criteria': 'Füge neue Freigabekriterien hinzu'\n'Acceptance $1 saved.': 'Freigabe $1 gespeichert. '\n'Acceptance $1 deleted.': 'Freigabe $1 gelöscht. '\neditorial:\n    alert:\n        toolong: 'Die Nachricht ist zu lang.'\n        added: 'Der Kommentar wurde erfolgreich hinzugefügt.'\n        edited: 'Der Kommentar wurde erfolgreich editiert.'\n        resolved: 'Der Kommentar wurde erfolgreich geklärt. '\n        deleted: 'Der Kommentar wurde erfolgreich gelöscht.'\n    btn:\n        send: Senden\n        cancel: Abbrechen\n        resolve: Klären\n        save: Speichern\n        edit: Bearbeiten\n        delete: Löschen\n        reply: Antworten\n    label:\n        title: 'Redaktionelle Kommentare'\n        post: 'Einen neuen Kommentar publizieren'\n        reply: Antworten...\n        nocomments: 'Keine Kommentare bisher.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.de_AT.yml",
    "content": "'No attachment': null\nat: auf\n'With no attachment': 'Ohne Anhang'\n'With image attachment': 'Mit angehängtem Bild '\n'With document attachment': 'Mit angehängtem Dokument'\n'Unable to reach Newscoop. Please check your internet connection.': 'Die Verbindung zu Newscoop kann nicht hergestellt werden. Bitte überprüfen Sie ihre Internetverbindung. '\nStarred: 'Mit Stern versehen'\nStar: Stern\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Zeige _START_ bis _END_ von _TOTAL_ Einträgen'\n'Reply to message': 'Auf Nachricht antworten'\nReply: Antworten\nProcessed: Verarbeitet\n'No records found.': 'Keine Angaben gefunden.'\n'No entries to show': 'Keine Einträge zum Anzeigen gefunden.'\n'Messages updated.': 'Nachrichten aktualisiert. '\n'Messages status change to $1.': 'Status der Nachrichen ändern zu $1.'\n'Messages deleted.': 'Nachrichten gelöscht. '\n'Message updated.': 'Nachricht aktualisiert. '\n'Message status change to $1.': 'Status der Nachricht ändern zu $1.'\n'Message deleted.': 'Nachrichten gelöscht. '\nMessage: Nachricht\nLast: Letzte\n'Full article': 'Ganzer Artikel'\nFirst: Erste\n'Feedback Messages': 'Feedback Nachricht'\n'Display _MENU_ records': 'Anzeigen _MENU_ Einträge'\nDeleted: Gelöscht\n'Change selected messages status': 'Status der ausgewählten Nachrichen ändern.'\nAttachment: Anhang\nApproved.: 'Genehmigt. '\nApprove: Genehmigen\nAnonymous: null\n' - filtering from _MAX_ records': 'filtert aus _MAX_ Einträgen '\n'You are about to permanently delete multiple messages.': 'Sie sind im Begriff mehrere Nachrichten permanent zu löschen. '\n'You are about to permanently delete a message.': 'Sie sind im Begriff eine Nachricht permanent zu löschen. '\nUser: Benutzer\nNone: Keine\n'Coming from': 'von '\n'Ban/Unban user': 'User sperren / entsperren '\nIp: IP\n'Bans can be applied to a users name, email address or IP address.': 'Sperren können auf einen Benutzernamen, eine Email-Adresse oder eine IP-Adresse angewendet werden. '\n'You are about to permanently delete multiple comments.': 'Sie sind im Begriff mehrere Kommentare permant zu löschen. '\n'You are about to permanently delete a comment.': 'Sie sind im Begriff einen Kommentar permanent zu löschen. '\nWebsite: Website\n'Value is not $1 characters long': 'Wert ist nicht $1 Zeichen lang. '\nUsername: Benutzername\n'User id': 'Benutzer id'\n'User ban settings': 'Benutzer Sperreinstellungen'\n'Update comment': 'Kommentar aktualisieren'\nUnrecommended: 'Empfehlung zurückgenommen. '\nUnrecommend: 'Empfehlung zurücknehmen'\n'Subject is not $1 characters long': 'Thema ist nicht $1 Zeichen lang'\n'Sort by Thread order': 'Nach Themenreihenfolge sortieren'\n'Show parent comment': 'Zeige Elternkommentar'\n'Show commenter details': 'Zeige Kommentatordetails.'\n'Show commenter': 'Zeige Kommentator'\n'Show comment user details': 'Zeige Kommentardetails zum Benutzer'\n'Show comment user': 'Zeige Kommentar Benutzer'\n'Show comment details': 'Zeige Kommentardetails'\n'Select status': 'Status auswählen '\n'Search Type': 'Suche Typ'\n'Reply to comment': 'Kommentar beantworten'\nRecommended: Empfohlen\nRecommend: Empfehlen\n'Quick edit': Schnellbearbeitung\nParent: Eltern\nID: ID\n'Go to edit article': 'Gehe zur Artikelbearbeitung'\nForum: Forum\n'For Column': 'Für Spalte'\nEmail: E-Mail\n'Edit acceptance criteria': 'Bearbeite Freigabekriterien'\nE-mail: E-Mail\n'Delete all comments?': 'Alle Kommentare löschen?'\n'Date Created': 'Datum erstellt'\n'Comments updated.': 'Kommentare aktualisiert.'\n'Comments status change to $1.': 'Kommentarstatus zu $1 ändern. '\n'Comments deleted.': 'Kommentare gelöscht. '\n'Commenter $1 saved.': 'Kommentator $1 gespeichert. '\n'Commenter $1 deleted.': 'Kommentator $1 gelöscht. '\nCommenter: Kommentator\n'Comment updated.': 'Kommentar aktualisiert.'\n'Comment status change to $1.': 'Kommentarstatus geändert zu $1.'\n'Comment id': 'Kommentar id'\n'Comment deleted.': 'Kommentar gelöscht. '\n'Comment delete by $1 from the article $2 ($3)': 'Kommentar gelöscht von $1 aus dem Artikel $2 ($3)'\n'Comment Acceptance': Kommentarfreigabe\n'Comment $4 by $1 in the article $2 ($3)': 'Kommentar $4 von $1 im Artikel $2 ($3)'\n'Comment $1 saved.': 'Kommentar $1 gespeichert. '\nColumn: Spalte\n'Change subscriber information': 'Abonnenteninformation ändern. '\n'Ban for commenter $1 saved.': 'Sperre für Kommentator $1 gespeichert. '\nBan: Sperre\n'Are you sure you want to do it?': 'Sind Sie sicher, dass Sie das tun wollen? '\n'Add rating': 'Bewertung hinzufügen '\n'Add new comment commenter': 'Neuen Kommentar Kommentator hinzufügen'\n'Add new comment': 'Neuen Kommentar hinzufügen'\n'Add new acceptance criteria': 'Füge neue Freigabekriterien hinzu'\n'Acceptance $1 saved.': 'Freigabe $1 gespeichert. '\n'Acceptance $1 deleted.': 'Freigabe $1 gelöscht. '\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.el.yml",
    "content": "'No attachment': null\nat: σε\n'With no attachment': 'Χωρίς συνημμένο'\n'With image attachment': 'Με σύναψη εικόνας'\n'With document attachment': 'Με σύναψη εγγράφου'\n'Unable to reach Newscoop. Please check your internet connection.': 'Αδύνατη η πρόσβαση στο Newscoop. Παρακαλούμε ελέγξτε την σύνδεση σας.'\nStarred: Διακεκριμένα\nStar: Αστερίσκος\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Εμφάνιση _START_ προς _END_ από _TOTAL_ εισόδους'\n'Reply to message': 'Απάντηση στο μήνυμα'\nReply: Απάντηση\nProcessed: Επεξεργασμένα\n'No records found.': 'Δεν βρέθηκαν καταχωρήσεις.'\n'No entries to show': 'Καμία είσοδος προς προβολή'\n'Messages updated.': 'Τα μηνύματα ενημερώθηκαν.'\n'Messages status change to $1.': 'Η κατάσταση του μηνύματος άλλαξε σε $1.'\n'Messages deleted.': 'Τα μηνύματα διαγράφηκαν.'\n'Message updated.': 'Το μήνυμα ενημερώθηκε.'\n'Message status change to $1.': 'Η κατάσταση μηνύματος άλλαξε σε $1.'\n'Message deleted.': 'Το μήνυμα διαγράφηκε.'\nMessage: Μήνυμα\nLast: Τελευταίο\n'Full article': 'Πλήρες άρθρο'\nFirst: Πρώτο\n'Feedback Messages': 'Μηνύματα Feedback'\n'Display _MENU_ records': 'Εμφάνιση καταχωρήσεων _MENU_ '\nDeleted: Διαγραμμένο\n'Change selected messages status': 'Αλλαγή κατάστασης επιλεγμένων μηνυμάτων'\nAttachment: Συνημμένο\nApproved.: Εγκρίθηκε.\nApprove: Έγκριση\nAnonymous: null\n' - filtering from _MAX_ records': '-φιλτράρισμα από _MAX_ καταχωρήσεις'\n'You are about to permanently delete multiple messages.': 'Πρόκειτε να διαγράψετε οριστικά πολλά μηνύματα.'\n'You are about to permanently delete a message.': 'Πρόκειτε να διαγράψετε οριστικά ένα μήνυμα.'\nUser: Χρήστης\nNone: Κανένα\n'Coming from': 'Προερχόμενο από'\n'Ban/Unban user': 'Αποκλεισμός/Αναίρεση αποκλεισμού χρήστη'\nIp: Ip\n'Bans can be applied to a users name, email address or IP address.': 'Απαγορεύσεις μπορούν να εφαρμοστούν σε ονόματα χρηστών, διευθύνσεις email ή διευθύνσεις ΙΡ.'\n'You are about to permanently delete multiple comments.': 'Πρόκειται να διαγράψετε οριστικά πολλαπλά σχόλια.'\n'You are about to permanently delete a comment.': 'Πρόκειται να διαγράψετε οριστικά ένα σχόλιο.'\nWebsite: Ιστοσελίδα\n'Value is not $1 characters long': 'Η αξία δεν είναι $1 χαρακτήρων'\nUsername: 'Όνομα χρήστη'\n'User id': 'Ταυτότητα χρήστη'\n'User ban settings': 'Ρυθμίσεις αποκλεισμού χρήστη'\n'Update comment': 'Ενημέρωση σχολίου'\nUnrecommended: 'Δεν συνιστάται'\nUnrecommend: 'Δεν συνιστάται'\n'Subject is not $1 characters long': 'Το θέμα δεν είναι $1 χαρακτήρων'\n'Sort by Thread order': 'Ταξινόμηση με διάταξη Θέματος'\n'Show parent comment': 'Εμφάνιση γονικού σχολίου'\n'Show commenter details': 'Εμφάνιση λεπτομερειών σχολιαστή'\n'Show commenter': 'Προβολή σχολιαστή'\n'Show comment user details': 'Εμφάνιση λεπτομερειών σχολίου χρήστη'\n'Show comment user': 'Εμφάνιση σχολίου χρήστη'\n'Show comment details': 'Εμφάνιση λεπτομερειών σχολίου'\n'Select status': 'Επιλέξτε κατάσταση'\n'Search Type': 'Αναζήτηση Τύπου'\n'Reply to comment': 'Απάντηση σε σχόλιο'\nRecommended: Προτινόμενο\nRecommend: Συνιστάται\n'Quick edit': 'Γρήγορη επεξεργασία'\nParent: Γονικό\nID: Ταυτότητα\n'Go to edit article': 'Πηγαίνετε στην επεξεργασία άρθρου'\nForum: Φόρουμ\n'For Column': 'Για Στήλη'\nEmail: Email\n'Edit acceptance criteria': 'Επεξεργασία κριτηρίων αποδοχής'\nE-mail: E-mail\n'Delete all comments?': 'Διαγραφή όλων των σχολίων;'\n'Date Created': 'Η ημερομηνία δημιουργήθηκε'\n'Comments updated.': 'Τα σχόλια ενημερώθηκαν.'\n'Comments status change to $1.': ' Η κατάσταση σχολίων άλλαξε σε $1.'\n'Comments deleted.': 'Τα σχόλια διαγράφηκαν.'\n'Commenter $1 saved.': 'Ο σχολιαστής $1  αποθηκεύτηκε.'\n'Commenter $1 deleted.': 'Ο σχολιαστής $1 διαγράφηκε.'\nCommenter: Σχολιαστής\n'Comment updated.': 'Το σχόλιο ενημερώθηκε.'\n'Comment status change to $1.': ' Η κατάσταση σχολίου άλλαξε σε $1.'\n'Comment id': 'Ταυτότητα σχολίου'\n'Comment deleted.': 'Το σχόλιο διαγράφηκε.'\n'Comment delete by $1 from the article $2 ($3)': 'Το σχόλιο διαγράφηκε από $1 από το άρθρο $2 ($3) '\n'Comment Acceptance': 'Αποδοχή Σχολίου'\n'Comment $4 by $1 in the article $2 ($3)': 'Σχόλιο $4 από $1 στο άρθρο $2 ($3)'\n'Comment $1 saved.': 'Το σχόλιο $1 αποθηκεύτηκε.'\nColumn: Στήλη\n'Change subscriber information': 'Αλλαγή πληροφοριών συνδρομητή'\n'Ban for commenter $1 saved.': 'Ο αποκλεισμός του χρήστη $1 αποθηκεύτηκε.'\nBan: Απαγόρευση\n'Are you sure you want to do it?': 'Είστε σίγουρος/η ότι θέλετε να το κάνετε;'\n'Add rating': 'Προσθήκη αξιολόγησης'\n'Add new comment commenter': 'Προσθήκη νέου σχολιαστή σχολίου'\n'Add new comment': 'Προσθήκη νέου σχολίου'\n'Add new acceptance criteria': 'Προσθήκη νέων κριτηρίων αποδοχής'\n'Acceptance $1 saved.': 'Η αποδοχή $1 αποθηκεύτηκε.'\n'Acceptance $1 deleted.': 'Η αποδοχή $1 διαγράφηκε.'\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.en.yml",
    "content": "'No attachment': 'No attachment'\nat: at\n'With no attachment': 'With no attachment'\n'With image attachment': 'With image attachment'\n'With document attachment': 'With document attachment'\n'Unable to reach Newscoop. Please check your internet connection.': 'Unable to reach Newscoop. Please check your internet connection.'\nStarred: Starred\nStar: Star\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Showing _START_ to _END_ of _TOTAL_ entries'\n'Reply to message': 'Reply to message'\nReply: Reply\nProcessed: Processed\n'No records found.': 'No records found.'\n'No entries to show': 'No entries to show'\n'Messages updated.': 'Messages updated.'\n'Messages status change to $1.': 'Messages status change to $1.'\n'Messages deleted.': 'Messages deleted.'\n'Message updated.': 'Message updated.'\n'Message status change to $1.': 'Message status change to $1.'\n'Message deleted.': 'Message deleted.'\nMessage: Message\nLast: Last\n'Full article': 'Full article'\nFirst: First\n'Feedback Messages': 'Feedback Messages'\n'Display _MENU_ records': 'Display _MENU_ records'\nDeleted: Deleted\n'Change selected messages status': 'Change selected messages status'\nAttachment: Attachment\nApproved.: Approved.\nApprove: Approve\nAnonymous: Anonymous\n' - filtering from _MAX_ records': ' - filtering from _MAX_ records'\n'You are about to permanently delete multiple messages.': 'You are about to permanently delete multiple messages.'\n'You are about to permanently delete a message.': 'You are about to permanently delete a message.'\nUser: User\nNone: None\n'Coming from': 'Coming from'\n'Ban/Unban user': 'Ban/Unban user'\nIp: Ip\n'Bans can be applied to a users name, email address or IP address.': 'Bans can be applied to a users name, email address or IP address.'\n'You are about to permanently delete multiple comments.': 'You are about to permanently delete multiple comments.'\n'You are about to permanently delete a comment.': 'You are about to permanently delete a comment.'\nWebsite: Website\n'Value is not $1 characters long': 'Value is not $1 characters long'\nUsername: Username\n'User id': 'User id'\n'User ban settings': 'User ban settings'\n'Update comment': 'Update comment'\nUnrecommended: Unrecommended\nUnrecommend: Unrecommend\n'Subject is not $1 characters long': 'Subject is not $1 characters long'\n'Sort by Thread order': 'Sort by Thread order'\n'Show parent comment': 'Show parent comment'\n'Show commenter details': 'Show commenter details'\n'Show commenter': 'Show commenter'\n'Show comment user details': 'Show comment user details'\n'Show comment user': 'Show comment user'\n'Show comment details': 'Show comment details'\n'Select status': 'Select status'\n'Search Type': 'Search Type'\n'Reply to comment': 'Reply to comment'\nRecommended: Recommended\nRecommend: Recommend\n'Quick edit': 'Quick edit'\nParent: Parent\nID: ID\n'Go to edit article': 'Go to edit article'\nForum: Forum\n'For Column': 'For Column'\nEmail: Email\n'Edit acceptance criteria': 'Edit acceptance criteria'\nE-mail: E-mail\n'Delete all comments?': 'Delete all comments?'\n'Date Created': 'Date Created'\n'Comments updated.': 'Comments updated.'\n'Comments status change to $1.': 'Comments status change to $1.'\n'Comments deleted.': 'Comments deleted.'\n'Commenter $1 saved.': 'Commenter $1 saved.'\n'Commenter $1 deleted.': 'Commenter $1 deleted.'\nCommenter: Commenter\n'Comment updated.': 'Comment updated.'\n'Comment status change to $1.': 'Comment status change to $1.'\n'Comment id': 'Comment id'\n'Comment deleted.': 'Comment deleted.'\n'Comment delete by $1 from the article $2 ($3)': 'Comment delete by $1 from the article $2 ($3)'\n'Comment Acceptance': 'Comment Acceptance'\n'Comment $4 by $1 in the article $2 ($3)': 'Comment $4 by $1 in the article $2 ($3)'\n'Comment $1 saved.': 'Comment $1 saved.'\nColumn: Column\n'Change subscriber information': 'Change subscriber information'\n'Ban for commenter $1 saved.': 'Ban for commenter $1 saved.'\nBan: Ban\n'Are you sure you want to do it?': 'Are you sure you want to do it?'\n'Add rating': 'Add rating'\n'Add new comment commenter': 'Add new comment commenter'\n'Add new comment': 'Add new comment'\n'Add new acceptance criteria': 'Add new acceptance criteria'\n'Acceptance $1 saved.': 'Acceptance $1 saved.'\n'Acceptance $1 deleted.': 'Acceptance $1 deleted.'\neditorial:\n    alert:\n        toolong: \"Message is too long.\"\n        added: \"Comment has been successfully added.\"\n        edited: \"Comment has been successfully edited.\"\n        resolved: \"Comment has been successfully resolved.\"\n        deleted: \"Comment has been successfully deleted.\"\n    btn:\n        send: \"Send\"\n        cancel: \"Cancel\"\n        resolve: \"Resolve\"\n        save: \"Save\"\n        edit: \"Edit\"\n        delete: \"Delete\"\n        reply: \"Reply\"\n    label:\n        title: \"Editorial Comments\"\n        post: \"Post a new comment\"\n        reply: \"Reply...\"\n        nocomments: \"No comments yet.\"\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.en_GB.yml",
    "content": "'No attachment': 'No attachment'\nat: at\n'With no attachment': 'With no attachment'\n'With image attachment': 'With image attachment'\n'With document attachment': 'With document attachment'\n'Unable to reach Newscoop. Please check your internet connection.': 'Unable to reach Newscoop. Please check your internet connection.'\nStarred: Starred\nStar: Star\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Showing _START_ to _END_ of _TOTAL_ entries'\n'Reply to message': 'Reply to message'\nReply: Reply\nProcessed: Processed\n'No records found.': 'No records found.'\n'No entries to show': 'No entries to show'\n'Messages updated.': 'Messages updated.'\n'Messages status change to $1.': 'Messages status changed to $1.'\n'Messages deleted.': 'Messages deleted.'\n'Message updated.': 'Message updated.'\n'Message status change to $1.': 'Message status changed to $1.'\n'Message deleted.': 'Message deleted.'\nMessage: Message\nLast: Last\n'Full article': 'Full article'\nFirst: First\n'Feedback Messages': 'Feedback Messages'\n'Display _MENU_ records': 'Display _MENU_ records'\nDeleted: Deleted\n'Change selected messages status': 'Change selected messages status'\nAttachment: Attachment\nApproved.: Approved.\nApprove: Approve\nAnonymous: Anonymous\n' - filtering from _MAX_ records': '- filtering from _MAX_ records'\n'You are about to permanently delete multiple messages.': 'You are about to permanently delete multiple messages.'\n'You are about to permanently delete a message.': 'You are about to permanently delete a message.'\nUser: User\nNone: None\n'Coming from': 'Coming from'\n'Ban/Unban user': 'Ban/Unban user'\nIp: Ip\n'Bans can be applied to a users name, email address or IP address.': 'Bans can be applied to a users name, email address or IP address.'\n'You are about to permanently delete multiple comments.': 'You are about to permanently delete multiple comments.'\n'You are about to permanently delete a comment.': 'You are about to permanently delete a comment.'\nWebsite: Website\n'Value is not $1 characters long': 'Value is not $1 characters long'\nUsername: Username\n'User id': 'User id'\n'User ban settings': 'User ban settings'\n'Update comment': 'Update comment'\nUnrecommended: Unrecommended\nUnrecommend: Unrecommend\n'Subject is not $1 characters long': 'Subject is not $1 characters long'\n'Sort by Thread order': 'Sort by Thread order'\n'Show parent comment': 'Show parent comment'\n'Show commenter details': 'Show commenter details'\n'Show commenter': 'Show commenter'\n'Show comment user details': 'Show comment user details'\n'Show comment user': 'Show comment user'\n'Show comment details': 'Show comment details'\n'Select status': 'Select status'\n'Search Type': 'Search Type'\n'Reply to comment': 'Reply to comment'\nRecommended: Recommended\nRecommend: Recommend\n'Quick edit': 'Quick edit'\nParent: Parent\nID: ID\n'Go to edit article': 'Go to edit article'\nForum: Forum\n'For Column': 'For Column'\nEmail: Email\n'Edit acceptance criteria': 'Edit acceptance criteria'\nE-mail: E-mail\n'Delete all comments?': 'Delete all comments?'\n'Date Created': 'Date Created'\n'Comments updated.': 'Comments updated.'\n'Comments status change to $1.': 'Comments status change to $1.'\n'Comments deleted.': 'Comments deleted.'\n'Commenter $1 saved.': 'Commenter $1 saved.'\n'Commenter $1 deleted.': 'Commenter $1 deleted.'\nCommenter: Commenter\n'Comment updated.': 'Comment updated.'\n'Comment status change to $1.': 'Comment status change to $1.'\n'Comment id': 'Comment id'\n'Comment deleted.': 'Comment deleted.'\n'Comment delete by $1 from the article $2 ($3)': 'Comment delete by $1 from the article $2 ($3)'\n'Comment Acceptance': 'Comment Acceptance'\n'Comment $4 by $1 in the article $2 ($3)': 'Comment $4 by $1 in the article $2 ($3)'\n'Comment $1 saved.': 'Comment $1 saved.'\nColumn: Column\n'Change subscriber information': 'Change subscriber information'\n'Ban for commenter $1 saved.': 'Ban for commenter $1 saved.'\nBan: Ban\n'Are you sure you want to do it?': 'Are you sure you want to do it?'\n'Add rating': 'Add rating'\n'Add new comment commenter': 'Add new comment commenter'\n'Add new comment': 'Add new comment'\n'Add new acceptance criteria': 'Add new acceptance criteria'\n'Acceptance $1 saved.': 'Acceptance $1 saved.'\n'Acceptance $1 deleted.': 'Acceptance $1 deleted.'\neditorial:\n    alert:\n        toolong: 'Message is too long.'\n        added: 'Comment has been successfully added.'\n        edited: 'Comment has been successfully edited.'\n        resolved: 'Comment has been successfully resolved.'\n        deleted: 'Comment has been successfully deleted.'\n    btn:\n        send: Send\n        cancel: Cancel\n        resolve: Resolve\n        save: Save\n        edit: Edit\n        delete: Delete\n        reply: Reply\n    label:\n        title: 'Editorial Comments'\n        post: 'Post a new comment'\n        reply: Reply...\n        nocomments: 'No comments yet.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.es.yml",
    "content": "'No attachment': 'Sin adjunto'\nat: en\n'With no attachment': 'Sin adjunto'\n'With image attachment': 'Con imagen adjunta'\n'With document attachment': 'Con documento adjunto'\n'Unable to reach Newscoop. Please check your internet connection.': 'No se pudo conectar a Newscoop. Por favor, verifica tu conexión a Internet.'\nStarred: Ponderado\nStar: Ponderación\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Mostrando de _START_ a _END_ el _TOTAL_ de entradas'\n'Reply to message': 'Responder a mensaje'\nReply: Responder\nProcessed: Procesado\n'No records found.': 'No se encontraron registros'\n'No entries to show': 'No se encontraron entradas'\n'Messages updated.': 'Mensajes actualizados'\n'Messages status change to $1.': 'El estatus del mensaje cambió a $1.'\n'Messages deleted.': 'Mensajes eliminados.'\n'Message updated.': 'Mensaje actualizado.'\n'Message status change to $1.': 'Estatus del mensaje cambió a $1.'\n'Message deleted.': 'Mensaje eliminado.'\nMessage: Mensaje\nLast: Último\n'Full article': 'Artículo completo'\nFirst: Primero\n'Feedback Messages': 'Mensajes de retroalimentación'\n'Display _MENU_ records': 'Desplegar registros _MENU_'\nDeleted: Eliminado\n'Change selected messages status': 'Cambiar los mensajes de estatus seleccionados'\nAttachment: Adjunto\nApproved.: Aprobado\nApprove: Aprobar\nAnonymous: Anónimo\n' - filtering from _MAX_ records': '-filtrando desde archivos _MAX_'\n'You are about to permanently delete multiple messages.': 'Está a punto de eliminar múltiples mensajes de forma permanente.'\n'You are about to permanently delete a message.': 'Está a punto de eliminar un mensaje de forma permanente.'\nUser: Usuario\nNone: Ninguno.\n'Coming from': Origen\n'Ban/Unban user': 'Bloquear/desbloquear usuario'\nIp: Ip\n'Bans can be applied to a users name, email address or IP address.': 'Las restricciones aplican a nombres de usuario, cuentas de correo y direcciones de IP.'\n'You are about to permanently delete multiple comments.': 'Está a punto de eliminar permanentemente múltiples comentarios.'\n'You are about to permanently delete a comment.': 'Está a punto de eliminar permanentemente un comentario.'\nWebsite: 'Sitio Web'\n'Value is not $1 characters long': 'El valor no alcanza los $1 caracteres'\nUsername: 'Nombre de usuario'\n'User id': 'Identificación de usuario'\n'User ban settings': 'Configuración de restricciones de usuario'\n'Update comment': 'Actualizar comentario'\nUnrecommended: 'No recomendado'\nUnrecommend: 'No recomendar'\n'Subject is not $1 characters long': 'El asunto no alcanza los $1 caracteres'\n'Sort by Thread order': 'Ordenar por conversación'\n'Show parent comment': 'Mostrar comentario raíz'\n'Show commenter details': 'Mostrar detalles del comentarista'\n'Show commenter': 'Mostrar al comentarista'\n'Show comment user details': 'Mostrar detalles de usuario del comentario'\n'Show comment user': 'Mostrar usuario del comentario'\n'Show comment details': 'Mostrar detalles del comentario'\n'Select status': 'Seleccionar estado'\n'Search Type': 'Buscar tipo'\n'Reply to comment': 'Responder al comentario'\nRecommended: Recomendado\nRecommend: Recomendar\n'Quick edit': 'Edición rápida'\nParent: Raíz\nID: Identificación\n'Go to edit article': 'Ir a edición de artículo'\nForum: Foro\n'For Column': 'Para columna'\nEmail: 'Correo electrónico'\n'Edit acceptance criteria': 'Editar criterios de aceptación'\nE-mail: 'Correo electrónico'\n'Delete all comments?': '¿Eliminar todos los comentarios?'\n'Date Created': 'Fecha de creación'\n'Comments updated.': 'Se actualizaron los comentarios.'\n'Comments status change to $1.': 'Estado de los comentarios cambió a $1'\n'Comments deleted.': 'Comentarios eliminados'\n'Commenter $1 saved.': 'Comentarista $1 guardado'\n'Commenter $1 deleted.': 'Comentarista $1 eliminado'\nCommenter: Comentarista\n'Comment updated.': 'Comentario actualizado'\n'Comment status change to $1.': 'Estado de comentario cambión a $1.'\n'Comment id': 'Identificación de comentario'\n'Comment deleted.': 'Comentario eliminado'\n'Comment delete by $1 from the article $2 ($3)': 'Comentario eliminado por $1 desde el artículo $2 ($3)'\n'Comment Acceptance': 'Aceptación de comentarios'\n'Comment $4 by $1 in the article $2 ($3)': 'Comentario $4 por $1 en el artículo  $2 ($3)'\n'Comment $1 saved.': 'Comentario $1 guardado'\nColumn: Columna\n'Change subscriber information': 'Cambiar información de subscriptor'\n'Ban for commenter $1 saved.': 'Restricción para comentarista $1 guardada'\nBan: Restricción\n'Are you sure you want to do it?': '¿Está seguro de que quiere hacerlo?'\n'Add rating': 'Añadir calificación'\n'Add new comment commenter': 'Añadir nuevo comentarista'\n'Add new comment': 'Añadir nuevo comentario'\n'Add new acceptance criteria': 'Añadir nuevo criterio de aceptación'\n'Acceptance $1 saved.': 'Aceptación $1 guardada'\n'Acceptance $1 deleted.': 'Aceptación $1 eliminada'\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.es_AR.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: Último\n'Full article': null\nFirst: Primero\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: null\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: 'No recomendado'\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': 'Responder al comentario'\nRecommended: Recomendado\nRecommend: Recomendado\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': 'Comentarios actualizados.'\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': 'Comentario actualizado.'\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.fa.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: null\n'Full article': null\nFirst: null\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: null\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.fa_AF.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: null\n'Full article': null\nFirst: null\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: null\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.fr.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: Dernier\n'Full article': null\nFirst: Premier\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: 'Pièce jointe'\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: Utilisateur\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: Courriel\n'Edit acceptance criteria': null\nE-mail: Courriel\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.he.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: null\n'Full article': null\nFirst: null\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: null\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.hr.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: Zadnji\n'Full article': null\nFirst: Prvi\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: Korisnik\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.hu.yml",
    "content": "'No attachment': 'Nincs melléklet'\nat: null\n'With no attachment': 'Melléklet nélkül'\n'With image attachment': Képmelléklettel\n'With document attachment': Dokumentummelléklettel\n'Unable to reach Newscoop. Please check your internet connection.': 'Nem érhető el a Newscoop. Ellenőrizd az internetkapcsolatodat.'\nStarred: Csillagozva\nStar: Csillagozás\n'Showing _START_ to _END_ of _TOTAL_ entries': '_START_ - _END_. bejegyzés / _TOTAL_ megjelenítése'\n'Reply to message': 'Válasz az üzenetre'\nReply: Válasz\nProcessed: Feldolgozva\n'No records found.': 'Nem találhatók rekordok.'\n'No entries to show': 'Nincsenek megjelenítendő bejegyzések'\n'Messages updated.': 'Az üzenetek frissítése megtörtént.'\n'Messages status change to $1.': 'Az üzenetek állapotának módosítása erre: $1.'\n'Messages deleted.': 'Az üzenetek törlése megtörtént.'\n'Message updated.': 'Az üzenet frissítése megtörtént.'\n'Message status change to $1.': 'Az üzenet állapotának módosítása erre: $1.'\n'Message deleted.': 'Az üzenet törlése megtörtént.'\nMessage: Üzenet\nLast: Utolsó\n'Full article': 'Teljes cikk'\nFirst: Első\n'Feedback Messages': 'Visszajelző üzenetek'\n'Display _MENU_ records': '_MENU_ rekord megjelenítése'\nDeleted: Törölve\n'Change selected messages status': 'A kijelölt üzenetek állapotának módosítása'\nAttachment: Csatolmány\nApproved.: Jóváhagyva.\nApprove: Jóváhagyás\nAnonymous: Névtelen\n' - filtering from _MAX_ records': '- szűrés a _MAX_ rekordokból'\n'You are about to permanently delete multiple messages.': 'Több üzenet végleges törlésére készülsz.'\n'You are about to permanently delete a message.': 'Egy üzenet végleges törlésére készülsz.'\nUser: Felhasználó\nNone: Nincs\n'Coming from': null\n'Ban/Unban user': 'Felhasználó kitiltása/kitiltásának megszüntetése'\nIp: IP-cím\n'Bans can be applied to a users name, email address or IP address.': 'A kitiltás egy felhasználó nevére, e-mail címére vagy IP-címére vonatkozhat.'\n'You are about to permanently delete multiple comments.': 'Több hozzászólás végleges törlésére készülsz.'\n'You are about to permanently delete a comment.': 'Egy hozzászólás végleges törlésére készülsz.'\nWebsite: Weblap\n'Value is not $1 characters long': 'Az érték nem $1 karakter hosszú'\nUsername: Felhasználónév\n'User id': 'Felhasználó azonosítója'\n'User ban settings': 'Felhasználó kitiltásának beállításai'\n'Update comment': 'Hozzászólás frissítése'\nUnrecommended: 'Nem ajánlott'\nUnrecommend: 'Ajánlat visszavonása'\n'Subject is not $1 characters long': 'A tárgy nem $1 karakter hosszú'\n'Sort by Thread order': 'Rendezés témakörsorrend szerint'\n'Show parent comment': 'Szülőhozzászólás megjelenítése'\n'Show commenter details': 'A hozzászóló adatainak megjelenítése'\n'Show commenter': 'A hozzászóló megjelenítése'\n'Show comment user details': 'A hozzászólás felhasználói adatainak megjelenítése'\n'Show comment user': 'A hozzászólás felhasználó megjelenítése'\n'Show comment details': 'A hozzászólás adatainak megjelenítése'\n'Select status': 'Állapot választása'\n'Search Type': 'Típus keresése'\n'Reply to comment': 'Válasz a hozzászólásra'\nRecommended: Ajánlott\nRecommend: Ajánlás\n'Quick edit': Gyorsszerkesztés\nParent: Szülő\nID: Azonosító\n'Go to edit article': 'Ugrás a cikk szerkesztésére'\nForum: Fórum\n'For Column': null\nEmail: E-mail\n'Edit acceptance criteria': 'Átvételi feltételek szerkesztése'\nE-mail: E-mail\n'Delete all comments?': 'Törlöd az összes hozzászólást?'\n'Date Created': 'Létrehozás dátuma'\n'Comments updated.': 'A hozzászólások frissítése megtörtént.'\n'Comments status change to $1.': 'Hozzászólások állapotának változása erre: $1.'\n'Comments deleted.': 'A hozzászólások törlése megtörtént.'\n'Commenter $1 saved.': 'A/z $1 nevű hozzászóló mentése megtörtént.'\n'Commenter $1 deleted.': 'A/z $1 nevű hozzászóló törlése megtörtént.'\nCommenter: Hozzászóló\n'Comment updated.': 'A hozzászólás javítása megtörtént.'\n'Comment status change to $1.': 'A hozzászólás állapotának módosítása erre: $1.'\n'Comment id': 'Hozzászólás azonosítója'\n'Comment deleted.': 'A hozzászólás törlése megtörtént.'\n'Comment delete by $1 from the article $2 ($3)': 'A hozzászólás $1 általi törlése a/z $2 ($3) cikkből'\n'Comment Acceptance': 'Hozzászólás elfogadása'\n'Comment $4 by $1 in the article $2 ($3)': ' A/z $4 hozzászólás $1 által a/z $2 ($3) cikkben'\n'Comment $1 saved.': 'A/z $1 hozzászólás mentése megtörtént.'\nColumn: Oszlop\n'Change subscriber information': 'Előfizetői adatok módosítása'\n'Ban for commenter $1 saved.': 'A/z $1 nevű hozzászóló kitiltásának mentése megtörtént.'\nBan: Kitiltás\n'Are you sure you want to do it?': 'Biztosan ezt akarod tenni?'\n'Add rating': 'Értékelés hozzáadása'\n'Add new comment commenter': 'Hozzászólás új hozzászólójának hozzáadása'\n'Add new comment': 'Új hozzászólás hozzáadása'\n'Add new acceptance criteria': 'Új átvételi feltételek hozzáadása'\n'Acceptance $1 saved.': 'A/z $1 átvételi feltétel mentése megtörtént.'\n'Acceptance $1 deleted.': 'A/z $1 átvételi feltétel törlése megtörtént.'\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.hy.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: Վերջին\n'Full article': null\nFirst: Առաջին\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: null\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: 'Message is too long.'\n        added: 'Comment has been successfully added.'\n        edited: 'Comment has been successfully edited.'\n        resolved: 'Comment has been successfully resolved.'\n        deleted: 'Comment has been successfully deleted.'\n    btn:\n        send: Send\n        cancel: Cancel\n        resolve: Resolve\n        save: Save\n        edit: Edit\n        delete: Delete\n        reply: Reply\n    label:\n        title: 'Editorial Comments'\n        post: 'Post a new comment'\n        reply: Reply...\n        nocomments: 'No comments yet.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.hy_AM.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: Վերջին\n'Full article': null\nFirst: Առաջին\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: Անանուն\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: null\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': 'Պատասխանել մեկնաբանությանը։'\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: էլ․փոստ\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': 'Մեկնաբանությունները թարմացված են։'\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': 'Մեկնաբանությունը թարմացված է։'\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.id.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: null\n'Full article': null\nFirst: null\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: null\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.it.yml",
    "content": "'No attachment': null\nat: in\n'With no attachment': 'Senza allegati'\n'With image attachment': 'Con immagine allegata'\n'With document attachment': 'Con documento allegato'\n'Unable to reach Newscoop. Please check your internet connection.': 'Impossibile raggiungere Newscoop. Verifica la connessione internet.'\nStarred: Evidenziato\nStar: Stellina\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Mostro voci da  _START_ a  _END_ di _TOTAL_'\n'Reply to message': 'Rispondi al messaggio'\nReply: Risposta\nProcessed: Processato\n'No records found.': 'Nessuna voce trovata.'\n'No entries to show': 'Nessun elemento da mostrare'\n'Messages updated.': 'Messaggi aggiornati.'\n'Messages status change to $1.': 'Stato dei messaggi cambiato in $1.'\n'Messages deleted.': 'Messaggi cancellati.'\n'Message updated.': 'Messaggi aggiornati.'\n'Message status change to $1.': 'Stato del messaggio cambiato in $1.'\n'Message deleted.': 'Messaggio cancellati.'\nMessage: Messaggio\nLast: Ultimo\n'Full article': 'Articolo intero'\nFirst: Primo\n'Feedback Messages': 'Messaggi di feedback'\n'Display _MENU_ records': 'Mostra _MENU_ voci'\nDeleted: Cancellato\n'Change selected messages status': 'Cambia lo stato dei messaggi selezionati'\nAttachment: Allegato\nApproved.: Approvato\nApprove: Approva\nAnonymous: null\n' - filtering from _MAX_ records': 'Filtro da _MAX_ voci'\n'You are about to permanently delete multiple messages.': 'Stai per cancellare definitivamente più messaggi.'\n'You are about to permanently delete a message.': 'Stai per cancellare definitivamente un messaggio.'\nUser: Utente\nNone: Nessuno\n'Coming from': 'Provenienti da'\n'Ban/Unban user': 'Blocca/sblocca utente'\nIp: IP\n'Bans can be applied to a users name, email address or IP address.': 'Possono essere applicati blocchi a nomi utente, ad indirizzi e-mail o ad indirizzi IP.'\n'You are about to permanently delete multiple comments.': 'Stai per eliminare definitivamente alcuni commenti.'\n'You are about to permanently delete a comment.': 'Stai per eliminare definitivamente un commento.'\nWebsite: 'Sito web'\n'Value is not $1 characters long': 'Il valore non è lungo $1 caratteri'\nUsername: 'Nome utente'\n'User id': 'ID Utente'\n'User ban settings': 'Impostazioni blocco utente'\n'Update comment': 'Aggiorna commento'\nUnrecommended: Sconsigliato\nUnrecommend: Sconsiglia\n'Subject is not $1 characters long': 'Loggetto non è lungo $1 caratteri'\n'Sort by Thread order': 'Ordina per discussione'\n'Show parent comment': 'Mostra il commento padre'\n'Show commenter details': 'Mostra i dettagli dellautore del commento'\n'Show commenter': 'Mostra lautore del commento'\n'Show comment user details': 'Mostra i dettagli dellutente del commento'\n'Show comment user': 'Mostra lutente del commento'\n'Show comment details': 'Mostra i dettagli del commento'\n'Select status': 'Scegli stato'\n'Search Type': 'Tipo di ricerca'\n'Reply to comment': 'Rispondi al commento'\nRecommended: Consigliato\nRecommend: Consiglia\n'Quick edit': 'Modifica rapida'\nParent: Padre\nID: ID\n'Go to edit article': 'Vai alla modifica articolo'\nForum: Forum\n'For Column': 'Per colonna'\nEmail: Email\n'Edit acceptance criteria': 'Modifica i criteri di accettazione'\nE-mail: E-mail\n'Delete all comments?': 'Cancello tutti i commenti?'\n'Date Created': 'Data di creazione'\n'Comments updated.': 'Commenti aggiornati.'\n'Comments status change to $1.': 'Stato dei commenti cambiato in $1.'\n'Comments deleted.': 'Commenti cancellati.'\n'Commenter $1 saved.': 'Autore di commenti $1 salvato.'\n'Commenter $1 deleted.': 'Autore di commenti $1 cancellato.'\nCommenter: 'Autore di commenti'\n'Comment updated.': 'Commento aggiornato.'\n'Comment status change to $1.': 'Stato del commento cambiato in $1.'\n'Comment id': 'ID Commento'\n'Comment deleted.': 'Commento cencellato.'\n'Comment delete by $1 from the article $2 ($3)': 'Cancellazione commento da $1 dallarticolo $2 ($3)'\n'Comment Acceptance': 'Accettazione commento'\n'Comment $4 by $1 in the article $2 ($3)': 'Commento $4 da $1 nellarticolo $2 ($3)'\n'Comment $1 saved.': 'Commento $1 salvato.'\nColumn: Colonna\n'Change subscriber information': 'Cambia informazioni iscritto'\n'Ban for commenter $1 saved.': 'Blocco per il commentatore $1 salvato.'\nBan: Blocco\n'Are you sure you want to do it?': 'Sei sicuro di volerlo fare?'\n'Add rating': 'Aggiungi voto'\n'Add new comment commenter': 'Aggiungi nuovo commentatore al commento'\n'Add new comment': 'Aggiungi un nuovo commento'\n'Add new acceptance criteria': 'Aggiungi nuovo criterio di accettazione'\n'Acceptance $1 saved.': 'Accettazione $1 salvata.'\n'Acceptance $1 deleted.': 'Accettazione $1 cancellata.'\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.ka.yml",
    "content": "'No attachment': null\nat: '-ზე'\n'With no attachment': 'დანართის გარეშე'\n'With image attachment': 'თანდართულია გამოსახულება'\n'With document attachment': 'თანდართულია დოკუმენტი'\n'Unable to reach Newscoop. Please check your internet connection.': 'ნიუსქუფთან დაკავშირება ვერ ხერხდება. გთხოვთ შეამოწმოთ თქვენი ინტერნეტ კავშირი.'\nStarred: 'ვარსკვლავით აღნიშნული'\nStar: ვარსკვლავი\n'Showing _START_ to _END_ of _TOTAL_ entries': '_START_ to _END_ of _TOTAL_ ჩანაწერების ჩვენება'\n'Reply to message': 'შეტყობინებაზე პასუხის გაცემა'\nReply: 'პასუხის გაცემა'\nProcessed: დამუშავებულია\n'No records found.': 'ჩანაწერები ნაპოვნი არ არის.'\n'No entries to show': 'საჩვენებელი ჩანაწერები არ არის.'\n'Messages updated.': 'შეტყობინებები განახლებულია. '\n'Messages status change to $1.': 'შეტყობინებების სტატუსი იცვლება $1ზე.'\n'Messages deleted.': 'შეტყობინებები წაშლილია '\n'Message updated.': 'შეტყობინება განახლებულია'\n'Message status change to $1.': 'შეტყობინების სტატუსი იცვლება $1ზე.'\n'Message deleted.': 'შეტყობინება წაშლილია. '\nMessage: შეტყობინება\nLast: ბოლო\n'Full article': 'მთლიანი სტატია'\nFirst: პირველი\n'Feedback Messages': 'შეფასების შეტყობინებები'\n'Display _MENU_ records': '_MENU_ ჩანაწერების ჩვენება'\nDeleted: წაიშალა\n'Change selected messages status': 'არჩეული შეტყობინების სტატუსის შეცვლა'\nAttachment: დანართი\nApproved.: დადასტურებული.\nApprove: დადასტურება\nAnonymous: ანონიმური\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': 'თქვენ ახლა სამუდამოდ წაშლით რიგ შეტყობინებებს. '\n'You are about to permanently delete a message.': 'თქვენ ახლა სამუდამოდ წაშლით შეტყობინებას. '\nUser: მომხმარებელი\nNone: არცერთი\n'Coming from': 'შეტყობინების წარმომავლობა '\n'Ban/Unban user': 'მომხმარებლისთვის ბანის დადება/მოხსნა'\nIp: Ip\n'Bans can be applied to a users name, email address or IP address.': 'ბანის დადება შესაძლებელია მომხმარებლის სახელზე, ელ-ფოსტის მისამართსა და IP მისამართზე.'\n'You are about to permanently delete multiple comments.': 'კომენტარები სამუდამოდ წაიშლება.'\n'You are about to permanently delete a comment.': 'კომენტარი სამუდამოდ წაიშლება.'\nWebsite: ვებგვერდი\n'Value is not $1 characters long': 'ველი არ შეიცავს $1 სიმბოლოს'\nUsername: 'მომხმარებლის სახელი'\n'User id': 'მომხმარებლის ID'\n'User ban settings': 'მომხმარებლის ბანის პარამეტრები'\n'Update comment': 'კომენტარის განახლება'\nUnrecommended: არარეკომენდირებული\nUnrecommend: 'რეკომენდაციის უკუგდება'\n'Subject is not $1 characters long': 'სათაური არ შეიცავს $1 სიმბოლოს.'\n'Sort by Thread order': 'ხაზის მიხედვით დაწყობა.'\n'Show parent comment': 'მშობელი კომენტარის ჩვენება'\n'Show commenter details': 'კომენტარის ავტორის დეტალები'\n'Show commenter': 'კომენტარის ავტორის ჩვენება'\n'Show comment user details': 'კომენტარის მომხმარებლის დეტალების ჩვენება'\n'Show comment user': 'კომენტარის მომხმარებლის ჩვენება'\n'Show comment details': 'კომენტარის დეტალების ჩვენება'\n'Select status': 'აირჩიეთ სტატუსი'\n'Search Type': 'ძიების ტიპი'\n'Reply to comment': 'კომენტარზე პასუხის გაცემა'\nRecommended: რეკომენდირებული\nRecommend: 'რეკომენდაციის მიცემა'\n'Quick edit': 'სწრაფი რედაქტირება'\nParent: საწყისი\nID: ID\n'Go to edit article': 'სტატიის რედაქტირებაზე გადასვლა'\nForum: ფორუმი\n'For Column': სვეტისთვის\nEmail: ელფოსტა\n'Edit acceptance criteria': 'დადასტურების კრიტერიუმების რედაქტირება'\nE-mail: ელ-ფოსტა\n'Delete all comments?': 'გსურთ წაშალოთ ყველა კომენტარი? '\n'Date Created': 'შექმნის თარიღი'\n'Comments updated.': 'კომენტარები განახლდა.'\n'Comments status change to $1.': 'კომენტარების სტატუსი შეიცვალა: $1'\n'Comments deleted.': 'კომენტარები წაიშალა'\n'Commenter $1 saved.': 'კომენტატორი $1 შეინახა.'\n'Commenter $1 deleted.': 'კომენტატორი $1 წაიშალა.'\nCommenter: კომენტატორი\n'Comment updated.': 'კომენტარი განახლებულია. '\n'Comment status change to $1.': 'კომენტარის სტატუსი შეიცვალა: $1'\n'Comment id': 'კომენტარის id'\n'Comment deleted.': 'კომენტარი წაიშალა.'\n'Comment delete by $1 from the article $2 ($3)': '$2 ($3) სტატიის კომენტარი წაიშალა $1-ის მიერ'\n'Comment Acceptance': 'კომენტარის დადასტურება'\n'Comment $4 by $1 in the article $2 ($3)': '$2 ($3) სტატიის კომენტარი $4 $1-ის მიერ'\n'Comment $1 saved.': 'კომენტარი $1 დამახსოვრებულია.'\nColumn: სვეტი\n'Change subscriber information': 'გამომწერის ინფორმაციის შეცვლა'\n'Ban for commenter $1 saved.': '$1 კომენტატორს ბანი დაედო.'\nBan: ბანი\n'Are you sure you want to do it?': 'დაადასტურეთ, რომ გსურთ ამის გაკეთება.'\n'Add rating': 'რეიტინგის დამატება'\n'Add new comment commenter': 'ახალი კომენტარის ავტორის დამატება'\n'Add new comment': 'ახალი კომენტარის დამატება'\n'Add new acceptance criteria': 'ახალი დადასტურების კრიტერიუმის დამატება'\n'Acceptance $1 saved.': '$1 დადასტურება დამახსოვრდა.'\n'Acceptance $1 deleted.': '$1 დადასტურება წაშლილია.'\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.ko.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: 마지막\n'Full article': null\nFirst: 처음\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: '사용자 '\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.ku.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: null\n'Full article': null\nFirst: null\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: null\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.lv.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: null\n'Full article': null\nFirst: null\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: null\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.mr.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: null\n'Full article': null\nFirst: null\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: null\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.nb_NO.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: null\n'Full article': null\nFirst: null\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: null\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.nl.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: Laatste\n'Full article': null\nFirst: Eerste\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: Gebruiker\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.pa.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: null\n'Full article': null\nFirst: null\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: null\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.pl.yml",
    "content": "'No attachment': 'Brak załączników'\nat: w\n'With no attachment': 'Brak załączników.'\n'With image attachment': 'Zdjęcie dostępne w załącznikach'\n'With document attachment': 'Dokument dostępny w zalącznikach'\n'Unable to reach Newscoop. Please check your internet connection.': 'Nie można połączyć z Newscoop. Sprawdź swoje połączenie z Internetem.'\nStarred: Odznaczony\nStar: Gwiazdka\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Pokaz _START_ do _END_ ze _TOTAL_ wpisow'\n'Reply to message': 'Odpowiedz na wiadomość'\nReply: Odpowiedz\nProcessed: Przetworzony\n'No records found.': 'Nie znaleziono rekordów.'\n'No entries to show': 'Brak wpisów do pokazania'\n'Messages updated.': 'Wiadomość została zaktualizowana'\n'Messages status change to $1.': 'Status wiadomości został zmieniony na $1'\n'Messages deleted.': 'Wiadomość została usunięta'\n'Message updated.': 'Wiadomość została zaktualizowana'\n'Message status change to $1.': 'Status wiadomości został zmieniony na $1'\n'Message deleted.': 'Wiadomość została usunięta'\nMessage: Wiadomość\nLast: Ostatni\n'Full article': 'Pełny artykuł'\nFirst: Pierwszy\n'Feedback Messages': 'Wiadomość zwrotna'\n'Display _MENU_ records': 'Pokaż _MENU_ rekordy'\nDeleted: Usunięty\n'Change selected messages status': 'Wybierz status wiadomości'\nAttachment: Zalącznik\nApproved.: Zaakceptowany\nApprove: Zaakceptuj\nAnonymous: Anonim\n' - filtering from _MAX_ records': '- filtrowanie z _MAX_ rekordów'\n'You are about to permanently delete multiple messages.': 'Chcesz bezpowrotnie usunąć wiele wiadomości.'\n'You are about to permanently delete a message.': 'Chcesz bezpowrotnie usunąć tą wiadomość.'\nUser: Użytkownik\nNone: Brak\n'Coming from': 'Wysłane przez'\n'Ban/Unban user': 'Zablokuj/Odblokuj użytkownika'\nIp: 'Adres IP'\n'Bans can be applied to a users name, email address or IP address.': 'Blokada będzie nałożona na nazwę użytkownika, adres email oraz adres IP.'\n'You are about to permanently delete multiple comments.': 'Chcesz bezpowrotnie usunąć wiele wiadomości.'\n'You are about to permanently delete a comment.': 'Chcesz bezpowrotnie usunąć wiadomość'\nWebsite: 'Strona internetowa'\n'Value is not $1 characters long': 'Wartość nie ma $1 znaków'\nUsername: 'Nazwa użytkownika'\n'User id': 'Numer uzytkownika'\n'User ban settings': 'Opcje blokady użytkownika'\n'Update comment': 'Zaktualizuj komentarz'\nUnrecommended: Niepolecany\nUnrecommend: 'Niepolecany '\n'Subject is not $1 characters long': 'Temat nie ma $1 znaków.'\n'Sort by Thread order': 'Sortuj według wątków.'\n'Show parent comment': 'Pokaż komentarz nadrzędny.'\n'Show commenter details': 'Pokaż szczegóły komentatora'\n'Show commenter': 'Pokaż komentatora'\n'Show comment user details': 'Pokaż szczegóły użytkownika dla tego komentarza'\n'Show comment user': 'Pokaż komentatora'\n'Show comment details': 'Pokaż szczegóły komentarza'\n'Select status': 'Wybierz status'\n'Search Type': 'Szukaj typu'\n'Reply to comment': 'Odpowiedz na komentarz'\nRecommended: Polecany\nRecommend: Poleć\n'Quick edit': 'Szybka edycja'\nParent: Rodzic\nID: ID\n'Go to edit article': 'Przejdź do edycji artykulu'\nForum: Forum\n'For Column': 'Dla kolumny'\nEmail: Email\n'Edit acceptance criteria': 'Edytuj kryteria akceptowalności'\nE-mail: Email\n'Delete all comments?': 'Usunąć wszystkie komentarze?'\n'Date Created': 'Data utworzenia'\n'Comments updated.': 'Komentarze uaktulnione.'\n'Comments status change to $1.': 'Status komentarza został zmieniony na $1'\n'Comments deleted.': 'Komentarz został usunięty'\n'Commenter $1 saved.': 'Komentator $1 został zapisany.'\n'Commenter $1 deleted.': 'Komentator $1 został usunięty.'\nCommenter: Komentator\n'Comment updated.': 'Komentarz zaktualizowany.'\n'Comment status change to $1.': 'Status komentarza został zmieniony na $1.'\n'Comment id': 'Id komentarza'\n'Comment deleted.': 'Komentarz został usunięty'\n'Comment delete by $1 from the article $2 ($3)': 'Komentarz został usunięty z artykułu $2 przez $1 ($3)'\n'Comment Acceptance': 'Akceptacja komentarza'\n'Comment $4 by $1 in the article $2 ($3)': 'Komentarz $4 przez $1 w artykule $2 ($3)'\n'Comment $1 saved.': 'Komentarz $1 został zapisany'\nColumn: Kolumna\n'Change subscriber information': 'Zmień informacje subskrybenta'\n'Ban for commenter $1 saved.': 'Blokada dla komentatora $1 została zapisana.'\nBan: Blokada\n'Are you sure you want to do it?': 'Jesteś pewien że chcesz to zrobić?'\n'Add rating': 'Dodaj ocenę'\n'Add new comment commenter': 'Dodaj nowego komentatora'\n'Add new comment': 'Dodaj nowy komentarz'\n'Add new acceptance criteria': 'Dodaj nowe kryteria akceptacji'\n'Acceptance $1 saved.': 'Kryterium akceptacji $1 zostało zapisane.'\n'Acceptance $1 deleted.': 'Kryterium akceptacji $1 zostało usuniete.'\neditorial:\n    alert:\n        toolong: 'Wiadomość jest za długa'\n        added: 'Komentarz został dodany pomyślnie.'\n        edited: 'Komentarz został zedytowany pomyślnie.'\n        resolved: 'Komentarz został zmieniony. '\n        deleted: 'Komentarz został usunięty pomyślnie.'\n    btn:\n        send: Wyślij\n        cancel: Anuluj\n        resolve: 'Rozwiąż '\n        save: Zapisz\n        edit: Edycja\n        delete: Usuń\n        reply: Odpowiedz\n    label:\n        title: 'Komentarze redakcyjne'\n        post: 'Dodaj komentarz'\n        reply: Odpowiedz\n        nocomments: 'Brak komentarzy.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.ps.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: null\n'Full article': null\nFirst: null\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: null\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.pt.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: Ultimo\n'Full article': null\nFirst: Primeiro\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: Utilizador\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.pt_BR.yml",
    "content": "'No attachment': null\nat: no\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': 'Não foi possivel fazer conexão com Newscoop. Por favor verifique a sua conexão com internet.'\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Mostrando _START_ a _END_ de _TOTAL_ inscrições'\n'Reply to message': null\nReply: Responder\nProcessed: null\n'No records found.': 'Nenhum dado encontrado'\n'No entries to show': 'Não há registros para mostrar'\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: Ultimo\n'Full article': 'Artigo inteiro'\nFirst: Primeiro\n'Feedback Messages': null\n'Display _MENU_ records': Mostrar_MENU_registros\nDeleted: Removido\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': '- filtrando de _MAX_ registros'\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: Utilizador\nNone: Nenhum\n'Coming from': null\n'Ban/Unban user': null\nIp: Ip\n'Bans can be applied to a users name, email address or IP address.': 'Proibições podem ser aplicadas no nome do usuário, endereço de email, ou endereço IP'\n'You are about to permanently delete multiple comments.': 'Você vai apagar comentários múltiplos para sempre.'\n'You are about to permanently delete a comment.': 'Você vai apagar o comentário para sempre.'\nWebsite: Website\n'Value is not $1 characters long': 'Valor não tem $1 de caracteres'\nUsername: 'Nome de usuário'\n'User id': 'ID do usuário'\n'User ban settings': 'Preferências para proibição de usuários'\n'Update comment': 'Atualizar comentário'\nUnrecommended: 'Não recomendado'\nUnrecommend: 'Não recomendo'\n'Subject is not $1 characters long': 'Assunto não tem $1 caracteres'\n'Sort by Thread order': 'Classificar pela ordem dos tópicos'\n'Show parent comment': 'Mostrar o comentário matriz'\n'Show commenter details': 'Mostrar dados do autor do comentário'\n'Show commenter': 'Mostrar o autor do comentário'\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': 'Mostrar dados do comentário'\n'Select status': 'Selecionar status'\n'Search Type': 'Tipo de busca'\n'Reply to comment': 'Responder ao comentário'\nRecommended: Recomendado\nRecommend: Recomendo\n'Quick edit': 'Edição rápida'\nParent: Matriz\nID: ID\n'Go to edit article': 'Ir para edição do artigo'\nForum: Forum\n'For Column': 'Para a coluna'\nEmail: Email\n'Edit acceptance criteria': 'Editar critérios de aceitação'\nE-mail: E-mail\n'Delete all comments?': 'Remover todos os comentários?'\n'Date Created': 'Data de criação'\n'Comments updated.': 'Comentários atualizados.'\n'Comments status change to $1.': 'Status dos comentários foi modificado para $1.'\n'Comments deleted.': 'Comentários removidos'\n'Commenter $1 saved.': 'Autor do comentário $1 foi salvo.'\n'Commenter $1 deleted.': 'Autor do comentário $1 foi apagado.'\nCommenter: 'Autor do comentário'\n'Comment updated.': 'Comentário atualizado.'\n'Comment status change to $1.': 'Status do comentário modificado para $1.'\n'Comment id': 'ID do comentário'\n'Comment deleted.': 'Comentário removido.'\n'Comment delete by $1 from the article $2 ($3)': '$1 apagou o comentário do artigo $2 ($3)'\n'Comment Acceptance': 'Aceitação do comentário'\n'Comment $4 by $1 in the article $2 ($3)': 'Comentário $4 feito por $1 no artigo $2 ($3)'\n'Comment $1 saved.': 'Comentário $1 foi salvo.'\nColumn: Coluna\n'Change subscriber information': 'Modificar dados do assinante'\n'Ban for commenter $1 saved.': 'Proibição para autor do comentário $1 foi salva.'\nBan: Banir\n'Are you sure you want to do it?': 'Tem certeza que quer fazer isso?'\n'Add rating': 'Dar nota'\n'Add new comment commenter': null\n'Add new comment': 'Adicionar novo comentários'\n'Add new acceptance criteria': 'Adicionar novos critérios de aceitação'\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.ro.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: Ultimul\n'Full article': null\nFirst: Primul\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: Utilizator\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': 'Răspunde la comentariu'\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: Email\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.ru.yml",
    "content": "'No attachment': 'Нет приложений'\nat: на\n'With no attachment': 'Без вложения'\n'With image attachment': 'С приложенным изображением'\n'With document attachment': 'С приложенным документом'\n'Unable to reach Newscoop. Please check your internet connection.': 'Невозможно связаться с Newscoop. Пожалуйста, проверьте ваше интернет-соединение.'\nStarred: 'Отмеченные звездочкой'\nStar: Звездочка\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Показано _START_ до _END_ / _TOTAL_ записей'\n'Reply to message': 'Ответить на собщение'\nReply: Ответ\nProcessed: Обработанное\n'No records found.': 'Не выбрана ни одна из записей'\n'No entries to show': 'Нет записей для просмотра'\n'Messages updated.': 'Сообщения обновлены'\n'Messages status change to $1.': 'Статус сообщения изменен на $1.'\n'Messages deleted.': 'Сообщения удалены.'\n'Message updated.': 'Сообщение обновлено'\n'Message status change to $1.': 'Статус сообщения изменен на $1.'\n'Message deleted.': 'Сообщение удалено.'\nMessage: Сообщение\nLast: Последняя\n'Full article': 'Полный текст статьи'\nFirst: Первая\n'Feedback Messages': 'Ответ на сообщения '\n'Display _MENU_ records': 'Отобразить _MENU_ записи'\nDeleted: 'Удалено '\n'Change selected messages status': 'Изменить статус выделенных сообщений'\nAttachment: 'Прикрепленный файл'\nApproved.: Утверждено\nApprove: Утвердить\nAnonymous: Анонимный\n' - filtering from _MAX_ records': 'фильтрация от _MAX_ записей'\n'You are about to permanently delete multiple messages.': 'Вы пришли на страницу, чтобы навсегда удалить множественные сообщения.'\n'You are about to permanently delete a message.': 'Вы пришли на страницу, чтобы удалить сообщение.'\nUser: Пользователь\nNone: 'Ни один'\n'Coming from': Отправлено\n'Ban/Unban user': 'Запретить/разрешить пользователю комментировать'\nIp: Ip\n'Bans can be applied to a users name, email address or IP address.': 'Запретить комментировать можно по имени пользователя, email или IP адресу.'\n'You are about to permanently delete multiple comments.': 'Вы собираетесь окончательно удалить комментарии.'\n'You are about to permanently delete a comment.': 'Вы собираетесь окончательно удалить комментарий.'\nWebsite: Web-сайт\n'Value is not $1 characters long': 'Значение не содержит $ знаков'\nUsername: 'Имя пользователя'\n'User id': 'id пользователя'\n'User ban settings': 'Настройки запрета на комментарии'\n'Update comment': 'Обновить комментарии'\nUnrecommended: 'Не рекомендовано'\nUnrecommend: 'Не рекомендовать'\n'Subject is not $1 characters long': 'Тема не содержит $1 знаков'\n'Sort by Thread order': 'Сортировать по порядку сообщений'\n'Show parent comment': 'Показать изначальный комментарий'\n'Show commenter details': 'Показать информацию о комментаторе'\n'Show commenter': 'Показать комментатора'\n'Show comment user details': 'Показать данные '\n'Show comment user': 'Показать пользователя комментария'\n'Show comment details': 'Показать информацию о комментарии'\n'Select status': 'Выбрать статус'\n'Search Type': 'Искать тип'\n'Reply to comment': 'Ответить на комментарий'\nRecommended: Рекомендовано\nRecommend: Рекомендовать\n'Quick edit': 'Быстрое редактирование'\nParent: Источник\nID: ID\n'Go to edit article': 'Перейти к редактируемой статье'\nForum: Форум\n'For Column': 'Для колонки'\nEmail: Email\n'Edit acceptance criteria': 'Редактировать критерии допустимости'\nE-mail: E-mail\n'Delete all comments?': 'Удалить все комментарии?'\n'Date Created': 'Дата создана'\n'Comments updated.': 'Комментарии обновлены.'\n'Comments status change to $1.': 'Статус комментариев изменяется на $1.'\n'Comments deleted.': 'Комментарии удалены.'\n'Commenter $1 saved.': 'Комментатор $1 сохранен.'\n'Commenter $1 deleted.': 'Комментатор $1 удален.'\nCommenter: Комментатор\n'Comment updated.': 'Комментарий обновлен.'\n'Comment status change to $1.': 'Статус комментария изменяется на $1.'\n'Comment id': 'id комментария'\n'Comment deleted.': 'Комментарий удален.'\n'Comment delete by $1 from the article $2 ($3)': 'Комментарий удален пользователем $1 из статьи $2 ($3)'\n'Comment Acceptance': 'Приемлемость комментария'\n'Comment $4 by $1 in the article $2 ($3)': 'Комментарий $4 пользователя $1 в статье $2 ($3)'\n'Comment $1 saved.': 'Комментарий $1 сохранен.'\nColumn: Колонка\n'Change subscriber information': 'Изменить информацию о подписчике'\n'Ban for commenter $1 saved.': 'Запрет для комментатора $1 сохранен.'\nBan: Запретить\n'Are you sure you want to do it?': 'Вы уверены, что хотите это сделать?'\n'Add rating': 'Добавить рейтинг'\n'Add new comment commenter': 'Добавить нового комментатора комментариев'\n'Add new comment': 'Добавить новый комментарий'\n'Add new acceptance criteria': 'Добавить новые критерии допустимости комментария'\n'Acceptance $1 saved.': 'Критерий $1 сохранен.'\n'Acceptance $1 deleted.': 'Критерий $1 удален.'\neditorial:\n    alert:\n        toolong: 'Слишком длинное сообщение.'\n        added: 'Комментарий успешно добавлен.'\n        edited: 'Комментарий успешно отредактирован.'\n        resolved: 'Замечание успешно устранено.'\n        deleted: 'Комментарий успешно удален.'\n    btn:\n        send: Отправить\n        cancel: Отменить\n        resolve: Устранить\n        save: Сохранить\n        edit: Правка\n        delete: Удалить\n        reply: Ответ\n    label:\n        title: 'Комментарии автора:'\n        post: 'Отправить новый комментарий'\n        reply: Ответить...\n        nocomments: 'Нет комментариев.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.sh.yml",
    "content": "'No attachment': null\nat: u\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': 'Newscoop nije dostupan. Proverite svoju interent vezu.'\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Prikazano _START_ do _END_ od _TOTAL_ unosa'\n'Reply to message': 'Odgovori na poruku'\nReply: Odgovori\nProcessed: null\n'No records found.': 'Nema zapisa'\n'No entries to show': 'Nema unosa za prikaz'\n'Messages updated.': 'Poruka izmenjena.'\n'Messages status change to $1.': null\n'Messages deleted.': 'Poruka obrisana.'\n'Message updated.': 'Poruka izmenjena.'\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: Poruka\nLast: Poslednji\n'Full article': 'Ceo tekst'\nFirst: Prvi\n'Feedback Messages': 'Poruke sa povratnom informacijom'\n'Display _MENU_ records': 'Prikaži _MENU_ zapise'\nDeleted: Obrisano\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': '- filtriranje među _MAX_ zapisa'\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: Korisnik\nNone: Nijedan\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': 'Zabrane mogu biti primenjene na korisničko ime, email adresu ili IP adresu.'\n'You are about to permanently delete multiple comments.': 'Nepovaratno ćete Izbrisati više komentara.'\n'You are about to permanently delete a comment.': 'Nepovaratno ćete Izbrisati komentar.'\nWebsite: 'Veb sajt'\n'Value is not $1 characters long': 'Vrednost nije dugačka $1 karaktera'\nUsername: 'Korisničko ime'\n'User id': 'Korisnički id'\n'User ban settings': 'Podešavanje zabrane za korisnika'\n'Update comment': 'Izmeni komentar'\nUnrecommended: Nepreporučen\nUnrecommend: Nepreporučen\n'Subject is not $1 characters long': 'Naslov nije dugačak $1 karaktera'\n'Sort by Thread order': 'Sortiraj po redosledu u diskusiji'\n'Show parent comment': 'Prikažimatični komentar'\n'Show commenter details': 'Prikaži detalje o komentatoru'\n'Show commenter': 'Prikaži komentatora'\n'Show comment user details': 'Prikaži detalje o komentatoru'\n'Show comment user': 'Prikaži komentatora'\n'Show comment details': 'Prikaži detalje komentara'\n'Select status': 'Izaberi status'\n'Search Type': 'Tip pretrage'\n'Reply to comment': 'Odgovorite na komentar'\nRecommended: Preporučeni\nRecommend: Preporučen\n'Quick edit': 'Brzo uređivanje'\nParent: Matični\nID: Id\n'Go to edit article': 'Idi na uređivanje teksta'\nForum: Forum\n'For Column': 'Za kolonu'\nEmail: email\n'Edit acceptance criteria': 'Uredi kriterijum prihvatljivosti'\nE-mail: E-mail\n'Delete all comments?': 'Obriši sve komentare?'\n'Date Created': 'Datum kreiranja'\n'Comments updated.': 'Komentari izmenjeni.'\n'Comments status change to $1.': 'Promena statusa komentara u $1.'\n'Comments deleted.': 'Komentari obrisani'\n'Commenter $1 saved.': 'Komentator $1 sačuvan.'\n'Commenter $1 deleted.': 'Komentator $1 obrisan.'\nCommenter: Komentator\n'Comment updated.': 'Komentar izmenjen.'\n'Comment status change to $1.': 'Promena statusa komentara u $1.'\n'Comment id': 'Id komentara'\n'Comment deleted.': 'Komentar izbrisan'\n'Comment delete by $1 from the article $2 ($3)': 'Komentar obrisan od strane $1 iz teksta $2 ($3)'\n'Comment Acceptance': 'Prihvatljivost komentara'\n'Comment $4 by $1 in the article $2 ($3)': 'Komentar $4 od $1 u tekstu $2 ($3)'\n'Comment $1 saved.': 'Komentar $1 snimljen.'\nColumn: Kolona\n'Change subscriber information': 'Promeni informacije o pretplatniku'\n'Ban for commenter $1 saved.': 'Zabrana za komentatora $1 sačuvana.'\nBan: Zabrani\n'Are you sure you want to do it?': 'Siguri ste da želite to da uradite?'\n'Add rating': 'dodaj rejting'\n'Add new comment commenter': 'Dodaj novog komentatora'\n'Add new comment': 'dodaj novi komentar'\n'Add new acceptance criteria': 'Dodaj novi kriterijum prihvatljivosti'\n'Acceptance $1 saved.': 'Prihvatljivost $1 sačuvana.'\n'Acceptance $1 deleted.': 'Prihvatljivost $1 obrisana.'\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.sq.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: null\n'Full article': null\nFirst: null\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: null\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.sr.yml",
    "content": "'No attachment': 'Нема фајлова у прилогу'\nat: у\n'With no attachment': 'Без прилога'\n'With image attachment': 'Слика у прилогу'\n'With document attachment': 'Документ у прилогу'\n'Unable to reach Newscoop. Please check your internet connection.': 'Newscoop није доступан. Проверите своју интернет везу.'\nStarred: Означено\nStar: Означите\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Приказано _START_ до _END_ од _TOTAL_ уноса'\n'Reply to message': 'Одговорите на поруку'\nReply: Одговори\nProcessed: Обрађено\n'No records found.': 'Нема записа'\n'No entries to show': 'Нема уноса за приказ'\n'Messages updated.': 'Поруке измењене.'\n'Messages status change to $1.': 'Промена статуса поруке у $1.'\n'Messages deleted.': 'Порука је обрисана.'\n'Message updated.': 'Порука измењена.'\n'Message status change to $1.': 'Промена статуса поруке у $1.'\n'Message deleted.': 'Порука је обрисана.'\nMessage: Порука\nLast: Последњи\n'Full article': 'Цео текст'\nFirst: Први\n'Feedback Messages': 'Поруке са повратном информацијом'\n'Display _MENU_ records': 'Прикажи _MENU_ записе'\nDeleted: Обрисано\n'Change selected messages status': 'Промени статус изабраних порука'\nAttachment: 'Прикачени фајл'\nApproved.: Одобрен\nApprove: Одобри\nAnonymous: Анонимус\n' - filtering from _MAX_ records': '- филтрирање међу _MAX_ записа'\n'You are about to permanently delete multiple messages.': 'Неповратно ћете избрисати више порука.'\n'You are about to permanently delete a message.': 'Неповратно ћете избрисати поруку.'\nUser: Корисник\nNone: Ниједан\n'Coming from': 'Стигло од'\n'Ban/Unban user': 'Блокирајте или одблокирајте корисника'\nIp: null\n'Bans can be applied to a users name, email address or IP address.': 'Забране могу бити примењене на корисничко име, имејл адресу или ИП адресу'\n'You are about to permanently delete multiple comments.': 'Неповратно ћете избрисати више коментара.'\n'You are about to permanently delete a comment.': 'Неповратно ћете избрисати коментар.'\nWebsite: 'Веб сајт'\n'Value is not $1 characters long': 'Вредност није дугачка $1 карактера'\nUsername: 'Корисничко име'\n'User id': 'Кориснички ид'\n'User ban settings': 'Подешавање забране за корисника'\n'Update comment': 'Измени коментар'\nUnrecommended: Непрепоручен\nUnrecommend: Непрепоручен\n'Subject is not $1 characters long': 'Наслов није дугачак $1 карактера'\n'Sort by Thread order': 'Сортирај по редоследу у дискусији'\n'Show parent comment': 'Прикажи матични коментар'\n'Show commenter details': 'Прикажи детаље о коментатору'\n'Show commenter': 'Прикажи коментатора'\n'Show comment user details': 'Прикажи детаље о коментатору'\n'Show comment user': 'Прикажи коментатора'\n'Show comment details': 'Прикажи детаље коментатора'\n'Select status': 'Изабери статус'\n'Search Type': 'Тип претраге'\n'Reply to comment': 'Одговорите на коментар'\nRecommended: Препоручени\nRecommend: Препоручен\n'Quick edit': 'Брзо уређивање'\nParent: Матични\nID: Ид\n'Go to edit article': 'Иди на уређивање текста'\nForum: Форум\n'For Column': 'За колону'\nEmail: email\n'Edit acceptance criteria': 'Уреди критеријум прихватљивости'\nE-mail: Имејл\n'Delete all comments?': 'Обриши све коментаре?'\n'Date Created': 'Датум креирања'\n'Comments updated.': 'Коментари измењени.'\n'Comments status change to $1.': 'Промена статуса коментара у $1.'\n'Comments deleted.': 'Коментари обрисани'\n'Commenter $1 saved.': 'Коментатор $1 сачуван.'\n'Commenter $1 deleted.': 'Коментатор $1 обрисан.'\nCommenter: Коментатор\n'Comment updated.': 'Коментар измењен.'\n'Comment status change to $1.': 'Промена статуса коментара у $1.'\n'Comment id': 'Ид коментара'\n'Comment deleted.': 'Коментар избрисан'\n'Comment delete by $1 from the article $2 ($3)': 'Коментар обрисан од стране $1 из текста $2 ($3)'\n'Comment Acceptance': 'Прихватљивост коментара'\n'Comment $4 by $1 in the article $2 ($3)': 'Коментатор $4 од $1 у тексту $2 ($3)'\n'Comment $1 saved.': 'Коментатор $1 снимљен.'\nColumn: Колона\n'Change subscriber information': 'Промени информације о претплатнику'\n'Ban for commenter $1 saved.': 'Забрана за коментатора $1 сачувана.'\nBan: Забрани\n'Are you sure you want to do it?': 'Сигурни сте да желите то да урадите?'\n'Add rating': 'додај рејтинг'\n'Add new comment commenter': 'Додај новог коментатора'\n'Add new comment': 'Додај нови коментар'\n'Add new acceptance criteria': 'Додај нови критеријум прихватљивости'\n'Acceptance $1 saved.': 'Прихватљивост $1 сачувана.'\n'Acceptance $1 deleted.': 'Прихватљивост $1 обрисана.'\neditorial:\n    alert:\n        toolong: 'Порука је предугачка'\n        added: 'Коментар је успешно додат.'\n        edited: 'Коментар је успешно измењен.'\n        resolved: 'Коментар је успешно уређен.'\n        deleted: 'Коментар је успешно обрисан.'\n    btn:\n        send: Пошаљи\n        cancel: Откажи\n        resolve: Уреди\n        save: Сними\n        edit: Уреди\n        delete: Обриши\n        reply: Одговори\n    label:\n        title: null\n        post: 'Пошаљи нови коментар'\n        reply: Одговори\n        nocomments: 'Још увек без коментара.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.sv.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: Sista\n'Full article': null\nFirst: Första\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: Användare\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.tr.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: null\n'Full article': null\nFirst: null\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: null\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: 'Kullanıcı adı'\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.uk.yml",
    "content": "'No attachment': null\nat: на\n'With no attachment': 'При відсутності вкладень'\n'With image attachment': 'З зображенням у прікріпленні'\n'With document attachment': 'З документом у прікріпленні.'\n'Unable to reach Newscoop. Please check your internet connection.': 'Неможливо зв’язатись з Newscoop. Будь ласка, перевірте ваше інтернет-з’єднання.'\nStarred: Зірковий\nStar: Зірка\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Показані від початку до кінця, від загального числа записів'\n'Reply to message': 'Відповісти на коментар'\nReply: Відповідь\nProcessed: Оброблено\n'No records found.': 'Немає записів'\n'No entries to show': 'Немає записів для відображення'\n'Messages updated.': 'Повідомлення оновлено.'\n'Messages status change to $1.': 'Статус повідомленнь змінено на $1.'\n'Messages deleted.': 'Повідомлення видалені.'\n'Message updated.': 'Повідомлення оновлено'\n'Message status change to $1.': 'Статус повідомлення змінений на  $1.'\n'Message deleted.': 'Повідомлення видалено.'\nMessage: Повідомлення\nLast: Останнє\n'Full article': 'Повна стаття'\nFirst: Перше\n'Feedback Messages': 'Повідомлення зворотнього зв’язку'\n'Display _MENU_ records': 'Показати _MENU_ записи'\nDeleted: Видалено\n'Change selected messages status': 'Змінити статус вибраних повідомлень'\nAttachment: Прікріплення\nApproved.: Затверджено.\nApprove: Затвердження\nAnonymous: null\n' - filtering from _MAX_ records': 'фільтрація від _MAX_ записів'\n'You are about to permanently delete multiple messages.': 'Ви збираєтеся видалити кілька повідомлень.'\n'You are about to permanently delete a message.': 'Ви збираєтеся видалити повідомлення.'\nUser: Користувач\nNone: 'Ні один'\n'Coming from': 'Виходячи з'\n'Ban/Unban user': 'Дозволити / заборонити користувачу коментувати'\nIp: IP\n'Bans can be applied to a users name, email address or IP address.': 'Забронити коментування можна за ім’ям користувача, е-поштою або ІР-адресою.'\n'You are about to permanently delete multiple comments.': 'Ви збираєтеся остаточно видалити коментарі.'\n'You are about to permanently delete a comment.': 'Ви збираєтеся остаточно видалити коментар.'\nWebsite: Веб-сейт\n'Value is not $1 characters long': 'Значення не містить $ знаків'\nUsername: 'Ім’я користувача'\n'User id': 'ID користувача'\n'User ban settings': 'Налаштування заборони коментування'\n'Update comment': 'Оновити коментарі'\nUnrecommended: 'Не рекомендовано'\nUnrecommend: 'Не рекомендувати'\n'Subject is not $1 characters long': 'Тема не містить $1 знаків.'\n'Sort by Thread order': 'Сортувтаи '\n'Show parent comment': 'Показати первісний коментар'\n'Show commenter details': 'Показати деталі коментатора'\n'Show commenter': 'Показати коментатора'\n'Show comment user details': '??'\n'Show comment user': 'Показати коментарі користувачів'\n'Show comment details': 'Показати деталі коментарів'\n'Select status': 'Вибрати статус'\n'Search Type': 'Тип пошуку'\n'Reply to comment': 'Відповісти на коментар'\nRecommended: Рекомендовано\nRecommend: Рекомендувати\n'Quick edit': 'Швидка відповідь'\nParent: Джерело/\nID: ID\n'Go to edit article': 'До редагування статті'\nForum: Форум\n'For Column': 'Для колонки'\nEmail: Е-пошта\n'Edit acceptance criteria': 'Змінити критерії прийнятності'\nE-mail: Е-пошта\n'Delete all comments?': 'Видалити всі коментарі'\n'Date Created': 'Дата створення'\n'Comments updated.': 'Коментарії оновлено.'\n'Comments status change to $1.': 'Змінити статус коменарів на $1.'\n'Comments deleted.': 'Коментар видалено.'\n'Commenter $1 saved.': 'Коментатора $1 збережено.'\n'Commenter $1 deleted.': 'Коментатора $1 видалено.'\nCommenter: Коментар\n'Comment updated.': 'Коментарій оновлено.'\n'Comment status change to $1.': 'Змінити статус коменаря на $1.'\n'Comment id': 'ІD коментаря'\n'Comment deleted.': 'Коментар видалено.'\n'Comment delete by $1 from the article $2 ($3)': 'Коментар видалено $1 з статті $2 ($3)'\n'Comment Acceptance': 'Прийняття коментаря'\n'Comment $4 by $1 in the article $2 ($3)': 'Коментар $4 на $1 у статті 2 $ ($3)'\n'Comment $1 saved.': 'Коментар $1 збережено.'\nColumn: Колонка\n'Change subscriber information': 'Змінити інформацію про підписувача'\n'Ban for commenter $1 saved.': 'Заборона на коментатора $1 збережена.'\nBan: Заборона\n'Are you sure you want to do it?': 'Ви впевнені що хочете зробити це?'\n'Add rating': 'Додати рейтинг'\n'Add new comment commenter': 'Додати новий коментар коментаря'\n'Add new comment': 'Додати коментар'\n'Add new acceptance criteria': 'Додати новий крітерій прийняття'\n'Acceptance $1 saved.': 'Крітерій $1 збережено.'\n'Acceptance $1 deleted.': 'Прийняття $1 видалено.'\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.vi.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: null\n'Full article': null\nFirst: null\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: null\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.zh.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: 最后\n'Full article': null\nFirst: '最初 '\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: '&#29992;&#25143;'\nNone: 没有\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/comments.zh_TW.yml",
    "content": "'No attachment': null\nat: null\n'With no attachment': null\n'With image attachment': null\n'With document attachment': null\n'Unable to reach Newscoop. Please check your internet connection.': null\nStarred: null\nStar: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Reply to message': null\nReply: null\nProcessed: null\n'No records found.': null\n'No entries to show': null\n'Messages updated.': null\n'Messages status change to $1.': null\n'Messages deleted.': null\n'Message updated.': null\n'Message status change to $1.': null\n'Message deleted.': null\nMessage: null\nLast: null\n'Full article': null\nFirst: null\n'Feedback Messages': null\n'Display _MENU_ records': null\nDeleted: null\n'Change selected messages status': null\nAttachment: null\nApproved.: null\nApprove: null\nAnonymous: null\n' - filtering from _MAX_ records': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\nUser: null\nNone: null\n'Coming from': null\n'Ban/Unban user': null\nIp: null\n'Bans can be applied to a users name, email address or IP address.': null\n'You are about to permanently delete multiple comments.': null\n'You are about to permanently delete a comment.': null\nWebsite: null\n'Value is not $1 characters long': null\nUsername: null\n'User id': null\n'User ban settings': null\n'Update comment': null\nUnrecommended: null\nUnrecommend: null\n'Subject is not $1 characters long': null\n'Sort by Thread order': null\n'Show parent comment': null\n'Show commenter details': null\n'Show commenter': null\n'Show comment user details': null\n'Show comment user': null\n'Show comment details': null\n'Select status': null\n'Search Type': null\n'Reply to comment': null\nRecommended: null\nRecommend: null\n'Quick edit': null\nParent: null\nID: null\n'Go to edit article': null\nForum: null\n'For Column': null\nEmail: null\n'Edit acceptance criteria': null\nE-mail: null\n'Delete all comments?': null\n'Date Created': null\n'Comments updated.': null\n'Comments status change to $1.': null\n'Comments deleted.': null\n'Commenter $1 saved.': null\n'Commenter $1 deleted.': null\nCommenter: null\n'Comment updated.': null\n'Comment status change to $1.': null\n'Comment id': null\n'Comment deleted.': null\n'Comment delete by $1 from the article $2 ($3)': null\n'Comment Acceptance': null\n'Comment $4 by $1 in the article $2 ($3)': null\n'Comment $1 saved.': null\nColumn: null\n'Change subscriber information': null\n'Ban for commenter $1 saved.': null\nBan: null\n'Are you sure you want to do it?': null\n'Add rating': null\n'Add new comment commenter': null\n'Add new comment': null\n'Add new acceptance criteria': null\n'Acceptance $1 saved.': null\n'Acceptance $1 deleted.': null\neditorial:\n    alert:\n        toolong: null\n        added: null\n        edited: null\n        resolved: null\n        deleted: null\n    btn:\n        send: null\n        cancel: null\n        resolve: null\n        save: null\n        edit: null\n        delete: null\n        reply: null\n    label:\n        title: null\n        post: null\n        reply: null\n        nocomments: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.ar.yml",
    "content": "'The country $1 could not be created.': 'لم تنشئ الدولة $1.'\n'Country with code $1 exists already.': 'الدولة التي تحمل الرمز $1 موجودة من قبل.'\n'You do not have the right to add countries.': 'ليس لديك الحق في إضافة بلدان.'\n'Delete country': 'أزل البلد'\n'You do not have the right to delete countries.': 'ليس لديك الحق في إزالة بلدان.'\n'Are you sure you want to delete the country $1?': 'هل أنت متأكد أنك تريد أن تحذف البلد $1؟'\n'The country $1 could not be deleted.': 'لم يزل البلد $1.'\n'Edit country name': 'عدل اسم البلد'\n'You do not have the right to change country names.': 'ليس لديك الحق في تغيير أسماء البلدان.'\n'Changing country name': 'قيد تغيير اسم البلد'\n'The country name $1 could not be changed': 'لم يغير اسم البلد $1'\n'Translate country name': 'ترجم اسم البلد'\n'You do not have the right to translate country names.': 'ليس لديك الحق في ترجمة أسماء البلد'\n'The country name $1 could not be translated': 'لم يترجم إسم البلد $1'\n'Add New Country': 'أضف بلد جديد'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.az.yml",
    "content": "'The country $1 could not be created.': '$1 ölkəsi yaradıla bilmədi.'\n'Country with code $1 exists already.': '$1 kodlu ölkə artıq mövcuddur.'\n'You do not have the right to add countries.': 'Ölkə əlavə etməyə ixtiyarın yoxdur.'\n'Delete country': 'Ölkəni sil'\n'You do not have the right to delete countries.': 'Ölkələri silməyə ixtiyarın yoxdur.'\n'Are you sure you want to delete the country $1?': '$1 adlı ölkəni silmək istədiyinə əminsən?'\n'The country $1 could not be deleted.': '$1 adlı ölkə silinə bilmədi.'\n'Edit country name': 'Ölkə adını dəyiş'\n'You do not have the right to change country names.': 'Ölkə adlarını dəıyişməyə ixtiyarın yoxdur.'\n'Changing country name': 'Ölkə adının dəyişilməsi'\n'The country name $1 could not be changed': '$1 adlı ölkənin adına dəyişiklik edilə bilinməz'\n'Translate country name': 'Ölkə adını tərcümə et'\n'You do not have the right to translate country names.': 'Ölkə adlarını tərcümə etməyə ixtiyarın yoxdur.'\n'The country name $1 could not be translated': '$1 adlı ölkənin adı tərcümə edilə bilmədi'\n'Add New Country': 'Yeni Ölkə Əlavə Et'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.be.yml",
    "content": "'The country $1 could not be created.': 'Краіна $1 не можа быць створаная.'\n'Country with code $1 exists already.': 'Краіна з кодам $1 ужо існуе.'\n'You do not have the right to add countries.': 'Вы ня маеце права доступу для даданьня краiн.'\n'Delete country': 'Выдалiць краiну'\n'You do not have the right to delete countries.': 'Вы ня маеце права доступу для выдаленьня краiн.'\n'Are you sure you want to delete the country $1?': 'Ці Вы ўпэўнены, што хочаце выдалiць краiну $1?'\n'The country $1 could not be deleted.': 'Немагчыма выдалiць краiну $1.'\n'Edit country name': 'Рэдагаваць назву краiны'\n'You do not have the right to change country names.': 'Вы ня маеце права доступу для зьмяненьня назвы краiны.'\n'Changing country name': 'Зьмяненьне назвы краiны'\n'The country name $1 could not be changed': 'Немагчыма зьмянiць назву краiны $1'\n'Translate country name': 'Перакласьці назву краiны '\n'You do not have the right to translate country names.': 'Вы ня маеце права доступу для перакладу назвы краiны.'\n'The country name $1 could not be translated': 'Немагчыма перакласьцi назву краiны $1'\n'Add New Country': 'Дадаць новую краiну'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.bn.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': null\n'Delete country': null\n'You do not have the right to delete countries.': null\n'Are you sure you want to delete the country $1?': null\n'The country $1 could not be deleted.': null\n'Edit country name': null\n'You do not have the right to change country names.': null\n'Changing country name': null\n'The country name $1 could not be changed': null\n'Translate country name': null\n'You do not have the right to translate country names.': null\n'The country name $1 could not be translated': null\n'Add New Country': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.cs.yml",
    "content": "'The country $1 could not be created.': 'Země $1 nemohla být vytvořena.'\n'Country with code $1 exists already.': 'Země s označením  $1 již existuje.'\n'You do not have the right to add countries.': 'Nemáte právo přidat zemi'\n'Delete country': 'Smazat zemi'\n'You do not have the right to delete countries.': 'Nemáte právo smazat zemi'\n'Are you sure you want to delete the country $1?': 'Určitě chcete smazat zemi $1?'\n'The country $1 could not be deleted.': 'Země $1 nemohla být smazána'\n'Edit country name': 'Editovat název země'\n'You do not have the right to change country names.': 'Nemáte právo měnit název země'\n'Changing country name': 'Změnit název země'\n'The country name $1 could not be changed': 'Název země $1 nemohl být změněn'\n'Translate country name': 'Přelož název země'\n'You do not have the right to translate country names.': 'Nemáte právo přeložit název země'\n'The country name $1 could not be translated': 'Název země $1 nemohl být přeložen'\n'Add New Country': 'Přidat Novou Zemi'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.da.yml",
    "content": "'The country $1 could not be created.': 'Landet $1 kunne ikke oprettes.'\n'Country with code $1 exists already.': 'Der findes allerede et land med koden $1.'\n'You do not have the right to add countries.': 'Du har ikke tilladelse til at tilføje lande.'\n'Delete country': 'Slet land'\n'You do not have the right to delete countries.': 'Du har ikke tilladelse til at slette lande.'\n'Are you sure you want to delete the country $1?': 'Vil du slette landet $1?'\n'The country $1 could not be deleted.': 'Landet $1 kunne ikke slettes.'\n'Edit country name': 'Ret landenavn'\n'You do not have the right to change country names.': 'Du har ikke tilladelse til at ændre landenavne.'\n'Changing country name': 'Retter landenavn.'\n'The country name $1 could not be changed': 'Landenavnet $1 kunne ikke rettes'\n'Translate country name': 'Oversæt landenavn'\n'You do not have the right to translate country names.': 'Du har ikke tilladelse til at oversætte landenavne.'\n'The country name $1 could not be translated': 'Landenavnet $1 kunne ikke oversættes'\n'Add New Country': 'Tilføj nyt land'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.de.yml",
    "content": "'The country $1 could not be created.': 'Das Land $1 kann nicht angelegt werden. '\n'Country with code $1 exists already.': 'Das Land mit dem Ländercode $1 existiert bereits. '\n'You do not have the right to add countries.': 'Keine Berechtigung Länder hinzuzufügen.'\n'Delete country': 'Land Löschen'\n'You do not have the right to delete countries.': 'Keine Berechtigung Länder zu löschen.'\n'Are you sure you want to delete the country $1?': 'Land $1 wirklich löschen?'\n'The country $1 could not be deleted.': 'Land $1 konnte nicht gelöscht werden.'\n'Edit country name': 'Ländernamen bearbeiten'\n'You do not have the right to change country names.': 'Keine Berechtigung Ländernamen zu ändern.'\n'Changing country name': 'Ländername wird geändert'\n'The country name $1 could not be changed': 'Der Ländername $1 konnte nicht geändert werden.'\n'Translate country name': 'Ländernamen übersetzen'\n'You do not have the right to translate country names.': 'Keine Berechtigung Ländernamen zu übersetzen.'\n'The country name $1 could not be translated': 'Ländername $1 konnte nicht übersetzt werden.'\n'Add New Country': 'Neues Land hinzufügen'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.de_AT.yml",
    "content": "'The country $1 could not be created.': 'Das Land $1 kann nicht angelegt werden. '\n'Country with code $1 exists already.': 'Das Land mit dem Ländercode $1 existiert bereits. '\n'You do not have the right to add countries.': 'Keine Berechtigung Länder hinzuzufügen.'\n'Delete country': 'Land Löschen'\n'You do not have the right to delete countries.': 'Keine Berechtigung Länder zu löschen.'\n'Are you sure you want to delete the country $1?': 'Land $1 wirklich löschen?'\n'The country $1 could not be deleted.': 'Land $1 konnte nicht gelöscht werden.'\n'Edit country name': 'Ländernamen bearbeiten'\n'You do not have the right to change country names.': 'Keine Berechtigung Ländernamen zu ändern.'\n'Changing country name': 'Ländername wird geändert'\n'The country name $1 could not be changed': 'Der Ländername $1 konnte nicht geändert werden.'\n'Translate country name': 'Ländernamen übersetzen'\n'You do not have the right to translate country names.': 'Keine Berechtigung Ländernamen zu übersetzen.'\n'The country name $1 could not be translated': 'Ländername $1 konnte nicht übersetzt werden.'\n'Add New Country': 'Neues Land hinzufügen'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.el.yml",
    "content": "'The country $1 could not be created.': 'Η χώρα $1 δεν μπόρεσε να δημιουργηθεί.'\n'Country with code $1 exists already.': 'Χώρα με κωδικό $1 ήδη υπάρχει.'\n'You do not have the right to add countries.': 'Δεν έχετε το δικαίωμα να προσθέσετε χώρες.'\n'Delete country': 'Διαγραφή χώρας'\n'You do not have the right to delete countries.': 'Δεν έχετε το δικαίωμα να διαγράψετε χώρες.'\n'Are you sure you want to delete the country $1?': 'Είστε σίγουρος/η ότι θέλετε να διαγράψετε την χώρα $1;'\n'The country $1 could not be deleted.': 'Η χώρα $1 δεν μπόρεσε να διαγραφεί.'\n'Edit country name': 'Επεξεργασία ονόματος χώρας'\n'You do not have the right to change country names.': 'Δεν έχετε το δικαίωμα να αλλάξετε ονόματα χωρών.'\n'Changing country name': 'Αλλαγή ονόματος χώρας'\n'The country name $1 could not be changed': 'Δεν μπόρεσαν να γίνουν αλλαγές στο όνομα χώρας $1'\n'Translate country name': 'Μετάφραση ονόματος χώρας'\n'You do not have the right to translate country names.': 'Δεν έχετε το δικαίωμα να μεταφράσετε ονόματα χωρών.'\n'The country name $1 could not be translated': 'Το όνομα χώρας $1 δεν μπόρεσε να μεταφραστεί'\n'Add New Country': 'Προσθήκη Νέας Χώρας'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.en.yml",
    "content": "'The country $1 could not be created.': 'The country $1 could not be created.'\n'Country with code $1 exists already.': 'Country with code $1 exists already.'\n'You do not have the right to add countries.': 'You do not have the right to add countries.'\n'Delete country': 'Delete country'\n'You do not have the right to delete countries.': 'You do not have the right to delete countries.'\n'Are you sure you want to delete the country $1?': 'Are you sure you want to delete the country $1?'\n'The country $1 could not be deleted.': 'The country $1 could not be deleted.'\n'Edit country name': 'Edit country name'\n'You do not have the right to change country names.': 'You do not have the right to change country names.'\n'Changing country name': 'Changing country name'\n'The country name $1 could not be changed': 'The country name $1 could not be changed'\n'Translate country name': 'Translate country name'\n'You do not have the right to translate country names.': 'You do not have the right to translate country names.'\n'The country name $1 could not be translated': 'The country name $1 could not be translated'\n'Add New Country': 'Add New Country'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.en_GB.yml",
    "content": "'The country $1 could not be created.': 'The country $1 could not be created.'\n'Country with code $1 exists already.': 'Country with code $1 exists already.'\n'You do not have the right to add countries.': 'You do not have the right to add countries.'\n'Delete country': 'Delete country'\n'You do not have the right to delete countries.': 'You do not have the right to delete countries.'\n'Are you sure you want to delete the country $1?': 'Are you sure you want to delete the country $1?'\n'The country $1 could not be deleted.': 'The country $1 could not be deleted.'\n'Edit country name': 'Edit country name'\n'You do not have the right to change country names.': 'You do not have the right to change country names.'\n'Changing country name': 'Changing country name'\n'The country name $1 could not be changed': 'The country name $1 could not be changed'\n'Translate country name': 'Translate country name'\n'You do not have the right to translate country names.': 'You do not have the right to translate country names.'\n'The country name $1 could not be translated': 'The country name $1 could not be translated'\n'Add New Country': 'Add New Country'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.es.yml",
    "content": "'The country $1 could not be created.': 'No fue posible crear el país $1.'\n'Country with code $1 exists already.': 'Ya existe un país con el código $1.'\n'You do not have the right to add countries.': 'No tiene derecho para agregar países'\n'Delete country': 'Borrar país'\n'You do not have the right to delete countries.': 'No tiene derecho para borrar países'\n'Are you sure you want to delete the country $1?': '¿Está seguro de que quiere borrar el país $1?'\n'The country $1 could not be deleted.': 'El país $1 no pudo ser borrado'\n'Edit country name': 'Editar nombre de país'\n'You do not have the right to change country names.': 'No tiene derecho para cambiar nombre de país'\n'Changing country name': 'Cambiando nombre de país'\n'The country name $1 could not be changed': 'El nombre de país $1 no pudo ser cambiado'\n'Translate country name': 'Traduzca nombre de país'\n'You do not have the right to translate country names.': 'No tiene derecho a traducir nombre de país'\n'The country name $1 could not be translated': 'El nombre de país $1 no pudo ser traducido'\n'Add New Country': 'Añadir nuevo país'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.es_AR.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': null\n'Delete country': null\n'You do not have the right to delete countries.': null\n'Are you sure you want to delete the country $1?': null\n'The country $1 could not be deleted.': null\n'Edit country name': null\n'You do not have the right to change country names.': null\n'Changing country name': null\n'The country name $1 could not be changed': null\n'Translate country name': null\n'You do not have the right to translate country names.': null\n'The country name $1 could not be translated': null\n'Add New Country': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.fa.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': null\n'Delete country': null\n'You do not have the right to delete countries.': null\n'Are you sure you want to delete the country $1?': null\n'The country $1 could not be deleted.': null\n'Edit country name': null\n'You do not have the right to change country names.': null\n'Changing country name': null\n'The country name $1 could not be changed': null\n'Translate country name': null\n'You do not have the right to translate country names.': null\n'The country name $1 could not be translated': null\n'Add New Country': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.fa_AF.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': null\n'Delete country': null\n'You do not have the right to delete countries.': null\n'Are you sure you want to delete the country $1?': null\n'The country $1 could not be deleted.': null\n'Edit country name': null\n'You do not have the right to change country names.': null\n'Changing country name': null\n'The country name $1 could not be changed': null\n'Translate country name': null\n'You do not have the right to translate country names.': null\n'The country name $1 could not be translated': null\n'Add New Country': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.fr.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': 'Vous navez pas le droit dajouter des pays. '\n'Delete country': 'Supprimez pays'\n'You do not have the right to delete countries.': 'Vous navez pas le droit de supprimer des pays.'\n'Are you sure you want to delete the country $1?': 'Etes-vous sûr que vous voulez supprimer le  pays $1 ? '\n'The country $1 could not be deleted.': 'Le  pays  $1 ne pouvait pas être supprimé. '\n'Edit country name': 'Nom de pays dédition '\n'You do not have the right to change country names.': 'Vous navez pas le droit de changer des noms de pays. '\n'Changing country name': 'Changement de nom de pays '\n'The country name $1 could not be changed': 'Le  nom de pays $1 ne pouvait pas être changé'\n'Translate country name': 'Traduire le nom de pays '\n'You do not have the right to translate country names.': 'Vous navez pas le droit de traduire des noms de pays. '\n'The country name $1 could not be translated': 'Le  nom de pays $1 ne pouvait pas être traduit '\n'Add New Country': 'Ajoutez Nouveau Pays '\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.he.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': null\n'Delete country': null\n'You do not have the right to delete countries.': null\n'Are you sure you want to delete the country $1?': null\n'The country $1 could not be deleted.': null\n'Edit country name': null\n'You do not have the right to change country names.': null\n'Changing country name': null\n'The country name $1 could not be changed': null\n'Translate country name': null\n'You do not have the right to translate country names.': null\n'The country name $1 could not be translated': null\n'Add New Country': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.hr.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': 'Nemate ovlasti dodavati zemlje.'\n'Delete country': 'Izbriši zemlju.'\n'You do not have the right to delete countries.': 'Nemate ovlasti brisati zemlje.'\n'Are you sure you want to delete the country $1?': 'Jeste li sigurni da želite obrisati zemlju $1?'\n'The country $1 could not be deleted.': 'Zemlja $1 ne može se obrisati.'\n'Edit country name': 'Uredite ime zemlje'\n'You do not have the right to change country names.': 'Nemate ovlasti mijenjati imena zemalja.'\n'Changing country name': 'Mijenjanje imena zemlje'\n'The country name $1 could not be changed': 'Ime zemlje $1 ne može se promijeniti'\n'Translate country name': 'Prevedi ime zemlje'\n'You do not have the right to translate country names.': 'Nemate ovlasti prevoditi imena zemalja.'\n'The country name $1 could not be translated': 'Ime zemlje $1 ne može se prevesti.'\n'Add New Country': 'Dodaj novu zemlju'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.hu.yml",
    "content": "'The country $1 could not be created.': 'Nem lehet létrehozni a/z $1 országot.'\n'Country with code $1 exists already.': 'Már létezik $1 kódú ország.'\n'You do not have the right to add countries.': 'Nincs jogod az országok hozzáadásához.'\n'Delete country': 'Ország törlése'\n'You do not have the right to delete countries.': 'Nincs jogod az országok törléséhez.'\n'Are you sure you want to delete the country $1?': 'Biztosan törölni kívánod a következő országot: $1?'\n'The country $1 could not be deleted.': 'Nem lehet törölni a következő országot: $1.'\n'Edit country name': 'Az ország nevének szerkesztése'\n'You do not have the right to change country names.': 'Nincs jogod az országnevek módosításához.'\n'Changing country name': 'Az országnév módosítása'\n'The country name $1 could not be changed': 'Nem lehet módosítani a/z $1 országnevet '\n'Translate country name': 'Az országnév fordítása'\n'You do not have the right to translate country names.': 'Nincs jogod az országnevek lefordításához.'\n'The country name $1 could not be translated': 'Nem lehet lefordítani a/z $1 országnevet'\n'Add New Country': 'Új ország hozzáadása'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.hy.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': null\n'Delete country': null\n'You do not have the right to delete countries.': null\n'Are you sure you want to delete the country $1?': null\n'The country $1 could not be deleted.': null\n'Edit country name': null\n'You do not have the right to change country names.': null\n'Changing country name': null\n'The country name $1 could not be changed': null\n'Translate country name': null\n'You do not have the right to translate country names.': null\n'The country name $1 could not be translated': null\n'Add New Country': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.hy_AM.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': null\n'Delete country': null\n'You do not have the right to delete countries.': null\n'Are you sure you want to delete the country $1?': null\n'The country $1 could not be deleted.': null\n'Edit country name': null\n'You do not have the right to change country names.': null\n'Changing country name': null\n'The country name $1 could not be changed': null\n'Translate country name': null\n'You do not have the right to translate country names.': null\n'The country name $1 could not be translated': null\n'Add New Country': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.id.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': null\n'Delete country': null\n'You do not have the right to delete countries.': null\n'Are you sure you want to delete the country $1?': null\n'The country $1 could not be deleted.': null\n'Edit country name': null\n'You do not have the right to change country names.': null\n'Changing country name': null\n'The country name $1 could not be changed': null\n'Translate country name': null\n'You do not have the right to translate country names.': null\n'The country name $1 could not be translated': null\n'Add New Country': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.it.yml",
    "content": "'The country $1 could not be created.': 'La nazione $1 non può essere creata.'\n'Country with code $1 exists already.': 'La nazione con codice $1 esiste già.'\n'You do not have the right to add countries.': 'Non si dispone dei diritti di aggiungere nazioni.'\n'Delete country': 'Elimina nazione'\n'You do not have the right to delete countries.': 'Non si dispone dei diritti di eliminare nazioni.'\n'Are you sure you want to delete the country $1?': 'confermi di eliminare la nazione $1?'\n'The country $1 could not be deleted.': 'La nazione $1 non è stata eliminata.'\n'Edit country name': 'Modifica nome della nazione'\n'You do not have the right to change country names.': 'Non si dispone dei diritti di cambiare il nome delle nazioni.'\n'Changing country name': 'Modificando il nome della nazione'\n'The country name $1 could not be changed': 'Non è possibile modificare il nome della nazione $1'\n'Translate country name': 'Traduci il nome della nazione'\n'You do not have the right to translate country names.': 'Non si dispone dei permessi per tradurre nomi delle nazioni.'\n'The country name $1 could not be translated': 'Il nome di nazione $1 non è stato tradotto'\n'Add New Country': 'Aggiungi nazione'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.ka.yml",
    "content": "'The country $1 could not be created.': '$1 ქვეყანა ვერ შეიქმნა.'\n'Country with code $1 exists already.': 'ქვეყანა $1 კოდით უკვე არსებობს.'\n'You do not have the right to add countries.': 'თქვენ არ გაქვთ ქვეყნების დამატების უფლება.'\n'Delete country': 'ქვეყნის წაშლა'\n'You do not have the right to delete countries.': 'თქვენ არ გაქვთ ქვეყნების წაშლის უფლება.'\n'Are you sure you want to delete the country $1?': 'დარწმუნებული ხართ რომ გსურთ ამ ქვეყნის წაშლა: $1?'\n'The country $1 could not be deleted.': '$1 ვერ წაიშალა.'\n'Edit country name': 'ქვეყნის სახელის რედაქტირება'\n'You do not have the right to change country names.': 'თქვენ არ გაქვთ ქვეყნის სახელის შეცვლის უფლკება'\n'Changing country name': 'ქვეყნის სახელის შეცვლა'\n'The country name $1 could not be changed': 'ქვეყნის სახელი $1 ვერ შეიცვალა'\n'Translate country name': 'ქვეყნის სახელის თარგმნა'\n'You do not have the right to translate country names.': 'თქვენ არ გაქვთ ქვეყნის სახელის თარგმნის უფლება.'\n'The country name $1 could not be translated': 'ქვეყნის სახელი ($1) ვერ ითარგმნა.'\n'Add New Country': 'ახალი ქვეყნის დამატება'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.ko.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': '국가를 추가할 권한이 없습니다. '\n'Delete country': '국가 삭제'\n'You do not have the right to delete countries.': '국가를 삭제할 권한이 없습니다. '\n'Are you sure you want to delete the country $1?': '국가 $1 을 확실히 삭제합니까?'\n'The country $1 could not be deleted.': '국가 $1을 삭제할 수없습니다. '\n'Edit country name': '국가 이름 변경 '\n'You do not have the right to change country names.': '국가 이름을 변경할 권한이 없습니다. '\n'Changing country name': '국가 이름 변경중'\n'The country name $1 could not be changed': '국가 이름 $1 을 변경할 수 없습니다. '\n'Translate country name': '국가 이름 번역'\n'You do not have the right to translate country names.': '국가 이름을 번역할 권한이 없습니다. '\n'The country name $1 could not be translated': '국가 이름 41 을 번역할 수없습니다. '\n'Add New Country': '새로운 국가 추가'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.ku.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': null\n'Delete country': null\n'You do not have the right to delete countries.': null\n'Are you sure you want to delete the country $1?': null\n'The country $1 could not be deleted.': null\n'Edit country name': null\n'You do not have the right to change country names.': null\n'Changing country name': null\n'The country name $1 could not be changed': null\n'Translate country name': null\n'You do not have the right to translate country names.': null\n'The country name $1 could not be translated': null\n'Add New Country': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.lv.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': null\n'Delete country': null\n'You do not have the right to delete countries.': null\n'Are you sure you want to delete the country $1?': null\n'The country $1 could not be deleted.': null\n'Edit country name': null\n'You do not have the right to change country names.': null\n'Changing country name': null\n'The country name $1 could not be changed': null\n'Translate country name': null\n'You do not have the right to translate country names.': null\n'The country name $1 could not be translated': null\n'Add New Country': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.mr.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': null\n'Delete country': null\n'You do not have the right to delete countries.': null\n'Are you sure you want to delete the country $1?': null\n'The country $1 could not be deleted.': null\n'Edit country name': null\n'You do not have the right to change country names.': null\n'Changing country name': null\n'The country name $1 could not be changed': null\n'Translate country name': null\n'You do not have the right to translate country names.': null\n'The country name $1 could not be translated': null\n'Add New Country': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.nb_NO.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': null\n'Delete country': null\n'You do not have the right to delete countries.': null\n'Are you sure you want to delete the country $1?': null\n'The country $1 could not be deleted.': null\n'Edit country name': null\n'You do not have the right to change country names.': null\n'Changing country name': null\n'The country name $1 could not be changed': null\n'Translate country name': null\n'You do not have the right to translate country names.': null\n'The country name $1 could not be translated': null\n'Add New Country': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.nl.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': null\n'Delete country': 'Verwijder land'\n'You do not have the right to delete countries.': null\n'Are you sure you want to delete the country $1?': null\n'The country $1 could not be deleted.': 'Het land $1 kon niet worden gewist.'\n'Edit country name': 'Bewerk landnaam'\n'You do not have the right to change country names.': null\n'Changing country name': 'Wijzigen landnaam'\n'The country name $1 could not be changed': 'De landnaam $1 kan niet worden gewijzigd'\n'Translate country name': 'Vertaal de landnaam'\n'You do not have the right to translate country names.': null\n'The country name $1 could not be translated': 'De landnaam $1 kon niet worden vertaald'\n'Add New Country': 'Voeg nieuw land toe'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.pa.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': null\n'Delete country': null\n'You do not have the right to delete countries.': null\n'Are you sure you want to delete the country $1?': null\n'The country $1 could not be deleted.': null\n'Edit country name': null\n'You do not have the right to change country names.': null\n'Changing country name': null\n'The country name $1 could not be changed': null\n'Translate country name': null\n'You do not have the right to translate country names.': null\n'The country name $1 could not be translated': null\n'Add New Country': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.pl.yml",
    "content": "'The country $1 could not be created.': 'Kraj $1 nie może zostać utworzony.'\n'Country with code $1 exists already.': 'Kraj z kodem $1 już istnieje.'\n'You do not have the right to add countries.': 'Brak wystarczających praw do dodawania krajów.'\n'Delete country': 'Usuń kraj'\n'You do not have the right to delete countries.': 'Nie masz praw by usuwać kraje'\n'Are you sure you want to delete the country $1?': 'Na pewno usunąć kraj $1?'\n'The country $1 could not be deleted.': 'Kraj $1 nie mógł być usunięty.'\n'Edit country name': 'Edytuj nazwę kraju'\n'You do not have the right to change country names.': 'Nie masz praw by edytować nazwy krajów.'\n'Changing country name': 'Zmiana nazwy kraju.'\n'The country name $1 could not be changed': 'Nazwa kraju $1 nie została zmieniona'\n'Translate country name': 'Przetłumacz nazwę kraju'\n'You do not have the right to translate country names.': 'Brak wystarczających praw do tłumaczenia nazw krajów.'\n'The country name $1 could not be translated': 'Nazwa kraju $1 nie została przetłumaczona'\n'Add New Country': 'Dodaj nowy kraj'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.ps.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': null\n'Delete country': null\n'You do not have the right to delete countries.': null\n'Are you sure you want to delete the country $1?': null\n'The country $1 could not be deleted.': null\n'Edit country name': null\n'You do not have the right to change country names.': null\n'Changing country name': null\n'The country name $1 could not be changed': null\n'Translate country name': null\n'You do not have the right to translate country names.': null\n'The country name $1 could not be translated': null\n'Add New Country': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.pt.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': 'Não tem permissão para adicionar Paises'\n'Delete country': 'Eliminar Pais'\n'You do not have the right to delete countries.': 'Não tem permissão para eliminar Paises'\n'Are you sure you want to delete the country $1?': 'Deseja eliminar o pais $1?'\n'The country $1 could not be deleted.': 'O Pais $1 não pode ser eliminado.'\n'Edit country name': 'Alterar nome do Pais'\n'You do not have the right to change country names.': 'Não tem permissões para Alterar nome de Paises'\n'Changing country name': 'Alterando Nome de Pais'\n'The country name $1 could not be changed': 'O Nome do Pais $1 não pode ser Alterado'\n'Translate country name': 'Traduzir Nome de Pais'\n'You do not have the right to translate country names.': 'Não tem permissões para Traduzir nomes de Paises'\n'The country name $1 could not be translated': 'O Nome do Pais $1 não pode ser Traduzido'\n'Add New Country': 'Adicionar País.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.pt_BR.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': 'Não tem permissão para adicionar Paises'\n'Delete country': 'Eliminar Pais'\n'You do not have the right to delete countries.': 'Não tem permissão para eliminar Paises'\n'Are you sure you want to delete the country $1?': 'Deseja eliminar o pais $1?'\n'The country $1 could not be deleted.': 'O Pais $1 não pode ser eliminado.'\n'Edit country name': 'Alterar nome do Pais'\n'You do not have the right to change country names.': 'Não tem permissões para Alterar nome de Paises'\n'Changing country name': 'Alterando Nome de Pais'\n'The country name $1 could not be changed': 'O Nome do Pais $1 não pode ser Alterado'\n'Translate country name': 'Traduzir Nome de Pais'\n'You do not have the right to translate country names.': 'Não tem permissões para Traduzir nomes de Paises'\n'The country name $1 could not be translated': 'O Nome do Pais $1 não pode ser Traduzido'\n'Add New Country': 'Adicionar País.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.ro.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': 'Nu ai dreptul să adaugi ţări.'\n'Delete country': 'Şterge ţara'\n'You do not have the right to delete countries.': 'Nu ai dreptul să ştergi ţări.'\n'Are you sure you want to delete the country $1?': 'Eşti sigur că vrei să ştergi ţara $1?'\n'The country $1 could not be deleted.': 'Ţara $1nu a putut fi ştearsă.'\n'Edit country name': 'Modifică numele ţării'\n'You do not have the right to change country names.': 'Nu ai dreptul să schimbi numele ţărilor.'\n'Changing country name': 'Schimbă numele ţării'\n'The country name $1 could not be changed': 'Numele ţării $1 nu a putut fi schimbat'\n'Translate country name': 'Tradu numele ţării'\n'You do not have the right to translate country names.': 'Nu ai dreptul să traduci numele ţărilor.'\n'The country name $1 could not be translated': 'Numele ţării $1 nu a putut fi tradus'\n'Add New Country': 'Adaugă ţară nouă'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.ru.yml",
    "content": "'The country $1 could not be created.': 'Страна $1 не может быть создана.'\n'Country with code $1 exists already.': 'Страна с кодом $1 уже существует.'\n'You do not have the right to add countries.': 'Вы не имеете прав доступа для добавления стран.'\n'Delete country': 'Удалить страну'\n'You do not have the right to delete countries.': 'Вы не имеете прав доступа для удаления стран.'\n'Are you sure you want to delete the country $1?': 'Вы уверены, что хотите удалить страну $1?'\n'The country $1 could not be deleted.': 'Невозможно удалить страну $1.'\n'Edit country name': 'Редактировать название страны'\n'You do not have the right to change country names.': 'Вы не имеете прав доступа к изменению названия страны.'\n'Changing country name': 'Изменение названия страны'\n'The country name $1 could not be changed': 'Невозможно изменить название страны $1'\n'Translate country name': 'Перевести название страны'\n'You do not have the right to translate country names.': 'Вы не имеете прав доступа для перевода названия страны.'\n'The country name $1 could not be translated': 'Невозможно перевести название страны $1'\n'Add New Country': 'Добавить новую страну'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.sh.yml",
    "content": "'The country $1 could not be created.': 'Država $1 ne može biti kreirana.'\n'Country with code $1 exists already.': 'Država sa kodom $1 već postoji.'\n'You do not have the right to add countries.': 'Nemate pravo da dodajete države.'\n'Delete country': 'Obriši državu'\n'You do not have the right to delete countries.': 'Nemate pravo da brišete države.'\n'Are you sure you want to delete the country $1?': 'Sigurni ste da želite da obrišete državu $1?'\n'The country $1 could not be deleted.': 'Država $1 ne može biti obrisana.'\n'Edit country name': 'Uredi ime države'\n'You do not have the right to change country names.': 'Nemate pravo da menjate imena država'\n'Changing country name': 'Menjanje imena države'\n'The country name $1 could not be changed': 'Ime države $1 ne može biti promenjeno'\n'Translate country name': 'Prevedi ime države'\n'You do not have the right to translate country names.': 'Nemate pravo da prevodite imena država.'\n'The country name $1 could not be translated': 'Ime države $1 ne može biti prevedeno'\n'Add New Country': 'Dodaj novu državu'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.sq.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': null\n'Delete country': null\n'You do not have the right to delete countries.': null\n'Are you sure you want to delete the country $1?': null\n'The country $1 could not be deleted.': null\n'Edit country name': null\n'You do not have the right to change country names.': null\n'Changing country name': null\n'The country name $1 could not be changed': null\n'Translate country name': null\n'You do not have the right to translate country names.': null\n'The country name $1 could not be translated': null\n'Add New Country': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.sr.yml",
    "content": "'The country $1 could not be created.': 'Држава $1 не може бити креирана.'\n'Country with code $1 exists already.': 'Држава са кодом $1 већ постоји.'\n'You do not have the right to add countries.': 'Немате право да додајете државе'\n'Delete country': 'Обриши државу'\n'You do not have the right to delete countries.': 'Немате право да бришете државе'\n'Are you sure you want to delete the country $1?': 'Сигурни сте да желите да обришете државу $1?'\n'The country $1 could not be deleted.': 'Држава $1 не може бити обрисана'\n'Edit country name': 'Уреди име државе'\n'You do not have the right to change country names.': 'Немате право да мењате имена држава'\n'Changing country name': 'Мењање имена државе'\n'The country name $1 could not be changed': 'Име државе $1 не може бити промењено'\n'Translate country name': 'Преведи име државе'\n'You do not have the right to translate country names.': 'Немате право да преводите имена држава'\n'The country name $1 could not be translated': 'Име државе $1 не може бити преведено'\n'Add New Country': 'Додај нову државу'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.sv.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': 'Du har inte rätt att lägga till länder.'\n'Delete country': 'Radera land'\n'You do not have the right to delete countries.': 'Du har inte rätt att radera länder.'\n'Are you sure you want to delete the country $1?': 'Är du säker att du vill radera landet $1?'\n'The country $1 could not be deleted.': 'Landet $1 kunde inte raderas.'\n'Edit country name': 'Redigera landsnamn'\n'You do not have the right to change country names.': 'Du har inte rätt att ändra på landsnamn.'\n'Changing country name': 'Ändrar landsnamn'\n'The country name $1 could not be changed': 'Landsnamnet $1 kunde inte ändras'\n'Translate country name': 'Översätt landsnamn'\n'You do not have the right to translate country names.': 'Du har inte rätt att översätta landsnamn'\n'The country name $1 could not be translated': 'Landsnamnet $1 kunde inte översättas'\n'Add New Country': 'Lägg till nytt land'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.tr.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': null\n'Delete country': null\n'You do not have the right to delete countries.': null\n'Are you sure you want to delete the country $1?': null\n'The country $1 could not be deleted.': null\n'Edit country name': null\n'You do not have the right to change country names.': null\n'Changing country name': null\n'The country name $1 could not be changed': null\n'Translate country name': null\n'You do not have the right to translate country names.': null\n'The country name $1 could not be translated': null\n'Add New Country': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.uk.yml",
    "content": "'The country $1 could not be created.': 'Країна $1 не може бути створена.'\n'Country with code $1 exists already.': 'Країна з кодом $1 вже існує.'\n'You do not have the right to add countries.': 'Ви не маєте прав додавати країни.'\n'Delete country': 'Видалить країну'\n'You do not have the right to delete countries.': 'Ви не маєте прав видаляти країни.'\n'Are you sure you want to delete the country $1?': 'Ви впевнені що хочете видалити країну $1?'\n'The country $1 could not be deleted.': 'Неможливо видалили країну $1'\n'Edit country name': 'Редагувати назву країни'\n'You do not have the right to change country names.': 'Ви не маєте прав змінювати назву країни'\n'Changing country name': 'Змінення назви країни'\n'The country name $1 could not be changed': 'Неможливо змінити назву країни $1'\n'Translate country name': 'Перекласти назву карїни'\n'You do not have the right to translate country names.': 'Ви не маєте прав для перекладу назви країни'\n'The country name $1 could not be translated': 'Неможливо перекласти назву країни $1'\n'Add New Country': 'Додати нову країну'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.vi.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': null\n'Delete country': null\n'You do not have the right to delete countries.': null\n'Are you sure you want to delete the country $1?': null\n'The country $1 could not be deleted.': null\n'Edit country name': null\n'You do not have the right to change country names.': null\n'Changing country name': null\n'The country name $1 could not be changed': null\n'Translate country name': null\n'You do not have the right to translate country names.': null\n'The country name $1 could not be translated': null\n'Add New Country': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.zh.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': 您无权增加国家\n'Delete country': 删除国家\n'You do not have the right to delete countries.': 您无权删除国家\n'Are you sure you want to delete the country $1?': 您确定要删除国家$1？\n'The country $1 could not be deleted.': 国家$1不能删除\n'Edit country name': 编辑国家名称\n'You do not have the right to change country names.': 您无权改变国家名称\n'Changing country name': 正在改变国家名称\n'The country name $1 could not be changed': 国家名称$1不能改变\n'Translate country name': 翻译国家名称\n'You do not have the right to translate country names.': 您无权修改国家名称\n'The country name $1 could not be translated': 国家名称$1不能被翻译\n'Add New Country': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/country.zh_TW.yml",
    "content": "'The country $1 could not be created.': null\n'Country with code $1 exists already.': null\n'You do not have the right to add countries.': null\n'Delete country': null\n'You do not have the right to delete countries.': null\n'Are you sure you want to delete the country $1?': null\n'The country $1 could not be deleted.': null\n'Edit country name': null\n'You do not have the right to change country names.': null\n'Changing country name': null\n'The country name $1 could not be changed': null\n'Translate country name': null\n'You do not have the right to translate country names.': null\n'The country name $1 could not be translated': null\n'Add New Country': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.ar.yml",
    "content": "Loading...: 'قيد التحميل'\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': 'قارئ المدونة لـ Sourcefabric.org'\n'Sourcefabric.org News reader': 'قارئ الأخبار من Sourcefabric.org'\n'Feed reader': 'قارئ التلقيم'\nGo: إذهب\n'Wikipedia Search': 'البحث في ويكيبيديا'\nFiles: ملفات\n'Sourcefabric.org newsletter subscription': 'اشتراك النشرة الأخبارية لـ Sourcefabric.org'\n'Maps search': 'البحث في الخريطة'\n'Default location': 'الموقع الافتراضي'\nTitle: العنوان\n'Sourcefabric.org feed reader': 'قارئ التلقيم لـ Sourcefabric.org'\n'Sourcefabric.org dev feed reader': 'قارئ التلقيم للتطوير من Sourcefabric.org'\n'Recently Published Articles': 'مقالات منشورة مؤخراً'\n'Recently Modified Articles': 'مقالات معدلة مؤخراً'\n'Pending Articles': 'مقالات معلقة'\n'Paste google generated code': 'لصاق الرمز الذي أنتجه جوجل'\n'Most Popular Articles': 'المقالات الأكثر شعبية'\n'Media files': 'ملفات الوسائط'\n'Hello world!': 'مرحبًا يا عالم!ـ'\n'Hello World!': 'مرحبًا يا عالم!ـ'\n'Google gadget': 'أداة جوجل'\n'Feed url': 'عنوان الرابط للتلقيم'\n'Access Denied': 'الدخول مرفوض.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.az.yml",
    "content": "Loading...: Yüklənir...\n'Latest 20 articles by popularity': 'Populyarlığına görə son 20 məqalə'\n'Articles diagrams': 'Məqalələrin diaqramı'\n'Sourcefabric.org blog reader': 'Sourcefabric.org bloq oxucusu'\n'Sourcefabric.org News reader': 'Sourcefabric.org Xəbər oxucusu'\n'Feed reader': 'Axın oxucusu'\nGo: Get\n'Wikipedia Search': 'Wikipedia Axtarışı'\nFiles: Fayllar\n'Sourcefabric.org newsletter subscription': 'Sourcefabric.org qəzetinə abunəlik'\n'Maps search': 'Xəritə axtarışı'\n'Default location': 'İlkin məkan'\nTitle: Başlıq\n'Sourcefabric.org feed reader': 'Sourcefabric.org axın oxucusu'\n'Sourcefabric.org dev feed reader': 'Sourcefabric.org dev axın oxucusu'\n'Recently Published Articles': 'Son Məşr Edilmiş Məqalələr'\n'Recently Modified Articles': 'Son Dəyişilmiş Məqalələr'\n'Pending Articles': 'Gözləmədəki Məqalələr'\n'Paste google generated code': 'Google tərəfindən hazırlanmış şifrəni daxil et'\n'Most Popular Articles': 'Ən Populyar Məqalələr'\n'Media files': 'Mətbuat faylları'\n'Hello world!': 'Salam dünya!'\n'Hello World!': 'Salam Dünya!'\n'Google gadget': 'Google aləti'\n'Feed url': 'Axın url-i'\n'Access Denied': 'Giriş Dayandırıldı'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.be.yml",
    "content": "Loading...: Пампуецца...\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': 'Пошук па Wikipedia'\nFiles: Файлы\n'Sourcefabric.org newsletter subscription': 'Падпіска на навіны Sourcefabric'\n'Maps search': 'Пошук па карце'\n'Default location': 'Пазіцыя па-змаўчанні'\nTitle: Загаловак\n'Sourcefabric.org feed reader': 'Счытвальнік каналаў Sourcefabric.org'\n'Sourcefabric.org dev feed reader': 'Счытвальнік dev каналаў Sourcefabric.org'\n'Recently Published Articles': 'Апошнія апублікаваныя артыкулы'\n'Recently Modified Articles': 'Апошнія змененыя артыкулы'\n'Pending Articles': 'Незакончаныя артыкулы'\n'Paste google generated code': 'Уставіць згенераваны google-код'\n'Most Popular Articles': 'Найбольш папулярныя артыкулы'\n'Media files': Медыя-файлы\n'Hello world!': 'Прывітанне, свет!'\n'Hello World!': 'Прывітанне, Свет!'\n'Google gadget': 'Гаджеты Google'\n'Feed url': 'URL каналаў'\n'Access Denied': 'Доступ забаронены'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.bn.yml",
    "content": "Loading...: null\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: null\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: null\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.cs.yml",
    "content": "Loading...: 'Nahrává se...'\n'Latest 20 articles by popularity': '20 nejnovějších článku dle popularity'\n'Articles diagrams': 'Diagramy článků'\n'Sourcefabric.org blog reader': 'Sourcefabric.org blog reader'\n'Sourcefabric.org News reader': 'Sourcefabric.org News reader'\n'Feed reader': 'Feed reader'\nGo: Jít\n'Wikipedia Search': 'Hledat ve Wikipedii'\nFiles: Soubory\n'Sourcefabric.org newsletter subscription': 'Předplatné informačních bulletinů na Sourcefabric.org'\n'Maps search': 'Hledat v mapách'\n'Default location': 'Výchozí lokalita'\nTitle: Název\n'Sourcefabric.org feed reader': 'Čtečky Sourcefabric.org'\n'Sourcefabric.org dev feed reader': 'Dev čtečky Sourcefabric.org'\n'Recently Published Articles': 'Nedávno publikované články'\n'Recently Modified Articles': 'Nedávno změněné články'\n'Pending Articles': 'Dosud nevyřízené články'\n'Paste google generated code': 'Vložit kód vygenerovaný googlem'\n'Most Popular Articles': 'Nejoblíbenější články'\n'Media files': 'Soubory médií'\n'Hello world!': 'Ahoj světe!'\n'Hello World!': 'Ahoj Světe!'\n'Google gadget': 'Google zlepšovák'\n'Feed url': 'Vložit URL'\n'Access Denied': 'Vstup zamítnut'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.da.yml",
    "content": "Loading...: Henter...\n'Latest 20 articles by popularity': 'Seneste 20 artikler efter popularitet'\n'Articles diagrams': 'Artikel diagrammer'\n'Sourcefabric.org blog reader': 'Sourcefabric.org blog læser'\n'Sourcefabric.org News reader': 'Sourcefabric.org nyheder'\n'Feed reader': 'Feed læser'\nGo: Gå\n'Wikipedia Search': 'Wikipedia søgning'\nFiles: Filer\n'Sourcefabric.org newsletter subscription': 'Abonnement på Sourcefabric.org nyhedsbrevet'\n'Maps search': 'Kort søgning'\n'Default location': 'Standard sted'\nTitle: Titel\n'Sourcefabric.org feed reader': 'Sourcefabric.org feed læser'\n'Sourcefabric.org dev feed reader': 'Sourcefabric.org dev feed læser'\n'Recently Published Articles': 'Artikler udgivet for nylig'\n'Recently Modified Articles': 'Nyligt redigerede artikler'\n'Pending Articles': 'Ventende artikler'\n'Paste google generated code': 'Indsæt google genereret kode'\n'Most Popular Articles': 'Mest populære artikler'\n'Media files': 'Medie filer'\n'Hello world!': 'Hello world!'\n'Hello World!': 'Hello World!'\n'Google gadget': 'Google gadget'\n'Feed url': 'Feed URL'\n'Access Denied': 'Adgang forbudt'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.de.yml",
    "content": "Loading...: Lade...\n'Latest 20 articles by popularity': 'Neuesten 20 Arikeln nach Popularität'\n'Articles diagrams': Artikeldiagramm\n'Sourcefabric.org blog reader': ' Sourcefabric.org Blog lesen'\n'Sourcefabric.org News reader': 'Sourcefabric.org News lesen'\n'Feed reader': Feedreader\nGo: Starten\n'Wikipedia Search': 'Wikipedia Suche'\nFiles: Dateien\n'Sourcefabric.org newsletter subscription': 'Sourcefabric.org Newsletter Abonnement'\n'Maps search': Kartensuche\n'Default location': Standardort\nTitle: Titel\n'Sourcefabric.org feed reader': 'Sourcefabric.org Feedreader'\n'Sourcefabric.org dev feed reader': 'Sourcefabric.org Dev Feedreader'\n'Recently Published Articles': 'Kürzlich veröffentlichte Artikel'\n'Recently Modified Articles': 'Kürzlich veränderte Artikel'\n'Pending Articles': 'Eingereichte Artikel'\n'Paste google generated code': 'Google Codesnippet einfügen'\n'Most Popular Articles': 'Beliebteste Artkel'\n'Media files': Mediendateien\n'Hello world!': 'Hallo Welt!'\n'Hello World!': 'Hallo Welt!'\n'Google gadget': 'Google Gadget'\n'Feed url': 'URL eingeben'\n'Access Denied': 'Zugang verweigert'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.de_AT.yml",
    "content": "Loading...: Lade...\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': ' Sourcefabric.org Blog lesen'\n'Sourcefabric.org News reader': 'Sourcefabric.org News lesen'\n'Feed reader': Feedreader\nGo: Starten\n'Wikipedia Search': 'Wikipedia Suche'\nFiles: Dateien\n'Sourcefabric.org newsletter subscription': 'Sourcefabric.org Newsletter Abonnement'\n'Maps search': Kartensuche\n'Default location': Standardort\nTitle: Titel\n'Sourcefabric.org feed reader': 'Sourcefabric.org Feedreader'\n'Sourcefabric.org dev feed reader': 'Sourcefabric.org Dev Feedreader'\n'Recently Published Articles': 'Kürzlich veröffentlichte Artikel'\n'Recently Modified Articles': 'Kürzlich veränderte Artikel'\n'Pending Articles': 'Eingereichte Artikel'\n'Paste google generated code': 'Google Codesnippet einfügen'\n'Most Popular Articles': 'Beliebteste Artkel'\n'Media files': Mediendateien\n'Hello world!': 'Hallo Welt!'\n'Hello World!': 'Hallo Welt!'\n'Google gadget': 'Google Gadget'\n'Feed url': 'URL eingeben'\n'Access Denied': 'Zugang verweigert'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.el.yml",
    "content": "Loading...: Φόρτωση...\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': 'Αναγνώστης blog Sourcefabric.org  '\n'Sourcefabric.org News reader': 'Αναγνώστης Νέων Sourcefabric.org  '\n'Feed reader': 'Feed αναγνωστών'\nGo: Πήγαινε\n'Wikipedia Search': 'Αναζήτηση Wikipedia'\nFiles: Αρχεία\n'Sourcefabric.org newsletter subscription': 'συνδρομή newsletter Sourcefabric.org '\n'Maps search': 'Αναζήτηση χαρτών'\n'Default location': 'Προεπιλεγμένη τοποθεσία'\nTitle: Τίτλος\n'Sourcefabric.org feed reader': 'Sourcefabric.org feed reader'\n'Sourcefabric.org dev feed reader': 'Sourcefabric.org dev feed reader'\n'Recently Published Articles': 'Προσφάτως Δημοσιευμένα Άρθρα'\n'Recently Modified Articles': 'Προσφάτως Τροποποιημένα Άρθρα'\n'Pending Articles': 'Εκκρεμή Άρθρα'\n'Paste google generated code': 'Επικόλληση του δημιουργημένου κώδικα google'\n'Most Popular Articles': 'Δημοφιλέστερα Άρθρα'\n'Media files': 'Αρχεία Media'\n'Hello world!': 'Hello world!'\n'Hello World!': 'Hello World!'\n'Google gadget': 'Google gadget'\n'Feed url': 'Feed url'\n'Access Denied': 'Άρνηση Πρόσβασης'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.en.yml",
    "content": "Loading...: Loading...\n'Latest 20 articles by popularity': 'Latest 20 articles by popularity'\n'Articles diagrams': 'Articles diagrams'\n'Sourcefabric.org blog reader': 'Sourcefabric.org blog reader'\n'Sourcefabric.org News reader': 'Sourcefabric.org News reader'\n'Feed reader': 'Feed reader'\nGo: Go\n'Wikipedia Search': 'Wikipedia Search'\nFiles: Files\n'Sourcefabric.org newsletter subscription': 'Sourcefabric.org newsletter subscription'\n'Maps search': 'Maps search'\n'Default location': 'Default location'\nTitle: Title\n'Sourcefabric.org feed reader': 'Sourcefabric.org feed reader'\n'Sourcefabric.org dev feed reader': 'Sourcefabric.org dev feed reader'\n'Recently Published Articles': 'Recently Published Articles'\n'Recently Modified Articles': 'Recently Modified Articles'\n'Pending Articles': 'Pending Articles'\n'Paste google generated code': 'Paste google generated code'\n'Most Popular Articles': 'Most Popular Articles'\n'Media files': 'Media files'\n'Hello world!': 'Hello world!'\n'Hello World!': 'Hello World!'\n'Google gadget': 'Google gadget'\n'Feed url': 'Feed url'\n'Access Denied': 'Access Denied'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.en_GB.yml",
    "content": "Loading...: Loading...\n'Latest 20 articles by popularity': 'Latest 20 articles by popularity'\n'Articles diagrams': 'Article diagrams'\n'Sourcefabric.org blog reader': 'Sourcefabric.org blog reader'\n'Sourcefabric.org News reader': 'Sourcefabric.org News reader'\n'Feed reader': 'Feed reader'\nGo: Go\n'Wikipedia Search': 'Wikipedia Search'\nFiles: Files\n'Sourcefabric.org newsletter subscription': 'Sourcefabric.org newsletter subscription'\n'Maps search': 'Maps search'\n'Default location': 'Default location'\nTitle: Title\n'Sourcefabric.org feed reader': 'Sourcefabric.org feed reader'\n'Sourcefabric.org dev feed reader': 'Sourcefabric.org dev feed reader'\n'Recently Published Articles': 'Recently Published Articles'\n'Recently Modified Articles': 'Recently Modified Articles'\n'Pending Articles': 'Pending Articles'\n'Paste google generated code': 'Paste google generated code'\n'Most Popular Articles': 'Most Popular Articles'\n'Media files': 'Media files'\n'Hello world!': 'Hello world!'\n'Hello World!': 'Hello World!'\n'Google gadget': 'Google gadget'\n'Feed url': 'Feed url'\n'Access Denied': 'Access Denied'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.es.yml",
    "content": "Loading...: Cargando...\n'Latest 20 articles by popularity': 'Últimos 20 artículos según popularidad'\n'Articles diagrams': 'Diagramas de los artículos'\n'Sourcefabric.org blog reader': 'Lector del blog de Sourcefabric.org'\n'Sourcefabric.org News reader': 'Lector de las noticias de Sourcefabric.org'\n'Feed reader': Lector\nGo: Ir\n'Wikipedia Search': 'Búsqueda en Wikipedia'\nFiles: Archivos\n'Sourcefabric.org newsletter subscription': 'Suscripción al boletín de Sourcefabric.org'\n'Maps search': 'Búsqueda de mapas'\n'Default location': 'Ubicación por defecto'\nTitle: Tìtulo\n'Sourcefabric.org feed reader': 'Lector RSS de Sourcefabric.org'\n'Sourcefabric.org dev feed reader': 'Lector RSS sobre temas técnicos de Sourcefabric.org'\n'Recently Published Articles': 'Artículos recién publicados'\n'Recently Modified Articles': 'Artículos recién modificados'\n'Pending Articles': 'Artículos pendientes'\n'Paste google generated code': 'Pegar código generado por Google'\n'Most Popular Articles': 'Artículos más populares'\n'Media files': 'Biblioteca multimedia'\n'Hello world!': '¡Hola mundo!'\n'Hello World!': '¡Hola mundo!'\n'Google gadget': 'Gadget de Google'\n'Feed url': 'URL del RSS'\n'Access Denied': 'Acceso denegado'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.es_AR.yml",
    "content": "Loading...: Cargando...\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: null\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: Título\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.fa.yml",
    "content": "Loading...: null\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: null\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: null\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.fa_AF.yml",
    "content": "Loading...: null\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: null\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: null\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.fr.yml",
    "content": "Loading...: null\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: null\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: Titre\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.he.yml",
    "content": "Loading...: null\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: null\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: null\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.hr.yml",
    "content": "Loading...: null\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: Datoteke\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: null\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.hu.yml",
    "content": "Loading...: Betöltés...\n'Latest 20 articles by popularity': 'Az utolsó 20 cikk népszerűség szerint'\n'Articles diagrams': Cikkdiagramok\n'Sourcefabric.org blog reader': 'Sourcefabric.org blogolvasó'\n'Sourcefabric.org News reader': 'Sourcefabric.org hírek olvasó'\n'Feed reader': Hírolvasó\nGo: Ugrás\n'Wikipedia Search': Wikipédia-kereső\nFiles: Fájlok\n'Sourcefabric.org newsletter subscription': 'Feliratkozás a Sourcefabric.org hírlevelére'\n'Maps search': 'Térképek keresése'\n'Default location': 'Alapértelmezett tartózkodási hely'\nTitle: Cím\n'Sourcefabric.org feed reader': 'Sourcefabric.org hírolvasó'\n'Sourcefabric.org dev feed reader': 'Sourcefabric.org fejlesztői hírolvasó'\n'Recently Published Articles': 'Mostanában közzétett cikkek'\n'Recently Modified Articles': 'Mostanában módosított cikkek'\n'Pending Articles': 'Függőben lévő cikkek'\n'Paste google generated code': 'A Google által generált kód beillesztése'\n'Most Popular Articles': 'Legnépszerűbb cikkek'\n'Media files': Médiafájlok\n'Hello world!': 'Helló, világ!'\n'Hello World!': 'Helló, Világ!'\n'Google gadget': Google-modul\n'Feed url': 'Hírcsatorna URL-címe'\n'Access Denied': 'A hozzáférés megtagadva'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.hy.yml",
    "content": "Loading...: 'Բեռնվում է...'\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: null\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: Վերնագիր\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.hy_AM.yml",
    "content": "Loading...: 'Բեռնվում է...'\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: null\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: Վերնագիր\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.id.yml",
    "content": "Loading...: null\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: null\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: null\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.it.yml",
    "content": "Loading...: Caricamento...\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': 'Lettore del blog di Sourcefabric.org'\n'Sourcefabric.org News reader': 'Lettore delle news di Sourcefabric.org'\n'Feed reader': 'Lettore del feed'\nGo: Vai\n'Wikipedia Search': 'Ricerca Wikipedia'\nFiles: File\n'Sourcefabric.org newsletter subscription': 'Iscrizione alla newsletter di Sourcefabric.org'\n'Maps search': 'Cerca mappe'\n'Default location': 'Locazione predefinita'\nTitle: Titolo\n'Sourcefabric.org feed reader': 'Sourcefabric.org feed reader'\n'Sourcefabric.org dev feed reader': 'Sourcefabric.org dev feed reader'\n'Recently Published Articles': 'Articoli pubblicati di recente'\n'Recently Modified Articles': 'Articoli modificati di recente'\n'Pending Articles': 'Articoli in attesa'\n'Paste google generated code': 'Incolla il codice generato da Google'\n'Most Popular Articles': 'Articoli più popolari'\n'Media files': 'File multimediali'\n'Hello world!': 'Ciao mondo!'\n'Hello World!': 'Ciao mondo!'\n'Google gadget': 'Google gadget'\n'Feed url': 'Feed url'\n'Access Denied': 'Accesso negato'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.ka.yml",
    "content": "Loading...: იტვირთება...\n'Latest 20 articles by popularity': 'უკანასკნელი 20 სტატია პოპულარობის მიხედვით'\n'Articles diagrams': 'სტატიების დიაგრამები'\n'Sourcefabric.org blog reader': 'Sourcefabric.org ბლოგის მკითხველი '\n'Sourcefabric.org News reader': 'Sourcefabric.org ახალი ამბების მკითხველი '\n'Feed reader': 'არხის მკითხველი '\nGo: გადასვლა\n'Wikipedia Search': 'ვიკიპედიის ძიება'\nFiles: ფაილები\n'Sourcefabric.org newsletter subscription': 'Sourcefabric.org-ის საინფორმაციო ბიულეტენის გამოწერა'\n'Maps search': 'რუკის ძიება'\n'Default location': 'ადგილმდებარეობა გაჩუმების პრინციპით'\nTitle: სათაური\n'Sourcefabric.org feed reader': 'Sourcefabric.org feed რიდერი'\n'Sourcefabric.org dev feed reader': 'Sourcefabric.org დეველოპერთა feed რიდერი'\n'Recently Published Articles': 'ახალხან გამოქვეყნებული სტატიები'\n'Recently Modified Articles': 'ახლახან მოდიფიცირებული სტატიები'\n'Pending Articles': 'მიმდინარე სტატიები'\n'Paste google generated code': 'google-ის მიერ გენერირებული კოდის ჩასმა'\n'Most Popular Articles': 'ყველაზე პოპულარული სტატიები'\n'Media files': 'მედია ფაილი'\n'Hello world!': 'მოგესალმებით სამყარო!'\n'Hello World!': 'მოგესალმებით სამყარო!'\n'Google gadget': 'Google გაჯეტი'\n'Feed url': 'არხის url'\n'Access Denied': 'წვდომა აკრძალულია'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.ko.yml",
    "content": "Loading...: null\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: 파일\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: null\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.ku.yml",
    "content": "Loading...: null\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: null\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: null\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.lv.yml",
    "content": "Loading...: null\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: null\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: null\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.mr.yml",
    "content": "Loading...: null\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: null\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: null\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.nb_NO.yml",
    "content": "Loading...: null\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: null\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: null\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.nl.yml",
    "content": "Loading...: null\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: Bestanden\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: null\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.pa.yml",
    "content": "Loading...: null\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: null\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: null\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.pl.yml",
    "content": "Loading...: Ladowanie...\n'Latest 20 articles by popularity': 'Popularność ostatnich 20 artykułów.'\n'Articles diagrams': 'Wykresy dla artykułów'\n'Sourcefabric.org blog reader': 'Nowe posty od Sourcefabric.org'\n'Sourcefabric.org News reader': 'Informacje od Sourcefabric'\n'Feed reader': 'Czytnik newsow'\nGo: idź\n'Wikipedia Search': 'Szukaj w Wikipedii'\nFiles: Pliki\n'Sourcefabric.org newsletter subscription': 'Zapisz się do newslettera Sourcefabric'\n'Maps search': 'Wyszukaj na mapie'\n'Default location': 'Domyślna lokalizacja'\nTitle: Tytuł\n'Sourcefabric.org feed reader': 'Nowości z Sourcefabric'\n'Sourcefabric.org dev feed reader': 'Aktulności dla developerów od Sourcefabric'\n'Recently Published Articles': 'Ostanio opublikowane artykuły'\n'Recently Modified Articles': 'Ostatnio modyfikowane artykuły'\n'Pending Articles': 'Oczekujące artykuły'\n'Paste google generated code': 'Wklej wygenerowany kod google'\n'Most Popular Articles': 'Najpopularniejsze artykuły'\n'Media files': 'Pliki mediów'\n'Hello world!': 'Witaj świecie!'\n'Hello World!': 'Witaj Świecie!'\n'Google gadget': 'Gadżet Google'\n'Feed url': 'URL źródła'\n'Access Denied': 'Dostęp zabroniony'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.ps.yml",
    "content": "Loading...: null\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: null\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: null\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.pt.yml",
    "content": "Loading...: null\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: Ficheiros\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: null\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.pt_BR.yml",
    "content": "Loading...: Carregando...\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: Arquivos\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: Título\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': 'Artigos pendentes'\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.ro.yml",
    "content": "Loading...: null\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: Fișiere\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: null\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.ru.yml",
    "content": "Loading...: Загрузка...\n'Latest 20 articles by popularity': 'Последние 20 статей по популярности'\n'Articles diagrams': null\n'Sourcefabric.org blog reader': 'Блоги на Sourcefabric.org'\n'Sourcefabric.org News reader': 'Новости Sourcefabric.org'\n'Feed reader': 'Новостная лента'\nGo: Идти\n'Wikipedia Search': 'Поиск по Wikipedia'\nFiles: Файлы\n'Sourcefabric.org newsletter subscription': 'Подписка на новости из Sourcfabric'\n'Maps search': 'Поиск по карте'\n'Default location': 'Позиция по умолчанию'\nTitle: Заголовок\n'Sourcefabric.org feed reader': 'Считыватель каналов Sourcefabric.org'\n'Sourcefabric.org dev feed reader': 'Считыватель dev каналов Sourcefabric.org'\n'Recently Published Articles': 'Последние опубликованные статьи'\n'Recently Modified Articles': 'Последние измененные статьи'\n'Pending Articles': 'Неоконченные статьи'\n'Paste google generated code': 'Вставить сгенерированный код google'\n'Most Popular Articles': 'Наиболее популярные статьи'\n'Media files': Медиа-файлы\n'Hello world!': 'Привет, мир!'\n'Hello World!': 'Привет, Мир!'\n'Google gadget': 'Гаджеты Google'\n'Feed url': 'URL каналов'\n'Access Denied': 'Доступ запрещен'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.sh.yml",
    "content": "Loading...: Učitavanje...\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: Idi\n'Wikipedia Search': 'Pretraga Wikipedie'\nFiles: Fajlova\n'Sourcefabric.org newsletter subscription': 'Prijava na sourcefabric.org newsletter'\n'Maps search': 'Pretraga mapa'\n'Default location': 'Podrazumevana lokacija'\nTitle: Naslov\n'Sourcefabric.org feed reader': 'Sourcefabric.org feed reader'\n'Sourcefabric.org dev feed reader': 'Sourcefabric.org dev feed reader'\n'Recently Published Articles': 'skoro objavljeni tekstovi'\n'Recently Modified Articles': 'Skoro menjani tekstovi'\n'Pending Articles': 'Tekstovi na čekanju'\n'Paste google generated code': 'Zalepi kod koji je generisao google'\n'Most Popular Articles': 'Najpopularniji tekstovi'\n'Media files': 'Media fajlovi'\n'Hello world!': 'Zdravo svete!'\n'Hello World!': 'Zdravo svete!'\n'Google gadget': 'Google spravica'\n'Feed url': 'Adresa feeda'\n'Access Denied': 'Pristup zabranjen'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.sq.yml",
    "content": "Loading...: null\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: null\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: null\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.sr.yml",
    "content": "Loading...: Учитавање...\n'Latest 20 articles by popularity': 'Последњих 20 најпопуларнијих текстова'\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: Иди\n'Wikipedia Search': 'Претрага Википедије'\nFiles: Фајлова\n'Sourcefabric.org newsletter subscription': 'Пријава на sourcefabric.org newsletter'\n'Maps search': 'Претрага мапа'\n'Default location': 'Подразумевана локација'\nTitle: Наслов\n'Sourcefabric.org feed reader': 'Sourcefabric.org feed reader'\n'Sourcefabric.org dev feed reader': 'Sourcefabric.org dev feed reader'\n'Recently Published Articles': 'Скоро објављени текстови'\n'Recently Modified Articles': 'Скоро мењани текстови'\n'Pending Articles': 'Текстови на чекању'\n'Paste google generated code': 'Залепи код који је генерисао гугл'\n'Most Popular Articles': 'Најпопуларнији текстови'\n'Media files': 'Медиа фајлови'\n'Hello world!': 'Здраво свете!'\n'Hello World!': 'Здраво свете!'\n'Google gadget': 'Google справица'\n'Feed url': 'Адреса feeda'\n'Access Denied': 'Приступ забрањен'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.sv.yml",
    "content": "Loading...: null\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: Filer\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: null\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.tr.yml",
    "content": "Loading...: null\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: null\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: null\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.uk.yml",
    "content": "Loading...: Завантаження...\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': 'читач блогу Sourcefabric.org'\n'Sourcefabric.org News reader': 'читач новин Sourcefabric.org'\n'Feed reader': 'Читач каналів'\nGo: Вперед\n'Wikipedia Search': 'Пошук у Wikipedia '\nFiles: Файли\n'Sourcefabric.org newsletter subscription': 'підписувач новин на Sourcefabric.org'\n'Maps search': 'Пошук карт'\n'Default location': 'Локація за замовчуванням'\nTitle: Заголовок\n'Sourcefabric.org feed reader': 'читач каналів Sourcefabric.org'\n'Sourcefabric.org dev feed reader': 'читач каналів розробників Sourcefabric.org'\n'Recently Published Articles': 'Нещодавно опублікованих статей'\n'Recently Modified Articles': 'Нещодавно змінених статей'\n'Pending Articles': 'Незакінчені Статті'\n'Paste google generated code': 'Вставити код сгенерований google'\n'Most Popular Articles': 'Найбільш популярні статті'\n'Media files': 'Медіа файли'\n'Hello world!': 'Привіт світ!'\n'Hello World!': 'Привіт Світ!'\n'Google gadget': 'Гаджети Google'\n'Feed url': 'Посилання на канал'\n'Access Denied': 'Доступ заборонено'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.vi.yml",
    "content": "Loading...: null\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: null\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: null\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.zh.yml",
    "content": "Loading...: 加载中...\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: 文件\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: 标题\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/extensions.zh_TW.yml",
    "content": "Loading...: null\n'Latest 20 articles by popularity': null\n'Articles diagrams': null\n'Sourcefabric.org blog reader': null\n'Sourcefabric.org News reader': null\n'Feed reader': null\nGo: null\n'Wikipedia Search': null\nFiles: null\n'Sourcefabric.org newsletter subscription': null\n'Maps search': null\n'Default location': null\nTitle: null\n'Sourcefabric.org feed reader': null\n'Sourcefabric.org dev feed reader': null\n'Recently Published Articles': null\n'Recently Modified Articles': null\n'Pending Articles': null\n'Paste google generated code': null\n'Most Popular Articles': null\n'Media files': null\n'Hello world!': null\n'Hello World!': null\n'Google gadget': null\n'Feed url': null\n'Access Denied': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.ar.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': 'توشك أن تحذف رسائل متعددة بشكل دائم ـ'\n'You are about to permanently delete a message.': 'توشك أن تحذف رسالة بشكل دائم ـ'\n'Are you sure you want to do it?': 'هل أنت متأكد أنك تريد المواصلة؟'\nApprove: الموافقة\nApproved.: 'موافق عليه'\nat: في\nAttachment: المرفق\n'Ban/Unban user': 'حظر / إزالة حظر المستخدم'\n'Change selected messages status': 'تغيير حالة الرسائل المحددة'\nDeleted: 'تم الحذف'\n'Full article': 'المقالة الكاملة'\nMessage: الرسالة\n'Message deleted.': 'تم حذف الرسالة'\n'Messages deleted.': 'تم حذف الرسائل.'\n'Messages status change to $1.': 'تتغير حالة الرسائل الى $1.'\n'Message status change to $1.': 'تتغير حالة الرسالة الى $1 .'\n'Messages updated.': 'تم تحديث الرسائل.'\n'Message updated.': 'تم تحديث الرسالة.'\nProcessed: 'تم المعالجة'\nReply: رد\n'Reply to message': 'الرد على الرسالة'\nStar: 'علامة نجمية'\nStarred: 'بعلامة نجمية'\n'Unable to reach Newscoop. Please check your internet connection.': 'غير قادر على الوصول إلى نيوسكوب. يرجى التحقق من اتصالك بالإنترنت.'\n'With document attachment': 'بمرفق وثيقة'\n'With image attachment': 'بمرفق صورة'\n'With no attachment': 'بلا مرفق'\n'Feedback Messages': 'رسائل التغذية المرتدة'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.az.yml",
    "content": "'No attachment': 'Əlavə edilmiş fayl yoxdur'\n'You are about to permanently delete multiple messages.': 'Çoxsaylı mesajları həmişəlik silmək ərəfəsindəsən.'\n'You are about to permanently delete a message.': 'Mesajı həmişəlik silmək ərəfəsindəsən.'\n'Are you sure you want to do it?': 'Bunu etmək istədiyinə əminsən?'\nApprove: 'Təsdiq et'\nApproved.: Təsdiqləndi.\nat: burada\nAttachment: 'Əlavə fayl'\n'Ban/Unban user': 'İstifadəçini Kilidlə/Kilidini Aç'\n'Change selected messages status': 'Seçilmiş mesajların statusunu dəyiş'\nDeleted: Silindi\n'Full article': 'Tam məqalə'\nMessage: Mesaj\n'Message deleted.': 'Mesaj silindi.'\n'Messages deleted.': 'Mesajlar silindi.'\n'Messages status change to $1.': 'Mesajların statusu $1 olaraq təyin edildi.'\n'Message status change to $1.': 'Mesaj statusu $1 olaraq təyin edildi.'\n'Messages updated.': 'Mesajlar yeniləndi.'\n'Message updated.': 'Mesaj yeniləndi.'\nProcessed: 'İcra edildi'\nReply: 'Cavab yaz'\n'Reply to message': 'Mesaja cavab yaz'\nStar: Ulduz\nStarred: Ulduzlu\n'Unable to reach Newscoop. Please check your internet connection.': 'Newscoop-a keçmək mümkün deyil. Lütfən, internet bağlantını yoxla.'\n'With document attachment': 'Sənəd əlavəsi ilə'\n'With image attachment': 'Şəkil əlavəsi ilə'\n'With no attachment': 'Əlavə faylsız'\n'Feedback Messages': 'Rəy Mesajları'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.be.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': 'Вы прыйшлі на старонку, каб назаўсёды выдаліць шматлікія паведамленні.'\n'You are about to permanently delete a message.': 'Вы прыйшлі на старонку, каб выдаліць паведамленне.'\n'Are you sure you want to do it?': null\nApprove: Зацвердзіць\nApproved.: Зацверджана\nat: на\nAttachment: 'Прымацаваны файл'\n'Ban/Unban user': 'Забараніць/дазволіць карыстальніку камэнтаваць'\n'Change selected messages status': 'Змяніць статус выдзеленых паведамленняў'\nDeleted: Выдаленае\n'Full article': 'Увесь тэкст артыкула'\nMessage: Паведамленне\n'Message deleted.': 'Паведамленне выдаленае.'\n'Messages deleted.': 'Паведамленні выдаленыя.'\n'Messages status change to $1.': 'Статус паведамлення зменены на $1.'\n'Message status change to $1.': 'Статус паведамлення зменены на $1.'\n'Messages updated.': 'Паведамленні абноўленыя'\n'Message updated.': 'Паведамленне абноўленае'\nProcessed: Апрацаванае\nReply: Адказ\n'Reply to message': 'Адказаць на паведамленне'\nStar: Зорачка\nStarred: 'Пазначаныя зорачкай'\n'Unable to reach Newscoop. Please check your internet connection.': 'Немагчыма звязацца з Newscoop. Калі ласка, праверце ваша інтэрнэт-злучэнне.'\n'With document attachment': 'З прыкладзеным дакументам'\n'With image attachment': 'З прыкладзенай выявай'\n'With no attachment': 'Без ўкладання'\n'Feedback Messages': 'Адказ на паведамленні'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.bn.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.cs.yml",
    "content": "'No attachment': 'Žádná příloha'\n'You are about to permanently delete multiple messages.': 'Chystáte se trvale vymazat hromadné zprávy'\n'You are about to permanently delete a message.': 'Chystáte se permanentně vymazat zprávu'\n'Are you sure you want to do it?': 'Jste si jisti, že to chcete udělat?'\nApprove: Schválit\nApproved.: Schváleno\nat: na\nAttachment: Příloha\n'Ban/Unban user': 'Zakázat/Obnovit uživatele'\n'Change selected messages status': 'Změnit statu vybraným zprávám'\nDeleted: Vymazat\n'Full article': 'Celý článek'\nMessage: Zpráva;\n'Message deleted.': 'Zpráva vymazána'\n'Messages deleted.': 'Zprávy vymazány'\n'Messages status change to $1.': 'Statu zpráv změněn na  $1'\n'Message status change to $1.': 'Status zprávy změněn na  $1'\n'Messages updated.': 'Zprávy aktualizovány'\n'Message updated.': 'Zpráva aktualizována'\nProcessed: Zpracováno\nReply: Odpovědět\n'Reply to message': 'Odpovědět na zprávu'\nStar: Hvězda\nStarred: 'S hvězdičkou'\n'Unable to reach Newscoop. Please check your internet connection.': 'Nepodařilo se spojit s Newscoop. Zkontrolujte prosím své připojení k internetu.'\n'With document attachment': 'S přílohou dokumentu'\n'With image attachment': 'S přílohou obrázku'\n'With no attachment': 'Bez přílohy'\n'Feedback Messages': 'Feedback zpráv'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.da.yml",
    "content": "'No attachment': 'Ingen vedhæfning'\n'You are about to permanently delete multiple messages.': 'Du er ved at slette flere meddelelser permanent.'\n'You are about to permanently delete a message.': 'Du er ved at slette nen meddelelse permanent.'\n'Are you sure you want to do it?': 'Er du sikker på det er det du vil?'\nApprove: Godkend\nApproved.: Godkendt.\nat: på\nAttachment: Vedhæftning\n'Ban/Unban user': 'Bloker/afbloker bruger'\n'Change selected messages status': 'Skift status for valgte beskeder'\nDeleted: Slettet\n'Full article': 'Fuld artikel'\nMessage: Besked\n'Message deleted.': 'Besked slettet.'\n'Messages deleted.': 'Beskeder slettet.'\n'Messages status change to $1.': 'Beskeders status ændret til $1.'\n'Message status change to $1.': 'Beskeds status ændret til $1.'\n'Messages updated.': 'Beskeder opdateret.'\n'Message updated.': 'Besked opdateret.'\nProcessed: Behandlet\nReply: Svar\n'Reply to message': 'Send svar'\nStar: Stjernemarkér\nStarred: Stjernemarkeret\n'Unable to reach Newscoop. Please check your internet connection.': 'Ingen kontakt til Newscoop. Tjek at du har forbindelse til internettet.'\n'With document attachment': 'Med vedhæftet dokument'\n'With image attachment': 'Med vedhæftet billede'\n'With no attachment': 'Uden vedhæftninger'\n'Feedback Messages': 'Feedback beskeder'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.de.yml",
    "content": "'No attachment': 'Kein Anhang'\n'You are about to permanently delete multiple messages.': 'Sie sind im Begriff mehrere Nachrichten permanent zu löschen. '\n'You are about to permanently delete a message.': 'Sie sind im Begriff eine Nachricht permanent zu löschen. '\n'Are you sure you want to do it?': 'Sind Sie sicher, dass Sie das tun wollen? '\nApprove: Genehmigen\nApproved.: 'Genehmigt. '\nat: auf\nAttachment: Anhang\n'Ban/Unban user': 'User sperren / entsperren '\n'Change selected messages status': 'Status der ausgewählten Nachrichen ändern.'\nDeleted: Gelöscht\n'Full article': 'Ganzer Artikel'\nMessage: Nachricht\n'Message deleted.': 'Nachrichten gelöscht. '\n'Messages deleted.': 'Nachrichten gelöscht. '\n'Messages status change to $1.': 'Status der Nachrichen ändern zu $1.'\n'Message status change to $1.': 'Status der Nachricht ändern zu $1.'\n'Messages updated.': 'Nachrichten aktualisiert. '\n'Message updated.': 'Nachricht aktualisiert. '\nProcessed: Verarbeitet\nReply: Antworten\n'Reply to message': 'Auf Nachricht antworten'\nStar: Stern\nStarred: 'Mit Stern versehen'\n'Unable to reach Newscoop. Please check your internet connection.': 'Die Verbindung zu Newscoop kann nicht hergestellt werden. Bitte überprüfen Sie ihre Internetverbindung. '\n'With document attachment': 'Mit angehängtem Dokument'\n'With image attachment': 'Mit angehängtem Bild '\n'With no attachment': 'Ohne Anhang'\n'Feedback Messages': 'Feedback Nachricht'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.de_AT.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': 'Sie sind im Begriff mehrere Nachrichten permanent zu löschen. '\n'You are about to permanently delete a message.': 'Sie sind im Begriff eine Nachricht permanent zu löschen. '\n'Are you sure you want to do it?': 'Sind Sie sicher, dass Sie das tun wollen? '\nApprove: Genehmigen\nApproved.: 'Genehmigt. '\nat: auf\nAttachment: Anhang\n'Ban/Unban user': 'User sperren / entsperren '\n'Change selected messages status': 'Status der ausgewählten Nachrichen ändern.'\nDeleted: Gelöscht\n'Full article': 'Ganzer Artikel'\nMessage: Nachricht\n'Message deleted.': 'Nachrichten gelöscht. '\n'Messages deleted.': 'Nachrichten gelöscht. '\n'Messages status change to $1.': 'Status der Nachrichen ändern zu $1.'\n'Message status change to $1.': 'Status der Nachricht ändern zu $1.'\n'Messages updated.': 'Nachrichten aktualisiert. '\n'Message updated.': 'Nachricht aktualisiert. '\nProcessed: Verarbeitet\nReply: Antworten\n'Reply to message': 'Auf Nachricht antworten'\nStar: Stern\nStarred: 'Mit Stern versehen'\n'Unable to reach Newscoop. Please check your internet connection.': 'Die Verbindung zu Newscoop kann nicht hergestellt werden. Bitte überprüfen Sie ihre Internetverbindung. '\n'With document attachment': 'Mit angehängtem Dokument'\n'With image attachment': 'Mit angehängtem Bild '\n'With no attachment': 'Ohne Anhang'\n'Feedback Messages': 'Feedback Nachricht'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.el.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': 'Πρόκειτε να διαγράψετε οριστικά πολλά μηνύματα.'\n'You are about to permanently delete a message.': 'Πρόκειτε να διαγράψετε οριστικά ένα μήνυμα.'\n'Are you sure you want to do it?': 'Είστε σίγουρος/η ότι θέλετε να το κάνετε;'\nApprove: Έγκριση\nApproved.: Εγκρίθηκε.\nat: σε\nAttachment: Συνημμένο\n'Ban/Unban user': 'Αποκλεισμός/Αναίρεση αποκλεισμού χρήστη'\n'Change selected messages status': 'Αλλαγή κατάστασης επιλεγμένων μηνυμάτων'\nDeleted: Διαγραμμένο\n'Full article': 'Πλήρες άρθρο'\nMessage: Μήνυμα\n'Message deleted.': 'Το μήνυμα διαγράφηκε.'\n'Messages deleted.': 'Τα μηνύματα διαγράφηκαν.'\n'Messages status change to $1.': 'Η κατάσταση του μηνύματος άλλαξε σε $1.'\n'Message status change to $1.': 'Η κατάσταση μηνύματος άλλαξε σε $1.'\n'Messages updated.': 'Τα μηνύματα ενημερώθηκαν.'\n'Message updated.': 'Το μήνυμα ενημερώθηκε.'\nProcessed: Επεξεργασμένα\nReply: Απάντηση\n'Reply to message': 'Απάντηση στο μήνυμα'\nStar: Αστερίσκος\nStarred: Διακεκριμένα\n'Unable to reach Newscoop. Please check your internet connection.': 'Αδύνατη η πρόσβαση στο Newscoop. Παρακαλούμε ελέγξτε την σύνδεση σας.'\n'With document attachment': 'Με σύναψη εγγράφου'\n'With image attachment': 'Με σύναψη εικόνας'\n'With no attachment': 'Χωρίς συνημμένο'\n'Feedback Messages': 'Μηνύματα Feedback'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.en.yml",
    "content": "'No attachment': 'No attachment'\n'You are about to permanently delete multiple messages.': 'You are about to permanently delete multiple messages.'\n'You are about to permanently delete a message.': 'You are about to permanently delete a message.'\n'Are you sure you want to do it?': 'Are you sure you want to do it?'\nApprove: Approve\nApproved.: Approved.\nat: at\nAttachment: Attachment\n'Ban/Unban user': 'Ban/Unban user'\n'Change selected messages status': 'Change selected messages status'\nDeleted: Deleted\n'Full article': 'Full article'\nMessage: Message\n'Message deleted.': 'Message deleted.'\n'Messages deleted.': 'Messages deleted.'\n'Messages status change to $1.': 'Messages status change to $1.'\n'Message status change to $1.': 'Message status change to $1.'\n'Messages updated.': 'Messages updated.'\n'Message updated.': 'Message updated.'\nProcessed: Processed\nReply: Reply\n'Reply to message': 'Reply to message'\nStar: Star\nStarred: Starred\n'Unable to reach Newscoop. Please check your internet connection.': 'Unable to reach Newscoop. Please check your internet connection.'\n'With document attachment': 'With document attachment'\n'With image attachment': 'With image attachment'\n'With no attachment': 'With no attachment'\n'Feedback Messages': 'Feedback Messages'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.en_GB.yml",
    "content": "'No attachment': 'No attachment'\n'You are about to permanently delete multiple messages.': 'You are about to permanently delete multiple messages.'\n'You are about to permanently delete a message.': 'You are about to permanently delete a message.'\n'Are you sure you want to do it?': 'Are you sure you want to do it?'\nApprove: Approve\nApproved.: Approved.\nat: at\nAttachment: Attachment\n'Ban/Unban user': 'Ban/Unban user'\n'Change selected messages status': 'Change selected messages status'\nDeleted: Deleted\n'Full article': 'Full article'\nMessage: Message\n'Message deleted.': 'Message deleted.'\n'Messages deleted.': 'Messages deleted.'\n'Messages status change to $1.': 'Messages status changed to $1.'\n'Message status change to $1.': 'Message status changed to $1.'\n'Messages updated.': 'Messages updated.'\n'Message updated.': 'Message updated.'\nProcessed: Processed\nReply: Reply\n'Reply to message': 'Reply to message'\nStar: Star\nStarred: Starred\n'Unable to reach Newscoop. Please check your internet connection.': 'Unable to reach Newscoop. Please check your internet connection.'\n'With document attachment': 'With document attachment'\n'With image attachment': 'With image attachment'\n'With no attachment': 'With no attachment'\n'Feedback Messages': 'Feedback Messages'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.es.yml",
    "content": "'No attachment': 'Sin adjunto'\n'You are about to permanently delete multiple messages.': 'Está a punto de eliminar múltiples mensajes de forma permanente.'\n'You are about to permanently delete a message.': 'Está a punto de eliminar un mensaje de forma permanente.'\n'Are you sure you want to do it?': '¿Está seguro de que quiere hacerlo?'\nApprove: Aprobar\nApproved.: Aprobado\nat: en\nAttachment: Adjunto\n'Ban/Unban user': 'Bloquear/desbloquear usuario'\n'Change selected messages status': 'Cambiar los mensajes de estatus seleccionados'\nDeleted: Eliminado\n'Full article': 'Artículo completo'\nMessage: Mensaje\n'Message deleted.': 'Mensaje eliminado.'\n'Messages deleted.': 'Mensajes eliminados.'\n'Messages status change to $1.': 'El estatus del mensaje cambió a $1.'\n'Message status change to $1.': 'Estatus del mensaje cambió a $1.'\n'Messages updated.': 'Mensajes actualizados'\n'Message updated.': 'Mensaje actualizado.'\nProcessed: Procesado\nReply: Responder\n'Reply to message': 'Responder a mensaje'\nStar: Ponderación\nStarred: Ponderado\n'Unable to reach Newscoop. Please check your internet connection.': 'No se pudo conectar a Newscoop. Por favor, verifica tu conexión a Internet.'\n'With document attachment': 'Con documento adjunto'\n'With image attachment': 'Con imagen adjunta'\n'With no attachment': 'Sin adjunto'\n'Feedback Messages': 'Mensajes de retroalimentación'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.es_AR.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.fa.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.fa_AF.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.fr.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: 'Pièce jointe'\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.he.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.hr.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.hu.yml",
    "content": "'No attachment': 'Nincs melléklet'\n'You are about to permanently delete multiple messages.': 'Több üzenet végleges törlésére készülsz.'\n'You are about to permanently delete a message.': 'Egy üzenet végleges törlésére készülsz.'\n'Are you sure you want to do it?': 'Biztosan ezt akarod tenni?'\nApprove: Jóváhagyás\nApproved.: Jóváhagyva.\nat: null\nAttachment: Csatolmány\n'Ban/Unban user': 'Felhasználó kitiltása/kitiltásának megszüntetése'\n'Change selected messages status': 'A kijelölt üzenetek állapotának módosítása'\nDeleted: Törölve\n'Full article': 'Teljes cikk'\nMessage: Üzenet\n'Message deleted.': 'Az üzenet törlése megtörtént.'\n'Messages deleted.': 'Az üzenetek törlése megtörtént.'\n'Messages status change to $1.': 'Az üzenetek állapotának módosítása erre: $1.'\n'Message status change to $1.': 'Az üzenet állapotának módosítása erre: $1.'\n'Messages updated.': 'Az üzenetek frissítése megtörtént.'\n'Message updated.': 'Az üzenet frissítése megtörtént.'\nProcessed: Feldolgozva\nReply: Válasz\n'Reply to message': 'Válasz az üzenetre'\nStar: Csillagozás\nStarred: Csillagozva\n'Unable to reach Newscoop. Please check your internet connection.': 'Nem érhető el a Newscoop. Ellenőrizd az internetkapcsolatodat.'\n'With document attachment': Dokumentummelléklettel\n'With image attachment': Képmelléklettel\n'With no attachment': 'Melléklet nélkül'\n'Feedback Messages': 'Visszajelző üzenetek'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.hy.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.hy_AM.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.id.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.it.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': 'Stai per cancellare definitivamente più messaggi.'\n'You are about to permanently delete a message.': 'Stai per cancellare definitivamente un messaggio.'\n'Are you sure you want to do it?': 'Sei sicuro di volerlo fare?'\nApprove: Approva\nApproved.: Approvato\nat: in\nAttachment: Allegato\n'Ban/Unban user': 'Blocca/sblocca utente'\n'Change selected messages status': 'Cambia lo stato dei messaggi selezionati'\nDeleted: Cancellato\n'Full article': 'Articolo intero'\nMessage: Messaggio\n'Message deleted.': 'Messaggio cancellati.'\n'Messages deleted.': 'Messaggi cancellati.'\n'Messages status change to $1.': 'Stato dei messaggi cambiato in $1.'\n'Message status change to $1.': 'Stato del messaggio cambiato in $1.'\n'Messages updated.': 'Messaggi aggiornati.'\n'Message updated.': 'Messaggi aggiornati.'\nProcessed: Processato\nReply: Risposta\n'Reply to message': 'Rispondi al messaggio'\nStar: Stellina\nStarred: Evidenziato\n'Unable to reach Newscoop. Please check your internet connection.': 'Impossibile raggiungere Newscoop. Verifica la connessione internet.'\n'With document attachment': 'Con documento allegato'\n'With image attachment': 'Con immagine allegata'\n'With no attachment': 'Senza allegati'\n'Feedback Messages': 'Messaggi di feedback'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.ka.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': 'თქვენ ახლა სამუდამოდ წაშლით რიგ შეტყობინებებს. '\n'You are about to permanently delete a message.': 'თქვენ ახლა სამუდამოდ წაშლით შეტყობინებას. '\n'Are you sure you want to do it?': 'დაადასტურეთ, რომ გსურთ ამის გაკეთება.'\nApprove: დადასტურება\nApproved.: დადასტურებული.\nat: '-ზე'\nAttachment: დანართი\n'Ban/Unban user': 'მომხმარებლისთვის ბანის დადება/მოხსნა'\n'Change selected messages status': 'არჩეული შეტყობინების სტატუსის შეცვლა'\nDeleted: წაიშალა\n'Full article': 'მთლიანი სტატია'\nMessage: შეტყობინება\n'Message deleted.': 'შეტყობინება წაშლილია. '\n'Messages deleted.': 'შეტყობინებები წაშლილია '\n'Messages status change to $1.': 'შეტყობინებების სტატუსი იცვლება $1ზე.'\n'Message status change to $1.': 'შეტყობინების სტატუსი იცვლება $1ზე.'\n'Messages updated.': 'შეტყობინებები განახლებულია. '\n'Message updated.': 'შეტყობინება განახლებულია'\nProcessed: დამუშავებულია\nReply: 'პასუხის გაცემა'\n'Reply to message': 'შეტყობინებაზე პასუხის გაცემა'\nStar: ვარსკვლავი\nStarred: 'ვარსკვლავით აღნიშნული'\n'Unable to reach Newscoop. Please check your internet connection.': 'ნიუსქუფთან დაკავშირება ვერ ხერხდება. გთხოვთ შეამოწმოთ თქვენი ინტერნეტ კავშირი.'\n'With document attachment': 'თანდართულია დოკუმენტი'\n'With image attachment': 'თანდართულია გამოსახულება'\n'With no attachment': 'დანართის გარეშე'\n'Feedback Messages': 'შეფასების შეტყობინებები'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.ko.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.ku.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.lv.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.mr.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.nb_NO.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.nl.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.pa.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.pl.yml",
    "content": "'No attachment': 'Brak załączników'\n'You are about to permanently delete multiple messages.': 'Chcesz bezpowrotnie usunąć wiele wiadomości.'\n'You are about to permanently delete a message.': 'Chcesz bezpowrotnie usunąć tą wiadomość.'\n'Are you sure you want to do it?': 'Jesteś pewien że chcesz to zrobić?'\nApprove: Zaakceptuj\nApproved.: Zaakceptowany\nat: w\nAttachment: Zalącznik\n'Ban/Unban user': 'Zablokuj/Odblokuj użytkownika'\n'Change selected messages status': 'Wybierz status wiadomości'\nDeleted: Usunięty\n'Full article': 'Pełny artykuł'\nMessage: Wiadomość\n'Message deleted.': 'Wiadomość została usunięta'\n'Messages deleted.': 'Wiadomość została usunięta'\n'Messages status change to $1.': 'Status wiadomości został zmieniony na $1'\n'Message status change to $1.': 'Status wiadomości został zmieniony na $1'\n'Messages updated.': 'Wiadomość została zaktualizowana'\n'Message updated.': 'Wiadomość została zaktualizowana'\nProcessed: Przetworzony\nReply: Odpowiedz\n'Reply to message': 'Odpowiedz na wiadomość'\nStar: Gwiazdka\nStarred: Odznaczony\n'Unable to reach Newscoop. Please check your internet connection.': 'Nie można połączyć z Newscoop. Sprawdź swoje połączenie z Internetem.'\n'With document attachment': 'Dokument dostępny w zalącznikach'\n'With image attachment': 'Zdjęcie dostępne w załącznikach'\n'With no attachment': 'Brak załączników.'\n'Feedback Messages': 'Wiadomość zwrotna'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.ps.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.pt.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.pt_BR.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': 'Tem certeza que quer fazer isso?'\nApprove: null\nApproved.: null\nat: no\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: Removido\n'Full article': 'Artigo inteiro'\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: Responder\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': 'Não foi possivel fazer conexão com Newscoop. Por favor verifique a sua conexão com internet.'\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.ro.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.ru.yml",
    "content": "'No attachment': 'Нет приложений'\n'You are about to permanently delete multiple messages.': 'Вы пришли на страницу, чтобы навсегда удалить множественные сообщения.'\n'You are about to permanently delete a message.': 'Вы пришли на страницу, чтобы удалить сообщение.'\n'Are you sure you want to do it?': 'Вы уверены, что хотите это сделать?'\nApprove: Утвердить\nApproved.: Утверждено\nat: на\nAttachment: 'Прикрепленный файл'\n'Ban/Unban user': 'Запретить/разрешить пользователю комментировать'\n'Change selected messages status': 'Изменить статус выделенных сообщений'\nDeleted: 'Удалено '\n'Full article': 'Полный текст статьи'\nMessage: Сообщение\n'Message deleted.': 'Сообщение удалено.'\n'Messages deleted.': 'Сообщения удалены.'\n'Messages status change to $1.': 'Статус сообщения изменен на $1.'\n'Message status change to $1.': 'Статус сообщения изменен на $1.'\n'Messages updated.': 'Сообщения обновлены'\n'Message updated.': 'Сообщение обновлено'\nProcessed: Обработанное\nReply: Ответ\n'Reply to message': 'Ответить на собщение'\nStar: Звездочка\nStarred: 'Отмеченные звездочкой'\n'Unable to reach Newscoop. Please check your internet connection.': 'Невозможно связаться с Newscoop. Пожалуйста, проверьте ваше интернет-соединение.'\n'With document attachment': 'С приложенным документом'\n'With image attachment': 'С приложенным изображением'\n'With no attachment': 'Без вложения'\n'Feedback Messages': 'Ответ на сообщения '\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.sh.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': 'Siguri ste da želite to da uradite?'\nApprove: null\nApproved.: null\nat: u\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: Obrisano\n'Full article': 'Ceo tekst'\nMessage: Poruka\n'Message deleted.': null\n'Messages deleted.': 'Poruka obrisana.'\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': 'Poruka izmenjena.'\n'Message updated.': 'Poruka izmenjena.'\nProcessed: null\nReply: Odgovori\n'Reply to message': 'Odgovori na poruku'\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': 'Newscoop nije dostupan. Proverite svoju interent vezu.'\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': 'Poruke sa povratnom informacijom'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.sq.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.sr.yml",
    "content": "'No attachment': 'Нема фајлова у прилогу'\n'You are about to permanently delete multiple messages.': 'Неповратно ћете избрисати више порука.'\n'You are about to permanently delete a message.': 'Неповратно ћете избрисати поруку.'\n'Are you sure you want to do it?': 'Сигурни сте да желите то да урадите?'\nApprove: Одобри\nApproved.: Одобрен\nat: у\nAttachment: 'Прикачени фајл'\n'Ban/Unban user': 'Блокирајте или одблокирајте корисника'\n'Change selected messages status': 'Промени статус изабраних порука'\nDeleted: Обрисано\n'Full article': 'Цео текст'\nMessage: Порука\n'Message deleted.': 'Порука је обрисана.'\n'Messages deleted.': 'Порука је обрисана.'\n'Messages status change to $1.': 'Промена статуса поруке у $1.'\n'Message status change to $1.': 'Промена статуса поруке у $1.'\n'Messages updated.': 'Поруке измењене.'\n'Message updated.': 'Порука измењена.'\nProcessed: Обрађено\nReply: Одговори\n'Reply to message': 'Одговорите на поруку'\nStar: Означите\nStarred: Означено\n'Unable to reach Newscoop. Please check your internet connection.': 'Newscoop није доступан. Проверите своју интернет везу.'\n'With document attachment': 'Документ у прилогу'\n'With image attachment': 'Слика у прилогу'\n'With no attachment': 'Без прилога'\n'Feedback Messages': 'Поруке са повратном информацијом'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.sv.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.tr.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.uk.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': 'Ви збираєтеся видалити кілька повідомлень.'\n'You are about to permanently delete a message.': 'Ви збираєтеся видалити повідомлення.'\n'Are you sure you want to do it?': 'Ви впевнені що хочете зробити це?'\nApprove: Затвердження\nApproved.: Затверджено.\nat: на\nAttachment: Прікріплення\n'Ban/Unban user': 'Дозволити / заборонити користувачу коментувати'\n'Change selected messages status': 'Змінити статус вибраних повідомлень'\nDeleted: Видалено\n'Full article': 'Повна стаття'\nMessage: Повідомлення\n'Message deleted.': 'Повідомлення видалено.'\n'Messages deleted.': 'Повідомлення видалені.'\n'Messages status change to $1.': 'Статус повідомленнь змінено на $1.'\n'Message status change to $1.': 'Статус повідомлення змінений на  $1.'\n'Messages updated.': 'Повідомлення оновлено.'\n'Message updated.': 'Повідомлення оновлено'\nProcessed: Оброблено\nReply: Відповідь\n'Reply to message': 'Відповісти на коментар'\nStar: Зірка\nStarred: Зірковий\n'Unable to reach Newscoop. Please check your internet connection.': 'Неможливо зв’язатись з Newscoop. Будь ласка, перевірте ваше інтернет-з’єднання.'\n'With document attachment': 'З документом у прікріпленні.'\n'With image attachment': 'З зображенням у прікріпленні'\n'With no attachment': 'При відсутності вкладень'\n'Feedback Messages': 'Повідомлення зворотнього зв’язку'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.vi.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.zh.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/feedback.zh_TW.yml",
    "content": "'No attachment': null\n'You are about to permanently delete multiple messages.': null\n'You are about to permanently delete a message.': null\n'Are you sure you want to do it?': null\nApprove: null\nApproved.: null\nat: null\nAttachment: null\n'Ban/Unban user': null\n'Change selected messages status': null\nDeleted: null\n'Full article': null\nMessage: null\n'Message deleted.': null\n'Messages deleted.': null\n'Messages status change to $1.': null\n'Message status change to $1.': null\n'Messages updated.': null\n'Message updated.': null\nProcessed: null\nReply: null\n'Reply to message': null\nStar: null\nStarred: null\n'Unable to reach Newscoop. Please check your internet connection.': null\n'With document attachment': null\n'With image attachment': null\n'With no attachment': null\n'Feedback Messages': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.ar.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': 'ايقونة العلامة المختارة'\n'add location to map': 'أضف الموقع إلى الخريطة'\n'Video source': 'مصدر الفيديو'\n'The point will be removed from all translations of the article.': 'سيتم إزالة النقطة من جميع التراجم من هذا المقال.'\n'Specify country (optional)': 'حدد البلد (اختياري)'\n'Sorry, that place was not found. Check your spelling or search again.': 'آسف، لم يتم العثور على هذا المكان. يرجى التحقق التهجئة أو إبحث من جديد.'\n'Show search results': 'أظهر نتائج البحث'\n'Search for place or coordinate': 'إبحث عن مكان أو إحداثي'\n'Return to edit': 'الرجوع إلى تعديل'\n'Really delete this point?': 'إحذف هذه النقطة حقاً؟'\n'Name and describe this location': 'سمي وصف هذا الموقع'\n'Map size': 'حجم الخريطة'\n'Location label': 'علامة مميزة لهذا الموقع'\n'Location description:': 'وصف الموقع:'\n'Label url': 'عنوان الرابط للعلامة المميزة'\n'Hide search results': 'أخف نتائج البحث'\nGeo-filtering: 'التصفية من خلال الجغرافية'\n'Fill in youtube ID or link, e.g.': 'إملأ Youtube ID أو الرابط، على سبيل المثال'\n'Fill in vimeo ID or link, e.g': 'إملأ Vimeo ID أو الرالط، على سبيل المثال'\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': 'إملأ هوية الفيديو، الرابط أو اسم الملف، لـ Youtube، Vimeo، أو فيديو فلاش.'\n'Fill in location label': 'إملأ تسمية الموقع'\n'Fill in local swf flash file name or link, e.g.': 'إملأ اسم أو رابط الملف المحلي swf. ، على سبيل المثال'\n'Fill in local flv flash file name or link, e.g.': 'إملأ اسم أو رابط الملف المحلي flv. ، على سبيل المثال'\n'Fill in image link, like': 'إملأ رابط الصورة'\n'Describe the location...': 'صف الموقع ...'\n'Delete location': 'إحذف الموقع'\nCoordinates: الإحداثيات\n'Change video display size': 'غير حجم عرض الفيديو'\n'Change image display size': 'غير حجم عرض الصورة'\n'Change icon of this location': 'غير أيقونة هذا الموقع'\n'Center map on location': 'ركز الخريطة على الموقع'\n'Advanced editing': 'تحرير متقدم'\n'Add an image to this location': 'أضف صورة إلى هذا الموقع'\n'Add a video to this location': 'أضف فيديو إلى هذا الموقع'\n'Are you sure you want to quit without saving your changes?': 'هل أنت متأكد أنك تريد الخروج بدون حفظ التغييرات التي قمت بها؟'\n'Map preview': 'معاينة الخريطة'\n'Locations updated.': 'تم تحديث المواقع.'\n'Setting the map name helps with map search': 'يساعد تعيين اسم الخريطة على البحث في الخريطة'\nLongitude: 'خط الطول'\nLatitude: 'خط العرض'\nCenter: توسيط\n'Last Saved Map View': 'عرض آخر خريطة محفوظة'\n'List of locations updated': 'تم تحديث قائمة المواقع'\nwidth: الاتساع\n'show initial map view': 'أظهر عرض الخريطة الأولية'\n'problem at point processing, please send error report': 'حدثت مشكلة أثناء معالجة النقطة، يرجى إرسال تقرير عن الخطأ'\n'plain text': 'نص صريح'\n'html content': 'محتوى HTML'\nheight: الارتفاع\n'fill in map name': 'إملأ اسم الخريطة'\n'You do not have the right to remove maps from articles.': 'ليس لديك الحق في إزالة خرائط من مقالات.'\n'Video file': 'ملف فيديو'\n'Video ID': 'هوية الفيديو'\n'The map has been removed from the article.': 'تم إزالة الخريطة من المقال.'\n'Point no.': 'رقم النقطة'\n'Point markers': 'علامات نقطة'\nNone: 'لا شيء'\n'Map Search Example': 'مثال بحث الخريطة'\n'Map Preview': 'معاينة الخريطة'\n'Image URL': 'عنوان الرابط للصورة:'\nvideo: فيديو\ntext: نص\nimage: صورة\nicon: أيقونة\n'Setting Map Locations': 'تعيين مواقع الخريطة'\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.az.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': 'GeoNames.org və OpenStreetMap.org məlumatlarına əsaslanmışdır'\n'selected marker icon': 'seçilmiş marker işarəsi'\n'add location to map': 'məkanı xəritəyə əlavə et'\n'Video source': 'Videonun mənbəyi'\n'The point will be removed from all translations of the article.': 'Ünvan məqalənin bütün tərcümələrindən xaric ediləcək.'\n'Specify country (optional)': 'Ölkəni bildir (könüllü)'\n'Sorry, that place was not found. Check your spelling or search again.': 'Üzr istəyirik, məkan tapılmadı. Tələffüzünü yoxla və ya yenidən axtar.'\n'Show search results': 'Axtarış nəticələrini göstər'\n'Search for place or coordinate': 'Məkan və ya koordinasiya axtar'\n'Return to edit': 'Dəyişiklik səhifəsinə qayıt'\n'Really delete this point?': 'Bu ünvanı həqiqətən silirsən?'\n'Name and describe this location': 'Məkana ad və izah ver'\n'Map size': 'Xəritə ölçüsü'\n'Location label': 'Məkan pəncərəsi'\n'Location description:': 'Məkanın izahı:'\n'Label url': 'Pəncərə url-i'\n'Hide search results': 'Axtarış nəticələrini gizlə'\nGeo-filtering: Geo-filtrə\n'Fill in youtube ID or link, e.g.': 'Youtube ID və ya linkini yaz.'\n'Fill in vimeo ID or link, e.g': 'Vimeo ID və ya linkini yaz.'\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': 'YouTube, Vimeo və ya fləş video üçün video ID, link və ya fayl adını daxil et.'\n'Fill in location label': 'Məkanın pəncərəsini doldur'\n'Fill in local swf flash file name or link, e.g.': 'Yerli swf fləş fayl adını və ya linkini daxil et.'\n'Fill in local flv flash file name or link, e.g.': 'Yerli flv fləş fayl adını və ya linkini daxil et.'\n'Fill in image link, like': 'Şəkil linkini belə doldur'\n'Describe the location...': 'Məkanı izah et...'\n'Delete location': 'Məkanı sil'\nCoordinates: Koordinatlar\n'Change video display size': 'Videonun nümayiş ölçüsünü dəyiş'\n'Change image display size': 'Şəklin nümayiş ölçüsünü dəyiş'\n'Change icon of this location': 'Bu məkanın işarəsini dəyiş'\n'Center map on location': 'Xəritəni məkana uyğun olaraq mərkəzləşdir'\n'Advanced editing': 'Hərtərəfli dəyişiklik'\n'Add an image to this location': 'Bu məkana şəkil əlavə et'\n'Add a video to this location': 'Bu məkana video əlavə et'\n'Are you sure you want to quit without saving your changes?': 'Dəyişiklikləri yadda saxlamadan bitirmək istədiyinə əminsən?'\n'Map preview': 'Xəritəyə ön baxış'\n'Locations updated.': 'Məkanlar yeniləndi.'\n'Setting the map name helps with map search': 'Xəritəyə ad təyin etməklə xəritə axtarışı asanlaşır'\nLongitude: Uzunluq\nLatitude: En\nCenter: Mərkəz\n'Last Saved Map View': 'Son Xəritə Görüntüsü'\n'List of locations updated': 'Yenilənmiş məkan siyahısı'\nwidth: həcm\n'show initial map view': 'ilkin xəritə görünüşünü göstər'\n'problem at point processing, please send error report': 'məkan əməliyyatında problem var, lütfən, xəta hesabatı göndər'\n'plain text': 'adi yazı'\n'html content': 'html məzmun'\nheight: uzunluq\n'fill in map name': 'xəritənin adını yaz'\n'You do not have the right to remove maps from articles.': 'Xəritələri məqalədən xaric etməyə ixtiyarın yoxdur.'\n'Video file': 'Video faylı'\n'Video ID': 'Video ID-si'\n'The map has been removed from the article.': 'Xəritə məqalədən xaric edildi.'\n'Point no.': 'Ünvan nöm.'\n'Point markers': 'Ünvan markerləri'\nNone: 'Heç biri'\n'Map Search Example': 'Xəritə Axtarış Nümunələri'\n'Map Preview': 'Xəritə görüntüsü'\n'Image URL': 'Şəkil URLi'\nvideo: video\ntext: yazı\nimage: şəkil\nicon: ikon\n'Setting Map Locations': 'Xəritə Məkanlarını Quraşdırılması'\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.be.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': 'абраная піктаграма маркера'\n'add location to map': 'дадаць месцазнаходжанне на мапу'\n'Video source': 'Крыніца відэа'\n'The point will be removed from all translations of the article.': 'Пункт будзе выдалены з усіх перакладаў гэтага артыкула.'\n'Specify country (optional)': 'Вызначце краіну (неабавязкова)'\n'Sorry, that place was not found. Check your spelling or search again.': 'На жаль, дадзенае месца не знойдзенае. Праверце напісаньне, альбо паўторыце пошук.'\n'Show search results': 'Паказаць вынікі пошуку'\n'Search for place or coordinate': 'Шукаць месца альбо каардынаты'\n'Return to edit': 'Вяртанне да рэдагавання'\n'Really delete this point?': 'Выдаліць гэты пункт?'\n'Name and describe this location': 'Назваць і апісаць месцазнаходжанне'\n'Map size': 'Памер карты'\n'Location label': 'Цэтлік месцазнаходжання'\n'Location description:': 'Апісанне месцазнаходжання:'\n'Label url': 'URL месцазнаходжання'\n'Hide search results': 'Схаваць вынікі пошуку'\nGeo-filtering: Геа-фільтр\n'Fill in youtube ID or link, e.g.': 'Увядзіце ID youtube альбо спасылку, напрыклад'\n'Fill in vimeo ID or link, e.g': 'Увядзіце ID vimeo альбо спасылку, напрыклад'\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': 'Увядзіце ID відэа, спасылку або назву файла для Youtube, Vimeo альбо флэш-відэа.'\n'Fill in location label': 'Увядзіце цэтлік месцазнаходжання'\n'Fill in local swf flash file name or link, e.g.': 'Увядзіце назву мясцовага swf флэш-файла альбо спасылку, напрыклад'\n'Fill in local flv flash file name or link, e.g.': 'Увядзіце назву мясцовага flv флэш-файла, напрыклад'\n'Fill in image link, like': 'Увядзіце спасылку на выяву, як'\n'Describe the location...': 'Апішыце месцазнаходжанне ...'\n'Delete location': 'Выдаліце месцазнаходжанне'\nCoordinates: Каардынаты\n'Change video display size': 'Змяніць памер відэа на экране'\n'Change image display size': 'Змяніць памер выявы на экране'\n'Change icon of this location': 'Змяніць піктаграму месцазнаходжання'\n'Center map on location': 'Размясціць месцазнаходжанне ў цэнтры мапы'\n'Advanced editing': 'Пашыранае рэдагаванне'\n'Add an image to this location': 'Дадаць выяву да месцазнаходжання'\n'Add a video to this location': 'Дадаць відэа да дадзенага месцазнаходжання'\n'Are you sure you want to quit without saving your changes?': 'Вы ўпэўненыя, што жадаеце выйсці без захавання змяненняў?'\n'Map preview': 'Папярэдні прагляд карты'\n'Locations updated.': 'Месцы падзей былі абноўленыя'\n'Setting the map name helps with map search': 'Налада назвы карты спрыяе пошуку па карце'\nLongitude: Даўжыня\nLatitude: Шырыня\nCenter: Цэнтр\n'Last Saved Map View': 'Папярэдні прагляд апошніх аднаўленьняў карты'\n'List of locations updated': 'Спіс месцаў падзей быў адноўлены'\nwidth: шырыня\n'show initial map view': 'паказаць першапачатковы выгляд карты'\n'problem at point processing, please send error report': 'Здарылася праблема ў працэсе апрацоўкі звестак, калі ласка, адпраўце паведамленне пра памылку'\n'plain text': 'просты тэкст'\n'html content': 'html код'\nheight: вышыня\n'fill in map name': 'запоўніце імя карты'\n'You do not have the right to remove maps from articles.': 'У Вас няма дазволу для выдалення карт з артыкулаў.'\n'Video file': Відэафайл\n'Video ID': 'ID відэа'\n'The map has been removed from the article.': 'Гэтая карта была выдаленая з артыкула.'\n'Point no.': 'Пункт №'\n'Point markers': 'Маркеры пункта'\nNone: Ніводная\n'Map Search Example': 'Прыклад пошуку карты'\n'Map Preview': 'Папярэдні прагляд карты'\n'Image URL': 'URL выяаы'\nvideo: відэа\ntext: тэкст\nimage: выява\nicon: піктаграма\n'Setting Map Locations': 'Налады карты месцаў падзей'\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.bn.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: null\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.cs.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': 'Na základě dat GeoNames.org a OpenStreetMap.org '\n'selected marker icon': 'Vyberte značící ikonu'\n'add location to map': 'přidat lokaci do mapy'\n'Video source': 'Zdroj k videu'\n'The point will be removed from all translations of the article.': 'Bod bude odstraněn ze všech překladů článku.'\n'Specify country (optional)': 'Specifikuj zemi (nepovinné)'\n'Sorry, that place was not found. Check your spelling or search again.': 'Omlouváme se, místo nebylo nalezeno. Zkontrolujte název zadaného místa nebo zadejte nové hledání. '\n'Show search results': 'Ukázat výsledky hledání'\n'Search for place or coordinate': 'Hledat místo nebo souřadnice'\n'Return to edit': 'Vrátit se k úpravě'\n'Really delete this point?': 'Opravdu chcete vymazat tento bod?'\n'Name and describe this location': 'Pojmenujte a popiště tuto lokaci'\n'Map size': 'Velikost mapy'\n'Location label': 'Značka lokace'\n'Location description:': 'Popis lokace:'\n'Label url': 'URL značky'\n'Hide search results': 'Skrýt vyhledané výsledky'\nGeo-filtering: Geo-filtrace\n'Fill in youtube ID or link, e.g.': 'Doplňte YouTube ID nebo odkaz, atd.'\n'Fill in vimeo ID or link, e.g': 'Doplňte vimeo ID nebo odkaz, atd.'\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': 'Doplňte video ID, odkaz nebo jméno souboru pro YouTube, Vimeo nebo flash video.'\n'Fill in location label': 'Doplňte značku lokace '\n'Fill in local swf flash file name or link, e.g.': 'Doplňte lokální název swf flash souboru nebo odkaz, atd. '\n'Fill in local flv flash file name or link, e.g.': 'Doplňte lokalní název flv flash souboru nebo odkaz, atd.'\n'Fill in image link, like': 'Doplňte odkaz k obrázku jako'\n'Describe the location...': 'Popiště lokaci...'\n'Delete location': 'Vymažte lokaci'\nCoordinates: Souřadnice\n'Change video display size': 'Změnit velikost zobrazení videa'\n'Change image display size': 'Změnit velikost zobrazení obrázku'\n'Change icon of this location': 'Změnit značku této lokace '\n'Center map on location': 'Vycentrovat mapu k lokaci'\n'Advanced editing': 'Pokročilé upravování'\n'Add an image to this location': 'Přidat obrázek k této lokaci'\n'Add a video to this location': 'Přidat video k této lokaci'\n'Are you sure you want to quit without saving your changes?': 'Jste si jisti, že chcete odejít, aniž byste změny uložili?'\n'Map preview': 'Náhled mapy'\n'Locations updated.': 'Lokality aktualizovány.'\n'Setting the map name helps with map search': 'Zadání názvu mapy pomůže s jejím vyhledáním'\nLongitude: 'Zeměpisná délka'\nLatitude: 'Zeměpisná šířka'\nCenter: Střed\n'Last Saved Map View': 'Naposledy uložený náhled mapy'\n'List of locations updated': 'Seznam lokalit aktualizován'\nwidth: šířka\n'show initial map view': 'ukázat výchozí náhled mapy'\n'problem at point processing, please send error report': 'problém se zpracováním bodu, prosíme zašlete nám zprávu o chybě'\n'plain text': 'pouze text'\n'html content': 'obsah html'\nheight: výška\n'fill in map name': 'vyplňte název mapy'\n'You do not have the right to remove maps from articles.': 'Nemáte oprávnění odstraňovat mapy z článků.'\n'Video file': Videosoubor\n'Video ID': 'Video ID'\n'The map has been removed from the article.': 'Mapa byla z článku odstraněna.'\n'Point no.': 'Bod č.'\n'Point markers': 'Značení bodu'\nNone: Žádné\n'Map Search Example': 'Příklad vyhledání mapy'\n'Map Preview': 'Přehled map'\n'Image URL': 'URL obrázku'\nvideo: video\ntext: text\nimage: obrázek\nicon: ikona\n'Setting Map Locations': 'Nastavení lokací map'\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.da.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': 'Baseret på GeoNames.org og OpenStreetMap.org data'\n'selected marker icon': 'valgt markør ikon'\n'add location to map': 'føj sted til kort'\n'Video source': 'Video kilde'\n'The point will be removed from all translations of the article.': 'Punktet fjernes fra alle artiklens oversættelser.'\n'Specify country (optional)': 'Land (valgfrit)'\n'Sorry, that place was not found. Check your spelling or search again.': 'Stedet kunne ikke findes. Kontroller stavningen eller søg igen.'\n'Show search results': 'Vis søgeresultater'\n'Search for place or coordinate': 'Søg efter sted eller koordinat'\n'Return to edit': 'Tilbage til redigering'\n'Really delete this point?': 'Slet punktet?'\n'Name and describe this location': 'Giv stedet et navn og en beskrivelse'\n'Map size': 'Kort størrelse'\n'Location label': 'Sted label'\n'Location description:': 'Stedets beskrivelse:'\n'Label url': 'Label url'\n'Hide search results': 'Skjul søgeresultater'\nGeo-filtering: Geo-filtrering\n'Fill in youtube ID or link, e.g.': 'YouTube ID eller link, f.eks.'\n'Fill in vimeo ID or link, e.g': 'Vimeo ID eller link, f.eks.'\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': 'Video ID, link eller filnavn for YouTube, Vimeo eller flash video.'\n'Fill in location label': 'Udfyld stedets label'\n'Fill in local swf flash file name or link, e.g.': 'Udfyld filnavn på lokal swf flash fil eller link, f.eks.'\n'Fill in local flv flash file name or link, e.g.': 'Udfyld filnavn på lokal flv flash fil eller link, f.eks.'\n'Fill in image link, like': 'Indtast billede link, f.eks.'\n'Describe the location...': 'Beskriv stedet...'\n'Delete location': 'Slet sted'\nCoordinates: Koordinater\n'Change video display size': 'Skift visningsstørrelse på videoen'\n'Change image display size': 'Skift visningsstørrelse på billedet'\n'Change icon of this location': 'Skift ikon for stedet'\n'Center map on location': 'Centrér kortet på stedet'\n'Advanced editing': 'Avanceret redigering'\n'Add an image to this location': 'Føj et billede til dette sted'\n'Add a video to this location': 'Føj en video til dette sted'\n'Are you sure you want to quit without saving your changes?': 'Vil du afslutte uden at gemme dine ændringer?'\n'Map preview': 'Forhåndsvisning af kort'\n'Locations updated.': 'Steder blev opdateret.'\n'Setting the map name helps with map search': 'Det er en hjælp til kortsøgning at give kortet et navn'\nLongitude: Længdegrad\nLatitude: Breddegrad\nCenter: Centrér\n'Last Saved Map View': 'Sidst gemte kort visning'\n'List of locations updated': 'Liste med opdaterede steder'\nwidth: bredde\n'show initial map view': 'vis indledende kortvisning'\n'problem at point processing, please send error report': 'problem ved behandling af punkt, send venligst en fejl rapport'\n'plain text': 'Ren tekst'\n'html content': 'html indhold'\nheight: højde\n'fill in map name': 'udfyld kortets navn'\n'You do not have the right to remove maps from articles.': 'Du har ikke rettigheder til at fjerne kort fra artikler.'\n'Video file': 'Video fil'\n'Video ID': 'Video ID'\n'The map has been removed from the article.': 'Kortet er fjernet fra artiklen.'\n'Point no.': 'Punkt nr.'\n'Point markers': 'Punkt markører'\nNone: Ingen\n'Map Search Example': 'Eksempel på kortsøgning'\n'Map Preview': 'Forhåndsvisning af kort'\n'Image URL': 'Billede URL'\nvideo: video\ntext: tekst\nimage: billede\nicon: ikon\n'Setting Map Locations': 'Indstiller steder på kortet'\nDeselect: Fravælg\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.de.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': 'Basierend auf Daten von Geonames.org und OpenStreetMap.org'\n'selected marker icon': 'ausgewähltes Markierungssymbol'\n'add location to map': 'Ort der Karte hinzufügen'\n'Video source': Videoquelle\n'The point will be removed from all translations of the article.': 'Der Standort wird aus allen Übersetzungen des Artikels entfernt. '\n'Specify country (optional)': 'Land festlegen (optional)'\n'Sorry, that place was not found. Check your spelling or search again.': 'Der Ort wurde nicht gefunden. Überprüfen Sie die Schreibweise oder suchen Sie erneut. '\n'Show search results': 'Suchergebnisse anzeigen'\n'Search for place or coordinate': 'Nach Ort oder Koordinaten suchen'\n'Return to edit': 'Zur Bearbeitung zurückkehren'\n'Really delete this point?': 'Diesen Standort wirklich löschen?'\n'Name and describe this location': 'Benennen und beschreiben Sie diesen Ort'\n'Map size': Kartengröße\n'Location label': Ortsbezeichnung\n'Location description:': 'Ortsbeschreibung: '\n'Label url': 'Bezeichnung url'\n'Hide search results': 'Suchergebnisse verbergen'\nGeo-filtering: Geofilter\n'Fill in youtube ID or link, e.g.': 'Bitte Youtube-ID oder Link eingeben, z.B. '\n'Fill in vimeo ID or link, e.g': 'Bitte Vimeo-ID oder Link eingeben, z.B. '\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': 'Bitte Video-ID, Link oder Dateinamen für YouTube, Vimeo oder Flash-Video eingeben. '\n'Fill in location label': 'Bitte Ortsbezeichnung eingeben'\n'Fill in local swf flash file name or link, e.g.': 'Bitte geben Sie den Namen der lokalen Flash-Datein oder den Link ein, z.B. '\n'Fill in local flv flash file name or link, e.g.': 'Bitte geben Sie den Namen oder den Link zur lokalen Flash-Datei ein, z.B. '\n'Fill in image link, like': 'Bitte Bildlink eingeben, wie '\n'Describe the location...': 'Beschreiben Sie den Ort...'\n'Delete location': 'Ort löschen'\nCoordinates: Koordinaten\n'Change video display size': 'Anzeigegröße des Videos ändern'\n'Change image display size': 'Anzeigegröße des Bildes ändern'\n'Change icon of this location': 'Symbol zum Ort ändern'\n'Center map on location': 'Karte zum Ort zentrieren'\n'Advanced editing': 'Erweiterte Bearbeitung'\n'Add an image to this location': 'Diesem Ort ein Bild hinzufügen'\n'Add a video to this location': 'Diesem Ort ein Video hinzufügen'\n'Are you sure you want to quit without saving your changes?': 'Wirklich verlassen ohne Änderungen zu speichern?'\n'Map preview': 'Vorschau Karte'\n'Locations updated.': 'Standorte aktualisiert.'\n'Setting the map name helps with map search': 'Einen Kartennamen festlegen um die Kartensuche zu vereinfachen.'\nLongitude: Längengrad\nLatitude: Breitengrad\nCenter: Zentrieren\n'Last Saved Map View': 'Zuletzt gespeicherte Kartenansicht'\n'List of locations updated': 'Liste der Standorte aktualisiert'\nwidth: Breite\n'show initial map view': 'Erste Kartenansicht anzeigen'\n'problem at point processing, please send error report': 'Problem beim Bearbeiten der Standpunkte, bitte Fehlermeldung senden.'\n'plain text': 'Einfacher Text '\n'html content': 'HTML Inhalt'\nheight: Höhe\n'fill in map name': 'Kartenname eintragen'\n'You do not have the right to remove maps from articles.': 'Keine Berechtigung um Karten aus Artikeln zu entfernen'\n'Video file': Videodatei\n'Video ID': 'Video ID'\n'The map has been removed from the article.': 'Die Karte wurde aus dem Artikel entfernt.'\n'Point no.': Standpunktnummer\n'Point markers': Standpunktmarkierungen\nNone: Keine\n'Map Search Example': 'Kartensuche Beispiel'\n'Map Preview': Kartenvorschau\n'Image URL': 'Bild URL'\nvideo: 'Video '\ntext: Text\nimage: Bild\nicon: Symbol\n'Setting Map Locations': 'Kartenstandorte festlegen'\nDeselect: 'Auswahl zurücknehmen'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.de_AT.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': 'ausgewähltes Markierungssymbol'\n'add location to map': 'Ort der Karte hinzufügen'\n'Video source': Videoquelle\n'The point will be removed from all translations of the article.': 'Der Standort wird aus allen Übersetzungen des Artikels entfernt. '\n'Specify country (optional)': 'Land festlegen (optional)'\n'Sorry, that place was not found. Check your spelling or search again.': 'Der Ort wurde nicht gefunden. Überprüfen Sie die Schreibweise oder suchen Sie erneut. '\n'Show search results': 'Suchergebnisse anzeigen'\n'Search for place or coordinate': 'Nach Ort oder Koordinaten suchen'\n'Return to edit': 'Zur Bearbeitung zurückkehren'\n'Really delete this point?': 'Diesen Standort wirklich löschen?'\n'Name and describe this location': 'Benennen und beschreiben Sie diesen Ort'\n'Map size': Kartengröße\n'Location label': Ortsbezeichnung\n'Location description:': 'Ortsbeschreibung: '\n'Label url': 'Bezeichnung url'\n'Hide search results': 'Suchergebnisse verbergen'\nGeo-filtering: Geofilter\n'Fill in youtube ID or link, e.g.': 'Bitte Youtube-ID oder Link eingeben, z.B. '\n'Fill in vimeo ID or link, e.g': 'Bitte Vimeo-ID oder Link eingeben, z.B. '\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': 'Bitte Video-ID, Link oder Dateinamen für YouTube, Vimeo oder Flash-Video eingeben. '\n'Fill in location label': 'Bitte Ortsbezeichnung eingeben'\n'Fill in local swf flash file name or link, e.g.': 'Bitte geben Sie den Namen der lokalen Flash-Datein oder den Link ein, z.B. '\n'Fill in local flv flash file name or link, e.g.': 'Bitte geben Sie den Namen oder den Link zur lokalen Flash-Datei ein, z.B. '\n'Fill in image link, like': 'Bitte Bildlink eingeben, wie '\n'Describe the location...': 'Beschreiben Sie den Ort...'\n'Delete location': 'Ort löschen'\nCoordinates: Koordinaten\n'Change video display size': 'Anzeigegröße des Videos ändern'\n'Change image display size': 'Anzeigegröße des Bildes ändern'\n'Change icon of this location': 'Symbol zum Ort ändern'\n'Center map on location': 'Karte zum Ort zentrieren'\n'Advanced editing': 'Erweiterte Bearbeitung'\n'Add an image to this location': 'Diesem Ort ein Bild hinzufügen'\n'Add a video to this location': 'Diesem Ort ein Video hinzufügen'\n'Are you sure you want to quit without saving your changes?': 'Wirklich verlassen ohne Änderungen zu speichern?'\n'Map preview': 'Vorschau Karte'\n'Locations updated.': 'Standorte aktualisiert.'\n'Setting the map name helps with map search': 'Einen Kartennamen festlegen um die Kartensuche zu vereinfachen.'\nLongitude: Längengrad\nLatitude: Breitengrad\nCenter: Zentrieren\n'Last Saved Map View': 'Zuletzt gespeicherte Kartenansicht'\n'List of locations updated': 'Liste der Standorte aktualisiert'\nwidth: Breite\n'show initial map view': 'Erste Kartenansicht anzeigen'\n'problem at point processing, please send error report': 'Problem beim Bearbeiten der Standpunkte, bitte Fehlermeldung senden.'\n'plain text': 'Einfacher Text '\n'html content': 'HTML Inhalt'\nheight: Höhe\n'fill in map name': 'Kartenname eintragen'\n'You do not have the right to remove maps from articles.': 'Keine Berechtigung um Karten aus Artikeln zu entfernen'\n'Video file': Videodatei\n'Video ID': 'Video ID'\n'The map has been removed from the article.': 'Die Karte wurde aus dem Artikel entfernt.'\n'Point no.': Standpunktnummer\n'Point markers': Standpunktmarkierungen\nNone: Keine\n'Map Search Example': 'Kartensuche Beispiel'\n'Map Preview': Kartenvorschau\n'Image URL': 'Bild URL'\nvideo: 'Video '\ntext: Text\nimage: Bild\nicon: Symbol\n'Setting Map Locations': 'Kartenstandorte festlegen'\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.el.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': 'επιλεγμένο εικονίδιο δείκτη'\n'add location to map': 'προσθήκη τοποθεσίας στο χάρτη'\n'Video source': 'Πηγή βίντεο'\n'The point will be removed from all translations of the article.': 'Το σημείο θα αφαιρεθεί από όλες τις μεταφράσεις του άρθρου.'\n'Specify country (optional)': 'Καθορίστε τη χώρα (προαιρετικό)'\n'Sorry, that place was not found. Check your spelling or search again.': 'Η τοποθεσία δεν βρέθηκε. Παρακαλούμε ελέγξτε την ορθογραφία ή προσπαθήστε ξανά.'\n'Show search results': 'Εμφάνιση αποτελεσμάτων αναζήτησης'\n'Search for place or coordinate': 'Αναζήτηση τοποθεσίας ή συντεταγμένων'\n'Return to edit': 'Επιστροφή στην επεξεργασία'\n'Really delete this point?': 'Θέλετε να διαγράψετε το σημείο;'\n'Name and describe this location': 'Όνομα και περιγραφή της τοποθεσίας'\n'Map size': 'Μέγεθος χάρτη'\n'Location label': 'Σήμανση τοποθεσίας'\n'Location description:': 'Περιγραφή τοποθεσίας:'\n'Label url': 'Url σήμανσης'\n'Hide search results': 'Απόκρυψη αποτελεσμάτων αναζήτησης'\nGeo-filtering: Geo-φιλτράρισμα\n'Fill in youtube ID or link, e.g.': 'Συμπληρώστε ταυτότητα ή σύνδεσμο youtube, π.χ'\n'Fill in vimeo ID or link, e.g': 'Συμπληρώστε ταυτότητα ή σύνδεσμο vimeo, π.χ'\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': 'Συμπληρώστε ταυτότητα, σύνδεσμο ή όνομα αρχείου του βίντεο, για YouTube, Vimeo, ή flash video.'\n'Fill in location label': 'Συμπληρώστε τη σήμανση τοποθεσίας'\n'Fill in local swf flash file name or link, e.g.': 'Συμπληρώστε το όνομα αρχείου ή τον σύνδεσμο του τοπικού swf flash, π.χ'\n'Fill in local flv flash file name or link, e.g.': 'Συμπληρώστε το όνομα αρχείου ή τον σύνδεσμο του τοπικού flv flash, π.χ'\n'Fill in image link, like': 'Συμπληρώστε τον σύνδεσμο εικόνας, όπως'\n'Describe the location...': 'Περιγράψτε τη τοποθεσία...'\n'Delete location': 'Διαγραφή τοποθεσίας'\nCoordinates: Συντεταγμένες\n'Change video display size': 'Αλλαγή μεγέθους προβολής βίντεο'\n'Change image display size': 'Αλλαγή μεγέθους προβολής εικόνας'\n'Change icon of this location': 'Αλλαγή εικονιδίου της τοποθεσίας'\n'Center map on location': 'Κεντράρισμα χάρτη στη τοποθεσία'\n'Advanced editing': 'Προηγμένη επεξεργασία'\n'Add an image to this location': 'Προσθήκη εικόνας στην τοποθεσία'\n'Add a video to this location': 'Προσθήκη βίντεο στην τοποθεσία'\n'Are you sure you want to quit without saving your changes?': 'Είστε σίγουρος/η ότι θέλετε να παραιτηθείτε χωρίς να αποθηκεύσετε τις αλλαγές σας;'\n'Map preview': 'Προεπισκόπηση χάρτη'\n'Locations updated.': 'Οι τοποθεσίες ενημερώθηκαν.'\n'Setting the map name helps with map search': 'Ρυθμίζοντας το όνομα του χάρτη, βοηθάει στην εύρεση χαρτών'\nLongitude: 'Γεωγραφικό μήκος'\nLatitude: 'Γεωγραφικό πλάτος'\nCenter: Κέντρο\n'Last Saved Map View': 'Προβολή Τελευταίως Αποθηκευμένου Χάρτη'\n'List of locations updated': 'Η λίστα τοποθεσιών ανανεώθηκε'\nwidth: πλάτος\n'show initial map view': 'εμφάνιση αρχικής προβολής χάρτη'\n'problem at point processing, please send error report': 'Πρόβλημα κατά την διαδικασία τοποθέτησης σημείου, παρακαλούμε στείλτε αναφορά σφάλματος'\n'plain text': 'απλό κείμενο'\n'html content': 'περιεχόμενο html'\nheight: ύψος\n'fill in map name': 'συμπληρώστε το όνομα χάρτη'\n'You do not have the right to remove maps from articles.': 'Δεν έχετε το δικαίωμα να αφαιρέσετε χάρτες από τα άρθρα.'\n'Video file': 'αρχείο Video'\n'Video ID': 'ID Video'\n'The map has been removed from the article.': 'Ο χάρτης έχει αφαιρεθεί από το άρθρο.'\n'Point no.': 'Αρ. σημείου'\n'Point markers': 'Δείκτες σημείου'\nNone: Κανένα\n'Map Search Example': 'Δείγμα Αναζήτησης Χάρτη'\n'Map Preview': 'Προεπισκόπιση Χάρτη'\n'Image URL': 'URL Εικόνας'\nvideo: video\ntext: κείμενο\nimage: εικόνα\nicon: εικονίδιο\n'Setting Map Locations': 'Ρύθμιση Τοποθεσιών Χάρτη'\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.en.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': 'Based on GeoNames.org and OpenStreetMap.org data'\n'selected marker icon': 'selected marker icon'\n'add location to map': 'add location to map'\n'Video source': 'Video source'\n'The point will be removed from all translations of the article.': 'The point will be removed from all translations of the article.'\n'Specify country (optional)': 'Specify country (optional)'\n'Sorry, that place was not found. Check your spelling or search again.': 'Sorry, that place was not found. Check your spelling or search again.'\n'Show search results': 'Show search results'\n'Search for place or coordinate': 'Search for place or coordinate'\n'Return to edit': 'Return to edit'\n'Really delete this point?': 'Really delete this point?'\n'Name and describe this location': 'Name and describe this location'\n'Map size': 'Map size'\n'Location label': 'Location label'\n'Location description:': 'Location description:'\n'Label url': 'Label url'\n'Hide search results': 'Hide search results'\nGeo-filtering: Geo-filtering\n'Fill in youtube ID or link, e.g.': 'Fill in youtube ID or link, e.g.'\n'Fill in vimeo ID or link, e.g': 'Fill in vimeo ID or link, e.g'\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': 'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.'\n'Fill in location label': 'Fill in location label'\n'Fill in local swf flash file name or link, e.g.': 'Fill in local swf flash file name or link, e.g.'\n'Fill in local flv flash file name or link, e.g.': 'Fill in local flv flash file name or link, e.g.'\n'Fill in image link, like': 'Fill in image link, like'\n'Describe the location...': 'Describe the location...'\n'Delete location': 'Delete location'\nCoordinates: Coordinates\n'Change video display size': 'Change video display size'\n'Change image display size': 'Change image display size'\n'Change icon of this location': 'Change icon of this location'\n'Center map on location': 'Center map on location'\n'Advanced editing': 'Advanced editing'\n'Add an image to this location': 'Add an image to this location'\n'Add a video to this location': 'Add a video to this location'\n'Are you sure you want to quit without saving your changes?': 'Are you sure you want to quit without saving your changes?'\n'Map preview': 'Map preview'\n'Locations updated.': 'Locations updated.'\n'Setting the map name helps with map search': 'Setting the map name helps with map search'\nLongitude: Longitude\nLatitude: Latitude\nCenter: Center\n'Last Saved Map View': 'Last Saved Map View'\n'List of locations updated': 'List of locations updated'\nwidth: width\n'show initial map view': 'show initial map view'\n'problem at point processing, please send error report': 'problem at point processing, please send error report'\n'plain text': 'plain text'\n'html content': 'html content'\nheight: height\n'fill in map name': 'fill in map name'\n'You do not have the right to remove maps from articles.': 'You do not have the right to remove maps from articles.'\n'Video file': 'Video file'\n'Video ID': 'Video ID'\n'The map has been removed from the article.': 'The map has been removed from the article.'\n'Point no.': 'Point no.'\n'Point markers': 'Point markers'\nNone: None\n'Map Search Example': 'Map Search Example'\n'Map Preview': 'Map Preview'\n'Image URL': 'Image URL'\nvideo: video\ntext: text\nimage: image\nicon: icon\n'Setting Map Locations': 'Setting Map Locations'\n'Deselect': 'Deselect'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.en_GB.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': 'Based on GeoNames.org and OpenStreetMap.org data'\n'selected marker icon': 'selected marker icon'\n'add location to map': 'add location to map'\n'Video source': 'Video source'\n'The point will be removed from all translations of the article.': 'The point will be removed from all translations of the article.'\n'Specify country (optional)': 'Specify country (optional)'\n'Sorry, that place was not found. Check your spelling or search again.': 'Sorry, that place was not found. Check your spelling or search again.'\n'Show search results': 'Show search results'\n'Search for place or coordinate': 'Search for place or coordinate'\n'Return to edit': 'Return to edit'\n'Really delete this point?': 'Really delete this point?'\n'Name and describe this location': 'Name and describe this location'\n'Map size': 'Map size'\n'Location label': 'Location label'\n'Location description:': 'Location description:'\n'Label url': 'Label url'\n'Hide search results': 'Hide search results'\nGeo-filtering: Geo-filtering\n'Fill in youtube ID or link, e.g.': 'Fill in youtube ID or link, e.g.'\n'Fill in vimeo ID or link, e.g': 'Fill in vimeo ID or link, e.g'\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': 'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.'\n'Fill in location label': 'Fill in location label'\n'Fill in local swf flash file name or link, e.g.': 'Fill in local swf flash file name or link, e.g.'\n'Fill in local flv flash file name or link, e.g.': 'Fill in local flv flash file name or link, e.g.'\n'Fill in image link, like': 'Fill in image link, like'\n'Describe the location...': 'Describe the location...'\n'Delete location': 'Delete location'\nCoordinates: Coordinates\n'Change video display size': 'Change video display size'\n'Change image display size': 'Change image display size'\n'Change icon of this location': 'Change icon of this location'\n'Center map on location': 'Center map on location'\n'Advanced editing': 'Advanced editing'\n'Add an image to this location': 'Add an image to this location'\n'Add a video to this location': 'Add a video to this location'\n'Are you sure you want to quit without saving your changes?': 'Are you sure you want to quit without saving your changes?'\n'Map preview': 'Map preview'\n'Locations updated.': 'Locations updated.'\n'Setting the map name helps with map search': 'Setting the map name helps with map search'\nLongitude: Longitude\nLatitude: Latitude\nCenter: Center\n'Last Saved Map View': 'Last Saved Map View'\n'List of locations updated': 'List of locations updated'\nwidth: width\n'show initial map view': 'show initial map view'\n'problem at point processing, please send error report': 'problem at point processing, please send error report'\n'plain text': 'plain text'\n'html content': 'html content'\nheight: height\n'fill in map name': 'fill in map name'\n'You do not have the right to remove maps from articles.': 'You do not have the right to remove maps from articles.'\n'Video file': 'Video file'\n'Video ID': 'Video ID'\n'The map has been removed from the article.': 'The map has been removed from the article.'\n'Point no.': 'Point no.'\n'Point markers': 'Point markers'\nNone: None\n'Map Search Example': 'Map Search Example'\n'Map Preview': 'Map Preview'\n'Image URL': 'Image URL'\nvideo: video\ntext: text\nimage: image\nicon: icon\n'Setting Map Locations': 'Setting Map Locations'\nDeselect: Deselect\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.es.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': 'Basado en los datos de GeoNames.org y OpenStreetMap.org'\n'selected marker icon': 'ícono marcador seleccionado'\n'add location to map': 'añadir locación al mapa'\n'Video source': 'Fuente de video'\n'The point will be removed from all translations of the article.': 'Este punto será removido de todas las traducciones del artículo.'\n'Specify country (optional)': 'Especificar país (opcional)'\n'Sorry, that place was not found. Check your spelling or search again.': 'Ese lugar no pudoencontrase. Revisa su nombre y vuelve a buscar.'\n'Show search results': 'Mostrar resultados de búsqueda'\n'Search for place or coordinate': 'Buscar un lugar o coordenada'\n'Return to edit': 'Regresar a edición'\n'Really delete this point?': '¿Eliminar este punto?'\n'Name and describe this location': 'Nombra y describe esta locación'\n'Map size': 'Tamaño del mapa'\n'Location label': 'Etiqueta de localización'\n'Location description:': 'Descripción de localización'\n'Label url': 'URL de etiqueta'\n'Hide search results': 'Ocultar resultados de búsqueda'\nGeo-filtering: Geo-filtro\n'Fill in youtube ID or link, e.g.': 'Escribir cuenta de Youtube, o hipervínculo, etc.'\n'Fill in vimeo ID or link, e.g': 'Escribir cuenta de Vimeo, o hipervínculo, etc.'\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': 'Escribir el código del video, el hipervínculo o nombre de archivo para Youtube, Vimeo o Flash Video'\n'Fill in location label': 'Escribir etiqueta de localización'\n'Fill in local swf flash file name or link, e.g.': 'Escribir el nombre local del archivo swf flash o hipervínculo, etc.'\n'Fill in local flv flash file name or link, e.g.': 'Escribir el nombre local del archivo flv flash o hipervínculo, etc.'\n'Fill in image link, like': 'Colocar una imágen o hipervínculo.'\n'Describe the location...': 'Describe la locación...'\n'Delete location': 'Eliminar locación'\nCoordinates: Coordinadas\n'Change video display size': 'Cambiar el tamaño del visor de video'\n'Change image display size': 'Cambiar el tamaño del visor de imagen'\n'Change icon of this location': 'Cambiar el ícono de esta locación'\n'Center map on location': 'Centrar el mapa en la locación'\n'Advanced editing': 'Edición avanzada'\n'Add an image to this location': 'Añadir una imagen a esta locación'\n'Add a video to this location': 'Añadir un video a esta locación'\n'Are you sure you want to quit without saving your changes?': '¿Desea salir sin guardar sus cambios?'\n'Map preview': 'Previsualización del mapa'\n'Locations updated.': 'Se actualizaron las ubicaciones'\n'Setting the map name helps with map search': 'Configurar el nombre del mapa ayuda con la búsqueda del mapa'\nLongitude: Longitud\nLatitude: Latitud\nCenter: Centro\n'Last Saved Map View': 'Última vista almacenada del mapa'\n'List of locations updated': 'Se actualizó la lista de ubicaciones'\nwidth: ancho\n'show initial map view': 'Mostrar la vista inicial del mapa'\n'problem at point processing, please send error report': 'Error en el procesamiento del punto.  Por favor envíe un reporte de error.'\n'plain text': 'Texto simple'\n'html content': 'Contenido HTML'\nheight: alto\n'fill in map name': 'Ingrese el nombre del mapa'\n'You do not have the right to remove maps from articles.': 'No tiene privilegios para eliminar mapas de los artículos'\n'Video file': 'Archivo de video'\n'Video ID': 'ID del video'\n'The map has been removed from the article.': 'Se ha removido el mapa del artículo.'\n'Point no.': 'Punto no.'\n'Point markers': 'Marcadores de punto'\nNone: Ninguno.\n'Map Search Example': 'Ejemplo de búsqueda en el mapa'\n'Map Preview': 'Previsualización de mapa'\n'Image URL': 'URL de la imagen'\nvideo: video\ntext: texto\nimage: imagen\nicon: ícono\n'Setting Map Locations': 'Configurar ubicaciones en el mapa'\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.es_AR.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: Centro\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.fa.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: null\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.fa_AF.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: null\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.fr.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: null\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: image\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.he.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: null\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.hr.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: null\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.hu.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': 'A GeoNames.org és az OpenStreetMap.org adatai alapján'\n'selected marker icon': 'kiválasztott jelölő ikon'\n'add location to map': 'hely felvétele a térképre'\n'Video source': 'Videó forrása'\n'The point will be removed from all translations of the article.': 'A pont a cikk összes fordításából eltávolításra fog kerülni.'\n'Specify country (optional)': 'Ország megadása (elhagyható)'\n'Sorry, that place was not found. Check your spelling or search again.': 'Sajnos nem található a hely. Ellenőrizd, hogy helyesen írtad-e be vagy keresd újból.'\n'Show search results': 'Keresési eredmények megjelenítése'\n'Search for place or coordinate': 'Keresés helyre vagy koordinátára'\n'Return to edit': 'Vissza a szerkesztéshez'\n'Really delete this point?': 'Valóban törlöd ezt a pontot?'\n'Name and describe this location': 'Nevezd el és ismertesd ezt a helyet'\n'Map size': 'Térkép mérete'\n'Location label': 'Hely címkéje'\n'Location description:': 'Hely leírása:'\n'Label url': 'Címke URL-címe'\n'Hide search results': 'Keresési eredmények elrejtése'\nGeo-filtering: 'Földrajzi szűrés'\n'Fill in youtube ID or link, e.g.': 'Töltsd ki a YouTube-azonosítót vagy hivatkozást, pl.:'\n'Fill in vimeo ID or link, e.g': 'Töltsd ki a Vimeo-azonosítót vagy hivatkozást, pl.:'\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': 'Töltsd ki a YouTube-, a Vimeo- vagy a Flash-videó azonosítószámát, hivatkozását vagy fájlnevét.'\n'Fill in location label': 'Töltsd ki a hely címkét'\n'Fill in local swf flash file name or link, e.g.': 'Töltsd ki a helyi SWF Flash-fájl nevét vagy hivatkozását, pl.:'\n'Fill in local flv flash file name or link, e.g.': 'Töltsd ki a helyi FLV Flash-fájl nevét vagy hivatkozását, pl.:'\n'Fill in image link, like': 'Töltsd ki a kép hivatkozását, például:'\n'Describe the location...': 'Ismertesd a helyet...'\n'Delete location': 'Hely törlése'\nCoordinates: Koordináták\n'Change video display size': 'A videó képméretének módosítása'\n'Change image display size': 'A kép megjelenítési méretének módosítása'\n'Change icon of this location': 'A hely ikonjának módosítása'\n'Center map on location': 'A hely a térkép közepén'\n'Advanced editing': 'Speciális szerkesztés'\n'Add an image to this location': 'Kép hozzáadása a helyhez'\n'Add a video to this location': 'Videó hozzáadása a helyhez'\n'Are you sure you want to quit without saving your changes?': 'Biztosan ki akarsz lépni a módosítások mentése nélkül?'\n'Map preview': 'Térkép előnézete'\n'Locations updated.': 'A helyek frissítése megtörtént.'\n'Setting the map name helps with map search': 'A térkép nevének megadása a térképkeresésben segít'\nLongitude: Hosszúság\nLatitude: Szélesség\nCenter: Központ\n'Last Saved Map View': 'Utolsó mentett térképnézet'\n'List of locations updated': 'A helyek listájának frissítése megtörtént'\nwidth: szélesség\n'show initial map view': 'a kezdeti térképnézet megjelenítése'\n'problem at point processing, please send error report': 'probléma a pont feldolgozásában, kérjük jelentsd be a hibát'\n'plain text': 'egyszerű szöveg'\n'html content': HTML-tartalom\nheight: magasság\n'fill in map name': 'töltsd ki a térkép nevét'\n'You do not have the right to remove maps from articles.': 'Nincs jogod a térképek cikkekből való eltávolításához.'\n'Video file': Videofájl\n'Video ID': Videoazonosító\n'The map has been removed from the article.': 'A térkép eltávolítása a cikkből megtörtént.'\n'Point no.': 'Pont s.sz.'\n'Point markers': Pontjelölők\nNone: Nincs\n'Map Search Example': 'Térképkeresési példa'\n'Map Preview': 'Térkép előnézete'\n'Image URL': 'Kép URL-címe'\nvideo: videó\ntext: szöveg\nimage: kép\nicon: ikon\n'Setting Map Locations': 'Térképhelyek megadása'\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.hy.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: Կենտրոն\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: Deselect\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.hy_AM.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: Կենտրոն\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.id.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: null\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.it.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': 'Icona del marker'\n'add location to map': 'Aggiungi luogo'\n'Video source': 'Sorgente video'\n'The point will be removed from all translations of the article.': 'La posizione sara rimossa da tutte le traduzioni dellarticolo.'\n'Specify country (optional)': 'Specifica la nazione'\n'Sorry, that place was not found. Check your spelling or search again.': 'Il luogo non e stato trovato. Controlla il testo inserito.'\n'Show search results': 'Mostra risultati'\n'Search for place or coordinate': 'Cerca luogo o coordinate'\n'Return to edit': 'Torna alla modifica'\n'Really delete this point?': 'Confermi di cancellare la locazione?'\n'Name and describe this location': 'Inserisci nome e descrizione per il luogo'\n'Map size': 'Dimensione mappa'\n'Location label': 'Etichetta locazione'\n'Location description:': 'Descrizione locazione:'\n'Label url': 'Url locazione'\n'Hide search results': 'Nascondi i risultati'\nGeo-filtering: Geo-filtro\n'Fill in youtube ID or link, e.g.': 'Inserisci il link o ID youtube'\n'Fill in vimeo ID or link, e.g': 'Inserisci il link o ID vimeo'\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': 'Inserisci lID, link o nome file per YouTube, Vimeo o flash video'\n'Fill in location label': 'Inserisci letichetta locazione'\n'Fill in local swf flash file name or link, e.g.': 'Inserisci il file o link swf locale'\n'Fill in local flv flash file name or link, e.g.': 'Inserisci il file o link flv locale'\n'Fill in image link, like': 'Inserisci il link immagine, come '\n'Describe the location...': 'Descrivi il luogo'\n'Delete location': 'Elimina il luogo'\nCoordinates: Coordinate\n'Change video display size': 'Cambia dimensione video'\n'Change image display size': 'Cambia dimensione immagine'\n'Change icon of this location': 'Cambia icona luogo'\n'Center map on location': 'Centra la mappa sul luogo'\n'Advanced editing': Avanzate\n'Add an image to this location': 'Aggiungi immagine a luogo'\n'Add a video to this location': 'Aggiungi video a luogo'\n'Are you sure you want to quit without saving your changes?': 'Uscire senza salvare? Le modifiche andranno perse.'\n'Map preview': 'Preview mappa'\n'Locations updated.': 'Luogo aggiornato.'\n'Setting the map name helps with map search': 'Il nome della mappa aiuta con le ricerche'\nLongitude: Longitudine\nLatitude: Latitudine\nCenter: Centro\n'Last Saved Map View': 'Visualizza lultima mappa salvata'\n'List of locations updated': 'Lista dei luoghi aggiornati'\nwidth: larghezza\n'show initial map view': 'Mostra la vista iniziale'\n'problem at point processing, please send error report': 'Errore durante lelaborazione, inviare un report errore'\n'plain text': 'testo normale'\n'html content': 'contenuto HTML'\nheight: altezza\n'fill in map name': 'inserisci il nome mappa'\n'You do not have the right to remove maps from articles.': 'Non si possiedono i diritti di rimuovere mappe dallarticolo'\n'Video file': 'file video'\n'Video ID': 'ID video'\n'The map has been removed from the article.': 'La mappa e stata rimossa dallarticolo.'\n'Point no.': Punto\n'Point markers': Marcatore\nNone: Nessuno\n'Map Search Example': 'Esempio di ricerca mappa'\n'Map Preview': 'Preview mappa'\n'Image URL': 'Url imamgine'\nvideo: video\ntext: testo\nimage: immagine\nicon: icona\n'Setting Map Locations': 'Imposta luoghi mappa'\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.ka.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': 'GeoNames.org და OpenStreetMap.org მონაცემებზე დაყრდნობით'\n'selected marker icon': 'აირჩიეთ მარკერის სიმბოლოს'\n'add location to map': 'ლოკაციის რუკაზე დამატება'\n'Video source': 'ვიდეო წყარო'\n'The point will be removed from all translations of the article.': 'პუნქტი მოიხსნება ამ სტატიის ყველა თარგმნიდან'\n'Specify country (optional)': 'მიუთითეთ ქვეყანა (არასავალდებულო)'\n'Sorry, that place was not found. Check your spelling or search again.': 'ასეთი ლოკაცია ვერ მოიძებნა. გადაამოწმეთ სახელწოდება ან თავიდან მოძებნეთ.'\n'Show search results': 'ძებნის შედეგების ჩვენება'\n'Search for place or coordinate': 'ადგილის ან კოორდინატის ძებნა'\n'Return to edit': 'რედაქტირებაზე დაბრუნება'\n'Really delete this point?': 'გსურთ ამ წერტილის წაშლა?'\n'Name and describe this location': 'დაარქვით სახელი ამ ლოკაციას და აღწერეთ იგი'\n'Map size': 'რუკის ზომა'\n'Location label': 'ლოკაციის იარლიყი'\n'Location description:': 'ლოკაციის აღწერა:'\n'Label url': 'იარლიყის url'\n'Hide search results': 'ძიების შედეგების დამალვა'\nGeo-filtering: 'ლოკაციის მიხედვით გაფილტვრა'\n'Fill in youtube ID or link, e.g.': 'მიუთითეთ YouTube ID ან ბმული'\n'Fill in vimeo ID or link, e.g': 'მიუთითეთ Vimeo-ს ID ან ბმული'\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': 'YouTube-ისთვის, Vimeo-ისთვის ან ფლეშ ვიდეოსთვის მიუთითეთ ვიდეოს ID, ბმული ან სახელწოდება'\n'Fill in location label': 'მიუთითეთ ლოკაციის იარლიყი'\n'Fill in local swf flash file name or link, e.g.': 'შეიყვანეთ ლოკალური swf flash ფაილის სახელი ან ლინკი'\n'Fill in local flv flash file name or link, e.g.': 'შეიყვანეთ ლოკალური flv flash ფაილის სახელი ან ლინკი'\n'Fill in image link, like': 'მიუთითეთ გამოსახულების ბმული'\n'Describe the location...': 'აღწერეთ ლოკაცია...'\n'Delete location': 'ლოკაციის წაშლა'\nCoordinates: კოორდინატები\n'Change video display size': 'ვიდეოს ზომის შეცვლა'\n'Change image display size': 'გამოსახულების ზომის შეცვლა'\n'Change icon of this location': 'ამ ლოკაციის სიმბოლოს შეცვლა'\n'Center map on location': 'ლოკაციის ცენტრში დასმა'\n'Advanced editing': 'დამატებითი რედაქტირება'\n'Add an image to this location': 'ამ ლოკაციას დაუმატეთ გამოსახულება'\n'Add a video to this location': 'ამ ლოკაციას დაუმატეთ ვიდეო'\n'Are you sure you want to quit without saving your changes?': 'დარწმუნებული ხართ რომ გსურთ შენახვის გარეშე გათიშვა?'\n'Map preview': 'რუკის წინასწარ ნახვა'\n'Locations updated.': 'ლოკაციის განახლება.'\n'Setting the map name helps with map search': 'რუკისთვის სახელის მინიჭება აადვილებს რუკის ძიებას'\nLongitude: გრძედი\nLatitude: განედი\nCenter: ცენტრი\n'Last Saved Map View': 'ბოლოს შენახული რუკა'\n'List of locations updated': 'განახლებული ლოკაციების სია'\nwidth: სიგანე\n'show initial map view': 'საწყისი რუკის ჩვენება'\n'problem at point processing, please send error report': 'პრობლემა რუკის აღნიშვნებთან. გთხოვთ განაცხადოთ ხარვეზის შესახებ'\n'plain text': 'ჩვეულებრივი ტექსტი '\n'html content': 'html კონტენტი'\nheight: სიმაღლე\n'fill in map name': 'რუკის სახელის მითითება'\n'You do not have the right to remove maps from articles.': 'თქვენ არ გაქვთ სტატიიდან რუკის მოხსნის უფლება'\n'Video file': 'ვიდეო ფაილი'\n'Video ID': 'ვიდეო ID'\n'The map has been removed from the article.': 'რუკა მოიხსნა სტატიიდან'\n'Point no.': 'წერტილის ნომერი'\n'Point markers': 'წერტილის მარკერი'\nNone: არცერთი\n'Map Search Example': 'რუკის ძიების მაგალით'\n'Map Preview': 'რუკის წინასწარ ნახვა'\n'Image URL': 'გამოსახულების URL'\nvideo: ვიდეო\ntext: ტექსტი\nimage: გამოსახულება\nicon: სიმბოლო\n'Setting Map Locations': 'რუკის ლოკაციის შექმნა'\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.ko.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: null\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.ku.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: null\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.lv.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: null\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.mr.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: null\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.nb_NO.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: null\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.nl.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: null\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.pa.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: null\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.pl.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': 'Opiera się na danych z GeoNames.org i OpenStreetMap.org'\n'selected marker icon': 'Wybierz ikonę dla markera'\n'add location to map': 'dodaj lokalizacje na mapie'\n'Video source': 'Źródło wideo'\n'The point will be removed from all translations of the article.': 'Ten punkt zostanie usunięty dla wszystkich tłumaczeń tego artykułu.'\n'Specify country (optional)': 'Wybierz kraj (opcjonalne)'\n'Sorry, that place was not found. Check your spelling or search again.': 'Przepraszamy, nie udało nam się znaleźć tego miejsca. Sprawdź wpisane słowo lub poszukaj czegoś innego.'\n'Show search results': 'Pokaż wyniki wyszukiwania'\n'Search for place or coordinate': 'Szukaj miejsca o tych koordynatach'\n'Return to edit': 'Wróć do edycji'\n'Really delete this point?': 'naprawdę usunąć ten punkt?'\n'Name and describe this location': 'Napisz i opiszą tą lokalizację.'\n'Map size': 'Rozmiar mapy'\n'Location label': 'Etykieta lokalizacji'\n'Location description:': 'Opis lokalizacji'\n'Label url': 'Etykieta dla adresu url'\n'Hide search results': 'Ukryj wyniki wyszukiwania'\nGeo-filtering: Geo-filtrowanie\n'Fill in youtube ID or link, e.g.': 'Podaj numer video z youtube lub link, np.'\n'Fill in vimeo ID or link, e.g': 'Podaj numer video z vimeolub link, np.'\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': 'Podaj numer wideo, link lub nazwę pliku, link dla YouTube, link dla Vimeo, lub od odtwarzacza flash.'\n'Fill in location label': 'Wypełnij etykietę dla lokalizacji.'\n'Fill in local swf flash file name or link, e.g.': 'Podaj nazwę lokalnego pliku swf albo link, np.'\n'Fill in local flv flash file name or link, e.g.': 'Podaj nazwę lokalnego pliku flv albo link, np.'\n'Fill in image link, like': 'Podaj link do zdjęcia, np.'\n'Describe the location...': 'Opisz lokalizację'\n'Delete location': 'Usuń lokalizację'\nCoordinates: 'Współrzędne '\n'Change video display size': 'Zmień rozmiar video'\n'Change image display size': 'Zmień rozmiar zdjęcia'\n'Change icon of this location': 'Zmień ikonę dla tej lokalizacji'\n'Center map on location': 'Wyśrodkuj mapę na lokalizacji'\n'Advanced editing': 'Zaawansowana edycja'\n'Add an image to this location': 'Dodaj zdjęcie do tej lokalizacji'\n'Add a video to this location': 'Dodaj wideo do tej lokalizacji'\n'Are you sure you want to quit without saving your changes?': 'Na pewno chcesz wyjść bez zapisywania swoich danych?'\n'Map preview': 'Podgląd mapy'\n'Locations updated.': 'Lokalizacje zaktualizowane.'\n'Setting the map name helps with map search': 'Wybranie nazwy mapy pomaga w jej przeszukiwaniu'\nLongitude: 'Długośc gegraficzna'\nLatitude: 'Szerokość geograficzna'\nCenter: Wyśrodkuj\n'Last Saved Map View': 'Ostatni zapisany widok mapy'\n'List of locations updated': 'Lista lokalizacji zaktulizowana'\nwidth: szerokość\n'show initial map view': 'pokaż początkowy widok mapy'\n'problem at point processing, please send error report': 'problem przy przetwarzaniu punkty, wyślij raport o błędzie'\n'plain text': 'zwykły tekst'\n'html content': 'zawrtość HTML'\nheight: wysokość\n'fill in map name': 'podaj nazwę mapy'\n'You do not have the right to remove maps from articles.': 'Nie masz praw usuwać mapy z arykułów.'\n'Video file': 'Plik wideo'\n'Video ID': 'ID wideo'\n'The map has been removed from the article.': 'Mapa została usunięta z artykułu.'\n'Point no.': 'Numer punktu'\n'Point markers': 'Markery punktu'\nNone: Brak\n'Map Search Example': 'Przykład wyszukiwania mapy'\n'Map Preview': 'Podgląd mapy'\n'Image URL': 'URL zdjęcia'\nvideo: 'wideo '\ntext: tekst\nimage: zdjęcie\nicon: ikona\n'Setting Map Locations': 'Ustawienia Lokalizacji'\nDeselect: Odznacz\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.ps.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: null\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.pt.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: null\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.pt_BR.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': 'ícone de marcador selecionado'\n'add location to map': 'adicionar localidade no mapa'\n'Video source': 'Fonte de vídeo'\n'The point will be removed from all translations of the article.': 'Este ponto vai ser removido de todas as traduções do artigo.'\n'Specify country (optional)': 'Especificar país (opcional)'\n'Sorry, that place was not found. Check your spelling or search again.': 'Desculpe, esse lugar não foi encontrado. Verifique a escrita e repita a busca.'\n'Show search results': 'Mostrar resultados da busca.'\n'Search for place or coordinate': 'Procure o lugar ou coordenados'\n'Return to edit': 'Voltar para edição'\n'Really delete this point?': 'Tem certeza que quer apagar este ponto?'\n'Name and describe this location': 'Nomeie e descreva esta localidade'\n'Map size': 'Tamanho do mapa'\n'Location label': 'Rótulo de localidade'\n'Location description:': 'Descrição da localidade'\n'Label url': 'Endereço url do rótulo'\n'Hide search results': 'Esconder resultados da busca'\nGeo-filtering: Geofiltragem\n'Fill in youtube ID or link, e.g.': 'Preencher o ID ou link do YouTube, ex:'\n'Fill in vimeo ID or link, e.g': 'Preencher o ID ou link do Vimeo, ex:'\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': 'Preencher o ID, link ou nome do arquivo para YouTube, Vimeo ou flash video'\n'Fill in location label': 'Digite o rótulo da localidade'\n'Fill in local swf flash file name or link, e.g.': 'Tecle o nome ou link do arquivo flash swf local, ex.'\n'Fill in local flv flash file name or link, e.g.': 'Tecle o nome ou link do arquivo flash flv local, ex.'\n'Fill in image link, like': 'Preencher o link da imagem, como'\n'Describe the location...': 'Descreva a localidade...'\n'Delete location': 'Remova a localidade'\nCoordinates: Coordenados\n'Change video display size': 'Modificar o tamanho do display do vídeo'\n'Change image display size': 'Modificar o tamanho do display da imagem'\n'Change icon of this location': 'Modificar a ícone desta localidade'\n'Center map on location': 'Centralizar localização no mapa'\n'Advanced editing': 'Edição avançada'\n'Add an image to this location': 'Adicionar uma foto à essa localidade'\n'Add a video to this location': 'Adicionar um vídeo à essa localidade'\n'Are you sure you want to quit without saving your changes?': 'Tem certeza que quer sair sem salvar as modificações?'\n'Map preview': 'Visualização do mapa'\n'Locations updated.': 'Localidades atualizadas.'\n'Setting the map name helps with map search': 'Definir o nome do mapa ajuda na busca'\nLongitude: Longitude\nLatitude: Latitude\nCenter: Centro\n'Last Saved Map View': 'A última visualização do mapa que foi salva'\n'List of locations updated': 'Lista das localidades atualizadas'\nwidth: largura\n'show initial map view': 'mostrar a visualização inicial do mapa'\n'problem at point processing, please send error report': null\n'plain text': 'texto puro'\n'html content': 'conteúdo html'\nheight: altura\n'fill in map name': 'preencher o nome do mapa'\n'You do not have the right to remove maps from articles.': 'Você não tem o direito de remover mapas dos artigos.'\n'Video file': 'Arquivo de vídeo'\n'Video ID': 'ID do viídeo'\n'The map has been removed from the article.': 'O mapa foi removido do artigo.'\n'Point no.': 'Ponto no.'\n'Point markers': null\nNone: Nenhum\n'Map Search Example': 'Exemplo da busca no mapa'\n'Map Preview': 'Visualização do mapa'\n'Image URL': 'URL da imagem'\nvideo: vídeo\ntext: texto\nimage: imagem\nicon: ícone\n'Setting Map Locations': 'Definindo localidades do mapa'\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.ro.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: null\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.ru.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': 'На основе данных GeoNames.org и OpenStreetMap.org '\n'selected marker icon': 'выбранная пиктограмма маркера'\n'add location to map': 'добавить местоположение на карту '\n'Video source': 'Источник видео'\n'The point will be removed from all translations of the article.': 'Пункт будет удален из всех переводов этой статьи.'\n'Specify country (optional)': 'Определите страну (необязательно)'\n'Sorry, that place was not found. Check your spelling or search again.': 'К сожалению, данное место не найдено. Проверьте правильность написания или повторите поиск.'\n'Show search results': 'Показать результаты поиска'\n'Search for place or coordinate': 'Искать место или координаты'\n'Return to edit': 'Возврат к редактированию'\n'Really delete this point?': 'Удалить этот пункт?'\n'Name and describe this location': 'Назвать и описать местоположение'\n'Map size': 'Размер карты'\n'Location label': 'Ярлык местоположения'\n'Location description:': 'Описание местоположения:'\n'Label url': 'URL местоположения'\n'Hide search results': 'Скрыть результаты поиска'\nGeo-filtering: Гео-фильтр\n'Fill in youtube ID or link, e.g.': 'Введите ID youtube или ссылку, например'\n'Fill in vimeo ID or link, e.g': 'Введите ID vimeo или ссылку, например'\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': 'Введите ID видео, ссылку или название файла для Youtube, Vimeo или флеш-видео.'\n'Fill in location label': 'Введите ярлык местоположения'\n'Fill in local swf flash file name or link, e.g.': 'Введите название местного swf флеш-файла или ссылку, например'\n'Fill in local flv flash file name or link, e.g.': 'Введите название местного flv флеш-файла, например'\n'Fill in image link, like': 'Введите ссылку на изображение, как '\n'Describe the location...': 'Опишите местоположение...'\n'Delete location': 'Удалите местоположение'\nCoordinates: Координаты\n'Change video display size': 'Изменить размер видео на экране'\n'Change image display size': 'Изменить размер изображения на экране'\n'Change icon of this location': 'Изменить пиктограмму местоположения'\n'Center map on location': 'Разместить местоположение в центре карты'\n'Advanced editing': 'Расширенное редактирование'\n'Add an image to this location': 'Добавить изображение к данному местоположению'\n'Add a video to this location': 'Добавить видео к данному местоположению'\n'Are you sure you want to quit without saving your changes?': 'Вы уверены, что желаете выйти без сохранения изменений?'\n'Map preview': 'Предварительный просмотр карты'\n'Locations updated.': 'Места событий обновлены'\n'Setting the map name helps with map search': 'Настройка названия карты помогает поиску по карте'\nLongitude: Долгота\nLatitude: Широта\nCenter: Центр\n'Last Saved Map View': 'Предварительный просмотр последних обновлений карты'\n'List of locations updated': 'Список мест событий обновлен'\nwidth: ширина\n'show initial map view': 'показать первоначальный вид карты'\n'problem at point processing, please send error report': 'Случилась проблема в процессе обработки данных, пожалуйста, отправьте отчет об ошибке'\n'plain text': 'простой текст'\n'html content': 'html код'\nheight: высота\n'fill in map name': 'заполните имя карты'\n'You do not have the right to remove maps from articles.': 'У Вас нет прав доступа для удаления карт из статей.'\n'Video file': Видеофайл\n'Video ID': 'ID видео'\n'The map has been removed from the article.': 'Эта карта была удалена из статьи.'\n'Point no.': 'Пункт №'\n'Point markers': 'Маркеры пункта'\nNone: 'Ни один'\n'Map Search Example': 'Пример поиска карты'\n'Map Preview': 'Предварительный просмотр карты'\n'Image URL': 'URL изображения'\nvideo: видео\ntext: текст\nimage: изображение\nicon: пиктограмма\n'Setting Map Locations': 'Настройки карты мест событий '\nDeselect: 'Отменить выбор'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.sh.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': 'izabrana marker oznaka'\n'add location to map': 'dodaj lokaciju na mapu'\n'Video source': 'Video izvor'\n'The point will be removed from all translations of the article.': 'Tačka će biti uklonjena iz svih prevoda teksta.'\n'Specify country (optional)': 'Preciziraj državu (opciono)'\n'Sorry, that place was not found. Check your spelling or search again.': 'Izvinite, to mesto nije pronađeno. Proverite da li ste ispravno napisali ili tražite ponovo.'\n'Show search results': 'Prikaži rezultate pretrage'\n'Search for place or coordinate': 'Traži mesto ili koordinatu'\n'Return to edit': 'Nazad na uređivanje'\n'Really delete this point?': 'Zaista brisati tačku?'\n'Name and describe this location': 'Imenuj i opiši lokaciju'\n'Map size': 'Veličina mape'\n'Location label': 'Oznaka lokacije'\n'Location description:': 'Opis lokacije:'\n'Label url': 'Url oznake'\n'Hide search results': 'Sakri rezultate pretrage'\nGeo-filtering: Geo-filterisanje\n'Fill in youtube ID or link, e.g.': 'Unesite Youtube Id ili vezu, na primer '\n'Fill in vimeo ID or link, e.g': 'Unesite Vimeo Id ili vezu, na primer '\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': 'Unesite video Id, vezu ili naziv fajla, za Youtube, Vimeo ili fleš video.'\n'Fill in location label': 'Popunite oznaku lokacije'\n'Fill in local swf flash file name or link, e.g.': 'Unesite ime ili vezu lokalnog fleš fajla, npr '\n'Fill in local flv flash file name or link, e.g.': 'Unesite ime ili vezu lokalnog .flv fajla, npr '\n'Fill in image link, like': 'Unesite link slike, kao '\n'Describe the location...': 'Opišite lokaciju...'\n'Delete location': 'Obrišite lokaciju'\nCoordinates: Koordinate\n'Change video display size': 'Promeni veličinu u kojoj se prikazuje video'\n'Change image display size': 'Promeni veličinu u kojoj se prikazuje slika'\n'Change icon of this location': 'Promeni ikonicu za ovu lokaciju'\n'Center map on location': 'Centriraj mapu na lokaciju'\n'Advanced editing': 'Napredno uređivanje'\n'Add an image to this location': 'Dodaj sliku ovoj lokaciji'\n'Add a video to this location': 'Dodaj video ovoj lokaciji'\n'Are you sure you want to quit without saving your changes?': 'Da li ste sigurni da želite da izađete bez čuvanja izmena?'\n'Map preview': 'Pregled mape'\n'Locations updated.': 'Lokacije izmenjene'\n'Setting the map name helps with map search': 'Postavljanje imena mape pomaže u pretrazi mapa'\nLongitude: 'Geografksa dužina'\nLatitude: 'Geografksa širina'\nCenter: Centar\n'Last Saved Map View': 'Poslednje snimljeni položaj'\n'List of locations updated': 'Lista lokacija izmenjena'\nwidth: širina\n'show initial map view': 'prikaži početni položaj'\n'problem at point processing, please send error report': 'problem sa obradom tačke, molimo pošaljite izveštaj o grešci'\n'plain text': 'običan tekst'\n'html content': 'html sadržaj'\nheight: visina\n'fill in map name': 'unesite naziv mape'\n'You do not have the right to remove maps from articles.': 'Nemate pravo da uklanjate mape iz teksta'\n'Video file': 'video fajl'\n'Video ID': 'Video ID'\n'The map has been removed from the article.': 'Ova mapa je uklonjena iz teksta'\n'Point no.': 'Tačka broj'\n'Point markers': Markeri\nNone: Nijedan\n'Map Search Example': 'Primer pretrage mapa'\n'Map Preview': 'Pregled mape'\n'Image URL': 'URL slike'\nvideo: video\ntext: tekst\nimage: slika\nicon: ikona\n'Setting Map Locations': 'Postavljanje lokacija'\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.sq.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: null\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.sr.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': 'Изабрана маркер ознака'\n'add location to map': 'додај локације на мапу'\n'Video source': 'Видео извор'\n'The point will be removed from all translations of the article.': 'Тачка ће бити уклоњена из свих превода текста.'\n'Specify country (optional)': 'Прецизирај државу (опционо)'\n'Sorry, that place was not found. Check your spelling or search again.': 'Такво место није пронађено. Проверите да ли сте исправно написали, или покушајте другу претрагу.'\n'Show search results': 'Прикажи резултате претраге'\n'Search for place or coordinate': 'Тражи место или координату'\n'Return to edit': 'Назад на уређивање'\n'Really delete this point?': 'Заиста брисати тачку?'\n'Name and describe this location': 'Именуј и опиши локацију.'\n'Map size': 'Величина мапе'\n'Location label': 'Ознака локације'\n'Location description:': 'Опис локације:'\n'Label url': 'Урл ознаке'\n'Hide search results': 'Сакри резултате претраге'\nGeo-filtering: 'Гео филтрација'\n'Fill in youtube ID or link, e.g.': 'Унесите Youtube Id или везу, на пример'\n'Fill in vimeo ID or link, e.g': 'Унесите Vimeo Id или везу, на пример'\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': 'Унесите видео Id, vвезу или назив фајла, за Youtube, Vimeo или флеш видео.'\n'Fill in location label': 'Попуните ознаку локације'\n'Fill in local swf flash file name or link, e.g.': 'Унесите име или везу локалног флеш фајла, нпр'\n'Fill in local flv flash file name or link, e.g.': 'Унесите име или везу локалног .flv фајла, нпр'\n'Fill in image link, like': 'Унесите линк слике, као'\n'Describe the location...': 'Опишите локацију...'\n'Delete location': 'Обришите локацију'\nCoordinates: Координате\n'Change video display size': 'Промени величину у којој се приказује видео'\n'Change image display size': 'Промени величину у којој се приказује слика'\n'Change icon of this location': 'Промени иконицу за ову локацију'\n'Center map on location': 'Центрирај мапу на локацију'\n'Advanced editing': 'Напредно уређивање'\n'Add an image to this location': 'Додај слику овој локацији'\n'Add a video to this location': 'додај видео овој локацији'\n'Are you sure you want to quit without saving your changes?': 'Да ли сте сигурни да желите да изађете без чувања измена?'\n'Map preview': 'Преглед мапе'\n'Locations updated.': 'Локације измењене'\n'Setting the map name helps with map search': 'Постављање имена мапе помаже у претрази мапа'\nLongitude: 'Географска дужина'\nLatitude: 'Географска ширина'\nCenter: Центар\n'Last Saved Map View': 'Последње снимљени положај'\n'List of locations updated': 'Листа локација измењена'\nwidth: ширина\n'show initial map view': 'прикажи почетни положај'\n'problem at point processing, please send error report': 'проблем са обрадом тачке, молимо пошаљите извештај о грешци'\n'plain text': 'обичан текст'\n'html content': 'html садржај'\nheight: висина\n'fill in map name': 'унесите назив мапе'\n'You do not have the right to remove maps from articles.': 'Немате право да уклањате мапе из текста'\n'Video file': 'видео фајл'\n'Video ID': 'Видео ИД'\n'The map has been removed from the article.': 'Ова мапа је уклоњена из текста'\n'Point no.': 'Тачка број'\n'Point markers': Маркери\nNone: Ниједан\n'Map Search Example': 'Примери претраге мапа'\n'Map Preview': 'Преглед мапе'\n'Image URL': 'УРЛ слике'\nvideo: видео\ntext: текст\nimage: слика\nicon: икона\n'Setting Map Locations': 'Постављање локација'\nDeselect: Поништите\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.sv.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: null\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.tr.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: null\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.uk.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': 'значок обраних маркерів'\n'add location to map': 'додати локацію на мапу'\n'Video source': 'Джерело відео'\n'The point will be removed from all translations of the article.': 'Місцезнаходження буде видалено з усіх перекладів статті.'\n'Specify country (optional)': 'Вкажіть країну (за бажанням)'\n'Sorry, that place was not found. Check your spelling or search again.': 'На жаль, це місце не було знайдено. Перевірте правопис або виконати пошук знову.'\n'Show search results': 'Показати результати пошуку'\n'Search for place or coordinate': 'Пошук за місцем або координатами'\n'Return to edit': 'Повернутись до редагування'\n'Really delete this point?': 'Дійсно видалити точку?'\n'Name and describe this location': 'Назва та опис локації'\n'Map size': 'Розмір мапи'\n'Location label': 'Етикетка локації'\n'Location description:': 'Опис локації:'\n'Label url': 'етикетка посилання'\n'Hide search results': 'Приховати результати пошуку'\nGeo-filtering: ГЕО-фільтрація\n'Fill in youtube ID or link, e.g.': 'Заповніть YouTube ID або посилання, наприклад,'\n'Fill in vimeo ID or link, e.g': 'Заповніть vimeo ID або посилання, наприклад,'\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': 'Введіть YouTube ID, Vimeo ID, посилання або файл, або флеш-відео'\n'Fill in location label': 'Заповніть етикетку локації'\n'Fill in local swf flash file name or link, e.g.': 'Вкажіть Flash файл (SWF) або посилання, наприклад,'\n'Fill in local flv flash file name or link, e.g.': 'Вкажіть Flash video файл (FLV) або посилання, наприклад,'\n'Fill in image link, like': 'Вкажіть посилання на зображення'\n'Describe the location...': 'Опишіть локацію'\n'Delete location': 'Видалити локацію'\nCoordinates: Координати\n'Change video display size': 'Змінити розмір відеоплеера.'\n'Change image display size': 'Змінити розмір зображення.'\n'Change icon of this location': 'Змінити значок локації'\n'Center map on location': 'Центрувати мапу локації'\n'Advanced editing': 'Розширене редагування'\n'Add an image to this location': 'Додати зображення до цієї локації'\n'Add a video to this location': 'Додат відео до цієї локації'\n'Are you sure you want to quit without saving your changes?': 'Ви впевнені що ви хочете вийти без збереження змін?'\n'Map preview': 'Перегляд мапи'\n'Locations updated.': 'Локація оновлена.'\n'Setting the map name helps with map search': 'Встановлення назви мапи полегшує пошук по ній'\nLongitude: Довгота\nLatitude: Широта\nCenter: Центр\n'Last Saved Map View': 'Останній збережений вид мапи'\n'List of locations updated': 'Список локації оновлено.'\nwidth: ширина\n'show initial map view': 'показати первісний вид мапи'\n'problem at point processing, please send error report': 'проблеми з обробкою точки, будь ласка відправте рапорт про помилку'\n'plain text': 'Звичайний текст'\n'html content': 'HTML контент'\nheight: висота\n'fill in map name': 'Вкажіть назву мапи'\n'You do not have the right to remove maps from articles.': 'Ви не маєте прав видаляти мапи з статей.'\n'Video file': 'Відео файл'\n'Video ID': 'Відео ID'\n'The map has been removed from the article.': 'Мапа була видалена зі статті.'\n'Point no.': 'Номер точки'\n'Point markers': 'Маркер точки'\nNone: 'Ні один'\n'Map Search Example': 'Приклад пошуку по мапі'\n'Map Preview': 'Попередній перегляд мапи'\n'Image URL': 'Посилання на зображення'\nvideo: відео\ntext: текст\nimage: зображення\nicon: значок\n'Setting Map Locations': 'Налаштування локації на мапі'\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.vi.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: null\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.zh.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: 中心\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: 没有\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/geolocation.zh_TW.yml",
    "content": "'Based on GeoNames.org and OpenStreetMap.org data': null\n'selected marker icon': null\n'add location to map': null\n'Video source': null\n'The point will be removed from all translations of the article.': null\n'Specify country (optional)': null\n'Sorry, that place was not found. Check your spelling or search again.': null\n'Show search results': null\n'Search for place or coordinate': null\n'Return to edit': null\n'Really delete this point?': null\n'Name and describe this location': null\n'Map size': null\n'Location label': null\n'Location description:': null\n'Label url': null\n'Hide search results': null\nGeo-filtering: null\n'Fill in youtube ID or link, e.g.': null\n'Fill in vimeo ID or link, e.g': null\n'Fill in video ID, link or file name, for YouTube, Vimeo, or flash video.': null\n'Fill in location label': null\n'Fill in local swf flash file name or link, e.g.': null\n'Fill in local flv flash file name or link, e.g.': null\n'Fill in image link, like': null\n'Describe the location...': null\n'Delete location': null\nCoordinates: null\n'Change video display size': null\n'Change image display size': null\n'Change icon of this location': null\n'Center map on location': null\n'Advanced editing': null\n'Add an image to this location': null\n'Add a video to this location': null\n'Are you sure you want to quit without saving your changes?': null\n'Map preview': null\n'Locations updated.': null\n'Setting the map name helps with map search': null\nLongitude: null\nLatitude: null\nCenter: null\n'Last Saved Map View': null\n'List of locations updated': null\nwidth: null\n'show initial map view': null\n'problem at point processing, please send error report': null\n'plain text': null\n'html content': null\nheight: null\n'fill in map name': null\n'You do not have the right to remove maps from articles.': null\n'Video file': null\n'Video ID': null\n'The map has been removed from the article.': null\n'Point no.': null\n'Point markers': null\nNone: null\n'Map Search Example': null\n'Map Preview': null\n'Image URL': null\nvideo: null\ntext: null\nimage: null\nicon: null\n'Setting Map Locations': null\nDeselect: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.ar.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: إصدار\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: المساعدة\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.az.yml",
    "content": "'or suggest improvements in our bug tracker at': 'və ya bizim xəta izləyicimizə inkişaf etdirə biləcəyimiz sahələr üçün təklif ver'\n'and help us support quality, independent journalism.': 'və bizə keyfiyyətli, azad jurnalistikanı dəstəkləməkdə yardımçı ol.'\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': 'Newscoop dəstək səhifəsinə xoş gəldin. Burada yenisənsə, ya da hansısa xüsusi sualın varsa, ən yaxşısı Newscoop kitabçalarına bax.'\nVersion: Versiya\n'To upgrade Newscoop please visit our website': 'Newscoop-u təkmilləşdirmək üçün bizim vebsaytımıza daxil ol'\n'To support us in other ways, visit our Community page': 'Bizi digər istiqamətlərdə dəstəkləmək üçün İctimaiyyət səhifəmizə keç'\n'Talk to us today': 'Bizimlə əlaqə saxla'\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': 'Sourcefabric həmçinin müxtəlif dəstəkləmə seçimləri təqdim edir ki, bunlar quraşdırma, hostinq və texniki dəstəkdən ibarətdir.'\n'Release date': 'Buraxılış tarixi'\nHelp: Yardım\n'Alternatively, you can ask a question in our forums at': 'Alternatıv olaraq sən forumlarımıza sualını daxil edə bilərsən'\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.be.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: Версія\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: Дапамога\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.bn.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: null\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.cs.yml",
    "content": "'or suggest improvements in our bug tracker at': 'nebo navrhněte zlepšení ve vašem bug přehledu v'\n'and help us support quality, independent journalism.': 'a pomozte nám popořit kvalitu, nezávislost žurnalismu.'\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': 'Vítejte na Help stránce Nescoopu. Zda-li začínáte nebo máte specifické otázký nejlepším místem kam se podívat jsou Newscoop manuály'\nVersion: Verze\n'To upgrade Newscoop please visit our website': 'Pro aktualizaci Newscoop prosíme navštivte naši webovou stránku'\n'To support us in other ways, visit our Community page': 'Chcete-li nás podpořit jinými způsoby, navštivte naši komunitní stránku'\n'Talk to us today': 'Mluvte s námi dnes'\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': 'Sourcefabric nabízí další možnosti podpory, které zahrnují například instalaci, hosting a technickou podporu. '\n'Release date': 'Datum zveřejnění'\nHelp: Nápověda\n'Alternatively, you can ask a question in our forums at': 'Eventuálně můžete položit dotaz na našich fórech'\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.da.yml",
    "content": "'or suggest improvements in our bug tracker at': 'eller foreslå forbedringer på vores bug tracker'\n'and help us support quality, independent journalism.': 'og hjælp os med at støtte uafhængig kvalitets journalistik.'\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': 'Velkommen til Newscoops hjælpeside. Det bedste sted at få svar på dine spørgsmål er i Newscoop manualerne'\nVersion: Version\n'To upgrade Newscoop please visit our website': 'Besøg vores hjemmeside for at opgradere Newscoop'\n'To support us in other ways, visit our Community page': 'Besøg vores brugerside for at støtte os på andre måder'\n'Talk to us today': 'Tal med os i dag'\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': 'Sourcefabric tilbyder hjælp med f.eks. installation, hosting og teknisk vejledning.'\n'Release date': Udgivelsesdato\nHelp: Hjælp\n'Alternatively, you can ask a question in our forums at': 'Alternativt kan du spørge på vores forum'\nDocumentation: Dokumentation\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.de.yml",
    "content": "'or suggest improvements in our bug tracker at': 'oder Verbesserungen in unserem Fehlermelder empfehlen bei'\n'and help us support quality, independent journalism.': 'und uns helfen, unabhängigen Qualitätsjournalismus zu unterstützen.'\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': 'Willkommen auf der Newscoop Hilfe-Seite. Der beste Weg eine schnelle Antwort auf Ihre Fragen zu finden, ist der Blick in unsere Newscoop Manuale.'\nVersion: Version\n'To upgrade Newscoop please visit our website': 'Wenn Sie Newscoop upgraden wollen, besuchen Sie bitte unsere Webseite'\n'To support us in other ways, visit our Community page': 'Wenn Sie uns anderweitig unterstützen wollen, besuchen Sie bitte unsere Community-Seite'\n'Talk to us today': 'Sprechen Sie heute mit uns'\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': 'Sourcefabric bietet eine Reihe von Support-Lösungen an, u.a. bei Installation, Hosting und technischem Support.'\n'Release date': Erscheinungsdatum\nHelp: Hilfe\n'Alternatively, you can ask a question in our forums at': 'Alternativ können Sie auch Fragen in unserem Forum stellen unter'\nDocumentation: Dokumentation\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.de_AT.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: Version\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: Hilfe\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.el.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: Εκδοχή\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: Βοήθεια\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.en.yml",
    "content": "'or suggest improvements in our bug tracker at': 'or suggest improvements in our bug tracker at'\n'and help us support quality, independent journalism.': 'and help us support quality, independent journalism.'\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': 'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals'\nVersion: Version\n'To upgrade Newscoop please visit our website': 'To upgrade Newscoop please visit our website'\n'To support us in other ways, visit our Community page': 'To support us in other ways, visit our Community page'\n'Talk to us today': 'Talk to us today'\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': 'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.'\n'Release date': 'Release date'\nHelp: Help\n'Alternatively, you can ask a question in our forums at': 'Alternatively, you can ask a question in our forums at'\n'Documentation': 'Documentation'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.en_GB.yml",
    "content": "'or suggest improvements in our bug tracker at': 'or suggest improvements in our bug tracker at'\n'and help us support quality, independent journalism.': 'and help us support quality, independent journalism.'\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': 'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals'\nVersion: Version\n'To upgrade Newscoop please visit our website': 'To upgrade Newscoop please visit our website'\n'To support us in other ways, visit our Community page': 'To support us in other ways, visit our Community page'\n'Talk to us today': 'Talk to us today'\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': 'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.'\n'Release date': 'Release date'\nHelp: Help\n'Alternatively, you can ask a question in our forums at': 'Alternatively, you can ask a question in our forums at'\nDocumentation: Documentation\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.es.yml",
    "content": "'or suggest improvements in our bug tracker at': 'o sugiera mejoras en nuestro sitio de reporte de errores, en '\n'and help us support quality, independent journalism.': 'y ayúdenos a apoyar al periodismo independiente y de calidad.'\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': 'Bienvenido a la página de ayuda de Newscoop. Tanto si está apenas empezando o si tiene una pregunta específica, el mejor lugar para buscar es en uno de los manuales de Newscoop'\nVersion: Versión\n'To upgrade Newscoop please visit our website': 'Para actualizar Newscoop, por favor visite nuestra página web'\n'To support us in other ways, visit our Community page': 'Para ayudarnos de otras maneras, visite nuestra página comunitaria'\n'Talk to us today': 'Hable con nosotros hoy mismo'\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': 'Sourcefabric también ofrece una gama de opciones de soporte, que pueden incluir instalación, hosting y soporte técnico.'\n'Release date': 'Fecha de liberación'\nHelp: Ayuda\n'Alternatively, you can ask a question in our forums at': 'Alternativamente, puede hacer una pregunta en nuestros foros, en '\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.es_AR.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: Versión\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: null\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.fa.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: null\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.fa_AF.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: null\n'Alternatively, you can ask a question in our forums at': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.fr.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: Aide\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.he.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: עזרה\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.hr.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: Pomoć\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.hu.yml",
    "content": "'or suggest improvements in our bug tracker at': 'vagy javításokat javasolhatsz a hibakövetőnkben:'\n'and help us support quality, independent journalism.': 'és segíts nekünk a minőség, a független újságírás támogatásában.'\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': 'Üdvözlünk a Newscoop súgólapon. Ha épp most ismerkedsz vele, vagy konkrét kérdésed van, a legjobb hely utánanézni az egyik Newscoop kézkönyvben.'\nVersion: Verzió\n'To upgrade Newscoop please visit our website': 'Kérjük, a Newscoop frissítéséhez látogass el a weblapunkra:'\n'To support us in other ways, visit our Community page': 'Más módon való támogatásunk céljából látogass el közösségi oldalunkra'\n'Talk to us today': 'Beszélj velünk ma'\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': 'A Sourcefabric ugyancsak számos támogatási lehetőséget kínál, ami magában foglalhatja a telepítést, a tárhelyet és a terméktámogatást.'\n'Release date': 'Kiadás dátuma'\nHelp: Súgó\n'Alternatively, you can ask a question in our forums at': 'Másik lehetőségként kérdésedet felteheted a fórumunkban:'\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.hy.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: null\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: Documentation\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.hy_AM.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: null\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.id.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: null\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.it.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: Versione\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: Aiuto\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.ka.yml",
    "content": "'or suggest improvements in our bug tracker at': 'ან შემოგვთავაზეთ გაუმჯობესებები ჩვენს ბაგ ტრეკერში'\n'and help us support quality, independent journalism.': 'და დაგვეხმარეთ ხარისხის, დამოუკიდებელი ჟურნალისტიკის უზრუნველყოფაში.'\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': 'კეთილი იყოს თქვენი მობრძანება Newscoop-ის დახმარების გვერდზე. მიუხედავად იმისა, ხართ თქვენ დამწყები თუ გაქვთ სპეციფიური შეკითხვა, პასუხის საძიებელი საუკეთესო საშუალება Newscoop-ის ერთ-ერთი სახელმძღვანელოა.'\nVersion: ვერსია\n'To upgrade Newscoop please visit our website': 'Newscoop-ის განახლებისთვის გთხოვთ ეწვიოთ ჩვენს ვებგვერდს'\n'To support us in other ways, visit our Community page': 'ჩვენი სხვაგვარად მხარდაჭერისთვის, ეწვიეთ ჩვენს საზოგადოებრივ გვერდს'\n'Talk to us today': 'გაგვესაუბრეთ დღეს'\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': 'Sourcefabric ასევე გთავაზობთ რიგ მხარდაჭერის საშუალებებს, რაც შეიძლება მოიცავდეს ინსტალაციას, ჰოსტინგს და ტექნიკურ უზრუნველყოფას.'\n'Release date': 'გამოშვების თარიღი'\nHelp: დახმარება\n'Alternatively, you can ask a question in our forums at': 'ალტერნატიულად, თქვენი შეგიძლიათ დასვათ შეკითხვა ჩვენს ფორუმებში'\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.ko.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: 도움말\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.ku.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: null\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.lv.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: null\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.mr.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: null\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.nb_NO.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: null\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.nl.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: Help\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.pa.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: null\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: Documentation\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.pl.yml",
    "content": "'or suggest improvements in our bug tracker at': 'lub zaproponuj ulepszenie w naszym systemie śledzenia błędów dostępnym na'\n'and help us support quality, independent journalism.': 'i pomóż nam wspierać jakość niezależnego dziennikarstwa.'\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': 'Witaj na stronie pomocy Newscoopa. W przypadku gdy dopiero zaczynasz lub masz już jakieś szczegółowe pytania - najlepszym miejscem do sprawdzenia są nasze poradniki'\nVersion: Wersja\n'To upgrade Newscoop please visit our website': 'Aby zaktualizować Newscoopa do najnowszej wersji, odwiedź naszą stronę www'\n'To support us in other ways, visit our Community page': 'Aby wesprzeć nas w inny sposób - odwiedź nasze strony społeczności'\n'Talk to us today': 'Odezwij się do nas'\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': 'Sourcefabric oferuje również szeroki zakres opcji pomocy, które obejmują instalacje, hosting lub wsparcie techniczne.'\n'Release date': 'Data wydania'\nHelp: Pomoc\n'Alternatively, you can ask a question in our forums at': 'Zawsze możesz też zadać pytanie na naszym forum dostępnym tutaj: '\nDocumentation: Dokumentacja\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.ps.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: null\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.pt.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: Ajuda\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.pt_BR.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: Versão\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: Ajuda\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.ro.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: Versiune\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: Ajutor\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.ru.yml",
    "content": "'or suggest improvements in our bug tracker at': 'или внесите конструктивные предложения в нашей системе отслеживания ошибок на'\n'and help us support quality, independent journalism.': 'и помогите нам поддерживать качественную независимую журналистику.'\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': 'Приветствуем на справочной странице Newscoop. Новичок ли вы или имеете конкретный вопрос, лучший ответ вы получите в руководствах пользователя Newscoop '\nVersion: Версия\n'To upgrade Newscoop please visit our website': 'Для обновления Newscoop перейдите на наш вебсайт'\n'To support us in other ways, visit our Community page': 'Чтобы помочь нам другими возможными способами, перейдите на страницу нашего Сообщества'\n'Talk to us today': 'Поговорите с нами прямо сегодня'\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': 'Sourcefabric предлагает ряд услуг, включающих установку, хостинг и техподдержку. '\n'Release date': 'Дата выпуска'\nHelp: Помощь\n'Alternatively, you can ask a question in our forums at': 'Как вариант, вы можете задать во прос на наших форумах '\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.sh.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: Verzija\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: Pomoć\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.sq.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: null\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.sr.yml",
    "content": "'or suggest improvements in our bug tracker at': 'или нам предложи напредније решење овде'\n'and help us support quality, independent journalism.': 'и подржи нас у настојању да помогнемо квалитетно и независно новинарство.'\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': 'Добро дошли на Newscoop страну за подршку. Било да тек почињете, или имате неко конкретно питање у нашим приручницима можете пронаћи помоћ и одговоре на многобројна питања.'\nVersion: Верзија\n'To upgrade Newscoop please visit our website': 'Да бисте преузели најновију верзију Newscoop-а, молимо вас да посетите наш сајт'\n'To support us in other ways, visit our Community page': 'Уколико желите да нас на било који начин подржите, молимо посетите нашу Community страну'\n'Talk to us today': 'Јавите нам се још данас'\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': 'Sourcefabric вам нуди сваку врсту подршке, било да је реч о инсталацији, хостингу или техничкој подршци.'\n'Release date': 'Датум реализације'\nHelp: Помоћ\n'Alternatively, you can ask a question in our forums at': 'Такође нас можете контактирати и поставити питања у нашем форуму овде'\nDocumentation: Документација\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.sv.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: Hjälp\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.tr.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: null\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.uk.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: Версія\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: Допомога\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.vi.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: null\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.zh.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: 版本\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: null\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/help.zh_TW.yml",
    "content": "'or suggest improvements in our bug tracker at': null\n'and help us support quality, independent journalism.': null\n'Welcome to the Newscoop help page. Whether youre just getting started or you have a specific question, the best place to look is in one of the Newscoop manuals': null\nVersion: null\n'To upgrade Newscoop please visit our website': null\n'To support us in other ways, visit our Community page': null\n'Talk to us today': null\n'Sourcefabric also offers a range of support options, which can include installation, hosting and technical support.': null\n'Release date': null\nHelp: null\n'Alternatively, you can ask a question in our forums at': null\nDocumentation: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.ar.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.az.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.be.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.bn.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.cs.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.da.yml",
    "content": "dynatable:\n    page: Side\n    perPageText: 'Vis:'\n    pageText: 'Sider:'\n    recordCountPageBoundTemplate: '{pageLowerBound} til {pageUpperBound} af'\n    recordCountPageUnboundedTemplate: '{recordsShown} af'\n    recordCountFilteredTemplate: ' ({recordsTotal} i alt)'\n    recordCountText: Viser\n    processingText: Arbejder...\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.de.yml",
    "content": "dynatable:\n    page: Seite\n    perPageText: 'Zeige:'\n    pageText: 'Seiten:'\n    recordCountPageBoundTemplate: '{pageLowerBound} zu {pageUpperBound} von'\n    recordCountPageUnboundedTemplate: '{recordsShown} von'\n    recordCountFilteredTemplate: '(aus insgesamt {recordsTotal} Einträgen gefiltert)'\n    recordCountText: 'Zeige '\n    processingText: 'In Berarbeitung...'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.de_AT.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.el.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.en.yml",
    "content": "dynatable:\n    page: \"Page\"\n    perPageText: \"Show: \"\n    pageText: \"Pages: \"\n    recordCountPageBoundTemplate: \"{pageLowerBound} to {pageUpperBound} of\"\n    recordCountPageUnboundedTemplate: \"{recordsShown} of\"\n    recordCountFilteredTemplate: \" (filtered from {recordsTotal} total records)\"\n    recordCountText: \"Showing \"\n    processingText: \"Processing...\""
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.en_GB.yml",
    "content": "dynatable:\n    page: Page\n    perPageText: 'Show: '\n    pageText: 'Pages: '\n    recordCountPageBoundTemplate: '{pageLowerBound} to {pageUpperBound} of'\n    recordCountPageUnboundedTemplate: '{recordsShown} of'\n    recordCountFilteredTemplate: ' (filtered from {recordsTotal} total records)'\n    recordCountText: 'Showing '\n    processingText: Processing...\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.es.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.es_AR.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.fa.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.fa_AF.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.fr.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.he.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.hr.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.hu.yml",
    "content": "dynatable:\n    page: Oldal\n    perPageText: 'Megjelenítés:'\n    pageText: 'Oldalak:'\n    recordCountPageBoundTemplate: '{pageLowerBound} - {pageUpperBound} /'\n    recordCountPageUnboundedTemplate: '{recordsShown} /'\n    recordCountFilteredTemplate: '(a/z összes {recordsTotal} rekordból szűrve)'\n    recordCountText: Megjelenítve\n    processingText: Feldolgozás...\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.hy.yml",
    "content": "dynatable:\n    page: Page\n    perPageText: 'Show: '\n    pageText: 'Pages: '\n    recordCountPageBoundTemplate: '{pageLowerBound} to {pageUpperBound} of'\n    recordCountPageUnboundedTemplate: '{recordsShown} of'\n    recordCountFilteredTemplate: ' (filtered from {recordsTotal} total records)'\n    recordCountText: 'Showing '\n    processingText: Processing...\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.hy_AM.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.id.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.it.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.ka.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.ko.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.ku.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.lv.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.mr.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.nb_NO.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.nl.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.pa.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.pl.yml",
    "content": "dynatable:\n    page: Strona\n    perPageText: 'Pokazuje: '\n    pageText: 'Strony: '\n    recordCountPageBoundTemplate: '{pageLowerBound} do {pageUpperBound} z'\n    recordCountPageUnboundedTemplate: '{recordsShown} z'\n    recordCountFilteredTemplate: ' (wyszukane z {recordsTotal} wszystkich wyników)'\n    recordCountText: 'Wyświetla '\n    processingText: Przetważanie...\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.ps.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.pt.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.pt_BR.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.ro.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.ru.yml",
    "content": "dynatable:\n    page: страница\n    perPageText: 'Показать: '\n    pageText: 'Страницы: '\n    recordCountPageBoundTemplate: '{pageLowerBound} to {pageUpperBound} of'\n    recordCountPageUnboundedTemplate: '{recordsShown} of'\n    recordCountFilteredTemplate: ' (filtered from {recordsTotal} total records)'\n    recordCountText: Показано\n    processingText: Обработка...\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.sh.yml",
    "content": "dynatable:\n    page: Strana\n    perPageText: null\n    pageText: 'Strane:'\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: '(izdvojeno među ukupno {recordsTotal}  unosa)'\n    recordCountText: null\n    processingText: Obrađujem...\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.sq.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.sr.yml",
    "content": "dynatable:\n    page: Страна\n    perPageText: 'Прикажи:'\n    pageText: 'Стране:'\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: Приказивање\n    processingText: Обрађујем...\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.sv.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.tr.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.uk.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.vi.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.zh.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/helpers.zh_TW.yml",
    "content": "dynatable:\n    page: null\n    perPageText: null\n    pageText: null\n    recordCountPageBoundTemplate: null\n    recordCountPageUnboundedTemplate: null\n    recordCountFilteredTemplate: null\n    recordCountText: null\n    processingText: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.ar.yml",
    "content": "'Rename user': 'أعد تسمية المستخدم'\nCampsite: null\n'Image Rendering': 'إعادة هيكلة الصور'\n'Featured Article Lists': 'فهارس المقالات المميزة'\n'You have tried to upload an invalid backup file.': 'حاولت رفع ملف نسخة احتياطية غير صالح.'\n'You do not have the right to manage backups.': 'ليس لديك الحق في إدارة نسخ احتياطية.'\n'Make a new backup': 'أنش نسخة احتياطية جديدة'\n'Are you sure you want to make a new backup?': 'هل أنت متأكد أنك تريد إنشاء نسخة احتياطية جديدة؟'\n'Security token expired. Please resubmit the form.': 'انتهى الرمز الامني. يرجى إعادة إرسال النموذج.'\nTemplates: نماذج\n'Create slideshow': 'أنش عرض الشرائح'\nCreate: أنش\nAttach/Detach: 'أرفق / إفصل'\n'Are you sure you want to delete slideshow?': 'هل انت متأكد انك تريد حذف عرض الشرائح؟'\nSupport: الدعم\n'Pending articles': 'مقالات معلقة'\n'Manage Users': 'إدارة المستخدمين'\n'Manage User Types': 'إدارة أنواع مستخدم'\n'Manage User Points System': 'إدارة نظام النقاط للمستخدمين'\nLast: الأخير\nFirst: الأول\nFeedback: 'التغذية المرتدة'\n'Edit your password': 'عدل كلمة السر'\n'Edit user': 'عدل المستخدم'\n'Edit permissions': 'عدل الأذونات'\nDetail: تفصيل\n'Create new user': 'أنش مستخدم جديد'\n'Create new account': 'أنش حساب جديد'\n'Add feed': 'أضف تلقيم'\n'Upload of file $1 was not successful.': 'كان تحميل ملف $1 غير ناجح'\n'The file $1 could not be moved. Check you have enough of disk space.': 'لا يمكن ان ينتقل ملف $1. تحقق ان يكون لديك ما يكفي من مساحة القرص.'\nMiB: مبيبايت\n'Download was not successful. Check please that the server is not out of disk space.': 'كان التحميل غير ناجح. يرجى التحقق أن الخادم لا يفتقد مساحة القرص.'\n'try again later': 'حاول مرة أخرى في وقت لاحق'\nat: في\n'You must at least upload one file.': 'يجب تحميل ملف واحد على الأقل.'\n'Warning: the existing data and themes will be deleted!': 'تحذير: سيتم حذف البيانات النُسق الموجودة!'\n'Value is required and cant be empty': 'الحقل مطلوب ولا يمكن أن يكون فارغ'\nUpload: إرفع\n'Update comment': 'حدّث التعليق'\n'Time created': 'تم إنشاء الوقت'\nThemes: نُسق\n'Stop current upload': 'قف التحميل الحالي'\n'Start uploading queue': 'إبدأ قائمة الانتظار للرفع'\n'Start upload': 'إبدأ التحميل'\nSettings: الإعدادات\n'Select files': 'حدّد ملفات'\nReply: رد\n'New comment added': 'تم إضافة تعليق جديد'\n'Manage Authors': 'إدارة مؤلفين'\nLoading..: 'قيد التحميل ...'\nFilename: 'اسم الملف'\n'Edit user type': 'عدل نوع مستخدم'\n'Edit language': 'عدل اللغة'\n'Drag files here.': 'اسحب الملفات هنا.'\n'Connection interrupted': 'قد توقّف الاتصال'\nBan: تحريم\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': 'أضف ملفات إلى قائمة الانتظار للرفع وإضغط على الزر إبدء.'\n'Add files': 'أضف ملفات'\n'%value% is more than %max% characters long': '%value% هو أكثر من %max% أحرف'\n'%value% is less than %min% characters long': '%value% هو أقل من %min% أحرف'\n'User name': 'اسم المستخدم'\nNewscoop: نيوسكوب\n'Your password has been reset.': 'تم تعيين كلمة السر الخاصة بك.'\n'Proceed to login.': 'قدم إلى الدخول'\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': 'إذهب إلى الدخول'\n'Back to login.': 'عد إلى الدخول'\n'Back to login': 'عد إلى الدخول'\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': 'انتهت الدورة.'\nProcessing...: 'قيد المعالجة...'\nPlease: 'من فضلك'\n'Go to dashboard': 'إذهب إلى اللوحة الرئيسية'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': 'متصفحك لا يدعم الجافا أو (على الأرجح) قمت بتعطيل جافا سكريبت. يرجى إصلاح هذا لتكون قادر على استخدام Newscoop.'\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': ' قام نيوسكوب بترقية التدابير الأمنية. من أجل ترقية حسابك لاستخدام هذه الزيادة في الأمن، يجب إدخال كلمة السر مرة أخرى ـ'\n'Newscoop cache was cleaned up': 'تم تنظيف الذاكرة الخبيئة لـنيوسكوب'\nDashboard: 'اللوحة الرئيسية '\n'Your changes will be saved after login.': 'سيتم حفظ التغييرات التي قمت بها بعد تسجيل الدخول.'\n'Upload backup file': 'إرفع ملف نسخة احتياطية'\n'The file $1 has been uploaded successfully.': 'تم رفع ملف $1 بنجاح.'\n'Media Archive': 'أرشيف إعلامي'\nWidgets: 'تطبيقات مصغرة'\n'Widget info': 'معلومات حول التطبيقات المصغرة'\n'Widget added to dashboard.': 'تم إضافة التطبيق الى اللوحة الرئيسية.'\n'Remove widget': 'أزل التطبيق المصغر'\n'Please login to continue.': 'يرجى الدخول للمواصلة'\n'Add to dashboard': 'أضف إلى اللوحة الرئيسية'\n'Add more widgets': 'أضف المزيد من التطبيقات المصغرة'\nlogin: الدخول\n'This link is not valid.': 'هذا الرابط غير صالح.'\n'Recover password': 'إستعد كلمة السر'\n'Please enter your email.': 'يرجى ادخال بريدك الإلكتروني.'\n'Password recovery is disabled.': 'تم تعطيل استعادة كلمة السر.'\n'Password recovery': 'استعادة كلمة السر'\n'Password Recovery': 'استعادة كلمة السر'\n'No user is registered with this email.': 'لم يسجّل أي مستخدم بهذا البريد الإلكتروني.'\n'Forgot your password?': 'نسيت كلمة السر؟'\n'Email: incorrect format.': 'بريد إلكتروني: تنسيق غير صحيح.'\nEmail: 'بريد إلكتروني'\n'Bad input parameters.': 'متغيرات إدخال سيئة.'\n'There was an error trying to delete the file $1.': 'حدث خطأ أثناء محاولة حذف الملف $1.'\n'The file $1 was deleted successfully.': 'تم حذف الملف $1 بنجاح.'\nSize: الحجم\n'Restore file': 'إستعد الملف'\nRestore: إستعد\nMb: ميغابايت\n'Free disk space': 'مساحة القرص المتوفرة'\n'Download file': 'حمل الملف'\nDownload: حمل\n'Delete file': 'حذف الملف'\n'Backup list is empty.': 'القائمة الاحتياطية فارغة.'\n'Are you sure you want to restore the file $1?': 'هل أنت متأكد أنك تريد استعادة الملف $1؟'\n'Are you sure you want to delete the file $1?': 'هل أنت متأكد أنك تريد حذف الملف $1؟'\n'Import XML': 'استيراد XML'\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': 'يجب أن يكون لديك الأذونات لإضافة وتغيير الأعداد والمقالات من أجل تعيين المؤلف لجميع المقالات.'\n'Select the field from which to generate the author': 'حدد الخانة التي هي لتوليد المؤلف'\n'Invalid or empty field $1. You must select a valid dynamic field.': 'خانة غير صالحة أم غير فارغة 1$. يجب تحديد خانة دينامية صالحة.'\n'Unable to create author $1 for article no. $2 ($3) of type $4.': 'غير قادر على إنشاء المؤلف $1 للمقالة رقم $2 ($3) من نوع $4.'\n'There were errors setting the author for articles of type $1 from the field $2.': 'حدثت أخطاء أثناء تعيين الكاتب لمقالات من نوع $1 من حقل $2.'\n'The author was set successfuly for articles of type $1 from the field $2.': 'تم تعيين الكاتب بنجاح لمقالات من نوع $1 من حقل $2.'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'تم تأمين المقال من $1 ($2) $3 دقائق مضت.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'تم تأمين المقال من $1 ($2) $3 ساعة(-ات) و $4 دقائق مضت.'\n'Error setting the author $1 for article no. $2 ($3) of type $4.': 'حدث خطأ أثناء تحديد المؤلف $1 للمقالة رقم $2 ($3) من نوع $4.'\n'Clear system cache': 'إنقشع الذاكرة الخبيئة للنظام'\n'The system was unable to upload the file $1. ': 'كان النظام غير قادر على رفع الملف $1.'\n'Please check the file you are trying to upload, it might be corrupted.': 'يرجى التحقق الملف الذي تحاول ترفعه، فقد يكون تالف.'\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': 'يتم تخزين هذا الملف على القرص باسم $1.'\n'The system is unable to write to the directory $1.': 'النظام غير قادر على الكتابة على الدليل باسم $1.'\n'The system was unable to read the file $1.': 'كان النظام غير قادر على قراءة الملف $1.'\n'The system was unable to delete the directory $1.': 'كان النظام غير قادر على حذف الدليل $1.'\n'Please check if the user $1 has permission to read this file.': 'يرجى التحقق إذا كان المستخدم $1 لديه الإذن للقراءة هذا الملف'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'يرجى التحقق إذا كان الدليل فارغا وإذا كان المستخدم $1 لديه الإذن للكتابة على الدليل $2.'\n'The system was unable to write to the file $1.': 'كان النظام غير قادر على الكتابة على الملف $1.'\n'The system was unable to delete the file $1.': 'كان النظام غير قادر على حذف ملف$1.'\n'The system was unable to create the file $1.': 'كان النظام غير قادر على إنشاء ملف $ 1.'\n'The system was unable to create the directory $1.': 'كان النظام غير قادر على إنشاء دليل $1.'\n'Please check if the user $1 has permission to write to this file.': 'يرجى التحقق إذا كان المستخدم $1 لديه الاذن للكتابة على هذا الملف.'\n'Please check if the user $1 has permission to write to the directory $2.': 'يرجى التحقق إذا كان المستخدم $1 لديه الإذن للكتابة على الدليل $2.'\n'Type the code shown above:': 'اكتب الكود الظاهر أعلاه:'\n'Please enter your user name.': 'يرجى ادخال اسم المستخدم الخاص بك.'\n'Please enter your password.': 'يرجى ادخال كلمة السر الخاصة بك.'\n'Please enter the code shown in the image.': 'يرجى إدخال الكود الظاهر في الصورة.'\n'CAPTCHA code is not valid.  Please try again.': 'رمز لكلمة التحقق غير صالح. يرجى المحاولة مرة أخرى.'\n'Signed in: $1': 'تم تسجيل الدخول بحساب: $1'\nHelp: المساعدة\n'Please enter your user name and password': 'يرجى إدخال اسم المستخدم وكلمة السر'\n'You do not have the right to access this page.': 'ليس لديك الحق في الوصول الى هذه الصفحة'\n'Login failed': 'فشل تسجيل الدخول'\n'Please make sure that you typed the correct user name and password.': 'يرجى التحقق من إدخال اسم المستخدم وكلمة السر الصحيحين'\n'If your problem persists please contact the site administrator $1': 'إذا استمررت بمواجه المشاكل, إتصل بمدير الموقع $1'\nBackup/Restore: 'إنسخ احتياطيا/إستعد'\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.az.yml",
    "content": "'Rename user': 'İstifadəçi adını dəyiş'\nCampsite: Campsite\n'Image Rendering': 'Şəklin Çevrilməsi'\n'Featured Article Lists': 'Seçilmiş Məqalə Siyahıları'\n'You have tried to upload an invalid backup file.': 'Sən səhv ehtiyat faylı yükləməyə cəhd etdin.'\n'You do not have the right to manage backups.': 'Ehtiyatları idarə etməyə ixtiyarın yoxdur.'\n'Make a new backup': 'Yeni yedəkləmə'\n'Are you sure you want to make a new backup?': 'Yeni ehtiyat yaratmaq istədiyinə əminsən?'\n'Security token expired. Please resubmit the form.': 'Təhlükəsizlik nişanının vaxtı bitib. Lütfən, formanı daxil et.'\nTemplates: Üzlük\n'Create slideshow': 'Slayd-şou yarat'\nCreate: Yarat\nAttach/Detach: Qoş/Ayır\n'Are you sure you want to delete slideshow?': 'Slaydşounu silmək istədyinizdən əminsiniz?'\nSupport: Yardım\n'Pending articles': 'Gözləmədəki məqalələr'\n'Manage Users': 'İstifadəçilərin İdarəetməsi'\n'Manage User Types': 'İstifadəçi növlərini dəyiş'\n'Manage User Points System': 'İstifadəçilərin Xal sistemini dəyiş'\nLast: Son\nFirst: İlk\nFeedback: Şərh\n'Edit your password': 'Parolunu dəyiş'\n'Edit user': 'İstifadəçini redaktə et'\n'Edit permissions': 'İcazələri dəyiş'\nDetail: Təfsilat\n'Create new user': 'Yeni istifadəçi yarat'\n'Create new account': 'Yeni hesab yarat'\n'Add feed': 'Axın əlavə et'\n'Upload of file $1 was not successful.': '$1 adlı faylın yüklənməsi mümkün olmadı.'\n'The file $1 could not be moved. Check you have enough of disk space.': '$1 adlı faylın yürini9 dəyişmək mümkün olmadı. Kifayət qədər yerə sahib olduğuna əmin ol.'\nMiB: MiB\n'Download was not successful. Check please that the server is not out of disk space.': 'Endirmə əməliyyatı alınmadı. Serverin disk sahəsindən kənarda olmadığına əmin ol.'\n'try again later': 'bir azdan yenidən sına'\nat: burada\n'You must at least upload one file.': 'Ən azı bir fayl yükləməlisən.'\n'Warning: the existing data and themes will be deleted!': 'Diqqət: mövcud məlumat və mövzular silinəcək!'\n'Value is required and cant be empty': 'Dəyər vacibdir və boş saxlanıla bilməz'\nUpload: Yüklə\n'Update comment': 'Şərhi yenilə'\n'Time created': 'Vaxt yaradıldı'\nThemes: Mövzular\n'Stop current upload': 'Mövcud yükləməni saxla'\n'Start uploading queue': 'Növbədəkiləri yükləməyə başla'\n'Start upload': 'Yükləməyə başla'\nSettings: Parametrlər\n'Select files': 'Fayl seç'\nReply: 'Cavab yaz'\n'New comment added': 'Yeni şərh var'\n'Manage Authors': 'Müəllifləri idarə et'\nLoading..: Yüklənir..\nFilename: 'Fayl adı'\n'Edit user type': 'İstifadəçini redaktə et'\n'Edit language': 'Dili dəyiş'\n'Drag files here.': 'Faylları bura köçür.'\n'Connection interrupted': 'Bağlantı qopdu'\nBan: Kilid\n'Are you sure you want to': 'Bunu etmək istədiyinə əminsən?:'\n'Add files to the upload queue and click the start button.': 'Faylları növbəyə daxil et və başla düyməsini kliklə.'\n'Add files': 'Fayl əlavə et'\n'%value% is more than %max% characters long': '%value% %max% işarə sayını ötür'\n'%value% is less than %min% characters long': '%value% %min% işarə sayına çatmır'\n'User name': 'İstifadəçi adı'\nNewscoop: Newscoop\n'Your password has been reset.': 'Sənin şifrən yenilənmişdir.'\n'Proceed to login.': 'Giriş üçün başla.'\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': 'Girişə keç'\n'Back to login.': 'Girişə qayıt.'\n'Back to login': 'Girişə qayıt'\n'An email with instructions on how to recover you password has been sent to your inbox.': 'Şifrəni necə bərpa edəcəyini izah edən məktub sənin emailinə göndərilib.'\n'Session expired.': 'Seansın vaxtı keçib.'\nProcessing...: İcradadır...\nPlease: Lütfən\n'Go to dashboard': 'İş masasına keç'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': 'Sənin brauzerin Javascripti dəstəkləmir, ya da (çox ehtimal ki) sən Javascripti qapatmısan. Lütfən, Newscoop-u istifadə etmək üçün bunu həll et.'\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': 'Newscoop təhlükəsizlik ölçülərini təkmilləşdirib. Hesabının daha təhlükəsiz formada təkmilləşməsini istəyirsənsə, şifrəni yenidən daxil etməlisən.'\n'Newscoop cache was cleaned up': 'Newscoop keşi təmizləndi'\nDashboard: 'İş masası'\n'Your changes will be saved after login.': 'Dəyişikliklərin girişdən sonra saxlanacaq.'\n'Upload backup file': 'Ehtiyat faylı yüklə'\n'The file $1 has been uploaded successfully.': '$1 faylı müvəffəqiyyətlə yüklənib.'\n'Media Archive': 'Mətbuat Arxivi'\nWidgets: Vidcetlər\n'Widget info': 'Vidcet məlumatı'\n'Widget added to dashboard.': 'Vidcet iş masasına əlavə edildi.'\n'Remove widget': 'Vidceti xaric et'\n'Please login to continue.': 'Lütfən, davam etmək üçün giriş et.'\n'Add to dashboard': 'İş masasına əlavə et'\n'Add more widgets': 'Daha çox vidcet əlavə et'\nlogin: giriş\n'This link is not valid.': 'Bu link səhvdir.'\n'Recover password': 'Parolu qaytar'\n'Please enter your email.': 'Emailinizi yazın.'\n'Password recovery is disabled.': 'Parol yenilənməsi mümkün deyil.'\n'Password recovery': 'Parol qaytarılması'\n'Password Recovery': 'Parol Qaytarılması'\n'No user is registered with this email.': 'Bu emaillə istifadəçi qeydiyyatdan keçməyib.'\n'Forgot your password?': 'Parolu unutmusunuz?'\n'Email: incorrect format.': 'Email: səhv yazılıb.'\nEmail: Email\n'Bad input parameters.': 'Səhv yazılır.'\n'There was an error trying to delete the file $1.': '$1 adlı faylın silinməsində xəta baş verdi.'\n'The file $1 was deleted successfully.': '$1 adlı fayl müvəffəqiyyətlə silindi.'\nSize: Ölçü\n'Restore file': 'Faylı bərpa et'\nRestore: 'Bərpa et'\nMb: Mb\n'Free disk space': 'Boş disk sahəsi'\n'Download file': 'Faylı endir'\nDownload: Endir\n'Delete file': 'Faylı sil'\n'Backup list is empty.': 'Ehtiyat siyahısı boşdur.'\n'Are you sure you want to restore the file $1?': '$1 adlı faylı ehtiyatda saxlamaq istədiyinə əminsən?'\n'Are you sure you want to delete the file $1?': '$1 adlı faylı silmək istədiyinə əminsən?'\n'Import XML': 'XML Daxil Et'\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': 'Bütün məqalələrə müəllif təyin etmək üçün məsələ və məqalələrə nə isə əlavə və ya dəyişiklik etməyə icazən olmalıdır.'\n'Select the field from which to generate the author': 'Müəllifin hazırlanacağı sahəni seç.'\n'Invalid or empty field $1. You must select a valid dynamic field.': 'Xətalı və ya boş $1 sahəsi. İşlək və dinamik sahə seçməlisən.'\n'Unable to create author $1 for article no. $2 ($3) of type $4.': '$4 növünün $2 ($3) məqaləsi üçün $1 müəllifi yaratma prosesini dayandır.'\n'There were errors setting the author for articles of type $1 from the field $2.': '$2 sahəsinin $1 növ məqalələri üçün müəllif təyini prosesində xəta baş verdi.'\n'The author was set successfuly for articles of type $1 from the field $2.': '$2 sahəsinin $1 növ məqalələri üçün müəllif təyini prosesi uğurla bitdi.'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Məqalə $3 dəqiqə əvvəl $1 ($2) tərəfindən kilidlənib.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Məqalə $3 saat $4 dəqiqə əvvəl $1 ($2) tərəfindən kilidlənib.'\n'Error setting the author $1 for article no. $2 ($3) of type $4.': '$4 növünün $2 ($3) məqaləsi üçün $1 müəllifinin təyin edilməsində xəta.'\n'Clear system cache': 'Sistemin keş yaddaşını təmizlə'\n'The system was unable to upload the file $1. ': 'Sistem $1 adlı faylı yükləyə bilmədi.'\n'Please check the file you are trying to upload, it might be corrupted.': 'Lütfən, yükləməyə cəhd etdiyin faylı yoxla, o təhlükəli ola bilər.'\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': 'Bu fayl diskdə $1 adı ilə saxlandı.'\n'The system is unable to write to the directory $1.': 'Siztem $1 kataloquna yaza bilmir.'\n'The system was unable to read the file $1.': 'Sistem $1 adlı faylı oxuya bilmədi.'\n'The system was unable to delete the directory $1.': 'Sistem $1 kataloqunu silə bilmədi.'\n'Please check if the user $1 has permission to read this file.': '$1 adlı istifadəçinin bu faylı oxumağa icazəsi olmasına əmin ol.'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'Lütfən, kataloqun boş olub olmadığını və $2 kataloquna $1 adlı istifadəçinin yazma icazəsinin olub olmadığını yoxla.'\n'The system was unable to write to the file $1.': 'Sistem $1 adlı fayla yaza bilmədi.'\n'The system was unable to delete the file $1.': 'Sistem $1 adlı faylı silə bilmədi.'\n'The system was unable to create the file $1.': 'Sistem $1 adlı faylı yarada bilmədi.'\n'The system was unable to create the directory $1.': 'Sistem $1 kataloqunu yarada bilmədi.'\n'Please check if the user $1 has permission to write to this file.': 'Lütfən, $1 adlı istifadəçinin bu fayla yazma icazəsinin olmasına əmin ol.'\n'Please check if the user $1 has permission to write to the directory $2.': 'Lütfən, $1 adlı istifadəçinin $2 kataloquna yazma icazəsinin olmasını yoxla.'\n'Type the code shown above:': 'Yuxarıda göstərilən şifrəni yaz:'\n'Please enter your user name.': 'Lütfən, istifadəçi adını daxil et:'\n'Please enter your password.': 'Lütfən, şifrəni daxil et:'\n'Please enter the code shown in the image.': 'Lütfən, şəkildə görünən şifrəni daxil et.'\n'CAPTCHA code is not valid.  Please try again.': 'CAPTCHA şifrəsi düzgün deyil. Lütfən, bir daha sına.'\n'Signed in: $1': 'Daxil oldu: $1'\nHelp: Yardım\n'Please enter your user name and password': 'Lütfən, istifadəçi adı və şifrəni daxil et'\n'You do not have the right to access this page.': 'Bu səhifəyə daxil olmağa ixtiyarın yoxdur.'\n'Login failed': 'Giriş alınmadı'\n'Please make sure that you typed the correct user name and password.': 'Lütfən, düzgün istifadəçi adı və şifrəni daxil etdiyinə əmin ol.'\n'If your problem persists please contact the site administrator $1': 'Problem hələ də davam etməkdədirsə, lütfən, $1 sayt idarəçisi ilə əlaqə saxla'\nBackup/Restore: Ehtiyat/Arxiv\n'Step 2': 'Addım 2'\n'Step 3': 'Addım 3'\n'Add new user': 'Yeni  istifadəi əlavə et'\n'Bad credentials': 'Pis məlumat'\n'Active users': 'Aktiv istifadəçilər'\n'New comments': 'Yeni şərhlər'\n'Published articles': 'Nümayiş edilmiş məqalələr'\n'Last 7 days statistics': 'Son 7 günün statistikası'\n'Change password': 'Parolu dəyiş'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.be.yml",
    "content": "'Rename user': 'Змяніць імя карыстальніка'\nCampsite: 'Campsite '\n'Image Rendering': 'Апрацоўка выявы'\n'Featured Article Lists': 'Спісы Выбраных артыкулаў'\n'You have tried to upload an invalid backup file.': 'Няўдалая спроба загрузіць файл рэзервовай копіі.'\n'You do not have the right to manage backups.': 'У вас няма правоў доступу для кіравання рэзервовымі копіямі.'\n'Make a new backup': 'Стварыце новую рэзервовую копію'\n'Are you sure you want to make a new backup?': 'Вы ўпэўненыя, што жадаеце стварыць новую рэзервовую копію?'\n'Security token expired. Please resubmit the form.': 'Маркер доступу ня дзейнічае. Калі ласка, паўтарыце адпраўку формы.'\nTemplates: Шаблёны\n'Create slideshow': 'Стварыць слайд-шоў'\nCreate: Стварыць\nAttach/Detach: Прымацаваць/Выдаліць\n'Are you sure you want to delete slideshow?': 'Вы ўпэўненыя, што жадаеце выдаліць слайд-шоў?'\nSupport: Падтрымка\n'Pending articles': 'Незакончаныя артыкулы'\n'Manage Users': 'Кіраванне карыстальнікамі'\n'Manage User Types': 'Кіраванне тыпамі карыстальнікаў'\n'Manage User Points System': 'Кіраванне сістэмай карыстальніцкіх пунктаў'\nLast: Апошнi\nFirst: Першы\nFeedback: 'Зваротная сувязь'\n'Edit your password': 'Рэдагаваць пароль'\n'Edit user': 'Рэдагаваць акаунт карыстальніка'\n'Edit permissions': 'Рэдагаваць правы доступу'\nDetail: 'Больш падрабязна'\n'Create new user': 'Стварыць новага карыстальніка'\n'Create new account': 'Стварыць новы ўліковы запіс'\n'Add feed': 'Дадаць ленту'\n'Upload of file $1 was not successful.': 'Няўдалая спроба загрузкі файла $1.'\n'The file $1 could not be moved. Check you have enough of disk space.': 'Файл $1 не можа быць перамешчаны. Праверце ці ў вас досыць месца на серверы.'\nMiB: МБ\n'Download was not successful. Check please that the server is not out of disk space.': 'Няўдалая спроба запампаваць файл. Праверце ці ў вас досыць вольнай дыскавай прасторы на серверы.'\n'try again later': 'паўторыце спробу пазней'\nat: на\n'You must at least upload one file.': 'Вы павінны загрузіць ня меньш за адзін файл.'\n'Warning: the existing data and themes will be deleted!': 'Увага: існуючыя дадзеныя і тэмы (шаблёны), будуць выдаленыя!'\n'Value is required and cant be empty': 'Значэнне зяўляецца абавязковым і не можа быць пустым'\nUpload: Загрузіць\n'Update comment': 'Аднавіць каментары'\n'Time created': 'Час створаны'\nThemes: 'Тэмы (шаблёны)'\n'Stop current upload': 'Спыніць запампоўку'\n'Start uploading queue': 'Пачаць загрузку чэргі'\n'Start upload': 'Пачаць запампоўку'\nSettings: Налады\n'Select files': 'Абярыце файлы'\nReply: Адказ\n'New comment added': 'Каментар дабаўлены'\n'Manage Authors': 'Кіраванне аўтарамі'\nLoading..: Загрузка...\nFilename: 'Імя файла'\n'Edit user type': 'Змяніць тып карыстальніка'\n'Edit language': 'Змяніць мову'\n'Drag files here.': 'Перацягнуць файлы сюды.'\n'Connection interrupted': 'Злучэньне спыненае'\nBan: Забаронены\n'Are you sure you want to': 'Вы ўпэўненыя, што жадаеце'\n'Add files to the upload queue and click the start button.': 'Дадайце файлы ў чаргу загрузкі і націсніце кнопку.'\n'Add files': 'Дадаць файлы'\n'%value% is more than %max% characters long': '%value% змяшчае больш, чым %max% сімвалаў'\n'%value% is less than %min% characters long': '%value% змяшчае меньш, чым %min% сімвалаў'\n'User name': 'Імя карыстальніка'\nNewscoop: Newscoop\n'Your password has been reset.': 'Ваш пароль пераусталяваны.'\n'Proceed to login.': Ўвайсці.\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': 'На старонку ўваходу.'\n'Back to login.': 'Вярнуцца на старонку ўваходу.'\n'Back to login': 'Вярнуцца на старонку ўваходу'\n'An email with instructions on how to recover you password has been sent to your inbox.': 'Паведамленне з інструкцыямі аб тым, як аднавіць Ваш пароль быў высланы на Ваш e-mail.'\n'Session expired.': 'Сесія скончана.'\nProcessing...: Апрацоўка...\nPlease: 'Калі ласка'\n'Go to dashboard': 'Вярнуцца на Мой Newscoop'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': 'Ваш браўзэр не падтрымлівае Javascript або (больш верагодна) опцыя Javascript адключаная. Выпраўце сітуацыю, каб карыстацца Newscoop.'\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': 'Newscoop мадэрнізаваў механізмы бяспекі. Для таго, каб аднавіць уліковы запіс і выкарыстоўваць новыя наладкі бяспекі, Вы павінны зноў ўвесці пароль.'\n'Newscoop cache was cleaned up': 'Кэш Newscoop быў ачышчаны.'\nDashboard: 'Мой Newscoop'\n'Your changes will be saved after login.': 'Змены будуць захаваны пасля ўваходу ў сістэму.'\n'Upload backup file': 'Загрузіць файл рэзервнай копіі'\n'The file $1 has been uploaded successfully.': 'Файл $ 1 быў паспяхова загружаны.'\n'Media Archive': Медыя-архіў\nWidgets: Віджэты\n'Widget info': 'Інфармацыя пра віджэты'\n'Widget added to dashboard.': 'Віджэт даданы да Мой Newscoop.'\n'Remove widget': 'Выдаліць віджэт'\n'Please login to continue.': 'Калі ласка, увядзіце лагін і пароль для працягу.'\n'Add to dashboard': 'Дадаць у Мой Newscoop'\n'Add more widgets': 'Дадаць іншыя віджэты'\nlogin: Уваход\n'This link is not valid.': 'Гэтая спасылка няправільная!'\n'Recover password': 'Аднавіць пароль'\n'Please enter your email.': 'Калі ласка, увядзіце свой email.'\n'Password recovery is disabled.': 'Немагчыма аднавіць пароль.'\n'Password recovery': 'Аднаўленне пароля'\n'Password Recovery': 'Аднаўленне Пароля'\n'No user is registered with this email.': 'Няма карыстальнікаў, зарэгістраваных пад гэтым паролем.'\n'Forgot your password?': 'Забыўся пароль?'\n'Email: incorrect format.': 'Email: няправільны фармат.'\nEmail: Email\n'Bad input parameters.': 'Няправільныя ўваходныя параметры.'\n'There was an error trying to delete the file $1.': 'Памылка пры выдаленні файла $1.'\n'The file $1 was deleted successfully.': 'Файл $1 '\nSize: Памер\n'Restore file': 'Аднавіць файл'\nRestore: Аднавіць\nMb: Мб\n'Free disk space': 'Даступнае прастору на дыску'\n'Download file': 'Загрузіць файл'\nDownload: Загрузіць\n'Delete file': 'Выдаліць файл'\n'Backup list is empty.': 'Спіс пусты.'\n'Are you sure you want to restore the file $1?': 'Цi Вы ўпэўнены, што жадаеце аднавіць $1?'\n'Are you sure you want to delete the file $1?': 'Цi Вы ўпэўнены, што жадаеце выдалiць файл $1?'\n'Import XML': 'Імпарт XML'\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': 'У вас павінны быць правы карыстальніка для дадавання/змянення выпускаў і артыкулаў для таго, каб вызначыць аўтара для артыкулаў.'\n'Select the field from which to generate the author': 'Выберыце поле са спісу для генерацыі поля аўтар'\n'Invalid or empty field $1. You must select a valid dynamic field.': 'Поле $1 – няправільнае альбо пустое. Вы павінны выбраць правільнае дынамічнае поле.'\n'Unable to create author $1 for article no. $2 ($3) of type $4.': 'Немагчыма стварыць аўтара $1 для артыкула №$2 ($3) тыпу $4.'\n'There were errors setting the author for articles of type $1 from the field $2.': 'Паўсталі памылкі падчас усталёвак аўтара артыкулаў тыпу $1 з поля $2.'\n'The author was set successfuly for articles of type $1 from the field $2.': 'Аўтар паспяхова ўсталяваны для артыкулаў тыпу $1 з поля $2.'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Гэты артыкул быў заблакаваны $1 ($2) $3 хвілін таму.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Гэты артыкул быў заблакаваны $1 ($2) $3 гадзін і $4 хвілін таму.'\n'Error setting the author $1 for article no. $2 ($3) of type $4.': 'Памылка падчас усталёвак аўтара $1 для артыкула №$2 ($3) тыпу $4.'\n'Clear system cache': 'Ачысьціць сыстэму кэшаваньня'\n'The system was unable to upload the file $1. ': 'Сыстэма ня можа загрузіць файл $1.'\n'Please check the file you are trying to upload, it might be corrupted.': 'Калі ласка  праверце, які файл Вы спрабуеце загрузіць. Файл можа быць сапсаваны.'\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': 'Гэты файл захаваны на дыску як $1.'\n'The system is unable to write to the directory $1.': 'Немагчыма запісаць у папку $1.'\n'The system was unable to read the file $1.': 'Немагчыма прачытаць файл $1.'\n'The system was unable to delete the directory $1.': 'Немагчыма выдалiць папку $1.'\n'Please check if the user $1 has permission to read this file.': 'Калi ласка, праверце, цi мае карыстальнiк $1 права доступу для чытаньня гэтага файла.'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'Калi ласка, праверце, цi пустая гэтая папка i  карыстальнiк $1 мае права доступу для запiсу ў папку $2.'\n'The system was unable to write to the file $1.': 'Немагчыма запiсаць у файл $1.'\n'The system was unable to delete the file $1.': 'Немагчыма выдалiць файл $1.'\n'The system was unable to create the file $1.': 'Немагчыма стварыць файл $1.'\n'The system was unable to create the directory $1.': 'Немагчыма стварыць папку $1. '\n'Please check if the user $1 has permission to write to this file.': 'Калi ласка, праверце, цi мае карыстальнiк $1 права доступу для запiсу ў гэты файл.'\n'Please check if the user $1 has permission to write to the directory $2.': 'Калi ласка, праверце, цi мае карыстальнiк $1 права доступу для запiсу ў папку $2.'\n'Type the code shown above:': 'Увядзеце код, якi паказаны ніжэй:'\n'Please enter your user name.': 'Увядзеце iмя карыстальнiка.'\n'Please enter your password.': 'Увядзеце Ваш пароль.'\n'Please enter the code shown in the image.': 'Калi ласка, увядзеце код, якi паказаны на малюнку.'\n'CAPTCHA code is not valid.  Please try again.': 'Код CAPTCHA несапраўдны. Калi ласка, паспрабуйце iзноў.'\n'Signed in: $1': 'Карыстальнiк: $1'\nHelp: Дапамога\n'Please enter your user name and password': 'Калi ласка, увядзеце Ваша iмя i пароль'\n'You do not have the right to access this page.': 'Вы ня маеце права доступу да гэтай старонкі.'\n'Login failed': 'Памылка ўваходу'\n'Please make sure that you typed the correct user name and password.': 'Калi ласка, праверце, цi правiльна Вы ўвялі лагiн і пароль.'\n'If your problem persists please contact the site administrator $1': 'Калi праблема iснуе, зьвярнецеся да адмiнiстратара сайта $1'\nBackup/Restore: 'Рэзервнае капіраванне'\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.bn.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: null\nFirst: null\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: থিম\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': null\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': null\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: null\n'Delete file': null\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': null\nHelp: null\n'Please enter your user name and password': null\n'You do not have the right to access this page.': null\n'Login failed': null\n'Please make sure that you typed the correct user name and password.': null\n'If your problem persists please contact the site administrator $1': null\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.cs.yml",
    "content": "'Rename user': 'Přejmenovat uživatele'\nCampsite: Campsite\n'Image Rendering': 'Vykreslování obrázku'\n'Featured Article Lists': 'Výběr článku ze seznamů'\n'You have tried to upload an invalid backup file.': 'Pokusil jste se nahrát neplatný zálohovaný soubor.'\n'You do not have the right to manage backups.': 'Nemáte opravnění pracovat se zálohováním dat.'\n'Make a new backup': 'Vytvořit novou zálohu dat'\n'Are you sure you want to make a new backup?': 'Jste si jist, že chcete provést novou zálohu dat?'\n'Security token expired. Please resubmit the form.': 'Bezpečnostní token vypršel. Formulář prosím znovu připojte.'\nTemplates: Šablony\n'Create slideshow': 'Vytvořit slideshow'\nCreate: Vytvořit\nAttach/Detach: Připojit/Odpojit\n'Are you sure you want to delete slideshow?': 'Jste si jisti, že chcete vymazat slideshow?'\nSupport: Podpora\n'Pending articles': 'Dosud nevyřízené články'\n'Manage Users': 'Správa uživatelů'\n'Manage User Types': 'Správa typů uživatelů'\n'Manage User Points System': 'Správa bodového systému uživatele'\nLast: Poslední\nFirst: První\nFeedback: 'Zpětná vazba'\n'Edit your password': 'Upravit heslo'\n'Edit user': 'Upravit uživatele'\n'Edit permissions': 'Upravit povolení'\nDetail: Detail\n'Create new user': 'Vytvořit nového uživatele'\n'Create new account': 'Vytvořit nový účet'\n'Add feed': 'Přidat zdroj'\n'Upload of file $1 was not successful.': 'Nahrávání souboru $1 nebylo úspěšné.'\n'The file $1 could not be moved. Check you have enough of disk space.': 'Soubor $1 nemůže být posunut. Zkontrolujte zda máte dostatek místa na disku.'\nMiB: MiB\n'Download was not successful. Check please that the server is not out of disk space.': 'Stažení nebylo úspěšné. Prosím zkontrolujte zda nemá server nedostatek místa na disku.'\n'try again later': 'zkuste znovu později'\nat: na\n'You must at least upload one file.': 'Musíte nahrát alespoň jeden soubor.'\n'Warning: the existing data and themes will be deleted!': 'Upozornění: existující data a náměty budou smazány!'\n'Value is required and cant be empty': 'Hodnota je požadována a nemůže zůstat nevyplněna'\nUpload: Nahrávat\n'Update comment': 'Aktualizovat komentář'\n'Time created': 'Čas vytvořen'\nThemes: Náměty\n'Stop current upload': 'Zastavit probíhající nahrávání'\n'Start uploading queue': 'Začít nahrávat frontu'\n'Start upload': 'Začít nahrávat'\nSettings: Nastavení\n'Select files': 'Vyberte soubor'\nReply: Odpovědět\n'New comment added': 'Přidán nový komentář'\n'Manage Authors': 'Správa Autorů'\nLoading..: Nahrávání..\nFilename: 'Název souboru'\n'Edit user type': 'Upravit typ uživatele'\n'Edit language': 'Upravit jazyk'\n'Drag files here.': 'Přesunout soubory sem.'\n'Connection interrupted': 'Spojení přerušeno'\nBan: Zakázat\n'Are you sure you want to': 'Jste si jist, že chcete '\n'Add files to the upload queue and click the start button.': 'Přidat soubory do fronty a stisknout tlačítko start.'\n'Add files': 'Přidat soubory'\n'%value% is more than %max% characters long': ' %value% je víc než %max% znaků dlouhá'\n'%value% is less than %min% characters long': ' %value% je méně než %min% znaků dlouhá'\n'User name': 'Jméno uživatele'\nNewscoop: Newscoop\n'Your password has been reset.': 'Vaše heslo bylo obnoveno'\n'Proceed to login.': 'Pokračujte na přihlášení se do systému.'\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': 'Jděte na přihlášení se do systému.'\n'Back to login.': 'Zpět na přihlášení se do systému.'\n'Back to login': 'Zpět na přihlášení se do systému'\n'An email with instructions on how to recover you password has been sent to your inbox.': 'Byl zaslán e-mail s pokyny na obnovení Vašeho hesla.'\n'Session expired.': 'Relace je ukončena.'\nProcessing...: Zpracovávám...\nPlease: Prosíme\n'Go to dashboard': 'Jděte na hlavní panel'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': 'Váš prohlížeč nepodporuje Javascript nebo (a to je spíše pravděpodné) jej máte zablokovaný. Napravíte-li tyto chyby, budete moci začít používat Newscoop.'\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': 'Newscoop zvýšil bezpečnostní opatření. Aby se tato opatření mohla projevit na Vašem účtu, musíte znovu zadat heslo svého účtu.'\n'Newscoop cache was cleaned up': 'Paměť Newscoopu byla vyrovnána'\nDashboard: 'Hlavní panel'\n'Your changes will be saved after login.': 'Změny budou uloženy po přihlášení se do systému.'\n'Upload backup file': 'Nahrát zálohovací soubor'\n'The file $1 has been uploaded successfully.': 'Soubor $1 byl úspěšně nahrán.'\n'Media Archive': 'Archiv Médií'\nWidgets: Widgety\n'Widget info': 'Widget info'\n'Widget added to dashboard.': 'Wiget přidán na hlavní panel.'\n'Remove widget': 'Odstranit widget'\n'Please login to continue.': 'Prosím přihlašte se aby jste mohli pokračovat.'\n'Add to dashboard': 'Přidat na hlavní panel'\n'Add more widgets': 'Přidat další widety'\nlogin: 'Přihlásit se '\n'This link is not valid.': 'Tento link je neplatný'\n'Recover password': 'Obnovit heslo'\n'Please enter your email.': 'Prosím zadejte váš email.'\n'Password recovery is disabled.': 'Obnova hesla je zakázána.'\n'Password recovery': 'Obnovení hesla'\n'Password Recovery': 'Obnovení Hesla'\n'No user is registered with this email.': 'Žadný uživatel s tímto emailem není registrován'\n'Forgot your password?': 'Zapoměli jste heslo?'\n'Email: incorrect format.': 'Email: nesprávný formát'\nEmail: Email\n'Bad input parameters.': 'Nesprávné vstupní parametry.'\n'There was an error trying to delete the file $1.': 'Stala se chyba při pokusu vymazat soubor $1.'\n'The file $1 was deleted successfully.': 'Soubor $1 byl úspěšně vymazán.'\nSize: 'Velikost '\n'Restore file': 'Obnovit soubor'\nRestore: Obnovit\nMb: Mb\n'Free disk space': 'Volné místo na disku'\n'Download file': 'Stáhnout soubor'\nDownload: Stáhnout\n'Delete file': 'Smazat soubor'\n'Backup list is empty.': 'Záložní seznam je prázdný.'\n'Are you sure you want to restore the file $1?': 'Jste si jisti, že chcete obnovit soubor $1?'\n'Are you sure you want to delete the file $1?': 'Jste si jisti, že chcete vymazat soubor $1?'\n'Import XML': 'Importovat XML'\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': 'Musíte mít povolení přidat/změnit vydání a články, aby bylo možné určit autora pro všechny články.'\n'Select the field from which to generate the author': 'Vyberte pole, z kterého se bude vybírat autor.'\n'Invalid or empty field $1. You must select a valid dynamic field.': 'Neplatné nebo prázdné pole $1. Musíte vybrat platné funkční pole.'\n'Unable to create author $1 for article no. $2 ($3) of type $4.': 'Vytvořit autora $1 pro článek číslo $2 ($3) typu $4 je nemožné.'\n'There were errors setting the author for articles of type $1 from the field $2.': 'Vyskytly se chyby v nastavení autora pro články typu $1 z pole $2. '\n'The author was set successfuly for articles of type $1 from the field $2.': 'Autor byl uspěšně nastaven pro články typu $1 z pole $2. '\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Tento článek uzamkl $1 ($2) před $3 minutami.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Tento článek uzamkl $1 ($2) před $3 hodinami a $4 minutami.'\n'Error setting the author $1 for article no. $2 ($3) of type $4.': 'Chyba v nastavení autora $1 pro článek ($2) $3 typu $4.'\n'Clear system cache': 'Vymazat system cache'\n'The system was unable to upload the file $1. ': 'Systém byl neschopen nahrát soubor $1. '\n'Please check the file you are trying to upload, it might be corrupted.': 'Prosím, zkontrolujte soubor, který se snažíte nahrát zda není poškozený. '\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': 'Tento soubor je uložen na disku jako $1. '\n'The system is unable to write to the directory $1.': 'Systém není schopen psát do adresáře $1. '\n'The system was unable to read the file $1.': 'Systém nebyl schopen přečíst soubor $1. '\n'The system was unable to delete the directory $1.': 'Systém nebyl schopen vymazat adresář $1. '\n'Please check if the user $1 has permission to read this file.': 'Prosím zkontrolujte zda uživatel $1 má povolení číst tento soubor.'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'Zkontrolujte zda adresář je prázdný a uživatel $1 má povolení psát do adresáře $2.'\n'The system was unable to write to the file $1.': 'Systém nebyl schopen psát do souboru $1.'\n'The system was unable to delete the file $1.': 'Systém nebyl schopen vymazat soubor $1.'\n'The system was unable to create the file $1.': 'Systém nebyl schopen vytvořit soubor $1.'\n'The system was unable to create the directory $1.': 'Systém nebyl schopnen vytvořit adresář $1.'\n'Please check if the user $1 has permission to write to this file.': 'Zkontrolujte zda uživatel $1 má povolení psát do tohoto souboru.'\n'Please check if the user $1 has permission to write to the directory $2.': 'Zkontrolujte zda uživatel $1 má povolení psát do adresáře $2.'\n'Type the code shown above:': 'Napište kód zobrazený nahoře:'\n'Please enter your user name.': 'Vložte vaše uživatelské jméno.'\n'Please enter your password.': 'Vložte vaše heslo.'\n'Please enter the code shown in the image.': 'Vložte zobrazený kód.'\n'CAPTCHA code is not valid.  Please try again.': 'CAPTCHA kód je neplatný. Zkuste to znovu.'\n'Signed in: $1': 'Přihlášený v: $1'\nHelp: Nápověda\n'Please enter your user name and password': 'Zadejte uživatelské jméno a heslo'\n'You do not have the right to access this page.': 'Nemáte přístupová práva k této stránce'\n'Login failed': 'Přihlášení neproběhlo'\n'Please make sure that you typed the correct user name and password.': 'Zkontrolujte, zda jste správně zadali uživatelské jméno a heslo'\n'If your problem persists please contact the site administrator $1': 'Pokud vaše problémy přetrvávají, prosím kontaktujte administrátora'\nBackup/Restore: Zálohovat/Obnovit\n'Step 2': 'Krok 2'\n'Step 3': 'Krok 3'\n'Add new user': 'Přidat nového uživatele'\n'Bad credentials': 'Špatné přihlašovací údaje'\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.da.yml",
    "content": "'Rename user': 'Omdøb bruger'\nCampsite: Campsite\n'Image Rendering': 'Billed udgaver'\n'Featured Article Lists': 'Fremhævede artikler'\n'You have tried to upload an invalid backup file.': 'Du prøvede at uploade en ugyldig backup fil.'\n'You do not have the right to manage backups.': 'Du har ikke rettigheder til at håndtere backups.'\n'Make a new backup': 'Lav en ny backup'\n'Are you sure you want to make a new backup?': 'Vil du lave en ny backup?'\n'Security token expired. Please resubmit the form.': 'Sikkerhedstoken er udløbet. Indsend formularen igen.'\nTemplates: Skabeloner\n'Create slideshow': 'Opret galleri'\nCreate: Opret\nAttach/Detach: Vedhæft/Fjern\n'Are you sure you want to delete slideshow?': 'Vil du slette galleriet?'\nSupport: Support\n'Pending articles': 'Ventende artikler'\n'Manage Users': Brugere\n'Manage User Types': 'Bruger typer'\n'Manage User Points System': 'Håndter burger point systemet'\nLast: Sidste\nFirst: Første\nFeedback: Feedback\n'Edit your password': 'Skift din adgangskode'\n'Edit user': 'Rediger bruger'\n'Edit permissions': 'Rediger rettigheder'\nDetail: Detalje\n'Create new user': 'Opret ny bruger'\n'Create new account': 'Opret ny konto'\n'Add feed': 'Tilføj feed'\n'Upload of file $1 was not successful.': 'Upload af filen $1 fejlede.'\n'The file $1 could not be moved. Check you have enough of disk space.': 'Filen $1 kunne ikke flyttes. Kontroler at du har lagerplads nok.'\nMiB: MiB\n'Download was not successful. Check please that the server is not out of disk space.': 'Download mislykkedes. Kontroller at serveren har plads på disken.'\n'try again later': 'Prøv igen senere'\nat: på\n'You must at least upload one file.': 'Du skal uploade mindst 1 fil.'\n'Warning: the existing data and themes will be deleted!': 'Advarsel: De eksisterende data og temaer vil blive slettet!'\n'Value is required and cant be empty': 'Værdien er påkrævet og kan ikke være tom'\nUpload: Upload\n'Update comment': 'Opdater kommentar'\n'Time created': Oprettelsestidspunkt\nThemes: Temaer\n'Stop current upload': 'Stop igangværende upload'\n'Start uploading queue': 'Start upload kø'\n'Start upload': 'Start upload'\nSettings: Indstillinger\n'Select files': 'Vælg filer'\nReply: Svar\n'New comment added': 'Ny kommentar tilføjet'\n'Manage Authors': Forfattere\nLoading..: Loader...\nFilename: Filnavn\n'Edit user type': 'Rediger bruger type'\n'Edit language': 'Rediger sprog'\n'Drag files here.': 'Træk filer hertil.'\n'Connection interrupted': 'Forbindelse afbrudt'\nBan: Bloker\n'Are you sure you want to': 'Er du sikker på du vil'\n'Add files to the upload queue and click the start button.': 'Tilføj filer til upload køen og klik på start.'\n'Add files': 'Tilføj filer'\n'%value% is more than %max% characters long': '%value% er mere end %max% tegn lang'\n'%value% is less than %min% characters long': '%value% er mindre end %min% tegn lang'\n'User name': Brugernavn\nNewscoop: Newscoop\n'Your password has been reset.': 'Din adgangskode er blevet nulstillet.'\n'Proceed to login.': 'Gå til login.'\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': 'Gå til login'\n'Back to login.': 'Tilbage til login.'\n'Back to login': 'Tilbage til login'\n'An email with instructions on how to recover you password has been sent to your inbox.': 'Der er sendt en email til dig med instruktioner til at gendanne din adgangskode.'\n'Session expired.': 'Sessionen er udløbet.'\nProcessing...: Arbejder...\nPlease: Tak\n'Go to dashboard': 'Gå til overblik'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': 'Din browser understøtter ikke javascript eller (mere sandsynligt) du har slået javascript fra. Du skal slå javascript til for at bruge Newscoop.'\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': 'Newscoop har opgraderet sikkerheden. For at opgradere din konto skal du skrive din adgangskode igen.'\n'Newscoop cache was cleaned up': 'Newscoop cachen blev renset'\nDashboard: Overblik\n'Your changes will be saved after login.': 'Dine ændringer bliver gemt efter du logger ind.'\n'Upload backup file': 'Upload backup fil'\n'The file $1 has been uploaded successfully.': 'Filen $1 blev uploadet.'\n'Media Archive': 'Medie arkiv'\nWidgets: Widgets\n'Widget info': 'Widget info'\n'Widget added to dashboard.': 'Widget føjet til overblikket.'\n'Remove widget': 'Fjern widget'\n'Please login to continue.': 'Log ind for at fortsætte.'\n'Add to dashboard': 'Tilføj til overblik'\n'Add more widgets': 'Tilføj flere widgets'\nlogin: 'Log ind'\n'This link is not valid.': 'Ugyldigt link'\n'Recover password': 'Gendan adgangskode'\n'Please enter your email.': 'Skriv din email adresse.'\n'Password recovery is disabled.': 'Gendannelse af adgangskoder er slået fra.'\n'Password recovery': 'Gendannelse af adgangskode'\n'Password Recovery': 'Gendannelse af adgangskode'\n'No user is registered with this email.': 'Ingen bruger er registreret med den email adresse.'\n'Forgot your password?': 'Glemt adgangskode?'\n'Email: incorrect format.': 'Email: Forkert format.'\nEmail: Email\n'Bad input parameters.': 'Ugyldige input parametre'\n'There was an error trying to delete the file $1.': 'Der skete en fejl under sletning af filen $1.'\n'The file $1 was deleted successfully.': 'Filen $1 blev slettet.'\nSize: Størrelse\n'Restore file': 'Gendan fil'\nRestore: Gendan\nMb: Mb\n'Free disk space': 'Ledig diskplads'\n'Download file': 'Hent fil'\nDownload: Download\n'Delete file': 'Slet fil'\n'Backup list is empty.': 'Backup listen er tom.'\n'Are you sure you want to restore the file $1?': 'Vil du gendanne filen $1?'\n'Are you sure you want to delete the file $1?': 'Vil du slette filen $1?'\n'Import XML': 'Importer XML'\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': 'Du skal have rettigheder til at tilføje/ændre udgivelser og artikler for at indstille forfatter for alle artikler.'\n'Select the field from which to generate the author': 'Vælg feltet der skal bruges til forfatter'\n'Invalid or empty field $1. You must select a valid dynamic field.': 'Ugyldigt eller tomt felt $1. Du skal vælge et gyldigt dynamisk felt.'\n'Unable to create author $1 for article no. $2 ($3) of type $4.': 'Kunne ikke oprette forfatter $1 for artikel nr. $2 ($3) af type $4.'\n'There were errors setting the author for articles of type $1 from the field $2.': 'Kunne ikke sætte forfatteren for artikler af type $1 fra feltet $2.'\n'The author was set successfuly for articles of type $1 from the field $2.': 'Forfatteren for artikler af type $1 blev sat fra feltet $2.'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Artiklen blev låst af $1 ($2) for $3 minutter siden.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Artiklen blev låst af $1 ($2) for $3 timer og $4 minutter siden.'\n'Error setting the author $1 for article no. $2 ($3) of type $4.': 'Forfatteren $1 kunne ikke sættes for artikel nr. $2 ($3) af type $4.'\n'Clear system cache': 'Tøm systemets cache'\n'The system was unable to upload the file $1. ': 'Systemet kunne ikke uploade filen $1.'\n'Please check the file you are trying to upload, it might be corrupted.': 'Kontrollér filen du prøver at sende, den kan være beskadiget.'\n'An error occurred in session management. Please reload the login page.': 'Fejl i sessionshåndteringen. Indlæs siden igen.'\n'This file is stored on disk as $1.': 'Filen er gemt på disk som $1.'\n'The system is unable to write to the directory $1.': 'Systemet kunne ikke skrive til mappen $1.'\n'The system was unable to read the file $1.': 'Systemet kunne ikke læse filen $1.'\n'The system was unable to delete the directory $1.': 'Systemet kunne ikke slette mappen $1.'\n'Please check if the user $1 has permission to read this file.': 'Kontroller om brugeren $1 har tilladelser til at læse filen.'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'Kontroller om mappen er tom og om brugeren $1 har tilladelser til at skrive til mappen $2.'\n'The system was unable to write to the file $1.': 'Systemet kunne ikke skrive til filen $1.'\n'The system was unable to delete the file $1.': 'Systemet kunne ikke slette filen $1.'\n'The system was unable to create the file $1.': 'Systemet kunne ikke oprette filen $1.'\n'The system was unable to create the directory $1.': 'Systemet kunne ikke oprette mappen $1.'\n'Please check if the user $1 has permission to write to this file.': 'Kontroller om brugeren $1 har tilladelser til at skrive til denne fil.'\n'Please check if the user $1 has permission to write to the directory $2.': 'Kontroller om brugeren $1 har tilladelser til at skrive til mappen $2.'\n'Type the code shown above:': 'Skriv den viste kode:'\n'Please enter your user name.': 'Skriv dit brugernavn.'\n'Please enter your password.': 'Skriv din adgangskode.'\n'Please enter the code shown in the image.': 'Skriv koden du ser i billedet.'\n'CAPTCHA code is not valid.  Please try again.': 'CAPTCHA koden er ugyldig. Prøv igen.'\n'Signed in: $1': 'Logget ind: $1'\nHelp: Hjælp\n'Please enter your user name and password': 'Skriv brugernavn og adgangskode.'\n'You do not have the right to access this page.': 'Du har ikke rettigheder til at se denne side.'\n'Login failed': 'Login mislykkedes'\n'Please make sure that you typed the correct user name and password.': 'Kontroller at du har indtastet korrekt brugernavn og adgangskode.'\n'If your problem persists please contact the site administrator $1': 'Kontakt hjemmesidens administrator $1 hvis problemet fortsætter'\nBackup/Restore: Backup/Gendan\n'Step 2': 'Trin 2'\n'Step 3': 'Trin 3'\n'Add new user': 'Tilføj bruger'\n'Bad credentials': 'Ugyldige brugeroplysninger'\n'Active users': 'Aktive brugere'\n'New comments': 'Nye kommentarer'\n'Published articles': 'Publicerede artikler'\n'Last 7 days statistics': 'Statistik for de seneste 7 dage'\n'Change password': 'Skift adgangskode'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.de.yml",
    "content": "'Rename user': 'Nutzer umbenennen '\nCampsite: Newscoop\n'Image Rendering': Bildwiedergabe\n'Featured Article Lists': 'Listen ausgewählter Artikel'\n'You have tried to upload an invalid backup file.': 'Sie haben versucht eine ungültige Backup-Datei hochzuladen. '\n'You do not have the right to manage backups.': 'Sie haben keine Berechtigung, um Backups zu bearbeiten. '\n'Make a new backup': 'Backup erstellen'\n'Are you sure you want to make a new backup?': 'Wollen Sie wirklich ein neues  Backup erstellen? '\n'Security token expired. Please resubmit the form.': 'Sicherheitstoken abgelaufen. Bitte Formular erneut abschicken. '\nTemplates: Templates\n'Create slideshow': 'Bildstrecke erstellen'\nCreate: Erstellen\nAttach/Detach: Anhängen/Entkoppeln\n'Are you sure you want to delete slideshow?': 'Sind Sie sicher, dass Sie die Bildstrecke löschen wollen?'\nSupport: Support\n'Pending articles': 'Eingereichte Artikel'\n'Manage Users': 'Nutzer verwalten'\n'Manage User Types': 'Nutzertypen verwalten'\n'Manage User Points System': 'Nutzer-Punktesystem verwalten'\nLast: Letzte\nFirst: Erste\nFeedback: Feedback\n'Edit your password': 'Passwort bearbeiten'\n'Edit user': 'Nutzer bearbeiten'\n'Edit permissions': 'Berechtigung bearbeiten'\nDetail: Detail\n'Create new user': 'Neuen Nutzer anlegen'\n'Create new account': 'Neues Benutzerkonto anlegen'\n'Add feed': 'Feed hinzufügen'\n'Upload of file $1 was not successful.': 'Die Datei $1 wurde nicht hochgeladen.'\n'The file $1 could not be moved. Check you have enough of disk space.': 'Die Datei $1 konnte nicht verschoben werden. '\nMiB: MiB\n'Download was not successful. Check please that the server is not out of disk space.': 'Der Download war nicht erfolgreich. Bitte überprüfen Sie, ob genug Platz auf dem Server zur Verfügung steht. '\n'try again later': 'Bitte später wieder versuchen. '\nat: auf\n'You must at least upload one file.': 'Sie müssen mindestens eine Datei hochladen. '\n'Warning: the existing data and themes will be deleted!': 'Achtung: Die vorhandenen Daten und Designvorlagen werden gelöscht. '\n'Value is required and cant be empty': 'Der Wert ist erforderlich und kann nicht leer sein. '\nUpload: Upload\n'Update comment': 'Kommentar aktualisieren'\n'Time created': 'Zeitpunkt angelegt. '\nThemes: Designvorlagen\n'Stop current upload': 'Laufenden Upload abbrechen'\n'Start uploading queue': 'Upload Reihenfolge starten '\n'Start upload': 'Upload starten'\nSettings: 'Einstellungen '\n'Select files': 'Dateien auswählen'\nReply: Antworten\n'New comment added': 'Neuer Kommentar hinzugefügt'\n'Manage Authors': 'Autoren verwalten'\nLoading..: Lade...\nFilename: Dateiname\n'Edit user type': 'Nutzertyp bearbeiten'\n'Edit language': 'Sprache bearbeiten'\n'Drag files here.': 'Dateien hierher ziehen. '\n'Connection interrupted': 'Verbindung unterbrochen'\nBan: Sperre\n'Are you sure you want to': 'Sind Sie sicher, dass Sie wollen '\n'Add files to the upload queue and click the start button.': 'Fügen Sie Dateien zur Upload-Schlange hinzu und klicken Sie den Start Button. '\n'Add files': 'Datei hinzufügen. '\n'%value% is more than %max% characters long': '%value% ist mehr als  %max% Zeichen lang'\n'%value% is less than %min% characters long': '%value% ist weniger als  %min% Zeichen lang'\n'User name': Benutzername\nNewscoop: Newscoop\n'Your password has been reset.': 'Ihr Passwort wurde zurückgesetzt. '\n'Proceed to login.': 'Weiter zum Login. '\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': 'Zum Login'\n'Back to login.': 'Zurück zum Login. '\n'Back to login': 'Zurück zum Login. '\n'An email with instructions on how to recover you password has been sent to your inbox.': 'Eine Email mit Anweisung zum Zurücksetzen Ihres Passworts wurde an Ihre Email Adresse versendet. '\n'Session expired.': 'Session abgelaufen.'\nProcessing...: Bearbeite...\nPlease: Bitte\n'Go to dashboard': 'Zum Dashboard'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': 'Ihr Browser unterstützt kein Javascript oder Sie haben Javascript nicht aktiviert (das ist wahrscheinlicher). Bitte überpüfen Sie Ihre Einstellungen, um Newscoop nutzen zu können. '\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': 'Newscoop hat die Sicherheitseinstellungen aktualisiert. Bitte geben Sie Ihr Passwort erneut ein, um die neuen Einstellungen für Ihren Account zu übernehmen.'\n'Newscoop cache was cleaned up': 'Der Newscoop Cache wurde geleert.'\nDashboard: Dashboard\n'Your changes will be saved after login.': 'Ihre Änderungen werden nach dem Login übernommen.'\n'Upload backup file': 'Backup-Datei hochladen'\n'The file $1 has been uploaded successfully.': 'Die Datei $1 wurde erfolgreich hochgeladen.'\n'Media Archive': Medienarchiv\nWidgets: Widgets\n'Widget info': 'Widget Info'\n'Widget added to dashboard.': 'Das Widget wurde dem Dashboard hinzugefügt.'\n'Remove widget': 'Widget entfernen'\n'Please login to continue.': 'Bitte loggen Sie sich ein um fortzufahren'\n'Add to dashboard': 'Dem Dashboard hinzufügen'\n'Add more widgets': 'Weitere Widgets hinzufügen'\nlogin: Login\n'This link is not valid.': 'Ungültiger Link'\n'Recover password': 'Passwort wiederherstellen'\n'Please enter your email.': 'Bitte geben Sie Ihre E-Mail Adresse ein.'\n'Password recovery is disabled.': 'Die Passwortwiederherstellung ist deaktiviert.'\n'Password recovery': Passwortwiederherstellung\n'Password Recovery': Passwortwiederherstellung\n'No user is registered with this email.': 'Unter dieser E-Mail ist kein Nutzer registriert.'\n'Forgot your password?': 'Passwort vergessen?'\n'Email: incorrect format.': 'E-Mail: falsches Format.'\nEmail: E-Mail\n'Bad input parameters.': 'Schlechte Eingabeparameter.'\n'There was an error trying to delete the file $1.': 'Fehler beim Löschen der Datei $1.'\n'The file $1 was deleted successfully.': 'Die Datei $1 wurde erfolgreich gelöscht.'\nSize: Größe\n'Restore file': 'Datei wiederherstellen'\nRestore: Wiederherstellen\nMb: MB\n'Free disk space': 'Freier Speicherplatz'\n'Download file': 'Datei herunterladen'\nDownload: Herunterladen\n'Delete file': 'Datei löschen'\n'Backup list is empty.': 'Leere Backupliste'\n'Are you sure you want to restore the file $1?': 'Sind Sie sicher, dass Sie die Datei $1 wiederherstellen möchten?'\n'Are you sure you want to delete the file $1?': 'Sind Sie sicher, dass Sie die Datei $1 löschen möchten?'\n'Import XML': 'XML importieren'\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': 'Sie benötigen die Erlaubnis, Ausgaben und Artikel hinzuzufügen/zu verändern, um die Autoren/innen für alle Artikel einzugeben.'\n'Select the field from which to generate the author': 'Wählen Sie ein Feld zur Erstellung von Autor/in.'\n'Invalid or empty field $1. You must select a valid dynamic field.': 'Ungültiges oder leeres Feld $1. Bitte wählen Sie ein gültiges dynamisches Feld.'\n'Unable to create author $1 for article no. $2 ($3) of type $4.': 'Autor/in $1 für Artikelnr. $2 ($3) vom Typ $4 kann nicht erstellt werden.'\n'There were errors setting the author for articles of type $1 from the field $2.': 'Fehler bei der Erstellung von Autor/in für Artikeltyp $1 vom Feld $2.'\n'The author was set successfuly for articles of type $1 from the field $2.': 'Autor/in für den Artikeltyp $1 vom Feld $2 wurde erfolgreich erstellt.'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Achtung: Der Artikel ist durch $1 ($2) seit $3 Minute(n) gesperrt.<br/>Du kannst die Sperrung aufheben, dabei gehen aber alle nicht gespeicherten Änderungen verloren. Bitte stelle sicher, dass $1 ($2) den Artikel nicht mehr am Bearbeiten ist.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Achtung: Der Artikel ist durch $1 ($2) seit $3 Stunde(n) und $4 Minute(n) gesperrt.<br/>Du kannst die Sperrung aufheben, dabei gehen aber alle nicht gespeicherten Änderungen verloren. Bitte stelle sicher, dass $1 ($2) den Artikel nicht mehr am Bearbeiten ist.'\n'Error setting the author $1 for article no. $2 ($3) of type $4.': 'Fehler bei der Erstellung von Autor/in $1 für die Artikelnr. $2 ($3) vom Typ $4.'\n'Clear system cache': 'System-Cache leeren'\n'The system was unable to upload the file $1. ': 'Das System konnte die Datei $1 nicht hochladen.'\n'Please check the file you are trying to upload, it might be corrupted.': 'Die Datei, die Sie hochladen möchten, könnte beschädigt sein.'\n'An error occurred in session management. Please reload the login page.': 'Ein Fehler beim Session Management ist aufgetreten. Bitte laden Sie die Login-Seite erneut.'\n'This file is stored on disk as $1.': 'Diese Datei ist als $1 gespeichert.'\n'The system is unable to write to the directory $1.': 'Das System konnte nicht auf das Verzeichnis $1 zugreifen.'\n'The system was unable to read the file $1.': 'Das System konnte die Datei $1 nicht lesen.'\n'The system was unable to delete the directory $1.': 'Das System konnte das Verzeichnis $1 nicht löschen.'\n'Please check if the user $1 has permission to read this file.': 'Bitte überprüfen Sie die Zugangsrechte von $.1'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'Bitte überprüfen Sie, ob das Verzeichnis leer ist und der Nutzer $1 Zugangsrechte zum Verzeichnis $2 besitzt.'\n'The system was unable to write to the file $1.': 'Das System konnte nicht auf die Datei $1 zugreifen.'\n'The system was unable to delete the file $1.': 'Das System konnte die Datei $1 nicht löschen.'\n'The system was unable to create the file $1.': 'Das System konnte die Datei $1 nicht erstellen.'\n'The system was unable to create the directory $1.': 'Das System konnte das Verzeichnis $1 nicht erstellen.'\n'Please check if the user $1 has permission to write to this file.': 'Bitte überprüfen Sie, ob der Nutzer $1 Zugangsrechte zu dieser Datei besitzt.'\n'Please check if the user $1 has permission to write to the directory $2.': 'Bitte überprüfen Sie, ob der Nutzer $1 Zugangsrechte zum Verzeichnis $2 besitzt.'\n'Type the code shown above:': 'Geben Sie den oben abgebildeten Sicherheitscode ein:'\n'Please enter your user name.': 'Bitte geben Sie Ihren Benutzernamen ein.'\n'Please enter your password.': 'Bitte geben Sie Ihr Passwort ein.'\n'Please enter the code shown in the image.': 'Bitte geben Sie den Sicherheitscode von der Abbildung ein.'\n'CAPTCHA code is not valid.  Please try again.': 'CAPTCHA Code ist ungültig. Bitte erneut versuchen.'\n'Signed in: $1': 'Angemeldet: $1'\nHelp: Hilfe\n'Please enter your user name and password': 'Bitte Benutzernamen und Passwort eingeben.'\n'You do not have the right to access this page.': 'Sie haben keine Zugangsrechte für diese Seite.'\n'Login failed': 'Login fehlgeschlagen'\n'Please make sure that you typed the correct user name and password.': 'Bitte prüfen, ob Benutzername und Passwort korrekt eingegeben wurden.'\n'If your problem persists please contact the site administrator $1': 'Sollte dieses Problem bestehen bleiben, bitte den Administrator $1 kontaktieren.'\nBackup/Restore: Backup/Wiederherstellung\n'Step 2': 'Schritt 2'\n'Step 3': 'Schritt 3'\n'Add new user': 'Neuen Nutzer hinzufügen'\n'Bad credentials': 'Falsche Zugangsdaten'\n'Active users': 'Aktive Nutzer'\n'New comments': 'Neue Kommentare'\n'Published articles': 'Publizierte Artikel'\n'Last 7 days statistics': 'Statistik für die letzten 7 Tage'\n'Change password': 'Passwort ändern'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.de_AT.yml",
    "content": "'Rename user': 'Nutzer umbenennen '\nCampsite: Newscoop\n'Image Rendering': Bildwiedergabe\n'Featured Article Lists': 'Listen ausgewählter Artikel'\n'You have tried to upload an invalid backup file.': 'Sie haben versucht eine ungültige Backup-Datei hochzuladen. '\n'You do not have the right to manage backups.': 'Sie haben keine Berechtigung, um Backups zu bearbeiten. '\n'Make a new backup': 'Backup erstellen'\n'Are you sure you want to make a new backup?': 'Wollen Sie wirklich ein neues  Backup erstellen? '\n'Security token expired. Please resubmit the form.': 'Sicherheitstoken abgelaufen. Bitte Formular erneut abschicken. '\nTemplates: Templates\n'Create slideshow': 'Bildstrecke erstellen'\nCreate: Erstellen\nAttach/Detach: Anhängen/Entkoppeln\n'Are you sure you want to delete slideshow?': 'Sind Sie sicher, dass Sie die Bildstrecke löschen wollen?'\nSupport: Support\n'Pending articles': 'Eingereichte Artikel'\n'Manage Users': 'Nutzer verwalten'\n'Manage User Types': 'Nutzertypen verwalten'\n'Manage User Points System': 'Nutzer-Punktesystem verwalten'\nLast: Letzte\nFirst: Erste\nFeedback: Feedback\n'Edit your password': 'Passwort bearbeiten'\n'Edit user': 'Nutzer bearbeiten'\n'Edit permissions': 'Berechtigung bearbeiten'\nDetail: Detail\n'Create new user': 'Neuen Nutzer anlegen'\n'Create new account': 'Neues Benutzerkonto anlegen'\n'Add feed': 'Feed hinzufügen'\n'Upload of file $1 was not successful.': 'Die Datei $1 wurde nicht hochgeladen.'\n'The file $1 could not be moved. Check you have enough of disk space.': 'Die Datei $1 konnte nicht verschoben werden. '\nMiB: MiB\n'Download was not successful. Check please that the server is not out of disk space.': 'Der Download war nicht erfolgreich. Bitte überprüfen Sie, ob genug Platz auf dem Server zur Verfügung steht. '\n'try again later': 'Bitte später wieder versuchen. '\nat: auf\n'You must at least upload one file.': 'Sie müssen mindestens eine Datei hochladen. '\n'Warning: the existing data and themes will be deleted!': 'Achtung: Die vorhandenen Daten und Themen werden gelöscht. '\n'Value is required and cant be empty': 'Der Wert ist erforderlich und kann nicht leer sein. '\nUpload: Upload\n'Update comment': 'Kommentar aktualisieren'\n'Time created': 'Zeitpunkt angelegt. '\nThemes: Themen\n'Stop current upload': 'Laufenden Upload abbrechen'\n'Start uploading queue': 'Upload Reihenfolge starten '\n'Start upload': 'Upload starten'\nSettings: 'Einstellungen '\n'Select files': 'Dateien auswählen'\nReply: Antworten\n'New comment added': 'Neuer Kommentar hinzugefügt'\n'Manage Authors': 'Autoren verwalten'\nLoading..: Lade...\nFilename: Dateiname\n'Edit user type': 'Nutzertyp bearbeiten'\n'Edit language': 'Sprache bearbeiten'\n'Drag files here.': 'Dateien hierher ziehen. '\n'Connection interrupted': 'Verbindung unterbrochen'\nBan: Sperre\n'Are you sure you want to': 'Sind Sie sicher, dass Sie wollen '\n'Add files to the upload queue and click the start button.': 'Fügen Sie Dateien zur Upload-Schlange hinzu und klicken Sie den Start Button. '\n'Add files': 'Datei hinzufügen. '\n'%value% is more than %max% characters long': '%value% ist mehr als  %max% Zeichen lang'\n'%value% is less than %min% characters long': '%value% ist weniger als  %min% Zeichen lang'\n'User name': Benutzername\nNewscoop: Newscoop\n'Your password has been reset.': 'Ihr Passwort wurde zurückgesetzt. '\n'Proceed to login.': 'Weiter zum Login. '\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': 'Zum Login'\n'Back to login.': 'Zurück zum Login. '\n'Back to login': 'Zurück zum Login. '\n'An email with instructions on how to recover you password has been sent to your inbox.': 'Eine Email mit Anweisung zum Zurücksetzen Ihres Passworts wurde an Ihre Email Adresse versendet. '\n'Session expired.': 'Session abgelaufen.'\nProcessing...: Bearbeite...\nPlease: Bitte\n'Go to dashboard': 'Zum Dashboard'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': 'Ihr Browser unterstützt kein Javascript oder Sie haben Javascript nicht aktiviert (das ist wahrscheinlicher). Bitte überpüfen Sie Ihre Einstellungen, um Newscoop nutzen zu können. '\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': 'Newscoop hat die Sicherheitseinstellungen aktualisiert. Bitte geben Sie Ihr Passwort erneut ein, um die neuen Einstellungen für Ihren Account zu übernehmen.'\n'Newscoop cache was cleaned up': 'Der Newscoop Cache wurde geleert.'\nDashboard: Dashboard\n'Your changes will be saved after login.': 'Ihre Änderungen werden nach dem Login übernommen.'\n'Upload backup file': 'Backup-Datei hochladen'\n'The file $1 has been uploaded successfully.': 'Die Datei $1 wurde erfolgreich hochgeladen.'\n'Media Archive': Medienarchiv\nWidgets: Widgets\n'Widget info': 'Widget Info'\n'Widget added to dashboard.': 'Das Widget wurde dem Dashboard hinzugefügt.'\n'Remove widget': 'Widget entfernen'\n'Please login to continue.': 'Bitte loggen Sie sich ein um fortzufahren'\n'Add to dashboard': 'Dem Dashboard hinzufügen'\n'Add more widgets': 'Weitere Widgets hinzufügen'\nlogin: Login\n'This link is not valid.': 'Ungültiger Link'\n'Recover password': 'Passwort wiederherstellen'\n'Please enter your email.': 'Bitte geben Sie Ihre E-Mail Adresse ein.'\n'Password recovery is disabled.': 'Die Passwortwiederherstellung ist deaktiviert.'\n'Password recovery': Passwortwiederherstellung\n'Password Recovery': Passwortwiederherstellung\n'No user is registered with this email.': 'Unter dieser E-Mail ist kein Nutzer registriert.'\n'Forgot your password?': 'Passwort vergessen?'\n'Email: incorrect format.': 'E-Mail: falsches Format.'\nEmail: E-Mail\n'Bad input parameters.': 'Schlechte Eingabeparameter.'\n'There was an error trying to delete the file $1.': 'Fehler beim Löschen der Datei $1.'\n'The file $1 was deleted successfully.': 'Die Datei $1 wurde erfolgreich gelöscht.'\nSize: Größe\n'Restore file': 'Datei wiederherstellen'\nRestore: Wiederherstellen\nMb: MB\n'Free disk space': 'Freier Speicherplatz'\n'Download file': 'Datei herunterladen'\nDownload: Herunterladen\n'Delete file': 'Datei löschen'\n'Backup list is empty.': 'Leere Backupliste'\n'Are you sure you want to restore the file $1?': 'Sind Sie sicher, dass Sie die Datei $1 wiederherstellen möchten?'\n'Are you sure you want to delete the file $1?': 'Sind Sie sicher, dass Sie die Datei $1 löschen möchten?'\n'Import XML': 'XML importieren'\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': 'Sie benötigen die Erlaubnis, Ausgaben und Artikel hinzuzufügen/zu verändern, um die Autoren/innen für alle Artikel einzugeben.'\n'Select the field from which to generate the author': 'Wählen Sie ein Feld zur Erstellung von Autor/in.'\n'Invalid or empty field $1. You must select a valid dynamic field.': 'Ungültiges oder leeres Feld $1. Bitte wählen Sie ein gültiges dynamisches Feld.'\n'Unable to create author $1 for article no. $2 ($3) of type $4.': 'Autor/in $1 für Artikelnr. $2 ($3) vom Typ $4 kann nicht erstellt werden.'\n'There were errors setting the author for articles of type $1 from the field $2.': 'Fehler bei der Erstellung von Autor/in für Artikeltyp $1 vom Feld $2.'\n'The author was set successfuly for articles of type $1 from the field $2.': 'Autor/in für den Artikeltyp $1 vom Feld $2 wurde erfolgreich erstellt.'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Achtung: Der Artikel ist durch $1 ($2) seit $3 Minute(n) gesperrt.<br/>Du kannst die Sperrung aufheben, dabei gehen aber alle nicht gespeicherten Änderungen verloren. Bitte stelle sicher, dass $1 ($2) den Artikel nicht mehr am Bearbeiten ist.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Achtung: Der Artikel ist durch $1 ($2) seit $3 Stunde(n) und $4 Minute(n) gesperrt.<br/>Du kannst die Sperrung aufheben, dabei gehen aber alle nicht gespeicherten Änderungen verloren. Bitte stelle sicher, dass $1 ($2) den Artikel nicht mehr am Bearbeiten ist.'\n'Error setting the author $1 for article no. $2 ($3) of type $4.': 'Fehler bei der Erstellung von Autor/in $1 für die Artikelnr. $2 ($3) vom Typ $4.'\n'Clear system cache': 'System-Cache leeren'\n'The system was unable to upload the file $1. ': 'Das System konnte die Datei $1 nicht hochladen.'\n'Please check the file you are trying to upload, it might be corrupted.': 'Die Datei, die Sie hochladen möchten, könnte beschädigt sein.'\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': 'Diese Datei ist als $1 gespeichert.'\n'The system is unable to write to the directory $1.': 'Das System konnte nicht auf das Verzeichnis $1 zugreifen.'\n'The system was unable to read the file $1.': 'Das System konnte die Datei $1 nicht lesen.'\n'The system was unable to delete the directory $1.': 'Das System konnte das Verzeichnis $1 nicht löschen.'\n'Please check if the user $1 has permission to read this file.': 'Bitte überprüfen Sie die Zugangsrechte von $.1'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'Bitte überprüfen Sie, ob das Verzeichnis leer ist und der Nutzer $1 Zugangsrechte zum Verzeichnis $2 besitzt.'\n'The system was unable to write to the file $1.': 'Das System konnte nicht auf die Datei $1 zugreifen.'\n'The system was unable to delete the file $1.': 'Das System konnte die Datei $1 nicht löschen.'\n'The system was unable to create the file $1.': 'Das System konnte die Datei $1 nicht erstellen.'\n'The system was unable to create the directory $1.': 'Das System konnte das Verzeichnis $1 nicht erstellen.'\n'Please check if the user $1 has permission to write to this file.': 'Bitte überprüfen Sie, ob der Nutzer $1 Zugangsrechte zu dieser Datei besitzt.'\n'Please check if the user $1 has permission to write to the directory $2.': 'Bitte überprüfen Sie, ob der Nutzer $1 Zugangsrechte zum Verzeichnis $2 besitzt.'\n'Type the code shown above:': 'Geben Sie den oben abgebildeten Sicherheitscode ein:'\n'Please enter your user name.': 'Bitte geben Sie Ihren Benutzernamen ein.'\n'Please enter your password.': 'Bitte geben Sie Ihr Passwort ein.'\n'Please enter the code shown in the image.': 'Bitte geben Sie den Sicherheitscode von der Abbildung ein.'\n'CAPTCHA code is not valid.  Please try again.': 'CAPTCHA Code ist ungültig. Bitte erneut versuchen.'\n'Signed in: $1': 'Angemeldet: $1'\nHelp: Hilfe\n'Please enter your user name and password': 'Bitte Benutzernamen und Passwort eingeben.'\n'You do not have the right to access this page.': 'Sie haben keine Zugangsrechte für diese Seite.'\n'Login failed': 'Login fehlgeschlagen'\n'Please make sure that you typed the correct user name and password.': 'Bitte prüfen, ob Benutzername und Passwort korrekt eingegeben wurden.'\n'If your problem persists please contact the site administrator $1': 'Sollte dieses Problem bestehen bleiben, bitte den Administrator $1 kontaktieren.'\nBackup/Restore: Backup/Wiederherstellung\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.el.yml",
    "content": "'Rename user': 'Μετονομασία χρήστη'\nCampsite: Campsite\n'Image Rendering': 'Απόδοση Εικόνας'\n'Featured Article Lists': 'Λίστες Προτεινόμενων Άρθρων'\n'You have tried to upload an invalid backup file.': 'Προσπαθήσατε να ανεβάσετε ένα άκυρο αρχείο αντιγράφου ασφαλείας.'\n'You do not have the right to manage backups.': 'Δεν έχετε το δικαίωμα διαχείρισης αντιγράφων ασφαλείας.'\n'Make a new backup': 'Δημιουργία νέου αντιγράφου ασφαλείας'\n'Are you sure you want to make a new backup?': 'Είστε σίγουρος/η ότι θέλετε να δημιουργήσετε νέο αντίγραφο ασφαλείας;'\n'Security token expired. Please resubmit the form.': 'Η συνεδρία έληξε. Παρακαλούμε υποβάλετε ξανά τη φόρμα.'\nTemplates: Πρότυπα\n'Create slideshow': 'Δημιουργία slideshow'\nCreate: Δημιουργία\nAttach/Detach: Επισύναψη/Αφαίρεση\n'Are you sure you want to delete slideshow?': 'Είστε σίγουρος/η ότι θέλετε να διαγράψετε το slideshow;'\nSupport: Υποστήριξη\n'Pending articles': 'Εκκρεμή άρθρα'\n'Manage Users': 'Διαχείριση Χρηστών'\n'Manage User Types': 'Διαχείριση Τύπου Χρηστών'\n'Manage User Points System': 'Διαχείριση Συστήματος Σημείων Χρήστη'\nLast: Τελευταίο\nFirst: Πρώτο\nFeedback: Feedback\n'Edit your password': 'Επεξεργασία κωδικού πρόσβασης'\n'Edit user': 'Επεξεργασία χρήστη'\n'Edit permissions': 'Επεξεργασία δικαιωμάτων'\nDetail: Λεπτομέρεια\n'Create new user': 'Δημιουργία νέου χρήστη'\n'Create new account': 'Δημιουργία νέου λογαριασμού'\n'Add feed': 'Προσθήκη feed'\n'Upload of file $1 was not successful.': 'Το ανέβασμα του αρχείου $1δεν ήταν επιτυχές.'\n'The file $1 could not be moved. Check you have enough of disk space.': 'Το αρχείο $1 δεν μπόρεσε να μετακινηθεί. Ελέγξτε τον εναπομέιναντα ελεύθερο χώρο του δίσκου σας.'\nMiB: MiB\n'Download was not successful. Check please that the server is not out of disk space.': 'Το κατέβασμα δεν ήταν επιτυχές. Παρακαλούμε ελέγξτε τον εναπομέιναντα ελεύθερο χώρο του διακομιστή σας.'\n'try again later': 'Προσπαθήστε ξανά αργότερα'\nat: σε\n'You must at least upload one file.': 'Πρέπει να ανεβάσετε τουλάχιστον ένα αρχείο.'\n'Warning: the existing data and themes will be deleted!': 'Προειδοποίηση: τα υπάρχοντα στοιχεία και θέματα θα διαγραφούν!'\n'Value is required and cant be empty': 'Η αξία απαιτέιται και δεν μπορεί να παραμείνει κενή'\nUpload: Ανέβασμα\n'Update comment': 'Ενημέρωση σχολίου'\n'Time created': 'Η ώρα δημιουργήθηκε'\nThemes: Θέματα\n'Stop current upload': 'Διακοπή τρέχοντος ανεβάσματος'\n'Start uploading queue': 'Έναρξη ανεβάσματος ουράς '\n'Start upload': 'Έναρξη ανεβάσματος'\nSettings: Ρυθμίσεις\n'Select files': 'Επιλογή αρχείων'\nReply: Απάντηση\n'New comment added': 'Προστέθηκε νέο σχόλιο'\n'Manage Authors': 'Διαχείριση συγγραφέων'\nLoading..: Φόρτωση...\nFilename: 'Όνομα αρχείου'\n'Edit user type': 'Επεξεργασία τύπου χρήστη'\n'Edit language': 'Επεξεργασία γλώσσας'\n'Drag files here.': 'Σύρετε τα αρχεία σας εδώ.'\n'Connection interrupted': 'Η σύνδεση διεκόπει'\nBan: Απαγόρευση\n'Are you sure you want to': 'Είστε σίγουρος/η ότι θέλετε να'\n'Add files to the upload queue and click the start button.': 'Προσθέστε αρχεία στην ουρά ανεβάσματος και κάντε κλίκ στο κουμπί έναρξης.'\n'Add files': 'Προσθήκη αρχείων'\n'%value% is more than %max% characters long': 'Η αξία %value%  είναι μεγαλύτερη από %max% χαρακτήρες'\n'%value% is less than %min% characters long': 'Η αξία %value%  είναι μικρότερη από %max% χαρακτήρες'\n'User name': 'Όνομα Χρήστη'\nNewscoop: Newscoop\n'Your password has been reset.': 'Έγινε επαναφορά του κωδικού πρόσβασής σας.'\n'Proceed to login.': 'Προχωρήστε στη σύνδεση.'\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': 'Πηγαίνετε στη σύνδεση'\n'Back to login.': 'Πίσω στη σύνδεση.'\n'Back to login': 'Πίσω στη σύνδεση'\n'An email with instructions on how to recover you password has been sent to your inbox.': 'Ένα mail με οδηγίες για το πώς να ανακτήσετε τον κωδικό πρόσβασης, σας έχει σταλεί στα εισερχόμενά σας.'\n'Session expired.': 'Η συνεδρία έληξε.'\nProcessing...: Επεξεργασία...\nPlease: Παρακαλούμε\n'Go to dashboard': 'Πήγαινε στον πίνακα'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': 'Το πρόγραμμα περιήγησής σας δεν υποστηρίζει την Javascript ή (πιθανότερα) την έχετε απενεργοποιημένη. Παρακαλούμε ενεργοποιήστε την για να μπορέσετε να χρησιμοποιήσετε το Newscoop. '\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': 'Το Newscoop αναβάθμισε τα μέτρα ασφαλείας του. Για να αναβαθμίσετε τον λογαριασμό σας ώστε  να χρησιμοποιήσει αυτά τα μέτρα, πρέπει να επανεισάγετε τον κωδικό πρόσβασής σας.'\n'Newscoop cache was cleaned up': 'Η προσωρινή μνήμη Newscoop εκκαθαρίστηκε'\nDashboard: Πίνακας\n'Your changes will be saved after login.': 'Οι αλλαγές σας θα αποθηκευτούν μετά την είσοδο.'\n'Upload backup file': 'Ανέβασμα αρχείο αντιγράφου ασφαλείας'\n'The file $1 has been uploaded successfully.': 'Το αρχείο $1 ανέβηκε επιτυχώς.'\n'Media Archive': 'Αρχείο Πολυμέσων'\nWidgets: Widgets\n'Widget info': 'Πληροφορίες Widget'\n'Widget added to dashboard.': 'Το Widget προστέθηκε στον πίνακα.'\n'Remove widget': 'Αφαίρεση Widget'\n'Please login to continue.': 'Παρακαλούμε πραγματοποιήστε είσοδο για να συνεχίσετε.'\n'Add to dashboard': 'Προσθήκη στον πίνακα'\n'Add more widgets': 'Προσθήκη περισσότερων widgets'\nlogin: Σύνδεση\n'This link is not valid.': 'Ο σύνδεσμος δεν είναι έγκυρος.'\n'Recover password': 'Ανάκτηση κωδικού πρόσβασης'\n'Please enter your email.': 'Παρακαλούμε εισάγετε το email σας.'\n'Password recovery is disabled.': 'Η ανάκτηση κωδικού πρόσβασης είναι απενεργοποιημένη.'\n'Password recovery': 'Ανάκτηση κωδικού πρόσβασης'\n'Password Recovery': 'Ανάκτηση κωδικού πρόσβασης'\n'No user is registered with this email.': 'Κανένας χρήστης δεν είναι εγγεγραμμένος με αυτό το email.'\n'Forgot your password?': 'Ξεχάσατε τον κωδικό πρόσβασής σας?'\n'Email: incorrect format.': 'Email: λάθος μορφή.'\nEmail: Email\n'Bad input parameters.': 'Κακή εισαγωγή παραμέτρων.'\n'There was an error trying to delete the file $1.': 'Υπήρξε πρόβλημα στην προσπάθεια διαγραφής του αρχείου $1.'\n'The file $1 was deleted successfully.': 'Το αρχείο $1 διαγράφηκε επιτυχώς.'\nSize: Μέγεθος\n'Restore file': 'Επαναφορά αρχείου'\nRestore: Επαναφορά\nMb: Mb\n'Free disk space': 'Ελεύθερος χώρος δίσκου'\n'Download file': 'Κατέβασμα αρχείου'\nDownload: Download\n'Delete file': 'Διαγραφή αρχείου'\n'Backup list is empty.': 'Η λίστα του αντιγράφου ασφαλείας είναι άδεια.'\n'Are you sure you want to restore the file $1?': 'Είστε σίγουρος/η ότι θέλετε να επαναφέρετε το αρχείο $1;'\n'Are you sure you want to delete the file $1?': 'Είστε σίγουρος/η ότι θέλετε να διαγράψετε το αρχείο $1;'\n'Import XML': 'Εισαγωγή XML'\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': 'Πρέπει να έχετε την άδεια για προσθήκη/αλλαγή τευχών και άρθρων για να ρυθμίσετε τον συγγραφέα όλων των άρθρων.'\n'Select the field from which to generate the author': 'Επιλέξτε το πεδίο, από το οποίο θα δημιουργήσετε τον συγγραφέα'\n'Invalid or empty field $1. You must select a valid dynamic field.': 'Μή έγκυρο ή άδειο πεδίο $1. Πρέπει να επιλέξετε ένα έγκυρο δυναμικό πεδίο.'\n'Unable to create author $1 for article no. $2 ($3) of type $4.': 'Ήταν αδύνατον να δημιουργηθεί ο συγγραφέας $1 για το άρθρο αρ. $2 ($3) τύπου $4.'\n'There were errors setting the author for articles of type $1 from the field $2.': 'Παρουσιάστηκαν σφάλματα κατά την ρύθμιση του συγγραφέα για άρθρα τύπου $1 από το πεδίο $2.'\n'The author was set successfuly for articles of type $1 from the field $2.': 'Ο συγγραφέας ρυθμίστηκε επιτυχώς για τα άρθρα τύπου $1 από το πεδίο $2.'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Το άρθρο κλειδώθηκε από $1 ($2) πριν από $3 λεπτό/ά.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Το άρθρο κλειδώθηκε από $1 ($2) πριν από $3 ώρα/ες και $4 λεπτό/ά.'\n'Error setting the author $1 for article no. $2 ($3) of type $4.': 'Σφάλμα κατά τη ρύθμιση του συγγραφέα $1 για το άρθρο αρ. $2 ($3) τύπου $4.'\n'Clear system cache': 'Εκκαθάριση προσωρινής μνήμης'\n'The system was unable to upload the file $1. ': 'Το σύστημα δεν μπόρεσε να ανεβάσει το αρχείο $1.'\n'Please check the file you are trying to upload, it might be corrupted.': 'Παρακαλούμε ελέγξτε το αρχείο που προσπαθείτε να ανεβάσετε, γιατί μπορεί να είναι κατεστραμένο.'\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': 'Το αρχείο είναι αποθηκευμένο στον δίσκο ως $1.'\n'The system is unable to write to the directory $1.': 'Το σύστημα δεν μπορεί να γράψει στον κατάλογο $1.'\n'The system was unable to read the file $1.': 'Το σύστημα δεν μπόρεσε να διαβάσει το αρχείο $1.'\n'The system was unable to delete the directory $1.': 'Το σύστημα δεν μπόρεσε να διαγράψει τον κατάλογο $1.'\n'Please check if the user $1 has permission to read this file.': 'Παρακαλούμε ελένξτε εάν ο χρήστης $1 έχει άδεια ανάγνωσης αυτού του αρχείου.'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'Παρακαλούμε ελένξτε εάν ο χρήστης $1 έχει άδεια συγγραφής στον κατάλογο $2.'\n'The system was unable to write to the file $1.': 'Το σύστημα δεν μπόρεσε να γράψει στο αρχείο $1.'\n'The system was unable to delete the file $1.': 'Το σύστημα δεν μπόρεσε να διαγράψει το αρχείο $1.'\n'The system was unable to create the file $1.': 'Το σύστημα δεν μπόρεσε να δημιουργήσει το αρχείο $1.'\n'The system was unable to create the directory $1.': 'Το σύστημα δεν μπόρεσε να δημιουργήσει τον κατάλογο $1.'\n'Please check if the user $1 has permission to write to this file.': 'Παρακαλούμε ελένξτε εάν ο χρήστης $1 έχει άδεια συγγραφής αυτού του αρχείου.'\n'Please check if the user $1 has permission to write to the directory $2.': 'Παρακαλούμε ελένξτε εάν ο χρήστης $1 έχει άδεια συγγραφής στον κατάλογο $2.'\n'Type the code shown above:': 'Πληκτρολογήστε τον κωδικό που εμφανίζεται παραπάνω:'\n'Please enter your user name.': 'Παρακαλούμε εισάγετε το όνομα χρήστη.'\n'Please enter your password.': 'Παρακαλώ εισάγετε τον κωδικό πρόσβασης.'\n'Please enter the code shown in the image.': 'Παρακαλώ εισάγετε τον κωδικό που εμφανίζεται στην εικόνα.'\n'CAPTCHA code is not valid.  Please try again.': 'Ο κωδικός CAPTCHA δεν είναι έγκυρος. Παρακαλούμε προσπαθήστε ξανά.'\n'Signed in: $1': 'Εγγεγραμμένοι: $1'\nHelp: Βοήθεια\n'Please enter your user name and password': 'Παρακαλώ εισάγετε το όνομα χρήστη και τον κωδικό πρόσβασης'\n'You do not have the right to access this page.': 'Δεν έχετε το δικαίωμα να εισέλθετε σε αυτή τη σελίδα.'\n'Login failed': 'Η είσοδος απέτυχε'\n'Please make sure that you typed the correct user name and password.': 'Παρακαλούμε επιβεβαιωθείτε ότι πληκτρολογήσατε το σωστό όνομα χρήστη και κωδικό πρόσβασης.'\n'If your problem persists please contact the site administrator $1': 'Αν το πρόβλημα παραμένει, παρακαλούμε επικοινωνήστε με τον διαχειριστή του ιστοτόπου $1'\nBackup/Restore: 'Αντίγραφο ασφαλείας/ Επαναφορά'\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.en.yml",
    "content": "'Rename user': 'Rename user'\nCampsite: Campsite\n'Image Rendering': 'Image Rendering'\n'Featured Article Lists': 'Featured Article Lists'\n'You have tried to upload an invalid backup file.': 'You have tried to upload an invalid backup file.'\n'You do not have the right to manage backups.': 'You do not have the right to manage backups.'\n'Make a new backup': 'Make a new backup'\n'Are you sure you want to make a new backup?': 'Are you sure you want to make a new backup?'\n'Security token expired. Please resubmit the form.': 'Security token expired. Please resubmit the form.'\nTemplates: Templates\n'Create slideshow': 'Create slideshow'\nCreate: Create\nAttach/Detach: Attach/Detach\n'Are you sure you want to delete slideshow?': 'Are you sure you want to delete slideshow?'\nSupport: Support\n'Pending articles': 'Pending articles'\n'Manage Users': 'Manage Users'\n'Manage User Types': 'Manage User Types'\n'Manage User Points System': 'Manage User Points System'\nLast: Last\nFirst: First\nFeedback: Feedback\n'Edit your password': 'Edit your password'\n'Edit user': 'Edit user'\n'Edit permissions': 'Edit permissions'\nDetail: Detail\n'Create new user': 'Create new user'\n'Create new account': 'Create new account'\n'Add feed': 'Add feed'\n'Upload of file $1 was not successful.': 'Upload of file $1 was not successful.'\n'The file $1 could not be moved. Check you have enough of disk space.': 'The file $1 could not be moved. Check you have enough of disk space.'\nMiB: MiB\n'Download was not successful. Check please that the server is not out of disk space.': 'Download was not successful. Check please that the server is not out of disk space.'\n'try again later': 'try again later'\nat: at\n'You must at least upload one file.': 'You must at least upload one file.'\n'Warning: the existing data and themes will be deleted!': 'Warning: the existing data and themes will be deleted!'\n'Value is required and cant be empty': 'Value is required and cant be empty'\nUpload: Upload\n'Update comment': 'Update comment'\n'Time created': 'Time created'\nThemes: Themes\n'Stop current upload': 'Stop current upload'\n'Start uploading queue': 'Start uploading queue'\n'Start upload': 'Start upload'\nSettings: Settings\n'Select files': 'Select files'\nReply: Reply\n'New comment added': 'New comment added'\n'Manage Authors': 'Manage Authors'\nLoading..: Loading..\nFilename: Filename\n'Edit user type': 'Edit user type'\n'Edit language': 'Edit language'\n'Drag files here.': 'Drag files here.'\n'Connection interrupted': 'Connection interrupted'\nBan: Ban\n'Are you sure you want to': 'Are you sure you want to'\n'Add files to the upload queue and click the start button.': 'Add files to the upload queue and click the start button.'\n'Add files': 'Add files'\n'%value% is more than %max% characters long': '%value% is more than %max% characters long'\n'%value% is less than %min% characters long': '%value% is less than %min% characters long'\n'User name': 'User name'\nNewscoop: Newscoop\n'Your password has been reset.': 'Your password has been reset.'\n'Proceed to login.': 'Proceed to login.'\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': 'Go to login'\n'Back to login.': 'Back to login.'\n'Back to login': 'Back to login'\n'An email with instructions on how to recover you password has been sent to your inbox.': 'An email with instructions on how to recover you password has been sent to your inbox.'\n'Session expired.': 'Session expired.'\nProcessing...: Processing...\nPlease: Please\n'Go to dashboard': 'Go to dashboard'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': 'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.'\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': 'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.'\n'Newscoop cache was cleaned up': 'Newscoop cache was cleaned up'\nDashboard: Dashboard\n'Your changes will be saved after login.': 'Your changes will be saved after login.'\n'Upload backup file': 'Upload backup file'\n'The file $1 has been uploaded successfully.': 'The file $1 has been uploaded successfully.'\n'Media Archive': 'Media Archive'\nWidgets: Widgets\n'Widget info': 'Widget info'\n'Widget added to dashboard.': 'Widget added to dashboard.'\n'Remove widget': 'Remove widget'\n'Please login to continue.': 'Please login to continue.'\n'Add to dashboard': 'Add to dashboard'\n'Add more widgets': 'Add more widgets'\nlogin: login\n'This link is not valid.': 'This link is not valid.'\n'Recover password': 'Recover password'\n'Please enter your email.': 'Please enter your email.'\n'Password recovery is disabled.': 'Password recovery is disabled.'\n'Password recovery': 'Password recovery'\n'Password Recovery': 'Password Recovery'\n'No user is registered with this email.': 'No user is registered with this email.'\n'Forgot your password?': 'Forgot your password?'\n'Email: incorrect format.': 'Email: incorrect format.'\nEmail: Email\n'Bad input parameters.': 'Bad input parameters.'\n'There was an error trying to delete the file $1.': 'There was an error trying to delete the file $1.'\n'The file $1 was deleted successfully.': 'The file $1 was deleted successfully.'\nSize: Size\n'Restore file': 'Restore file'\nRestore: Restore\nMb: Mb\n'Free disk space': 'Free disk space'\n'Download file': 'Download file'\nDownload: Download\n'Delete file': 'Delete file'\n'Backup list is empty.': 'Backup list is empty.'\n'Are you sure you want to restore the file $1?': 'Are you sure you want to restore the file $1?'\n'Are you sure you want to delete the file $1?': 'Are you sure you want to delete the file $1?'\n'Import XML': 'Import XML'\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': 'You must have the permissions to add/change issues and articles in order to set the author for all articles.'\n'Select the field from which to generate the author': 'Select the field from which to generate the author'\n'Invalid or empty field $1. You must select a valid dynamic field.': 'Invalid or empty field $1. You must select a valid dynamic field.'\n'Unable to create author $1 for article no. $2 ($3) of type $4.': 'Unable to create author $1 for article no. $2 ($3) of type $4.'\n'There were errors setting the author for articles of type $1 from the field $2.': 'There were errors setting the author for articles of type $1 from the field $2.'\n'The author was set successfuly for articles of type $1 from the field $2.': 'The author was set successfuly for articles of type $1 from the field $2.'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'The article has been locked by $1 ($2) $3 minute(s) ago.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.'\n'Error setting the author $1 for article no. $2 ($3) of type $4.': 'Error setting the author $1 for article no. $2 ($3) of type $4.'\n'Clear system cache': 'Clear system cache'\n'The system was unable to upload the file $1. ': 'The system was unable to upload the file $1. '\n'Please check the file you are trying to upload, it might be corrupted.': 'Please check the file you are trying to upload, it might be corrupted.'\n'An error occurred in session management. Please reload the login page.': 'An error occurred in session management. Please reload the login page.'\n'This file is stored on disk as $1.': 'This file is stored on disk as $1.'\n'The system is unable to write to the directory $1.': 'The system is unable to write to the directory $1.'\n'The system was unable to read the file $1.': 'The system was unable to read the file $1.'\n'The system was unable to delete the directory $1.': 'The system was unable to delete the directory $1.'\n'Please check if the user $1 has permission to read this file.': 'Please check if the user $1 has permission to read this file.'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'Please check if the directory is empty and the user $1 has permission to write to the directory $2.'\n'The system was unable to write to the file $1.': 'The system was unable to write to the file $1.'\n'The system was unable to delete the file $1.': 'The system was unable to delete the file $1.'\n'The system was unable to create the file $1.': 'The system was unable to create the file $1.'\n'The system was unable to create the directory $1.': 'The system was unable to create the directory $1.'\n'Please check if the user $1 has permission to write to this file.': 'Please check if the user $1 has permission to write to this file.'\n'Please check if the user $1 has permission to write to the directory $2.': 'Please check if the user $1 has permission to write to the directory $2.'\n'Type the code shown above:': 'Type the code shown above:'\n'Please enter your user name.': 'Please enter your user name.'\n'Please enter your password.': 'Please enter your password.'\n'Please enter the code shown in the image.': 'Please enter the code shown in the image.'\n'CAPTCHA code is not valid.  Please try again.': 'CAPTCHA code is not valid.  Please try again.'\n'Signed in: $1': 'Signed in: $1'\nHelp: Help\n'Please enter your user name and password': 'Please enter your user name and password'\n'You do not have the right to access this page.': 'You do not have the right to access this page.'\n'Login failed': 'Login failed'\n'Please make sure that you typed the correct user name and password.': 'Please make sure that you typed the correct user name and password.'\n'If your problem persists please contact the site administrator $1': 'If your problem persists please contact the site administrator $1'\nBackup/Restore: Backup/Restore\n'Step 2': 'Step 2'\n'Step 3': 'Step 3'\n'Add new user': 'Add new user'\n'Bad credentials': 'Bad credentials'\n'Active users': 'Active users'\n'New comments': 'New comments'\n'Published articles': 'Published articles'\n'Last 7 days statistics': 'Last 7 days statistics'\n'Change password': 'Change password'"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.en.yml~",
    "content": "'Rename user': 'Zmień nazwę'\nCampsite: Campsite\n'Image Rendering': 'Przetwarzanie zdjęć'\n'Featured Article Lists': 'Polecane artykuły'\n'You have tried to upload an invalid backup file.': 'Prubujesz wgrac plik który nie jest prawidłową kopią zapasową.'\n'You do not have the right to manage backups.': 'Nie masz uprawnień do zarządzania kopiami zapasowymi.'\n'Make a new backup': 'Utwórz nową kopię bezpieczeństwa'\n'Are you sure you want to make a new backup?': 'Jesteś pewien czy chcesz zrobić nową kopię zapasową?'\n'Security token expired. Please resubmit the form.': 'Klucz bezpieczeństwa wygasł. Wyślij formularz ponownie.'\nTemplates: Szablony\n'Create slideshow': 'Utwórz galerię'\nCreate: Utwórz\nAttach/Detach: Dodaj/Usuń\n'Are you sure you want to delete slideshow?': 'Jesteś pewien że chcesz usunąć tą galerię?'\nSupport: Pomoc\n'Pending articles': 'Oczekujące artykuły'\n'Manage Users': 'Zarządzaj użytkownikami'\n'Manage User Types': 'Zarządzaj typami użytkowników'\n'Manage User Points System': 'Zarządzaj systemem punktów dla uzytkowników'\nLast: Ostatni\nFirst: Pierwszy\nFeedback: Feedback\n'Edit your password': 'Zmień swoje hasło'\n'Edit user': 'Edytuj użytkownika'\n'Edit permissions': 'Zmień uprawnienia'\nDetail: Szczeguły\n'Create new user': 'Utwórz nowego użytkownika'\n'Create new account': 'Stwórz nowe konto'\n'Add feed': 'Dodaj źródło'\n'Upload of file $1 was not successful.': 'Przesyłanie pliku $1 nie powiodło się.'\n'The file $1 could not be moved. Check you have enough of disk space.': 'Plik $1 nie może być przeniesiony. Upewnij się że masz wystarczającą ilość wolnego miejsca na dysku.'\nMiB: MiB\n'Download was not successful. Check please that the server is not out of disk space.': 'Pobieranie nie powiodło się. Upewnij się czy masz wystarczającą ilość wolnego miejsca na dysku.'\n'try again later': 'spróbuj ponownie później'\nat: w\n'You must at least upload one file.': 'Musisz przesłać przynajmniej jeden plik.'\n'Warning: the existing data and themes will be deleted!': 'Uwaga: istniejące dane i szablony mogą zostać usunięte. '\n'Value is required and cant be empty': 'Wartość jest wymagana i nie może być pusta.'\nUpload: Wgraj\n'Update comment': 'Zmień komentarz'\n'Time created': 'Data utworzenia'\nThemes: Szablony\n'Stop current upload': 'Zatrzymaj aktualne przesyłanie.'\n'Start uploading queue': 'Uruchom kolejkę przesyłania.'\n'Start upload': 'Uruchom przesyłanie.'\nSettings: Ustawienia\n'Select files': 'Wybierz pliki'\nReply: Odpowiedz\n'New comment added': 'Nowy komentarz został dodany'\n'Manage Authors': 'Zarządzaj autorami'\nLoading..: Ładowanie..\nFilename: 'Nazwa pliku'\n'Edit user type': 'Zmień typ użytkownika'\n'Edit language': 'Zmień jezyk'\n'Drag files here.': 'Przeciągnij pliki tutaj'\n'Connection interrupted': 'Połączenie zostało przerwane'\nBan: Blokada\n'Are you sure you want to': 'Jesteś pewien że chcesz to zrobić?'\n'Add files to the upload queue and click the start button.': 'Dodaj pliki do kolejki przesyłania i kliknij przycisk rozpoczęcia.'\n'Add files': 'Dodaj pliki'\n'%value% is more than %max% characters long': '%value% ma więcej znaków niż %max%'\n'%value% is less than %min% characters long': '%value% jest krótsze niż wymagane %min% znaków'\n'User name': Login\nNewscoop: Newscoop\n'Your password has been reset.': 'Twoje hasło zostało zresetowane.'\n'Proceed to login.': 'Przejdź do logowania'\n'Hi, nnfor password recovery, please follow this link: $1': 'Cześć, nnaby odzyskać hasło przejdź na tą stronę: $1'\n'Go to login': 'Przejdź do logowania'\n'Back to login.': 'Wróć do logowania'\n'Back to login': 'Wróć do logowania'\n'An email with instructions on how to recover you password has been sent to your inbox.': 'Wiadomość z instrukcjami odzyskiwania hasła został wysłany na twoją skrzynkę email.'\n'Session expired.': 'Sesja wygasła.'\nProcessing...: Przetwarzanie...\nPlease: Proszę\n'Go to dashboard': 'Idź do panelu'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': 'Twoja przeglądarka nie obsługuje Javascript albo (bardziej prawdopodobne) obsługa Javascript jest nieaktywna. Napraw to zanim zaczniesz pracę z Newscoop.'\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': 'Newscoop dokonał aktualizacji zabezpieczeń. Aby zaktulizować swoje konto i skorzystać z nowych zasad bezpieczeństwa, wprowadź swoje hasło.'\n'Newscoop cache was cleaned up': 'Cache Newscoop został usunięty'\nDashboard: Panel\n'Your changes will be saved after login.': 'Twoje zmiany zostaną zapisane po zalogowaniu.'\n'Upload backup file': 'Wgraj plik kopii zapasowej'\n'The file $1 has been uploaded successfully.': 'Plik $1 został dodany pomyślnie.'\n'Media Archive': 'Archiwum Mediów'\nWidgets: Widgety\n'Widget info': 'Informacje o widgecie'\n'Widget added to dashboard.': 'Widget został dodany do panelu.'\n'Remove widget': 'Usuń widget'\n'Please login to continue.': 'Zaloguj się aby kontynuować'\n'Add to dashboard': 'Dodaj do panelu'\n'Add more widgets': 'Dodaj więcej widgetów'\nlogin: logowanie\n'This link is not valid.': 'Link jest niepoprawny.'\n'Recover password': 'Odzyskaj hasło'\n'Please enter your email.': 'Podaj adres email.'\n'Password recovery is disabled.': 'Odzyskiwanie haseł jest zablokowane.'\n'Password recovery': 'Odzyskiwanie hasła'\n'Password Recovery': 'Odzyskiwanie Hasła'\n'No user is registered with this email.': 'Brak użytkownika z podanym adresem email.'\n'Forgot your password?': 'Zapomniałeś hasła?'\n'Email: incorrect format.': 'Email: niepoprawny format.'\nEmail: Email\n'Bad input parameters.': 'Złe parametry wejściowe.'\n'There was an error trying to delete the file $1.': 'Wystąpił błąd podczas usuwania pliku $1.'\n'The file $1 was deleted successfully.': 'Plik $1 został usunięty pomyślnie.'\nSize: Rozmiar\n'Restore file': 'Przywróć plik'\nRestore: Przywróć\nMb: Mb\n'Free disk space': 'Wolna przestrzeń dysku'\n'Download file': 'Pobierz plik'\nDownload: Pobierz\n'Delete file': 'Usuń plik'\n'Backup list is empty.': 'Lista backuou jest pusta'\n'Are you sure you want to restore the file $1?': 'Czy na pewno chcesz przywrócić plik $1?'\n'Are you sure you want to delete the file $1?': 'Czy na pewno chcesz usunąć plik $1?'\n'Import XML': 'Improtuj XML'\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': 'Musisz posiadać uprawnienia do dodawania/zmieniania publikacji aby ustawić autorów dla wszystkich artykułów.'\n'Select the field from which to generate the author': 'Wybierz pole, z którego wygenerować autora'\n'Invalid or empty field $1. You must select a valid dynamic field.': 'Niepoprawne albo puste pole $1. Musisz wybrać porawne pole dynamiczne.'\n'Unable to create author $1 for article no. $2 ($3) of type $4.': 'Nie można utworzyć autora $1 do artykułu numer $2 ($3) typu $4.'\n'There were errors setting the author for articles of type $1 from the field $2.': \"Wystąpił\\_błąd podczas ustawiania autora dla artykułu typu $1 z pola $2.\"\n'The author was set successfuly for articles of type $1 from the field $2.': 'Pomyślnie ustawiono autora dla artykułu typu $1 z pola $2.'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Artykuł został zablokowany przez $1 ($2) $3 minut(y) temu.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Artykuł został zablokowany przez $1 ($2) $3 godziny i $4 minut(y) temu.'\n'Error setting the author $1 for article no. $2 ($3) of type $4.': 'Błąd przy tworzeniu autora $1 do artykułu numer $2 ($3) typu $4.'\n'Clear system cache': 'Oczyść cache systemowy'\n'The system was unable to upload the file $1. ': 'System nie mógł dodać pliku $1.'\n'Please check the file you are trying to upload, it might be corrupted.': 'Sprawdź plik, który próbujesz dodać, możliwe że jest uszkodzony.'\n'An error occurred in session management. Please reload the login page.': 'Wystąpił błąd przy zarządzaniu sesją. Załaduj stronę logowania ponownie.'\n'This file is stored on disk as $1.': 'Plik jest zachowany na dysku jako $1.'\n'The system is unable to write to the directory $1.': 'Syste nie może zapisywać do folderu $1.'\n'The system was unable to read the file $1.': 'System nie może czytać pliku $1.'\n'The system was unable to delete the directory $1.': 'System nie może skasować folderu $1.'\n'Please check if the user $1 has permission to read this file.': 'Sprawdź czy użytkownik $1 ma prawa aby odczytywać ten plik.'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'Spradź czy folder jest pusty a użytkownik $1 ma prawa zapisywać do folderu $2.'\n'The system was unable to write to the file $1.': 'System nie mógł zapisywać pliku $1.'\n'The system was unable to delete the file $1.': 'System nie mógł usunąć pliku $1.'\n'The system was unable to create the file $1.': 'System nie mógł utworzyć pliku $1.'\n'The system was unable to create the directory $1.': 'System nie mógł utworzyć folderu $1.'\n'Please check if the user $1 has permission to write to this file.': 'Sprawdź czy użytkownik $1 ma prawa aby zapisywać do tego pliku.'\n'Please check if the user $1 has permission to write to the directory $2.': 'Sprawdź czy użytkownik $1 ma prawa aby zapisywać do folderu $2.'\n'Type the code shown above:': 'Wprowadź kod podany powyżej:'\n'Please enter your user name.': 'Podaj nazwę użytkownika.'\n'Please enter your password.': 'Podaj swoje hasło.'\n'Please enter the code shown in the image.': 'Podaj kod podany na obrazku.'\n'CAPTCHA code is not valid.  Please try again.': 'Kod CAPTCHA jest nie poprawny. Spróbuj ponownie.'\n'Signed in: $1': 'Zalogowano: $1'\nHelp: Pomoc\n'Please enter your user name and password': 'Wprowadź nazwę użytkownika i hasło'\n'You do not have the right to access this page.': 'Nie masz praw do przeglądania tej strony'\n'Login failed': 'Logowanie nie powiodło się'\n'Please make sure that you typed the correct user name and password.': 'Upewnij się, że podana nazwa i hasła są poprawne'\n'If your problem persists please contact the site administrator $1': 'Jeśli problem występuje ponownie skontaktuj się z administratorem $1'\nBackup/Restore: 'Backup / Przywróć'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.en_GB.yml",
    "content": "'Rename user': 'Rename user'\nCampsite: Campsite\n'Image Rendering': 'Image Rendering'\n'Featured Article Lists': 'Featured Article Lists'\n'You have tried to upload an invalid backup file.': 'You have tried to upload an invalid backup file.'\n'You do not have the right to manage backups.': 'You do not have the right to manage backups.'\n'Make a new backup': 'Make a new backup'\n'Are you sure you want to make a new backup?': 'Are you sure you want to make a new backup?'\n'Security token expired. Please resubmit the form.': 'Security token expired. Please resubmit the form.'\nTemplates: Templates\n'Create slideshow': 'Create slideshow'\nCreate: Create\nAttach/Detach: Attach/Detach\n'Are you sure you want to delete slideshow?': 'Are you sure you want to delete slideshow?'\nSupport: Support\n'Pending articles': 'Pending articles'\n'Manage Users': 'Manage Users'\n'Manage User Types': 'Manage User Types'\n'Manage User Points System': 'Manage User Points System'\nLast: Last\nFirst: First\nFeedback: Feedback\n'Edit your password': 'Change your password'\n'Edit user': 'Edit user'\n'Edit permissions': 'Edit permissions'\nDetail: Detail\n'Create new user': 'Create new user'\n'Create new account': 'Create new account'\n'Add feed': 'Add feed'\n'Upload of file $1 was not successful.': 'Upload of file $1 was not successful.'\n'The file $1 could not be moved. Check you have enough of disk space.': 'The file $1 could not be moved. Check you have enough of disk space.'\nMiB: MiB\n'Download was not successful. Check please that the server is not out of disk space.': 'Download was not successful. Check please that the server is not out of disk space.'\n'try again later': 'try again later'\nat: at\n'You must at least upload one file.': 'You must at least upload one file.'\n'Warning: the existing data and themes will be deleted!': 'Warning: the existing data and themes will be deleted!'\n'Value is required and cant be empty': 'Value is required and can not be empty'\nUpload: Upload\n'Update comment': 'Update comment'\n'Time created': 'Time created'\nThemes: Themes\n'Stop current upload': 'Stop current upload'\n'Start uploading queue': 'Start uploading queue'\n'Start upload': 'Start upload'\nSettings: Settings\n'Select files': 'Select files'\nReply: Reply\n'New comment added': 'New comment added'\n'Manage Authors': 'Manage Authors'\nLoading..: Loading..\nFilename: Filename\n'Edit user type': 'Edit user type'\n'Edit language': 'Edit language'\n'Drag files here.': 'Drag files here.'\n'Connection interrupted': 'Connection interrupted'\nBan: Ban\n'Are you sure you want to': 'Are you sure you want to'\n'Add files to the upload queue and click the start button.': 'Add files to the upload queue and click the start button.'\n'Add files': 'Add files'\n'%value% is more than %max% characters long': '%value% is more than %max% characters long'\n'%value% is less than %min% characters long': '%value% is less than %min% characters long'\n'User name': 'User name'\nNewscoop: Newscoop\n'Your password has been reset.': 'Your password has been reset.'\n'Proceed to login.': 'Proceed to login.'\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': 'Go to login'\n'Back to login.': 'Back to login.'\n'Back to login': 'Back to login'\n'An email with instructions on how to recover you password has been sent to your inbox.': 'An email with instructions on how to recover you password has been sent to your inbox.'\n'Session expired.': 'Session expired.'\nProcessing...: Processing...\nPlease: Please\n'Go to dashboard': 'Go to dashboard'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': 'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.'\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': 'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.'\n'Newscoop cache was cleaned up': 'Newscoop cache was cleaned up'\nDashboard: Dashboard\n'Your changes will be saved after login.': 'Your changes will be saved after login.'\n'Upload backup file': 'Upload backup file'\n'The file $1 has been uploaded successfully.': 'The file $1 has been uploaded successfully.'\n'Media Archive': 'Media Archive'\nWidgets: Widgets\n'Widget info': 'Widget info'\n'Widget added to dashboard.': 'Widget added to dashboard.'\n'Remove widget': 'Remove widget'\n'Please login to continue.': 'Please login to continue.'\n'Add to dashboard': 'Add to dashboard'\n'Add more widgets': 'Add more widgets'\nlogin: login\n'This link is not valid.': 'This link is not valid.'\n'Recover password': 'Recover password'\n'Please enter your email.': 'Please enter your email.'\n'Password recovery is disabled.': 'Password recovery is disabled.'\n'Password recovery': 'Password recovery'\n'Password Recovery': 'Password Recovery'\n'No user is registered with this email.': 'No user is registered with this email.'\n'Forgot your password?': 'Forgot your password?'\n'Email: incorrect format.': 'Email: incorrect format.'\nEmail: Email\n'Bad input parameters.': 'Bad input parameters.'\n'There was an error trying to delete the file $1.': 'There was an error trying to delete the file $1.'\n'The file $1 was deleted successfully.': 'The file $1 was deleted successfully.'\nSize: Size\n'Restore file': 'Restore file'\nRestore: Restore\nMb: Mb\n'Free disk space': 'Free disk space'\n'Download file': 'Download file'\nDownload: Download\n'Delete file': 'Delete file'\n'Backup list is empty.': 'Backup list is empty.'\n'Are you sure you want to restore the file $1?': 'Are you sure you want to restore the file $1?'\n'Are you sure you want to delete the file $1?': 'Are you sure you want to delete the file $1?'\n'Import XML': 'Import XML'\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': 'You must have the permissions to add/change issues and articles in order to set the author for all articles.'\n'Select the field from which to generate the author': 'Select the field from which to generate the author'\n'Invalid or empty field $1. You must select a valid dynamic field.': 'Invalid or empty field $1. You must select a valid dynamic field.'\n'Unable to create author $1 for article no. $2 ($3) of type $4.': 'Unable to create author $1 for article no. $2 ($3) of type $4.'\n'There were errors setting the author for articles of type $1 from the field $2.': 'There were errors setting the author for articles of type $1 from the field $2.'\n'The author was set successfuly for articles of type $1 from the field $2.': 'The author was set successfuly for articles of type $1 from the field $2.'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'The article has been locked by $1 ($2) $3 minute(s) ago.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.'\n'Error setting the author $1 for article no. $2 ($3) of type $4.': 'Error setting the author $1 for article no. $2 ($3) of type $4.'\n'Clear system cache': 'Clear system cache'\n'The system was unable to upload the file $1. ': 'The system was unable to upload the file $1. '\n'Please check the file you are trying to upload, it might be corrupted.': 'Please check the file you are trying to upload, it might be corrupted.'\n'An error occurred in session management. Please reload the login page.': 'An error occurred in session management. Please reload the login page.'\n'This file is stored on disk as $1.': 'This file is stored on disk as $1.'\n'The system is unable to write to the directory $1.': 'The system is unable to write to the directory $1.'\n'The system was unable to read the file $1.': 'The system was unable to read the file $1.'\n'The system was unable to delete the directory $1.': 'The system was unable to delete the directory $1.'\n'Please check if the user $1 has permission to read this file.': 'Please check if the user $1 has permission to read this file.'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'Please check if the directory is empty and the user $1 has permission to write to the directory $2.'\n'The system was unable to write to the file $1.': 'The system was unable to write to the file $1.'\n'The system was unable to delete the file $1.': 'The system was unable to delete the file $1.'\n'The system was unable to create the file $1.': 'The system was unable to create the file $1.'\n'The system was unable to create the directory $1.': 'The system was unable to create the directory $1.'\n'Please check if the user $1 has permission to write to this file.': 'Please check if the user $1 has permission to write to this file.'\n'Please check if the user $1 has permission to write to the directory $2.': 'Please check if the user $1 has permission to write to the directory $2.'\n'Type the code shown above:': 'Type the code shown above:'\n'Please enter your user name.': 'Please enter your user name.'\n'Please enter your password.': 'Please enter your password.'\n'Please enter the code shown in the image.': 'Please enter the code shown in the image.'\n'CAPTCHA code is not valid.  Please try again.': 'CAPTCHA code is not valid.  Please try again.'\n'Signed in: $1': 'Signed in: $1'\nHelp: Help\n'Please enter your user name and password': 'Please enter your user name and password'\n'You do not have the right to access this page.': 'You do not have the right to access this page.'\n'Login failed': 'Login failed'\n'Please make sure that you typed the correct user name and password.': 'Please make sure that you typed the correct user name and password.'\n'If your problem persists please contact the site administrator $1': 'If your problem persists please contact the site administrator $1'\nBackup/Restore: Backup/Restore\n'Step 2': 'Step 2'\n'Step 3': 'Step 3'\n'Add new user': 'Add new user'\n'Bad credentials': 'Bad credentials'\n'Active users': 'Active users'\n'New comments': 'New comments'\n'Published articles': 'Published articles'\n'Last 7 days statistics': 'Statistics for the last 7 days'\n'Change password': 'Change password'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.es.yml",
    "content": "'Rename user': 'Renombrar al usuario'\nCampsite: Campsite\n'Image Rendering': 'Generación de imagen'\n'Featured Article Lists': 'Listas de artículos seleccionados'\n'You have tried to upload an invalid backup file.': 'Has tratado de subir un archivo de respaldo inválido.'\n'You do not have the right to manage backups.': 'No tienes los permisos para administrar archivos de respaldo.'\n'Make a new backup': 'Haz un nueva copia de respaldo.'\n'Are you sure you want to make a new backup?': '¿Realmente desea realizar una nueva copia de respaldo?'\n'Security token expired. Please resubmit the form.': 'El código de seguridad ha expirado. Por favor, regrese al foro.'\nTemplates: Plantillas\n'Create slideshow': 'Crear presentación'\nCreate: Crear\nAttach/Detach: Unir/Desunir\n'Are you sure you want to delete slideshow?': '¿Está seguro de que desea eliminar la presentación?'\nSupport: Soporte\n'Pending articles': 'Artículos pendientes'\n'Manage Users': 'Administrar usuarios'\n'Manage User Types': 'Administrar tipos de usuario'\n'Manage User Points System': 'Administrar sistema de puntos de los usuarios'\nLast: Último\nFirst: Primero\nFeedback: Retroalimentación\n'Edit your password': 'Edite su clave de acceso'\n'Edit user': 'Edite el usuario'\n'Edit permissions': 'Edite los permisos'\nDetail: Detalle\n'Create new user': 'Crear nuevo usuario'\n'Create new account': 'Crear nueva cuenta'\n'Add feed': 'Añadir feed'\n'Upload of file $1 was not successful.': 'La carga del archivo $1 no se realizó de forma exitosa.'\n'The file $1 could not be moved. Check you have enough of disk space.': 'No se pudo mover el archivo $1.  Verifique que exista suficiente espacio en el disco.'\nMiB: MiB\n'Download was not successful. Check please that the server is not out of disk space.': 'La descarga no se realizó con éxito.  Por favor verifique que el servidor aún cuente con espacio.'\n'try again later': 'Inténtelo de nuevo'\nat: en\n'You must at least upload one file.': 'Debe subir al menos un archivo'\n'Warning: the existing data and themes will be deleted!': 'Alerta: se eliminará la información y los temas existentes'\n'Value is required and cant be empty': 'Se requiere un valor.  No puede quedarse vacío.'\nUpload: Subir\n'Update comment': 'Actualizar comentario'\n'Time created': 'Creado a las'\nThemes: Temas\n'Stop current upload': 'Detener la carga de archivos actual'\n'Start uploading queue': 'Iniciar carga de archivos en espera'\n'Start upload': 'Iniciar carga'\nSettings: Configuración\n'Select files': 'Seleccionar archivos'\nReply: Responder\n'New comment added': 'Se agregaron nuevos comentarios'\n'Manage Authors': 'Administrar autores'\nLoading..: Cargando...\nFilename: 'Nombre del archivo'\n'Edit user type': 'Editar tipo de usuario'\n'Edit language': 'Editar idioma'\n'Drag files here.': 'Arrastrar archivos a esta área'\n'Connection interrupted': 'Se interrupió la conexión'\nBan: Restricción\n'Are you sure you want to': '¿Está seguro de querer'\n'Add files to the upload queue and click the start button.': 'Añade archivos a la cola de carga y da clic al botón de iniciar.'\n'Add files': 'Añadir archivos'\n'%value% is more than %max% characters long': '%value% es mayor a %max% caracteres de largo'\n'%value% is less than %min% characters long': '%value% es menor a %max% caracteres de largo'\n'User name': Usuario\nNewscoop: Newscoop\n'Your password has been reset.': 'Se ha restablecido su contraseña.'\n'Proceed to login.': 'Proceda al ingreso.'\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': 'Ir al área de ingreso'\n'Back to login.': 'De vuelta al área de ingreso.'\n'Back to login': 'De vuelta al área de ingreso.'\n'An email with instructions on how to recover you password has been sent to your inbox.': 'Le hemos enviado un correo electrónico con indicaciones sobre cómo recuperar su contraseña.'\n'Session expired.': 'La sesión expiró.'\nProcessing...: Procesando...\nPlease: 'Por favor'\n'Go to dashboard': 'Ir al tablero'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': 'Su navegador no respalda Javascript o (es muy posible) tiene desactivada la opción de Javascript.  Por favor arregle esto antes de usar Newscoop.'\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': 'Newscoop ha actualizado sus medidas de seguridad. Para actualizar su cuenta y habilitar la seguridad aumentada, debe ingresar su contraseña de nuevo.'\n'Newscoop cache was cleaned up': 'Se vació el cache de Newscoop'\nDashboard: Tablero\n'Your changes will be saved after login.': 'Sus cambios se almacenarán después de ingresar'\n'Upload backup file': 'Suba un archivo de respaldo'\n'The file $1 has been uploaded successfully.': 'El archivo $1 se ha cargado con éxito.'\n'Media Archive': 'Archivo multimedia'\nWidgets: Widgets\n'Widget info': 'Información del widget'\n'Widget added to dashboard.': 'Se añadió un widget al tablero'\n'Remove widget': 'Remover widget'\n'Please login to continue.': 'Por favor ingrese para continuar'\n'Add to dashboard': 'Añadir al tablero'\n'Add more widgets': 'Añadir más widgets'\nlogin: Ingreso\n'This link is not valid.': 'El enlace no es válido'\n'Recover password': 'Recuperar su clave de acceso'\n'Please enter your email.': 'Por favor ingrese su correo electrónico'\n'Password recovery is disabled.': 'Se desactivó la recuperación de clave de acceso.'\n'Password recovery': 'Recuperación de clave de acceso'\n'Password Recovery': 'Recuperación de clave de acceso'\n'No user is registered with this email.': 'Ningún usuario se ha registrado con este correo electrónico.'\n'Forgot your password?': '¿Olvidó su clave de acceso?'\n'Email: incorrect format.': 'Correo electrónico:  formato incorrecto'\nEmail: 'Correo electrónico'\n'Bad input parameters.': 'Los parámetros de la entrada son incorrectos'\n'There was an error trying to delete the file $1.': 'Se registró un error al tratar de eliminar el archivo $1.'\n'The file $1 was deleted successfully.': 'El archivo $1 se eliminó con éxito.'\nSize: Tamaño\n'Restore file': 'Restablecer archivo'\nRestore: Restablecer\nMb: Mb\n'Free disk space': 'Espacio libre en el disco'\n'Download file': 'Descargue archivo'\nDownload: Descargar\n'Delete file': 'Eliminar archivo'\n'Backup list is empty.': 'La lista de respaldo está vacía'\n'Are you sure you want to restore the file $1?': '¿Realmente desea recuperar el archivo $1?'\n'Are you sure you want to delete the file $1?': '¿Realmente desea eliminar el archivo $1?'\n'Import XML': 'Importar XML'\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': 'Debe tener los permisos para añadir/cambiar notas y artículos para poder poner el autor de todos los artículos.'\n'Select the field from which to generate the author': 'Seleccione el campo de donde generar el autor. '\n'Invalid or empty field $1. You must select a valid dynamic field.': 'Campo inválido o vacío $1. Debe seleccionar una campo dinámico válido. '\n'Unable to create author $1 for article no. $2 ($3) of type $4.': 'Incapaz de crear auto $1 para artículo no. $2 ($3) p tipo $4'\n'There were errors setting the author for articles of type $1 from the field $2.': 'Error al poner el autor para los artículos de tipo $1 del campo $2.'\n'The author was set successfuly for articles of type $1 from the field $2.': 'El autor fue exitósamente colocado en los artículos de tipo $1 del campo $2.'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': '$1 ($2) bloqueó el artículo hace $3 minuto(s).'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': '$1 ($2) bloqueó el artículo hace $3 hora(s) y $4 minuto(s).'\n'Error setting the author $1 for article no. $2 ($3) of type $4.': 'Error al fijar el autor $1 para el artículo no. $2 (3) del tipo $4.'\n'Clear system cache': 'Despejar el caché del sistema'\n'The system was unable to upload the file $1. ': 'El sistema fue incapaz de subir el archivo $1.'\n'Please check the file you are trying to upload, it might be corrupted.': 'Por favor revisar el archivo que está tratando de subir, puede estar corrupto.'\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': 'Este archivo esta guardado en el disco como $1.'\n'The system is unable to write to the directory $1.': 'El sistema no pudo escribir en el directorio $1.'\n'The system was unable to read the file $1.': 'El sistema no pudo leer el archivo $1.'\n'The system was unable to delete the directory $1.': 'El sistema no pudo eliminar el directorio $1.'\n'Please check if the user $1 has permission to read this file.': 'Por favor verifique que el usuario $1 tiene permiso para leer este archivo.'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'Por favor verifique que el directorio este vacío y que el usuario $1 tiene permiso para escribir en el directorio $2.'\n'The system was unable to write to the file $1.': 'El sistema no pudo escribir el archivo $1.'\n'The system was unable to delete the file $1.': 'El sistema no pudo eliminar el archivo $1.'\n'The system was unable to create the file $1.': 'El sistema no pudo crear el archivo $1.'\n'The system was unable to create the directory $1.': 'El sistema no pudo crear el directorio $1.'\n'Please check if the user $1 has permission to write to this file.': 'Por favor verifique que el usuario $1 tenga permiso para escribir en este archivo.'\n'Please check if the user $1 has permission to write to the directory $2.': 'Por favor verifique que el usuario $1 tenga permiso para escribir en el directorio $2.'\n'Type the code shown above:': 'Escriba el código desplegado arriba:'\n'Please enter your user name.': 'Ingrese su nombre de usuario.'\n'Please enter your password.': 'Ingrese su clave de acceso.'\n'Please enter the code shown in the image.': 'Ingrese el código desplegado en la imagen.'\n'CAPTCHA code is not valid.  Please try again.': 'El código CAPTCHA no es válido.  Por favor intente de nuevo.'\n'Signed in: $1': 'Ingresó como:'\nHelp: Ayuda\n'Please enter your user name and password': 'Por favor entre su nombre de usuario y clave'\n'You do not have the right to access this page.': 'No tiene derecho para accesar esta pagina.'\n'Login failed': 'Acceso fallido'\n'Please make sure that you typed the correct user name and password.': 'Por favor asegúrese de que escribió correctamente su nombre de usuario y contraseña.'\n'If your problem persists please contact the site administrator $1': 'Si su problema persiste favor contacte al administrador del sistema $1'\nBackup/Restore: Respaldar/Restablecer\n'Step 2': 'Paso 2'\n'Step 3': 'Paso 3'\n'Add new user': 'Añadir un nuevo usuario'\n'Bad credentials': 'Credenciales incorrectas'\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.es_AR.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: Último\nFirst: Primero\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: null\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': null\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': null\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: Descargar\n'Delete file': null\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': null\nHelp: null\n'Please enter your user name and password': null\n'You do not have the right to access this page.': null\n'Login failed': null\n'Please make sure that you typed the correct user name and password.': null\n'If your problem persists please contact the site administrator $1': null\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.fa.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: null\nFirst: null\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: null\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': null\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': null\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: null\n'Delete file': null\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': null\nHelp: null\n'Please enter your user name and password': null\n'You do not have the right to access this page.': null\n'Login failed': null\n'Please make sure that you typed the correct user name and password.': null\n'If your problem persists please contact the site administrator $1': null\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.fa_AF.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: null\nFirst: null\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: null\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': null\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': null\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: null\n'Delete file': null\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': null\nHelp: null\n'Please enter your user name and password': null\n'You do not have the right to access this page.': null\n'Login failed': null\n'Please make sure that you typed the correct user name and password.': null\n'If your problem persists please contact the site administrator $1': null\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.fr.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: Créer\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: Dernier\nFirst: Premier\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: Téléchargement\n'Update comment': null\n'Time created': null\nThemes: Templates\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: 'Nom du fichier'\n'Edit user type': null\n'Edit language': 'Editer langue'\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': null\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: Courriel\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: null\n'Delete file': null\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': 'Connecté: $1'\nHelp: Aide\n'Please enter your user name and password': 'Entrer svp votre nom utiliseur et mot de passe'\n'You do not have the right to access this page.': 'Vous navez pas le droit daccéder à cette page.'\n'Login failed': 'Connexion échouée'\n'Please make sure that you typed the correct user name and password.': 'Assurez vous svp que vous avez correctement tapé le nom dutlisateur et le mot de passe.'\n'If your problem persists please contact the site administrator $1': 'Si votre problème persiste contactez svp ladministrateur du site $1.'\nBackup/Restore: null\n'Step 2': 'Étape 2'\n'Step 3': 'Étape 3'\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.he.yml",
    "content": "'Rename user': null\nCampsite: Newscoop\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: null\nFirst: null\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: תבניות\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': null\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': null\nNewscoop: null\n'Your password has been reset.': 'סיסמתך אופסה'\n'Proceed to login.': 'התקדם לכניסה'\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': 'לך לדף לכניסה'\n'Back to login.': 'חזור לדף הכניסה'\n'Back to login': 'חזור לדף הכניסה'\n'An email with instructions on how to recover you password has been sent to your inbox.': 'דואל עם הוראות כיצד לשחזר את סיסמתך נשלח לתיבת הדואר שלך'\n'Session expired.': 'פג תוקף החיבור הנוכחי'\nProcessing...: מעבד....\nPlease: בבקשה\n'Go to dashboard': 'לך לדף הראשי'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': 'תקן בבקשה את ההגדרות על מנת להשתמש בתוכנהJavascript הגלשן שלך לא מאפשר להריץ. '\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: null\n'Delete file': null\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': 'בבקשה בדוק את הקובץ שהנך מנסה להעלות. יתכן שהוא לא תקין'\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': 'הקובץ נשמר בכונן בשם $11'\n'The system is unable to write to the directory $1.': 'המערכת לא הצליחה לכתוב לתיקייה $11'\n'The system was unable to read the file $1.': 'המערכת לא הצליחה לקרוא את הקובץ $11'\n'The system was unable to delete the directory $1.': 'המערכת לא הצליחה למחוק את התיקייה $11'\n'Please check if the user $1 has permission to read this file.': 'בדוק אם למשתמש $1 יש הרשאה לקרוא את הקובץ'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'בדוק אם התיקייה ריקה ואם ל$1 יש הרשאה לכתוב לסיפרייה $21'\n'The system was unable to write to the file $1.': 'המערכת לא הצליחה לכתוב לקובץ $11'\n'The system was unable to delete the file $1.': 'המערכת לא הצליחה למחוק את הקובץ $11'\n'The system was unable to create the file $1.': 'המערכת לא הצליחה לצור את הקובץ $11'\n'The system was unable to create the directory $1.': 'המערכת לא הצליחה לצור את התיקייה $11'\n'Please check if the user $1 has permission to write to this file.': 'בדוק אם ל$1 יש הרשאה לכתוב לקובץ'\n'Please check if the user $1 has permission to write to the directory $2.': 'בבקשה בדוק אם ל$1 יש הרשאות לכתוב לסיפרייה $21'\n'Type the code shown above:': 'הקלד את הקוד שרשום למעלה'\n'Please enter your user name.': 'הקלד שם משתמש'\n'Please enter your password.': 'הקלד סיסמא'\n'Please enter the code shown in the image.': 'הקלד את הקוד שרשום בתמונה'\n'CAPTCHA code is not valid.  Please try again.': 'לא תקין, בבקשה נסה שוב CAPTCHA'\n'Signed in: $1': 'משתמש רשום: $1'\nHelp: עזרה\n'Please enter your user name and password': 'בבקשה הקלד שם משתמש וסיסמא'\n'You do not have the right to access this page.': 'אין לך הרשאות לגשת לעמוד'\n'Login failed': 'כניסה למערכת נכשלה'\n'Please make sure that you typed the correct user name and password.': 'בדוק אם הקלדת את שם המשתמש והסיסמא הנכונים'\n'If your problem persists please contact the site administrator $1': null\nBackup/Restore: גיבוישחזור\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.hr.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: Zadnji\nFirst: Prvi\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: Predlošci\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': 'Uredi jezik.'\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': null\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: null\n'Delete file': 'Obriši datoteku'\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': 'Prijavljeno: $1'\nHelp: Pomoć\n'Please enter your user name and password': 'Unesite vaše ime i lozinku'\n'You do not have the right to access this page.': 'Nemate ovlasti pristupiti ovoj stranici.'\n'Login failed': 'Prijava nije uspjela'\n'Please make sure that you typed the correct user name and password.': 'Provjerite da li ste ispravno upisali korisničko ime i lozinku.'\n'If your problem persists please contact the site administrator $1': 'Ukoliko vam se ovaj problem ponavlja, obratite se vašem administratoru $1'\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.hu.yml",
    "content": "'Rename user': 'Felhasználó átnevezése'\nCampsite: Campsite\n'Image Rendering': 'Kép megjelenítése'\n'Featured Article Lists': 'Kiemelt cikklisták'\n'You have tried to upload an invalid backup file.': 'Érvénytelen biztonságimásolat-fájlt próbáltál feltölteni.'\n'You do not have the right to manage backups.': 'Nincs jogod a biztonsági másolatok kezeléséhez.'\n'Make a new backup': 'Új biztonsági másolat készítése'\n'Are you sure you want to make a new backup?': 'Biztosan új biztonsági másolatot akarsz készíteni?'\n'Security token expired. Please resubmit the form.': 'A biztonsági jogkivonat lejárt. Küldd el ismét az űrlapot.'\nTemplates: Sablonok\n'Create slideshow': 'Diavetítés létrehozása'\nCreate: Létrehozás\nAttach/Detach: Csatolás/Leválasztás\n'Are you sure you want to delete slideshow?': 'Biztosan törölni akarod a diavetítést?'\nSupport: Támogatás\n'Pending articles': 'Függőben lévő cikkek'\n'Manage Users': 'Felhasználók kezelése'\n'Manage User Types': 'Felhasználótípusok kezelése'\n'Manage User Points System': 'Felhasználói pontrendszer kezelése'\nLast: Utolsó\nFirst: Első\nFeedback: Visszajelzések\n'Edit your password': 'Jelszavad módosítása'\n'Edit user': 'Felhasználó szerkesztése'\n'Edit permissions': 'Engedélyek szerkesztése'\nDetail: Adat\n'Create new user': 'Új felhasználó létrehozása'\n'Create new account': 'Új fiók létrehozása'\n'Add feed': 'Hírcsatorna hozzáadása'\n'Upload of file $1 was not successful.': 'A/z $1 fájl feltöltése sikertelen volt.'\n'The file $1 could not be moved. Check you have enough of disk space.': 'Nem lehet áthelyezni a/z $1 fájlt. Ellenőrizd, hogy van-e elég hely a lemezen.'\nMiB: MiB\n'Download was not successful. Check please that the server is not out of disk space.': 'A letöltés nem sikerült. Ellenőrizd, hogy nem fogyott-e el a lemezterület a kiszolgálón.'\n'try again later': 'próbálkozz később'\nat: null\n'You must at least upload one file.': 'Legalább egy fájlt fel kell töltened.'\n'Warning: the existing data and themes will be deleted!': 'Figyelmeztetés: Törlésre fognak kerülni a meglévő adatok és témák!'\n'Value is required and cant be empty': 'Az érték kötelező és nem lehet üres'\nUpload: Feltöltés\n'Update comment': 'Hozzászólás frissítése'\n'Time created': 'Létrehozás időpontja'\nThemes: Témák\n'Stop current upload': 'A jelenlegi feltöltés leállítása'\n'Start uploading queue': 'A várólista feltöltésének indítása'\n'Start upload': 'Feltöltés indítása'\nSettings: Beállítások\n'Select files': 'Fájlok kiválasztása'\nReply: Válasz\n'New comment added': 'Az új hozzászólás hozzáadása megtörtént'\n'Manage Authors': 'Szerzők kezelése'\nLoading..: Betöltés...\nFilename: Fájlnév\n'Edit user type': 'Felhasználótípus szerkesztése'\n'Edit language': 'Nyelv szerkesztése'\n'Drag files here.': 'Húzz ide fájlokat.'\n'Connection interrupted': 'A kapcsolat megszakadt'\nBan: Kitiltás\n'Are you sure you want to': 'Biztosan akarod'\n'Add files to the upload queue and click the start button.': 'Adj hozzá fájlokat a feltöltési várólistához, majd kattints a Feltöltés indítása gombra.'\n'Add files': 'Fájlok hozzáadása'\n'%value% is more than %max% characters long': 'A/z %value% több %max% karakternél'\n'%value% is less than %min% characters long': 'A/z %value% kevesebb %max% karakternél'\n'User name': Felhasználónév\nNewscoop: Newscoop\n'Your password has been reset.': 'A jelszó átállítása megtörtént.'\n'Proceed to login.': 'Tovább a bejelentkezéshez.'\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': 'Ugrás a bejelentkezéshez'\n'Back to login.': 'Vissza a bejelentkezéshez.'\n'Back to login': 'Vissza a bejelentkezéshez'\n'An email with instructions on how to recover you password has been sent to your inbox.': 'A jelszó visszaállításával kapcsolatos utasításokat tartalmazó e-mail elküldése a postaládádba megtörtént.'\n'Session expired.': 'A munkamenet lejárt.'\nProcessing...: Feldolgozás...\nPlease: Kérjük\n'Go to dashboard': 'Ugrás az irányítópultra'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': 'A böngésződ nem támogatja a JavaScriptet, vagy (valószínűbb) letiltottad a beállításokban. Javítsd ezt a Newscoop további használata céljából.'\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': 'A Newscoop frissítette biztonsági intézkedéseit. Fiókod frissítése, a fokozott biztonság használata érdekében ismét meg kell adnod a jelszavadat.'\n'Newscoop cache was cleaned up': 'A Newscoop gyorsítótárának karbantartása megtörtént'\nDashboard: Irányítópult\n'Your changes will be saved after login.': 'Változtatásaid bejelentkezés után kerülnek mentésre.'\n'Upload backup file': 'Biztonságimásolat-fájl feltöltése'\n'The file $1 has been uploaded successfully.': 'A/z $1 fájl feltöltése sikerült.'\n'Media Archive': Médiaarchívum\nWidgets: Widgetek\n'Widget info': 'Widget adatai'\n'Widget added to dashboard.': 'A widget elhelyezése az irányítópulton megtörtént.'\n'Remove widget': 'Widget eltávolítása'\n'Please login to continue.': 'Kérjük, jelentkezz be a folytatáshoz.'\n'Add to dashboard': 'Elhelyezés az irányítópulton'\n'Add more widgets': 'További widgetek hozzáadása'\nlogin: bejelentkezés\n'This link is not valid.': 'Ez a hivatkozás érvénytelen.'\n'Recover password': 'Jelszó helyreállítása'\n'Please enter your email.': 'Kérjük, add meg az e-mail címedet.'\n'Password recovery is disabled.': 'A jelszó-helyreállítás letiltott.'\n'Password recovery': Jelszó-helyreállítás\n'Password Recovery': Jelszó-helyreállítás\n'No user is registered with this email.': 'Nincs ezzel az e-mail címmel regisztrált felhasználó.'\n'Forgot your password?': 'Elfelejtetted a jelszavadat?'\n'Email: incorrect format.': 'E-mail: helytelen formátum.'\nEmail: E-mail\n'Bad input parameters.': 'Rossz bemeneti paraméterek.'\n'There was an error trying to delete the file $1.': 'Hiba történt a/z $1 fájl törlésének megkísérlésekor.'\n'The file $1 was deleted successfully.': 'A/z $1 fájl törlése sikerült.'\nSize: Méret\n'Restore file': 'Fájl visszaállítása'\nRestore: Visszaállítás\nMb: Mb\n'Free disk space': 'Szabad lemezterület'\n'Download file': 'Fájl letöltése'\nDownload: Letöltés\n'Delete file': 'Fájl törlése'\n'Backup list is empty.': 'A biztonságimásolat-lista üres.'\n'Are you sure you want to restore the file $1?': 'Biztosan vissza akarod állítani a/z $1 fájlt?'\n'Are you sure you want to delete the file $1?': 'Biztosan törölni akarod a/z $1 fájlt?'\n'Import XML': 'XML importálása'\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': 'A szerző összes cikkhez való megadása céljából a számok és cikkek hozzáadásához/módosításához szükséges engedélyekkel kell rendelkezned.'\n'Select the field from which to generate the author': 'Válaszd ki azt a mezőt, melyből létre kell hozni a szerzőt'\n'Invalid or empty field $1. You must select a valid dynamic field.': 'Érvénytelen vagy üres $1 mező. Egy dinamikus mezőt kell kiválasztanod.'\n'Unable to create author $1 for article no. $2 ($3) of type $4.': 'Nem sikerült $4 típusú $1 szerzőt $2 ($3) cikkszámmal létrehozni.'\n'There were errors setting the author for articles of type $1 from the field $2.': 'Hibák léptek fel a/z $1 típusú cikkek szerzőjének beállítása során a/z $2 mezőből.  '\n'The author was set successfuly for articles of type $1 from the field $2.': 'Sikerült megadni a szerzőt a/z $1 típusú cikkekhez a/z $2 mezőből.'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'A cikket $1 ($2) zárolta $3 perce.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'A cikket $1 ($2) zárolta $3 órája és $4 perce.'\n'Error setting the author $1 for article no. $2 ($3) of type $4.': 'Hiba történt a/z $1 nevű szerző megadásakor a/z $2 ($3) sz. $4 típusú cikkhez.'\n'Clear system cache': 'Rendszergyorsítótár törlése'\n'The system was unable to upload the file $1. ': 'A rendszer nem tudta feltölteni a/z $1 fájlt.'\n'Please check the file you are trying to upload, it might be corrupted.': 'Ellenőrizd a feltölteni kívánt fájlt, mert lehet, hogy sérült.'\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': 'Ez a fájl $1 néven lemezen kerül tárolásra.'\n'The system is unable to write to the directory $1.': 'A rendszer nem tud írni a/z $1 könyvtárba.'\n'The system was unable to read the file $1.': 'A rendszer nem tudta olvasni a/z $1 fájlt.'\n'The system was unable to delete the directory $1.': 'A rendszer nem tudta törölni a/z $1 könyvtárt.'\n'Please check if the user $1 has permission to read this file.': 'Ellenőrizd, hogy a/z $1 nevű felhasználó számára engedélyezett-e ennek a fájlnak az olvasása.'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'Ellenőrizd, hogy üres-e a könyvtár, és a/z $1 nevű felhasználónak van--e írási engedélye a/z $2 könyvtárhoz'\n'The system was unable to write to the file $1.': 'A rendszer nem tudott írni a/z $1 fájlba.'\n'The system was unable to delete the file $1.': 'A rendszer nem tudta törölni a/z $1 fájlt.'\n'The system was unable to create the file $1.': 'A rendszer nem tudta létrehozni a/z $1 fájlt.'\n'The system was unable to create the directory $1.': 'A rendszer nem tudta létrehozni a/z $1 könyvtárat.'\n'Please check if the user $1 has permission to write to this file.': 'Ellenőrizd, hogy a/z $1 nevű felhasználónak van-e írási engedélye ehhez a fájlhoz.'\n'Please check if the user $1 has permission to write to the directory $2.': 'Ellenőrizd, hogy a/z $1 nevű felhasználónak van-e írási engedélye a/z $2 könyvtárhoz.'\n'Type the code shown above:': 'Írd be a fent látható kódot:'\n'Please enter your user name.': 'Add meg a felhasználónevedet.'\n'Please enter your password.': 'Add meg a jelszavadat.'\n'Please enter the code shown in the image.': 'Írd be a képen látható kódot.'\n'CAPTCHA code is not valid.  Please try again.': 'A CAPTCHA-kód nem érvényes. Kérjük, próbáld újra.'\n'Signed in: $1': 'Bejelentkezve: $1'\nHelp: Súgó\n'Please enter your user name and password': 'Add meg a felhasználónevedet és a jelszavadat'\n'You do not have the right to access this page.': 'Nincs jogod ennek az oldalnak az eléréséhez.'\n'Login failed': 'A bejelentkezés sikertelen'\n'Please make sure that you typed the correct user name and password.': 'Ellenőrizd, hogy helyesen adtad-e meg a felhasználónevedet és a jelszavadat.'\n'If your problem persists please contact the site administrator $1': 'Ha a probléma továbbra is fennáll, kérjük, fordulj a webhely $1 rendszergazdájához'\nBackup/Restore: 'Biztonsági mentés/Visszaállítás'\n'Step 2': '2. lépés'\n'Step 3': '3. lépés'\n'Add new user': 'Új felhasználó hozzáadása'\n'Bad credentials': 'Rossz hitelesítő adatok'\n'Active users': 'Aktív felhasználók'\n'New comments': 'Új hozzászólások'\n'Published articles': 'Közzétett cikkek'\n'Last 7 days statistics': 'Utolsó 7 nap statisztikája'\n'Change password': 'Jelszó megváltoztatása'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.hy.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: Վերջին\nFirst: Առաջին\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: null\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': null\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': null\nNewscoop: Newscoop\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: null\n'Delete file': null\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': 'An error occurred in session management. Please reload the login page.'\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': null\nHelp: null\n'Please enter your user name and password': null\n'You do not have the right to access this page.': null\n'Login failed': null\n'Please make sure that you typed the correct user name and password.': null\n'If your problem persists please contact the site administrator $1': null\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': 'Change password'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.hy_AM.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: Վերջին\nFirst: Առաջին\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: null\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': null\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': null\nNewscoop: Newscoop\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: Ներբեռնում\n'Delete file': null\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': null\nHelp: null\n'Please enter your user name and password': null\n'You do not have the right to access this page.': null\n'Login failed': null\n'Please make sure that you typed the correct user name and password.': null\n'If your problem persists please contact the site administrator $1': null\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': 'Նոր մեկնաբանություններ'\n'Published articles': 'Հրապարակված հոդվածներ'\n'Last 7 days statistics': 'Վերջին 7 օրվա վիճակագրությունը'\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.id.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: null\nFirst: null\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: null\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': null\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': null\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: null\n'Delete file': null\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': null\nHelp: null\n'Please enter your user name and password': null\n'You do not have the right to access this page.': null\n'Login failed': null\n'Please make sure that you typed the correct user name and password.': null\n'If your problem persists please contact the site administrator $1': null\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.it.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': 'Rendering delle immagini'\n'Featured Article Lists': 'Liste di articoli in vetrina'\n'You have tried to upload an invalid backup file.': 'Il file che hai cercato di caricare non è un backup valido.'\n'You do not have the right to manage backups.': 'Non hai il permesso di gestire i backup.'\n'Make a new backup': 'Esegui un nuovo backup'\n'Are you sure you want to make a new backup?': 'Vuoi davvero eseguire un nuovo backup?'\n'Security token expired. Please resubmit the form.': 'Il token di sicurezza è scaduto. Rispedisci la form.'\nTemplates: Template\n'Create slideshow': 'Crea galleria di immagini'\nCreate: Crea\nAttach/Detach: Allega/Scollega\n'Are you sure you want to delete slideshow?': 'Vuoi davvero eliminare la galleria di immagini?'\nSupport: Supporto\n'Pending articles': 'Articoli in attesa'\n'Manage Users': 'Gestisci utenti'\n'Manage User Types': 'Gestisci tipi di utente'\n'Manage User Points System': 'Gestisci il sistema punti degli utenti'\nLast: Ultimo\nFirst: Primo\nFeedback: Feedback\n'Edit your password': 'Cambia la tua password'\n'Edit user': 'Modifica utente'\n'Edit permissions': 'Modifica permessi'\nDetail: Dettagli\n'Create new user': 'Crea nuovo utente'\n'Create new account': 'Crea nuovo account'\n'Add feed': 'Aggiungi feed'\n'Upload of file $1 was not successful.': 'Il caricamento del file $1 è fallito.'\n'The file $1 could not be moved. Check you have enough of disk space.': 'Il file $1 non è stato spostato. Controlla se cè abbastanza spazio libero.'\nMiB: MiB\n'Download was not successful. Check please that the server is not out of disk space.': 'Download fallito. Controlla che il server abbia abbastanza spazio su disco.'\n'try again later': 'ritenta più tardi'\nat: in\n'You must at least upload one file.': 'Devi caricare almeno un file.'\n'Warning: the existing data and themes will be deleted!': 'Attenzione: i dati ed i temi esistenti verranno eliminati!'\n'Value is required and cant be empty': 'È richiesto un valore non vuoto'\nUpload: Carica\n'Update comment': 'Aggiorna commento'\n'Time created': 'Ora di creazione'\nThemes: Temi\n'Stop current upload': 'Ferma caricamento'\n'Start uploading queue': 'Mostra coda di caricamento'\n'Start upload': 'Inizia caricamento'\nSettings: Impostazioni\n'Select files': 'Seleziona i file'\nReply: Risposta\n'New comment added': 'Commento aggiunto'\n'Manage Authors': 'Gestisci autori'\nLoading..: Caricamento...\nFilename: 'Nome file'\n'Edit user type': 'Modifica tipo utente'\n'Edit language': 'Modifica lingua'\n'Drag files here.': 'Trascina qui i file.'\n'Connection interrupted': 'Connessione interrotta'\nBan: Blocco\n'Are you sure you want to': 'Confermi di voler'\n'Add files to the upload queue and click the start button.': 'Aggiungi file alla coda di caricamento e clicca su Inizia'\n'Add files': 'Aggiungi dei file'\n'%value% is more than %max% characters long': '%value% è più lungo di %max% caratteri'\n'%value% is less than %min% characters long': '%value% è più corto di %min% caratteri'\n'User name': 'Nome utente'\nNewscoop: Newscoop\n'Your password has been reset.': 'La tua password è stata resettata.'\n'Proceed to login.': 'Prosegui con il login.'\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': 'Vai al login'\n'Back to login.': 'Torna al login.'\n'Back to login': 'Torna al login'\n'An email with instructions on how to recover you password has been sent to your inbox.': 'Alla tua casella di posta è stata spedita une-mail con le istruzioni su come recuperare la tua password.'\n'Session expired.': 'Sessione scaduta.'\nProcessing...: Elaboro...\nPlease: 'Per favore'\n'Go to dashboard': 'Vai alla Dashboard'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': 'Il tuo browser non supporta Javascript o, più probabilmente, è stato disabilitato. Per usare Newscoop devi abilitare questa funzionalità.'\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': 'Newscoop ha potenziato le misure di sicurezza. Per abilitare il tuo account a queste nuove misure di sicurezza, devi inserire nuovamente la tua password.'\n'Newscoop cache was cleaned up': 'La cache di Newscoop è stata svuotata.'\nDashboard: Dashboard\n'Your changes will be saved after login.': 'Le tue modifiche verranno salvate dopo aver effettuato il login.'\n'Upload backup file': 'Carica un file di backup'\n'The file $1 has been uploaded successfully.': 'Il file $1 è stato caricato con successo.'\n'Media Archive': 'Archivio media'\nWidgets: Widget\n'Widget info': 'Informazioni sul widget'\n'Widget added to dashboard.': 'Widget aggiunto alla Dashboard.'\n'Remove widget': 'Rimuovi widget'\n'Please login to continue.': 'Effettua il login per proseguire.'\n'Add to dashboard': 'Aggiungi alla Dashboard'\n'Add more widgets': 'Aggiungi altri widget'\nlogin: login\n'This link is not valid.': 'Il link non è valido.'\n'Recover password': 'Recupera password'\n'Please enter your email.': 'Inserisci la tua email.'\n'Password recovery is disabled.': 'Il recupero password è disabilitato.'\n'Password recovery': 'Recupero password'\n'Password Recovery': 'Recupero password'\n'No user is registered with this email.': 'Nessun utente è registrato con questa email.'\n'Forgot your password?': 'Password dimenticata?'\n'Email: incorrect format.': 'Email: formato errato.'\nEmail: Email\n'Bad input parameters.': 'Parametri inseriti non corretti.'\n'There was an error trying to delete the file $1.': 'Si è verificato un errore durante leliminazione del file $1.'\n'The file $1 was deleted successfully.': 'Il file $1 è stato eliminato correttamente.'\nSize: Dimensione\n'Restore file': 'Ripristina file'\nRestore: Ripristina\nMb: MB\n'Free disk space': 'Spazio libero'\n'Download file': 'Scarica file'\nDownload: Scarica\n'Delete file': 'Elimina file'\n'Backup list is empty.': 'Lelenco dei backup è vuoto.'\n'Are you sure you want to restore the file $1?': 'Vuoi davvero ripristinare il file $1?'\n'Are you sure you want to delete the file $1?': 'Vuoi davvero eliminare il file $1?'\n'Import XML': 'Importa XML'\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': 'Non hai il permesso di aggiungere o modificare edizioni ed articoli, necessario per impostare lautore di tutti gli articoli.'\n'Select the field from which to generate the author': 'Seleziona il campo da cui generare lautore'\n'Invalid or empty field $1. You must select a valid dynamic field.': 'Campo $1 non valido o vuoto. Devi selezionare un campo dinamico valido.'\n'Unable to create author $1 for article no. $2 ($3) of type $4.': 'Impossibile creare lautore $1 per larticolo n. $2 ($3) del tipo $4.'\n'There were errors setting the author for articles of type $1 from the field $2.': 'Si sono verificati degli errori impostando lautore per gli articoli di tipo $1 dal campo $2.'\n'The author was set successfuly for articles of type $1 from the field $2.': 'Lautore è stato correttamente impostato per gli articoli di tipo $1 del campo $2.'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Larticolo è stato bloccato da $1($2) $3 minuti fa.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Larticolo è stato bloccato da $1 ($2) $3 ore e $4 minuti fa.'\n'Error setting the author $1 for article no. $2 ($3) of type $4.': 'Errore dirante limpostazione dellautore $1 per larticolo n. $2 ($3) del tipo $4.'\n'Clear system cache': 'Svuota la cache di sistema'\n'The system was unable to upload the file $1. ': 'Il sistema non è riuscito a caricare il file $1.'\n'Please check the file you are trying to upload, it might be corrupted.': 'Per favore verifica il file che stai cercando di caricare, potrebbe essere corrotto.'\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': 'Il file è stato salvato come $1.'\n'The system is unable to write to the directory $1.': 'Il sistema non è in grado di scrivere nella cartella $1.'\n'The system was unable to read the file $1.': 'Il sistema non è stato in grado di leggere il file $1.'\n'The system was unable to delete the directory $1.': 'Il sistema non è stato in grado di eliminare la cartella $1.'\n'Please check if the user $1 has permission to read this file.': 'Verifica che lutente $1 abbia i permessi per leggere questo file.'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'Verifica che la cartella sia vuota e che lutente $1 abbia il permesso di scrivere nella cartella $2.'\n'The system was unable to write to the file $1.': 'Il sistema non ha potuto scrivere nel file $1.'\n'The system was unable to delete the file $1.': 'Il sistema non ha potuto cancellare il file $1.'\n'The system was unable to create the file $1.': 'Il sistema non ha potuto creare il file $1.'\n'The system was unable to create the directory $1.': 'Il sistema non ha potuto creare la cartella $1.'\n'Please check if the user $1 has permission to write to this file.': 'Verifica che lutente $1 abbia il permesso di scrivere in questo file.'\n'Please check if the user $1 has permission to write to the directory $2.': 'Verifica che lutente $1 abbia il permesso di scrivere nella cartella $2.'\n'Type the code shown above:': 'Digita il codice mostrato qui sopra:'\n'Please enter your user name.': 'Inserisci il tuo nome utente.'\n'Please enter your password.': 'Inserisci la tua password.'\n'Please enter the code shown in the image.': 'Inserisci il codice mostrato nellimmagine.'\n'CAPTCHA code is not valid.  Please try again.': 'Il codice CAPTCHA non è valido, prova ancora.'\n'Signed in: $1': 'Accesso: $1'\nHelp: Aiuto\n'Please enter your user name and password': 'Inserisci nome utente e password'\n'You do not have the right to access this page.': 'Non hai il permesso di accedere a questa pagina.'\n'Login failed': 'Login fallito'\n'Please make sure that you typed the correct user name and password.': 'Verifica di aver digitato nome utente e password corretti.'\n'If your problem persists please contact the site administrator $1': 'Se il problema persiste, contatta lamministratore $1'\nBackup/Restore: Backup/Ripristino\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.ka.yml",
    "content": "'Rename user': 'მომხმარებლის სახელის შეცვლა'\nCampsite: კემპსაიტი\n'Image Rendering': 'გამოსახულების დარენდერება'\n'Featured Article Lists': 'წარმოდგენილი სტატიების სიები'\n'You have tried to upload an invalid backup file.': 'თქვენ სცადეთ აგეტვირთათ არამართებული ფაილი. '\n'You do not have the right to manage backups.': 'თქვენ არ გაქვთ უფლება მართოთ რეზერვები. '\n'Make a new backup': 'შექმენით ახალი რეზერვი'\n'Are you sure you want to make a new backup?': 'დარწმუნებული ხართ რომ გსურთ შექმნათ ახალი რეზერვი?'\n'Security token expired. Please resubmit the form.': 'უსაფრთხოების კოდს ვადა გაუვიდა. გთხოვთ ხელახლა წარმოადგინოთ ფორმა. '\nTemplates: შაბლონები\n'Create slideshow': 'სლაიდშოუს შექმნა'\nCreate: შექმნა\nAttach/Detach: მიმაგრება/მოხსნა\n'Are you sure you want to delete slideshow?': 'დარწმუნებული ხართ რომ გსურთ წაშალოთ სლაიდშოუ?'\nSupport: მხარდაჭერა\n'Pending articles': 'მიმდინარე სტატიები'\n'Manage Users': 'მომხმარებლების მართვა'\n'Manage User Types': 'მომხმარებელთა ტიპების მართვა'\n'Manage User Points System': 'მომხმარებელთა ქულების სისტემის მართვა'\nLast: ბოლო\nFirst: პირველი\nFeedback: შეფასება\n'Edit your password': 'თქვენი პაროლის შეცვლა'\n'Edit user': 'მომხმარებლის რედაქტირება'\n'Edit permissions': 'ნებართვების რედაქტიერბა'\nDetail: დეტალი\n'Create new user': 'ახალი მომხმარებლის შექმნა'\n'Create new account': 'ახალი ანგარიშის შექმნა'\n'Add feed': 'არხის დამატება'\n'Upload of file $1 was not successful.': '$1 ფაილის ატვირთვა უშედეგოდ დასრულდა'\n'The file $1 could not be moved. Check you have enough of disk space.': '$1 ფაილის გადაადგილება ვერ ხერხდება. შეამოწმეთ გაქვთ თუ არა საკმარისი სივრცე დისკზე'\nMiB: MiB\n'Download was not successful. Check please that the server is not out of disk space.': 'ვერ ჩამოიტვირთა. შეამოწმეთ გაქვთ თუ არა საკმარისი სივრცე სერვერის დისკზე'\n'try again later': 'სცადეთ მოგვიანებით'\nat: '-ზე'\n'You must at least upload one file.': 'თქვენ უნდა ატვირთოთ მინიმუმ 1 ფაილი'\n'Warning: the existing data and themes will be deleted!': 'გაფრთხილება: არსებული მონაცამები და ტემები წაიშლება!'\n'Value is required and cant be empty': 'მონაცემი აუცილებლად უნდა შეივსოს'\nUpload: ატვირთვა\n'Update comment': 'კომენტარის განახლება'\n'Time created': 'შექმნის დრო'\nThemes: თემები\n'Stop current upload': 'მიმდინარე ატვირთვის შეჩერება'\n'Start uploading queue': 'ატვირთვის რიგის დაწყება'\n'Start upload': 'ატვირთვის დაწყება'\nSettings: პარამეტრები\n'Select files': 'ფაილების არჩევა'\nReply: 'პასუხის გაცემა'\n'New comment added': 'ახალი კომენტარი დამატებულია'\n'Manage Authors': 'ავტორების მართვა'\nLoading..: იტვირთება..\nFilename: 'ფაილის სახელი'\n'Edit user type': 'მომხმარებლის ტიპის რედაქტირება'\n'Edit language': 'ენის რედაქტირება'\n'Drag files here.': 'ჩააბით ფაილები აქ'\n'Connection interrupted': 'კავშირი შეწყვეტილია'\nBan: ბანი\n'Are you sure you want to': 'დარწმუნებული ხართ რომ გინდათ'\n'Add files to the upload queue and click the start button.': 'დაამატეთ ფაილები ატვირთვის რიგში და დააჭირეთ სტარტს.'\n'Add files': 'ფაილების დამატება'\n'%value% is more than %max% characters long': '%value% შეიცავს %max%-ზე მეტ სიმბოლოს'\n'%value% is less than %min% characters long': '%value% შეიცავს %min%-ზე ნაკლებ სიმბოლოს'\n'User name': მომხმარებელი\nNewscoop: Newscoop\n'Your password has been reset.': 'თქვენი პაროლი გადაიტვირთვა'\n'Proceed to login.': 'განაგრძეთ ავტორიზაციისკენ'\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': 'გადადით ავტორიზაციაზე'\n'Back to login.': 'უკან ავტორიზაციისკენ'\n'Back to login': 'უკან ავტორიზაციისაკენ'\n'An email with instructions on how to recover you password has been sent to your inbox.': 'თქვენი გამოგეგზავნათ იმელი რომელიც პაროლის აღდგენის ინსტრუქციებს შეიცავს'\n'Session expired.': 'ვიზიტის დრო ამოიწურა. გთხოვთ თავიდან გაიაროთ ავტორიზაცია.'\nProcessing...: დამუშავება...\nPlease: გთხოვთ\n'Go to dashboard': 'დეშბორდში შესვლა'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': 'თქვენი ბრაუზერს პრობლემა აქვს ჯავასკრიპტთან ან თქვენ გამორთული გაქვთ ჯავასკრიპტი. გთხოვთ გამოასწოროთ ეს პრობლემა რათა შეძლოთ Newscoop-ის გამოყენება.'\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': 'Newscoop-მა გააუმჯობესა დაცვის ზომები. იმისათვის რათა განაახლოთ თქვენი ანგარიში და შეძლოთ ამ ახალი ზომების გამოყენება, გთხოვთ შეიყვანოთ პაროლი თავიდან.'\n'Newscoop cache was cleaned up': 'Newscoop კაშე გაიწმინდა'\nDashboard: დეშბორდი\n'Your changes will be saved after login.': 'თქვენი ცვლილებები ავტორიზაციის შემდეგ შეინახება.'\n'Upload backup file': 'ატვირთეთ სათადარიგო ფაილი'\n'The file $1 has been uploaded successfully.': '$1 ფაილი წარმატებით აიტვირთა'\n'Media Archive': 'მედია არქივი'\nWidgets: ვიჯეტი\n'Widget info': 'ვიჯეტის ინფო'\n'Widget added to dashboard.': 'ვიჯეტი დაემატა დეშბორდს'\n'Remove widget': 'ვიჯეტის მოხსნა'\n'Please login to continue.': 'გთხოვთ გაიაროთ ავტორიზაცია რათა განაგრძოთ'\n'Add to dashboard': 'დეშბორდში დამატება'\n'Add more widgets': 'მეტი ვიჯეტის დამატება'\nlogin: ავტორიზაცია\n'This link is not valid.': 'ბმული არ არსებობს'\n'Recover password': 'პაროლის აღდგენა'\n'Please enter your email.': 'გთხოვთ შეიყვანოთ იმეილი'\n'Password recovery is disabled.': 'პაროლის აღდგენა გამორთულია'\n'Password recovery': 'პაროლის აღდგენა'\n'Password Recovery': 'პაროლის აღდგენა'\n'No user is registered with this email.': 'ამ იმეილით არავინ დარეგისტრირებულა'\n'Forgot your password?': 'პაროლი დაგავიწყდათ?'\n'Email: incorrect format.': 'იმეილი: არასწორი ფორმატი.'\nEmail: ელფოსტა\n'Bad input parameters.': 'არასწორი პარამეტრები'\n'There was an error trying to delete the file $1.': 'ფაილი $1 წაშლის დროს დაფიქსირდა შეცდომა'\n'The file $1 was deleted successfully.': 'ფაილი $1 წარმატებით წაიშალა'\nSize: ზომა\n'Restore file': 'ფაილის აღდგენა'\nRestore: აღდგენა\nMb: მბ\n'Free disk space': 'თავისუფალი სივრცე დისკზე'\n'Download file': 'ფაილის გადმოტვირთვა'\nDownload: ჩამოქაჩვა\n'Delete file': 'ფაილის წაშლა'\n'Backup list is empty.': 'სათადარიგო სია ცარიელია.'\n'Are you sure you want to restore the file $1?': 'დარწმუნებული ხართ რომ გსულრთ $1 ფაილის აღდგენა?'\n'Are you sure you want to delete the file $1?': 'დარწმუნებული ხართ რომ გსურთ $1 ფაილის წაშლა'\n'Import XML': 'XML ს იმპორტი'\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': 'თქვენ უნდა გქონდეთ გამოცემების და სტატიების დამატების/შეცვლის უფლება, რათა მიუთითოთ ავტორები.'\n'Select the field from which to generate the author': 'აირჩიეთ ველი რომლიდანაც გსურთ ავტორის გენერირება'\n'Invalid or empty field $1. You must select a valid dynamic field.': 'გაუქმებული ან არ არსებული $1 ველი. თქვენ უნდა აირჩიოთ არსებული დინამიური ველი'\n'Unable to create author $1 for article no. $2 ($3) of type $4.': 'ნომერ $2 ($3), $4 ტიპის სტასიითვის $1 ავტორის შექმნა შეუძლებელია.'\n'There were errors setting the author for articles of type $1 from the field $2.': '$2 ველის $1 ტიპის სტატიებზე ავტორის მითითებისას დაფიქსირდა შეცდომა.'\n'The author was set successfuly for articles of type $1 from the field $2.': '$2 ველის $1 ტიპის სტატიებზე ავტორი წარმატებით მიება.'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'სტატია დალუქა მოხმარებელმა $1 ($2) $3 წუთ(ებ)ის წინ.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'სტატია დალუქა მოხმარებელმა $1 ($2) $3 საათ(ებ)ის და $4 წუთ(ებ)ის წინ.'\n'Error setting the author $1 for article no. $2 ($3) of type $4.': 'ნომერ $2 ($3), $4 ტიპის სტასიითვის $1 ავტორის მიბმისას დაფიქსირდა შეცდომა'\n'Clear system cache': 'გაწმინდეთ სისტუმერი კაშე'\n'The system was unable to upload the file $1. ': 'სისტემამ ვერ შეძლო $1 ფაილის ატვირთვა'\n'Please check the file you are trying to upload, it might be corrupted.': 'გთხოვთ შეამოწმოთ ფაილი რომლის ატვირთვასაც ცდილობთ, ის შეიძლება იყოს დაზიანებული.'\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': 'ფაილი შენახულია დისკზე როგორც $1'\n'The system is unable to write to the directory $1.': 'სისტემა ვერ ახერხებს $1 დირექტორიისთვის მიწერას'\n'The system was unable to read the file $1.': 'სისტემამ ვერ კითხულობს $1 ფაილს'\n'The system was unable to delete the directory $1.': 'სისტემამ ვერ შეძლო $1'\n'Please check if the user $1 has permission to read this file.': 'გთხოვთ შეამოწმოთ აქვს თუ არა $1 მომხმარებელს ამ ფაილის ნახვის ნებართვა'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'გთხოვთ შეამოწმოთ რომ დირექტორია ცარიელია და $1 მოხმარებელს აქვს უფლება დაწეროს $2 დირექტორიაში.'\n'The system was unable to write to the file $1.': 'სისტემამ ვერ შეძლო $1 ფაილისთვის მიწერა'\n'The system was unable to delete the file $1.': 'სისტემამ ვერ შეძლო $1 ფაილის წაშლა'\n'The system was unable to create the file $1.': 'სისტემამ ვერ შეძლო $1 ფაილის შექმნა'\n'The system was unable to create the directory $1.': 'სისტემამ ვერ შეძლო $1 დირექტორიის შექმნა'\n'Please check if the user $1 has permission to write to this file.': 'შეამოწმეთ $1 მომხმარებელს თუ აქვს ამ ფაილზე მიწერის ნებართქვა'\n'Please check if the user $1 has permission to write to the directory $2.': 'შეამოწმეთ $1 მომხმარებელს თუ აქვს ნებართვა $2 დირექტორიას მიწეროს'\n'Type the code shown above:': 'შეიყვანეთ აღნიშნული კოდი'\n'Please enter your user name.': 'შეიყვანეთ მომხმარებელის სახელი'\n'Please enter your password.': 'შეიყვანეთ პაროლი'\n'Please enter the code shown in the image.': 'გთხოვთ შეიყვანოთ სურათზე ნაჩვენები კოდი'\n'CAPTCHA code is not valid.  Please try again.': 'CAPTCHA კოდი არ ემთხვევა. კიდევ სცადეთ.'\n'Signed in: $1': 'ავტოირეზებული: $1'\nHelp: დახმარება\n'Please enter your user name and password': 'გთხოვთ შეიყვანოთ თქვენი მომხმარებლის სახელი და პაროლი'\n'You do not have the right to access this page.': 'თქვენ არ გაქვთ ამ გვერდზე წვდომის უფლება'\n'Login failed': 'ავტორიზაცია უშედეგოდ დასრულდა'\n'Please make sure that you typed the correct user name and password.': 'გთხოვთ გადაამოწმოთ რომ სწორად შეგყავთ მომხმარებლის სახელი და პაროლი'\n'If your problem persists please contact the site administrator $1': 'თუ პრობლემა კვლავ არსებობს მიმართეთ საიტის ადმინისტრატორს $1'\nBackup/Restore: 'სარეზერვო ასლი/აღდგენა'\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.ko.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: 마지막\nFirst: 처음\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: '템플레이트 '\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': '언어 수정'\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': null\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: null\n'Delete file': '파일 삭제'\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': '사용중: $1'\nHelp: 도움말\n'Please enter your user name and password': '아이디와 패스워드를 입력하시오'\n'You do not have the right to access this page.': '페이지를 악세스 할 권한이  없습니다.'\n'Login failed': '로그인 실패'\n'Please make sure that you typed the correct user name and password.': '아이디와 패스워드를 정확하게 입력했는지 확인하시오'\n'If your problem persists please contact the site administrator $1': '문제가 해결되지 않으면, 시스템 운영자에게 연락하시오'\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.ku.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: null\nFirst: null\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: null\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': null\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': null\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: null\n'Delete file': null\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': null\nHelp: null\n'Please enter your user name and password': null\n'You do not have the right to access this page.': null\n'Login failed': null\n'Please make sure that you typed the correct user name and password.': null\n'If your problem persists please contact the site administrator $1': null\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.lv.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: null\nFirst: null\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: null\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': null\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': null\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: null\n'Delete file': null\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': null\nHelp: null\n'Please enter your user name and password': null\n'You do not have the right to access this page.': null\n'Login failed': null\n'Please make sure that you typed the correct user name and password.': null\n'If your problem persists please contact the site administrator $1': null\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.mr.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: null\nFirst: null\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: null\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': null\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': null\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: null\n'Delete file': null\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': null\nHelp: null\n'Please enter your user name and password': null\n'You do not have the right to access this page.': null\n'Login failed': null\n'Please make sure that you typed the correct user name and password.': null\n'If your problem persists please contact the site administrator $1': null\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.nb_NO.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: null\nFirst: null\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: null\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': null\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': null\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: null\n'Delete file': null\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': null\nHelp: null\n'Please enter your user name and password': null\n'You do not have the right to access this page.': null\n'Login failed': null\n'Please make sure that you typed the correct user name and password.': null\n'If your problem persists please contact the site administrator $1': null\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.nl.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: Laatste\nFirst: Eerste\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: Sjablonen\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': 'Bewerk taal'\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': null\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: null\n'Delete file': 'Verwijder bestand'\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': 'Ondertekend in: $1'\nHelp: Help\n'Please enter your user name and password': 'Vul aub uw gebruikersnaam en wachtwoord in'\n'You do not have the right to access this page.': null\n'Login failed': 'Login gefaald'\n'Please make sure that you typed the correct user name and password.': 'Zorg er voor dat de juiste gebruikernaam en wachtwoord zijn ingevuld.'\n'If your problem persists please contact the site administrator $1': 'Als het probleem blijf bestaan neem dan contact op met beheerder $1'\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.pa.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: null\nFirst: null\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: null\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': null\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': null\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: null\n'Delete file': null\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': null\nHelp: null\n'Please enter your user name and password': null\n'You do not have the right to access this page.': null\n'Login failed': null\n'Please make sure that you typed the correct user name and password.': null\n'If your problem persists please contact the site administrator $1': null\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.pl.yml",
    "content": "'Rename user': 'Zmień nazwę'\nCampsite: Campsite\n'Image Rendering': 'Przetwarzanie zdjęć'\n'Featured Article Lists': 'Listy artykułów'\n'You have tried to upload an invalid backup file.': 'Prubujesz wgrac plik który nie jest prawidłową kopią zapasową.'\n'You do not have the right to manage backups.': 'Nie masz uprawnień do zarządzania kopiami zapasowymi.'\n'Make a new backup': 'Utwórz nową kopię bezpieczeństwa'\n'Are you sure you want to make a new backup?': 'Jesteś pewien czy chcesz zrobić nową kopię zapasową?'\n'Security token expired. Please resubmit the form.': 'Klucz bezpieczeństwa wygasł. Wyślij formularz ponownie.'\nTemplates: Szablony\n'Create slideshow': 'Utwórz galerię'\nCreate: Utwórz\nAttach/Detach: Dodaj/Usuń\n'Are you sure you want to delete slideshow?': 'Jesteś pewien że chcesz usunąć tą galerię?'\nSupport: Pomoc\n'Pending articles': 'Oczekujące artykuły'\n'Manage Users': 'Zarządzaj użytkownikami'\n'Manage User Types': 'Zarządzaj typami użytkowników'\n'Manage User Points System': 'Zarządzaj systemem punktów dla uzytkowników'\nLast: Ostatni\nFirst: Pierwszy\nFeedback: Feedback\n'Edit your password': 'Zmień swoje hasło'\n'Edit user': 'Edytuj użytkownika'\n'Edit permissions': 'Zmień uprawnienia'\nDetail: Szczeguły\n'Create new user': 'Utwórz nowego użytkownika'\n'Create new account': 'Stwórz nowe konto'\n'Add feed': 'Dodaj źródło'\n'Upload of file $1 was not successful.': 'Przesyłanie pliku $1 nie powiodło się.'\n'The file $1 could not be moved. Check you have enough of disk space.': 'Plik $1 nie może być przeniesiony. Upewnij się że masz wystarczającą ilość wolnego miejsca na dysku.'\nMiB: MiB\n'Download was not successful. Check please that the server is not out of disk space.': 'Pobieranie nie powiodło się. Upewnij się czy masz wystarczającą ilość wolnego miejsca na dysku.'\n'try again later': 'spróbuj ponownie później'\nat: w\n'You must at least upload one file.': 'Musisz przesłać przynajmniej jeden plik.'\n'Warning: the existing data and themes will be deleted!': 'Uwaga: istniejące dane i szablony mogą zostać usunięte. '\n'Value is required and cant be empty': 'Wartość jest wymagana i nie może być pusta.'\nUpload: Wgraj\n'Update comment': 'Zaktualizuj komentarz'\n'Time created': 'Data utworzenia'\nThemes: Szablony\n'Stop current upload': 'Zatrzymaj aktualne przesyłanie.'\n'Start uploading queue': 'Uruchom kolejkę przesyłania.'\n'Start upload': 'Uruchom przesyłanie.'\nSettings: Ustawienia\n'Select files': 'Wybierz pliki'\nReply: Odpowiedz\n'New comment added': 'Nowy komentarz został dodany'\n'Manage Authors': 'Zarządzaj autorami'\nLoading..: Ładowanie..\nFilename: 'Nazwa pliku'\n'Edit user type': 'Zmień typ użytkownika'\n'Edit language': 'Zmień jezyk'\n'Drag files here.': 'Przeciągnij pliki tutaj'\n'Connection interrupted': 'Połączenie zostało przerwane'\nBan: Blokada\n'Are you sure you want to': 'Jesteś pewien że chcesz to zrobić?'\n'Add files to the upload queue and click the start button.': 'Dodaj pliki do kolejki przesyłania i kliknij przycisk rozpoczęcia.'\n'Add files': 'Dodaj pliki'\n'%value% is more than %max% characters long': '%value% ma więcej znaków niż %max%'\n'%value% is less than %min% characters long': '%value% jest krótsze niż wymagane %min% znaków'\n'User name': Login\nNewscoop: Newscoop\n'Your password has been reset.': 'Twoje hasło zostało zresetowane.'\n'Proceed to login.': 'Przejdź do logowania'\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': 'Przejdź do logowania'\n'Back to login.': 'Wróć do logowania.'\n'Back to login': 'Wróć do logowania'\n'An email with instructions on how to recover you password has been sent to your inbox.': 'Wiadomość z instrukcjami odzyskiwania hasła został wysłany na twoją skrzynkę email.'\n'Session expired.': 'Sesja wygasła.'\nProcessing...: Przetwarzanie...\nPlease: Proszę\n'Go to dashboard': 'Idź do panelu'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': 'Twoja przeglądarka nie obsługuje Javascript albo (bardziej prawdopodobne) obsługa Javascript jest nieaktywna. Napraw to zanim zaczniesz pracę z Newscoop.'\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': 'Newscoop dokonał aktualizacji zabezpieczeń. Aby zaktulizować swoje konto i skorzystać z nowych zasad bezpieczeństwa, wprowadź swoje hasło.'\n'Newscoop cache was cleaned up': 'Pamięć podręczna Newscoopa została wyczyszczona'\nDashboard: Panel\n'Your changes will be saved after login.': 'Twoje zmiany zostaną zapisane po zalogowaniu.'\n'Upload backup file': 'Wgraj plik kopii zapasowej'\n'The file $1 has been uploaded successfully.': 'Plik $1 został dodany pomyślnie.'\n'Media Archive': 'Biblioteka Mediów'\nWidgets: Widżety\n'Widget info': 'Informacje o widżetcie'\n'Widget added to dashboard.': 'Widżet został dodany do panelu.'\n'Remove widget': 'Usuń widżet'\n'Please login to continue.': 'Zaloguj się aby kontynuować'\n'Add to dashboard': 'Dodaj do panelu'\n'Add more widgets': 'Dodaj więcej widżetów'\nlogin: logowanie\n'This link is not valid.': 'Link jest niepoprawny.'\n'Recover password': 'Odzyskaj hasło'\n'Please enter your email.': 'Podaj adres email.'\n'Password recovery is disabled.': 'Odzyskiwanie haseł jest zablokowane.'\n'Password recovery': 'Odzyskiwanie hasła'\n'Password Recovery': 'Odzyskiwanie Hasła'\n'No user is registered with this email.': 'Brak użytkownika z podanym adresem email.'\n'Forgot your password?': 'Zapomniałeś hasła?'\n'Email: incorrect format.': 'Email: niepoprawny format.'\nEmail: Email\n'Bad input parameters.': 'Złe parametry wejściowe.'\n'There was an error trying to delete the file $1.': 'Wystąpił błąd podczas usuwania pliku $1.'\n'The file $1 was deleted successfully.': 'Plik $1 został usunięty pomyślnie.'\nSize: Rozmiar\n'Restore file': 'Przywróć plik'\nRestore: Przywróć\nMb: Mb\n'Free disk space': 'Wolna przestrzeń na dysku'\n'Download file': 'Pobierz plik'\nDownload: Pobierz\n'Delete file': 'Usuń plik'\n'Backup list is empty.': 'Lista kopii zapasowych jest pusta'\n'Are you sure you want to restore the file $1?': 'Czy na pewno chcesz przywrócić plik $1?'\n'Are you sure you want to delete the file $1?': 'Czy na pewno chcesz usunąć plik $1?'\n'Import XML': 'Import XML'\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': 'Musisz posiadać uprawnienia do dodawania/zmieniania publikacji aby ustawić autorów dla wszystkich artykułów.'\n'Select the field from which to generate the author': 'Wybierz pole, z którego wygenerować autora'\n'Invalid or empty field $1. You must select a valid dynamic field.': 'Niepoprawne albo puste pole $1. Musisz wybrać porawne pole dynamiczne.'\n'Unable to create author $1 for article no. $2 ($3) of type $4.': 'Nie można utworzyć autora $1 do artykułu numer $2 ($3) typu $4.'\n'There were errors setting the author for articles of type $1 from the field $2.': \"Wystąpił\\_błąd podczas ustawiania autora dla artykułu typu $1 z pola $2.\"\n'The author was set successfuly for articles of type $1 from the field $2.': 'Pomyślnie ustawiono autora dla artykułu typu $1 z pola $2.'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Artykuł zostal zablokowany przez $1 ($2) $3 minut(y) temu.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Artykuł zostal zablokowany przez $1 ($2) $3 godziny i $4 minut(y) temu.'\n'Error setting the author $1 for article no. $2 ($3) of type $4.': 'Błąd przy tworzeniu autora $1 do artykułu numer $2 ($3) typu $4.'\n'Clear system cache': 'Oczyść systemową pamięć podręczną'\n'The system was unable to upload the file $1. ': 'System nie mógł dodać pliku $1.'\n'Please check the file you are trying to upload, it might be corrupted.': 'Sprawdź plik, który próbujesz dodać, możliwe że jest uszkodzony.'\n'An error occurred in session management. Please reload the login page.': 'Wystąpił błąd przy zarządzaniu sesją. Załaduj stronę logowania ponownie.'\n'This file is stored on disk as $1.': 'Plik jest zachowany na dysku jako $1.'\n'The system is unable to write to the directory $1.': 'Syste nie może zapisywać do folderu $1.'\n'The system was unable to read the file $1.': 'System nie może czytać pliku $1.'\n'The system was unable to delete the directory $1.': 'System nie może skasować folderu $1.'\n'Please check if the user $1 has permission to read this file.': 'Sprawdź czy użytkownik $1 ma prawa aby odczytywać ten plik.'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'Spradź czy folder jest pusty a użytkownik $1 ma prawa zapisywać do folderu $2.'\n'The system was unable to write to the file $1.': 'System nie mógł zapisywać pliku $1.'\n'The system was unable to delete the file $1.': 'System nie mógł usunąć pliku $1.'\n'The system was unable to create the file $1.': 'System nie mógł utworzyć pliku $1.'\n'The system was unable to create the directory $1.': 'System nie mógł utworzyć folderu $1.'\n'Please check if the user $1 has permission to write to this file.': 'Sprawdź czy użytkownik $1 ma prawa aby zapisywać do tego pliku.'\n'Please check if the user $1 has permission to write to the directory $2.': 'Sprawdź czy użytkownik $1 ma prawa aby zapisywać do folderu $2.'\n'Type the code shown above:': 'Wprowadź kod podany powyżej:'\n'Please enter your user name.': 'Podaj nazwę użytkownika.'\n'Please enter your password.': 'Podaj swoje hasło.'\n'Please enter the code shown in the image.': 'Podaj kod podany na obrazku.'\n'CAPTCHA code is not valid.  Please try again.': 'Kod CAPTCHA jest nie poprawny. Spróbuj ponownie.'\n'Signed in: $1': 'Zalogowano: $1'\nHelp: Pomoc\n'Please enter your user name and password': 'Wprowadź nazwę użytkownika i hasło'\n'You do not have the right to access this page.': 'Nie masz praw do przeglądania tej strony'\n'Login failed': 'Logowanie nie powiodło się'\n'Please make sure that you typed the correct user name and password.': 'Upewnij się, że podana nazwa i hasła są poprawne'\n'If your problem persists please contact the site administrator $1': 'Jeśli problem występuje ponownie skontaktuj się z administratorem $1'\nBackup/Restore: 'Utwórz/Przywróć kopię zapasową'\n'Step 2': 'Krok 2'\n'Step 3': 'Krok 3'\n'Add new user': 'Dodaj nowego użytkownika'\n'Bad credentials': 'Hasło lub login jest nieprawidłowe'\n'Active users': 'Aktywni użytkownicy'\n'New comments': 'Nowe komentarze'\n'Published articles': 'Opublikowane artykuły'\n'Last 7 days statistics': 'Statystyki z ostatnich 7 dni'\n'Change password': 'Zmień hasło'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.ps.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: null\nFirst: null\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: null\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': null\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': null\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: null\n'Delete file': null\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': null\nHelp: null\n'Please enter your user name and password': null\n'You do not have the right to access this page.': null\n'Login failed': null\n'Please make sure that you typed the correct user name and password.': null\n'If your problem persists please contact the site administrator $1': null\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.pt.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: Ultimo\nFirst: Primeiro\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: Modelos\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': 'Alterar Idioma'\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': 'Nome de Utilizador'\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: null\n'Delete file': 'Eliminar ficheiro'\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': 'Autenticado como: $1'\nHelp: Ajuda\n'Please enter your user name and password': 'Introduza o seu Nome de Utlizador e a sua Palavra-Passe'\n'You do not have the right to access this page.': 'Não tem permissão para aceder a esta página'\n'Login failed': 'A autenticação falhou'\n'Please make sure that you typed the correct user name and password.': 'Certifique-se que introduziu o Nome de Utilizador e a Palavra-Passe correctas.'\n'If your problem persists please contact the site administrator $1': 'Se o problema persistir, contacte o Administrador de Sistema $1.'\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.pt_BR.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': 'Token de segurança venceu. Por favor reinviar o formulário.'\nTemplates: Templates\n'Create slideshow': 'Criar slideshow'\nCreate: Criar\nAttach/Detach: 'Anexar/Remover anexo'\n'Are you sure you want to delete slideshow?': 'Tem certeza que quer apagar o slideshow?'\nSupport: Suporte\n'Pending articles': 'Artigos pendentes'\n'Manage Users': 'Gerenciar usuários'\n'Manage User Types': 'Gerenciar tipos de usuários'\n'Manage User Points System': 'Gerenciar sistema de pontos de usuários'\nLast: Ultimo\nFirst: Primeiro\nFeedback: Feedback\n'Edit your password': 'Editar sua senha'\n'Edit user': 'Editar usuário'\n'Edit permissions': 'Editar permissões'\nDetail: Detalhe\n'Create new user': 'Criar novo usuário'\n'Create new account': 'Criar nova conta'\n'Add feed': 'Adcionar feed'\n'Upload of file $1 was not successful.': 'Upload do arquivo $1 falhou.'\n'The file $1 could not be moved. Check you have enough of disk space.': 'O arquivo $1 não pode ser movido. Verifique se tem espaço em disco.'\nMiB: MiB\n'Download was not successful. Check please that the server is not out of disk space.': 'Falha no download. Verifique se há espaço em disco do servidor. '\n'try again later': 'tente mais tarde'\nat: no\n'You must at least upload one file.': 'Você deve fazer upload de pelo menos um arquivo'\n'Warning: the existing data and themes will be deleted!': 'Aviso: as informações e temas serão apagados!'\n'Value is required and cant be empty': 'O valor é necessário e não pode estar vazio'\nUpload: Upload\n'Update comment': 'Atualizar comentário'\n'Time created': 'Hora da criação'\nThemes: Temas\n'Stop current upload': 'Parar upload atual'\n'Start uploading queue': 'Iniciar upload da fila'\n'Start upload': 'Inicar upload'\nSettings: Preferências\n'Select files': 'Selecionar arquivos'\nReply: Responder\n'New comment added': 'Novo comentário adicionado'\n'Manage Authors': 'Gerenciar autores'\nLoading..: Carregando...\nFilename: 'Nome de arquivo'\n'Edit user type': 'Editar tipo de usuário'\n'Edit language': 'Editar língua'\n'Drag files here.': 'Arrastar arquivos aqui'\n'Connection interrupted': 'Conexão interrompida'\nBan: Banir\n'Are you sure you want to': 'Tem certeza que quer'\n'Add files to the upload queue and click the start button.': 'Adicione arquivos para a fila de upload e clique no botão iniciar'\n'Add files': 'Adicionar arquivos'\n'%value% is more than %max% characters long': '%value% tem mais que %max% caracteres  '\n'%value% is less than %min% characters long': '%value% tem menos que %max% caracteres '\n'User name': 'Nome de usuário'\nNewscoop: Newscoop\n'Your password has been reset.': 'Sua senha foi atualizada'\n'Proceed to login.': 'Vá para o login'\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': 'Vá para login'\n'Back to login.': 'Voltar para login'\n'Back to login': 'Voltar para login'\n'An email with instructions on how to recover you password has been sent to your inbox.': 'Um email com instruções sobre como recuperar sua senha foi enviado para sua caixa postal.'\n'Session expired.': 'Sessão expirada'\nProcessing...: Processando...\nPlease: 'Por favor'\n'Go to dashboard': 'Ir para o painel'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': 'Seu navegador não suporta Javascript ou (o que é mais provável) o Javascript está desabilitado. Por favor corrija isso para poder usar o Newscoop.'\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': 'Newscoop atualizou medidas de segurança. Para atualizar a sua conta para uso dessa atualização, você tem que digitar de novo a sua senha,'\n'Newscoop cache was cleaned up': 'O cache do Newscoop foi limpado.'\nDashboard: Painel\n'Your changes will be saved after login.': 'As modificações serão salvas após o login.'\n'Upload backup file': 'Fazer upload do arquivo de backup.'\n'The file $1 has been uploaded successfully.': 'Upload do arquivo $1 foi completado com sucesso.'\n'Media Archive': 'Arquivo de mídia'\nWidgets: Widgets\n'Widget info': 'Informações sobre o widget'\n'Widget added to dashboard.': 'Widget adicionado ao painel.'\n'Remove widget': 'Remover o widget'\n'Please login to continue.': 'Por favor faça login para continuar.'\n'Add to dashboard': 'Adicionar ao painel'\n'Add more widgets': 'Adicionar mais widgets'\nlogin: login\n'This link is not valid.': 'O link não é válido.'\n'Recover password': 'Recuperar a senha'\n'Please enter your email.': 'Por favor digite seu email.'\n'Password recovery is disabled.': 'Recuperação da senha está desabilitada.'\n'Password recovery': 'Recuperação da senha'\n'Password Recovery': 'Recuperação da senha'\n'No user is registered with this email.': 'Não há usuários registrados com esse email.'\n'Forgot your password?': 'Esqueceu a senha?'\n'Email: incorrect format.': 'Emai: formato incorreto.'\nEmail: Email\n'Bad input parameters.': 'Parâmetros de entrada incorreto.'\n'There was an error trying to delete the file $1.': 'Ocorreu um erro na tentativa de remover o arquivo $1.'\n'The file $1 was deleted successfully.': 'O arquivo $1 foi removido.'\nSize: Tamanho\n'Restore file': 'Restaurar arquivo'\nRestore: Restaurar\nMb: Mb\n'Free disk space': 'Espaço livre no disco'\n'Download file': 'Baixar arquivo'\nDownload: Baixar\n'Delete file': 'Remover arquivo'\n'Backup list is empty.': 'A lista do backup está vazia.'\n'Are you sure you want to restore the file $1?': 'Tem certeza que quer restaurar arquivo $1?'\n'Are you sure you want to delete the file $1?': 'Você tem certeza que quer remover o arquivo $1?'\n'Import XML': 'Importar XML'\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': 'Você tem que ter permissão para adicionar/modificar temas e artigos para definir o autor para todos os artigos.'\n'Select the field from which to generate the author': 'Selecione o campo do qual vai ser gerado o autor'\n'Invalid or empty field $1. You must select a valid dynamic field.': 'Campo $1 não é válido ou é vazio. Selecione um campo dinâmico válido.'\n'Unable to create author $1 for article no. $2 ($3) of type $4.': 'Não foi possível criar autor $1 para artigo no. $2 ($3) do tipo $4.'\n'There were errors setting the author for articles of type $1 from the field $2.': 'Ocorreram erros na definição do autor para artigos do tipo $1 do campo $2.'\n'The author was set successfuly for articles of type $1 from the field $2.': 'O autor para artigos do tipo $1 do campo $2 foi definido.'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'O artigo foi trancado por $1 ($2) $3 minuto(s) atrás.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'O artigo foi trancado por $1 ($2) $3 hora(s) e $4 minuto(s) atrás.'\n'Error setting the author $1 for article no. $2 ($3) of type $4.': 'Ocorreu um erro na definição do autor $1 para o artigo no. $2 ($3) do tipo $4.'\n'Clear system cache': 'Limpar o cache do sistema'\n'The system was unable to upload the file $1. ': 'O sistema não conseguiu fazer upload do arquivo $1.'\n'Please check the file you are trying to upload, it might be corrupted.': 'Por favor verifique o aruquivo para upload, pode ser corrompido.'\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': 'Este arquivo foi guardado no disco como $1.'\n'The system is unable to write to the directory $1.': 'O sistema não conseguiu escrever no diretório $1.'\n'The system was unable to read the file $1.': 'O sistema não pôde ler o arquivo $1.'\n'The system was unable to delete the directory $1.': 'O sistema não pôde remover o diretório $1.'\n'Please check if the user $1 has permission to read this file.': 'Por favor verifique se usuá rio $1 tem permissão para ler este artigo.'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'Por favor verifique se o diretório está vazio e o usuário $1 tem permissão para escrever no diretório $2.'\n'The system was unable to write to the file $1.': 'O sistema não conseguiu escrever no arquivo $1.'\n'The system was unable to delete the file $1.': 'O sistema não pôde remover o arquivo $1.'\n'The system was unable to create the file $1.': 'O sistema não conseguiu criar arquivo $1.'\n'The system was unable to create the directory $1.': 'O sistema não conseguiu criar diretório $1.'\n'Please check if the user $1 has permission to write to this file.': 'Por favor verifique se o usuário $1 tem permissão para escrever nesse arquivo.'\n'Please check if the user $1 has permission to write to the directory $2.': 'Por favor verifique se o usuário $1 tem permissão para escrever no diretório $2.'\n'Type the code shown above:': 'Tipo de código mostrado acima:'\n'Please enter your user name.': 'Por favor digite seu nome de usuário.'\n'Please enter your password.': 'Por favor digite sua senha.'\n'Please enter the code shown in the image.': 'Por favor digite o código que vê na imagem.'\n'CAPTCHA code is not valid.  Please try again.': 'O código CAPTCHA é incorreto. Por favor tente de novo.'\n'Signed in: $1': 'Autenticado como: $1'\nHelp: Ajuda\n'Please enter your user name and password': 'Introduza o seu Nome de Utlizador e a sua Palavra-Passe'\n'You do not have the right to access this page.': 'Não tem permissão para aceder a esta página'\n'Login failed': 'A autenticação falhou'\n'Please make sure that you typed the correct user name and password.': 'Certifique-se que introduziu o Nome de Utilizador e a Palavra-Passe correctas.'\n'If your problem persists please contact the site administrator $1': 'Se o problema persistir, contacte o Administrador de Sistema $1.'\nBackup/Restore: Backup/restaurar\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.ro.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: Ultimul\nFirst: Primul\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: Şabloane\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': 'Modifică informaţia despre limbă'\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': 'Nume utilizator'\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': 'Sesiunea a expirat.'\nProcessing...: null\nPlease: null\n'Go to dashboard': 'La panou'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: Panou\n'Your changes will be saved after login.': 'Modificările vor fi salvate dupa reinițializarea sesiunii.'\n'Upload backup file': 'Încarcă un fișier arhivă.'\n'The file $1 has been uploaded successfully.': 'Fișierul $1 a fost incărcat cu succes.'\n'Media Archive': 'Arhivă media'\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': 'Reinițializați sesiunea pentru a continua.'\n'Add to dashboard': 'Adaugă la panou'\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': 'Recuperează parola.'\n'Please enter your email.': 'Introdu adresa de email.'\n'Password recovery is disabled.': 'Recuperarea parolei este invalidată.'\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: Email\n'Bad input parameters.': 'Parametrii de intrare invalizi.'\n'There was an error trying to delete the file $1.': 'Eroare la ștergerea fișierului $1.'\n'The file $1 was deleted successfully.': 'Fișierul $1 a fost șters.'\nSize: Mărime\n'Restore file': 'Restaurează fișierul'\nRestore: Restaurează\nMb: Mb\n'Free disk space': 'Spațiu liber pe disc'\n'Download file': 'Salvează fișierul local'\nDownload: 'Salvează local'\n'Delete file': 'Șterge fișierul'\n'Backup list is empty.': 'Lista de arhive este goală.'\n'Are you sure you want to restore the file $1?': 'Doriți restaurarea fișierului $1?'\n'Are you sure you want to delete the file $1?': 'Doriți să ștergeți fișierul $1?'\n'Import XML': 'Importă XML'\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': 'Inițializează memoria cache.'\n'The system was unable to upload the file $1. ': 'Eroare la transferul fişierului $1.'\n'Please check the file you are trying to upload, it might be corrupted.': 'Verificaţi validiteatea fişierului; ar putea fi corupt.'\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': 'Fişierul e stocat pe disc sub numele $1.'\n'The system is unable to write to the directory $1.': 'Sistemul nu a putut scrie datele în directorul $1.'\n'The system was unable to read the file $1.': 'Sistemul nu a putut citi datele din fişierul $1.'\n'The system was unable to delete the directory $1.': 'Sistemul nu a putut şteargă datele din directorul $1.'\n'Please check if the user $1 has permission to read this file.': 'Te rugăm să verifici dacă utilizatorul $1 are permisiunea de a citi acest fişier.'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'Te rugăm să verifici dacă directorul este gol şi dacă utilizatorul $1 are permisiunea de a scrie date în directorul $2.'\n'The system was unable to write to the file $1.': 'Sistemul nu a putut scrie datele în fişierul $1.'\n'The system was unable to delete the file $1.': 'Sistemul nu a putut şterge fişierul $1.'\n'The system was unable to create the file $1.': 'Sistemul nu a putut crea fişierul $1.'\n'The system was unable to create the directory $1.': 'Sistemul nu a putut crea directorul $1.'\n'Please check if the user $1 has permission to write to this file.': 'Te rugăm să verifici dacă utilizatorul $1 are permisiunea de a scrie date în acest fişier.'\n'Please check if the user $1 has permission to write to the directory $2.': 'Te rugăm să verifici dacă utilizatorul $1 are permisiunea de a scrie date în directorul $2.'\n'Type the code shown above:': 'Tastează codul de mai sus:'\n'Please enter your user name.': 'Introdu numele de utilizator.'\n'Please enter your password.': 'Introdu parola.'\n'Please enter the code shown in the image.': 'Introdu codul din imagine.'\n'CAPTCHA code is not valid.  Please try again.': 'Codul CAPTCHA nu este valid. Mai încearcă o dată.'\n'Signed in: $1': 'Identificat ca: $1'\nHelp: Ajutor\n'Please enter your user name and password': 'Introdu numele de utilizator şi parola'\n'You do not have the right to access this page.': 'Nu ai dreptul să accesezi această pagină.'\n'Login failed': 'Eroare la deschiderea sesiunii'\n'Please make sure that you typed the correct user name and password.': 'Asigură-te ca ai scris corect numele de utilizator şi parola.'\n'If your problem persists please contact the site administrator $1': 'Dacă problema nu dispare, contactează-l administratorul site-ului $1'\nBackup/Restore: Arhivează/Restaurează\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.ru.yml",
    "content": "'Rename user': 'Переименовать пользователя'\nCampsite: 'Campsite '\n'Image Rendering': 'Обработка изображения'\n'Featured Article Lists': 'Списки Избранных статей'\n'You have tried to upload an invalid backup file.': 'Неудачная попытка загрузки файла резервной копии.'\n'You do not have the right to manage backups.': 'У вас нет прав доступа для управления резервными копиями.'\n'Make a new backup': 'Создайте новую резервную копию'\n'Are you sure you want to make a new backup?': 'Вы уверены, что хотите создать новую резервную копию?'\n'Security token expired. Please resubmit the form.': 'Маркер доступа недействителен. Пожалуйста, повторите отправку формы.'\nTemplates: Шаблоны\n'Create slideshow': 'Создать слайд-шоу'\nCreate: Создать\nAttach/Detach: Прикрепить/Удалить\n'Are you sure you want to delete slideshow?': 'Вы уверены, что хотите удалить это слайд-шоу?'\nSupport: Поддержка\n'Pending articles': 'Неоконченные статьи'\n'Manage Users': 'Управление пользователями'\n'Manage User Types': 'Управление типами пользователей'\n'Manage User Points System': 'Управление системой пользовательских точек'\nLast: Последняя\nFirst: Первая\nFeedback: 'Обратная связь'\n'Edit your password': 'Редактировать пароль'\n'Edit user': 'Редактировать аккаунт пользователя'\n'Edit permissions': 'Редактировать права доступа'\nDetail: Подробнее\n'Create new user': 'Создать нового пользователя'\n'Create new account': 'Создать новый аккаунт'\n'Add feed': 'Добавить источник'\n'Upload of file $1 was not successful.': 'Неудачная попытка загрузки файла $1.'\n'The file $1 could not be moved. Check you have enough of disk space.': 'Файл $1 не может быть перемещен. Проверьте наличие свободного мета на диске.'\nMiB: MiB\n'Download was not successful. Check please that the server is not out of disk space.': 'Неудачная попытка скачивания. Проверьте, имеется ли место на сервере.'\n'try again later': 'повторите попытку позже'\nat: на\n'You must at least upload one file.': 'Вы обязаны загрузить не менее одного файла.'\n'Warning: the existing data and themes will be deleted!': 'Внимание: существующие данные и темы (шаблоны) будут удалены!'\n'Value is required and cant be empty': 'Требуется значение, поле не может быть пустым.'\nUpload: Загрузить\n'Update comment': 'Обновить комментарии'\n'Time created': 'Время создания'\nThemes: 'Темы (Шаблоны)'\n'Stop current upload': 'Отсановить текущую загрузку'\n'Start uploading queue': 'Начать загрузку списка'\n'Start upload': 'Начать загрузку'\nSettings: Настройки\n'Select files': 'Выбрать файлы'\nReply: Ответ\n'New comment added': 'Добавлен новый комментарий'\n'Manage Authors': 'Управление авторами'\nLoading..: Загрузка..\nFilename: 'Имя файла'\n'Edit user type': 'Редактировать пользовательский тип'\n'Edit language': 'Редактировать язык'\n'Drag files here.': 'Перетащить файлы.'\n'Connection interrupted': 'Подключение прервано'\nBan: Запретить\n'Are you sure you want to': 'Вы уверены, что хотите'\n'Add files to the upload queue and click the start button.': 'Добавьте файлы для пакетной загрузки и нажмите кнопку.'\n'Add files': 'Добавить файлы'\n'%value% is more than %max% characters long': '%value% больше чем на %max% символов больше требуемого'\n'%value% is less than %min% characters long': '%value% меньше чем на %min% символов больше требуемого'\n'User name': 'Имя пользователя'\nNewscoop: Newscoop\n'Your password has been reset.': 'Ваш пароль переустановлен.'\n'Proceed to login.': Войти.\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': 'На страницу входа.'\n'Back to login.': 'Вернуться на страницу входа.'\n'Back to login': 'Вернуться на страницу входа'\n'An email with instructions on how to recover you password has been sent to your inbox.': 'Сообщение с инструкциями о том, как восстановить Ваш пароль был выслан на Ваш почтовый ящик.'\n'Session expired.': 'Сессия окончена.'\nProcessing...: Обработка...\nPlease: Пожалуйста\n'Go to dashboard': 'Вернуться на Мой Newscoop'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': 'Ваш браузер не поддерживает Javascript или (более вероятно) опция Javascript отключена. Исправьте ситуацию, что пользоваться Newscoop.'\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': 'Newscoop модернизировал механизмы безопасности. Для того, чтобы обновить учетную запись и использовать новые настройки безопасности, Вы должны снова ввести пароль.'\n'Newscoop cache was cleaned up': 'Кеш Newscoop был очищен.'\nDashboard: 'Мой Newscoop'\n'Your changes will be saved after login.': 'Изменения будут сохранены после входа в систему.'\n'Upload backup file': 'Загрузить файл резервной копии'\n'The file $1 has been uploaded successfully.': 'Файл $1 был успешно загружен.'\n'Media Archive': Медиа-архив\nWidgets: Виджеты\n'Widget info': 'Информация о виджетах'\n'Widget added to dashboard.': 'Виджет добавлен в Мой Newscoop.'\n'Remove widget': 'Удалить виджет'\n'Please login to continue.': 'Введите логин и пароль для продолжения.'\n'Add to dashboard': 'Добавить в Мой Newscoop'\n'Add more widgets': 'Добавить другие виджеты'\nlogin: Вход\n'This link is not valid.': 'Эта ссылка неверная.'\n'Recover password': 'Восстановить пароль'\n'Please enter your email.': 'Введите свой email.'\n'Password recovery is disabled.': 'Невозможно восстановить пароль. '\n'Password recovery': 'Восстановление пароля'\n'Password Recovery': 'Восстановление Пароля'\n'No user is registered with this email.': 'Нет пользователей, зарегистрированных с этим email.'\n'Forgot your password?': 'Забыл пароль?'\n'Email: incorrect format.': 'Email: неверный формат.'\nEmail: Email\n'Bad input parameters.': 'Неправильные входные параметры.'\n'There was an error trying to delete the file $1.': 'Ошибка при удалении файла $1.'\n'The file $1 was deleted successfully.': 'Файл $1 успешно удален.'\nSize: Размер\n'Restore file': 'Восстановить файл'\nRestore: Восстановить\nMb: Мб\n'Free disk space': 'Доступное постранство на диске'\n'Download file': 'Загрузить файл'\nDownload: Загрузить\n'Delete file': 'Удалить файл'\n'Backup list is empty.': 'Список пуст.'\n'Are you sure you want to restore the file $1?': 'Вы уверены, что желаете восстановить $1?'\n'Are you sure you want to delete the file $1?': 'Вы уверены, что хотите удалить файл $1?'\n'Import XML': 'Импорт XML'\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': 'У Вас должны быть права пользователя для добавления/изменения выпусков и статей для того, чтобы установить автора для статей.'\n'Select the field from which to generate the author': 'Выберите поле из списка для генерации поля автор'\n'Invalid or empty field $1. You must select a valid dynamic field.': 'Поле $1 - неверное или пустое. Вы должны выбрать правильное динамическое поле.'\n'Unable to create author $1 for article no. $2 ($3) of type $4.': 'Невозможно создать автора $1 для статьи №$2 ($3) типа $4.'\n'There were errors setting the author for articles of type $1 from the field $2.': 'Возникли ошибки в процессе установки автора статей типа $1 из поля $2.'\n'The author was set successfuly for articles of type $1 from the field $2.': 'Автор успешно установлен для статей типа $1 из поля $2.'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Эта статья была заблокирована $1 ($2) $3 минут назад.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Эта статья была заблокирована $1 ($2) $3 часов и $4 минут назад.'\n'Error setting the author $1 for article no. $2 ($3) of type $4.': 'Ошибка в процессе установки автора $1 для статьи №$2 ($3) типа $4.'\n'Clear system cache': 'Очистить систему кеширования'\n'The system was unable to upload the file $1. ': 'Система не может загрузить файл $1.'\n'Please check the file you are trying to upload, it might be corrupted.': 'Пожалуйста проверьте, какой файл Вы пытаетесь загрузить. Файл может быть запорчен.'\n'An error occurred in session management. Please reload the login page.': 'Произошла ошибка при управлении сеансом. Пожалуйста, перезагрузите страницу входа.'\n'This file is stored on disk as $1.': 'Этот файл сохранен на диске как $1.'\n'The system is unable to write to the directory $1.': 'Система не может записать в папку $1.'\n'The system was unable to read the file $1.': 'Система не может прочитать файл $1.'\n'The system was unable to delete the directory $1.': 'Система не может удалить папку $1.'\n'Please check if the user $1 has permission to read this file.': 'Пожалуйста проверьте, имеет ли пользователь $1 право доступа для чтения этого файла.'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'Пожалуйста проверьте, пуста ли папка и имеет ли пользователь $1 права доступа для записи в папку $2.'\n'The system was unable to write to the file $1.': 'Система не может записать в файл $1.'\n'The system was unable to delete the file $1.': 'Система не может удалить файл $1.'\n'The system was unable to create the file $1.': 'Система не может создать файл $1.'\n'The system was unable to create the directory $1.': 'Система не может создать папку $1.'\n'Please check if the user $1 has permission to write to this file.': 'Пожалуйста проверьте, имеет ли пользователь $1 права доступа для записи в этот файл.'\n'Please check if the user $1 has permission to write to the directory $2.': 'Пожалуйста проверьте, имеет ли пользователь $1 права доступа для записи в папку $2.'\n'Type the code shown above:': 'Введите код, показанный ниже:'\n'Please enter your user name.': 'Введите имя пользователя.'\n'Please enter your password.': 'Введите ваш пароль.'\n'Please enter the code shown in the image.': 'Пожалуйста, введите код, показанный на картинке.'\n'CAPTCHA code is not valid.  Please try again.': 'Код CAPTCHA недействителен. Пожалуйста, попробуйте снова.'\n'Signed in: $1': 'Пользователь: $1'\nHelp: Помощь\n'Please enter your user name and password': 'Пожалуйста, введите ваше имя и пароль'\n'You do not have the right to access this page.': 'Вы не имеете права доступа к этой странице.'\n'Login failed': 'Ошибка входа'\n'Please make sure that you typed the correct user name and password.': 'Пожалуйста, убедитесь в правильности ввода логина и пароля.'\n'If your problem persists please contact the site administrator $1': 'Если проблема не решена, обратитесь к администратору сайта $1'\nBackup/Restore: 'Резервное копирование'\n'Step 2': 'Шаг 2'\n'Step 3': 'Шаг 3'\n'Add new user': 'Создать новый аккаунт'\n'Bad credentials': 'Неверные учетные данные'\n'Active users': 'Активные пользователи'\n'New comments': 'Новые комментарии'\n'Published articles': 'Опубликованные статьи'\n'Last 7 days statistics': 'Статистика за последние 7 дней'\n'Change password': 'Изменить пароль'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.sh.yml",
    "content": "'Rename user': null\nCampsite: Newscoop\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': 'Napravi novi bekap.'\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: Šabloni\n'Create slideshow': null\nCreate: Napravi\nAttach/Detach: Prikači/Otkači\n'Are you sure you want to delete slideshow?': null\nSupport: Podrška\n'Pending articles': 'Tekstovi na čekanju'\n'Manage Users': 'Upravljanje korisnicima'\n'Manage User Types': 'Upravljanje tipovima korisnika'\n'Manage User Points System': 'Upravljanje sistemom korisničkih poena'\nLast: Poslednji\nFirst: Prvi\nFeedback: 'Povratna informacija'\n'Edit your password': 'Uredi svoju lozinku'\n'Edit user': 'Uredi korisnika'\n'Edit permissions': 'Uredi korisnička prava'\nDetail: Detalji\n'Create new user': 'Napravi novog korisnika'\n'Create new account': 'Napravi novi nalog'\n'Add feed': 'Dodaj feed'\n'Upload of file $1 was not successful.': 'Aploud fajla $1 nije bio uspešan.'\n'The file $1 could not be moved. Check you have enough of disk space.': 'Fajl $1 ne može biti premešten. Proverite da li imate dovoljno prostora na disku.'\nMiB: MB\n'Download was not successful. Check please that the server is not out of disk space.': 'Daunloud nije bio uspešan. Proverite da li na serveru ima dovoljno prostora.'\n'try again later': 'pokušajte ponovo kasnije'\nat: u\n'You must at least upload one file.': 'Morate aploudovati bar jedan fajl.'\n'Warning: the existing data and themes will be deleted!': 'Upozorenje: postojeći podaci i teme će biti obrisani!'\n'Value is required and cant be empty': 'Vrednost je obavezna i ne može ostati prazna'\nUpload: Aplouduj\n'Update comment': 'Izmeni komentar'\n'Time created': 'Vreme kreiranja'\nThemes: Teme\n'Stop current upload': 'Prekini trenutni aploud'\n'Start uploading queue': 'Započni sa aploudom reda'\n'Start upload': 'Započni aploud'\nSettings: Podešavanja\n'Select files': 'Izaberi fajlove'\nReply: Odgovori\n'New comment added': 'Novi komentar dodat'\n'Manage Authors': 'Upravljanje autorima'\nLoading..: Učitavanje...\nFilename: 'Naziv fajla'\n'Edit user type': 'Uredi tip korisnika'\n'Edit language': 'Uredi jezik'\n'Drag files here.': 'Prevuci fajlove ovde.'\n'Connection interrupted': 'Veza prekinuta'\nBan: Zabrani\n'Are you sure you want to': 'Da li ste sigurni da želite da'\n'Add files to the upload queue and click the start button.': 'Dodaj fajlove u red za aploud i pritisni dugme za početak.'\n'Add files': 'Dodaj fajlove'\n'%value% is more than %max% characters long': '%value% je duži od %max% karaktera'\n'%value% is less than %min% characters long': '%value% je kraća od %min% karaktera'\n'User name': 'Korisničko ime'\nNewscoop: Newscoop\n'Your password has been reset.': 'Lozinka je resetovana.'\n'Proceed to login.': 'Nastavi sa prijavljivanjem.'\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': 'Idi na prijavljivanje'\n'Back to login.': 'Nazad na prijavljivanje.'\n'Back to login': 'Nazad na prijavljivanje'\n'An email with instructions on how to recover you password has been sent to your inbox.': 'Email sa uputstvima za povraćaj lozinke je poslat na Vašu adresu'\n'Session expired.': 'Sesija je istekla.'\nProcessing...: Obrađujem...\nPlease: molim\n'Go to dashboard': 'Idi na kontrolnu tablu'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': 'Vaš pretraživač ne podržava Javascript ili Vam je (što je verovatnije) isključena podrška za Javascript. Sredite to da biste mogli da koristite Newscoop.'\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': 'Newscoop je unapredio svoje sigurnosne postavke. Da biste svoj nalog prilagodili ovim novim merama, morate ponovo uneti lozinku.'\n'Newscoop cache was cleaned up': 'Newscoop keš je očišćen'\nDashboard: 'Kontrolna tabla'\n'Your changes will be saved after login.': 'Vaše izmene će biti snimljene posle prijavljivanja.'\n'Upload backup file': 'Aplouduj bekap fajl'\n'The file $1 has been uploaded successfully.': 'Fajl $1 je uspešno aploudovan'\n'Media Archive': 'Arhiva medijskih zapisa'\nWidgets: Vidžeti\n'Widget info': 'Informacije o vidžetu'\n'Widget added to dashboard.': 'Vidžet je dodat na kontrolnu tablu'\n'Remove widget': 'Ukloni vidžet'\n'Please login to continue.': 'Prijavite se da biste nastavili.'\n'Add to dashboard': 'Dodaj na kontrolnu tablu'\n'Add more widgets': 'Dodaj još vidžeta'\nlogin: prijava\n'This link is not valid.': 'Ovaj link je neispravan'\n'Recover password': 'Povrati lozinku'\n'Please enter your email.': 'Unesite vaš email.'\n'Password recovery is disabled.': 'Povraćaj lozinke je onemogućen'\n'Password recovery': 'Povraćaj lozinke'\n'Password Recovery': 'Povraćaj lozinke'\n'No user is registered with this email.': 'Ne postoji korisnik sa ovim emailom'\n'Forgot your password?': 'Zaboravili ste lozinku?'\n'Email: incorrect format.': 'Email: pogrešan format.'\nEmail: email\n'Bad input parameters.': 'Pogrešni parametri unosa.'\n'There was an error trying to delete the file $1.': 'Došlo je do greške pri pokušaju brisanja fajla $1.'\n'The file $1 was deleted successfully.': 'Fajl $1 je uspešno obrisan.'\nSize: Veličina\n'Restore file': 'Vrati fajl'\nRestore: Vrati\nMb: Mb\n'Free disk space': 'Slobodno prostora na disku'\n'Download file': 'Preuzmi fajl'\nDownload: Preuzmi\n'Delete file': 'Obriši fajl'\n'Backup list is empty.': 'Lista bekapova je prazna'\n'Are you sure you want to restore the file $1?': 'Da li ste sigurni da želite da vratite fajl $1?'\n'Are you sure you want to delete the file $1?': 'Da li ste sigurni da želite da obrišete fajl $1?'\n'Import XML': 'Uvezi XML'\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': 'Morate imati odobrenja za dodavanje/menjanje izdanja i tekstova da biste bili u mogućnosti da podešavate autora svih tekstova.'\n'Select the field from which to generate the author': 'Izaberite polje iz koga će se generisati autor'\n'Invalid or empty field $1. You must select a valid dynamic field.': 'Pogrešno ili prazno polje $1. Morate izabrati ispravno polje.'\n'Unable to create author $1 for article no. $2 ($3) of type $4.': 'Nemoguće je napraviti autora $1 za članak broj $2 ($3) of tipa $4.'\n'There were errors setting the author for articles of type $1 from the field $2.': 'Došlo je do greške pri podešavanju autora za članke tipa $1 korišćenjem polja $2.'\n'The author was set successfuly for articles of type $1 from the field $2.': 'Autor je uspešno postavljen za članke tipa $1 koršćenjem polja $2.'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Tekst je zaključan od strane $1 ($2) pre $3 minut(a).'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Tekst je zaključan od strane $1 ($2) pre $3 čas(ova) i $4 minut(a).'\n'Error setting the author $1 for article no. $2 ($3) of type $4.': 'Greška pri podešavanju autora $1 za članak broj $2 ($3) tipa $4.'\n'Clear system cache': 'Obriši sistemski keš'\n'The system was unable to upload the file $1. ': 'Sistem nije bio u stanju da uploaduje fajl $1. '\n'Please check the file you are trying to upload, it might be corrupted.': 'Proverite fajl koji pokušavate da uploadujete, moguće je da je oštećen.'\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': 'Fajl je spremljen na disku kao $1.'\n'The system is unable to write to the directory $1.': 'Sistem nije u stanju da upisuje u direktorijum $1.'\n'The system was unable to read the file $1.': 'Sistem nije u stanju da čita fajl $1.'\n'The system was unable to delete the directory $1.': 'Sistem nije u stanju da obriše direkrtorijum $1.'\n'Please check if the user $1 has permission to read this file.': 'Molimo Vas proverite da li korisnik $1 ima pravo čitanja tog fajla.'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'Molimo Vas proverite da li je direktorijum prazan i da li korisnik $1 ima dozvolu da upisuje u direktorijum $2.'\n'The system was unable to write to the file $1.': 'Sistem nije u stanju da upisuje u fajl $1.'\n'The system was unable to delete the file $1.': 'Sistem nije u stanju da obriše fajl $1.'\n'The system was unable to create the file $1.': 'Sistem nije u stanju da kreira fajl $1.'\n'The system was unable to create the directory $1.': 'sistem nije u stanju da kreira direktorijum $1.'\n'Please check if the user $1 has permission to write to this file.': 'Molimo Vas proverite da li korisnik $1 ima pravo upisa u ovaj fajl. '\n'Please check if the user $1 has permission to write to the directory $2.': 'Molimo proverite da li korisnik $1 ima pravo upisa u direktorijum $2.'\n'Type the code shown above:': 'Unesite kod prikazan na slici:'\n'Please enter your user name.': 'Unesite svoje korisničko ime.'\n'Please enter your password.': 'Unesite svoju lozinku.'\n'Please enter the code shown in the image.': 'Unesite kod prikazan na slici.'\n'CAPTCHA code is not valid.  Please try again.': 'CAPTCHA kod nije ispravan. Pokušajte ponovo.'\n'Signed in: $1': 'Prijavljeno: $1'\nHelp: Pomoć\n'Please enter your user name and password': 'Unesite svoje korisničko ime i lozinku'\n'You do not have the right to access this page.': 'Nemate pravo pristupa ovoj strani'\n'Login failed': 'Neuspešna prijava'\n'Please make sure that you typed the correct user name and password.': 'Proverite da li ste ispravno upisali korisničko ime i lozinku'\n'If your problem persists please contact the site administrator $1': 'Ako se problem ponovi kontaktirajte administratora sajta $1'\nBackup/Restore: Bekap/Vraćanje\n'Step 2': 'Korak 2'\n'Step 3': 'Korak 3'\n'Add new user': 'Dodaj novog korisnika'\n'Bad credentials': null\n'Active users': 'Aktivni korisnici'\n'New comments': 'Novi komentari'\n'Published articles': 'Objavljenih tekstova'\n'Last 7 days statistics': 'Statistika za poslednjih 7 dana'\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.sq.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: null\nFirst: null\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: null\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': null\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': null\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: null\n'Delete file': null\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': null\nHelp: null\n'Please enter your user name and password': null\n'You do not have the right to access this page.': null\n'Login failed': null\n'Please make sure that you typed the correct user name and password.': null\n'If your problem persists please contact the site administrator $1': null\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.sr.yml",
    "content": "'Rename user': 'Преименуј корисника'\nCampsite: Newscoop\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': 'Грешка у додавању неисправне архиве фајлова.'\n'You do not have the right to manage backups.': 'Немате право да управљате архивом фајлова.'\n'Make a new backup': 'Креирај новз архиву фајлова.'\n'Are you sure you want to make a new backup?': 'Да ли сте сигурно да желите да додате нову архиву фајлова?'\n'Security token expired. Please resubmit the form.': 'Истекао је сигурносни токен. Молимо вас да поново попуни и пошаљете формулар.'\nTemplates: Шаблони\n'Create slideshow': 'Креирај галерију слика'\nCreate: Креирај\nAttach/Detach: Прикачи/Уклони\n'Are you sure you want to delete slideshow?': 'Сигурни сте да желите да обришете галерију слика?'\nSupport: Подршка\n'Pending articles': 'Текстови на чекању'\n'Manage Users': 'Управљање корисницима'\n'Manage User Types': 'Управљање типовима корисника'\n'Manage User Points System': 'Управљање системом корисничких поена'\nLast: Последњи\nFirst: Први\nFeedback: 'Повратна информација'\n'Edit your password': 'Уреди своју лозинку'\n'Edit user': 'Уреди корисника'\n'Edit permissions': 'Уреди корисничка права'\nDetail: Детаљи\n'Create new user': 'Направи новог корисника'\n'Create new account': 'Направи нови налог'\n'Add feed': 'Додај feed'\n'Upload of file $1 was not successful.': 'Аплоуд фајла $1 није био успешан.'\n'The file $1 could not be moved. Check you have enough of disk space.': 'Фајл $1 не може бити премештен. Проверите да ли имате довољно простора на диску.'\nMiB: МБ\n'Download was not successful. Check please that the server is not out of disk space.': 'Преузимање није било успешно. Проверите да ли на серверу има довољно простора.'\n'try again later': 'покушајте поново касније'\nat: у\n'You must at least upload one file.': 'Морате аплоудовати бар један фајл'\n'Warning: the existing data and themes will be deleted!': 'Упозорење: постојећи подаци и теме ће бити обрисани!'\n'Value is required and cant be empty': 'Вредност је обавезна, поље не може бити празно'\nUpload: Аплоудуј\n'Update comment': 'Измени коментар'\n'Time created': 'Време креирања'\nThemes: Теме\n'Stop current upload': 'Прекини тренутни аплоуд'\n'Start uploading queue': 'Започни са аплоудом реда'\n'Start upload': 'Започни аплоуд'\nSettings: Подешавања\n'Select files': 'Изабери фајлове'\nReply: Одговори\n'New comment added': 'Нови коментар додат'\n'Manage Authors': 'Управљање ауторима'\nLoading..: Учитавање...\nFilename: 'Назив фајла'\n'Edit user type': 'Уреди тип корисника'\n'Edit language': 'Уреди језик'\n'Drag files here.': 'Превуци фајлове овде.'\n'Connection interrupted': 'Веза прекинута'\nBan: Забрани\n'Are you sure you want to': 'Да ли сте сигурни да желите да'\n'Add files to the upload queue and click the start button.': 'Додај фајлове у ред за аплоуд и притисни дугме за почетак.'\n'Add files': 'Додај фајлове'\n'%value% is more than %max% characters long': '%value% је дужи од %max% карактера'\n'%value% is less than %min% characters long': '%value% је краћа од %min% карактера'\n'User name': 'Корисничко име'\nNewscoop: Newscoop\n'Your password has been reset.': 'Лозинка је ресетована.'\n'Proceed to login.': 'Настави са пријављивањем.'\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': 'Иди на пријављивање'\n'Back to login.': 'Назад на пријављивање.'\n'Back to login': 'Назад на пријављивање'\n'An email with instructions on how to recover you password has been sent to your inbox.': 'Имејл са упутствима за повраћај лозинке је послат на Вашу адресу'\n'Session expired.': 'Сесија је истекла.'\nProcessing...: Обрађујем...\nPlease: молим\n'Go to dashboard': 'Иди на контролну таблу'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': 'Ваш претраживач не подржава Javascript или Вам је (што је вероватније) искчена подршка за Javascript. Средите то да бисте могли да користите Newscoop.'\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': 'Newscoop је унапредио своје сигурносне поставке. Да бисте свој налог прилагодили овим новим мерама, морате поново унети лозинку.'\n'Newscoop cache was cleaned up': 'Newscoop кеш је очишћен'\nDashboard: 'Контролна табла'\n'Your changes will be saved after login.': 'Ваше измене ће бити снимљене после пријављивања.'\n'Upload backup file': 'Аплоудуј бекап фајл'\n'The file $1 has been uploaded successfully.': 'Фајл $1 је успешно аплоудован'\n'Media Archive': 'Архива медијских записа'\nWidgets: Виџети\n'Widget info': 'Информације о виџету'\n'Widget added to dashboard.': 'Виџет је додат на контролну таблу'\n'Remove widget': 'Укони виџет'\n'Please login to continue.': 'Пријавите се да бисте наставили'\n'Add to dashboard': 'Додај на контролну таблу'\n'Add more widgets': 'Додај још виџета'\nlogin: пријава\n'This link is not valid.': 'Овај линк је неисправан'\n'Recover password': 'Поврати лозинку'\n'Please enter your email.': 'Унесите ваш имејл'\n'Password recovery is disabled.': 'Повраћај лозинке је онемогућен'\n'Password recovery': 'Повраћај лозинке'\n'Password Recovery': 'Повраћај лозинке'\n'No user is registered with this email.': 'Не постоји корисник са овим имејлом'\n'Forgot your password?': 'Заборавили сте лозинку?'\n'Email: incorrect format.': 'Имејл: погрешан формат.'\nEmail: email\n'Bad input parameters.': 'Погрешни параметри уноса.'\n'There was an error trying to delete the file $1.': 'Дошло је до грешке при покушају брисања фајла $1.'\n'The file $1 was deleted successfully.': 'Фајл $1 је успешно обрисан.'\nSize: Величина\n'Restore file': 'Врати фајл'\nRestore: Врати\nMb: Мб\n'Free disk space': 'Слободно простора на диску'\n'Download file': 'Преузми фајл'\nDownload: Преузми\n'Delete file': 'Обриши фајл'\n'Backup list is empty.': 'Листа бекапова је празна'\n'Are you sure you want to restore the file $1?': 'Да ли сте сигурни да желите да вратите фајл $1?'\n'Are you sure you want to delete the file $1?': 'Да ли сте сигурни да желите да обришете фајл $1?'\n'Import XML': 'Увези XML'\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': 'Морате имати одобрења за додавање/мењање издања и текстова да бисте били у могућности да подешавате аутора свих текстова.'\n'Select the field from which to generate the author': 'Изаберите поље из кога ће се генерисати аутор'\n'Invalid or empty field $1. You must select a valid dynamic field.': 'Погрешно или празно поље $1. Морате изабрати исправно поље.'\n'Unable to create author $1 for article no. $2 ($3) of type $4.': 'Немогуће је направити аутора $1 за текст број $2 ($3) типа $4.'\n'There were errors setting the author for articles of type $1 from the field $2.': 'Дошло је до грешке при подешавању аутора за чланке типа $1коришћењем поља $2.'\n'The author was set successfuly for articles of type $1 from the field $2.': 'аутор је успешно постављен за текстове типа $1коришћењем поља $2'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Текст је закључан од стране $1 ($2) пре $3 минут(а)'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Текст је закључан од стране $1 ($2) пре $3 час(ова) и $4 минут(а)'\n'Error setting the author $1 for article no. $2 ($3) of type $4.': 'Грешка при подешавању аутора $1 за текст број $2 ($3) типа $4.'\n'Clear system cache': 'Обриши системски кеш'\n'The system was unable to upload the file $1. ': 'Систем није био у могуности да аплоудује фајл $1.'\n'Please check the file you are trying to upload, it might be corrupted.': 'Проверите фајл који покушавате да аплоудујете, могуће је да је оштећен.'\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': 'Фајл је спремљен на диску као $1.'\n'The system is unable to write to the directory $1.': 'Систем није у могућности да уписује у директоријум $1.'\n'The system was unable to read the file $1.': 'Систем није у могућности да чита фајл $1.'\n'The system was unable to delete the directory $1.': 'Систем није у могућности да обрише директоријум $1.'\n'Please check if the user $1 has permission to read this file.': 'Молимо Вас проверите да ли корисник $1 има право читања тог фајла.'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'Молимо Вас проверите да ли је директоријум празан и да ли корисник  $1 има дозволу да уписује у директоријум  $2'\n'The system was unable to write to the file $1.': 'Систем није у могућности да уписује у фајл  $1.'\n'The system was unable to delete the file $1.': 'Систем није у могућности да обрише фајл  $1.'\n'The system was unable to create the file $1.': 'Систем није у могућности да креира фајл  $1.'\n'The system was unable to create the directory $1.': 'Систем не може да креира директоријум  $1.'\n'Please check if the user $1 has permission to write to this file.': 'Молимо Вас проверите да ли корисник  $1 има право уписа у овај фајл.'\n'Please check if the user $1 has permission to write to the directory $2.': 'Молимо проверите да ли корисник  $1 има право уписа у директоријум  $2.'\n'Type the code shown above:': 'Унесите код приказан на слици:'\n'Please enter your user name.': 'Унесите своје корисничко име'\n'Please enter your password.': 'Унесите своју лозинку.'\n'Please enter the code shown in the image.': 'Унесите код приказан на слици.'\n'CAPTCHA code is not valid.  Please try again.': 'CAPTCHA код није исправан. Покушајте поново.'\n'Signed in: $1': 'Пријављено: $1'\nHelp: Помоћ\n'Please enter your user name and password': 'Унесите своје корисничко име и лозинку'\n'You do not have the right to access this page.': 'Немате право приступа овој страни'\n'Login failed': 'Неуспешна пријава'\n'Please make sure that you typed the correct user name and password.': 'Проверите да ли сте исправно уписали корисничко име и лозинку'\n'If your problem persists please contact the site administrator $1': 'Ако се проблем понови контактирајте администратора сајта $1'\nBackup/Restore: Бекап/враћање\n'Step 2': 'Корак 2'\n'Step 3': 'Корак 3'\n'Add new user': 'Додај новог корисника'\n'Bad credentials': 'Погрешан корисник или шифра'\n'Active users': 'Активни корисници'\n'New comments': 'Нови коментари'\n'Published articles': 'Објављени текстови'\n'Last 7 days statistics': 'Статистика за последњих 7 дана'\n'Change password': 'Промени лозинку'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.sv.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: Sista\nFirst: Första\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: Mallar\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': 'Redigera språk'\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': null\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: null\n'Delete file': 'Radera fil'\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': 'System kunde inte skriva till katalogen $1.'\n'The system was unable to read the file $1.': 'System kunde inte läsa filen $1.'\n'The system was unable to delete the directory $1.': 'System kunde inte radera katalogen $1.'\n'Please check if the user $1 has permission to read this file.': 'Var god kontrollera om användaren $1 har rättigheter att läsa denna fil.'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': 'System kunde inte skriva till filen $1.'\n'The system was unable to delete the file $1.': 'System kunde inte radera filen $1.'\n'The system was unable to create the file $1.': 'System kunde inte skapa filen $1.'\n'The system was unable to create the directory $1.': 'System kunde inte skapa katalogen $1.'\n'Please check if the user $1 has permission to write to this file.': 'Var god kontrollera om användaren $1 har rättigheter att skriva till denna fil.'\n'Please check if the user $1 has permission to write to the directory $2.': 'Var god kontrollera om användaren $1 har rättigheter att skriva till katalogen $2.'\n'Type the code shown above:': 'Skriv koden som visas ovan:'\n'Please enter your user name.': 'Var god skriv ditt användarnamn.'\n'Please enter your password.': 'Var god skriv ditt lösenord.'\n'Please enter the code shown in the image.': 'Var god skriv koden som visas i bilden.'\n'CAPTCHA code is not valid.  Please try again.': 'CAPTCHA koden är ogiltig. Var god försök igen.'\n'Signed in: $1': 'Inloggad som: $1'\nHelp: Hjälp\n'Please enter your user name and password': 'Var god skriv in användarnamn och lösenord'\n'You do not have the right to access this page.': 'Du har inte rätt att komma åt denna sida'\n'Login failed': 'Inloggning misslyckades'\n'Please make sure that you typed the correct user name and password.': 'Var god kontrollera att du skrev rätt användarnamn och lösenord'\n'If your problem persists please contact the site administrator $1': 'Om problemet kvarstår, var god kontakta sajtadministratören $1'\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.tr.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: null\nFirst: null\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: null\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': null\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': null\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': 'Parola kurtarma'\n'Password Recovery': 'Parola kurtarma'\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: null\n'Delete file': null\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': null\nHelp: null\n'Please enter your user name and password': null\n'You do not have the right to access this page.': null\n'Login failed': null\n'Please make sure that you typed the correct user name and password.': null\n'If your problem persists please contact the site administrator $1': null\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.uk.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': 'Відтворення зобрадже'\n'Featured Article Lists': 'Списки вибраних статей'\n'You have tried to upload an invalid backup file.': 'Ви намагалися завантажити невірний файл архівної копії.'\n'You do not have the right to manage backups.': 'Ви не маєте прав керувати архівними копіями.'\n'Make a new backup': 'Створити нову архівну копію'\n'Are you sure you want to make a new backup?': 'Ви впевнені що хочете створити нову архівну копію'\n'Security token expired. Please resubmit the form.': 'Маркер безпеки прострочений. Будь ласка перепідтвердіть форму.'\nTemplates: Шаблони\n'Create slideshow': 'Створити слайдшоу'\nCreate: Створити\nAttach/Detach: 'Приєднати / Від’єднати'\n'Are you sure you want to delete slideshow?': 'Ви впевнені що хочете видалити слайд-шоу?'\nSupport: Підтримка\n'Pending articles': 'Незакінчені статті'\n'Manage Users': 'Керування користувачами'\n'Manage User Types': 'Керування типами користувачів'\n'Manage User Points System': 'системою точок користувача'\nLast: Останнє\nFirst: Перше\nFeedback: 'Зворотній звязок'\n'Edit your password': 'Відредагуйте свій пароль'\n'Edit user': 'Редагування користувача'\n'Edit permissions': 'Редагування прав'\nDetail: Деталі\n'Create new user': 'Створити нового користувача'\n'Create new account': 'Створити новий обліковий запис'\n'Add feed': 'Додати '\n'Upload of file $1 was not successful.': 'Невдале завантаження файлу $1.'\n'The file $1 could not be moved. Check you have enough of disk space.': 'Файл $1 не може бути переміщений. Перевірте наявність достатньо вільного місця.'\nMiB: МіВ\n'Download was not successful. Check please that the server is not out of disk space.': 'Невдале завантаження. Перевірте вільне місце на сервері.'\n'try again later': 'Спробуйте ще раз'\nat: на\n'You must at least upload one file.': 'Ви маєте принаймні завантажити файл.'\n'Warning: the existing data and themes will be deleted!': 'Попередження: Існуюча дата та тема будуть видалені.'\n'Value is required and cant be empty': 'Значення обов’язкове та не може бути незаповнено.'\nUpload: Завантажувати\n'Update comment': 'Оновити коментарі'\n'Time created': 'Час створено'\nThemes: Теми\n'Stop current upload': 'Зупинити поточне завантаження'\n'Start uploading queue': 'Почати завантаження черги'\n'Start upload': 'Почати завантаження'\nSettings: Налаштування\n'Select files': 'Вибрати файли'\nReply: Відповідь\n'New comment added': 'Нові коментарі додані'\n'Manage Authors': 'Керування Авторами'\nLoading..: Завантаження...\nFilename: 'Ім’я файлу'\n'Edit user type': 'Редагувати тип користувача'\n'Edit language': 'Редагувати мову'\n'Drag files here.': 'Перетягніть файл сюди.'\n'Connection interrupted': 'З’єднання перервано. УзБнБШ'\nBan: Заборона\n'Are you sure you want to': 'Ви впевнені що хочете '\n'Add files to the upload queue and click the start button.': 'Додайте файли до списку завантаження та натисніть Старт'\n'Add files': 'Додати файли'\n'%value% is more than %max% characters long': '%value%  більш ніж %max% максимальна кількість.'\n'%value% is less than %min% characters long': '%value% менш ніж  %mix% мінімальна кількість.'\n'User name': 'Ім’я користувача'\nNewscoop: Newscoop\n'Your password has been reset.': 'Ваш пароль було скинуто.'\n'Proceed to login.': Авторизуватись\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': Увійти\n'Back to login.': 'Назад до сторінки входу.'\n'Back to login': 'Назад до сторінки входу'\n'An email with instructions on how to recover you password has been sent to your inbox.': 'Лист з інструкціями для віновлення вашого паролю було відправлено на вашу електронну адресу.'\n'Session expired.': 'Сесія закінчена.'\nProcessing...: Обробка...\nPlease: 'Будь ласка'\n'Go to dashboard': 'на робочий стіл'\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': 'Ваш браузер не підтримує Javascript або вимкнена його підтримка. Будь ласка увімкніть щоб користуватись Newscoop'\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': 'Newscoop підвищив заходи безпеки. Для того, щоб оновити свій аккаунт, щоб використовувати цю підвищену безпеку, необхідно ввести пароль заново.'\n'Newscoop cache was cleaned up': 'Кеш видалено'\nDashboard: 'Панель віджетів'\n'Your changes will be saved after login.': 'Зміни будуть збережені піся авторизаціЇ'\n'Upload backup file': 'Завантажте файл резервної копії'\n'The file $1 has been uploaded successfully.': 'Файл $1 завантажений успішно.'\n'Media Archive': 'Медіа архів'\nWidgets: Віджети\n'Widget info': 'Інформація про віджети'\n'Widget added to dashboard.': 'Віджет додано до панелі'\n'Remove widget': 'Видалити віджет'\n'Please login to continue.': 'Будь ласка авторизуйтесь щоб продовжити.'\n'Add to dashboard': 'Додано до панелі віджетів'\n'Add more widgets': 'Додати більше віджетів'\nlogin: Логін\n'This link is not valid.': 'Це посилання не є дійсним'\n'Recover password': 'Відновити пароль'\n'Please enter your email.': 'Будь ласка введіть вашу електрону пошту'\n'Password recovery is disabled.': 'Відновлення паролю відключено.'\n'Password recovery': 'відновлення паролю'\n'Password Recovery': 'Відновлення паролю'\n'No user is registered with this email.': 'Немає зареєстрованих користувачів з такою адресою.'\n'Forgot your password?': 'Забули пароль?'\n'Email: incorrect format.': 'Е-пошта: невірний формат.'\nEmail: Е-пошта\n'Bad input parameters.': 'Невірні вхідні параметри.'\n'There was an error trying to delete the file $1.': 'Трапилася помилка при видаленні файлу $1.'\n'The file $1 was deleted successfully.': 'Файл $1 було видалено.'\nSize: Розмір\n'Restore file': 'Відновити файл'\nRestore: Відновлення\nMb: Мб\n'Free disk space': 'Вільне місце'\n'Download file': 'Завантажити файл'\nDownload: Завантажити\n'Delete file': 'Видалити файл'\n'Backup list is empty.': 'Резрвний список пустий.'\n'Are you sure you want to restore the file $1?': 'Ви впевнені що хочете відновити файл $1?'\n'Are you sure you want to delete the file $1?': 'Ви впевнені що хочете видалити файл $1?'\n'Import XML': 'Імпорт XML'\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': 'Ви повинні мати права доступу для додавання / зміни випусків і статей для того, щоб встановити автора за всіма статтями.'\n'Select the field from which to generate the author': 'Виберіть поле зі списку створених автором'\n'Invalid or empty field $1. You must select a valid dynamic field.': 'Невірне або пусте значення поля $1. Ви маєте вибрати вірне динамічне поле.'\n'Unable to create author $1 for article no. $2 ($3) of type $4.': 'Не вдається створити автора «$1» для статті №$2 ($3) типу $4.'\n'There were errors setting the author for articles of type $1 from the field $2.': 'Трапилася помилка під час встановлення автора для статті $1 з поля  $2.'\n'The author was set successfuly for articles of type $1 from the field $2.': 'Автора було успішно призначени для статей типу  $1 з поля $2.'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Ця стаття була заблокована $1 ($2) $3 хвилин тому.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Ця стаття була заблокована $1 ($2) $3 годин та $4 хвилин тому.'\n'Error setting the author $1 for article no. $2 ($3) of type $4.': 'Помилка встановлення автора $1 для статті № $2 ($3) типу $4.'\n'Clear system cache': 'Очистити системний кеш'\n'The system was unable to upload the file $1. ': 'Система не може завантажити файл $1.'\n'Please check the file you are trying to upload, it might be corrupted.': 'Будь ласка перевірти файл який ви намагаєтесь завантажити, можливо він пошкоджений.'\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': 'Файл збережено на диску як $1.'\n'The system is unable to write to the directory $1.': 'Система не може записати до директорії $1.'\n'The system was unable to read the file $1.': 'Система не може прочитати файл $1.'\n'The system was unable to delete the directory $1.': 'Система не може видалити файл $1.'\n'Please check if the user $1 has permission to read this file.': 'Будь ласка перевірте чи має право користувач $1 читати файл.'\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': 'Будь перевірте якщо тека пуста та користувач $1 має право записувати у діректорію  $2.'\n'The system was unable to write to the file $1.': 'Система не може записати файл  $1.'\n'The system was unable to delete the file $1.': 'Ситема не може видалити файл  $1.'\n'The system was unable to create the file $1.': 'Система не може створити файл $1.'\n'The system was unable to create the directory $1.': 'Система не може створити теку $1.'\n'Please check if the user $1 has permission to write to this file.': 'Будь ласка перевірте чи має право користувач  $1 писати у цей файл.'\n'Please check if the user $1 has permission to write to the directory $2.': 'Будь ласка первірте чи має право користувач  $1 писати у теку.'\n'Type the code shown above:': 'Введіть код, вказаний вище:'\n'Please enter your user name.': 'Будь ласка, введіть ваше імя користувача.'\n'Please enter your password.': 'Будь ласка, введіть ваш пароль.'\n'Please enter the code shown in the image.': 'Будь ласка, введіть код вказаний на зображенні.'\n'CAPTCHA code is not valid.  Please try again.': 'САРТСНА код невірний. Спробуйте ще.'\n'Signed in: $1': 'Підписано до: $1'\nHelp: Допомога\n'Please enter your user name and password': 'Будь ласка, введіть ваше імя користувача та пароль'\n'You do not have the right to access this page.': 'Ви немає прав для доступу до цієї сторінки.'\n'Login failed': 'Помилка авторизації'\n'Please make sure that you typed the correct user name and password.': 'Будь ласка переконайтесь що ви ввели правильне імя користувача та пароль.'\n'If your problem persists please contact the site administrator $1': 'Якщо проблема не зникне, зверніться до адміністратора сайту $1'\nBackup/Restore: 'Резерв / Відновлення'\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.vi.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: null\nFirst: null\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: null\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': null\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': null\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: null\n'Delete file': null\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': null\nHelp: null\n'Please enter your user name and password': null\n'You do not have the right to access this page.': null\n'Login failed': null\n'Please make sure that you typed the correct user name and password.': null\n'If your problem persists please contact the site administrator $1': null\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.zh.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: 创建\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: 最后\nFirst: '最初 '\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: 模版\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': 编辑语言\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': 用户名\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: 登陆\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: 下载\n'Delete file': null\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': null\nHelp: null\n'Please enter your user name and password': null\n'You do not have the right to access this page.': '&#20320;&#26080;&#26435;&#38480;&#35775;&#38382;&#27492;&#39029;&#38754;'\n'Login failed': '&#30331;&#38470;&#22833;&#36133;'\n'Please make sure that you typed the correct user name and password.': null\n'If your problem persists please contact the site administrator $1': null\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/home.zh_TW.yml",
    "content": "'Rename user': null\nCampsite: null\n'Image Rendering': null\n'Featured Article Lists': null\n'You have tried to upload an invalid backup file.': null\n'You do not have the right to manage backups.': null\n'Make a new backup': null\n'Are you sure you want to make a new backup?': null\n'Security token expired. Please resubmit the form.': null\nTemplates: null\n'Create slideshow': null\nCreate: null\nAttach/Detach: null\n'Are you sure you want to delete slideshow?': null\nSupport: null\n'Pending articles': null\n'Manage Users': null\n'Manage User Types': null\n'Manage User Points System': null\nLast: null\nFirst: null\nFeedback: null\n'Edit your password': null\n'Edit user': null\n'Edit permissions': null\nDetail: null\n'Create new user': null\n'Create new account': null\n'Add feed': null\n'Upload of file $1 was not successful.': null\n'The file $1 could not be moved. Check you have enough of disk space.': null\nMiB: null\n'Download was not successful. Check please that the server is not out of disk space.': null\n'try again later': null\nat: null\n'You must at least upload one file.': null\n'Warning: the existing data and themes will be deleted!': null\n'Value is required and cant be empty': null\nUpload: null\n'Update comment': null\n'Time created': null\nThemes: 模版\n'Stop current upload': null\n'Start uploading queue': null\n'Start upload': null\nSettings: null\n'Select files': null\nReply: null\n'New comment added': null\n'Manage Authors': null\nLoading..: null\nFilename: null\n'Edit user type': null\n'Edit language': null\n'Drag files here.': null\n'Connection interrupted': null\nBan: null\n'Are you sure you want to': null\n'Add files to the upload queue and click the start button.': null\n'Add files': null\n'%value% is more than %max% characters long': null\n'%value% is less than %min% characters long': null\n'User name': 用户名\nNewscoop: null\n'Your password has been reset.': null\n'Proceed to login.': null\n'Hi, \\n\\nfor password recovery, please follow this link: $1': 'Hi, \\n\\nfor password recovery, please follow this link: $1'\n'Go to login': null\n'Back to login.': null\n'Back to login': null\n'An email with instructions on how to recover you password has been sent to your inbox.': null\n'Session expired.': null\nProcessing...: null\nPlease: null\n'Go to dashboard': null\n'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.': null\n'Newscoop has upgraded its security measures.  In order to upgrade your account to use this increased security, you must enter your password again.': null\n'Newscoop cache was cleaned up': null\nDashboard: null\n'Your changes will be saved after login.': null\n'Upload backup file': null\n'The file $1 has been uploaded successfully.': null\n'Media Archive': null\nWidgets: null\n'Widget info': null\n'Widget added to dashboard.': null\n'Remove widget': null\n'Please login to continue.': null\n'Add to dashboard': null\n'Add more widgets': null\nlogin: null\n'This link is not valid.': null\n'Recover password': null\n'Please enter your email.': null\n'Password recovery is disabled.': null\n'Password recovery': null\n'Password Recovery': null\n'No user is registered with this email.': null\n'Forgot your password?': null\n'Email: incorrect format.': null\nEmail: null\n'Bad input parameters.': null\n'There was an error trying to delete the file $1.': null\n'The file $1 was deleted successfully.': null\nSize: null\n'Restore file': null\nRestore: null\nMb: null\n'Free disk space': null\n'Download file': null\nDownload: null\n'Delete file': null\n'Backup list is empty.': null\n'Are you sure you want to restore the file $1?': null\n'Are you sure you want to delete the file $1?': null\n'Import XML': null\n'You must have the permissions to add/change issues and articles in order to set the author for all articles.': null\n'Select the field from which to generate the author': null\n'Invalid or empty field $1. You must select a valid dynamic field.': null\n'Unable to create author $1 for article no. $2 ($3) of type $4.': null\n'There were errors setting the author for articles of type $1 from the field $2.': null\n'The author was set successfuly for articles of type $1 from the field $2.': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Error setting the author $1 for article no. $2 ($3) of type $4.': null\n'Clear system cache': null\n'The system was unable to upload the file $1. ': null\n'Please check the file you are trying to upload, it might be corrupted.': null\n'An error occurred in session management. Please reload the login page.': null\n'This file is stored on disk as $1.': null\n'The system is unable to write to the directory $1.': null\n'The system was unable to read the file $1.': null\n'The system was unable to delete the directory $1.': null\n'Please check if the user $1 has permission to read this file.': null\n'Please check if the directory is empty and the user $1 has permission to write to the directory $2.': null\n'The system was unable to write to the file $1.': null\n'The system was unable to delete the file $1.': null\n'The system was unable to create the file $1.': null\n'The system was unable to create the directory $1.': null\n'Please check if the user $1 has permission to write to this file.': null\n'Please check if the user $1 has permission to write to the directory $2.': null\n'Type the code shown above:': null\n'Please enter your user name.': null\n'Please enter your password.': null\n'Please enter the code shown in the image.': null\n'CAPTCHA code is not valid.  Please try again.': null\n'Signed in: $1': null\nHelp: null\n'Please enter your user name and password': null\n'You do not have the right to access this page.': '&#20320;&#26080;&#26435;&#38480;&#35775;&#38382;&#27492;&#39029;&#38754;'\n'Login failed': '&#30331;&#38470;&#22833;&#36133;'\n'Please make sure that you typed the correct user name and password.': null\n'If your problem persists please contact the site administrator $1': null\nBackup/Restore: null\n'Step 2': null\n'Step 3': null\n'Add new user': null\n'Bad credentials': null\n'Active users': null\n'New comments': null\n'Published articles': null\n'Last 7 days statistics': null\n'Change password': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.ar.yml",
    "content": "'so that default templates can be assigned to the issue.': 'حتى يمكن للنماذج الرئيسية أن تُعين الى العدد.'\n'Once this is done, the issue can be published': 'عند الانتهاء، يمكن نشر العدد.'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'أما هذا العدد، لا يمكن أن ترى معاينته. يرجى التحقق أن تم تعيين نسق الى المنشور.'\n'This issue cannot be previewed. Please make sure it has the front template selected.': 'لا يمكن ان ترى معاينة هذا العدد. يرجى التحقق أن حددت النموذج الأمامي.'\n'Publish all articles:': 'إنشر جميع المقالات:'\n'Publish all articles': 'إنشر جميع المقالات'\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': 'نشر مجبر لكل المقالات. اذا عين على  لا ، سيتم نشر المقالات فقط بحالة نشر بالإصدار.'\ndefault: 'الاختيار الافتراضي'\n'The publishing/unpublishing can not be set the same time': 'لا يمكن تعيين في نفس الوقت النشر وإلغاء النشر'\n'The publishing schedule can not be set in the past': 'لا يمكن تعيين جدول النشر في الماضي'\n'Please assign at least one theme to the publication': 'يرجى تعيين ما لا يقل عن نسق واحد إلى المنشور'\n'Issue Theme': 'نسق العدد'\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': 'القيم التي تحاول أن تعينها تتعارض مع الاصدار $1$2. $3 ($4)$5.'\n'The number must be unique for each issue in this publication of the same language.': 'يجب أن يكون فريد من نوعه الرقم لكل عدد في هذا المنشور من نفس اللغة.'\n'The language and URL name must be unique for each issue in this publication.': 'يجب أن يكون اسم اللغة واسم الرابط فريدين من نوعهما لكل عدد في هذا المنشور.'\n'Issue created.': 'تم انشاء العدد'\n'Issue updated': 'تم تحديث العدد'\n'Could not save the changes to the issue.': 'لم تحفظ التغييرات الى العدد'\n'Unpublish on: $1': 'ألغ النشر على: $1'\n'There are $1 articles in this issue.': 'توجد $1 مقالات في هذا العدد.'\n'The issue $1 has been deleted.': 'تم حذف العدد $1.'\nSchedule: جدول\n'Publish on: $1': 'إنشر في: $1'\n'Publish Date $1': 'تاريخ النشر $1'\n'Deleted issue': 'عدد محذوف'\n'Delete issue': 'إحذف العدد'\n'Click here to publish this issue': 'أنقر هنا من أجل النشر هذا العدد'\n'A total of $1 articles were deleted.': 'تم حذف $1 مقالات في الكل.'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'اسم<BR><SMALL>(أنقر لترى الأقسام)</SMALL>'\n'Delete issue $1': 'إحذف العدد $1'\n'You do not have the right to change issues.': 'ليس لديك الحق في تغيير الأعداد'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'هل أنت متأكد أنك تريد أن تغير حالة العدد $1 من $2 إلى $3؟'\n'Add new translation': 'أضف ترجمة جديدة'\n'You do not have the right to add issues.': 'ليس لديك الحق في إضافة أعداد.'\n'The issue $1 has been successfuly added.': 'تم إضافة العدد $1 بنجاح.'\n'The issue could not be added.': 'لا يمكن إضافة العدد'\n'Change issue details': 'غير تفاصيل العدد'\n'You do not have the right to change issue details.': 'ليس لديك الحق في تغيير تفاصيل العدد'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 'تاريخ النشر <BR><SMALL> (اليوم-الشهر-السنة)</SMALL>'\n'Front Page Template': 'نموذج الصفحة الأمامية'\n'You do not have the right to delete issues.': 'ليس لديك الحق في حذف الأعداد'\n'Are you sure you want to delete the issue $1?': 'هل أنت متأكد أنك تريد حذف العدد $1 ؟ '\n'Use the structure of the previous issue': 'استخدام هيكلة العدد السابق'\n'Copy the entire structure in all languages from the previous issue except for content.': 'إنسخ الهيكلة الكاملة باللغات كلها من العدد السابق باستثناء المحتوى'\n'You may modify it later if you wish.': 'يمكنك تغييره لاحقاً إذا أردت.'\n'Create a new structure': 'أنش هيكلة جديدة'\n'Create a complete new structure.': 'أنش هيكلة جديدة تماما'\n'You must define an issue type for each language and then sections for them.': 'يجب عليك أن تحدد نوع عدد لكل لغة وثم الأقسام الخاصة بها'\n'Copy previous issue': 'إنسخ العدد السابق'\n'No previous issue.': 'لا يوجد عدد سابق'\n'Copy structure from issue number $1': 'إنسخ الهيكلة من العدد رقم $1'\n'Delete entry': 'إحذف الإدخال'\n'Issue Publishing Schedule': 'جدول النشر للعدد'\n'Invalid Input: $1': 'إدخال غير صالح: $1'\n'Issue Number': 'رقم العدد'\n'Go To Sections': 'إذهب إلى الأقسام'\n'There was an error reading the language parameter.': 'حدث خطأ أثناء قراءة متغيرات اللغة'\n'There was an error reading the publication parameter.': 'حدث خطأ أثناء قراءة متغيرات المنشور'\n'There was an error reading the issue parameter.': 'حدث خطأ أثناء قراءة متغيرات العدد'\n'There was an error scheduling the $1 action on $2': 'حدث خطأ أثناء جدولة $1 في $2'\n'The action scheduled on $1 could not be deleted.': 'لم يحذف الإجراء المجدول في $1'\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.az.yml",
    "content": "'so that default templates can be assigned to the issue.': 'deməli o mövcud nümunələr məsələyə təyin edilə bilər.'\n'Once this is done, the issue can be published': 'Bu tamamlanan kimi məsələ nəşr edilə bilər'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Bu məsələyə ön baxış etmək mümkün deyil. Lütfən, nəşrə təyin edilmiş mövzunun mövcudluğuna əmin ol.'\n'This issue cannot be previewed. Please make sure it has the front template selected.': 'Məsələyə ön baxış etmək mümkün deyil. Onun ön nümunəyə sahib olduğuna əmin ol.'\n'Publish all articles:': 'Bütün məqalələri nümayiş et:'\n'Publish all articles': 'Bütün məqalələri nümayiş et'\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': 'Bütün məqalələrin nümayişini dayandır. YOX düyməsi seçilsə, yalnız Məsələ ilə Nümayişi mümkün olan məqalələr nümayiş ediləcək.'\ndefault: mövcud\n'The publishing/unpublishing can not be set the same time': 'Nümayiş və nümayişin dayandırılması eyni zamanda baş verə bilməz'\n'The publishing schedule can not be set in the past': 'Nümayişin planlaşdırılması keçmiş zamanda ola bilməz'\n'Please assign at least one theme to the publication': 'Lütfən, nümayiş üçün ən azı bir mövzu təyin et'\n'Issue Theme': 'Məsələ Mövzusu'\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': 'Quraşdırmaq istədiyin dəyərlər $1$2 ilə mübahisəlidir. $3 ($4)$5.'\n'The number must be unique for each issue in this publication of the same language.': 'Eyni tərcümənin nəşrlərində hər məsələ üçün özünəməxsus say olmalıdır.'\n'The language and URL name must be unique for each issue in this publication.': 'Bu nəşrdin hər məsələsi üçün ayrıca dil və URL adı olmalıdır.'\n'Issue created.': 'Say hazırdır.'\n'Issue updated': 'Say yeniləndi'\n'Could not save the changes to the issue.': ' Bu məsələyə aid dəyişikliklər saxlanmadı.'\n'Unpublish on: $1': 'Bu tarixdə nümayişi dayandır: $1'\n'There are $1 articles in this issue.': 'Bu məsələdə $1 məqalə var.'\n'The issue $1 has been deleted.': '$1 məsələsi silinmişdir.'\nSchedule: Cədvəl\n'Publish on: $1': '$1 -də dərc et'\n'Publish Date $1': '$1 tarixini çap et'\n'Deleted issue': 'Silinmiş yazı'\n'Delete issue': 'Sayı sil'\n'Click here to publish this issue': 'Bu məsələni nümayiş etmək üçün kliklə'\n'A total of $1 articles were deleted.': 'Ümumilikdə $1 məqalə silinib.'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Ad<BR><SMALL>(bölmələri görmək üçün kliklə)</SMALL>'\n'Delete issue $1': '$1 sayını sil'\n'You do not have the right to change issues.': 'Məsələləri dəyişməyə ixtiyarın yoxdur.'\n'Are you sure you want to change the issue $1 status from $2 to $3?': '$1 məsələsinin statusunu $2 variantından $3 variantına dəyişmək istədiyinə əminsən?'\n'Add new translation': 'Yeni tərcümə əlavə et'\n'You do not have the right to add issues.': 'Məsələ əlavə etməyə ixtiyarın yoxdur.'\n'The issue $1 has been successfuly added.': '$1 məsələsi müvəffəqiyyətlə əlavə edilmişdir.'\n'The issue could not be added.': 'Yenisi əlavə oluna bilməz.'\n'Change issue details': 'Məsələ məlumatlarını dəyiş'\n'You do not have the right to change issue details.': 'Məsələ məlumatlarını dəyişməyə ixtiyarın yoxdur.'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 'Nümayiş tarixi<BR><SMALL>(iiii-aa-gg)</SMALL>'\n'Front Page Template': 'Baş səhifənin üzlüyü'\n'You do not have the right to delete issues.': 'Məsələləri silməyə ixtiyarın yoxdur.'\n'Are you sure you want to delete the issue $1?': '$1 məsələsini silmək istədiyinə əminsən?'\n'Use the structure of the previous issue': 'Əvvəlki məsələnin strukturunu istifadə et'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Əvvəlki məsələdən tərkib xaric olmaqla bütün dillərin daxili strukturunu köçür.'\n'You may modify it later if you wish.': 'Əgər istəsən, bunu daha sonra quraşdıra bilərsən.'\n'Create a new structure': 'Yeni quruluş yarat'\n'Create a complete new structure.': 'Tamamilə yeni quruluş yarat.'\n'You must define an issue type for each language and then sections for them.': 'Sən əvvəlcə hər dil üçün məsələ müəyyən etməli, daha sonra isə onlar üçün bölmə seçməlisən.'\n'Copy previous issue': 'Əvvəlki məsələni köçür'\n'No previous issue.': 'Əvvəlki məsələ yoxdur.'\n'Copy structure from issue number $1': '$1 saylı məsələnin strukturunu köçür'\n'Delete entry': 'Girişi sil'\n'Issue Publishing Schedule': 'Məsələnin Nümayiş Qrafiki'\n'Invalid Input: $1': 'Səhv Giriş: $1'\n'Issue Number': 'Məsələnin Nömrəsi'\n'Go To Sections': 'Bölmələrə Get'\n'There was an error reading the language parameter.': 'Dil parametrlənin oxunmasında xəta baş verdi.'\n'There was an error reading the publication parameter.': 'Nümayiş parametrlərinin oxunmasında xəta baş verdi.'\n'There was an error reading the issue parameter.': 'Məsələ parametrlərinin oxunmasında xəta baş verdi.'\n'There was an error scheduling the $1 action on $2': '$1 addımının $2 tarixdə planlaşdırılmasında xəta baş verdi'\n'The action scheduled on $1 could not be deleted.': '$1 tarixinə planlaşdırılmış addım silinə bilmədi.'\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.be.yml",
    "content": "'so that default templates can be assigned to the issue.': 'так, каб шаблоны па змаўчанні можна было прызначаць для выпуску.'\n'Once this is done, the issue can be published': 'У заканчэнні дзеяння можна апублікаваць выпуск'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Немагчыма зрабіць папярэдні прагляд выпуску. Калі ласка, пераканайцеся, што для выдання існуе патрэбная тэма (шаблон).'\n'This issue cannot be previewed. Please make sure it has the front template selected.': 'Немагчыма зрабіць папярэдні прагляд выпуску. Калі ласка, пераканайцеся, што для гэтага абраны шаблон галоўнай старонкі.'\n'Publish all articles:': 'Апублікаваць усе артыкулы:'\n'Publish all articles': 'Апублікаваць усе артыкулы'\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: 'па змаўчанні'\n'The publishing/unpublishing can not be set the same time': 'Налады Апублікаваць/Адмяніць публікацыю адначасова не працуюць'\n'The publishing schedule can not be set in the past': 'Немагчыма настроіць расклады публікацыі ў мінулым часе'\n'Please assign at least one theme to the publication': 'Калі ласка, прызначце для выдання хоця бы адну тэму (шаблон)'\n'Issue Theme': 'Тэма (Шаблён) выпуску'\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': 'Велічынi, якiя Вы спрабуеце ўстанавіць, канфлiктуюць з выпускам $1$2. $3 ($4)$5. '\n'The number must be unique for each issue in this publication of the same language.': 'Нумар павiнен быць унікальным для кожнага выпуску гэтага выданьня на гэтай жа мове.'\n'The language and URL name must be unique for each issue in this publication.': 'Мова i URL павiнны быць унікальным для кожнага выпуску гэтага выданьня.'\n'Issue created.': 'Выпуск створаны.'\n'Issue updated': 'Выпуск абноўлены.'\n'Could not save the changes to the issue.': 'Не ўдалося захаваць зьмены ў выпуску.'\n'Unpublish on: $1': 'Адмянiць публiкацыю на: $1'\n'There are $1 articles in this issue.': 'Артыкулаў у выпуску: $1.'\n'The issue $1 has been deleted.': 'Выпуск $1 быў выдалены.'\nSchedule: Расклад\n'Publish on: $1': 'Публiкаваць: $1'\n'Publish Date $1': 'Дата публiкацыi $1'\n'Deleted issue': 'Выдалены выпуск'\n'Delete issue': 'Выдалiць выпуск'\n'Click here to publish this issue': 'Нацiсьнiце тут для публiкацыi выпуску'\n'A total of $1 articles were deleted.': 'Усяго артыкулаў было выдалена: $1'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Назва<BR><SMALL>(нацiсьнiце для прагляду рубрык)</SMALL>'\n'Delete issue $1': 'Выдаленьне выпуску $1'\n'You do not have the right to change issues.': 'Вы ня маеце права доступу для зьмяненьня выпуску.'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'Цi Вы ўпэўнены, што жадаеце зьмянiць статут выпуску $1 з $2 на $3? '\n'Add new translation': 'Дадаць новы пераклад'\n'You do not have the right to add issues.': 'Вы ня маеце права дадаваць выпуск.'\n'The issue $1 has been successfuly added.': 'Выпуск $1 быў пасьпяхова даданы.'\n'The issue could not be added.': 'Не ўдалося дадаць выпуск.'\n'Change issue details': 'Зьмянiць парамэтры выпуску'\n'You do not have the right to change issue details.': 'Вы ня маеце права доступу да зьмяненьня парамэтраў выпуску.'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 'Дата публiкацыi<BR><SMALL>(гггг-мм-дд)</SMALL> '\n'Front Page Template': ' Шаблён тытульнай старонкі'\n'You do not have the right to delete issues.': 'Вы ня маеце права выдаляць выпускі.'\n'Are you sure you want to delete the issue $1?': 'Цi Вы ўпэўнены, што хочаце выдалiць выпуск $1?'\n'Use the structure of the previous issue': 'Выкарыстаць структуру папярэдняга выпуску'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Скапіяваць усю структуру запiсу ва ўсе мовы з папярэдняга выпуску, за выключэньнем iнфармацыйнага напаўненьня.'\n'You may modify it later if you wish.': 'Вы можаце мадыфiкаваць гэта пазьней, калi пажадаеце.'\n'Create a new structure': 'Стварыць новую структуру'\n'Create a complete new structure.': 'Стварыць поўнасьцю новую структуру.'\n'You must define an issue type for each language and then sections for them.': 'Вы павiнны вызначыць тып выпуску для кожнай мовы i, потым, рубрыкi для iх.  '\n'Copy previous issue': 'Скапіяваць папярэднi выпуск'\n'No previous issue.': 'Няма папярэдняга выпуску.'\n'Copy structure from issue number $1': 'Скапiяваць структуру з выпуску №$1 '\n'Delete entry': 'Выдалiць запiс'\n'Issue Publishing Schedule': 'Публiкацыя выпуску заплянанаваная'\n'Invalid Input: $1': 'Няправiльны ўвод: $1'\n'Issue Number': 'Нумар выпуску'\n'Go To Sections': 'Перайсьцi да рубрык'\n'There was an error reading the language parameter.': 'Памылка чытаньня парамэтраў мовы.'\n'There was an error reading the publication parameter.': 'Памылка чытаньня парамэтраў выданьня.'\n'There was an error reading the issue parameter.': 'Памылка чытаньня парамэтраў выпуску.'\n'There was an error scheduling the $1 action on $2': 'Памылка плянаваньня апэрацыi $1 на $2'\n'The action scheduled on $1 could not be deleted.': 'Прызначаная на $1апэрацыя ня можа быць адменена'\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.bn.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': null\n'Name<BR><SMALL>(click to see sections)</SMALL>': null\n'Delete issue $1': null\n'You do not have the right to change issues.': null\n'Are you sure you want to change the issue $1 status from $2 to $3?': null\n'Add new translation': null\n'You do not have the right to add issues.': null\n'The issue $1 has been successfuly added.': null\n'The issue could not be added.': null\n'Change issue details': null\n'You do not have the right to change issue details.': null\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': null\n'Front Page Template': null\n'You do not have the right to delete issues.': null\n'Are you sure you want to delete the issue $1?': null\n'Use the structure of the previous issue': null\n'Copy the entire structure in all languages from the previous issue except for content.': null\n'You may modify it later if you wish.': null\n'Create a new structure': null\n'Create a complete new structure.': null\n'You must define an issue type for each language and then sections for them.': null\n'Copy previous issue': null\n'No previous issue.': null\n'Copy structure from issue number $1': null\n'Delete entry': null\n'Issue Publishing Schedule': null\n'Invalid Input: $1': null\n'Issue Number': null\n'Go To Sections': null\n'There was an error reading the language parameter.': null\n'There was an error reading the publication parameter.': null\n'There was an error reading the issue parameter.': null\n'There was an error scheduling the $1 action on $2': null\n'The action scheduled on $1 could not be deleted.': null\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.cs.yml",
    "content": "'so that default templates can be assigned to the issue.': 'tato defoltně nastavená šablona může být přiřazena k tomuto tématu.'\n'Once this is done, the issue can be published': 'Jakmile je to hotovo, může být téma zveřejněno'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Toto vydání nemůže být zobrazeno. Prosím ujistěte se, že publikace má přiděleno téma.'\n'This issue cannot be previewed. Please make sure it has the front template selected.': 'Toto vydání nemůže být zobrazeno. Prosím ujistěte se, že je vybrána přední šablona.'\n'Publish all articles:': 'Publikovat všechny články:'\n'Publish all articles': 'Publikovat všechny články'\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': 'Nucené publikování všech článků. Pokud nastaveno Ne, pouze články se statusem Publikovat s vydáním budou uveřejněny.'\ndefault: default\n'The publishing/unpublishing can not be set the same time': 'Publikování/nepublikování nemůže být nastaveno najednou'\n'The publishing schedule can not be set in the past': 'Publikační harmonogram nemůže být nastaven v minulosti'\n'Please assign at least one theme to the publication': 'Prosím zadejte alespoň jeden námět do publikace'\n'Issue Theme': 'Téma vydání'\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': 'Hodnoty, které se snažíte nastavit, jsou v rozporu s vydáním $1$2. $3 ($4)$5.'\n'The number must be unique for each issue in this publication of the same language.': 'Číslo musí být jedinečné pro každé vydání v této publikaci stejného jazyka.'\n'The language and URL name must be unique for each issue in this publication.': 'Jazyk a URL musí být jedinečné pro každé vydání v této publikaci.'\n'Issue created.': 'Vydání vytvořeno.'\n'Issue updated': 'Vydání aktualizováno'\n'Could not save the changes to the issue.': 'Nezdařilo se uložit změny ve vydání.'\n'Unpublish on: $1': 'Nepublikovat v: $1'\n'There are $1 articles in this issue.': 'V tomto vydání je $1 článků.'\n'The issue $1 has been deleted.': 'Vydání $1 bylo odstraněno.'\nSchedule: Rozvrh\n'Publish on: $1': 'Publikovat v: $1'\n'Publish Date $1': 'Datum Publikování $1'\n'Deleted issue': 'Odstraněné vydání'\n'Delete issue': 'Odstranit vydání'\n'Click here to publish this issue': 'Klikněte zde pro publikaci vydání'\n'A total of $1 articles were deleted.': 'Celkem $1 článků odstraněno.'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Název publikace<BR><SMALL>(klikněte pro zobrazení rubrik)</SMALL> '\n'Delete issue $1': 'Odstranit vydání $1'\n'You do not have the right to change issues.': 'Nemáte právo měnit vydání'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'Určitě chcete změnit stav vydání $1 z $2 na $3?'\n'Add new translation': 'Přidat překlad'\n'You do not have the right to add issues.': 'Nemáte právo přidat vydání'\n'The issue $1 has been successfuly added.': 'Vydání $1 bylo úspěšně přidáno'\n'The issue could not be added.': 'Vydání nemohlo být přidáno'\n'Change issue details': 'Změnit detaily vydání'\n'You do not have the right to change issue details.': 'Nemáte právo změnit detaily vydání'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 'Datum publikování <BR><SMALL>(rrrr-mm-dd)</SMALL>'\n'Front Page Template': 'Šablona Hlavní Stránky'\n'You do not have the right to delete issues.': 'Nemáte právo mazat vydání'\n'Are you sure you want to delete the issue $1?': 'Určitě chcete smazat vydání $1?'\n'Use the structure of the previous issue': 'Použít strukturu předchozího vydání'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Kopírovat celou strukturu ve všech jazycích z předchozího vydání kromě obsahu'\n'You may modify it later if you wish.': 'Můžete to upravit později'\n'Create a new structure': 'Vytvořit novou strukturu'\n'Create a complete new structure.': 'Vytvořit kopletně novou strukturu'\n'You must define an issue type for each language and then sections for them.': 'Definovat typ vydání pro každý jazyk a rubriky'\n'Copy previous issue': 'Kopírovat předchozí vydání'\n'No previous issue.': 'Žádné předchozí vydání'\n'Copy structure from issue number $1': 'Kopírovat strukturu z vydání č. $1'\n'Delete entry': 'Odstranit vztup'\n'Issue Publishing Schedule': 'Rozvrh Publikování Vydání'\n'Invalid Input: $1': 'Neplatný vztup: $1'\n'Issue Number': 'Číslo Vydání'\n'Go To Sections': 'Jít na Rubriky'\n'There was an error reading the language parameter.': 'Vyskytla se chyba při čtení jazkového parametru.'\n'There was an error reading the publication parameter.': 'Vyskytla se chyba při čtení parametru publikace.'\n'There was an error reading the issue parameter.': 'Vyskytla se chyba při čtení parametru vydání.'\n'There was an error scheduling the $1 action on $2': 'Nebylo možné naplánovat činnost $1 na $2'\n'The action scheduled on $1 could not be deleted.': 'Činnost naplánovaná na $1 nemohla být zrušena'\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.da.yml",
    "content": "'so that default templates can be assigned to the issue.': 'så standard skabeloner kan føjes til udgivelsen.'\n'Once this is done, the issue can be published': 'Udgivelsen kan udgives når dette er gjort.'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Forhåndsvisning af udgivelsen er ikke mulig. Kontroller at publikationen har et tema.'\n'This issue cannot be previewed. Please make sure it has the front template selected.': 'Udgivlesen kan ikke forhåndsvises. Kontroller at den har en aktiveret forsideskabelon.'\n'Publish all articles:': 'Udgiv alle artikler:'\n'Publish all articles': 'Udgiv alle artikler'\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': 'Tving udgivelse af alle artikler. Hvis Nej udgives kun artikler der er indstillet til at blive udgivet med udgivelsen.'\ndefault: standard\n'The publishing/unpublishing can not be set the same time': 'Udgivelse og tilbagetrækning kan ikke indstilles til samme tidspunkt'\n'The publishing schedule can not be set in the past': 'Udgivelse kan ikke planlægges til fortiden'\n'Please assign at least one theme to the publication': 'Tildel mindst et tema til publikationen'\n'Issue Theme': 'Udgivelses tema'\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': 'De valgte værdier konflikter med udgivelsen $1$2. $3 ($4)$5.'\n'The number must be unique for each issue in this publication of the same language.': 'Nummeret skal være unikt for hver udgivelse med samme sprog i denne publikation.'\n'The language and URL name must be unique for each issue in this publication.': 'Sprog og URL navn skal være unikt for hver udgivelse i denne publikation.'\n'Issue created.': 'Udgivelse oprettet.'\n'Issue updated': 'Udgivelse opdateret'\n'Could not save the changes to the issue.': 'Kunne ikke gemme ændringerne til udgivelsen'\n'Unpublish on: $1': 'Træk tilbage den: $1'\n'There are $1 articles in this issue.': 'Der er $1 artikler i denne udgivelse.'\n'The issue $1 has been deleted.': 'Udgivelsen $1 blev slettet.'\nSchedule: Planlæg\n'Publish on: $1': 'Udgiv den: $1'\n'Publish Date $1': 'Udgivelsesdato $1'\n'Deleted issue': 'Udgivelse slettet'\n'Delete issue': 'Slet udgivelse'\n'Click here to publish this issue': 'Klik her for at publicere udgivelsen'\n'A total of $1 articles were deleted.': '$1 artikler blev slettet.'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Navn<BR><SMALL>(klik for at se sektioner)</SMALL>'\n'Delete issue $1': 'Slet udgivelsen $1'\n'You do not have the right to change issues.': 'Du har ikke rettigheder til at ændre udgivelser.'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'Vil du skifte status på udgivelsen $1 fra $2 til $3?'\n'Add new translation': 'Tilføj oversættelse'\n'You do not have the right to add issues.': 'Du har ikke rettigheder til at tilføje udgivelser.'\n'The issue $1 has been successfuly added.': 'Udgivelsen $1 blev tilføjet.'\n'The issue could not be added.': 'Udgivelsen kunne ikke tilføjes.'\n'Change issue details': 'Rediger udgivelsen.'\n'You do not have the right to change issue details.': 'Du har ikke rettigheder til at redigere udgivelser.'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': Udgivelsesdato<BR><SMALL>(ååå-mm-dd)</SMALL>\n'Front Page Template': 'Skabelon til forsiden'\n'You do not have the right to delete issues.': 'Du har ikke rettigheder til at slette udgivelser.'\n'Are you sure you want to delete the issue $1?': 'Vil du slette udgivelsen $1?'\n'Use the structure of the previous issue': 'Brug seneste udgivelses struktur'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Kopier hele strukturen på alle sprog fra den seneste udgivelse (kopierer ikke indholdet).'\n'You may modify it later if you wish.': 'Du kan ændre det senere.'\n'Create a new structure': 'Opret ny struktur'\n'Create a complete new structure.': 'Opret en helt ny struktur.'\n'You must define an issue type for each language and then sections for them.': 'Du skal definere en udgivelsestype og sektioner for hvert sprog.'\n'Copy previous issue': 'Kopier seneste udgivelse'\n'No previous issue.': 'Ingen seneste udgivelse.'\n'Copy structure from issue number $1': 'Kopier struktur fra udgivelse nummer $1'\n'Delete entry': 'Slet post'\n'Issue Publishing Schedule': 'Udgivelsesplanlægning for udgivelsen'\n'Invalid Input: $1': 'Ugyldigt input: $1'\n'Issue Number': 'Udgivelsens nummer'\n'Go To Sections': 'Gå til sektioner'\n'There was an error reading the language parameter.': 'Sprogparameteret kunne ikke læses.'\n'There was an error reading the publication parameter.': 'Publikationsparameteret kunne ikke læses.'\n'There was an error reading the issue parameter.': 'Udgivelsesparameteret kunne ikke læses.'\n'There was an error scheduling the $1 action on $2': 'Handlingen $1 kunne ikke planlægges på $2'\n'The action scheduled on $1 could not be deleted.': 'Handlingen planlagt på $1 kunne ikke slettes.'\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.de.yml",
    "content": "'so that default templates can be assigned to the issue.': 'so dass die Standarddesignvorlage dieser Ausgabe zugewiesen werden kann.'\n'Once this is done, the issue can be published': 'Wenn dies erledigt ist, kann die Ausgabe veröffentlicht werden. '\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Vom Artikel kann keine Vorschau erstellt werden. Bitte stellen Sie sicher, dass er einer Designvorlage zugeordnet wurde. '\n'This issue cannot be previewed. Please make sure it has the front template selected.': 'Es kann keine Vorschau der Ausgabe erstellt werden. Überprüfen Sie bitte, dass ein Front-Template ausgewählt worden ist.'\n'Publish all articles:': 'Alle Artikel veröffentlichen: '\n'Publish all articles': 'Alle Artikel veröffentlichen'\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': 'Veröffentlichung aller Artikel erzwingen. Wenn auf Nein werden nur die Artikel mit dem Status Mit der Ausgabe veröffentlichen mit der Ausgabe veröffentlicht. '\ndefault: Standard\n'The publishing/unpublishing can not be set the same time': 'Der Zeitpunkt der Veröffentlichung / Unveröffentlichung kann nicht identisch sein. '\n'The publishing schedule can not be set in the past': 'Der Veröffentlichungszeitraum kann nicht in der Vergangenheit liegen. '\n'Please assign at least one theme to the publication': 'Bitte weisen Sie der Publikation mindestens eine Designvorlage zu. '\n'Issue Theme': 'Designvorlage der Ausgabe'\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': 'Die gewählten Werte stehen im Widerspruch zur Ausgabe $1$2. $3 ($4)$5.'\n'The number must be unique for each issue in this publication of the same language.': 'Nummern für jede Ausgabe in dieser Publikation und Sprache müssen unterschiedlich sein.'\n'The language and URL name must be unique for each issue in this publication.': 'Sprache und URL-Name für jede Ausgabe in dieser Publikation müssen unterschiedlich sein.'\n'Issue created.': 'Ausgabe erstellt.'\n'Issue updated': 'Ausgabe aktualisiert.'\n'Could not save the changes to the issue.': 'Veränderungen konnten nicht in die Ausgabe übernommen werden.'\n'Unpublish on: $1': 'Unveröffentlicht an: $1'\n'There are $1 articles in this issue.': '$1 Artikel in dieser Ausgabe.'\n'The issue $1 has been deleted.': 'Die Ausgabe $1 wurde gelöscht.'\nSchedule: Automatisieren\n'Publish on: $1': 'Veröffentlicht an: $1'\n'Publish Date $1': 'Veröffentlichungsdatum $1'\n'Deleted issue': 'Gelöschte Ausgabe'\n'Delete issue': 'Ausgabe löschen'\n'Click here to publish this issue': 'Hier klicken um diese Ausgabe zu veröffentlichen'\n'A total of $1 articles were deleted.': 'Insgesamt $1 Artikel wurden gelöscht.'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Name<BR><SMALL>(click to see sections)</SMALL> '\n'Delete issue $1': 'Ausgabe $1 löschen'\n'You do not have the right to change issues.': 'Keine Berechtigung Ausgaben zu ändern'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'Ausgabe $1 wirklich von $2 auf $3 ändern?'\n'Add new translation': 'Übersetzung hinzufügen'\n'You do not have the right to add issues.': 'Keine Berechtigung Ausgaben hinzuzufügen'\n'The issue $1 has been successfuly added.': 'Ausgabe $1 wurde hinzugefügt'\n'The issue could not be added.': 'Die Ausgabe konnte nicht verändert werden'\n'Change issue details': 'Details der Ausgabe ändern'\n'You do not have the right to change issue details.': 'Sie sind nicht berechtigt, Details der Ausgabe zu ändern.'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': Publikationsdatum<br><small>(yyyy-mm-tt)</small>\n'Front Page Template': 'Template der Startseite'\n'You do not have the right to delete issues.': 'Sie sind nicht berechtigt, Ausgaben zu löschen.'\n'Are you sure you want to delete the issue $1?': 'Ausgabe $1 wirklich löschen?'\n'Use the structure of the previous issue': 'Die Struktur der vorherigen Ausgabe verwenden'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Kopieren Sie mit Ausnahme des Inhalts die gesamte Struktur der letzten Ausgabe in allen Sprachen.'\n'You may modify it later if you wish.': 'Veränderungen können später vorgenommen werden.'\n'Create a new structure': 'Neue Struktur anlegen'\n'Create a complete new structure.': 'Komplett neue Struktur anlegen'\n'You must define an issue type for each language and then sections for them.': 'Bitte einen Ausgabentyp pro Sprache definieren und Rubriken anlegen.'\n'Copy previous issue': 'Vorherige Ausgabe kopieren'\n'No previous issue.': 'Keine vorherige Ausgabe vorhanden'\n'Copy structure from issue number $1': 'Struktur der Ausgabe $1 kopieren'\n'Delete entry': 'Eintrag löschen'\n'Issue Publishing Schedule': 'Veröffentlichung der Ausgabe automatisieren'\n'Invalid Input: $1': 'Ungültige Eingabe: $1'\n'Issue Number': Ausgabennummer\n'Go To Sections': 'Gehe zu den Rubriken'\n'There was an error reading the language parameter.': 'Fehler beim Lesen der Spracheinstellung.'\n'There was an error reading the publication parameter.': 'Fehler beim Lesen der Publikationseinstellung.'\n'There was an error reading the issue parameter.': 'Fehler beim Lesen der Ausgabeneinstellung.'\n'There was an error scheduling the $1 action on $2': 'Fehler bei der Automatisierung von $1 am $2'\n'The action scheduled on $1 could not be deleted.': 'Die automatisierte Aktion für $1 konnte nicht gelöscht werden.'\n'Click to open': 'Klicken um zu öffnen'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.de_AT.yml",
    "content": "'so that default templates can be assigned to the issue.': 'so dass die Standarddesignvorlage dieser Ausgabe zugewiesen werden kann.'\n'Once this is done, the issue can be published': 'Wenn dies erledigt ist, kann die Ausgabe veröffentlicht werden. '\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Vom Artikel kann keine Vorschau erstellt werden. Bitte stellen Sie sicher, dass er einem Thema zugeordnet wurde. '\n'This issue cannot be previewed. Please make sure it has the front template selected.': 'Es kann keine Vorschau der Ausgabe erstellt werden. Überprüfen Sie bitte, dass ein Front-Template ausgewählt worden ist.'\n'Publish all articles:': 'Alle Artikel veröffentlichen: '\n'Publish all articles': 'Alle Artikel veröffentlichen'\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': 'Veröffentlichung aller Artikel erzwingen. Wenn auf Nein werden nur die Artikel mit dem Status Mit der Ausgabe veröffentlichen mit der Ausgabe veröffentlicht. '\ndefault: Standard\n'The publishing/unpublishing can not be set the same time': 'Der Zeitpunkt der Veröffentlichung / Unveröffentlichung kann nicht identisch sein. '\n'The publishing schedule can not be set in the past': 'Der Veröffentlichungszeitraum kann nicht in der Vergangenheit liegen. '\n'Please assign at least one theme to the publication': 'Bitte weisen Sie der Publikation mindestens eine Designvorlage zu. '\n'Issue Theme': 'Designvorlage der Ausgabe'\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': 'Die gewählten Werte stehen im Widerspruch zur Ausgabe $1$2. $3 ($4)$5.'\n'The number must be unique for each issue in this publication of the same language.': 'Nummern für jede Ausgabe in dieser Publikation und Sprache müssen unterschiedlich sein.'\n'The language and URL name must be unique for each issue in this publication.': 'Sprache und URL-Name für jede Ausgabe in dieser Publikation müssen unterschiedlich sein.'\n'Issue created.': 'Ausgabe erstellt.'\n'Issue updated': 'Ausgabe aktualisiert.'\n'Could not save the changes to the issue.': 'Veränderungen konnten nicht in die Ausgabe übernommen werden.'\n'Unpublish on: $1': 'Unveröffentlicht an: $1'\n'There are $1 articles in this issue.': '$1 Artikel in dieser Ausgabe.'\n'The issue $1 has been deleted.': 'Die Ausgabe $1 wurde gelöscht.'\nSchedule: Automatisieren\n'Publish on: $1': 'Veröffentlicht an: $1'\n'Publish Date $1': 'Veröffentlichungsdatum $1'\n'Deleted issue': 'Gelöschte Ausgabe'\n'Delete issue': 'Ausgabe löschen'\n'Click here to publish this issue': 'Hier klicken um diese Ausgabe zu veröffentlichen'\n'A total of $1 articles were deleted.': 'Insgesamt $1 Artikel wurden gelöscht.'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Name<BR><SMALL>(click to see sections)</SMALL> '\n'Delete issue $1': 'Ausgabe $1 löschen'\n'You do not have the right to change issues.': 'Keine Berechtigung Ausgaben zu ändern'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'Ausgabe $1 wirklich von $2 auf $3 ändern?'\n'Add new translation': 'Übersetzung hinzufügen'\n'You do not have the right to add issues.': 'Keine Berechtigung Ausgaben hinzuzufügen'\n'The issue $1 has been successfuly added.': 'Ausgabe $1 wurde hinzugefügt'\n'The issue could not be added.': 'Die Ausgabe konnte nicht verändert werden'\n'Change issue details': 'Details der Ausgabe ändern'\n'You do not have the right to change issue details.': 'Sie sind nicht berechtigt, Details der Ausgabe zu ändern.'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': Publikationsdatum<br><small>(yyyy-mm-tt)</small>\n'Front Page Template': 'Template der Startseite'\n'You do not have the right to delete issues.': 'Sie sind nicht berechtigt, Ausgaben zu löschen.'\n'Are you sure you want to delete the issue $1?': 'Ausgabe $1 wirklich löschen?'\n'Use the structure of the previous issue': 'Die Struktur der vorherigen Ausgabe verwenden'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Kopieren Sie mit Ausnahme des Inhalts die gesamte Struktur der letzten Ausgabe in allen Sprachen.'\n'You may modify it later if you wish.': 'Veränderungen können später vorgenommen werden.'\n'Create a new structure': 'Neue Struktur anlegen'\n'Create a complete new structure.': 'Komplett neue Struktur anlegen'\n'You must define an issue type for each language and then sections for them.': 'Bitte einen Ausgabentyp pro Sprache definieren und Rubriken anlegen.'\n'Copy previous issue': 'Vorherige Ausgabe kopieren'\n'No previous issue.': 'Keine vorherige Ausgabe vorhanden'\n'Copy structure from issue number $1': 'Struktur der Ausgabe $1 kopieren'\n'Delete entry': 'Eintrag löschen'\n'Issue Publishing Schedule': 'Veröffentlichung der Ausgabe automatisieren'\n'Invalid Input: $1': 'Ungültige Eingabe: $1'\n'Issue Number': Ausgabennummer\n'Go To Sections': 'Gehe zu den Rubriken'\n'There was an error reading the language parameter.': 'Fehler beim Lesen der Spracheinstellung.'\n'There was an error reading the publication parameter.': 'Fehler beim Lesen der Publikationseinstellung.'\n'There was an error reading the issue parameter.': 'Fehler beim Lesen der Ausgabeneinstellung.'\n'There was an error scheduling the $1 action on $2': 'Fehler bei der Automatisierung von $1 am $2'\n'The action scheduled on $1 could not be deleted.': 'Die automatisierte Aktion für $1 konnte nicht gelöscht werden.'\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.el.yml",
    "content": "'so that default templates can be assigned to the issue.': 'ώστε τα προεπιλεγμένα πρότυπα να εκχωρηθούν στο τεύχος.'\n'Once this is done, the issue can be published': 'Μετά την ολοκλήρωση, το τεύχος μπορεί να δημοσιευτεί'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Το τεύχος δεν μπόρεσε να προβληθεί. Παρακαλούμε βεβαιωθείτε ότι έχετε αποδόσει θέμα στην έκδοση.'\n'This issue cannot be previewed. Please make sure it has the front template selected.': 'Το τεύχος δεν μπορεί να προβληθεί. Παρακαλούμε βεβαιωθείτε ότι το πρότυπο front είναι επιλεγμένο.'\n'Publish all articles:': 'Δημοσίευση όλων των άρθρων:'\n'Publish all articles': 'Δημοσίευση όλων των άρθρων'\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': 'Δημοσίευση όλων των άρθρων. Εάν ρυθμιστεί σε Όχι, τότε μόνο τα άρθρα με κατάσταση Δημοσίευση ανά Τεύχος θα δημοσιευτούν.'\ndefault: προεπιλογή\n'The publishing/unpublishing can not be set the same time': 'Η δημοσίευση/άρση δημοσίευσης δεν μπορεί να οριστεί την ίδια στιγμή'\n'The publishing schedule can not be set in the past': 'Το πρόγραμμα δημοσιεύσεων δεν μπορεί να οριστεί στο παρελθόν'\n'Please assign at least one theme to the publication': 'Παρακαλούμε ορίστε τουλάχιστον ένα θέμα στη δημοσίευση'\n'Issue Theme': 'Θέμα Τεύχους'\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': 'Οι αξίες που προσπαθείτε να ορίσετε, έρχονται σε σγκρουση με το τεύχος $1$2. $3 ($4)$5.'\n'The number must be unique for each issue in this publication of the same language.': 'Ο αριθμός πρέπει να είναι μοναδικός για κάθε τεύχος σε αυτή τη δημοσίευση της ίδιας γλώσσας.'\n'The language and URL name must be unique for each issue in this publication.': 'Η γλώσσα και το όνομα URL πρέπει να είναι μοναδικά για κάθε τεύχος σε αυτή τη δημοσίευση.'\n'Issue created.': 'Το τεύχος δημιουργήθηκε.'\n'Issue updated': 'Το τεύχος ενημερώθηκε'\n'Could not save the changes to the issue.': 'Οι αλλαγές ήταν αδύνατον να αποθηκευτούν στο τεύχος.'\n'Unpublish on: $1': 'Απομάκρυνση Δημοσίευσης: $1'\n'There are $1 articles in this issue.': 'Υπάρχουν $1 άρθρα σε αυτό το τεύχος.'\n'The issue $1 has been deleted.': 'Το τεύχος $1 διαγράφτηκε.'\nSchedule: Πρόγραμμα\n'Publish on: $1': 'Δημοσίευση σε: $1'\n'Publish Date $1': 'Δημοσίευση Ημερομηνίας $1'\n'Deleted issue': 'Διαγραφή τεύχους'\n'Delete issue': 'Διαγραφή τεύχους'\n'Click here to publish this issue': 'Κάντε κλίκ εδώ για δημοσίευση του τεύχους'\n'A total of $1 articles were deleted.': 'Συνολικά $1 άρθρα διαγράφτηκαν.'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Όνομα<BR><SMALL>(κάντε κλίκ για επεξεργασία)</SMALL>'\n'Delete issue $1': 'Διαγραφή τεύχους $1'\n'You do not have the right to change issues.': 'Δεν έχετε το δικαίωμα να αλλάξετε τεύχη.'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'Είστε σίγουρος/η ότι θέλετε να αλλάξετε την κατάσταση του τεύχους $1 από $2 σε $3;'\n'Add new translation': 'Προσθήκη νέας μετάφρασης'\n'You do not have the right to add issues.': 'Δεν έχετε το δικαίωμα να προσθέσετε τεύχη.'\n'The issue $1 has been successfuly added.': 'Το τεύχος $1 προστέθηκε επιτυχώς.'\n'The issue could not be added.': 'Το τεύχος δεν μπόρεσε να προστεθεί.'\n'Change issue details': 'Αλλαγή λεπτομερειών τεύχους'\n'You do not have the right to change issue details.': 'Δεν έχετε το δικαίωμα να αλλάξετε λεπτομέρειες τεύχους.'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 'Ημερομηνία δημοσίευσης<BR><SMALL>(εεεε-μμ-ηη)</SMALL>'\n'Front Page Template': 'Πρότυπο Αρχικής Σελίδας'\n'You do not have the right to delete issues.': 'Δεν έχετε το δικαίωμα να διαγράψετε τεύχη.'\n'Are you sure you want to delete the issue $1?': 'Είστε σίγουρος/η ότι θέλετε να διαγράψετε το τεύχος $1;'\n'Use the structure of the previous issue': 'Χρήση της δομής του προηγούμενου τεύχους'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Αντιγραφή ολόκληρης της δομής σε όλες τις γλώσσες από το προηγούμενο τεύχος εκτός του περιεχομένου.'\n'You may modify it later if you wish.': 'Μπορείτε να το τροποποιήσετε αργότερα, εάν το επιθυμείτε.'\n'Create a new structure': 'Δημιουργία νέας δομής'\n'Create a complete new structure.': 'Δημιουργία μιάς εντελώς καινούριας δομής.'\n'You must define an issue type for each language and then sections for them.': 'Πρέπει να ορίσετε πρώτα ένα τύπο τεύχους για κάθε γλώσσα και στη συνέχεια ενότητες.'\n'Copy previous issue': 'Αντιγραφή προηγούμενου τεύχους'\n'No previous issue.': 'Δεν υπάρχει προηγούμενο τεύχος.'\n'Copy structure from issue number $1': 'Αντιγραφή δομής από τον αριθμό τεύχους $1'\n'Delete entry': 'Διαγραφή καταχώρησης'\n'Issue Publishing Schedule': 'Πρόγραμμα Δημοσίευσης Τευχών'\n'Invalid Input: $1': 'Μη έγκυρη Εισαγωγή: $1'\n'Issue Number': 'Αριθμός Τεύχους'\n'Go To Sections': 'Πήγαινε Στις Ενότητες'\n'There was an error reading the language parameter.': 'Υπήρξε σφάλμα κατά την ανάγνωση των γλωσσικών παραμέτρων.'\n'There was an error reading the publication parameter.': 'Υπήρξε σφάλμα κατά την ανάγνωση των παραμέτρων δημοσίευσης.'\n'There was an error reading the issue parameter.': 'Υπήρξε σφάλμα κατά την ανάγνωση των παραμέτρων τεύχους.'\n'There was an error scheduling the $1 action on $2': 'Υπήρξε κάποιο σφάλμα κατά τον προγραμματισμό της $1 ενέργειας σε $2'\n'The action scheduled on $1 could not be deleted.': 'Η προγραμματισμένη ενέργεια σε $1 δεν μπόρεσε να διαγραφεί.'\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.en.yml",
    "content": "'so that default templates can be assigned to the issue.': 'so that default templates can be assigned to the issue.'\n'Once this is done, the issue can be published': 'Once this is done, the issue can be published'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'This issue cannot be previewed. Please make sure the publication has a theme assigned.'\n'This issue cannot be previewed. Please make sure it has the front template selected.': 'This issue cannot be previewed. Please make sure it has the front template selected.'\n'Publish all articles:': 'Publish all articles:'\n'Publish all articles': 'Publish all articles'\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': 'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.'\ndefault: default\n'The publishing/unpublishing can not be set the same time': 'The publishing/unpublishing can not be set the same time'\n'The publishing schedule can not be set in the past': 'The publishing schedule can not be set in the past'\n'Please assign at least one theme to the publication': 'Please assign at least one theme to the publication'\n'Issue Theme': 'Issue Theme'\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': 'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.'\n'The number must be unique for each issue in this publication of the same language.': 'The number must be unique for each issue in this publication of the same language.'\n'The language and URL name must be unique for each issue in this publication.': 'The language and URL name must be unique for each issue in this publication.'\n'Issue created.': 'Issue created.'\n'Issue updated': 'Issue updated'\n'Could not save the changes to the issue.': 'Could not save the changes to the issue.'\n'Unpublish on: $1': 'Unpublish on: $1'\n'There are $1 articles in this issue.': 'There are $1 articles in this issue.'\n'The issue $1 has been deleted.': 'The issue $1 has been deleted.'\nSchedule: Schedule\n'Publish on: $1': 'Publish on: $1'\n'Publish Date $1': 'Publish Date $1'\n'Deleted issue': 'Deleted issue'\n'Delete issue': 'Delete issue'\n'Click here to publish this issue': 'Click here to publish this issue'\n'A total of $1 articles were deleted.': 'A total of $1 articles were deleted.'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Name<BR><SMALL>(click to see sections)</SMALL>'\n'Delete issue $1': 'Delete issue $1'\n'You do not have the right to change issues.': 'You do not have the right to change issues.'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'Are you sure you want to change the issue $1 status from $2 to $3?'\n'Add new translation': 'Add new translation'\n'You do not have the right to add issues.': 'You do not have the right to add issues.'\n'The issue $1 has been successfuly added.': 'The issue $1 has been successfuly added.'\n'The issue could not be added.': 'The issue could not be added.'\n'Change issue details': 'Change issue details'\n'You do not have the right to change issue details.': 'You do not have the right to change issue details.'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>'\n'Front Page Template': 'Front Page Template'\n'You do not have the right to delete issues.': 'You do not have the right to delete issues.'\n'Are you sure you want to delete the issue $1?': 'Are you sure you want to delete the issue $1?'\n'Use the structure of the previous issue': 'Use the structure of the previous issue'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Copy the entire structure in all languages from the previous issue except for content.'\n'You may modify it later if you wish.': 'You may modify it later if you wish.'\n'Create a new structure': 'Create a new structure'\n'Create a complete new structure.': 'Create a complete new structure.'\n'You must define an issue type for each language and then sections for them.': 'You must define an issue type for each language and then sections for them.'\n'Copy previous issue': 'Copy previous issue'\n'No previous issue.': 'No previous issue.'\n'Copy structure from issue number $1': 'Copy structure from issue number $1'\n'Delete entry': 'Delete entry'\n'Issue Publishing Schedule': 'Issue Publishing Schedule'\n'Invalid Input: $1': 'Invalid Input: $1'\n'Issue Number': 'Issue Number'\n'Go To Sections': 'Go To Sections'\n'There was an error reading the language parameter.': 'There was an error reading the language parameter.'\n'There was an error reading the publication parameter.': 'There was an error reading the publication parameter.'\n'There was an error reading the issue parameter.': 'There was an error reading the issue parameter.'\n'There was an error scheduling the $1 action on $2': 'There was an error scheduling the $1 action on $2'\n'The action scheduled on $1 could not be deleted.': 'The action scheduled on $1 could not be deleted.'\n'Click to open': 'Click to open'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.en_GB.yml",
    "content": "'so that default templates can be assigned to the issue.': 'so that default templates can be assigned to the issue.'\n'Once this is done, the issue can be published': 'Once this is done, the issue can be published'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'This issue cannot be previewed. Please make sure the publication has a theme assigned.'\n'This issue cannot be previewed. Please make sure it has the front template selected.': 'This issue cannot be previewed. Please make sure it has the front template selected.'\n'Publish all articles:': 'Publish all articles:'\n'Publish all articles': 'Publish all articles'\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': 'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.'\ndefault: default\n'The publishing/unpublishing can not be set the same time': 'The publishing/unpublishing can not be set the same time'\n'The publishing schedule can not be set in the past': 'The publishing schedule can not be set in the past'\n'Please assign at least one theme to the publication': 'Please assign at least one theme to the publication'\n'Issue Theme': 'Issue Theme'\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': 'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.'\n'The number must be unique for each issue in this publication of the same language.': 'The number must be unique for each issue in this publication of the same language.'\n'The language and URL name must be unique for each issue in this publication.': 'The language and URL name must be unique for each issue in this publication.'\n'Issue created.': 'Issue created.'\n'Issue updated': 'Issue updated'\n'Could not save the changes to the issue.': 'Could not save the changes to the issue.'\n'Unpublish on: $1': 'Unpublish on: $1'\n'There are $1 articles in this issue.': 'There are $1 articles in this issue.'\n'The issue $1 has been deleted.': 'The issue $1 has been deleted.'\nSchedule: Schedule\n'Publish on: $1': 'Publish on: $1'\n'Publish Date $1': 'Publish Date $1'\n'Deleted issue': 'Deleted issue'\n'Delete issue': 'Delete issue'\n'Click here to publish this issue': 'Click here to publish this issue'\n'A total of $1 articles were deleted.': 'A total of $1 articles were deleted.'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Name<BR><SMALL>(click to see sections)</SMALL>'\n'Delete issue $1': 'Delete issue $1'\n'You do not have the right to change issues.': 'You do not have the right to change issues.'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'Are you sure you want to change the issue $1 status from $2 to $3?'\n'Add new translation': 'Add new translation'\n'You do not have the right to add issues.': 'You do not have the right to add issues.'\n'The issue $1 has been successfuly added.': 'The issue $1 has been successfuly added.'\n'The issue could not be added.': 'The issue could not be added.'\n'Change issue details': 'Change issue details'\n'You do not have the right to change issue details.': 'You do not have the right to change issue details.'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>'\n'Front Page Template': 'Front Page Template'\n'You do not have the right to delete issues.': 'You do not have the right to delete issues.'\n'Are you sure you want to delete the issue $1?': 'Are you sure you want to delete the issue $1?'\n'Use the structure of the previous issue': 'Use the structure of the previous issue'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Copy the entire structure in all languages from the previous issue except for content.'\n'You may modify it later if you wish.': 'You may modify it later if you wish.'\n'Create a new structure': 'Create a new structure'\n'Create a complete new structure.': 'Create a complete new structure.'\n'You must define an issue type for each language and then sections for them.': 'You must define an issue type for each language and then sections for them.'\n'Copy previous issue': 'Copy previous issue'\n'No previous issue.': 'No previous issue.'\n'Copy structure from issue number $1': 'Copy structure from issue number $1'\n'Delete entry': 'Delete entry'\n'Issue Publishing Schedule': 'Issue Publishing Schedule'\n'Invalid Input: $1': 'Invalid Input: $1'\n'Issue Number': 'Issue Number'\n'Go To Sections': 'Go To Sections'\n'There was an error reading the language parameter.': 'There was an error reading the language parameter.'\n'There was an error reading the publication parameter.': 'There was an error reading the publication parameter.'\n'There was an error reading the issue parameter.': 'There was an error reading the issue parameter.'\n'There was an error scheduling the $1 action on $2': 'There was an error scheduling the $1 action on $2'\n'The action scheduled on $1 could not be deleted.': 'The action scheduled on $1 could not be deleted.'\n'Click to open': 'Click to open'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.es.yml",
    "content": "'so that default templates can be assigned to the issue.': 'para que las plantillas por defecto puedan asignarse a la edición.'\n'Once this is done, the issue can be published': 'Será posible publicar la edición una vez completado este paso.'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'No es posible previsualizar esta edición.  Por favor asegúrese de que la publicación tiene un tema asignado.'\n'This issue cannot be previewed. Please make sure it has the front template selected.': 'No es posible previsualizar esta edición.  Por favor asegúrese de que ha seleccionado una plantilla para la portada.'\n'Publish all articles:': 'Publicar todos los artículos:'\n'Publish all articles': 'Publicar todos los artículos'\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': 'Forzar la pulbicación de todos los artículos. Si se elije \"No\", solamente los artículos con el estatus \"Publicar con el Ejemplar\" serán publicados.'\ndefault: 'por defecto'\n'The publishing/unpublishing can not be set the same time': 'La opción de publicar/dejar de publicar no se puede determinar al mismo tiempo'\n'The publishing schedule can not be set in the past': 'La programación de una publicación no se puede hacer en una fecha pasada'\n'Please assign at least one theme to the publication': 'Por favor asigne al menos un tema a la publicación'\n'Issue Theme': 'Tema de la edición'\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': 'Los valores que intenta establecer tienen conflicto con el ejemplar $1$2. $3 ($4)$5.'\n'The number must be unique for each issue in this publication of the same language.': 'Cada edición de esta publicación del mismo idioma debe tener un número único.'\n'The language and URL name must be unique for each issue in this publication.': 'El idioma y el nombre del URL deben ser únicos para cada edición en esta publicación.'\n'Issue created.': 'Se creó una nueva edición.'\n'Issue updated': 'Se actualizó la edición.'\n'Could not save the changes to the issue.': 'No fue posible almacenar los cambios a la edición.'\n'Unpublish on: $1': 'Despublicar el:  $1'\n'There are $1 articles in this issue.': 'Hay $1 artículos en esta edición'\n'The issue $1 has been deleted.': 'Se ha eliminado la edición $1'\nSchedule: Programar\n'Publish on: $1': 'Publicar el: $1'\n'Publish Date $1': 'Fecha de publicación $1'\n'Deleted issue': 'Edición eliminada'\n'Delete issue': 'Eliminiar edición'\n'Click here to publish this issue': 'Pinche aquí para publicar esta edición'\n'A total of $1 articles were deleted.': 'Se eliminó un total de $1 artículos'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Nombre<BR><SMALL>(clic para ver secciones)</SMALL> '\n'Delete issue $1': 'Borrar edición $1'\n'You do not have the right to change issues.': 'No tiene autorización para cambiar ediciones.'\n'Are you sure you want to change the issue $1 status from $2 to $3?': '¿Está seguro de que desea cambiar el estatus del ejemplar $1 de $2 a $3?'\n'Add new translation': 'Agregar nueva traducción'\n'You do not have the right to add issues.': 'No tiene autorización para agregar ediciones'\n'The issue $1 has been successfuly added.': 'La edición $1 ha sido agregada con éxito'\n'The issue could not be added.': 'La edición no pudo ser agregada'\n'Change issue details': 'Cambiar detalles de la edición'\n'You do not have the right to change issue details.': 'No tiene autorización para cambiar detalles de la edición'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 'Fecha de Publicación<BR><SMALL>(yyyy-mm-dd)</SMALL> '\n'Front Page Template': 'Plantilla de portada'\n'You do not have the right to delete issues.': 'No tiene privilegios para borrar ediciones'\n'Are you sure you want to delete the issue $1?': '¿Está seguro de que desea borrar el ejemplar $1?'\n'Use the structure of the previous issue': 'Usar la estructura de la edición previa'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Copiar la estructura completa de la edición previa en todos los idiomas exceptuando el contenido'\n'You may modify it later if you wish.': 'Puede modificarla luego si desea'\n'Create a new structure': 'Crear una nueva estructura'\n'Create a complete new structure.': 'Crear una nueva estructura completa'\n'You must define an issue type for each language and then sections for them.': 'Debe definir un tipo edición para cada idioma y secciones para ella'\n'Copy previous issue': 'Copiar edición previa'\n'No previous issue.': 'No existen ediciones previas'\n'Copy structure from issue number $1': 'Copiar la estructura de la edición número $1'\n'Delete entry': 'Eliminar registro'\n'Issue Publishing Schedule': 'Horario de publicación de ediciones'\n'Invalid Input: $1': 'Registro inválido:  $1'\n'Issue Number': 'Edición número'\n'Go To Sections': 'Ir a secciones'\n'There was an error reading the language parameter.': 'Hubo un error en la lectura del parámetro de idioma.'\n'There was an error reading the publication parameter.': 'Hubo un error en la lectura del parámetro de publicación.'\n'There was an error reading the issue parameter.': 'Hubo un error en la lectura del parámetro de edición.'\n'There was an error scheduling the $1 action on $2': 'Hubo un error en la programación de la acción $1 para el $2'\n'The action scheduled on $1 could not be deleted.': 'No se pudo eliminar la acción programada para el $1.'\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.es_AR.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': null\n'Name<BR><SMALL>(click to see sections)</SMALL>': null\n'Delete issue $1': null\n'You do not have the right to change issues.': null\n'Are you sure you want to change the issue $1 status from $2 to $3?': null\n'Add new translation': null\n'You do not have the right to add issues.': null\n'The issue $1 has been successfuly added.': null\n'The issue could not be added.': null\n'Change issue details': null\n'You do not have the right to change issue details.': null\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': null\n'Front Page Template': null\n'You do not have the right to delete issues.': null\n'Are you sure you want to delete the issue $1?': null\n'Use the structure of the previous issue': null\n'Copy the entire structure in all languages from the previous issue except for content.': null\n'You may modify it later if you wish.': null\n'Create a new structure': null\n'Create a complete new structure.': null\n'You must define an issue type for each language and then sections for them.': null\n'Copy previous issue': null\n'No previous issue.': null\n'Copy structure from issue number $1': null\n'Delete entry': null\n'Issue Publishing Schedule': null\n'Invalid Input: $1': null\n'Issue Number': null\n'Go To Sections': null\n'There was an error reading the language parameter.': null\n'There was an error reading the publication parameter.': null\n'There was an error reading the issue parameter.': null\n'There was an error scheduling the $1 action on $2': null\n'The action scheduled on $1 could not be deleted.': null\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.fa.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': null\n'Name<BR><SMALL>(click to see sections)</SMALL>': null\n'Delete issue $1': null\n'You do not have the right to change issues.': null\n'Are you sure you want to change the issue $1 status from $2 to $3?': null\n'Add new translation': null\n'You do not have the right to add issues.': null\n'The issue $1 has been successfuly added.': null\n'The issue could not be added.': null\n'Change issue details': null\n'You do not have the right to change issue details.': null\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': null\n'Front Page Template': null\n'You do not have the right to delete issues.': null\n'Are you sure you want to delete the issue $1?': null\n'Use the structure of the previous issue': null\n'Copy the entire structure in all languages from the previous issue except for content.': null\n'You may modify it later if you wish.': null\n'Create a new structure': null\n'Create a complete new structure.': null\n'You must define an issue type for each language and then sections for them.': null\n'Copy previous issue': null\n'No previous issue.': null\n'Copy structure from issue number $1': null\n'Delete entry': null\n'Issue Publishing Schedule': null\n'Invalid Input: $1': null\n'Issue Number': null\n'Go To Sections': null\n'There was an error reading the language parameter.': null\n'There was an error reading the publication parameter.': null\n'There was an error reading the issue parameter.': null\n'There was an error scheduling the $1 action on $2': null\n'The action scheduled on $1 could not be deleted.': null\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.fa_AF.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': null\n'Name<BR><SMALL>(click to see sections)</SMALL>': null\n'Delete issue $1': null\n'You do not have the right to change issues.': null\n'Are you sure you want to change the issue $1 status from $2 to $3?': null\n'Add new translation': null\n'You do not have the right to add issues.': null\n'The issue $1 has been successfuly added.': null\n'The issue could not be added.': null\n'Change issue details': null\n'You do not have the right to change issue details.': null\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': null\n'Front Page Template': null\n'You do not have the right to delete issues.': null\n'Are you sure you want to delete the issue $1?': null\n'Use the structure of the previous issue': null\n'Copy the entire structure in all languages from the previous issue except for content.': null\n'You may modify it later if you wish.': null\n'Create a new structure': null\n'Create a complete new structure.': null\n'You must define an issue type for each language and then sections for them.': null\n'Copy previous issue': null\n'No previous issue.': null\n'Copy structure from issue number $1': null\n'Delete entry': null\n'Issue Publishing Schedule': null\n'Invalid Input: $1': null\n'Issue Number': null\n'Go To Sections': null\n'There was an error reading the language parameter.': null\n'There was an error reading the publication parameter.': null\n'There was an error reading the issue parameter.': null\n'There was an error scheduling the $1 action on $2': null\n'The action scheduled on $1 could not be deleted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.fr.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': 'Un total de $1 articles a été supprimé. '\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Nom<BR><SMALL>(cliquer pour voir les sections)</SMALL>'\n'Delete issue $1': 'Supprimer édition $1'\n'You do not have the right to change issues.': 'Vous navez pas le droit de changer des éditions'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'Etes-vous sûr de vouloir changer le statut de lédition $1 de $2 à $3?'\n'Add new translation': 'Ajouter une nouvelle traduction'\n'You do not have the right to add issues.': 'Vous navez pas le droit dajouter des éditions'\n'The issue $1 has been successfuly added.': 'Lédition $1 a été ajoutée avec succès.'\n'The issue could not be added.': 'Lédition ne pouvait pas être ajoutée.'\n'Change issue details': 'Changer les détails dédition'\n'You do not have the right to change issue details.': 'Vous navez pas le droit de changer les détails dédition.'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 'Date de Publication<BR><SMALL>(aaaa-mm-jj)</SMALL>'\n'Front Page Template': 'Template Page dAccueil'\n'You do not have the right to delete issues.': 'Vous navez pas le droit de supprimer des éditions.'\n'Are you sure you want to delete the issue $1?': 'Etes-vous sûr de vouloir supprimer lédition $1?'\n'Use the structure of the previous issue': 'Utiliser la structure de lédition précédente'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Copier la structure entière en toutes langues de lédition précédente à part le contenu. '\n'You may modify it later if you wish.': 'Vous pouvez le modifier plus tard si vous souhaitez. '\n'Create a new structure': 'Créer une nouvelle structure '\n'Create a complete new structure.': 'Créer une nouvelle structure complète. '\n'You must define an issue type for each language and then sections for them.': 'Vous devez définir un type dédition pour chaque langue et ensuite des sections pour eux. '\n'Copy previous issue': 'Copier lédition précédente '\n'No previous issue.': 'Aucune édition précédente.'\n'Copy structure from issue number $1': 'Copier la structure de lédition n° $1'\n'Delete entry': 'Supprimer lentrée'\n'Issue Publishing Schedule': 'Programme de Publication de lédition'\n'Invalid Input: $1': 'Entrée invalide: $1'\n'Issue Number': 'Numéro dEdition'\n'Go To Sections': 'Aller aux Sections'\n'There was an error reading the language parameter.': 'Il y avait une erreur survenue lors de la lecture des paramètres de langue.'\n'There was an error reading the publication parameter.': 'Il y avait une erreur survenue lors de la lecture des paramètres de publication.'\n'There was an error reading the issue parameter.': 'Il y avait une erreur survenue lors de la lecture des paramètres dédition.'\n'There was an error scheduling the $1 action on $2': 'Il y a eu une erreur en planifiant laction $1 pour $2'\n'The action scheduled on $1 could not be deleted.': 'Laction planifiéé pour $1 ne peut être supprimée.'\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.he.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': null\n'Name<BR><SMALL>(click to see sections)</SMALL>': null\n'Delete issue $1': null\n'You do not have the right to change issues.': null\n'Are you sure you want to change the issue $1 status from $2 to $3?': null\n'Add new translation': null\n'You do not have the right to add issues.': null\n'The issue $1 has been successfuly added.': null\n'The issue could not be added.': null\n'Change issue details': null\n'You do not have the right to change issue details.': null\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': null\n'Front Page Template': null\n'You do not have the right to delete issues.': null\n'Are you sure you want to delete the issue $1?': null\n'Use the structure of the previous issue': null\n'Copy the entire structure in all languages from the previous issue except for content.': null\n'You may modify it later if you wish.': null\n'Create a new structure': null\n'Create a complete new structure.': null\n'You must define an issue type for each language and then sections for them.': null\n'Copy previous issue': null\n'No previous issue.': null\n'Copy structure from issue number $1': null\n'Delete entry': null\n'Issue Publishing Schedule': null\n'Invalid Input: $1': null\n'Issue Number': null\n'Go To Sections': null\n'There was an error reading the language parameter.': null\n'There was an error reading the publication parameter.': null\n'There was an error reading the issue parameter.': null\n'There was an error scheduling the $1 action on $2': null\n'The action scheduled on $1 could not be deleted.': null\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.hr.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': 'Ukupno $1 članak/a je obrisano.'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Ime<br><small>(kliknite da vidite rubriku)</small>'\n'Delete issue $1': 'Izbriši izdanje $1'\n'You do not have the right to change issues.': 'Nemate ovlasti mijenjati izdanja.'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'Sigurno želite promjeniti status izdanja $1 iz $2 u $3?'\n'Add new translation': 'Dodaj verziju na drugom jeziku'\n'You do not have the right to add issues.': 'Nemate ovlasti dodavati izdanja.'\n'The issue $1 has been successfuly added.': 'Izdanje $1 je uspješno dodano.'\n'The issue could not be added.': 'Izdanje ne može biti dodano.'\n'Change issue details': 'Izmijeni podrobnosti o izdanju'\n'You do not have the right to change issue details.': 'Nemate ovlasti mijenjati detalje o izdanju.'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 'Datum publikacije<BR><SMALL>(yyyy-mm-dd)</SMALL>'\n'Front Page Template': 'Predložak naslovnice'\n'You do not have the right to delete issues.': 'Nemate ovlasti brisati izdanja.'\n'Are you sure you want to delete the issue $1?': 'Jeste li sigurni da želite obrisati izdanje $1?'\n'Use the structure of the previous issue': 'Upotrijebi strukturu prethodnog izdanja'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Kopiraj čitavu strukturu prethodnog izdanja, ali bez sadržaja, na svim jezicima.'\n'You may modify it later if you wish.': 'Ovo možete izmijeniti kasnije, ukoliko budete željeli.'\n'Create a new structure': 'Kreiraj novu strukturu'\n'Create a complete new structure.': 'Kreiraj potpuno novu strukturu.'\n'You must define an issue type for each language and then sections for them.': 'Morate definirati vrstu izdanja za svaki jezik, kao i rubrike za njih.'\n'Copy previous issue': 'Prekopiraj prethodno izdanje'\n'No previous issue.': 'Prethodno izdanje ne postoji.'\n'Copy structure from issue number $1': 'Iskoristi strukturu izdanja br. $1'\n'Delete entry': 'Obriši zapis'\n'Issue Publishing Schedule': 'Raspored objavljivanja izdanja'\n'Invalid Input: $1': 'Nevažeći unos: $1'\n'Issue Number': 'Broj izdanja'\n'Go To Sections': 'Otiđi na rubrike'\n'There was an error reading the language parameter.': 'Greška pri čitanju parametra jezika.'\n'There was an error reading the publication parameter.': 'Greška pri čitanju parametra publikacije.'\n'There was an error reading the issue parameter.': 'Greška pri čitanju parametra izdanja.'\n'There was an error scheduling the $1 action on $2': 'Došlo je do greške pri zakazivanju radnje$1 za $2'\n'The action scheduled on $1 could not be deleted.': 'Radnja zakazana za $1 ne može biti obrisana.'\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.hu.yml",
    "content": "'so that default templates can be assigned to the issue.': 'hogy alapértelmezett sablonokat hozzá lehet rendelni a számhoz.'\n'Once this is done, the issue can be published': 'Ha ez megtörtént, közzé lehet tenni a számot'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Ez a szám nem tekinthető meg. Ellenőrizd, hogy hozzárendeltek-e egy témát a kiadványhoz.'\n'This issue cannot be previewed. Please make sure it has the front template selected.': 'Ez a szám nem tekinthető meg. Ellenőrizd, hogy kiválasztották-e a felhasználói oldal sablonját.'\n'Publish all articles:': 'Minden cikk közzététele:'\n'Publish all articles': 'Minden cikk közzététele'\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': 'Az összes cikk közzétételének kényszerítése. A Nem lehetőség választásakor csak a Közzététel a szám állapotával rendelkező cikkek kerülnek közzétételre.'\ndefault: alapértelmezett\n'The publishing/unpublishing can not be set the same time': 'A közzététel/visszavonás nem állítható be ugyanarra az időpontra'\n'The publishing schedule can not be set in the past': 'A közzététel beütemezése nem állítható be múltbeli időpontra'\n'Please assign at least one theme to the publication': 'Rendelj hozzá legalább egy témát a kiadványhoz'\n'Issue Theme': 'Szám témája'\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': 'Az általad beállítani próbált értékek ütköznek a/z $1$2 $3 ($4)$5 számmal.'\n'The number must be unique for each issue in this publication of the same language.': 'A sorszámnak egyedinek kell lennie minden számhoz ebben az azonos nyelvű kiadványban.'\n'The language and URL name must be unique for each issue in this publication.': 'Ezen kiadvány minden száma nyelvének és URL-nevének egyedinek kell lennie..'\n'Issue created.': 'A szám létrehozása megtörtént.'\n'Issue updated': 'A szám frissítése megtörtént'\n'Could not save the changes to the issue.': 'Nem lehet menteni a szám módosításait.'\n'Unpublish on: $1': 'Visszavonás időpontja: $1'\n'There are $1 articles in this issue.': 'Ebben a számban $1 cikk van.'\n'The issue $1 has been deleted.': 'A/z $1 szám törlése megtörtént.'\nSchedule: Ütemezés\n'Publish on: $1': 'Közzététel időpontja: $1'\n'Publish Date $1': 'Közzététel dátuma: $1'\n'Deleted issue': 'Törölt szám'\n'Delete issue': 'Szám törlése'\n'Click here to publish this issue': 'Kattints ide a szám közzétételéhez'\n'A total of $1 articles were deleted.': 'Összesen $1 cikk került törlésre.'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Név<BR><SMALL>(kattints ide a rovatok megtekintéséhez)</SMALL>'\n'Delete issue $1': 'A/z $1 szám törlése'\n'You do not have the right to change issues.': 'Nincs jogod a számok módosításaihoz.'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'Biztosan meg akarod változtatni a/z $1 szám állapotát erről: $2 erre: $3?'\n'Add new translation': 'Új fordítás hozzáadása'\n'You do not have the right to add issues.': 'Nincs jogod az új számok hozzáadásához.'\n'The issue $1 has been successfuly added.': 'A/z $1 szám hozzáadása sikerült.'\n'The issue could not be added.': 'Nem lehet hozzáadni a számot.'\n'Change issue details': 'A szám részleteinek módosítása'\n'You do not have the right to change issue details.': 'Nincs jogod a szám részleteinek módosításához.'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 'Közzététel dátuma<BR><SMALL>(éééé-hh-nn)</SMALL>'\n'Front Page Template': Címlapsablon\n'You do not have the right to delete issues.': 'Nincs jogod a számok törléséhez.'\n'Are you sure you want to delete the issue $1?': 'Biztosan törölni akarod a/z $1 számot?'\n'Use the structure of the previous issue': 'Az előző szám szerkezetének használata'\n'Copy the entire structure in all languages from the previous issue except for content.': 'A tartalom kivételével a teljes szerkezet másolása az összes nyelven az előző számból.'\n'You may modify it later if you wish.': 'Később is módosíthatod, ha szeretnéd.'\n'Create a new structure': 'Új szerkezet létrehozása'\n'Create a complete new structure.': 'Teljesen új szerkezet létrehozása.'\n'You must define an issue type for each language and then sections for them.': 'Meg kell határoznod minden nyelvhez egy számtípust, majd azok rovatait.'\n'Copy previous issue': 'Előző szám másolása'\n'No previous issue.': 'Nincs előző szám.'\n'Copy structure from issue number $1': 'A/z $1. sorszámú szám szerkezetének másolása'\n'Delete entry': 'Bejegyzés törlése'\n'Issue Publishing Schedule': 'Szám közzétételi ütemterve'\n'Invalid Input: $1': 'Érvénytelen bevitel: $1'\n'Issue Number': 'Szám sorszáma'\n'Go To Sections': 'Ugrás a rovatokhoz'\n'There was an error reading the language parameter.': 'Hiba történt a nyelvi paraméter olvasásakor.'\n'There was an error reading the publication parameter.': 'Hiba történt a kiadvány paraméter olvasásakor.'\n'There was an error reading the issue parameter.': 'Hiba történt a szám paraméter olvasásakor.'\n'There was an error scheduling the $1 action on $2': 'Hiba történt a/z $1 művelet beütemezésekor a következő időpontban: $2'\n'The action scheduled on $1 could not be deleted.': 'Nem lehet törölni a/z $1 időpontra beütemezett műveletet.'\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.hy.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': null\n'Name<BR><SMALL>(click to see sections)</SMALL>': null\n'Delete issue $1': null\n'You do not have the right to change issues.': null\n'Are you sure you want to change the issue $1 status from $2 to $3?': null\n'Add new translation': null\n'You do not have the right to add issues.': null\n'The issue $1 has been successfuly added.': null\n'The issue could not be added.': null\n'Change issue details': null\n'You do not have the right to change issue details.': null\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': null\n'Front Page Template': null\n'You do not have the right to delete issues.': null\n'Are you sure you want to delete the issue $1?': null\n'Use the structure of the previous issue': null\n'Copy the entire structure in all languages from the previous issue except for content.': null\n'You may modify it later if you wish.': null\n'Create a new structure': null\n'Create a complete new structure.': null\n'You must define an issue type for each language and then sections for them.': null\n'Copy previous issue': null\n'No previous issue.': null\n'Copy structure from issue number $1': null\n'Delete entry': null\n'Issue Publishing Schedule': null\n'Invalid Input: $1': null\n'Issue Number': null\n'Go To Sections': null\n'There was an error reading the language parameter.': null\n'There was an error reading the publication parameter.': null\n'There was an error reading the issue parameter.': null\n'There was an error scheduling the $1 action on $2': null\n'The action scheduled on $1 could not be deleted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.hy_AM.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': null\n'Name<BR><SMALL>(click to see sections)</SMALL>': null\n'Delete issue $1': null\n'You do not have the right to change issues.': null\n'Are you sure you want to change the issue $1 status from $2 to $3?': null\n'Add new translation': null\n'You do not have the right to add issues.': null\n'The issue $1 has been successfuly added.': null\n'The issue could not be added.': null\n'Change issue details': null\n'You do not have the right to change issue details.': null\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': null\n'Front Page Template': null\n'You do not have the right to delete issues.': null\n'Are you sure you want to delete the issue $1?': null\n'Use the structure of the previous issue': null\n'Copy the entire structure in all languages from the previous issue except for content.': null\n'You may modify it later if you wish.': null\n'Create a new structure': null\n'Create a complete new structure.': null\n'You must define an issue type for each language and then sections for them.': null\n'Copy previous issue': null\n'No previous issue.': null\n'Copy structure from issue number $1': null\n'Delete entry': null\n'Issue Publishing Schedule': null\n'Invalid Input: $1': null\n'Issue Number': null\n'Go To Sections': null\n'There was an error reading the language parameter.': null\n'There was an error reading the publication parameter.': null\n'There was an error reading the issue parameter.': null\n'There was an error scheduling the $1 action on $2': null\n'The action scheduled on $1 could not be deleted.': null\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.id.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': null\n'Name<BR><SMALL>(click to see sections)</SMALL>': null\n'Delete issue $1': null\n'You do not have the right to change issues.': null\n'Are you sure you want to change the issue $1 status from $2 to $3?': null\n'Add new translation': null\n'You do not have the right to add issues.': null\n'The issue $1 has been successfuly added.': null\n'The issue could not be added.': null\n'Change issue details': null\n'You do not have the right to change issue details.': null\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': null\n'Front Page Template': null\n'You do not have the right to delete issues.': null\n'Are you sure you want to delete the issue $1?': null\n'Use the structure of the previous issue': null\n'Copy the entire structure in all languages from the previous issue except for content.': null\n'You may modify it later if you wish.': null\n'Create a new structure': null\n'Create a complete new structure.': null\n'You must define an issue type for each language and then sections for them.': null\n'Copy previous issue': null\n'No previous issue.': null\n'Copy structure from issue number $1': null\n'Delete entry': null\n'Issue Publishing Schedule': null\n'Invalid Input: $1': null\n'Issue Number': null\n'Go To Sections': null\n'There was an error reading the language parameter.': null\n'There was an error reading the publication parameter.': null\n'There was an error reading the issue parameter.': null\n'There was an error scheduling the $1 action on $2': null\n'The action scheduled on $1 could not be deleted.': null\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.it.yml",
    "content": "'so that default templates can be assigned to the issue.': 'in modo che il template predefinito possa essere assegnato alledizione.'\n'Once this is done, the issue can be published': 'Quando sarà stato fatto, ledizione potrà essere pubblicata'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Non è possibile vedere lanteprima di questa edizione. Verifica che sia stato assegnato un tema a questa pubblicazione.'\n'This issue cannot be previewed. Please make sure it has the front template selected.': 'Non posso mostrare lanteprima delledizione. Verifica che sia stato scelto il template di prima pagina.'\n'Publish all articles:': 'Pubblica tutti gli articoli:'\n'Publish all articles': 'Pubblica tutti gli articoli'\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: predefinito\n'The publishing/unpublishing can not be set the same time': 'Pubblicazione e rimozione non possono avere lo stesso orario.'\n'The publishing schedule can not be set in the past': 'La pubblicazione non può essere impostata nel passato.'\n'Please assign at least one theme to the publication': 'Assegna almeno un tema alla pubblicazione'\n'Issue Theme': 'Tema delledizione'\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': 'I valori che si vogliono inserire vanno in conflitto con ledizione $1$2. $3 ($4)$5.'\n'The number must be unique for each issue in this publication of the same language.': 'Lingua e nome URL devono essere univoci per ogni edizione di questa publicazione.'\n'The language and URL name must be unique for each issue in this publication.': 'La lingua e lindirizzo URL devono essere unici per ogni edizione di questa pubblicazione.'\n'Issue created.': 'Edizione creata.'\n'Issue updated': 'Edizione aggiornata'\n'Could not save the changes to the issue.': 'Non ho potuto salvare i cambiamenti alledizione.'\n'Unpublish on: $1': 'Rimuovi da: $1'\n'There are $1 articles in this issue.': 'In questa edizione ci sono $1 articoli.'\n'The issue $1 has been deleted.': 'Ledizione $1 è stata eliminata.'\nSchedule: Programmazione\n'Publish on: $1': 'Pubblica in: $1'\n'Publish Date $1': 'Data di pubblicazione $1'\n'Deleted issue': 'Edizione eliminata'\n'Delete issue': 'Elimina edizione'\n'Click here to publish this issue': 'Clicca qui per pubblicare ledizione'\n'A total of $1 articles were deleted.': 'Sono stati eliminati $1 articoli in totale.'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Nome<BR/><SMALL>(clicca per le sezioni)</SMALL>'\n'Delete issue $1': 'Elimina edizione $1'\n'You do not have the right to change issues.': 'Non hai il permesso di cambiare ledizione.'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'Vuoi davvero cambiare lo stato delledizione $1 da $2 a $3?'\n'Add new translation': 'Aggiungi traduzione'\n'You do not have the right to add issues.': 'Non hai il permesso di aggiungere edizioni.'\n'The issue $1 has been successfuly added.': 'Ledizione $1 è stata aggiunta.'\n'The issue could not be added.': 'Ledizione non è stata aggiunta.'\n'Change issue details': 'Modifica i dettagli delledizione'\n'You do not have the right to change issue details.': 'Non hai il permeso di modificare i dettagli delledizione.'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 'Data di pubblicazione<BR/><SMALL>(AAAA-MM-GG)</SMALL>'\n'Front Page Template': 'Template di prima pagina'\n'You do not have the right to delete issues.': 'Non hai il permesso di eliminare edizioni.'\n'Are you sure you want to delete the issue $1?': 'Vuoi davvero eliminare ledizione $1?'\n'Use the structure of the previous issue': 'Usa la struttura delledizione precedente'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Copia lintera struttura in tutte le lingue dalla precedente edizione, esclusi i contenuti.'\n'You may modify it later if you wish.': 'Potrai in seguito modificarlo.'\n'Create a new structure': 'Crea una nuova struttura'\n'Create a complete new structure.': 'Crea da zero una nuova struttura.'\n'You must define an issue type for each language and then sections for them.': 'Per ogni lingua occorre definire un tipo di edizione e le relative sezioni.'\n'Copy previous issue': 'Copia ledizione precedente'\n'No previous issue.': 'Nessuna edizione precedente.'\n'Copy structure from issue number $1': 'Copia la struttura dalledizione numero $1'\n'Delete entry': 'Elimina voce'\n'Issue Publishing Schedule': 'Programmazione della pubblicazione per ledizione'\n'Invalid Input: $1': 'Valore non valido: $1'\n'Issue Number': 'Numero edizione'\n'Go To Sections': 'Vai alle sezioni'\n'There was an error reading the language parameter.': 'Si è verificato un errore caricando i parametri della lingua.'\n'There was an error reading the publication parameter.': 'Si è verificato un errore caricando i parametri della pubblicazione.'\n'There was an error reading the issue parameter.': 'Si è verificato un errore caricando i parametri delledizione.'\n'There was an error scheduling the $1 action on $2': 'Si è verificato un errore programmando lazione $1 su $2'\n'The action scheduled on $1 could not be deleted.': 'Non è stato possibile eliminare lazione programmata su $1.'\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.ka.yml",
    "content": "'so that default templates can be assigned to the issue.': 'ისე რომ, ნაგულისხმევი შაბლონებები გადაეცემოდეს გამოშვებას. '\n'Once this is done, the issue can be published': 'ამის შემდეგ, გამოცემა შეიძლება გამოქვეყნდეს'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'ამ გამოშვების გადახედვა შეუძლებელია. გთხოვთ დარწმუნდით რომ პუბლიკაციისთვის მინიჭებულია თემა.'\n'This issue cannot be previewed. Please make sure it has the front template selected.': 'ამ გამოცემის გადახედვა შეუძლებელია. გთხოვთ დარწმუნდეთ რომ, მისთვის შერჩეულია წინა შაბლონი. '\n'Publish all articles:': 'ყველა სტატიის გამოქვეყნება:'\n'Publish all articles': 'ყველა სტატიის გამოქვეყნება'\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': 'ყველა სტატიის იძულებით გამოქვეყნება. თუკი მონიშნულია არა, მხოლოდ გამოშვებასთან ერთად გამოქვეყნება სტატუსის მქონე სტატიები გამოქვეყნდება. '\ndefault: ნაგულისხმევი\n'The publishing/unpublishing can not be set the same time': 'გამოქვეყნება/არგამოქვეყნება არ შეიძლება დაწესდეს ერთსა და იმავე დროს'\n'The publishing schedule can not be set in the past': 'გამოქვეყნების გრაფიკი არ შეიძლება იყოს წარსულში'\n'Please assign at least one theme to the publication': 'გთხოვთ მიუთითოთ მინიმუმ ერთი თემა'\n'Issue Theme': 'გამოცემის თემა'\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': 'მნიშვნელობა, რომლის მინიჭებასაც თქვენ ცდილობთ, ეწინააღმდეგება $1$2. $3 ($4)$5 გამოშვებას. '\n'The number must be unique for each issue in this publication of the same language.': 'ამ პუბლიკაციაში რიცხვი უნდა იყოს უნიკალური ყოველი, იგივე ენის, გამოცემისთვის'\n'The language and URL name must be unique for each issue in this publication.': 'ამ პუბლიკაციაში, ყველა გამოცემის ენა და URL უნდა იყოს უნიკალური'\n'Issue created.': 'გამოცემა შეიქმნა.'\n'Issue updated': 'გამოცემა განახლდა'\n'Could not save the changes to the issue.': 'გამოცემის ცვლილელების შენახვა ვერ მოხერხდა.'\n'Unpublish on: $1': 'გამოქვეყნების უკუგდება: $1'\n'There are $1 articles in this issue.': 'ამ გამოცემაში არის $1 სტატია'\n'The issue $1 has been deleted.': 'გამოცემა $1 წაიშალა'\nSchedule: გრაფიკი\n'Publish on: $1': 'გამოქვეყნდეს ამ დროზე: $1'\n'Publish Date $1': 'გამოქვეყნდეს თარიღი $1'\n'Deleted issue': 'გამოცემის წაშლა'\n'Delete issue': 'გამოცემის წაშლა'\n'Click here to publish this issue': 'გამოცემის გამოსაქვეყნებლად დააჭირეთ აქ'\n'A total of $1 articles were deleted.': '$1 სტატია წაიშალა'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'სახელი<BR><SMALL>(დააჭირეთ სექციების სანახავად)</SMALL>'\n'Delete issue $1': '$1 გამოცემის წაშლა'\n'You do not have the right to change issues.': 'თქვენ არ გაქვს გამოცემების ცვლილების უფლება.'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'დარწმუნებული ხართ რომ $1 გამოცემის სტატუსის ცვლილება გსურთ საწყისი სტატუსიდან: $2, ახალ სტატუსზე: $3'\n'Add new translation': 'ახალი თარგმნის დამატება'\n'You do not have the right to add issues.': 'თქვენ არ გაქვს გამოცემების დამატების უფლება'\n'The issue $1 has been successfuly added.': '$1 გამოცემა წარმატებით დაემატა.'\n'The issue could not be added.': 'გამოცემა ვერ დაემატა'\n'Change issue details': 'გამოცემის დეტალების ცვლილება'\n'You do not have the right to change issue details.': 'თქვენ არ გაქვთ სტატიის დეტალების შეცვლის უფლება'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 'პუბლიკაციის თარიღი<BR><SMALL>(წელი-თვე-დღე)</SMALL>'\n'Front Page Template': 'მთავარი გვერდის შაბლონი'\n'You do not have the right to delete issues.': 'თქვენ არ გაქვთ გამოცემის წაშლის უფლება'\n'Are you sure you want to delete the issue $1?': 'დარწმუნებული ხართ რომ გსურთ $1 გამოცემის წაშლა?'\n'Use the structure of the previous issue': 'გამოიყენეთ წინა გამოცემის სტრუქტურა'\n'Copy the entire structure in all languages from the previous issue except for content.': 'წინა გამოცემიდან მთლიანი სტრუქტურის კოპირება (გარდა კონტენტისა) ყველა ენისთვის.'\n'You may modify it later if you wish.': 'მოდიფიცირება მოგვიანებითაც შესაძლებელია.'\n'Create a new structure': 'ახალი სტრუქტურის შექმნა'\n'Create a complete new structure.': 'სრული ახალი სტრუქტურის შექმნა.'\n'You must define an issue type for each language and then sections for them.': 'თქვენ უნდა განსაზღვროთ გამოცემის ტიპი და სექციები ყველა ენისთვის.'\n'Copy previous issue': 'წინა გამოცემის კოპირება'\n'No previous issue.': 'წინა გამოცემა არ არსებობს'\n'Copy structure from issue number $1': 'სტრუქტურის კოპირება გამოცემიდან ნომერ $1'\n'Delete entry': 'ჩანაწერის წაშლა'\n'Issue Publishing Schedule': 'გამოცემის გამოქვეყნების გრაფიკი'\n'Invalid Input: $1': 'არასწორი შენატანი: $1'\n'Issue Number': 'გამოცემის ნომერი'\n'Go To Sections': 'სექციებზე გადასვლა'\n'There was an error reading the language parameter.': 'ენის პარამეტრის კითხვისას დაფიქსირდა შეცდომა.'\n'There was an error reading the publication parameter.': 'პუბლიკაციის პარამეტრის კითხვისას დაფიქსირდა შეცდომა.'\n'There was an error reading the issue parameter.': 'გამოცემის პარამეტრის კითხვისას დაფიქსირდა შეცდომა.'\n'There was an error scheduling the $1 action on $2': '$1 მოქმედების $2 დროზე დაგეგმვისას დაფიქსირდა შეცდომა'\n'The action scheduled on $1 could not be deleted.': '$1 დროზე დაგეგმილი მოქმედების წაშლა შეუძლებელია.'\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.ko.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': '$1 기사 모두 삭제되었습니다. '\n'Name<BR><SMALL>(click to see sections)</SMALL>': 이름<BR><SMALL>(이슈보려면클릭)</SMALL>\n'Delete issue $1': '이슈  $1  삭제'\n'You do not have the right to change issues.': '이슈를 수정할 권한이 없습니다. '\n'Are you sure you want to change the issue $1 status from $2 to $3?': '이슈 $1 상태를 $2 에서 $3 로 변경합니까?'\n'Add new translation': '새로운 번역 추가'\n'You do not have the right to add issues.': '이슈를 추가할 권한이 없습니다. '\n'The issue $1 has been successfuly added.': '이슈 $1 이 성공적으로 추가되었습니다. '\n'The issue could not be added.': '이슈가 추가될 수 없습니다. '\n'Change issue details': '이슈 내역 수정'\n'You do not have the right to change issue details.': '이슈 내역을 수정할 권한이 없습니다.'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 출판일자<BR><SMALL>(년-월-일)</SAMLL>\n'Front Page Template': '프론트페이지 템플레이트'\n'You do not have the right to delete issues.': '이슈를 삭제할 권한이 없습니다. '\n'Are you sure you want to delete the issue $1?': '이슈 $1 을 확실히 삭제합니까?'\n'Use the structure of the previous issue': '이전 이슈의 구조를 사용'\n'Copy the entire structure in all languages from the previous issue except for content.': '콘테트제외하고 이전 이슈의 모든 언어의 전체적 구조 복사'\n'You may modify it later if you wish.': '원하면 나중에 수정할 수 있습니다.'\n'Create a new structure': '새로운 구조 생성'\n'Create a complete new structure.': '완전히 새로운 구조 생성'\n'You must define an issue type for each language and then sections for them.': '각기 언어에 대한 이슈 타입을 정의하고, 그다음  섹션을 정의해야 됩니다. '\n'Copy previous issue': '이전 이슈 복사'\n'No previous issue.': '이전 이슈 없슴.'\n'Copy structure from issue number $1': '이슈  nr $1 에서 구조 복사'\n'Delete entry': '엔트리 삭제'\n'Issue Publishing Schedule': '출판 스케쥴 이슈'\n'Invalid Input: $1': '비정상 입력: $1'\n'Issue Number': '이슈 넘버'\n'Go To Sections': '섹션으로 가기'\n'There was an error reading the language parameter.': '언어 파라미터를 읽는중 에러가 있습니다.'\n'There was an error reading the publication parameter.': '출판 파라미터를 읽는중 에러가 있습니다.'\n'There was an error reading the issue parameter.': '이슈 파라미터를 읽는중 에러가 있습니다. '\n'There was an error scheduling the $1 action on $2': '$1 기능을 $2 에 스케듈링하는데 에러가 있습니다. '\n'The action scheduled on $1 could not be deleted.': '$1 에 스케듈링된 기능이 삭제될수 없습니다.'\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.ku.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': null\n'Name<BR><SMALL>(click to see sections)</SMALL>': null\n'Delete issue $1': null\n'You do not have the right to change issues.': null\n'Are you sure you want to change the issue $1 status from $2 to $3?': null\n'Add new translation': null\n'You do not have the right to add issues.': null\n'The issue $1 has been successfuly added.': null\n'The issue could not be added.': null\n'Change issue details': null\n'You do not have the right to change issue details.': null\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': null\n'Front Page Template': null\n'You do not have the right to delete issues.': null\n'Are you sure you want to delete the issue $1?': null\n'Use the structure of the previous issue': null\n'Copy the entire structure in all languages from the previous issue except for content.': null\n'You may modify it later if you wish.': null\n'Create a new structure': null\n'Create a complete new structure.': null\n'You must define an issue type for each language and then sections for them.': null\n'Copy previous issue': null\n'No previous issue.': null\n'Copy structure from issue number $1': null\n'Delete entry': null\n'Issue Publishing Schedule': null\n'Invalid Input: $1': null\n'Issue Number': null\n'Go To Sections': null\n'There was an error reading the language parameter.': null\n'There was an error reading the publication parameter.': null\n'There was an error reading the issue parameter.': null\n'There was an error scheduling the $1 action on $2': null\n'The action scheduled on $1 could not be deleted.': null\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.lv.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': null\n'Name<BR><SMALL>(click to see sections)</SMALL>': null\n'Delete issue $1': null\n'You do not have the right to change issues.': null\n'Are you sure you want to change the issue $1 status from $2 to $3?': null\n'Add new translation': null\n'You do not have the right to add issues.': null\n'The issue $1 has been successfuly added.': null\n'The issue could not be added.': null\n'Change issue details': null\n'You do not have the right to change issue details.': null\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': null\n'Front Page Template': null\n'You do not have the right to delete issues.': null\n'Are you sure you want to delete the issue $1?': null\n'Use the structure of the previous issue': null\n'Copy the entire structure in all languages from the previous issue except for content.': null\n'You may modify it later if you wish.': null\n'Create a new structure': null\n'Create a complete new structure.': null\n'You must define an issue type for each language and then sections for them.': null\n'Copy previous issue': null\n'No previous issue.': null\n'Copy structure from issue number $1': null\n'Delete entry': null\n'Issue Publishing Schedule': null\n'Invalid Input: $1': null\n'Issue Number': null\n'Go To Sections': null\n'There was an error reading the language parameter.': null\n'There was an error reading the publication parameter.': null\n'There was an error reading the issue parameter.': null\n'There was an error scheduling the $1 action on $2': null\n'The action scheduled on $1 could not be deleted.': null\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.mr.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': null\n'Name<BR><SMALL>(click to see sections)</SMALL>': null\n'Delete issue $1': null\n'You do not have the right to change issues.': null\n'Are you sure you want to change the issue $1 status from $2 to $3?': null\n'Add new translation': null\n'You do not have the right to add issues.': null\n'The issue $1 has been successfuly added.': null\n'The issue could not be added.': null\n'Change issue details': null\n'You do not have the right to change issue details.': null\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': null\n'Front Page Template': null\n'You do not have the right to delete issues.': null\n'Are you sure you want to delete the issue $1?': null\n'Use the structure of the previous issue': null\n'Copy the entire structure in all languages from the previous issue except for content.': null\n'You may modify it later if you wish.': null\n'Create a new structure': null\n'Create a complete new structure.': null\n'You must define an issue type for each language and then sections for them.': null\n'Copy previous issue': null\n'No previous issue.': null\n'Copy structure from issue number $1': null\n'Delete entry': null\n'Issue Publishing Schedule': null\n'Invalid Input: $1': null\n'Issue Number': null\n'Go To Sections': null\n'There was an error reading the language parameter.': null\n'There was an error reading the publication parameter.': null\n'There was an error reading the issue parameter.': null\n'There was an error scheduling the $1 action on $2': null\n'The action scheduled on $1 could not be deleted.': null\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.nb_NO.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': null\n'Name<BR><SMALL>(click to see sections)</SMALL>': null\n'Delete issue $1': null\n'You do not have the right to change issues.': null\n'Are you sure you want to change the issue $1 status from $2 to $3?': null\n'Add new translation': null\n'You do not have the right to add issues.': null\n'The issue $1 has been successfuly added.': null\n'The issue could not be added.': null\n'Change issue details': null\n'You do not have the right to change issue details.': null\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': null\n'Front Page Template': null\n'You do not have the right to delete issues.': null\n'Are you sure you want to delete the issue $1?': null\n'Use the structure of the previous issue': null\n'Copy the entire structure in all languages from the previous issue except for content.': null\n'You may modify it later if you wish.': null\n'Create a new structure': null\n'Create a complete new structure.': null\n'You must define an issue type for each language and then sections for them.': null\n'Copy previous issue': null\n'No previous issue.': null\n'Copy structure from issue number $1': null\n'Delete entry': null\n'Issue Publishing Schedule': null\n'Invalid Input: $1': null\n'Issue Number': null\n'Go To Sections': null\n'There was an error reading the language parameter.': null\n'There was an error reading the publication parameter.': null\n'There was an error reading the issue parameter.': null\n'There was an error scheduling the $1 action on $2': null\n'The action scheduled on $1 could not be deleted.': null\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.nl.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': 'Een totaal van $1 articles werd verwijderd.'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Naam<BR><SMALL>(klik om de rubrieken te zien)</SMALL>'\n'Delete issue $1': 'Verwijder uitgave $1'\n'You do not have the right to change issues.': null\n'Are you sure you want to change the issue $1 status from $2 to $3?': null\n'Add new translation': 'Voeg nieuwe vertaling toe'\n'You do not have the right to add issues.': null\n'The issue $1 has been successfuly added.': 'De uitgave $1 is succesvol toegevoegd.'\n'The issue could not be added.': 'De uitgave kon niet worden toegevoegd.'\n'Change issue details': 'Wijzig de uitgave details'\n'You do not have the right to change issue details.': null\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 'Publicatie datum<BR><SMALL>(yyyy-mm-dd)</SMALL>'\n'Front Page Template': 'Voorpagina sjabloon'\n'You do not have the right to delete issues.': null\n'Are you sure you want to delete the issue $1?': null\n'Use the structure of the previous issue': 'Gebruik de structuur van de vorige uitgave'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Kopieer de volledige structuur in alle talen van de vorige uitgave behalve de inhoud.'\n'You may modify it later if you wish.': 'Indien gewenst kunt u dit later wijzigen.'\n'Create a new structure': 'Maak een nieuwe structuur.'\n'Create a complete new structure.': 'Maak een compleet nieuwe structuur.'\n'You must define an issue type for each language and then sections for them.': null\n'Copy previous issue': 'Kopieer vorige uitgave'\n'No previous issue.': 'Geen vorige uitgave.'\n'Copy structure from issue number $1': null\n'Delete entry': 'Verwijder regel'\n'Issue Publishing Schedule': 'Uitgave Publiceer Planning'\n'Invalid Input: $1': 'Onjuiste Invoer: $1'\n'Issue Number': 'Uitgave Nummer'\n'Go To Sections': 'Ga naar rubrieken'\n'There was an error reading the language parameter.': 'Er was een probleem bij het lezen van de taal parameter.'\n'There was an error reading the publication parameter.': 'Er was een fout bij het lezen van de publicatie parameter.'\n'There was an error reading the issue parameter.': 'Er was een fout bij het lezen van de uitgave parameter.'\n'There was an error scheduling the $1 action on $2': 'Er was een probleem bij het plannen van de $1 actie om $2'\n'The action scheduled on $1 could not be deleted.': 'De geplande actie om $1 kan niet worden gewist.'\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.pa.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': null\n'Name<BR><SMALL>(click to see sections)</SMALL>': null\n'Delete issue $1': null\n'You do not have the right to change issues.': null\n'Are you sure you want to change the issue $1 status from $2 to $3?': null\n'Add new translation': null\n'You do not have the right to add issues.': null\n'The issue $1 has been successfuly added.': null\n'The issue could not be added.': null\n'Change issue details': null\n'You do not have the right to change issue details.': null\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': null\n'Front Page Template': null\n'You do not have the right to delete issues.': null\n'Are you sure you want to delete the issue $1?': null\n'Use the structure of the previous issue': null\n'Copy the entire structure in all languages from the previous issue except for content.': null\n'You may modify it later if you wish.': null\n'Create a new structure': null\n'Create a complete new structure.': null\n'You must define an issue type for each language and then sections for them.': null\n'Copy previous issue': null\n'No previous issue.': null\n'Copy structure from issue number $1': null\n'Delete entry': null\n'Issue Publishing Schedule': null\n'Invalid Input: $1': null\n'Issue Number': null\n'Go To Sections': null\n'There was an error reading the language parameter.': null\n'There was an error reading the publication parameter.': null\n'There was an error reading the issue parameter.': null\n'There was an error scheduling the $1 action on $2': null\n'The action scheduled on $1 could not be deleted.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.pl.yml",
    "content": "'so that default templates can be assigned to the issue.': 'więc ten domyślny szablon może być przydzielony do tego wydania.'\n'Once this is done, the issue can be published': 'Wydanie będzie można opublikować dopiero gdy to będzie skończone'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Nie możesz podejrzeć tego wydania. Upewnij się że publikacja ma przydzielony szablon.'\n'This issue cannot be previewed. Please make sure it has the front template selected.': 'Nie można podejrzeć tego wydania. Upewnij się że szablon dla strony głównej został wybrany.'\n'Publish all articles:': 'Opublikuj wszystkie artykuły:'\n'Publish all articles': 'Opublikuj wszystkie artykuły'\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': 'Wymuś publikację wszystkich artykułów. Jeśli wybierzesz nie, wtedy tylko artykuły ze statusem Opublikuj wraz z wydaniem  zostaną opublikowane.'\ndefault: domyslny\n'The publishing/unpublishing can not be set the same time': 'Publikacja/Wycofywanie publikacji nie może być ustawione na ten sam czas'\n'The publishing schedule can not be set in the past': 'Plan publikacji nie może być ustawiony na datę w przeszłości'\n'Please assign at least one theme to the publication': 'Przydziel przynajmniej jeden szablon do publikacji'\n'Issue Theme': 'Szablon wydania'\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': 'Wartości, które próbujesz są w konflikcie z wydaniem  $1$2. $3 ($4)$5.'\n'The number must be unique for each issue in this publication of the same language.': 'Numer mui być unikalny dla każdego wydanie w tej publikacji w tym samym języku.'\n'The language and URL name must be unique for each issue in this publication.': 'Język i nazwa URL muszą być unikalne dla każdego wydania w tej publikacji.'\n'Issue created.': 'Wydanie utworzone'\n'Issue updated': 'Wydanie zaktualizowane'\n'Could not save the changes to the issue.': 'Nie można zapisać zmian do wydania.'\n'Unpublish on: $1': 'Odpublikuj: $1'\n'There are $1 articles in this issue.': 'Ilość artykułów w wydaniu: $1'\n'The issue $1 has been deleted.': 'Wydanie $1 zostało usunięte.'\nSchedule: Zaplanuj\n'Publish on: $1': 'Opublikuj o: $1'\n'Publish Date $1': 'Data publikacji $1'\n'Deleted issue': 'Usunięte wydanie'\n'Delete issue': 'Usuń wydanie'\n'Click here to publish this issue': 'Kliknij tutaj aby opublikować wydanie'\n'A total of $1 articles were deleted.': 'Liczba usuniętych artykułów: $1.'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Nazwa<BR><SMALL>(kliknij aby zobaczyć sekcje)</SMALL>'\n'Delete issue $1': 'Usuń wydanie $1'\n'You do not have the right to change issues.': 'Nie masz praw aby zmieniać wydania.'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'Czy na pewno chcesz zmienić status wydania $1 z $2 na $3?'\n'Add new translation': 'Dodaj nowe tłumaczenie'\n'You do not have the right to add issues.': 'Nie masz praw aby dodawać wydania.'\n'The issue $1 has been successfuly added.': 'Wydanie $1 zostało zaktualizowane.'\n'The issue could not be added.': 'Wydanie nie zostało skasowane'\n'Change issue details': 'Zmień szczegóły wydania'\n'You do not have the right to change issue details.': 'Nie masz praw aby zmieniać szczegóły wydania.'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 'Data publikacji<BR><SMALL>(rrrr-mm-dd)</SMALL>'\n'Front Page Template': 'Szablon strony głównej'\n'You do not have the right to delete issues.': 'Nie masz praw aby usuwać wydania.'\n'Are you sure you want to delete the issue $1?': 'Czy na pewno chcesz skasować wydanie $1?'\n'Use the structure of the previous issue': 'Użyj struktury poprzedniego wydania'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Skopiuj całą strukturę we wszystkich językach z poprzednich wydać poza zawartością.'\n'You may modify it later if you wish.': 'Możesz modyfikować później jeśli chcesz.'\n'Create a new structure': 'Stwórz nową strukturę'\n'Create a complete new structure.': 'Stwórz całkowicię nową strukturę.'\n'You must define an issue type for each language and then sections for them.': 'Musisz zdefiniować typ wydania dla każdego języka a potem sekcje dla nich.'\n'Copy previous issue': 'Skopiuj poprzednie wydanie'\n'No previous issue.': 'Brak poprzednich wydań.'\n'Copy structure from issue number $1': 'Skopiuj strukturę z wydania numer $1'\n'Delete entry': 'Skasuj wpis'\n'Issue Publishing Schedule': 'Plan wydawniczy'\n'Invalid Input: $1': 'Zła wartość: $1'\n'Issue Number': 'Numer Wydania'\n'Go To Sections': 'Idź do sekcji'\n'There was an error reading the language parameter.': 'Wystąpił błąd podczas odczytywania parametru języka.'\n'There was an error reading the publication parameter.': 'Wystąpił błąd podczas odczytywania parametrów publikacji.'\n'There was an error reading the issue parameter.': 'Wystąpił błąd podczas odczytywania parametrów wydania.'\n'There was an error scheduling the $1 action on $2': 'Wystąpił błąd podczas planowania akcji $1 w dniu $2'\n'The action scheduled on $1 could not be deleted.': 'Akcja zaplanowana na $1 nie została skasowana.'\n'Click to open': 'Kliknij aby otworzyć'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.ps.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': null\n'Name<BR><SMALL>(click to see sections)</SMALL>': null\n'Delete issue $1': null\n'You do not have the right to change issues.': null\n'Are you sure you want to change the issue $1 status from $2 to $3?': null\n'Add new translation': null\n'You do not have the right to add issues.': null\n'The issue $1 has been successfuly added.': null\n'The issue could not be added.': null\n'Change issue details': null\n'You do not have the right to change issue details.': null\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': null\n'Front Page Template': null\n'You do not have the right to delete issues.': null\n'Are you sure you want to delete the issue $1?': null\n'Use the structure of the previous issue': null\n'Copy the entire structure in all languages from the previous issue except for content.': null\n'You may modify it later if you wish.': null\n'Create a new structure': null\n'Create a complete new structure.': null\n'You must define an issue type for each language and then sections for them.': null\n'Copy previous issue': null\n'No previous issue.': null\n'Copy structure from issue number $1': null\n'Delete entry': null\n'Issue Publishing Schedule': null\n'Invalid Input: $1': null\n'Issue Number': null\n'Go To Sections': null\n'There was an error reading the language parameter.': null\n'There was an error reading the publication parameter.': null\n'There was an error reading the issue parameter.': null\n'There was an error scheduling the $1 action on $2': null\n'The action scheduled on $1 could not be deleted.': null\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.pt.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': 'Foi(ram) eliminado(s) $1 artigo(s).'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Nome<br>(Clique para ver Secções)'\n'Delete issue $1': 'Eliminar Número $1'\n'You do not have the right to change issues.': 'Não tem permissões para alterar Números'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'Tem a certeza que deseja alterar a edição de $1 de $2 para $3?'\n'Add new translation': 'Adicionar tradução'\n'You do not have the right to add issues.': 'Não tem permissões para adicionar Números'\n'The issue $1 has been successfuly added.': 'A Edição $1 foi adicionada com sucesso.'\n'The issue could not be added.': 'A Edição não pode ser adicionada.'\n'Change issue details': 'Alterar detalhes da Edição'\n'You do not have the right to change issue details.': 'Não tem permissões para alterar detalhes de Edições'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 'Data de Publicação<BR><SMALL>(aaaa-mm-dd)</SMALL>'\n'Front Page Template': 'Modelo de Página Principal'\n'You do not have the right to delete issues.': 'Não tem permissões para eliminar Edições'\n'Are you sure you want to delete the issue $1?': 'Tem a certeza que deseja eliminar a Edição $1?'\n'Use the structure of the previous issue': 'Usar estrutura da Edição anterior'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Copiar toda a estrutura em todos os Idiomas de Edição anterior, excepto o conteúdo'\n'You may modify it later if you wish.': 'Poderá modificar mais tarde se o desejar'\n'Create a new structure': 'Criar uma nova estrutura'\n'Create a complete new structure.': 'Criar uma Estrutura nova'\n'You must define an issue type for each language and then sections for them.': 'Tem de definir uma estrutura para cada Idioma.'\n'Copy previous issue': 'Copiar Edição anterior'\n'No previous issue.': 'Não existem Edição anterior'\n'Copy structure from issue number $1': 'Copiar estrutura da Edição $1'\n'Delete entry': 'Eliminar entrada'\n'Issue Publishing Schedule': 'Agendar publicação de Edição'\n'Invalid Input: $1': 'Valor Inválido: $1'\n'Issue Number': 'Numero de Edição'\n'Go To Sections': 'Ir para Secções'\n'There was an error reading the language parameter.': 'Ocorreu um erro na leitura do parametro de idioma.'\n'There was an error reading the publication parameter.': 'Ocorreu um erro na leitura do parametro de publicação.'\n'There was an error reading the issue parameter.': 'Ocorreu um erro na leitura do parametro de secção.'\n'There was an error scheduling the $1 action on $2': 'Ocorreu um erro no agendamento da tarefa de publicação $1 para $2'\n'The action scheduled on $1 could not be deleted.': 'A tarefa de publicação agendada para $1 não pode ser eliminada'\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.pt_BR.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Esta edição não pode ser visualizada. Por favor certifique-se de que a publicação tem um tema designado.'\n'This issue cannot be previewed. Please make sure it has the front template selected.': 'Esta edição não pode ser visualisada. Por favor assegure que o template de frente está selecionado.'\n'Publish all articles:': 'Publicar todos os artigos:'\n'Publish all articles': 'Publicar todos os artigos'\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': 'Publicação forçada de todos os artigos. Se for definida como Não, somente os artigos com status Publicar com essa edição serão publicados.'\ndefault: padrão\n'The publishing/unpublishing can not be set the same time': 'A hora da publicação/não publicação não pode ser a mesma'\n'The publishing schedule can not be set in the past': 'Horário de publicação não pode ser no passado'\n'Please assign at least one theme to the publication': 'Por favor designe pelo menos um tema a publicação'\n'Issue Theme': 'Tema da edição'\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': 'Valores que está tentando definir estão em conflito com edição $1$2. $3 ($4)$5.'\n'The number must be unique for each issue in this publication of the same language.': 'O número tem que ser único para cada edição nesta publicação em mesma língua.'\n'The language and URL name must be unique for each issue in this publication.': 'A língua e o nome de URL têm que ser únicos para cada edição nesta publicação'\n'Issue created.': 'Edição criada.'\n'Issue updated': 'Edição atualizada'\n'Could not save the changes to the issue.': 'Não foi possível salvar modificações na edição.'\n'Unpublish on: $1': 'Remover publicação em: $1'\n'There are $1 articles in this issue.': 'Total de $1 artigos nesta edição.'\n'The issue $1 has been deleted.': 'Edição $1 foi apagada.'\nSchedule: Cronograma\n'Publish on: $1': 'Publicar no dia: $1'\n'Publish Date $1': 'Data de publicação $1'\n'Deleted issue': 'Edição apagada'\n'Delete issue': 'Apagar a edição'\n'Click here to publish this issue': 'Clique aqui para publicar esta edição'\n'A total of $1 articles were deleted.': '$1 artigos foram apagados.'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Nome<br>(Clique para ver Secções)'\n'Delete issue $1': 'Eliminar Número $1'\n'You do not have the right to change issues.': 'Não tem permissões para alterar Números'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'Tem a certeza que deseja alterar a edição de $1 de $2 para $3?'\n'Add new translation': 'Adicionar tradução'\n'You do not have the right to add issues.': 'Não tem permissões para adicionar Números'\n'The issue $1 has been successfuly added.': 'A Edição $1 foi adicionada com sucesso.'\n'The issue could not be added.': 'A Edição não pode ser adicionada.'\n'Change issue details': 'Alterar detalhes da Edição'\n'You do not have the right to change issue details.': 'Não tem permissões para alterar detalhes de Edições'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 'Data de Publicação<BR><SMALL>(aaaa-mm-dd)</SMALL>'\n'Front Page Template': 'Modelo de Página Principal'\n'You do not have the right to delete issues.': 'Não tem permissões para eliminar Edições'\n'Are you sure you want to delete the issue $1?': 'Tem a certeza que deseja eliminar a Edição $1?'\n'Use the structure of the previous issue': 'Usar estrutura da Edição anterior'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Copiar toda a estrutura em todos os Idiomas de Edição anterior, excepto o conteúdo'\n'You may modify it later if you wish.': 'Poderá modificar mais tarde se o desejar'\n'Create a new structure': 'Criar uma nova estrutura'\n'Create a complete new structure.': 'Criar uma Estrutura nova'\n'You must define an issue type for each language and then sections for them.': 'Tem de definir uma estrutura para cada Idioma.'\n'Copy previous issue': 'Copiar Edição anterior'\n'No previous issue.': 'Não existem Edição anterior'\n'Copy structure from issue number $1': 'Copiar estrutura da Edição $1'\n'Delete entry': 'Eliminar entrada'\n'Issue Publishing Schedule': 'Agendar publicação de Edição'\n'Invalid Input: $1': 'Valor Inválido: $1'\n'Issue Number': 'Numero de Edição'\n'Go To Sections': 'Ir para Secções'\n'There was an error reading the language parameter.': 'Ocorreu um erro na leitura do parametro de idioma.'\n'There was an error reading the publication parameter.': 'Ocorreu um erro na leitura do parametro de publicação.'\n'There was an error reading the issue parameter.': 'Ocorreu um erro na leitura do parametro de secção.'\n'There was an error scheduling the $1 action on $2': 'Ocorreu um erro no agendamento da tarefa de publicação $1 para $2'\n'The action scheduled on $1 could not be deleted.': 'A tarefa de publicação agendada para $1 não pode ser eliminada'\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.ro.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': 'Valorile pe care încerci să le impui intră în conflict cu numărul $1$2. $3 ($4)$5.'\n'The number must be unique for each issue in this publication of the same language.': 'Numărul trebuie să fie unic pentru fiecare ediţie din această publicaţie în aceeaşi limbă.'\n'The language and URL name must be unique for each issue in this publication.': 'Limba şi adresa de Internet trebuie să fie unice pentru fiecare ediţiei a acestei publicaţii.'\n'Issue created.': 'Ediţia a fost creată.'\n'Issue updated': 'Ediţia a fost actualizată.'\n'Could not save the changes to the issue.': 'Nu s-au putut salva schimbările la această ediţie.'\n'Unpublish on: $1': 'Anulează publicarea la data: $1'\n'There are $1 articles in this issue.': 'Sunt $1 articole în această ediţie.'\n'The issue $1 has been deleted.': 'Ediţia $1 a fost ştearsă.'\nSchedule: Programează\n'Publish on: $1': 'Publică la data: $1'\n'Publish Date $1': 'Data publicării $1'\n'Deleted issue': 'Ediţie ştearsă'\n'Delete issue': 'Şterge ediţia'\n'Click here to publish this issue': 'Apasă aici pentru a publica această ediţie'\n'A total of $1 articles were deleted.': 'Un număr de $1 articole au fost şterse.'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Nume<BR><SMALL>(clic pentru a vedea secţiunile)</SMALL>'\n'Delete issue $1': 'Şterge ediţia $1'\n'You do not have the right to change issues.': 'Nu ai dreptul de a modifica ediţiile.'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'Eşti sigur că vrei să schimbi starea ediţiei $1 de la $2 la $3?'\n'Add new translation': 'Adaugă o traducere nouă'\n'You do not have the right to add issues.': 'Nu ai dreptul să adaugi ediţii.'\n'The issue $1 has been successfuly added.': 'Ediţia $1 a fost adăugată.'\n'The issue could not be added.': 'Ediţia nu poate fi adăugată.'\n'Change issue details': 'Modifică detaliile ediţiei'\n'You do not have the right to change issue details.': 'Nu ai dreptul să modifici detaliile ediţiei.'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 'Data publicării<br><small>(aaaa-ll-zz)</small>'\n'Front Page Template': 'Şablonul primei pagini'\n'You do not have the right to delete issues.': 'Nu ai dreptul să ştergi ediţii.'\n'Are you sure you want to delete the issue $1?': 'Eşti sigur că vrei să ştergi ediţia $1?'\n'Use the structure of the previous issue': 'Foloseşte structura ediţiei anterioare'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Copiază întreaga structură în toate limbile din ediţia precedentă cu excepţia conţinutului.'\n'You may modify it later if you wish.': 'Poţi să modifici mai târziu, dacă doreşti.'\n'Create a new structure': 'Crează o structură nouă'\n'Create a complete new structure.': 'Crează o structură complet nouă.'\n'You must define an issue type for each language and then sections for them.': 'Trebuie să creezi un tip de ediţie pentru fiecare limbă şi apoi secţiunile pentru fiecare.'\n'Copy previous issue': 'Copiază ediţia precedentă'\n'No previous issue.': 'Nu există ediţie anterioară.'\n'Copy structure from issue number $1': 'Copiază structura de la ediţia nr $1'\n'Delete entry': 'Şterge înregistrarea'\n'Issue Publishing Schedule': 'Programarea publicării ediţiei'\n'Invalid Input: $1': 'Intrare invalidă: $1'\n'Issue Number': 'Numărul ediţiei'\n'Go To Sections': 'Mergi la secţiuni'\n'There was an error reading the language parameter.': 'O eroare s-a produs în timpul interpretării parametrului limbii.'\n'There was an error reading the publication parameter.': 'O eroare s-a produs în timpul interpretării parametrului publicaţiei.'\n'There was an error reading the issue parameter.': 'O eroare s-a produs în timpul interpretării parametrului ediţiei.'\n'There was an error scheduling the $1 action on $2': 'S-a produs o eroare la programarea acţiunii $1 la $2'\n'The action scheduled on $1 could not be deleted.': 'Acţiunea programată la $1 nu a putut fi ştearsă.'\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.ru.yml",
    "content": "'so that default templates can be assigned to the issue.': 'так, чтобы шаблоны по умолчанию можно было назначать для выпуска.'\n'Once this is done, the issue can be published': 'По завершении действия можно опубликовать выпуск'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Предварительный просмотр выпуска невозможен. Пожалуйста, убедитесь, что для издания существует нужный шаблон.'\n'This issue cannot be previewed. Please make sure it has the front template selected.': 'Предварительный просмотр выпуска невозможен. Пожалуйста, убедитесь, что выбран шаблон главной страницы. '\n'Publish all articles:': 'Опубликовать все статьи:'\n'Publish all articles': 'Опубликовать все статьи'\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': 'Принудительное опубликование всех статей. Если выбрано Нет, будут опубликованы только статьи со статусом Опубликовать с номером.'\ndefault: 'по умолчанию'\n'The publishing/unpublishing can not be set the same time': 'Настройки Опубликовать/Отменить публикацию одновременно не работают'\n'The publishing schedule can not be set in the past': 'Невозможно настроить расписания публикации в прошедшем времени'\n'Please assign at least one theme to the publication': 'Пожалуйста, назначьте для издания хотя бы одну тему (шаблон)'\n'Issue Theme': 'Тема (Шаблон) выпуска'\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': 'Величины, которые вы пытаетесь установить, конфликтуют с выпуском $1$2. $3 ($4)$5.'\n'The number must be unique for each issue in this publication of the same language.': 'Номер должен быть уникальным для каждого выпуска этого издания на том же языке.'\n'The language and URL name must be unique for each issue in this publication.': 'Язык и URL доолжен быть уникальным для каждого выпуска этого издания.'\n'Issue created.': 'Выпуск создан.'\n'Issue updated': 'Выпуск обновлен.'\n'Could not save the changes to the issue.': 'Не удалось сохранить изменения в выпуске.'\n'Unpublish on: $1': 'Отменить публикацию на: $1'\n'There are $1 articles in this issue.': 'Статей в выпуске: $1.'\n'The issue $1 has been deleted.': 'Выпуск $1 был удален.'\nSchedule: Расписание\n'Publish on: $1': 'Публиковать: $1'\n'Publish Date $1': 'Дата публикации $1'\n'Deleted issue': 'Удаленный выпуск'\n'Delete issue': 'Удалить выпуск'\n'Click here to publish this issue': 'Щелкните здесь для публикации выпуска'\n'A total of $1 articles were deleted.': 'Всего статей было удалено: $1'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Название<BR><SMALL>(щелкните для просмотра секций)</SMALL>'\n'Delete issue $1': 'Удаление выпуска $1'\n'You do not have the right to change issues.': 'Вы не имеете прав доступа к изменению выпуска.'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'Вы уверены, что хотите поменять статус выпуска $1 с $2 на $3?'\n'Add new translation': 'Добавить новый перевод'\n'You do not have the right to add issues.': 'Вы не имеете прав доступа к добавлению выпуска.'\n'The issue $1 has been successfuly added.': 'Выпуск $1 был успешно добавлен.'\n'The issue could not be added.': 'Не удалось добавить выпуск.'\n'Change issue details': 'Сменить параметры выпуска'\n'You do not have the right to change issue details.': 'Вы не имеете прав доступа к изменению параметров выпуска.'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 'Дата публикации<BR><SMALL>(гггг-мм-дд)</SMALL>'\n'Front Page Template': 'Шаблон титульной страницы'\n'You do not have the right to delete issues.': 'Вы не имеете прав доступа для удаления выпусков.'\n'Are you sure you want to delete the issue $1?': 'Вы уверены, что хотите удалить выпуск $1?'\n'Use the structure of the previous issue': 'Использовать структуру предыдущего выпуска'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Скопировать всю структуру записи во все языки из предыдущего выпуска за исключением информационого наполнения.'\n'You may modify it later if you wish.': 'Вы можете модифицировать это позже, если пожелаете.'\n'Create a new structure': 'Создать новую структуру'\n'Create a complete new structure.': 'Создать полностью новую структуру.'\n'You must define an issue type for each language and then sections for them.': 'Вы должны определить тип выпуска для каждого языка и, затем, рубрики для них.'\n'Copy previous issue': 'Скопировать предыдущий выпуск'\n'No previous issue.': 'Нет предыдущего выпуска.'\n'Copy structure from issue number $1': 'Скопировать структуру из выпуска №$1'\n'Delete entry': 'Удалить запись'\n'Issue Publishing Schedule': 'Расписание опубликования выпуска'\n'Invalid Input: $1': 'Неправильный ввод: $1'\n'Issue Number': 'Номер выпуска'\n'Go To Sections': 'Перейти к рубрикам'\n'There was an error reading the language parameter.': 'Ошибка чтения параметров языка.'\n'There was an error reading the publication parameter.': 'Ошибка чтения параметров издания.'\n'There was an error reading the issue parameter.': 'Ошибка чтения параметров выпуска.'\n'There was an error scheduling the $1 action on $2': 'Ошибка планирования операции $1 на $2'\n'The action scheduled on $1 could not be deleted.': 'Назначенная на $1 операция не может быть отменена'\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.sh.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Ovo izdanje ne može biti prikazano. Proverite da li publikacija ima dodeljenu temu.'\n'This issue cannot be previewed. Please make sure it has the front template selected.': 'Ovo izdanje ne može biti pregledano. Proverite da li ima dodeljen šablon za prikaz prve strane.'\n'Publish all articles:': 'Objavi sve tekstove:'\n'Publish all articles': 'Objavi sve tekstove'\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': 'Forsiraj objavljivanje svih tekkstova. Ako je postavljeno na Ne, samo tekstovi sa statusom Objavi zajedno sa izdanjem biće objavljeni.'\ndefault: podrqazumevano\n'The publishing/unpublishing can not be set the same time': 'Objavljivanje/povlačenje ne može biti postavljeno na isto vreme'\n'The publishing schedule can not be set in the past': 'Redosled objavljivanja ne može biti podešen na datum u prošlosti'\n'Please assign at least one theme to the publication': 'Molimo dodelite najmanje jednu temu publikaciji'\n'Issue Theme': 'Tema izdanja'\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': 'Vrednosti koje pokušavate da podesite su u konfliktu sa izdanjem $1$2. $3 ($4)$5.'\n'The number must be unique for each issue in this publication of the same language.': 'Broj mora biti jedinstven za svako izdanje u ovoj publikaciji za isti jezik.'\n'The language and URL name must be unique for each issue in this publication.': 'Jezik i URL naziv moraju biti jedinstveni za svako izdanje u publikaciji.'\n'Issue created.': 'Izdanje je kreirano.'\n'Issue updated': 'Izdanje je izmenjeno.'\n'Could not save the changes to the issue.': 'Nije moguće sačuvati promene za izdanje.'\n'Unpublish on: $1': 'Povuci:'\n'There are $1 articles in this issue.': 'Postoji $1 članak u ovom izdanju.'\n'The issue $1 has been deleted.': 'Izdanje $1 je obrisano.'\nSchedule: Zakaži\n'Publish on: $1': 'Objavi: $1'\n'Publish Date $1': 'Datum objavljivanja $1'\n'Deleted issue': 'Obrisano izdanje'\n'Delete issue': 'Obriši izdanje'\n'Click here to publish this issue': 'Klikni ovde da objaviš ovo izdanje'\n'A total of $1 articles were deleted.': 'Ukupno $1 članaka je obrisano.'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Naziv<br><small>(kliknite za pregled rubrika)</small>'\n'Delete issue $1': 'Obriši izdanje $1'\n'You do not have the right to change issues.': 'Nemate pravo da promenenite podatke o izdanju'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'Da li ste sigurni da želite da promenite status izdanja $1 iz $2 u $3?'\n'Add new translation': 'Dodaj novi prevod'\n'You do not have the right to add issues.': 'Nemate pravo da dodajete izdanja'\n'The issue $1 has been successfuly added.': 'Izdanje $1 je uspešno dodato'\n'The issue could not be added.': 'Izdanje ne može biti dodato'\n'Change issue details': 'Promeni detalje o izdanju'\n'You do not have the right to change issue details.': 'Nemate pravo da menjate podatke o izdanju'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 'Datum objavljivanja<br><small>(gggg-mm-dd)</small>'\n'Front Page Template': 'Šablon za prvu stranu'\n'You do not have the right to delete issues.': 'Nemate pravo da brišete izdanja'\n'Are you sure you want to delete the issue $1?': 'Sigurni ste da želite da obrišete izdanje $1?'\n'Use the structure of the previous issue': 'Iskoristi strukturu prethodnog izdanja'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Prekopiraj celokupnu strukturu u svim jezicima iz prethodnog izdanja, osim sadržaja'\n'You may modify it later if you wish.': 'Možete ga promeniti kasnije ako želite.'\n'Create a new structure': 'Napravi novu strukturu'\n'Create a complete new structure.': 'Napravi potpuno novu strukturu.'\n'You must define an issue type for each language and then sections for them.': 'Morate definisati tip izdanja za svaki jezik a potom i njegove rubrike.'\n'Copy previous issue': 'Prekopiraj prethodno izdanje'\n'No previous issue.': 'Nema prethodnog izdanja.'\n'Copy structure from issue number $1': 'Prekopiraj strukturu iz izdanja $1'\n'Delete entry': 'Obriši unos'\n'Issue Publishing Schedule': 'Raspored automatskog objavljivanja izdanja'\n'Invalid Input: $1': 'Pogrešan unos: $1'\n'Issue Number': 'Broj izdanja'\n'Go To Sections': 'Idi na rubrike'\n'There was an error reading the language parameter.': 'Greška pri čitanju parametra jezika.'\n'There was an error reading the publication parameter.': 'Greška pri čitanju parametra publikacije.'\n'There was an error reading the issue parameter.': 'Greška pri čitanju parametra izdanja.'\n'There was an error scheduling the $1 action on $2': 'Došlo je do greške pri zakazivanju akcije $1 za $2'\n'The action scheduled on $1 could not be deleted.': 'Akcija predviđena za $1 ne može biti obrisana.'\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.sq.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': null\n'Name<BR><SMALL>(click to see sections)</SMALL>': null\n'Delete issue $1': null\n'You do not have the right to change issues.': null\n'Are you sure you want to change the issue $1 status from $2 to $3?': null\n'Add new translation': null\n'You do not have the right to add issues.': null\n'The issue $1 has been successfuly added.': null\n'The issue could not be added.': null\n'Change issue details': null\n'You do not have the right to change issue details.': null\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': null\n'Front Page Template': null\n'You do not have the right to delete issues.': null\n'Are you sure you want to delete the issue $1?': null\n'Use the structure of the previous issue': null\n'Copy the entire structure in all languages from the previous issue except for content.': null\n'You may modify it later if you wish.': null\n'Create a new structure': null\n'Create a complete new structure.': null\n'You must define an issue type for each language and then sections for them.': null\n'Copy previous issue': null\n'No previous issue.': null\n'Copy structure from issue number $1': null\n'Delete entry': null\n'Issue Publishing Schedule': null\n'Invalid Input: $1': null\n'Issue Number': null\n'Go To Sections': null\n'There was an error reading the language parameter.': null\n'There was an error reading the publication parameter.': null\n'There was an error reading the issue parameter.': null\n'There was an error scheduling the $1 action on $2': null\n'The action scheduled on $1 could not be deleted.': null\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.sr.yml",
    "content": "'so that default templates can be assigned to the issue.': 'тако да предефинисани шаблон може бити додељен издању.'\n'Once this is done, the issue can be published': 'Када је то урађено, издање може бити објављено'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Ово издање не може бити приказано. Проверите да ли публикација има додељену тему.'\n'This issue cannot be previewed. Please make sure it has the front template selected.': 'Ово издање не може бити прегледано. Проверите да ли има додељен шаблон за приказ прве стране.'\n'Publish all articles:': 'Објави све текстове:'\n'Publish all articles': 'Објави све текстове'\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': 'Форсирај објављивање свих текстова. Ако је постављено на Не, само текстови са статусом Објави заједно са издањембиће објављени'\ndefault: подразумевано\n'The publishing/unpublishing can not be set the same time': 'Објављивање/повлачење не може бити постављено на исто време'\n'The publishing schedule can not be set in the past': 'Редослед објављивања не може бити подешен на датум у прошлости'\n'Please assign at least one theme to the publication': 'Молимо доделите најмање једну тему публикацији'\n'Issue Theme': 'Тема издања'\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': 'Вредности које покушавате да подесите су у конфликту са издањем $1 $2. $3 ($4) $5.'\n'The number must be unique for each issue in this publication of the same language.': 'Број мора бити јединствен за свако издање у овој публикацији за исти језик.'\n'The language and URL name must be unique for each issue in this publication.': 'Језик и УРЛ назив морају бити јединствени за свако издање у публикацији.'\n'Issue created.': 'Издање је креирано.'\n'Issue updated': 'Издање је измењено.'\n'Could not save the changes to the issue.': 'Није могуће сачувати промене за издање.'\n'Unpublish on: $1': 'Повуци:'\n'There are $1 articles in this issue.': 'Постоји $1 текст о овом издању.'\n'The issue $1 has been deleted.': 'Издање $1 је обрисдано.'\nSchedule: Закажи\n'Publish on: $1': 'Објави: $1'\n'Publish Date $1': 'Датум објављивања $1'\n'Deleted issue': 'Обрисано издање'\n'Delete issue': 'Обриши издање'\n'Click here to publish this issue': 'Кликни овде да објавиш ово издање'\n'A total of $1 articles were deleted.': 'Укупно $1 текстова је обрисано.'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Назив<br><small>(кликните за преглед рубрика)</small>'\n'Delete issue $1': 'Обриши издање $1'\n'You do not have the right to change issues.': 'Немате право да мењате податке о издању'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'Да ли сте сигурни да желите да промените статус издања $1 из $2 у $3?'\n'Add new translation': 'Додај нови превод'\n'You do not have the right to add issues.': 'Немате право да додајете издања'\n'The issue $1 has been successfuly added.': 'Издање $1 је успешно додато'\n'The issue could not be added.': 'Издање не може бити додато'\n'Change issue details': 'Промени детаље о издању'\n'You do not have the right to change issue details.': 'Немате право да мењате податке о издању'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 'Датум објављивања<br><small>(гггг-мм-дд)</small>'\n'Front Page Template': 'Шаблон за почетну страну'\n'You do not have the right to delete issues.': 'Немате право да бришете издања'\n'Are you sure you want to delete the issue $1?': 'Сигурни сте да желите да обришете издање $1?'\n'Use the structure of the previous issue': 'Искористи структуру претходног издања'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Прекопирај целокупну структуру у свим језицима из претходног издања, осим садржаја'\n'You may modify it later if you wish.': 'Можете га променити и касније ако желите'\n'Create a new structure': 'Направи нову структуру'\n'Create a complete new structure.': 'Направи потпуно нову структуру'\n'You must define an issue type for each language and then sections for them.': 'Морате дефинисати тип издања за сваки језик а потом и његове одељке'\n'Copy previous issue': 'Прекопирај претходно издање'\n'No previous issue.': 'Нема претходног издања'\n'Copy structure from issue number $1': 'Прекопирај структуру из издања $1'\n'Delete entry': 'Обриши унос'\n'Issue Publishing Schedule': 'Распоред аутоматског објављивања издања'\n'Invalid Input: $1': 'Погрешан унос: $1'\n'Issue Number': 'Број издања'\n'Go To Sections': 'Иди на рубрике'\n'There was an error reading the language parameter.': 'Дошло је до грешке при читању параметра језика.'\n'There was an error reading the publication parameter.': 'Дошло је до грешке при читању параметра публикације.'\n'There was an error reading the issue parameter.': 'Дошло је до грешке при читању параметра издања.'\n'There was an error scheduling the $1 action on $2': 'Дошло је до грешке у заказивању акције $1 за $2'\n'The action scheduled on $1 could not be deleted.': 'Акција заказана за $1 не може бити обрисана.'\n'Click to open': 'Клик за отварање'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.sv.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': 'Utgåvan skapad.'\n'Issue updated': 'Utgåvan uppdaterad'\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: Schema\n'Publish on: $1': 'Publicera: $1'\n'Publish Date $1': 'Publiceringsdatum $1'\n'Deleted issue': 'Raderade utgåva'\n'Delete issue': 'Radera utgåva'\n'Click here to publish this issue': 'Tryck här för att publicera denna utgåva'\n'A total of $1 articles were deleted.': 'Totalt $1 artiklar raderades.'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Namn<BR><SMALL>(klicka för att se sektioner)</SMALL>'\n'Delete issue $1': 'Radera utgåva $1'\n'You do not have the right to change issues.': 'Du har inte rätt att ändra på utgåvor.'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'Är du säker att du vill ändra status på utgåvan $1 från $2 till $3'\n'Add new translation': 'Lägg till ny översättning'\n'You do not have the right to add issues.': 'Du har inte rätt att lägga till utgåvor.'\n'The issue $1 has been successfuly added.': 'Utgåvan $1 har lagts till framgångsrikt.'\n'The issue could not be added.': 'Utgåvan kunde inte läggas till.'\n'Change issue details': 'Ändra utgåvans detaljer'\n'You do not have the right to change issue details.': 'Du har inte rätt att ändra utgåvedetaljer.'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': Publiceringsdatum<BR><SMALL>(åååå-mm-dd)</SMALL>\n'Front Page Template': Framsidesmall\n'You do not have the right to delete issues.': 'Du har inte rätt att radera utgåvor.'\n'Are you sure you want to delete the issue $1?': 'Är du säker på att du vill radera utgåvan $1?'\n'Use the structure of the previous issue': 'Använd strukturen från föregående utgåva'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Kopiera hela strukturen på alla språk från den föregående utgåvan förutom innehåll.'\n'You may modify it later if you wish.': 'Du kan ändra det senare om du vill.'\n'Create a new structure': 'Skapa en ny struktur'\n'Create a complete new structure.': 'Skapa en helt ny struktur.'\n'You must define an issue type for each language and then sections for them.': 'Du måste definiera en utgåvetyp för varje språk och sedan sektioner i dem.'\n'Copy previous issue': 'Kopiera föregående utgåva'\n'No previous issue.': 'Ingen tidigare utgåva.'\n'Copy structure from issue number $1': 'Kopiera struktur från utgåva nr $1'\n'Delete entry': 'Radera post'\n'Issue Publishing Schedule': Utgåvepubliceringsschema\n'Invalid Input: $1': 'Ogiltig inmatning: $1'\n'Issue Number': 'Utgåva nummer'\n'Go To Sections': 'Gå till sektioner'\n'There was an error reading the language parameter.': 'Ett fel uppstod vid läsning av språkparametern.'\n'There was an error reading the publication parameter.': 'Ett fel uppstod vid läsning av publikationsparametern.'\n'There was an error reading the issue parameter.': 'Ett fel uppstod vid läsning av utgåveparametern.'\n'There was an error scheduling the $1 action on $2': 'Ett fel uppstod när $1 schemalades $2'\n'The action scheduled on $1 could not be deleted.': 'Händelsen schemalagd $1 kunde inte raderas.'\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.tr.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': null\n'Name<BR><SMALL>(click to see sections)</SMALL>': null\n'Delete issue $1': null\n'You do not have the right to change issues.': null\n'Are you sure you want to change the issue $1 status from $2 to $3?': null\n'Add new translation': null\n'You do not have the right to add issues.': null\n'The issue $1 has been successfuly added.': null\n'The issue could not be added.': null\n'Change issue details': null\n'You do not have the right to change issue details.': null\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': null\n'Front Page Template': null\n'You do not have the right to delete issues.': null\n'Are you sure you want to delete the issue $1?': null\n'Use the structure of the previous issue': null\n'Copy the entire structure in all languages from the previous issue except for content.': null\n'You may modify it later if you wish.': null\n'Create a new structure': null\n'Create a complete new structure.': null\n'You must define an issue type for each language and then sections for them.': null\n'Copy previous issue': null\n'No previous issue.': null\n'Copy structure from issue number $1': null\n'Delete entry': null\n'Issue Publishing Schedule': null\n'Invalid Input: $1': null\n'Issue Number': null\n'Go To Sections': null\n'There was an error reading the language parameter.': null\n'There was an error reading the publication parameter.': null\n'There was an error reading the issue parameter.': null\n'There was an error scheduling the $1 action on $2': null\n'The action scheduled on $1 could not be deleted.': null\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.uk.yml",
    "content": "'so that default templates can be assigned to the issue.': 'так, щоб шаблони за замовчуванням можна було призначати для випусків'\n'Once this is done, the issue can be published': 'По закінченню дій опублікувати випуск'\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': 'Попередній перегляд неможливий. Будь ласка переконайтесь, що для публікації призначена тема.'\n'This issue cannot be previewed. Please make sure it has the front template selected.': 'Попередній перегляд випуска неможливий. Будь ласка переконайтесь, що для визначен шаблон головної сторінки.'\n'Publish all articles:': 'Опублікувати всі статті:'\n'Publish all articles': 'Опублікувати всі статті.'\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: 'За замовчуванням'\n'The publishing/unpublishing can not be set the same time': 'Налаштування Опублікувати /  Відмінити публікацію одночасно не працюють'\n'The publishing schedule can not be set in the past': 'Неможливо налаштувати розклад публікації у минулому часі'\n'Please assign at least one theme to the publication': 'Будь ласка призначте для публікації хоча б одну тему'\n'Issue Theme': 'Тема випуску'\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': 'Величини, які Ви намагаєтесь встановити, конфліктують з випуском $1$2. $3 ($4)$5.'\n'The number must be unique for each issue in this publication of the same language.': 'Номер має бути унікальним для кожного випуску цього видання на тій ж мові'\n'The language and URL name must be unique for each issue in this publication.': 'Мова та посилання мають бути унікальними для кожного випуску цього видання.'\n'Issue created.': 'Випуск створено.'\n'Issue updated': 'Випуск оновлено.'\n'Could not save the changes to the issue.': 'Не вдалося зберегти зміни у випуску.'\n'Unpublish on: $1': 'Відмінити публікацію на:  $1'\n'There are $1 articles in this issue.': 'Статей у віпуску:  $1'\n'The issue $1 has been deleted.': 'Випуск  $1 було видалено.'\nSchedule: Розклад\n'Publish on: $1': 'Опублікувати:  $1'\n'Publish Date $1': 'Дата публікації  $1'\n'Deleted issue': 'Видалений випуск'\n'Delete issue': 'Видалити випуск'\n'Click here to publish this issue': 'Клікніть для публікації випуску'\n'A total of $1 articles were deleted.': 'Всього статей було видалено:  $1'\n'Name<BR><SMALL>(click to see sections)</SMALL>': 'Назва<BR><SMALL>(перегляд секцій)</SMALL>'\n'Delete issue $1': 'Видалення випуску $1'\n'You do not have the right to change issues.': 'Ви не маєте прав змінювати випуск.'\n'Are you sure you want to change the issue $1 status from $2 to $3?': 'Ви впевнені, що хочете змінити статус випуску $1 з $2 на $3?'\n'Add new translation': 'Додати новий переклад'\n'You do not have the right to add issues.': 'Ви не маєте прав додавати випуск.'\n'The issue $1 has been successfuly added.': 'Випуск $1 було додано.'\n'The issue could not be added.': 'Не вдалося додати випуск.'\n'Change issue details': 'Змініть параметри випуску.'\n'You do not have the right to change issue details.': 'Ви не маєте прав змінювати параметри випуску.'\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': 'Дата публикації<BR><SMALL>(ррррг-мм-дд)</SMALL>'\n'Front Page Template': 'Шаблон титульної сторінки'\n'You do not have the right to delete issues.': 'Ви не маєте прав видаляти випуски.'\n'Are you sure you want to delete the issue $1?': 'Ви впевнені що хочете видалили випуск $1?'\n'Use the structure of the previous issue': 'Використати структуру попереднього випуску'\n'Copy the entire structure in all languages from the previous issue except for content.': 'Скопіювати всю структуру запису у всі мови з попереднього випуску за виключенням інформаційного наповнення'\n'You may modify it later if you wish.': 'Ви можете змінити це пізніше, якщо забажаєте.'\n'Create a new structure': 'Створити нову структуру'\n'Create a complete new structure.': 'Створити повністю нову структуру.'\n'You must define an issue type for each language and then sections for them.': 'Ви маєте визначити тип випуску для кожної мови та, потім, рубрики для них.'\n'Copy previous issue': 'Скопіювати попередній випуск'\n'No previous issue.': 'Немає попереднього випуску.'\n'Copy structure from issue number $1': 'Скопіювати структуру з випуску №$1'\n'Delete entry': 'Видалити запис'\n'Issue Publishing Schedule': 'Публікація випуску запланована'\n'Invalid Input: $1': 'Некоректне введення: $1?'\n'Issue Number': 'Номер випуску'\n'Go To Sections': 'Перейти до рубрик'\n'There was an error reading the language parameter.': 'Помилка читання параметрів мови.'\n'There was an error reading the publication parameter.': 'Помилка читання параметрів видання.'\n'There was an error reading the issue parameter.': 'Помилка читання параметрів випуску.'\n'There was an error scheduling the $1 action on $2': 'Помилка планування операції $1 на $2'\n'The action scheduled on $1 could not be deleted.': 'Призначена на $1 операція не може бути відмінена'\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.vi.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': null\n'Name<BR><SMALL>(click to see sections)</SMALL>': null\n'Delete issue $1': null\n'You do not have the right to change issues.': null\n'Are you sure you want to change the issue $1 status from $2 to $3?': null\n'Add new translation': null\n'You do not have the right to add issues.': null\n'The issue $1 has been successfuly added.': null\n'The issue could not be added.': null\n'Change issue details': null\n'You do not have the right to change issue details.': null\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': null\n'Front Page Template': null\n'You do not have the right to delete issues.': null\n'Are you sure you want to delete the issue $1?': null\n'Use the structure of the previous issue': null\n'Copy the entire structure in all languages from the previous issue except for content.': null\n'You may modify it later if you wish.': null\n'Create a new structure': null\n'Create a complete new structure.': null\n'You must define an issue type for each language and then sections for them.': null\n'Copy previous issue': null\n'No previous issue.': null\n'Copy structure from issue number $1': null\n'Delete entry': null\n'Issue Publishing Schedule': null\n'Invalid Input: $1': null\n'Issue Number': null\n'Go To Sections': null\n'There was an error reading the language parameter.': null\n'There was an error reading the publication parameter.': null\n'There was an error reading the issue parameter.': null\n'There was an error scheduling the $1 action on $2': null\n'The action scheduled on $1 could not be deleted.': null\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.zh.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': null\n'Name<BR><SMALL>(click to see sections)</SMALL>': 名称\n'Delete issue $1': 删除议题$1\n'You do not have the right to change issues.': 您无权改变议题\n'Are you sure you want to change the issue $1 status from $2 to $3?': '你确认要把议题$1的状态从$2改成$3?'\n'Add new translation': 添加新翻译\n'You do not have the right to add issues.': 您无权增加议题\n'The issue $1 has been successfuly added.': 议题$1已成功添加\n'The issue could not be added.': 议题不能被添加\n'Change issue details': 改变议题详情\n'You do not have the right to change issue details.': 你无权修改议题详情\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': null\n'Front Page Template': null\n'You do not have the right to delete issues.': 您无权删除议题\n'Are you sure you want to delete the issue $1?': 你确认删除议题$1\n'Use the structure of the previous issue': 用以前议题的结构\n'Copy the entire structure in all languages from the previous issue except for content.': 除内容外，复制所有语言先前议题的完整结构\n'You may modify it later if you wish.': 如果您愿意，可以以后再修改\n'Create a new structure': 创建新结构\n'Create a complete new structure.': 创建全新的结构\n'You must define an issue type for each language and then sections for them.': 你必须为每种语言定义一个议题，然后是区\n'Copy previous issue': 复制以前的议题\n'No previous issue.': 无以前的议题\n'Copy structure from issue number $1': 从$1议题复制结构\n'Delete entry': null\n'Issue Publishing Schedule': null\n'Invalid Input: $1': null\n'Issue Number': null\n'Go To Sections': null\n'There was an error reading the language parameter.': null\n'There was an error reading the publication parameter.': null\n'There was an error reading the issue parameter.': null\n'There was an error scheduling the $1 action on $2': null\n'The action scheduled on $1 could not be deleted.': null\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/issues.zh_TW.yml",
    "content": "'so that default templates can be assigned to the issue.': null\n'Once this is done, the issue can be published': null\n'This issue cannot be previewed. Please make sure the publication has a theme assigned.': null\n'This issue cannot be previewed. Please make sure it has the front template selected.': null\n'Publish all articles:': null\n'Publish all articles': null\n'Force publishing of all articles. If set to No, only articles with Publish with Issue status will be published.': null\ndefault: null\n'The publishing/unpublishing can not be set the same time': null\n'The publishing schedule can not be set in the past': null\n'Please assign at least one theme to the publication': null\n'Issue Theme': null\n'The values you are trying to set conflict with issue $1$2. $3 ($4)$5.': null\n'The number must be unique for each issue in this publication of the same language.': null\n'The language and URL name must be unique for each issue in this publication.': null\n'Issue created.': null\n'Issue updated': null\n'Could not save the changes to the issue.': null\n'Unpublish on: $1': null\n'There are $1 articles in this issue.': null\n'The issue $1 has been deleted.': null\nSchedule: null\n'Publish on: $1': null\n'Publish Date $1': null\n'Deleted issue': null\n'Delete issue': null\n'Click here to publish this issue': null\n'A total of $1 articles were deleted.': null\n'Name<BR><SMALL>(click to see sections)</SMALL>': null\n'Delete issue $1': null\n'You do not have the right to change issues.': null\n'Are you sure you want to change the issue $1 status from $2 to $3?': null\n'Add new translation': null\n'You do not have the right to add issues.': null\n'The issue $1 has been successfuly added.': null\n'The issue could not be added.': null\n'Change issue details': null\n'You do not have the right to change issue details.': null\n'Publication date<BR><SMALL>(yyyy-mm-dd)</SMALL>': null\n'Front Page Template': null\n'You do not have the right to delete issues.': null\n'Are you sure you want to delete the issue $1?': null\n'Use the structure of the previous issue': null\n'Copy the entire structure in all languages from the previous issue except for content.': null\n'You may modify it later if you wish.': null\n'Create a new structure': null\n'Create a complete new structure.': null\n'You must define an issue type for each language and then sections for them.': null\n'Copy previous issue': null\n'No previous issue.': null\n'Copy structure from issue number $1': null\n'Delete entry': null\n'Issue Publishing Schedule': null\n'Invalid Input: $1': null\n'Issue Number': null\n'Go To Sections': null\n'There was an error reading the language parameter.': null\n'There was an error reading the publication parameter.': null\n'There was an error reading the issue parameter.': null\n'There was an error scheduling the $1 action on $2': null\n'The action scheduled on $1 could not be deleted.': null\n'Click to open': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.ar.yml",
    "content": "'Language id not specified': null\n'No languages.': 'لا لغات'\n'Native Name': 'الاسم المحلي'\n'Name taken.': 'تم أخذ الاسم'\n'Language saved.': 'تم حفظ اللغة.'\n'Language removed.': 'تم إزالة اللغة.'\n'Language not found.': 'لم يتم العثور على اللغة.'\n'Language is in use and cannot be removed.': 'اللغة قيد الاستخدام ولا يتمكن إزالتها.'\n'Language added.': 'تم إضافة اللغة.'\n'English language cannot be removed.': 'لا يمكن إزالة اللغة الإنجليزية.'\n'Edit short month names': 'عدل الأسماء القصيرة للشهور'\n'Edit short day names': 'عدل الأسماء القصيرة للأيام'\n'Edit month names': 'عدل أسماء الشهور'\n'Edit language: $1': 'عدل اللغة: $1'\n'Edit day names': 'عدل أسماء الأيام'\n'Code Page': 'صفحة الرموز'\n'Add new Language': 'أضف لغة جديدة'\n'Add Language': 'أضف اللغة'\nWe: الأربعاء\nTu: الثلاثاء\nTh: الخميس\nSu: الأحد\nSep: 'أيلول / سبتمبر'\nSa: السبت\n'Please enter the translation for week day short names.': 'يرجى إدخال أسماء قصيرة لأيام الأسبوع.'\n'Please enter the translation for month short names.': 'يرجى إدخال أسماء قصيرة للأشهر.'\nOct: 'تشرين الأول / أكتوبر'\nNov: 'تشرين الثاني / نوفمبر'\nMo: الإثنين\nMar: 'آذار / مارس'\nJun: 'حزيران / يونيو'\nJul: 'تموز / يوليو'\nJan: 'كانون الثاني / يناير'\nFr: الجمعة\nFeb: 'شباط / فبراير'\nDec: 'كانون الأول / ديسمبر'\nAug: 'آب / أغسطس'\nApr: 'نيسان / إبريل'\n'No language.': 'لا لغة'\n'Delete language $1': 'إحذف اللغة $1'\n'You do not have the right to add languages.': 'ليس لديك الحق في إضافة لغات'\n'Please enter the translation for time units.': 'يرجى إدخال الترجمة الخاصة بوحدات الوقت'\n'You do not have the right to delete languages.': 'ليس لديك الحق في حذف لغات'\n'Are you sure you want to delete the language $1?': 'هل أنت متأكد أنك تريد حذف اللغة $1 ؟'\n'Deleting language': 'قيد الحذف اللغة'\n'The language $1 could not be deleted.': 'لا يمكن حذف اللغة $1.'\n'Edit language': 'عدل اللغة'\n'You do not have the right to edit languages.': 'ليس لديك الحق في تعديل اللغات'\n'Please enter the translation for month names.': 'يرجى إدخال الترجمة الخاصة بأسماء الشهور'\n'Please enter the translation for week day names.': 'يرجى إدخال الترجمة الخاصة بأسماء أيام الأسبوع'\nJanuary: 'كانون الثاني'\nFebruary: شباط\nMarch: آذار\nApril: نيسان\nMay: آيار\nJune: حزيران\nJuly: تموز\nAugust: آب\nSeptember: أيلول\nOctober: 'تشرين الأول'\nNovember: 'تشرين الثاني'\nDecember: 'كانون الأول'\nMonday: 'يوم الاثنين'\nTuesday: 'يوم الثلاثاء'\nWednesday: 'يوم الأربعاء'\nThursday: 'يوم الخميس'\nFriday: 'يوم الجمعة'\nSaturday: 'يوم السبت'\nSunday: 'يوم الأحد'\n'You do not have the right to add new languages.': 'ليس لديك الحق في إضافة لغات جديدة.'\n'There are $1 issue(s) left.': 'تبقى $1 أعداد.'\n'Native name': 'الاسم المحلي'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.az.yml",
    "content": "'Language id not specified': 'Dil id-si bildirilməyib'\n'No languages.': 'Dil yoxdur.'\n'Native Name': 'Əsl adı'\n'Name taken.': 'Ad götürüldü.'\n'Language saved.': 'Dil saxlandı.'\n'Language removed.': 'Dil silindi.'\n'Language not found.': 'Dil tapılmadı.'\n'Language is in use and cannot be removed.': 'Dil istifadədədir və xaric edilə bilməz.'\n'Language added.': 'Dil əlavə olundu.'\n'English language cannot be removed.': 'İngilis dili xaric edilə bilməz.'\n'Edit short month names': 'Ayların qısa adlarını redaktə et.'\n'Edit short day names': 'Günlərin qısa adlarını dəyiş'\n'Edit month names': 'Ay adlarını dəyiş'\n'Edit language: $1': '$1 dili redaktə et'\n'Edit day names': 'Gün adlarını redaktə et'\n'Code Page': 'Səhifə kodu'\n'Add new Language': 'Yeni dil əlavə et'\n'Add Language': 'Dil əlavə et'\nWe: Çə\nTu: Ç.a\nTh: C.a\nSu: Ba\nSep: Sen\nSa: Şə\n'Please enter the translation for week day short names.': 'Zəhmət olmasa, həftə günlərini qısa adlarını yazın.'\n'Please enter the translation for month short names.': 'Ayların qısa adlarını yazın.'\nOct: Okt\nNov: Noy\nMo: B.e\nMar: Mar\nJun: İyn\nJul: İyl\nJan: Yan\nFr: Cü\nFeb: Fev\nDec: Dek\nAug: Avq\nApr: Apr\n'No language.': 'Dil yoxdur.'\n'Delete language $1': '$1 dilini sil'\n'You do not have the right to add languages.': 'Dil əlavə etməyə ixtiyarın yoxdur.'\n'Please enter the translation for time units.': 'Lütfən, vaxt göstəricilərinin tərcümələrini daxil et.'\n'You do not have the right to delete languages.': 'Dil silməyə ixtiyarın yoxdur.'\n'Are you sure you want to delete the language $1?': '$1 dilini silmək istədiyinə əminsən?'\n'Deleting language': 'Dilin silinməsi'\n'The language $1 could not be deleted.': '$1 dil silinə bilməz.'\n'Edit language': 'Dili dəyiş'\n'You do not have the right to edit languages.': 'Dilə dəyişiklik etməyə ixtiyarın yoxdur.'\n'Please enter the translation for month names.': 'Zəhmət olmasa ay adlarını yazın.'\n'Please enter the translation for week day names.': 'Lütfən, həftə günləri üçün adların tərcüməsini daxil et.'\nJanuary: Yanvar\nFebruary: Fevral\nMarch: Mart\nApril: Aprel\nMay: May\nJune: İyun\nJuly: İyul\nAugust: Avqust\nSeptember: Sentyabr\nOctober: Oktyabr\nNovember: Noyabr\nDecember: Dekabr\nMonday: 'Bazar ertəsi'\nTuesday: 'Çərşənbə axşamı'\nWednesday: Çərşənbə\nThursday: 'Cümə axşamı'\nFriday: Cümə\nSaturday: Şənbə\nSunday: Bazar\n'You do not have the right to add new languages.': 'Yeni dil əlavə etməyə ixtiyarın yoxdur.'\n'There are $1 issue(s) left.': 'Geriyə $1 məsələ(lər) qalıb.'\n'Native name': 'Əsl adı'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.be.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: Ср\nTu: Аў\nTh: Чц\nSu: Нд\nSep: Вер\nSa: Сб\n'Please enter the translation for week day short names.': 'Калі ласка ўвядзіце пераклад скарачэнняў для дзён тыдня.'\n'Please enter the translation for month short names.': 'Калі ласка ўвядзіце пераклад скарачэнняў для месяцаў.'\nOct: Каст\nNov: Сне\nMo: Пн\nMar: Мрт\nJun: Чэр\nJul: Ліп\nJan: Студз\nFr: Пт\nFeb: Лют\nDec: Снеж\nAug: Жнв\nApr: Крас\n'No language.': 'Няма мовы.'\n'Delete language $1': 'Выдалiць мову $1'\n'You do not have the right to add languages.': 'Вы ня маеце права дадаваць мовы.'\n'Please enter the translation for time units.': 'Калі ласка, увядзеце пераклад для адзiнак часу.'\n'You do not have the right to delete languages.': 'Вы ня маеце права выдаляць мовы.'\n'Are you sure you want to delete the language $1?': 'Ці Вы ўпэўнены, што хочаце выдалiць мову $1?'\n'Deleting language': 'Выдаленьне мовы'\n'The language $1 could not be deleted.': 'Мову $1 нельга выдаліць'\n'Edit language': 'Змяніць мову'\n'You do not have the right to edit languages.': 'Вы ня маеце права рэдагаваць мову.'\n'Please enter the translation for month names.': 'Калі ласка, увядзеце пераклад для назваў месяцаў.'\n'Please enter the translation for week day names.': 'Калі ласка, увядзеце пераклад для назваў дзён тыдня.'\nJanuary: Студзень\nFebruary: Люты\nMarch: Сакавiк\nApril: Красавiк\nMay: Май\nJune: Чэрвень\nJuly: Ліпень\nAugust: Жнiвень\nSeptember: Верасень\nOctober: Кастрычнiк\nNovember: Лiстапад\nDecember: Сьнежань\nMonday: Панядзелак\nTuesday: Аўторак\nWednesday: Серада\nThursday: Чацьвер\nFriday: 'Пятнiца '\nSaturday: 'Субота '\nSunday: Нядзеля\n'You do not have the right to add new languages.': 'Вы ня маеце права доступу для дадаваньня новых моў.'\n'There are $1 issue(s) left.': 'Засталося выпускаў: $1'\n'Native name': 'Зыходнае iмя'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.bn.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': null\n'Delete language $1': null\n'You do not have the right to add languages.': null\n'Please enter the translation for time units.': null\n'You do not have the right to delete languages.': null\n'Are you sure you want to delete the language $1?': null\n'Deleting language': null\n'The language $1 could not be deleted.': null\n'Edit language': null\n'You do not have the right to edit languages.': null\n'Please enter the translation for month names.': null\n'Please enter the translation for week day names.': null\nJanuary: null\nFebruary: null\nMarch: null\nApril: null\nMay: null\nJune: null\nJuly: null\nAugust: null\nSeptember: null\nOctober: null\nNovember: null\nDecember: null\nMonday: null\nTuesday: null\nWednesday: null\nThursday: null\nFriday: null\nSaturday: null\nSunday: null\n'You do not have the right to add new languages.': null\n'There are $1 issue(s) left.': null\n'Native name': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.cs.yml",
    "content": "'Language id not specified': 'ID jazyku není specifikováno'\n'No languages.': 'Žádné jazyky.'\n'Native Name': 'Rodné jméno'\n'Name taken.': Příjmení\n'Language saved.': 'Jazyk uložen.'\n'Language removed.': 'Jazyk odstraněn.'\n'Language not found.': 'Jazyk nenalezen.'\n'Language is in use and cannot be removed.': 'Jazyk se používá a nelze být odstraněn.'\n'Language added.': 'Jazyk přidán.'\n'English language cannot be removed.': 'Anglický jazyk nemůže být odstraněn.'\n'Edit short month names': 'Upravit krátké názvy měsíců'\n'Edit short day names': 'Upravit krátké názvy dnů'\n'Edit month names': 'Upravit jména měsíců'\n'Edit language: $1': 'Upravit jazyk: $1'\n'Edit day names': 'Upravit jména dnů'\n'Code Page': 'Kódovací stránka'\n'Add new Language': 'Přidat nový jazyk'\n'Add Language': 'Přidat jazyk'\nWe: St\nTu: Út\nTh: Čt\nSu: Ne\nSep: Zář\nSa: So\n'Please enter the translation for week day short names.': 'Prosím vložte překlad pro zkratky dnů v týdnu.'\n'Please enter the translation for month short names.': 'Prosím vložte překlad pro zkratky měsíců.'\nOct: Říj\nNov: Lis\nMo: Po\nMar: Bře\nJun: Čvn\nJul: Čvc\nJan: Led\nFr: Pá\nFeb: Úno\nDec: Pro\nAug: Srp\nApr: Dub\n'No language.': 'Žádný jazyk'\n'Delete language $1': 'Smazat jazyk $1'\n'You do not have the right to add languages.': 'Nemáte práva přidat jazyk'\n'Please enter the translation for time units.': 'Přeložte časové jednotky'\n'You do not have the right to delete languages.': 'Nemáte práva smazat jazyk'\n'Are you sure you want to delete the language $1?': 'Určitě chcete smazat jazyk $1'\n'Deleting language': 'Smazat jazyk'\n'The language $1 could not be deleted.': '$1 jazyk nemohl být smazán'\n'Edit language': 'Upravit jazyk'\n'You do not have the right to edit languages.': 'Nemáte práva editovat jazyk'\n'Please enter the translation for month names.': 'Napište přeložené názvy měsíců'\n'Please enter the translation for week day names.': 'Napište přeložené dny v týdnu'\nJanuary: Leden\nFebruary: Únor\nMarch: Březen\nApril: Duben\nMay: Květen\nJune: Červen\nJuly: Červenec\nAugust: Srpen\nSeptember: Září\nOctober: Říjen\nNovember: Listopad\nDecember: Prosinec\nMonday: Pondělí\nTuesday: Úterý\nWednesday: Středa\nThursday: Čtvrtek\nFriday: Pátek\nSaturday: Sobota\nSunday: Neděle\n'You do not have the right to add new languages.': 'Nemáte oprávnění přidávat další jazyky.'\n'There are $1 issue(s) left.': 'Zbývá $1 vydání.'\n'Native name': 'Jazyk (nepřeložen)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.da.yml",
    "content": "'Language id not specified': 'Sprog id er ikke angivet'\n'No languages.': 'Ingen sprog.'\n'Native Name': 'Lokalt navn'\n'Name taken.': 'Navnet er i brug.'\n'Language saved.': 'Sprog gemt.'\n'Language removed.': 'Sprog fjernet.'\n'Language not found.': 'Sproget findes ikke.'\n'Language is in use and cannot be removed.': 'Sproget er i brug og kan ikke slettes.'\n'Language added.': 'Sprog tilføjet.'\n'English language cannot be removed.': 'Engelsk kan ikke fjernes.'\n'Edit short month names': 'Rediger korte månedsnavne'\n'Edit short day names': 'Rediger korte ugedags navne'\n'Edit month names': 'Rediger månedsnavne'\n'Edit language: $1': 'Rediger sprog: $1'\n'Edit day names': 'Rediger ugedags navne'\n'Code Page': Tegntabel\n'Add new Language': 'Tilføj nyt sprog'\n'Add Language': 'Tilføj sprog'\nWe: On\nTu: Ti\nTh: To\nSu: Sø\nSep: Sep\nSa: Lø\n'Please enter the translation for week day short names.': 'Oversæt korte navne for ugedage.'\n'Please enter the translation for month short names.': 'Oversæt korte navne for måneder.'\nOct: Okt\nNov: Nov\nMo: Ma\nMar: Mar\nJun: Jun\nJul: Jul\nJan: Jan\nFr: Fr\nFeb: Feb\nDec: Dec\nAug: Aug\nApr: Apr\n'No language.': 'Intet sprog.'\n'Delete language $1': 'Slet sprog $1'\n'You do not have the right to add languages.': 'Du har ikke rettigheder til at tilføje sprog.'\n'Please enter the translation for time units.': 'Oversæt tidsenheder.'\n'You do not have the right to delete languages.': 'Du har ikke rettigheder til at slette sprog.'\n'Are you sure you want to delete the language $1?': 'Vil du slette sproget $1?'\n'Deleting language': 'Sletter sprog'\n'The language $1 could not be deleted.': 'Sproget $1 kunne ikke slettes.'\n'Edit language': 'Rediger sprog'\n'You do not have the right to edit languages.': 'Du har ikke rettigheder til at redigere sprog.'\n'Please enter the translation for month names.': 'Oversæt måneder.'\n'Please enter the translation for week day names.': 'Oversæt ugedage.'\nJanuary: Januar\nFebruary: Februar\nMarch: Marts\nApril: April\nMay: Maj\nJune: Juni\nJuly: Juli\nAugust: August\nSeptember: September\nOctober: Oktober\nNovember: November\nDecember: December\nMonday: Mandag\nTuesday: Tirsdag\nWednesday: Onsdag\nThursday: Torsdag\nFriday: Fredag\nSaturday: Lørdag\nSunday: Søndag\n'You do not have the right to add new languages.': 'Du har ikke rettigheder til at tilføje nye sprog.'\n'There are $1 issue(s) left.': 'Der er $1 udgivelse(r) tilbage.'\n'Native name': 'Lokalt navn'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.de.yml",
    "content": "'Language id not specified': 'Sprachen ID nicht spezifiziert. '\n'No languages.': 'Keine Sprachen. '\n'Native Name': 'Name Im Original'\n'Name taken.': 'Name bereits vergeben. '\n'Language saved.': 'Sprache gespeichert. '\n'Language removed.': 'Sprache entfernt. '\n'Language not found.': 'Sprache nicht gefunden. '\n'Language is in use and cannot be removed.': 'Die Sprache ist in Verwendung und kann nicht entfernt werden. '\n'Language added.': 'Sprache hinzugefügt. '\n'English language cannot be removed.': 'Die Sprache Englisch kann nicht entfernt werden. '\n'Edit short month names': 'Bearbeite die Kurzformen der Monatsnamen'\n'Edit short day names': 'Bearbeite die Kurzformen der Wochentage'\n'Edit month names': 'Bearbeite Monatsnamen'\n'Edit language: $1': 'Bearbeite Sprache: $1'\n'Edit day names': 'Bearbeite Wochentage'\n'Code Page': 'Code Page'\n'Add new Language': 'Neue Sprache hinzufügen'\n'Add Language': 'Sprache hinzufügen'\nWe: Mi\nTu: Di\nTh: Do\nSu: So\nSep: Sep\nSa: Sa\n'Please enter the translation for week day short names.': 'Bitte Übersetzung für Kurzformen der Wochentage eingeben.'\n'Please enter the translation for month short names.': 'Bitte Übersetzung für Kurzformen der Monate eingeben.'\nOct: Okt\nNov: Nov\nMo: Mo\nMar: Mär\nJun: Jun\nJul: Jul\nJan: Jan\nFr: Fr\nFeb: Feb\nDec: Dez\nAug: Aug\nApr: Apr\n'No language.': 'Keine Sprache. '\n'Delete language $1': 'Sprache $1 löschen'\n'You do not have the right to add languages.': 'Keine Berechtigung Sprachen hinzuzufügen.'\n'Please enter the translation for time units.': 'Bitte Übersetzung für Zeiteinheiten eingeben.'\n'You do not have the right to delete languages.': 'Keine Berechtigung Sprachen zu löschen.'\n'Are you sure you want to delete the language $1?': 'Sprache $1 wirklich löschen?'\n'Deleting language': 'Sprache wird gelöscht.'\n'The language $1 could not be deleted.': 'Sprache $1 konnte nicht gelöscht werden.'\n'Edit language': 'Sprache bearbeiten'\n'You do not have the right to edit languages.': 'Keine Berechtigung Sprachen zu bearbeiten.'\n'Please enter the translation for month names.': 'Bitte die Übersetzung für Monatsnamen eingeben.'\n'Please enter the translation for week day names.': 'Bitte die Übersetzung für Wochentage eingeben.'\nJanuary: Januar\nFebruary: Februar\nMarch: März\nApril: April\nMay: Mai\nJune: Juni\nJuly: Juli\nAugust: August\nSeptember: September\nOctober: Oktober\nNovember: November\nDecember: Dezember\nMonday: Montag\nTuesday: Dienstag\nWednesday: Mittwoch\nThursday: Donnertsag\nFriday: Freitag\nSaturday: Samstag\nSunday: Sonntag\n'You do not have the right to add new languages.': 'Keine Berechtigung neue Sprachen hinzuzufügen.'\n'There are $1 issue(s) left.': 'Es sind $1 Ausgaben übrig.'\n'Native name': 'Name Im Original'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.de_AT.yml",
    "content": "'Language id not specified': 'Sprachen ID nicht spezifiziert. '\n'No languages.': 'Keine Sprachen. '\n'Native Name': 'Name Im Original'\n'Name taken.': 'Name bereits vergeben. '\n'Language saved.': 'Sprache gespeichert. '\n'Language removed.': 'Sprache entfernt. '\n'Language not found.': 'Sprache nicht gefunden. '\n'Language is in use and cannot be removed.': 'Die Sprache ist in Verwendung und kann nicht entfernt werden. '\n'Language added.': 'Sprache hinzugefügt. '\n'English language cannot be removed.': 'Die Sprache Englisch kann nicht entfernt werden. '\n'Edit short month names': 'Bearbeite die Kurzformen der Monatsnamen'\n'Edit short day names': 'Bearbeite die Kurzformen der Wochentage'\n'Edit month names': 'Bearbeite Monatsnamen'\n'Edit language: $1': 'Bearbeite Sprache: $1'\n'Edit day names': 'Bearbeite Wochentage'\n'Code Page': 'Code Page'\n'Add new Language': 'Neue Sprache hinzufügen'\n'Add Language': 'Sprache hinzufügen'\nWe: Mi\nTu: Di\nTh: Do\nSu: So\nSep: Sep\nSa: Sa\n'Please enter the translation for week day short names.': 'Bitte Übersetzung für Kurzformen der Wochentage eingeben.'\n'Please enter the translation for month short names.': 'Bitte Übersetzung für Kurzformen der Monate eingeben.'\nOct: Okt\nNov: Nov\nMo: Mo\nMar: Mär\nJun: Jun\nJul: Jul\nJan: Jan\nFr: Fr\nFeb: Feb\nDec: Dez\nAug: Aug\nApr: Apr\n'No language.': 'Keine Sprache. '\n'Delete language $1': 'Sprache $1 löschen'\n'You do not have the right to add languages.': 'Keine Berechtigung Sprachen hinzuzufügen.'\n'Please enter the translation for time units.': 'Bitte Übersetzung für Zeiteinheiten eingeben.'\n'You do not have the right to delete languages.': 'Keine Berechtigung Sprachen zu löschen.'\n'Are you sure you want to delete the language $1?': 'Sprache $1 wirklich löschen?'\n'Deleting language': 'Sprache wird gelöscht.'\n'The language $1 could not be deleted.': 'Sprache $1 konnte nicht gelöscht werden.'\n'Edit language': 'Sprache bearbeiten'\n'You do not have the right to edit languages.': 'Keine Berechtigung Sprachen zu bearbeiten.'\n'Please enter the translation for month names.': 'Bitte die Übersetzung für Monatsnamen eingeben.'\n'Please enter the translation for week day names.': 'Bitte die Übersetzung für Wochentage eingeben.'\nJanuary: Januar\nFebruary: Februar\nMarch: März\nApril: April\nMay: Mai\nJune: Juni\nJuly: Juli\nAugust: August\nSeptember: September\nOctober: Oktober\nNovember: November\nDecember: Dezember\nMonday: Montag\nTuesday: Dienstag\nWednesday: Mittwoch\nThursday: Donnertsag\nFriday: Freitag\nSaturday: Samstag\nSunday: Sonntag\n'You do not have the right to add new languages.': 'Keine Berechtigung neue Sprachen hinzuzufügen.'\n'There are $1 issue(s) left.': 'Es sind $1 Ausgaben übrig.'\n'Native name': 'Name Im Original'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.el.yml",
    "content": "'Language id not specified': 'Η ταυτότητα γλώσσας δεν διευκρινήστηκε'\n'No languages.': 'Δεν υπάρχουν γλώσσες.'\n'Native Name': 'Εγγενές Όνομα'\n'Name taken.': 'Μη διαθέσιμο όνομα.'\n'Language saved.': 'Η γλωσσα αποθηκεύτηκε.'\n'Language removed.': 'Η γλώσσα αφαιρέθηκε.'\n'Language not found.': 'Η γλώσσα δεν βρέθηκε.'\n'Language is in use and cannot be removed.': 'Η γλώσσα χρησιμοποιείται και δεν μπορεί να διαγραφεί.'\n'Language added.': 'Η γλώσσα προστέθηκε.'\n'English language cannot be removed.': 'Η αγγλική γλώσσα δεν είναι δυνατόν να αφαιρεθεί.'\n'Edit short month names': 'Επεξεργασία συντομογραφίας μηνών'\n'Edit short day names': 'Επεξεργασία συντομογραφίας ημερών'\n'Edit month names': 'Επεξεργασία ονομάτων μηνών'\n'Edit language: $1': 'Επεξεργασία γλώσσας: $1'\n'Edit day names': 'Επεξεργασία ονομάτων ημερών'\n'Code Page': 'Κωδικός Σελίδας'\n'Add new Language': 'Προσθήκη νέας Γλώσσας'\n'Add Language': 'Προσθήκη Γλώσσας'\nWe: Τε\nTu: Τρ\nTh: Πέ\nSu: Κυ\nSep: Σεπτ\nSa: Σά\n'Please enter the translation for week day short names.': 'Παρακαλούμε εισάγετε την μετάφραση της συντομογραφίας των ημερών της εβδομάδας.'\n'Please enter the translation for month short names.': 'Παρακαλούμε εισάγετε την μετάφραση της συντομογραφίας των μηνών.'\nOct: Οκτ\nNov: Νοέμ\nMo: Δε\nMar: Μάρ\nJun: Ιούν\nJul: Ιούλ\nJan: Ιάν\nFr: Πα\nFeb: Φεβ\nDec: Δεκ\nAug: Αύγ\nApr: Απρ\n'No language.': 'Καμία γλώσσα.'\n'Delete language $1': 'Διαγραφή γλώσσας $1'\n'You do not have the right to add languages.': 'Δεν έχετε το δικαίωμα να προσθέσετε γλώσσες.'\n'Please enter the translation for time units.': 'Παρακαλούμε εισάγετε την μετάφραση των μονάδων χρόνου.'\n'You do not have the right to delete languages.': 'Δεν έχετε το δικαίωμα να διαγράψετε γλώσσες.'\n'Are you sure you want to delete the language $1?': 'Είστε σίγουρος/η ότι θέλετε να διαγράψετε τη γλώσσα $1;'\n'Deleting language': 'Διαγραφή γλώσσας'\n'The language $1 could not be deleted.': 'Η γλώσσα $1 δεν μπόρεσε να διαγραφεί.'\n'Edit language': 'Επεξεργασία γλώσσας'\n'You do not have the right to edit languages.': 'Δεν έχετε το δικαίωμα να επεξεργαστείτε γλώσσες.'\n'Please enter the translation for month names.': 'Παρακαλούμε εισάγετε την μετάφραση για τα ονόματα μηνών.'\n'Please enter the translation for week day names.': 'Παρακαλούμε εισάγετε την μετάφραση για τα ονόματα των ημερών της εβδομάδας.'\nJanuary: Ιανουάριος\nFebruary: Φεβρουάριος\nMarch: Μάρτιος\nApril: Απρίλιος\nMay: Μάιος\nJune: Ιούνιος\nJuly: Ιούλιος\nAugust: Αύγουστος\nSeptember: Σεπτέμβριος\nOctober: Οκτώβριος\nNovember: Νοέμβριος\nDecember: Δεκέμβριος\nMonday: Δευτέρα\nTuesday: Τρίτη\nWednesday: Τετάρτη\nThursday: Πέμπτη\nFriday: Παρασκευή\nSaturday: Σάββατο\nSunday: Κυριακή\n'You do not have the right to add new languages.': 'Δεν έχετε το δικαίωμα να προσθέσετε νέες γλώσσες.'\n'There are $1 issue(s) left.': 'Απομένουν τεύχη $1.'\n'Native name': 'Γηγενές όνομα'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.en.yml",
    "content": "'Language id not specified': 'Language id not specified'\n'No languages.': 'No languages.'\n'Native Name': 'Native Name'\n'Name taken.': 'Name taken.'\n'Language saved.': 'Language saved.'\n'Language removed.': 'Language removed.'\n'Language not found.': 'Language not found.'\n'Language is in use and cannot be removed.': 'Language is in use and cannot be removed.'\n'Language added.': 'Language added.'\n'English language cannot be removed.': 'English language cannot be removed.'\n'Edit short month names': 'Edit short month names'\n'Edit short day names': 'Edit short day names'\n'Edit month names': 'Edit month names'\n'Edit language: $1': 'Edit language: $1'\n'Edit day names': 'Edit day names'\n'Code Page': 'Code Page'\n'Add new Language': 'Add new Language'\n'Add Language': 'Add Language'\nWe: We\nTu: Tu\nTh: Th\nSu: Su\nSep: Sep\nSa: Sa\n'Please enter the translation for week day short names.': 'Please enter the translation for week day short names.'\n'Please enter the translation for month short names.': 'Please enter the translation for month short names.'\nOct: Oct\nNov: Nov\nMo: Mo\nMar: Mar\nJun: Jun\nJul: Jul\nJan: Jan\nFr: Fr\nFeb: Feb\nDec: Dec\nAug: Aug\nApr: Apr\n'No language.': 'No language.'\n'Delete language $1': 'Delete language $1'\n'You do not have the right to add languages.': 'You do not have the right to add languages.'\n'Please enter the translation for time units.': 'Please enter the translation for time units.'\n'You do not have the right to delete languages.': 'You do not have the right to delete languages.'\n'Are you sure you want to delete the language $1?': 'Are you sure you want to delete the language $1?'\n'Deleting language': 'Deleting language'\n'The language $1 could not be deleted.': 'The language $1 could not be deleted.'\n'Edit language': 'Edit language'\n'You do not have the right to edit languages.': 'You do not have the right to edit languages.'\n'Please enter the translation for month names.': 'Please enter the translation for month names.'\n'Please enter the translation for week day names.': 'Please enter the translation for week day names.'\nJanuary: January\nFebruary: February\nMarch: March\nApril: April\nMay: May\nJune: June\nJuly: July\nAugust: August\nSeptember: September\nOctober: October\nNovember: November\nDecember: December\nMonday: Monday\nTuesday: Tuesday\nWednesday: Wednesday\nThursday: Thursday\nFriday: Friday\nSaturday: Saturday\nSunday: Sunday\n'You do not have the right to add new languages.': 'You do not have the right to add new languages.'\n'There are $1 issue(s) left.': 'There are $1 issue(s) left.'\n'Native name': 'Native name'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.en_GB.yml",
    "content": "'Language id not specified': 'Language id not specified'\n'No languages.': 'No languages.'\n'Native Name': 'Native Name'\n'Name taken.': 'Name taken.'\n'Language saved.': 'Language saved.'\n'Language removed.': 'Language removed.'\n'Language not found.': 'Language not found.'\n'Language is in use and cannot be removed.': 'Language is in use and cannot be removed.'\n'Language added.': 'Language added.'\n'English language cannot be removed.': 'English language cannot be removed.'\n'Edit short month names': 'Edit short month names'\n'Edit short day names': 'Edit short day names'\n'Edit month names': 'Edit month names'\n'Edit language: $1': 'Edit language: $1'\n'Edit day names': 'Edit day names'\n'Code Page': 'Code Page'\n'Add new Language': 'Add new Language'\n'Add Language': 'Add Language'\nWe: We\nTu: Tu\nTh: Th\nSu: Su\nSep: Sep\nSa: Sa\n'Please enter the translation for week day short names.': 'Please enter the translation for week day short names.'\n'Please enter the translation for month short names.': 'Please enter the translation for month short names.'\nOct: Oct\nNov: Nov\nMo: Mo\nMar: Mar\nJun: Jun\nJul: Jul\nJan: Jan\nFr: Fr\nFeb: Feb\nDec: Dec\nAug: Aug\nApr: Apr\n'No language.': 'No language.'\n'Delete language $1': 'Delete language $1'\n'You do not have the right to add languages.': 'You do not have the right to add languages.'\n'Please enter the translation for time units.': 'Please enter the translation for time units.'\n'You do not have the right to delete languages.': 'You do not have the right to delete languages.'\n'Are you sure you want to delete the language $1?': 'Are you sure you want to delete the language $1?'\n'Deleting language': 'Deleting language'\n'The language $1 could not be deleted.': 'The language $1 could not be deleted.'\n'Edit language': 'Edit language'\n'You do not have the right to edit languages.': 'You do not have the right to edit languages.'\n'Please enter the translation for month names.': 'Please enter the translation for month names.'\n'Please enter the translation for week day names.': 'Please enter the translation for week day names.'\nJanuary: January\nFebruary: February\nMarch: March\nApril: April\nMay: May\nJune: June\nJuly: July\nAugust: August\nSeptember: September\nOctober: October\nNovember: November\nDecember: December\nMonday: Monday\nTuesday: Tuesday\nWednesday: Wednesday\nThursday: Thursday\nFriday: Friday\nSaturday: Saturday\nSunday: Sunday\n'You do not have the right to add new languages.': 'You do not have the right to add new languages.'\n'There are $1 issue(s) left.': 'There are $1 issue(s) left.'\n'Native name': 'Native name'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.es.yml",
    "content": "'Language id not specified': 'No se especificó el ID del idioma'\n'No languages.': 'Sin idiomas'\n'Native Name': 'Nombre original'\n'Name taken.': 'Nombre ocupado'\n'Language saved.': 'Idioma guardado'\n'Language removed.': 'Idioma eliminado'\n'Language not found.': 'Idioma no encontrado'\n'Language is in use and cannot be removed.': 'El idioma está en uso y no puede ser eliminado.'\n'Language added.': 'Idioma agregado'\n'English language cannot be removed.': 'El idioma inglés no puede eliminarse'\n'Edit short month names': 'Editar nombres cortos de mes'\n'Edit short day names': 'Editar nombres cortos de día'\n'Edit month names': 'Editar nombres de mes'\n'Edit language: $1': 'Editar idioma $1'\n'Edit day names': 'Editar nombres de día'\n'Code Page': 'Página de códigos'\n'Add new Language': 'Agregar nuevo idioma'\n'Add Language': 'Agregar idioma'\nWe: mie\nTu: mar\nTh: jue\nSu: dom\nSep: sept\nSa: sab\n'Please enter the translation for week day short names.': 'Ingrese una traducción abreviada para los días de la semana.'\n'Please enter the translation for month short names.': 'Ingrese una traducción abreviada para los meses del año.'\nOct: oct\nNov: nov\nMo: lun\nMar: mar\nJun: jun\nJul: jul\nJan: en\nFr: vie\nFeb: feb\nDec: dic\nAug: ag\nApr: abr\n'No language.': 'Sin idioma'\n'Delete language $1': 'Borrar idioma $1'\n'You do not have the right to add languages.': 'No tiene derecho a agregar idiomas'\n'Please enter the translation for time units.': 'Favor entre la traducción por unidad de tiempo'\n'You do not have the right to delete languages.': 'No tiene derecho a borrar idiomas'\n'Are you sure you want to delete the language $1?': '¿Está seguro de que desea borrar el idioma $1?'\n'Deleting language': 'Borrando idioma'\n'The language $1 could not be deleted.': 'El idioma $1 no pudo ser borrado'\n'Edit language': 'Editar idioma'\n'You do not have the right to edit languages.': 'No tiene derecho a editar idiomas'\n'Please enter the translation for month names.': 'Favor entre la traducción para los nombres de meses'\n'Please enter the translation for week day names.': 'Favor entre la traducción para los nombres de semanas'\nJanuary: Enero\nFebruary: Febrero\nMarch: Marzo\nApril: Abril\nMay: Mayo\nJune: Junio\nJuly: Julio\nAugust: Agosto\nSeptember: Septiembre\nOctober: Octubre\nNovember: Noviembre\nDecember: Diciembre\nMonday: Lunes\nTuesday: Martes\nWednesday: Miércoles\nThursday: Jueves\nFriday: Viernes\nSaturday: Sábado\nSunday: Domingo\n'You do not have the right to add new languages.': 'No puede añadir un nuevo idioma.'\n'There are $1 issue(s) left.': 'Queda(n) $1 ejemplar(es).'\n'Native name': 'Nombre local'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.es_AR.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': null\n'Delete language $1': null\n'You do not have the right to add languages.': null\n'Please enter the translation for time units.': null\n'You do not have the right to delete languages.': null\n'Are you sure you want to delete the language $1?': null\n'Deleting language': null\n'The language $1 could not be deleted.': null\n'Edit language': null\n'You do not have the right to edit languages.': null\n'Please enter the translation for month names.': null\n'Please enter the translation for week day names.': null\nJanuary: null\nFebruary: null\nMarch: null\nApril: null\nMay: null\nJune: null\nJuly: null\nAugust: null\nSeptember: null\nOctober: null\nNovember: null\nDecember: null\nMonday: null\nTuesday: null\nWednesday: null\nThursday: null\nFriday: null\nSaturday: null\nSunday: null\n'You do not have the right to add new languages.': null\n'There are $1 issue(s) left.': null\n'Native name': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.fa.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': null\n'Delete language $1': null\n'You do not have the right to add languages.': null\n'Please enter the translation for time units.': null\n'You do not have the right to delete languages.': null\n'Are you sure you want to delete the language $1?': null\n'Deleting language': null\n'The language $1 could not be deleted.': null\n'Edit language': null\n'You do not have the right to edit languages.': null\n'Please enter the translation for month names.': null\n'Please enter the translation for week day names.': null\nJanuary: null\nFebruary: null\nMarch: null\nApril: null\nMay: null\nJune: null\nJuly: null\nAugust: null\nSeptember: null\nOctober: null\nNovember: null\nDecember: null\nMonday: null\nTuesday: null\nWednesday: null\nThursday: null\nFriday: null\nSaturday: null\nSunday: null\n'You do not have the right to add new languages.': null\n'There are $1 issue(s) left.': null\n'Native name': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.fa_AF.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': null\n'Delete language $1': null\n'You do not have the right to add languages.': null\n'Please enter the translation for time units.': null\n'You do not have the right to delete languages.': null\n'Are you sure you want to delete the language $1?': null\n'Deleting language': null\n'The language $1 could not be deleted.': null\n'Edit language': null\n'You do not have the right to edit languages.': null\n'Please enter the translation for month names.': null\n'Please enter the translation for week day names.': null\nJanuary: null\nFebruary: null\nMarch: null\nApril: null\nMay: null\nJune: null\nJuly: null\nAugust: null\nSeptember: null\nOctober: null\nNovember: null\nDecember: null\nMonday: null\nTuesday: null\nWednesday: null\nThursday: null\nFriday: null\nSaturday: null\nSunday: null\n'You do not have the right to add new languages.': null\n'There are $1 issue(s) left.': null\n'Native name': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.fr.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': 'Aucune langue.'\n'Delete language $1': 'Supprimer langue $1'\n'You do not have the right to add languages.': 'Vous navez pas le droit dajouter des langues'\n'Please enter the translation for time units.': 'SVP entrer la traduction pour les unités de temps.'\n'You do not have the right to delete languages.': 'Vous navez pas le droit de supprimer des langues. '\n'Are you sure you want to delete the language $1?': 'Etes-vous sûrs que vous voulez supprimer la langue $1 ? '\n'Deleting language': 'Suppression langue'\n'The language $1 could not be deleted.': 'La langue $1 ne pouvait pas être supprimé.'\n'Edit language': 'Editer langue'\n'You do not have the right to edit languages.': 'Vous navez pas le droit déditer des langues. '\n'Please enter the translation for month names.': 'SVP entrer la traduction pour les mois.'\n'Please enter the translation for week day names.': 'SVP entrer la traduction pour les jours de la semaine.'\nJanuary: Janvier\nFebruary: Fevrier\nMarch: Mars\nApril: Avril\nMay: Mai\nJune: Juin\nJuly: Juillet\nAugust: Août\nSeptember: Septembre\nOctober: Octobre\nNovember: Novembre\nDecember: Décembre\nMonday: Lundi\nTuesday: Mardi\nWednesday: Mercredi\nThursday: Jeudi\nFriday: Vendredi\nSaturday: Samedi\nSunday: Dimanche\n'You do not have the right to add new languages.': 'Vous navez pas le droit dajouter de nouvelles langues.'\n'There are $1 issue(s) left.': 'Il manque $1 édition(s).'\n'Native name': 'Nom dorigine'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.he.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': null\n'Delete language $1': null\n'You do not have the right to add languages.': null\n'Please enter the translation for time units.': null\n'You do not have the right to delete languages.': null\n'Are you sure you want to delete the language $1?': null\n'Deleting language': null\n'The language $1 could not be deleted.': null\n'Edit language': null\n'You do not have the right to edit languages.': null\n'Please enter the translation for month names.': null\n'Please enter the translation for week day names.': null\nJanuary: null\nFebruary: null\nMarch: null\nApril: null\nMay: null\nJune: null\nJuly: null\nAugust: null\nSeptember: null\nOctober: null\nNovember: null\nDecember: null\nMonday: null\nTuesday: null\nWednesday: null\nThursday: null\nFriday: null\nSaturday: null\nSunday: null\n'You do not have the right to add new languages.': null\n'There are $1 issue(s) left.': null\n'Native name': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.hr.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': 'Nema tog jezika'\n'Delete language $1': 'Izbriši jezik $1'\n'You do not have the right to add languages.': 'Nemate ovlasti dodavati jezike.'\n'Please enter the translation for time units.': 'Molim unesite prijevod za jedinice vremena.'\n'You do not have the right to delete languages.': 'Nemate ovlasti brisati jezike.'\n'Are you sure you want to delete the language $1?': 'Jeste li sigurni da želite obrisati $1 jezik?'\n'Deleting language': 'Brisanje jezika'\n'The language $1 could not be deleted.': '$1 jezik se ne može obrisati.'\n'Edit language': 'Uredi jezik.'\n'You do not have the right to edit languages.': 'Nemate ovlasti uređivati jezike.'\n'Please enter the translation for month names.': 'Molim prevedite imena mjeseci u godini.'\n'Please enter the translation for week day names.': 'Molim prevedite imena dana u tjednu.'\nJanuary: Siječanj\nFebruary: Veljača\nMarch: Ožujak\nApril: Travanj\nMay: Svibanj\nJune: Lipanj\nJuly: Srpanj\nAugust: Kolovoz\nSeptember: Rujan\nOctober: Listopad\nNovember: Studeni\nDecember: Prosinac\nMonday: Ponedjeljak\nTuesday: Utorak\nWednesday: Srijeda\nThursday: Četvrtak\nFriday: Petak\nSaturday: Subota\nSunday: Nedjelja\n'You do not have the right to add new languages.': 'Nemate prava dodavati nove jezike.'\n'There are $1 issue(s) left.': 'Ostalo je $1 izdanja.'\n'Native name': 'Izvorno ime'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.hu.yml",
    "content": "'Language id not specified': 'A nyelvazonosító nincs megadva'\n'No languages.': 'Nincsenek nyelvek.'\n'Native Name': 'Eredeti név'\n'Name taken.': 'A név foglalt.'\n'Language saved.': 'A nyelv mentése megtörtént.'\n'Language removed.': 'A nyelv eltávolítása megtörtént.'\n'Language not found.': 'A nyelv nem található.'\n'Language is in use and cannot be removed.': 'A nyelv használatban van, és nem lehet eltávolítani.'\n'Language added.': 'A nyelv hozzáadása megtörtént.'\n'English language cannot be removed.': 'Az angol nyelvet nem lehet eltávolítani.'\n'Edit short month names': 'Rövid hónapnevek szerkesztése'\n'Edit short day names': 'Rövid napnevek szerkesztése'\n'Edit month names': 'Hónapnevek szerkesztése'\n'Edit language: $1': 'Nyelv szerkesztése: $1'\n'Edit day names': 'Napnevek szerkesztése'\n'Code Page': Kódlap\n'Add new Language': 'Új nyelv hozzáadása'\n'Add Language': 'Nyelv hozzáadása'\nWe: Sze\nTu: K\nTh: Cs\nSu: V\nSep: Szept.\nSa: Szo\n'Please enter the translation for week day short names.': 'Add meg a hét rövid napneveinek fordításait.'\n'Please enter the translation for month short names.': 'Add meg a rövid hónapnevek fordításait.'\nOct: Okt.\nNov: Nov.\nMo: H\nMar: Márc.\nJun: Jún.\nJul: Júl.\nJan: Jan.\nFr: P\nFeb: Febr.\nDec: Dec.\nAug: Aug.\nApr: Ápr.\n'No language.': 'Nincs nyelv.'\n'Delete language $1': 'A/z $1 nyelv törlése'\n'You do not have the right to add languages.': 'Nincs jogod a nyelvek hozzáadásához.'\n'Please enter the translation for time units.': 'Add meg az időegységek fordítását.'\n'You do not have the right to delete languages.': 'Nincs jogod a nyelvek törléséhez.'\n'Are you sure you want to delete the language $1?': 'Biztosan törölni akarod a/z $1 nyelvet?'\n'Deleting language': 'Nyelv törlése'\n'The language $1 could not be deleted.': 'Nem lehet törölni a/z $1 nyelvet.'\n'Edit language': 'Nyelv szerkesztése'\n'You do not have the right to edit languages.': 'Nincs jogod a nyelvek szerkesztéséhez.'\n'Please enter the translation for month names.': 'Add meg a hónapnevek fordítását.'\n'Please enter the translation for week day names.': 'Add meg a hét napneveinek fordítását.'\nJanuary: Január\nFebruary: Február\nMarch: Március\nApril: Április\nMay: Május\nJune: Június\nJuly: Július\nAugust: Augusztus\nSeptember: Szeptember\nOctober: Október\nNovember: November\nDecember: December\nMonday: Hétfő\nTuesday: Kedd\nWednesday: Szerda\nThursday: Csütörtök\nFriday: Péntek\nSaturday: Szombat\nSunday: Vasárnap\n'You do not have the right to add new languages.': 'Nincs jogod új nyelvek hozzáadásához.'\n'There are $1 issue(s) left.': '$1 szám maradt.'\n'Native name': 'Eredeti név'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.hy.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': null\n'Delete language $1': null\n'You do not have the right to add languages.': null\n'Please enter the translation for time units.': null\n'You do not have the right to delete languages.': null\n'Are you sure you want to delete the language $1?': null\n'Deleting language': null\n'The language $1 could not be deleted.': null\n'Edit language': null\n'You do not have the right to edit languages.': null\n'Please enter the translation for month names.': null\n'Please enter the translation for week day names.': null\nJanuary: null\nFebruary: null\nMarch: null\nApril: null\nMay: null\nJune: null\nJuly: null\nAugust: null\nSeptember: null\nOctober: null\nNovember: null\nDecember: null\nMonday: null\nTuesday: null\nWednesday: null\nThursday: null\nFriday: null\nSaturday: null\nSunday: null\n'You do not have the right to add new languages.': null\n'There are $1 issue(s) left.': null\n'Native name': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.hy_AM.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': 'Խմբագրել շաբաթվա օրերը'\n'Code Page': null\n'Add new Language': 'Ավելացնել նոր լեզու'\n'Add Language': 'Ավելացնել լեզու'\nWe: Չոր\nTu: Երք\nTh: Հնգ\nSu: Կիր\nSep: null\nSa: Շաբ\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: Հոկ\nNov: Նոյ\nMo: Երկ\nMar: Մար\nJun: Հուն\nJul: Հուլ\nJan: Հնվ\nFr: Ուրբ\nFeb: Փետ\nDec: Դեկ\nAug: Օգս\nApr: Ապր\n'No language.': null\n'Delete language $1': null\n'You do not have the right to add languages.': null\n'Please enter the translation for time units.': null\n'You do not have the right to delete languages.': null\n'Are you sure you want to delete the language $1?': null\n'Deleting language': null\n'The language $1 could not be deleted.': null\n'Edit language': null\n'You do not have the right to edit languages.': null\n'Please enter the translation for month names.': null\n'Please enter the translation for week day names.': null\nJanuary: հունվար\nFebruary: փետրվար\nMarch: մարտ\nApril: ապրիլ\nMay: մայիս\nJune: հունիս\nJuly: հուլիս\nAugust: օգոստոս\nSeptember: սեպտեմբեր\nOctober: հոկտեմբեր\nNovember: նոյեմբեր\nDecember: դեկտեմբեր\nMonday: երկուշաբթի\nTuesday: երեքշաբթի\nWednesday: չորեքշաբթի\nThursday: հինգշաբթի\nFriday: ուրբաթ\nSaturday: շաբաթ\nSunday: կիրակի\n'You do not have the right to add new languages.': null\n'There are $1 issue(s) left.': null\n'Native name': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.id.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': null\n'Delete language $1': null\n'You do not have the right to add languages.': null\n'Please enter the translation for time units.': null\n'You do not have the right to delete languages.': null\n'Are you sure you want to delete the language $1?': null\n'Deleting language': null\n'The language $1 could not be deleted.': null\n'Edit language': null\n'You do not have the right to edit languages.': null\n'Please enter the translation for month names.': null\n'Please enter the translation for week day names.': null\nJanuary: null\nFebruary: null\nMarch: null\nApril: null\nMay: null\nJune: null\nJuly: null\nAugust: null\nSeptember: null\nOctober: null\nNovember: null\nDecember: null\nMonday: null\nTuesday: null\nWednesday: null\nThursday: null\nFriday: null\nSaturday: null\nSunday: null\n'You do not have the right to add new languages.': null\n'There are $1 issue(s) left.': null\n'Native name': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.it.yml",
    "content": "'Language id not specified': null\n'No languages.': 'Nessun lingua.'\n'Native Name': 'Nome nativo'\n'Name taken.': 'Nome gia usato.'\n'Language saved.': 'Lingua salvata.'\n'Language removed.': 'Lingua rimossa.'\n'Language not found.': 'Lingua non trovata.'\n'Language is in use and cannot be removed.': 'La lingua e in uso e non puo essere rimossa.'\n'Language added.': 'Lingua aggiunta.'\n'English language cannot be removed.': 'Linglese non puo essere rimosso.'\n'Edit short month names': 'Modifica i nomi corti dei mesi'\n'Edit short day names': 'Modifica i nomi corti dei giorni'\n'Edit month names': 'Modifica i nomi dei mesi'\n'Edit language: $1': 'Modifica lingua: $1'\n'Edit day names': 'Modifica i nomi dei giorni'\n'Code Page': 'Codice pagina'\n'Add new Language': 'Aggiungi lingua'\n'Add Language': 'Aggiungi lingua'\nWe: Mer\nTu: Mar\nTh: Gio\nSu: Dom\nSep: Set\nSa: Sab\n'Please enter the translation for week day short names.': 'Inserisci la traduzione per i nomi corti di settimana.'\n'Please enter the translation for month short names.': 'Per favore inserisci i nomi corti di mese.'\nOct: Ott\nNov: Nov\nMo: Lun\nMar: Mar\nJun: Giu\nJul: Lug\nJan: Gen\nFr: Ven\nFeb: Feb\nDec: Dic\nAug: Ago\nApr: Apr\n'No language.': 'Nessuna lingua.'\n'Delete language $1': 'Elimina lingua $1'\n'You do not have the right to add languages.': 'Non si possiedono i diritti per aggiungere lingue.'\n'Please enter the translation for time units.': 'Aggiungi la traduzione per le unita di tempo.'\n'You do not have the right to delete languages.': 'Non si possiedono i diritti per eliminare lingue.'\n'Are you sure you want to delete the language $1?': 'confermi di eliminare la lingua $1?'\n'Deleting language': 'Eliminazione lingua'\n'The language $1 could not be deleted.': 'La lingua $1 non puo essere eliminata.'\n'Edit language': 'Modifica lingua'\n'You do not have the right to edit languages.': 'Non si possiedono i diritti per modificare lingue.'\n'Please enter the translation for month names.': 'Inserisci le traduzioni per i nomi del mese'\n'Please enter the translation for week day names.': 'Inserisci le traduzioni per i nomi della settimana.'\nJanuary: Gennaio\nFebruary: Febbraio\nMarch: Marzo\nApril: Aprile\nMay: Maggio\nJune: Giugno\nJuly: Luglio\nAugust: Agosto\nSeptember: Settembre\nOctober: Ottobre\nNovember: Novembre\nDecember: Dicembre\nMonday: Lunedi\nTuesday: Martedi\nWednesday: Mercoledi\nThursday: Giovedi\nFriday: Venerdi\nSaturday: Sabato\nSunday: Domenica\n'You do not have the right to add new languages.': 'Non si possiedono i diritti per aggiungere lingue.'\n'There are $1 issue(s) left.': 'Ci sono $1 problemi rimasti.'\n'Native name': 'Nome nativo'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.ka.yml",
    "content": "'Language id not specified': 'ენის საიდენტიფიკაციო ნომერი არ არის მითითებული'\n'No languages.': 'ენები არ არის.'\n'Native Name': 'მშობლიური ენა'\n'Name taken.': 'სახელი გამოყენებულია.'\n'Language saved.': 'ენა დამახსოვრებულია.'\n'Language removed.': 'ენა მოიხსნა.'\n'Language not found.': 'ენა ვერ მოიძებნა.'\n'Language is in use and cannot be removed.': 'ენა ამჟამად გამოყენებაშია და მისი მოხსნა შეუძლებელია.'\n'Language added.': 'ენა დაემატა.'\n'English language cannot be removed.': 'ინგლისური ენის მოხსნა შეუძლებელია.'\n'Edit short month names': 'თვეების მოკლე სახელების რედაქტირება.'\n'Edit short day names': 'დღეების მოკლე სახელების რედაქტირება.'\n'Edit month names': 'თვეების სახელების რედაქტირება.'\n'Edit language: $1': '$1 ენის რედაქტირება'\n'Edit day names': 'დღეების სახელების რედაქტირება'\n'Code Page': 'კოდის გვერდი'\n'Add new Language': 'ახალი ენის დამატება'\n'Add Language': 'ენის დამატება'\nWe: ოთხ\nTu: სამ\nTh: ხუთ\nSu: კვი\nSep: სექ\nSa: შაბ\n'Please enter the translation for week day short names.': 'მიუთითეთ კვირის დღეების მოკლე სახელების თარგმანი.'\n'Please enter the translation for month short names.': 'მიუთითეთ თვეების სახელების მოკლე თარგმანი.'\nOct: ოქტ\nNov: ნოე\nMo: ორშ\nMar: მარ\nJun: ივნ\nJul: ივლ\nJan: იან\nFr: პარ\nFeb: თებ\nDec: დეკ\nAug: აგვ\nApr: აპრ\n'No language.': 'ენა არ არის.'\n'Delete language $1': '$1 ენის წაშლა'\n'You do not have the right to add languages.': 'თქვენ არ გაქვთ ენების დამატების უფლება.'\n'Please enter the translation for time units.': 'მიუთითეთ დროის ერთეულების თარგმანი.'\n'You do not have the right to delete languages.': 'თქვენ არ გაქვთ ენების წაშლის უფლება.'\n'Are you sure you want to delete the language $1?': 'დარწმუნებული ხართ რომ გსურთ $1 ენის წაშლა'\n'Deleting language': 'ენის წაშლა'\n'The language $1 could not be deleted.': '$1 ენა ვერ წაიშალა.'\n'Edit language': 'ენის რედაქტირება'\n'You do not have the right to edit languages.': 'თქვენ არ გაქვთ ენების რედაქტირების უფლება.'\n'Please enter the translation for month names.': 'მიუთითეთ თვეების სახელების თარგმანი.'\n'Please enter the translation for week day names.': 'მიუთითეთ კვირის დღეების სახელების თარგმანი'\nJanuary: იანვარი\nFebruary: თებერვალი\nMarch: მარტი\nApril: აპრილი\nMay: მაისი\nJune: ივნისი\nJuly: ივლისი\nAugust: აგვისტო\nSeptember: სექტემბერი\nOctober: ოქტომბერი\nNovember: ნოემბერი\nDecember: დეკემბერი\nMonday: ორშაბათი\nTuesday: სამშაბათი\nWednesday: ოთხშაბათი\nThursday: ხუთშაბათი\nFriday: პარასკევი\nSaturday: შაბათი\nSunday: კვირა\n'You do not have the right to add new languages.': 'თქვენ არ გაქვთ ახალი ენის დამატების უფლება'\n'There are $1 issue(s) left.': 'დარჩა $1 ნომერი/ჟურნალი/გამოშვება'\n'Native name': 'მშობლიური ენა'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.ko.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': '언어 없슴.'\n'Delete language $1': '언어 $1 삭제중'\n'You do not have the right to add languages.': '언어를 추가할 권한이 없습니다.'\n'Please enter the translation for time units.': '시간 단위의 번역을 입력하시오.'\n'You do not have the right to delete languages.': '언어를 삭제할 권한이 없습니다. '\n'Are you sure you want to delete the language $1?': '언어 $1을 확실히 삭제합니까?'\n'Deleting language': '언어 삭제중'\n'The language $1 could not be deleted.': '언어 $1 을 삭제할 수없습니다.'\n'Edit language': '언어 수정'\n'You do not have the right to edit languages.': '언어를 수정할 권한이 없습니다.'\n'Please enter the translation for month names.': '월 이름에 대한 번역을 입력하시오'\n'Please enter the translation for week day names.': '주 이름에 대한 번역을 입력하시오.'\nJanuary: 1월\nFebruary: 2월\nMarch: 3월\nApril: 4월\nMay: 5월\nJune: 6월\nJuly: 7월\nAugust: 8월\nSeptember: 9월\nOctober: 10월\nNovember: 11월\nDecember: 12월\nMonday: 월요일\nTuesday: 화요일\nWednesday: 수요일\nThursday: 목요일\nFriday: 금요일\nSaturday: 토요일\nSunday: 일요일\n'You do not have the right to add new languages.': '새로운 언어를 추가할 권한이 없습니다.'\n'There are $1 issue(s) left.': '$ 1 이슈가 남아 있슴.'\n'Native name': '모국 언어'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.ku.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': null\n'Delete language $1': null\n'You do not have the right to add languages.': null\n'Please enter the translation for time units.': null\n'You do not have the right to delete languages.': null\n'Are you sure you want to delete the language $1?': null\n'Deleting language': null\n'The language $1 could not be deleted.': null\n'Edit language': null\n'You do not have the right to edit languages.': null\n'Please enter the translation for month names.': null\n'Please enter the translation for week day names.': null\nJanuary: null\nFebruary: null\nMarch: null\nApril: null\nMay: null\nJune: null\nJuly: null\nAugust: null\nSeptember: null\nOctober: null\nNovember: null\nDecember: null\nMonday: null\nTuesday: null\nWednesday: null\nThursday: null\nFriday: null\nSaturday: null\nSunday: null\n'You do not have the right to add new languages.': null\n'There are $1 issue(s) left.': null\n'Native name': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.lv.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': null\n'Delete language $1': null\n'You do not have the right to add languages.': null\n'Please enter the translation for time units.': null\n'You do not have the right to delete languages.': null\n'Are you sure you want to delete the language $1?': null\n'Deleting language': null\n'The language $1 could not be deleted.': null\n'Edit language': null\n'You do not have the right to edit languages.': null\n'Please enter the translation for month names.': null\n'Please enter the translation for week day names.': null\nJanuary: null\nFebruary: null\nMarch: null\nApril: null\nMay: null\nJune: null\nJuly: null\nAugust: null\nSeptember: null\nOctober: null\nNovember: null\nDecember: null\nMonday: null\nTuesday: null\nWednesday: null\nThursday: null\nFriday: null\nSaturday: null\nSunday: null\n'You do not have the right to add new languages.': null\n'There are $1 issue(s) left.': null\n'Native name': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.mr.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': null\n'Delete language $1': null\n'You do not have the right to add languages.': null\n'Please enter the translation for time units.': null\n'You do not have the right to delete languages.': null\n'Are you sure you want to delete the language $1?': null\n'Deleting language': null\n'The language $1 could not be deleted.': null\n'Edit language': null\n'You do not have the right to edit languages.': null\n'Please enter the translation for month names.': null\n'Please enter the translation for week day names.': null\nJanuary: null\nFebruary: null\nMarch: null\nApril: null\nMay: null\nJune: null\nJuly: null\nAugust: null\nSeptember: null\nOctober: null\nNovember: null\nDecember: null\nMonday: null\nTuesday: null\nWednesday: null\nThursday: null\nFriday: null\nSaturday: null\nSunday: null\n'You do not have the right to add new languages.': null\n'There are $1 issue(s) left.': null\n'Native name': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.nb_NO.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': null\n'Delete language $1': null\n'You do not have the right to add languages.': null\n'Please enter the translation for time units.': null\n'You do not have the right to delete languages.': null\n'Are you sure you want to delete the language $1?': null\n'Deleting language': null\n'The language $1 could not be deleted.': null\n'Edit language': null\n'You do not have the right to edit languages.': null\n'Please enter the translation for month names.': null\n'Please enter the translation for week day names.': null\nJanuary: null\nFebruary: null\nMarch: null\nApril: null\nMay: null\nJune: null\nJuly: null\nAugust: null\nSeptember: null\nOctober: null\nNovember: null\nDecember: null\nMonday: null\nTuesday: null\nWednesday: null\nThursday: null\nFriday: null\nSaturday: null\nSunday: null\n'You do not have the right to add new languages.': null\n'There are $1 issue(s) left.': null\n'Native name': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.nl.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': 'Geen taal.'\n'Delete language $1': 'Verwijder taal $1'\n'You do not have the right to add languages.': null\n'Please enter the translation for time units.': 'Voeg de vertaling voor tijdeenheid in.'\n'You do not have the right to delete languages.': null\n'Are you sure you want to delete the language $1?': 'Weet u zeker dat u de taal $1 wilt verwijderen?'\n'Deleting language': 'Verwijderen taal'\n'The language $1 could not be deleted.': 'De taal $1 kon niet worden verwijderd.'\n'Edit language': 'Bewerk taal'\n'You do not have the right to edit languages.': null\n'Please enter the translation for month names.': 'Voeg een vertaling in voor de maand namen.'\n'Please enter the translation for week day names.': 'Voeg een vertaling in voor de week dag namen.'\nJanuary: januari\nFebruary: februari\nMarch: maart\nApril: april\nMay: mei\nJune: juni\nJuly: juli\nAugust: augustus\nSeptember: september\nOctober: october\nNovember: november\nDecember: december\nMonday: maandag\nTuesday: dinsdag\nWednesday: woensdag\nThursday: donderdag\nFriday: vrijdag\nSaturday: zaterdag\nSunday: zondag\n'You do not have the right to add new languages.': null\n'There are $1 issue(s) left.': 'Er zijn $1 uitgave(s) over.'\n'Native name': 'Naam in doeltaal'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.pa.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': null\n'Delete language $1': null\n'You do not have the right to add languages.': null\n'Please enter the translation for time units.': null\n'You do not have the right to delete languages.': null\n'Are you sure you want to delete the language $1?': null\n'Deleting language': null\n'The language $1 could not be deleted.': null\n'Edit language': null\n'You do not have the right to edit languages.': null\n'Please enter the translation for month names.': null\n'Please enter the translation for week day names.': null\nJanuary: null\nFebruary: null\nMarch: null\nApril: null\nMay: null\nJune: null\nJuly: null\nAugust: null\nSeptember: null\nOctober: null\nNovember: null\nDecember: null\nMonday: null\nTuesday: null\nWednesday: null\nThursday: null\nFriday: null\nSaturday: null\nSunday: null\n'You do not have the right to add new languages.': null\n'There are $1 issue(s) left.': null\n'Native name': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.pl.yml",
    "content": "'Language id not specified': 'Brakuje numeru języka'\n'No languages.': 'Brak języków'\n'Native Name': 'Nazwa lokalna'\n'Name taken.': 'Wybrana nazwa jest już zajęta'\n'Language saved.': 'Język został zapisany.'\n'Language removed.': 'Język został usunięty.'\n'Language not found.': 'Nie ma takiego języka.'\n'Language is in use and cannot be removed.': 'Język jest używany i nie może być usunięty.'\n'Language added.': 'Język został dodany.'\n'English language cannot be removed.': 'Język angielski nie może być usunięty.'\n'Edit short month names': 'Edytuj krótkie nazwy miesięcy'\n'Edit short day names': 'Edytuj krótkie nazwy dni'\n'Edit month names': 'Edytuj nazwy miesięcy'\n'Edit language: $1': 'Edytuj jezyk: $1'\n'Edit day names': 'Edytuj nazwy dni tygodnia'\n'Code Page': 'Strona kodowa'\n'Add new Language': 'Dodaj nowy język'\n'Add Language': 'Dodaj nowy język'\nWe: Śr\nTu: Wt\nTh: Czw\nSu: Nd\nSep: Wrz\nSa: Sob\n'Please enter the translation for week day short names.': 'Podaj tłumaczenie skrótów nazw dni tygodnia'\n'Please enter the translation for month short names.': 'Podaj tłumaczenie skrótów nazw miesięcy'\nOct: Paź\nNov: Lis\nMo: Pin\nMar: Mar\nJun: Cz\nJul: Lip\nJan: St\nFr: Pt\nFeb: Lu\nDec: Gr\nAug: Sie\nApr: Kw\n'No language.': 'Brak języka'\n'Delete language $1': 'Usuń język $1'\n'You do not have the right to add languages.': 'Brak wystarczających praw do dodawania języków'\n'Please enter the translation for time units.': 'Podaj tłumaczenie jednostek czasowych.'\n'You do not have the right to delete languages.': 'Nie masz praw aby usuwać języki.'\n'Are you sure you want to delete the language $1?': 'Czy na pewno chcesz usunąć język $1?'\n'Deleting language': 'Usuwanie języka.'\n'The language $1 could not be deleted.': 'Język $1 nie mógł być usunięty.'\n'Edit language': 'Zmień jezyk'\n'You do not have the right to edit languages.': 'Nie masz praw aby edytować języki.'\n'Please enter the translation for month names.': 'Podaj tłumaczenie nazw miesięcy.'\n'Please enter the translation for week day names.': 'Podaj tłumaczenie nazw dni tygodnia.'\nJanuary: Styczeń\nFebruary: Luty\nMarch: Marzec\nApril: Kwiecień\nMay: Maj\nJune: Czerwiec\nJuly: Lipiec\nAugust: Sierpień\nSeptember: Wrzesień\nOctober: Październik\nNovember: Listopad\nDecember: Grudzień\nMonday: Poniedziałek\nTuesday: Wtorek\nWednesday: Środa\nThursday: Czwartek\nFriday: Piątek\nSaturday: Sobota\nSunday: Niedziela\n'You do not have the right to add new languages.': 'Nie masz praw aby dodawać nowe języki'\n'There are $1 issue(s) left.': 'Pozostało wydań: $1'\n'Native name': 'Nazwisko panieńskie'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.ps.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': null\n'Delete language $1': null\n'You do not have the right to add languages.': null\n'Please enter the translation for time units.': null\n'You do not have the right to delete languages.': null\n'Are you sure you want to delete the language $1?': null\n'Deleting language': null\n'The language $1 could not be deleted.': null\n'Edit language': null\n'You do not have the right to edit languages.': null\n'Please enter the translation for month names.': null\n'Please enter the translation for week day names.': null\nJanuary: null\nFebruary: null\nMarch: null\nApril: null\nMay: null\nJune: null\nJuly: null\nAugust: null\nSeptember: null\nOctober: null\nNovember: null\nDecember: null\nMonday: null\nTuesday: null\nWednesday: null\nThursday: null\nFriday: null\nSaturday: null\nSunday: null\n'You do not have the right to add new languages.': null\n'There are $1 issue(s) left.': null\n'Native name': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.pt.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': 'Sem Idioma Definido'\n'Delete language $1': 'Eliminar Idioma'\n'You do not have the right to add languages.': 'Não tem permissões para adicionar Idiomas'\n'Please enter the translation for time units.': 'Introduza a tradução para Unidade de Tempo'\n'You do not have the right to delete languages.': 'Não tem permissões para eliminar Idiomas'\n'Are you sure you want to delete the language $1?': 'Eliminar o Idioma $1 ?'\n'Deleting language': 'Eliminando Idioma'\n'The language $1 could not be deleted.': 'O Idioma $1 não pode ser eliminado'\n'Edit language': 'Alterar Idioma'\n'You do not have the right to edit languages.': 'Não tem permissões para alterar Idiomas'\n'Please enter the translation for month names.': 'Introduza a tradução para os nomes dos meses'\n'Please enter the translation for week day names.': 'Introduza a tradução para os nomes dos dias'\nJanuary: Janeiro\nFebruary: Fevereiro\nMarch: Março\nApril: Abril\nMay: Maio\nJune: Junho\nJuly: Julho\nAugust: Agosto\nSeptember: Setembro\nOctober: Outubro\nNovember: Nobvembro\nDecember: Dezembro\nMonday: Segunda-feira\nTuesday: Terça-feira\nWednesday: Quarta-feira\nThursday: Quinta-feira\nFriday: Sexta-feira\nSaturday: Sábado\nSunday: Domingo\n'You do not have the right to add new languages.': 'Não tem permissões para adicionar idiomas.'\n'There are $1 issue(s) left.': 'Existe(m) ainda $1 Edição(ões).'\n'Native name': 'Nome Nativo'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.pt_BR.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': 'Sem Idioma Definido'\n'Delete language $1': 'Eliminar Idioma'\n'You do not have the right to add languages.': 'Não tem permissões para adicionar Idiomas'\n'Please enter the translation for time units.': 'Introduza a tradução para Unidade de Tempo'\n'You do not have the right to delete languages.': 'Não tem permissões para eliminar Idiomas'\n'Are you sure you want to delete the language $1?': 'Eliminar o Idioma $1 ?'\n'Deleting language': 'Eliminando Idioma'\n'The language $1 could not be deleted.': 'O Idioma $1 não pode ser eliminado'\n'Edit language': 'Editar língua'\n'You do not have the right to edit languages.': 'Não tem permissões para alterar Idiomas'\n'Please enter the translation for month names.': 'Introduza a tradução para os nomes dos meses'\n'Please enter the translation for week day names.': 'Introduza a tradução para os nomes dos dias'\nJanuary: Janeiro\nFebruary: Fevereiro\nMarch: Março\nApril: Abril\nMay: Maio\nJune: Junho\nJuly: Julho\nAugust: Agosto\nSeptember: Setembro\nOctober: Outubro\nNovember: Nobvembro\nDecember: Dezembro\nMonday: Segunda-feira\nTuesday: Terça-feira\nWednesday: Quarta-feira\nThursday: Quinta-feira\nFriday: Sexta-feira\nSaturday: Sábado\nSunday: Domingo\n'You do not have the right to add new languages.': 'Não tem permissões para adicionar idiomas.'\n'There are $1 issue(s) left.': 'Existe(m) ainda $1 Edição(ões).'\n'Native name': 'Nome Nativo'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.ro.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': 'Nu există limbi.'\n'Delete language $1': 'Şterge limba $1'\n'You do not have the right to add languages.': 'Nu ai dreptul să adaugi limbi.'\n'Please enter the translation for time units.': 'Introdu traducerea pentru unitatea de timp.'\n'You do not have the right to delete languages.': 'Nu ai dreptul de a şterge limbi.'\n'Are you sure you want to delete the language $1?': 'Eşti sigur că vrei să ştergi limba $1?'\n'Deleting language': 'Se şterge limba'\n'The language $1 could not be deleted.': 'Limba $1 nu poate fi ştearsă.'\n'Edit language': 'Modifică informaţia despre limbă'\n'You do not have the right to edit languages.': 'Nu ai dreptul de a modifica limbile.'\n'Please enter the translation for month names.': 'Introdu traducerile pentru denumirile lunilor anului.'\n'Please enter the translation for week day names.': 'Introdu traducerile pentru denumirile zilelor săptămânii.'\nJanuary: Ianuarie\nFebruary: Februarie\nMarch: Martie\nApril: Aprilie\nMay: Mai\nJune: Iunie\nJuly: Iulie\nAugust: August\nSeptember: Septembrie\nOctober: Octombrie\nNovember: Noiembrie\nDecember: Decembrie\nMonday: Luni\nTuesday: Marţi\nWednesday: Miercuri\nThursday: Joi\nFriday: Vineri\nSaturday: Sâmbătă\nSunday: Duminică\n'You do not have the right to add new languages.': 'Nu ai dreptul să adaugi limbi noi.'\n'There are $1 issue(s) left.': 'Mai sunt $1 ediţii.'\n'Native name': 'Nume în limba originală'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.ru.yml",
    "content": "'Language id not specified': 'ID языка не определен'\n'No languages.': 'Нет языков.'\n'Native Name': 'Местное название'\n'Name taken.': 'Приобретенное название.'\n'Language saved.': 'Язык сохранен.'\n'Language removed.': 'Язык удален.'\n'Language not found.': 'Язык не найден.'\n'Language is in use and cannot be removed.': 'Язык используется и не может быть удален.'\n'Language added.': 'Язык добавлен.'\n'English language cannot be removed.': 'Английский язык удалить невозможно.'\n'Edit short month names': 'Редактировать сокращенные названия месяцев'\n'Edit short day names': 'Редактировать сокращенные названия дней'\n'Edit month names': 'Редактировать названия месяцев'\n'Edit language: $1': 'Редактировать язык: $1'\n'Edit day names': 'Редактировать названия дней'\n'Code Page': 'Страница кода'\n'Add new Language': 'Добавить новый язык'\n'Add Language': 'Добавить язык'\nWe: Ср\nTu: Вт\nTh: Чт\nSu: Вс\nSep: Сен\nSa: Сб\n'Please enter the translation for week day short names.': 'Пожалуйста введите перевод сокращений для дней недели.'\n'Please enter the translation for month short names.': 'Пожалуйста введите перевод сокращений для месяцев.'\nOct: Окт\nNov: Ноя\nMo: Пн\nMar: Мрт\nJun: Июн\nJul: Июл\nJan: Янв\nFr: Пт\nFeb: Фев\nDec: Дек\nAug: Авг\nApr: Апр\n'No language.': 'Нет языка.'\n'Delete language $1': 'Удалить язык $1'\n'You do not have the right to add languages.': 'Вы не имеете прав доступа для добавления языков.'\n'Please enter the translation for time units.': 'Пожалуйста, введите перевод для единиц времени.'\n'You do not have the right to delete languages.': 'Вы не имеете прав доступа для удаления языков.'\n'Are you sure you want to delete the language $1?': 'Вы уверены, что хотите удалить язык $1?'\n'Deleting language': 'Удаление языка'\n'The language $1 could not be deleted.': 'Язык $1 не может быть удален.'\n'Edit language': 'Редактировать язык'\n'You do not have the right to edit languages.': 'Вы не имеете прав доступа для редактирования языка.'\n'Please enter the translation for month names.': 'Пожалуйста, введите перевод для названий месяцев.'\n'Please enter the translation for week day names.': 'Пожалуйста, введите перевод для названия дней недели.'\nJanuary: Январь\nFebruary: Февраль\nMarch: Март\nApril: Апрель\nMay: Май\nJune: Июнь\nJuly: Июль\nAugust: Август\nSeptember: Сентябрь\nOctober: Октябрь\nNovember: Ноябрь\nDecember: Декабрь\nMonday: Понедельник\nTuesday: Вторник\nWednesday: Среда\nThursday: Четверг\nFriday: Пятница\nSaturday: Суббота\nSunday: Воскресенье\n'You do not have the right to add new languages.': 'В не имеете прав доступа для добавления новых языков.'\n'There are $1 issue(s) left.': 'Осталось выпусков: $1'\n'Native name': 'Исходное имя'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.sh.yml",
    "content": "'Language id not specified': null\n'No languages.': 'Nema jezika.'\n'Native Name': 'Izvorno ime'\n'Name taken.': 'Ime je već u upotrebi'\n'Language saved.': 'Jezik snimljen.'\n'Language removed.': 'Jezik uklonjen.'\n'Language not found.': 'Jezik nije pronađen.'\n'Language is in use and cannot be removed.': 'Jezik je u uupotrebi i ne može biti uklonjen.'\n'Language added.': 'Jezik dodat.'\n'English language cannot be removed.': 'Engleski jezik ne može biti uklonjen.'\n'Edit short month names': 'Uredi skraćena imana meseci'\n'Edit short day names': 'Uredi skraćena imena dana'\n'Edit month names': 'Uredi imena meseci'\n'Edit language: $1': 'Uredi jezik: $1'\n'Edit day names': 'Uredi imena dana'\n'Code Page': 'Kodna strana'\n'Add new Language': 'Dodaj novi jezik'\n'Add Language': 'Dodaj jezik'\nWe: sr\nTu: ut\nTh: če\nSu: ne\nSep: sep\nSa: su\n'Please enter the translation for week day short names.': 'Molimo unesite prevode za skraćenice imena dana u nedelji'\n'Please enter the translation for month short names.': 'Molimo unesite prevode za skraćenice imena meseci'\nOct: okt\nNov: nov\nMo: po\nMar: mar\nJun: jun\nJul: jul\nJan: jan\nFr: pe\nFeb: feb\nDec: dec\nAug: avg\nApr: apr\n'No language.': 'Nema jezika.'\n'Delete language $1': 'Obriši jezik $1'\n'You do not have the right to add languages.': 'Nemate pravo da dodajete jezike.'\n'Please enter the translation for time units.': 'Unesite prevod vremenskih jedinica.'\n'You do not have the right to delete languages.': 'Nemate pravo da brišete jezike'\n'Are you sure you want to delete the language $1?': 'Sigurni ste da želite da obrišete jezik $1?'\n'Deleting language': 'Brisanje jezika'\n'The language $1 could not be deleted.': 'Jezik $1 ne može biti obrisan'\n'Edit language': 'Uredi jezik'\n'You do not have the right to edit languages.': 'Nemate pravo da uređujete jezike'\n'Please enter the translation for month names.': 'Unesi prevode za imena meseci'\n'Please enter the translation for week day names.': 'Unesi prevode za imena dana'\nJanuary: januar\nFebruary: februar\nMarch: mart\nApril: april\nMay: maj\nJune: jun\nJuly: jul\nAugust: avgust\nSeptember: septembar\nOctober: oktobar\nNovember: novembar\nDecember: decembar\nMonday: ponedeljak\nTuesday: utorak\nWednesday: sreda\nThursday: četvrtak\nFriday: petak\nSaturday: subota\nSunday: nedelja\n'You do not have the right to add new languages.': 'Nemate pravo da dodajete nove jezike'\n'There are $1 issue(s) left.': 'Preostalo je $1 izdanja.'\n'Native name': 'Izvorno ime'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.sq.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': null\n'Delete language $1': null\n'You do not have the right to add languages.': null\n'Please enter the translation for time units.': null\n'You do not have the right to delete languages.': null\n'Are you sure you want to delete the language $1?': null\n'Deleting language': null\n'The language $1 could not be deleted.': null\n'Edit language': null\n'You do not have the right to edit languages.': null\n'Please enter the translation for month names.': null\n'Please enter the translation for week day names.': null\nJanuary: null\nFebruary: null\nMarch: null\nApril: null\nMay: null\nJune: null\nJuly: null\nAugust: null\nSeptember: null\nOctober: null\nNovember: null\nDecember: null\nMonday: null\nTuesday: null\nWednesday: null\nThursday: null\nFriday: null\nSaturday: null\nSunday: null\n'You do not have the right to add new languages.': null\n'There are $1 issue(s) left.': null\n'Native name': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.sr.yml",
    "content": "'Language id not specified': 'Идентификациони број језика није дефинисан'\n'No languages.': 'Нема језика.'\n'Native Name': 'Изворно име'\n'Name taken.': 'Име је већ у употреби'\n'Language saved.': 'Језик снимљен.'\n'Language removed.': 'Језик уклоњен.'\n'Language not found.': 'Језик није пронађен.'\n'Language is in use and cannot be removed.': 'Језик је у употреби и не може бити уклоњен.'\n'Language added.': 'Језик додат.'\n'English language cannot be removed.': 'Енглески језик не може бити уклоњен.'\n'Edit short month names': 'Уреди скраћена имена месеци'\n'Edit short day names': 'Уреди скраћена имена дана'\n'Edit month names': 'Уреди имена месеци'\n'Edit language: $1': 'Уреди језик: $1'\n'Edit day names': 'Уреди имена дана'\n'Code Page': 'Кодна страна'\n'Add new Language': 'Додај нови језик'\n'Add Language': 'Додај језик'\nWe: ср\nTu: ут\nTh: че\nSu: не\nSep: сеп\nSa: су\n'Please enter the translation for week day short names.': 'Молимо унесите преводе за скраћенице имена дана у недељи'\n'Please enter the translation for month short names.': 'Молимо унесите преводе за скраћенице имена месеци'\nOct: окт\nNov: нов\nMo: по\nMar: мар\nJun: јун\nJul: јул\nJan: јан\nFr: пе\nFeb: феб\nDec: дец\nAug: авг\nApr: апр\n'No language.': 'Нема језика'\n'Delete language $1': 'Обриши језик $1'\n'You do not have the right to add languages.': 'Немате право да додајете језике'\n'Please enter the translation for time units.': 'Унеситпревод временских јединица'\n'You do not have the right to delete languages.': 'Немате право да бришете језике'\n'Are you sure you want to delete the language $1?': 'Сигурни сте да желите да обришете језик $1?'\n'Deleting language': 'Брисање језика'\n'The language $1 could not be deleted.': 'Језик $1 не може бити обрисан'\n'Edit language': 'Уреди језик'\n'You do not have the right to edit languages.': 'Немате право да уређујете језике'\n'Please enter the translation for month names.': 'Унеси преводе за имена месеци'\n'Please enter the translation for week day names.': 'Унеси преводе за имена дана'\nJanuary: јануар\nFebruary: фебруар\nMarch: март\nApril: април\nMay: мај\nJune: јун\nJuly: јул\nAugust: август\nSeptember: септембар\nOctober: октобар\nNovember: новембар\nDecember: децембар\nMonday: понедељак\nTuesday: уторак\nWednesday: среда\nThursday: четвртак\nFriday: петак\nSaturday: субота\nSunday: недеља\n'You do not have the right to add new languages.': 'Немате право да додајете нове језике.'\n'There are $1 issue(s) left.': 'Преостало је  $1издања.'\n'Native name': 'Изворно име'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.sv.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': 'Inget språk.'\n'Delete language $1': 'Radera språk $1'\n'You do not have the right to add languages.': 'Du har inte rätt att lägga till språk.'\n'Please enter the translation for time units.': 'Var god skriv in översättningar för tidsenheter.'\n'You do not have the right to delete languages.': 'Du har inte rätt att radera språk.'\n'Are you sure you want to delete the language $1?': 'Är du säker att du vill radera språket $1?'\n'Deleting language': 'Raderar språk'\n'The language $1 could not be deleted.': 'Språket $1 kunde inte raderas.'\n'Edit language': 'Redigera språk'\n'You do not have the right to edit languages.': 'Du har inte rätt att redigera språk.'\n'Please enter the translation for month names.': 'Var god skriv in översättningar för månadsnamn.'\n'Please enter the translation for week day names.': 'Var god skriv in översättningar för dagars namn.'\nJanuary: Januari\nFebruary: Februari\nMarch: Mars\nApril: April\nMay: Maj\nJune: Juni\nJuly: Juli\nAugust: Augusti\nSeptember: September\nOctober: Oktober\nNovember: November\nDecember: December\nMonday: Måndag\nTuesday: Tisdag\nWednesday: Onsdag\nThursday: Torsdag\nFriday: Fredag\nSaturday: Lördag\nSunday: Söndag\n'You do not have the right to add new languages.': 'Du har inte rätt att lägga till nya språk.'\n'There are $1 issue(s) left.': 'Det finns $1 utgåva(or) kvar.'\n'Native name': 'Inhemskt namn'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.tr.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': null\n'Delete language $1': null\n'You do not have the right to add languages.': null\n'Please enter the translation for time units.': null\n'You do not have the right to delete languages.': null\n'Are you sure you want to delete the language $1?': null\n'Deleting language': null\n'The language $1 could not be deleted.': null\n'Edit language': null\n'You do not have the right to edit languages.': null\n'Please enter the translation for month names.': null\n'Please enter the translation for week day names.': null\nJanuary: null\nFebruary: null\nMarch: null\nApril: null\nMay: null\nJune: null\nJuly: null\nAugust: null\nSeptember: null\nOctober: null\nNovember: null\nDecember: null\nMonday: null\nTuesday: null\nWednesday: null\nThursday: null\nFriday: null\nSaturday: null\nSunday: null\n'You do not have the right to add new languages.': null\n'There are $1 issue(s) left.': null\n'Native name': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.uk.yml",
    "content": "'Language id not specified': null\n'No languages.': 'Немає мов.'\n'Native Name': 'Місцева назва'\n'Name taken.': 'Набута назва.'\n'Language saved.': 'Мова збережена.'\n'Language removed.': 'Мова видалена.'\n'Language not found.': 'Мова не знайдена.'\n'Language is in use and cannot be removed.': 'Мова використовується та не може бути видалена.'\n'Language added.': 'Мова додана.'\n'English language cannot be removed.': 'Англійську мову видалити неможливо.'\n'Edit short month names': 'Редагувати скорочені назви місяців'\n'Edit short day names': 'Редагувати скорочені назви днів'\n'Edit month names': 'Редагувати назви місяців'\n'Edit language: $1': 'Редагувати мову: $1'\n'Edit day names': 'Редагувати назви днів'\n'Code Page': 'Сторінка коду'\n'Add new Language': 'Додати нову мову'\n'Add Language': 'Додати мову'\nWe: Ср\nTu: Вт\nTh: Чт\nSu: Нд\nSep: Вер\nSa: Сб\n'Please enter the translation for week day short names.': 'Будь ласа введіть переклад скорочених назв днів тижня'\n'Please enter the translation for month short names.': 'Будь ласка введіть переклад скорочених назв місяців'\nOct: Жов\nNov: Лис\nMo: Пн\nMar: Бер\nJun: Чер\nJul: Лип\nJan: Січ\nFr: Пт\nFeb: Лют\nDec: Гру\nAug: Сер\nApr: Кві\n'No language.': 'Немає мови.'\n'Delete language $1': 'Видалити мову $1'\n'You do not have the right to add languages.': 'Ви не маєте права додавати мови.'\n'Please enter the translation for time units.': 'Будь ласка введіть переклад одиниць часу'\n'You do not have the right to delete languages.': 'Ви не маєте права видаляти мови.'\n'Are you sure you want to delete the language $1?': 'Ви впевнені що хочете видалити мову $1?'\n'Deleting language': 'Видалення мови'\n'The language $1 could not be deleted.': 'Мова $1 не може бути видалена.'\n'Edit language': 'Редагувати мову'\n'You do not have the right to edit languages.': 'Ви не маєте прав для редагування мови.'\n'Please enter the translation for month names.': 'Будь ласка введіть переклад для назв місяців'\n'Please enter the translation for week day names.': 'Будь ласка введіть переклад для назв днів тижня.'\nJanuary: Січень\nFebruary: Лютий\nMarch: Березень\nApril: Квітень\nMay: Травень\nJune: Червен\nJuly: Липень\nAugust: Серпень\nSeptember: Вересень\nOctober: Жовтень\nNovember: Листопад\nDecember: Грудень\nMonday: Понеділок\nTuesday: Вівторок\nWednesday: Середа\nThursday: Четвер\nFriday: П’ятниця\nSaturday: Субота\nSunday: Неділя\n'You do not have the right to add new languages.': 'Ви не маєте прав додавати нові мови.'\n'There are $1 issue(s) left.': ' $1 випуск(ів) залишилось.'\n'Native name': 'Місцева назва.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.vi.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': null\n'Delete language $1': null\n'You do not have the right to add languages.': null\n'Please enter the translation for time units.': null\n'You do not have the right to delete languages.': null\n'Are you sure you want to delete the language $1?': null\n'Deleting language': null\n'The language $1 could not be deleted.': null\n'Edit language': null\n'You do not have the right to edit languages.': null\n'Please enter the translation for month names.': null\n'Please enter the translation for week day names.': null\nJanuary: null\nFebruary: null\nMarch: null\nApril: null\nMay: null\nJune: null\nJuly: null\nAugust: null\nSeptember: null\nOctober: null\nNovember: null\nDecember: null\nMonday: null\nTuesday: null\nWednesday: null\nThursday: null\nFriday: null\nSaturday: null\nSunday: null\n'You do not have the right to add new languages.': null\n'There are $1 issue(s) left.': null\n'Native name': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.zh.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': 无语言\n'Delete language $1': 删除语言$1\n'You do not have the right to add languages.': 您无权添加语言\n'Please enter the translation for time units.': 请输入时间单位的翻译\n'You do not have the right to delete languages.': 您无权删除语言\n'Are you sure you want to delete the language $1?': '你确认要删除语言$1?'\n'Deleting language': 正在删除语言\n'The language $1 could not be deleted.': 语言$1不能被删除\n'Edit language': 编辑语言\n'You do not have the right to edit languages.': 您无权编辑语言\n'Please enter the translation for month names.': 请输入月份的翻译\n'Please enter the translation for week day names.': 请输入为星期的翻译\nJanuary: 一月\nFebruary: 二月\nMarch: 三月\nApril: 四月\nMay: 五月\nJune: 六月\nJuly: 七月\nAugust: 八月\nSeptember: 九月\nOctober: 十月\nNovember: 十一月\nDecember: 十二月\nMonday: 星期一\nTuesday: 星期二\nWednesday: 星期三\nThursday: 星期四\nFriday: 星期五\nSaturday: 星期六\nSunday: 星期日\n'You do not have the right to add new languages.': 您没有权限增加新的语言。\n'There are $1 issue(s) left.': 还有$1个问题\n'Native name': 本地名称\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/languages.zh_TW.yml",
    "content": "'Language id not specified': null\n'No languages.': null\n'Native Name': null\n'Name taken.': null\n'Language saved.': null\n'Language removed.': null\n'Language not found.': null\n'Language is in use and cannot be removed.': null\n'Language added.': null\n'English language cannot be removed.': null\n'Edit short month names': null\n'Edit short day names': null\n'Edit month names': null\n'Edit language: $1': null\n'Edit day names': null\n'Code Page': null\n'Add new Language': null\n'Add Language': null\nWe: null\nTu: null\nTh: null\nSu: null\nSep: null\nSa: null\n'Please enter the translation for week day short names.': null\n'Please enter the translation for month short names.': null\nOct: null\nNov: null\nMo: null\nMar: null\nJun: null\nJul: null\nJan: null\nFr: null\nFeb: null\nDec: null\nAug: null\nApr: null\n'No language.': null\n'Delete language $1': null\n'You do not have the right to add languages.': null\n'Please enter the translation for time units.': null\n'You do not have the right to delete languages.': null\n'Are you sure you want to delete the language $1?': null\n'Deleting language': null\n'The language $1 could not be deleted.': null\n'Edit language': null\n'You do not have the right to edit languages.': null\n'Please enter the translation for month names.': null\n'Please enter the translation for week day names.': null\nJanuary: null\nFebruary: null\nMarch: null\nApril: null\nMay: null\nJune: null\nJuly: null\nAugust: null\nSeptember: null\nOctober: null\nNovember: null\nDecember: null\nMonday: null\nTuesday: null\nWednesday: null\nThursday: null\nFriday: null\nSaturday: null\nSunday: null\n'You do not have the right to add new languages.': null\n'There are $1 issue(s) left.': 还有$1个问题\n'Native name': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.ar.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: 'كود الويب'\n'View article': 'إعرض المقال'\nSource: المصدر\n'Select type': 'حدد نوع'\nOn: 'قيد التشغيل'\nOff: 'قيد الإيقاف'\nTitle: العنوان\n'No video playback capabilities, please download the video below': 'لا قدرات لتشغيل الفيديو، يرجى تحميل الفيديو أدناه'\n'Article status set to $1 for $2 articles': 'تم تعيين حالة المقالة الى $1 لـ $2 مقالات'\n'Article status not set to $1 for $2 articles': 'لم تعين حالة المقالة الى $1 لـ $2 مقالات'\n'$1 toggled for $2 articles.': 'تم إثبات $1 لـ $2 مقالات.'\n'$1 not toggled for $2 articles.': 'لم يثبت $1 لـ $2 مقالات.'\n'$1 not toggled for $2  articles.': 'لم يثبت $1 لـ $2 مقالات.'\n'$1 articles have not been removed': 'لم يتم إزالة $1 مقالات'\n'$1 Article(s) unlocked': 'تم إزالة القفل لـ $1 مقالات'\n'$1 Article(s) not unlocked': '$1 مقالات مقفلة'\n'$1 Article(s) duplicated': 'تم تكرار $1 مقالات'\n'Download file': 'حمل الملف'\n'You do not have the right to delete articles.': 'ليس لديك الحق في حذف مقالات.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'ليس لديك الحق في تغيير حالة هذا المقال. عند التسليم، يمكن فقط المستخدمون المفوضون أن يغيروا المقال.'\n'Use Map': 'استخدم الخريطة'\n'Toggle: On Section Page': 'تبديل: في صفحة الأقسام '\n'Toggle: On Front Page': 'تبديل: في الصفحة الأمامية'\n'Toggle: Comments': 'تبديل: التعليقات'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'تم تأمين المقال من $1 ($2) $3 دقائق مضت.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'تم تأمين المقال من $1 ($2) $3 ساعة(-ات) و $4 دقائق مضت.'\n'Status: Submit': 'الحالة: تسليم'\n'Status: Set New': 'الحالة: تعيين جديد'\n'Status: Publish': 'الحالة: نشر'\nSize: الحجم\n'Showing _START_ to _END_ of _TOTAL_ entries': 'قيد العرض _START_ لـ_END_ من _TOTAL_ إدخالات'\n'Show / hide columns': 'أظهر/أخف أعمدة'\n'Select some article first.': 'حدد مقالاً ما أولا .'\n'Select action': 'حدد الإجراء'\n'Save order': 'إحفظ الترتيب'\n'Reset all filters': 'إعادة تعيين كل عوامل التصفية'\n'Published before': 'تم النشر قبل'\n'Published after': 'تم النشر بعد'\n'Publish date': 'تاريخ الصدور'\n'Publish Schedule': 'جدول النشر'\n'Publish Date': 'تاريخ الصدور'\n'Order updated.': 'تم تحديث الترتيب.'\n'Open in browser': 'إفتح في المتصفح'\n'No sections found': 'لم يتم العثور على أقسام'\n'No records found.': 'لم يتم العثور على سجلات.'\n'No publications found': 'لم يتم العثور على منشورات'\n'No issues found': 'لم يتم العثور على أعداد'\n'No entries to show': 'لا إدخالات من أجل الإظهار'\nLocations: المواقع\n'Loading data': 'قيد تحميل البيانات'\n'Last modified': 'آخر تعديل'\n'Last Modified': 'آخر تعديلات'\nLast: الأخير\nFirst: الأول\n'Filter by...': 'التصفية حسب ...'\nFilter: التصفية\nFilename: 'اسم الملف'\n'Duplicate to another section': 'تكرار لقسم آخر'\n'Display _MENU_ records': 'إعرض سجلات من _MENU_'\nCreator: الكاتب\n'Create Date': 'أنش تاريخ'\n'Article status set to $1': 'تم تعيين حالة المقالة الى $1.'\n'Are you sure you want to delete selected articles?': 'هل أنت متأكد أنك تريد حذف المقالات المختارة؟'\n'All Sections': 'جميع الأقسام'\n'All Publications': 'جميع المنشورات'\n'All Issues': 'جميع الآعداد'\nAdded: 'تم الإضافة'\n'Access denied.': 'الدخول مرفوض'\n'$1 toggled.': 'تم تبديل $1.'\n'$1 articles have been removed': 'تم إزالة $1 مقالات'\n' - filtering from _MAX_ records': '- قيد التصفية من السجلات _MAX_'\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.az.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: Vebşifrə\n'View article': 'Məqaləyə bax'\nSource: Mənbə\n'Select type': 'Növü seç'\nOn: Açıq\nOff: Qapalı\nTitle: Başlıq\n'No video playback capabilities, please download the video below': 'Videonun oxunma imkanı yoxdur, lütfən, aşağıdakı videonu endir'\n'Article status set to $1 for $2 articles': '$2 məqalə üçün status $1 olaraq təyin edildi'\n'Article status not set to $1 for $2 articles': '$2 məqalə üçün status $1 olaraq təyin edilmədi'\n'$1 toggled for $2 articles.': '$1 $2 məqalə üçün köçürüldü.'\n'$1 not toggled for $2 articles.': '$1 $2 məqalə üçün köçürülmədi.'\n'$1 not toggled for $2  articles.': '$1 $2 məqalə üçün köçürülmədi.'\n'$1 articles have not been removed': '$1 məqalə xaric edilməmişdir'\n'$1 Article(s) unlocked': '$1 Məqalə(lər)nin kilidi açıldı'\n'$1 Article(s) not unlocked': '$1 Məqalə(lər)nin kilidi açılmadı'\n'$1 Article(s) duplicated': '$1 Məqalə(lər)nin surəti çıxarıldı'\n'Download file': 'Faylı endir'\n'You do not have the right to delete articles.': 'Məqalə silməyə ixtiyarın yoxdur.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Bu məqalənin statusunu dəyişməyə ixtiyarın yoxdur. Məqalə daxil edildikdən sonra yalnız səlahiyyətli istifadəçilər tərəfindən dəyişdirilə bilər.'\n'Use Map': 'Xəritə İstifadə Et'\n'Toggle: On Section Page': 'Keçid: Seçim Səhifəsində'\n'Toggle: On Front Page': 'Keçid: Ön Səhifədə'\n'Toggle: Comments': 'Keçid: Şərhlər'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Məqalə $3 dəqiqə əvvəl $1 ($2) tərəfindən kilidlənib.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Məqalə $3 saat $4 dəqiqə əvvəl $1 ($2) tərəfindən kilidlənib.'\n'Status: Submit': 'Status: Daxil Et'\n'Status: Set New': 'Status: Yenisini Yaz'\n'Status: Publish': 'Status: Nümayiş'\nSize: Ölçü\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Ümumilikdə _TOTAL_ girişin _START_-dan/dən _END_-a/ə qaydasında nümayişi'\n'Show / hide columns': 'Sütunları göstər / gizlə'\n'Select some article first.': 'Əvvəlcə bir neçə məqalə seç.'\n'Select action': 'Addımı seç'\n'Save order': 'Sifarişi saxla'\n'Reset all filters': 'Bütün filtrləri sıfırla'\n'Published before': 'Əvvəl nümayiş olunub'\n'Published after': 'Sonra nümayiş olunub'\n'Publish date': 'Nümayiş tarixi'\n'Publish Schedule': 'Planı Nümayiş Et'\n'Publish Date': 'Nümayiş Tarixi'\n'Order updated.': 'Sifariş yeniləndi.'\n'Open in browser': 'Brauzerdə aç'\n'No sections found': 'Bölmə tapılmadı'\n'No records found.': 'Yazı tapılmadı.'\n'No publications found': 'Nümayiş tapılmadı'\n'No issues found': 'Məsələ tapılmadı'\n'No entries to show': 'Nümayiş üçün giriş yoxdur'\nLocations: Məkanlar\n'Loading data': 'Məlumatın yüklənməsi'\n'Last modified': 'Son redaktələr'\n'Last Modified': 'Son Quraşdırılan'\nLast: Son\nFirst: İlk\n'Filter by...': 'Filtr xüsusiyyəti...'\nFilter: 'Filtrə Et'\nFilename: 'Fayl adı'\n'Duplicate to another section': 'Başqa bölməyə surətini çıxar'\n'Display _MENU_ records': '_MENU_ yazılarını göstər'\nCreator: Yaradıcı\n'Create Date': 'Yaranma Tarixi'\n'Article status set to $1': 'Məqalə statusu $1 olaraq təyin edildi'\n'Are you sure you want to delete selected articles?': 'Seçilmiş məqalələri silmək istədiyinə əminsən?'\n'All Sections': 'Bütün Bölmələr'\n'All Publications': 'Bütün Nümayişlər'\n'All Issues': 'Bütün Məsələlər'\nAdded: 'Əlavə Edildi'\n'Access denied.': 'Giriş qadağandır.'\n'$1 toggled.': '$1 keçirildi.'\n'$1 articles have been removed': '$1 məqalə xaric edilib'\n' - filtering from _MAX_ records': '- _MAX_ yazılarından filtrləmə'\n'Search for creators': 'Yaradıcı axtar'\n'No matches.': 'Uyğun olan yoxdur.'\nSearching...: Axtarılır...\n'Minimum input of characters: $1': 'Minimal giriş işarəsi: $1'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.be.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: Web-код\n'View article': 'Прагляд артыкула'\nSource: Крыніца\n'Select type': 'Абраць тып'\nOn: Укл.\nOff: Выкл.\nTitle: Загаловак\n'No video playback capabilities, please download the video below': 'Немагчыма прайграць відэа, калі ласка, запампуйце відэа ніжэй па спасылцы'\n'Article status set to $1 for $2 articles': 'Статут артыкула $1  устаноўлены для $2 артыкулаў'\n'Article status not set to $1 for $2 articles': 'Статут артыкула $1  не устаноўлены для $2 артыкулаў'\n'$1 toggled for $2 articles.': '$1 уключаны для $2 артыкулаў.'\n'$1 not toggled for $2 articles.': '$1 не ўключаны для $2 артыкулаў.'\n'$1 not toggled for $2  articles.': '$1 не ўключаны для $2 артыкулаў.'\n'$1 articles have not been removed': '$1 артыкулаў не былі выдаленыя'\n'$1 Article(s) unlocked': '$1 артыкул(ы) разблакаваныя'\n'$1 Article(s) not unlocked': '$1 артыкул(ы) не разблакаваныя'\n'$1 Article(s) duplicated': '$1 артыкул(ы) дубляваныя.'\n'Download file': 'Загрузіць файл'\n'You do not have the right to delete articles.': 'Вы ня маеце правоў выдаляць артыкул.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Вы ня маеце правоў зьмяняць стан гэтага артыкула.  Калі артыкул адпраўлены, ён можа быць зьменены толькі ўпаўнаважанымі карыстальнікамі.'\n'Use Map': 'Выкарыстоўваць карту'\n'Toggle: On Section Page': 'Маркер На старонцы рубрыкі'\n'Toggle: On Front Page': 'Маркер На галоўнай старонцы'\n'Toggle: Comments': 'Макер Каментары'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Гэты артыкул быў заблакаваны $1 ($2) $3 хвілін таму.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Гэты артыкул быў заблакаваны $1 ($2) $3 гадзін і $4 хвілін таму.'\n'Status: Submit': 'Статут: Адправіць'\n'Status: Set New': 'Статут: Новая'\n'Status: Publish': 'Статут: Зацвердзiць'\nSize: Памер\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Паказаныя _START_ да _END_ / _TOTAL_ запісаў'\n'Show / hide columns': 'Паказаць / схаваць калонкі'\n'Select some article first.': 'Выберыце спачатку некалькі артыкулаў.'\n'Select action': 'Выбраць дзеянне'\n'Save order': 'Захаваць парадак выканання.'\n'Reset all filters': 'Ачысціць усе фільтры'\n'Published before': 'Апублікаваныя да'\n'Published after': 'Апублікаваныя пасля'\n'Publish date': 'Дата публiкацыі '\n'Publish Schedule': 'Расклад публікацый'\n'Publish Date': 'Дата публікацыі'\n'Order updated.': 'Парадак абноўлены.'\n'Open in browser': 'Адкрыць у браўзэры'\n'No sections found': 'Не абрана ніводная з рубрык'\n'No records found.': 'Не абрана ніводная з запісаў'\n'No publications found': 'Не абрана ніводнае з выданняў'\n'No issues found': 'Не абраны ніводны з выпускаў'\n'No entries to show': 'Няма запісаў для прагляду'\nLocations: Месцазнаходжання\n'Loading data': 'Загрузка даных'\n'Last modified': 'Апошнія змяненні'\n'Last Modified': 'Апошнія змяненні'\nLast: Апошнi\nFirst: Першы\n'Filter by...': 'Фільтр па...'\nFilter: 'Фільтр '\nFilename: 'Імя файла'\n'Duplicate to another section': 'Дубляваць ў іншую рубрыку'\n'Display _MENU_ records': 'Адлюстраваць _MENU_ запісы'\nCreator: Стваральнік\n'Create Date': 'Дата стварэння'\n'Article status set to $1': 'Статус артыкула ўстаноўлены  ў $1 '\n'Are you sure you want to delete selected articles?': 'Вы ўпэўненыя, што жадаеце выдаліць абраныя файлы?'\n'All Sections': 'Усе рубрыкі'\n'All Publications': 'Усе выданні'\n'All Issues': 'Усе выпускі'\nAdded: Даданы\n'Access denied.': 'Адмоўлена ў доступе.'\n'$1 toggled.': '$1 зьменена.'\n'$1 articles have been removed': '$1 артыкулаў былі выдаленыя'\n' - filtering from _MAX_ records': 'фільтраванне ад _MAX_ запісаў'\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.bn.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: null\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': null\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: null\nFirst: null\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.cs.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: Webcode\n'View article': 'Ukázat článek'\nSource: Zdroj\n'Select type': 'Vyber typ'\nOn: Vypnout\nOff: Zapnout\nTitle: Název\n'No video playback capabilities, please download the video below': 'Žádné možnosti přehrání videa, prosím stáhněte si video níže'\n'Article status set to $1 for $2 articles': 'Stav článku je nastaven $1 na $2 článků'\n'Article status not set to $1 for $2 articles': 'Stav článku není nastaven $1 na $2 článků'\n'$1 toggled for $2 articles.': '$1 byl přepnut na $2 články'\n'$1 not toggled for $2 articles.': '$1 nebyl přepnut na $2 články'\n'$1 not toggled for $2  articles.': '$1 nebyl přepnut na $2 články'\n'$1 articles have not been removed': '$1 článků nebylo odstraněno'\n'$1 Article(s) unlocked': '$1 článků bylo zpřístupněno'\n'$1 Article(s) not unlocked': '$1 článků nebylo zpřístupněno'\n'$1 Article(s) duplicated': '$1 článků bylo duplikováno'\n'Download file': 'Stáhnout soubor'\n'You do not have the right to delete articles.': 'Nemáte právo mazat články'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Nemáte oprávnění měnit status článku. Jakmile je článek podán, mohou jej měnit pouze autorizovaní uživatelé.'\n'Use Map': 'Použít mapu'\n'Toggle: On Section Page': 'Přejít do: Rubriky'\n'Toggle: On Front Page': 'Přejít na: Titulní stránku'\n'Toggle: Comments': 'Přejít na: Komentáře'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Tento článek uzamkl $1 ($2) před $3 minutami.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Tento článek uzamkl $1 ($2) před $3 hodinami a $4 minutami.'\n'Status: Submit': 'Status: Odevzdat'\n'Status: Set New': 'Status: Začít nový'\n'Status: Publish': 'Status: Publikovat'\nSize: 'Velikost '\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Ukázat _START_ až _END_ z _TOTAL_ záznamů'\n'Show / hide columns': 'Ukázat / skrýt sloupce'\n'Select some article first.': 'Nejdříve vybrat článek.'\n'Select action': 'Vybrat akci'\n'Save order': 'Uložit příkaz'\n'Reset all filters': 'Resetovat všechny filtry'\n'Published before': 'Publikováno před'\n'Published after': 'Publikováno po'\n'Publish date': 'Datum publikování'\n'Publish Schedule': 'Publikační Plán'\n'Publish Date': 'Publikovat Datum'\n'Order updated.': 'Příkaz aktualizován.'\n'Open in browser': 'Otevřít v prohlížeči'\n'No sections found': 'Rubriky nebyly nalezeny'\n'No records found.': 'Nebyly nalezeny žádné záznamy.'\n'No publications found': 'Nebyly nalezeny žádné publikace'\n'No issues found': 'Nebyla nalezena žádná vydání'\n'No entries to show': 'Nejsou zde žádné příspěvky k zobrazení'\nLocations: Lokality\n'Loading data': 'Nahrávám data'\n'Last modified': 'Naposledy změněno'\n'Last Modified': 'Naposledy Změněno'\nLast: Poslední\nFirst: První\n'Filter by...': 'Filtr nastaven...'\nFilter: Filter\nFilename: 'Název souboru'\n'Duplicate to another section': 'Duplikovat do jiné rubriky'\n'Display _MENU_ records': 'Zobrazit _MENU_ záznamy'\nCreator: Vytvořil\n'Create Date': 'Datum Vytvoření'\n'Article status set to $1': 'Status článku nastaven na $1'\n'Are you sure you want to delete selected articles?': 'Opravdu chcete vymazat vybrané články?'\n'All Sections': 'Všechny Rubriky'\n'All Publications': 'Všechny Publikace'\n'All Issues': 'Všechna Vydání'\nAdded: Přidáno\n'Access denied.': 'Přístup byl odepřen.'\n'$1 toggled.': '$1 vybráno.'\n'$1 articles have been removed': '$1 článků bylo odstraněno'\n' - filtering from _MAX_ records': '- filtrováno z _MAX_ záznamů'\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.da.yml",
    "content": "'Show hidden Article Types?': 'Vis skjulte artikel typer?'\nWebcode: Webkode\n'View article': 'Se artikel'\nSource: Kilde\n'Select type': 'Vælg type'\nOn: Til\nOff: Fra\nTitle: Titel\n'No video playback capabilities, please download the video below': 'Videoen kan ikke afspilles. Gem videoen nedenfor.'\n'Article status set to $1 for $2 articles': 'Artikelstatus blev sat til $1 for $2 artikler'\n'Article status not set to $1 for $2 articles': 'Artikelstatus blev ikke sat til $1 for $2 artikler'\n'$1 toggled for $2 articles.': '$1 ændret for $2 artikler.'\n'$1 not toggled for $2 articles.': '$1 er ikke ændet for $2 artikler.'\n'$1 not toggled for $2  articles.': '$1 er ikke ændet for $2 artikler.'\n'$1 articles have not been removed': '$1 artikler blev ikke slettet'\n'$1 Article(s) unlocked': '$1 artikler låst op'\n'$1 Article(s) not unlocked': '$1 artikler blev ikke låst op'\n'$1 Article(s) duplicated': '$1 artikler dubleret'\n'Download file': 'Hent fil'\n'You do not have the right to delete articles.': 'Du har ikke tilladelse til at slette artikler'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Du har ikke tilladelse til at ændre artiklens status. Når en artikel er indsendt kan den kun ændres af autoriserede brugere.'\n'Use Map': 'Brug kort'\n'Toggle: On Section Page': 'Skift: Vis på sektions side'\n'Toggle: On Front Page': 'Skift: Vis på forside'\n'Toggle: Comments': 'Skift: Kommentarer'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Artiklen blev låst af $1 ($2) for $3 minutter siden.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Artiklen blev låst af $1 ($2) for $3 timer og $4 minutter siden.'\n'Status: Submit': 'Status: Indsend'\n'Status: Set New': 'Status: Ny'\n'Status: Publish': 'Status: Udgiv'\nSize: Størrelse\n'Showing _START_ to _END_ of _TOTAL_ entries': 'VISER _START_ til _END_ af _TOTAL_ opslag'\n'Show / hide columns': 'Vis/skjul kolonner'\n'Select some article first.': 'Vælg artikler først'\n'Select action': 'Vælg handling'\n'Save order': 'Gem sortering'\n'Reset all filters': 'Nulstil alle filtre'\n'Published before': 'Udgivet før'\n'Published after': 'Udgivet efter'\n'Publish date': 'Udgivelses dato'\n'Publish Schedule': 'Planlagt udgivelse'\n'Publish Date': 'Udgivelses dato'\n'Order updated.': 'Sortering opdateret.'\n'Open in browser': 'Åben i browser'\n'No sections found': 'Ingen sektioner'\n'No records found.': 'Ingen opslag.'\n'No publications found': 'Ingen publikationer'\n'No issues found': 'Ingen udgivelser'\n'No entries to show': 'Intet at vise'\nLocations: Steder\n'Loading data': 'Henter data'\n'Last modified': 'Sidst ændret'\n'Last Modified': 'Sidst ændret'\nLast: Sidste\nFirst: Første\n'Filter by...': 'Filtrér efter...'\nFilter: Filtrér\nFilename: Filnavn\n'Duplicate to another section': 'Kopier til en anden sektion'\n'Display _MENU_ records': 'Vis _MENU_ opslag'\nCreator: 'Oprettet af'\n'Create Date': Oprettelsesdato\n'Article status set to $1': 'Artikel status sat til $1'\n'Are you sure you want to delete selected articles?': 'Vil du slette de valgte artikler?'\n'All Sections': 'Alle sektioner'\n'All Publications': 'Alle publikationer'\n'All Issues': 'Alle udgivelser'\nAdded: Tilføjet\n'Access denied.': 'Adgang nægtet'\n'$1 toggled.': '$1 skiftet.'\n'$1 articles have been removed': '$1 artikler blev slettet'\n' - filtering from _MAX_ records': '- filtreret fra _MAX_ opslag'\n'Search for creators': 'Søg efter hvem der har oprettet'\n'No matches.': 'Ingen resultater.'\nSearching...: Søger...\n'Minimum input of characters: $1': 'Mindste antal tegn: $1'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.de.yml",
    "content": "'Show hidden Article Types?': 'Verborgene Artikeltypen anzeigen?'\nWebcode: Webcode\n'View article': 'Artikel ansehen'\nSource: Quelle\n'Select type': 'Typ auswählen'\nOn: An\nOff: Aus\nTitle: Titel\n'No video playback capabilities, please download the video below': 'Keine Kapazitäten, um das Video abzuspielen. Bitte laden Sie das Video herunter. '\n'Article status set to $1 for $2 articles': 'Artikel Status gesetzt auf $1 für $2 Artikel.'\n'Article status not set to $1 for $2 articles': 'Artikel Status nicht gesetzt auf $1 für $2 Artikel'\n'$1 toggled for $2 articles.': '$1 umgeschaltet für $2 Artikel. '\n'$1 not toggled for $2 articles.': '$1 nicht umgeschaltet für $2 Artikel. '\n'$1 not toggled for $2  articles.': '$1 nicht umgeschaltet für $2 Artikel. '\n'$1 articles have not been removed': '$1 Artikel wurden nicht entfernt'\n'$1 Article(s) unlocked': '$1 Artikel entsperrt'\n'$1 Article(s) not unlocked': '$1 Artikel nicht entsperrt'\n'$1 Article(s) duplicated': '$1 Artikel dupliziert'\n'Download file': 'Datei herunterladen'\n'You do not have the right to delete articles.': 'Fehlende Zugriffsrechte für das Löschen von Artikeln.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Keine Zugriffsrechte auf die Änderung des Artikelstatus. Eingepflegte Artikel können nur mit den dazugehörigen Rechten geändert werden.'\n'Use Map': 'Karte benutzen'\n'Toggle: On Section Page': 'Auswählen: Auf der Rubrikseite'\n'Toggle: On Front Page': 'Auswählen: Auf der Startseite'\n'Toggle: Comments': 'Auswählen: Kommentare'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Achtung: Der Artikel ist durch $1 ($2) seit $3 Minute(n) gesperrt.<br/>Du kannst die Sperrung aufheben, dabei gehen aber alle nicht gespeicherten Änderungen verloren. Bitte stelle sicher, dass $1 ($2) den Artikel nicht mehr am Bearbeiten ist.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Achtung: Der Artikel ist durch $1 ($2) seit $3 Stunde(n) und $4 Minute(n) gesperrt.<br/>Du kannst die Sperrung aufheben, dabei gehen aber alle nicht gespeicherten Änderungen verloren. Bitte stelle sicher, dass $1 ($2) den Artikel nicht mehr am Bearbeiten ist.'\n'Status: Submit': 'Status: anlegen'\n'Status: Set New': 'Status: auf neu setzen'\n'Status: Publish': 'Status: veröffentlichen'\nSize: Größe\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Zeige _START_ bis _END_ von _TOTAL_ Einträgen'\n'Show / hide columns': 'Spalten anzeigen / verbergen'\n'Select some article first.': 'Zuerst bitte einige Artikel aussuchen.'\n'Select action': 'Aktion auswählen'\n'Save order': 'Reihenfolge speichern'\n'Reset all filters': 'Alle Filter zurücksetzen'\n'Published before': 'Veröffentlicht vor'\n'Published after': 'Veröffentlicht nach'\n'Publish date': Veröffentlichungsdatum\n'Publish Schedule': 'Automatisierte Veröffentlichung'\n'Publish Date': Veröffentlichungsdatum\n'Order updated.': 'Reihenfolge aktualisiert'\n'Open in browser': 'Im Browser öffnen'\n'No sections found': 'Keine Rubriken gefunden.'\n'No records found.': 'Keine Angaben gefunden.'\n'No publications found': 'Keine Publikationen gefunden.'\n'No issues found': 'Keine Ausgaben gefunden.'\n'No entries to show': 'Keine Einträge zum Anzeigen gefunden.'\nLocations: Standorte\n'Loading data': 'Daten werden geladen'\n'Last modified': 'Zuletzt geändert'\n'Last Modified': 'Zuletzt geändert'\nLast: Letzte\nFirst: Erste\n'Filter by...': 'Filtern nach...'\nFilter: Filter\nFilename: Dateiname\n'Duplicate to another section': 'In eine andere Rubrik duplizieren'\n'Display _MENU_ records': 'Anzeigen _MENU_ Einträge'\nCreator: 'Erstellt von'\n'Create Date': 'Datum erstellen'\n'Article status set to $1': 'Artikelstatus auf $1 gesetzt.'\n'Are you sure you want to delete selected articles?': 'Ausgewählte Artikel wirklich löschen?'\n'All Sections': 'Alle Rubriken'\n'All Publications': 'Alle Publikationen'\n'All Issues': 'Alle Ausgaben'\nAdded: Hinzugefügt\n'Access denied.': 'Zugang verweigert'\n'$1 toggled.': '$1 ausgewählt.'\n'$1 articles have been removed': '$1 Artikel wurden entfernt'\n' - filtering from _MAX_ records': ' - filtert aus _MAX_ Einträgen '\n'Search for creators': 'Suche nach Urheber'\n'No matches.': 'Keine Ergebnisse.'\nSearching...: Suchen...\n'Minimum input of characters: $1': 'Minimale Anzahl an Zeichen: $1'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.de_AT.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: Webcode\n'View article': 'Artikel ansehen'\nSource: Quelle\n'Select type': 'Typ auswählen'\nOn: An\nOff: Aus\nTitle: Titel\n'No video playback capabilities, please download the video below': 'Keine Kapazitäten, um das Video abzuspielen. Bitte laden Sie das Video herunter. '\n'Article status set to $1 for $2 articles': 'Artikel Status gesetzt auf $1 für $2 Artikel.'\n'Article status not set to $1 for $2 articles': 'Artikel Status nicht gesetzt auf $1 für $2 Artikel'\n'$1 toggled for $2 articles.': '$1 umgeschaltet für $2 Artikel. '\n'$1 not toggled for $2 articles.': '$1 nicht umgeschaltet für $2 Artikel. '\n'$1 not toggled for $2  articles.': '$1 nicht umgeschaltet für $2 Artikel. '\n'$1 articles have not been removed': '$1 Artikel wurden nicht entfernt'\n'$1 Article(s) unlocked': '$1 Artikel entsperrt'\n'$1 Article(s) not unlocked': '$1 Artikel nicht entsperrt'\n'$1 Article(s) duplicated': '$1 Artikel dupliziert'\n'Download file': 'Datei herunterladen'\n'You do not have the right to delete articles.': 'Fehlende Zugriffsrechte für das Löschen von Artikeln.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Keine Zugriffsrechte auf die Änderung des Artikelstatus. Eingepflegte Artikel können nur mit den dazugehörigen Rechten geändert werden.'\n'Use Map': 'Karte benutzen'\n'Toggle: On Section Page': 'Auswählen: Auf der Rubrikseite'\n'Toggle: On Front Page': 'Auswählen: Auf der Startseite'\n'Toggle: Comments': 'Auswählen: Kommentare'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Achtung: Der Artikel ist durch $1 ($2) seit $3 Minute(n) gesperrt.<br/>Du kannst die Sperrung aufheben, dabei gehen aber alle nicht gespeicherten Änderungen verloren. Bitte stelle sicher, dass $1 ($2) den Artikel nicht mehr am Bearbeiten ist.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Achtung: Der Artikel ist durch $1 ($2) seit $3 Stunde(n) und $4 Minute(n) gesperrt.<br/>Du kannst die Sperrung aufheben, dabei gehen aber alle nicht gespeicherten Änderungen verloren. Bitte stelle sicher, dass $1 ($2) den Artikel nicht mehr am Bearbeiten ist.'\n'Status: Submit': 'Status: anlegen'\n'Status: Set New': 'Status: auf neu setzen'\n'Status: Publish': 'Status: veröffentlichen'\nSize: Größe\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Zeige _START_ bis _END_ von _TOTAL_ Einträgen'\n'Show / hide columns': 'Spalten anzeigen / verbergen'\n'Select some article first.': 'Zuerst bitte einige Artikel aussuchen.'\n'Select action': 'Aktion auswählen'\n'Save order': 'Reihenfolge speichern'\n'Reset all filters': 'Alle Filter zurücksetzen'\n'Published before': 'Veröffentlicht vor'\n'Published after': 'Veröffentlicht nach'\n'Publish date': Veröffentlichungsdatum\n'Publish Schedule': 'Automatisierte Veröffentlichung'\n'Publish Date': Veröffentlichungsdatum\n'Order updated.': 'Reihenfolge aktualisiert'\n'Open in browser': 'Im Browser öffnen'\n'No sections found': 'Keine Rubriken gefunden.'\n'No records found.': 'Keine Angaben gefunden.'\n'No publications found': 'Keine Publikationen gefunden.'\n'No issues found': 'Keine Ausgaben gefunden.'\n'No entries to show': 'Keine Einträge zum Anzeigen gefunden.'\nLocations: Standorte\n'Loading data': 'Daten werden geladen'\n'Last modified': 'Zuletzt geändert'\n'Last Modified': 'Zuletzt geändert'\nLast: Letzte\nFirst: Erste\n'Filter by...': 'Filtern nach...'\nFilter: Filter\nFilename: Dateiname\n'Duplicate to another section': 'In eine andere Rubrik duplizieren'\n'Display _MENU_ records': 'Anzeigen _MENU_ Einträge'\nCreator: 'Erstellt von'\n'Create Date': 'Datum erstellen'\n'Article status set to $1': 'Artikelstatus auf $1 gesetzt.'\n'Are you sure you want to delete selected articles?': 'Ausgewählte Artikel wirklich löschen?'\n'All Sections': 'Alle Rubriken'\n'All Publications': 'Alle Publikationen'\n'All Issues': 'Alle Ausgaben'\nAdded: Hinzugefügt\n'Access denied.': 'Zugang verweigert'\n'$1 toggled.': '$1 ausgewählt.'\n'$1 articles have been removed': '$ 1 Artikel wurden entfernt'\n' - filtering from _MAX_ records': 'filtert aus _MAX_ Einträgen '\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.el.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: Webcode\n'View article': 'Προβολή άρθρου'\nSource: Πηγή\n'Select type': 'Επιλέξτε τύπο'\nOn: On\nOff: Off\nTitle: Τίτλος\n'No video playback capabilities, please download the video below': 'Δεν υπάρχουν δυνατότητες αναπαραγωγής βίντεο, παρακαλούμε κατεβάστε το ακόλουθο βίντεο '\n'Article status set to $1 for $2 articles': 'Η κατάσταση του άρθρου ρυθμίστηκε σε $1 για $2 άρθρα'\n'Article status not set to $1 for $2 articles': 'Η κατάσταση του άρθρου δεν ρυθμίστηκε σε $1 για $2 άρθρα'\n'$1 toggled for $2 articles.': '$1 εναλλάχθηκε με άρθρα $2.'\n'$1 not toggled for $2 articles.': '$1 δεν εναλλάχθηκε με άρθρα $2.'\n'$1 not toggled for $2  articles.': '$1 δεν εναλλάχθηκε με άρθρα $2.'\n'$1 articles have not been removed': '$1 άρθρα δεν αφαιρέθηκαν'\n'$1 Article(s) unlocked': '$1 Άρθρο/α κλειδώθηκαν'\n'$1 Article(s) not unlocked': '$1 Άρθρο/α  δεν κλειδώθηκαν'\n'$1 Article(s) duplicated': '$1 Άρθρο/α αντιγράφηκαν'\n'Download file': 'Κατέβασμα αρχείου'\n'You do not have the right to delete articles.': 'Δεν έχετε το δικαίωμα να διαγράψετε άρθρα.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Δεν έχετε το δικαίωμα να αλλάξετε την κατάσταση του άρθρου. Μόλις ένα άρθρο υποβληθεί μπορεί να αλλάξει μόνο από εξουσιοδοτημένους χρήστες.'\n'Use Map': 'Χρήση Χάρτη'\n'Toggle: On Section Page': 'Εναλλαγή: Στην Σελίδα Ενότητας'\n'Toggle: On Front Page': 'Εναλλαγή: Στην Πρώτη Σελίδα'\n'Toggle: Comments': 'Εναλλαγή: Σχόλια'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Το άρθρο κλειδώθηκε από $1 ($2) πριν από $3 λεπτό/ά.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Το άρθρο κλειδώθηκε από $1 ($2) πριν από $3 ώρα/ες και $4 λεπτό/ά.'\n'Status: Submit': 'Κατάσταση: Υποβολλή'\n'Status: Set New': 'Κατάσταση: Ορισμός Νέου'\n'Status: Publish': 'Κατάσταση: Δημοσίευση'\nSize: Μέγεθος\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Εμφάνιση _START_ προς _END_ από _TOTAL_ εισόδους'\n'Show / hide columns': 'Εμφάνιση/απόκρυψη στηλών '\n'Select some article first.': 'Επιλέξτε πρώτα κάποια άρθρα.'\n'Select action': 'Επιλογή ενέργειας'\n'Save order': 'Αποθήκευση εντολής'\n'Reset all filters': 'Επαναφορά όλων των φίλτρων'\n'Published before': 'Δημοσιεύτηκε πρίν'\n'Published after': 'Δημοσιεύτηκε μετά'\n'Publish date': 'Δημοσίευση ημερομηνίας'\n'Publish Schedule': 'Δημοσίευση Προγράμματος'\n'Publish Date': 'Δημοσίευση Ημερομηνίας'\n'Order updated.': 'Η εντολή ανανεώθηκε.'\n'Open in browser': 'Άνοιγμα στο πρόγραμμα πλοήγησης'\n'No sections found': 'Δεν βρέθηκαν ενότητες'\n'No records found.': 'Δεν βρέθηκαν καταχωρήσεις.'\n'No publications found': 'Δεν βρέθηκαν δημοσιεύσεις'\n'No issues found': 'Δεν βρέθηκαν τεύχη'\n'No entries to show': 'Καμία είσοδος προς προβολή'\nLocations: Τοποθεσίες\n'Loading data': 'Φόρτωση δεδομένων'\n'Last modified': 'Τελευταίως τροποποιημένα'\n'Last Modified': 'Τελευταίως Τροποποιημένα'\nLast: Τελευταίο\nFirst: Πρώτο\n'Filter by...': 'Φιλτράρεται από...'\nFilter: Φίλτρο\nFilename: 'Όνομα αρχείου'\n'Duplicate to another section': 'Αντιγραφή σε άλλη ενότητα'\n'Display _MENU_ records': 'Εμφάνιση καταχωρήσεων _MENU_ '\nCreator: Δημιουργός\n'Create Date': 'Δημιουργία Ημερομηνίας'\n'Article status set to $1': 'Η κατάσταση του άρθρου ορίστηκε σε $1'\n'Are you sure you want to delete selected articles?': 'Είστε σίγουρος/η ότι θέλετε να διαγράψετε τα επιλεγμένα άρθρα;'\n'All Sections': 'Όλες οι Ενότητες'\n'All Publications': 'Όλες οι Δημοσιεύσεις'\n'All Issues': 'Όλα τα Τεύχη'\nAdded: Προστέθηκε\n'Access denied.': 'Άρνηση πρόσβασης.'\n'$1 toggled.': '$1 εναλλάχθηκε.'\n'$1 articles have been removed': 'Έχουν μεταφερθεί $1 άρθρα '\n' - filtering from _MAX_ records': '-φιλτράρισμα από _MAX_ καταχωρήσεις'\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.en.yml",
    "content": "'Show hidden Article Types?': 'Show hidden Article Types?'\nWebcode: Webcode\n'View article': 'View article'\nSource: Source\n'Select type': 'Select type'\nOn: On\nOff: Off\nTitle: Title\n'No video playback capabilities, please download the video below': 'No video playback capabilities, please download the video below'\n'Article status set to $1 for $2 articles': 'Article status set to $1 for $2 articles'\n'Article status not set to $1 for $2 articles': 'Article status not set to $1 for $2 articles'\n'$1 toggled for $2 articles.': '$1 toggled for $2 articles.'\n'$1 not toggled for $2 articles.': '$1 not toggled for $2 articles.'\n'$1 not toggled for $2  articles.': '$1 not toggled for $2  articles.'\n'$1 articles have not been removed': '$1 articles have not been removed'\n'$1 Article(s) unlocked': '$1 Article(s) unlocked'\n'$1 Article(s) not unlocked': '$1 Article(s) not unlocked'\n'$1 Article(s) duplicated': '$1 Article(s) duplicated'\n'Download file': 'Download file'\n'You do not have the right to delete articles.': 'You do not have the right to delete articles.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.'\n'Use Map': 'Use Map'\n'Toggle: On Section Page': 'Toggle: On Section Page'\n'Toggle: On Front Page': 'Toggle: On Front Page'\n'Toggle: Comments': 'Toggle: Comments'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'The article has been locked by $1 ($2) $3 minute(s) ago.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.'\n'Status: Submit': 'Status: Submit'\n'Status: Set New': 'Status: Set New'\n'Status: Publish': 'Status: Publish'\nSize: Size\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Showing _START_ to _END_ of _TOTAL_ entries'\n'Show / hide columns': 'Show / hide columns'\n'Select some article first.': 'Select some article first.'\n'Select action': 'Select action'\n'Save order': 'Save order'\n'Reset all filters': 'Reset all filters'\n'Published before': 'Published before'\n'Published after': 'Published after'\n'Publish date': 'Publish date'\n'Publish Schedule': 'Publish Schedule'\n'Publish Date': 'Publish Date'\n'Order updated.': 'Order updated.'\n'Open in browser': 'Open in browser'\n'No sections found': 'No sections found'\n'No records found.': 'No records found.'\n'No publications found': 'No publications found'\n'No issues found': 'No issues found'\n'No entries to show': 'No entries to show'\nLocations: Locations\n'Loading data': 'Loading data'\n'Last modified': 'Last modified'\n'Last Modified': 'Last Modified'\nLast: Last\nFirst: First\n'Filter by...': 'Filter by...'\nFilter: Filter\nFilename: Filename\n'Duplicate to another section': 'Duplicate to another section'\n'Display _MENU_ records': 'Display _MENU_ records'\nCreator: Creator\n'Create Date': 'Create Date'\n'Article status set to $1': 'Article status set to $1'\n'Are you sure you want to delete selected articles?': 'Are you sure you want to delete selected articles?'\n'All Sections': 'All Sections'\n'All Publications': 'All Publications'\n'All Issues': 'All Issues'\nAdded: Added\n'Access denied.': 'Access denied.'\n'$1 toggled.': '$1 toggled.'\n'$1 articles have been removed': '$1 articles have been removed'\n' - filtering from _MAX_ records': ' - filtering from _MAX_ records'\n'Search for creators': 'Search for creators'\n'No matches.': 'No matches.'\n'Searching...': 'Searching...'\n'Minimum input of characters: $1': 'Minimum input of characters: $1'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.en_GB.yml",
    "content": "'Show hidden Article Types?': 'Show hidden Article Types?'\nWebcode: Webcode\n'View article': 'View article'\nSource: Source\n'Select type': 'Select type'\nOn: On\nOff: Off\nTitle: Title\n'No video playback capabilities, please download the video below': 'No video playback capabilities, please download the video below'\n'Article status set to $1 for $2 articles': 'Article status set to $1 for $2 articles'\n'Article status not set to $1 for $2 articles': 'Article status not set to $1 for $2 articles'\n'$1 toggled for $2 articles.': '$1 toggled for $2 articles.'\n'$1 not toggled for $2 articles.': '$1 not toggled for $2 articles.'\n'$1 not toggled for $2  articles.': '$1 not toggled for $2  articles.'\n'$1 articles have not been removed': '$1 articles have not been removed'\n'$1 Article(s) unlocked': '$1 Article(s) unlocked'\n'$1 Article(s) not unlocked': '$1 Article(s) not unlocked'\n'$1 Article(s) duplicated': '$1 Article(s) duplicated'\n'Download file': 'Download file'\n'You do not have the right to delete articles.': 'You do not have the right to delete articles.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.'\n'Use Map': 'Use Map'\n'Toggle: On Section Page': 'Toggle: On Section Page'\n'Toggle: On Front Page': 'Toggle: On Front Page'\n'Toggle: Comments': 'Toggle: Comments'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'The article has been locked by $1 ($2) $3 minute(s) ago.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.'\n'Status: Submit': 'Status: Submit'\n'Status: Set New': 'Status: Set New'\n'Status: Publish': 'Status: Publish'\nSize: Size\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Showing _START_ to _END_ of _TOTAL_ entries'\n'Show / hide columns': 'Show / hide columns'\n'Select some article first.': 'Select some article first.'\n'Select action': 'Select action'\n'Save order': 'Save order'\n'Reset all filters': 'Reset all filters'\n'Published before': 'Published before'\n'Published after': 'Published after'\n'Publish date': 'Publish date'\n'Publish Schedule': 'Publish Schedule'\n'Publish Date': 'Publish Date'\n'Order updated.': 'Order updated.'\n'Open in browser': 'Open in browser'\n'No sections found': 'No sections found'\n'No records found.': 'No records found.'\n'No publications found': 'No publications found'\n'No issues found': 'No issues found'\n'No entries to show': 'No entries to show'\nLocations: Locations\n'Loading data': 'Loading data'\n'Last modified': 'Last modified'\n'Last Modified': 'Last Modified'\nLast: Last\nFirst: First\n'Filter by...': 'Filter by...'\nFilter: Filter\nFilename: Filename\n'Duplicate to another section': 'Duplicate to another section'\n'Display _MENU_ records': 'Display _MENU_ records'\nCreator: Creator\n'Create Date': 'Create Date'\n'Article status set to $1': 'Article status set to $1'\n'Are you sure you want to delete selected articles?': 'Are you sure you want to delete selected articles?'\n'All Sections': 'All Sections'\n'All Publications': 'All Publications'\n'All Issues': 'All Issues'\nAdded: Added\n'Access denied.': 'Access denied.'\n'$1 toggled.': '$1 toggled.'\n'$1 articles have been removed': '$1 articles have been removed'\n' - filtering from _MAX_ records': '- filtering from _MAX_ records'\n'Search for creators': 'Search for creators'\n'No matches.': 'No matches.'\nSearching...: Searching...\n'Minimum input of characters: $1': 'Minimum input of characters: $1'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.es.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: Webcode\n'View article': 'Ver artículo'\nSource: Fuente\n'Select type': 'Seleccione el tipo'\nOn: Encendido\nOff: Apagado\nTitle: Tìtulo\n'No video playback capabilities, please download the video below': 'No es posible reproducir archivos de video, por favor descarga el video que aparece a continuación'\n'Article status set to $1 for $2 articles': 'El estatus del artículo sí se configuró en $1 para los $2 artículos.'\n'Article status not set to $1 for $2 articles': 'El estatus del artículo no se configuró en $1 para los $2 artículos.'\n'$1 toggled for $2 articles.': 'La opción $1 sí se modificó para los $2 artículos.'\n'$1 not toggled for $2 articles.': 'La opción $1 no se modificó para los $2 artículos.'\n'$1 not toggled for $2  articles.': 'La opción $1 no se modificó para los $2 artículos.'\n'$1 articles have not been removed': 'No se eliminó/eliminaron $1 artículo(s) '\n'$1 Article(s) unlocked': '$1 artículo(s) no está bloqueado'\n'$1 Article(s) not unlocked': 'El/los artículo(s) $1 no están desbloqueados.'\n'$1 Article(s) duplicated': 'Se duplicó/duplicaron $1 artículo(s)'\n'Download file': 'Descargue archivo'\n'You do not have the right to delete articles.': 'No tiene privilegios para eliminar artículos.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'No tiene los privilegios para cambiar el estatus de este artículo.  Una vez enviado el artículo solo los usuarios autorizados pueden modificarlos.'\n'Use Map': 'Mapa utilizado'\n'Toggle: On Section Page': 'Mostrar/ocultar:  en sección'\n'Toggle: On Front Page': 'Mostrar/ocultar:  en portada'\n'Toggle: Comments': 'Mostrar/ocultar:  comentarios'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': '$1 ($2) bloqueó el artículo hace $3 minuto(s).'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': '$1 ($2) bloqueó el artículo hace $3 hora(s) y $4 minuto(s).'\n'Status: Submit': 'Estatus:  enviar'\n'Status: Set New': 'Estatus:  marcar como nuevo'\n'Status: Publish': 'Estatus:  publicar'\nSize: Tamaño\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Mostrando de _START_ a _END_ el _TOTAL_ de entradas'\n'Show / hide columns': 'Mostrar/ocultar columnas'\n'Select some article first.': 'Primero seleccionar un artículo'\n'Select action': 'Seleccionar una acción'\n'Save order': 'Almacenar orden'\n'Reset all filters': 'Reiniciar todos los filtros'\n'Published before': 'Publicado antes'\n'Published after': 'Publicado después'\n'Publish date': 'Publicar fecha'\n'Publish Schedule': 'Publicar horario'\n'Publish Date': 'Fecha de publicación '\n'Order updated.': 'Se actualizó el orden'\n'Open in browser': 'Abrir en navegador'\n'No sections found': 'No se encontraron secciones'\n'No records found.': 'No se encontraron registros'\n'No publications found': 'No se encontraron publicaciones'\n'No issues found': 'No se encontraron ediciones'\n'No entries to show': 'No se encontraron entradas'\nLocations: Ubicaciones\n'Loading data': 'Cargando datos'\n'Last modified': 'Modificado por última vez'\n'Last Modified': 'Modificado por última vez'\nLast: Último\nFirst: Primero\n'Filter by...': 'Filtrado por...'\nFilter: Filtro\nFilename: 'Nombre del archivo'\n'Duplicate to another section': 'Duplicar en otra sección'\n'Display _MENU_ records': 'Desplegar registros _MENU_'\nCreator: Creador\n'Create Date': 'Fecha de creación'\n'Article status set to $1': 'Se estableció el estatus del artículo en $1'\n'Are you sure you want to delete selected articles?': '¿Está seguro de querer borrar los artículos seleccionados?'\n'All Sections': 'Todas las secciones'\n'All Publications': 'Todas las publicaciones'\n'All Issues': 'Todas las ediciones'\nAdded: Añadido\n'Access denied.': 'Acceso denegado.'\n'$1 toggled.': '$ seleccionados/deseleccionados'\n'$1 articles have been removed': 'Se han eliminado $1 artículo(s).'\n' - filtering from _MAX_ records': '-filtrando desde archivos _MAX_'\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.es_AR.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: Título\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': null\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: Último\nFirst: Primero\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': 'Acceso denegado.'\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.fa.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: null\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': null\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: null\nFirst: null\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.fa_AF.yml",
    "content": "'Display articles of filtered types': null\n'Display Articles of Filtered Types': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: null\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': null\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: null\nFirst: null\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.fr.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: Titre\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': 'Vous navez pas le droit de supprimer des articles.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Vous navez pas le droit de changer ce statut darticle. Une fois soumis un article peut seulement être changé par des utilisateurs autorisés. '\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': 'Publier un horaire'\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: Dernier\nFirst: Premier\n'Filter by...': null\nFilter: null\nFilename: 'Nom du fichier'\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: Créateur\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.he.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: null\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': null\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: null\nFirst: null\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.hr.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: null\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': 'Nemate prava brisati članke.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Nemate prava mijenjati status članka. Predatom članku status može mijenjati samo prijavljeni korisnik.'\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': 'Raspored objavljivanja'\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: Zadnji\nFirst: Prvi\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.hu.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: Webkód\n'View article': 'Cikk megtekintése'\nSource: Forrás\n'Select type': 'Válassz típust'\nOn: null\nOff: null\nTitle: Cím\n'No video playback capabilities, please download the video below': 'Nincsenek videolejátszási képességek, töltsd le az alábbi videót'\n'Article status set to $1 for $2 articles': 'A cikk állapotának beállítása $1 állapotra megtörtént a/z $2 cikkhez'\n'Article status not set to $1 for $2 articles': 'Nem történt meg a cikk állapotának beállítása $1 állapotra a/z $2 cikkhez'\n'$1 toggled for $2 articles.': 'A/z $1 nincs átváltva $2 cikkhez.'\n'$1 not toggled for $2 articles.': 'A/z $1 nincs átváltva $2 cikkhez.'\n'$1 not toggled for $2  articles.': 'A/z $1 nincs átváltva $2 cikkhez.'\n'$1 articles have not been removed': 'A/z $1 cikk eltávolítása nem történt meg'\n'$1 Article(s) unlocked': 'A/z $1 cikk zárolásának feloldása megtörtént'\n'$1 Article(s) not unlocked': 'A(z) $1 cikk zárolása nincs feloldva'\n'$1 Article(s) duplicated': 'A(z) $1 cikk megkettőzése megtörtént'\n'Download file': 'Fájl letöltése'\n'You do not have the right to delete articles.': 'Nincs jogod a cikkek törléséhez.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Nincs jogod ennek ennek a cikknek az állapotát módosítani. Cikk beküldése után csak a jogosult felhasználók módosíthatják.'\n'Use Map': 'Térkép használata'\n'Toggle: On Section Page': 'Váltás: A rovatlapon'\n'Toggle: On Front Page': 'Váltás: A címlapon'\n'Toggle: Comments': 'Váltás: Hozzászólások'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'A cikket $1 ($2) zárolta $3 perce.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'A cikket $1 ($2) zárolta $3 órája és $4 perce.'\n'Status: Submit': 'Állapot: Küldés'\n'Status: Set New': 'Állapot: Új beállítása'\n'Status: Publish': 'Állapot: Közzététel'\nSize: Méret\n'Showing _START_ to _END_ of _TOTAL_ entries': '_START_ - _END_. bejegyzés / _TOTAL_ megjelenítése'\n'Show / hide columns': 'Oszlopok megjelenítése / elrejtése'\n'Select some article first.': 'Előbb válassz ki néhány cikket.'\n'Select action': 'Művelet kiválasztása'\n'Save order': 'Sorrend mentése'\n'Reset all filters': 'Minden szűrő alaphelyzetbe állítása'\n'Published before': 'Közzétéve előtte'\n'Published after': 'Közzétéve utána'\n'Publish date': 'Közzététel dátuma'\n'Publish Schedule': 'Közzététel beütemezése'\n'Publish Date': 'Közzététel dátuma'\n'Order updated.': 'A sorrend frissítése megtörtént.'\n'Open in browser': 'Megnyitás a böngészőben'\n'No sections found': 'Nem találhatók rovatok'\n'No records found.': 'Nem találhatók rekordok.'\n'No publications found': 'Nem találhatók kiadványok'\n'No issues found': 'Nem találhatók számok'\n'No entries to show': 'Nincsenek megjelenítendő bejegyzések'\nLocations: Helyek\n'Loading data': 'Adatok betöltése'\n'Last modified': 'Utolsó módosítás'\n'Last Modified': 'Utolsó módosítás'\nLast: Utolsó\nFirst: Első\n'Filter by...': Szűrés...\nFilter: Szűrő\nFilename: Fájlnév\n'Duplicate to another section': 'Megkettőzés másik rovatba'\n'Display _MENU_ records': '_MENU_ rekord megjelenítése'\nCreator: Létrehozó\n'Create Date': 'Létrehozás dátuma'\n'Article status set to $1': 'A cikk állapotának beállítása megtörtént erre: $1'\n'Are you sure you want to delete selected articles?': 'Biztosan törölni akarod a kiválasztott cikkeket?'\n'All Sections': 'Minden rovat'\n'All Publications': 'Minden kiadvány'\n'All Issues': 'Minden szám'\nAdded: Hozzáadva\n'Access denied.': 'Hozzáférés megtagadva.'\n'$1 toggled.': 'A/z $1 átváltása megtörtént.'\n'$1 articles have been removed': 'A/z $1 cikk eltávolítása megtörtént'\n' - filtering from _MAX_ records': '- szűrés a _MAX_ rekordokból'\n'Search for creators': 'Létrehozók keresése'\n'No matches.': 'Nincs találat.'\nSearching...: Keresés...\n'Minimum input of characters: $1': 'Minimális karakterszám: $1'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.hy.yml",
    "content": "'Show hidden Article Types?': 'Show hidden Article Types?'\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: Վերնագիր\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': null\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: Վերջին\nFirst: Առաջին\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.hy_AM.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: Վերնագիր\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': null\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: Վերջին\nFirst: Առաջին\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.id.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: null\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': null\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: null\nFirst: null\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.it.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: 'Codice web'\n'View article': 'Vedi articolo'\nSource: Sorgente\n'Select type': 'Scegli tipo'\nOn: On\nOff: Off\nTitle: Titolo\n'No video playback capabilities, please download the video below': 'Non ci sono opzioni di playback del video, per favore scaricalo'\n'Article status set to $1 for $2 articles': 'Stato articolo impostato a $1 per $2 articoli'\n'Article status not set to $1 for $2 articles': 'Stato articolo non impostato a $1 per $2 articoli'\n'$1 toggled for $2 articles.': '$1 impostato per $2 articoli.'\n'$1 not toggled for $2 articles.': '$1 non impostato per $2 articoli.'\n'$1 not toggled for $2  articles.': '$1 non impostato per $2 articoli.'\n'$1 articles have not been removed': '$1 articoli non sono stati rimossi'\n'$1 Article(s) unlocked': '$1 articoli sbloccati'\n'$1 Article(s) not unlocked': '$1 articoli non sbloccati'\n'$1 Article(s) duplicated': '$1 articoli duplicati'\n'Download file': 'Scarica file'\n'You do not have the right to delete articles.': 'Non hai il permesso di eliminare articoli.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'non si dispone dNon hai il permesso di cambiare lo stato dellarticolo: una volta inviato, larticolo può essere modificato solo da utenti autorizzati.'\n'Use Map': 'Usa mappa'\n'Toggle: On Section Page': 'Abilita Nella pagina di sezione'\n'Toggle: On Front Page': 'Abilita In prima pagina'\n'Toggle: Comments': 'Abilita Commenti'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Larticolo è stato bloccato da $1($2) $3 minuti fa.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Larticolo è stato bloccato da $1 ($2) $3 ore e $4 minuti fa.'\n'Status: Submit': 'Stato: Inoltrato'\n'Status: Set New': 'Stato: Nuovo'\n'Status: Publish': 'Stato: Pubblicato'\nSize: Dimensione\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Mostro voci da  _START_ a  _END_ di _TOTAL_'\n'Show / hide columns': 'Mostra / nascondi colonne'\n'Select some article first.': 'Occorre selezionare prima alcuni articoli.'\n'Select action': 'Scegli azione'\n'Save order': 'Salva lordine'\n'Reset all filters': 'resetta i filtri'\n'Published before': 'Pubblicato prima'\n'Published after': 'Pubblicato dopo'\n'Publish date': 'Data di pubblicazione'\n'Publish Schedule': 'Programmazione della pubblicazione'\n'Publish Date': 'Data pubblicazione'\n'Order updated.': 'Ordine cambiato.'\n'Open in browser': 'Apri nel browser'\n'No sections found': 'Nessuna sezione trovata'\n'No records found.': 'Nessuna voce trovata.'\n'No publications found': 'Nessuna pubblicazione trovata'\n'No issues found': 'Nessuna edizione trovata'\n'No entries to show': 'Nessun elemento da mostrare'\nLocations: Luoghi\n'Loading data': 'Caricamento dati'\n'Last modified': 'Ultima modifica'\n'Last Modified': 'Ultima modifica'\nLast: Ultimo\nFirst: Primo\n'Filter by...': 'Filtra per...'\nFilter: Filtro\nFilename: 'Nome file'\n'Duplicate to another section': 'Duplica in unaltra sezione'\n'Display _MENU_ records': 'Mostra _MENU_ voci'\nCreator: Creatore\n'Create Date': 'Data creazione'\n'Article status set to $1': 'Stato dellarticolo impostato a  $1'\n'Are you sure you want to delete selected articles?': 'Vuoi davvero eliminare gli articoli selezionati?'\n'All Sections': 'Tutte le sezioni'\n'All Publications': 'Tutte le pubblicazioni'\n'All Issues': 'Tutte le edizioni'\nAdded: Aggiunto\n'Access denied.': 'Accesso negato.'\n'$1 toggled.': '$1 modificato.'\n'$1 articles have been removed': 'sono stati eliminati $1 articoli'\n' - filtering from _MAX_ records': 'Filtro da _MAX_ voci'\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.ka.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: 'ქსელური კოდი'\n'View article': 'სტატიის ნახვა'\nSource: წყარო\n'Select type': 'შერჩეული ტიპი'\nOn: ჩართვა\nOff: გამორთვა\nTitle: სათაური\n'No video playback capabilities, please download the video below': 'ვიდეოს დაკვრა შეუძლებელია, გთხოვთ გადმოქაჩოთ'\n'Article status set to $1 for $2 articles': 'სტატიის სტატუსი არის $1 $2 სტატიებისთვის'\n'Article status not set to $1 for $2 articles': 'სტატიის სტატუსი არ არის მითითებული $1 $2 სტატიებისთვის'\n'$1 toggled for $2 articles.': '$1 ჩაირთო $2 სტატიებისთვის.'\n'$1 not toggled for $2 articles.': '$1 არ ჩაირთო $2 სტატიებისთვის.'\n'$1 not toggled for $2  articles.': '$1 არ ჩაირთო $2 სტატიებისთვის.'\n'$1 articles have not been removed': '$1 სტატიები არ წაიშალა'\n'$1 Article(s) unlocked': '$1 სტატია(ები) გაიხსნა'\n'$1 Article(s) not unlocked': '$1 სტატია(ები) არ გაიხსნა'\n'$1 Article(s) duplicated': '$1 სტატია(ები) გაორმაგდა'\n'Download file': 'ფაილის გადმოტვირთვა'\n'You do not have the right to delete articles.': 'თქვენ არ გაქვთ სტატიების წაშლის ნებართვა'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'თქვენ არ გაქვთ ამ სტატიის სტატუსის შეცვლის ნებართვა. სტატიის შეცვლა მხოლოდ ავტორიზებულ მომხმარებლებს შეუძლიათ.'\n'Use Map': 'რუკის გამოყენება'\n'Toggle: On Section Page': 'ჩართე: სექციის გვერდზე'\n'Toggle: On Front Page': 'ჩართე: სექციის გვერდზე'\n'Toggle: Comments': 'ჩართე კომენტარები'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'სტატია დალუქა მოხმარებელმა $1 ($2) $3 წუთ(ებ)ის წინ.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'სტატია დალუქა მოხმარებელმა $1 ($2) $3 საათ(ებ)ის და $4 წუთ(ებ)ის წინ.'\n'Status: Submit': 'სტატუსი: ჩაბარებული'\n'Status: Set New': 'სტატუსი: ახალი'\n'Status: Publish': 'სტატუსი: გამოცემა'\nSize: ზომა\n'Showing _START_ to _END_ of _TOTAL_ entries': '_START_ to _END_ of _TOTAL_ ჩანაწერების ჩვენება'\n'Show / hide columns': 'სვეტების გამოჩენა/გაქრობა'\n'Select some article first.': 'აირჩიეთ სტატია'\n'Select action': 'აირჩიეთ მოქმდება'\n'Save order': 'თანმიმდევრობის შენახვა'\n'Reset all filters': 'ფილტრების '\n'Published before': 'გამოიცა ამ დრომდე:'\n'Published after': 'გამოიცა ამ დროის შემდეგ:'\n'Publish date': 'გამოცემის თარიღი'\n'Publish Schedule': 'პუბლიკაციის განრიგი'\n'Publish Date': 'პუბლიკაციის თარიღი'\n'Order updated.': 'თანმიმდევრობა განახლდა.'\n'Open in browser': 'გახსენით ბრაუზერში'\n'No sections found': 'სექციები ვერ მოინახა'\n'No records found.': 'ჩანაწერები ნაპოვნი არ არის.'\n'No publications found': 'პუბლიკაცია არ მოიძებნა'\n'No issues found': 'გამოცემები ვერ მოინახა'\n'No entries to show': 'საჩვენებელი ჩანაწერები არ არის.'\nLocations: ლოკაციები\n'Loading data': 'მონაცემები იტვირთება'\n'Last modified': 'ბოლო მოდიფიკაცია'\n'Last Modified': 'ბოლო მოდიფიკაცია'\nLast: ბოლო\nFirst: პირველი\n'Filter by...': 'გაფილტრე ამის მიხედვით:'\nFilter: ფილტრი\nFilename: 'ფაილის სახელი'\n'Duplicate to another section': 'სხვა სექციაში დუბლირება'\n'Display _MENU_ records': '_MENU_ ჩანაწერების ჩვენება'\nCreator: შემქმნელი\n'Create Date': 'შექმნის თარიღი'\n'Article status set to $1': 'სტატიის სტატუსი შეიცვალა - $1'\n'Are you sure you want to delete selected articles?': 'დარწმუნებული ხართ რომ გსურთ აღნიშნული სტატიების წაშლა?'\n'All Sections': 'ყველა სექცია'\n'All Publications': 'ყველა პუბლიკაცია'\n'All Issues': 'ყველა გამოცემა'\nAdded: დაემატა\n'Access denied.': 'წვდომა აკრძალულია'\n'$1 toggled.': '$1 ჩაირთო'\n'$1 articles have been removed': '$1 სტატიები მოიხსნა'\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.ko.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: null\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': '기사를 삭제할 권한이 없습니다. '\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': '기사 상태를 변경할 권한이 없습니다. 송고된 기사는 권한있는 사용자만 수정할 수 있습니다. '\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': '출판 스케쥴'\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: 마지막\nFirst: 처음\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.ku.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: null\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': null\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: null\nFirst: null\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.lv.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: null\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': null\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: null\nFirst: null\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.mr.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: null\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': null\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: null\nFirst: null\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.nb_NO.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: null\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': null\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: null\nFirst: null\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.nl.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: null\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': 'Publicatie Planning'\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: Laatste\nFirst: Eerste\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.pa.yml",
    "content": "'Show hidden Article Types?': 'Show hidden Article Types?'\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: null\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': null\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: null\nFirst: null\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.pl.yml",
    "content": "'Show hidden Article Types?': 'Pokazać ukryte typy artykułów?'\nWebcode: 'Kod internetowy'\n'View article': 'Zobacz artykuł'\nSource: Źródło\n'Select type': 'Wybierz typ'\nOn: Włączony\nOff: Wyłączony\nTitle: Tytuł\n'No video playback capabilities, please download the video below': 'Brak możliwości odtworzenia wideo, możesz pobrać wideo poniżej.'\n'Article status set to $1 for $2 articles': 'Status artykułu dla artykułów $2 ustawiono na $1'\n'Article status not set to $1 for $2 articles': 'Nie ustawiono statusu $1 artykułu dla artykułów $2'\n'$1 toggled for $2 articles.': 'Przełączono $1 dla $2 artykułów.'\n'$1 not toggled for $2 articles.': 'Nie przełączono $1 dla $2 artykułów.'\n'$1 not toggled for $2  articles.': 'Nie przełączono $1 dla $2 artykułów.'\n'$1 articles have not been removed': '$1 artykułów nie zostało usunietych'\n'$1 Article(s) unlocked': 'Odblokowano $1 artykuł(y)'\n'$1 Article(s) not unlocked': 'Nie odblokowano $1 artykuł(ów)'\n'$1 Article(s) duplicated': '$1 powielonych artykuł(ów)'\n'Download file': 'Pobierz plik'\n'You do not have the right to delete articles.': 'Nie masz praw aby usuwać artykuły.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Nie masz praw aby zmieniac status artykułu. Po wysłaniu artykuł może być zmieniony tylko przez autoryzowane osoby.'\n'Use Map': 'Użyj mapy'\n'Toggle: On Section Page': 'Pokaż: Na stronie sekcji'\n'Toggle: On Front Page': 'Pokaż: Na stronie głównej'\n'Toggle: Comments': 'Pokaż: Komentarze'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Artykuł zostal zablokowany przez $1 ($2) $3 minut(y) temu.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Artykuł zostal zablokowany przez $1 ($2) $3 godziny i $4 minut(y) temu.'\n'Status: Submit': 'Status: Wysłane'\n'Status: Set New': 'Status: Ustaw Nowy'\n'Status: Publish': 'Status: Opublikowany'\nSize: Rozmiar\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Pokaz _START_ do _END_ ze _TOTAL_ wpisow'\n'Show / hide columns': 'Pokaż / schowaj kolumny'\n'Select some article first.': 'Wybierz jakiś artykuł wpierw.'\n'Select action': 'Wybierz akcję'\n'Save order': 'Zapisz kolejność'\n'Reset all filters': 'Resetuj wszystkie filtry'\n'Published before': 'Opublikowany przed'\n'Published after': 'Opublikowany po'\n'Publish date': 'Data publikacji'\n'Publish Schedule': 'Kalendarz wydawniczy'\n'Publish Date': 'Data publikacji'\n'Order updated.': 'Kolejność zaktualizowana.'\n'Open in browser': 'Otwórz w przeglądarce'\n'No sections found': 'Nie znaleziono sekcji'\n'No records found.': 'Nie znaleziono rekordów.'\n'No publications found': 'Nie znaleziono publikacji'\n'No issues found': 'Nie znaleziono wydań'\n'No entries to show': 'Brak wpisów do pokazania'\nLocations: Lokalizacja\n'Loading data': 'Ładowanie danych '\n'Last modified': 'Ostatnia modyfikacja'\n'Last Modified': 'Ostatnia modyfikacja'\nLast: Ostatni\nFirst: Pierwszy\n'Filter by...': Filtruj...\nFilter: Filtrowanie\nFilename: 'Nazwa pliku'\n'Duplicate to another section': 'Duplikuj do innej sekcji'\n'Display _MENU_ records': 'Pokaż _MENU_ rekordy'\nCreator: Twórca\n'Create Date': 'Data utworzenia'\n'Article status set to $1': 'Status artykułu zmieniony na $1'\n'Are you sure you want to delete selected articles?': 'Na pewno chcesz usunąć wybrane artykuły?'\n'All Sections': 'Wszystkie sekcje'\n'All Publications': 'Wszystkie publikacje'\n'All Issues': 'Wszystkie wydania'\nAdded: Dodano\n'Access denied.': 'Dostęp zabroniony.'\n'$1 toggled.': '$1 toggled.'\n'$1 articles have been removed': 'Usunięto artykułów: $1'\n' - filtering from _MAX_ records': '- filtrowanie z _MAX_ rekordów'\n'Search for creators': 'Szukaj po twórcach'\n'No matches.': 'Brak wyników.'\nSearching...: Szukam....\n'Minimum input of characters: $1': 'Minimalna liczba znaków to: $1'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.ps.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: null\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': null\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: null\nFirst: null\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.pt.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: null\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': 'Não tem permissões para eliminar artigos. '\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Não tem permissões para alterar o estado do artigo. Uma vez submetido apenas os utilizadores autorizados podem alterar o seu estado.'\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': 'Agendamento de publicação'\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: Ultimo\nFirst: Primeiro\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.pt_BR.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: 'Código de web'\n'View article': 'Ver artigo'\nSource: Fonte\n'Select type': 'Selecionar o tipo'\nOn: Ligar\nOff: Desligar\nTitle: Título\n'No video playback capabilities, please download the video below': 'Não há capacidade de playback de vídeo, por favor faça download do vídeo abaixo'\n'Article status set to $1 for $2 articles': 'Status do artigo definido como $1 para artigos do tipo $2'\n'Article status not set to $1 for $2 articles': 'Status do artigo não foi definido como $1 para artigos do tipo $2'\n'$1 toggled for $2 articles.': '$1 alternado para artigos do tipo $2.'\n'$1 not toggled for $2 articles.': '$1 não alternado para artigos do tipo $2.'\n'$1 not toggled for $2  articles.': '$1 não alternado para artigos do tipo $2.'\n'$1 articles have not been removed': '$1 artigo(s) não foram removidos'\n'$1 Article(s) unlocked': '$1 artigo(s) foram destrancados'\n'$1 Article(s) not unlocked': '$1 artigo(s) não foram destrancados'\n'$1 Article(s) duplicated': '$1 artigo(s) duplicados'\n'Download file': 'Baixar arquivo'\n'You do not have the right to delete articles.': 'Não tem permissões para eliminar artigos. '\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Não tem permissões para alterar o estado do artigo. Uma vez submetido apenas os utilizadores autorizados podem alterar o seu estado.'\n'Use Map': 'Usar o mapa'\n'Toggle: On Section Page': 'Alternar: Na página da seção'\n'Toggle: On Front Page': 'Alternar: Na primeira página'\n'Toggle: Comments': 'Alternar: Comentários'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'O artigo foi trancado por $1 ($2) $3 minuto(s) atrás.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'O artigo foi trancado por $1 ($2) $3 hora(s) e $4 minuto(s) atrás.'\n'Status: Submit': 'Status: Entregar'\n'Status: Set New': 'Status: Definir novo'\n'Status: Publish': 'Status: Publicar'\nSize: Tamanho\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Mostrando _START_ a _END_ de _TOTAL_ inscrições'\n'Show / hide columns': 'Mostrar / esconder colunas'\n'Select some article first.': 'Selecione um artigo primeiro'\n'Select action': 'Selecione ação'\n'Save order': 'Salvar a ordem'\n'Reset all filters': 'Reinicializar todos os filtros'\n'Published before': 'Publicado antes de'\n'Published after': 'Publicado depois de'\n'Publish date': 'Data de publicação'\n'Publish Schedule': 'Agendamento de publicação'\n'Publish Date': 'Data de publicação'\n'Order updated.': 'Ordem atualizada'\n'Open in browser': 'Abrir no navegador'\n'No sections found': 'Nenhuma seção encontrada'\n'No records found.': 'Nenhum dado encontrado'\n'No publications found': 'Nenhuma publicação encontrada'\n'No issues found': 'Nenhum tema encontrado'\n'No entries to show': 'Não há registros para mostrar'\nLocations: Localidades\n'Loading data': 'Carregando dados'\n'Last modified': 'Modificado pela última vez'\n'Last Modified': 'Última vez modificado'\nLast: Ultimo\nFirst: Primeiro\n'Filter by...': 'Filtrar por...'\nFilter: Filtro\nFilename: 'Nome de arquivo'\n'Duplicate to another section': 'Duplicar para outra seção'\n'Display _MENU_ records': Mostrar_MENU_registros\nCreator: Autor\n'Create Date': 'Data de criação'\n'Article status set to $1': 'Status do artigo definido como $1'\n'Are you sure you want to delete selected articles?': 'Tem certeza que quer remover artigos selecionados?'\n'All Sections': 'Todas as seções'\n'All Publications': 'Todas as publicações'\n'All Issues': 'Todos os temas'\nAdded: Adicionado\n'Access denied.': 'Acesso proibido.'\n'$1 toggled.': '$1 alternado.'\n'$1 articles have been removed': '$1 artigos foram removidos'\n' - filtering from _MAX_ records': '- filtrando de _MAX_ registros'\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.ro.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: null\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': 'Salvează fișierul local'\n'You do not have the right to delete articles.': 'Nu ai dreptul să ştergi articole.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Nu ai dreptul să schimbi status-ul articolului. O dată trimis spre publicare, un articol nu poate fi modificat decât de utilizatorii autorizaţi.'\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: Mărime\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': 'Data publicării'\n'Publish Schedule': 'Programarea publicării'\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': 'Ultima modificare'\n'Last Modified': null\nLast: Ultimul\nFirst: Primul\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': 'Statusul articolului a fost stabilit ca $1'\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': '$1 schimbat.'\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.ru.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: Web-код\n'View article': 'Просмотр статьи'\nSource: Источник\n'Select type': 'Выбрать тип'\nOn: Вкл.\nOff: Выкл.\nTitle: Заголовок\n'No video playback capabilities, please download the video below': 'Невозможно воспроизвести видео, пожалуйста, скачайте видео ниже по ссылке'\n'Article status set to $1 for $2 articles': 'Статус статьи $1 установлен для $2 статей'\n'Article status not set to $1 for $2 articles': 'Статус статьи $1 не установлен для $2 статей'\n'$1 toggled for $2 articles.': '$1включен для $2 статей.'\n'$1 not toggled for $2 articles.': '$1не включен для $2 статей.'\n'$1 not toggled for $2  articles.': '$1не включен для $2 статей.'\n'$1 articles have not been removed': '$1 статей не были удалены'\n'$1 Article(s) unlocked': '$1 статья(и) разблокированы'\n'$1 Article(s) not unlocked': '$1 статья(и) не разблокированы'\n'$1 Article(s) duplicated': '$1 статья(и) дублированы.'\n'Download file': 'Загрузить файл'\n'You do not have the right to delete articles.': 'Вы не имеете прав доступа для удаления статьи.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Вы не имеете прав доступа для изменения состояние этой статьи. Будучи отправленной статья может быть изменена только уполномоченным пользователем.'\n'Use Map': 'Использовать карту'\n'Toggle: On Section Page': 'Маркер На странице рубрики'\n'Toggle: On Front Page': 'Маркер На главной странице'\n'Toggle: Comments': 'Маркер Комментарии'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Эта статья была заблокирована $1 ($2) $3 минут назад.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Эта статья была заблокирована $1 ($2) $3 часов и $4 минут назад.'\n'Status: Submit': 'Статус: Отправить'\n'Status: Set New': 'Статус: Новая'\n'Status: Publish': 'Статус: Утвердить'\nSize: Размер\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Показано _START_ до _END_ / _TOTAL_ записей'\n'Show / hide columns': 'Показать / скрыть колонки'\n'Select some article first.': 'Выберите сначала несколько статей.'\n'Select action': 'Выбрать действие'\n'Save order': 'Сохранить порядок следования.'\n'Reset all filters': 'Переустановить все фильтры'\n'Published before': 'Опубликованы до'\n'Published after': 'Опубликованы после'\n'Publish date': 'Дата публикации'\n'Publish Schedule': 'Расписание публикаций'\n'Publish Date': 'Дата опубликования'\n'Order updated.': 'Порядок обновлен.'\n'Open in browser': 'Открыть в браузере'\n'No sections found': 'Не выбрана ни одна из рубрик'\n'No records found.': 'Не выбрана ни одна из записей'\n'No publications found': 'Не выбрано ни одно из изданий'\n'No issues found': 'Не выбран ни один из выпусков'\n'No entries to show': 'Нет записей для просмотра'\nLocations: Местонахождения\n'Loading data': 'Загрузка данных'\n'Last modified': 'Последние изменения'\n'Last Modified': 'Последние изменения'\nLast: Последняя\nFirst: Первая\n'Filter by...': 'Фильтр по...'\nFilter: Фильтр\nFilename: 'Имя файла'\n'Duplicate to another section': 'Дублировать в другую рубрику'\n'Display _MENU_ records': 'Отобразить _MENU_ записи'\nCreator: Создатель\n'Create Date': 'Дата создания'\n'Article status set to $1': 'Статус статьи установлен в $1'\n'Are you sure you want to delete selected articles?': 'Вы уверены, что хотите удалить выбранные файлы?'\n'All Sections': 'Все рубрики'\n'All Publications': 'Все издания'\n'All Issues': 'Все выпуски'\nAdded: Добавлена\n'Access denied.': 'Отказано в доступе.'\n'$1 toggled.': '$1 изменено.'\n'$1 articles have been removed': '$1 статей были удалены'\n' - filtering from _MAX_ records': 'фильтрация от _MAX_ записей'\n'Search for creators': 'Поиск создателей'\n'No matches.': 'Совпадений не найдено.'\nSearching...: 'Идет поиск...'\n'Minimum input of characters: $1': 'Минимальный ввод знаков: $1'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.sh.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: 'Web kod'\n'View article': 'Pogledaj tekst'\nSource: Izvor\n'Select type': 'Izaberi tip'\nOn: Uključeno\nOff: Isključeno\nTitle: Naslov\n'No video playback capabilities, please download the video below': 'Bez mogućnosti reprodukcije videa, molim daunloudujte video'\n'Article status set to $1 for $2 articles': 'Status teksta postavljen na $1 za $2 tekstova'\n'Article status not set to $1 for $2 articles': 'Status teksta nije postavljen na $1 za $2 tekstova'\n'$1 toggled for $2 articles.': '$1 promenjeno za $2 tekstova'\n'$1 not toggled for $2 articles.': '$1 nije promenjeno za $2 tekstova'\n'$1 not toggled for $2  articles.': '$1 nije promenjeno za $2 tekstova.'\n'$1 articles have not been removed': '$1 tekstova nije uklonjeno'\n'$1 Article(s) unlocked': '$1 tekst(ova) otključano'\n'$1 Article(s) not unlocked': '$1 tekst(ova) nije otključano'\n'$1 Article(s) duplicated': '$1 tekst(ova) duplirano'\n'Download file': 'Preuzmi fajl'\n'You do not have the right to delete articles.': 'Nemate pravo da brišete tekstove.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Nemate pravo da menajte status teksta. Predatom tekstu status može promeniti samo ovlašćeni korisnik.'\n'Use Map': 'Koristi mapu'\n'Toggle: On Section Page': 'Izmeni Na strani rubrike'\n'Toggle: On Front Page': 'Izmeni Na početnoj strani'\n'Toggle: Comments': 'Izmeni Komentari'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Tekst je zaključan od strane $1 ($2) pre $3 minut(a).'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Tekst je zaključan od strane $1 ($2) pre $3 čas(ova) i $4 minut(a).'\n'Status: Submit': 'Status: predaj'\n'Status: Set New': 'Status: Novi'\n'Status: Publish': 'Status: objavljen'\nSize: Veličina\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Prikazano _START_ do _END_ od _TOTAL_ unosa'\n'Show / hide columns': 'Prikaži/sakri kolone'\n'Select some article first.': 'Prvo izaberite neke tekstove'\n'Select action': 'Izaberite akciju'\n'Save order': 'Snimi redosled'\n'Reset all filters': 'Poništi sve filtere'\n'Published before': 'Objavljeno pre'\n'Published after': 'Objavljeno posle'\n'Publish date': 'Datum objavljivanja'\n'Publish Schedule': 'Raspored objavljivanja'\n'Publish Date': 'Datum objavljivanja'\n'Order updated.': 'Redosled izmenjen.'\n'Open in browser': 'Otvori u pretraživaču'\n'No sections found': 'Nema rubrika'\n'No records found.': 'Nema zapisa'\n'No publications found': 'Nema publikacija'\n'No issues found': 'Nema izdanja'\n'No entries to show': 'Nema unosa za prikaz'\nLocations: Lokacije\n'Loading data': Učitavanje\n'Last modified': Izmenjeno\n'Last Modified': Izmenjeno\nLast: Poslednji\nFirst: Prvi\n'Filter by...': 'Filtriraj po...'\nFilter: Filter\nFilename: 'Naziv fajla'\n'Duplicate to another section': 'Dupliraj u drugu rubriku'\n'Display _MENU_ records': 'Prikaži _MENU_ zapise'\nCreator: Napravio\n'Create Date': 'Datum pravljenja'\n'Article status set to $1': 'Status članka je podešen u $1'\n'Are you sure you want to delete selected articles?': 'Da li ste sigurni da želite da obrišete izabrane tekstove?'\n'All Sections': 'Sve rubrike'\n'All Publications': 'API publikacije'\n'All Issues': 'Sva izdanja'\nAdded: Dodato\n'Access denied.': 'Pristup zabranjen.'\n'$1 toggled.': '$1 izmenjeno u suprotno.'\n'$1 articles have been removed': '$1 tekstova je uklonjeno'\n' - filtering from _MAX_ records': '- filtriranje među _MAX_ zapisa'\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.sq.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: null\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': null\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: null\nFirst: null\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.sr.yml",
    "content": "'Show hidden Article Types?': 'Приказ скривених типова текста?'\nWebcode: 'Веб код'\n'View article': 'Погледај текст'\nSource: Извор\n'Select type': 'Изабери тип'\nOn: Укључено\nOff: Искључено\nTitle: Наслов\n'No video playback capabilities, please download the video below': 'Без могућности репродукције видеа, молим преузмите видео'\n'Article status set to $1 for $2 articles': 'Статус текста постављен на $1за $2 текстова'\n'Article status not set to $1 for $2 articles': 'Статус текстс није постављен на $1за $2 текстова'\n'$1 toggled for $2 articles.': '$1 промењено за $2 текстова'\n'$1 not toggled for $2 articles.': '$1 није промењено за $2 текстова'\n'$1 not toggled for $2  articles.': '$1 није промењено за $2 текстова.'\n'$1 articles have not been removed': '$1 текстова није уклоњено'\n'$1 Article(s) unlocked': '$1 текст(ова) откључано'\n'$1 Article(s) not unlocked': '$1 текст(ова) није откључано'\n'$1 Article(s) duplicated': '$1 текст(ова) дуплирано'\n'Download file': 'Преузми фајл'\n'You do not have the right to delete articles.': 'Немате право да бришете текстове.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Немате право да мењате статус текста. Предатом тексту статус може променити само овлашћени корисник.'\n'Use Map': 'Користи мапу'\n'Toggle: On Section Page': 'Измени На страни рубрике'\n'Toggle: On Front Page': 'Измени На почетној страни'\n'Toggle: Comments': 'Измени Коментари'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Текст је закључан од стране $1 ($2) пре $3 минут(а)'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Текст је закључан од стране $1 ($2) пре $3 час(ова) и $4 минут(а)'\n'Status: Submit': 'Статус: предат'\n'Status: Set New': 'Статус: нови'\n'Status: Publish': 'Статус: објављен'\nSize: Величина\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Приказано _START_ до _END_ од _TOTAL_ уноса'\n'Show / hide columns': 'Прикажи/сакри колоне'\n'Select some article first.': 'Прво изаберите неке текстове'\n'Select action': 'Изаберите акцију'\n'Save order': 'Сними редослед'\n'Reset all filters': 'Поништи све филтере'\n'Published before': 'Објављено пре'\n'Published after': 'Објављено после'\n'Publish date': 'Датум објављивања'\n'Publish Schedule': 'Распоред објављивања'\n'Publish Date': 'Датум објављивања'\n'Order updated.': 'Редослед измењен'\n'Open in browser': 'Отвори у претраживачу'\n'No sections found': 'Нема рубрика'\n'No records found.': 'Нема записа'\n'No publications found': 'Нема публикација'\n'No issues found': 'Нема издања'\n'No entries to show': 'Нема уноса за приказ'\nLocations: Локације\n'Loading data': Учитавање\n'Last modified': Измењено\n'Last Modified': Измењено\nLast: Последњи\nFirst: Први\n'Filter by...': 'Филтрирај по...'\nFilter: Филтер\nFilename: 'Назив фајла'\n'Duplicate to another section': 'Дуплирај у другу рубрику'\n'Display _MENU_ records': 'Прикажи _MENU_ записе'\nCreator: Направио\n'Create Date': 'Датум прављења'\n'Article status set to $1': 'Статус текста је подешен у $1'\n'Are you sure you want to delete selected articles?': 'Да ли сте сигурни да желите да обришете изабране текстове?'\n'All Sections': 'Све рубрике'\n'All Publications': 'АПИ публикације'\n'All Issues': 'Сва издања'\nAdded: Додато\n'Access denied.': 'Приступ забрањен'\n'$1 toggled.': '$1 измењено у спротно.'\n'$1 articles have been removed': '$1 текстова уклоњено'\n' - filtering from _MAX_ records': '- филтрирање међу _MAX_ записа'\n'Search for creators': 'Тражи ауторе'\n'No matches.': 'Нема резултата.'\nSearching...: Претраживање...\n'Minimum input of characters: $1': 'Најмањи број карактера: $1'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.sv.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: null\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': 'Du har inte rätt att radera artiklar'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Du har inte rätt att ändra den här artikelns status. Så fort en artikel har skickats in kan den bara ändras av behöriga användare.'\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': Publiceringsschema\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: Sista\nFirst: Första\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.tr.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: null\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': null\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: null\nFirst: null\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.uk.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: Web-код\n'View article': 'Перегляд статті'\nSource: Джерело\n'Select type': 'Виберіть тип'\nOn: Вкл.\nOff: Викл.\nTitle: Заголовок\n'No video playback capabilities, please download the video below': 'Немає можливості відтворення відео, будь ласка, завантажити відео нижче'\n'Article status set to $1 for $2 articles': 'Статус статті встановлений в з  $1 на $2'\n'Article status not set to $1 for $2 articles': 'Статус статті не встановлений з  $1 for $2'\n'$1 toggled for $2 articles.': '$1 перемикається з статею $2 '\n'$1 not toggled for $2 articles.': '$1 не перемикається зі статею $2 '\n'$1 not toggled for $2  articles.': '$ 1 не перемикається на $ 2 статті.'\n'$1 articles have not been removed': 'стаття $1 не була видалена'\n'$1 Article(s) unlocked': 'стаття $1 розблокована'\n'$1 Article(s) not unlocked': 'стаття $1 не була розблокована'\n'$1 Article(s) duplicated': 'стаття $1 продубльована'\n'Download file': 'Завантажити файл'\n'You do not have the right to delete articles.': 'Ви не маєте права видаляти статті.'\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': 'Ви не маєте права змінювати стан статті. Відправлена стаття може бути змінена тільки уповноваженим користувачем.'\n'Use Map': 'Використовуйте мапу'\n'Toggle: On Section Page': 'Селектор: На секцію Сторінки'\n'Toggle: On Front Page': 'Селектор: На Головну'\n'Toggle: Comments': 'Селектор: Коментарі'\n'The article has been locked by $1 ($2) $3 minute(s) ago.': 'Ця стаття була заблокована $1 ($2) $3 хвилин тому.'\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': 'Ця стаття була заблокована $1 ($2) $3 годин та $4 хвилин тому.'\n'Status: Submit': 'Статус: Відіслано'\n'Status: Set New': 'Статус: Встановити Нове'\n'Status: Publish': 'Статус: Публікації'\nSize: Розмір\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Показані від початку до кінця, від загального числа записів'\n'Show / hide columns': 'Показати / Приховати колонки'\n'Select some article first.': 'Поперше виберіть будь-яку статтю.'\n'Select action': 'Виберіть дію'\n'Save order': 'Зберегти порядок'\n'Reset all filters': 'Не використовувати фільти'\n'Published before': 'Опубліковані до'\n'Published after': 'Опубліковані після'\n'Publish date': 'Дата опублікування'\n'Publish Schedule': 'Розклад публікацій'\n'Publish Date': 'Дата публікації'\n'Order updated.': 'Порядок оновлено'\n'Open in browser': 'Відкити у браузері'\n'No sections found': 'Не вибрано секцію'\n'No records found.': 'Немає записів'\n'No publications found': 'Публікацій не знайдено'\n'No issues found': 'Випусків не знайдено'\n'No entries to show': 'Немає записів для відображення'\nLocations: Місця\n'Loading data': 'Завантаження даних'\n'Last modified': 'Останні зміни'\n'Last Modified': 'Змінено:'\nLast: Останнє\nFirst: Перше\n'Filter by...': 'Сортувати за...'\nFilter: Фільтр\nFilename: 'Ім’я файлу'\n'Duplicate to another section': 'Дублювання в інший розділ'\n'Display _MENU_ records': 'Показати _MENU_ записи'\nCreator: Автор\n'Create Date': 'Дата створення'\n'Article status set to $1': 'Статус статті встановлено в $1'\n'Are you sure you want to delete selected articles?': 'Ви впевнені що хочете видалити вибрані статті'\n'All Sections': 'Всі секції'\n'All Publications': 'Всі публікації'\n'All Issues': 'Всі випуски'\nAdded: Додано\n'Access denied.': 'Доступ заборонено'\n'$1 toggled.': '$1 змінено.'\n'$1 articles have been removed': ' $1 стаття була видалена.'\n' - filtering from _MAX_ records': 'фільтрація від _MAX_ записів'\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.vi.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: null\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': null\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: null\nFirst: null\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.zh.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: 标题\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': null\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: 最后\nFirst: '最初 '\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': '拒绝访问。 '\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/library.zh_TW.yml",
    "content": "'Show hidden Article Types?': null\nWebcode: null\n'View article': null\nSource: null\n'Select type': null\nOn: null\nOff: null\nTitle: null\n'No video playback capabilities, please download the video below': null\n'Article status set to $1 for $2 articles': null\n'Article status not set to $1 for $2 articles': null\n'$1 toggled for $2 articles.': null\n'$1 not toggled for $2 articles.': null\n'$1 not toggled for $2  articles.': null\n'$1 articles have not been removed': null\n'$1 Article(s) unlocked': null\n'$1 Article(s) not unlocked': null\n'$1 Article(s) duplicated': null\n'Download file': null\n'You do not have the right to delete articles.': null\n'You do not have the right to change this article status. Once submitted an article can only be changed by authorized users.': null\n'Use Map': null\n'Toggle: On Section Page': null\n'Toggle: On Front Page': null\n'Toggle: Comments': null\n'The article has been locked by $1 ($2) $3 minute(s) ago.': null\n'The article has been locked by $1 ($2) $3 hour(s) and $4 minute(s) ago.': null\n'Status: Submit': null\n'Status: Set New': null\n'Status: Publish': null\nSize: null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Show / hide columns': null\n'Select some article first.': null\n'Select action': null\n'Save order': null\n'Reset all filters': null\n'Published before': null\n'Published after': null\n'Publish date': null\n'Publish Schedule': null\n'Publish Date': null\n'Order updated.': null\n'Open in browser': null\n'No sections found': null\n'No records found.': null\n'No publications found': null\n'No issues found': null\n'No entries to show': null\nLocations: null\n'Loading data': null\n'Last modified': null\n'Last Modified': null\nLast: null\nFirst: null\n'Filter by...': null\nFilter: null\nFilename: null\n'Duplicate to another section': null\n'Display _MENU_ records': null\nCreator: null\n'Create Date': null\n'Article status set to $1': null\n'Are you sure you want to delete selected articles?': null\n'All Sections': null\n'All Publications': null\n'All Issues': null\nAdded: null\n'Access denied.': null\n'$1 toggled.': null\n'$1 articles have been removed': null\n' - filtering from _MAX_ records': null\n'Search for creators': null\n'No matches.': null\nSearching...: null\n'Minimum input of characters: $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.ar.yml",
    "content": "show: أظهر\nhide: أخف\nTitle: العنوان\n'Resource Type:': 'نوع المورد:'\n'Resource Type': 'نوع المورد'\nResource: مورد\nDiff: الفرق\n'Broken data': 'معلومات مكسرة'\n'Action Type:': 'نوع الإجراء'\n'No logs.': 'لا سجلات'\nUser: المستخدم\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.az.yml",
    "content": "show: göstər\nhide: gizlə\nTitle: Başlıq\n'Resource Type:': 'Mənbə Növü:'\n'Resource Type': 'Mənbə Növü'\nResource: Mənbə\nDiff: Fərq\n'Broken data': 'Sındırılmış məlumat'\n'Action Type:': 'Addım Növü:'\n'No logs.': 'Giriş yoxdur.'\nUser: İstifadəçi\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.be.yml",
    "content": "show: Паказаць\nhide: Схаваць\nTitle: Загаловак\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: Карыстальнік\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.bn.yml",
    "content": "show: null\nhide: null\nTitle: null\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.cs.yml",
    "content": "show: zobrazit\nhide: skrýt\nTitle: Název\n'Resource Type:': 'Typ zdroje:'\n'Resource Type': 'Typ zdroje'\nResource: Zdroj\nDiff: Diff\n'Broken data': 'Nesouvislá data'\n'Action Type:': 'Typ akce:'\n'No logs.': 'Žádné záznamy.'\nUser: Uživatel\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.da.yml",
    "content": "show: vis\nhide: skjul\nTitle: Titel\n'Resource Type:': 'Ressource type:'\n'Resource Type': 'Ressource type'\nResource: Ressource\nDiff: Diff\n'Broken data': 'Ødelagt data'\n'Action Type:': 'Handlings type:'\n'No logs.': 'Ingen logfiler.'\nUser: Bruger\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.de.yml",
    "content": "show: anzeigen\nhide: verbergen\nTitle: Titel\n'Resource Type:': Ressourcentyp\n'Resource Type': Ressourcentyp\nResource: Ressource\nDiff: Diff\n'Broken data': 'Kaputte Daten'\n'Action Type:': 'Aktionstyp: '\n'No logs.': 'Keine Logs. '\nUser: Benutzer\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.de_AT.yml",
    "content": "show: anzeigen\nhide: verbergen\nTitle: Titel\n'Resource Type:': Ressourcentyp\n'Resource Type': Ressourcentyp\nResource: Ressource\nDiff: Diff\n'Broken data': 'Kaputte Daten'\n'Action Type:': 'Aktionstyp: '\n'No logs.': 'Keine Logs. '\nUser: Benutzer\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.el.yml",
    "content": "show: εμφάνιση\nhide: απόκρυψη\nTitle: Τίτλος\n'Resource Type:': 'Τύπος Πόρου:'\n'Resource Type': 'Τύπος Πόρου'\nResource: Πόρος\nDiff: Diff\n'Broken data': 'Σπασμένα δεδομένα'\n'Action Type:': 'Τύπος Ενέργειας:'\n'No logs.': 'Δεν υπάρχουν logs.'\nUser: Χρήστης\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.en.yml",
    "content": "show: show\nhide: hide\nTitle: Title\n'Resource Type:': 'Resource Type:'\n'Resource Type': 'Resource Type'\nResource: Resource\nDiff: Diff\n'Broken data': 'Broken data'\n'Action Type:': 'Action Type:'\n'No logs.': 'No logs.'\nUser: User\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.en_GB.yml",
    "content": "show: show\nhide: hide\nTitle: Title\n'Resource Type:': 'Resource Type:'\n'Resource Type': 'Resource Type'\nResource: Resource\nDiff: Diff\n'Broken data': 'Broken data'\n'Action Type:': 'Action Type:'\n'No logs.': 'No logs.'\nUser: User\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.es.yml",
    "content": "show: mostrar\nhide: ocultar\nTitle: Tìtulo\n'Resource Type:': 'Tipo de recurso:'\n'Resource Type': 'Tipo de recurso'\nResource: Recurso\nDiff: Diff\n'Broken data': 'Datos incompletos'\n'Action Type:': 'Tipo de Acción:'\n'No logs.': 'Sin logs.'\nUser: Usuario\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.es_AR.yml",
    "content": "show: null\nhide: null\nTitle: Título\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.fa.yml",
    "content": "show: null\nhide: null\nTitle: null\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.fa_AF.yml",
    "content": "show: null\nhide: null\nTitle: null\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.fr.yml",
    "content": "show: null\nhide: null\nTitle: Titre\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: Utilisateur\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.he.yml",
    "content": "show: null\nhide: null\nTitle: null\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.hr.yml",
    "content": "show: null\nhide: null\nTitle: null\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: Korisnik\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.hu.yml",
    "content": "show: megjelenítés\nhide: elrejtés\nTitle: Cím\n'Resource Type:': 'Erőforrás típusa:'\n'Resource Type': 'Erőforrás típusa'\nResource: Erőforrás\nDiff: Eltérés\n'Broken data': 'Hibás adat'\n'Action Type:': 'Művelettípus:'\n'No logs.': 'Nincsenek naplók.'\nUser: Felhasználó\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.hy.yml",
    "content": "show: null\nhide: null\nTitle: Վերնագիր\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.hy_AM.yml",
    "content": "show: null\nhide: null\nTitle: Վերնագիր\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.id.yml",
    "content": "show: null\nhide: null\nTitle: null\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.it.yml",
    "content": "show: mostra\nhide: nascondi\nTitle: Titolo\n'Resource Type:': 'Tipo risorsa:'\n'Resource Type': 'Tipo risorsa'\nResource: Risorsa\nDiff: Diff\n'Broken data': 'Dati danneggiati'\n'Action Type:': 'Tipo azione:'\n'No logs.': 'Nessun log.'\nUser: Utente\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.ka.yml",
    "content": "show: ჩვენება\nhide: დამალვა\nTitle: სათაური\n'Resource Type:': 'რესურსის ტიპი:'\n'Resource Type': 'რესურსის ტიპი'\nResource: 'რესურსი '\nDiff: შედარება\n'Broken data': 'ხარვეზული მონაცემი'\n'Action Type:': 'მოქმედების ტიპი: '\n'No logs.': 'აღრიცხვა არ არსებობს'\nUser: მომხმარებელი\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.ko.yml",
    "content": "show: null\nhide: null\nTitle: null\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: '사용자 '\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.ku.yml",
    "content": "show: null\nhide: null\nTitle: null\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.lv.yml",
    "content": "show: null\nhide: null\nTitle: null\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.mr.yml",
    "content": "show: null\nhide: null\nTitle: null\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.nb_NO.yml",
    "content": "show: null\nhide: null\nTitle: null\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.nl.yml",
    "content": "show: null\nhide: null\nTitle: null\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: Gebruiker\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.pa.yml",
    "content": "show: null\nhide: null\nTitle: null\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.pl.yml",
    "content": "show: pokaż\nhide: schowaj\nTitle: Tytuł\n'Resource Type:': 'Typ zasobu:'\n'Resource Type': 'Typ zasobu'\nResource: Zasób\nDiff: Róznica\n'Broken data': 'Dane uszkodzone'\n'Action Type:': 'Typ akcji:'\n'No logs.': 'Brak logów.'\nUser: Użytkownik\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.ps.yml",
    "content": "show: null\nhide: null\nTitle: null\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.pt.yml",
    "content": "show: null\nhide: null\nTitle: null\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: Utilizador\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.pt_BR.yml",
    "content": "show: mostrar\nhide: esconder\nTitle: Título\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: Utilizador\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.ro.yml",
    "content": "show: arată\nhide: ascunde\nTitle: null\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: Utilizator\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.ru.yml",
    "content": "show: Показывать\nhide: Спрятать\nTitle: Заголовок\n'Resource Type:': 'Тип источника:'\n'Resource Type': 'Тип источника'\nResource: Источник\nDiff: Разница\n'Broken data': 'Неполные данные'\n'Action Type:': 'Тип действия'\n'No logs.': 'Нет записей в журнале.'\nUser: Пользователь\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.sh.yml",
    "content": "show: prikaži\nhide: sakri\nTitle: Naslov\n'Resource Type:': 'Tip resursa:'\n'Resource Type': 'Tip resursa'\nResource: Resurs\nDiff: Razlika\n'Broken data': 'Oštećeni podaci'\n'Action Type:': 'Tip radnje:'\n'No logs.': 'Nema logova.'\nUser: Korisnik\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.sq.yml",
    "content": "show: null\nhide: null\nTitle: null\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.sr.yml",
    "content": "show: прикажи\nhide: сакри\nTitle: Наслов\n'Resource Type:': 'Тип ресурса:'\n'Resource Type': 'Тип ресурса'\nResource: Ресурс\nDiff: Разлика\n'Broken data': 'Оштећени подаци'\n'Action Type:': 'Тип радње:'\n'No logs.': 'Нема логова'\nUser: Корисник\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.sv.yml",
    "content": "show: null\nhide: null\nTitle: null\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: Användare\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.tr.yml",
    "content": "show: null\nhide: null\nTitle: null\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.uk.yml",
    "content": "show: Показати\nhide: Приховати\nTitle: Заголовок\n'Resource Type:': 'Тип джерела:'\n'Resource Type': 'Тип джерела'\nResource: Джерело\nDiff: Різниця\n'Broken data': 'Неповні дані'\n'Action Type:': 'Тип дії'\n'No logs.': 'Немає записів у журналі.'\nUser: Користувач\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.vi.yml",
    "content": "show: null\nhide: null\nTitle: null\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.zh.yml",
    "content": "show: null\nhide: null\nTitle: 标题\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: '&#29992;&#25143;'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/logs.zh_TW.yml",
    "content": "show: null\nhide: null\nTitle: null\n'Resource Type:': null\n'Resource Type': null\nResource: null\nDiff: null\n'Broken data': null\n'Action Type:': null\n'No logs.': null\nUser: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.ar.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: 'عروض الشرائح'\n'You cant update used files.': 'لا يمكنك تحديث الملفات المستخدمة.'\nSource: المصدر\nLocal: محلي\n'Items updated.': 'تم تحديث البنود'\nFeedback: 'التغذية المرتدة'\n'Do you want to update unused only?': 'هل تريد تحديث غير المستخدم فقط؟'\n'Disapprove selected': 'إرفض المحدد'\n'Are you sure you want to update selected items?': 'هل أنت متأكد أنك تريد تحديث البنود المحددة؟'\n'Approve selected': 'وافق على الاختيار'\n'Image files': 'ملقات صور'\n'Fix all thumbnails': 'أصلح كل الصور المصغرة'\n'You do not have the right to add files.': 'ليس لديك الحق في إضافة ملفات.'\n'Should this file only be available for this translation of the article, or for all translations?': 'هل يجب أن يكون هذا الملف متوفر لهذه الترجمة من المقال، أم لجميع الترجمات؟'\n'Please enter a description for the file: $1.': 'الرجاء إدخال وصف للملف: $ 1.'\n'Only this translation': 'فقط هذه الترجمة'\n'No files for multi editing.': 'لا ملفات للتحرير المتزامن'\n'Edit files': 'عدل الملفات'\n'Change file information': 'غير معلومات الملف'\n'All translations': 'كل الترجمات'\n'Save All': 'إحفظ الكل'\nFiles: ملفات\n'You cant delete used files.': 'لا يمكنك أن تحذف ملفات مستخدمة'\n'Do you want to delete unused only?': 'هل تريد أن تحذف غير المستخدم فقط؟'\n'View attachment': 'إعرض المرفق'\n'Select some items first.': 'حدد بعض البنود أولا .'\n'Open in the browser': 'إفتح في المتصفح'\n'Media Archive': 'أرشيف إعلامي'\n'Last modified': 'آخر تعديل'\n'Items deleted.': 'تم حذف البنود.'\n'File uploaded.': 'تم رفع الملف'\n'Do you want this file to open in the users browser, or to automatically download?': 'هل تريد لهذا الملف أن يفتح بمتصفح المستخدم ام يبدأ بتنزيله بشكل تلقائي؟'\n'Delete selected': 'إحذف المحدد'\nCreated: 'تم الإنشاء'\nCharset: 'جدولة الحروف'\n'Change attachment information': 'غير معلومات المرفق'\n'Automatically download': 'حمل بشكل تلقائي'\n'Attachment updated.': 'تم تحديث الموفق'\n'Are you sure you want to delete selected items?': 'هل أنت متأكد أنك تريد أن تحذف البنود المختارة؟'\n'Add new file': 'أضف ملف جديد'\n'You do not have the right to add images.': 'ليس لديك الحق في إضافة صور'\n'Use for all': 'استخدم للكل'\n'Specify image url if you want to load it.': 'حدد عنوان الكتروني للصورة اذا اردت أن تحميلها'\nSize: الحجم\n'No images for multi editing.': 'لا صور لتحرير متزامن'\n'Images updated.': 'تم تحديث الصور'\n'Edit images': 'عدل الصور'\n'$1 files uploaded.': 'تم تحديث $1 صور(ة)'\n'Unable to add new image.': 'غير قادر على إضافة صورة جديدة'\n'Image updated.': 'تم تحديث الصورة'\n'Image $1 deleted.': 'تم حذف الصورة $1.'\n'Image is in use, it cannot be deleted.': 'الصورة قيد الاستخدام ولا يمكن حذفها'\n'You must select an image file to upload.': 'يجب عليك أن تختار ملف صورة من أجل الرفع'\n'Add new image': 'أضف صورة جديدة'\n'Delete image $1': 'إحذف الصورة $1'\n'Used in articles': 'مستخدم في المقالات'\n'View image': 'إعرض الصورة'\n'Change image information': 'غير معلومات الصورة'\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.az.yml",
    "content": "'No thumbnails were fixed.': 'Heç bir eskiz düzəldilməyib.'\n'Missing thumbnails fixed.': 'Yerdə qalan eskizlər düzəldi.'\nSlideshows: Slayd-şoular\n'You cant update used files.': 'İstifadə edilmiş faylları yeniləyə bilməzsən.'\nSource: Mənbə\nLocal: Yerli\n'Items updated.': 'Elementlər yekləndi.'\nFeedback: Şərh\n'Do you want to update unused only?': 'Yalnış istifadə edilməmişləri yeniləmək istəyirsən?'\n'Disapprove selected': 'Təsdiqlənməmiş seçilib'\n'Are you sure you want to update selected items?': 'Seçilmiş elementləri yeniləmək istədiyinə əminsən?'\n'Approve selected': 'Təsdiqlənmiş seçilib'\n'Image files': 'Şəkil faylları'\n'Fix all thumbnails': 'Bütün eskizləri düzəlt'\n'You do not have the right to add files.': 'Fayl əlavə etməyə ixtiyarın yoxdur.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Bu fayl məqalənin yalnız mövcud tərcüməsinə, yoxsa bütün tərcümələrinə aiddir?'\n'Please enter a description for the file: $1.': 'Lütfən, fayl üçün izah daxil et: $1.'\n'Only this translation': 'Yalnız bu tərcümə'\n'No files for multi editing.': 'Çoxsaylı dəyişiklik üçün fayl yoxdur.'\n'Edit files': 'Faylları dəyiş'\n'Change file information': 'Fayl məlumatını dəyiş'\n'All translations': 'Bütün tərcümələr'\n'Save All': 'Hamısını Saxla'\nFiles: Fayllar\n'You cant delete used files.': 'İstifadə edilmiş faylları silə bilərsən.'\n'Do you want to delete unused only?': 'Yalnız istifadə edilməmişləri silmək istəyirsən?'\n'View attachment': 'Əlavə fayla bax'\n'Select some items first.': 'Əvvəl bəzi elementləri seç.'\n'Open in the browser': 'Brauzerdə aç'\n'Media Archive': 'Mətbuat Arxivi'\n'Last modified': 'Son redaktələr'\n'Items deleted.': 'Elementlər silindi.'\n'File uploaded.': 'Fayl yükləndi.'\n'Do you want this file to open in the users browser, or to automatically download?': 'Bu faylın istifadəçi brauzerdə açılmasını, yoxsa avtomatik endirilməsini istəyirsən?'\n'Delete selected': 'Seçilmişi sil'\nCreated: Yaradıldı\nCharset: Şifrələmə\n'Change attachment information': 'Əlavə fayl məlumatını dəyiş'\n'Automatically download': 'Avtomatik endirilmə'\n'Attachment updated.': 'Əlavə edilmiş fayl yeniləndi.'\n'Are you sure you want to delete selected items?': 'Seçilmiş elementləri silmək istədiyinə əminsən?'\n'Add new file': 'Yeni fayl əlavə et'\n'You do not have the right to add images.': 'Şəkil əlavə etməyə ixtiyarın yoxdur.'\n'Use for all': 'Hamısı üçün istifadə et'\n'Specify image url if you want to load it.': 'Şəkli yükləmək istəyirsənsə, onun url-ini müəyyən et.'\nSize: Ölçü\n'No images for multi editing.': 'Çoxsaylı dəyişiklik üçün şəkil yoxdur.'\n'Images updated.': 'Şəkillər yeniləndi.'\n'Edit images': 'Şəkilləri dəyiş'\n'$1 files uploaded.': '$1 faylı yükləndi.'\n'Unable to add new image.': 'Yeni şəkil əlavə etmək mümkün deyil.'\n'Image updated.': 'Şəkil yeniləndi.'\n'Image $1 deleted.': '$1 şəkli silindi.'\n'Image is in use, it cannot be deleted.': 'Şəkil istifadədədir, o silinə bilməz.'\n'You must select an image file to upload.': 'Yükləmək üçün şəkil seçməlisiniz.'\n'Add new image': 'Yeni şəkil əlavə et'\n'Delete image $1': '$1 şəklini sil'\n'Used in articles': 'Məqalələrdə istifadə edilib'\n'View image': 'Şəkilə bax'\n'Change image information': 'Şəkil məlumatını dəyiş'\n'Photographer URL': 'Fotoqraf URL-i'\n'Add website url starting with http://': 'http:// ilə başlayan yeni vebsayt urı-i'\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.be.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: Слайдшоў\n'You cant update used files.': 'Вы не можаце абнавіць выкарыстаныя файлы.'\nSource: Крыніца\nLocal: Мясцовы\n'Items updated.': 'Пункты абноўленыя.'\nFeedback: 'Зваротная сувязь'\n'Do you want to update unused only?': 'Вы жадаеце абнавіць толькі нескарыстанае?'\n'Disapprove selected': 'Не прымаць абранае'\n'Are you sure you want to update selected items?': 'Вы ўпэўненыя, што жадаеце абнавіць абраныя пункты?'\n'Approve selected': 'Прыняць абранае'\n'Image files': 'Файлы выяваў'\n'Fix all thumbnails': 'Выправіць усе эскізы'\n'You do not have the right to add files.': 'Вы ня маеце права дадаваць файлы.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Гэты файл павiнен быць даступны толькi для гэтага перакладу цi для ўсiх перакладаў?'\n'Please enter a description for the file: $1.': 'Калі ласка, увядзіце апісанне файла: $1.'\n'Only this translation': 'Толькi гэты пераклад'\n'No files for multi editing.': 'Няма файлаў для агульнага рэдагавання.'\n'Edit files': 'Рэдагаваць файлы'\n'Change file information': 'Зьмянiць iнфармацыю аб файле'\n'All translations': 'Усе пераклады'\n'Save All': 'Захаваць усё'\nFiles: Файлы\n'You cant delete used files.': 'Вы не можаце выдаліць  файлы, якія выкарыстоўваюцца.'\n'Do you want to delete unused only?': 'Вы жадаеце выдаліць толькі нявыкарыстаныя файлы?'\n'View attachment': 'Паказаць прымацаваны файл'\n'Select some items first.': 'Выберыце спачатку некалькі элементаў'\n'Open in the browser': 'Адкрыць у браўзэре'\n'Media Archive': Медыя-архіў\n'Last modified': 'Апошнія змяненні'\n'Items deleted.': 'Элементы выдаленыя.'\n'File uploaded.': 'Файл загружаны.'\n'Do you want this file to open in the users browser, or to automatically download?': 'Цi Вы жадаеце, штоб гэты файл адкрываўся ў браўзэре карыстальнiка цi аўтаматычна загружаўся'\n'Delete selected': 'Выдаліць абраныя'\nCreated: Створаная\nCharset: Кадыроўка\n'Change attachment information': 'Змяніць інфармацыю аб далучанай файле'\n'Automatically download': 'Аўтаматычная загрузка'\n'Attachment updated.': 'Далучаны файл абноўлены.'\n'Are you sure you want to delete selected items?': 'Вы ўпэўненыя, што жадаеце выдаліць абраныя элементы?'\n'Add new file': 'Дадаць новы файл'\n'You do not have the right to add images.': 'Вы ня маеце права  дадаваць графiчныя файлы.'\n'Use for all': 'Выкарыстоўваць для ўсіх'\n'Specify image url if you want to load it.': 'Пазначце URL выявы, калі жадаеце загрузіць яе.'\nSize: Памер\n'No images for multi editing.': 'Няма малюнкаў для многофайлового рэдагавання.'\n'Images updated.': 'Абнаўленне малюнкаў.'\n'Edit images': 'Рэдагаваць выявы'\n'$1 files uploaded.': 'Файлы $ 1 загружаныя.'\n'Unable to add new image.': 'Немагчыма дадаць новы графiчны файл.'\n'Image updated.': 'Графiчны файл абноўлены.'\n'Image $1 deleted.': 'Графiчны файл $1 выдалены.'\n'Image is in use, it cannot be deleted.': 'Графiчны файл выкарыстоўваецца i ня можа быць выдалены.'\n'You must select an image file to upload.': 'Вы павiнны выбраць графiчны файл для загрузкi.'\n'Add new image': 'Дадаць новы графiчны файл.'\n'Delete image $1': 'Выдалiць графiчны файл $1'\n'Used in articles': 'Выкарыстана ў артыкулах'\n'View image': 'Прагляд графiчнага файлу'\n'Change image information': 'Змянiць iнфармацыю аб графiчным файле'\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.bn.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file: $1.': null\n'Only this translation': null\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': null\n'All translations': null\n'Save All': null\nFiles: null\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': null\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': null\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': null\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': null\n'Add new image': null\n'Delete image $1': null\n'Used in articles': null\n'View image': null\n'Change image information': null\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.cs.yml",
    "content": "'No thumbnails were fixed.': 'Nebyly opraveny žádné thumbnails.'\n'Missing thumbnails fixed.': 'Chybějící thumbnaily opraveny.'\nSlideshows: Slideshows\n'You cant update used files.': 'Nemůžete aktualizovat použité soubory.'\nSource: Zdroj\nLocal: Lokální\n'Items updated.': 'Položky aktualizovány.'\nFeedback: 'Zpětná vazba'\n'Do you want to update unused only?': 'Chcete aktualizovat pouze nepoužité?'\n'Disapprove selected': 'Neodsouhlasit vybrané'\n'Are you sure you want to update selected items?': 'Jste si jisti, že chcete aktualizovat vybrané položky?'\n'Approve selected': 'Odsouhlasit vybrané'\n'Image files': 'Soubory obrázků'\n'Fix all thumbnails': 'Všechny thumbnails opraveny'\n'You do not have the right to add files.': 'Nemáte oprávnění přidávat soubory.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Měl by tento soubor být dostupný pouze pro tento překlad článku nebo pro všechny.'\n'Please enter a description for the file: $1.': 'Prosím zadejte popis složky: $1.'\n'Only this translation': 'Pouze tento překlad'\n'No files for multi editing.': 'Nejsou zde žádné složky pro multi-editaci.'\n'Edit files': 'Editovat složky'\n'Change file information': 'Změnit informace o souboru'\n'All translations': 'Všechny překlady'\n'Save All': 'Uložit Vše'\nFiles: Soubory\n'You cant delete used files.': 'Nemůžete odstranit použité soubory.'\n'Do you want to delete unused only?': 'Chcete odstranit pouze nepoužité soubory?'\n'View attachment': 'Náhled přílohy'\n'Select some items first.': 'Nejprve vyberte nějaké položky.'\n'Open in the browser': 'Otevřít v prohlížeči.'\n'Media Archive': 'Archiv Médií'\n'Last modified': 'Naposledy změněno'\n'Items deleted.': 'Odstraněné položky'\n'File uploaded.': 'Soubor nahrán'\n'Do you want this file to open in the users browser, or to automatically download?': 'Chcete, aby se tento soubor otevíral v prohlížeči nebo se automaticky stáhl.'\n'Delete selected': 'Odstranit vybrané položky'\nCreated: Vytvořeno\nCharset: 'Znaková sada'\n'Change attachment information': 'Změnit přiložení informací'\n'Automatically download': 'Automaticky stáhnout'\n'Attachment updated.': 'Příloha je aktualizována.'\n'Are you sure you want to delete selected items?': 'Jste si jistí, že chcete vybrané položky odstranit?'\n'Add new file': 'Přidat nový soubor'\n'You do not have the right to add images.': 'Nemáte oprávnění přidávat  obrázky.'\n'Use for all': 'Použít pro všechny'\n'Specify image url if you want to load it.': 'Specifikujte URL obrázku, pokud ho chcete nahrát.'\nSize: 'Velikost '\n'No images for multi editing.': 'Žádné obrázky k vícečetné editaci.'\n'Images updated.': 'Obrázky aktualizovány'\n'Edit images': 'Editovat obrázky'\n'$1 files uploaded.': '$1 soubory nahrány '\n'Unable to add new image.': 'Nezdařilo se přidat nový obrázek.'\n'Image updated.': 'Obrázek aktualizován.'\n'Image $1 deleted.': 'Obrázek $1 odstraněn.'\n'Image is in use, it cannot be deleted.': 'Obrázek se používá, nelze jej odstranit.'\n'You must select an image file to upload.': 'Zvolte obrázkový soubor k nahrání.'\n'Add new image': 'Přidat obrázek'\n'Delete image $1': 'Stazat obrázek $1'\n'Used in articles': 'Užívá se v článcích'\n'View image': 'Náhled obrázku'\n'Change image information': 'Změnit informace obrázku'\n'Photographer URL': 'URL fotografa'\n'Add website url starting with http://': 'Přidat url webové stránky začínající na http://'\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.da.yml",
    "content": "'No thumbnails were fixed.': 'Ingen thumbnails blev repareret.'\n'Missing thumbnails fixed.': 'Manglende thumbnails blev repareret.'\nSlideshows: Gallerier\n'You cant update used files.': 'Du kan ikke opdatere filer i brug.'\nSource: Kilde\nLocal: Lokal\n'Items updated.': 'Elementer opdateret.'\nFeedback: Feedback\n'Do you want to update unused only?': 'Vil du kun opdatere ubrugte?'\n'Disapprove selected': 'Afvis valgte'\n'Are you sure you want to update selected items?': 'Vil du opdatere de valgte elementer?'\n'Approve selected': 'Godkend valgte'\n'Image files': Billedfiler\n'Fix all thumbnails': 'Reparer alle thumbnails'\n'You do not have the right to add files.': 'Du har ikke rettigheder til at tilføje filer.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Skal filen kun bruges til denne oversættelse af artiklen eller til alle oversættelser?'\n'Please enter a description for the file: $1.': 'Giv en beskrivelse af filen: $1.'\n'Only this translation': 'Kun denne oversættelse'\n'No files for multi editing.': 'Ingen filer til multiredigering.'\n'Edit files': 'Rediger filer'\n'Change file information': 'Rediger fil information'\n'All translations': 'Alle oversættelser'\n'Save All': 'Gem alt'\nFiles: Filer\n'You cant delete used files.': 'Du kan ikke slette filer i brug.'\n'Do you want to delete unused only?': 'Vil du kun slette ubrugte?'\n'View attachment': 'Se vedhæftning'\n'Select some items first.': 'Vælg først elementer.'\n'Open in the browser': 'Åben i browseren'\n'Media Archive': 'Medie arkiv'\n'Last modified': 'Sidst ændret'\n'Items deleted.': 'Poster slettet.'\n'File uploaded.': 'Fil uploadet.'\n'Do you want this file to open in the users browser, or to automatically download?': 'Skal filen åbne i brugerens browser eller downloades automatisk?'\n'Delete selected': 'Slet valgte'\nCreated: Oprettet\nCharset: Karaktersæt\n'Change attachment information': 'Rediger information om vedhæftning'\n'Automatically download': 'Download automatisk'\n'Attachment updated.': 'Vedhæftning opdateret.'\n'Are you sure you want to delete selected items?': 'Vil du slette de valgte poster?'\n'Add new file': 'Tilføj ny fil'\n'You do not have the right to add images.': 'Du har ikke rettigheder til at tilføje billeder.'\n'Use for all': 'Brug til alle'\n'Specify image url if you want to load it.': 'Angiv billede url hvis du vil hente det.'\nSize: Størrelse\n'No images for multi editing.': 'Ingen billeder til multiredigering.'\n'Images updated.': 'Billeder opdateret.'\n'Edit images': 'Rediger billeder'\n'$1 files uploaded.': '$1 filer uploaded.'\n'Unable to add new image.': 'Kunne ikke tilføje nyt billede.'\n'Image updated.': 'Billede opdateret.'\n'Image $1 deleted.': 'Billede $1 slettet.'\n'Image is in use, it cannot be deleted.': 'Billedet er i brug og kan ikke slettes.'\n'You must select an image file to upload.': 'Vælg en billedfil til upload.'\n'Add new image': 'Tilføj nyt billede'\n'Delete image $1': 'Slet billede $1'\n'Used in articles': 'Brugt i artikler'\n'View image': 'Se billede'\n'Change image information': 'Rediger billedinformation'\n'Photographer URL': 'Fotograf URL'\n'Add website url starting with http://': 'Indtast hjemmeside URL inklusive http://'\n'An error occured while uploading the file $1': 'Filen $1 kunne ikke uploades'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.de.yml",
    "content": "'No thumbnails were fixed.': 'Es wurden keine Thumbnails gefixt.'\n'Missing thumbnails fixed.': 'Fehlende Thumbnails gefixt.'\nSlideshows: Bildstrecken\n'You cant update used files.': 'Sie können keine Dateien im Gebrauch aktualisieren. '\nSource: Quelle\nLocal: Lokal\n'Items updated.': 'Einträge aktualisiert. '\nFeedback: Feedback\n'Do you want to update unused only?': 'Möchten Sie nur ungenutzte aktualisieren? '\n'Disapprove selected': 'Ausgewählte ablehnen'\n'Are you sure you want to update selected items?': 'Wollen Sie wirklich die ausgewählten Einträge aktualisieren? '\n'Approve selected': 'Ausgewählte genehmigen'\n'Image files': Bilddateien\n'Fix all thumbnails': 'Alle Thumbnails reparieren'\n'You do not have the right to add files.': 'Sie haben keine Berechtigung, Dateien hinzuzufügen.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Soll diese Datei nur für diese Übersetzung des Artikels verfügbar sein oder für alle Übersetzungen?'\n'Please enter a description for the file: $1.': 'Bitte geben Sie eine Beschreibung für Datei: $1 ein. '\n'Only this translation': 'Nur diese Übersetzung'\n'No files for multi editing.': 'Keine Dateien für mehrfaches Bearbeiten.'\n'Edit files': 'Dateien bearbeiten. '\n'Change file information': 'Dateiinformation ändern'\n'All translations': 'Alle Übersetzungen'\n'Save All': 'Alle speichern'\nFiles: Dateien\n'You cant delete used files.': 'Dateien in Gebrauch können nicht gelöscht werden.'\n'Do you want to delete unused only?': 'Nur ungenutzte löschen?'\n'View attachment': 'Anhang betrachten'\n'Select some items first.': 'Zuerst einige Einträge auswählen.'\n'Open in the browser': 'Im Browser öffnen'\n'Media Archive': Medienarchiv\n'Last modified': 'Zuletzt geändert'\n'Items deleted.': 'Einträge gelöscht'\n'File uploaded.': 'Datei hochgeladen'\n'Do you want this file to open in the users browser, or to automatically download?': 'Soll diese Datei im Browser geöffnet oder automatisch zum Herunterladen angeboten werden?'\n'Delete selected': 'Ausgewählte löschen'\nCreated: Angelegt\nCharset: Schriftsatz\n'Change attachment information': 'Informationen zum Anhang ändern'\n'Automatically download': 'Automatisch herunterladen'\n'Attachment updated.': 'Anhang aktualisiert.'\n'Are you sure you want to delete selected items?': 'Wollen Sie wirklich ausgewählte Einträge löschen?'\n'Add new file': 'Neue Datei hinzufügen'\n'You do not have the right to add images.': 'Keine Berechtigung neue Bilder hinzuzufügen.'\n'Use for all': 'Für alle Bilder verwenden'\n'Specify image url if you want to load it.': 'Geben Sie die URL für das Bild an, das Sie laden wollen'\nSize: Größe\n'No images for multi editing.': 'Keine Bilder für mehrfaches Bearbeiten.'\n'Images updated.': 'Bilder aktualisiert.'\n'Edit images': 'Bilder bearbeiten'\n'$1 files uploaded.': '$1 Dateien hochgeladen.'\n'Unable to add new image.': 'Neues Bild kann nicht hinzugefügt werden.'\n'Image updated.': 'Bild aktualisiert.'\n'Image $1 deleted.': 'Bild $1  gelöscht.'\n'Image is in use, it cannot be deleted.': 'Bild ist in Gebrauch und kann nicht gelöscht werden.'\n'You must select an image file to upload.': 'Eine Bilddatei zum Hochladen auswählen.'\n'Add new image': 'Neues Bild hinzufügen'\n'Delete image $1': 'Bild $1 löschen'\n'Used in articles': 'In Artikeln verwendet'\n'View image': 'Bild betrachten'\n'Change image information': 'Bildinformation ändern'\n'Photographer URL': 'URL/Webadresse des Photographen'\n'Add website url starting with http://': 'Fügen Sie die Web-Adresse beginnend mit http:// hinzu'\n'An error occured while uploading the file $1': 'Ein Fehler ist aufgetreten beim Hochladen der Datei $1'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.de_AT.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: Bildstrecken\n'You cant update used files.': 'Sie können keine Dateien im Gebrauch aktualisieren. '\nSource: Quelle\nLocal: Lokal\n'Items updated.': 'Einträge aktualisiert. '\nFeedback: Feedback\n'Do you want to update unused only?': 'Möchten Sie nur ungenutzte aktualisieren? '\n'Disapprove selected': 'Ausgewählte ablehnen'\n'Are you sure you want to update selected items?': 'Wollen Sie wirklich die ausgewählten Einträge aktualisieren? '\n'Approve selected': 'Ausgewählte genehmigen'\n'Image files': Bilddateien\n'Fix all thumbnails': 'Alle Thumbnails reparieren'\n'You do not have the right to add files.': 'Sie haben keine Berechtigung, Dateien hinzuzufügen.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Soll diese Datei nur für diese Übersetzung des Artikels verfügbar sein oder für alle Übersetzungen?'\n'Please enter a description for the file: $1.': 'Bitte geben Sie eine Beschreibung für Datei: $1 ein. '\n'Only this translation': 'Nur diese Übersetzung'\n'No files for multi editing.': 'Keine Dateien für mehrfaches Bearbeiten.'\n'Edit files': 'Dateien bearbeiten. '\n'Change file information': 'Dateiinformation ändern'\n'All translations': 'Alle Übersetzungen'\n'Save All': 'Alle speichern'\nFiles: Dateien\n'You cant delete used files.': 'Dateien in Gebrauch können nicht gelöscht werden.'\n'Do you want to delete unused only?': 'Nur ungenutzte löschen?'\n'View attachment': 'Anhang betrachten'\n'Select some items first.': 'Zuerst einige Einträge auswählen.'\n'Open in the browser': 'Im Browser öffnen'\n'Media Archive': Medienarchiv\n'Last modified': 'Zuletzt geändert'\n'Items deleted.': 'Einträge gelöscht'\n'File uploaded.': 'Datei hochgeladen'\n'Do you want this file to open in the users browser, or to automatically download?': 'Soll diese Datei im Browser geöffnet oder automatisch zum Herunterladen angeboten werden?'\n'Delete selected': 'Ausgewählte löschen'\nCreated: Angelegt\nCharset: Schriftsatz\n'Change attachment information': 'Informationen zum Anhang ändern'\n'Automatically download': 'Automatisch herunterladen'\n'Attachment updated.': 'Anhang aktualisiert.'\n'Are you sure you want to delete selected items?': 'Wollen Sie wirklich ausgewählte Einträge löschen?'\n'Add new file': 'Neue Datei hinzufügen'\n'You do not have the right to add images.': 'Keine Berechtigung neue Bilder hinzuzufügen.'\n'Use for all': 'Für alle Bilder verwenden'\n'Specify image url if you want to load it.': 'Geben Sie die URL für das Bild an, das Sie laden wollen'\nSize: Größe\n'No images for multi editing.': 'Keine Bilder für mehrfaches Bearbeiten.'\n'Images updated.': 'Bilder aktualisiert.'\n'Edit images': 'Bilder bearbeiten'\n'$1 files uploaded.': '$1 Dateien hochgeladen.'\n'Unable to add new image.': 'Neues Bild kann nicht hinzugefügt werden.'\n'Image updated.': 'Bild aktualisiert.'\n'Image $1 deleted.': 'Bild $1  gelöscht.'\n'Image is in use, it cannot be deleted.': 'Bild ist in Gebrauch und kann nicht gelöscht werden.'\n'You must select an image file to upload.': 'Eine Bilddatei zum Hochladen auswählen.'\n'Add new image': 'Neues Bild hinzufügen'\n'Delete image $1': 'Bild $1 löschen'\n'Used in articles': 'In Artikeln verwendet'\n'View image': 'Bild betrachten'\n'Change image information': 'Bildinformation ändern'\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.el.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: Slideshows\n'You cant update used files.': 'Δεν μπορείτε να ενημερώσετε χρησιμοποιημένα αρχεία.'\nSource: Πηγή\nLocal: Τοπικό\n'Items updated.': 'Τα αντικείμενα ενημερώθηκαν.'\nFeedback: Feedback\n'Do you want to update unused only?': 'Θέλετε να ενημερώσετε μόνο τα αχρησιμοποίητα;'\n'Disapprove selected': 'Απόρριψη επιλεγμένων'\n'Are you sure you want to update selected items?': 'Είστε σίγουρος/η ότι θέλετε να ενημερώσετε επιλεγμένα αντικείμενα;'\n'Approve selected': 'Έγκριση επιλεγμένων'\n'Image files': 'Αρχεία εικόνων'\n'Fix all thumbnails': 'Επιδιόρθωση όλων των thumbnails'\n'You do not have the right to add files.': 'Δεν έχετε το δικαίωμα να προσθέσετε αρχεία.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Να είναι αυτό το αρχείο διαθέσιμο μόνο για αυτή τη μετάφραση του άρθρου ή για όλες τις μεταφράσεις;'\n'Please enter a description for the file: $1.': 'Παρακαλούμε εισάγετε μια περιγραφή για το αρχείο: $1.'\n'Only this translation': 'Μόνο αυτή η μετάφραση'\n'No files for multi editing.': 'Δεν υπάρχουν αρχεία για πολλαπλή επεξεργασία.'\n'Edit files': 'Επεξεργασία αρχείων'\n'Change file information': 'Αλλαγή πληροφοριών αρχείου'\n'All translations': 'Όλες οι μεταφράσεις'\n'Save All': 'Αποθήκευση Όλων'\nFiles: Αρχεία\n'You cant delete used files.': 'Δεν μπορείτε να διαγράψετε χρησιμοποιημένα αρχεία.'\n'Do you want to delete unused only?': 'Επιθυμείτε να διαγράψετε μόνο όσα δεν χρησιμοποιούνται;'\n'View attachment': 'Προβολή συννημένου'\n'Select some items first.': 'Επιλέξτε πρώτα κάποια στοιχεία.'\n'Open in the browser': 'Άνοιγμα στο πρόγραμμα περιήγησης'\n'Media Archive': 'Αρχείο Πολυμέσων'\n'Last modified': 'Τελευταίως τροποποιημένα'\n'Items deleted.': 'Τα στοιχεία διαγράφτηκαν.'\n'File uploaded.': 'Το αρχείο ανέβηκε.'\n'Do you want this file to open in the users browser, or to automatically download?': 'Θέλετε αυτό το αρχείο να ανοίξει στο πρόγραμμα περιήγησης του χρήστη ή να πραγματοποιήσει αυτόματο κατέβασμα;'\n'Delete selected': 'Διαγραφή επιλεγμένων'\nCreated: Δημιουργήθηκε\nCharset: 'Σετ Χαρακτήρων'\n'Change attachment information': 'Αλλαγή πληροφοριών συννημένου'\n'Automatically download': 'Αυτόματο κατέβασμα'\n'Attachment updated.': 'Το συννημένο ανανεώθηκε.'\n'Are you sure you want to delete selected items?': 'Είστε σίγουρος/η ότι θέλετε να διαγράψετε τα επιλεγμένα στοιχεία;'\n'Add new file': 'Προσθήκη νέου αρχείου'\n'You do not have the right to add images.': 'Δεν έχετε το δικαίωμα να προσθέσετε εικόνες.'\n'Use for all': 'Χρήση για όλα'\n'Specify image url if you want to load it.': 'Προσδιορίστε το url της εικόνας, σε περίπτωση φόρτωσης.'\nSize: Μέγεθος\n'No images for multi editing.': 'Καμία εικόνα για πολλαπλή επεξεργασία.'\n'Images updated.': 'Οι εικόνες ανανεώθηκαν.'\n'Edit images': 'Επεξεργασία εικόνων'\n'$1 files uploaded.': 'Ανέβηκαν $1 αρχεία.'\n'Unable to add new image.': 'Η προσθήκη νέας εικόνας ήταν αδύνατη.'\n'Image updated.': 'Οι εικόνες ανανεώθηκαν.'\n'Image $1 deleted.': 'Η εικόνα $1 διαγράφτηκε.'\n'Image is in use, it cannot be deleted.': 'Η εικόνα χρησιμοποιείται και δεν μπορεί να διαγραφεί.'\n'You must select an image file to upload.': 'Πρέπει να επιλέξετε ένα αρχείο εικόνας για ανέβασμα.'\n'Add new image': 'Προσθήκη νέας εικόνας'\n'Delete image $1': 'Διαγραφή εικόνας $1'\n'Used in articles': 'Έχει χρησιμοποιηθεί σε άρθρα'\n'View image': 'Προβολή εικόνας'\n'Change image information': 'Αλλαγή πληροφοριών εικόνας'\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.en.yml",
    "content": "'No thumbnails were fixed.': 'No thumbnails were fixed.'\n'Missing thumbnails fixed.': 'Missing thumbnails fixed.'\nSlideshows: Slideshows\n'You cant update used files.': 'You cant update used files.'\nSource: Source\nLocal: Local\n'Items updated.': 'Items updated.'\nFeedback: Feedback\n'Do you want to update unused only?': 'Do you want to update unused only?'\n'Disapprove selected': 'Disapprove selected'\n'Are you sure you want to update selected items?': 'Are you sure you want to update selected items?'\n'Approve selected': 'Approve selected'\n'Image files': 'Image files'\n'Fix all thumbnails': 'Fix all thumbnails'\n'You do not have the right to add files.': 'You do not have the right to add files.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Should this file only be available for this translation of the article, or for all translations?'\n'Please enter a description for the file: $1.': 'Please enter a description for the file: $1.'\n'Only this translation': 'Only this translation'\n'No files for multi editing.': 'No files for multi editing.'\n'Edit files': 'Edit files'\n'Change file information': 'Change file information'\n'All translations': 'All translations'\n'Save All': 'Save All'\nFiles: Files\n'You cant delete used files.': 'You cant delete used files.'\n'Do you want to delete unused only?': 'Do you want to delete unused only?'\n'View attachment': 'View attachment'\n'Select some items first.': 'Select some items first.'\n'Open in the browser': 'Open in the browser'\n'Media Archive': 'Media Archive'\n'Last modified': 'Last modified'\n'Items deleted.': 'Items deleted.'\n'File uploaded.': 'File uploaded.'\n'Do you want this file to open in the users browser, or to automatically download?': 'Do you want this file to open in the users browser, or to automatically download?'\n'Delete selected': 'Delete selected'\nCreated: Created\nCharset: Charset\n'Change attachment information': 'Change attachment information'\n'Automatically download': 'Automatically download'\n'Attachment updated.': 'Attachment updated.'\n'Are you sure you want to delete selected items?': 'Are you sure you want to delete selected items?'\n'Add new file': 'Add new file'\n'You do not have the right to add images.': 'You do not have the right to add images.'\n'Use for all': 'Use for all'\n'Specify image url if you want to load it.': 'Specify image url if you want to load it.'\nSize: Size\n'No images for multi editing.': 'No images for multi editing.'\n'Images updated.': 'Images updated.'\n'Edit images': 'Edit images'\n'$1 files uploaded.': '$1 files uploaded.'\n'Unable to add new image.': 'Unable to add new image.'\n'Image updated.': 'Image updated.'\n'Image $1 deleted.': 'Image $1 deleted.'\n'Image is in use, it cannot be deleted.': 'Image is in use, it cannot be deleted.'\n'You must select an image file to upload.': 'You must select an image file to upload.'\n'Add new image': 'Add new image'\n'Delete image $1': 'Delete image $1'\n'Used in articles': 'Used in articles'\n'View image': 'View image'\n'Change image information': 'Change image information'\n'Photographer URL': 'Photographer URL'\n'Add website url starting with http://': 'Add website url starting with http://'\n'An error occured while uploading the file $1': 'An error occured while uploading the file $1'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.en_GB.yml",
    "content": "'No thumbnails were fixed.': 'No thumbnails were fixed.'\n'Missing thumbnails fixed.': 'Missing thumbnails fixed.'\nSlideshows: Slideshows\n'You cant update used files.': 'You can not update used files.'\nSource: Source\nLocal: Local\n'Items updated.': 'Items updated.'\nFeedback: Feedback\n'Do you want to update unused only?': 'Do you want to update unused only?'\n'Disapprove selected': 'Disapprove selected'\n'Are you sure you want to update selected items?': 'Are you sure you want to update selected items?'\n'Approve selected': 'Approve selected'\n'Image files': 'Image files'\n'Fix all thumbnails': 'Fix all thumbnails'\n'You do not have the right to add files.': 'You do not have the right to add files.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Should this file only be available for this translation of the article, or for all translations?'\n'Please enter a description for the file: $1.': 'Please enter a description for the file: $1.'\n'Only this translation': 'Only this translation'\n'No files for multi editing.': 'No files for multi editing.'\n'Edit files': 'Edit files'\n'Change file information': 'Change file information'\n'All translations': 'All translations'\n'Save All': 'Save All'\nFiles: Files\n'You cant delete used files.': 'You can not delete used files.'\n'Do you want to delete unused only?': 'Do you want to delete unused only?'\n'View attachment': 'View attachment'\n'Select some items first.': 'Select some items first.'\n'Open in the browser': 'Open in the browser'\n'Media Archive': 'Media Archive'\n'Last modified': 'Last modified'\n'Items deleted.': 'Items deleted.'\n'File uploaded.': 'File uploaded.'\n'Do you want this file to open in the users browser, or to automatically download?': 'Do you want this file to open in the users browser, or to automatically download?'\n'Delete selected': 'Delete selected'\nCreated: Created\nCharset: Charset\n'Change attachment information': 'Change attachment information'\n'Automatically download': 'Automatically download'\n'Attachment updated.': 'Attachment updated.'\n'Are you sure you want to delete selected items?': 'Are you sure you want to delete selected items?'\n'Add new file': 'Add new file'\n'You do not have the right to add images.': 'You do not have the right to add images.'\n'Use for all': 'Use for all'\n'Specify image url if you want to load it.': 'Specify image url if you want to load it.'\nSize: Size\n'No images for multi editing.': 'No images for multi editing.'\n'Images updated.': 'Images updated.'\n'Edit images': 'Edit images'\n'$1 files uploaded.': '$1 files uploaded.'\n'Unable to add new image.': 'Unable to add new image.'\n'Image updated.': 'Image updated.'\n'Image $1 deleted.': 'Image $1 deleted.'\n'Image is in use, it cannot be deleted.': 'Image is in use, it cannot be deleted.'\n'You must select an image file to upload.': 'You must select an image file to upload.'\n'Add new image': 'Add new image'\n'Delete image $1': 'Delete image $1'\n'Used in articles': 'Used in articles'\n'View image': 'View image'\n'Change image information': 'Change image information'\n'Photographer URL': 'Photographer URL'\n'Add website url starting with http://': 'Add website url starting with http://'\n'An error occured while uploading the file $1': 'An error occured while uploading the file $1'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.es.yml",
    "content": "'No thumbnails were fixed.': 'No se repararon miniaturas.'\n'Missing thumbnails fixed.': 'Se han reparado las miniaturas faltantes.'\nSlideshows: Diapositivas\n'You cant update used files.': 'No puede actualizar archivos usados.'\nSource: Fuente\nLocal: Local\n'Items updated.': 'Objetos actualizados'\nFeedback: Retroalimentación\n'Do you want to update unused only?': '¿Desea actualizar sólo los no usados?'\n'Disapprove selected': 'Desaprobar selección'\n'Are you sure you want to update selected items?': '¿Está seguro de querer actualizar los ítems seleccionados?'\n'Approve selected': 'Aprovar selección'\n'Image files': 'Archivos de imagen'\n'Fix all thumbnails': 'Fijar todas las viñetas'\n'You do not have the right to add files.': 'No tiene autorización para añadir archivos.'\n'Should this file only be available for this translation of the article, or for all translations?': '¿Desea tener disponible este archivo sólo para esta traducción del artículo o para todas las traducciones?'\n'Please enter a description for the file: $1.': 'Por favor ingrese una descripción para el archivo:  $1.'\n'Only this translation': 'Sólo esta traducción'\n'No files for multi editing.': 'No existen archivos para multi edición.'\n'Edit files': 'Editar archivos'\n'Change file information': 'Cambiar la información del archivo'\n'All translations': 'Todas las traducciones'\n'Save All': 'Guardar todo'\nFiles: Archivos\n'You cant delete used files.': 'No puede eliminar los archivos utilizados.'\n'Do you want to delete unused only?': '¿Desea eliminar solo los no utilizados?'\n'View attachment': 'Ver adjunto'\n'Select some items first.': 'Primero seleccione algunos objetos.'\n'Open in the browser': 'Abrir en el navegador'\n'Media Archive': 'Archivo multimedia'\n'Last modified': 'Modificado por última vez'\n'Items deleted.': 'Ítems eliminados.'\n'File uploaded.': 'Se subió el archivo.'\n'Do you want this file to open in the users browser, or to automatically download?': '¿Desea que este archivo se despliegue en el navegador del usuario o que se descargue automáticamente?'\n'Delete selected': 'Eliminar los seleccionados'\nCreated: Creado\nCharset: Charset\n'Change attachment information': 'Cambiar la información del ajunto'\n'Automatically download': 'Descargar automáticamente'\n'Attachment updated.': 'Se subió el adjunto'\n'Are you sure you want to delete selected items?': '¿Está seguro de querer eliminar los ítems seleccionados?'\n'Add new file': 'Añadir archivo nuevo'\n'You do not have the right to add images.': 'No tiene autorización para añadir imágenes.'\n'Use for all': 'Usar en todo'\n'Specify image url if you want to load it.': 'Especifique el url de la imagen si desea cargarla.'\nSize: Tamaño\n'No images for multi editing.': 'No hay imágenes para edición múltiple.'\n'Images updated.': 'Se actualizaron las imágenes'\n'Edit images': 'Editar imágenes'\n'$1 files uploaded.': 'Se cargaron $1 archivos.'\n'Unable to add new image.': 'No es posible añadir nueva imagen. '\n'Image updated.': 'Se actualizó la imagen'\n'Image $1 deleted.': 'Se eliminó la imagen $1 '\n'Image is in use, it cannot be deleted.': 'La imagen está en uso, no se puede eliminar.'\n'You must select an image file to upload.': 'Debe seleccionar un archivo de imagen para cargar.'\n'Add new image': 'Agregar nueva imagen'\n'Delete image $1': 'Borrar imagen $1'\n'Used in articles': 'Utilizado en artículos'\n'View image': 'Ver imagen'\n'Change image information': 'Cambiar información de imagen'\n'Photographer URL': 'URL del Fotógrafo'\n'Add website url starting with http://': 'Añada el URL de un sitio web que comience por http://'\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.es_AR.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': 'No tenés autorización para añadir archivos.'\n'Should this file only be available for this translation of the article, or for all translations?': '¿Deseás tener disponible este archivo sólo para esta traducción del artículo o para todas las traducciones?'\n'Please enter a description for the file: $1.': null\n'Only this translation': null\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': null\n'All translations': null\n'Save All': null\nFiles: null\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': 'Abrir en el navegador'\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': null\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': null\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': null\n'Add new image': null\n'Delete image $1': null\n'Used in articles': null\n'View image': null\n'Change image information': null\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.fa.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file: $1.': null\n'Only this translation': null\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': null\n'All translations': null\n'Save All': null\nFiles: null\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': null\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': null\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': null\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': null\n'Add new image': null\n'Delete image $1': null\n'Used in articles': null\n'View image': null\n'Change image information': null\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.fa_AF.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file: $1.': null\n'Only this translation': null\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': null\n'All translations': null\n'Save All': null\nFiles: null\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': null\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': null\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': null\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': null\n'Add new image': null\n'Delete image $1': null\n'Used in articles': null\n'View image': null\n'Change image information': null\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.fr.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': 'Vous navez pas le droit dajouter des fichiers.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Ce fichier doit-il être seulement disponible pour cette traduction de larticle, ou pour toutes les traductions ? '\n'Please enter a description for the file: $1.': null\n'Only this translation': 'Seulement cette traduction'\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': 'Changer l''information du fichier'\n'All translations': 'Toutes les traductions '\n'Save All': null\nFiles: null\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': 'Ouvrir dans le navigateur '\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': 'Voulez-vous que ce fichier souvre dans le navigateur de lutilisateur, ou automatiquement téléchargé ? '\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': 'Automatiquement téléchargé'\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': 'Vous navez pas le droit dajouter des images. '\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': 'Vous devez choisir un fichier dimage à télécharger. '\n'Add new image': 'Ajoutez la nouvelle image '\n'Delete image $1': 'Supprimer image $1'\n'Used in articles': 'Employé dans articles '\n'View image': 'Afficher image'\n'Change image information': 'Changer linformation dimage'\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.he.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file: $1.': null\n'Only this translation': null\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': null\n'All translations': null\n'Save All': null\nFiles: null\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': null\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': null\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': null\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': null\n'Add new image': null\n'Delete image $1': null\n'Used in articles': null\n'View image': null\n'Change image information': null\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.hr.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': 'Nemate ovlasti dodavati datoteke.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Da li ova Datoteka treba biti dostupna za ovaj prijevod članka, ili za sve prijevode?'\n'Please enter a description for the file: $1.': null\n'Only this translation': 'Samo ovaj prijevod'\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': 'Promijeni informacije o datoteci'\n'All translations': 'Svi prijevodi'\n'Save All': null\nFiles: Datoteke\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': 'Otvori u pretraživaču'\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': 'Da li želite da se ova datoteka otvara u pretraživaču korisnika, ili da se automatski preuzme?'\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': 'Automatsko preuzimanje'\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': 'Nemate ovlasti dodavati slike.'\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': 'Morate označiti sliku koju želite postaviti.'\n'Add new image': 'Dodaj novu sliku'\n'Delete image $1': 'Izbriši sliku $1:'\n'Used in articles': 'Koristi se u člancima'\n'View image': 'Vidi sliku'\n'Change image information': 'Promijenite podatke o slici'\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.hu.yml",
    "content": "'No thumbnails were fixed.': 'Bélyegképek nem kerültek javításra.'\n'Missing thumbnails fixed.': 'A hiányzó bélyegképek javításra kerültek.'\nSlideshows: Diavetítések\n'You cant update used files.': 'Használatban lévő fájlokat nem frissíthetsz.'\nSource: Forrás\nLocal: Helyi\n'Items updated.': 'Az elemek frissítése megtörtént.'\nFeedback: Visszajelzések\n'Do you want to update unused only?': 'Csak a nem használtakat akarod frissíteni?'\n'Disapprove selected': 'Kijelöltek elutasítása'\n'Are you sure you want to update selected items?': 'Biztosan frissíteni akarod a kijelölt elemeket?'\n'Approve selected': 'Kijelöltek jóváhagyása'\n'Image files': Képfájlok\n'Fix all thumbnails': 'Az összes bélyegkép javítása'\n'You do not have the right to add files.': 'Nincs jogod a fájlok hozzáadásához.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Ez a fájl a cikk csak ezen fordításához vagy az összes fordításhoz legyen elérhető?'\n'Please enter a description for the file: $1.': 'Add meg a/z $1 fájl leírását.'\n'Only this translation': 'Csak ez a fordítás'\n'No files for multi editing.': 'Nincsenek fájlok a többszörös szerkesztésre.'\n'Edit files': 'Fájlok szerkesztése'\n'Change file information': 'Fájlinformáció módosítása'\n'All translations': 'Minden fordítás'\n'Save All': 'Az összes mentése'\nFiles: Fájlok\n'You cant delete used files.': 'A használt fájlok nem törölhetők.'\n'Do you want to delete unused only?': 'Csak a nem használtakat akarod törölni?'\n'View attachment': 'Csatolmány megtekintése'\n'Select some items first.': 'Előbb válassz ki néhány elemet.'\n'Open in the browser': 'Megnyitás a böngészőben'\n'Media Archive': Médiaarchívum\n'Last modified': 'Utolsó módosítás'\n'Items deleted.': 'Az elemek törlése megtörtént.'\n'File uploaded.': 'A fájl feltöltése megtörtént.'\n'Do you want this file to open in the users browser, or to automatically download?': 'Ezt a fájlt a felhasználó böngészőjében akarod megnyitni, vagy automatikusan letöltésre kerül?'\n'Delete selected': 'Kijelöltek törlése'\nCreated: Létrehozva\nCharset: Karakterkészlet\n'Change attachment information': 'Csatolmány adatainak módosítása'\n'Automatically download': 'Automatikus letöltés'\n'Attachment updated.': 'A csatolmány frissítése megtörtént.'\n'Are you sure you want to delete selected items?': 'Biztosan törölni akarod a kijelölt elemeket?'\n'Add new file': 'Új fájl hozzáadása'\n'You do not have the right to add images.': 'Nincs jogod a képek hozzáadásához.'\n'Use for all': 'Használat mindre'\n'Specify image url if you want to load it.': 'Add meg a kép URL-címét, ha be szeretnéd tölteni.'\nSize: Méret\n'No images for multi editing.': 'Nincsenek képek a többszörös szerkesztéshez.'\n'Images updated.': 'A képek frissítése megtörtént'\n'Edit images': 'Képek szerkesztése'\n'$1 files uploaded.': 'A/z $1 fájl feltöltése megtörtént.'\n'Unable to add new image.': 'Nem lehet új képet hozzáadni.'\n'Image updated.': 'A kép frissítése megtörtént.'\n'Image $1 deleted.': 'A/z $1 kép törlése megtörtént.'\n'Image is in use, it cannot be deleted.': 'A kép használatban van, nem lehet törölni.'\n'You must select an image file to upload.': 'Ki kell választanod egy feltöltendő képfájlt.'\n'Add new image': 'Új kép hozzáadása'\n'Delete image $1': 'A/z $1 kép törlése'\n'Used in articles': 'Cikkekben használva'\n'View image': 'Kép megtekintése'\n'Change image information': 'Képinformációk módosítása'\n'Photographer URL': 'Fotós URL-címe'\n'Add website url starting with http://': 'A webhely http:// előtaggal kezdődő URL-címének hozzáadása'\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.hy.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file: $1.': null\n'Only this translation': null\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': null\n'All translations': null\n'Save All': null\nFiles: null\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': null\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': null\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': null\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': null\n'Add new image': null\n'Delete image $1': null\n'Used in articles': null\n'View image': null\n'Change image information': null\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': 'An error occured while uploading the file $1'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.hy_AM.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file: $1.': null\n'Only this translation': null\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': null\n'All translations': null\n'Save All': null\nFiles: null\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': null\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': null\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': null\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': null\n'Add new image': null\n'Delete image $1': null\n'Used in articles': null\n'View image': null\n'Change image information': null\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.id.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file: $1.': null\n'Only this translation': null\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': null\n'All translations': null\n'Save All': null\nFiles: null\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': null\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': null\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': null\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': null\n'Add new image': null\n'Delete image $1': null\n'Used in articles': null\n'View image': null\n'Change image information': null\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.it.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: 'Gallerie di immagini'\n'You cant update used files.': 'Non puoi aggiornare file in uso.'\nSource: Sorgente\nLocal: Locale\n'Items updated.': 'Elementi aggiornati'\nFeedback: Feedback\n'Do you want to update unused only?': 'Vuoi aggiornare solo quelli non usati?'\n'Disapprove selected': 'Disapprova selezionati'\n'Are you sure you want to update selected items?': 'Vuoi davvero aggiornare gli elementi selezionati?'\n'Approve selected': 'Approva selezionati'\n'Image files': 'File immagine'\n'Fix all thumbnails': 'Aggiorna tutte le anteprime'\n'You do not have the right to add files.': 'Non si possiedono i diritti per aggiungere file.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Rendere disponibile questo file solo per questa traduzione, o per tutte?'\n'Please enter a description for the file: $1.': 'Inserisci la descrizione del file: $1'\n'Only this translation': 'Solo questa traduzione'\n'No files for multi editing.': 'Nessun file per la modifica multipla.'\n'Edit files': 'Modifica file'\n'Change file information': 'Cambia le informazioni file'\n'All translations': 'Tutte le traduzioni'\n'Save All': 'Salva tutto'\nFiles: File\n'You cant delete used files.': 'Non puoi eliminare file in uso.'\n'Do you want to delete unused only?': 'Vuoi eliminare solo quelli non utilizzati?'\n'View attachment': 'Visualizza allegati'\n'Select some items first.': 'Seleziona almeno un elemento.'\n'Open in the browser': 'Apri nel browser'\n'Media Archive': 'Archivio media'\n'Last modified': 'Ultima modifica'\n'Items deleted.': 'Elementi eliminati.'\n'File uploaded.': 'File caricato.'\n'Do you want this file to open in the users browser, or to automatically download?': 'Preferisci che questo file sia aperto nel browser, o automaticamente scaricato?'\n'Delete selected': 'Elimina selezionati'\nCreated: Creato\nCharset: 'Set di caratteri'\n'Change attachment information': 'Modifica informazioni allegato'\n'Automatically download': 'Scarica automaticamente'\n'Attachment updated.': 'Allegato aggiornato.'\n'Are you sure you want to delete selected items?': 'Vuoi eliminare gli elementi selezionati?'\n'Add new file': 'Aggiungi file'\n'You do not have the right to add images.': 'Non hai il permesso di aggiungere immagini.'\n'Use for all': 'Usa per tutti'\n'Specify image url if you want to load it.': 'Se vuoi caricare unimmagine esterna indica lURL'\nSize: Dimensione\n'No images for multi editing.': 'Nessuna immagine per la modifica.'\n'Images updated.': 'Immagini aggiornate.'\n'Edit images': 'Modifica immagini'\n'$1 files uploaded.': '$1 file caricati.'\n'Unable to add new image.': 'Impossibile aggiungere la nuova immagine.'\n'Image updated.': 'Immagine aggiornata.'\n'Image $1 deleted.': 'Immagine $1 eliminata.'\n'Image is in use, it cannot be deleted.': 'Limmagine non può essere modificata perchè è in uso.'\n'You must select an image file to upload.': 'Seleziona una immagine da caricare.'\n'Add new image': 'Aggiungi immagine'\n'Delete image $1': 'Elimina immagine $1'\n'Used in articles': 'Usato negli articoli'\n'View image': 'Visualizza immagine'\n'Change image information': 'Cambia le informazioni dellimmagine'\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.ka.yml",
    "content": "'No thumbnails were fixed.': 'მინიატიურები არ არის ფიქსირებული.'\n'Missing thumbnails fixed.': 'არმყოფი მინიატიურები ფიქსირებულია.'\nSlideshows: სლაიდშოუები\n'You cant update used files.': 'გამოყენებული ფაილების განახელბა შეუძლებელია. '\nSource: წყარო\nLocal: ლოკალური\n'Items updated.': 'ელემენტები განახლებულია.'\nFeedback: შეფასება\n'Do you want to update unused only?': 'გსურთ მხოლოდ გამოუყენებლის განახლება?'\n'Disapprove selected': 'არჩეულის უკუგდება'\n'Are you sure you want to update selected items?': 'დარწმუნებული ხართ, რომ გსურთ არჩეული ელემენტის დადასტურება'\n'Approve selected': 'არჩეულის დადასტურება'\n'Image files': 'გამოსახულებითი ფაილები'\n'Fix all thumbnails': 'ყველა thumbnail-ის გასწორება'\n'You do not have the right to add files.': 'თქვენ არა გაქვთ ფაილის დამატების უფლება'\n'Should this file only be available for this translation of the article, or for all translations?': 'ეს ფაილი მისაწვდომი უნდა იყოს მხოლოდ ამ თარგმანისთვის თუ ყველა თარგმანისთვის?'\n'Please enter a description for the file: $1.': 'გთხოვთ მიუთითოთ $1 ფაილის აღწერა'\n'Only this translation': 'მხოლოდ ამ თარგმანისთვის'\n'No files for multi editing.': 'მულტი-რედაქტირებისთვის ფაილები არ არსებობს.'\n'Edit files': 'ფაილების რედაქტირება'\n'Change file information': 'შეცვალე ფაილის ინფორმაცია'\n'All translations': 'ყველა თარგმანი'\n'Save All': 'ყველაფრის დამახსოვრება'\nFiles: ფაილები\n'You cant delete used files.': 'თქვენ არ შეგიძლიათ წაშლილი ფაილების გამოყენება.'\n'Do you want to delete unused only?': 'გსურთ რომ წაშალოთ მხოლოდ გამოუყენებლები?'\n'View attachment': 'მიმაგრებული ფაილის ნახვა'\n'Select some items first.': 'ჯერ აირჩიეთ ფაილები'\n'Open in the browser': 'ბრაუზერში გახსნა'\n'Media Archive': 'მედია არქივი'\n'Last modified': 'ბოლო მოდიფიკაცია'\n'Items deleted.': 'ფაილები წაიშალა'\n'File uploaded.': 'ფაილი აიტვირთა'\n'Do you want this file to open in the users browser, or to automatically download?': 'გსურთ ეს ფაილი გაიხსნას მომხმარებლის ბრაუზერში თუ ავტომატურად ჩამოიქაჩოს?'\n'Delete selected': 'არჩეულის წაშლა'\nCreated: შექმნილია\nCharset: კოდირება\n'Change attachment information': 'მიბმული ფაილის ინფორმაციის შეცვლა'\n'Automatically download': 'ავტომატური ჩამოქაჩვა'\n'Attachment updated.': 'მიბმული ფაილი განახლდა'\n'Are you sure you want to delete selected items?': 'დარწმუნებული ხართ რომ გსურთ მონიშნულის წაშლა?'\n'Add new file': 'ახალი ფაილის დამატება'\n'You do not have the right to add images.': 'თქვენ არ გაქვთ გამოსახულების დამატების უფლება.'\n'Use for all': 'გამოყენება ყველა შემთხვევისთვის'\n'Specify image url if you want to load it.': 'მიუთითეთ გამოსახულების url, თუ გსურთ მისი ჩატვირთვა. '\nSize: ზომა\n'No images for multi editing.': 'გამოსახულებები მულტი-რედაქტირებისთვის არ არსებობს'\n'Images updated.': 'გამოსახულებები განახლდა.'\n'Edit images': 'გამოსახულების რედაქტირება'\n'$1 files uploaded.': '$1 ფაილები აიტვირთა.'\n'Unable to add new image.': 'გამოსახულება არ დაემატა'\n'Image updated.': 'გამოსახულება განახლდა.'\n'Image $1 deleted.': 'გამოსახულება $1 წაიშალა.'\n'Image is in use, it cannot be deleted.': 'გამოსახულება გამოყენებულია და მისი წაშლა შეუძლებელია.'\n'You must select an image file to upload.': 'თქვენ უნდა აირჩიოთ გამოსახულება ასატვირთად'\n'Add new image': 'ახალი გამოსახულების დამატება'\n'Delete image $1': '$1 გამოსახულების წაშლა'\n'Used in articles': 'სტატიაში გამოენებული'\n'View image': 'გამოსახულების ნახვა'\n'Change image information': 'გამოსახულების ინფორმაციის შეცვლა'\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.ko.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': '파일을 추가할 권한이 없습니다. '\n'Should this file only be available for this translation of the article, or for all translations?': '이 파일이 기사의 이 번역에만 해당됩니까, 아니면 모든 번역에 해당됩니까?'\n'Please enter a description for the file: $1.': null\n'Only this translation': '이 번역만 '\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': '파일 정보 수정'\n'All translations': '모든 번역'\n'Save All': null\nFiles: 파일\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': '브라우저에서 열기'\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': '이 파일이 브라우저에서 열기를 원합니까? 자동으로 다운로드 할까요? '\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': '자동 다운로드'\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': '이미지를 추가할 권한이 없습니다. '\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': '업로드할 이미지 파일을 선택하시오.'\n'Add new image': '새로운 이미지 추가'\n'Delete image $1': '이미지 $1 삭제'\n'Used in articles': '기사에서 사용중'\n'View image': '이미지 보기'\n'Change image information': '이미지 정보 수정'\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.ku.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file: $1.': null\n'Only this translation': null\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': null\n'All translations': null\n'Save All': null\nFiles: null\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': null\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': null\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': null\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': null\n'Add new image': null\n'Delete image $1': null\n'Used in articles': null\n'View image': null\n'Change image information': null\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.lv.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file: $1.': null\n'Only this translation': null\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': null\n'All translations': null\n'Save All': null\nFiles: null\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': null\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': null\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': null\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': null\n'Add new image': null\n'Delete image $1': null\n'Used in articles': null\n'View image': null\n'Change image information': null\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.mr.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file: $1.': null\n'Only this translation': null\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': null\n'All translations': null\n'Save All': null\nFiles: null\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': null\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': null\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': null\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': null\n'Add new image': null\n'Delete image $1': null\n'Used in articles': null\n'View image': null\n'Change image information': null\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.nb_NO.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file: $1.': null\n'Only this translation': null\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': null\n'All translations': null\n'Save All': null\nFiles: null\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': null\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': null\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': null\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': null\n'Add new image': null\n'Delete image $1': null\n'Used in articles': null\n'View image': null\n'Change image information': null\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.nl.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': 'Moet dit bestand alleen beschikbaar zijn voor deze vertaling of voor alle vertalingen?'\n'Please enter a description for the file: $1.': null\n'Only this translation': 'Alleen deze vertaling'\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': 'Bewerk bestand informatie'\n'All translations': 'Alle vertalingen'\n'Save All': null\nFiles: Bestanden\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': 'Open in de browser.'\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': 'Wilt u dat dit bestand opent in de browser of dat het wordt gedownload?'\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': 'Automatisch downloaden'\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': null\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': null\n'Add new image': 'Voeg nieuwe afbeelding toe'\n'Delete image $1': 'Verwijder afbeelding $1'\n'Used in articles': 'Gebruikt in artikelen'\n'View image': 'Bekijk afbeelding'\n'Change image information': 'Wijzig afbeelding informatie'\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.pa.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file: $1.': null\n'Only this translation': null\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': null\n'All translations': null\n'Save All': null\nFiles: null\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': null\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': null\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': null\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': null\n'Add new image': null\n'Delete image $1': null\n'Used in articles': null\n'View image': null\n'Change image information': null\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.pl.yml",
    "content": "'No thumbnails were fixed.': 'Nie znaleziono żadnych miniatur do poprawy.'\n'Missing thumbnails fixed.': 'Pominięte miniatury zostały naprawione.'\nSlideshows: Galerie\n'You cant update used files.': 'Nie możesz aktualizować użytych plików.'\nSource: Źródło\nLocal: Lokalnie\n'Items updated.': 'Element zaktualizowany.'\nFeedback: Feedback\n'Do you want to update unused only?': 'Chcesz zaktualizować tylko nieużywane?'\n'Disapprove selected': 'Wybrano cofniecie akceptacji'\n'Are you sure you want to update selected items?': 'Jesteć pewien że chcesz zaktualizować wybrane elementy?'\n'Approve selected': 'Wybrano akceptację'\n'Image files': 'Pliki zdjęć'\n'Fix all thumbnails': 'Popraw wszystkie miniatury'\n'You do not have the right to add files.': 'Nie masz praw aby dodawać pliki.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Czy plik powinień być dostępny do tłumaczenia tego artykułu, czy dla wszystkich tłumaczeń?'\n'Please enter a description for the file: $1.': 'Wprowadź opis dla pliku $1.'\n'Only this translation': 'Tylko to tłumaczenie'\n'No files for multi editing.': 'Brak plików do edycji.'\n'Edit files': 'Edytuj pliki'\n'Change file information': 'Zmień info o pliku'\n'All translations': 'Wszystkie tłumaczenia'\n'Save All': 'Zapisz wszystko'\nFiles: Pliki\n'You cant delete used files.': 'Nie możesz usuwać używanych plików.'\n'Do you want to delete unused only?': 'Czy chcesz usunąć tylko nieużywane pliki?'\n'View attachment': 'Zobacz załącznik'\n'Select some items first.': 'Wybierz jakieś rzeczy wpierw'\n'Open in the browser': 'Otwórz w przeglądarce'\n'Media Archive': 'Biblioteka Mediów'\n'Last modified': 'Ostatnia modyfikacja'\n'Items deleted.': 'Usunięte pozycje.'\n'File uploaded.': 'Plik dodany.'\n'Do you want this file to open in the users browser, or to automatically download?': 'Czy ten plik ma się otwierać w przeglądarce czy pobierać automatycznie?'\n'Delete selected': 'Usuń wybrane'\nCreated: Utworzono\nCharset: 'System znaków'\n'Change attachment information': 'Zmień informacje o załączniku'\n'Automatically download': 'Pobierz automatycznie'\n'Attachment updated.': 'Załacznik zaktualizowany.'\n'Are you sure you want to delete selected items?': 'Na pewno chcesz usunąć zaznaczone pozycje?'\n'Add new file': 'Dodaj nowy plik'\n'You do not have the right to add images.': 'Nie masz uprawnień do dodawania zdjęć.'\n'Use for all': 'Zastosuj dla wszystkich'\n'Specify image url if you want to load it.': 'Podaj adres url do zdjęcia aby je załadować.'\nSize: Rozmiar\n'No images for multi editing.': 'Brak zdjęć do multiedycji'\n'Images updated.': 'Zdjęcia dodane.'\n'Edit images': 'Edytuj zdjecia'\n'$1 files uploaded.': 'Dodano plików: $1'\n'Unable to add new image.': 'Nie można dodać nowego zdjęcia.'\n'Image updated.': 'Zdjęcie zaktualizowane.'\n'Image $1 deleted.': 'Zdjęcie $1 usunięte.'\n'Image is in use, it cannot be deleted.': 'Zdjęcie w użyciu, nie może być usunięte.'\n'You must select an image file to upload.': 'Musisz wybrać zdjęcie nim je dodasz.'\n'Add new image': 'Dodaj nowe zdjęcie'\n'Delete image $1': 'Usuń zdjęcie $1'\n'Used in articles': 'Używane w artykułach'\n'View image': 'Zobacz zdjęcie'\n'Change image information': 'Zmień informacje o zdjęciu'\n'Photographer URL': 'Adres www fotografa'\n'Add website url starting with http://': 'Podaj adres www zaczynając od http://'\n'An error occured while uploading the file $1': 'Podczas ładowania pliku $1 wystąpił błąd'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.ps.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file: $1.': null\n'Only this translation': null\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': null\n'All translations': null\n'Save All': null\nFiles: null\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': null\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': null\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': null\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': null\n'Add new image': null\n'Delete image $1': null\n'Used in articles': null\n'View image': null\n'Change image information': null\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.pt.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': 'Não tem permissões para anexar ficheiros.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Este ficheiro deverá estar apenas dipsonivél para esta tradução, ou para todas as traduções?'\n'Please enter a description for the file: $1.': null\n'Only this translation': 'Apenas esta tradução'\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': 'Alterar as informações do ficheiro'\n'All translations': 'Todas as traduções.'\n'Save All': null\nFiles: Ficheiros\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': 'Abrir no navegador'\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': 'Deseja que o ficheiro seja aberto na janela do navegador ou que deva ser feita automáticamente a transferência do ficheiro?'\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': 'Transferir automaticamente.'\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': 'Nao tem permissões para adicionar imagens.'\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': 'Selecione uma imagem para transferir'\n'Add new image': 'Adicionar Imagem'\n'Delete image $1': 'Apagar imagem'\n'Used in articles': 'Usado no(s) artigo(s)'\n'View image': 'Ver imagem'\n'Change image information': 'Alterar informações da imagem'\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.pt_BR.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: Slideshows\n'You cant update used files.': 'Você não pode atualizar arquivos usados.'\nSource: Fonte\nLocal: Local\n'Items updated.': 'Itens atualizados'\nFeedback: Feedback\n'Do you want to update unused only?': 'Quer atualizar apenas os que não são usados?'\n'Disapprove selected': 'Não aprovar selecionados'\n'Are you sure you want to update selected items?': 'Tem certeza que quer atualizar itens selecionados?'\n'Approve selected': 'Aprovar selecionados'\n'Image files': 'Arquivos de imagem'\n'Fix all thumbnails': 'Consertar todas as miniaturas'\n'You do not have the right to add files.': 'Não tem permissões para anexar ficheiros.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Este ficheiro deverá estar apenas dipsonivél para esta tradução, ou para todas as traduções?'\n'Please enter a description for the file: $1.': 'Por favor digite a descrição para o arquivo: $1.'\n'Only this translation': 'Apenas esta tradução'\n'No files for multi editing.': 'Não há arquivos para edição múltipla.'\n'Edit files': 'Editar arquivos'\n'Change file information': 'Alterar as informações do ficheiro'\n'All translations': 'Todas as traduções.'\n'Save All': 'Salvar tudo'\nFiles: Arquivos\n'You cant delete used files.': 'Você não pode remover arquivos usados.'\n'Do you want to delete unused only?': 'Quer apagar apenas os não usados?'\n'View attachment': 'Ver anexo'\n'Select some items first.': 'Primeiro selecione algum item.'\n'Open in the browser': 'Abrir no navegador'\n'Media Archive': 'Arquivo de mídia'\n'Last modified': 'Modificado pela última vez'\n'Items deleted.': 'Itens apagados.'\n'File uploaded.': 'Upload completo'\n'Do you want this file to open in the users browser, or to automatically download?': 'Deseja que o ficheiro seja aberto na janela do navegador ou que deva ser feita automáticamente a transferência do ficheiro?'\n'Delete selected': 'Remover selecionados'\nCreated: Criado\nCharset: Charset\n'Change attachment information': 'Modificar dados do anexo'\n'Automatically download': 'Transferir automaticamente.'\n'Attachment updated.': 'Anexo atualizado'\n'Are you sure you want to delete selected items?': 'Você tem certeza que quer remover itens selecionados?'\n'Add new file': 'Adicionar arquivo novo'\n'You do not have the right to add images.': 'Nao tem permissões para adicionar imagens.'\n'Use for all': 'Usar para tudo'\n'Specify image url if you want to load it.': 'Especifique o endereço url da imagem se quer fazer o load dela.'\nSize: Tamanho\n'No images for multi editing.': 'Não há imagens para edição múltipla'\n'Images updated.': 'Imagens atualizadas'\n'Edit images': 'Editar imagens'\n'$1 files uploaded.': 'Upload de $1 arquivo(s) completado'\n'Unable to add new image.': 'Não foi possível adicionar novas imagens'\n'Image updated.': 'Imagem atualizada.'\n'Image $1 deleted.': 'Imagem $1 removida.'\n'Image is in use, it cannot be deleted.': 'Imagem está em uso, não pode ser removida.'\n'You must select an image file to upload.': 'Selecione uma imagem para transferir'\n'Add new image': 'Adicionar Imagem'\n'Delete image $1': 'Apagar imagem'\n'Used in articles': 'Usado no(s) artigo(s)'\n'View image': 'Ver imagem'\n'Change image information': 'Alterar informações da imagem'\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.ro.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': 'Nu ai dreptul să adaugi fişiere.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Acest fişier ar trebuie să fie disponibil pentru această traducere a articolului sau pentru toate traducerile?'\n'Please enter a description for the file: $1.': null\n'Only this translation': 'Numai această traducere'\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': 'Schimbă informaţiile despre fişier'\n'All translations': 'Toate traducerile'\n'Save All': 'Salvează totul'\nFiles: Fișiere\n'You cant delete used files.': 'Nu se pot șterge fișiere în uz.'\n'Do you want to delete unused only?': null\n'View attachment': 'Vizualizează fișierul atașat.'\n'Select some items first.': 'Selectează căteva elemente.'\n'Open in the browser': 'Deschide în browser'\n'Media Archive': 'Arhivă media'\n'Last modified': 'Ultima modificare'\n'Items deleted.': 'Elemente șterse.'\n'File uploaded.': 'Fișier încărcat'\n'Do you want this file to open in the users browser, or to automatically download?': 'Vrei ca acest fişier să se deschidă în browser-ul utilizatorului, sau să se descarce automat?'\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': 'Descărcare automată'\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': 'Nu ai dreptul să adaugi imagini.'\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: Mărime\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': 'Nu pot sa ataşez imaginea.'\n'Image updated.': 'Imaginea a fost actualizată.'\n'Image $1 deleted.': 'Imaginea $1 a fost ştearsă.'\n'Image is in use, it cannot be deleted.': 'Imaginea este în uz, nu poate fi ştearsă.'\n'You must select an image file to upload.': 'Selectează o imagine pentru a o încărca în sistem.'\n'Add new image': 'Adaugă o imagine nouă'\n'Delete image $1': 'Şterge imaginea $1'\n'Used in articles': 'Folosită în articole'\n'View image': 'Vezi imaginea'\n'Change image information': 'Modifică informaţiile despre imagine'\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.ru.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: Слайдшоу\n'You cant update used files.': 'Вы не можете обновить использованные файлы.'\nSource: Источник\nLocal: Местный\n'Items updated.': 'Пункты обновлены.'\nFeedback: 'Обратная связь'\n'Do you want to update unused only?': 'Вы хотите обновить только неиспользованное?'\n'Disapprove selected': 'Не принимать выбранное'\n'Are you sure you want to update selected items?': 'Вы уверены, что хотите обновить выбранные пункты?'\n'Approve selected': 'Принять выбранное'\n'Image files': 'Файлы изображений'\n'Fix all thumbnails': 'Исправить все thumbnails'\n'You do not have the right to add files.': 'Вы не имеете прав доступа для добавления файлов.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Этот файл должен быть доступен только для этого перевода статьи, или для всех переводов?'\n'Please enter a description for the file: $1.': 'Введите описание файла: $1.'\n'Only this translation': 'Только этот перевод'\n'No files for multi editing.': 'Нет файлов для общего редактирования.'\n'Edit files': 'Редактировать файлы'\n'Change file information': 'Изменить информацию о файле'\n'All translations': 'Все переводы'\n'Save All': 'Сохранить все'\nFiles: Файлы\n'You cant delete used files.': 'Вы не можете удалить используемые файлы.'\n'Do you want to delete unused only?': 'Вы хотите удалить только неиспользуемые файлы?'\n'View attachment': 'Показать прикрепленный файл'\n'Select some items first.': 'Выберите сначала несколько элементов'\n'Open in the browser': 'Открыть в браузере'\n'Media Archive': Медиа-архив\n'Last modified': 'Последние изменения'\n'Items deleted.': 'Элементы удалены.'\n'File uploaded.': 'Файл загружен.'\n'Do you want this file to open in the users browser, or to automatically download?': 'Вы хотите, чтобы этот файл открывался в браузере пользователя или автоматически загружался?'\n'Delete selected': 'Удалить выбранные'\nCreated: Создана\nCharset: Кодировка\n'Change attachment information': 'Изменить информацию об присоединенном файле'\n'Automatically download': 'Автоматическая загрузка'\n'Attachment updated.': 'Присоединенный файл обновлен.'\n'Are you sure you want to delete selected items?': 'Вы уверены, что хотите удалить выбранные элементы?'\n'Add new file': 'Добавить новый файл'\n'You do not have the right to add images.': 'Вы не имеете прав доступа для добавления изображений.'\n'Use for all': 'Использовать для всех'\n'Specify image url if you want to load it.': 'Укажите url изображения, если хотите загрузить его.'\nSize: Размер\n'No images for multi editing.': 'Нет изображений для многофайлового редактирования.'\n'Images updated.': 'Обновление изображений.'\n'Edit images': 'Редактировать изображения'\n'$1 files uploaded.': 'Файлы $1 загружены.'\n'Unable to add new image.': 'Невозможно добавление нового изображения.'\n'Image updated.': 'Изображение обновлено.'\n'Image $1 deleted.': 'Изображение $1 удалено.'\n'Image is in use, it cannot be deleted.': 'Изображение используется и не может быть удалено.'\n'You must select an image file to upload.': 'Вы должны выбрать графический файл для загрузки.'\n'Add new image': 'Добавить новое изображение'\n'Delete image $1': 'Удалить изображение $1'\n'Used in articles': 'Использована в статьях'\n'View image': 'Просмотр картинки'\n'Change image information': 'Измениить информацию об изображении'\n'Photographer URL': 'URL фотографа'\n'Add website url starting with http://': 'Добавьте url сайте, начиная с http://'\n'An error occured while uploading the file $1': 'При загрузке файла $1 произошла ошибка'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.sh.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': 'Ne možete menjati fajlove koji su u upotrebi'\nSource: Izvor\nLocal: Lokalni\n'Items updated.': 'Stavke izmenjene'\nFeedback: 'Povratna informacija'\n'Do you want to update unused only?': 'Da li želite da menjate samo nekorišćene?'\n'Disapprove selected': 'Nodobri izabrano'\n'Are you sure you want to update selected items?': 'Da li ste sigurni da želite da izmenite izabrane stavke?'\n'Approve selected': 'Ododbri izabrano'\n'Image files': Slike\n'Fix all thumbnails': 'Popravi sve umanjene verzije slika'\n'You do not have the right to add files.': 'Nemate pravo da dodajete fajlove.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Da li ovaj fajl treba da bude dostupan za ovaj prevod teksta, ili za sve prevode?'\n'Please enter a description for the file: $1.': 'Unesite opis za fajl $1.'\n'Only this translation': 'Samo ovaj prevod'\n'No files for multi editing.': 'Nema fajlova za višestruko uređivanje'\n'Edit files': 'Uredi fajlove'\n'Change file information': 'Promeni informacije o fajlu'\n'All translations': 'Svi prevodi'\n'Save All': 'Sačuvaj sve'\nFiles: Fajlova\n'You cant delete used files.': 'Ne možete brisati fajlove koji su u upotrebi'\n'Do you want to delete unused only?': 'da liželite da obrišete samo nekorišćene?'\n'View attachment': 'Pogledaj zakačeni fajl'\n'Select some items first.': 'Prvo izaberite neke stavke'\n'Open in the browser': 'Otvori u pretraživaču'\n'Media Archive': 'Arhiva medijskih zapisa'\n'Last modified': Izmenjeno\n'Items deleted.': 'Stavke izbirsane'\n'File uploaded.': 'Fajl aploudovan'\n'Do you want this file to open in the users browser, or to automatically download?': 'Da li želite da se ovaj fajl otvara u pretraživaču korisnika, ili da se automatski preuzme?'\n'Delete selected': 'Obriši izabrano'\nCreated: Napravljeno\nCharset: Charset\n'Change attachment information': 'Promeni informacije o zakačenom fajlu'\n'Automatically download': 'Automatsko preuzimanje'\n'Attachment updated.': 'Fajl je izmenjen'\n'Are you sure you want to delete selected items?': 'Da li ste sigurni d aželite da obrišete izabrane stavke?'\n'Add new file': 'Dodaj novi fajl'\n'You do not have the right to add images.': 'Nemate pravo da dodajete slike.'\n'Use for all': 'Koristi za sve.'\n'Specify image url if you want to load it.': 'Odredite URL slike ako želite da je učitate.'\nSize: Veličina\n'No images for multi editing.': 'Nema slika za višestruko uređivanje'\n'Images updated.': 'slike izmenjene.'\n'Edit images': 'Uredi slike'\n'$1 files uploaded.': '$1 fajlova aploudovano.'\n'Unable to add new image.': 'Nije moguće dodati novu sliku.'\n'Image updated.': 'slika izmenjena'\n'Image $1 deleted.': 'slika 41 je obrisana.'\n'Image is in use, it cannot be deleted.': 'slika se koristi i ne može biti obrisana.'\n'You must select an image file to upload.': 'Morate izabrati sliku koju želite da aploudujete.'\n'Add new image': 'Dodaj novu sliku'\n'Delete image $1': 'Izbriši sliku $1'\n'Used in articles': 'Koristi se u sledećim tekstovima'\n'View image': 'Prikaži sliku'\n'Change image information': 'Promeni podatke o slici'\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.sq.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file: $1.': null\n'Only this translation': null\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': null\n'All translations': null\n'Save All': null\nFiles: null\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': null\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': null\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': null\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': null\n'Add new image': null\n'Delete image $1': null\n'Used in articles': null\n'View image': null\n'Change image information': null\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.sr.yml",
    "content": "'No thumbnails were fixed.': 'Прикази слика нису сређени.'\n'Missing thumbnails fixed.': 'Прикази слика сређени.'\nSlideshows: 'Галерија слика'\n'You cant update used files.': 'Не можете мењати фајлове који су у употреби'\nSource: Извор\nLocal: Локални\n'Items updated.': 'Ставке измењене'\nFeedback: 'Повратна информација'\n'Do you want to update unused only?': 'Да ли желите да мењате само некоришћене?'\n'Disapprove selected': 'Неодобри изабрано'\n'Are you sure you want to update selected items?': 'Да ли сте сигурни да желите да измените изабране ставке?'\n'Approve selected': 'Одобри изабрано'\n'Image files': Слике\n'Fix all thumbnails': 'Поправи све уманјене верзије слика'\n'You do not have the right to add files.': 'Немате право да додајете фајлове.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Да ли овај фајл треба да буде доступан за овај превод текста, или за све преводе?'\n'Please enter a description for the file: $1.': 'Унесите опис за фајл $1.'\n'Only this translation': 'Само овај превод'\n'No files for multi editing.': 'Нема фајлова за вишеструко уређивање'\n'Edit files': 'Уреди фајлове'\n'Change file information': 'Промени информације о фајлу'\n'All translations': 'Сви преводи'\n'Save All': 'сачувај све'\nFiles: Фајлова\n'You cant delete used files.': 'Не можете брисати фајлове који су у употреби'\n'Do you want to delete unused only?': 'Да ли желите да обришете само некоришћене?'\n'View attachment': 'Погледај закачени фајл'\n'Select some items first.': 'Прво изаберите неке ставке'\n'Open in the browser': 'Отвори у претраживачу'\n'Media Archive': 'Архива медијских записа'\n'Last modified': Измењено\n'Items deleted.': 'Ставке избрисане'\n'File uploaded.': 'Фајл аплоудован'\n'Do you want this file to open in the users browser, or to automatically download?': 'Да ли желите да се овај фајл отвара у претраживачу корисника, или да се аутоматски преузме?'\n'Delete selected': 'Обриши изабрано'\nCreated: Направљено\nCharset: 'Карактер сет'\n'Change attachment information': 'Промени информације о закаченом фајлу'\n'Automatically download': 'Аутоматско преузимање'\n'Attachment updated.': 'Фајл је измењен'\n'Are you sure you want to delete selected items?': 'Да ли сте сигурни да желите да обришете изабране ставке?'\n'Add new file': 'Додај нови фајл'\n'You do not have the right to add images.': 'Немате право да додајете слике.'\n'Use for all': 'Користи за све.'\n'Specify image url if you want to load it.': 'Одредите УРЛ слике ако желите да је учитате.'\nSize: Величина\n'No images for multi editing.': 'Нема слика за вишеструко уређивање'\n'Images updated.': 'слике измењене'\n'Edit images': 'Уреди слике'\n'$1 files uploaded.': '$1 фајлова аплоудовано.'\n'Unable to add new image.': 'Није могуће додати нову слику.'\n'Image updated.': 'слика измењена'\n'Image $1 deleted.': 'слика $1 је обрисана.'\n'Image is in use, it cannot be deleted.': 'слика се користи и не може бити обрисана.'\n'You must select an image file to upload.': 'Морате изабрати слику коју желите да аплоудујете.'\n'Add new image': 'Додајте нову слику'\n'Delete image $1': 'Избриши слику $1'\n'Used in articles': 'Користи се у следећим текстовима'\n'View image': 'Прикажи слику'\n'Change image information': 'Промени податке о слици'\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': 'Дошло је до проблема при аплоуду фајла $1'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.sv.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': 'Du har inte rätt att lägga till filer.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Ska den här filen bara vara tillgänglig för den här översättningen av artikeln eller för alla översättningar?'\n'Please enter a description for the file: $1.': null\n'Only this translation': 'Bara i denna översättning'\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': 'Ändra filinformation'\n'All translations': 'Alla översättningar'\n'Save All': null\nFiles: Filer\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': 'Öppna i webbläsaren'\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': 'Vill du att den här filen ska öppnas i användarens webbläsare eller automatiskt laddas ner?'\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': 'Automatiskt laddas ner'\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': 'Du har inte rätt att lägga till bilder.'\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': 'Du måste välja en bild att ladda upp.'\n'Add new image': 'Lägg till ny bild'\n'Delete image $1': 'Radera bild $1'\n'Used in articles': 'Används i artiklarna'\n'View image': 'Visa bild'\n'Change image information': 'Ändra bildinformation'\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.tr.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file: $1.': null\n'Only this translation': null\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': null\n'All translations': null\n'Save All': null\nFiles: null\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': null\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': null\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': null\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': null\n'Add new image': null\n'Delete image $1': null\n'Used in articles': null\n'View image': null\n'Change image information': null\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.uk.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: Слайдшоу\n'You cant update used files.': 'Ви не можете оновити використовувані файли.'\nSource: Джерело\nLocal: Місцевий\n'Items updated.': 'Пункти оновлені.'\nFeedback: 'Зворотній звязок'\n'Do you want to update unused only?': 'Ви хочете оновити тільки не використане?'\n'Disapprove selected': 'Відхилити вибрані'\n'Are you sure you want to update selected items?': 'Ви дійсно хочете оновити вибрані пункти?'\n'Approve selected': 'Затвердити обране'\n'Image files': 'Графічні файли'\n'Fix all thumbnails': 'Виправити всі ескізи'\n'You do not have the right to add files.': 'Ви не маєте прав додавати файли.'\n'Should this file only be available for this translation of the article, or for all translations?': 'Цей файл має бути дозволений тільки для цього перекладу, або для всіх?'\n'Please enter a description for the file: $1.': 'Будь ласка введіть опис для файлу: $1.'\n'Only this translation': 'Тільки цей переклад'\n'No files for multi editing.': 'Немає файлів для мультиредагування.'\n'Edit files': 'Редагувати файли'\n'Change file information': 'Змінити інформацію про файл'\n'All translations': 'Усі переклади'\n'Save All': 'Зберегти все'\nFiles: Файли\n'You cant delete used files.': 'Ви не можете видаляти використовувані файли.'\n'Do you want to delete unused only?': 'Ви дійсно хочете видалти тільки невикористовувані файли.'\n'View attachment': 'Переглянути прікріплення'\n'Select some items first.': 'Спочатку виберіть декілька пунктів.'\n'Open in the browser': 'Відкрити у браузері'\n'Media Archive': 'Медіа архів'\n'Last modified': 'Останні зміни'\n'Items deleted.': 'Пункти видалені.'\n'File uploaded.': 'Файл завантажено.'\n'Do you want this file to open in the users browser, or to automatically download?': 'Ви бажаєте щоб цей файл відкривався у бразері користувача або автоматично завантажувався?'\n'Delete selected': 'Видалити вибране'\nCreated: Створена\nCharset: Кодировка\n'Change attachment information': 'Змінити інформацію про прікріплення'\n'Automatically download': 'Автоматичне завантаження'\n'Attachment updated.': 'Прікріплення оновлене.'\n'Are you sure you want to delete selected items?': 'Ви впевнені що хочете видалити вибрані пункти?'\n'Add new file': 'Додати новий файл'\n'You do not have the right to add images.': 'Ви не маєте прав додавати зображення.'\n'Use for all': 'Використати для всіх'\n'Specify image url if you want to load it.': 'Вкажіть посилання на зображення, якщо хочете його завантажити.'\nSize: Розмір\n'No images for multi editing.': 'Немає зображень для мульиредагування.'\n'Images updated.': 'Зображення оновлено.'\n'Edit images': 'Редагувати зображення'\n'$1 files uploaded.': '$1 файли завантажені.'\n'Unable to add new image.': 'Неможливо додати нове зображення.'\n'Image updated.': 'Зображення оновлено.'\n'Image $1 deleted.': 'Зображення $1 видалено.'\n'Image is in use, it cannot be deleted.': 'Зображення використовується та не може бути видалено.'\n'You must select an image file to upload.': 'Ви маєте вибрати зображення для завантаження.'\n'Add new image': 'Додати нове зображення'\n'Delete image $1': 'Видалити зображення $1'\n'Used in articles': 'Використовується у статтях'\n'View image': 'Переглянути зображення'\n'Change image information': 'Змінити інформацію про зображення'\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.vi.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file: $1.': null\n'Only this translation': null\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': null\n'All translations': null\n'Save All': null\nFiles: null\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': null\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': null\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': null\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': null\n'Add new image': null\n'Delete image $1': null\n'Used in articles': null\n'View image': null\n'Change image information': null\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.zh.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': 图像文件\n'Fix all thumbnails': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file: $1.': null\n'Only this translation': null\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': null\n'All translations': null\n'Save All': null\nFiles: 文件\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': null\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': null\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': 您没有权限添加图片。\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': 无法添加新图片。\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': null\n'Add new image': 添加新图片\n'Delete image $1': 删除图片$1\n'Used in articles': null\n'View image': 查看图片\n'Change image information': 修改图片信息\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/media_archive.zh_TW.yml",
    "content": "'No thumbnails were fixed.': null\n'Missing thumbnails fixed.': null\nSlideshows: null\n'You cant update used files.': null\nSource: null\nLocal: null\n'Items updated.': null\nFeedback: null\n'Do you want to update unused only?': null\n'Disapprove selected': null\n'Are you sure you want to update selected items?': null\n'Approve selected': null\n'Image files': null\n'Fix all thumbnails': null\n'You do not have the right to add files.': null\n'Should this file only be available for this translation of the article, or for all translations?': null\n'Please enter a description for the file: $1.': null\n'Only this translation': null\n'No files for multi editing.': null\n'Edit files': null\n'Change file information': null\n'All translations': null\n'Save All': null\nFiles: null\n'You cant delete used files.': null\n'Do you want to delete unused only?': null\n'View attachment': null\n'Select some items first.': null\n'Open in the browser': null\n'Media Archive': null\n'Last modified': null\n'Items deleted.': null\n'File uploaded.': null\n'Do you want this file to open in the users browser, or to automatically download?': null\n'Delete selected': null\nCreated: null\nCharset: null\n'Change attachment information': null\n'Automatically download': null\n'Attachment updated.': null\n'Are you sure you want to delete selected items?': null\n'Add new file': null\n'You do not have the right to add images.': null\n'Use for all': null\n'Specify image url if you want to load it.': null\nSize: null\n'No images for multi editing.': null\n'Images updated.': null\n'Edit images': null\n'$1 files uploaded.': null\n'Unable to add new image.': null\n'Image updated.': null\n'Image $1 deleted.': null\n'Image is in use, it cannot be deleted.': null\n'You must select an image file to upload.': null\n'Add new image': null\n'Delete image $1': 删除图片$1\n'Used in articles': null\n'View image': null\n'Change image information': 修改图片信息\n'Photographer URL': null\n'Add website url starting with http://': null\n'An error occured while uploading the file $1': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.ar.yml",
    "content": "Plugins: ملحقات\n'Manage Plugins': 'إدارة ملحقات'\nAccount: حساب\n'Items per page': 'عدد البنود في كل صفحة'\n'Add new': 'أضف جديد'\nHome: 'الصفحة الرئيسية'\nLogout: 'تسجيل الخروج'\nMore...: المزيد...\nContent: المحتوى\nLanguages: اللغات\nCountries: البلدان\nThemes: نُسق\nTopics: الموضوعات\nConfigure: إعداد\n'Image Archive': 'أرشيف الصور'\n'Add Article': 'أضف مقال'\nFields: الخانات\nDelete: إحذف\nType: نوع\nName: اسم\nCode: رمز\nEdit: تعديل\nLogin: 'تسجيل الدخول'\nPassword: 'كلمة السر'\nSite: الموقع\nPath: المسار\n'Go up': 'إذهب للأعلى'\nURL: 'عنوان الرابط'\nOrder: الترتيب\nHide: أخف\nDuplicate: كرر\nSubscription: الإشتراك\nexpires: ينتهي\nstarts: يبدأ\nbefore: قبل\nafter: بعد\non: 'قيد التشغيل'\nstatus: الحالة\nactive: 'قيد التشغيل'\ninactive: 'قيد الإيقاف'\nSubscribers: المشتركون\nStaff: 'طاقم العمل'\n'Select destination': 'اختر المستهدف'\n'No languages': 'لا لغات'\n'---Select language---': '---اختر لغة---'\n'No publications': 'لا منشورات'\n'---Select publication---': '---اختر منشور---'\n'No issues': 'لا أعداد'\n'---Select issue---': '---اختر عدد---'\n'No sections': 'لا أقسام'\n'---Select section---': '---اختر قسم---'\nLanguage: اللغة\nCountry: البلد\n'Account name': 'اسم الحساب'\nPublication: المنشور\n'Default language': 'اللغة الرئيسية'\nSubscriptions: الإشتراكات\nIssue: العدد\nNumber: الرقم\nSection: القسم\nKeywords: 'الكلمات الدالة'\nTopic: موضوع\n'URL Name': 'اسم عنوان الرابط'\n'Left to pay': 'المبلغ المتبقي للدفع'\nActive: منشّط\nTrial: 'اشتراك تجريبي'\nNext: التالي\nPrevious: السابق\nTranslate: ترجم\nView: إعرض\n'Scheduled Publishing': 'النشر المجدول'\nTime: الوقت\nAction: الاجراء\n'Schedule a new action': 'عين اجراء جديد'\n'Scheduling a new publish action': 'قيد تعيين اجراء جديد للنشر'\n'Delete scheduled publish action': 'إحذف الإجراء المجدول للنشر'\nDate/Time: التاريخ/الوقت\n'You must select an action.': 'يجب عليك أن تختار اجراء.'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'ليس لديك الحق في جدولة أعداد أو مقالات للنشر الأوتوماتي'\n'Front page': 'الصفحة الأمامية'\n'Section page': 'صفحة القسم'\n'Show on front page': 'أظهر على الصفحة الأمامية'\n'Remove from front page': 'أزل عن الصفحة الأمامية'\n'Show on section page': 'أظهر على صفحة الأقسام'\n'Remove from section page': 'أزل عن صفحة الأقسام'\nActions: الاجراءات\nPublishing: النشر\nShow: أظهر\nRemove: أزل\n'Article Types': 'أنواع المقال'\n'Staff User Types': 'أنواع المستخدم من طاقم العمل'\nPublications: المنشورات\nIssues: الأعداد\nSections: الأقسام\nArticles: المقالات\nImages: الصور\nChange: تغيير\n'Add new issue': 'أضف عدد جديد'\n'Section Template': 'نموذج القسم'\n'Article Template': 'نموذج المقال'\n'Default Language': 'اللغة الرئيسية'\n'Paid Period': 'فترة للدفع'\nPreview: معاينة\n'You must fill in the $1 field.': 'يجب عليك أن تملأ الخانة $1'\nError: خطأ\n'Invalid input: $1': 'إدخال غير صالح: $1'\n'Language does not exist.': 'اللغة غير موجودة'\n'Publication does not exist.': 'المنشور غير موجود'\n'Issue does not exist.': 'العدد غير موجود'\n'You must select a language.': 'يجب عليك أن تختار لغة'\n'Section does not exist.': 'القسم غير موجود'\n'No articles.': 'لا مقالات'\n'Article does not exist.': 'المقال غير موجود'\n'Image does not exist.': 'الصورة غير موجودة'\n'Access denied': 'الدخول مرفوض'\n'Invalid parameters received': 'تم إستقبال متغيرات غير صالحة'\n'Add new article': 'أضف مقال جديد'\nStatus: الحالة\nPublished: 'تم النشر'\n'Not published': 'لم ينشر'\nSubmitted: 'تم التسليم'\nNew: جديد\nArticle: مقال\nPublish: إنشر\nUnpublish: 'إلغ النشر'\nUnlock: 'إفتح القفل'\nUploaded: 'تم الرفع'\nYYYY-MM-DD: 'DD-MM-YYYY (السنة - الشهر - اليوم)'\nSubmit: تسليم\nImage: صورة\nDescription: الوصف\nPhotographer: المصوّر\nPlace: المكان\nDate: التاريخ\nThumbnail: 'الصورة المصغرة'\n'In use': 'قيد الإستخدام'\n'Additional searches': 'بحوث إضافية'\n'Most Recently Added': 'آخر إضافات'\n'Most Recently Modified': 'آخر تعديلات'\n'$1 images found': 'تم العثور على $1 صور.'\n'Reset search conditions': 'أعد تعديل شروط البحث'\n'Image number': 'رقم الصورة'\nUsers: المستخدمون\nLocalizer: المترجم\n'Adding new translation': 'قيد الإضافة ترجمة جديدة'\n'No more languages.': 'ليس هناك المزيد من اللغات'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'يسمح للخانة $1 أن تحتوي فقط على حروف وأرقام والحرف (_) ـ'\n'Add new publication': 'أضف منشور جديد'\n'Upload new template': 'إرفع نموذج جديد'\n'Add new staff member': 'أضف عضو طاقم العمل الجديد'\n'Staff member deleted.': null\n'Add new subscriber': 'أضف مشترك جديد'\n'Add new user type': 'أضف نوع مستخدم جديد'\n'Add new article type': 'أضف نوع مقال جديد'\n'Add new country': 'أضف بلد جديد'\n'Add new language': 'أضف لغة جديدة'\n'View logs': 'إعرض السجلات'\n'Change your password': 'عدل كلمة السر'\n'Your Articles': مقالاتك\n'Submitted Articles': 'المقالات المسلّمة'\nLogs: السجلات\n'There are $1 article(s) left.': 'تبقى $1 مقالات.'\n'There are $1 issues(s) left.': 'تبقى $1 أعداد.'\n'There are $1 section(s) left.': 'تبقى $1 أقسام.'\n'There are $1 publication(s) left.': 'تبقى $1 منشورات.'\n'There are $1 countries left.': 'تبقى $1 بلدان.'\n'Name <SMALL>(click to edit)</SMALL>': 'الاسم <SMALL>(اضغط لتعديل)</SMALL>'\n'Add new subscription': 'أضف إشتراك جديد'\n'You do not have the right to add subscriptions.': 'ليس لديك الحق في إضافة إشتراكات'\n'Adding subscription': 'قيد الإضافة الإشتراك'\n'Delete subscription': 'إحذف الإشتراك'\n'You do not have the right to delete subscriptions.': 'ليس لديك الحق في حذف إشتراكات'\n'No such subscription.': 'لا يوجد مثل هذا الاشتراك'\nYes: نعم\nNo: لا\nClose: أغلق\n'No issues.': 'لا أعداد.'\n'Back to Edit Article': 'العودة الى عدل المقال'\n'No topics': لاموضوعات\n'You do not have the right to add articles.': 'ليس لديك الحق في إضافة مقالات'\nStart: البداية\nDays: الأيام\n'The sections could not be added successfully. Some of them were already added !': 'لم تضف الأقسام بنجاح. كان بعض الأقسام مضافة مسبقا!'\n'Add another': 'أضف آخر'\nCancel: إلغاء\nDone: خلص\nOK: الموافقة\nSave: حفظ\nSearch: إبحث\n'Make a selection': 'قم بالإختيار'\n'You must input a number greater than 0 into the $1 field.': 'يجب عليك إدخال رقم أكبر من صفر في الخانة $1.'\n'You must input a valid date.': 'يجب عليك إدخال تاريخ صالح.'\n'Add new field': 'أضف خانة جديدة'\n'Article automatic publishing schedule': 'جدول النشر الأوتوماتي للمقالات'\n'Are you sure you want to delete this scheduled action?': 'هل أنت متأكد أنك تريد أن تحذف هذا الإجراء المجدول؟'\nUnlink: 'إفصل الرابط'\n'Are you sure you want to delete the image $1?': 'هل أنت متأكد أنك تريد أن تحذف الصورة $1؟'\n'No such issue.': 'لا يوجد مثل هذا الإصدار.'\n'Are you sure you want to delete the subscription to the publication $1?': 'هل أنت متأكد أنك تريد حذف الاشتراك الى المنشور $1 ؟'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'لا يمكن حفظ التغييرات للإصدار $1. يرجى التأكد ألّم يستخدم اسم العنوان $2 من قبل في منشور $3.'\nGB: جيجابايت\nMB: ميغابايت\nKB: كيلوبايت\nbytes: بايت\nAttach: أرفق\nBack: العودة\nFile: ملف\n'Save and Close': 'إحفظ وأغلق'\nAdd: أضف\n'Select All': 'اختر الجميع'\n'Select None': 'اختر لا شئ'\n'Add Event': 'أضف حدث'\nN/A: 'غير متوفر'\n'On Front Page': 'على الصفحة الأمامية'\n'On Section Page': 'على صفحة الأقسام'\n'Created by': الكاتب\n'Creation date': 'تاريخ الإنشاء'\n'Publication List': 'قائمة المنشورات'\n'Issue List': 'قائمة الأعداد'\n'Section List': 'قائمة الأقسام'\nAll: الجميع\nduplicate: تكرار\nmove: نقل\nMove: نقل\n'From:': 'من:'\n'Date:': 'التاريخ:'\nHidden: 'مخفي '\nComments: تعليقات\nComment: التعليق\nApproved: 'موافق عليه'\nSubject: الموضوع\n'IP address:': 'عنوان بروتوكول الإنترنت:'\n'Email:': 'البريد الإلكتروني:'\nAuthor: المؤلف\n'Article name': 'اسم المقال'\n'Hide article': 'أخي المقال'\n'Show article': 'أظهر المقال'\n'Article Type Fields': 'خانات أنواع المقال'\n'Article Images': 'صور المقال'\n'Log Messages': 'رسائل السجلات'\n'Article Files': 'ملفات المقال'\n'Article Comments': 'تعليقات المقال'\n'Are you sure you want to deactivate the subscription?': 'هل أنت متأكد من عطل الإشتراك؟'\n'Are you sure you want to activate the subscription?': 'هل أنت متأكد أنك تريد تنشيط الاشتراك؟'\nOther: 'غير ذلك'\n'Time:': 'الوقت:'\n'No events.': 'لا أحداث.'\n'Default templates': 'نماذج افتراضية'\n'System Preferences': 'تفضيلات النظام'\n'The date must be in the future.': 'يجب أن يقع تاريخ البدء في المستقبل'\nSend: الإرسال\n'Thank you.': 'شكرًا لكم.'\n'Please take a minute to send us an email.': 'يرجى إرسال لنا رسالة قصيرة من جلال بريد إلكتروني.'\n(optional): (اختياري)\n'The URL you entered is invalid: $1': 'العنوان الإلكروني الذي أدخلته غير صالح: $1'\nReads: 'عدد القراءات'\n'Publish with issue': 'إنشر مع العدد'\n'Universal List': 'قائمة عالمية'\n'Invalid security token!': 'الرمز الأمني غير صالح!'\nAuthors: المؤلفون\nTitle: العنوان\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': 'تم حفظ الإعدادات.'\n'Self-delete is not permitted.': 'لا يسمح بالحذف الذاتي .'\n'Edit staff member $1': 'إضافة عضو لطاقم العمل 1$.'\n'Delete staff member $1': 'حذف عضو من طاقم العمل 1$.'\n'Could not save user $1. Please make sure it does not already exist': 'لم يتم حفظ المستخدم 1$ تأكد من أنه ليس موجوداً. '\n'Could not save user with e-mail address $1. Please make sure it does not already exist': 'لم يتم حفظ المستخدم ببريده الإلكتروني1$.تأكد من أنه ليس موجوداً.'\n'Changing user type would prevent you to manage users. Aborted.': 'تغيير نوع المستخدم سوف يمنعك من التحكم بالمستخدمين.تم إلغاء العملية.'\n'Staff member saved.': 'تم الحفظ لطاقم العمل.'\n'Permissions: $1': 'أذونات:1$'\n'Change user account information': 'تغيير معلومات حساب المستخدم.'\n'Staff management': null\nUpdated: تحديث.\nOptions: null\nVerified: null\nConfirm: أكد.\nat: في\npublished: منشور\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.az.yml",
    "content": "Plugins: Plaqinlər\n'Manage Plugins': 'Plaqinləri Quraşdır'\nAccount: Hesab\n'Items per page': 'Hər səhifədəki elementlər'\n'Add new': 'Yenisini əlavə et'\nHome: Ev\nLogout: Çıxış\nMore...: Daha...\nContent: Tərkib\nLanguages: Dillər\nCountries: Ölkələr\nThemes: Mövzular\nTopics: Mövzular\nConfigure: Konfiqurasiya\n'Image Archive': 'Şəkil Arxivi'\n'Add Article': 'Məqalə Əlavə Et'\nFields: Sahələr\nDelete: Sil\nType: Növ\nName: Ad\nCode: Şifrə\nEdit: 'Redaktə et'\nLogin: Giriş\nPassword: Şifrə\nSite: Sayt\nPath: İstiqamət\n'Go up': 'Yuxarı qalx'\nURL: URL\nOrder: Sifariş\nHide: Gizlə\nDuplicate: 'Surətini çıxar'\nSubscription: Abunəlik\nexpires: 'vaxtı ötür'\nstarts: başlayır\nbefore: əvvəl\nafter: sonra\non: 'bu vaxt'\nstatus: status\nactive: aktiv\ninactive: passiv\nSubscribers: Abunələr\nStaff: Komanda\n'Select destination': 'Ünvanı seç'\n'No languages': 'Dil yoxdur'\n'---Select language---': '---Dil seç---'\n'No publications': 'Nümayiş yoxdur'\n'---Select publication---': '---Nümayiş seç---'\n'No issues': 'Məsələ yoxdur'\n'---Select issue---': '---Məsələ seç---'\n'No sections': 'Bölmə yoxdur'\n'---Select section---': '---Bölmə seç---'\nLanguage: Dil\nCountry: Ölkə\n'Account name': 'Hesab adı'\nPublication: Nəşr\n'Default language': 'Mövcud dil'\nSubscriptions: Abunəliklər\nIssue: Məsələ\nNumber: Say\nSection: Bölmə\nKeywords: 'Açar sözlər'\nTopic: Mövzu\n'URL Name': 'URL Adı'\n'Left to pay': 'Qalıq ödəniş'\nActive: Aktiv\nTrial: Cəhd\nNext: Növbəti\nPrevious: Əvvəlki\nTranslate: 'Tərcümə Et'\nView: Bax\n'Scheduled Publishing': 'Planlaşdırılmış Nümayiş'\nTime: Zaman\nAction: Addım\n'Schedule a new action': 'Yeni addım planlaşdır'\n'Scheduling a new publish action': 'Nümayiş edilmiş addımın planlaşdırılması'\n'Delete scheduled publish action': 'Planlaşdırılmış nümayiş edilmiş addımı sil'\nDate/Time: Tarix/Zaman\n'You must select an action.': 'Addım seçməlisən.'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'Avtomatik nümayiş üçün məsələ və ya məqalələri planlaşdırmağa ixtiyarın yoxdur.'\n'Front page': 'Ön səhifə'\n'Section page': 'Bölmə səhifəsi'\n'Show on front page': 'Ön səhifədə göstər'\n'Remove from front page': 'Ön səhifədən xaric et'\n'Show on section page': 'Bölmə səhifəsində göstər'\n'Remove from section page': 'Bölmə səhifəsindən xaric et'\nActions: Addımlar\nPublishing: Nümayiş\nShow: Göstər\nRemove: 'Xaric Et'\n'Article Types': 'Məqalə Növləri'\n'Staff User Types': 'Komanda İstifadəçi Növləri'\nPublications: Nümayişlər\nIssues: Say\nSections: Bölmə\nArticles: Məqalələr\nImages: Şəkillər\nChange: Dəyiş\n'Add new issue': 'Yeni sayı əlavə et'\n'Section Template': 'Bölmə forması'\n'Article Template': 'Məqalə forması'\n'Default Language': 'Əsas dil'\n'Paid Period': 'Ödənilən dövr'\nPreview: 'İlkin görüntü'\n'You must fill in the $1 field.': '$1 sahəsini doldurmalısan.'\nError: Xəta\n'Invalid input: $1': 'Səhv giriş: $1'\n'Language does not exist.': 'Dil mövcud deyil.'\n'Publication does not exist.': 'Nümayiş mövcud deyil.'\n'Issue does not exist.': 'Məsələ mövcud deyil.'\n'You must select a language.': 'Dil seçməlisən.'\n'Section does not exist.': 'Bölmə mövcud deyil.'\n'No articles.': 'Məqalə yoxdur'\n'Article does not exist.': 'Məqalə mövcud deyil.'\n'Image does not exist.': 'Şəkil mövcud deyil.'\n'Access denied': 'Giriş qadağandır'\n'Invalid parameters received': 'Səhv parametrlər qəbul edildi'\n'Add new article': 'Yeni məqalə əlavə et'\nStatus: Status\nPublished: 'Nümayiş edildi'\n'Not published': 'Nümayiş edilmədi'\nSubmitted: 'Daxil Edildi'\nNew: Yeni\nArticle: Məqalə\nPublish: 'Nümayiş Et'\nUnpublish: 'Nümayişi Dayandır'\nUnlock: 'Kilidi Aç'\nUploaded: Yüklənib\nYYYY-MM-DD: İİİİ-AA-GG\nSubmit: Göndər\nImage: Şəkil\nDescription: İzah\nPhotographer: Fotoqraf\nPlace: Yer\nDate: Tarix\nThumbnail: Eskiz\n'In use': İstifadədə\n'Additional searches': 'Əlavə axtarışlar'\n'Most Recently Added': 'Son Əlavə Edilən'\n'Most Recently Modified': 'Son Dəyişiklik Edilən'\n'$1 images found': '$1 şəkli tapıldı'\n'Reset search conditions': 'Axtarışın növünü dəyiş'\n'Image number': 'Şəkil nömrəsi'\nUsers: İstifadəçilər\nLocalizer: Tərcüməçi\n'Adding new translation': 'Yeni tərcümənin əlavə edilməsi'\n'No more languages.': 'Başqa dil yoxdur.'\n'The $1 field may only contain letters, digits and underscore (_) character.': '$1 sahəsində yalnız hərf, rəqəm və alt xətt (_) ola bilər.'\n'Add new publication': 'Yeni nəşr əlavə et'\n'Upload new template': 'Yeni nümunə yüklə'\n'Add new staff member': 'Yeni komanda üzvü əlavə et'\n'Staff member deleted.': 'Komanda üzvü silindi.'\n'Add new subscriber': 'Yeni abunə əlavə et'\n'Add new user type': 'Yeni istifadəçi növü əlavə et'\n'Add new article type': 'Yeni məqalə növü əlavə et'\n'Add new country': 'Yeni ölkə əlavə et'\n'Add new language': 'Yeni dil əlavə et'\n'View logs': 'Girişlərə bax'\n'Change your password': 'Şifrəni dəyiş'\n'Your Articles': Məqalələrin\n'Submitted Articles': 'Daxil Edilmiş Məqalələr'\nLogs: 'Daxil olma'\n'There are $1 article(s) left.': '$1 məqalə(lər) qalıb.'\n'There are $1 issues(s) left.': '$1 məsələ(lər) qalıb.'\n'There are $1 section(s) left.': '$1 bölmə(lər) qalıb.'\n'There are $1 publication(s) left.': '$1 nəşr(lər) qalıb.'\n'There are $1 countries left.': '$1 ölkə(lər) qalıb.'\n'Name <SMALL>(click to edit)</SMALL>': 'Ad <SMALL>(dəyişmək üçün kliklə)</SMALL>'\n'Add new subscription': 'Yeni abunəlik əlavə et'\n'You do not have the right to add subscriptions.': 'Abunəlik əlavə etməyə ixtiyarın yoxdur.'\n'Adding subscription': 'Abunəliyin əlavə edilməsi'\n'Delete subscription': 'Abunəliyi sil'\n'You do not have the right to delete subscriptions.': 'Abunəliyi silməyə ixtiyarın yoxdur.'\n'No such subscription.': 'Belə abunəlik yoxdur.'\nYes: Bəli\nNo: Xeyr\nClose: Bağla\n'No issues.': 'Məsələ yoxdur.'\n'Back to Edit Article': 'Məqaləni Dəyişmə səhifəsinə qayıt'\n'No topics': 'Mövzu yoxdur'\n'You do not have the right to add articles.': 'Məqalə əlavə etməyə ixtiyarın yoxdur.'\nStart: Başla\nDays: Gün\n'The sections could not be added successfully. Some of them were already added !': 'Təəssüflər olsun ki, bölmə əlavə edilə bilmədi. Bəziləri artıq əlavə edilib !'\n'Add another': 'Başqasını əlavə et'\nCancel: 'Ləğv et'\nDone: Bitdi\nOK: OLDU\nSave: Saxla\nSearch: Axtar\n'Make a selection': 'Seçim et'\n'You must input a number greater than 0 into the $1 field.': '$1 sahəsinə 0-dan böyük rəqəm daxil etməlisən.'\n'You must input a valid date.': 'Düzgün tarix daxil etməlisən.'\n'Add new field': 'Yeni sahə əlavə et'\n'Article automatic publishing schedule': 'Məqalənin avtomatik nümayiş planı'\n'Are you sure you want to delete this scheduled action?': 'Planlaşdırılmış addımı silmək istədiyinə əminsən?'\nUnlink: 'Linki çıxar'\n'Are you sure you want to delete the image $1?': '$1 şəklini xaric etmək istədiyinə əminsən?'\n'No such issue.': 'Belə məsələ yoxdur.'\n'Are you sure you want to delete the subscription to the publication $1?': '$1 nümayişinə abunəliyi silmək istədiyinə əminsən?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': '$1 məsələsinə dəyişiklikləri yadda saxlaya bilmədik. Lütfən, məsələnin $2 URL adının $3 nümayişində əvvəllər istifadə edilmədiyinə əmin ol.'\nGB: GB\nMB: MB\nKB: KB\nbytes: Bayt\nAttach: Qoşma\nBack: Geri\nFile: Fayl\n'Save and Close': 'Saxla və Bağla'\nAdd: 'Əlavə et'\n'Select All': 'Hamısını seç'\n'Select None': 'Heç biri'\n'Add Event': 'Tədbir əlavə et'\nN/A: Boş\n'On Front Page': 'Ön Səhifədə'\n'On Section Page': 'Bölmə Səhifəsində'\n'Created by': Müəllif\n'Creation date': 'Yaradılma tarixi'\n'Publication List': 'Nümayiş Siyahısı'\n'Issue List': 'Saylar siyahısı'\n'Section List': 'Bölmə siyahısı'\nAll: Hamısı\nduplicate: 'surətini çıxar'\nmove: köçür\nMove: Köçür\n'From:': 'Burdan:'\n'Date:': 'Tarix:'\nHidden: Gizli\nComments: Şərhlər\nComment: Şərh\nApproved: Təsdiqlənib\nSubject: Başlıq\n'IP address:': 'IP ünvan:'\n'Email:': 'Email:'\nAuthor: Müəllif\n'Article name': 'Məqalə adı'\n'Hide article': 'Məqaləni gizlə'\n'Show article': 'Məqaləni göstər'\n'Article Type Fields': 'Məqalə Növü Sahəsi'\n'Article Images': 'Məqalə şəkilləri'\n'Log Messages': 'Giriş Mesajları'\n'Article Files': 'Məqalə Faylları'\n'Article Comments': 'Məqalə Şərhləri'\n'Are you sure you want to deactivate the subscription?': 'Abunəlikləri deaktivasiya etmək istədiyiə əminsən?'\n'Are you sure you want to activate the subscription?': 'Abunəlikləri aktivləşdirmək istədiyinə əminsən?'\nOther: Digər\n'Time:': 'Vaxt:'\n'No events.': 'Hadisə yoxdur.'\n'Default templates': 'Mövcud nümunələr'\n'System Preferences': 'Sistem Seçimləri'\n'The date must be in the future.': 'Tarix gələcəkdə olmalıdır.'\nSend: Göndər\n'Thank you.': 'Çox sağ olun.'\n'Please take a minute to send us an email.': 'Zəhmət olmasa bizə email göndərin.'\n(optional): '(vacib deyil)'\n'The URL you entered is invalid: $1': 'Qeyd etdiyiniz link işləmir: $1'\nReads: Oxunub\n'Publish with issue': 'Maddə ilə nümayiş et'\n'Universal List': 'Universal Siyahı'\n'Invalid security token!': 'Səhv təhlükəsizlik nişanı!'\nAuthors: Müəlliflər\nTitle: Başlıq\n'Edit country': 'Ölkəni dəyiş'\n'Entry $1 prepared for publishing': '$1 girişi nümayiş üçün hazırlandı'\n'Entry deleted': 'Giriş silindi'\n'Feed saved': 'Axın yadda saxlanıldı.'\n'Item published': 'Element nümayiş edildi'\n'Settings saved': 'Parametrlər saxlandı'\n'Self-delete is not permitted.': 'Özünü silmə üçün icazə yoxdur.'\n'Edit staff member $1': '$1 komanda üzvünü dəyiş'\n'Delete staff member $1': '$1 komanda üzvünü sil'\n'Could not save user $1. Please make sure it does not already exist': '$1 istifadəçini saxlamaq mümkün olmadı. Lütfən, bunun artıq mövcud olub olmamasını yoxla.'\n'Could not save user with e-mail address $1. Please make sure it does not already exist': '$1 email ünvanlı istifadəçini yadda saxlaya bilmədik. Lütfən, bu istifadəçinin əvvəlcədən olub olmadığını yoxla.'\n'Changing user type would prevent you to manage users. Aborted.': 'İstifadəçi növlərinin dəyişilməsi istifadəçiləri idarə etmə imkanını əlindən alar. Ləğv edildi.'\n'Staff member saved.': 'Komanda üzvü saxlandı.'\n'Permissions: $1': 'İcazələr: $1'\n'Change user account information': 'İstifadəçi hesab məlumatlarını dəyiş'\n'Staff management': 'Komanda idarəçiliyi'\nUpdated: Yeniləndi\nOptions: Seçimlər\nVerified: Yoxlandı\nConfirm: Təsdiq\nat: burada\npublished: 'nümayiş edildi'\nunpublished: 'nümayiş dayandırıldı'\nnopermissions: 'Bu ehtiyata girişinə icazən yoxdur.'\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.be.yml",
    "content": "Plugins: Плагіны\n'Manage Plugins': 'Кіраваць  прагінамі'\nAccount: 'Улiковы запiс'\n'Items per page': 'Абектаў на старонцы'\n'Add new': Дадаць\nHome: Галоўная\nLogout: Выхад\nMore...: Далей...\nContent: Зьмест\nLanguages: Мовы\nCountries: Краiны\nThemes: 'Тэмы (шаблёны)'\nTopics: Тэмы\nConfigure: Наладкі\n'Image Archive': 'Архiў графiчных файлаў'\n'Add Article': 'Дадаць наступны артыкул  '\nFields: Палi\nDelete: Выдалiць\nType: Тып\nName: Загаловак\nCode: Код\nEdit: Праўка\nLogin: Лагiн\nPassword: Пароль\nSite: Сайт\nPath: Шлях\n'Go up': Угору\nURL: URL\nOrder: Парадак\nHide: Схаваць\nDuplicate: Дубляваць\nSubscription: Падпіска\nexpires: мiнае\nstarts: пачынаецца\nbefore: перад\nafter: пасьля\non: на\nstatus: стан\nactive: актыўны\ninactive: неактыўны\nSubscribers: Падпiсчыкi\nStaff: Пэрсанал\n'Select destination': 'Выбераце атрымальнiка'\n'No languages': 'Няма моў'\n'---Select language---': '---Выбераце мову---'\n'No publications': 'Няма выданьняў'\n'---Select publication---': '---Выбераце выданьне---'\n'No issues': 'Няма артыкулаў'\n'---Select issue---': '---Выбераце артыкул---'\n'No sections': 'Няма рубрык'\n'---Select section---': '---Выбераце рубрыку---'\nLanguage: Мова\nCountry: Краiна\n'Account name': 'Улiковы запiс'\nPublication: Выданьне\n'Default language': 'Мова па змаўчаньні'\nSubscriptions: Падпiскі\nIssue: Выпуск\nNumber: Нумар\nSection: Рубрыка\nKeywords: 'Ключавыя словы'\nTopic: Тэма\n'URL Name': 'Назва URL'\n'Left to pay': 'Засталося заплацiць'\nActive: Актыўна\nTrial: Пробная\nNext: Наступн.\nPrevious: Папярэд.\nTranslate: Перакласьцi\nView: Выгляд\n'Scheduled Publishing': 'Заплянаваныя публiкацыi'\nTime: Час\nAction: Апэрацыя\n'Schedule a new action': 'Заплянаваць новае дзеяньне'\n'Scheduling a new publish action': 'Плянаваньне новых апэрацыяў'\n'Delete scheduled publish action': 'Выдаліць заплянаваную апэрацыю'\nDate/Time: 'Дата/Час:by'\n'You must select an action.': 'Вы павiнны выбраць апэрацыю.'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'Вы ня маеце права прызначаць аўтаматычную публікацыю артыкула'\n'Front page': 'Тытульная старонка'\n'Section page': 'Старонка рубрыкi'\n'Show on front page': 'Паказаць на тытульнай старонцы'\n'Remove from front page': 'Выдаліць з тытульнай старонкі'\n'Show on section page': 'Паказаць на старонцы рубрыкi'\n'Remove from section page': 'Выдаліць са старонкi рубрыкi'\nActions: Апэрацыi\nPublishing: Публікацыі\nShow: Паказаць\nRemove: Выдалiць\n'Article Types': 'Тып артыкула'\n'Staff User Types': 'Карыстальнiцкi тып пэрсаналу'\nPublications: Выданьнi\nIssues: Выпускi\nSections: Рубрыкi\nArticles: Артыкулы\nImages: Выявы\nChange: Зьмянiць\n'Add new issue': 'Дадаць новы выпуск'\n'Section Template': 'Шаблён рубрыкi'\n'Article Template': 'Шаблён артыкула'\n'Default Language': 'Мова па змаўчаньні'\n'Paid Period': 'Аплачаны пэрыяд'\nPreview: 'Папярэднi агляд'\n'You must fill in the $1 field.': 'Вы павiнны запоўніць поле $1.'\nError: Памылка\n'Invalid input: $1': 'Няправільны ўвод $1'\n'Language does not exist.': 'Такой мовы не iснуе.'\n'Publication does not exist.': 'Няма такога выданьня.'\n'Issue does not exist.': 'Такога выпуску не iснуе.'\n'You must select a language.': 'Вы павiнны выбраць мову.'\n'Section does not exist.': 'Няма такой рубрыцы.'\n'No articles.': 'Артыкулы адсутнічаюць.'\n'Article does not exist.': 'Няма такога артыкула.'\n'Image does not exist.': 'Такой выявы не iснуе.'\n'Access denied': 'Доступ забаронены'\n'Invalid parameters received': 'Атрыманыя няправiльныя парамэтры'\n'Add new article': 'Дадаць новы артыкул'\nStatus: Стан\nPublished: Апублікавана\n'Not published': 'Не апублікавана'\nSubmitted: Адпраўлена\nNew: Новая\nArticle: артыкул\nPublish: Апублікаваць\nUnpublish: Прыняць\nUnlock: Разблякаваць\nUploaded: Загружана\nYYYY-MM-DD: 'ГГГГ-ММ-ДД '\nSubmit: Адправіць\nImage: Выява\nDescription: Апісаньне\nPhotographer: Фатограф\nPlace: Месца\nDate: Дата\nThumbnail: 'Папярэдні агляд'\n'In use': Выкарыстана\n'Additional searches': 'Дадатковы пошук'\n'Most Recently Added': 'Нядаўна даданыя '\n'Most Recently Modified': 'Нядаўна мадыфікаваныя'\n'$1 images found': 'Знойдзена выяў: $1'\n'Reset search conditions': 'Скiнуць умовы пошуку'\n'Image number': 'Нумар выявы'\nUsers: Карыстальнік\nLocalizer: Лякалiзатар\n'Adding new translation': 'Дадаваньне новага перакладу'\n'No more languages.': 'Няма другiх моў.'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'У полi $1 павiнны знаходзiцца толькi лiтары, лiчбы цi сымбаль падкрэсьлiваньня '\n'Add new publication': 'Дадаць новае выданьне'\n'Upload new template': 'Загрузiць новы шаблён'\n'Add new staff member': 'Дадаваньне новага пэрсаналу'\n'Staff member deleted.': null\n'Add new subscriber': 'Дадаваньне новага падпісчыка'\n'Add new user type': 'Дадаць новы тып карыстальнiка'\n'Add new article type': 'Дадаць новы тып артыкула'\n'Add new country': 'Дадаць новую краiну'\n'Add new language': 'Дадаць новую мову'\n'View logs': 'Прагледзець журнал'\n'Change your password': 'Зьмянiце Ваш пароль'\n'Your Articles': 'Вашы артыкулы'\n'Submitted Articles': 'Адпраўленыя артыкулы'\nLogs: Журнал\n'There are $1 article(s) left.': 'Засталося артыкулаў: $1'\n'There are $1 issues(s) left.': 'Засталося выпускаў: $1'\n'There are $1 section(s) left.': 'Засталося рубрык: $1'\n'There are $1 publication(s) left.': 'Засталося выданьняў: $1'\n'There are $1 countries left.': 'Засталося краiн: $1'\n'Name <SMALL>(click to edit)</SMALL>': 'Назва <SMALL>(нацiсьнiце для праўкi)</SMALL> '\n'Add new subscription': 'Дадаць новую падпіску'\n'You do not have the right to add subscriptions.': 'Вы ня маеце правоў дадаваць падпіскі'\n'Adding subscription': 'Дадаваньне новай падпіскі '\n'Delete subscription': 'Выдалiць падпіску'\n'You do not have the right to delete subscriptions.': 'Вы ня маеце правоў доступу, каб выдаляць падпіскі'\n'No such subscription.': 'Няма такой падпіскі.'\nYes: Так\nNo: Так\nClose: Зачынiць\n'No issues.': 'Няма выпускаў.'\n'Back to Edit Article': 'Назад да рэдагаваньня артыкула'\n'No topics': 'Няма тэмаў'\n'You do not have the right to add articles.': 'Вы ня маеце правоў дадаваць артыкулы'\nStart: Пачатак\nDays: Дзён\n'The sections could not be added successfully. Some of them were already added !': 'Нельга дадаць рубрыкі. Некаторыя зь iх ужо icнуюць!'\n'Add another': 'Дадаць iншую'\nCancel: Скасаваць\nDone: Выканана\nOK: ОК\nSave: Захаваць\nSearch: Пошук\n'Make a selection': Вылучыць\n'You must input a number greater than 0 into the $1 field.': 'Вы павiнны ўвесьцi дадатную ненулявую лiчбу ў поле $1'\n'You must input a valid date.': 'Вы павiнны ўвесьцi правiльную дату.'\n'Add new field': 'Дадаць новы тып:by'\n'Article automatic publishing schedule': 'Расклад аўтаматычнай публікацыі артыкулаў'\n'Are you sure you want to delete this scheduled action?': 'Цi Вы ўпэўненыя, што жадаеце выдаліць гэтую заплянаваную апэрацыю?'\nUnlink: Адвязаць\n'Are you sure you want to delete the image $1?': 'Цi Вы ўпэўненыя, што жадаеце выдалiць графiчны файл $1?'\n'No such issue.': 'Няма такога выпуску'\n'Are you sure you want to delete the subscription to the publication $1?': 'Цi Вы ўпэўнены, што жадаеце выдалiць падпiску на выданьне $1?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Немагчыма захаваць зьмены ў выпуску $. Пераканайцеся, што назва $2  URL выпуску не выкарыстоўвалася раней у выданьнi $3. '\nGB: ГБ\nMB: МБ\nKB: КБ\nbytes: байт\nAttach: Прыкласьцi\nBack: Назад\nFile: Файл\n'Save and Close': 'Захаваць и зачынiць '\nAdd: Дадаць\n'Select All': 'Вылучыць усё'\n'Select None': 'Адмянiць выбар'\n'Add Event': 'Дадаць падзею'\nN/A: недаступна\n'On Front Page': 'На тытульнай старонцы'\n'On Section Page': 'На старонцы рубрыцы'\n'Created by': Аўтар\n'Creation date': 'Дата стварэньня'\n'Publication List': 'Сьпiс выданьняў'\n'Issue List': 'Сьпiс выпускаў'\n'Section List': 'Сьпiс рубрык'\nAll: Усе\nduplicate: дубляваць\nmove: перанесьцi\nMove: Перанесьцi\n'From:': 'Ад:'\n'Date:': 'Дата:'\nHidden: Схаваны\nComments: Камэнтары\nComment: Камэтары\nApproved: Зацьверджаны\nSubject: Тэма\n'IP address:': 'IP-адрас:'\n'Email:': 'e-mail:'\nAuthor: Аўтар\n'Article name': 'Назва артыкула'\n'Hide article': 'Захаваць артыкул'\n'Show article': 'Паказаць артыкул'\n'Article Type Fields': 'Палi тыпаў артыкула'\n'Article Images': 'Выява з артыкула'\n'Log Messages': 'Паведамленьне журнала'\n'Article Files': 'Файлы артыкула'\n'Article Comments': 'Камэнтары да артыкула'\n'Are you sure you want to deactivate the subscription?': 'Цi Вы ўпэўнены, што жадаеце дэактывававаць падпiсчыка?'\n'Are you sure you want to activate the subscription?': 'Цi Вы ўпэўнены, што жадаеце актывіваваць падпiску?'\nOther: Iншае\n'Time:': 'Час:'\n'No events.': 'Няма падзеяў.'\n'Default templates': 'Шаблёны па змаўчанню'\n'System Preferences': 'Сыстэмныя наладкі'\n'The date must be in the future.': 'Дата павiнна быць у будучым часе.'\nSend: Адправiць\n'Thank you.': Дзякуй.\n'Please take a minute to send us an email.': 'Калi ласка затрымайцеся на хвілінку, каб адправiць нам e-mail.'\n(optional): (дадаткова)\n'The URL you entered is invalid: $1': 'Уведзены URL няправільны: $1 '\nReads: 'Колькасьць праглядаў'\n'Publish with issue': 'Апублiкаваць выпуск'\n'Universal List': 'Універсальны спіс'\n'Invalid security token!': 'Няправільны маркер бяспецы!'\nAuthors: Аўтары\nTitle: Загаловак\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: на\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.bn.yml",
    "content": "Plugins: প্লাগইন\n'Manage Plugins': 'প্লাগইন ব্যবস্থাপন'\nAccount: অ্যাকাউন্ট\n'Items per page': 'প্রতি পাতার আইটেম'\n'Add new': 'নতুন যোগ করুন'\nHome: 'প্রধান পাতা'\nLogout: 'লগ আউট'\nMore...: অধিক\nContent: বিষয়বস্তু\nLanguages: ভাষা\nCountries: দেশ\nThemes: থিম\nTopics: বিষয়\nConfigure: কনফিগার\n'Image Archive': 'ছবি আর্কাইভ'\n'Add Article': 'প্রবন্ধ যোগ করুন'\nFields: ক্ষেত্র\nDelete: 'মুছে ফেলা'\nType: ধরন\nName: নাম\nCode: কোড\nEdit: সম্পাদন\nLogin: লগইন\nPassword: পাসওয়ার্ড\nSite: সাইট\nPath: পথ\n'Go up': 'উপরে যান'\nURL: URL\nOrder: বিন্যাস\nHide: লুকান\nDuplicate: প্রতিলিপি\nSubscription: সাবস্ক্রিপশন\nexpires: মেয়াদ\nstarts: আরম্ভ\nbefore: আগে\nafter: পরে\non: চল\nstatus: অবস্থা\nactive: সক্রিয়\ninactive: নিষ্ক্রিয়\nSubscribers: গ্রাহক\nStaff: কর্মচারিবর্গ\n'Select destination': 'গন্তব্য নির্বাচন'\n'No languages': 'কোন ভাষা নেই'\n'---Select language---': 'ভাষা নির্বাচন'\n'No publications': 'প্রকাশনা নেই'\n'---Select publication---': '--প্রকাশনা নির্বাচন করুন--'\n'No issues': 'কোন বিষয় নেই'\n'---Select issue---': '--বিষয় নির্বাচন করুন--'\n'No sections': 'কোন বিভাগ নেই'\n'---Select section---': '--বিভাগ নির্বাচন করুন--'\nLanguage: ভাষা\nCountry: দেশ\n'Account name': 'অ্যাকাউন্টের নাম'\nPublication: প্রকাশন\n'Default language': 'ডিফল্ট ভাষা'\nSubscriptions: সাবস্ক্রিপশন\nIssue: ইস্যু\nNumber: সংখ্যা\nSection: বিভাগ\nKeywords: মূলশব্দ\nTopic: বিষয়\n'URL Name': 'URL-র নাম'\n'Left to pay': null\nActive: null\nTrial: null\nNext: null\nPrevious: null\nTranslate: null\nView: null\n'Scheduled Publishing': null\nTime: null\nAction: null\n'Schedule a new action': null\n'Scheduling a new publish action': null\n'Delete scheduled publish action': null\nDate/Time: null\n'You must select an action.': null\n'You do not have the right to schedule issues or articles for automatic publishing.': null\n'Front page': null\n'Section page': null\n'Show on front page': null\n'Remove from front page': null\n'Show on section page': null\n'Remove from section page': null\nActions: null\nPublishing: null\nShow: null\nRemove: null\n'Article Types': null\n'Staff User Types': null\nPublications: null\nIssues: null\nSections: null\nArticles: null\nImages: null\nChange: null\n'Add new issue': null\n'Section Template': null\n'Article Template': null\n'Default Language': null\n'Paid Period': null\nPreview: null\n'You must fill in the $1 field.': null\nError: null\n'Invalid input: $1': null\n'Language does not exist.': null\n'Publication does not exist.': null\n'Issue does not exist.': null\n'You must select a language.': null\n'Section does not exist.': null\n'No articles.': null\n'Article does not exist.': null\n'Image does not exist.': null\n'Access denied': null\n'Invalid parameters received': null\n'Add new article': null\nStatus: null\nPublished: null\n'Not published': null\nSubmitted: null\nNew: null\nArticle: null\nPublish: null\nUnpublish: null\nUnlock: null\nUploaded: null\nYYYY-MM-DD: null\nSubmit: null\nImage: null\nDescription: null\nPhotographer: null\nPlace: null\nDate: null\nThumbnail: null\n'In use': null\n'Additional searches': null\n'Most Recently Added': null\n'Most Recently Modified': null\n'$1 images found': null\n'Reset search conditions': null\n'Image number': null\nUsers: null\nLocalizer: null\n'Adding new translation': null\n'No more languages.': null\n'The $1 field may only contain letters, digits and underscore (_) character.': null\n'Add new publication': null\n'Upload new template': null\n'Add new staff member': null\n'Staff member deleted.': null\n'Add new subscriber': null\n'Add new user type': null\n'Add new article type': null\n'Add new country': null\n'Add new language': null\n'View logs': null\n'Change your password': null\n'Your Articles': null\n'Submitted Articles': null\nLogs: null\n'There are $1 article(s) left.': null\n'There are $1 issues(s) left.': null\n'There are $1 section(s) left.': null\n'There are $1 publication(s) left.': null\n'There are $1 countries left.': null\n'Name <SMALL>(click to edit)</SMALL>': null\n'Add new subscription': null\n'You do not have the right to add subscriptions.': null\n'Adding subscription': null\n'Delete subscription': null\n'You do not have the right to delete subscriptions.': null\n'No such subscription.': null\nYes: null\nNo: null\nClose: null\n'No issues.': null\n'Back to Edit Article': null\n'No topics': null\n'You do not have the right to add articles.': null\nStart: null\nDays: null\n'The sections could not be added successfully. Some of them were already added !': null\n'Add another': null\nCancel: null\nDone: null\nOK: null\nSave: null\nSearch: null\n'Make a selection': null\n'You must input a number greater than 0 into the $1 field.': 'আপনাকে শূন্য থেকে অধিক নিবেশ কোরতে হবে $1 ফিল্ডে'\n'You must input a valid date.': 'একটি বৈধ তারিখ ইনপুট প্রয়োজন.'\n'Add new field': 'নতুন ক্ষেত্র যোগ করুন'\n'Article automatic publishing schedule': 'প্রবন্ধ স্বয়ংক্রিয় প্রকাশনার সময়সূচী'\n'Are you sure you want to delete this scheduled action?': 'আপনি কি নিশ্চিত যে আপনি এই নির্ধারিত কর্ম মুছে ফেলতে চান?'\nUnlink: 'বিযুক্ত করা'\n'Are you sure you want to delete the image $1?': 'আপনি কি নিশ্চিত আপনি ইমেজ মুছে ফেলতে চান  $1?'\n'No such issue.': null\n'Are you sure you want to delete the subscription to the publication $1?': 'আপনি কি নিশ্চিত যে আপনি প্রকাশন থেকে সাবস্ক্রিপশন মুছে ফেলতে চান $1?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': null\nGB: গিগাবাইট\nMB: মেগাবাইট\nKB: কিলোবাইট\nbytes: বাইট\nAttach: সংযুক্তি\nBack: পূর্বাবস্থায়\nFile: ফাইল\n'Save and Close': 'সংরক্ষণ এবং বন্ধ করুন'\nAdd: 'যুক্ত করুন'\n'Select All': 'সবগুলি নির্বাচন করুন'\n'Select None': 'কোনটি নির্বাচন করা হয়নি'\n'Add Event': 'ঘটনা যুক্ত করুন'\nN/A: N/A\n'On Front Page': 'প্রথম  পৃষ্ঠায়'\n'On Section Page': 'বিভাগ পৃষ্ঠায়'\n'Created by': 'তৈরি করেছেন'\n'Creation date': 'তৈরির তারিখ'\n'Publication List': 'প্রকাশনা তালিকা'\n'Issue List': 'ইস্যু তালিকা'\n'Section List': 'বিভাগ তালিকা'\nAll: সকল\nduplicate: প্রতিলিপি\nmove: নাড়ান\nMove: নাড়ান\n'From:': 'থেকে:'\n'Date:': 'তারিখ:'\nHidden: লুক্কায়িত\nComments: 'এতগুলি মন্তব্য'\nComment: মন্তব্য\nApproved: অনুমোদিত\nSubject: প্রসঙ্গ\n'IP address:': 'IP ঠিকানা:'\n'Email:': 'ইমেল:'\nAuthor: লেখক\n'Article name': 'প্রবন্ধের নাম'\n'Hide article': 'প্রবন্ধ লুকান'\n'Show article': 'প্রবন্ধ দেখুন'\n'Article Type Fields': 'প্রবন্ধের ক্ষেত্রের ধরণ'\n'Article Images': 'প্রবন্ধের ছবি'\n'Log Messages': 'লগ বার্তাগুলি দেখুন'\n'Article Files': 'প্রবন্ধ ফাইল'\n'Article Comments': 'এই নিবন্ধটি এর উপর মন্তব্যসমূহ'\n'Are you sure you want to deactivate the subscription?': 'আপনি কি নিশ্চিত আপনি সাবস্ক্রিপশন নিস্ক্রিয় করতে চান?'\n'Are you sure you want to activate the subscription?': 'আপনি কি নিশ্চিত যে আপনি সাবস্ক্রিপশন সক্রিয় করতে চান?'\nOther: অন্যান্য\n'Time:': 'সময়:'\n'No events.': 'নতুন কোনো কর্মকাণ্ড নেই.'\n'Default templates': 'ডিফল্ট ফর্মা'\n'System Preferences': 'সিস্টেম পছন্দ নির্বাচন করুন'\n'The date must be in the future.': null\nSend: পাঠান\n'Thank you.': 'আপনাকে ধন্যবাদ.'\n'Please take a minute to send us an email.': 'অনুগ্রহ করে আমাদের একটি ইমেল প্রেরণ করুন.'\n(optional): (ঐচ্ছিক)\n'The URL you entered is invalid: $1': 'আপনার লেখা URL টি অবৈধ: $1'\nReads: পাঠ্য\n'Publish with issue': 'বিষয় প্রকাশ'\n'Universal List': 'ইউনিভার্সাল তালিকা'\n'Invalid security token!': 'অবৈধ নিরাপত্তা টোকেন!'\nAuthors: লেখক\nTitle: null\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.cs.yml",
    "content": "Plugins: Plug-iny\n'Manage Plugins': 'Spravovat Pluginy'\nAccount: Účet\n'Items per page': 'Položek na stránku'\n'Add new': 'Přidat nový'\nHome: Domů\nLogout: Odhlásit\nMore...: Více...\nContent: Obsah\nLanguages: Jazyk\nCountries: Země\nThemes: Náměty\nTopics: Témata\nConfigure: Konfiguruj\n'Image Archive': 'Archiv Obrázků'\n'Add Article': 'Přidat článek'\nFields: Pole\nDelete: Smazat\nType: Typ\nName: Název\nCode: Kód\nEdit: Upravit\nLogin: 'Přihlásit se'\nPassword: Heslo\nSite: Site\nPath: Cesta\n'Go up': Nahoru\nURL: URL\nOrder: Řazení\nHide: Skrýt\nDuplicate: Duplikovat\nSubscription: Předplatné\nexpires: vyprší\nstarts: začíná\nbefore: před\nafter: po\non: v\nstatus: stav\nactive: aktivní\ninactive: 'neaktivníNázev '\nSubscribers: Předplatitelé\nStaff: Zaměstnanci\n'Select destination': 'Vyber místo určení'\n'No languages': 'Žádný jazyk'\n'---Select language---': '---Vyber jazyk---'\n'No publications': 'Žádné publikace'\n'---Select publication---': '---Vyber publikaci---'\n'No issues': 'Žádné články'\n'---Select issue---': '---Vyber článek---'\n'No sections': 'Žádné rubriky'\n'---Select section---': '---Vyber rubliku---'\nLanguage: Jazyk\nCountry: Země\n'Account name': 'Jméno účtu'\nPublication: Publikace\n'Default language': 'Výchozí jazyk'\nSubscriptions: Předplatné\nIssue: Vydání\nNumber: Číslo\nSection: Oddíl\nKeywords: 'Klíčová slova'\nTopic: Téma\n'URL Name': 'Jméno vydání v URL'\n'Left to pay': 'Zbývá zaplatit'\nActive: Aktivní\nTrial: Zkouška\nNext: Další\nPrevious: Předchozí\nTranslate: Překlad\nView: Náhled\n'Scheduled Publishing': 'Plánované publikování'\nTime: Čas\nAction: Činnost\n'Schedule a new action': 'Naplánovat činnost'\n'Scheduling a new publish action': 'Název '\n'Delete scheduled publish action': 'Zruš naplánovanou činnost'\nDate/Time: Datum/Čas\n'You must select an action.': 'Musíte zvolit činnost'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'Nemáte oprávnění plánovat automatickou publikaci článků nebo vydání'\n'Front page': 'Titulní strana'\n'Section page': 'Titulní strana rubriky'\n'Show on front page': 'Zobrazit na titulní straně'\n'Remove from front page': 'Odstranit z titulní strany'\n'Show on section page': 'Zobrazit na titulní straně rubriky'\n'Remove from section page': 'Odstranit z titulní strany rubriky'\nActions: Činnosti\nPublishing: Publikování\nShow: Zobraz\nRemove: Odstranit\n'Article Types': 'Typ článku'\n'Staff User Types': 'Role zaměstnanců'\nPublications: Publikace\nIssues: Vydání\nSections: Rubriky\nArticles: Články\nImages: Obrázky\nChange: Změnit\n'Add new issue': 'Přidat nové vydání'\n'Section Template': 'Šablona titulní strany rubriky'\n'Article Template': 'Šablona článku'\n'Default Language': 'Výchozí jazyk'\n'Paid Period': 'Zaplacené období'\nPreview: Náhled\n'You must fill in the $1 field.': 'Musíte vyplnit pole $1'\nError: Chyba\n'Invalid input: $1': 'Neplatná hodnota: $1'\n'Language does not exist.': 'Jazyk neexistuje'\n'Publication does not exist.': 'Publikace neexistuje'\n'Issue does not exist.': 'Vydání neexistuje'\n'You must select a language.': 'Vyberte jazyk'\n'Section does not exist.': 'Rubrika neexistuje'\n'No articles.': 'Články neexistují'\n'Article does not exist.': 'Článek neexistuje'\n'Image does not exist.': 'Obrázek neexistuje'\n'Access denied': 'Přístup zamítnut'\n'Invalid parameters received': 'Přijaty neplatné parametry'\n'Add new article': 'Přidat nový článek'\nStatus: Status\nPublished: Zveřejněno\n'Not published': Nezveřejněno\nSubmitted: Podáno\nNew: Nový\nArticle: Článek\nPublish: Zveřejnit\nUnpublish: Nezveřejňovat\nUnlock: Odemknout\nUploaded: Nahráno\nYYYY-MM-DD: RRRR-MM-DD\nSubmit: Podat\nImage: Obrázek\nDescription: Popis\nPhotographer: Fotograf\nPlace: Místo\nDate: Datum\nThumbnail: Náhled\n'In use': 'Používá se'\n'Additional searches': 'Doplňkové vyhledávání'\n'Most Recently Added': 'Naposledy přidané'\n'Most Recently Modified': 'Naposledz upravované'\n'$1 images found': 'Nalezeno $1 obrázků'\n'Reset search conditions': 'Obnovení výchozích podmínek hledání'\n'Image number': 'Obrázek č.'\nUsers: Uživatelé\nLocalizer: Lokalizátor\n'Adding new translation': 'Přidávání nového překladu'\n'No more languages.': 'Žádné další jazyky'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'Pole $1 může obsahovat pouye písmena, čísla a podtržítko (znak _ ).'\n'Add new publication': 'Přidat novou publikaci'\n'Upload new template': 'Nahrát novou šablonu'\n'Add new staff member': 'Přidat nového zaměstnance'\n'Staff member deleted.': 'Zaměstnanec smazán. '\n'Add new subscriber': 'Přidat nového předplatitele'\n'Add new user type': 'Přidat typ uživatele'\n'Add new article type': 'Přidat nový typ článku'\n'Add new country': 'Přidat novou zemi'\n'Add new language': 'Přidat nový jazyk'\n'View logs': 'Náhled logu'\n'Change your password': 'Změnit heslo'\n'Your Articles': 'Tvé články'\n'Submitted Articles': 'Podané články'\nLogs: Logy\n'There are $1 article(s) left.': 'Zbývají články $1'\n'There are $1 issues(s) left.': 'Zbývá článek $1'\n'There are $1 section(s) left.': 'Zbývá rubrika $1'\n'There are $1 publication(s) left.': 'Zbývá publikace $1'\n'There are $1 countries left.': 'Zbývají země $1'\n'Name <SMALL>(click to edit)</SMALL>': 'Název (klikněte pro editaci)'\n'Add new subscription': 'Přidat nové předplatné'\n'You do not have the right to add subscriptions.': 'Nemáte právo přidat předplatné'\n'Adding subscription': 'Přidání předplatného'\n'Delete subscription': 'Smazat předplatné'\n'You do not have the right to delete subscriptions.': 'Nemáte právo smazat předplatné'\n'No such subscription.': 'Předplatné neexistuje'\nYes: Ano\nNo: Ne\nClose: Zavřít\n'No issues.': 'Vydání neexistuje'\n'Back to Edit Article': 'Zpět na detaily článku'\n'No topics': 'Žádná témata'\n'You do not have the right to add articles.': 'Nemáte právo přidat článek'\nStart: Začátek\nDays: Dny\n'The sections could not be added successfully. Some of them were already added !': 'Rubriky nebyly úspěšně přidány. Některé již byly přidány! '\n'Add another': 'Přidat další'\nCancel: Zrušit\nDone: Hotovo\nOK: OK\nSave: Uložit\nSearch: Hledej\n'Make a selection': Vyberte\n'You must input a number greater than 0 into the $1 field.': 'Do pole $1 můžete vložit pouze číslo větší než 0.'\n'You must input a valid date.': 'Musíte vložit platné datum'\n'Add new field': 'Přidat nové pole'\n'Article automatic publishing schedule': 'Automatické publikování rozvrhu článků'\n'Are you sure you want to delete this scheduled action?': 'Doopravdy chcete odstranit naplánovanou činnost?'\nUnlink: Rozpojit\n'Are you sure you want to delete the image $1?': 'Doopravdy chcete odstranit obrázek $1?'\n'No such issue.': 'Žádný takový problém.'\n'Are you sure you want to delete the subscription to the publication $1?': 'Doopravdy chcete odstranit předplatné k publikaci $1?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Není možné uložit změny vydání $1. Prosím ujistěte se, že URL jméno vydání $2 nebylo použito dříve v publikaci $3.'\nGB: GM\nMB: MB\nKB: KB\nbytes: bajtů\nAttach: Přilož\nBack: Zpět\nFile: Soubor\n'Save and Close': 'Uložit a Zavřít'\nAdd: Přidat\n'Select All': 'Vybrat vše'\n'Select None': 'Zrušit výběr'\n'Add Event': 'Přidej událost'\nN/A: N/A\n'On Front Page': 'Na titulní straně'\n'On Section Page': 'Na titulní straně rubriky'\n'Created by': Vytvořil\n'Creation date': 'Datum vytvoření'\n'Publication List': 'Přehled publikace'\n'Issue List': 'Přehled vydání'\n'Section List': 'Přehled sekce'\nAll: Vše\nduplicate: duplikovat\nmove: přesunout\nMove: Přesunout\n'From:': Od.\n'Date:': 'Datum:'\nHidden: Skrytý\nComments: Komentáře\nComment: Komentář\nApproved: Schválený\nSubject: Předmět\n'IP address:': 'IP adresa:'\n'Email:': 'Email:'\nAuthor: Autor\n'Article name': 'Název článku'\n'Hide article': 'Srýt článek'\n'Show article': 'Ukázat článek'\n'Article Type Fields': 'Pole Typu Článku'\n'Article Images': 'Zobrazení článku'\n'Log Messages': 'Zapsat zprávy'\n'Article Files': 'Soubory článku'\n'Article Comments': 'Komentáře k článku'\n'Are you sure you want to deactivate the subscription?': 'Doopravdy chcete deaktivovat předplatné?'\n'Are you sure you want to activate the subscription?': 'Doopravdy chcete aktivovat předplatné?'\nOther: Jiné\n'Time:': 'Čas:'\n'No events.': 'Žádné události.'\n'Default templates': 'Přednastavené šablony'\n'System Preferences': 'Systémové preference'\n'The date must be in the future.': 'Datum musí být budoucí.'\nSend: Odeslat\n'Thank you.': Děkuji.\n'Please take a minute to send us an email.': 'Prosíme, najděte si chvíli a pošlete nám email.'\n(optional): (volitelný)\n'The URL you entered is invalid: $1': 'URL, kterou jste zadali je neplatná: $1'\nReads: Přečteno\n'Publish with issue': 'Publikovat s vydáním'\n'Universal List': 'Všeobecný přehled'\n'Invalid security token!': 'Neplatný bezpečnostní znak!'\nAuthors: Autoři\nTitle: Název\n'Edit country': 'Editovat zemi'\n'Entry $1 prepared for publishing': 'Záznam $1 je připraven ke zveřejnění'\n'Entry deleted': 'Záznam smazán'\n'Feed saved': 'Feed uložen'\n'Item published': 'Položka zveřejněna'\n'Settings saved': 'Nastavení uloženo'\n'Self-delete is not permitted.': 'Není dovoleno smazání.'\n'Edit staff member $1': 'Editovat zaměstnance $1'\n'Delete staff member $1': 'Smazat zaměstnance $1'\n'Could not save user $1. Please make sure it does not already exist': 'Uživatel $1 nemohl být uložen. Ujistěte se, zda již neexistuje. '\n'Could not save user with e-mail address $1. Please make sure it does not already exist': 'Uživatel s e-mailovou adresou $1 nemohl být uložen. Ujistěte se, zda již neexistuje.'\n'Changing user type would prevent you to manage users. Aborted.': 'Změna typu uživatele Vám zabrání spravovat uživatele. Zrušeno. '\n'Staff member saved.': 'Zaměstnanec uložen.'\n'Permissions: $1': 'Povolení: $1'\n'Change user account information': 'Změnit informace uživatelského účtu'\n'Staff management': 'Management zaměstnanců'\nUpdated: Aktualizováno\nOptions: Možnosti\nVerified: Ověřeno\nConfirm: Potvrdit\nat: na\npublished: zveřejněno\nunpublished: nezveřejněno\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.da.yml",
    "content": "Plugins: Plugins\n'Manage Plugins': 'Administrer plugins'\nAccount: Konto\n'Items per page': 'Emner per side'\n'Add new': 'Tilføj ny'\nHome: Hjem\nLogout: 'Log ud'\nMore...: Mere...\nContent: Indhold\nLanguages: Sprog\nCountries: Lande\nThemes: Temaer\nTopics: Emner\nConfigure: Indstillinger\n'Image Archive': 'Billed arkiv'\n'Add Article': 'Tilføj Artikel'\nFields: Felter\nDelete: Slet\nType: Type\nName: Navn\nCode: Kode\nEdit: Rediger\nLogin: 'Log ind'\nPassword: Adgangskode\nSite: Hjemmeside\nPath: Sti\n'Go up': 'Gå op'\nURL: URL\nOrder: Sortering\nHide: Skjul\nDuplicate: 'Lav kopi'\nSubscription: Abonnement\nexpires: udløber\nstarts: starter\nbefore: før\nafter: efter\non: på\nstatus: status\nactive: aktiv\ninactive: inaktiv\nSubscribers: Abonnenter\nStaff: Redaktion\n'Select destination': 'Vælg destination'\n'No languages': 'Ingen sprog'\n'---Select language---': '---Vælg sprog---'\n'No publications': 'Ingen publikationer'\n'---Select publication---': '---Vælg publikation---'\n'No issues': 'Ingen udgivelser'\n'---Select issue---': '---Vælg udgivelse---'\n'No sections': 'Ingen sektioner'\n'---Select section---': '---Vælg sektion---'\nLanguage: Sprog\nCountry: Land\n'Account name': 'Konto navn'\nPublication: Publikation\n'Default language': 'Standard sprog'\nSubscriptions: Abonnementer\nIssue: Udgivelse\nNumber: Nummer\nSection: Sektion\nKeywords: Nøgleord\nTopic: Emne\n'URL Name': 'URL navn'\n'Left to pay': 'Mangler at betale'\nActive: Aktive\nTrial: Prøve\nNext: Næste\nPrevious: Forrige\nTranslate: Oversæt\nView: Se\n'Scheduled Publishing': 'Planlagt udgivelse'\nTime: Tidspunkt\nAction: Handling\n'Schedule a new action': 'Planlæg en ny handling'\n'Scheduling a new publish action': 'Planlæg ny udgivelses handling'\n'Delete scheduled publish action': 'Slet planlagt udgivelses handling'\nDate/Time: Dato/Tid\n'You must select an action.': 'Du skal vælge en handling'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'Du har ikke rettigheder til at planlægge udgivelser eller artikler til automatisk publicering.'\n'Front page': Forside\n'Section page': 'Sektions side'\n'Show on front page': 'Vis på forsiden'\n'Remove from front page': 'Fjern fra forsiden'\n'Show on section page': 'Vis på sektions side'\n'Remove from section page': 'Fjern fra sektions side'\nActions: Handlinger\nPublishing: Publicering\nShow: Vis\nRemove: Fjern\n'Article Types': 'Artikel typer'\n'Staff User Types': 'Redaktions bruger typer'\nPublications: Publikationer\nIssues: Udgivelser\nSections: Sektioner\nArticles: Artikler\nImages: Billeder\nChange: Tilpas\n'Add new issue': 'Tilføj ny udgivelse'\n'Section Template': 'Sektions skabelon'\n'Article Template': 'Artikel skabelon'\n'Default Language': 'Standard sprog'\n'Paid Period': 'Betalt periode'\nPreview: Forhåndsvisning\n'You must fill in the $1 field.': 'Du skal udfylde $1 feltet.'\nError: Fejl\n'Invalid input: $1': 'Ugyldigt input: $1'\n'Language does not exist.': 'Sprog eksisterer ikke.'\n'Publication does not exist.': 'Publikation eksisterer ikke.'\n'Issue does not exist.': 'Udgivelsen eksisterer ikke.'\n'You must select a language.': 'Du skal vælge et sprog.'\n'Section does not exist.': 'Sektion eksisterer ikke.'\n'No articles.': 'Ingen artikler.'\n'Article does not exist.': 'Artiklen eksisterer ikke.'\n'Image does not exist.': 'Billedet eksisterer ikke.'\n'Access denied': 'Adgang forbudt'\n'Invalid parameters received': 'Modtog ugyldige parametre'\n'Add new article': 'Tilføj ny artikel'\nStatus: Status\nPublished: Udgivet\n'Not published': 'Ikke udgivet'\nSubmitted: Indsendt\nNew: Ny\nArticle: Artikel\nPublish: Udgiv\nUnpublish: 'Træk tilbage'\nUnlock: 'Lås op'\nUploaded: Uploadet\nYYYY-MM-DD: ÅÅÅÅ-MM-DD\nSubmit: Send\nImage: Billede\nDescription: Beskrivelse\nPhotographer: Fotograf\nPlace: Sted\nDate: Dato\nThumbnail: Thumbnail\n'In use': 'I brug'\n'Additional searches': 'Yderligere søgninger'\n'Most Recently Added': 'Senest tilføjet'\n'Most Recently Modified': 'Senes ændret'\n'$1 images found': '$1 billeder fundet'\n'Reset search conditions': 'Nulstil søgning'\n'Image number': 'Billede nummer'\nUsers: Brugere\nLocalizer: Oversætter\n'Adding new translation': 'Tilføjer ny oversættelse'\n'No more languages.': 'Ikke flere sprog.'\n'The $1 field may only contain letters, digits and underscore (_) character.': '$1 feltet må kun indeholde bogstaver'\n'Add new publication': 'Tilføj ny publikation'\n'Upload new template': 'Upload ny skabelon'\n'Add new staff member': 'Tilføj nyt redaktionsmedlem'\n'Staff member deleted.': 'Redaktionsmedlem slettet.'\n'Add new subscriber': 'Tilføj ny abonnent'\n'Add new user type': 'Tilføj ny bruger type'\n'Add new article type': 'Tilføj ny artikel type'\n'Add new country': 'Tilføj nyt land'\n'Add new language': 'Tilføj nyt sprog'\n'View logs': 'Se logfiler'\n'Change your password': 'Skift din adgangskode'\n'Your Articles': 'Dine artikler'\n'Submitted Articles': 'Indsendte artikler'\nLogs: Logfiler\n'There are $1 article(s) left.': 'Der er $1 artikler tilbage.'\n'There are $1 issues(s) left.': 'Der er $1 udgivelser tilbage.'\n'There are $1 section(s) left.': 'Der er $1 sektioner tilbage.'\n'There are $1 publication(s) left.': 'Der er $1 publikationer tilbage.'\n'There are $1 countries left.': 'Der er $1 lande tilbage.'\n'Name <SMALL>(click to edit)</SMALL>': 'Navn <SMALL>(klik for at redigere)</SMALL>'\n'Add new subscription': 'Tilføj nyt abonnement'\n'You do not have the right to add subscriptions.': 'Du har ikke rettigheder til at tilføje abonnementer.'\n'Adding subscription': 'Tilføjer abonnementer'\n'Delete subscription': 'Slet abonnement'\n'You do not have the right to delete subscriptions.': 'Du har ikke rettigheder til at slette abonnementer.'\n'No such subscription.': 'Abonnementet findes ikke.'\nYes: Ja\nNo: Nej\nClose: Luk\n'No issues.': 'Ingen udgivelser.'\n'Back to Edit Article': 'Tilbage til artikel redigering'\n'No topics': 'Ingen emner'\n'You do not have the right to add articles.': 'Du har ikke rettigheder til at tilføje artikler.'\nStart: Start\nDays: Dage\n'The sections could not be added successfully. Some of them were already added !': 'Sektionerne kunne ikke tilføjes. Nogle var allerede tilføjet!'\n'Add another': 'Tilføj en til'\nCancel: Annullér\nDone: Færdig\nOK: OK\nSave: Gem\nSearch: Søg\n'Make a selection': 'Lav en markering'\n'You must input a number greater than 0 into the $1 field.': 'Du skal skrive en værdi højere end 0 i $1 feltet'\n'You must input a valid date.': 'Du skal skrive en gyldig dato.'\n'Add new field': 'Tilføj nyt felt'\n'Article automatic publishing schedule': 'Automatisk publiceringsplan for artikel'\n'Are you sure you want to delete this scheduled action?': 'Vil du slette den planlagte handling?'\nUnlink: 'Fjern link'\n'Are you sure you want to delete the image $1?': 'Vil du slette billedet $1?'\n'No such issue.': 'Udgivelsen findes ikke.'\n'Are you sure you want to delete the subscription to the publication $1?': 'Vil du slette abonnementet på publikationen $1?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Ændringerne kunne ikke gemmes til udgivelsen $1. Kontroller om udgivelses URL navnet $2 er i brug til udgivelsen $3.'\nGB: GB\nMB: MB\nKB: KB\nbytes: bytes\nAttach: Vedhæft\nBack: Tilbage\nFile: Fil\n'Save and Close': 'Gem og luk'\nAdd: Tilføj\n'Select All': 'Vælg alt'\n'Select None': 'Vælg ingenting'\n'Add Event': 'Tilføj begivenhed'\nN/A: '- - -'\n'On Front Page': 'På forsiden'\n'On Section Page': 'På sektionssiden'\n'Created by': 'Oprettet af'\n'Creation date': Oprettelsesdato\n'Publication List': Publikationer\n'Issue List': 'Liste over udgivelser'\n'Section List': 'Liste over sektioner'\nAll: Alle\nduplicate: 'lav kopi'\nmove: flyt\nMove: Flyt\n'From:': 'Fra:'\n'Date:': 'Dato:'\nHidden: Skjult\nComments: Kommentarer\nComment: Kommentér\nApproved: Godkendt\nSubject: Emne\n'IP address:': 'IP adresse:'\n'Email:': 'Email:'\nAuthor: Forfatter\n'Article name': 'Artikel navn'\n'Hide article': 'Skjul artikel'\n'Show article': 'Vis artikel'\n'Article Type Fields': 'Artikel type felter'\n'Article Images': 'Artikel billeder'\n'Log Messages': 'Log beskeder'\n'Article Files': 'Artikel filer'\n'Article Comments': 'Artikel kommentarer'\n'Are you sure you want to deactivate the subscription?': 'Vil du deaktivere abonnementet?'\n'Are you sure you want to activate the subscription?': 'Vil du aktivere abonnementet?'\nOther: Andre\n'Time:': 'Tidspunkt:'\n'No events.': 'Ingen begivenheder.'\n'Default templates': 'Standard skabeloner'\n'System Preferences': 'System indstillinger'\n'The date must be in the future.': 'Datoen skal ligge i fremtiden.'\nSend: Send\n'Thank you.': Tak.\n'Please take a minute to send us an email.': 'Brug et minut på at sende os en mail.'\n(optional): (valgfri)\n'The URL you entered is invalid: $1': 'Ugyldig URL: $1'\nReads: Læst\n'Publish with issue': 'Udgiv med udgivelsen'\n'Universal List': 'Universel liste'\n'Invalid security token!': 'Ugyldig sikkerheds token!'\nAuthors: Forfattere\nTitle: Titel\n'Edit country': 'Rediger land'\n'Entry $1 prepared for publishing': 'Post $1 klar til udgivelse'\n'Entry deleted': 'Post slettet'\n'Feed saved': 'Feed gemt'\n'Item published': 'Post udgivet'\n'Settings saved': 'Indstillinger gemt'\n'Self-delete is not permitted.': 'Man kan ikke slette sig selv.'\n'Edit staff member $1': 'Rediger redaktionsmedlem $1'\n'Delete staff member $1': 'Slet redaktionsmedlem $1'\n'Could not save user $1. Please make sure it does not already exist': 'Brugeren $1 kunne ikke gemmes. Kontroller at den ikke allerede findes.'\n'Could not save user with e-mail address $1. Please make sure it does not already exist': 'Kunne ikke gemme bruger med email adressen $1. Kontroller at den ikke allerede findes.'\n'Changing user type would prevent you to manage users. Aborted.': 'Ændringen i brugertyper ville forhindre dig i at administrere brugertyper. Annulleret.'\n'Staff member saved.': 'Redaktionsmedlem gemt.'\n'Permissions: $1': 'Tilladelser: $1'\n'Change user account information': 'Rediger information om brugerkonto'\n'Staff management': 'Administration af redaktion'\nUpdated: Opdateret\nOptions: Indstillinger\nVerified: Bekræftet\nConfirm: Bekræft\nat: på\npublished: udgivet\nunpublished: 'træk tilbage'\nnopermissions: 'Du har ikke tilladelser til at tilgå denne ressource.'\nimportantmessage: 'Vigtig information'\nanonymous: Anonym\n'Successfully refreshed authentication token.': 'Godkendelses token blev opdateret'\n'Failed to refresh authentication token.': 'Godkendelses token kunne ikke opdateres'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.de.yml",
    "content": "Plugins: Plugins\n'Manage Plugins': 'Plugins verwalten'\nAccount: Benutzerkonto\n'Items per page': 'Anzahl pro Seite'\n'Add new': Hinzufügen\nHome: Dashboard\nLogout: Ausloggen\nMore...: Mehr...\nContent: Inhalt\nLanguages: Sprachen\nCountries: Länder\nThemes: Designvorlagen\nTopics: Themen\nConfigure: Konfiguration\n'Image Archive': Bildarchiv\n'Add Article': 'Artikel hinzufügen'\nFields: Felder\nDelete: Löschen\nType: Typ\nName: Name\nCode: Ländercode\nEdit: Bearbeiten\nLogin: Login\nPassword: Passwort\nSite: Seite\nPath: Pfad\n'Go up': 'Nach oben'\nURL: URL\nOrder: Reihenfolge\nHide: Verbergen\nDuplicate: Duplizieren\nSubscription: Abonnement\nexpires: 'läuft ab'\nstarts: beginnt\nbefore: vor\nafter: nach\non: an\nstatus: Status\nactive: aktiv\ninactive: inaktiv\nSubscribers: Abonnenten\nStaff: Team\n'Select destination': 'Ziel wählen'\n'No languages': 'Keine Sprachen'\n'---Select language---': '---Sprache auswählen---'\n'No publications': 'Keine Publikationen'\n'---Select publication---': '---Publikation auswählen---'\n'No issues': 'Keine Ausgaben'\n'---Select issue---': '---Ausgabe auswählen---'\n'No sections': 'Keine Rubriken'\n'---Select section---': '----Rubrik auswählen---'\nLanguage: Sprache\nCountry: Land\n'Account name': Benutzername\nPublication: Publikation\n'Default language': Standardsprache\nSubscriptions: Abonnements\nIssue: Ausgabe\nNumber: Nummer\nSection: Rubrik\nKeywords: Stichwörter\nTopic: Thema\n'URL Name': 'URL Name'\n'Left to pay': 'Noch zu zahlen'\nActive: Aktiv\nTrial: Probe\nNext: Weiter\nPrevious: Zurück\nTranslate: Übersetzen\nView: Ansicht\n'Scheduled Publishing': 'Automatisierte Publizierung'\nTime: Zeit\nAction: Aktion\n'Schedule a new action': 'Neue Aktion automatisieren'\n'Scheduling a new publish action': 'Neue Aktion wird automatisiert'\n'Delete scheduled publish action': 'Löschen einer automatisierten Aktion'\nDate/Time: Datum/Uhrzeit\n'You must select an action.': 'Sie müssen eine Aktion wählen.'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'Kein Zugriffsrecht auf die Automatisierung von Ausgaben oder Artikeln'\n'Front page': Startseite\n'Section page': Rubrikseite\n'Show on front page': 'Zeige auf der Startseite'\n'Remove from front page': 'Entferne von der Startseite'\n'Show on section page': 'Zeige auf Rubrikseite'\n'Remove from section page': 'Enferne von Rubrikseite'\nActions: Aktionen\nPublishing: Veröffentlichen\nShow: Zeige\nRemove: Entferne\n'Article Types': Artikeltypen\n'Staff User Types': 'Team Benutzertypen'\nPublications: Publikationen\nIssues: Ausgaben\nSections: Rubriken\nArticles: Artikel\nImages: Bilder\nChange: Ändern\n'Add new issue': 'Neue Ausgabe anlegen'\n'Section Template': 'Rubriken Template'\n'Article Template': 'Artikel Template'\n'Default Language': Standardsprache\n'Paid Period': 'Bezahlter Zeitraum'\nPreview: Vorschau\n'You must fill in the $1 field.': 'Bitte Feld $1 ausfüllen.'\nError: Fehler\n'Invalid input: $1': 'Ungültige Eingabe: $1'\n'Language does not exist.': 'Diese Sprache ist nicht vorhanden.'\n'Publication does not exist.': 'Diese Publikation ist nicht vorhanden.'\n'Issue does not exist.': 'Diese Ausgabe existiert nicht.'\n'You must select a language.': 'Wählen Sie eine Sprache'\n'Section does not exist.': 'Diese Rubrik existiert nicht'\n'No articles.': 'Keine Artikel'\n'Article does not exist.': 'Dieser Artikel existiert nicht.'\n'Image does not exist.': 'Dieses Bild existiert nicht.'\n'Access denied': 'Zugang verweigert'\n'Invalid parameters received': 'Ungültige Werte'\n'Add new article': 'Neuen Artikel hinzufügen'\nStatus: Status\nPublished: Veröffentlicht\n'Not published': 'Nicht veröffentlicht'\nSubmitted: Eingepflegt\nNew: Neu\nArticle: Artikel\nPublish: Veröffentlichen\nUnpublish: 'Zurück stellen'\nUnlock: Freigeben\nUploaded: Hochgeladen\nYYYY-MM-DD: JJJJ-MM-TT\nSubmit: Absenden\nImage: Bild\nDescription: Beschreibung\nPhotographer: Fotograf/in\nPlace: Ort\nDate: Datum\nThumbnail: Miniaturansicht\n'In use': 'Wird gerade benutzt'\n'Additional searches': 'Erweiterte Suche'\n'Most Recently Added': 'Neueste Einträge'\n'Most Recently Modified': 'Letzte Änderungen'\n'$1 images found': '$1 Bilder gefunden'\n'Reset search conditions': 'Suchanfrage zurücksetzen'\n'Image number': 'Bild Nr.'\nUsers: Nutzer\nLocalizer: Lokalisierung\n'Adding new translation': 'Neue Übersetzung hinzufügen'\n'No more languages.': 'Keine weiteren Sprachen'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'Feld $1 darf nur Buchstaben, Zahlen und Unterstriche (_) enthalten.'\n'Add new publication': 'Neue Publikation hinzufügen'\n'Upload new template': 'Neues Template hochladen'\n'Add new staff member': 'Neues Personalkonto einrichten'\n'Staff member deleted.': 'Mitarbeiterin gelöscht.'\n'Add new subscriber': 'Neuen Abonnenten einrichten'\n'Add new user type': 'Neuen Benutzertyp hinzufügen'\n'Add new article type': 'Neuen Artikeltyp hinzufügen'\n'Add new country': 'Neues Land hinzufügen'\n'Add new language': 'Neue Sprache hinzufügen'\n'View logs': 'Logfiles anzeigen'\n'Change your password': 'Ihr Passwort ändern'\n'Your Articles': 'Ihre Artikel'\n'Submitted Articles': 'eingepflegte Artikel'\nLogs: Logfiles\n'There are $1 article(s) left.': 'Es sind noch $1 Artikel vorhanden.'\n'There are $1 issues(s) left.': 'Es sind noch $1 Ausgaben vorhanden.'\n'There are $1 section(s) left.': 'Es sind noch $1 Rubriken vorhanden.'\n'There are $1 publication(s) left.': 'Es sind noch $1 Publikationen vorhanden.'\n'There are $1 countries left.': 'Es sind noch $1 Länder vorhanden.'\n'Name <SMALL>(click to edit)</SMALL>': 'Name <SMALL>(click to edit)</SMALL>'\n'Add new subscription': 'Neues Abonnement hinzufügen'\n'You do not have the right to add subscriptions.': 'Sie haben keine Berechtigung, Abonnements hinzuzufügen'\n'Adding subscription': 'Abonnement wird hinzugefügt'\n'Delete subscription': 'Abonnement löschen'\n'You do not have the right to delete subscriptions.': 'Sie haben keine Berechtigung, Abonnements zu löschen'\n'No such subscription.': 'Abonnement nicht vorhanden'\nYes: Ja\nNo: Nein\nClose: Schließen\n'No issues.': 'Keine Ausgabe'\n'Back to Edit Article': 'Zurück zum Bearbeiten des Artikels'\n'No topics': 'Keine Themen'\n'You do not have the right to add articles.': 'Sie haben keine Berechtigung, Artikel hinzuzufügen'\nStart: Starten\nDays: Tage\n'The sections could not be added successfully. Some of them were already added !': 'Die Rubriken konnten nicht hinzugefügt werden. Einige waren bereits hinzugefügt worden!'\n'Add another': 'Weitere hinzufügen'\nCancel: Abbruch\nDone: Ausgeführt\nOK: OK\nSave: Speichern\nSearch: Suche\n'Make a selection': 'Auswahl vornehmen'\n'You must input a number greater than 0 into the $1 field.': 'Die Zahl in Feld $1 muss größer als 0 sein.'\n'You must input a valid date.': 'Es muss ein gültiges Datum eingefügt werden.'\n'Add new field': 'Neues Feld hinzufügen'\n'Article automatic publishing schedule': 'Automatisierung des Artikels (Veröffentlichung und Eigenschaften)'\n'Are you sure you want to delete this scheduled action?': 'Soll diese automatisierte Aktion gelöscht werden?'\nUnlink: Entkoppeln\n'Are you sure you want to delete the image $1?': 'Sind Sie sicher, dass Sie um das Bild zu löschen?'\n'No such issue.': 'Ausgabe nicht vorhanden'\n'Are you sure you want to delete the subscription to the publication $1?': 'Soll das Abonnement für die Publikation $1 gelöscht werden?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Die Änderungen für Ausgabe $1 konnte nicht gespeichert werden. Bitte prüfen Sie, dass Ausgaben URL $2 noch nicht in Publikation $3 benutzt wurde.'\nGB: GB\nMB: MB\nKB: KB\nbytes: Bytes\nAttach: Anhängen\nBack: Zurück\nFile: Datei\n'Save and Close': 'Speichern und Schließen'\nAdd: Hinzu\n'Select All': 'Alle auswählen'\n'Select None': 'Keine auswählen'\n'Add Event': 'Ereignis hinzufügen'\nN/A: N.A.\n'On Front Page': 'Auf der Startseite'\n'On Section Page': 'Auf der Rubrikenseite'\n'Created by': 'Erstellt von'\n'Creation date': Erstellungsdatum\n'Publication List': 'Liste der Publikationen'\n'Issue List': 'Liste der Ausgaben'\n'Section List': 'Liste der Rubriken'\nAll: Alle\nduplicate: Duplizieren\nmove: Verschieben\nMove: Verschieben\n'From:': 'Von:'\n'Date:': 'Datum:'\nHidden: Verborgen\nComments: Kommentare\nComment: Kommentar\nApproved: Bewilligt\nSubject: Subjekt\n'IP address:': 'IP Adresse'\n'Email:': 'E-Mail:'\nAuthor: AutorIn\n'Article name': Artikelname\n'Hide article': 'Verberge Artikel'\n'Show article': 'Zeige Artikel'\n'Article Type Fields': 'Artikeltyp Felder'\n'Article Images': Artikelbilder\n'Log Messages': 'Log Nachrichten'\n'Article Files': Artikeldateien\n'Article Comments': Artikelkommentare\n'Are you sure you want to deactivate the subscription?': 'Soll das Abonnement wirklich deaktiviert werden?'\n'Are you sure you want to activate the subscription?': 'Soll das Abonnement wirklich aktiviert werden?'\nOther: Andere\n'Time:': 'Uhrzeit:'\n'No events.': 'Keine Ereignisse.'\n'Default templates': Standard-Template\n'System Preferences': Systemeinstellungen\n'The date must be in the future.': 'Das Datum muss in der Zukunft liegen.'\nSend: Senden\n'Thank you.': 'Vielen Dank.'\n'Please take a minute to send us an email.': 'Bitte nehmen Sie sich eine Minute, um uns eine E-Mail zu senden.'\n(optional): (optional)\n'The URL you entered is invalid: $1': 'Die angegebene URL ist ungültig: $1'\nReads: Gelesen\n'Publish with issue': 'Mit Ausgabe veröffentlichen'\n'Universal List': 'Universelle Liste und Suche'\n'Invalid security token!': 'Ungültiges Sicherheits-Token! '\nAuthors: Autoren/innen\nTitle: Titel\n'Edit country': 'Land bearbeiten'\n'Entry $1 prepared for publishing': 'Eintrag $1 vorbereitet zur Publikation'\n'Entry deleted': 'Eintrag gelöscht'\n'Feed saved': 'Feed gespeichert'\n'Item published': 'Artikel veröffentlicht'\n'Settings saved': 'Einstellungen gespeichert'\n'Self-delete is not permitted.': 'Selbst-Löschung ist nicht erlaubt.'\n'Edit staff member $1': 'Mitarbeiter $1 bearbeiten'\n'Delete staff member $1': 'Mitarbeiter $1 löschen'\n'Could not save user $1. Please make sure it does not already exist': 'Benutzer $1 konnte nicht gespeichert werden. Bitte stellen Sie sicher, dass der Benutzer nicht schon existiert.'\n'Could not save user with e-mail address $1. Please make sure it does not already exist': 'Benutzer mit E-Mail-Adresse $1 konnte nicht gespeichert werden. Bitte prüfen Sie, ob diese E-Mail Adresse nicht schon existiert'\n'Changing user type would prevent you to manage users. Aborted.': 'Ändern des Benutzertyps führt dazu, dass Benutzer nicht mehr verwaltet werden dürfen. Abgebrochen.'\n'Staff member saved.': 'Mitarbeiter gespeichert.'\n'Permissions: $1': 'Berechtigungen: $1'\n'Change user account information': 'Benutzerinformation ändern'\n'Staff management': 'Mitarbeiter Management'\nUpdated: Aktualisiert\nOptions: Optionen\nVerified: Verifiziert\nConfirm: Bestätige\nat: auf\npublished: veröffentlicht\nunpublished: unveröffentlicht\nnopermissions: 'Sie haben keine Zugangsrechte für diese Ressource.'\nimportantmessage: 'Wichtige Information'\nanonymous: Anonym\n'Successfully refreshed authentication token.': 'Der Authentifizierungs-Nachweis wurde erfolgreich aktualisiert.'\n'Failed to refresh authentication token.': 'Fehler: Der Authentifizierungs-Nachweis konnte nicht aktualisiert werden.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.de_AT.yml",
    "content": "Plugins: Plugins\n'Manage Plugins': 'Plugins verwalten'\nAccount: Benutzerkonto\n'Items per page': 'Anzahl pro Seite'\n'Add new': Hinzufügen\nHome: Dashboard\nLogout: Ausloggen\nMore...: Mehr...\nContent: Inhalt\nLanguages: Sprachen\nCountries: Länder\nThemes: Themen\nTopics: Themen\nConfigure: Konfiguration\n'Image Archive': Bildarchiv\n'Add Article': 'Artikel hinzufügen'\nFields: Felder\nDelete: Löschen\nType: Typ\nName: Name\nCode: Ländercode\nEdit: Bearbeiten\nLogin: Login\nPassword: Passwort\nSite: Seite\nPath: Pfad\n'Go up': 'Nach oben'\nURL: URL\nOrder: Reihenfolge\nHide: Verbergen\nDuplicate: Duplizieren\nSubscription: Abonnement\nexpires: 'läuft ab'\nstarts: beginnt\nbefore: vor\nafter: nach\non: an\nstatus: Status\nactive: aktiv\ninactive: inaktiv\nSubscribers: Abonnenten\nStaff: Team\n'Select destination': 'Ziel wählen'\n'No languages': 'Keine Sprachen'\n'---Select language---': '---Sprache auswählen---'\n'No publications': 'Keine Publikationen'\n'---Select publication---': '---Publikation auswählen---'\n'No issues': 'Keine Ausgaben'\n'---Select issue---': '---Ausgabe auswählen---'\n'No sections': 'Keine Rubriken'\n'---Select section---': '----Rubrik auswählen---'\nLanguage: Sprache\nCountry: Land\n'Account name': Benutzername\nPublication: Publikation\n'Default language': Standardsprache\nSubscriptions: Abonnements\nIssue: Ausgabe\nNumber: Nummer\nSection: Rubrik\nKeywords: Stichwörter\nTopic: Thema\n'URL Name': 'URL Name'\n'Left to pay': 'Noch zu zahlen'\nActive: Aktiv\nTrial: Probe\nNext: Weiter\nPrevious: Zurück\nTranslate: Übersetzen\nView: Ansicht\n'Scheduled Publishing': 'Automatisierte Publizierung'\nTime: Zeit\nAction: Aktion\n'Schedule a new action': 'Neue Aktion automatisieren'\n'Scheduling a new publish action': 'Neue Aktion wird automatisiert'\n'Delete scheduled publish action': 'Löschen einer automatisierten Aktion'\nDate/Time: Datum/Uhrzeit\n'You must select an action.': 'Sie müssen eine Aktion wählen.'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'Kein Zugriffsrecht auf die Automatisierung von Ausgaben oder Artikeln'\n'Front page': Startseite\n'Section page': Rubrikseite\n'Show on front page': 'Zeige auf der Startseite'\n'Remove from front page': 'Entferne von der Startseite'\n'Show on section page': 'Zeige auf Rubrikseite'\n'Remove from section page': 'Enferne von Rubrikseite'\nActions: Aktionen\nPublishing: Veröffentlichen\nShow: Zeige\nRemove: Entferne\n'Article Types': Artikeltypen\n'Staff User Types': 'Team Benutzertypen'\nPublications: Publikationen\nIssues: Ausgaben\nSections: Rubriken\nArticles: Artikel\nImages: Bilder\nChange: Ändern\n'Add new issue': 'Neue Ausgabe anlegen'\n'Section Template': 'Rubrik Template'\n'Article Template': 'Artikel Template'\n'Default Language': Standardsprache\n'Paid Period': 'Bezahlter Zeitraum'\nPreview: Vorschau\n'You must fill in the $1 field.': 'Bitte Feld $1 ausfüllen.'\nError: Fehler\n'Invalid input: $1': 'Ungültige Eingabe: $1'\n'Language does not exist.': 'Diese Sprache ist nicht vorhanden.'\n'Publication does not exist.': 'Diese Publikation ist nicht vorhanden.'\n'Issue does not exist.': 'Diese Ausgabe existiert nicht.'\n'You must select a language.': 'Wählen Sie eine Sprache'\n'Section does not exist.': 'Diese Rubrik existiert nicht'\n'No articles.': 'Keine Artikel'\n'Article does not exist.': 'Dieser Artikel existiert nicht.'\n'Image does not exist.': 'Dieses Bild existiert nicht.'\n'Access denied': 'Zugang verweigert'\n'Invalid parameters received': 'Ungültige Werte'\n'Add new article': 'Neuen Artikel hinzufügen'\nStatus: Status\nPublished: Veröffentlicht\n'Not published': 'Nicht veröffentlicht'\nSubmitted: Eingepflegt\nNew: Neu\nArticle: Artikel\nPublish: Veröffentlichen\nUnpublish: 'Zurück stellen'\nUnlock: Freigeben\nUploaded: Hochgeladen\nYYYY-MM-DD: JJJJ-MM-TT\nSubmit: Absenden\nImage: Bild\nDescription: Beschreibung\nPhotographer: Fotograf/in\nPlace: Ort\nDate: Datum\nThumbnail: Miniaturansicht\n'In use': 'Wird gerade benutzt'\n'Additional searches': 'Erweiterte Suche'\n'Most Recently Added': 'Neueste Einträge'\n'Most Recently Modified': 'Letzte Änderungen'\n'$1 images found': '$1 Bilder gefunden'\n'Reset search conditions': 'Suchanfrage zurücksetzen'\n'Image number': 'Bild Nr.'\nUsers: Nutzer\nLocalizer: Lokalisierung\n'Adding new translation': 'Neue Übersetzung hinzufügen'\n'No more languages.': 'Keine weiteren Sprachen'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'Feld $1 darf nur Buchstaben, Zahlen und Unterstriche (_) enthalten.'\n'Add new publication': 'Neue Publikation hinzufügen'\n'Upload new template': 'Neues Template hochladen'\n'Add new staff member': 'Neues Personalkonto einrichten'\n'Staff member deleted.': null\n'Add new subscriber': 'Neuen Abonnenten einrichten'\n'Add new user type': 'Neuen Benutzertyp hinzufügen'\n'Add new article type': 'Neuen Artikel hinzufügen'\n'Add new country': 'Neues Land hinzufügen'\n'Add new language': 'Neue Sprache hinzufügen'\n'View logs': 'Logfiles anzeigen'\n'Change your password': 'Ihr Passwort ändern'\n'Your Articles': 'Ihre Artikel'\n'Submitted Articles': 'eingepflegte Artikel'\nLogs: Logfiles\n'There are $1 article(s) left.': 'Es sind noch $1 Artikel vorhanden.'\n'There are $1 issues(s) left.': 'Es sind noch $1 Ausgaben vorhanden.'\n'There are $1 section(s) left.': 'Es sind noch $1 Rubriken vorhanden.'\n'There are $1 publication(s) left.': 'Es sind noch $1 Publikationen vorhanden.'\n'There are $1 countries left.': 'Es sind noch $1 Länder vorhanden.'\n'Name <SMALL>(click to edit)</SMALL>': 'Name <SMALL>(click to edit)</SMALL>'\n'Add new subscription': 'Neues Abonnement hinzufügen'\n'You do not have the right to add subscriptions.': 'Sie haben keine Berechtigung, Abonnements hinzuzufügen'\n'Adding subscription': 'Abonnement wird hinzugefügt'\n'Delete subscription': 'Abonnement löschen'\n'You do not have the right to delete subscriptions.': 'Sie haben keine Berechtigung, Abonnements zu löschen'\n'No such subscription.': 'Abonnement nicht vorhanden'\nYes: Ja\nNo: Nein\nClose: Schließen\n'No issues.': 'Keine Ausgabe'\n'Back to Edit Article': 'Zurück zum Bearbeiten des Artikels'\n'No topics': 'Keine Themen'\n'You do not have the right to add articles.': 'Sie haben keine Berechtigung, Artikel hinzuzufügen'\nStart: Starten\nDays: Tage\n'The sections could not be added successfully. Some of them were already added !': 'Die Rubriken konnten nicht hinzugefügt werden. Einige waren bereits hinzugefügt worden!'\n'Add another': 'Weitere hinzufügen'\nCancel: Abbruch\nDone: Ausgeführt\nOK: OK\nSave: Speichern\nSearch: Suche\n'Make a selection': 'Auswahl vornehmen'\n'You must input a number greater than 0 into the $1 field.': 'Die Zahl in Feld $1 muss größer als 0 sein.'\n'You must input a valid date.': 'Es muss ein gültiges Datum eingefügt werden.'\n'Add new field': 'Neues Feld hinzufügen'\n'Article automatic publishing schedule': 'Automatisierung des Artikels (Veröffentlichung und Eigenschaften)'\n'Are you sure you want to delete this scheduled action?': 'Soll diese automatisierte Aktion gelöscht werden?'\nUnlink: Entkoppeln\n'Are you sure you want to delete the image $1?': 'Soll Bild $1 gelöscht werden?'\n'No such issue.': 'Ausgabe nicht vorhanden'\n'Are you sure you want to delete the subscription to the publication $1?': 'Soll das Abonnement für die Publikation $1 gelöscht werden?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Die Änderungen für Ausgabe $1 konnte nicht gespeichert werden. Bitte prüfen Sie, dass Ausgaben URL $2 noch nicht in Publikation $3 benutzt wurde.'\nGB: GB\nMB: MB\nKB: KB\nbytes: Bytes\nAttach: Anhängen\nBack: Zurück\nFile: Datei\n'Save and Close': 'Speichern und Schließen'\nAdd: Hinzu\n'Select All': 'Alle auswählen'\n'Select None': 'Keine auswählen'\n'Add Event': 'Ereignis hinzufügen'\nN/A: N.A.\n'On Front Page': 'Auf der Startseite'\n'On Section Page': 'Auf der Rubrikenseite'\n'Created by': 'Erstellt von'\n'Creation date': Erstellungsdatum\n'Publication List': 'Liste der Publikationen'\n'Issue List': 'Liste der Ausgaben'\n'Section List': 'Liste der Rubriken'\nAll: Alle\nduplicate: Duplizieren\nmove: Verschieben\nMove: Verschieben\n'From:': 'Von:'\n'Date:': 'Datum:'\nHidden: Verborgen\nComments: Kommentare\nComment: Kommentar\nApproved: Bewilligt\nSubject: Subjekt\n'IP address:': 'IP Adresse'\n'Email:': 'E-Mail:'\nAuthor: AutorIn\n'Article name': Artikelname\n'Hide article': 'Verberge Artikel'\n'Show article': 'Zeige Artikel'\n'Article Type Fields': 'Artikeltyp Felder'\n'Article Images': Artikelbilder\n'Log Messages': 'Log Nachrichten'\n'Article Files': Artikeldateien\n'Article Comments': Artikelkommentare\n'Are you sure you want to deactivate the subscription?': 'Soll das Abonnement wirklich deaktiviert werden?'\n'Are you sure you want to activate the subscription?': 'Soll das Abonnement wirklich aktiviert werden?'\nOther: Andere\n'Time:': 'Uhrzeit:'\n'No events.': 'Keine Ereignisse.'\n'Default templates': Standard-Template\n'System Preferences': Systemeinstellungen\n'The date must be in the future.': 'Das Datum muss in der Zukunft liegen.'\nSend: Senden\n'Thank you.': 'Vielen Dank.'\n'Please take a minute to send us an email.': 'Bitte nehmen Sie sich eine Minute, um uns eine E-Mail zu senden.'\n(optional): (optional)\n'The URL you entered is invalid: $1': 'Die angegebene URL ist ungültig: $1'\nReads: Gelesen\n'Publish with issue': 'Mit Ausgabe veröffentlichen'\n'Universal List': 'Universelle Liste und Suche'\n'Invalid security token!': 'Ungültiges Sicherheits-Token! '\nAuthors: Autoren/innen\nTitle: Titel\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: auf\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.el.yml",
    "content": "Plugins: Πρόσθετα\n'Manage Plugins': 'Διαχείριση Προσθέτων'\nAccount: Λογαριασμός\n'Items per page': 'Στοιχεία ανά σελίδα'\n'Add new': 'Προσθήκη νέου'\nHome: 'Αρχική Σελίδα'\nLogout: Έξοδος\nMore...: Περισσότερα...\nContent: Περιεχόμενο\nLanguages: Γλώσσες\nCountries: Χώρες\nThemes: Θέματα\nTopics: Θέματα\nConfigure: Διαμόρφωση\n'Image Archive': 'Αρχείο Εικόνων'\n'Add Article': 'Προσθήκη Άρθρου'\nFields: Πεδία\nDelete: Διαγραφή\nType: Τύπος\nName: Όνομα\nCode: Κώδικας\nEdit: Επεξεργασία\nLogin: Είσοδος\nPassword: 'Κωδικός πρόσβασης'\nSite: Ιστότοπος\nPath: Διαδρομή\n'Go up': 'Πήγαινε επάνω'\nURL: URL\nOrder: Εντολή\nHide: Απόκρυψη\nDuplicate: Αντιγραφή\nSubscription: Συνδρομή\nexpires: λήγει\nstarts: αρχίζει\nbefore: πρίν\nafter: μετά\non: on\nstatus: κατάσταση\nactive: ενεργός\ninactive: ανενεργός\nSubscribers: Συνδρομητές\nStaff: Προσωπικό\n'Select destination': 'Επιλογή προορισμού'\n'No languages': 'Καμία γλώσσα'\n'---Select language---': '---Επιλογή γλώσσας---'\n'No publications': 'Καμία δημοσίευση'\n'---Select publication---': '---Επιλογή δημοσίευσης---'\n'No issues': 'Κανένα άρθρο'\n'---Select issue---': '---Επιλογή άρθρου---'\n'No sections': 'Καμία ενότητα'\n'---Select section---': '---Επιλογή ενότητας---'\nLanguage: Γλώσσα\nCountry: Χώρα\n'Account name': 'Όνομα λογαριασμού'\nPublication: Δημοσίευση\n'Default language': 'Προεπιλεγμένη Γλώσσα'\nSubscriptions: Συνδρομές\nIssue: Τεύχος\nNumber: Αριθμός\nSection: Ενότητα\nKeywords: 'Λέξεις κλειδιά'\nTopic: Θέμα\n'URL Name': 'Όνομα URL'\n'Left to pay': 'Απομένει να πληρωθεί'\nActive: Ενεργό\nTrial: Δοκιμή\nNext: Επόμενο\nPrevious: Προηγούμενο\nTranslate: Μετάφραση\nView: Προβολή\n'Scheduled Publishing': 'Προγραμματισμένη Δημοσίευση'\nTime: Ώρα\nAction: Ενέργεια\n'Schedule a new action': 'Προγραμματισμός νέας ενέργειας'\n'Scheduling a new publish action': 'Προγραμματισμός νέας εκδοτικής ενέργειας'\n'Delete scheduled publish action': 'Διαγραφή προγραμματισμένης εκδοτικής ενέργειας'\nDate/Time: Ημερομηνία/Ώρα\n'You must select an action.': 'Πρέπει να επιλέξετε μια ενέργεια.'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'Δεν έχετε το δικαίωμα να προγραμματίσετε τεύχη ή άρθρα για αυτόματη έκδοση.'\n'Front page': 'Πρώτη σελίδα'\n'Section page': 'Σελίδα ενότητας'\n'Show on front page': 'Δείξε στην αρχική σελίδα'\n'Remove from front page': 'Αφαίρεση από την αρχική σελίδα'\n'Show on section page': 'Δείξε στην σελίδα ενότητας'\n'Remove from section page': 'Αφαίρεση από την σελίδα ενότητας'\nActions: Ενέργειες\nPublishing: Δημοσίευση\nShow: Εμφάνιση\nRemove: Αφαίρεση\n'Article Types': 'Τύποι Αρθρων'\n'Staff User Types': 'Τύποι Χρηστών Προσωπικού'\nPublications: Δημοσιεύσεις\nIssues: Τεύχη\nSections: Ενότητες\nArticles: Άρθρα\nImages: Εικόνες\nChange: Αλλαγή\n'Add new issue': 'Προσθήκη νέου τεύχους'\n'Section Template': 'Κατηγορία Προτύπου'\n'Article Template': 'Πρότυπο Άρθρου'\n'Default Language': 'Προεπιλεγμένη γλώσσα'\n'Paid Period': 'Πληρωμένη Περίοδος'\nPreview: Προεπισκόπιση\n'You must fill in the $1 field.': 'Πρέπει να συμπληρώσετε το πεδίο $1.'\nError: Σφάλμα\n'Invalid input: $1': 'Άκυρη εισαγωγή: $1'\n'Language does not exist.': 'Η γλώσσα δεν υπάρχει.'\n'Publication does not exist.': 'Η δημοσίευση δεν υπάρχει.'\n'Issue does not exist.': 'Το τεύχος δεν υπάρχει.'\n'You must select a language.': 'Πρέπει να επιλέξετε γλώσσα.'\n'Section does not exist.': 'Η ενότητα δεν υπάρχει.'\n'No articles.': 'Κανένα άρθρο.'\n'Article does not exist.': 'Το άρθρο δεν υπάρχει.'\n'Image does not exist.': 'Η εικόνα δεν υπάρχει.'\n'Access denied': 'Άρνηση πρόσβασης'\n'Invalid parameters received': 'Ελήφθησαν μη έγκυρες παράμετροι'\n'Add new article': 'Προσθήκη νέου άρθρου'\nStatus: Κατάσταση\nPublished: Δημοσιευμένα\n'Not published': Αδημοσίευτα\nSubmitted: Υποβεβλημμένα\nNew: Νέο\nArticle: Άρθρο\nPublish: Δημοσίευση\nUnpublish: 'Αναίρεση δημοσίευσης'\nUnlock: Ξεκλείδωμα\nUploaded: Ανεβασμένα\nYYYY-MM-DD: ΕΕΕΕ-ΜΜ-ΗΗ\nSubmit: Υποβολλή\nImage: Εικόνα\nDescription: Περιγραφή\nPhotographer: Φωτογράφος\nPlace: Τόπος\nDate: Ημερομηνία\nThumbnail: Thumbnail\n'In use': 'Σε χρήση'\n'Additional searches': 'Πρόσθετες αναζητήσεις'\n'Most Recently Added': 'Προστέθηκαν Πιο Πρόσφατα'\n'Most Recently Modified': 'Τροποποιήθηκαν Πιο Πρόσφατα'\n'$1 images found': 'Βρέθηκαν $1 εικόνες'\n'Reset search conditions': 'Επαναρρύθμιση των συνθηκών αναζήτησης'\n'Image number': 'Αριθμός εικόνας'\nUsers: Χρήστες\nLocalizer: 'Τοπικός Προσαρμοστής'\n'Adding new translation': 'Προσθήκη νέας μετάφρασης'\n'No more languages.': 'Όχι άλλες γλώσσες.'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'Το πεδίο  $1 μπορεί να περιλαμβάνει μόνο γράμματα, ψηφία και τον χαρακτήρα υπογράμμισης (_).'\n'Add new publication': 'Προσθήκη νέας δημοσίευσης'\n'Upload new template': 'Ανέβασμα νέου προτύπου'\n'Add new staff member': 'Προσθήκη νέου μέλους προσωπικού'\n'Staff member deleted.': null\n'Add new subscriber': 'Προσθήκη νέου συνδρομητή'\n'Add new user type': 'Προσθήκη νέου τύπου χρήστη'\n'Add new article type': 'Προσθήκη νέου τύπου άρθρου'\n'Add new country': 'Προσθήκη νέας χώρας'\n'Add new language': 'Προσθήκη νέας γλώσσας'\n'View logs': 'Εμφάνιση μητρώου πρακτικών'\n'Change your password': 'Αλλαγή κωδικού πρόσβασης'\n'Your Articles': 'Τα άρθρα σας'\n'Submitted Articles': 'Υποβεβλημμένα Άρθρα'\nLogs: 'Καταγραφή μητρώου πρακτικών'\n'There are $1 article(s) left.': 'Απομένουν άρθρα $1.'\n'There are $1 issues(s) left.': 'Απομένουν τεύχη $1.'\n'There are $1 section(s) left.': 'Απομένουν ενότητες $1.'\n'There are $1 publication(s) left.': 'Απομένουν δημοσιεύσεις $1.'\n'There are $1 countries left.': 'Απομένουν χώρες $1.'\n'Name <SMALL>(click to edit)</SMALL>': 'Όνομα <SMALL>(κάντε κλίκ για επεξεργασία)</SMALL>'\n'Add new subscription': 'Προσθήκη νέας συνδρομής'\n'You do not have the right to add subscriptions.': 'Δεν έχετε το δικαίωμα προσθήκης συνδρομών.'\n'Adding subscription': 'Προσθήκη συνδρομής'\n'Delete subscription': 'Διαγραφή συνδρομής'\n'You do not have the right to delete subscriptions.': 'Δεν έχετε το δικαίωμα διαγραφής συνδρομών.'\n'No such subscription.': 'Δεν υπάρχει τέτοια συνδρομή.'\nYes: Ναι\nNo: Όχι\nClose: Κλείσιμο\n'No issues.': 'Κανένα τεύχος.'\n'Back to Edit Article': 'Πίσω στην Επεξεργασία Κειμένου'\n'No topics': 'Κανένα θέμα'\n'You do not have the right to add articles.': 'Δεν έχετε το δικαίωμα προσθήκης άρθρων.'\nStart: Έναρξη\nDays: Ημέρες\n'The sections could not be added successfully. Some of them were already added !': 'Οι ενότητες δεν μπόρεσαν να προστεθούν επιτυχώς. Μερικές έχουν ήδη προστεθεί!'\n'Add another': 'Προσθήκη νέου'\nCancel: Ακύρωση\nDone: Έτοιμο\nOK: ΟΚ\nSave: Αποθήκευση\nSearch: Αναζήτηση\n'Make a selection': Επιλέξτε\n'You must input a number greater than 0 into the $1 field.': 'Πρέπει να εισάγετε έναν αριθμό μεγαλύτερο του 0 στο πεδίο $1.'\n'You must input a valid date.': 'Πρέπει να εισάγετε έγκυρη ημερομηνία.'\n'Add new field': 'Προσθήκη νέου πεδίου'\n'Article automatic publishing schedule': 'Αυτόματο πρόγραμμα δημοσίευσης άρθρου'\n'Are you sure you want to delete this scheduled action?': 'Είστε σίγουρος/η ότι θέλετε να διαγράψετε την προγραμματισμένη ενέργεια;'\nUnlink: Αποσύνδεση\n'Are you sure you want to delete the image $1?': 'Είστε σίγουρος/η ότι θέλετε να διαγράψετε την εικόνα $1;'\n'No such issue.': 'Δεν υπάρχει τέτοιο τεύχος.'\n'Are you sure you want to delete the subscription to the publication $1?': 'Είστε σίγουρος/η ότι θέλετε να διαγράψετε την συνδρομή στην δημοσίευση $1;'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Δεν ήταν δυνατή η αποθήκευση των αλλαγών στο τεύχος $1. Παρακαλούμε βεβαιωθείτε ότι το όνομα URL $2 του τεύχους  δεν είχε χρησιμοποιηθεί πρωτύτερα στην δημοσίευση $3.'\nGB: GB\nMB: MB\nKB: KB\nbytes: bytes\nAttach: Σύναψη\nBack: Πίσω\nFile: Αρχείο\n'Save and Close': 'Αποθήκευση και έξοδος'\nAdd: Προσθήκη\n'Select All': 'Επιλογή όλων'\n'Select None': 'Καμία επιλογή'\n'Add Event': 'Προσθήκη Εκδήλωσης'\nN/A: Ν/Α\n'On Front Page': 'Στην Πρώτη Σελίδα'\n'On Section Page': 'Στην Σελίδα Ενότητας'\n'Created by': 'Δημιουργήθηκε από'\n'Creation date': 'Ημερομηνία δημιουργίας'\n'Publication List': 'Λίστα Δημοσιεύσεων'\n'Issue List': 'Λίστα Τευχών'\n'Section List': 'Λίστα Ενοτήτων'\nAll: Όλα\nduplicate: αντιγραφή\nmove: μετακίνηση\nMove: Μετακίνηση\n'From:': 'Από:'\n'Date:': 'Ημερομηνία:'\nHidden: Κρυμμένα\nComments: Σχόλια\nComment: Σχόλιο\nApproved: Εγκεκριμμένα\nSubject: Θέμα\n'IP address:': 'ΙΡ διεύθυνση'\n'Email:': Email\nAuthor: Συγγραφέας\n'Article name': 'Όνομα άρθρου'\n'Hide article': 'Απόκρυψη άρθρου'\n'Show article': 'Εμφάνιση άρθρου'\n'Article Type Fields': 'Πεδία Τύπου Άρθρου'\n'Article Images': 'Εικόνες άρθρου'\n'Log Messages': 'Μηνύματα Μητρώου Πρακτικών '\n'Article Files': 'Αρχεία άρθρου'\n'Article Comments': 'Σχόλια άρθρου'\n'Are you sure you want to deactivate the subscription?': 'Είστε σίγουρος/η ότι θέλετε να απενεργοποιήσετε την συνδρομή;'\n'Are you sure you want to activate the subscription?': 'Είστε σίγουρος/η ότι θέλετε να ενεργοποιήσετε την συνδρομή;'\nOther: Άλλο\n'Time:': 'Ώρα:'\n'No events.': 'Καμία εκδήλωση.'\n'Default templates': 'Προεπιλεγμένα πρότυπα'\n'System Preferences': 'Προτιμήσεις Συστήματος'\n'The date must be in the future.': 'Η ημερομηνία πρέπει να είναι στο μέλλον.'\nSend: Αποστολή\n'Thank you.': Ευχαριστούμε.\n'Please take a minute to send us an email.': 'Παρακαλούμε αφιερώστε ένα λεπτό για να μας στείλετε ένα email.'\n(optional): (προαιρετικό)\n'The URL you entered is invalid: $1': 'Το URL που εισήχθει είναι άκυρο: $1'\nReads: Αναγνώσεις\n'Publish with issue': 'Δημοσίευση με τεύχος'\n'Universal List': 'Καθολική λίστα'\n'Invalid security token!': 'Άκυρο τεκμήριο ασφαλείας!'\nAuthors: Συγγραφείς\nTitle: Τίτλος\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: σε\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.en.yml",
    "content": "Plugins: Plugins\n'Manage Plugins': 'Manage Plugins'\nAccount: Account\n'Items per page': 'Items per page'\n'Add new': 'Add new'\nHome: Home\nLogout: Logout\nMore...: More...\nContent: Content\nLanguages: Languages\nCountries: Countries\nThemes: Themes\nTopics: Topics\nConfigure: Configure\n'Image Archive': 'Image Archive'\n'Add Article': 'Add Article'\nFields: Fields\nDelete: Delete\nType: Type\nName: Name\nCode: Code\nEdit: Edit\nLogin: Login\nPassword: Password\nSite: Site\nPath: Path\n'Go up': 'Go up'\nURL: URL\nOrder: Order\nHide: Hide\nDuplicate: Duplicate\nSubscription: Subscription\nexpires: expires\nstarts: starts\nbefore: before\nafter: after\non: on\nstatus: status\nactive: active\ninactive: inactive\nSubscribers: Subscribers\nStaff: Staff\n'Select destination': 'Select destination'\n'No languages': 'No languages'\n'---Select language---': '---Select language---'\n'No publications': 'No publications'\n'---Select publication---': '---Select publication---'\n'No issues': 'No issues'\n'---Select issue---': '---Select issue---'\n'No sections': 'No sections'\n'---Select section---': '---Select section---'\nLanguage: Language\nCountry: Country\n'Account name': 'Account name'\nPublication: Publication\n'Default language': 'Default language'\nSubscriptions: Subscriptions\nIssue: Issue\nNumber: Number\nSection: Section\nKeywords: Keywords\nTopic: Topic\n'URL Name': 'URL Name'\n'Left to pay': 'Left to pay'\nActive: Active\nTrial: Trial\nNext: Next\nPrevious: Previous\nTranslate: Translate\nView: View\n'Scheduled Publishing': 'Scheduled Publishing'\nTime: Time\nAction: Action\n'Schedule a new action': 'Schedule a new action'\n'Scheduling a new publish action': 'Scheduling a new publish action'\n'Delete scheduled publish action': 'Delete scheduled publish action'\nDate/Time: Date/Time\n'You must select an action.': 'You must select an action.'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'You do not have the right to schedule issues or articles for automatic publishing.'\n'Front page': 'Front page'\n'Section page': 'Section page'\n'Show on front page': 'Show on front page'\n'Remove from front page': 'Remove from front page'\n'Show on section page': 'Show on section page'\n'Remove from section page': 'Remove from section page'\nActions: Actions\nPublishing: Publishing\nShow: Show\nRemove: Remove\n'Article Types': 'Article Types'\n'Staff User Types': 'Staff User Types'\nPublications: Publications\nIssues: Issues\nSections: Sections\nArticles: Articles\nImages: Images\nChange: Change\n'Add new issue': 'Add new issue'\n'Section Template': 'Section Template'\n'Article Template': 'Article Template'\n'Default Language': 'Default Language'\n'Paid Period': 'Paid Period'\nPreview: Preview\n'You must fill in the $1 field.': 'You must fill in the $1 field.'\nError: Error\n'Invalid input: $1': 'Invalid input: $1'\n'Language does not exist.': 'Language does not exist.'\n'Publication does not exist.': 'Publication does not exist.'\n'Issue does not exist.': 'Issue does not exist.'\n'You must select a language.': 'You must select a language.'\n'Section does not exist.': 'Section does not exist.'\n'No articles.': 'No articles.'\n'Article does not exist.': 'Article does not exist.'\n'Image does not exist.': 'Image does not exist.'\n'Access denied': 'Access denied'\n'Invalid parameters received': 'Invalid parameters received'\n'Add new article': 'Add new article'\nStatus: Status\nPublished: Published\n'Not published': 'Not published'\nSubmitted: Submitted\nNew: New\nArticle: Article\nPublish: Publish\nUnpublish: Unpublish\nUnlock: Unlock\nUploaded: Uploaded\nYYYY-MM-DD: YYYY-MM-DD\nSubmit: Submit\nImage: Image\nDescription: Description\nPhotographer: Photographer\nPlace: Place\nDate: Date\nThumbnail: Thumbnail\n'In use': 'In use'\n'Additional searches': 'Additional searches'\n'Most Recently Added': 'Most Recently Added'\n'Most Recently Modified': 'Most Recently Modified'\n'$1 images found': '$1 images found'\n'Reset search conditions': 'Reset search conditions'\n'Image number': 'Image number'\nUsers: Users\nLocalizer: Localizer\n'Adding new translation': 'Adding new translation'\n'No more languages.': 'No more languages.'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'The $1 field may only contain letters, digits and underscore (_) character.'\n'Add new publication': 'Add new publication'\n'Upload new template': 'Upload new template'\n'Add new staff member': 'Add new staff member'\n'Staff member deleted.': 'Staff member deleted.'\n'Add new subscriber': 'Add new subscriber'\n'Add new user type': 'Add new user type'\n'Add new article type': 'Add new article type'\n'Add new country': 'Add new country'\n'Add new language': 'Add new language'\n'View logs': 'View logs'\n'Change your password': 'Change your password'\n'Your Articles': 'Your Articles'\n'Submitted Articles': 'Submitted Articles'\nLogs: Logs\n'There are $1 article(s) left.': 'There are $1 article(s) left.'\n'There are $1 issues(s) left.': 'There are $1 issues(s) left.'\n'There are $1 section(s) left.': 'There are $1 section(s) left.'\n'There are $1 publication(s) left.': 'There are $1 publication(s) left.'\n'There are $1 countries left.': 'There are $1 countries left.'\n'Name <SMALL>(click to edit)</SMALL>': 'Name <SMALL>(click to edit)</SMALL>'\n'Add new subscription': 'Add new subscription'\n'You do not have the right to add subscriptions.': 'You do not have the right to add subscriptions.'\n'Adding subscription': 'Adding subscription'\n'Delete subscription': 'Delete subscription'\n'You do not have the right to delete subscriptions.': 'You do not have the right to delete subscriptions.'\n'No such subscription.': 'No such subscription.'\nYes: Yes\nNo: No\nClose: Close\n'No issues.': 'No issues.'\n'Back to Edit Article': 'Back to Edit Article'\n'No topics': 'No topics'\n'You do not have the right to add articles.': 'You do not have the right to add articles.'\nStart: Start\nDays: Days\n'The sections could not be added successfully. Some of them were already added !': 'The sections could not be added successfully. Some of them were already added !'\n'Add another': 'Add another'\nCancel: Cancel\nDone: Done\nOK: OK\nSave: Save\nSearch: Search\n'Make a selection': 'Make a selection'\n'You must input a number greater than 0 into the $1 field.': 'You must input a number greater than 0 into the $1 field.'\n'You must input a valid date.': 'You must input a valid date.'\n'Add new field': 'Add new field'\n'Article automatic publishing schedule': 'Article automatic publishing schedule'\n'Are you sure you want to delete this scheduled action?': 'Are you sure you want to delete this scheduled action?'\nUnlink: Unlink\n'Are you sure you want to delete the image $1?': 'Are you sure you want to delete the image $1?'\n'No such issue.': 'No such issue.'\n'Are you sure you want to delete the subscription to the publication $1?': 'Are you sure you want to delete the subscription to the publication $1?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.'\nGB: GB\nMB: MB\nKB: KB\nbytes: bytes\nAttach: Attach\nBack: Back\nFile: File\n'Save and Close': 'Save and Close'\nAdd: Add\n'Select All': 'Select All'\n'Select None': 'Select None'\n'Add Event': 'Add Event'\nN/A: N/A\n'On Front Page': 'On Front Page'\n'On Section Page': 'On Section Page'\n'Created by': 'Created by'\n'Creation date': 'Creation date'\n'Publication List': 'Publication List'\n'Issue List': 'Issue List'\n'Section List': 'Section List'\nAll: All\nduplicate: duplicate\nmove: move\nMove: Move\n'From:': 'From:'\n'Date:': 'Date:'\nHidden: Hidden\nComments: Comments\nComment: Comment\nApproved: Approved\nSubject: Subject\n'IP address:': 'IP address:'\n'Email:': 'Email:'\nAuthor: Author\n'Article name': 'Article name'\n'Hide article': 'Hide article'\n'Show article': 'Show article'\n'Article Type Fields': 'Article Type Fields'\n'Article Images': 'Article Images'\n'Log Messages': 'Log Messages'\n'Article Files': 'Article Files'\n'Article Comments': 'Article Comments'\n'Are you sure you want to deactivate the subscription?': 'Are you sure you want to deactivate the subscription?'\n'Are you sure you want to activate the subscription?': 'Are you sure you want to activate the subscription?'\nOther: Other\n'Time:': 'Time:'\n'No events.': 'No events.'\n'Default templates': 'Default templates'\n'System Preferences': 'System Preferences'\n'The date must be in the future.': 'The date must be in the future.'\nSend: Send\n'Thank you.': 'Thank you.'\n'Please take a minute to send us an email.': 'Please take a minute to send us an email.'\n(optional): (optional)\n'The URL you entered is invalid: $1': 'The URL you entered is invalid: $1'\nReads: Reads\n'Publish with issue': 'Publish with issue'\n'Universal List': 'Universal List'\n'Invalid security token!': 'Invalid security token!'\nAuthors: Authors\nTitle: Title\n'Edit country': 'Edit country'\n'Entry $1 prepared for publishing': 'Entry $1 prepared for publishing'\n'Entry deleted': 'Entry deleted'\n'Feed saved': 'Feed saved'\n'Item published': 'Item published'\n'Settings saved': 'Settings saved'\n'Self-delete is not permitted.': 'Self-delete is not permitted.'\n'Edit staff member $1': 'Edit staff member $1'\n'Delete staff member $1': 'Delete staff member $1'\n'Could not save user $1. Please make sure it does not already exist': 'Could not save user $1. Please make sure it does not already exist'\n'Could not save user with e-mail address $1. Please make sure it does not already exist': 'Could not save user with e-mail address $1. Please make sure it does not already exist'\n'Changing user type would prevent you to manage users. Aborted.': 'Changing user type would prevent you to manage users. Aborted.'\n'Staff member saved.': 'Staff member saved.'\n'Permissions: $1': 'Permissions: $1'\n'Change user account information': 'Change user account information'\n'Staff management': 'Staff management'\n'Updated': 'Updated'\n'Options': 'Options'\n'Verified': 'Verified'\nConfirm: Confirm\nat: at\npublished: published\nunpublished: unpublished\nnopermissions: \"You don't have permissions to access this resource.\"\nimportantmessage: \"Important Info\"\nanonymous: \"Anonymous\"\n'Successfully refreshed authentication token.': 'Successfully refreshed authentication token.'\n'Failed to refresh authentication token.': 'Failed to refresh authentication token.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.en.yml~",
    "content": "Plugins: Wtyczki\n'Manage Plugins': 'Zarządzanie Wtyczkami'\nAccount: Konto\n'Items per page': 'Rzeczy na stronie'\n'Add new': Dodaj\nHome: 'Strona główna'\nLogout: Wyloguj\nMore...: Więcej\nContent: Kontent\nLanguages: Języki\nCountries: Państwa\nThemes: Szablony\nTopics: Tematy\nConfigure: Konfiguracja\n'Image Archive': 'Archiwum zdjęć'\n'Add Article': 'Dodaj artykuł'\nFields: Pola\nDelete: Usuń\nType: Typ\nName: Nazwa\nCode: Kod\nEdit: Edycja\nLogin: Zaloguj\nPassword: Hasła\nSite: Strona\nPath: Ścieżka\n'Go up': 'W górę'\nURL: URL\nOrder: Kierunek\nHide: Schowaj\nDuplicate: Duplikat\nSubscription: Subskrypcja\nexpires: wygasa\nstarts: start\nbefore: przed\nafter: po\non: ' '\nstatus: status\nactive: aktywne\ninactive: nieaktywne\nSubscribers: Subskrynenci\nStaff: Pracownicy\n'Select destination': 'Wybierz cel'\n'No languages': 'Brak języków'\n'---Select language---': '---Wybierz język---'\n'No publications': 'Brak publikacji'\n'---Select publication---': '---Wybierz publikację---'\n'No issues': 'Brak artykułów'\n'---Select issue---': '---Wybierz artykuł---'\n'No sections': 'Brak sekcji'\n'---Select section---': '---Wybierz sekcję---'\nLanguage: Język\nCountry: Kraj\n'Account name': 'Nazwa konta'\nPublication: Publikacja\n'Default language': 'Domyślny język'\nSubscriptions: Subksrypcje\nIssue: Wydanie\nNumber: Numer\nSection: Sekcja\nKeywords: 'Słowa kluczowe'\nTopic: Temat\n'URL Name': 'Nazwa URL'\n'Left to pay': 'Pozostało do zapłaty'\nActive: Aktywne\nTrial: Próbne\nNext: Następny\nPrevious: Poprzedni\nTranslate: Przetłumacz\nView: Widok\n'Scheduled Publishing': 'Publikacje zaplanowane'\nTime: Czas\nAction: Akcja\n'Schedule a new action': 'Zaplanuj nową akcję'\n'Scheduling a new publish action': 'Planowanie nowej akcji'\n'Delete scheduled publish action': 'Usuń zaplanowaną akcję'\nDate/Time: Data/Czas\n'You must select an action.': 'Musisz wybrać akcję.'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'Nie masz praw aby planować wydania albo artykuły do automatycznego publikowania'\n'Front page': 'Strona główna'\n'Section page': 'Strona sekcji'\n'Show on front page': 'Pokaż na stronie głównej'\n'Remove from front page': 'Usuń ze strony głównej'\n'Show on section page': 'Pokaż na stronie sekcji'\n'Remove from section page': 'Usuń ze strony sekcji'\nActions: Akcje\nPublishing: Publikowanie\nShow: Pokaż\nRemove: Usuń\n'Article Types': 'Typy artykułów'\n'Staff User Types': 'Typu użytkowników redakcji'\nPublications: Publikacje\nIssues: Wydania\nSections: Sekcje\nArticles: Artykuły\nImages: Zdjęcia\nChange: Zmień\n'Add new issue': 'Dodaj nowe wydanie'\n'Section Template': 'Szablok sekcji'\n'Article Template': 'Szablon artykułu'\n'Default Language': 'Domyślny język'\n'Paid Period': 'Okres płatny'\nPreview: Podgląd\n'You must fill in the $1 field.': 'Musisz wypełnić pole $1'\nError: Błąd\n'Invalid input: $1': 'Nieprawidłowe wprowadzenie: $1'\n'Language does not exist.': 'Język nie istnieje.'\n'Publication does not exist.': 'Publikacja nie istnieje'\n'Issue does not exist.': 'Wydanie nie istnieje.'\n'You must select a language.': 'Musisz wybrać język.'\n'Section does not exist.': 'Sekcja nie istnieje.'\n'No articles.': 'Brak artykułów.'\n'Article does not exist.': 'Artykuł nie isntnieje.'\n'Image does not exist.': 'Zdjęcie nie istnieje.'\n'Access denied': 'Dostęp zabroniony'\n'Invalid parameters received': 'Otrzymano niewłaściwe parametry'\n'Add new article': 'Dodaj nowy artykuł'\nStatus: Status\nPublished: Opublikowane\n'Not published': Nieopublikowane\nSubmitted: Wysłane\nNew: Nowy\nArticle: Artykuł\nPublish: Publikuj\nUnpublish: Nieopublikowane\nUnlock: Odblokuj\nUploaded: Wgrane\nYYYY-MM-DD: RRRR-MM-DD\nSubmit: Wyślij\nImage: Zdjęcie\nDescription: Opis\nPhotographer: Fotograf\nPlace: Miejsce\nDate: Data\nThumbnail: Miniaturka\n'In use': 'W użyciu'\n'Additional searches': 'Dodatkowe wyszukiwania'\n'Most Recently Added': 'Ostatnio dodane'\n'Most Recently Modified': 'Ostatnio modyfikowane'\n'$1 images found': 'Znaleziono zdjęc: $1'\n'Reset search conditions': 'Resetuj warunki wyszukiwania'\n'Image number': 'Liczba zdjęć'\nUsers: Użytkownicy\nLocalizer: Lokalizator\n'Adding new translation': 'Dodawanie nowego tłumaczenia'\n'No more languages.': 'Nie ma więcej języków'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'Pole $1 może jedynie zawierać litery, cyfry i podkreślnik (_).'\n'Add new publication': 'Dodaj nową publikację'\n'Upload new template': 'Dodaj nowy szablok'\n'Add new staff member': 'Dodaj członka redakcji'\n'Add new subscriber': 'Dodaj subskrynenta'\n'Add new user type': 'Dodaj nowy typ użytkownika'\n'Add new article type': 'Dodaj nowy typ artykułu'\n'Add new country': 'Dodaj nowy kraj'\n'Add new language': 'Dodaj nowy język'\n'View logs': 'Zobacz logi'\n'Change your password': 'Zmień hasło'\n'Your Articles': 'Twoje Artykuły'\n'Submitted Articles': 'Wysłane artykuły'\nLogs: Logi\n'There are $1 article(s) left.': 'Pozostało znaków: $1'\n'There are $1 issues(s) left.': 'Pozostało wydań: $1'\n'There are $1 section(s) left.': 'Pozostało sekcji: $1'\n'There are $1 publication(s) left.': 'Pozostało publikacji: $1'\n'There are $1 countries left.': 'Pozostało państw: $1'\n'Name <SMALL>(click to edit)</SMALL>': 'Imię <SMALL>(kliknij aby edytować)</SMALL>'\n'Add new subscription': 'Dodaj nową subskrypcję'\n'You do not have the right to add subscriptions.': 'Nie masz praw aby dodać subskrypcję.'\n'Adding subscription': 'Dodawanie subskrypcji'\n'Delete subscription': 'Usuń subskrypcję'\n'You do not have the right to delete subscriptions.': 'Nie masz praw aby usunąć subskrypcję.'\n'No such subscription.': 'Subskrypcja nie istnieje.'\nYes: Tak\nNo: Nie\nClose: Zamknij\n'No issues.': 'Brak wydań.'\n'Back to Edit Article': 'Powrót do edycji artykułu'\n'No topics': 'Brak tematów'\n'You do not have the right to add articles.': 'Nie masz wystarczających praw aby dodawać artykuły'\nStart: Start\nDays: Dni\n'The sections could not be added successfully. Some of them were already added !': 'Sekcje nie zostały dodane. Niektóre z nich już istniały'\n'Add another': 'Dodaj inne'\nCancel: Anuluj\nDone: Zakończ\nOK: OK\nSave: Zapisz\nSearch: Szukaj\n'Make a selection': Wybierz\n'You must input a number greater than 0 into the $1 field.': 'Musisz podać numer większy niż 0 w pole $1'\n'You must input a valid date.': 'Podaj poprawną datę'\n'Add new field': 'Dodaj nowe pole'\n'Article automatic publishing schedule': 'Automatyczne publikowanie artykułu zaplanowane'\n'Are you sure you want to delete this scheduled action?': 'Czy na pewno chcesz usunąć zaplanowaną akcję?'\nUnlink: Odlinkuj\n'Are you sure you want to delete the image $1?': 'Czy na pewno chcesz usunąć zdjęcie $1?'\n'No such issue.': 'Brak takiego wydania.'\n'Are you sure you want to delete the subscription to the publication $1?': 'Czy na pewno chcesz usunąć subskrypcję publikacji $1?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Nie można zapisać zmian do wydania $1. Upewnij się, że nazwa URL wydania $2 nie została użyta w publikacji $3.'\nGB: GB\nMB: MB\nKB: KB\nbytes: bajtów\nAttach: Załącz\nBack: Powrót\nFile: Plik\n'Save and Close': 'Zapisz i zamknij'\nAdd: Dodaj\n'Select All': 'Zaznacz wszystko'\n'Select None': 'Odznacz wszystko'\n'Add Event': 'Dodaj wydarzenie'\nN/A: N/A\n'On Front Page': 'Na stronie głównej'\n'On Section Page': 'Na stronie sekcji'\n'Created by': 'Utworzone przez'\n'Creation date': 'Data utworzenia'\n'Publication List': 'Lista publikacji'\n'Issue List': 'Lista wydań'\n'Section List': 'Lista sekcji'\nAll: Wszystko\nduplicate: duplikat\nmove: przemieść\nMove: Przemieszczanie\n'From:': 'Od:'\n'Date:': 'Data:'\nHidden: Ukryte\nComments: Komentarze\nComment: Komentarz\nApproved: Zaakceptowane\nSubject: Temat\n'IP address:': 'Adres IP:'\n'Email:': 'Email:'\nAuthor: Autor\n'Article name': 'Nazwa artykułu'\n'Hide article': 'Schowaj artykuł'\n'Show article': 'Pokaż artykuł'\n'Article Type Fields': 'Pola typu artykułu'\n'Article Images': 'Zdjęcia artykułu'\n'Log Messages': 'Wiadomości z loga'\n'Article Files': 'Pliki artykułu'\n'Article Comments': 'Komentarze artykułu'\n'Are you sure you want to deactivate the subscription?': 'Czy na pewno chcesz deaktywować subskrypcję?'\n'Are you sure you want to activate the subscription?': 'Czy na pewno chcesz aktywować subskrypcję?'\nOther: Inne\n'Time:': 'Czas:'\n'No events.': 'Brak wydarzeń.'\n'Default templates': 'Domyślne szablony'\n'System Preferences': 'Preferencje systemowe'\n'The date must be in the future.': 'Data musi być w przyszłości.'\nSend: Wyślij\n'Thank you.': Dziękujemy.\n'Please take a minute to send us an email.': 'Poświęc minutę i wyślij nam email.'\n(optional): (opcjonalnie)\n'The URL you entered is invalid: $1': 'Podany adres URL jest niepoprawny: $1'\nReads: Przeczytano\n'Publish with issue': 'Opublikuj z wydaniem'\n'Universal List': 'Uniwersalna Lista'\n'Invalid security token!': 'Niepoprawny token bezpieczeństwa!'\nAuthors: Autorzy\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.en_GB.yml",
    "content": "Plugins: Plugins\n'Manage Plugins': 'Manage Plugins'\nAccount: Account\n'Items per page': 'Items per page'\n'Add new': 'Add new'\nHome: Home\nLogout: Logout\nMore...: More...\nContent: Content\nLanguages: Languages\nCountries: Countries\nThemes: Themes\nTopics: Topics\nConfigure: Configure\n'Image Archive': 'Image Archive'\n'Add Article': 'Add Article'\nFields: Fields\nDelete: Delete\nType: Type\nName: Name\nCode: Code\nEdit: Edit\nLogin: Login\nPassword: Password\nSite: Site\nPath: Path\n'Go up': 'Go up'\nURL: URL\nOrder: Order\nHide: Hide\nDuplicate: Duplicate\nSubscription: Subscription\nexpires: expires\nstarts: starts\nbefore: before\nafter: after\non: on\nstatus: status\nactive: active\ninactive: inactive\nSubscribers: Subscribers\nStaff: Staff\n'Select destination': 'Select destination'\n'No languages': 'No languages'\n'---Select language---': '---Select language---'\n'No publications': 'No publications'\n'---Select publication---': '---Select publication---'\n'No issues': 'No issues'\n'---Select issue---': '---Select issue---'\n'No sections': 'No sections'\n'---Select section---': '---Select section---'\nLanguage: Language\nCountry: Country\n'Account name': 'Account name'\nPublication: Publication\n'Default language': 'Default language'\nSubscriptions: Subscriptions\nIssue: Issue\nNumber: Number\nSection: Section\nKeywords: Keywords\nTopic: Topic\n'URL Name': 'URL Name'\n'Left to pay': 'Left to pay'\nActive: Active\nTrial: Trial\nNext: Next\nPrevious: Previous\nTranslate: Translate\nView: View\n'Scheduled Publishing': 'Scheduled Publishing'\nTime: Time\nAction: Action\n'Schedule a new action': 'Schedule a new action'\n'Scheduling a new publish action': 'Scheduling a new publish action'\n'Delete scheduled publish action': 'Delete scheduled publish action'\nDate/Time: Date/Time\n'You must select an action.': 'You must select an action.'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'You do not have the right to schedule issues or articles for automatic publishing.'\n'Front page': 'Front page'\n'Section page': 'Section page'\n'Show on front page': 'Show on front page'\n'Remove from front page': 'Remove from front page'\n'Show on section page': 'Show on section page'\n'Remove from section page': 'Remove from section page'\nActions: Actions\nPublishing: Publishing\nShow: Show\nRemove: Remove\n'Article Types': 'Article Types'\n'Staff User Types': 'Staff User Types'\nPublications: Publications\nIssues: Issues\nSections: Sections\nArticles: Articles\nImages: Images\nChange: Change\n'Add new issue': 'Add new issue'\n'Section Template': 'Section Template'\n'Article Template': 'Article Template'\n'Default Language': 'Default Language'\n'Paid Period': 'Paid Period'\nPreview: Preview\n'You must fill in the $1 field.': 'You must fill in the $1 field.'\nError: Error\n'Invalid input: $1': 'Invalid input: $1'\n'Language does not exist.': 'Language does not exist.'\n'Publication does not exist.': 'Publication does not exist.'\n'Issue does not exist.': 'Issue does not exist.'\n'You must select a language.': 'You must select a language.'\n'Section does not exist.': 'Section does not exist.'\n'No articles.': 'No articles.'\n'Article does not exist.': 'Article does not exist.'\n'Image does not exist.': 'Image does not exist.'\n'Access denied': 'Access denied'\n'Invalid parameters received': 'Invalid parameters received'\n'Add new article': 'Add new article'\nStatus: Status\nPublished: Published\n'Not published': 'Not published'\nSubmitted: Submitted\nNew: New\nArticle: Article\nPublish: Publish\nUnpublish: Unpublish\nUnlock: Unlock\nUploaded: Uploaded\nYYYY-MM-DD: YYYY-MM-DD\nSubmit: Submit\nImage: Image\nDescription: Description\nPhotographer: Photographer\nPlace: Place\nDate: Date\nThumbnail: Thumbnail\n'In use': 'In use'\n'Additional searches': 'Additional searches'\n'Most Recently Added': 'Most Recently Added'\n'Most Recently Modified': 'Most Recently Modified'\n'$1 images found': '$1 images found'\n'Reset search conditions': 'Reset search conditions'\n'Image number': 'Image number'\nUsers: Users\nLocalizer: Localizer\n'Adding new translation': 'Adding new translation'\n'No more languages.': 'No more languages.'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'The $1 field may only contain letters, digits and underscore (_) character.'\n'Add new publication': 'Add new publication'\n'Upload new template': 'Upload new template'\n'Add new staff member': 'Add new staff member'\n'Staff member deleted.': 'Staff member deleted.'\n'Add new subscriber': 'Add new subscriber'\n'Add new user type': 'Add new user type'\n'Add new article type': 'Add new article type'\n'Add new country': 'Add new country'\n'Add new language': 'Add new language'\n'View logs': 'View logs'\n'Change your password': 'Change your password'\n'Your Articles': 'Your Articles'\n'Submitted Articles': 'Submitted Articles'\nLogs: Logs\n'There are $1 article(s) left.': 'There are $1 article(s) left.'\n'There are $1 issues(s) left.': 'There are $1 issues(s) left.'\n'There are $1 section(s) left.': 'There are $1 section(s) left.'\n'There are $1 publication(s) left.': 'There are $1 publication(s) left.'\n'There are $1 countries left.': 'There are $1 countries left.'\n'Name <SMALL>(click to edit)</SMALL>': 'Name <SMALL>(click to edit)</SMALL>'\n'Add new subscription': 'Add new subscription'\n'You do not have the right to add subscriptions.': 'You do not have the right to add subscriptions.'\n'Adding subscription': 'Adding subscription'\n'Delete subscription': 'Delete subscription'\n'You do not have the right to delete subscriptions.': 'You do not have the right to delete subscriptions.'\n'No such subscription.': 'No such subscription.'\nYes: Yes\nNo: No\nClose: Close\n'No issues.': 'No issues.'\n'Back to Edit Article': 'Back to Edit Article'\n'No topics': 'No topics'\n'You do not have the right to add articles.': 'You do not have the right to add articles.'\nStart: Start\nDays: Days\n'The sections could not be added successfully. Some of them were already added !': 'The sections could not be added successfully. Some of them were already added !'\n'Add another': 'Add another'\nCancel: Cancel\nDone: Done\nOK: OK\nSave: Save\nSearch: Search\n'Make a selection': 'Make a selection'\n'You must input a number greater than 0 into the $1 field.': 'You must input a number greater than 0 into the $1 field.'\n'You must input a valid date.': 'You must input a valid date.'\n'Add new field': 'Add new field'\n'Article automatic publishing schedule': 'Article automatic publishing schedule'\n'Are you sure you want to delete this scheduled action?': 'Are you sure you want to delete this scheduled action?'\nUnlink: Unlink\n'Are you sure you want to delete the image $1?': 'Are you sure you want to delete the image $1?'\n'No such issue.': 'No such issue.'\n'Are you sure you want to delete the subscription to the publication $1?': 'Are you sure you want to delete the subscription to the publication $1?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.'\nGB: GB\nMB: MB\nKB: KB\nbytes: bytes\nAttach: Attach\nBack: Back\nFile: File\n'Save and Close': 'Save and Close'\nAdd: Add\n'Select All': 'Select All'\n'Select None': 'Select None'\n'Add Event': 'Add Event'\nN/A: N/A\n'On Front Page': 'On Front Page'\n'On Section Page': 'On Section Page'\n'Created by': 'Created by'\n'Creation date': 'Creation date'\n'Publication List': 'Publication List'\n'Issue List': 'Issue List'\n'Section List': 'Section List'\nAll: All\nduplicate: duplicate\nmove: move\nMove: Move\n'From:': 'From:'\n'Date:': 'Date:'\nHidden: Hidden\nComments: Comments\nComment: Comment\nApproved: Approved\nSubject: Subject\n'IP address:': 'IP address:'\n'Email:': 'Email:'\nAuthor: Author\n'Article name': 'Article name'\n'Hide article': 'Hide article'\n'Show article': 'Show article'\n'Article Type Fields': 'Article Type Fields'\n'Article Images': 'Article Images'\n'Log Messages': 'Log Messages'\n'Article Files': 'Article Files'\n'Article Comments': 'Article Comments'\n'Are you sure you want to deactivate the subscription?': 'Are you sure you want to deactivate the subscription?'\n'Are you sure you want to activate the subscription?': 'Are you sure you want to activate the subscription?'\nOther: Other\n'Time:': 'Time:'\n'No events.': 'No events.'\n'Default templates': 'Default templates'\n'System Preferences': 'System Preferences'\n'The date must be in the future.': 'The date must be in the future.'\nSend: Send\n'Thank you.': 'Thank you.'\n'Please take a minute to send us an email.': 'Please take a minute to send us an email.'\n(optional): (optional)\n'The URL you entered is invalid: $1': 'The URL you entered is invalid: $1'\nReads: Reads\n'Publish with issue': 'Publish with issue'\n'Universal List': 'Universal List'\n'Invalid security token!': 'Invalid security token!'\nAuthors: Authors\nTitle: Title\n'Edit country': 'Edit country'\n'Entry $1 prepared for publishing': 'Entry $1 prepared for publishing'\n'Entry deleted': 'Entry deleted'\n'Feed saved': 'Feed saved'\n'Item published': 'Item published'\n'Settings saved': 'Settings saved'\n'Self-delete is not permitted.': 'Deleting yourself is not permitted.'\n'Edit staff member $1': 'Edit staff member $1'\n'Delete staff member $1': 'Delete staff member $1'\n'Could not save user $1. Please make sure it does not already exist': 'Could not save user $1. Please make sure the account does not already exist.'\n'Could not save user with e-mail address $1. Please make sure it does not already exist': 'Could not save user with e-mail address $1. Please make sure it does not already exist.'\n'Changing user type would prevent you to manage users. Aborted.': 'Changing user type would prevent you from managing users. Aborted.'\n'Staff member saved.': 'Staff member saved.'\n'Permissions: $1': 'Permissions: $1'\n'Change user account information': 'Change user account information'\n'Staff management': 'Staff management'\nUpdated: Updated\nOptions: Options\nVerified: Verified\nConfirm: Confirm\nat: at\npublished: published\nunpublished: unpublished\nnopermissions: 'You don''t have permission to access this resource.'\nimportantmessage: 'Important Info'\nanonymous: Anonymous\n'Successfully refreshed authentication token.': 'Successfully refreshed the authentication token.'\n'Failed to refresh authentication token.': 'Failed to refresh the authentication token.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.es.yml",
    "content": "Plugins: Plugins\n'Manage Plugins': 'Administrar Plugins'\nAccount: Cuenta\n'Items per page': 'Items por página'\n'Add new': 'Agregar nuevo'\nHome: Inicio\nLogout: Salir\nMore...: Más...\nContent: Contenido\nLanguages: Idiomas\nCountries: Países\nThemes: Temas\nTopics: Tópicos\nConfigure: Configurar\n'Image Archive': 'Archivo de imágenes'\n'Add Article': 'Agregar artículo'\nFields: Campos\nDelete: Borrar\nType: Tipo\nName: Nombre\nCode: Código\nEdit: Editar\nLogin: Entrada\nPassword: Clave\nSite: Sitio\nPath: Paso\n'Go up': Subir\nURL: URL\nOrder: Orden\nHide: Ocultar\nDuplicate: Duplicar\nSubscription: Suscripción\nexpires: Expira\nstarts: Inicia\nbefore: antes\nafter: después\non: encendido\nstatus: estatus\nactive: activo\ninactive: inactivo\nSubscribers: suscriptores\nStaff: Equipo\n'Select destination': 'Seleccionar Destino'\n'No languages': 'Sin idioma'\n'---Select language---': '---Seleccione idioma---'\n'No publications': 'Sin publicaciones'\n'---Select publication---': '---Seleccione publicacion---'\n'No issues': 'Sin artículos'\n'---Select issue---': '---Seleccione artículo---'\n'No sections': 'Sin secciones'\n'---Select section---': '---Seleccione sección---'\nLanguage: Idioma\nCountry: País\n'Account name': 'Nombre de la cuenta'\nPublication: Publicación\n'Default language': 'Idioma inicial'\nSubscriptions: Suscripciones\nIssue: Edición\nNumber: Número\nSection: Sección\nKeywords: 'Palabras claves'\nTopic: Tema\n'URL Name': 'Nombre del URL'\n'Left to pay': 'Cuenta por cobrar'\nActive: activo\nTrial: 'de prueba'\nNext: Próximo\nPrevious: Previo\nTranslate: Traducir\nView: Ver\n'Scheduled Publishing': 'Publicación programada'\nTime: Hora\nAction: Acción\n'Schedule a new action': 'Programar nueva acción'\n'Scheduling a new publish action': 'Programar una nueva acción de publicación'\n'Delete scheduled publish action': 'Eliminar acción de publicación programada'\nDate/Time: Fecha/Tiempo\n'You must select an action.': 'Debe seleccionar una acción.'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'No tiene privilegios para programar ediciones o artículos para publicación automática.'\n'Front page': Portada\n'Section page': 'Página de sección'\n'Show on front page': 'Mostrar en portada'\n'Remove from front page': 'Remover de portada'\n'Show on section page': 'Mostrar en página de sección'\n'Remove from section page': 'Eliminar de página de sección'\nActions: Acciones\nPublishing: Publicar\nShow: Mostrar\nRemove: Eliminar\n'Article Types': 'Tipo Artículo'\n'Staff User Types': 'Tipos de usuario del equipo'\nPublications: Publicaciones\nIssues: Ediciones\nSections: Secciones\nArticles: Artículos\nImages: Imágenes\nChange: Cambiar\n'Add new issue': 'Agregar nueva edición'\n'Section Template': 'Template de sección'\n'Article Template': 'Template de artículo'\n'Default Language': 'Idioma Inicial'\n'Paid Period': 'Período de Pago'\nPreview: 'Vista previa'\n'You must fill in the $1 field.': 'Debe completar el campo $1'\nError: Error\n'Invalid input: $1': 'Entrada inválida:  $1'\n'Language does not exist.': 'Este idioma no existe.'\n'Publication does not exist.': 'No existe publicación'\n'Issue does not exist.': 'Esta edición no existe.'\n'You must select a language.': 'Debe seleccionar un idioma'\n'Section does not exist.': 'Esta sección no existe.'\n'No articles.': 'Sin articulos'\n'Article does not exist.': 'Este artículo no existe.'\n'Image does not exist.': 'Esta imagen no existe.'\n'Access denied': 'Acceso denegado'\n'Invalid parameters received': 'Los parametros recibidos son invalidos'\n'Add new article': 'Agregar nuevo articulo'\nStatus: Estatus\nPublished: Publicado\n'Not published': 'No publicado'\nSubmitted: Enviado\nNew: Nuevo\nArticle: Artículo\nPublish: Publicar\nUnpublish: 'No publicar'\nUnlock: Desbloquear\nUploaded: Subido\nYYYY-MM-DD: AAAA-MM-DD\nSubmit: Enviar\nImage: Imagen\nDescription: Descripción\nPhotographer: Fotógrafo\nPlace: Lugar\nDate: Fecha\nThumbnail: 'Vista en miniatura'\n'In use': 'En uso'\n'Additional searches': 'Búsquedas adicionales'\n'Most Recently Added': 'Recién agregados'\n'Most Recently Modified': 'Recién modificados'\n'$1 images found': 'Se hallaron $1 imágenes'\n'Reset search conditions': 'Reiniciar las condiciones de búsqueda'\n'Image number': 'Número de imagen'\nUsers: Usuarios\nLocalizer: Traductor\n'Adding new translation': 'Agregar nueva traducción'\n'No more languages.': 'No más idiomas'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'El campo $1 sólo puede contener letras, dígitos y guión mayor (_).'\n'Add new publication': 'Agregar nueva publicación'\n'Upload new template': 'Subir nuevo template'\n'Add new staff member': 'Agregar nuevo miembro del equipo'\n'Staff member deleted.': 'Miembro del equipo eliminado.'\n'Add new subscriber': 'Agregar nuevo suscriptor'\n'Add new user type': 'Agregar nuevo tipo de usuario'\n'Add new article type': 'Agregar nuevo tipo de artículo'\n'Add new country': 'Agregar nuevo país'\n'Add new language': 'Agregar nuevo idioma'\n'View logs': 'Ver historial'\n'Change your password': 'Cambiar su clave'\n'Your Articles': 'Sus artículos'\n'Submitted Articles': 'Artículos enviados'\nLogs: Historial\n'There are $1 article(s) left.': 'Hay $1 artículo(s) pendiente(s)'\n'There are $1 issues(s) left.': 'Queda(n) $1 ejemplar(es).'\n'There are $1 section(s) left.': 'Hay $1 seccion(es) pendiente(s)'\n'There are $1 publication(s) left.': 'Hay $1 publicación(es) pendiente(s)'\n'There are $1 countries left.': 'Hay $1 país(es) pendiente(s)'\n'Name <SMALL>(click to edit)</SMALL>': 'Nombre <SMALL>(presione para editar)</SMALL>'\n'Add new subscription': 'Agregar nueva suscripción'\n'You do not have the right to add subscriptions.': 'No tiene derecho de acceso para agregar suscripciones'\n'Adding subscription': 'Agregar suscripciones'\n'Delete subscription': 'Borrar suscripción'\n'You do not have the right to delete subscriptions.': 'No tiene derecho a borrar suscripciones'\n'No such subscription.': 'No existe suscripción'\nYes: Si\nNo: No\nClose: Cerrar\n'No issues.': 'Sin edición'\n'Back to Edit Article': 'Volver a Editar el artículo'\n'No topics': 'Sin temas'\n'You do not have the right to add articles.': 'No tiene derechos para agregar artículos'\nStart: Inicio\nDays: Dias\n'The sections could not be added successfully. Some of them were already added !': 'Las secciones no pudieron ser agregadas con éxito. Algunas de ellas fueron ya agregadas!'\n'Add another': 'Agregar otro'\nCancel: Cancelar\nDone: Hecho\nOK: OK\nSave: Guardar\nSearch: Buscar\n'Make a selection': Seleccionar\n'You must input a number greater than 0 into the $1 field.': 'Debe ingresar un número mayor que 0 dentro del campo $1'\n'You must input a valid date.': 'Debe ingresar una fecha válida.'\n'Add new field': 'Agregar nuevo campo'\n'Article automatic publishing schedule': 'Programación de publicación automática del artículo'\n'Are you sure you want to delete this scheduled action?': '¿Está seguro de querer eliminar esta acción programada?'\nUnlink: Desenlazar\n'Are you sure you want to delete the image $1?': '¿Está seguro de querer eliminar la imagen $1?'\n'No such issue.': 'No existe edición'\n'Are you sure you want to delete the subscription to the publication $1?': '¿Está seguro de querer eliminar la suscripción a la publicación $1?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': '¿No fue posible guardar los cambios realizados a la edición $1.  Por favor asegúrese que el nombre del URL de la edición $2 no fue utilizado antes en la publicación $3. '\nGB: GB\nMB: MB\nKB: KB\nbytes: bytes\nAttach: Adjunto\nBack: Regresar\nFile: Archivo\n'Save and Close': 'Guardar y cerrar'\nAdd: Añadir\n'Select All': 'Seleccionar todo'\n'Select None': 'Nada seleccionado'\n'Add Event': 'Agregar evento'\nN/A: 'No disponible'\n'On Front Page': 'En portada'\n'On Section Page': 'En página de sección'\n'Created by': 'Creador por'\n'Creation date': 'Fecha de creación'\n'Publication List': 'Lista de publicaciones'\n'Issue List': 'Lista de ediciones'\n'Section List': 'Lista de secciones'\nAll: Todo\nduplicate: duplicar\nmove: mover\nMove: Mover\n'From:': 'De:'\n'Date:': 'Fecha:'\nHidden: Oculto\nComments: Comentarios\nComment: Comentario\nApproved: Aprobado\nSubject: Título\n'IP address:': 'Dirección de IP:'\n'Email:': 'Dirección de correo electrónico:'\nAuthor: Autor\n'Article name': 'Nombre del artículo'\n'Hide article': 'Artículo oculto'\n'Show article': 'Mostrar artículo'\n'Article Type Fields': 'Campos de tipo de artículo'\n'Article Images': 'Imágenes del artículo'\n'Log Messages': 'Mensajes de log'\n'Article Files': 'Campos del artículo'\n'Article Comments': 'Comentarios del artículo'\n'Are you sure you want to deactivate the subscription?': '¿Está seguro de querer desactivar la suscripción?'\n'Are you sure you want to activate the subscription?': '¿Está seguro de querer activar la suscripción?'\nOther: Otro\n'Time:': 'Hora:'\n'No events.': 'Sin eventos.'\n'Default templates': 'Plantillas por default'\n'System Preferences': 'Preferencias de sistema'\n'The date must be in the future.': 'La fecha debe estar en el futuro.'\nSend: Enviar\n'Thank you.': Gracias\n'Please take a minute to send us an email.': 'Por favor tome un minuto para enviarnos un mensaje de correo.'\n(optional): (opcional)\n'The URL you entered is invalid: $1': 'El URL que ingresó es inválido: $1'\nReads: Impresiones\n'Publish with issue': 'Publicar con edición'\n'Universal List': 'Lista universal'\n'Invalid security token!': 'Pase de seguridad inválido'\nAuthors: Autores\nTitle: Tìtulo\n'Edit country': 'Editar país'\n'Entry $1 prepared for publishing': 'La entrada $1 está preparada para publicarse'\n'Entry deleted': 'Entrada eliminada'\n'Feed saved': 'Suministro guardado'\n'Item published': 'Ítem publicado'\n'Settings saved': 'Configuración guardada'\n'Self-delete is not permitted.': 'Auto eliminarse no está permitido'\n'Edit staff member $1': 'Editar al miembro del equipo $1'\n'Delete staff member $1': 'Eliminar al miembro del equipo $1'\n'Could not save user $1. Please make sure it does not already exist': 'No fue posible guardar el usuario $1. Por favor, asegúrese de que no sea uno ya existente.'\n'Could not save user with e-mail address $1. Please make sure it does not already exist': 'No pudo grabarse el usuario con la dirección de email $1. Por favor, asegúrese de que no sea uno ya existente'\n'Changing user type would prevent you to manage users. Aborted.': 'Cambiar el tipo de usuario provocaría que usted ya no pueda administrar usuarios. Abortado.'\n'Staff member saved.': 'Miembro del equipo guardado'\n'Permissions: $1': 'Permisos: $1'\n'Change user account information': 'Cambiar la información de la cuenta de usuario'\n'Staff management': 'Administración del personal'\nUpdated: Actualizado\nOptions: Opciones\nVerified: Verificado\nConfirm: Confirmar\nat: en\npublished: publicado\nunpublished: 'No publicado'\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.es_AR.yml",
    "content": "Plugins: null\n'Manage Plugins': 'Administrar Plugins'\nAccount: null\n'Items per page': null\n'Add new': null\nHome: null\nLogout: null\nMore...: null\nContent: null\nLanguages: null\nCountries: null\nThemes: null\nTopics: null\nConfigure: null\n'Image Archive': null\n'Add Article': null\nFields: null\nDelete: null\nType: null\nName: null\nCode: null\nEdit: null\nLogin: null\nPassword: null\nSite: null\nPath: null\n'Go up': null\nURL: null\nOrder: null\nHide: null\nDuplicate: null\nSubscription: null\nexpires: null\nstarts: null\nbefore: null\nafter: null\non: null\nstatus: null\nactive: null\ninactive: null\nSubscribers: null\nStaff: null\n'Select destination': null\n'No languages': null\n'---Select language---': null\n'No publications': null\n'---Select publication---': null\n'No issues': null\n'---Select issue---': null\n'No sections': null\n'---Select section---': null\nLanguage: null\nCountry: null\n'Account name': null\nPublication: null\n'Default language': null\nSubscriptions: null\nIssue: null\nNumber: null\nSection: null\nKeywords: null\nTopic: null\n'URL Name': null\n'Left to pay': null\nActive: null\nTrial: null\nNext: null\nPrevious: null\nTranslate: null\nView: null\n'Scheduled Publishing': null\nTime: null\nAction: null\n'Schedule a new action': null\n'Scheduling a new publish action': null\n'Delete scheduled publish action': null\nDate/Time: null\n'You must select an action.': null\n'You do not have the right to schedule issues or articles for automatic publishing.': null\n'Front page': null\n'Section page': null\n'Show on front page': null\n'Remove from front page': null\n'Show on section page': null\n'Remove from section page': null\nActions: null\nPublishing: null\nShow: null\nRemove: null\n'Article Types': null\n'Staff User Types': null\nPublications: null\nIssues: null\nSections: null\nArticles: null\nImages: null\nChange: null\n'Add new issue': null\n'Section Template': null\n'Article Template': null\n'Default Language': null\n'Paid Period': null\nPreview: null\n'You must fill in the $1 field.': null\nError: null\n'Invalid input: $1': null\n'Language does not exist.': null\n'Publication does not exist.': null\n'Issue does not exist.': null\n'You must select a language.': null\n'Section does not exist.': null\n'No articles.': null\n'Article does not exist.': null\n'Image does not exist.': null\n'Access denied': null\n'Invalid parameters received': null\n'Add new article': null\nStatus: null\nPublished: null\n'Not published': null\nSubmitted: null\nNew: null\nArticle: null\nPublish: null\nUnpublish: null\nUnlock: null\nUploaded: null\nYYYY-MM-DD: null\nSubmit: null\nImage: null\nDescription: null\nPhotographer: null\nPlace: null\nDate: null\nThumbnail: null\n'In use': null\n'Additional searches': null\n'Most Recently Added': null\n'Most Recently Modified': null\n'$1 images found': null\n'Reset search conditions': null\n'Image number': null\nUsers: null\nLocalizer: null\n'Adding new translation': null\n'No more languages.': null\n'The $1 field may only contain letters, digits and underscore (_) character.': null\n'Add new publication': null\n'Upload new template': null\n'Add new staff member': null\n'Staff member deleted.': null\n'Add new subscriber': null\n'Add new user type': null\n'Add new article type': null\n'Add new country': null\n'Add new language': null\n'View logs': null\n'Change your password': null\n'Your Articles': null\n'Submitted Articles': null\nLogs: null\n'There are $1 article(s) left.': null\n'There are $1 issues(s) left.': null\n'There are $1 section(s) left.': null\n'There are $1 publication(s) left.': null\n'There are $1 countries left.': null\n'Name <SMALL>(click to edit)</SMALL>': null\n'Add new subscription': null\n'You do not have the right to add subscriptions.': null\n'Adding subscription': null\n'Delete subscription': null\n'You do not have the right to delete subscriptions.': null\n'No such subscription.': null\nYes: null\nNo: null\nClose: null\n'No issues.': null\n'Back to Edit Article': null\n'No topics': null\n'You do not have the right to add articles.': null\nStart: null\nDays: null\n'The sections could not be added successfully. Some of them were already added !': null\n'Add another': null\nCancel: null\nDone: null\nOK: null\nSave: null\nSearch: null\n'Make a selection': null\n'You must input a number greater than 0 into the $1 field.': null\n'You must input a valid date.': null\n'Add new field': null\n'Article automatic publishing schedule': null\n'Are you sure you want to delete this scheduled action?': null\nUnlink: null\n'Are you sure you want to delete the image $1?': null\n'No such issue.': null\n'Are you sure you want to delete the subscription to the publication $1?': null\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': null\nGB: null\nMB: null\nKB: null\nbytes: null\nAttach: null\nBack: null\nFile: null\n'Save and Close': null\nAdd: null\n'Select All': null\n'Select None': null\n'Add Event': null\nN/A: null\n'On Front Page': null\n'On Section Page': null\n'Created by': null\n'Creation date': null\n'Publication List': null\n'Issue List': null\n'Section List': null\nAll: null\nduplicate: null\nmove: null\nMove: null\n'From:': null\n'Date:': null\nHidden: null\nComments: null\nComment: null\nApproved: null\nSubject: null\n'IP address:': null\n'Email:': null\nAuthor: null\n'Article name': null\n'Hide article': null\n'Show article': null\n'Article Type Fields': null\n'Article Images': null\n'Log Messages': null\n'Article Files': null\n'Article Comments': null\n'Are you sure you want to deactivate the subscription?': null\n'Are you sure you want to activate the subscription?': null\nOther: null\n'Time:': null\n'No events.': null\n'Default templates': null\n'System Preferences': null\n'The date must be in the future.': null\nSend: null\n'Thank you.': null\n'Please take a minute to send us an email.': null\n(optional): null\n'The URL you entered is invalid: $1': null\nReads: null\n'Publish with issue': 'Publicar con edición'\n'Universal List': null\n'Invalid security token!': null\nAuthors: null\nTitle: Título\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.fa.yml",
    "content": "Plugins: null\n'Manage Plugins': null\nAccount: null\n'Items per page': null\n'Add new': null\nHome: null\nLogout: null\nMore...: null\nContent: null\nLanguages: null\nCountries: null\nThemes: null\nTopics: null\nConfigure: null\n'Image Archive': null\n'Add Article': null\nFields: null\nDelete: null\nType: null\nName: null\nCode: null\nEdit: null\nLogin: null\nPassword: null\nSite: null\nPath: null\n'Go up': null\nURL: null\nOrder: null\nHide: null\nDuplicate: null\nSubscription: null\nexpires: null\nstarts: null\nbefore: null\nafter: null\non: null\nstatus: null\nactive: null\ninactive: null\nSubscribers: null\nStaff: null\n'Select destination': null\n'No languages': null\n'---Select language---': null\n'No publications': null\n'---Select publication---': null\n'No issues': null\n'---Select issue---': null\n'No sections': null\n'---Select section---': null\nLanguage: null\nCountry: null\n'Account name': null\nPublication: null\n'Default language': null\nSubscriptions: null\nIssue: null\nNumber: null\nSection: null\nKeywords: null\nTopic: null\n'URL Name': null\n'Left to pay': null\nActive: null\nTrial: null\nNext: null\nPrevious: null\nTranslate: null\nView: null\n'Scheduled Publishing': null\nTime: null\nAction: null\n'Schedule a new action': null\n'Scheduling a new publish action': null\n'Delete scheduled publish action': null\nDate/Time: null\n'You must select an action.': null\n'You do not have the right to schedule issues or articles for automatic publishing.': null\n'Front page': null\n'Section page': null\n'Show on front page': null\n'Remove from front page': null\n'Show on section page': null\n'Remove from section page': null\nActions: null\nPublishing: null\nShow: null\nRemove: null\n'Article Types': null\n'Staff User Types': null\nPublications: null\nIssues: null\nSections: null\nArticles: null\nImages: null\nChange: null\n'Add new issue': null\n'Section Template': null\n'Article Template': null\n'Default Language': null\n'Paid Period': null\nPreview: null\n'You must fill in the $1 field.': null\nError: null\n'Invalid input: $1': null\n'Language does not exist.': null\n'Publication does not exist.': null\n'Issue does not exist.': null\n'You must select a language.': null\n'Section does not exist.': null\n'No articles.': null\n'Article does not exist.': null\n'Image does not exist.': null\n'Access denied': null\n'Invalid parameters received': null\n'Add new article': null\nStatus: null\nPublished: null\n'Not published': null\nSubmitted: null\nNew: null\nArticle: null\nPublish: null\nUnpublish: null\nUnlock: null\nUploaded: null\nYYYY-MM-DD: null\nSubmit: null\nImage: null\nDescription: null\nPhotographer: null\nPlace: null\nDate: null\nThumbnail: null\n'In use': null\n'Additional searches': null\n'Most Recently Added': null\n'Most Recently Modified': null\n'$1 images found': null\n'Reset search conditions': null\n'Image number': null\nUsers: null\nLocalizer: null\n'Adding new translation': null\n'No more languages.': null\n'The $1 field may only contain letters, digits and underscore (_) character.': null\n'Add new publication': null\n'Upload new template': null\n'Add new staff member': null\n'Staff member deleted.': null\n'Add new subscriber': null\n'Add new user type': null\n'Add new article type': null\n'Add new country': null\n'Add new language': null\n'View logs': null\n'Change your password': null\n'Your Articles': null\n'Submitted Articles': null\nLogs: null\n'There are $1 article(s) left.': null\n'There are $1 issues(s) left.': null\n'There are $1 section(s) left.': null\n'There are $1 publication(s) left.': null\n'There are $1 countries left.': null\n'Name <SMALL>(click to edit)</SMALL>': null\n'Add new subscription': null\n'You do not have the right to add subscriptions.': null\n'Adding subscription': null\n'Delete subscription': null\n'You do not have the right to delete subscriptions.': null\n'No such subscription.': null\nYes: null\nNo: null\nClose: null\n'No issues.': null\n'Back to Edit Article': null\n'No topics': null\n'You do not have the right to add articles.': null\nStart: null\nDays: null\n'The sections could not be added successfully. Some of them were already added !': null\n'Add another': null\nCancel: null\nDone: null\nOK: null\nSave: null\nSearch: null\n'Make a selection': null\n'You must input a number greater than 0 into the $1 field.': null\n'You must input a valid date.': null\n'Add new field': null\n'Article automatic publishing schedule': null\n'Are you sure you want to delete this scheduled action?': null\nUnlink: null\n'Are you sure you want to delete the image $1?': null\n'No such issue.': null\n'Are you sure you want to delete the subscription to the publication $1?': null\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': null\nGB: null\nMB: null\nKB: null\nbytes: null\nAttach: null\nBack: null\nFile: null\n'Save and Close': null\nAdd: null\n'Select All': null\n'Select None': null\n'Add Event': null\nN/A: null\n'On Front Page': null\n'On Section Page': null\n'Created by': null\n'Creation date': null\n'Publication List': null\n'Issue List': null\n'Section List': null\nAll: null\nduplicate: null\nmove: null\nMove: null\n'From:': null\n'Date:': null\nHidden: null\nComments: null\nComment: null\nApproved: null\nSubject: null\n'IP address:': null\n'Email:': null\nAuthor: null\n'Article name': null\n'Hide article': null\n'Show article': null\n'Article Type Fields': null\n'Article Images': null\n'Log Messages': null\n'Article Files': null\n'Article Comments': null\n'Are you sure you want to deactivate the subscription?': null\n'Are you sure you want to activate the subscription?': null\nOther: null\n'Time:': null\n'No events.': null\n'Default templates': null\n'System Preferences': null\n'The date must be in the future.': null\nSend: null\n'Thank you.': null\n'Please take a minute to send us an email.': null\n(optional): null\n'The URL you entered is invalid: $1': null\nReads: null\n'Publish with issue': null\n'Universal List': null\n'Invalid security token!': null\nAuthors: null\nTitle: null\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.fa_AF.yml",
    "content": "Plugins: null\n'Manage Plugins': null\nAccount: null\n'Items per page': null\n'Add new': null\nHome: null\nLogout: null\nMore...: null\nContent: null\nLanguages: null\nCountries: null\nThemes: null\nTopics: null\nConfigure: null\n'Image Archive': null\n'Add Article': null\nFields: null\nDelete: null\nType: null\nName: null\nCode: null\nEdit: null\nLogin: null\nPassword: null\nSite: null\nPath: null\n'Go up': null\nURL: null\nOrder: null\nHide: null\nDuplicate: null\nSubscription: null\nexpires: null\nstarts: null\nbefore: null\nafter: null\non: null\nstatus: null\nactive: null\ninactive: null\nSubscribers: null\nStaff: null\n'Select destination': null\n'No languages': null\n'---Select language---': null\n'No publications': null\n'---Select publication---': null\n'No issues': null\n'---Select issue---': null\n'No sections': null\n'---Select section---': null\nLanguage: null\nCountry: null\n'Account name': null\nPublication: null\n'Default language': null\nSubscriptions: null\nIssue: null\nNumber: null\nSection: null\nKeywords: null\nTopic: null\n'URL Name': null\n'Left to pay': null\nActive: null\nTrial: null\nNext: null\nPrevious: null\nTranslate: null\nView: null\n'Scheduled Publishing': null\nTime: null\nAction: null\n'Schedule a new action': null\n'Scheduling a new publish action': null\n'Delete scheduled publish action': null\nDate/Time: null\n'You must select an action.': null\n'You do not have the right to schedule issues or articles for automatic publishing.': null\n'Front page': null\n'Section page': null\n'Show on front page': null\n'Remove from front page': null\n'Show on section page': null\n'Remove from section page': null\nActions: null\nPublishing: null\nShow: null\nRemove: null\n'Article Types': null\n'Staff User Types': null\nPublications: null\nIssues: null\nSections: null\nArticles: null\nImages: null\nChange: null\n'Add new issue': null\n'Section Template': null\n'Article Template': null\n'Default Language': null\n'Paid Period': null\nPreview: null\n'You must fill in the $1 field.': null\nError: null\n'Invalid input: $1': null\n'Language does not exist.': null\n'Publication does not exist.': null\n'Issue does not exist.': null\n'You must select a language.': null\n'Section does not exist.': null\n'No articles.': null\n'Article does not exist.': null\n'Image does not exist.': null\n'Access denied': null\n'Invalid parameters received': null\n'Add new article': null\nStatus: null\nPublished: null\n'Not published': null\nSubmitted: null\nNew: null\nArticle: null\nPublish: null\nUnpublish: null\nUnlock: null\nUploaded: null\nYYYY-MM-DD: null\nSubmit: null\nImage: null\nDescription: null\nPhotographer: null\nPlace: null\nDate: null\nThumbnail: null\n'In use': null\n'Additional searches': null\n'Most Recently Added': null\n'Most Recently Modified': null\n'$1 images found': null\n'Reset search conditions': null\n'Image number': null\nUsers: null\nLocalizer: null\n'Adding new translation': null\n'No more languages.': null\n'The $1 field may only contain letters, digits and underscore (_) character.': null\n'Add new publication': null\n'Upload new template': null\n'Add new staff member': null\n'Staff member deleted.': null\n'Add new subscriber': null\n'Add new user type': null\n'Add new article type': null\n'Add new country': null\n'Add new language': null\n'View logs': null\n'Change your password': null\n'Your Articles': null\n'Submitted Articles': null\nLogs: null\n'There are $1 article(s) left.': null\n'There are $1 issues(s) left.': null\n'There are $1 section(s) left.': null\n'There are $1 publication(s) left.': null\n'There are $1 countries left.': null\n'Name <SMALL>(click to edit)</SMALL>': null\n'Add new subscription': null\n'You do not have the right to add subscriptions.': null\n'Adding subscription': null\n'Delete subscription': null\n'You do not have the right to delete subscriptions.': null\n'No such subscription.': null\nYes: null\nNo: null\nClose: null\n'No issues.': null\n'Back to Edit Article': null\n'No topics': null\n'You do not have the right to add articles.': null\nStart: null\nDays: null\n'The sections could not be added successfully. Some of them were already added !': null\n'Add another': null\nCancel: null\nDone: null\nOK: null\nSave: null\nSearch: null\n'Make a selection': null\n'You must input a number greater than 0 into the $1 field.': null\n'You must input a valid date.': null\n'Add new field': null\n'Article automatic publishing schedule': null\n'Are you sure you want to delete this scheduled action?': null\nUnlink: null\n'Are you sure you want to delete the image $1?': null\n'No such issue.': null\n'Are you sure you want to delete the subscription to the publication $1?': null\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': null\nGB: null\nMB: null\nKB: null\nbytes: null\nAttach: null\nBack: null\nFile: null\n'Save and Close': null\nAdd: null\n'Select All': null\n'Select None': null\n'Add Event': null\nN/A: null\n'On Front Page': null\n'On Section Page': null\n'Created by': null\n'Creation date': null\n'Publication List': null\n'Issue List': null\n'Section List': null\nAll: null\nduplicate: null\nmove: null\nMove: null\n'From:': null\n'Date:': null\nHidden: null\nComments: null\nComment: null\nApproved: null\nSubject: null\n'IP address:': null\n'Email:': null\nAuthor: null\n'Article name': null\n'Hide article': null\n'Show article': null\n'Article Type Fields': null\n'Article Images': null\n'Log Messages': null\n'Article Files': null\n'Article Comments': null\n'Are you sure you want to deactivate the subscription?': null\n'Are you sure you want to activate the subscription?': null\nOther: null\n'Time:': null\n'No events.': null\n'Default templates': null\n'System Preferences': null\n'The date must be in the future.': null\nSend: null\n'Thank you.': null\n'Please take a minute to send us an email.': null\n(optional): null\n'The URL you entered is invalid: $1': null\nReads: null\n'Publish with issue': null\n'Universal List': null\n'Invalid security token!': null\nAuthors: null\nTitle: null\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.fr.yml",
    "content": "Plugins: null\n'Manage Plugins': null\nAccount: Compte\n'Items per page': 'Articles par page'\n'Add new': Nouveau\nHome: Accueil\nLogout: Deconnecter\nMore...: Plus...\nContent: Contenu\nLanguages: Langues\nCountries: Pays\nThemes: Templates\nTopics: Sujets\nConfigure: Configurer\n'Image Archive': 'Archive dimage'\n'Add Article': 'Nouvel Article'\nFields: Champs\nDelete: Supprimer\nType: Type\nName: Nom\nCode: Code\nEdit: Editer\nLogin: Connexion\nPassword: 'Mot de passe'\nSite: Site\nPath: Chemin\n'Go up': Monter\nURL: URL\nOrder: Ordre\nHide: Cacher\nDuplicate: Dupliquer\nSubscription: Abonnement\nexpires: expire\nstarts: Commence\nbefore: avant\nafter: après\non: sur\nstatus: statut\nactive: actif\ninactive: inactif\nSubscribers: Abonnés\nStaff: Staff\n'Select destination': 'choisir destination'\n'No languages': 'Aucune langue'\n'---Select language---': '---choisir langue---'\n'No publications': 'Aucune publication'\n'---Select publication---': '---Choisir publication---'\n'No issues': 'Aucun article'\n'---Select issue---': '---Choisir article---'\n'No sections': 'Aucune section'\n'---Select section---': '---Choisir section---'\nLanguage: Langue\nCountry: Pays\n'Account name': 'Nom de Compte'\nPublication: Publication\n'Default language': 'Langage par défaut'\nSubscriptions: Abonnements\nIssue: Edition\nNumber: Numero\nSection: Section\nKeywords: 'Mots clés'\nTopic: Sujet\n'URL Name': 'Nom URL'\n'Left to pay': 'Reste à payer'\nActive: Actif\nTrial: Essai\nNext: Suivant\nPrevious: Précédent\nTranslate: Traduire\nView: Afficher\n'Scheduled Publishing': 'Publication planifiée'\nTime: Heure\nAction: Action\n'Schedule a new action': 'Planifier une nouvelle action'\n'Scheduling a new publish action': 'Planifier une nouvelle action de publication'\n'Delete scheduled publish action': 'Supprimer une action planifiée de publication'\nDate/Time: Date/Heure\n'You must select an action.': 'Vous devez choisir une action'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'Vous navez pas la permission de planifier des éditions ou articles  pour publication automatique.'\n'Front page': 'Page daccueil'\n'Section page': 'Page de Section'\n'Show on front page': 'Afficher sur la page daccueil'\n'Remove from front page': 'Enlever de la page daccueil'\n'Show on section page': 'Afficher sur la page de section'\n'Remove from section page': 'Enlever de la page de section'\nActions: Actions\nPublishing: Publication\nShow: Afficher\nRemove: Enlever\n'Article Types': 'Types darticles'\n'Staff User Types': 'Types Utilsateur Staff'\nPublications: Publications\nIssues: Editions\nSections: Sections\nArticles: Articles\nImages: Images\nChange: Modifier\n'Add new issue': 'Ajouter nouvelle édition'\n'Section Template': 'Template de Section'\n'Article Template': 'Template dArticle'\n'Default Language': 'Langage par Défaut'\n'Paid Period': 'Période payée'\nPreview: Visualiser\n'You must fill in the $1 field.': 'Vous devez remplir le champ $1.'\nError: Erreur\n'Invalid input: $1': 'Entrée invalide: $1'\n'Language does not exist.': 'La langue nexiste pas.'\n'Publication does not exist.': 'La publication nexiste pas.'\n'Issue does not exist.': 'Lédition nexiste pas.'\n'You must select a language.': 'Vous devez choisir une langue'\n'Section does not exist.': 'La section nexiste pas'\n'No articles.': 'Aucun article.'\n'Article does not exist.': 'Larticle nexiste pas'\n'Image does not exist.': 'Limage nexiste pas'\n'Access denied': 'Accès refusé'\n'Invalid parameters received': 'Paramètres reçus incorrects'\n'Add new article': 'Nouvel article'\nStatus: Statut\nPublished: Publié\n'Not published': 'Non publié'\nSubmitted: Soumis\nNew: Nouveau\nArticle: Article\nPublish: Publier\nUnpublish: Dépublier\nUnlock: Ouvrir\nUploaded: Téléchargé\nYYYY-MM-DD: (AAAA-MM-JJ)\nSubmit: Soumettre\nImage: Image\nDescription: Description\nPhotographer: Photographe\nPlace: 'Place '\nDate: Date\nThumbnail: Miniature\n'In use': 'En utilisation'\n'Additional searches': 'Recherches Complémentaires'\n'Most Recently Added': 'Plus Récemment Ajoutés'\n'Most Recently Modified': 'Plus Récemment Modifiés'\n'$1 images found': '$1 images trouvées'\n'Reset search conditions': 'Reinitialiser les conditions de recherche'\n'Image number': 'Numero dimage'\nUsers: Utilisateurs\nLocalizer: Traducteur\n'Adding new translation': 'Ajout nouvelle traduction'\n'No more languages.': 'Plus de langues.'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'Le champ $1 peut contenir seulement des lettres, des chiffres et caractère souligné (_). '\n'Add new publication': 'Ajouter nouvelle publication'\n'Upload new template': 'Télécharger un nouveau template'\n'Add new staff member': 'Ajouter un nouveau membre de staff'\n'Staff member deleted.': null\n'Add new subscriber': 'Ajouter nouvel abonné'\n'Add new user type': 'Ajouter nouveau type utlisateur'\n'Add new article type': 'Ajouter nouveau type darticle'\n'Add new country': 'Ajouter nouveau pays'\n'Add new language': 'Ajouter Nouvelle langue'\n'View logs': 'Voir le fichier log'\n'Change your password': 'Changer votre mot de passe'\n'Your Articles': 'Vos articles'\n'Submitted Articles': 'Articles Soumis'\nLogs: Logs\n'There are $1 article(s) left.': 'Il manque $1 article(s).'\n'There are $1 issues(s) left.': 'Il manque $1 édition(s).'\n'There are $1 section(s) left.': 'Il manque $1 section(s).'\n'There are $1 publication(s) left.': 'Il manque $1 publication(s).'\n'There are $1 countries left.': 'Il manque $1 pays.'\n'Name <SMALL>(click to edit)</SMALL>': 'Nom <SMALL>(cliquer pour éditer)</SMALL>'\n'Add new subscription': 'Nouvel abonnement'\n'You do not have the right to add subscriptions.': 'Vous navez pas les droit dajouter des abonnements'\n'Adding subscription': 'Ajout dabonnement'\n'Delete subscription': 'Supprimer abonnement'\n'You do not have the right to delete subscriptions.': 'Vous navez pas le droit de supprimer des abonnements'\n'No such subscription.': 'Pas un tel abonnement.'\nYes: Oui\nNo: Non\nClose: Fermer\n'No issues.': 'Aucune édition.'\n'Back to Edit Article': 'Retour pour Editer lArticle'\n'No topics': 'Aucun sujet'\n'You do not have the right to add articles.': 'Vous navez pas le droit dajouter des articles.'\nStart: Début\nDays: Jours\n'The sections could not be added successfully. Some of them were already added !': 'Les sections ne pouvaient pas être ajoutées avec succès. Certaines dentre ellles ont déjà été ajoutées!'\n'Add another': 'Ajouter un autre'\nCancel: Annuler\nDone: Fait\nOK: OK\nSave: Sauvegarder\nSearch: Recherche\n'Make a selection': 'Faire un choix'\n'You must input a number greater than 0 into the $1 field.': 'Vous devez entrer un nombre plus grand que 0 dans le champ $1.'\n'You must input a valid date.': 'Vous devez entrer une date valable.'\n'Add new field': 'Ajouter un nouveau champ'\n'Article automatic publishing schedule': 'Programme de publication automatique darticles'\n'Are you sure you want to delete this scheduled action?': 'Etes-vous sûr de vouloir supprimer cette action prévue?'\nUnlink: 'Supprimer lien'\n'Are you sure you want to delete the image $1?': 'Etes-vous sûr de vouloir supprimer limage $1?'\n'No such issue.': 'Pas une telle édition.'\n'Are you sure you want to delete the subscription to the publication $1?': 'Etes-vous sûr de vouloir supprimer labonnement à la publication $1?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Ne pouvait pas sauvegarder les changements de lédition $1. SVP assurez-vous  que le nom de lURL dédition $2 na pas été employé auparavant dans la publication $3.'\nGB: GB\nMB: MB\nKB: KB\nbytes: bytes\nAttach: Attacher\nBack: Retour\nFile: Fichier\n'Save and Close': 'Sauvegarder et Fermer'\nAdd: Ajouter\n'Select All': 'Sélectionner tout'\n'Select None': 'Ne rien Sélectionnner'\n'Add Event': 'Ajouter Evénement'\nN/A: N/A\n'On Front Page': 'Sur la Page dAccueil'\n'On Section Page': 'Sur la Page Section'\n'Created by': 'Créé par'\n'Creation date': 'Date de Création'\n'Publication List': 'Liste des publications'\n'Issue List': 'Liste dédition'\n'Section List': 'Liste des Sections'\nAll: Tous\nduplicate: duplicate\nmove: Déplacer\nMove: Déplacer\n'From:': null\n'Date:': null\nHidden: null\nComments: null\nComment: Commentaire\nApproved: Approuvé\nSubject: null\n'IP address:': null\n'Email:': null\nAuthor: null\n'Article name': null\n'Hide article': null\n'Show article': null\n'Article Type Fields': 'Champs de Type dArticle'\n'Article Images': 'Images dArticle '\n'Log Messages': 'Messages Log'\n'Article Files': 'Fichiers d Article'\n'Article Comments': null\n'Are you sure you want to deactivate the subscription?': 'Etes-vous sûr de vouloir désactiver labonnement?'\n'Are you sure you want to activate the subscription?': 'Etes-vous sûr de vouloir activer labonnement?'\nOther: null\n'Time:': null\n'No events.': null\n'Default templates': null\n'System Preferences': null\n'The date must be in the future.': null\nSend: null\n'Thank you.': null\n'Please take a minute to send us an email.': null\n(optional): null\n'The URL you entered is invalid: $1': null\nReads: null\n'Publish with issue': null\n'Universal List': null\n'Invalid security token!': null\nAuthors: null\nTitle: Titre\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.he.yml",
    "content": "Plugins: הרחבות\n'Manage Plugins': 'ניהול הרחבות'\nAccount: חשבון\n'Items per page': 'פריטים לעמוד'\n'Add new': 'הוסף חדש'\nHome: בית\nLogout: יציאה\nMore...: ...עוד\nContent: תוכן\nLanguages: שפות\nCountries: ארצות\nThemes: תבניות\nTopics: נושאים\nConfigure: הגדרות\n'Image Archive': 'ארכיון תמונות'\n'Add Article': 'הוסף כתבה'\nFields: שדות\nDelete: מחק\nType: סוג\nName: שם\nCode: קוד\nEdit: עריכה\nLogin: כניסה\nPassword: סיסמא\nSite: אתר\nPath: נתיב\n'Go up': עלה\nURL: '(URL) כתובת אינטרנט '\nOrder: מיין\nHide: הסתר\nDuplicate: הכפל\nSubscription: מנוי\nexpires: פג-תוקף\nstarts: התחלת\nbefore: לפני\nafter: אחרי\non: פעיל\nstatus: מצב\nactive: פעיל\ninactive: 'לא פעיל'\nSubscribers: מנויים\nStaff: צוות\n'Select destination': 'בחר יעד'\n'No languages': 'אין שפות מוגדרות'\n'---Select language---': 'בחר שפה'\n'No publications': 'אין הוצאות מוגדרות'\n'---Select publication---': 'בחר הוצאה'\n'No issues': 'אין כתבות'\n'---Select issue---': 'בחר כתבה'\n'No sections': 'אין מדורים מוגדרים'\n'---Select section---': 'בחר מדור'\nLanguage: שפה\nCountry: ארץ\n'Account name': 'שם פרופיל'\nPublication: הוצאה\n'Default language': 'שפת ברירת-מחדל'\nSubscriptions: מנויים\nIssue: מהדורה\nNumber: מספר\nSection: מדור\nKeywords: 'מילות מפתח'\nTopic: נושא\n'URL Name': 'שם קישור'\n'Left to pay': 'שארית לתשלום'\nActive: פעיל\nTrial: ניסיון\nNext: הבא\nPrevious: קודם\nTranslate: תרגם\nView: הצג\n'Scheduled Publishing': 'פרסומים מתוזמנים'\nTime: זמן\nAction: פעולה\n'Schedule a new action': 'תזמן פעולה חדשה'\n'Scheduling a new publish action': 'מתזמן פרסום '\n'Delete scheduled publish action': 'מחק פרסום מתוזמן'\nDate/Time: תאריךזמן\n'You must select an action.': 'עלייך לבחור פעולה'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'אין הרשאה לתזמן מהדורה או כתבה לפרסום אוטומטי '\n'Front page': 'דף ראשי'\n'Section page': 'דף מדור'\n'Show on front page': 'הצג בעמוד הראשי'\n'Remove from front page': 'הסר מהעמוד הראשי'\n'Show on section page': 'הראה בדף המדור'\n'Remove from section page': 'הסדר מדף המדור'\nActions: פעילויות\nPublishing: מפרסם\nShow: הראה\nRemove: הסר\n'Article Types': 'סוג כתבה'\n'Staff User Types': 'סוג איש צוות'\nPublications: הוצאות\nIssues: מהדורות\nSections: מדורים\nArticles: כתבות\nImages: תמונות\nChange: שינוי\n'Add new issue': 'הוסף מהדורה חדשה'\n'Section Template': 'תבנית מדור'\n'Article Template': 'תבנית כתבה'\n'Default Language': 'שפת ברירת-מחדל'\n'Paid Period': 'תקופת תשלום'\nPreview: 'תצוגה מקדימה'\n'You must fill in the $1 field.': 'חובה למלא את שדה ה$1'\nError: שגיאה\n'Invalid input: $1': 'נתון לא תקין: $1'\n'Language does not exist.': 'שפה לא קיימת'\n'Publication does not exist.': 'הוצאה לא קיימת'\n'Issue does not exist.': 'מהדורה לא קיימת'\n'You must select a language.': 'חובה לבחור שפה'\n'Section does not exist.': 'מדור לא קיים'\n'No articles.': 'אין כתבות'\n'Article does not exist.': 'כתבה לא קיימת'\n'Image does not exist.': 'תמונה לא קיימת'\n'Access denied': 'כניסה נדחתה'\n'Invalid parameters received': 'פרמטר שגוי'\n'Add new article': 'הוסף כתבה חדשה'\nStatus: מצב\nPublished: פורסם\n'Not published': 'לא פורסם'\nSubmitted: נמסר\nNew: חדש\nArticle: כתבה\nPublish: פרסם\nUnpublish: 'הסר פרסום'\nUnlock: 'בטל נעילה'\nUploaded: נטעןהתקבל\nYYYY-MM-DD: null\nSubmit: נמסר\nImage: תמונה\nDescription: הגדרה\nPhotographer: צלם\nPlace: מקום\nDate: תאריך\nThumbnail: 'תמונה ממוזערת'\n'In use': בשימוש\n'Additional searches': 'חיפושים נוספים'\n'Most Recently Added': 'הוספו לאחרונה'\n'Most Recently Modified': 'שונו לאחרונה'\n'$1 images found': 'תמונות נמצאו $1'\n'Reset search conditions': 'אפס הגדרות חיפוש'\n'Image number': 'מספר תמונה'\nUsers: משתמשים\nLocalizer: 'הגדרות מיקום'\n'Adding new translation': 'הוספת תרגום'\n'No more languages.': 'אין שפות נוספות'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'שדה ה$1 יכול להכיל רק אותיות, ספרות, וקו_תחתי'\n'Add new publication': 'הוסף מהדורה חדשה'\n'Upload new template': 'טעןהוסף תבנית חדשה'\n'Add new staff member': 'צור איש צוות חדש'\n'Staff member deleted.': null\n'Add new subscriber': 'צור מנוי חדש'\n'Add new user type': 'צור סוג משתמש חדש'\n'Add new article type': 'צור סוג כתבה חדש'\n'Add new country': 'הוסף מדינה'\n'Add new language': 'הוסף שפה חדשה'\n'View logs': 'צפה בקובץ הנתונים'\n'Change your password': 'שנה סיסמא'\n'Your Articles': 'הכתבות שלך'\n'Submitted Articles': 'כתבות שהוגשו'\nLogs: נתונים\n'There are $1 article(s) left.': 'יש $1 כתבות נותרות'\n'There are $1 issues(s) left.': 'יש $1 מהדורות נותרות'\n'There are $1 section(s) left.': 'יש $1 מדורים נותרים'\n'There are $1 publication(s) left.': 'יש $1 הוצאות נותרות'\n'There are $1 countries left.': 'יש $1 מדינות נותרות'\n'Name <SMALL>(click to edit)</SMALL>': 'שם <SMALL>(לחץ לעריכה)</SMALL>'\n'Add new subscription': 'הוסף מנוי חדש'\n'You do not have the right to add subscriptions.': 'אין לך הרשאות להוסיף מנויים'\n'Adding subscription': 'מוסיף מנויים'\n'Delete subscription': 'מחק מנוי'\n'You do not have the right to delete subscriptions.': 'אין לך הרשאות למחק מנויים'\n'No such subscription.': 'אין מנויים כאלה'\nYes: כן\nNo: לא\nClose: סגור\n'No issues.': 'אין מהדורות'\n'Back to Edit Article': 'חזרה לעריכת הכתבה'\n'No topics': 'אין נושאים'\n'You do not have the right to add articles.': 'אין לך את ההרשאה להוסיף כתבות'\nStart: התחל\nDays: ימים\n'The sections could not be added successfully. Some of them were already added !': 'המדורים לא הוספו בצורה תקינה. חלק מהם כבר הוספו'\n'Add another': 'הוסף עוד'\nCancel: בטל\nDone: בוצא\nOK: null\nSave: שמור\nSearch: חפש\n'Make a selection': 'בצע בחירה'\n'You must input a number greater than 0 into the $1 field.': 'ערך חייב להיות גדול מ-0 בשדה ה-$1'\n'You must input a valid date.': 'הכנס תאריך עם ערך תקין'\n'Add new field': 'הוסף שדה חדש'\n'Article automatic publishing schedule': 'תזמן פרסום אוטומטי לכתבה'\n'Are you sure you want to delete this scheduled action?': 'האם ברצונך לבטל את הפעולה המתוזמנת'\nUnlink: 'בטל קישור'\n'Are you sure you want to delete the image $1?': 'האם ברצונך לבטל את התמונה$1?1  '\n'No such issue.': 'אין מהדורה כזאת'\n'Are you sure you want to delete the subscription to the publication $1?': '?האם ברצונך לבטל את המנוי להוצאה $1'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'לא ניתן לשמור את השינויים למהדורה $1. בבקשה בדוק שהקישור של הכתבה $2 לא היה בשימוש בעבר בהוצאה $3'\nGB: גיגה-בייט\nMB: מגה-בייט\nKB: קילו-בייט\nbytes: בייט\nAttach: מצורף\nBack: חזור\nFile: קובץ\n'Save and Close': 'שמור וסגור'\nAdd: הוסף\n'Select All': 'בחר הכל'\n'Select None': 'בטל בחירות'\n'Add Event': 'הוסף ארוע'\nN/A: בלתי-זמין\n'On Front Page': 'בעמוד הראשי'\n'On Section Page': 'בדף המדור'\n'Created by': 'נוצר עי'\n'Creation date': 'תאריך יצירה'\n'Publication List': 'רשימת הוצאה'\n'Issue List': 'רשימת מהדורה'\n'Section List': 'רשימת מדור'\nAll: הכל\nduplicate: שכפל\nmove: העבר\nMove: העבר\n'From:': 'מאת:'\n'Date:': 'תאריך:'\nHidden: נסתר\nComments: תגובות\nComment: תגובה\nApproved: מאושר\nSubject: נושא\n'IP address:': ': IP כתובת'\n'Email:': 'דואל:'\nAuthor: כתב\n'Article name': 'שם הכתבה'\n'Hide article': 'הסתר כתבה'\n'Show article': 'הראה כתבה'\n'Article Type Fields': 'שדות סוג כתבה'\n'Article Images': 'תמונות כתבה'\n'Log Messages': 'הודעות (log)'\n'Article Files': 'קבצי כתבה'\n'Article Comments': 'תגובות הכתבה'\n'Are you sure you want to deactivate the subscription?': 'האם ברצונך להשעות את המנוי'\n'Are you sure you want to activate the subscription?': 'האם ברצונך להפעיל את המנוי'\nOther: אחר\n'Time:': זמן\n'No events.': 'אין ארועים.'\n'Default templates': 'תבניות ברירת-המחדל'\n'System Preferences': 'העדפות מערכת'\n'The date must be in the future.': 'התאריך חייב להיות בעתיד'\nSend: שלח\n'Thank you.': תודה\n'Please take a minute to send us an email.': 'בבקשה הקדש רגע לשלוח לנו דואל'\n(optional): '(לא מחוייב)'\n'The URL you entered is invalid: $1': 'כתובת האינטרנט לא תקינה: $11'\nReads: קריאות\n'Publish with issue': 'פרסם עם מהדורה'\n'Universal List': 'רשימה אוניברסלית'\n'Invalid security token!': 'מפתח אבטחה שגוי'\nAuthors: כתבים\nTitle: null\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.hr.yml",
    "content": "Plugins: null\n'Manage Plugins': null\nAccount: Račun\n'Items per page': 'Stavki po strani'\n'Add new': 'Dodaj novi'\nHome: Početna\nLogout: Odjava\nMore...: Više...\nContent: Sadržej\nLanguages: Jezici\nCountries: Zemlje\nThemes: Predlošci\nTopics: Teme\nConfigure: Podešavanje\n'Image Archive': 'Arhiva slika'\n'Add Article': 'Dodaj članak'\nFields: Polja\nDelete: Briši\nType: Vrsta\nName: Ime\nCode: Kod\nEdit: Uredi\nLogin: Prijava\nPassword: Lozinka\nSite: '<i>Site</i>'\nPath: Putanja\n'Go up': Gore\nURL: URL\nOrder: Redosljed\nHide: Sakrij\nDuplicate: Udvostruči\nSubscription: Pretplata\nexpires: istječe\nstarts: počinje\nbefore: prije\nafter: poslije\non: u\nstatus: status\nactive: aktivna\ninactive: neaktivna\nSubscribers: Pretplatnici\nStaff: Suradnici\n'Select destination': 'Označi odredište'\n'No languages': 'Nema jezika'\n'---Select language---': '---Označi jezik---'\n'No publications': 'Nema publikacija'\n'---Select publication---': '---Označi publikaciju---'\n'No issues': 'Nema članaka'\n'---Select issue---': '---Označi članak---'\n'No sections': 'Nema rubrika'\n'---Select section---': '---Označi rubriku'\nLanguage: Jezik\nCountry: Zemlja\n'Account name': 'Ime računa'\nPublication: Publikacija\n'Default language': 'Uobičajeni jezik'\nSubscriptions: Pretplata\nIssue: Izdanje\nNumber: Broj\nSection: Rubrika\nKeywords: 'Ključne riječi'\nTopic: Tema\n'URL Name': 'Ime URL-a'\n'Left to pay': 'Ostalo za platiti'\nActive: Aktivna\nTrial: Proba\nNext: Naprijed\nPrevious: Nazad\nTranslate: Prevedi\nView: Prikaz\n'Scheduled Publishing': 'Automatsko objavljivanje'\nTime: Vrijeme\nAction: Akcija\n'Schedule a new action': 'Zakaži novu radnju'\n'Scheduling a new publish action': 'Zakazivanje nove radnje objavljivanja'\n'Delete scheduled publish action': 'Obriši zakazanu radnju objavljivanja'\nDate/Time: Datum/Vrijeme\n'You must select an action.': 'Morate označiti radnju.'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'Nemate ovlasti zakazivanja izdanja i članaka za automatsko objavljivanje.'\n'Front page': Naslovnica\n'Section page': 'Stranica rubrike'\n'Show on front page': 'Prikaži na naslovnici'\n'Remove from front page': 'Ukloni sa  naslovnice'\n'Show on section page': 'Prikaži na stranici rubrike'\n'Remove from section page': 'Odstrani sa stranice rubrike'\nActions: Radnje\nPublishing: Objavljivanje\nShow: Prikaži\nRemove: Ukloni\n'Article Types': 'Vrste članaka'\n'Staff User Types': 'Vrste suradnika'\nPublications: Publikacije\nIssues: Izdanja\nSections: Rubrike\nArticles: Članci\nImages: Slike\nChange: Izmijeni\n'Add new issue': 'Dodaj novo izdanje'\n'Section Template': 'Predložak rubrike'\n'Article Template': 'Predložak članka'\n'Default Language': 'Uobičajeni jezik'\n'Paid Period': 'Plaćeni period'\nPreview: Pregled\n'You must fill in the $1 field.': 'Morate popuniti $1 polje.'\nError: Greška\n'Invalid input: $1': 'Pogrešan unos: $1'\n'Language does not exist.': 'Nema tog jezika.'\n'Publication does not exist.': 'Nema te publikacije.'\n'Issue does not exist.': 'Nema tog izdanja.'\n'You must select a language.': 'Morate izabrati jezik.'\n'Section does not exist.': 'Nema te rubrike.'\n'No articles.': 'Nema članaka.'\n'Article does not exist.': 'Nema tog članka.'\n'Image does not exist.': 'Nema te slike.'\n'Access denied': 'Zabranjen pristup'\n'Invalid parameters received': 'Primljeni pogrešni parametri'\n'Add new article': 'Dodaj novi članak'\nStatus: Status\nPublished: Objavljen\n'Not published': 'Nije objavljen'\nSubmitted: Predan\nNew: Novi\nArticle: Članak\nPublish: Objavi\nUnpublish: Povuci\nUnlock: Otključaj\nUploaded: Postavljen\nYYYY-MM-DD: GGGG-MM-DD\nSubmit: Predaj\nImage: Slika\nDescription: Opis\nPhotographer: Fotograf\nPlace: Mjesto\nDate: Datum\nThumbnail: Sličica\n'In use': 'U upotrebi'\n'Additional searches': 'Dodatne pretrage'\n'Most Recently Added': 'Zadnji dodaci'\n'Most Recently Modified': 'Zadnje promijene'\n'$1 images found': 'Pronađeno je $1 slika/e'\n'Reset search conditions': 'Poništi uvjete pretraživanja'\n'Image number': 'Broj slike'\nUsers: Korisnici\nLocalizer: Lokalizator\n'Adding new translation': 'Dodavanje novog prijevoda'\n'No more languages.': 'Nema više jezika.'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'Ime polja $1 može sadržavati samo slova, brojeve i znak podvlake (_).'\n'Add new publication': 'Dodaj novu publikaciju'\n'Upload new template': 'Postavi novi predložak'\n'Add new staff member': 'Dodaj novog suradnika'\n'Staff member deleted.': null\n'Add new subscriber': 'Dodaj novog pretplatnika'\n'Add new user type': 'Dodaj novu vrstu korisnika'\n'Add new article type': 'Dodaj novi vrstu članka'\n'Add new country': 'Dodaj novu zemlju'\n'Add new language': 'Dodaj novi jezik'\n'View logs': 'Pogledaj logove'\n'Change your password': 'Promijeni lozinku'\n'Your Articles': 'Tvoji članci'\n'Submitted Articles': 'Predani članci'\nLogs: Logovi\n'There are $1 article(s) left.': 'Ostao(lo) je još $1 članak(a).'\n'There are $1 issues(s) left.': 'Ostalo je još $1 izdanja(e).'\n'There are $1 section(s) left.': 'Ostala(o) je još $1 rubrika(e).'\n'There are $1 publication(s) left.': 'Ostala(o) je još $1 publikacija(e).'\n'There are $1 countries left.': 'Ostala(le) je (su) još $1 zemlja(e).'\n'Name <SMALL>(click to edit)</SMALL>': 'Ime<br><small>(kliknite za uređivanje)</small>'\n'Add new subscription': 'Dodaj novu pretplatu'\n'You do not have the right to add subscriptions.': 'Nemate ovlasti dodavati nove pretplate.'\n'Adding subscription': 'Dodavanje pretplate'\n'Delete subscription': 'Izbriši pretplatu'\n'You do not have the right to delete subscriptions.': 'Nemate ovlasti brisati pretplate.'\n'No such subscription.': 'Nema te pretplate.'\nYes: Da\nNo: Ne\nClose: Zatvori\n'No issues.': 'Nema izdanja.'\n'Back to Edit Article': 'Vratite se na uređivanje članka'\n'No topics': 'Nema tema'\n'You do not have the right to add articles.': 'Nemate ovlasti dodavati članak.'\nStart: Početak\nDays: Dani\n'The sections could not be added successfully. Some of them were already added !': 'Rubrike se ne mogu uspješno dodati. Neke od njih su već dodane!'\n'Add another': 'Dodaj slijedeći'\nCancel: Odustani\nDone: Gotovo\nOK: OK\nSave: Spremi\nSearch: Traži\n'Make a selection': Selektiraj\n'You must input a number greater than 0 into the $1 field.': 'Morate unijeti broj veći od nula u polje $1.'\n'You must input a valid date.': 'Morate unijeti ispravan datum.'\n'Add new field': 'Dodaj novo polje'\n'Article automatic publishing schedule': 'Raspored automatskog objavljivanja članka'\n'Are you sure you want to delete this scheduled action?': 'Jeste li sigurni da želite obrisati zakazanu radnju?'\nUnlink: 'Prekini link'\n'Are you sure you want to delete the image $1?': 'Jeste li sigurni da želite obrisati sliku$1?'\n'No such issue.': 'Nema tog izdanja.'\n'Are you sure you want to delete the subscription to the publication $1?': 'Sigurno želite obrisati pretplatu na publikaciju $1?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Nemoguće je spremiti promjene u izdanju $1. Provjerite da li URL ime izdanja $2 nije upotrebljeno u publikaciji $3.'\nGB: GB\nMB: MB\nKB: KB\nbytes: bytes\nAttach: Zakači\nBack: Nazad\nFile: Datoteka\n'Save and Close': 'Spremi i zatvori'\nAdd: Dodaj\n'Select All': 'Izaberi sve'\n'Select None': 'Izaberi nijedan'\n'Add Event': 'Dodaj događaj'\nN/A: N/A\n'On Front Page': 'Na naslovnici'\n'On Section Page': 'Na stranici rubrike'\n'Created by': 'Kreirao:'\n'Creation date': 'Datum kreiranja'\n'Publication List': 'Lista publikacija'\n'Issue List': 'Lista izdanja'\n'Section List': 'Lista rubrika'\nAll: Sve\nduplicate: udvostruči\nmove: premjesti\nMove: Premjesti\n'From:': null\n'Date:': null\nHidden: null\nComments: null\nComment: null\nApproved: null\nSubject: null\n'IP address:': null\n'Email:': null\nAuthor: null\n'Article name': null\n'Hide article': null\n'Show article': null\n'Article Type Fields': 'Polja tipova članka'\n'Article Images': 'Slike članaka'\n'Log Messages': 'Log poruka'\n'Article Files': 'Datoteke članaka'\n'Article Comments': null\n'Are you sure you want to deactivate the subscription?': 'Sigurno želite prekinuti pretplatu?'\n'Are you sure you want to activate the subscription?': 'Sigurno želite aktivirati pretplatu?'\nOther: null\n'Time:': null\n'No events.': null\n'Default templates': null\n'System Preferences': null\n'The date must be in the future.': null\nSend: null\n'Thank you.': null\n'Please take a minute to send us an email.': null\n(optional): null\n'The URL you entered is invalid: $1': null\nReads: null\n'Publish with issue': null\n'Universal List': null\n'Invalid security token!': null\nAuthors: null\nTitle: null\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.hu.yml",
    "content": "Plugins: Bővítmények\n'Manage Plugins': 'Bővítmények kezelése'\nAccount: Fiók\n'Items per page': 'Elemek oldalanként'\n'Add new': 'Új hozzáadása'\nHome: Kezdőlap\nLogout: Kijelentkezés\nMore...: null\nContent: Tartalom\nLanguages: Nyelvek\nCountries: Országok\nThemes: Témák\nTopics: Cikktémák\nConfigure: Beállítás\n'Image Archive': Képarchívum\n'Add Article': 'Cikk hozzáadása'\nFields: Mezők\nDelete: Törlés\nType: Típus\nName: Név\nCode: Kód\nEdit: Szerkesztés\nLogin: Bejelentkezés\nPassword: Jelszó\nSite: Webhely\nPath: 'Elérési út'\n'Go up': 'Egy szinttel feljebb'\nURL: URL-cím\nOrder: Rendezés\nHide: Elrejtés\nDuplicate: Megkettőzés\nSubscription: Előfizetés\nexpires: lejár\nstarts: kezdődik\nbefore: előtte\nafter: utána\non: null\nstatus: állapot\nactive: aktív\ninactive: inaktív\nSubscribers: Előfizetők\nStaff: Szerkesztőség\n'Select destination': 'Cél kiválasztása'\n'No languages': 'Nincsenek nyelvek'\n'---Select language---': '---Válassz nyelvet---'\n'No publications': 'Nincsenek kiadványok'\n'---Select publication---': '---Válassz kiadványt---'\n'No issues': 'Nincsenek számok'\n'---Select issue---': '---Válassz számot---'\n'No sections': 'Nincsenek rovatok '\n'---Select section---': '---Válassz rovatot---'\nLanguage: Nyelv\nCountry: Ország\n'Account name': Fióknév\nPublication: Kiadvány\n'Default language': 'Alapértelmezett nyelv'\nSubscriptions: Előfizetések\nIssue: Szám\nNumber: Sorszám\nSection: Rovat\nKeywords: Kulcsszavak\nTopic: Téma\n'URL Name': URL-név\n'Left to pay': null\nActive: Aktív\nTrial: null\nNext: Következő\nPrevious: Előző\nTranslate: Fordítás\nView: Megtekintés\n'Scheduled Publishing': 'Beütemezett közzététel'\nTime: Idő\nAction: Művelet\n'Schedule a new action': 'Új művelet beütemezése'\n'Scheduling a new publish action': 'Új közzétételi művelet beütemezése'\n'Delete scheduled publish action': 'Beütemezett közzétételi művelet törlése'\nDate/Time: Dátum/Idő\n'You must select an action.': 'Ki kell választanod egy műveletet.'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'Nincs jogod a számok vagy cikkek automatikus közzétételre való beütemezéséhez.'\n'Front page': Címlap\n'Section page': Rovatlap\n'Show on front page': 'Megjelenítés a címlapon'\n'Remove from front page': 'Eltávolítás a címlapról'\n'Show on section page': 'Megjelenítés a rovatlapon'\n'Remove from section page': 'Eltávolítás a rovatlapról'\nActions: Műveletek\nPublishing: Közzététel\nShow: Megjelenítés\nRemove: Eltávolítás\n'Article Types': Cikktípusok\n'Staff User Types': 'Szerkesztőség felhasználótípusai'\nPublications: Kiadványok\nIssues: Számok\nSections: Rovatok\nArticles: Cikkek\nImages: Képek\nChange: Módosítás\n'Add new issue': 'Új szám hozzáadása'\n'Section Template': Rovatsablon\n'Article Template': Cikksablon\n'Default Language': 'Alapértelmezett nyelv'\n'Paid Period': 'Fizetett időszak'\nPreview: Előnézet\n'You must fill in the $1 field.': 'Ki kell töltened a/z $1 mezőt.'\nError: Hiba\n'Invalid input: $1': 'Érvénytelen bevitel: $1'\n'Language does not exist.': 'A nyelv nem létezik.'\n'Publication does not exist.': 'A kiadvány nem létezik.'\n'Issue does not exist.': 'A szám nem létezik.'\n'You must select a language.': 'Ki kell választanod egy nyelvet.'\n'Section does not exist.': 'A rovat nem létezik.'\n'No articles.': 'Nincsenek cikkek.'\n'Article does not exist.': 'A cikk nem létezik.'\n'Image does not exist.': 'A kép nem létezik.'\n'Access denied': 'Hozzáférés megtagadva'\n'Invalid parameters received': 'Érvénytelen fogadott paraméterek'\n'Add new article': 'Új cikk hozzáadása'\nStatus: Állapot\nPublished: Közzétéve\n'Not published': 'Nincs közzétéve'\nSubmitted: Elküldve\nNew: Új\nArticle: Cikk\nPublish: Közzététel\nUnpublish: Visszavonás\nUnlock: 'Zárolás feloldása'\nUploaded: Feltöltve\nYYYY-MM-DD: ÉÉÉÉ-HH-NN\nSubmit: Küldés\nImage: Kép\nDescription: Leírás\nPhotographer: Fotós\nPlace: Hely\nDate: Dátum\nThumbnail: Bélyegkép\n'In use': Használatban\n'Additional searches': 'További keresések'\n'Most Recently Added': 'Legutóbb hozzáadva'\n'Most Recently Modified': 'Legutóbb módosítva'\n'$1 images found': '$1 kép található'\n'Reset search conditions': 'Keresési feltételek visszaállítása'\n'Image number': null\nUsers: Felhasználók\nLocalizer: Fordító\n'Adding new translation': 'Új fordítás hozzáadása'\n'No more languages.': 'Nincs több nyelv.'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'A/z $1 mező csak betűket, számokat és aláhúzásjelet (_) tartalmazhat.'\n'Add new publication': 'Új kiadvány hozzáadása'\n'Upload new template': 'Új sablon feltöltése'\n'Add new staff member': 'Új szerkesztőségi tag hozzáadása'\n'Staff member deleted.': 'A szerkesztőségi tag törlése megtörtént.'\n'Add new subscriber': 'Új előfizető hozzáadása'\n'Add new user type': 'Új felhasználótípus hozzáadása'\n'Add new article type': 'Új cikktípus hozzáadása'\n'Add new country': 'Új ország hozzáadása'\n'Add new language': 'Új nyelv hozzáadása'\n'View logs': 'Naplók megtekintése'\n'Change your password': 'Jelszó megváltoztatása'\n'Your Articles': 'A cikkeid'\n'Submitted Articles': 'Beküldött cikkek'\nLogs: Naplók\n'There are $1 article(s) left.': '$1 cikk maradt.'\n'There are $1 issues(s) left.': '$1 szám maradt.'\n'There are $1 section(s) left.': '$1 rovat maradt.'\n'There are $1 publication(s) left.': '$1 kiadvány maradt.'\n'There are $1 countries left.': '$1 ország maradt.'\n'Name <SMALL>(click to edit)</SMALL>': 'Név <SMALL>(kattints a szerkesztéshez)</SMALL>'\n'Add new subscription': 'Új előfizetés hozzáadása'\n'You do not have the right to add subscriptions.': 'Nincs jogod az előfizetések hozzáadásához.'\n'Adding subscription': 'Előfizetés hozzáadása'\n'Delete subscription': 'Előfizetés törlése'\n'You do not have the right to delete subscriptions.': 'Nincs jogod az előfizetések törléséhez.'\n'No such subscription.': 'Nincs ilyen előfizetés.'\nYes: Igen\nNo: Nem\nClose: Bezárás\n'No issues.': 'Nincsenek számok.'\n'Back to Edit Article': 'Vissza a Cikk szerkesztéséhez'\n'No topics': 'Nincsenek témák'\n'You do not have the right to add articles.': 'Nincs jogod a cikkek hozzáadásához.'\nStart: Indítás\nDays: Napok\n'The sections could not be added successfully. Some of them were already added !': 'Nem sikerült hozzáadni a rovatokat. Némelyikük hozzáadása már megtörtént!'\n'Add another': 'További hozzáadása'\nCancel: Mégse\nDone: Kész\nOK: OK\nSave: Mentés\nSearch: Keresés\n'Make a selection': 'Kijelölés készítése'\n'You must input a number greater than 0 into the $1 field.': 'A/z $1 mezőben nullánál nagyobb számot kell megadnod.'\n'You must input a valid date.': 'Érvényes dátumot kell megadnod.'\n'Add new field': 'Új mező hozzáadása'\n'Article automatic publishing schedule': 'A cikk automatikus közzétételének beütemezése'\n'Are you sure you want to delete this scheduled action?': 'Biztosan törölni akarod ezt a beütemezett műveletet?'\nUnlink: 'Hivatkozás megszüntetése'\n'Are you sure you want to delete the image $1?': 'Biztosan törölni akarod a/z $1 képet?'\n'No such issue.': 'Nincs ilyen szám.'\n'Are you sure you want to delete the subscription to the publication $1?': 'Biztosan törölni akarod az előfizetést a/z $1 kiadványra?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Nem lehet menteni a/z $1 szám módosításait. Győződj meg róla, hogy a szám $2 URL-nevét nem használták-e korábban a/z $3 kiadványban.'\nGB: GB\nMB: MB\nKB: KB\nbytes: bájt\nAttach: Csatolás\nBack: Vissza\nFile: Fájl\n'Save and Close': 'Mentés és bezárás'\nAdd: Hozzáadás\n'Select All': 'Az összes kijelölése'\n'Select None': 'Kijelölés megszüntetése'\n'Add Event': 'Esemény hozzáadása'\nN/A: N.a.\n'On Front Page': Címlapon\n'On Section Page': Rovatlapon\n'Created by': Létrehozta\n'Creation date': 'Létrehozás dátuma'\n'Publication List': Kiadványlista\n'Issue List': Számlista\n'Section List': Rovatlista\nAll: Mind\nduplicate: null\nmove: áthelyez\nMove: Áthelyezés\n'From:': null\n'Date:': 'Dátum:'\nHidden: Rejtett\nComments: Hozzászólások\nComment: Hozzászólás\nApproved: Jóváhagyva\nSubject: Tárgy\n'IP address:': 'IP-cím:'\n'Email:': 'E-mail:'\nAuthor: Szerző\n'Article name': 'Cikk neve'\n'Hide article': 'Cikk elrejtése'\n'Show article': 'Cikk megjelenítése'\n'Article Type Fields': 'Cikktípus mezők'\n'Article Images': 'Cikk képei'\n'Log Messages': 'Üzenetek naplózása'\n'Article Files': 'Cikk fájljai'\n'Article Comments': 'Cikk hozzászólásai'\n'Are you sure you want to deactivate the subscription?': 'Biztosan inaktiválni akarod az előfizetést?'\n'Are you sure you want to activate the subscription?': 'Biztosan aktiválni akarod az előfizetést?'\nOther: Egyéb\n'Time:': 'Idő:'\n'No events.': 'Nincsenek események.'\n'Default templates': 'Alapértelmezett sablonok'\n'System Preferences': Rendszerbeállítások\n'The date must be in the future.': 'A dátumnak a jövőben kell lennie.'\nSend: Küldés\n'Thank you.': Köszönjük.\n'Please take a minute to send us an email.': 'Kérjük, szánj egy percet arra, hogy e-mailt küldesz nekünk.'\n(optional): (elhagyható)\n'The URL you entered is invalid: $1': 'Az általad megadott URL-cím érvénytelen: $1'\nReads: Olvasások\n'Publish with issue': 'Közzététel folyóiratszámmal'\n'Universal List': 'Univerzális lista'\n'Invalid security token!': 'Érvénytelen biztonsági jogkivonat!'\nAuthors: Szerzők\nTitle: Cím\n'Edit country': 'Ország szerkesztése'\n'Entry $1 prepared for publishing': 'A/z $1 bejegyzés közzétételre előkészítése megtörtént.'\n'Entry deleted': 'A bejegyzés törlése megtörtént.'\n'Feed saved': 'A hírcsatorna mentése megtörtént.'\n'Item published': 'Az elem közzététele megtörtént'\n'Settings saved': 'A beállítások mentése megtörtént.'\n'Self-delete is not permitted.': 'Saját magad törlése nem engedélyezett.'\n'Edit staff member $1': 'A/z $1 nevű szerkesztőségi tag szerkesztése'\n'Delete staff member $1': 'A/z $1 nevű szerkesztőségi tag törlése'\n'Could not save user $1. Please make sure it does not already exist': 'A/z $1 nevű felhasználó nem menthető. Győződj meg róla, hogy nem létezik-e már.'\n'Could not save user with e-mail address $1. Please make sure it does not already exist': 'A/z $1 e-mail címmel rendelkező felhasználó nem menthető. Győződj meg róla, hogy nem létezik-e már.'\n'Changing user type would prevent you to manage users. Aborted.': 'A felhasználótípus módosítása megakadályozná a felhasználók kezelését. Megszakítva.'\n'Staff member saved.': 'A szerkesztőségi tag mentése megtörtént.'\n'Permissions: $1': 'Engedélyek: $1'\n'Change user account information': 'Felhasználói fiók adatainak módosítása'\n'Staff management': 'Szerkesztőség kezelése'\nUpdated: Frissítve\nOptions: Beállítások\nVerified: Ellenőrizve\nConfirm: Megerősítés\nat: null\npublished: közzétéve\nunpublished: visszavonva\nnopermissions: 'A hozzáférés ehhez az erőforrásoz a számodra nem engedélyezett.'\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.hy.yml",
    "content": "Plugins: null\n'Manage Plugins': null\nAccount: null\n'Items per page': null\n'Add new': null\nHome: null\nLogout: null\nMore...: null\nContent: null\nLanguages: null\nCountries: null\nThemes: null\nTopics: null\nConfigure: null\n'Image Archive': null\n'Add Article': null\nFields: null\nDelete: null\nType: null\nName: null\nCode: null\nEdit: null\nLogin: null\nPassword: null\nSite: null\nPath: null\n'Go up': null\nURL: null\nOrder: null\nHide: null\nDuplicate: null\nSubscription: null\nexpires: null\nstarts: null\nbefore: null\nafter: null\non: null\nstatus: null\nactive: null\ninactive: null\nSubscribers: null\nStaff: null\n'Select destination': null\n'No languages': null\n'---Select language---': null\n'No publications': null\n'---Select publication---': null\n'No issues': null\n'---Select issue---': null\n'No sections': null\n'---Select section---': null\nLanguage: null\nCountry: null\n'Account name': null\nPublication: Հրապարակում\n'Default language': null\nSubscriptions: null\nIssue: null\nNumber: null\nSection: null\nKeywords: null\nTopic: null\n'URL Name': null\n'Left to pay': null\nActive: null\nTrial: null\nNext: null\nPrevious: null\nTranslate: null\nView: null\n'Scheduled Publishing': null\nTime: null\nAction: null\n'Schedule a new action': null\n'Scheduling a new publish action': null\n'Delete scheduled publish action': null\nDate/Time: null\n'You must select an action.': null\n'You do not have the right to schedule issues or articles for automatic publishing.': null\n'Front page': null\n'Section page': null\n'Show on front page': null\n'Remove from front page': null\n'Show on section page': null\n'Remove from section page': null\nActions: null\nPublishing: null\nShow: null\nRemove: Հեռացնել\n'Article Types': null\n'Staff User Types': null\nPublications: null\nIssues: null\nSections: null\nArticles: null\nImages: null\nChange: null\n'Add new issue': null\n'Section Template': null\n'Article Template': null\n'Default Language': null\n'Paid Period': null\nPreview: null\n'You must fill in the $1 field.': null\nError: null\n'Invalid input: $1': null\n'Language does not exist.': null\n'Publication does not exist.': null\n'Issue does not exist.': null\n'You must select a language.': null\n'Section does not exist.': null\n'No articles.': null\n'Article does not exist.': null\n'Image does not exist.': null\n'Access denied': null\n'Invalid parameters received': null\n'Add new article': null\nStatus: null\nPublished: null\n'Not published': null\nSubmitted: null\nNew: null\nArticle: null\nPublish: null\nUnpublish: null\nUnlock: null\nUploaded: null\nYYYY-MM-DD: null\nSubmit: null\nImage: null\nDescription: null\nPhotographer: null\nPlace: null\nDate: null\nThumbnail: null\n'In use': null\n'Additional searches': null\n'Most Recently Added': null\n'Most Recently Modified': null\n'$1 images found': null\n'Reset search conditions': null\n'Image number': null\nUsers: null\nLocalizer: null\n'Adding new translation': null\n'No more languages.': null\n'The $1 field may only contain letters, digits and underscore (_) character.': null\n'Add new publication': null\n'Upload new template': null\n'Add new staff member': null\n'Staff member deleted.': null\n'Add new subscriber': null\n'Add new user type': null\n'Add new article type': null\n'Add new country': null\n'Add new language': null\n'View logs': null\n'Change your password': null\n'Your Articles': null\n'Submitted Articles': null\nLogs: null\n'There are $1 article(s) left.': null\n'There are $1 issues(s) left.': null\n'There are $1 section(s) left.': null\n'There are $1 publication(s) left.': null\n'There are $1 countries left.': null\n'Name <SMALL>(click to edit)</SMALL>': null\n'Add new subscription': null\n'You do not have the right to add subscriptions.': null\n'Adding subscription': null\n'Delete subscription': null\n'You do not have the right to delete subscriptions.': null\n'No such subscription.': null\nYes: null\nNo: null\nClose: null\n'No issues.': null\n'Back to Edit Article': null\n'No topics': null\n'You do not have the right to add articles.': null\nStart: null\nDays: null\n'The sections could not be added successfully. Some of them were already added !': null\n'Add another': null\nCancel: null\nDone: null\nOK: null\nSave: Պահպանել\nSearch: null\n'Make a selection': null\n'You must input a number greater than 0 into the $1 field.': null\n'You must input a valid date.': null\n'Add new field': null\n'Article automatic publishing schedule': null\n'Are you sure you want to delete this scheduled action?': null\nUnlink: null\n'Are you sure you want to delete the image $1?': null\n'No such issue.': null\n'Are you sure you want to delete the subscription to the publication $1?': null\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': null\nGB: null\nMB: null\nKB: null\nbytes: null\nAttach: null\nBack: null\nFile: null\n'Save and Close': null\nAdd: null\n'Select All': null\n'Select None': null\n'Add Event': null\nN/A: null\n'On Front Page': null\n'On Section Page': null\n'Created by': null\n'Creation date': null\n'Publication List': null\n'Issue List': null\n'Section List': null\nAll: null\nduplicate: null\nmove: null\nMove: null\n'From:': null\n'Date:': null\nHidden: null\nComments: null\nComment: null\nApproved: null\nSubject: null\n'IP address:': null\n'Email:': null\nAuthor: null\n'Article name': null\n'Hide article': null\n'Show article': null\n'Article Type Fields': null\n'Article Images': null\n'Log Messages': null\n'Article Files': null\n'Article Comments': null\n'Are you sure you want to deactivate the subscription?': null\n'Are you sure you want to activate the subscription?': null\nOther: null\n'Time:': null\n'No events.': null\n'Default templates': null\n'System Preferences': null\n'The date must be in the future.': null\nSend: null\n'Thank you.': null\n'Please take a minute to send us an email.': null\n(optional): null\n'The URL you entered is invalid: $1': null\nReads: null\n'Publish with issue': null\n'Universal List': null\n'Invalid security token!': null\nAuthors: null\nTitle: Վերնագիր\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: 'Important Info'\nanonymous: Anonymous\n'Successfully refreshed authentication token.': 'Successfully refreshed authentication token.'\n'Failed to refresh authentication token.': 'Failed to refresh authentication token.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.hy_AM.yml",
    "content": "Plugins: null\n'Manage Plugins': null\nAccount: null\n'Items per page': null\n'Add new': null\nHome: null\nLogout: null\nMore...: null\nContent: null\nLanguages: null\nCountries: null\nThemes: null\nTopics: null\nConfigure: null\n'Image Archive': null\n'Add Article': null\nFields: null\nDelete: null\nType: null\nName: null\nCode: null\nEdit: null\nLogin: null\nPassword: null\nSite: null\nPath: null\n'Go up': null\nURL: null\nOrder: null\nHide: null\nDuplicate: null\nSubscription: null\nexpires: null\nstarts: null\nbefore: null\nafter: null\non: null\nstatus: null\nactive: null\ninactive: null\nSubscribers: null\nStaff: null\n'Select destination': null\n'No languages': null\n'---Select language---': null\n'No publications': null\n'---Select publication---': null\n'No issues': null\n'---Select issue---': null\n'No sections': null\n'---Select section---': null\nLanguage: null\nCountry: null\n'Account name': null\nPublication: Հրապարակում\n'Default language': null\nSubscriptions: null\nIssue: null\nNumber: null\nSection: null\nKeywords: null\nTopic: null\n'URL Name': null\n'Left to pay': null\nActive: null\nTrial: null\nNext: null\nPrevious: null\nTranslate: null\nView: null\n'Scheduled Publishing': null\nTime: null\nAction: null\n'Schedule a new action': null\n'Scheduling a new publish action': null\n'Delete scheduled publish action': null\nDate/Time: null\n'You must select an action.': null\n'You do not have the right to schedule issues or articles for automatic publishing.': null\n'Front page': null\n'Section page': null\n'Show on front page': null\n'Remove from front page': null\n'Show on section page': null\n'Remove from section page': null\nActions: Գործունեություններ\nPublishing: null\nShow: null\nRemove: Հեռացնել\n'Article Types': null\n'Staff User Types': null\nPublications: null\nIssues: null\nSections: null\nArticles: null\nImages: null\nChange: null\n'Add new issue': null\n'Section Template': null\n'Article Template': null\n'Default Language': null\n'Paid Period': null\nPreview: null\n'You must fill in the $1 field.': null\nError: null\n'Invalid input: $1': null\n'Language does not exist.': null\n'Publication does not exist.': null\n'Issue does not exist.': null\n'You must select a language.': null\n'Section does not exist.': null\n'No articles.': null\n'Article does not exist.': null\n'Image does not exist.': null\n'Access denied': null\n'Invalid parameters received': null\n'Add new article': null\nStatus: null\nPublished: null\n'Not published': null\nSubmitted: null\nNew: Նոր\nArticle: null\nPublish: null\nUnpublish: null\nUnlock: null\nUploaded: null\nYYYY-MM-DD: null\nSubmit: null\nImage: Պատկեր\nDescription: Նկարագիր\nPhotographer: Լուսանկարիչ\nPlace: Վայր\nDate: Ամսաթիվ\nThumbnail: null\n'In use': null\n'Additional searches': null\n'Most Recently Added': null\n'Most Recently Modified': null\n'$1 images found': null\n'Reset search conditions': null\n'Image number': null\nUsers: null\nLocalizer: null\n'Adding new translation': null\n'No more languages.': null\n'The $1 field may only contain letters, digits and underscore (_) character.': null\n'Add new publication': null\n'Upload new template': null\n'Add new staff member': null\n'Staff member deleted.': null\n'Add new subscriber': null\n'Add new user type': null\n'Add new article type': null\n'Add new country': null\n'Add new language': null\n'View logs': null\n'Change your password': null\n'Your Articles': 'Ձեր հոդվածները'\n'Submitted Articles': null\nLogs: null\n'There are $1 article(s) left.': null\n'There are $1 issues(s) left.': null\n'There are $1 section(s) left.': null\n'There are $1 publication(s) left.': null\n'There are $1 countries left.': null\n'Name <SMALL>(click to edit)</SMALL>': null\n'Add new subscription': null\n'You do not have the right to add subscriptions.': null\n'Adding subscription': null\n'Delete subscription': null\n'You do not have the right to delete subscriptions.': null\n'No such subscription.': null\nYes: Այո\nNo: Ոչ\nClose: Փակել\n'No issues.': null\n'Back to Edit Article': null\n'No topics': null\n'You do not have the right to add articles.': null\nStart: null\nDays: null\n'The sections could not be added successfully. Some of them were already added !': null\n'Add another': null\nCancel: null\nDone: null\nOK: null\nSave: Պահպանել\nSearch: null\n'Make a selection': null\n'You must input a number greater than 0 into the $1 field.': null\n'You must input a valid date.': null\n'Add new field': null\n'Article automatic publishing schedule': null\n'Are you sure you want to delete this scheduled action?': null\nUnlink: null\n'Are you sure you want to delete the image $1?': null\n'No such issue.': null\n'Are you sure you want to delete the subscription to the publication $1?': null\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': null\nGB: null\nMB: null\nKB: null\nbytes: null\nAttach: null\nBack: null\nFile: null\n'Save and Close': null\nAdd: null\n'Select All': null\n'Select None': null\n'Add Event': null\nN/A: null\n'On Front Page': null\n'On Section Page': null\n'Created by': null\n'Creation date': null\n'Publication List': null\n'Issue List': null\n'Section List': null\nAll: null\nduplicate: null\nmove: null\nMove: null\n'From:': null\n'Date:': null\nHidden: null\nComments: Մեկնաբանություններ\nComment: null\nApproved: null\nSubject: null\n'IP address:': null\n'Email:': Էլ․փոստ\nAuthor: Հեղինակ\n'Article name': 'Հոդվածի անունը'\n'Hide article': 'Թաքցնել հոդվածը'\n'Show article': null\n'Article Type Fields': null\n'Article Images': null\n'Log Messages': null\n'Article Files': null\n'Article Comments': null\n'Are you sure you want to deactivate the subscription?': null\n'Are you sure you want to activate the subscription?': null\nOther: Այլ\n'Time:': null\n'No events.': 'Միջոցառումներ չկան'\n'Default templates': null\n'System Preferences': null\n'The date must be in the future.': null\nSend: Ուղարկել\n'Thank you.': Շնորհակալություն\n'Please take a minute to send us an email.': null\n(optional): null\n'The URL you entered is invalid: $1': null\nReads: null\n'Publish with issue': null\n'Universal List': null\n'Invalid security token!': null\nAuthors: null\nTitle: Վերնագիր\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.id.yml",
    "content": "Plugins: null\n'Manage Plugins': null\nAccount: null\n'Items per page': null\n'Add new': null\nHome: null\nLogout: null\nMore...: null\nContent: null\nLanguages: null\nCountries: null\nThemes: null\nTopics: null\nConfigure: null\n'Image Archive': null\n'Add Article': null\nFields: null\nDelete: null\nType: null\nName: null\nCode: null\nEdit: null\nLogin: null\nPassword: null\nSite: null\nPath: null\n'Go up': null\nURL: null\nOrder: null\nHide: null\nDuplicate: null\nSubscription: null\nexpires: null\nstarts: null\nbefore: null\nafter: null\non: null\nstatus: null\nactive: null\ninactive: null\nSubscribers: null\nStaff: null\n'Select destination': null\n'No languages': null\n'---Select language---': null\n'No publications': null\n'---Select publication---': null\n'No issues': null\n'---Select issue---': null\n'No sections': null\n'---Select section---': null\nLanguage: null\nCountry: null\n'Account name': null\nPublication: null\n'Default language': null\nSubscriptions: null\nIssue: null\nNumber: null\nSection: null\nKeywords: null\nTopic: null\n'URL Name': null\n'Left to pay': null\nActive: null\nTrial: null\nNext: null\nPrevious: null\nTranslate: null\nView: null\n'Scheduled Publishing': null\nTime: null\nAction: null\n'Schedule a new action': null\n'Scheduling a new publish action': null\n'Delete scheduled publish action': null\nDate/Time: null\n'You must select an action.': null\n'You do not have the right to schedule issues or articles for automatic publishing.': null\n'Front page': null\n'Section page': null\n'Show on front page': null\n'Remove from front page': null\n'Show on section page': null\n'Remove from section page': null\nActions: null\nPublishing: null\nShow: null\nRemove: null\n'Article Types': null\n'Staff User Types': null\nPublications: null\nIssues: null\nSections: null\nArticles: null\nImages: null\nChange: null\n'Add new issue': null\n'Section Template': null\n'Article Template': null\n'Default Language': null\n'Paid Period': null\nPreview: null\n'You must fill in the $1 field.': null\nError: null\n'Invalid input: $1': null\n'Language does not exist.': null\n'Publication does not exist.': null\n'Issue does not exist.': null\n'You must select a language.': null\n'Section does not exist.': null\n'No articles.': null\n'Article does not exist.': null\n'Image does not exist.': null\n'Access denied': null\n'Invalid parameters received': null\n'Add new article': null\nStatus: null\nPublished: null\n'Not published': null\nSubmitted: null\nNew: null\nArticle: null\nPublish: null\nUnpublish: null\nUnlock: null\nUploaded: null\nYYYY-MM-DD: null\nSubmit: null\nImage: null\nDescription: null\nPhotographer: null\nPlace: null\nDate: null\nThumbnail: null\n'In use': null\n'Additional searches': null\n'Most Recently Added': null\n'Most Recently Modified': null\n'$1 images found': null\n'Reset search conditions': null\n'Image number': null\nUsers: null\nLocalizer: null\n'Adding new translation': null\n'No more languages.': null\n'The $1 field may only contain letters, digits and underscore (_) character.': null\n'Add new publication': null\n'Upload new template': null\n'Add new staff member': null\n'Staff member deleted.': null\n'Add new subscriber': null\n'Add new user type': null\n'Add new article type': null\n'Add new country': null\n'Add new language': null\n'View logs': null\n'Change your password': null\n'Your Articles': null\n'Submitted Articles': null\nLogs: null\n'There are $1 article(s) left.': null\n'There are $1 issues(s) left.': null\n'There are $1 section(s) left.': null\n'There are $1 publication(s) left.': null\n'There are $1 countries left.': null\n'Name <SMALL>(click to edit)</SMALL>': null\n'Add new subscription': null\n'You do not have the right to add subscriptions.': null\n'Adding subscription': null\n'Delete subscription': null\n'You do not have the right to delete subscriptions.': null\n'No such subscription.': null\nYes: null\nNo: null\nClose: null\n'No issues.': null\n'Back to Edit Article': null\n'No topics': null\n'You do not have the right to add articles.': null\nStart: null\nDays: null\n'The sections could not be added successfully. Some of them were already added !': null\n'Add another': null\nCancel: null\nDone: null\nOK: null\nSave: null\nSearch: null\n'Make a selection': null\n'You must input a number greater than 0 into the $1 field.': null\n'You must input a valid date.': null\n'Add new field': null\n'Article automatic publishing schedule': null\n'Are you sure you want to delete this scheduled action?': null\nUnlink: null\n'Are you sure you want to delete the image $1?': null\n'No such issue.': null\n'Are you sure you want to delete the subscription to the publication $1?': null\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': null\nGB: null\nMB: null\nKB: null\nbytes: null\nAttach: null\nBack: null\nFile: null\n'Save and Close': null\nAdd: null\n'Select All': null\n'Select None': null\n'Add Event': null\nN/A: null\n'On Front Page': null\n'On Section Page': null\n'Created by': null\n'Creation date': null\n'Publication List': null\n'Issue List': null\n'Section List': null\nAll: null\nduplicate: null\nmove: null\nMove: null\n'From:': null\n'Date:': null\nHidden: null\nComments: null\nComment: null\nApproved: null\nSubject: null\n'IP address:': null\n'Email:': null\nAuthor: null\n'Article name': null\n'Hide article': null\n'Show article': null\n'Article Type Fields': null\n'Article Images': null\n'Log Messages': null\n'Article Files': null\n'Article Comments': null\n'Are you sure you want to deactivate the subscription?': null\n'Are you sure you want to activate the subscription?': null\nOther: null\n'Time:': null\n'No events.': null\n'Default templates': null\n'System Preferences': null\n'The date must be in the future.': null\nSend: null\n'Thank you.': null\n'Please take a minute to send us an email.': null\n(optional): null\n'The URL you entered is invalid: $1': null\nReads: null\n'Publish with issue': null\n'Universal List': null\n'Invalid security token!': null\nAuthors: null\nTitle: null\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.it.yml",
    "content": "Plugins: Plugin\n'Manage Plugins': 'Gestisci plugin'\nAccount: Account\n'Items per page': 'Elementi per pagina'\n'Add new': Aggiungi\nHome: Home\nLogout: Esci\nMore...: Continua...\nContent: Contenuto\nLanguages: Lingue\nCountries: Nazioni\nThemes: Temi\nTopics: Argomenti\nConfigure: Configura\n'Image Archive': 'Archivio immagini'\n'Add Article': 'Aggiungi articolo'\nFields: Campi\nDelete: Elimina\nType: Tipo\nName: Nome\nCode: Codice\nEdit: Modifica\nLogin: Login\nPassword: Password\nSite: Sito\nPath: Percorso\n'Go up': 'Torna su'\nURL: URL\nOrder: Ordine\nHide: Nascondi\nDuplicate: Duplica\nSubscription: Iscrizione\nexpires: scade\nstarts: inizia\nbefore: prima\nafter: dopo\non: nel\nstatus: stato\nactive: attivo\ninactive: inattivo\nSubscribers: Iscritti\nStaff: Staff\n'Select destination': 'Seleziona destinazione'\n'No languages': 'Nessuna lingua'\n'---Select language---': '---Seleziona lingua---'\n'No publications': 'Nessuna pubblicazione'\n'---Select publication---': '---Seleziona pubblicazione---'\n'No issues': 'Nessun articolo'\n'---Select issue---': '---Seleziona articolo---'\n'No sections': 'Nessuna sezione'\n'---Select section---': '---Seleziona sezione---'\nLanguage: Lingua\nCountry: Nazione\n'Account name': 'Nome account'\nPublication: Pubblicazione\n'Default language': 'Lingua predefinita'\nSubscriptions: Iscrizioni\nIssue: Edizione\nNumber: Numero\nSection: Sezione\nKeywords: 'Parole chiave'\nTopic: Argomento\n'URL Name': 'Nome URL'\n'Left to pay': 'Da pagare'\nActive: Attivo\nTrial: Prova\nNext: Successivo\nPrevious: Precedente\nTranslate: Traduci\nView: Vista\n'Scheduled Publishing': 'Pubblicazione programmata'\nTime: Orario\nAction: Azione\n'Schedule a new action': 'Programma una nuova azione'\n'Scheduling a new publish action': 'Programmo la nuova azione'\n'Delete scheduled publish action': 'Elimina lazione programmata'\nDate/Time: Data/Ora\n'You must select an action.': 'Devi selezionare unazione.'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'Non hai il permesso di programmare la pubblicazione automatica di edizioni o articoli.'\n'Front page': 'Prima pagina'\n'Section page': 'Pagina della sezione'\n'Show on front page': 'Mostra in prima pagina'\n'Remove from front page': 'Rimuovi dalla prima pagina'\n'Show on section page': 'Mostra nella pagina della sezione'\n'Remove from section page': 'Rimuovi dalla pagina della sezione'\nActions: Azioni\nPublishing: Pubblicazione\nShow: Mostra\nRemove: Rimuovi\n'Article Types': 'Tipi di articolo'\n'Staff User Types': 'Ruoli staff'\nPublications: Pubblicazioni\nIssues: Edizioni\nSections: Sezioni\nArticles: Articoli\nImages: Immagini\nChange: Cambia\n'Add new issue': 'Aggiungi edizione'\n'Section Template': 'Template sezione'\n'Article Template': 'Template articolo'\n'Default Language': 'Lingua predefinita'\n'Paid Period': 'Periodo pagato'\nPreview: Anteprima\n'You must fill in the $1 field.': 'Devi riempire il campo $1.'\nError: Errore\n'Invalid input: $1': 'Valore non valido: $1'\n'Language does not exist.': 'La lingua non esiste.'\n'Publication does not exist.': 'La pubblicazione non esiste.'\n'Issue does not exist.': 'Ledizione non esiste.'\n'You must select a language.': 'Devi selezionare una lingua.'\n'Section does not exist.': 'La sezione non esiste.'\n'No articles.': 'Nessun articolo.'\n'Article does not exist.': 'Larticolo non esiste.'\n'Image does not exist.': 'Limmagine non esiste.'\n'Access denied': 'Accesso negato'\n'Invalid parameters received': 'Parametro non valido'\n'Add new article': 'Aggiungi articolo'\nStatus: Stato\nPublished: Pubblicato\n'Not published': 'Non pubblicato'\nSubmitted: Inoltrato\nNew: Nuovo\nArticle: Articolo\nPublish: Pubblica\nUnpublish: Rimuovi\nUnlock: Sblocca\nUploaded: Caricato\nYYYY-MM-DD: AAAA-MM-GG\nSubmit: Salva\nImage: Immagine\nDescription: Descrizione\nPhotographer: Fotografo\nPlace: Località\nDate: Data\nThumbnail: Miniatura\n'In use': 'In uso'\n'Additional searches': 'Ricerche aggiuntive'\n'Most Recently Added': 'Aggiunte recenti'\n'Most Recently Modified': 'Modifiche recenti'\n'$1 images found': 'Trovate $1 immagini'\n'Reset search conditions': 'Reset condizioni di ricerca'\n'Image number': 'Numero immagine'\nUsers: Utenti\nLocalizer: Localizzazioni\n'Adding new translation': 'Aggiungi traduzione'\n'No more languages.': 'Non ci sono altre lingue.'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'Il campo $1 può contenere solo lettere, numeri e il trattino basso ( _ ).'\n'Add new publication': 'Aggiungi pubblicazione'\n'Upload new template': 'Aggiungi template'\n'Add new staff member': 'Aggiungi membro dello staff'\n'Staff member deleted.': null\n'Add new subscriber': 'Aggiungi iscritto'\n'Add new user type': 'Aggiungi tipo utente'\n'Add new article type': 'Aggiungi tipo articolo'\n'Add new country': 'Aggiungi nazione'\n'Add new language': 'Aggiungi lingua'\n'View logs': 'Mostra eventi'\n'Change your password': 'Cambia password'\n'Your Articles': Articoli\n'Submitted Articles': 'Articoli inviati'\nLogs: 'Registro eventi'\n'There are $1 article(s) left.': 'Rimangono ancora $1 articoli.'\n'There are $1 issues(s) left.': 'Rimangono ancora $1 edizioni.'\n'There are $1 section(s) left.': 'Rimangono ancora $1 sezioni.'\n'There are $1 publication(s) left.': 'Rimangono ancora $1 pubblicazioni.'\n'There are $1 countries left.': 'Rimangono $1 nazioni rimanenti.'\n'Name <SMALL>(click to edit)</SMALL>': 'Nome <SMALL>(clicca per modificare)</SMALL>'\n'Add new subscription': 'Aggiungi iscrizione'\n'You do not have the right to add subscriptions.': 'Non hai il permesso di aggiungere iscrizioni.'\n'Adding subscription': 'Aggiungi iscrizione'\n'Delete subscription': 'Elimina iscrizione'\n'You do not have the right to delete subscriptions.': 'Non hai il permesso di eliminare iscrizioni.'\n'No such subscription.': 'Iscrizione non presente'\nYes: Si\nNo: No\nClose: Chiudi\n'No issues.': 'Nessuna edizione'\n'Back to Edit Article': 'Torna alla modifica articolo'\n'No topics': 'Nessun argomento'\n'You do not have the right to add articles.': 'Non hai il permesso di aggiungere articoli.'\nStart: Inizia\nDays: Giorni\n'The sections could not be added successfully. Some of them were already added !': 'Non è stato possibile aggiungere le sezioni, perchè alcune di esse erano già presenti.'\n'Add another': 'Aggiungi ancora'\nCancel: Annulla\nDone: Fatto\nOK: Ok\nSave: Salva\nSearch: Cerca\n'Make a selection': Seleziona\n'You must input a number greater than 0 into the $1 field.': 'Devi inserire un numero più grande di 0 nel campo $1.'\n'You must input a valid date.': 'Devi inserire una data valida.'\n'Add new field': 'Aggiungi un campo'\n'Article automatic publishing schedule': 'Programmazione della pubblicazione automatica degli articoli'\n'Are you sure you want to delete this scheduled action?': 'Vuoi davvero cancellare questa azione programmata?'\nUnlink: Sgancia\n'Are you sure you want to delete the image $1?': 'Vuoi davvero eliminare limmagine $1?'\n'No such issue.': 'Edizione non presente.'\n'Are you sure you want to delete the subscription to the publication $1?': 'Vuoi davvero eliminare liscrizione alla pubblicazione $1?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Impossibile  salvare i cambiamenti per ledizione $1. Assicurati che il nome URL delledizione $2 non sia stato già utilizzato nella pubblicazione $3.'\nGB: GB\nMB: MB\nKB: KB\nbytes: byte\nAttach: Allega\nBack: Indietro\nFile: File\n'Save and Close': 'Salva e chiudi'\nAdd: Aggiungi\n'Select All': 'Seleziona tutti'\n'Select None': 'Deseleziona tutti'\n'Add Event': 'Aggiungi evento'\nN/A: N/D\n'On Front Page': 'In prima pagina'\n'On Section Page': 'Nella pagina di sezione'\n'Created by': 'Creato da'\n'Creation date': 'Data creazione'\n'Publication List': 'Lista pubblicazioni'\n'Issue List': 'Lista edizioni'\n'Section List': 'Lista sezioni'\nAll: Tutti\nduplicate: duplica\nmove: sposta\nMove: Sposta\n'From:': 'Da:'\n'Date:': 'Data:'\nHidden: Nascosto\nComments: Commenti\nComment: Commento\nApproved: Approvato\nSubject: Oggetto\n'IP address:': 'Indirizzo IP:'\n'Email:': 'Email:'\nAuthor: Autore\n'Article name': 'Nome articolo'\n'Hide article': 'Nascondi articolo'\n'Show article': 'Mostra articolo'\n'Article Type Fields': 'Campi del tipo articolo'\n'Article Images': 'Immagini articolo'\n'Log Messages': 'Registro messaggi'\n'Article Files': 'Allegati articolo'\n'Article Comments': 'Commenti articolo'\n'Are you sure you want to deactivate the subscription?': 'Vuoi davvero disattivare liscrizione?'\n'Are you sure you want to activate the subscription?': 'Vuoi davvero attivare liscrizione?'\nOther: Altro\n'Time:': 'Ora:'\n'No events.': 'Nessun evento.'\n'Default templates': 'Template predefinito'\n'System Preferences': 'Preferenze di sistema'\n'The date must be in the future.': 'La data deve essere nel futuro.'\nSend: Invia\n'Thank you.': Grazie.\n'Please take a minute to send us an email.': 'Prenditi un minuto di tempo per mandarci una email.'\n(optional): (opzionale)\n'The URL you entered is invalid: $1': 'Lindirizzo URL inserito non è valido: $1'\nReads: Letture\n'Publish with issue': 'Pubblica con ledizione'\n'Universal List': 'Lista completa'\n'Invalid security token!': 'Token di sicurezza non valido!'\nAuthors: Autori\nTitle: Titolo\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: in\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.ka.yml",
    "content": "Plugins: პლაგინები\n'Manage Plugins': 'პლაგინების მართვა'\nAccount: ანგარიში\n'Items per page': 'რაოდენობა ყოველ გვერდზე'\n'Add new': დამატება\nHome: მთავარი\nLogout: გასვლა\nMore...: მეტი...\nContent: კონტენტი\nLanguages: ენები\nCountries: ქვეყნები\nThemes: თემები\nTopics: შაბლონები\nConfigure: კონფიგურაცია\n'Image Archive': 'გამოსახულებების არქივი'\n'Add Article': 'სტატიის დამატება'\nFields: ველები\nDelete: წაშლა\nType: ტიპი\nName: სახელი\nCode: კოდი\nEdit: რედაქტირება\nLogin: ავტორიზაცია\nPassword: პაროლი\nSite: საიტი\nPath: მიმართულება\n'Go up': ზემოთ\nURL: URL\nOrder: გამოწერა\nHide: დამალვა\nDuplicate: დუბლიკატი\nSubscription: გამოწერა\nexpires: 'ვადის გასვლა'\nstarts: დასაწყისი\nbefore: მდე\nafter: შემდეგ\non: ზე\nstatus: სტატუსი\nactive: აქტიური\ninactive: არააქტიური\nSubscribers: გამომწერები\nStaff: სტაფი\n'Select destination': 'მონიშნე დანიშნულების ადგილი'\n'No languages': 'ენის გარეშე'\n'---Select language---': 'აირჩიე ენა'\n'No publications': 'პუბლიკაციები არ არის'\n'---Select publication---': 'მონიშნე პუბლიკაცია'\n'No issues': 'სტატიის გარეშე'\n'---Select issue---': 'მონიშნე სტატია'\n'No sections': 'სექციის გარეშე'\n'---Select section---': 'მონიშნე სექცია'\nLanguage: ენა\nCountry: ქვეყანა\n'Account name': 'მომხმარებლის სახელი'\nPublication: პუბლიკაცია\n'Default language': 'ნაგულისხმევი ენა'\nSubscriptions: გამოწერები\nIssue: გამოცემა\nNumber: ნომერი\nSection: სექცია\nKeywords: 'საკვანძო სიტყვები'\nTopic: საკითხი\n'URL Name': 'URL-ის სახელი'\n'Left to pay': 'დარჩა გადასახდელი'\nActive: აქტიური\nTrial: საცდელი\nNext: შემდეგი\nPrevious: წინა\nTranslate: თარგმნა\nView: ნახვა\n'Scheduled Publishing': 'დაგეგმილი გამოქვეყნება'\nTime: დრო\nAction: მოქმედება\n'Schedule a new action': 'ახალი მოქმედების დაგეგმვა'\n'Scheduling a new publish action': 'ახალი გამოსაქვეყნებელი ოპერაციის დაგეგმვა'\n'Delete scheduled publish action': 'დაგეგმილი ოპერაციის გაუქმება'\nDate/Time: თარიღი/დრო\n'You must select an action.': 'თქვენ უნდა მონიშნოთ მოქმედება'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'თქვენ არა გაქვთ უფლება დაგეგმოთ გამოცემის, ან სტატიის ავტომატური გამოქვეყნება'\n'Front page': 'მთავარი გვერდი'\n'Section page': 'სექციის გვერდი'\n'Show on front page': 'ჩვენება მთავარ გვერდზე'\n'Remove from front page': 'მოხსნა მთავარი გვერდიდან'\n'Show on section page': 'ჩვენება სექციის გვერდზე'\n'Remove from section page': 'მოხსნა სექციიდან'\nActions: მოქმედება\nPublishing: გამოქვეყნება\nShow: ჩვენება\nRemove: მოხსნა\n'Article Types': 'სტატიის ტიპები'\n'Staff User Types': 'სტაფის ტიპები'\nPublications: პუბლიკაციები\nIssues: გამოცემები\nSections: სექციები\nArticles: სტატიები\nImages: ფოტოები\nChange: ცვლილება\n'Add new issue': 'დაამატე ახალი გამოცემა'\n'Section Template': 'სექციის შაბლონი'\n'Article Template': 'სტატიის შაბლონი'\n'Default Language': 'ნაგულისხმევი ენა'\n'Paid Period': 'გადახდის პერიოდი'\nPreview: გადახედვა\n'You must fill in the $1 field.': 'თქვენ უნდა შეავსოთ $1 ველი'\nError: შეცდომა\n'Invalid input: $1': 'არასწორადაა შეყვანილი: $1'\n'Language does not exist.': 'ენა არ არსებობს'\n'Publication does not exist.': 'პუბლიკაცია არ არსებობს'\n'Issue does not exist.': 'გამოცემა არ არსებობს'\n'You must select a language.': 'თქვენ უნდა აირჩიოთ ენა'\n'Section does not exist.': 'გამოცემა არ არსებობს'\n'No articles.': 'სტატიები არ არის.'\n'Article does not exist.': 'სტატია არ არსებობს'\n'Image does not exist.': 'ფოტო არ არსებობს'\n'Access denied': 'წვდომა აკრძალულია'\n'Invalid parameters received': 'მიღებულია არასწორი პარამეტრები'\n'Add new article': 'ახალი სტატიის დამატება'\nStatus: სტატუსი\nPublished: გამოქვეყნებული\n'Not published': გამოუქვეყნებელი\nSubmitted: გაგზავნილი\nNew: ახალი\nArticle: სტატია\nPublish: გამოქვეყნება\nUnpublish: 'გამოქვეყნების გაუქმება'\nUnlock: 'ბლოკის მოხსნა'\nUploaded: ატვირთული\nYYYY-MM-DD: წელი/თვე/დღე\nSubmit: გაგზავნა\nImage: გამოსახულება\nDescription: აღწერა\nPhotographer: ფოტოგრაფი\nPlace: ადგილი\nDate: თარიღი\nThumbnail: მინიატურა\n'In use': გამოყენებულია\n'Additional searches': 'ძირითადი ძიება'\n'Most Recently Added': 'უკანასკნელი დამატებული'\n'Most Recently Modified': 'უკანასკნელად მოდიფიცირებული'\n'$1 images found': 'ნაპოვნია ფოტო : $1'\n'Reset search conditions': 'ძიების პირობების უგულვებელყოფა'\n'Image number': 'ფოტოს ნომერი'\nUsers: მომხმარებლები\nLocalizer: ლოკალიზატორი\n'Adding new translation': 'ახალი თარგმანის დამატება'\n'No more languages.': 'სხვა ენა არაა'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'ველი $1 შეიძლება შეიცავდეს მხოლოდ ასოებს, ციფრებს და ქვედა ხაზს'\n'Add new publication': 'გამოცემის დამატება'\n'Upload new template': 'ახალი შაბლონის ატვირთვა'\n'Add new staff member': 'ახალი თანამშრომლის დამატება'\n'Staff member deleted.': null\n'Add new subscriber': 'ახალი ხელმომწერის დამატება'\n'Add new user type': 'ახალი მომხმარებლის ტიპის დამატება'\n'Add new article type': 'ახალი სტატიის ტიპის დამატება'\n'Add new country': 'ქვეყნის დამატება'\n'Add new language': 'ენის დამატება'\n'View logs': 'აღრიცხვის ნახვა'\n'Change your password': 'პაროლის შეცვლა'\n'Your Articles': 'თქვენი სტატიები'\n'Submitted Articles': 'წარდგენილი სტატიები'\nLogs: აღრიცხვა\n'There are $1 article(s) left.': 'დარჩა სტატიები: $1'\n'There are $1 issues(s) left.': 'დარჩა გამოცემაა: $1'\n'There are $1 section(s) left.': 'დარჩენილია სექცია: $1'\n'There are $1 publication(s) left.': 'დარჩენილია პუბლიკაცია: $!'\n'There are $1 countries left.': 'დარჩა ქვეყნები: $1'\n'Name <SMALL>(click to edit)</SMALL>': 'სათაური <SMALL>(დააწკაპუნე რედაქტირებას)</SMALL>'\n'Add new subscription': 'გამოწერის დამატება'\n'You do not have the right to add subscriptions.': 'თქვენ არა გაქვთ გამოწერის დამატების უფლება'\n'Adding subscription': 'გამოწერის დამატება'\n'Delete subscription': 'გამოწერის გაუქმება'\n'You do not have the right to delete subscriptions.': 'თქვენ არა გაქვთ გამოწერის გაუქმების უფლება'\n'No such subscription.': 'ასეთი გამოწერა არაა'\nYes: დიახ\nNo: არა\nClose: დახურული\n'No issues.': 'გამოცემა არ არის.'\n'Back to Edit Article': 'უკან დაბრუნება სტატიის რედაქტირებისთვის'\n'No topics': 'თემა არაა'\n'You do not have the right to add articles.': 'თქვენ არა გაქვთ სტატიის დამატების უფლება'\nStart: დაწყება\nDays: დღეები\n'The sections could not be added successfully. Some of them were already added !': 'სექციების დამატების პროცესი  წარუმატებლად დასრულდა. ზოგიერთი მათგანი უკვე დამატებული იყო '\n'Add another': 'დაამატე სხვა'\nCancel: გაუქმება\nDone: შესრულებულია\nOK: OK\nSave: შენახვა\nSearch: ძიება\n'Make a selection': მონიშნე\n'You must input a number greater than 0 into the $1 field.': 'თქვენ უნდა შეიყვანოთ 0 ზე მეტი ციფრი $1 ველში '\n'You must input a valid date.': 'თქვენ უნდა მიუთითოთ რეალური თარიღი.'\n'Add new field': 'ახალი ველის დამატება'\n'Article automatic publishing schedule': 'სტატიის ავტომატურად გამოქვეყნების გრაფიკი'\n'Are you sure you want to delete this scheduled action?': 'დარწმუნებული ხართ, რომ გსურთ ამ დაგეგმილი მოქმედების გაუქმება?'\nUnlink: გაუქმება\n'Are you sure you want to delete the image $1?': 'დარწმუნებული ხართ, რომ გსურთ ფოტო $1 წაშლა?'\n'No such issue.': 'მსგავსი გამოცემა არ არის'\n'Are you sure you want to delete the subscription to the publication $1?': 'დარწმუნებული ხართ, რომ გსურთ პუბლიკაცია $1 გამოწერის გაუქმება?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'გამოცემა $1 ში ცვლილებების შეტანა  შეუძლებელია. გთხოვთ დარწმუნდით, რომ გამოშვების URL– ის სახელი პუბლიკაცია $3 –ში მანამდე გამოყენებული არ იყო '\nGB: GB\nMB: MB\nKB: KB\nbytes: bytes\nAttach: მიმაგრება\nBack: უკან\nFile: ფაილი\n'Save and Close': 'შენახვა და დახურვა'\nAdd: დამატება\n'Select All': 'მონიშნე ყველა'\n'Select None': 'არაფერია მონიშნული'\n'Add Event': 'მოვლენის დამატება'\nN/A: N/A\n'On Front Page': 'მთავარ გვერდზე'\n'On Section Page': 'სექციის გვერდზე'\n'Created by': 'შექმნილია # მიერ'\n'Creation date': 'შექმნის თარიღი'\n'Publication List': 'პუბლიკაციების სია'\n'Issue List': 'გამოცემების სია'\n'Section List': 'სექციების სია'\nAll: ყველა\nduplicate: დუბლირება\nmove: გადატანა\nMove: გადატანა\n'From:': დან\n'Date:': წაშლა\nHidden: დამალული\nComments: კომენტარები\nComment: კომენტარი\nApproved: დადასტურებული\nSubject: თემა\n'IP address:': 'IP მისამართი'\n'Email:': 'ელ-ფოსტა:'\nAuthor: ავტორი\n'Article name': 'სტატიის სათაური'\n'Hide article': 'სტატიის დამალვა'\n'Show article': 'სტატატიის ჩვენება'\n'Article Type Fields': 'სტატიის ტიპის ველები'\n'Article Images': 'სტატიის გამოსახულებები'\n'Log Messages': 'აღრიცხვის შეტყობინებები'\n'Article Files': 'სტატიის ფაილები'\n'Article Comments': 'სტატიის კომენტარები'\n'Are you sure you want to deactivate the subscription?': 'დარწმუნებული ხართ, რომ გსურთ გამოწერის დეაქტივაცია?'\n'Are you sure you want to activate the subscription?': 'დარწმუნებული ხართ, რომ გსურთ გამოწერის აქტივაცია?'\nOther: სხვა\n'Time:': დრო\n'No events.': 'მოვლენა არაა'\n'Default templates': 'ნაგულისხმევი შაბლონები'\n'System Preferences': 'სისტემური პარამეტრები'\n'The date must be in the future.': 'თარიღი უნდა იყოს მომავალ დროში'\nSend: გაგზავნა\n'Thank you.': გმადლობ\n'Please take a minute to send us an email.': 'გთხოვთ გამოგვიგზავნოთ ელ-ფოსტა.'\n(optional): (სურვილისამებრ)\n'The URL you entered is invalid: $1': 'შეყვანილი URL არასწორია: $1'\nReads: წაკითხვები\n'Publish with issue': 'გამოქვეყნება გამოცემასთან ერთად'\n'Universal List': 'უნივერსალური სია'\n'Invalid security token!': 'არასწორი უსაფრთხოების მარკერი'\nAuthors: ავტორები\nTitle: სათაური\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: '-ზე'\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.ko.yml",
    "content": "Plugins: null\n'Manage Plugins': null\nAccount: '아이디 '\n'Items per page': '페이지당 아이템'\n'Add new': '신규로 추가'\nHome: 홈\nLogout: 로그아웃\nMore...: 더보기\nContent: 콘텐트\nLanguages: 언어\nCountries: 국가\nThemes: '템플레이트 '\nTopics: '토픽 '\nConfigure: 구성\n'Image Archive': '이미지 아카이브 '\n'Add Article': '기사 추가 '\nFields: 필드\nDelete: 삭제\nType: '타입 '\nName: '이름 '\nCode: '코드 '\nEdit: 편집\nLogin: '로그인 '\nPassword: 패스워드\nSite: '사이트 '\nPath: 패스\n'Go up': 위로가기\nURL: URL\nOrder: 순서\nHide: 숨기기\nDuplicate: 복사\nSubscription: 구독\nexpires: 기간만료\nstarts: 시작\nbefore: 이전\nafter: 이후\non: 온\nstatus: 상태\nactive: 활성\ninactive: 비활성\nSubscribers: 구독자\nStaff: '스탭 '\n'Select destination': '목적지 선택'\n'No languages': '언어 없슴'\n'---Select language---': '---언어 선택---'\n'No publications': 출판안됨\n'---Select publication---': '---출판 선택---'\n'No issues': '기사 없슴'\n'---Select issue---': '---기사 선택---'\n'No sections': '섹션 없슴'\n'---Select section---': '---섹션 선택---'\nLanguage: 언어\nCountry: 국가\n'Account name': '아이디 '\nPublication: 출판\n'Default language': '기본 언어'\nSubscriptions: 구독\nIssue: '이슈 '\nNumber: 넘버\nSection: 섹션\nKeywords: 키워드\nTopic: 토픽\n'URL Name': 'URL 이름'\n'Left to pay': 지불해야함\nActive: 활성\nTrial: 시험\nNext: 다음\nPrevious: 이전\nTranslate: 번역\nView: 보기\n'Scheduled Publishing': '예약 출판 '\nTime: 시간\nAction: 기능\n'Schedule a new action': '기능 예약'\n'Scheduling a new publish action': '새로운 출판 기능 스케쥴링'\n'Delete scheduled publish action': '예약 출판 기능 삭제 '\nDate/Time: 일자/시간\n'You must select an action.': '기능을 선택하시오.'\n'You do not have the right to schedule issues or articles for automatic publishing.': '이슈나 기사를 자동 출판으로 스케듈할 권한이 없습니다. '\n'Front page': 프론트페이지\n'Section page': 섹션페이지\n'Show on front page': '프론트페이지에서 보기'\n'Remove from front page': '프론트페이지에서 삭제하기'\n'Show on section page': '섹션페이지에서 보기'\n'Remove from section page': '섹션페이지에서 삭제하기'\nActions: 기능\nPublishing: 출판\nShow: 보기\nRemove: 삭제\n'Article Types': '기사 타입'\n'Staff User Types': '스탭 타입'\nPublications: 출판\nIssues: 이슈\nSections: 섹션\nArticles: 기사\nImages: 이미지\nChange: 변경\n'Add new issue': '새로운 이슈 추가'\n'Section Template': 섹션템플레이트\n'Article Template': 기사템플레이트\n'Default Language': 기본언어\n'Paid Period': '지불된 기간'\nPreview: 미리보기\n'You must fill in the $1 field.': '$1 필드를 채우시오'\nError: 에러\n'Invalid input: $1': '비정상 입력: $1'\n'Language does not exist.': '언어가 없습니다.'\n'Publication does not exist.': '출판사이트가 없습니다.'\n'Issue does not exist.': '이슈가 없습니다.'\n'You must select a language.': '언어를 선택하시오.'\n'Section does not exist.': '섹션이 없습니다. '\n'No articles.': '기사 없슴.'\n'Article does not exist.': '기사가 없습니다. '\n'Image does not exist.': '이미지가 없습니다.'\n'Access denied': '접근 거부 '\n'Invalid parameters received': '비정상 파라미터 받음'\n'Add new article': '새로운 기사 추가 '\nStatus: 상태\nPublished: 출판완료\n'Not published': 출판전\nSubmitted: 송고완료\nNew: 신규\nArticle: 기사\nPublish: '출판 '\nUnpublish: '출판전으로 돌리기'\nUnlock: 잠금풀기\nUploaded: 업로드됨\nYYYY-MM-DD: 년-월-일\nSubmit: 송고\nImage: 이미지\nDescription: 설명\nPhotographer: 포토그래퍼\nPlace: 장소\nDate: 일자\nThumbnail: 썸네일\n'In use': 사용중\n'Additional searches': '추가 검색'\n'Most Recently Added': '가장 최근 추가됨'\n'Most Recently Modified': '가장 최근 수정됨'\n'$1 images found': '$1 이미지 발견'\n'Reset search conditions': 검색조건리세트\n'Image number': '이미지 넘버'\nUsers: 사용자\nLocalizer: 로칼라이저\n'Adding new translation': '새로운 번역 추가중'\n'No more languages.': '더 이상 언어 없슴.'\n'The $1 field may only contain letters, digits and underscore (_) character.': '$1 필드는 글자, 숫자 및 밑줄 글자만 포함합니다. '\n'Add new publication': '새로운 출판 추가'\n'Upload new template': '새로운 템플레이트 업로드'\n'Add new staff member': '새로운 스탭 멤버 추가'\n'Staff member deleted.': null\n'Add new subscriber': '새로운 구독자 추가 '\n'Add new user type': '새로운 사용자 타입 추가 '\n'Add new article type': '새로운 기사 타입 추가 '\n'Add new country': '새로운 국가 추가 '\n'Add new language': '새로운 언어 추가 '\n'View logs': '로그 보기'\n'Change your password': '패스워드 변경'\n'Your Articles': '내가 쓴 기사'\n'Submitted Articles': '송고된 기사'\nLogs: 로그\n'There are $1 article(s) left.': '$1 기사가 남아있슴.'\n'There are $1 issues(s) left.': '$1 이슈가 남아있슴.'\n'There are $1 section(s) left.': '$1 섹션이 남아있슴.'\n'There are $1 publication(s) left.': '$1 출판이 남아있슴.'\n'There are $1 countries left.': '$1 국가가 남아있슴.'\n'Name <SMALL>(click to edit)</SMALL>': '이름 <SMALL>(편집하려면 클릭)</SMALL>'\n'Add new subscription': '새로운 구독자 추가'\n'You do not have the right to add subscriptions.': '구독자 추가할 권한이 없습니다.'\n'Adding subscription': '구독 추가'\n'Delete subscription': '구독 삭제'\n'You do not have the right to delete subscriptions.': '구독을 삭제할 권한이 없습니다. '\n'No such subscription.': '그런 구독 없슴.'\nYes: 예\nNo: 아니오\nClose: 닫기\n'No issues.': '이슈 없슴.'\n'Back to Edit Article': '기사 편집으로 돌아가기'\n'No topics': '토픽 없습'\n'You do not have the right to add articles.': '기사를 추가할 권한이 없습니다. '\nStart: 시작\nDays: 일\n'The sections could not be added successfully. Some of them were already added !': '섹션을  성공적으로 추가할 수 없습니다.  이미 추가되었습니다.'\n'Add another': '또다른 추가 '\nCancel: 취소\nDone: 완료\nOK: OK\nSave: 저장\nSearch: 검색\n'Make a selection': 선택하시오\n'You must input a number greater than 0 into the $1 field.': '$1 필드에 0 보다 큰 숫자를 입력하시오'\n'You must input a valid date.': '정상적인 날자를 입력하시오'\n'Add new field': '새로운 필드 추가'\n'Article automatic publishing schedule': '기사 자동 출판 스케듈'\n'Are you sure you want to delete this scheduled action?': '스케듈된 기능을 삭제합니까?'\nUnlink: 링크없애기\n'Are you sure you want to delete the image $1?': '이미지 $1 를 삭제합니까?'\n'No such issue.': '그런 이슈 없슴.'\n'Are you sure you want to delete the subscription to the publication $1?': '출판 $1 에 구독을 삭제합니까?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': '이슈 $1 에 변경을 저장할 수없습니다.  이슈  URL 이름 $2  가 출판 $3 에 사용되지 않는지 확인하시오.'\nGB: GB\nMB: MB\nKB: KB\nbytes: bytes\nAttach: 첨부\nBack: 뒤로\nFile: 파일\n'Save and Close': '저장하고 닫기'\nAdd: 추가\n'Select All': '모두 선택'\n'Select None': 미선택\n'Add Event': '이벤트 추가'\nN/A: N/A\n'On Front Page': 프론트페이지\n'On Section Page': 섹션페이지\n'Created by': 작성자\n'Creation date': 작성일\n'Publication List': '출판 리스트 '\n'Issue List': 이슈리스트\n'Section List': 섹션리스트\nAll: 모두\nduplicate: 복사\nmove: '이동 '\nMove: 이동\n'From:': null\n'Date:': null\nHidden: null\nComments: null\nComment: null\nApproved: null\nSubject: null\n'IP address:': null\n'Email:': null\nAuthor: null\n'Article name': null\n'Hide article': null\n'Show article': null\n'Article Type Fields': '기사 타입 필드'\n'Article Images': '기사 이미지'\n'Log Messages': '로그 메시지'\n'Article Files': '기사 파일'\n'Article Comments': null\n'Are you sure you want to deactivate the subscription?': '구독을 비활성화합니까?'\n'Are you sure you want to activate the subscription?': '구독을 활성화 합니까?'\nOther: null\n'Time:': null\n'No events.': null\n'Default templates': null\n'System Preferences': null\n'The date must be in the future.': null\nSend: null\n'Thank you.': null\n'Please take a minute to send us an email.': null\n(optional): null\n'The URL you entered is invalid: $1': null\nReads: null\n'Publish with issue': null\n'Universal List': null\n'Invalid security token!': null\nAuthors: null\nTitle: null\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.ku.yml",
    "content": "Plugins: null\n'Manage Plugins': null\nAccount: null\n'Items per page': null\n'Add new': null\nHome: null\nLogout: null\nMore...: null\nContent: null\nLanguages: null\nCountries: null\nThemes: null\nTopics: null\nConfigure: null\n'Image Archive': null\n'Add Article': null\nFields: null\nDelete: null\nType: null\nName: null\nCode: null\nEdit: null\nLogin: null\nPassword: null\nSite: null\nPath: null\n'Go up': null\nURL: null\nOrder: null\nHide: null\nDuplicate: null\nSubscription: null\nexpires: null\nstarts: null\nbefore: null\nafter: null\non: null\nstatus: null\nactive: null\ninactive: null\nSubscribers: null\nStaff: null\n'Select destination': null\n'No languages': null\n'---Select language---': null\n'No publications': null\n'---Select publication---': null\n'No issues': null\n'---Select issue---': null\n'No sections': null\n'---Select section---': null\nLanguage: null\nCountry: null\n'Account name': null\nPublication: null\n'Default language': null\nSubscriptions: null\nIssue: null\nNumber: null\nSection: null\nKeywords: null\nTopic: null\n'URL Name': null\n'Left to pay': null\nActive: null\nTrial: null\nNext: null\nPrevious: null\nTranslate: null\nView: null\n'Scheduled Publishing': null\nTime: null\nAction: null\n'Schedule a new action': null\n'Scheduling a new publish action': null\n'Delete scheduled publish action': null\nDate/Time: null\n'You must select an action.': null\n'You do not have the right to schedule issues or articles for automatic publishing.': null\n'Front page': null\n'Section page': null\n'Show on front page': null\n'Remove from front page': null\n'Show on section page': null\n'Remove from section page': null\nActions: null\nPublishing: null\nShow: null\nRemove: null\n'Article Types': null\n'Staff User Types': null\nPublications: null\nIssues: null\nSections: null\nArticles: null\nImages: null\nChange: null\n'Add new issue': null\n'Section Template': null\n'Article Template': null\n'Default Language': null\n'Paid Period': null\nPreview: null\n'You must fill in the $1 field.': null\nError: null\n'Invalid input: $1': null\n'Language does not exist.': null\n'Publication does not exist.': null\n'Issue does not exist.': null\n'You must select a language.': null\n'Section does not exist.': null\n'No articles.': null\n'Article does not exist.': null\n'Image does not exist.': null\n'Access denied': null\n'Invalid parameters received': null\n'Add new article': null\nStatus: null\nPublished: null\n'Not published': null\nSubmitted: null\nNew: null\nArticle: null\nPublish: null\nUnpublish: null\nUnlock: null\nUploaded: null\nYYYY-MM-DD: null\nSubmit: null\nImage: null\nDescription: null\nPhotographer: null\nPlace: null\nDate: null\nThumbnail: null\n'In use': null\n'Additional searches': null\n'Most Recently Added': null\n'Most Recently Modified': null\n'$1 images found': null\n'Reset search conditions': null\n'Image number': null\nUsers: null\nLocalizer: null\n'Adding new translation': null\n'No more languages.': null\n'The $1 field may only contain letters, digits and underscore (_) character.': null\n'Add new publication': null\n'Upload new template': null\n'Add new staff member': null\n'Staff member deleted.': null\n'Add new subscriber': null\n'Add new user type': null\n'Add new article type': null\n'Add new country': null\n'Add new language': null\n'View logs': null\n'Change your password': null\n'Your Articles': null\n'Submitted Articles': null\nLogs: null\n'There are $1 article(s) left.': null\n'There are $1 issues(s) left.': null\n'There are $1 section(s) left.': null\n'There are $1 publication(s) left.': null\n'There are $1 countries left.': null\n'Name <SMALL>(click to edit)</SMALL>': null\n'Add new subscription': null\n'You do not have the right to add subscriptions.': null\n'Adding subscription': null\n'Delete subscription': null\n'You do not have the right to delete subscriptions.': null\n'No such subscription.': null\nYes: null\nNo: null\nClose: null\n'No issues.': null\n'Back to Edit Article': null\n'No topics': null\n'You do not have the right to add articles.': null\nStart: null\nDays: null\n'The sections could not be added successfully. Some of them were already added !': null\n'Add another': null\nCancel: null\nDone: null\nOK: null\nSave: null\nSearch: null\n'Make a selection': null\n'You must input a number greater than 0 into the $1 field.': null\n'You must input a valid date.': null\n'Add new field': null\n'Article automatic publishing schedule': null\n'Are you sure you want to delete this scheduled action?': null\nUnlink: null\n'Are you sure you want to delete the image $1?': null\n'No such issue.': null\n'Are you sure you want to delete the subscription to the publication $1?': null\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': null\nGB: null\nMB: null\nKB: null\nbytes: null\nAttach: null\nBack: null\nFile: null\n'Save and Close': null\nAdd: null\n'Select All': null\n'Select None': null\n'Add Event': null\nN/A: null\n'On Front Page': null\n'On Section Page': null\n'Created by': null\n'Creation date': null\n'Publication List': null\n'Issue List': null\n'Section List': null\nAll: null\nduplicate: null\nmove: null\nMove: null\n'From:': null\n'Date:': null\nHidden: null\nComments: null\nComment: null\nApproved: null\nSubject: null\n'IP address:': null\n'Email:': null\nAuthor: null\n'Article name': null\n'Hide article': null\n'Show article': null\n'Article Type Fields': null\n'Article Images': null\n'Log Messages': null\n'Article Files': null\n'Article Comments': null\n'Are you sure you want to deactivate the subscription?': null\n'Are you sure you want to activate the subscription?': null\nOther: null\n'Time:': null\n'No events.': null\n'Default templates': null\n'System Preferences': null\n'The date must be in the future.': null\nSend: null\n'Thank you.': null\n'Please take a minute to send us an email.': null\n(optional): null\n'The URL you entered is invalid: $1': null\nReads: null\n'Publish with issue': null\n'Universal List': null\n'Invalid security token!': null\nAuthors: null\nTitle: null\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.lv.yml",
    "content": "Plugins: null\n'Manage Plugins': null\nAccount: null\n'Items per page': null\n'Add new': null\nHome: null\nLogout: null\nMore...: null\nContent: null\nLanguages: null\nCountries: null\nThemes: null\nTopics: null\nConfigure: null\n'Image Archive': null\n'Add Article': null\nFields: null\nDelete: null\nType: null\nName: null\nCode: null\nEdit: null\nLogin: null\nPassword: null\nSite: null\nPath: null\n'Go up': null\nURL: null\nOrder: null\nHide: null\nDuplicate: null\nSubscription: null\nexpires: null\nstarts: null\nbefore: null\nafter: null\non: null\nstatus: null\nactive: null\ninactive: null\nSubscribers: null\nStaff: null\n'Select destination': null\n'No languages': null\n'---Select language---': null\n'No publications': null\n'---Select publication---': null\n'No issues': null\n'---Select issue---': null\n'No sections': null\n'---Select section---': null\nLanguage: null\nCountry: null\n'Account name': null\nPublication: null\n'Default language': null\nSubscriptions: null\nIssue: null\nNumber: null\nSection: null\nKeywords: null\nTopic: null\n'URL Name': null\n'Left to pay': null\nActive: null\nTrial: null\nNext: null\nPrevious: null\nTranslate: null\nView: null\n'Scheduled Publishing': null\nTime: null\nAction: null\n'Schedule a new action': null\n'Scheduling a new publish action': null\n'Delete scheduled publish action': null\nDate/Time: null\n'You must select an action.': null\n'You do not have the right to schedule issues or articles for automatic publishing.': null\n'Front page': null\n'Section page': null\n'Show on front page': null\n'Remove from front page': null\n'Show on section page': null\n'Remove from section page': null\nActions: null\nPublishing: null\nShow: null\nRemove: null\n'Article Types': null\n'Staff User Types': null\nPublications: null\nIssues: null\nSections: null\nArticles: null\nImages: null\nChange: null\n'Add new issue': null\n'Section Template': null\n'Article Template': null\n'Default Language': null\n'Paid Period': null\nPreview: null\n'You must fill in the $1 field.': null\nError: null\n'Invalid input: $1': null\n'Language does not exist.': null\n'Publication does not exist.': null\n'Issue does not exist.': null\n'You must select a language.': null\n'Section does not exist.': null\n'No articles.': null\n'Article does not exist.': null\n'Image does not exist.': null\n'Access denied': null\n'Invalid parameters received': null\n'Add new article': null\nStatus: null\nPublished: null\n'Not published': null\nSubmitted: null\nNew: null\nArticle: null\nPublish: null\nUnpublish: null\nUnlock: null\nUploaded: null\nYYYY-MM-DD: null\nSubmit: null\nImage: null\nDescription: null\nPhotographer: null\nPlace: null\nDate: null\nThumbnail: null\n'In use': null\n'Additional searches': null\n'Most Recently Added': null\n'Most Recently Modified': null\n'$1 images found': null\n'Reset search conditions': null\n'Image number': null\nUsers: null\nLocalizer: null\n'Adding new translation': null\n'No more languages.': null\n'The $1 field may only contain letters, digits and underscore (_) character.': null\n'Add new publication': null\n'Upload new template': null\n'Add new staff member': null\n'Staff member deleted.': null\n'Add new subscriber': null\n'Add new user type': null\n'Add new article type': null\n'Add new country': null\n'Add new language': null\n'View logs': null\n'Change your password': null\n'Your Articles': null\n'Submitted Articles': null\nLogs: null\n'There are $1 article(s) left.': null\n'There are $1 issues(s) left.': null\n'There are $1 section(s) left.': null\n'There are $1 publication(s) left.': null\n'There are $1 countries left.': null\n'Name <SMALL>(click to edit)</SMALL>': null\n'Add new subscription': null\n'You do not have the right to add subscriptions.': null\n'Adding subscription': null\n'Delete subscription': null\n'You do not have the right to delete subscriptions.': null\n'No such subscription.': null\nYes: null\nNo: null\nClose: null\n'No issues.': null\n'Back to Edit Article': null\n'No topics': null\n'You do not have the right to add articles.': null\nStart: null\nDays: null\n'The sections could not be added successfully. Some of them were already added !': null\n'Add another': null\nCancel: null\nDone: null\nOK: null\nSave: null\nSearch: null\n'Make a selection': null\n'You must input a number greater than 0 into the $1 field.': null\n'You must input a valid date.': null\n'Add new field': null\n'Article automatic publishing schedule': null\n'Are you sure you want to delete this scheduled action?': null\nUnlink: null\n'Are you sure you want to delete the image $1?': null\n'No such issue.': null\n'Are you sure you want to delete the subscription to the publication $1?': null\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': null\nGB: null\nMB: null\nKB: null\nbytes: null\nAttach: null\nBack: null\nFile: null\n'Save and Close': null\nAdd: null\n'Select All': null\n'Select None': null\n'Add Event': null\nN/A: null\n'On Front Page': null\n'On Section Page': null\n'Created by': null\n'Creation date': null\n'Publication List': null\n'Issue List': null\n'Section List': null\nAll: null\nduplicate: null\nmove: null\nMove: null\n'From:': null\n'Date:': null\nHidden: null\nComments: null\nComment: null\nApproved: null\nSubject: null\n'IP address:': null\n'Email:': null\nAuthor: null\n'Article name': null\n'Hide article': null\n'Show article': null\n'Article Type Fields': null\n'Article Images': null\n'Log Messages': null\n'Article Files': null\n'Article Comments': null\n'Are you sure you want to deactivate the subscription?': null\n'Are you sure you want to activate the subscription?': null\nOther: null\n'Time:': null\n'No events.': null\n'Default templates': null\n'System Preferences': null\n'The date must be in the future.': null\nSend: null\n'Thank you.': null\n'Please take a minute to send us an email.': null\n(optional): null\n'The URL you entered is invalid: $1': null\nReads: null\n'Publish with issue': null\n'Universal List': null\n'Invalid security token!': null\nAuthors: null\nTitle: null\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.mr.yml",
    "content": "Plugins: null\n'Manage Plugins': null\nAccount: null\n'Items per page': null\n'Add new': null\nHome: null\nLogout: null\nMore...: null\nContent: null\nLanguages: null\nCountries: null\nThemes: null\nTopics: null\nConfigure: null\n'Image Archive': null\n'Add Article': null\nFields: null\nDelete: null\nType: null\nName: null\nCode: null\nEdit: null\nLogin: null\nPassword: null\nSite: null\nPath: null\n'Go up': null\nURL: null\nOrder: null\nHide: null\nDuplicate: null\nSubscription: null\nexpires: null\nstarts: null\nbefore: null\nafter: null\non: null\nstatus: null\nactive: null\ninactive: null\nSubscribers: null\nStaff: null\n'Select destination': null\n'No languages': null\n'---Select language---': null\n'No publications': null\n'---Select publication---': null\n'No issues': null\n'---Select issue---': null\n'No sections': null\n'---Select section---': null\nLanguage: null\nCountry: null\n'Account name': null\nPublication: null\n'Default language': null\nSubscriptions: null\nIssue: null\nNumber: null\nSection: null\nKeywords: null\nTopic: null\n'URL Name': null\n'Left to pay': null\nActive: null\nTrial: null\nNext: null\nPrevious: null\nTranslate: null\nView: null\n'Scheduled Publishing': null\nTime: null\nAction: null\n'Schedule a new action': null\n'Scheduling a new publish action': null\n'Delete scheduled publish action': null\nDate/Time: null\n'You must select an action.': null\n'You do not have the right to schedule issues or articles for automatic publishing.': null\n'Front page': null\n'Section page': null\n'Show on front page': null\n'Remove from front page': null\n'Show on section page': null\n'Remove from section page': null\nActions: null\nPublishing: null\nShow: null\nRemove: null\n'Article Types': null\n'Staff User Types': null\nPublications: null\nIssues: null\nSections: null\nArticles: null\nImages: null\nChange: null\n'Add new issue': null\n'Section Template': null\n'Article Template': null\n'Default Language': null\n'Paid Period': null\nPreview: null\n'You must fill in the $1 field.': null\nError: null\n'Invalid input: $1': null\n'Language does not exist.': null\n'Publication does not exist.': null\n'Issue does not exist.': null\n'You must select a language.': null\n'Section does not exist.': null\n'No articles.': null\n'Article does not exist.': null\n'Image does not exist.': null\n'Access denied': null\n'Invalid parameters received': null\n'Add new article': null\nStatus: null\nPublished: null\n'Not published': null\nSubmitted: null\nNew: null\nArticle: null\nPublish: null\nUnpublish: null\nUnlock: null\nUploaded: null\nYYYY-MM-DD: null\nSubmit: null\nImage: null\nDescription: null\nPhotographer: null\nPlace: null\nDate: null\nThumbnail: null\n'In use': null\n'Additional searches': null\n'Most Recently Added': null\n'Most Recently Modified': null\n'$1 images found': null\n'Reset search conditions': null\n'Image number': null\nUsers: null\nLocalizer: null\n'Adding new translation': null\n'No more languages.': null\n'The $1 field may only contain letters, digits and underscore (_) character.': null\n'Add new publication': null\n'Upload new template': null\n'Add new staff member': null\n'Staff member deleted.': null\n'Add new subscriber': null\n'Add new user type': null\n'Add new article type': null\n'Add new country': null\n'Add new language': null\n'View logs': null\n'Change your password': null\n'Your Articles': null\n'Submitted Articles': null\nLogs: null\n'There are $1 article(s) left.': null\n'There are $1 issues(s) left.': null\n'There are $1 section(s) left.': null\n'There are $1 publication(s) left.': null\n'There are $1 countries left.': null\n'Name <SMALL>(click to edit)</SMALL>': null\n'Add new subscription': null\n'You do not have the right to add subscriptions.': null\n'Adding subscription': null\n'Delete subscription': null\n'You do not have the right to delete subscriptions.': null\n'No such subscription.': null\nYes: null\nNo: null\nClose: null\n'No issues.': null\n'Back to Edit Article': null\n'No topics': null\n'You do not have the right to add articles.': null\nStart: null\nDays: null\n'The sections could not be added successfully. Some of them were already added !': null\n'Add another': null\nCancel: null\nDone: null\nOK: null\nSave: null\nSearch: null\n'Make a selection': null\n'You must input a number greater than 0 into the $1 field.': null\n'You must input a valid date.': null\n'Add new field': null\n'Article automatic publishing schedule': null\n'Are you sure you want to delete this scheduled action?': null\nUnlink: null\n'Are you sure you want to delete the image $1?': null\n'No such issue.': null\n'Are you sure you want to delete the subscription to the publication $1?': null\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': null\nGB: null\nMB: null\nKB: null\nbytes: null\nAttach: null\nBack: null\nFile: null\n'Save and Close': null\nAdd: null\n'Select All': null\n'Select None': null\n'Add Event': null\nN/A: null\n'On Front Page': null\n'On Section Page': null\n'Created by': null\n'Creation date': null\n'Publication List': null\n'Issue List': null\n'Section List': null\nAll: null\nduplicate: null\nmove: null\nMove: null\n'From:': null\n'Date:': null\nHidden: null\nComments: null\nComment: null\nApproved: null\nSubject: null\n'IP address:': null\n'Email:': null\nAuthor: null\n'Article name': null\n'Hide article': null\n'Show article': null\n'Article Type Fields': null\n'Article Images': null\n'Log Messages': null\n'Article Files': null\n'Article Comments': null\n'Are you sure you want to deactivate the subscription?': null\n'Are you sure you want to activate the subscription?': null\nOther: null\n'Time:': null\n'No events.': null\n'Default templates': null\n'System Preferences': null\n'The date must be in the future.': null\nSend: null\n'Thank you.': null\n'Please take a minute to send us an email.': null\n(optional): null\n'The URL you entered is invalid: $1': null\nReads: null\n'Publish with issue': null\n'Universal List': null\n'Invalid security token!': null\nAuthors: null\nTitle: null\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.nb_NO.yml",
    "content": "Plugins: null\n'Manage Plugins': null\nAccount: null\n'Items per page': null\n'Add new': null\nHome: null\nLogout: null\nMore...: null\nContent: null\nLanguages: null\nCountries: null\nThemes: null\nTopics: null\nConfigure: null\n'Image Archive': null\n'Add Article': null\nFields: null\nDelete: null\nType: null\nName: null\nCode: null\nEdit: null\nLogin: null\nPassword: null\nSite: null\nPath: null\n'Go up': null\nURL: null\nOrder: null\nHide: null\nDuplicate: null\nSubscription: null\nexpires: null\nstarts: null\nbefore: null\nafter: null\non: null\nstatus: null\nactive: null\ninactive: null\nSubscribers: null\nStaff: null\n'Select destination': null\n'No languages': null\n'---Select language---': null\n'No publications': null\n'---Select publication---': null\n'No issues': null\n'---Select issue---': null\n'No sections': null\n'---Select section---': null\nLanguage: null\nCountry: null\n'Account name': null\nPublication: null\n'Default language': null\nSubscriptions: null\nIssue: null\nNumber: null\nSection: null\nKeywords: null\nTopic: null\n'URL Name': null\n'Left to pay': null\nActive: null\nTrial: null\nNext: null\nPrevious: null\nTranslate: null\nView: null\n'Scheduled Publishing': null\nTime: null\nAction: null\n'Schedule a new action': null\n'Scheduling a new publish action': null\n'Delete scheduled publish action': null\nDate/Time: null\n'You must select an action.': null\n'You do not have the right to schedule issues or articles for automatic publishing.': null\n'Front page': null\n'Section page': null\n'Show on front page': null\n'Remove from front page': null\n'Show on section page': null\n'Remove from section page': null\nActions: null\nPublishing: null\nShow: null\nRemove: null\n'Article Types': null\n'Staff User Types': null\nPublications: null\nIssues: null\nSections: null\nArticles: null\nImages: null\nChange: null\n'Add new issue': null\n'Section Template': null\n'Article Template': null\n'Default Language': null\n'Paid Period': null\nPreview: null\n'You must fill in the $1 field.': null\nError: null\n'Invalid input: $1': null\n'Language does not exist.': null\n'Publication does not exist.': null\n'Issue does not exist.': null\n'You must select a language.': null\n'Section does not exist.': null\n'No articles.': null\n'Article does not exist.': null\n'Image does not exist.': null\n'Access denied': null\n'Invalid parameters received': null\n'Add new article': null\nStatus: null\nPublished: null\n'Not published': null\nSubmitted: null\nNew: null\nArticle: null\nPublish: null\nUnpublish: null\nUnlock: null\nUploaded: null\nYYYY-MM-DD: null\nSubmit: null\nImage: null\nDescription: null\nPhotographer: null\nPlace: null\nDate: null\nThumbnail: null\n'In use': null\n'Additional searches': null\n'Most Recently Added': null\n'Most Recently Modified': null\n'$1 images found': null\n'Reset search conditions': null\n'Image number': null\nUsers: null\nLocalizer: null\n'Adding new translation': null\n'No more languages.': null\n'The $1 field may only contain letters, digits and underscore (_) character.': null\n'Add new publication': null\n'Upload new template': null\n'Add new staff member': null\n'Staff member deleted.': null\n'Add new subscriber': null\n'Add new user type': null\n'Add new article type': null\n'Add new country': null\n'Add new language': null\n'View logs': null\n'Change your password': null\n'Your Articles': null\n'Submitted Articles': null\nLogs: null\n'There are $1 article(s) left.': null\n'There are $1 issues(s) left.': null\n'There are $1 section(s) left.': null\n'There are $1 publication(s) left.': null\n'There are $1 countries left.': null\n'Name <SMALL>(click to edit)</SMALL>': null\n'Add new subscription': null\n'You do not have the right to add subscriptions.': null\n'Adding subscription': null\n'Delete subscription': null\n'You do not have the right to delete subscriptions.': null\n'No such subscription.': null\nYes: null\nNo: null\nClose: null\n'No issues.': null\n'Back to Edit Article': null\n'No topics': null\n'You do not have the right to add articles.': null\nStart: null\nDays: null\n'The sections could not be added successfully. Some of them were already added !': null\n'Add another': null\nCancel: null\nDone: null\nOK: null\nSave: null\nSearch: null\n'Make a selection': null\n'You must input a number greater than 0 into the $1 field.': null\n'You must input a valid date.': null\n'Add new field': null\n'Article automatic publishing schedule': null\n'Are you sure you want to delete this scheduled action?': null\nUnlink: null\n'Are you sure you want to delete the image $1?': null\n'No such issue.': null\n'Are you sure you want to delete the subscription to the publication $1?': null\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': null\nGB: null\nMB: null\nKB: null\nbytes: null\nAttach: null\nBack: null\nFile: null\n'Save and Close': null\nAdd: null\n'Select All': null\n'Select None': null\n'Add Event': null\nN/A: null\n'On Front Page': null\n'On Section Page': null\n'Created by': null\n'Creation date': null\n'Publication List': null\n'Issue List': null\n'Section List': null\nAll: null\nduplicate: null\nmove: null\nMove: null\n'From:': null\n'Date:': null\nHidden: null\nComments: null\nComment: null\nApproved: null\nSubject: null\n'IP address:': null\n'Email:': null\nAuthor: null\n'Article name': null\n'Hide article': null\n'Show article': null\n'Article Type Fields': null\n'Article Images': null\n'Log Messages': null\n'Article Files': null\n'Article Comments': null\n'Are you sure you want to deactivate the subscription?': null\n'Are you sure you want to activate the subscription?': null\nOther: null\n'Time:': null\n'No events.': null\n'Default templates': null\n'System Preferences': null\n'The date must be in the future.': null\nSend: null\n'Thank you.': null\n'Please take a minute to send us an email.': null\n(optional): null\n'The URL you entered is invalid: $1': null\nReads: null\n'Publish with issue': null\n'Universal List': null\n'Invalid security token!': null\nAuthors: null\nTitle: null\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.nl.yml",
    "content": "Plugins: null\n'Manage Plugins': null\nAccount: Profiel\n'Items per page': Items\n'Add new': 'Voeg nieuw toe'\nHome: Start\nLogout: Loguit\nMore...: Meer...\nContent: Inhoud\nLanguages: Talen\nCountries: Landen\nThemes: Sjablonen\nTopics: Onderwerpen\nConfigure: Instellingen\n'Image Archive': 'Afbeelding archief'\n'Add Article': 'Voeg artikel toe'\nFields: Velden\nDelete: Verwijderen\nType: Type\nName: Naam\nCode: Code\nEdit: Bewerken\nLogin: Login\nPassword: Wachtwoord\nSite: Pagina\nPath: Pad\n'Go up': 'Ga naar boven'\nURL: URL\nOrder: Volgorde\nHide: Verbergen\nDuplicate: Dupliceren\nSubscription: Abonnement\nexpires: verloopt\nstarts: begint\nbefore: voor\nafter: na\non: op\nstatus: status\nactive: actief\ninactive: inactief\nSubscribers: Abonnees\nStaff: Leiding\n'Select destination': 'Kies doel'\n'No languages': 'Geen talen'\n'---Select language---': '---Selecteer taal---'\n'No publications': 'Geen publicaties'\n'---Select publication---': '---Selecteer publicatie---'\n'No issues': 'Geen artikelen'\n'---Select issue---': '---Selecteer artikel---'\n'No sections': 'Geen rubrieken'\n'---Select section---': '---Selecteer rubriek--'\nLanguage: Taal\nCountry: Land\n'Account name': 'Profiel naam'\nPublication: Publicatie\n'Default language': 'Standaard taal'\nSubscriptions: Abonnementen\nIssue: Uitgave\nNumber: Nummer\nSection: Rubriek\nKeywords: Steekwoorden\nTopic: Onderwerp\n'URL Name': 'URL Naam'\n'Left to pay': 'Nog te betalen'\nActive: Actief\nTrial: Proefabonnement\nNext: Volgende\nPrevious: Vorige\nTranslate: Vertalen\nView: Weergave\n'Scheduled Publishing': 'Geplande publicatie'\nTime: Tijd\nAction: Actie\n'Schedule a new action': 'Plan een nieuwe actie'\n'Scheduling a new publish action': 'Plannen van een nieuwe publicatie actie'\n'Delete scheduled publish action': 'Wis een geplande publicatie actie'\nDate/Time: Datum/Tijd\n'You must select an action.': null\n'You do not have the right to schedule issues or articles for automatic publishing.': null\n'Front page': Voorpagina\n'Section page': Rubriekspagina\n'Show on front page': 'Toon op voorpagina'\n'Remove from front page': 'Verwijder van voorpagina'\n'Show on section page': 'Toon op rubriekspagina'\n'Remove from section page': 'Verwijder van rubriekspagina'\nActions: Acties\nPublishing: Publiceren\nShow: Tonen\nRemove: Verwijderen\n'Article Types': 'Artikel typen'\n'Staff User Types': 'Leidinggevende Gebruiker Types'\nPublications: Publicaties\nIssues: Uitgaven\nSections: Rubrieken\nArticles: Artikelen\nImages: Afbeeldingen\nChange: Verschil\n'Add new issue': 'Voeg een uitgave toe'\n'Section Template': Rubriekssjabloon\n'Article Template': Artikelsjabloon\n'Default Language': 'Standaard Taal'\n'Paid Period': 'Abonnement Tijd'\nPreview: Voorbeeld\n'You must fill in the $1 field.': null\nError: Fout\n'Invalid input: $1': 'Onjuiste invoer: $1'\n'Language does not exist.': 'Taal bestaat niet.'\n'Publication does not exist.': 'Publicatie bestaat niet.'\n'Issue does not exist.': 'Uitgave bestaat niet.'\n'You must select a language.': null\n'Section does not exist.': 'Rubriek bestaat niet.'\n'No articles.': 'Geen artikelen.'\n'Article does not exist.': 'Artikel bestaat niet.'\n'Image does not exist.': 'Afbeelding bestaat niet.'\n'Access denied': 'Toegang geweigerd'\n'Invalid parameters received': 'Verkeerde parameters ontvangen'\n'Add new article': 'Voeg nieuw artikel toe'\nStatus: Status\nPublished: Gepubliceerd\n'Not published': 'Niet gepubliceerd'\nSubmitted: Ingezonden\nNew: Nieuw\nArticle: Artikel\nPublish: Publiceer\nUnpublish: 'Trek in'\nUnlock: Open\nUploaded: Geupload\nYYYY-MM-DD: JJJJ-MM-DD\nSubmit: Sturen\nImage: Afbeelding\nDescription: Beschrijving\nPhotographer: Fotograaf\nPlace: Plaats\nDate: Datum\nThumbnail: Voorbeeld\n'In use': 'In gebruik'\n'Additional searches': 'Andere zoekopdrachten'\n'Most Recently Added': 'Meest Recent Toegevoegd'\n'Most Recently Modified': 'Meest Recent Gewijzicd'\n'$1 images found': '$1 afbeeldingen gevonden'\n'Reset search conditions': 'Reset zoek condities'\n'Image number': 'Afbeelding nummer'\nUsers: Gebruikers\nLocalizer: Nationaliseerder\n'Adding new translation': 'Toevoegen nieuwe vertaling'\n'No more languages.': 'Geen talen meer.'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'Het $1 veld mag alleen letters, cijfers en het laagstreepje (_) bevatten.'\n'Add new publication': 'Voeg nieuwe publicatie toe'\n'Upload new template': 'Upload een nieuw sjabloon'\n'Add new staff member': 'Voeg nieuwe leidinggevende toe'\n'Staff member deleted.': null\n'Add new subscriber': 'Voeg nieuwe abonnement toe'\n'Add new user type': 'Voeg nieuw gebruiker type toe'\n'Add new article type': 'Voeg nieuw artikel type toe'\n'Add new country': 'Voeg nieuw land toe'\n'Add new language': 'Voeg nieuwe taal toe'\n'View logs': 'Bekijk logboek'\n'Change your password': 'Verander uw wachtwoord'\n'Your Articles': 'Uw artikelen'\n'Submitted Articles': 'Toegevoegde actikelen'\nLogs: Logboeken\n'There are $1 article(s) left.': 'Er zijn $1 artikel(en) over.'\n'There are $1 issues(s) left.': 'Er zijn $1 uitgave(n) over.'\n'There are $1 section(s) left.': 'Er zijn $1 rubriek(en) over.'\n'There are $1 publication(s) left.': 'Er zijn $1 publicatie(s) over.'\n'There are $1 countries left.': 'Er zijn $1 land(en) over.'\n'Name <SMALL>(click to edit)</SMALL>': 'Naam <SMALL>(klik om te bewerken)</SMALL>'\n'Add new subscription': 'Voeg nieuw abonnement toe.'\n'You do not have the right to add subscriptions.': null\n'Adding subscription': 'Toevoegen abonnement'\n'Delete subscription': 'Verwijder abonnement'\n'You do not have the right to delete subscriptions.': null\n'No such subscription.': 'Abonnement bestaat niet.'\nYes: Ja\nNo: nee\nClose: Sluiten\n'No issues.': 'Geen uitgaven.'\n'Back to Edit Article': 'Terug naar Bewerk Artikel'\n'No topics': 'Geen onderwerpen'\n'You do not have the right to add articles.': null\nStart: Start\nDays: Dagen\n'The sections could not be added successfully. Some of them were already added !': 'De rubrieken konden niet worden toegevoegd omdat sommige al bestonden!'\n'Add another': 'Voeg ander toe'\nCancel: Annuleren\nDone: Klaar\nOK: OK\nSave: Opslaan\nSearch: Zoeken\n'Make a selection': 'Maak selectie'\n'You must input a number greater than 0 into the $1 field.': null\n'You must input a valid date.': null\n'Add new field': 'Voeg nieuw veld toe.'\n'Article automatic publishing schedule': 'Artikel automatische publicatie taak'\n'Are you sure you want to delete this scheduled action?': null\nUnlink: 'Verwijder relatie'\n'Are you sure you want to delete the image $1?': null\n'No such issue.': 'Uitgave bestaat niet.'\n'Are you sure you want to delete the subscription to the publication $1?': 'Weet u zeker dat u het abonnement van publicatie $1 wilt verwijderen?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Kon de wijzigingen van uitgave $1 niet opslaan. Zorg ervoor dat de uitgave URL naam $2 niet eerder werd gebruikt in publicatie $3.'\nGB: GB\nMB: MB\nKB: KB\nbytes: bytes\nAttach: Toevoegen\nBack: Terug\nFile: Bestand\n'Save and Close': 'Opslaan en sluiten'\nAdd: Toevoegen\n'Select All': 'Selecteer alles'\n'Select None': 'Selecteer niets'\n'Add Event': 'Voeg actie toe'\nN/A: N/A\n'On Front Page': 'Op Voorpagina'\n'On Section Page': 'Op rubriekspagina'\n'Created by': 'Gemaakt door'\n'Creation date': 'Gemaakt op'\n'Publication List': 'Publicatie lijst'\n'Issue List': 'Uitgaven lijst'\n'Section List': Rubrieksoverzicht\nAll: Alle\nduplicate: dupliceren\nmove: verplaatsen\nMove: Verplaats\n'From:': null\n'Date:': null\nHidden: null\nComments: null\nComment: null\nApproved: null\nSubject: null\n'IP address:': null\n'Email:': null\nAuthor: null\n'Article name': null\n'Hide article': null\n'Show article': null\n'Article Type Fields': null\n'Article Images': null\n'Log Messages': null\n'Article Files': null\n'Article Comments': null\n'Are you sure you want to deactivate the subscription?': null\n'Are you sure you want to activate the subscription?': null\nOther: null\n'Time:': null\n'No events.': 'Geen acties.'\n'Default templates': null\n'System Preferences': 'Systeem Voorkeuren'\n'The date must be in the future.': null\nSend: null\n'Thank you.': null\n'Please take a minute to send us an email.': null\n(optional): null\n'The URL you entered is invalid: $1': null\nReads: null\n'Publish with issue': null\n'Universal List': null\n'Invalid security token!': null\nAuthors: null\nTitle: null\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.pa.yml",
    "content": "Plugins: null\n'Manage Plugins': null\nAccount: null\n'Items per page': null\n'Add new': null\nHome: null\nLogout: null\nMore...: null\nContent: null\nLanguages: null\nCountries: null\nThemes: null\nTopics: null\nConfigure: null\n'Image Archive': null\n'Add Article': null\nFields: null\nDelete: null\nType: null\nName: null\nCode: null\nEdit: null\nLogin: null\nPassword: null\nSite: null\nPath: null\n'Go up': null\nURL: null\nOrder: null\nHide: null\nDuplicate: null\nSubscription: null\nexpires: null\nstarts: null\nbefore: null\nafter: null\non: null\nstatus: null\nactive: null\ninactive: null\nSubscribers: null\nStaff: null\n'Select destination': null\n'No languages': null\n'---Select language---': null\n'No publications': null\n'---Select publication---': null\n'No issues': null\n'---Select issue---': null\n'No sections': null\n'---Select section---': null\nLanguage: null\nCountry: null\n'Account name': null\nPublication: null\n'Default language': null\nSubscriptions: null\nIssue: null\nNumber: null\nSection: null\nKeywords: null\nTopic: null\n'URL Name': null\n'Left to pay': null\nActive: null\nTrial: null\nNext: null\nPrevious: null\nTranslate: null\nView: null\n'Scheduled Publishing': null\nTime: null\nAction: null\n'Schedule a new action': null\n'Scheduling a new publish action': null\n'Delete scheduled publish action': null\nDate/Time: null\n'You must select an action.': null\n'You do not have the right to schedule issues or articles for automatic publishing.': null\n'Front page': null\n'Section page': null\n'Show on front page': null\n'Remove from front page': null\n'Show on section page': null\n'Remove from section page': null\nActions: null\nPublishing: null\nShow: null\nRemove: null\n'Article Types': null\n'Staff User Types': null\nPublications: null\nIssues: null\nSections: null\nArticles: null\nImages: null\nChange: null\n'Add new issue': null\n'Section Template': null\n'Article Template': null\n'Default Language': null\n'Paid Period': null\nPreview: null\n'You must fill in the $1 field.': null\nError: null\n'Invalid input: $1': null\n'Language does not exist.': null\n'Publication does not exist.': null\n'Issue does not exist.': null\n'You must select a language.': null\n'Section does not exist.': null\n'No articles.': null\n'Article does not exist.': null\n'Image does not exist.': null\n'Access denied': null\n'Invalid parameters received': null\n'Add new article': null\nStatus: null\nPublished: null\n'Not published': null\nSubmitted: null\nNew: null\nArticle: null\nPublish: null\nUnpublish: null\nUnlock: null\nUploaded: null\nYYYY-MM-DD: null\nSubmit: null\nImage: null\nDescription: null\nPhotographer: null\nPlace: null\nDate: null\nThumbnail: null\n'In use': null\n'Additional searches': null\n'Most Recently Added': null\n'Most Recently Modified': null\n'$1 images found': null\n'Reset search conditions': null\n'Image number': null\nUsers: null\nLocalizer: null\n'Adding new translation': null\n'No more languages.': null\n'The $1 field may only contain letters, digits and underscore (_) character.': null\n'Add new publication': null\n'Upload new template': null\n'Add new staff member': null\n'Staff member deleted.': null\n'Add new subscriber': null\n'Add new user type': null\n'Add new article type': null\n'Add new country': null\n'Add new language': null\n'View logs': null\n'Change your password': null\n'Your Articles': null\n'Submitted Articles': null\nLogs: null\n'There are $1 article(s) left.': null\n'There are $1 issues(s) left.': null\n'There are $1 section(s) left.': null\n'There are $1 publication(s) left.': null\n'There are $1 countries left.': null\n'Name <SMALL>(click to edit)</SMALL>': null\n'Add new subscription': null\n'You do not have the right to add subscriptions.': null\n'Adding subscription': null\n'Delete subscription': null\n'You do not have the right to delete subscriptions.': null\n'No such subscription.': null\nYes: null\nNo: null\nClose: null\n'No issues.': null\n'Back to Edit Article': null\n'No topics': null\n'You do not have the right to add articles.': null\nStart: null\nDays: null\n'The sections could not be added successfully. Some of them were already added !': null\n'Add another': null\nCancel: null\nDone: null\nOK: null\nSave: null\nSearch: null\n'Make a selection': null\n'You must input a number greater than 0 into the $1 field.': null\n'You must input a valid date.': null\n'Add new field': null\n'Article automatic publishing schedule': null\n'Are you sure you want to delete this scheduled action?': null\nUnlink: null\n'Are you sure you want to delete the image $1?': null\n'No such issue.': null\n'Are you sure you want to delete the subscription to the publication $1?': null\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': null\nGB: null\nMB: null\nKB: null\nbytes: null\nAttach: null\nBack: null\nFile: null\n'Save and Close': null\nAdd: null\n'Select All': null\n'Select None': null\n'Add Event': null\nN/A: null\n'On Front Page': null\n'On Section Page': null\n'Created by': null\n'Creation date': null\n'Publication List': null\n'Issue List': null\n'Section List': null\nAll: null\nduplicate: null\nmove: null\nMove: null\n'From:': null\n'Date:': null\nHidden: null\nComments: null\nComment: null\nApproved: null\nSubject: null\n'IP address:': null\n'Email:': null\nAuthor: null\n'Article name': null\n'Hide article': null\n'Show article': null\n'Article Type Fields': null\n'Article Images': null\n'Log Messages': null\n'Article Files': null\n'Article Comments': null\n'Are you sure you want to deactivate the subscription?': null\n'Are you sure you want to activate the subscription?': null\nOther: null\n'Time:': null\n'No events.': null\n'Default templates': null\n'System Preferences': null\n'The date must be in the future.': null\nSend: null\n'Thank you.': null\n'Please take a minute to send us an email.': null\n(optional): null\n'The URL you entered is invalid: $1': null\nReads: null\n'Publish with issue': null\n'Universal List': null\n'Invalid security token!': null\nAuthors: null\nTitle: null\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.pl.yml",
    "content": "Plugins: Wtyczki\n'Manage Plugins': 'Zarządzanie Wtyczkami'\nAccount: Konto\n'Items per page': 'Rzeczy na stronie'\n'Add new': Dodaj\nHome: 'Strona główna'\nLogout: Wyloguj\nMore...: Więcej\nContent: Kontent\nLanguages: Języki\nCountries: Państwa\nThemes: Szablony\nTopics: Tematy\nConfigure: Konfiguracja\n'Image Archive': 'Archiwum zdjęć'\n'Add Article': 'Dodaj artykuł'\nFields: Pola\nDelete: Usuń\nType: Typ\nName: Nazwa\nCode: Kod\nEdit: Edycja\nLogin: Zaloguj\nPassword: Hasła\nSite: Strona\nPath: Ścieżka\n'Go up': 'W górę'\nURL: URL\nOrder: Kierunek\nHide: Schowaj\nDuplicate: Duplikat\nSubscription: Subskrypcja\nexpires: wygasa\nstarts: start\nbefore: przed\nafter: po\non: ' '\nstatus: status\nactive: aktywne\ninactive: nieaktywne\nSubscribers: Subskrynenci\nStaff: Pracownicy\n'Select destination': 'Wybierz cel'\n'No languages': 'Brak języków'\n'---Select language---': '---Wybierz język---'\n'No publications': 'Brak publikacji'\n'---Select publication---': '---Wybierz publikację---'\n'No issues': 'Brak artykułów'\n'---Select issue---': '---Wybierz artykuł---'\n'No sections': 'Brak sekcji'\n'---Select section---': '---Wybierz sekcję---'\nLanguage: Język\nCountry: Kraj\n'Account name': 'Nazwa konta'\nPublication: Publikacja\n'Default language': 'Domyślny język'\nSubscriptions: Subksrypcje\nIssue: Wydanie\nNumber: Numer\nSection: Sekcja\nKeywords: 'Słowa kluczowe'\nTopic: Temat\n'URL Name': 'Nazwa URL'\n'Left to pay': 'Pozostało do zapłaty'\nActive: Aktywne\nTrial: Próbne\nNext: Następny\nPrevious: Poprzedni\nTranslate: Przetłumacz\nView: Widok\n'Scheduled Publishing': 'Publikacje zaplanowane'\nTime: Czas\nAction: Akcja\n'Schedule a new action': 'Zaplanuj nową akcję'\n'Scheduling a new publish action': 'Planowanie nowej akcji'\n'Delete scheduled publish action': 'Usuń zaplanowaną akcję'\nDate/Time: Data/Czas\n'You must select an action.': 'Musisz wybrać akcję.'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'Nie masz praw aby planować wydania albo artykuły do automatycznego publikowania'\n'Front page': 'Strona główna'\n'Section page': 'Strona sekcji'\n'Show on front page': 'Pokaż na stronie głównej'\n'Remove from front page': 'Usuń ze strony głównej'\n'Show on section page': 'Pokaż na stronie sekcji'\n'Remove from section page': 'Usuń ze strony sekcji'\nActions: Akcje\nPublishing: Publikowanie\nShow: Pokaż\nRemove: Usuń\n'Article Types': 'Typy artykułów'\n'Staff User Types': 'Typu użytkowników redakcji'\nPublications: Publikacje\nIssues: Wydania\nSections: Sekcje\nArticles: Artykuły\nImages: Zdjęcia\nChange: Zmień\n'Add new issue': 'Dodaj nowe wydanie'\n'Section Template': 'Szablok sekcji'\n'Article Template': 'Szablon artykułu'\n'Default Language': 'Domyślny język'\n'Paid Period': 'Okres płatny'\nPreview: Podgląd\n'You must fill in the $1 field.': 'Musisz wypełnić pole $1'\nError: Błąd\n'Invalid input: $1': 'Nieprawidłowe wprowadzenie: $1'\n'Language does not exist.': 'Język nie istnieje.'\n'Publication does not exist.': 'Publikacja nie istnieje'\n'Issue does not exist.': 'Wydanie nie istnieje.'\n'You must select a language.': 'Musisz wybrać język.'\n'Section does not exist.': 'Sekcja nie istnieje.'\n'No articles.': 'Brak artykułów.'\n'Article does not exist.': 'Artykuł nie isntnieje.'\n'Image does not exist.': 'Zdjęcie nie istnieje.'\n'Access denied': 'Dostęp zabroniony'\n'Invalid parameters received': 'Otrzymano niewłaściwe parametry'\n'Add new article': 'Dodaj nowy artykuł'\nStatus: Status\nPublished: Opublikowane\n'Not published': Nieopublikowane\nSubmitted: Wysłane\nNew: Nowy\nArticle: Artykuł\nPublish: Publikuj\nUnpublish: 'Cofnij publikację'\nUnlock: Odblokuj\nUploaded: Wgrane\nYYYY-MM-DD: RRRR-MM-DD\nSubmit: Wyślij\nImage: Zdjęcie\nDescription: Opis\nPhotographer: Fotograf\nPlace: Miejsce\nDate: Data\nThumbnail: Miniaturka\n'In use': 'W użyciu'\n'Additional searches': 'Dodatkowe wyszukiwania'\n'Most Recently Added': 'Ostatnio dodane'\n'Most Recently Modified': 'Ostatnio modyfikowane'\n'$1 images found': 'Znaleziono zdjęc: $1'\n'Reset search conditions': 'Resetuj warunki wyszukiwania'\n'Image number': 'Liczba zdjęć'\nUsers: Użytkownicy\nLocalizer: Lokalizator\n'Adding new translation': 'Dodawanie nowego tłumaczenia'\n'No more languages.': 'Nie ma więcej języków'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'Pole $1 może jedynie zawierać litery, cyfry i podkreślnik (_).'\n'Add new publication': 'Dodaj nową publikację'\n'Upload new template': 'Dodaj nowy szablok'\n'Add new staff member': 'Dodaj członka redakcji'\n'Staff member deleted.': 'Członek zespołu został usunięty.'\n'Add new subscriber': 'Dodaj subskrynenta'\n'Add new user type': 'Dodaj nowy typ użytkownika'\n'Add new article type': 'Dodaj nowy typ artykułu'\n'Add new country': 'Dodaj nowy kraj'\n'Add new language': 'Dodaj nowy język'\n'View logs': 'Zobacz logi'\n'Change your password': 'Zmień hasło'\n'Your Articles': 'Twoje Artykuły'\n'Submitted Articles': 'Wysłane artykuły'\nLogs: Logi\n'There are $1 article(s) left.': 'Pozostało znaków: $1'\n'There are $1 issues(s) left.': 'Pozostało wydań: $1'\n'There are $1 section(s) left.': 'Pozostało sekcji: $1'\n'There are $1 publication(s) left.': 'Pozostało publikacji: $1'\n'There are $1 countries left.': 'Pozostało państw: $1'\n'Name <SMALL>(click to edit)</SMALL>': 'Imię <SMALL>(kliknij aby edytować)</SMALL>'\n'Add new subscription': 'Dodaj nową subskrypcję'\n'You do not have the right to add subscriptions.': 'Nie masz praw aby dodać subskrypcję.'\n'Adding subscription': 'Dodawanie subskrypcji'\n'Delete subscription': 'Usuń subskrypcję'\n'You do not have the right to delete subscriptions.': 'Nie masz praw aby usunąć subskrypcję.'\n'No such subscription.': 'Subskrypcja nie istnieje.'\nYes: Tak\nNo: Nie\nClose: Zamknij\n'No issues.': 'Brak wydań.'\n'Back to Edit Article': 'Powrót do edycji artykułu'\n'No topics': 'Brak tematów'\n'You do not have the right to add articles.': 'Nie masz wystarczających praw aby dodawać artykuły'\nStart: Start\nDays: Dni\n'The sections could not be added successfully. Some of them were already added !': 'Sekcje nie zostały dodane. Niektóre z nich już istniały'\n'Add another': 'Dodaj inne'\nCancel: Anuluj\nDone: Zakończ\nOK: OK\nSave: Zapisz\nSearch: Szukaj\n'Make a selection': Wybierz\n'You must input a number greater than 0 into the $1 field.': 'Musisz podać numer większy niż 0 w pole $1'\n'You must input a valid date.': 'Podaj poprawną datę'\n'Add new field': 'Dodaj nowe pole'\n'Article automatic publishing schedule': 'Automatyczne publikowanie artykułu zaplanowane'\n'Are you sure you want to delete this scheduled action?': 'Czy na pewno chcesz usunąć zaplanowaną akcję?'\nUnlink: Odlinkuj\n'Are you sure you want to delete the image $1?': 'Czy na pewno chcesz usunąć zdjęcie $1?'\n'No such issue.': 'Brak takiego wydania.'\n'Are you sure you want to delete the subscription to the publication $1?': 'Czy na pewno chcesz usunąć subskrypcję publikacji $1?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Nie można zapisać zmian do wydania $1. Upewnij się, że nazwa URL wydania $2 nie została użyta w publikacji $3.'\nGB: GB\nMB: MB\nKB: KB\nbytes: bajtów\nAttach: Załącz\nBack: Powrót\nFile: Plik\n'Save and Close': 'Zapisz i zamknij'\nAdd: Dodaj\n'Select All': 'Zaznacz wszystko'\n'Select None': 'Odznacz wszystko'\n'Add Event': 'Dodaj wydarzenie'\nN/A: N/A\n'On Front Page': 'Na stronie głównej'\n'On Section Page': 'Na stronie sekcji'\n'Created by': 'Utworzone przez'\n'Creation date': 'Data utworzenia'\n'Publication List': 'Lista publikacji'\n'Issue List': 'Lista wydań'\n'Section List': 'Lista sekcji'\nAll: Wszystko\nduplicate: duplikat\nmove: przemieść\nMove: Przemieszczanie\n'From:': 'Od:'\n'Date:': 'Data:'\nHidden: Ukryte\nComments: Komentarze\nComment: Komentarz\nApproved: Zaakceptowane\nSubject: Temat\n'IP address:': 'Adres IP:'\n'Email:': 'Email:'\nAuthor: Autor\n'Article name': 'Nazwa artykułu'\n'Hide article': 'Schowaj artykuł'\n'Show article': 'Pokaż artykuł'\n'Article Type Fields': 'Pola typu artykułu'\n'Article Images': 'Zdjęcia artykułu'\n'Log Messages': 'Wiadomości z loga'\n'Article Files': 'Pliki artykułu'\n'Article Comments': 'Komentarze artykułu'\n'Are you sure you want to deactivate the subscription?': 'Czy na pewno chcesz deaktywować subskrypcję?'\n'Are you sure you want to activate the subscription?': 'Czy na pewno chcesz aktywować subskrypcję?'\nOther: Inne\n'Time:': 'Czas:'\n'No events.': 'Brak wydarzeń.'\n'Default templates': 'Domyślne szablony'\n'System Preferences': 'Preferencje systemowe'\n'The date must be in the future.': 'Data musi być w przyszłości.'\nSend: Wyślij\n'Thank you.': Dziękujemy.\n'Please take a minute to send us an email.': 'Poświęc minutę i wyślij nam email.'\n(optional): (opcjonalnie)\n'The URL you entered is invalid: $1': 'Podany adres URL jest niepoprawny: $1'\nReads: Przeczytano\n'Publish with issue': 'Opublikuj z wydaniem'\n'Universal List': 'Uniwersalna Lista'\n'Invalid security token!': 'Niepoprawny token bezpieczeństwa!'\nAuthors: Autorzy\nTitle: Tytuł\n'Edit country': 'Edytuj kraj'\n'Entry $1 prepared for publishing': 'Wpis $1 został przygotowany do publikacji'\n'Entry deleted': 'Wpis został usunięty'\n'Feed saved': 'Kanał został zapisany'\n'Item published': 'Element został opublikowany'\n'Settings saved': 'Ustawienia zostały zapisane'\n'Self-delete is not permitted.': 'Nie możesz usunąć sam siebie.'\n'Edit staff member $1': 'Edytuj $1'\n'Delete staff member $1': 'Usuń $1 z załogi'\n'Could not save user $1. Please make sure it does not already exist': 'Nie można utworzyć członka załogi, wygląda na to że $1 już istnieje'\n'Could not save user with e-mail address $1. Please make sure it does not already exist': 'Nie można utworzyć użytkownika z adresem email: $1. Wygląda na to że ktoś już używa tego adresu'\n'Changing user type would prevent you to manage users. Aborted.': 'Zmiana typu użytkownika pozbawi cię możliwości zarządzania użytkownikami. Przerwano.'\n'Staff member saved.': 'Członek załogi został zapisany.'\n'Permissions: $1': 'Uprawnienia: $1'\n'Change user account information': 'Zmień informacje o użytkowniku'\n'Staff management': Załoga\nUpdated: Zaktualizowany\nOptions: Opcje\nVerified: Zweryfikowany\nConfirm: Potwierdź\nat: w\npublished: opublikowany\nunpublished: nieopublikowany\nnopermissions: 'Nie masz wystarczających uprawnień.'\nimportantmessage: 'Ważna informacja'\nanonymous: Anonim\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.pl.yml~",
    "content": "Plugins: Wtyczki\n'Manage Plugins': 'Zarządzanie Wtyczkami'\nAccount: Konto\n'Items per page': 'Rzeczy na stronie'\n'Add new': Dodaj\nHome: 'Strona główna'\nLogout: Wyloguj\nMore...: Więcej\nContent: Kontent\nLanguages: Języki\nCountries: Państwa\nThemes: Szablony\nTopics: Tematy\nConfigure: Konfiguracja\n'Image Archive': 'Archiwum zdjęć'\n'Add Article': 'Dodaj artykuł'\nFields: Pola\nDelete: Usuń\nType: Typ\nName: Nazwa\nCode: Kod\nEdit: Edycja\nLogin: Zaloguj\nPassword: Hasła\nSite: Strona\nPath: Ścieżka\n'Go up': 'W górę'\nURL: URL\nOrder: Kierunek\nHide: Schowaj\nDuplicate: Duplikat\nSubscription: Subskrypcja\nexpires: wygasa\nstarts: start\nbefore: przed\nafter: po\non: ' '\nstatus: status\nactive: aktywne\ninactive: nieaktywne\nSubscribers: Subskrynenci\nStaff: Pracownicy\n'Select destination': 'Wybierz cel'\n'No languages': 'Brak języków'\n'---Select language---': '---Wybierz język---'\n'No publications': 'Brak publikacji'\n'---Select publication---': '---Wybierz publikację---'\n'No issues': 'Brak artykułów'\n'---Select issue---': '---Wybierz artykuł---'\n'No sections': 'Brak sekcji'\n'---Select section---': '---Wybierz sekcję---'\nLanguage: Język\nCountry: Kraj\n'Account name': 'Nazwa konta'\nPublication: Publikacja\n'Default language': 'Domyślny język'\nSubscriptions: Subksrypcje\nIssue: Wydanie\nNumber: Numer\nSection: Sekcja\nKeywords: 'Słowa kluczowe'\nTopic: Temat\n'URL Name': 'Nazwa URL'\n'Left to pay': 'Pozostało do zapłaty'\nActive: Aktywne\nTrial: Próbne\nNext: Następny\nPrevious: Poprzedni\nTranslate: Przetłumacz\nView: Widok\n'Scheduled Publishing': 'Publikacje zaplanowane'\nTime: Czas\nAction: Akcja\n'Schedule a new action': 'Zaplanuj nową akcję'\n'Scheduling a new publish action': 'Planowanie nowej akcji'\n'Delete scheduled publish action': 'Usuń zaplanowaną akcję'\nDate/Time: Data/Czas\n'You must select an action.': 'Musisz wybrać akcję.'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'Nie masz praw aby planować wydania albo artykuły do automatycznego publikowania'\n'Front page': 'Strona główna'\n'Section page': 'Strona sekcji'\n'Show on front page': 'Pokaż na stronie głównej'\n'Remove from front page': 'Usuń ze strony głównej'\n'Show on section page': 'Pokaż na stronie sekcji'\n'Remove from section page': 'Usuń ze strony sekcji'\nActions: Akcje\nPublishing: Publikowanie\nShow: Pokaż\nRemove: Usuń\n'Article Types': 'Typy artykułów'\n'Staff User Types': 'Typu użytkowników redakcji'\nPublications: Publikacje\nIssues: Wydania\nSections: Sekcje\nArticles: Artykuły\nImages: Zdjęcia\nChange: Zmień\n'Add new issue': 'Dodaj nowe wydanie'\n'Section Template': 'Szablok sekcji'\n'Article Template': 'Szablon artykułu'\n'Default Language': 'Domyślny język'\n'Paid Period': 'Okres płatny'\nPreview: Podgląd\n'You must fill in the $1 field.': 'Musisz wypełnić pole $1'\nError: Błąd\n'Invalid input: $1': 'Nieprawidłowe wprowadzenie: $1'\n'Language does not exist.': 'Język nie istnieje.'\n'Publication does not exist.': 'Publikacja nie istnieje'\n'Issue does not exist.': 'Wydanie nie istnieje.'\n'You must select a language.': 'Musisz wybrać język.'\n'Section does not exist.': 'Sekcja nie istnieje.'\n'No articles.': 'Brak artykułów.'\n'Article does not exist.': 'Artykuł nie isntnieje.'\n'Image does not exist.': 'Zdjęcie nie istnieje.'\n'Access denied': 'Dostęp zabroniony'\n'Invalid parameters received': 'Otrzymano niewłaściwe parametry'\n'Add new article': 'Dodaj nowy artykuł'\nStatus: Status\nPublished: Opublikowane\n'Not published': Nieopublikowane\nSubmitted: Wysłane\nNew: Nowy\nArticle: Artykuł\nPublish: Publikuj\nUnpublish: Nieopublikowane\nUnlock: Odblokuj\nUploaded: Wgrane\nYYYY-MM-DD: RRRR-MM-DD\nSubmit: Wyślij\nImage: Zdjęcie\nDescription: Opis\nPhotographer: Fotograf\nPlace: Miejsce\nDate: Data\nThumbnail: Miniaturka\n'In use': 'W użyciu'\n'Additional searches': 'Dodatkowe wyszukiwania'\n'Most Recently Added': 'Ostatnio dodane'\n'Most Recently Modified': 'Ostatnio modyfikowane'\n'$1 images found': 'Znaleziono zdjęc: $1'\n'Reset search conditions': 'Resetuj warunki wyszukiwania'\n'Image number': 'Liczba zdjęć'\nUsers: Użytkownicy\nLocalizer: Lokalizator\n'Adding new translation': 'Dodawanie nowego tłumaczenia'\n'No more languages.': 'Nie ma więcej języków'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'Pole $1 może jedynie zawierać litery, cyfry i podkreślnik (_).'\n'Add new publication': 'Dodaj nową publikację'\n'Upload new template': 'Dodaj nowy szablok'\n'Add new staff member': 'Dodaj członka redakcji'\n'Add new subscriber': 'Dodaj subskrynenta'\n'Add new user type': 'Dodaj nowy typ użytkownika'\n'Add new article type': 'Dodaj nowy typ artykułu'\n'Add new country': 'Dodaj nowy kraj'\n'Add new language': 'Dodaj nowy język'\n'View logs': 'Zobacz logi'\n'Change your password': 'Zmień hasło'\n'Your Articles': 'Twoje Artykuły'\n'Submitted Articles': 'Wysłane artykuły'\nLogs: Logi\n'There are $1 article(s) left.': 'Pozostało znaków: $1'\n'There are $1 issues(s) left.': 'Pozostało wydań: $1'\n'There are $1 section(s) left.': 'Pozostało sekcji: $1'\n'There are $1 publication(s) left.': 'Pozostało publikacji: $1'\n'There are $1 countries left.': 'Pozostało państw: $1'\n'Name <SMALL>(click to edit)</SMALL>': 'Imię <SMALL>(kliknij aby edytować)</SMALL>'\n'Add new subscription': 'Dodaj nową subskrypcję'\n'You do not have the right to add subscriptions.': 'Nie masz praw aby dodać subskrypcję.'\n'Adding subscription': 'Dodawanie subskrypcji'\n'Delete subscription': 'Usuń subskrypcję'\n'You do not have the right to delete subscriptions.': 'Nie masz praw aby usunąć subskrypcję.'\n'No such subscription.': 'Subskrypcja nie istnieje.'\nYes: Tak\nNo: Nie\nClose: Zamknij\n'No issues.': 'Brak wydań.'\n'Back to Edit Article': 'Powrót do edycji artykułu'\n'No topics': 'Brak tematów'\n'You do not have the right to add articles.': 'Nie masz wystarczających praw aby dodawać artykuły'\nStart: Start\nDays: Dni\n'The sections could not be added successfully. Some of them were already added !': 'Sekcje nie zostały dodane. Niektóre z nich już istniały'\n'Add another': 'Dodaj inne'\nCancel: Anuluj\nDone: Zakończ\nOK: OK\nSave: Zapisz\nSearch: Szukaj\n'Make a selection': Wybierz\n'You must input a number greater than 0 into the $1 field.': 'Musisz podać numer większy niż 0 w pole $1'\n'You must input a valid date.': 'Podaj poprawną datę'\n'Add new field': 'Dodaj nowe pole'\n'Article automatic publishing schedule': 'Automatyczne publikowanie artykułu zaplanowane'\n'Are you sure you want to delete this scheduled action?': 'Czy na pewno chcesz usunąć zaplanowaną akcję?'\nUnlink: Odlinkuj\n'Are you sure you want to delete the image $1?': 'Czy na pewno chcesz usunąć zdjęcie $1?'\n'No such issue.': 'Brak takiego wydania.'\n'Are you sure you want to delete the subscription to the publication $1?': 'Czy na pewno chcesz usunąć subskrypcję publikacji $1?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Nie można zapisać zmian do wydania $1. Upewnij się, że nazwa URL wydania $2 nie została użyta w publikacji $3.'\nGB: GB\nMB: MB\nKB: KB\nbytes: bajtów\nAttach: Załącz\nBack: Powrót\nFile: Plik\n'Save and Close': 'Zapisz i zamknij'\nAdd: Dodaj\n'Select All': 'Zaznacz wszystko'\n'Select None': 'Odznacz wszystko'\n'Add Event': 'Dodaj wydarzenie'\nN/A: N/A\n'On Front Page': 'Na stronie głównej'\n'On Section Page': 'Na stronie sekcji'\n'Created by': 'Utworzone przez'\n'Creation date': 'Data utworzenia'\n'Publication List': 'Lista publikacji'\n'Issue List': 'Lista wydań'\n'Section List': 'Lista sekcji'\nAll: Wszystko\nduplicate: duplikat\nmove: przemieść\nMove: Przemieszczanie\n'From:': 'Od:'\n'Date:': 'Data:'\nHidden: Ukryte\nComments: Komentarze\nComment: Komentarz\nApproved: Zaakceptowane\nSubject: Temat\n'IP address:': 'Adres IP:'\n'Email:': 'Email:'\nAuthor: Autor\n'Article name': 'Nazwa artykułu'\n'Hide article': 'Schowaj artykuł'\n'Show article': 'Pokaż artykuł'\n'Article Type Fields': 'Pola typu artykułu'\n'Article Images': 'Zdjęcia artykułu'\n'Log Messages': 'Wiadomości z loga'\n'Article Files': 'Pliki artykułu'\n'Article Comments': 'Komentarze artykułu'\n'Are you sure you want to deactivate the subscription?': 'Czy na pewno chcesz deaktywować subskrypcję?'\n'Are you sure you want to activate the subscription?': 'Czy na pewno chcesz aktywować subskrypcję?'\nOther: Inne\n'Time:': 'Czas:'\n'No events.': 'Brak wydarzeń.'\n'Default templates': 'Domyślne szablony'\n'System Preferences': 'Preferencje systemowe'\n'The date must be in the future.': 'Data musi być w przyszłości.'\nSend: Wyślij\n'Thank you.': Dziękujemy.\n'Please take a minute to send us an email.': 'Poświęc minutę i wyślij nam email.'\n(optional): (opcjonalnie)\n'The URL you entered is invalid: $1': 'Podany adres URL jest niepoprawny: $1'\nReads: Przeczytano\n'Publish with issue': 'Opublikuj z wydaniem'\n'Universal List': 'Uniwersalna Lista'\n'Invalid security token!': 'Niepoprawny token bezpieczeństwa!'\nAuthors: Autorzy\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.ps.yml",
    "content": "Plugins: null\n'Manage Plugins': null\nAccount: null\n'Items per page': null\n'Add new': null\nHome: null\nLogout: null\nMore...: null\nContent: null\nLanguages: null\nCountries: null\nThemes: null\nTopics: null\nConfigure: null\n'Image Archive': null\n'Add Article': null\nFields: null\nDelete: null\nType: null\nName: null\nCode: null\nEdit: null\nLogin: null\nPassword: null\nSite: null\nPath: null\n'Go up': null\nURL: null\nOrder: null\nHide: null\nDuplicate: null\nSubscription: null\nexpires: null\nstarts: null\nbefore: null\nafter: null\non: null\nstatus: null\nactive: null\ninactive: null\nSubscribers: null\nStaff: null\n'Select destination': null\n'No languages': null\n'---Select language---': null\n'No publications': null\n'---Select publication---': null\n'No issues': null\n'---Select issue---': null\n'No sections': null\n'---Select section---': null\nLanguage: null\nCountry: null\n'Account name': null\nPublication: null\n'Default language': null\nSubscriptions: null\nIssue: null\nNumber: null\nSection: null\nKeywords: null\nTopic: null\n'URL Name': null\n'Left to pay': null\nActive: null\nTrial: null\nNext: null\nPrevious: null\nTranslate: null\nView: null\n'Scheduled Publishing': null\nTime: null\nAction: null\n'Schedule a new action': null\n'Scheduling a new publish action': null\n'Delete scheduled publish action': null\nDate/Time: null\n'You must select an action.': null\n'You do not have the right to schedule issues or articles for automatic publishing.': null\n'Front page': null\n'Section page': null\n'Show on front page': null\n'Remove from front page': null\n'Show on section page': null\n'Remove from section page': null\nActions: null\nPublishing: null\nShow: null\nRemove: null\n'Article Types': null\n'Staff User Types': null\nPublications: null\nIssues: null\nSections: null\nArticles: null\nImages: null\nChange: null\n'Add new issue': null\n'Section Template': null\n'Article Template': null\n'Default Language': null\n'Paid Period': null\nPreview: null\n'You must fill in the $1 field.': null\nError: null\n'Invalid input: $1': null\n'Language does not exist.': null\n'Publication does not exist.': null\n'Issue does not exist.': null\n'You must select a language.': null\n'Section does not exist.': null\n'No articles.': null\n'Article does not exist.': null\n'Image does not exist.': null\n'Access denied': null\n'Invalid parameters received': null\n'Add new article': null\nStatus: null\nPublished: null\n'Not published': null\nSubmitted: null\nNew: null\nArticle: null\nPublish: null\nUnpublish: null\nUnlock: null\nUploaded: null\nYYYY-MM-DD: null\nSubmit: null\nImage: null\nDescription: null\nPhotographer: null\nPlace: null\nDate: null\nThumbnail: null\n'In use': null\n'Additional searches': null\n'Most Recently Added': null\n'Most Recently Modified': null\n'$1 images found': null\n'Reset search conditions': null\n'Image number': null\nUsers: null\nLocalizer: null\n'Adding new translation': null\n'No more languages.': null\n'The $1 field may only contain letters, digits and underscore (_) character.': null\n'Add new publication': null\n'Upload new template': null\n'Add new staff member': null\n'Staff member deleted.': null\n'Add new subscriber': null\n'Add new user type': null\n'Add new article type': null\n'Add new country': null\n'Add new language': null\n'View logs': null\n'Change your password': null\n'Your Articles': null\n'Submitted Articles': null\nLogs: null\n'There are $1 article(s) left.': null\n'There are $1 issues(s) left.': null\n'There are $1 section(s) left.': null\n'There are $1 publication(s) left.': null\n'There are $1 countries left.': null\n'Name <SMALL>(click to edit)</SMALL>': null\n'Add new subscription': null\n'You do not have the right to add subscriptions.': null\n'Adding subscription': null\n'Delete subscription': null\n'You do not have the right to delete subscriptions.': null\n'No such subscription.': null\nYes: null\nNo: null\nClose: null\n'No issues.': null\n'Back to Edit Article': null\n'No topics': null\n'You do not have the right to add articles.': null\nStart: null\nDays: null\n'The sections could not be added successfully. Some of them were already added !': null\n'Add another': null\nCancel: null\nDone: null\nOK: null\nSave: null\nSearch: null\n'Make a selection': null\n'You must input a number greater than 0 into the $1 field.': null\n'You must input a valid date.': null\n'Add new field': null\n'Article automatic publishing schedule': null\n'Are you sure you want to delete this scheduled action?': null\nUnlink: null\n'Are you sure you want to delete the image $1?': null\n'No such issue.': null\n'Are you sure you want to delete the subscription to the publication $1?': null\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': null\nGB: null\nMB: null\nKB: null\nbytes: null\nAttach: null\nBack: null\nFile: null\n'Save and Close': null\nAdd: null\n'Select All': null\n'Select None': null\n'Add Event': null\nN/A: null\n'On Front Page': null\n'On Section Page': null\n'Created by': null\n'Creation date': null\n'Publication List': null\n'Issue List': null\n'Section List': null\nAll: null\nduplicate: null\nmove: null\nMove: null\n'From:': null\n'Date:': null\nHidden: null\nComments: null\nComment: null\nApproved: null\nSubject: null\n'IP address:': null\n'Email:': null\nAuthor: null\n'Article name': null\n'Hide article': null\n'Show article': null\n'Article Type Fields': null\n'Article Images': null\n'Log Messages': null\n'Article Files': null\n'Article Comments': null\n'Are you sure you want to deactivate the subscription?': null\n'Are you sure you want to activate the subscription?': null\nOther: null\n'Time:': null\n'No events.': null\n'Default templates': null\n'System Preferences': null\n'The date must be in the future.': null\nSend: null\n'Thank you.': null\n'Please take a minute to send us an email.': null\n(optional): null\n'The URL you entered is invalid: $1': null\nReads: null\n'Publish with issue': null\n'Universal List': null\n'Invalid security token!': null\nAuthors: null\nTitle: null\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.pt.yml",
    "content": "Plugins: Plugins\n'Manage Plugins': 'Gerenciar plugins'\nAccount: Conta\n'Items per page': 'Items por página'\n'Add new': 'Adicionar Novo'\nHome: 'Página Principal'\nLogout: 'Terminar Sessão'\nMore...: Mais...\nContent: Conteúdo\nLanguages: Idiomas\nCountries: Países\nThemes: Modelos\nTopics: Temas\nConfigure: Configurar\n'Image Archive': 'Arquivo de Imagem'\n'Add Article': 'Adicionar Artigo'\nFields: Campos\nDelete: Eliminar\nType: Tipo\nName: Nome\nCode: Código\nEdit: Editar\nLogin: 'Entrar em Sessão'\nPassword: Palavra-Passe\nSite: Sítio\nPath: Caminho\n'Go up': 'Nivel Acima'\nURL: 'Endereço URL'\nOrder: Ordem\nHide: Esconder\nDuplicate: Duplicar\nSubscription: Assinatura\nexpires: expira\nstarts: inicio\nbefore: 'antes de'\nafter: após\non: em\nstatus: estado\nactive: activo\ninactive: inactivo\nSubscribers: Assinantes\nStaff: 'Pessoal Editorial'\n'Select destination': 'Seleccionar destino'\n'No languages': 'Não Existem Idiomas Definidos'\n'---Select language---': '--- Seleccione o Idioma ---'\n'No publications': 'Não Existem Publicações Definidas'\n'---Select publication---': '--- Selecione a Publicação ---'\n'No issues': 'Não Existem Artigos'\n'---Select issue---': '--- Selecione o Artigo ---'\n'No sections': 'Não Existem Secções Definidas'\n'---Select section---': '--- Seleccione a Secção ---'\nLanguage: Idioma\nCountry: País\n'Account name': 'Nome da Conta'\nPublication: Publicação\n'Default language': 'Idioma Padrão'\nSubscriptions: Assinaturas\nIssue: Edição\nNumber: Número\nSection: Secção\nKeywords: Palavras-Chave\nTopic: Tema\n'URL Name': 'Nome para o URL'\n'Left to pay': 'Por pagar'\nActive: Activo\nTrial: 'Teste (avaliação)'\nNext: Próximo\nPrevious: Anterior\nTranslate: Traduzir\nView: Ver\n'Scheduled Publishing': 'Tarefa de publicação agendada'\nTime: Hora\nAction: Acção\n'Schedule a new action': 'Programar tarefa de publicação'\n'Scheduling a new publish action': 'Agendar uma tarefa de publicação'\n'Delete scheduled publish action': 'Eliminar tarefa de publicação'\nDate/Time: Data/Hora\n'You must select an action.': 'Tem de seleccionar uma tarefa de publicação'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'Não tem permissões para agendar tarefa de publicação de Edições ou Artigos'\n'Front page': 'Página Principal'\n'Section page': 'Página de Secção'\n'Show on front page': 'Mostrar na Página Principal'\n'Remove from front page': 'Remover da Página Principal'\n'Show on section page': 'Mostrar na Página de Secção'\n'Remove from section page': 'Removar da Página de Secção'\nActions: Acções\nPublishing: Publicando\nShow: Mostrar\nRemove: Remover\n'Article Types': 'Tipo de Artigos'\n'Staff User Types': 'Tipos de Utilizadores (Pessoal Editorial)'\nPublications: Publicações\nIssues: Edições\nSections: Secções\nArticles: Artigos\nImages: Imagens\nChange: Alterar\n'Add new issue': 'Criar Edição'\n'Section Template': 'Modelo para Página de Secção'\n'Article Template': 'Modelo para Artigo'\n'Default Language': 'Idioma padrão'\n'Paid Period': 'Pago até'\nPreview: Pré-visualizar\n'You must fill in the $1 field.': 'O campo $1 tem de ser preenchido.'\nError: Erro\n'Invalid input: $1': 'Valor Inválido: $1'\n'Language does not exist.': 'Idioma inexistente.'\n'Publication does not exist.': 'Publicação inexistente.'\n'Issue does not exist.': 'Edições inexistente.'\n'You must select a language.': 'Seleccione o Idioma.'\n'Section does not exist.': 'Secção inexistente.'\n'No articles.': 'Não existem Artigos'\n'Article does not exist.': 'Artigo inexistente.'\n'Image does not exist.': 'Imagem inexistente.'\n'Access denied': 'Acesso negado'\n'Invalid parameters received': 'O parametro recebido é invalido'\n'Add new article': 'Criar Artigo'\nStatus: Estado\nPublished: Publicado\n'Not published': 'Não Publicado'\nSubmitted: Submetido\nNew: Novo\nArticle: Artigo\nPublish: Publicar\nUnpublish: 'Retirar da Publicação'\nUnlock: Desbloquear\nUploaded: Enviado\nYYYY-MM-DD: AAAA-MM-DD\nSubmit: 'Submeter à Apreciação'\nImage: 'Imagem '\nDescription: Descrição\nPhotographer: Fotógrafo\nPlace: Local\nDate: Data\nThumbnail: Miniatura\n'In use': 'Em uso'\n'Additional searches': 'Procura adicional'\n'Most Recently Added': 'Mais recentemente adicionados'\n'Most Recently Modified': 'Mais recentemente modificados'\n'$1 images found': '$1 imagens encontradas'\n'Reset search conditions': 'Limpar condições de busca'\n'Image number': 'Imagem Nº'\nUsers: Utilizadores\nLocalizer: Localizador\n'Adding new translation': 'Adicionando Tradução'\n'No more languages.': 'Não existem mais Idiomas'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'No Campo $1 só é possivel usar letras, digitos e underscore (_).'\n'Add new publication': 'Criar Publicação'\n'Upload new template': 'Criar Modelo'\n'Add new staff member': 'Adicionar utilizador (Pessoal Editorial)'\n'Staff member deleted.': null\n'Add new subscriber': 'Adicionar Assinante'\n'Add new user type': 'Criar Tipo de Utilizador'\n'Add new article type': 'Criar Tipo de Artigo'\n'Add new country': 'Criar País'\n'Add new language': 'Criar Idioma'\n'View logs': 'Ver Registos de Utilização'\n'Change your password': 'Alterar Palavra-Passe'\n'Your Articles': 'Os Meus Artigos'\n'Submitted Articles': 'Artigos Submetidos à Apreciação'\nLogs: Registos\n'There are $1 article(s) left.': 'Existe(m) ainda $1 Artigo(s).'\n'There are $1 issues(s) left.': 'Existe(m) ainda $1 Edição(ões).'\n'There are $1 section(s) left.': 'Existe(m) ainda $1 Secção(ões).'\n'There are $1 publication(s) left.': 'Existe(m) ainda $1 Publicação(ões).'\n'There are $1 countries left.': 'Existe(m) ainda $1 País(es).'\n'Name <SMALL>(click to edit)</SMALL>': 'Nome<SMALL>(carregue para alterar)</SMALL>'\n'Add new subscription': 'Criar Assinatura'\n'You do not have the right to add subscriptions.': 'Não tem permissão para Criar Assinaturas'\n'Adding subscription': 'Criando Assinatura'\n'Delete subscription': 'Apagar Assinatura'\n'You do not have the right to delete subscriptions.': 'Não tem Permissão para Apagar Assinaturas'\n'No such subscription.': 'Assinatura Desconhecida'\nYes: Sim\nNo: Não\nClose: Fechar\n'No issues.': 'Nº Edições'\n'Back to Edit Article': 'Voltar à edição do artigo'\n'No topics': 'Sem Tema'\n'You do not have the right to add articles.': 'Não tem permissões para adicionar Artigos.'\nStart: Inicio\nDays: Dias\n'The sections could not be added successfully. Some of them were already added !': 'As Secções pretendidas não poder ser criadas porque alguma(s) existia(m) anteriormente.'\n'Add another': 'Adicionar outro'\nCancel: Cancelar\nDone: Terminado\nOK: OK\nSave: Guardar\nSearch: Procurar\n'Make a selection': 'Efectuar selecção'\n'You must input a number greater than 0 into the $1 field.': 'Introduza um valor superior a 0 no campo $1.'\n'You must input a valid date.': 'Introduza uma data válida.'\n'Add new field': 'Adicionar novo Campo'\n'Article automatic publishing schedule': 'Publicação programada de artigos.'\n'Are you sure you want to delete this scheduled action?': 'Confirma eliminação de programação agendada?'\nUnlink: 'Desfazer ligação'\n'Are you sure you want to delete the image $1?': 'Confirma eliminação da imagem $1?'\n'No such issue.': 'Edição Desconhecida.'\n'Are you sure you want to delete the subscription to the publication $1?': 'Confirma eliminação da assinatura da publicação $1?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Não é possivel guardar as alterações à edição $1. Confirma se o nome para o URL $2 não se econtra a ser usado na publicação $3.'\nGB: GB\nMB: MB\nKB: KB\nbytes: bytes\nAttach: Anexar\nBack: Voltar\nFile: Ficheiro\n'Save and Close': 'Guardar e Fechar'\nAdd: Adicionar\n'Select All': 'Selecionar todos'\n'Select None': 'Limpar selecção'\n'Add Event': 'Adicionar evento'\nN/A: N/D\n'On Front Page': 'Na página principal'\n'On Section Page': 'Na página de secção'\n'Created by': 'Criado por'\n'Creation date': 'Data da criação'\n'Publication List': 'Lista de Publicações'\n'Issue List': 'Lista de Edições'\n'Section List': 'Lista de Secções'\nAll: Todos\nduplicate: duplicar\nmove: mover\nMove: Mover\n'From:': 'De:'\n'Date:': 'Data:'\nHidden: Oculto\nComments: Comentários\nComment: Comentário\nApproved: Aprovado\nSubject: Assunto\n'IP address:': 'Endereço IP:'\n'Email:': 'Endereço Electrónico:'\nAuthor: Autor\n'Article name': 'Nome do Artigo'\n'Hide article': 'Ocultar Artigo'\n'Show article': 'Mostrar Artigo'\n'Article Type Fields': 'Campos de tipo de artigo'\n'Article Images': 'Imagens de artigos'\n'Log Messages': 'Mensagens de Registo'\n'Article Files': 'Ficheiros de Artigos'\n'Article Comments': 'Comentártios do artigo'\n'Are you sure you want to deactivate the subscription?': 'Confirma inactivação da assinatura?'\n'Are you sure you want to activate the subscription?': 'Confirma a activação da Assinatura?'\nOther: Outros\n'Time:': 'Hora:'\n'No events.': 'Sem Eventos.'\n'Default templates': 'Modelos por Defeito'\n'System Preferences': 'Preferências do Sistema'\n'The date must be in the future.': 'A data espeficada tem de ser futura.'\nSend: Enviar\n'Thank you.': Abrigado.\n'Please take a minute to send us an email.': 'Por favor perca um minuto enviando-nos uma mensagem.'\n(optional): (opcional)\n'The URL you entered is invalid: $1': 'O Endereço introduzido é inválido: $1'\nReads: Leituras\n'Publish with issue': null\n'Universal List': null\n'Invalid security token!': null\nAuthors: Autores\nTitle: null\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.pt_BR.yml",
    "content": "Plugins: Plugins\n'Manage Plugins': 'Gerenciar plugins'\nAccount: Conta\n'Items per page': 'Items por página'\n'Add new': 'Adicionar Novo'\nHome: 'Página Principal'\nLogout: Logout\nMore...: Mais...\nContent: Conteúdo\nLanguages: Idiomas\nCountries: Países\nThemes: Temas\nTopics: Temas\nConfigure: Configurar\n'Image Archive': 'Arquivo de Imagem'\n'Add Article': 'Adicionar Artigo'\nFields: Campos\nDelete: Apagar\nType: Tipo\nName: Nome\nCode: Código\nEdit: Editar\nLogin: Login\nPassword: Senha\nSite: Site\nPath: Caminho\n'Go up': 'Nivel Acima'\nURL: 'Endereço URL'\nOrder: Ordem\nHide: Esconder\nDuplicate: Duplicar\nSubscription: Assinatura\nexpires: expira\nstarts: inicio\nbefore: 'antes '\nafter: depois\non: em\nstatus: status\nactive: ativo\ninactive: inativo\nSubscribers: Assinantes\nStaff: Equipe\n'Select destination': 'Selecionar destino'\n'No languages': 'Não Existem Idiomas Definidos'\n'---Select language---': '--- Selecione o Idioma ---'\n'No publications': 'Não Existem Publicações Definidas'\n'---Select publication---': '--- Selecione a Publicação ---'\n'No issues': 'Não Existem Artigos'\n'---Select issue---': '--- Selecione o Artigo ---'\n'No sections': 'Não Existem Seções Definidas'\n'---Select section---': '--- Selecione a Seção ---'\nLanguage: Idioma\nCountry: País\n'Account name': 'Nome da Conta'\nPublication: Publicação\n'Default language': 'Idioma Padrão'\nSubscriptions: Assinaturas\nIssue: Edição\nNumber: Número\nSection: Seção\nKeywords: Palavras-Chave\nTopic: Tema\n'URL Name': 'Nome para o URL'\n'Left to pay': 'Por pagar'\nActive: Ativo\nTrial: 'Teste (avaliação)'\nNext: Próximo\nPrevious: Anterior\nTranslate: Traduzir\nView: Ver\n'Scheduled Publishing': 'Tarefa de publicação agendada'\nTime: Hora\nAction: Ação\n'Schedule a new action': 'Programar tarefa de publicação'\n'Scheduling a new publish action': 'Agendar uma tarefa de publicação'\n'Delete scheduled publish action': 'Eliminar tarefa de publicação'\nDate/Time: Data/Hora\n'You must select an action.': 'Selecione uma tarefa de publicação'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'Não tem permissões para agendar tarefa de publicação de Edições ou Artigos'\n'Front page': 'Página Principal'\n'Section page': 'Página de Seção'\n'Show on front page': 'Mostrar na Página Principal'\n'Remove from front page': 'Remover da Página Principal'\n'Show on section page': 'Mostrar na Página de Seção'\n'Remove from section page': 'Removar da Página de Seção'\nActions: Ações\nPublishing: Publicando\nShow: Mostrar\nRemove: Remover\n'Article Types': 'Tipo de Artigos'\n'Staff User Types': 'Tipos de Usuários (Pessoal Editorial)'\nPublications: Publicações\nIssues: Edições\nSections: Seções\nArticles: Artigos\nImages: Imagens\nChange: Alterar\n'Add new issue': 'Criar Edição'\n'Section Template': 'Modelo para Página de Seção'\n'Article Template': 'Modelo para Artigo'\n'Default Language': 'Idioma padrão'\n'Paid Period': 'Pago até'\nPreview: Pré-visualizar\n'You must fill in the $1 field.': 'O campo $1 tem de ser preenchido.'\nError: Erro\n'Invalid input: $1': 'Valor Inválido: $1'\n'Language does not exist.': 'Idioma inexistente.'\n'Publication does not exist.': 'Publicação inexistente.'\n'Issue does not exist.': 'Edição inexistente.'\n'You must select a language.': 'Selecione o Idioma.'\n'Section does not exist.': 'Seção inexistente.'\n'No articles.': 'Não existem Artigos'\n'Article does not exist.': 'Artigo inexistente.'\n'Image does not exist.': 'Imagem inexistente.'\n'Access denied': 'Acesso negado'\n'Invalid parameters received': 'O parametro recebido é invalido'\n'Add new article': 'Criar Artigo'\nStatus: Estado\nPublished: Publicado\n'Not published': 'Não Publicado'\nSubmitted: Submetido\nNew: Novo\nArticle: Artigo\nPublish: Publicar\nUnpublish: 'Retirar Publicação'\nUnlock: Desbloquear\nUploaded: Enviado\nYYYY-MM-DD: AAAA-MM-DD\nSubmit: 'Submeter à Apreciação'\nImage: 'Imagem '\nDescription: Descrição\nPhotographer: Fotógrafo\nPlace: Local\nDate: Data\nThumbnail: Miniatura\n'In use': 'Em uso'\n'Additional searches': 'Procura adicional'\n'Most Recently Added': 'Mais recentemente adicionados'\n'Most Recently Modified': 'Mais recentemente modificados'\n'$1 images found': '$1 imagens encontradas'\n'Reset search conditions': 'Limpar condições de busca'\n'Image number': 'Imagem Nº'\nUsers: Usuários\nLocalizer: Localizador\n'Adding new translation': 'Adicionando Tradução'\n'No more languages.': 'Não existem mais Idiomas'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'No Campo $1 só é possivel usar letras, digitos e underscore (_).'\n'Add new publication': 'Criar Publicação'\n'Upload new template': 'Criar Modelo'\n'Add new staff member': 'Adicionar usuário (Pessoal Editorial)'\n'Staff member deleted.': null\n'Add new subscriber': 'Adicionar Assinante'\n'Add new user type': 'Criar Tipo de Usuário'\n'Add new article type': 'Criar Tipo de Artigo'\n'Add new country': 'Adicionar novo País'\n'Add new language': 'Adicionar novo Idioma'\n'View logs': 'Ver Registos de Utilização'\n'Change your password': 'Alterar Senha'\n'Your Articles': 'Os Meus Artigos'\n'Submitted Articles': 'Artigos Submetidos à Apreciação'\nLogs: Registros\n'There are $1 article(s) left.': 'Existe(m) ainda $1 Artigo(s).'\n'There are $1 issues(s) left.': 'Existe(m) ainda $1 Edição(ões).'\n'There are $1 section(s) left.': 'Existe(m) ainda $1 Seção(ões).'\n'There are $1 publication(s) left.': 'Existe(m) ainda $1 Publicação(ões).'\n'There are $1 countries left.': 'Existe(m) ainda $1 País(es).'\n'Name <SMALL>(click to edit)</SMALL>': 'Nome<SMALL>(clique para editar)</SMALL>'\n'Add new subscription': 'Criar Assinatura'\n'You do not have the right to add subscriptions.': 'Não tem permissão para Criar Assinaturas'\n'Adding subscription': 'Criando Assinatura'\n'Delete subscription': 'Apagar Assinatura'\n'You do not have the right to delete subscriptions.': 'Não tem Permissão para Apagar Assinaturas'\n'No such subscription.': 'Assinatura Desconhecida'\nYes: Sim\nNo: Não\nClose: Fechar\n'No issues.': 'Nº Edições'\n'Back to Edit Article': 'Voltar à edição do artigo'\n'No topics': 'Sem Tema'\n'You do not have the right to add articles.': 'Não tem permissões para adicionar Artigos.'\nStart: Inicio\nDays: Dias\n'The sections could not be added successfully. Some of them were already added !': 'As Seções pretendidas não poder ser criadas porque alguma(s) existia(m) anteriormente.'\n'Add another': 'Adicionar outro'\nCancel: Cancelar\nDone: Terminado\nOK: OK\nSave: Salvar\nSearch: Procurar\n'Make a selection': 'Efetuar seleção'\n'You must input a number greater than 0 into the $1 field.': 'Introduza um valor superior a 0 no campo $1.'\n'You must input a valid date.': 'Introduza uma data válida.'\n'Add new field': 'Adicionar novo Campo'\n'Article automatic publishing schedule': 'Publicação programada de artigos.'\n'Are you sure you want to delete this scheduled action?': 'Tem certeza que quer apagar a programação agendada?'\nUnlink: 'Desfazer ligação'\n'Are you sure you want to delete the image $1?': 'Tem certeza que quer apagar a imagem $1?'\n'No such issue.': 'Edição Desconhecida.'\n'Are you sure you want to delete the subscription to the publication $1?': 'Tem certeza que quer apagar a assinatura da publicação $1?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Não é possivel salvar as alterações da edição $1. Confirme se o nome para o URL $2 não foi usado na publicação $3.'\nGB: GB\nMB: MB\nKB: KB\nbytes: bytes\nAttach: Anexar\nBack: Voltar\nFile: Arquivo\n'Save and Close': 'Salvar e Fechar'\nAdd: Adicionar\n'Select All': 'Selecionar todos'\n'Select None': 'Limpar seleção'\n'Add Event': 'Adicionar evento'\nN/A: N/D\n'On Front Page': 'Na página principal'\n'On Section Page': 'Na página de seção'\n'Created by': 'Criado por'\n'Creation date': 'Data da criação'\n'Publication List': 'Lista de Publicações'\n'Issue List': 'Lista de Edições'\n'Section List': 'Lista de Seções'\nAll: Todos\nduplicate: duplicar\nmove: mover\nMove: Mover\n'From:': 'De:'\n'Date:': 'Data:'\nHidden: Oculto\nComments: Comentários\nComment: Comentário\nApproved: Aprovado\nSubject: Assunto\n'IP address:': 'Endereço IP:'\n'Email:': 'Email:'\nAuthor: Autor\n'Article name': 'Nome do Artigo'\n'Hide article': 'Ocultar Artigo'\n'Show article': 'Mostrar Artigo'\n'Article Type Fields': 'Campos de tipo de artigo'\n'Article Images': 'Imagens de artigos'\n'Log Messages': 'Mensagens de Registro'\n'Article Files': 'Arquivo de Artigos'\n'Article Comments': 'Comentártios do artigo'\n'Are you sure you want to deactivate the subscription?': 'Tem certeza que quer desativar a assinatura?'\n'Are you sure you want to activate the subscription?': 'Confirma a ativação da Assinatura?'\nOther: Outros\n'Time:': 'Hora:'\n'No events.': 'Sem Eventos.'\n'Default templates': 'Modelos Padrão'\n'System Preferences': 'Preferências do Sistema'\n'The date must be in the future.': 'A data  tem de ser futura.'\nSend: Enviar\n'Thank you.': Obrigado.\n'Please take a minute to send us an email.': 'Por favor perca um minuto enviando-nos uma mensagem.'\n(optional): (opcional)\n'The URL you entered is invalid: $1': 'O Endereço introduzido é inválido: $1'\nReads: Leituras\n'Publish with issue': 'Publicar com edição'\n'Universal List': 'Lista universal'\n'Invalid security token!': 'Token de segurança inválido!'\nAuthors: Autores\nTitle: Título\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: no\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.ro.yml",
    "content": "Plugins: Plug-in\n'Manage Plugins': 'Gestionează plug-in'\nAccount: Cont\n'Items per page': 'Elemente pe pagină'\n'Add new': 'Adaugă element nou'\nHome: 'Pagina principală'\nLogout: 'Închide sesiunea'\nMore...: 'Mai mult...'\nContent: Conţinut\nLanguages: Limbi\nCountries: Ţări\nThemes: Şabloane\nTopics: 'Subiecte de discuţie'\nConfigure: Configurează\n'Image Archive': 'Arhiva de imagini'\n'Add Article': 'Adaugă articol'\nFields: Câmpuri\nDelete: Şterge\nType: Tip\nName: Nume\nCode: Cod\nEdit: Modifică\nLogin: 'Deschide sesiunea'\nPassword: Parola\nSite: Site\nPath: Cale\n'Go up': 'Mergi un nivel mai sus'\nURL: 'Adresă de Internet'\nOrder: Ordonează\nHide: Ascunde\nDuplicate: Duplică\nSubscription: Abonament\nexpires: expiră\nstarts: începe\nbefore: 'înainte de'\nafter: după\non: pe\nstatus: status\nactive: activ\ninactive: inactiv\nSubscribers: Abonaţi\nStaff: Echipa\n'Select destination': 'Selectează destinaţia'\n'No languages': 'Nu există limbi'\n'---Select language---': '---Selectează limba---'\n'No publications': 'Nu există publicaţii'\n'---Select publication---': '---Selectează publicaţia---'\n'No issues': 'Nu există articole'\n'---Select issue---': '---Selectează articolul---'\n'No sections': 'Nu există secţiuni'\n'---Select section---': '---Selectează secţiunea---'\nLanguage: Limbă\nCountry: Ţară\n'Account name': 'Denumirea contului'\nPublication: Publicaţie\n'Default language': 'Limba din oficiu'\nSubscriptions: Abonamente\nIssue: Ediţie\nNumber: Număr\nSection: Secţiune\nKeywords: 'Cuvinte cheie'\nTopic: Subiect\n'URL Name': 'Denumirea adresei de Internet'\n'Left to pay': 'Rămas de plată'\nActive: Activ\nTrial: Probă\nNext: Următoarele\nPrevious: Anteriorul\nTranslate: Tradu\nView: Vizualizare\n'Scheduled Publishing': 'Publicare programată'\nTime: Ora\nAction: Acţiune\n'Schedule a new action': 'Programează o acţiune nouă'\n'Scheduling a new publish action': 'Programarea unei acţiuni de publicare'\n'Delete scheduled publish action': 'Şterge acţiunea publicării programate'\nDate/Time: Data/Timpul\n'You must select an action.': 'Trebuie să selectezi o acţiune.'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'Nu ai dreptul de a selecta ediţii sau articole pentru publicare automată.'\n'Front page': 'Prima pagină'\n'Section page': 'Pagină de secţiune'\n'Show on front page': 'Afişează pe prima pagină'\n'Remove from front page': 'Şterge de pe prima pagină'\n'Show on section page': 'Arată pe pagina secţiunii'\n'Remove from section page': 'Şterge de pe pagina secţiunii'\nActions: Acţiuni\nPublishing: Publicare\nShow: Afişează\nRemove: Şterge\n'Article Types': 'Tipuri de articole'\n'Staff User Types': 'Tipuri de membri ai echipei'\nPublications: Publicaţii\nIssues: Ediţii\nSections: Secţiuni\nArticles: Articole\nImages: Imagini\nChange: Modifică\n'Add new issue': 'Adaugă ediţie nouă'\n'Section Template': 'Şablonul secţiunii'\n'Article Template': 'Şablonul articolului'\n'Default Language': 'Limba din oficiu'\n'Paid Period': 'Perioada cu plată'\nPreview: Vizualizare\n'You must fill in the $1 field.': 'Trebuie să completezi câmpul $1.'\nError: Eroare\n'Invalid input: $1': 'Informaţie invalidă: $1'\n'Language does not exist.': 'Această limbă nu există.'\n'Publication does not exist.': 'Această publicaţie nu există.'\n'Issue does not exist.': 'Această ediţie nu există.'\n'You must select a language.': 'Trebuie să selectezi o limbă.'\n'Section does not exist.': 'Această secţiune nu există.'\n'No articles.': 'Nu există articole.'\n'Article does not exist.': 'Acest articol nu există.'\n'Image does not exist.': 'Această imagine nu există.'\n'Access denied': 'Acces interzis'\n'Invalid parameters received': 'Parametri invalizi'\n'Add new article': 'Adaugă articol nou'\nStatus: Stare\nPublished: Publicat\n'Not published': Nepublicat\nSubmitted: 'Trimis spre publicare'\nNew: Nou\nArticle: Articol\nPublish: Publică\nUnpublish: Nepublicat\nUnlock: Deblochează\nUploaded: 'Încărcat în sistem'\nYYYY-MM-DD: AAAA-LL-ZZ\nSubmit: 'Trimite spre publicare'\nImage: Imagine\nDescription: Descriere\nPhotographer: Fotograf\nPlace: Loc\nDate: Data\nThumbnail: Imagine-timbru\n'In use': 'Folosit în prezent'\n'Additional searches': 'Căutări suplimentare'\n'Most Recently Added': 'Adăugate cel mai recent'\n'Most Recently Modified': 'Modificate cel mai recent'\n'$1 images found': '$1 imagini găsite'\n'Reset search conditions': 'Resetează condiţiile căutării'\n'Image number': 'Numărul imaginii'\nUsers: Utilizatori\nLocalizer: 'Serviciul de regionalizare'\n'Adding new translation': 'Utilizatorul poate adăuga traduceri'\n'No more languages.': 'Nu există alte limbi'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'Câmpul $1 nu poate conţine decât litere, cifre şi caracterul underscore (_).'\n'Add new publication': 'Adaugă publicaţie'\n'Upload new template': 'Transferă şablon'\n'Add new staff member': 'Adaugă un membru nou al echipei'\n'Staff member deleted.': null\n'Add new subscriber': 'Adaugă abonat nou'\n'Add new user type': 'Adaugă tip de utilizator'\n'Add new article type': 'Adaugă tip de articol'\n'Add new country': 'Adaugă ţară'\n'Add new language': 'Adaugă limbă'\n'View logs': 'Vizualizare log'\n'Change your password': 'Modifică parola'\n'Your Articles': 'Articolele tale'\n'Submitted Articles': 'Articole trimise spre publicare'\nLogs: Log-uri\n'There are $1 article(s) left.': 'Mai sunt $1 articole.'\n'There are $1 issues(s) left.': 'Mai sunt $1 ediţii.'\n'There are $1 section(s) left.': 'Mai sunt $1 secţiuni.'\n'There are $1 publication(s) left.': 'Mai sunt $1 publicaţii.'\n'There are $1 countries left.': 'Mai sunt $1 ţări'\n'Name <SMALL>(click to edit)</SMALL>': 'Numele <SMALL>(clic pentru a modifica)</SMALL>'\n'Add new subscription': 'Adaugă subscriere'\n'You do not have the right to add subscriptions.': 'Nu aveţi dreptul de a adăuga abonamente.'\n'Adding subscription': 'Se adaugă abonament'\n'Delete subscription': 'Şterge abonamentul'\n'You do not have the right to delete subscriptions.': 'Nu ai dreptul de a şterge abonamente.'\n'No such subscription.': 'Abonamentul nu există.'\nYes: Da\nNo: Nu\nClose: Închide\n'No issues.': 'Nu exista ediţii.'\n'Back to Edit Article': 'Înapoi la modificarea articolului.'\n'No topics': 'Nu există subiecte'\n'You do not have the right to add articles.': 'Nu ai dreptul să adaugi articole.'\nStart: Start\nDays: Zile\n'The sections could not be added successfully. Some of them were already added !': 'Sectiunile nu pot fi adăugate. Unele există deja!'\n'Add another': 'Adaugă altul'\nCancel: Anulează\nDone: OK\nOK: OK\nSave: Salvează\nSearch: Caută\n'Make a selection': 'Selectează elemente'\n'You must input a number greater than 0 into the $1 field.': 'Trebuie să introduci un număr mai mare de 0 în câmpul $1.'\n'You must input a valid date.': 'Trebuie să introduci o dată validă.'\n'Add new field': 'Adaugă câmp nou'\n'Article automatic publishing schedule': 'Programarea publicării automate a articolelor'\n'Are you sure you want to delete this scheduled action?': 'Eşti sigur că vrei să ştergi acţiunea programată?'\nUnlink: 'Anulează link-ul'\n'Are you sure you want to delete the image $1?': 'Eşti sigur că vrei să ştergi imaginea $1?'\n'No such issue.': 'Ediţia nu există.'\n'Are you sure you want to delete the subscription to the publication $1?': 'Eşti sigur că vrei să ştergi abonamentul la publicaţia  $1?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Modificările la ediţia $1 nuau putut fi salvate. Asigură-te că denumirea adresei de Internet $2 nu a fost folosită anterior în publicaţia $3.'\nGB: GB\nMB: MB\nKB: KB\nbytes: biţi\nAttach: Ataşează\nBack: Înapoi\nFile: Fişier\n'Save and Close': 'Salvează şi închide'\nAdd: Adaugă\n'Select All': 'Selectează tot'\n'Select None': 'Nu selecta nimic'\n'Add Event': 'Adaugă eveniment'\nN/A: Necunoscut\n'On Front Page': 'Pe prima pagină'\n'On Section Page': 'Pe pagina secţiunii'\n'Created by': 'Creat de'\n'Creation date': 'Data creaţiei'\n'Publication List': 'Lista publicaţiilor'\n'Issue List': 'Lista ediţiilor'\n'Section List': 'Lista secţiunilor'\nAll: Toate\nduplicate: duplică\nmove: mută\nMove: Mută\n'From:': 'De la:'\n'Date:': 'Data:'\nHidden: Ascuns\nComments: Comentarii\nComment: Comentariu\nApproved: Aprobat\nSubject: 'Subiect:'\n'IP address:': 'Adresa IP:'\n'Email:': 'E-mail:'\nAuthor: 'Autor:'\n'Article name': 'Titlul articolului'\n'Hide article': 'Ascunde articolul'\n'Show article': 'Arată articolul'\n'Article Type Fields': 'Câmpurile tipului articolului'\n'Article Images': 'Imaginile articolului'\n'Log Messages': 'Mesaje din log'\n'Article Files': 'Fişierele articolului'\n'Article Comments': 'Comentarii la articol'\n'Are you sure you want to deactivate the subscription?': 'Eşti sigur că vrei să dezactivezi abonamentul?'\n'Are you sure you want to activate the subscription?': 'Eşti sigur că vrei să activezi abonamentul?'\nOther: Altele\n'Time:': 'Ora:'\n'No events.': 'Nu sunt evenimente programate.'\n'Default templates': 'Şabloane de bază'\n'System Preferences': 'Preferinţele sistemului'\n'The date must be in the future.': 'Data trebuie să fie în viitor.'\nSend: Trimite\n'Thank you.': Mulţumim.\n'Please take a minute to send us an email.': 'Vă rugăm să vă rezervaţi câteva minute pentru a ne trimite un e-mail.'\n(optional): (opţional)\n'The URL you entered is invalid: $1': 'Adresa de Internet introdusă nu este validă: $1'\nReads: Citiri\n'Publish with issue': 'Publică cu ediția'\n'Universal List': 'Listă universală'\n'Invalid security token!': 'Jetonul de securitate e invalid!'\nAuthors: null\nTitle: null\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.ru.yml",
    "content": "Plugins: Плагины\n'Manage Plugins': 'Управлять прагинами'\nAccount: 'Учетная запись'\n'Items per page': 'Объектов на страницу'\n'Add new': Добавить\nHome: Главная\nLogout: Выход\nMore...: Далее...\nContent: Содержимое\nLanguages: Языки\nCountries: Страны\nThemes: 'Темы (Шаблоны)'\nTopics: Темы\nConfigure: Настройки\n'Image Archive': 'Архив изображений'\n'Add Article': 'Добавить статью'\nFields: Поля\nDelete: Удалить\nType: Тип\nName: Название\nCode: Код\nEdit: Правка\nLogin: Логин\nPassword: Пароль\nSite: Сайт\nPath: Путь\n'Go up': Наверх\nURL: URL\nOrder: Порядок\nHide: Скрыть\nDuplicate: Дублировать\nSubscription: Подписка\nexpires: истекает\nstarts: начинается\nbefore: до\nafter: после\non: на\nstatus: состояние\nactive: активно\ninactive: неактивно\nSubscribers: Подписчики\nStaff: Персонал\n'Select destination': 'Выбрать получателя'\n'No languages': 'Нет языков'\n'---Select language---': '---Выберите язык---'\n'No publications': 'Нет изданий'\n'---Select publication---': '---Выберите издание---'\n'No issues': 'Нет статей'\n'---Select issue---': '---Выберите статью---'\n'No sections': 'Нет рубрик'\n'---Select section---': '---Выберите рубрику---'\nLanguage: Язык\nCountry: Страна\n'Account name': 'Учетная запись'\nPublication: Издание\n'Default language': 'Язык по умолчанию'\nSubscriptions: Подписки\nIssue: Выпуск\nNumber: Номер\nSection: Рубрика\nKeywords: 'Ключевые слова'\nTopic: Тема\n'URL Name': 'Название URL'\n'Left to pay': 'Осталось оплатить'\nActive: Активно\nTrial: Пробная\nNext: Следующ.\nPrevious: Предыдущ.\nTranslate: Перевести\nView: Вид\n'Scheduled Publishing': 'Запланированные публикации'\nTime: Время\nAction: Операция\n'Schedule a new action': 'Запланировать новое действие'\n'Scheduling a new publish action': 'Планирование новых операций'\n'Delete scheduled publish action': 'Удалить запланированную операцию'\nDate/Time: Дата/Время\n'You must select an action.': 'Вы должны выбрать операцию.'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'Вы не имеете права назначать автоматическую публикацию статьи'\n'Front page': 'Титульная страница'\n'Section page': 'Страница рубрики'\n'Show on front page': 'Показать на титульной странице'\n'Remove from front page': 'Удалить с титульной страницы'\n'Show on section page': 'Показать на странице рубрики'\n'Remove from section page': 'Удалить со страницы рубрики'\nActions: Операции\nPublishing: Публикации\nShow: Показывать\nRemove: Удалить\n'Article Types': 'Тип статьи'\n'Staff User Types': 'Пользовательский тип персонала'\nPublications: Издания\nIssues: Выпуски\nSections: Рубрики\nArticles: Статьи\nImages: Изображения\nChange: Изменить\n'Add new issue': 'Добавить новый выпуск'\n'Section Template': 'Шаблон рубрики'\n'Article Template': 'Шаблон статьи'\n'Default Language': 'Язык по умолчанию'\n'Paid Period': 'Оплаченный период'\nPreview: 'Предварительный просмотр'\n'You must fill in the $1 field.': 'Вы должны заполнить поле $1.'\nError: Ошибка\n'Invalid input: $1': 'Неправильный ввод: $1'\n'Language does not exist.': 'Язык не существует.'\n'Publication does not exist.': 'Нет такого издания.'\n'Issue does not exist.': 'Выпуск не существует.'\n'You must select a language.': 'Вы должны выбрать язык.'\n'Section does not exist.': 'Нет такой рубрики.'\n'No articles.': 'Статьи отсутствуют.'\n'Article does not exist.': 'Нет такой статьи.'\n'Image does not exist.': 'Такого изображения не существует.'\n'Access denied': 'Доступ запрещен'\n'Invalid parameters received': 'Получены неправильные параметры'\n'Add new article': 'Добавить новую статью'\nStatus: Состояние\nPublished: Опубликовано\n'Not published': 'Не опубликовано'\nSubmitted: Отправлено\nNew: Новый\nArticle: Статья\nPublish: Опубликовать\nUnpublish: Убрать\nUnlock: Разблокировать\nUploaded: Загружена\nYYYY-MM-DD: ГГГГ-ММ-ДД\nSubmit: Отправить\nImage: Изображение\nDescription: Описание\nPhotographer: Фотограф\nPlace: Место\nDate: Дата\nThumbnail: Предосмотр\n'In use': Использовано\n'Additional searches': 'Дополнительный поиск'\n'Most Recently Added': 'Недавно добавленные'\n'Most Recently Modified': 'Недавно модифицированные'\n'$1 images found': 'Изображений найдено: $1'\n'Reset search conditions': 'Сбросить условия поиска'\n'Image number': 'Номер изображения'\nUsers: Пользователи\nLocalizer: Локализатор\n'Adding new translation': 'Добавление нового перевода'\n'No more languages.': 'Больше нет языков.'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'Поле $1 может содержать только буквы, цифры и символ подчеркивания'\n'Add new publication': 'Добавить новое издание'\n'Upload new template': 'Загрузить новый шаблон'\n'Add new staff member': 'Добавление нового члена персонала'\n'Staff member deleted.': 'Удалена учетная запись сотрудника'\n'Add new subscriber': 'Добавление нового подписчика'\n'Add new user type': 'Добавить новый тип пользователей'\n'Add new article type': 'Добавить новый тип статей'\n'Add new country': 'Добавить новую страну'\n'Add new language': 'Добавить новый язык'\n'View logs': 'Просмотреть журнал'\n'Change your password': 'Измените Ваш пароль'\n'Your Articles': 'Ваши статьи'\n'Submitted Articles': 'Отправленные статьи'\nLogs: Журнал\n'There are $1 article(s) left.': 'Осталось статей: $1'\n'There are $1 issues(s) left.': 'Осталось выпусков: $1'\n'There are $1 section(s) left.': 'Осталось рубрик: $1'\n'There are $1 publication(s) left.': 'Осталось изданий: $1'\n'There are $1 countries left.': 'Осталось стран: $1'\n'Name <SMALL>(click to edit)</SMALL>': 'Название <SMALL>(щелкните для правки)</SMALL>'\n'Add new subscription': 'Добавить новую подписку'\n'You do not have the right to add subscriptions.': 'Вы не имеете прав добавления подписок'\n'Adding subscription': 'Добавление подписки'\n'Delete subscription': 'Удалить подписку'\n'You do not have the right to delete subscriptions.': 'Вы не имеете прав доступа для  удаления подписок'\n'No such subscription.': 'Нет такой подписки.'\nYes: Да\nNo: Нет\nClose: Закрыть\n'No issues.': 'Нет выпусков.'\n'Back to Edit Article': 'Назад к редактированию статьи'\n'No topics': 'Нет тем'\n'You do not have the right to add articles.': 'Вы не имеете прав доступа к добавлению статей'\nStart: Начало\nDays: Дней\n'The sections could not be added successfully. Some of them were already added !': 'Рубрики не могут быть добавлены. Некоторые из них уже были существуют!'\n'Add another': 'Добавить другую'\nCancel: Отменить\nDone: Выполнено\nOK: OK\nSave: Сохранить\nSearch: Поиск\n'Make a selection': Выделить\n'You must input a number greater than 0 into the $1 field.': 'Вы должны ввести положительное ненулевое число в поле $1'\n'You must input a valid date.': 'Вы должны ввести правильную дату.'\n'Add new field': 'Добавить новый тип'\n'Article automatic publishing schedule': 'Расписание автоматической публикации статей'\n'Are you sure you want to delete this scheduled action?': 'Вы уверены, что хотитее удалить эту запланированную операцию'\nUnlink: Отвязать\n'Are you sure you want to delete the image $1?': 'Вы уверены, что хотите удалить картинку $1?'\n'No such issue.': 'Нет такого выпуска'\n'Are you sure you want to delete the subscription to the publication $1?': 'Вы уверены, что хотите удалить подписку на издание $1?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Невозможно сохранить изменения в  выпуске $1, Убедитесь, что название $2 URL выпуска не использовалось ранее в издании $3.'\nGB: GB\nMB: MB\nKB: KB\nbytes: байт\nAttach: Приложить\nBack: Назад\nFile: Файл\n'Save and Close': 'Сохранить и закрыть'\nAdd: Добавить\n'Select All': 'Выбрать все'\n'Select None': 'Отменить выбор'\n'Add Event': 'Добавить событие'\nN/A: недоступно\n'On Front Page': 'На титульной странице'\n'On Section Page': 'На странице рубрики'\n'Created by': Автор\n'Creation date': 'Дата создания'\n'Publication List': 'Список изданий'\n'Issue List': 'Список выпусков'\n'Section List': 'Список рубрик'\nAll: Все\nduplicate: дублировать\nmove: перенести\nMove: Перенести\n'From:': 'От:'\n'Date:': 'Дата:'\nHidden: Скрытый\nComments: Комментарии\nComment: Комментарий\nApproved: Утвержденный\nSubject: Тема\n'IP address:': 'IP-адрес:'\n'Email:': 'Email:'\nAuthor: Автор\n'Article name': 'Название статьи'\n'Hide article': 'Скрыть статью'\n'Show article': 'Показать статью'\n'Article Type Fields': 'Поля типов статьи'\n'Article Images': 'Изображения из статьи'\n'Log Messages': 'Сообщения журнала'\n'Article Files': 'Файлы статьи'\n'Article Comments': 'Комментарии к статье'\n'Are you sure you want to deactivate the subscription?': 'Вы уверены, что хотите деактивировать подписчика?'\n'Are you sure you want to activate the subscription?': 'Вы уверены, что хотите активировать подписку?'\nOther: Другое\n'Time:': 'Время:'\n'No events.': 'Нет событий.'\n'Default templates': 'Шаблоны по-умолчанию'\n'System Preferences': 'Системные настройки'\n'The date must be in the future.': 'Дата должна быть в будущем.'\nSend: Отправить\n'Thank you.': Спасибо.\n'Please take a minute to send us an email.': 'Пожалуйста уделите минутку, чтобы послать нам e-mail.'\n(optional): (дополнительно)\n'The URL you entered is invalid: $1': 'Введенный URL неверен: $1'\nReads: 'Количество просмотров'\n'Publish with issue': 'Опубликовать выпуск'\n'Universal List': 'Универсальный список'\n'Invalid security token!': 'Неверный маркер безопасности!'\nAuthors: Авторы\nTitle: Заголовок\n'Edit country': 'Редактировать страну'\n'Entry $1 prepared for publishing': 'Запись $1 подготовлена к публикации'\n'Entry deleted': 'Запись удалена'\n'Feed saved': null\n'Item published': Опубликовано\n'Settings saved': 'Настройки сохранены'\n'Self-delete is not permitted.': 'Удаление собственного аккаунта не разрешено.'\n'Edit staff member $1': 'Редактировать данные сотрудника $1'\n'Delete staff member $1': 'Удалить учетную запись сотрудника $1'\n'Could not save user $1. Please make sure it does not already exist': 'Не удалось сохранить пользователя $1. Проверьте, возможно, такой аккаунт уже существует.'\n'Could not save user with e-mail address $1. Please make sure it does not already exist': 'Не удалось сохранить пользователя с e-mail адресом $1. Проверьте, возможно, такой адрес уже существует.'\n'Changing user type would prevent you to manage users. Aborted.': 'Изменение типа пользователя лишит вас права управлять пользователями. Отменено.'\n'Staff member saved.': 'Учетная запись сотрудника сохранена.'\n'Permissions: $1': 'Права: $1'\n'Change user account information': 'Изменить информацию учетной записи пользователя'\n'Staff management': 'Управление сотрудниками'\nUpdated: Обновлено\nOptions: Варианты\nVerified: Подтвержденный\nConfirm: Подтвердить\nat: на\npublished: опубликовано\nunpublished: 'публикация отменена'\nnopermissions: 'У вас нет прав доступа к этому элементу.'\nimportantmessage: 'Важная информация'\nanonymous: Анонимный\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.sh.yml",
    "content": "Plugins: Pluginovi\n'Manage Plugins': 'Upravljanje pluginovima'\nAccount: Nalog\n'Items per page': 'Stavki po strani'\n'Add new': 'Dodaj novi'\nHome: Početak\nLogout: Odjava\nMore...: Dalje...\nContent: Sadržaji\nLanguages: Jezici\nCountries: Države\nThemes: Teme\nTopics: Teme\nConfigure: Podešavanja\n'Image Archive': 'Foto arhiva'\n'Add Article': 'Dodaj tekst'\nFields: Polja\nDelete: Obriši\nType: Tip\nName: Naslov\nCode: Kod\nEdit: Uredi\nLogin: Prijava\nPassword: Lozinka\nSite: Sajt\nPath: Putanja\n'Go up': 'Nivo iznad'\nURL: URL\nOrder: Poredak\nHide: Sakrij\nDuplicate: Duplikat\nSubscription: Pretplata\nexpires: ističe\nstarts: počinje\nbefore: pre\nafter: posle\non: u\nstatus: status\nactive: aktivna\ninactive: neaktivna\nSubscribers: Pretplatnici\nStaff: Saradnici\n'Select destination': 'Izaberi destinaciju'\n'No languages': 'Nema jezika'\n'---Select language---': '--- Izaberi jezik ---'\n'No publications': 'Nema publikacija'\n'---Select publication---': '--- Izaberi publikaciju ---'\n'No issues': 'Nema tekstova'\n'---Select issue---': '--- Izaberi tekst ---'\n'No sections': 'Nema rubrika'\n'---Select section---': '--- Izaberi rubriku ---'\nLanguage: Jezik\nCountry: Država\n'Account name': 'Korisničko ime'\nPublication: Publikacija\n'Default language': 'Osnovni jezik'\nSubscriptions: Pretplate\nIssue: Izdanje\nNumber: Broj\nSection: Rubrika\nKeywords: 'Ključne reči'\nTopic: Tema\n'URL Name': 'URL ime'\n'Left to pay': 'Preostalo za plaćanje'\nActive: Aktivna\nTrial: Probna\nNext: Sledeći\nPrevious: Prethodni\nTranslate: Prevedi\nView: Prikaz\n'Scheduled Publishing': 'Automatsko objavljivanje'\nTime: Vreme\nAction: Akcija\n'Schedule a new action': 'Zakaži novu akciju'\n'Scheduling a new publish action': 'Zakazivanje nove akcije objavljivanja'\n'Delete scheduled publish action': 'Obriši zakazanu akciju objavljivanja'\nDate/Time: Datum/čas\n'You must select an action.': 'Morate izabrati neku akciju.'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'Nemate pravo zakazivanja akcija automatskog objavljivanja izdanja i tekstova.'\n'Front page': 'Prva strana'\n'Section page': 'Strana rubrike'\n'Show on front page': 'Prikaži na prvoj strani'\n'Remove from front page': 'Povuci sa prve strane'\n'Show on section page': 'Prikaži na strani rubrike'\n'Remove from section page': 'Povuci sa strane rubrike'\nActions: Akcije\nPublishing: Objavljivanje\nShow: Prikaži\nRemove: Ukloni\n'Article Types': 'Tipovi članaka'\n'Staff User Types': 'Tipovi saradnika'\nPublications: Publikacije\nIssues: Izdanja\nSections: Rubrike\nArticles: Tekstovi\nImages: Slike\nChange: Promeni\n'Add new issue': 'Dodaj novo izdanje'\n'Section Template': 'Šablon strane rubrike'\n'Article Template': 'Šablon teksta'\n'Default Language': 'Osnovni jezik'\n'Paid Period': 'Plaćeni period'\nPreview: Pregled\n'You must fill in the $1 field.': 'Morate popuniti polje $1.'\nError: Greška\n'Invalid input: $1': 'Pogrešan unos: $1'\n'Language does not exist.': 'Ne postoji takav jezik.'\n'Publication does not exist.': 'Publikacija ne postoji.'\n'Issue does not exist.': 'Izdanje ne postoji.'\n'You must select a language.': 'Morate izabrati jezik.'\n'Section does not exist.': 'Rubrika ne postoji.'\n'No articles.': 'Nema tekstova.'\n'Article does not exist.': 'Tekst ne postoji.'\n'Image does not exist.': 'Slika ne postoji.'\n'Access denied': 'Zabranjen pristup'\n'Invalid parameters received': 'Primljeni pogrešni parametri'\n'Add new article': 'Dodaj novi tekst'\nStatus: Status\nPublished: Objavljen\n'Not published': Neobjavljen\nSubmitted: Predat\nNew: Novi\nArticle: Tekst\nPublish: Objavi\nUnpublish: Povuci\nUnlock: Otključaj\nUploaded: Aploudovan\nYYYY-MM-DD: GGGG-MM-DD\nSubmit: Predaj\nImage: Slika\nDescription: Opis\nPhotographer: Fotograf\nPlace: Mesto\nDate: Datum\nThumbnail: 'Mala slika'\n'In use': Korišćena\n'Additional searches': 'Dodatne pretrage'\n'Most Recently Added': 'Najnovije dodate '\n'Most Recently Modified': 'Poslednje menjane'\n'$1 images found': 'Pronađeno je $1 slike/a'\n'Reset search conditions': 'Poništi uslove pretrage'\n'Image number': 'Broj slike'\nUsers: Korisnici\nLocalizer: Lokalizator\n'Adding new translation': 'Dodavanje novog prevoda'\n'No more languages.': 'Nema više jezika.'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'Ime polja $1 može sadržati isključivo slova, brojke i donju crtu (_)'\n'Add new publication': 'Dodaj novu publikaciju'\n'Upload new template': 'Aplouduj novi šablon'\n'Add new staff member': 'Dodaj novog saradnika'\n'Staff member deleted.': null\n'Add new subscriber': 'Dodaj novog pretplatnika'\n'Add new user type': 'Dodaj novi tip korisnika'\n'Add new article type': 'Dodaj novi tip teksta'\n'Add new country': 'Dodaj državu'\n'Add new language': 'Dodaj jezik'\n'View logs': 'Prikaži logove'\n'Change your password': 'Promeni lozinku'\n'Your Articles': 'Tvoji tekstovi'\n'Submitted Articles': 'Predati tekstovi'\nLogs: Logovi\n'There are $1 article(s) left.': 'Preosta(l)o je $1 tekst(ova)'\n'There are $1 issues(s) left.': 'Preostalo je $1 izdanja'\n'There are $1 section(s) left.': 'Preosta(l)o je $1 rubrika'\n'There are $1 publication(s) left.': 'Preostalo(a) je $1 publikacija'\n'There are $1 countries left.': 'Preostalo je $1 država'\n'Name <SMALL>(click to edit)</SMALL>': 'Ime<br><small>(kliknite za uređivanje)</small>'\n'Add new subscription': 'Dodaj novu pretplatu'\n'You do not have the right to add subscriptions.': 'Nemate pravo da dodajete pretplate.'\n'Adding subscription': 'Dodavanje pretplate'\n'Delete subscription': 'Obriši pretplatu'\n'You do not have the right to delete subscriptions.': 'Nemate pravo da brišete pretplate.'\n'No such subscription.': 'Nema takve pretplate.'\nYes: Da\nNo: Ne\nClose: Zatvori\n'No issues.': 'Nema izdanja.'\n'Back to Edit Article': 'Nazad na uređivanje teksta'\n'No topics': 'Nema tema'\n'You do not have the right to add articles.': 'Nemate pravo da dodajete tekstove.'\nStart: Početak\nDays: Dana\n'The sections could not be added successfully. Some of them were already added !': 'Rubrike ne mogu biti dodate. Neke od njih već postoje!'\n'Add another': 'Nastavi sa dodavanjem'\nCancel: Poništi\nDone: Gotovo\nOK: OK\nSave: Snimi\nSearch: Traži\n'Make a selection': Izaberite\n'You must input a number greater than 0 into the $1 field.': 'Morate uneti broj veći od 0 u polje $1.'\n'You must input a valid date.': 'Morate ispravno uneti datum.'\n'Add new field': 'Dodaj novo polje'\n'Article automatic publishing schedule': 'Raspored automatskog objavljivanja tekstova'\n'Are you sure you want to delete this scheduled action?': ' '\nUnlink: 'Poništi link'\n'Are you sure you want to delete the image $1?': 'Da li ste sigurni da želite da obrišete sliku $1?'\n'No such issue.': 'Nema tog izdanja.'\n'Are you sure you want to delete the subscription to the publication $1?': 'Da li ste sigurni da želite da obrišete pretplatu na publikaciju $1?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Promena u izdanju $1 ne može biti snimljena. Proverite da li URL ime izdanja $2 nije već korišćeno u publikaciji $3.'\nGB: GB\nMB: MB\nKB: KB\nbytes: bajtova\nAttach: Prikači\nBack: Nazad\nFile: Fajl\n'Save and Close': 'Snimi i zatvori'\nAdd: Dodaj\n'Select All': 'Izaberi sve'\n'Select None': 'Poništi izbor'\n'Add Event': 'Dodajte akciju'\nN/A: 'bez podataka'\n'On Front Page': 'Na prvoj strani'\n'On Section Page': 'Na strani rubrike'\n'Created by': 'Kreirao:'\n'Creation date': 'Datum kreiranja'\n'Publication List': 'Lista publikacija'\n'Issue List': 'Lista izdanja'\n'Section List': 'Lista rubrika'\nAll: Sve\nduplicate: dupliraj\nmove: premesti\nMove: Premesti\n'From:': 'Od:'\n'Date:': 'Datum:'\nHidden: Sakriven\nComments: Komentari\nComment: Komentar\nApproved: Odobren\nSubject: Naslov\n'IP address:': 'IP adresa:'\n'Email:': 'E-mail:'\nAuthor: Autor\n'Article name': 'Naslov članka'\n'Hide article': 'Sakri članak'\n'Show article': 'Prikaži ćlanak'\n'Article Type Fields': 'Polja tipa teksta'\n'Article Images': 'Slike u tekstovima'\n'Log Messages': 'Log poruke'\n'Article Files': 'Fajlovi uz tekst'\n'Article Comments': 'Komentari na članak'\n'Are you sure you want to deactivate the subscription?': 'Da li ste sigurni da želite da deaktivirate pretplatu?'\n'Are you sure you want to activate the subscription?': 'Da li ste sigurni da želite da aktivirate pretplatu?'\nOther: Drugo\n'Time:': 'Vreme:'\n'No events.': 'Bez događaja.'\n'Default templates': 'Podrazumevani šabloni'\n'System Preferences': 'Sistemske postavke'\n'The date must be in the future.': 'Datum mora biti u budućnosti'\nSend: Pošalji\n'Thank you.': 'Hvala vam.'\n'Please take a minute to send us an email.': 'Molimo Vas odvojite jedan minut da nam pošaljete e-mail.'\n(optional): (opciono)\n'The URL you entered is invalid: $1': 'URL koji ste uneli je neispravan: $1'\nReads: čitanja\n'Publish with issue': 'Objavi zajedno sa izdanjem'\n'Universal List': 'Univerzalna lista'\n'Invalid security token!': 'Pogrešan sigurnosni simbol'\nAuthors: Autori\nTitle: Naslov\n'Edit country': 'Uredi državu'\n'Entry $1 prepared for publishing': null\n'Entry deleted': 'Unos obrisan'\n'Feed saved': null\n'Item published': null\n'Settings saved': 'Podešavanja snimljena'\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: Opcije\nVerified: null\nConfirm: null\nat: u\npublished: objavljen\nunpublished: neobjavljen\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.sq.yml",
    "content": "Plugins: null\n'Manage Plugins': null\nAccount: null\n'Items per page': null\n'Add new': null\nHome: null\nLogout: null\nMore...: null\nContent: null\nLanguages: null\nCountries: null\nThemes: null\nTopics: null\nConfigure: null\n'Image Archive': null\n'Add Article': null\nFields: null\nDelete: null\nType: null\nName: null\nCode: null\nEdit: null\nLogin: null\nPassword: null\nSite: null\nPath: null\n'Go up': null\nURL: null\nOrder: null\nHide: null\nDuplicate: null\nSubscription: null\nexpires: null\nstarts: null\nbefore: null\nafter: null\non: null\nstatus: null\nactive: null\ninactive: null\nSubscribers: null\nStaff: null\n'Select destination': null\n'No languages': null\n'---Select language---': null\n'No publications': null\n'---Select publication---': null\n'No issues': null\n'---Select issue---': null\n'No sections': null\n'---Select section---': null\nLanguage: null\nCountry: null\n'Account name': null\nPublication: null\n'Default language': null\nSubscriptions: null\nIssue: null\nNumber: null\nSection: null\nKeywords: null\nTopic: null\n'URL Name': null\n'Left to pay': null\nActive: null\nTrial: null\nNext: null\nPrevious: null\nTranslate: null\nView: null\n'Scheduled Publishing': null\nTime: null\nAction: null\n'Schedule a new action': null\n'Scheduling a new publish action': null\n'Delete scheduled publish action': null\nDate/Time: null\n'You must select an action.': null\n'You do not have the right to schedule issues or articles for automatic publishing.': null\n'Front page': null\n'Section page': null\n'Show on front page': null\n'Remove from front page': null\n'Show on section page': null\n'Remove from section page': null\nActions: null\nPublishing: null\nShow: null\nRemove: null\n'Article Types': null\n'Staff User Types': null\nPublications: null\nIssues: null\nSections: null\nArticles: null\nImages: null\nChange: null\n'Add new issue': null\n'Section Template': null\n'Article Template': null\n'Default Language': null\n'Paid Period': null\nPreview: null\n'You must fill in the $1 field.': null\nError: null\n'Invalid input: $1': null\n'Language does not exist.': null\n'Publication does not exist.': null\n'Issue does not exist.': null\n'You must select a language.': null\n'Section does not exist.': null\n'No articles.': null\n'Article does not exist.': null\n'Image does not exist.': null\n'Access denied': null\n'Invalid parameters received': null\n'Add new article': null\nStatus: null\nPublished: null\n'Not published': null\nSubmitted: null\nNew: null\nArticle: null\nPublish: null\nUnpublish: null\nUnlock: null\nUploaded: null\nYYYY-MM-DD: null\nSubmit: null\nImage: null\nDescription: null\nPhotographer: null\nPlace: null\nDate: null\nThumbnail: null\n'In use': null\n'Additional searches': null\n'Most Recently Added': null\n'Most Recently Modified': null\n'$1 images found': null\n'Reset search conditions': null\n'Image number': null\nUsers: null\nLocalizer: null\n'Adding new translation': null\n'No more languages.': null\n'The $1 field may only contain letters, digits and underscore (_) character.': null\n'Add new publication': null\n'Upload new template': null\n'Add new staff member': null\n'Staff member deleted.': null\n'Add new subscriber': null\n'Add new user type': null\n'Add new article type': null\n'Add new country': null\n'Add new language': null\n'View logs': null\n'Change your password': null\n'Your Articles': null\n'Submitted Articles': null\nLogs: null\n'There are $1 article(s) left.': null\n'There are $1 issues(s) left.': null\n'There are $1 section(s) left.': null\n'There are $1 publication(s) left.': null\n'There are $1 countries left.': null\n'Name <SMALL>(click to edit)</SMALL>': null\n'Add new subscription': null\n'You do not have the right to add subscriptions.': null\n'Adding subscription': null\n'Delete subscription': null\n'You do not have the right to delete subscriptions.': null\n'No such subscription.': null\nYes: null\nNo: null\nClose: null\n'No issues.': null\n'Back to Edit Article': null\n'No topics': null\n'You do not have the right to add articles.': null\nStart: null\nDays: null\n'The sections could not be added successfully. Some of them were already added !': null\n'Add another': null\nCancel: null\nDone: null\nOK: null\nSave: null\nSearch: null\n'Make a selection': null\n'You must input a number greater than 0 into the $1 field.': null\n'You must input a valid date.': null\n'Add new field': null\n'Article automatic publishing schedule': null\n'Are you sure you want to delete this scheduled action?': null\nUnlink: null\n'Are you sure you want to delete the image $1?': null\n'No such issue.': null\n'Are you sure you want to delete the subscription to the publication $1?': null\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': null\nGB: null\nMB: null\nKB: null\nbytes: null\nAttach: null\nBack: null\nFile: null\n'Save and Close': null\nAdd: null\n'Select All': null\n'Select None': null\n'Add Event': null\nN/A: null\n'On Front Page': null\n'On Section Page': null\n'Created by': null\n'Creation date': null\n'Publication List': null\n'Issue List': null\n'Section List': null\nAll: null\nduplicate: null\nmove: null\nMove: null\n'From:': null\n'Date:': null\nHidden: null\nComments: null\nComment: null\nApproved: null\nSubject: null\n'IP address:': null\n'Email:': null\nAuthor: null\n'Article name': null\n'Hide article': null\n'Show article': null\n'Article Type Fields': null\n'Article Images': null\n'Log Messages': null\n'Article Files': null\n'Article Comments': null\n'Are you sure you want to deactivate the subscription?': null\n'Are you sure you want to activate the subscription?': null\nOther: null\n'Time:': null\n'No events.': null\n'Default templates': null\n'System Preferences': null\n'The date must be in the future.': null\nSend: null\n'Thank you.': null\n'Please take a minute to send us an email.': null\n(optional): null\n'The URL you entered is invalid: $1': null\nReads: null\n'Publish with issue': null\n'Universal List': null\n'Invalid security token!': null\nAuthors: null\nTitle: null\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.sr.yml",
    "content": "Plugins: Плагинови\n'Manage Plugins': 'Управљање плагиновима'\nAccount: Налог\n'Items per page': 'Ставки по страни'\n'Add new': 'Додај нови'\nHome: Почетак\nLogout: Одјава\nMore...: Даље...\nContent: Садржаји\nLanguages: Језици\nCountries: Државе\nThemes: Теме\nTopics: Топици\nConfigure: Подешавања\n'Image Archive': 'Фото архива'\n'Add Article': 'Додај текст'\nFields: Поља\nDelete: Обриши\nType: Тип\nName: Наслов\nCode: Код\nEdit: Уреди\nLogin: Пријава\nPassword: Лозинка\nSite: Сајт\nPath: Путања\n'Go up': 'Ниво изнад'\nURL: УРЛ\nOrder: Поредак\nHide: Сакри\nDuplicate: Дуплирај\nSubscription: Претплата\nexpires: истиче\nstarts: почиње\nbefore: пре\nafter: после\non: у\nstatus: статус\nactive: активна\ninactive: неактивна\nSubscribers: Претплатници\nStaff: Сарадници\n'Select destination': 'Изабери дестинацију'\n'No languages': 'Нема језика'\n'---Select language---': '--- Изабери језик ---'\n'No publications': 'Нема публикација'\n'---Select publication---': '--- Изабери публикацију ---'\n'No issues': 'Нема текстова'\n'---Select issue---': '--- Изабери текст ---'\n'No sections': 'Нема рубрика'\n'---Select section---': '--- Изабери рубрику ---'\nLanguage: Језик\nCountry: Држава\n'Account name': 'Име налога'\nPublication: Публикација\n'Default language': 'Основни језик'\nSubscriptions: Претплате\nIssue: Издање\nNumber: Број\nSection: Рубрика\nKeywords: 'Кључне речи'\nTopic: Топик\n'URL Name': 'Скраћено име'\n'Left to pay': 'Преостало за плаћање'\nActive: Активна\nTrial: Пробна\nNext: Следећи\nPrevious: Претходни\nTranslate: Преведи\nView: 'Приказ '\n'Scheduled Publishing': 'Аутоматско објављивање'\nTime: Време\nAction: Акција\n'Schedule a new action': 'Закажи нову акцију'\n'Scheduling a new publish action': 'Закажи нову акцију објављивања'\n'Delete scheduled publish action': 'Обриши заказану акцију објављивања'\nDate/Time: Датум/час\n'You must select an action.': 'Морате изабрати акцију.'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'Немате право да заказујете аутоматско објављивање издања и текстова.'\n'Front page': 'Почетна страна'\n'Section page': 'Страна рубрике'\n'Show on front page': 'Прикажи на почетној страни'\n'Remove from front page': 'Повуци са почетне стране'\n'Show on section page': 'Прикажи на страни рубрике'\n'Remove from section page': 'Повуци са стране рубрике'\nActions: Акције\nPublishing: Објављивање\nShow: Прикажи\nRemove: Уклони\n'Article Types': 'Типови текстова'\n'Staff User Types': 'Типови сарадника'\nPublications: Публикације\nIssues: Издања\nSections: Рубрике\nArticles: Текстови\nImages: Слике\nChange: Промени\n'Add new issue': 'Додај ново издање'\n'Section Template': 'Шаблон рубрике'\n'Article Template': 'Шаблон текста'\n'Default Language': 'Основни језик'\n'Paid Period': 'Плаћени период'\nPreview: Преглед\n'You must fill in the $1 field.': 'Морате попунити поље $1'\nError: Грешка\n'Invalid input: $1': 'Погрешан унос: $1'\n'Language does not exist.': 'Нема тог језика.'\n'Publication does not exist.': 'Нема такве публикације.'\n'Issue does not exist.': 'Нема тог издања.'\n'You must select a language.': 'Морате изабрати језик.'\n'Section does not exist.': 'Та рубрика не постоји.'\n'No articles.': 'Нема текстова.'\n'Article does not exist.': 'Текст не постоји.'\n'Image does not exist.': 'Слика не постоји.'\n'Access denied': 'Забрањен приступ'\n'Invalid parameters received': 'Примљени су погрешни параметри'\n'Add new article': 'Додај нови чланак'\nStatus: Статус\nPublished: Објављен\n'Not published': Необјављено\nSubmitted: Предат\nNew: Нови\nArticle: Текст\nPublish: Објави\nUnpublish: Повуци\nUnlock: Откључај\nUploaded: Аплоудован\nYYYY-MM-DD: ГГГГ-ММ-ДД\nSubmit: Пошаљи\nImage: Слика\nDescription: Опис\nPhotographer: Фотограф\nPlace: Место\nDate: Датум\nThumbnail: 'Умањена слика'\n'In use': 'У употреби'\n'Additional searches': 'Додатне претраге'\n'Most Recently Added': 'Најновије додато'\n'Most Recently Modified': 'Најскорије мењано'\n'$1 images found': 'Пронађено/а је $1 слика'\n'Reset search conditions': 'Поништи услове претраге'\n'Image number': 'Број слике'\nUsers: Корисници\nLocalizer: Локализатор\n'Adding new translation': 'Додавање новог превода'\n'No more languages.': 'Нема више језика.'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'Поље $1 може садржати искључиво слова, бројке и доњу црту (_).'\n'Add new publication': 'Додај нову публикацију'\n'Upload new template': 'Аплоудуј нови шаблон'\n'Add new staff member': 'Додај новог сарадника'\n'Staff member deleted.': 'Сарадник је избрисан.'\n'Add new subscriber': 'додај новог претплатника'\n'Add new user type': 'Додај нови тип корисника'\n'Add new article type': 'Додај нови тип текста'\n'Add new country': 'Додај државу'\n'Add new language': 'Додај језик'\n'View logs': 'Прикажи логове'\n'Change your password': 'Промени лозинку'\n'Your Articles': 'Твоји текстови'\n'Submitted Articles': 'Предати текстови'\nLogs: Логови\n'There are $1 article(s) left.': 'Преоста(л)о је $1 текст(ова)'\n'There are $1 issues(s) left.': 'Преостало је $1 издања.'\n'There are $1 section(s) left.': 'Преостало је $1 рубрика'\n'There are $1 publication(s) left.': 'Преостало(а) је $1 публикација'\n'There are $1 countries left.': 'Преостало је $1 држава'\n'Name <SMALL>(click to edit)</SMALL>': 'Име<br><small>(клик за уређивање)</small>'\n'Add new subscription': 'Додај нову претплату'\n'You do not have the right to add subscriptions.': 'Немате право да додајете претплате'\n'Adding subscription': 'Додавање претплате'\n'Delete subscription': 'Обриши претплату'\n'You do not have the right to delete subscriptions.': 'Немате право да бришете претплате'\n'No such subscription.': 'Нема такве претплате'\nYes: Да\nNo: Не\nClose: Затвори\n'No issues.': 'Нема издања'\n'Back to Edit Article': 'Назад на детаље текста'\n'No topics': 'Нема топика'\n'You do not have the right to add articles.': 'Немате право да додајете текстове'\nStart: Почетак\nDays: Дана\n'The sections could not be added successfully. Some of them were already added !': 'Рубрике не могу бити додате. Неке од њих већ постоје!'\n'Add another': 'Настави са додавањем'\nCancel: Батали\nDone: Готово\nOK: OK\nSave: Сними\nSearch: Тражи\n'Make a selection': Изаберите\n'You must input a number greater than 0 into the $1 field.': 'Морате унети број већи од 0 у поље $1'\n'You must input a valid date.': 'Морате исправно унети датум'\n'Add new field': 'Додај ново поље'\n'Article automatic publishing schedule': 'Распоред аутоматског објављивања текстова'\n'Are you sure you want to delete this scheduled action?': ' '\nUnlink: 'Уклони линк'\n'Are you sure you want to delete the image $1?': 'Да ли сте сигурни да желите да обришете слику $1?'\n'No such issue.': 'Нема тог издања.'\n'Are you sure you want to delete the subscription to the publication $1?': 'Да ли сте сигурни да желите да обришете претплату на публикацију $1? '\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Промена у издању $1 не може бити снимљена. Проверите да ли УРЛ име издања $2 није већ коришћено у публикацији $3.'\nGB: ГБ\nMB: МБ\nKB: КБ\nbytes: бајтова\nAttach: Прикачи\nBack: Назад\nFile: Фајл\n'Save and Close': 'Сними и затвори'\nAdd: Додај\n'Select All': 'Изабери све'\n'Select None': 'Изабери ниједан'\n'Add Event': 'Додајте акцију'\nN/A: 'без података'\n'On Front Page': 'На првој страни'\n'On Section Page': 'На страни рубрике'\n'Created by': 'Креирао:'\n'Creation date': 'Датум креирања'\n'Publication List': 'Листа публикација'\n'Issue List': 'Листа издања'\n'Section List': 'Листа рубрика'\nAll: Све\nduplicate: дуплирај\nmove: премести\nMove: Премести\n'From:': 'Од:'\n'Date:': 'Датум:'\nHidden: Сакривен\nComments: Коментари\nComment: Коментар\nApproved: Одобрен\nSubject: Наслов\n'IP address:': 'ИП адреса:'\n'Email:': 'Имејл:'\nAuthor: аутор\n'Article name': 'Наслов текста'\n'Hide article': 'Сакри текст'\n'Show article': 'Прикажи текст'\n'Article Type Fields': 'Поља типа текста'\n'Article Images': 'Слике у тексту'\n'Log Messages': 'Лог поруке'\n'Article Files': 'Фајлови уз текст'\n'Article Comments': 'Коментари на текст'\n'Are you sure you want to deactivate the subscription?': 'Да ли сте сигурни да желите да деактивирате претплату?'\n'Are you sure you want to activate the subscription?': 'Да ли сте сигурни да желите да активирате претплату?'\nOther: Друго\n'Time:': Време\n'No events.': 'Без догађаја.'\n'Default templates': 'Основни шаблони'\n'System Preferences': 'Системске поставке'\n'The date must be in the future.': 'Датум мора бити у будућности.'\nSend: Пошаљи\n'Thank you.': Хвала.\n'Please take a minute to send us an email.': 'Молимо Вас одвојите који минут да нам пошаљете имејл'\n(optional): (опционо)\n'The URL you entered is invalid: $1': 'УРЛ који сте унели је неисправан: $1'\nReads: читања\n'Publish with issue': 'Објави заједно са издањем'\n'Universal List': 'Универзална листа'\n'Invalid security token!': 'Погрешан сигурносни симбол'\nAuthors: Аутори\nTitle: Наслов\n'Edit country': 'Изабери државу'\n'Entry $1 prepared for publishing': '$1 спремно за објављивање'\n'Entry deleted': Обрисано\n'Feed saved': null\n'Item published': 'Ставка је објављена'\n'Settings saved': 'Подешавања сачувана'\n'Self-delete is not permitted.': 'Није могуће избрисати свој налог.'\n'Edit staff member $1': 'Уреди сарадника $1'\n'Delete staff member $1': 'Избриши сарадника $1'\n'Could not save user $1. Please make sure it does not already exist': 'Корисник $1 није сачуван. Проверите да ли већ постоји у систему.'\n'Could not save user with e-mail address $1. Please make sure it does not already exist': 'Корисник са мејл адресом  $1 није сачуван. Проверите да ли већ постоји у систему.'\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': 'Сарадник сачуван.'\n'Permissions: $1': 'Права: $1'\n'Change user account information': 'Промени податке о кориснику'\n'Staff management': 'Управљање сарадничким налозима'\nUpdated: Измењено\nOptions: Опције\nVerified: Верификовано\nConfirm: Потврђено\nat: у\npublished: објављено\nunpublished: повучено\nnopermissions: 'Немате право да приступите страни'\nimportantmessage: 'Важна информација'\nanonymous: Анонимус\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.sv.yml",
    "content": "Plugins: null\n'Manage Plugins': null\nAccount: Konto\n'Items per page': 'Föremål per sida'\n'Add new': 'Lägg till ny'\nHome: Hem\nLogout: 'Logga ut'\nMore...: Mer...\nContent: Innehåll\nLanguages: Språk\nCountries: Länder\nThemes: Mallar\nTopics: Teman\nConfigure: Inställningar\n'Image Archive': Bildarkiv\n'Add Article': 'Lägg till artikel'\nFields: Fält\nDelete: Radera\nType: Typ\nName: Namn\nCode: Kod\nEdit: Redigera\nLogin: Inloggning\nPassword: Lösenord\nSite: Sajt\nPath: Sökväg\n'Go up': 'Gå upp'\nURL: URL\nOrder: Ordning\nHide: Göm\nDuplicate: Dubblett\nSubscription: Prenumeration\nexpires: förfaller\nstarts: börjar\nbefore: före\nafter: efter\non: på\nstatus: status\nactive: aktiv\ninactive: inaktiv\nSubscribers: Prenumeranter\nStaff: Stab\n'Select destination': 'Välj destination'\n'No languages': 'Inga språk'\n'---Select language---': '---Välj språk---'\n'No publications': 'Inga publikationer'\n'---Select publication---': '---Välj publikation---'\n'No issues': 'Inga artiklar'\n'---Select issue---': '---Välj artikel---'\n'No sections': 'Inga sektioner'\n'---Select section---': '---Välj sektion---'\nLanguage: Språk\nCountry: Land\n'Account name': Kontonamn\nPublication: Publikation\n'Default language': 'Förvalt språk'\nSubscriptions: Prenumerationer\nIssue: Utgåva\nNumber: Nummer\nSection: Sektion\nKeywords: Nyckelord\nTopic: Tema\n'URL Name': URL-namn\n'Left to pay': 'Kvar att betala'\nActive: Aktiv\nTrial: Prov\nNext: Nästa\nPrevious: Föregående\nTranslate: Översätt\nView: Visa\n'Scheduled Publishing': 'Schemalagd publicering'\nTime: Tid\nAction: Händelse\n'Schedule a new action': 'Schemalägg ny händelse'\n'Scheduling a new publish action': 'Schemalägg ny publiceringshändelse'\n'Delete scheduled publish action': 'Radera schemalagd publiceringshändelse'\nDate/Time: Datum/Tid\n'You must select an action.': 'Du måste välja en händelse.'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'Du har inte rätt att schemalägga utgåvor eller artiklar för automatisk publicering.'\n'Front page': Framsida\n'Section page': Sektionssida\n'Show on front page': 'Visa på framsidan'\n'Remove from front page': 'Ta bort från framsidan'\n'Show on section page': 'Visa på sektionssidan'\n'Remove from section page': 'Ta bort från sektionssidan'\nActions: Handlingar\nPublishing: Publicering\nShow: Visa\nRemove: 'Ta bort'\n'Article Types': Artikeltyper\n'Staff User Types': Stabsanvändartyper\nPublications: Publikationer\nIssues: Utgåvor\nSections: Sektioner\nArticles: Artiklar\nImages: Bilder\nChange: Ändra\n'Add new issue': 'Lägg till ny utgåva'\n'Section Template': Sektionsmall\n'Article Template': Artikelmall\n'Default Language': 'Förvalt språk'\n'Paid Period': 'Betald period'\nPreview: Förhandsgranska\n'You must fill in the $1 field.': 'Du måste fylla i fältet $1.'\nError: Fel\n'Invalid input: $1': 'Felaktig inmatning: $1'\n'Language does not exist.': 'Språket finns inte.'\n'Publication does not exist.': 'Publikationen finns inte.'\n'Issue does not exist.': 'Utgåvan finns inte.'\n'You must select a language.': 'Du måste välja ett språk.'\n'Section does not exist.': 'Sektionen finns inte.'\n'No articles.': 'Inga artiklar.'\n'Article does not exist.': 'Artikeln finns inte.'\n'Image does not exist.': 'Bilden finns inte.'\n'Access denied': 'Åtkomst nekad'\n'Invalid parameters received': 'Felaktiga parametrar mottagna'\n'Add new article': 'Lägg till ny artikel'\nStatus: Status\nPublished: Publicerad\n'Not published': Opublicerad\nSubmitted: Insänd\nNew: Ny\nArticle: Artikel\nPublish: Publicera\nUnpublish: Avpublicera\nUnlock: 'Lås upp'\nUploaded: Uppladdad\nYYYY-MM-DD: ÅÅÅÅ-MM-DD\nSubmit: Skicka\nImage: Bild\nDescription: Beskrivning\nPhotographer: Fotograf\nPlace: Plats\nDate: Datum\nThumbnail: Förhandsvisning\n'In use': Används\n'Additional searches': 'Extra sökningar'\n'Most Recently Added': 'Senast tillagda'\n'Most Recently Modified': 'Senast ändrade'\n'$1 images found': '$1 bilder hittades'\n'Reset search conditions': 'Nollställ sökvillkoren'\n'Image number': 'Bild nummer'\nUsers: Användare\nLocalizer: Översättaren\n'Adding new translation': 'Lägger till ny översättning'\n'No more languages.': 'Inga fler språk'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'Fältet $1 får bara innehålla bokstäver, siffror och understreck (_).'\n'Add new publication': 'Lägg till ny publikation'\n'Upload new template': 'Ladda upp ny mall'\n'Add new staff member': 'Lägg till ny stabsmedlem'\n'Staff member deleted.': null\n'Add new subscriber': 'Lägg till ny prenumerant'\n'Add new user type': 'Lägg till ny användartyp'\n'Add new article type': 'Lägg till ny artikeltyp'\n'Add new country': 'Lägg till nytt land'\n'Add new language': 'Lägg till nytt språk'\n'View logs': 'Visa Loggar'\n'Change your password': 'Ändra ditt lösenord'\n'Your Articles': 'Dina artiklar'\n'Submitted Articles': 'Insända artiklar'\nLogs: Loggar\n'There are $1 article(s) left.': 'Det finns kvar $1 artikel(ar).'\n'There are $1 issues(s) left.': 'Det finns kvar $1 utgåva(or).'\n'There are $1 section(s) left.': 'Det finns kvar $1 sektion(er).'\n'There are $1 publication(s) left.': 'Det finns kvar $1 publikation(er).'\n'There are $1 countries left.': 'Det finns kvar $1 land/länder.'\n'Name <SMALL>(click to edit)</SMALL>': 'Namn <SMALL>(klicka för att redigera)</SMALL>'\n'Add new subscription': 'Lägg till ny prenumeration'\n'You do not have the right to add subscriptions.': 'Du har inte rätt att lägga till prenumerationer.'\n'Adding subscription': 'Lägger till prenumeration'\n'Delete subscription': 'Radera prenumeration'\n'You do not have the right to delete subscriptions.': 'Du har inte rätt att radera prenumerationer.'\n'No such subscription.': 'Prenumeranten finns inte.'\nYes: Ja\nNo: Nej\nClose: Stäng\n'No issues.': 'Inga utgåvor.'\n'Back to Edit Article': 'Tillbaka till Redigera artikel'\n'No topics': 'Inga teman'\n'You do not have the right to add articles.': 'Du har inte rätt att lägga till artiklar.'\nStart: Start\nDays: Dagar\n'The sections could not be added successfully. Some of them were already added !': 'Sektionerna kunde inte läggas till framgångsrikt. Några fanns redan!'\n'Add another': 'Lägg till en till'\nCancel: Avbryt\nDone: Klar\nOK: OK\nSave: Spara\nSearch: Sök\n'Make a selection': 'Gör ett val'\n'You must input a number greater than 0 into the $1 field.': 'Du måste skriva in ett nummer större än 0 i fältet $1.'\n'You must input a valid date.': 'Du måste skriva ett korrekt datum.'\n'Add new field': 'Lägg till nytt fält'\n'Article automatic publishing schedule': 'Automatiskt artikelpubliceringsschema'\n'Are you sure you want to delete this scheduled action?': 'Är du säker att du vill radera denna schemalagda händelse?'\nUnlink: 'Ta bort länkning'\n'Are you sure you want to delete the image $1?': 'Är du säker att du vill radera bilden $1?'\n'No such issue.': 'Utgåvan finns inte.'\n'Are you sure you want to delete the subscription to the publication $1?': 'Är du säker att du vill radera prenumerationen till publikationen $1?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Kunde inte spara ändringar till utgåvan $1. Vor god kontrollera att URL-namnet $2 inte har använts tidigare i publikationen $3.'\nGB: GB\nMB: MB\nKB: KB\nbytes: byte\nAttach: Bifoga\nBack: Bakåt\nFile: Fil\n'Save and Close': 'Spara och stäng'\nAdd: 'Lägg till'\n'Select All': 'Markera alla'\n'Select None': 'Avmarkera alla'\n'Add Event': 'Lägg till händelse'\nN/A: 'Ej tillgängligt'\n'On Front Page': 'På framsidan'\n'On Section Page': 'På sektionssidan'\n'Created by': 'Skapad av'\n'Creation date': 'Skapad datum'\n'Publication List': Publikationslista\n'Issue List': Utgåvslista\n'Section List': Sektionslista\nAll: Alla\nduplicate: duplicera\nmove: flytta\nMove: Flytta\n'From:': 'Från:'\n'Date:': 'Datum:'\nHidden: Gömd\nComments: Kommentarer\nComment: Kommentar\nApproved: Godkänd\nSubject: Ämne\n'IP address:': 'IP-adress:'\n'Email:': 'E-post:'\nAuthor: Författare\n'Article name': Artikelnamn\n'Hide article': 'Göm artikel'\n'Show article': 'Visa artikel'\n'Article Type Fields': Artikeltypfält\n'Article Images': Artikelbilder\n'Log Messages': Logmeddellanden\n'Article Files': Artikelfiler\n'Article Comments': Artikelkommentarer\n'Are you sure you want to deactivate the subscription?': 'Är du säker att du vill avaktivera prenumerationen?'\n'Are you sure you want to activate the subscription?': 'Är du säker att du vill aktivera prenumerationen?'\nOther: null\n'Time:': 'Tid:'\n'No events.': 'Inga händelser.'\n'Default templates': null\n'System Preferences': Systeminställningar\n'The date must be in the future.': 'Datumet måste vara i framtiden'\nSend: Skicka\n'Thank you.': Tack.\n'Please take a minute to send us an email.': null\n(optional): (frivilligt)\n'The URL you entered is invalid: $1': 'Den URL du skrev in är ogiltig: $1'\nReads: null\n'Publish with issue': null\n'Universal List': null\n'Invalid security token!': null\nAuthors: null\nTitle: null\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.tr.yml",
    "content": "Plugins: null\n'Manage Plugins': null\nAccount: null\n'Items per page': null\n'Add new': null\nHome: null\nLogout: null\nMore...: null\nContent: null\nLanguages: null\nCountries: null\nThemes: null\nTopics: null\nConfigure: null\n'Image Archive': null\n'Add Article': null\nFields: null\nDelete: null\nType: null\nName: null\nCode: null\nEdit: null\nLogin: İleri\nPassword: Şifreniz\nSite: null\nPath: null\n'Go up': null\nURL: null\nOrder: null\nHide: null\nDuplicate: null\nSubscription: null\nexpires: null\nstarts: null\nbefore: null\nafter: null\non: null\nstatus: null\nactive: null\ninactive: null\nSubscribers: null\nStaff: null\n'Select destination': null\n'No languages': null\n'---Select language---': null\n'No publications': null\n'---Select publication---': null\n'No issues': null\n'---Select issue---': null\n'No sections': null\n'---Select section---': null\nLanguage: null\nCountry: null\n'Account name': null\nPublication: null\n'Default language': null\nSubscriptions: null\nIssue: null\nNumber: null\nSection: null\nKeywords: null\nTopic: null\n'URL Name': null\n'Left to pay': null\nActive: null\nTrial: null\nNext: null\nPrevious: null\nTranslate: null\nView: null\n'Scheduled Publishing': null\nTime: null\nAction: null\n'Schedule a new action': null\n'Scheduling a new publish action': null\n'Delete scheduled publish action': null\nDate/Time: null\n'You must select an action.': null\n'You do not have the right to schedule issues or articles for automatic publishing.': null\n'Front page': null\n'Section page': null\n'Show on front page': null\n'Remove from front page': null\n'Show on section page': null\n'Remove from section page': null\nActions: null\nPublishing: null\nShow: null\nRemove: null\n'Article Types': null\n'Staff User Types': null\nPublications: null\nIssues: null\nSections: null\nArticles: null\nImages: null\nChange: null\n'Add new issue': null\n'Section Template': null\n'Article Template': null\n'Default Language': null\n'Paid Period': null\nPreview: null\n'You must fill in the $1 field.': null\nError: null\n'Invalid input: $1': null\n'Language does not exist.': null\n'Publication does not exist.': null\n'Issue does not exist.': null\n'You must select a language.': null\n'Section does not exist.': null\n'No articles.': null\n'Article does not exist.': null\n'Image does not exist.': null\n'Access denied': null\n'Invalid parameters received': null\n'Add new article': null\nStatus: null\nPublished: null\n'Not published': null\nSubmitted: null\nNew: null\nArticle: null\nPublish: null\nUnpublish: null\nUnlock: null\nUploaded: null\nYYYY-MM-DD: null\nSubmit: null\nImage: null\nDescription: null\nPhotographer: null\nPlace: null\nDate: null\nThumbnail: null\n'In use': null\n'Additional searches': null\n'Most Recently Added': null\n'Most Recently Modified': null\n'$1 images found': null\n'Reset search conditions': null\n'Image number': null\nUsers: null\nLocalizer: null\n'Adding new translation': null\n'No more languages.': null\n'The $1 field may only contain letters, digits and underscore (_) character.': null\n'Add new publication': null\n'Upload new template': null\n'Add new staff member': null\n'Staff member deleted.': null\n'Add new subscriber': null\n'Add new user type': null\n'Add new article type': null\n'Add new country': null\n'Add new language': null\n'View logs': null\n'Change your password': null\n'Your Articles': null\n'Submitted Articles': null\nLogs: null\n'There are $1 article(s) left.': null\n'There are $1 issues(s) left.': null\n'There are $1 section(s) left.': null\n'There are $1 publication(s) left.': null\n'There are $1 countries left.': null\n'Name <SMALL>(click to edit)</SMALL>': null\n'Add new subscription': null\n'You do not have the right to add subscriptions.': null\n'Adding subscription': null\n'Delete subscription': null\n'You do not have the right to delete subscriptions.': null\n'No such subscription.': null\nYes: null\nNo: null\nClose: null\n'No issues.': null\n'Back to Edit Article': null\n'No topics': null\n'You do not have the right to add articles.': null\nStart: null\nDays: null\n'The sections could not be added successfully. Some of them were already added !': null\n'Add another': null\nCancel: null\nDone: null\nOK: null\nSave: null\nSearch: null\n'Make a selection': null\n'You must input a number greater than 0 into the $1 field.': null\n'You must input a valid date.': null\n'Add new field': null\n'Article automatic publishing schedule': null\n'Are you sure you want to delete this scheduled action?': null\nUnlink: null\n'Are you sure you want to delete the image $1?': null\n'No such issue.': null\n'Are you sure you want to delete the subscription to the publication $1?': null\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': null\nGB: null\nMB: null\nKB: null\nbytes: null\nAttach: null\nBack: null\nFile: null\n'Save and Close': null\nAdd: null\n'Select All': null\n'Select None': null\n'Add Event': null\nN/A: null\n'On Front Page': null\n'On Section Page': null\n'Created by': null\n'Creation date': null\n'Publication List': null\n'Issue List': null\n'Section List': null\nAll: null\nduplicate: null\nmove: null\nMove: null\n'From:': null\n'Date:': null\nHidden: null\nComments: null\nComment: null\nApproved: null\nSubject: null\n'IP address:': null\n'Email:': null\nAuthor: null\n'Article name': null\n'Hide article': null\n'Show article': null\n'Article Type Fields': null\n'Article Images': null\n'Log Messages': null\n'Article Files': null\n'Article Comments': null\n'Are you sure you want to deactivate the subscription?': null\n'Are you sure you want to activate the subscription?': null\nOther: null\n'Time:': null\n'No events.': null\n'Default templates': null\n'System Preferences': null\n'The date must be in the future.': null\nSend: null\n'Thank you.': null\n'Please take a minute to send us an email.': null\n(optional): null\n'The URL you entered is invalid: $1': null\nReads: null\n'Publish with issue': null\n'Universal List': null\n'Invalid security token!': null\nAuthors: null\nTitle: null\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.uk.yml",
    "content": "Plugins: Плагіни\n'Manage Plugins': 'Керування плагінами'\nAccount: 'Обліковий запис'\n'Items per page': 'кількість на сторінку'\n'Add new': 'Додати нове'\nHome: 'На початок'\nLogout: Вийти\nMore...: Більше\nContent: Контент\nLanguages: Мова\nCountries: Країни\nThemes: Теми\nTopics: Теми\nConfigure: Конфігурація\n'Image Archive': медіаархів\n'Add Article': 'Додати статтю'\nFields: Поля\nDelete: Видалити\nType: Тип\nName: Назва\nCode: Код\nEdit: Редагувати\nLogin: Увійти\nPassword: Пароль\nSite: Сайт\nPath: шлях\n'Go up': Наверх\nURL: Посилання\nOrder: Упорядкування\nHide: Приховати\nDuplicate: Дублювати\nSubscription: Підписка\nexpires: закінчується\nstarts: починаеться\nbefore: до\nafter: після\non: на\nstatus: статус\nactive: активно\ninactive: неактивно\nSubscribers: Підписувачи\nStaff: Персонал\n'Select destination': 'Виберіть локацію'\n'No languages': 'Без мови'\n'---Select language---': 'Виберіть мову'\n'No publications': 'Немає публікацій'\n'---Select publication---': 'Виберіть публікацію'\n'No issues': 'Немає випусків'\n'---Select issue---': 'Виберіть випуск'\n'No sections': 'Немає секції'\n'---Select section---': 'Виберіть секцію'\nLanguage: Мова\nCountry: Країна\n'Account name': 'Им’я акаунту'\nPublication: Публікація\n'Default language': 'Мова за замовчуванням'\nSubscriptions: Підписки\nIssue: Випуск\nNumber: Номер\nSection: Секція\nKeywords: 'Ключові слова'\nTopic: Тема\n'URL Name': 'Текст посилання'\n'Left to pay': Сплатити\nActive: Активно\nTrial: Тимчасово\nNext: Наступне\nPrevious: Попереднє\nTranslate: Перекласти\nView: Переглянути\n'Scheduled Publishing': 'Заплановані публікаці'\nTime: Час\nAction: Дія\n'Schedule a new action': 'Розклад нових дій'\n'Scheduling a new publish action': 'Планування нових дій з публікацією'\n'Delete scheduled publish action': 'Видалити заплановану дію'\nDate/Time: 'Дата /  Час:ua'\n'You must select an action.': 'Ви повинні вибрати дію'\n'You do not have the right to schedule issues or articles for automatic publishing.': 'Ви не маєте прав для планування випусків або статей для автоматичних публікацій'\n'Front page': 'Головна сторінка'\n'Section page': 'Розділ сторінки'\n'Show on front page': 'Показати на головній'\n'Remove from front page': 'Прибрати з головної'\n'Show on section page': 'Показати на сторінках розділів'\n'Remove from section page': 'Прибрати з сторінок розділів'\nActions: Дії\nPublishing: Публик\nShow: Показати\nRemove: Видалити\n'Article Types': 'Тип статті'\n'Staff User Types': 'Staff User Types'\nPublications: Публікації\nIssues: Випуски\nSections: Секції\nArticles: Статті\nImages: Зображення\nChange: Змінити\n'Add new issue': 'Додати новий випуск'\n'Section Template': 'Виберіть шаблон'\n'Article Template': 'Шаблон статей'\n'Default Language': 'Мова за замовчуванням'\n'Paid Period': 'Термін передоплати'\nPreview: Перегляд\n'You must fill in the $1 field.': 'Ви маєте заповнити поле $1'\nError: Помилка\n'Invalid input: $1': 'Некоректні дані'\n'Language does not exist.': 'Мови не існує'\n'Publication does not exist.': 'Публікації не існує'\n'Issue does not exist.': 'Випуска не існує'\n'You must select a language.': 'Ви маете вибрати мову'\n'Section does not exist.': 'Секції не існує'\n'No articles.': 'Немає статей'\n'Article does not exist.': 'Статті не існує'\n'Image does not exist.': 'Зображення не існує'\n'Access denied': 'Доступ заборонено'\n'Invalid parameters received': 'Передані невірні параметри'\n'Add new article': 'Додати статтю'\nStatus: Статус\nPublished: Опубліковано\n'Not published': 'Не опубліковано'\nSubmitted: Розміщено\nNew: Нове\nArticle: Стаття\nPublish: Опублікувати\nUnpublish: 'Скасувати публікацію'\nUnlock: Розблокувати\nUploaded: Завантажено\nYYYY-MM-DD: ГГГГ-ММ-ДД\nSubmit: 'Ок(?)'\nImage: Зображення\nDescription: Опис\nPhotographer: Фотограф\nPlace: Місце\nDate: Дата\nThumbnail: мініатюра\n'In use': 'У використанні'\n'Additional searches': 'Додатковий пошук'\n'Most Recently Added': 'Останні додані'\n'Most Recently Modified': 'Останні змінені'\n'$1 images found': '$1 зображень, знайдених'\n'Reset search conditions': 'Очистити умови пошуку'\n'Image number': 'Номер зображення'\nUsers: Користувачі\nLocalizer: Локалізатор\n'Adding new translation': 'Додати новий переклад'\n'No more languages.': 'Більше мов не можливо'\n'The $1 field may only contain letters, digits and underscore (_) character.': 'поле $1 може містить лише літери, цифри та символ підкреслення'\n'Add new publication': 'Додати нову публікацію'\n'Upload new template': 'Завантажити новий шаблон'\n'Add new staff member': 'Додати нового стаффера'\n'Staff member deleted.': null\n'Add new subscriber': 'Додати нового підписувача'\n'Add new user type': 'Додати новий тип користувачів'\n'Add new article type': 'Додати новий тип статей'\n'Add new country': 'Додати країну'\n'Add new language': 'Додати мову'\n'View logs': 'Переглянути логі'\n'Change your password': 'Змінити пароль'\n'Your Articles': 'Ваші статті'\n'Submitted Articles': 'Розміщені статті'\nLogs: Логи\n'There are $1 article(s) left.': 'Залишилось $1 статей.'\n'There are $1 issues(s) left.': 'Залишилось $1 випускiв'\n'There are $1 section(s) left.': 'Залишилось $1 секцій'\n'There are $1 publication(s) left.': 'Залишилось $1 публікацій'\n'There are $1 countries left.': 'Залишилось $1 країн'\n'Name <SMALL>(click to edit)</SMALL>': Ім’я<SMALL>(редагувати)</SMALL>\n'Add new subscription': 'Додати новий опис'\n'You do not have the right to add subscriptions.': 'Ви не маєте прав на додання опису'\n'Adding subscription': 'Додання опису'\n'Delete subscription': 'Видалення опису'\n'You do not have the right to delete subscriptions.': 'Ви не маєте прав на видалення опису'\n'No such subscription.': 'Немає такого опису'\nYes: Так\nNo: Ні\nClose: Закрити\n'No issues.': 'Немає випусків'\n'Back to Edit Article': 'Назад до редагування статті'\n'No topics': 'Немає тем'\n'You do not have the right to add articles.': 'Ви не маєте прав додавати статті'\nStart: Початок\nDays: Дні\n'The sections could not be added successfully. Some of them were already added !': 'Секція не була додана. Деякі з них були вже додані!'\n'Add another': 'Додати іншу'\nCancel: Відмінити\nDone: Закінчено\nOK: Добре\nSave: Зберегти\nSearch: Пошук\n'Make a selection': Виділити\n'You must input a number greater than 0 into the $1 field.': 'Ви маєте ввести цифри більше 0 у поле $1'\n'You must input a valid date.': 'Введіть коректну дату'\n'Add new field': 'Додати нове поле'\n'Article automatic publishing schedule': 'Розклад автоматичних публікацій'\n'Are you sure you want to delete this scheduled action?': 'Ви впевнені що хочете видалити заплановані дії'\nUnlink: Анлинк\n'Are you sure you want to delete the image $1?': 'Ви впевнені що хочете видалити зображення  $1?'\n'No such issue.': 'Немає такого випуску'\n'Are you sure you want to delete the subscription to the publication $1?': 'Ви впевнені що хочете видалил підписку на публікацію $1?'\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': 'Не вдалося зберегти зміни в питанні $ 1. Будь ласка, переконайтеся, що посилання випуску $2  не було використано раніше у випуску $3'\nGB: ВБ\nMB: Мб\nKB: Кб\nbytes: байт\nAttach: Прікріпити\nBack: Назад\nFile: Файл\n'Save and Close': 'Зберегти та Закрити'\nAdd: Додати\n'Select All': 'Вибрати все'\n'Select None': 'Не вибирати'\n'Add Event': 'Додати подію'\nN/A: Н/Д\n'On Front Page': 'На титульну сторінку'\n'On Section Page': 'На сторінку секції'\n'Created by': 'Створено '\n'Creation date': 'Дата створення'\n'Publication List': 'Список публікацій'\n'Issue List': 'Список випусків'\n'Section List': 'Список секцій'\nAll: Все\nduplicate: дублювання\nmove: переміщення\nMove: Переміщення\n'From:': 'З:'\n'Date:': 'Дата:'\nHidden: Приховано\nComments: Коментарі\nComment: Коментар\nApproved: Дозволено\nSubject: Тема\n'IP address:': 'IP-адреса:'\n'Email:': 'Е-пошта:'\nAuthor: Автор\n'Article name': 'Назва статті'\n'Hide article': 'Приховати статтю'\n'Show article': 'Показати статтю'\n'Article Type Fields': 'Тип полів статті'\n'Article Images': 'Зображення статті'\n'Log Messages': 'Журнал повідомлень'\n'Article Files': 'Файли статті'\n'Article Comments': 'Коментарі статті'\n'Are you sure you want to deactivate the subscription?': 'Ви впевнені що хочете деактивувати підписку?'\n'Are you sure you want to activate the subscription?': 'Ви впевнені що хочете активувати підписку?'\nOther: Інше\n'Time:': 'Час:'\n'No events.': 'Немає подій'\n'Default templates': 'Базовий шабон'\n'System Preferences': 'Системні налаштування'\n'The date must be in the future.': 'Дата має бути більшою за поточну '\nSend: Відправити\n'Thank you.': Д’якуємо\n'Please take a minute to send us an email.': 'Будь-ласка виділить хвилинку та відправте листа'\n(optional): опційно\n'The URL you entered is invalid: $1': 'Введене Вами посилання не коректне:  $1'\nReads: Читати\n'Publish with issue': 'Опублікувати з випуском'\n'Universal List': 'Універсальний список'\n'Invalid security token!': 'Недійсний маркер безпеки!'\nAuthors: Автори\nTitle: Заголовок\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: на\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.vi.yml",
    "content": "Plugins: null\n'Manage Plugins': null\nAccount: null\n'Items per page': null\n'Add new': null\nHome: null\nLogout: null\nMore...: null\nContent: null\nLanguages: null\nCountries: null\nThemes: null\nTopics: null\nConfigure: null\n'Image Archive': null\n'Add Article': null\nFields: null\nDelete: null\nType: null\nName: null\nCode: null\nEdit: null\nLogin: null\nPassword: null\nSite: null\nPath: null\n'Go up': null\nURL: null\nOrder: null\nHide: null\nDuplicate: null\nSubscription: null\nexpires: null\nstarts: null\nbefore: null\nafter: null\non: null\nstatus: null\nactive: null\ninactive: null\nSubscribers: null\nStaff: null\n'Select destination': null\n'No languages': null\n'---Select language---': null\n'No publications': null\n'---Select publication---': null\n'No issues': null\n'---Select issue---': null\n'No sections': null\n'---Select section---': null\nLanguage: null\nCountry: null\n'Account name': null\nPublication: null\n'Default language': null\nSubscriptions: null\nIssue: null\nNumber: null\nSection: null\nKeywords: null\nTopic: null\n'URL Name': null\n'Left to pay': null\nActive: null\nTrial: null\nNext: null\nPrevious: null\nTranslate: null\nView: null\n'Scheduled Publishing': null\nTime: null\nAction: null\n'Schedule a new action': null\n'Scheduling a new publish action': null\n'Delete scheduled publish action': null\nDate/Time: null\n'You must select an action.': null\n'You do not have the right to schedule issues or articles for automatic publishing.': null\n'Front page': null\n'Section page': null\n'Show on front page': null\n'Remove from front page': null\n'Show on section page': null\n'Remove from section page': null\nActions: null\nPublishing: null\nShow: null\nRemove: null\n'Article Types': null\n'Staff User Types': null\nPublications: null\nIssues: null\nSections: null\nArticles: null\nImages: null\nChange: null\n'Add new issue': null\n'Section Template': null\n'Article Template': null\n'Default Language': null\n'Paid Period': null\nPreview: null\n'You must fill in the $1 field.': null\nError: null\n'Invalid input: $1': null\n'Language does not exist.': null\n'Publication does not exist.': null\n'Issue does not exist.': null\n'You must select a language.': null\n'Section does not exist.': null\n'No articles.': null\n'Article does not exist.': null\n'Image does not exist.': null\n'Access denied': null\n'Invalid parameters received': null\n'Add new article': null\nStatus: null\nPublished: null\n'Not published': null\nSubmitted: null\nNew: null\nArticle: null\nPublish: null\nUnpublish: null\nUnlock: null\nUploaded: null\nYYYY-MM-DD: null\nSubmit: null\nImage: null\nDescription: null\nPhotographer: null\nPlace: null\nDate: null\nThumbnail: null\n'In use': null\n'Additional searches': null\n'Most Recently Added': null\n'Most Recently Modified': null\n'$1 images found': null\n'Reset search conditions': null\n'Image number': null\nUsers: null\nLocalizer: null\n'Adding new translation': null\n'No more languages.': null\n'The $1 field may only contain letters, digits and underscore (_) character.': null\n'Add new publication': null\n'Upload new template': null\n'Add new staff member': null\n'Staff member deleted.': null\n'Add new subscriber': null\n'Add new user type': null\n'Add new article type': null\n'Add new country': null\n'Add new language': null\n'View logs': null\n'Change your password': null\n'Your Articles': null\n'Submitted Articles': null\nLogs: null\n'There are $1 article(s) left.': null\n'There are $1 issues(s) left.': null\n'There are $1 section(s) left.': null\n'There are $1 publication(s) left.': null\n'There are $1 countries left.': null\n'Name <SMALL>(click to edit)</SMALL>': null\n'Add new subscription': null\n'You do not have the right to add subscriptions.': null\n'Adding subscription': null\n'Delete subscription': null\n'You do not have the right to delete subscriptions.': null\n'No such subscription.': null\nYes: null\nNo: null\nClose: null\n'No issues.': null\n'Back to Edit Article': null\n'No topics': null\n'You do not have the right to add articles.': null\nStart: null\nDays: null\n'The sections could not be added successfully. Some of them were already added !': null\n'Add another': null\nCancel: null\nDone: null\nOK: null\nSave: null\nSearch: null\n'Make a selection': null\n'You must input a number greater than 0 into the $1 field.': null\n'You must input a valid date.': null\n'Add new field': null\n'Article automatic publishing schedule': null\n'Are you sure you want to delete this scheduled action?': null\nUnlink: null\n'Are you sure you want to delete the image $1?': null\n'No such issue.': null\n'Are you sure you want to delete the subscription to the publication $1?': null\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': null\nGB: null\nMB: null\nKB: null\nbytes: null\nAttach: null\nBack: null\nFile: null\n'Save and Close': null\nAdd: null\n'Select All': null\n'Select None': null\n'Add Event': null\nN/A: null\n'On Front Page': null\n'On Section Page': null\n'Created by': null\n'Creation date': null\n'Publication List': null\n'Issue List': null\n'Section List': null\nAll: null\nduplicate: null\nmove: null\nMove: null\n'From:': null\n'Date:': null\nHidden: null\nComments: null\nComment: null\nApproved: null\nSubject: null\n'IP address:': null\n'Email:': null\nAuthor: null\n'Article name': null\n'Hide article': null\n'Show article': null\n'Article Type Fields': null\n'Article Images': null\n'Log Messages': null\n'Article Files': null\n'Article Comments': null\n'Are you sure you want to deactivate the subscription?': null\n'Are you sure you want to activate the subscription?': null\nOther: null\n'Time:': null\n'No events.': null\n'Default templates': null\n'System Preferences': null\n'The date must be in the future.': null\nSend: null\n'Thank you.': null\n'Please take a minute to send us an email.': null\n(optional): null\n'The URL you entered is invalid: $1': null\nReads: null\n'Publish with issue': null\n'Universal List': null\n'Invalid security token!': null\nAuthors: null\nTitle: null\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.zh.yml",
    "content": "Plugins: null\n'Manage Plugins': null\nAccount: null\n'Items per page': null\n'Add new': null\nHome: 首页\nLogout: 注销\nMore...: null\nContent: null\nLanguages: 语言\nCountries: 国家\nThemes: 模版\nTopics: 主题\nConfigure: null\n'Image Archive': null\n'Add Article': null\nFields: 字段\nDelete: 删除\nType: 输入\nName: 名称\nCode: 号码\nEdit: 编辑\nLogin: 登陆\nPassword: 密码\nSite: 地址\nPath: 路径\n'Go up': 向上\nURL: null\nOrder: null\nHide: null\nDuplicate: 复制\nSubscription: null\nexpires: null\nstarts: null\nbefore: null\nafter: null\non: null\nstatus: 状态\nactive: null\ninactive: null\nSubscribers: null\nStaff: 职员\n'Select destination': null\n'No languages': 无语言\n'---Select language---': －－选择语言－－\n'No publications': 无出版物\n'---Select publication---': －－选择出版物－－\n'No issues': 无文章\n'---Select issue---': －－选择文章－－\n'No sections': 无区\n'---Select section---': －－选择区－－\nLanguage: 语言\nCountry: 国家\n'Account name': null\nPublication: 出版物\n'Default language': 默认语言\nSubscriptions: 订阅\nIssue: 问题\nNumber: 数字\nSection: 区\nKeywords: 关键词\nTopic: 主题\n'URL Name': null\n'Left to pay': null\nActive: null\nTrial: 试用\nNext: 下一个\nPrevious: 上一个\nTranslate: 翻译\nView: 查看\n'Scheduled Publishing': null\nTime: null\nAction: null\n'Schedule a new action': null\n'Scheduling a new publish action': null\n'Delete scheduled publish action': null\nDate/Time: '&#26085;&#26399;/&#26102;&#38388;'\n'You must select an action.': null\n'You do not have the right to schedule issues or articles for automatic publishing.': null\n'Front page': null\n'Section page': null\n'Show on front page': null\n'Remove from front page': null\n'Show on section page': null\n'Remove from section page': null\nActions: null\nPublishing: 出版物\nShow: null\nRemove: null\n'Article Types': 文章类型\n'Staff User Types': null\nPublications: 出版物\nIssues: 问题\nSections: 区域\nArticles: 文章\nImages: 图片\nChange: 变化\n'Add new issue': 添加新论题\n'Section Template': null\n'Article Template': null\n'Default Language': 默认语言\n'Paid Period': 已付期\nPreview: 预览\n'You must fill in the $1 field.': 你必须填写$1字段\nError: null\n'Invalid input: $1': null\n'Language does not exist.': null\n'Publication does not exist.': 无此出版物\n'Issue does not exist.': null\n'You must select a language.': 您必须选择一种语言\n'Section does not exist.': null\n'No articles.': 无此文字\n'Article does not exist.': null\n'Image does not exist.': null\n'Access denied': 拒绝访问\n'Invalid parameters received': null\n'Add new article': 添加新文章\nStatus: 状态\nPublished: 已发布\n'Not published': 未发布\nSubmitted: 已提交\nNew: 新\nArticle: 文章\nPublish: 发布\nUnpublish: 不发布\nUnlock: 解锁\nUploaded: 已上载\nYYYY-MM-DD: YYYY-MM-DD\nSubmit: 提交\nImage: 图片\nDescription: 描述\nPhotographer: 摄影\nPlace: 地点\nDate: 日期\nThumbnail: null\n'In use': null\n'Additional searches': null\n'Most Recently Added': null\n'Most Recently Modified': null\n'$1 images found': null\n'Reset search conditions': null\n'Image number': 图片号码\nUsers: 用户\nLocalizer: null\n'Adding new translation': 添加新翻译\n'No more languages.': 无更多语言\n'The $1 field may only contain letters, digits and underscore (_) character.': null\n'Add new publication': 添加新发布\n'Upload new template': 上载新模版\n'Add new staff member': null\n'Staff member deleted.': null\n'Add new subscriber': null\n'Add new user type': 添加新用户类型\n'Add new article type': 添加新文章类型\n'Add new country': 添加新国家\n'Add new language': 添加新语言\n'View logs': 查看日志\n'Change your password': 修改你的密码\n'Your Articles': 你的文章\n'Submitted Articles': 提交文章\nLogs: 日志\n'There are $1 article(s) left.': 还有$1篇文章\n'There are $1 issues(s) left.': null\n'There are $1 section(s) left.': 还有$1区\n'There are $1 publication(s) left.': 还有$1发布\n'There are $1 countries left.': 还有$1个国家\n'Name <SMALL>(click to edit)</SMALL>': null\n'Add new subscription': 添加新订阅\n'You do not have the right to add subscriptions.': 你没有添加订阅的权限\n'Adding subscription': 添加订阅\n'Delete subscription': 删除订阅\n'You do not have the right to delete subscriptions.': 你没有删除订阅的权限\n'No such subscription.': 无此订阅\nYes: 是\nNo: 否\nClose: null\n'No issues.': 无问题\n'Back to Edit Article': null\n'No topics': 无主题\n'You do not have the right to add articles.': 您无权添加文章\nStart: 开始\nDays: 天数\n'The sections could not be added successfully. Some of them were already added !': 区未成功添加，其中一些已经存在\n'Add another': 添加另一个\nCancel: 取消\nDone: 完成\nOK: 成功\nSave: 保存\nSearch: 搜索\n'Make a selection': null\n'You must input a number greater than 0 into the $1 field.': null\n'You must input a valid date.': null\n'Add new field': 增加新字段\n'Article automatic publishing schedule': null\n'Are you sure you want to delete this scheduled action?': null\nUnlink: null\n'Are you sure you want to delete the image $1?': null\n'No such issue.': 无此问题\n'Are you sure you want to delete the subscription to the publication $1?': 您确认要删除发布$1的订阅\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': null\nGB: null\nMB: null\nKB: null\nbytes: null\nAttach: null\nBack: null\nFile: null\n'Save and Close': null\nAdd: 增加\n'Select All': null\n'Select None': null\n'Add Event': null\nN/A: null\n'On Front Page': null\n'On Section Page': null\n'Created by': null\n'Creation date': null\n'Publication List': null\n'Issue List': null\n'Section List': null\nAll: null\nduplicate: null\nmove: null\nMove: null\n'From:': null\n'Date:': null\nHidden: null\nComments: null\nComment: null\nApproved: null\nSubject: null\n'IP address:': null\n'Email:': null\nAuthor: null\n'Article name': null\n'Hide article': null\n'Show article': null\n'Article Type Fields': null\n'Article Images': null\n'Log Messages': null\n'Article Files': null\n'Article Comments': null\n'Are you sure you want to deactivate the subscription?': null\n'Are you sure you want to activate the subscription?': 您确认要激活订阅？\nOther: null\n'Time:': null\n'No events.': null\n'Default templates': null\n'System Preferences': null\n'The date must be in the future.': null\nSend: null\n'Thank you.': null\n'Please take a minute to send us an email.': null\n(optional): null\n'The URL you entered is invalid: $1': null\nReads: null\n'Publish with issue': null\n'Universal List': null\n'Invalid security token!': null\nAuthors: null\nTitle: 标题\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/messages.zh_TW.yml",
    "content": "Plugins: 插件\n'Manage Plugins': 管理插件\nAccount: 賬戶\n'Items per page': null\n'Add new': 添加\nHome: 首頁\nLogout: 登出\nMore...: 更多…\nContent: 內容\nLanguages: 語言\nCountries: 國家\nThemes: 模版\nTopics: 主題\nConfigure: 設置\n'Image Archive': null\n'Add Article': 添加文章\nFields: 字段\nDelete: 删除\nType: 類型\nName: 名稱\nCode: 編碼\nEdit: 編輯\nLogin: 登入\nPassword: 密碼\nSite: 地址\nPath: 路徑\n'Go up': 向上\nURL: 網址\nOrder: 次序\nHide: 隱藏\nDuplicate: 複製\nSubscription: 訂閱\nexpires: 過期\nstarts: 開始\nbefore: 之前\nafter: 之後\non: null\nstatus: 狀況\nactive: null\ninactive: null\nSubscribers: 訂閱者\nStaff: 職員\n'Select destination': 選擇目的地\n'No languages': 無語言\n'---Select language---': －－選擇語言－－\n'No publications': 無出版物\n'---Select publication---': －－選擇出版物－－\n'No issues': 無文章\n'---Select issue---': －－選擇文章－－\n'No sections': 無區\n'---Select section---': －－選擇區－－\nLanguage: 語言\nCountry: 國家\n'Account name': 用戶名\nPublication: 出版物\n'Default language': 默認語言\nSubscriptions: 訂閱\nIssue: 發行\nNumber: 數字\nSection: 區\nKeywords: 關鍵詞\nTopic: 主題\n'URL Name': 網址名稱\n'Left to pay': null\nActive: null\nTrial: 試用\nNext: 下一個\nPrevious: 上一個\nTranslate: 翻譯\nView: 查看\n'Scheduled Publishing': 已排程的發行\nTime: 時間\nAction: null\n'Schedule a new action': null\n'Scheduling a new publish action': null\n'Delete scheduled publish action': null\nDate/Time: 日期/時間\n'You must select an action.': null\n'You do not have the right to schedule issues or articles for automatic publishing.': null\n'Front page': null\n'Section page': null\n'Show on front page': null\n'Remove from front page': null\n'Show on section page': null\n'Remove from section page': null\nActions: null\nPublishing: null\nShow: null\nRemove: null\n'Article Types': 文章類型\n'Staff User Types': null\nPublications: 出版物\nIssues: 發行\nSections: 區\nArticles: 文章\nImages: 圖片\nChange: 更改\n'Add new issue': 添加新論題\n'Section Template': 區模版\n'Article Template': 文章模版\n'Default Language': 默認語言\n'Paid Period': 已付期\nPreview: 預覽\n'You must fill in the $1 field.': 你必須填寫$1字段\nError: 錯誤\n'Invalid input: $1': '無效的輸入: $1'\n'Language does not exist.': 語言不存在\n'Publication does not exist.': 無此出版物\n'Issue does not exist.': 無此發行\n'You must select a language.': 您必須選擇一種語言\n'Section does not exist.': 無此區\n'No articles.': 無文章\n'Article does not exist.': 無此文章\n'Image does not exist.': 無此圖片\n'Access denied': 拒絕訪問\n'Invalid parameters received': null\n'Add new article': 添加新文章\nStatus: 狀態\nPublished: 已發布\n'Not published': 未發布\nSubmitted: 已提交\nNew: 新\nArticle: 文章\nPublish: 發布\nUnpublish: 不發布\nUnlock: 解鎖\nUploaded: 已上載\nYYYY-MM-DD: YYYY-MM-DD\nSubmit: 提交\nImage: 圖片\nDescription: 描述\nPhotographer: 摄影\nPlace: 地點\nDate: 日期\nThumbnail: 縮圖\n'In use': null\n'Additional searches': null\n'Most Recently Added': null\n'Most Recently Modified': null\n'$1 images found': null\n'Reset search conditions': null\n'Image number': 圖片號碼\nUsers: 用戶\nLocalizer: null\n'Adding new translation': 添加新翻譯\n'No more languages.': 無更多語言\n'The $1 field may only contain letters, digits and underscore (_) character.': null\n'Add new publication': 添加新發布\n'Upload new template': 上載新模版\n'Add new staff member': null\n'Staff member deleted.': null\n'Add new subscriber': 添加新的閱讀者\n'Add new user type': 添加新用戶類型\n'Add new article type': 添加新文章類型\n'Add new country': 添加新國家\n'Add new language': 添加新語言\n'View logs': 查看記錄\n'Change your password': 修改你的密碼\n'Your Articles': 你的文章\n'Submitted Articles': 提交文章\nLogs: 記錄\n'There are $1 article(s) left.': 還有$1篇文章\n'There are $1 issues(s) left.': null\n'There are $1 section(s) left.': 還有$1區\n'There are $1 publication(s) left.': 還有$1發布\n'There are $1 countries left.': 還有$1個國家\n'Name <SMALL>(click to edit)</SMALL>': null\n'Add new subscription': 添加新訂閱\n'You do not have the right to add subscriptions.': null\n'Adding subscription': 添加订阅\n'Delete subscription': 移除訂閱\n'You do not have the right to delete subscriptions.': 你沒有添加訂閱的權限\n'No such subscription.': 無此訂閱\nYes: 是\nNo: 否\nClose: 關閉\n'No issues.': null\n'Back to Edit Article': null\n'No topics': 無主題\n'You do not have the right to add articles.': 您無權添加文章\nStart: 開始\nDays: 天\n'The sections could not be added successfully. Some of them were already added !': 區未成功添加，其中一些已經存在\n'Add another': 添加另一個\nCancel: 取消\nDone: 完成\nOK: OK\nSave: 儲存\nSearch: 搜索\n'Make a selection': null\n'You must input a number greater than 0 into the $1 field.': null\n'You must input a valid date.': null\n'Add new field': 添加新字段\n'Article automatic publishing schedule': null\n'Are you sure you want to delete this scheduled action?': null\nUnlink: null\n'Are you sure you want to delete the image $1?': null\n'No such issue.': null\n'Are you sure you want to delete the subscription to the publication $1?': null\n'Could not save the changes to the issue $1. Please make sure the issue URL name $2 was not used before in the publication $3.': null\nGB: GB\nMB: MB\nKB: KB\nbytes: bytes\nAttach: null\nBack: null\nFile: null\n'Save and Close': null\nAdd: 添加\n'Select All': null\n'Select None': null\n'Add Event': null\nN/A: null\n'On Front Page': null\n'On Section Page': null\n'Created by': null\n'Creation date': null\n'Publication List': null\n'Issue List': null\n'Section List': null\nAll: null\nduplicate: null\nmove: null\nMove: null\n'From:': null\n'Date:': null\nHidden: null\nComments: null\nComment: null\nApproved: null\nSubject: null\n'IP address:': null\n'Email:': '電郵:'\nAuthor: 作者\n'Article name': null\n'Hide article': null\n'Show article': null\n'Article Type Fields': null\n'Article Images': null\n'Log Messages': null\n'Article Files': null\n'Article Comments': null\n'Are you sure you want to deactivate the subscription?': null\n'Are you sure you want to activate the subscription?': null\nOther: 其他\n'Time:': null\n'No events.': null\n'Default templates': null\n'System Preferences': null\n'The date must be in the future.': null\nSend: 發送\n'Thank you.': 謝謝\n'Please take a minute to send us an email.': null\n(optional): （選擇性的）\n'The URL you entered is invalid: $1': null\nReads: 閱讀\n'Publish with issue': null\n'Universal List': null\n'Invalid security token!': null\nAuthors: null\nTitle: null\n'Edit country': null\n'Entry $1 prepared for publishing': null\n'Entry deleted': null\n'Feed saved': null\n'Item published': null\n'Settings saved': null\n'Self-delete is not permitted.': null\n'Edit staff member $1': null\n'Delete staff member $1': null\n'Could not save user $1. Please make sure it does not already exist': null\n'Could not save user with e-mail address $1. Please make sure it does not already exist': null\n'Changing user type would prevent you to manage users. Aborted.': null\n'Staff member saved.': null\n'Permissions: $1': null\n'Change user account information': null\n'Staff management': null\nUpdated: null\nOptions: null\nVerified: null\nConfirm: null\nat: null\npublished: null\nunpublished: null\nnopermissions: null\nimportantmessage: null\nanonymous: null\n'Successfully refreshed authentication token.': null\n'Failed to refresh authentication token.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.ar.yml",
    "content": "comments:\n    label:\n        comments: 'إدارة التعليقات.'\n        menu: تعليقات\n        banned: null\n        anonymous: null\n        at: في\n        noentries: 'لم يتم العثور على إدخالات.'\n        showing: يُظهر.\n        of: مِن.\n        to: إلى\n        entries: إدخالات.\n        fullarticle: 'المقالة الكاملة'\n        hidden: 'مخفي '\n        approved: 'موافق عليه'\n        new: جديد\n        editarticle: 'الذهاب إلى تعديل المقالة'\n        section: القسم\n        comment: التعليق\n        replyto: 'رد على التعليق'\n        subject: الموضوع\n        ban: 'تحريم / إزالة تحريم المستخدم'\n        author: المؤلف\n        date: null\n        article: مقالة\n        search: بحث\n        show: إظهار\n        recommended: 'تم التوصية'\n        unrecommended: 'تم ازالة التوصية'\n        editcomment: null\n        actions: الاجراءات\n        selectstatus: 'تحديد الحالة'\n        deleted: 'تم الحذف'\n        alert: تنبيه.\n        searchholder: 'البحث بـ ...(الإسم، البريد الإلكتروني، الموضوع، التعليق، عنوان المقال)'\n    btn:\n        cancel: إلغاء\n        submit: تسليم\n        unrecommend: 'إلغاء التوصية'\n        recommend: التوصية\n        delete: حذف\n        reply: الردّ\n        edit: 'التعديل السريع'\n        close: إغلاق\n        okay: null\n        filter: التصفية\n    msg:\n        deleted: 'تم حذف التعليق.'\n        commentinarticle: 'التعليق $4 من $1 في المقالة $2 ($3)'\n        status:\n            new: جديد.\n            approved: 'تم الموافقه عليه.'\n            hidden: 'غير ظاهر.'\n            single: 'تم تغيير حالة التعليق إلى'\n            all: 'تم تغيير حالة التعليقات إلى'\n        error:\n            reach: 'غير قادر على الوصول إلى Newscoop. يرجى التفتيش اتصالك بالإنترنت.'\n            deletefromarticle: 'تم جذف التعليق من $1 من المقالة $2 ($3)'\n            statuschange: null\n            delete: null\n            update: null\n        sure: 'توشك أن تحذف تعليقا بشكل دائم.'\n        suremultiple: 'أنت على وشك حذف التعليقات بشكل دائم.'\n        first: 'من فضلك، قم بإختيار تعليق/تعليقات أولاً.'\n        surequestion: 'هل أنت متأكد أنك تريد أن تفعل ذلك؟'\n        updated: 'تم تحديث التعليق'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.az.yml",
    "content": "comments:\n    label:\n        comments: 'Şərhlərin idarəsi'\n        menu: Şərhlər\n        banned: Kilidləndi\n        anonymous: Anonim\n        at: burada\n        noentries: 'Giriş tapılmadı.'\n        showing: Göstərilir\n        of: buradan\n        to: buraya\n        entries: girişlər\n        fullarticle: 'Tam məqalə'\n        hidden: Gizli\n        approved: Təsdiqlənib\n        new: Yeni\n        editarticle: 'Məqaləni dəyişməyə keç'\n        section: Bölmə\n        comment: Şərh\n        replyto: 'Şərhə cavab yaz'\n        subject: Başlıq\n        ban: 'İstifadəçini Kilidlə/Kilidini Aç'\n        author: Müəllif\n        date: 'Tarix / Şərh'\n        article: Məqalə\n        search: Axtar\n        show: Göstər\n        recommended: 'Tövsiyyə Olunur'\n        unrecommended: 'Tövsiyyə Edilmədi'\n        editcomment: 'Tez şərhin dəyişilməsi'\n        actions: Addımlar\n        selectstatus: 'Status seç'\n        deleted: Silindi\n        alert: Xəbərdarlıq\n        searchholder: 'Axtar... (məsələn, ad, email, başlıq, şərh, məqalə adı)'\n    btn:\n        cancel: 'Ləğv et'\n        submit: Göndər\n        unrecommend: 'Tövsiyyə Etmə'\n        recommend: 'Tövsiyyə Et'\n        delete: Sil\n        reply: 'Cavab yaz'\n        edit: 'Tez dəyiş'\n        close: Bağla\n        okay: Oldu\n        filter: Filt\n    msg:\n        deleted: 'Şərh silindi.'\n        commentinarticle: '$2 ($3) məqaləsində $1 tərəfindən $4 şərhi'\n        status:\n            new: yeni\n            approved: təsdiqləndi\n            hidden: gizli\n            single: 'Şərh statusu belə dəyişdi'\n            all: 'Şərhlərin statusu belə dəyişdi'\n        error:\n            reach: 'Newscoop-a keçmək mümkün deyil. Lütfən, internet bağlantını yoxla.'\n            deletefromarticle: 'Şərh $2 ($3) məqaləsindən $1 tərəfindən silindi'\n            statuschange: 'Şərh statusunun dəyişilməsi xətası'\n            delete: 'Bu şərh silinə bilmədi'\n            update: 'Bölmələri boş qoymaq olmaz'\n        sure: 'Şərhi həmişəlik silmək ərəfəsindəsən.'\n        suremultiple: 'Şərhləri həmişəlik silmək ərəfəsindəsən.'\n        first: 'Lütfən, əvvəl şərhi/şərhləri seç!'\n        surequestion: 'Bunu etmək istədiyinə əminsən?'\n        updated: 'Şərh yeniləndi.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.be.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: Камэнтары\n        banned: null\n        anonymous: null\n        at: на\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: 'Увесь тэкст артыкула'\n        hidden: Схаваны\n        approved: Зацьверджаны\n        new: Новая\n        editarticle: 'Перайсці да рэдагуемага артыкулу'\n        section: Рубрыка\n        comment: Камэтары\n        replyto: 'Адказаць на камэнтар'\n        subject: Тэма\n        ban: 'Забараніць/дазволіць карыстальніку камэнтаваць'\n        author: Аўтар\n        date: null\n        article: артыкул\n        search: Пошук\n        show: Паказаць\n        recommended: Рэкамендуецца\n        unrecommended: 'Не рэкамендуецца'\n        editcomment: null\n        actions: Апэрацыi\n        selectstatus: 'Абраць статус'\n        deleted: Выдаленае\n        alert: null\n        searchholder: null\n    btn:\n        cancel: Скасаваць\n        submit: Адправіць\n        unrecommend: 'Не рэкамендаваць'\n        recommend: Рэкамендаваць\n        delete: Выдалiць\n        reply: Адказ\n        edit: 'Хуткае рэдагаванне'\n        close: Зачынiць\n        okay: null\n        filter: 'Фільтр '\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: 'Немагчыма звязацца з Newscoop. Калі ласка, праверце ваша інтэрнэт-злучэнне.'\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: 'Вы збіраецеся канчаткова выдаліць каментары.'\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: 'Каментар абноўлены.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.bn.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: 'এতগুলি মন্তব্য'\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: লুক্কায়িত\n        approved: অনুমোদিত\n        new: null\n        editarticle: null\n        section: বিভাগ\n        comment: মন্তব্য\n        replyto: null\n        subject: প্রসঙ্গ\n        ban: null\n        author: লেখক\n        date: null\n        article: null\n        search: null\n        show: null\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: null\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: null\n        submit: null\n        unrecommend: null\n        recommend: null\n        delete: 'মুছে ফেলা'\n        reply: null\n        edit: null\n        close: null\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.cs.yml",
    "content": "comments:\n    label:\n        comments: 'Management komentářů'\n        menu: Komentáře\n        banned: Zakázaný\n        anonymous: Anonym\n        at: na\n        noentries: 'Nenalezeny žádné příspěvky. '\n        showing: Náhled\n        of: z\n        to: do\n        entries: příspěvky\n        fullarticle: 'Celý článek'\n        hidden: Skrytý\n        approved: Schválený\n        new: Nový\n        editarticle: 'Jděte upravit článek'\n        section: Oddíl\n        comment: Komentář\n        replyto: 'Odpovědět na komentář'\n        subject: Předmět\n        ban: 'Zakázat/Obnovit uživatele'\n        author: Autor\n        date: 'Datum / Komentář'\n        article: Článek\n        search: Hledej\n        show: Zobraz\n        recommended: Doporučené\n        unrecommended: Nedoproučený\n        editcomment: 'Rychlá úprava komentáře'\n        actions: Činnosti\n        selectstatus: 'Vybrat status'\n        deleted: Vymazat\n        alert: Varování\n        searchholder: 'Hledat... (např. jméno, e-mail, předmět, komentář, název článku)'\n    btn:\n        cancel: Zrušit\n        submit: Podat\n        unrecommend: Nedoporučeno\n        recommend: Doporučeno\n        delete: Smazat\n        reply: Odpovědět\n        edit: 'Rychlá editace '\n        close: Zavřít\n        okay: OK\n        filter: Filter\n    msg:\n        deleted: 'Komentář vymazán.'\n        commentinarticle: 'Komentář $4'\n        status:\n            new: nový\n            approved: schváleno\n            hidden: skrytý\n            single: 'Status komentáře změnit na'\n            all: 'Status komentářů změnit na'\n        error:\n            reach: 'Nepodařilo se spojit s Newscoop. Zkontrolujte prosím své připojení k internetu.'\n            deletefromarticle: 'Komentář vymazán $1 z článku $2 ($3)'\n            statuschange: 'Chyba změny statusu komentářů'\n            delete: 'Komentář nelze smazat'\n            update: 'Pole nemůžou zůstat prázdná'\n        sure: 'Právě se chystáte permanentně vymazat komentář.'\n        suremultiple: 'Právě se chystáte permanentně vymazat komentáře. '\n        first: 'Nejdříve vyberte komentář/komentáře!'\n        surequestion: 'Jste si jisti, že to chcete udělat?'\n        updated: 'Komentář aktualizován.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.da.yml",
    "content": "comments:\n    label:\n        comments: 'Administration af kommentarer'\n        menu: Kommentarer\n        banned: Blokeret\n        anonymous: Anonym\n        at: på\n        noentries: 'Ingen poster fundet.'\n        showing: Viser\n        of: af\n        to: til\n        entries: poster\n        fullarticle: 'Fuld artikel'\n        hidden: Skjult\n        approved: Godkendt\n        new: Ny\n        editarticle: 'Rediger artikel'\n        section: Sektion\n        comment: Kommentér\n        replyto: 'Svar på komentaren'\n        subject: Emne\n        ban: 'Bloker/afbloker bruger'\n        author: Forfatter\n        date: 'Dato / Kommentar'\n        article: Artikel\n        search: Søg\n        show: Vis\n        recommended: Anbefalet\n        unrecommended: 'Ikke anbefalet'\n        editcomment: 'Hurtig kommentar redigering'\n        actions: Handlinger\n        selectstatus: 'Vælg status'\n        deleted: Slettet\n        alert: Advarsel\n        searchholder: 'Søg... (f.eks. navn, email, emne, kommentar, artikel titel)'\n    btn:\n        cancel: Annullér\n        submit: Send\n        unrecommend: 'Anbefal ikke'\n        recommend: Anbefalet\n        delete: Slet\n        reply: Svar\n        edit: 'Hurtig redigering'\n        close: Luk\n        okay: OK\n        filter: Filtrér\n    msg:\n        deleted: 'Kommentar slettet.'\n        commentinarticle: 'Kommentar $4 af $1 i artiklen $2 ($3)'\n        status:\n            new: ny\n            approved: godkendt\n            hidden: skjult\n            single: 'Kommentar status ændret til'\n            all: 'Kommentar status ændret til'\n        error:\n            reach: 'Ingen kontakt til Newscoop. Tjek at du har forbindelse til internettet.'\n            deletefromarticle: '$1 har slettet kommentar fra artiklen $2 ($3)'\n            statuschange: 'Kommentar status kunne ikke ændres'\n            delete: 'Kommentaren kunne ikke slettes'\n            update: 'Felter kan ikke være tomme'\n        sure: 'Du er ved at slette en kommentar permanent.'\n        suremultiple: 'Du er ved at slette kommentarer permanent.'\n        first: 'Vælg kommentar først!'\n        surequestion: 'Er du sikker på det er det du vil?'\n        updated: 'Kommentaren er opdateret.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.de.yml",
    "content": "comments:\n    label:\n        comments: Kommentarverwaltung\n        menu: Kommentare\n        banned: Gesperrt\n        anonymous: Anonym\n        at: an\n        noentries: 'Es wurden keine Einträge gefunden.'\n        showing: Angezeigt\n        of: von\n        to: zu\n        entries: Eingaben\n        fullarticle: 'Gesamter Artikel'\n        hidden: Verborgen\n        approved: Bewilligt\n        new: Neu\n        editarticle: 'Gehen Sie zu Artikel bearbeiten'\n        section: Rubrik\n        comment: Kommentar\n        replyto: 'Auf  Kommentar antworten'\n        subject: Subjekt\n        ban: 'Nutzer blocken/freistellen'\n        author: Autor\n        date: 'Datum / Kommentar'\n        article: Artikel\n        search: Suche\n        show: Zeigen\n        recommended: Empfohlen\n        unrecommended: 'Empfehlung zurückgenommen'\n        editcomment: Kommentarbearbeitung\n        actions: Aktionen\n        selectstatus: 'Status auswählen'\n        deleted: Löschen\n        alert: Warnung\n        searchholder: 'Suche... (z.B. Name, E-Mail, Subjekt, Kommentar, Artikeltitel)'\n    btn:\n        cancel: Abbrechen\n        submit: Einpflegen\n        unrecommend: 'Empfehlung zurücknehmen'\n        recommend: Empfehlen\n        delete: Löschen\n        reply: Antworten\n        edit: 'Schnell bearbeiten'\n        close: Schliessen\n        okay: Ok\n        filter: Filter\n    msg:\n        deleted: 'Kommentar gelöscht.'\n        commentinarticle: 'Kommentar $4 durch $1 im Artikel $2 ($3)'\n        status:\n            new: neu\n            approved: bewilligt\n            hidden: verborgen\n            single: 'Status des Kommentars ändern zu'\n            all: 'Status der Kommentar ändern zu'\n        error:\n            reach: 'Es kann keine Verbindung zu Newscoop aufgebaut werden. Überprüfen Sie bitte Ihre Internet-Verbindung.'\n            deletefromarticle: 'Kommentar gelöscht von $1 aus dem Artikel $2 ($3)'\n            statuschange: 'Bei Änderung des Kommentarstatus ist ein Fehler aufgetreten'\n            delete: 'Dieser Kommentar konnte nicht gelöscht werden'\n            update: 'Felder können nicht leer sein'\n        sure: 'Der Kommentar wird entgültig gelöscht werden.'\n        suremultiple: 'Die Kommentare werden entgültig gelöscht werden.'\n        first: 'Bitte erst Kommentar/Kommentare auswählen!'\n        surequestion: 'Sind Sie sicher, dass Sie dies tun wollen?'\n        updated: 'Kommentar aktualisiert.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.de_AT.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: Kommentare\n        banned: null\n        anonymous: null\n        at: auf\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: 'Ganzer Artikel'\n        hidden: Verborgen\n        approved: Bewilligt\n        new: Neu\n        editarticle: 'Gehe zur Artikelbearbeitung'\n        section: Rubrik\n        comment: Kommentar\n        replyto: 'Kommentar beantworten'\n        subject: Subjekt\n        ban: 'User sperren / entsperren '\n        author: AutorIn\n        date: null\n        article: Artikel\n        search: Suche\n        show: Zeige\n        recommended: Empfohlen\n        unrecommended: 'Empfehlung zurückgenommen. '\n        editcomment: null\n        actions: Aktionen\n        selectstatus: 'Status auswählen '\n        deleted: Gelöscht\n        alert: null\n        searchholder: null\n    btn:\n        cancel: Abbruch\n        submit: Absenden\n        unrecommend: 'Empfehlung zurücknehmen'\n        recommend: Empfehlen\n        delete: Löschen\n        reply: Antworten\n        edit: Schnellbearbeitung\n        close: Schließen\n        okay: null\n        filter: Filter\n    msg:\n        deleted: 'Kommentar gelöscht. '\n        commentinarticle: 'Kommentar $4 von $1 im Artikel $2 ($3)'\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: 'Die Verbindung zu Newscoop kann nicht hergestellt werden. Bitte überprüfen Sie ihre Internetverbindung. '\n            deletefromarticle: 'Kommentar gelöscht von $1 aus dem Artikel $2 ($3)'\n            statuschange: null\n            delete: null\n            update: null\n        sure: 'Sie sind im Begriff einen Kommentar permanent zu löschen. '\n        suremultiple: null\n        first: null\n        surequestion: 'Sind Sie sicher, dass Sie das tun wollen? '\n        updated: 'Kommentar aktualisiert.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.el.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: Σχόλια\n        banned: null\n        anonymous: null\n        at: σε\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: 'Πλήρες άρθρο'\n        hidden: Κρυμμένα\n        approved: Εγκεκριμμένα\n        new: Νέο\n        editarticle: 'Πηγαίνετε στην επεξεργασία άρθρου'\n        section: Ενότητα\n        comment: Σχόλιο\n        replyto: 'Απάντηση σε σχόλιο'\n        subject: Θέμα\n        ban: 'Αποκλεισμός/Αναίρεση αποκλεισμού χρήστη'\n        author: Συγγραφέας\n        date: null\n        article: Άρθρο\n        search: Αναζήτηση\n        show: Εμφάνιση\n        recommended: Προτινόμενο\n        unrecommended: 'Δεν συνιστάται'\n        editcomment: null\n        actions: Ενέργειες\n        selectstatus: 'Επιλέξτε κατάσταση'\n        deleted: Διαγραμμένο\n        alert: null\n        searchholder: null\n    btn:\n        cancel: Ακύρωση\n        submit: Υποβολλή\n        unrecommend: 'Δεν συνιστάται'\n        recommend: Συνιστάται\n        delete: Διαγραφή\n        reply: Απάντηση\n        edit: 'Γρήγορη επεξεργασία'\n        close: Κλείσιμο\n        okay: null\n        filter: Φίλτρο\n    msg:\n        deleted: 'Το σχόλιο διαγράφηκε.'\n        commentinarticle: 'Σχόλιο $4 από $1 στο άρθρο $2 ($3)'\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: 'Αδύνατη η πρόσβαση στο Newscoop. Παρακαλούμε ελέγξτε την σύνδεση σας.'\n            deletefromarticle: 'Το σχόλιο διαγράφηκε από $1 από το άρθρο $2 ($3) '\n            statuschange: null\n            delete: null\n            update: null\n        sure: 'Πρόκειται να διαγράψετε οριστικά ένα σχόλιο.'\n        suremultiple: null\n        first: null\n        surequestion: 'Είστε σίγουρος/η ότι θέλετε να το κάνετε;'\n        updated: 'Το σχόλιο ενημερώθηκε.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.en.yml",
    "content": "comments:\n  label:\n    comments: \"Comments management\"\n    menu: \"Comments\"\n    banned: \"Banned\"\n    anonymous: \"Anonymous\"\n    at: at\n    noentries: \"No entries found.\"\n    showing: \"Showing\"\n    of: \"of\"\n    to: \"to\"\n    entries: \"entries\"\n    fullarticle: \"Full article\"\n    hidden: \"Hidden\"\n    approved: \"Approved\"\n    new: \"New\"\n    editarticle: \"Go to edit article\"\n    section: \"Section\"\n    comment: \"Comment\"\n    replyto: \"Reply to comment\"\n    subject: \"Subject\"\n    ban: \"Ban/Unban user\"\n    author: \"Author\"\n    date: \"Date / Comment\"\n    article: \"Article\"\n    search: \"Search\"\n    show: \"Show\"\n    recommended: \"Recommended\"\n    unrecommended: \"Unrecommended\"\n    editcomment: \"Quick comment edit\"\n    actions: \"Actions\"\n    selectstatus: \"Select status\"\n    deleted: \"Deleted\"\n    alert: \"Alert\"\n    searchholder: \"Search... (e.g. name, email, subject, comment, article title)\"\n  btn:\n    cancel: \"Cancel\"\n    submit: \"Submit\"\n    unrecommend: \"Unrecommend\"\n    recommend: \"Recommend\"\n    delete: \"Delete\"\n    reply: \"Reply\"\n    edit: \"Quick edit\"\n    close: \"Close\"\n    okay: \"Ok\"\n    filter: \"Filter\"\n  msg:\n    deleted: \"Comment deleted.\"\n    commentinarticle: \"Comment $4 by $1 in the article $2 ($3)\"\n    status:\n      new: \"new\"\n      approved: \"approved\"\n      hidden: \"hidden\"\n      single: \"Comment status change to\"\n      all: \"Comments status change to\"\n    error:\n      reach: \"Unable to reach Newscoop. Please check your internet connection.\"\n      deletefromarticle: \"Comment delete by $1 from the article $2 ($3)\"\n      statuschange: \"Error changing comment status\"\n      delete: \"Could not delete this comment\"\n      update: \"Fields cannot be empty\"\n    sure: \"You are about to permanently delete a comment.\"\n    suremultiple: \"You are about to permanently delete comments.\"\n    first: \"Please, select comment/comments first!\"\n    surequestion: \"Are you sure you want to do it?\"\n    updated: \"Comment updated.\""
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.en_GB.yml",
    "content": "comments:\n    label:\n        comments: 'Comments management'\n        menu: Comments\n        banned: Banned\n        anonymous: Anonymous\n        at: at\n        noentries: 'No entries found.'\n        showing: Showing\n        of: of\n        to: to\n        entries: entries\n        fullarticle: 'Full article'\n        hidden: Hidden\n        approved: Approved\n        new: New\n        editarticle: 'Go to edit article'\n        section: Section\n        comment: Comment\n        replyto: 'Reply to comment'\n        subject: Subject\n        ban: 'Ban/Unban user'\n        author: Author\n        date: 'Date / Comment'\n        article: Article\n        search: Search\n        show: Show\n        recommended: Recommended\n        unrecommended: Unrecommended\n        editcomment: 'Quick comment edit'\n        actions: Actions\n        selectstatus: 'Select status'\n        deleted: Deleted\n        alert: Alert\n        searchholder: 'Search... (e.g. name, email, subject, comment, article title)'\n    btn:\n        cancel: Cancel\n        submit: Submit\n        unrecommend: Unrecommend\n        recommend: Recommend\n        delete: Delete\n        reply: Reply\n        edit: 'Quick edit'\n        close: Close\n        okay: Ok\n        filter: Filter\n    msg:\n        deleted: 'Comment deleted.'\n        commentinarticle: 'Comment $4 by $1 in the article $2 ($3)'\n        status:\n            new: new\n            approved: approved\n            hidden: hidden\n            single: 'Comment status change to'\n            all: 'Comments status change to'\n        error:\n            reach: 'Unable to reach Newscoop. Please check your internet connection.'\n            deletefromarticle: 'Comment delete by $1 from the article $2 ($3)'\n            statuschange: 'Error changing comment status'\n            delete: 'Could not delete this comment'\n            update: 'Fields cannot be empty'\n        sure: 'You are about to permanently delete a comment.'\n        suremultiple: 'You are about to permanently delete comments.'\n        first: 'Please, select comment/comments first!'\n        surequestion: 'Are you sure you want to do it?'\n        updated: 'Comment updated.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.es.yml",
    "content": "comments:\n    label:\n        comments: 'Administración de los comentarios'\n        menu: Comentarios\n        banned: Restringido\n        anonymous: Anónimo\n        at: en\n        noentries: 'No se han encontrado entradas.'\n        showing: Mostrando\n        of: de\n        to: a\n        entries: entradas\n        fullarticle: 'Artículo completo'\n        hidden: Oculto\n        approved: Aprobado\n        new: Nuevo\n        editarticle: 'Ir a edición de artículo'\n        section: Sección\n        comment: Comentario\n        replyto: 'Responder al comentario'\n        subject: Título\n        ban: 'Bloquear/desbloquear usuario'\n        author: Autor\n        date: Fecha/Comentario\n        article: Artículo\n        search: Buscar\n        show: Mostrar\n        recommended: Recomendado\n        unrecommended: 'No recomendado'\n        editcomment: 'Edición rápida de comentario'\n        actions: Acciones\n        selectstatus: 'Seleccionar estado'\n        deleted: Eliminado\n        alert: Alerta\n        searchholder: 'Búsqueda...(ej: nombre, email, tema, comentario, título de artículo)'\n    btn:\n        cancel: Cancelar\n        submit: Enviar\n        unrecommend: 'No recomendar'\n        recommend: Recomendar\n        delete: Borrar\n        reply: Responder\n        edit: 'Edición rápida'\n        close: Cerrar\n        okay: Ok\n        filter: Filtro\n    msg:\n        deleted: 'Comentario eliminado'\n        commentinarticle: 'Comentario $4 por $1 en el artículo  $2 ($3)'\n        status:\n            new: nuevo\n            approved: aprobado\n            hidden: oculto\n            single: 'El estatus del comentario cambia a'\n            all: 'El estatus de los comentarios cambia a'\n        error:\n            reach: 'No se pudo conectar a Newscoop. Por favor, verifica tu conexión a Internet.'\n            deletefromarticle: 'Comentario eliminado por $1 desde el artículo $2 ($3)'\n            statuschange: 'Error cambiando el estatus del comentario'\n            delete: 'No fue posible borrar este comentario'\n            update: 'Los campos no pueden estar vacíos'\n        sure: 'Está a punto de eliminar permanentemente un comentario.'\n        suremultiple: 'Está a punto de eliminar de forma permanente los comentarios.'\n        first: '¡Por favor, seleccione primero el(los) comentario(s)!'\n        surequestion: '¿Está seguro de que quiere hacerlo?'\n        updated: 'Comentario actualizado'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.es_AR.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: null\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: null\n        approved: null\n        new: null\n        editarticle: null\n        section: null\n        comment: null\n        replyto: null\n        subject: null\n        ban: null\n        author: null\n        date: null\n        article: null\n        search: null\n        show: null\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: null\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: null\n        submit: null\n        unrecommend: null\n        recommend: null\n        delete: null\n        reply: null\n        edit: null\n        close: null\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.fa.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: null\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: null\n        approved: null\n        new: null\n        editarticle: null\n        section: null\n        comment: null\n        replyto: null\n        subject: null\n        ban: null\n        author: null\n        date: null\n        article: null\n        search: null\n        show: null\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: null\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: null\n        submit: null\n        unrecommend: null\n        recommend: null\n        delete: null\n        reply: null\n        edit: null\n        close: null\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.fa_AF.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: null\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: null\n        approved: null\n        new: null\n        editarticle: null\n        section: null\n        comment: null\n        replyto: null\n        subject: null\n        ban: null\n        author: null\n        date: null\n        article: null\n        search: null\n        show: null\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: null\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: null\n        submit: null\n        unrecommend: null\n        recommend: null\n        delete: null\n        reply: null\n        edit: null\n        close: null\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.fr.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: null\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: null\n        approved: null\n        new: Nouveau\n        editarticle: null\n        section: Section\n        comment: null\n        replyto: null\n        subject: null\n        ban: null\n        author: null\n        date: null\n        article: Article\n        search: Recherche\n        show: Afficher\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: Actions\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: Annuler\n        submit: Soumettre\n        unrecommend: null\n        recommend: null\n        delete: Supprimer\n        reply: null\n        edit: null\n        close: Fermer\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.he.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: תגובות\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: נסתר\n        approved: מאושר\n        new: חדש\n        editarticle: null\n        section: מדור\n        comment: תגובה\n        replyto: null\n        subject: נושא\n        ban: null\n        author: כתב\n        date: null\n        article: כתבה\n        search: חפש\n        show: הראה\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: פעילויות\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: בטל\n        submit: נמסר\n        unrecommend: null\n        recommend: null\n        delete: מחק\n        reply: null\n        edit: null\n        close: סגור\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.hr.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: null\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: null\n        approved: null\n        new: Novi\n        editarticle: null\n        section: Rubrika\n        comment: null\n        replyto: null\n        subject: null\n        ban: null\n        author: null\n        date: null\n        article: Članak\n        search: Traži\n        show: Prikaži\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: Radnje\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: Odustani\n        submit: Predaj\n        unrecommend: null\n        recommend: null\n        delete: Briši\n        reply: null\n        edit: null\n        close: Zatvori\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.hu.yml",
    "content": "comments:\n    label:\n        comments: 'Hozzászólások kezelése'\n        menu: Hozzászólások\n        banned: Kitiltva\n        anonymous: Névtelen\n        at: null\n        noentries: 'Nem találhatók bejegyzések.'\n        showing: Megjelenítve\n        of: /\n        to: '-'\n        entries: bejegyzés\n        fullarticle: 'Teljes cikk'\n        hidden: Rejtett\n        approved: Jóváhagyva\n        new: Új\n        editarticle: 'Ugrás a cikk szerkesztésére'\n        section: Rovat\n        comment: Hozzászólás\n        replyto: 'Válasz a hozzászólásra'\n        subject: Tárgy\n        ban: 'Felhasználó kitiltása/kitiltásának megszüntetése'\n        author: Szerző\n        date: 'Dátum / Hozzászólás'\n        article: Cikk\n        search: Keresés\n        show: Megjelenítés\n        recommended: Ajánlott\n        unrecommended: null\n        editcomment: 'Hozzászólás gyors szerkesztése'\n        actions: Műveletek\n        selectstatus: 'Válassz állapotot'\n        deleted: Törölve\n        alert: Figyelmeztetés\n        searchholder: 'Keresés... ( pl. név, e-mail cím, tárgy, hozzászólás, cikk címe)'\n    btn:\n        cancel: Mégse\n        submit: Küldés\n        unrecommend: null\n        recommend: Ajánlás\n        delete: Törlés\n        reply: Válasz\n        edit: Gyorsszerkesztés\n        close: Bezárás\n        okay: OK\n        filter: Szűrő\n    msg:\n        deleted: 'A hozzászólás törlése megtörtént.'\n        commentinarticle: '$4 hozzászólás $1 által a/z $2 ($3) cikkben'\n        status:\n            new: új\n            approved: jóváhagyott\n            hidden: rejtett\n            single: 'Hozzászólás állapotának módosítása erre:'\n            all: 'Hozzászólások állapotának módosítása erre:'\n        error:\n            reach: 'Nem érhető el a Newscoop. Ellenőrizd az internetkapcsolatodat.'\n            deletefromarticle: 'Hozzászólás $1 általi törlése a/z $2 ($3) cikkből'\n            statuschange: 'Hiba történt a hozzászólás állapotának módosításakor'\n            delete: 'Ezt a hozzászólást nem lehet törölni.'\n            update: 'A mezők nem lehetnek üresek'\n        sure: 'Egy hozzászólás végleges törlésére készülsz.'\n        suremultiple: 'Hozzászólások végleges törlésére készülsz.'\n        first: 'Előbb válassz hozzászólást/hozzászólásokat!'\n        surequestion: 'Biztosan végre akarod ezt hajtani?'\n        updated: 'A hozzászólás frissítése megtörtént.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.hy.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: null\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: null\n        approved: null\n        new: null\n        editarticle: null\n        section: null\n        comment: null\n        replyto: null\n        subject: null\n        ban: null\n        author: null\n        date: null\n        article: null\n        search: null\n        show: null\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: null\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: null\n        submit: null\n        unrecommend: null\n        recommend: null\n        delete: null\n        reply: null\n        edit: null\n        close: null\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.hy_AM.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: Մեկնաբանություններ\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: null\n        approved: null\n        new: null\n        editarticle: null\n        section: null\n        comment: null\n        replyto: 'Պատասխանել մեկնաբանությանը։'\n        subject: null\n        ban: null\n        author: Հեղինակ\n        date: null\n        article: null\n        search: null\n        show: null\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: Գործունեություններ\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: null\n        submit: null\n        unrecommend: null\n        recommend: null\n        delete: null\n        reply: null\n        edit: null\n        close: Փակել\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: 'Մեկնաբանությունը թարմացված է։'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.id.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: null\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: null\n        approved: null\n        new: null\n        editarticle: null\n        section: null\n        comment: null\n        replyto: null\n        subject: null\n        ban: null\n        author: null\n        date: null\n        article: null\n        search: null\n        show: null\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: null\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: null\n        submit: null\n        unrecommend: null\n        recommend: null\n        delete: null\n        reply: null\n        edit: null\n        close: null\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.it.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: Commenti\n        banned: null\n        anonymous: null\n        at: in\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: 'Articolo intero'\n        hidden: Nascosto\n        approved: Approvato\n        new: Nuovo\n        editarticle: 'Vai alla modifica articolo'\n        section: Sezione\n        comment: Commento\n        replyto: 'Rispondi al commento'\n        subject: Oggetto\n        ban: 'Blocca/sblocca utente'\n        author: Autore\n        date: null\n        article: Articolo\n        search: Cerca\n        show: Mostra\n        recommended: Consigliato\n        unrecommended: Sconsigliato\n        editcomment: null\n        actions: Azioni\n        selectstatus: 'Scegli stato'\n        deleted: Cancellato\n        alert: null\n        searchholder: null\n    btn:\n        cancel: Annulla\n        submit: Salva\n        unrecommend: Sconsiglia\n        recommend: Consiglia\n        delete: Elimina\n        reply: Risposta\n        edit: 'Modifica rapida'\n        close: Chiudi\n        okay: null\n        filter: Filtro\n    msg:\n        deleted: 'Commento cencellato.'\n        commentinarticle: 'Commento $4 da $1 nellarticolo $2 ($3)'\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: 'Impossibile raggiungere Newscoop. Verifica la connessione internet.'\n            deletefromarticle: 'Cancellazione commento da $1 dallarticolo $2 ($3)'\n            statuschange: null\n            delete: null\n            update: null\n        sure: 'Stai per eliminare definitivamente un commento.'\n        suremultiple: null\n        first: null\n        surequestion: 'Sei sicuro di volerlo fare?'\n        updated: 'Commento aggiornato.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.ka.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: კომენტარები\n        banned: null\n        anonymous: ანონიმური\n        at: '-ზე'\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: 'მთლიანი სტატია'\n        hidden: დამალული\n        approved: დადასტურებული\n        new: ახალი\n        editarticle: 'სტატიის რედაქტირებაზე გადასვლა'\n        section: სექცია\n        comment: კომენტარი\n        replyto: 'კომენტარზე პასუხის გაცემა'\n        subject: თემა\n        ban: 'მომხმარებლისთვის ბანის დადება/მოხსნა'\n        author: ავტორი\n        date: null\n        article: სტატია\n        search: ძიება\n        show: ჩვენება\n        recommended: რეკომენდირებული\n        unrecommended: არარეკომენდირებული\n        editcomment: null\n        actions: მოქმედება\n        selectstatus: 'აირჩიეთ სტატუსი'\n        deleted: წაიშალა\n        alert: null\n        searchholder: null\n    btn:\n        cancel: გაუქმება\n        submit: გაგზავნა\n        unrecommend: 'რეკომენდაციის უკუგდება'\n        recommend: 'რეკომენდაციის მიცემა'\n        delete: წაშლა\n        reply: 'პასუხის გაცემა'\n        edit: 'სწრაფი რედაქტირება'\n        close: დახურული\n        okay: null\n        filter: ფილტრი\n    msg:\n        deleted: 'კომენტარი წაიშალა.'\n        commentinarticle: '$2 ($3) სტატიის კომენტარი $4 $1-ის მიერ'\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: 'ნიუსქუფთან დაკავშირება ვერ ხერხდება. გთხოვთ შეამოწმოთ თქვენი ინტერნეტ კავშირი.'\n            deletefromarticle: '$2 ($3) სტატიის კომენტარი წაიშალა $1-ის მიერ'\n            statuschange: null\n            delete: null\n            update: null\n        sure: 'კომენტარი სამუდამოდ წაიშლება.'\n        suremultiple: null\n        first: null\n        surequestion: 'დაადასტურეთ, რომ გსურთ ამის გაკეთება.'\n        updated: 'კომენტარი განახლებულია. '\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.ko.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: null\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: null\n        approved: null\n        new: 신규\n        editarticle: null\n        section: 섹션\n        comment: null\n        replyto: null\n        subject: null\n        ban: null\n        author: null\n        date: null\n        article: 기사\n        search: 검색\n        show: 보기\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: 기능\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: 취소\n        submit: 송고\n        unrecommend: null\n        recommend: null\n        delete: 삭제\n        reply: null\n        edit: null\n        close: 닫기\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.ku.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: null\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: null\n        approved: null\n        new: null\n        editarticle: null\n        section: null\n        comment: null\n        replyto: null\n        subject: null\n        ban: null\n        author: null\n        date: null\n        article: null\n        search: null\n        show: null\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: null\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: null\n        submit: null\n        unrecommend: null\n        recommend: null\n        delete: null\n        reply: null\n        edit: null\n        close: null\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.lv.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: null\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: null\n        approved: null\n        new: null\n        editarticle: null\n        section: null\n        comment: null\n        replyto: null\n        subject: null\n        ban: null\n        author: null\n        date: null\n        article: null\n        search: null\n        show: null\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: null\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: null\n        submit: null\n        unrecommend: null\n        recommend: null\n        delete: null\n        reply: null\n        edit: null\n        close: null\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.mr.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: null\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: null\n        approved: null\n        new: null\n        editarticle: null\n        section: null\n        comment: null\n        replyto: null\n        subject: null\n        ban: null\n        author: null\n        date: null\n        article: null\n        search: null\n        show: null\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: null\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: null\n        submit: null\n        unrecommend: null\n        recommend: null\n        delete: null\n        reply: null\n        edit: null\n        close: null\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.nb_NO.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: null\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: null\n        approved: null\n        new: null\n        editarticle: null\n        section: null\n        comment: null\n        replyto: null\n        subject: null\n        ban: null\n        author: null\n        date: null\n        article: null\n        search: null\n        show: null\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: null\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: null\n        submit: null\n        unrecommend: null\n        recommend: null\n        delete: null\n        reply: null\n        edit: null\n        close: null\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.nl.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: null\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: null\n        approved: null\n        new: Nieuw\n        editarticle: null\n        section: Rubriek\n        comment: null\n        replyto: null\n        subject: null\n        ban: null\n        author: null\n        date: null\n        article: Artikel\n        search: Zoeken\n        show: Tonen\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: Acties\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: Annuleren\n        submit: Sturen\n        unrecommend: null\n        recommend: null\n        delete: Verwijderen\n        reply: null\n        edit: null\n        close: Sluiten\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.pa.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: null\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: null\n        approved: null\n        new: null\n        editarticle: null\n        section: null\n        comment: null\n        replyto: null\n        subject: null\n        ban: null\n        author: null\n        date: null\n        article: null\n        search: null\n        show: null\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: null\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: null\n        submit: null\n        unrecommend: null\n        recommend: null\n        delete: null\n        reply: null\n        edit: null\n        close: null\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.pl.yml",
    "content": "comments:\n    label:\n        comments: 'Zarządzanie komentarzami'\n        menu: Komentarze\n        banned: Zablokowany\n        anonymous: Anonim\n        at: w\n        noentries: 'Nie znaleziono wyników.'\n        showing: Pokazuje\n        of: z\n        to: do\n        entries: wyników\n        fullarticle: 'Pełny artykuł'\n        hidden: Ukryte\n        approved: Zaakceptowane\n        new: Nowy\n        editarticle: 'Przejdź do edycji artykulu'\n        section: Sekcja\n        comment: Komentarz\n        replyto: 'Odpowiedz na komentarz'\n        subject: Temat\n        ban: 'Zablokuj/Odblokuj użytkownika'\n        author: Autor\n        date: 'Data / Komentarz'\n        article: Artykuł\n        search: Szukaj\n        show: Pokaż\n        recommended: Polecany\n        unrecommended: Niepolecany\n        editcomment: 'Szybka edycja'\n        actions: Akcje\n        selectstatus: 'Wybierz status'\n        deleted: Usunięty\n        alert: Uwaga\n        searchholder: 'Szukaj... (np. imię, email, temat, treść komentarza, tytuł artykułu)'\n    btn:\n        cancel: Anuluj\n        submit: Wyślij\n        unrecommend: 'Niepolecany '\n        recommend: Poleć\n        delete: Usuń\n        reply: Odpowiedz\n        edit: 'Szybka edycja'\n        close: Zamknij\n        okay: Ok\n        filter: Filtrowanie\n    msg:\n        deleted: 'Komentarz został usunięty'\n        commentinarticle: 'Komentarz $4 przez $1 w artykule $2 ($3)'\n        status:\n            new: nowy\n            approved: zatwierdzony\n            hidden: ukryty\n            single: 'Status komentarza został zmieniony na'\n            all: 'Status komentarzy został zmieniony na'\n        error:\n            reach: 'Nie można połączyć z Newscoop. Sprawdź swoje połączenie z Internetem.'\n            deletefromarticle: 'Komentarz został usunięty z artykułu $2 przez $1 ($3)'\n            statuschange: 'Wystąpił błąd podczas zmieniania statusu dla kometarza'\n            delete: 'Nie można usunąć tego komentarza'\n            update: 'Pola nie mogą być puste'\n        sure: 'Chcesz bezpowrotnie usunąć wiadomość'\n        suremultiple: 'Zamierzasz bezpowrotnie usunąć wybrane komentarze.'\n        first: 'Musisz najpierw wybrać komentarz/komentarze!'\n        surequestion: 'Jesteś pewien że chcesz to zrobić?'\n        updated: 'Komentarz zaktualizowany.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.ps.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: null\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: null\n        approved: null\n        new: null\n        editarticle: null\n        section: null\n        comment: null\n        replyto: null\n        subject: null\n        ban: null\n        author: null\n        date: null\n        article: null\n        search: null\n        show: null\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: null\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: null\n        submit: null\n        unrecommend: null\n        recommend: null\n        delete: null\n        reply: null\n        edit: null\n        close: null\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.pt.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: Comentários\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: Oculto\n        approved: Aprovado\n        new: Novo\n        editarticle: null\n        section: Secção\n        comment: Comentário\n        replyto: null\n        subject: Assunto\n        ban: null\n        author: Autor\n        date: null\n        article: Artigo\n        search: Procurar\n        show: Mostrar\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: Acções\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: Cancelar\n        submit: 'Submeter à Apreciação'\n        unrecommend: null\n        recommend: null\n        delete: Eliminar\n        reply: null\n        edit: null\n        close: Fechar\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.pt_BR.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: Comentários\n        banned: null\n        anonymous: null\n        at: no\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: 'Artigo inteiro'\n        hidden: Oculto\n        approved: Aprovado\n        new: Novo\n        editarticle: 'Ir para edição do artigo'\n        section: Seção\n        comment: Comentário\n        replyto: 'Responder ao comentário'\n        subject: Assunto\n        ban: null\n        author: Autor\n        date: null\n        article: Artigo\n        search: Procurar\n        show: Mostrar\n        recommended: Recomendado\n        unrecommended: 'Não recomendado'\n        editcomment: null\n        actions: Ações\n        selectstatus: 'Selecionar status'\n        deleted: Removido\n        alert: null\n        searchholder: null\n    btn:\n        cancel: Cancelar\n        submit: 'Submeter à Apreciação'\n        unrecommend: 'Não recomendo'\n        recommend: Recomendo\n        delete: Apagar\n        reply: Responder\n        edit: 'Edição rápida'\n        close: Fechar\n        okay: null\n        filter: Filtro\n    msg:\n        deleted: 'Comentário removido.'\n        commentinarticle: 'Comentário $4 feito por $1 no artigo $2 ($3)'\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: 'Não foi possivel fazer conexão com Newscoop. Por favor verifique a sua conexão com internet.'\n            deletefromarticle: '$1 apagou o comentário do artigo $2 ($3)'\n            statuschange: null\n            delete: null\n            update: null\n        sure: 'Você vai apagar o comentário para sempre.'\n        suremultiple: null\n        first: null\n        surequestion: 'Tem certeza que quer fazer isso?'\n        updated: 'Comentário atualizado.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.ro.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: Comentarii\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: Ascuns\n        approved: Aprobat\n        new: Nou\n        editarticle: null\n        section: Secţiune\n        comment: Comentariu\n        replyto: 'Răspunde la comentariu'\n        subject: 'Subiect:'\n        ban: null\n        author: 'Autor:'\n        date: null\n        article: Articol\n        search: Caută\n        show: Afişează\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: Acţiuni\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: Anulează\n        submit: 'Trimite spre publicare'\n        unrecommend: null\n        recommend: null\n        delete: Şterge\n        reply: null\n        edit: null\n        close: Închide\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.ru.yml",
    "content": "comments:\n    label:\n        comments: 'Управление комментариями'\n        menu: Комментарии\n        banned: Запрещено\n        anonymous: Анонимный\n        at: в\n        noentries: 'Записей не найдено.'\n        showing: Показано\n        of: из\n        to: до\n        entries: записи\n        fullarticle: 'Полный текст статьи'\n        hidden: Скрытый\n        approved: Утвержденный\n        new: Новый\n        editarticle: 'Перейти к редактируемой статье'\n        section: Рубрика\n        comment: Комментарий\n        replyto: 'Ответить на комментарий'\n        subject: Тема\n        ban: 'Запретить/разрешить пользователю комментировать'\n        author: Автор\n        date: 'Дата / Комментарий'\n        article: Статья\n        search: Поиск\n        show: Показывать\n        recommended: Рекомендовано\n        unrecommended: 'Не рекомендовано'\n        editcomment: 'Быстрое редактирование комментария'\n        actions: Операции\n        selectstatus: 'Выбрать статус'\n        deleted: 'Удалено '\n        alert: null\n        searchholder: 'Искать... (например, по имени, email, теме, комментарию, названию статьи)'\n    btn:\n        cancel: Отменить\n        submit: Отправить\n        unrecommend: 'Не рекомендовать'\n        recommend: Рекомендовать\n        delete: Удалить\n        reply: Ответ\n        edit: 'Быстрое редактирование'\n        close: Закрыть\n        okay: OK\n        filter: Фильтр\n    msg:\n        deleted: 'Комментарий удален.'\n        commentinarticle: 'Комментарий $4 пользователя $1 в статье $2 ($3)'\n        status:\n            new: новый\n            approved: утвержденный\n            hidden: скрыто\n            single: 'Статус комментария изменяется на'\n            all: 'Статус комментариев изменяется на'\n        error:\n            reach: 'Невозможно связаться с Newscoop. Пожалуйста, проверьте ваше интернет-соединение.'\n            deletefromarticle: 'Комментарий удален пользователем $1 из статьи $2 ($3)'\n            statuschange: 'Ошибка при изменении статуса комментария'\n            delete: 'Не удалось удалить комментарий'\n            update: 'Поля должны быть заполнены'\n        sure: 'Вы собираетесь окончательно удалить комментарий.'\n        suremultiple: 'Вы собираетесь удалить этот комментарий без возможности восстановления.'\n        first: 'Прежде всего, пожалуйста, выберите комментарий/ии.'\n        surequestion: 'Вы уверены, что хотите это сделать?'\n        updated: 'Комментарий обновлен.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.sh.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: Komentari\n        banned: null\n        anonymous: null\n        at: u\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: 'Ceo tekst'\n        hidden: Sakriven\n        approved: Odobren\n        new: Novi\n        editarticle: 'Idi na uređivanje teksta'\n        section: Rubrika\n        comment: Komentar\n        replyto: 'Odgovorite na komentar'\n        subject: Naslov\n        ban: null\n        author: Autor\n        date: null\n        article: Tekst\n        search: Traži\n        show: Prikaži\n        recommended: Preporučeni\n        unrecommended: Nepreporučen\n        editcomment: null\n        actions: Akcije\n        selectstatus: 'Izaberi status'\n        deleted: Obrisano\n        alert: null\n        searchholder: null\n    btn:\n        cancel: Poništi\n        submit: Predaj\n        unrecommend: Nepreporučen\n        recommend: Preporučen\n        delete: Obriši\n        reply: Odgovori\n        edit: 'Brzo uređivanje'\n        close: Zatvori\n        okay: OK\n        filter: Filter\n    msg:\n        deleted: 'Komentar izbrisan'\n        commentinarticle: 'Komentar $4 od $1 u tekstu $2 ($3)'\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: 'Newscoop nije dostupan. Proverite svoju interent vezu.'\n            deletefromarticle: 'Komentar obrisan od strane $1 iz teksta $2 ($3)'\n            statuschange: null\n            delete: null\n            update: null\n        sure: 'Nepovaratno ćete Izbrisati komentar.'\n        suremultiple: null\n        first: null\n        surequestion: 'Siguri ste da želite to da uradite?'\n        updated: 'Komentar izmenjen.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.sq.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: null\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: null\n        approved: null\n        new: null\n        editarticle: null\n        section: null\n        comment: null\n        replyto: null\n        subject: null\n        ban: null\n        author: null\n        date: null\n        article: null\n        search: null\n        show: null\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: null\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: null\n        submit: null\n        unrecommend: null\n        recommend: null\n        delete: null\n        reply: null\n        edit: null\n        close: null\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.sr.yml",
    "content": "comments:\n    label:\n        comments: 'Управљање коментарима'\n        menu: Коментари\n        banned: Забрањен\n        anonymous: Анонимус\n        at: у\n        noentries: 'Нема уноса за тражено.'\n        showing: Приказивање\n        of: од\n        to: ка\n        entries: уноси\n        fullarticle: 'Цео текст'\n        hidden: Сакривен\n        approved: Одобрен\n        new: Нови\n        editarticle: 'Иди на уређивање текста'\n        section: Рубрика\n        comment: Коментар\n        replyto: 'Одговорите на коментар'\n        subject: Наслов\n        ban: 'Блокирајте или одблокирајте корисника'\n        author: аутор\n        date: 'Датум / Коментари'\n        article: Текст\n        search: Тражи\n        show: Прикажи\n        recommended: Препоручени\n        unrecommended: Непрепоручен\n        editcomment: 'Брзо уређивање коментара'\n        actions: Акције\n        selectstatus: 'Изабери статус'\n        deleted: Обрисано\n        alert: Упозорење\n        searchholder: 'Претраживање...(име, мејл, наслов, коментар, наслов чланка)'\n    btn:\n        cancel: Батали\n        submit: Пошаљи\n        unrecommend: Непрепоручен\n        recommend: Препоручен\n        delete: Обриши\n        reply: Одговори\n        edit: 'Брзо уређивање'\n        close: Затвори\n        okay: OK\n        filter: Филтер\n    msg:\n        deleted: 'Коментар избрисан'\n        commentinarticle: 'Коментатор $4 од $1 у тексту $2 ($3)'\n        status:\n            new: нови\n            approved: одобрен\n            hidden: сакривен\n            single: 'Статус коментара промењен у'\n            all: 'Статус коментара промењен у'\n        error:\n            reach: 'Newscoop није доступан. Проверите своју интернет везу.'\n            deletefromarticle: 'Коментар обрисан од стране $1 из текста $2 ($3)'\n            statuschange: 'Грешка приликом промене статуса коментара'\n            delete: 'Није могуће обрисати овај коментар'\n            update: 'Поља не могу остати празна'\n        sure: 'Неповратно ћете избрисати коментар.'\n        suremultiple: 'Неповратно ћете избрисати коментаре.'\n        first: 'Прво изаберите коментаре!'\n        surequestion: 'Сигурни сте да желите то да урадите?'\n        updated: 'Коментар измењен.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.sv.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: Kommentarer\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: Gömd\n        approved: Godkänd\n        new: Ny\n        editarticle: null\n        section: Sektion\n        comment: Kommentar\n        replyto: null\n        subject: Ämne\n        ban: null\n        author: Författare\n        date: null\n        article: Artikel\n        search: Sök\n        show: Visa\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: Handlingar\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: Avbryt\n        submit: Skicka\n        unrecommend: null\n        recommend: null\n        delete: Radera\n        reply: null\n        edit: null\n        close: Stäng\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.tr.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: null\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: null\n        approved: null\n        new: null\n        editarticle: null\n        section: null\n        comment: null\n        replyto: null\n        subject: null\n        ban: null\n        author: null\n        date: null\n        article: null\n        search: null\n        show: null\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: null\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: null\n        submit: null\n        unrecommend: null\n        recommend: null\n        delete: null\n        reply: null\n        edit: null\n        close: null\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.uk.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: Коментарі\n        banned: null\n        anonymous: null\n        at: на\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: 'Повна стаття'\n        hidden: Приховано\n        approved: Дозволено\n        new: Нове\n        editarticle: 'До редагування статті'\n        section: Секція\n        comment: Коментар\n        replyto: 'Відповісти на коментар'\n        subject: Тема\n        ban: 'Дозволити / заборонити користувачу коментувати'\n        author: Автор\n        date: null\n        article: Стаття\n        search: Пошук\n        show: Показати\n        recommended: Рекомендовано\n        unrecommended: 'Не рекомендовано'\n        editcomment: null\n        actions: Дії\n        selectstatus: 'Вибрати статус'\n        deleted: Видалено\n        alert: null\n        searchholder: null\n    btn:\n        cancel: Відмінити\n        submit: 'Ок(?)'\n        unrecommend: 'Не рекомендувати'\n        recommend: Рекомендувати\n        delete: Видалити\n        reply: Відповідь\n        edit: 'Швидка відповідь'\n        close: Закрити\n        okay: null\n        filter: Фільтр\n    msg:\n        deleted: 'Коментар видалено.'\n        commentinarticle: 'Коментар $4 на $1 у статті 2 $ ($3)'\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: 'Неможливо зв’язатись з Newscoop. Будь ласка, перевірте ваше інтернет-з’єднання.'\n            deletefromarticle: 'Коментар видалено $1 з статті $2 ($3)'\n            statuschange: null\n            delete: null\n            update: null\n        sure: 'Ви збираєтеся остаточно видалити коментар.'\n        suremultiple: null\n        first: null\n        surequestion: 'Ви впевнені що хочете зробити це?'\n        updated: 'Коментарій оновлено.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.vi.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: null\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: null\n        approved: null\n        new: null\n        editarticle: null\n        section: null\n        comment: null\n        replyto: null\n        subject: null\n        ban: null\n        author: null\n        date: null\n        article: null\n        search: null\n        show: null\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: null\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: null\n        submit: null\n        unrecommend: null\n        recommend: null\n        delete: null\n        reply: null\n        edit: null\n        close: null\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.zh.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: null\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: null\n        approved: null\n        new: 新\n        editarticle: null\n        section: 区\n        comment: null\n        replyto: null\n        subject: null\n        ban: null\n        author: null\n        date: null\n        article: 文章\n        search: 搜索\n        show: null\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: null\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: 取消\n        submit: 提交\n        unrecommend: null\n        recommend: null\n        delete: 删除\n        reply: null\n        edit: null\n        close: null\n        okay: 成功\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/new_comments.zh_TW.yml",
    "content": "comments:\n    label:\n        comments: null\n        menu: null\n        banned: null\n        anonymous: null\n        at: null\n        noentries: null\n        showing: null\n        of: null\n        to: null\n        entries: null\n        fullarticle: null\n        hidden: null\n        approved: null\n        new: 新\n        editarticle: null\n        section: 區\n        comment: null\n        replyto: null\n        subject: null\n        ban: null\n        author: 作者\n        date: null\n        article: 文章\n        search: 搜索\n        show: null\n        recommended: null\n        unrecommended: null\n        editcomment: null\n        actions: null\n        selectstatus: null\n        deleted: null\n        alert: null\n        searchholder: null\n    btn:\n        cancel: 取消\n        submit: 提交\n        unrecommend: null\n        recommend: null\n        delete: 删除\n        reply: null\n        edit: null\n        close: 關閉\n        okay: null\n        filter: null\n    msg:\n        deleted: null\n        commentinarticle: null\n        status:\n            new: null\n            approved: null\n            hidden: null\n            single: null\n            all: null\n        error:\n            reach: null\n            deletefromarticle: null\n            statuschange: null\n            delete: null\n            update: null\n        sure: null\n        suremultiple: null\n        first: null\n        surequestion: null\n        updated: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.ar.yml",
    "content": "'You have no installed plugins.': 'لا توجد  ملحقات مركبة ـ'\n'Some plugins have to be updated. Please press the save button.': 'يجب تحديث بعض الملحقات. يرجى النقر الزر إحفظ ـ'\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': 'يرجى التحقق إزالة تركيب الملحق $1. ستحذف كل البيانات للملحق!ـ'\n'You do not have the right to manage plugins.': 'ليس لديك الحق في ادارة ملحقات'\nVersion: إصدار\n'Upload Plugin': 'إرفع الملحق'\nUpload: إرفع\nUninstall: null\n'The plugin $1 was sucessfully installed.': 'تم تركيب الملحق $1 بنجاح ـ'\n'No plugins found.': 'لا توجد ملحقات ـ'\nManage: أدر\nEnabled: 'تم تفعيل'\n'Delete plugin': 'إحذف الملحق'\n'Add new image': 'أضف صورة جديدة'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.az.yml",
    "content": "'You have no installed plugins.': 'Quraşdırılmış plaqinin yoxdur.'\n'Some plugins have to be updated. Please press the save button.': 'Bəzi plaqinlər yenilənməlidir. Lütfən, saxla düyməsini kliklə.'\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': 'Lütfən, $1 plaqininin yığışdırılmasını təsdiqlə. Bütün plaqin məlumatı silinəcək!'\n'You do not have the right to manage plugins.': 'Plaqinləri idarə etməyə ixtiyarın yoxdur.'\nVersion: Versiya\n'Upload Plugin': 'Plqain Yüklə'\nUpload: Yüklə\nUninstall: Yığışdır\n'The plugin $1 was sucessfully installed.': '$1 plaqini müvəffəqiyyətlə quraşdırıldı.'\n'No plugins found.': 'Plaqin tapılmadı.'\nManage: 'İdarə et'\nEnabled: 'İcazə Verildi'\n'Delete plugin': 'Plaqini sil'\n'Add new image': 'Yeni şəkil əlavə et'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.be.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': 'Патрабуецца абнаўленне некаторых плагінаў. Калі ласка, націсніце гузік «Захаваць».'\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': 'Калі ласка, пацвердзіце выдаленне ўбудовы $1. Усе дадзеныя ўбудовы будуць выдаленыя!'\n'You do not have the right to manage plugins.': 'У Вас няма права доступу для кіравання ўбудовамі.'\nVersion: Версія\n'Upload Plugin': 'Запампаваць убудову'\nUpload: Загрузіць\nUninstall: Дэўсталяваць\n'The plugin $1 was sucessfully installed.': 'Убудова $1 была паспяхова ўсталяваная.'\n'No plugins found.': 'Не знойдзена ўбудоў.'\nManage: Кіраваць\nEnabled: Дазволена\n'Delete plugin': 'Выдаліць убудову'\n'Add new image': 'Дадаць новы графiчны файл.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.bn.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.cs.yml",
    "content": "'You have no installed plugins.': 'Nemáte nainstalované žádné pluginy.'\n'Some plugins have to be updated. Please press the save button.': 'Některé pluginy je třeba aktualizovat. Prosím klikněte na tlačítko uložit.'\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': 'Prosím potvrďte odinstalaci pluinu $1? Všechna data pluginu budou odstraněna!'\n'You do not have the right to manage plugins.': 'Nemáte oprávnění spravovat pluginy.'\nVersion: Verze\n'Upload Plugin': 'Nahrát Plugin'\nUpload: Nahrávat\nUninstall: Odinstalovat\n'The plugin $1 was sucessfully installed.': 'Plugin $1 byl úspěšně nainstalován.'\n'No plugins found.': 'Nebyly nalezeny žádné pluginy.'\nManage: Spravovat\nEnabled: Zapnuto\n'Delete plugin': 'Odstranit plugin'\n'Add new image': 'Přidat obrázek'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.da.yml",
    "content": "'You have no installed plugins.': 'Du har ingen installerede plugins'\n'Some plugins have to be updated. Please press the save button.': 'Plugins skal opdateres. Tryk gem.'\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': 'Bekræft afinstallering af plugin $1. Alle plugin data vil blive slettet.'\n'You do not have the right to manage plugins.': 'Du har ikke rettigheder til at administrere plugins.'\nVersion: Version\n'Upload Plugin': 'Upload plugin'\nUpload: Upload\nUninstall: Afinstaller\n'The plugin $1 was sucessfully installed.': 'Plugin $1 blev installeret.'\n'No plugins found.': 'Ingen plugins.'\nManage: Administrer\nEnabled: 'Slået til'\n'Delete plugin': 'Slet plugin'\n'Add new image': 'Tilføj nyt billede'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.de.yml",
    "content": "'You have no installed plugins.': 'Sie haben keine Plugins installiert. '\n'Some plugins have to be updated. Please press the save button.': 'Einige Plugins müssen aktualisiert werden. Bitte auf Speichern klicken.'\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': 'Bitte Deinstallation von Plugin $1 bestätigen. Alle Plugin Daten werden gelöscht!'\n'You do not have the right to manage plugins.': 'Keine Berechtigung Plugins zu verwalten.'\nVersion: Version\n'Upload Plugin': 'Plugin hochladen'\nUpload: Upload\nUninstall: Deinstallieren\n'The plugin $1 was sucessfully installed.': 'Das Plugin $1 wurde erfolgreich installiert.'\n'No plugins found.': 'Keine Plugins gefunden'\nManage: Verwalten\nEnabled: Aktiviert\n'Delete plugin': 'Plugin löschen'\n'Add new image': 'Neues Bild hinzufügen'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.de_AT.yml",
    "content": "'You have no installed plugins.': 'Sie haben keine Plugins installiert. '\n'Some plugins have to be updated. Please press the save button.': 'Einige Plugins müssen aktualisiert werden. Bitte auf Speichern klicken.'\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': 'Bitte Deinstallation von Plugin $1 bestätigen. Alle Plugin Daten werden gelöscht!'\n'You do not have the right to manage plugins.': 'Keine Berechtigung Plugins zu verwalten.'\nVersion: Version\n'Upload Plugin': 'Plugin hochladen'\nUpload: Upload\nUninstall: Deinstallieren\n'The plugin $1 was sucessfully installed.': 'Das Plugin $1 wurde erfolgreich installiert.'\n'No plugins found.': 'Keine Plugins gefunden'\nManage: Verwalten\nEnabled: Aktiviert\n'Delete plugin': 'Plugin löschen'\n'Add new image': 'Neues Bild hinzufügen'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.el.yml",
    "content": "'You have no installed plugins.': 'Δεν έχετε εγκατεστημένες πρόσθετες λειτουργίες.'\n'Some plugins have to be updated. Please press the save button.': 'Κάποιες πρόσθετες λειτουργίες πρέπει να ενημερωθούν. Παρακαλούμε πατήστε το πλήκτρο αποθήκευσης.'\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': 'Παρακαλούμε επιβεβαιώστε την απεγκατάσταση της πρόσθετης λειτουργίας $1. Όλα τα δεδομένα της λειτουργίας θα διαγραφούν!'\n'You do not have the right to manage plugins.': 'Δεν έχετε το δικαίωμα διαχείρισης πρόσθετων λειτουργιών.'\nVersion: Εκδοχή\n'Upload Plugin': 'Ανέβασμα Πρόσθετης Λειτουργίας'\nUpload: Ανέβασμα\nUninstall: Απεγκατάσταση\n'The plugin $1 was sucessfully installed.': 'Η πρόσθετη λειτουργία $1 εγκαταστάθηκε επιτυχώς.'\n'No plugins found.': 'Δεν βρέθηκαν πρόσθετες λειτουργίες.'\nManage: Διαχείριση\nEnabled: Ενεργοποιήθηκε\n'Delete plugin': 'Διαγραφή πρόσθετης λειτουργίας'\n'Add new image': 'Προσθήκη νέας εικόνας'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.en.yml",
    "content": "'You have no installed plugins.': 'You have no installed plugins.'\n'Some plugins have to be updated. Please press the save button.': 'Some plugins have to be updated. Please press the save button.'\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': 'Please confirm the plugin $1 uninstall. All plugin data will be deleted!'\n'You do not have the right to manage plugins.': 'You do not have the right to manage plugins.'\nVersion: Version\n'Upload Plugin': 'Upload Plugin'\nUpload: Upload\nUninstall: Uninstall\n'The plugin $1 was sucessfully installed.': 'The plugin $1 was sucessfully installed.'\n'No plugins found.': 'No plugins found.'\nManage: Manage\nEnabled: Enabled\n'Delete plugin': 'Delete plugin'\n'Add new image': 'Add new image'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.en_GB.yml",
    "content": "'You have no installed plugins.': 'You have no installed plugins.'\n'Some plugins have to be updated. Please press the save button.': 'Some plugins have to be updated. Please press the save button.'\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': 'Please confirm the plugin $1 uninstall. All plugin data will be deleted!'\n'You do not have the right to manage plugins.': 'You do not have the right to manage plugins.'\nVersion: Version\n'Upload Plugin': 'Upload Plugin'\nUpload: Upload\nUninstall: Uninstall\n'The plugin $1 was sucessfully installed.': 'The plugin $1 was sucessfully installed.'\n'No plugins found.': 'No plugins found.'\nManage: Manage\nEnabled: Enabled\n'Delete plugin': 'Delete plugin'\n'Add new image': 'Add new image'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.es.yml",
    "content": "'You have no installed plugins.': 'No ha instalado plugins.'\n'Some plugins have to be updated. Please press the save button.': 'Algunos plugins deben ser renovados. Por favor presione guardar.'\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': 'Por favor confirme la desinstalación del plugin $1. ¡Toda la información del plugin será borrada!'\n'You do not have the right to manage plugins.': 'No puedes administrar los plugins.'\nVersion: Versión\n'Upload Plugin': 'Cargar plugin.'\nUpload: Subir\nUninstall: Desinstalar\n'The plugin $1 was sucessfully installed.': 'El plugin $1 fue instalado exitosamente.'\n'No plugins found.': 'No se encontró ningún plugin.'\nManage: Administrar\nEnabled: Activar\n'Delete plugin': 'Borrar el plugin.'\n'Add new image': 'Agregar nueva imagen'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.es_AR.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: Versión\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.fa.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.fa_AF.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.fr.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: Téléchargement\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': 'Ajoutez la nouvelle image '\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.he.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.hr.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': 'Dodaj novu sliku'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.hu.yml",
    "content": "'You have no installed plugins.': 'Nem telepítettél bővítményeket.'\n'Some plugins have to be updated. Please press the save button.': 'Néhány bővítményt frissíteni kell. Nyomd meg a Mentés gombot.'\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': 'Erősítsd meg a/z $1 bővítmény eltávolítását. Törlésre fog kerülni a bővítmény összes adata!'\n'You do not have the right to manage plugins.': 'Nincs jogod a bővítmények kezeléséhez.'\nVersion: Verzió\n'Upload Plugin': 'Bővítmény feltöltése'\nUpload: Feltöltés\nUninstall: Eltávolítás\n'The plugin $1 was sucessfully installed.': 'A/z $1 bővítmény telepítése sikerült.'\n'No plugins found.': 'Nem találhatók bővítmények.'\nManage: Kezelés\nEnabled: Engedélyezve\n'Delete plugin': 'Bővítmény törlése'\n'Add new image': 'Új kép hozzáadása'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.hy.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.hy_AM.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.id.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.it.yml",
    "content": "'You have no installed plugins.': 'Non ci sono plugin installati.'\n'Some plugins have to be updated. Please press the save button.': 'Alcuni plugin devono essere aggiornati. Premere il pulsante salva.'\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': 'Conferma leliminazione del plugin $1. Tutti i dati del plugin andranno persi!'\n'You do not have the right to manage plugins.': 'Non si possiedono i permessi per gestire i plugin.'\nVersion: Versione\n'Upload Plugin': 'Carica plugin'\nUpload: Carica\nUninstall: Disistalla\n'The plugin $1 was sucessfully installed.': 'Il plugin $1 è stato installato con successo.'\n'No plugins found.': 'Nessun plugin trovato.'\nManage: Gestisci\nEnabled: Abilitato\n'Delete plugin': 'Elimina plugin'\n'Add new image': 'Aggiungi immagine'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.ka.yml",
    "content": "'You have no installed plugins.': 'თქვენ არ დაგიყენებიათ პლაგინები'\n'Some plugins have to be updated. Please press the save button.': 'ზოგიერთი პლაგინი უნდა განახლდეს. დააჭირეთ დამახსოვრებას.'\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': 'დაადასტურეთ რომ გსურთ $1 წაშლა. პლაგინის მონაცემები წაიშლება!'\n'You do not have the right to manage plugins.': 'თქვენ არ გაქვთ პლაგინების მართვის უფლება.'\nVersion: ვერსია\n'Upload Plugin': 'პლაგინის ატვირთვა'\nUpload: ატვირთვა\nUninstall: 'ინსტალიაციის გაუქმება'\n'The plugin $1 was sucessfully installed.': '$1 პლაგინი დაყენდა.'\n'No plugins found.': 'პლაგინი არ მოიძებნა'\nManage: მართვა\nEnabled: ჩართულია\n'Delete plugin': 'პლაგინის წაშლა'\n'Add new image': 'ახალი გამოსახულების დამატება'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.ko.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': '새로운 이미지 추가'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.ku.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.lv.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.mr.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.nb_NO.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.nl.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': 'Voeg nieuwe afbeelding toe'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.pa.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.pl.yml",
    "content": "'You have no installed plugins.': 'Nie masz zainstalowanych żadnych wtyczek.'\n'Some plugins have to be updated. Please press the save button.': 'Niektóre pluginy muszą zostać uaktualnione. Wciśnij przycisk zapisz.'\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': 'Potwierdź usunięcie pluginu $1? Wszystkie dane powiązane zostaną usunięte!'\n'You do not have the right to manage plugins.': 'Nie masz wystarczających praw by zarządzać pluginami.'\nVersion: Wersja\n'Upload Plugin': 'Wgraj plugin'\nUpload: Wgraj\nUninstall: Odinstaluj\n'The plugin $1 was sucessfully installed.': 'Plugin $1 został zainstalowany pomyślnie.'\n'No plugins found.': 'Nie znaleziono pluginów'\nManage: Zarządzanie\nEnabled: Właczone\n'Delete plugin': 'Usuń plugin'\n'Add new image': 'Dodaj nowe zdjęcie'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.ps.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.pt.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': 'Adicionar Imagem'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.pt_BR.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: Versão\n'Upload Plugin': null\nUpload: Upload\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: Ativado\n'Delete plugin': null\n'Add new image': 'Adicionar Imagem'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.ro.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: Versiune\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: Activat\n'Delete plugin': null\n'Add new image': 'Adaugă o imagine nouă'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.ru.yml",
    "content": "'You have no installed plugins.': 'У вас нет установленных плагинов.'\n'Some plugins have to be updated. Please press the save button.': 'Требуется обновление некоторых плагинов. Пожалуйста, нажмите кнопку Сохранить.'\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': 'Пожалуйста, подтвердите удаление плагина $1. Все данные плагина будут удалены!'\n'You do not have the right to manage plugins.': 'У Вас нет права доступа для управления плагинами.'\nVersion: Версия\n'Upload Plugin': 'Загрузите плагин'\nUpload: Загрузить\nUninstall: Деинсталлировать\n'The plugin $1 was sucessfully installed.': 'Плагин $1 был успешно инсталлирован.'\n'No plugins found.': 'Не найдено плагинов.'\nManage: Управлять\nEnabled: Разрешено\n'Delete plugin': 'Удалить плагин'\n'Add new image': 'Добавить новое изображение'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.sh.yml",
    "content": "'You have no installed plugins.': 'Nemate instaliranih plaginova.'\n'Some plugins have to be updated. Please press the save button.': 'Neki plaginovi moraju biti apdejtovani. Pritisnite dugme snimi.'\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': 'Potrebna je potvrda za brisanje plugina $1! Svi podaci vezani za ovaj plugin biće obrisani!'\n'You do not have the right to manage plugins.': 'Nemate pravo upravljanja pluginovima'\nVersion: Verzija\n'Upload Plugin': 'Uploaduj plugin'\nUpload: Aplouduj\nUninstall: Deinstaliranje\n'The plugin $1 was sucessfully installed.': 'Plugin $1 je uspešno instaliran.'\n'No plugins found.': 'Nije pronađen nijedan plugin.'\nManage: Upravljanje\nEnabled: Omogućeni\n'Delete plugin': 'Obriši plugin'\n'Add new image': 'Dodaj novu sliku'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.sq.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.sr.yml",
    "content": "'You have no installed plugins.': 'Немате инсталираних плагинова.'\n'Some plugins have to be updated. Please press the save button.': 'Неки плагинови морају бити апдејтовани. Притисни дугме сними.'\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': 'Потребна је потврда за брисање плагина $1! Сви подаци везани за овај плагин биће обрисани!'\n'You do not have the right to manage plugins.': 'Немате право управљања плагиновима'\nVersion: Верзија\n'Upload Plugin': 'Аплоудуј плагин'\nUpload: Аплоудуј\nUninstall: Деинсталирање\n'The plugin $1 was sucessfully installed.': 'Плагин $1 је успешно инсталиран'\n'No plugins found.': 'Није пронађен ниједан плагин.'\nManage: Управљање\nEnabled: Омогућени\n'Delete plugin': 'Обриши плагин'\n'Add new image': 'Додајте нову слику'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.sv.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': 'Lägg till ny bild'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.tr.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.uk.yml",
    "content": "'You have no installed plugins.': 'Ви не маєте прав інсталювати плагини'\n'Some plugins have to be updated. Please press the save button.': 'Деякі плагіни повинні бути оновлені. Будь ласка збережіть усе.'\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': 'Підтвердіть видалення плагіну $1. Всі дані плагіну будуть видалені!'\n'You do not have the right to manage plugins.': 'Ви не маєте прав керувати плагінами.'\nVersion: Версія\n'Upload Plugin': 'Завантажити плагін'\nUpload: Завантажувати\nUninstall: Видалити\n'The plugin $1 was sucessfully installed.': 'Плагін $1 встановлений.'\n'No plugins found.': 'Плагінів не знайдено.'\nManage: Керування\nEnabled: Дозволено\n'Delete plugin': 'Видалити плагін'\n'Add new image': 'Додати нове зображення'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.vi.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.zh.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: 版本\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': 添加新图片\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins.zh_TW.yml",
    "content": "'You have no installed plugins.': null\n'Some plugins have to be updated. Please press the save button.': null\n'Please confirm the plugin $1 uninstall. All plugin data will be deleted!': null\n'You do not have the right to manage plugins.': null\nVersion: null\n'Upload Plugin': null\nUpload: null\nUninstall: null\n'The plugin $1 was sucessfully installed.': null\n'No plugins found.': null\nManage: null\nEnabled: null\n'Delete plugin': null\n'Add new image': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.ar.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: 'مدير أرشيف الملحقات .'\nnewscoop.plugins_manager.public_plugins: 'الملحقات المتاحه للجمهور.'\nnewscoop.plugins_manager.private_plugins: 'الملحقات الخاصه.'\nnewscoop.plugins_manager.install.public: 'تثبيت ملحقات جديدة.'\nnewscoop.plugins_manager.installed_table.name: اسم\nnewscoop.plugins_manager.installed_table.description: وصف\nnewscoop.plugins_manager.installed_table.enabled: 'تم التمكين'\nnewscoop.plugins_manager.installed_table.version: إصدار\nnewscoop.plugins_manager.installed_table.license: ترخيص\nnewscoop.plugins_manager.installed_table.installed_at: 'تم التثبيت في'\nnewscoop.plugins_manager.installed_table.updated_at: 'تم التحديث في'\nnewscoop.plugins_manager.installed_table.actions: الاجراءات\nnewscoop.plugins_manager.installed_table.update_plugin: 'قم بتحديث'\nnewscoop.plugins_manager.installed_table.remove_plugin: إزالة\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: 'تحميل ملحق خاص.'\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: رفع\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: 'عرض _START_ ل_END_ من _TOTAL_ إدخالات'\n            noentries: null\n            filtering: '- تصفية من السجلات _MAX_'\n            menu: 'عرض سجلات من _MENU_'\n        label:\n            search: بحث\n            filter: التصفية\n            processing: 'في عملية المعالجة...'\n            last: الأخير\n            next: التالي\n            first: الأول\n            previous: السابق\n            norecords: 'لم يتم العثور على سجلات.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.az.yml",
    "content": "newscoop.plugins_manager.manager: 'Plaqin idarəçisi'\nnewscoop.plugins_manager.legacy_manager: 'Varislik Plaqin İdarəçisi'\nnewscoop.plugins_manager.public_plugins: 'İctimai plaqinlər'\nnewscoop.plugins_manager.private_plugins: 'Şəxsi plaqinlər'\nnewscoop.plugins_manager.install.public: 'Yeni plaqinləri quraşdır'\nnewscoop.plugins_manager.installed_table.name: Ad\nnewscoop.plugins_manager.installed_table.description: İzah\nnewscoop.plugins_manager.installed_table.enabled: Aktivləşdirildi\nnewscoop.plugins_manager.installed_table.version: Versiya\nnewscoop.plugins_manager.installed_table.license: Lisenziya\nnewscoop.plugins_manager.installed_table.installed_at: 'Bu vaxt Quraşdırılıb'\nnewscoop.plugins_manager.installed_table.updated_at: 'Bu vaxt Yüklənib'\nnewscoop.plugins_manager.installed_table.actions: Addımlar\nnewscoop.plugins_manager.installed_table.update_plugin: Yenilə\nnewscoop.plugins_manager.installed_table.remove_plugin: 'Xaric Et'\nnewscoop.plugins_manager.installed_table.install_plugin: Quraşdır\nnewscoop.plugins_manager.installed_table.plugin_installed: Quraşdırıldı\nnewscoop.plugins_manager.upload.private: 'Şəxsi plaqin yüklə'\nnewscoop.plugins_manager.search_for_plugins: 'Plaqin axtar'\nnewscoop.plugins_manager.form.package: 'Paket zip fayl olmalıdır.'\nnewscoop.plugins_manager.form.submit: Yüklə\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: 'Ümumilikdə _TOTAL_ girişin _START_-dan/dən _END_-a/ə qaydasında nümayişi'\n            noentries: 'Nümayiş üçün firiş yoxdur'\n            filtering: '- _MAX_ yazılarından filterləmə'\n            menu: '_MENU_ yazılarını göstər'\n        label:\n            search: Axtar\n            filter: Filtr\n            processing: İcradadır...\n            last: Son\n            next: Növbəti\n            first: İlk\n            previous: Əvvəlki\n            norecords: 'Yazı tapılmadı.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.be.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: Загаловак\nnewscoop.plugins_manager.installed_table.description: Апісаньне\nnewscoop.plugins_manager.installed_table.enabled: Дазволена\nnewscoop.plugins_manager.installed_table.version: Версія\nnewscoop.plugins_manager.installed_table.license: Ліцэнзія\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: Апэрацыi\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: Выдалiць\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: Загрузіць\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: 'Паказаныя _START_ да _END_ / _TOTAL_ запісаў'\n            noentries: 'Няма запісаў для прагляду'\n            filtering: 'фільтраванне ад _MAX_ запісаў'\n            menu: 'Адлюстраваць _MENU_ запісы'\n        label:\n            search: Пошук\n            filter: 'Фільтр '\n            processing: Апрацоўка...\n            last: Апошнi\n            next: Наступн.\n            first: Першы\n            previous: Папярэд.\n            norecords: 'Не абрана ніводная з запісаў'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.bn.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: নাম\nnewscoop.plugins_manager.installed_table.description: null\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: null\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: null\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: null\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: null\n            filter: null\n            processing: null\n            last: null\n            next: null\n            first: null\n            previous: null\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.cs.yml",
    "content": "newscoop.plugins_manager.manager: 'Manager Pluginů'\nnewscoop.plugins_manager.legacy_manager: 'Manažer Legacy Pluginů'\nnewscoop.plugins_manager.public_plugins: 'Veřejné pluginy'\nnewscoop.plugins_manager.private_plugins: 'Soukromé pluginy'\nnewscoop.plugins_manager.install.public: 'Instalovat nové pluginy'\nnewscoop.plugins_manager.installed_table.name: Název\nnewscoop.plugins_manager.installed_table.description: Popis\nnewscoop.plugins_manager.installed_table.enabled: Zapnuto\nnewscoop.plugins_manager.installed_table.version: Verze\nnewscoop.plugins_manager.installed_table.license: Licence\nnewscoop.plugins_manager.installed_table.installed_at: 'Instalováno v'\nnewscoop.plugins_manager.installed_table.updated_at: 'Aktualizováno v'\nnewscoop.plugins_manager.installed_table.actions: Činnosti\nnewscoop.plugins_manager.installed_table.update_plugin: Aktualizovat\nnewscoop.plugins_manager.installed_table.remove_plugin: Odstranit\nnewscoop.plugins_manager.installed_table.install_plugin: Instalovat\nnewscoop.plugins_manager.installed_table.plugin_installed: Instalováno\nnewscoop.plugins_manager.upload.private: 'Nahrát soukromý plugin'\nnewscoop.plugins_manager.search_for_plugins: 'Hledat pluginy'\nnewscoop.plugins_manager.form.package: 'Soubrou návhru musí mít v zazipovaném souboru (.zip)'\nnewscoop.plugins_manager.form.submit: Nahrávat\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: 'Ukázat _START_ až _END_ z _TOTAL_ záznamů'\n            noentries: 'Nejsou zde žádné příspěvky k zobrazení'\n            filtering: '- filtrováno z _MAX_ záznamů'\n            menu: 'Zobrazit _MENU_ záznamy'\n        label:\n            search: Hledej\n            filter: Filter\n            processing: Zpracovávám...\n            last: Poslední\n            next: Další\n            first: První\n            previous: Předchozí\n            norecords: 'Nebyly nalezeny žádné záznamy.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.da.yml",
    "content": "newscoop.plugins_manager.manager: 'Plugin administration'\nnewscoop.plugins_manager.legacy_manager: 'Administration af gamle plugins'\nnewscoop.plugins_manager.public_plugins: 'Offentlige plugins'\nnewscoop.plugins_manager.private_plugins: 'Private plugins'\nnewscoop.plugins_manager.install.public: 'Installer ny plugin'\nnewscoop.plugins_manager.installed_table.name: Navn\nnewscoop.plugins_manager.installed_table.description: Beskrivelse\nnewscoop.plugins_manager.installed_table.enabled: 'Slået til'\nnewscoop.plugins_manager.installed_table.version: Version\nnewscoop.plugins_manager.installed_table.license: Licens\nnewscoop.plugins_manager.installed_table.installed_at: 'Installeret den'\nnewscoop.plugins_manager.installed_table.updated_at: 'Opdateret den'\nnewscoop.plugins_manager.installed_table.actions: Handlinger\nnewscoop.plugins_manager.installed_table.update_plugin: Opdater\nnewscoop.plugins_manager.installed_table.remove_plugin: Fjern\nnewscoop.plugins_manager.installed_table.install_plugin: Installer\nnewscoop.plugins_manager.installed_table.plugin_installed: Installeret\nnewscoop.plugins_manager.upload.private: 'Upload privat plugin'\nnewscoop.plugins_manager.search_for_plugins: 'Søg efter plugins'\nnewscoop.plugins_manager.form.package: 'Pakken skal være en zip fil.'\nnewscoop.plugins_manager.form.submit: Upload\nnewscoop.plugins_manager.runcommand: 'Kør kommando'\nnewscoop.plugins_manager.openterminal: 'Åben terminal og kør kommando'\nnewscoop.plugins_manager.installassets: 'Installer aktiver'\nnewscoop.plugins_manager.done: 'Færdig. Luk dette vindue og opdater siden.'\nnewscoop.plugins_manager.close: Luk\nnewscoop.plugins_manager.update: 'Hvordan opdateres denne plugin?'\nnewscoop.plugins_manager.install: 'Hvordan installeres denne plugin?'\nnewscoop.plugins_manager.remove: 'Hvordan fjernes denne plugin?'\nnewscoop.plugins_manager.installed: 'Færdig. Opdater denne side for at se pluginet i listen med installerede plugins.'\nnewscoop.plugins_manager.clipboard: 'Kopier: Ctrl + C (Cmd + C på Mac), Enter'\nnewscoop.plugins_manager.downloads: downloads\nnewscoop.plugins_manager.favers: fans\nnewscoop.plugins_manager.private_plugins_not_writable: 'Din webserver kan ikke skrive til %privatePluginsPath%.'\nnewscoop.plugins_manager.private_plugins_not_writable_commands: 'På en Linux server kan du løse det med kommandoerne:'\nnewscoop:\n    datatable:\n        table:\n            info: 'Viser _START_ til _END_ af _TOTAL_'\n            noentries: 'Intet at vise'\n            filtering: '- filtreret fra _MAX_ opslag'\n            menu: 'Vis _MENU_ opslag'\n        label:\n            search: Søg\n            filter: Filtrér\n            processing: Arbejder...\n            last: Sidste\n            next: Næste\n            first: Første\n            previous: Forrige\n            norecords: 'Ingen opslag.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.de.yml",
    "content": "newscoop.plugins_manager.manager: Pluginverwaltung\nnewscoop.plugins_manager.legacy_manager: 'Frühere Pluginverwaltung'\nnewscoop.plugins_manager.public_plugins: 'Öffentliche Plugins'\nnewscoop.plugins_manager.private_plugins: 'Private Plugins'\nnewscoop.plugins_manager.install.public: 'Neue Plugins installieren'\nnewscoop.plugins_manager.installed_table.name: Name\nnewscoop.plugins_manager.installed_table.description: Beschreibung\nnewscoop.plugins_manager.installed_table.enabled: Aktiviert\nnewscoop.plugins_manager.installed_table.version: Version\nnewscoop.plugins_manager.installed_table.license: Lizenz\nnewscoop.plugins_manager.installed_table.installed_at: 'Installiert am'\nnewscoop.plugins_manager.installed_table.updated_at: 'Aktualisiert am'\nnewscoop.plugins_manager.installed_table.actions: Aktionen\nnewscoop.plugins_manager.installed_table.update_plugin: Update\nnewscoop.plugins_manager.installed_table.remove_plugin: Entferne\nnewscoop.plugins_manager.installed_table.install_plugin: Installieren\nnewscoop.plugins_manager.installed_table.plugin_installed: Installiert\nnewscoop.plugins_manager.upload.private: 'Privates Plugin hochladen'\nnewscoop.plugins_manager.search_for_plugins: 'Nach Plugins suchen'\nnewscoop.plugins_manager.form.package: 'Dateipaket muss eine Zip Datei sein.'\nnewscoop.plugins_manager.form.submit: Upload\nnewscoop.plugins_manager.runcommand: 'Kommando ausführen'\nnewscoop.plugins_manager.openterminal: 'Kommandozeilen-Terminal öffnen und Kommando ausführen'\nnewscoop.plugins_manager.installassets: 'Zusatzelemente (Assets) installieren'\nnewscoop.plugins_manager.done: 'Erledigt. Bitte Fenster schließen und Seite neu laden.'\nnewscoop.plugins_manager.close: Schließen\nnewscoop.plugins_manager.update: 'Wie wird das Plugin aktiualisiert?'\nnewscoop.plugins_manager.install: 'Wie wird das Plugin installiert?'\nnewscoop.plugins_manager.remove: 'Wie wird das Plugin entfernt?'\nnewscoop.plugins_manager.installed: 'Erledigt. Seite bitte neu laden. Das Plugin sollte jetzt in der Liste installierter Plugins erscheinen.'\nnewscoop.plugins_manager.clipboard: 'In die Zwischenablage kopieren: Strg.+C (Apfel+C für Mac), Eingabe'\nnewscoop.plugins_manager.downloads: Downloads\nnewscoop.plugins_manager.favers: Favoriten\nnewscoop.plugins_manager.private_plugins_not_writable: '%privatePluginsPath% kann nicht auf Ihren Web-Server geschrieben werden.'\nnewscoop.plugins_manager.private_plugins_not_writable_commands: 'Auf einem Linux Server kann dies mit folgenden Kommandos behoben werden:'\nnewscoop:\n    datatable:\n        table:\n            info: 'Zeigt _START_ bis _END_ von _TOTAL_ Eingaben'\n            noentries: 'Keine Eingabe anzuzeigen'\n            filtering: '- fltern aus_MAX_Datensätzen'\n            menu: 'Zeige _MENU_ Datensätze'\n        label:\n            search: Suche\n            filter: Filter\n            processing: 'In Bearbeitung...'\n            last: Letzte(r)\n            next: Nächste(r)\n            first: Erste(r)\n            previous: Vorherige(r)\n            norecords: 'Keine Datensätze gefunden.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.de_AT.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: Name\nnewscoop.plugins_manager.installed_table.description: Beschreibung\nnewscoop.plugins_manager.installed_table.enabled: Aktiviert\nnewscoop.plugins_manager.installed_table.version: Version\nnewscoop.plugins_manager.installed_table.license: Lizenz\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: Aktionen\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: Entferne\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: Upload\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: 'Zeige _START_ bis _END_ von _TOTAL_ Einträgen'\n            noentries: 'Keine Einträge zum Anzeigen gefunden.'\n            filtering: 'filtert aus _MAX_ Einträgen '\n            menu: 'Anzeigen _MENU_ Einträge'\n        label:\n            search: Suche\n            filter: Filter\n            processing: Bearbeite...\n            last: Letzte\n            next: Weiter\n            first: Erste\n            previous: Zurück\n            norecords: 'Keine Angaben gefunden.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.el.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: Όνομα\nnewscoop.plugins_manager.installed_table.description: Περιγραφή\nnewscoop.plugins_manager.installed_table.enabled: Ενεργοποιήθηκε\nnewscoop.plugins_manager.installed_table.version: Εκδοχή\nnewscoop.plugins_manager.installed_table.license: Άδεια\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: Ενέργειες\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: Αφαίρεση\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: Ανέβασμα\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: 'Εμφάνιση _START_ προς _END_ από _TOTAL_ εισόδους'\n            noentries: 'Καμία είσοδος προς προβολή'\n            filtering: '-φιλτράρισμα από _MAX_ καταχωρήσεις'\n            menu: 'Εμφάνιση καταχωρήσεων _MENU_ '\n        label:\n            search: Αναζήτηση\n            filter: Φίλτρο\n            processing: Επεξεργασία...\n            last: Τελευταίο\n            next: Επόμενο\n            first: Πρώτο\n            previous: Προηγούμενο\n            norecords: 'Δεν βρέθηκαν καταχωρήσεις.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.en.yml",
    "content": "'newscoop.plugins_manager.manager': 'Plugins Manager'\n'newscoop.plugins_manager.legacy_manager': 'Legacy Plugins Manager'\n'newscoop.plugins_manager.public_plugins': 'Public plugins'\n'newscoop.plugins_manager.private_plugins': 'Private plugins'\n'newscoop.plugins_manager.install.public': 'Install new plugins'\n'newscoop.plugins_manager.installed_table.name': 'Name'\n'newscoop.plugins_manager.installed_table.description': 'Description'\n'newscoop.plugins_manager.installed_table.enabled': 'Enabled'\n'newscoop.plugins_manager.installed_table.version': 'Version'\n'newscoop.plugins_manager.installed_table.license': 'License'\n'newscoop.plugins_manager.installed_table.installed_at': 'Installed At'\n'newscoop.plugins_manager.installed_table.updated_at': 'Updated At'\n'newscoop.plugins_manager.installed_table.actions': 'Actions'\n'newscoop.plugins_manager.installed_table.update_plugin': 'Update'\n'newscoop.plugins_manager.installed_table.remove_plugin': 'Remove'\n'newscoop.plugins_manager.installed_table.install_plugin': 'Install'\n'newscoop.plugins_manager.installed_table.plugin_installed': 'Installed'\n'newscoop.plugins_manager.upload.private': 'Upload private plugin'\n'newscoop.plugins_manager.search_for_plugins': 'Search for plugins'\n'newscoop.plugins_manager.form.package': 'Package'\n'newscoop.plugins_manager.form.submit': 'Upload'\n'newscoop.plugins_manager.form.package': 'Package must be a zip file.'\n'newscoop.plugins_manager.runcommand': 'Run command'\n'newscoop.plugins_manager.openterminal': 'Open terminal and run command'\n'newscoop.plugins_manager.installassets': 'Install assets'\n'newscoop.plugins_manager.done': 'Done. Close this window and refresh page.'\n'newscoop.plugins_manager.close': 'Close'\n'newscoop.plugins_manager.update': 'How to update this plugin?'\n'newscoop.plugins_manager.install': 'How to install this plugin?'\n'newscoop.plugins_manager.remove': 'How to remove this plugin?'\n'newscoop.plugins_manager.installed': 'Done. Refresh this page. Plugin should be now visible in your list of installed plugins.'\n'newscoop.plugins_manager.clipboard': 'Copy to clipboard: Ctrl+C (Cmd + C for Mac), Enter'\n'newscoop.plugins_manager.downloads': 'downloads'\n'newscoop.plugins_manager.favers': 'favers'\n'newscoop.plugins_manager.private_plugins_not_writable': '%privatePluginsPath% is not writable by your web server.'\n'newscoop.plugins_manager.private_plugins_not_writable_commands': 'On a Linux server you can fix this with the commands:'\nnewscoop:\n    datatable:\n        table:\n          info: \"Showing _START_ to _END_ of _TOTAL_ entries\"\n          noentries: \"No entries to show\"\n          filtering: \" - filtering from _MAX_ records\"\n          menu: \"Display _MENU_ records\"\n        label:\n          search: \"Search\"\n          filter: \"Filter\"\n          processing: \"Processing...\"\n          last: \"Last\"\n          next: \"Next\"\n          first: \"First\"\n          previous: \"Previous\"\n          norecords: \"No records found.\""
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.en_GB.yml",
    "content": "newscoop.plugins_manager.manager: 'Plugins Manager'\nnewscoop.plugins_manager.legacy_manager: 'Legacy Plugins Manager'\nnewscoop.plugins_manager.public_plugins: 'Public plugins'\nnewscoop.plugins_manager.private_plugins: 'Private plugins'\nnewscoop.plugins_manager.install.public: 'Install new plugins'\nnewscoop.plugins_manager.installed_table.name: Name\nnewscoop.plugins_manager.installed_table.description: Description\nnewscoop.plugins_manager.installed_table.enabled: Enabled\nnewscoop.plugins_manager.installed_table.version: Version\nnewscoop.plugins_manager.installed_table.license: License\nnewscoop.plugins_manager.installed_table.installed_at: 'Installed At'\nnewscoop.plugins_manager.installed_table.updated_at: 'Updated At'\nnewscoop.plugins_manager.installed_table.actions: Actions\nnewscoop.plugins_manager.installed_table.update_plugin: Update\nnewscoop.plugins_manager.installed_table.remove_plugin: Remove\nnewscoop.plugins_manager.installed_table.install_plugin: Install\nnewscoop.plugins_manager.installed_table.plugin_installed: Installed\nnewscoop.plugins_manager.upload.private: 'Upload private plugin'\nnewscoop.plugins_manager.search_for_plugins: 'Search for plugins'\nnewscoop.plugins_manager.form.package: 'Package must be a zip file.'\nnewscoop.plugins_manager.form.submit: Upload\nnewscoop.plugins_manager.runcommand: 'Run command'\nnewscoop.plugins_manager.openterminal: 'Open terminal and run command'\nnewscoop.plugins_manager.installassets: 'Install assets'\nnewscoop.plugins_manager.done: 'Done. Close this window and refresh page.'\nnewscoop.plugins_manager.close: Close\nnewscoop.plugins_manager.update: 'How to update this plugin?'\nnewscoop.plugins_manager.install: 'How to install this plugin?'\nnewscoop.plugins_manager.remove: 'How to remove this plugin?'\nnewscoop.plugins_manager.installed: 'Done. Refresh this page. The plugin should be now visible in your list of installed plugins.'\nnewscoop.plugins_manager.clipboard: 'Copy to clipboard: Ctrl+C (Cmd + C for Mac), Enter'\nnewscoop.plugins_manager.downloads: downloads\nnewscoop.plugins_manager.favers: favourites\nnewscoop.plugins_manager.private_plugins_not_writable: '%privatePluginsPath% is not writable by your web server.'\nnewscoop.plugins_manager.private_plugins_not_writable_commands: 'On a Linux server you can fix this with the commands:'\nnewscoop:\n    datatable:\n        table:\n            info: 'Showing _START_ to _END_ of _TOTAL_ entries'\n            noentries: 'No entries to show'\n            filtering: '- filtering from _MAX_ records'\n            menu: 'Display _MENU_ records'\n        label:\n            search: Search\n            filter: Filter\n            processing: Processing...\n            last: Last\n            next: Next\n            first: First\n            previous: Previous\n            norecords: 'No records found.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.es.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: 'Plugins públicos'\nnewscoop.plugins_manager.private_plugins: 'Plugins privados'\nnewscoop.plugins_manager.install.public: 'Instalar nuevos plugins'\nnewscoop.plugins_manager.installed_table.name: Nombre\nnewscoop.plugins_manager.installed_table.description: Descripción\nnewscoop.plugins_manager.installed_table.enabled: Activar\nnewscoop.plugins_manager.installed_table.version: Versión\nnewscoop.plugins_manager.installed_table.license: Licencia\nnewscoop.plugins_manager.installed_table.installed_at: 'Instalado En'\nnewscoop.plugins_manager.installed_table.updated_at: 'Actualizado En'\nnewscoop.plugins_manager.installed_table.actions: Acciones\nnewscoop.plugins_manager.installed_table.update_plugin: Actualización\nnewscoop.plugins_manager.installed_table.remove_plugin: Eliminar\nnewscoop.plugins_manager.installed_table.install_plugin: Instalar\nnewscoop.plugins_manager.installed_table.plugin_installed: Instalado\nnewscoop.plugins_manager.upload.private: 'Cargar plugin privado'\nnewscoop.plugins_manager.search_for_plugins: 'Buscar plugins'\nnewscoop.plugins_manager.form.package: 'El paquete debe ser un archivo zip.'\nnewscoop.plugins_manager.form.submit: Subir\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: 'Mostrando de _START_ a _END_ el _TOTAL_ de entradas'\n            noentries: 'No se encontraron entradas'\n            filtering: '-filtrando desde archivos _MAX_'\n            menu: 'Desplegar registros _MENU_'\n        label:\n            search: Buscar\n            filter: Filtro\n            processing: Procesando...\n            last: Último\n            next: Próximo\n            first: Primero\n            previous: Previo\n            norecords: 'No se encontraron registros'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.es_AR.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: null\nnewscoop.plugins_manager.installed_table.description: null\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: Versión\nnewscoop.plugins_manager.installed_table.license: Licencia\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: null\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: null\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: null\n            filter: null\n            processing: null\n            last: null\n            next: null\n            first: null\n            previous: null\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.fa.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: null\nnewscoop.plugins_manager.installed_table.description: null\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: null\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: null\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: null\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: null\n            filter: null\n            processing: null\n            last: null\n            next: null\n            first: null\n            previous: null\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.fa_AF.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: null\nnewscoop.plugins_manager.installed_table.description: null\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: null\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: null\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: null\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: null\n            filter: null\n            processing: null\n            last: null\n            next: null\n            first: null\n            previous: null\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.fr.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: Nom\nnewscoop.plugins_manager.installed_table.description: Description\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: null\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: Actions\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: Enlever\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: Recherche\n            filter: null\n            processing: null\n            last: Dernier\n            next: Suivant\n            first: Premier\n            previous: Précédent\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.he.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: שם\nnewscoop.plugins_manager.installed_table.description: הגדרה\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: null\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: פעילויות\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: הסר\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: חפש\n            filter: null\n            processing: מעבד....\n            last: null\n            next: הבא\n            first: null\n            previous: קודם\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.hr.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: Ime\nnewscoop.plugins_manager.installed_table.description: Opis\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: null\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: Radnje\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: Ukloni\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: Traži\n            filter: null\n            processing: null\n            last: Zadnji\n            next: Naprijed\n            first: Prvi\n            previous: Nazad\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.hu.yml",
    "content": "newscoop.plugins_manager.manager: Bővítménykezelő\nnewscoop.plugins_manager.legacy_manager: Örököltbővítmény-kezelő\nnewscoop.plugins_manager.public_plugins: 'Nyilvános bővítmények'\nnewscoop.plugins_manager.private_plugins: 'Saját bővítmények'\nnewscoop.plugins_manager.install.public: 'Új bővítmények telepítése'\nnewscoop.plugins_manager.installed_table.name: Név\nnewscoop.plugins_manager.installed_table.description: Leírás\nnewscoop.plugins_manager.installed_table.enabled: Engedélyezve\nnewscoop.plugins_manager.installed_table.version: Verzió\nnewscoop.plugins_manager.installed_table.license: Licenc\nnewscoop.plugins_manager.installed_table.installed_at: Telepítve\nnewscoop.plugins_manager.installed_table.updated_at: Frissítve\nnewscoop.plugins_manager.installed_table.actions: Műveletek\nnewscoop.plugins_manager.installed_table.update_plugin: Frissítés\nnewscoop.plugins_manager.installed_table.remove_plugin: Eltávolítás\nnewscoop.plugins_manager.installed_table.install_plugin: Telepítés\nnewscoop.plugins_manager.installed_table.plugin_installed: Telepítve\nnewscoop.plugins_manager.upload.private: 'Saját bővítmény feltöltése'\nnewscoop.plugins_manager.search_for_plugins: 'Bővítmények keresése'\nnewscoop.plugins_manager.form.package: 'A csomagnak zip-fájlnak kell lennie.'\nnewscoop.plugins_manager.form.submit: Feltöltés\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: '_START_ - _END_. bejegyzés / _TOTAL_ megjelenítése'\n            noentries: 'Nincs megjelenítendő bejegyzés'\n            filtering: '- szűrés a _MAX_ rekordokból'\n            menu: '_MENU_ rekord megjelenítése'\n        label:\n            search: Keresés\n            filter: Szűrő\n            processing: Feldolgozás...\n            last: Utolsó\n            next: Következő\n            first: Első\n            previous: Előző\n            norecords: 'Nem találhatók rekordok.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.hy.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: null\nnewscoop.plugins_manager.installed_table.description: null\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: null\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: null\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: Հեռացնել\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: 'Run command'\nnewscoop.plugins_manager.openterminal: 'Open terminal and run command'\nnewscoop.plugins_manager.installassets: 'Install assets'\nnewscoop.plugins_manager.done: 'Done. Close this window and refresh page.'\nnewscoop.plugins_manager.close: Close\nnewscoop.plugins_manager.update: 'How to update this plugin?'\nnewscoop.plugins_manager.install: 'How to install this plugin?'\nnewscoop.plugins_manager.remove: 'How to remove this plugin?'\nnewscoop.plugins_manager.installed: 'Done. Refresh this page. Plugin should be now visible in your list of installed plugins.'\nnewscoop.plugins_manager.clipboard: 'Copy to clipboard: Ctrl+C (Cmd + C for Mac), Enter'\nnewscoop.plugins_manager.downloads: downloads\nnewscoop.plugins_manager.favers: favers\nnewscoop.plugins_manager.private_plugins_not_writable: '%privatePluginsPath% is not writable by your web server.'\nnewscoop.plugins_manager.private_plugins_not_writable_commands: 'On a Linux server you can fix this with the commands:'\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: null\n            filter: null\n            processing: null\n            last: Վերջին\n            next: null\n            first: Առաջին\n            previous: null\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.hy_AM.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: null\nnewscoop.plugins_manager.installed_table.description: Նկարագիր\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: Արտոնագիր\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: Գործողություններ\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: Հեռացնել\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: null\n            filter: null\n            processing: null\n            last: Վերջին\n            next: null\n            first: Առաջին\n            previous: null\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.id.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: null\nnewscoop.plugins_manager.installed_table.description: null\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: null\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: null\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: null\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: null\n            filter: null\n            processing: null\n            last: null\n            next: null\n            first: null\n            previous: null\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.it.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: Nome\nnewscoop.plugins_manager.installed_table.description: Descrizione\nnewscoop.plugins_manager.installed_table.enabled: Abilitato\nnewscoop.plugins_manager.installed_table.version: Versione\nnewscoop.plugins_manager.installed_table.license: Licenza\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: Azioni\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: Rimuovi\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: Carica\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: 'Mostro voci da  _START_ a  _END_ di _TOTAL_'\n            noentries: 'Nessun elemento da mostrare'\n            filtering: 'Filtro da _MAX_ voci'\n            menu: 'Mostra _MENU_ voci'\n        label:\n            search: Cerca\n            filter: Filtro\n            processing: Elaboro...\n            last: Ultimo\n            next: Successivo\n            first: Primo\n            previous: Precedente\n            norecords: 'Nessuna voce trovata.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.ka.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: სახელი\nnewscoop.plugins_manager.installed_table.description: აღწერა\nnewscoop.plugins_manager.installed_table.enabled: ჩართულია\nnewscoop.plugins_manager.installed_table.version: ვერსია\nnewscoop.plugins_manager.installed_table.license: ლიცენზია\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: მოქმედება\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: მოხსნა\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: ატვირთვა\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: 'საჩვენებელი ჩანაწერები არ არის.'\n            filtering: null\n            menu: null\n        label:\n            search: ძიება\n            filter: ფილტრი\n            processing: დამუშავება...\n            last: ბოლო\n            next: შემდეგი\n            first: პირველი\n            previous: წინა\n            norecords: 'ჩანაწერები ნაპოვნი არ არის.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.ko.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: '이름 '\nnewscoop.plugins_manager.installed_table.description: 설명\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: null\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: 기능\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: 삭제\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: 검색\n            filter: null\n            processing: null\n            last: 마지막\n            next: 다음\n            first: 처음\n            previous: 이전\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.ku.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: null\nnewscoop.plugins_manager.installed_table.description: null\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: null\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: null\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: null\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: null\n            filter: null\n            processing: null\n            last: null\n            next: null\n            first: null\n            previous: null\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.lv.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: null\nnewscoop.plugins_manager.installed_table.description: null\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: null\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: null\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: null\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: null\n            filter: null\n            processing: null\n            last: null\n            next: null\n            first: null\n            previous: null\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.mr.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: null\nnewscoop.plugins_manager.installed_table.description: null\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: null\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: null\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: null\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: null\n            filter: null\n            processing: null\n            last: null\n            next: null\n            first: null\n            previous: null\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.nb_NO.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: null\nnewscoop.plugins_manager.installed_table.description: null\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: null\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: null\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: null\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: null\n            filter: null\n            processing: null\n            last: null\n            next: null\n            first: null\n            previous: null\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.nl.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: Naam\nnewscoop.plugins_manager.installed_table.description: Beschrijving\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: null\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: Acties\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: Verwijderen\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: Zoeken\n            filter: null\n            processing: null\n            last: Laatste\n            next: Volgende\n            first: Eerste\n            previous: Vorige\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.pa.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: null\nnewscoop.plugins_manager.installed_table.description: null\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: null\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: null\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: null\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: '%privatePluginsPath% is not writable by your web server.'\nnewscoop.plugins_manager.private_plugins_not_writable_commands: 'On a Linux server you can fix this with the commands:'\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: null\n            filter: null\n            processing: null\n            last: null\n            next: null\n            first: null\n            previous: null\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.pl.yml",
    "content": "newscoop.plugins_manager.manager: 'Zarządzanie wtyczkami'\nnewscoop.plugins_manager.legacy_manager: 'Stare zarządzanie wtyczkami'\nnewscoop.plugins_manager.public_plugins: 'Pluginy publiczne'\nnewscoop.plugins_manager.private_plugins: 'Pluginy prywatne'\nnewscoop.plugins_manager.install.public: 'Instaluj publiczne pluginy'\nnewscoop.plugins_manager.installed_table.name: Nazwa\nnewscoop.plugins_manager.installed_table.description: Opis\nnewscoop.plugins_manager.installed_table.enabled: Aktywny\nnewscoop.plugins_manager.installed_table.version: Wersja\nnewscoop.plugins_manager.installed_table.license: Licencja\nnewscoop.plugins_manager.installed_table.installed_at: 'Data instalacji'\nnewscoop.plugins_manager.installed_table.updated_at: 'Data aktualizacji'\nnewscoop.plugins_manager.installed_table.actions: Akcje\nnewscoop.plugins_manager.installed_table.update_plugin: Aktualizuj\nnewscoop.plugins_manager.installed_table.remove_plugin: Usuń\nnewscoop.plugins_manager.installed_table.install_plugin: Instaluj\nnewscoop.plugins_manager.installed_table.plugin_installed: Zainstalowany\nnewscoop.plugins_manager.upload.private: 'Wgraj plik prywatnego pluginu'\nnewscoop.plugins_manager.search_for_plugins: 'Szukaj pluginów'\nnewscoop.plugins_manager.form.package: 'Plik pluginu'\nnewscoop.plugins_manager.form.submit: Wgraj\nnewscoop.plugins_manager.runcommand: 'Uruchom polecenie'\nnewscoop.plugins_manager.openterminal: 'Otwórz terminal konsoli i uruchom polecenie'\nnewscoop.plugins_manager.installassets: 'Zainstaluj wymagane pliki'\nnewscoop.plugins_manager.done: 'Zakończono. Zamknij to okno i odśwież stronę. '\nnewscoop.plugins_manager.close: Zamknij\nnewscoop.plugins_manager.update: 'Jak zaktualizować wtyczkę?'\nnewscoop.plugins_manager.install: 'Jak zainstalować wtyczkę?'\nnewscoop.plugins_manager.remove: 'Jak usunąć wtyczkę?'\nnewscoop.plugins_manager.installed: 'Zakończono. Odśwież tą stronę. Wtyczka powinna być widoczna na liście zainstalowanych wtyczek.'\nnewscoop.plugins_manager.clipboard: 'Skopiuj do schowka: Ctrl+C (Cmd + C na komputerach Mac), Enter'\nnewscoop.plugins_manager.downloads: pobrania\nnewscoop.plugins_manager.favers: Ulubione\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: 'Widoczne _START_ do _END_ z _TOTAL_ rekordów'\n            noentries: 'Nie ma żadnych rekordów'\n            filtering: ' - filtrowanie z _MAX_ rekordów'\n            menu: 'Pokazuje _MENU_ rekordów'\n        label:\n            search: Szukaj\n            filter: Filtruj\n            processing: Przetwarzanie...\n            last: Ostatni\n            next: Następny\n            first: Pierwszy\n            previous: Poprzedni\n            norecords: 'Nie znaleziono żadnych rekordów.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.ps.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: null\nnewscoop.plugins_manager.installed_table.description: null\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: null\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: null\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: null\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: null\n            filter: null\n            processing: null\n            last: null\n            next: null\n            first: null\n            previous: null\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.pt.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: Nome\nnewscoop.plugins_manager.installed_table.description: Descrição\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: null\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: Acções\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: Remover\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: Procurar\n            filter: null\n            processing: null\n            last: Ultimo\n            next: Próximo\n            first: Primeiro\n            previous: Anterior\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.pt_BR.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: Nome\nnewscoop.plugins_manager.installed_table.description: Descrição\nnewscoop.plugins_manager.installed_table.enabled: Ativado\nnewscoop.plugins_manager.installed_table.version: Versão\nnewscoop.plugins_manager.installed_table.license: Licença\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: Ações\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: Remover\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: Upload\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: 'Mostrando _START_ a _END_ de _TOTAL_ inscrições'\n            noentries: 'Não há registros para mostrar'\n            filtering: '- filtrando de _MAX_ registros'\n            menu: Mostrar_MENU_registros\n        label:\n            search: Procurar\n            filter: Filtro\n            processing: Processando...\n            last: Ultimo\n            next: Próximo\n            first: Primeiro\n            previous: Anterior\n            norecords: 'Nenhum dado encontrado'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.ro.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: Nume\nnewscoop.plugins_manager.installed_table.description: Descriere\nnewscoop.plugins_manager.installed_table.enabled: Activat\nnewscoop.plugins_manager.installed_table.version: Versiune\nnewscoop.plugins_manager.installed_table.license: Licență\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: Acţiuni\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: Şterge\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: Caută\n            filter: null\n            processing: null\n            last: Ultimul\n            next: Următoarele\n            first: Primul\n            previous: Anteriorul\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.ru.yml",
    "content": "newscoop.plugins_manager.manager: 'Менеджер плагинов'\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: 'Открытые плагины'\nnewscoop.plugins_manager.private_plugins: 'Закрытые плагины'\nnewscoop.plugins_manager.install.public: 'Установить новые плагины'\nnewscoop.plugins_manager.installed_table.name: Название\nnewscoop.plugins_manager.installed_table.description: Описание\nnewscoop.plugins_manager.installed_table.enabled: Разрешено\nnewscoop.plugins_manager.installed_table.version: Версия\nnewscoop.plugins_manager.installed_table.license: Лицензия\nnewscoop.plugins_manager.installed_table.installed_at: Установлено\nnewscoop.plugins_manager.installed_table.updated_at: Обновлено\nnewscoop.plugins_manager.installed_table.actions: Операции\nnewscoop.plugins_manager.installed_table.update_plugin: Обновить\nnewscoop.plugins_manager.installed_table.remove_plugin: Удалить\nnewscoop.plugins_manager.installed_table.install_plugin: Установить\nnewscoop.plugins_manager.installed_table.plugin_installed: Установлено\nnewscoop.plugins_manager.upload.private: 'Загрузить закрытый плагин'\nnewscoop.plugins_manager.search_for_plugins: 'Поиск плагинов'\nnewscoop.plugins_manager.form.package: 'Обязательный формат загружаемого файла zip'\nnewscoop.plugins_manager.form.submit: Загрузить\nnewscoop.plugins_manager.runcommand: 'Выполнять команду'\nnewscoop.plugins_manager.openterminal: 'Открыть терминал и выполнить команду'\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: 'Готово. Закройте окно и обновите страницу.'\nnewscoop.plugins_manager.close: Закрыть\nnewscoop.plugins_manager.update: 'Как обновить этот плагин?'\nnewscoop.plugins_manager.install: 'Как установить этот плагин?'\nnewscoop.plugins_manager.remove: 'Как удалить этот плагин?'\nnewscoop.plugins_manager.installed: 'Готово. Обновите страницу. Плагин должен отобразиться в списке установленных плагинов.'\nnewscoop.plugins_manager.clipboard: 'Копировать в буфер обмена: Ctrl+C (Cmd + C для Mac), Enter'\nnewscoop.plugins_manager.downloads: загрузки\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: 'Показано _START_ до _END_ / _TOTAL_ записей'\n            noentries: 'Нет записей для просмотра'\n            filtering: 'фильтрация от _MAX_ записей'\n            menu: 'Отобразить _MENU_ записи'\n        label:\n            search: Поиск\n            filter: Фильтр\n            processing: Обработка...\n            last: Последняя\n            next: Следующ.\n            first: Первая\n            previous: Предыдущ.\n            norecords: 'Не выбрана ни одна из записей'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.sh.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: Naslov\nnewscoop.plugins_manager.installed_table.description: Opis\nnewscoop.plugins_manager.installed_table.enabled: Omogućeni\nnewscoop.plugins_manager.installed_table.version: Verzija\nnewscoop.plugins_manager.installed_table.license: Licenca\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: Akcije\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: Ukloni\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: Aplouduj\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: 'Prikazano _START_ do _END_ od _TOTAL_ unosa'\n            noentries: 'Nema unosa za prikaz'\n            filtering: '- filtriranje među _MAX_ zapisa'\n            menu: 'Prikaži _MENU_ zapise'\n        label:\n            search: Traži\n            filter: Filter\n            processing: Obrađujem...\n            last: Poslednji\n            next: Sledeći\n            first: Prvi\n            previous: Prethodni\n            norecords: 'Nema zapisa'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.sq.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: null\nnewscoop.plugins_manager.installed_table.description: null\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: null\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: null\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: null\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: null\n            filter: null\n            processing: null\n            last: null\n            next: null\n            first: null\n            previous: null\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.sr.yml",
    "content": "newscoop.plugins_manager.manager: 'Управљање додацима'\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: 'Јавни додаци'\nnewscoop.plugins_manager.private_plugins: 'Приватни додаци'\nnewscoop.plugins_manager.install.public: 'Инсталирај нови додатак'\nnewscoop.plugins_manager.installed_table.name: Наслов\nnewscoop.plugins_manager.installed_table.description: Опис\nnewscoop.plugins_manager.installed_table.enabled: Омогућени\nnewscoop.plugins_manager.installed_table.version: Верзија\nnewscoop.plugins_manager.installed_table.license: Лиценца\nnewscoop.plugins_manager.installed_table.installed_at: 'Инсталирано овде'\nnewscoop.plugins_manager.installed_table.updated_at: 'Измењено овде'\nnewscoop.plugins_manager.installed_table.actions: Акције\nnewscoop.plugins_manager.installed_table.update_plugin: Измени\nnewscoop.plugins_manager.installed_table.remove_plugin: Уклони\nnewscoop.plugins_manager.installed_table.install_plugin: Инсталирај\nnewscoop.plugins_manager.installed_table.plugin_installed: Инсталирано\nnewscoop.plugins_manager.upload.private: 'Аплодуј приватне додатке'\nnewscoop.plugins_manager.search_for_plugins: 'Претражи додатке'\nnewscoop.plugins_manager.form.package: 'Мора бити компресовано у zip фајл.'\nnewscoop.plugins_manager.form.submit: Аплоудуј\nnewscoop.plugins_manager.runcommand: 'Стартуј команду'\nnewscoop.plugins_manager.openterminal: 'Отвори терминал и стартуј команду'\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: 'Завршено. Затвори овај прозор и освежи страну.'\nnewscoop.plugins_manager.close: Затвори\nnewscoop.plugins_manager.update: 'Како да ажурирам овај додатак?'\nnewscoop.plugins_manager.install: 'Како да инсталирам овај додатак?'\nnewscoop.plugins_manager.remove: 'Како да обришем овај додатак?'\nnewscoop.plugins_manager.installed: 'Завршено. Освежи страну. Додатак би требало да се налази у листи инсталираних додатака.'\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: Преузето\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: 'На Линукс серверу ово можете решити следећим командама:'\nnewscoop:\n    datatable:\n        table:\n            info: 'Приказано _START_ до _END_ од _TOTAL_ уноса'\n            noentries: 'Нема уноса за приказ'\n            filtering: '- филтрирање међу _MAX_ записа'\n            menu: 'Прикажи _MENU_ записе'\n        label:\n            search: Тражи\n            filter: Филтер\n            processing: Обрађујем...\n            last: Последњи\n            next: Следећи\n            first: Први\n            previous: Претходни\n            norecords: 'Нема записа'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.sv.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: Namn\nnewscoop.plugins_manager.installed_table.description: Beskrivning\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: null\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: Handlingar\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: 'Ta bort'\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: Sök\n            filter: null\n            processing: null\n            last: Sista\n            next: Nästa\n            first: Första\n            previous: Föregående\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.tr.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: null\nnewscoop.plugins_manager.installed_table.description: null\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: null\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: null\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: null\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: null\n            filter: null\n            processing: null\n            last: null\n            next: null\n            first: null\n            previous: null\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.uk.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: Назва\nnewscoop.plugins_manager.installed_table.description: Опис\nnewscoop.plugins_manager.installed_table.enabled: Дозволено\nnewscoop.plugins_manager.installed_table.version: Версія\nnewscoop.plugins_manager.installed_table.license: Ліцензія\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: Дії\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: Видалити\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: Завантажувати\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: 'Показані від початку до кінця, від загального числа записів'\n            noentries: 'Немає записів для відображення'\n            filtering: 'фільтрація від _MAX_ записів'\n            menu: 'Показати _MENU_ записи'\n        label:\n            search: Пошук\n            filter: Фільтр\n            processing: Обробка...\n            last: Останнє\n            next: Наступне\n            first: Перше\n            previous: Попереднє\n            norecords: 'Немає записів'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.vi.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: null\nnewscoop.plugins_manager.installed_table.description: null\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: null\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: null\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: null\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: null\n            filter: null\n            processing: null\n            last: null\n            next: null\n            first: null\n            previous: null\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.zh.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: 名称\nnewscoop.plugins_manager.installed_table.description: 描述\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: 版本\nnewscoop.plugins_manager.installed_table.license: 许可证\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: null\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: null\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: 搜索\n            filter: null\n            processing: null\n            last: null\n            next: 下一个\n            first: null\n            previous: 上一个\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/plugins_manager.zh_TW.yml",
    "content": "newscoop.plugins_manager.manager: null\nnewscoop.plugins_manager.legacy_manager: null\nnewscoop.plugins_manager.public_plugins: null\nnewscoop.plugins_manager.private_plugins: null\nnewscoop.plugins_manager.install.public: null\nnewscoop.plugins_manager.installed_table.name: 名稱\nnewscoop.plugins_manager.installed_table.description: 描述\nnewscoop.plugins_manager.installed_table.enabled: null\nnewscoop.plugins_manager.installed_table.version: null\nnewscoop.plugins_manager.installed_table.license: null\nnewscoop.plugins_manager.installed_table.installed_at: null\nnewscoop.plugins_manager.installed_table.updated_at: null\nnewscoop.plugins_manager.installed_table.actions: null\nnewscoop.plugins_manager.installed_table.update_plugin: null\nnewscoop.plugins_manager.installed_table.remove_plugin: null\nnewscoop.plugins_manager.installed_table.install_plugin: null\nnewscoop.plugins_manager.installed_table.plugin_installed: null\nnewscoop.plugins_manager.upload.private: null\nnewscoop.plugins_manager.search_for_plugins: null\nnewscoop.plugins_manager.form.package: null\nnewscoop.plugins_manager.form.submit: null\nnewscoop.plugins_manager.runcommand: null\nnewscoop.plugins_manager.openterminal: null\nnewscoop.plugins_manager.installassets: null\nnewscoop.plugins_manager.done: null\nnewscoop.plugins_manager.close: null\nnewscoop.plugins_manager.update: null\nnewscoop.plugins_manager.install: null\nnewscoop.plugins_manager.remove: null\nnewscoop.plugins_manager.installed: null\nnewscoop.plugins_manager.clipboard: null\nnewscoop.plugins_manager.downloads: null\nnewscoop.plugins_manager.favers: null\nnewscoop.plugins_manager.private_plugins_not_writable: null\nnewscoop.plugins_manager.private_plugins_not_writable_commands: null\nnewscoop:\n    datatable:\n        table:\n            info: null\n            noentries: null\n            filtering: null\n            menu: null\n        label:\n            search: 搜索\n            filter: null\n            processing: null\n            last: null\n            next: 下一個\n            first: null\n            previous: 上一個\n            norecords: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.ar.yml",
    "content": "line: سطر\ntemplate: نموذج\n'Unknown error: $1': 'خطأ غير معروف: $1'\n'Unrecognized tag <em>$1</em>': 'علامة غير معترفة <em>$1</em>'\n'Unknown reference <em>$1</em>': 'مورد غير معروف <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'ملك غير صالح <em>$1</em> من موضوع <em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'قيمة غير صالحة <em>$1</em> من ملك <em>$2</em> من موضوع <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'متغير غير صالح <em>$1</em> في بيان <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'قيمة غير صالحة <em>$1</em> من متغير <em>$2</em> في بيان <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'متغير مفقود <em>$1</em> في بيان <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'عامل غير صالح <em>$1</em> من متغير <em>$2</em> في بيان <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': 'سمة غير صالحة <em>$1</em> في بيان <em>$2</em>، متغير  <em>$3</em>'\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': 'نموذج غير صالح <em>$1</em> محدد في قالب <em>$2</em>'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.az.yml",
    "content": "line: sətir\ntemplate: nümunə\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Tanınmayan <em>$1</em> teqi'\n'Unknown reference <em>$1</em>': 'Naməlum <em>$1</em> rəyi'\n'Invalid property <em>$1</em> of object <em>$2</em>': '<em>$2</em> obyektinə aid <em>$1</em> üçün səhv ünvan'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': '<em>$3</em> obyektinin <em>$2</em> ünvanına aid <em>$1</em> üçün səhv dəyər'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': '<em>$2</em> ifadəsinin <em>$1</em> səhv parametri'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': '<em>$3</em> ifadəsində <em>$2</em> parametrinin <em>$1</em> səhv dəyəri'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': '<em>$2</em> ifadəsində <em>$1</em> çatışmayan parametri'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': '<em>$3</em> ifadəsində <em>$2</em> parametrinin <em>$1</em> səhv operatoru'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': '<em>$3</em>parametri, <em>$2</em> ifadəsində <em>$1</em> səhv atributu'\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': '<em>$2</em> formasinda səciyyələnmiş <em>$1</em> səhv nümunəsi'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.be.yml",
    "content": "line: радок\ntemplate: шаблон\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Неапазнаны тэг <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Невядомы зварот <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Несапраўдная ўласцівасць <em>$1</em> абекта <em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Няслушнае значэнне <em>$1</em> уласцівасці <em>$2</em> абекта <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Няслушнае значэнне <em>$1</em> у сцвярджэнні <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Няслушнае значэнне <em>$1</em> параметру <em>$2</em> у выразе <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Прапушчаны параметр <em>$1</em> у выразе <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Няслушны аператар <em>$1</em> параметру <em>$2</em> у выразе <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': 'Няслушны  атрыбут <em>$1</em> у выразе <em>$2</em>, параметр <em>$3</em>'\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': 'Няслушны шаблон <em>$1</em> паказаны ў форме <em>$2</em>'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.bn.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': null\n'Unrecognized tag <em>$1</em>': null\n'Unknown reference <em>$1</em>': null\n'Invalid property <em>$1</em> of object <em>$2</em>': null\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': null\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Missing parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.cs.yml",
    "content": "line: linka\ntemplate: šablona\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Unrecognized tag <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Unknown reference <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Invalid property <em>$1</em> of object <em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Invalid parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Missing parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': 'Neplatná vlastnost <em>$1</em> ve výroku <em>$2</em>, <em>$3</em> parametr'\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': 'Neplatná šablona <em>$1</em> upřesněná ve <em>$2</em> form'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.da.yml",
    "content": "line: linje\ntemplate: skabelon\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Ukendt tag <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Ukendt reference <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Ugyldig egenskab <em>$1</em> for <em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Ugyldig værdi <em>$1</em> for egenskab <em>$2</em> for <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Ugyldig parameter <em>$1</em> i <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Ugyldig værdi <em>$1</em> for parameter <em>$2</em> i <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Manglende parameter <em>$1</em> i <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Ugyldig operator <em>$1</em> for parameter <em>$2</em> i <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': '<em>$1</em> er ugyldig i <em>$2</em>, <em>$3</em> parameter'\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': 'Ugyldig skabelon <em>$1</em> valgt i <em>$2</em>'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.de.yml",
    "content": "line: Linie\ntemplate: Template\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Unbekannter Tag <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Unbekannte Referenz <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Ungültige Eigenschaft <em>$1</em> von Objekt<em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Ungültiger Wert <em>$1</em> von Eigenschaft <em>$2</em> von Objekt <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Ungültige Parameter <em>$1</em> im Statement <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Ungültiger Wert <em>$1</em> von Parameter <em>$2</em> im Statement <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Fehlender Parameter <em>$1</em> im Statement <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Ungültiger Operator <em>$1</em> von Parameter <em>$2</em> im Statement <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': 'Ungültiges Attribut <em>$1</em> im Statement <em>$2</em>, <em>$3</em> Parameter'\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': 'Ungültige Template <em>$1</em> spezifiziert in <em>$2</em> Form'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.de_AT.yml",
    "content": "line: Linie\ntemplate: Template\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Unbekannter Tag <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Unbekannte Referenz <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Ungültige Eigenschaft <em>$1</em> von Objekt<em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Ungültiger Wert <em>$1</em> von Eigenschaft <em>$2</em> von Objekt <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Ungültige Parameter <em>$1</em> im Statement <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Ungültiger Wert <em>$1</em> von Parameter <em>$2</em> im Statement <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Fehlender Parameter <em>$1</em> im Statement <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Ungültiger Operator <em>$1</em> von Parameter <em>$2</em> im Statement <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': 'Ungültiges Attribut <em>$1</em> im Statement <em>$2</em>, <em>$3</em> Parameter'\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': 'Ungültige Template <em>$1</em> spezifiziert in <em>$2</em> Form'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.el.yml",
    "content": "line: σειρά\ntemplate: πρότυπο\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Άγνωστη ετικέτα <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Άγνωστη αναφορά <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Μη έγκυρη ιδιοκτησία <em>$1</em> αντικειμένου <em>$2</em> '\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Μη έγκυρη αξία <em>$1</em> ιδιοκτησίας <em>$2</em> αντικειμένου <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Μη έγκυρη παράμετρος <em>$1</em> στη δήλωση <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Μη έγκυρη αξία <em>$1</em> παραμέτρου <em>$2</em> στη δήλωση <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Ελλειπής παράμετρος <em>$1</em> στη δήλωση <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Μη έγκυρος χειριστής <em>$1</em> παραμέτρου <em>$2</em> στη δήλωση <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': 'Μη έγκυρη ιδιότητα <em>$1</em> στη δήλωση <em>$2</em>, παράμετρος <em>$3</em>'\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': 'Μη έγκυρο πρότυπο <em>$1</em> ορισμένο στη φόρμα <em>$2</em>'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.en.yml",
    "content": "line: line\ntemplate: template\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Unrecognized tag <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Unknown reference <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Invalid property <em>$1</em> of object <em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Invalid parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Missing parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': 'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter'\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': 'Invalid template <em>$1</em> specified in the <em>$2</em> form'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.en_GB.yml",
    "content": "line: line\ntemplate: template\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Unrecognized tag <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Unknown reference <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Invalid property <em>$1</em> of object <em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Invalid parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Missing parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': 'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter'\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': 'Invalid template <em>$1</em> specified in the <em>$2</em> form'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.es.yml",
    "content": "line: Línea.\ntemplate: Plantilla.\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Unrecognized tag <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Unknown reference <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Invalid property <em>$1</em> of object <em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Invalid parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Missing parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': 'Atributo inválido <em>$1</em> en la declaración <em>$2</em>, <em>$3</em> parámetro.'\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': 'Plantilla inválida <em>$1</em> especificada en la forma <em>$2</em>'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.es_AR.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': null\n'Unrecognized tag <em>$1</em>': null\n'Unknown reference <em>$1</em>': null\n'Invalid property <em>$1</em> of object <em>$2</em>': null\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': null\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Missing parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.fa.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': null\n'Unrecognized tag <em>$1</em>': null\n'Unknown reference <em>$1</em>': null\n'Invalid property <em>$1</em> of object <em>$2</em>': null\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': null\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Missing parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.fa_AF.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': null\n'Unrecognized tag <em>$1</em>': null\n'Unknown reference <em>$1</em>': null\n'Invalid property <em>$1</em> of object <em>$2</em>': null\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': null\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Missing parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.fr.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Unrecognized tag <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Unknown reference <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Invalid property <em>$1</em> of object <em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Invalid parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Missing parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.he.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': null\n'Unrecognized tag <em>$1</em>': null\n'Unknown reference <em>$1</em>': null\n'Invalid property <em>$1</em> of object <em>$2</em>': null\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': null\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Missing parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.hr.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Unrecognized tag <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Unknown reference <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Invalid property <em>$1</em> of object <em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Invalid parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Missing parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.hu.yml",
    "content": "line: null\ntemplate: sablon\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Felismerhetetlen <em>$1</em> címke'\n'Unknown reference <em>$1</em>': 'Ismeretlen <em>$1</em> hivatkozás'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Érvénytelen a/z <em>$1</em> tulajdonsága a/z <em>$2</em> objektumnak'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Érvénytelen a/z <em>$1</em> értéke a/z <em>$2</em> tulajdonságnak a/z <em>$3</em> objektumnak'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Érvénytelen a/z <em>$1</em> paramétere a/z <em>$2</em> utasításnak'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Érvénytelen a/z <em>$1</em> értéke a/z <em>$2</em> paraméternek a/z <em>$3</em> utasításban'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Hiányzik a/z <em>$1</em> paraméter a/z <em>$2</em> utasításban'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Érvénytelen a/z <em>$1</em> műveleti jele a/z <em>$2</em> paraméternek a/z <em>$3</em> utasításban'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': 'Érvénytelen <em>$1</em> attribútum a/z <em>$2</em> utasításban, <em>$3</em> paraméter'\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': 'Érvénytelen <em>$1</em> sablon van megadva a/z <em>$2</em> űrlapban'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.hy.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': null\n'Unrecognized tag <em>$1</em>': null\n'Unknown reference <em>$1</em>': null\n'Invalid property <em>$1</em> of object <em>$2</em>': null\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': null\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Missing parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.hy_AM.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': null\n'Unrecognized tag <em>$1</em>': null\n'Unknown reference <em>$1</em>': null\n'Invalid property <em>$1</em> of object <em>$2</em>': null\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': null\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Missing parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.id.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': null\n'Unrecognized tag <em>$1</em>': null\n'Unknown reference <em>$1</em>': null\n'Invalid property <em>$1</em> of object <em>$2</em>': null\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': null\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Missing parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.it.yml",
    "content": "line: linea\ntemplate: template\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Tag sconosciuto <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Riferimento sconosciuto <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Proprietà <em>$1</em> non valida per loggetto <em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Valore non valido <em>$1</em> della proprietà <em>$2</em> delloggetto <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Parametro non valido <em>$1</em> nella dichiarazione <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Valore non valido <em>$1</em> del parametro <em>$2</em> nella dichiarazione<em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Parametro mancante <em>$1</em> nella dichiarazione <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Operatore non valido <em>$1</em> del parametro <em>$2</em> nella dichiarazione <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': 'Attributo non valido <em>$1</em> nella dichiarazione <em>$2</em>,parametro <em>$3</em> '\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': 'Template non valido <em>$1</em> specificato nel form <em>$2</em>'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.ka.yml",
    "content": "line: ხაზი\ntemplate: შაბლონი\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'ამოუცნობი ტეგი <em>$1</em>'\n'Unknown reference <em>$1</em>': 'უცნობი მითითება <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': '<em>$2</em> ობიექტის არასწორი თვისება <em>$1</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': '<em>$3</em> ობიექტის <em>$2</em> პარამეტრის არასწორი მნიშვნელობა <em>$1</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': '<em>$2</em> წინადადების არასწორი პარამეტრი <em>$1</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': '<em>$3</em> ბრძანების  <em>$2</em> პარამეტრის არასწორი მნიშვნელობა <em>$1</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': '<em>$2</em> ბრძანების ნაკლული <em>$1</em> პარამეტრი '\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': '<em>$3</em> ბრძანების <em>$2</em> პარამეტრის არასწორი ოპერატორი <em>$1</em> '\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': 'ბრძანება <em>$2</em>, <em>$3</em> პარამეტრის არასწორი ატრიბუტი  <em>$1</em>'\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': 'არასწორი შაბლონი <em>$1</em> ნახსენები <em>$2</em> ფორმაში'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.ko.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Unrecognized tag <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Unknown reference <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Invalid property <em>$1</em> of object <em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Invalid parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Missing parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.ku.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': null\n'Unrecognized tag <em>$1</em>': null\n'Unknown reference <em>$1</em>': null\n'Invalid property <em>$1</em> of object <em>$2</em>': null\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': null\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Missing parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.lv.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': null\n'Unrecognized tag <em>$1</em>': null\n'Unknown reference <em>$1</em>': null\n'Invalid property <em>$1</em> of object <em>$2</em>': null\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': null\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Missing parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.mr.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': null\n'Unrecognized tag <em>$1</em>': null\n'Unknown reference <em>$1</em>': null\n'Invalid property <em>$1</em> of object <em>$2</em>': null\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': null\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Missing parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.nb_NO.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': null\n'Unrecognized tag <em>$1</em>': null\n'Unknown reference <em>$1</em>': null\n'Invalid property <em>$1</em> of object <em>$2</em>': null\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': null\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Missing parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.nl.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Unrecognized tag <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Unknown reference <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Invalid property <em>$1</em> of object <em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Invalid parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Missing parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.pa.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': null\n'Unrecognized tag <em>$1</em>': null\n'Unknown reference <em>$1</em>': null\n'Invalid property <em>$1</em> of object <em>$2</em>': null\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': null\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Missing parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.pl.yml",
    "content": "line: linia\ntemplate: szablon\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Nierozpoznany tag <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Nierozpoznane odwołanie <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Niewłaściwa zmienna <em>$1</em> obiektu <em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Niewłaściwa wartość <em>$1</em> zmiennej <em>$2</em> obiektu <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Niewłaściwy parametr <em>$1</em> w <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Niewłaściwa wartość <em>$1</em> parametru <em>$2</em> w <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Brakujący parametr <em>$1</em> w <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Niewłaściwy operator <em>$1</em> parametru <em>$2</em> w <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': 'Niewłaściwy atrybut <em>$1</em> w <em>$2</em> parametru<em>$3</em>'\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': 'Niewłaściwy szablon <em>$1</em> określony w <em>$2</em> formularzu'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.ps.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': null\n'Unrecognized tag <em>$1</em>': null\n'Unknown reference <em>$1</em>': null\n'Invalid property <em>$1</em> of object <em>$2</em>': null\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': null\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Missing parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.pt.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Unrecognized tag <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Unknown reference <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Invalid property <em>$1</em> of object <em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Invalid parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Missing parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.pt_BR.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Unrecognized tag <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Unknown reference <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Invalid property <em>$1</em> of object <em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Invalid parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Missing parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.ro.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Unrecognized tag <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Unknown reference <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Invalid property <em>$1</em> of object <em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Invalid parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Missing parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.ru.yml",
    "content": "line: строка\ntemplate: шаблон\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Неопознанный тэг <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Неизвестное обращение <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Недействительное свойство <em>$1</em> объекта<em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Неверное значение <em>$1</em> свойства <em>$2</em> объекта <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Неверное значение <em>$1</em> в утверждении<em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Неверное значение <em>$1</em> параметра <em>$2</em> в предложении <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Пропущенный параметр <em>$1</em> в выражении <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Неверный оператор <em>$1</em> параметра <em>$2</em> в выражении <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': 'Неверный  аттрибут <em>$1</em> параметра <em>$2</em>, <em>$3</em> параметр'\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': 'Неправильный шаблон <em>$1</em> определенный в <em>$2</em> форме'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.sh.yml",
    "content": "line: linija\ntemplate: šablon\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Unrecognized tag <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Unknown reference <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Invalid property <em>$1</em> of object <em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Invalid parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Missing parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': 'Pogrešan atribut <em>$1</em> u komandi <em>$2</em<em>$3</em> parametar'\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': 'Pogrešan šablon <em>$1</em> naveden u formi <em>$2</em>'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.sq.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': null\n'Unrecognized tag <em>$1</em>': null\n'Unknown reference <em>$1</em>': null\n'Invalid property <em>$1</em> of object <em>$2</em>': null\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': null\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Missing parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.sr.yml",
    "content": "line: линија\ntemplate: шаблон\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Unrecognized tag <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Unknown reference <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Invalid property <em>$1</em> of object <em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Invalid parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Missing parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': 'Погрешан атрибут <em>$1</em>у команди <em>$2</em<em>$3</em> параметар'\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': 'Погрешан шаблон <em>$1</em> наведен у форми <em>$2</em>'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.sv.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Unrecognized tag <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Unknown reference <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Invalid property <em>$1</em> of object <em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Invalid parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Missing parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.tr.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': null\n'Unrecognized tag <em>$1</em>': null\n'Unknown reference <em>$1</em>': null\n'Invalid property <em>$1</em> of object <em>$2</em>': null\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': null\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Missing parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.uk.yml",
    "content": "line: рядок\ntemplate: шаблон\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Невизначені теги <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Невідоме посилання <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Невірна властивіть <em>$1</em>  об’єкту<em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Невірне значення <em>$1</em> властивості <em>$2</em> об’єкту <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Невірний параметр <em>$1</em> у оголошенні <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Невірне значення <em>$1</em> параметрів <em>$2</em> у оголошенні <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Відсутній параметр  <em>$1</em> у оголошенні <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Невірний оператор <em>$1</em> у параметрах <em>$2</em> у оголошенні <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': 'Невірний атрибут <em>$1</em> у оголошенні <em>$2</em>, параметру <em>$3</em>'\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': 'Невірний шаблон <em>$1</em> зазначений у формі <em>$2</em>'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.vi.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': null\n'Unrecognized tag <em>$1</em>': null\n'Unknown reference <em>$1</em>': null\n'Invalid property <em>$1</em> of object <em>$2</em>': null\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': null\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Missing parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.zh.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': $1\n'Unrecognized tag <em>$1</em>': 'Unrecognized tag <em>$1</em>'\n'Unknown reference <em>$1</em>': 'Unknown reference <em>$1</em>'\n'Invalid property <em>$1</em> of object <em>$2</em>': 'Invalid property <em>$1</em> of object <em>$2</em>'\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': 'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>'\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': 'Invalid parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Missing parameter <em>$1</em> in statement <em>$2</em>': 'Missing parameter <em>$1</em> in statement <em>$2</em>'\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': 'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>'\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/preview.zh_TW.yml",
    "content": "line: null\ntemplate: null\n'Unknown error: $1': null\n'Unrecognized tag <em>$1</em>': null\n'Unknown reference <em>$1</em>': null\n'Invalid property <em>$1</em> of object <em>$2</em>': null\n'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>': null\n'Invalid parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Missing parameter <em>$1</em> in statement <em>$2</em>': null\n'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>': null\n'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter': null\n'Invalid template <em>$1</em> specified in the <em>$2</em> form': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.ar.yml",
    "content": "'Make sure to enter the Moderator Address below': 'يرجى التحقق أن تدخل الـ Moderator Address أدناه'\n'click to see issues': 'أنقر الرأي الأعداد'\n'Moderator Address': 'عنوان الوسيط'\n'From Address': 'من العنوان'\n'Use CAPTCHA to prevent spam?': 'استخدم كلمة التحقق من أجل منع الرسائل غير المرغوبة؟'\n'Public allowed to comment?': 'هل يسمح للجمهور أن يعلق؟'\n'Enable spam blocking?': 'فعل منع الرسائل غير المرغوبة؟'\n'The subscription settings for $1 could not be added.': 'لم يضف إعدادات الاشتراك لـ $1'\n'The publication name you specified conflicts with publication $1.': 'يتعارض اسم المنشور الذي حددته مع المنشور $1.'\n'The publication alias you specified conflicts with publication $1.': 'يتعارض الاسم المستعار للمنشور الذي حددته مع المنشور $1.'\n'Subscription defaults': 'كيفية الإشتراك'\n'Subscription Settings by Country': 'إعدادات الإشتراك من خلال البلد'\n'Set subscription settings for a country': 'عين إعدادات الإشتراك لبلد'\n'Set subscription settings by country': 'عين إعدادات الإشتراك من خلال البلد'\n'Default time periods:': 'فترات افتراضية من الوقت.'\n'Country subscription settings updated.': 'تم تحديث إعدادات الاشتراك للبلد'\n'Country subscription settings deleted.': 'تم حذف إعدادات الاشتراك للبلد'\n'Change country subscription settings': 'غير إعدادات الاشتراك للبلد'\n'Are you sure you want to delete the subscription settings for $1?': 'هل انت متأكد أنك تريد حذف اعدادات الاشتراك لـ $1؟'\n'Publication updated': 'تم تحديث المنشور'\n'Subscriber comments moderated?': 'هل تعليقات المشترك مشرف عليها؟'\n'Public comments moderated?': 'هل تعليقات عامة مشرف عليها؟'\n'Comments enabled?': 'تم تفعيل التعليقات؟'\n'Comments enabled': 'تم تفعيل التعليقات'\n'Article comments default to enabled?': 'تعليقات المقال المعينة افتراضياً؟'\n'trial subscription': 'اشتراك تجريبي'\n'paid subscription': 'اشتراك مدفوع'\n'time units': 'وحدات الوقت'\n'one language': 'لغة واحدة'\n'all languages': 'كل لغات'\n'Trial subscriptions': 'اشتراكات تجريبية'\n'Time unit cost per one section': 'كلفة وحدة الوقت لكل قسم'\n'Paid subscriptions': 'اشتراكات مدفوعة'\n'Default time period': 'فترة افتراضية من الوقت'\n'Go To Issues': 'إذهب الى الأعداد'\n'Delete publication $1': 'إحذف المنشور $1'\n'No publications.': 'لا منشورات'\n'Default Site Alias': 'اسم المستعار الافتراضي للموقع'\n'URL Type': 'نوع من عنوان الرابط'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'البلد<BR><SMALL>(أنقر لتعديل)</SMALL>'\n'Delete alias $1': 'إحذف الاسم المستعار $1'\n'Configure publication': 'إعداد المنشور'\n'You do not have the right to edit publication information.': 'ليس لديك الحق في تعديل معلومات المنشور'\n'General attributes': 'عناصر عامة'\n'You do not have the right to change publication information.': 'ليس لديك الحق في تغيير معلومات المنشور'\n'The publication information could not be updated.': 'لم تحدث معلومات المنشور.'\n'You do not have the right to delete publications.': 'ليس لديك الحق في حذف منشورات.'\n'Are you sure you want to delete the publication $1?': 'هل أنت متأكد أنك تريد حذف المنشور $1؟'\n'Deleting publication': 'قيد حذف المنشور'\n'There are $1 subscription(s) left.': 'تبقى $1 اشتراكات.'\n'The publication $1 could not be deleted.': 'لم يحذف المنشور $1.'\n'The publication could not be added.': 'لم يضف المنشور.'\n'You do not have the right to manage publications.': 'ليس لديك الحق في إدارة منشورات.'\n'You must select a country.': 'يجب عليك أن تختار بلداً.'\n'Add new alias': 'أضف اسم مستعار جديد'\n'Alias (click to edit)': 'اسم مستعار - أنقر لتعديل'\n'Edit aliases': 'عدل أسماء مستعارة'\n'Publication Aliases': 'أسماء المنشور المستعارة'\n'Adding new alias': 'قيد إضافة اسم مستعار جديد'\n'The site alias $1 could not be added.': 'لم يضف الاسم المستعار $1 من الموقع.'\n'Another alias with the same name exists already.': 'يوجد مسبقا اسم مستعار يحمل الاسم نفسه'\n'Edit alias': 'عدل الاسم المستعار'\n'Editing alias': 'قيد تعديل الاسم المستعار'\n'The site alias $1 could not be modified.': 'لم يتم تعديل الاسم المستعار للموقع $1.'\n'Are you sure you want to delete the alias $1?': 'هل انت متأكد أنك تريد حذف الاسم المستعار $1'\n'Deleting alias': 'قيد حذف الاسم المستعار'\n'The alias $1 could not be deleted.': 'لم يحذف الاسم المستعار $1.'\n'$1 is the default publication alias, it can not be deleted.': '$1 هو اسم المنشور المستعار الافتراضي، لا يمكن حذفه.'\n'You do not have the right to add publications.': 'ليس لديك الحق في إضاقة منشورات.'\n'There are $1 issue(s) left.': 'تبقى $1 أعداد.'\n'Time Unit': 'وحدة الوقت'\nCurrency: العملة\n'Edit languages': 'عدل اللغات'\n'Search engine optimization': 'استمثال محرك البحث'\n'Article title': 'عنوان المقال'\n'Article keywords': 'كلمات المقال الدالة '\n'Article topics': 'موضوعات المقال'\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.az.yml",
    "content": "'Make sure to enter the Moderator Address below': 'İdarəçinin Ünvanını aşağıda qeyd etdiyinə əmin ol'\n'click to see issues': 'məsələlərə baxmaq üçün kliklə'\n'Moderator Address': 'İdarəçinin Ünvanı'\n'From Address': 'Bu Ünvandan'\n'Use CAPTCHA to prevent spam?': 'Spamın qarşısını almaq üçün CAPTCHA istifadə edilsin?'\n'Public allowed to comment?': 'Şərh yazmağa hamının icazəsi var?'\n'Enable spam blocking?': 'Spam kilidləməsini aktivləşdirirsən?'\n'The subscription settings for $1 could not be added.': '$1 üçün abunəlik parametrləri əlavə edilə bilmədi.'\n'The publication name you specified conflicts with publication $1.': 'Sənin xüsusi olaraq qeyd etdiyin nəşrlə $1 nəşri arasında uyğunsuzluq var.'\n'The publication alias you specified conflicts with publication $1.': 'Sənin xüsusi olaraq qeyd etdiyin nəşr ləqəbi $1 nəşri arasında uyğunsuzluq var.'\n'Subscription defaults': 'Abunəliyin ilkin göstəriciləri'\n'Subscription Settings by Country': 'Ölkə tərəfindən Abunəlik Parametrləri'\n'Set subscription settings for a country': 'Ölkə üçün abunəlik parametrlərini quraşdır'\n'Set subscription settings by country': 'Ölkəyə görə abunəlik parametrlərini quraşdır'\n'Default time periods:': 'Mövcud zaman kəsiyi:'\n'Country subscription settings updated.': 'Ölkə abunəlik parametrləri yeniləndi.'\n'Country subscription settings deleted.': 'Ölkə abunəlik parametrləri silindi.'\n'Change country subscription settings': 'Ölkə abunəlik parametrlərini dəyiş'\n'Are you sure you want to delete the subscription settings for $1?': '$1 üçün abunəlik parametrlərini silmək istədiyinə əminsən?'\n'Publication updated': 'Nəşr yeniləndi'\n'Subscriber comments moderated?': 'Abunə şərhləri yoxlanıb?'\n'Public comments moderated?': 'İctimai şərhləri yoxlanıb?'\n'Comments enabled?': 'Şərhə icazə var?'\n'Comments enabled': 'Şərhlər aktivləşdirildi'\n'Article comments default to enabled?': 'Məqalə şərhləri aktivləşdirilsin?'\n'trial subscription': 'sınaq abunəlik'\n'paid subscription': 'ödənişli abunəlik'\n'time units': 'zaman vahidləri'\n'one language': 'bir dil'\n'all languages': 'bütün dillər'\n'Trial subscriptions': 'Sınaq abunəlikləri'\n'Time unit cost per one section': 'Hər bölmə üçün zaman vahidi dəyəri'\n'Paid subscriptions': 'Ödənişli abunəliklər'\n'Default time period': 'Mövcud zaman kəsiyi'\n'Go To Issues': 'Məsələlərə Keç'\n'Delete publication $1': '$1 nəşrini sil'\n'No publications.': 'Nəşr yoxdur.'\n'Default Site Alias': 'Mövcud Sayt Ləqəbləri'\n'URL Type': 'URL Növü'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'Ölkə<BR><SMALL>(dəyişmək üçün kliklə)</SMALL>'\n'Delete alias $1': '$1 ləqəbini sil'\n'Configure publication': 'Nəşri konfiqurasiya et'\n'You do not have the right to edit publication information.': 'Nəşr məlumatını dəyişməyə ixtiyarın yoxdur.'\n'General attributes': 'Ümumi atributlar'\n'You do not have the right to change publication information.': 'Nəşr məlumatını dəyişməyə ixtiyarın yoxdur.'\n'The publication information could not be updated.': 'Nəşr məlumatı yenilənə bilmədi.'\n'You do not have the right to delete publications.': 'Nəşrləri silməyə ixtiyarın yoxdur.'\n'Are you sure you want to delete the publication $1?': '$1 nəşrini silmək istədiyinə əminsən?'\n'Deleting publication': 'Nəşrin silinməsi'\n'There are $1 subscription(s) left.': '$1 abunəlik(lər) hələ ki qalıb.'\n'The publication $1 could not be deleted.': '$1 nəşri silinə bilmədi.'\n'The publication could not be added.': 'Nəşr əlavə edilə bilmədi.'\n'You do not have the right to manage publications.': 'Nəşrlərə dəyişiklik etməyə ixtiyarın yoxdur.'\n'You must select a country.': 'Ölkə seçməlisən.'\n'Add new alias': 'Yeni ləqəb əlavə et'\n'Alias (click to edit)': 'Ləqəb (dəyişmək üçün kliklə)'\n'Edit aliases': 'Ləqəbləri dəyiş'\n'Publication Aliases': 'Nəşr Ləqəbləri'\n'Adding new alias': 'Yeni ləqəb əlavəsi'\n'The site alias $1 could not be added.': '$1 sayt ləqəbi əlavə edilə bilmədi.'\n'Another alias with the same name exists already.': 'Eyni adlı başqa ləqəb artıq mövcuddur.'\n'Edit alias': 'Ləqəbi dəyiş'\n'Editing alias': 'Ləqəbin dəyişilməsi'\n'The site alias $1 could not be modified.': '$1 sayt ləqəbi dəyişdirilə bilmədi.'\n'Are you sure you want to delete the alias $1?': '$1 ləqəbini silmək istədiyinə əminsən?'\n'Deleting alias': 'Ləqəbin silinməsi'\n'The alias $1 could not be deleted.': '$1 ləqəbi silinə bilmədi.'\n'$1 is the default publication alias, it can not be deleted.': '$1 ilkin nəşr ləqəbidir, bu silinə bilməz.'\n'You do not have the right to add publications.': 'Nəşr əlavə etməyə ixtiyarın yoxdur.'\n'There are $1 issue(s) left.': 'Geriyə $1 məsələ(lər) qalıb.'\n'Time Unit': 'Zaman Vahidi'\nCurrency: Valyuta\n'Edit languages': 'Dilləri dəyiş'\n'Search engine optimization': 'Axtarış sistemlərinin optimizasiyası'\n'Article title': 'Məqalə başlığı'\n'Article keywords': 'Məqalənin açar sözləri'\n'Article topics': 'Məqalə başlıqları'\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.be.yml",
    "content": "'Make sure to enter the Moderator Address below': 'Пераканайцеся, што ўведзены Адрас мадэратара'\n'click to see issues': 'клікніце для прагляду выпуску'\n'Moderator Address': 'Адрас мадэратара'\n'From Address': Ад\n'Use CAPTCHA to prevent spam?': 'Ці выкарыстаць CAPTCHA  для прадухіленьня  спаму?'\n'Public allowed to comment?': 'Агульнадаступна для камэнтараваньня?'\n'Enable spam blocking?': 'Уключыць блякаваньне спаму?'\n'The subscription settings for $1 could not be added.': 'Наладкі падпiскі дзя $1 ня могуць быць даданыя.'\n'The publication name you specified conflicts with publication $1.': 'Адзначаная назва выданьня канфлiктуе з выданьнем $1.'\n'The publication alias you specified conflicts with publication $1.': 'Азначаны сынонім выданьня канфлiктуе з выданьнем $1.'\n'Subscription defaults': 'Змаўчаньні для падпiскі'\n'Subscription Settings by Country': 'Устаноўкі падпiскі па краiне'\n'Set subscription settings for a country': 'Устанавіць наладкі падпiскі для краiны'\n'Set subscription settings by country': 'Устанавіць наладкі падпiскі па краiнах'\n'Default time periods:': 'Пэрыяды часу па змаўчаньні:'\n'Country subscription settings updated.': 'Наладкі падпiскі для краiны абноўленыя.'\n'Country subscription settings deleted.': 'Наладкі падпiскі для краiны выдаленыя.'\n'Change country subscription settings': 'Зьмянiць наладкі падпiскі для краiны'\n'Are you sure you want to delete the subscription settings for $1?': 'Цi Вы ўпэўнены, што хочаце выдалiць наладкм падпiскі для $1?'\n'Publication updated': 'Выданьне абноўленае'\n'Subscriber comments moderated?': 'Мадэраваць камэнтары карыстальнiка?'\n'Public comments moderated?': 'Мадэраваць камэнтары старонніх?'\n'Comments enabled?': 'Камэнтары дазволены?'\n'Comments enabled': 'Камэнтары дазволены'\n'Article comments default to enabled?': 'Дазволiць па змаўчаньні камэнтары да артыкулаў?'\n'trial subscription': 'пробная падпiска'\n'paid subscription': 'платная падпiска'\n'time units': 'адзінка часу'\n'one language': 'адна мова'\n'all languages': 'усе мовы'\n'Trial subscriptions': 'Пробныя падпiскі'\n'Time unit cost per one section': 'Кошт адзінкi часу за адзiн артыкул'\n'Paid subscriptions': 'Платныя падпiскі'\n'Default time period': 'Пэрыяд  часу па змаўчаньні'\n'Go To Issues': 'Перайсьцi да выпускаў'\n'Delete publication $1': 'Выдалiць выданьне $1'\n'No publications.': 'Няма выданьняў.'\n'Default Site Alias': 'Сынонім сайту па змаўчаньні'\n'URL Type': 'Тып URL'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'Краiна<BR><SMALL>(нацiсьнiце для праўкi)</SMALL> '\n'Delete alias $1': 'Выдалiць запiс $1'\n'Configure publication': 'Канфiгураваньне выданьня'\n'You do not have the right to edit publication information.': 'Вы ня маеце права доступу для рэдагаваньня iнфармацыi выданьня.'\n'General attributes': 'Агульныя атрыбуты'\n'You do not have the right to change publication information.': 'Вы ня маеце права доступу для зьмяненьня iнфармацыi ў выданьнi.'\n'The publication information could not be updated.': 'Не ўдалося абнавiць iнфармацыю выданьня.'\n'You do not have the right to delete publications.': 'Вы ня маеце права доступу для выдаленьня выданьня.'\n'Are you sure you want to delete the publication $1?': 'Цi Вы ўпэўнены, што хочаце выдалiць выданьне $1?'\n'Deleting publication': 'Выдаленьне выданьня'\n'There are $1 subscription(s) left.': 'Засталося падпiсанняў: $1.'\n'The publication $1 could not be deleted.': 'Не ўдалося выдалiць выданьне $1.'\n'The publication could not be added.': 'Не ўдалося дадаць выданьне.'\n'You do not have the right to manage publications.': 'Вы ня маеце правоў доступу для кiраваньня выданьнямі'\n'You must select a country.': 'Вы павiнны выбраць краiну.'\n'Add new alias': 'Дадаць новы псэўданiм'\n'Alias (click to edit)': 'Псэўданiмы (нацiсьнiце для праўкi)'\n'Edit aliases': 'Праўка псэўданiмаў'\n'Publication Aliases': 'Псэўданiмы выданьняў'\n'Adding new alias': 'Дадаваньне новых псэўданiмаў'\n'The site alias $1 could not be added.': 'Псэўданiм сайту $1 ня можа быць даданы.'\n'Another alias with the same name exists already.': 'Псэўданiм з такiм iмем ужо iснуе.'\n'Edit alias': 'Правiць псэўданiм'\n'Editing alias': 'Рэдагаваньне псэўданiма'\n'The site alias $1 could not be modified.': 'Псэўданiм сайту $1 ня можа быць зменены.'\n'Are you sure you want to delete the alias $1?': 'Цi Вы ўпэўнены, што хочаце выдалiць псэўданiм $1?'\n'Deleting alias': 'Выдаленьне псэўданiму'\n'The alias $1 could not be deleted.': 'Псэўданiм $1 ня можа быць зьменены.'\n'$1 is the default publication alias, it can not be deleted.': '$1 - гэта псэўданiм выданьня па змаўчаньні, ён ня можа быць выдалены.'\n'You do not have the right to add publications.': 'Вы ня маеце права  дадаваць новае выданне.'\n'There are $1 issue(s) left.': 'Засталося выпускаў: $1'\n'Time Unit': 'Адзiнка часу'\nCurrency: Валюта\n'Edit languages': 'Рэдагаваць мовы'\n'Search engine optimization': 'Аптымізацыя для пошукавых сістэм'\n'Article title': 'Назва артыкула'\n'Article keywords': 'Ключавыя словы артыкула'\n'Article topics': 'Тэма артыкула'\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.bn.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': null\n'paid subscription': null\n'time units': null\n'one language': null\n'all languages': null\n'Trial subscriptions': null\n'Time unit cost per one section': null\n'Paid subscriptions': null\n'Default time period': null\n'Go To Issues': null\n'Delete publication $1': null\n'No publications.': null\n'Default Site Alias': null\n'URL Type': null\n'Country<BR><SMALL>(click to edit)</SMALL>': null\n'Delete alias $1': null\n'Configure publication': null\n'You do not have the right to edit publication information.': null\n'General attributes': null\n'You do not have the right to change publication information.': null\n'The publication information could not be updated.': null\n'You do not have the right to delete publications.': null\n'Are you sure you want to delete the publication $1?': null\n'Deleting publication': null\n'There are $1 subscription(s) left.': null\n'The publication $1 could not be deleted.': null\n'The publication could not be added.': null\n'You do not have the right to manage publications.': null\n'You must select a country.': null\n'Add new alias': null\n'Alias (click to edit)': null\n'Edit aliases': null\n'Publication Aliases': null\n'Adding new alias': null\n'The site alias $1 could not be added.': null\n'Another alias with the same name exists already.': null\n'Edit alias': null\n'Editing alias': null\n'The site alias $1 could not be modified.': null\n'Are you sure you want to delete the alias $1?': null\n'Deleting alias': null\n'The alias $1 could not be deleted.': null\n'$1 is the default publication alias, it can not be deleted.': null\n'You do not have the right to add publications.': null\n'There are $1 issue(s) left.': null\n'Time Unit': null\nCurrency: null\n'Edit languages': null\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.cs.yml",
    "content": "'Make sure to enter the Moderator Address below': 'Ujistěte se, že jste zadali níže uvedenou Adresu Moderátora'\n'click to see issues': 'klikněte pro zobrazení vydání'\n'Moderator Address': 'Adresa Moderátora'\n'From Address': 'Z Adresy'\n'Use CAPTCHA to prevent spam?': 'Použít CAPTCHA pro prevenci spamu?'\n'Public allowed to comment?': 'Povolit veřejnosti komentáře?'\n'Enable spam blocking?': 'Zapnout blokování spamu?'\n'The subscription settings for $1 could not be added.': 'Nastavení předplatného pro $1 nebylo přidáno.'\n'The publication name you specified conflicts with publication $1.': 'Zadaný název publikace je v rozporu s publikací $1.'\n'The publication alias you specified conflicts with publication $1.': 'Zadaný alias publikace je v rozporu s publikací $1.'\n'Subscription defaults': 'Defaultní předplatné'\n'Subscription Settings by Country': 'Nastavení předplatného podle Země.'\n'Set subscription settings for a country': 'Nastavit nastavení předplatného pro zemi.'\n'Set subscription settings by country': 'Nastavit nastavení předplatného podle země.'\n'Default time periods:': 'Defaultní časové intervaly:'\n'Country subscription settings updated.': 'Nastavení předplatného pro zemi aktualizováno.'\n'Country subscription settings deleted.': 'Nastavení předplatného pro zemi odstraněno.'\n'Change country subscription settings': 'Změnit nastavení předplatného pro zemi.'\n'Are you sure you want to delete the subscription settings for $1?': 'Jste si jistí, že chcete odstranit nastavení předplatného pro $1?'\n'Publication updated': 'Publikace aktualizována'\n'Subscriber comments moderated?': 'Moderovat předplatitelské komentáře?'\n'Public comments moderated?': 'Moderovat veřejné komentáře?'\n'Comments enabled?': 'Povolit komentáře?'\n'Comments enabled': 'Povolit komentáře|'\n'Article comments default to enabled?': 'Defaultně povolit komentáře článku?'\n'trial subscription': 'zkušební předplatné'\n'paid subscription': 'placené předplatné'\n'time units': 'časové jednotky'\n'one language': 'jeden jazyk'\n'all languages': 'všechny jazyky'\n'Trial subscriptions': 'Zkušební předplatné'\n'Time unit cost per one section': 'Cena časové jednotky za jednu rubriku'\n'Paid subscriptions': 'Placené předplatné'\n'Default time period': 'Základní časové období'\n'Go To Issues': 'Jít na Vydání'\n'Delete publication $1': 'Smazat publikaci $1'\n'No publications.': 'Žádné publikace'\n'Default Site Alias': 'Defaultní Alias Stránky'\n'URL Type': 'URL Typ'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'Země (klikněte pro editaci)'\n'Delete alias $1': 'Odstranit alias $1'\n'Configure publication': 'Konfigurovat publikaci'\n'You do not have the right to edit publication information.': 'Nemáte právo měnit informace o publikaci'\n'General attributes': 'Obecné vlastnosti'\n'You do not have the right to change publication information.': 'Nemáte práva změnit informace o publikaci'\n'The publication information could not be updated.': 'Publikace nemohla být obnovena'\n'You do not have the right to delete publications.': 'Nemáte právo mazat publikace'\n'Are you sure you want to delete the publication $1?': 'Určitě chcete smazat publikaci $1?'\n'Deleting publication': 'Mazání publikace'\n'There are $1 subscription(s) left.': 'Zbývá předplatné $1.'\n'The publication $1 could not be deleted.': 'Publikace $1 nemohla být smazána.'\n'The publication could not be added.': 'Publikace nemohla být přidána.'\n'You do not have the right to manage publications.': 'Nemáte právo spravovat publikace.'\n'You must select a country.': 'Vyberte zemi.'\n'Add new alias': 'Přidat nový alias'\n'Alias (click to edit)': 'Alias (klikněte pro editaci)'\n'Edit aliases': 'Editovat aliasy'\n'Publication Aliases': 'Aliasy Publikace'\n'Adding new alias': 'Přidává se nový alias'\n'The site alias $1 could not be added.': 'Nezdařilo se přidat alias stránky $1.'\n'Another alias with the same name exists already.': 'Alias se stejným názvem již existuje.'\n'Edit alias': 'Upravit alias'\n'Editing alias': 'Upravuje se alias'\n'The site alias $1 could not be modified.': 'Nezdařilo se upravit alias stránky $1.'\n'Are you sure you want to delete the alias $1?': 'Jste si jistí, že chcete odstranit alias $1?'\n'Deleting alias': 'Odstraňuje se alias'\n'The alias $1 could not be deleted.': 'Nezdařilo se odstranit alias $1.'\n'$1 is the default publication alias, it can not be deleted.': '$1 je defaultní alias publikace. Nelze jej odstranit.'\n'You do not have the right to add publications.': 'Nemáte oprávnění přidávat publikace.'\n'There are $1 issue(s) left.': 'Zbývá $1 vydání.'\n'Time Unit': 'Časová jednotka'\nCurrency: Měna\n'Edit languages': 'Upravit jazyky'\n'Search engine optimization': 'Vyhledat optimalizace enginu'\n'Article title': 'Titulek článku'\n'Article keywords': 'Klíčová slova článku'\n'Article topics': 'Témata článku'\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.da.yml",
    "content": "'Make sure to enter the Moderator Address below': 'Indtast moderators adresse'\n'click to see issues': 'klik for at se udgivelser'\n'Moderator Address': 'Moderator adresse'\n'From Address': 'Fra adresse'\n'Use CAPTCHA to prevent spam?': 'Brug CAPTCHA for at undgå spam?'\n'Public allowed to comment?': 'Tillad anonyme kommentarer?'\n'Enable spam blocking?': 'Brug spam blokering?'\n'The subscription settings for $1 could not be added.': 'Abonnements indstillingerne for $1 kunne ikke tilføjes.'\n'The publication name you specified conflicts with publication $1.': 'Publikationsnavnet bruges allerede af publikationen $1.'\n'The publication alias you specified conflicts with publication $1.': 'Det angivne publikations alias er i brug af publikationen $1.'\n'Subscription defaults': 'Abonnements standarder'\n'Subscription Settings by Country': 'Abonnements indstillinger efter land'\n'Set subscription settings for a country': 'Rediger abonnements indstillinger for et land'\n'Set subscription settings by country': 'Rediger abonnements indstillinger efter land'\n'Default time periods:': 'Standard perioder:'\n'Country subscription settings updated.': 'Abonnementsindstillinger for landet blev opdateret.'\n'Country subscription settings deleted.': 'Abonnementsindstillinger for landet blev slettet.'\n'Change country subscription settings': 'Rediger abonnementsindstillinger for landet.'\n'Are you sure you want to delete the subscription settings for $1?': 'Vil du slette abonnementsindstillingerne for $1?'\n'Publication updated': 'Publikation opdateret'\n'Subscriber comments moderated?': 'Kræv godkendelse af abonnenters kommentarer?'\n'Public comments moderated?': 'Kræv godkendelse af anonyme kommentarer?'\n'Comments enabled?': 'Slå kommentarer til?'\n'Comments enabled': 'Kommentarer slået til'\n'Article comments default to enabled?': 'Slå artikelkommentarer til som standard?'\n'trial subscription': 'prøve abonnement'\n'paid subscription': 'betalt abonnement'\n'time units': tidsenheder\n'one language': 'et sprog'\n'all languages': 'alle sprog'\n'Trial subscriptions': 'Prøve abonnementer'\n'Time unit cost per one section': 'Pris per sektion per tidsenhed'\n'Paid subscriptions': 'Betalte abonnementer'\n'Default time period': 'Standard periode'\n'Go To Issues': 'Gå til udgivelser'\n'Delete publication $1': 'Slet publikationen $1'\n'No publications.': 'Ingen publikationer.'\n'Default Site Alias': 'Standard alias'\n'URL Type': 'URL type'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'Land<BR><SMALL>(klik for at redigere)</SMALL>'\n'Delete alias $1': 'Slet alias $1'\n'Configure publication': 'Opsæt publikation'\n'You do not have the right to edit publication information.': 'Du har ikke rettigheder til at redigere publikationer.'\n'General attributes': 'Grundlæggende indstillinger'\n'You do not have the right to change publication information.': 'Du har ikke rettigheder til at redigere publikationer.'\n'The publication information could not be updated.': 'Publikationen kunne ikke opdateres.'\n'You do not have the right to delete publications.': 'Du har ikke rettigheder til at slette publikationer.'\n'Are you sure you want to delete the publication $1?': 'Vil du slette publikationen $1?'\n'Deleting publication': 'Sletter publikation'\n'There are $1 subscription(s) left.': 'Der er $1 abonnement(er) tilbage.'\n'The publication $1 could not be deleted.': 'Publikationen $1 kunne ikke slettes.'\n'The publication could not be added.': 'Publikationen kunne ikke tilføjes.'\n'You do not have the right to manage publications.': 'Du har ikke rettigheder til at administrere publikationer.'\n'You must select a country.': 'Vælg et land.'\n'Add new alias': 'Tilføj nyt alias'\n'Alias (click to edit)': 'Alias (klik for at redigere)'\n'Edit aliases': 'Rediger alias'\n'Publication Aliases': 'Publikations alias'\n'Adding new alias': 'Tilføjer alias'\n'The site alias $1 could not be added.': 'Hjemmeside aliaset $1 kunne ikke tilføjes.'\n'Another alias with the same name exists already.': 'Der eksisterer allerede et alias med samme navn.'\n'Edit alias': 'Rediger alias'\n'Editing alias': 'Redigerer alias'\n'The site alias $1 could not be modified.': 'Hjemmeside aliaset $1 kunne ikke ændres.'\n'Are you sure you want to delete the alias $1?': 'Vil du slette aliaset $1?'\n'Deleting alias': 'Sletter alias'\n'The alias $1 could not be deleted.': 'Aliaset $1 kunne ikke slettes.'\n'$1 is the default publication alias, it can not be deleted.': '$1 er publikationens standard alias. Det kan ikke slettes.'\n'You do not have the right to add publications.': 'Du har ikke rettigheder til at tilføje publikationer.'\n'There are $1 issue(s) left.': 'Der er $1 udgivelse(r) tilbage.'\n'Time Unit': Tidsenhed\nCurrency: Valuta\n'Edit languages': 'Rediger sprog'\n'Search engine optimization': 'Søgemaskine optimering'\n'Article title': 'Artikel titel'\n'Article keywords': 'Artikel nøgleord'\n'Article topics': 'Artikel emner'\npublications:\n    title:\n        list: 'Publikations liste'\n        edit: 'Rediger publikation'\n        add: 'Tilføj ny publikation'\n        remove: 'Fjern publikation'\n    no_publications: 'Ingen publikationer.'\n    general_settings: 'Generelle indstillinger'\n    comments_settings: 'Indstillinger for kommentarer'\n    seo_settings: 'Indstillinger for SEO'\n    front_page_theme_settings: null\n    publication_removed: 'Publikationen blev fjernet'\n    publication_saved: 'Ændringerne til publikationen blev gemt.'\n    remove:\n        cant_be_removed: 'Publikationen er ikke tom, så den kan ikke fjernes.'\n        can_be_removed: 'Publikationen er tom og kan fjernes.'\n        left_issues: 'Resterende udgivelser'\n        left_sections: 'Resterende sektioner'\n        left_articles: 'Resterende artikler'\n        show_issues: 'vis udgivelser'\n        before_removing: 'Publikationen skal være tom før du kan fjerne den.'\n        you_sure: 'Vil du fjerne publikationen'\n        remove: 'Fjern publikation'\n    buttons:\n        addNew: 'Tilføj ny publikation'\n        listPublications: 'Vis publikations liste'\n        listIssues: 'Vis publikationens udgivelser'\n    table:\n        number: Nummer\n        name: Navn\n        default_alias: 'Standard Alias'\n        default_language: 'Standard sprog'\n        comments_status: 'Kommentar status'\n        url_type: 'URL type'\n        configure: Indstillinger\n        remove: Fjern\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: 'Navn på publikation'\n            template_path: 'Skabelon sti'\n            short_names: 'Kort navn'\n            alias: 'Standard alias'\n            url_type: 'URL type'\n            seo: 'Artikel url stier'\n            seo_article_title: 'Artikel titel'\n            seo_article_keywords: 'Artikel nøgleord'\n            seo_article_topics: 'Artikel emner'\n            edit_aliases: 'Rediger alias'\n            edit_languages: 'Rediger sprog'\n            moderator_to: 'Moderator adresse'\n            moderator_from: 'Afsender adresse for moderator emails'\n            comments_enabled: 'Tillad kommentarer?'\n            public_comments_enabled: 'Tillad offentlige (anonyme) kommentarer?'\n            comments_article_default_enabled: 'Tillad kommentarer på artikler som standard?'\n            comments_subscribers_moderated: 'Skal registrerede brugeres kommentarer godkendes?'\n            comments_public_moderated: 'Skal offentlige (anonyme) kommentarer godkendes?'\n            comments_captcha_enabled: 'Brug captcha?'\n            comments_spam_blocking_enabled: null\n            meta_title: 'Publikationens titel'\n            meta_keywords: 'Publikationens nøgleord'\n            meta_description: 'Publikationens beskrivelse'\n    tip1: 'Indhold i Newscoop er organiseret i en hierarkisk struktur, baseret på avisers og magasiners traditionelle opbygning: Publikationer, Udgivelser, Sektioner og Artikler. Hver publikation består af udgivelser, hver udgivelse er delt op i sektioner, og hver sektion indeholder artikler.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.de.yml",
    "content": "'Make sure to enter the Moderator Address below': 'Überprüfen Sie, dass die Moderatoren-Adresse unten eingegeben ist.'\n'click to see issues': 'Klicken um Ausgaben anzuzeigen'\n'Moderator Address': Moderatoren-Adresse\n'From Address': Absender\n'Use CAPTCHA to prevent spam?': 'CAPTCHA nutzen um Spam zu verhindern?'\n'Public allowed to comment?': 'Öffentliche Kommentare erlaubt?'\n'Enable spam blocking?': 'Spam-Blocker aktivieren?'\n'The subscription settings for $1 could not be added.': 'Die Nutzungseinstellungen für $1 konnten nicht hinzugefügt werden.'\n'The publication name you specified conflicts with publication $1.': 'Der angegebene Publikationsname steht im Widerspruch zur Publikation $1.'\n'The publication alias you specified conflicts with publication $1.': 'Der angegebene Publikations-Alias steht im Widerspruch zur Publikation $1.'\n'Subscription defaults': Standardabonnements\n'Subscription Settings by Country': 'Abonnement-Einstellungen nach Ländern'\n'Set subscription settings for a country': 'Abonnement-Einstellungen für ein Land festlegen'\n'Set subscription settings by country': 'Abonnement-Einstellungen nach Ländern festlegen'\n'Default time periods:': 'Standard-Zeitraum:'\n'Country subscription settings updated.': 'Abonnement-Einstellungen Land aktualisiert.'\n'Country subscription settings deleted.': 'Abonnement-Einstellungen Land gelöscht.'\n'Change country subscription settings': 'Abonnement-Einstellungen Land ändern'\n'Are you sure you want to delete the subscription settings for $1?': 'Abonnement-Einstellungen für $1 wirklich löschen?'\n'Publication updated': 'Publikation aktualisiert'\n'Subscriber comments moderated?': 'Benutzerkommentare moderieren?'\n'Public comments moderated?': 'Öffentliche Kommentare moderieren?'\n'Comments enabled?': 'Kommentare aktiviert?'\n'Comments enabled': 'Kommentare aktiviert'\n'Article comments default to enabled?': 'Artikelkommentare standardmäßig aktivieren?'\n'trial subscription': Probe-Abonnement\n'paid subscription': 'Bezahltes Abonnement'\n'time units': Zeiteinheiten\n'one language': 'Eine Sprache'\n'all languages': 'Alle Sprachen'\n'Trial subscriptions': Probe-Abonnements\n'Time unit cost per one section': 'Kosten der Zeiteinheit für eine Rubrik'\n'Paid subscriptions': 'Bezahlte Abonnements'\n'Default time period': 'Voreinstellung des Zeitraumes'\n'Go To Issues': 'Gehe zu Ausgaben'\n'Delete publication $1': 'Publikation $1 löschen'\n'No publications.': 'Keine Publikationen'\n'Default Site Alias': Standard-Seitenalias\n'URL Type': 'URL Typ'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'Land<BR><SMALL>(zum Bearbeiten anklicken)</SMALL>'\n'Delete alias $1': 'Eintrag $1 löschen'\n'Configure publication': 'Publikation konfigurieren'\n'You do not have the right to edit publication information.': 'Keine Berechtigung Publikationsinformation zu bearbeiten.'\n'General attributes': 'Allgemeine Eigenschaften'\n'You do not have the right to change publication information.': 'Keine Berechtigung Publikationsinformation zu ändern.'\n'The publication information could not be updated.': 'Die Publikationsinformation konnte nicht aktualisiert werden.'\n'You do not have the right to delete publications.': 'Keine Berechtigung Publikationen zu löschen.'\n'Are you sure you want to delete the publication $1?': 'Sicher, dass Publikation $1 gelöscht werden soll?'\n'Deleting publication': 'Publikation wird gelöscht'\n'There are $1 subscription(s) left.': '$1 Abonnement(s) noch vorhanden'\n'The publication $1 could not be deleted.': 'Publikation $1 konnte nicht gelöscht werden'\n'The publication could not be added.': 'Publikation konnte nicht hinzugefügt werden.'\n'You do not have the right to manage publications.': 'Keine Berechtigung, Publikationen zu verwalten.'\n'You must select a country.': 'Es muss ein Land gewählt werden'\n'Add new alias': 'Neuen Alias hinzufügen'\n'Alias (click to edit)': 'Alias (anklicken zum Bearbeiten)'\n'Edit aliases': 'Aliase bearbeiten'\n'Publication Aliases': 'Aliase der Publikationen'\n'Adding new alias': 'Neuen Alias hinzufügen'\n'The site alias $1 could not be added.': 'Alias $1 für die Seite konnte nicht hinzugefügt werden.'\n'Another alias with the same name exists already.': 'Ein anderer Alias mit dem gleichen Namen existiert bereits.'\n'Edit alias': 'Alias bearbeiten'\n'Editing alias': 'Alias wird bearbeitet'\n'The site alias $1 could not be modified.': 'Der Alias $1 der Seite konnte nicht modifiziert werden.'\n'Are you sure you want to delete the alias $1?': 'Soll Alias $1 wirklich gelöscht werden?'\n'Deleting alias': 'Alias löschen'\n'The alias $1 could not be deleted.': 'Alias $1 konnte nicht gelöscht werden.'\n'$1 is the default publication alias, it can not be deleted.': '$1 ist der voreingestellte Alias der Publikation und kann nicht gelöscht werden.'\n'You do not have the right to add publications.': 'Keine Zugriffsrechte, um eine neue Publikation zu erstellen.'\n'There are $1 issue(s) left.': 'Es sind $1 Ausgaben übrig.'\n'Time Unit': Zeiteinheit\nCurrency: Währung\n'Edit languages': 'Sprachen bearbeiten'\n'Search engine optimization': Suchmaschinenoptimierung\n'Article title': Artikeltitel\n'Article keywords': Artikelschlagwörter\n'Article topics': Artikelthemen\npublications:\n    title:\n        list: 'Liste der Publikationen'\n        edit: 'Publikation bearbeiten'\n        add: 'Neue Publikation hinzufügen'\n        remove: 'Publikation entfernen'\n    no_publications: 'Keine Publikationen'\n    general_settings: 'Allgemeine Einstellungen'\n    comments_settings: 'Einstellungen für Kommentare'\n    seo_settings: 'Einstellungen für Suchmaschinenoptimierung'\n    front_page_theme_settings: 'Einstellungen der Startseiten-Designvorlage'\n    publication_removed: 'Die Publikation wurde entfernt.'\n    publication_saved: 'Die Änderungen an der Publikation wurden erfolgreich gespeichert.'\n    remove:\n        cant_be_removed: 'Die Publikation ist nicht leer und kann nicht entfernt werden.'\n        can_be_removed: 'Diese Publikation ist leer und kann entfernt werden.'\n        left_issues: 'Verbleibende Ausgaben'\n        left_sections: 'Verbleibende Rubriken'\n        left_articles: 'Verbleibende Artikel'\n        show_issues: 'Ausgaben anzeigen'\n        before_removing: 'Bevor die Publikation entfernt werden kann, müssen alle verbliebenen Elemente gelöscht oder verschoben werden. '\n        you_sure: 'Soll die Publikation wirklich entfernt werden?'\n        remove: 'Publikation entfernen'\n    buttons:\n        addNew: 'Neue Publikation hinzufügen'\n        listPublications: 'Publikationen auflisten'\n        listIssues: 'Zeige Ausgaben der Publikation'\n    table:\n        number: Nummer\n        name: Name\n        default_alias: 'Vorgegebener Alias'\n        default_language: Standardsprache\n        comments_status: Kommentarstatus\n        url_type: 'URL Typ'\n        configure: Konfiguration\n        remove: Entfernen\n    form_type:\n        label:\n            follow_current_issue_theme: 'Nutze die Designvorlage der aktuellen Ausgabe'\n            name: 'Name der Publikation'\n            template_path: Templatepfad\n            short_names: Kurzname\n            alias: 'Standard Alias'\n            url_type: 'URL Typ'\n            seo: 'Artikel URL Bestandteile'\n            seo_article_title: Artikeltitel\n            seo_article_keywords: Artikelschlagwörter\n            seo_article_topics: Artikelthemen\n            edit_aliases: 'Aliase bearbeiten'\n            edit_languages: 'Sprachen bearbeiten'\n            moderator_to: Moderatoren-Adresse\n            moderator_from: 'Adresse von der aus Moderations-E-Mails gesendet werden'\n            comments_enabled: 'Kommentare aktiviert?'\n            public_comments_enabled: 'Öffentliche (anonyme) Kommentare aktiviert?'\n            comments_article_default_enabled: 'Sind Kommentare für Artikel standardmäßig aktiviert?'\n            comments_subscribers_moderated: 'Werden Kommentare registrierter Nutzer moderiert?'\n            comments_public_moderated: 'Werden öffentliche (anonyme) Kommentare moderiert?'\n            comments_captcha_enabled: 'Captcha Spamschutz aktiviert?'\n            comments_spam_blocking_enabled: 'Kommentar Spam (internes System) Blocker aktiviert?'\n            meta_title: 'SEO-Titel der Publikation'\n            meta_keywords: 'SEO-Schlüsselwörter der Publikation'\n            meta_description: 'SEO-Beschreibung der Publikation'\n    tip1: 'Newscoop Inhalte werden in einer hierarchischen Struktur organisiert, welche der Tradition der Zeitungen und Magazine folgt: Publikationen, Ausgaben, Rubriken und Artikel. Jede Publikation besteht aus mehreren Ausgaben, jede Ausgabe beinhaltet mehrere Rubriken und jede Rubrik enthält eine Anzahl von Artikeln.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.de_AT.yml",
    "content": "'Make sure to enter the Moderator Address below': 'Überprüfen Sie, dass die Moderatoren-Adresse unten eingegeben ist.'\n'click to see issues': 'Klicken um Ausgaben anzuzeigen'\n'Moderator Address': Moderatoren-Adresse\n'From Address': Absender\n'Use CAPTCHA to prevent spam?': 'CAPTCHA nutzen um Spam zu verhindern?'\n'Public allowed to comment?': 'Öffentliche Kommentare erlaubt?'\n'Enable spam blocking?': 'Spam-Blocker aktivieren?'\n'The subscription settings for $1 could not be added.': 'Die Nutzungseinstellungen für $1 konnten nicht hinzugefügt werden.'\n'The publication name you specified conflicts with publication $1.': 'Der angegebene Publikationsname steht im Widerspruch zur Publikation $1.'\n'The publication alias you specified conflicts with publication $1.': 'Der angegebene Publikations-Alias steht im Widerspruch zur Publikation $1.'\n'Subscription defaults': Standardabonnements\n'Subscription Settings by Country': 'Abonnement-Einstellungen nach Ländern'\n'Set subscription settings for a country': 'Abonnement-Einstellungen für ein Land festlegen'\n'Set subscription settings by country': 'Abonnement-Einstellungen nach Ländern festlegen'\n'Default time periods:': 'Standard-Zeitraum:'\n'Country subscription settings updated.': 'Abonnement-Einstellungen Land aktualisiert.'\n'Country subscription settings deleted.': 'Abonnement-Einstellungen Land gelöscht.'\n'Change country subscription settings': 'Abonnement-Einstellungen Land ändern'\n'Are you sure you want to delete the subscription settings for $1?': 'Abonnement-Einstellungen für $1 wirklich löschen?'\n'Publication updated': 'Publikation aktualisiert'\n'Subscriber comments moderated?': 'Benutzerkommentare moderieren?'\n'Public comments moderated?': 'Öffentliche Kommentare moderieren?'\n'Comments enabled?': 'Kommentare aktiviert?'\n'Comments enabled': 'Kommentare aktiviert'\n'Article comments default to enabled?': 'Artikelkommentare standardmäßig aktivieren?'\n'trial subscription': Probe-Abonnement\n'paid subscription': 'Bezahltes Abonnement'\n'time units': Zeiteinheiten\n'one language': 'Eine Sprache'\n'all languages': 'Alle Sprachen'\n'Trial subscriptions': Probe-Abonnements\n'Time unit cost per one section': 'Kosten der Zeiteinheit für eine Rubrik'\n'Paid subscriptions': 'Bezahlte Abonnements'\n'Default time period': 'Voreinstellung des Zeitraumes'\n'Go To Issues': 'Gehe zu Ausgaben'\n'Delete publication $1': 'Publikation $1 löschen'\n'No publications.': 'Keine Publikationen'\n'Default Site Alias': Standard-Seitenalias\n'URL Type': 'URL Typ'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'Land<BR><SMALL>(zum Bearbeiten anklicken)</SMALL>'\n'Delete alias $1': 'Eintrag $1 löschen'\n'Configure publication': 'Publikation konfigurieren'\n'You do not have the right to edit publication information.': 'Keine Berechtigung Publikationsinformation zu bearbeiten.'\n'General attributes': 'Allgemeine Eigenschaften'\n'You do not have the right to change publication information.': 'Keine Berechtigung Publikationsinformation zu ändern.'\n'The publication information could not be updated.': 'Die Publikationsinformation konnte nicht aktualisiert werden.'\n'You do not have the right to delete publications.': 'Keine Berechtigung Publikationen zu löschen.'\n'Are you sure you want to delete the publication $1?': 'Sicher, dass Publikation $1 gelöscht werden soll?'\n'Deleting publication': 'Publikation wird gelöscht'\n'There are $1 subscription(s) left.': '$1 Abonnement(s) noch vorhanden'\n'The publication $1 could not be deleted.': 'Publikation $1 konnte nicht gelöscht werden'\n'The publication could not be added.': 'Publikation konnte nicht hinzugefügt werden.'\n'You do not have the right to manage publications.': 'Keine Berechtigung, Publikationen zu verwalten.'\n'You must select a country.': 'Es muss ein Land gewählt werden'\n'Add new alias': 'Neuen Alias hinzufügen'\n'Alias (click to edit)': 'Alias (anklicken zum Bearbeiten)'\n'Edit aliases': 'Aliase bearbeiten'\n'Publication Aliases': 'Aliase der Publikationen'\n'Adding new alias': 'Neuen Alias hinzufügen'\n'The site alias $1 could not be added.': 'Alias $1 für die Seite konnte nicht hinzugefügt werden.'\n'Another alias with the same name exists already.': 'Ein anderer Alias mit dem gleichen Namen existiert bereits.'\n'Edit alias': 'Alias bearbeiten'\n'Editing alias': 'Alias wird bearbeitet'\n'The site alias $1 could not be modified.': 'Der Alias $1 der Seite konnte nicht modifiziert werden.'\n'Are you sure you want to delete the alias $1?': 'Soll Alias $1 wirklich gelöscht werden?'\n'Deleting alias': 'Alias löschen'\n'The alias $1 could not be deleted.': 'Alias $1 konnte nicht gelöscht werden.'\n'$1 is the default publication alias, it can not be deleted.': '$1 ist der voreingestellte Alias der Publikation und kann nicht gelöscht werden.'\n'You do not have the right to add publications.': 'Keine Zugriffsrechte, um eine neue Publikation zu erstellen.'\n'There are $1 issue(s) left.': 'Es sind $1 Ausgaben übrig.'\n'Time Unit': Zeiteinheit\nCurrency: Währung\n'Edit languages': 'Sprachen bearbeiten'\n'Search engine optimization': Suchmaschinenoptimierung\n'Article title': Artikeltitel\n'Article keywords': Artikelschlagwörter\n'Article topics': Artikelthemen\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.el.yml",
    "content": "'Make sure to enter the Moderator Address below': 'Φροντίστε να εισάγετε παρακάτω την Διεύθυνση Συντονιστή '\n'click to see issues': 'Κάντε κλίκ για να δείτε να τεύχη'\n'Moderator Address': 'Διεύθυνση Διαχειριστή'\n'From Address': 'Από Διεύθυνση'\n'Use CAPTCHA to prevent spam?': 'Χρήση CAPTCHA για την πρόληψη ανεπιθύμητων email (spam);'\n'Public allowed to comment?': 'Επιτρέπεται ο σχολιασμός από το κοινό;'\n'Enable spam blocking?': 'Ενεργοποίηση μπλοκαρίσματος ανεπιθύμητων email (spam);'\n'The subscription settings for $1 could not be added.': 'Οι ρυθμίσεις συνδρομής για $1 δεν μπόρεσαν να προστεθούν.'\n'The publication name you specified conflicts with publication $1.': 'Το όνομα δημοσίευσης που καθορίσατε έρχεται σε σύγκρουση με την δημοσίευση $1.'\n'The publication alias you specified conflicts with publication $1.': 'Το ψευδώνυμο δημοσίευσης που καθορίσατε έρχεται σε σύγκρουση με την δημοσίευση $1.'\n'Subscription defaults': 'Συνδρομή προεπιλογών'\n'Subscription Settings by Country': 'Ρυθμίσεις Συνδρομής ανά Χώρα'\n'Set subscription settings for a country': 'Ορισμός ρυθμίσεων συνδρομών για μια χώρα'\n'Set subscription settings by country': 'Ορισμός ρυθμίσεων συνδρομών ανά χώρα'\n'Default time periods:': 'Περίοδοι προεπιλεγμένου χρόνου:'\n'Country subscription settings updated.': 'Οι ρυθμίσεις συνδρομής  χώρας ενημερώθηκαν.'\n'Country subscription settings deleted.': 'Οι ρυθμίσεις συνδρομής χώρας διαγράφτηκαν.'\n'Change country subscription settings': 'Αλλαγή ρυθμίσεων συνδρομής χώρας '\n'Are you sure you want to delete the subscription settings for $1?': 'Είστε σίγουρος/η ότι θέλετε να διαγράψετε τις ρυθμίσεις συνδρομής για $1;'\n'Publication updated': 'Η δημοσίευση ενημερώθηκε'\n'Subscriber comments moderated?': 'Ρυθμίστηκαν τα σχόλια του συνδρομητή;'\n'Public comments moderated?': 'Ρυθμίστηκαν τα σχόλια του κοινού;'\n'Comments enabled?': 'Ενεργοποίηση σχολίων;'\n'Comments enabled': 'Τα σχόλια ενεργοποιήθηκαν'\n'Article comments default to enabled?': 'Ενεργοποίηση προεπιλογής σχολίων άρθρου;'\n'trial subscription': 'δοκιμαστική συνδρομή'\n'paid subscription': 'πληρωμένη συνδρομή'\n'time units': 'μονάδες χρόνου'\n'one language': 'μία γλώσσα'\n'all languages': 'όλες οι γλώσσες'\n'Trial subscriptions': 'Δοκιμαστικές συνδρομές'\n'Time unit cost per one section': 'Κόστος χρονικής μονάδας ανά κατηγορία'\n'Paid subscriptions': 'Πληρωμένες συνδρομές'\n'Default time period': 'Περίοδος προεπιλεγμένου χρόνου'\n'Go To Issues': 'Πήγαινε Στα Τεύχη'\n'Delete publication $1': 'Διαγραφή δημοσίευσης $1'\n'No publications.': 'Καμία δημοσίευση.'\n'Default Site Alias': 'Προεπιλεγμένο ψευδώνυμο ιστότοπου'\n'URL Type': 'Τύπος URL'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'Χώρα<BR><SMALL>(κάντε κλίκ για επεξεργασία)</SMALL>'\n'Delete alias $1': 'Διαγραφή ψευδωνύμου $1'\n'Configure publication': 'Διαμόρφωση δημοσίευσης'\n'You do not have the right to edit publication information.': 'Δεν έχετε το δικαίωμα να επεξεργαστείτε τις πληροφορίες δημοσίευσης.'\n'General attributes': 'Γενικά χαρακτηριστικά'\n'You do not have the right to change publication information.': 'Δεν έχετε το δικαίωμα να αλλάξετε τις πληροφορίες δημοσίευσης.'\n'The publication information could not be updated.': 'Η πληροφορία δημοσίευσης δεν μπόρεσε να ενημερωθεί.'\n'You do not have the right to delete publications.': 'Δεν έχετε το δικαίωμα να διαγράψετε δημοσιεύσεις.'\n'Are you sure you want to delete the publication $1?': 'Είστε σίγουρος/η ότι θέλετε να διαγράψετε τη δημοσίευση $1;'\n'Deleting publication': 'Διαγραφή δημοσίευσης'\n'There are $1 subscription(s) left.': 'Απομένουν συνδρομές $1.'\n'The publication $1 could not be deleted.': 'Η δημοσίευση $1 δεν μπόρεσε να διαγραφεί.'\n'The publication could not be added.': 'Η δημοσίευση δεν μπόρεσε να προστεθεί.'\n'You do not have the right to manage publications.': 'Δεν έχετε το δικαίωμα να διαχειρίζεστε δημοσιεύσεις.'\n'You must select a country.': 'Πρέπει να επιλέξετε χώρα.'\n'Add new alias': 'Προσθήκη νέου ψευδωνύμου'\n'Alias (click to edit)': 'Ψευδώνυμο(κάντε κλίκ για επεξεργασία)'\n'Edit aliases': 'Επεξεργασία ψευδωνύμων'\n'Publication Aliases': 'Δημοσίευση Ψευδωνύμων'\n'Adding new alias': 'Προσθήκη νέου ψευδωνύμου'\n'The site alias $1 could not be added.': 'Το ψευδώνυμο ιστότοπου $1 δεν μπόρεσε να προστεθεί.'\n'Another alias with the same name exists already.': 'Ένα άλλο ψευδώνυμο με το ίδιο όνομα υπάρχει ήδη.'\n'Edit alias': 'Επεξεργασία ψευδωνύμου'\n'Editing alias': 'Επεξεργασία ψευδωνύμου'\n'The site alias $1 could not be modified.': 'Το ψευδώνυμο ιστότοπου $1 δεν μπόρεσε να τροποποιηθεί.'\n'Are you sure you want to delete the alias $1?': 'Είστε σίγουρος/η ότι θέλετε να διαγράψετε το ψευδώνυμο $1;'\n'Deleting alias': 'Διαγραφή ψευδωνύμου'\n'The alias $1 could not be deleted.': 'Το ψευδώνυμο $1 δεν μπόρεσε να διαγραφεί.'\n'$1 is the default publication alias, it can not be deleted.': '$1 είναι το προεπιλεγμένο ψευδώνυμο δημοσίευσης, δεν μπορεί να διαγραφεί.'\n'You do not have the right to add publications.': 'Δεν έχετε το δικαίωμα να προσθέσετε δημοσιεύσεις.'\n'There are $1 issue(s) left.': 'Απομένουν τεύχη $1.'\n'Time Unit': 'Μονάδα Χρόνου'\nCurrency: Νόμισμα\n'Edit languages': 'Επεξεργασία γλώσσας'\n'Search engine optimization': 'Βελτιστοποίηση των μηχανών αναζήτησης (SEO)'\n'Article title': 'Τίτλος άρθρου'\n'Article keywords': 'Λέξεις-κλειδιά του άρθρου'\n'Article topics': 'Θέματα άρθρου'\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.en.yml",
    "content": "'Make sure to enter the Moderator Address below': 'Make sure to enter the Moderator Address below'\n'click to see issues': 'click to see issues'\n'Moderator Address': 'Moderator Address'\n'From Address': 'From Address'\n'Use CAPTCHA to prevent spam?': 'Use CAPTCHA to prevent spam?'\n'Public allowed to comment?': 'Public allowed to comment?'\n'Enable spam blocking?': 'Enable spam blocking?'\n'The subscription settings for $1 could not be added.': 'The subscription settings for $1 could not be added.'\n'The publication name you specified conflicts with publication $1.': 'The publication name you specified conflicts with publication $1.'\n'The publication alias you specified conflicts with publication $1.': 'The publication alias you specified conflicts with publication $1.'\n'Subscription defaults': 'Subscription defaults'\n'Subscription Settings by Country': 'Subscription Settings by Country'\n'Set subscription settings for a country': 'Set subscription settings for a country'\n'Set subscription settings by country': 'Set subscription settings by country'\n'Default time periods:': 'Default time periods:'\n'Country subscription settings updated.': 'Country subscription settings updated.'\n'Country subscription settings deleted.': 'Country subscription settings deleted.'\n'Change country subscription settings': 'Change country subscription settings'\n'Are you sure you want to delete the subscription settings for $1?': 'Are you sure you want to delete the subscription settings for $1?'\n'Publication updated': 'Publication updated'\n'Subscriber comments moderated?': 'Subscriber comments moderated?'\n'Public comments moderated?': 'Public comments moderated?'\n'Comments enabled?': 'Comments enabled?'\n'Comments enabled': 'Comments enabled'\n'Article comments default to enabled?': 'Article comments default to enabled?'\n'trial subscription': 'trial subscription'\n'paid subscription': 'paid subscription'\n'time units': 'time units'\n'one language': 'one language'\n'all languages': 'all languages'\n'Trial subscriptions': 'Trial subscriptions'\n'Time unit cost per one section': 'Time unit cost per one section'\n'Paid subscriptions': 'Paid subscriptions'\n'Default time period': 'Default time period'\n'Go To Issues': 'Go To Issues'\n'Delete publication $1': 'Delete publication $1'\n'No publications.': 'No publications.'\n'Default Site Alias': 'Default Site Alias'\n'URL Type': 'URL Type'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'Country<BR><SMALL>(click to edit)</SMALL>'\n'Delete alias $1': 'Delete alias $1'\n'Configure publication': 'Configure publication'\n'You do not have the right to edit publication information.': 'You do not have the right to edit publication information.'\n'General attributes': 'General attributes'\n'You do not have the right to change publication information.': 'You do not have the right to change publication information.'\n'The publication information could not be updated.': 'The publication information could not be updated.'\n'You do not have the right to delete publications.': 'You do not have the right to delete publications.'\n'Are you sure you want to delete the publication $1?': 'Are you sure you want to delete the publication $1?'\n'Deleting publication': 'Deleting publication'\n'There are $1 subscription(s) left.': 'There are $1 subscription(s) left.'\n'The publication $1 could not be deleted.': 'The publication $1 could not be deleted.'\n'The publication could not be added.': 'The publication could not be added.'\n'You do not have the right to manage publications.': 'You do not have the right to manage publications.'\n'You must select a country.': 'You must select a country.'\n'Add new alias': 'Add new alias'\n'Alias (click to edit)': 'Alias (click to edit)'\n'Edit aliases': 'Edit aliases'\n'Publication Aliases': 'Publication Aliases'\n'Adding new alias': 'Adding new alias'\n'The site alias $1 could not be added.': 'The site alias $1 could not be added.'\n'Another alias with the same name exists already.': 'Another alias with the same name exists already.'\n'Edit alias': 'Edit alias'\n'Editing alias': 'Editing alias'\n'The site alias $1 could not be modified.': 'The site alias $1 could not be modified.'\n'Are you sure you want to delete the alias $1?': 'Are you sure you want to delete the alias $1?'\n'Deleting alias': 'Deleting alias'\n'The alias $1 could not be deleted.': 'The alias $1 could not be deleted.'\n'$1 is the default publication alias, it can not be deleted.': '$1 is the default publication alias, it can not be deleted.'\n'You do not have the right to add publications.': 'You do not have the right to add publications.'\n'There are $1 issue(s) left.': 'There are $1 issue(s) left.'\n'Time Unit': 'Time Unit'\nCurrency: Currency\n'Edit languages': 'Edit languages'\n'Search engine optimization': 'Search engine optimization'\n'Article title': 'Article title'\n'Article keywords': 'Article keywords'\n'Article topics': 'Article topics'\n\npublications:\n    title:\n        list: List of publications\n        edit: Edit publication\n        add: Add new publication\n        remove: Remove publication\n    no_publications: No publications.\n    general_settings: General Settings\n    comments_settings: Comments Settings\n    seo_settings: SEO Settings\n    front_page_theme_settings: Front page theme settings\n    publication_removed: Publication was removed.\n    publication_saved: Publication changes were saved successfully.\n    remove:\n        cant_be_removed: This publication isn't empty - and can't be removed.\n        can_be_removed: This publication is empty and can be removed.\n        left_issues: Left issues\n        left_sections: Left sections\n        left_articles: Left articles\n        show_issues: show issues\n        before_removing: Before removing publication you need to remove/move all remaining elements.\n        you_sure: Are you sure that you want to remove publication\n        remove: Remove publication\n    buttons:\n        addNew: Add new publication\n        listPublications: List publications\n        listIssues: List publication issues\n    table:\n        number: Number\n        name: Name\n        default_alias: Default Alias\n        default_language: Default Language\n        comments_status: Comments status\n        url_type: Url type\n        configure: Configure\n        remove: Remove\n    form_type:\n        label:\n            follow_current_issue_theme: Follow current issue theme\n            name: Publication Name\n            template_path: Template path\n            short_names: Short name\n            alias: Default alias\n            url_type: Url type\n            seo: Article url parts\n            seo_article_title: Article title\n            seo_article_keywords: Article keywords\n            seo_article_topics: Article topics\n            edit_aliases: Edit aliases\n            edit_languages: Edit languages\n            moderator_to: Moderator address\n            moderator_from: Moderation emails from addres\n            comments_enabled: Comments are enabled?\n            public_comments_enabled: Public (anonymous) comments are enabled?\n            comments_article_default_enabled: Comments for article are enabled by default?\n            comments_subscribers_moderated: Registered users' comments are moderated?\n            comments_public_moderated: Public (anonymous) comments are moderated?\n            comments_captcha_enabled: Captcha is enabled?\n            comments_spam_blocking_enabled: Comments spam (internal system) blocking is enabled?\n            meta_title: Publication title\n            meta_keywords: Publication keywords\n            meta_description: Publication description\n\n    tip1: \"Newscoop content is organized in a hierarchical structure, which conforms to the tradition of newspapers and magazines: Publications, Issues, Sections and Articles. Each publication is made up of issues, each issue is in turn made up of sections, which are comprised of articles.\""
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.en_GB.yml",
    "content": "'Make sure to enter the Moderator Address below': 'Make sure to enter the Moderator Address below'\n'click to see issues': 'click to see issues'\n'Moderator Address': 'Moderator Address'\n'From Address': 'From Address'\n'Use CAPTCHA to prevent spam?': 'Use CAPTCHA to prevent spam?'\n'Public allowed to comment?': 'Public allowed to comment?'\n'Enable spam blocking?': 'Enable spam blocking?'\n'The subscription settings for $1 could not be added.': 'The subscription settings for $1 could not be added.'\n'The publication name you specified conflicts with publication $1.': 'The publication name you specified conflicts with publication $1.'\n'The publication alias you specified conflicts with publication $1.': 'The publication alias you specified conflicts with publication $1.'\n'Subscription defaults': 'Subscription defaults'\n'Subscription Settings by Country': 'Subscription Settings by Country'\n'Set subscription settings for a country': 'Set subscription settings for a country'\n'Set subscription settings by country': 'Set subscription settings by country'\n'Default time periods:': 'Default time periods:'\n'Country subscription settings updated.': 'Country subscription settings updated.'\n'Country subscription settings deleted.': 'Country subscription settings deleted.'\n'Change country subscription settings': 'Change country subscription settings'\n'Are you sure you want to delete the subscription settings for $1?': 'Are you sure you want to delete the subscription settings for $1?'\n'Publication updated': 'Publication updated'\n'Subscriber comments moderated?': 'Subscriber comments moderated?'\n'Public comments moderated?': 'Public comments moderated?'\n'Comments enabled?': 'Comments enabled?'\n'Comments enabled': 'Comments enabled'\n'Article comments default to enabled?': 'Article comments default to enabled?'\n'trial subscription': 'trial subscription'\n'paid subscription': 'paid subscription'\n'time units': 'time units'\n'one language': 'one language'\n'all languages': 'all languages'\n'Trial subscriptions': 'Trial subscriptions'\n'Time unit cost per one section': 'Time unit cost per one section'\n'Paid subscriptions': 'Paid subscriptions'\n'Default time period': 'Default time period'\n'Go To Issues': 'Go To Issues'\n'Delete publication $1': 'Delete publication $1'\n'No publications.': 'No publications.'\n'Default Site Alias': 'Default Site Alias'\n'URL Type': 'URL Type'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'Country<BR><SMALL>(click to edit)</SMALL>'\n'Delete alias $1': 'Delete alias $1'\n'Configure publication': 'Configure publication'\n'You do not have the right to edit publication information.': 'You do not have the right to edit publication information.'\n'General attributes': 'General attributes'\n'You do not have the right to change publication information.': 'You do not have the right to change publication information.'\n'The publication information could not be updated.': 'The publication information could not be updated.'\n'You do not have the right to delete publications.': 'You do not have the right to delete publications.'\n'Are you sure you want to delete the publication $1?': 'Are you sure you want to delete the publication $1?'\n'Deleting publication': 'Deleting publication'\n'There are $1 subscription(s) left.': 'There are $1 subscription(s) left.'\n'The publication $1 could not be deleted.': 'The publication $1 could not be deleted.'\n'The publication could not be added.': 'The publication could not be added.'\n'You do not have the right to manage publications.': 'You do not have the right to manage publications.'\n'You must select a country.': 'You must select a country.'\n'Add new alias': 'Add new alias'\n'Alias (click to edit)': 'Alias (click to edit)'\n'Edit aliases': 'Edit aliases'\n'Publication Aliases': 'Publication Aliases'\n'Adding new alias': 'Adding new alias'\n'The site alias $1 could not be added.': 'The site alias $1 could not be added.'\n'Another alias with the same name exists already.': 'Another alias with the same name exists already.'\n'Edit alias': 'Edit alias'\n'Editing alias': 'Editing alias'\n'The site alias $1 could not be modified.': 'The site alias $1 could not be modified.'\n'Are you sure you want to delete the alias $1?': 'Are you sure you want to delete the alias $1?'\n'Deleting alias': 'Deleting alias'\n'The alias $1 could not be deleted.': 'The alias $1 could not be deleted.'\n'$1 is the default publication alias, it can not be deleted.': '$1 is the default publication alias, it can not be deleted.'\n'You do not have the right to add publications.': 'You do not have the right to add publications.'\n'There are $1 issue(s) left.': 'There are $1 issue(s) left.'\n'Time Unit': 'Time Unit'\nCurrency: Currency\n'Edit languages': 'Edit languages'\n'Search engine optimization': 'Search engine optimization'\n'Article title': 'Article title'\n'Article keywords': 'Article keywords'\n'Article topics': 'Article topics'\npublications:\n    title:\n        list: 'List of publications'\n        edit: 'Edit publication'\n        add: 'Add new publication'\n        remove: 'Remove publication'\n    no_publications: 'No publications.'\n    general_settings: 'General Settings'\n    comments_settings: 'Comments Settings'\n    seo_settings: 'SEO Settings'\n    front_page_theme_settings: 'Front page theme settings'\n    publication_removed: 'Publication was removed.'\n    publication_saved: 'Publication changes were saved successfully.'\n    remove:\n        cant_be_removed: 'This publication isn''t empty - and can''t be removed.'\n        can_be_removed: 'This publication is empty and can be removed.'\n        left_issues: 'Issues remaining'\n        left_sections: 'Sections remaining'\n        left_articles: 'Articles remaining'\n        show_issues: 'show issues'\n        before_removing: 'Before removing a publication you need to remove or move all remaining elements.'\n        you_sure: 'Are you sure that you want to remove the publication?'\n        remove: 'Remove publication'\n    buttons:\n        addNew: 'Add new publication'\n        listPublications: 'List publications'\n        listIssues: 'List publication issues'\n    table:\n        number: Number\n        name: Name\n        default_alias: 'Default Alias'\n        default_language: 'Default Language'\n        comments_status: 'Comments status'\n        url_type: 'URL type'\n        configure: Configure\n        remove: Remove\n    form_type:\n        label:\n            follow_current_issue_theme: 'Follow current issue theme'\n            name: 'Publication Name'\n            template_path: 'Template path'\n            short_names: 'Short name'\n            alias: 'Default alias'\n            url_type: 'URL type'\n            seo: 'Article URL parts'\n            seo_article_title: 'Article title'\n            seo_article_keywords: 'Article keywords'\n            seo_article_topics: 'Article topics'\n            edit_aliases: 'Edit aliases'\n            edit_languages: 'Edit languages'\n            moderator_to: 'Moderator address'\n            moderator_from: 'Moderation emails from address'\n            comments_enabled: 'Are comments enabled?'\n            public_comments_enabled: 'Are public (anonymous) comments enabled?'\n            comments_article_default_enabled: 'Are comments for the article enabled by default?'\n            comments_subscribers_moderated: 'Registered users'' comments are moderated?'\n            comments_public_moderated: 'Are public (anonymous) comments moderated?'\n            comments_captcha_enabled: 'Is CAPTCHA enabled?'\n            comments_spam_blocking_enabled: 'Is comment spam (internal system) blocking enabled?'\n            meta_title: 'Publication title'\n            meta_keywords: 'Publication keywords'\n            meta_description: 'Publication description'\n    tip1: 'Newscoop content is organized in a hierarchical structure, which conforms to the tradition of newspapers and magazines: Publications, Issues, Sections and Articles. Each publication is made up of issues, each issue is in turn made up of sections, which are comprised of articles.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.es.yml",
    "content": "'Make sure to enter the Moderator Address below': 'Asegúrese de ingresar a continuación la dirección del moderador '\n'click to see issues': 'Clic para ver ediciones'\n'Moderator Address': 'Dirección de moderador'\n'From Address': 'De la dirección'\n'Use CAPTCHA to prevent spam?': '¿Desea usar CAPTCHA para prevenir el correo basura?'\n'Public allowed to comment?': '¿Desea permitir comentarios públicos?'\n'Enable spam blocking?': '¿Desea bloquear el correo basura?'\n'The subscription settings for $1 could not be added.': 'No se pudieron agregar las preferencias de suscripción de $1'\n'The publication name you specified conflicts with publication $1.': 'El nombre de la publicación que especificó tiene conflicto con la publicación $1.'\n'The publication alias you specified conflicts with publication $1.': 'El alias de la publicación que especificó tiene conflicto con la publicación $1.'\n'Subscription defaults': 'Defaults de suscripción'\n'Subscription Settings by Country': 'Preferencias de suscripción por país'\n'Set subscription settings for a country': 'Establezca preferencias para un país'\n'Set subscription settings by country': 'Establezca preferencias de suscripción por pais'\n'Default time periods:': 'Periódos de tiempo por default:'\n'Country subscription settings updated.': 'Se actualizaron las preferencias de suscripción de país'\n'Country subscription settings deleted.': 'Se eliminaron las preferencias de suscripción de país'\n'Change country subscription settings': 'Se modificaron las preferencias de suscripción de país'\n'Are you sure you want to delete the subscription settings for $1?': '¿Está seguro de que desea eliminar las preferencias de suscripción para $1?'\n'Publication updated': 'Publicación actualizada'\n'Subscriber comments moderated?': '¿Desea moderar los comentarios del suscriptor?'\n'Public comments moderated?': '¿Desea moderar los comentarios públicos?'\n'Comments enabled?': '¿Permitir comentarios?'\n'Comments enabled': 'Comentarios permitidos'\n'Article comments default to enabled?': '¿Desea permitir por default los comentarios a los artículos?'\n'trial subscription': 'Suscripción de prueba'\n'paid subscription': 'Suscripción pagada'\n'time units': 'Unidades de tiempo'\n'one language': 'Un idioma'\n'all languages': 'todos los idiomas'\n'Trial subscriptions': 'Suscripciones de prueba'\n'Time unit cost per one section': 'Costo de unidad de tiempo por una sección'\n'Paid subscriptions': 'Suscripciones pagadas'\n'Default time period': 'Período de tiempo '\n'Go To Issues': 'Ir a ediciones'\n'Delete publication $1': 'Borrar publicación $1'\n'No publications.': 'Sin publicaciones'\n'Default Site Alias': 'Alias del sitio por default'\n'URL Type': 'Tipo de URL'\n'Country<BR><SMALL>(click to edit)</SMALL>': País\n'Delete alias $1': 'Borrar entrada $1'\n'Configure publication': 'Configurar publicación'\n'You do not have the right to edit publication information.': 'No tiene derecho para editar la información publicación'\n'General attributes': 'Atributos generales'\n'You do not have the right to change publication information.': 'No tiene derecho de cambiar la información de publicación'\n'The publication information could not be updated.': 'La información de publicación no pudo ser actualizada'\n'You do not have the right to delete publications.': 'No tiene derecho a borrar publicaciones'\n'Are you sure you want to delete the publication $1?': '¿Está seguro de que quiere borrar la publicación $1?'\n'Deleting publication': 'Borrando publicación'\n'There are $1 subscription(s) left.': 'Hay $1 suscripción(es) pendiente(s)'\n'The publication $1 could not be deleted.': 'La publicación $1 no pudo ser borrada'\n'The publication could not be added.': 'La publicación no pudo ser agregada'\n'You do not have the right to manage publications.': 'No tiene derecho a manejar las publicaciones'\n'You must select a country.': 'Debe seleccionar un país'\n'Add new alias': 'Agregar nuevo alias'\n'Alias (click to edit)': 'Alias (click para editar)'\n'Edit aliases': 'Editar aliases'\n'Publication Aliases': 'Aliases de publicación'\n'Adding new alias': 'Agregando nuevos alias'\n'The site alias $1 could not be added.': 'No se pudo agregar el alias $1 del sitio '\n'Another alias with the same name exists already.': 'Ya existe otro alias con el mismo nombre'\n'Edit alias': 'Editar alias'\n'Editing alias': 'Editando alias'\n'The site alias $1 could not be modified.': 'El alias del sitio $1 no pudo ser modificado'\n'Are you sure you want to delete the alias $1?': '¿Está seguro de querer eliminar el alias $1?'\n'Deleting alias': 'Eliminando alias'\n'The alias $1 could not be deleted.': 'No pudo elliminarse el alias $1'\n'$1 is the default publication alias, it can not be deleted.': '$1 es el alias de publicación por default, no se puede eliminar.'\n'You do not have the right to add publications.': 'No tiene el permiso para agregar publicaciones'\n'There are $1 issue(s) left.': 'Queda(n) $1 ejemplar(es).'\n'Time Unit': 'Unidad de tiempo'\nCurrency: Moneda\n'Edit languages': 'Editar idiomas'\n'Search engine optimization': 'Optimización del motor de búsqueda'\n'Article title': 'Título del artículo'\n'Article keywords': 'Palabras clave del artículo'\n'Article topics': 'Tópicos del artículo'\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.es_AR.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': null\n'paid subscription': null\n'time units': null\n'one language': null\n'all languages': null\n'Trial subscriptions': null\n'Time unit cost per one section': null\n'Paid subscriptions': null\n'Default time period': null\n'Go To Issues': null\n'Delete publication $1': null\n'No publications.': null\n'Default Site Alias': null\n'URL Type': null\n'Country<BR><SMALL>(click to edit)</SMALL>': null\n'Delete alias $1': null\n'Configure publication': null\n'You do not have the right to edit publication information.': null\n'General attributes': null\n'You do not have the right to change publication information.': null\n'The publication information could not be updated.': null\n'You do not have the right to delete publications.': null\n'Are you sure you want to delete the publication $1?': null\n'Deleting publication': null\n'There are $1 subscription(s) left.': null\n'The publication $1 could not be deleted.': null\n'The publication could not be added.': null\n'You do not have the right to manage publications.': null\n'You must select a country.': null\n'Add new alias': null\n'Alias (click to edit)': null\n'Edit aliases': null\n'Publication Aliases': null\n'Adding new alias': null\n'The site alias $1 could not be added.': null\n'Another alias with the same name exists already.': null\n'Edit alias': null\n'Editing alias': null\n'The site alias $1 could not be modified.': null\n'Are you sure you want to delete the alias $1?': null\n'Deleting alias': null\n'The alias $1 could not be deleted.': null\n'$1 is the default publication alias, it can not be deleted.': null\n'You do not have the right to add publications.': null\n'There are $1 issue(s) left.': null\n'Time Unit': null\nCurrency: null\n'Edit languages': null\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.fa.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': null\n'paid subscription': null\n'time units': null\n'one language': null\n'all languages': null\n'Trial subscriptions': null\n'Time unit cost per one section': null\n'Paid subscriptions': null\n'Default time period': null\n'Go To Issues': null\n'Delete publication $1': null\n'No publications.': null\n'Default Site Alias': null\n'URL Type': null\n'Country<BR><SMALL>(click to edit)</SMALL>': null\n'Delete alias $1': null\n'Configure publication': null\n'You do not have the right to edit publication information.': null\n'General attributes': null\n'You do not have the right to change publication information.': null\n'The publication information could not be updated.': null\n'You do not have the right to delete publications.': null\n'Are you sure you want to delete the publication $1?': null\n'Deleting publication': null\n'There are $1 subscription(s) left.': null\n'The publication $1 could not be deleted.': null\n'The publication could not be added.': null\n'You do not have the right to manage publications.': null\n'You must select a country.': null\n'Add new alias': null\n'Alias (click to edit)': null\n'Edit aliases': null\n'Publication Aliases': null\n'Adding new alias': null\n'The site alias $1 could not be added.': null\n'Another alias with the same name exists already.': null\n'Edit alias': null\n'Editing alias': null\n'The site alias $1 could not be modified.': null\n'Are you sure you want to delete the alias $1?': null\n'Deleting alias': null\n'The alias $1 could not be deleted.': null\n'$1 is the default publication alias, it can not be deleted.': null\n'You do not have the right to add publications.': null\n'There are $1 issue(s) left.': null\n'Time Unit': null\nCurrency: null\n'Edit languages': null\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.fa_AF.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': null\n'paid subscription': null\n'time units': null\n'one language': null\n'all languages': null\n'Trial subscriptions': null\n'Time unit cost per one section': null\n'Paid subscriptions': null\n'Default time period': null\n'Go To Issues': null\n'Delete publication $1': null\n'No publications.': null\n'Default Site Alias': null\n'URL Type': null\n'Country<BR><SMALL>(click to edit)</SMALL>': null\n'Delete alias $1': null\n'Configure publication': null\n'You do not have the right to edit publication information.': null\n'General attributes': null\n'You do not have the right to change publication information.': null\n'The publication information could not be updated.': null\n'You do not have the right to delete publications.': null\n'Are you sure you want to delete the publication $1?': null\n'Deleting publication': null\n'There are $1 subscription(s) left.': null\n'The publication $1 could not be deleted.': null\n'The publication could not be added.': null\n'You do not have the right to manage publications.': null\n'You must select a country.': null\n'Add new alias': null\n'Alias (click to edit)': null\n'Edit aliases': null\n'Publication Aliases': null\n'Adding new alias': null\n'The site alias $1 could not be added.': null\n'Another alias with the same name exists already.': null\n'Edit alias': null\n'Editing alias': null\n'The site alias $1 could not be modified.': null\n'Are you sure you want to delete the alias $1?': null\n'Deleting alias': null\n'The alias $1 could not be deleted.': null\n'$1 is the default publication alias, it can not be deleted.': null\n'You do not have the right to add publications.': null\n'There are $1 issue(s) left.': null\n'Time Unit': null\nCurrency: null\n'Edit languages': null\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.fr.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': 'Abonnement dessai'\n'paid subscription': 'Abonnement payé'\n'time units': 'Unités temps'\n'one language': 'Une langue'\n'all languages': 'Toutes les langues'\n'Trial subscriptions': 'Abonnements dessai'\n'Time unit cost per one section': 'Coût unitaire  de temps par section'\n'Paid subscriptions': 'Abonnements payés'\n'Default time period': 'Periode par défaut'\n'Go To Issues': 'Aller aux éditions'\n'Delete publication $1': 'Supprimer la publication $1'\n'No publications.': 'Aucune publication.'\n'Default Site Alias': 'Alias par défaut du site'\n'URL Type': 'Type dURL'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'Pays<BR><SMALL>(cliquer pour éditer)</SMALL>'\n'Delete alias $1': 'Supprimer alias $1'\n'Configure publication': 'Configurer publication'\n'You do not have the right to edit publication information.': 'Vous navez pas le droit déditer linformation de publication.                    '\n'General attributes': 'Attributs Généraux'\n'You do not have the right to change publication information.': 'Vous navez pas le droit de changer linformation de publication. '\n'The publication information could not be updated.': 'linformation de publication ne pouvait pas être mise à jour. '\n'You do not have the right to delete publications.': 'Vous navez pas le droit de supprimer des publications'\n'Are you sure you want to delete the publication $1?': 'Etes-vous sûr de vouloir supprimer la publication $1?'\n'Deleting publication': 'Suppression publication'\n'There are $1 subscription(s) left.': 'Il manque un ou des abonnement(s).'\n'The publication $1 could not be deleted.': 'La publication $1 ne pouvait pas être supprimée.'\n'The publication could not be added.': 'La publication ne pouvait pas être ajoutée.'\n'You do not have the right to manage publications.': 'Vous navez pas le droit de gérer des publications'\n'You must select a country.': 'Vous devez choisir un pays'\n'Add new alias': 'Ajouter un nouvel alias'\n'Alias (click to edit)': 'Alias (cliquer pour éditer)'\n'Edit aliases': 'Editer alias'\n'Publication Aliases': 'Publication Alias'\n'Adding new alias': 'Ajout nouvel alias'\n'The site alias $1 could not be added.': 'Lalias du site $1 ne pouvait pas être ajouté.'\n'Another alias with the same name exists already.': 'Un autre alias avec le même nom existe déjà.'\n'Edit alias': 'Editer alias'\n'Editing alias': 'Edition alias'\n'The site alias $1 could not be modified.': 'Lalias du site $1 ne pouvait pas être modifié.'\n'Are you sure you want to delete the alias $1?': 'Etes-vous sûre de vouloir supprimer lalias $1?'\n'Deleting alias': 'Suppression alias'\n'The alias $1 could not be deleted.': 'Lalias $1 ne pouvait pas être supprimé.'\n'$1 is the default publication alias, it can not be deleted.': '$1 est lalias de publication par défaut, il ne peut pas être supprimé.'\n'You do not have the right to add publications.': 'Vous navez pas le droit dajouter des publications.'\n'There are $1 issue(s) left.': 'Il manque $1 édition(s).'\n'Time Unit': 'Unité de Temps'\nCurrency: Monnaie\n'Edit languages': 'Editer langues'\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.he.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': null\n'paid subscription': null\n'time units': null\n'one language': null\n'all languages': null\n'Trial subscriptions': null\n'Time unit cost per one section': null\n'Paid subscriptions': null\n'Default time period': null\n'Go To Issues': null\n'Delete publication $1': null\n'No publications.': null\n'Default Site Alias': null\n'URL Type': null\n'Country<BR><SMALL>(click to edit)</SMALL>': null\n'Delete alias $1': null\n'Configure publication': null\n'You do not have the right to edit publication information.': null\n'General attributes': null\n'You do not have the right to change publication information.': null\n'The publication information could not be updated.': null\n'You do not have the right to delete publications.': null\n'Are you sure you want to delete the publication $1?': null\n'Deleting publication': null\n'There are $1 subscription(s) left.': null\n'The publication $1 could not be deleted.': null\n'The publication could not be added.': null\n'You do not have the right to manage publications.': null\n'You must select a country.': null\n'Add new alias': null\n'Alias (click to edit)': null\n'Edit aliases': null\n'Publication Aliases': null\n'Adding new alias': null\n'The site alias $1 could not be added.': null\n'Another alias with the same name exists already.': null\n'Edit alias': null\n'Editing alias': null\n'The site alias $1 could not be modified.': null\n'Are you sure you want to delete the alias $1?': null\n'Deleting alias': null\n'The alias $1 could not be deleted.': null\n'$1 is the default publication alias, it can not be deleted.': null\n'You do not have the right to add publications.': null\n'There are $1 issue(s) left.': null\n'Time Unit': null\nCurrency: null\n'Edit languages': null\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.hr.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': 'probna pretplata'\n'paid subscription': 'plaćena pretplata'\n'time units': 'vremenska jedinica'\n'one language': 'jedan jezik'\n'all languages': 'svi jezici'\n'Trial subscriptions': 'Probne pretplate'\n'Time unit cost per one section': 'Cijena za vremensku jedinici za rubriku'\n'Paid subscriptions': 'Plaćene pretplate'\n'Default time period': 'Podrazumijevani vremenski period'\n'Go To Issues': 'Idi na izdanje'\n'Delete publication $1': 'Izbiši publikaciju $1'\n'No publications.': 'Nema publikacija.'\n'Default Site Alias': 'Podrazumijevana kratica za sajt'\n'URL Type': 'Tip URL-a'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'Zemlja<br><small>(kliknite za uređivanje)</small>'\n'Delete alias $1': 'Izbriši alias $1'\n'Configure publication': 'Podesi publikaciju'\n'You do not have the right to edit publication information.': 'Nemate ovlasti uređivati podatke o publikacijama.'\n'General attributes': 'Općenita svojstva'\n'You do not have the right to change publication information.': 'Nemate ovlasti mijenjati podatke o publikacijama.'\n'The publication information could not be updated.': 'Podaci o publikaciji ne mogu biti ažurirani.'\n'You do not have the right to delete publications.': 'Nemate ovlasti brisati publikacije.'\n'Are you sure you want to delete the publication $1?': 'Jeste li sigurni da želite brisati publikaciju $1?'\n'Deleting publication': 'Brisanje publikacije'\n'There are $1 subscription(s) left.': 'Ostala(lo) je još $1 pretplata.'\n'The publication $1 could not be deleted.': 'Publikacija $1 ne može biti obrisana.'\n'The publication could not be added.': 'Publikacija ne može biti dodana.'\n'You do not have the right to manage publications.': 'Nemate ovlasti upravljati publikacijama.'\n'You must select a country.': 'Morate označiti zemlju.'\n'Add new alias': 'Dodaj novu kraticu'\n'Alias (click to edit)': 'Kratica (klikni za izmjenu)'\n'Edit aliases': 'Uredi kratice'\n'Publication Aliases': 'Kratice publikacija'\n'Adding new alias': 'Dodaj novu kraticu'\n'The site alias $1 could not be added.': 'Kratica na sajt $1 ne može se dodati.'\n'Another alias with the same name exists already.': 'Druga kratica s istim imenom već postoji.'\n'Edit alias': 'Uredi kraticu'\n'Editing alias': 'Uređivanje kratica'\n'The site alias $1 could not be modified.': 'Kratica na sajt $1 ne može se mijenjati.'\n'Are you sure you want to delete the alias $1?': 'Sigurno želite obrisati kraticu $1?'\n'Deleting alias': 'Brisanje kratice'\n'The alias $1 could not be deleted.': 'Kratica $1 ne može se obrisati.'\n'$1 is the default publication alias, it can not be deleted.': '$1 je podrazumijevana kratica na publikaciju i ne može se obrisati.'\n'You do not have the right to add publications.': 'Nemate prava dodavati publikacije.'\n'There are $1 issue(s) left.': 'Ostalo je $1 izdanja.'\n'Time Unit': 'Vremenska jedinica'\nCurrency: Valuta\n'Edit languages': 'Uredi jezike'\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.hu.yml",
    "content": "'Make sure to enter the Moderator Address below': 'Győződj meg róla, hogy megadtad-e alább a Moderátor címet'\n'click to see issues': 'kattins ide a számok megtekintéséhez'\n'Moderator Address': 'Moderátor címe'\n'From Address': 'Feladó címe'\n'Use CAPTCHA to prevent spam?': 'CAPTCHA használata a szemét megakadályozásához?'\n'Public allowed to comment?': 'Mindenki számára engedélyezett a hozzászólás?'\n'Enable spam blocking?': 'A szemét letiltásának engedélyezése?'\n'The subscription settings for $1 could not be added.': 'Nem lehet hozzáadni az előfizetési beállításokat a/z $1 számára.'\n'The publication name you specified conflicts with publication $1.': 'Az általad megadott kiadványnév ütközik a/z $1 kiadvánnyal.'\n'The publication alias you specified conflicts with publication $1.': 'A kiadvány általad megadott aliasa ütközik a/z $1 kiadvánnyal.'\n'Subscription defaults': 'Előfizetés alapértelmezései'\n'Subscription Settings by Country': 'Előfizetés ország szerinti beállításai'\n'Set subscription settings for a country': 'Egy ország előfizetési beállításainak megadása'\n'Set subscription settings by country': 'Előfizetési beállítások ország szerinti megadása'\n'Default time periods:': 'Alapértelmezett időszakok:'\n'Country subscription settings updated.': 'Az ország előfizetési beállításainak frissítése megtörtént.'\n'Country subscription settings deleted.': 'Az ország előfizetési beállításainak törlése megtörtént.'\n'Change country subscription settings': 'Az ország előfizetési beállításainak módosítása'\n'Are you sure you want to delete the subscription settings for $1?': 'Biztosan törölni akarod $1 előfizetési beállításait?'\n'Publication updated': 'A kiadvány frissítése megtörtént'\n'Subscriber comments moderated?': 'Az előfizetői hozzászólások moderáltak?'\n'Public comments moderated?': 'A nyilvános hozzászólások moderáltak?'\n'Comments enabled?': 'A hozzászólás engedélyezése'\n'Comments enabled': 'Hozzászólás engedélyezve'\n'Article comments default to enabled?': 'A hozzászólás alapértelmezetten engedélyezett a cikkhez?'\n'trial subscription': próbaelőfizetés\n'paid subscription': 'fizetett előfizetés'\n'time units': időegységek\n'one language': 'egy nyelv'\n'all languages': 'minden nyelv'\n'Trial subscriptions': Próbaelőfizetések\n'Time unit cost per one section': 'Időegység költsége egy rovatra'\n'Paid subscriptions': 'Fizetett előfizetések'\n'Default time period': 'Alapértelmezett időszak'\n'Go To Issues': 'Ugrás a számokhoz'\n'Delete publication $1': 'A/z $1 kiadvány törlése'\n'No publications.': 'Nincsenek kiadványok.'\n'Default Site Alias': 'Alapértelmezett webhely alias'\n'URL Type': 'URL-cím típusa'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'Ország<BR><SMALL>(kattints a szerkesztéshez)</SMALL>'\n'Delete alias $1': 'A/z $1 alias törlése'\n'Configure publication': 'Kiadvány konfigurálása'\n'You do not have the right to edit publication information.': 'Nincs jogod a kiadvány adatainak szerkesztéséhez.'\n'General attributes': 'Általános attribútumok'\n'You do not have the right to change publication information.': 'Nincs jogod a kiadvány adatainak módosításához.'\n'The publication information could not be updated.': 'Nem lehet frissíteni a kiadvány adatait.'\n'You do not have the right to delete publications.': 'Nincs jogod a kiadványok törléséhez.'\n'Are you sure you want to delete the publication $1?': 'Biztosan törölni akarod a/z $1 kiadványt?'\n'Deleting publication': 'Kiadvány törlése'\n'There are $1 subscription(s) left.': '$1 előfizetés maradt.'\n'The publication $1 could not be deleted.': 'Nem lehet törölni a/z $1 kiadványt.'\n'The publication could not be added.': 'Nem lehet hozzáadni a kiadványt.'\n'You do not have the right to manage publications.': 'Nincs jogod a kiadványok kezeléséhez.'\n'You must select a country.': 'Ki kell választanod egy országot.'\n'Add new alias': 'Új alias hozzáadása'\n'Alias (click to edit)': 'Alias (kattints ide a szerkesztéshez)'\n'Edit aliases': 'Aliasok szerkesztése'\n'Publication Aliases': 'Kiadvány aliasok'\n'Adding new alias': 'Új alias hozzáadása'\n'The site alias $1 could not be added.': 'Nem lehet hozzáadni a/z $1 webhely aliast.'\n'Another alias with the same name exists already.': 'Már létezik ugyanilyen alias.'\n'Edit alias': 'Alias szerkesztése'\n'Editing alias': 'Alias szerkesztése'\n'The site alias $1 could not be modified.': 'Nem lehet módosítani a/z $1 webhely aliast.'\n'Are you sure you want to delete the alias $1?': 'Biztosan törölni akarod a/z $1 aliast?'\n'Deleting alias': 'Alias törlése'\n'The alias $1 could not be deleted.': 'Nem lehet törölni a/z $1 aliast.'\n'$1 is the default publication alias, it can not be deleted.': 'A/z $1 az alapértelmezett kiadvány alias, nem törölhető.'\n'You do not have the right to add publications.': 'Nincs jogod a kiadványok hozzáadásához.'\n'There are $1 issue(s) left.': '$1 szám maradt.'\n'Time Unit': Időegység\nCurrency: Pénznem\n'Edit languages': 'Nyelvek szerkesztése'\n'Search engine optimization': Keresőoptimalizálás\n'Article title': 'Cikk címe'\n'Article keywords': 'Cikk kulcsszavai'\n'Article topics': Cikktémák\npublications:\n    title:\n        list: Kiadványlista\n        edit: 'Kiadvány szerkesztése'\n        add: 'Új kiadvány hozzáadása'\n        remove: 'Kiadvány eltávolítása'\n    no_publications: 'Nincsenek kiadványok.'\n    general_settings: 'Általános beállítások'\n    comments_settings: 'Hozzászólások beállításai'\n    seo_settings: 'Keresőoptimalizálási beállítások'\n    front_page_theme_settings: null\n    publication_removed: 'A kiadvány eltávolításra került.'\n    publication_saved: 'A kiadvány módosításainak mentése sikerült.'\n    remove:\n        cant_be_removed: 'Ez a kiadvány nem üres - és nem távolítható el.'\n        can_be_removed: 'Ez a kiadvány üres, és el lehet távolítani.'\n        left_issues: 'Maradt számok'\n        left_sections: 'Maradt rovatok'\n        left_articles: 'Maradt cikkek'\n        show_issues: 'számok megjelenítése'\n        before_removing: 'A kiadvány eltávolítása előtt el kell távolítanod/át kell helyezned az összes megmaradt elemet.'\n        you_sure: 'Biztosan el akarod távolítani a kiadványt'\n        remove: 'Kiadvány eltávolítása'\n    buttons:\n        addNew: 'Új kiadvány hozzáadása'\n        listPublications: 'Kiadványok listázása'\n        listIssues: 'Kiadvány számainak listázása'\n    table:\n        number: Szám\n        name: Név\n        default_alias: 'Alapértelmezett alias'\n        default_language: 'Alapértelmezett nyelv'\n        comments_status: 'Hozzászólások állapota'\n        url_type: 'URL-cím típusa'\n        configure: Konfigurálás\n        remove: Eltávolítás\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: 'Kiadvány neve'\n            template_path: 'Sablon elérési útja'\n            short_names: 'Rövid név'\n            alias: 'Alapértelmezett alias'\n            url_type: 'URL-cím típusa'\n            seo: 'Cikk URL-címének részei'\n            seo_article_title: 'Cikk címe'\n            seo_article_keywords: 'Cikk kulcsszavai'\n            seo_article_topics: Cikktémák\n            edit_aliases: 'Aliasok szerkesztése'\n            edit_languages: 'Nyelvek szerkesztése'\n            moderator_to: 'Moderátor címe'\n            moderator_from: 'A moderálási e-mailek feladójának címe'\n            comments_enabled: 'A hozzászólások engedélyezése?'\n            public_comments_enabled: 'A nyilvános (névtelen) hozzászólások engedélyezése?'\n            comments_article_default_enabled: 'A hozzászólás a cikkekhez engedélyezése alapértelmezésként?'\n            comments_subscribers_moderated: null\n            comments_public_moderated: 'A nyilvános (névtelen) hozzászólások moderálása?'\n            comments_captcha_enabled: 'A CAPTCHA engedélyezése?'\n            comments_spam_blocking_enabled: 'A szemét hozzászólások (belső rendszer) tiltásának engedélyezése?'\n            meta_title: 'Kiadvány címe'\n            meta_keywords: 'Kiadvány kulcsszavai'\n            meta_description: 'Kiadvány leírása'\n    tip1: 'A Newscoop tartalma hierarchikus struktúrába szervezett, ami megfelel a hírlapok és a magazinok hagyományának: kiadványok, számok, rovatok és cikkek. A kiadványokat számok alkotják, a számok pedig cikkeket tartalmazó rovatokból épülnek fel.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.hy.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': null\n'paid subscription': null\n'time units': null\n'one language': null\n'all languages': null\n'Trial subscriptions': null\n'Time unit cost per one section': null\n'Paid subscriptions': null\n'Default time period': null\n'Go To Issues': null\n'Delete publication $1': null\n'No publications.': null\n'Default Site Alias': null\n'URL Type': null\n'Country<BR><SMALL>(click to edit)</SMALL>': null\n'Delete alias $1': null\n'Configure publication': null\n'You do not have the right to edit publication information.': null\n'General attributes': null\n'You do not have the right to change publication information.': null\n'The publication information could not be updated.': null\n'You do not have the right to delete publications.': null\n'Are you sure you want to delete the publication $1?': null\n'Deleting publication': null\n'There are $1 subscription(s) left.': null\n'The publication $1 could not be deleted.': null\n'The publication could not be added.': null\n'You do not have the right to manage publications.': null\n'You must select a country.': null\n'Add new alias': null\n'Alias (click to edit)': null\n'Edit aliases': null\n'Publication Aliases': null\n'Adding new alias': null\n'The site alias $1 could not be added.': null\n'Another alias with the same name exists already.': null\n'Edit alias': null\n'Editing alias': null\n'The site alias $1 could not be modified.': null\n'Are you sure you want to delete the alias $1?': null\n'Deleting alias': null\n'The alias $1 could not be deleted.': null\n'$1 is the default publication alias, it can not be deleted.': null\n'You do not have the right to add publications.': null\n'There are $1 issue(s) left.': null\n'Time Unit': null\nCurrency: null\n'Edit languages': null\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: 'List of publications'\n        edit: 'Edit publication'\n        add: 'Add new publication'\n        remove: 'Remove publication'\n    no_publications: 'No publications.'\n    general_settings: 'General Settings'\n    comments_settings: 'Comments Settings'\n    seo_settings: 'SEO Settings'\n    publication_removed: 'Publication was removed.'\n    publication_saved: 'Publication changes were saved successfully.'\n    remove:\n        cant_be_removed: 'This publication isn''t empty - and can''t be removed.'\n        can_be_removed: 'This publication is empty and can be removed.'\n        left_issues: 'Left issues'\n        left_sections: 'Left sections'\n        left_articles: 'Left articles'\n        show_issues: 'show issues'\n        before_removing: 'Before removing publication you need to remove/move all remaining elements.'\n        you_sure: 'Are you sure that you want to remove publication'\n        remove: 'Remove publication'\n    buttons:\n        addNew: 'Add new publication'\n        listPublications: 'List publications'\n        listIssues: 'List publication issues'\n    table:\n        number: Number\n        name: Name\n        default_alias: 'Default Alias'\n        default_language: 'Default Language'\n        comments_status: 'Comments status'\n        url_type: 'Url type'\n        configure: Configure\n        remove: Remove\n    form_type:\n        label:\n            name: 'Publication Name'\n            template_path: 'Template path'\n            short_names: 'Short name'\n            alias: 'Default alias'\n            url_type: 'Url type'\n            seo: 'Article url parts'\n            seo_article_title: 'Article title'\n            seo_article_keywords: 'Article keywords'\n            seo_article_topics: 'Article topics'\n            edit_aliases: 'Edit aliases'\n            edit_languages: 'Edit languages'\n            moderator_to: 'Moderator address'\n            moderator_from: 'Moderation emails from addres'\n            comments_enabled: 'Comments are enabled?'\n            public_comments_enabled: 'Public (anonymous) comments are enabled?'\n            comments_article_default_enabled: 'Comments for article are enabled by default?'\n            comments_subscribers_moderated: 'Registered users'' comments are moderated?'\n            comments_public_moderated: 'Public (anonymous) comments are moderated?'\n            comments_captcha_enabled: 'Captcha is enabled?'\n            comments_spam_blocking_enabled: 'Comments spam (internal system) blocking is enabled?'\n            meta_title: 'Publication title'\n            meta_keywords: 'Publication keywords'\n            meta_description: 'Publication description'\n    tip1: 'Newscoop content is organized in a hierarchical structure, which conforms to the tradition of newspapers and magazines: Publications, Issues, Sections and Articles. Each publication is made up of issues, each issue is in turn made up of sections, which are comprised of articles.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.hy_AM.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': null\n'paid subscription': null\n'time units': null\n'one language': null\n'all languages': null\n'Trial subscriptions': null\n'Time unit cost per one section': null\n'Paid subscriptions': null\n'Default time period': null\n'Go To Issues': null\n'Delete publication $1': null\n'No publications.': null\n'Default Site Alias': null\n'URL Type': null\n'Country<BR><SMALL>(click to edit)</SMALL>': null\n'Delete alias $1': null\n'Configure publication': null\n'You do not have the right to edit publication information.': null\n'General attributes': null\n'You do not have the right to change publication information.': null\n'The publication information could not be updated.': null\n'You do not have the right to delete publications.': null\n'Are you sure you want to delete the publication $1?': null\n'Deleting publication': null\n'There are $1 subscription(s) left.': null\n'The publication $1 could not be deleted.': null\n'The publication could not be added.': null\n'You do not have the right to manage publications.': null\n'You must select a country.': null\n'Add new alias': null\n'Alias (click to edit)': null\n'Edit aliases': null\n'Publication Aliases': null\n'Adding new alias': null\n'The site alias $1 could not be added.': null\n'Another alias with the same name exists already.': null\n'Edit alias': null\n'Editing alias': null\n'The site alias $1 could not be modified.': null\n'Are you sure you want to delete the alias $1?': null\n'Deleting alias': null\n'The alias $1 could not be deleted.': null\n'$1 is the default publication alias, it can not be deleted.': null\n'You do not have the right to add publications.': null\n'There are $1 issue(s) left.': null\n'Time Unit': null\nCurrency: null\n'Edit languages': null\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.id.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': null\n'paid subscription': null\n'time units': null\n'one language': null\n'all languages': null\n'Trial subscriptions': null\n'Time unit cost per one section': null\n'Paid subscriptions': null\n'Default time period': null\n'Go To Issues': null\n'Delete publication $1': null\n'No publications.': null\n'Default Site Alias': null\n'URL Type': null\n'Country<BR><SMALL>(click to edit)</SMALL>': null\n'Delete alias $1': null\n'Configure publication': null\n'You do not have the right to edit publication information.': null\n'General attributes': null\n'You do not have the right to change publication information.': null\n'The publication information could not be updated.': null\n'You do not have the right to delete publications.': null\n'Are you sure you want to delete the publication $1?': null\n'Deleting publication': null\n'There are $1 subscription(s) left.': null\n'The publication $1 could not be deleted.': null\n'The publication could not be added.': null\n'You do not have the right to manage publications.': null\n'You must select a country.': null\n'Add new alias': null\n'Alias (click to edit)': null\n'Edit aliases': null\n'Publication Aliases': null\n'Adding new alias': null\n'The site alias $1 could not be added.': null\n'Another alias with the same name exists already.': null\n'Edit alias': null\n'Editing alias': null\n'The site alias $1 could not be modified.': null\n'Are you sure you want to delete the alias $1?': null\n'Deleting alias': null\n'The alias $1 could not be deleted.': null\n'$1 is the default publication alias, it can not be deleted.': null\n'You do not have the right to add publications.': null\n'There are $1 issue(s) left.': null\n'Time Unit': null\nCurrency: null\n'Edit languages': null\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.it.yml",
    "content": "'Make sure to enter the Moderator Address below': 'Inserisci qui sotto lindirizzo del moderatore'\n'click to see issues': 'clicca per vedere ledizione'\n'Moderator Address': 'Indirizzo del moderatore'\n'From Address': 'Indirizzo mittente'\n'Use CAPTCHA to prevent spam?': 'Attivo CAPTCHA per prevenire lo SPAM?'\n'Public allowed to comment?': 'Autorizzo i commenti del pubblico?'\n'Enable spam blocking?': 'Abilito il blocco dello SPAM?'\n'The subscription settings for $1 could not be added.': 'Non è stato possibile aggiungere le opzioni per liscrizione di  $1.'\n'The publication name you specified conflicts with publication $1.': 'Il nome scelto per la pubblicazione è in conflitto con la pubblicazione $1.'\n'The publication alias you specified conflicts with publication $1.': 'Lalias della pubblicazione indicato è in conflitto con la pubblicazione $1.'\n'Subscription defaults': 'Valori predefiniti per le iscrizioni'\n'Subscription Settings by Country': 'Impostazioni delle iscrizioni per nazione'\n'Set subscription settings for a country': 'Imposta le opzioni di iscrizione per una nazione'\n'Set subscription settings by country': 'Imposta le opzioni di iscrizione per nazione'\n'Default time periods:': 'Periodi predefiniti:'\n'Country subscription settings updated.': 'Aggiornate le impostazioni delle iscrizioni della nazione.'\n'Country subscription settings deleted.': 'Eliminate le impostazioni delle iscrizioni della nazione.'\n'Change country subscription settings': 'Cambia le impostazioni di iscrizione della nazione'\n'Are you sure you want to delete the subscription settings for $1?': 'Vuoi davvero eliminare le impostazioni di iscrizione per la nazione $1?'\n'Publication updated': 'Pubblicazione aggiornata'\n'Subscriber comments moderated?': 'Modera i commenti degli iscritti?'\n'Public comments moderated?': 'Modera i commenti del pubblico?'\n'Comments enabled?': 'Abilita commenti?'\n'Comments enabled': 'Commenti abilitati'\n'Article comments default to enabled?': 'Abilita i commenti per default?'\n'trial subscription': 'iscrizione di prova'\n'paid subscription': 'iscrizione a pagamento'\n'time units': 'unità di tempo'\n'one language': 'una lingua'\n'all languages': 'tutte le lingue'\n'Trial subscriptions': 'Iscrizioni di prova'\n'Time unit cost per one section': 'Costo dellunità di tempo per una sezione'\n'Paid subscriptions': 'Iscrizioni a pagamento'\n'Default time period': 'Periodo di tempo di default'\n'Go To Issues': 'Vai alle edizioni'\n'Delete publication $1': 'Elimina la pubblicazione $1'\n'No publications.': 'Nessuna pubblicazione.'\n'Default Site Alias': 'Alias predefinito del sito'\n'URL Type': 'Tipo URL'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'Nazione<BR/><SMALL>(click per modificare)</SMALL>'\n'Delete alias $1': 'Elimina alias $1'\n'Configure publication': 'Configura pubblicazione'\n'You do not have the right to edit publication information.': 'Non hai il permesso di modificare le informazioni di pubblicazione.'\n'General attributes': 'Attributi generali'\n'You do not have the right to change publication information.': 'Non hai il permesso di cambiare le informazioni di pubblicazione.'\n'The publication information could not be updated.': 'Non è stato possibile aggiornare le informazioni di pubblicazione.'\n'You do not have the right to delete publications.': 'Non hai il permesso di eliminare le pubblicazioni.'\n'Are you sure you want to delete the publication $1?': 'Vuoi davvero eliminare la pubblicazione $1?'\n'Deleting publication': 'Eliminazione pubblicazione'\n'There are $1 subscription(s) left.': 'Sono rimaste $1 iscrizioni.'\n'The publication $1 could not be deleted.': 'Non è stato possibile cancellare la pubblicazione $1.'\n'The publication could not be added.': 'Non è stato possibile aggiungere la pubblicazione.'\n'You do not have the right to manage publications.': 'Non hai il permesso di gestire le pubblicazioni.'\n'You must select a country.': 'Devi selezionare una nazione.'\n'Add new alias': 'Aggiungi alias'\n'Alias (click to edit)': 'Alias (click per modificare)'\n'Edit aliases': 'Modifica gli alias'\n'Publication Aliases': 'Alias della pubblicazione'\n'Adding new alias': 'Aggiungo un nuovo alias'\n'The site alias $1 could not be added.': 'Non è stato possibile aggiungere lalias del sito $1.'\n'Another alias with the same name exists already.': 'Esiste già un altro alias con lo stesso nome.'\n'Edit alias': 'Modifica alias'\n'Editing alias': 'Modifico lalias'\n'The site alias $1 could not be modified.': 'Non è stato possibile modificare lalias del sito $1.'\n'Are you sure you want to delete the alias $1?': 'Vuoi davvero eliminare lalias $1?'\n'Deleting alias': 'Eliminazione alias'\n'The alias $1 could not be deleted.': 'Non è stato possibile eliminare lalias $1.'\n'$1 is the default publication alias, it can not be deleted.': 'Non si può eliminare lalias $1 perchè è lalias di pubblicazione predefinito.'\n'You do not have the right to add publications.': 'Non hai il permesso di aggiungere pubblicazioni.'\n'There are $1 issue(s) left.': 'Ci sono $1 problemi rimasti.'\n'Time Unit': 'Unità di tempo'\nCurrency: Valuta\n'Edit languages': 'Modifica lingue'\n'Search engine optimization': 'Ottimizazione motori di ricerca (SEO)'\n'Article title': 'Titolo dellarticolo'\n'Article keywords': 'Parole chiave dellarticolo'\n'Article topics': 'Argomenti dellarticolo'\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.ka.yml",
    "content": "'Make sure to enter the Moderator Address below': 'გთხოვთ შეიყვანოთ მოდერატორის მისამართი'\n'click to see issues': 'დააჭირეთ გამოცემების სანახავად'\n'Moderator Address': 'მოდერატორის მისამართი'\n'From Address': მისამართიდან\n'Use CAPTCHA to prevent spam?': 'გსურთ გამოიყენოთ CAPTCHA სპამის თავიდან ასაცილებლად?'\n'Public allowed to comment?': 'ყველამ შეძლოს კომენტარის დატოვება'\n'Enable spam blocking?': 'ჩაირთოს სპამის ბლოკი?'\n'The subscription settings for $1 could not be added.': 'გამოწერის პარამეტრები $1-სთვის ვერ დაემატა.'\n'The publication name you specified conflicts with publication $1.': 'თქვენს მიერ შეყვანილი პუბლიკაციის სახელი ემთვევა $1 პუბლიკაციას.'\n'The publication alias you specified conflicts with publication $1.': 'თქვენს მიერ აღნიშნული პუბლიკაციის ფსევდონიმი ემთხვევა $1 პუბლიკაციას.'\n'Subscription defaults': 'გამოწერის საწყისი პარამეტრები'\n'Subscription Settings by Country': 'გამოწერის პარამეტრები ქვეყნების მიხედვით'\n'Set subscription settings for a country': 'გამოწერის პარამეტრების დაყენება ქვეყნისათვის'\n'Set subscription settings by country': 'გამოწერის პარამეტრების დაყენება ქვეყნის მიხედვით'\n'Default time periods:': 'საწყისი დროის პერიოდები:'\n'Country subscription settings updated.': 'ქვეყნის გამოწერის პარამეტრები განახლდა.'\n'Country subscription settings deleted.': 'ქვეყნის გამოწერის პარამეტრები წაიშალა.'\n'Change country subscription settings': 'ქვეყნის გამოწერის პარამეტრები'\n'Are you sure you want to delete the subscription settings for $1?': 'დარწმუნებული ხართ რომ გსურთ $1-სთვის გამოწერის პარამეტრების წაშლა?'\n'Publication updated': 'პუბლიკაცია განახლდა'\n'Subscriber comments moderated?': 'გამომწერის კომენტარების მოდერაცია?'\n'Public comments moderated?': 'საჯარო კომენტარების მოდერაცია?'\n'Comments enabled?': 'ჩაირთოს კომენტარები?'\n'Comments enabled': 'კომენტარები ჩაირთო'\n'Article comments default to enabled?': 'სტატიის კომენტარების საწყისი პარამეტრები ჩაირთოს?'\n'trial subscription': 'საცდელი გამოწერა'\n'paid subscription': 'ფასიანი გამოწერა'\n'time units': 'დროის ერთეულები'\n'one language': 'ერთი ენა'\n'all languages': 'ყველა ენა'\n'Trial subscriptions': 'საცდელი გამოწერები'\n'Time unit cost per one section': 'დროის ერთეულის ფასი ერთი სექციისათვის'\n'Paid subscriptions': 'ფასიანი გამოწერები'\n'Default time period': 'საწყისი დროის პერიოდი'\n'Go To Issues': 'გამოცემებზე გადასვლა'\n'Delete publication $1': '$1 პუბლიკაციის წაშლა'\n'No publications.': 'პუბლიკაციები არ არსებობს.'\n'Default Site Alias': 'ნაგულისხმევი გვერდის ფსევდონიმი'\n'URL Type': 'URL-ის ტიპი'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'ქვეყანა<BR><SMALL>(დააჭირეთ რედაქტირებისთვის)</SMALL>'\n'Delete alias $1': '$1 ფსევდონიმის წაშლა'\n'Configure publication': 'პუბლიკაციის კონფიგურაცია'\n'You do not have the right to edit publication information.': 'თქვენ არ გაქვთ პუბლიკაციის ინფორმაციის რედაქტირების უფლება'\n'General attributes': 'ზოგადი ატრიბუტები'\n'You do not have the right to change publication information.': 'თქვენ არ გაქვთ პუბლიკაციის ინფორმაციის რედაქტირების უფლება'\n'The publication information could not be updated.': 'პუბლიკაციის ინფორმაცია არ განახლდა'\n'You do not have the right to delete publications.': 'თქვენ არ გაქვთ პუბლიკაციების წაშლის უფლება.'\n'Are you sure you want to delete the publication $1?': 'დარწმუნებული ხართ რომ გსურთ $1 პუბლიკაციის წაშლა?'\n'Deleting publication': 'პუბლიკაციის წაშლა'\n'There are $1 subscription(s) left.': 'დარჩენილია $1 გამოწერა(ები)'\n'The publication $1 could not be deleted.': '$1 პუბლიკაცია ვერ წაიშალა'\n'The publication could not be added.': 'პუბლიკაცია ვერ დაემატა.'\n'You do not have the right to manage publications.': 'თქვენ არ გაქვთ პუბლიკაციების მართვის უფლება.'\n'You must select a country.': 'უნდა აირჩიოთ ქვეყანა.'\n'Add new alias': 'ახალი ფსევდონიმის დამატება'\n'Alias (click to edit)': 'ფსევდონიმები (რედაქტირება)'\n'Edit aliases': 'ფსევდონიმების რედაქტირება'\n'Publication Aliases': 'პუბლიკაციის ფსევდონიმები'\n'Adding new alias': 'ახალი ფსევდონიმის დამატება'\n'The site alias $1 could not be added.': 'გვერდის $1 ფსევდონიმი ვერ დაემატა.'\n'Another alias with the same name exists already.': 'მსგავსი სახელწოდების ფსევდონიმი უკვე არსებობს.'\n'Edit alias': 'ფსევდონიმების რედაქტირება'\n'Editing alias': 'ფსევდონიმების რედაქტირება'\n'The site alias $1 could not be modified.': 'გვერდის $1 ფსევდონიმი ვერ მოდიფიცირდა.'\n'Are you sure you want to delete the alias $1?': 'დარწმუნებული ხართ რომ გსურთ $1 ფსევდონიმის წაშლა?'\n'Deleting alias': 'ფსევდონიმის წაშლა'\n'The alias $1 could not be deleted.': '$1 ფსევდონიმი ვერ წაიშალა.'\n'$1 is the default publication alias, it can not be deleted.': '$1 არის ნაგულისხმევი პუბლიკაციის ფსევდონიმი, მისი წაშლა შეუძლებელია. '\n'You do not have the right to add publications.': 'თქვენ არ გაქვთ პუბლიკაციის დამატების ულფება.'\n'There are $1 issue(s) left.': 'დარჩა $1 ნომერი/ჟურნალი/გამოშვება'\n'Time Unit': 'დროის მონაკვეთი'\nCurrency: ვალუტა\n'Edit languages': 'ქვეყნების რედაქტირება'\n'Search engine optimization': 'საძიებო სისტემის ოპტიმიზაცია'\n'Article title': 'სტატიის სათაური'\n'Article keywords': 'სტატიის მთავარი სიტყვები'\n'Article topics': 'სტატიის თემა'\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.ko.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': '시험 구독'\n'paid subscription': '정기 구독'\n'time units': '시간 단위'\n'one language': '하나 언어'\n'all languages': '모든 언어'\n'Trial subscriptions': '시험 구독'\n'Time unit cost per one section': '한 섹션당 시간 단가'\n'Paid subscriptions': '정기 구독'\n'Default time period': '기본 시간 기간'\n'Go To Issues': '이슈로 가기 '\n'Delete publication $1': '출판 $1 삭제'\n'No publications.': 출판안됨\n'Default Site Alias': 기본사이트아리아스\n'URL Type': URL타입\n'Country<BR><SMALL>(click to edit)</SMALL>': null\n'Delete alias $1': '아리아스 $1 삭제'\n'Configure publication': '출판 구성'\n'You do not have the right to edit publication information.': '출판정보를 수정할 권한이 없습니다.'\n'General attributes': '일반적 속성'\n'You do not have the right to change publication information.': '출판 정보를 변경할 권한이 없습니다.'\n'The publication information could not be updated.': '출판 정보를 업데이트 할 수 없습니다.'\n'You do not have the right to delete publications.': '출판사이트를 삭제할 권한이 없습니다.'\n'Are you sure you want to delete the publication $1?': '출판사이트 $1 을 확실히 삭제합니까?'\n'Deleting publication': '출판사이트 삭제중'\n'There are $1 subscription(s) left.': '출판사이트 $1 이 남아있슴.'\n'The publication $1 could not be deleted.': '출판사이트 $1 을 삭제할 수 없습니다.'\n'The publication could not be added.': '출판사이트를 추가할 수 없습니다.'\n'You do not have the right to manage publications.': '출판사이트를 관리할 권한이 없습니다.'\n'You must select a country.': '국가를 선택하시오.'\n'Add new alias': '새로운 아리아스 추가'\n'Alias (click to edit)': '아리아스 (수정하려면 클릭)'\n'Edit aliases': '아리아스 수정'\n'Publication Aliases': '출판 아리아스'\n'Adding new alias': '새로운 아리아스 추가'\n'The site alias $1 could not be added.': '사이트 아리아스 $1 을 추가할 수 없습니다. '\n'Another alias with the same name exists already.': '같은 이름의 다른 아리아스가 이미 존재합니다. '\n'Edit alias': '아리아스 수정'\n'Editing alias': '아리아스 수정중'\n'The site alias $1 could not be modified.': '사이트 아리아스 $1 은 수정할 수 없습니다. '\n'Are you sure you want to delete the alias $1?': '아리아스 $1을 확실히 삭제합니까?'\n'Deleting alias': '아리아스 삭제중'\n'The alias $1 could not be deleted.': '아리아스 $1 을 삭제할 수 없습니다. '\n'$1 is the default publication alias, it can not be deleted.': '$1 이 기본 출판 아리아스입니다. 삭제할 수 없습니다. '\n'You do not have the right to add publications.': '출판사이트를 추가할 권한이 없습니다.'\n'There are $1 issue(s) left.': '$ 1 이슈가 남아 있슴.'\n'Time Unit': '시간 단위'\nCurrency: 통화\n'Edit languages': '언어 편집'\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.ku.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': null\n'paid subscription': null\n'time units': null\n'one language': null\n'all languages': null\n'Trial subscriptions': null\n'Time unit cost per one section': null\n'Paid subscriptions': null\n'Default time period': null\n'Go To Issues': null\n'Delete publication $1': null\n'No publications.': null\n'Default Site Alias': null\n'URL Type': null\n'Country<BR><SMALL>(click to edit)</SMALL>': null\n'Delete alias $1': null\n'Configure publication': null\n'You do not have the right to edit publication information.': null\n'General attributes': null\n'You do not have the right to change publication information.': null\n'The publication information could not be updated.': null\n'You do not have the right to delete publications.': null\n'Are you sure you want to delete the publication $1?': null\n'Deleting publication': null\n'There are $1 subscription(s) left.': null\n'The publication $1 could not be deleted.': null\n'The publication could not be added.': null\n'You do not have the right to manage publications.': null\n'You must select a country.': null\n'Add new alias': null\n'Alias (click to edit)': null\n'Edit aliases': null\n'Publication Aliases': null\n'Adding new alias': null\n'The site alias $1 could not be added.': null\n'Another alias with the same name exists already.': null\n'Edit alias': null\n'Editing alias': null\n'The site alias $1 could not be modified.': null\n'Are you sure you want to delete the alias $1?': null\n'Deleting alias': null\n'The alias $1 could not be deleted.': null\n'$1 is the default publication alias, it can not be deleted.': null\n'You do not have the right to add publications.': null\n'There are $1 issue(s) left.': null\n'Time Unit': null\nCurrency: null\n'Edit languages': null\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.lv.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': null\n'paid subscription': null\n'time units': null\n'one language': null\n'all languages': null\n'Trial subscriptions': null\n'Time unit cost per one section': null\n'Paid subscriptions': null\n'Default time period': null\n'Go To Issues': null\n'Delete publication $1': null\n'No publications.': null\n'Default Site Alias': null\n'URL Type': null\n'Country<BR><SMALL>(click to edit)</SMALL>': null\n'Delete alias $1': null\n'Configure publication': null\n'You do not have the right to edit publication information.': null\n'General attributes': null\n'You do not have the right to change publication information.': null\n'The publication information could not be updated.': null\n'You do not have the right to delete publications.': null\n'Are you sure you want to delete the publication $1?': null\n'Deleting publication': null\n'There are $1 subscription(s) left.': null\n'The publication $1 could not be deleted.': null\n'The publication could not be added.': null\n'You do not have the right to manage publications.': null\n'You must select a country.': null\n'Add new alias': null\n'Alias (click to edit)': null\n'Edit aliases': null\n'Publication Aliases': null\n'Adding new alias': null\n'The site alias $1 could not be added.': null\n'Another alias with the same name exists already.': null\n'Edit alias': null\n'Editing alias': null\n'The site alias $1 could not be modified.': null\n'Are you sure you want to delete the alias $1?': null\n'Deleting alias': null\n'The alias $1 could not be deleted.': null\n'$1 is the default publication alias, it can not be deleted.': null\n'You do not have the right to add publications.': null\n'There are $1 issue(s) left.': null\n'Time Unit': null\nCurrency: null\n'Edit languages': null\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.mr.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': null\n'paid subscription': null\n'time units': null\n'one language': null\n'all languages': null\n'Trial subscriptions': null\n'Time unit cost per one section': null\n'Paid subscriptions': null\n'Default time period': null\n'Go To Issues': null\n'Delete publication $1': null\n'No publications.': null\n'Default Site Alias': null\n'URL Type': null\n'Country<BR><SMALL>(click to edit)</SMALL>': null\n'Delete alias $1': null\n'Configure publication': null\n'You do not have the right to edit publication information.': null\n'General attributes': null\n'You do not have the right to change publication information.': null\n'The publication information could not be updated.': null\n'You do not have the right to delete publications.': null\n'Are you sure you want to delete the publication $1?': null\n'Deleting publication': null\n'There are $1 subscription(s) left.': null\n'The publication $1 could not be deleted.': null\n'The publication could not be added.': null\n'You do not have the right to manage publications.': null\n'You must select a country.': null\n'Add new alias': null\n'Alias (click to edit)': null\n'Edit aliases': null\n'Publication Aliases': null\n'Adding new alias': null\n'The site alias $1 could not be added.': null\n'Another alias with the same name exists already.': null\n'Edit alias': null\n'Editing alias': null\n'The site alias $1 could not be modified.': null\n'Are you sure you want to delete the alias $1?': null\n'Deleting alias': null\n'The alias $1 could not be deleted.': null\n'$1 is the default publication alias, it can not be deleted.': null\n'You do not have the right to add publications.': null\n'There are $1 issue(s) left.': null\n'Time Unit': null\nCurrency: null\n'Edit languages': null\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.nb_NO.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': null\n'paid subscription': null\n'time units': null\n'one language': null\n'all languages': null\n'Trial subscriptions': null\n'Time unit cost per one section': null\n'Paid subscriptions': null\n'Default time period': null\n'Go To Issues': null\n'Delete publication $1': null\n'No publications.': null\n'Default Site Alias': null\n'URL Type': null\n'Country<BR><SMALL>(click to edit)</SMALL>': null\n'Delete alias $1': null\n'Configure publication': null\n'You do not have the right to edit publication information.': null\n'General attributes': null\n'You do not have the right to change publication information.': null\n'The publication information could not be updated.': null\n'You do not have the right to delete publications.': null\n'Are you sure you want to delete the publication $1?': null\n'Deleting publication': null\n'There are $1 subscription(s) left.': null\n'The publication $1 could not be deleted.': null\n'The publication could not be added.': null\n'You do not have the right to manage publications.': null\n'You must select a country.': null\n'Add new alias': null\n'Alias (click to edit)': null\n'Edit aliases': null\n'Publication Aliases': null\n'Adding new alias': null\n'The site alias $1 could not be added.': null\n'Another alias with the same name exists already.': null\n'Edit alias': null\n'Editing alias': null\n'The site alias $1 could not be modified.': null\n'Are you sure you want to delete the alias $1?': null\n'Deleting alias': null\n'The alias $1 could not be deleted.': null\n'$1 is the default publication alias, it can not be deleted.': null\n'You do not have the right to add publications.': null\n'There are $1 issue(s) left.': null\n'Time Unit': null\nCurrency: null\n'Edit languages': null\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.nl.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': 'proef abonnement'\n'paid subscription': 'betaald abonnement'\n'time units': 'tijd eenheden'\n'one language': 'een taal'\n'all languages': 'alle talen'\n'Trial subscriptions': 'Proef abonnementen'\n'Time unit cost per one section': 'Tijd eenheid kosten per een sectie'\n'Paid subscriptions': 'Betaalde abonnementen'\n'Default time period': 'Standaard tijd periode'\n'Go To Issues': 'Ga na Uitgaven'\n'Delete publication $1': 'Verwijder publicatie $1'\n'No publications.': 'Geen publicaties.'\n'Default Site Alias': 'Standaard Site Alias'\n'URL Type': 'URL Type'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'Land<BR><SMALL>(klik om te bewerken)</SMALL>'\n'Delete alias $1': 'Verwijder alias $1'\n'Configure publication': 'Configureer publicatie'\n'You do not have the right to edit publication information.': null\n'General attributes': 'Algemene attributen'\n'You do not have the right to change publication information.': null\n'The publication information could not be updated.': 'The publicatie informatie kan niet worden geupdate.'\n'You do not have the right to delete publications.': null\n'Are you sure you want to delete the publication $1?': null\n'Deleting publication': 'Publicatie wordt verwijderd'\n'There are $1 subscription(s) left.': 'Er zijn $1 abonnement(en) over.'\n'The publication $1 could not be deleted.': 'De publicatie $1 kan niet worden verwijderd.'\n'The publication could not be added.': 'De publicatie kan niet worden toegevoegd.'\n'You do not have the right to manage publications.': null\n'You must select a country.': null\n'Add new alias': 'Voeg nieuwe alias toe'\n'Alias (click to edit)': 'Alias (klik om te bewerken)'\n'Edit aliases': 'Bewerk aliasen'\n'Publication Aliases': 'Publicatie Aliasen'\n'Adding new alias': 'Nieuwe alias wordt toegevoegd'\n'The site alias $1 could not be added.': 'De site alias $1 kan niet worden toegevoegd'\n'Another alias with the same name exists already.': 'Een andere alias met de zelfde naam bestaat al.'\n'Edit alias': 'Bewerk alias'\n'Editing alias': 'Alias wordt bewerkt'\n'The site alias $1 could not be modified.': 'De site alias $1 kan niet worden gewijzigd.'\n'Are you sure you want to delete the alias $1?': null\n'Deleting alias': 'Alias wordt verwijderd?'\n'The alias $1 could not be deleted.': 'De alias $1 kan niet worden verwijderd.'\n'$1 is the default publication alias, it can not be deleted.': '$1 is de standaard publicatie alias, het kan niet worden verwijderd.'\n'You do not have the right to add publications.': null\n'There are $1 issue(s) left.': 'Er zijn $1 uitgave(s) over.'\n'Time Unit': Tijdseenheid\nCurrency: Munteenheid\n'Edit languages': 'Bewerk talen'\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.pa.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': null\n'paid subscription': null\n'time units': null\n'one language': null\n'all languages': null\n'Trial subscriptions': null\n'Time unit cost per one section': null\n'Paid subscriptions': null\n'Default time period': null\n'Go To Issues': null\n'Delete publication $1': null\n'No publications.': null\n'Default Site Alias': null\n'URL Type': null\n'Country<BR><SMALL>(click to edit)</SMALL>': null\n'Delete alias $1': null\n'Configure publication': null\n'You do not have the right to edit publication information.': null\n'General attributes': null\n'You do not have the right to change publication information.': null\n'The publication information could not be updated.': null\n'You do not have the right to delete publications.': null\n'Are you sure you want to delete the publication $1?': null\n'Deleting publication': null\n'There are $1 subscription(s) left.': null\n'The publication $1 could not be deleted.': null\n'The publication could not be added.': null\n'You do not have the right to manage publications.': null\n'You must select a country.': null\n'Add new alias': null\n'Alias (click to edit)': null\n'Edit aliases': null\n'Publication Aliases': null\n'Adding new alias': null\n'The site alias $1 could not be added.': null\n'Another alias with the same name exists already.': null\n'Edit alias': null\n'Editing alias': null\n'The site alias $1 could not be modified.': null\n'Are you sure you want to delete the alias $1?': null\n'Deleting alias': null\n'The alias $1 could not be deleted.': null\n'$1 is the default publication alias, it can not be deleted.': null\n'You do not have the right to add publications.': null\n'There are $1 issue(s) left.': null\n'Time Unit': null\nCurrency: null\n'Edit languages': null\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.pl.yml",
    "content": "'Make sure to enter the Moderator Address below': 'Koniecznie podaj Adres Moderatora poniżej'\n'click to see issues': 'kliknij by zobaczyć wydania'\n'Moderator Address': 'Adres moderatora'\n'From Address': 'Od adresu'\n'Use CAPTCHA to prevent spam?': 'Użyj CAPTCHA aby zapobiec spamowi?'\n'Public allowed to comment?': 'Komentarze publiczne dozwolone?'\n'Enable spam blocking?': 'Włącz blokowanie samu?'\n'The subscription settings for $1 could not be added.': 'Ustawienia subskrypcji dla $1 nie zostały dodane.'\n'The publication name you specified conflicts with publication $1.': 'Nazwa publikacji jest w konflikcie z publikacją $1.'\n'The publication alias you specified conflicts with publication $1.': 'Alias publikacji jest w konflikcie z publikacją $1.'\n'Subscription defaults': 'Domyślne subskrypcje'\n'Subscription Settings by Country': 'Ustawienia Subskrycji przez Kraj'\n'Set subscription settings for a country': 'Ustaw subskrypcję dla kraju'\n'Set subscription settings by country': 'Ustaw subskrypcję poprzez kraj'\n'Default time periods:': 'Domyślne interwały czasowe:'\n'Country subscription settings updated.': 'Ustawienia subskrypcji kraju zaktualizowane.'\n'Country subscription settings deleted.': 'Ustawienia subskrypcji kraju usunięte.'\n'Change country subscription settings': 'Zmień preferensje subskrypcji kraju'\n'Are you sure you want to delete the subscription settings for $1?': 'Czy na pewnoc chcesz usunąć ustawienia subskrypcji $1?'\n'Publication updated': 'Publikacja uaktualniona'\n'Subscriber comments moderated?': 'Moderacja komentarzy subskrynentów?'\n'Public comments moderated?': 'Moderacja publicznych komentarzy?'\n'Comments enabled?': 'Komentarze aktywne?'\n'Comments enabled': 'Komentarze włączone'\n'Article comments default to enabled?': 'Komentarze do artykuły domyślnie włączone?'\n'trial subscription': 'tymczasowe subskrypcje'\n'paid subscription': 'płatne subskrypcje'\n'time units': 'jednostki czasu'\n'one language': 'jeden język'\n'all languages': 'wszystkie języki'\n'Trial subscriptions': 'Tymczasowe subskrypcje'\n'Time unit cost per one section': 'Kosz jednostki czasu na sekcję'\n'Paid subscriptions': 'Płatne subskrypcje'\n'Default time period': 'Domyślny okres czasu'\n'Go To Issues': 'Idź do wydań'\n'Delete publication $1': 'Usuń publikację $1'\n'No publications.': 'Brak publikacji.'\n'Default Site Alias': 'Domyślny alias strony'\n'URL Type': 'Typ URL'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'Kraj<BR><SMALL>(kliknij aby edytować)</SMALL>'\n'Delete alias $1': 'Usuń alias $1'\n'Configure publication': 'Konfiguruj publikację'\n'You do not have the right to edit publication information.': 'Nie masz praw aby edytować informacje o publikacji'\n'General attributes': 'Generalne właściwości'\n'You do not have the right to change publication information.': 'Nie masz praw aby zmieniać informacje o publikacji.'\n'The publication information could not be updated.': 'Informacje o publikacji nie zostały zaktualizowane.'\n'You do not have the right to delete publications.': 'Nie masz praw aby usuwać publikacje.'\n'Are you sure you want to delete the publication $1?': 'Czy na pewno chcesz usunąć publikację $1?'\n'Deleting publication': 'Usuwanie publikacji'\n'There are $1 subscription(s) left.': 'Pozostało subskrypcji: $1.'\n'The publication $1 could not be deleted.': 'Publikacja $1 nie została skasowana.'\n'The publication could not be added.': 'Publikacja nie została dodana.'\n'You do not have the right to manage publications.': 'Nie masz praw aby zarządzać publikacjami.'\n'You must select a country.': 'Musisz wybrać kraj.'\n'Add new alias': 'Dodaj nowy alias'\n'Alias (click to edit)': 'Alias (kliknij aby edytować)'\n'Edit aliases': 'Edytuj aliasy'\n'Publication Aliases': 'Aliasy publikacji'\n'Adding new alias': 'Dodawanie nowego aliasu'\n'The site alias $1 could not be added.': 'Alias strony $1 nie został dodany.'\n'Another alias with the same name exists already.': 'Inny alias o tej samej nazwie już istnieje.'\n'Edit alias': 'Edytuj alias'\n'Editing alias': 'Edytowanie aliasu'\n'The site alias $1 could not be modified.': 'Aliast strony $1 nie może zostać zmodyfikowany.'\n'Are you sure you want to delete the alias $1?': 'Czy na pewno chcesz usunąć alias $1?'\n'Deleting alias': 'Kasowanie aliasu'\n'The alias $1 could not be deleted.': 'Alias $1 nie może zostać skasowany.'\n'$1 is the default publication alias, it can not be deleted.': '$1 to domyślny alias publikacji, nie może zostać skasowany.'\n'You do not have the right to add publications.': 'Nie masz praw aby dodawać publikacje.'\n'There are $1 issue(s) left.': 'Pozostało wydań: $1'\n'Time Unit': 'Jednostka czasu'\nCurrency: Waluta\n'Edit languages': 'Edytuj języki'\n'Search engine optimization': SEO\n'Article title': 'Tytuł artykułu'\n'Article keywords': 'Słowa kluczowe artykułu'\n'Article topics': 'Tematy artykułów'\npublications:\n    title:\n        list: 'Lista publikacji'\n        edit: 'Edytuj publikację'\n        add: 'Dodaj nową publikację'\n        remove: 'Usuń publikację'\n    no_publications: 'Brak publikacji.'\n    general_settings: 'Ustawienia główne'\n    comments_settings: 'Ustawienia komentarzy'\n    seo_settings: 'Ustawienia SEO'\n    front_page_theme_settings: 'Ustawienia strony startowej w szablonie'\n    publication_removed: 'Publikacja została usunięta'\n    publication_saved: 'Zmiany w publikacji zostały zapisane pomyślnie.'\n    remove:\n        cant_be_removed: 'Ta publikacja nie jest pusta, i nie może zostać usunięta.'\n        can_be_removed: 'Ta publikacja jest pusta, i może zostać usunięta.'\n        left_issues: 'Pozostałe wydania'\n        left_sections: 'Pozostałe sekcje'\n        left_articles: 'Pozostałe artykuły'\n        show_issues: 'pokaż wydania'\n        before_removing: 'Przed usunięciem publikacji musisz najpierw usunąć wszystkie pozostałe elementy.'\n        you_sure: 'Czy na pewno chcesz usunąć publikację'\n        remove: 'Usuń publikację'\n    buttons:\n        addNew: 'Dodaj nową publikację'\n        listPublications: 'Lista publikacji'\n        listIssues: 'Lista wydań w publikacji'\n    table:\n        number: Numer\n        name: Nazwa\n        default_alias: 'Domyślny alias'\n        default_language: 'Domyślny język'\n        comments_status: 'Status komentarzy'\n        url_type: 'Typ URL'\n        configure: Konfiguracja\n        remove: Usuń\n    form_type:\n        label:\n            follow_current_issue_theme: 'Używaj szablonu z aktualnego wydania'\n            name: 'Nazwa publikacji'\n            template_path: 'ścieżka szablonu'\n            short_names: 'Krótkie nazwy'\n            alias: 'Domyślny alias strony'\n            url_type: 'Typ URL'\n            seo: 'Elementy adresu url artykułu'\n            seo_article_title: 'Tytuł artykułu'\n            seo_article_keywords: 'Słowa kluczowe artykułu'\n            seo_article_topics: 'Tematy artykułów'\n            edit_aliases: 'Edytuj aliasy'\n            edit_languages: 'Edytuj języki'\n            moderator_to: 'Adres moderatora'\n            moderator_from: 'Adres moderatora w polu \"od\"'\n            comments_enabled: 'Komentarze włączone?'\n            public_comments_enabled: 'Publiczne (anonimowe) komentarze są włączone?'\n            comments_article_default_enabled: 'Komentarze do artykułu są domyślnie włączone?'\n            comments_subscribers_moderated: 'Moderacja komentarzy zarejestrowanych użytkowników?'\n            comments_public_moderated: 'Publiczne (anonimowe) komentarze są moderowane?'\n            comments_captcha_enabled: 'Captcha jest włączona?'\n            comments_spam_blocking_enabled: 'Wewnętrzny system blokowania spamowych komentarzy jest włączony?'\n            meta_title: 'Tytuł publikacji'\n            meta_keywords: 'Słowa kluczowe dla publikacji'\n            meta_description: 'Opis publikacji'\n    tip1: 'Treści w Newscoopie zorganizowane są w hierarchicznej strukturze, która wywodzi się z tradycyjnych gazet i magazynów: Publikacje, Wydania, Sekcje i Artykuły. Każda publikacja zawiera wydania, każde wydanie jest złożone z sekcji, sekcje zawierają artykuły.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.ps.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': null\n'paid subscription': null\n'time units': null\n'one language': null\n'all languages': null\n'Trial subscriptions': null\n'Time unit cost per one section': null\n'Paid subscriptions': null\n'Default time period': null\n'Go To Issues': null\n'Delete publication $1': null\n'No publications.': null\n'Default Site Alias': null\n'URL Type': null\n'Country<BR><SMALL>(click to edit)</SMALL>': null\n'Delete alias $1': null\n'Configure publication': null\n'You do not have the right to edit publication information.': null\n'General attributes': null\n'You do not have the right to change publication information.': null\n'The publication information could not be updated.': null\n'You do not have the right to delete publications.': null\n'Are you sure you want to delete the publication $1?': null\n'Deleting publication': null\n'There are $1 subscription(s) left.': null\n'The publication $1 could not be deleted.': null\n'The publication could not be added.': null\n'You do not have the right to manage publications.': null\n'You must select a country.': null\n'Add new alias': null\n'Alias (click to edit)': null\n'Edit aliases': null\n'Publication Aliases': null\n'Adding new alias': null\n'The site alias $1 could not be added.': null\n'Another alias with the same name exists already.': null\n'Edit alias': null\n'Editing alias': null\n'The site alias $1 could not be modified.': null\n'Are you sure you want to delete the alias $1?': null\n'Deleting alias': null\n'The alias $1 could not be deleted.': null\n'$1 is the default publication alias, it can not be deleted.': null\n'You do not have the right to add publications.': null\n'There are $1 issue(s) left.': null\n'Time Unit': null\nCurrency: null\n'Edit languages': null\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.pt.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': 'Assinatura para demonstração'\n'paid subscription': 'Assinatura paga'\n'time units': 'unidade de tempo'\n'one language': 'um idioma'\n'all languages': 'todos os idiomas'\n'Trial subscriptions': 'Assinatura para demonstração'\n'Time unit cost per one section': 'Custo por unidade de tempo por secção'\n'Paid subscriptions': 'Assinaturas pagas'\n'Default time period': 'Periodo de tempo por defeito'\n'Go To Issues': 'Ir para edições'\n'Delete publication $1': 'Apagar Publicação'\n'No publications.': 'Não existem Publicações'\n'Default Site Alias': 'Alias do Site'\n'URL Type': 'Tipo de Endereço URL'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'País (Carregue para Alterar)'\n'Delete alias $1': 'Apagar $1'\n'Configure publication': 'Configurar Publicação'\n'You do not have the right to edit publication information.': 'Não tem permissão para Alterar Detalhes de Publicação'\n'General attributes': 'Definições Gerais'\n'You do not have the right to change publication information.': 'Não tem permissão para Alterar Detalhes de Publicação'\n'The publication information could not be updated.': 'Os detalhes de Publicação não podem ser alterados'\n'You do not have the right to delete publications.': 'Não tem permissão para Apagar Publicações'\n'Are you sure you want to delete the publication $1?': 'Confirma o apagamento da Publicação $1?'\n'Deleting publication': 'Apagando Publicação'\n'There are $1 subscription(s) left.': 'Existe(m) ainda $1 Assinatura(s)'\n'The publication $1 could not be deleted.': 'A Publicação $1 não pode ser Apagada'\n'The publication could not be added.': 'A Publicação não pode ser Criada'\n'You do not have the right to manage publications.': 'Não tem permissões para gerir Publicações'\n'You must select a country.': 'Tem de escolher um País'\n'Add new alias': 'Adicionar novo Alias'\n'Alias (click to edit)': 'Alias (carregue para editar)'\n'Edit aliases': 'Editar Alias'\n'Publication Aliases': 'Alias de Publicações'\n'Adding new alias': 'Adicionar Alias'\n'The site alias $1 could not be added.': 'O Alias $1 não pode ser adicionado.'\n'Another alias with the same name exists already.': 'Ja existe um alias idêntico.'\n'Edit alias': 'Editar Alias.'\n'Editing alias': 'Editando Alias'\n'The site alias $1 could not be modified.': 'O Alias $1 não pode ser modificado.'\n'Are you sure you want to delete the alias $1?': 'Confirma eliminação do alias $1?'\n'Deleting alias': 'Eliminando Alias'\n'The alias $1 could not be deleted.': 'O Alias $1 não pode ser eliminado.'\n'$1 is the default publication alias, it can not be deleted.': '$1 é o alias principal da publicação e como tal não pode ser eliminado.'\n'You do not have the right to add publications.': 'Nao tem permissões para adicionar publicações.'\n'There are $1 issue(s) left.': 'Existe(m) ainda $1 Edição(ões).'\n'Time Unit': 'Unidade de Tempo'\nCurrency: Moeda\n'Edit languages': 'Editar Idiomas'\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.pt_BR.yml",
    "content": "'Make sure to enter the Moderator Address below': 'Não deixe de digitar o Endereço do moderador abaixo'\n'click to see issues': 'clique para ver edições'\n'Moderator Address': 'Endereço do moderador'\n'From Address': 'Do endereço'\n'Use CAPTCHA to prevent spam?': 'Usar CAPTCHA para prevenir spam?'\n'Public allowed to comment?': 'Público pode comentar?'\n'Enable spam blocking?': 'Habilitar bloqueio do spam?'\n'The subscription settings for $1 could not be added.': 'As preferências de assinatura para $1 não podiam ser adicionadas.'\n'The publication name you specified conflicts with publication $1.': 'O nome da publicação que você deu é conflitante com publicação $1.'\n'The publication alias you specified conflicts with publication $1.': 'O apelido (alias) da publicação que você deu é conflitante com publicação $1.'\n'Subscription defaults': 'Padrão de assinatura'\n'Subscription Settings by Country': 'Preferências de assinatura por país'\n'Set subscription settings for a country': 'Definir preferências de assinatura para um país'\n'Set subscription settings by country': 'Definir preferências de assinatura por país'\n'Default time periods:': 'Periodos de tempo padrão:'\n'Country subscription settings updated.': 'Preferências de assinatura do país atualizadas.'\n'Country subscription settings deleted.': 'Preferências de assinatura do país apagadas.'\n'Change country subscription settings': 'Modificar preferências de assinatura do país'\n'Are you sure you want to delete the subscription settings for $1?': 'Tem certeza que quer apagar as preferências de assinatura para $1?'\n'Publication updated': 'Publicação atualizada'\n'Subscriber comments moderated?': 'Comentários dos assinantes moderados?'\n'Public comments moderated?': 'Comentários públicos moderados?'\n'Comments enabled?': 'Comentários ativados?'\n'Comments enabled': 'Comentários ativados'\n'Article comments default to enabled?': 'Comentários de artigos ativados como padrão?'\n'trial subscription': 'assinatura de teste'\n'paid subscription': 'assinatura paga'\n'time units': 'unidades de tempo'\n'one language': 'um idioma'\n'all languages': 'todos os idiomas'\n'Trial subscriptions': 'Assinaturas de teste'\n'Time unit cost per one section': 'Custo de unidade de tempo por seção'\n'Paid subscriptions': 'Assinaturas pagas'\n'Default time period': 'Periodo de tempo padrão'\n'Go To Issues': 'Ir para edições'\n'Delete publication $1': 'Apagar publicação $1'\n'No publications.': 'Não há publicações.'\n'Default Site Alias': 'Apelido (alias) padrão do site'\n'URL Type': 'Tipo de endereço URL'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'País<BR><SMALL>(clique para editar)</SMALL>'\n'Delete alias $1': 'Apagar apelido (alias)  $1'\n'Configure publication': 'Configurar publicação'\n'You do not have the right to edit publication information.': 'Você não tem permissão para editar detalhes de publicação'\n'General attributes': 'Definições gerais'\n'You do not have the right to change publication information.': 'Você não tem permissão para alterar detalhes de publicação'\n'The publication information could not be updated.': 'Os detalhes de publicação não podiam ser atualizados'\n'You do not have the right to delete publications.': 'Você não tem permissão para apagar publicações'\n'Are you sure you want to delete the publication $1?': 'Tem certeza que quer apagar a publicação $1?'\n'Deleting publication': 'Apagando publicação'\n'There are $1 subscription(s) left.': 'Existe(m) ainda $1 assinatura(s)'\n'The publication $1 could not be deleted.': 'A publicação $1 não pôde ser apagada'\n'The publication could not be added.': 'A publicação não pôde ser criada'\n'You do not have the right to manage publications.': 'Você não tem permissão para gerenciar publicações.'\n'You must select a country.': 'Tem que escolher um país'\n'Add new alias': 'Adicionar novo apelido (alias)'\n'Alias (click to edit)': 'Apelido (alias) (clique para editar)'\n'Edit aliases': 'Editar apelidos (aliases)'\n'Publication Aliases': 'Apelidos (aliases) de Publicações'\n'Adding new alias': 'Adicionando o novo apelido (alias)'\n'The site alias $1 could not be added.': 'O apelido (alias) $1 não pôde ser adicionado.'\n'Another alias with the same name exists already.': 'Já existe um apelido (alias) idêntico.'\n'Edit alias': 'Editar apelido (alias)'\n'Editing alias': 'Editando apelido (alias)'\n'The site alias $1 could not be modified.': 'O apelido (alias) $1 não pôde ser modificado.'\n'Are you sure you want to delete the alias $1?': 'Tem certeza que quer apagar o apelido (alias) $1?'\n'Deleting alias': 'Apagando apelido (alias)'\n'The alias $1 could not be deleted.': 'O apelido (alias) $1 não pode ser apagado.'\n'$1 is the default publication alias, it can not be deleted.': '$1 é o alias padrão da publicação, não pode ser apagado.'\n'You do not have the right to add publications.': 'Você não tem permissões para adicionar publicações.'\n'There are $1 issue(s) left.': 'Existe(m) ainda $1 Edição(ões).'\n'Time Unit': 'Unidade de tempo'\nCurrency: Moeda\n'Edit languages': 'Editar idiomas'\n'Search engine optimization': 'Otimização da ferramenta de busca'\n'Article title': 'Título do artigo'\n'Article keywords': 'Palavras-chaves do artigo'\n'Article topics': 'Tópicos do artigo'\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.ro.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': 'Adresa moderatorului'\n'From Address': 'Adresa de la care se trimite'\n'Use CAPTCHA to prevent spam?': 'Vrei să foloseşti CAPTCHA pentru a opri mesajele nesolicitate?'\n'Public allowed to comment?': 'Comentariile publice sunt permise?'\n'Enable spam blocking?': 'Activezi blocarea mesajelor nesolicitate?'\n'The subscription settings for $1 could not be added.': 'Preferinţele de abonament pentru $1 nu au putut fi stabilite.'\n'The publication name you specified conflicts with publication $1.': 'Numele specificat al publicaţiei intră în conflict cu publicaţia $1.'\n'The publication alias you specified conflicts with publication $1.': 'Aliasul publicaţiei pe care l-ai ales intră în conflict cu publicaţia $1.'\n'Subscription defaults': 'Caracteristicile din oficiu ale abonamentului'\n'Subscription Settings by Country': 'Caracteristicile abonamentului pe ţări'\n'Set subscription settings for a country': 'Stabileşte caracteristicile abonamentului pentru o ţară'\n'Set subscription settings by country': 'Stabileşte caracteristicile abonamentului pe ţări'\n'Default time periods:': 'Perioade de timp din oficiu:'\n'Country subscription settings updated.': 'Caracteristicile abonamentului pentru această ţară au fost actualizate.'\n'Country subscription settings deleted.': 'Caracteristicile abonamentului pentru această ţară au fost şterse.'\n'Change country subscription settings': 'Schimbă caracteristicile abonamentului pe ţări'\n'Are you sure you want to delete the subscription settings for $1?': 'Eşti sigur că vrei să ştergi caracteristicile abonamentului pentru $1?'\n'Publication updated': 'Publicaţia a fost actualizată'\n'Subscriber comments moderated?': 'Comentariile abonaţilor se moderează?'\n'Public comments moderated?': 'Comentariile publice se moderează?'\n'Comments enabled?': 'Activezi comentariile?'\n'Comments enabled': 'Comentariile au fost activate'\n'Article comments default to enabled?': 'Preferinţa din oficiu pentru comentariile la articole se stabileşte la active?'\n'trial subscription': 'abonament de probă'\n'paid subscription': 'abonament plătit'\n'time units': 'unităţi de timp'\n'one language': 'o limbă'\n'all languages': 'toate limbile'\n'Trial subscriptions': 'Abonamente de probă'\n'Time unit cost per one section': 'Costul pe unitatea de timp şi pe o secţiune'\n'Paid subscriptions': 'Abonamente plătite'\n'Default time period': 'Perioada de timp din oficiu'\n'Go To Issues': 'Mergi la ediţii'\n'Delete publication $1': 'Şterge publicaţia $1'\n'No publications.': 'Nu există publicaţii.'\n'Default Site Alias': 'Alias-ul din oficiu al site-ului'\n'URL Type': 'Tipul de adresă de Internet'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'Ţara<BR><SMALL>(click pentru a modifica)</SMALL>'\n'Delete alias $1': 'Şterge alias-ul $1'\n'Configure publication': 'Configurează publicaţia'\n'You do not have the right to edit publication information.': 'Nu aveţi dreptul de a edita informaţia despre publicaţie.'\n'General attributes': 'Atribute generale'\n'You do not have the right to change publication information.': 'Nu ai dreptul de a modifica informaţiile despre publicaţie.'\n'The publication information could not be updated.': 'Informaţiile despre publicaţie nu pot fi modificate.'\n'You do not have the right to delete publications.': 'Nu ai dreptul sa ştergi publicaţii.'\n'Are you sure you want to delete the publication $1?': 'Eşti sigur că vrei să ştergi publicaţia $1?'\n'Deleting publication': 'Se şterge publicaţia'\n'There are $1 subscription(s) left.': 'Mai sunt $1 abonamente.'\n'The publication $1 could not be deleted.': 'Publicaţia $1 nu poate fi ştearsă.'\n'The publication could not be added.': 'Publicaţia nu poate fi adăugată'\n'You do not have the right to manage publications.': 'Nu ai dreptul de a administra publicaţii.'\n'You must select a country.': 'Trebuie să selectezi o ţară.'\n'Add new alias': 'Adaugă alias nou'\n'Alias (click to edit)': 'Alias (clic pentru a modifica)'\n'Edit aliases': 'Modifică alias-uri'\n'Publication Aliases': 'Alias-urile publicaţiilor'\n'Adding new alias': 'Se adaugă alias nou'\n'The site alias $1 could not be added.': 'Alias-ul site-ului $1 nu a putut fi adăugat.'\n'Another alias with the same name exists already.': 'Un alias identic există deja.'\n'Edit alias': 'Modifică alias'\n'Editing alias': 'Se modifică alias'\n'The site alias $1 could not be modified.': 'Alias-ul site-ului $1 nu a putut fi modificat.'\n'Are you sure you want to delete the alias $1?': 'Eşti sigur că vrei să ştergi alias-ul $1?'\n'Deleting alias': 'Se şterge alias-ul'\n'The alias $1 could not be deleted.': 'Alias-ul $1 nu a putut fi şters.'\n'$1 is the default publication alias, it can not be deleted.': '$1 este alias-ul din oficiu al publicaţiei, nu poate fi şters.'\n'You do not have the right to add publications.': 'Nu ai dreptul să adaugi publicaţii.'\n'There are $1 issue(s) left.': 'Mai sunt $1 ediţii.'\n'Time Unit': 'Unitatea de timp'\nCurrency: Monedă\n'Edit languages': 'Modifică limbile'\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.ru.yml",
    "content": "'Make sure to enter the Moderator Address below': 'Убедитесь, что введен Адрес модератора'\n'click to see issues': 'кликните для просмотра выпуска'\n'Moderator Address': 'Адрес модератора'\n'From Address': От\n'Use CAPTCHA to prevent spam?': 'Использовать CAPTCHA для предотвращения спама?'\n'Public allowed to comment?': 'Общедоступно для комментирования?'\n'Enable spam blocking?': 'Включить блокировку спама?'\n'The subscription settings for $1 could not be added.': 'Настройки подписки для $1 не могут быть добавлены.'\n'The publication name you specified conflicts with publication $1.': 'Указанное название издания конфликтует с изданием $1.'\n'The publication alias you specified conflicts with publication $1.': 'Указанный синоним издания конфликтует с изданием $1.'\n'Subscription defaults': 'Параметры подписки по умолчанию'\n'Subscription Settings by Country': 'Установки подписки по стране'\n'Set subscription settings for a country': 'Установить настройки подписки для страны'\n'Set subscription settings by country': 'Установить настройки подписки по странам'\n'Default time periods:': 'Периоды времени по умолчанию:'\n'Country subscription settings updated.': 'Настройки подписки для страны обновлены.'\n'Country subscription settings deleted.': 'Настройки подписки для страны удалены.'\n'Change country subscription settings': 'Изменить настройки подписки для страны'\n'Are you sure you want to delete the subscription settings for $1?': 'Вы уверены, что хотите удалить настройки подписки для $1?'\n'Publication updated': 'Издание обновлено'\n'Subscriber comments moderated?': 'Модерировать комментарии подписчика?'\n'Public comments moderated?': 'Модерировать комментарии посторонних?'\n'Comments enabled?': 'Комментарии разрещены?'\n'Comments enabled': 'Комментарии разрешены'\n'Article comments default to enabled?': 'Разрешить по умолчанию комментарии к статьям?'\n'trial subscription': 'пробная подписка'\n'paid subscription': 'платная подписка'\n'time units': 'единицы времени'\n'one language': 'один язык'\n'all languages': 'все языки'\n'Trial subscriptions': 'Пробные подписки'\n'Time unit cost per one section': 'Стоимость единицы времени за одну рубрику'\n'Paid subscriptions': 'Платные подписки'\n'Default time period': 'Период времени по умолчанию'\n'Go To Issues': 'Перейти к выпускам'\n'Delete publication $1': 'Удалить издание $1'\n'No publications.': 'Нет изданий.'\n'Default Site Alias': 'Синоним сайта по умолчанию'\n'URL Type': 'Тип URL'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'Страна<BR><SMALL>(щелкните для правки)</SMALL>'\n'Delete alias $1': 'Удалить запись $1'\n'Configure publication': 'Конфигурирование издания'\n'You do not have the right to edit publication information.': 'Вы не имеете прав доступа для редактирования информации издания.'\n'General attributes': 'Общие атрибуты'\n'You do not have the right to change publication information.': 'Вы не имеете прав доступа для изменения информации в издании.'\n'The publication information could not be updated.': 'Не удалось обновить информацию издания.'\n'You do not have the right to delete publications.': 'Вы не имеете прав доступа для удаления издания.'\n'Are you sure you want to delete the publication $1?': 'Вы уверены, что хотите удалить издание $1?'\n'Deleting publication': 'Удаление издания'\n'There are $1 subscription(s) left.': 'Осталось подписок: $1.'\n'The publication $1 could not be deleted.': 'Не удалось удалить издание $1.'\n'The publication could not be added.': 'Не удалось добавить издание.'\n'You do not have the right to manage publications.': 'Вы не имеете прав доступа для управления изданиями.'\n'You must select a country.': 'Вы должны выбрать страну.'\n'Add new alias': 'Добавить новый псевдоним'\n'Alias (click to edit)': 'Псевдонимы (щелкните для правки)'\n'Edit aliases': 'Правка псевдонимов'\n'Publication Aliases': 'Псевдонимы изданий'\n'Adding new alias': 'Добавление новых псевдонимов'\n'The site alias $1 could not be added.': 'Псевдоним сайта $1 не может быть добавлен.'\n'Another alias with the same name exists already.': 'Псевдоним с таким же именем уже существует.'\n'Edit alias': 'Править псевдоним'\n'Editing alias': 'Редактирование псевдонима'\n'The site alias $1 could not be modified.': 'Псевдоним сайта $1 не может быть изменен.'\n'Are you sure you want to delete the alias $1?': 'Вы уверены, что хотите удалить псевдоним $1?'\n'Deleting alias': 'Удаление псевдонима'\n'The alias $1 could not be deleted.': 'Псевдоним $1 не может быть изменен.'\n'$1 is the default publication alias, it can not be deleted.': '$1 - это псевдоним публикации по умолчанию, он не может быть удален.'\n'You do not have the right to add publications.': 'Вы не имеете прав доступа для добавления нового издания.'\n'There are $1 issue(s) left.': 'Осталось выпусков: $1'\n'Time Unit': 'Единица времени'\nCurrency: Валюта\n'Edit languages': 'Редактировать языки'\n'Search engine optimization': 'Оптимизация для поисковых систем'\n'Article title': 'Название статьи'\n'Article keywords': 'Ключевые слова статьи'\n'Article topics': 'Темы статьи'\npublications:\n    title:\n        list: 'Список изданий'\n        edit: 'Редактировать издание'\n        add: 'Добавить новое издание'\n        remove: 'Удалить издание'\n    no_publications: 'Нет изданий.'\n    general_settings: 'Общие настройки'\n    comments_settings: 'Настройки комментариев'\n    seo_settings: 'Настройки SEO'\n    front_page_theme_settings: null\n    publication_removed: 'Издание удалено.'\n    publication_saved: 'Изменения в данных издания успешно сохранены.'\n    remove:\n        cant_be_removed: 'Это издание содержит информацию и не может быть удалено.'\n        can_be_removed: 'Это издание не содержит информации и может быть удалено. '\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: 'показывать номера'\n        before_removing: 'До удаления издания вы должны удалить/переместить все остающиеся данные. '\n        you_sure: 'Вы действительно хотите удалить издание?'\n        remove: 'Удалить издание '\n    buttons:\n        addNew: 'Добавить новое издание'\n        listPublications: null\n        listIssues: null\n    table:\n        number: Номер\n        name: Название\n        default_alias: 'Алиас по умолчанию'\n        default_language: 'Язык по умолчанию'\n        comments_status: 'Статус комментариев'\n        url_type: 'Тип Url '\n        configure: Настройки\n        remove: Удалить\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: 'Название издания'\n            template_path: 'Путь к шаблону'\n            short_names: 'Сокращенное название'\n            alias: null\n            url_type: 'Тип Url '\n            seo: null\n            seo_article_title: 'Название статьи'\n            seo_article_keywords: 'Ключевые слова статьи'\n            seo_article_topics: 'Темы статьи'\n            edit_aliases: 'Правка псевдонимов'\n            edit_languages: 'Редактировать языки'\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: 'Комментарии разрешены?'\n            public_comments_enabled: 'Разрешить публичные (анонимные) комментарии?'\n            comments_article_default_enabled: 'Комментарии к стате разрешены по умолчанию?'\n            comments_subscribers_moderated: 'Комментарии зарегистрированных пользователей подлежат модерации?'\n            comments_public_moderated: 'Открытые (анонимные) комментарии подлежат модерации?'\n            comments_captcha_enabled: 'Captcha активирована?'\n            comments_spam_blocking_enabled: 'Включена ли блокировка спама в комментариях (внутренняя система)? '\n            meta_title: 'Название издания'\n            meta_keywords: 'Ключевые слова издания'\n            meta_description: 'Описание издания'\n    tip1: 'Информационное наполнение в Newscoop структурировано в соответствии с традициями печатных СМИ: Издание, Номер, Рубрика и Статья. Каждое издание имеет номера, в каждом номере имеются рубрики, которые состоят из статей. '\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.sh.yml",
    "content": "'Make sure to enter the Moderator Address below': 'Obavezno unesite adresu moderatora dole'\n'click to see issues': 'kliknite da vidite izdanja'\n'Moderator Address': 'Adresa moderatora'\n'From Address': 'Adresa sa koje se šalje'\n'Use CAPTCHA to prevent spam?': 'Koristi CAPTCHA za prevenciju spama?'\n'Public allowed to comment?': 'Opšte pravo komentarisanja?'\n'Enable spam blocking?': 'Omogući blokiranje spama?'\n'The subscription settings for $1 could not be added.': 'Podešavanja pretplate za $1 ne mogu biti dodata'\n'The publication name you specified conflicts with publication $1.': 'Ime publikacije koji ste naveli je u konfliktu sa publikacijom $1.'\n'The publication alias you specified conflicts with publication $1.': 'Alias publikacije koji ste naveli je u konfliktu sa publikacijom $1.'\n'Subscription defaults': 'Podrazumevane vrednosti za pretplatu'\n'Subscription Settings by Country': 'Podešavanja pretplate po državama'\n'Set subscription settings for a country': 'Postavi podešavanja pretplate za državu'\n'Set subscription settings by country': 'Podesi podatke o pretplati po državama'\n'Default time periods:': 'Podrazumevani vremenski period:'\n'Country subscription settings updated.': 'Promenjena su podešavanja pretplate za državu.'\n'Country subscription settings deleted.': 'Obrisana su podešavanja pretplate za državu.'\n'Change country subscription settings': 'Promeni podešavanja pretplate za državu'\n'Are you sure you want to delete the subscription settings for $1?': 'Da li ste sigurni da želite da obrišete podešavanja pretplate za $1?'\n'Publication updated': 'Publikacija izmenjena'\n'Subscriber comments moderated?': 'Komentari pretplatnika se moraju prvo odobriti?'\n'Public comments moderated?': 'Komentari se prvo moraju odobriti?'\n'Comments enabled?': 'Komentari dozvoljeni?'\n'Comments enabled': 'Komentari omogućeni'\n'Article comments default to enabled?': 'Podrazumevaj da su komentari na tekstove omogućeni?'\n'trial subscription': 'probna pretplata'\n'paid subscription': 'plaćena pretplata'\n'time units': 'vremenske jedinice'\n'one language': 'jedan jezik'\n'all languages': 'svi jezici'\n'Trial subscriptions': 'Probne pretplate'\n'Time unit cost per one section': 'Cena po vremenskoj jedinici za rubriku'\n'Paid subscriptions': 'Plaćene pretplate'\n'Default time period': 'Podrazumevani vremenski period'\n'Go To Issues': 'Idi na izdanja'\n'Delete publication $1': 'Obriši publikaciju $1'\n'No publications.': 'Nema publikacija'\n'Default Site Alias': 'Osnovni sajt alias'\n'URL Type': 'Tip URLa'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'Država<br><small>(kliknite za uređivanje)</small>'\n'Delete alias $1': 'Obriši alias $1'\n'Configure publication': 'Podesi publikaciju'\n'You do not have the right to edit publication information.': 'Nemate pravo dа uređuјеtе podatkе o publikaciji.'\n'General attributes': 'Opšti atributi'\n'You do not have the right to change publication information.': 'Nemate pravo izmene podataka o publikaciji.'\n'The publication information could not be updated.': 'Podaci o publikaciji ne mogu biti izmenjeni.'\n'You do not have the right to delete publications.': 'Nemate pravo da brišete publikacije'\n'Are you sure you want to delete the publication $1?': 'Sigurni ste da želite da obrišete publikaciju $1?'\n'Deleting publication': 'Brisanje publikacije'\n'There are $1 subscription(s) left.': 'Preostalo je $1 pretplata.'\n'The publication $1 could not be deleted.': 'Publikacija $1 ne može biti obrisana.'\n'The publication could not be added.': 'Publikacija ne može biti dodata.'\n'You do not have the right to manage publications.': 'Nemate pravo da administrirate publikacijama.'\n'You must select a country.': 'Morate izabrati državu.'\n'Add new alias': 'Dodaj novi alias'\n'Alias (click to edit)': 'Alias (klik za uređivanje)'\n'Edit aliases': 'Uredi aliase'\n'Publication Aliases': 'Aliasi za publikaciju'\n'Adding new alias': 'Dodavanje novih aliasa'\n'The site alias $1 could not be added.': 'Sajt alias $1 ne može biti dodat.'\n'Another alias with the same name exists already.': 'Takav alias već postoji.'\n'Edit alias': 'Uredi alias'\n'Editing alias': 'Uređivanje aliasa'\n'The site alias $1 could not be modified.': 'Sajt alias $1 ne može biti promenjen.'\n'Are you sure you want to delete the alias $1?': 'Sigurni ste da želite da obrišete alias $1?'\n'Deleting alias': 'Brisanje aliasa'\n'The alias $1 could not be deleted.': 'Alias $1  ne može biti obrisan.'\n'$1 is the default publication alias, it can not be deleted.': '$1 je osnovni alias publikacije i ne može biti obrisan!'\n'You do not have the right to add publications.': 'Nemate pravo da dodajete publikacije.'\n'There are $1 issue(s) left.': 'Preostalo je $1 izdanja.'\n'Time Unit': 'Vremenska jedinica'\nCurrency: Valuta\n'Edit languages': 'Uredi jezike'\n'Search engine optimization': 'Optimizacija pretraživača'\n'Article title': 'Naslov teksta'\n'Article keywords': 'Ključne reči'\n'Article topics': Teme\npublications:\n    title:\n        list: null\n        edit: null\n        add: 'Dodaj novu publikaciju'\n        remove: null\n    no_publications: 'Nema publikacija'\n    general_settings: 'Opšta podešavanja'\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: 'Dodaj novu publikaciju'\n        listPublications: null\n        listIssues: null\n    table:\n        number: Broj\n        name: Naslov\n        default_alias: null\n        default_language: 'Osnovni jezik'\n        comments_status: null\n        url_type: null\n        configure: Podešavanja\n        remove: Ukloni\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: 'Naslov teksta'\n            seo_article_keywords: 'Ključne reči'\n            seo_article_topics: Teme\n            edit_aliases: 'Uredi aliase'\n            edit_languages: 'Uredi jezike'\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.sq.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': null\n'paid subscription': null\n'time units': null\n'one language': null\n'all languages': null\n'Trial subscriptions': null\n'Time unit cost per one section': null\n'Paid subscriptions': null\n'Default time period': null\n'Go To Issues': null\n'Delete publication $1': null\n'No publications.': null\n'Default Site Alias': null\n'URL Type': null\n'Country<BR><SMALL>(click to edit)</SMALL>': null\n'Delete alias $1': null\n'Configure publication': null\n'You do not have the right to edit publication information.': null\n'General attributes': null\n'You do not have the right to change publication information.': null\n'The publication information could not be updated.': null\n'You do not have the right to delete publications.': null\n'Are you sure you want to delete the publication $1?': null\n'Deleting publication': null\n'There are $1 subscription(s) left.': null\n'The publication $1 could not be deleted.': null\n'The publication could not be added.': null\n'You do not have the right to manage publications.': null\n'You must select a country.': null\n'Add new alias': null\n'Alias (click to edit)': null\n'Edit aliases': null\n'Publication Aliases': null\n'Adding new alias': null\n'The site alias $1 could not be added.': null\n'Another alias with the same name exists already.': null\n'Edit alias': null\n'Editing alias': null\n'The site alias $1 could not be modified.': null\n'Are you sure you want to delete the alias $1?': null\n'Deleting alias': null\n'The alias $1 could not be deleted.': null\n'$1 is the default publication alias, it can not be deleted.': null\n'You do not have the right to add publications.': null\n'There are $1 issue(s) left.': null\n'Time Unit': null\nCurrency: null\n'Edit languages': null\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.sr.yml",
    "content": "'Make sure to enter the Moderator Address below': 'Обавезно унесите адресу модератора ниже доле'\n'click to see issues': 'кликните да видите издања'\n'Moderator Address': 'Адреса модератора'\n'From Address': 'Адреса са које се шаље'\n'Use CAPTCHA to prevent spam?': 'Користи CAPTCHA за превенцију спама?'\n'Public allowed to comment?': 'Опште право коментарисања?'\n'Enable spam blocking?': 'Омогући блокирање спама?'\n'The subscription settings for $1 could not be added.': 'Подешавања претплате за $1 немогу бити додата'\n'The publication name you specified conflicts with publication $1.': 'Име публикације које сте навели је у конфликту са публикацијомн $1.'\n'The publication alias you specified conflicts with publication $1.': 'Алиас публикације који сте навели је у конфликту са публикацијом $1.'\n'Subscription defaults': 'Подразумеване вредности за претплату'\n'Subscription Settings by Country': 'Подешавање претплате по државама'\n'Set subscription settings for a country': 'Постави подешавања претплате за државу'\n'Set subscription settings by country': 'Подеси податке о претплати по државама'\n'Default time periods:': 'Подразумевани временски период:'\n'Country subscription settings updated.': 'Промењена су подешавања претплате за државу.'\n'Country subscription settings deleted.': 'Обрисана су подешавања претплате за државу.'\n'Change country subscription settings': 'Промени подешавања претплате за државу'\n'Are you sure you want to delete the subscription settings for $1?': 'Да ли сте сигурни да желите да обришете подешавања претплате за $1?'\n'Publication updated': 'Публикација измењена'\n'Subscriber comments moderated?': 'Коментари претплатника се морају прво одобрити?'\n'Public comments moderated?': 'Коментари се прво морају одобрити?'\n'Comments enabled?': 'Коментари дозвољени?'\n'Comments enabled': 'Коментари омогућени'\n'Article comments default to enabled?': 'Подразумевај да су коментари на текстове омогућени?'\n'trial subscription': 'пробна претплата'\n'paid subscription': 'плаћена претплата'\n'time units': 'временске јединице'\n'one language': 'један језик'\n'all languages': 'сви језици'\n'Trial subscriptions': 'Пробне претплате'\n'Time unit cost per one section': 'Цена по временској јединици за рубрику'\n'Paid subscriptions': 'Плаћене претплате'\n'Default time period': 'Подразумевани временски период'\n'Go To Issues': 'Иди на издања'\n'Delete publication $1': 'Обриши публикацију $1'\n'No publications.': 'Нема публикација'\n'Default Site Alias': 'Основни сајт алиас'\n'URL Type': 'тип УРЛа'\n'Country<BR><SMALL>(click to edit)</SMALL>': 'Држава<br><small>(кликните за уређивање)</small>'\n'Delete alias $1': 'Обриши податак $1'\n'Configure publication': 'Подеси публикацију'\n'You do not have the right to edit publication information.': 'Немате право да уређујете податке о публикацији'\n'General attributes': 'Општи атрибути'\n'You do not have the right to change publication information.': 'Немате право измене података о публикацији'\n'The publication information could not be updated.': 'Подаци о публикацији не могу бити измењени'\n'You do not have the right to delete publications.': 'Немате право да бришете публикације'\n'Are you sure you want to delete the publication $1?': 'Сигурни сте да желите да обришете публикацију $1?'\n'Deleting publication': 'Брисање публикације'\n'There are $1 subscription(s) left.': 'Преостало је $1 претплата'\n'The publication $1 could not be deleted.': 'Публикација $1 не може бити обрисана'\n'The publication could not be added.': 'Публикација не може бити додата'\n'You do not have the right to manage publications.': 'Немате право да администрирате публикацијама'\n'You must select a country.': 'Морате изабрати државу'\n'Add new alias': 'Додај нови алиас'\n'Alias (click to edit)': 'Алиас (клик за уређивање)'\n'Edit aliases': 'Уреди алиасе'\n'Publication Aliases': 'алиаси за публикацију'\n'Adding new alias': 'Додавање новог алиаса'\n'The site alias $1 could not be added.': 'Сајт алиас $1 не може бити додат.'\n'Another alias with the same name exists already.': 'Већ постоји алиас са истим именом'\n'Edit alias': 'Уреди алиас'\n'Editing alias': 'Уређивање алиаса'\n'The site alias $1 could not be modified.': 'Сајт алиас $1 не може бити промењен.'\n'Are you sure you want to delete the alias $1?': 'Да ли сте сигурни да желите да обришете алиас $1?'\n'Deleting alias': 'Брисање алиаса'\n'The alias $1 could not be deleted.': 'Алиас $1 не може бити обрисан.'\n'$1 is the default publication alias, it can not be deleted.': '$1 је основни алиас за публикацију, па не може бити обрисан.'\n'You do not have the right to add publications.': 'Немате право да додајете публикације.'\n'There are $1 issue(s) left.': 'Преостало је  $1издања.'\n'Time Unit': 'Временска јединица'\nCurrency: Валута\n'Edit languages': 'Прикажи језике'\n'Search engine optimization': 'Оптимизација претраживача'\n'Article title': 'Наслов текста'\n'Article keywords': 'Кључне речи'\n'Article topics': Теме\npublications:\n    title:\n        list: 'Листа публикација'\n        edit: 'Ажурирај публикацију'\n        add: 'Додај нову публикацију'\n        remove: 'Избриши публикацију'\n    no_publications: 'Нема публикација'\n    general_settings: 'Основне поставке'\n    comments_settings: 'Подешавања коментара'\n    seo_settings: 'СЕО подешавања'\n    front_page_theme_settings: 'Подешавање теме ѕа почетну страну'\n    publication_removed: 'Публикација је избрисана.'\n    publication_saved: 'Измене за публикацију успоешно сачуване.'\n    remove:\n        cant_be_removed: 'Ова публикација није празна па не може бити избрисана.'\n        can_be_removed: 'Ова публикација је празна и може бити избрисана.'\n        left_issues: 'Изађи из издања'\n        left_sections: 'Изађи из рубрике'\n        left_articles: 'Изађи из текста'\n        show_issues: 'прикажи издање'\n        before_removing: 'Да би избрисали публикацију, морате избрисати све елементе у њој пре тога.'\n        you_sure: 'Сигурни сте да желите да обришете публикацију?'\n        remove: 'Избриши публикацију'\n    buttons:\n        addNew: 'Додај нову публикацију'\n        listPublications: 'Излистај публикације'\n        listIssues: 'Излистај издања ове публикације'\n    table:\n        number: Број\n        name: Наслов\n        default_alias: 'Основни алиас'\n        default_language: 'Основни језик'\n        comments_status: 'Статус коментара'\n        url_type: 'тип УРЛа'\n        configure: Подешавања\n        remove: Уклони\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: 'Назив публикације'\n            template_path: 'Шаблонска путања'\n            short_names: 'Скраћени називи'\n            alias: 'Основни алиас'\n            url_type: 'тип УРЛа'\n            seo: null\n            seo_article_title: 'Наслов текста'\n            seo_article_keywords: 'Кључне речи'\n            seo_article_topics: Теме\n            edit_aliases: 'Уреди алиасе'\n            edit_languages: 'Прикажи језике'\n            moderator_to: 'Адреса модератора'\n            moderator_from: null\n            comments_enabled: 'Коментари дозвољени?'\n            public_comments_enabled: 'Немодерисани коментари дозвољени?'\n            comments_article_default_enabled: 'Коментари подразумевано дозвољени?'\n            comments_subscribers_moderated: 'Коментари регистрованих корисника се прво морају одобрити?'\n            comments_public_moderated: 'Коментари се прво морају одобрити?'\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: 'Назив публикације'\n            meta_keywords: 'Кључне речи за публикацију'\n            meta_description: 'Опис за публикацију'\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.sv.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': 'Publikationen uppdaterad'\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': provprenumeration\n'paid subscription': 'betald prenumeration'\n'time units': tidsenheter\n'one language': 'ett språk'\n'all languages': 'alla språk'\n'Trial subscriptions': Provprenumerationer\n'Time unit cost per one section': 'Tidsenhetskostnad per sektion'\n'Paid subscriptions': 'Betalda prenumerationer'\n'Default time period': Grundtidsperiod\n'Go To Issues': 'Gå till utgåvor'\n'Delete publication $1': 'Radera publikation $1'\n'No publications.': 'Inga publikationer.'\n'Default Site Alias': 'Förvalt sajtalias'\n'URL Type': URL-typ\n'Country<BR><SMALL>(click to edit)</SMALL>': 'Land<BR><SMALL>(klicka för att ändra)</SMALL>'\n'Delete alias $1': 'Radera alias $1'\n'Configure publication': 'Konfigurera publikation'\n'You do not have the right to edit publication information.': 'Du har inte rätt att redigera publikationsinformation.'\n'General attributes': 'Generella attribut'\n'You do not have the right to change publication information.': 'Du har inte rätt att ändra publikationsinformation.'\n'The publication information could not be updated.': 'Publikationsinformationen kunde inte uppdateras.'\n'You do not have the right to delete publications.': 'Du har inte rätt att radera publikationer.'\n'Are you sure you want to delete the publication $1?': 'Är du säker att du vill radera publikationen $1?'\n'Deleting publication': 'Raderar publikation'\n'There are $1 subscription(s) left.': 'Det finns $1 prenumeration(er) kvar.'\n'The publication $1 could not be deleted.': 'Publikationen $1 kunde inte raderas.'\n'The publication could not be added.': 'Publikationen kunde inte läggas till.'\n'You do not have the right to manage publications.': 'Du har inte rätt att hantera publikationer.'\n'You must select a country.': 'Du måste välja ett land.'\n'Add new alias': 'Lägg till nytt alias'\n'Alias (click to edit)': 'Alias (klicka för att redigera)'\n'Edit aliases': 'Redigera aliasar'\n'Publication Aliases': Publikationsaliasar\n'Adding new alias': 'Lägger till nytt alias'\n'The site alias $1 could not be added.': 'Sajtaliaset $1 kunde inte läggas till.'\n'Another alias with the same name exists already.': 'Ett annat alias med samma namn finns redan.'\n'Edit alias': 'Redigera alias'\n'Editing alias': 'Redigerar alias'\n'The site alias $1 could not be modified.': 'Sajtaliaset $1 kunde inte ändras.'\n'Are you sure you want to delete the alias $1?': 'Är du säker att du vill radera sajtaliaset $1?'\n'Deleting alias': 'Raderar alias'\n'The alias $1 could not be deleted.': 'Aliaset $1 kunde inte raderas.'\n'$1 is the default publication alias, it can not be deleted.': '$1 är grundpublikationsaliaset, det kan inte raderas.'\n'You do not have the right to add publications.': 'Du har inte rätt att lägga till publikationer.'\n'There are $1 issue(s) left.': 'Det finns $1 utgåva(or) kvar.'\n'Time Unit': Tidsenhet\nCurrency: Valuta\n'Edit languages': 'Redigera språk'\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.tr.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': null\n'paid subscription': null\n'time units': null\n'one language': null\n'all languages': null\n'Trial subscriptions': null\n'Time unit cost per one section': null\n'Paid subscriptions': null\n'Default time period': null\n'Go To Issues': null\n'Delete publication $1': null\n'No publications.': null\n'Default Site Alias': null\n'URL Type': null\n'Country<BR><SMALL>(click to edit)</SMALL>': null\n'Delete alias $1': null\n'Configure publication': null\n'You do not have the right to edit publication information.': null\n'General attributes': null\n'You do not have the right to change publication information.': null\n'The publication information could not be updated.': null\n'You do not have the right to delete publications.': null\n'Are you sure you want to delete the publication $1?': null\n'Deleting publication': null\n'There are $1 subscription(s) left.': null\n'The publication $1 could not be deleted.': null\n'The publication could not be added.': null\n'You do not have the right to manage publications.': null\n'You must select a country.': null\n'Add new alias': null\n'Alias (click to edit)': null\n'Edit aliases': null\n'Publication Aliases': null\n'Adding new alias': null\n'The site alias $1 could not be added.': null\n'Another alias with the same name exists already.': null\n'Edit alias': null\n'Editing alias': null\n'The site alias $1 could not be modified.': null\n'Are you sure you want to delete the alias $1?': null\n'Deleting alias': null\n'The alias $1 could not be deleted.': null\n'$1 is the default publication alias, it can not be deleted.': null\n'You do not have the right to add publications.': null\n'There are $1 issue(s) left.': null\n'Time Unit': null\nCurrency: null\n'Edit languages': null\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.uk.yml",
    "content": "'Make sure to enter the Moderator Address below': 'Переконайтесь що введена адреса модератора'\n'click to see issues': 'Клікніть щоб побачити випуски'\n'Moderator Address': 'Е-пошта модератора'\n'From Address': Від\n'Use CAPTCHA to prevent spam?': 'Використовувати САРТСНА для запобігання спаму?'\n'Public allowed to comment?': 'Відвідувачи можуть коментувати?'\n'Enable spam blocking?': 'Активувати блокування спаму?'\n'The subscription settings for $1 could not be added.': 'Налаштування підписки для  $1 не були додані'\n'The publication name you specified conflicts with publication $1.': 'Введена Вами назва публікації сбігається з назвою публікації $1'\n'The publication alias you specified conflicts with publication $1.': 'псевдонім публікації збігається з публікацією $1.'\n'Subscription defaults': 'Підписка по замовчуванню'\n'Subscription Settings by Country': 'Налаштування Країн'\n'Set subscription settings for a country': 'Встановіть налаштування підписки для країни'\n'Set subscription settings by country': 'Встановіть параметри підписки по країні'\n'Default time periods:': 'Часовий період за замовчуванням'\n'Country subscription settings updated.': 'Параметри підписки країн оновлено.'\n'Country subscription settings deleted.': 'Параметри підписки країни видалено.'\n'Change country subscription settings': 'Параметри підписки країни змінено.'\n'Are you sure you want to delete the subscription settings for $1?': 'Ви впевнені що хочете видалил параметри підписки для  $1?'\n'Publication updated': 'Публікацію оновлено'\n'Subscriber comments moderated?': 'Модерувати коментарі підписувачів?'\n'Public comments moderated?': 'Модерувати публічні коментарі?'\n'Comments enabled?': 'Дозволити коментувати?'\n'Comments enabled': 'Коментарі дозволені'\n'Article comments default to enabled?': 'Дозволити коментувати статті за замовчуванням?'\n'trial subscription': 'Пробна підписка'\n'paid subscription': 'оплачена підписка'\n'time units': 'одиниці часу'\n'one language': 'Одна мова'\n'all languages': 'Всі мови'\n'Trial subscriptions': 'Пробні підписки'\n'Time unit cost per one section': 'Питомі витрати на одну секцію'\n'Paid subscriptions': 'Платні підписки'\n'Default time period': 'Період часу за замовчуванням'\n'Go To Issues': 'Перейти до випуску'\n'Delete publication $1': 'Видалили публікацію $1'\n'No publications.': 'Немає публікацій.'\n'Default Site Alias': 'Псевдонім сайту за замовчуванням.'\n'URL Type': 'Тип посилання'\n'Country<BR><SMALL>(click to edit)</SMALL>': Країна<BR><SMALL>(редагувати)</SMALL>\n'Delete alias $1': 'Видалил псевдонім  $1'\n'Configure publication': 'Налаштування публікації'\n'You do not have the right to edit publication information.': 'Ви не маєте прав для редагування інформації про публікацію'\n'General attributes': 'Загальні атрибути'\n'You do not have the right to change publication information.': 'Ви не маєте прав для змінення інформації у виданні'\n'The publication information could not be updated.': 'Не вдалося оновити іноформацію видання.'\n'You do not have the right to delete publications.': 'Ви не маєте прав для видалення видання'\n'Are you sure you want to delete the publication $1?': 'Ви впевнені що хочете видалили видання $1?'\n'Deleting publication': 'Видалення видання'\n'There are $1 subscription(s) left.': 'Залишилось підписок $1.'\n'The publication $1 could not be deleted.': 'Не вдалося видалити видання $1.'\n'The publication could not be added.': 'Не вдалося додати видання.'\n'You do not have the right to manage publications.': 'Ви не маєте прав для керування виданнями'\n'You must select a country.': 'Ви маєте вибрати країну.'\n'Add new alias': 'Додати новий псевдонім'\n'Alias (click to edit)': 'Псевдоніми (редагувати)'\n'Edit aliases': 'Правка псевдонімів'\n'Publication Aliases': 'Псевдоніми видання'\n'Adding new alias': 'Додання нових псевдонімів'\n'The site alias $1 could not be added.': 'Псевдонім сайту $1 не може бути додан.'\n'Another alias with the same name exists already.': 'Псевдонім с такою назвою вже інсує.'\n'Edit alias': 'Редагувати псевдонім'\n'Editing alias': 'Редагування псевдоніма'\n'The site alias $1 could not be modified.': 'Псевдонім сайту $1 не може бути змінен.'\n'Are you sure you want to delete the alias $1?': 'Ви впевнені що хочете видалили псевдонім $1?'\n'Deleting alias': 'Видалення псевдоніма'\n'The alias $1 could not be deleted.': 'Псевдонім $1 не може бути змінен.'\n'$1 is the default publication alias, it can not be deleted.': '$1 - це псевдонім публікації за замовчуванням, він не може буде видален.'\n'You do not have the right to add publications.': 'Ви не маєте прав додавати видання'\n'There are $1 issue(s) left.': ' $1 випуск(ів) залишилось.'\n'Time Unit': 'Одиниця часу'\nCurrency: Валюта\n'Edit languages': 'Редагувати мови'\n'Search engine optimization': 'Оптимізація для пошукових систем'\n'Article title': 'Назва статті'\n'Article keywords': 'Ключові слова статті'\n'Article topics': 'Тема статті'\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.vi.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': null\n'paid subscription': null\n'time units': null\n'one language': null\n'all languages': null\n'Trial subscriptions': null\n'Time unit cost per one section': null\n'Paid subscriptions': null\n'Default time period': null\n'Go To Issues': null\n'Delete publication $1': null\n'No publications.': null\n'Default Site Alias': null\n'URL Type': null\n'Country<BR><SMALL>(click to edit)</SMALL>': null\n'Delete alias $1': null\n'Configure publication': null\n'You do not have the right to edit publication information.': null\n'General attributes': null\n'You do not have the right to change publication information.': null\n'The publication information could not be updated.': null\n'You do not have the right to delete publications.': null\n'Are you sure you want to delete the publication $1?': null\n'Deleting publication': null\n'There are $1 subscription(s) left.': null\n'The publication $1 could not be deleted.': null\n'The publication could not be added.': null\n'You do not have the right to manage publications.': null\n'You must select a country.': null\n'Add new alias': null\n'Alias (click to edit)': null\n'Edit aliases': null\n'Publication Aliases': null\n'Adding new alias': null\n'The site alias $1 could not be added.': null\n'Another alias with the same name exists already.': null\n'Edit alias': null\n'Editing alias': null\n'The site alias $1 could not be modified.': null\n'Are you sure you want to delete the alias $1?': null\n'Deleting alias': null\n'The alias $1 could not be deleted.': null\n'$1 is the default publication alias, it can not be deleted.': null\n'You do not have the right to add publications.': null\n'There are $1 issue(s) left.': null\n'Time Unit': null\nCurrency: null\n'Edit languages': null\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.zh.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': null\n'paid subscription': null\n'time units': null\n'one language': null\n'all languages': null\n'Trial subscriptions': null\n'Time unit cost per one section': null\n'Paid subscriptions': null\n'Default time period': null\n'Go To Issues': null\n'Delete publication $1': 删除出版物$1\n'No publications.': 无出版物\n'Default Site Alias': null\n'URL Type': null\n'Country<BR><SMALL>(click to edit)</SMALL>': 国家\n'Delete alias $1': 删除入口$1\n'Configure publication': null\n'You do not have the right to edit publication information.': 您无权编辑出版信息\n'General attributes': null\n'You do not have the right to change publication information.': 您无权编辑出版信息\n'The publication information could not be updated.': 出版信息不能被更新\n'You do not have the right to delete publications.': 您无权删除出版物\n'Are you sure you want to delete the publication $1?': 您确认要删除出版物$1？\n'Deleting publication': 正在删除出版物\n'There are $1 subscription(s) left.': 还有$1个订阅\n'The publication $1 could not be deleted.': 出版物$1不能被删除\n'The publication could not be added.': 不能添加出版物\n'You do not have the right to manage publications.': 您无权管理出版物\n'You must select a country.': 您必须选择一个国家\n'Add new alias': null\n'Alias (click to edit)': null\n'Edit aliases': null\n'Publication Aliases': null\n'Adding new alias': null\n'The site alias $1 could not be added.': null\n'Another alias with the same name exists already.': null\n'Edit alias': null\n'Editing alias': null\n'The site alias $1 could not be modified.': null\n'Are you sure you want to delete the alias $1?': null\n'Deleting alias': null\n'The alias $1 could not be deleted.': null\n'$1 is the default publication alias, it can not be deleted.': null\n'You do not have the right to add publications.': null\n'There are $1 issue(s) left.': 还有$1个问题\n'Time Unit': 时间单位\nCurrency: 货币\n'Edit languages': null\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/pub.zh_TW.yml",
    "content": "'Make sure to enter the Moderator Address below': null\n'click to see issues': null\n'Moderator Address': null\n'From Address': null\n'Use CAPTCHA to prevent spam?': null\n'Public allowed to comment?': null\n'Enable spam blocking?': null\n'The subscription settings for $1 could not be added.': null\n'The publication name you specified conflicts with publication $1.': null\n'The publication alias you specified conflicts with publication $1.': null\n'Subscription defaults': null\n'Subscription Settings by Country': null\n'Set subscription settings for a country': null\n'Set subscription settings by country': null\n'Default time periods:': null\n'Country subscription settings updated.': null\n'Country subscription settings deleted.': null\n'Change country subscription settings': null\n'Are you sure you want to delete the subscription settings for $1?': null\n'Publication updated': null\n'Subscriber comments moderated?': null\n'Public comments moderated?': null\n'Comments enabled?': null\n'Comments enabled': null\n'Article comments default to enabled?': null\n'trial subscription': null\n'paid subscription': null\n'time units': null\n'one language': null\n'all languages': null\n'Trial subscriptions': null\n'Time unit cost per one section': null\n'Paid subscriptions': null\n'Default time period': null\n'Go To Issues': null\n'Delete publication $1': null\n'No publications.': null\n'Default Site Alias': null\n'URL Type': null\n'Country<BR><SMALL>(click to edit)</SMALL>': null\n'Delete alias $1': null\n'Configure publication': null\n'You do not have the right to edit publication information.': null\n'General attributes': null\n'You do not have the right to change publication information.': null\n'The publication information could not be updated.': null\n'You do not have the right to delete publications.': null\n'Are you sure you want to delete the publication $1?': null\n'Deleting publication': null\n'There are $1 subscription(s) left.': null\n'The publication $1 could not be deleted.': null\n'The publication could not be added.': null\n'You do not have the right to manage publications.': null\n'You must select a country.': null\n'Add new alias': null\n'Alias (click to edit)': null\n'Edit aliases': null\n'Publication Aliases': null\n'Adding new alias': null\n'The site alias $1 could not be added.': null\n'Another alias with the same name exists already.': null\n'Edit alias': null\n'Editing alias': null\n'The site alias $1 could not be modified.': null\n'Are you sure you want to delete the alias $1?': null\n'Deleting alias': null\n'The alias $1 could not be deleted.': null\n'$1 is the default publication alias, it can not be deleted.': null\n'You do not have the right to add publications.': null\n'There are $1 issue(s) left.': 还有$1个问题\n'Time Unit': null\nCurrency: null\n'Edit languages': null\n'Search engine optimization': null\n'Article title': null\n'Article keywords': null\n'Article topics': null\npublications:\n    title:\n        list: null\n        edit: null\n        add: null\n        remove: null\n    no_publications: null\n    general_settings: null\n    comments_settings: null\n    seo_settings: null\n    front_page_theme_settings: null\n    publication_removed: null\n    publication_saved: null\n    remove:\n        cant_be_removed: null\n        can_be_removed: null\n        left_issues: null\n        left_sections: null\n        left_articles: null\n        show_issues: null\n        before_removing: null\n        you_sure: null\n        remove: null\n    buttons:\n        addNew: null\n        listPublications: null\n        listIssues: null\n    table:\n        number: null\n        name: null\n        default_alias: null\n        default_language: null\n        comments_status: null\n        url_type: null\n        configure: null\n        remove: null\n    form_type:\n        label:\n            follow_current_issue_theme: null\n            name: null\n            template_path: null\n            short_names: null\n            alias: null\n            url_type: null\n            seo: null\n            seo_article_title: null\n            seo_article_keywords: null\n            seo_article_topics: null\n            edit_aliases: null\n            edit_languages: null\n            moderator_to: null\n            moderator_from: null\n            comments_enabled: null\n            public_comments_enabled: null\n            comments_article_default_enabled: null\n            comments_subscribers_moderated: null\n            comments_public_moderated: null\n            comments_captcha_enabled: null\n            comments_spam_blocking_enabled: null\n            meta_title: null\n            meta_keywords: null\n            meta_description: null\n    tip1: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.ar.yml",
    "content": "default: 'الاختيار الافتراضي'\n'before you can configure the section templates.': 'قبل أن يمكنك إعداد نماذج الأقسام.'\n'You have to assign a theme to the issue': 'يجب عليك أن تعين نسق الى العدد.'\n'The section number $1 was already in use.': 'رقم القسم $1 قيد الاستخدام مسبقاً ـ'\n'Delete all articles written in $1 language from this section': 'إحذف كل المقالات المكتوبة بالـلغة $1 من هذا القسم'\n'Delete all articles and all of their translations': 'إحذف كل المقالات وكل تراجمها'\n'Delete only this section ($1)': null\n'Delete all translations of this section': 'إحذف كل تراجم هذا القسم'\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': 'عدد من مقالات<BR><SMALL>(منشورة/في الكل)</SMALL>'\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': 'في هذا الاصدار يجب اسم عنوان الرابط أن يكون فريد لكل الأقسام.<br> يتعارض اسم عنوان الرابط الذي حددته ($1) مع القسم $2$3. $4$5'\n'Section updated': 'تم تحديث القسم'\n'There are $1 subscriptions which will be affected.': 'ستتأثر $1 اشتراكات.'\n'There are $1 articles in this section.': 'توجد $1 مقالات في هذا القسم.'\n'Go To Articles': 'إذهب الى المقالات'\n'Add section to all subscriptions.': 'أضف القسم الى كل الاشتراكات.'\n'Delete section from all subscriptions.': 'إحذف القسم من كل الاشتراكات.'\n'A total of $1 subscriptions were updated.': 'تم تحديث $1 اشتراكات في الكل.'\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'اسم<BR><SMALL>(أنقر لترى المقالات)</SMALL>'\n'Delete section $1': 'إحذف القسم $1'\n'Adding new section': 'قيد الإضافة قسم جديد'\n'You do not have the right to add sections.': 'ليس لديك الحق في إضافة أقسام.'\n'The section $1 has been successfuly added.': 'تم إضافة القسم $1 بنجاح.'\n'Please check if another section with the same number or URL name does not exist already.': 'يرجى التحقق ألا يوجد مسبقاً قسم يحمل الرقم نفسه أو عنوان الرابط نفسه.'\n'Delete section': 'إحذف القسم'\n'You do not have the right to delete sections.': 'ليس لديك الحق في حذف أقسام.'\n'Are you sure you want to delete the section $1?': 'هل أنت متأكد أنك تريد حذف القسم $1؟'\n'Deleting section': 'قيد الحذف القسم'\n'The section $1 has been deleted.': 'تم حذف القسم $1.'\n'Configure section': 'تهيئة القسم'\n'The section could not be changed.': 'لم يغير القسم.'\n'Duplicate section': 'قسم مكرر'\n'The destination issue is the same as the source issue.': 'العدد المستهدف هو نفس العدد كالعدد المصدر.'\n'Error updating subscriptions.': 'حدث خطأ أثناء تحديث اشتراكات.'\n'Duplicating section': 'قيد التكرار'\n'The section $1 could not be duplicated': 'لم تكرر القسم $1.'\n'Section $1 has been duplicated to $2. $3 of $4': 'تم تكرار القسم $1 في $2. $3 من $4.'\n'You do not have the right to modify sections.': 'ليس لديك الحق في تعديل أقسام.'\n'A total of $1 articles were deleted.': 'تم حذف $1 مقالات في الكل.'\n'Duplicate Section:': ':قسم مكرر'\n'Existing Section': 'قسم موجود'\n'Go to new section': 'إذهب الى قسم جديد'\n'Go to source section': 'إذهب الى القسم المصدر'\n'New Section': 'قسم جديد'\n'Please select either $1 or $2.': 'يرجى الاختيار اما $1 أو $2.'\n'Select destination section:': 'اختر العدد المستهدف'\nOR: أو\n'URL Name': 'اسم عنوان الرابط'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'رقم القسم الذي حددته موجود مسبقاً ، يرجى تحديد قيمة مختلفة أو استخدام القائمة حتى تجد قسم موجود.'\nWarning: تحذير\n'You must select a section.': 'يجب عليك اختيار قسم.'\n'You must specify a name for the section.': 'يجب عليك تحديد اسم للقسم.'\n'The section could not be added.': 'لم يضف القسم.'\n'Add new section': 'أضف قسم جديد'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.az.yml",
    "content": "default: mövcud\n'before you can configure the section templates.': 'əvvəl bölmə nümunələrini konfiqurasiya edə bilərsən.'\n'You have to assign a theme to the issue': 'Sən mövzunu məsələyə təyin etməlisən.'\n'The section number $1 was already in use.': '$1 saylı bölmə artıq istifadədə olub.'\n'Delete all articles written in $1 language from this section': 'Bu bölmədən $1 dilində yazılmış bütün məqalələri sil'\n'Delete all articles and all of their translations': 'Bütün məqalə və onların tərcümələrini sil'\n'Delete only this section ($1)': 'Yalnız bu bölməni sil ($1)'\n'Delete all translations of this section': 'Bu bölmənin bütün tərcümələrini sil'\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': 'Məqalələrin Sayı<BR><SMALL>(Nümayiş Edilmiş/Hamısı)</SMALL>'\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': 'Bu məsələdə bütün bölmələr üçün fərqli URL adları olmalıdır.<br>Təqdim etdiyin URL adı ($1) $2$3 bölməsi ilə uyğunsuzdur. $4$5'\n'Section updated': 'Bölmə yeniləndi'\n'There are $1 subscriptions which will be affected.': 'Təsirlənəcək $1 abunəlik var.'\n'There are $1 articles in this section.': 'Bu bölmədə $1 məqalə var.'\n'Go To Articles': 'Məqalələrə Keç'\n'Add section to all subscriptions.': 'Bütün abunəliklərə bölmə əlavə et.'\n'Delete section from all subscriptions.': 'Bütün abunəliklərdən bölməni sil.'\n'A total of $1 subscriptions were updated.': 'Ümumilikdə $1 abunəlik yeniləndi.'\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'Ad<BR><SMALL>(məqalələri görmək üçün kliklə)</SMALL>'\n'Delete section $1': '$1 bölməsini sil'\n'Adding new section': 'Yeni bölmənin əlavəsi'\n'You do not have the right to add sections.': 'Bölmə əlavə etməyə ixtiyarın yoxdur.'\n'The section $1 has been successfuly added.': '$1 bölməsi müvəffəqiyyətlə əlavə edildi.'\n'Please check if another section with the same number or URL name does not exist already.': 'Lütfən, eyni saylı və ya URL adlı başqa bölmənin olub olmamasını yoxla.'\n'Delete section': 'Bölməni sil'\n'You do not have the right to delete sections.': 'Bölmələri silməyə ixtiyarın yoxdur.'\n'Are you sure you want to delete the section $1?': '$1 bölməsini silmək istədiyinə əminsən?'\n'Deleting section': 'Bölmənin silinməsi'\n'The section $1 has been deleted.': '$1 bölməsi silinmişdir.'\n'Configure section': 'Bölməni konfiqurasiya et'\n'The section could not be changed.': 'Bölmə dəyişdirilə bilmədi.'\n'Duplicate section': 'Bölmənin surətini çıxar'\n'The destination issue is the same as the source issue.': 'Son ünvan məsələsi mənbə məsələsi ilə eynidir.'\n'Error updating subscriptions.': 'Abunəliklərin yenilənməsində xəta.'\n'Duplicating section': 'Bölmənin surətinin çıxarılması'\n'The section $1 could not be duplicated': '$1 bölməsinin surəti çıxarıla bilmədi'\n'Section $1 has been duplicated to $2. $3 of $4': '$1 bölməsinin $2 daxilinə surəti çıxarıldı. $4 içindən $3'\n'You do not have the right to modify sections.': 'Bölmələrə dəyişiklik etməyə ixtiyarın yoxdur.'\n'A total of $1 articles were deleted.': 'Ümumilikdə $1 məqalə silinib.'\n'Duplicate Section:': 'Bölmənin Surətini Çıxar:'\n'Existing Section': 'Mövcud Bölmə'\n'Go to new section': 'Yeni bölməyə keç'\n'Go to source section': 'Mənbə bölməsinə keç'\n'New Section': 'Yeni Bölmə'\n'Please select either $1 or $2.': 'Lütfən, ya $1 ya da $2 seçimini et'\n'Select destination section:': 'Son ünvan bölməsini seç:'\nOR: 'VƏ YA'\n'URL Name': 'URL Adı'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'Qeyd edilmiş bölmə sayı artıq mövcuddur, lütfən, ya fərqli dəyər qeyd et, ya da açılan menyudan mövcud bölməni tap.'\nWarning: Diqqət\n'You must select a section.': 'Bölmə seçməlisən.'\n'You must specify a name for the section.': 'Bölmə üçün ad seçimi etməlisən.'\n'The section could not be added.': 'Bölmə əlavə edilə bilmədi.'\n'Add new section': 'Yeni bölmə əlavə et'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.be.yml",
    "content": "default: 'па змаўчанні'\n'before you can configure the section templates.': 'перад тым, як вы зможаце наладзіць шаблоны рубрык.'\n'You have to assign a theme to the issue': 'Вы павінны прызначыць тэму (шаблон) для выпуску'\n'The section number $1 was already in use.': 'Рубрыка $1  ўжо выкарыстоўваецца.'\n'Delete all articles written in $1 language from this section': 'Выдаліць усе артыкулы, напісаныя на мове $1, з гэтай рубрыкі'\n'Delete all articles and all of their translations': 'Выдаліць усе артыкулы і ўсе пераклады для гэтага артыкула'\n'Delete only this section ($1)': 'Выдаліць толькі гэтую рубрыку'\n'Delete all translations of this section': 'Выдаліць усе пераклады з гэтай рубрыкі'\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': 'Колькасць артыкулаў <BR><SMALL>(Апублікаваных/Агульная)</SMALL>'\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': 'URL павiнны быць унікальны для ўсiх рубрык у гэтым выданьнi.<br> Азначаны URL ($1) канфлiктуе з рубрыкай $2$3. $4$5'\n'Section updated': 'Рубрыка абноўленая'\n'There are $1 subscriptions which will be affected.': 'Гэта будзе ўжыта да $1 падпiскі (ак) '\n'There are $1 articles in this section.': 'Артыкулаў у гэтай рубрыцы: $1.'\n'Go To Articles': 'Перайсьцi да артыкулаў'\n'Add section to all subscriptions.': 'Дадаць рубрыку да ўсiх падпiсак'\n'Delete section from all subscriptions.': 'Выдалiць рубрыку з усiх падпiсак.'\n'A total of $1 subscriptions were updated.': 'Было ўсяго абноўлена $1 падпiсак.'\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'Назва<BR><SMALL>(нацiсьнiце для прагляду артыкулаў)</SMALL> '\n'Delete section $1': 'Выдалiць рубрыку $1 '\n'Adding new section': 'Дадаваньне новай рубрыкі'\n'You do not have the right to add sections.': 'Вы ня маеце права дадаваць рубрыкі.'\n'The section $1 has been successfuly added.': 'Рубрыка $1 была пасьпяхова даданая.'\n'Please check if another section with the same number or URL name does not exist already.': 'Калi ласка, пераканайцеся,  што няма iншай рубрыкі з такім жа нумарам ці URL.'\n'Delete section': 'Выдалiць рубрыку'\n'You do not have the right to delete sections.': 'Вы ня маеце права доступу для выдаленьня рубрык.'\n'Are you sure you want to delete the section $1?': 'Цi Вы ўпэўнены, што хочаце выдалiць рубрыку $1?'\n'Deleting section': 'Выдаленьне рубрыкі'\n'The section $1 has been deleted.': 'Рубрыка $1 была выдалена.'\n'Configure section': 'Наладзіць рубрыку'\n'The section could not be changed.': 'Немагчыма зьмяніць рубрыку.'\n'Duplicate section': 'Дубляваць рубрыку'\n'The destination issue is the same as the source issue.': 'Выпуск крыніцы той жа, што і атрымальніка.'\n'Error updating subscriptions.': 'Памылка абнаўленьня падпісак'\n'Duplicating section': 'Дубляваньне рубрык'\n'The section $1 could not be duplicated': 'Рубрыка $1 ня можа быць прадубляваная'\n'Section $1 has been duplicated to $2. $3 of $4': 'Рубрыка $1 была прадубляванаа ў $2. $3 з $4 '\n'You do not have the right to modify sections.': 'Вы ня маеце права доступу для мадыфікацыі рубрыкі.'\n'A total of $1 articles were deleted.': 'Усяго артыкулаў было выдалена: $1'\n'Duplicate Section:': 'Дубляваць рубрыку:'\n'Existing Section': 'Iснуючая рубрыка'\n'Go to new section': 'Перайсьцi да новай рубрыкі'\n'Go to source section': 'Перайсьцi да зыходнай рубрыкі'\n'New Section': 'Новая рубрыка'\n'Please select either $1 or $2.': 'Калi ласка, выбераце цi $1 , цi $2.'\n'Select destination section:': 'Выбераце разьмяшчэньне рубрыкі:'\nOR: цi\n'URL Name': 'Назва URL'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'Уведзены нумар рубрыкі ўжо iснуе. Калi ласка, увядзеце  iншае значэньне цi выкарыстайце выпадаючы сьпiс для пошуку iснуючай рубрыкі.'\nWarning: Папярэджаньне\n'You must select a section.': 'Вы павiнны выбраць рубрыку.'\n'You must specify a name for the section.': 'Вы павiнны вызначыць назву рубрыкі.'\n'The section could not be added.': 'Немагчыма дадаць рубрыку.'\n'Add new section': 'Дадаць новую рубрыку'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.bn.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': null\n'Add section to all subscriptions.': null\n'Delete section from all subscriptions.': null\n'A total of $1 subscriptions were updated.': null\n'Name<BR><SMALL>(click to see articles)</SMALL>': null\n'Delete section $1': null\n'Adding new section': null\n'You do not have the right to add sections.': null\n'The section $1 has been successfuly added.': null\n'Please check if another section with the same number or URL name does not exist already.': null\n'Delete section': null\n'You do not have the right to delete sections.': null\n'Are you sure you want to delete the section $1?': null\n'Deleting section': null\n'The section $1 has been deleted.': null\n'Configure section': null\n'The section could not be changed.': null\n'Duplicate section': null\n'The destination issue is the same as the source issue.': null\n'Error updating subscriptions.': null\n'Duplicating section': null\n'The section $1 could not be duplicated': null\n'Section $1 has been duplicated to $2. $3 of $4': null\n'You do not have the right to modify sections.': null\n'A total of $1 articles were deleted.': null\n'Duplicate Section:': null\n'Existing Section': null\n'Go to new section': null\n'Go to source section': null\n'New Section': null\n'Please select either $1 or $2.': null\n'Select destination section:': null\nOR: null\n'URL Name': 'URL-র নাম'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': null\nWarning: null\n'You must select a section.': null\n'You must specify a name for the section.': null\n'The section could not be added.': null\n'Add new section': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.cs.yml",
    "content": "default: default\n'before you can configure the section templates.': 'předtím než můžete konfigurovat šablony sekce.'\n'You have to assign a theme to the issue': 'Musíte zadat téma do vydání'\n'The section number $1 was already in use.': 'Číslo rubriky $1 se již používá.'\n'Delete all articles written in $1 language from this section': 'Odstranit všechny články psány v jazyku $1 z této rubriky'\n'Delete all articles and all of their translations': 'Odstranit všechny články a všechny jejich překlady'\n'Delete only this section ($1)': 'Odstranit pouze tuto rubriku ($1)'\n'Delete all translations of this section': 'Odstranit všechny překlady této rubriky'\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': 'Počet Článků <BR><SMALL>(Publikováno/Celkem)</SMALL>'\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': 'URL název musí být jedidečný pro všechny rubriky v tomto vydání. <br>Zadaný URL název($1) je v rozporu s rubrikou$2$3. $4$5'\n'Section updated': 'Rubrika aktualizována'\n'There are $1 subscriptions which will be affected.': 'Bude ovlivněno $1 předplatných.'\n'There are $1 articles in this section.': 'V této rubrice je $1 článků.'\n'Go To Articles': 'Jít na Články'\n'Add section to all subscriptions.': 'Přidat rubriku pro všechny předplatné'\n'Delete section from all subscriptions.': 'Smazat rubriku všech předplatných'\n'A total of $1 subscriptions were updated.': 'Bylo obnoveno $1 předplatné '\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'Název '\n'Delete section $1': 'Smazat rubriku $1'\n'Adding new section': 'Přidání nové rubriky'\n'You do not have the right to add sections.': 'Nemáte právo přidat rubriku'\n'The section $1 has been successfuly added.': 'Rubrika $1 byla úspěšně přidána'\n'Please check if another section with the same number or URL name does not exist already.': 'Prosím zkontrolujte, jestli již neexistuje rubrika se stejným URL názvem nebo číslem.'\n'Delete section': 'Odstranit rubriku'\n'You do not have the right to delete sections.': 'Nemáte právo mazat rubriky'\n'Are you sure you want to delete the section $1?': 'Určitě chcete smazat rubriku $1?'\n'Deleting section': 'Mazání rubriky'\n'The section $1 has been deleted.': 'Rubrika $1 byla smazána'\n'Configure section': 'Nastavit rubriku'\n'The section could not be changed.': 'Rubrika nemohla být změněna'\n'Duplicate section': 'Duplikovat rubriku'\n'The destination issue is the same as the source issue.': 'Cílové vydání je stejné jako zdrojové.'\n'Error updating subscriptions.': 'Chyba při aktualizaci předplatného.'\n'Duplicating section': 'Duplikuje se rubrika'\n'The section $1 could not be duplicated': 'Rubrika $1 nelze duplikovat'\n'Section $1 has been duplicated to $2. $3 of $4': 'Rubrika $1 byla duplikována do $2. $3 z $4'\n'You do not have the right to modify sections.': 'Nemáte oprávnění upravovat rubriky.'\n'A total of $1 articles were deleted.': 'Celkem $1 článků odstraněno.'\n'Duplicate Section:': 'Duplikovat Rubriku:'\n'Existing Section': 'Existující Rubrika'\n'Go to new section': 'Jít na nová rubrika'\n'Go to source section': 'Jít na zdrojová rubrika'\n'New Section': 'Nová Rubrika'\n'Please select either $1 or $2.': 'Prosím vyberte $1 nebo $2.'\n'Select destination section:': 'Zvolte cílovou rubriku:'\nOR: NEBO\n'URL Name': 'Jméno vydání v URL'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'Číslo rubriky již existuje. Prosím zvolte jinou hodnotu nebo použíjte výběr(níže) k nalezení existující rubriky.'\nWarning: Varování\n'You must select a section.': 'Zvolte rubriku.'\n'You must specify a name for the section.': 'Zadejte název rubriky.'\n'The section could not be added.': 'Rubrika nemohla být přidána'\n'Add new section': 'Přidat novou rubriku'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.da.yml",
    "content": "default: standard\n'before you can configure the section templates.': 'før du kan konfigurere sektions skabelonerne'\n'You have to assign a theme to the issue': 'Du skal tilføje et tema til udgivelsen'\n'The section number $1 was already in use.': 'Sektions nummeret $1 er allerede i brug'\n'Delete all articles written in $1 language from this section': 'Slet alle artikler på $1fra sektionen'\n'Delete all articles and all of their translations': 'Slet alle artikler og deres oversættelser'\n'Delete only this section ($1)': 'Selt kun denne sektion ($1)'\n'Delete all translations of this section': 'Slet alle oversættelser af denne sektion'\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': 'Antal artikler <BR><SMALL>(Publiceret/Total/Total)</SMALL>'\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': 'URL navnet skal være unikt for alle sektioner i denne udgivelse.<br>URL navnet du har angivet ($1) bruges af sektion $2$3. $4$5'\n'Section updated': 'Sektion opdateret'\n'There are $1 subscriptions which will be affected.': '$1 abonnementer bliver berørt.'\n'There are $1 articles in this section.': 'Der er $1 artikler i denne sektion.'\n'Go To Articles': 'Gå til artikler'\n'Add section to all subscriptions.': 'Føj sektion til alle abonnementer.'\n'Delete section from all subscriptions.': 'Slet sektion fra alle abonnementer.'\n'A total of $1 subscriptions were updated.': '$1 abonnementer blev opdateret.'\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'Navn<BR><SMALL>(klik for at se artikler)</SMALL>'\n'Delete section $1': 'Slet sektion $1'\n'Adding new section': 'Tilføjer ny sektion'\n'You do not have the right to add sections.': 'Du har ikke rettigheder til at tilføje sektioner.'\n'The section $1 has been successfuly added.': 'Sektionen $1 blev tilføjet.'\n'Please check if another section with the same number or URL name does not exist already.': 'Kontroller om en anden sektion bruger samme nummer eller URL.'\n'Delete section': 'Slet sektion'\n'You do not have the right to delete sections.': 'Du har ikke rettigheder til at slette sektioner.'\n'Are you sure you want to delete the section $1?': 'Vil du slette sektionen $1?'\n'Deleting section': 'Sletter sektion'\n'The section $1 has been deleted.': 'Sektionen $1 blev slettet.'\n'Configure section': 'Rediger sektion'\n'The section could not be changed.': 'Sektionen kunne ikke ændres.'\n'Duplicate section': 'Kopier sektion'\n'The destination issue is the same as the source issue.': 'Kilde udgivelse og destinations udgivelse er identiske.'\n'Error updating subscriptions.': 'Abonnementer kunne ikke opdateres.'\n'Duplicating section': 'Kopierer sektion'\n'The section $1 could not be duplicated': 'Sektionen $1 kunne ikke kopieres'\n'Section $1 has been duplicated to $2. $3 of $4': 'Sektionen $1 blev kopieret til $2. $3 af $4'\n'You do not have the right to modify sections.': 'Du har ikke rettigheder til at redigere sektioner.'\n'A total of $1 articles were deleted.': '$1 artikler blev slettet.'\n'Duplicate Section:': 'Kopier sektion:'\n'Existing Section': 'Eksisterende sektion'\n'Go to new section': 'Gå til ny sektion'\n'Go to source section': 'Gå til kilde sektionen'\n'New Section': 'Ny sektion'\n'Please select either $1 or $2.': 'Vælg enten $1 eller $2.'\n'Select destination section:': 'Vælg destinations sektionen:'\nOR: ELLER\n'URL Name': 'URL navn'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'Sektionsnummeret eksisterer allerede. Angiv en anden værdi eller find en eksisterende sektion i menuen.'\nWarning: Advarsel\n'You must select a section.': 'Vælg en sektion.'\n'You must specify a name for the section.': 'Angiv et navn for sektionen.'\n'The section could not be added.': 'Sektionen kunne ikke tilføjes.'\n'Add new section': 'Tilføj ny sektion'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.de.yml",
    "content": "default: Standard\n'before you can configure the section templates.': 'bevor Sie die Rubriken Templates konfigurieren können. '\n'You have to assign a theme to the issue': 'Sie müssen dieser Ausgabe eine Designvorlage zuweisen'\n'The section number $1 was already in use.': 'Die Rubriknummer $1 wird bereits verwendet.'\n'Delete all articles written in $1 language from this section': 'Alle Artikel der Sprache $1 aus dieser Rubrik löschen'\n'Delete all articles and all of their translations': 'Alle Artikel und ihre Übersetzungen löschen'\n'Delete only this section ($1)': 'Nur diese Rubrik ($1) löschen'\n'Delete all translations of this section': 'Alle Übersetzungen dieser Rubrik löschen'\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': Artikelanzahl<BR><SMALL>(Veröffentlicht/Gesamt)</SMALL>\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': 'Der URL Name muss für alle Rubriken dieser Ausgabe unterschiedlich sein. Der gewählte URL Name steht im Widerspruch zur Rubrik $2$3. $4$5'\n'Section updated': 'Rubrik aktualisiert'\n'There are $1 subscriptions which will be affected.': '$1 Abonnements sind betroffen.'\n'There are $1 articles in this section.': 'Es gibt $1 Artikel in dieser Rubrik.'\n'Go To Articles': 'Gehe zu Artikeln'\n'Add section to all subscriptions.': 'Rubrik zu allen Abonnements hinzufügen.'\n'Delete section from all subscriptions.': 'Rubrik aus allen Abonnements entfernen.'\n'A total of $1 subscriptions were updated.': 'Es wurden $1 Abonnements aktualisiert.'\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'Name<BR><SMALL>(click to see articles)</SMALL> '\n'Delete section $1': 'Rubrik $1 löschen'\n'Adding new section': 'Rubrik wird hinzugefügt'\n'You do not have the right to add sections.': 'Keine Berechtigung Rubriken hinzuzufügen.'\n'The section $1 has been successfuly added.': 'Rubrik $1 wurde erfolgreich hinzugefügt.'\n'Please check if another section with the same number or URL name does not exist already.': 'Bitte prüfen, ob eine andere Rubrik mit der gleichen Nummer oder URL schon existiert.'\n'Delete section': 'Rubrik löschen'\n'You do not have the right to delete sections.': 'Sie sind nicht berechtigt, Rubriken zu löschen.'\n'Are you sure you want to delete the section $1?': 'Soll Rubrik $1 wirklich gelöscht werden?'\n'Deleting section': 'Rubrik wird gelöscht'\n'The section $1 has been deleted.': 'Rubrik $1 wurde gelöscht.'\n'Configure section': 'Rubrik konfigurieren'\n'The section could not be changed.': 'Rubrik konnte nicht geändert werden.'\n'Duplicate section': 'Rubrik duplizieren'\n'The destination issue is the same as the source issue.': 'Die Zielausgabe ist mit der Ausgangausgabe identisch.'\n'Error updating subscriptions.': 'Fehler bei der Aktualisierung der Abonnements.'\n'Duplicating section': 'Rubrik wird dupliziert'\n'The section $1 could not be duplicated': 'Die Rubrik $1 konnte nicht dupliziert werden.'\n'Section $1 has been duplicated to $2. $3 of $4': 'Rubrik $1 wurde nach $2 dupliziert. $3 von $4'\n'You do not have the right to modify sections.': 'Sie sind nicht berechtigt, Rubriken zu verändern.'\n'A total of $1 articles were deleted.': 'Insgesamt $1 Artikel wurden gelöscht.'\n'Duplicate Section:': 'Rubrik duplizieren:'\n'Existing Section': 'Bestehende Rubrik'\n'Go to new section': 'Zu neuer Rubrik wechseln'\n'Go to source section': 'Zur Ausgangsrubrik wechseln'\n'New Section': 'Neue Rubrik'\n'Please select either $1 or $2.': 'Bitte entweder $1 oder $2 auswählen.'\n'Select destination section:': 'Zielrubrik auswählen:'\nOR: ODER\n'URL Name': 'URL Name'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'Die gewählte Nummer der Rubrik existiert bereits, bitte einen anderen Wert angeben oder aus dem Dropdown Menü auswählen.'\nWarning: Warnung\n'You must select a section.': 'Sie müssen eine Rubrik wählen.'\n'You must specify a name for the section.': 'Sie müssen für die Rubrik einen Namen angeben.'\n'The section could not be added.': 'Die Rubrik konnte nicht hinzugefügt werden.'\n'Add new section': 'Neue Rubrik hinzufügen'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.de_AT.yml",
    "content": "default: Standard\n'before you can configure the section templates.': 'bevor Sie die Rubriken Templates konfigurieren können. '\n'You have to assign a theme to the issue': 'Sie müssen dieser Ausgabe ein Thema zuweisen'\n'The section number $1 was already in use.': 'Die Rubriknummer $1 wird bereits verwendet.'\n'Delete all articles written in $1 language from this section': 'Alle Artikel der Sprache $1 aus dieser Rubrik löschen'\n'Delete all articles and all of their translations': 'Alle Artikel und ihre Übersetzungen löschen'\n'Delete only this section ($1)': 'Nur diese Rubrik ($1) löschen'\n'Delete all translations of this section': 'Alle Übersetzungen dieser Rubrik löschen'\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': Artikelanzahl<BR><SMALL>(Veröffentlicht/Gesamt)</SMALL>\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': 'Der URL Name muss für alle Rubriken dieser Ausgabe unterschiedlich sein. Der gewählte URL Name steht im Widerspruch zur Rubrik $2$3. $4$5'\n'Section updated': 'Rubrik aktualisiert'\n'There are $1 subscriptions which will be affected.': '$1 Abonnements sind betroffen.'\n'There are $1 articles in this section.': 'Es gibt $1 Artikel in dieser Rubrik.'\n'Go To Articles': 'Gehe zu Artikeln'\n'Add section to all subscriptions.': 'Rubrik zu allen Abonnements hinzufügen.'\n'Delete section from all subscriptions.': 'Rubrik aus allen Abonnements entfernen.'\n'A total of $1 subscriptions were updated.': 'Es wurden $1 Abonnements aktualisiert.'\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'Name<BR><SMALL>(click to see articles)</SMALL> '\n'Delete section $1': 'Rubrik $1 löschen'\n'Adding new section': 'Rubrik wird hinzugefügt'\n'You do not have the right to add sections.': 'Keine Berechtigung Rubriken hinzuzufügen.'\n'The section $1 has been successfuly added.': 'Rubrik $1 wurde erfolgreich hinzugefügt.'\n'Please check if another section with the same number or URL name does not exist already.': 'Bitte prüfen, ob eine andere Rubrik mit der gleichen Nummer oder URL schon existiert.'\n'Delete section': 'Rubrik löschen'\n'You do not have the right to delete sections.': 'Sie sind nicht berechtigt, Rubriken zu löschen.'\n'Are you sure you want to delete the section $1?': 'Soll Rubrik $1 wirklich gelöscht werden?'\n'Deleting section': 'Rubrik wird gelöscht'\n'The section $1 has been deleted.': 'Rubrik $1 wurde gelöscht.'\n'Configure section': 'Rubrik konfigurieren'\n'The section could not be changed.': 'Rubrik konnte nicht geändert werden.'\n'Duplicate section': 'Rubrik duplizieren'\n'The destination issue is the same as the source issue.': 'Die Zielausgabe ist mit der Ausgangausgabe identisch.'\n'Error updating subscriptions.': 'Fehler bei der Aktualisierung der Abonnements.'\n'Duplicating section': 'Rubrik wird dupliziert'\n'The section $1 could not be duplicated': 'Die Rubrik $1 konnte nicht dupliziert werden.'\n'Section $1 has been duplicated to $2. $3 of $4': 'Rubrik $1 wurde nach $2 dupliziert. $3 von $4'\n'You do not have the right to modify sections.': 'Sie sind nicht berechtigt, Rubriken zu verändern.'\n'A total of $1 articles were deleted.': 'Insgesamt $1 Artikel wurden gelöscht.'\n'Duplicate Section:': 'Rubrik duplizieren:'\n'Existing Section': 'Bestehende Rubrik'\n'Go to new section': 'Zu neuer Rubrik wechseln'\n'Go to source section': 'Zur Ausgangsrubrik wechseln'\n'New Section': 'Neue Rubrik'\n'Please select either $1 or $2.': 'Bitte entweder $1 oder $2 auswählen.'\n'Select destination section:': 'Zielrubrik auswählen:'\nOR: ODER\n'URL Name': 'URL Name'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'Die gewählte Nummer der Rubrik existiert bereits, bitte einen anderen Wert angeben oder aus dem Dropdown Menü auswählen.'\nWarning: Warnung\n'You must select a section.': 'Sie müssen eine Rubrik wählen.'\n'You must specify a name for the section.': 'Sie müssen für die Rubrik einen Namen angeben.'\n'The section could not be added.': 'Die Rubrik konnte nicht hinzugefügt werden.'\n'Add new section': 'Neue Rubrik hinzufügen'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.el.yml",
    "content": "default: προεπιλογή\n'before you can configure the section templates.': 'προτού μπορέσετε να διαμορφώσετε τα πρότυπα ενοτήτων.'\n'You have to assign a theme to the issue': 'Πρέπει να ορίσετε ένα θέμα στο τεύχος'\n'The section number $1 was already in use.': 'Ο αριθμός ενότητας $1 βρισκόταν ήδη σε χρήση.'\n'Delete all articles written in $1 language from this section': 'Διαγραφή όλων των άρθρων, γραμμένων στη $1 γλώσσα, από αυτή την ενότητα'\n'Delete all articles and all of their translations': 'Διαγραφή όλων των άρθρων και των μεταφράσεων τους'\n'Delete only this section ($1)': 'Διαγραφή μόνο αυτής της ενότητας ($1)'\n'Delete all translations of this section': 'Διαγραφή όλων των μεταφράσεων αυτής της ενότητας'\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': 'Αρ. Άρθρων<BR><SMALL>(Δημοσιεύτηκαν/Συνολικά)</SMALL>'\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': 'Το όνομα URL πρέπει να είναι μοναδικό για όλες τις ενότητες αυτού του τέυχους.<br>Το όνομα  URL που ορίσατε ($1) έρχεται σε σύγκρουση με την ενότητα $2$3. $4$5 '\n'Section updated': 'Η ενότητα ενημερώθηκε'\n'There are $1 subscriptions which will be affected.': 'Υπάρχουν $1 συνδρομές, που θα επηρρεαστούν.'\n'There are $1 articles in this section.': 'Υπάρχουν $1 άρθρα σε αυτή την ενότητα. '\n'Go To Articles': 'Πήγαινε Στα Άρθρα'\n'Add section to all subscriptions.': 'Προσθήκη ενότητας σε όλες τις συνδρομές.'\n'Delete section from all subscriptions.': 'Διαγραφή ενότητας από όλες τις συνδρομές.'\n'A total of $1 subscriptions were updated.': 'Συνολικά $1 συνδρομές ενημερώθηκαν.'\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'Όνομα<BR><SMALL>(κάντε κλίκ για να δείτε τα άρθρα)</SMALL>'\n'Delete section $1': 'Διαγραφή ενότητας $1'\n'Adding new section': 'Προσθήκη νέας ενότητας'\n'You do not have the right to add sections.': 'Δεν έχετε το δικαίωμα να προσθέσετε ενότητες.'\n'The section $1 has been successfuly added.': 'Η ενότητα $1 προστέθηκε επιτυχώς.'\n'Please check if another section with the same number or URL name does not exist already.': 'Παρακαλώ ελένξτε εάν δεν υπάρχει άλλη ενότητα με το ίδιο όνομα ή το ίδιο URL όνομα.'\n'Delete section': 'Διαγραφή ενότητας'\n'You do not have the right to delete sections.': 'Δεν έχετε το δικαίωμα να διαγράψετε ενότητες.'\n'Are you sure you want to delete the section $1?': 'Είστε σίγουρος/η ότι θέλετε να διαγράψετε την ενότητα $1;'\n'Deleting section': 'Διαγραφή ενότητας'\n'The section $1 has been deleted.': 'Η ενότητα $1 διαγράφτηκε.'\n'Configure section': 'Διαμόρφωση ενότητας'\n'The section could not be changed.': 'Δεν ήταν δυνατόν να γίνουν αλλαγές στην ενότητα.'\n'Duplicate section': 'Αντιγραφή ενότητας'\n'The destination issue is the same as the source issue.': 'Το τεύχος προορισμού είναι το ίδιο με το υφιστάμενο.'\n'Error updating subscriptions.': 'Σφάλμα στην ανανέωση συνδρομών.'\n'Duplicating section': 'Αντιγραφή ενότητας'\n'The section $1 could not be duplicated': 'Η ενότητα $1 δεν μπόρεσε να αντιγραφεί'\n'Section $1 has been duplicated to $2. $3 of $4': 'Η ενότητα $1 έχει αντιγραφεί σε $2. $3 από $4'\n'You do not have the right to modify sections.': 'Δεν έχετε το δικαίωμα να τροποποιήσετε ενότητες.'\n'A total of $1 articles were deleted.': 'Συνολικά $1 άρθρα διαγράφτηκαν.'\n'Duplicate Section:': 'Αντιγραφή Ενότητας:'\n'Existing Section': 'Υπάρχουσα Ενότητα'\n'Go to new section': 'Πήγαινε σε νέα ενότητα'\n'Go to source section': 'Πήγαινε στη πηγαία ενότητα'\n'New Section': 'Νέα Ενότητα'\n'Please select either $1 or $2.': 'Παρακαλούμε επιλέξτε είτε $1 είτε $2:'\n'Select destination section:': 'Επιλογή ενότητας προορισμού:'\nOR: Ή\n'URL Name': 'Όνομα URL'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'Ο αριθμός της ενότητας που θέσατε υπάρχει ήδη, παρακολούμε ορίστε μία διαφορετική τιμή ή χρησιμοποιήστε το  drop down μενού για να βρείτε μία ήδη υπάρχουσα ενότητα.'\nWarning: Προειδοποίηση\n'You must select a section.': 'Πρέπει να επιλέξετε μια ενότητα.'\n'You must specify a name for the section.': 'Πρέπει να ορίσετε ένα όνομα για την ενότητα.'\n'The section could not be added.': 'Δεν ήταν δυνατή η προσθήκη ενότητας.'\n'Add new section': 'Προσθήκη νέας ενότητας'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.en.yml",
    "content": "default: default\n'before you can configure the section templates.': 'before you can configure the section templates.'\n'You have to assign a theme to the issue': 'You have to assign a theme to the issue'\n'The section number $1 was already in use.': 'The section number $1 was already in use.'\n'Delete all articles written in $1 language from this section': 'Delete all articles written in $1 language from this section'\n'Delete all articles and all of their translations': 'Delete all articles and all of their translations'\n'Delete only this section ($1)': 'Delete only this section ($1)'\n'Delete all translations of this section': 'Delete all translations of this section'\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': 'No. of Articles<BR><SMALL>(Published/Total)</SMALL>'\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': 'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5'\n'Section updated': 'Section updated'\n'There are $1 subscriptions which will be affected.': 'There are $1 subscriptions which will be affected.'\n'There are $1 articles in this section.': 'There are $1 articles in this section.'\n'Go To Articles': 'Go To Articles'\n'Add section to all subscriptions.': 'Add section to all subscriptions.'\n'Delete section from all subscriptions.': 'Delete section from all subscriptions.'\n'A total of $1 subscriptions were updated.': 'A total of $1 subscriptions were updated.'\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'Name<BR><SMALL>(click to see articles)</SMALL>'\n'Delete section $1': 'Delete section $1'\n'Adding new section': 'Adding new section'\n'You do not have the right to add sections.': 'You do not have the right to add sections.'\n'The section $1 has been successfuly added.': 'The section $1 has been successfuly added.'\n'Please check if another section with the same number or URL name does not exist already.': 'Please check if another section with the same number or URL name does not exist already.'\n'Delete section': 'Delete section'\n'You do not have the right to delete sections.': 'You do not have the right to delete sections.'\n'Are you sure you want to delete the section $1?': 'Are you sure you want to delete the section $1?'\n'Deleting section': 'Deleting section'\n'The section $1 has been deleted.': 'The section $1 has been deleted.'\n'Configure section': 'Configure section'\n'The section could not be changed.': 'The section could not be changed.'\n'Duplicate section': 'Duplicate section'\n'The destination issue is the same as the source issue.': 'The destination issue is the same as the source issue.'\n'Error updating subscriptions.': 'Error updating subscriptions.'\n'Duplicating section': 'Duplicating section'\n'The section $1 could not be duplicated': 'The section $1 could not be duplicated'\n'Section $1 has been duplicated to $2. $3 of $4': 'Section $1 has been duplicated to $2. $3 of $4'\n'You do not have the right to modify sections.': 'You do not have the right to modify sections.'\n'A total of $1 articles were deleted.': 'A total of $1 articles were deleted.'\n'Duplicate Section:': 'Duplicate Section:'\n'Existing Section': 'Existing Section'\n'Go to new section': 'Go to new section'\n'Go to source section': 'Go to source section'\n'New Section': 'New Section'\n'Please select either $1 or $2.': 'Please select either $1 or $2.'\n'Select destination section:': 'Select destination section:'\nOR: OR\n'URL Name': 'URL Name'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.'\nWarning: Warning\n'You must select a section.': 'You must select a section.'\n'You must specify a name for the section.': 'You must specify a name for the section.'\n'The section could not be added.': 'The section could not be added.'\n'Add new section': 'Add new section'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.en_GB.yml",
    "content": "default: default\n'before you can configure the section templates.': 'before you can configure the section templates.'\n'You have to assign a theme to the issue': 'You have to assign a theme to the issue'\n'The section number $1 was already in use.': 'The section number $1 was already in use.'\n'Delete all articles written in $1 language from this section': 'Delete all articles written in $1 language from this section'\n'Delete all articles and all of their translations': 'Delete all articles and all of their translations'\n'Delete only this section ($1)': 'Delete only this section ($1)'\n'Delete all translations of this section': 'Delete all translations of this section'\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': 'No. of Articles<BR><SMALL>(Published/Total)</SMALL>'\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': 'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5'\n'Section updated': 'Section updated'\n'There are $1 subscriptions which will be affected.': 'There are $1 subscriptions which will be affected.'\n'There are $1 articles in this section.': 'There are $1 articles in this section.'\n'Go To Articles': 'Go To Articles'\n'Add section to all subscriptions.': 'Add section to all subscriptions.'\n'Delete section from all subscriptions.': 'Delete section from all subscriptions.'\n'A total of $1 subscriptions were updated.': 'A total of $1 subscriptions were updated.'\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'Name<BR><SMALL>(click to see articles)</SMALL>'\n'Delete section $1': 'Delete section $1'\n'Adding new section': 'Adding new section'\n'You do not have the right to add sections.': 'You do not have the right to add sections.'\n'The section $1 has been successfuly added.': 'The section $1 has been successfuly added.'\n'Please check if another section with the same number or URL name does not exist already.': 'Please check if another section with the same number or URL name does not exist already.'\n'Delete section': 'Delete section'\n'You do not have the right to delete sections.': 'You do not have the right to delete sections.'\n'Are you sure you want to delete the section $1?': 'Are you sure you want to delete the section $1?'\n'Deleting section': 'Deleting section'\n'The section $1 has been deleted.': 'The section $1 has been deleted.'\n'Configure section': 'Configure section'\n'The section could not be changed.': 'The section could not be changed.'\n'Duplicate section': 'Duplicate section'\n'The destination issue is the same as the source issue.': 'The destination issue is the same as the source issue.'\n'Error updating subscriptions.': 'Error updating subscriptions.'\n'Duplicating section': 'Duplicating section'\n'The section $1 could not be duplicated': 'The section $1 could not be duplicated'\n'Section $1 has been duplicated to $2. $3 of $4': 'Section $1 has been duplicated to $2. $3 of $4'\n'You do not have the right to modify sections.': 'You do not have the right to modify sections.'\n'A total of $1 articles were deleted.': 'A total of $1 articles were deleted.'\n'Duplicate Section:': 'Duplicate Section:'\n'Existing Section': 'Existing Section'\n'Go to new section': 'Go to new section'\n'Go to source section': 'Go to source section'\n'New Section': 'New Section'\n'Please select either $1 or $2.': 'Please select either $1 or $2.'\n'Select destination section:': 'Select destination section:'\nOR: OR\n'URL Name': 'URL Name'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.'\nWarning: Warning\n'You must select a section.': 'You must select a section.'\n'You must specify a name for the section.': 'You must specify a name for the section.'\n'The section could not be added.': 'The section could not be added.'\n'Add new section': 'Add new section'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.es.yml",
    "content": "default: 'por defecto'\n'before you can configure the section templates.': 'antes de configurar las plantillas de sección.'\n'You have to assign a theme to the issue': 'Debe asignar un tema para esta edición'\n'The section number $1 was already in use.': 'El número de sección $1 ya está en uso.'\n'Delete all articles written in $1 language from this section': 'Borrar todos los artículos escritos en idioma $1 de esta sección. '\n'Delete all articles and all of their translations': 'Borrar todos los artículos y todas sus traducciones'\n'Delete only this section ($1)': 'Borrar solo esta sección ($1)'\n'Delete all translations of this section': 'Eliminar todas las traduciones de esta sección'\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': 'No. de artículos <BR><SMALL>(Publicadas/Total)</SMALL>'\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': 'El nombre del URL deber ser único para todas las secciones en esta edición.  <br>El nombre del URL que especificó ($1) tiene conflicto con la sección $2$3. $4$5'\n'Section updated': 'Sección actualizada'\n'There are $1 subscriptions which will be affected.': 'Hay $1 suscripciones que se verán afectadas.'\n'There are $1 articles in this section.': 'Hay $1 artículos en esta sección.'\n'Go To Articles': 'Ir a artículos'\n'Add section to all subscriptions.': 'Agregar secciones a todas las suscripciones.'\n'Delete section from all subscriptions.': 'Eliminar la sección de todas las suscripciones.'\n'A total of $1 subscriptions were updated.': 'Se actualizó un total de $1 suscripciones.'\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'Nombre<BR><SMALL>(clic para ver los artículos)</SMALL> '\n'Delete section $1': 'Borrar sección $1'\n'Adding new section': 'Agregando una nueva sección'\n'You do not have the right to add sections.': 'No tiene privilegios para agregar nuevas secciones'\n'The section $1 has been successfuly added.': 'La sección $1 ha sido agregada con éxito'\n'Please check if another section with the same number or URL name does not exist already.': 'Por favor verifique si existe otra sección con el mismo número o nombre de URL.    '\n'Delete section': 'Borrar sección'\n'You do not have the right to delete sections.': 'No tiene privilegios para borrar secciones'\n'Are you sure you want to delete the section $1?': '¿Está seguro de querer borrar la sección $1?'\n'Deleting section': 'Borrando sección'\n'The section $1 has been deleted.': 'La sección $1 ha sido borrada'\n'Configure section': 'Configure sección'\n'The section could not be changed.': 'La sección no pudo ser modificada'\n'Duplicate section': 'Seccion duplicada'\n'The destination issue is the same as the source issue.': 'La edición destino es la misma que la edición fuente.'\n'Error updating subscriptions.': 'Error al actualizar suscripciones.'\n'Duplicating section': 'Duplicando sección'\n'The section $1 could not be duplicated': 'La seccion $1 no pudo ser duplicada'\n'Section $1 has been duplicated to $2. $3 of $4': 'La seccion $1 ha sido duplicada a $2, $3 de $4'\n'You do not have the right to modify sections.': 'No tiene privilegios para modificar secciones'\n'A total of $1 articles were deleted.': 'Se eliminó un total de $1 artículos'\n'Duplicate Section:': 'Duplicar sección:'\n'Existing Section': 'Sección existente'\n'Go to new section': 'Ir a nueva sección'\n'Go to source section': 'Ir a sección fuente'\n'New Section': 'Nueva sección'\n'Please select either $1 or $2.': 'Por favor elija entre  $1 o $2.'\n'Select destination section:': 'Elija sección de destino:'\nOR: OR\n'URL Name': 'Nombre del URL'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'El nombre de sección que especificó ya existe, por favor especifique un valor diferente o use el menú dropdown para encontrar una sección existente.'\nWarning: Advertencia\n'You must select a section.': 'Debe seleccionar una sección'\n'You must specify a name for the section.': 'Debe especificar un nombre para la sección'\n'The section could not be added.': 'La sección no pudo ser agregada'\n'Add new section': 'Agregar nueva sección'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.es_AR.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': null\n'Add section to all subscriptions.': null\n'Delete section from all subscriptions.': null\n'A total of $1 subscriptions were updated.': null\n'Name<BR><SMALL>(click to see articles)</SMALL>': null\n'Delete section $1': null\n'Adding new section': null\n'You do not have the right to add sections.': null\n'The section $1 has been successfuly added.': null\n'Please check if another section with the same number or URL name does not exist already.': null\n'Delete section': null\n'You do not have the right to delete sections.': null\n'Are you sure you want to delete the section $1?': null\n'Deleting section': null\n'The section $1 has been deleted.': null\n'Configure section': null\n'The section could not be changed.': null\n'Duplicate section': null\n'The destination issue is the same as the source issue.': null\n'Error updating subscriptions.': null\n'Duplicating section': null\n'The section $1 could not be duplicated': null\n'Section $1 has been duplicated to $2. $3 of $4': null\n'You do not have the right to modify sections.': null\n'A total of $1 articles were deleted.': null\n'Duplicate Section:': null\n'Existing Section': null\n'Go to new section': null\n'Go to source section': null\n'New Section': null\n'Please select either $1 or $2.': null\n'Select destination section:': null\nOR: null\n'URL Name': null\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': null\nWarning: null\n'You must select a section.': null\n'You must specify a name for the section.': null\n'The section could not be added.': null\n'Add new section': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.fa.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': null\n'Add section to all subscriptions.': null\n'Delete section from all subscriptions.': null\n'A total of $1 subscriptions were updated.': null\n'Name<BR><SMALL>(click to see articles)</SMALL>': null\n'Delete section $1': null\n'Adding new section': null\n'You do not have the right to add sections.': null\n'The section $1 has been successfuly added.': null\n'Please check if another section with the same number or URL name does not exist already.': null\n'Delete section': null\n'You do not have the right to delete sections.': null\n'Are you sure you want to delete the section $1?': null\n'Deleting section': null\n'The section $1 has been deleted.': null\n'Configure section': null\n'The section could not be changed.': null\n'Duplicate section': null\n'The destination issue is the same as the source issue.': null\n'Error updating subscriptions.': null\n'Duplicating section': null\n'The section $1 could not be duplicated': null\n'Section $1 has been duplicated to $2. $3 of $4': null\n'You do not have the right to modify sections.': null\n'A total of $1 articles were deleted.': null\n'Duplicate Section:': null\n'Existing Section': null\n'Go to new section': null\n'Go to source section': null\n'New Section': null\n'Please select either $1 or $2.': null\n'Select destination section:': null\nOR: null\n'URL Name': null\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': null\nWarning: null\n'You must select a section.': null\n'You must specify a name for the section.': null\n'The section could not be added.': null\n'Add new section': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.fa_AF.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': null\n'Add section to all subscriptions.': null\n'Delete section from all subscriptions.': null\n'A total of $1 subscriptions were updated.': null\n'Name<BR><SMALL>(click to see articles)</SMALL>': null\n'Delete section $1': null\n'Adding new section': null\n'You do not have the right to add sections.': null\n'The section $1 has been successfuly added.': null\n'Please check if another section with the same number or URL name does not exist already.': null\n'Delete section': null\n'You do not have the right to delete sections.': null\n'Are you sure you want to delete the section $1?': null\n'Deleting section': null\n'The section $1 has been deleted.': null\n'Configure section': null\n'The section could not be changed.': null\n'Duplicate section': null\n'The destination issue is the same as the source issue.': null\n'Error updating subscriptions.': null\n'Duplicating section': null\n'The section $1 could not be duplicated': null\n'Section $1 has been duplicated to $2. $3 of $4': null\n'You do not have the right to modify sections.': null\n'A total of $1 articles were deleted.': null\n'Duplicate Section:': null\n'Existing Section': null\n'Go to new section': null\n'Go to source section': null\n'New Section': null\n'Please select either $1 or $2.': null\n'Select destination section:': null\nOR: null\n'URL Name': null\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': null\nWarning: null\n'You must select a section.': null\n'You must specify a name for the section.': null\n'The section could not be added.': null\n'Add new section': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.fr.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': 'Aller aux Articles'\n'Add section to all subscriptions.': 'Ajoutez la section à tous les abonnements.'\n'Delete section from all subscriptions.': 'Supprimez la section de tous les abonnements.'\n'A total of $1 subscriptions were updated.': 'Un total de $1 abonnements a été mis à jour. '\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'Nom<BR><SMALL>(cliquer pour voir les articles)</SMALL>'\n'Delete section $1': 'Supprimer la section $1'\n'Adding new section': 'Ajout nouvelle section'\n'You do not have the right to add sections.': 'Vous navez pas le droit dajouter des sections'\n'The section $1 has been successfuly added.': 'La section $1 a été ajoutée avec succès.'\n'Please check if another section with the same number or URL name does not exist already.': 'SVP verifier si une autre section avec  le même numéro ou nom URL nexiste pas déjà.'\n'Delete section': 'supprimer la section'\n'You do not have the right to delete sections.': 'Vous navez pas le droit de supprimer des sections.'\n'Are you sure you want to delete the section $1?': 'Etes-vous sûr de vouloir supprimer la section $1?'\n'Deleting section': 'Suppression section'\n'The section $1 has been deleted.': 'La section $1 a été modifiée.'\n'Configure section': 'Configurer la section'\n'The section could not be changed.': 'La section ne peut pas être changée.'\n'Duplicate section': 'Dupliquer la section'\n'The destination issue is the same as the source issue.': 'La destination de lédition est la même comme lédition source.'\n'Error updating subscriptions.': 'Erreur en mettant à jour les abonnements.'\n'Duplicating section': 'Duplication de section'\n'The section $1 could not be duplicated': 'La section $1 ne peut pas être dupliquée'\n'Section $1 has been duplicated to $2. $3 of $4': 'Section $1 a été dupliquée à $2. $3 de $4'\n'You do not have the right to modify sections.': 'Vous navez pas le droit de modifier des sections.'\n'A total of $1 articles were deleted.': 'Un total de $1 articles a été supprimé. '\n'Duplicate Section:': 'Dupliquer Section:'\n'Existing Section': 'Section Existante'\n'Go to new section': 'Aller à la nouvelle section'\n'Go to source section': 'Aller à la section source'\n'New Section': 'Nouvelle Section'\n'Please select either $1 or $2.': 'Choisir Sil vous plaît ou bien $1 ou bien $2 . '\n'Select destination section:': 'Choisir la section de destination'\nOR: OU\n'URL Name': 'Nom URL'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'Le numéro de section indiqué existe déjà , spécifier SVP une valeur différente ou employez la liste déroulante pour trouver une section existante. '\nWarning: Avertissement\n'You must select a section.': 'Vous devez choisir une section.'\n'You must specify a name for the section.': 'Vous devez spécifier un nom pour la section. '\n'The section could not be added.': 'La section ne peut pas être ajoutée'\n'Add new section': 'Ajouter nouvelle section'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.he.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': null\n'Add section to all subscriptions.': null\n'Delete section from all subscriptions.': null\n'A total of $1 subscriptions were updated.': null\n'Name<BR><SMALL>(click to see articles)</SMALL>': null\n'Delete section $1': null\n'Adding new section': null\n'You do not have the right to add sections.': null\n'The section $1 has been successfuly added.': null\n'Please check if another section with the same number or URL name does not exist already.': null\n'Delete section': null\n'You do not have the right to delete sections.': null\n'Are you sure you want to delete the section $1?': null\n'Deleting section': null\n'The section $1 has been deleted.': null\n'Configure section': null\n'The section could not be changed.': null\n'Duplicate section': null\n'The destination issue is the same as the source issue.': null\n'Error updating subscriptions.': null\n'Duplicating section': null\n'The section $1 could not be duplicated': null\n'Section $1 has been duplicated to $2. $3 of $4': null\n'You do not have the right to modify sections.': null\n'A total of $1 articles were deleted.': null\n'Duplicate Section:': null\n'Existing Section': null\n'Go to new section': null\n'Go to source section': null\n'New Section': null\n'Please select either $1 or $2.': null\n'Select destination section:': null\nOR: null\n'URL Name': 'שם קישור'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': null\nWarning: null\n'You must select a section.': null\n'You must specify a name for the section.': null\n'The section could not be added.': null\n'Add new section': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.hr.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': 'Idi na članak'\n'Add section to all subscriptions.': 'Dodaj rubriku svim pretplatama.'\n'Delete section from all subscriptions.': 'Obriši rubriku svim pretplatama.'\n'A total of $1 subscriptions were updated.': 'Ukupno $1 pretplata je osvježeno.'\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'Ime<br><small>(kliknite da vidite pojednačne članke)</small>'\n'Delete section $1': 'Izbriši rubriku $1'\n'Adding new section': 'Dodavanje nove rubrike'\n'You do not have the right to add sections.': 'Nemate ovlasti dodavati rubrike.'\n'The section $1 has been successfuly added.': 'Rubrika $1 je uspješno dodana.'\n'Please check if another section with the same number or URL name does not exist already.': 'Provjerite da li druga rubrika sa istim brojem ili URL imenom već ne postoji.'\n'Delete section': 'Izbriši rubriku'\n'You do not have the right to delete sections.': 'Nemate dozvolu za brisati rubrike.'\n'Are you sure you want to delete the section $1?': 'Jeste li sigurni da želite obrisati rubriku $1?'\n'Deleting section': 'Brisanje rubrike'\n'The section $1 has been deleted.': 'Rubrika $1 je obrisana'\n'Configure section': 'Podesi rubriku'\n'The section could not be changed.': 'Rubrika ne može biti izmijenjena.'\n'Duplicate section': 'Udvostuči rubriku'\n'The destination issue is the same as the source issue.': 'Odredišno izdanje je isto kao izvorno.'\n'Error updating subscriptions.': 'Greška prilikom osvježavanja pretplata.'\n'Duplicating section': 'Udvostručavanje rubrike'\n'The section $1 could not be duplicated': 'Rubrika $1 ne može se udvostručiti'\n'Section $1 has been duplicated to $2. $3 of $4': 'Rubrika $1 je kopirana u $2, $3 od $4'\n'You do not have the right to modify sections.': 'Nemate prava mijenjati rubrike.'\n'A total of $1 articles were deleted.': 'Ukupno $1 članak/a je obrisano.'\n'Duplicate Section:': 'Udvostruči rubriku:'\n'Existing Section': 'Postojeća rubrika'\n'Go to new section': 'Otiđi na novu rubriku'\n'Go to source section': 'Otiđi na izvornu rubriku'\n'New Section': 'Nova rubrika'\n'Please select either $1 or $2.': 'Izaberite $1 ili $2.'\n'Select destination section:': 'Označi odredišnu rubriku:'\nOR: ILI\n'URL Name': 'Ime URL-a'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'Navedeni broj rubrike već postoji, izaberite drugu vrijednost ili koristite padajući izbornik za odabir postojeće rubrike.'\nWarning: Upozorenje\n'You must select a section.': 'Morate označiti rubriku.'\n'You must specify a name for the section.': 'Morate izabrati ime rubrike.'\n'The section could not be added.': 'Rubrika se ne može dodati.'\n'Add new section': 'Dodaj novu rubriku'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.hu.yml",
    "content": "default: alapértelmezett\n'before you can configure the section templates.': 'mielőtt beállíthatod a rovatsablonokat.'\n'You have to assign a theme to the issue': 'Hozzá kell rendelned egy témát a számhoz.'\n'The section number $1 was already in use.': 'A/z $1 számú rovat már foglalt volt.'\n'Delete all articles written in $1 language from this section': 'A/z $1 nyelven írott összes cikk törlése ebből a rovatból'\n'Delete all articles and all of their translations': 'Minden cikk és összes fordításuk törlése'\n'Delete only this section ($1)': 'Csak ezen rovat ($1) törlése'\n'Delete all translations of this section': 'Ezen rovat összes fordításának törlése'\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': 'Cikkek számai<BR><SMALL>(Közzétéve/Összes)</SMALL>'\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': 'Az URL-névnek ezen szám összes rovatához egyedinek kell lennie.<br>Az általad megadott URL-név ($1) ütközik a/z $2$3 rovattal. $4$5'\n'Section updated': 'A rovat frissítése megtörtént'\n'There are $1 subscriptions which will be affected.': '$1 előfizetés van, amelyek érintettek lesznek'\n'There are $1 articles in this section.': 'Ebben a rovatban $1 cikk van. '\n'Go To Articles': 'Ugrás a cikkekhez'\n'Add section to all subscriptions.': 'Rovat hozzáadása az összes előfizetéshez.'\n'Delete section from all subscriptions.': 'A rovat törlése az összes előfizetésből.'\n'A total of $1 subscriptions were updated.': 'Összesen $1 előfizetés került frissítésre.'\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'Név<BR><SMALL>(kattints ide a cikkek megtekintéséhez)</SMALL>'\n'Delete section $1': 'A/z $1 rovat törlése'\n'Adding new section': 'Új rovat hozzáadása'\n'You do not have the right to add sections.': 'Nincs jogod a rovatok hozzáadásához.'\n'The section $1 has been successfuly added.': 'A/z $1 rovat hozzáadása sikerült.'\n'Please check if another section with the same number or URL name does not exist already.': 'Ellenőrizd, hogy létezik-e már másik, azonos számú vagy URL-nevű rovat.'\n'Delete section': 'Rovat törlése'\n'You do not have the right to delete sections.': 'Nincs jogod a rovatok törléséhez.'\n'Are you sure you want to delete the section $1?': 'Biztosan törölni akarod a/z $1 rovatot?'\n'Deleting section': 'Rovat törlése'\n'The section $1 has been deleted.': 'A/z $1 rovat törlése megtörtént.'\n'Configure section': 'Rovat konfigurálása'\n'The section could not be changed.': 'Nem lehet módosítani a rovatot.'\n'Duplicate section': 'Rovat megkettőzése'\n'The destination issue is the same as the source issue.': 'A célszám azonos a forrásszámmal.'\n'Error updating subscriptions.': 'Hiba történt az előfizetések frissítésekor.'\n'Duplicating section': 'Rovat megkettőzése'\n'The section $1 could not be duplicated': 'Nem lehet megkettőzni a/z $1 rovatot'\n'Section $1 has been duplicated to $2. $3 of $4': 'A/z $1 rovat megkettőzése a/z $2 rovatba megtörtént. $3 / $4'\n'You do not have the right to modify sections.': 'Nincs jogod a rovatok módosításához.'\n'A total of $1 articles were deleted.': 'Összesen $1 cikk került törlésre.'\n'Duplicate Section:': 'Rovat megkettőzése'\n'Existing Section': 'Létező rovat'\n'Go to new section': 'Ugrás az új rovathoz'\n'Go to source section': 'Ugrás a forrásrovathoz'\n'New Section': 'Új rovat'\n'Please select either $1 or $2.': 'Válassz a/z $1 vagy a/z $2 közül.'\n'Select destination section:': 'Célrovat kiválasztása:'\nOR: VAGY\n'URL Name': URL-név\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'A megadott rovatszám már létezik, adj meg másik értéket, vagy keress egy meglévő rovatot a legördülőben.'\nWarning: Figyelmeztetés\n'You must select a section.': 'Ki kell választanod egy rovatot.'\n'You must specify a name for the section.': 'Meg kell adnod a rovat nevét.'\n'The section could not be added.': 'Nem lehet hozzáadni a rovatot.'\n'Add new section': 'Új rovat hozzáadása'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.hy.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': null\n'Add section to all subscriptions.': null\n'Delete section from all subscriptions.': null\n'A total of $1 subscriptions were updated.': null\n'Name<BR><SMALL>(click to see articles)</SMALL>': null\n'Delete section $1': null\n'Adding new section': null\n'You do not have the right to add sections.': null\n'The section $1 has been successfuly added.': null\n'Please check if another section with the same number or URL name does not exist already.': null\n'Delete section': null\n'You do not have the right to delete sections.': null\n'Are you sure you want to delete the section $1?': null\n'Deleting section': null\n'The section $1 has been deleted.': null\n'Configure section': null\n'The section could not be changed.': null\n'Duplicate section': null\n'The destination issue is the same as the source issue.': null\n'Error updating subscriptions.': null\n'Duplicating section': null\n'The section $1 could not be duplicated': null\n'Section $1 has been duplicated to $2. $3 of $4': null\n'You do not have the right to modify sections.': null\n'A total of $1 articles were deleted.': null\n'Duplicate Section:': null\n'Existing Section': null\n'Go to new section': null\n'Go to source section': null\n'New Section': null\n'Please select either $1 or $2.': null\n'Select destination section:': null\nOR: null\n'URL Name': null\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': null\nWarning: null\n'You must select a section.': null\n'You must specify a name for the section.': null\n'The section could not be added.': null\n'Add new section': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.hy_AM.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': null\n'Add section to all subscriptions.': null\n'Delete section from all subscriptions.': null\n'A total of $1 subscriptions were updated.': null\n'Name<BR><SMALL>(click to see articles)</SMALL>': null\n'Delete section $1': null\n'Adding new section': null\n'You do not have the right to add sections.': null\n'The section $1 has been successfuly added.': null\n'Please check if another section with the same number or URL name does not exist already.': null\n'Delete section': null\n'You do not have the right to delete sections.': null\n'Are you sure you want to delete the section $1?': null\n'Deleting section': null\n'The section $1 has been deleted.': null\n'Configure section': null\n'The section could not be changed.': null\n'Duplicate section': null\n'The destination issue is the same as the source issue.': null\n'Error updating subscriptions.': null\n'Duplicating section': null\n'The section $1 could not be duplicated': null\n'Section $1 has been duplicated to $2. $3 of $4': null\n'You do not have the right to modify sections.': null\n'A total of $1 articles were deleted.': null\n'Duplicate Section:': null\n'Existing Section': null\n'Go to new section': null\n'Go to source section': null\n'New Section': null\n'Please select either $1 or $2.': null\n'Select destination section:': null\nOR: null\n'URL Name': null\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': null\nWarning: null\n'You must select a section.': null\n'You must specify a name for the section.': null\n'The section could not be added.': null\n'Add new section': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.id.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': null\n'Add section to all subscriptions.': null\n'Delete section from all subscriptions.': null\n'A total of $1 subscriptions were updated.': null\n'Name<BR><SMALL>(click to see articles)</SMALL>': null\n'Delete section $1': null\n'Adding new section': null\n'You do not have the right to add sections.': null\n'The section $1 has been successfuly added.': null\n'Please check if another section with the same number or URL name does not exist already.': null\n'Delete section': null\n'You do not have the right to delete sections.': null\n'Are you sure you want to delete the section $1?': null\n'Deleting section': null\n'The section $1 has been deleted.': null\n'Configure section': null\n'The section could not be changed.': null\n'Duplicate section': null\n'The destination issue is the same as the source issue.': null\n'Error updating subscriptions.': null\n'Duplicating section': null\n'The section $1 could not be duplicated': null\n'Section $1 has been duplicated to $2. $3 of $4': null\n'You do not have the right to modify sections.': null\n'A total of $1 articles were deleted.': null\n'Duplicate Section:': null\n'Existing Section': null\n'Go to new section': null\n'Go to source section': null\n'New Section': null\n'Please select either $1 or $2.': null\n'Select destination section:': null\nOR: null\n'URL Name': null\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': null\nWarning: null\n'You must select a section.': null\n'You must specify a name for the section.': null\n'The section could not be added.': null\n'Add new section': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.it.yml",
    "content": "default: predefinito\n'before you can configure the section templates.': 'prima di poter configurare i template delle sezioni.'\n'You have to assign a theme to the issue': 'È necessario assegnare un tema alledizione'\n'The section number $1 was already in use.': 'La sezione numero $1 è già in uso.'\n'Delete all articles written in $1 language from this section': 'Elimina tutti gli articoli in lingua $1 da questa sezione.'\n'Delete all articles and all of their translations': 'Elimina tutti gli articoli e tutte le loro traduzioni'\n'Delete only this section ($1)': 'Elimina solo questa sezione ($1)'\n'Delete all translations of this section': 'Elimina tutte le traduzioni di questa sezione'\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': 'Numero di articoli<BR/><SMALL>(Pubblicati/Totali)</SMALL>'\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': 'LURL deve essere unico per tutte le sezioni in questa edizione. <br/> LURL specificato ($1) va in conflitto con la sezione  $2$3. $4$5'\n'Section updated': 'Sezione aggiornata'\n'There are $1 subscriptions which will be affected.': 'La modifica influenzerà $1 iscrizioni.'\n'There are $1 articles in this section.': 'Ci sono $1 articoli in questa sezione.'\n'Go To Articles': 'Vai agli articoli'\n'Add section to all subscriptions.': 'Aggiungi sezione su tutte le iscrizioni.'\n'Delete section from all subscriptions.': 'Elimina la sezione da tutte le iscrizioni.'\n'A total of $1 subscriptions were updated.': 'Sono state aggiornate $1 iscrizioni.'\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'Nome<BR/><SMALL>(click per vedere gli articoli)</SMALL>'\n'Delete section $1': 'Elimina sezione $1'\n'Adding new section': 'Aggiungi sezione'\n'You do not have the right to add sections.': 'Non hai il permesso di aggiungere sezioni.'\n'The section $1 has been successfuly added.': 'La sezione $1 è stata aggiunta.'\n'Please check if another section with the same number or URL name does not exist already.': 'Verifica che unaltra sezione non abbia lo stesso numero o nome URL.'\n'Delete section': 'Elimina sezione'\n'You do not have the right to delete sections.': 'Non hai il permesso di eliminare sezioni.'\n'Are you sure you want to delete the section $1?': 'Vuoi davvero eliminare la sezione $1?'\n'Deleting section': 'Eliminazione sezione'\n'The section $1 has been deleted.': 'La sezione $1 è stata eliminata.'\n'Configure section': 'Configura sezione'\n'The section could not be changed.': 'Non è stato possibile modificare la sezione.'\n'Duplicate section': 'Duplica sezione'\n'The destination issue is the same as the source issue.': 'Ledizione di destinazione è la stessa di quella di origine.'\n'Error updating subscriptions.': 'Errore durante laggiornamento delle iscrizioni.'\n'Duplicating section': 'Duplicazione sezione'\n'The section $1 could not be duplicated': 'Non è stato possibile duplicare la sezione $1'\n'Section $1 has been duplicated to $2. $3 of $4': 'La sezione $1 è stata duplicata in $2. $3 di $4'\n'You do not have the right to modify sections.': 'Non hai il permesso di modificare le sezioni.'\n'A total of $1 articles were deleted.': 'Sono stati eliminati $1 articoli in totale.'\n'Duplicate Section:': 'Sezione duplicata:'\n'Existing Section': 'Sezione esistente'\n'Go to new section': 'Vai alla nuova sezione'\n'Go to source section': 'Vai alla sezione sorgente'\n'New Section': 'Nuova sezione'\n'Please select either $1 or $2.': 'Seleziona  $1 o $2.'\n'Select destination section:': 'Seleziona la sezione di destinazione:'\nOR: O\n'URL Name': 'Nome URL'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'Il numero di sezione indicato esiste già: scegli un valore diverso o usa il menu a tendina per trovare una sezione già presente.'\nWarning: Avviso\n'You must select a section.': 'Devi scegliere una sezione.'\n'You must specify a name for the section.': 'Devi specificare un nome per la sezione.'\n'The section could not be added.': 'Non è stato possibile aggiungere a sezione.'\n'Add new section': 'Aggiungi sezione'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.ka.yml",
    "content": "default: ნაგულისხმევი\n'before you can configure the section templates.': 'სექციების შაბლონების კონფიგურაციამდე'\n'You have to assign a theme to the issue': 'თქვენ უნდა მიუთითოთ გამოცემის თემა'\n'The section number $1 was already in use.': 'სექცია ნომერ $1 უკვე გამოყენებულია'\n'Delete all articles written in $1 language from this section': 'ამ სექციაში არსებული ყველა სტატიის წაშლა რომლებიც არიან ენაზე: '\n'Delete all articles and all of their translations': 'ყველა სტატიის და მათი თარგმანის წაშლა'\n'Delete only this section ($1)': 'მხოლოდ ამ სექციის წაშლა ($1)'\n'Delete all translations of this section': 'ამ სექციის ყველა თარგმანის წაშლა'\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': 'სტატიების რიცხვი<BR><SMALL>(გამოცემული/სულ)</SMALL>'\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': 'ამ გამოცემის სექციების URL უნდა იყოს უნიკალური. <br>თქვენ მიერ მითითებული URL ($1) ემთხვევა სექციას $2$3. $4$5'\n'Section updated': 'სექცია განახლდა'\n'There are $1 subscriptions which will be affected.': '$1 გამოწერაზე ზეგავლენას იქონიებს.'\n'There are $1 articles in this section.': 'ამ სექციაში არის $1 სტატია.'\n'Go To Articles': 'სტატიებზე გადასვლა'\n'Add section to all subscriptions.': 'სექციის დამატება ყველა გამოწერაზე.'\n'Delete section from all subscriptions.': 'სექციის წაშლა ყველა გამოწერიდან.'\n'A total of $1 subscriptions were updated.': '$1 გამოწერა განახლდა'\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'სათაური<BR><SMALL>(დააჭირეთ სტატიების სანახავად)</SMALL>'\n'Delete section $1': '$1 სექციის წაშლა'\n'Adding new section': 'ახალი სექციის დამატება'\n'You do not have the right to add sections.': 'თქვენ არ გაქვთ სექციების დამატების უფლება.'\n'The section $1 has been successfuly added.': '$1 სექცია დაემატა.'\n'Please check if another section with the same number or URL name does not exist already.': 'გთხოვთ შეამოწმოთ რომ არ არსებობს მსგავსი სახელის ან URL-ის სექცია'\n'Delete section': 'სექციის წაშლა'\n'You do not have the right to delete sections.': 'თქვენ არ გაქვთ სექციების წაშლის უფლება.'\n'Are you sure you want to delete the section $1?': 'დარწმუნებული ხართ რომ გსურთ $1 სექციის წაშლა?'\n'Deleting section': 'სექციის წაშლა'\n'The section $1 has been deleted.': '$1 სექცია წაიშალა'\n'Configure section': 'სექციის კონფიგურაცია'\n'The section could not be changed.': 'სექცია არ შეიცვალა'\n'Duplicate section': 'სექციის დუბლირება'\n'The destination issue is the same as the source issue.': 'საბოლოო გამოცემა ემთხვევა საწყის გამოცემას.'\n'Error updating subscriptions.': 'გამოწერების განახლებისას დაფიქსირდა შეცდომა.'\n'Duplicating section': 'სექციის დუბლირება'\n'The section $1 could not be duplicated': '$1 სექცია ვერ დაკოპირდა'\n'Section $1 has been duplicated to $2. $3 of $4': 'სექცია $1 დაკოპირდა $2 სექციაში. $4-ის $3'\n'You do not have the right to modify sections.': 'თქვენ არ გაქვთ სექციების მოდიფიკაციის უფლება'\n'A total of $1 articles were deleted.': '$1 სტატია წაიშალა'\n'Duplicate Section:': 'სექციის დუბლირება:'\n'Existing Section': 'არსებული სექცია'\n'Go to new section': 'ახალ სექციაზე გადასვლა'\n'Go to source section': 'საწყისი სექცია'\n'New Section': 'ახალი სექცია'\n'Please select either $1 or $2.': 'აირჩიეთ ან $1 ან $2'\n'Select destination section:': 'მონიშნე სექცია'\nOR: ან\n'URL Name': 'URL-ის სახელი'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'მითითებული სექციის ნომერი უკვე არსებობს, გთხოვთ მიუთეთ ახალი, ან შეამოწმეთ არსებულები ჩამონათვალში.'\nWarning: გაფრთხილება\n'You must select a section.': 'თქვენ უნდა მონიშნოთ სექცია'\n'You must specify a name for the section.': 'მიუთითეთ სექციის სახელი'\n'The section could not be added.': 'სექცია ვერ დაემატა.'\n'Add new section': 'სექციის დამატება'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.ko.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': '기사로 가기'\n'Add section to all subscriptions.': '모든 구독자에게 섹션 추가 '\n'Delete section from all subscriptions.': '모든 구독자에게서 섹션 삭제 '\n'A total of $1 subscriptions were updated.': '$1 구독자 모두가 업데이트되었습니다. '\n'Name<BR><SMALL>(click to see articles)</SMALL>': '이름<BR><SMALL>(기사보려면 클릭)</SMALL>'\n'Delete section $1': '섹션 $1 삭제'\n'Adding new section': '새로운 섹션 추가'\n'You do not have the right to add sections.': '섹션을 추가할 권한이 없습니다. '\n'The section $1 has been successfuly added.': '섹션 $1 이 성공적으로 추가되었습니다. '\n'Please check if another section with the same number or URL name does not exist already.': '같은 넘버나 URL 이름의 다른 섹션이 이미 존재하는지 확인하시오.'\n'Delete section': '섹션 삭제'\n'You do not have the right to delete sections.': '섹션을 삭제할 권한이 없습니다. '\n'Are you sure you want to delete the section $1?': '섹션 $1 을 확실히 삭제합니까?'\n'Deleting section': '섹션 삭제중'\n'The section $1 has been deleted.': '섹션 $1 이 삭제되었습니다. '\n'Configure section': '섹션 구성'\n'The section could not be changed.': '섹션이 수정될 수 없습니다. '\n'Duplicate section': '섹션 복사 '\n'The destination issue is the same as the source issue.': '목표 이슈가 원래 이슈와 같습니다.'\n'Error updating subscriptions.': '구독자 업데이트중 에러'\n'Duplicating section': '섹션 복사중'\n'The section $1 could not be duplicated': '섹션 $1 을 복사할 수 없습니다. '\n'Section $1 has been duplicated to $2. $3 of $4': '섹션 $1 이 $4 의 $2. $3 로 복사되었습니다.'\n'You do not have the right to modify sections.': '섹션을 수정할 권한이 없습니다. '\n'A total of $1 articles were deleted.': '$1 기사 모두 삭제되었습니다. '\n'Duplicate Section:': '섹션 복사 '\n'Existing Section': '기존 섹션 '\n'Go to new section': '새로운 섹션으로 가기'\n'Go to source section': '원래 섹션으로 가기'\n'New Section': '새로운 섹션 '\n'Please select either $1 or $2.': '$1 이나 $2 중 선택하시오.'\n'Select destination section:': '목표 섹션을 선택하시오:'\nOR: 'OR '\n'URL Name': 'URL 이름'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': '지정한 섹션 넘버가 이미 존재합니다. 다른 값을 지정하거나, 기존 섹션의  드롭다운메뉴를 사용하시오.'\nWarning: 주의\n'You must select a section.': 선택하시오\n'You must specify a name for the section.': '섹션 이름을 지정하시오'\n'The section could not be added.': '섹션을 추가할 수 업습니다. '\n'Add new section': '새로운 섹션 추가 '\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.ku.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': null\n'Add section to all subscriptions.': null\n'Delete section from all subscriptions.': null\n'A total of $1 subscriptions were updated.': null\n'Name<BR><SMALL>(click to see articles)</SMALL>': null\n'Delete section $1': null\n'Adding new section': null\n'You do not have the right to add sections.': null\n'The section $1 has been successfuly added.': null\n'Please check if another section with the same number or URL name does not exist already.': null\n'Delete section': null\n'You do not have the right to delete sections.': null\n'Are you sure you want to delete the section $1?': null\n'Deleting section': null\n'The section $1 has been deleted.': null\n'Configure section': null\n'The section could not be changed.': null\n'Duplicate section': null\n'The destination issue is the same as the source issue.': null\n'Error updating subscriptions.': null\n'Duplicating section': null\n'The section $1 could not be duplicated': null\n'Section $1 has been duplicated to $2. $3 of $4': null\n'You do not have the right to modify sections.': null\n'A total of $1 articles were deleted.': null\n'Duplicate Section:': null\n'Existing Section': null\n'Go to new section': null\n'Go to source section': null\n'New Section': null\n'Please select either $1 or $2.': null\n'Select destination section:': null\nOR: null\n'URL Name': null\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': null\nWarning: null\n'You must select a section.': null\n'You must specify a name for the section.': null\n'The section could not be added.': null\n'Add new section': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.lv.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': null\n'Add section to all subscriptions.': null\n'Delete section from all subscriptions.': null\n'A total of $1 subscriptions were updated.': null\n'Name<BR><SMALL>(click to see articles)</SMALL>': null\n'Delete section $1': null\n'Adding new section': null\n'You do not have the right to add sections.': null\n'The section $1 has been successfuly added.': null\n'Please check if another section with the same number or URL name does not exist already.': null\n'Delete section': null\n'You do not have the right to delete sections.': null\n'Are you sure you want to delete the section $1?': null\n'Deleting section': null\n'The section $1 has been deleted.': null\n'Configure section': null\n'The section could not be changed.': null\n'Duplicate section': null\n'The destination issue is the same as the source issue.': null\n'Error updating subscriptions.': null\n'Duplicating section': null\n'The section $1 could not be duplicated': null\n'Section $1 has been duplicated to $2. $3 of $4': null\n'You do not have the right to modify sections.': null\n'A total of $1 articles were deleted.': null\n'Duplicate Section:': null\n'Existing Section': null\n'Go to new section': null\n'Go to source section': null\n'New Section': null\n'Please select either $1 or $2.': null\n'Select destination section:': null\nOR: null\n'URL Name': null\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': null\nWarning: null\n'You must select a section.': null\n'You must specify a name for the section.': null\n'The section could not be added.': null\n'Add new section': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.mr.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': null\n'Add section to all subscriptions.': null\n'Delete section from all subscriptions.': null\n'A total of $1 subscriptions were updated.': null\n'Name<BR><SMALL>(click to see articles)</SMALL>': null\n'Delete section $1': null\n'Adding new section': null\n'You do not have the right to add sections.': null\n'The section $1 has been successfuly added.': null\n'Please check if another section with the same number or URL name does not exist already.': null\n'Delete section': null\n'You do not have the right to delete sections.': null\n'Are you sure you want to delete the section $1?': null\n'Deleting section': null\n'The section $1 has been deleted.': null\n'Configure section': null\n'The section could not be changed.': null\n'Duplicate section': null\n'The destination issue is the same as the source issue.': null\n'Error updating subscriptions.': null\n'Duplicating section': null\n'The section $1 could not be duplicated': null\n'Section $1 has been duplicated to $2. $3 of $4': null\n'You do not have the right to modify sections.': null\n'A total of $1 articles were deleted.': null\n'Duplicate Section:': null\n'Existing Section': null\n'Go to new section': null\n'Go to source section': null\n'New Section': null\n'Please select either $1 or $2.': null\n'Select destination section:': null\nOR: null\n'URL Name': null\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': null\nWarning: null\n'You must select a section.': null\n'You must specify a name for the section.': null\n'The section could not be added.': null\n'Add new section': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.nb_NO.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': null\n'Add section to all subscriptions.': null\n'Delete section from all subscriptions.': null\n'A total of $1 subscriptions were updated.': null\n'Name<BR><SMALL>(click to see articles)</SMALL>': null\n'Delete section $1': null\n'Adding new section': null\n'You do not have the right to add sections.': null\n'The section $1 has been successfuly added.': null\n'Please check if another section with the same number or URL name does not exist already.': null\n'Delete section': null\n'You do not have the right to delete sections.': null\n'Are you sure you want to delete the section $1?': null\n'Deleting section': null\n'The section $1 has been deleted.': null\n'Configure section': null\n'The section could not be changed.': null\n'Duplicate section': null\n'The destination issue is the same as the source issue.': null\n'Error updating subscriptions.': null\n'Duplicating section': null\n'The section $1 could not be duplicated': null\n'Section $1 has been duplicated to $2. $3 of $4': null\n'You do not have the right to modify sections.': null\n'A total of $1 articles were deleted.': null\n'Duplicate Section:': null\n'Existing Section': null\n'Go to new section': null\n'Go to source section': null\n'New Section': null\n'Please select either $1 or $2.': null\n'Select destination section:': null\nOR: null\n'URL Name': null\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': null\nWarning: null\n'You must select a section.': null\n'You must specify a name for the section.': null\n'The section could not be added.': null\n'Add new section': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.nl.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': 'Ga naar Artikels'\n'Add section to all subscriptions.': 'Voeg rubriek to aan alle abonnementen.'\n'Delete section from all subscriptions.': 'Verwijder rubriek van alle abonnementen.'\n'A total of $1 subscriptions were updated.': 'Een totaal van $1 abonnementen werden bijgewerkt.'\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'Naam<BR><SMALL>(klik om artikelen te zien)</SMALL>'\n'Delete section $1': 'Verwijder rubriek $1'\n'Adding new section': 'Nieuwe rubriek wordt toegevoegd'\n'You do not have the right to add sections.': null\n'The section $1 has been successfuly added.': 'De rubriek $1 is succesvol toegevoegd.'\n'Please check if another section with the same number or URL name does not exist already.': 'Controleer of een andere rubriek met het zelfde nummer of URL naam niet al bestaat.'\n'Delete section': 'Verwijder rubriek'\n'You do not have the right to delete sections.': null\n'Are you sure you want to delete the section $1?': null\n'Deleting section': 'Rubriek wordt verwijderd'\n'The section $1 has been deleted.': 'De rubriek $1 is verwijderd.'\n'Configure section': 'Configureer rubriek'\n'The section could not be changed.': 'De rubriek kan niet wordt veranderd'\n'Duplicate section': 'Dupliceer rubriek'\n'The destination issue is the same as the source issue.': 'De doel uitgave is de zelfde als de oorspronkelijke uitgave.'\n'Error updating subscriptions.': 'Fout bij het bijwerken van abonnementen'\n'Duplicating section': 'Rubriek wordt gedupliceerd'\n'The section $1 could not be duplicated': 'De rubriek $1 kan niet worden gedupliceerd'\n'Section $1 has been duplicated to $2. $3 of $4': 'Rubriek $1 is gedupliceerd naar $2. $3 van $4'\n'You do not have the right to modify sections.': null\n'A total of $1 articles were deleted.': 'Een totaal van $1 articles werd verwijderd.'\n'Duplicate Section:': 'Dupliceer rubriek:'\n'Existing Section': 'Huidige rubriek'\n'Go to new section': 'Ga naar nieuwe rubriek'\n'Go to source section': 'Ga naar bron rubriek'\n'New Section': 'Nieuwe rubriek'\n'Please select either $1 or $2.': 'Selecteer $1 of $2'\n'Select destination section:': 'Selecteer doel rubriek:'\nOR: OF\n'URL Name': 'URL Naam'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'Het ingevulde rubrieksnummer bestaat al, vul een andere waarde in of gebruik het veld om een bestaande waarde te vinden.'\nWarning: Waarschuwing\n'You must select a section.': 'U moet een rubriek selecteren.'\n'You must specify a name for the section.': 'U moet een naam opgeven voor de rubriek.'\n'The section could not be added.': 'De rubriek kon niet worden toegevoegd.'\n'Add new section': 'Nieuwe rubriek toevoegen'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.pa.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': null\n'Add section to all subscriptions.': null\n'Delete section from all subscriptions.': null\n'A total of $1 subscriptions were updated.': null\n'Name<BR><SMALL>(click to see articles)</SMALL>': null\n'Delete section $1': null\n'Adding new section': null\n'You do not have the right to add sections.': null\n'The section $1 has been successfuly added.': null\n'Please check if another section with the same number or URL name does not exist already.': null\n'Delete section': null\n'You do not have the right to delete sections.': null\n'Are you sure you want to delete the section $1?': null\n'Deleting section': null\n'The section $1 has been deleted.': null\n'Configure section': null\n'The section could not be changed.': null\n'Duplicate section': null\n'The destination issue is the same as the source issue.': null\n'Error updating subscriptions.': null\n'Duplicating section': null\n'The section $1 could not be duplicated': null\n'Section $1 has been duplicated to $2. $3 of $4': null\n'You do not have the right to modify sections.': null\n'A total of $1 articles were deleted.': null\n'Duplicate Section:': null\n'Existing Section': null\n'Go to new section': null\n'Go to source section': null\n'New Section': null\n'Please select either $1 or $2.': null\n'Select destination section:': null\nOR: null\n'URL Name': null\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': null\nWarning: null\n'You must select a section.': null\n'You must specify a name for the section.': null\n'The section could not be added.': null\n'Add new section': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.pl.yml",
    "content": "default: domyslny\n'before you can configure the section templates.': 'wcześniej możesz skonfigurować szablony dla sekcji.'\n'You have to assign a theme to the issue': 'Musisz wybrać szablon dla tego wydania'\n'The section number $1 was already in use.': 'Numer sekcji $1 jest już w użyciu.'\n'Delete all articles written in $1 language from this section': 'Usuń wszystkie artykuły w języku $1 z tej sekcji.'\n'Delete all articles and all of their translations': 'Usuń wszystkie artykuły oraz ich tłumaczenia'\n'Delete only this section ($1)': 'Usuń tylko tę sekcję ($1)'\n'Delete all translations of this section': 'Usuń wszystkie tłumaczenia tej sekcji'\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': 'Liczba artykułów<BR><SMALL>(Opublikowane/Wszystkie)</SMALL>'\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': 'Nazwa URL musi być unikalna dla wszystkich sekcji w tym wydaniu.<br>Podana nazwa URL ($1) jest w konflikcie z sekcją $2$3. $4$5 '\n'Section updated': 'Sekcja zaktualizowana'\n'There are $1 subscriptions which will be affected.': 'Subskrypcje, które zostaną zmienione: 1'\n'There are $1 articles in this section.': 'W tej sekcji jest $1 artykułów'\n'Go To Articles': 'Idź do artykułów'\n'Add section to all subscriptions.': 'Dodaj sekcję do wszystkich subskrypcji.'\n'Delete section from all subscriptions.': 'Usuń sekcję ze wszystkich subskrypcji.'\n'A total of $1 subscriptions were updated.': 'Liczba ukatulanionych sekcji: $1'\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'Nazwa<BR><SMALL>(kliknij aby zobaczyć artykuły)</SMALL>'\n'Delete section $1': 'Usuń sekcję $1'\n'Adding new section': 'Dodawanie nowej sekcji'\n'You do not have the right to add sections.': 'Nie masz prawy aby dodawać sekcje.'\n'The section $1 has been successfuly added.': 'Sekcja $1 została dodana.'\n'Please check if another section with the same number or URL name does not exist already.': 'Sprawdź czy nie istnieje już sekcja albo nazwa URL z tym samym numerem'\n'Delete section': 'Usuń sekcję'\n'You do not have the right to delete sections.': 'Nie masz praw aby usuwać sekcję.'\n'Are you sure you want to delete the section $1?': 'Czy na pewno chcesz usunąć sekcję $1?'\n'Deleting section': 'Usuwanie sekcji'\n'The section $1 has been deleted.': 'Sekcja $1 została usunięta.'\n'Configure section': 'Konfiguruj sekcję'\n'The section could not be changed.': 'Ta sekcja nie mogła zostać zmieniona.'\n'Duplicate section': 'Duplikuj sekcję'\n'The destination issue is the same as the source issue.': 'Cel docelowy jest taki sam jak początkowy.'\n'Error updating subscriptions.': 'Błąd przy aktualizacji subskrypcji.'\n'Duplicating section': 'Duplikowanie sekcji'\n'The section $1 could not be duplicated': 'Sekcja $1 nie została zduplikowana'\n'Section $1 has been duplicated to $2. $3 of $4': 'Sekcja $1 została zduplikowana do $2. $3 z $4'\n'You do not have the right to modify sections.': 'Nie masz praw aby modyfikować sekcje.'\n'A total of $1 articles were deleted.': 'Liczba usuniętych artykułów: $1.'\n'Duplicate Section:': 'Duplikuj sekcję:'\n'Existing Section': 'Istniejące sekcje:'\n'Go to new section': 'Idź do nowej sekcji'\n'Go to source section': 'Idź do źródłowej sekcji'\n'New Section': 'Nowa sekcja'\n'Please select either $1 or $2.': 'Wybierz sekcję $1 albo $2/'\n'Select destination section:': 'Wybierz docelową sekcję:'\nOR: ALBO\n'URL Name': 'Nazwa URL'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'Podany numer sekcji już istnieje, podaj inną wartość albo z poniższego menu wybierz istniejące sekcję.'\nWarning: Ostrzeżenie\n'You must select a section.': 'Musisz wybrać sekcję.'\n'You must specify a name for the section.': 'Musisz podać nazwę sekcji.'\n'The section could not be added.': 'Sekcja nie została dodana.'\n'Add new section': 'Dodaj nową sekcję'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.ps.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': null\n'Add section to all subscriptions.': null\n'Delete section from all subscriptions.': null\n'A total of $1 subscriptions were updated.': null\n'Name<BR><SMALL>(click to see articles)</SMALL>': null\n'Delete section $1': null\n'Adding new section': null\n'You do not have the right to add sections.': null\n'The section $1 has been successfuly added.': null\n'Please check if another section with the same number or URL name does not exist already.': null\n'Delete section': null\n'You do not have the right to delete sections.': null\n'Are you sure you want to delete the section $1?': null\n'Deleting section': null\n'The section $1 has been deleted.': null\n'Configure section': null\n'The section could not be changed.': null\n'Duplicate section': null\n'The destination issue is the same as the source issue.': null\n'Error updating subscriptions.': null\n'Duplicating section': null\n'The section $1 could not be duplicated': null\n'Section $1 has been duplicated to $2. $3 of $4': null\n'You do not have the right to modify sections.': null\n'A total of $1 articles were deleted.': null\n'Duplicate Section:': null\n'Existing Section': null\n'Go to new section': null\n'Go to source section': null\n'New Section': null\n'Please select either $1 or $2.': null\n'Select destination section:': null\nOR: null\n'URL Name': null\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': null\nWarning: null\n'You must select a section.': null\n'You must specify a name for the section.': null\n'The section could not be added.': null\n'Add new section': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.pt.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': 'Ir para Artigos'\n'Add section to all subscriptions.': 'Adicionar Secção a todas as Assinaturas'\n'Delete section from all subscriptions.': 'Eliminar Secção de todas as Assinaturas'\n'A total of $1 subscriptions were updated.': 'Um total de $1 Assinaturas foram actualizadas'\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'Nome<br>(Carregue para ver artigos)'\n'Delete section $1': 'Eliminar Secção $1'\n'Adding new section': 'Adicionando Secção'\n'You do not have the right to add sections.': 'Não tem permissões para adicionar Secções.'\n'The section $1 has been successfuly added.': 'A Secção $1 foi adicionada com sucesso.'\n'Please check if another section with the same number or URL name does not exist already.': 'Verifique se não existem úma secção com o mesmo nome.'\n'Delete section': 'Eliminar Secção'\n'You do not have the right to delete sections.': 'Não tem permissões para eliminar Secções.'\n'Are you sure you want to delete the section $1?': 'Confirma o Apagamento da Secção $1?'\n'Deleting section': 'Eliminando Secção'\n'The section $1 has been deleted.': 'A Secção $1 foi Eliminada'\n'Configure section': 'Configurar secção'\n'The section could not be changed.': 'Secção $1 não pode ser alterada.'\n'Duplicate section': 'Duplicar Secção'\n'The destination issue is the same as the source issue.': 'Destino idêntico à origem.'\n'Error updating subscriptions.': 'Erro na actualização de assinaturas'\n'Duplicating section': 'Duplicando secção'\n'The section $1 could not be duplicated': 'A Secção $1 não pode ser duplicada'\n'Section $1 has been duplicated to $2. $3 of $4': 'A Secção $1 foi duplicada para $2. $3 de $4'\n'You do not have the right to modify sections.': 'Não tem permissões para alterar secções.'\n'A total of $1 articles were deleted.': 'Foi(ram) eliminado(s) $1 artigo(s).'\n'Duplicate Section:': 'Duplicar Secção'\n'Existing Section': 'Secção Existente'\n'Go to new section': 'Ir para nova secção'\n'Go to source section': 'Ir para secção de origem'\n'New Section': 'Nova secção'\n'Please select either $1 or $2.': 'Escolha $1 ou $2.'\n'Select destination section:': 'Selecione a secção de destino:'\nOR: OU\n'URL Name': 'Nome para o URL'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'O numero de secção ja existe, indique um valor diferente ou use a caixa de dialogo para encontrar uma secção existente.'\nWarning: Aviso\n'You must select a section.': 'Selecione uma secção.'\n'You must specify a name for the section.': 'Tem de indicar um nome para a secção.'\n'The section could not be added.': 'Esta Secção não pode ser Adicionada.'\n'Add new section': 'Criar Secção'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.pt_BR.yml",
    "content": "default: padrão\n'before you can configure the section templates.': 'antes de você poder configurar os templates da seção.'\n'You have to assign a theme to the issue': 'Você tem que designar um tema para a edição'\n'The section number $1 was already in use.': 'Seção número $1 já estava em uso.'\n'Delete all articles written in $1 language from this section': 'Remover dessa seção todos os artigos escritos em língua $1'\n'Delete all articles and all of their translations': 'Remover todos os artigos e todas as traduções'\n'Delete only this section ($1)': 'Remover apenas essa seção ($1)'\n'Delete all translations of this section': 'Remover todas as traduções dessa seção'\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': 'No. de artigos<BR><SMALL>(Publicados/Total)</SMALL>'\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': 'O nome de URL tem que ser único para todas as seções nesta edição <br>O nome de URL que você definiu ($1) está em conflito com seção $2$3. $4$5'\n'Section updated': 'Seção atualizada'\n'There are $1 subscriptions which will be affected.': 'Há $1 assinatura(s) que serão afetuadas.'\n'There are $1 articles in this section.': 'Há $1 artigo(s) nessa seção.'\n'Go To Articles': 'Ir para Artigos'\n'Add section to all subscriptions.': 'Adicionar Secção a todas as Assinaturas'\n'Delete section from all subscriptions.': 'Eliminar Secção de todas as Assinaturas'\n'A total of $1 subscriptions were updated.': 'Um total de $1 Assinaturas foram actualizadas'\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'Nome<br>(Carregue para ver artigos)'\n'Delete section $1': 'Eliminar Secção $1'\n'Adding new section': 'Adicionando Secção'\n'You do not have the right to add sections.': 'Não tem permissões para adicionar Secções.'\n'The section $1 has been successfuly added.': 'A Secção $1 foi adicionada com sucesso.'\n'Please check if another section with the same number or URL name does not exist already.': 'Verifique se não existem úma secção com o mesmo nome.'\n'Delete section': 'Eliminar Secção'\n'You do not have the right to delete sections.': 'Não tem permissões para eliminar Secções.'\n'Are you sure you want to delete the section $1?': 'Confirma o Apagamento da Secção $1?'\n'Deleting section': 'Eliminando Secção'\n'The section $1 has been deleted.': 'A Secção $1 foi Eliminada'\n'Configure section': 'Configurar secção'\n'The section could not be changed.': 'Secção $1 não pode ser alterada.'\n'Duplicate section': 'Duplicar Secção'\n'The destination issue is the same as the source issue.': 'Destino idêntico à origem.'\n'Error updating subscriptions.': 'Erro na actualização de assinaturas'\n'Duplicating section': 'Duplicando secção'\n'The section $1 could not be duplicated': 'A Secção $1 não pode ser duplicada'\n'Section $1 has been duplicated to $2. $3 of $4': 'A Secção $1 foi duplicada para $2. $3 de $4'\n'You do not have the right to modify sections.': 'Não tem permissões para alterar secções.'\n'A total of $1 articles were deleted.': '$1 artigos foram apagados.'\n'Duplicate Section:': 'Duplicar Secção'\n'Existing Section': 'Secção Existente'\n'Go to new section': 'Ir para nova secção'\n'Go to source section': 'Ir para secção de origem'\n'New Section': 'Nova secção'\n'Please select either $1 or $2.': 'Escolha $1 ou $2.'\n'Select destination section:': 'Selecione a secção de destino:'\nOR: OU\n'URL Name': 'Nome para o URL'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'O numero de secção ja existe, indique um valor diferente ou use a caixa de dialogo para encontrar uma secção existente.'\nWarning: Aviso\n'You must select a section.': 'Selecione uma secção.'\n'You must specify a name for the section.': 'Tem de indicar um nome para a secção.'\n'The section could not be added.': 'Esta Secção não pode ser Adicionada.'\n'Add new section': 'Criar Secção'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.ro.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': 'Secțiunea cu numărul $1 există deja.'\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': 'Șterge numai această secțiune ($1)'\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': 'Adresa de Internet trebuie să fie unică pentru fiecare secţiune din această ediţie.<br>Adresa de Internet specificată ($1) intră în conflict cu secţiunea $2$3. $4$5'\n'Section updated': 'Secţiunea a fost actualizată'\n'There are $1 subscriptions which will be affected.': 'Există $1 abonamente care vor fi afectate.'\n'There are $1 articles in this section.': 'Există $1 articole în această secţiune.'\n'Go To Articles': 'Mergi la articole'\n'Add section to all subscriptions.': 'Adaugă secţiunea la toate abonamentele.'\n'Delete section from all subscriptions.': 'Şterge secţiunea din toate abonamentele.'\n'A total of $1 subscriptions were updated.': 'Au fost actualizat $1 abonamente.'\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'Nume<BR><SMALL>(clic pentru a vedea articolele)</SMALL>'\n'Delete section $1': 'Şterge secţiunea $1'\n'Adding new section': 'Se adaugă secţiune nouă'\n'You do not have the right to add sections.': 'Nu ai dreptul să adaugi secţiuni.'\n'The section $1 has been successfuly added.': 'Secţiunea $1 a fost adăugată.'\n'Please check if another section with the same number or URL name does not exist already.': 'Verifică dacă nu există o altă secţiune cu acelaşi număr sau o adresă de Internet.'\n'Delete section': 'Şterge secţiunea'\n'You do not have the right to delete sections.': 'Nu ai dreptul să ştergi secţiuni.'\n'Are you sure you want to delete the section $1?': 'Eşti sigur că vrei să ştergi secţiunea $1?'\n'Deleting section': 'Se şterge secţiunea'\n'The section $1 has been deleted.': 'Secţiunea $1 a fost ştearsă.'\n'Configure section': 'Configurează secţiunea'\n'The section could not be changed.': 'Secţiunea nu poate fi modificată.'\n'Duplicate section': 'Duplică secţiunea'\n'The destination issue is the same as the source issue.': 'Ediţia destinaţie este aceeaşi cu cea sursă.'\n'Error updating subscriptions.': 'Eroare la actualizarea abonamentelor.'\n'Duplicating section': 'Se duplică secţiunea'\n'The section $1 could not be duplicated': 'Secţiunea $1 nu poate fi duplicată'\n'Section $1 has been duplicated to $2. $3 of $4': 'Secţiunea $1 a fost duplicată în $2. $3 din $4'\n'You do not have the right to modify sections.': 'Nu ai dreptul să modifici secţiunile.'\n'A total of $1 articles were deleted.': 'Un număr de $1 articole au fost şterse.'\n'Duplicate Section:': 'Duplică secţiunea'\n'Existing Section': 'Secţiune existentă'\n'Go to new section': 'Mergi la acţiune nouă'\n'Go to source section': 'Mergi la secţiunea sursă'\n'New Section': 'Secţiune nouă'\n'Please select either $1 or $2.': 'Selectează $1 sau $2.'\n'Select destination section:': 'Selectează secţiunea destinaţie:'\nOR: SAU\n'URL Name': 'Denumirea adresei de Internet'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'Numărul secţiunii există deja, specifică o altă valoare sau foloseşte lista derulantă pentru a găsi o secţiune existentă.'\nWarning: Atenţie!\n'You must select a section.': 'Trebuie să selectezi o acţiune.'\n'You must specify a name for the section.': 'Trebuie să specifici un nume al secţiunii.'\n'The section could not be added.': 'Secţiunea nu a putut fi adăugată.'\n'Add new section': 'Adaugă secţiune'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.ru.yml",
    "content": "default: 'по умолчанию'\n'before you can configure the section templates.': 'перед тем, как вы сможете настроить шаблоны рубрик.'\n'You have to assign a theme to the issue': 'Вы должны назначить тему (шаблон) для выпуска'\n'The section number $1 was already in use.': 'Рубрика № $1 уже используется.'\n'Delete all articles written in $1 language from this section': 'Удалить все статьи, написанные на языке $1, из этой рубрики'\n'Delete all articles and all of their translations': 'Удалить все статьи и все переводы для этой статьи'\n'Delete only this section ($1)': 'Удалить только эту рубрику ($1)'\n'Delete all translations of this section': 'Удалить все переводы из этой рубрики'\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': 'Количество статей <BR><SMALL>(Опубликованных/Общее)</SMALL>'\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': 'URL должен быть уникальным для всех рубрик в этом выпуске.<br>Указанный URL ($1) конфликтует с рубрикой $2$3. $4$5'\n'Section updated': 'Рубрика обновлена'\n'There are $1 subscriptions which will be affected.': 'Будет применено к $1 подписке(ам)'\n'There are $1 articles in this section.': 'Статей в этой рубрике: $1.'\n'Go To Articles': 'Перейти к статьям'\n'Add section to all subscriptions.': 'Добавить рубрику ко всем подпискам.'\n'Delete section from all subscriptions.': 'Удалить рубрику из всех подписок.'\n'A total of $1 subscriptions were updated.': 'Было всего обновлено $1 подписок.'\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'Название<BR><SMALL>(щелкните для просмотра статей)</SMALL>'\n'Delete section $1': 'Удалить рубрику $1'\n'Adding new section': 'Добавление новой рубрики'\n'You do not have the right to add sections.': 'Вы не имеете прав доступа к добавлению рубрик.'\n'The section $1 has been successfuly added.': 'Рубрика $1 была успешно добавлена.'\n'Please check if another section with the same number or URL name does not exist already.': 'Пожалуйста убедитесь, что ранее не существовала другая рубрика с таким же номером или URL.'\n'Delete section': 'Удалить рубрику'\n'You do not have the right to delete sections.': 'Вы не имеете прав доступа к удалению рубрик.'\n'Are you sure you want to delete the section $1?': 'Вы уверены, что хотите удалить рубрику $1?'\n'Deleting section': 'Удаление рубрики'\n'The section $1 has been deleted.': 'Рубрика $1 была удалена.'\n'Configure section': 'Настроить секцию'\n'The section could not be changed.': 'Невозможно изменить рубрику.'\n'Duplicate section': 'Дублировать рубрику'\n'The destination issue is the same as the source issue.': 'Выпуск источника тот же, что и  получателя.'\n'Error updating subscriptions.': 'Ошибка обновления подписок.'\n'Duplicating section': 'Дублирование рубрик'\n'The section $1 could not be duplicated': 'Рубрика $1 не может быть продублирована'\n'Section $1 has been duplicated to $2. $3 of $4': 'Рубрика $1 была продублирована в $2. $3 из $4'\n'You do not have the right to modify sections.': 'Вы не имеете прав доступа для модификации рубрики.'\n'A total of $1 articles were deleted.': 'Всего статей было удалено: $1'\n'Duplicate Section:': 'Дублировать рубрику:'\n'Existing Section': 'Существующая рубрика'\n'Go to new section': 'Перейти к новой рубрике'\n'Go to source section': 'Перейти к исходной рубрике'\n'New Section': 'Новая рубрика'\n'Please select either $1 or $2.': 'Пожалуйста, выберите или $1 или $2.'\n'Select destination section:': 'Выберете расположение рубрики:'\nOR: или\n'URL Name': 'Название URL'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'Указанный номер рубрики уже существует. Пожалуйста, укажите другое значение или используйте выпадающий список для поиска существующей рубрики.'\nWarning: Предупреждение\n'You must select a section.': 'Вы должны выбрать рубрику.'\n'You must specify a name for the section.': 'Вы должны определить название рубрики.'\n'The section could not be added.': 'Невозможно добавить рубрику.'\n'Add new section': 'Добавить новую рубрику'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.sh.yml",
    "content": "default: podrqazumevano\n'before you can configure the section templates.': 'pre nego što podesite šablon za rubriku.'\n'You have to assign a theme to the issue': 'Morate dodeliti temu izdanju'\n'The section number $1 was already in use.': 'Rubrika broj $1 je već u upotrebi.'\n'Delete all articles written in $1 language from this section': 'Obriši sve tekstove  iz ove rubrike napisane na jeziku: $1 '\n'Delete all articles and all of their translations': 'Obriši sve tekstove i njihove prevode'\n'Delete only this section ($1)': 'Obriši samo ovu rubriku ($1)'\n'Delete all translations of this section': 'Obriši sve prevode ove rubrike'\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': 'Broj članaka<BR><SMALL>(publikovano/ukupno)</SMALL>'\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': 'URL naziv mora biti jedinstven za sve rubrike u okviru izdanja.<br>URL naziv koji ste uneli ($1) je u konfliktu sa rubrikom $2$3. $4$5 '\n'Section updated': 'Rubrika je izmenjena'\n'There are $1 subscriptions which will be affected.': 'Postoji $1 pretplata na koje će se odraziti ova izmena.'\n'There are $1 articles in this section.': 'Ukupno je $1 članaka u ovoj rubrici.'\n'Go To Articles': 'Idi na tekstove'\n'Add section to all subscriptions.': 'Dodaj rubriku u sve pretplate.'\n'Delete section from all subscriptions.': 'Obriši rubriku iz svih pretplata.'\n'A total of $1 subscriptions were updated.': 'Ukupan broj izmenjenih pretplata: $1.'\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'Naziv<br><small>(kliknite listing tekstova)</small>'\n'Delete section $1': 'Obriši rubriku'\n'Adding new section': 'Dodavanje nove rubrike'\n'You do not have the right to add sections.': 'Nemate pravo da dodajete rubrike'\n'The section $1 has been successfuly added.': 'Rubrika $1 je uspešno dodata'\n'Please check if another section with the same number or URL name does not exist already.': 'Proverite da li druga rubrika sa istim brojem ili URL imenom već ne postoji.'\n'Delete section': 'Obriši rubriku'\n'You do not have the right to delete sections.': 'Nemate pravo da brišete rubrike.'\n'Are you sure you want to delete the section $1?': 'Da li ste sigurni da želite da obrišete rubriku $1?'\n'Deleting section': 'Brisanje rubrika'\n'The section $1 has been deleted.': 'Rubrika $1 je obrisana'\n'Configure section': 'Podesi rubriku'\n'The section could not be changed.': 'Rubrika ne može biti izmenjena.'\n'Duplicate section': 'Dupliraj rubriku'\n'The destination issue is the same as the source issue.': 'Ciljno izdanje je isto kao matično.'\n'Error updating subscriptions.': 'Greška pri promeni pretplata.'\n'Duplicating section': 'Dupliranje rubrike'\n'The section $1 could not be duplicated': 'Rubrika $1 ne može biti duplirana '\n'Section $1 has been duplicated to $2. $3 of $4': 'Rubrika $1 je duplirana u $2. $3 od $4'\n'You do not have the right to modify sections.': 'Nemate pravo da menjate rubrike.'\n'A total of $1 articles were deleted.': 'Ukupno $1 članaka je obrisano.'\n'Duplicate Section:': 'Dupliraj rubriku:'\n'Existing Section': 'Postojeća rubrika'\n'Go to new section': 'Idi u novu rubriku'\n'Go to source section': 'Idi u početnu rubriku'\n'New Section': 'Nova rubrika'\n'Please select either $1 or $2.': 'Izaberite $1 ili $2.'\n'Select destination section:': 'Izaberite ciljnu rubriku'\nOR: ILI\n'URL Name': 'URL ime'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'Navedeni broj rubrike već postoji, izaberite drugu vrednost ili koristite padajući meni za izbor postojeće rubrike.'\nWarning: Upozorenje\n'You must select a section.': 'Morate izabrati rubriku'\n'You must specify a name for the section.': 'Morate uneti ime rubrike.'\n'The section could not be added.': 'Rubrika ne može biti dodata.'\n'Add new section': 'Dodaj novu rubriku'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.sq.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': null\n'Add section to all subscriptions.': null\n'Delete section from all subscriptions.': null\n'A total of $1 subscriptions were updated.': null\n'Name<BR><SMALL>(click to see articles)</SMALL>': null\n'Delete section $1': null\n'Adding new section': null\n'You do not have the right to add sections.': null\n'The section $1 has been successfuly added.': null\n'Please check if another section with the same number or URL name does not exist already.': null\n'Delete section': null\n'You do not have the right to delete sections.': null\n'Are you sure you want to delete the section $1?': null\n'Deleting section': null\n'The section $1 has been deleted.': null\n'Configure section': null\n'The section could not be changed.': null\n'Duplicate section': null\n'The destination issue is the same as the source issue.': null\n'Error updating subscriptions.': null\n'Duplicating section': null\n'The section $1 could not be duplicated': null\n'Section $1 has been duplicated to $2. $3 of $4': null\n'You do not have the right to modify sections.': null\n'A total of $1 articles were deleted.': null\n'Duplicate Section:': null\n'Existing Section': null\n'Go to new section': null\n'Go to source section': null\n'New Section': null\n'Please select either $1 or $2.': null\n'Select destination section:': null\nOR: null\n'URL Name': null\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': null\nWarning: null\n'You must select a section.': null\n'You must specify a name for the section.': null\n'The section could not be added.': null\n'Add new section': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.sr.yml",
    "content": "default: подразумевано\n'before you can configure the section templates.': 'пре него што подесите шаблон за рубрику.'\n'You have to assign a theme to the issue': 'Морате додлеити тему издању'\n'The section number $1 was already in use.': 'Рубрика број $1 је већ у употреби.'\n'Delete all articles written in $1 language from this section': 'Обриши све текстове из ове рубрике написане на језику: $1'\n'Delete all articles and all of their translations': 'Обриши све текстове и њихове преводе'\n'Delete only this section ($1)': 'Обриши само ову рубрику ($1)'\n'Delete all translations of this section': 'Обриши преводе ове рубрике'\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': 'Број текстова<BR><SMALL>(публикованих/укупно)</SMALL>'\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': 'УРЛ назив мора бити јединствен за све рубрике у оквиру издања. <br>УРЛ назив који сте унели ($1) је у конфликту са рубриком $2 $3. $4 $5'\n'Section updated': 'Рубрика је измењена'\n'There are $1 subscriptions which will be affected.': 'Постоји $1 претплата на које ће се одразити ова измена.'\n'There are $1 articles in this section.': 'Укупно је $1 текстова у овој рубрици.'\n'Go To Articles': 'Иди на текстове'\n'Add section to all subscriptions.': 'Додај рубрику у све претплате.'\n'Delete section from all subscriptions.': 'Обриши рубрику из свих претплата.'\n'A total of $1 subscriptions were updated.': 'Укупан број измењених претплата: $1.'\n'Name<BR><SMALL>(click to see articles)</SMALL>': Назив\n'Delete section $1': 'Обриши рубрику'\n'Adding new section': 'Додавање нове рубрике'\n'You do not have the right to add sections.': 'Немате право да додајете рубрике'\n'The section $1 has been successfuly added.': 'Рубрика $1 успешно је додата'\n'Please check if another section with the same number or URL name does not exist already.': 'Проверите да ли друга рубрика са истим бројем или УРЛ именом већ не постоји.'\n'Delete section': 'Обриши рубрику'\n'You do not have the right to delete sections.': 'Немате право брисања рубрика'\n'Are you sure you want to delete the section $1?': 'Да ли сте сигурни да желите да обришете рубрику $1? '\n'Deleting section': 'Брисање рубрика'\n'The section $1 has been deleted.': 'Рубрика $1 је обрисана'\n'Configure section': 'Подеси рубрику'\n'The section could not be changed.': 'Рубрика не може бити измењена'\n'Duplicate section': 'Дуплирај рубрику'\n'The destination issue is the same as the source issue.': 'Циљно издање је исто као матично.'\n'Error updating subscriptions.': 'Грешка при мењању претплата.'\n'Duplicating section': 'Дуплирање рубрике'\n'The section $1 could not be duplicated': 'Рубрика  $1 не може бити дуплирана'\n'Section $1 has been duplicated to $2. $3 of $4': 'Рубрика $1 је дуплирана у $2. $3 од $4'\n'You do not have the right to modify sections.': 'Немате право да мењате рубрике.'\n'A total of $1 articles were deleted.': 'Укупно $1 текстова је обрисано.'\n'Duplicate Section:': 'Дуплирај рубрику:'\n'Existing Section': 'Рубрика постоји'\n'Go to new section': 'Иди у нову рубрику'\n'Go to source section': 'Иди у почетну рубрику'\n'New Section': 'Нова рубрика'\n'Please select either $1 or $2.': 'Изаберите $1 или $2.'\n'Select destination section:': 'Изаберите циљну рубрику'\nOR: ИЛИ\n'URL Name': 'Скраћено име'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'Наведени број рубрике већ постоји - изаберите другу вредност или користите падајући мени за избор постојеће рубрике.'\nWarning: Упозорење\n'You must select a section.': 'Морате изабрати рубрику'\n'You must specify a name for the section.': 'Морате унети име рубрике.'\n'The section could not be added.': 'Рубрика не може бити додата'\n'Add new section': 'Додај нову рубрику'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.sv.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': 'Sektionen uppdaterad'\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': 'Gå till artiklar'\n'Add section to all subscriptions.': 'Lägg till sektionen till alla prenumerationer.'\n'Delete section from all subscriptions.': 'Radera sektionen från alla prenumerationer.'\n'A total of $1 subscriptions were updated.': 'Totalt $1 prenumerationer uppdaterade.'\n'Name<BR><SMALL>(click to see articles)</SMALL>': 'Namn<BR><SMALL>(klick för att se artiklar)</SMALL>'\n'Delete section $1': 'Radera sektion $1'\n'Adding new section': 'Lägger till ny sektion'\n'You do not have the right to add sections.': 'Du har inte rätt att lägga till sektioner.'\n'The section $1 has been successfuly added.': 'Sektionen $1 har lagts till framgångsrikt.'\n'Please check if another section with the same number or URL name does not exist already.': 'Var god kontollera om det inte redan finns en annan sektion med samma nummer eller URL.'\n'Delete section': 'Radera sektion'\n'You do not have the right to delete sections.': 'Du har inte rätt att radera sektioner.'\n'Are you sure you want to delete the section $1?': 'Är du säker att du vill radera sektionen $1?'\n'Deleting section': 'Raderar sektion'\n'The section $1 has been deleted.': 'Sektionen $1 raderad.'\n'Configure section': 'Konfigurera sektion'\n'The section could not be changed.': 'Sektionen kunde inte ändras'\n'Duplicate section': 'Duplicera sektion'\n'The destination issue is the same as the source issue.': 'Destinationsutgåvan är samma som källutgåvan.'\n'Error updating subscriptions.': 'Ett fel uppstod när prenumerationerna uppdaterades.'\n'Duplicating section': 'Duplicerar sektion'\n'The section $1 could not be duplicated': 'Sektionen $1 kunde inte dupliceras'\n'Section $1 has been duplicated to $2. $3 of $4': 'Sektionen $1 har duplicerats till $2. $3 av $4'\n'You do not have the right to modify sections.': 'Du har inte rätt att modifiera sektioner.'\n'A total of $1 articles were deleted.': 'Totalt $1 artiklar raderades.'\n'Duplicate Section:': 'Duplicera sektion:'\n'Existing Section': 'Existerande sektion'\n'Go to new section': 'Gå till ny sektion'\n'Go to source section': 'Gå till källsektion'\n'New Section': 'Ny sektion'\n'Please select either $1 or $2.': 'Var god välj antingen $1 eller $2.'\n'Select destination section:': 'Välj destinationssektionen:'\nOR: ELLER\n'URL Name': URL-namn\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'Det inmatade sektionsnumret finns redan, var god mata in ett annat värde eller använd rullgardinsmenyn för att hitta en existerande sektion.'\nWarning: Varning\n'You must select a section.': 'Du måste välja en sektion.'\n'You must specify a name for the section.': 'Du måste skriva in ett namn för sektionen.'\n'The section could not be added.': 'Sektionen kunde inte läggas till.'\n'Add new section': 'Lägg till ny sektion'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.tr.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': null\n'Add section to all subscriptions.': null\n'Delete section from all subscriptions.': null\n'A total of $1 subscriptions were updated.': null\n'Name<BR><SMALL>(click to see articles)</SMALL>': null\n'Delete section $1': null\n'Adding new section': null\n'You do not have the right to add sections.': null\n'The section $1 has been successfuly added.': null\n'Please check if another section with the same number or URL name does not exist already.': null\n'Delete section': null\n'You do not have the right to delete sections.': null\n'Are you sure you want to delete the section $1?': null\n'Deleting section': null\n'The section $1 has been deleted.': null\n'Configure section': null\n'The section could not be changed.': null\n'Duplicate section': null\n'The destination issue is the same as the source issue.': null\n'Error updating subscriptions.': null\n'Duplicating section': null\n'The section $1 could not be duplicated': null\n'Section $1 has been duplicated to $2. $3 of $4': null\n'You do not have the right to modify sections.': null\n'A total of $1 articles were deleted.': null\n'Duplicate Section:': null\n'Existing Section': null\n'Go to new section': null\n'Go to source section': null\n'New Section': null\n'Please select either $1 or $2.': null\n'Select destination section:': null\nOR: null\n'URL Name': null\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': null\nWarning: null\n'You must select a section.': null\n'You must specify a name for the section.': null\n'The section could not be added.': null\n'Add new section': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.uk.yml",
    "content": "default: 'За замовчуванням'\n'before you can configure the section templates.': 'перед тим як ви зможете налаштувати шаблони рубрік.'\n'You have to assign a theme to the issue': 'Ви маєте призначити тему для випуску.'\n'The section number $1 was already in use.': 'Рубрика № $1 вже використовується.'\n'Delete all articles written in $1 language from this section': 'Видалити всі статті, написані на мові $1 з цієї рубріки'\n'Delete all articles and all of their translations': 'Видалити всі статті та всі переклади цієї статті'\n'Delete only this section ($1)': 'Видалити тільки цю рубріку ($1)'\n'Delete all translations of this section': 'Видалити всі переклади з цієї рубрики'\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': 'Кількіть статей <BR><SMALL>(Опублікованих/Загальна)</SMALL>'\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': 'Посилання має бути унікальним для всіх рубрик у цьому випуску.<br>Зазначений URL ($1) конфліктує з рубрікою $2$3. $4$5'\n'Section updated': 'Рубріка оновлена'\n'There are $1 subscriptions which will be affected.': 'Буде застосовано до $1 підписки(ам)'\n'There are $1 articles in this section.': 'Статей у рубриці:  $1'\n'Go To Articles': 'Перейти до статей'\n'Add section to all subscriptions.': 'Додати рубрику до всіх підписок.'\n'Delete section from all subscriptions.': 'Видалити рубрику з всіх підписок.'\n'A total of $1 subscriptions were updated.': 'Всього було оновлено  $1 піписок.'\n'Name<BR><SMALL>(click to see articles)</SMALL>': \"Назва<BR><SMALL>(переглянути)</SMALL>\\t \\t\"\n'Delete section $1': 'Видалить рубрику $1'\n'Adding new section': 'Додання нової рубрики'\n'You do not have the right to add sections.': 'Ви не маєте прав додавати рубрику.'\n'The section $1 has been successfuly added.': 'Рубрика $1 була успішно додана.'\n'Please check if another section with the same number or URL name does not exist already.': 'Будь ласка переконайтесь, що раніше не існувала інша рубрика з таким самим номером або посиланням'\n'Delete section': 'Видалить рубрику'\n'You do not have the right to delete sections.': 'Ви не маете прав видаляти рубрики'\n'Are you sure you want to delete the section $1?': 'Ви впевнені, що хочете видалити рубрику $1?'\n'Deleting section': 'Видалення рубрики'\n'The section $1 has been deleted.': 'Рубрика $1 була видалена.'\n'Configure section': 'Налаштувати секцію'\n'The section could not be changed.': 'Неможливо змінити рубрику.'\n'Duplicate section': 'Дублювати рубрику'\n'The destination issue is the same as the source issue.': 'Випуск джерела такий самий як і отримувача.'\n'Error updating subscriptions.': 'Помилка оновлення підписок.'\n'Duplicating section': 'Дублювання рубрик'\n'The section $1 could not be duplicated': 'Рубрика $1 не може бути продубльована'\n'Section $1 has been duplicated to $2. $3 of $4': 'Рубрика $1 була продубльована у $2. $3 з $4'\n'You do not have the right to modify sections.': 'Ви не маєте прав модифікувати рубрики.'\n'A total of $1 articles were deleted.': 'Всього статей було видалено:  $1'\n'Duplicate Section:': 'Дублювати рубрику:'\n'Existing Section': 'Існуюча рубрика'\n'Go to new section': 'Перейти до нової рубрики'\n'Go to source section': 'Перейти до початкової рубрики'\n'New Section': 'Нова рубрика'\n'Please select either $1 or $2.': 'Будь ласка, виберить або $1 або $2'\n'Select destination section:': 'Виберіть розташування рубрики:'\nOR: або\n'URL Name': 'Текст посилання'\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': 'Вказаний номер рубрики вже існує. Будь ласка, вкажіть друге значення або використайте випадаючий список для пошуку існуючої рубрики.'\nWarning: Попередження\n'You must select a section.': 'Ви маєете вибрати рубрику.'\n'You must specify a name for the section.': 'Ви маєте визначити назву рубрики.'\n'The section could not be added.': 'Неможливо додати рубрику.'\n'Add new section': 'Додати нову рубрику'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.vi.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': null\n'Add section to all subscriptions.': null\n'Delete section from all subscriptions.': null\n'A total of $1 subscriptions were updated.': null\n'Name<BR><SMALL>(click to see articles)</SMALL>': null\n'Delete section $1': null\n'Adding new section': null\n'You do not have the right to add sections.': null\n'The section $1 has been successfuly added.': null\n'Please check if another section with the same number or URL name does not exist already.': null\n'Delete section': null\n'You do not have the right to delete sections.': null\n'Are you sure you want to delete the section $1?': null\n'Deleting section': null\n'The section $1 has been deleted.': null\n'Configure section': null\n'The section could not be changed.': null\n'Duplicate section': null\n'The destination issue is the same as the source issue.': null\n'Error updating subscriptions.': null\n'Duplicating section': null\n'The section $1 could not be duplicated': null\n'Section $1 has been duplicated to $2. $3 of $4': null\n'You do not have the right to modify sections.': null\n'A total of $1 articles were deleted.': null\n'Duplicate Section:': null\n'Existing Section': null\n'Go to new section': null\n'Go to source section': null\n'New Section': null\n'Please select either $1 or $2.': null\n'Select destination section:': null\nOR: null\n'URL Name': null\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': null\nWarning: null\n'You must select a section.': null\n'You must specify a name for the section.': null\n'The section could not be added.': null\n'Add new section': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.zh.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': null\n'Add section to all subscriptions.': 为所有订阅增加区\n'Delete section from all subscriptions.': 删除所有订阅的区\n'A total of $1 subscriptions were updated.': 全部$1订阅被更新\n'Name<BR><SMALL>(click to see articles)</SMALL>': 名称（单击阅读文章）\n'Delete section $1': 删除区$1区\n'Adding new section': 正在增加新区\n'You do not have the right to add sections.': 您无权增加区\n'The section $1 has been successfuly added.': 已成功增加区$1\n'Please check if another section with the same number or URL name does not exist already.': null\n'Delete section': 删除区\n'You do not have the right to delete sections.': 您无权删除区\n'Are you sure you want to delete the section $1?': 确定要删除区$1？\n'Deleting section': 删除区\n'The section $1 has been deleted.': 区$1已被删除\n'Configure section': null\n'The section could not be changed.': 区不能被修改\n'Duplicate section': null\n'The destination issue is the same as the source issue.': null\n'Error updating subscriptions.': null\n'Duplicating section': null\n'The section $1 could not be duplicated': null\n'Section $1 has been duplicated to $2. $3 of $4': null\n'You do not have the right to modify sections.': null\n'A total of $1 articles were deleted.': null\n'Duplicate Section:': null\n'Existing Section': null\n'Go to new section': null\n'Go to source section': null\n'New Section': null\n'Please select either $1 or $2.': null\n'Select destination section:': null\nOR: null\n'URL Name': null\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': null\nWarning: null\n'You must select a section.': null\n'You must specify a name for the section.': null\n'The section could not be added.': 不能添加区\n'Add new section': 添加新区\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/sections.zh_TW.yml",
    "content": "default: null\n'before you can configure the section templates.': null\n'You have to assign a theme to the issue': null\n'The section number $1 was already in use.': null\n'Delete all articles written in $1 language from this section': null\n'Delete all articles and all of their translations': null\n'Delete only this section ($1)': null\n'Delete all translations of this section': null\n'No. of Articles<BR><SMALL>(Published/Total)</SMALL>': null\n'The URL name must be unique for all sections in this issue.<br>The URL name you specified ($1) conflicts with section $2$3. $4$5': null\n'Section updated': null\n'There are $1 subscriptions which will be affected.': null\n'There are $1 articles in this section.': null\n'Go To Articles': null\n'Add section to all subscriptions.': 为所有订阅增加区\n'Delete section from all subscriptions.': 删除所有订阅的区\n'A total of $1 subscriptions were updated.': 全部$1订阅被更新\n'Name<BR><SMALL>(click to see articles)</SMALL>': 名称（单击阅读文章）\n'Delete section $1': 删除区$1区\n'Adding new section': 正在增加新区\n'You do not have the right to add sections.': 您无权增加区\n'The section $1 has been successfuly added.': 已成功增加区$1\n'Please check if another section with the same number or URL name does not exist already.': null\n'Delete section': 删除区\n'You do not have the right to delete sections.': 您无权删除区\n'Are you sure you want to delete the section $1?': 确定要删除区$1？\n'Deleting section': 删除区\n'The section $1 has been deleted.': 区$1已被删除\n'Configure section': null\n'The section could not be changed.': 区不能被修改\n'Duplicate section': null\n'The destination issue is the same as the source issue.': null\n'Error updating subscriptions.': null\n'Duplicating section': null\n'The section $1 could not be duplicated': null\n'Section $1 has been duplicated to $2. $3 of $4': null\n'You do not have the right to modify sections.': null\n'A total of $1 articles were deleted.': null\n'Duplicate Section:': null\n'Existing Section': null\n'Go to new section': null\n'Go to source section': null\n'New Section': null\n'Please select either $1 or $2.': null\n'Select destination section:': null\nOR: null\n'URL Name': 網址名稱\n'The section number specified already exists, please specify a different value or use the dropdown to find an existing section.': null\nWarning: null\n'You must select a section.': null\n'You must specify a name for the section.': null\n'The section could not be added.': 不能添加区\n'Add new section': 添加新区\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.ar.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': 'أنت ترسل إحصائيات يومية'\n'You are NOT sending daily statistics.': 'أنت لا ترسل إحصائيات يومية'\n'Yes, help Newscoop': 'نعم، مساعدة نيوسكوب'\n'Support settings saved.': 'تم حفظ إعدادات الدعم'\n'Support Feedback': 'بيانات التقييم'\n'Show feedback data to be sent': 'أظهر بيانات التقييم ليتم إرسالها'\n'Remind me in 1 week': 'ذكّرني بعد أسبوع'\n'Hide feedback data': 'أخف بيانات التقييم'\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': 'ساعد نيوسكوب  أن يتحسن بواسطة إطلاعنا بأن تستعمله. سوف تتجمع هذه المعلومات بانتظام لكي تتحسن خبرة المستخدم.'\n'Current status: ': 'الحالة الحالية'\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.az.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': 'Sən gündəlik statistika göndərirsən.'\n'You are NOT sending daily statistics.': 'Sən gündəlik statistika GÖNDƏRMİRSƏN.'\n'Yes, help Newscoop': 'Bəli, Newscoop-a dəstək ol'\n'Support settings saved.': 'Dəstək parametrləri saxlandı.'\n'Support Feedback': 'Dəstək Rəyi'\n'Show feedback data to be sent': 'Göndəriləsi rəy məlumatını göstər'\n'Remind me in 1 week': '1 həftəyə yadıma sal'\n'Hide feedback data': 'Rəy məlumatını gizlə'\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': 'Newscoop-u istifadə etdiyini bizə bildirməklə onu inkişaf etdirməyimizə dəstək ol. Bu məlumatlaq sənin istifadəçi fikirlərini yaxşılaşdırmaq üçün toplanacaqdır.'\n'Current status: ': 'Mövcud status:'\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.be.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.bn.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.cs.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': 'Posíláte denní satistiky'\n'You are NOT sending daily statistics.': 'Neposíláte denní statistiky'\n'Yes, help Newscoop': 'Ano, pomozte Newscoop'\n'Support settings saved.': 'Podpůrná nastavení uložena.'\n'Support Feedback': 'Podpořit zpětnou vazbu'\n'Show feedback data to be sent': 'Ukazát data zpětné vazby k odeslání'\n'Remind me in 1 week': 'Připomenout za týden'\n'Hide feedback data': 'Skrýt data zpětné vazby'\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': 'Pomozte Newscoop se zdokonalit tím, že nám dáte vědět o jeho využívání. Tato informace bude se sbírána pravidelně, pro zlepšení vaší uživatelské zkušenosti.'\n'Current status: ': 'Současný status:'\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.da.yml",
    "content": "'Do not remind me': 'Påmind mig ikke'\n'You are sending daily statistics.': 'Du sender daglig statistik.'\n'You are NOT sending daily statistics.': 'Du sender IKKE daglig statistik.'\n'Yes, help Newscoop': 'Ja, hjælp Newscoop'\n'Support settings saved.': 'Support indstillinger gemt.'\n'Support Feedback': 'Support Feedback'\n'Show feedback data to be sent': 'Vis feedback-data, der skal sendes'\n'Remind me in 1 week': 'Påmindelse om 1 uge'\n'Hide feedback data': 'Skjul feedback data'\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': 'Hjælp os ved at automatisk at sende os information om hvordan du bruger Newscoop.'\n'Current status: ': 'Nuværende status:'\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': 'Ved at trykke på Ja, hjælp Newscoop knappen godkender du Sourcefabrics politik for personlige oplysninger'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.de.yml",
    "content": "'Do not remind me': 'Bite nicht erinnern'\n'You are sending daily statistics.': 'Sie senden tägliche Statistiken. '\n'You are NOT sending daily statistics.': 'Sie senden keine täglichen Statistiken '\n'Yes, help Newscoop': 'Ja, Newscoop unterstützen. '\n'Support settings saved.': 'Supporteinstellungen gespeichert. '\n'Support Feedback': 'Support Feedback'\n'Show feedback data to be sent': 'Zeige Feedbackdaten zum Senden. '\n'Remind me in 1 week': 'Erinnere mich in 1 Woche'\n'Hide feedback data': 'Feedbackdaten verstecken'\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': 'Helfen Sie Newscoop indem Sie uns Nutzungsstatistiken senden. Diese Info soll uns helfen, Ihre User Experience zu verbessern. '\n'Current status: ': 'Aktueller Status: '\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': 'Mit Klick auf den Button \"Ja, Newscoop helfen\" erkläre ich mich mit den Sourcefabric Datenschutzbestimmungen einverstanden.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.de_AT.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': 'Sie senden tägliche Statistiken. '\n'You are NOT sending daily statistics.': 'Sie senden keine täglichen Statistiken '\n'Yes, help Newscoop': 'Ja, Newscoop unterstützen. '\n'Support settings saved.': 'Supporteinstellungen gespeichert. '\n'Support Feedback': 'Support Feedback'\n'Show feedback data to be sent': 'Zeige Feedbackdaten zum Senden. '\n'Remind me in 1 week': 'Erinnere mich in 1 Woche'\n'Hide feedback data': 'Feedbackdaten verstecken'\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': 'Helfen Sie Newscoop indem Sie uns Nutzungsstatistiken senden. Diese Info soll uns helfen, Ihre User Experience zu verbessern. '\n'Current status: ': 'Aktueller Status: '\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.el.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': 'Στέλνετε ημερήσιες στατιστικές.'\n'You are NOT sending daily statistics.': 'ΔΕΝ στέλνετε  ημερήσιες στατιστικές.'\n'Yes, help Newscoop': 'Ναί, βοηθώ το Newscoop'\n'Support settings saved.': 'Οι ρυθμίσεις υποστήριξης αποθηκεύτηκαν.'\n'Support Feedback': 'Feedback Υποστήριξης'\n'Show feedback data to be sent': 'Εμφάνιση δεδομένων feedback προς αποστολή'\n'Remind me in 1 week': 'Υπενθύμιση σε 1 εβδομάδα'\n'Hide feedback data': 'Απόκρυψη δεδομένων feedback'\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': 'Βοηθήστε μας να βελτιώσουμε το Newscoop με το να μας ενημερώνετε πως το χρησιμοποιείτε. Αυτές οι πληροφορίες θα συλλέγονται τακτικά για να να βελτιωθεί η εμπειρία του χρήστη.'\n'Current status: ': 'Προσωρινή κατάσταση:'\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.en.yml",
    "content": "'Do not remind me': 'Do not remind me'\n'You are sending daily statistics.': 'You are sending daily statistics.'\n'You are NOT sending daily statistics.': 'You are NOT sending daily statistics.'\n'Yes, help Newscoop': 'Yes, help Newscoop'\n'Support settings saved.': 'Support settings saved.'\n'Support Feedback': 'Support Feedback'\n'Show feedback data to be sent': 'Show feedback data to be sent'\n'Remind me in 1 week': 'Remind me in 1 week'\n'Hide feedback data': 'Hide feedback data'\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': 'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.'\n'Current status: ': 'Current status: '\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': 'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.en_GB.yml",
    "content": "'Do not remind me': 'Do not remind me'\n'You are sending daily statistics.': 'You are sending daily statistics.'\n'You are NOT sending daily statistics.': 'You are NOT sending daily statistics.'\n'Yes, help Newscoop': 'Yes, help Newscoop'\n'Support settings saved.': 'Support settings saved.'\n'Support Feedback': 'Support Feedback'\n'Show feedback data to be sent': 'Show feedback data to be sent'\n'Remind me in 1 week': 'Remind me in 1 week'\n'Hide feedback data': 'Hide feedback data'\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': 'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.'\n'Current status: ': 'Current status: '\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': 'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.es.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': 'Está enviando las estadísticas diarias'\n'You are NOT sending daily statistics.': 'No está enviando las estadísticas diarias.'\n'Yes, help Newscoop': 'Sì, ayuda a Newscoop'\n'Support settings saved.': 'Se almacenaron las configuraciones de soporte.'\n'Support Feedback': 'Retroalimentación sobre soporte'\n'Show feedback data to be sent': 'Mostrar los datos de retroalientación por enviar'\n'Remind me in 1 week': 'Recordármelo en 1 semana'\n'Hide feedback data': 'Ocultar los datos de retroalimentación'\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': 'Ayúdenos a mejorar Newscoop haciéndonos saber que lo está utilizando.  Esta información se recolectará regularmente, con miras a mejorar la experiencia de nuestros usuarios.'\n'Current status: ': 'Estatus actual:'\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.es_AR.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.fa.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.fa_AF.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.fr.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.he.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.hr.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.hu.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': 'Te napi statisztikákat küldesz.'\n'You are NOT sending daily statistics.': 'Te NEM küldesz napi statisztikákat.'\n'Yes, help Newscoop': 'Igen, segítek a Newscoop fejlesztésében'\n'Support settings saved.': 'A támogatási beállítások mentése megtörtént.'\n'Support Feedback': 'Támogatási visszajelzés'\n'Show feedback data to be sent': 'Az elküldendő visszajelzési adatok megjelenítése'\n'Remind me in 1 week': 'Emlékeztessen 1 hét múlva'\n'Hide feedback data': 'Visszajelzési adatok elrejtése'\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': 'Segítsd a Newscoop fejlesztését azzal, hogy tudatod velünk a használatát. Ezek az adatok rendszeresen kerülnek gyűjtésre, hogy javítsák a felhasználói élményedet.'\n'Current status: ': 'Jelenlegi állapot: '\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.hy.yml",
    "content": "'Do not remind me': 'Do not remind me'\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': 'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.hy_AM.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.id.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.it.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': 'Stai inviando le statistiche giornaliere.'\n'You are NOT sending daily statistics.': 'NON stai inviando le statistiche giornaliere.'\n'Yes, help Newscoop': 'Sì, aiuta Newscoop'\n'Support settings saved.': 'Impostazioni del supporto salvate'\n'Support Feedback': 'Feedback del supporto'\n'Show feedback data to be sent': 'Mostra i dati di feedback che verrebbero inviati'\n'Remind me in 1 week': 'Ricordamelo tra una settimana'\n'Hide feedback data': 'Nascondi i dati di feedback'\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': 'Aiuta a far crescere Newscoop facendoci sapere come lo stai usando. Queste informazioni verranno raccolte regolarmente per migliorare la tua user experience.'\n'Current status: ': 'Impostazione attuale'\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.ka.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': 'თქვენ აგზავნით ყოველდღიურ სტატისტიკას. '\n'You are NOT sending daily statistics.': 'თქვენ აგზავნით ყოველდღიურ სტატისტიკას. '\n'Yes, help Newscoop': 'დიახ, დავეხმაროთ Newscoop-ს'\n'Support settings saved.': 'დამახსოვრებული პარამეტრების მხარდაჭერა. '\n'Support Feedback': 'უკუკავშირის მხარდაჭერა'\n'Show feedback data to be sent': 'გასაგზავვნი შეფასების მონაცემების ჩვენება'\n'Remind me in 1 week': 'შემახსენეთ ერთ კვირაში'\n'Hide feedback data': 'შეფასების მონაცემების დაფარვა'\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': 'დაეხმარეთ ნიუსქუპს გაუმჯობესდეს და შეგვატყობინეთ, რომ თქვენ მისი მომხმარებელი ხართ. ინფორმაცია რეგულარულად შეგროვდება რათა გავაუმჯობესოთ თქვენი როგორც მომხმარებლის გამოცდილება'\n'Current status: ': 'ამჟამინდელი სტატუსი:'\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.ko.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.ku.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.lv.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.mr.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.nb_NO.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.nl.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.pa.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.pl.yml",
    "content": "'Do not remind me': 'Nie przypominaj mi'\n'You are sending daily statistics.': 'Wysyłasz dzienne statystyki.'\n'You are NOT sending daily statistics.': 'NIE wysyłasz dziennych statystyk.'\n'Yes, help Newscoop': 'Tak, pomóż Newscoopowi'\n'Support settings saved.': 'Ustawienia pomocy zapisane.'\n'Support Feedback': Feedback\n'Show feedback data to be sent': 'Pokaż dane jakie zostaną wysłane'\n'Remind me in 1 week': 'Przypomnij mi za tydzień'\n'Hide feedback data': 'Ukryj dane'\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': 'Pomóż nam ulepszać Newsoopa mówiac nam jak go używasz. Te informacje będą zbierane regularnie w celu poprawienia twoich doświadczeń użytkowania.'\n'Current status: ': 'Aktualny status'\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': 'Klikając \"Tak, pomóż Newscoopowi\" zgadzasz się na politykę prywatności Sourcefabric.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.ps.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.pt.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.pt_BR.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.ro.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.ru.yml",
    "content": "'Do not remind me': 'Не напоминать'\n'You are sending daily statistics.': 'Вы отправляете ежеденевную статистику.'\n'You are NOT sending daily statistics.': 'Вы НЕ отправляете ежеденевную статистику.'\n'Yes, help Newscoop': 'Да, помогите Newscoop'\n'Support settings saved.': 'Настройки поддержки сохранены.'\n'Support Feedback': 'Обратная связь поддержки'\n'Show feedback data to be sent': 'Отобразить данные обратной связи для отправки'\n'Remind me in 1 week': 'Напомнить через 1 неделю'\n'Hide feedback data': 'Скрыть  данные обратной связи'\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': 'Помогите Newscoop стать лучше, отправляя нам информацию о том, вы используете его. Эта информация будет собираться регулярно с целью улучшения пользовательского опыта.'\n'Current status: ': 'Текущий статус:'\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': 'Выбирая Да, помочь Newscoop, я соглашаюсь с политикой конфиденциальности Sourcefabric'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.sh.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': 'Da, pomozi Njuskupu'\n'Support settings saved.': null\n'Support Feedback': 'Povratna informacija'\n'Show feedback data to be sent': null\n'Remind me in 1 week': 'Podseti me za nedelju dana'\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.sq.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.sr.yml",
    "content": "'Do not remind me': 'Не подсећај ме'\n'You are sending daily statistics.': 'Шаљете дневну статистику.'\n'You are NOT sending daily statistics.': 'Не шаљете дневну статистику.'\n'Yes, help Newscoop': 'Да, подржите Newscoop'\n'Support settings saved.': null\n'Support Feedback': 'Повратна информација'\n'Show feedback data to be sent': null\n'Remind me in 1 week': 'Подсети ме за недељу дана'\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': 'Помозите нам да наставимо са унапређивањем Newscoop-а, обавестите нас да га користите. Трудићемо се да га развијамо у складу са вашим жељама.'\n'Current status: ': 'Тренутни статус:'\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': 'Кликом на \"Da\" прихватате Sourcefabric privacy policy'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.sv.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.tr.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.uk.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': 'Ви відправляєте щоденну статистику.'\n'You are NOT sending daily statistics.': 'Ви не відправляєте щоденну статистику.'\n'Yes, help Newscoop': 'Так, допомогти Newscoop'\n'Support settings saved.': 'Налаштування підтримки збережені.'\n'Support Feedback': 'Зворотній зв’язок підтримки'\n'Show feedback data to be sent': 'Показати дані зворотнього зв’язку для відправки'\n'Remind me in 1 week': 'Нагадати через тиждень'\n'Hide feedback data': 'Приховати дані зворотнього зв’язку'\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': 'Допоможіть Newscoop стати краще, відправляючи нам інформацію про те, як Ви використовуєте його. Ця інформація буде збиратися регулярно з метою покращення навичок користувачів.'\n'Current status: ': 'Поточний статус:'\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.vi.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.zh.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/support.zh_TW.yml",
    "content": "'Do not remind me': null\n'You are sending daily statistics.': null\n'You are NOT sending daily statistics.': null\n'Yes, help Newscoop': null\n'Support settings saved.': null\n'Support Feedback': null\n'Show feedback data to be sent': null\n'Remind me in 1 week': null\n'Hide feedback data': null\n'Help Newscoop improve by letting us know you are using it. This info will be collected regularly in order to improve your user experience.': null\n'Current status: ': null\n'By clicking on the Yes, help Newscoop button, I agree to the Sourcefabric privacy policy': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.ar.yml",
    "content": "newscoop:\n    btn:\n        save: حفظ\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: 'تفضيلات النظام'\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: 'قاعدة بيانات ذاكرة التخزين المؤقت الخاصة بمحرك بحث المضيف.'\n            cacheengineport: 'قاعدة بيانات ذاكرة البحث المؤقت الخاصة بمحرك بحث المنفذ.'\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: 'وفقاً لإعدادات Php.ini'\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: 'بريد إلكتروني من النظام من أجل الإخطارات.'\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: 'مفتاح عام.'\n            recaptchaprivatekey: null\n            recaptchasecure: 'رابط آمن لاختبار reCAPTCHA؟'\n            disabled: null\n            yesoption: نعم\n            nooption: لا\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: 'تـرقيم الأيام '\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: 'تمكين أو تعطيل ذاكرة التخزين المؤقت للنظام، والتي من شأنها تحديث أداء نيوسكوب.'\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: 'الوقت الذي ستستغرقه الصوره لتكون مؤقته هو، من 30 ثانية إلى لا نهائية.'\n            cachetemplate: 'حدد DB لتمكين ذاكرة التخزين المؤقت للنماذج.'\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: 'عنوان البريد الإلمتروني مستخدم لإخطارات النظام.'\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.az.yml",
    "content": "newscoop:\n    btn:\n        save: Saxla\n    preferences:\n        error:\n            cache: 'Səhv: Nümunə arxivləşdirmə sistemini istifadə etmək üçün PHP %cache% aktivləşdirməlisən.'\n            replication: 'Məlumat Bazası Cavabı məlumatı tam deyil'\n            maxupload: 'Səhv Maksimal Fayl Yükləmə Ölçü dəyəri daxil edilib'\n            geolocation: 'Səhv Geoməkan sahələri. Rəqəmlərdən ibarət olmalıdır. Eni 90-dan çox -90-dan az ola bilməz, Uzunluğu isə 180-dən böyük, -180-dən kiçik ola bilməz.'\n            noaccess: 'Sistem seçimlərini dəyişməyə ixtiyarın yoxdur.'\n            latitude: 'En sahə dəyəri düzgün deyil.'\n            longitude: 'Hündürlük sahə dəyəri düzgün deyil.'\n            cacheNotCleared: 'Keşin təmizlənməsində xəta var idi'\n            joberror: 'Seçilən işin statusunu dəyişdirmədi.'\n            jobnotifyerror: 'Xəbərdarlıqları yandırıb-söndürə bilmədi.'\n        success:\n            saved: 'Sistem seçimləri yeniləndi.'\n            cacheCleared: 'Keş təmizləndi'\n            jobenabled: 'İş uğurla aktivləşdirildi.'\n            jobdisabled: 'İş uğurla söndürüldü.'\n            jobnotifyswitched: 'Arxa fon xəbərdarlıqlar dəyişdirildi,'\n        menu:\n            general: 'Ümumi Parametrlər'\n            email: 'Email Parametləri'\n            editor: 'Redaktor Seçimləri'\n            geolocation: 'Geoməkan Seçimləri'\n            fb: 'Facebook Seçimləri'\n            media: 'Video Seçimlər'\n            cache: 'Keş Seçimləri'\n            other: 'Digər Seçimlər'\n            recaptcha: 'reCAPTCHA seçimləri'\n            cronjob: 'Arxa fon İş Quraşdırmaları'\n        btn:\n            cleardatabasecache: 'drayverin keş yaddaşını təmizlə'\n            disable: null\n            enable: null\n        label:\n            title: 'Sistem Seçimləri'\n            header: Seçimlər\n            siteonline: 'Sayt On-Layn:'\n            sitetitle: 'Sayt başlığı:'\n            metakeywords: 'Sayt Meta Açar Sözlər:'\n            metadescription: 'Sayt Meta İzahı:'\n            timezone: 'Vaxt bölgəsi:'\n            cacheengine: 'Məlumat Baza Keş Sistemi:'\n            cacheenginehost: 'Məlumat Baza Keş Sistem Evi:'\n            cacheengineport: 'Məlumat Baza Keş Sistem Portu:'\n            cachetemplate: 'Nümunə Keş Nizamlayıcısı:'\n            cacheimage: 'Şəkilkeş HəyatMüddəti:'\n            allowrecovery: 'Şifrə bərpasını aktivləşdir:'\n            secretkey: 'Sirr Açarı:'\n            sessionlifetime: 'Sessiya Yaşama Müddəti:'\n            sessionlifetimemsg: 'php.ini parametrlərinə əsasən.'\n            separator: 'Açar söz ayırıcı'\n            captcha: 'CAPTCHA nümayişindən əvvəl giriş xətalarının sayı:'\n            maxupload: 'Maksimal fayl yükləmə ölçüsü:'\n            maxuploadmsg: '0 və %max% arasında dəyər daxil et (maksimal ölçü ''php.ini''-də qeyd edilib). Lütfən, rəqəmlə dəyər arasında boşluq saxlamamaq şərti ilə kilobaytlar üçün ''K'', müqabayt üçün ''M'' və giqabayt üçün ''G'' istifadə et. Nümunə: ''3M'''\n            stats: 'Statistikanın avtomatik yığımı:'\n            smtphost: 'SMTP Evi:'\n            smtpport: 'SMTP Portu:'\n            email: 'Bu ünvandan SMTP Email:'\n            emailfrom: 'Sistem haqqında xəbərdarlıq üçün email ünvan:'\n            imageratio: 'Şəklin Ölçüdəyişmə Əmsalı:'\n            imagewidth: 'Şəklin Ölçüdəyişmə Genişliyi:'\n            imageheight: 'Şəklin Ölçüdəyişmə Hündürlüyü:'\n            zoom: 'Məqalə tərkibindəki şəkillərin daha böyük görüntüsünə icazə verilir?'\n            mediaRichTextCaptions: 'Şəkilaltılar üçün redaktə imkanlarını yandırsın?'\n            mediaCaptionLength: 'Şəkilaltılar üçün işarə limiti'\n            mediaCaptionLength_after: işarə(lər)\n            external: 'Oxucu abunəlikləri kənardan idarə edilib?'\n            usereplication: 'Newscoop Cavab Serverini Quraşdırırsan?'\n            serverdb: 'Onlayn Newscoop Server Məlumat Bazası'\n            replicationhost: 'Məlumat Bazası Cavab Evi:'\n            replicationuser: 'Məlumat Bazası Cavab İstifadəçisi:'\n            replicationpw: 'Məlumat Bazası Cavab Şifrəsi:'\n            replicationport: 'Məlumat Bazası Cavab Portu:'\n            filter: 'Nümunələrin kiltr maskası (vergüllə ayrılmış)'\n            cron: 'Planlaşdırılmış işlər kənardan həyata keçirilsin?'\n            mysqlpath: 'MySQL müştəri komandası istiqaməti'\n            mysqlpathmsg: 'geo-ad məlumatlarını yükləmək üçün'\n            latitude: 'Xəritə Mərkəzinin Eni:'\n            longitude: 'Xəritə Mərkəzinin Uzunluğu:'\n            zoomlevel: 'Xəritə Böyütmə Səviyyəsi:'\n            defaultwidth: 'Xəritənin Mövcud Eni:'\n            defaultheight: 'Xəritənin Mövcud Hündürlüyü:'\n            css: 'Xəritə görünüşü üçün CSS faylı əlavə et'\n            autofocus: 'Xəritənin avto fokuslanması mümkün addım kimi:'\n            zoomautofocus: 'Avto fokuslama üçün maksimal böyütmə:'\n            borderautofocus: 'Avto fokuslama üçün xəritə çərçivəsi:'\n            mapprovider: 'Google Küçə Xəritə Provayderinə İcazə Ver:'\n            mapquest: 'MapQuest Xəritə Provayderinə İcazə Ver:'\n            openstreet: 'OpenStreet Xəritə Provayderinə İcazə Ver:'\n            defaultmapprovider: 'Mövcud Xəritə Provayderi:'\n            nominatimsearch: 'MapQuest Nominatim Axtarışını İstifadə Et:'\n            preflanguage: 'Üstünlük verilən ünvan dili:'\n            markerdir: 'Xəritə Marker Kataloqu:'\n            defaultmarker: 'İlkin Xəritə Markeri:'\n            popupwidth: 'Xəritə Popup-ın Minimal Eni:'\n            popupheight: 'Xəritə Popup-un Minimal Hündürlüyü:'\n            youtubewidth: 'Youtube-un Mövcud Eni:'\n            youtubeheight: 'Youtube-un Mövcud Hündürlüyü:'\n            vimeowidth: 'Vimeo-nun Mövcud Eni:'\n            vimeoheight: 'Vimeo-nun Mövcud Hündürlüyü:'\n            flashwidth: 'Flash-in Mövcud Eni:'\n            flashheight: 'Flash-in Mövcud Hündürlüyü:'\n            flashserver: 'Yerli Flash Serveri:'\n            flashdir: 'Yerli Flash Kataloqu:'\n            apikey: 'APİ açar:'\n            appid: 'Tətbiqetmə İD:'\n            fbsecret: 'Proqram Sirri:'\n            recaptchapublickey: 'İctimai açar'\n            recaptchaprivatekey: 'Şəxsi açar'\n            recaptchasecure: 'reCAPTCHA üçün təhlükəsizlik url-i?'\n            disabled: 'deaktivasiya edildi'\n            yesoption: Bəli\n            nooption: Xeyr\n            geosearch: 'Yerli GeoAd Axtarışını İstifadə Et:'\n            usergarbage: 'Köhnəlmiş istifadəçi məlumatını xaric edirsən?'\n            usergarbagedaysinfo: 'Gözləmədə olan istifadəçilərin neçə gündən sonra silinməsini silinəcəyini təyin edin.'\n            usergarbagedays: 'Günlərin sayı'\n            smartyUseProtocol: 'Smarty tərəfindən hazırlanmış mütləq URL-lər üçün protokol istifadə edirsən?'\n            cronjob: 'Cron iş adı'\n            enabled: null\n            options: null\n            info: 'İnfo:'\n            infodesc: 'Bu seçimlər arxa fon iş(lərini) yandırıb-söndürməyə imkan verir.'\n            prevRun: 'Əvvəlki tarix'\n            nextRun: 'Növbəti işlətmə tarixi'\n            norecords: null\n            cronJobEmail: 'Xəbərdarlıqlar üçün email ünvanları'\n            cronJobSenderEmail: 'Alanın email ünvanı'\n            cronJobSenderName: 'Alanın adı (məsələn: Newscoop Scheduler)'\n            cronJobNotify: 'Xəbərdarlıq edək?'\n            cronslist: 'Arxa fon işlərinin siyahısı.'\n            cronsadvanced: 'Əlavə Seçimlər'\n            moredetails: 'Əlavə məlumatlar.'\n        popover:\n            cronJobEmail: 'Xəta xəbərdarlıqları alacaq email ünvanları. '\n            cronJobSenderEmail: 'Xəbərdarlıqlar göndərən email ünvanı.'\n            cacheengine: 'Newscoop-un performansını inkişaf etdirə biləcək sistem keş keşini aktiv və ya deaktiv edir.'\n            cacheenginehost: 'Keş evini təqdim et (Memkeş, Memcakeş və ya Redis üçün)'\n            cacheengineport: 'Keş ev portunu təqdim et (Memkeş, Memcakeş və ya Redis üçün)'\n            cacheimage: 'Şəkillərin keşə yollanacağı vaxt 30 saniyədən sonsuza qədərdir.'\n            cachetemplate: 'Nümunələr üçün keşi aktivləşdirmək üçün DB seç.'\n            recovery: 'İstifadəçilər email vasitəsilə şifrə xatırlatması ala bilərlərmi?! Nəzərə al ki, bu funksiya aktivləşdirilsə, eyni zamanda da sənin emailin təhlükə altında olsa, Newscoop da öz növbəsində təhlükə altına keçəcək.'\n            secret: 'Veb xidmətlərin və digər geniş xüsusiyyətlərin inteqrasiyası üçün Newscoop-un istifadə edəcəyi təhlükəsizlik şifrəsi.'\n            separator: 'Məqalənin Dəyişilmə səhifəsindəki Açarsöz üçün ayırıcı təyin et (vergül və ya defis).'\n            stats: 'Bu seçim serverdəki nəşrlərə oxucu girişinin statistikasının toplanmasını aktivləşdirir. Əgər tamamilə başqa mənbədən olan statistika xidmətini istifadə edirsənsə, Yox düyməsini klikləyə bilərsən. Nəzərə al ki, statistika toplanmasının deaktivasiya edilməsi Newscoop serverində yüklənməni azaldacaqdır.'\n            zoom: 'Bəli seçimini etsən, oxucular məqalə tərkibindəki şəkilləri klikləməklə onların ölçüsünü böyüdə bilərlər. Yaxınlaşdırma xüsusiyyəti məqalə mətni daxilində yerləşdirilən istənilən şəkil üçün keçərlidir.'\n            richtext_status: null\n            richtext_length: null\n            ratio: 'Ölçülərin uyğunlaşdırılması burada qeyd olunan Dəyişdirilən Uzunluq və Dəyişdirilən En ölçülərinə uyğun aparılır. Əgər nisbət göstərilibsə və eyni zamanda Uzunluq və En də göstərilibsə Newscoop avtomatik olaraq daha kiçik ölçünü seçəcək. Standart ölçüləri yeni yaradılan nisbətlə dəyişməklə mükündür, bunu Yazını Dəyiş səhifəsində etmək olar.'\n            replication: 'Avadanlıq və şəbəkə problemləri yarandığı hallarda təhlükəsizlik göstəricisi olaraq Newscoop-un iki serverdə eyni zamanda əməliyyat həyata keçirməyə imkan yaradır.'\n            filter: 'Mövzu İdarəçiliyi səhifəsi tərəfindən əldə edilə bilən nümunələrin nümunə dəyişmə səhifəsindən gizləmək üçün açar sözləri daxil et. Məsələn, artıq istifadədə olmayan, amma serverdən silmək istəmədiyin nümunələr.'\n            cron: 'Newscoop-un zamanlaması əvəzinə serverin zaman planlaşdırıcısını istifadə etmək deməkdir'\n            video: 'Nümayiş səhifə nümunələrində videoların düzgün ölçüdə göstərilməsi üçün bu bölmədə kənardan və ya daxildən əlavə edilmiş video faylların eni və hündürlüyü quraşdırıla bilər. '\n            emailfrom: 'Email ünvan sistem xəbərdarlıqları üçün istifadə edildi.'\n            recaptcha:\n                publickey: 'Bunu istifadəçilərinə təqdim edilmiş JavaScript şifrəsində istifadə et.'\n                privatekey: 'Öz serverinlə reCAPTCHA serveri arasında əlaqə yaradan zaman bunu istifadə et. Bunu sirr saxladığına əmin ol.'\n                secure: 'reCAPTCHA üçün təhlükəsiz url istifadə etmək istəsən, Bəli seçimini et.'\n            garbage: 'Aktivləşdirildikdə bu gözləmədə olan istifadəçilərin neçə gündən sonra silinəcəyini təyin edəcəkdir. İlkin olaraq 90 gün quraşdırılmışdır.'\n            lifetime: 'Sessiyanın saniyələrlə yaşama müddəti. Maksimum: 86400 (24 saat). Minimum: 0 (brauzer bağlanana qədər.'\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.be.yml",
    "content": "newscoop:\n    btn:\n        save: Захаваць\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: 'Сыстэмныя наладкі'\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: Так\n            nooption: Так\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.bn.yml",
    "content": "newscoop:\n    btn:\n        save: null\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: 'সিস্টেম পছন্দ নির্বাচন করুন'\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: null\n            nooption: null\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.cs.yml",
    "content": "newscoop:\n    btn:\n        save: Uložit\n    preferences:\n        error:\n            cache: 'Neplatné: Je třeba povolit PHP %cache% k použití caching systému šablon.'\n            replication: 'Database Replication data neúplná'\n            maxupload: 'Zadána neplatná maximální velikost nahrávaného souboru'\n            geolocation: 'Chybná poloha. Musí obsahovat čísla. Rozpětí nemůže být > 90 a <-90. Rozpětí nemůže být > 180 a < -180. '\n            noaccess: 'Nemáte oprávnění měnit systémové předvolby.'\n            latitude: 'Políčko rozpětí není platné. '\n            longitude: 'Hodnota pole zeměpisné délky není platné'\n            cacheNotCleared: 'Chyba v čištění cache'\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: 'Systémové preference aktualizovány.'\n            cacheCleared: 'Cache byla vymazána'\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: 'Obecné Nastavení'\n            email: 'Nastavení e-mailu'\n            editor: 'Nastavení Editoru'\n            geolocation: 'Nastavení geolokace'\n            fb: 'Nastavení Facebook'\n            media: 'Nastavení videa'\n            cache: 'Nastavení Cache'\n            other: 'Další nastavení'\n            recaptcha: 'Nastavení reCAPTCHA'\n            cronjob: null\n        btn:\n            cleardatabasecache: 'Smazat paměť disku'\n            disable: null\n            enable: null\n        label:\n            title: 'Systémové preference'\n            header: Preference\n            siteonline: 'Stránka On-line:'\n            sitetitle: 'Název Stránky:'\n            metakeywords: 'Meta Klíčová Slova Stránky'\n            metadescription: 'Meta Popis Stránky:'\n            timezone: 'Časové pásmo:'\n            cacheengine: 'Cache Engin Databáze:'\n            cacheenginehost: 'Databáze Cache Engine Host:'\n            cacheengineport: 'Databáze Cache Engine Port:'\n            cachetemplate: 'Cache Handler templatů:'\n            cacheimage: 'Imagecache Lifetime:'\n            allowrecovery: 'Obnovení hesla povoleno:'\n            secretkey: 'Tajný Klíč:'\n            sessionlifetime: 'Trvání Relace:'\n            sessionlifetimemsg: 'podle php.ini nastavení.'\n            separator: 'Oddělovač klíčových slov:'\n            captcha: 'Počet neúspěšných loginů před zobrazením CAPTCHA:'\n            maxupload: 'Maximální velikost uploadovaného souboru:'\n            maxuploadmsg: 'Vložte hodnotu mezi 0 a %max% (maximální velikost je určena v ''php.ini''). Použijte ''K'' pro kilobyty, ''M'' pro megabyty a ''G'' pro gigabyty, bez mezer mezi hodnotou a příslušným písmenem, např. ''3M''.'\n            stats: 'Atomatický sběr statistik:'\n            smtphost: 'SMTP Host:'\n            smtpport: 'SMTP Port:'\n            email: 'SMTP e-mail z adresy:'\n            emailfrom: 'E-mailová adresa pro upozornění ze systému:'\n            imageratio: 'Poměr Změny Velikosti:'\n            imagewidth: 'Změna velikosti (Šířka):'\n            imageheight: 'Změna velikosti (Výška):'\n            zoom: 'Povolit zoom pro obrázky ve článcích?'\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: 'Spravovat čtenářské předplatné externě?'\n            usereplication: 'Nastavit Newscoop Replication Server?'\n            serverdb: 'Online Server Databáze Newscoopu'\n            replicationhost: 'Database Replication Host:'\n            replicationuser: 'Database Replication uživatele:'\n            replicationpw: 'Database Replication hesla:'\n            replicationport: 'Database Replication Port:'\n            filter: 'Filtrování šablon (odděleno čárkou)'\n            cron: 'Spustit naplánované úlohy zvenku?'\n            mysqlpath: 'MySQL client command path'\n            mysqlpathmsg: 'Nahrát data geo-jmén'\n            latitude: 'Zeměpisná šířka středu mapy:'\n            longitude: 'Zeměpisná délka středu mapy:'\n            zoomlevel: 'Úroveň zoomu mapy:'\n            defaultwidth: 'Výchozí šířka mapy:'\n            defaultheight: 'Výchozí výška mapy:'\n            css: 'Zahrnout CSS soubor pro zobrazeni mapy'\n            autofocus: 'Automatické zaostření pro mapu jako výchozí chování:'\n            zoomautofocus: 'Maximální zoom pro automatické zaostření:'\n            borderautofocus: 'Hranice mapy pro automatické zaostření:'\n            mapprovider: 'Povolit poskytovatele map Google Streets:'\n            mapquest: 'Povolit poskytovatele map MapQuest:'\n            openstreet: 'Povolit poskytovatele map OpenStreet:'\n            defaultmapprovider: 'Výchozí poskytovatel mapy:'\n            nominatimsearch: 'Použijte vyhledávní MapQuest Nominatim:'\n            preflanguage: 'Preferovaný jazyk adresy:'\n            markerdir: 'Adresář značek na mapě:'\n            defaultmarker: 'Výchozí značky na mapě:'\n            popupwidth: 'Minimální šířka popup mapy:'\n            popupheight: 'Minimální výška popup mapy:'\n            youtubewidth: 'Youtube výchozí šířka: '\n            youtubeheight: 'Youtube výchozí výška:'\n            vimeowidth: 'Vimeo výchozí šířka.'\n            vimeoheight: 'Vimeo výchozí výška:'\n            flashwidth: 'Výchozí šířka Flash:'\n            flashheight: 'Výchozí výška Flash:'\n            flashserver: 'Místní Flash Server:'\n            flashdir: 'Místní Flash adresář:'\n            apikey: 'API Key:'\n            appid: 'App ID:'\n            fbsecret: 'App důvěrný:'\n            recaptchapublickey: 'Veřejný klíč'\n            recaptchaprivatekey: 'Soukromý klíč'\n            recaptchasecure: 'Bezpečné url pro reCAPTCHA?'\n            disabled: vypnuto\n            yesoption: Ano\n            nooption: Ne\n            geosearch: 'Použít lokální GeoNames vyhledávání:'\n            usergarbage: 'Odstranit zastaralá uživatelská data čekající na vyřízení?'\n            usergarbagedaysinfo: 'Definujte přesný počet dnů po kterých úživatelé čekající na vyřízení budou smazáni.'\n            usergarbagedays: 'Počet dní'\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: 'Povoluje nebo zakazuje systém cache cache, který může zlepšit výkon Newscoop.'\n            cacheenginehost: 'Poskytněnte cache host (pro Memcache, Memcached nebo Redis)'\n            cacheengineport: 'Poskytněte cache host port (pro Memcache, Memcached nebo Redis)'\n            cacheimage: 'Čas, po který budou obrázky uloženy, od 30 sekund do nekonečna.'\n            cachetemplate: 'Vyberte DB a tím povolíte cache pro templaty.'\n            recovery: 'Zda-li uživatelé mohou dostávat připomenutí hesla e-mailem. Všimněte si, že pokud je tato funkce zapnuta a váš e-mailový účet je ohrožena, vaše Newscoop publikace může být snadno ohrožena také.'\n            secret: 'Bezpečnostní klíč, který Newscoop může použít pro integraci webových služeb a dalších pokročilých funkcí.'\n            separator: 'Specifikujte oddělovač pro klíčová slova na stránce Úprav článku (čárka nebo pomlčka).'\n            stats: 'Tato možnost umožňuje shromažďovat statistické údaje o přístupech čtenářů k publikacím na serveru. Klikněte NE pokud používáte jinou statistickou službu. Zablokováním shromažďování statistických údajů můžete snížit zatížení vašeho Newscoop serveru. '\n            zoom: 'Pokud nastavena na Ano, čtenáři mohou zvětšovat obrázky u článku na vašich stránkách publikací pomocí klikání na obrázky. Tento zoom efekt funguje pro jakýkoliv obrázek vložený v řádce s textem článku.'\n            richtext_status: null\n            richtext_length: null\n            ratio: 'Poměr velikosti má přednost před jakoukoli změnou šírky nebo změny hodnoty výšky, která je zde nastavena. Pokud není poměr nastaven, ale šířka a výška jsou nastaveny, pak Newscoop použije hodnotu, kterou zmenší velikost obrazu. Výchozí nastavení zde může být přepsáno nastavením poměru, šířky nebo výšky pro konkrétní nastavení inline obrázku v  Article Edit page.'\n            replication: 'Toto Vám umožní nastavit Newscoop na dvou serverech najednou. Jedná se o bezpečnostní opatření pro případ hardwarových nebo síťových problémů. '\n            filter: 'Zadejte klíčová slova pro templaty, které chcete skrýt v template editoru  přístupného prostřednictvím Theme Management page. Například, templaty, které již nejsou používány, ale nechcete je odstranit ze serveru.'\n            cron: 'Prostředky k používání vlastních cron plánovače pro automatické úkoly, spíše než plánovač zahrnutý v Newscoop.'\n            video: 'Přednastavená šířka a výška u externě i lokálně uveřejňovaných souborů videí může být nastavena v této sekci, pro ujištění, že videa se zobrazují správně ve vašich Publications page templates.'\n            emailfrom: 'E-mailová adresa pro upozornění ze systému. '\n            recaptcha:\n                publickey: 'Použijte to v JavaScript kódu, který slouží vašim uživatelům.'\n                privatekey: 'Použijte při komunikaci mezi vaším servrem a reCAPTCHA servrem. Ujistěte se, že je to zachováno v tajnosti.'\n                secure: 'Pokud používáte bezpečnostní url pro reCAPTCHA vyberte možnost ANO.'\n            garbage: 'Pokud povoleno, umožňuje vydavateli definovat přesný počet dnů po kterých budou uživatelé čekající na vyřízení vymazáni. Přednastaveno 90 dnů.'\n            lifetime: 'Životnost relace v sekundách. Max: 86400 (24 hodin). Min: 0 (až do uzavření prohlížeče).'\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.da.yml",
    "content": "newscoop:\n    btn:\n        save: Gem\n    preferences:\n        error:\n            cache: 'Ugyldigt: PHP %cache% skal slås til for at bruge skabelons caching.'\n            replication: 'Databasereplikeringsdata ufuldstændige'\n            maxupload: 'Ugyldig værdi for maksimal størrelse på uploadede filer'\n            geolocation: 'Ugyldige Geolocation felter. Felterne skal indeholde tal. Breddegrad kan ikke være > 90 eller < -90. Længdegrad kan ikke være > 180 eller < -180.'\n            noaccess: 'Du har ikke rettigheder til at ændre systemindstillinger.'\n            latitude: 'Ugyldig breddegrad'\n            longitude: 'Ugyldig længdegrad'\n            cacheNotCleared: 'Fejl ved rensning af cache'\n            joberror: 'Kunne ikke ændre status på valgte job.'\n            jobnotifyerror: 'Kunne ikke slå beskeder til/fra.'\n        success:\n            saved: 'Systemindstillinger opdateret.'\n            cacheCleared: 'Cache slettet'\n            jobenabled: 'Jobbet blev slået til.'\n            jobdisabled: 'Jobbet blev slået fra.'\n            jobnotifyswitched: 'Indstillinger for baggrundsjobs blev opdateret.'\n        menu:\n            general: 'Generelle indstillinger'\n            email: 'Email indstillinger'\n            editor: 'Editor indstillinger'\n            geolocation: 'Geolocation indstillinger'\n            fb: 'Facebook indstillinger'\n            media: 'Video indstillinger'\n            cache: 'Cache indstillinger'\n            other: 'Andre indstillinger'\n            recaptcha: 'reCAPTCHA indstillinger'\n            cronjob: 'Indstillinger for baggrundsjob.'\n        btn:\n            cleardatabasecache: 'Slet nuværende driver cache'\n            disable: 'Slå fra'\n            enable: 'Slå til'\n        label:\n            title: 'System indstillinger'\n            header: Indstillinger\n            siteonline: 'Hjemmeside on-line:'\n            sitetitle: 'Hjemmeside titel:'\n            metakeywords: 'Hjemmeside meta nøgleord:'\n            metadescription: 'Hjemmeside meta beskrivelse:'\n            timezone: 'Tidszone:'\n            cacheengine: 'Database cache system:'\n            cacheenginehost: 'Database cache system vært:'\n            cacheengineport: 'Database cache system port:'\n            cachetemplate: 'Cache system for skabeloner:'\n            cacheimage: 'Billedcache levetid:'\n            allowrecovery: 'Tillad gendannelse af adgangskoder:'\n            secretkey: 'Hemmelig nøgle:'\n            sessionlifetime: 'Sessions levetid:'\n            sessionlifetimemsg: 'ifølge indstillinger i php.ini.'\n            separator: 'Separator for nøgleord:'\n            captcha: 'Antal mislykkede login forsøg før CAPTCHA:'\n            maxupload: 'Maksimal størrelse på uploadede filer:'\n            maxuploadmsg: 'Indtast en værdi mellem 0 og %max% (den maksimale størrelse angivet i ''php.ini''). Brug ''K'' for kilobytes, ''M'' for megabytes og ''G'' for gigabytes, uden mellemrum mellem tallet og bogstavet. F.eks. ''3M'' for 3 megabyte.'\n            stats: 'Automatisk indsamling af statistik:'\n            smtphost: 'SMTP vært:'\n            smtpport: 'SMTP port:'\n            email: 'SMTP email ''fra'' adresse:'\n            emailfrom: 'Email adresse for beskeder fra systemet:'\n            imageratio: 'Forhold ved billedskalering:'\n            imagewidth: 'Bredde ved billedskalering:'\n            imageheight: 'Højde ved billedskalering:'\n            zoom: 'Brug zoom til billeder i artikler?'\n            mediaRichTextCaptions: 'Brug tekstformatering til billedtekster?'\n            mediaCaptionLength: 'Maksimalt antal tegn til billedtekster:'\n            mediaCaptionLength_after: tegn\n            external: 'Håndter abonnementer eksternt?'\n            usereplication: 'Opsæt en Newscoop replikationsserver?'\n            serverdb: 'Newscoop online server database'\n            replicationhost: 'Vært til databasereplikation:'\n            replicationuser: 'Bruger til databasereplikation:'\n            replicationpw: 'Adgangskode til databasereplikation:'\n            replicationport: 'Port til databasereplikation:'\n            filter: 'Skabelon filter maske (kommasepareret)'\n            cron: 'Kør planlagte opgaver eksternt?'\n            mysqlpath: 'MySQL klient kommando sti'\n            mysqlpathmsg: 'for at hente geo-names data'\n            latitude: 'Breddegrad for midtpunkt på kort:'\n            longitude: 'Længdegrad for midtpunkt på kort:'\n            zoomlevel: 'Zoom niveau for kort:'\n            defaultwidth: 'Standard bredde for kort:'\n            defaultheight: 'Standard højde for kort:'\n            css: 'Inkluder CSS fil til kortvisning'\n            autofocus: 'Brug auto-fokus som standard for kort:'\n            zoomautofocus: 'Maksimal zoom for autofokus:'\n            borderautofocus: 'Grænse for auto-fokusering på kort:'\n            mapprovider: 'Tillad Google Streets kort udbyder:'\n            mapquest: 'Tillad MapQuest kort udbyder:'\n            openstreet: 'Tillad OpenStreet kort udbyder:'\n            defaultmapprovider: 'Standard kort udbyder:'\n            nominatimsearch: 'Brug MapQuest Nominatim søgning:'\n            preflanguage: 'Foretrukket adresse sprog:'\n            markerdir: 'Mappe til kortmarkører:'\n            defaultmarker: 'Standard kort markør:'\n            popupwidth: 'Mindste bredde for kort popup:'\n            popupheight: 'Mindste højde for kort popup:'\n            youtubewidth: 'Youtube standard bredde:'\n            youtubeheight: 'Youtube standard højde:'\n            vimeowidth: 'Vimeo standard bredde:'\n            vimeoheight: 'Vimeo standard højde:'\n            flashwidth: 'Flash standard bredde:'\n            flashheight: 'Flash standard højde:'\n            flashserver: 'Lokal Flash server:'\n            flashdir: 'Lokal Flash mappe:'\n            apikey: 'API nøgle:'\n            appid: 'App ID:'\n            fbsecret: 'App hemmelighed:'\n            recaptchapublickey: 'Offentlig nøgle'\n            recaptchaprivatekey: 'Privat nøgle'\n            recaptchasecure: 'Hemmelig URL for reCAPTCHA?'\n            disabled: 'slået fra'\n            yesoption: Ja\n            nooption: Nej\n            geosearch: 'Brug lokal GeoNames søgning:'\n            usergarbage: 'Fjern forældede data om afventende brugere?'\n            usergarbagedaysinfo: 'Angiv et antal dage efter hvilke ikke-godkendte brugere slettes.'\n            usergarbagedays: 'Antal dage'\n            smartyUseProtocol: 'Brug protokol for absolutte URL''er genereret af Smarty?'\n            cronjob: 'Navn på cron job'\n            enabled: Status\n            options: Indstillinger\n            info: 'Info:'\n            infodesc: 'Disse indstillinger vil hjælpe dig med at administrere baggrundsjobs ved at aktivere/deaktivere valgte jobs.'\n            prevRun: 'Sidste kørselsdato'\n            nextRun: 'Næste kørselsdato'\n            norecords: 'Ingen opslag.'\n            cronJobEmail: 'Email adresse til beskeder'\n            cronJobSenderEmail: 'Email adresse for afsender'\n            cronJobSenderName: 'Navn på afsender (f.eks. Newscoop jobkørsel)'\n            cronJobNotify: 'Giv besked?'\n            cronslist: 'Liste over baggrundsjobs'\n            cronsadvanced: 'Avancerede indtillinger'\n            moredetails: 'Flere detaljer.'\n        popover:\n            cronJobEmail: 'E-mail adresser der skal modtage fejlmeddelelser (kommasepareret).'\n            cronJobSenderEmail: 'E-mail adresser der skal sende beskeder.'\n            cacheengine: 'Slår system cache til eller fra, hvilket kan forbedre Newscoops hastighed.'\n            cacheenginehost: 'Angiv cache vært (for Memcache, Memcached eller Redis)'\n            cacheengineport: 'Angiv cache vært port (for Memcache, Memcached eller Redis)'\n            cacheimage: 'Perioden billeder er i cachen, fra 30 sekunder til uendeligt.'\n            cachetemplate: 'Vælg DB for at bruge cache for skabeloner.'\n            recovery: 'Hvorvidt brugerne kan få en adgangskode påmindelse via e-mail. Bemærk, at hvis denne funktion er aktiveret, og andre får adgang til din e-mail-konto, kan de nemt skaffe sig adgang til din Newscoop publikation.'\n            secret: 'Sikkerhedsnøglen Newscoop kan bruge til integration med web services og andre avancerede funktioner.'\n            separator: 'Angiv separator for nøgleord ved artikelredigering (komma eller tankestreg).'\n            stats: 'Denne indstilling gør det muligt at indsamle statistik om læsernes brug af publikationer på serveren. Du ønsker måske at klikke på Nej, hvis du bruger en tredjeparts statistiktjeneste, da deaktivering af statistikindsamling kan reducere belastningen på din Newscoop serveren.'\n            zoom: 'Sæt til Ja for at lade læsere forstørre artikelbilleder ved at klikke på dem. Denne zoom funktion virker for alle billeder indsat i artikel teksten.'\n            richtext_status: null\n            richtext_length: null\n            ratio: 'Størrelses ratio har forrang for bredde eller højde værdier som indstilles her. Hvis ratio ikke er indstillet, men både bredde og højde er indstillet, så Newscoop vil bruge værdien der giver den mindste billedstørrelse. Standardindstillingerne her kan tilsidesættes af ratio, højde eller bredde indstillingerne for de enkelte billeder ved artikelredigering.'\n            replication: 'Bruges til at køre Newscoop på to servere samtidigt, en sikkerhed i tilfælde af hardware eller netværksproblemer.'\n            filter: 'Indtast nøgleord til skabeloner, som du ønsker at skjule fra skabelonsredigeringen tilgængelig via tema administrationssiden. For eksempel skabeloner der er ikke længere i brug, men som du ikke ønsker at slette fra serveren.'\n            cron: 'Brug serverens egen cron planlægning til automatiske opgaver i stedet for Newscoops indbyggede.'\n            video: 'Standard bredde og højde af både eksterne og lokale videofiler kan indstilles her, for at sikre, at videoer vises korrekt i dine publikationers sideskabeloner.'\n            emailfrom: 'Email adressen der bruges til beskeder fra systemet:'\n            recaptcha:\n                publickey: 'Brug dette i JavaScript-kode til dine brugere.'\n                privatekey: 'Brug dette ved kommunikation mellem din server og reCAPTCHA serveren. Sørg for at holde det hemmeligt.'\n                secure: 'Vælg Ja hvis du bruger sikker url til reCAPTCHA.'\n            garbage: 'Hvis aktiveret kan redaktører definere et antal dage hvorefter ikke-godkendte brugere slettes. Standarden er 90 dage.'\n            lifetime: 'Sessions livstid i sekunder. Max 86400 (24 timer). Min: 0 (indtil browseren lukkes).'\n            smartyuseprotocol: 'Slå til for at Smartyfunktionen url lave URL''er med en protokol. Som standard er dette slået fra for at lave protokol-agnostiske URL''er. Denne indstilling kan tilsidesættes ved at bruge useprotocol parameteret for Smarty funktionen  og angive en boolean for den ønskede håndtering.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.de.yml",
    "content": "newscoop:\n    btn:\n        save: Speichern\n    preferences:\n        error:\n            cache: 'Ungültig: Sie müssen PHP %cache% aktivieren um den Template Cache nutzen zu könnenn.'\n            replication: 'Daten für Datenbankreplikation unvollständig'\n            maxupload: 'Ungültiger Wert für maximale Dateigröße zum Hochladen eingegeben.'\n            geolocation: 'Geolocation-Felder ungültig. Es müssen Zahlen enthalten sein. Breitengrad kann nicht >90 and < -90 sein. Längengrad kann nicht > 180 und < -180 sein.'\n            noaccess: 'Keine Berechtigung Systemeinstellungen zu verändern.'\n            latitude: 'Wert im Feld Breitengrad ist ungültig.'\n            longitude: 'Wert im Feld Längengrad ist ungültig. '\n            cacheNotCleared: 'Fehler bei der Cache-Bereinigung'\n            joberror: 'Der Status des ausgewählten Prozesses konnte nicht verändert werden.'\n            jobnotifyerror: 'Benachrichtigungen konnten nicht aktiviert/deaktiviert werden.'\n        success:\n            saved: 'Systemeinstellungen aktualisiert.'\n            cacheCleared: 'Cache wurde gelöscht'\n            jobenabled: 'Der Prozess wurde erfolgreich aktiviert.'\n            jobdisabled: 'Der Prozess wurde erfolgreich deaktiviert.'\n            jobnotifyswitched: 'Die Hintergrund-Prozess Benachrichtigungs-Einstellung wurde erfolgreich geändert.'\n        menu:\n            general: 'Allgemeine Einstellungen'\n            email: 'E-Mail Einstellungen'\n            editor: 'Einstellungen bearbeiten'\n            geolocation: 'Geostandort Einstellungen'\n            fb: 'Facebook Einstellungen'\n            media: Video-Einstellungen\n            cache: Cache-Einstelllungen\n            other: 'Andere Einstellungen'\n            recaptcha: 'reCAPTCHA Einstellungen'\n            cronjob: 'Hintergrund-Prozess Einstellungen'\n        btn:\n            cleardatabasecache: 'Lösche aktuellen Treiber-Cache'\n            disable: Deaktivieren\n            enable: Aktivieren\n        label:\n            title: Systemeinstellungen\n            header: Einstellungen\n            siteonline: 'Seite Online:'\n            sitetitle: 'Seitentitel:'\n            metakeywords: 'Metaschlagwörter der Seite:'\n            metadescription: 'Metabeschreibung der Seite:'\n            timezone: 'Zeitzone:'\n            cacheengine: 'Datenbank Cache Engine:'\n            cacheenginehost: 'Datenbank Cache Engine Host:'\n            cacheengineport: 'Datenbank Cache-Engine-Port:'\n            cachetemplate: 'newscoop:preferences:label:cachetemplate'\n            cacheimage: 'Bildcache Lebensdauer:'\n            allowrecovery: 'Passwortwiederherstellung zulassen:'\n            secretkey: 'Geheimer Schlüssel:'\n            sessionlifetime: 'Dauer der Sitzung:'\n            sessionlifetimemsg: 'entsprechend der php.ini Einstellungen.'\n            separator: 'Trennzeichen für Schlagwörter:'\n            captcha: 'Anzahl fehlgeschlagener Loginversuche bevor CAPTCHA angezeigt wird:'\n            maxupload: 'Maximale Dateigröße zum Hochladen:'\n            maxuploadmsg: 'Geben Sie einen Wert zwischen 0 und %max% (die maximale Größe ist in der Datei ''php.ini'' angegeben). Benutzen sie ''K'' für Kilobytes, ''M'' für Megabytes und ''G'' für Gigabytes, ohne Leerraum zwischen den Werten und den entsprechenden Buchstaben, z.B. ''3M''. '\n            stats: 'Automatische Sammlung von Statistiken'\n            smtphost: 'newscoop:preferences:label:smtphost'\n            smtpport: 'newscoop:preferences:label:smtpport'\n            email: 'SMTP Email von Adresse:'\n            emailfrom: 'Email-Adresse für System-Benachrichtigungen '\n            imageratio: 'Bildratio verändern:'\n            imagewidth: 'Bildbreite verändern:'\n            imageheight: 'Bildhöhe verändern:'\n            zoom: 'Zoom aktiviert für Bilder im Artikelinhalt?'\n            mediaRichTextCaptions: 'Rich-Text Bildunterschriften aktivieren?'\n            mediaCaptionLength: 'Zeichenlimit für Bildunterschriften:'\n            mediaCaptionLength_after: Zeichen\n            external: 'Abonnements extern verwalten?'\n            usereplication: 'Newscoop Replication Server erstellen?'\n            serverdb: 'Newscoop Online Server Datenbank'\n            replicationhost: 'Host Datenbankreplikation:'\n            replicationuser: 'User Datenbankreplikation:'\n            replicationpw: 'Passwort Datenbankreplikation:'\n            replicationport: 'Port Datenbankreplikation:'\n            filter: 'Filtermaske Templates (durch Kommas getrennt)'\n            cron: 'Geplante Aufgaben extern ausführen?'\n            mysqlpath: 'MySQL Client Befehlspfad'\n            mysqlpathmsg: 'um Geo-Namen Daten zu laden'\n            latitude: 'Kartenmitte Breitengrad:'\n            longitude: 'Kartenmitte Längengrad:'\n            zoomlevel: 'Kartenzoom:'\n            defaultwidth: 'Karte Standardbreite:'\n            defaultheight: 'Karte Standardhöhe:'\n            css: 'CSS-Datei bei Kartenansicht einschließen. '\n            autofocus: 'Karten Auto-Focus als Standard-Verhalten. '\n            zoomautofocus: 'Maximaler Zoom für Auto-Schärfe'\n            borderautofocus: 'Kartengrenze für Auto-Focus:'\n            mapprovider: 'Google Streets Kartenprovider zulassen:'\n            mapquest: 'MapQuest Kartenprovider zulassen:'\n            openstreet: 'OpenStreet Kartenprovider zulassen:'\n            defaultmapprovider: 'Standard Kartenprovider:'\n            nominatimsearch: 'MapQuest Nominatim Suche benutzen: '\n            preflanguage: 'Sprache für Adressangaben: '\n            markerdir: 'Kartenmarkierung Verzeichnis:'\n            defaultmarker: 'Standard Kartenmarkierung:'\n            popupwidth: 'Kartenpopup Mindestbreite:'\n            popupheight: 'Kartenpopup Mindesthöhe:'\n            youtubewidth: 'Youtube Standardbreite:'\n            youtubeheight: 'Youtube Standardhöhe:'\n            vimeowidth: 'Vimeo Standardbreite:'\n            vimeoheight: 'Vimeo Standardhöhe:'\n            flashwidth: 'Flash Standardbreite:'\n            flashheight: 'Flash Standardhöhe:'\n            flashserver: 'Lokaler Flash Server:'\n            flashdir: 'Lokales Flash Verzeichnis:'\n            apikey: 'API Schlüssel:'\n            appid: 'newscoop:preferences:label:appid'\n            fbsecret: 'App Secret: '\n            recaptchapublickey: 'Öffentlicher Schlüssel'\n            recaptchaprivatekey: 'Privater Schlüssel'\n            recaptchasecure: 'Sichere URL für reCAPTCHA?'\n            disabled: deaktiviert\n            yesoption: Ja\n            nooption: Nein\n            geosearch: 'Lokale GeoNamen Suche benutzen:'\n            usergarbage: 'Entferne die Daten veralteter anhängiger Nutzer'\n            usergarbagedaysinfo: 'Definieren Sie eine Anzahl von Tagen nach denen anhängige, noch nicht vollständig registrierte Nutzer, gelöscht werden sollen.'\n            usergarbagedays: 'Anzahl der Tage'\n            smartyUseProtocol: 'Soll das Protokoll für absolute URLs von Smarty genutzt werden?'\n            cronjob: 'Name des Cronjobs (zeitliche Steuerung eines Prozesses)'\n            enabled: Status\n            options: Optionen\n            info: 'Information:'\n            infodesc: 'Diese Einstellungen helfen dabei Hintergrund-Prozesse zu steuern, indem ausgwählte Prozesse gestartet und gestoppt werden.'\n            prevRun: 'Vorhergehendes Start-Datum'\n            nextRun: 'Nächstes Start-Datum'\n            norecords: 'Es wurde kein Eintrag gefunden.'\n            cronJobEmail: 'E-Mail-Adressen für Benachrichtigungen'\n            cronJobSenderEmail: 'E-Mail-Adresse des Absenders'\n            cronJobSenderName: 'Name des Absenders (z.B.: Newscoop Zeitplaner)'\n            cronJobNotify: 'Benachrichtigung senden?'\n            cronslist: 'Liste der Hintergrund-Prozesse'\n            cronsadvanced: 'Erweiterte Einstellungen'\n            moredetails: 'Mehr Details'\n        popover:\n            cronJobEmail: 'Komma getrennte E-Mail-Adressen, an welche Fehler-Meldungen gesendet werden.'\n            cronJobSenderEmail: 'Die E-Mail-Adresse von der aus Benachrichtigungen gesendet werden.'\n            cacheengine: 'Ermöglicht oder verhindert das APC Caching, welches die Leistung von Newscoop verbessern kann.'\n            cacheenginehost: 'Cache-Host eingeben (für Memcache, Memcached oder Redis)'\n            cacheengineport: 'Cache-Host-Ports eingeben (für Memcache, Memcached oder Redis)'\n            cacheimage: 'Die Zeit, in der Bilder gecached werden, von 30 Sekunden bis unendlich.'\n            cachetemplate: 'Wählen Sie DB um Template Caching zu ermöglichen.'\n            recovery: 'Ob Nutzer via E-Mail eine Passwort-Erinnerung erhalten können. Beachten Sie, dass falls diese Funktion aktiviert ist und Ihr E-Mail-Konto gefährdet ist, kann dies auch zu einer Gefährdung für Ihre Newscoop-Publikation werden.'\n            secret: 'Der Sicherheitsschlüssel, den Newscoop für die Integration von Webdiensten und anderen modernen Funktionen nutzen kann. '\n            separator: 'Spezifizieren Sie den Trenner für Keywords im Artikel Editor (Komma oder Bindestrich).'\n            stats: 'Mit dieser Option aktivieren Sie die Sammlung von Statistiken über den Zugriff von Lesern Ihrer Publikationen. Klicken Sie Nein falls Sie ein externes Statistiktool nutzen, weil das Sammeln von Statisiken eine Belastung für Ihren Newscoop-Server darstellt.'\n            zoom: 'Wenn hier Ja eingestellt ist, können die Leser das Bild durch Klick auf das Bild vergrößern. Dieses Zooming-Element funktioniert bei jedem Inline-Bild innerhalb des Artikeltextes.'\n            richtext_status: 'Schaltet einen HTML-Editor für Bildunterschriften frei. Das Ausschalten von Rich-Text wird bestehendes HTML in der Bildunterschrift ignorieren, aber nicht löschen. Wenn Rich-Text Bildunterschriften ausgeschaltet sind, ist die Zeichenbegrenzung auf 255 Zeichen limitiert. Alle Bildunterschriften werden dann bei der nächsten Bearbeitung auf dieses Zeichenlimit gekürzt.'\n            richtext_length: 'Das Zeichenlimit beinhaltet jedwede Form von HTML und beträgt standardmäßig 255 Zeichen. Um unlimitierte Zeichenmengen für Bildunterschriften zu erlauben, muss hier der Wert 0 gesetzt werden. Achten Sie darauf, dass Ihr Newscoop Template unlimitierte Zeichenmengen für Bildunterschriften unterstützt.'\n            ratio: 'Das Beibehalten des Größenverhältnisses hat Vorrang vor Änderungen der Breite oder Höhe. Falls kein Größenverhältnis festgelegt ist, wird Newscoop den Wert benutzen, der zu einer kleineren Bildgröße führt. Die Standardeinstellungen können überschrieben werden durch Einstellungen von Größenverhältnis, Breite oder Höhe eines spezifischen Inline-Bildes im Artikel Editor. '\n            replication: 'Ermöglicht es Ihnen, Newscoop so einzustellen, dass es aus Sicherheitsgründen oder wegen Netzwerkproblemen auf zwei Servern gleichzeitig läuft.'\n            filter: 'Wenn Sie Keywords für Templates vor dem Template Editor verbergen wollen, geben Sie diese in der Designvorlage Management Seite ein. Zum Beispiel für Designvorlagen, die nicht mehr in Gebrauch sind, die sie aber nicht vom Server löschen wollen.'\n            cron: 'Der Cron-Zeitplaner des Servers soll für automatisierte Aufgaben gebraucht werden, nicht der Newscoop-Zeitplaner.'\n            video: 'Die Standardbreite und -höhe von extern oder lokal gehosteten Videodateien kann hier eingestellt werden, damit die Videos in den Templates ihrer Publikation korrekt abgespielt werden.'\n            emailfrom: 'Die E-Mail-Adresse, die für Benachrichtigungen aus dem System gebraucht wird.'\n            recaptcha:\n                publickey: 'Benutzen Sie dies im JavaScript Code, der Ihren Nutzern bereitgestellt wird.'\n                privatekey: 'Nutzen Sie dies für die Kommunikation zwischen Ihrem Server und dem reCAPTCHA-Server. Achten Sie dabei auf Geheimhaltung.'\n                secure: 'Falls Sie eine sichere URL für reCAPTCHA benutzen, wählen Sie die Option Ja'\n            garbage: 'Wenn diese Funktion freigeschaltet ist, dann ermöglicht sie dem Seitenbetreiber anhängige Nutzer nach einer konfigurierbaren Anzahl von Tagen zu löschen. Die Standardeinstellung beträgt 90 Tage. '\n            lifetime: 'Die Lebensdauer einer Newscoop Sitzung in Sekunden. Maximal 86.400 (24 Stunden). Minimal: 0 (bis der Browser geschlossen wird).'\n            smartyuseprotocol: 'Wenn freigeschaltet, dann wird diese Smarty Funktion absolute URLs mit einem Protokoll (http/https) erstellen. Standardmäßig ist diese Funktion deaktiviert und es werden relative URLs erstellt. Es ist möglich dieses Verhalten mit dem Nutzerprotokoll Parameter der Smarty Funktion zu überschreiben und eine Boole-Funktion mit dem gewünschten Verhalten zu spezifizieren.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.de_AT.yml",
    "content": "newscoop:\n    btn:\n        save: Speichern\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: Systemeinstellungen\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: Ja\n            nooption: Nein\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.el.yml",
    "content": "newscoop:\n    btn:\n        save: Αποθήκευση\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: 'Προτιμήσεις Συστήματος'\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: Ναι\n            nooption: Όχι\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.en.yml",
    "content": "newscoop:\n  btn:\n    save: \"Save\"\n  preferences:\n    error:\n      cache: \"Invalid: You need PHP %cache% enabled in order to use the template caching system.\"\n      replication: \"Database Replication data incomplete\"\n      maxupload: \"Invalid Max Upload File Size value submitted\"\n      geolocation: \"Invalid Geolocation fields. Must contain numbers. Latitude can't be > 90 and < -90. Longitude can't be > 180 and < -180.\"\n      noaccess: \"You do not have the right to change system preferences.\"\n      latitude: \"Latitude field value is not valid.\"\n      longitude: \"Longitude field value is not valid.\"\n      cacheNotCleared: \"There was error with cache clearing\"\n      joberror: \"Could not change status of selected job.\"\n      jobnotifyerror: \"Could not enable/disable notifications.\"\n    success:\n      saved: \"System preferences updated.\"\n      cacheCleared: \"Cache was cleared\"\n      jobenabled: \"Successfully enabled job.\"\n      jobdisabled: \"Successfully disabled job.\"\n      jobnotifyswitched: \"Background job notification setting switched successfully.\"\n    menu:\n      general: \"General Settings\"\n      email: \"Email Settings\"\n      editor: \"Editor Settings\"\n      geolocation: \"Geolocation Settings\"\n      fb: \"Facebook Settings\"\n      media: \"Video Settings\"\n      cache: \"Cache Settings\"\n      other: \"Other Settings\"\n      recaptcha: \"reCAPTCHA Settings\"\n      cronjob: \"Background Jobs Settings\"\n    btn:\n      cleardatabasecache: \"Clear current driver cache\"\n      disable: \"Disable\"\n      enable: \"Enable\"\n    label:\n      title: \"System Preferences\"\n      header: \"Preferences\"\n      siteonline: \"Site On-Line:\"\n      sitetitle: \"Site Title:\"\n      metakeywords: \"Site Meta Keywords:\"\n      metadescription: \"Site Meta Description:\"\n      timezone: \"Time Zone:\"\n      cacheengine: \"Database Cache Engine:\"\n      cacheenginehost: \"Database Cache Engine Host:\"\n      cacheengineport: \"Database Cache Engine Port:\"\n      cachetemplate: \"Template Cache Handler:\"\n      cacheimage: \"Imagecache Lifetime:\"\n      allowrecovery: \"Allow password recovery:\"\n      secretkey: \"Secret Key:\"\n      sessionlifetime: \"Session Lifetime:\"\n      sessionlifetimemsg: \"according to php.ini settings.\"\n      separator: \"Keyword separator:\"\n      captcha: \"Number of failed login attempts before showing CAPTCHA :\"\n      maxupload: \"Maximum upload file size:\"\n      maxuploadmsg: \"Enter a value between 0 and %max% (the maximum size is specified in 'php.ini'). Please use 'K' for kilobytes, 'M' for megabytes and 'G' for gigabytes, without white spaces between the value and the corresponding letter, e.g. '3M'.\"\n      stats: \"Automatic collection of statistics:\"\n      smtphost: \"SMTP Host:\"\n      smtpport: \"SMTP Port:\"\n      email: \"SMTP Email From address:\"\n      emailfrom: \"Email address for notifications from the system:\"\n      imageratio: \"Image Resizing Ratio:\"\n      imagewidth: \"Image Resizing Width:\"\n      imageheight: \"Image Resizing Height:\"\n      zoom: \"Zoom enabled for images in article content?\"\n      mediaRichTextCaptions: \"Enable rich text for image captions?\"\n      mediaCaptionLength: \"Character limit for image captions: \"\n      mediaCaptionLength_after: \"character(s)\"\n      external: \"Reader subscriptions managed externally?\"\n      usereplication: \"Setting up a Newscoop Replication Server?\"\n      serverdb: \"Newscoop Online Server Database\"\n      replicationhost: \"Database Replication Host:\"\n      replicationuser: \"Database Replication User:\"\n      replicationpw: \"Database Replication Password:\"\n      replicationport: \"Database Replication Port:\"\n      filter: \"Templates filter mask (separated by comma)\"\n      cron: \"Run scheduled tasks externally?\"\n      mysqlpath: \"MySQL client command path\"\n      mysqlpathmsg: \"to load geo-names data\"\n      latitude: \"Map Center Latitude:\"\n      longitude: \"Map Center Longitude:\"\n      zoomlevel: \"Map Zoom Level:\"\n      defaultwidth: \"Map Default Width:\"\n      defaultheight: \"Map Default Height:\"\n      css: \"Include CSS file for map view\"\n      autofocus: \"Map auto-focusing as the default behavior:\"\n      zoomautofocus: \"Maximal zoom for auto-focusing:\"\n      borderautofocus: \"Map border for auto-focusing:\"\n      mapprovider: \"Allow Google Streets Map Provider:\"\n      mapquest: \"Allow MapQuest Map Provider:\"\n      openstreet: \"Allow OpenStreet Map Provider:\"\n      defaultmapprovider: \"Default Map Provider:\"\n      nominatimsearch: \"Use MapQuest Nominatim Search:\"\n      preflanguage: \"Preferred address language:\"\n      markerdir: \"Map Marker Directory:\"\n      defaultmarker: \"Map Marker Default:\"\n      popupwidth: \"Map Popup Minimal Width:\"\n      popupheight: \"Map Popup Minimal Height:\"\n      youtubewidth: \"Youtube Default Width:\"\n      youtubeheight: \"Youtube Default Height:\"\n      vimeowidth: \"Vimeo Default Width:\"\n      vimeoheight: \"Vimeo Default Height:\"\n      flashwidth: \"Flash Default Width:\"\n      flashheight: \"Flash Default Height:\"\n      flashserver: \"Local Flash Server:\"\n      flashdir: \"Local Flash Directory:\"\n      apikey: \"API Key:\"\n      appid: \"App ID:\"\n      fbsecret: \"App Secret:\"\n      recaptchapublickey: \"Public key\"\n      recaptchaprivatekey: \"Private key\"\n      recaptchasecure: \"Secure url for reCAPTCHA?\"\n      disabled: \"disabled\"\n      yesoption: \"Yes\"\n      nooption: \"No\"\n      geosearch: \"Use Local GeoNames Search:\"\n      usergarbage: \"Remove obsolete pending users data?\"\n      usergarbagedaysinfo: \"Define a certain number of days after which the pending users will be deleted.\"\n      usergarbagedays: \"Days number\"\n      smartyUseProtocol: \"Use protocol for absolute URLs generated by Smarty?\"\n      cronjob: \"Cron job name\"\n      enabled: \"Status\"\n      options: \"Options\"\n      info: \"Info:\"\n      infodesc: \"These settings will help you manage background jobs by enabling/disabling the selected job(s).\"\n      prevRun: \"Previous run date\"\n      nextRun: \"Next run date\"\n      norecords: \"No records found.\"\n      cronJobEmail: \"E-mail addresses for notifications\"\n      cronJobSenderEmail: \"E-mail address of sender\"\n      cronJobSenderName: \"Name of sender (e.g.: Newscoop Scheduler)\"\n      cronJobNotify: \"Notify?\"\n      cronslist: \"Background jobs list\"\n      cronsadvanced: \"Advanced Settings\"\n      moredetails: \"More details.\"\n    popover:\n      cronJobEmail: \"E-mail addresses separated by comma that will receive error notifications.\"\n      cronJobSenderEmail: \"E-mail address from which notifications will be sent.\"\n      cacheengine: \"Enables or disables system cache cache, which can improve Newscoop performance.\"\n      cacheenginehost: \"Provide cache host (for Memcache, Memcached or Redis)\"\n      cacheengineport: \"Provide cache host port (for Memcache, Memcached or Redis)\"\n      cacheimage: \"The time that images will be cached for, from 30 seconds to infinite.\"\n      cachetemplate: \"Select DB to enable the cache for templates.\"\n      recovery: \"Whether users can get a password reminder by email. Note that if this feature is enabled and your email account is compromised, your Newscoop publication can easily be compromised in turn.\"\n      secret: \"The security key that Newscoop can use for integration of web services and other advanced features.\"\n      separator: \"Specify the separator for Keywords in the Edit Article page (comma or hyphen).\"\n      stats: \"This option enables the collection of statistics on reader access to publications on the server. You may wish to click No if you use a third-party statistical service, as disabling the collection of statistics may reduce the load on your Newscoop server.\"\n      zoom: \"If is set to Yes, readers can enlarge article images in your publications pages by clicking on them. This zooming feature works for any images inserted inline with the article text.\"\n      richtext_status: \"Enables a HTML editor for captions. Disabling rich text will escape, but not remove, any HTML present in the caption source. If disabled, the character limit will be fixed to 255, and any longer captions will be truncated the next time they are edited.\"\n      richtext_length: \"The limit includes any HTML and defaults to 255 characters. Set 0 here to have unlimited caption lengths, if your theme supports them.\"\n      ratio: \"The resizing ratio takes precedence over any Resizing Width or Resizing Height value which is set here. If Ratio is not set but both Width and Height are set, then Newscoop will use the value which results in a smaller image size. The default settings here can be overridden by the ratio, width or height settings for a specific inline image set on the Article Edit page.\"\n      replication: \"Enables you to set up Newscoop to operate on two servers at once, which is a safety feature in case of hardware or network problems.\"\n      filter: \"Enter keywords for templates that you wish to hide from the template editor accessible via the Theme Management page. For example, templates that are no longer in use, but you do not wish to delete from the server.\"\n      cron: \"Means to use the servers own cron scheduler for automated tasks, rather than the scheduler included in Newscoop.\"\n      video: \"The default width and height of both externally and locally hosted video files can be set in this section, to make sure that the videos are displayed correctly in your publications page templates.\"\n      emailfrom: \"The email address used for notifications from the system.\"\n      recaptcha:\n        publickey: \"Use this in the JavaScript code that is served to your users.\"\n        privatekey: \"Use this when communicating between your server and reCAPTCHA server. Be sure to keep it a secret.\"\n        secure: \"If you use secure url for reCAPTCHA choose Yes option.\"\n      garbage: \"If enabled, this allows the publisher to define a certain number of days after which the pending users are being deleted. By default 90 days number is set.\"\n      lifetime: \"Session lifetime in seconds. Max: 86400 (24 hours). Min: 0 (until the browser is closed).\"\n      smartyuseprotocol: \"If enabled, the Smarty function url will create URLs with a protocol. By default this option is disabled to create protocol relative URLs. It is possible to override this behaviour with the useprotocol parameter for the Smarty function and specify a boolean for the desired behaviour.\"\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.en_GB.yml",
    "content": "newscoop:\n    btn:\n        save: Save\n    preferences:\n        error:\n            cache: 'Invalid: You need PHP %cache% enabled in order to use the template caching system.'\n            replication: 'Database Replication data incomplete'\n            maxupload: 'Invalid Max Upload File Size value submitted'\n            geolocation: 'Invalid Geolocation fields. Must contain numbers. Latitude can not be > 90 and < -90. Longitude can not be > 180 and < -180.'\n            noaccess: 'You do not have the right to change system preferences.'\n            latitude: 'Latitude field value is not valid.'\n            longitude: 'Longitude field value is not valid.'\n            cacheNotCleared: 'There was error with cache clearing'\n            joberror: 'Could not change status of selected job.'\n            jobnotifyerror: 'Could not enable/disable notifications.'\n        success:\n            saved: 'System preferences updated.'\n            cacheCleared: 'Cache was cleared'\n            jobenabled: 'Successfully enabled job.'\n            jobdisabled: 'Successfully disabled job.'\n            jobnotifyswitched: 'Background job notification setting switched successfully.'\n        menu:\n            general: 'General Settings'\n            email: 'Email Settings'\n            editor: 'Editor Settings'\n            geolocation: 'Geolocation Settings'\n            fb: 'Facebook Settings'\n            media: 'Video Settings'\n            cache: 'Cache Settings'\n            other: 'Other Settings'\n            recaptcha: 'reCAPTCHA Settings'\n            cronjob: 'Background Jobs Settings'\n        btn:\n            cleardatabasecache: 'Clear current driver cache'\n            disable: Disable\n            enable: Enable\n        label:\n            title: 'System Preferences'\n            header: Preferences\n            siteonline: 'Site On-Line:'\n            sitetitle: 'Site Title:'\n            metakeywords: 'Site Meta Keywords:'\n            metadescription: 'Site Meta Description:'\n            timezone: 'Time Zone:'\n            cacheengine: 'Database Cache Engine:'\n            cacheenginehost: 'Database Cache Engine Host:'\n            cacheengineport: 'Database Cache Engine Port:'\n            cachetemplate: 'Template Cache Handler:'\n            cacheimage: 'Imagecache Lifetime:'\n            allowrecovery: 'Allow password recovery:'\n            secretkey: 'Secret Key:'\n            sessionlifetime: 'Session Lifetime:'\n            sessionlifetimemsg: 'according to php.ini settings.'\n            separator: 'Keyword separator:'\n            captcha: 'Number of failed login attempts before showing CAPTCHA :'\n            maxupload: 'Maximum upload file size:'\n            maxuploadmsg: 'Enter a value between 0 and %max% (the maximum size is specified in ''php.ini''). Please use ''K'' for kilobytes, ''M'' for megabytes and ''G'' for gigabytes, without white spaces between the value and the corresponding letter, e.g. ''3M''.'\n            stats: 'Automatic collection of statistics:'\n            smtphost: 'SMTP Host:'\n            smtpport: 'SMTP Port:'\n            email: 'SMTP Email From address:'\n            emailfrom: 'Email address for notifications from the system:'\n            imageratio: 'Image Resizing Ratio:'\n            imagewidth: 'Image Resizing Width:'\n            imageheight: 'Image Resizing Height:'\n            zoom: 'Zoom enabled for images in article content?'\n            mediaRichTextCaptions: 'Enable rich text for image captions?'\n            mediaCaptionLength: 'Character limit for image captions: '\n            mediaCaptionLength_after: character(s)\n            external: 'Reader subscriptions managed externally?'\n            usereplication: 'Setting up a Newscoop Replication Server?'\n            serverdb: 'Newscoop Online Server Database'\n            replicationhost: 'Database Replication Host:'\n            replicationuser: 'Database Replication User:'\n            replicationpw: 'Database Replication Password:'\n            replicationport: 'Database Replication Port:'\n            filter: 'Templates filter mask (separated by comma)'\n            cron: 'Run scheduled tasks externally?'\n            mysqlpath: 'MySQL client command path'\n            mysqlpathmsg: 'to load geo-names data'\n            latitude: 'Map Center Latitude:'\n            longitude: 'Map Center Longitude:'\n            zoomlevel: 'Map Zoom Level:'\n            defaultwidth: 'Map Default Width:'\n            defaultheight: 'Map Default Height:'\n            css: 'Include CSS file for map view'\n            autofocus: 'Map auto-focusing as the default behavior:'\n            zoomautofocus: 'Maximal zoom for auto-focusing:'\n            borderautofocus: 'Map border for auto-focusing:'\n            mapprovider: 'Allow Google Streets Map Provider:'\n            mapquest: 'Allow MapQuest Map Provider:'\n            openstreet: 'Allow OpenStreet Map Provider:'\n            defaultmapprovider: 'Default Map Provider:'\n            nominatimsearch: 'Use MapQuest Nominatim Search:'\n            preflanguage: 'Preferred address language:'\n            markerdir: 'Map Marker Directory:'\n            defaultmarker: 'Map Marker Default:'\n            popupwidth: 'Map Popup Minimal Width:'\n            popupheight: 'Map Popup Minimal Height:'\n            youtubewidth: 'YouTube Default Width:'\n            youtubeheight: 'YouTube Default Height:'\n            vimeowidth: 'Vimeo Default Width:'\n            vimeoheight: 'Vimeo Default Height:'\n            flashwidth: 'Flash Default Width:'\n            flashheight: 'Flash Default Height:'\n            flashserver: 'Local Flash Server:'\n            flashdir: 'Local Flash Directory:'\n            apikey: 'API Key:'\n            appid: 'App ID:'\n            fbsecret: 'App Secret:'\n            recaptchapublickey: 'Public key'\n            recaptchaprivatekey: 'Private key'\n            recaptchasecure: 'Secure URL for reCAPTCHA?'\n            disabled: disabled\n            yesoption: Yes\n            nooption: No\n            geosearch: 'Use Local GeoNames Search:'\n            usergarbage: 'Remove obsolete pending users data?'\n            usergarbagedaysinfo: 'Define a certain number of days after which the pending users will be deleted.'\n            usergarbagedays: 'Days number'\n            smartyUseProtocol: 'Use protocol for absolute URLs generated by Smarty?'\n            cronjob: 'Cron job name'\n            enabled: Status\n            options: Options\n            info: 'Info:'\n            infodesc: 'These settings will help you manage background jobs by enabling/disabling the selected job(s).'\n            prevRun: 'Previous run date'\n            nextRun: 'Next run date'\n            norecords: 'No records found.'\n            cronJobEmail: 'E-mail addresses for notifications'\n            cronJobSenderEmail: 'E-mail address of sender'\n            cronJobSenderName: 'Name of sender (e.g: Newscoop Scheduler)'\n            cronJobNotify: 'Notify?'\n            cronslist: 'Background jobs list'\n            cronsadvanced: 'Advanced Settings'\n            moredetails: 'More details.'\n        popover:\n            cronJobEmail: 'E-mail addresses, separated by commas, that will receive error notifications.'\n            cronJobSenderEmail: 'E-mail address from which notifications will be sent.'\n            cacheengine: 'Enables or disables system cache cache, which can improve Newscoop performance.'\n            cacheenginehost: 'Provide cache host (for Memcache, Memcached or Redis)'\n            cacheengineport: 'Provide cache host port (for Memcache, Memcached or Redis)'\n            cacheimage: 'The time that images will be cached for, from 30 seconds to infinite.'\n            cachetemplate: 'Select DB to enable the cache for templates.'\n            recovery: 'Whether users can get a password reminder by email. Note that if this feature is enabled and your email account is compromised, your Newscoop publication can easily be compromised in turn.'\n            secret: 'The security key that Newscoop can use for integration of web services and other advanced features.'\n            separator: 'Specify the separator for Keywords in the Edit Article page (comma or hyphen).'\n            stats: 'This option enables the collection of statistics on reader access to publications on the server. You may wish to click No if you use a third-party statistical service, as disabling the collection of statistics may reduce the load on your Newscoop server.'\n            zoom: 'If set to Yes, readers can enlarge article images in your publications pages by clicking on them. This zooming feature works for any images inserted inline with the article text.'\n            richtext_status: 'Enables a HTML editor for captions. Disabling rich text will escape, but not remove, any HTML present in the caption source. If disabled, the character limit will be fixed to 255, and any longer captions will be truncated the next time they are edited.'\n            richtext_length: 'The limit includes any HTML and defaults to 255 characters. Set 0 here to have unlimited caption lengths, if your theme supports them.'\n            ratio: 'The resizing ratio takes precedence over any Resizing Width or Resizing Height value which is set here. If Ratio is not set but both Width and Height are set, then Newscoop will use the value which results in a smaller image size. The default settings here can be overridden by the ratio, width or height settings for a specific inline image set on the Article Edit page.'\n            replication: 'Enables you to set up Newscoop to operate on two servers at once, which is a safety feature in case of hardware or network problems.'\n            filter: 'Enter keywords for templates that you wish to hide from the template editor accessible via the Theme Management page. For example, templates that are no longer in use, but you do not wish to delete from the server.'\n            cron: 'Use the server''s own cron scheduler for automated tasks, rather than the scheduler included in Newscoop.'\n            video: 'The default width and height of both externally and locally hosted video files can be set in this section, to make sure that the videos are displayed correctly in your publication''s page templates.'\n            emailfrom: 'The email address used for notifications from the system.'\n            recaptcha:\n                publickey: 'Use this in the JavaScript code that is served to your users.'\n                privatekey: 'Use this when communicating between your server and a reCAPTCHA server. Be sure to keep it a secret.'\n                secure: 'If you use secure URL for reCAPTCHA choose the Yes option.'\n            garbage: 'If enabled, this allows the publisher to define a certain number of days after which the pending users are deleted. By default, 90 days is set.'\n            lifetime: 'Session lifetime in seconds. Max: 86400 (24 hours). Min: 0 (until the browser is closed).'\n            smartyuseprotocol: 'If enabled, the Smarty function url will create URLs with a protocol. By default this option is disabled to create protocol relative URLs. It is possible to override this behaviour with the useprotocol parameter for the Smarty function and specify a boolean for the desired behaviour.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.es.yml",
    "content": "newscoop:\n    btn:\n        save: Guardar\n    preferences:\n        error:\n            cache: 'Inválido:  Necesita activar el PHP %cache% a fin de poder usar el sistema de cache de las plantillas'\n            replication: 'Datos de la Replicación de Bases de Datos incompletos'\n            maxupload: 'Ingresó un valor inválido para el Tamaño Máximo de Archivo'\n            geolocation: 'Error en los campos de Geolocalización. Deben contener números. La latitud no puede ser mayor que 90 ni menor que -90,  y la longitud debe estar entre 180 y -180.'\n            noaccess: 'No tiene privilegios para modificar las preferencias del sistema.'\n            latitude: 'El valor para el campo de la latitud no es válido.'\n            longitude: 'El valor en el campo de Longitud no es válido.'\n            cacheNotCleared: 'Hubo un error borrando el cache'\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: 'Se actualizaron las preferencias del sistema.'\n            cacheCleared: 'El cache ha sido borrado'\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: 'Ajustes Generales'\n            email: 'Ajustes del Correo'\n            editor: 'Ajustes del Editor'\n            geolocation: 'Configuración de la geolocalización'\n            fb: 'Configuración de Facebook'\n            media: 'Ajustes de video'\n            cache: 'Ajustes del cache'\n            other: 'Otros ajustes'\n            recaptcha: 'Ajustes de reCAPTCHA'\n            cronjob: null\n        btn:\n            cleardatabasecache: 'Borra el cache actual de controladores'\n            disable: null\n            enable: null\n        label:\n            title: 'Preferencias de sistema'\n            header: Preferencias\n            siteonline: 'Sitio en línea:'\n            sitetitle: 'Título del sitio:'\n            metakeywords: null\n            metadescription: null\n            timezone: 'Zona horaria:'\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: Si\n            nooption: No\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: 'La tasa de cambio de tamaño toma precedencia sobre cualquier valor de \"Anchura para cambio de tamaño\" o \"Altura para cambio de tamaño\" que sea fijada aquí. Si no se elije una tasa pero sí se eligen tanto la anchura como la altura, entonces Newscoop utilizará el valor que dé como resultado el tamaño de imagen más pequeño. Los ajustes por defecto definidos aquí pueden siempre ser anulados por la tasa, anchura o altura definidas en una imagen específica, en una página de edición de artículo.'\n            replication: 'Le permite configurar Newscoop para operar en dos servidores a la vez, lo cual es una característica de seguridad en caso de problemas de hardware o de red.'\n            filter: 'Ingrese las palabras clave para las plantillas que usted desee ocultar en el editor de plantillas, accesible desde la página de Administración de Plantillas. Por ejemplo, plantillas que ya no están en uso, pero que usted no desea borrar del servidor.'\n            cron: null\n            video: 'La anchura y altura por defecto de los archivos de video, tanto locales como externos, pueden ser ajustadas en esta sección; para asegurar que los videos sean desplegados correctamente en las plantillas de sus publicaciones.'\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: 'Si se activa, esto permite al publicador definir un cierto número de días después de los cuales los usuarios pendientes serán borrados. Por defecto se estipulan 90 días.'\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.es_AR.yml",
    "content": "newscoop:\n    btn:\n        save: null\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: null\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: null\n            nooption: null\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.fa.yml",
    "content": "newscoop:\n    btn:\n        save: null\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: null\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: null\n            nooption: null\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.fa_AF.yml",
    "content": "newscoop:\n    btn:\n        save: null\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: null\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: null\n            nooption: null\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.fr.yml",
    "content": "newscoop:\n    btn:\n        save: Sauvegarder\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: null\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: Oui\n            nooption: Non\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.he.yml",
    "content": "newscoop:\n    btn:\n        save: שמור\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: 'העדפות מערכת'\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: כן\n            nooption: לא\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.hr.yml",
    "content": "newscoop:\n    btn:\n        save: Spremi\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: null\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: Da\n            nooption: Ne\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.hu.yml",
    "content": "newscoop:\n    btn:\n        save: Mentés\n    preferences:\n        error:\n            cache: 'Érvénytelen: Engedélyezned kell a PHP %cache%-t a sablon gyorsítótárazási rendszerének használatához.'\n            replication: 'Hiányosak az adatbázis-replikációs adatok'\n            maxupload: 'Érvénytelen a feltölthető fájlok maximális méretének elküldött értéke'\n            geolocation: 'Érvénytelen földrajzi hely mezők. Számokat kell tartalmaznia. A szélesség nem lehet > 90 és < -90. A hosszúság nem lehet > 180 és < -180.'\n            noaccess: 'Nincs jogod a rendszerbeállítások módosításához.'\n            latitude: 'A földrajzi szélesség mező értéke nem érvényes.'\n            longitude: 'A földrajzi hosszúság mező értéke nem érvényes.'\n            cacheNotCleared: 'Hiba volt a gyorsítótár törlésével'\n            joberror: 'Nem lehet módosítani a kijelölt feladat állapotát.'\n            jobnotifyerror: 'Nem lehet engedélyezni/letiltani az értesítéseket.'\n        success:\n            saved: 'A rendszerbeállítások frissítése megtörtént.'\n            cacheCleared: 'A gyorsítótár kiürítése megtörtént.'\n            jobenabled: 'A feladat engedélyezése sikerült.'\n            jobdisabled: 'A feladat letiltása sikerült.'\n            jobnotifyswitched: 'A háttérfeladat értesítés beállítás bekapcsolása sikerült.'\n        menu:\n            general: 'Általános beállítások'\n            email: 'E-mail beállítások'\n            editor: 'Szerkesztő beállításai'\n            geolocation: 'Földrajzi hely beállításai'\n            fb: 'Facebook beállításai'\n            media: Videobeállítások\n            cache: 'Gyorsítótárazási beállítások'\n            other: 'Egyéb beállítások'\n            recaptcha: 'reCAPTCHA beállításai'\n            cronjob: 'Háttérfeladatok beállításai'\n        btn:\n            cleardatabasecache: 'A jelenlegi illesztőprogram gyorsítótár kiürítése'\n            disable: Letiltás\n            enable: Engedélyezés\n        label:\n            title: Rendszerbeállítások\n            header: Beállítások\n            siteonline: 'A webhely online:'\n            sitetitle: 'A webhely címe:'\n            metakeywords: 'A webhely meta kulcsszavai:'\n            metadescription: 'A webhely meta leírása:'\n            timezone: 'Időzóna:'\n            cacheengine: 'Adatbázis-gyorsítótár motor:'\n            cacheenginehost: 'Adatbázis-gyorsítótár motor állomása:'\n            cacheengineport: 'Adatbázis-gyorsítótár motor portja:'\n            cachetemplate: 'Sablongyorsítótár kezelő:'\n            cacheimage: 'Képgyorsítótári élettartama:'\n            allowrecovery: 'A jelszó-helyreállítás engedélyezése:'\n            secretkey: 'Titkos kulcs:'\n            sessionlifetime: 'Munkamenet-élettartam:'\n            sessionlifetimemsg: 'a php.ini beállításainak megfelelően.'\n            separator: 'Kulcsszó elválasztó:'\n            captcha: 'A sikertelen belépési kísérletek száma a CAPTCHA megjelenítése előtt:'\n            maxupload: 'A feltölthető fájlok maximális mérete:'\n            maxuploadmsg: '0 és %max% közti értéket adj meg (a maximális méret a ''php.ini'' fájlban van megadva). Kilobájtokhoz használd a ''K'', megabájtokhoz az ''M'' és gigabájtokhoz a ''G'' jelet, az érték és a megfelelő betű között szóköz nélkül, pl. ''3M''.'\n            stats: 'Automatikus statisztikai adatgyűjtés:'\n            smtphost: 'SMTP-állomás:'\n            smtpport: 'SMTP-port:'\n            email: 'SMTP e-mail feladó címe:'\n            emailfrom: 'A rendszerből küldött értesítések e-mail címe:'\n            imageratio: 'Képek átméretezési aránya:'\n            imagewidth: 'Képátméretezés szélessége:'\n            imageheight: 'Képátméretezés magassága:'\n            zoom: 'A cikktartalomban lévő képek nagyításának engedélyezése?'\n            mediaRichTextCaptions: 'A képaláírások rich text szerkesztésének engedélyezése?'\n            mediaCaptionLength: 'A képaláírások karakterszámának korlátozása:'\n            mediaCaptionLength_after: karakter\n            external: 'Az olvasói előfizetések kezelése kívülről?'\n            usereplication: 'Newscoop replikációs kiszolgáló beállítása?'\n            serverdb: 'Newscoop online kiszolgáló adatbázis'\n            replicationhost: 'Adatbázis-replikációs állomás:'\n            replicationuser: 'Adatbázis-replikációs felhasználó:'\n            replicationpw: 'Adatbázis-replikációs jelszó:'\n            replicationport: 'Adatbázis-replikációs port:'\n            filter: 'Sablonszűrő maszk (vesszővel elválasztva)'\n            cron: 'Beütemezett feladatok külső futtatása?'\n            mysqlpath: 'A MySQL-ügyfél parancselérési útja'\n            mysqlpathmsg: 'a földrajzi nevek adatainak betöltéséhez'\n            latitude: 'Térkép középpontjának szélességi foka:'\n            longitude: 'Térkép középpontjának hosszúsági foka:'\n            zoomlevel: 'Térkép nagyítási szintje:'\n            defaultwidth: 'Térkép alapértelmezett szélessége:'\n            defaultheight: 'Térkép alapértelmezett magassága:'\n            css: 'A CSS-fájl belefoglalása a térkép megtekintéséhez'\n            autofocus: 'A térkép automatikus fókuszálása az alapértelmezett viselkedésként:'\n            zoomautofocus: 'Az automatikus fókuszálás maximális nagyítása:'\n            borderautofocus: 'Térképszegély az automatikus fókuszáláshoz:'\n            mapprovider: 'A Google Utcakép térképszolgáltató engedélyezése:'\n            mapquest: 'A MapQuest térképszolgáltató engedélyezése:'\n            openstreet: 'Az OpenStreet térképszolgáltató engedélyezése:'\n            defaultmapprovider: 'Alapértelmezett térképszolgáltató:'\n            nominatimsearch: 'MapQuest Nominatim keresés használata:'\n            preflanguage: 'Cím előnyben részesített nyelve:'\n            markerdir: 'Térképjelölő könyvtár:'\n            defaultmarker: 'Térképjelölő alapértelmezése:'\n            popupwidth: 'Előugró térkép minimális szélessége:'\n            popupheight: 'Előugró térkép minimális magassága:'\n            youtubewidth: 'YouTube alapértelmezett szélessége:'\n            youtubeheight: 'YouTube alapértelmezett magassága:'\n            vimeowidth: 'Vimeo alapértelmezett szélessége:'\n            vimeoheight: 'Vimeo alapértelmezett magassága:'\n            flashwidth: 'Flash alapértelmezett szélessége:'\n            flashheight: 'Flash alapértelmezett magassága:'\n            flashserver: 'Helyi Flash-kiszolgáló:'\n            flashdir: 'Helyi Flash-könyvtár:'\n            apikey: 'API-kulcs:'\n            appid: 'Alkalmazásazonosító:'\n            fbsecret: 'Alkalmazáskulcs:'\n            recaptchapublickey: 'Nyilvános kulcs'\n            recaptchaprivatekey: 'Titkos kulcs'\n            recaptchasecure: 'Biztonságos URL-cím a reCAPTCHA szolgáltatáshoz?'\n            disabled: letiltva\n            yesoption: Igen\n            nooption: Nem\n            geosearch: 'Helyi földrajzi név kereső használata:'\n            usergarbage: 'Az elavult, függőben lévő felhasználói adatok eltávolítása?'\n            usergarbagedaysinfo: 'Add meg a napok számát, melynek letelte után a függőben lévő felhasználók törlésre fognak kerülni.'\n            usergarbagedays: 'Napok száma'\n            smartyUseProtocol: 'Protokoll használata a Smarty által generált abszolút URL-címekhez?'\n            cronjob: 'Cron feladat neve'\n            enabled: Állapot\n            options: Beállítások\n            info: null\n            infodesc: 'Ezek a beállítások a kijelölt feladat(ok) engedélyezésével/letiltásával a háttérfeladatok kezelésében segítenek.'\n            prevRun: 'Előző futás dátuma'\n            nextRun: 'Következő futás dátuma'\n            norecords: 'Nem találhatók rekordok.'\n            cronJobEmail: 'Értesítési e-mail címek'\n            cronJobSenderEmail: 'A feladó e-mail címe'\n            cronJobSenderName: 'A feladó neve (pl.: Newscoop feladatütemező)'\n            cronJobNotify: 'Értesítés?'\n            cronslist: 'Háttérfeladatok listája'\n            cronsadvanced: 'Speciális beállítások'\n            moredetails: 'További részletek.'\n        popover:\n            cronJobEmail: 'Vesszővel elválasztott e-mail címek, melyekre hibaértesítések fognak érkezni.'\n            cronJobSenderEmail: 'Az e-mail cím, melyről az értesítések küldésre fognak kerülni.'\n            cacheengine: 'Engedélyezi vagy letiltja a rendszergyorsítótárat, mellyel növelhető a Newscoop teljesítménye.'\n            cacheenginehost: 'Add meg a gyorsítótár-állomást (a Memcache, a Memcached vagy a Redis számára)'\n            cacheengineport: 'Add meg a gyorsítótár-állomás portját (a Memcache, a Memcached vagy a Redis számára)'\n            cacheimage: 'A képek gyorsítótárazásának időtartama, 30 másodperctől a végtelenig.'\n            cachetemplate: 'Válassz adatbázist a sablonok gyorsítótárazásának engedélyezéséhez.'\n            recovery: 'Kaphatnak-e a felhasználók e-mailben jelszó-emlékeztetőt. Ha ez a funkció engedélyezett, és illetéktelenül hozzáfértek az e-mail fiókodhoz, akkor a Newscoop kiadványod is könnyen sérült lehet.'\n            secret: 'A Newscoop által használható biztonsági kulcs a webszolgáltatások és más speciális funkciók integrálásához.'\n            separator: 'Add meg a Kulcsszavak elválasztóját (vessző vagy kötőjel) a Cikkszerkesztés oldalon.'\n            stats: 'Ez a beállítás teszi lehetővé statisztika gyűjtését a kiszolgálón a kiadványok olvasói eléréséről. Ha külső statisztikai szolgáltatást használ, kattinthat a Nem gombra, ugyanis a statisztikagyűjtés letiltása csökkentheti a Newscoop-kiszolgáló leterheltségét.'\n            zoom: 'Igenre állításakor az olvasók rákattintással felnagyíthatják a cikkek képeit a kiadványok oldalain. Ez a nagyítás funkció a cikk szövegébe beszúrt bármilyen képhez használható.'\n            richtext_status: null\n            richtext_length: null\n            ratio: 'Az átméretezési arány elsőbbséget élvez bármely, itt megadott átméretezendő szélesség vagy átméretezendő magasság értékéhez képest. Ha az arány nincs megadva, csak a szélesség és a magasság, akkor a Newscoop azt az értéket fogja használni, mely kisebb képméretet eredményez. Az itt megadott alapértelmezett beállításokat az arány felülbírálhatja, egy konkrét sorközi kép szélessége vagy magassága a Cikkszerkesztés lapon van beállítva.'\n            replication: 'A Newscoop egyszerre két kiszolgálón való működésének beállítását teszi lehetővé, ami hardver- vagy hálózati problémák esetén biztonsági funkció.'\n            filter: 'Írd be azoknak a sablonoknak a kulcsszavait, melyeket el akarsz rejteni a Témakezelés lapról elérhető sablonszerkesztőből. Olyan sablonokét például, melyek már nincsenek használatban, viszont nem kívánod őket törölni a kiszolgálóról.'\n            cron: 'A kiszolgáló saját cron feladatütemezőjének használatát jelenti az automatizált feladatokhoz a Newscoop saját feladatütemezője helyett.'\n            video: 'Ebben a részben a távol és helyben egyaránt tárolt videofájlok alapértelmezett szélessége és magassága adható meg, a videóknak a kiadványlapok sablonjaiban megfelelő megjelenésének biztosítása végett.'\n            emailfrom: 'A rendszerből küldött értesítésekhez használt e-mail cím.'\n            recaptcha:\n                publickey: 'Ezt a felhasználóknak kiszolgált JavaScript-kódban használd.'\n                privatekey: 'Ezt a saját kiszolgáló és a reCAPTCHA kiszolgáló közti kommunikációhoz használd. Ügyelj a titoktartásra.'\n                secure: 'Ha biztonságos URL-címet használsz a reCAPTCHA szolgáltatáshoz, akkor válaszd az Igen lehetőséget.'\n            garbage: 'Ha engedélyezett, akkor ez lehetővé teszi a kiadó számára a napok számának meghatározását, melynek letelte után a függőben lévő felhasználók törlésre kerülnek. Alapértelmezésként 90 nap van beállítva.'\n            lifetime: 'A munkamenet-élettartam másodpercben. Max: 86400 (24 óra). Min: 0 (a böngésző bezárásáig).'\n            smartyuseprotocol: 'Ha engedélyezett, akkor a Smarty url függvénye protokollal fog URL-címeket létrehozni. Alapértelmezésként ez a beállítás a protokoll-relatív URL-címek létrehozásához letiltott. Ez a viselkedés a useprotocol paraméterrel felülbírálható a Smarty-függvény számára, és megadható egy logikai változó a kívánt viselkedés érdekében.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.hy.yml",
    "content": "newscoop:\n    btn:\n        save: Պահպանել\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: 'Could not change status of selected job.'\n            jobnotifyerror: 'Could not enable/disable notifications.'\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: 'Successfully enabled job.'\n            jobdisabled: 'Successfully disabled job.'\n            jobnotifyswitched: 'Background job notification setting switched successfully.'\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: 'Background Jobs Settings'\n        btn:\n            cleardatabasecache: null\n            disable: Disable\n            enable: Enable\n        label:\n            title: null\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: 'Enable rich text for image captions?'\n            mediaCaptionLength: 'Character limit for image captions: '\n            mediaCaptionLength_after: character(s)\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: null\n            nooption: null\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: 'Cron job name'\n            enabled: Status\n            options: Options\n            info: 'Info:'\n            infodesc: 'These settings will help you manage background jobs by enabling/disabling the selected job(s).'\n            prevRun: 'Previous run date'\n            nextRun: 'Next run date'\n            norecords: 'No records found.'\n            cronJobEmail: 'E-mail addresses for notifications'\n            cronJobSenderEmail: 'E-mail address of sender'\n            cronJobSenderName: 'Name of sender (e.g.: Newscoop Scheduler)'\n            cronJobNotify: 'Notify?'\n            cronslist: 'Background jobs list'\n            cronsadvanced: 'Advanced Settings'\n            moredetails: 'More details.'\n        popover:\n            cronJobEmail: 'E-mail addresses separated by comma that will receive error notifications.'\n            cronJobSenderEmail: 'E-mail address from which notifications will be sent.'\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: 'Enables a HTML editor for captions. Disabling rich text will escape, but not remove, any HTML present in the caption source. If disabled, the character limit will be fixed to 255, and any longer captions will be truncated the next time they are edited.'\n            richtext_length: 'The limit includes any HTML and defaults to 255 characters. Set 0 here to have unlimited caption lengths, if your theme supports them.'\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.hy_AM.yml",
    "content": "newscoop:\n    btn:\n        save: Պահպանել\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: null\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: Այո\n            nooption: Ոչ\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.id.yml",
    "content": "newscoop:\n    btn:\n        save: null\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: null\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: null\n            nooption: null\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.it.yml",
    "content": "newscoop:\n    btn:\n        save: Salva\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: 'Preferenze di sistema'\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: Si\n            nooption: No\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.ka.yml",
    "content": "newscoop:\n    btn:\n        save: შენახვა\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: 'სისტემური პარამეტრები'\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: დიახ\n            nooption: არა\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.ko.yml",
    "content": "newscoop:\n    btn:\n        save: 저장\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: null\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: 예\n            nooption: 아니오\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.ku.yml",
    "content": "newscoop:\n    btn:\n        save: null\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: null\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: null\n            nooption: null\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.lv.yml",
    "content": "newscoop:\n    btn:\n        save: null\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: null\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: null\n            nooption: null\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.mr.yml",
    "content": "newscoop:\n    btn:\n        save: null\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: null\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: null\n            nooption: null\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.nb_NO.yml",
    "content": "newscoop:\n    btn:\n        save: null\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: null\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: null\n            nooption: null\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.nl.yml",
    "content": "newscoop:\n    btn:\n        save: Opslaan\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: 'Systeem Voorkeuren'\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: Ja\n            nooption: nee\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.pa.yml",
    "content": "newscoop:\n    btn:\n        save: null\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: null\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: null\n            nooption: null\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.pl.yml",
    "content": "newscoop:\n    btn:\n        save: Zapisz\n    preferences:\n        error:\n            cache: 'Błąd: Potrzebujesz PHP %cache% aby korzystać z cacheowania szablonów.'\n            replication: 'Replikacja bazy danych - dane niekompletne'\n            maxupload: 'Niepoprawna wartość Maksymalnego Rozmiaru Plików'\n            geolocation: 'Niepoprawne wartości pól geolokalizacji. Pola muszą zawierać liczby. Szerokość geograficzna nie może być > 90 i <= 90. Długość geograficzna nie może być > 180 i <= 180.'\n            noaccess: 'Nie masz praw aby zmieniać preferencje systemowe.'\n            latitude: 'Pole szerokości geograficznej jest niepoprawne.'\n            longitude: 'Pole długości geograficznej jest niepoprawne.'\n            cacheNotCleared: 'Podczas czyszczenia pamięci podręcznej wystąpił błąd'\n            joberror: 'Nie można zmienić statusu dla wybranego zadania'\n            jobnotifyerror: 'Nie można włączyć/wyłączyć powiadomień.'\n        success:\n            saved: 'Preferencje systemowe zaktualizowane.'\n            cacheCleared: 'Pamięć podręczna została wyczyszczona'\n            jobenabled: 'Zadanie zostało włączone pomyślnie.'\n            jobdisabled: 'Zadanie zostało wyłączone pomyślnie.'\n            jobnotifyswitched: 'Ustawienia powiadomień dla zadania zostały zmienione.'\n        menu:\n            general: 'Ustawienia główne'\n            email: 'Ustawienia e-mail'\n            editor: 'Ustawienia edytora'\n            geolocation: 'Ustawienia geolokalizacji'\n            fb: 'Ustawienia Facebook'\n            media: 'Ustawienia wideo'\n            cache: 'Ustawienia cache'\n            other: 'Inne ustawienia'\n            recaptcha: 'Ustawienia reCAPTCHA'\n            cronjob: 'Ustawienia zadań w tle'\n        btn:\n            cleardatabasecache: 'Wyczyść aktualnie używaną pamięć podręczną'\n            disable: Wyłącz\n            enable: Włącz\n        label:\n            title: 'Preferencje systemowe'\n            header: Ustawienia\n            siteonline: 'Strona On-Line:'\n            sitetitle: 'Tytuł strony:'\n            metakeywords: 'Słowa kluczowe Meta strony:'\n            metadescription: 'Opis Meta Strony:'\n            timezone: 'Strefa czasowa:'\n            cacheengine: 'Silnik cache bazy danych:'\n            cacheenginehost: 'Adres silnika pamięci podręcznej '\n            cacheengineport: 'Port  adresu silnika pamięci podręcznej'\n            cachetemplate: 'Template Cache Handler:'\n            cacheimage: 'Ważność cache zdjęć:'\n            allowrecovery: 'Zezwól na odzyskiwanie hasła:'\n            secretkey: 'Sekretny klucz:'\n            sessionlifetime: 'Ważność sesji:'\n            sessionlifetimemsg: 'nawiązująć do ustawień php.ini.'\n            separator: 'Separator słów kluczowych:'\n            captcha: 'Liczba nieudanych logowań przed pokazaniem CAPTCHA :'\n            maxupload: 'Maksymalny rozmiar plików:'\n            maxuploadmsg: 'Podaj wartość pomiędzy 0 a $1 (maksymalny rozmiar znajduje się w pliku php.ini). Użyj K dla kilobajtów, M dla megabajtów i G dla gigabajtów, bez spacji pomiędzy wartością a literą, np. ''3M'''\n            stats: 'Zbieraj statystyki automatycznie:'\n            smtphost: 'SMTP Host:'\n            smtpport: 'SMTP Port:'\n            email: 'SMTP Email, adres ''Od'':'\n            emailfrom: 'Adres Email dla powiadomień systemowych:'\n            imageratio: 'Ratio pomniejszanych zdjęć:'\n            imagewidth: 'Długość pomniejszanych zdjęć:'\n            imageheight: 'Wysokość pomniejszanych zdjęć:'\n            zoom: 'Włączyć zoom dla zdjęć w obrębie artykułu??'\n            mediaRichTextCaptions: 'Włączyć rozbudowany tekst dla podpisów zdjęcia?'\n            mediaCaptionLength: 'Limit znaków dla podpisu zdjęcia:'\n            mediaCaptionLength_after: znak(ów)\n            external: 'Subskrypcje czytelników zarządzane zewnętrznie?'\n            usereplication: 'Ustawić Serwer Replikacji Newscoop?'\n            serverdb: 'Baza danych serwera Newscoop'\n            replicationhost: 'Host do replikacji bazy danych:'\n            replicationuser: 'Użytkownik do replikacji bazy danych:'\n            replicationpw: 'Hasło do replikacji bazy danych:'\n            replicationport: 'Port do replikacji bazy danych:'\n            filter: 'Maska filtra szablonów (oddzielone przecinkami)'\n            cron: 'Uruchamiaj zaprogramowane zadania zewnętrznie?'\n            mysqlpath: 'Ścieżka do klienta MySQL'\n            mysqlpathmsg: 'by załadować dane geo-nazw'\n            latitude: 'Środek szerokości geograficznej mapy:'\n            longitude: 'Środek długości geograficznej mapy:'\n            zoomlevel: 'Poziom zoomu mapy:'\n            defaultwidth: 'Domyślna szerokość mapy:'\n            defaultheight: 'Domyślna wysokość mapy:'\n            css: 'Dołącz plik CSS do widoku mapy'\n            autofocus: 'Domyślne zachowanie auto-zbliżenia:'\n            zoomautofocus: 'Największe powiększenie dla auto-zbliżenia:'\n            borderautofocus: 'Granice mapy dla auto-zbliżenia:'\n            mapprovider: 'Zezwól na dostawcę Google Streets Map:'\n            mapquest: 'Zezwól na dostawcę map MapQuest:'\n            openstreet: 'Zezwół na dostawcę OpenStreet Map:'\n            defaultmapprovider: 'Domyślny dostawca map:'\n            nominatimsearch: 'Użyj szukania MapQuest Nominatim:'\n            preflanguage: 'Preferred address language:'\n            markerdir: 'Katalor markerów mapy:'\n            defaultmarker: 'Domyślny marker mapy:'\n            popupwidth: 'Minimalna szerokość popupu z mapą:'\n            popupheight: 'Minimalna wysokość popupu z mapą:'\n            youtubewidth: 'Domyślna szerokość Youtube:'\n            youtubeheight: 'Domyślna wysokość Youtube:'\n            vimeowidth: 'Domyślna szerokość Vimeo:'\n            vimeoheight: 'Domyślna wysokość Vimeo:'\n            flashwidth: 'Domyślna szerokość Flash:'\n            flashheight: 'Domyślna wysokość Flash:'\n            flashserver: 'Lokalny Serwer Flash:'\n            flashdir: 'Lokalna ścieżka Flash:'\n            apikey: 'Klucz API:'\n            appid: 'ID aplikacji:'\n            fbsecret: 'Kod sekretny aplikacji:'\n            recaptchapublickey: 'Klucz publiczny'\n            recaptchaprivatekey: 'Klucz prywatny'\n            recaptchasecure: 'Zabezpieczone url-e dla reCAPTCHA?'\n            disabled: nieaktywne\n            yesoption: Tak\n            nooption: Nie\n            geosearch: 'Użyj wyszukiwania lokalnego GeoNames:'\n            usergarbage: 'Usuwać nieaktualne dane oczekujących na potwierdzenie użytkowników?'\n            usergarbagedaysinfo: 'Zdefiniuj liczbę dni, po których oczekujący użytkownicy zostaną automatycznie usunięci. '\n            usergarbagedays: 'Liczba dni'\n            smartyUseProtocol: 'Używać protokołu dla linków absolutnych generowanych przez Smarty?'\n            cronjob: 'Nazwa zadania'\n            enabled: Status\n            options: Opcje\n            info: 'Informacje:'\n            infodesc: 'Dzięki tym ustawieniom możesz wyłączać i włączać wybrane zadania w tle.'\n            prevRun: 'Data ostatniego uruchomienia (według harmonogramu).'\n            nextRun: 'Data następnego uruchomienia (według harmonogramu).'\n            norecords: 'Nie znaleziono żadnych rekordów.'\n            cronJobEmail: 'Adres email do powiadomień'\n            cronJobSenderEmail: 'Adres email używany do wysyłania powiadomień.'\n            cronJobSenderName: 'Nazwa nadawcy powiadomień (np. Harmonogram zadań Newscoopa)'\n            cronJobNotify: 'Powiadamiać?'\n            cronslist: 'Lista zadań w tle'\n            cronsadvanced: 'Ustawienia zaawansowane'\n            moredetails: 'Więcej informacji.'\n        popover:\n            cronJobEmail: 'Podane adresy email (rozdzielone przecinkami) będą otrzymywać powiadomienia. '\n            cronJobSenderEmail: 'Adresy email z których będą wysyłane powiadomienia.'\n            cacheengine: 'Włącza lub wyłącza cache APC, który może poprawić wydajność Newscoop.'\n            cacheenginehost: 'Podaj adres dla silnika pamięci podręcznej (wymagane dla Memcache, Memcached lub Redis)'\n            cacheengineport: 'Podaj port adresu dla silnika pamięci podręcznej (wymagane dla Memcache, Memcached lub Redis)'\n            cacheimage: 'Czas w jakim obrazki będą cache-owane, od 30 sekund do nieskończoności.'\n            cachetemplate: 'Wybierz DB aby włączyć cache dla szablonów.'\n            recovery: 'Użytkownicy mogą poprosić o przypomnienie hasła przez e-mail. Zauważ, że jeśli ta funkcja jest włączona, a konto e-mail jest zagrożone, publikacja Newscoop może być łatwo naruszona.'\n            secret: 'Klucz bezpieczeństwa, który Newscoop może wykorzystać do integracji usług internetowych i innych zaawansowanych funkcji.'\n            separator: 'Określa separator słów kluczowych na stronie Edycji artykułu (przecinek lub myślnik).'\n            stats: 'Ta opcja pozwala na gromadzenie statystyk dostępu czytelników do publikacji na serwerze. Jeśli używasz innej usługi do statystyk, wybierz ''Nie''. Wyłaczenie zbierania statystyk może zmniejszyć obciążenie serwera Newscoop.'\n            zoom: 'Jeśli jest ustawiona na Tak, czytelnicy mogą powiększać obrazy artykułów w publikacjach stron, klikając na nie. Ta funkcja powiększania działa na wszelkie obrazy wstawiane do tekstu artykułu.'\n            richtext_status: null\n            richtext_length: null\n            ratio: 'Wskaźnik zmiany rozmiaru ma pierwszeństwo przed każdą zmianą szerokości lub wartości zmiany wysokości, który jest ustawiony tutaj. Jeśli współczynnik nie jest ustawiony, ale wysokość i szerokość są ustawione to Newscoop użyje tych ostatnich wartości, co skutkuje mniejszym rozmiarem. Domyślne ustawienia mogą być przesłonięte przez stosunek szerokości lub wysokości ustawienia dla konkretnego obrazu ustawionej na inline stronie Edycji artykułu.'\n            replication: 'Pozwala ustawić Newscoop aby działał na dwóch serwerach jednocześnie, co jest cechą bezpieczeństwa w przypadku sprzętu lub problemu z siecią.'\n            filter: 'Wprowadź słowa kluczowe dla szablonów, które chcesz ukryć przed edytorami szablonów dostępnych za pośrednictwem strony ''Szablony''. Na przykład szablony, które są już w użyciu, ale nie chcesz, aby zostały usunięte z serwera.'\n            cron: 'Oznacza korzystanie z własnych harmonogramów cron-a dla zadań automatycznych, zamiast harmonogramu zawartego w Newscoop.'\n            video: 'Domyślna szerokość i wysokość zarówno zewnętrznie, jak i lokalnie obsługiwanych plików wideo można ustawić w tej sekcji, aby upewnić się, że filmy są wyświetlane poprawnie w publikacjach szablonów stron.'\n            emailfrom: 'Adres e-mail używany do powiadomień z systemu.'\n            recaptcha:\n                publickey: 'Klucz używany w kodzie JavaScript aby uruchomic reCAPTCHA.'\n                privatekey: 'Klucz używany do komunikacji twojego serwera z serwerem reCAPTCHA. Nie udostępniaj go nikomu.'\n                secure: 'Jeśli używasz zabezpieczonych url-i, wybierz opcję Tak.'\n            garbage: 'Jeśli opcja ta jest włączona, to możesz ustalić liczbę dni po których nieaktualne dane oczekujących użytkowników zostaną usunięte. Domyślnie jest to 90 dni.'\n            lifetime: 'Czas ważności sesji w sekundach. Maksymalnie 86400 (24 godziny). Minimalnie 0 (aż do zamknięcia okna przeglądarki).'\n            smartyuseprotocol: 'Jeśli opcja ta jest włączona, to Smarty będzie generował linki z dołączonym do adresu protokołem. Domyślnie jest to wyłączone tak aby generować względne adresy URL. Możliwe jest nadpisanie tej opcji z parametrem \"useprotocol\" w szablonach Smarty. '\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.ps.yml",
    "content": "newscoop:\n    btn:\n        save: null\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: null\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: null\n            nooption: null\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.pt.yml",
    "content": "newscoop:\n    btn:\n        save: Guardar\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: 'Preferências do Sistema'\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: Sim\n            nooption: Não\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.pt_BR.yml",
    "content": "newscoop:\n    btn:\n        save: Salvar\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: 'Preferências do Sistema'\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: Sim\n            nooption: Não\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.ro.yml",
    "content": "newscoop:\n    btn:\n        save: Salvează\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: 'Preferinţele sistemului'\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: Da\n            nooption: Nu\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.ru.yml",
    "content": "newscoop:\n    btn:\n        save: Сохранить\n    preferences:\n        error:\n            cache: 'Ошибка: PHP %cache% должен быть доступен для системы кеширования шаблона.'\n            replication: 'Данные репликации базы данных неполные'\n            maxupload: 'Неправильное максимальное значение размера загружаемого файла'\n            geolocation: 'Неверно заполнены поля геолокации. Обязательно присутствие чисел. Широта не может быть > 90 и < -90. Долгота не может быть > 180 и < -180.'\n            noaccess: 'Вы не имеете прав для изменения системных настроек.'\n            latitude: 'Значение поля Широта недопустимо.'\n            longitude: 'Значение поля Долгота недопустимо.'\n            cacheNotCleared: 'Произошла ошибка при очистке кеша'\n            joberror: 'Не удалось изменить статус указанной задачи.'\n            jobnotifyerror: 'Не удалось отключить/включить уведомления.'\n        success:\n            saved: 'Системные настройки обновлены.'\n            cacheCleared: 'Кеш очищен'\n            jobenabled: 'Задача успешно активирована'\n            jobdisabled: 'Задача отменена'\n            jobnotifyswitched: 'Настройка уведомления о фоновых задачах включена.'\n        menu:\n            general: 'Общие настройки'\n            email: 'Настройки Email'\n            editor: 'Настройки редактора'\n            geolocation: 'Настройки геолокации'\n            fb: 'Настройки Facebook'\n            media: 'Настройки видео'\n            cache: 'Настройки кеш'\n            other: 'Другие настройки'\n            recaptcha: 'Настройки reCAPTCHA '\n            cronjob: 'Настройки фоновых задач'\n        btn:\n            cleardatabasecache: null\n            disable: Деактивировать\n            enable: Активировать\n        label:\n            title: 'Системные настройки'\n            header: Настройки\n            siteonline: 'Сайт он-лайн:'\n            sitetitle: 'Заголовок сайта'\n            metakeywords: 'Мета ключевые слова сайта:'\n            metadescription: 'Мета описание сайта:'\n            timezone: 'Часовой пояс:'\n            cacheengine: 'Кеширование запросов к БД:'\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: 'Кеширование страниц:'\n            cacheimage: 'Время жизни кеш изображения:'\n            allowrecovery: 'Разрешить восстановление пароля:'\n            secretkey: 'Секретный ключ:'\n            sessionlifetime: 'Время жизни сессии:'\n            sessionlifetimemsg: 'согласно настройкам php.ini.'\n            separator: 'Разделитель ключевых слов:'\n            captcha: 'Число неудачных попыток входа до активации CAPTCHA:'\n            maxupload: 'Максимально возможный размер загружаемого файла:'\n            maxuploadmsg: 'Введите значение между 0 и %max% (максимальный размер указан в ''php.ini''). Для обозначения килобайтов используйте ''K'', для мегабайтов ''M'' и для гигабайтов ''G'' без пробелов между значением и соответствующей буквой, например, ''3M''.'\n            stats: 'Автоматический сбор статистики:'\n            smtphost: 'SMTP хост:'\n            smtpport: 'SMTP порт:'\n            email: 'SMTP Email от:'\n            emailfrom: 'Email для получения уведомлений от системы:'\n            imageratio: 'Пропорции изменяемого изображения:'\n            imagewidth: 'Ширина  масштабируемого изображения:'\n            imageheight: 'Высота  масштабируемого изображения:'\n            zoom: 'Включить масштабирование изображений в статьях?'\n            mediaRichTextCaptions: 'Разрешить форматированный текст в подписях к изображениям?'\n            mediaCaptionLength: 'Максимальное число знаков в подписи к изображению:'\n            mediaCaptionLength_after: знак(знаки)\n            external: 'Управление подпиской читателей осуществляется извне?'\n            usereplication: 'Настроить сервер репликации Newscoop?'\n            serverdb: 'База данных онлайн-сервера Newscoop'\n            replicationhost: 'Хост репликации базы данных:'\n            replicationuser: 'Пользователь репликации базы данных:'\n            replicationpw: 'Пароль репликации базы данных:'\n            replicationport: 'Порт репликации базы данных:'\n            filter: 'Время жизни маски фильтра (через запятые)'\n            cron: 'Запускать обслуживающие задачи через Cron?'\n            mysqlpath: 'newscoop:preferences:label:mysqlpath'\n            mysqlpathmsg: 'загрузить данные географических названий'\n            latitude: 'Широта центра карты'\n            longitude: 'Долгота центра карты'\n            zoomlevel: 'Масштаб карты:'\n            defaultwidth: 'Ширина карты по-умолчанию'\n            defaultheight: 'Высота карты по-умолчанию'\n            css: 'Включите CSS файл для просмотра карты'\n            autofocus: 'Автофокусировка карты по умолчанию:'\n            zoomautofocus: 'Максимальное приближение для автофокусировки:'\n            borderautofocus: 'Границы карты для автофокусировки:'\n            mapprovider: 'Принять Google Streets Map в качестве провайдера карты:'\n            mapquest: 'Принять MapQuest Map в качестве провайдера карты:'\n            openstreet: 'Принять OpenStreet Map в качестве провайдера карты:'\n            defaultmapprovider: 'Провайдер карты по-умолчанию:'\n            nominatimsearch: 'Использовать поиск MapQuest Nominatim:'\n            preflanguage: null\n            markerdir: 'Каталог маркера карты:'\n            defaultmarker: 'Маркер карты '\n            popupwidth: 'Минимальная ширина всплывающей карты:'\n            popupheight: 'Минимальная высота всплывающей карты:'\n            youtubewidth: 'Ширина Youtube-ролика по-умолчанию:'\n            youtubeheight: 'Высота Youtube-ролика по-умолчанию:'\n            vimeowidth: 'Ширина Vimeo-ролика по-умолчанию:'\n            vimeoheight: 'Высота Vimeo-ролика по-умолчанию:'\n            flashwidth: 'Ширина Flash-блока по-умолчанию:'\n            flashheight: 'Высота Flash-блока по-умолчанию:'\n            flashserver: 'Локальный Flash сервер:'\n            flashdir: 'Локальный Flash каталог:'\n            apikey: 'API ключ:'\n            appid: 'APP ID: '\n            fbsecret: 'newscoop:preferences:label:fbsecret'\n            recaptchapublickey: 'Открытый ключ'\n            recaptchaprivatekey: 'Закрытый ключ'\n            recaptchasecure: 'Безопасный url для reCAPTCHA?'\n            disabled: отключено\n            yesoption: Да\n            nooption: Нет\n            geosearch: 'Использовать поиск Local GeoNames:'\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: 'Число дней'\n            smartyUseProtocol: 'Использовать протокол для абсолютных ссылок сгенерированных Smarty?'\n            cronjob: null\n            enabled: Состояние\n            options: Варианты\n            info: 'Информация:'\n            infodesc: 'Эти настройки служат для управления фоновыми задачами путем включения/отмены указанной задачи (задач).'\n            prevRun: 'Предыдущая дата выполнения'\n            nextRun: 'Следующая дата выполнения'\n            norecords: 'Не выбрана ни одна из записей'\n            cronJobEmail: 'E-mail для отправки уведомлений'\n            cronJobSenderEmail: 'E-mail адрес отправителя'\n            cronJobSenderName: 'Имя отправителя (например, Newscoop Scheduler)'\n            cronJobNotify: 'Уведомлять?'\n            cronslist: 'Список фоновых задач'\n            cronsadvanced: 'Расширенные настройки'\n            moredetails: 'Подробнее:'\n        popover:\n            cronJobEmail: 'Указать через запятую e-mail адреса, на которые будут отсылаться уведомления об ошибках.'\n            cronJobSenderEmail: 'E-mail адреса, с которых будут отсылаться уведомления.'\n            cacheengine: 'Включает или отключает системный кэш, что может улучшить работу Newscoop.'\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: 'Период, на который будут изображения помещены в кэш, от 30 секунд до бесконечности.'\n            cachetemplate: null\n            recovery: 'Возможность восстановить пароль через email. Учтите, что при разрешении этой функции и ослаблении защиты вашего почтового аккаунта, в свою очередь, может быть ослаблена безопасность вашего издания на Newscoop.'\n            secret: null\n            separator: null\n            stats: 'Функция сбора статистики посещений. Если вы пользуетесь внешними сервисами статистического учета, можете ответить Нет. Отключение функции снимает нагрузку на сервер Newscoop.'\n            zoom: 'Если выбран ответ Да, читатели смогут увеличивать изображения в статьях, кликнув на них. Эта опция масштабирования работает для любых изображений, размещенных в тексте статьи.'\n            richtext_status: null\n            richtext_length: null\n            ratio: 'Сохранение пропорций при изменении изображения более приоритетно, чем указанные здесь изменения ширины или высоты. Если пропорции не указаны, но указаны ширина и высота, Newscoop выберет значение, которое приведет к уменьшению изображения. Значения, указанные здесь по умолчанию, можно отменить для отдельного изображения, применив настройки на странице редактирования статьи.'\n            replication: 'Дает возможность организации работы Newscoop на двух  серверах одновременно в качестве меры предосторожности в случаях проблем с аппаратным обеспечением или ошибок сети. '\n            filter: null\n            cron: null\n            video: null\n            emailfrom: 'Email для получения уведомлений от системы:'\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: 'Выберите Да, если используете безопасный url для reCAPTCHA.'\n            garbage: 'Данная опция позволяет издателю выбрать количество дней, по истечении которых аккаунты пользователей, не получивших подтверждения, удаляются. Срок ожидания по умолчанию 90 дней. '\n            lifetime: 'Продолжительность сессии в секундах. Max: 86400 (24 часов). Min: 0 (до момента закрытия окна браузера).'\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.sh.yml",
    "content": "newscoop:\n    btn:\n        save: Snimi\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: 'Keš je obrisan'\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: 'Opšta podešavanja'\n            email: 'Podešavanja e-maila'\n            editor: 'Podešavanja editora'\n            geolocation: 'Podešavanja geo-lokacija'\n            fb: 'Podešavanja Facebooka'\n            media: 'Podešavanja videa'\n            cache: 'Podešavanja keša'\n            other: 'Ostala podešavanja'\n            recaptcha: 'Podešavanja reCAPTCHA'\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: 'Sistemske postavke'\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: Da\n            nooption: Ne\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: Status\n            options: Opcije\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: 'Nema zapisa'\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.sq.yml",
    "content": "newscoop:\n    btn:\n        save: null\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: null\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: null\n            nooption: null\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.sr.yml",
    "content": "newscoop:\n    btn:\n        save: Сними\n    preferences:\n        error:\n            cache: 'Грешка: потребно је да PHP %cache% буде омогућен да бисте користили шаблонски систем кеширања.'\n            replication: 'Датум репликације базе података је некомплетан'\n            maxupload: 'Унесена је погрешна максимална величина фајла за аплоуд'\n            geolocation: null\n            noaccess: 'Немате право промене системских поставки.'\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: 'системске поставке измењене.'\n            cacheCleared: 'Кеш је очишћен'\n            jobenabled: 'Успешно омогућена радња'\n            jobdisabled: 'Успешно забрањена радња'\n            jobnotifyswitched: null\n        menu:\n            general: 'Основне поставке'\n            email: 'Подешавања мејла'\n            editor: 'Подешавање едитора'\n            geolocation: 'Подешавање гео-локација'\n            fb: 'Подешавања Фејсбука'\n            media: 'Видео подешавања'\n            cache: 'Подешавање кеша'\n            other: 'Друга подешавања'\n            recaptcha: 'reCAPTCHA подешавања'\n            cronjob: null\n        btn:\n            cleardatabasecache: 'Обриши кеш драјвера'\n            disable: Деактивирати\n            enable: Омогући\n        label:\n            title: 'Системске поставке'\n            header: Поставке\n            siteonline: 'Сајт онлајн?'\n            sitetitle: 'Назив сајта'\n            metakeywords: 'Мета кључне речи сајта:'\n            metadescription: 'Мета опис сајта:'\n            timezone: 'Временска зона:'\n            cacheengine: 'Кеширање базе података:'\n            cacheenginehost: 'Хост ѕа кеширање базе података:'\n            cacheengineport: 'Порт ѕа кеширање базе података:'\n            cachetemplate: 'Руковалац шаблонским кешом:'\n            cacheimage: 'Трајање кеширања за слике'\n            allowrecovery: 'Дозволи повраћај лозинке:'\n            secretkey: 'Тајни кључ'\n            sessionlifetime: 'трајање сесије:'\n            sessionlifetimemsg: 'У складу са php.ini подешавањима.'\n            separator: 'Сепаратор кључних речи:'\n            captcha: 'Број неуспелих покушаја пријаве пре него што се прикаже CAPTCHA:'\n            maxupload: 'Максимална величина фајла за аплоуд:'\n            maxuploadmsg: null\n            stats: 'Аутоматско прикупљање статистичких података:'\n            smtphost: 'СМТП хост:'\n            smtpport: 'СМТП порт:'\n            email: 'SMTP мејл адресе са које се шаље:'\n            emailfrom: 'Мејл адреса за примање информација из система:'\n            imageratio: 'Размера промене величине слике:'\n            imagewidth: 'Ширина за промену величине слике:'\n            imageheight: 'Висина за промену величине слике:'\n            zoom: 'Увећавање је омогућено за слике у тексту?'\n            mediaRichTextCaptions: null\n            mediaCaptionLength: 'Лимит за број карактера наслова слика:'\n            mediaCaptionLength_after: карактер(и)\n            external: 'Корисничке претплате се уређују екстерно?'\n            usereplication: 'Подешавање Newscoop репликационог сервера?'\n            serverdb: 'Newscoop база података на онлајн серверу'\n            replicationhost: 'Хост за репликациону базу:'\n            replicationuser: 'Корисничко име за базу репликационог сервера:'\n            replicationpw: 'Лозинка на репликационој бази:'\n            replicationport: 'Порт на репликационој бази:'\n            filter: 'Филтер шаблона (раздвојено зарезом)'\n            cron: 'Екстерно покретање планираних акција?'\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: 'Географска висина центра мапе:'\n            longitude: 'Географска дужина центра мапе:'\n            zoomlevel: 'Ниво зумирања мапе:'\n            defaultwidth: 'Подразумевана ширина мапе:'\n            defaultheight: 'Подразумевана висина мапе:'\n            css: 'Додај CSS фајл за приказ мапе'\n            autofocus: 'Ауто центрирање мапе као подразумевано понашање:'\n            zoomautofocus: 'Највеће увећање при аутоматском центрирању:'\n            borderautofocus: 'Оквир мапе за аутоматско центрирање:'\n            mapprovider: 'Омогући Google Streets map провајдера:'\n            mapquest: 'Омогући MapQuest map провајдера'\n            openstreet: 'Омогући OpenStreet Map провајдера:'\n            defaultmapprovider: 'Подразумевани провајдер мапа:'\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: 'Директоријум маркера'\n            defaultmarker: 'Подразумевани маркер:'\n            popupwidth: 'Минимална ширина поп-апа са мапом:'\n            popupheight: 'Минимална висина поп-апа са мапом'\n            youtubewidth: 'Подразумевана ширина Youtube клипа:'\n            youtubeheight: 'Подразумевана висина Youtube клипа'\n            vimeowidth: 'Подразумевана ширина Vimeo клипа:'\n            vimeoheight: 'Подразумевана висина Vimeo клипа:'\n            flashwidth: 'Подразумевана ширина за флеш:'\n            flashheight: 'Подразумевана висина за флеш:'\n            flashserver: 'Локални флеш сервер:'\n            flashdir: 'Локални флеш директоријум:'\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: онемогућено\n            yesoption: Да\n            nooption: Не\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: Статус\n            options: Опције\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: 'Нема записа'\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.sv.yml",
    "content": "newscoop:\n    btn:\n        save: Spara\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: Systeminställningar\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: Ja\n            nooption: Nej\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.tr.yml",
    "content": "newscoop:\n    btn:\n        save: null\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: null\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: null\n            nooption: null\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.uk.yml",
    "content": "newscoop:\n    btn:\n        save: Зберегти\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: 'Системні налаштування'\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: Так\n            nooption: Ні\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.vi.yml",
    "content": "newscoop:\n    btn:\n        save: null\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: null\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: null\n            nooption: null\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.zh.yml",
    "content": "newscoop:\n    btn:\n        save: 保存\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: null\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: 是\n            nooption: 否\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: 状态\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/system_pref.zh_TW.yml",
    "content": "newscoop:\n    btn:\n        save: 儲存\n    preferences:\n        error:\n            cache: null\n            replication: null\n            maxupload: null\n            geolocation: null\n            noaccess: null\n            latitude: null\n            longitude: null\n            cacheNotCleared: null\n            joberror: null\n            jobnotifyerror: null\n        success:\n            saved: null\n            cacheCleared: null\n            jobenabled: null\n            jobdisabled: null\n            jobnotifyswitched: null\n        menu:\n            general: null\n            email: null\n            editor: null\n            geolocation: null\n            fb: null\n            media: null\n            cache: null\n            other: null\n            recaptcha: null\n            cronjob: null\n        btn:\n            cleardatabasecache: null\n            disable: null\n            enable: null\n        label:\n            title: null\n            header: null\n            siteonline: null\n            sitetitle: null\n            metakeywords: null\n            metadescription: null\n            timezone: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cachetemplate: null\n            cacheimage: null\n            allowrecovery: null\n            secretkey: null\n            sessionlifetime: null\n            sessionlifetimemsg: null\n            separator: null\n            captcha: null\n            maxupload: null\n            maxuploadmsg: null\n            stats: null\n            smtphost: null\n            smtpport: null\n            email: null\n            emailfrom: null\n            imageratio: null\n            imagewidth: null\n            imageheight: null\n            zoom: null\n            mediaRichTextCaptions: null\n            mediaCaptionLength: null\n            mediaCaptionLength_after: null\n            external: null\n            usereplication: null\n            serverdb: null\n            replicationhost: null\n            replicationuser: null\n            replicationpw: null\n            replicationport: null\n            filter: null\n            cron: null\n            mysqlpath: null\n            mysqlpathmsg: null\n            latitude: null\n            longitude: null\n            zoomlevel: null\n            defaultwidth: null\n            defaultheight: null\n            css: null\n            autofocus: null\n            zoomautofocus: null\n            borderautofocus: null\n            mapprovider: null\n            mapquest: null\n            openstreet: null\n            defaultmapprovider: null\n            nominatimsearch: null\n            preflanguage: null\n            markerdir: null\n            defaultmarker: null\n            popupwidth: null\n            popupheight: null\n            youtubewidth: null\n            youtubeheight: null\n            vimeowidth: null\n            vimeoheight: null\n            flashwidth: null\n            flashheight: null\n            flashserver: null\n            flashdir: null\n            apikey: null\n            appid: null\n            fbsecret: null\n            recaptchapublickey: null\n            recaptchaprivatekey: null\n            recaptchasecure: null\n            disabled: null\n            yesoption: 是\n            nooption: 否\n            geosearch: null\n            usergarbage: null\n            usergarbagedaysinfo: null\n            usergarbagedays: null\n            smartyUseProtocol: null\n            cronjob: null\n            enabled: null\n            options: null\n            info: null\n            infodesc: null\n            prevRun: null\n            nextRun: null\n            norecords: null\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cronJobSenderName: null\n            cronJobNotify: null\n            cronslist: null\n            cronsadvanced: null\n            moredetails: null\n        popover:\n            cronJobEmail: null\n            cronJobSenderEmail: null\n            cacheengine: null\n            cacheenginehost: null\n            cacheengineport: null\n            cacheimage: null\n            cachetemplate: null\n            recovery: null\n            secret: null\n            separator: null\n            stats: null\n            zoom: null\n            richtext_status: null\n            richtext_length: null\n            ratio: null\n            replication: null\n            filter: null\n            cron: null\n            video: null\n            emailfrom: null\n            recaptcha:\n                publickey: null\n                privatekey: null\n                secure: null\n            garbage: null\n            lifetime: null\n            smartyuseprotocol: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.ar.yml",
    "content": "'Duplicate assignment': 'كرر المهمة'\nTemplates: نماذج\n'Import theme': 'استيراد النسق'\n'Import succeeded!': null\n'Import failed!': 'فشل الاستيراد!'\n'Edit template: $1': 'عدل النموذج: $1'\n'Set new name to': 'عين اسم جديد الى'\n'Rename file': 'اعادة تسمية الملف'\n'Caching templates in:': 'قيد التخزين المؤقت للنماذج في'\n'Caching templates finished': 'تم التخزين المؤقت للنماذح'\n'Theme name': 'اسم النسق'\n'Theme is assigned and can not be deleted': 'يتم تعيين النسق ولا يمكن حذفه'\n'Theme export was not successful. Check please that the server is not out of disk space.': 'لم يكن ناجحا تصدير النسق. يرجى التحقق ألا ينفد من مساحة القرص.'\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': 'لا يمكن إزالة تعيين النسق لأنه قيد الاستخدام مسبقاً من العدد ($1) في هذا المنشور'\nzip: 'الملف zip'\nversion: الاصدار\nuploaded: 'تم الرفع'\nupdated: 'تم التحديث'\n'or higher': 'أو أعلى'\nmoved: 'تم النقل'\ninstalled: 'تم التركيب'\ndeleted: 'تم الحذف'\n'You must select at least one template to perform an action.': 'يجب عليك أن تختار ما لا يقل عن نموذج واحد لتنفيذ إجراء'\nUpload: إرفع\n'Unassign theme': 'أزل تعيين النسق'\n'Unassign successful': 'إزالة التعيين ناجحة'\nUnassign: 'أزل التعيين'\n'Theme version': 'إصدار النسق'\n'Theme settings updated.': 'تم تحديث اعدادات النسق'\n'Theme settings saved.': 'تم حفظ اعدادات النسق'\n'Theme name / version': 'اسم / اصدار النسق'\n'Theme management': 'إدارة النسق'\n'Theme $1': 'النسق $1'\n'The file $1 is empty.': 'الملف $1 قارغ'\n'Template object $1 was renamed to $2.': 'تم إعادة تسمية موضوع القالب $1 الى $2.'\n'Template object $1 was deleted.': 'تم حذف موضوع القالب $1.'\n'Template $1 was duplicated into $2.': 'تم تكرار القالب $1 الى $2.'\n'Template $1 $2.': 'القالب $1 $2.'\n'Something broke': 'انكسر شيء'\n'Section page template': 'نموذج صفحة القسم'\nSaving..: 'قيد الحفظ...'\n'Saving settings failed.': 'تم فشل حفظ الاعدادات'\n'Save All': 'إحفظ الكل'\n'Required Newscoop version': 'إصدار نيوسكوب المطلوب'\nReplace: استبدال\n'New template $1 created.': 'تم إنشاء القالب الجديد $1.'\n'New name': 'اسم جديد'\n'Name cant be empty': 'لا يمكن الاسم أن يكون قارغ'\n'Last modified': 'آخر تعديل'\n'Issue page': 'صفحة العدد'\n'Go to parent': 'إذهب الى الأصل'\n'Go to $1': 'إذهب الى $1'\n'Geo Filtering': 'التصفية من خلال جغرافيا'\n'Front page template': 'نموذج الصفحة الأمامية'\n'File size': 'حجم الملف'\n'File name': 'اسم الملف'\n'File $1 was replaced.': 'تم استبدال الملف $1.'\n'Failed unassigning theme': 'فشلت إزالة تعيين النسق'\nExport: تصدير\n'Error page template': 'نموذج صفحة الخطأ'\n'Edit $1': 'عدل $1'\n'Done uploading': 'انتهى الرفع'\n'Do you want to override $1?': 'هل تريد تجاوز $1 بتراكب؟'\n'Directory is empty': 'الدليل فارغ'\n'Directory $1 created.': 'تم إنشاء الدليل $1'\nDesign: تصميم\n'Delete theme': 'إحذف النسق'\n'Current directory:': 'الدليل الحالي'\n'Create folder': 'أنش محفظة'\n'Create file': 'أنش الملف'\n'Copy to available themes': 'إنسخ الى أنسق متوفرة'\n'Copied successfully': 'تم النسخ بنجاح'\nCompatibility: انسجام\n'Click to enlarge': 'إضغط لتكبير'\n'Choose destination': 'اختر المستهدف'\n'Cant override directory $1.': 'لا يمكن تجاوز الدليل $1.'\n'Cache Lifetime': 'مدى الحياة للذاكرة الخبيئة'\n'Browse for the theme': 'تصفح للنسق'\n'Assigned successfully': 'تم التعيين بنجاح'\n'Article page template': 'نموذج صفحة المقال'\n'Article page': 'صفحة المقال'\n'Are you sure you want to unassign this theme?': 'هل أنت متأكد أنك تريد إزالة تعيين النسق؟'\n'Are you sure you want to delete this theme?': 'هل انت متأكد أنك تريد أن تحذف هذا النسق؟'\n'Add to publication': 'أضف الى المنشور'\n'$1 is not writable': '$1 غير قابل للكتابة'\n'$1 $2': '$1 $2'\n'$1 files $2': '$1 ملف(-ات) $2'\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.az.yml",
    "content": "'Duplicate assignment': 'Təyinatın surətini çıxar'\nTemplates: Üzlük\n'Import theme': 'Mövzu idxal et'\n'Import succeeded!': null\n'Import failed!': 'İdxal alınmadı!'\n'Edit template: $1': 'Nümunəni dəyiş: $1'\n'Set new name to': 'Buna yeni ad quraşdır'\n'Rename file': 'Faylın adını dəyiş'\n'Caching templates in:': 'Nümunələrin burada keşlənməsi:'\n'Caching templates finished': 'Nümunələrin keşlənməsi bitdi'\n'Theme name': 'Mövzu adı'\n'Theme is assigned and can not be deleted': 'Mövzu təyin edilib və silinə bilməz'\n'Theme export was not successful. Check please that the server is not out of disk space.': 'Mövzu ixracı uğursuz oldu. Serverin disk yaddaşından kənarda olmadığını yoxla.'\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': 'Mövzu bu nəşrdəki məsələlər ($1) tərəfindən istifadədə olduğu üçün təyinatının ləğvi mümkün deyil.'\nzip: zip\nversion: versiya\nuploaded: yükləndi\nupdated: yeniləndi\n'or higher': 'daha üstün'\nmoved: 'yeri dəyişdirildi'\ninstalled: quraşdırıldı\ndeleted: silindi\n'You must select at least one template to perform an action.': 'Fəaliyyət həyata keçirmək üçün ən azı bir nümunə seçməlisən.'\nUpload: Yüklə\n'Unassign theme': 'Mövzunun təyinatını ləğv et'\n'Unassign successful': 'Təyinatın ləğvi uğurludur'\nUnassign: 'Təyinatı ləğv et'\n'Theme version': 'Mövzu versiyası'\n'Theme settings updated.': 'Mövzu parametrləri yeniləndi.'\n'Theme settings saved.': 'Mövzu parametrləri saxlandı.'\n'Theme name / version': 'Mövzu adı / versiyası'\n'Theme management': 'Mövzu idarəçiliyi'\n'Theme $1': 'Mövzu $1'\n'The file $1 is empty.': '$1 faylı boşdur.'\n'Template object $1 was renamed to $2.': '$1 nümunə vasitəsinin adı dəyişdirilərək $2 oldu.'\n'Template object $1 was deleted.': '$1 nümunə vasitəsi silindi.'\n'Template $1 was duplicated into $2.': '$1 nümunəsinin $2 daxilinə surəti çıxarıldı.'\n'Template $1 $2.': '$1 $2 Nümunəsi.'\n'Something broke': 'Nə isə qırıldı'\n'Section page template': 'Bölmə səhifə nümunəsi'\nSaving..: Saxlanır..\n'Saving settings failed.': 'Parametrlərin saxlanması alınmadı.'\n'Save All': 'Hamısını Saxla'\n'Required Newscoop version': 'Tələb edilən Newscoop versiyası'\nReplace: Əvəzlə\n'New template $1 created.': '$1 yeni nümunəsi yaradıldı.'\n'New name': 'Yeni ad'\n'Name cant be empty': 'Ad boş saxlana bilməz'\n'Last modified': 'Son redaktələr'\n'Issue page': 'Məsələ səhifəsi'\n'Go to parent': 'Mənbəyə keç'\n'Go to $1': '$1 keç'\n'Geo Filtering': 'Geo Filtrləmə'\n'Front page template': 'Ön səhifə nümunəsi'\n'File size': 'Faylın ölçüsü'\n'File name': 'Faylın adı'\n'File $1 was replaced.': '$1 faylı əvəz edildi.'\n'Failed unassigning theme': 'Mövzunun təyinatını geri götürmək mümkün olmadı'\nExport: İxrac\n'Error page template': 'Xəta səhifə nümunəsi'\n'Edit $1': '$1-a dəyişiklik et'\n'Done uploading': 'Yeniləmə bitdi'\n'Do you want to override $1?': '$1 faylını yenidən yazmaq istəyirsən?'\n'Directory is empty': 'Direktoriya boşdur'\n'Directory $1 created.': '$1 kataloqu yaradılmışdır.'\nDesign: Dizayn\n'Delete theme': 'Üzlüyü sil'\n'Current directory:': 'Hazırkı kataloq:'\n'Create folder': 'Qovluq yarat'\n'Create file': 'Fayl yarat'\n'Copy to available themes': 'Mövcud mövzulara köçür'\n'Copied successfully': 'Müvəffəqiyyətlə köçürüldü'\nCompatibility: Uyğunluq\n'Click to enlarge': 'Genişləndirmək üçün kliklə'\n'Choose destination': 'Son ünvanı seç'\n'Cant override directory $1.': '$1 kataloqu yenidən yazıla bilmir.'\n'Cache Lifetime': 'Keşin Yaşama Müddəti'\n'Browse for the theme': 'Mövzu üçün axtar'\n'Assigned successfully': 'Müvəffəqiyyətlə təyin edildi'\n'Article page template': 'Məqalə səhifə nümunəsi'\n'Article page': 'Məqalə səhifəsi'\n'Are you sure you want to unassign this theme?': 'Bu mövzunun təyini geri almaq istədiyinə əminsən?'\n'Are you sure you want to delete this theme?': 'Bu mövzunu silmək istədiyinə əminsən?'\n'Add to publication': 'Nəşrini əlavə et'\n'$1 is not writable': '$1 yazılan deyil'\n'$1 $2': '$1 $2'\n'$1 files $2': '$1 fayl $2'\n'Available themes': 'Olan Üzlüklər'\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.be.yml",
    "content": "'Duplicate assignment': null\nTemplates: Шаблёны\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': 'Пераназваць файл'\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': 'Вы павінны абраць па меншай меры адзін шаблон каб вырабіць дзеянне.'\nUpload: Загрузіць\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': 'Захаваць усё'\n'Required Newscoop version': null\nReplace: 'Замянiць:'\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': 'Апошнія змяненні'\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': 'Рэдагаваць $1'\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': ' Папка $1 была створаная.'\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.bn.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.cs.yml",
    "content": "'Duplicate assignment': 'Duplicitní přiřazení'\nTemplates: Šablony\n'Import theme': 'Importovat téma'\n'Import succeeded!': null\n'Import failed!': 'Neúspěšný import!'\n'Edit template: $1': 'Upravit šablonu: $1'\n'Set new name to': 'Nastavit nový název do'\n'Rename file': 'Přejmenovat soubor'\n'Caching templates in:': 'Caching šablona v:'\n'Caching templates finished': 'Caching šablona hotova'\n'Theme name': 'Jméno tématu'\n'Theme is assigned and can not be deleted': 'Téma je přiděleno a nemůže být vymazáno'\n'Theme export was not successful. Check please that the server is not out of disk space.': 'Export tématu nebylo úspěšné. Zkontrolujte zda server má dostatek místa na disku.'\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': 'Téma nemůže být vyřazeno, protože je používán ve vydání ($ 1) této publikace.'\nzip: PSČ\nversion: verze\nuploaded: nahrané\nupdated: aktualizované\n'or higher': 'nebo vyšší'\nmoved: posunuté\ninstalled: instalováné\ndeleted: vymazané\n'You must select at least one template to perform an action.': 'Musíte zvolit alespoň jednu šablonu k provedení činnosti.'\nUpload: Nahrávat\n'Unassign theme': 'Zrušení přirazení tématu'\n'Unassign successful': 'Úspěšné zrušení přiřazení '\nUnassign: 'Zrušení přiřazení'\n'Theme version': 'Téma verze'\n'Theme settings updated.': 'Nastavení tématu aktualizováno.'\n'Theme settings saved.': 'Nastavení tématu uloženo.'\n'Theme name / version': 'Téma název / verze'\n'Theme management': 'Management témat'\n'Theme $1': 'Téma $1'\n'The file $1 is empty.': 'Soubor $1 je prázdný.'\n'Template object $1 was renamed to $2.': 'Předmět šablony $1 byl přejmenován na $2.'\n'Template object $1 was deleted.': 'Předmět šablony $1 byl vymazán.'\n'Template $1 was duplicated into $2.': 'Šablona $1byla duplikovaná to $2.'\n'Template $1 $2.': 'Šablona $1 $2.'\n'Something broke': 'Něco se rozbilo'\n'Section page template': 'Stránka sekce šablon'\nSaving..: Ukládání...\n'Saving settings failed.': 'Ukládání nastavení selhalo.'\n'Save All': 'Uložit Vše'\n'Required Newscoop version': 'Požadována verze Newscoop'\nReplace: Nahradit\n'New template $1 created.': 'Nová šablona $1 vytvořena.'\n'New name': 'Nový název'\n'Name cant be empty': 'Název nemůže být prázdný'\n'Last modified': 'Naposledy změněno'\n'Issue page': 'Stránka vydání'\n'Go to parent': 'Jdi na ústředí'\n'Go to $1': 'Jdi na $1'\n'Geo Filtering': 'Geo filtrování'\n'Front page template': 'První stránka šablony'\n'File size': 'Velikost souboru'\n'File name': 'Jméno souboru'\n'File $1 was replaced.': 'Soubor $1 byl nahrazen.'\n'Failed unassigning theme': 'Neuspěšné zrušení přiřazení tématu '\nExport: Export\n'Error page template': 'Šablona stránky chyb'\n'Edit $1': 'Editovat $1'\n'Done uploading': 'Nahráváni hotovo'\n'Do you want to override $1?': 'Přejete si přepsat $1?'\n'Directory is empty': 'Adresář je prázdný'\n'Directory $1 created.': 'Složka $1 vytvořena.'\nDesign: Design\n'Delete theme': 'Vymazat téma'\n'Current directory:': 'Aktuální adresář:'\n'Create folder': 'Vytvořit složku'\n'Create file': 'Vytvořit soubor'\n'Copy to available themes': 'Kopírovat do dostupných témat'\n'Copied successfully': 'Kopírování úspěšné'\nCompatibility: Kompatibilita\n'Click to enlarge': 'Kliknutím zvětšit'\n'Choose destination': 'Vybrat destinaci'\n'Cant override directory $1.': 'Nelze přepsat adresář $1.'\n'Cache Lifetime': 'Životnost Cache '\n'Browse for the theme': 'Vyhledat téma'\n'Assigned successfully': 'Přiřazení úspěšné'\n'Article page template': 'Šablona stránky článku'\n'Article page': 'Stránka článku'\n'Are you sure you want to unassign this theme?': 'Jste si jisti, že chcete zrušit přiřazení tohoto tématu?'\n'Are you sure you want to delete this theme?': 'Jste si jisti, že chcete vymazat téma?'\n'Add to publication': 'Přidat do publikace'\n'$1 is not writable': '$1 není přepsatelné'\n'$1 $2': '$1 $2'\n'$1 files $2': '$1  soubory  $2'\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.da.yml",
    "content": "'Duplicate assignment': Dobbelttildeling\nTemplates: Skabeloner\n'Import theme': 'Importer tema'\n'Import succeeded!': 'Importen lykkedes!'\n'Import failed!': 'Importen mislykkedes!'\n'Edit template: $1': 'Rediger skabelon: $1'\n'Set new name to': 'Nyt navn'\n'Rename file': 'Omdøb fil'\n'Caching templates in:': 'Skabeloner caches i:'\n'Caching templates finished': 'Skabelon caching afsluttet'\n'Theme name': 'Tema navn'\n'Theme is assigned and can not be deleted': 'Temaet er i brug og kan ikke slettes'\n'Theme export was not successful. Check please that the server is not out of disk space.': 'Temaet kunne ikke eksporteres. Kontroller at der er diskplads på serveren.'\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': 'Temaet bruges af udgivelserne ($1) i denne publikation og kan ikke fjernes'\nzip: zip\nversion: version\nuploaded: uploadet\nupdated: opdateret\n'or higher': 'eller nyere'\nmoved: flyttet\ninstalled: installeret\ndeleted: slettet\n'You must select at least one template to perform an action.': 'Du skal vælge mindst en skabelon for at udføre en handling.'\nUpload: Upload\n'Unassign theme': 'Fjern tema'\n'Unassign successful': 'Temaet er fjernet'\nUnassign: Fjern\n'Theme version': 'Tema version'\n'Theme settings updated.': 'Temaets indstillinger blev opdateret.'\n'Theme settings saved.': 'Temaets indstillinger blev gemt.'\n'Theme name / version': 'Tema navn / version'\n'Theme management': 'Tema håndtering'\n'Theme $1': 'Tema $1'\n'The file $1 is empty.': 'Filen $1 er tom.'\n'Template object $1 was renamed to $2.': 'Skabelon objektet $1 blev omdøbt til $2.'\n'Template object $1 was deleted.': 'Skabelon objektet $1 blev slettet.'\n'Template $1 was duplicated into $2.': 'Skabelonen $1 blev kopieret til $2.'\n'Template $1 $2.': 'Skabelon $1 $2.'\n'Something broke': 'Noget gik i udu'\n'Section page template': 'Skabelon for sektions sider'\nSaving..: Gemmer...\n'Saving settings failed.': 'Indstillingerne kunne ikke gemmes.'\n'Save All': 'Gem alt'\n'Required Newscoop version': 'Kræver Newscoop version'\nReplace: Erstat\n'New template $1 created.': 'Ny skabelon $1 oprettet.'\n'New name': 'Nyt navn'\n'Name cant be empty': 'Navn kan ikke være tomt'\n'Last modified': 'Sidst ændret'\n'Issue page': 'Udgivelses side'\n'Go to parent': 'Gå op'\n'Go to $1': 'Gå til $1'\n'Geo Filtering': 'Geo filtrering'\n'Front page template': 'Skabelon for forsiden'\n'File size': 'Fil størrelse'\n'File name': 'Fil navn'\n'File $1 was replaced.': 'Filen $1 blev erstattet.'\n'Failed unassigning theme': 'Temaet kunne ikke tildeles'\nExport: Eksporter\n'Error page template': 'Skabelon for fejlside'\n'Edit $1': 'Rediger $1'\n'Done uploading': 'Upload færdigt'\n'Do you want to override $1?': 'Vil du tilsidesætte $1?'\n'Directory is empty': 'Mappen er tom'\n'Directory $1 created.': 'Mappen $1 oprettet.'\nDesign: Design\n'Delete theme': 'Slet tema'\n'Current directory:': 'Nuværende mappe:'\n'Create folder': 'Opret mappe'\n'Create file': 'Opret fil'\n'Copy to available themes': 'Kopier til tilgængelige temaer'\n'Copied successfully': 'Kopiering lykkedes'\nCompatibility: Kompatibilitet\n'Click to enlarge': 'Klik for at forstørre'\n'Choose destination': 'Vælg destination'\n'Cant override directory $1.': 'Mappen $1 kan ikke tilsidesættes.'\n'Cache Lifetime': 'Levetid for cachen'\n'Browse for the theme': 'Vælg tema'\n'Assigned successfully': Tildelt\n'Article page template': 'Skabelon for artikel sider'\n'Article page': 'Artikel side'\n'Are you sure you want to unassign this theme?': 'Vil du fjerne temaet?'\n'Are you sure you want to delete this theme?': 'Vil du slette temaet?'\n'Add to publication': 'Føj til publikation'\n'$1 is not writable': '$1 er ikke skrivbar'\n'$1 $2': '$1 $2'\n'$1 files $2': '$1 filer $2'\n'Available themes': 'Tilgængelige temaer'\n'Update cached data': 'Opdater cachede data'\n'Assigned templates': 'Tildelte skabeloner'\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.de.yml",
    "content": "'Duplicate assignment': 'Doppelte Zuordnung'\nTemplates: Templates\n'Import theme': 'Designvorlage importieren'\n'Import succeeded!': 'Import erfolgreich.'\n'Import failed!': 'Import fehlgeschlagen. '\n'Edit template: $1': 'Designvorlage bearbeiten: $1'\n'Set new name to': 'Neuen Namen einstellen für'\n'Rename file': 'Datei umbenennen'\n'Caching templates in:': 'Templates Caching in: '\n'Caching templates finished': 'Caching des Templates abgeschlossen'\n'Theme name': 'Name der Designvorlage'\n'Theme is assigned and can not be deleted': 'Die Designvorlage ist zugewiesen und kann nicht gelöscht werden'\n'Theme export was not successful. Check please that the server is not out of disk space.': 'Der Designvorlagen-Export war nicht erfolgreich. Bitte überprüfen Sie, ob der Server genug Speicherplatz hat. '\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': 'Die Designvorlage kann nicht entkoppelt werden, weil es für die Ausgabe ($1) in dieser Publikation in Gebrauch ist. '\nzip: zip\nversion: Version\nuploaded: Hochgeladen\nupdated: Aktualisiert\n'or higher': 'oder höher'\nmoved: verschoben\ninstalled: installiert\ndeleted: gelöscht\n'You must select at least one template to perform an action.': 'Sie müssen mindestens eine Template auswählen um eine Aktion auszuführen.'\nUpload: Upload\n'Unassign theme': 'Designvorlage entkoppeln'\n'Unassign successful': 'Entkopplung erfolgreich'\nUnassign: Entkoppeln\n'Theme version': 'Designvorlage Version'\n'Theme settings updated.': 'Designvorlagen-Einstellungen aktualisiert'\n'Theme settings saved.': 'Designvorlagen-Einstellungen gespeichert. '\n'Theme name / version': 'Designvorlagen Name / Version'\n'Theme management': Designvorlagen-Verwaltung\n'Theme $1': 'Designvorlage $1'\n'The file $1 is empty.': 'Die Datei $1 ist leer. '\n'Template object $1 was renamed to $2.': 'Template Objekt $1 wurde umbenannt in $2.'\n'Template object $1 was deleted.': 'Template Objekt $1 wurde gelöscht. '\n'Template $1 was duplicated into $2.': 'Template $1 wurde nach $2 dupliziert. '\n'Template $1 $2.': 'Template $1 $2.'\n'Something broke': 'Etwas ist kaputt'\n'Section page template': 'Rubrikenseiten Template'\nSaving..: Speichere...\n'Saving settings failed.': 'Speichern der Einstellungen fehlgeschlagen.'\n'Save All': 'Alle speichern'\n'Required Newscoop version': 'Erforderliche Newscoop Version'\nReplace: Ersetzen\n'New template $1 created.': 'Neues Template $1 angelegt. '\n'New name': 'Neuer Name'\n'Name cant be empty': 'Der Name darf nicht leer sein'\n'Last modified': 'Zuletzt geändert'\n'Issue page': 'Seite der Ausgabe'\n'Go to parent': 'Gehe zu Eltern'\n'Go to $1': 'Gehe zu $1'\n'Geo Filtering': 'Geo Filter'\n'Front page template': 'Startseiten Template'\n'File size': Dateigröße\n'File name': Dateiname\n'File $1 was replaced.': 'Datei  $1 wurde ersetzt. '\n'Failed unassigning theme': 'Entkoppeln der Designvorlage fehlgeschlagen. '\nExport: Exportiere\n'Error page template': 'Fehlerseiten Template'\n'Edit $1': Bearbeiten\n'Done uploading': 'Upload fertig'\n'Do you want to override $1?': 'Wollen Sie $1 überschreiben?'\n'Directory is empty': 'Verzeichnis ist leer. '\n'Directory $1 created.': 'Verzeichnis $1 wurde erstellt.'\nDesign: Design\n'Delete theme': 'Designvorlage löschen'\n'Current directory:': 'Aktuelles Verzeichnis'\n'Create folder': 'Ordner erstellen'\n'Create file': 'Datei erstellen'\n'Copy to available themes': 'In die verfügbaren Designvorlagen kopieren'\n'Copied successfully': 'Erfolgreich kopiert'\nCompatibility: Kompatibilität\n'Click to enlarge': 'Zum Vergrößern klicken. '\n'Choose destination': 'Ziel wählen'\n'Cant override directory $1.': 'Kann das Verzeichnis $1 nicht überschreiben.'\n'Cache Lifetime': 'Cache Laufzeit'\n'Browse for the theme': 'Nach Designvorlage durchsuchen'\n'Assigned successfully': 'Erfolgreich zugewiesen'\n'Article page template': 'Artikelseiten Template'\n'Article page': Artikelseite\n'Are you sure you want to unassign this theme?': 'Sind Sie sicher, dass Sie die Designvorlage entkoppeln wollen?'\n'Are you sure you want to delete this theme?': 'Sind Sie sicher, dass Sie diese Designvorlage löschen wollen?'\n'Add to publication': 'Zur Publikation hinzufügen'\n'$1 is not writable': '$1 ist nicht beschreibbar.'\n'$1 $2': '$1 $2'\n'$1 files $2': '$1 Dateien $2'\n'Available themes': 'Verfügbare Designvorlagen'\n'Update cached data': 'Zwischengespeicherte Daten aktualisieren'\n'Assigned templates': 'Zugewiesene Designvorlagen'\n'Cached informations about theme playlists are not up to date!': 'Zwischengespeicherte Informationen über \"Listen ausgewählter Artikel\" sind nicht auf dem letzten Stand.'\n'The theme''s configuration file does not contain information about the list of used featured articles.': 'Die Konfigurations-Datei der Designvorlage beinhaltet keine Informationen über die verwendeten \"Listen ausgewählter Artikel\".'\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': 'Der untenstehende Code sollte in die Datei theme.xml (between ''theme'' nodes) hineinkopiert werden. Diese Datei findet sich immer im Hauptverzeichnis der Designvorlage.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.de_AT.yml",
    "content": "'Duplicate assignment': 'Doppelte Zuordnung'\nTemplates: Templates\n'Import theme': 'Designvorlage importieren'\n'Import succeeded!': null\n'Import failed!': 'Import fehlgeschlagen. '\n'Edit template: $1': 'Designvorlage bearbeiten: $1'\n'Set new name to': 'Neuen Namen einstellen für'\n'Rename file': 'Datei umbenennen'\n'Caching templates in:': 'Templates Caching in: '\n'Caching templates finished': 'Caching des Templates abgeschlossen'\n'Theme name': 'Name der Designvorlage'\n'Theme is assigned and can not be deleted': 'Die Designvorlage ist zugewiesen und kann nicht gelöscht werden'\n'Theme export was not successful. Check please that the server is not out of disk space.': 'Der Designvorlagen-Export war nicht erfolgreich. Bitte überprüfen Sie, ob der Server genug Speicherplatz hat. '\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': 'Die Designvorlage kann nicht entkoppelt werden, weil es für die Ausgabe ($1) in dieser Publikation in Gebrauch ist. '\nzip: zip\nversion: Version\nuploaded: Hochgeladen\nupdated: Aktualisiert\n'or higher': 'oder höher'\nmoved: verschoben\ninstalled: installiert\ndeleted: gelöscht\n'You must select at least one template to perform an action.': 'Sie müssen mindestens eine Template auswählen um eine Aktion auszuführen.'\nUpload: Upload\n'Unassign theme': 'Designvorlage entkoppeln'\n'Unassign successful': 'Entkopplung erfolgreich'\nUnassign: Entkoppeln\n'Theme version': 'Designvorlage Version'\n'Theme settings updated.': 'Designvorlagen-Einstellungen aktualisiert'\n'Theme settings saved.': 'Designvorlagen-Einstellungen gespeichert. '\n'Theme name / version': 'Designvorlagen Name / Version'\n'Theme management': Designvorlagen-Verwaltung\n'Theme $1': 'Designvorlage $1'\n'The file $1 is empty.': 'Die Datei $1 ist leer. '\n'Template object $1 was renamed to $2.': 'Template Objekt $1 wurde umbenannt in $2.'\n'Template object $1 was deleted.': 'Template Objekt $1 wurde gelöscht. '\n'Template $1 was duplicated into $2.': 'Template $1 wurde nach $2 dupliziert. '\n'Template $1 $2.': 'Template $1 $2.'\n'Something broke': 'Etwas ist kaputt'\n'Section page template': 'Rubrikenseiten Template'\nSaving..: Speichere...\n'Saving settings failed.': 'Speichern der Einstellungen fehlgeschlagen.'\n'Save All': 'Alle speichern'\n'Required Newscoop version': 'Erforderliche Newscoop Version'\nReplace: Ersetzen\n'New template $1 created.': 'Neues Template $1 angelegt. '\n'New name': 'Neuer Name'\n'Name cant be empty': 'Der Name darf nicht leer sein'\n'Last modified': 'Zuletzt geändert'\n'Issue page': 'Seite der Ausgabe'\n'Go to parent': 'Gehe zu Eltern'\n'Go to $1': 'Gehe zu $1'\n'Geo Filtering': 'Geo Filter'\n'Front page template': 'Startseiten Template'\n'File size': Dateigröße\n'File name': Dateiname\n'File $1 was replaced.': 'Datei  $1 wurde ersetzt. '\n'Failed unassigning theme': 'Entkoppeln der Designvorlage fehlgeschlagen. '\nExport: Exportiere\n'Error page template': 'Fehlerseiten Template'\n'Edit $1': Bearbeiten\n'Done uploading': 'Upload fertig'\n'Do you want to override $1?': 'Wollen Sie $1 überschreiben?'\n'Directory is empty': 'Verzeichnis ist leer. '\n'Directory $1 created.': 'Verzeichnis $1 wurde erstellt.'\nDesign: Design\n'Delete theme': 'Designvorlage löschen'\n'Current directory:': 'Aktuelles Verzeichnis'\n'Create folder': 'Ordner erstellen'\n'Create file': 'Datei erstellen'\n'Copy to available themes': 'In die verfügbaren Designvorlagen kopieren'\n'Copied successfully': 'Erfolgreich kopiert'\nCompatibility: Kompatibilität\n'Click to enlarge': 'Zum Vergrößern klicken. '\n'Choose destination': 'Ziel wählen'\n'Cant override directory $1.': 'Kann das Verzeichnis $1 nicht überschreiben.'\n'Cache Lifetime': 'Cache Laufzeit'\n'Browse for the theme': 'Nach Designvorlage durchsuchen'\n'Assigned successfully': 'Erfolgreich zugewiesen'\n'Article page template': 'Artikelseiten Template'\n'Article page': Artikelseite\n'Are you sure you want to unassign this theme?': 'Sind Sie sicher, dass Sie die Designvorlage entkoppeln wollen?'\n'Are you sure you want to delete this theme?': 'Sind Sie sicher, dass Sie diese Designvorlage löschen wollen?'\n'Add to publication': 'Zur Publikation hinzufügen'\n'$1 is not writable': '$1 ist nicht beschreibbar.'\n'$1 $2': '$1 $2'\n'$1 files $2': '$1 Dateien $2'\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.el.yml",
    "content": "'Duplicate assignment': 'Ανάθεση αντιγραφής'\nTemplates: Πρότυπα\n'Import theme': 'Εισαγωγή θέματος'\n'Import succeeded!': null\n'Import failed!': 'Αποτυχία εισαγωγής!'\n'Edit template: $1': 'Επεξεργασία προτύπου: $1'\n'Set new name to': 'Ορισμός νέου ονόματος σε'\n'Rename file': 'Μετονομασία αρχείου'\n'Caching templates in:': 'Προσωρινή αποθήκευση προτύπων σε:'\n'Caching templates finished': 'Η προσωρινή αποθήκευση προτύπων ολοκληρώθηκε'\n'Theme name': 'Όνομα Θέματος'\n'Theme is assigned and can not be deleted': 'Το θέμα έχει ανατεθεί και δεν μπορεί να διαγραφεί'\n'Theme export was not successful. Check please that the server is not out of disk space.': 'Η εξαγωγή θέματος απέτυχε. Παρακαλούμε ελέγξτε τη χωρητικότητα δίσκου του διακομιστή σας.'\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': 'Το θέμα δεν μπορεί να καταργηθεί επειδή χρησιμοποιείται από τεύχη ($1) σε αυτή τη δημοσίευση'\nzip: zip\nversion: εκδοχή\nuploaded: φορτώθηκε\nupdated: ενημερώθηκε\n'or higher': 'ή μεγαλύτερο'\nmoved: μετακινήθηκε\ninstalled: εγκαταστάθηκε\ndeleted: διαγράφηκε\n'You must select at least one template to perform an action.': 'Πεπει να επιλέξετε τουλάχιστον ένα πρότυπο για να πραγματοποιήσετε μια ενέργεια.'\nUpload: Ανέβασμα\n'Unassign theme': 'Αναίρεση εκχώρησης θέματος'\n'Unassign successful': 'Επιτυχής αναίρεση εκχώρησης'\nUnassign: 'Αναίρεση εκχώρησης'\n'Theme version': 'Εκδοχή θέματος'\n'Theme settings updated.': 'Οι ρυθμίσεις θέματος ενημερώθηκαν.'\n'Theme settings saved.': 'Οι ρυθμίσεις θέματος αποθηκεύτηκαν.'\n'Theme name / version': 'Όνομα / εκδοχή θέματος'\n'Theme management': 'Διαχείρηση θέματος'\n'Theme $1': 'Θέμα $1'\n'The file $1 is empty.': 'Το αρχείο $1 είναι άδειο.'\n'Template object $1 was renamed to $2.': 'Το πρότυπο  $1 μετονομάστηκε σε $2.'\n'Template object $1 was deleted.': 'Το αντικείμενο προτύπου  $1 διαγράφηκε.'\n'Template $1 was duplicated into $2.': 'Το πρότυπο $1 αντιγράφηκε σε $2.'\n'Template $1 $2.': 'Πρότυπο $1 $2.'\n'Something broke': 'Κάτι έσπασε'\n'Section page template': 'Πρότυπο σελίδας ενότητας'\nSaving..: Αποθήκευση..\n'Saving settings failed.': 'Αποτυχία αποθήκευσης ρυθμίσεων.'\n'Save All': 'Αποθήκευση Όλων'\n'Required Newscoop version': 'Απαιτείται εκδοχή Newscoop'\nReplace: Αντικατάσταση\n'New template $1 created.': 'Το νέο πρότυπο $1 δημιουργήθηκε.'\n'New name': 'Νέο όνομα'\n'Name cant be empty': 'Το όνομα δεν μπορεί να παραμείνει άδειο'\n'Last modified': 'Τελευταίως τροποποιημένα'\n'Issue page': 'Σελίδα τεύχους'\n'Go to parent': 'Πήγαινε στο γονικό'\n'Go to $1': 'Πηγαίνετε σε $1'\n'Geo Filtering': 'Geo Φιλτράρισμα'\n'Front page template': 'Πρότυπο αρχικής σελίδας'\n'File size': 'Μέγεθος αρχείου'\n'File name': 'Όνομα αρχείου'\n'File $1 was replaced.': 'Το αρχείο $1 αντικαταστάθηκε.'\n'Failed unassigning theme': 'Αποτυχής αναίρεση εκχώρησης'\nExport: Εξαγωγή\n'Error page template': 'Πρότυπο σελίδας σφάλματος'\n'Edit $1': 'Επεξεργασία $1'\n'Done uploading': 'Τέλος ανεβάσματος'\n'Do you want to override $1?': 'Θέλετε να αντικαταστήσετε το $1;'\n'Directory is empty': 'Το ευρετήριο είναι άδειο'\n'Directory $1 created.': 'Ο κατάλογος $1 δημιουργήθηκε.'\nDesign: Σχεδιασμός\n'Delete theme': 'Διαγραφή Θέματος'\n'Current directory:': 'Τρέχον ευρετήριο'\n'Create folder': 'Δημιουργία φακέλου'\n'Create file': 'Δημιουργία αρχείου'\n'Copy to available themes': 'Αντιγραφή σε διαθέσιμα θέματα'\n'Copied successfully': 'Αντιγράφηκε επιτυχώς'\nCompatibility: Συμβατότητα\n'Click to enlarge': 'Κάντε κλίκ για μεγέθυνση'\n'Choose destination': 'Επιλογή προορισμού'\n'Cant override directory $1.': 'Το ευρετήριο $1 δεν μπορεί να αντικατασταθεί.'\n'Cache Lifetime': 'Cache Lifetime'\n'Browse for the theme': 'Αναζήτηση για το θέμα'\n'Assigned successfully': 'Επιτυχής εκχώρηση'\n'Article page template': 'Πρότυπο σελίδας άρθρου'\n'Article page': 'Σελίδα άρθρου'\n'Are you sure you want to unassign this theme?': 'Είστε βέβαιος/η ότι θέλετε να αναιρέσετε την εκχώρηση του θέματος;'\n'Are you sure you want to delete this theme?': 'Είστε βέβαιος/η ότι θέλετε να διαγράψετε αυτό το θέμα;'\n'Add to publication': 'Προσθήκη στη δημοσίευση'\n'$1 is not writable': '$1 δεν είναι εγγράψιμο'\n'$1 $2': ' $1 $2'\n'$1 files $2': '$1 αρχεία $2'\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.en.yml",
    "content": "'Duplicate assignment': 'Duplicate assignment'\nTemplates: Templates\n'Import theme': 'Import theme'\n'Import succeeded!': 'Import succeeded!'\n'Import failed!': 'Import failed!'\n'Edit template: $1': 'Edit template: $1'\n'Set new name to': 'Set new name to'\n'Rename file': 'Rename file'\n'Caching templates in:': 'Caching templates in:'\n'Caching templates finished': 'Caching templates finished'\n'Theme name': 'Theme name'\n'Theme is assigned and can not be deleted': 'Theme is assigned and can not be deleted'\n'Theme export was not successful. Check please that the server is not out of disk space.': 'Theme export was not successful. Check please that the server is not out of disk space.'\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': 'The theme can not be unassigned because it is in use by issues ($1) in this publication'\nzip: zip\nversion: version\nuploaded: uploaded\nupdated: updated\n'or higher': 'or higher'\nmoved: moved\ninstalled: installed\ndeleted: deleted\n'You must select at least one template to perform an action.': 'You must select at least one template to perform an action.'\nUpload: Upload\n'Unassign theme': 'Unassign theme'\n'Unassign successful': 'Unassign successful'\nUnassign: Unassign\n'Theme version': 'Theme version'\n'Theme settings updated.': 'Theme settings updated.'\n'Theme settings saved.': 'Theme settings saved.'\n'Theme name / version': 'Theme name / version'\n'Theme management': 'Theme management'\n'Theme $1': 'Theme $1'\n'The file $1 is empty.': 'The file $1 is empty.'\n'Template object $1 was renamed to $2.': 'Template object $1 was renamed to $2.'\n'Template object $1 was deleted.': 'Template object $1 was deleted.'\n'Template $1 was duplicated into $2.': 'Template $1 was duplicated into $2.'\n'Template $1 $2.': 'Template $1 $2.'\n'Something broke': 'Something broke'\n'Section page template': 'Section page template'\nSaving..: Saving..\n'Saving settings failed.': 'Saving settings failed.'\n'Save All': 'Save All'\n'Required Newscoop version': 'Required Newscoop version'\nReplace: Replace\n'New template $1 created.': 'New template $1 created.'\n'New name': 'New name'\n'Name cant be empty': 'Name cant be empty'\n'Last modified': 'Last modified'\n'Issue page': 'Issue page'\n'Go to parent': 'Go to parent'\n'Go to $1': 'Go to $1'\n'Geo Filtering': 'Geo Filtering'\n'Front page template': 'Front page template'\n'File size': 'File size'\n'File name': 'File name'\n'File $1 was replaced.': 'File $1 was replaced.'\n'Failed unassigning theme': 'Failed unassigning theme'\nExport: Export\n'Error page template': 'Error page template'\n'Edit $1': 'Edit $1'\n'Done uploading': 'Done uploading'\n'Do you want to override $1?': 'Do you want to override $1?'\n'Directory is empty': 'Directory is empty'\n'Directory $1 created.': 'Directory $1 created.'\nDesign: Design\n'Delete theme': 'Delete theme'\n'Current directory:': 'Current directory:'\n'Create folder': 'Create folder'\n'Create file': 'Create file'\n'Copy to available themes': 'Copy to available themes'\n'Copied successfully': 'Copied successfully'\nCompatibility: Compatibility\n'Click to enlarge': 'Click to enlarge'\n'Choose destination': 'Choose destination'\n'Cant override directory $1.': 'Cant override directory $1.'\n'Cache Lifetime': 'Cache Lifetime'\n'Browse for the theme': 'Browse for the theme'\n'Assigned successfully': 'Assigned successfully'\n'Article page template': 'Article page template'\n'Article page': 'Article page'\n'Are you sure you want to unassign this theme?': 'Are you sure you want to unassign this theme?'\n'Are you sure you want to delete this theme?': 'Are you sure you want to delete this theme?'\n'Add to publication': 'Add to publication'\n'$1 is not writable': '$1 is not writable'\n'$1 $2': '$1 $2'\n'$1 files $2': '$1 files $2'\n'Available themes': 'Available themes'\n'Update cached data': 'Update cached data'\n'Assigned templates': 'Assigned templates'\n'Cached informations about theme playlists are not up to date!': 'Cached informations about theme playlists are not up to date!'\n\"The theme's configuration file does not contain information about the list of used featured articles.\": \"The theme's configuration file does not contain information about the list of used featured articles.\"\n\"Below code should be placed into theme.xml (between 'theme' nodes) file to make it work. This file is located in every theme's main directory.\": \"Below code should be placed into theme.xml (between 'theme' nodes) file to make it work. This file is located in every theme's main directory.\"\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.en_GB.yml",
    "content": "'Duplicate assignment': 'Duplicate assignment'\nTemplates: Templates\n'Import theme': 'Import theme'\n'Import succeeded!': 'Import succeeded!'\n'Import failed!': 'Import failed!'\n'Edit template: $1': 'Edit template: $1'\n'Set new name to': 'Set new name to'\n'Rename file': 'Rename file'\n'Caching templates in:': 'Caching templates in:'\n'Caching templates finished': 'Caching templates finished'\n'Theme name': 'Theme name'\n'Theme is assigned and can not be deleted': 'Theme is assigned and can not be deleted'\n'Theme export was not successful. Check please that the server is not out of disk space.': 'Theme export was not successful. Check please that the server is not out of disk space.'\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': 'The theme can not be unassigned because it is in use by issues ($1) in this publication'\nzip: zip\nversion: version\nuploaded: uploaded\nupdated: updated\n'or higher': 'or higher'\nmoved: moved\ninstalled: installed\ndeleted: deleted\n'You must select at least one template to perform an action.': 'You must select at least one template to perform an action.'\nUpload: Upload\n'Unassign theme': 'Unassign theme'\n'Unassign successful': 'Unassign successful'\nUnassign: Unassign\n'Theme version': 'Theme version'\n'Theme settings updated.': 'Theme settings updated.'\n'Theme settings saved.': 'Theme settings saved.'\n'Theme name / version': 'Theme name / version'\n'Theme management': 'Theme management'\n'Theme $1': 'Theme $1'\n'The file $1 is empty.': 'The file $1 is empty.'\n'Template object $1 was renamed to $2.': 'Template object $1 was renamed to $2.'\n'Template object $1 was deleted.': 'Template object $1 was deleted.'\n'Template $1 was duplicated into $2.': 'Template $1 was duplicated into $2.'\n'Template $1 $2.': 'Template $1 $2.'\n'Something broke': 'Something broke'\n'Section page template': 'Section page template'\nSaving..: Saving..\n'Saving settings failed.': 'Saving settings failed.'\n'Save All': 'Save All'\n'Required Newscoop version': 'Required Newscoop version'\nReplace: Replace\n'New template $1 created.': 'New template $1 created.'\n'New name': 'New name'\n'Name cant be empty': 'Name can not be empty'\n'Last modified': 'Last modified'\n'Issue page': 'Issue page'\n'Go to parent': 'Go to parent'\n'Go to $1': 'Go to $1'\n'Geo Filtering': 'Geo Filtering'\n'Front page template': 'Front page template'\n'File size': 'File size'\n'File name': 'File name'\n'File $1 was replaced.': 'File $1 was replaced.'\n'Failed unassigning theme': 'Failed unassigning theme'\nExport: Export\n'Error page template': 'Error page template'\n'Edit $1': 'Edit $1'\n'Done uploading': 'Done uploading'\n'Do you want to override $1?': 'Do you want to override $1?'\n'Directory is empty': 'Directory is empty'\n'Directory $1 created.': 'Directory $1 created.'\nDesign: Design\n'Delete theme': 'Delete theme'\n'Current directory:': 'Current directory:'\n'Create folder': 'Create folder'\n'Create file': 'Create file'\n'Copy to available themes': 'Copy to available themes'\n'Copied successfully': 'Copied successfully'\nCompatibility: Compatibility\n'Click to enlarge': 'Click to enlarge'\n'Choose destination': 'Choose destination'\n'Cant override directory $1.': 'Can not override directory $1.'\n'Cache Lifetime': 'Cache Lifetime'\n'Browse for the theme': 'Browse for the theme'\n'Assigned successfully': 'Assigned successfully'\n'Article page template': 'Article page template'\n'Article page': 'Article page'\n'Are you sure you want to unassign this theme?': 'Are you sure you want to unassign this theme?'\n'Are you sure you want to delete this theme?': 'Are you sure you want to delete this theme?'\n'Add to publication': 'Add to publication'\n'$1 is not writable': '$1 is not writable'\n'$1 $2': '$1 $2'\n'$1 files $2': '$1 files $2'\n'Available themes': 'Available themes'\n'Update cached data': 'Update cached data'\n'Assigned templates': 'Assigned templates'\n'Cached informations about theme playlists are not up to date!': 'Cached information about theme playlists is not up to date!'\n'The theme''s configuration file does not contain information about the list of used featured articles.': 'The theme''s configuration file does not contain information about the list of featured articles used.'\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': 'The code below should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.es.yml",
    "content": "'Duplicate assignment': 'Duplicar tarea'\nTemplates: Plantillas\n'Import theme': 'Importar Temas'\n'Import succeeded!': null\n'Import failed!': '¡Importe fallido!'\n'Edit template: $1': 'Editar plantilla: $1'\n'Set new name to': 'Renombrar como'\n'Rename file': 'Renombrar archivo'\n'Caching templates in:': 'Reunir plantillas en'\n'Caching templates finished': 'Reunión de plantillas finalizada'\n'Theme name': 'Nombre de tema'\n'Theme is assigned and can not be deleted': 'El tema está asignado y no puede eliminarse'\n'Theme export was not successful. Check please that the server is not out of disk space.': 'Exportación del tema fallida. Revisa que el servidor no esté saturado.'\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': 'El tema no puede asignarse porque está en uso por las ediciones ($1) en esta publicación'\nzip: zip\nversion: versión\nuploaded: cargado\nupdated: actualizado\n'or higher': 'o mayor'\nmoved: movido\ninstalled: instalado\ndeleted: eliminado\n'You must select at least one template to perform an action.': 'Para poder realizar una acción debe seleccionar por lo menos una plantilla.'\nUpload: Subir\n'Unassign theme': 'Desasignar tema'\n'Unassign successful': 'Desasignación exitosa'\nUnassign: Desasignar\n'Theme version': 'Versión de tema'\n'Theme settings updated.': 'Configuraciones de tema actualizadas'\n'Theme settings saved.': 'Configuraciones de tema guardadas'\n'Theme name / version': 'Nombre del tema / versión'\n'Theme management': 'Manejo de temas'\n'Theme $1': 'Tema $1'\n'The file $1 is empty.': 'El archivo $1 está vacío.'\n'Template object $1 was renamed to $2.': 'Objeto de plantilla $1 fue renombrado como $2.'\n'Template object $1 was deleted.': 'Objeto de plantilla $1 fue eliminado.'\n'Template $1 was duplicated into $2.': 'La plantilla $1 fue duplicada como $2.'\n'Template $1 $2.': 'Plantilla $1 $2'\n'Something broke': 'Algo se rompió'\n'Section page template': 'Plantilla de sección de página'\nSaving..: Guardando...\n'Saving settings failed.': 'La configuración no se guardó correctamente'\n'Save All': 'Guardar todo'\n'Required Newscoop version': 'Versión requerida de Newscoop'\nReplace: Reemplazar\n'New template $1 created.': 'Nueva plantilla $1 creada.'\n'New name': 'Nuevo nombre'\n'Name cant be empty': 'Nombre no puede estar vacío'\n'Last modified': 'Modificado por última vez'\n'Issue page': 'Página de ediciones'\n'Go to parent': 'Ir a raíz'\n'Go to $1': 'Ir a $1'\n'Geo Filtering': 'Geo Filtro'\n'Front page template': 'Plantilla de carátula'\n'File size': 'Tamaño de archivo'\n'File name': 'Nombre de archivo'\n'File $1 was replaced.': 'El archivo $1 fue reemplazado'\n'Failed unassigning theme': 'El tema no se desasignó correctamente'\nExport: Exportar\n'Error page template': 'Error de página de plantilla'\n'Edit $1': 'Editar $1'\n'Done uploading': 'Finalizó la carga'\n'Do you want to override $1?': '¿Desea anular $1?'\n'Directory is empty': 'Directorio vacío.'\n'Directory $1 created.': 'Se creó el directorio $1 '\nDesign: Diseño\n'Delete theme': 'Eliminar tema'\n'Current directory:': 'Directorio actual'\n'Create folder': 'Crear carpeta'\n'Create file': 'Crear archivo'\n'Copy to available themes': 'Copiar a temas disponibles'\n'Copied successfully': 'Copia exitosa'\nCompatibility: Compatibilidad\n'Click to enlarge': 'Clic para agrandar'\n'Choose destination': 'Escoge un destino'\n'Cant override directory $1.': 'No puede anularse el directorio $1'\n'Cache Lifetime': 'Vida del Cahe'\n'Browse for the theme': 'Buscar tema'\n'Assigned successfully': 'Asignado exitosamente'\n'Article page template': 'Plantilla de página de artículo'\n'Article page': 'Página de artículo'\n'Are you sure you want to unassign this theme?': '¿Está seguro de que desea desasignar este tema?'\n'Are you sure you want to delete this theme?': '¿Está seguro de que desea eliminar este tema?'\n'Add to publication': 'Agregar a publicación'\n'$1 is not writable': '$1 no es editable'\n'$1 $2': '$1 $2'\n'$1 files $2': '$1 archivos $2'\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.es_AR.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.fa.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.fa_AF.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.fr.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: Téléchargement\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.he.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.hr.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.hu.yml",
    "content": "'Duplicate assignment': 'Kettős hozzárendelés'\nTemplates: Sablonok\n'Import theme': 'Téma importálása'\n'Import succeeded!': null\n'Import failed!': 'Nem sikerült az importálás!'\n'Edit template: $1': 'Sablon szerkesztése: $1'\n'Set new name to': 'Új név beállítása'\n'Rename file': 'Fájl átnevezése'\n'Caching templates in:': 'Sablonok gyorsítótárazásának helye:'\n'Caching templates finished': 'A sablonok gyorsítótárazása befejeződött'\n'Theme name': 'A téma neve'\n'Theme is assigned and can not be deleted': 'A téma hozzá van rendelve és nem törölhető'\n'Theme export was not successful. Check please that the server is not out of disk space.': 'A téma exportálása nem sikerült. Ellenőrizd, hogy nem fogyott-e el a lemezterület a kiszolgálón.'\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': 'Nem lehet megszüntetni a téma hozzárendelését, mert használják számok ($1) ebben a kiadványban'\nzip: zip\nversion: verzió\nuploaded: feltöltve\nupdated: frissítve\n'or higher': null\nmoved: áthelyezve\ninstalled: telepítve\ndeleted: törölve\n'You must select at least one template to perform an action.': 'Művelet végrehajtásához ki kell választanod legalább egy sablont.'\nUpload: Feltöltés\n'Unassign theme': 'Téma hozzárendelésének megszüntetése'\n'Unassign successful': 'A hozzárendelés megszüntetése sikerült'\nUnassign: 'Hozzárendelés megszüntetése'\n'Theme version': 'Téma verziószáma'\n'Theme settings updated.': 'A téma beállításainak frissítése megtörtént.'\n'Theme settings saved.': 'A téma beállításainak mentése megtörtént.'\n'Theme name / version': 'Téma neve / verziója'\n'Theme management': Témakezelés\n'Theme $1': '$1 téma'\n'The file $1 is empty.': 'A/z $1 fájl üres.'\n'Template object $1 was renamed to $2.': 'A/z $1 sablonobjektum átnevezése $2 névre megtörtént.'\n'Template object $1 was deleted.': 'A/z $1 sablonobjektum törlése megtörtént.'\n'Template $1 was duplicated into $2.': 'A/z $1 sablon másolásra került a/z $2 sablonba.'\n'Template $1 $2.': '$1 sablon $2.'\n'Something broke': 'Valami elromlott'\n'Section page template': 'Rovatlap sablonja'\nSaving..: Mentés...\n'Saving settings failed.': 'Nem sikerült menteni a beállításokat.'\n'Save All': 'Az összes mentése'\n'Required Newscoop version': 'Szükséges Newscoop-verzió'\nReplace: Csere\n'New template $1 created.': 'Az új $1 sablon létrehozása megtörtént.'\n'New name': 'Új név'\n'Name cant be empty': 'A név nem lehet üres'\n'Last modified': 'Utolsó módosítás'\n'Issue page': Számlap\n'Go to parent': 'Ugrás a szülőre'\n'Go to $1': 'Ugrás a következőre: $1 '\n'Geo Filtering': 'Földrajzi szűrés'\n'Front page template': Címlapsablon\n'File size': Fájlméret\n'File name': Fájlnév\n'File $1 was replaced.': 'A/z $1 fájl kicserélése megtörtént.'\n'Failed unassigning theme': 'Nem sikerült megszüntetni a téma hozzárendelését'\nExport: Exportálás\n'Error page template': Hibaoldalsablon\n'Edit $1': 'A/z $1 szerkesztése'\n'Done uploading': 'A feltöltés kész'\n'Do you want to override $1?': 'Kívánod felülbírálni a következőt: $1?'\n'Directory is empty': 'A könyvtár üres'\n'Directory $1 created.': 'A/z $1 könyvtár létrehozása megtörtént.'\nDesign: null\n'Delete theme': 'Téma törlése'\n'Current directory:': 'Jelenlegi könyvtár:'\n'Create folder': 'Mappa létrehozása'\n'Create file': 'Fájl létrehozása'\n'Copy to available themes': 'Másolás létező témákba'\n'Copied successfully': 'A másolás sikerült'\nCompatibility: Kompatibilitás\n'Click to enlarge': 'Kattints a nagyításhoz'\n'Choose destination': 'Válassz célt'\n'Cant override directory $1.': 'A/z $1 könyvtár nem írható felül.'\n'Cache Lifetime': 'Gyorsítótár élettartama'\n'Browse for the theme': 'Keresd meg a témát'\n'Assigned successfully': 'A hozzárendelés sikerült.'\n'Article page template': Cikklapsablon\n'Article page': Cikklap\n'Are you sure you want to unassign this theme?': 'Biztosan meg akarod szüntetni ennek a témának a hozzárendelését?'\n'Are you sure you want to delete this theme?': 'Biztosan törölni akarod ezt a témát?'\n'Add to publication': 'Hozzáadás kiadványhoz'\n'$1 is not writable': 'A/z $1 nem írható'\n'$1 $2': '$1 $2'\n'$1 files $2': '$1 fájlok $2'\n'Available themes': 'Elérhető témák'\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.hy.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': 'Import succeeded!'\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': 'Available themes'\n'Update cached data': 'Update cached data'\n'Assigned templates': 'Assigned templates'\n'Cached informations about theme playlists are not up to date!': 'Cached informations about theme playlists are not up to date!'\n'The theme''s configuration file does not contain information about the list of used featured articles.': 'The theme''s configuration file does not contain information about the list of used featured articles.'\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': 'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.hy_AM.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.id.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.it.yml",
    "content": "'Duplicate assignment': 'Assegnazione duplicata'\nTemplates: Template\n'Import theme': 'Importa tema'\n'Import succeeded!': null\n'Import failed!': 'Importazione fallita!'\n'Edit template: $1': 'Modifica template: $1'\n'Set new name to': 'Cambia il nome in '\n'Rename file': 'Rinomina il file'\n'Caching templates in:': 'Cache template in:'\n'Caching templates finished': 'Caching dei template completata'\n'Theme name': 'Nome del tema'\n'Theme is assigned and can not be deleted': 'Il tema è assegnato e non può essere eliminato'\n'Theme export was not successful. Check please that the server is not out of disk space.': 'Lesportazione del tema non ha avuto successo. Verifica che il server non abbia esaurito lo spazio disco.'\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': 'Il tema non può essere sganciato perchè è usato da edizioni ($1) di questa pubblicazione'\nzip: zip\nversion: versione\nuploaded: caricato\nupdated: aggiornato\n'or higher': 'o maggiore'\nmoved: spostato\ninstalled: installato\ndeleted: eliminato\n'You must select at least one template to perform an action.': 'Devi selezionare almeno un template su cui eseguire unazione.'\nUpload: Carica\n'Unassign theme': 'Sgancia tema'\n'Unassign successful': 'Sganciamento completato'\nUnassign: Sgancia\n'Theme version': 'Versione tema'\n'Theme settings updated.': 'Impostazioni del tema aggiornate.'\n'Theme settings saved.': 'Opzioni tema salvate.'\n'Theme name / version': 'Nome / versione tema'\n'Theme management': 'Gestione tema'\n'Theme $1': 'Tema $1'\n'The file $1 is empty.': 'Il file $1 è vuoto.'\n'Template object $1 was renamed to $2.': 'Loggetto template $1 è stato rinominato in $2.'\n'Template object $1 was deleted.': 'Loggetto template $1 e stato eliminato.'\n'Template $1 was duplicated into $2.': 'Il template $1 e stato duplicato in $2'\n'Template $1 $2.': 'Template $1 $2.'\n'Something broke': 'Qualcosa e danneggiato'\n'Section page template': 'Template della sezione pagina'\nSaving..: Salvataggio...\n'Saving settings failed.': 'Salvataggio delel impostazioni fallito.'\n'Save All': 'Salva tutto'\n'Required Newscoop version': 'Versione di Newscoop richiesta'\nReplace: Sovrascrivi\n'New template $1 created.': 'Nuovo template $1 creato.'\n'New name': 'Nuovo nome'\n'Name cant be empty': 'Il nome non può essere vuoto'\n'Last modified': 'Ultima modifica'\n'Issue page': 'Pagina edizione'\n'Go to parent': 'Torna su'\n'Go to $1': 'Vai a $1'\n'Geo Filtering': 'Filtro geolocale'\n'Front page template': 'Template prima pagina'\n'File size': 'Dimensione file'\n'File name': 'Nome file'\n'File $1 was replaced.': 'Il file $1 è stato sovrascritto.'\n'Failed unassigning theme': 'Fallito lo sganciamento del tema'\nExport: Esporta\n'Error page template': 'Template pagina di errore'\n'Edit $1': 'Modifica $1'\n'Done uploading': 'Upload completato'\n'Do you want to override $1?': 'Sovrascrivere $1?'\n'Directory is empty': 'Directory vuota'\n'Directory $1 created.': 'Directory $1 creata.'\nDesign: Design\n'Delete theme': 'Elimina tema'\n'Current directory:': 'Cartella corrente:'\n'Create folder': 'Crea cartella'\n'Create file': 'Crea file'\n'Copy to available themes': 'Copia ai temi disponibili'\n'Copied successfully': 'Copia completata'\nCompatibility: Compatibilità\n'Click to enlarge': 'Clicca per ingrandire'\n'Choose destination': 'Scegli destinazione'\n'Cant override directory $1.': 'Impossibile sovrascrivere la cartella $1.'\n'Cache Lifetime': 'Validità della cache'\n'Browse for the theme': 'Scegli il tema'\n'Assigned successfully': Assegnato\n'Article page template': 'Template pagina articolo'\n'Article page': 'Pagina articolo'\n'Are you sure you want to unassign this theme?': 'Vuoi davvero sganciare questo tema?'\n'Are you sure you want to delete this theme?': 'Vuoi davvero eliminare questo tema?'\n'Add to publication': 'Aggiungi a pubblicazione'\n'$1 is not writable': 'Non è possibile scrivere in $1'\n'$1 $2': '$1 $2'\n'$1 files $2': '$1 file $2'\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.ka.yml",
    "content": "'Duplicate assignment': 'დუპლიკატი დავალება'\nTemplates: შაბლონები\n'Import theme': 'თემის იმპორტირება'\n'Import succeeded!': null\n'Import failed!': 'იმპორტი წარუმატებელია!'\n'Edit template: $1': 'შაბლონის რედაქტირება: $1'\n'Set new name to': 'ახალი სახელის მინიჭება'\n'Rename file': 'ფაილის სახელის შეცვლა'\n'Caching templates in:': 'შაბლონების კეშირება'\n'Caching templates finished': 'შაბლონების კეშირება დასრულდა'\n'Theme name': 'თემის სახელი'\n'Theme is assigned and can not be deleted': 'თემა მიბმულია და მისი წაშლა შეუძლებელია'\n'Theme export was not successful. Check please that the server is not out of disk space.': 'თემის ექსპორტირება უშედეგოდ დასრულდა. შეამოწმეთ არის თუ არა სერვერზე არის საკმარისი სივრცე.'\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': 'თემის მოხსნა შეუძლებელია რადგანაც იგი გამოყენებულია ამ პუბლიკაციის გამოცემაში ($1)'\nzip: zip\nversion: ვერსია\nuploaded: აიტვირთა\nupdated: განახლდა\n'or higher': 'ან უფრო დიდი'\nmoved: გადავიდა\ninstalled: დაინსტალირებულია\ndeleted: წაიშალა\n'You must select at least one template to perform an action.': 'აირჩიეთ მინიმუმ ერთი შაბლონი'\nUpload: ატვირთვა\n'Unassign theme': 'თემის მოხსნა'\n'Unassign successful': 'წარმატებით მოიხსნა'\nUnassign: მოხსნა\n'Theme version': 'თემის ვერსია'\n'Theme settings updated.': 'თემის პარამეტრები განახლდა'\n'Theme settings saved.': 'თემის პარამეტრები დამახსოვრდა.'\n'Theme name / version': 'თემის სახელი / ვერსია'\n'Theme management': 'თემის მართვა'\n'Theme $1': '$1 თემა'\n'The file $1 is empty.': '$1 ფაილი ცარიელია'\n'Template object $1 was renamed to $2.': 'შაბლონის ობიექტს $1 გადაერქვა: $2'\n'Template object $1 was deleted.': 'შაბლონის ობიქტი $1 წაიშალა.'\n'Template $1 was duplicated into $2.': '$1 შაბლონი დუბლირებულია $2-ში'\n'Template $1 $2.': 'შაბლონი $1 $2'\n'Something broke': 'რაღაც არ მუშაობს'\n'Section page template': 'სექციის გვერდის შაბლონი'\nSaving..: 'მიმდინარეობს დამახსოვრება..'\n'Saving settings failed.': 'პარამეტრების დამახსოვრება ვერ მოხერხდა.'\n'Save All': 'ყველაფრის დამახსოვრება'\n'Required Newscoop version': 'მოთხოვნილი Newscoop ვერსია'\nReplace: ჩანაცვლება\n'New template $1 created.': 'ახალი შაბლონი $1 შეიქმნა.'\n'New name': 'ახალი სახელი'\n'Name cant be empty': 'სახელი არ შეიძლება იყოს ცარიელი'\n'Last modified': 'ბოლო მოდიფიკაცია'\n'Issue page': 'გამოცემის გვერდი'\n'Go to parent': 'საწყისზე გადასვლა'\n'Go to $1': '$1-ზე გადასვლა'\n'Geo Filtering': 'გეოგრაფიული ფილტრაცია'\n'Front page template': 'მთავარი გვერდის შაბლონი'\n'File size': 'ფაილის ზომა'\n'File name': 'ფაილის სახელი'\n'File $1 was replaced.': '$ ფაილი ჩანაცვლდა.'\n'Failed unassigning theme': 'თემის მოხსნა ვერ მოხერხდა'\nExport: ექსპორტი\n'Error page template': 'გვერდის შაბლონის შეცდომა'\n'Edit $1': 'რედაქტირება $1'\n'Done uploading': აიტვირთა\n'Do you want to override $1?': 'გსურთ $1-ზე გადაწერა?'\n'Directory is empty': 'დირექტორია ცარიელია'\n'Directory $1 created.': '$1 დირექტორია შეიქმნა.'\nDesign: დიზაინი\n'Delete theme': 'თემის წაშლა'\n'Current directory:': 'მიმდინარე დირექტორია'\n'Create folder': 'ფოლდერის შექმნა'\n'Create file': 'ფაილის შექმნა'\n'Copy to available themes': 'არსებულ თემაში კოპირება'\n'Copied successfully': კოპირებულია\nCompatibility: შეთავსებადობა\n'Click to enlarge': 'დააჭირეთ გასადიდებლად'\n'Choose destination': 'აირჩიეთ დირექტორია'\n'Cant override directory $1.': 'შეუძლებელია $1 ინსტრუქციის უკუგდება.'\n'Cache Lifetime': 'კეში-მეხსიერების სიცოცხლის ხანგრძლივობა'\n'Browse for the theme': 'თემის ძიება'\n'Assigned successfully': მიება\n'Article page template': 'სტატიის გვერდის შაბლონი'\n'Article page': 'სტატიის გვერდი'\n'Are you sure you want to unassign this theme?': 'დარწმუნებული ხართ რომ გსურთ ამ თემის მოხსნა?'\n'Are you sure you want to delete this theme?': 'დარწმუნებული ხართ რომ გსურთ ამ თემის წაშლა?'\n'Add to publication': 'პუბლიკაზე დამატება'\n'$1 is not writable': '$1 არ არის ჩაწერადი'\n'$1 $2': '$1 $2'\n'$1 files $2': '$1 ფაილები $2'\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.ko.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.ku.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.lv.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.mr.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.nb_NO.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.nl.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.pa.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.pl.yml",
    "content": "'Duplicate assignment': 'Podwójnie przydzielone'\nTemplates: Szablony\n'Import theme': 'Importuj motyw'\n'Import succeeded!': 'Import zakończył się sukcesem!'\n'Import failed!': 'Import nie powiódł się.'\n'Edit template: $1': 'Edytuj szablon: $1'\n'Set new name to': 'Ustaw nową nazwę na'\n'Rename file': 'Zmiana nazwy pliku'\n'Caching templates in:': 'Zapisz cache szablonów w:'\n'Caching templates finished': 'Zapisywanie cache szablonów zakończone'\n'Theme name': 'Nazwa motywu'\n'Theme is assigned and can not be deleted': 'Motyw jest przydzielony i nie może zostać usunięty'\n'Theme export was not successful. Check please that the server is not out of disk space.': 'Eksport motywu nie powiódł się. Sprawdź czy masz wystarczającą ilość wolnego miejsca na dysku.'\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': 'Motyw nie może zostać wyłączony ponieważ jest używany przez wydanie ($1) w tej publikacji'\nzip: zip\nversion: wersja\nuploaded: wgrany\nupdated: zaktualizowany\n'or higher': 'lub wiekszy'\nmoved: przeniesiony\ninstalled: zainstalowany\ndeleted: usuniety\n'You must select at least one template to perform an action.': 'Musisz wybrać co najmniej jeden szablon aby rozpoczać akcję'\nUpload: Wgraj\n'Unassign theme': 'Wyłącz ten motyw'\n'Unassign successful': 'Wyłączanie zakończyło się powodzeniem'\nUnassign: Wyłącz\n'Theme version': 'Wersja motywu'\n'Theme settings updated.': 'Ustawienia motywu zostały zaktualizowane.'\n'Theme settings saved.': 'Ustawienia motywu zostały zapisane.'\n'Theme name / version': 'Nazwa / wersja motywu'\n'Theme management': 'Zarządzanie motywami'\n'Theme $1': 'Motyw $1'\n'The file $1 is empty.': 'Plik $1 jest pusty.'\n'Template object $1 was renamed to $2.': 'Nazwa szblonu $1 została zmieniona na $2'\n'Template object $1 was deleted.': 'Szablon $1 został usunięty.'\n'Template $1 was duplicated into $2.': 'Szablon $1 został skopiowany do $2'\n'Template $1 $2.': 'Szablon $1 $2'\n'Something broke': 'Coś się zepsuło'\n'Section page template': 'Szablon strony sekcji'\nSaving..: Zapisywanie..\n'Saving settings failed.': 'Zapisywanie ustawień nie powiodło się'\n'Save All': 'Zapisz wszystko'\n'Required Newscoop version': 'Wymagana wersja Newscoopa'\nReplace: Zamień\n'New template $1 created.': 'Utworzony nowy szablon  $1.'\n'New name': 'Nowa nazwa'\n'Name cant be empty': 'Nazwa nie może być pusta'\n'Last modified': 'Ostatnia modyfikacja'\n'Issue page': 'Strona wydania'\n'Go to parent': 'Idź do rodzica'\n'Go to $1': 'idź do $1'\n'Geo Filtering': Geo-filtrowanie\n'Front page template': 'Szablon strony głównej'\n'File size': 'Rozmiar pliku'\n'File name': 'Nazwa pliku'\n'File $1 was replaced.': 'Plik $1 został zamieniony.'\n'Failed unassigning theme': 'Nie udało się wyłaczyć motywu'\nExport: Eksport\n'Error page template': 'Szablon strony błędu'\n'Edit $1': 'Edytuj $1'\n'Done uploading': 'Wgrywanie zakończone'\n'Do you want to override $1?': 'Chcesz nadpisać $1?'\n'Directory is empty': 'Katalog jest pusty'\n'Directory $1 created.': 'Folder $1 utworzony'\nDesign: Projekt\n'Delete theme': 'Usuń motyw'\n'Current directory:': 'Aktualny katalog'\n'Create folder': 'Utwórz folder'\n'Create file': 'Utwórz plik'\n'Copy to available themes': 'Skopiuj do dostępnych motywow'\n'Copied successfully': 'Kopiowanie zakończone sukcesem'\nCompatibility: Kompatybilność\n'Click to enlarge': 'Kliknij aby powiększyć'\n'Choose destination': 'Wybierz cel'\n'Cant override directory $1.': 'Nie można nadpisać katalogu $1'\n'Cache Lifetime': 'Długość działania cache'\n'Browse for the theme': 'Przeglądaj szablony'\n'Assigned successfully': 'Włączanie zakończone sukcesem.'\n'Article page template': 'Szablon strony artykułu'\n'Article page': 'Strona artykułu'\n'Are you sure you want to unassign this theme?': 'Jesteś pewien e chcesz wyłączyć ten motyw?'\n'Are you sure you want to delete this theme?': 'Jesteś pewien że chcesz usunąć ten motyw?'\n'Add to publication': 'Dodaj do publikacji'\n'$1 is not writable': 'Brak praw zapisu dla $1'\n'$1 $2': '$1 $2'\n'$1 files $2': '$1 pliki $2'\n'Available themes': 'Dostępne szablony'\n'Update cached data': null\n'Assigned templates': 'Dołączone szablony'\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.ps.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.pt.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.pt_BR.yml",
    "content": "'Duplicate assignment': null\nTemplates: Templates\n'Import theme': 'Importar o tema'\n'Import succeeded!': null\n'Import failed!': 'Importação fracassou!'\n'Edit template: $1': 'Editar template: $1'\n'Set new name to': 'Dar novo nome para'\n'Rename file': 'Mudar o nome do arquivo'\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': 'Nome do tema'\n'Theme is assigned and can not be deleted': 'O tema foi designado e não pode ser apagado'\n'Theme export was not successful. Check please that the server is not out of disk space.': 'Exportação do tema fracassou. Por favor verifique se o servidor tem bastante espaço livre.'\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: versão\nuploaded: 'Upload completado'\nupdated: atualizado\n'or higher': 'ou mais'\nmoved: movido\ninstalled: instalado\ndeleted: removido\n'You must select at least one template to perform an action.': 'Tem que selecionar pelo menos um template para realizar uma ação.'\nUpload: Upload\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': 'Versão do tema'\n'Theme settings updated.': 'Preferências do tema foram atualizadas.'\n'Theme settings saved.': 'Preferências do tema foram '\n'Theme name / version': 'Nome / versão do tema'\n'Theme management': 'Gerenciamento do tema'\n'Theme $1': 'Tema $1'\n'The file $1 is empty.': 'Arquivo $1 está vazio.'\n'Template object $1 was renamed to $2.': 'Objeto do template $1 foi renomeado para $2.'\n'Template object $1 was deleted.': 'Objeto do template $1 foi apagado.'\n'Template $1 was duplicated into $2.': 'Template $1 foi duplicado para $2.'\n'Template $1 $2.': ' Template $1 $2.'\n'Something broke': 'Algo quebrou'\n'Section page template': 'Template da página da seção'\nSaving..: Salvando...\n'Saving settings failed.': 'Falha ao salvar configurações.'\n'Save All': 'Salvar tudo'\n'Required Newscoop version': 'Versão do Newscoop necessária'\nReplace: Substituir\n'New template $1 created.': 'Novo template  $1 foi criado.'\n'New name': 'Nome novo'\n'Name cant be empty': 'Nome não pode ficar vazio'\n'Last modified': 'Modificado pela última vez'\n'Issue page': 'Página da edição'\n'Go to parent': null\n'Go to $1': 'Ir para $1'\n'Geo Filtering': Geofiltragem\n'Front page template': 'Template da página principal'\n'File size': 'Tamanho do arquivo'\n'File name': 'Nome do arquivo'\n'File $1 was replaced.': 'Arquivo $1 foi substituido.'\n'Failed unassigning theme': null\nExport: Exportar\n'Error page template': 'Erro no template da página'\n'Edit $1': 'Editar $1'\n'Done uploading': 'Upload terminado'\n'Do you want to override $1?': 'Quer substituir $1?'\n'Directory is empty': 'O diretório está vazio'\n'Directory $1 created.': 'Diretório $1 foi criado.'\nDesign: Design\n'Delete theme': 'Apagar o tema'\n'Current directory:': 'Diretório atual:'\n'Create folder': 'Criar pasta'\n'Create file': 'Criar arquivo'\n'Copy to available themes': 'Copiar para temas disponíveis'\n'Copied successfully': Copiado\nCompatibility: Compatibilidade\n'Click to enlarge': 'Clicar para ampliar'\n'Choose destination': 'Escolher destino'\n'Cant override directory $1.': 'Não é possível substituir diretório $1.'\n'Cache Lifetime': 'Duração do cache'\n'Browse for the theme': 'Navegar para o tema'\n'Assigned successfully': null\n'Article page template': 'Template da página do artigo'\n'Article page': 'Página do artigo'\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': 'Tem certeza que quer apagar este tema?'\n'Add to publication': 'Adicionar a publicação'\n'$1 is not writable': null\n'$1 $2': '$1 $2'\n'$1 files $2': '$1 arquivos $2'\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.ro.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': 'Salvează totul'\n'Required Newscoop version': null\nReplace: Înlocuieşte\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': 'Ultima modificare'\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': 'Directorul $1 a fost creat.'\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.ru.yml",
    "content": "'Duplicate assignment': 'Дублировать задание'\nTemplates: Шаблоны\n'Import theme': 'Импорт тем (шаблонов)'\n'Import succeeded!': 'Импорт прошел успешно'\n'Import failed!': 'Импорт не удался'\n'Edit template: $1': 'Редактировать шаблон: $1'\n'Set new name to': 'Назначить новое имя для'\n'Rename file': 'Переименовать файл'\n'Caching templates in:': 'Кэширование шаблонов в: '\n'Caching templates finished': 'Кэширование шаблонов завершено'\n'Theme name': 'Название темы (шаблона)'\n'Theme is assigned and can not be deleted': 'Тема (шаблон) назначена и не может быть удалена'\n'Theme export was not successful. Check please that the server is not out of disk space.': 'Экспорт темы (шаблона) не удался. Пожалуйста, убедитесь в том, что дискового пространства сервера достаточно.'\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': 'Тему нельзя отменить, поскольку в данном издании она используется выпусками ($1)'\nzip: zip\nversion: версия\nuploaded: загружено\nupdated: обновлено\n'or higher': 'или выше'\nmoved: перемещено\ninstalled: установлено\ndeleted: удалено\n'You must select at least one template to perform an action.': 'Вы должны выбрать по меньшей мере один шаблон чтобы произвести действие.'\nUpload: Загрузить\n'Unassign theme': 'Отменить тему (шаблон)'\n'Unassign successful': 'Тема отменена успешно'\nUnassign: Отменить\n'Theme version': 'Версия темы (шаблона)'\n'Theme settings updated.': 'Настройки темы обновлены.'\n'Theme settings saved.': 'Настройки темы сохранены.'\n'Theme name / version': 'Название / версия темы (шаблона)'\n'Theme management': 'Управление темами (наборами шаблонов)'\n'Theme $1': 'Тема $1'\n'The file $1 is empty.': 'Файл  $1 пуст.'\n'Template object $1 was renamed to $2.': 'Объект шаблона  $1 был переименован в  $2.'\n'Template object $1 was deleted.': 'Объект шаблона  $1 был удален.'\n'Template $1 was duplicated into $2.': 'Для шаблона  $1 был создан дубликат  $2.'\n'Template $1 $2.': 'Шаблон  $1  $2.'\n'Something broke': 'Что-то нарушено'\n'Section page template': 'Шаблон страницы рубрики'\nSaving..: Сохраняется...\n'Saving settings failed.': 'Настройки сохранения не удались.'\n'Save All': 'Сохранить все'\n'Required Newscoop version': 'Требуемая версия Newscoop'\nReplace: 'Заменить:'\n'New template $1 created.': 'Создан новый шаблон  $1.'\n'New name': 'Новое название'\n'Name cant be empty': 'Поле названия нельзя оставлять незаполненным'\n'Last modified': 'Последние изменения'\n'Issue page': 'Страница выпуска'\n'Go to parent': 'Перейти к источнику'\n'Go to $1': 'Перейти к  $1'\n'Geo Filtering': 'Гео фильтрация'\n'Front page template': 'Шаблон главной страницы'\n'File size': 'Размер файла'\n'File name': 'Название файла'\n'File $1 was replaced.': 'Файл  $1 был перемещен.'\n'Failed unassigning theme': 'Отмена темы не удалась'\nExport: Экспорт\n'Error page template': 'Шаблон страницы ошибки'\n'Edit $1': 'Редактировать $1'\n'Done uploading': 'Загрузка завершена'\n'Do you want to override $1?': 'Хотите заменить $1?'\n'Directory is empty': 'Директория пуста'\n'Directory $1 created.': 'Папка $1 была создана.'\nDesign: Дизайн\n'Delete theme': 'Удалить тему'\n'Current directory:': 'Текущая директория:'\n'Create folder': 'Создать папку'\n'Create file': 'Создать файл'\n'Copy to available themes': 'Копировать в доступные темы'\n'Copied successfully': 'Скопировано успешно'\nCompatibility: Совместимость\n'Click to enlarge': 'Кликните для увеличения'\n'Choose destination': 'Выберите место назначения'\n'Cant override directory $1.': 'Невозможно заменить директорию $1.'\n'Cache Lifetime': 'Время жизни кэш'\n'Browse for the theme': 'Искать тему'\n'Assigned successfully': 'Успешно назначена'\n'Article page template': 'Шаблон страницы статьи'\n'Article page': 'Страница статьи'\n'Are you sure you want to unassign this theme?': 'Вы уверены, что хотите отменить эту тему?'\n'Are you sure you want to delete this theme?': 'Вы уверены, что хотите удалить эту тему?'\n'Add to publication': 'Добавить к изданию'\n'$1 is not writable': '$1 не является перезаписываемым'\n'$1 $2': '$1 $2'\n'$1 files $2': '$1 файлы $2'\n'Available themes': 'Доступные темы'\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.sh.yml",
    "content": "'Duplicate assignment': null\nTemplates: Šabloni\n'Import theme': 'Uvezi temu'\n'Import succeeded!': null\n'Import failed!': 'Uvoz nije uspeo!'\n'Edit template: $1': 'Uredi šablon: $1'\n'Set new name to': 'Postavi novo ime za'\n'Rename file': 'Preimenuj fajl'\n'Caching templates in:': 'Keširanje šablona u:'\n'Caching templates finished': 'Keširanje šablona završeno'\n'Theme name': 'Naziv teme'\n'Theme is assigned and can not be deleted': 'Tema je dodeljena i ne može biti izbrisana'\n'Theme export was not successful. Check please that the server is not out of disk space.': 'Izvoz teme nije uspeo. Proverite da li ima dovoljno prostora na serveru'\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': 'Teme ne može biti uklonjena jer je u upotrebi za izdanja ($1) u ovoj publikaciji'\nzip: zip\nversion: verzija\nuploaded: aploudovana\nupdated: izmnjena\n'or higher': 'ili veća'\nmoved: premeštena\ninstalled: instalirana\ndeleted: obrisana\n'You must select at least one template to perform an action.': 'Morate izabrati najmanje jedan šablon da bi se mogla izvesti akcija.'\nUpload: Aplouduj\n'Unassign theme': 'Ukloni temu'\n'Unassign successful': 'Uklanjanje uspelo'\nUnassign: Ukloni\n'Theme version': 'Verzija teme'\n'Theme settings updated.': 'Podešavanja teme izmenjena.'\n'Theme settings saved.': 'Podešavanja teme snimljena.'\n'Theme name / version': 'Naziv / verzija teme'\n'Theme management': 'Upravljanje temom'\n'Theme $1': 'Tema $1'\n'The file $1 is empty.': 'Fajl $1 je prazan.'\n'Template object $1 was renamed to $2.': 'Šablon $1 je preimenovan u $2.'\n'Template object $1 was deleted.': 'Šablon $1 je obrisan.'\n'Template $1 was duplicated into $2.': 'Šablon $1 je dupliran u $2.'\n'Template $1 $2.': 'Šablon $1 $2.'\n'Something broke': 'Nešto se pokvarilo'\n'Section page template': 'Šablon za prikaz rubrike'\nSaving..: Snimam...\n'Saving settings failed.': 'Snimanje podešavanja nije uspelo.'\n'Save All': 'Sačuvaj sve'\n'Required Newscoop version': 'Zahtevana verzija Newscoopa'\nReplace: Zameni\n'New template $1 created.': 'Novi šablon $1 kreiran.'\n'New name': 'Novo ime'\n'Name cant be empty': 'Ime ne može biti prazno'\n'Last modified': Izmenjeno\n'Issue page': 'Strana izdanja'\n'Go to parent': 'Idi na matični'\n'Go to $1': 'Idi na $1'\n'Geo Filtering': 'Geo filtriranje'\n'Front page template': 'Šablon za prikaz početne strane'\n'File size': 'Veličina fajla'\n'File name': 'Naziv fajla'\n'File $1 was replaced.': 'Fajl $1 je zamenjen'\n'Failed unassigning theme': 'Neusepšno uklanjanje teme'\nExport: Izvoz\n'Error page template': 'Šablon za prikaz strane o grešci'\n'Edit $1': 'Uredi $1'\n'Done uploading': 'Aploud završen'\n'Do you want to override $1?': 'Želite li da pretabate $1?'\n'Directory is empty': 'Direktorijum je prazan'\n'Directory $1 created.': 'direktorijum $1 je napravljen.'\nDesign: Dizajn\n'Delete theme': 'Obriši temu'\n'Current directory:': 'Trenutni direktorijum:'\n'Create folder': 'Kreiraj folder'\n'Create file': 'Kreiraj fajl'\n'Copy to available themes': 'Kopiraj u dostupne teme'\n'Copied successfully': 'Kopiranje uspelo'\nCompatibility: Kompatibilnost\n'Click to enlarge': 'Klik za uvećanje'\n'Choose destination': 'Izaberi odredište'\n'Cant override directory $1.': 'Nije moguće pretabati direktorijum $1.'\n'Cache Lifetime': 'Dugotrajnost keša'\n'Browse for the theme': 'Potraži temu'\n'Assigned successfully': 'Uspešno dodeljeno'\n'Article page template': 'Šablon za prikaz teksta'\n'Article page': 'Tekst strana'\n'Are you sure you want to unassign this theme?': 'Da li ste sigurni da želite da uklonite temu?'\n'Are you sure you want to delete this theme?': 'Da li ste sigurni da želite da obrišete ovu temu?'\n'Add to publication': 'Dodaj u publikaciju'\n'$1 is not writable': '$1 nema mogućnost upisa'\n'$1 $2': '$1 $2'\n'$1 files $2': '$1 fajlova $2'\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.sq.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.sr.yml",
    "content": "'Duplicate assignment': null\nTemplates: Шаблони\n'Import theme': 'Увези тему'\n'Import succeeded!': null\n'Import failed!': 'Увоз није успео!'\n'Edit template: $1': 'Уреди шаблон: $1'\n'Set new name to': 'Постави ново име за'\n'Rename file': 'Преименуј фајл'\n'Caching templates in:': 'Кеширање шаблона у:'\n'Caching templates finished': 'Кеширање шаблона завршено'\n'Theme name': 'НАзив теме'\n'Theme is assigned and can not be deleted': 'Тема је додељена и не може бити избрисана'\n'Theme export was not successful. Check please that the server is not out of disk space.': 'Извоз теме није успео. Проверите да ли има довољно простора на серверу'\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': 'Тема не може бити уклоњена јер је у употреби за издања ($!) у овој публикацији'\nzip: зип\nversion: верзија\nuploaded: аплоудована\nupdated: измењена\n'or higher': 'или већа'\nmoved: премештена\ninstalled: инсталирана\ndeleted: обрисана\n'You must select at least one template to perform an action.': 'Морате изабрати најмање један шаблон да би се могла извести акција.'\nUpload: Аплоудуј\n'Unassign theme': 'Уклони тему'\n'Unassign successful': 'Уклањање успело'\nUnassign: Уклони\n'Theme version': 'Верзија теме'\n'Theme settings updated.': 'Подешавања теме измењена.'\n'Theme settings saved.': 'Подешавања теме снимљена.'\n'Theme name / version': 'Назив / верзија теме'\n'Theme management': 'Управљање темом'\n'Theme $1': 'Тема $1'\n'The file $1 is empty.': 'Фајл $1је празан.'\n'Template object $1 was renamed to $2.': 'Шаблон $1је преименован у $2.'\n'Template object $1 was deleted.': 'Шаблон $1је обрисан.'\n'Template $1 was duplicated into $2.': 'Шаблон $1је дуплиран у $2.'\n'Template $1 $2.': 'Шаблон $1$2.'\n'Something broke': 'Нешто се покварило'\n'Section page template': 'Шаблон за приказ рубрике'\nSaving..: Снимам...\n'Saving settings failed.': 'Снимање подешавања није успело.'\n'Save All': 'сачувај све'\n'Required Newscoop version': 'Захтевана верзија Newscoopa'\nReplace: Замени\n'New template $1 created.': 'Нови шаблон $1креиран.'\n'New name': 'Ново име'\n'Name cant be empty': 'Име не може бити празно'\n'Last modified': Измењено\n'Issue page': 'Страна издања'\n'Go to parent': 'Иди на матични'\n'Go to $1': 'Иди на $1'\n'Geo Filtering': 'Гео филтрирање'\n'Front page template': 'Шаблон за приказ почетне стране'\n'File size': 'Величина фајла'\n'File name': 'Назив фајла'\n'File $1 was replaced.': 'Фајл $1је замењен'\n'Failed unassigning theme': 'Неуспешно уклањање теме'\nExport: Извоз\n'Error page template': 'Шаблон за приказ стране о грешци'\n'Edit $1': 'Уреди $1'\n'Done uploading': 'Аплоуд завршен'\n'Do you want to override $1?': 'Желите ли да претабате $1?'\n'Directory is empty': 'Директоријум је празан'\n'Directory $1 created.': 'директоријум $1 је направљен'\nDesign: Дизајн\n'Delete theme': 'Обриши тему'\n'Current directory:': 'Тренутни директоријум:'\n'Create folder': 'Креирај фолдер'\n'Create file': 'Креирај фајл'\n'Copy to available themes': 'Копирај у доступне теме'\n'Copied successfully': 'Копирање успело'\nCompatibility: Компатибилност\n'Click to enlarge': 'Клик за увећање'\n'Choose destination': 'Изабери одредиште'\n'Cant override directory $1.': 'Није могуће претабати директоријум $1.'\n'Cache Lifetime': 'Дуготрајност кеша'\n'Browse for the theme': 'Потражи тему'\n'Assigned successfully': 'Успешно додељено'\n'Article page template': 'Шаблон за приказ текста'\n'Article page': 'Текст страна'\n'Are you sure you want to unassign this theme?': 'Да ли сте сигурни да желите да уклоните тему?'\n'Are you sure you want to delete this theme?': 'Да ли сте сигурни да желите да обришете ову тему?'\n'Add to publication': 'Додај у публикацију'\n'$1 is not writable': '$1нема могућност уписа'\n'$1 $2': '$1 $2'\n'$1 files $2': '$1 фајлова $2'\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.sv.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.tr.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.uk.yml",
    "content": "'Duplicate assignment': 'Дублювання призначення'\nTemplates: Шаблони\n'Import theme': 'Імпортувати тему'\n'Import succeeded!': null\n'Import failed!': Неімпортовано\n'Edit template: $1': 'Редагувати шаблон: $1'\n'Set new name to': 'Встановити нову назву для'\n'Rename file': 'Перейменувати файл'\n'Caching templates in:': 'Шаблони кешуються у:'\n'Caching templates finished': 'Кешування шаблонів завершено'\n'Theme name': 'Назва теми'\n'Theme is assigned and can not be deleted': 'Тема призначена та не може бути видалена'\n'Theme export was not successful. Check please that the server is not out of disk space.': 'Експортування не вдалося. Перевірте вільне місце або зв’язок із сервером.'\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': 'Тема не може скасувати, оскілки вона використовується у випусках ($1)'\nzip: Zip\nversion: версія\nuploaded: Завантажено\nupdated: оновлено\n'or higher': 'або вище'\nmoved: переміщено\ninstalled: встановлено\ndeleted: видалено\n'You must select at least one template to perform an action.': 'Ви маєте вибрати принаймні один шаблон щоб зробити це.'\nUpload: Завантажувати\n'Unassign theme': 'Скасувати тему'\n'Unassign successful': 'Тема скасована успішно'\nUnassign: Відмінити\n'Theme version': 'Версія теми'\n'Theme settings updated.': 'Налаштування теми оновлені.'\n'Theme settings saved.': 'Налаштування теми збережені.'\n'Theme name / version': 'Назва / версія теми'\n'Theme management': 'Керування темами'\n'Theme $1': 'Тема $1'\n'The file $1 is empty.': 'Файл $1 порожній.'\n'Template object $1 was renamed to $2.': 'Об’єкт шаблону $1 був перейменован у $2'\n'Template object $1 was deleted.': 'Об’єкт шаблону $1 був видалений.'\n'Template $1 was duplicated into $2.': 'Для шаблону $1 було створено дублікат $2.'\n'Template $1 $2.': 'Шаблон $1 $2.'\n'Something broke': 'мертві бджоли не гудуть та меду не носять (або щось порушено)'\n'Section page template': 'Шаблон сторінки рубрики'\nSaving..: Зберігається...\n'Saving settings failed.': 'Не вдалося зберегти Налаштування збереження.'\n'Save All': 'Зберегти все'\n'Required Newscoop version': 'Вимагається версія Newscoop'\nReplace: Перемістить\n'New template $1 created.': 'Створено новий шаблон  $1.'\n'New name': 'Нова назва'\n'Name cant be empty': 'Поле назви неможна залишати незаповненим'\n'Last modified': 'Останні зміни'\n'Issue page': 'Сторінка випуску'\n'Go to parent': 'Перейти до джерела'\n'Go to $1': 'Перейти до  $1'\n'Geo Filtering': ГЕО-фільтрація\n'Front page template': 'Шаблон головної сторінки'\n'File size': 'Розмір файлу'\n'File name': 'Назва файлу'\n'File $1 was replaced.': 'Файл  $1 було переміщено.'\n'Failed unassigning theme': 'Скасування теми не вдалося'\nExport: Експорт\n'Error page template': 'Шаблон сторінки помилки'\n'Edit $1': 'Редагувати $1'\n'Done uploading': 'Завантаження завершено'\n'Do you want to override $1?': 'Бажаєте змінити  $1?'\n'Directory is empty': 'Тека пуста'\n'Directory $1 created.': 'Тека  $1 створена.'\nDesign: Дизайн\n'Delete theme': 'Видалити тему'\n'Current directory:': 'Поточна тека:'\n'Create folder': 'Створити теку'\n'Create file': 'Створити файл'\n'Copy to available themes': 'Копіювати у доступні теми'\n'Copied successfully': 'Скопійовано успішно'\nCompatibility: Сумісність\n'Click to enlarge': Збільшити\n'Choose destination': 'Виберіть місце призначення'\n'Cant override directory $1.': 'Неможливо змінити теку  $1.'\n'Cache Lifetime': 'Час існування кешу'\n'Browse for the theme': 'Шукати тему'\n'Assigned successfully': 'Призначена успішно'\n'Article page template': 'Шаблон сторінки статті'\n'Article page': 'Сторінка статті'\n'Are you sure you want to unassign this theme?': 'Ви впевнені що хочете скасувати цю тему?'\n'Are you sure you want to delete this theme?': 'Ви впевнені що хочете видалити цю тему?'\n'Add to publication': 'Додати до публікації'\n'$1 is not writable': '$1. не може бути перезаписаний'\n'$1 $2': '$1 $2'\n'$1 files $2': '$1 файли $2'\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.vi.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.zh.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': '编辑 $1'\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/themes.zh_TW.yml",
    "content": "'Duplicate assignment': null\nTemplates: null\n'Import theme': null\n'Import succeeded!': null\n'Import failed!': null\n'Edit template: $1': null\n'Set new name to': null\n'Rename file': null\n'Caching templates in:': null\n'Caching templates finished': null\n'Theme name': null\n'Theme is assigned and can not be deleted': null\n'Theme export was not successful. Check please that the server is not out of disk space.': null\n'The theme can not be unassigned because it is in use by issues ($1) in this publication': null\nzip: null\nversion: null\nuploaded: null\nupdated: null\n'or higher': null\nmoved: null\ninstalled: null\ndeleted: null\n'You must select at least one template to perform an action.': null\nUpload: null\n'Unassign theme': null\n'Unassign successful': null\nUnassign: null\n'Theme version': null\n'Theme settings updated.': null\n'Theme settings saved.': null\n'Theme name / version': null\n'Theme management': null\n'Theme $1': null\n'The file $1 is empty.': null\n'Template object $1 was renamed to $2.': null\n'Template object $1 was deleted.': null\n'Template $1 was duplicated into $2.': null\n'Template $1 $2.': null\n'Something broke': null\n'Section page template': null\nSaving..: null\n'Saving settings failed.': null\n'Save All': null\n'Required Newscoop version': null\nReplace: null\n'New template $1 created.': null\n'New name': null\n'Name cant be empty': null\n'Last modified': null\n'Issue page': null\n'Go to parent': null\n'Go to $1': null\n'Geo Filtering': null\n'Front page template': null\n'File size': null\n'File name': null\n'File $1 was replaced.': null\n'Failed unassigning theme': null\nExport: null\n'Error page template': null\n'Edit $1': null\n'Done uploading': null\n'Do you want to override $1?': null\n'Directory is empty': null\n'Directory $1 created.': null\nDesign: null\n'Delete theme': null\n'Current directory:': null\n'Create folder': null\n'Create file': null\n'Copy to available themes': null\n'Copied successfully': null\nCompatibility: null\n'Click to enlarge': null\n'Choose destination': null\n'Cant override directory $1.': null\n'Cache Lifetime': null\n'Browse for the theme': null\n'Assigned successfully': null\n'Article page template': null\n'Article page': null\n'Are you sure you want to unassign this theme?': null\n'Are you sure you want to delete this theme?': null\n'Add to publication': null\n'$1 is not writable': null\n'$1 $2': null\n'$1 files $2': null\n'Available themes': null\n'Update cached data': null\n'Assigned templates': null\n'Cached informations about theme playlists are not up to date!': null\n'The theme''s configuration file does not contain information about the list of used featured articles.': null\n'Below code should be placed into theme.xml (between ''theme'' nodes) file to make it work. This file is located in every theme''s main directory.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.ar.yml",
    "content": "Select: اختر\n'No Media Files Found': 'لم يتم العثور على ملفات إعلامية'\n'Insert media file': 'أدخل ملف إعلامي'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.az.yml",
    "content": "Select: Seç\n'No Media Files Found': 'Mətbuat Faylları Tapılmadı'\n'Insert media file': 'Mətbuat faylı daxil et'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.be.yml",
    "content": "Select: Выберыце\n'No Media Files Found': 'Знойдзена 0 медыя-файлаў '\n'Insert media file': 'Увядзіце медыя-файл'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.bn.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.cs.yml",
    "content": "Select: Vybrat\n'No Media Files Found': 'Nebyly nalezeny žádné Media Soubory'\n'Insert media file': 'Vložte media soubor'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.da.yml",
    "content": "Select: Vælg\n'No Media Files Found': 'Ingen mediefiler fundet'\n'Insert media file': 'Indsæt mediefil'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.de.yml",
    "content": "Select: Auswählen\n'No Media Files Found': 'Keine Mediendateien gefunden'\n'Insert media file': 'Mediendatei einfügen'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.de_AT.yml",
    "content": "Select: Auswählen\n'No Media Files Found': 'Keine Mediendateien gefunden'\n'Insert media file': 'Mediendatei einfügen'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.el.yml",
    "content": "Select: Επιλογή\n'No Media Files Found': 'Δεν Βρέθηκαν Αρχεία Media'\n'Insert media file': 'Εισαγωγή αρχείου media'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.en.yml",
    "content": "Select: Select\n'No Media Files Found': 'No Media Files Found'\n'Insert media file': 'Insert media file'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.en_GB.yml",
    "content": "Select: Select\n'No Media Files Found': 'No Media Files Found'\n'Insert media file': 'Insert media file'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.es.yml",
    "content": "Select: Seleccionar\n'No Media Files Found': 'No se encontró ningún archivo multimedia'\n'Insert media file': 'Insertar archivo multimedia'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.es_AR.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.fa.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.fa_AF.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.fr.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.he.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.hr.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.hu.yml",
    "content": "Select: null\n'No Media Files Found': 'Nem találatók médiafájlok'\n'Insert media file': 'Médiafájl beszúrása'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.hy.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.hy_AM.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.id.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.it.yml",
    "content": "Select: Seleziona\n'No Media Files Found': 'Nessun file multimediale trovato'\n'Insert media file': 'Inserisci file multimediale'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.ka.yml",
    "content": "Select: არჩევა\n'No Media Files Found': 'მედია ფაილები არ მოიძებნა'\n'Insert media file': 'ჩასვით მედია ფაილი'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.ko.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.ku.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.lv.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.mr.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.nb_NO.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.nl.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.pa.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.pl.yml",
    "content": "Select: Wybierz\n'No Media Files Found': 'Nie znaleziono plików mediów'\n'Insert media file': 'Dodaj plik mediów'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.ps.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.pt.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.pt_BR.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.ro.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.ru.yml",
    "content": "Select: Выберите\n'No Media Files Found': 'Найдено 0 медиа-файлов'\n'Insert media file': 'Введите медиа-файл'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.sh.yml",
    "content": "Select: Izaberi\n'No Media Files Found': 'Nisu pronađeni medijski fajlovi'\n'Insert media file': 'Ubaci medijski fajl'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.sq.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.sr.yml",
    "content": "Select: Изабери\n'No Media Files Found': 'Нису пронађени медијски фајлови'\n'Insert media file': 'Убаци медијски фајл'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.sv.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.tr.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.uk.yml",
    "content": "Select: Виберіть\n'No Media Files Found': 'Медіа-файлів не знайдено'\n'Insert media file': 'Вставте медіа-файл'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.vi.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.zh.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/tiny_media_plugin.zh_TW.yml",
    "content": "Select: null\n'No Media Files Found': null\n'Insert media file': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.ar.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': 'اذا واصلت فسيتم فصل الموضوع وكل الموضوعات الفرعية عن كل المقالات، وحذفها.'\n'Delete anyway': 'إحذف على الرغم من ذلك'\n'Reset order': 'أعد تعيين الترتيب'\n'Order changes will be lost. Are you sure you want to continue?': 'سيتم فقد تغييرات الترتيب. هل انت متأكد أنك تريد المواصلة؟'\n'Topics order saved.': 'تم حفظ ترتيب الموضوعات'\n'Show languages': 'أظهر لغات'\n'Save order': 'إحفظ الترتيب'\n'Click to edit': 'أتقر لتحرير'\n'Add root topic': 'أضف موضوع رئيسي'\n'Topic was deleted.': 'تم حذف الموضوع'\n'The topic name is already in use by another topic.': 'اسم الموضوع حالياً قيد الاستخدام من موضوع آخر.'\n'You must enter a name for the topic.': 'يجب عليك أن تدخل اسم للموضوع.'\n'You must choose a language for the topic.': 'يجب عليك أن تختار لغة للموضوع.'\n'This topic has subtopics, therefore it cannot be deleted.': 'لهذا الموضوع موضوعات فرعية ولذلك لا يمكن حذفه.'\n'Add translation:': 'أضف ترجمة:'\n'Add subtopic:': 'أضف موضوع فرعي:'\nTop: الأعلى\n'You do not have the right to add topics.': 'ليس لديك الحق في إضافة موضوعات'\n'You do not have the right to delete topics.': 'ليس لديك الحق في حذف موضوعات'\n'Are you sure you want to delete the topic $1?': 'هل انت متأكد أن تريد أن تحذف الموضوع $1؟'\n'You do not have the right to change topic name.': 'ليس لديك الحق في تغيير اسم الموضوع.'\n'The topic $1 could not be deleted.': 'لم يحذف الموضوع $1'\n'Adding new topic': 'قيد الإضافة موضوع جديد'\n'Deleting topic': 'قيد الحذف الموضوع'\n'Change topic name': 'غير اسم الموضوع'\n'There are $1 articles using the topic.': 'توجد $1 مقالات تستخدم الموضوع.'\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.az.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': 'Davam etsən, mövzu və bütün altmövzular bütün məqalələrdən çıxarılacaq və silinəcək.'\n'Delete anyway': Silinsin\n'Reset order': 'Sifarişi sıfırla'\n'Order changes will be lost. Are you sure you want to continue?': 'Sifariş dəyişiklikləri itəcək. Davam etmək istədiyinə əminsən?'\n'Topics order saved.': 'Mövzuların sıralaması saxlandı.'\n'Show languages': 'Dilləri göstər'\n'Save order': 'Sifarişi saxla'\n'Click to edit': 'Dəyişmək üçün kliklə'\n'Add root topic': 'Əsas mövzunu əlavə et'\n'Topic was deleted.': 'Mövzu silindi.'\n'The topic name is already in use by another topic.': 'Təklif edilən mövzu adı başqa mövzuda istifadə edilir.'\n'You must enter a name for the topic.': 'Mövzu üçün ad daxil etməlisən.'\n'You must choose a language for the topic.': 'Sən mövzu üçün dil seçməlisən.'\n'This topic has subtopics, therefore it cannot be deleted.': 'Bu mövzunun alt mövzuları olduğu üçün silinə bilməz.'\n'Add translation:': 'Tərcümə Əlavə Et:'\n'Add subtopic:': 'Alt mövzu əlavə et:'\nTop: Üst\n'You do not have the right to add topics.': 'Mövzu əlavə etməyə ixtiyarın yoxdur.'\n'You do not have the right to delete topics.': 'Mövzuları silməyə ixtiyarın yoxdur.'\n'Are you sure you want to delete the topic $1?': '$1 adlı mövzunu silmək istədiyinə əminsən?'\n'You do not have the right to change topic name.': 'Mövzu adını dəyişməyə ixtiyarın yoxdur.'\n'The topic $1 could not be deleted.': '$1 adlı mövzu silinə bilmədi.'\n'Adding new topic': 'Yeni mövzu əlavə et'\n'Deleting topic': 'Mövzunun silinməsi'\n'Change topic name': 'Mövzu adını dəyiş'\n'There are $1 articles using the topic.': 'Mövzunu istifadə edən $1 məqalə mövcuddur.'\n'Search for topics': 'Mövzu axtar'\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.be.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': 'Пераўсталёўка парадку'\n'Order changes will be lost. Are you sure you want to continue?': 'Змены парадку былі згубленыя. Вы ўпэўненыя, што жадаеце работаць далей?'\n'Topics order saved.': 'Парадак тым захаваны.'\n'Show languages': 'Паказаць мовы'\n'Save order': 'Захаваць парадак выканання.'\n'Click to edit': 'Клікніце для рэдагавання'\n'Add root topic': 'Дадаць асноўную тэму'\n'Topic was deleted.': 'Тэма выдаленая.'\n'The topic name is already in use by another topic.': 'Гэтае імя ўжо выкарыстоўваецца іншай тэмай.'\n'You must enter a name for the topic.': 'Вы павінны ўвесці назву тэмы.'\n'You must choose a language for the topic.': 'Вы павiнны выбраць мову для тэмы.'\n'This topic has subtopics, therefore it cannot be deleted.': 'Гэта тэма мае падтэму, таму яе нельга выдаліць.'\n'Add translation:': 'Дадаць пераклад'\n'Add subtopic:': 'Дадаць падтэму:'\nTop: Верх\n'You do not have the right to add topics.': 'Вы ня маеце права дадаваць новыя тэмы.'\n'You do not have the right to delete topics.': 'Вы ня маеце права доступу для выдаленьня новых тэм.'\n'Are you sure you want to delete the topic $1?': 'Ці Вы ўпэўнены, што хочаце выдалiць тэму $1?'\n'You do not have the right to change topic name.': 'Вы ня маеце права пераймяноўваць тэмы.'\n'The topic $1 could not be deleted.': 'Немагчыма выдалiць тэму $1'\n'Adding new topic': 'Дадаваньне новай тэмы'\n'Deleting topic': 'Выдаленьне тэмы'\n'Change topic name': 'Перайменаваньне тэмы'\n'There are $1 articles using the topic.': ' Тэма выкарыстоўваецца ў $1 артыкуле(-ах).'\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.bn.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': null\n'You must choose a language for the topic.': null\n'This topic has subtopics, therefore it cannot be deleted.': null\n'Add translation:': null\n'Add subtopic:': null\nTop: null\n'You do not have the right to add topics.': null\n'You do not have the right to delete topics.': null\n'Are you sure you want to delete the topic $1?': null\n'You do not have the right to change topic name.': null\n'The topic $1 could not be deleted.': null\n'Adding new topic': null\n'Deleting topic': null\n'Change topic name': null\n'There are $1 articles using the topic.': null\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.cs.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': 'Pokud budete pokračovat, bude téma a všichni podtémata oddělena od všech článků a smazána.'\n'Delete anyway': 'Stejně odstranit'\n'Reset order': 'Přenastavit pořadí'\n'Order changes will be lost. Are you sure you want to continue?': 'Požadované změny budou ztraceny. Jste si jisti, že chcete pokračovat?'\n'Topics order saved.': 'Pořadí témat uloženo.'\n'Show languages': 'Ukázat jazyky'\n'Save order': 'Uložit příkaz'\n'Click to edit': 'Klikněte pro možnost úpravy'\n'Add root topic': 'Přidat zdrojové téma'\n'Topic was deleted.': 'Téma bylo odstraněno.'\n'The topic name is already in use by another topic.': 'Název námětu je již užíván u jiného námětu.'\n'You must enter a name for the topic.': 'Musíte vložit název námětu.'\n'You must choose a language for the topic.': 'Zvolte jazyk tématu.'\n'This topic has subtopics, therefore it cannot be deleted.': 'Téma obsahuje podtémata, proto nemůže být odstraněno.'\n'Add translation:': 'Přidat překlad:'\n'Add subtopic:': 'Přidat témata:'\nTop: Nahoře\n'You do not have the right to add topics.': 'Nemáte právo přidat témata'\n'You do not have the right to delete topics.': 'Nemáte právo mazat témata'\n'Are you sure you want to delete the topic $1?': 'Určitě chcete smazat téma $1?'\n'You do not have the right to change topic name.': 'Nemáte právo měnit název tématu'\n'The topic $1 could not be deleted.': 'Téma $1 nemohlo být smazáno'\n'Adding new topic': 'Přidání nového témata'\n'Deleting topic': 'Mazání tématu'\n'Change topic name': 'Změnit název témata'\n'There are $1 articles using the topic.': '$1 článků používá toto téma'\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.da.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': 'Hvis du fortsætter bliver emnet og dets underemner fjernet fra alle artikler og slettet.'\n'Delete anyway': 'Slet alligevel'\n'Reset order': 'Nulstil sortering'\n'Order changes will be lost. Are you sure you want to continue?': 'Sortering vil gå tabt. Fortsæt alligevel?'\n'Topics order saved.': 'Emne sorteringen er gemt.'\n'Show languages': 'Vis sprog'\n'Save order': 'Gem sortering'\n'Click to edit': 'Klik for at redigere'\n'Add root topic': 'Tilføj rod emne'\n'Topic was deleted.': 'Emnet blev slettet'\n'The topic name is already in use by another topic.': 'Navnet bruges af et andet emne.'\n'You must enter a name for the topic.': 'Du skal give emnet et navn.'\n'You must choose a language for the topic.': 'Du skal vælge et sprog for emnet.'\n'This topic has subtopics, therefore it cannot be deleted.': 'Emnet kan ikke slettes fordi det har underemner.'\n'Add translation:': 'Tilføj oversættelse:'\n'Add subtopic:': 'Tilføj underemne:'\nTop: Top\n'You do not have the right to add topics.': 'Du har ikke rettigheder til at tilføje emner.'\n'You do not have the right to delete topics.': 'Du har ikke rettigheder til at slette emner.'\n'Are you sure you want to delete the topic $1?': 'Vil du slette emnet $1?'\n'You do not have the right to change topic name.': 'Du har ikke rettigheder til at ændre navn på emner.'\n'The topic $1 could not be deleted.': 'Emnet $1 kunne ikke slettes.'\n'Adding new topic': 'Tilføjer nyt emne'\n'Deleting topic': 'Sletter emne'\n'Change topic name': 'Omdøb emne'\n'There are $1 articles using the topic.': 'Emnet bruges i $1 artikler.'\n'Search for topics': 'Søg efter emner'\ntopics:\n    tip: 'Emner i Newscoop tildeles af redaktører og journalister til artikler, så relaterede artikler kan identificeres og vises sammen. Et hovedemne kan have mange underemner. For eksempel kan hovedemnet sport have underemnerne fodbold, basketball og vandpolo. En artikel kan have flere hovedemner og underemner.'\n    label:\n        all: Alle\n        filterbylang: 'Vis emner på sprog'\n        search: Søg\n        filterplaceholder: 'Skriv en del af et emnenavn...'\n        addroot: 'Tilføj rod emne'\n        topicname: 'Emnets navn'\n        expandcollapse: vis/skjul\n        changename: 'Omdøb emne'\n        for: for\n        addsubtopic: 'Tilføj underemne'\n        subtopicname: 'Navn på underemne'\n        addtranslation: 'Tilføj oversættelse'\n        topictranslations: 'Emnets oversættelser'\n        choose: Vælg...\n        translationstring: 'Oversættelses streng'\n        tree: Emnetræ\n    title: Emner\n    btn:\n        hide: Skjul\n        remove: 'Fjern emne'\n        edit: 'Rediger emne'\n        close: Luk\n        add: Tilføj\n        save: Gem\n        saveandclose: 'Gem og luk'\n        removetrans: 'Slet emnets oversættelse'\n    alerts:\n        languagenotfound: 'Sproget %locale% kunne ikke findes'\n        translationadded: 'Oversættelsen blev tilføjet'\n        translationexists: 'Der findes allerede en oversættelse for sproget %locale%!'\n        beforedelete: 'Vil du slette dette emne?'\n        wrongparams: null\n        ordersaved: 'Ordren er gemt.'\n        saved: Gemt.\n        beforedeleteinfo: 'Hvis du sletter et emne med underemner bliver alle underemnerne og deres oversættelser slettet permanent. Er du sikker?'\n    added: 'Emnet blev tilføjet'\n    failedfind: 'Kunne ikke finde emne med id: %id%'\n    failedfindTranslation: 'Kunne ikke finde emnets oversættelse med id: %id%'\n    removed: 'Emnet %title% blev slettet'\n    exists: 'Emnet findes allerede'\n    existsname: 'Emnenavnet findes allerede!'\n    removedTranslation: 'Emnets oversættelse blev slettet'\n    failedremoveTranslation: null\n    updated: 'Emnet blev opdateret'\n    error: 'Der skete en fejl. Prøv igen senere.'\n    csrfinvalid: 'Ugyldig CSRF token. Prøv at sende formularen igen.'\n    tooshort: 'Emnets navn er for kort!'\n    toolong: 'Emnets navn er for langt!'\n    attachtopics: 'Vedhæft emner'\n    attachedtopics: null\n    attached: 'Emnet er tildelt til %occurence% artikler. Hvis du fjerner emnet vil det automatisk blive fjernet fra artiklerne. Hvis emnet har underemner bliver de også fjernet.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.de.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': 'Wenn Sie fortfahren werden alle Themen und Unterthemen von allen Artikel entfernt und gelöscht.'\n'Delete anyway': 'Trotzdem löschen'\n'Reset order': 'Reihenfolge zurücksetzen'\n'Order changes will be lost. Are you sure you want to continue?': 'Änderungen gehen verloren. Wirklich fortsetzen?'\n'Topics order saved.': 'Themen Reihenfolge gespeichert.'\n'Show languages': 'Sprachen anzeigen'\n'Save order': 'Reihenfolge speichern'\n'Click to edit': 'Zum Bearbeiten klicken'\n'Add root topic': 'Wurzelthema hinzufügen'\n'Topic was deleted.': 'Thema wurde gelöscht.'\n'The topic name is already in use by another topic.': 'Der Themenname ist bereits in Verwendung. '\n'You must enter a name for the topic.': 'Einen Namen für das Thema eingeben. '\n'You must choose a language for the topic.': 'Für das Thema muss eine Sprache gewählt werden.'\n'This topic has subtopics, therefore it cannot be deleted.': 'Dieses Thema hat Unterthemen und kann deshalb nicht gelöscht werden.'\n'Add translation:': 'Übersetzung hinzufügen:'\n'Add subtopic:': 'Unterthema hinzufügen:'\nTop: Anfang\n'You do not have the right to add topics.': 'Keine Berechtigung Themen hinzuzufügen.'\n'You do not have the right to delete topics.': 'Keine Berechtigung Thema zu löschen.'\n'Are you sure you want to delete the topic $1?': 'Thema $1 wirklich löschen?'\n'You do not have the right to change topic name.': 'Keine Berechtigung den Themennamen zu ändern.'\n'The topic $1 could not be deleted.': 'Thema $1 konnte nicht gelöscht werden.'\n'Adding new topic': 'Neues Thema wird hinzugefügt'\n'Deleting topic': 'Thema wird gelöscht'\n'Change topic name': 'Themenname ändern'\n'There are $1 articles using the topic.': 'Thema wird von $1 Artikeln verwendet.'\n'Search for topics': 'Nach Themen suchen'\ntopics:\n    tip: 'Themen in Newscoop werden verwendet um Artikel, die zu einer bestimmten Thematik passen, zu gruppieren und auf der Webseite in einer themenspezifischen Liste anzuzeigen. Die Themen werden einem Artikel von Redakteuren zugewiesen. Themen werden in Themenbäumen organisiert. Ein Haupt-Thema kann verschiedene Unterthemen haben. Ein Beispiel: Das Haupt-Thema \"Sport\" könnte die Unterthemen \"Fussball\", \"Basketball\" und \"Wasserpolo\" haben. Ein einzelner Artikel kann mehrere Haupt- und Unterthemen zugewiesen bekommen.'\n    label:\n        all: Alle\n        filterbylang: 'Zeige Themen der Sprache'\n        search: 'Suche '\n        filterplaceholder: 'Tippen Sie den Namen (oder Bestandteile davon) eines Themas...'\n        addroot: 'Thema auf oberster Ebene hinzufügen'\n        topicname: 'Name des Themas'\n        expandcollapse: ausklappen/einklappen\n        changename: 'Themenname ändern'\n        for: für\n        addsubtopic: 'Unterthema hinzufügen'\n        subtopicname: 'Name des Unterthemas'\n        addtranslation: 'Übersetzung hinzufügen'\n        topictranslations: 'Übersetzung des Themas'\n        choose: Auswählen...\n        translationstring: Übersetzung\n        tree: Themenbaum\n    title: Themen\n    btn:\n        hide: Verbergen\n        remove: 'Thema entfernen'\n        edit: 'Thema bearbeiten'\n        close: Schliessen\n        add: Hinzufügen\n        save: Speichern\n        saveandclose: 'Speichern und Schließen'\n        removetrans: 'Die Übersetzung des Themas entfernen'\n    alerts:\n        languagenotfound: 'Die Sprache wurde nicht gefunden: %locale%'\n        translationadded: 'Die Übersetzung wurde hinzugefügt'\n        translationexists: 'Eine Übersetzung für %locale% existiert bereits.'\n        beforedelete: 'Soll dieses Thema wirklich gelöscht werden?'\n        wrongparams: 'Die Anzahl der sortierten Haupt-Themen muss der Anzahl aller Haupt-Themen entsprechen'\n        ordersaved: 'Reihenfolge gespeichert.'\n        saved: 'Erfolgreich gespeichert.'\n        beforedeleteinfo: 'Mit dem Löschen eines Themas werden auch alle zugehörigen Unterthemen und die jeweiligen Übersetzungen gelöscht. Trotzdem fortfahren?'\n    added: 'Thema wurde hinzugefügt'\n    failedfind: 'Das Finden des Themas nach folgender ID hat nicht funktioniert:  %id%'\n    failedfindTranslation: 'Das Finden der Übersetzung des Themas nach folgender ID hat nicht funktioniert: %id%'\n    removed: 'Thema %title% wurde entfernt'\n    exists: 'Das Thema existiert bereits'\n    existsname: 'Der Name des Themas existiert bereits'\n    removedTranslation: 'Die Übersetzung des Themas wurde entfernt'\n    failedremoveTranslation: 'Die Standard-Übersetzung des Themas kann nicht entfernt werden. Stattdessen das Thema entfernen.'\n    updated: 'Das Thema wurde aktualisiert'\n    error: 'Ein Fehler ist aufgetreten. Bitte versuchen Sie es später erneut.'\n    csrfinvalid: 'Der CSRF Token (Schutz des Formulars vor Missbrauch) ist ungültig. Bitte versuchen Sie erneut das Formular abzuschicken.'\n    tooshort: 'Der Name des Themas ist zu kurz.'\n    toolong: 'Der Name des Themas ist zu lang.'\n    attachtopics: 'Thema zuweisen'\n    attachedtopics: 'Zugewiesene Themen'\n    attached: 'Dieses Thema ist %occurence% Artikel(n) zugewiesen. Wenn das Thema entfernt wird, wird auch die Zuweisung zu den Artikeln entfernt. Wenn das Thema Unterthemen hat, werden auch diese Zuweisungen zum Artikel entfernt.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.de_AT.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': 'Wenn Sie fortfahren werden alle Themen und Unterthemen von allen Artikel entfernt und gelöscht.'\n'Delete anyway': 'Trotzdem löschen'\n'Reset order': 'Reihenfolge zurücksetzen'\n'Order changes will be lost. Are you sure you want to continue?': 'Änderungen gehen verloren. Wirklich fortsetzen?'\n'Topics order saved.': 'Themen Reihenfolge gespeichert.'\n'Show languages': 'Sprachen anzeigen'\n'Save order': 'Reihenfolge speichern'\n'Click to edit': 'Zum Bearbeiten klicken'\n'Add root topic': 'Wurzelthema hinzufügen'\n'Topic was deleted.': 'Thema wurde gelöscht.'\n'The topic name is already in use by another topic.': 'Der Themenname ist bereits in Verwendung. '\n'You must enter a name for the topic.': 'Einen Namen für das Thema eingeben. '\n'You must choose a language for the topic.': 'Für das Thema muss eine Sprache gewählt werden.'\n'This topic has subtopics, therefore it cannot be deleted.': 'Dieses Thema hat Unterthemen und kann deshalb nicht gelöscht werden.'\n'Add translation:': 'Übersetzung hinzufügen:'\n'Add subtopic:': 'Unterthema hinzufügen:'\nTop: Anfang\n'You do not have the right to add topics.': 'Keine Berechtigung Themen hinzuzufügen.'\n'You do not have the right to delete topics.': 'Keine Berechtigung Thema zu löschen.'\n'Are you sure you want to delete the topic $1?': 'Thema $1 wirklich löschen?'\n'You do not have the right to change topic name.': 'Keine Berechtigung den Themennamen zu ändern.'\n'The topic $1 could not be deleted.': 'Thema $1 konnte nicht gelöscht werden.'\n'Adding new topic': 'Neues Thema wird hinzugefügt'\n'Deleting topic': 'Thema wird gelöscht'\n'Change topic name': 'Themenname ändern'\n'There are $1 articles using the topic.': 'Thema wird von $1 Artikeln verwendet.'\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.el.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': 'Εάν συνεχίσετε, το θέμα και όλα τα επιμέρους θέματά του θα αφαιρεθούν από όλα τα άρθρα και θα διαγραφούν.'\n'Delete anyway': 'Διαγραφή ούτως ή άλλως'\n'Reset order': 'Επαναρρύθμιση εντολής'\n'Order changes will be lost. Are you sure you want to continue?': 'Οι αλλαγές εντολής θα χαθούν. Είστε σίγουρος/η ότι θέλετε να συνεχίσετε;'\n'Topics order saved.': 'Η εντολή θεμάτων αποθηκεύτηκε.'\n'Show languages': 'Εμφάνιση γλωσσών'\n'Save order': 'Αποθήκευση εντολής'\n'Click to edit': 'Κάντε κλίκ για επεξεργασία'\n'Add root topic': 'Προσθήκη αρχικού (root) θέματος'\n'Topic was deleted.': 'Το θέμα διαγράφτηκε.'\n'The topic name is already in use by another topic.': 'Το όνομα του θέματος χρησιμοποιείται ήδη από άλλο θέμα.'\n'You must enter a name for the topic.': 'Πρέπει να εισάγετε ένα όνομα για το θέμα.'\n'You must choose a language for the topic.': 'Πρέπει να εισάγετε μια γλώσσα για το θέμα.'\n'This topic has subtopics, therefore it cannot be deleted.': 'Αυτό το θέμα έχει υποθέματα, συνεπώς δεν μπορεί να διαγραφεί.'\n'Add translation:': 'Προσθήκη μετάφρασης:'\n'Add subtopic:': 'Προσθήκη υποθέματος:'\nTop: Αρχή\n'You do not have the right to add topics.': 'Δεν έχετε το δικαίωμα να προσθέσετε θέματα.'\n'You do not have the right to delete topics.': 'Δεν έχετε το δικαίωμα να διαγράψετε θέματα.'\n'Are you sure you want to delete the topic $1?': 'Είστε σίγουρος/η ότι θέλετε να διαγράψετε το θέμα $1;'\n'You do not have the right to change topic name.': 'Δεν έχετε το δικαίωμα να αλλάξετε το όνομα του θέματος.'\n'The topic $1 could not be deleted.': 'Το θέμα $1 δν μπόρεσε να διαγραφεί.'\n'Adding new topic': 'Προσθήκη νέου θέματος'\n'Deleting topic': 'Διαγραφή θέματος'\n'Change topic name': 'Αλλαγή ονόματος του θέματος'\n'There are $1 articles using the topic.': 'Υπάρχουν $1 άρθρα που χρησιμοποιούν το θέμα.'\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.en.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': 'If you continue, topic and all subtopics will be detached from all articles, and deleted.'\n'Delete anyway': 'Delete anyway'\n'Reset order': 'Reset order'\n'Order changes will be lost. Are you sure you want to continue?': 'Order changes will be lost. Are you sure you want to continue?'\n'Topics order saved.': 'Topics order saved.'\n'Show languages': 'Show languages'\n'Save order': 'Save order'\n'Click to edit': 'Click to edit'\n'Add root topic': 'Add root topic'\n'Topic was deleted.': 'Topic was deleted.'\n'The topic name is already in use by another topic.': 'The topic name is already in use by another topic.'\n'You must enter a name for the topic.': 'You must enter a name for the topic.'\n'You must choose a language for the topic.': 'You must choose a language for the topic.'\n'This topic has subtopics, therefore it cannot be deleted.': 'This topic has subtopics, therefore it cannot be deleted.'\n'Add translation:': 'Add translation:'\n'Add subtopic:': 'Add subtopic:'\nTop: Top\n'You do not have the right to add topics.': 'You do not have the right to add topics.'\n'You do not have the right to delete topics.': 'You do not have the right to delete topics.'\n'Are you sure you want to delete the topic $1?': 'Are you sure you want to delete the topic $1?'\n'You do not have the right to change topic name.': 'You do not have the right to change topic name.'\n'The topic $1 could not be deleted.': 'The topic $1 could not be deleted.'\n'Adding new topic': 'Adding new topic'\n'Deleting topic': 'Deleting topic'\n'Change topic name': 'Change topic name'\n'There are $1 articles using the topic.': 'There are $1 articles using the topic.'\n'Search for topics': 'Search for topics'\ntopics:\n  tip: \"In Newscoop, topics are the subject matters assigned by editors and journalists to articles, so that related articles can be identified and displayed together. A root topic can have many subtopics; for example: the sports root topic could have the subtopics football, basketball, and water polo. An individual article may have several root topics or subtopics assigned to it.\"\n  label:\n    all: \"All\"\n    filterbylang: \"Show topics in language\"\n    search: \"Search\"\n    filterplaceholder: \"Type a part of any topic name...\"\n    addroot: \"Add root topic\"\n    topicname: \"Topic name\"\n    expandcollapse: \"expand/collapse\"\n    changename: \"Change topic name\"\n    for: \"for\"\n    addsubtopic: \"Add subtopic\"\n    subtopicname: \"Subtopic name\"\n    addtranslation: \"Add translation\"\n    topictranslations: \"Topic translations\"\n    choose: \"Choose...\"\n    translationstring: \"Translation string\"\n    tree: \"Tree of topics\"\n    topicname: \"Topic name\"\n  title: \"Topics management\"\n  btn:\n    hide: \"Hide\"\n    remove: \"Remove topic\"\n    edit: \"Edit topic\"\n    close: \"Close\"\n    add: \"Add\"\n    save: \"Save\"\n    saveandclose: \"Save and Close\"\n    removetrans: \"Remove Topic's translation\"\n  alerts:\n    languagenotfound: \"Could not find language by locale: %locale%\"\n    translationadded: \"Translation was added\"\n    translationexists: \"Translation for locale %locale% already exists!\"\n    beforedelete: \"Are you sure you want to delete this topic?\"\n    wrongparams: \"Number of sorted root topics must be the same as number of all root topics\"\n    ordersaved: \"Order saved.\"\n    saved: \"Successfully saved.\"\n    beforedeleteinfo: \"When deleting topic with subtopics, all subtopics together with translations will be removed permanently. Are you sure?\"\n  added: \"Topic was added\"\n  failedfind: \"Failed to find Topic by id: %id%\"\n  failedfindTranslation: \"Failed to find Topic's translation by id: %id%\"\n  removed: \"Topic %title% was removed\"\n  exists: \"Topic already exists\"\n  existsname: \"Topic name already exists!\"\n  removedTranslation: \"Topic's translation was removed\"\n  failedremoveTranslation: \"Can not remove default topic's translation. Remove topic instead.\"\n  updated: \"Topic was updated\"\n  error: \"Error occurred, please try again later.\"\n  title: \"Topics\"\n  csrfinvalid: \"The CSRF token is invalid. Please try to resubmit the form.\"\n  tooshort: \"Topic name is too short!\"\n  toolong: \"Topic name is too long!\"\n  attachtopics: \"Attach topics\"\n  attachedtopics: \"Attached topics\"\n  attached: \"This topic is attached to %occurence% article(s). When you remove this topic, it will be automatically detached from all articles it is attached to. If the topic has children topics, they will be also detached.\"\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.en_GB.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': 'If you continue, topic and all subtopics will be detached from all articles, and deleted.'\n'Delete anyway': 'Delete anyway'\n'Reset order': 'Reset order'\n'Order changes will be lost. Are you sure you want to continue?': 'Order changes will be lost. Are you sure you want to continue?'\n'Topics order saved.': 'Topics order saved.'\n'Show languages': 'Show languages'\n'Save order': 'Save order'\n'Click to edit': 'Click to edit'\n'Add root topic': 'Add root topic'\n'Topic was deleted.': 'Topic was deleted.'\n'The topic name is already in use by another topic.': 'The topic name is already in use by another topic.'\n'You must enter a name for the topic.': 'You must enter a name for the topic.'\n'You must choose a language for the topic.': 'You must choose a language for the topic.'\n'This topic has subtopics, therefore it cannot be deleted.': 'This topic has subtopics, therefore it cannot be deleted.'\n'Add translation:': 'Add translation:'\n'Add subtopic:': 'Add subtopic:'\nTop: Top\n'You do not have the right to add topics.': 'You do not have the right to add topics.'\n'You do not have the right to delete topics.': 'You do not have the right to delete topics.'\n'Are you sure you want to delete the topic $1?': 'Are you sure you want to delete the topic $1?'\n'You do not have the right to change topic name.': 'You do not have the right to change topic name.'\n'The topic $1 could not be deleted.': 'The topic $1 could not be deleted.'\n'Adding new topic': 'Adding new topic'\n'Deleting topic': 'Deleting topic'\n'Change topic name': 'Change topic name'\n'There are $1 articles using the topic.': 'There are $1 articles using the topic.'\n'Search for topics': 'Search for topics'\ntopics:\n    tip: 'In Newscoop, topics are the subject matters assigned by editors and journalists to articles, so that related articles can be identified and displayed together. A root topic can have many subtopics; for example: the sports root topic could have the subtopics football, basketball, and water polo. An individual article may have several root topics or subtopics assigned to it.'\n    label:\n        all: All\n        filterbylang: 'Show topics in language'\n        search: Search\n        filterplaceholder: 'Type a part of any topic name...'\n        addroot: 'Add root topic'\n        topicname: 'Topic name'\n        expandcollapse: expand/collapse\n        changename: 'Change topic name'\n        for: for\n        addsubtopic: 'Add subtopic'\n        subtopicname: 'Subtopic name'\n        addtranslation: 'Add translation'\n        topictranslations: 'Topic translations'\n        choose: Choose...\n        translationstring: 'Translation string'\n        tree: 'Tree of topics'\n    title: Topics\n    btn:\n        hide: Hide\n        remove: 'Remove topic'\n        edit: 'Edit topic'\n        close: Close\n        add: Add\n        save: Save\n        saveandclose: 'Save and Close'\n        removetrans: 'Remove Topic''s translation'\n    alerts:\n        languagenotfound: 'Could not find language by locale: %locale%'\n        translationadded: 'Translation was added'\n        translationexists: 'Translation for locale %locale% already exists!'\n        beforedelete: 'Are you sure you want to delete this topic?'\n        wrongparams: 'Number of sorted root topics must be the same as number of all root topics'\n        ordersaved: 'Order saved.'\n        saved: 'Successfully saved.'\n        beforedeleteinfo: 'When deleting a topic with subtopics, all subtopics and their translations will be removed permanently. Are you sure?'\n    added: 'Topic was added'\n    failedfind: 'Failed to find Topic by id: %id%'\n    failedfindTranslation: 'Failed to find Topic''s translation by id: %id%'\n    removed: 'Topic %title% was removed'\n    exists: 'Topic already exists'\n    existsname: 'Topic name already exists!'\n    removedTranslation: 'Topic''s translation was removed'\n    failedremoveTranslation: 'Can not remove default topic''s translation. Remove topic instead.'\n    updated: 'Topic was updated'\n    error: 'Error occurred, please try again later.'\n    csrfinvalid: 'The CSRF token is invalid. Please try to resubmit the form.'\n    tooshort: 'Topic name is too short!'\n    toolong: 'Topic name is too long!'\n    attachtopics: 'Attach topics'\n    attachedtopics: 'Attached topics'\n    attached: 'This topic is attached to %occurence% article(s). When you remove this topic, it will be automatically detached from all articles it is attached to. If the topic has child topics, they will be also detached.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.es.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': 'Si continúa, los temas y subtemas serán desligados de sus artículos y eliminados.'\n'Delete anyway': 'Eliminar de todas formas'\n'Reset order': 'Restablecer el orden'\n'Order changes will be lost. Are you sure you want to continue?': 'Se perderán los cambios de orden.  ¿Está seguro de continuar?'\n'Topics order saved.': 'Se guardó el órden de los tópicos'\n'Show languages': 'Mostrar idiomas'\n'Save order': 'Almacenar orden'\n'Click to edit': 'Clic para editar'\n'Add root topic': 'Añadit tópico raíz'\n'Topic was deleted.': 'Se eliminó el tópico.'\n'The topic name is already in use by another topic.': 'Este nombre de tópico ya está en uso.'\n'You must enter a name for the topic.': 'Debe nombrar el tópico.'\n'You must choose a language for the topic.': 'Debe elegir un idioma para el tópico'\n'This topic has subtopics, therefore it cannot be deleted.': 'Este tópico tiene subtópicos, por lo que no puede ser eliminado'\n'Add translation:': 'Agregar traducción:'\n'Add subtopic:': 'Agregar subtópico:'\nTop: Arriba\n'You do not have the right to add topics.': 'No tiene derecho para agregar temas'\n'You do not have the right to delete topics.': 'No tiene derecho para borrar temas'\n'Are you sure you want to delete the topic $1?': '¿Está seguro de que desea borrar el tema $1?'\n'You do not have the right to change topic name.': 'No tiene derecho para cambiar nombre de tema'\n'The topic $1 could not be deleted.': 'El tema $1 no pudo ser borrado'\n'Adding new topic': 'Agregando nuevo tema'\n'Deleting topic': 'Borrando tema'\n'Change topic name': 'Cambiar nombre de tema'\n'There are $1 articles using the topic.': 'Hay $1 articulo(s) usando el tema'\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.es_AR.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': 'Este nombre de tema ya está en uso.'\n'You must enter a name for the topic.': null\n'You must choose a language for the topic.': null\n'This topic has subtopics, therefore it cannot be deleted.': null\n'Add translation:': null\n'Add subtopic:': null\nTop: null\n'You do not have the right to add topics.': null\n'You do not have the right to delete topics.': null\n'Are you sure you want to delete the topic $1?': null\n'You do not have the right to change topic name.': null\n'The topic $1 could not be deleted.': null\n'Adding new topic': null\n'Deleting topic': null\n'Change topic name': null\n'There are $1 articles using the topic.': null\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.fa.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': null\n'You must choose a language for the topic.': null\n'This topic has subtopics, therefore it cannot be deleted.': null\n'Add translation:': null\n'Add subtopic:': null\nTop: null\n'You do not have the right to add topics.': null\n'You do not have the right to delete topics.': null\n'Are you sure you want to delete the topic $1?': null\n'You do not have the right to change topic name.': null\n'The topic $1 could not be deleted.': null\n'Adding new topic': null\n'Deleting topic': null\n'Change topic name': null\n'There are $1 articles using the topic.': null\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.fa_AF.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': null\n'You must choose a language for the topic.': null\n'This topic has subtopics, therefore it cannot be deleted.': null\n'Add translation:': null\n'Add subtopic:': null\nTop: null\n'You do not have the right to add topics.': null\n'You do not have the right to delete topics.': null\n'Are you sure you want to delete the topic $1?': null\n'You do not have the right to change topic name.': null\n'The topic $1 could not be deleted.': null\n'Adding new topic': null\n'Deleting topic': null\n'Change topic name': null\n'There are $1 articles using the topic.': null\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.fr.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': 'Vous devez entrer un nom pour le sujet. '\n'You must choose a language for the topic.': 'Vous devez choisir une langue pour le sujet. '\n'This topic has subtopics, therefore it cannot be deleted.': 'Ce sujet a des sous-sujets, donc il ne peut pas être supprimé. '\n'Add translation:': 'Ajouter traduction:'\n'Add subtopic:': 'Ajouter sous-sujet:'\nTop: Haut\n'You do not have the right to add topics.': 'Vous navez pas le droit dajouter des sujets. '\n'You do not have the right to delete topics.': 'Vous navez pas le droit de supprimer des sujets. '\n'Are you sure you want to delete the topic $1?': 'êtes-vous sûrs que vous voulez supprimer le sujet $1 ? '\n'You do not have the right to change topic name.': 'Vous navez pas le droit de changer de nom de sujet.'\n'The topic $1 could not be deleted.': 'Le sujet $1 ne pouvait pas être supprimé.'\n'Adding new topic': 'Ajout nouveau sujet'\n'Deleting topic': 'Suppression sujet'\n'Change topic name': 'changer nom de sujet'\n'There are $1 articles using the topic.': 'Il y a $1 articles employant le sujet.'\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.he.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': null\n'You must choose a language for the topic.': null\n'This topic has subtopics, therefore it cannot be deleted.': null\n'Add translation:': null\n'Add subtopic:': null\nTop: null\n'You do not have the right to add topics.': null\n'You do not have the right to delete topics.': null\n'Are you sure you want to delete the topic $1?': null\n'You do not have the right to change topic name.': null\n'The topic $1 could not be deleted.': null\n'Adding new topic': null\n'Deleting topic': null\n'Change topic name': null\n'There are $1 articles using the topic.': null\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.hr.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': 'Morate unijeti ime za temu.'\n'You must choose a language for the topic.': 'Morate izabrati jezik za temu.'\n'This topic has subtopics, therefore it cannot be deleted.': 'Tema sadržava podtemu pa ne može biti obrisana.'\n'Add translation:': 'Dodaj prijevod:'\n'Add subtopic:': 'Dodaj podtemu:'\nTop: Vrh\n'You do not have the right to add topics.': 'Nemate ovlasti dodavati teme.'\n'You do not have the right to delete topics.': 'Nemate ovlasti brisati teme.'\n'Are you sure you want to delete the topic $1?': 'Jeste li sigurni da želite obrisati temu $1?'\n'You do not have the right to change topic name.': 'Nemate ovlasti mijenjati ime teme.'\n'The topic $1 could not be deleted.': 'Tema $1 se ne može brisati.'\n'Adding new topic': 'Dodaj novu temu'\n'Deleting topic': 'Brisanje teme'\n'Change topic name': 'Izmjena imena teme'\n'There are $1 articles using the topic.': 'Ostalo je $1 članaka koji koriste temu.'\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.hu.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': 'Ha folytatod, akkor a téma és minden altéma leválasztásra kerül az összes cikkről, és törlésre fog kerülni.'\n'Delete anyway': 'Törlés mindenképp'\n'Reset order': 'Sorrend visszaállítása'\n'Order changes will be lost. Are you sure you want to continue?': 'El fognak veszni a sorrend módosításai. Biztosan folytatni akarod?'\n'Topics order saved.': 'A témák sorrendjének mentése megtörtént.'\n'Show languages': 'Nyelvek megjelenítése'\n'Save order': 'Sorrend mentése'\n'Click to edit': 'Kattints a szerkesztéshez'\n'Add root topic': 'Gyökértéma hozzáadása'\n'Topic was deleted.': 'A téma törlése megtörtént.'\n'The topic name is already in use by another topic.': 'Már használja egy másik téma a téma nevét.'\n'You must enter a name for the topic.': 'Meg kell adnod a téma nevét.'\n'You must choose a language for the topic.': 'Ki kell választanod a téma nyelvét.'\n'This topic has subtopics, therefore it cannot be deleted.': 'Ez a téma tartalmaz altémákat, ezért nem törölhető.'\n'Add translation:': 'Fordítás hozzáadása:'\n'Add subtopic:': 'Altéma hozzáadása:'\nTop: null\n'You do not have the right to add topics.': 'Nincs jogod a témák hozzáadásához.'\n'You do not have the right to delete topics.': 'Nincs jogod a témák törléséhez.'\n'Are you sure you want to delete the topic $1?': 'Biztosan törölni akarod a/z $1 témát?'\n'You do not have the right to change topic name.': 'Nincs jogod a téma nevének módosításához.'\n'The topic $1 could not be deleted.': 'A/z $1 témát nem lehet törölni.'\n'Adding new topic': 'Új téma hozzáadása'\n'Deleting topic': 'Téma törlése'\n'Change topic name': 'Téma nevének módosítása'\n'There are $1 articles using the topic.': 'Jelenleg $1 cikk használja a témát.'\n'Search for topics': 'Témák keresése'\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: 'Írd be valanelyik téma nevének egy részét...'\n        addroot: null\n        topicname: 'Téma neve'\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: 'Altéma hozzáadása'\n        subtopicname: 'Altéma neve'\n        addtranslation: 'Fordítás hozzáadása'\n        topictranslations: null\n        choose: null\n        translationstring: 'Fordítási karakterlánc'\n        tree: Témák\n    title: null\n    btn:\n        hide: null\n        remove: 'Téma eltávolítása'\n        edit: 'Téma szerkesztése'\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: 'A téma fordításának eltávolítása'\n    alerts:\n        languagenotfound: 'Nem található a nyelv a következő területi beállítás szerint: %locale%'\n        translationadded: 'A fordítás hozzáadásra került'\n        translationexists: 'Már létezik %locale% nyelvű fordítás!'\n        beforedelete: 'Biztosan törölni akarod ezt a témát?'\n        wrongparams: 'A rendszerezett gyökértémák számának azonosnak kell lennie az összes gyökértéma számával.'\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: 'Altémákat tartalmazó témák törlésekor végleg eltávolításra fog kerülni az összes altéma a fordításokkal együtt. Biztos vagy benne?'\n    added: 'A téma hozzáadása megtörtént'\n    failedfind: 'Nem sikerült megtalálni a témát az azonosító alapján: %id%'\n    failedfindTranslation: 'Nem sikerült megtalálni a téma fordítását az azonosító alapján: %id%'\n    removed: 'A/z %title% téma eltávolításra került'\n    exists: null\n    existsname: null\n    removedTranslation: 'A téma fordítása eltávolításra került'\n    failedremoveTranslation: 'Nem távolítható el az alapértelmezett téma fordítása. Távolítsd el inkább a témát.'\n    updated: 'A téma frissítésre került'\n    error: 'Hiba történt, próbálkozz később.'\n    csrfinvalid: 'A CSRF-jogkivonat érvénytelen. Próbáld meg ismét beküldeni az űrlapot.'\n    tooshort: 'Túl rövid a téma neve!'\n    toolong: 'Túl hosszú a téma neve!'\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.hy.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': null\n'You must choose a language for the topic.': null\n'This topic has subtopics, therefore it cannot be deleted.': null\n'Add translation:': null\n'Add subtopic:': null\nTop: null\n'You do not have the right to add topics.': null\n'You do not have the right to delete topics.': null\n'Are you sure you want to delete the topic $1?': null\n'You do not have the right to change topic name.': null\n'The topic $1 could not be deleted.': null\n'Adding new topic': null\n'Deleting topic': null\n'Change topic name': null\n'There are $1 articles using the topic.': null\n'Search for topics': null\ntopics:\n    tip: 'In Newscoop, topics are the subject matters assigned by editors and journalists to articles, so that related articles can be identified and displayed together. A root topic can have many subtopics; for example: the sports root topic could have the subtopics football, basketball, and water polo. An individual article may have several root topics or subtopics assigned to it.'\n    label:\n        all: All\n        filterbylang: 'Show topics in language'\n        search: Search\n        filterplaceholder: 'Type a part of any topic name...'\n        addroot: 'Add root topic'\n        topicname: 'Topic name'\n        expandcollapse: expand/collapse\n        changename: 'Change topic name'\n        for: for\n        addsubtopic: 'Add subtopic'\n        subtopicname: 'Subtopic name'\n        addtranslation: 'Add translation'\n        topictranslations: 'Topic translations'\n        choose: Choose...\n        translationstring: 'Translation string'\n        tree: 'Tree of topics'\n    title: Topics\n    btn:\n        hide: Hide\n        remove: 'Remove topic'\n        edit: 'Edit topic'\n        close: Close\n        add: Add\n        save: Save\n        saveandclose: 'Save and Close'\n        removetrans: 'Remove Topic''s translation'\n    alerts:\n        languagenotfound: 'Could not find language by locale: %locale%'\n        translationadded: 'Translation was added'\n        translationexists: 'Translation for locale %locale% already exists!'\n        beforedelete: 'Are you sure you want to delete this topic?'\n        wrongparams: 'Number of sorted root topics must be the same as number of all root topics'\n        ordersaved: 'Order saved.'\n        saved: 'Successfully saved.'\n        beforedeleteinfo: 'When deleting topic with subtopics, all subtopics together with translations will be removed permanently. Are you sure?'\n    added: 'Topic was added'\n    failedfind: 'Failed to find Topic by id: %id%'\n    failedfindTranslation: 'Failed to find Topic''s translation by id: %id%'\n    removed: 'Topic %title% was removed'\n    exists: 'Topic already exists'\n    existsname: 'Topic name already exists!'\n    removedTranslation: 'Topic''s translation was removed'\n    failedremoveTranslation: 'Can not remove default topic''s translation. Remove topic instead.'\n    updated: 'Topic was updated'\n    error: 'Error occurred, please try again later.'\n    csrfinvalid: 'The CSRF token is invalid. Please try to resubmit the form.'\n    tooshort: 'Topic name is too short!'\n    toolong: 'Topic name is too long!'\n    attachtopics: 'Attach topics'\n    attached: 'This topic is attached to %occurence% article(s). When you remove this topic, it will be automatically detached from all articles it is attached to. If the topic has children topics, they will be also detached.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.hy_AM.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': null\n'You must choose a language for the topic.': null\n'This topic has subtopics, therefore it cannot be deleted.': null\n'Add translation:': null\n'Add subtopic:': null\nTop: null\n'You do not have the right to add topics.': null\n'You do not have the right to delete topics.': null\n'Are you sure you want to delete the topic $1?': null\n'You do not have the right to change topic name.': null\n'The topic $1 could not be deleted.': null\n'Adding new topic': null\n'Deleting topic': null\n'Change topic name': null\n'There are $1 articles using the topic.': null\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.id.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': null\n'You must choose a language for the topic.': null\n'This topic has subtopics, therefore it cannot be deleted.': null\n'Add translation:': null\n'Add subtopic:': null\nTop: null\n'You do not have the right to add topics.': null\n'You do not have the right to delete topics.': null\n'Are you sure you want to delete the topic $1?': null\n'You do not have the right to change topic name.': null\n'The topic $1 could not be deleted.': null\n'Adding new topic': null\n'Deleting topic': null\n'Change topic name': null\n'There are $1 articles using the topic.': null\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.it.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': 'Se continui, largomento e tutti i suoi sottoargomenti verranno scollegati da tutti gli articoli e cancellati.'\n'Delete anyway': 'Cancella comunque'\n'Reset order': 'Ripristina ordine'\n'Order changes will be lost. Are you sure you want to continue?': 'I cambiamenti di ordine verranno perduti. Vuoi davvero proseguire?'\n'Topics order saved.': 'Ordine degli argomenti salvato.'\n'Show languages': 'Mostra lingue'\n'Save order': 'Salva lordine'\n'Click to edit': 'Clicca per modificare'\n'Add root topic': 'Aggiungi argomento base'\n'Topic was deleted.': 'Largomento è stato eliminato.'\n'The topic name is already in use by another topic.': 'Questo nome è già usato per un altro argomento.'\n'You must enter a name for the topic.': 'Occorre inserire un nome per largomento.'\n'You must choose a language for the topic.': 'Devi scegliere una lingua per largomento.'\n'This topic has subtopics, therefore it cannot be deleted.': 'Questo argomento ha dei sottoargomenti e non può quindi essere eliminato.'\n'Add translation:': 'Aggiungi traduzione:'\n'Add subtopic:': 'Aggiungi sottoargomento:'\nTop: 'Vai su'\n'You do not have the right to add topics.': 'Non hai il permesso di aggiungere argomenti.'\n'You do not have the right to delete topics.': 'Non hai il permesso di eliminare argomenti.'\n'Are you sure you want to delete the topic $1?': 'Vuoi davvero eliminare largomento $1?'\n'You do not have the right to change topic name.': 'Non si dispone dei diritti di cambiare il nome dellargomento.'\n'The topic $1 could not be deleted.': 'Largomento $1 non può essere eliminato.'\n'Adding new topic': 'Aggiungi un argomento'\n'Deleting topic': 'Elimina argomento'\n'Change topic name': 'Cambia il nome dellargomento'\n'There are $1 articles using the topic.': 'Ci sono $1 articoli che stanno usando questo argomento.'\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.ka.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': 'თუ განაგრძობთ, მოცემული თემა და ყველა ქვე-თემა გამოეყოფა დანარჩენ სტატიებს, და წაიშლება. '\n'Delete anyway': 'ნებისმიერ შემთხვევაში წაშლა'\n'Reset order': 'თანმიმდევრობის საწყის მდგომარეობაში დაბრუნება'\n'Order changes will be lost. Are you sure you want to continue?': 'თანმიმდევრობის ცვლილება არ დამახსოვრდება. გსურთ გაგრძელება?'\n'Topics order saved.': 'თემების თანმიმდევრობა დამახსოვრდა.'\n'Show languages': 'ენების ჩვენება'\n'Save order': 'თანმიმდევრობის შენახვა'\n'Click to edit': რედაქტირება\n'Add root topic': 'ფუძე თემის დამატება'\n'Topic was deleted.': 'თემა წაიშალა.'\n'The topic name is already in use by another topic.': 'თემის სათაური უკვე გამოყენებულია სხვა თემაზე.'\n'You must enter a name for the topic.': 'თქვენ უნდა აკრიფოთ თემის სახელი.'\n'You must choose a language for the topic.': 'აირჩიეთ თმის ენა'\n'This topic has subtopics, therefore it cannot be deleted.': 'ამ თემას აქვს ქვეთემები, შესაბამისად მისი წაშლა შეუძლებელია.'\n'Add translation:': 'თარგმანის დამატება:'\n'Add subtopic:': 'ქვეთემის დამატება'\nTop: ზედა\n'You do not have the right to add topics.': 'თქვენ არ გაქვთ თემების დამატების უფლება.'\n'You do not have the right to delete topics.': 'თქვენ არ გაქვთ თემების წაშლის უფლება.'\n'Are you sure you want to delete the topic $1?': 'დარწმუნებული ხართ რომ გსურთ $1 თემის წაშლა?'\n'You do not have the right to change topic name.': 'თქვენ არ გაქვთ თემის სახელის შეცვლის უფლება'\n'The topic $1 could not be deleted.': '$1 თემა ვერ წაიშალა.'\n'Adding new topic': 'ახალი თემის დაამტება'\n'Deleting topic': 'თემის წაშლა'\n'Change topic name': 'თემის სახელის შეცვლა'\n'There are $1 articles using the topic.': '$1 სტატია იყენებს ამ თემას.'\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.ko.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': '토픽에 대한 이름을 입력하시오.'\n'You must choose a language for the topic.': '토픽에 대한 언어를 선택하시오.'\n'This topic has subtopics, therefore it cannot be deleted.': '이 토픽은 서브토픽이 있읍니다. 따라서 삭제할 수 없습니다.'\n'Add translation:': '번역 추가'\n'Add subtopic:': '토픽 추가'\nTop: 톱\n'You do not have the right to add topics.': '토픽을 추가할 권한이 없습니다. '\n'You do not have the right to delete topics.': '토픽을 삭제할 권한이 없습니다.. '\n'Are you sure you want to delete the topic $1?': '토픽 $1 을 확실히 삭제합니까?'\n'You do not have the right to change topic name.': '토픽 이름을 수정할 권한이 없습니다. '\n'The topic $1 could not be deleted.': '토픽 $1 을 삭제할 수 없습니다. '\n'Adding new topic': '새로운 토픽 추가'\n'Deleting topic': '토픽 삭제'\n'Change topic name': '토픽 이름 수정'\n'There are $1 articles using the topic.': '토픽을 사용하는 $1 기사가 있습니다. '\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.ku.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': null\n'You must choose a language for the topic.': null\n'This topic has subtopics, therefore it cannot be deleted.': null\n'Add translation:': null\n'Add subtopic:': null\nTop: null\n'You do not have the right to add topics.': null\n'You do not have the right to delete topics.': null\n'Are you sure you want to delete the topic $1?': null\n'You do not have the right to change topic name.': null\n'The topic $1 could not be deleted.': null\n'Adding new topic': null\n'Deleting topic': null\n'Change topic name': null\n'There are $1 articles using the topic.': null\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.lv.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': null\n'You must choose a language for the topic.': null\n'This topic has subtopics, therefore it cannot be deleted.': null\n'Add translation:': null\n'Add subtopic:': null\nTop: null\n'You do not have the right to add topics.': null\n'You do not have the right to delete topics.': null\n'Are you sure you want to delete the topic $1?': null\n'You do not have the right to change topic name.': null\n'The topic $1 could not be deleted.': null\n'Adding new topic': null\n'Deleting topic': null\n'Change topic name': null\n'There are $1 articles using the topic.': null\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.mr.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': null\n'You must choose a language for the topic.': null\n'This topic has subtopics, therefore it cannot be deleted.': null\n'Add translation:': null\n'Add subtopic:': null\nTop: null\n'You do not have the right to add topics.': null\n'You do not have the right to delete topics.': null\n'Are you sure you want to delete the topic $1?': null\n'You do not have the right to change topic name.': null\n'The topic $1 could not be deleted.': null\n'Adding new topic': null\n'Deleting topic': null\n'Change topic name': null\n'There are $1 articles using the topic.': null\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.nb_NO.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': null\n'You must choose a language for the topic.': null\n'This topic has subtopics, therefore it cannot be deleted.': null\n'Add translation:': null\n'Add subtopic:': null\nTop: null\n'You do not have the right to add topics.': null\n'You do not have the right to delete topics.': null\n'Are you sure you want to delete the topic $1?': null\n'You do not have the right to change topic name.': null\n'The topic $1 could not be deleted.': null\n'Adding new topic': null\n'Deleting topic': null\n'Change topic name': null\n'There are $1 articles using the topic.': null\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.nl.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': null\n'You must choose a language for the topic.': null\n'This topic has subtopics, therefore it cannot be deleted.': 'Het onderwerp heeft deelonderwerpen, daarom kan het niet worden gewist.'\n'Add translation:': 'Voeg vertaling toe:'\n'Add subtopic:': 'Voeg deelonderwerp toe:'\nTop: Top\n'You do not have the right to add topics.': null\n'You do not have the right to delete topics.': null\n'Are you sure you want to delete the topic $1?': null\n'You do not have the right to change topic name.': null\n'The topic $1 could not be deleted.': 'The onderwerp $1 kan niet worden verwijderd.'\n'Adding new topic': 'Toevoegen nieuw onderwerp'\n'Deleting topic': 'Verwijderen onderwerp'\n'Change topic name': 'Verander onderwerp naam'\n'There are $1 articles using the topic.': 'Er zijn $1 artikelen met dit onderwerp.'\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.pa.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': null\n'You must choose a language for the topic.': null\n'This topic has subtopics, therefore it cannot be deleted.': null\n'Add translation:': null\n'Add subtopic:': null\nTop: null\n'You do not have the right to add topics.': null\n'You do not have the right to delete topics.': null\n'Are you sure you want to delete the topic $1?': null\n'You do not have the right to change topic name.': null\n'The topic $1 could not be deleted.': null\n'Adding new topic': null\n'Deleting topic': null\n'Change topic name': null\n'There are $1 articles using the topic.': null\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.pl.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': 'Jeśli będziesz kontynuował to tematy is pod-tematy zostaną odłączone ze wszystkich artykułów i usunięte.'\n'Delete anyway': 'Usuń pomimo tego.'\n'Reset order': 'Resetuj ustawienie'\n'Order changes will be lost. Are you sure you want to continue?': 'Zmiany w ustawieniu zostaną utracone. Na pewno chcesz kontynuować?'\n'Topics order saved.': 'Porządek tematów zachowany.'\n'Show languages': 'Pokaż języki'\n'Save order': 'Zapisz kolejność'\n'Click to edit': 'Kliknij aby edytować'\n'Add root topic': 'Dodaj główny temat'\n'Topic was deleted.': 'Temat został usunięty.'\n'The topic name is already in use by another topic.': 'Ta nazwa jest już wykorzystywana przez inny temat.'\n'You must enter a name for the topic.': 'Musisz podać nazwę dla tematu.'\n'You must choose a language for the topic.': 'Musisz wybrać język dla tematu.'\n'This topic has subtopics, therefore it cannot be deleted.': 'Ten temat ma podtematy, dlatego nie może być usunięty.'\n'Add translation:': 'Dodaj tłumaczenie:'\n'Add subtopic:': 'Dodaj podtemat:'\nTop: Góra\n'You do not have the right to add topics.': 'Nie masz praw aby dodawać tematy.'\n'You do not have the right to delete topics.': 'Nie masz praw aby usuwać tematy.'\n'Are you sure you want to delete the topic $1?': 'Czy na pewno chcesz usunąć temat $1?'\n'You do not have the right to change topic name.': 'Nie masz praw aby zmieniać nazwę tematu.'\n'The topic $1 could not be deleted.': 'Temat $1 nie został usunięty.'\n'Adding new topic': 'Dodawanie nowego tematu'\n'Deleting topic': 'Usuwanie tematu'\n'Change topic name': 'Zmień nazwę tematu'\n'There are $1 articles using the topic.': 'Artykuły w temacie: $1'\n'Search for topics': 'Szukaj dla tematu'\ntopics:\n    tip: 'W Newscoopie, tematy zarządzanie są przed edytorów i dziennikarzy na poziomie artykułów. Dzięki temu można grupować podobne artykuły i wyświetlać je razem. Główny temat może mieć wiele podtematów, na przykład: temat \"Sport\" może mieć podtematy takie jak \"piłka nożna\", \"koszykówka\", \"piłka wodna\". Pojedynczy artykuł może być dołączony do wielu głównych tematów jak i wielu różnych podtematów. '\n    label:\n        all: Wszystko\n        filterbylang: 'Pokaż tematy w tym języku'\n        search: Szukaj\n        filterplaceholder: 'Wpisz część nazwy tematu'\n        addroot: 'Dodaj główny temat'\n        topicname: 'Nazwa tematu'\n        expandcollapse: rozwiń/zwiń\n        changename: 'Zmień nazwę tematu'\n        for: dla\n        addsubtopic: 'Dodaj podtemat'\n        subtopicname: 'Nazwa podtematu'\n        addtranslation: 'Dodaj tłumaczenie'\n        topictranslations: 'Tłumaczenia tematu'\n        choose: Wybierz...\n        translationstring: 'Tekst tłumaczenia'\n        tree: 'Drzewo tematów'\n    title: Tematy\n    btn:\n        hide: Schowaj\n        remove: 'Usuń temat'\n        edit: 'Edytuj temat'\n        close: Zamknij\n        add: Dodaj\n        save: Zapisz\n        saveandclose: 'Zapisz i zamknij'\n        removetrans: 'Usuń tłumaczenie tematów'\n    alerts:\n        languagenotfound: 'Nie można znaleźć języka dla lokalizacji: %locale%'\n        translationadded: 'Tłumaczenie zostało dodane'\n        translationexists: 'Tłumaczenie dla lokalizacji %locale% już istnieje!'\n        beforedelete: 'Czy na pewno chcesz usunąć ten temat?'\n        wrongparams: 'Liczba sortowanych tematów musi być taka sama jak liczba wszystkich głównych tematów.'\n        ordersaved: 'Kolejność została zapisana.'\n        saved: 'Zapisano pomyślnie.'\n        beforedeleteinfo: 'Gdy usuwasz temat z podtematami, wszystkie podtematy razem z ich tłumaczeniami zostaną usunięte. Jesteś pewnie że chcesz to zrobić?'\n    added: 'Temat został dodany'\n    failedfind: 'Nie można znaleźć tematu z identyfikatorem: %id%'\n    failedfindTranslation: 'Nie można znaleźć tłumaczeń tematu z identyfikatorem: %id%'\n    removed: 'Temat %title% został usunięty'\n    exists: 'Taki temat już istnieje'\n    existsname: 'Taka nazwa tematu już istnieje!'\n    removedTranslation: 'Tłumaczenie tematu zostało usunięte'\n    failedremoveTranslation: 'Nie można usunąć domyślnego tłumaczenia tematu. Zamiast tego usuń temat.'\n    updated: 'Temat został zaktualizowany'\n    error: 'Wystąpił błąd, spróbuj ponownie później.'\n    csrfinvalid: 'Klucz bezpieczeństwa wygasł. Wyślij formularz ponownie.'\n    tooshort: 'Nazwa tematu jest za krótka!'\n    toolong: 'Nazwa tematu jest za długa!'\n    attachtopics: 'Dołącz tematy'\n    attachedtopics: 'Dołączone tematy'\n    attached: 'Ten temat jest dołączony do %occurence% artykułów. Po usunięciu tematu zostanie od automatycznie odłączony od wszystkich artykułów do których był dołączony. Jeśli temat ma podtematy to i one zostaną odłączone.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.ps.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': null\n'You must choose a language for the topic.': null\n'This topic has subtopics, therefore it cannot be deleted.': null\n'Add translation:': null\n'Add subtopic:': null\nTop: null\n'You do not have the right to add topics.': null\n'You do not have the right to delete topics.': null\n'Are you sure you want to delete the topic $1?': null\n'You do not have the right to change topic name.': null\n'The topic $1 could not be deleted.': null\n'Adding new topic': null\n'Deleting topic': null\n'Change topic name': null\n'There are $1 articles using the topic.': null\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.pt.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': 'Tem de usar um nome para o tema.'\n'You must choose a language for the topic.': 'Tem de escolher um idioma para o tema.'\n'This topic has subtopics, therefore it cannot be deleted.': 'Este tema tem descendentes, assim não é possivel eliminado.'\n'Add translation:': 'Adicionar tradução:'\n'Add subtopic:': 'Adicionar sub-tema:'\nTop: Topo\n'You do not have the right to add topics.': 'Não tem permissões para Adicionar Temas'\n'You do not have the right to delete topics.': 'Não tem permissões para Eliminar Temas'\n'Are you sure you want to delete the topic $1?': 'Eliminar tema $1?'\n'You do not have the right to change topic name.': 'Não tem permissão para Alterar Tema.'\n'The topic $1 could not be deleted.': 'O Tema $1 não pode ser Apagado.'\n'Adding new topic': 'Adicionando Tema'\n'Deleting topic': 'Eliminando Tema'\n'Change topic name': 'Alterar Tema'\n'There are $1 articles using the topic.': 'Existe(m) $1 artigos usando este Tema.'\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.pt_BR.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': 'Salvar a ordem'\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': 'O nome do tópico já está em uso'\n'You must enter a name for the topic.': 'Você tem que digitar o nome para o tema.'\n'You must choose a language for the topic.': 'Tem de escolher um idioma para o tema.'\n'This topic has subtopics, therefore it cannot be deleted.': 'Este tema tem descendentes, assim não é possivel eliminado.'\n'Add translation:': 'Adicionar a tradução:'\n'Add subtopic:': 'Adicionar sub-tema:'\nTop: Topo\n'You do not have the right to add topics.': 'Não tem permissões para Adicionar Temas'\n'You do not have the right to delete topics.': 'Não tem permissões para Eliminar Temas'\n'Are you sure you want to delete the topic $1?': 'Eliminar tema $1?'\n'You do not have the right to change topic name.': 'Não tem permissão para Alterar Tema.'\n'The topic $1 could not be deleted.': 'O Tema $1 não pode ser Apagado.'\n'Adding new topic': 'Adicionando Tema'\n'Deleting topic': 'Eliminando Tema'\n'Change topic name': 'Alterar Tema'\n'There are $1 articles using the topic.': 'Existe(m) $1 artigos usando este Tema.'\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.ro.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': 'Numele subiectului de discuţie este deja folosit de un alt subiect de discuţie.'\n'You must enter a name for the topic.': 'Trebuie să selectezi o denumire pentru subiect.'\n'You must choose a language for the topic.': 'Trebuie să selectezi o limbă pentru subiect.'\n'This topic has subtopics, therefore it cannot be deleted.': 'Subiectul are sub-subiecte şi de aceea nu poate fi şters.'\n'Add translation:': 'Adaugă traducere:'\n'Add subtopic:': 'Adaugă sub-subiect:'\nTop: Sus\n'You do not have the right to add topics.': 'Nu ai dreptul să adăugi subiecte.'\n'You do not have the right to delete topics.': 'Nu ai dreptul să ştergi subiecte.'\n'Are you sure you want to delete the topic $1?': 'Eşti sigur că vrei să ştergi subiectul $1?'\n'You do not have the right to change topic name.': 'Nu aveţi dreptul să modificaţi denumirea subiectului.'\n'The topic $1 could not be deleted.': 'Subiectul $1 nu poate fi şters.'\n'Adding new topic': 'Se adaugă subiect nou'\n'Deleting topic': 'Şterge subiect'\n'Change topic name': 'Schimbă denumirea subiectului'\n'There are $1 articles using the topic.': 'Mai sunt $1 articole care folosesc subiectul.'\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.ru.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': 'если вы продолжите, темы и подтемы будут откреплены от всех статей и удалены.'\n'Delete anyway': 'Удалить в любом случае'\n'Reset order': 'Переустановка порядка следования'\n'Order changes will be lost. Are you sure you want to continue?': 'Изменения порядка были утеряны. Вы уверены, что хотите продолжить?'\n'Topics order saved.': 'Порядок тем сохранен.'\n'Show languages': 'Отобразить языки'\n'Save order': 'Сохранить порядок следования.'\n'Click to edit': 'Кликните для редактирования'\n'Add root topic': 'Добавить основную тему'\n'Topic was deleted.': 'Тема удалена.'\n'The topic name is already in use by another topic.': 'Это имя уже используется другой темой.'\n'You must enter a name for the topic.': 'Вы должны ввести название темы.'\n'You must choose a language for the topic.': 'Вы должны выбрать язык для темы.'\n'This topic has subtopics, therefore it cannot be deleted.': 'Эта тема имеет подтему, следовательно не может быть удалена.'\n'Add translation:': 'Добавить перевод:'\n'Add subtopic:': 'Добавить подтему:'\nTop: Верх\n'You do not have the right to add topics.': 'Вы не имеете прав доступа для добавления новых тем.'\n'You do not have the right to delete topics.': 'Вы не имеете прав доступа для удаления новых тем.'\n'Are you sure you want to delete the topic $1?': 'Вы уверены, что хотите удалить тему $1?'\n'You do not have the right to change topic name.': 'Вы не имеете прав доступа для переименования тем.'\n'The topic $1 could not be deleted.': 'Невозможно удалить тему $1'\n'Adding new topic': 'Добавление новой темы'\n'Deleting topic': 'Удаление темы'\n'Change topic name': 'Переименовать тему'\n'There are $1 articles using the topic.': 'Тема используется в $1 статье(-ях).'\n'Search for topics': 'Искать темы'\ntopics:\n    tip: 'В Newscoop темы привязываются редакторами и журналистами к статьям, чтобы связанные статьи могли определяться и отображаться вместе. Основная тема может иметь много вложенных тем, н-р: для темы спорт вложенными темами будут футбол, баскетбол, водное поло. К статье можно привязать несколько основных или вложенных тем. '\n    label:\n        all: Все\n        filterbylang: 'Показать темы на языке'\n        search: Поиск\n        filterplaceholder: 'Наберите часть названия темы...'\n        addroot: 'Добавить основную тему'\n        topicname: 'Название темы'\n        expandcollapse: развернуть/свернуть\n        changename: 'Переименовать тему'\n        for: для\n        addsubtopic: 'Добавить вложенную тему'\n        subtopicname: 'Название вложенной темы'\n        addtranslation: 'Добавить перевод:'\n        topictranslations: 'Переводы темы'\n        choose: Выбрать...\n        translationstring: 'Строка перевода'\n        tree: 'Структура тем'\n    title: Темы\n    btn:\n        hide: Скрыть\n        remove: 'Удалить тему'\n        edit: 'Редактировать тему'\n        close: Закрыть\n        add: Добавить\n        save: Сохранить\n        saveandclose: 'Сохранить и закрыть'\n        removetrans: 'Удалить перевод темы'\n    alerts:\n        languagenotfound: 'Не удалось найти язык по коду : %locale%'\n        translationadded: 'Добавлен перевод'\n        translationexists: 'Перевод на  %locale% уже существует!'\n        beforedelete: 'Вы действительно хотите удалить эту тему?'\n        wrongparams: null\n        ordersaved: 'Порядок сохранен.'\n        saved: 'Сохранение завершено.'\n        beforedeleteinfo: 'При удалении тем, имеющих вложенные темы, все вложенные вместе с переводами будут безвозвратно удалены. Вы уверены, что хотите этого?'\n    added: 'Тема добавлена'\n    failedfind: 'Не удалось найти тему по id: %id%'\n    failedfindTranslation: 'Не удалось найти перевод темы по id: %id%'\n    removed: 'Тема %title% удалена'\n    exists: 'Такая тема уже существует'\n    existsname: 'Название темы уже существует'\n    removedTranslation: 'Перевод темы удален'\n    failedremoveTranslation: 'Невозможно удалить основной перевод темы. Удалите саму тему.'\n    updated: 'Тема обновлена'\n    error: 'Произошла ошибка, повторите позже.'\n    csrfinvalid: null\n    tooshort: 'Название темы слишком короткое.'\n    toolong: 'Название темы слишком длинное.'\n    attachtopics: 'Прикрепить темы'\n    attachedtopics: null\n    attached: 'Эта тема связана с %occurence% статьей(статьями). При ее удалении она будет автоматически откреплена от всех этих статей. Если у нее были вложенные темы, они также будут откреплены. '\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.sh.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': 'Ukoliko nastavite, topik i svi pod-topici će biti uklonjeni iz svih tekstova, i obrisani.'\n'Delete anyway': 'Svejedno, obriši'\n'Reset order': 'Poništi redosled'\n'Order changes will be lost. Are you sure you want to continue?': 'Izmene redosleda će biti poništene. Da li ste sigurni da želite da nastavite?'\n'Topics order saved.': 'Redosled tema je snimljen.'\n'Show languages': 'Prikaži jezike'\n'Save order': 'Snimi redosled'\n'Click to edit': 'Klik za uređivanje'\n'Add root topic': 'Dodaj osnovnu temu'\n'Topic was deleted.': 'Tema je obrisana.'\n'The topic name is already in use by another topic.': 'Ime za topik je već u upotrebi'\n'You must enter a name for the topic.': 'Morate uneti ime topika.'\n'You must choose a language for the topic.': 'Morate izabrati jezik za temu.'\n'This topic has subtopics, therefore it cannot be deleted.': 'Ova tema ima pod-teme, pa ne može biti obrisana.'\n'Add translation:': 'dodaj prevod:'\n'Add subtopic:': 'Dodaj pod-temu:'\nTop: vrh\n'You do not have the right to add topics.': 'Nemate pravo da dodaјete teme.'\n'You do not have the right to delete topics.': 'Nemate pravo da brišete teme.'\n'Are you sure you want to delete the topic $1?': 'Da li ste sigurni da želite da obrišete temu $1? '\n'You do not have the right to change topic name.': 'Nemate pravo da menjate ime teme'\n'The topic $1 could not be deleted.': 'Tema $1 ne može biti obrisana.'\n'Adding new topic': 'Dodavanje nove teme'\n'Deleting topic': 'Brisanje teme'\n'Change topic name': 'Promeni naziv teme'\n'There are $1 articles using the topic.': 'Preostalo je $1 tekstova koji koriste ovu temu.'\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: Sve\n        filterbylang: null\n        search: Traži\n        filterplaceholder: null\n        addroot: 'Dodaj osnovnu temu'\n        topicname: null\n        expandcollapse: null\n        changename: 'Promeni naziv teme'\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: Izaberi...\n        translationstring: null\n        tree: null\n    title: Teme\n    btn:\n        hide: Sakrij\n        remove: null\n        edit: null\n        close: Zatvori\n        add: Dodaj\n        save: Snimi\n        saveandclose: 'Snimi i zatvori'\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: 'Uspešno snimljeno.'\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.sq.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': null\n'You must choose a language for the topic.': null\n'This topic has subtopics, therefore it cannot be deleted.': null\n'Add translation:': null\n'Add subtopic:': null\nTop: null\n'You do not have the right to add topics.': null\n'You do not have the right to delete topics.': null\n'Are you sure you want to delete the topic $1?': null\n'You do not have the right to change topic name.': null\n'The topic $1 could not be deleted.': null\n'Adding new topic': null\n'Deleting topic': null\n'Change topic name': null\n'There are $1 articles using the topic.': null\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.sr.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': 'Уколико наставите, топик и сви под-топици ће бити уклоњени из свих текстова, и обрисани.'\n'Delete anyway': 'Свеједно, обриши'\n'Reset order': 'Поништи редослед'\n'Order changes will be lost. Are you sure you want to continue?': 'Измене редоследа ће бити поништене. Да ли сте сигурни да желите да наставите?'\n'Topics order saved.': 'Редослед топика је сниmљен.'\n'Show languages': 'Прикажи језике'\n'Save order': 'Сними редослед'\n'Click to edit': 'Клик за уређивање'\n'Add root topic': 'Додај матични топик'\n'Topic was deleted.': 'Топик је обрисан'\n'The topic name is already in use by another topic.': 'Име за топик је већ у употреби'\n'You must enter a name for the topic.': 'Морате унети име топика.'\n'You must choose a language for the topic.': 'Морате изабрати језик топика'\n'This topic has subtopics, therefore it cannot be deleted.': 'Овај топик има под-топике, па не може бити обрисан.'\n'Add translation:': 'додај превод:'\n'Add subtopic:': 'Додај под-топик:'\nTop: Врх\n'You do not have the right to add topics.': 'Немате право да додајете топике'\n'You do not have the right to delete topics.': 'Немате право да бришете топике'\n'Are you sure you want to delete the topic $1?': 'Да ли сте сигурни да желите да обришете топик $1? '\n'You do not have the right to change topic name.': 'Немате право да мењате име топика'\n'The topic $1 could not be deleted.': 'Топик $1 не може бити обрисан'\n'Adding new topic': 'Додавање новог топика'\n'Deleting topic': 'Брисање топика'\n'Change topic name': 'Промени име топика'\n'There are $1 articles using the topic.': 'Преостало је $1 текстова који користе овај топик'\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: Све\n        filterbylang: null\n        search: Тражи\n        filterplaceholder: null\n        addroot: 'Додај матични топик'\n        topicname: null\n        expandcollapse: null\n        changename: 'Промени име топика'\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: Топици\n    btn:\n        hide: Сакри\n        remove: null\n        edit: null\n        close: Затвори\n        add: Додај\n        save: Сними\n        saveandclose: 'Сними и затвори'\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: 'Успешно сачувано.'\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.sv.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': 'Du måste skriva ett namn för temat.'\n'You must choose a language for the topic.': 'Du måste välja ett språk för temat.'\n'This topic has subtopics, therefore it cannot be deleted.': 'Det här temat har underteman, det kan därför inte raderas.'\n'Add translation:': 'Lägg till översättning:'\n'Add subtopic:': 'Lägg till undertema:'\nTop: Topp\n'You do not have the right to add topics.': 'Du har inte rätt att lägga till teman.'\n'You do not have the right to delete topics.': 'Du har inte rätt att radera teman.'\n'Are you sure you want to delete the topic $1?': 'Är du säker att du vill radera temat $1?'\n'You do not have the right to change topic name.': 'Du har inte rätt att ändra temanamn.'\n'The topic $1 could not be deleted.': 'Temat $1 kunde inte raderas.'\n'Adding new topic': 'Lägger till nytt tema'\n'Deleting topic': 'Raderar tema'\n'Change topic name': 'Ändra temanamn'\n'There are $1 articles using the topic.': 'Det finns $1 artiklar som använder temat.'\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.tr.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': null\n'You must choose a language for the topic.': null\n'This topic has subtopics, therefore it cannot be deleted.': null\n'Add translation:': null\n'Add subtopic:': null\nTop: null\n'You do not have the right to add topics.': null\n'You do not have the right to delete topics.': null\n'Are you sure you want to delete the topic $1?': null\n'You do not have the right to change topic name.': null\n'The topic $1 could not be deleted.': null\n'Adding new topic': null\n'Deleting topic': null\n'Change topic name': null\n'There are $1 articles using the topic.': null\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.uk.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': 'Якщо Ви продовжите, теми та підтеми будуть відкріплені від усіх статей і видалені.'\n'Delete anyway': 'Видалить у будь-якому випадку.'\n'Reset order': 'Переустановлення порядку слідування.'\n'Order changes will be lost. Are you sure you want to continue?': 'Зміни порядку були втрачені. Ви бажаєте продовжити?'\n'Topics order saved.': 'Порядок тем збережено.'\n'Show languages': 'Показати мови'\n'Save order': 'Зберегти порядок'\n'Click to edit': 'Клікніть для редагування'\n'Add root topic': 'Додати основну тему'\n'Topic was deleted.': 'Тема видалена.'\n'The topic name is already in use by another topic.': 'Назва вже існуе у іншій темі'\n'You must enter a name for the topic.': 'Ви маєте ввести назву теми.'\n'You must choose a language for the topic.': 'Ви маєте вибрати мову теми.'\n'This topic has subtopics, therefore it cannot be deleted.': 'Ця тема має підтему, отже не може бути видалена.'\n'Add translation:': 'Додати переклад:'\n'Add subtopic:': 'Додати підтему:'\nTop: Верх\n'You do not have the right to add topics.': 'Ви не маєте прав додавати нові теми.'\n'You do not have the right to delete topics.': 'Ви не маєте прав видаляти нові теми.'\n'Are you sure you want to delete the topic $1?': 'Ви впевнені, що хочете видалити тему $1?'\n'You do not have the right to change topic name.': 'Ви не маєте прав перейменовувати теми.'\n'The topic $1 could not be deleted.': 'Неможливо видалити тему $1'\n'Adding new topic': 'Додання нової теми.'\n'Deleting topic': 'Видалення теми.'\n'Change topic name': 'Перейменувати тему'\n'There are $1 articles using the topic.': 'Тема використовується у $1 статті(-ях)'\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.vi.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': null\n'You must choose a language for the topic.': null\n'This topic has subtopics, therefore it cannot be deleted.': null\n'Add translation:': null\n'Add subtopic:': null\nTop: null\n'You do not have the right to add topics.': null\n'You do not have the right to delete topics.': null\n'Are you sure you want to delete the topic $1?': null\n'You do not have the right to change topic name.': null\n'The topic $1 could not be deleted.': null\n'Adding new topic': null\n'Deleting topic': null\n'Change topic name': null\n'There are $1 articles using the topic.': null\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.zh.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': 该话题名已被其他话题使用\n'You must enter a name for the topic.': 您必须为话题输入一个名字。\n'You must choose a language for the topic.': null\n'This topic has subtopics, therefore it cannot be deleted.': null\n'Add translation:': null\n'Add subtopic:': null\nTop: null\n'You do not have the right to add topics.': 你无权添加主题\n'You do not have the right to delete topics.': 你无权删除主题\n'Are you sure you want to delete the topic $1?': 您确认要删除主题$1？\n'You do not have the right to change topic name.': 你没有权限改变主题名\n'The topic $1 could not be deleted.': $1主题不能被删除\n'Adding new topic': 添加新主题\n'Deleting topic': 删除主题\n'Change topic name': 改变主题名\n'There are $1 articles using the topic.': 有$1篇文章用此主题\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/topics.zh_TW.yml",
    "content": "'If you continue, topic and all subtopics will be detached from all articles, and deleted.': null\n'Delete anyway': null\n'Reset order': null\n'Order changes will be lost. Are you sure you want to continue?': null\n'Topics order saved.': null\n'Show languages': null\n'Save order': null\n'Click to edit': null\n'Add root topic': null\n'Topic was deleted.': null\n'The topic name is already in use by another topic.': null\n'You must enter a name for the topic.': null\n'You must choose a language for the topic.': null\n'This topic has subtopics, therefore it cannot be deleted.': null\n'Add translation:': null\n'Add subtopic:': null\nTop: null\n'You do not have the right to add topics.': null\n'You do not have the right to delete topics.': null\n'Are you sure you want to delete the topic $1?': null\n'You do not have the right to change topic name.': null\n'The topic $1 could not be deleted.': null\n'Adding new topic': null\n'Deleting topic': null\n'Change topic name': null\n'There are $1 articles using the topic.': null\n'Search for topics': null\ntopics:\n    tip: null\n    label:\n        all: null\n        filterbylang: null\n        search: null\n        filterplaceholder: null\n        addroot: null\n        topicname: null\n        expandcollapse: null\n        changename: null\n        for: null\n        addsubtopic: null\n        subtopicname: null\n        addtranslation: null\n        topictranslations: null\n        choose: null\n        translationstring: null\n        tree: null\n    title: null\n    btn:\n        hide: null\n        remove: null\n        edit: null\n        close: null\n        add: null\n        save: null\n        saveandclose: null\n        removetrans: null\n    alerts:\n        languagenotfound: null\n        translationadded: null\n        translationexists: null\n        beforedelete: null\n        wrongparams: null\n        ordersaved: null\n        saved: null\n        beforedeleteinfo: null\n    added: null\n    failedfind: null\n    failedfindTranslation: null\n    removed: null\n    exists: null\n    existsname: null\n    removedTranslation: null\n    failedremoveTranslation: null\n    updated: null\n    error: null\n    csrfinvalid: null\n    tooshort: null\n    toolong: null\n    attachtopics: null\n    attachedtopics: null\n    attached: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.ar.yml",
    "content": "saved: 'تم الحفظ'\ndeleted: 'تم الحذف'\n'Subscribed sections: $1': 'الأقسام المشتركة اليها: $1'\n'Start Date': 'تاريخ البدء'\n'Select sections for subscribing': 'حدد الأقسام ليتم الاشتراك اليها'\n'Sections saved': 'تم حفظ الأقسام'\n'Section $1': 'القسم $1:'\n'No sections to edit': 'لا أقسام ليتم تحريرها'\n'Edit section': 'حرر القسم'\n'Edit all sections': 'حرر جميع الأقسام'\n'Add new subscription section': 'أضف قسم جديد للاشتراكات'\n'Add new section': 'أضف قسم جديد'\n'Regardless of the language': 'على الرغم من اللغة'\n'Individual languages': 'لغات فردية'\n'All languages': 'جميع اللغات'\n'Paid Days': 'تواريخ الدفع'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.az.yml",
    "content": "saved: yaddaşda\ndeleted: silindi\n'Subscribed sections: $1': 'Abunə olunmuş mölmələr: $1'\n'Start Date': 'Başlama Tarixi'\n'Select sections for subscribing': 'Abunəlik üçün bölmələri seç'\n'Sections saved': 'Bölmələr saxlandı'\n'Section $1': 'Bölmə $1'\n'No sections to edit': 'Dəyişmək üçün bölmə yoxdur'\n'Edit section': 'Bölməni dəyiş'\n'Edit all sections': 'Bütün bölmələri dəyiş'\n'Add new subscription section': 'Yeni abunəlik bölməsi əlavə et'\n'Add new section': 'Yeni bölmə əlavə et'\n'Regardless of the language': 'Dildən asılı olmayaraq'\n'Individual languages': 'Şəxsi dillər'\n'All languages': 'Bütün dillər'\n'Paid Days': 'Ödənmiş Günlər'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.be.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': 'Дадаць новую рубрыку'\n'Regardless of the language': 'Незалежна ад мовы'\n'Individual languages': 'Iндывiдуальныя мовы'\n'All languages': 'Усе мовы'\n'Paid Days': 'Аплачаныя дні'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.bn.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': null\n'Regardless of the language': null\n'Individual languages': null\n'All languages': null\n'Paid Days': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.cs.yml",
    "content": "saved: Uloženo\ndeleted: vymazané\n'Subscribed sections: $1': 'Předpalcené sekce: $1'\n'Start Date': 'Počáteční datum'\n'Select sections for subscribing': 'Vybrat sekce pro přeplacení '\n'Sections saved': 'Sekce uloženy'\n'Section $1': 'Sekce $1'\n'No sections to edit': 'Žádné sekce k úpravě'\n'Edit section': 'Upravit sekci'\n'Edit all sections': 'Upravit všechny sekce'\n'Add new subscription section': 'Přidat nově přeplacenou sekci'\n'Add new section': 'Přidat novou rubriku'\n'Regardless of the language': 'Nehledě na jazyk'\n'Individual languages': 'Jednotlivé jazyky'\n'All languages': 'Všechny jazyky'\n'Paid Days': 'Zaplacené dny'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.da.yml",
    "content": "saved: gemt\ndeleted: slettet\n'Subscribed sections: $1': 'Abonnerede sektioner: $1'\n'Start Date': 'Start dato'\n'Select sections for subscribing': 'Vælg sektioner til abonnement'\n'Sections saved': 'Sektioner gemt'\n'Section $1': 'Sektion $1'\n'No sections to edit': 'Ingen sektioner at redigere'\n'Edit section': 'Rediger sektion'\n'Edit all sections': 'Rediger alle sektioner'\n'Add new subscription section': 'Tilføj ny abonnements sektion'\n'Add new section': 'Tilføj ny sektion'\n'Regardless of the language': 'Uanset sprog'\n'Individual languages': 'Individuelle sprog'\n'All languages': 'Alle sprog'\n'Paid Days': 'Betalte dage'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.de.yml",
    "content": "saved: gespeichert\ndeleted: gelöscht\n'Subscribed sections: $1': 'Abonnierte Rubriken: $1'\n'Start Date': 'Start Datum'\n'Select sections for subscribing': 'Wählen Sie die zu abonnierenden Rubriken aus'\n'Sections saved': 'Rubriken gespeichert'\n'Section $1': 'Rubrik $1'\n'No sections to edit': 'Keine Rubriken zum Bearbeiten'\n'Edit section': 'Rubrik bearbeiten'\n'Edit all sections': 'Alle Rubriken bearbeiten '\n'Add new subscription section': 'Neue Abonnement-Rubrik hinzufügen'\n'Add new section': 'Neue Rubrik hinzufügen'\n'Regardless of the language': 'Unabhängig von der Sprache'\n'Individual languages': 'Individuelle Sprachen'\n'All languages': 'Alle Sprachen'\n'Paid Days': 'Bezahlte Tage'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.de_AT.yml",
    "content": "saved: gespeichert\ndeleted: gelöscht\n'Subscribed sections: $1': 'Abonnierte Rubriken: $1'\n'Start Date': 'Start Datum'\n'Select sections for subscribing': 'Wählen Sie die zu abonnierenden Rubriken aus'\n'Sections saved': 'Rubriken gespeichert'\n'Section $1': 'Rubrik $1'\n'No sections to edit': 'Keine Rubriken zum Bearbeiten'\n'Edit section': 'Rubrik bearbeiten'\n'Edit all sections': 'Alle Rubriken bearbeiten '\n'Add new subscription section': 'Neue Abonnement-Rubrik hinzufügen'\n'Add new section': 'Neue Rubrik hinzufügen'\n'Regardless of the language': 'Unabhängig von der Sprache'\n'Individual languages': 'Individuelle Sprachen'\n'All languages': 'Alle Sprachen'\n'Paid Days': 'Bezahlte Tage'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.el.yml",
    "content": "saved: αποθηκεύτηκε\ndeleted: διαγράφηκε\n'Subscribed sections: $1': 'Εγγεγραμμένες Ενότητες: $1'\n'Start Date': 'Ημερομηνία έναρξης'\n'Select sections for subscribing': 'Επιλέξτε ενότητες για εγγραφή'\n'Sections saved': 'Οι ενότητες αποθηκεύτηκαν'\n'Section $1': 'Ενότητα $1'\n'No sections to edit': 'Δεν υπάρχουν ενότητες για επεξεργασία'\n'Edit section': 'Επεξεργασία ενότητας'\n'Edit all sections': 'Επεξεργασία όλων των ενοτήτων'\n'Add new subscription section': 'Προσθήκη νέας ενότητας εγγραφής '\n'Add new section': 'Προσθήκη νέας ενότητας'\n'Regardless of the language': 'Ανεξαρτήτου γλώσσας'\n'Individual languages': 'Ατομικές γλώσσες'\n'All languages': 'Όλες οι γλώσσες'\n'Paid Days': 'Πληρωμένες Ημέρες'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.en.yml",
    "content": "saved: saved\ndeleted: deleted\n'Subscribed sections: $1': 'Subscribed sections: $1'\n'Start Date': 'Start Date'\n'Select sections for subscribing': 'Select sections for subscribing'\n'Sections saved': 'Sections saved'\n'Section $1': 'Section $1'\n'No sections to edit': 'No sections to edit'\n'Edit section': 'Edit section'\n'Edit all sections': 'Edit all sections'\n'Add new subscription section': 'Add new subscription section'\n'Add new section': 'Add new section'\n'Regardless of the language': 'Regardless of the language'\n'Individual languages': 'Individual languages'\n'All languages': 'All languages'\n'Paid Days': 'Paid Days'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.en_GB.yml",
    "content": "saved: saved\ndeleted: deleted\n'Subscribed sections: $1': 'Subscribed sections: $1'\n'Start Date': 'Start Date'\n'Select sections for subscribing': 'Select sections for subscribing'\n'Sections saved': 'Sections saved'\n'Section $1': 'Section $1'\n'No sections to edit': 'No sections to edit'\n'Edit section': 'Edit section'\n'Edit all sections': 'Edit all sections'\n'Add new subscription section': 'Add new subscription section'\n'Add new section': 'Add new section'\n'Regardless of the language': 'Regardless of the language'\n'Individual languages': 'Individual languages'\n'All languages': 'All languages'\n'Paid Days': 'Paid Days'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.es.yml",
    "content": "saved: guardado\ndeleted: eliminado\n'Subscribed sections: $1': 'Secciones subscritas: $1'\n'Start Date': 'Fecha de inicio'\n'Select sections for subscribing': 'Seleccionar secciones para subscribir'\n'Sections saved': 'Secciones guardadas'\n'Section $1': 'Sección $1'\n'No sections to edit': 'No hay secciones para editar'\n'Edit section': 'Editar sección'\n'Edit all sections': 'Editar todas las secciones'\n'Add new subscription section': 'Añadir nueva sección de subscripción'\n'Add new section': 'Agregar nueva sección'\n'Regardless of the language': 'Sin importar el idioma'\n'Individual languages': 'Idiomas individuales'\n'All languages': 'Todos los idiomas'\n'Paid Days': 'Días pagados'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.es_AR.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': null\n'Regardless of the language': null\n'Individual languages': null\n'All languages': null\n'Paid Days': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.fa.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': null\n'Regardless of the language': null\n'Individual languages': null\n'All languages': null\n'Paid Days': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.fa_AF.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': null\n'Regardless of the language': null\n'Individual languages': null\n'All languages': null\n'Paid Days': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.fr.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': 'Ajouter nouvelle section'\n'Regardless of the language': 'Indépendamment de la langue '\n'Individual languages': 'Langues individuelles'\n'All languages': 'Toutes les langues'\n'Paid Days': 'Jours Payés '\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.he.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': null\n'Regardless of the language': null\n'Individual languages': null\n'All languages': null\n'Paid Days': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.hr.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': 'Dodaj novu rubriku'\n'Regardless of the language': 'Bez obzira na jezik'\n'Individual languages': 'Pojedinačni jezici'\n'All languages': 'Svi jezici'\n'Paid Days': 'Plaćeni dani'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.hu.yml",
    "content": "saved: mentve\ndeleted: törölve\n'Subscribed sections: $1': 'Előfizetett rovatok: $1'\n'Start Date': 'Kezdő dátum'\n'Select sections for subscribing': 'Rovatok kiválasztása az előfizetéshez'\n'Sections saved': 'A rovatok mentése megtörtént'\n'Section $1': '$1 rovat'\n'No sections to edit': 'Nincsenek szerkesztendő rovatok'\n'Edit section': 'Rovat szerkesztése'\n'Edit all sections': 'Az összes rovat szerkesztése'\n'Add new subscription section': 'Új előfizetéses rovat hozzáadása'\n'Add new section': 'Új rovat hozzáadása'\n'Regardless of the language': 'A nyelvtől függetlenül'\n'Individual languages': Nyelvek\n'All languages': 'Minden nyelv'\n'Paid Days': 'Fizetett napok'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.hy.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': null\n'Regardless of the language': null\n'Individual languages': null\n'All languages': null\n'Paid Days': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.hy_AM.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': null\n'Regardless of the language': null\n'Individual languages': null\n'All languages': null\n'Paid Days': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.id.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': null\n'Regardless of the language': null\n'Individual languages': null\n'All languages': null\n'Paid Days': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.it.yml",
    "content": "saved: salvato\ndeleted: eliminato\n'Subscribed sections: $1': 'Sezioni sottoscritte: $1'\n'Start Date': 'Data inizio'\n'Select sections for subscribing': 'Seleziona le sezioni da sottoscrivere'\n'Sections saved': 'Sezioni salvate'\n'Section $1': 'Sezione $1'\n'No sections to edit': 'Nessuna sezione da modificare'\n'Edit section': 'Modifica sezione'\n'Edit all sections': 'Modifica sezioni'\n'Add new subscription section': 'Aggiungi sezione sottoscritta'\n'Add new section': 'Aggiungi sezione'\n'Regardless of the language': 'Ignora lingue'\n'Individual languages': 'Lingue individuali'\n'All languages': 'Tutte le lingue'\n'Paid Days': 'Giorni pagati'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.ka.yml",
    "content": "saved: დამახსოვრებულია\ndeleted: წაიშალა\n'Subscribed sections: $1': 'გამოწერილი სექცია: $1'\n'Start Date': 'დაწყების თარიღი'\n'Select sections for subscribing': 'აირჩიეთ გამოსაწერი სექცია'\n'Sections saved': 'სექციები დამახსოვრდა'\n'Section $1': 'სექცია $1'\n'No sections to edit': 'სექციები რედაქტირებისთვის არ არის.'\n'Edit section': 'სექციის რედაქტირება'\n'Edit all sections': 'ყველა სექციის რედაქტირება'\n'Add new subscription section': 'ახალი გამოწერის სექციის დამატება'\n'Add new section': 'სექციის დამატება'\n'Regardless of the language': 'ენის მიუხედავად'\n'Individual languages': 'ინდივიდუალური ენა'\n'All languages': 'ყველა ენა'\n'Paid Days': 'ფასიანი დღეები'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.ko.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': '새로운 섹션 추가 '\n'Regardless of the language': '언어와 관련 없음'\n'Individual languages': '개별 언어'\n'All languages': '모든 언어'\n'Paid Days': '지불 기간'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.ku.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': null\n'Regardless of the language': null\n'Individual languages': null\n'All languages': null\n'Paid Days': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.lv.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': null\n'Regardless of the language': null\n'Individual languages': null\n'All languages': null\n'Paid Days': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.mr.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': null\n'Regardless of the language': null\n'Individual languages': null\n'All languages': null\n'Paid Days': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.nb_NO.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': null\n'Regardless of the language': null\n'Individual languages': null\n'All languages': null\n'Paid Days': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.nl.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': 'Nieuwe rubriek toevoegen'\n'Regardless of the language': 'Onafhankelijk van de taal'\n'Individual languages': 'Individuele talen'\n'All languages': 'Alle talen'\n'Paid Days': 'Betaalde Dagen'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.pa.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': null\n'Regardless of the language': null\n'Individual languages': null\n'All languages': null\n'Paid Days': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.pl.yml",
    "content": "saved: zapisane\ndeleted: usuniety\n'Subscribed sections: $1': 'Subskrybowane sekcje: $1'\n'Start Date': 'Data startu'\n'Select sections for subscribing': 'Wybierz sekcję dla subskrybcji'\n'Sections saved': 'Sekcja '\n'Section $1': 'Sekcja $1'\n'No sections to edit': 'Brak sekcji do edycji'\n'Edit section': 'Edytuj sekcję'\n'Edit all sections': 'Edytuj wszystkie sekcje'\n'Add new subscription section': 'Dodaj nowe sekcję do subsrybcji'\n'Add new section': 'Dodaj nową sekcję'\n'Regardless of the language': 'Niezależnie od języka'\n'Individual languages': 'Indywidualne języki'\n'All languages': 'Wszystkie języki'\n'Paid Days': 'Opłacone Dni'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.ps.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': null\n'Regardless of the language': null\n'Individual languages': null\n'All languages': null\n'Paid Days': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.pt.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': 'Criar Secção'\n'Regardless of the language': 'Apesar do idioma'\n'Individual languages': Idiomas\n'All languages': 'Todos os idiomas'\n'Paid Days': 'Dias Pagos'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.pt_BR.yml",
    "content": "saved: null\ndeleted: removido\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': 'Criar Secção'\n'Regardless of the language': 'Apesar do idioma'\n'Individual languages': Idiomas\n'All languages': 'Todos os idiomas'\n'Paid Days': 'Dias Pagos'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.ro.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': 'Adaugă secţiune'\n'Regardless of the language': 'Indiferent de limbă'\n'Individual languages': 'Limbi individuale'\n'All languages': 'Toate limbile'\n'Paid Days': 'Zile plătite'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.ru.yml",
    "content": "saved: сохранено\ndeleted: удалено\n'Subscribed sections: $1': 'Подписные рубрики:  $1'\n'Start Date': 'Дата начала'\n'Select sections for subscribing': 'Выбрать рубрики для подписки'\n'Sections saved': 'Рубрики сохранены'\n'Section $1': 'Рубрика  $1'\n'No sections to edit': 'Нет рубрик для редактирования'\n'Edit section': 'Редактировать рубрику'\n'Edit all sections': 'Редактировать все рубрики'\n'Add new subscription section': 'Добавить новую подписную рубрику'\n'Add new section': 'Добавить новую рубрику'\n'Regardless of the language': 'Независимо от языка'\n'Individual languages': 'Индивидуальные языки'\n'All languages': 'Все языки'\n'Paid Days': 'Оплаченные дни'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.sh.yml",
    "content": "saved: snimljeno\ndeleted: obrisana\n'Subscribed sections: $1': 'Pretplaćene rubrike: $1'\n'Start Date': 'Početni datum'\n'Select sections for subscribing': 'Izaberi rubrike za pretplaćivanje'\n'Sections saved': 'Rubrike snimljene'\n'Section $1': 'Rubrika $1'\n'No sections to edit': 'Nema rubrika za uređivanje'\n'Edit section': 'Uredi rubriku'\n'Edit all sections': 'Uredi sve rubrike'\n'Add new subscription section': 'Dodaj novu pretplatu na rubriku'\n'Add new section': 'Dodaj novu rubriku'\n'Regardless of the language': 'Nezavisno od jezika'\n'Individual languages': 'Pojedinačni jezici'\n'All languages': 'Svi jezici'\n'Paid Days': 'Period za uplatu'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.sq.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': null\n'Regardless of the language': null\n'Individual languages': null\n'All languages': null\n'Paid Days': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.sr.yml",
    "content": "saved: снимљено\ndeleted: обрисана\n'Subscribed sections: $1': 'Претплаћене рубрике: $1'\n'Start Date': 'Почетни датум'\n'Select sections for subscribing': 'Изабери рубрике за претплаћивање'\n'Sections saved': 'Рубрике снимљене'\n'Section $1': 'Рубрика $1'\n'No sections to edit': 'Нема рубрика за уређивање'\n'Edit section': 'Уреди рубрику'\n'Edit all sections': 'Уреди све рубрике'\n'Add new subscription section': 'Додај нову претплату на рубрику'\n'Add new section': 'Додај нову рубрику'\n'Regardless of the language': 'Независно од језика'\n'Individual languages': 'Појединачни језици'\n'All languages': 'Сви језици'\n'Paid Days': 'Период за уплату'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.sv.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': 'Lägg till ny sektion'\n'Regardless of the language': 'Oavsett språk'\n'Individual languages': 'Enskilda språk'\n'All languages': 'Alla språk'\n'Paid Days': 'Betalda dagar'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.tr.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': null\n'Regardless of the language': null\n'Individual languages': null\n'All languages': null\n'Paid Days': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.uk.yml",
    "content": "saved: збережено\ndeleted: видалено\n'Subscribed sections: $1': 'Піписні рубрики:  $1'\n'Start Date': 'Дата початку'\n'Select sections for subscribing': 'Вибрати рубрики для підписки'\n'Sections saved': 'Рубрики збережені'\n'Section $1': 'Рубрика  $1'\n'No sections to edit': 'Немає рубрик для редагування'\n'Edit section': 'Редагувати рубрику'\n'Edit all sections': 'Редагувати усі рубрики'\n'Add new subscription section': 'Додати нову підписну рубрику'\n'Add new section': 'Додати нову рубрику'\n'Regardless of the language': 'Незалежно від мови'\n'Individual languages': 'Окремі мови'\n'All languages': 'Всі мови'\n'Paid Days': 'Оплачені дні'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.vi.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': null\n'Regardless of the language': null\n'Individual languages': null\n'All languages': null\n'Paid Days': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.zh.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': 添加新区\n'Regardless of the language': null\n'Individual languages': null\n'All languages': 所有语言\n'Paid Days': 已付时间\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscription_sections.zh_TW.yml",
    "content": "saved: null\ndeleted: null\n'Subscribed sections: $1': null\n'Start Date': null\n'Select sections for subscribing': null\n'Sections saved': null\n'Section $1': null\n'No sections to edit': null\n'Edit section': null\n'Edit all sections': null\n'Add new subscription section': null\n'Add new section': 添加新区\n'Regardless of the language': null\n'Individual languages': null\n'All languages': null\n'Paid Days': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.ar.yml",
    "content": "third: الثالث\nsecond: الثاني\nforth: الرابع\nfirst: الأول\n'You must input a number greater than 0 into the Number of addresses field.': 'يجب عليك إدخال رقم أكبر من صفر في الخانة  لعدد العناوين.'\n'You must input a number between 0 and 255 into the Start IP address $1 field.': 'يجب عليك إدخال رقم بين 0 وبين 255 في حقل بدء عنوان بروتوكول الإنترنت $1.'\n'User IP access list management': 'إدارة قائمة الوصول لبروتوكول الانترنت للمستخدم'\n'The IP address group conflicts with another existing group.': 'تتعارض مجموعة عنوان بورتوكول الإنترنت مع مجموعة موجودة أخرى.'\n'Subscription sections': 'أقسام الاشتراكات'\n'No records.': 'لا توجد سجلات.'\n'You have subscription for all available publications': 'لديك اشتراك لجميع المنشورات المتوفرة'\n'Subscription type:': 'نوع الاشتراك:'\n'Start:': 'بدء:'\n'Start Date': 'تاريخ البدء'\n'Sections:': 'الأقسام:'\n'Publication:': 'النشر :'\n'Paid days': 'تواريخ الدفع'\n'Paid Days:': ':تواريخ الدفع'\nPaid: 'تم الدفع'\n'No subscriptions': 'لا الاشتراكات'\n'Languages:': 'لغات:'\n'Edit all sections': 'حرر جميع الأقسام'\n'Days:': 'الأيام:'\n'Days must be number': 'يجب أن تكون الأيام رقم'\nAny: أي\n'Add section': 'أضف قسم'\nsaved: 'تم الحفظ'\nremoved: 'تم الإزالة'\ndeleted: 'تم الحذف'\ndeactivated: 'تم التعطيل'\nactivated: 'تم التنشيط'\n'Value is required and cant be empty': 'الحقل مطلوب ولا يمكن أن يكون فارغ'\n'That user name already exists, please choose a different login name.': 'اسم المستخدم ذلك قيد الاستخدام مسبقاً، يرجى الاختيار اسم تسجيل دخول مختلف.'\n'That $1 already exists, please choose a different $2.': 'ذلك الــ $1 موجود مسبقاً ، يرجى الاختيار $2 مختلف.'\n'Subscriptions exist for all available publications.': 'توجد اشتراكات لجميع المنشورات المتوفرة.'\n'Subscription IP Addresses': 'عناوين بروتوكول الإنترنت لإشتراكات'\n'Subscription $1': 'الاشتراك $1'\n'Subscriber saved.': 'تم حفظ المشترك.'\n'Subscriber management': 'إدارة المشتركين'\n'Subscriber deleted.': 'تم حذف المشترك.'\n'Start IP': 'بدء بروتوكول الإنترنت (IP)'\n'Select country': 'أختر بلداً'\n'Number of addresses': 'عدد العناوين'\n'Number of Addressses': 'عدد العناوين'\n'No IP Addresses': 'لا عناوين بروتوكول الإنترنت'\n'IP Address added allready': 'تم إضافة عنوان بروتوكول الإنترنت من قبل.'\n'IP Address $1': 'عنوان بروتوكول الإنترنت $1'\n'IP Access': 'وصول بروتوكول الإنترنت'\n'Full Name': 'الاسم الكامل'\n'Edit subscriptions': 'تحرير الاشتراكات'\n'Edit subscriber $1': 'تحرير المشترك $1'\nE-Mail: 'البريد الإلكتروني'\n'Delete subscriber $1': 'حذف المشترك $1'\n'Creation Date': 'تاريخ الإنشاء'\n'Change subscriber information': 'تغيير معلومات المشترك'\n'Add new IP address': 'أضف عنوان جديد من بروتوكول الإنترنت'\n'Add new IP Address': 'أضف عنوان جديد من بروتوكول الإنترنت'\n'Account Name': null\n'%value% must be greater than %min%': 'يجب %value% أن يكون أكبر من %min%'\n'%value% is not a valid IP Address': 'ليس %value% عنوان صالح لبورتوكول الإنترنت'\n'Regardless of the language': 'على الرغم من اللغة'\n'Individual languages': 'لغات فردية'\n'Add sections now': 'أضف أقسام الآن'\n'Add sections later': 'أضف أقسام لاحقاً'\n'Subscription Type': 'نوع الاشتراك'\n'Paid (payment will be confirmed later)': 'تم الدفع (سوف يؤكّد الدفع لاحقا)'\n'Paid (confirm payment now)': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.az.yml",
    "content": "third: üçüncü\nsecond: ikinci\nforth: dördüncü\nfirst: birinci\n'You must input a number greater than 0 into the Number of addresses field.': 'Ünvanların Sayı sahəsinə 0-dan böyük rəqəm daxil etməlisən.'\n'You must input a number between 0 and 255 into the Start IP address $1 field.': 'IP Başlat $1 ünvan sahəsinə 0-la 255 arasında bir rəqəm daxil etməlisən.'\n'User IP access list management': 'İstifadəçinin IP giriş siyahı idarəçiliyi'\n'The IP address group conflicts with another existing group.': 'IP ünvan qrupu digər mövcud qrupla uyğunsuzdur.'\n'Subscription sections': 'Abunəlik bölmələri'\n'No records.': 'Yazı yoxdur.'\n'You have subscription for all available publications': 'Bütün mövcud nəşrlər üçün abunəliyin var'\n'Subscription type:': 'Abunəlik növü:'\n'Start:': 'Başla:'\n'Start Date': 'Başlama Tarixi'\n'Sections:': 'Bölmələr:'\n'Publication:': 'Nəşr:'\n'Paid days': 'Ödənmiş günlər'\n'Paid Days:': 'Ödənmiş Günlər:'\nPaid: Ödənmiş\n'No subscriptions': 'Abunəlik yoxdur'\n'Languages:': 'Dillər:'\n'Edit all sections': 'Bütün bölmələri dəyiş'\n'Days:': 'Günlər:'\n'Days must be number': 'Günlər rəqəmlərdən ibarət olmalıdır'\nAny: 'Hər hansı'\n'Add section': 'Bölmə əlavə et'\nsaved: yaddaşda\nremoved: çıxarıldı\ndeleted: silindi\ndeactivated: 'deaktivasiya edildi'\nactivated: aktivləşdirildi\n'Value is required and cant be empty': 'Dəyər vacibdir və boş saxlanıla bilməz'\n'That user name already exists, please choose a different login name.': 'O istifadəçi adı artıq mövcuddur, lütfən, başqa giriş adı seç.'\n'That $1 already exists, please choose a different $2.': 'O $1 artıq mövcuddur, lütfən, başqa $1 seç.'\n'Subscriptions exist for all available publications.': 'Abunəlik bütün mövcud nəşrlər üçün keçərlidir.'\n'Subscription IP Addresses': 'Abunəlik IP Ünvanları'\n'Subscription $1': '$1 Abunəlik'\n'Subscriber saved.': 'Abunə saxlandı.'\n'Subscriber management': 'Abunə idarəçiliyi'\n'Subscriber deleted.': 'Abunə silindi.'\n'Start IP': 'Başlama IP-si'\n'Select country': 'Ölkə seç'\n'Number of addresses': 'Ünvanların sayı'\n'Number of Addressses': 'Ünvanların Sayı'\n'No IP Addresses': 'IP Ünvan Yoxdur'\n'IP Address added allready': 'IP Ünvan artıq əlavə edilib'\n'IP Address $1': '$1 IP Ünvan'\n'IP Access': 'IP Giriş'\n'Full Name': 'Tam Ad'\n'Edit subscriptions': 'Abunəlikləri dəyiş'\n'Edit subscriber $1': '$1 abunəsini dəyiş'\nE-Mail: Email\n'Delete subscriber $1': '$1 abunəsini sil'\n'Creation Date': 'Yaradılma Tarixi'\n'Change subscriber information': 'Abunə məlumatını dəyiş'\n'Add new IP address': 'Yeni IP ünvan əlavə et'\n'Add new IP Address': 'Yeni IP Ünvan əlavə et'\n'Account Name': null\n'%value% must be greater than %min%': '%value% %min%-dən böyük olmalıdır'\n'%value% is not a valid IP Address': '%value% düzgün IP Ünvan deyil'\n'Regardless of the language': 'Dildən asılı olmayaraq'\n'Individual languages': 'Şəxsi dillər'\n'Add sections now': 'İndi bölmə əlavə et'\n'Add sections later': 'Bölmələri daha sonra əlavə et'\n'Subscription Type': 'Abunəlik Növü'\n'Paid (payment will be confirmed later)': 'Ödənişli (ödəniş bir az sonra təsdiqlənəcək)'\n'Paid (confirm payment now)': 'Ödənişli (ödənişi indi təsdiqlə)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.be.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': 'Значэнне зяўляецца абавязковым і не можа быць пустым'\n'That user name already exists, please choose a different login name.': 'Гэтае iмя карыстальнiка ўжо iснуе, калi ласка выбераце iншае iмя.'\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': 'Незалежна ад мовы'\n'Individual languages': 'Iндывiдуальныя мовы'\n'Add sections now': 'Дадаць рубрыку цяпер'\n'Add sections later': 'Дадаць рубрыку пазьней'\n'Subscription Type': 'Тып падпiскі'\n'Paid (payment will be confirmed later)': 'Платная (аплата будзе пацьверджана пазьней )'\n'Paid (confirm payment now)': 'Платная (пацвердзiць аплату цяпер)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.bn.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': null\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': null\n'Individual languages': null\n'Add sections now': null\n'Add sections later': null\n'Subscription Type': null\n'Paid (payment will be confirmed later)': null\n'Paid (confirm payment now)': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.cs.yml",
    "content": "third: třeti\nsecond: druhý\nforth: čtvrtý\nfirst: první\n'You must input a number greater than 0 into the Number of addresses field.': 'Musíte vložit číslo větší než 0 do políčka Počet adres'\n'You must input a number between 0 and 255 into the Start IP address $1 field.': 'Musíte vložit číslo mezi 0 a 255 do políčka Start IP adresa $1 '\n'User IP access list management': 'User IP access list management'\n'The IP address group conflicts with another existing group.': 'Adresa IP skupiny je v rozporu s jinou existující skupinou.'\n'Subscription sections': 'Sekce předplatného'\n'No records.': 'Žádný záznam'\n'You have subscription for all available publications': 'Máte předplatné pro všechny dostupné publikace'\n'Subscription type:': 'Typ předplatného:'\n'Start:': 'Začátek:'\n'Start Date': 'Počáteční datum'\n'Sections:': 'Sekce:'\n'Publication:': 'Publikace:'\n'Paid days': 'Placené dny'\n'Paid Days:': 'Placené dny:'\nPaid: Zaplaceno\n'No subscriptions': 'Žádné předplatné'\n'Languages:': 'Jazyky:'\n'Edit all sections': 'Upravit všechny sekce'\n'Days:': 'Dny:'\n'Days must be number': 'Dny musejí být číslo'\nAny: Jakékoliv\n'Add section': 'Přidat sekci'\nsaved: Uloženo\nremoved: odstraněno\ndeleted: vymazané\ndeactivated: deaktivováno\nactivated: aktivováno\n'Value is required and cant be empty': 'Hodnota je požadována a nemůže zůstat nevyplněna'\n'That user name already exists, please choose a different login name.': 'Toto uživatlské jméno již existuje, prosím vyberte si jiné přihlašovací jméno.'\n'That $1 already exists, please choose a different $2.': ' $1 již existuje, prosím vyberte si jiné  $2.'\n'Subscriptions exist for all available publications.': 'Předplatné existuje pro všechny dostupné publikace.'\n'Subscription IP Addresses': 'IP adresy předplatného'\n'Subscription $1': 'Předplatné $1'\n'Subscriber saved.': 'Předplatitel uložen.'\n'Subscriber management': 'Management předplatitele'\n'Subscriber deleted.': 'Předplatitel vymazán.'\n'Start IP': 'Start IP'\n'Select country': 'Vyberte zemi'\n'Number of addresses': 'Počet adres'\n'Number of Addressses': 'Počet adres'\n'No IP Addresses': 'Žádné IP adresy'\n'IP Address added allready': 'IP adresa již přidána'\n'IP Address $1': 'IP adresa $1'\n'IP Access': 'IP přístup'\n'Full Name': 'Celé jméno'\n'Edit subscriptions': 'Editovat předplatné'\n'Edit subscriber $1': 'Upravit předplatitele $1'\nE-Mail: Email\n'Delete subscriber $1': 'Vymazat předplatitele $1'\n'Creation Date': 'Datum vytoření'\n'Change subscriber information': 'Změna informací registrovaného'\n'Add new IP address': 'Přidat novou IP adresu'\n'Add new IP Address': 'Přidat novou IP adresu'\n'Account Name': null\n'%value% must be greater than %min%': '%hodnota% musí být větší než %min%'\n'%value% is not a valid IP Address': '%hodnota% není platná IP adresa'\n'Regardless of the language': 'Nehledě na jazyk'\n'Individual languages': 'Jednotlivé jazyky'\n'Add sections now': 'Přidat rubriku nyní'\n'Add sections later': 'Přidat rubriku později'\n'Subscription Type': 'Typ předplatného'\n'Paid (payment will be confirmed later)': 'Zaplaceno (platba bude potvrzena později)'\n'Paid (confirm payment now)': 'Zaplaceno (potvrďte nyní)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.da.yml",
    "content": "third: tredje\nsecond: anden\nforth: fjerde\nfirst: første\n'You must input a number greater than 0 into the Number of addresses field.': 'Angiv et tal større end 0 i feltet Antal adresser.'\n'You must input a number between 0 and 255 into the Start IP address $1 field.': 'Angiv et tal fra 0 til 255 i IP adresse start feltet $1.'\n'User IP access list management': 'Administration af brugeradgang via IP adresser'\n'The IP address group conflicts with another existing group.': 'IP adresse gruppen er i konflikt med en eksisterende gruppe.'\n'Subscription sections': Abonnementssektioner\n'No records.': 'Ingen poster.'\n'You have subscription for all available publications': 'Du abonnerer på alle tilgængelige publikationer'\n'Subscription type:': 'Abonnementstype:'\n'Start:': 'Start:'\n'Start Date': 'Start dato'\n'Sections:': 'Sektioner:'\n'Publication:': 'Publikation:'\n'Paid days': 'Betalte dage'\n'Paid Days:': 'Betalte dage:'\nPaid: Betalt\n'No subscriptions': 'Ingen abonnementer'\n'Languages:': 'Sprog:'\n'Edit all sections': 'Rediger alle sektioner'\n'Days:': 'Dage:'\n'Days must be number': 'Dage skal være et tal'\nAny: Alle\n'Add section': 'Tilføj sektion'\nsaved: gemt\nremoved: fjernet\ndeleted: slettet\ndeactivated: deaktiveret\nactivated: aktiveret\n'Value is required and cant be empty': 'Værdien er påkrævet og kan ikke være tom'\n'That user name already exists, please choose a different login name.': 'Brugernavnet eksisterer allerede. Vælg et andet login navn.'\n'That $1 already exists, please choose a different $2.': 'Den $1 eksisterer allerede, vælg en anden $2.'\n'Subscriptions exist for all available publications.': 'Der er abonnementer for alle tilgængelige publikationer.'\n'Subscription IP Addresses': 'Abonnements IP adresser'\n'Subscription $1': 'Abonnement $1'\n'Subscriber saved.': 'Abonnent gemt.'\n'Subscriber management': 'Administration af abonnenter'\n'Subscriber deleted.': 'Abonnent slettet.'\n'Start IP': 'Start IP'\n'Select country': 'Vælg land'\n'Number of addresses': 'Antal adresser'\n'Number of Addressses': 'Antal adresser'\n'No IP Addresses': 'Ingen IP adresser'\n'IP Address added allready': 'IP adresse allerede tilføjet'\n'IP Address $1': 'IP adresse $1'\n'IP Access': 'IP adgang'\n'Full Name': 'Fuldt navn'\n'Edit subscriptions': 'Rediger abonnementer'\n'Edit subscriber $1': 'Rediger abonnent $1'\nE-Mail: E-Mail\n'Delete subscriber $1': 'Slet abonnent $1'\n'Creation Date': Oprettelsesdato\n'Change subscriber information': 'Ret abonnent information'\n'Add new IP address': 'Tilføj ny IP adresse'\n'Add new IP Address': 'Tilføj ny IP adresse'\n'Account Name': Kontonavn\n'%value% must be greater than %min%': '%value% skal være større end %min%'\n'%value% is not a valid IP Address': '%value% er ikke en gyldig IP adresse'\n'Regardless of the language': 'Uanset sprog'\n'Individual languages': 'Individuelle sprog'\n'Add sections now': 'Tilføj sektioner nu'\n'Add sections later': 'Tilføj sektioner senere'\n'Subscription Type': Abonnementstype\n'Paid (payment will be confirmed later)': 'Betalt (bekræft betaling senere)'\n'Paid (confirm payment now)': 'Betalt (bekræft betaling nu)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.de.yml",
    "content": "third: dritte\nsecond: 'zweite '\nforth: vierte\nfirst: erste\n'You must input a number greater than 0 into the Number of addresses field.': 'Bitte eine Zahl größer als 0 eintragen'\n'You must input a number between 0 and 255 into the Start IP address $1 field.': 'Bitte eine Zahl zwischen 0 und 255 in das Start IP Adressfeld  $1 eintragen'\n'User IP access list management': 'User IP Listenmanagement '\n'The IP address group conflicts with another existing group.': 'Die IP-Adresse konfligiert mit einer anderen Gruppe. '\n'Subscription sections': 'Abonnement Einstellungen'\n'No records.': 'Keine Daten. '\n'You have subscription for all available publications': 'Sie haben ein Abonnement für alle verfügbaren Publikationen. '\n'Subscription type:': Abonnementtyp\n'Start:': Beginn\n'Start Date': 'Start Datum'\n'Sections:': Rubriken\n'Publication:': 'Publikation: '\n'Paid days': 'Bezahlte Tage'\n'Paid Days:': 'Bezahlte Tage:'\nPaid: Bezahlt\n'No subscriptions': 'Keine Abonnements'\n'Languages:': 'Sprachen: '\n'Edit all sections': 'Alle Rubriken bearbeiten '\n'Days:': 'Tage: '\n'Days must be number': 'Tage müssen numerisch sein'\nAny: Alle\n'Add section': 'Rubrik hinzufügen'\nsaved: gespeichert\nremoved: entfernt\ndeleted: gelöscht\ndeactivated: deaktiviert\nactivated: aktiviert\n'Value is required and cant be empty': 'Der Wert ist erforderlich und kann nicht leer sein. '\n'That user name already exists, please choose a different login name.': 'Der Username existiert bereits, bitte wählen Sie einen neuen Login-Namen. '\n'That $1 already exists, please choose a different $2.': 'Diese $1 existiert bereits, bitte wählen Sie eine andere $2.'\n'Subscriptions exist for all available publications.': 'Abonnements gibt es für alle verfügbaren Publikationen. '\n'Subscription IP Addresses': 'Abonnement IP-Adresse'\n'Subscription $1': 'Abonnement $1'\n'Subscriber saved.': 'Abonnent gespeichert.'\n'Subscriber management': Abonnentenverwaltung\n'Subscriber deleted.': 'Abonnent gelöscht. '\n'Start IP': 'Start IP'\n'Select country': 'Land auswählen'\n'Number of addresses': 'Anzahl der Adressen'\n'Number of Addressses': 'Anzahl der Adressen'\n'No IP Addresses': 'Keine IP-Adressen'\n'IP Address added allready': 'IP-Adresse schon hinzugefügt'\n'IP Address $1': 'IP-Adresse $1'\n'IP Access': 'IP Internetzugang'\n'Full Name': 'Vollständiger Name'\n'Edit subscriptions': 'Abonnements bearbeiten'\n'Edit subscriber $1': 'Abonnent $1 bearbeiten'\nE-Mail: E-Mail\n'Delete subscriber $1': 'Lösche Abonnement $1'\n'Creation Date': Erstellungsdatum\n'Change subscriber information': 'Abonnenteninformation ändern. '\n'Add new IP address': 'Neue IP-Adresse hinzufügen'\n'Add new IP Address': 'Neue IP-Adresse hinzufügen'\n'Account Name': 'Name des Kontos'\n'%value% must be greater than %min%': '%value% muss größer sein als %min%'\n'%value% is not a valid IP Address': ' %value% ist keine gültige IP-Adresse'\n'Regardless of the language': 'Unabhängig von der Sprache'\n'Individual languages': 'Individuelle Sprachen'\n'Add sections now': 'Rubriken jetzt hinzufügen'\n'Add sections later': 'Rubriken später hinzufügen'\n'Subscription Type': Abonnementtyp\n'Paid (payment will be confirmed later)': 'Bezahlt (Bezahlung wird später bestätigt)'\n'Paid (confirm payment now)': 'Bezahlt (Bezahlung jetzt bestätigen)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.de_AT.yml",
    "content": "third: dritte\nsecond: 'zweite '\nforth: vierte\nfirst: erste\n'You must input a number greater than 0 into the Number of addresses field.': 'Bitte eine Zahl größer als 0 eintragen'\n'You must input a number between 0 and 255 into the Start IP address $1 field.': 'Bitte eine Zahl zwischen 0 und 255 in das Start IP Adressfeld  $1 eintragen'\n'User IP access list management': 'User IP Listenmanagement '\n'The IP address group conflicts with another existing group.': 'Die IP-Adresse konfligiert mit einer anderen Gruppe. '\n'Subscription sections': 'Abonnement Einstellungen'\n'No records.': 'Keine Daten. '\n'You have subscription for all available publications': 'Sie haben ein Abonnement für alle verfügbaren Publikationen. '\n'Subscription type:': Abonnementtyp\n'Start:': Beginn\n'Start Date': 'Start Datum'\n'Sections:': Rubriken\n'Publication:': 'Publikation: '\n'Paid days': 'Bezahlte Tage'\n'Paid Days:': 'Bezahlte Tage:'\nPaid: Bezahlt\n'No subscriptions': 'Keine Abonnements'\n'Languages:': 'Sprachen: '\n'Edit all sections': 'Alle Rubriken bearbeiten '\n'Days:': 'Tage: '\n'Days must be number': 'Tage müssen numerisch sein'\nAny: Alle\n'Add section': 'Rubrik hinzufügen'\nsaved: gespeichert\nremoved: entfernt\ndeleted: gelöscht\ndeactivated: deaktiviert\nactivated: aktiviert\n'Value is required and cant be empty': 'Der Wert ist erforderlich und kann nicht leer sein. '\n'That user name already exists, please choose a different login name.': 'Der Username existiert bereits, bitte wählen Sie einen neuen Login-Namen. '\n'That $1 already exists, please choose a different $2.': 'Diese $1 existiert bereits, bitte wählen Sie eine andere $2.'\n'Subscriptions exist for all available publications.': 'Abonnements gibt es für alle verfügbaren Publikationen. '\n'Subscription IP Addresses': 'Abonnement IP-Adresse'\n'Subscription $1': 'Abonnement $1'\n'Subscriber saved.': 'Abonnent gespeichert.'\n'Subscriber management': Abonnentenverwaltung\n'Subscriber deleted.': 'Abonnent gelöscht. '\n'Start IP': 'Start IP'\n'Select country': 'Land auswählen'\n'Number of addresses': 'Anzahl der Adressen'\n'Number of Addressses': 'Anzahl der Adressen'\n'No IP Addresses': 'Keine IP-Adressen'\n'IP Address added allready': 'IP-Adresse schon hinzugefügt'\n'IP Address $1': 'IP-Adresse $1'\n'IP Access': 'IP Internetzugang'\n'Full Name': 'Vollständiger Name'\n'Edit subscriptions': 'Abonnements bearbeiten'\n'Edit subscriber $1': 'Abonnent $1 bearbeiten'\nE-Mail: E-Mail\n'Delete subscriber $1': 'Lösche Abonnement $1'\n'Creation Date': Erstellungsdatum\n'Change subscriber information': 'Abonnenteninformation ändern. '\n'Add new IP address': 'Neue IP-Adresse hinzufügen'\n'Add new IP Address': 'Neue IP-Adresse hinzufügen'\n'Account Name': null\n'%value% must be greater than %min%': '%value% muss größer sein als %min%'\n'%value% is not a valid IP Address': ' %value% ist keine gültige IP-Adresse'\n'Regardless of the language': 'Unabhängig von der Sprache'\n'Individual languages': 'Individuelle Sprachen'\n'Add sections now': 'Rubriken jetzt hinzufügen'\n'Add sections later': 'Rubriken später hinzufügen'\n'Subscription Type': Abonnementtyp\n'Paid (payment will be confirmed later)': 'Bezahlt (Bezahlung wird später bestätigt)'\n'Paid (confirm payment now)': 'Bezahlt (Bezahlung jetzt bestätigen)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.el.yml",
    "content": "third: τρίτο\nsecond: δεύτερο\nforth: τέταρτο\nfirst: πρώτο\n'You must input a number greater than 0 into the Number of addresses field.': 'Πρέπει να εισάγετε έναν αριθμό μεγαλύτερο από το 0 στο πεδίο Αριθμοί διευθύνσεων.'\n'You must input a number between 0 and 255 into the Start IP address $1 field.': 'Πρέπει να εισάγετε ένα αριθμό μεταξύ 0 και 255 στο πεδίο Έναρξη διεύθυνσης ΙΡ $1 .'\n'User IP access list management': 'Διαχείριση λίστας πρόσβασης χρήστη ΙΡ '\n'The IP address group conflicts with another existing group.': 'Η ομάδα διεύθυνσης ΙΡ συγκρούεται με άλλη ήδη υπάρχουσα ομάδα.'\n'Subscription sections': 'Ενότητες συνδρομής'\n'No records.': 'Δεν υπάρχουν μητρώα.'\n'You have subscription for all available publications': 'Εχετε συνδρομή για όλες τις διαθέσιμες δημοσιεύσεις'\n'Subscription type:': 'Τύπος συνδρομής:'\n'Start:': 'Έναρξη:'\n'Start Date': 'Ημερομηνία έναρξης'\n'Sections:': 'Ενότητες:'\n'Publication:': 'Δημοσίευση:'\n'Paid days': 'Πληρωμένες ημέρες'\n'Paid Days:': 'Πληρωμένες Ημέρες:'\nPaid: Πληρωμένες\n'No subscriptions': 'Καμία συνδρομή'\n'Languages:': 'Γλώσσες:'\n'Edit all sections': 'Επεξεργασία όλων των ενοτήτων'\n'Days:': 'Ημέρες:'\n'Days must be number': 'Η ημέρες πρέπει να είναι με αριθμό εγγεγραμμένες'\nAny: Οποιδήποτε\n'Add section': 'Προσθήκη ενότητας'\nsaved: αποθηκεύτηκε\nremoved: αφαιρέθηκε\ndeleted: διαγράφηκε\ndeactivated: απενεργοποιήθηκε\nactivated: ενεργοποιήθηκε\n'Value is required and cant be empty': 'Η αξία απαιτέιται και δεν μπορεί να παραμείνει κενή'\n'That user name already exists, please choose a different login name.': 'Το όνομα χρήστη υπάρχει ήδη, παρακαλούμε επιλέξτε διαφορετικό όνομα σύνδεσης.'\n'That $1 already exists, please choose a different $2.': '$1 υπάρχει ήδη, παρακαλούμε επιλέξτε διαφορετικό $2. '\n'Subscriptions exist for all available publications.': 'Υπάρχουν συνδρομές για όλες τις διαθέσιμες δημοσιεύσεις.'\n'Subscription IP Addresses': 'Συνδρομή Διευθύνσεων ΙΡ'\n'Subscription $1': 'Συνδρομή  $1'\n'Subscriber saved.': 'Ο συνδρομητής αποθηκεύτηκε.'\n'Subscriber management': 'Διαχείριση συνδρομητή'\n'Subscriber deleted.': 'Ο συνδρομητής διαγράφηκε'\n'Start IP': 'Έναρξη ΙΡ'\n'Select country': 'Επιλογή χώρας'\n'Number of addresses': 'Αριθμός διευθύνσεων'\n'Number of Addressses': 'Αριθμός Διευθύνσεων'\n'No IP Addresses': 'Καμία Διεύθυνση ΙΡ'\n'IP Address added allready': 'Η διεύθυνση ΙΡ έχει ήδη προστεθεί'\n'IP Address $1': 'Διεύθυνση ΙΡ $1'\n'IP Access': 'Πρόσβαση ΙΡ'\n'Full Name': Ονοματεπώνυμο\n'Edit subscriptions': 'Επεξεργασία συνδρομών'\n'Edit subscriber $1': 'Επεξεργασία συνδρομών  $1'\nE-Mail: E-Mail\n'Delete subscriber $1': 'Διαγραφή συνδρομητή $1'\n'Creation Date': 'Ημερομηνίας Δημιουργίας'\n'Change subscriber information': 'Αλλαγή πληροφοριών συνδρομητή'\n'Add new IP address': 'Προσθήκη νέας διεύθυνσης ΙΡ'\n'Add new IP Address': 'Προσθήκη νέας διεύθυνσης ΙΡ'\n'Account Name': null\n'%value% must be greater than %min%': '%value% πρέπει να είναι μεγαλύτερο από %min%'\n'%value% is not a valid IP Address': ' %value% δεν αποτελεί Διεύθυνση ΙΡ'\n'Regardless of the language': 'Ανεξαρτήτου γλώσσας'\n'Individual languages': 'Ατομικές γλώσσες'\n'Add sections now': 'Προσθήκη κατηγοριών τώρα'\n'Add sections later': 'Προσθήκη κατηγοριών αργότερα'\n'Subscription Type': 'Τύπος Συνδρομής'\n'Paid (payment will be confirmed later)': 'Εξοφλήθηκε (η πληρωμή θα επιβεβαιωθεί αργότερα)'\n'Paid (confirm payment now)': 'Εξοφλήθηκε (επιβεβαίωση πληρωμής τώρα)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.en.yml",
    "content": "third: third\nsecond: second\nforth: forth\nfirst: first\n'You must input a number greater than 0 into the Number of addresses field.': 'You must input a number greater than 0 into the Number of addresses field.'\n'You must input a number between 0 and 255 into the Start IP address $1 field.': 'You must input a number between 0 and 255 into the Start IP address $1 field.'\n'User IP access list management': 'User IP access list management'\n'The IP address group conflicts with another existing group.': 'The IP address group conflicts with another existing group.'\n'Subscription sections': 'Subscription sections'\n'No records.': 'No records.'\n'You have subscription for all available publications': 'You have subscription for all available publications'\n'Subscription type:': 'Subscription type:'\n'Start:': 'Start:'\n'Start Date': 'Start Date'\n'Sections:': 'Sections:'\n'Publication:': 'Publication:'\n'Paid days': 'Paid days'\n'Paid Days:': 'Paid Days:'\nPaid: Paid\n'No subscriptions': 'No subscriptions'\n'Languages:': 'Languages:'\n'Edit all sections': 'Edit all sections'\n'Days:': 'Days:'\n'Days must be number': 'Days must be number'\nAny: Any\n'Add section': 'Add section'\nsaved: saved\nremoved: removed\ndeleted: deleted\ndeactivated: deactivated\nactivated: activated\n'Value is required and cant be empty': 'Value is required and cant be empty'\n'That user name already exists, please choose a different login name.': 'That user name already exists, please choose a different login name.'\n'That $1 already exists, please choose a different $2.': 'That $1 already exists, please choose a different $2.'\n'Subscriptions exist for all available publications.': 'Subscriptions exist for all available publications.'\n'Subscription IP Addresses': 'Subscription IP Addresses'\n'Subscription $1': 'Subscription $1'\n'Subscriber saved.': 'Subscriber saved.'\n'Subscriber management': 'Subscriber management'\n'Subscriber deleted.': 'Subscriber deleted.'\n'Start IP': 'Start IP'\n'Select country': 'Select country'\n'Number of addresses': 'Number of addresses'\n'Number of Addressses': 'Number of Addressses'\n'No IP Addresses': 'No IP Addresses'\n'IP Address added allready': 'IP Address added allready'\n'IP Address $1': 'IP Address $1'\n'IP Access': 'IP Access'\n'Full Name': 'Full Name'\n'Edit subscriptions': 'Edit subscriptions'\n'Edit subscriber $1': 'Edit subscriber $1'\nE-Mail: E-Mail\n'Delete subscriber $1': 'Delete subscriber $1'\n'Creation Date': 'Creation Date'\n'Change subscriber information': 'Change subscriber information'\n'Add new IP address': 'Add new IP address'\n'Add new IP Address': 'Add new IP Address'\n'Account Name': 'Account Name'\n'%value% must be greater than %min%': '%value% must be greater than %min%'\n'%value% is not a valid IP Address': '%value% is not a valid IP Address'\n'Regardless of the language': 'Regardless of the language'\n'Individual languages': 'Individual languages'\n'Add sections now': 'Add sections now'\n'Add sections later': 'Add sections later'\n'Subscription Type': 'Subscription Type'\n'Paid (payment will be confirmed later)': 'Paid (payment will be confirmed later)'\n'Paid (confirm payment now)': 'Paid (confirm payment now)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.en_GB.yml",
    "content": "third: third\nsecond: second\nforth: fourth\nfirst: first\n'You must input a number greater than 0 into the Number of addresses field.': 'You must input a number greater than 0 into the Number of addresses field.'\n'You must input a number between 0 and 255 into the Start IP address $1 field.': 'You must input a number between 0 and 255 into the Start IP address $1 field.'\n'User IP access list management': 'User IP access list management'\n'The IP address group conflicts with another existing group.': 'The IP address group conflicts with another existing group.'\n'Subscription sections': 'Subscription sections'\n'No records.': 'No records.'\n'You have subscription for all available publications': 'You have a subscription for all available publications'\n'Subscription type:': 'Subscription type:'\n'Start:': 'Start:'\n'Start Date': 'Start Date'\n'Sections:': 'Sections:'\n'Publication:': 'Publication:'\n'Paid days': 'Paid days'\n'Paid Days:': 'Paid Days:'\nPaid: Paid\n'No subscriptions': 'No subscriptions'\n'Languages:': 'Languages:'\n'Edit all sections': 'Edit all sections'\n'Days:': 'Days:'\n'Days must be number': 'Days must be number'\nAny: Any\n'Add section': 'Add section'\nsaved: saved\nremoved: removed\ndeleted: deleted\ndeactivated: deactivated\nactivated: activated\n'Value is required and cant be empty': 'Value is required and can not be empty'\n'That user name already exists, please choose a different login name.': 'That user name already exists, please choose a different login name.'\n'That $1 already exists, please choose a different $2.': 'That $1 already exists, please choose a different $2.'\n'Subscriptions exist for all available publications.': 'Subscriptions exist for all available publications.'\n'Subscription IP Addresses': 'Subscription IP Addresses'\n'Subscription $1': 'Subscription $1'\n'Subscriber saved.': 'Subscriber saved.'\n'Subscriber management': 'Subscriber management'\n'Subscriber deleted.': 'Subscriber deleted.'\n'Start IP': 'Start IP'\n'Select country': 'Select country'\n'Number of addresses': 'Number of addresses'\n'Number of Addressses': 'Number of Addressses'\n'No IP Addresses': 'No IP Addresses'\n'IP Address added allready': 'IP Address added allready'\n'IP Address $1': 'IP Address $1'\n'IP Access': 'IP Access'\n'Full Name': 'Full Name'\n'Edit subscriptions': 'Edit subscriptions'\n'Edit subscriber $1': 'Edit subscriber $1'\nE-Mail: E-Mail\n'Delete subscriber $1': 'Delete subscriber $1'\n'Creation Date': 'Creation Date'\n'Change subscriber information': 'Change subscriber information'\n'Add new IP address': 'Add new IP address'\n'Add new IP Address': 'Add new IP Address'\n'Account Name': 'Account Name'\n'%value% must be greater than %min%': '%value% must be greater than %min%'\n'%value% is not a valid IP Address': '%value% is not a valid IP Address'\n'Regardless of the language': 'Regardless of the language'\n'Individual languages': 'Individual languages'\n'Add sections now': 'Add sections now'\n'Add sections later': 'Add sections later'\n'Subscription Type': 'Subscription Type'\n'Paid (payment will be confirmed later)': 'Paid (payment will be confirmed later)'\n'Paid (confirm payment now)': 'Paid (confirm payment now)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.es.yml",
    "content": "third: tercero\nsecond: segundo\nforth: cuarto\nfirst: primero\n'You must input a number greater than 0 into the Number of addresses field.': 'Debes ingresar un número mayor a 0 en el campo de número de direcciones.'\n'You must input a number between 0 and 255 into the Start IP address $1 field.': 'Debes ingresar un número entre 0 y 255 en el campo $1 de la dirección IP de inicio'\n'User IP access list management': 'administración de la lista de IP de los usuarios con acceso'\n'The IP address group conflicts with another existing group.': 'La dirección IP del grupo tiene conflictos con otro grupo existente.'\n'Subscription sections': 'secciones de las suscripciones'\n'No records.': 'Sin registros.'\n'You have subscription for all available publications': 'Ya tiene una subscripción para todas las publicaciones disponibles.'\n'Subscription type:': 'Tipo de subscripción:'\n'Start:': 'Inicio:'\n'Start Date': 'Fecha de inicio'\n'Sections:': 'Secciones:'\n'Publication:': 'Publicación:'\n'Paid days': 'Días pagados'\n'Paid Days:': 'Días pagados'\nPaid: Pagado\n'No subscriptions': 'Sin subscripciones'\n'Languages:': 'Idiomas:'\n'Edit all sections': 'Editar todas las secciones'\n'Days:': 'Días:'\n'Days must be number': 'Los días deben ser numerados'\nAny: Cualquiera\n'Add section': 'Añadir sección'\nsaved: guardado\nremoved: removido\ndeleted: eliminado\ndeactivated: desactivado\nactivated: activado\n'Value is required and cant be empty': 'Se requiere un valor.  No puede quedarse vacío.'\n'That user name already exists, please choose a different login name.': 'Ese nombre de usuario está en uso. Por favor escoja otro.'\n'That $1 already exists, please choose a different $2.': 'Ese $1 ya existe. Por favor escoja otro $2.'\n'Subscriptions exist for all available publications.': 'Existen subscripciones para todas las publicaciones.'\n'Subscription IP Addresses': 'Direcciones IP de subscripciones.'\n'Subscription $1': 'Subscripción $1'\n'Subscriber saved.': 'Subscriptor guardado.'\n'Subscriber management': 'Administración de subscriptores'\n'Subscriber deleted.': 'Subscriptor eliminado.'\n'Start IP': 'Iniciar IP'\n'Select country': 'Seleccionar país'\n'Number of addresses': 'Número de direcciones'\n'Number of Addressses': 'Número de Direcciones'\n'No IP Addresses': 'No hay Direcciones IP'\n'IP Address added allready': 'Ya se agregaron Direcciones IP'\n'IP Address $1': 'Dirección IP $1'\n'IP Access': 'Dirección IP'\n'Full Name': 'Nombre completo'\n'Edit subscriptions': 'Editar subscripciones'\n'Edit subscriber $1': 'Editar subscriptor $1'\nE-Mail: 'Correo electrónico'\n'Delete subscriber $1': 'Eliminar subscriptor $1'\n'Creation Date': 'Fecha de creación'\n'Change subscriber information': 'Cambiar información de subscriptor'\n'Add new IP address': 'Añadir nueva dirección de IP'\n'Add new IP Address': 'Añadir nueva Dirección de IP'\n'Account Name': null\n'%value% must be greater than %min%': '%value% debe ser mayor que %min%'\n'%value% is not a valid IP Address': '%value% no es una Dirección de  IP válida'\n'Regardless of the language': 'Sin importar el idioma'\n'Individual languages': 'Idiomas individuales'\n'Add sections now': 'Agregar secciones ahora'\n'Add sections later': 'Agregar secciones despues'\n'Subscription Type': 'Tipo de suscripción'\n'Paid (payment will be confirmed later)': 'Pagado ( pago sera confirmado luego )'\n'Paid (confirm payment now)': 'Pagado ( confirmar pago ahora )'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.es_AR.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': null\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': null\n'Individual languages': null\n'Add sections now': null\n'Add sections later': null\n'Subscription Type': null\n'Paid (payment will be confirmed later)': null\n'Paid (confirm payment now)': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.fa.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': null\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': null\n'Individual languages': null\n'Add sections now': null\n'Add sections later': null\n'Subscription Type': null\n'Paid (payment will be confirmed later)': null\n'Paid (confirm payment now)': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.fa_AF.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': null\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': null\n'Individual languages': null\n'Add sections now': null\n'Add sections later': null\n'Subscription Type': null\n'Paid (payment will be confirmed later)': null\n'Paid (confirm payment now)': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.fr.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': 'Ce nom dutilisateur existe déjà , choisissez sil vous plaît un nom dutilisateur différent. '\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': 'Indépendamment de la langue '\n'Individual languages': 'Langues individuelles'\n'Add sections now': 'Ajouter des sections maintenant '\n'Add sections later': 'Ajouter des sections plus tard'\n'Subscription Type': 'Type dabonnement'\n'Paid (payment will be confirmed later)': 'Payé (le paiement sera confirmé plus tard) '\n'Paid (confirm payment now)': 'Payé ( confirmer le paiement maintenant)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.he.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': null\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': null\n'Individual languages': null\n'Add sections now': null\n'Add sections later': null\n'Subscription Type': null\n'Paid (payment will be confirmed later)': null\n'Paid (confirm payment now)': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.hr.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': 'Korisničko ime već postoji, izaberite drugo ime za prijavu.'\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': 'IP pristup'\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': 'Bez obzira na jezik'\n'Individual languages': 'Pojedinačni jezici'\n'Add sections now': 'Dodaj rubrike odmah'\n'Add sections later': 'Dodaj rubrike kasnije'\n'Subscription Type': 'Vrsta pretplate'\n'Paid (payment will be confirmed later)': 'Plaćeno (plaćanje će biti potvrđeno naknadno)'\n'Paid (confirm payment now)': 'Plaćeno (potvrdi plaćanje odmah)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.hu.yml",
    "content": "third: harmadik\nsecond: második\nforth: tovább\nfirst: első\n'You must input a number greater than 0 into the Number of addresses field.': 'A Címek száma mezőben nullánál nagyobb számot kell megadnod.'\n'You must input a number between 0 and 255 into the Start IP address $1 field.': 'A Kezdő IP-cím $1 mezőben meg kell adnod egy 0 és 255 közti számot.'\n'User IP access list management': 'Felhasználó IP hozzáférési lista kezelése'\n'The IP address group conflicts with another existing group.': 'Az IP-címcsoport ütközik egy másik meglévő csoporttal.'\n'Subscription sections': 'Előfizetéses rovatok'\n'No records.': 'Nincsenek rekordok.'\n'You have subscription for all available publications': 'Neked az összes létező kiadványra van előfizetésed'\n'Subscription type:': 'Előfizetés típusa:'\n'Start:': 'Kezdet:'\n'Start Date': 'Kezdő dátum'\n'Sections:': 'Rovatok:'\n'Publication:': 'Kiadvány:'\n'Paid days': 'Fizetett napok'\n'Paid Days:': 'Fizetett napok:'\nPaid: Fizetett\n'No subscriptions': 'Nincsenek előfizetések'\n'Languages:': 'Nyelvek:'\n'Edit all sections': 'Az összes rovat szerkesztése'\n'Days:': 'Napok:'\n'Days must be number': 'A napoknak számnak kell lennie'\nAny: Bármi\n'Add section': 'Rovat hozzáadása'\nsaved: mentve\nremoved: eltávolítva\ndeleted: törölve\ndeactivated: inaktiválva\nactivated: aktiválva\n'Value is required and cant be empty': 'Az érték kötelező és nem lehet üres'\n'That user name already exists, please choose a different login name.': 'Ez a felhasználónév már létezik, válassz másik bejelentkezési nevet.'\n'That $1 already exists, please choose a different $2.': 'Ez a/z $1 már létezik, válassz másik $2 -t.'\n'Subscriptions exist for all available publications.': 'Léteznek előfizetések az összes elérhető kiadványra.'\n'Subscription IP Addresses': 'Előfizetés IP-címei'\n'Subscription $1': '$1 előfizetés'\n'Subscriber saved.': 'Az előfizető mentése megtörtént.'\n'Subscriber management': Előfizetőkezelés\n'Subscriber deleted.': 'Az előfizető törlése megtörtént.'\n'Start IP': 'Kezdő IP'\n'Select country': 'Ország kiválasztása'\n'Number of addresses': 'Címek száma'\n'Number of Addressses': 'Címek száma'\n'No IP Addresses': 'Nincsenek IP-címek'\n'IP Address added allready': 'Az IP-cím már hozzáadásra került'\n'IP Address $1': '$1 IP-cím'\n'IP Access': IP-hozzáférés\n'Full Name': 'Teljes név'\n'Edit subscriptions': 'Előfizetések szerkesztése'\n'Edit subscriber $1': 'A/z $1 nevű előfizető szerkesztése'\nE-Mail: E-mail\n'Delete subscriber $1': 'A/z $1 nevű előfizető törlése'\n'Creation Date': 'Létrehozás dátuma'\n'Change subscriber information': 'Előfizetői adatok módosítása'\n'Add new IP address': 'Új IP-cím hozzáadása'\n'Add new IP Address': 'Új IP-cím hozzáadása'\n'Account Name': null\n'%value% must be greater than %min%': 'A/z %value% értéknek nagyobbnak kell lennie, mint %min%'\n'%value% is not a valid IP Address': 'A/z %value% nem érvényes IP-cím'\n'Regardless of the language': 'A nyelvtől függetlenül'\n'Individual languages': Nyelvek\n'Add sections now': 'Rovatok hozzáadása most'\n'Add sections later': 'Rovatok hozzáadása később'\n'Subscription Type': 'Előfizetés típusa'\n'Paid (payment will be confirmed later)': 'Fizetett (a fizetés később kerül megerősítésre)'\n'Paid (confirm payment now)': 'Fizetett (a fizetés megerősítése most)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.hy.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': null\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': 'Account Name'\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': null\n'Individual languages': null\n'Add sections now': null\n'Add sections later': null\n'Subscription Type': null\n'Paid (payment will be confirmed later)': null\n'Paid (confirm payment now)': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.hy_AM.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': null\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': null\n'Individual languages': null\n'Add sections now': null\n'Add sections later': null\n'Subscription Type': null\n'Paid (payment will be confirmed later)': null\n'Paid (confirm payment now)': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.id.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': null\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': null\n'Individual languages': null\n'Add sections now': null\n'Add sections later': null\n'Subscription Type': null\n'Paid (payment will be confirmed later)': null\n'Paid (confirm payment now)': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.it.yml",
    "content": "third: terzo\nsecond: secondo\nforth: quarto\nfirst: primo\n'You must input a number greater than 0 into the Number of addresses field.': 'Nel campo Numero di indirizzi devi inserire un valore maggiore di 0.'\n'You must input a number between 0 and 255 into the Start IP address $1 field.': 'Nel campo $1 dellIP iniziale va messo un numero tra 0 e 255.'\n'User IP access list management': 'Gestione degli indirizzi IP di accesso dellutente'\n'The IP address group conflicts with another existing group.': 'Il gruppo di indirizzi IP specificato confligge con un altro gruppo già presente.'\n'Subscription sections': 'Iscrizione a sezioni'\n'No records.': 'Nessun elemento.'\n'You have subscription for all available publications': 'Sei già iscritto a tutte le pubblicazioni disponibili'\n'Subscription type:': 'Tipo di iscrizione'\n'Start:': 'Inizio:'\n'Start Date': 'Data inizio'\n'Sections:': 'Sezioni:'\n'Publication:': 'Pubblicazione:'\n'Paid days': 'Giorni pagati'\n'Paid Days:': 'Giorni pagati:'\nPaid: Pagato\n'No subscriptions': 'Nessuna iscrizione'\n'Languages:': 'Lingue:'\n'Edit all sections': 'Modifica sezioni'\n'Days:': Giorni\n'Days must be number': 'I giorni devono essere un numero'\nAny: Tutte\n'Add section': 'Aggiungi sezione'\nsaved: salvato\nremoved: rimosso\ndeleted: eliminato\ndeactivated: disattivato\nactivated: attivato\n'Value is required and cant be empty': 'È richiesto un valore non vuoto'\n'That user name already exists, please choose a different login name.': 'Questo nome utente è già utilizzato, scegli un altro nome per il login.'\n'That $1 already exists, please choose a different $2.': '$1 esiste già, scegli un $2 differente.'\n'Subscriptions exist for all available publications.': 'Cè già uniscrizione per ogni pubblicazione disponibile.'\n'Subscription IP Addresses': 'Indirizzi IP iscrizione'\n'Subscription $1': 'Iscrizione $1'\n'Subscriber saved.': 'Iscritto salvato.'\n'Subscriber management': 'Gestione iscritti'\n'Subscriber deleted.': 'Iscritto eliminato.'\n'Start IP': 'IP iniziale'\n'Select country': 'Seleziona nazione'\n'Number of addresses': 'Numero di indirizzi'\n'Number of Addressses': 'Numero di indirizzi'\n'No IP Addresses': 'Nessun indirizzo IP'\n'IP Address added allready': 'IP già presente'\n'IP Address $1': 'Indirizzo IP $1'\n'IP Access': 'Accesso IP'\n'Full Name': 'Nome completo'\n'Edit subscriptions': 'Modifica sottoscrizioni'\n'Edit subscriber $1': 'Modifica sottoscrittore $1'\nE-Mail: Email\n'Delete subscriber $1': 'Elimina sottoscrittore $1'\n'Creation Date': 'Data di creazione'\n'Change subscriber information': 'Cambia informazioni iscritto'\n'Add new IP address': 'Aggiungi indirizzo IP'\n'Add new IP Address': 'Aggiungi indirizzo IP'\n'Account Name': null\n'%value% must be greater than %min%': '%value% deve essere maggiore di %min%'\n'%value% is not a valid IP Address': '%value% non è un indirizzo IP valido'\n'Regardless of the language': 'Ignora lingue'\n'Individual languages': 'Lingue individuali'\n'Add sections now': 'Aggiungi sezione adesso'\n'Add sections later': 'Aggiungi sezione in seguito'\n'Subscription Type': 'Tipo di iscrizione'\n'Paid (payment will be confirmed later)': 'Pagato (il pagamento verrà confermato in seguito)'\n'Paid (confirm payment now)': 'Pagato (conferma adesso il pagamento)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.ka.yml",
    "content": "third: მესამე\nsecond: მეორე\nforth: მეოთხე\nfirst: პირველი\n'You must input a number greater than 0 into the Number of addresses field.': 'თქვენ უნდა მიუთითოთ 0-ზე მაღალი მნიშვნეეობა მისამართის ნომრის ველშ. '\n'You must input a number between 0 and 255 into the Start IP address $1 field.': 'თქვენ უნდა მიუთითოთ მნიშვნელობა 0-სა და 255-ს შორის სტარტის IP მისამართის   $1 ველში. '\n'User IP access list management': 'მომხმარებლის IP წვდომის სიის მართვა '\n'The IP address group conflicts with another existing group.': 'IP მისამართების ჯგუფი ეწინააღმდეგება სხვა არსებულ ჯგუფს. '\n'Subscription sections': 'გამოწერების განყოფილებები'\n'No records.': 'ჩანაწერები არ არსებობს. '\n'You have subscription for all available publications': 'თქვენ გაქვთ გამოწერა ყველა არსებულ პუბლიკაციაზე'\n'Subscription type:': 'გამოწერის ტიპი:'\n'Start:': 'დასაწყისი:'\n'Start Date': 'დაწყების თარიღი'\n'Sections:': 'განყოფილებები:'\n'Publication:': 'პუბლიკაციები: '\n'Paid days': 'ფასიანი დღეები'\n'Paid Days:': 'ფასიანი დღეები:'\nPaid: ფასიანი\n'No subscriptions': 'გამოწერები არ არის'\n'Languages:': 'ენები:'\n'Edit all sections': 'ყველა სექციის რედაქტირება'\n'Days:': 'დღეები: '\n'Days must be number': 'დღეები უნდა დაინომროს'\nAny: 'ნებისმიერი '\n'Add section': 'განყოფილების დამატება'\nsaved: დამახსოვრებულია\nremoved: მოიხსნა\ndeleted: წაიშალა\ndeactivated: დეაქტივირებულია\nactivated: აქტივირებულია\n'Value is required and cant be empty': 'მონაცემი აუცილებლად უნდა შეივსოს'\n'That user name already exists, please choose a different login name.': 'ასეთი მომხმარებელი უკვე არსებობს, შეიყვანეთ სხვა სახელი'\n'That $1 already exists, please choose a different $2.': 'ეგ $1 უკვე არსებობს, გთხოვთ აირჩიოთ სხვა $2'\n'Subscriptions exist for all available publications.': 'გამოწერა არსებობს ყველა არსებული პუბლიკაციისთვის.'\n'Subscription IP Addresses': 'გამოწერის IP მისამართები'\n'Subscription $1': 'გამოწერა $1'\n'Subscriber saved.': 'გამომწერი დამახსოვრებულია'\n'Subscriber management': 'გამომწერის მართვა'\n'Subscriber deleted.': 'გამომწერი წაიშალა'\n'Start IP': 'სასტარტო IP'\n'Select country': 'აირჩიეთ ქვეყანა'\n'Number of addresses': 'მისამართების რაოდენობა'\n'Number of Addressses': 'მისამართების რაოდენობა'\n'No IP Addresses': 'IP მისამართები არ არის'\n'IP Address added allready': 'IP მისამართი უკვე დამატებულია.'\n'IP Address $1': 'IP მისამართი $1'\n'IP Access': 'IP წვდომა'\n'Full Name': სახელი\n'Edit subscriptions': 'გამოწერების რედაქტირება'\n'Edit subscriber $1': '$1 - ამ გამომწერის რედაქტირება'\nE-Mail: იმეილი\n'Delete subscriber $1': '$1 - ამ გამომწერის წაშლა'\n'Creation Date': 'შექმნის თარიღი'\n'Change subscriber information': 'გამომწერის ინფორმაციის შეცვლა'\n'Add new IP address': 'ახალი IP მისამართის დამატება'\n'Add new IP Address': 'ახალი IP მისამართის დამატება'\n'Account Name': null\n'%value% must be greater than %min%': ' %value% უნდა იყოს მეტი ვიდრე %min%'\n'%value% is not a valid IP Address': '%value% არ არის სწორი IP მისამართი'\n'Regardless of the language': 'ენის მიუხედავად'\n'Individual languages': 'ინდივიდუალური ენა'\n'Add sections now': 'სექციის ახლა დამატება'\n'Add sections later': 'სექციის მოგვიანებით დამატება'\n'Subscription Type': 'გამოწერის ტიპი'\n'Paid (payment will be confirmed later)': 'ფასიანი (ანგარიშსწორება მოგვიანებით დადასტურდება)'\n'Paid (confirm payment now)': 'ფასიანი (ანგარიშსწორება ახლა დადასტურება)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.ko.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': '사용자 이름이 이미 존재합니다. 다른 아이디를 선택하시오.'\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': '언어와 관련 없음'\n'Individual languages': '개별 언어'\n'Add sections now': '지금 섹션 추가'\n'Add sections later': '나중에 섹션 추가'\n'Subscription Type': '구독 타입 '\n'Paid (payment will be confirmed later)': '지불(나중에 지불 확인)'\n'Paid (confirm payment now)': '지불(지금 지불 확인)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.ku.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': null\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': null\n'Individual languages': null\n'Add sections now': null\n'Add sections later': null\n'Subscription Type': null\n'Paid (payment will be confirmed later)': null\n'Paid (confirm payment now)': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.lv.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': null\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': null\n'Individual languages': null\n'Add sections now': null\n'Add sections later': null\n'Subscription Type': null\n'Paid (payment will be confirmed later)': null\n'Paid (confirm payment now)': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.mr.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': null\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': null\n'Individual languages': null\n'Add sections now': null\n'Add sections later': null\n'Subscription Type': null\n'Paid (payment will be confirmed later)': null\n'Paid (confirm payment now)': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.nb_NO.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': null\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': null\n'Individual languages': null\n'Add sections now': null\n'Add sections later': null\n'Subscription Type': null\n'Paid (payment will be confirmed later)': null\n'Paid (confirm payment now)': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.nl.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: Betaald\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': 'Die gebruiker naam bestaat al, kies een andere login naam.'\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': 'Onafhankelijk van de taal'\n'Individual languages': 'Individuele talen'\n'Add sections now': 'Rubrieken nu toevoegen'\n'Add sections later': 'Rubrieken later toevoegen'\n'Subscription Type': 'Abonnement Type'\n'Paid (payment will be confirmed later)': 'Betaald (betaling zal later worden bevestigd)'\n'Paid (confirm payment now)': 'Betaald (bevestig betaling nu)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.pa.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': null\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': null\n'Individual languages': null\n'Add sections now': null\n'Add sections later': null\n'Subscription Type': null\n'Paid (payment will be confirmed later)': null\n'Paid (confirm payment now)': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.pl.yml",
    "content": "third: trzeci\nsecond: drugi\nforth: czwarty\nfirst: pierwszy\n'You must input a number greater than 0 into the Number of addresses field.': 'W pole liczba adresów musisz wpisać liczbę większa niż 0.'\n'You must input a number between 0 and 255 into the Start IP address $1 field.': 'Dla pola początkowe adresy IP $1 musisz podać liczbę z zakresu pomiędzy 0 a 255.'\n'User IP access list management': 'Zarządzanie listą adresów IP użytkownika'\n'The IP address group conflicts with another existing group.': 'Ta grupa adresów IP koliduje z inną istniejącą grupą.'\n'Subscription sections': 'Sekcje subskrybcji'\n'No records.': 'Brak wyników'\n'You have subscription for all available publications': 'Masz subskrybcje dla wszystkich dostępnych publikacji'\n'Subscription type:': 'Typ subskrybcji:'\n'Start:': Start\n'Start Date': 'Data startu'\n'Sections:': Sekcja\n'Publication:': Publickacja\n'Paid days': 'Opłacone dni'\n'Paid Days:': 'Opłacone dni'\nPaid: Oplacone\n'No subscriptions': 'Brak subskrypcji'\n'Languages:': Języki\n'Edit all sections': 'Edytuj wszystkie sekcje'\n'Days:': Dni\n'Days must be number': 'Dni muszą być liczbą'\nAny: Każdy\n'Add section': 'Dodaj sekcję'\nsaved: zapisane\nremoved: usunięte\ndeleted: usuniety\ndeactivated: wyłączone\nactivated: aktywowane\n'Value is required and cant be empty': 'Wartość jest wymagana i nie może być pusta.'\n'That user name already exists, please choose a different login name.': 'Ta nazwa użytkownika już istnieje, wybierz inną nazwę.'\n'That $1 already exists, please choose a different $2.': 'Ten $1 już istnieje, wybierz inny $2'\n'Subscriptions exist for all available publications.': 'Subskrybcje istnieją dla wszystkich dostępnych publikacji.'\n'Subscription IP Addresses': 'Adresy IP subskrypcji'\n'Subscription $1': 'Subskrypcja $1'\n'Subscriber saved.': 'Subskrypcja zapisana.'\n'Subscriber management': 'Zarządzanie subskrypcjami'\n'Subscriber deleted.': 'Subskrypcja usunięta.'\n'Start IP': 'Początkowy adres IP'\n'Select country': 'Wybierz kraj'\n'Number of addresses': 'Liczba adresów'\n'Number of Addressses': 'Liczba adresów'\n'No IP Addresses': 'Brak adresu IP'\n'IP Address added allready': 'Ten adres IP już jest dodany'\n'IP Address $1': 'Adres IP $1'\n'IP Access': 'Dostęp IP'\n'Full Name': 'Pełna nazwa'\n'Edit subscriptions': 'Edytuj subskrybcje'\n'Edit subscriber $1': 'Edytuj subskrybera'\nE-Mail: 'Adres email'\n'Delete subscriber $1': 'Usuń subskrybera'\n'Creation Date': 'Data utworzenia'\n'Change subscriber information': 'Zmień informacje subskrybenta'\n'Add new IP address': 'Dodaj nowy adres IP'\n'Add new IP Address': 'Dodaj nowy adres IP'\n'Account Name': 'Nazwa konta'\n'%value% must be greater than %min%': '%value% musi mieć więcej znaków niż %max%'\n'%value% is not a valid IP Address': '%value% nie jest prawidłowym adresem IP'\n'Regardless of the language': 'Niezależnie od języka'\n'Individual languages': 'Indywidualne języki'\n'Add sections now': 'Dodaj sekcję'\n'Add sections later': 'Dodaj sekcję później'\n'Subscription Type': 'Typ subskrypcji'\n'Paid (payment will be confirmed later)': 'Zapłacone (płatność zostanie potwierdzona później)'\n'Paid (confirm payment now)': 'Zapłacone (potwierdź płatność teraz)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.ps.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': null\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': null\n'Individual languages': null\n'Add sections now': null\n'Add sections later': null\n'Subscription Type': null\n'Paid (payment will be confirmed later)': null\n'Paid (confirm payment now)': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.pt.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': 'Nome já existente, por favor escoha um diferente.'\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': 'Acesso por IP'\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': 'Apesar do idioma'\n'Individual languages': Idiomas\n'Add sections now': 'Adicionar agora Secções'\n'Add sections later': 'Adicionar Secções posteriormente'\n'Subscription Type': 'Tipo de Assinatura'\n'Paid (payment will be confirmed later)': 'Paga (pagamento será confirmado mais tarde)'\n'Paid (confirm payment now)': 'Paga (confirme pagamente neste momento)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.pt_BR.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: removido\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': 'O valor é necessário e não pode estar vazio'\n'That user name already exists, please choose a different login name.': 'Nome já existente, por favor escoha um diferente.'\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': 'Acesso por IP'\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': 'Modificar dados do assinante'\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': 'Apesar do idioma'\n'Individual languages': Idiomas\n'Add sections now': 'Adicionar agora Secções'\n'Add sections later': 'Adicionar Secções posteriormente'\n'Subscription Type': 'Tipo de Assinatura'\n'Paid (payment will be confirmed later)': 'Paga (pagamento será confirmado mais tarde)'\n'Paid (confirm payment now)': 'Paga (confirme pagamente neste momento)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.ro.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': 'Acel nume de utilizator există deja, alege un alt nume.'\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': 'Acces bazat pe adresa IP'\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': 'Indiferent de limbă'\n'Individual languages': 'Limbi individuale'\n'Add sections now': 'Adaugă secţiunile acum'\n'Add sections later': 'Adaugă secţiunile mai târziu'\n'Subscription Type': 'Tipul abonamentului'\n'Paid (payment will be confirmed later)': 'Cu plată (confirmarea plăţii va fi făcută mai târziu)'\n'Paid (confirm payment now)': 'Cu plată (confirmă plata acum)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.ru.yml",
    "content": "third: третий\nsecond: второй\nforth: четвертый\nfirst: первый\n'You must input a number greater than 0 into the Number of addresses field.': 'Вы должны ввести число больше 0 в поле Количество адресов.'\n'You must input a number between 0 and 255 into the Start IP address $1 field.': 'Вы должны ввести число между 0 и 255 в поле Начать IP адрес  $1 '\n'User IP access list management': 'Управление списками пользовательских IP'\n'The IP address group conflicts with another existing group.': 'Группа IP адреса конфликтует с другой существующей группой.'\n'Subscription sections': 'Подписные рубрики'\n'No records.': 'Нет записей.'\n'You have subscription for all available publications': 'Вы подписаны на все доступные публикации'\n'Subscription type:': 'Тип подписки:'\n'Start:': Начало\n'Start Date': 'Дата начала'\n'Sections:': 'Рубрики:'\n'Publication:': 'Публикации:'\n'Paid days': 'Оплаченные дни'\n'Paid Days:': 'Оплаченные дни:'\nPaid: Оплачено\n'No subscriptions': 'Нет подписок'\n'Languages:': 'Языки:'\n'Edit all sections': 'Редактировать все рубрики'\n'Days:': 'Дни:'\n'Days must be number': 'Значение дней должно быть обозначено цифрами'\nAny: Любое\n'Add section': 'Добавить рубрику'\nsaved: сохранено\nremoved: перемещено\ndeleted: удалено\ndeactivated: деактивировано\nactivated: активировано\n'Value is required and cant be empty': 'Требуется значение, поле не может быть пустым.'\n'That user name already exists, please choose a different login name.': 'Это имя пользователя уже существует, пожалуйста, выберите другой логин.'\n'That $1 already exists, please choose a different $2.': 'Этот $1 уже существует, пожалуйста, выберите другой $2.'\n'Subscriptions exist for all available publications.': 'Есть подписка на все доступные публикации. '\n'Subscription IP Addresses': 'IP адреса подписки'\n'Subscription $1': 'Подписка $1'\n'Subscriber saved.': 'Подписчик сохранен.'\n'Subscriber management': 'Управление подписчиками'\n'Subscriber deleted.': 'Подписчик удален.'\n'Start IP': 'Начать IP'\n'Select country': 'Выбрать страну'\n'Number of addresses': 'Количество адресов'\n'Number of Addressses': 'Количество адресов'\n'No IP Addresses': 'Нет IP адресов'\n'IP Address added allready': 'IP адрес уже добавлен'\n'IP Address $1': 'IP адрес $1'\n'IP Access': 'IP адрес'\n'Full Name': 'Полное имя'\n'Edit subscriptions': 'Редактировать подписки'\n'Edit subscriber $1': 'Редактировать подписчика $1'\nE-Mail: E-mail\n'Delete subscriber $1': 'Удалить подписчика $1'\n'Creation Date': 'Дата создания'\n'Change subscriber information': 'Изменить информацию о подписчике'\n'Add new IP address': 'Добавить новый IP адрес'\n'Add new IP Address': 'Добавит новый IP адрес'\n'Account Name': 'Имя учетной записи'\n'%value% must be greater than %min%': 'значение %value% должно быть больше, чем %min%'\n'%value% is not a valid IP Address': '%value%  не является действительным IP адресом'\n'Regardless of the language': 'Независимо от языка'\n'Individual languages': 'Индивидуальные языки'\n'Add sections now': 'Добавить рубрику сейчас'\n'Add sections later': 'Добавить рубрику позже'\n'Subscription Type': 'Тип подписки'\n'Paid (payment will be confirmed later)': 'Платная (оплата будет подтверждена позже)'\n'Paid (confirm payment now)': 'Платная (подтвердить оплату сейчас)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.sh.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': Početak\n'Start Date': 'Početni datum'\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': 'Nema pretplata'\n'Languages:': Jezici\n'Edit all sections': 'Uredi sve rubrike'\n'Days:': Dani\n'Days must be number': 'Dani moraju biti broj'\nAny: 'Bilo koji'\n'Add section': 'Dodaj rubriku'\nsaved: snimljeno\nremoved: uklonjeno\ndeleted: obrisana\ndeactivated: deaktivirano\nactivated: aktivirano\n'Value is required and cant be empty': 'Vrednost je obavezna i ne može ostati prazna'\n'That user name already exists, please choose a different login name.': 'To korisničko ime već postoji, izaberite neko drugo ime.'\n'That $1 already exists, please choose a different $2.': 'Taj $1 već postoji, izaberite drugi $2.'\n'Subscriptions exist for all available publications.': 'Pretplate postoje za sve dostupne publikacije.'\n'Subscription IP Addresses': 'Pretplatničke IP adrese'\n'Subscription $1': 'Pretplata $1'\n'Subscriber saved.': 'Pretplatnik snimljen.'\n'Subscriber management': 'Upravljanje pretplatnicima.'\n'Subscriber deleted.': 'Pretplatnik obrisan.'\n'Start IP': 'Početni IP'\n'Select country': 'Izaberi državu'\n'Number of addresses': 'Broj adresa'\n'Number of Addressses': 'Broj adresa'\n'No IP Addresses': 'Nema IP adresa'\n'IP Address added allready': 'IP adresa je već dodata'\n'IP Address $1': 'IP adresa $1'\n'IP Access': 'IP pristup'\n'Full Name': 'Puno ime'\n'Edit subscriptions': 'Uredi pretplate'\n'Edit subscriber $1': 'Uredi pretplatnika $1'\nE-Mail: E-mail\n'Delete subscriber $1': 'Obriši pretplatnika $1'\n'Creation Date': 'Datum kreiranja'\n'Change subscriber information': 'Promeni informacije o pretplatniku'\n'Add new IP address': 'Dodaj novu IP adresu'\n'Add new IP Address': 'Dodaj novu IP adresu'\n'Account Name': null\n'%value% must be greater than %min%': '%value%ć mora biti veće od %min%'\n'%value% is not a valid IP Address': '%value% nije validna IP adresa'\n'Regardless of the language': 'Nezavisno od jezika'\n'Individual languages': 'Pojedinačni jezici'\n'Add sections now': 'Dodaj rubriku sad'\n'Add sections later': 'Dodaj rubriku kasnije'\n'Subscription Type': 'Tip pretplate'\n'Paid (payment will be confirmed later)': 'Plaćeno (uplata će biti potvrđena kasnije) '\n'Paid (confirm payment now)': 'Plaćeno (potvrdi uplatu sad)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.sq.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': null\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': null\n'Individual languages': null\n'Add sections now': null\n'Add sections later': null\n'Subscription Type': null\n'Paid (payment will be confirmed later)': null\n'Paid (confirm payment now)': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.sr.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': Почетак\n'Start Date': 'Почетни датум'\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': 'Уреди све рубрике'\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: снимљено\nremoved: уклоњено\ndeleted: обрисана\ndeactivated: деактивирано\nactivated: активирано\n'Value is required and cant be empty': 'Вредност је обавезна, поље не може бити празно'\n'That user name already exists, please choose a different login name.': 'То корисничко име већ постоји, изаберите неко друго име.'\n'That $1 already exists, please choose a different $2.': 'Тај $1 већ постоји, изаберите други $2.'\n'Subscriptions exist for all available publications.': 'Претплате постоје за све доступне публикације.'\n'Subscription IP Addresses': 'Претплатничке ИП адресе'\n'Subscription $1': 'Претплата $1'\n'Subscriber saved.': 'Претплатник снимљен.'\n'Subscriber management': 'Управљање претплатницима.'\n'Subscriber deleted.': 'Претплатник обрисан.'\n'Start IP': 'Почетни ИП'\n'Select country': 'Изабери државу'\n'Number of addresses': 'Број адреса'\n'Number of Addressses': 'Број адреса'\n'No IP Addresses': 'Нема ИП адреса'\n'IP Address added allready': 'ИП адреса је већ додата'\n'IP Address $1': 'ИП адреса $1'\n'IP Access': 'ИП приступ'\n'Full Name': 'Пуно име'\n'Edit subscriptions': 'Уреди претплате'\n'Edit subscriber $1': 'Уреди претплатника $1'\nE-Mail: Имејл\n'Delete subscriber $1': 'Обриши претплатника $1'\n'Creation Date': 'Датум креирања'\n'Change subscriber information': 'Промени информације о претплатнику'\n'Add new IP address': 'додај нову ИП адресу'\n'Add new IP Address': 'Додај нову ИП адресу'\n'Account Name': null\n'%value% must be greater than %min%': '%value% мора бити веће од %min%'\n'%value% is not a valid IP Address': '%value% није валидна ИП адреса'\n'Regardless of the language': 'Независно од језика'\n'Individual languages': 'Појединачни језици'\n'Add sections now': 'Додај рубрику сад'\n'Add sections later': 'Додај рубрику касније'\n'Subscription Type': 'Тип претплате'\n'Paid (payment will be confirmed later)': 'Плаћено (уплата ће бити потврђена касније) '\n'Paid (confirm payment now)': 'Плаћено (потврди уплату сад)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.sv.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': 'Användarnamnet finns redan, var god välj ett annat användarnamn.'\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': 'Oavsett språk'\n'Individual languages': 'Enskilda språk'\n'Add sections now': 'Lägg till sektioner nu'\n'Add sections later': 'Lägg till sektioner senare'\n'Subscription Type': Prenumerationstyp\n'Paid (payment will be confirmed later)': 'Betald (betalning kommer bekräftas senare)'\n'Paid (confirm payment now)': 'Betald (bekräfta betalning nu)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.tr.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': null\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': null\n'Individual languages': null\n'Add sections now': null\n'Add sections later': null\n'Subscription Type': null\n'Paid (payment will be confirmed later)': null\n'Paid (confirm payment now)': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.uk.yml",
    "content": "third: третій\nsecond: другий\nforth: четвертий\nfirst: п’ятий\n'You must input a number greater than 0 into the Number of addresses field.': 'Ви маєте ввести номер більший за 0 у поле кількості адрес.'\n'You must input a number between 0 and 255 into the Start IP address $1 field.': 'Ви маєте ввести цифру між 0 та 255 у поле статичний ІР-адрес.'\n'User IP access list management': 'Керування списком ІР-адрес користувача'\n'The IP address group conflicts with another existing group.': 'Група ІР-адрес конфліктує з іншою існуючою групою.'\n'Subscription sections': 'Розділи підписки'\n'No records.': 'Немає записів'\n'You have subscription for all available publications': 'Ви маєте підписку на всі доступні публікації'\n'Subscription type:': 'Тип підписки:'\n'Start:': 'Початок:'\n'Start Date': 'Дата початку'\n'Sections:': 'Розділ:'\n'Publication:': Публікації\n'Paid days': 'Платних днів'\n'Paid Days:': 'Платних днів:'\nPaid: Плата\n'No subscriptions': 'Немає підписок'\n'Languages:': 'Мови:'\n'Edit all sections': 'Редагувати усі рубрики'\n'Days:': 'Дні:'\n'Days must be number': 'День має бути цифрою'\nAny: Будь-який\n'Add section': 'Додати розділ'\nsaved: збережено\nremoved: прибрано\ndeleted: видалено\ndeactivated: деактивовано\nactivated: активовано\n'Value is required and cant be empty': 'Значення обов’язкове та не може бути незаповнено.'\n'That user name already exists, please choose a different login name.': 'Цей користувач вже існує, будь ласка виберіть інший логін'\n'That $1 already exists, please choose a different $2.': '$1 вже існує, будь ласка виберіть інше $2.'\n'Subscriptions exist for all available publications.': 'Підписки існують для всіх публікацій.'\n'Subscription IP Addresses': 'ІР-Адреси підписок'\n'Subscription $1': 'Підписка $1'\n'Subscriber saved.': 'Підписувача збережено.'\n'Subscriber management': 'Керування підписувачем'\n'Subscriber deleted.': 'Підписувача видалено.'\n'Start IP': 'ІР початку'\n'Select country': 'Виберіть країну'\n'Number of addresses': 'Кількість адрес'\n'Number of Addressses': 'Кількість адрес'\n'No IP Addresses': 'Немає ІР адрес'\n'IP Address added allready': 'ІР адреси вже додані'\n'IP Address $1': 'ІР адрес $1'\n'IP Access': 'ІР Доступ'\n'Full Name': 'Повне Ім’я'\n'Edit subscriptions': 'Редагувати підписки'\n'Edit subscriber $1': 'Редагувати підписувача $1'\nE-Mail: Е-пошта\n'Delete subscriber $1': 'Видалити підписувача  $1'\n'Creation Date': 'Дата створення'\n'Change subscriber information': 'Змінити інформацію про підписувача'\n'Add new IP address': 'Додати нову ІР адресу'\n'Add new IP Address': 'Додати нову ІР Адресу'\n'Account Name': null\n'%value% must be greater than %min%': ' %value% має бути більш ніж %min%'\n'%value% is not a valid IP Address': ' %value% не є ІР Адресою'\n'Regardless of the language': 'Незалежно від мови'\n'Individual languages': 'Окремі мови'\n'Add sections now': 'Додати розділ зараз'\n'Add sections later': 'Додати розділ пізніше'\n'Subscription Type': 'Тип підписки'\n'Paid (payment will be confirmed later)': 'Плата (оплата може бути підтвердженою пізніше)'\n'Paid (confirm payment now)': 'Плата ( підтвердити зараз)'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.vi.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': null\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': null\n'Individual languages': null\n'Add sections now': null\n'Add sections later': null\n'Subscription Type': null\n'Paid (payment will be confirmed later)': null\n'Paid (confirm payment now)': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.zh.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': 开始：\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': null\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': IP入口\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': null\n'Individual languages': null\n'Add sections now': 现在增加区\n'Add sections later': 以后增加区\n'Subscription Type': 订阅类型\n'Paid (payment will be confirmed later)': 已付（付款以后将确认）\n'Paid (confirm payment now)': 已付（现在确认付款）\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_subscriptions.zh_TW.yml",
    "content": "third: null\nsecond: null\nforth: null\nfirst: null\n'You must input a number greater than 0 into the Number of addresses field.': null\n'You must input a number between 0 and 255 into the Start IP address $1 field.': null\n'User IP access list management': null\n'The IP address group conflicts with another existing group.': null\n'Subscription sections': null\n'No records.': null\n'You have subscription for all available publications': null\n'Subscription type:': null\n'Start:': null\n'Start Date': null\n'Sections:': null\n'Publication:': null\n'Paid days': null\n'Paid Days:': null\nPaid: null\n'No subscriptions': null\n'Languages:': null\n'Edit all sections': null\n'Days:': null\n'Days must be number': null\nAny: null\n'Add section': null\nsaved: null\nremoved: null\ndeleted: null\ndeactivated: null\nactivated: null\n'Value is required and cant be empty': null\n'That user name already exists, please choose a different login name.': null\n'That $1 already exists, please choose a different $2.': null\n'Subscriptions exist for all available publications.': null\n'Subscription IP Addresses': null\n'Subscription $1': null\n'Subscriber saved.': null\n'Subscriber management': null\n'Subscriber deleted.': null\n'Start IP': null\n'Select country': null\n'Number of addresses': null\n'Number of Addressses': null\n'No IP Addresses': null\n'IP Address added allready': null\n'IP Address $1': null\n'IP Access': null\n'Full Name': null\n'Edit subscriptions': null\n'Edit subscriber $1': null\nE-Mail: null\n'Delete subscriber $1': null\n'Creation Date': null\n'Change subscriber information': null\n'Add new IP address': null\n'Add new IP Address': null\n'Account Name': null\n'%value% must be greater than %min%': null\n'%value% is not a valid IP Address': null\n'Regardless of the language': null\n'Individual languages': null\n'Add sections now': null\n'Add sections later': null\n'Subscription Type': null\n'Paid (payment will be confirmed later)': null\n'Paid (confirm payment now)': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.ar.yml",
    "content": "get: 'إحصل على'\nSoundcloud: ساوندكلاود\nTemplates: نماذج\n'Feedback Messages': 'رسائل التغذية المرتدة'\n'Article Playlists': 'قوائم التشغيل للمقالات'\n'Check all': 'ضع علامة في الكل'\nview: إعرض\nundo/redo: 'إلغاء/ إعادة الإجراء'\nunderline: التسطير\ntranslate: ترجم\n'text direction': 'اتجاه النص'\n'text alignment': 'محاذاة النص'\ntable: جدول\nsuperscript: 'الخط العلوي'\nsubscript: 'الخط السفلي'\nsubhead: 'عنوان فرعي'\nstrikethrough: 'التسطير الوسطي'\nstatusbar: 'شريط الحالة'\n'spell checker enabled': 'تم تمكين التدقيق الإملائي'\n'source view': 'إظهار المصدر'\npublish: نشر\nnotify: إعلام\nmoderate: 'إشراف على'\nmanage: إدارة\n'list number': 'رقم القائمة'\n'list bullet': 'قائمة تعداد نقطي'\nlink: رابط\nitalic: مائل\nindent: 'تعيين المسافة البادئة'\nimage: صورة\n'horizontal rule': 'الخط الافقي'\nhandle: سيطرة\nguest: ضيف\n'font size': 'حجم الحرف'\n'font face': 'نمط الحرف'\n'font color': 'لون الخط'\nfind/replace: 'عثر على / استبدال'\nenlarge: تكبير\nenable: تمكين\nedit: تحرير\ndelete: حذف\ncopy/cut/paste: 'نسخ / قص / لصق'\nclear: انقشاع\n'character map': 'جدول الحروف'\nbold: 'الخط الثخين الأسود'\nattach: إرفاق\n'any resource': 'أي مورد'\nadmin: إداري\nadd: إضافة\n'You cant deny yourself to manage $1': 'لا يمكن أن تنكر نفسك من إدارة $1'\n'You are not allowed to $1 $2.': '$2 $1 لا يسمح لك ان'\n'User type saved.': 'تم حفظ نوع المستخدم'\n'User type deleted.': 'تم حذف نوع المستخدم'\n'User type added.': 'تم اضافة نوع المستخدم'\n'User Groups': 'مجموعات المستخدمين'\nThemes: نُسق\n'That type name already exists, please choose a different name.': 'نوع الاسم موجود مسبقاً، يرجى اختيار اسم آخر'\nSystem: نظام\nStructure: هيكل\n'Search Indexer': 'البحث في المفهرس'\n'Rich-Text Editor Preferences': 'تفضيلات محرر النص المنسق'\nReCaptcha: ريكابتشا\nPolls: استطلاعات\n'Permissions:': أذونات\n'Permissions updated': 'تم تحديث الأذونات'\nNotification: إخطار\nLog: سجل\nLayout: التخطيط\nGlobal: عالمي\nFiles: ملفات\n'Error: ': 'الخطأ‫:‬ '\n'Edit user type $1': '$1 عدل نوع المستخدم'\nDeny: إرفض\n'Delete user type $1': '$1 إحذف نوع المستخدم'\n'Can not delete a user type with assigned users.': 'لا يمكن حذف نوع مستخدم ذو مستخدمين معينين'\nCache: 'ذاكرة خبيئة'\nBackup: 'نسخة احتياطية'\nAuthoring: التأليف\nAllow: السماح\n'User types': 'أنواع المستخدم'\n'No user types.': 'لا أنواع مستخدم'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.az.yml",
    "content": "get: 'əldə et'\nSoundcloud: SoundCloud\nTemplates: Üzlük\n'Feedback Messages': 'Rəy Mesajları'\n'Article Playlists': 'Məqalə Pleylistləri'\n'Check all': 'Hamısını yoxla'\nview: bax\nundo/redo: geri/irəli\nunderline: altxətt\ntranslate: tərcümə\n'text direction': 'mətnin istiqaməti'\n'text alignment': 'mətnin yerləşməsi'\ntable: masa\nsuperscript: superskript\nsubscript: abunəlik\nsubhead: altbaşlıq\nstrikethrough: kəsişmə\nstatusbar: 'status yeri'\n'spell checker enabled': 'söz yoxlaması aktivdir'\n'source view': 'mənbəyə baxış'\npublish: nümayiş\nnotify: 'xəbərdar et'\nmoderate: 'idarə et'\nmanage: 'nəzarət et'\n'list number': 'siyahı sayı'\n'list bullet': 'siyahı bülleteni'\nlink: link\nitalic: 'əl yazısı'\nindent: boşluq\nimage: şəkil\n'horizontal rule': 'şaquli xətt'\nhandle: qulp\nguest: qonaq\n'font size': 'hərif ölçüsü'\n'font face': 'hərif forması'\n'font color': 'hərif rəngi'\nfind/replace: tap/əvəzlə\nenlarge: genişləndir\nenable: aktivləşdir\nedit: dəyiş\ndelete: sil\ncopy/cut/paste: köçür/kəs/yapışdır\nclear: təmizlə\n'character map': 'işarə xəritəsi'\nbold: qalın\nattach: 'əlavə et'\n'any resource': 'hər hansı ehtiyat'\nadmin: admin\nadd: 'əlavə et'\n'You cant deny yourself to manage $1': '$1 nəzarətdə saxlamaqdan boyun qaçıra bilməzsən'\n'You are not allowed to $1 $2.': 'Sənin $2 $1 ixtiyarın yoxdur.'\n'User type saved.': 'İstifadəçi növü saxlandı.'\n'User type deleted.': 'İstifadəçi növü silindi.'\n'User type added.': 'İstifadəçi növü əlavə edildi.'\n'User Groups': 'İstifadəçi Qrupları'\nThemes: Mövzular\n'That type name already exists, please choose a different name.': 'O növ ad artıq mövcuddur, lütfən, başqasını seç.'\nSystem: Sistem\nStructure: Struktur\n'Search Indexer': 'Axtarış Əlaməti'\n'Rich-Text Editor Preferences': 'Zəngin-Mətn Dəyişiklik Göstəriciləri'\nReCaptcha: ReCaptcha\nPolls: Səslər\n'Permissions:': 'İcazələr:'\n'Permissions updated': 'İcazələr yeniləndi'\nNotification: Xəbərdarlıq\nLog: Giriş\nLayout: Görünüş\nGlobal: Qlobal\nFiles: Fayllar\n'Error: ': 'Xəta:'\n'Edit user type $1': '$1 istifadəçi növünü dəyiş'\nDeny: 'Rədd et'\n'Delete user type $1': '$1 istifadəçi növünü sil'\n'Can not delete a user type with assigned users.': 'Təyin edilmiş istifadəçilərlə istifadəçi növünü silmək mümkün deyil.'\nCache: Keş\nBackup: Arxiv\nAuthoring: Müəlliflik\nAllow: 'İcazə ver'\n'User types': 'İstifadəçi növləri'\n'No user types.': 'İstifadəçi növü yoxdur.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.be.yml",
    "content": "get: null\nSoundcloud: SoundCloud\nTemplates: Шаблёны\n'Feedback Messages': 'Адказ на паведамленні'\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: выява\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: 'Тэмы (шаблёны)'\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: Файлы\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': 'Тыпы карыстальнiкаў'\n'No user types.': 'Няма тыпаў карыстальнiкаў.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.bn.yml",
    "content": "get: null\nSoundcloud: SoundCloud\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: থিম\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: null\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': null\n'No user types.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.cs.yml",
    "content": "get: dostat\nSoundcloud: SoundCloud\nTemplates: Šablony\n'Feedback Messages': 'Feedback zpráv'\n'Article Playlists': 'Seznamy článků'\n'Check all': 'Zkontrolovat vše'\nview: ukázat\nundo/redo: odstranit/předělat\nunderline: podtrhnout\ntranslate: přeložit\n'text direction': 'směr textu'\n'text alignment': 'zarovnání textu'\ntable: 'tabulka '\nsuperscript: 'horní index'\nsubscript: 'dolní index'\nsubhead: podkapitola\nstrikethrough: přeškrtnout\nstatusbar: statusbar\n'spell checker enabled': 'kontrola pravopisu povolena'\n'source view': 'zdrojový pohled'\npublish: vydat\nnotify: potvrdit\nmoderate: upravit\nmanage: spravovat\n'list number': 'zobrazit číslo'\n'list bullet': odrážky\nlink: odkaz\nitalic: kurzíva\nindent: odsadit\nimage: obrázek\n'horizontal rule': 'horizontal rule'\nhandle: handle\nguest: host\n'font size': 'velikost písma'\n'font face': 'styl písma'\n'font color': 'barva písma'\nfind/replace: najít/nahradit\nenlarge: zvětšit\nenable: umožnit\nedit: upravit\ndelete: smazat\ncopy/cut/paste: kopírovat/vyjmout/vložit\nclear: vymazat\n'character map': 'character map'\nbold: tučně\nattach: připojit\n'any resource': 'jakýkoliv zdroj'\nadmin: admin\nadd: přidat\n'You cant deny yourself to manage $1': 'Nemůžete sebe odmítnout ze spravování $1'\n'You are not allowed to $1 $2.': 'Nemáte povoleno $1 $2.'\n'User type saved.': 'Typ uživatele uložen.'\n'User type deleted.': 'Typ uživatele vymazán.'\n'User type added.': 'Typ uživatel přidán.'\n'User Groups': 'Uživatelské skupiny'\nThemes: Náměty\n'That type name already exists, please choose a different name.': 'Tento název typu již existuje, prosím vyberte jiný název.'\nSystem: Systém\nStructure: Struktura\n'Search Indexer': 'Vyhledat '\n'Rich-Text Editor Preferences': 'Rich-Text Editor Preferences'\nReCaptcha: ReCaptcha\nPolls: Ankety\n'Permissions:': 'Povolení:'\n'Permissions updated': 'Povolení aktualizovány'\nNotification: Oznámení\nLog: Log\nLayout: Layout\nGlobal: Globální\nFiles: Soubory\n'Error: ': 'Chyba:'\n'Edit user type $1': 'Upravit typ uživatele $1'\nDeny: Zamítnout\n'Delete user type $1': 'Vymazat typ uživatele $1'\n'Can not delete a user type with assigned users.': 'Nelze vymazat uživatelský typ s přidělenými uživateli.'\nCache: Cache\nBackup: Backup\nAuthoring: Authoring\nAllow: Povolit\n'User types': 'Typy uživatelů'\n'No user types.': 'Žádné typy uživatelů'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.da.yml",
    "content": "get: hent\nSoundcloud: SoundCloud\nTemplates: Skabeloner\n'Feedback Messages': 'Feedback beskeder'\n'Article Playlists': 'Artikle playlister'\n'Check all': 'Vælg alle'\nview: se\nundo/redo: fortryd/gentag\nunderline: understreget\ntranslate: oversæt\n'text direction': 'tekst retning'\n'text alignment': 'tekst justering'\ntable: tabel\nsuperscript: hævet\nsubscript: sænket\nsubhead: underoverskrift\nstrikethrough: gennemstreget\nstatusbar: statusbar\n'spell checker enabled': 'stavekontrol slået til'\n'source view': 'se kilde'\npublish: udgiv\nnotify: underret\nmoderate: moderer\nmanage: administrer\n'list number': 'liste med tal'\n'list bullet': 'liste med punkter'\nlink: link\nitalic: kursiv\nindent: indryk\nimage: billede\n'horizontal rule': 'vandret linje'\nhandle: håndtag\nguest: gæst\n'font size': skriftstørrelse\n'font face': skrifttype\n'font color': skriftfarve\nfind/replace: søg/erstat\nenlarge: forstør\nenable: 'slå til'\nedit: rediger\ndelete: slet\ncopy/cut/paste: 'kopier/klip/sæt ind'\nclear: ryd\n'character map': tegnoversigt\nbold: fed\nattach: vedhæft\n'any resource': 'valgfri ressource'\nadmin: admin\nadd: tilføj\n'You cant deny yourself to manage $1': 'Du kan ikke forbyde dig selv at administrere $1'\n'You are not allowed to $1 $2.': 'Du har ikke tilladelse til at $1 $2.'\n'User type saved.': 'Brugertype gemt.'\n'User type deleted.': 'Brugertype slettet.'\n'User type added.': 'Brugertype tilføjet.'\n'User Groups': 'Bruger grupper'\nThemes: Temaer\n'That type name already exists, please choose a different name.': 'Det valgte typenavn eksisterer allerede, vælg venligst et andet navn.'\nSystem: System\nStructure: Struktur\n'Search Indexer': 'Søge indexer'\n'Rich-Text Editor Preferences': 'Indstillinger for tekstredigering'\nReCaptcha: ReCaptcha\nPolls: Afstemninger\n'Permissions:': 'Tilladelser:'\n'Permissions updated': 'Tilladelser opdateret'\nNotification: Besked\nLog: Log\nLayout: Layout\nGlobal: Global\nFiles: Filer\n'Error: ': 'Fejl:'\n'Edit user type $1': 'Rediger brugertype $1'\nDeny: Afvis\n'Delete user type $1': 'Slet brugertype $1'\n'Can not delete a user type with assigned users.': 'En brugertype med brugere kan ikke slettes.'\nCache: Cache\nBackup: Backup\nAuthoring: Redigerer\nAllow: Tillad\n'User types': Brugertyper\n'No user types.': 'Ingen brugertyper.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.de.yml",
    "content": "get: bekommen\nSoundcloud: SoundCloud\nTemplates: Templates\n'Feedback Messages': 'Feedback Nachricht'\n'Article Playlists': 'Liste ausgewählter Artikel'\n'Check all': 'Alle prüfen'\nview: ansehen\nundo/redo: 'rückgängig machen/wiederholen'\nunderline: unterstreichen\ntranslate: übersetzen\n'text direction': Textrichtung\n'text alignment': Textausrichtung\ntable: Tabelle\nsuperscript: hochgestellt\nsubscript: tiefgestellt\nsubhead: Zwischentitel\nstrikethrough: durchgestrichen\nstatusbar: Statuszeile\n'spell checker enabled': 'Rechtschreibprüfung aktiviert'\n'source view': Quelltext\npublish: veröffentlichen\nnotify: benachrichtigen\nmoderate: moderieren\nmanage: verwalten\n'list number': 'Aufzählung numerisch'\n'list bullet': Aufzählungspunkt\nlink: Link\nitalic: kursiv\nindent: einrücken\nimage: Bild\n'horizontal rule': Linie\nhandle: anfassen\nguest: Gast\n'font size': Schriftgröße\n'font face': Schrifttyp\n'font color': Schriftfarbe\nfind/replace: suchen/ersetzen\nenlarge: vergrößern\nenable: aktivieren\nedit: bearbeiten\ndelete: löschen\ncopy/cut/paste: kopieren/ausschneiden/einfügen\nclear: löschen\n'character map': Zeichentabelle\nbold: fett\nattach: anhängen\n'any resource': 'jede Ressource'\nadmin: Admin\nadd: hinzufügen\n'You cant deny yourself to manage $1': 'Sie können sich nicht selbst die Verwaltung von $1 verweigern'\n'You are not allowed to $1 $2.': 'Sie haben keine Berechtigung zum $1 $2.'\n'User type saved.': 'Benutzertyp gespeichert. '\n'User type deleted.': 'Benutzertyp gelöscht.'\n'User type added.': 'Benutzertyp hinzugefügt.'\n'User Groups': Benutzergruppen\nThemes: Designvorlagen\n'That type name already exists, please choose a different name.': 'Der Typenname existiert bereits, bitte wählen Sie einen anderen Namen. '\nSystem: System\nStructure: Struktur\n'Search Indexer': Suchindizierung\n'Rich-Text Editor Preferences': 'Rich-Text Editor Präferenzen'\nReCaptcha: ReCaptcha\nPolls: Umfragen\n'Permissions:': Berechtigungen\n'Permissions updated': 'Berechtigungen aktualisiert'\nNotification: Benachrichtigung\nLog: Log\nLayout: Layout\nGlobal: Globale\nFiles: Dateien\n'Error: ': 'Fehler: '\n'Edit user type $1': 'Benutzertyp $1 bearbeiten'\nDeny: Verweigere\n'Delete user type $1': 'Lösche Benutzertyp  $1'\n'Can not delete a user type with assigned users.': 'Ein Benutzertyp mit zugewiesenen Benutzern kann nicht gelöscht werden.'\nCache: Cache\nBackup: Backup\nAuthoring: Authoring\nAllow: Erlauben\n'User types': Benutzertypen\n'No user types.': 'Keine Benutzertypen'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.de_AT.yml",
    "content": "get: bekommen\nSoundcloud: SoundCloud\nTemplates: Templates\n'Feedback Messages': 'Feedback Nachricht'\n'Article Playlists': 'Liste ausgewählter Artikel'\n'Check all': 'Alle prüfen'\nview: ansehen\nundo/redo: 'rückgängig machen/wiederholen'\nunderline: unterstreichen\ntranslate: übersetzen\n'text direction': Textrichtung\n'text alignment': Textausrichtung\ntable: Tabelle\nsuperscript: hochgestellt\nsubscript: tiefgestellt\nsubhead: Zwischentitel\nstrikethrough: durchgestrichen\nstatusbar: Statuszeile\n'spell checker enabled': 'Rechtschreibprüfung aktiviert'\n'source view': Quelltext\npublish: veröffentlichen\nnotify: benachrichtigen\nmoderate: moderieren\nmanage: verwalten\n'list number': 'Aufzählung numerisch'\n'list bullet': Aufzählungspunkt\nlink: Link\nitalic: kursiv\nindent: einrücken\nimage: Bild\n'horizontal rule': Linie\nhandle: anfassen\nguest: Gast\n'font size': Schriftgröße\n'font face': Schrifttyp\n'font color': Schriftfarbe\nfind/replace: suchen/ersetzen\nenlarge: vergrößern\nenable: aktivieren\nedit: bearbeiten\ndelete: löschen\ncopy/cut/paste: kopieren/ausschneiden/einfügen\nclear: löschen\n'character map': Zeichentabelle\nbold: fett\nattach: anhängen\n'any resource': 'jede Ressource'\nadmin: Admin\nadd: hinzufügen\n'You cant deny yourself to manage $1': 'Sie können sich nicht selbst die Verwaltung von $1 verweigern'\n'You are not allowed to $1 $2.': 'Sie haben keine Berechtigung zum $1 $2.'\n'User type saved.': 'Benutzertyp gespeichert. '\n'User type deleted.': 'Benutzertyp gelöscht.'\n'User type added.': 'Benutzertyp hinzugefügt.'\n'User Groups': Benutzergruppen\nThemes: Themen\n'That type name already exists, please choose a different name.': 'Der Typenname existiert bereits, bitte wählen Sie einen anderen Namen. '\nSystem: System\nStructure: Struktur\n'Search Indexer': Suchindizierung\n'Rich-Text Editor Preferences': 'Rich-Text Editor Präferenzen'\nReCaptcha: ReCaptcha\nPolls: Umfragen\n'Permissions:': Berechtigungen\n'Permissions updated': 'Berechtigungen aktualisiert'\nNotification: Benachrichtigung\nLog: Log\nLayout: Layout\nGlobal: Globale\nFiles: Dateien\n'Error: ': 'Fehler: '\n'Edit user type $1': 'Benutzertyp $1 bearbeiten'\nDeny: Verweigere\n'Delete user type $1': 'Lösche Benutzertyp  $1'\n'Can not delete a user type with assigned users.': 'Ein Benutzertyp mit zugewiesenen Benutzern kann nicht gelöscht werden.'\nCache: Cache\nBackup: Backup\nAuthoring: Authoring\nAllow: Erlauben\n'User types': Benutzertypen\n'No user types.': 'Keine Benutzertypen'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.el.yml",
    "content": "get: λήψη\nSoundcloud: SoundCloud\nTemplates: Πρότυπα\n'Feedback Messages': 'Μηνύματα Feedback'\n'Article Playlists': 'Λίστες Αναπαραγωγής Άρθρου'\n'Check all': 'Έλεγχος όλων'\nview: προβολή\nundo/redo: undo/redo\nunderline: υπογράμμιση\ntranslate: μετάφραση\n'text direction': 'κετεύθυνση κειμένου'\n'text alignment': 'στοίχιση κειμένου'\ntable: πίνακας\nsuperscript: εκθέτης\nsubscript: δείκτης\nsubhead: υπότιτλος\nstrikethrough: διαγράμμιση\nstatusbar: statusbar\n'spell checker enabled': 'ο αυτόματος διορθωτης είναι ενεργοποιημένος'\n'source view': 'προβολή πηγής'\npublish: σημοσίευση\nnotify: κοινοποίηση\nmoderate: χειρισμός\nmanage: διαχείριση\n'list number': 'list number'\n'list bullet': ' list bullet'\nlink: σύνδεσμος\nitalic: italic\nindent: indent\nimage: εικόνα\n'horizontal rule': 'οριζόντιος κανόνας'\nhandle: χειρισμός\nguest: επισκέπτης\n'font size': 'μέγεθος γραμματοσειράς'\n'font face': γραμματοσειρά\n'font color': 'χρώμα  γραμματοσειράς'\nfind/replace: εύρεση/αντικατάσταση\nenlarge: μεγέθυνση\nenable: ενεργοποίηση\nedit: επεξεργασία\ndelete: διαγραφή\ncopy/cut/paste: αντιγραφή/αποκοπή/επικόλληση\nclear: εκκαθάριση\n'character map': 'χάρτης χαρακτήρα'\nbold: bold\nattach: σύναψη\n'any resource': 'οποιοσδήποτε πόρος'\nadmin: admin\nadd: προσθήκη\n'You cant deny yourself to manage $1': 'Δεν μπορείτε να αρνηθείτε στον εαυτό σας να διαχειρίζεται $1'\n'You are not allowed to $1 $2.': 'Δεν έχετε δικαίωμα να $1 $2.'\n'User type saved.': 'Ο τύπος χρήστη αποθηκεύτηκε.'\n'User type deleted.': 'Ο τύπος χρήστη διαγράφηκε.'\n'User type added.': 'Ο τύπος χρήστη προστέθηκε.'\n'User Groups': 'Ομάδες Χρηστών'\nThemes: Θέματα\n'That type name already exists, please choose a different name.': 'Το όνομα τύπου υπάρχει ήδη, παρακαλούμε επιλέξτε διαφορετικό όνομα.'\nSystem: Σύστημα\nStructure: Δομή\n'Search Indexer': 'Αναζήτηση Indexer'\n'Rich-Text Editor Preferences': 'Προτιμήσεις Πλούσιου-Επεξεργαστή Κειμένου'\nReCaptcha: ReCaptcha\nPolls: Δημοσκοπήσεις\n'Permissions:': 'Δικαιώματα:'\n'Permissions updated': 'Τα δικαιώματα ενημερώθηκαν'\nNotification: Ειδοποίηση\nLog: Σύνδεση\nLayout: Layout\nGlobal: Παγκόσμιο\nFiles: Αρχεία\n'Error: ': 'Σφάλμα:'\n'Edit user type $1': 'Επεξεργασία τύπου χρήστη $1'\nDeny: Απόρριψη\n'Delete user type $1': 'Διαγραφή τύπου χρήστη $1'\n'Can not delete a user type with assigned users.': 'Δεν μπορεί να διαγραφεί τύπος χρήστη με εκχωρημένους χρήστες.'\nCache: Cache\nBackup: 'Αντίγραφο Ασφαλείας'\nAuthoring: Σύνταξη\nAllow: Παραχώρηση\n'User types': 'Τύποι Χρήστη'\n'No user types.': 'Κανένας τύπος χρήστη.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.en.yml",
    "content": "get: get\nSoundcloud: SoundCloud\nTemplates: Templates\n'Feedback Messages': 'Feedback Messages'\n'Article Playlists': 'Article Playlists'\n'Check all': 'Check all'\nview: view\nundo/redo: undo/redo\nunderline: underline\ntranslate: translate\n'text direction': 'text direction'\n'text alignment': 'text alignment'\ntable: table\nsuperscript: superscript\nsubscript: subscript\nsubhead: subhead\nstrikethrough: strikethrough\nstatusbar: statusbar\n'spell checker enabled': 'spell checker enabled'\n'source view': 'source view'\npublish: publish\nnotify: notify\nmoderate: moderate\nmanage: manage\n'list number': 'list number'\n'list bullet': 'list bullet'\nlink: link\nitalic: italic\nindent: indent\nimage: image\n'horizontal rule': 'horizontal rule'\nhandle: handle\nguest: guest\n'font size': 'font size'\n'font face': 'font face'\n'font color': 'font color'\nfind/replace: find/replace\nenlarge: enlarge\nenable: enable\nedit: edit\ndelete: delete\ncopy/cut/paste: copy/cut/paste\nclear: clear\n'character map': 'character map'\nbold: bold\nattach: attach\n'any resource': 'any resource'\nadmin: admin\nadd: add\n'You cant deny yourself to manage $1': 'You cant deny yourself to manage $1'\n'You are not allowed to $1 $2.': 'You are not allowed to $1 $2.'\n'User type saved.': 'User type saved.'\n'User type deleted.': 'User type deleted.'\n'User type added.': 'User type added.'\n'User Groups': 'User Groups'\nThemes: Themes\n'That type name already exists, please choose a different name.': 'That type name already exists, please choose a different name.'\nSystem: System\nStructure: Structure\n'Search Indexer': 'Search Indexer'\n'Rich-Text Editor Preferences': 'Rich-Text Editor Preferences'\nReCaptcha: ReCaptcha\nPolls: Polls\n'Permissions:': 'Permissions:'\n'Permissions updated': 'Permissions updated'\nNotification: Notification\nLog: Log\nLayout: Layout\nGlobal: Global\nFiles: Files\n'Error: ': 'Error: '\n'Edit user type $1': 'Edit user type $1'\nDeny: Deny\n'Delete user type $1': 'Delete user type $1'\n'Can not delete a user type with assigned users.': 'Can not delete a user type with assigned users.'\nCache: Cache\nBackup: Backup\nAuthoring: Authoring\nAllow: Allow\n'User types': 'User types'\n'No user types.': 'No user types.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.en_GB.yml",
    "content": "get: get\nSoundcloud: SoundCloud\nTemplates: Templates\n'Feedback Messages': 'Feedback Messages'\n'Article Playlists': 'Article Playlists'\n'Check all': 'Check all'\nview: view\nundo/redo: undo/redo\nunderline: underline\ntranslate: translate\n'text direction': 'text direction'\n'text alignment': 'text alignment'\ntable: table\nsuperscript: superscript\nsubscript: subscript\nsubhead: subhead\nstrikethrough: strikethrough\nstatusbar: statusbar\n'spell checker enabled': 'spell checker enabled'\n'source view': 'source view'\npublish: publish\nnotify: notify\nmoderate: moderate\nmanage: manage\n'list number': 'list number'\n'list bullet': 'list bullet'\nlink: link\nitalic: italic\nindent: indent\nimage: image\n'horizontal rule': 'horizontal rule'\nhandle: handle\nguest: guest\n'font size': 'font size'\n'font face': 'font face'\n'font color': 'font colour'\nfind/replace: find/replace\nenlarge: enlarge\nenable: enable\nedit: edit\ndelete: delete\ncopy/cut/paste: copy/cut/paste\nclear: clear\n'character map': 'character map'\nbold: bold\nattach: attach\n'any resource': 'any resource'\nadmin: admin\nadd: add\n'You cant deny yourself to manage $1': 'You can not deny yourself permission to manage $1'\n'You are not allowed to $1 $2.': 'You are not allowed to $1 $2.'\n'User type saved.': 'User type saved.'\n'User type deleted.': 'User type deleted.'\n'User type added.': 'User type added.'\n'User Groups': 'User Groups'\nThemes: Themes\n'That type name already exists, please choose a different name.': 'That type name already exists, please choose a different name.'\nSystem: System\nStructure: Structure\n'Search Indexer': 'Search Indexer'\n'Rich-Text Editor Preferences': 'Rich-Text Editor Preferences'\nReCaptcha: ReCaptcha\nPolls: Polls\n'Permissions:': 'Permissions:'\n'Permissions updated': 'Permissions updated'\nNotification: Notification\nLog: Log\nLayout: Layout\nGlobal: Global\nFiles: Files\n'Error: ': 'Error: '\n'Edit user type $1': 'Edit user type $1'\nDeny: Deny\n'Delete user type $1': 'Delete user type $1'\n'Can not delete a user type with assigned users.': 'Can not delete a user type with assigned users.'\nCache: Cache\nBackup: Backup\nAuthoring: Authoring\nAllow: Allow\n'User types': 'User types'\n'No user types.': 'No user types.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.es.yml",
    "content": "get: Obtener\nSoundcloud: SoundCloud\nTemplates: Plantillas\n'Feedback Messages': 'Mensajes de retroalimentación'\n'Article Playlists': 'Lista de reproducción de artículos'\n'Check all': 'Seleccionar todos'\nview: ver\nundo/redo: deshacer/rehacer\nunderline: subrayar\ntranslate: traducir\n'text direction': 'dirección de texto'\n'text alignment': 'alineación de texto'\ntable: tabla\nsuperscript: superíndice\nsubscript: subíndice\nsubhead: subencabezado\nstrikethrough: tachar\nstatusbar: 'barra de estado'\n'spell checker enabled': 'revisión ortográfica habilitada'\n'source view': 'vista de fuentes'\npublish: publicar\nnotify: notificar\nmoderate: moderar\nmanage: administrar\n'list number': 'número de lista'\n'list bullet': 'lista de viñetas'\nlink: vínculo\nitalic: cursiva\nindent: sangría\nimage: imagen\n'horizontal rule': 'regla horizontal'\nhandle: mover\nguest: invitado\n'font size': 'tamaño de fuente'\n'font face': 'tipo de fuente'\n'font color': 'color de fuente'\nfind/replace: encontrar/reemplazar\nenlarge: agrandar\nenable: habilitar\nedit: editar\ndelete: eliminar\ncopy/cut/paste: copiar/cortar/pegar\nclear: limpiar\n'character map': 'mapa de caracteres'\nbold: negrilla\nattach: añadir\n'any resource': 'cualquier recurso'\nadmin: administrador\nadd: agregar\n'You cant deny yourself to manage $1': 'No puede negarse a administrar $1'\n'You are not allowed to $1 $2.': 'Usted no tiene permiso para $1 $2.'\n'User type saved.': 'Tipo de usuario guardado.'\n'User type deleted.': 'Tipo de usuario eliminado.'\n'User type added.': 'Tipo de usuario agregado.'\n'User Groups': 'Grupos de usuario'\nThemes: Temas\n'That type name already exists, please choose a different name.': 'Ese tipo ya existe. Por favor escoja otro.'\nSystem: Sistema\nStructure: Estructura\n'Search Indexer': 'Buscar índice'\n'Rich-Text Editor Preferences': 'Preferencias de editor de texto'\nReCaptcha: ReCaptcha\nPolls: 'Encuesta '\n'Permissions:': Permisos\n'Permissions updated': 'Permisos actualizados'\nNotification: Notificación\nLog: Bitácora\nLayout: Formato\nGlobal: Global\nFiles: Archivos\n'Error: ': 'Error:'\n'Edit user type $1': 'Editar tipo de usuario $1'\nDeny: Negar\n'Delete user type $1': 'Eliminar tipo de usuario $1'\n'Can not delete a user type with assigned users.': 'No puede eliminarse un tipo de usuairo con usuarios asignado'\nCache: Cache\nBackup: Copia\nAuthoring: Autoría\nAllow: Permitir\n'User types': 'Tipo de usuario'\n'No user types.': 'Sin tipo de usuario'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.es_AR.yml",
    "content": "get: null\nSoundcloud: null\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: null\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: null\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': null\n'No user types.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.fa.yml",
    "content": "get: null\nSoundcloud: null\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: null\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: null\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': null\n'No user types.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.fa_AF.yml",
    "content": "get: null\nSoundcloud: null\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: null\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: null\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': null\n'No user types.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.fr.yml",
    "content": "get: null\nSoundcloud: SoundCloud\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: image\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: Templates\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: null\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': 'Types d utilisateur'\n'No user types.': 'Pas de type dutilisateur'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.he.yml",
    "content": "get: null\nSoundcloud: SoundCloud\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: תבניות\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: null\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': null\n'No user types.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.hr.yml",
    "content": "get: null\nSoundcloud: SoundCloud\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: Predlošci\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: Datoteke\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': 'Vrste korisnika'\n'No user types.': 'Nema te vrste korisnika.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.hu.yml",
    "content": "get: kap\nSoundcloud: SoundCloud\nTemplates: Sablonok\n'Feedback Messages': 'Visszajelző üzenetek'\n'Article Playlists': 'Cikk lejátszási listák'\n'Check all': 'Az összes bejelölése'\nview: megtekintés\nundo/redo: visszavonás/ismét\nunderline: aláhúzás\ntranslate: fordítás\n'text direction': szövegirány\n'text alignment': 'szöveg igazítása'\ntable: táblázat\nsuperscript: 'felső index'\nsubscript: 'alsó index'\nsubhead: alcím\nstrikethrough: áthúzás\nstatusbar: állapotsor\n'spell checker enabled': 'helyesírás-ellenőrző engedélyezve'\n'source view': 'forrás megtekintése'\npublish: közzétesz\nnotify: értesít\nmoderate: moderál\nmanage: kezel\n'list number': listaszám\n'list bullet': 'lista felsorolásjel'\nlink: hivatkozás\nitalic: dőlt\nindent: behúzás\nimage: kép\n'horizontal rule': 'vízszintes vonal'\nhandle: kezel\nguest: vendég\n'font size': betűméret\n'font face': betűtípus\n'font color': betűszín\nfind/replace: keresés/csere\nenlarge: nagyít\nenable: engedélyez\nedit: szerkeszt\ndelete: töröl\ncopy/cut/paste: másolás/kivágás/beillesztés\nclear: tisztít\n'character map': karaktertábla\nbold: félkövér\nattach: csatol\n'any resource': 'bármely erőforrás'\nadmin: adminisztrátor\nadd: hozzáad\n'You cant deny yourself to manage $1': 'Nem tagadhatod meg magadtól a/z $1 kezelését'\n'You are not allowed to $1 $2.': 'A/z $1 $2 nem engedélyezett a számodra.'\n'User type saved.': 'A felhasználótípus mentése megtörtént.'\n'User type deleted.': 'A felhasználótípus törlése megtörtént.'\n'User type added.': 'A felhasználótípus hozzáadása megtörtént.'\n'User Groups': Felhasználócsoportok\nThemes: Témák\n'That type name already exists, please choose a different name.': 'Ez a típusnév már létezik, válassz másik nevet.'\nSystem: Rendszer\nStructure: Szerkezet\n'Search Indexer': 'Keresési indexelő szolgáltatás'\n'Rich-Text Editor Preferences': 'Rich Text szerkesztő beállításai'\nReCaptcha: reCAPTCHA\nPolls: Szavazások\n'Permissions:': 'Engedélyek:'\n'Permissions updated': 'Az engedélyek frissítése megtörtént'\nNotification: Értesítés\nLog: Napló\nLayout: Elrendezés\nGlobal: Globális\nFiles: Fájlok\n'Error: ': 'Hiba:'\n'Edit user type $1': 'A/z $1 felhasználótípus szerkesztése'\nDeny: Megtagadás\n'Delete user type $1': 'A/z $1 felhasználótípus törlése'\n'Can not delete a user type with assigned users.': 'Nem lehet törölni hozzárendelt felhasználókat tartalmazó felhasználótípust.'\nCache: Gyorsítótár\nBackup: 'Biztonsági mentés'\nAuthoring: Szerkesztés\nAllow: Engedélyezés\n'User types': Felhasználótípusok\n'No user types.': 'Nincsenek felhasználótípusok.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.hy.yml",
    "content": "get: null\nSoundcloud: null\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: null\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: null\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': null\n'No user types.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.hy_AM.yml",
    "content": "get: null\nSoundcloud: null\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: ընդգծել\ntranslate: թարգմանել\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: խմբագրել\ndelete: ջնջել\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: null\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: null\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': null\n'No user types.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.id.yml",
    "content": "get: null\nSoundcloud: null\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: null\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: null\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': null\n'No user types.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.it.yml",
    "content": "get: null\nSoundcloud: SoundCloud\nTemplates: Template\n'Feedback Messages': 'Messaggi di feedback'\n'Article Playlists': 'Vetrine di articoli'\n'Check all': 'Seleziona tutto'\nview: visualizza\nundo/redo: annulla/ripristina\nunderline: sottolinea\ntranslate: traduci\n'text direction': 'direzione testo'\n'text alignment': 'allineamento testo'\ntable: tabella\nsuperscript: apice\nsubscript: pedice\nsubhead: sottotitolo\nstrikethrough: barrato\nstatusbar: 'barra di stato'\n'spell checker enabled': 'controllo ortografia attivo'\n'source view': sorgente\npublish: pubblica\nnotify: notifica\nmoderate: modera\nmanage: gestisci\n'list number': 'elenco numerato'\n'list bullet': 'elenco puntato'\nlink: link\nitalic: italico\nindent: indenta\nimage: immagine\n'horizontal rule': 'linea orizzontale'\nhandle: gestisci\nguest: ospite\n'font size': 'dimensione font'\n'font face': 'tipo font'\n'font color': 'colore font'\nfind/replace: trova/sostituisci\nenlarge: ingrandisci\nenable: abilita\nedit: modifica\ndelete: elimina\ncopy/cut/paste: copia/taglia/incolla\nclear: pulisci\n'character map': 'mappa caratteri'\nbold: grassetto\nattach: allega\n'any resource': 'qualsiasi risorsa'\nadmin: amministra\nadd: aggiungi\n'You cant deny yourself to manage $1': 'Non puoi impedire a te stesso di gestire $1'\n'You are not allowed to $1 $2.': 'Non hai il permesso di $1 $2.'\n'User type saved.': 'Tipo utente salvato.'\n'User type deleted.': 'Tipo utente eliminato.'\n'User type added.': 'Tipo utente aggiunto.'\n'User Groups': 'Gruppo utenti'\nThemes: Temi\n'That type name already exists, please choose a different name.': 'Il nome del tipo utente esiste già. Per favore usane un altro.'\nSystem: Sistema\nStructure: Struttura\n'Search Indexer': 'Indice di ricerca'\n'Rich-Text Editor Preferences': 'Preferenze delleditor'\nReCaptcha: ReCAPTCHA\nPolls: Sondaggi\n'Permissions:': 'Permessi:'\n'Permissions updated': 'Permessi aggiornati'\nNotification: Notifiche\nLog: Log\nLayout: Layout\nGlobal: Globale\nFiles: File\n'Error: ': 'Errore:'\n'Edit user type $1': 'Modifica tipo utente $1'\nDeny: Nega\n'Delete user type $1': 'Elimina tipo utente $1'\n'Can not delete a user type with assigned users.': 'Impossibile eliminare un tipo utente se ha utenti assegnati.'\nCache: Cache\nBackup: Backup\nAuthoring: Creazione\nAllow: Permetti\n'User types': 'Tipi utente'\n'No user types.': 'Nessun tipo utente.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.ka.yml",
    "content": "get: მიღება\nSoundcloud: SoundCloud\nTemplates: შაბლონები\n'Feedback Messages': 'შეფასების შეტყობინებები'\n'Article Playlists': 'სტატიების სია'\n'Check all': 'ყველას მონიშვნა'\nview: ჩვენება\nundo/redo: უკუგდება/გამეორება\nunderline: ხაზგასმა\ntranslate: თარგმნა\n'text direction': 'ტექსტის მიმართულება'\n'text alignment': 'ტექსტის გამწკრივება'\ntable: ცხრილი\nsuperscript: 'ზედა ინდექსი '\nsubscript: 'ქვედა ინდექსი'\nsubhead: ქვეთავი\nstrikethrough: ხაზგადასმა\nstatusbar: სტატუს-პანელი\n'spell checker enabled': 'ორთოგრაფი ჩართულია'\n'source view': 'წყაროს ნახვა'\npublish: გამოქვეყნება\nnotify: შეტყობინება\nmoderate: მოდერაცია\nmanage: მართვა\n'list number': 'რიცხვებიანი სია'\n'list bullet': 'წერტილებიანი სია'\nlink: ბმული\nitalic: 'დახრილი (italic)'\nindent: აბზაცი\nimage: გამოსახულება\n'horizontal rule': 'ჰორიზონტალური სახაზავი'\nhandle: 'სახელური '\nguest: სტუმარი\n'font size': 'შრიფტის ზომა'\n'font face': შრიფტი\n'font color': 'შრიფტის ფერი'\nfind/replace: ნახვა/შეცვლა\nenlarge: გადიდება\nenable: ჩართვა\nedit: რედაქტირება\ndelete: წაშლა\ncopy/cut/paste: კოპირება/ამოჭრა/ჩასმა\nclear: გაწმენდა\n'character map': 'სიმბოლოთა ცხრილი'\nbold: 'მუქი (bold)'\nattach: მიბმა\n'any resource': 'ნებისმიერი რესურსი'\nadmin: ადმინი\nadd: დამატება\n'You cant deny yourself to manage $1': 'თქვენ არ შეგიძლია საკუთარი თავისთვის $1-ის მართვის გამორთვა'\n'You are not allowed to $1 $2.': 'თქვენ არ გაქვთ ამის უფლება: $1 $2'\n'User type saved.': 'მომხმარებლის ტიპი დამახსოვრდა'\n'User type deleted.': 'მომხმარებლის ტიპი წაიშალა.'\n'User type added.': 'მომხმარებლის ტიპი დაემატა'\n'User Groups': 'მომხმარებელთა ჯგუფი'\nThemes: თემები\n'That type name already exists, please choose a different name.': 'ასეთი ტიპის სახელი უკვე არსებობს, გთხოვთ აირჩიოთ სხვა.'\nSystem: სისტემა\nStructure: სტრუქტურა\n'Search Indexer': 'ტერმინოლოგიური საძიებელი'\n'Rich-Text Editor Preferences': 'ტექსტის დაფორმატების ველის პარამეტრები'\nReCaptcha: ReCaptcha\nPolls: გამოკითხვები\n'Permissions:': 'უფლებები:'\n'Permissions updated': 'უფლებები განახლდა'\nNotification: შეტყობინება\nLog: აღრიცხვა\nLayout: გეგმა\nGlobal: გლობალური\nFiles: ფაილები\n'Error: ': 'შეცდომა:'\n'Edit user type $1': '$1 მომხმარებლის ტიპის რედაქტირება'\nDeny: უარყოფა\n'Delete user type $1': '$1 მომხმარებლის ტიპის წაშლა'\n'Can not delete a user type with assigned users.': 'შეუძლებელია მომხმარებლის ტიპის წაშლა, რომელსაც მომხმარებლები აქვს მიბმული.'\nCache: ქეში\nBackup: 'სარეზერვო ასლი'\nAuthoring: 'საავტორო სისტება'\nAllow: 'ნების დართვა'\n'User types': 'მომხმარებლის ტიპი'\n'No user types.': 'მომხმარებლის ტიპები არ არსებობს.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.ko.yml",
    "content": "get: null\nSoundcloud: SoundCloud\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: '템플레이트 '\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: 파일\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': '사용자 타입'\n'No user types.': '사용자 타입 없슴'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.ku.yml",
    "content": "get: null\nSoundcloud: null\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: null\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: null\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': null\n'No user types.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.lv.yml",
    "content": "get: null\nSoundcloud: null\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: null\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: null\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': null\n'No user types.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.mr.yml",
    "content": "get: null\nSoundcloud: null\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: null\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: null\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': null\n'No user types.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.nb_NO.yml",
    "content": "get: null\nSoundcloud: null\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: null\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: null\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': null\n'No user types.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.nl.yml",
    "content": "get: null\nSoundcloud: SoundCloud\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: Sjablonen\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: Bestanden\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': 'Gebruiker types'\n'No user types.': 'Geen gebruiker types.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.pa.yml",
    "content": "get: null\nSoundcloud: null\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: null\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: null\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': null\n'No user types.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.pl.yml",
    "content": "get: pobierz\nSoundcloud: SoundCloud\nTemplates: Szablony\n'Feedback Messages': 'Wiadomość zwrotna'\n'Article Playlists': 'Listy artykułów'\n'Check all': 'Zaznacz wszystkie'\nview: zobacz\nundo/redo: cofnij/dalej\nunderline: podkreślenie\ntranslate: tłumaczenia\n'text direction': 'kierunek tekstu'\n'text alignment': 'pozycjonowanie tekstu'\ntable: tabela\nsuperscript: superscript\nsubscript: subscript\nsubhead: podrubryka\nstrikethrough: przekreślenie\nstatusbar: 'pasek statusu'\n'spell checker enabled': 'sprawdzanie pisowni'\n'source view': 'widok źródla'\npublish: publikacja\nnotify: powiadomienia\nmoderate: moderacja\nmanage: zarządzanie\n'list number': 'lista numerowana'\n'list bullet': 'lista nieuporządkowana'\nlink: link\nitalic: pochylenie\nindent: wcięcie\nimage: zdjęcie\n'horizontal rule': 'lista pozioma'\nhandle: uchwyt\nguest: gość\n'font size': 'rozmiar czcionki'\n'font face': 'rodzaj czcionki'\n'font color': 'kolor czcionki'\nfind/replace: znajdź/zamień\nenlarge: powiększ\nenable: odblokuj\nedit: edytuj\ndelete: usuń\ncopy/cut/paste: kopiuj/wytnij/wklej\nclear: wyczyść\n'character map': 'lista znaków'\nbold: pogrubienie\nattach: dołacz\n'any resource': 'każdy zasób'\nadmin: administrator\nadd: dodaj\n'You cant deny yourself to manage $1': 'Nie możesz zabronić sobie zarządzania $1'\n'You are not allowed to $1 $2.': 'Nie masz uprawnień do $1 $2.'\n'User type saved.': 'Rodzaj użytkownika zapisany.'\n'User type deleted.': 'Rodzaj użytkownika usunięty.'\n'User type added.': 'Rodzaj użytkownika dodany.'\n'User Groups': 'Grupy użytkowników'\nThemes: Szablony\n'That type name already exists, please choose a different name.': 'Ta nazwa typu już istnieje, wybierz inną nazwę.'\nSystem: System\nStructure: Struktura\n'Search Indexer': 'Indeksowanie wyszukiwania'\n'Rich-Text Editor Preferences': 'Ustawienia edytora tekstu'\nReCaptcha: ReCaptacha\nPolls: Ankiety\n'Permissions:': Uprawnienia\n'Permissions updated': 'Uprawnienia zaktualizowane'\nNotification: Powiadomienia\nLog: Logi\nLayout: Układ\nGlobal: Globalnie\nFiles: Pliki\n'Error: ': Błąd\n'Edit user type $1': 'Edytuj typ użytkownika $1'\nDeny: Zabroń\n'Delete user type $1': 'Usuń typ użytkownika $1'\n'Can not delete a user type with assigned users.': 'Nie można usunąć typu użytkownika z przydzielonymi użytkownikami.'\nCache: 'Pamięć podręczna'\nBackup: 'Kopia zapasowa'\nAuthoring: Tworzenie\nAllow: Zezwól\n'User types': 'Typy użytkowników'\n'No user types.': 'Brak typów użytkowników'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.ps.yml",
    "content": "get: null\nSoundcloud: null\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: null\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: null\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': null\n'No user types.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.pt.yml",
    "content": "get: null\nSoundcloud: SoundCloud\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: Modelos\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: Ficheiros\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': 'Tipos de Utilizador'\n'No user types.': 'Não existem'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.pt_BR.yml",
    "content": "get: null\nSoundcloud: SoundCloud\nTemplates: Templates\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: imagem\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: Temas\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: Arquivos\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': 'Tipos de Utilizador'\n'No user types.': 'Não existem'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.ro.yml",
    "content": "get: null\nSoundcloud: SoundCloud\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: Şabloane\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: Fișiere\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': 'Tipuri de utilizatori'\n'No user types.': 'Nu există tipuri de utilizatori'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.ru.yml",
    "content": "get: get\nSoundcloud: SoundCloud\nTemplates: Шаблоны\n'Feedback Messages': 'Ответ на сообщения '\n'Article Playlists': 'Плейлисты статьи'\n'Check all': 'Проверить все'\nview: просмотр\nundo/redo: отменить/повторить\nunderline: подчеркнуть\ntranslate: перевести\n'text direction': 'направление текста'\n'text alignment': 'выравнивание текста'\ntable: таблица\nsuperscript: 'верхний индекс'\nsubscript: 'нижний индекс'\nsubhead: подзаголовок\nstrikethrough: перечеркивание\nstatusbar: 'строка состояния '\n'spell checker enabled': 'проверка орфографии включена'\n'source view': 'просмотр источника '\npublish: публиковать\nnotify: извещать\nmoderate: модерировать\nmanage: управлять\n'list number': 'нумерованный список'\n'list bullet': 'маркированный список'\nlink: ссылка\nitalic: курсив\nindent: абзац\nimage: изображение\n'horizontal rule': 'горизонтальная линейка'\nhandle: 'дескриптор '\nguest: гость\n'font size': 'размер шрифта'\n'font face': 'font face'\n'font color': 'цвет шрифта'\nfind/replace: найти/заменить\nenlarge: увеличить\nenable: включить\nedit: редактировать\ndelete: удалить\ncopy/cut/paste: копировать/вырезать/вставить\nclear: очистить\n'character map': 'карта знаков'\nbold: жирный\nattach: приложить\n'any resource': 'любой источник'\nadmin: администратор\nadd: добавить\n'You cant deny yourself to manage $1': 'Вы не можете отказаться управлять $1'\n'You are not allowed to $1 $2.': 'Вам не разрешено $1 $2.'\n'User type saved.': 'Тип пользователя сохранен.'\n'User type deleted.': 'Тип пользователя удален.'\n'User type added.': 'Тип пользователя добавлен.'\n'User Groups': 'Группы пользователей'\nThemes: 'Темы (Шаблоны)'\n'That type name already exists, please choose a different name.': 'Это название типа уже существует, пожалуйста, выберите другое название.'\nSystem: Система\nStructure: Структура\n'Search Indexer': 'Индексатор поиска'\n'Rich-Text Editor Preferences': 'Права редактора RTF'\nReCaptcha: ReCaptcha\nPolls: Опросы\n'Permissions:': 'Права доступа:'\n'Permissions updated': 'Права обновлены'\nNotification: Уведомление\nLog: Лог\nLayout: Разметка\nGlobal: Всеобщий\nFiles: Файлы\n'Error: ': 'Ошибка:'\n'Edit user type $1': 'Редактировать тип пользователя $1'\nDeny: Отказать\n'Delete user type $1': 'Удалить тип пользователя  $1'\n'Can not delete a user type with assigned users.': 'Невозможно удалить тип пользователя, если он установлен для пользователей.'\nCache: Кэш\nBackup: 'Резервная копия'\nAuthoring: Авторинг\nAllow: Разрешить\n'User types': 'Типы пользователей'\n'No user types.': 'Нет типов пользователей.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.sh.yml",
    "content": "get: null\nSoundcloud: SoundCloud\nTemplates: Šabloni\n'Feedback Messages': 'Poruke sa povratnom informacijom'\n'Article Playlists': 'Plejliste tekstova'\n'Check all': 'Označi sve'\nview: pogledaj\nundo/redo: undo/redo\nunderline: podvučeno\ntranslate: prevedi\n'text direction': 'pravac teksta'\n'text alignment': 'poravnavanje teksta'\ntable: tabela\nsuperscript: 'tekst u eksponentu'\nsubscript: 'tekst u indeksu'\nsubhead: podnaslov\nstrikethrough: precrtano\nstatusbar: 'statusna linija'\n'spell checker enabled': 'provera pravopisa omogućena'\n'source view': 'pregled izvora'\npublish: objavi\nnotify: obavesti\nmoderate: uređuj\nmanage: upravljaj\n'list number': 'brojevna lista'\n'list bullet': 'lista stavki'\nlink: link\nitalic: italik\nindent: uvlačenje\nimage: slika\n'horizontal rule': 'vodoravni lenjir'\nhandle: rukovanje\nguest: gost\n'font size': 'veličina pisma'\n'font face': 'vrsta pisma'\n'font color': 'boja pisma'\nfind/replace: pronađi/zameni\nenlarge: uvećaj\nenable: omogući\nedit: uredi\ndelete: obriši\ncopy/cut/paste: kopiraj/iseci/zalepi\nclear: očisti\n'character map': 'mapa karaktera'\nbold: crno\nattach: prikači\n'any resource': 'bilo koji resurs'\nadmin: admin\nadd: dodaj\n'You cant deny yourself to manage $1': 'Ne možete osporiti sebi upravljanje $1'\n'You are not allowed to $1 $2.': 'Nemate pravo da $1 $2.'\n'User type saved.': 'Tip korisnika snimljen.'\n'User type deleted.': 'Tip korisnika obrisan.'\n'User type added.': 'Tip korisnika dodat.'\n'User Groups': 'Grupe korisnika'\nThemes: Teme\n'That type name already exists, please choose a different name.': 'Takvo ime tipa već postoji, izaberite neko drugo'\nSystem: sistem\nStructure: Struktura\n'Search Indexer': 'Indekser pretrage'\n'Rich-Text Editor Preferences': 'Podešavanja editora teksta'\nReCaptcha: ReCaptcha\nPolls: Ankete\n'Permissions:': 'Prava:'\n'Permissions updated': 'Prava izmenjena'\nNotification: Obaveštenja\nLog: Log\nLayout: Izgled\nGlobal: Globalno\nFiles: Fajlova\n'Error: ': 'Greška:'\n'Edit user type $1': 'Uredi tip korisnika $1'\nDeny: Ospori\n'Delete user type $1': 'Obriši tip korisnika $1'\n'Can not delete a user type with assigned users.': 'Nije moguće obrisati tip korisnika sa dodeljenim korisnicima.'\nCache: Keš\nBackup: Bekap\nAuthoring: Autorizovanje\nAllow: Dozvoli\n'User types': 'Tipovi korisnika'\n'No user types.': 'Nema tipova korisnika'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.sq.yml",
    "content": "get: null\nSoundcloud: SoundCloud\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: null\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: null\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': null\n'No user types.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.sr.yml",
    "content": "get: null\nSoundcloud: SoundCloud\nTemplates: Шаблони\n'Feedback Messages': 'Поруке са повратном информацијом'\n'Article Playlists': 'Плејлисте текстова'\n'Check all': 'Означи све'\nview: погледај\nundo/redo: undo/redo\nunderline: подвучено\ntranslate: преведи\n'text direction': 'орјентација текста'\n'text alignment': 'поравнавање текста'\ntable: табела\nsuperscript: 'текст у експоненту'\nsubscript: 'текст у индексу'\nsubhead: поднаслов\nstrikethrough: прецртано\nstatusbar: 'статусна линија'\n'spell checker enabled': 'провера правописа омогућена'\n'source view': 'преглед извора'\npublish: објави\nnotify: обавести\nmoderate: уређуј\nmanage: управљај\n'list number': 'бројевна листа'\n'list bullet': 'листа ставки'\nlink: линк\nitalic: италик\nindent: увлачење\nimage: слика\n'horizontal rule': 'водоравни лењир'\nhandle: руковање\nguest: гост\n'font size': 'величина писма'\n'font face': 'врста писма'\n'font color': 'боја писма'\nfind/replace: пронађи/замени\nenlarge: увећај\nenable: омогући\nedit: уреди\ndelete: обриши\ncopy/cut/paste: копирај/исеци/залепи\nclear: очисти\n'character map': 'мапа карактера'\nbold: црно\nattach: прикачи\n'any resource': 'било који ресурс'\nadmin: админ\nadd: додај\n'You cant deny yourself to manage $1': 'Не можете оспорити себи управљање $1'\n'You are not allowed to $1 $2.': 'Немате право да $1 $2.'\n'User type saved.': 'Тип корисника сачуван.'\n'User type deleted.': 'Тип корисника обрисан'\n'User type added.': 'Тип корисника додат.'\n'User Groups': 'Групе корисника'\nThemes: Теме\n'That type name already exists, please choose a different name.': 'Такво име типа већ постоји, изаберите неко друго'\nSystem: систем\nStructure: Структура\n'Search Indexer': 'Индексер претраге'\n'Rich-Text Editor Preferences': 'Подешавање едитора текста'\nReCaptcha: РиКепчаReCaptcha\nPolls: Анкете\n'Permissions:': 'Права:'\n'Permissions updated': 'Права измењена'\nNotification: Обавештења\nLog: Лог\nLayout: Изглед\nGlobal: Глобално\nFiles: Фајлова\n'Error: ': 'Грешка:'\n'Edit user type $1': 'Уреди тип корисника $1'\nDeny: Оспори\n'Delete user type $1': 'Обриши тип корисника $1'\n'Can not delete a user type with assigned users.': 'Није могуће обрисати тип корисника са додељеним корисницима.'\nCache: Кеш\nBackup: Бекап\nAuthoring: Ауторизовање\nAllow: Дозволи\n'User types': 'Типови корисника'\n'No user types.': 'Нема типова корисника'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.sv.yml",
    "content": "get: null\nSoundcloud: SoundCloud\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: Mallar\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: Filer\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': Användartyper\n'No user types.': 'Inga användartyper.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.tr.yml",
    "content": "get: null\nSoundcloud: SoundCloud\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: null\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: null\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': null\n'No user types.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.uk.yml",
    "content": "get: null\nSoundcloud: Soundcloud\nTemplates: Шаблони\n'Feedback Messages': 'Повідомлення зворотнього зв’язку'\n'Article Playlists': 'Плейлисти новин'\n'Check all': 'Перевірити все'\nview: перегляд\nundo/redo: 'відміна / повтор'\nunderline: підкреслювання\ntranslate: переклад\n'text direction': 'напрямок тексту'\n'text alignment': 'вирівнювання тексту'\ntable: таблиця\nsuperscript: 'надстроковий текст'\nsubscript: 'підстроковий текст'\nsubhead: підзаголовок\nstrikethrough: закреслений\nstatusbar: 'панель статусів'\n'spell checker enabled': 'програма перевірки орфографії активний'\n'source view': 'перегляд первісного виду'\npublish: публікувати\nnotify: оповіщення\nmoderate: модерування\nmanage: керування\n'list number': 'нумерований список'\n'list bullet': список\nlink: посилання\nitalic: нахилений\nindent: відступ\nimage: зображення\n'horizontal rule': 'горизонтальна лінія'\nhandle: оброблення\nguest: гість\n'font size': 'розмір шрифта'\n'font face': шрифт\n'font color': 'колір шрифта'\nfind/replace: 'знайти / замінити'\nenlarge: збільшити\nenable: увімкнено\nedit: редагувати\ndelete: видалити\ncopy/cut/paste: 'скопіювати / вирізати / вставити'\nclear: очистити\n'character map': 'мапа символів'\nbold: жирний\nattach: прікріпити\n'any resource': 'будь-який ресурс'\nadmin: адмін\nadd: додати\n'You cant deny yourself to manage $1': 'Ви не можете заборонити собі керування  $1'\n'You are not allowed to $1 $2.': 'Вам не дозволено $1 $2.'\n'User type saved.': 'Тип користувача збережено.'\n'User type deleted.': 'Тип користувача видалено.'\n'User type added.': 'Тип користувача додано.'\n'User Groups': 'Групи користувачів'\nThemes: Теми\n'That type name already exists, please choose a different name.': 'Така назва типу вже існує, виберіть іншу будь ласка.'\nSystem: Система\nStructure: Структура\n'Search Indexer': 'Пошуковий індексатор'\n'Rich-Text Editor Preferences': 'налаштування RTF-редактора'\nReCaptcha: ReCaptcha\nPolls: Опитування\n'Permissions:': 'Права:'\n'Permissions updated': 'Права оновлені'\nNotification: Сповіщення\nLog: ЛОГи\nLayout: Компонування\nGlobal: Глобальне\nFiles: Файли\n'Error: ': 'Помилки:'\n'Edit user type $1': 'Редагувати тип користувача $1'\nDeny: Відмова\n'Delete user type $1': 'Видалити тип користувача $1'\n'Can not delete a user type with assigned users.': 'Неможливо видалити тип користувача якщо він призначений будь-яким користувачам.'\nCache: Кеш\nBackup: Резерв\nAuthoring: Авторинг\nAllow: Дозвіл\n'User types': 'Тип користувачів'\n'No user types.': 'Немає типів користувачів.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.vi.yml",
    "content": "get: null\nSoundcloud: null\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: null\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: null\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': null\n'No user types.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.zh.yml",
    "content": "get: null\nSoundcloud: SoundCloud\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: 模版\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: 文件\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': 用户类型\n'No user types.': 无用户类型\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/user_types.zh_TW.yml",
    "content": "get: null\nSoundcloud: SoundCloud\nTemplates: null\n'Feedback Messages': null\n'Article Playlists': null\n'Check all': null\nview: null\nundo/redo: null\nunderline: null\ntranslate: null\n'text direction': null\n'text alignment': null\ntable: null\nsuperscript: null\nsubscript: null\nsubhead: null\nstrikethrough: null\nstatusbar: null\n'spell checker enabled': null\n'source view': null\npublish: null\nnotify: null\nmoderate: null\nmanage: null\n'list number': null\n'list bullet': null\nlink: null\nitalic: null\nindent: null\nimage: null\n'horizontal rule': null\nhandle: null\nguest: null\n'font size': null\n'font face': null\n'font color': null\nfind/replace: null\nenlarge: null\nenable: null\nedit: null\ndelete: null\ncopy/cut/paste: null\nclear: null\n'character map': null\nbold: null\nattach: null\n'any resource': null\nadmin: null\nadd: null\n'You cant deny yourself to manage $1': null\n'You are not allowed to $1 $2.': null\n'User type saved.': null\n'User type deleted.': null\n'User type added.': null\n'User Groups': null\nThemes: 模版\n'That type name already exists, please choose a different name.': null\nSystem: null\nStructure: null\n'Search Indexer': null\n'Rich-Text Editor Preferences': null\nReCaptcha: null\nPolls: null\n'Permissions:': null\n'Permissions updated': null\nNotification: null\nLog: null\nLayout: null\nGlobal: null\nFiles: null\n'Error: ': null\n'Edit user type $1': null\nDeny: null\n'Delete user type $1': null\n'Can not delete a user type with assigned users.': null\nCache: null\nBackup: null\nAuthoring: null\nAllow: null\n'User types': null\n'No user types.': null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.ar.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: 'موقع إلكتروني'\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': 'جعل إسم العائلة متاح للجميع .'\nGoogle+: null\nGeolocation: 'الموقع الجغرافي'\nGender: null\n'First Name Public': null\nFacebook: 'فيس بوك.'\n'Date of birth': 'تاريخ الميلاد .'\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': 'قيد العرض _START_ لـ_END_ من _TOTAL_ إدخالات'\n'Send email to user:': null\n'No users found.': null\n'No records found.': 'لم يتم العثور على سجلات.'\n'No entries to show': 'لا إدخالات من أجل الإظهار'\n'Display _MENU_ records': 'إعرض سجلات من _MENU_'\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': '- قيد التصفية من السجلات _MAX_'\n'User renamed.': 'تمت إعادة تسمية المستخدم.'\n'User attributes': 'سمات المستخدم'\n'Rename user $1': '$1اعد تسمية المستخدم'\n'Username is used already': 'اسم المستخدم قيد الاستخدام'\n'User with id $1 not found': 'لم يتم العثور على المستخدم بالهوية $1'\n'User was deleted.': 'تم حذف المستخدم'\n'User saved': 'تم حفظ المستخدم'\n'User id not specified': 'هوية المستخدم غير محددة'\n'User $1 created': 'تم  انشاء المستخدم $1'\n'Send confirm email': 'ارسل البريد الاكتروني الخاص بالتاكيد'\n'Profile saved.': 'تم حفظ الشاكلة'\nPicture: صورة\n'Password updated': 'تم تحديث كلمة السر'\nNone: 'لا شيء'\n'New confirmation email was sent to user.': 'تم ارسال بريد التاكيد للمستخدم'\n'Email is used already': 'البريد الاكتروني قيد الاستخدام '\n'Edit your password': 'عدل كلمة السر'\n'Edit user $1': 'تعديل المستخدم $1'\n'Edit subscriptions': 'تحرير الاشتراكات'\n'Edit profile': 'تعديل الشاكلة'\n'Edit permissions': 'عدل الأذونات'\n'Create new account': 'أنش حساب جديد'\n'Comment ban settings': 'اعدادات تحريم التعليقات'\n'Ban for user $1 saved.': 'تم تسجيل منع المستخدم $1'\n'User account is active': 'حساب المستخدم مفعل'\n'Allow users profile to be publicly displayed': 'السماح لشاكلة المستخدم أن يعرض علنا'\n'Allow user access to login to site backend': 'اسمح للمستخدم ولوج منطقة المشرف '\nTemplates: نماذج\nUsername: 'اسم المستخدم'\n'Last Name': 'اسم العائلة'\n'First Name': 'الاسم الاول'\nEmail: 'بريد إلكتروني'\n'You were logged out.': 'تم تسجيل خروجك'\n'Newscoop Subhead': 'عنوان فرعي لـ نيوسكوب.'\nFilters: 'عوامل التصفية'\n'Add new Author': 'اضف مؤلف جديد'\n'Loading Data': 'بتم تحميل البيانات'\n'Delete author type': ' احذف نوع المؤلف '\n'Cannot remove author type.': ' لا تمكن إزالة نوع المؤلف '\n'Cannot remove author alias.': 'لا تمكن إزالة اسم المؤلف المتسعار'\n'Author alias removed.': 'تمت ازالة اسم المؤلف  المستعار'\n'Are you sure you want to delete this author?': 'هل أنت متأكد من أنك تريد حذف هذا المؤلف؟'\n'Are you sure you want to delete this author alias?': 'هل أنت متأكد من أنك تريد حذف هذا الاسم المستعار للمؤلف؟'\n'All Author Types': 'جميع أنواع المؤلفين '\n'Add author type': 'إضافة نوع مؤلف'\n'You do not have the permission to change authors.': 'ليس لديك الأذن لتغيير المؤلفين.'\n'Please fill at least first name and last name.': 'يرجى ملء الاسم الأول واسم العائلة على الأقل.'\n'Cannot add author type, this type already exists.': 'غير قادر على إضافة نوع المؤلف، هذا النوع موجود مسبقا'\n'Author type removed.': 'تمت ازالة نوع المؤلف'\n'Author type must be at least three characters long.': 'يجب ألا يقل نوع المؤلف عن ثلاثة أحرف'\n'Author type added.': 'تمت اضافة نوع المؤلف'\n'Are you sure you want to delete this author type?': 'هل أنت متأكد من أنك تريد حذف هذا النوع من المؤلف؟'\n'User may change authors': 'يمكن للمستخدم تغيير المؤلف'\n'Unable to add new image, target directory is not writable.': 'غير قادر على إضافة صورة جديدة، الدليل المستهدف غير قابل للكتابة'\n'Author saved.': 'تم حفظ المؤلف'\n'Author deleted.': 'تم حذف المؤلف'\n'Enable Firefox spell checking by default': 'تمكين التدقيق الإملائي لفايرفوكس بشكل افتراضي'\n'User may use the editor status bar': 'يمكن للمستخدم استخدام شريط المحرر'\n'User may clear up the system cache': 'يمكن للمستخدم مسح ذاكرة النظام الخبيئة'\n'Another user is registered with that e-mail address, please choose a different one.': 'يوجد مستخدم آخر مسجل تحت عنوان البريد الالكتروني فيرجى اختيار عنوان آخر. '\n'There was an error when trying to update the user info.': 'حدث خطأ عند محاولة تحديث معلومات المستخدم'\n'User may moderate comments': 'يستطيع المستخدم تعديل التعليقات'\n'User may enable comments': 'يستطيع المستخدم تمكين التعليقات'\n'User may translate articles': 'يحق للمستخدم ترجمة المقالات'\n'User may move articles': 'يحق للمستخدم نقل المقالات'\n'User may find and replace': 'يحق للمستخدم البحث الاستبدال'\n'User may change system preferences': 'يحق للمستخدم تغيير إعدادات النظام'\n'User may attach topics to articles': 'يحق للمستخدم إضافة المواضيع للمقالات'\n'User may attach images to articles': 'يحق للمستخدم إضافة الصور للمقالات'\n'User may add special characters': 'يحق للمستخدم إضافة حروف خاصة'\n'That user name already exists, please choose a different login name.': 'اسم المستخدم ذلك قيد الاستخدام مسبقاً، يرجى الاختيار اسم تسجيل دخول مختلف.'\n'User may delete article attachments': 'يحق للمستخدم حذف مرفقات المقالة.'\n'User may change article attachments': 'يحق للمستخدم تعديل مرفقات المقالة.'\n'User may add article attachments': 'يحق للمستخدم إضافة مرفقات المقالة.'\n'You do not have the right to create user accounts.': 'ليس لديك الحق في إنشاء حسابات مستخدم.'\n'You must select a $1': '$1 عليك الاختيار '\n'The password must be at least 6 characters long and both passwords should match.': 'يجب أن تتألف كلمة السر من 6 أحرف على الأقل. كما يجب أن تكون كلمتا السر متشابهتين'\n'The user account could not be created.': 'لم ينشئ حساب المستخدم'\n'User account $1 was created successfully.': 'تم إنشاء حساب المستخدم $1 بنجاح.'\n'You do not have the right to change user account permissions.': 'ليس لديك الحق في تغيير أذنات حساب المستخدم'\n'You do not have the right to change user account information.': 'ليس لديك الحق في تغيير معلومات حساب المستخدم'\n'The password you typed is incorrect.': 'كلمة السر التي طبعتها غير صحيحة'\n'You do not have the right to delete user accounts.': 'ليس لديك الحق في حذف حسابات مستخدمين'\n'User account $1 was deleted successfully.': 'تم حذف حساب المستخدم $1 بنجاح.'\n'The IP Group $1 has been created.': 'أنشأت مجموعة بروتوكول الانترنت  $1.'\n'There was an error creating the IP address group.': 'حدث خطأ أثناء إنشاء مجموعة عنوان بروتوكول الانترنت.'\n'The IP address group $1 has been deleted.': 'تم حذف مجموعة عنوان بروتوكول الانترنت $1.'\n'User $1 information was changed successfully.': 'تم تعديل معلومات المستخدم $1 بنجاح'\n'User Type': 'نوع مستخدم'\n'The IP address group $1:$2 conflicts with another existing group.': 'مجموعة عنوان بروتوكوب الانترنت $1:$2 تتعارض مع مجموعة موجودة حاليا.'\n'User may add/change publications': 'يحق للمستخدم إضافة وتعديل منشورات'\n'Invalid value of user type parameter': 'قيمة غير صالحة في متغير من نوع مستخدم'\n'User may delete publications': 'يحق للمستخدم حذف منشورات'\n'User may add/change issues': 'يحق للمستخدم إضافة وتعديل اصدارات'\n'User may delete issues': 'يحق للمستخدم حذف إصدارات'\n'User may add/change sections': 'يحق للمستخدم إضافة وتعديل أقسام'\n'User may delete sections': 'يحق للمستخدم حذف أقسام'\n'User may add articles': 'يحق للمستخدم إضافة مقالات'\n'User may change articles': 'يحق للمستخدم تعديل المقالات'\n'User may delete articles': 'يحق للمستخدم حذف مقالات'\n'User may add images': 'يحق للمستخدم إضافة صور'\n'User may change images': 'يحق للمستخدم تعديل صور'\n'User may delete images': 'يحق للمستخدم حذف صور'\n'User may delete templates': 'يحق للمستخدم حذف قوالب'\n'User may add/change staff accounts and passwords': 'يحق للمستخدم إضافة/تعديل حسابات طاقم العمل وكلمات السر له'\n'User may add/change subscribers accounts and passwords': 'يحق للمستخدم إضافة وتعديل حسابات المشتركين وكلمات السر لهم'\n'User may delete staff accounts': 'يحق للمستخدم حذف حسابات طاقم العمل'\n'User may manage user subscriptions': 'يحق للمستخدم إدارة إشتراكات المستخدمين'\n'User may manage account types': 'يحق للمستخدم إدارة أنواع الحسابات'\n'User may add/change article types': 'يحق للمستخدم إضافة وتعديل أنواع المقالات'\n'User may delete article types': 'يحق للمستخدم حذف أنواع المقالة'\n'User may manage templates': 'يحق للمستخدم إدارة قوالب'\n'User may add/change country entries': 'يحق للمستخدم إضافة وتعديل إدخالات دول'\n'User may add languages and manage language information': 'يحق للمستخدم إضافة اللغات وإدارة معلومات لغوية'\n'User may delete languages': 'يحق للمستخدم حذف لغات'\n'User may view audit logs': 'يحق للمستخدم أن يرى سجلات الأداء'\n'User may delete country entries': 'يحق للمستخدم حذف إدخالات دول'\n'User may manage localizer': 'يحق للمستخدم إدارة محدد الموقع'\n'User may publish articles': 'يحق للمستخدم نشر مقالات'\n'User may manage topics': 'يحق للمستخدم إدارة مواضيع'\n'User may use bold': 'يحق للمستخدم إستخدام الخط الثخين الأسود'\n'User may use italic': 'يحق للمستخدم إستخدام الخط المائل'\n'User may use underline': 'يحق للمستخدم إستخدام الخط المسطر'\n'User may use strikethrough': 'يحق للمستخدم إستخدام التسطير الوسطي'\n'User may change text alignment': 'يحق للمستخدم تغيير محاذاة النص'\n'User may copy, cut, and paste': 'يحق للمستخدم إستخدام الحافظة'\n'User may undo/redo': 'يحق للمستخدم إستخدام الغاء وإعادة الإجراء'\n'User may change text direction': 'يحق للمستخدم تغيير إتجاة الخط'\n'User may set indents': 'يحق للمستخدم تحديد المسافة البادئة'\n'User may add links': 'يحق للمستخدم إضافة روابط'\n'User may add subheads': 'يحق للمستخدم إضافة عناوين فرعية'\n'User may insert images': 'يحق للمستخدم إدخال صور'\n'User may view the HTML source': 'يحق للمستخدم رؤية نص الـHTML'\n'User may enlarge the editor': 'يحق للمستخدم تكبير المحرر'\n'User may change the font face': 'يحق للمستخدم تغيير نمط الحرف'\n'User may change the font size': 'يحق للمستخدم تغيير حجم الحرف'\n'User may create bulleted lists': 'يحق للمستخدم تكوين قوائم منقطة'\n'User may create numbered lists': 'يحق للمستخدم تكوين قوائم مرقمة'\n'User may insert tables': 'يحق للمستخدم إضافة جداول'\n'User may insert horizontal rules': 'يحق للمستخدم إستخدام الخطوط الافقية'\n'User may change the font color': 'يحق للمستخدم تغيير لون الخط'\n'User may use superscripts': 'يحق للمستخدم إستخدام النص العلوي'\n'User may use subscripts': 'يحق للمستخدم إستخدام النص السفلي'\n'User may backup and restore the site data': 'يستطيع المستخدم أن ينسخ بياتات الموقع احتياطيا وأن يستعيدها'\nMiscellaneous: متفرقات\n'Staff/Subscribers Management': 'إدارة طاقم العمل/المشتركين'\n'Editor Basic Settings': 'إعدادات المحرر الاساسية'\n'Editor Advanced Font Settings': 'إعدادات خط المحرر المتقدمة'\n'Editor Table Settings': 'إعدادات جدول المحرر'\n'Administrative tasks': 'مهام إدارية'\n'User will be notified on several events': 'سيتم تنبية المستخدم على العديد من الأحداث'\n'Editor Miscellaneous Settings': 'إعدادات المحرر الاخرى'\n'No such user account.': 'لا يوجد مثل حساب مستخدم'\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: 'البحث الخاص بالمستخدمين'\n    menu:\n        manage: 'إدارة المستخدمين'\n    created: 'تم الانشاء'\n    updated: null\n    status:\n        status: الحالة\n        registered: null\n        pending: null\n        deleted: 'تم الحذف'\n        active: 'قيد الاستخدام'\n    table:\n        actions:\n            actions: الاجراءات\n            edit: تعديل\n            resend_email: null\n            rename: null\n            remove: إزالة\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: 'في عملية المعالجة...'\n    chart:\n        title: 'عمليات تسجيل الدخول النشطة'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.az.yml",
    "content": "'Password confirmation does not match your password.': 'Təsdiqləmək istədiyiniz şifrə ilə təqdim etdiyiniz uyğun deyil.'\n'Password Confirmation': 'Şifrənin Təsdiqi'\nWebsite: Vebsayt\nTwitter: Twitter\n'Save profile': 'Profili saxla'\n'Profile image': 'Profil şəkli'\nOrganisation: Təşkilat\n'Last Name Public': 'İctimai Soyad'\nGoogle+: Google+\nGeolocation: Xəritə\nGender: Gender\n'First Name Public': 'İctimai Ad'\nFacebook: Facebook\n'Date of birth': 'Doğum tarixi'\n'Allow sending emails': 'Email göndərməni aktiv et'\n'About me': Haqqında\n'User with email %s is registered already.': '%s emailli istifadəçi artıq qeydiyyatdan keçib.'\n'Username is used. Please use another one.': 'Bu istifadəçi adı istifadədədir. Lütfən, başqasını seç.'\nContinue: 'Davam et'\n'Accepting terms of use': 'Qaydaların qəbulu'\n'send confirmation email': 'təsdiq emaili göndər'\n'edit user': 'istifadəçini dəyiş'\n'delete user': 'istifadəçini sil'\n'Verified profile': 'Yoxlanmış profil'\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Ümumilikdə _TOTAL_ girişin _START_-dan/dən _END_-a/ə qaydasında nümayişi'\n'Send email to user:': 'Bu istifadəçiyə email göndər:'\n'No users found.': 'İstifadəçi tapılmadı.'\n'No records found.': 'Yazı tapılmadı.'\n'No entries to show': 'Nümayiş üçün giriş yoxdur'\n'Display _MENU_ records': '_MENU_ yazılarını göstər'\n'Are you sure you want to {action}?': '{action} istədiyinə əminsən?'\n'Active Logins': 'Aktiv Girişlər'\n' - filtering from _MAX_ records': '- _MAX_ yazılarından filtrləmə'\n'User renamed.': 'İstifadəçi adını dəyişib.'\n'User attributes': 'İstifadəçi atributları'\n'Rename user $1': '$1 adlı istifadəçinin adını dəyiş'\n'Username is used already': 'Bu istifadəçi adı artıq istifadədədir'\n'User with id $1 not found': '$1 id-li istifadəçi tapılmadı'\n'User was deleted.': 'İstifadəçi silinmişdir.'\n'User saved': 'İstifadəçi saxlandı'\n'User id not specified': 'İstifadəçi id-si qeyd edilməyib'\n'User $1 created': '$1 adlı istifadəçi yaradılıb'\n'Send confirm email': 'Təsdiq emaili göndər'\n'Profile saved.': 'Profil saxlandı.'\nPicture: Şəkil\n'Password updated': 'Şifrə yeniləndi'\nNone: 'Heç biri'\n'New confirmation email was sent to user.': 'Yeni təsdiq emaili istifadəçiyə göndərildi.'\n'Email is used already': 'Email artıq istifadədədir'\n'Edit your password': 'Parolunu dəyiş'\n'Edit user $1': '$1 adlı istifadəçini dəyiş'\n'Edit subscriptions': 'Abunəlikləri dəyiş'\n'Edit profile': 'Profili dəyiş'\n'Edit permissions': 'İcazələri dəyiş'\n'Create new account': 'Yeni hesab yarat'\n'Comment ban settings': 'Şərh kilid parametrləri'\n'Ban for user $1 saved.': '$1 adlı istifadəçi üçün kilid saxlandı.'\n'User account is active': 'İstifadəçi hesabı aktivdir'\n'Allow users profile to be publicly displayed': 'İstifadəçi profilinin ictimai nümayişinə icazə ver'\n'Allow user access to login to site backend': 'İstifadəçinin sayt panelinin girişinə icazə ver.'\nTemplates: Üzlük\nUsername: 'İstifadəçi adı'\n'Last Name': Soyad\n'First Name': Ad\nEmail: Email\n'You were logged out.': 'Sən sistemdən çıxmısan.'\n'Newscoop Subhead': 'Newscoop Bölmə Başlığı'\nFilters: Filtrlər\n'Add new Author': 'Yeni Müəllif əlavə et'\n'Loading Data': 'Yüklənən Məlumat'\n'Delete author type': 'Müəllif növünü sil'\n'Cannot remove author type.': 'Müəllif növünün xaric edilməsi alınmır.'\n'Cannot remove author alias.': 'Müəllif ləqəbinin xaric edilməsi alınmır.'\n'Author alias removed.': 'Müəllif ləqəbi xaric edildi.'\n'Are you sure you want to delete this author?': 'Bu müəllifi silmək istədiyinə əminsən?'\n'Are you sure you want to delete this author alias?': 'Bu müəllif ləqəbini silmək istədiyinə əminsən?'\n'All Author Types': 'Bütün Müəllif Növləri'\n'Add author type': 'Müəllif növü əlavə et'\n'You do not have the permission to change authors.': 'Müəllifləri dəyişməyə icazən yoxdur.'\n'Please fill at least first name and last name.': 'Lütfən, ən azı ad və soyadı daxil et.'\n'Cannot add author type, this type already exists.': 'Müəllif növünü əlavə edə bilmirik, bu növ artıq mövcuddur.'\n'Author type removed.': 'Müəllif növü xaric edildi.'\n'Author type must be at least three characters long.': 'Müəllif növü ən azı üç işarədən ibarət olmalıdır.'\n'Author type added.': 'Müəllif növü əlavə edildi.'\n'Are you sure you want to delete this author type?': 'Bu müəllif növünü silmək istədiyinə əminsən?'\n'User may change authors': 'İstifadəçi müəllifləri dəyişə bilər'\n'Unable to add new image, target directory is not writable.': 'Yeni şəkil əlavə etmək alınmır, kataloqa əlavələr mümkün deyil.'\n'Author saved.': 'Müəllif saxlandı.'\n'Author deleted.': 'Müəllif silindi.'\n'Enable Firefox spell checking by default': 'Firefox söz yoxlamasını ilkin olaraq meəyyənləşdir'\n'User may use the editor status bar': 'İstifadəçi dəyişiklik status zolağını istifadə edə bilər'\n'User may clear up the system cache': 'İstifadəçi sistem keşini təmizləyə bilər'\n'Another user is registered with that e-mail address, please choose a different one.': 'Bu email ünvanla başqa istifadəçi qeydiyyatdan keçib, letfən, başqasını seç.'\n'There was an error when trying to update the user info.': 'İstifadəçi məlumatlının yenilənməsində xəta baş verdi.'\n'User may moderate comments': 'İstifadəçi şərhləri idarə edə bilər'\n'User may enable comments': 'İstifadəçi şərhləri aktivləşdirə bilər'\n'User may translate articles': 'İstifadəçi məqalələri tərcümə edə bilər'\n'User may move articles': 'İstifadəçi məqalələrin yerini dəyişə bilər'\n'User may find and replace': 'İstifadəçi tapa və yerdəyişmə edə bilər'\n'User may change system preferences': 'İstifadəçi sistem göstəricilərini dəyişə bilər'\n'User may attach topics to articles': 'İstifadəçi məqaləyə mövzu əlavə edə bilər'\n'User may attach images to articles': 'İstifadəçi məqalələrə şəkil əlavə edə bilər'\n'User may add special characters': 'İstifadəçi xüsusi işarələr əlavə edə bilər'\n'That user name already exists, please choose a different login name.': 'O istifadəçi adı artıq mövcuddur, lütfən, başqa giriş adı seç.'\n'User may delete article attachments': 'İstifadəçi məqalələrin əlavə edilmiş fayllarını silə bilər'\n'User may change article attachments': 'İstifadəçi məqalənin əlavə edilmiş fayllarını dəyişə bilər'\n'User may add article attachments': 'İstifadəçi məqaləyə əlavə fayl daxil edə bilər'\n'You do not have the right to create user accounts.': 'Sənin istifadəçi hesabı yaratmağa ixtiyarın yoxdur.'\n'You must select a $1': 'İstifadəçi $1 seçməlidir'\n'The password must be at least 6 characters long and both passwords should match.': 'Şifrə azı 6 işarədən ibarət olmalı və hər ikisi uyğun olmalıdır.'\n'The user account could not be created.': 'İstifadəçi hesabı yaradıla bilmədi.'\n'User account $1 was created successfully.': '$1 istifadəçi hesabı müvəffəqiyyətlə yaradıldı.'\n'You do not have the right to change user account permissions.': 'İstifadəçi hesabı icazələrini dəyişməyə ixtiyarın yoxdur.'\n'You do not have the right to change user account information.': 'İstifadəçi hesab məlumatlarını dəyişməyə ixtiyarın yoxdur.'\n'The password you typed is incorrect.': 'Yazdığın şifrə səhvdir.'\n'You do not have the right to delete user accounts.': 'İstifadəçi hesablarını silməyə ixtiyarın yoxdur.'\n'User account $1 was deleted successfully.': '$1 istifadəçi hesabı müvəffəqiyyətlə silindi.'\n'The IP Group $1 has been created.': '$1 IP Qrupu yaradıldı.'\n'There was an error creating the IP address group.': 'IP ünvan qrupunun yaradılmasında xəta baş verdi.'\n'The IP address group $1 has been deleted.': '$1 IP ünvan qrupu silinmişdir.'\n'User $1 information was changed successfully.': '$1 istifadəçi məlumatı müvəffəqiyyətlə dəyilmişdir.'\n'User Type': 'İstifadəçi Növü'\n'The IP address group $1:$2 conflicts with another existing group.': '$1:$2 IP ünvan qrupu başqa mövcud qrupla uyğunsuzdur.'\n'User may add/change publications': 'İstifadəçi nəşrləri əlavə edə/dəyişə bilər.'\n'Invalid value of user type parameter': 'İstifadəçi növü parametrinin səhv dəyəri'\n'User may delete publications': 'İstifadəçi nəşrləri silə bilər'\n'User may add/change issues': 'İstifadəçi məsələləri əlavə edə/dəyişə bilər'\n'User may delete issues': 'İstifadəçi məsələləri silə bilər'\n'User may add/change sections': 'İstifadəçi bölmələri əlavə edə/dəyişə bilər'\n'User may delete sections': 'İstifadəçi bölmələri silə bilər'\n'User may add articles': 'İstifadəçi məqalə əlavə edə bilər'\n'User may change articles': 'İstifadəçi məqalələri dəyişə bilər'\n'User may delete articles': 'İstifadəçi məqalələri silə bilər'\n'User may add images': 'İstifadəçi şəkil əlavə edə bilər'\n'User may change images': 'İstifadəçi şəkilləri dəyişə bilər'\n'User may delete images': 'İstifadəçi şəkilləri silə bilər'\n'User may delete templates': 'İstifadəçi nümunələri silə bilər'\n'User may add/change staff accounts and passwords': 'İstifadəçi heyətin hesab və şifrələrini əlavə edə/dəyişə bilər'\n'User may add/change subscribers accounts and passwords': 'İstifadəçi abunələrin hesab və şifrələrini əlavə edə/dəyişə bilər'\n'User may delete staff accounts': 'İstifadəçi heyət hesablarını silə bilər'\n'User may manage user subscriptions': 'İstifadəçi digər istifadəçilərin abunəliklərinə nəzarət edə bilər'\n'User may manage account types': 'İstifadəçi hesab növlərinə nəzarət edə bilər'\n'User may add/change article types': 'İstifadəçi məqalə növlərini əlavə edə/dəyişə bilər'\n'User may delete article types': 'İstifadəçi məqalə növlərini silə bilər'\n'User may manage templates': 'İstifadəçi nümunələrə nəzarət edə bilər'\n'User may add/change country entries': 'İstifadəçi ölkə girişlərini əlavə edə/dəyişə bilər'\n'User may add languages and manage language information': 'İstifadəçi dil əlavə edə və dil məlumatlarına nəzarət edə bilər'\n'User may delete languages': 'İstifadəçi dil silə bilər'\n'User may view audit logs': 'İstifadəçi audit girişinə baxa bilər'\n'User may delete country entries': 'İstifadəçi ölkə girişlərini silə bilər'\n'User may manage localizer': 'İstifadəçi tərcüməçiyə nəzarət edə bilər'\n'User may publish articles': 'İstifadəçi məqalə nümayiş edə bilər'\n'User may manage topics': 'İstifadəçi mövzulara nəzarət edə bilər'\n'User may use bold': 'İstifadəçi qalın hərif istifadə edə bilər'\n'User may use italic': 'İstifadəçi əl yazısı istifadə edə bilər'\n'User may use underline': 'İstifadəçi altxətt istifadə edilə bilər'\n'User may use strikethrough': 'İstifadəçi kəsişmə istifadə edə bilər'\n'User may change text alignment': 'İstifadəçi mətnin yerləşməsini dəyişə bilər'\n'User may copy, cut, and paste': 'İstifadəçi köçürə, kəsə və yapışdıra bilər'\n'User may undo/redo': 'İstifadəçi geri/irəli gedə bilər'\n'User may change text direction': 'İstifadəçi mətnin istiqamətini dəyişə bilər'\n'User may set indents': 'İStifadəçi boşluq təyin edə bilər'\n'User may add links': 'İstifadəçi link əlavə edə bilər'\n'User may add subheads': 'İstifadəçi altbaşlıq əlavə edə bilər'\n'User may insert images': 'İstifadəçi şəkil əlavə edə bilər'\n'User may view the HTML source': 'İstifadəçi HTML mənbəyə baxa bilər'\n'User may enlarge the editor': 'İstifadəçi dəyişmə funksiyasını genişləndirə bilər'\n'User may change the font face': 'İstifadəçi işarə formasını dəyişə bilər'\n'User may change the font size': 'İstifadəçi işarə ölçüsünü dəyişə bilər'\n'User may create bulleted lists': 'İstifadəçi işarələnmiş siyahı yarada bilər'\n'User may create numbered lists': 'İstifadəçi rəqəmlənmiş siyahı yarada bilər'\n'User may insert tables': 'İstifadəçi masa daxil edə bilər'\n'User may insert horizontal rules': 'İstifadəçi şaquli xətlər əlavə edə bilər'\n'User may change the font color': 'İstifadəçi işarə rəngini dəyişə bilər'\n'User may use superscripts': 'İstifadəçi superskript istifadə edə bilər'\n'User may use subscripts': 'İstifadəçi altskript istifadə edə bilər'\n'User may backup and restore the site data': 'İstifadəçi sayt məlumatını arxivləşdirə bilər'\nMiscellaneous: Digər\n'Staff/Subscribers Management': 'Heyət/Abunə İdarəçiliyi'\n'Editor Basic Settings': 'Dəyişmə Panelinin İlkin Parametrləri'\n'Editor Advanced Font Settings': 'Dəyişmə Panelinin Əsas Parametrləri'\n'Editor Table Settings': 'Dəyişmə Paneli Masa Parametrləri'\n'Administrative tasks': 'Administrativ işlər'\n'User will be notified on several events': 'İstifadəçi bir çox tədbirlər haqqında məlumatlandırılacaq'\n'Editor Miscellaneous Settings': 'Dəyişmə Panelinin Qarışıq Parametrləri'\n'No such user account.': 'Belə istifadəçi hesabı yoxdur.'\n'User image (full-size)': 'İstifadəçi şəkli (tam ölçü)'\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: 'İstifadəçi axtarışı'\n    menu:\n        manage: 'İstifadəçilərin İdarəetməsi'\n    created: Yaradıldı\n    updated: Yeniləndi\n    status:\n        status: Status\n        registered: Qeydiyyatlı\n        pending: Gözləyən\n        deleted: Silindi\n        active: Aktiv\n    table:\n        actions:\n            actions: Addımlar\n            edit: 'Redaktə et'\n            resend_email: 'Aktivləşdirmə emailini yenidən göndər'\n            rename: 'Adını dəyiş'\n            remove: 'Xaric Et'\n        confirm_remove: 'Bu istifadəçini pozmaq istəyirsiniz?'\n        table_messages:\n            page: Səhifə\n            perPageText: 'Göstər:'\n            pageText: 'Səhifə:'\n            recordCountPageBoundTemplate: '{pageLowerBound} bu istiqamətdə {pageUpperBound} tərəfindən'\n            recordCountPageUnboundedTemplate: 'tərəfindən {recordsShown}'\n            recordCountTotalTemplate: '{recordsQueryCount} {collectionName}'\n            recordCountFilteredTemplate: '(buradan filtrlənmişdir; {recordsTotal} ümumi yazı)'\n            recordCountText: 'Nümayiş edilir'\n            recordCountTextTemplate: 'text} {pageTemplate} {totalTemplate} {filteredTemplate}'\n            recordCountTemplate: '<span id=''dynatable-record-count-{elementId}'' class=''dynatable-record-count''>{mətnNümunəsi}</span>'\n            processingText: İcradadır...\n    chart:\n        title: 'Aktiv Girişlər'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.be.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: Web-сайт.\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: 'Вызначэньне месца на карце'\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Паказаныя _START_ да _END_ / _TOTAL_ запісаў'\n'Send email to user:': null\n'No users found.': null\n'No records found.': 'Не абрана ніводная з запісаў'\n'No entries to show': 'Няма запісаў для прагляду'\n'Display _MENU_ records': 'Адлюстраваць _MENU_ запісы'\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': 'фільтраванне ад _MAX_ запісаў'\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: Ніводная\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': 'Рэдагаваць пароль'\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': 'Рэдагаваць правы доступу'\n'Create new account': 'Стварыць новы ўліковы запіс'\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: Шаблёны\nUsername: 'Імя карыстальніка'\n'Last Name': null\n'First Name': null\nEmail: Email\n'You were logged out.': null\n'Newscoop Subhead': 'Падзагаловак Newscoop'\nFilters: Фільтры\n'Add new Author': 'Дадаць новага аўтара'\n'Loading Data': 'Загрузка звестак'\n'Delete author type': 'Выдаліць тып аўтара'\n'Cannot remove author type.': 'Гэты тып аўтара не можа быць выдалены.'\n'Cannot remove author alias.': 'Гэты псэўданім аўтара не можа быць выдалены.'\n'Author alias removed.': 'Аліяс аўтара быў выдалены.'\n'Are you sure you want to delete this author?': 'Вы ўпэўненыя, што жадаеце выдаліць гэтага аўтара?'\n'Are you sure you want to delete this author alias?': 'Вы ўпэўненыя, што жадаеце выдаліць псэўданім гэтага аўтара?'\n'All Author Types': 'Усе тыпы аўтараў'\n'Add author type': 'Дадаць тып аўтара'\n'You do not have the permission to change authors.': 'У Вас няма правоў доступу для змены інфармацыі аб аўтарах.'\n'Please fill at least first name and last name.': 'Калі ласка, увядзіце імя і прозвішча.'\n'Cannot add author type, this type already exists.': 'Немагчыма дадаць такі тып аўтара, ён ужо існуе.'\n'Author type removed.': 'Гэты тып аўтара выдалены.'\n'Author type must be at least three characters long.': 'Тып аўтара павінен быць як мінімум на 3 сімвала больш.'\n'Author type added.': 'Дададзены новы тып аўтара.'\n'Are you sure you want to delete this author type?': 'Вы ўпэўненыя, што жадаеце выдаліць гэты тып аўтара?'\n'User may change authors': 'Карыстальнік можа змяняць інфармацыю пра аўтараў'\n'Unable to add new image, target directory is not writable.': 'Немагчыма дадаць малюнак, мэтавы каталог недаступны для запісу.'\n'Author saved.': 'Інфармацыя пра аўтара захаваная.'\n'Author deleted.': 'Аўтар выдалены.'\n'Enable Firefox spell checking by default': 'Уключыць праверку правапісу ў Firefox па-змоўчванні'\n'User may use the editor status bar': 'Карыстач можа карыстацца радком стану рэдактара'\n'User may clear up the system cache': 'Карыстач можа чысціць сістэму кэшавання'\n'Another user is registered with that e-mail address, please choose a different one.': 'Іншы карыстач зарэгістраваўся пад гэтым электронным адрасам, калі ласка, увядзіце іншы.'\n'There was an error when trying to update the user info.': 'Адбылася памылка пры спробе абнаўлення інфармацыі аб карыстачу.'\n'User may moderate comments': 'Карыстальнiк можа мадэраваць камэнтары'\n'User may enable comments': 'Карыстальнiк можа дазваляць камэнтары'\n'User may translate articles': 'Карыстальнiк можа перакладаць артыкулы'\n'User may move articles': 'Карыстальнiк можа перамяшчаць артыкулы'\n'User may find and replace': 'Карыстальнiк можа выконваць пошук i замену'\n'User may change system preferences': 'Карыстальнiк можа зьмяняць наладкі сыстэмы'\n'User may attach topics to articles': 'Карыстальнiк можа прымацоўваць тэмы да артыкулаў'\n'User may attach images to articles': 'Карыстальнiк можа прымацоўваць графiчныя файлы да артыкулаў'\n'User may add special characters': 'Карыстальнiк можа дадаваць спэцыяльныя сымбалі'\n'That user name already exists, please choose a different login name.': 'Гэтае iмя карыстальнiка ўжо iснуе, калi ласка выбераце iншае iмя.'\n'User may delete article attachments': 'Карыстальнiк можа выдаляць дадаткі да артыкулаў.'\n'User may change article attachments': 'Карыстальнiк можа зьмяняць дадаткі да артыкулаў.'\n'User may add article attachments': 'Карыстальнiк можа дадаваць дадаткі да артыкулаў.'\n'You do not have the right to create user accounts.': 'Вы ня маеце права доступу для стварэньня ўліковых запiсаў карыстальнiкаў.'\n'You must select a $1': 'Вы павiнны вызначыць $1'\n'The password must be at least 6 characters long and both passwords should match.': 'Пароль павiнен складацца ня меней, чым з 6 сiмвалаў.'\n'The user account could not be created.': 'Немагчамы стварыць улiковы запic карыстальнiка.'\n'User account $1 was created successfully.': 'Улiковы запic карыстальнiка $1 быў пасьпяхова створаны.'\n'You do not have the right to change user account permissions.': 'Вы ня маеце права доступу для зьмяненьня правоў улiковага запicу карыстальнiка.'\n'You do not have the right to change user account information.': 'Вы ня маеце права доступу для зьмяненьня iнфармацыi аб улiковым запicе карыстальнiка.'\n'The password you typed is incorrect.': 'Вы ўвялі няправільны пароль.'\n'You do not have the right to delete user accounts.': 'Вы ня маеце права доступу для выдаленьня ўлiковых запicаў карыстальнiкаў.'\n'User account $1 was deleted successfully.': 'Улiковы запic карыстальнiка $1 пасьпяхова выдалены.'\n'The IP Group $1 has been created.': 'IP-група $1 была створаная'\n'There was an error creating the IP address group.': 'Памылка стварэньня групы IP адрасоў.'\n'The IP address group $1 has been deleted.': 'Група IP адрасоў $1 была выдаленая.'\n'User $1 information was changed successfully.': 'Iнфармацыя карыстальнiка $1 была пасьпяхова зьмененая.'\n'User Type': 'Тып карыстальнiка'\n'The IP address group $1:$2 conflicts with another existing group.': 'Група IP-адрасоў канфлiктуе'\n'User may add/change publications': 'Карыстальнiк можа дадаваць/зьмяняць выданьнi'\n'Invalid value of user type parameter': 'Няправiльнае значэньне тыпу карыстальнiка'\n'User may delete publications': 'Карыстальнiк можа выдаляць выданьнi'\n'User may add/change issues': 'Карыстальнiк можа дадаваць/зьмяняць выпускi'\n'User may delete issues': 'Карыстальнiк можа выдаляць выпускi'\n'User may add/change sections': 'Карыстальнiк можа дадаваць/зьмяняць рубрыкi'\n'User may delete sections': 'Карыстальнiк можа выдаляць рубрыкi'\n'User may add articles': 'Карыстальнiк можа дадаваць артыкулы'\n'User may change articles': 'Карыстальнiк можа зьмяняць артыкулы'\n'User may delete articles': 'Карыстальнiк можа выдаляць артыкулы'\n'User may add images': 'Карыстальнiк можа дадаваць графiчныя файлы'\n'User may change images': 'Карыстальнiк можа зьмяняць графiчныя файлы'\n'User may delete images': 'Карыстальнiк можа выдаляць графiчныя файлы'\n'User may delete templates': 'Карыстальнiк можа выдаляць шаблёны'\n'User may add/change staff accounts and passwords': 'Карыстальнiк можа дадаваць/выдаляць улiковыя запicы i паролi пэрсаналу.'\n'User may add/change subscribers accounts and passwords': 'Карыстальнiк можа дадаваць/выдаляць улiковыя запicы i паролi падпiсчыкаў'\n'User may delete staff accounts': 'Карыстальнiк можа выдаляць улiковыя запicы пэрсаналу.'\n'User may manage user subscriptions': 'Карыстальнiк можа кiраваць карыстальнiцкiмi падпiскамі'\n'User may manage account types': 'Карыстальнiк можа кiраваць тыпамi ўлiковых запicаў'\n'User may add/change article types': 'Карыстальнiк можа дадаваць/зьмяняць тыпы артыкулаў'\n'User may delete article types': 'Карыстальнiк можа выдаляць тыпы артыкулаў'\n'User may manage templates': 'Карыстальнiк можа кiраваць шаблёнамi'\n'User may add/change country entries': 'Карыстальнiкi могуць выдаляць/зьмяняць запicы аб краiнах'\n'User may add languages and manage language information': 'Карыстальнiк можа дадаваць мовы i кiраваць iнформацыяй аб мовах'\n'User may delete languages': 'Карыстальнiк можа выдаляць мовы'\n'User may view audit logs': 'Карыстальнiк можа праглядаць журнал справаздачнасьцi'\n'User may delete country entries': 'Карыстальнiк можа выдаляць запiсы аб краiнах'\n'User may manage localizer': 'Карыстальнiк можа кiраваць лякалізатарам'\n'User may publish articles': 'Карыстальнiк можа публікаваць артыкулы'\n'User may manage topics': 'Карыстальнiк можа кiраваць тэмамi'\n'User may use bold': 'Карыстальнiк можа выкарыстоўваць тып шрыфту Bold'\n'User may use italic': 'Карыстальнiк можа выкарыстоўваць тып шрыфту Italic'\n'User may use underline': 'Карыстальнiк можа вылучаць тэкст падкрэсьлiваньнем'\n'User may use strikethrough': 'Карыстальнiк можа вылучаць тэкст перакрэсьлiваньнем '\n'User may change text alignment': 'Карыстальнiк можа зьмяняць выроўніваньне тэксту'\n'User may copy, cut, and paste': 'Карыстальнiк можа капіяваць, вырэзваць i ўстаўляць'\n'User may undo/redo': 'Карыстальнiк можа адмяняць дзеяньнi'\n'User may change text direction': 'Карыстальнiк можа зьмяняць напрамак тэксту'\n'User may set indents': 'Карыстальнiк можа ўсталёўваць водступы'\n'User may add links': 'Карыстальнiк можа дадаваць спасылкi'\n'User may add subheads': 'Карыстальнiк можа дадаваць падзагалоўкі'\n'User may insert images': 'Карыстальнiк можа ўстаўляць графiчыя файлы'\n'User may view the HTML source': 'Карыстальнiк можа глядзець HTML-код'\n'User may enlarge the editor': 'Карыстальнiк можа расшыраць рэдактар'\n'User may change the font face': 'Карыстальнiк можа зьмяняць шрыфт'\n'User may change the font size': 'Карыстальнiк можа змяняць памер шрыфту'\n'User may create bulleted lists': 'Карыстальнiк можа ствараць ненумараваны сьпiс'\n'User may create numbered lists': 'Карыстальнiк можа ствараць нумараваны сьпiс'\n'User may insert tables': 'Карыстальнiк можа ўстаўляць таблицы'\n'User may insert horizontal rules': 'Карыстальнiк можа ўстаўляць гарызантальныя лініі'\n'User may change the font color': 'Карыстальнiк можа зьмяняць колер шрыфту'\n'User may use superscripts': 'Карыстальнiк можа выкарыстоўваць верхнi шрыфт'\n'User may use subscripts': 'Карыстальнiк можа выкарыстовываць ніжні шрыфт'\n'User may backup and restore the site data': 'Карыстальнік можа кіраваць рэзервным капіраваннем'\nMiscellaneous: Рознае\n'Staff/Subscribers Management': 'Кiраваньне пэрсаналам/падпiсчыкамі'\n'Editor Basic Settings': 'Асноўныя наладкі рэдактара'\n'Editor Advanced Font Settings': 'Расшыраныя наладкі шрыфтоў рэдактару'\n'Editor Table Settings': 'Наладкі таблiц'\n'Administrative tasks': 'Адміністрацыйныя заданьнi'\n'User will be notified on several events': 'Карыстальнiк будзе апавяшчацца аб некаторых падзеях'\n'Editor Miscellaneous Settings': 'Iншыя наладкі рэдактара'\n'No such user account.': 'Няма такога ўлiковага запicу карыстальнiка.'\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: 'Кіраванне карыстальнікамі'\n    created: Створаная\n    updated: null\n    status:\n        status: Стан\n        registered: null\n        pending: null\n        deleted: Выдаленае\n        active: Актыўна\n    table:\n        actions:\n            actions: Апэрацыi\n            edit: Праўка\n            resend_email: null\n            rename: Пераназваць\n            remove: Выдалiць\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: Апрацоўка...\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.bn.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': null\n'User may move articles': null\n'User may find and replace': null\n'User may change system preferences': null\n'User may attach topics to articles': null\n'User may attach images to articles': null\n'User may add special characters': null\n'That user name already exists, please choose a different login name.': null\n'User may delete article attachments': null\n'User may change article attachments': null\n'User may add article attachments': null\n'You do not have the right to create user accounts.': null\n'You must select a $1': null\n'The password must be at least 6 characters long and both passwords should match.': null\n'The user account could not be created.': null\n'User account $1 was created successfully.': null\n'You do not have the right to change user account permissions.': null\n'You do not have the right to change user account information.': null\n'The password you typed is incorrect.': null\n'You do not have the right to delete user accounts.': null\n'User account $1 was deleted successfully.': null\n'The IP Group $1 has been created.': null\n'There was an error creating the IP address group.': null\n'The IP address group $1 has been deleted.': null\n'User $1 information was changed successfully.': null\n'User Type': null\n'The IP address group $1:$2 conflicts with another existing group.': null\n'User may add/change publications': null\n'Invalid value of user type parameter': null\n'User may delete publications': null\n'User may add/change issues': null\n'User may delete issues': null\n'User may add/change sections': null\n'User may delete sections': null\n'User may add articles': null\n'User may change articles': null\n'User may delete articles': null\n'User may add images': null\n'User may change images': null\n'User may delete images': null\n'User may delete templates': null\n'User may add/change staff accounts and passwords': null\n'User may add/change subscribers accounts and passwords': null\n'User may delete staff accounts': null\n'User may manage user subscriptions': null\n'User may manage account types': null\n'User may add/change article types': null\n'User may delete article types': null\n'User may manage templates': null\n'User may add/change country entries': null\n'User may add languages and manage language information': null\n'User may delete languages': null\n'User may view audit logs': null\n'User may delete country entries': null\n'User may manage localizer': null\n'User may publish articles': null\n'User may manage topics': null\n'User may use bold': null\n'User may use italic': null\n'User may use underline': null\n'User may use strikethrough': null\n'User may change text alignment': null\n'User may copy, cut, and paste': null\n'User may undo/redo': null\n'User may change text direction': null\n'User may set indents': null\n'User may add links': null\n'User may add subheads': null\n'User may insert images': null\n'User may view the HTML source': null\n'User may enlarge the editor': null\n'User may change the font face': null\n'User may change the font size': null\n'User may create bulleted lists': null\n'User may create numbered lists': null\n'User may insert tables': null\n'User may insert horizontal rules': null\n'User may change the font color': null\n'User may use superscripts': null\n'User may use subscripts': null\n'User may backup and restore the site data': null\nMiscellaneous: null\n'Staff/Subscribers Management': null\n'Editor Basic Settings': null\n'Editor Advanced Font Settings': null\n'Editor Table Settings': null\n'Administrative tasks': null\n'User will be notified on several events': null\n'Editor Miscellaneous Settings': null\n'No such user account.': null\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: null\n        registered: null\n        pending: null\n        deleted: null\n        active: null\n    table:\n        actions:\n            actions: null\n            edit: সম্পাদন\n            resend_email: null\n            rename: null\n            remove: null\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.cs.yml",
    "content": "'Password confirmation does not match your password.': 'Potvrzení hesla se neshoduje s Vaším heslem. '\n'Password Confirmation': 'Potvrzení hesla'\nWebsite: 'Webová stránka'\nTwitter: Twitter\n'Save profile': 'Uložit profil'\n'Profile image': 'Profilová fotka'\nOrganisation: Organizace\n'Last Name Public': Příjmení\nGoogle+: Google+\nGeolocation: Geolokace\nGender: Pohlaví\n'First Name Public': 'Křestní jméno '\nFacebook: Facebook\n'Date of birth': 'Datum narození'\n'Allow sending emails': 'Povolit posílání e-mailů'\n'About me': 'O mně'\n'User with email %s is registered already.': 'Uživatel s e-mailovou adresou %s je již registrován.'\n'Username is used. Please use another one.': 'Uživatelské jméno je již používáno. Prosím použijte jiné. '\nContinue: Pokračovat\n'Accepting terms of use': 'Souhlasím s podmínkami použití'\n'send confirmation email': 'poslat potvrzovací e-mail'\n'edit user': 'upravit uživatele'\n'delete user': 'smazat uživatele'\n'Verified profile': 'Ověřený profil'\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Ukázat _START_ až _END_ z _TOTAL_ záznamů'\n'Send email to user:': 'Poslat e-mail uživateli: '\n'No users found.': 'Uživatelé nenalezeni. '\n'No records found.': 'Nebyly nalezeny žádné záznamy.'\n'No entries to show': 'Nejsou zde žádné příspěvky k zobrazení'\n'Display _MENU_ records': 'Zobrazit _MENU_ záznamy'\n'Are you sure you want to {action}?': 'Jste si jisti, že chcete  {akci}?'\n'Active Logins': 'Aktivní přihlášení'\n' - filtering from _MAX_ records': '- filtrováno z _MAX_ záznamů'\n'User renamed.': 'Uživatel přejmenován.'\n'User attributes': 'Atributy uživatele'\n'Rename user $1': 'Přejmenovat uživatele $1'\n'Username is used already': 'Uživatelské jméno je již používáno'\n'User with id $1 not found': 'Uživatel soznačením $1 nenalezen'\n'User was deleted.': 'Uživatel byl vymazán'\n'User saved': 'Uživatel byl uložen'\n'User id not specified': 'Označení uživatele nespecifikované'\n'User $1 created': 'Uživatel $1 vytvořen'\n'Send confirm email': 'Poslat potvrzovací email'\n'Profile saved.': 'Profil uložen'\nPicture: Obrázek\n'Password updated': 'Heslo aktualizováno'\nNone: Žádné\n'New confirmation email was sent to user.': 'Nový email s potvrzením byl uživateli zaslán'\n'Email is used already': 'Email je již používán'\n'Edit your password': 'Upravit heslo'\n'Edit user $1': 'Upravit uživatele $1'\n'Edit subscriptions': 'Editovat předplatné'\n'Edit profile': 'Upravit profil'\n'Edit permissions': 'Upravit povolení'\n'Create new account': 'Vytvořit nový účet'\n'Comment ban settings': 'Komentovat zakázané nastavení'\n'Ban for user $1 saved.': 'Zákaz pro uživatele $1 uložen'\n'User account is active': 'Uživatelský účet je aktivní'\n'Allow users profile to be publicly displayed': 'Povolit, aby uživatelův profil byl zobrazen veřejně'\n'Allow user access to login to site backend': 'Povolit uživateli přístup se zalogovat do backendu stránky'\nTemplates: Šablony\nUsername: 'Uživatelské jméno'\n'Last Name': Přijmení\n'First Name': 'Křestní jméno'\nEmail: Email\n'You were logged out.': 'Byl jste odhlášen.'\n'Newscoop Subhead': 'Podnadpis Newscoopu'\nFilters: Filtry\n'Add new Author': 'Přidat nového autora'\n'Loading Data': 'Nahrávat Data'\n'Delete author type': 'Vymazat typ autora'\n'Cannot remove author type.': 'Není možné odstranit typ autora.'\n'Cannot remove author alias.': 'Není možné odstranit pseudonym autora.'\n'Author alias removed.': 'Přezdívka autora odstraněna.'\n'Are you sure you want to delete this author?': 'Jste si jist, že chcete vymazat tohoto autora?'\n'Are you sure you want to delete this author alias?': 'Jste si jist, že chcete vymazat pseudonym autora?'\n'All Author Types': 'Všechny Typy Autorů'\n'Add author type': 'Přidán typ autora'\n'You do not have the permission to change authors.': 'Nemáte oprávnění měnit autory.'\n'Please fill at least first name and last name.': 'Prosíme vyplňte alespoň jméno a příjmení.'\n'Cannot add author type, this type already exists.': 'Není možné přidat typ autora, tento typ již existuje.'\n'Author type removed.': 'Typ autora odstraněn.'\n'Author type must be at least three characters long.': 'Typ autora musí obsahovat alespoň tři znaky.'\n'Author type added.': 'Typ autora přidán.'\n'Are you sure you want to delete this author type?': 'Jste si jist, že chcete vymazat tento typ autora?'\n'User may change authors': 'Uživatel smí měnit autory.'\n'Unable to add new image, target directory is not writable.': 'Nezdařilo se přidat nový obrázek. Do cílové složky nelze zapisovat.'\n'Author saved.': 'Autor uložen.'\n'Author deleted.': 'Autor odstraněn.'\n'Enable Firefox spell checking by default': 'Defaultně povolit Firefoxu kontrolu pravopisu'\n'User may use the editor status bar': 'Uživatel smí použít status bar editoru'\n'User may clear up the system cache': 'Uživatel smí vyčistit system cache'\n'Another user is registered with that e-mail address, please choose a different one.': 'Tento e-mail se již používá, prosím zvolte jiný.'\n'There was an error when trying to update the user info.': 'Vyskytla se chyba při pokusu o aktualizování uživatelských informací.'\n'User may moderate comments': 'Uživatel smí moderovat komentáře'\n'User may enable comments': 'Uživatel smí povolit komentáře'\n'User may translate articles': 'Uživatel smí překládat články'\n'User may move articles': 'Uživatel smí přemisťovat články'\n'User may find and replace': 'Uživatel smí vyhledávat a nahrazovat'\n'User may change system preferences': 'Uživatel smí měnit systémové předvolby'\n'User may attach topics to articles': 'Uživatel smí přikládat témata k článkům'\n'User may attach images to articles': 'Uživatel smí přikládat obrázky k článkům'\n'User may add special characters': 'Uživatel smí přidávat speciální znaky'\n'That user name already exists, please choose a different login name.': 'Toto uživatlské jméno již existuje, prosím vyberte si jiné přihlašovací jméno.'\n'User may delete article attachments': 'Uživatel smí mazat přílohy článků'\n'User may change article attachments': 'Uživatel smí měnit přílohy článků'\n'User may add article attachments': 'Uživatel smí přidávat přílohy člákům'\n'You do not have the right to create user accounts.': 'Nemáte právo vytvářet uživatelské účty'\n'You must select a $1': 'Musíte vybrat $1'\n'The password must be at least 6 characters long and both passwords should match.': 'Heslo musí obsahovat nejméně 6 znaků a obě hesla musí být shodná'\n'The user account could not be created.': 'Uživatelský účet $1 nemohl být vytvořen'\n'User account $1 was created successfully.': 'Uživatelský účet $1 byl úspěšně vytvořen.'\n'You do not have the right to change user account permissions.': 'Nemáte právo měnit práva uživatelského účtu'\n'You do not have the right to change user account information.': 'Nemáte právo měnit informace uživatelského účtu'\n'The password you typed is incorrect.': 'Heslo, které jste zadali je špatné'\n'You do not have the right to delete user accounts.': 'Nemáte právo smazat uživatelské účty'\n'User account $1 was deleted successfully.': 'Uživatelský účet $1 byl úspěšně odstraněn.'\n'The IP Group $1 has been created.': 'IP skupina $1 byla vytvořena'\n'There was an error creating the IP address group.': 'Vyskytla se chyba při vytváření skupiny IP adres.'\n'The IP address group $1 has been deleted.': 'IP skupina $1 byla smazána'\n'User $1 information was changed successfully.': 'Uživatelské $1 informace byly úspěšně změněny.'\n'User Type': 'Typ Uživatele'\n'The IP address group $1:$2 conflicts with another existing group.': 'IP skupina $1:$2 je v rozporu s jinou existující skupinou.'\n'User may add/change publications': 'Uživatel může přidat/změnit publikace'\n'Invalid value of user type parameter': 'Neplatná hodnota nebo parametr typu uživatele'\n'User may delete publications': 'Uživatel může smazat publikace'\n'User may add/change issues': 'Uživatel může přidat/změnit vydání'\n'User may delete issues': 'Uživatel může smazat vydání'\n'User may add/change sections': 'Uživatel může přidat/změnit rubriky'\n'User may delete sections': 'Uživatel může smazat rubriky'\n'User may add articles': 'Uživatel může přidat články'\n'User may change articles': 'Uživatel může změnit články'\n'User may delete articles': 'Uživatel může smazat články'\n'User may add images': 'Uživatel může přidat obrázky'\n'User may change images': 'Uživatel může změnit obrázky'\n'User may delete images': 'Uživatel může smazat obrázky'\n'User may delete templates': 'Uživatel může smazat šablony'\n'User may add/change staff accounts and passwords': 'Uživatel může přidat/upravit uživatelské účty a hesla zaměstnanců'\n'User may add/change subscribers accounts and passwords': 'Uživatel může přidat/upravit uživatelské účty a hesla předplatitelů'\n'User may delete staff accounts': 'Uživatel může odstranit uživatelské účty zaměstnanců'\n'User may manage user subscriptions': 'Uživatel může spravovat předplatné'\n'User may manage account types': 'Uživatel může změnit typy účtu'\n'User may add/change article types': 'Uživatel může přidat/změnit typy článku'\n'User may delete article types': 'Uživatel může smazat typy článků'\n'User may manage templates': 'Uživate může spravovat šablony'\n'User may add/change country entries': 'Uživatel může přidávat a modifikovat záznamy o jednotlivých zemích.'\n'User may add languages and manage language information': 'Uživatel může přidat a spravovat jazyky'\n'User may delete languages': 'Uživatel může mazat jazyky'\n'User may view audit logs': 'Uživatel může nahlížet do logu'\n'User may delete country entries': 'Uživatel může mazat názvy zemí'\n'User may manage localizer': 'Uživatel může spravovat lokalizátor'\n'User may publish articles': 'Uživatel může zveřejňovat články'\n'User may manage topics': 'Uživatel může spravovat témata'\n'User may use bold': 'Uživatel může v článku používat tučný text'\n'User may use italic': 'Uživatel může v článku používat kurzívu'\n'User may use underline': 'Uživatel může v článku používat podtržený text'\n'User may use strikethrough': 'Uživatel může v článku používat přeškrtnutý text'\n'User may change text alignment': 'Uživatel může v článku měnit zarovnání textu'\n'User may copy, cut, and paste': 'Uživatel může v článku používat funkce kopírovat, vyjmout a vložit'\n'User may undo/redo': 'Uživatel může v článku používat funkce zpět a znovu'\n'User may change text direction': 'Uživatel může v článku měnit směr toku textu'\n'User may set indents': 'Uživatel smí nastavit odsazení'\n'User may add links': 'Uživatel může vkládat odkazy'\n'User may add subheads': 'Uživatel může vkládat záhlaví'\n'User may insert images': 'Uživatel může vkládat obrázky'\n'User may view the HTML source': 'Uživatel může zobrazit HTML kód'\n'User may enlarge the editor': 'Uživatel může zvětšit okno editace'\n'User may change the font face': 'Uživatel může měnit typ písma'\n'User may change the font size': 'Uživatel může měnit velikost písma'\n'User may create bulleted lists': 'Uživatel může vytvářet seznamy'\n'User may create numbered lists': 'Uživatel může vytvářet číslované seznamy'\n'User may insert tables': 'Uživatel může vkládat tabulky'\n'User may insert horizontal rules': 'Uživatel může vkládat dělící čáry'\n'User may change the font color': 'Uživatel může měnit barvu písma'\n'User may use superscripts': 'Uživatel může použít horní indexy'\n'User may use subscripts': 'Uživatel může použít dolní indexy'\n'User may backup and restore the site data': 'Uživatel smí zalohovat a obnovovat data stránky'\nMiscellaneous: Různé\n'Staff/Subscribers Management': 'Spraáva Personálu/Předplatitelů'\n'Editor Basic Settings': 'Základní Nastavení Editoru'\n'Editor Advanced Font Settings': 'Pokročilé Nastavení Fontů Editoru'\n'Editor Table Settings': 'Nastavení Tabulek Editoru'\n'Administrative tasks': 'Administrativní úkoly'\n'User will be notified on several events': 'Uživatel bude několikrát informován'\n'Editor Miscellaneous Settings': 'Různé Nastavení Editoru'\n'No such user account.': 'Uživatelský účet neexistuje'\n'User image (full-size)': 'Obrázek uživatele (plná velikost)'\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: 'Hledání uživatele'\n    menu:\n        manage: 'Správa uživatelů'\n    created: Vytvořeno\n    updated: Aktualizováno\n    status:\n        status: Status\n        registered: Registrováno\n        pending: 'Čekající na vyřízení'\n        deleted: Vymazat\n        active: Aktivní\n    table:\n        actions:\n            actions: Činnosti\n            edit: Upravit\n            resend_email: 'Přeposlat aktivační e-mail'\n            rename: Přejmenovat\n            remove: Odstranit\n        confirm_remove: 'Určitě chcete smazat tohoto uživatele? '\n        table_messages:\n            page: Stránka\n            perPageText: 'Show:'\n            pageText: 'Stránky:'\n            recordCountPageBoundTemplate: '{pageLowerBound} do {pageUpperBound} z'\n            recordCountPageUnboundedTemplate: '{recordsShown} z'\n            recordCountTotalTemplate: '{recordsQueryCount} {Název kolekce}'\n            recordCountFilteredTemplate: '(filtrovaný z {recordsTotal} total records)'\n            recordCountText: Showing\n            recordCountTextTemplate: '{text} {stránkaTemplate} {totalTemplate} {filtrovaný Template}'\n            recordCountTemplate: '<span id=''dynatable-record-count-{elementId}'' class=''dynatable-record-count''>{textTemplate}</span>'\n            processingText: Zpracovávám...\n    chart:\n        title: 'Aktivní přihlášení'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.da.yml",
    "content": "'Password confirmation does not match your password.': 'Bekræftelseskodeordet er ikke det samme som dit kodeord.'\n'Password Confirmation': 'Bekræftelse af adgangskode'\nWebsite: Website\nTwitter: Twitter\n'Save profile': 'Gem profil'\n'Profile image': Profilbillede\nOrganisation: Organisation\n'Last Name Public': 'Offentligt efternavn'\nGoogle+: Google+\nGeolocation: Geolocation\nGender: Køn\n'First Name Public': 'Offentligt fornavn'\nFacebook: Facebook\n'Date of birth': Fødselsdato\n'Allow sending emails': 'Tillad at sende emails'\n'About me': 'Om mig'\n'User with email %s is registered already.': 'Der er allerede registreret en bruger med emailen %s.'\n'Username is used. Please use another one.': 'Brugernavnet er i brug. Vælg et andet.'\nContinue: Fortsæt\n'Accepting terms of use': 'Accepterer betingelserne'\n'send confirmation email': 'send bekræftelses email'\n'edit user': 'rediger bruger'\n'delete user': 'Slet bruger'\n'Verified profile': 'Bekræftet profil'\n'Showing _START_ to _END_ of _TOTAL_ entries': 'VISER _START_ til _END_ af _TOTAL_ opslag'\n'Send email to user:': 'Send email til bruger:'\n'No users found.': 'Ingen brugere fundet. '\n'No records found.': 'Ingen opslag.'\n'No entries to show': 'Intet at vise'\n'Display _MENU_ records': 'Vis _MENU_ opslag'\n'Are you sure you want to {action}?': 'Vil du {action}?'\n'Active Logins': 'Aktive logins'\n' - filtering from _MAX_ records': '- filtreret fra _MAX_ opslag'\n'User renamed.': 'Bruger omdøbt.'\n'User attributes': 'Bruger egenskaber'\n'Rename user $1': 'Omdøb bruger $1'\n'Username is used already': 'Brugernavnet er i brug'\n'User with id $1 not found': 'Bruger med id $1 findes ikke'\n'User was deleted.': 'Bruger slettet.'\n'User saved': 'Bruger gemt'\n'User id not specified': 'Bruger id er ikke angivet'\n'User $1 created': 'Bruger $1 oprettet'\n'Send confirm email': 'Send bekræftelses email'\n'Profile saved.': 'Profil gemt.'\nPicture: Billede\n'Password updated': 'Adgangskode opdateret'\nNone: Ingen\n'New confirmation email was sent to user.': 'Ny bekræftelses email sendt til brugeren.'\n'Email is used already': 'Email er i brug'\n'Edit your password': 'Skift din adgangskode'\n'Edit user $1': 'Rediger bruger $1'\n'Edit subscriptions': 'Rediger abonnementer'\n'Edit profile': 'Rediger profil'\n'Edit permissions': 'Rediger rettigheder'\n'Create new account': 'Opret ny konto'\n'Comment ban settings': 'Indstillinger for kommentar blokering'\n'Ban for user $1 saved.': 'Blokering for bruger $1 blev gemt.'\n'User account is active': 'Brugerkonto er aktiv'\n'Allow users profile to be publicly displayed': 'Tillad offentlige bruger profiler'\n'Allow user access to login to site backend': 'Tillad brugere at logge ind på redaktørsiderne'\nTemplates: Skabeloner\nUsername: Brugernavn\n'Last Name': Efternavn\n'First Name': Fornavn\nEmail: Email\n'You were logged out.': 'Du blev logget ud.'\n'Newscoop Subhead': 'Newscoop underoverskrift'\nFilters: Filtre\n'Add new Author': 'Tilføj ny forfatter'\n'Loading Data': 'Loader data'\n'Delete author type': 'Slet forfattertype'\n'Cannot remove author type.': 'Forfatter typen kunne ikke fjernes.'\n'Cannot remove author alias.': 'Forfatter alias kunne ikke fjernes.'\n'Author alias removed.': 'Forfatter alias fjernet.'\n'Are you sure you want to delete this author?': 'Vil du slette denne forfatter?'\n'Are you sure you want to delete this author alias?': 'Vil du slette dette forfatter alias?'\n'All Author Types': 'Alle forfatter typer'\n'Add author type': 'Tilføj forfatter type'\n'You do not have the permission to change authors.': 'Du har ikke tilladelser til at ændre forfattere.'\n'Please fill at least first name and last name.': 'Udfyld mindst fornavn og efternavn.'\n'Cannot add author type, this type already exists.': 'Forfatter type kunne ikke oprettes, typen eksisterer allerede.'\n'Author type removed.': 'Forfatter type fjernet.'\n'Author type must be at least three characters long.': 'Forfatter type skal være mindst tre tegn.'\n'Author type added.': 'Forfatter type tilføjet.'\n'Are you sure you want to delete this author type?': 'Vil du slette denne forfatter type?'\n'User may change authors': 'Bruger må ændre forffatere'\n'Unable to add new image, target directory is not writable.': 'Kunne ikke tilføje nyt billede, den valgte mappe er skrivebeskyttet.'\n'Author saved.': 'Forfatter gemt.'\n'Author deleted.': 'Forfatter slettet.'\n'Enable Firefox spell checking by default': 'Slå Firefox stavekontrol til som standard'\n'User may use the editor status bar': 'Bruger må bruge editor statusbaren'\n'User may clear up the system cache': 'Bruger må rydde system cachen'\n'Another user is registered with that e-mail address, please choose a different one.': 'Der er allerede registreret en bruger med den email adresse, vælg en anden.'\n'There was an error when trying to update the user info.': 'Brugerinfo kunne ikke opdateres.'\n'User may moderate comments': 'Bruger må moderere kommentarer'\n'User may enable comments': 'Bruger må slå kommentarer til'\n'User may translate articles': 'Bruger må oversætte artikler'\n'User may move articles': 'Bruger må flytte artikler'\n'User may find and replace': 'Bruger må søge og erstatte'\n'User may change system preferences': 'Bruger må ændre systemindstillinger'\n'User may attach topics to articles': 'Bruger må tilføje emner til artikler'\n'User may attach images to articles': 'Bruger må vedhæfte billeder til artikler'\n'User may add special characters': 'Bruger må tilføje specialtegn'\n'That user name already exists, please choose a different login name.': 'Brugernavnet eksisterer allerede. Vælg et andet login navn.'\n'User may delete article attachments': 'Bruger må slette vedhæftninger fra artikler'\n'User may change article attachments': 'Bruger må redigere vedhæftninger til artikler'\n'User may add article attachments': 'Bruger må tilføje vedhæftninger til artikler'\n'You do not have the right to create user accounts.': 'Du har ikke rettigheder til at oprette brugerkonti.'\n'You must select a $1': 'Du skal vælge en $1'\n'The password must be at least 6 characters long and both passwords should match.': 'Adgangskoden skal være mindst 6 tegn lang og adgangskoderne skal være ens.'\n'The user account could not be created.': 'Brugerkontoen kunne ikke oprettes.'\n'User account $1 was created successfully.': 'Brugerkontoen $1 blev oprettet.'\n'You do not have the right to change user account permissions.': 'Du har ikke rettigheder til at redigere tilladelser for brugerkonti.'\n'You do not have the right to change user account information.': 'Du har ikke rettigheder til at redigere brugerkonti.'\n'The password you typed is incorrect.': 'Forkert adgangskode.'\n'You do not have the right to delete user accounts.': 'Du har ikke rettigheder til at slette brugerkonti.'\n'User account $1 was deleted successfully.': 'Brugerkontoen $1 blev slettet.'\n'The IP Group $1 has been created.': 'IP gruppen $1 blev oprettet.'\n'There was an error creating the IP address group.': 'IP-adresse gruppen kunne ikke oprettes.'\n'The IP address group $1 has been deleted.': 'IP-adresse gruppen $1 blev slettet.'\n'User $1 information was changed successfully.': 'Brugerinfo for $1 blev opdateret.'\n'User Type': Brugertype\n'The IP address group $1:$2 conflicts with another existing group.': 'IP adresse gruppen $1:$2 er i konflikt med en eksisterende gruppe.'\n'User may add/change publications': 'Bruger må tilføje/redigere publikationer'\n'Invalid value of user type parameter': 'Ugyldig værdi for brugertype parameter'\n'User may delete publications': 'Bruger må slette publikationer'\n'User may add/change issues': 'Bruger må tilføje/redigere udgivelser'\n'User may delete issues': 'Bruger må slette udgivelser'\n'User may add/change sections': 'Bruger må tilføje/redigere sektioner'\n'User may delete sections': 'Bruger må slette sektioner'\n'User may add articles': 'Bruger må tilføje artikler'\n'User may change articles': 'Bruger må redigere artikler'\n'User may delete articles': 'Bruger må slette artikler'\n'User may add images': 'Bruger må tilføje billeder'\n'User may change images': 'Bruger må redigere billeder'\n'User may delete images': 'Bruger må slette billeder'\n'User may delete templates': 'Bruger må slette skabeloner'\n'User may add/change staff accounts and passwords': 'Bruger må tilføje/ændre redaktør konti og adgangskoder'\n'User may add/change subscribers accounts and passwords': 'Bruger må tilføje/ændre abonnent konti og adgangskoder'\n'User may delete staff accounts': 'Bruger må slette redaktions konti'\n'User may manage user subscriptions': 'Bruger må administrere bruger abonnementer'\n'User may manage account types': 'Bruger må administrere kontotyper'\n'User may add/change article types': 'Bruger må tilføje og administrere artikeltyper'\n'User may delete article types': 'Bruger må slette artikeltyper'\n'User may manage templates': 'Bruger må administrere skabeloner'\n'User may add/change country entries': 'Bruger må tilføje og administrere lande'\n'User may add languages and manage language information': 'Bruger må tilføje og administrere sprog'\n'User may delete languages': 'Bruger må slette sprog'\n'User may view audit logs': 'Bruger må se overvågningslogfiler'\n'User may delete country entries': 'Bruger må slette lande'\n'User may manage localizer': 'Bruger må administrere oversætteren'\n'User may publish articles': 'Bruger må udgive artikler'\n'User may manage topics': 'Bruger må administrere emner'\n'User may use bold': 'Bruger må bruge fed'\n'User may use italic': 'Bruger må bruge kursiv'\n'User may use underline': 'Bruger må bruge understreg'\n'User may use strikethrough': 'Bruger må bruge gennemstreg'\n'User may change text alignment': 'Bruger må ændre tekstjustering'\n'User may copy, cut, and paste': 'Bruger må anvende kopier, klip og indsæt'\n'User may undo/redo': 'Bruger må fortryde/gentage'\n'User may change text direction': 'Bruger må ændre skriftretning'\n'User may set indents': 'Bruger målave indrykninger'\n'User may add links': 'Bruger må indsætte links'\n'User may add subheads': 'Bruger må indsætte underoverskrifter'\n'User may insert images': 'Bruger må indsætte billeder'\n'User may view the HTML source': 'Bruger må se HTML kilden'\n'User may enlarge the editor': 'Bruger må forstørre editoren'\n'User may change the font face': 'Bruger må ændre skrifttypen'\n'User may change the font size': 'Bruger må ændre skriftstørrelsen'\n'User may create bulleted lists': 'Bruger må lave lister'\n'User may create numbered lists': 'Bruger må lave nummererede lister'\n'User may insert tables': 'Bruger må indsætte tabeller'\n'User may insert horizontal rules': 'Bruger må indsætte horisontale linjer'\n'User may change the font color': 'Bruger må ændre skriftfarven'\n'User may use superscripts': 'Bruger må bruge hævet skrift'\n'User may use subscripts': 'Bruger må bruge sænket skrift'\n'User may backup and restore the site data': 'Bruger må lave og gendanne backup af hjemmesiden'\nMiscellaneous: Diverse\n'Staff/Subscribers Management': 'Redaktør/Abonnent administration'\n'Editor Basic Settings': 'Grundlæggende editor indstillinger'\n'Editor Advanced Font Settings': 'Avancerede skrifttype indstillinger'\n'Editor Table Settings': 'Tabel indstillinger'\n'Administrative tasks': 'Administrative opgaver'\n'User will be notified on several events': 'Bruger vil få besked ved flere begivenheder'\n'Editor Miscellaneous Settings': 'Diverse editor indstillinger'\n'No such user account.': 'Bruger konto findes ikke.'\n'User image (full-size)': 'Brugerfoto (fuld størrelse)'\n'User account is highlighted as \"featured account\"': 'Brugerkontoen er en \"fremhævet konto\"'\n'Custom attribute...': 'Brugerdefinerede egenskaber'\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: 'Bruger søgning'\n    menu:\n        manage: Brugere\n    created: Oprettet\n    updated: Opdateret\n    status:\n        status: Status\n        registered: Registreret\n        pending: Afventer\n        deleted: Slettet\n        active: Aktive\n    table:\n        actions:\n            actions: Handlinger\n            edit: Rediger\n            resend_email: 'Gensend aktiverings email'\n            rename: Omdøb\n            remove: Fjern\n        confirm_remove: 'Vil du slette brugeren?'\n        table_messages:\n            page: Side\n            perPageText: 'Vis:'\n            pageText: 'Sider:'\n            recordCountPageBoundTemplate: '{pageLowerBound} til {pageUpperBound} af'\n            recordCountPageUnboundedTemplate: '{recordsShown} af'\n            recordCountTotalTemplate: '{recordsQueryCount} {collectionName}'\n            recordCountFilteredTemplate: ' ({recordsTotal} i alt)'\n            recordCountText: Viser\n            recordCountTextTemplate: '{text} {pageTemplate} {totalTemplate} {filteredTemplate}'\n            recordCountTemplate: '<span id=''dynatable-record-count-{elementId}'' class=''dynatable-record-count''>{textTemplate}</span>'\n            processingText: Arbejder...\n    chart:\n        title: 'Aktive logins'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.de.yml",
    "content": "'Password confirmation does not match your password.': 'Die Bestätigung Ihres Passworts und Ihr Passwort stimmen nicht überein.'\n'Password Confirmation': 'Passwort Bestätigung'\nWebsite: Website\nTwitter: Twitter\n'Save profile': 'Profil speichern'\n'Profile image': Profil-Bild\nOrganisation: Organisation\n'Last Name Public': 'Nachname öffentlich'\nGoogle+: Google+\nGeolocation: Geoinformation\nGender: Geschlecht\n'First Name Public': 'Vorname öffentlich'\nFacebook: Facebook\n'Date of birth': Geburtsdatum\n'Allow sending emails': 'Senden von E-Mails erlauben'\n'About me': 'Über mich'\n'User with email %s is registered already.': 'Ein Benutzer mit der E-Mail- Adresse %s ist schon registriert.'\n'Username is used. Please use another one.': 'Benutzername wird bereits verwendet. Bitte benutzen Sie einen anderen Benutzernamen.'\nContinue: Fortsetzen\n'Accepting terms of use': 'Nutzungsbedingungen akzeptieren '\n'send confirmation email': 'Bestätigungs-E-Mail senden'\n'edit user': 'Benutzer bearbeiten'\n'delete user': 'Benutzer löschen '\n'Verified profile': 'Verifiziertes Profil'\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Zeige _START_ bis _END_ von _TOTAL_ Einträgen'\n'Send email to user:': 'Sende E-Mail an Benutzer:'\n'No users found.': 'Keine Nutzer gefunden.'\n'No records found.': 'Keine Angaben gefunden.'\n'No entries to show': 'Keine Einträge zum Anzeigen gefunden.'\n'Display _MENU_ records': 'Anzeigen _MENU_ Einträge'\n'Are you sure you want to {action}?': 'Sind Sie sicher, dass Sie {action} wollen?'\n'Active Logins': 'Aktive Logins'\n' - filtering from _MAX_ records': ' - filtert aus _MAX_ Einträgen '\n'User renamed.': 'Nutzer umbenannt.'\n'User attributes': Benutzereigenschaften\n'Rename user $1': 'Benutzer $1 umbennen'\n'Username is used already': 'Benutzername wird bereits verwendet'\n'User with id $1 not found': 'Benutzer mit ID $1 nicht gefunden'\n'User was deleted.': 'Benutzer gelöscht.'\n'User saved': 'Benutzer gespeichert'\n'User id not specified': 'Benutzer-ID nicht spezifiziert'\n'User $1 created': 'Benutzer $1 erstellt'\n'Send confirm email': 'Sende E-Mail-Bestätigung'\n'Profile saved.': 'Profil gespeichert.'\nPicture: Bild\n'Password updated': 'Kennwort aktualisiert'\nNone: Keine\n'New confirmation email was sent to user.': 'Neue Bestätigungsmail an Nutzer versendet.'\n'Email is used already': 'E-Mail Adresse wird bereits verwendet'\n'Edit your password': 'Passwort bearbeiten'\n'Edit user $1': 'Benutzer $1 bearbeiten'\n'Edit subscriptions': 'Abonnements bearbeiten'\n'Edit profile': 'Profil bearbeiten'\n'Edit permissions': 'Berechtigung bearbeiten'\n'Create new account': 'Neues Benutzerkonto anlegen'\n'Comment ban settings': 'Kommentarverbot Einstellungen'\n'Ban for user $1 saved.': 'Die Sperrung des Nutzers $1 wurde gespeichert.'\n'User account is active': 'Benutzerkonto ist aktiv'\n'Allow users profile to be publicly displayed': 'Benutzerprofil darf öffentlich angezeigt werden'\n'Allow user access to login to site backend': 'Benutzer erlauben, sich im Backend anmelden'\nTemplates: Templates\nUsername: Benutzername\n'Last Name': Nachname\n'First Name': Vorname\nEmail: E-Mail\n'You were logged out.': 'Sie wurden ausgeloggt. '\n'Newscoop Subhead': 'Newscoop Zwischentitel'\nFilters: Filter\n'Add new Author': 'Neuen Autor hinzufügen'\n'Loading Data': 'Lade Daten'\n'Delete author type': 'Autorentyp löschen '\n'Cannot remove author type.': 'Autorentyp konnte nicht entfernt werden.'\n'Cannot remove author alias.': 'Autorenalias konnte nicht entfernt werden.'\n'Author alias removed.': 'Autorenalias entfernt.'\n'Are you sure you want to delete this author?': 'Sind Sie sicher, dass Sie diesen Autor löschen möchten?'\n'Are you sure you want to delete this author alias?': 'Sind Sie sicher, dass Sie diesen Autor Alias ​​löschen möchten?'\n'All Author Types': 'Alle Urheber-Typen'\n'Add author type': 'Autorentyp hinzufügen'\n'You do not have the permission to change authors.': 'Du hast keine Berechtigung, Autoren zu ändern.'\n'Please fill at least first name and last name.': 'Bitte trage einen Vor- und Nachnamen ein.'\n'Cannot add author type, this type already exists.': 'Konnte keinen Autorentyp hinzufügen, weil dieser Typ bereits existiert.'\n'Author type removed.': 'Autorentyp entfernt.'\n'Author type must be at least three characters long.': 'Der Autorentyp muss mindestens drei Zeichen lang sein.'\n'Author type added.': 'Autorentyp hinzugefügt.'\n'Are you sure you want to delete this author type?': 'Sind Sie sicher, dass Sie diesen Autorentyp löschen möchten?'\n'User may change authors': 'Benutzer darf Autoren ändern'\n'Unable to add new image, target directory is not writable.': 'Neues Bild konnte nicht hinzugefügt werden, das Zielverzeichnis kann nicht beschrieben werden.'\n'Author saved.': 'Autor gespeichert.'\n'Author deleted.': 'Autor gelöscht.'\n'Enable Firefox spell checking by default': 'Aktiviere Firefox Rechtschreibprüfung standardmäßig'\n'User may use the editor status bar': 'Benutzer darf Editor Statusleiste verwenden'\n'User may clear up the system cache': 'Benutzer darf System-Cache bereinigen'\n'Another user is registered with that e-mail address, please choose a different one.': 'Diese E-Mail-Adresse wird von einem anderen Benutzer verwendet, bitte wähle eine andere Adresse.'\n'There was an error when trying to update the user info.': 'Bei der Aktualisierung der Nutzerinformationen ist ein Fehler aufgetreten.'\n'User may moderate comments': 'Benutzer darf Kommentare moderieren'\n'User may enable comments': 'Benutzer darf Kommentare aktivieren'\n'User may translate articles': 'Benutzer darf Artikel übersetzen'\n'User may move articles': 'Benutzer darf Artikel verschieben'\n'User may find and replace': 'Benutzer darf suchen und ersetzen'\n'User may change system preferences': 'Benutzer darf Systemeinstellungen ändern'\n'User may attach topics to articles': 'Benutzer darf Themen zum Artikel hinzufügen'\n'User may attach images to articles': 'Benutzer darf Bilder zu den Artikeln hinzufügen'\n'User may add special characters': 'Benutzer darf Sonderzeichen hinzufügen'\n'That user name already exists, please choose a different login name.': 'Der Username existiert bereits, bitte wählen Sie einen neuen Login-Namen. '\n'User may delete article attachments': 'Benutzer darf Artikel-Anhänge löschen'\n'User may change article attachments': 'Benutzer darf Artikel-Anhänge ändern'\n'User may add article attachments': 'Benutzer darf Artikel-Anhänge hinzufügen'\n'You do not have the right to create user accounts.': 'Du hast nicht die Berechtigung, Benutzerkonten zu erstellen.'\n'You must select a $1': 'Sie müssen einen $1 zu wählen'\n'The password must be at least 6 characters long and both passwords should match.': 'Das Passwort muss mindestens 6 Zeichen lang sein und die Passwörter müssen übereinstimmen.'\n'The user account could not be created.': 'Das Benutzerkonto konnte nicht erstellt werden.'\n'User account $1 was created successfully.': 'Benutzerkonto $1 wurde erfolgreich erstellt.'\n'You do not have the right to change user account permissions.': 'Du bist nicht berechtigt, die Benutzerrechte zu bearbeiten.'\n'You do not have the right to change user account information.': 'Du bist nicht berechtig, die Benutzerinformationen zu bearbeiten.'\n'The password you typed is incorrect.': 'Das Passwort ist nicht korrekt.'\n'You do not have the right to delete user accounts.': 'Du bist nicht berechtigt, Benutzerkonten zu löschen.'\n'User account $1 was deleted successfully.': 'Benutzerkonto $1 erfolreich gelöscht.'\n'The IP Group $1 has been created.': null\n'There was an error creating the IP address group.': null\n'The IP address group $1 has been deleted.': null\n'User $1 information was changed successfully.': 'Nutzer $1 Informationen wurde erfolgreich geändert.'\n'User Type': Benutzertyp\n'The IP address group $1:$2 conflicts with another existing group.': null\n'User may add/change publications': 'Benutzer darf Publikationen hinzufügen / ändern'\n'Invalid value of user type parameter': 'Unzulässiger Wert von Nutzertyp Parameter'\n'User may delete publications': 'Benutzer darf Publikationen löschen'\n'User may add/change issues': 'Benutzer darf Ausgaben hinzufügen / verändern'\n'User may delete issues': 'Benutzer darf Ausgaben löschen'\n'User may add/change sections': 'Benutzer darf Rubriken hinzufügen / ändern'\n'User may delete sections': 'Benutzer darf Rubriken löschen'\n'User may add articles': 'Benutzer darf Artikel hinzufügen'\n'User may change articles': 'Benutzer darf  Artikel ändern'\n'User may delete articles': 'Benutzer darf Artikel löschen'\n'User may add images': 'Benutzer darf Bilder hinzufügen'\n'User may change images': 'Benutzer darf Bilder ändern'\n'User may delete images': 'Benutzer darf Bilder löschen'\n'User may delete templates': 'Benutzer darf Designvorlagen löschen'\n'User may add/change staff accounts and passwords': 'Benutzer darf Mitarbeiteraccounts und Passwörter hinzufügen / ändern'\n'User may add/change subscribers accounts and passwords': 'Benutzer darf Abonnementkonten und Kennwörter hinzufügen / ändern'\n'User may delete staff accounts': 'Benutzer darf Mitarbeiteraccounts löschen'\n'User may manage user subscriptions': 'Benutzer darf Benutzerabos verwalten'\n'User may manage account types': 'Benutzer darf Kontotypen verwalten'\n'User may add/change article types': 'Benutzer darf Artikeltypen hinzufügen / ändern'\n'User may delete article types': 'Benutzer darf Artikeltypen löschen'\n'User may manage templates': 'Benutzer darf Designvorlagen verwalten'\n'User may add/change country entries': 'Benutzer darf Ländereinträge hinzufügen/ändern'\n'User may add languages and manage language information': 'Nutzer kann Sprachen hinzufügen und verwalten Sprachinformationen'\n'User may delete languages': 'Benutzer darf Sprachen löschen'\n'User may view audit logs': 'Benutzer darf Audit-Protokolle anzeigen'\n'User may delete country entries': 'Benutzer darf Ländereinträge löschen'\n'User may manage localizer': 'Benutzer darf Localizer verwalten'\n'User may publish articles': 'Benutzer darf Artikel veröffentlichen'\n'User may manage topics': 'Benutzer darf Themen verwalten'\n'User may use bold': 'Benutzer darf fett verwenden'\n'User may use italic': 'Benutzer darf kursiv verwenden'\n'User may use underline': 'Benutzer darf Unterstrich verwenden'\n'User may use strikethrough': 'Benutzer darf Durchstrich verwenden'\n'User may change text alignment': 'Benutzer darf Textausrichtung ändern'\n'User may copy, cut, and paste': 'Benutzer darf kopieren, ausschneiden und einfügen'\n'User may undo/redo': 'Benutzer darf rückgängig machen / Aktion wiederholen'\n'User may change text direction': 'Benutzer darf Textrichtung ändern'\n'User may set indents': 'Benutzer darf Zeileneinzug verwenden'\n'User may add links': 'Benutzer darf Links hinzufügen'\n'User may add subheads': 'Benutzer darf Zwischentitel hinzufügen'\n'User may insert images': 'Benutzer darf Bilder einfügen'\n'User may view the HTML source': 'Benutzer darf den HTML-Quelltext sehen'\n'User may enlarge the editor': 'Benutzer darf den Editor vergrößern'\n'User may change the font face': 'Benutzer darf die Schriftart ändern'\n'User may change the font size': 'Benutzer darf die Schriftgröße ändern'\n'User may create bulleted lists': 'Benutzer darf Aufzählungslisten erstellen'\n'User may create numbered lists': 'Benutzer darf nummerierte Listen erstellen'\n'User may insert tables': 'Benutzer darf Tabellen einfügen'\n'User may insert horizontal rules': 'Benutzer darf horizontale Linien einfügen'\n'User may change the font color': 'Benutzer darf die Schriftfarbe ändern'\n'User may use superscripts': 'Benutzer darf hochgestellte Zeichen verwenden'\n'User may use subscripts': 'Benutzer darf tiefgestellte Zeichen verwenden'\n'User may backup and restore the site data': 'Benutzer darf Backup erstellen und die Daten wiederherstellen'\nMiscellaneous: Sonstiges\n'Staff/Subscribers Management': 'Mitarbeiter / Abonnenten-Management'\n'Editor Basic Settings': 'Editor: Grundeinstellungen'\n'Editor Advanced Font Settings': 'Editor: Erweiterte Schrifteneinstellungen'\n'Editor Table Settings': 'Editor: Tabellen-Einstellungen'\n'Administrative tasks': 'Administrative Aufgaben'\n'User will be notified on several events': 'Der Benutzer wird bei mehreren Events benachrichtigt'\n'Editor Miscellaneous Settings': 'Editor: Sonstige Einstellungen'\n'No such user account.': 'Benutzeraccount existiert nicht. '\n'User image (full-size)': 'Bild des Nutzers (in Originalgröße)'\n'User account is highlighted as \"featured account\"': 'Das Nutzerkonto wird als \"besonderes Nutzerkonto\" hervorgehoben'\n'Custom attribute...': 'Individuell erstelltes Attribut...'\n'An author with the same full name (combination of first and last name) already exists.': 'Ein Autor gleichen Namens (Kombination des Vor- und Nachnamens) existiert bereits.'\nusers:\n    label:\n        title: Benutzersuche\n    menu:\n        manage: 'Benutzer verwalten'\n    created: Erstellt\n    updated: Aktualisiert\n    status:\n        status: Status\n        registered: Registriert\n        pending: 'Noch ausstehend (Pending)'\n        deleted: Gelöscht\n        active: Aktiv\n    table:\n        actions:\n            actions: Aktionen\n            edit: Bearbeiten\n            resend_email: 'Aktivierungsmail erneut senden'\n            rename: Umbenennen\n            remove: Entfernen\n        confirm_remove: 'Diesen Benutzer wirklich entfernen?'\n        table_messages:\n            page: Seite\n            perPageText: 'Zeige:'\n            pageText: 'Seiten:'\n            recordCountPageBoundTemplate: '{pageLowerBound} zu {pageUpperBound} von'\n            recordCountPageUnboundedTemplate: '{recordsShown} von'\n            recordCountTotalTemplate: '{recordsQueryCount} {collectionName}'\n            recordCountFilteredTemplate: '(aus insgesamt {recordsTotal} Einträgen gefiltert)'\n            recordCountText: 'Zeige '\n            recordCountTextTemplate: '{text} {pageTemplate} {totalTemplate} {filteredTemplate}'\n            recordCountTemplate: '<span id=''dynatable-record-count-{elementId}'' class=''dynatable-record-count''>{textTemplate}</span>'\n            processingText: 'In Arbeit ...'\n    chart:\n        title: 'Aktive Logins'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.de_AT.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: Website\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: Geoinformation\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Zeige _START_ bis _END_ von _TOTAL_ Einträgen'\n'Send email to user:': null\n'No users found.': null\n'No records found.': 'Keine Angaben gefunden.'\n'No entries to show': 'Keine Einträge zum Anzeigen gefunden.'\n'Display _MENU_ records': 'Anzeigen _MENU_ Einträge'\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': 'filtert aus _MAX_ Einträgen '\n'User renamed.': 'Benutzer umbenannt. '\n'User attributes': Benutzereigenschaften\n'Rename user $1': 'Benutzer $1 umbenennen'\n'Username is used already': 'Benutzername wird bereits verwendet'\n'User with id $1 not found': 'Benutzer mit ID $1 nicht gefunden'\n'User was deleted.': 'Benutzer wurde gelöscht. '\n'User saved': 'Benutzer gespeichert'\n'User id not specified': 'Benutzer ID nicht spezifiziert '\n'User $1 created': 'Benutzer  $1 angelegt'\n'Send confirm email': 'Sende Bestätigungsemail '\n'Profile saved.': 'Profil gespeichert'\nPicture: Bild\n'Password updated': 'Passwort aktualisiert'\nNone: Keine\n'New confirmation email was sent to user.': 'Neue Bestätigungsemail wurde an Benutzer verschickt. '\n'Email is used already': 'Email-Adresse wird bereits verwendet'\n'Edit your password': 'Passwort bearbeiten'\n'Edit user $1': 'Benutzer $1 bearbeiten'\n'Edit subscriptions': 'Abonnements bearbeiten'\n'Edit profile': 'Profil bearbeiten'\n'Edit permissions': 'Berechtigung bearbeiten'\n'Create new account': 'Neues Benutzerkonto anlegen'\n'Comment ban settings': 'Kommentar Sperr-Einstellungen'\n'Ban for user $1 saved.': 'Sperre für Benutzer  $1 gespeichert. '\n'User account is active': 'Der Benutzeraccount ist aktiviert. '\n'Allow users profile to be publicly displayed': 'Benutzerprofil darf öffentlich angezeigt werden'\n'Allow user access to login to site backend': 'Dem Benutzer erlauben sich ins Backend einzuloggen'\nTemplates: Templates\nUsername: Benutzername\n'Last Name': Nachname\n'First Name': Vorname\nEmail: E-Mail\n'You were logged out.': 'Sie wurden ausgeloggt. '\n'Newscoop Subhead': 'Newscoop Zwischentitel'\nFilters: Filter\n'Add new Author': 'Neue(n) Autor/in hinzufügen'\n'Loading Data': 'Daten laden'\n'Delete author type': 'Autortyp löschen'\n'Cannot remove author type.': 'Autortyp kann nicht gelöscht werden.'\n'Cannot remove author alias.': 'Autor/in Alias kann nicht entfernt werden.'\n'Author alias removed.': 'Autor/in Alias entfernt.'\n'Are you sure you want to delete this author?': 'Wirklich Autor/in löschen?'\n'Are you sure you want to delete this author alias?': 'Wirklich Autor/in Alias löschen?'\n'All Author Types': 'Alle Autorentypen'\n'Add author type': 'Autorentyp hinzufügen'\n'You do not have the permission to change authors.': 'Keine Berechtigung Autoren/innen zu ändern.'\n'Please fill at least first name and last name.': 'Bitte mindestens Vornamen und Nachnamen eintragen.'\n'Cannot add author type, this type already exists.': 'Autorentyp kann nicht hinzugefügt werden, Typ existiert bereits.'\n'Author type removed.': 'Autorentyp entfernt'\n'Author type must be at least three characters long.': 'Autorentyp muss mindestens drei Zeichen lang sein.'\n'Author type added.': 'Autorentyp hinzugefügt.'\n'Are you sure you want to delete this author type?': 'Wirklich Autorentyp löschen?'\n'User may change authors': 'User darf Autoren/innen ändern'\n'Unable to add new image, target directory is not writable.': 'Neues Bild kann nicht hinzugefügt werden, Zielverzeichnis kann nicht verwendet werden.'\n'Author saved.': 'Autor/in gespeichert.'\n'Author deleted.': 'Autor/in gelöscht.'\n'Enable Firefox spell checking by default': 'Firefox Rechtschreibprüfung standardmäßig einstellen'\n'User may use the editor status bar': 'Benutzer darf Editor Statusanzeige nutzen'\n'User may clear up the system cache': 'Benutzer darf den Systemcache leeren'\n'Another user is registered with that e-mail address, please choose a different one.': 'Ein anderer Benutzer ist unter dieser E-Mail Adresse registriert, bitte eine andere wählen.'\n'There was an error when trying to update the user info.': 'Fehler beim Aktualisieren der Benutzerinformationen'\n'User may moderate comments': 'Benutzer darf Kommentare moderieren'\n'User may enable comments': 'Benutzer darf Kommentare aktivieren'\n'User may translate articles': 'Benutzer darf Artikel übersetzen'\n'User may move articles': 'Benutzer darf Artikel verschieben'\n'User may find and replace': 'Benutzer darf suchen und ersetzen'\n'User may change system preferences': 'Benutzer darf Systemeinstellungen ändern'\n'User may attach topics to articles': 'Benutzer darf Themen mit Artikeln verknüpfen'\n'User may attach images to articles': 'Benutzer darf Bilder zu Artikeln hinzufügen'\n'User may add special characters': 'Benutzer darf Sonderzeichen einfügen'\n'That user name already exists, please choose a different login name.': 'Der Username existiert bereits, bitte wählen Sie einen neuen Login-Namen. '\n'User may delete article attachments': 'Benutzer darf Artikelanhänge löschen'\n'User may change article attachments': 'Benutzerr darf Artikelanhänge verändern'\n'User may add article attachments': 'Benutzer darf Artikelanhänge hinzufügen'\n'You do not have the right to create user accounts.': 'Keine Berechtigung Benutzerkonten zu erstellen'\n'You must select a $1': 'Bitte ein $1 auswählen'\n'The password must be at least 6 characters long and both passwords should match.': 'Das Passwort muss mindestens 6 Stellen lang sein und beide Passwörter müssen übereinstimmen'\n'The user account could not be created.': 'Benutzerkonto konnte nicht erstellt werden.'\n'User account $1 was created successfully.': 'Benutzerkonto $1 wurde erfolgreich erstellt.'\n'You do not have the right to change user account permissions.': 'Keine Berechtigung Benutzerkontogenehmigungen zu ändern.'\n'You do not have the right to change user account information.': 'Keine Berechtigung Benutzerkontoinformation zu ändern.'\n'The password you typed is incorrect.': 'Das eingegebene Passwort ist falsch'\n'You do not have the right to delete user accounts.': 'Keine Berechtigung Benutzerkonten zu löschen'\n'User account $1 was deleted successfully.': 'Benutzerkonto $1 wurde erfolgreich erstellt.'\n'The IP Group $1 has been created.': 'IP-Gruppe $1 wurde erstellt.'\n'There was an error creating the IP address group.': 'Fehler beim Erstellen der IP Adressengruppe.'\n'The IP address group $1 has been deleted.': 'IP-Gruppe $1 wurde gelöscht.'\n'User $1 information was changed successfully.': 'Benutzerinformation für $1 erfolgreich verändert.'\n'User Type': Benutzertyp\n'The IP address group $1:$2 conflicts with another existing group.': 'Konflikt zwischen der IP Adressengruppe $1:$2 und einer anderen Gruppe.'\n'User may add/change publications': 'Benutzer darf Publikationen hinzufügen / ändern'\n'Invalid value of user type parameter': 'Ungültiger Wert für Benutzertyp'\n'User may delete publications': 'Benutzer darf Publikationen löschen'\n'User may add/change issues': 'Benutzer darf Ausgaben hinzufügen / ändern'\n'User may delete issues': 'Benutzer darf Ausgaben löschen'\n'User may add/change sections': 'Benutzer darf Rubriken hinzufügen / ändern'\n'User may delete sections': 'Benutzer darf Rubriken löschen'\n'User may add articles': 'Benutzer darf Artikel hinzufügen'\n'User may change articles': 'Benutzer darf Artikel ändern'\n'User may delete articles': 'Benutzer darf Artikel löschen'\n'User may add images': 'Benutzer darf Bilder hinzufügen'\n'User may change images': 'Benutzer darf Bilder ändern'\n'User may delete images': 'Benutzer darf Bilder löschen'\n'User may delete templates': 'Benutzer darf Templates löschen'\n'User may add/change staff accounts and passwords': 'Benutzer darf Personalkonten und Passwörter hinzufügen und ändern'\n'User may add/change subscribers accounts and passwords': 'Benutzer darf Abonnentenkonten und Passwörter hinzufügen und ändern'\n'User may delete staff accounts': 'Benutzer darf Personalkonten löschen'\n'User may manage user subscriptions': 'Benutzer darf Abonnement verwalten'\n'User may manage account types': 'Benutzer darf Profiltypen verwalten'\n'User may add/change article types': 'Benutzer darf Artikeltypen hinzufügen / ändern'\n'User may delete article types': 'Benutzer darf Artikeltypen löschen'\n'User may manage templates': 'Benutzer darf Templates verwalten'\n'User may add/change country entries': 'Benutzer darf Ländereinstellungen hinzufügen und ändern'\n'User may add languages and manage language information': 'Benutzer darf Sprachen hinzufügen und Sprachinformationen verwalten'\n'User may delete languages': 'Benutzer darf Sprachen löschen'\n'User may view audit logs': 'Benutzer darf Log-Files betrachten'\n'User may delete country entries': 'Benutzer darf Ländereintragungen löschen'\n'User may manage localizer': 'Benutzer darf Interface lokalisieren'\n'User may publish articles': 'Benutzer darf Artikel veröffentlichen'\n'User may manage topics': 'Benutzer darf Themen verwalten'\n'User may use bold': 'Benutzer darf Text fett stellen'\n'User may use italic': 'Benutzer darf Text kursiv stellen'\n'User may use underline': 'Benutzer darf Text unterstreichen'\n'User may use strikethrough': 'Benutzer darf Text durchstreichen'\n'User may change text alignment': 'Benutzer darf Textausrichtung ändern'\n'User may copy, cut, and paste': 'Benutzer darf Text kopieren, ausschneiden und einfügen'\n'User may undo/redo': 'Benutzer darf Aktionen rückgängig machen und wieder herstellen'\n'User may change text direction': 'Benutzer kann Textrichtung ändern'\n'User may set indents': 'Benutzer darf Einschübe vornehmen'\n'User may add links': 'Benutzer darf Links einfügen'\n'User may add subheads': 'Benutzer darf Zwischenüberschriften einfügen'\n'User may insert images': 'Benutzer darf Bilder einfügen'\n'User may view the HTML source': 'Benutzer darf HTML Quellcode einsehen'\n'User may enlarge the editor': 'Benutzer darf den Editor vergrößern'\n'User may change the font face': 'Benutzer darf den Zeichensatz verändern'\n'User may change the font size': 'Benutzer darf die Zeichengröße verändern'\n'User may create bulleted lists': 'Benutzer darf unnummerierte Aufzählungen einrichten'\n'User may create numbered lists': 'Benutzer darf nummerierte Aufzählungen einrichten'\n'User may insert tables': 'Benutzer darf Tabellen einfügen'\n'User may insert horizontal rules': 'Benutzer darf horizontale Linien einfügen'\n'User may change the font color': 'Benutzer darf die Zeichenfarbe verändern'\n'User may use superscripts': 'Benutzer darf Zeichen hochstellen'\n'User may use subscripts': 'Benutzer darf Zeichen in Kleinschrift umwandeln'\n'User may backup and restore the site data': 'Benutzer darf Seitendaten sichern und wiederherstellen'\nMiscellaneous: Verschiedenes\n'Staff/Subscribers Management': 'Personal / Abonnenten verwalten'\n'Editor Basic Settings': 'Editor Voreinstellungen'\n'Editor Advanced Font Settings': 'Editor Einstellungen für Zeichensätze'\n'Editor Table Settings': 'Editor Einstellungen für Tabellen'\n'Administrative tasks': 'Administrator Aufgaben'\n'User will be notified on several events': 'Benutzer wird zu mehreren Anlässen benachrichtigt'\n'Editor Miscellaneous Settings': 'Verschiedene Editor Einstellungen'\n'No such user account.': 'Benutzerkonto nicht vorhanden'\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: 'Nutzer verwalten'\n    created: Angelegt\n    updated: null\n    status:\n        status: Status\n        registered: null\n        pending: null\n        deleted: Gelöscht\n        active: Aktiv\n    table:\n        actions:\n            actions: Aktionen\n            edit: Bearbeiten\n            resend_email: null\n            rename: Umbenennen\n            remove: Entferne\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: Bearbeite...\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.el.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: Ιστοσελίδα\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: Geolocation\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Εμφάνιση _START_ προς _END_ από _TOTAL_ εισόδους'\n'Send email to user:': null\n'No users found.': null\n'No records found.': 'Δεν βρέθηκαν καταχωρήσεις.'\n'No entries to show': 'Καμία είσοδος προς προβολή'\n'Display _MENU_ records': 'Εμφάνιση καταχωρήσεων _MENU_ '\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': '-φιλτράρισμα από _MAX_ καταχωρήσεις'\n'User renamed.': 'Ο χρήστης μετονομάστηκε.'\n'User attributes': 'Ιδιότητες χρηστών'\n'Rename user $1': 'Μετονομασία χρήστη $1'\n'Username is used already': 'Το όνομα χρήστη χρησιμοποιείται ήδη'\n'User with id $1 not found': 'Ο χρήστης με ταυτότητα $1 δεν βρέθηκε'\n'User was deleted.': 'Ο χρήστης διαγράφηκε.'\n'User saved': 'Ο χρήστης αποθηκεύτηκε'\n'User id not specified': 'Η ταυτότητα χρήστη δεν διευκρινίστηκε'\n'User $1 created': 'Ο χρήστης  $1 δημιουργήθηκε'\n'Send confirm email': 'Αποστολή email επιβεβαίωσης'\n'Profile saved.': 'Το προφίλ αποθηκεύτηκε. '\nPicture: Εικόνα\n'Password updated': 'Ο κωδικός πρόσβασης ενημερώθηκε'\nNone: Κανένα\n'New confirmation email was sent to user.': 'Νέα επιβεβαίωση email εστάλη στον χρήστη.'\n'Email is used already': 'Το Email χρησιμοποιείται ήδη'\n'Edit your password': 'Επεξεργασία κωδικού πρόσβασης'\n'Edit user $1': 'Επεξεργασία χρήστη $1'\n'Edit subscriptions': 'Επεξεργασία συνδρομών'\n'Edit profile': 'Επεξεργασία προφίλ'\n'Edit permissions': 'Επεξεργασία δικαιωμάτων'\n'Create new account': 'Δημιουργία νέου λογαριασμού'\n'Comment ban settings': 'Ρυθμίσεις απαγόρευσης σχολίων'\n'Ban for user $1 saved.': 'Η απαγόρευση για τον χρήστη $1 αποθηκεύτηκε.'\n'User account is active': 'Ο λογαριασμός χρήστη είναι ενεργός'\n'Allow users profile to be publicly displayed': 'Να επιτρέπεται η δημόσια προβολή του προφίλ του χρήστη '\n'Allow user access to login to site backend': 'Να επιτρέπεται η πρόσβαση για σύνδεση με το backend της ιστοσελίδας'\nTemplates: Πρότυπα\nUsername: 'Όνομα χρήστη'\n'Last Name': Επώνυμο\n'First Name': Όνομα\nEmail: Email\n'You were logged out.': 'Ήσασταν αποσυνδεδεμένοι'\n'Newscoop Subhead': 'Υποκεφαλίδα Newscoop'\nFilters: Φίλτρα\n'Add new Author': 'Προσθήκη νέου Συγγραφέα'\n'Loading Data': 'Φόρτωση Δεδομένων'\n'Delete author type': 'Διαγραφή τύπου συγγραφέα'\n'Cannot remove author type.': 'Αδύνατη η αφαίρεση τύπου συγγραφέα.'\n'Cannot remove author alias.': 'Αδύνατη η αφαίρεση ψευδωνύμου συγγραφέα.'\n'Author alias removed.': 'Το ψευδώνυμο συγγραφέα μετακινήθηκε.'\n'Are you sure you want to delete this author?': 'Είστε σίγουρος/η ότι θέλετε να διαγράψετε αυτόν τον συγγραφέα;'\n'Are you sure you want to delete this author alias?': 'Είστε σίγουρος/η ότι θέλετε να διαγράψετε αυτό το ψευδώνυμο συγγραφέα;'\n'All Author Types': 'Όλοι οι Τύποι Συγγραφέων'\n'Add author type': 'Προσθήκη τύπου συγγραφέα'\n'You do not have the permission to change authors.': 'Δεν έχετε την άδεια  να αλλάξετε συγγραφείς.'\n'Please fill at least first name and last name.': 'Παρακαλούμε συμπληρώστε τουλάχιστον όνομα και επώνυμο.'\n'Cannot add author type, this type already exists.': 'Είναι αδύνατον να προστεθεί τύπος συγγραφέα, ο τύπος αυτός ήδη υπάρχει.'\n'Author type removed.': 'Ο τύπος συγγραφέα απομακρύνθηκε.'\n'Author type must be at least three characters long.': 'Ο τύπος συγγραφέα πρέπει να αποτελείται τουλάχιστον από τρείς χαρακτήρες.'\n'Author type added.': 'Ο τύπος συγγραφέα προστέθηκε.'\n'Are you sure you want to delete this author type?': 'Είστε σίγουρος/η ότι θέλετε να διαγράψετε αυτόν τον τύπο συγγραφέα;'\n'User may change authors': 'Ο χρήστης μπορεί να αλλάξει συγγραφείς'\n'Unable to add new image, target directory is not writable.': 'Είναι αδύνατον να προστεθεί νέα εικόνα, ο κατάλογος στόχου δεν είναι εγγράψιμος.'\n'Author saved.': 'Ο συγγραφέας αποθηκεύτηκε.'\n'Author deleted.': 'Ο συγγραφέας διαγράφτηκε.'\n'Enable Firefox spell checking by default': 'Ενεργοποίηση ορθογραφικού ελέγχου του Firefox από προεπιλογή'\n'User may use the editor status bar': 'Ο χρήστης μπορεί να χρησιμοποιήσει τη γραμμή επεξεργασίας κατάστασης'\n'User may clear up the system cache': 'Ο χρήστης μπορεί να καθαρίσει τη προσωρινή μνήμη του συστήματος'\n'Another user is registered with that e-mail address, please choose a different one.': 'Ένας άλλος χρήστης είναι εγγεγραμμένος με αυτή τη διεύθυνση e-mail, παρακαλούμε επιλέξτε κάποια άλλη.'\n'There was an error when trying to update the user info.': 'Υπήρξε κάποιο σφάλμα κατά την προσπάθεια ανανέωσης των πληροφοριών χρήστη.'\n'User may moderate comments': 'Ο χρήστης μπορεί να ρυθμίσει τα σχόλια'\n'User may enable comments': 'Ο χρήστης μπορεί να ενεργοποιήσει τα σχόλια'\n'User may translate articles': 'Ο χρήστης μπορεί να μεταφράσει άρθρα'\n'User may move articles': 'Ο χρήστης μπορεί να μετακινήσει άρθρα'\n'User may find and replace': 'Ο χρήστης μπορεί να βρεί και να αντικαταστήσει'\n'User may change system preferences': 'Ο χρήστης μπορεί να αλλάξει τις προτιμήσεις συστήματος'\n'User may attach topics to articles': 'Ο χρήστης μπορεί να επισυνάψει θέματα στα άρθρα'\n'User may attach images to articles': 'Ο χρήστης μπορεί να επισυνάψει εικόνες στα άρθρα'\n'User may add special characters': 'Ο χρήστης μπορεί να προσθέσει ειδικούς χαρακτήρες'\n'That user name already exists, please choose a different login name.': 'Το όνομα χρήστη υπάρχει ήδη, παρακαλούμε επιλέξτε διαφορετικό όνομα σύνδεσης.'\n'User may delete article attachments': 'Ο χρήστης μπορεί να διαγράψει τα συννημένα άρθρου'\n'User may change article attachments': 'Ο χρήστης μπορεί να αλλάξει τα συννημένα του άρθρου'\n'User may add article attachments': 'Ο χρήστης μπορεί να προσθέσει συννημένα άρθρου'\n'You do not have the right to create user accounts.': 'Δεν έχετε το δικαίωμα να δημιουργήσετε λογαριασμούς χρηστών.'\n'You must select a $1': 'Πρέπει να επιλέξετε $1'\n'The password must be at least 6 characters long and both passwords should match.': 'Ο κωδικός πρόσβασης πρέπει να αποτελείται τουλάχιστον από 6 χαρακτήρες και οι δύο κωδικοί πρόσβασης πρέπει να ταιριάζουν μεταξύ τους.'\n'The user account could not be created.': 'Ο λογαριασμός χρήστη δεν μπόρεσε να δημιουργηθεί.'\n'User account $1 was created successfully.': 'Ο λογαριασμός χρήστη $1 δημιουργήθηκε επιτυχώς.'\n'You do not have the right to change user account permissions.': 'Δεν έχετε το δικαίωμα να αλλάξετε τα δικαιώματα λογαριασμού χρήστη.'\n'You do not have the right to change user account information.': 'Δεν έχετε το δικαίωμα να αλλάξετε τις πληροφορίες λογαριασμού του χρήστη.'\n'The password you typed is incorrect.': 'Ο κωδικός πρόσβασης που πληκτρολογήσατε δεν είναι έγκυρος.'\n'You do not have the right to delete user accounts.': 'Δεν έχετε το δικαίωμα να διαγράψετε λογαριασμούς χρηστών.'\n'User account $1 was deleted successfully.': 'Ο λογαριασμός χρήστη $1 διαγράφηκε επιτυχώς.'\n'The IP Group $1 has been created.': 'Η ομαδα IP $1 έχει δημιουργηθεί.'\n'There was an error creating the IP address group.': 'Υπήρξε κάποιο σφάλμα κατά τη δημιουργία της ομάδας διεύθυνσης IP.'\n'The IP address group $1 has been deleted.': 'Η ομάδα διεύθυνσης IP έχει διαγραφεί.'\n'User $1 information was changed successfully.': 'Η πληροφορία του χρήστη $1 άλλαξε επιτυχώς.'\n'User Type': 'Τύπος Χρήστη'\n'The IP address group $1:$2 conflicts with another existing group.': 'Η ομάδα διεύθυνσης IP $1:$2 έρχεται σε σύγκρουση με μια άλλη υπάρχουσα ομάδα.'\n'User may add/change publications': 'Ο χρήστης μπορεί να προσθέσει/αλλάξει δημοσιεύσεις'\n'Invalid value of user type parameter': 'Μη έγκυρη τιμή παραμέτρου τύπου χρήστη'\n'User may delete publications': 'Ο χρήστης μπορεί να διαγράψει δημοσιεύσεις'\n'User may add/change issues': 'Ο χρήστης μπορεί να προσθέσει/αλλάξει τεύχη'\n'User may delete issues': 'Ο χρήστης μπορεί να διαγράψει τεύχη'\n'User may add/change sections': 'Ο χρήστης μπορεί να προσθέσει/αλλάξει ενότητες'\n'User may delete sections': 'Ο χρήστης μπορεί να διαγράψει  ενότητες'\n'User may add articles': 'Ο χρήστης μπορεί να προσθέσει άρθρα'\n'User may change articles': 'Ο χρήστης μπορεί να αλλάξει άρθρα'\n'User may delete articles': 'Ο χρήστης μπορεί να διαγράψει άρθρα'\n'User may add images': 'Ο χρήστης μπορεί να προσθέσει εικόνες'\n'User may change images': 'Ο χρήστης μπορεί να αλλάξει εικόνες'\n'User may delete images': 'Ο χρήστης μπορεί να διαγράψει εικόνες'\n'User may delete templates': 'Ο χρήστης μπορεί να διαγράψει πρότυπα'\n'User may add/change staff accounts and passwords': 'Ο χρήστης μπορεί να προσθέσει/αλλάξει λογαριασμούς προσωπικού και κωδικούς πρόσβασης'\n'User may add/change subscribers accounts and passwords': 'Ο χρήστης μπορεί να προσθέσει/αλλάξει λογαριασμούς συνδρομητών και κωδικούς πρόσβασης'\n'User may delete staff accounts': 'Ο χρήστης μπορεί να διαγράψει λογαριασμούς προσωπικού'\n'User may manage user subscriptions': 'Ο χρήστης μπορεί να διαχειριστεί συνδρομές χρηστών'\n'User may manage account types': 'Ο χρήστης μπορεί να διαχειριστεί τύπους λογαριασμών'\n'User may add/change article types': 'Ο χρήστης μπορεί να προσθέσει/αλλάξει τύπους άρθρων'\n'User may delete article types': 'Ο χρήστης μπορεί να διαγράψει τύπους άρθρων'\n'User may manage templates': 'Ο χρήστης μπορεί να διαχειριστεί πρότυπα'\n'User may add/change country entries': 'Ο χρήστης μπορεί να προσθέσει/αλλάξει καταχωρήσεις χωρών'\n'User may add languages and manage language information': 'Ο χρήστης μπορεί να προσθέσει γλώσσες και να διαχειριστεί τις πληροφορίες γλωσσών'\n'User may delete languages': 'Ο χρήστης μπορεί να διαγράψει γλώσσες'\n'User may view audit logs': 'Ο χρήστης μπορεί να δει τα μητρώα καταγραφής (logs)'\n'User may delete country entries': 'Ο χρήστης μπορεί να διαγράψει καταχωρήσεις χωρών'\n'User may manage localizer': 'Ο χρήστης μπορεί να διαχειριστεί τον τοπικό προσαρμοστή'\n'User may publish articles': 'Ο χρήστης μπορεί να δημοσιεύσει άρθρα'\n'User may manage topics': 'Ο χρήστης μπορεί να διαχειριστεί θέματα'\n'User may use bold': 'Ο χρήστης μπορεί να χρησιμοποιήσει bold'\n'User may use italic': 'Ο χρήστης μπορεί να χρησιμοποιήσει italic'\n'User may use underline': 'Ο χρήστης μπορεί να υπογραμμίσει'\n'User may use strikethrough': 'Ο χρήστης μπορεί να διαγραμμίσει'\n'User may change text alignment': 'Ο χρήστης μπορεί να αλλάξει την στοίχιση κειμένου'\n'User may copy, cut, and paste': 'Ο χρήστης μπορεί να αντιγράψει, να αποκόψει και να επικολλήσει'\n'User may undo/redo': 'Ο χρήστης μπορεί να κάνει αναίρεση/επαναφορά'\n'User may change text direction': 'Ο χρήστης μπορεί να αλλάξει κατεύθυνση κειμένου'\n'User may set indents': 'Ο χρήστης μπορεί να καθορίσει περιπτώσεις'\n'User may add links': 'Ο χρήστης μπορεί να προσθέσει συνδέσεις'\n'User may add subheads': 'Ο χρήστης μπορεί να χρησιμοποιήσει υποκεφαλίδες'\n'User may insert images': 'Ο χρήστης μπορεί να εισάγει εικόνες'\n'User may view the HTML source': 'Ο χρήστης μπορεί να δεί την πηγή HTML'\n'User may enlarge the editor': 'Ο χρήστης μπορεί να μεγαλώσει τον επεξεργαστή κειμένου'\n'User may change the font face': 'Ο χρήστης μπορεί να αλλάξει την πρόσοψη'\n'User may change the font size': 'Ο χρήστης μπορεί να αλλάξει το μέγεθος γραμματοσειράς'\n'User may create bulleted lists': 'Ο χρήστης μπορεί να δημιουργήσει λίστες με κουκίδες'\n'User may create numbered lists': 'Ο χρήστης μπορεί να δημιουργήσει λίστες με αρίθμηση'\n'User may insert tables': 'Ο χρήστης μπορεί να εισάγει πίνακες'\n'User may insert horizontal rules': 'Ο χρήστης μπορεί να εισάγει οριζόντιους κανόνες'\n'User may change the font color': 'Ο χρήστης μπορεί να αλλάξει το χρώμα της γραμματοσειράς'\n'User may use superscripts': 'Ο χρήστης μπορεί να χρησιμοποιήσει εκθέτες'\n'User may use subscripts': 'Ο χρήστης μπορεί να χρησιμοποιήσει δείκτες'\n'User may backup and restore the site data': 'Ο χρήστης μπορεί να δημιουργήσει αντίγραφο ασφαλείας και να επαναφέρει τα δεδομένα ιστότοπου'\nMiscellaneous: Διάφορα\n'Staff/Subscribers Management': 'Διαχείρηση Προσωπικού/Συνδρομητών'\n'Editor Basic Settings': 'Βασικές Ρυθμίσεις Επεξεργαστή Κειμένου'\n'Editor Advanced Font Settings': 'Προηγμένες Ρυθμίσεις Γραμματοσειρών Επεξεργαστή Κειμένου'\n'Editor Table Settings': 'Ρυθμίσεις Επεξεργαστή Πίνακα'\n'Administrative tasks': 'Διοικητικά καθήκοντα'\n'User will be notified on several events': 'Ο χρήστης θα ενημερωθεί για διάφορες εκδηλώσεις'\n'Editor Miscellaneous Settings': 'Διάφορες Ρυθμίσεις Προγράμματος Επεξεργασίας Κειμένου'\n'No such user account.': 'Δεν υπάρχει τέτοιος λογαριασμός χρήστη.'\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: 'Διαχείριση Χρηστών'\n    created: Δημιουργήθηκε\n    updated: null\n    status:\n        status: Κατάσταση\n        registered: null\n        pending: null\n        deleted: Διαγραμμένο\n        active: Ενεργό\n    table:\n        actions:\n            actions: Ενέργειες\n            edit: Επεξεργασία\n            resend_email: null\n            rename: Μετονομασία\n            remove: Αφαίρεση\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: Επεξεργασία...\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.en.yml",
    "content": "'Password confirmation does not match your password.': 'Password confirmation does not match your password.'\n'Password Confirmation': 'Password Confirmation'\nWebsite: Website\nTwitter: Twitter\n'Save profile': 'Save profile'\n'Profile image': 'Profile image'\nOrganisation: Organisation\n'Last Name Public': 'Last Name Public'\nGoogle+: Google+\nGeolocation: Geolocation\nGender: Gender\n'First Name Public': 'First Name Public'\nFacebook: Facebook\n'Date of birth': 'Date of birth'\n'Allow sending emails': 'Allow sending emails'\n'About me': 'About me'\n'User with email %s is registered already.': 'User with email %s is registered already.'\n'Username is used. Please use another one.': 'Username is used. Please use another one.'\nContinue: Continue\n'Accepting terms of use': 'Accepting terms of use'\n'send confirmation email': 'send confirmation email'\n'edit user': 'edit user'\n'delete user': 'delete user'\n'Verified profile': 'Verified profile'\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Showing _START_ to _END_ of _TOTAL_ entries'\n'Send email to user:': 'Send email to user:'\n'No users found.': 'No users found.'\n'No records found.': 'No records found.'\n'No entries to show': 'No entries to show'\n'Display _MENU_ records': 'Display _MENU_ records'\n'Are you sure you want to {action}?': 'Are you sure you want to {action}?'\n'Active Logins': 'Active Logins'\n' - filtering from _MAX_ records': ' - filtering from _MAX_ records'\n'User renamed.': 'User renamed.'\n'User attributes': 'User attributes'\n'Rename user $1': 'Rename user $1'\n'Username is used already': 'Username is used already'\n'User with id $1 not found': 'User with id $1 not found'\n'User was deleted.': 'User was deleted.'\n'User saved': 'User saved'\n'User id not specified': 'User id not specified'\n'User $1 created': 'User $1 created'\n'Send confirm email': 'Send confirm email'\n'Profile saved.': 'Profile saved.'\nPicture: Picture\n'Password updated': 'Password updated'\nNone: None\n'New confirmation email was sent to user.': 'New confirmation email was sent to user.'\n'Email is used already': 'Email is used already'\n'Edit your password': 'Edit your password'\n'Edit user $1': 'Edit user $1'\n'Edit subscriptions': 'Edit subscriptions'\n'Edit profile': 'Edit profile'\n'Edit permissions': 'Edit permissions'\n'Create new account': 'Create new account'\n'Comment ban settings': 'Comment ban settings'\n'Ban for user $1 saved.': 'Ban for user $1 saved.'\n'User account is active': 'User account is active'\n'Allow users profile to be publicly displayed': 'Allow users profile to be publicly displayed'\n'Allow user access to login to site backend': 'Allow user access to login to site backend'\nTemplates: Templates\nUsername: Username\n'Last Name': 'Last Name'\n'First Name': 'First Name'\nEmail: Email\n'You were logged out.': 'You were logged out.'\n'Newscoop Subhead': 'Newscoop Subhead'\nFilters: Filters\n'Add new Author': 'Add new Author'\n'Loading Data': 'Loading Data'\n'Delete author type': 'Delete author type'\n'Cannot remove author type.': 'Cannot remove author type.'\n'Cannot remove author alias.': 'Cannot remove author alias.'\n'Author alias removed.': 'Author alias removed.'\n'Are you sure you want to delete this author?': 'Are you sure you want to delete this author?'\n'Are you sure you want to delete this author alias?': 'Are you sure you want to delete this author alias?'\n'All Author Types': 'All Author Types'\n'Add author type': 'Add author type'\n'You do not have the permission to change authors.': 'You do not have the permission to change authors.'\n'Please fill at least first name and last name.': 'Please fill at least first name and last name.'\n'Cannot add author type, this type already exists.': 'Cannot add author type, this type already exists.'\n'Author type removed.': 'Author type removed.'\n'Author type must be at least three characters long.': 'Author type must be at least three characters long.'\n'Author type added.': 'Author type added.'\n'Are you sure you want to delete this author type?': 'Are you sure you want to delete this author type?'\n'User may change authors': 'User may change authors'\n'Unable to add new image, target directory is not writable.': 'Unable to add new image, target directory is not writable.'\n'Author saved.': 'Author saved.'\n'Author deleted.': 'Author deleted.'\n'Enable Firefox spell checking by default': 'Enable Firefox spell checking by default'\n'User may use the editor status bar': 'User may use the editor status bar'\n'User may clear up the system cache': 'User may clear up the system cache'\n'Another user is registered with that e-mail address, please choose a different one.': 'Another user is registered with that e-mail address, please choose a different one.'\n'There was an error when trying to update the user info.': 'There was an error when trying to update the user info.'\n'User may moderate comments': 'User may moderate comments'\n'User may enable comments': 'User may enable comments'\n'User may translate articles': 'User may translate articles'\n'User may move articles': 'User may move articles'\n'User may find and replace': 'User may find and replace'\n'User may change system preferences': 'User may change system preferences'\n'User may attach topics to articles': 'User may attach topics to articles'\n'User may attach images to articles': 'User may attach images to articles'\n'User may add special characters': 'User may add special characters'\n'That user name already exists, please choose a different login name.': 'That user name already exists, please choose a different login name.'\n'User may delete article attachments': 'User may delete article attachments'\n'User may change article attachments': 'User may change article attachments'\n'User may add article attachments': 'User may add article attachments'\n'You do not have the right to create user accounts.': 'You do not have the right to create user accounts.'\n'You must select a $1': 'You must select a $1'\n'The password must be at least 6 characters long and both passwords should match.': 'The password must be at least 6 characters long and both passwords should match.'\n'The user account could not be created.': 'The user account could not be created.'\n'User account $1 was created successfully.': 'User account $1 was created successfully.'\n'You do not have the right to change user account permissions.': 'You do not have the right to change user account permissions.'\n'You do not have the right to change user account information.': 'You do not have the right to change user account information.'\n'The password you typed is incorrect.': 'The password you typed is incorrect.'\n'You do not have the right to delete user accounts.': 'You do not have the right to delete user accounts.'\n'User account $1 was deleted successfully.': 'User account $1 was deleted successfully.'\n'The IP Group $1 has been created.': 'The IP Group $1 has been created.'\n'There was an error creating the IP address group.': 'There was an error creating the IP address group.'\n'The IP address group $1 has been deleted.': 'The IP address group $1 has been deleted.'\n'User $1 information was changed successfully.': 'User $1 information was changed successfully.'\n'User Type': 'User Type'\n'The IP address group $1:$2 conflicts with another existing group.': 'The IP address group $1:$2 conflicts with another existing group.'\n'User may add/change publications': 'User may add/change publications'\n'Invalid value of user type parameter': 'Invalid value of user type parameter'\n'User may delete publications': 'User may delete publications'\n'User may add/change issues': 'User may add/change issues'\n'User may delete issues': 'User may delete issues'\n'User may add/change sections': 'User may add/change sections'\n'User may delete sections': 'User may delete sections'\n'User may add articles': 'User may add articles'\n'User may change articles': 'User may change articles'\n'User may delete articles': 'User may delete articles'\n'User may add images': 'User may add images'\n'User may change images': 'User may change images'\n'User may delete images': 'User may delete images'\n'User may delete templates': 'User may delete templates'\n'User may add/change staff accounts and passwords': 'User may add/change staff accounts and passwords'\n'User may add/change subscribers accounts and passwords': 'User may add/change subscribers accounts and passwords'\n'User may delete staff accounts': 'User may delete staff accounts'\n'User may manage user subscriptions': 'User may manage user subscriptions'\n'User may manage account types': 'User may manage account types'\n'User may add/change article types': 'User may add/change article types'\n'User may delete article types': 'User may delete article types'\n'User may manage templates': 'User may manage templates'\n'User may add/change country entries': 'User may add/change country entries'\n'User may add languages and manage language information': 'User may add languages and manage language information'\n'User may delete languages': 'User may delete languages'\n'User may view audit logs': 'User may view audit logs'\n'User may delete country entries': 'User may delete country entries'\n'User may manage localizer': 'User may manage localizer'\n'User may publish articles': 'User may publish articles'\n'User may manage topics': 'User may manage topics'\n'User may use bold': 'User may use bold'\n'User may use italic': 'User may use italic'\n'User may use underline': 'User may use underline'\n'User may use strikethrough': 'User may use strikethrough'\n'User may change text alignment': 'User may change text alignment'\n'User may copy, cut, and paste': 'User may copy, cut, and paste'\n'User may undo/redo': 'User may undo/redo'\n'User may change text direction': 'User may change text direction'\n'User may set indents': 'User may set indents'\n'User may add links': 'User may add links'\n'User may add subheads': 'User may add subheads'\n'User may insert images': 'User may insert images'\n'User may view the HTML source': 'User may view the HTML source'\n'User may enlarge the editor': 'User may enlarge the editor'\n'User may change the font face': 'User may change the font face'\n'User may change the font size': 'User may change the font size'\n'User may create bulleted lists': 'User may create bulleted lists'\n'User may create numbered lists': 'User may create numbered lists'\n'User may insert tables': 'User may insert tables'\n'User may insert horizontal rules': 'User may insert horizontal rules'\n'User may change the font color': 'User may change the font color'\n'User may use superscripts': 'User may use superscripts'\n'User may use subscripts': 'User may use subscripts'\n'User may backup and restore the site data': 'User may backup and restore the site data'\nMiscellaneous: Miscellaneous\n'Staff/Subscribers Management': 'Staff/Subscribers Management'\n'Editor Basic Settings': 'Editor Basic Settings'\n'Editor Advanced Font Settings': 'Editor Advanced Font Settings'\n'Editor Table Settings': 'Editor Table Settings'\n'Administrative tasks': 'Administrative tasks'\n'User will be notified on several events': 'User will be notified on several events'\n'Editor Miscellaneous Settings': 'Editor Miscellaneous Settings'\n'No such user account.': 'No such user account.'\n'User image (full-size)': 'User image (full-size)'\n'User account is highlighted as \"featured account\"': 'User account is highlighted as \"featured account\"'\n'Custom attribute...': 'Custom attribute...'\n'An author with the same full name (combination of first and last name) already exists.': 'An author with the same full name (combination of first and last name) already exists.'\n\nusers:\n    label:\n        title: \"Users search\"\n    menu:\n        manage: \"Manage Users\"\n    created: \"Created\"\n    updated: \"Updated\"\n    status:\n        status: \"Status\"\n        registered: \"Registered\"\n        pending: \"Pending\"\n        deleted: \"Deleted\"\n        active: \"Active\"\n    table:\n        actions:\n            actions: \"Actions\"\n            edit: Edit\n            resend_email: \"Resend activation email\"\n            rename: \"Rename\"\n            remove: \"Remove\"\n        confirm_remove: \"You realy want to remove this user?\"\n        table_messages:\n            page: \"Page\"\n            perPageText: \"Show: \"\n            pageText: \"Pages: \"\n            recordCountPageBoundTemplate: \"{pageLowerBound} to {pageUpperBound} of\"\n            recordCountPageUnboundedTemplate: \"{recordsShown} of\"\n            recordCountTotalTemplate: \"{recordsQueryCount} {collectionName}\"\n            recordCountFilteredTemplate: \" (filtered from {recordsTotal} total records)\"\n            recordCountText: \"Showing \"\n            recordCountTextTemplate: \"{text} {pageTemplate} {totalTemplate} {filteredTemplate}\"\n            recordCountTemplate: \"<span id='dynatable-record-count-{elementId}' class='dynatable-record-count'>{textTemplate}</span>\"\n            processingText: \"Processing...\"\n    chart:\n        title: \"Active Logins\"\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.en_GB.yml",
    "content": "'Password confirmation does not match your password.': 'Password confirmation does not match your password.'\n'Password Confirmation': 'Password Confirmation'\nWebsite: Website\nTwitter: Twitter\n'Save profile': 'Save profile'\n'Profile image': 'Profile image'\nOrganisation: Organisation\n'Last Name Public': 'Last Name Public'\nGoogle+: Google+\nGeolocation: Geolocation\nGender: Gender\n'First Name Public': 'First Name Public'\nFacebook: Facebook\n'Date of birth': 'Date of birth'\n'Allow sending emails': 'Allow sending emails'\n'About me': 'About me'\n'User with email %s is registered already.': 'User with email %s is registered already.'\n'Username is used. Please use another one.': 'Username is already used. Please use another one.'\nContinue: Continue\n'Accepting terms of use': 'Accepting terms of use'\n'send confirmation email': 'send confirmation email'\n'edit user': 'edit user'\n'delete user': 'delete user'\n'Verified profile': 'Verified profile'\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Showing _START_ to _END_ of _TOTAL_ entries'\n'Send email to user:': 'Send email to user:'\n'No users found.': 'No users found.'\n'No records found.': 'No records found.'\n'No entries to show': 'No entries to show'\n'Display _MENU_ records': 'Display _MENU_ records'\n'Are you sure you want to {action}?': 'Are you sure you want to {action}?'\n'Active Logins': 'Active Logins'\n' - filtering from _MAX_ records': '- filtering from _MAX_ records'\n'User renamed.': 'User renamed.'\n'User attributes': 'User attributes'\n'Rename user $1': 'Rename user $1'\n'Username is used already': 'Username is used already'\n'User with id $1 not found': 'User with id $1 not found'\n'User was deleted.': 'User was deleted.'\n'User saved': 'User saved'\n'User id not specified': 'User id not specified'\n'User $1 created': 'User $1 created'\n'Send confirm email': 'Send confirm email'\n'Profile saved.': 'Profile saved.'\nPicture: Picture\n'Password updated': 'Password updated'\nNone: None\n'New confirmation email was sent to user.': 'New confirmation email was sent to user.'\n'Email is used already': 'Email is used already'\n'Edit your password': 'Change your password'\n'Edit user $1': 'Edit user $1'\n'Edit subscriptions': 'Edit subscriptions'\n'Edit profile': 'Edit profile'\n'Edit permissions': 'Edit permissions'\n'Create new account': 'Create new account'\n'Comment ban settings': 'Comment ban settings'\n'Ban for user $1 saved.': 'Ban for user $1 saved.'\n'User account is active': 'User account is active'\n'Allow users profile to be publicly displayed': 'Allow users profile to be publicly displayed'\n'Allow user access to login to site backend': 'Allow user access to login to site backend'\nTemplates: Templates\nUsername: Username\n'Last Name': 'Last Name'\n'First Name': 'First Name'\nEmail: Email\n'You were logged out.': 'You were logged out.'\n'Newscoop Subhead': 'Newscoop Subhead'\nFilters: Filters\n'Add new Author': 'Add new Author'\n'Loading Data': 'Loading Data'\n'Delete author type': 'Delete author type'\n'Cannot remove author type.': 'Cannot remove author type.'\n'Cannot remove author alias.': 'Cannot remove author alias.'\n'Author alias removed.': 'Author alias removed.'\n'Are you sure you want to delete this author?': 'Are you sure you want to delete this author?'\n'Are you sure you want to delete this author alias?': 'Are you sure you want to delete this author alias?'\n'All Author Types': 'All Author Types'\n'Add author type': 'Add author type'\n'You do not have the permission to change authors.': 'You do not have the permission to change authors.'\n'Please fill at least first name and last name.': 'Please fill at least first name and last name.'\n'Cannot add author type, this type already exists.': 'Cannot add author type, this type already exists.'\n'Author type removed.': 'Author type removed.'\n'Author type must be at least three characters long.': 'Author type must be at least three characters long.'\n'Author type added.': 'Author type added.'\n'Are you sure you want to delete this author type?': 'Are you sure you want to delete this author type?'\n'User may change authors': 'User may change authors'\n'Unable to add new image, target directory is not writable.': 'Unable to add new image, target directory is not writable.'\n'Author saved.': 'Author saved.'\n'Author deleted.': 'Author deleted.'\n'Enable Firefox spell checking by default': 'Enable Firefox spell checking by default'\n'User may use the editor status bar': 'User may use the editor status bar'\n'User may clear up the system cache': 'User may clear up the system cache'\n'Another user is registered with that e-mail address, please choose a different one.': 'Another user is registered with that e-mail address, please choose a different one.'\n'There was an error when trying to update the user info.': 'There was an error when trying to update the user info.'\n'User may moderate comments': 'User may moderate comments'\n'User may enable comments': 'User may enable comments'\n'User may translate articles': 'User may translate articles'\n'User may move articles': 'User may move articles'\n'User may find and replace': 'User may find and replace'\n'User may change system preferences': 'User may change system preferences'\n'User may attach topics to articles': 'User may attach topics to articles'\n'User may attach images to articles': 'User may attach images to articles'\n'User may add special characters': 'User may add special characters'\n'That user name already exists, please choose a different login name.': 'That user name already exists, please choose a different login name.'\n'User may delete article attachments': 'User may delete article attachments'\n'User may change article attachments': 'User may change article attachments'\n'User may add article attachments': 'User may add article attachments'\n'You do not have the right to create user accounts.': 'You do not have the right to create user accounts.'\n'You must select a $1': 'You must select a $1'\n'The password must be at least 6 characters long and both passwords should match.': 'The password must be at least 6 characters long and both passwords should match.'\n'The user account could not be created.': 'The user account could not be created.'\n'User account $1 was created successfully.': 'User account $1 was created successfully.'\n'You do not have the right to change user account permissions.': 'You do not have the right to change user account permissions.'\n'You do not have the right to change user account information.': 'You do not have the right to change user account information.'\n'The password you typed is incorrect.': 'The password you typed is incorrect.'\n'You do not have the right to delete user accounts.': 'You do not have the right to delete user accounts.'\n'User account $1 was deleted successfully.': 'User account $1 was deleted successfully.'\n'The IP Group $1 has been created.': 'The IP Group $1 has been created.'\n'There was an error creating the IP address group.': 'There was an error creating the IP address group.'\n'The IP address group $1 has been deleted.': 'The IP address group $1 has been deleted.'\n'User $1 information was changed successfully.': 'User $1 information was changed successfully.'\n'User Type': 'User Type'\n'The IP address group $1:$2 conflicts with another existing group.': 'The IP address group $1:$2 conflicts with another existing group.'\n'User may add/change publications': 'User may add/change publications'\n'Invalid value of user type parameter': 'Invalid value of user type parameter'\n'User may delete publications': 'User may delete publications'\n'User may add/change issues': 'User may add/change issues'\n'User may delete issues': 'User may delete issues'\n'User may add/change sections': 'User may add/change sections'\n'User may delete sections': 'User may delete sections'\n'User may add articles': 'User may add articles'\n'User may change articles': 'User may change articles'\n'User may delete articles': 'User may delete articles'\n'User may add images': 'User may add images'\n'User may change images': 'User may change images'\n'User may delete images': 'User may delete images'\n'User may delete templates': 'User may delete templates'\n'User may add/change staff accounts and passwords': 'User may add/change staff accounts and passwords'\n'User may add/change subscribers accounts and passwords': 'User may add/change subscribers accounts and passwords'\n'User may delete staff accounts': 'User may delete staff accounts'\n'User may manage user subscriptions': 'User may manage user subscriptions'\n'User may manage account types': 'User may manage account types'\n'User may add/change article types': 'User may add/change article types'\n'User may delete article types': 'User may delete article types'\n'User may manage templates': 'User may manage templates'\n'User may add/change country entries': 'User may add/change country entries'\n'User may add languages and manage language information': 'User may add languages and manage language information'\n'User may delete languages': 'User may delete languages'\n'User may view audit logs': 'User may view audit logs'\n'User may delete country entries': 'User may delete country entries'\n'User may manage localizer': 'User may manage localizer'\n'User may publish articles': 'User may publish articles'\n'User may manage topics': 'User may manage topics'\n'User may use bold': 'User may use bold'\n'User may use italic': 'User may use italic'\n'User may use underline': 'User may use underline'\n'User may use strikethrough': 'User may use strikethrough'\n'User may change text alignment': 'User may change text alignment'\n'User may copy, cut, and paste': 'User may copy, cut, and paste'\n'User may undo/redo': 'User may undo/redo'\n'User may change text direction': 'User may change text direction'\n'User may set indents': 'User may set indents'\n'User may add links': 'User may add links'\n'User may add subheads': 'User may add subheads'\n'User may insert images': 'User may insert images'\n'User may view the HTML source': 'User may view the HTML source'\n'User may enlarge the editor': 'User may enlarge the editor'\n'User may change the font face': 'User may change the font face'\n'User may change the font size': 'User may change the font size'\n'User may create bulleted lists': 'User may create bulleted lists'\n'User may create numbered lists': 'User may create numbered lists'\n'User may insert tables': 'User may insert tables'\n'User may insert horizontal rules': 'User may insert horizontal rules'\n'User may change the font color': 'User may change the font colour'\n'User may use superscripts': 'User may use superscripts'\n'User may use subscripts': 'User may use subscripts'\n'User may backup and restore the site data': 'User may backup and restore the site data'\nMiscellaneous: Miscellaneous\n'Staff/Subscribers Management': 'Staff/Subscribers Management'\n'Editor Basic Settings': 'Editor Basic Settings'\n'Editor Advanced Font Settings': 'Editor Advanced Font Settings'\n'Editor Table Settings': 'Editor Table Settings'\n'Administrative tasks': 'Administrative tasks'\n'User will be notified on several events': 'User will be notified on several events'\n'Editor Miscellaneous Settings': 'Editor Miscellaneous Settings'\n'No such user account.': 'No such user account.'\n'User image (full-size)': 'User image (full-size)'\n'User account is highlighted as \"featured account\"': 'User account is highlighted as \"featured account\"'\n'Custom attribute...': 'Custom attribute...'\n'An author with the same full name (combination of first and last name) already exists.': 'An author with the same full name (combination of first and last name) already exists.'\nusers:\n    label:\n        title: 'Users search'\n    menu:\n        manage: 'Manage Users'\n    created: Created\n    updated: Updated\n    status:\n        status: Status\n        registered: Registered\n        pending: Pending\n        deleted: Deleted\n        active: Active\n    table:\n        actions:\n            actions: Actions\n            edit: Edit\n            resend_email: 'Resend activation email'\n            rename: Rename\n            remove: Remove\n        confirm_remove: 'Do you really want to remove this user?'\n        table_messages:\n            page: Page\n            perPageText: 'Show: '\n            pageText: 'Pages: '\n            recordCountPageBoundTemplate: '{pageLowerBound} to {pageUpperBound} of'\n            recordCountPageUnboundedTemplate: '{recordsShown} of'\n            recordCountTotalTemplate: '{recordsQueryCount} {collectionName}'\n            recordCountFilteredTemplate: ' (filtered from {recordsTotal} total records)'\n            recordCountText: 'Showing '\n            recordCountTextTemplate: '{text} {pageTemplate} {totalTemplate} {filteredTemplate}'\n            recordCountTemplate: '<span id=''dynatable-record-count-{elementId}'' class=''dynatable-record-count''>{textTemplate}</span>'\n            processingText: Processing...\n    chart:\n        title: 'Active Logins'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.es.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: 'Sitio Web'\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: Geolocalización\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Mostrando de _START_ a _END_ el _TOTAL_ de entradas'\n'Send email to user:': null\n'No users found.': 'No se encontraron usuarios.'\n'No records found.': 'No se encontraron registros'\n'No entries to show': 'No se encontraron entradas'\n'Display _MENU_ records': 'Desplegar registros _MENU_'\n'Are you sure you want to {action}?': '¿Está seguro de querer {action}?'\n'Active Logins': null\n' - filtering from _MAX_ records': '-filtrando desde archivos _MAX_'\n'User renamed.': 'Se renombró el usuario.'\n'User attributes': 'Atributos del usuario'\n'Rename user $1': 'Renombrar al usuario $1'\n'Username is used already': 'Este usuario ya es utilizado.'\n'User with id $1 not found': 'No es posible ubicar al usuario identificado como $1'\n'User was deleted.': 'Se eliminó al usuario.'\n'User saved': 'Se almacenó el usuario'\n'User id not specified': 'No se específicó el identificador del usuario'\n'User $1 created': 'Se creó el usuario $1'\n'Send confirm email': 'Enviar mensaje de confirmación'\n'Profile saved.': 'Se almacenó el perfil.'\nPicture: Fotografía\n'Password updated': 'Se actualizó la contraseña'\nNone: Ninguno.\n'New confirmation email was sent to user.': 'Se envió al usuario un nuevo correo de confirmación.'\n'Email is used already': 'Ese correo electrónico ya está en uso'\n'Edit your password': 'Edite su clave de acceso'\n'Edit user $1': 'Editar el usuario $1'\n'Edit subscriptions': 'Editar subscripciones'\n'Edit profile': 'Editar perfil'\n'Edit permissions': 'Edite los permisos'\n'Create new account': 'Crear nueva cuenta'\n'Comment ban settings': 'Configuración para el bloqueo de comentarios'\n'Ban for user $1 saved.': 'Se registró al usuario $1 como bloqueado'\n'User account is active': 'La cuenta del usuario está activa'\n'Allow users profile to be publicly displayed': 'Permitir que el perfil del usuario sea público'\n'Allow user access to login to site backend': 'Permitir el acceso de los usuarios al backend del sitio'\nTemplates: Plantillas\nUsername: 'Nombre de usuario'\n'Last Name': Apellido\n'First Name': 'Primer nombre'\nEmail: 'Correo electrónico'\n'You were logged out.': 'Se ha cerrado sesión.'\n'Newscoop Subhead': 'Subtítulo de Newscoop'\nFilters: Filtros\n'Add new Author': 'Añadir nuevo autor'\n'Loading Data': 'Cargando los datos'\n'Delete author type': 'Eliminar tipo de autor'\n'Cannot remove author type.': 'No se puede eliminar este tipo de autor'\n'Cannot remove author alias.': 'No se puede eliminar el alias de este autor'\n'Author alias removed.': 'Se ha eliminado el alias del autor'\n'Are you sure you want to delete this author?': '¿Está seguro de eliminar este autor?'\n'Are you sure you want to delete this author alias?': '¿Está seguro de eliminar el alias de este autor?'\n'All Author Types': 'Todos los tipos de autor'\n'Add author type': 'Añadir tipo de autor'\n'You do not have the permission to change authors.': 'No tiene los privilegios para cambiar autores'\n'Please fill at least first name and last name.': 'Por favor ingrese al menos nombre y apellido.'\n'Cannot add author type, this type already exists.': 'No se puede añadir este tipo de autor porque ya existe.'\n'Author type removed.': 'Se ha removido este tipo de autor.'\n'Author type must be at least three characters long.': 'El tipo de autor debe tener al menos tres caractéres'\n'Author type added.': 'Se añadió tipo de autor'\n'Are you sure you want to delete this author type?': '¿Está seguro de eliminar este tipo de autor?'\n'User may change authors': 'El usuario puede cambiar autores'\n'Unable to add new image, target directory is not writable.': 'No es posible añadir una nueva imagen ya que el directorio no es modificable'\n'Author saved.': 'Se guardó el autor'\n'Author deleted.': 'Se eliminó el autor.'\n'Enable Firefox spell checking by default': 'Activar la corrección ortográfica de Firefox por default'\n'User may use the editor status bar': 'El usuario puede utilizar la barra de estado de editor.'\n'User may clear up the system cache': 'El usuario puede limpiar el caché del sistema.'\n'Another user is registered with that e-mail address, please choose a different one.': 'Otro usuario ya está registrado con ese e-mail, por favor escoga otro.'\n'There was an error when trying to update the user info.': 'Occurró un error al actualizar la información del usuario.'\n'User may moderate comments': 'El usuario puede moderar comentarios'\n'User may enable comments': 'El usuario puede activar comentarios'\n'User may translate articles': 'El usuario puede traducir los artículos'\n'User may move articles': 'El usuario puede mover los artículos'\n'User may find and replace': 'El usuario puede buscar y reemplazar'\n'User may change system preferences': 'El usuario puede modificar las preferencias de sistema'\n'User may attach topics to articles': 'El usuario puede crear tópicos para los artículos'\n'User may attach images to articles': 'El usuario puede agregar imágenes a los artículos'\n'User may add special characters': 'El usuario puede añadir caracteres especiales'\n'That user name already exists, please choose a different login name.': 'Ese nombre de usuario está en uso. Por favor escoja otro.'\n'User may delete article attachments': 'El usuario puede eliminar adjuntos del artículo'\n'User may change article attachments': 'El usuario puede cambiar adjuntos del artículo'\n'User may add article attachments': 'El usuario puede añadir adjuntos al artículo'\n'You do not have the right to create user accounts.': 'No tiene derecho a crear cuentas de usuario'\n'You must select a $1': 'Debe seleccionar a $1'\n'The password must be at least 6 characters long and both passwords should match.': 'La clave debe ser de al menos 6 caracteres y ambas claves deben combinar'\n'The user account could not be created.': 'La cuenta de usuario no pudo ser creada'\n'User account $1 was created successfully.': 'La cuenta del usuario $1 fue creada con éxito.'\n'You do not have the right to change user account permissions.': 'No tiene derechos para cambiar permisos de cuenta de usuario'\n'You do not have the right to change user account information.': 'No tiene derechos a cambiar información de cuenta de usuario'\n'The password you typed is incorrect.': 'La clave que escribio es incorrecta'\n'You do not have the right to delete user accounts.': 'No tiene derechos para borrar cuentas de usuarios'\n'User account $1 was deleted successfully.': 'La cuenta de usuario $1 fue eliminada con éxito.'\n'The IP Group $1 has been created.': 'El Grupo de IP $1 ha sido creado'\n'There was an error creating the IP address group.': 'Hubo un error al crear el grupo de dirección IP.'\n'The IP address group $1 has been deleted.': 'El Grupo de IP $1 ha sido borrado'\n'User $1 information was changed successfully.': 'La información del usuario $1 se modificó con éxito.'\n'User Type': 'Tipo de usuario'\n'The IP address group $1:$2 conflicts with another existing group.': 'El grupo de direcciones IP $1:$2 tiene conflicto con otro grupo existente.'\n'User may add/change publications': 'Usuario puede agregar/cambiar publicaciones'\n'Invalid value of user type parameter': 'Valor inválido del parámetro de tipo de usuario'\n'User may delete publications': 'Usuario puede borrar publicaciones'\n'User may add/change issues': 'Usuario puede agregar/cambiar ediciones'\n'User may delete issues': 'Usuario puede borrar ediciones'\n'User may add/change sections': 'Usuario puede agregar/cambiar secciones'\n'User may delete sections': 'Usuario puede borrar secciones'\n'User may add articles': 'Usuario puede agregar articulos'\n'User may change articles': 'Usuario puede cambiar articulos'\n'User may delete articles': 'Usuario puede borrar articulos'\n'User may add images': 'Usuario puede agregar imagenes'\n'User may change images': 'Usuario puede cambiar imagenes'\n'User may delete images': 'Usuario puede borrar imagenes'\n'User may delete templates': 'Usuario puede borrar plantillas'\n'User may add/change staff accounts and passwords': 'El usuario puede agregar/cambiar las cuentas y contraseñas de otros miembros del equipo'\n'User may add/change subscribers accounts and passwords': 'El usuario puede agregar/cambiar las cuentas y contraseñas de los suscriptores'\n'User may delete staff accounts': 'El usuario puede eliminar cuentas de otros miembros del equipo'\n'User may manage user subscriptions': 'Usuario puede manejar suscripciones de usuarios'\n'User may manage account types': 'Usuario puede manejar tipo de cuentas'\n'User may add/change article types': 'Usuario puede agregar/cambiar tipo de articulos'\n'User may delete article types': 'Usuario puede borrar tipo de articulos'\n'User may manage templates': 'El usuario puede administrar plantillas'\n'User may add/change country entries': 'El usuario puede agregar/cambiar los registros de país'\n'User may add languages and manage language information': 'Usuario puede agregar idiomas y manejar información de idiomas'\n'User may delete languages': 'Usuario puede borrar idiomas'\n'User may view audit logs': 'Usuario puede ver historial de auditoria'\n'User may delete country entries': 'Usuario puede borrar entrada de países'\n'User may manage localizer': 'Usuario puede manejar el localizador'\n'User may publish articles': 'Usuario puede publicar artículos'\n'User may manage topics': 'Usuario puede manejar temas'\n'User may use bold': 'El usuario puede utilizar negrita'\n'User may use italic': 'El usuario puede utilizar itálica'\n'User may use underline': 'El usuario puede subrayar'\n'User may use strikethrough': 'El usuario puede usar el efecto atravesado (strikethrough)'\n'User may change text alignment': 'El usuario puede cambiar la alineación del texto'\n'User may copy, cut, and paste': 'El usuario puede copiar, cortar y pegar'\n'User may undo/redo': 'El usuario puede deshacer/rehacer'\n'User may change text direction': 'El usuario puede cambiar la posición del texto'\n'User may set indents': 'El usuario puede establecer sangrías'\n'User may add links': 'El usuario puede añadir enlaces'\n'User may add subheads': 'El usuario puede añadir subtítulos'\n'User may insert images': 'El usuario puede insertar imágenes'\n'User may view the HTML source': 'El usuario puede ver el código HTML'\n'User may enlarge the editor': 'El usuario puede agrandar el tamaño del editor'\n'User may change the font face': 'El usuario puede cambiar el tipo de fuente'\n'User may change the font size': 'El usuario puede cambiar el tamaño de la fuente'\n'User may create bulleted lists': 'El usuario puede cr'\n'User may create numbered lists': 'El usuario puede crear listas numeradas'\n'User may insert tables': 'El usuario puede insertar tablas'\n'User may insert horizontal rules': 'El usuario puede insertar una línea horizontal'\n'User may change the font color': 'El usuario puede cambiar el color de la fuente'\n'User may use superscripts': 'El usuario puede usar superscripts'\n'User may use subscripts': 'El usuario puede usar subscripts'\n'User may backup and restore the site data': 'El usuario puede respaldar y recuperar la información del sitio'\nMiscellaneous: Misceláneo\n'Staff/Subscribers Management': 'Manejo de cuentas de miembros del equipo/suscriptores'\n'Editor Basic Settings': 'Preferencias básicas del editor'\n'Editor Advanced Font Settings': 'Preferencias de fuentes avanzadas del editor'\n'Editor Table Settings': 'Preferencias del editor de tablas'\n'Administrative tasks': 'Tareas administrativas'\n'User will be notified on several events': 'Usuario sera notificado en varios eventos'\n'Editor Miscellaneous Settings': 'Preferencias misceláneas del editor'\n'No such user account.': 'No existe cuenta de usuario'\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: 'Búsqueda de usuarios'\n    menu:\n        manage: 'Administrar usuarios'\n    created: Creado\n    updated: null\n    status:\n        status: Estatus\n        registered: Registrado\n        pending: Pendiente\n        deleted: Eliminado\n        active: activo\n    table:\n        actions:\n            actions: Acciones\n            edit: Editar\n            resend_email: null\n            rename: Renombrar\n            remove: Eliminar\n        confirm_remove: null\n        table_messages:\n            page: Página\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: Procesando...\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.es_AR.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': null\n'User may move articles': null\n'User may find and replace': null\n'User may change system preferences': null\n'User may attach topics to articles': null\n'User may attach images to articles': null\n'User may add special characters': null\n'That user name already exists, please choose a different login name.': null\n'User may delete article attachments': null\n'User may change article attachments': null\n'User may add article attachments': null\n'You do not have the right to create user accounts.': null\n'You must select a $1': null\n'The password must be at least 6 characters long and both passwords should match.': null\n'The user account could not be created.': null\n'User account $1 was created successfully.': null\n'You do not have the right to change user account permissions.': null\n'You do not have the right to change user account information.': null\n'The password you typed is incorrect.': null\n'You do not have the right to delete user accounts.': null\n'User account $1 was deleted successfully.': null\n'The IP Group $1 has been created.': null\n'There was an error creating the IP address group.': null\n'The IP address group $1 has been deleted.': null\n'User $1 information was changed successfully.': null\n'User Type': null\n'The IP address group $1:$2 conflicts with another existing group.': null\n'User may add/change publications': null\n'Invalid value of user type parameter': null\n'User may delete publications': null\n'User may add/change issues': null\n'User may delete issues': null\n'User may add/change sections': null\n'User may delete sections': null\n'User may add articles': null\n'User may change articles': null\n'User may delete articles': null\n'User may add images': null\n'User may change images': null\n'User may delete images': null\n'User may delete templates': null\n'User may add/change staff accounts and passwords': null\n'User may add/change subscribers accounts and passwords': null\n'User may delete staff accounts': null\n'User may manage user subscriptions': null\n'User may manage account types': null\n'User may add/change article types': null\n'User may delete article types': null\n'User may manage templates': null\n'User may add/change country entries': null\n'User may add languages and manage language information': null\n'User may delete languages': null\n'User may view audit logs': null\n'User may delete country entries': null\n'User may manage localizer': null\n'User may publish articles': null\n'User may manage topics': null\n'User may use bold': null\n'User may use italic': null\n'User may use underline': null\n'User may use strikethrough': null\n'User may change text alignment': null\n'User may copy, cut, and paste': null\n'User may undo/redo': null\n'User may change text direction': null\n'User may set indents': null\n'User may add links': null\n'User may add subheads': null\n'User may insert images': null\n'User may view the HTML source': null\n'User may enlarge the editor': null\n'User may change the font face': null\n'User may change the font size': null\n'User may create bulleted lists': null\n'User may create numbered lists': null\n'User may insert tables': null\n'User may insert horizontal rules': null\n'User may change the font color': null\n'User may use superscripts': null\n'User may use subscripts': null\n'User may backup and restore the site data': null\nMiscellaneous: null\n'Staff/Subscribers Management': null\n'Editor Basic Settings': null\n'Editor Advanced Font Settings': null\n'Editor Table Settings': null\n'Administrative tasks': null\n'User will be notified on several events': null\n'Editor Miscellaneous Settings': null\n'No such user account.': null\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: null\n        registered: null\n        pending: null\n        deleted: null\n        active: null\n    table:\n        actions:\n            actions: null\n            edit: null\n            resend_email: null\n            rename: null\n            remove: null\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.fa.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': null\n'User may move articles': null\n'User may find and replace': null\n'User may change system preferences': null\n'User may attach topics to articles': null\n'User may attach images to articles': null\n'User may add special characters': null\n'That user name already exists, please choose a different login name.': null\n'User may delete article attachments': null\n'User may change article attachments': null\n'User may add article attachments': null\n'You do not have the right to create user accounts.': null\n'You must select a $1': null\n'The password must be at least 6 characters long and both passwords should match.': null\n'The user account could not be created.': null\n'User account $1 was created successfully.': null\n'You do not have the right to change user account permissions.': null\n'You do not have the right to change user account information.': null\n'The password you typed is incorrect.': null\n'You do not have the right to delete user accounts.': null\n'User account $1 was deleted successfully.': null\n'The IP Group $1 has been created.': null\n'There was an error creating the IP address group.': null\n'The IP address group $1 has been deleted.': null\n'User $1 information was changed successfully.': null\n'User Type': null\n'The IP address group $1:$2 conflicts with another existing group.': null\n'User may add/change publications': null\n'Invalid value of user type parameter': null\n'User may delete publications': null\n'User may add/change issues': null\n'User may delete issues': null\n'User may add/change sections': null\n'User may delete sections': null\n'User may add articles': null\n'User may change articles': null\n'User may delete articles': null\n'User may add images': null\n'User may change images': null\n'User may delete images': null\n'User may delete templates': null\n'User may add/change staff accounts and passwords': null\n'User may add/change subscribers accounts and passwords': null\n'User may delete staff accounts': null\n'User may manage user subscriptions': null\n'User may manage account types': null\n'User may add/change article types': null\n'User may delete article types': null\n'User may manage templates': null\n'User may add/change country entries': null\n'User may add languages and manage language information': null\n'User may delete languages': null\n'User may view audit logs': null\n'User may delete country entries': null\n'User may manage localizer': null\n'User may publish articles': null\n'User may manage topics': null\n'User may use bold': null\n'User may use italic': null\n'User may use underline': null\n'User may use strikethrough': null\n'User may change text alignment': null\n'User may copy, cut, and paste': null\n'User may undo/redo': null\n'User may change text direction': null\n'User may set indents': null\n'User may add links': null\n'User may add subheads': null\n'User may insert images': null\n'User may view the HTML source': null\n'User may enlarge the editor': null\n'User may change the font face': null\n'User may change the font size': null\n'User may create bulleted lists': null\n'User may create numbered lists': null\n'User may insert tables': null\n'User may insert horizontal rules': null\n'User may change the font color': null\n'User may use superscripts': null\n'User may use subscripts': null\n'User may backup and restore the site data': null\nMiscellaneous: null\n'Staff/Subscribers Management': null\n'Editor Basic Settings': null\n'Editor Advanced Font Settings': null\n'Editor Table Settings': null\n'Administrative tasks': null\n'User will be notified on several events': null\n'Editor Miscellaneous Settings': null\n'No such user account.': null\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: null\n        registered: null\n        pending: null\n        deleted: null\n        active: null\n    table:\n        actions:\n            actions: null\n            edit: null\n            resend_email: null\n            rename: null\n            remove: null\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.fa_AF.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': null\n'User may move articles': null\n'User may find and replace': null\n'User may change system preferences': null\n'User may attach topics to articles': null\n'User may attach images to articles': null\n'User may add special characters': null\n'That user name already exists, please choose a different login name.': null\n'User may delete article attachments': null\n'User may change article attachments': null\n'User may add article attachments': null\n'You do not have the right to create user accounts.': null\n'You must select a $1': null\n'The password must be at least 6 characters long and both passwords should match.': null\n'The user account could not be created.': null\n'User account $1 was created successfully.': null\n'You do not have the right to change user account permissions.': null\n'You do not have the right to change user account information.': null\n'The password you typed is incorrect.': null\n'You do not have the right to delete user accounts.': null\n'User account $1 was deleted successfully.': null\n'The IP Group $1 has been created.': null\n'There was an error creating the IP address group.': null\n'The IP address group $1 has been deleted.': null\n'User $1 information was changed successfully.': null\n'User Type': null\n'The IP address group $1:$2 conflicts with another existing group.': null\n'User may add/change publications': null\n'Invalid value of user type parameter': null\n'User may delete publications': null\n'User may add/change issues': null\n'User may delete issues': null\n'User may add/change sections': null\n'User may delete sections': null\n'User may add articles': null\n'User may change articles': null\n'User may delete articles': null\n'User may add images': null\n'User may change images': null\n'User may delete images': null\n'User may delete templates': null\n'User may add/change staff accounts and passwords': null\n'User may add/change subscribers accounts and passwords': null\n'User may delete staff accounts': null\n'User may manage user subscriptions': null\n'User may manage account types': null\n'User may add/change article types': null\n'User may delete article types': null\n'User may manage templates': null\n'User may add/change country entries': null\n'User may add languages and manage language information': null\n'User may delete languages': null\n'User may view audit logs': null\n'User may delete country entries': null\n'User may manage localizer': null\n'User may publish articles': null\n'User may manage topics': null\n'User may use bold': null\n'User may use italic': null\n'User may use underline': null\n'User may use strikethrough': null\n'User may change text alignment': null\n'User may copy, cut, and paste': null\n'User may undo/redo': null\n'User may change text direction': null\n'User may set indents': null\n'User may add links': null\n'User may add subheads': null\n'User may insert images': null\n'User may view the HTML source': null\n'User may enlarge the editor': null\n'User may change the font face': null\n'User may change the font size': null\n'User may create bulleted lists': null\n'User may create numbered lists': null\n'User may insert tables': null\n'User may insert horizontal rules': null\n'User may change the font color': null\n'User may use superscripts': null\n'User may use subscripts': null\n'User may backup and restore the site data': null\nMiscellaneous: null\n'Staff/Subscribers Management': null\n'Editor Basic Settings': null\n'Editor Advanced Font Settings': null\n'Editor Table Settings': null\n'Administrative tasks': null\n'User will be notified on several events': null\n'Editor Miscellaneous Settings': null\n'No such user account.': null\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: null\n        registered: null\n        pending: null\n        deleted: null\n        active: null\n    table:\n        actions:\n            actions: null\n            edit: null\n            resend_email: null\n            rename: null\n            remove: null\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.fr.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: Courriel\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': 'lutilisateur peut traduire des articles '\n'User may move articles': 'Lutilisateur peut déplacer des articles'\n'User may find and replace': 'Ltilisateur peut trouver et remplacer '\n'User may change system preferences': 'Lutilisateur peut changer des préférences de système '\n'User may attach topics to articles': 'Lutilisateur peut attacher des sujets aux articles '\n'User may attach images to articles': 'lutilisateur peut attacher des images aux articles '\n'User may add special characters': 'Lutilisateur peut ajouter des caractères spéciaux '\n'That user name already exists, please choose a different login name.': 'Ce nom dutilisateur existe déjà , choisissez sil vous plaît un nom dutilisateur différent. '\n'User may delete article attachments': 'Lutilisateur peut supprimer des attachements darticle '\n'User may change article attachments': 'Lutilisateur peut changer des attachements darticle '\n'User may add article attachments': 'Lutilisateur peut ajouter des attachements darticle '\n'You do not have the right to create user accounts.': 'Vous navez pas le droit de créer des comptes dutilisateur. '\n'You must select a $1': 'Vous devez choisir un $1'\n'The password must be at least 6 characters long and both passwords should match.': 'Le mot de passe doit être au moins 6 caractères de longueur et tous les deux mots de passe doivent correspondre. '\n'The user account could not be created.': 'Le compte dutilisateur ne pouvait pas être créé. '\n'User account $1 was created successfully.': 'Le compte dutilisateur $1 a été créé avec succès. '\n'You do not have the right to change user account permissions.': 'Vous navez pas le droit de changer des permissions de compte dutilisateur. '\n'You do not have the right to change user account information.': 'Vous navez pas le droit de changer linformation du compte utilisateur. '\n'The password you typed is incorrect.': 'Le mot de passe que vous avez tapé est incorrect.'\n'You do not have the right to delete user accounts.': 'Vous navez pas le droit de supprimer des comptes dutilisateur. '\n'User account $1 was deleted successfully.': 'Le compte dutilisateur $1 a été supprimé avec succès. '\n'The IP Group $1 has been created.': 'Le  Groupe IP $1 a été créé'\n'There was an error creating the IP address group.': 'Il y avait une erreur créant le groupe dadresse IP. '\n'The IP address group $1 has been deleted.': 'Le   groupe dadresse IP 1$ a été supprimé. '\n'User $1 information was changed successfully.': 'linformation de lUtilisateur  $1  a été changé avec succès. '\n'User Type': 'Type dutilisateur'\n'The IP address group $1:$2 conflicts with another existing group.': 'Le groupe dadresse IP $1:$2 est en conflit avec un autre groupe existant. '\n'User may add/change publications': 'Lutilisateur peut ajouter/changer des publications'\n'Invalid value of user type parameter': 'Valeur incorrecte pour le paramètre du type utilisateur'\n'User may delete publications': 'Lutilisateur peut supprimer des publications'\n'User may add/change issues': 'Lutilisateur peut ajouter/changer des éditions'\n'User may delete issues': 'Lutilisateur peut supprimer des éditions'\n'User may add/change sections': 'Lutilisateur peut ajouter/changer des sections'\n'User may delete sections': 'Lutilisateur peut supprimer des sections'\n'User may add articles': 'Lutilisateur peut ajouter des articles'\n'User may change articles': 'Lutilisateur peut changer des articles'\n'User may delete articles': 'Lutilisateur peut supprimer des articles'\n'User may add images': 'Lutilisateur peut ajouter des images'\n'User may change images': 'Lutilisateur peut changer des images'\n'User may delete images': 'Lutilisateur peut supprimer des images'\n'User may delete templates': 'Lutilisateur peut supprimer des templates'\n'User may add/change staff accounts and passwords': 'Lutilisateur peut ajouter/changer les comptes et mots de passe du personnel'\n'User may add/change subscribers accounts and passwords': 'Lutilisateur peut ajouter/changer les comptes et mots de passe des abonnés'\n'User may delete staff accounts': 'Lutilisateur peut peut supprimer les comptes du personnel'\n'User may manage user subscriptions': 'Lutilisateur peut gérer les abonnements'\n'User may manage account types': 'Lutilisateur peut gérer des types de comptes'\n'User may add/change article types': 'Lutilisateur pout ajouter/changer des types darticles'\n'User may delete article types': 'Lutilisateur peut supprimer des types darticles'\n'User may manage templates': 'Lutilisateur peut gérer des templates'\n'User may add/change country entries': 'Lutilisateur peut ajouter/changer les données de pays'\n'User may add languages and manage language information': 'Lutilisteur peut ajouter des langues et gérer linformation de langue'\n'User may delete languages': 'Lutilisateur peut supprimer des langues'\n'User may view audit logs': 'Lutilisateur peut voir le fichier log'\n'User may delete country entries': 'Lutilisateur peut supprimer les entrées de pays'\n'User may manage localizer': 'Lutilisateur peut gérer localizer'\n'User may publish articles': 'Lutilisateur peut publier des articles'\n'User may manage topics': 'Lutilisateur peut gérer des sujets'\n'User may use bold': 'lutilisateur peut employer gras'\n'User may use italic': 'lutilisateur peut employer italique'\n'User may use underline': 'lutilisateur peut employer souligné'\n'User may use strikethrough': 'lutilisateur peut employer barré'\n'User may change text alignment': 'lutilisateur peut changer alignement de texte'\n'User may copy, cut, and paste': 'Lutilisateur peut copier, couper et coller'\n'User may undo/redo': 'Lutilisteur peut annuler/refaire'\n'User may change text direction': 'Lutilisateur peut changer la direction du texte'\n'User may set indents': 'Lutilisateur peut mettre des indentations'\n'User may add links': 'Lutilisateur peut ajouter des liens'\n'User may add subheads': 'Lutiliseteur peut ajouter des sous-titres'\n'User may insert images': 'Lutilisateur peut insérer des images'\n'User may view the HTML source': 'Lutilisteur peut voir le code source HTML'\n'User may enlarge the editor': 'Lutilisateur peut aggrandir la fenêtre dédidion'\n'User may change the font face': 'Lutlisateur peut changer la police'\n'User may change the font size': 'Lutilisateur peut changer la taille de la police'\n'User may create bulleted lists': 'Lutilisateur peut créer des listes à puces'\n'User may create numbered lists': 'Lutilisteur peut créer des listes numérotées'\n'User may insert tables': 'Lutilisateur peut insérer des tableaux'\n'User may insert horizontal rules': 'Lutilisteur peut insérer des traits horizontaux'\n'User may change the font color': 'Lutilisateur peut changer la couleur de la police'\n'User may use superscripts': 'Lutilisateur peut employer des indices supérieurs'\n'User may use subscripts': 'Lutilisateur peut employer des indices inférieurs'\n'User may backup and restore the site data': null\nMiscellaneous: Divers\n'Staff/Subscribers Management': 'Gestion Staffl/Abonnés '\n'Editor Basic Settings': 'Editeur des Paramètres de Base'\n'Editor Advanced Font Settings': 'Editeur Avancé des Paramètres de Police'\n'Editor Table Settings': 'Editeur des Paramètres de Tableau'\n'Administrative tasks': 'Tâches administratives'\n'User will be notified on several events': 'Lutilisateur sera notifié sur plusieurs événements'\n'Editor Miscellaneous Settings': 'Editeur des Paramètres Divers'\n'No such user account.': 'Pas  un tel compte utilisateur.'\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: Statut\n        registered: null\n        pending: null\n        deleted: null\n        active: Actif\n    table:\n        actions:\n            actions: Actions\n            edit: Editer\n            resend_email: null\n            rename: null\n            remove: Enlever\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.he.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': null\n'User may move articles': null\n'User may find and replace': null\n'User may change system preferences': null\n'User may attach topics to articles': null\n'User may attach images to articles': null\n'User may add special characters': null\n'That user name already exists, please choose a different login name.': null\n'User may delete article attachments': null\n'User may change article attachments': null\n'User may add article attachments': null\n'You do not have the right to create user accounts.': null\n'You must select a $1': null\n'The password must be at least 6 characters long and both passwords should match.': null\n'The user account could not be created.': null\n'User account $1 was created successfully.': null\n'You do not have the right to change user account permissions.': null\n'You do not have the right to change user account information.': null\n'The password you typed is incorrect.': null\n'You do not have the right to delete user accounts.': null\n'User account $1 was deleted successfully.': null\n'The IP Group $1 has been created.': null\n'There was an error creating the IP address group.': null\n'The IP address group $1 has been deleted.': null\n'User $1 information was changed successfully.': null\n'User Type': null\n'The IP address group $1:$2 conflicts with another existing group.': null\n'User may add/change publications': null\n'Invalid value of user type parameter': null\n'User may delete publications': null\n'User may add/change issues': null\n'User may delete issues': null\n'User may add/change sections': null\n'User may delete sections': null\n'User may add articles': null\n'User may change articles': null\n'User may delete articles': null\n'User may add images': null\n'User may change images': null\n'User may delete images': null\n'User may delete templates': null\n'User may add/change staff accounts and passwords': null\n'User may add/change subscribers accounts and passwords': null\n'User may delete staff accounts': null\n'User may manage user subscriptions': null\n'User may manage account types': null\n'User may add/change article types': null\n'User may delete article types': null\n'User may manage templates': null\n'User may add/change country entries': null\n'User may add languages and manage language information': null\n'User may delete languages': null\n'User may view audit logs': null\n'User may delete country entries': null\n'User may manage localizer': null\n'User may publish articles': null\n'User may manage topics': null\n'User may use bold': null\n'User may use italic': null\n'User may use underline': null\n'User may use strikethrough': null\n'User may change text alignment': null\n'User may copy, cut, and paste': null\n'User may undo/redo': null\n'User may change text direction': null\n'User may set indents': null\n'User may add links': null\n'User may add subheads': null\n'User may insert images': null\n'User may view the HTML source': null\n'User may enlarge the editor': null\n'User may change the font face': null\n'User may change the font size': null\n'User may create bulleted lists': null\n'User may create numbered lists': null\n'User may insert tables': null\n'User may insert horizontal rules': null\n'User may change the font color': null\n'User may use superscripts': null\n'User may use subscripts': null\n'User may backup and restore the site data': null\nMiscellaneous: null\n'Staff/Subscribers Management': null\n'Editor Basic Settings': null\n'Editor Advanced Font Settings': null\n'Editor Table Settings': null\n'Administrative tasks': null\n'User will be notified on several events': null\n'Editor Miscellaneous Settings': null\n'No such user account.': null\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: מצב\n        registered: null\n        pending: null\n        deleted: null\n        active: פעיל\n    table:\n        actions:\n            actions: פעילויות\n            edit: עריכה\n            resend_email: null\n            rename: null\n            remove: הסר\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: מעבד....\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.hr.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': 'Korisnik može prevoditi članke'\n'User may move articles': 'Korisnik može premještati članke'\n'User may find and replace': 'Korisnik može pretraživati i mijenjati'\n'User may change system preferences': 'Korisnik može mijenjati postavke sustava'\n'User may attach topics to articles': 'Korisnik može dodjeljivati teme člancima'\n'User may attach images to articles': 'Korisnik može dodjeljivati slike člancima'\n'User may add special characters': 'Korisnik može dodavati specijalne karaktere'\n'That user name already exists, please choose a different login name.': 'Korisničko ime već postoji, izaberite drugo ime za prijavu.'\n'User may delete article attachments': 'Korisnik može obrisati privitke članka'\n'User may change article attachments': 'Korisnik može promijeniti privitke članka'\n'User may add article attachments': 'Korisnik može dodati privitke članka'\n'You do not have the right to create user accounts.': 'Nemate ovlasti kreirati korisničke račune.'\n'You must select a $1': 'Trebate izabrati neki $1'\n'The password must be at least 6 characters long and both passwords should match.': 'Lozinka mora imati barem 6 znakova i obje lozinke moraju biti identične.'\n'The user account could not be created.': 'Korisnički račun ne može se kreirati.'\n'User account $1 was created successfully.': 'Korisnički račun $1 uspješno je kreiran.'\n'You do not have the right to change user account permissions.': 'Nemate ovlasti mijenjati dozvole za korisnički račun.'\n'You do not have the right to change user account information.': 'Nemate ovlasti mijenjati podatke korisnićkog računa.'\n'The password you typed is incorrect.': 'Lozinka koju ste unijeli je neispravna.'\n'You do not have the right to delete user accounts.': 'Nemate ovlasti brisati korisničke račune.'\n'User account $1 was deleted successfully.': 'Korisnički račun $1 je obrisan.'\n'The IP Group $1 has been created.': 'IP grupa $1 je kreirana.'\n'There was an error creating the IP address group.': 'Greška prilikom kreiranja grupe IP adresa.'\n'The IP address group $1 has been deleted.': 'Grupa IP adresa $1 je obrisana.'\n'User $1 information was changed successfully.': 'Informacije o korisniku $1 uspješno su promijenjene.'\n'User Type': 'Vrsta korisnika'\n'The IP address group $1:$2 conflicts with another existing group.': 'Grupa IP adresa $1:$2 poklapa se s postojećom grupom.'\n'User may add/change publications': 'Korisnik smije dodavati/mijenjati publikacije'\n'Invalid value of user type parameter': 'Pogrešna vrijednost parametra za vrstu korisnika'\n'User may delete publications': 'Korisnik smije brisati publikacije'\n'User may add/change issues': 'Korisnik smije dodavati/uređivati izdanja'\n'User may delete issues': 'Korisnik smije brisati izdanja'\n'User may add/change sections': 'Korisnik smije dodavati/uređivati rubrike'\n'User may delete sections': 'Korisnik smije brisati rubrike'\n'User may add articles': 'Korisnik smije dodavati članke'\n'User may change articles': 'Korisnik smije uređivati članke'\n'User may delete articles': 'Korisnik smije brisati članke'\n'User may add images': 'Korisnik smije dodavati slike'\n'User may change images': 'Korisnik smije mijenjati slike'\n'User may delete images': 'Korisnik smije brisati slike'\n'User may delete templates': 'Korisnik smije brisati predloške'\n'User may add/change staff accounts and passwords': 'Korisnik smije dodati/promijeniti lozinke i račune suradnika'\n'User may add/change subscribers accounts and passwords': 'Korisnik smije dodati/promijeniti račune i lozinke pretplatnika '\n'User may delete staff accounts': 'Korisnik smije brisati račune suradnika'\n'User may manage user subscriptions': 'Korisnik smije administrirati pretplatu'\n'User may manage account types': 'Korisnik smije uređivati vrste korisničkih računa'\n'User may add/change article types': 'Korisnik smije dodavati/mijenjati vrste članaka'\n'User may delete article types': 'Korisnik smije brisati vrste članaka'\n'User may manage templates': 'Korisnik smije uređivati predloške'\n'User may add/change country entries': 'Korisnik može dodati/promijeniti podatke o zemljama'\n'User may add languages and manage language information': 'Korisnik smije dodavati jezike i mijenjati relevantne informacije'\n'User may delete languages': 'Korisnik smije brisati jezike'\n'User may view audit logs': 'Korisnik ima pristup logovima'\n'User may delete country entries': 'Korisnik smije brisati unesene zemlje'\n'User may manage localizer': 'Korisnik smije koristiti lokalizator'\n'User may publish articles': 'Korisnik smije objavljivati članke'\n'User may manage topics': 'Korisnik smije upravljati temama'\n'User may use bold': 'Korisnik može koristiti masna slova (bold)'\n'User may use italic': 'Korisnik može koristiti kurziv (italic)'\n'User may use underline': 'Korisnik može koristiti podcrtavanje (underline)'\n'User may use strikethrough': 'Korisnik može koristiti precrtavanje (strikethrough)'\n'User may change text alignment': 'Korisnik može promijeniti poravnanje teksta'\n'User may copy, cut, and paste': 'Korisnik može kopirati, odrezati i zalijepiti (copy, cut i paste)'\n'User may undo/redo': 'Korisnik može koristiti undo/redo'\n'User may change text direction': 'Korisnik može promijeniti smjer teksta'\n'User may set indents': 'Korisnik može postaviti uvlake (indents)'\n'User may add links': 'Korisnik može dodati linkove'\n'User may add subheads': 'Korisnik može dodati podnaslove'\n'User may insert images': 'Korisnik može umetnuti sliku'\n'User may view the HTML source': 'Korisnik može vidjeti HTML izvor'\n'User may enlarge the editor': 'Korisnik može povećavati editor'\n'User may change the font face': 'Korisnik može mijenjati izgled pisma'\n'User may change the font size': 'Korisnik može mijenjati veličinu pisma'\n'User may create bulleted lists': 'Korisnik može kreirati liste bez rednih brojeva'\n'User may create numbered lists': 'Korisnik može kreirati liste s rednim brojevima'\n'User may insert tables': 'Korisnik može umetnuti tablice'\n'User may insert horizontal rules': 'Korisnik može umetnuti horizontalno ravnalo'\n'User may change the font color': 'Korisnik može promijeniti boju pisma'\n'User may use superscripts': 'Korisnik može koristiti gornji index (superscripts)'\n'User may use subscripts': 'Korisnik može koristiti donji index (subscripts)'\n'User may backup and restore the site data': null\nMiscellaneous: Razno\n'Staff/Subscribers Management': 'Upravljanje suradničkim/pretplatničkim nalozima'\n'Editor Basic Settings': 'Osnovno podešavanje editora'\n'Editor Advanced Font Settings': 'Napredno podešavanje pisma u editoru'\n'Editor Table Settings': 'Podešavanje tablica u editoru'\n'Administrative tasks': 'Administrativni poslovi'\n'User will be notified on several events': 'Korisnik će biti informiran o raznim sistemskim aktivnostima'\n'Editor Miscellaneous Settings': 'Razna podešavanja u editoru'\n'No such user account.': 'Nema tog korisničkog računa.'\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: Status\n        registered: null\n        pending: null\n        deleted: null\n        active: Aktivna\n    table:\n        actions:\n            actions: Radnje\n            edit: Uredi\n            resend_email: null\n            rename: null\n            remove: Ukloni\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.hu.yml",
    "content": "'Password confirmation does not match your password.': 'A jelszó megerősítése nem egyezik a jelszavaddal.'\n'Password Confirmation': 'Jelszó megerősítése'\nWebsite: Weblap\nTwitter: Twitter\n'Save profile': 'Profil mentése'\n'Profile image': Profilkép\nOrganisation: Szervezet\n'Last Name Public': 'Vezetéknév nyilvános'\nGoogle+: Google+\nGeolocation: 'Földrajzi hely'\nGender: Nem\n'First Name Public': 'Keresztnév nyilvános'\nFacebook: Facebook\n'Date of birth': 'Születési dátum'\n'Allow sending emails': 'E-mailek küldésének engedélyezése'\n'About me': Rólam\n'User with email %s is registered already.': 'A/z %s e-mail címmel rendelkező felhasználó regisztrált már.'\n'Username is used. Please use another one.': 'A felhasználónév használatban van. Válassz másikat.'\nContinue: Folytatás\n'Accepting terms of use': 'A használati feltételek elfogadása'\n'send confirmation email': 'megerősítő e-mail küldése'\n'edit user': 'felhasználó szerkesztése'\n'delete user': 'felhasználó törlése'\n'Verified profile': 'Ellenőrzött profil'\n'Showing _START_ to _END_ of _TOTAL_ entries': '_START_ - _END_. bejegyzés / _TOTAL_ megjelenítése'\n'Send email to user:': 'E-mail küldése a felhasználónak:'\n'No users found.': 'Nem találhatók felhasználók.'\n'No records found.': 'Nem találhatók rekordok.'\n'No entries to show': 'Nincsenek megjelenítendő bejegyzések'\n'Display _MENU_ records': '_MENU_ rekord megjelenítése'\n'Are you sure you want to {action}?': 'Biztosan {action} akarod?'\n'Active Logins': 'Aktív bejelentkezések'\n' - filtering from _MAX_ records': '- szűrés a _MAX_ rekordokból'\n'User renamed.': 'A felhasználó átnevezése megtörtént.'\n'User attributes': 'Felhasználói attribútumok'\n'Rename user $1': 'A/z $1 nevű felhasználó átnevezése'\n'Username is used already': 'A felhasználónév már használatban van'\n'User with id $1 not found': 'A/z $1 azonosítójú felhasználó nem található.'\n'User was deleted.': 'A felhasználó törlése megtörtént.'\n'User saved': 'A felhasználó mentése megtörtént.'\n'User id not specified': 'A felhasználóazonosító nincs meghatározva'\n'User $1 created': 'A/z $1 nevű felhasználó létrehozása megtörtént'\n'Send confirm email': 'Megerősítő e-mail küldése'\n'Profile saved.': 'A profil mentése megtörtént.'\nPicture: Kép\n'Password updated': 'A jelszó frissítése megtörtént'\nNone: Nincs\n'New confirmation email was sent to user.': 'Az új megerősítő e-mail elküldésre került a felhasználónak.'\n'Email is used already': 'Az e-mail cím már használatban van'\n'Edit your password': 'Jelszavad módosítása'\n'Edit user $1': 'A/z $1 nevű felhasználó szerkesztése'\n'Edit subscriptions': 'Előfizetések szerkesztése'\n'Edit profile': 'Profil szerkesztése'\n'Edit permissions': 'Engedélyek szerkesztése'\n'Create new account': 'Új fiók létrehozása'\n'Comment ban settings': 'Hozzászólás kitiltási beállításai'\n'Ban for user $1 saved.': 'A/z $1 nevű felhasználó kitiltásának mentése megtörtént.'\n'User account is active': 'A felhasználói fiók aktív'\n'Allow users profile to be publicly displayed': 'A felhasználói profil nyilvános megjelenésének engedélyezése'\n'Allow user access to login to site backend': 'A hely kiszolgáló oldalára való bejelentkezés hozzáférésének engedélyezése a felhasználó számára'\nTemplates: Sablonok\nUsername: Felhasználónév\n'Last Name': Vezetéknév\n'First Name': Keresztnév\nEmail: E-mail\n'You were logged out.': 'Ki voltál jelentkezve.'\n'Newscoop Subhead': 'Newscoop alcím'\nFilters: Szűrők\n'Add new Author': 'Új szerző hozzáadása'\n'Loading Data': 'Adatok betöltése'\n'Delete author type': 'Szerzőtípus törlése'\n'Cannot remove author type.': 'A szerzőtípus nem távolítható el.'\n'Cannot remove author alias.': 'A szerző aliasa nem távolítható el.'\n'Author alias removed.': 'A szerző aliasának eltávolítása megtörtént.'\n'Are you sure you want to delete this author?': 'Biztosan törölni akarod ezt a szerzőt?'\n'Are you sure you want to delete this author alias?': 'Biztosan törölni akarod ezt a szerző aliast?'\n'All Author Types': 'Minden szerzőtípus'\n'Add author type': 'Szerzőtípus hozzáadása'\n'You do not have the permission to change authors.': 'Nincs engedélyed a szerzők módosításához.'\n'Please fill at least first name and last name.': 'Töltsd ki legalább a keresztnevet és a vezetéknevet.'\n'Cannot add author type, this type already exists.': 'Nem adható hozzá a szerzőtípus, ez a típus már létezik.'\n'Author type removed.': 'A szerzőtípus eltávolítása megtörtént.'\n'Author type must be at least three characters long.': 'A szerzőtípusnak legalább három karakter hosszúnak kell lennie.'\n'Author type added.': 'A szerzőtípus hozzáadása megtörtént.'\n'Are you sure you want to delete this author type?': 'Biztosan törölni akarod ezt a szerzőtípust?'\n'User may change authors': 'A felhasználó módosíthatja a szerzőket'\n'Unable to add new image, target directory is not writable.': 'Nem lehet új képet hozzáadni, a célkönyvtár nem írható.'\n'Author saved.': 'A szerző mentése megtörtént.'\n'Author deleted.': 'A szerző törlése megtörtént.'\n'Enable Firefox spell checking by default': 'A Firefox helyesírás-ellenőrző alapértelmezettként való engedélyezése'\n'User may use the editor status bar': 'A felhasználó használhatja a szerkesztő állapotsorát.'\n'User may clear up the system cache': 'A felhasználó kiürítheti a rendszergyorsítótárat'\n'Another user is registered with that e-mail address, please choose a different one.': 'Egy másik felhasználó regisztrált már ezzel az e-mail címmel, válassz másikat.'\n'There was an error when trying to update the user info.': 'Hiba történt a felhasználói adatok frissítésének megkísérlésekor.'\n'User may moderate comments': 'A felhasználó moderálhatja a hozzászólásokat'\n'User may enable comments': 'A felhasználó engedélyezheti a hozzászólásokat'\n'User may translate articles': 'A felhasználó lefordíthatja a cikkeket'\n'User may move articles': 'A felhasználó áthelyezheti a cikkeket'\n'User may find and replace': 'A felhasználó kereshet és cserélhet'\n'User may change system preferences': 'A felhasználó módosíthatja a rendszerbeállításokat'\n'User may attach topics to articles': 'A felhasználó témákat csatolhat a cikkekhez'\n'User may attach images to articles': 'A felhasználó képeket csatolhat a cikkekhez'\n'User may add special characters': 'A felhasználó speciális karaktereket adhat hozzá'\n'That user name already exists, please choose a different login name.': 'Ez a felhasználónév már létezik, válassz másik bejelentkezési nevet.'\n'User may delete article attachments': 'A felhasználó törölheti a cikk csatolmányokat'\n'User may change article attachments': 'A felhasználó módosíthatja a cikk csatolmányokat'\n'User may add article attachments': 'A felhasználó cikk csatolmányokat adhat hozzá'\n'You do not have the right to create user accounts.': 'Nincs jogod a felhasználói fiókok létrehozásához.'\n'You must select a $1': 'Ki kell választanod egy $1 -t'\n'The password must be at least 6 characters long and both passwords should match.': 'A jelszónak legalább 6 karakter hosszúnak kell lennie, és mindkét jelszónak egyeznie kell.'\n'The user account could not be created.': 'Nem lehet létrehozni a felhasználói fiókot.'\n'User account $1 was created successfully.': 'A/z $1 felhasználói fiók létrehozása sikerült.'\n'You do not have the right to change user account permissions.': 'Nincs jogod a felhasználói fiók engedélyeinek módosításához.'\n'You do not have the right to change user account information.': 'Nincs jogod a felhasználói fiók adatainak módosításához.'\n'The password you typed is incorrect.': 'Az általad megadott jelszó téves.'\n'You do not have the right to delete user accounts.': 'Nincs jogod a felhasználói fiókok törléséhez.'\n'User account $1 was deleted successfully.': 'A/z $1 felhasználói fiók törlése sikerült.'\n'The IP Group $1 has been created.': 'A/z $1 IP-csoport létrehozása megtörtént.'\n'There was an error creating the IP address group.': 'Hiba történt az IP-címcsoport létrehozásakor.'\n'The IP address group $1 has been deleted.': 'A/z $1 IP-címcsoport törlése megtörtént.'\n'User $1 information was changed successfully.': 'A/z $1 nevű felhasználó adatainak módosítása sikerült. '\n'User Type': Felhasználótípus\n'The IP address group $1:$2 conflicts with another existing group.': 'A/z $1:$2 IP-címcsoport ütközik egy másik létező csoporttal.'\n'User may add/change publications': 'A felhasználó hozzáadhat/módosíthat kiadványokat'\n'Invalid value of user type parameter': 'A felhasználótípus paraméter értéke érvénytelen'\n'User may delete publications': 'A felhasználó törölhet kiadványokat'\n'User may add/change issues': 'A felhasználó hozzáadhat/módosíthat számokat'\n'User may delete issues': 'A felhasználó törölhet számokat'\n'User may add/change sections': 'A felhasználó hozzáadhat/módosíthat rovatokat'\n'User may delete sections': 'A felhasználó törölhet rovatokat'\n'User may add articles': 'A felhasználó hozzáadhat cikkeket'\n'User may change articles': 'A felhasználó módosíthat cikkeket'\n'User may delete articles': 'A felhasználó törölhet cikkeket'\n'User may add images': 'A felhasználó hozzáadhat képeket'\n'User may change images': 'A felhasználó módosíthat képeket'\n'User may delete images': 'A felhasználó törölhet képeket'\n'User may delete templates': 'A felhasználó törölhet sablonokat'\n'User may add/change staff accounts and passwords': 'A felhasználó hozzáadhat/módosíthat szerkesztőségi fiókokat és jelszavakat'\n'User may add/change subscribers accounts and passwords': 'A felhasználó hozzáadhat/módosíthat előfizetői fiókokat és jelszavakat'\n'User may delete staff accounts': 'A felhasználó törölhet szerkesztőségi fiókokat'\n'User may manage user subscriptions': 'A felhasználó kezelheti a felhasználói előfizetéseket'\n'User may manage account types': 'A felhasználó kezelhet fióktípusokat'\n'User may add/change article types': 'A felhasználó hozzáadhat/módosíthat cikktípusokat'\n'User may delete article types': 'A felhasználó törölhet cikktípusokat'\n'User may manage templates': 'A felhasználó kezelhet sablonokat'\n'User may add/change country entries': 'A felhasználó hozzáadhat/módosíthat ország bejegyzéseket'\n'User may add languages and manage language information': 'A felhasználó hozzáadhat nyelveket és kezelheti a nyelvi adatokat'\n'User may delete languages': 'A felhasználó törölhet nyelveket'\n'User may view audit logs': 'A felhasználó megtekintheti a naplófájlokat'\n'User may delete country entries': 'A felhasználó törölhet országbejegyzéseket'\n'User may manage localizer': 'A felhasználó kezelheti a lokalizálót'\n'User may publish articles': 'A felhasználó közzétehet cikkeket'\n'User may manage topics': 'A felhasználó kezelhet témákat'\n'User may use bold': 'A felhasználó használhat félkövér betűket'\n'User may use italic': 'A felhasználó használhat dőlt betűket'\n'User may use underline': 'A felhasználó használhat aláhúzást'\n'User may use strikethrough': 'A felhasználó használhat áthúzást'\n'User may change text alignment': 'A felhasználó módosíthatja a szövegigazítást'\n'User may copy, cut, and paste': 'A felhasználó másolhat, kivághat és beilleszthet'\n'User may undo/redo': 'A felhasználó visszavonhat/ismételhet'\n'User may change text direction': 'A felhasználó módosíthatja a szövegírányt'\n'User may set indents': 'A felhasználó behúzásokat adhat meg'\n'User may add links': 'A felhasználó hivatkozásokat adhat hozzá'\n'User may add subheads': 'A felhasználó alcímeket adhat hozzá'\n'User may insert images': 'A felhasználó képeket szúrhat be'\n'User may view the HTML source': 'A felhasználó megtekintheti a HTML-forrást'\n'User may enlarge the editor': 'A felhasználó felnagyíthatja a szerkesztőt'\n'User may change the font face': 'A felhasználó módosíthatja a betűtípust'\n'User may change the font size': 'A felhasználó módosíthatja a betűméretet'\n'User may create bulleted lists': 'A felhasználó listajeles felsorolásokat hozhat létre'\n'User may create numbered lists': 'A felhasználó számozott listákat hozhat létre'\n'User may insert tables': 'A felhasználó táblázatokat szúrhat be'\n'User may insert horizontal rules': 'A felhasználó vízszintes vonalakat szúrhat be'\n'User may change the font color': 'A felhasználó módosíthatja a betűszínt'\n'User may use superscripts': 'A felhasználó felső indexeket használhat'\n'User may use subscripts': 'A fehasználó alsó indexeket használhat'\n'User may backup and restore the site data': 'A felhasználó biztonsági másolatot készíthet a hely adatairól, és visszaállíthatja azokat'\nMiscellaneous: Egyebek\n'Staff/Subscribers Management': 'Szerkesztőség/előfizetők kezelése'\n'Editor Basic Settings': 'Szerkesztő alapbeállításai'\n'Editor Advanced Font Settings': 'Szerkesztő speciális betűtípus beállításai'\n'Editor Table Settings': 'Szerkesztő táblázat beállításai'\n'Administrative tasks': 'Felügyeleti feladatok'\n'User will be notified on several events': 'A felhasználó értesítést kap több eseményről'\n'Editor Miscellaneous Settings': 'Szerkesztő egyéb beállításai'\n'No such user account.': 'Nincs ilyen felhasználói fiók.'\n'User image (full-size)': 'Felhasználó képe (teljes méretű)'\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: 'Felhasználók keresése'\n    menu:\n        manage: 'Felhasználók kezelése'\n    created: Létrehozva\n    updated: Frissítve\n    status:\n        status: Állapot\n        registered: Regisztrált\n        pending: Függőben\n        deleted: Törölve\n        active: Aktív\n    table:\n        actions:\n            actions: Műveletek\n            edit: Szerkesztés\n            resend_email: 'Aktiválási e-mail újraküldése'\n            rename: Átnevezés\n            remove: Eltávolítás\n        confirm_remove: 'Valóban törölni akarod ezt a felhasználót?'\n        table_messages:\n            page: Oldal\n            perPageText: 'Megjelenítés:'\n            pageText: 'Oldalak:'\n            recordCountPageBoundTemplate: '{pageLowerBound} - {pageUpperBound} /'\n            recordCountPageUnboundedTemplate: '{recordsShown} /'\n            recordCountTotalTemplate: '{recordsQueryCount} {collectionName}'\n            recordCountFilteredTemplate: '(szűrve a  {recordsTotal} összes rekordbóé)'\n            recordCountText: 'Megjelenítve '\n            recordCountTextTemplate: '{text} {pageTemplate} {totalTemplate} {filteredTemplate}'\n            recordCountTemplate: '<span id=''dynatable-record-count-{elementId}'' class=''dynatable-record-count''>{textTemplate}</span>'\n            processingText: Feldolgozás...\n    chart:\n        title: 'Aktív bejelentkezések'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.hy.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': null\n'User may move articles': null\n'User may find and replace': null\n'User may change system preferences': null\n'User may attach topics to articles': null\n'User may attach images to articles': null\n'User may add special characters': null\n'That user name already exists, please choose a different login name.': null\n'User may delete article attachments': null\n'User may change article attachments': null\n'User may add article attachments': null\n'You do not have the right to create user accounts.': null\n'You must select a $1': null\n'The password must be at least 6 characters long and both passwords should match.': null\n'The user account could not be created.': null\n'User account $1 was created successfully.': null\n'You do not have the right to change user account permissions.': null\n'You do not have the right to change user account information.': null\n'The password you typed is incorrect.': null\n'You do not have the right to delete user accounts.': null\n'User account $1 was deleted successfully.': null\n'The IP Group $1 has been created.': null\n'There was an error creating the IP address group.': null\n'The IP address group $1 has been deleted.': null\n'User $1 information was changed successfully.': null\n'User Type': null\n'The IP address group $1:$2 conflicts with another existing group.': null\n'User may add/change publications': null\n'Invalid value of user type parameter': null\n'User may delete publications': null\n'User may add/change issues': null\n'User may delete issues': null\n'User may add/change sections': null\n'User may delete sections': null\n'User may add articles': null\n'User may change articles': null\n'User may delete articles': null\n'User may add images': null\n'User may change images': null\n'User may delete images': null\n'User may delete templates': null\n'User may add/change staff accounts and passwords': null\n'User may add/change subscribers accounts and passwords': null\n'User may delete staff accounts': null\n'User may manage user subscriptions': null\n'User may manage account types': null\n'User may add/change article types': null\n'User may delete article types': null\n'User may manage templates': null\n'User may add/change country entries': null\n'User may add languages and manage language information': null\n'User may delete languages': null\n'User may view audit logs': null\n'User may delete country entries': null\n'User may manage localizer': null\n'User may publish articles': null\n'User may manage topics': null\n'User may use bold': null\n'User may use italic': null\n'User may use underline': null\n'User may use strikethrough': null\n'User may change text alignment': null\n'User may copy, cut, and paste': null\n'User may undo/redo': null\n'User may change text direction': null\n'User may set indents': null\n'User may add links': null\n'User may add subheads': null\n'User may insert images': null\n'User may view the HTML source': null\n'User may enlarge the editor': null\n'User may change the font face': null\n'User may change the font size': null\n'User may create bulleted lists': null\n'User may create numbered lists': null\n'User may insert tables': null\n'User may insert horizontal rules': null\n'User may change the font color': null\n'User may use superscripts': null\n'User may use subscripts': null\n'User may backup and restore the site data': null\nMiscellaneous: null\n'Staff/Subscribers Management': null\n'Editor Basic Settings': null\n'Editor Advanced Font Settings': null\n'Editor Table Settings': null\n'Administrative tasks': null\n'User will be notified on several events': null\n'Editor Miscellaneous Settings': null\n'No such user account.': null\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': 'User account is highlighted as \"featured account\"'\n'Custom attribute...': 'Custom attribute...'\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: null\n        registered: null\n        pending: null\n        deleted: null\n        active: null\n    table:\n        actions:\n            actions: null\n            edit: null\n            resend_email: null\n            rename: null\n            remove: null\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.hy_AM.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': null\n'User may move articles': null\n'User may find and replace': null\n'User may change system preferences': null\n'User may attach topics to articles': null\n'User may attach images to articles': null\n'User may add special characters': null\n'That user name already exists, please choose a different login name.': null\n'User may delete article attachments': null\n'User may change article attachments': null\n'User may add article attachments': null\n'You do not have the right to create user accounts.': null\n'You must select a $1': null\n'The password must be at least 6 characters long and both passwords should match.': null\n'The user account could not be created.': null\n'User account $1 was created successfully.': null\n'You do not have the right to change user account permissions.': null\n'You do not have the right to change user account information.': null\n'The password you typed is incorrect.': null\n'You do not have the right to delete user accounts.': null\n'User account $1 was deleted successfully.': null\n'The IP Group $1 has been created.': null\n'There was an error creating the IP address group.': null\n'The IP address group $1 has been deleted.': null\n'User $1 information was changed successfully.': null\n'User Type': null\n'The IP address group $1:$2 conflicts with another existing group.': null\n'User may add/change publications': null\n'Invalid value of user type parameter': null\n'User may delete publications': null\n'User may add/change issues': null\n'User may delete issues': null\n'User may add/change sections': null\n'User may delete sections': null\n'User may add articles': null\n'User may change articles': null\n'User may delete articles': null\n'User may add images': null\n'User may change images': null\n'User may delete images': null\n'User may delete templates': null\n'User may add/change staff accounts and passwords': null\n'User may add/change subscribers accounts and passwords': null\n'User may delete staff accounts': null\n'User may manage user subscriptions': null\n'User may manage account types': null\n'User may add/change article types': null\n'User may delete article types': null\n'User may manage templates': null\n'User may add/change country entries': null\n'User may add languages and manage language information': null\n'User may delete languages': null\n'User may view audit logs': null\n'User may delete country entries': null\n'User may manage localizer': null\n'User may publish articles': null\n'User may manage topics': null\n'User may use bold': null\n'User may use italic': null\n'User may use underline': null\n'User may use strikethrough': null\n'User may change text alignment': null\n'User may copy, cut, and paste': null\n'User may undo/redo': null\n'User may change text direction': null\n'User may set indents': null\n'User may add links': null\n'User may add subheads': null\n'User may insert images': null\n'User may view the HTML source': null\n'User may enlarge the editor': null\n'User may change the font face': null\n'User may change the font size': null\n'User may create bulleted lists': null\n'User may create numbered lists': null\n'User may insert tables': null\n'User may insert horizontal rules': null\n'User may change the font color': null\n'User may use superscripts': null\n'User may use subscripts': null\n'User may backup and restore the site data': null\nMiscellaneous: null\n'Staff/Subscribers Management': null\n'Editor Basic Settings': null\n'Editor Advanced Font Settings': null\n'Editor Table Settings': null\n'Administrative tasks': null\n'User will be notified on several events': null\n'Editor Miscellaneous Settings': null\n'No such user account.': null\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: null\n        registered: null\n        pending: null\n        deleted: null\n        active: null\n    table:\n        actions:\n            actions: Գործողություններ\n            edit: null\n            resend_email: null\n            rename: null\n            remove: Հեռացնել\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.id.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': null\n'User may move articles': null\n'User may find and replace': null\n'User may change system preferences': null\n'User may attach topics to articles': null\n'User may attach images to articles': null\n'User may add special characters': null\n'That user name already exists, please choose a different login name.': null\n'User may delete article attachments': null\n'User may change article attachments': null\n'User may add article attachments': null\n'You do not have the right to create user accounts.': null\n'You must select a $1': null\n'The password must be at least 6 characters long and both passwords should match.': null\n'The user account could not be created.': null\n'User account $1 was created successfully.': null\n'You do not have the right to change user account permissions.': null\n'You do not have the right to change user account information.': null\n'The password you typed is incorrect.': null\n'You do not have the right to delete user accounts.': null\n'User account $1 was deleted successfully.': null\n'The IP Group $1 has been created.': null\n'There was an error creating the IP address group.': null\n'The IP address group $1 has been deleted.': null\n'User $1 information was changed successfully.': null\n'User Type': null\n'The IP address group $1:$2 conflicts with another existing group.': null\n'User may add/change publications': null\n'Invalid value of user type parameter': null\n'User may delete publications': null\n'User may add/change issues': null\n'User may delete issues': null\n'User may add/change sections': null\n'User may delete sections': null\n'User may add articles': null\n'User may change articles': null\n'User may delete articles': null\n'User may add images': null\n'User may change images': null\n'User may delete images': null\n'User may delete templates': null\n'User may add/change staff accounts and passwords': null\n'User may add/change subscribers accounts and passwords': null\n'User may delete staff accounts': null\n'User may manage user subscriptions': null\n'User may manage account types': null\n'User may add/change article types': null\n'User may delete article types': null\n'User may manage templates': null\n'User may add/change country entries': null\n'User may add languages and manage language information': null\n'User may delete languages': null\n'User may view audit logs': null\n'User may delete country entries': null\n'User may manage localizer': null\n'User may publish articles': null\n'User may manage topics': null\n'User may use bold': null\n'User may use italic': null\n'User may use underline': null\n'User may use strikethrough': null\n'User may change text alignment': null\n'User may copy, cut, and paste': null\n'User may undo/redo': null\n'User may change text direction': null\n'User may set indents': null\n'User may add links': null\n'User may add subheads': null\n'User may insert images': null\n'User may view the HTML source': null\n'User may enlarge the editor': null\n'User may change the font face': null\n'User may change the font size': null\n'User may create bulleted lists': null\n'User may create numbered lists': null\n'User may insert tables': null\n'User may insert horizontal rules': null\n'User may change the font color': null\n'User may use superscripts': null\n'User may use subscripts': null\n'User may backup and restore the site data': null\nMiscellaneous: null\n'Staff/Subscribers Management': null\n'Editor Basic Settings': null\n'Editor Advanced Font Settings': null\n'Editor Table Settings': null\n'Administrative tasks': null\n'User will be notified on several events': null\n'Editor Miscellaneous Settings': null\n'No such user account.': null\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: null\n        registered: null\n        pending: null\n        deleted: null\n        active: null\n    table:\n        actions:\n            actions: null\n            edit: null\n            resend_email: null\n            rename: null\n            remove: null\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.it.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: 'Sito web'\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: Geolocalizzazione\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Mostro voci da  _START_ a  _END_ di _TOTAL_'\n'Send email to user:': null\n'No users found.': null\n'No records found.': 'Nessuna voce trovata.'\n'No entries to show': 'Nessun elemento da mostrare'\n'Display _MENU_ records': 'Mostra _MENU_ voci'\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': 'Filtro da _MAX_ voci'\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': 'Lusername è già in uso'\n'User with id $1 not found': 'Lutente con ID $1 non esiste'\n'User was deleted.': 'Lutenza è stata cancellata'\n'User saved': 'Utenza salvata'\n'User id not specified': 'ID Utente non specificato'\n'User $1 created': 'Utenza $1 creata'\n'Send confirm email': 'Invia e-mail di conferma'\n'Profile saved.': 'Profilo memorizzato.'\nPicture: Foto\n'Password updated': 'Password aggiornata'\nNone: Nessuno\n'New confirmation email was sent to user.': 'Unaltra e-mail di conferma è stata inviata allutente'\n'Email is used already': 'Le-mail è già utilizzata'\n'Edit your password': 'Cambia la tua password'\n'Edit user $1': 'Modifica lutente $1'\n'Edit subscriptions': 'Modifica sottoscrizioni'\n'Edit profile': 'Modifica il profilo'\n'Edit permissions': 'Modifica permessi'\n'Create new account': 'Crea nuovo account'\n'Comment ban settings': 'Impostazioni blocco dei commenti'\n'Ban for user $1 saved.': 'Blocco per lutente $1 attivato.'\n'User account is active': 'Laccount utente è attivo'\n'Allow users profile to be publicly displayed': 'Consenti la visualizzazione al pubblico dei profili utente'\n'Allow user access to login to site backend': 'Consenti allutente di accedere al login del backend del sito'\nTemplates: Template\nUsername: 'Nome utente'\n'Last Name': Cognome\n'First Name': Nome\nEmail: Email\n'You were logged out.': 'Ti sei scollegato.'\n'Newscoop Subhead': 'Sottotitolo Newscoop'\nFilters: Filtri\n'Add new Author': 'Aggiungi autore'\n'Loading Data': 'Caricamento dati'\n'Delete author type': 'Elimina tipo autore'\n'Cannot remove author type.': 'Impossibile rimuovere tipo autore'\n'Cannot remove author alias.': 'Impossibile rimuovere alias autore.'\n'Author alias removed.': 'Alias autore rimosso.'\n'Are you sure you want to delete this author?': 'Vuoi davvero cancellare questo autore?'\n'Are you sure you want to delete this author alias?': 'Vuoi davvero eliminare questo alias autore?'\n'All Author Types': 'Tutti i tipi autore'\n'Add author type': 'Tutti i tipi autore'\n'You do not have the permission to change authors.': 'Non hai il permesso di cambiare autori.'\n'Please fill at least first name and last name.': 'Devi indicare almeno nome e cognome'\n'Cannot add author type, this type already exists.': 'Impossibile aggiungere tipo autore, questo tipo esiste già.'\n'Author type removed.': 'Tipo autore rimosso.'\n'Author type must be at least three characters long.': 'Il tipo autore deve essere lungo almeno 3 caratteri.'\n'Author type added.': 'Tipo autore aggiunto.'\n'Are you sure you want to delete this author type?': 'Vuoi davvero eliminare questo tipo autore?'\n'User may change authors': 'Lutente può  cambiare autori'\n'Unable to add new image, target directory is not writable.': 'Impossibile aggiungere immagine, non si può scrivere nella cartella di destinazione.'\n'Author saved.': 'Autore salvato.'\n'Author deleted.': 'Autore eliminato.'\n'Enable Firefox spell checking by default': 'Attivadi default il controllo ortografico di Firefox '\n'User may use the editor status bar': 'Lutente può usare la barra di stato delleditor'\n'User may clear up the system cache': 'Lutente può cancellare la cache di sistema'\n'Another user is registered with that e-mail address, please choose a different one.': 'Un altro utente ha usato questa e-mail per registrarsi, usane una diversa.'\n'There was an error when trying to update the user info.': 'Si è verificato un errore durante laggiornamento delle informazioni utente.'\n'User may moderate comments': 'Lutente può moderare commenti'\n'User may enable comments': 'Lutente può abilitare commenti'\n'User may translate articles': 'Lutente può tradurre articoli'\n'User may move articles': 'Lutente può spostare articoli'\n'User may find and replace': 'Lutente può trovare e sostituire'\n'User may change system preferences': 'Lutente può cambiare le preferenze di sistema'\n'User may attach topics to articles': 'Lutente può collegare argomenti ad articoli'\n'User may attach images to articles': 'Lutente può collegare immagini ad articoli'\n'User may add special characters': 'Lutente può aggiungere caratteri speciali'\n'That user name already exists, please choose a different login name.': 'Questo nome utente è già utilizzato, scegli un altro nome per il login.'\n'User may delete article attachments': 'Lutente può eliminare allegati degli articoli'\n'User may change article attachments': 'Lutente può cambiare allegati agli articoli'\n'User may add article attachments': 'Lutente può aggiungere allegati agli articoli'\n'You do not have the right to create user accounts.': 'Non hai il permesso di creare account utenti.'\n'You must select a $1': 'Devi selezionare un $1'\n'The password must be at least 6 characters long and both passwords should match.': 'La password deve essere di almeno 6 caratteri e le due password devono essere uguali.'\n'The user account could not be created.': 'Impossibile creare laccount utente.'\n'User account $1 was created successfully.': 'Laccount $1 è stato creato.'\n'You do not have the right to change user account permissions.': 'Non hai il permesso di cambiare i permessi utente.'\n'You do not have the right to change user account information.': 'Non hai il permesso di cambiare le informazioni degli account.'\n'The password you typed is incorrect.': 'La password inserita è errata.'\n'You do not have the right to delete user accounts.': 'Non hai il permesso di eliminare account.'\n'User account $1 was deleted successfully.': 'Laccount utente $1 è stato eliminato.'\n'The IP Group $1 has been created.': 'Il gruppo di indirizzi IP $1 è stato creato.'\n'There was an error creating the IP address group.': 'Si è verificato un errore durante la creazione del gruppo di indirizzi IP.'\n'The IP address group $1 has been deleted.': 'Il gruppo di indirizzi IP è stato rimosso.'\n'User $1 information was changed successfully.': 'Le informazioni dellutente $1 sono state cambiate.'\n'User Type': 'Tipo utente'\n'The IP address group $1:$2 conflicts with another existing group.': 'il gruppo di indirizzi IP $1:$2 va in conflitto con un altro gruppo esistente.'\n'User may add/change publications': 'Lutente può aggiungere/cambiare pubblicazioni'\n'Invalid value of user type parameter': 'Valore non valido per il parametro del tipo utente'\n'User may delete publications': 'Lutente può eliminare pubblicazioni'\n'User may add/change issues': 'Lutente può aggiungere/cambiare edizioni'\n'User may delete issues': 'Lutente può eliminare edizioni'\n'User may add/change sections': 'Lutente può aggiungere/cambiare sezioni'\n'User may delete sections': 'Lutente può eliminare sezioni'\n'User may add articles': 'Lutente può aggiungere articoli'\n'User may change articles': 'Lutente può cambiare articoli'\n'User may delete articles': 'Lutente può eliminare articoli'\n'User may add images': 'Lutente può aggiungere immagini'\n'User may change images': 'Lutente può cambiare immagini'\n'User may delete images': 'Lutente può eliminare immagini'\n'User may delete templates': 'Lutente può eliminare template'\n'User may add/change staff accounts and passwords': 'Lutente può aggiungere/cambiare account dello staff e password'\n'User may add/change subscribers accounts and passwords': 'Lutente può aggiungere/cambiare account e password degli iscritti'\n'User may delete staff accounts': 'Lutente può eliminare account dello staff'\n'User may manage user subscriptions': 'Lutente può gestire iscrizioni degli utenti'\n'User may manage account types': 'Lutente può gestire i tipi di account'\n'User may add/change article types': 'Lutente può aggiungere/cambiare tipi di articoli'\n'User may delete article types': 'Lutente può eliminare tipi di articoli'\n'User may manage templates': 'Lutente può gestire template'\n'User may add/change country entries': 'Lutente può aggiungere/cambiare nazioni'\n'User may add languages and manage language information': 'Lutente può aggiungere lingue e gestirne le informazioni'\n'User may delete languages': 'Lutente può eliminare lingue'\n'User may view audit logs': 'Lutente può vedere i log'\n'User may delete country entries': 'Lutente può eliminare nazioni'\n'User may manage localizer': 'Lutente può gestire le localizzazioni'\n'User may publish articles': 'Lutente può pubblicare articoli'\n'User may manage topics': 'Lutente può gestire argomenti'\n'User may use bold': 'Lutente può usare il grassetto'\n'User may use italic': 'Lutente può usare litaliaco'\n'User may use underline': 'Lutente può usare il sottolineato'\n'User may use strikethrough': 'Lutente può usare lo sbarrato'\n'User may change text alignment': 'Lutente può cambiare allineamento al testo'\n'User may copy, cut, and paste': 'Lutente può copiare, tagliare, incollare'\n'User may undo/redo': 'Lutente può annullare/rifare'\n'User may change text direction': 'Lutente può cambiare direzione del testo'\n'User may set indents': 'Lutente puo indentare'\n'User may add links': 'Lutente puo aggiungere links'\n'User may add subheads': 'Lutente puo aggiungere sottotitoli'\n'User may insert images': 'Lutente puo inserire imamgini'\n'User may view the HTML source': 'Lutente puo vedere il codice sorgente HTML'\n'User may enlarge the editor': 'Lutente puo allargare l-editor'\n'User may change the font face': 'Lutente puo cambiare font'\n'User may change the font size': 'Lutente puo cambiare grandezza del testo'\n'User may create bulleted lists': 'Lutente puo creare liste puntate'\n'User may create numbered lists': 'Lutente puo creare liste numerate'\n'User may insert tables': 'Lutente puo inserire tabelle'\n'User may insert horizontal rules': 'Lutente puo  inserire barre orizzontali'\n'User may change the font color': 'Lutente puo cambiare il colroe del testo'\n'User may use superscripts': 'Lutente puo usare apice'\n'User may use subscripts': 'Lutente puo usare pedice'\n'User may backup and restore the site data': 'Lutente puo fare e ripristinare backup del sito'\nMiscellaneous: Varie\n'Staff/Subscribers Management': 'Gestione Staff/sottoscrittori'\n'Editor Basic Settings': 'Impostazioni editor'\n'Editor Advanced Font Settings': 'Impostazioni avanzate Editor'\n'Editor Table Settings': 'Impostazioni tabelle editor'\n'Administrative tasks': 'Task amministrativi'\n'User will be notified on several events': 'Lutente sara notificato'\n'Editor Miscellaneous Settings': 'Impostazioni varie editor'\n'No such user account.': 'Laccount non esiste.'\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: 'Gestisci utenti'\n    created: Creato\n    updated: null\n    status:\n        status: Stato\n        registered: null\n        pending: null\n        deleted: Cancellato\n        active: Attivo\n    table:\n        actions:\n            actions: Azioni\n            edit: Modifica\n            resend_email: null\n            rename: null\n            remove: Rimuovi\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: Elaboro...\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.ka.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: ვებგვერდი\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: 'გეოგრაფიული მდებარეობა'\nGender: სქესი\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': 'დადასტურების ელფოსტის გაგზავნა'\n'edit user': 'მომხმარებლის რედაქტირება'\n'delete user': 'მომხმარებლის წაშლა'\n'Verified profile': 'გადამოწმებული პროფილი'\n'Showing _START_ to _END_ of _TOTAL_ entries': '_START_ to _END_ of _TOTAL_ ჩანაწერების ჩვენება'\n'Send email to user:': 'მომხმარებლისთვის ელფოსტის გაგზავნა:'\n'No users found.': 'მომხმარებელი ნაპოვნი არ არის.'\n'No records found.': 'ჩანაწერები ნაპოვნი არ არის.'\n'No entries to show': 'საჩვენებელი ჩანაწერები არ არის.'\n'Display _MENU_ records': '_MENU_ ჩანაწერების ჩვენება'\n'Are you sure you want to {action}?': 'დარწმუნებული ხართ, რომ გსურთ (მოქმედება)?'\n'Active Logins': 'აქტიური ავტორიზაციები'\n' - filtering from _MAX_ records': null\n'User renamed.': 'მომხმარებელის სახელი შეცვლილია. '\n'User attributes': 'მომხმარებლის ატრიბუტები'\n'Rename user $1': '$1 მომხმარებლის სახელის შეცვლა'\n'Username is used already': 'მომხმარებლის სახელი გამოყენებულია'\n'User with id $1 not found': ' მომხმარებელი საიდენტიფიკაციო ნომრით $1 არ მოიძებნა'\n'User was deleted.': 'მომხმარებელი წაიშალა. '\n'User saved': 'მომხმარებელი დამახსოვრებულია'\n'User id not specified': 'მომხმარებლის საიდენტიფიკაციო ნომერი არ არის მითითებული'\n'User $1 created': 'შეიქმნა მომხმარებელი $1'\n'Send confirm email': 'დადასტურების ელფოსტის გაგზავნა'\n'Profile saved.': 'პროფილი დამახსოვრებულია. '\nPicture: 'სურათი '\n'Password updated': 'პაროლი განახლებულია'\nNone: არცერთი\n'New confirmation email was sent to user.': 'ახალი დადასტურების ელფოსტა გაეგზავნა მომხმარებელს. '\n'Email is used already': 'ელფოსტა უკვე გამოყენებულია'\n'Edit your password': 'თქვენი პაროლის შეცვლა'\n'Edit user $1': ' $1 მომხმარებლის რედაქტირება'\n'Edit subscriptions': 'გამოწერების რედაქტირება'\n'Edit profile': 'პროფილის რედაქტირება'\n'Edit permissions': 'ნებართვების რედაქტიერბა'\n'Create new account': 'ახალი ანგარიშის შექმნა'\n'Comment ban settings': 'კომენტარის ბანის პარამეტრები'\n'Ban for user $1 saved.': 'ბანი $1 მომხმარებელზე დამახსოვრებულია.'\n'User account is active': 'მომხმარებლის ანგარიში აქტიურია'\n'Allow users profile to be publicly displayed': 'მომხმარებლის პროფილის საჯაროდ ჩვენება'\n'Allow user access to login to site backend': 'ნება დართეთ მომხმარებელს როგორც ადმინისტრატორი შევიდეს გვერდზე'\nTemplates: შაბლონები\nUsername: 'მომხმარებლის სახელი'\n'Last Name': 'გვარი '\n'First Name': სახელი\nEmail: ელფოსტა\n'You were logged out.': 'თქვენ გამოხვედით სისტემიდან.'\n'Newscoop Subhead': 'ნიუსქუფის ქვესათაური'\nFilters: ფილტრები\n'Add new Author': 'ახალი ავტორის დამატება'\n'Loading Data': 'მონაცემები იტვირთება'\n'Delete author type': 'ავტორის ტიპის წაშლა'\n'Cannot remove author type.': 'ავტორის ტიპის მოხსნა შეუძლებელია'\n'Cannot remove author alias.': 'ავტორის ფსევდონიმის მოხსნა შეუძლებელია.'\n'Author alias removed.': 'ავტორის ფსევდონიმი მოიხსნა'\n'Are you sure you want to delete this author?': 'დარწმუნებული ხართ რომ გსურთ ამ ავტორის წაშლა?'\n'Are you sure you want to delete this author alias?': 'დარწმუნებული ხართ რომ გსურთ ამ ავტორის ფსევდონიმის მოხსნა?'\n'All Author Types': 'ყველა ავტორის ტიპი'\n'Add author type': 'ავტორის ტიპის დამატება'\n'You do not have the permission to change authors.': 'თქვენ არ გაქვთ ავტორების შეცვლის უფლება.'\n'Please fill at least first name and last name.': 'გთხოვთ მინიმუმ შეიყვანოთ სახელი და გვარი.'\n'Cannot add author type, this type already exists.': 'ავტორის ტიპი დამატება შეუძლებელია, ის უკვე არსებობს.'\n'Author type removed.': 'ავტორის ტიპი მოიხსნა.'\n'Author type must be at least three characters long.': 'ავტორის ტიპი უნდა შეიცავდეს მინიმუმ 3 სიმბოლოს'\n'Author type added.': 'ავტორის ტიპი დაემატა'\n'Are you sure you want to delete this author type?': 'დარწმუნებული ხართ რომ გსურთ ამ ავტორის ტიპის წაშლა?'\n'User may change authors': 'მომხმარებელს შეუძლია ავტორების შეცვლა'\n'Unable to add new image, target directory is not writable.': 'შეუძლებელია ახალი გამოსახულების დამატება, სამიზნე დირექტორია არ არის გადაწერადი. '\n'Author saved.': 'ავტორი დამახსოვრდა'\n'Author deleted.': 'ავტორი წაიშალა'\n'Enable Firefox spell checking by default': 'Firefox-ის ორთოგრაფის ჩართვა'\n'User may use the editor status bar': 'მომხმარებელმა შეიძლება გამოიყენოს რედაქტორის სტატუს-პანელი.'\n'User may clear up the system cache': 'მომხმარებელს შეუძლია სისტემური ქეშის გაწმენდა.'\n'Another user is registered with that e-mail address, please choose a different one.': 'ეს იმეილი უკვე გამოყენებულია არსებული მომხმარებლის მიერ. გთხოვთ მიუთითოთ სხვა იმეილი.'\n'There was an error when trying to update the user info.': 'მომხმარებლის ინფორმაციის განახლებისას დაფიქსირდა შეცდომა.'\n'User may moderate comments': 'მომხმარებელს შეუძლია კომენტარების მართვა'\n'User may enable comments': 'მომხმარებელს შეუძლია კომენტარების ჩართვა'\n'User may translate articles': 'მომხმარებელს შეუძლია სტატიების თარგმნა'\n'User may move articles': 'მომხმარებელს შეუძლია სტატიების გადაადგილება'\n'User may find and replace': 'მომხმარებელს შეუძლია პოვნა და შეცვლა'\n'User may change system preferences': 'მომხმარებელს შეუძლია სისტემის პარამეტრების შეცვლა'\n'User may attach topics to articles': 'მომხმარებელს შეუძლია სტატიებზე თემების მიბმა'\n'User may attach images to articles': 'მომხმარებელს შეუძლია სტატიაზე სურათების მიბმა'\n'User may add special characters': 'მომხმარებელს შეუძლია გარდა ასოებისა სხვა სიმბოლოების დამატებაც'\n'That user name already exists, please choose a different login name.': 'ასეთი მომხმარებელი უკვე არსებობს, შეიყვანეთ სხვა სახელი'\n'User may delete article attachments': 'მომხმარებელს შეუძლია სტატიაზე მიბმული მასალის წაშლა'\n'User may change article attachments': 'მომხმარებელს შეუძლია სტატიაზე მიბმული მასალის შეცვლა'\n'User may add article attachments': 'მომხმარებელს შეუძლია სტატიაზე მასალის მიბმა'\n'You do not have the right to create user accounts.': 'თქვენ არ გაქვთ მომხმარებლების შექმნის უფლება'\n'You must select a $1': 'აირჩიეთ $1'\n'The password must be at least 6 characters long and both passwords should match.': 'პაროლი უნდა შეიცავდეს მინიმუმ 6 სიმბოლოს და ის უნდა ემთხვეოდეს ორივე ველში.'\n'The user account could not be created.': 'მომხმარებელი ვერ შეიქმნა.'\n'User account $1 was created successfully.': '$1 მომხმარებელი შეიქმნა.'\n'You do not have the right to change user account permissions.': 'თქვენ არ გაქვთ მომხმარებლის ნებართვების ცვლილების უფლება.'\n'You do not have the right to change user account information.': 'თქვენ არ გაქვთ მომხმარებლის ინფორმაციის ცვლილების უფლება.'\n'The password you typed is incorrect.': 'შეყვანილი პაროლი არასწორია.'\n'You do not have the right to delete user accounts.': 'თქვენ არ გაქვთ მომხმარებლის წაშლის უფლება'\n'User account $1 was deleted successfully.': 'მომხმარებელი $1 წაიშალა.'\n'The IP Group $1 has been created.': 'IP ჯგუფი $1 შეიქმნა'\n'There was an error creating the IP address group.': 'IP ჯგუფის შექმნისას დაფიქსირდა შეცდომა.'\n'The IP address group $1 has been deleted.': '$1 IP მისამართების ჯგუფი წაიშალა'\n'User $1 information was changed successfully.': '$1 მომხმარებელის ინფორმაცია შეიცვალა'\n'User Type': 'მომხმარებლის ტიპი'\n'The IP address group $1:$2 conflicts with another existing group.': 'IP მისამართის ჯგუფი $1:$2 ემთხვევა უკვე არსებულ ჯგუფს.'\n'User may add/change publications': 'მომხმარებელს შეუძლია დაამატოს/შეცვალოს პუბლიკაციები'\n'Invalid value of user type parameter': 'მომხმარებლის ტიპის პარამეტრის არასწორი მნიშვნელობა'\n'User may delete publications': 'მომხმარებელს შეუძლია პუბლიკაციების წაშლა'\n'User may add/change issues': 'მომხმარებელს შეუძლია გამოცემების დამატება/შეცვლა'\n'User may delete issues': 'მომხმარებელს შეუძლია გამოცემების წაშლა'\n'User may add/change sections': 'მომხმარებელს შეუძლია სექციების დამატება/შეცვლა'\n'User may delete sections': 'მომხმარებელს შეუძლია სექციების წაშლა'\n'User may add articles': 'მომხმარებელს შეუძლია სტატიების დამატება'\n'User may change articles': 'მომხმარებელს შეუძლია სტატიების შეცვლა'\n'User may delete articles': 'მომხმარებელს შეუძლია სტატიების წაშლა'\n'User may add images': 'მომხმარებელს შეუძლია სურათების დამატება'\n'User may change images': 'მომხმარებელს შეუძლია სურათების შეცვლა'\n'User may delete images': 'მომხმარებელს შეუძლია სურათების წაშლა'\n'User may delete templates': 'მომხმარებელს შეუძლია შაბლონების წაშლა'\n'User may add/change staff accounts and passwords': 'მომხმარებელს შეუძლია შტატის მომხმარებლების და პაროლების დამატება/შეცვლა'\n'User may add/change subscribers accounts and passwords': 'მომხმარებელს შეუძლია გამომწერი მომხმარებლების და პაროლების დამატება/შეცვლა'\n'User may delete staff accounts': 'მომხმარებელს შეუძლია შტატის მომხმარებლების წაშლა'\n'User may manage user subscriptions': 'მომხმარებელს შეუძლია გამოწერების მართვა'\n'User may manage account types': 'მომხმარებელს შეუძლია მომხმარებლის ტიპების მართვა'\n'User may add/change article types': 'მომხმარებელს შეუძლია სტატიის ტიპების დამატება/შეცვლა'\n'User may delete article types': 'მომხმარებელს შეუძლია სტატიის ტიპების წაშლა'\n'User may manage templates': 'მომხმარებელს შეუძლია შაბლონების მართვა'\n'User may add/change country entries': 'მომხმარებელს შეუძლია ქვეყნების დამატება/შეცვლა'\n'User may add languages and manage language information': 'მომხმარებელს შეუძლია ენების დამატება და ენის ინფორმაციის მართვა'\n'User may delete languages': 'მომხმარებელს შეუძლია ენების წაშლა'\n'User may view audit logs': 'მომხმარებელს შეუძლია აუდიტის აღრიცხვის ნახვა'\n'User may delete country entries': 'მომხმარებელს შეუძლია ქვეყნების წაშლა'\n'User may manage localizer': 'მომხმარებელს შეუძლია ლოკალიზატორის მართვა'\n'User may publish articles': 'მომხმარებელს შეუძლია სტატიების გამოქვეყნება'\n'User may manage topics': 'მომხმარებელს შეუძლია თემების მართვა'\n'User may use bold': 'მომხმარებელს შეუძლია სიმბოლოების გამუქება (bold)'\n'User may use italic': 'მომხმარებელს შეუძლია დახრილი სიმბოლოების გამოყენება (italic)'\n'User may use underline': 'მომხმარებელს შეუძლია ქვედახაზის გამოყენება (underline)'\n'User may use strikethrough': 'მომხმარებელს შეუძლია სიმბოლოებზე ხაზის გადასმა'\n'User may change text alignment': 'მომხმარებელს შეუძლია ტექსტის გამწკრივება'\n'User may copy, cut, and paste': 'მომხმარებელს შეუძლია კოპირება, ამოჭრა, ჩასმა.'\n'User may undo/redo': 'მომხმარებელს შეუძლია უკან დაბრუნება და წინ გადასვლა'\n'User may change text direction': 'მომხმარებელს შეუძია ტექსტის მიმართულების შეცვლა'\n'User may set indents': 'მომხმარებლეს შეუძლია დაშორებების მითითება'\n'User may add links': 'მომხმარებელს შეუძია ბმულების დამატება'\n'User may add subheads': 'მომხმარებელს შეუძია ქვეთავების დამატება'\n'User may insert images': 'მომხმარებელს შეუძლია სურათების ჩასმა'\n'User may view the HTML source': 'მომხმარებელს შეუძია HTML წყაროს ნახვა'\n'User may enlarge the editor': 'მომხმარებელს შეუძია რედაქტორის გადიდება'\n'User may change the font face': 'მომხმარებელს შეუძია შრიფტის შეცვლა'\n'User may change the font size': 'მომხმარებელს შეუძია შრიფტის ზომის შეცვლა'\n'User may create bulleted lists': 'მომხმარებელს შეუძია წერტილებიანი ჩამონათვალის გაკეთება'\n'User may create numbered lists': 'მომხმარებელს შეუძია რიცხვებიანი ჩამონათვალის გაკეთება'\n'User may insert tables': 'მომხმარებელს შეუძლია ცხრილების ჩასმა'\n'User may insert horizontal rules': 'მომხმარებელს შეუძლია ჰორიზონტალური სახაზავის ჩასმა'\n'User may change the font color': 'მომხმარებელს შეუძია ფონტის შრიფტის შეცვლა'\n'User may use superscripts': 'მომხმარებელს შეუძლია ზედა ინდექსის გამოყენება'\n'User may use subscripts': 'მომხმარებელს შეუძლია ქვედა ინდექსის გამოყენება'\n'User may backup and restore the site data': 'მომხმარებელს შეუძლია საიტის მასალის დარეზერვება და აღდგენა'\nMiscellaneous: სხვადასხვა\n'Staff/Subscribers Management': 'შტატის/გამომწერების მართვა'\n'Editor Basic Settings': 'რედაქტორის პარამეტრები'\n'Editor Advanced Font Settings': 'რედაქტორის შრიფტის პარამეტრები'\n'Editor Table Settings': 'რედაქტორის ცხრილების პარამეტრები'\n'Administrative tasks': 'ადმინისტრაციული დავალებები'\n'User will be notified on several events': 'მომხმარებელი რამდენიმე მოვლენების დროს მიიღებს შეტყობინება'\n'Editor Miscellaneous Settings': 'რედაქტორის სხვადასხვა პარამეტრები'\n'No such user account.': 'ასეთი მომხმარებელი არ არსებობს.'\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: 'მომხმარებლების მართვა'\n    created: შექმნილია\n    updated: null\n    status:\n        status: სტატუსი\n        registered: null\n        pending: null\n        deleted: წაიშალა\n        active: აქტიური\n    table:\n        actions:\n            actions: მოქმედება\n            edit: რედაქტირება\n            resend_email: null\n            rename: null\n            remove: მოხსნა\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: დამუშავება...\n    chart:\n        title: 'აქტიური ავტორიზაციები'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.ko.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': '사용자가 기사를 번역할 수 있습니다. '\n'User may move articles': '사용자가 기사를 이동할 수있습니다.'\n'User may find and replace': '사용자가 대치할 수 있습니다.'\n'User may change system preferences': '사용자가 시스템 구성를 변경할 수있습니다.'\n'User may attach topics to articles': '사용자가 기사에 토픽을 첨부할 수 있습니다.'\n'User may attach images to articles': '사용자가 기사에 이미지를 첨부할 수있습니다.'\n'User may add special characters': '사용자가 특수문자를 추가할 수 있습니다. '\n'That user name already exists, please choose a different login name.': '사용자 이름이 이미 존재합니다. 다른 아이디를 선택하시오.'\n'User may delete article attachments': '사용자가 기사 첨부를 삭제할 수있습니다. '\n'User may change article attachments': '사용자가 기사 첨부를 변경할 수 있습니다.'\n'User may add article attachments': '사용자가 기사 첨브를 추가할 수 있습니다. '\n'You do not have the right to create user accounts.': '사용자계정을 만들 권한이 없습니다. '\n'You must select a $1': '$1 을 선택하시오'\n'The password must be at least 6 characters long and both passwords should match.': '패스워드는 6글자 이상이어야 합니다. '\n'The user account could not be created.': '사용자 아이디를 생성할 수 없습니다.'\n'User account $1 was created successfully.': '사용자 아이디 $1 이 성공적으로 생성되었습니다.'\n'You do not have the right to change user account permissions.': '사용자 아이디 권한을 변경할 수 없습니다. '\n'You do not have the right to change user account information.': '사용자 아이디 정보를 변경할 권한이 없습니다. '\n'The password you typed is incorrect.': '입력한 패스워드가 틀립니다.'\n'You do not have the right to delete user accounts.': '사용자 아이디를 삭제할 권한이 없습니다. '\n'User account $1 was deleted successfully.': '사용자 아이디 $1 이 성공적으로 삭제되었습니다.'\n'The IP Group $1 has been created.': 'IP 그룹 $1 이 생성되었습니다.'\n'There was an error creating the IP address group.': ' IP 어드레스 그룹을 생성하는데 에러가 있습니다. '\n'The IP address group $1 has been deleted.': 'IP  어드레스 그룹 $1 이 삭제되었습니다. '\n'User $1 information was changed successfully.': '사용자 $1 정보가 성공적으로 변경되었습니다. '\n'User Type': '사용자 타입'\n'The IP address group $1:$2 conflicts with another existing group.': 'IP 어드레스 그룹 $1:$2 가 다른 기존 그룹과 중복됩니다. '\n'User may add/change publications': '사용자가 출판을 추가/수정할 수 있습니다.'\n'Invalid value of user type parameter': '사용자 타입 파라미터 값 비정상'\n'User may delete publications': '사용자가 출판을 삭제할 수 있습니다. '\n'User may add/change issues': '사용자가 이슈를 추가/수정할 수 있습니다.'\n'User may delete issues': '사용자가 이슈를 삭제할 수 있습니다. '\n'User may add/change sections': '사용자가 섹션을 추가/수정할 수 있습니다. '\n'User may delete sections': '사용자가 섹션을 삭제할 수 있습니다.'\n'User may add articles': '사용자가 기사를 추가할 수 있습니다.'\n'User may change articles': '사용자가 기사를 수정할 수 있습니다. '\n'User may delete articles': '사용자가 기사를 삭제 할 수 있습니다. '\n'User may add images': '사용자가 이미지를 추가할 수 있습니다. '\n'User may change images': '사용자가 이미지를 수정할 수 있습니다. '\n'User may delete images': '사용자가 이미지를 삭제할 수 있습니다.'\n'User may delete templates': '사용자가 템플레이트를 삭제할 수 있습니다. '\n'User may add/change staff accounts and passwords': '사용자가 스탭 아이디와 패스워드를 추가/수정할 수 있습니다.'\n'User may add/change subscribers accounts and passwords': '사용자가 구독자 아이디와 패스워드를 추가/수정할 수 있습니다. '\n'User may delete staff accounts': '사용자가 스탭 아이디를 삭제할 수 있습니다.'\n'User may manage user subscriptions': '사용자가 사용자 구독을 관리할 수 있습니다.'\n'User may manage account types': '사용자가 아이디 타입을 관리할 수 있습니다. '\n'User may add/change article types': '사용자가 기사 타입을 추가/수정할 수 있습니다.'\n'User may delete article types': '사용자가 기사 타입을 삭제할 수 있습니다.'\n'User may manage templates': '사용자가 템플레이트를 관리할 수 있습니다. '\n'User may add/change country entries': '사용자가 국가 엔트리를 추가/수정할 수 있습니다.'\n'User may add languages and manage language information': '사용자가 언어를 추가하고 언어정보를 관리할 수 있습니다.'\n'User may delete languages': '사용자가 언어를 삭제할 수 있습니다. '\n'User may view audit logs': '사용자가 오디트 로그를 볼 수 있습니다. '\n'User may delete country entries': '사용자가 국가 엔트리를 삭제할 수 있습니다. '\n'User may manage localizer': '사용자가 로컬라이저를 관리할 수있습니다. '\n'User may publish articles': '사용자가 기사를 출판할 수 있습니다. '\n'User may manage topics': '사용자가 토릭을 관리할 수 있습니다. '\n'User may use bold': '사용자가 볼드체를 사용할 수 있습니다. '\n'User may use italic': '사용자가 이태릭체를 사용할 수 있습니다. '\n'User may use underline': '사용자가 밑줄을 사용할 수 있습니다. '\n'User may use strikethrough': '사용자가 스트라이크스루를 사용할 수 있습니다. '\n'User may change text alignment': '사용자가 텍스트 정렬을 수정합니다. '\n'User may copy, cut, and paste': '사용자가 복사, 오려두기, 붙이기를 사용합니다. '\n'User may undo/redo': '사용자가 되돌리기/계속하기를 사용합니다. '\n'User may change text direction': '사용자가 텍스트 방향을 수정할 수 있습니다. '\n'User may set indents': '사용자가 들어가기를 사용할 수 있습니다. '\n'User may add links': '사용자가 링크를 추가할 수 있습니다. '\n'User may add subheads': '사용자가 서브헤드를 추가할 수 있습니다. '\n'User may insert images': '사용자가 이미지를 삽입합니다. '\n'User may view the HTML source': '사용자가 HTML 소스 보기를 합니다. '\n'User may enlarge the editor': '사용자가 에디터를 크게 합니다. '\n'User may change the font face': '사용자가 글자체를 수정합니다.'\n'User may change the font size': '사용자가 글자 크기를 수정합니다. '\n'User may create bulleted lists': '사용자가 뷸렛 리스트를 생성합니다. '\n'User may create numbered lists': '사용자가 넘버리스트를 생성합니다. '\n'User may insert tables': '사용자가 테이블을 삽입합니다. '\n'User may insert horizontal rules': '사용자가 수평줄자를 삽입합니다. '\n'User may change the font color': '사용자가 글자 색을 수정합니다. '\n'User may use superscripts': '사용자가 윗첨자를 사용합니다.'\n'User may use subscripts': '사용자가 아랫첨자를 사용합니다.'\n'User may backup and restore the site data': null\nMiscellaneous: 기타\n'Staff/Subscribers Management': '스탬/구독자 관리'\n'Editor Basic Settings': '에디터 기본 설정'\n'Editor Advanced Font Settings': '에디터 최신 글자 설정'\n'Editor Table Settings': '에디터 테이블 설정'\n'Administrative tasks': 관리기능\n'User will be notified on several events': '사용자가 여러 이벤트를 통보 받을 예정입니다. '\n'Editor Miscellaneous Settings': '에디터 기타 설정 '\n'No such user account.': '그런 아이디 없슴.'\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: 상태\n        registered: null\n        pending: null\n        deleted: null\n        active: 활성\n    table:\n        actions:\n            actions: 기능\n            edit: 편집\n            resend_email: null\n            rename: null\n            remove: 삭제\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.ku.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': null\n'User may move articles': null\n'User may find and replace': null\n'User may change system preferences': null\n'User may attach topics to articles': null\n'User may attach images to articles': null\n'User may add special characters': null\n'That user name already exists, please choose a different login name.': null\n'User may delete article attachments': null\n'User may change article attachments': null\n'User may add article attachments': null\n'You do not have the right to create user accounts.': null\n'You must select a $1': null\n'The password must be at least 6 characters long and both passwords should match.': null\n'The user account could not be created.': null\n'User account $1 was created successfully.': null\n'You do not have the right to change user account permissions.': null\n'You do not have the right to change user account information.': null\n'The password you typed is incorrect.': null\n'You do not have the right to delete user accounts.': null\n'User account $1 was deleted successfully.': null\n'The IP Group $1 has been created.': null\n'There was an error creating the IP address group.': null\n'The IP address group $1 has been deleted.': null\n'User $1 information was changed successfully.': null\n'User Type': null\n'The IP address group $1:$2 conflicts with another existing group.': null\n'User may add/change publications': null\n'Invalid value of user type parameter': null\n'User may delete publications': null\n'User may add/change issues': null\n'User may delete issues': null\n'User may add/change sections': null\n'User may delete sections': null\n'User may add articles': null\n'User may change articles': null\n'User may delete articles': null\n'User may add images': null\n'User may change images': null\n'User may delete images': null\n'User may delete templates': null\n'User may add/change staff accounts and passwords': null\n'User may add/change subscribers accounts and passwords': null\n'User may delete staff accounts': null\n'User may manage user subscriptions': null\n'User may manage account types': null\n'User may add/change article types': null\n'User may delete article types': null\n'User may manage templates': null\n'User may add/change country entries': null\n'User may add languages and manage language information': null\n'User may delete languages': null\n'User may view audit logs': null\n'User may delete country entries': null\n'User may manage localizer': null\n'User may publish articles': null\n'User may manage topics': null\n'User may use bold': null\n'User may use italic': null\n'User may use underline': null\n'User may use strikethrough': null\n'User may change text alignment': null\n'User may copy, cut, and paste': null\n'User may undo/redo': null\n'User may change text direction': null\n'User may set indents': null\n'User may add links': null\n'User may add subheads': null\n'User may insert images': null\n'User may view the HTML source': null\n'User may enlarge the editor': null\n'User may change the font face': null\n'User may change the font size': null\n'User may create bulleted lists': null\n'User may create numbered lists': null\n'User may insert tables': null\n'User may insert horizontal rules': null\n'User may change the font color': null\n'User may use superscripts': null\n'User may use subscripts': null\n'User may backup and restore the site data': null\nMiscellaneous: null\n'Staff/Subscribers Management': null\n'Editor Basic Settings': null\n'Editor Advanced Font Settings': null\n'Editor Table Settings': null\n'Administrative tasks': null\n'User will be notified on several events': null\n'Editor Miscellaneous Settings': null\n'No such user account.': null\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: null\n        registered: null\n        pending: null\n        deleted: null\n        active: null\n    table:\n        actions:\n            actions: null\n            edit: null\n            resend_email: null\n            rename: null\n            remove: null\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.lv.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': null\n'User may move articles': null\n'User may find and replace': null\n'User may change system preferences': null\n'User may attach topics to articles': null\n'User may attach images to articles': null\n'User may add special characters': null\n'That user name already exists, please choose a different login name.': null\n'User may delete article attachments': null\n'User may change article attachments': null\n'User may add article attachments': null\n'You do not have the right to create user accounts.': null\n'You must select a $1': null\n'The password must be at least 6 characters long and both passwords should match.': null\n'The user account could not be created.': null\n'User account $1 was created successfully.': null\n'You do not have the right to change user account permissions.': null\n'You do not have the right to change user account information.': null\n'The password you typed is incorrect.': null\n'You do not have the right to delete user accounts.': null\n'User account $1 was deleted successfully.': null\n'The IP Group $1 has been created.': null\n'There was an error creating the IP address group.': null\n'The IP address group $1 has been deleted.': null\n'User $1 information was changed successfully.': null\n'User Type': null\n'The IP address group $1:$2 conflicts with another existing group.': null\n'User may add/change publications': null\n'Invalid value of user type parameter': null\n'User may delete publications': null\n'User may add/change issues': null\n'User may delete issues': null\n'User may add/change sections': null\n'User may delete sections': null\n'User may add articles': null\n'User may change articles': null\n'User may delete articles': null\n'User may add images': null\n'User may change images': null\n'User may delete images': null\n'User may delete templates': null\n'User may add/change staff accounts and passwords': null\n'User may add/change subscribers accounts and passwords': null\n'User may delete staff accounts': null\n'User may manage user subscriptions': null\n'User may manage account types': null\n'User may add/change article types': null\n'User may delete article types': null\n'User may manage templates': null\n'User may add/change country entries': null\n'User may add languages and manage language information': null\n'User may delete languages': null\n'User may view audit logs': null\n'User may delete country entries': null\n'User may manage localizer': null\n'User may publish articles': null\n'User may manage topics': null\n'User may use bold': null\n'User may use italic': null\n'User may use underline': null\n'User may use strikethrough': null\n'User may change text alignment': null\n'User may copy, cut, and paste': null\n'User may undo/redo': null\n'User may change text direction': null\n'User may set indents': null\n'User may add links': null\n'User may add subheads': null\n'User may insert images': null\n'User may view the HTML source': null\n'User may enlarge the editor': null\n'User may change the font face': null\n'User may change the font size': null\n'User may create bulleted lists': null\n'User may create numbered lists': null\n'User may insert tables': null\n'User may insert horizontal rules': null\n'User may change the font color': null\n'User may use superscripts': null\n'User may use subscripts': null\n'User may backup and restore the site data': null\nMiscellaneous: null\n'Staff/Subscribers Management': null\n'Editor Basic Settings': null\n'Editor Advanced Font Settings': null\n'Editor Table Settings': null\n'Administrative tasks': null\n'User will be notified on several events': null\n'Editor Miscellaneous Settings': null\n'No such user account.': null\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: null\n        registered: null\n        pending: null\n        deleted: null\n        active: null\n    table:\n        actions:\n            actions: null\n            edit: null\n            resend_email: null\n            rename: null\n            remove: null\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.mr.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': null\n'User may move articles': null\n'User may find and replace': null\n'User may change system preferences': null\n'User may attach topics to articles': null\n'User may attach images to articles': null\n'User may add special characters': null\n'That user name already exists, please choose a different login name.': null\n'User may delete article attachments': null\n'User may change article attachments': null\n'User may add article attachments': null\n'You do not have the right to create user accounts.': null\n'You must select a $1': null\n'The password must be at least 6 characters long and both passwords should match.': null\n'The user account could not be created.': null\n'User account $1 was created successfully.': null\n'You do not have the right to change user account permissions.': null\n'You do not have the right to change user account information.': null\n'The password you typed is incorrect.': null\n'You do not have the right to delete user accounts.': null\n'User account $1 was deleted successfully.': null\n'The IP Group $1 has been created.': null\n'There was an error creating the IP address group.': null\n'The IP address group $1 has been deleted.': null\n'User $1 information was changed successfully.': null\n'User Type': null\n'The IP address group $1:$2 conflicts with another existing group.': null\n'User may add/change publications': null\n'Invalid value of user type parameter': null\n'User may delete publications': null\n'User may add/change issues': null\n'User may delete issues': null\n'User may add/change sections': null\n'User may delete sections': null\n'User may add articles': null\n'User may change articles': null\n'User may delete articles': null\n'User may add images': null\n'User may change images': null\n'User may delete images': null\n'User may delete templates': null\n'User may add/change staff accounts and passwords': null\n'User may add/change subscribers accounts and passwords': null\n'User may delete staff accounts': null\n'User may manage user subscriptions': null\n'User may manage account types': null\n'User may add/change article types': null\n'User may delete article types': null\n'User may manage templates': null\n'User may add/change country entries': null\n'User may add languages and manage language information': null\n'User may delete languages': null\n'User may view audit logs': null\n'User may delete country entries': null\n'User may manage localizer': null\n'User may publish articles': null\n'User may manage topics': null\n'User may use bold': null\n'User may use italic': null\n'User may use underline': null\n'User may use strikethrough': null\n'User may change text alignment': null\n'User may copy, cut, and paste': null\n'User may undo/redo': null\n'User may change text direction': null\n'User may set indents': null\n'User may add links': null\n'User may add subheads': null\n'User may insert images': null\n'User may view the HTML source': null\n'User may enlarge the editor': null\n'User may change the font face': null\n'User may change the font size': null\n'User may create bulleted lists': null\n'User may create numbered lists': null\n'User may insert tables': null\n'User may insert horizontal rules': null\n'User may change the font color': null\n'User may use superscripts': null\n'User may use subscripts': null\n'User may backup and restore the site data': null\nMiscellaneous: null\n'Staff/Subscribers Management': null\n'Editor Basic Settings': null\n'Editor Advanced Font Settings': null\n'Editor Table Settings': null\n'Administrative tasks': null\n'User will be notified on several events': null\n'Editor Miscellaneous Settings': null\n'No such user account.': null\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: null\n        registered: null\n        pending: null\n        deleted: null\n        active: null\n    table:\n        actions:\n            actions: null\n            edit: null\n            resend_email: null\n            rename: null\n            remove: null\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.nb_NO.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': null\n'User may move articles': null\n'User may find and replace': null\n'User may change system preferences': null\n'User may attach topics to articles': null\n'User may attach images to articles': null\n'User may add special characters': null\n'That user name already exists, please choose a different login name.': null\n'User may delete article attachments': null\n'User may change article attachments': null\n'User may add article attachments': null\n'You do not have the right to create user accounts.': null\n'You must select a $1': null\n'The password must be at least 6 characters long and both passwords should match.': null\n'The user account could not be created.': null\n'User account $1 was created successfully.': null\n'You do not have the right to change user account permissions.': null\n'You do not have the right to change user account information.': null\n'The password you typed is incorrect.': null\n'You do not have the right to delete user accounts.': null\n'User account $1 was deleted successfully.': null\n'The IP Group $1 has been created.': null\n'There was an error creating the IP address group.': null\n'The IP address group $1 has been deleted.': null\n'User $1 information was changed successfully.': null\n'User Type': null\n'The IP address group $1:$2 conflicts with another existing group.': null\n'User may add/change publications': null\n'Invalid value of user type parameter': null\n'User may delete publications': null\n'User may add/change issues': null\n'User may delete issues': null\n'User may add/change sections': null\n'User may delete sections': null\n'User may add articles': null\n'User may change articles': null\n'User may delete articles': null\n'User may add images': null\n'User may change images': null\n'User may delete images': null\n'User may delete templates': null\n'User may add/change staff accounts and passwords': null\n'User may add/change subscribers accounts and passwords': null\n'User may delete staff accounts': null\n'User may manage user subscriptions': null\n'User may manage account types': null\n'User may add/change article types': null\n'User may delete article types': null\n'User may manage templates': null\n'User may add/change country entries': null\n'User may add languages and manage language information': null\n'User may delete languages': null\n'User may view audit logs': null\n'User may delete country entries': null\n'User may manage localizer': null\n'User may publish articles': null\n'User may manage topics': null\n'User may use bold': null\n'User may use italic': null\n'User may use underline': null\n'User may use strikethrough': null\n'User may change text alignment': null\n'User may copy, cut, and paste': null\n'User may undo/redo': null\n'User may change text direction': null\n'User may set indents': null\n'User may add links': null\n'User may add subheads': null\n'User may insert images': null\n'User may view the HTML source': null\n'User may enlarge the editor': null\n'User may change the font face': null\n'User may change the font size': null\n'User may create bulleted lists': null\n'User may create numbered lists': null\n'User may insert tables': null\n'User may insert horizontal rules': null\n'User may change the font color': null\n'User may use superscripts': null\n'User may use subscripts': null\n'User may backup and restore the site data': null\nMiscellaneous: null\n'Staff/Subscribers Management': null\n'Editor Basic Settings': null\n'Editor Advanced Font Settings': null\n'Editor Table Settings': null\n'Administrative tasks': null\n'User will be notified on several events': null\n'Editor Miscellaneous Settings': null\n'No such user account.': null\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: null\n        registered: null\n        pending: null\n        deleted: null\n        active: null\n    table:\n        actions:\n            actions: null\n            edit: null\n            resend_email: null\n            rename: null\n            remove: null\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.nl.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': 'Gebruiker mag artikelen vertalen'\n'User may move articles': 'Gebruiker mag artikelen verplaatsen'\n'User may find and replace': 'Gebruiker mag zoeken en vervangen'\n'User may change system preferences': 'Gebruiker mag systeem voorkeuren wijzigen'\n'User may attach topics to articles': 'Gebruiker mag onderwerpen aan artikelen toevoegen'\n'User may attach images to articles': 'Gebruiker mag afbeeldingen aan artikelen toevoegen'\n'User may add special characters': 'Gebruiker mag speciale tekens invoegen'\n'That user name already exists, please choose a different login name.': 'Die gebruiker naam bestaat al, kies een andere login naam.'\n'User may delete article attachments': 'Gebruiker mag artikel bijlagen verwijderen'\n'User may change article attachments': 'Gebruiker mag artikel bijlagen wijzigen'\n'User may add article attachments': 'Gebruiker mag artikel bijlagen toevoegen'\n'You do not have the right to create user accounts.': null\n'You must select a $1': null\n'The password must be at least 6 characters long and both passwords should match.': 'Het wachtwoord moet minimaal 6 tekens bevatten en beiden wachtwoorden moeten overeenkomen.'\n'The user account could not be created.': 'Het gebruiker profiel kan niet worden gemaakt.'\n'User account $1 was created successfully.': 'Gebruiker profiel $1 was succesvol gemaakt.'\n'You do not have the right to change user account permissions.': null\n'You do not have the right to change user account information.': null\n'The password you typed is incorrect.': null\n'You do not have the right to delete user accounts.': null\n'User account $1 was deleted successfully.': 'Gebruiker profiel $1 werd succesvol verwijderd.'\n'The IP Group $1 has been created.': 'De IP group $1 is gemaakt.'\n'There was an error creating the IP address group.': 'Er was een fout bij het maken van de IP adres groep'\n'The IP address group $1 has been deleted.': 'De IP adres group $1 is verwijderd.'\n'User $1 information was changed successfully.': 'Gebruiker $1 informatie was succesvol gewijzigd.'\n'User Type': 'Gebruiker Type'\n'The IP address group $1:$2 conflicts with another existing group.': 'De IP adres group $1:$2 conflicteert met een andere bestaande groep.'\n'User may add/change publications': 'Gebruiker mag publicaties toegvoegen/wijzigen'\n'Invalid value of user type parameter': 'Verkeerde waarde bij de gebruikerstype parameter.'\n'User may delete publications': 'Gebruiker mag publicaties verwijderen'\n'User may add/change issues': 'Gebruiker mag uitgaven toevoegen/wijzigen'\n'User may delete issues': 'Gebruiker mag uitgaven verwijderen'\n'User may add/change sections': 'Gebruiker mag rubrieken toevoegen/wijzigen'\n'User may delete sections': 'Gebruiker mag rubrieken verwijderen'\n'User may add articles': 'Gebruiker mag artikelen toevoegen'\n'User may change articles': 'Gebruiker mag artikelen wijzigen'\n'User may delete articles': 'Gebruiker mag actikelen verwijderen'\n'User may add images': 'Gebruiker mag afbeeldingen toevoegen'\n'User may change images': 'Gebruiker mag afbeeldingen wijzigen'\n'User may delete images': 'Gebruiker mag afbeeldingen verwijderen'\n'User may delete templates': 'Gebruiker mag sjablonen verwijderen'\n'User may add/change staff accounts and passwords': 'Gebruiker mag leidinggevende profielen en wachwoorden toevoegen/wijzigen'\n'User may add/change subscribers accounts and passwords': 'Gebruiker mag abonnement profielen en wachtwoorden toevoegen/wijzigen'\n'User may delete staff accounts': 'Gebruiker mag leidinggevende profielen verwijderen'\n'User may manage user subscriptions': 'Gebruiker mag gebruiker abonnementen beheren'\n'User may manage account types': 'Gebruiker mag profiel typen beheren'\n'User may add/change article types': 'Gebruiker mag artikel typen toevoegen/wijzigen'\n'User may delete article types': 'Gebruiker mag artikel typen verwijderen'\n'User may manage templates': 'Gebruiker mag sjablonen beheren'\n'User may add/change country entries': 'Gebruiker mag landeren toevoegen/wijzigen'\n'User may add languages and manage language information': 'Gebruiker mag talen toevoegen en taalinformatie beheren'\n'User may delete languages': 'Gebruiker mag talen verwijderen'\n'User may view audit logs': 'Gebruiker mag audit logboek bekijken'\n'User may delete country entries': 'Gebruiker mag landen verwijderen'\n'User may manage localizer': 'Gebruiker mag nationaliseerder beheren'\n'User may publish articles': 'Gebruiker mag artikelen publiceren'\n'User may manage topics': 'Gebruiker mag onderwerpen beheren'\n'User may use bold': 'Gebruiker mag vet gebruiken'\n'User may use italic': 'Gebruiker mag cursief gebruiken'\n'User may use underline': 'Gebruiker mag onderstreep gebruiken'\n'User may use strikethrough': 'Gebruiker mag doorstreep gebruiker'\n'User may change text alignment': 'Gebruiker mag tekst uitvulling veranderen'\n'User may copy, cut, and paste': 'Gebruiker mag kopieren, knippen en plakken'\n'User may undo/redo': 'Gebruiker mag ongedaan maken/herhalen'\n'User may change text direction': 'Gebruiker mag tekst richting wijzigen'\n'User may set indents': 'Gebruiker mag inspringen zetten'\n'User may add links': 'Gebruiker mag links toevoegen'\n'User may add subheads': 'Gebruiker mag subtitels toevoegen'\n'User may insert images': 'Gebruiker mag afbeeldingen invoegen'\n'User may view the HTML source': 'Gebruiker mag de HTML broncode bekijken'\n'User may enlarge the editor': 'Gebruiker mag de de bewerker vergroten'\n'User may change the font face': 'Gebruiker mag het lettertype veranderen'\n'User may change the font size': 'Gebruiker mag de lettergrootte veranderen'\n'User may create bulleted lists': 'Gebruiker mag punt-lijsten maken'\n'User may create numbered lists': 'Gebruiker mag nummer-lijsten maken'\n'User may insert tables': 'Gebruiker mag tabellen maken'\n'User may insert horizontal rules': 'Gebruiker mag horizontale lijnen maken'\n'User may change the font color': 'Gebruiker mag de letterkleur veranderen'\n'User may use superscripts': 'Gebruiker mag superscript gebruiken'\n'User may use subscripts': 'Gebruiker mag subscript gebruiken'\n'User may backup and restore the site data': null\nMiscellaneous: Overig\n'Staff/Subscribers Management': 'Leidinggevenden/Abonnement beheer'\n'Editor Basic Settings': 'Bewerker Basis Instellingen'\n'Editor Advanced Font Settings': 'Bewerker Geavanceerde Lettertypen Instellingen'\n'Editor Table Settings': 'Bewerker Tabel Eigenschappen'\n'Administrative tasks': 'Administratieve taken'\n'User will be notified on several events': 'Gebruiker wordt geïnformeerd over verschillende acties'\n'Editor Miscellaneous Settings': 'Bewerker Overige Instellingen'\n'No such user account.': 'Profiel bestaat niet.'\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: Status\n        registered: null\n        pending: null\n        deleted: null\n        active: Actief\n    table:\n        actions:\n            actions: Acties\n            edit: Bewerken\n            resend_email: null\n            rename: null\n            remove: Verwijderen\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.pa.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': null\n'User may move articles': null\n'User may find and replace': null\n'User may change system preferences': null\n'User may attach topics to articles': null\n'User may attach images to articles': null\n'User may add special characters': null\n'That user name already exists, please choose a different login name.': null\n'User may delete article attachments': null\n'User may change article attachments': null\n'User may add article attachments': null\n'You do not have the right to create user accounts.': null\n'You must select a $1': null\n'The password must be at least 6 characters long and both passwords should match.': null\n'The user account could not be created.': null\n'User account $1 was created successfully.': null\n'You do not have the right to change user account permissions.': null\n'You do not have the right to change user account information.': null\n'The password you typed is incorrect.': null\n'You do not have the right to delete user accounts.': null\n'User account $1 was deleted successfully.': null\n'The IP Group $1 has been created.': null\n'There was an error creating the IP address group.': null\n'The IP address group $1 has been deleted.': null\n'User $1 information was changed successfully.': null\n'User Type': null\n'The IP address group $1:$2 conflicts with another existing group.': null\n'User may add/change publications': null\n'Invalid value of user type parameter': null\n'User may delete publications': null\n'User may add/change issues': null\n'User may delete issues': null\n'User may add/change sections': null\n'User may delete sections': null\n'User may add articles': null\n'User may change articles': null\n'User may delete articles': null\n'User may add images': null\n'User may change images': null\n'User may delete images': null\n'User may delete templates': null\n'User may add/change staff accounts and passwords': null\n'User may add/change subscribers accounts and passwords': null\n'User may delete staff accounts': null\n'User may manage user subscriptions': null\n'User may manage account types': null\n'User may add/change article types': null\n'User may delete article types': null\n'User may manage templates': null\n'User may add/change country entries': null\n'User may add languages and manage language information': null\n'User may delete languages': null\n'User may view audit logs': null\n'User may delete country entries': null\n'User may manage localizer': null\n'User may publish articles': null\n'User may manage topics': null\n'User may use bold': null\n'User may use italic': null\n'User may use underline': null\n'User may use strikethrough': null\n'User may change text alignment': null\n'User may copy, cut, and paste': null\n'User may undo/redo': null\n'User may change text direction': null\n'User may set indents': null\n'User may add links': null\n'User may add subheads': null\n'User may insert images': null\n'User may view the HTML source': null\n'User may enlarge the editor': null\n'User may change the font face': null\n'User may change the font size': null\n'User may create bulleted lists': null\n'User may create numbered lists': null\n'User may insert tables': null\n'User may insert horizontal rules': null\n'User may change the font color': null\n'User may use superscripts': null\n'User may use subscripts': null\n'User may backup and restore the site data': null\nMiscellaneous: null\n'Staff/Subscribers Management': null\n'Editor Basic Settings': null\n'Editor Advanced Font Settings': null\n'Editor Table Settings': null\n'Administrative tasks': null\n'User will be notified on several events': null\n'Editor Miscellaneous Settings': null\n'No such user account.': null\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: null\n        registered: null\n        pending: null\n        deleted: null\n        active: null\n    table:\n        actions:\n            actions: null\n            edit: null\n            resend_email: null\n            rename: null\n            remove: null\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.pl.yml",
    "content": "'Password confirmation does not match your password.': 'Powtórzone hasło jest inne niż podane wcześniej'\n'Password Confirmation': 'Powtórz hasło'\nWebsite: 'Strona internetowa'\nTwitter: Twitter\n'Save profile': 'Zapisz profil'\n'Profile image': 'Zdjęcie profilowe'\nOrganisation: Organizacja\n'Last Name Public': 'Pokazuj nazwisko'\nGoogle+: Google+\nGeolocation: Geololalizacja\nGender: Płeć\n'First Name Public': 'Pokazuj imię'\nFacebook: Facebook\n'Date of birth': 'Data urodzenia'\n'Allow sending emails': 'Zezwala na wysyłanie wiadomości'\n'About me': 'O sobie'\n'User with email %s is registered already.': 'Użytkownik z adresem email %s już istnieje.'\n'Username is used. Please use another one.': 'Ta nazwa użytkownika jest już zajęta, wybierz inną.'\nContinue: Dalej\n'Accepting terms of use': 'Akceptuję regulamin'\n'send confirmation email': 'Wyślij email potwierdzający'\n'edit user': 'Edytuj użytkownika'\n'delete user': 'Usuń użytkownika'\n'Verified profile': 'Profil zweryfikowany'\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Pokaz _START_ do _END_ ze _TOTAL_ wpisow'\n'Send email to user:': 'Wyślij email do użytkownika: '\n'No users found.': 'Nie znaleziono użytkowników.'\n'No records found.': 'Nie znaleziono rekordów.'\n'No entries to show': 'Brak wpisów do pokazania'\n'Display _MENU_ records': 'Pokaż _MENU_ rekordy'\n'Are you sure you want to {action}?': 'Jesteś pewien że chcesz {action}?'\n'Active Logins': 'Źródła logowania'\n' - filtering from _MAX_ records': '- filtrowanie z _MAX_ rekordów'\n'User renamed.': 'Nazwa użytkownika zmieniona.'\n'User attributes': 'Właściwości użytkownika'\n'Rename user $1': 'Zmień nazwę dla $1'\n'Username is used already': 'Ta nazwa użytkownika jest już zajęta'\n'User with id $1 not found': 'Użytkownik z id $1 nie istnieje.'\n'User was deleted.': 'Użytkownik został usuniety.'\n'User saved': 'Użytkownik został zapisany.'\n'User id not specified': 'Numer użytkownika nie został podany'\n'User $1 created': 'Stworzono użytkownika $1'\n'Send confirm email': 'Wyślij wiadomość email z potwierdzeniem'\n'Profile saved.': 'Zapisano profil.'\nPicture: Zdjęcie\n'Password updated': 'Hasło zostało zaktualizowane.'\nNone: Brak\n'New confirmation email was sent to user.': 'Nowa wiadomość email z potwierdzeniem została wysłana do użytkownika.'\n'Email is used already': 'Ten adres email jest już używany.'\n'Edit your password': 'Zmień swoje hasło'\n'Edit user $1': 'Edytuj użytkownika $1'\n'Edit subscriptions': 'Edytuj subskrybcje'\n'Edit profile': 'Edytuj profil'\n'Edit permissions': 'Zmień uprawnienia'\n'Create new account': 'Stwórz nowe konto'\n'Comment ban settings': 'Ustawienia blokowania komentarzy'\n'Ban for user $1 saved.': 'Blokada dla użytkownika $1 została zapisana.'\n'User account is active': 'Konto użytkownika jest aktywne.'\n'Allow users profile to be publicly displayed': 'Zezwól na publiczne wyświetlanie profilu użytkownika.'\n'Allow user access to login to site backend': 'Zezwól użytkownikowi na logowanie się do panelu administracyjnego.'\nTemplates: Szablony\nUsername: 'Nazwa użytkownika'\n'Last Name': Nazwisko\n'First Name': Imię\nEmail: Email\n'You were logged out.': 'Zostałeś wylogowany'\n'Newscoop Subhead': 'Podtytuł Newscoop'\nFilters: Filtry\n'Add new Author': 'Dodaj nowego Autora'\n'Loading Data': 'Ładowanie danych'\n'Delete author type': 'Usuń typ autora'\n'Cannot remove author type.': 'Nie można usunąć typu autora'\n'Cannot remove author alias.': 'Nie można usunąć aliasu autora.'\n'Author alias removed.': 'Alias autora został usunięty.'\n'Are you sure you want to delete this author?': 'Na pewno usunąć tego autora?'\n'Are you sure you want to delete this author alias?': 'Na pewno usunąć alias tego autora?'\n'All Author Types': 'Wszystkie typy autorów'\n'Add author type': 'Dodaj typ autora'\n'You do not have the permission to change authors.': 'Nie masz prawy aby zmienić autorów.'\n'Please fill at least first name and last name.': 'Proszę podaj imię i nazwisko.'\n'Cannot add author type, this type already exists.': 'Nie można dodać typu autora - podany typ już istnieje.'\n'Author type removed.': 'Typ autora usunięty.'\n'Author type must be at least three characters long.': 'Typ autora musi mieć co najmniej trzy znaki.'\n'Author type added.': 'Typ autora dodany.'\n'Are you sure you want to delete this author type?': 'Czy na pewno chcesz usunąć ten typ autora?'\n'User may change authors': 'Użytkownik może zmienić autorów'\n'Unable to add new image, target directory is not writable.': 'Nie można dodać nowego zdjęcia, docelowy folder nie jest zapisywalny.'\n'Author saved.': 'Autor dodany.'\n'Author deleted.': 'Autor usunięty.'\n'Enable Firefox spell checking by default': 'Aktywuj sprawdzanie pisowni przez Firefox domyślnie'\n'User may use the editor status bar': 'Użytkownik może używać pasku narzędzi edytora'\n'User may clear up the system cache': 'Użytkownik może czyścis cache systemowy'\n'Another user is registered with that e-mail address, please choose a different one.': 'Inny użytkownik korzysta z tego adresu email - podaj inny.'\n'There was an error when trying to update the user info.': 'Wystąpił błąd podczas aktualizacji informacji o użytkowniku.'\n'User may moderate comments': 'Użytkownik może moderować komentarze.'\n'User may enable comments': 'Użytkownik może aktywować komentarze'\n'User may translate articles': 'Użytkownik może tłumaczyć artykuły'\n'User may move articles': 'Użytkownik może przenosić artykuły'\n'User may find and replace': 'Użytkownik może szukać i zamieniać'\n'User may change system preferences': 'Użytkownik może zmieniać preferencje systemu'\n'User may attach topics to articles': 'Użytkownik może załączać tematy do artykułów'\n'User may attach images to articles': 'Użytkownik może załączać zdjęcia do artykułów'\n'User may add special characters': 'Użytkownik może dodawać znaki specjalne'\n'That user name already exists, please choose a different login name.': 'Ta nazwa użytkownika już istnieje, wybierz inną nazwę.'\n'User may delete article attachments': 'Użytkownik może usuwać załączniki artykułów'\n'User may change article attachments': 'Użytkownik może zmieniać załączniki artykułu'\n'User may add article attachments': 'Użytkownik może załączać do artykułu'\n'You do not have the right to create user accounts.': 'Nie masz praw aby dodawać konta użytkowników'\n'You must select a $1': 'Muszi wybrać $1'\n'The password must be at least 6 characters long and both passwords should match.': 'Hasło musi składać się z conajmniej 6 znaków'\n'The user account could not be created.': 'Konto użytkownika nie mogło zostac utworzone.'\n'User account $1 was created successfully.': 'Konto użytkownika zostało utworzone.'\n'You do not have the right to change user account permissions.': 'Nie masz praw aby zmienić prawa tego użytkownika.'\n'You do not have the right to change user account information.': 'Nie masz praw aby zmienić '\n'The password you typed is incorrect.': 'Wprowadzone hasło jest niepoprawne.'\n'You do not have the right to delete user accounts.': 'Nie masz praw aby usuwać konta użytkownika'\n'User account $1 was deleted successfully.': 'Konto użytkownika $1 zostało usunięte.'\n'The IP Group $1 has been created.': 'Grupa IP $1 została utworzona.'\n'There was an error creating the IP address group.': 'Wystąpił błąd podczas tworzenia grupy adresów IP.'\n'The IP address group $1 has been deleted.': 'Grupa adresów IP $1 została skasowana.'\n'User $1 information was changed successfully.': 'Informacje o użytkowniku $1 zostały zmienione.'\n'User Type': 'Typ użytkownika'\n'The IP address group $1:$2 conflicts with another existing group.': 'Grupa adresów IP $1:$2 jest w konflikcie z istniejącą grupą.'\n'User may add/change publications': 'Użytkownik może zmieniać/dodawać publikacje'\n'Invalid value of user type parameter': 'Nieprawidłowa zmienna typu użytkownika'\n'User may delete publications': 'Użytkownik może usuwać publikacje'\n'User may add/change issues': 'Użytkownik może zmieniać/dodawać wydania'\n'User may delete issues': 'Użytkownik może usuwać wydania'\n'User may add/change sections': 'Użytkownik może zmieniać/dodawać sekcje'\n'User may delete sections': 'Użytkownik może usuwać sekcje'\n'User may add articles': 'Użytkownik może dodawać artykuły'\n'User may change articles': 'Użytkownik może zmieniać artykuły'\n'User may delete articles': 'Użytkownik może usuwać artykuły'\n'User may add images': 'Użytkownik może dodawać zdjęcia'\n'User may change images': 'Użytkownik może zmieniać zdjęcia'\n'User may delete images': 'Użytkownik może usuwać zdjęcia'\n'User may delete templates': 'Użytkownik może usuwać szablony'\n'User may add/change staff accounts and passwords': 'Użytkownik może dodawać/zmieniać konta i hasła redakcyjne'\n'User may add/change subscribers accounts and passwords': 'Użytkownik może dodawać/zmieniać konta i hasła subskrynentów'\n'User may delete staff accounts': 'Użytkownik może usuwać konta redakcyjne'\n'User may manage user subscriptions': 'Użytkownik może zarządzać kontami subskrynentów'\n'User may manage account types': 'Użytkownik może zarządząć typami kont'\n'User may add/change article types': 'Użytkownik może dodawać/zmieniać typy artykułów'\n'User may delete article types': 'Użytkownik może usuwać typy artykułów'\n'User may manage templates': 'Użytkownik może zarządzać szablonami'\n'User may add/change country entries': 'Użytkownik może dodawać/zmieniać krajami'\n'User may add languages and manage language information': 'Użytkownik może dodawać języki i zarządzać informacjami o nich'\n'User may delete languages': 'Użytkownik może usuwać języki'\n'User may view audit logs': 'Użytkownik może widzieć logi'\n'User may delete country entries': 'Użytkownik może usuwać kraje'\n'User may manage localizer': 'Użytkownik może zarządzać lokalizatorrem'\n'User may publish articles': 'Użytkownik może publikować artykuły'\n'User may manage topics': 'Użytkownik może zarządzać tematami'\n'User may use bold': 'Użytkownik może używać pogrubionej czcionki'\n'User may use italic': 'Użytkownik może używać pochylonej czcionki'\n'User may use underline': 'Użytkownik może używać podkreślonej czcionki'\n'User may use strikethrough': 'Użytkownik może używać przekreślonej czcionki'\n'User may change text alignment': 'Użytkownik może zmieniać formatowanie tekstu'\n'User may copy, cut, and paste': 'Użytkownik może kopiować, wklejać i wycinać'\n'User may undo/redo': 'Użytkownik może cofać zmiany'\n'User may change text direction': 'Użytkownik może kierunek tekstu'\n'User may set indents': 'Użytkownik może dodawać paragrafy'\n'User may add links': 'Użytkownik może dodawać linki'\n'User may add subheads': 'Użytkownik może subnagłówki'\n'User may insert images': 'Użytkownik może dodawać zdjęcia'\n'User may view the HTML source': 'Użytkownik może widzieć kod HTML'\n'User may enlarge the editor': 'Użytkownik może powiększać edytor'\n'User may change the font face': 'Użytkownik może zmianiać czcionkę'\n'User may change the font size': 'Użytkownik może zmieniać rozmiar czcionki'\n'User may create bulleted lists': 'Użytkownik może tworzyć listy punktowane'\n'User may create numbered lists': 'Użytkownik może tworzyć listy numerowane'\n'User may insert tables': 'Użytkownik może dodawać tabele'\n'User may insert horizontal rules': 'Użytkownik może dodawać linie horyzontalne'\n'User may change the font color': 'Użytkownik może zmieniać kolor czcionki'\n'User may use superscripts': 'Użytkownik może używać superskryptów'\n'User may use subscripts': 'Użytkownik może używać podskryptów'\n'User may backup and restore the site data': 'Użytkownik może tworzyć i odzyskiwać kopie serwisu'\nMiscellaneous: Różne\n'Staff/Subscribers Management': 'Zarządzanie Redakcją/Subskrynentami'\n'Editor Basic Settings': 'Podstawowe ustawienia edytora'\n'Editor Advanced Font Settings': 'Zaawansowane ustawienia czcionek edytora'\n'Editor Table Settings': 'Ustawienia tabeli edytora'\n'Administrative tasks': 'Zadania administracyjne'\n'User will be notified on several events': 'Używkotnik będzie informowany przy kilku zdarzeniach.'\n'Editor Miscellaneous Settings': 'Dodatkowe ustawienia edytora'\n'No such user account.': 'Brak użytkownika.'\n'User image (full-size)': 'Obraz użytkownika (pełen rozmiar)'\n'User account is highlighted as \"featured account\"': 'Konto użytkownika jest oznaczone jako \"promowane konto\"'\n'Custom attribute...': 'Własna właściwość '\n'An author with the same full name (combination of first and last name) already exists.': 'Autor z tą samą nazwą (połączenie imienia i nazwiska) już istnieje.'\nusers:\n    label:\n        title: 'Wyszukiwarka uzytkowników'\n    menu:\n        manage: 'Zarządzaj użytkownikami'\n    created: Utworzony\n    updated: Zaktualizowany\n    status:\n        status: Status\n        registered: Zarejestrowany\n        pending: Oczekujący\n        deleted: Usuniety\n        active: Aktywny\n    table:\n        actions:\n            actions: Akcje\n            edit: Edytuj\n            resend_email: 'Wyślij mail aktywacyjny'\n            rename: 'Zmień nazwę'\n            remove: Usuń\n        confirm_remove: 'Na pewno chcesz usunąć tego użytkownika?'\n        table_messages:\n            page: Strona\n            perPageText: 'Pokazuje: '\n            pageText: 'Strony: '\n            recordCountPageBoundTemplate: '{pageLowerBound} do {pageUpperBound} z'\n            recordCountPageUnboundedTemplate: '{recordsShown} z'\n            recordCountTotalTemplate: '{recordsQueryCount} {collectionName}'\n            recordCountFilteredTemplate: ' (wyszukane z {recordsTotal} wszystkich wyników)'\n            recordCountText: 'Wyświetla '\n            recordCountTextTemplate: '{text} {pageTemplate} {totalTemplate} {filteredTemplate}'\n            recordCountTemplate: '<span id=''dynatable-record-count-{elementId}'' class=''dynatable-record-count''>{textTemplate}</span>'\n            processingText: Przetważanie...\n    chart:\n        title: 'Źródła logowania'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.ps.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': null\n'User may move articles': null\n'User may find and replace': null\n'User may change system preferences': null\n'User may attach topics to articles': null\n'User may attach images to articles': null\n'User may add special characters': null\n'That user name already exists, please choose a different login name.': null\n'User may delete article attachments': null\n'User may change article attachments': null\n'User may add article attachments': null\n'You do not have the right to create user accounts.': null\n'You must select a $1': null\n'The password must be at least 6 characters long and both passwords should match.': null\n'The user account could not be created.': null\n'User account $1 was created successfully.': null\n'You do not have the right to change user account permissions.': null\n'You do not have the right to change user account information.': null\n'The password you typed is incorrect.': null\n'You do not have the right to delete user accounts.': null\n'User account $1 was deleted successfully.': null\n'The IP Group $1 has been created.': null\n'There was an error creating the IP address group.': null\n'The IP address group $1 has been deleted.': null\n'User $1 information was changed successfully.': null\n'User Type': null\n'The IP address group $1:$2 conflicts with another existing group.': null\n'User may add/change publications': null\n'Invalid value of user type parameter': null\n'User may delete publications': null\n'User may add/change issues': null\n'User may delete issues': null\n'User may add/change sections': null\n'User may delete sections': null\n'User may add articles': null\n'User may change articles': null\n'User may delete articles': null\n'User may add images': null\n'User may change images': null\n'User may delete images': null\n'User may delete templates': null\n'User may add/change staff accounts and passwords': null\n'User may add/change subscribers accounts and passwords': null\n'User may delete staff accounts': null\n'User may manage user subscriptions': null\n'User may manage account types': null\n'User may add/change article types': null\n'User may delete article types': null\n'User may manage templates': null\n'User may add/change country entries': null\n'User may add languages and manage language information': null\n'User may delete languages': null\n'User may view audit logs': null\n'User may delete country entries': null\n'User may manage localizer': null\n'User may publish articles': null\n'User may manage topics': null\n'User may use bold': null\n'User may use italic': null\n'User may use underline': null\n'User may use strikethrough': null\n'User may change text alignment': null\n'User may copy, cut, and paste': null\n'User may undo/redo': null\n'User may change text direction': null\n'User may set indents': null\n'User may add links': null\n'User may add subheads': null\n'User may insert images': null\n'User may view the HTML source': null\n'User may enlarge the editor': null\n'User may change the font face': null\n'User may change the font size': null\n'User may create bulleted lists': null\n'User may create numbered lists': null\n'User may insert tables': null\n'User may insert horizontal rules': null\n'User may change the font color': null\n'User may use superscripts': null\n'User may use subscripts': null\n'User may backup and restore the site data': null\nMiscellaneous: null\n'Staff/Subscribers Management': null\n'Editor Basic Settings': null\n'Editor Advanced Font Settings': null\n'Editor Table Settings': null\n'Administrative tasks': null\n'User will be notified on several events': null\n'Editor Miscellaneous Settings': null\n'No such user account.': null\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: null\n        registered: null\n        pending: null\n        deleted: null\n        active: null\n    table:\n        actions:\n            actions: null\n            edit: null\n            resend_email: null\n            rename: null\n            remove: null\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.pt.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': 'Permissão para traduzir artigos'\n'User may move articles': 'Permissão para mover artigos'\n'User may find and replace': 'Permissão para Procurar e Substituir'\n'User may change system preferences': 'Permissão para alterar definições do sistema'\n'User may attach topics to articles': 'Permissão para adicionar temas a artigos'\n'User may attach images to articles': 'Permissão para adicionar imagens a artigos'\n'User may add special characters': 'Permissão para usar caracteres especiais'\n'That user name already exists, please choose a different login name.': 'Nome já existente, por favor escoha um diferente.'\n'User may delete article attachments': 'Permissão para eliminar anexos de artigos'\n'User may change article attachments': 'Permissão para alterar anexos de artigos'\n'User may add article attachments': 'Permissão para adicionar anexos a artigos'\n'You do not have the right to create user accounts.': 'Não tem permissões para criar utilizadores'\n'You must select a $1': 'Tem de escolher um(a) $1'\n'The password must be at least 6 characters long and both passwords should match.': 'A Palavra-passe tem de ter pelos menos 6 caracteres e ambas as palavras-passe devem coincidir'\n'The user account could not be created.': 'O Utilizador não pode ser criado'\n'User account $1 was created successfully.': 'Utilizador $1 criado com sucesso.'\n'You do not have the right to change user account permissions.': 'Não tem autorização para alterar permissões'\n'You do not have the right to change user account information.': 'Não tem permissão para alterar informações de Utilizador'\n'The password you typed is incorrect.': 'Palavra-passe incorrecta'\n'You do not have the right to delete user accounts.': 'Não tem persmissões para eliminar Utilizadores'\n'User account $1 was deleted successfully.': 'Utilizador $1 foi eliminado'\n'The IP Group $1 has been created.': 'O Grupo de IPs $1 foi criado'\n'There was an error creating the IP address group.': 'Ocorreu um erro na criação do Grupo de IPs'\n'The IP address group $1 has been deleted.': 'Grupo de IPs $1 foi eliminado'\n'User $1 information was changed successfully.': 'Informações do Utilizador $1 alteradas.'\n'User Type': 'Tipo de Utilizador'\n'The IP address group $1:$2 conflicts with another existing group.': 'Existe um conflito entre o Grupo de IPs $1:$2 com um já existente.'\n'User may add/change publications': 'Permissão para Criar/Alterar Publicações'\n'Invalid value of user type parameter': 'Valor inválido no parametro solicitado.'\n'User may delete publications': 'Permissão para Apagar Publicações'\n'User may add/change issues': 'Permissão para Criar/Alterar Edições'\n'User may delete issues': 'Permissão para Apagar Edições'\n'User may add/change sections': 'Permissão para Criar/Alterar Secções'\n'User may delete sections': 'Permissão para Apagar Secções'\n'User may add articles': 'Permissão para Criar Artigos'\n'User may change articles': 'Permissão para Alterar Artigos'\n'User may delete articles': 'Permissão para Apagar Artigos'\n'User may add images': 'Permissão para Adicionar Imagens'\n'User may change images': 'Permissão para Alterar Imagens'\n'User may delete images': 'Permissão para Apagar Imagens'\n'User may delete templates': 'Permissão para Apagar Modelos'\n'User may add/change staff accounts and passwords': 'Permissão para adicionar/alterar Utilizadores Pessoal Editorial (Contas e Palavras-Passe)'\n'User may add/change subscribers accounts and passwords': 'Permissão para adicionar/alterar Assinantes (Contas e Palavras-Passe)'\n'User may delete staff accounts': 'Permissão para eliminar Utilizadores Pessoal Editorial'\n'User may manage user subscriptions': 'Permissão para Gerir Assinaturas'\n'User may manage account types': 'Permissão para Gerir tipos de Utilizadores'\n'User may add/change article types': 'Permissão para Criar/Alterar tipos de Artigos'\n'User may delete article types': 'Permissão para Eliminar tipos de Artigos'\n'User may manage templates': 'Permissão para Gerir Modelos'\n'User may add/change country entries': 'Permissão para Adicionar/Alterar Paises'\n'User may add languages and manage language information': 'Permissão para Criar e Gerir Idiomas'\n'User may delete languages': 'Permissão para Apagar Idiomas'\n'User may view audit logs': 'Permissão para ver Registos de Utilização'\n'User may delete country entries': 'Permissão para Apagar Países'\n'User may manage localizer': 'Permissão para Gerir o Localizador'\n'User may publish articles': 'Permissão para Publicar Artigos'\n'User may manage topics': 'Permissão para Gerir Temas'\n'User may use bold': 'Permissão para usar Negrito'\n'User may use italic': 'Permissão para usar itálico'\n'User may use underline': 'Permissão para usar sublinhado'\n'User may use strikethrough': 'Permissão para usar rasurado'\n'User may change text alignment': 'Permissão para alterar alinhamento do texto'\n'User may copy, cut, and paste': 'Permissão para copiar, cortar e colar'\n'User may undo/redo': 'Permissão para desfazer/refazer'\n'User may change text direction': 'Permissão para alterar direcção do texto'\n'User may set indents': 'Permissão para usar identações'\n'User may add links': 'Permissão para adicionar ligações'\n'User may add subheads': 'Permissão para usar sub-titulos'\n'User may insert images': 'Permissão para adicionar imagens'\n'User may view the HTML source': 'Permissão para ver código HTML'\n'User may enlarge the editor': 'Permissão para alargar a janela do editor'\n'User may change the font face': 'Permissão para alterar a fonte'\n'User may change the font size': 'Permissão para alterar o tamanho da fonte'\n'User may create bulleted lists': 'Permissão para criar listas'\n'User may create numbered lists': 'Permissão para criar listas numeradas'\n'User may insert tables': 'Permissão para inserir tabelas'\n'User may insert horizontal rules': 'Permissão para inserir regras horizontais'\n'User may change the font color': 'Permissão para alterar cor da fonte'\n'User may use superscripts': 'Permissão para usar superior à linha'\n'User may use subscripts': 'Permissão para usar inferior à linha'\n'User may backup and restore the site data': null\nMiscellaneous: Vários\n'Staff/Subscribers Management': 'Manutenção de Pessoal/Assinantes '\n'Editor Basic Settings': 'Definições básicas do Editor'\n'Editor Advanced Font Settings': 'Definições avançadas do Editor'\n'Editor Table Settings': 'Definições de tabelas do Editor'\n'Administrative tasks': 'Tarefas Administrativas'\n'User will be notified on several events': 'Este Utilizador será notificado automáticamente dos acontecimento ocorridos'\n'Editor Miscellaneous Settings': 'Definições várias do Editor'\n'No such user account.': 'Utilizador Desconhecido'\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: Estado\n        registered: null\n        pending: null\n        deleted: null\n        active: Activo\n    table:\n        actions:\n            actions: Acções\n            edit: Editar\n            resend_email: null\n            rename: null\n            remove: Remover\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.pt_BR.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: Website\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: Geolocalização\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Mostrando _START_ a _END_ de _TOTAL_ inscrições'\n'Send email to user:': null\n'No users found.': null\n'No records found.': 'Nenhum dado encontrado'\n'No entries to show': 'Não há registros para mostrar'\n'Display _MENU_ records': Mostrar_MENU_registros\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': '- filtrando de _MAX_ registros'\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: Nenhum\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': 'Editar sua senha'\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': 'Editar permissões'\n'Create new account': 'Criar nova conta'\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: Templates\nUsername: 'Nome de usuário'\n'Last Name': null\n'First Name': null\nEmail: Email\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': 'Permissão para traduzir artigos'\n'User may move articles': 'Permissão para mover artigos'\n'User may find and replace': 'Permissão para Procurar e Substituir'\n'User may change system preferences': 'Permissão para alterar definições do sistema'\n'User may attach topics to articles': 'Permissão para adicionar temas a artigos'\n'User may attach images to articles': 'Permissão para adicionar imagens a artigos'\n'User may add special characters': 'Permissão para usar caracteres especiais'\n'That user name already exists, please choose a different login name.': 'Nome já existente, por favor escoha um diferente.'\n'User may delete article attachments': 'Permissão para eliminar anexos de artigos'\n'User may change article attachments': 'Permissão para alterar anexos de artigos'\n'User may add article attachments': 'Permissão para adicionar anexos a artigos'\n'You do not have the right to create user accounts.': 'Não tem permissões para criar utilizadores'\n'You must select a $1': 'Tem de escolher um(a) $1'\n'The password must be at least 6 characters long and both passwords should match.': 'A Palavra-passe tem de ter pelos menos 6 caracteres e ambas as palavras-passe devem coincidir'\n'The user account could not be created.': 'O Utilizador não pode ser criado'\n'User account $1 was created successfully.': 'Utilizador $1 criado com sucesso.'\n'You do not have the right to change user account permissions.': 'Não tem autorização para alterar permissões'\n'You do not have the right to change user account information.': 'Não tem permissão para alterar informações de Utilizador'\n'The password you typed is incorrect.': 'Palavra-passe incorrecta'\n'You do not have the right to delete user accounts.': 'Não tem persmissões para eliminar Utilizadores'\n'User account $1 was deleted successfully.': 'Utilizador $1 foi eliminado'\n'The IP Group $1 has been created.': 'O Grupo de IPs $1 foi criado'\n'There was an error creating the IP address group.': 'Ocorreu um erro na criação do Grupo de IPs'\n'The IP address group $1 has been deleted.': 'Grupo de IPs $1 foi eliminado'\n'User $1 information was changed successfully.': 'Informações do Utilizador $1 alteradas.'\n'User Type': 'Tipo de Utilizador'\n'The IP address group $1:$2 conflicts with another existing group.': 'Existe um conflito entre o Grupo de IPs $1:$2 com um já existente.'\n'User may add/change publications': 'Permissão para Criar/Alterar Publicações'\n'Invalid value of user type parameter': 'Valor inválido no parametro solicitado.'\n'User may delete publications': 'Permissão para Apagar Publicações'\n'User may add/change issues': 'Permissão para Criar/Alterar Edições'\n'User may delete issues': 'Permissão para Apagar Edições'\n'User may add/change sections': 'Permissão para Criar/Alterar Secções'\n'User may delete sections': 'Permissão para Apagar Secções'\n'User may add articles': 'Permissão para Criar Artigos'\n'User may change articles': 'Permissão para Alterar Artigos'\n'User may delete articles': 'Permissão para Apagar Artigos'\n'User may add images': 'Permissão para Adicionar Imagens'\n'User may change images': 'Permissão para Alterar Imagens'\n'User may delete images': 'Permissão para Apagar Imagens'\n'User may delete templates': 'Permissão para Apagar Modelos'\n'User may add/change staff accounts and passwords': 'Permissão para adicionar/alterar Utilizadores Pessoal Editorial (Contas e Palavras-Passe)'\n'User may add/change subscribers accounts and passwords': 'Permissão para adicionar/alterar Assinantes (Contas e Palavras-Passe)'\n'User may delete staff accounts': 'Permissão para eliminar Utilizadores Pessoal Editorial'\n'User may manage user subscriptions': 'Permissão para Gerir Assinaturas'\n'User may manage account types': 'Permissão para Gerir tipos de Utilizadores'\n'User may add/change article types': 'Permissão para Criar/Alterar tipos de Artigos'\n'User may delete article types': 'Permissão para Eliminar tipos de Artigos'\n'User may manage templates': 'Permissão para Gerir Modelos'\n'User may add/change country entries': 'Permissão para Adicionar/Alterar Paises'\n'User may add languages and manage language information': 'Permissão para Criar e Gerir Idiomas'\n'User may delete languages': 'Permissão para Apagar Idiomas'\n'User may view audit logs': 'Permissão para ver Registos de Utilização'\n'User may delete country entries': 'Permissão para Apagar Países'\n'User may manage localizer': 'Permissão para Gerir o Localizador'\n'User may publish articles': 'Permissão para Publicar Artigos'\n'User may manage topics': 'Permissão para Gerir Temas'\n'User may use bold': 'Permissão para usar Negrito'\n'User may use italic': 'Permissão para usar itálico'\n'User may use underline': 'Permissão para usar sublinhado'\n'User may use strikethrough': 'Permissão para usar rasurado'\n'User may change text alignment': 'Permissão para alterar alinhamento do texto'\n'User may copy, cut, and paste': 'Permissão para copiar, cortar e colar'\n'User may undo/redo': 'Permissão para desfazer/refazer'\n'User may change text direction': 'Permissão para alterar direcção do texto'\n'User may set indents': 'Permissão para usar identações'\n'User may add links': 'Permissão para adicionar ligações'\n'User may add subheads': 'Permissão para usar sub-titulos'\n'User may insert images': 'Permissão para adicionar imagens'\n'User may view the HTML source': 'Permissão para ver código HTML'\n'User may enlarge the editor': 'Permissão para alargar a janela do editor'\n'User may change the font face': 'Permissão para alterar a fonte'\n'User may change the font size': 'Permissão para alterar o tamanho da fonte'\n'User may create bulleted lists': 'Permissão para criar listas'\n'User may create numbered lists': 'Permissão para criar listas numeradas'\n'User may insert tables': 'Permissão para inserir tabelas'\n'User may insert horizontal rules': 'Permissão para inserir regras horizontais'\n'User may change the font color': 'Permissão para alterar cor da fonte'\n'User may use superscripts': 'Permissão para usar superior à linha'\n'User may use subscripts': 'Permissão para usar inferior à linha'\n'User may backup and restore the site data': null\nMiscellaneous: Vários\n'Staff/Subscribers Management': 'Manutenção de Pessoal/Assinantes '\n'Editor Basic Settings': 'Definições básicas do Editor'\n'Editor Advanced Font Settings': 'Definições avançadas do Editor'\n'Editor Table Settings': 'Definições de tabelas do Editor'\n'Administrative tasks': 'Tarefas Administrativas'\n'User will be notified on several events': 'Este Utilizador será notificado automáticamente dos acontecimento ocorridos'\n'Editor Miscellaneous Settings': 'Definições várias do Editor'\n'No such user account.': 'Utilizador Desconhecido'\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: 'Gerenciar usuários'\n    created: Criado\n    updated: null\n    status:\n        status: Estado\n        registered: null\n        pending: null\n        deleted: Removido\n        active: Ativo\n    table:\n        actions:\n            actions: Ações\n            edit: Editar\n            resend_email: null\n            rename: null\n            remove: Remover\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: Processando...\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.ro.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: Email\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': 'Utilizatorul poate modera comentariile'\n'User may enable comments': 'Utilizatorul poate activa comentariile'\n'User may translate articles': 'Utilizatorul poate traduce articole'\n'User may move articles': 'Utilizatorul poate muta articole'\n'User may find and replace': 'Utilizatorul poate utiliza caută şi înlocuieşte'\n'User may change system preferences': 'Utilizatorul poate schimba caracteristicile sistemului'\n'User may attach topics to articles': 'Utilizatorul poate ataşa subiecte la articole'\n'User may attach images to articles': 'Utilizatorul poate imagini la articole'\n'User may add special characters': 'Utilizatorul poate adăuga caractere speciale'\n'That user name already exists, please choose a different login name.': 'Acel nume de utilizator există deja, alege un alt nume.'\n'User may delete article attachments': 'Utilizatorul poate şterge fişiere ataşate la articole'\n'User may change article attachments': 'Utilizatorul poate schimba status-ul fişierelor ataşate la articole'\n'User may add article attachments': 'Utilizatorul poate adăuga fişiere ataşate la articole'\n'You do not have the right to create user accounts.': 'Nu ai dreptul să creezi conturi de utilizatori.'\n'You must select a $1': 'Trebuie să selectaţi $1'\n'The password must be at least 6 characters long and both passwords should match.': 'Parola trebuie să conţină cel puţin 6 caractere şi ambele parole trebuie să fie identice'\n'The user account could not be created.': 'Contul de utilizator nu poate fi creat'\n'User account $1 was created successfully.': 'Contul utilizatorului $1 a fost creat.'\n'You do not have the right to change user account permissions.': 'Nu aveţi dreptul să modificaţi drepturile contului de utilizator'\n'You do not have the right to change user account information.': 'u aveţi dreptul să modificaţi informaţiile despre contul de utilizator'\n'The password you typed is incorrect.': 'Parola introdusă este incorectă'\n'You do not have the right to delete user accounts.': 'Nu ai dreptul să ştergi conturi de utilizatori.'\n'User account $1 was deleted successfully.': 'Contul de utilizator $1 a fost şters.'\n'The IP Group $1 has been created.': 'Grupul de adrese IP $1 a fost creat.'\n'There was an error creating the IP address group.': 'S-a produs o eroare la crearea grupului de adrese IP.'\n'The IP address group $1 has been deleted.': 'Grupul de adrese IP $1 a fost şters.'\n'User $1 information was changed successfully.': 'Informaţiile despre utilizatorul $1 au fost schimbate.'\n'User Type': 'Tipul utilizatorului'\n'The IP address group $1:$2 conflicts with another existing group.': 'Grupul de adrese IP $1:$2 este în conflict cu un alt grup existent.'\n'User may add/change publications': 'Utilizatorul poate adăuga/modifica publicaţii'\n'Invalid value of user type parameter': 'Valoare invalidă a parametrului pentru tipul de utilizator'\n'User may delete publications': 'Utilizatorul poate şterge publicaţii'\n'User may add/change issues': 'Utilizatorul poate adăuga/modifica ediţii'\n'User may delete issues': 'Utilizatorul poate şterge ediţii'\n'User may add/change sections': 'Utilizatorul poate adăuga/modifica secţiuni'\n'User may delete sections': 'Utilizatorul poate şterge secţiuni'\n'User may add articles': 'Utilizatorul poate adăuga articole'\n'User may change articles': 'Utilizatorul poate modifica articole'\n'User may delete articles': 'Utilizatorul poate şterge articole'\n'User may add images': 'Utilizatorul poate adăuga imagini'\n'User may change images': 'Utilizatorul poate modifica imagini'\n'User may delete images': 'Utilizatorul poate şterge imagini'\n'User may delete templates': 'Utilizatorul poate şterge şabloane'\n'User may add/change staff accounts and passwords': 'Utilizatorul poate modifica/schimba conturile membrilor echipei şi parolele'\n'User may add/change subscribers accounts and passwords': 'Utilizatorul poate adăuga/schimba conturile abonaţilor şi parolele'\n'User may delete staff accounts': 'Utilizatorul poate şterge conturi ale membrilor echipei'\n'User may manage user subscriptions': 'Utilizatorul poate modifica subscrieri'\n'User may manage account types': 'Utilizatorul poate modifica tipurile de utilizatori'\n'User may add/change article types': 'Utilizatorul poate adăuga/modifica tipurile de articole'\n'User may delete article types': 'Utilizatorul poate şterge tipuri de articole'\n'User may manage templates': 'Utilizatorul poate administra şabloane'\n'User may add/change country entries': 'Utilizatorul poate adăuga/modifica ţări'\n'User may add languages and manage language information': 'Utilizatorul poate adăuga limbi şi modifica informaţiile despre limbi'\n'User may delete languages': 'Utilizatorul poate şterge limbi'\n'User may view audit logs': 'Utilizatorul poate vedea înregistrările din log-uri'\n'User may delete country entries': 'Utilizatorul poate şterge ţări'\n'User may manage localizer': 'Utilizatorul poate administra serviciul de regionalizare'\n'User may publish articles': 'Utilizatorul poate publica articole'\n'User may manage topics': 'Utilizatorul poate modifica subiectele'\n'User may use bold': 'Utilizatorul poate folosi stilul îngroşat (bold)'\n'User may use italic': 'Utilizatorul poate folosi stilul cursiv (italic)'\n'User may use underline': 'Utilizatorul poate folosi stilul subliniat (underline)'\n'User may use strikethrough': 'Utilizatorul poate folosi stilul tăiat (strikethrough)'\n'User may change text alignment': 'Utilizatorul poate folosi alinierea textului'\n'User may copy, cut, and paste': 'Utilizatorul poate folosi copierea, tăierea şi lipirea'\n'User may undo/redo': 'Utilizatorul poate anula/reface comanda'\n'User may change text direction': 'Utilizatorul poate schimba direcţia textului'\n'User may set indents': 'Utilizatorul poate stabili alineate'\n'User may add links': 'Utilizatorul poate adăuga link-uri'\n'User may add subheads': 'Utilizatorul poate folosi subtitluri'\n'User may insert images': 'Utilizatorul poate insera imagini'\n'User may view the HTML source': 'Utilizatorul poate vedea codul-sursă HTML'\n'User may enlarge the editor': 'Utilizatorul poate mări unealta de editare'\n'User may change the font face': 'Utilizatorul poate schimba font-ul'\n'User may change the font size': 'Utilizatorul poate schimba mărimea font-ului'\n'User may create bulleted lists': 'Utilizatorul poate crea liste cu bumbi'\n'User may create numbered lists': 'Utilizatorul poate crea liste numerotate'\n'User may insert tables': 'Utilizatorul poate insera tabele'\n'User may insert horizontal rules': 'Utilizatorul poate insera linii orizontale'\n'User may change the font color': 'Utilizatorul poate schimba culoarea font-ului'\n'User may use superscripts': 'Utilizatorul poate folosi stilul exponent'\n'User may use subscripts': 'Utilizatorul poate folosi stilul indice'\n'User may backup and restore the site data': null\nMiscellaneous: Diverse\n'Staff/Subscribers Management': 'Administrarea echipei/abonaţilor'\n'Editor Basic Settings': 'Caracteristicile de bază ale uneltei de editare'\n'Editor Advanced Font Settings': 'Caracteristicile avansate ale font-ului uneltei de editare'\n'Editor Table Settings': 'Caracteristicile de tabel ale uneltei de editare'\n'Administrative tasks': 'Sarcini administrative'\n'User will be notified on several events': 'Utilizatorul va fi anunţat în cazul apariţiei unor evenimente'\n'Editor Miscellaneous Settings': 'Caracteristicile diverse ale uneltei de editare'\n'No such user account.': 'Contul de utilizator nu există.'\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: Stare\n        registered: null\n        pending: null\n        deleted: null\n        active: Activ\n    table:\n        actions:\n            actions: Acţiuni\n            edit: Modifică\n            resend_email: null\n            rename: null\n            remove: Şterge\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.ru.yml",
    "content": "'Password confirmation does not match your password.': 'Пароль при подтверждении не совпадает с вашим паролем.'\n'Password Confirmation': 'Подтвердить пароль'\nWebsite: Web-сайт\nTwitter: Twitter\n'Save profile': 'Сохранить профиль'\n'Profile image': 'Фото профиля'\nOrganisation: Организация\n'Last Name Public': 'Фамилия открытая информация'\nGoogle+: Google+\nGeolocation: Геопозиционирование\nGender: Пол\n'First Name Public': 'Имя открытая информация'\nFacebook: Facebook\n'Date of birth': 'Дата рождения'\n'Allow sending emails': 'Разрешить электронную почту'\n'About me': 'Обо мне'\n'User with email %s is registered already.': 'Пользователь с email %s уже зарегистрирован.'\n'Username is used. Please use another one.': 'Данное имя уже используется. Пожалуйста, выберите другое имя. '\nContinue: Продолжить\n'Accepting terms of use': 'Принять условия пользования'\n'send confirmation email': 'отослать подтверждение по email'\n'edit user': 'редактировать данные пользователя'\n'delete user': 'удалить аккаунт'\n'Verified profile': 'Подтвержденный профиль'\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Показано _START_ до _END_ / _TOTAL_ записей'\n'Send email to user:': 'Послать email пользователю:'\n'No users found.': 'Аккаунт не найден.'\n'No records found.': 'Не выбрана ни одна из записей'\n'No entries to show': 'Нет записей для просмотра'\n'Display _MENU_ records': 'Отобразить _MENU_ записи'\n'Are you sure you want to {action}?': 'Вы уверены, что хотите {action}?'\n'Active Logins': 'Активные логины'\n' - filtering from _MAX_ records': 'фильтрация от _MAX_ записей'\n'User renamed.': 'Пользователь переименован.'\n'User attributes': 'Атрибуты пользователя'\n'Rename user $1': 'Переименовать пользователя $1'\n'Username is used already': 'Такое имя пользователя уже используется'\n'User with id $1 not found': 'Пользователь с id $1 не найден'\n'User was deleted.': 'Пользователь был удален.'\n'User saved': 'Данные пользователя сохранены'\n'User id not specified': 'Такой пользователь не определен'\n'User $1 created': 'Аккаунт пользователя $1 создан'\n'Send confirm email': 'Отправить сообщение с подтверждением'\n'Profile saved.': 'Профиль сохранен.'\nPicture: Аватар\n'Password updated': 'Пароль обновлен'\nNone: 'Ни один'\n'New confirmation email was sent to user.': 'Новое email -подтверждение по отправлено пользователю'\n'Email is used already': 'Этот уже email используется '\n'Edit your password': 'Редактировать пароль'\n'Edit user $1': 'Изменить данные пользователя $1'\n'Edit subscriptions': 'Редактировать подписки'\n'Edit profile': 'Редактировать профиль'\n'Edit permissions': 'Редактировать права доступа'\n'Create new account': 'Создать новый аккаунт'\n'Comment ban settings': 'Настройки запрета на комментарии'\n'Ban for user $1 saved.': 'Запрет комментирования для пользователя $1'\n'User account is active': 'Учетная запись пользователя активна'\n'Allow users profile to be publicly displayed': 'Показывать профиль пользователя всем'\n'Allow user access to login to site backend': 'Разрешить пользователю вход в административную часть сайта'\nTemplates: Шаблоны\nUsername: 'Имя пользователя'\n'Last Name': Фамилия\n'First Name': Имя\nEmail: Email\n'You were logged out.': 'Вы вышли из системы.'\n'Newscoop Subhead': 'Подзаголовок Newscoop'\nFilters: Фильтры\n'Add new Author': 'Добавить нового автора'\n'Loading Data': 'Загрузка данных'\n'Delete author type': 'Удалить тип автора'\n'Cannot remove author type.': 'Этот тип автора не может быть удален.'\n'Cannot remove author alias.': 'Этот псевдоним автора не может быть удален.'\n'Author alias removed.': 'Алиас автора удален.'\n'Are you sure you want to delete this author?': 'Вы уверены, что хотите удалить этого автора?'\n'Are you sure you want to delete this author alias?': 'Вы уверены, что хотите удалить псевдоним этого автора?'\n'All Author Types': 'Все типы авторов'\n'Add author type': 'Добавить тип автора'\n'You do not have the permission to change authors.': 'У Вас нет прав доступа для изменения информации об авторах.'\n'Please fill at least first name and last name.': 'Введите имя и фамилию.'\n'Cannot add author type, this type already exists.': 'Невозможно добавить такой тип автора, он уже существует.'\n'Author type removed.': 'Этот тип автора удален.'\n'Author type must be at least three characters long.': 'Тип автора должен быть как минимум на 3 символа больше.'\n'Author type added.': 'Добавлен новый тип автора.'\n'Are you sure you want to delete this author type?': 'Вы уверены, что хотите удалить этот тип автора?'\n'User may change authors': 'Пользователь может изменять информацию об авторах'\n'Unable to add new image, target directory is not writable.': 'Невозможно добавить изображение, целевой каталог недоступен для записи.'\n'Author saved.': 'Информация об авторе сохранена.'\n'Author deleted.': 'Автор удален.'\n'Enable Firefox spell checking by default': 'Включить проверку провописания в Firefox по умолчанию'\n'User may use the editor status bar': 'Пользователь может использовать строку состояния редактора'\n'User may clear up the system cache': 'Пользователь может очищать систему кеширования'\n'Another user is registered with that e-mail address, please choose a different one.': 'Другой пользователь зарегистрировался под этим email адресом, пожалуйста, введите другой.'\n'There was an error when trying to update the user info.': 'Произошла ошибка при попытке обновления информации о пользователе.'\n'User may moderate comments': 'Пользователь может модерировать комментарии'\n'User may enable comments': 'Пользователь может разрешать комментарии'\n'User may translate articles': 'Пользователь может переводить статьи'\n'User may move articles': 'Пользователь может перемещать статьи'\n'User may find and replace': 'Пользователь может выполнять поиск и замену'\n'User may change system preferences': 'Пользователь может менять настройки системы'\n'User may attach topics to articles': 'Пользователь может прикреплять темы к статьям'\n'User may attach images to articles': 'Пользователь может прикреплять изображения к статьям'\n'User may add special characters': 'Пользователь может добавлять специальные символы'\n'That user name already exists, please choose a different login name.': 'Это имя пользователя уже существует, пожалуйста, выберите другой логин.'\n'User may delete article attachments': 'Пользователь может удалять приложения к статьям'\n'User may change article attachments': 'Пользователь может изменять приложения к статьям'\n'User may add article attachments': 'Пользователь может добавлять приложения к статьям'\n'You do not have the right to create user accounts.': 'Вы не имеете прав доступа для создания учетных записей пользователей.'\n'You must select a $1': 'Вы должны выбрать $1'\n'The password must be at least 6 characters long and both passwords should match.': 'Пароль должен состоять не менее, чем из 6-ти символов. Оба пароля должны совпадать.'\n'The user account could not be created.': 'Невозможно создать учетную запись пользователя.'\n'User account $1 was created successfully.': 'Учетная запись пользователя $1 была успешно создана.'\n'You do not have the right to change user account permissions.': 'Вы не имеете прав доступа для изменения прав учетной записи пользователя.'\n'You do not have the right to change user account information.': 'Вы не имеете прав доступа для изменения информации об учетной записи пользователя.'\n'The password you typed is incorrect.': 'Вы ввели неверный пароль.'\n'You do not have the right to delete user accounts.': 'Вы не имеете прав доступа к удалению учетных записей пользователей.'\n'User account $1 was deleted successfully.': 'Учетная запись пользователя $1 успешно удалена.'\n'The IP Group $1 has been created.': 'IP-группа $1 была создана'\n'There was an error creating the IP address group.': 'Ошибка создания группы IP адресов.'\n'The IP address group $1 has been deleted.': 'Группа IP-адресов $1 была удалена.'\n'User $1 information was changed successfully.': 'Информация пользователя $1 была успешно изменена.'\n'User Type': 'Тип пользователя'\n'The IP address group $1:$2 conflicts with another existing group.': 'Группа IP-адресов конфликтует с другой существующей группой.'\n'User may add/change publications': 'Пользователь может добавлять/изменять издания'\n'Invalid value of user type parameter': 'Неправильное значение типа пользователя'\n'User may delete publications': 'Пользователь может удалять издания'\n'User may add/change issues': 'Пользователь может добавлять/изменять выпуски'\n'User may delete issues': 'Пользователь может удалять выпуски'\n'User may add/change sections': 'Пользователь может добавлять/изменять рубрики'\n'User may delete sections': 'Пользователь может удалять рубрики'\n'User may add articles': 'Пользователь может добавлять статьи'\n'User may change articles': 'Пользователь может изменять статьи'\n'User may delete articles': 'Пользователь может удалять статьи'\n'User may add images': 'Пользователь может добавлять изображения'\n'User may change images': 'Пользователь может изменять изображения'\n'User may delete images': 'Пользователь может удалять изображения'\n'User may delete templates': 'Пользователь может удалять шаблоны'\n'User may add/change staff accounts and passwords': 'Пользователь может добавлять/удалять учетные записи и пароли персонала'\n'User may add/change subscribers accounts and passwords': 'Пользователь может добавлять/удалять учетные записи и пароли подписчиков'\n'User may delete staff accounts': 'Пользователь может удалять учетные записи персонала'\n'User may manage user subscriptions': 'Пользователь может управлять пользовательскими подписками'\n'User may manage account types': 'Пользователь может управлять типами учетных записей'\n'User may add/change article types': 'Пользователь может добавлять/изменять типы статей'\n'User may delete article types': 'Пользователь может удалять типы статей'\n'User may manage templates': 'Пользователь может управлять шаблонами'\n'User may add/change country entries': 'Пользователи могут удалять/изменять записи о странах'\n'User may add languages and manage language information': 'Пользователь может добавлять языки и управлять информаций о языках'\n'User may delete languages': 'Пользователь может удалять языки'\n'User may view audit logs': 'Пользователь может просматривать журнал отчетности'\n'User may delete country entries': 'Пользователь может удалять записи о странах'\n'User may manage localizer': 'Пользователь может управлять локализатором'\n'User may publish articles': 'Пользователь может публиковать статьи'\n'User may manage topics': 'Пользователь может управлять темами'\n'User may use bold': 'Пользователь может использовать тип шрифта Bold (жирный)'\n'User may use italic': 'Пользователь может использовать тип шрифта Italic (наклонный)'\n'User may use underline': 'Пользователь может выделять текст подчеркиванием'\n'User may use strikethrough': 'Пользователь может выделять текст перечеркиванием'\n'User may change text alignment': 'Пользователь может изменять выравнивание текста'\n'User may copy, cut, and paste': 'Пользователь может копировать, вырезать и вставлять'\n'User may undo/redo': 'Пользователь может отменять действия'\n'User may change text direction': 'Пользователь может изменять направление текста'\n'User may set indents': 'Пользователь может устанавливать отступы'\n'User may add links': 'Пользователь может добавлять ссылки'\n'User may add subheads': 'Пользователь может добавлять подзаголовки'\n'User may insert images': 'Пользователь может вставлять изображения'\n'User may view the HTML source': 'Пользователь может смотреть HTML-код'\n'User may enlarge the editor': 'Пользователь может расширять редактор'\n'User may change the font face': 'Пользователь может менять шрифт'\n'User may change the font size': 'Пользователь может менять размер шрифта'\n'User may create bulleted lists': 'Пользователь может создавать ненумерованный список'\n'User may create numbered lists': 'Пользователь может создавать нумерованный список'\n'User may insert tables': 'Пользователь может вставлять таблицы'\n'User may insert horizontal rules': 'Пользователь может вставлять горизонтальные линии'\n'User may change the font color': 'Пользователь может менять цвет шрифта'\n'User may use superscripts': 'Пользователь может использовать верхний шрифт'\n'User may use subscripts': 'Пользователь может использовать нижний шрифт'\n'User may backup and restore the site data': 'Пользователь может управлять резервным копированием'\nMiscellaneous: Разное\n'Staff/Subscribers Management': 'Управление персоналом/подписчиками'\n'Editor Basic Settings': 'Основные настройки редактора'\n'Editor Advanced Font Settings': 'Расширенные настройки шрифтов редактора'\n'Editor Table Settings': 'Настройки таблиц'\n'Administrative tasks': 'Административные задания'\n'User will be notified on several events': 'Пользователь будет уведомляться о некоторых событиях'\n'Editor Miscellaneous Settings': 'Прочие настройки редактора'\n'No such user account.': 'Нет такой учетной записи пользователя.'\n'User image (full-size)': 'Фото пользователя (полноразмерное)'\n'User account is highlighted as \"featured account\"': 'Пользователь отмечен как избранный'\n'Custom attribute...': 'Настраиваемый атрибут'\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: 'Поиск пользователей'\n    menu:\n        manage: 'Управление пользователями'\n    created: Создана\n    updated: Обновлено\n    status:\n        status: Состояние\n        registered: Зарегистрированные\n        pending: 'Ожидающие подтверждения'\n        deleted: 'Удалено '\n        active: Активно\n    table:\n        actions:\n            actions: Операции\n            edit: Правка\n            resend_email: 'Повторить отправку email об активизации'\n            rename: Переименовать\n            remove: Удалить\n        confirm_remove: 'Подтвердите удаление данного аккаунта? '\n        table_messages:\n            page: страница\n            perPageText: 'Показать:'\n            pageText: 'Страницы:'\n            recordCountPageBoundTemplate: '{pageLowerBound} to {pageUpperBound} of'\n            recordCountPageUnboundedTemplate: '{recordsShown} of'\n            recordCountTotalTemplate: '{recordsQueryCount} {collectionName}'\n            recordCountFilteredTemplate: ' (filtered from {recordsTotal} total records)'\n            recordCountText: Показано\n            recordCountTextTemplate: '{text} {pageTemplate} {totalTemplate} {filteredTemplate}'\n            recordCountTemplate: '<span id=''dynatable-record-count-{elementId}'' class=''dynatable-record-count''>{textTemplate}</span>'\n            processingText: Обработка...\n    chart:\n        title: 'Активные логины'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.sh.yml",
    "content": "'Password confirmation does not match your password.': 'Potvrda lozinke se ne poklapa sa lozinkom.'\n'Password Confirmation': 'Potvrda lozinke'\nWebsite: 'Veb sajt'\nTwitter: Tviter\n'Save profile': 'Sačuvaj profil'\n'Profile image': 'Profilna slika'\nOrganisation: Organizacija\n'Last Name Public': 'Prezime vidljivo'\nGoogle+: Google+\nGeolocation: Geolokacija\nGender: Pol\n'First Name Public': 'Ime vidljivo'\nFacebook: Fejsbuk\n'Date of birth': 'Datum rođenja'\n'Allow sending emails': 'Dozvoli slanje e-maila'\n'About me': 'O meni'\n'User with email %s is registered already.': 'Korisnik sa emailom %s je već registrovan'\n'Username is used. Please use another one.': 'Korisničko ime je u upotrebi. Izaberite drugo.'\nContinue: Nastavi\n'Accepting terms of use': 'Prihvatam uslove korišćenja'\n'send confirmation email': 'Pošalji e-mail za potvrdu'\n'edit user': 'uredi korisnika'\n'delete user': 'obriši korisnika'\n'Verified profile': 'Proveren profil'\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Prikazano _START_ do _END_ od _TOTAL_ unosa'\n'Send email to user:': 'Pošalji e-mail korisniku:'\n'No users found.': 'Nije pronađen ni jedan korisnik.'\n'No records found.': 'Nema zapisa'\n'No entries to show': 'Nema unosa za prikaz'\n'Display _MENU_ records': 'Prikaži _MENU_ zapise'\n'Are you sure you want to {action}?': 'Sigurni ste da želite da {action}?'\n'Active Logins': 'Aktivne prijave'\n' - filtering from _MAX_ records': '- filtriranje među _MAX_ zapisa'\n'User renamed.': 'Korisnik preimenovan'\n'User attributes': 'Korisnički atributi'\n'Rename user $1': 'Preimenuj korisnika $1'\n'Username is used already': 'Korisničko ime je već u upotrebi'\n'User with id $1 not found': 'Korisnik sa id-jem $1 nije pronađen'\n'User was deleted.': 'Korisnik je obrisan.'\n'User saved': 'Korisnik snimljen'\n'User id not specified': 'Korisnički id nije preciziran'\n'User $1 created': 'Korisnik $1 napravljen'\n'Send confirm email': 'Pošalji e-mail za potvrdu'\n'Profile saved.': 'Profil snimljen.'\nPicture: Slika\n'Password updated': 'Lozinka izmenjena'\nNone: Nijedan\n'New confirmation email was sent to user.': 'Novi e-mail za potvrdu je poslat korisniku.'\n'Email is used already': 'E-mail je već u upotrebi'\n'Edit your password': 'Uredi svoju lozinku'\n'Edit user $1': 'Uredi korisnika $1'\n'Edit subscriptions': 'Uredi pretplate'\n'Edit profile': 'Uredi profil'\n'Edit permissions': 'Uredi korisnička prava'\n'Create new account': 'Napravi novi nalog'\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': 'Korisnički nalog je aktivan'\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: Šabloni\nUsername: 'Korisničko ime'\n'Last Name': Prezime\n'First Name': Ime\nEmail: email\n'You were logged out.': 'Sada ste odjavljeni'\n'Newscoop Subhead': 'Newscoop podnaslov'\nFilters: Filteri\n'Add new Author': 'Dodaj novog autora'\n'Loading Data': 'Učitavanje podataka'\n'Delete author type': 'Obriši tip autora'\n'Cannot remove author type.': 'Nije moguće ukloniti tip autora'\n'Cannot remove author alias.': 'Nije moguće ukloniti autorov alias '\n'Author alias removed.': 'Autorov alias je uklonjen'\n'Are you sure you want to delete this author?': 'Da li ste sigurni da želite da obrišeteovog autora?'\n'Are you sure you want to delete this author alias?': 'Da li ste sigurni da želite da obrišete alias ovog autora?'\n'All Author Types': 'Svi tipovi autora'\n'Add author type': 'Dodaj tip autora'\n'You do not have the permission to change authors.': 'Nemate pravo da menjate autore.'\n'Please fill at least first name and last name.': 'Molimo unesite barem ime i prezime.'\n'Cannot add author type, this type already exists.': 'Nije moguće dodati tip autora, pošto već postoji.'\n'Author type removed.': 'tip autora uklonjen,'\n'Author type must be at least three characters long.': 'Naziv tip autora mora biti bar tri karaktera dug.'\n'Author type added.': 'Tip autora dodat.'\n'Are you sure you want to delete this author type?': 'Da li ste sigurni da želite da obrišete ovaj tip autora?'\n'User may change authors': 'Korisnik može da menja autore'\n'Unable to add new image, target directory is not writable.': 'Nije moguće dodati novu sliku, ciljani direktorijum nema pravo upisa.'\n'Author saved.': 'Autor snimljen.'\n'Author deleted.': 'Autor obrisan.'\n'Enable Firefox spell checking by default': 'Omogući Firefox proveru ispravnosti unosa teksta'\n'User may use the editor status bar': 'Korisnik može da koristi status bar editora'\n'User may clear up the system cache': 'Korisnik može da briše sistemski keš'\n'Another user is registered with that e-mail address, please choose a different one.': 'Drugi korisnik je već registrovan sa tom e-mail adresom, molimo izaberite drugu.'\n'There was an error when trying to update the user info.': 'Došlo je do greške pri pokušaju izmene podataka o informacijama.'\n'User may moderate comments': 'Korisnik može da moderiše komentare'\n'User may enable comments': 'Korsnik može da odobrava komentare'\n'User may translate articles': 'Korisnik može da prevodi tekstove'\n'User may move articles': 'Korisnik može da premešta tekstove'\n'User may find and replace': 'Korisnik može da koristi opciju traži/zameni'\n'User may change system preferences': 'Korisnik može da menja sistemske postavke'\n'User may attach topics to articles': 'Korisnik može da dodaje teme tekstovima'\n'User may attach images to articles': 'Korisnik može da kači slike uz tekstove'\n'User may add special characters': 'Korisnik može da dodaje specijalne znakove'\n'That user name already exists, please choose a different login name.': 'To korisničko ime već postoji, izaberite neko drugo ime.'\n'User may delete article attachments': 'Korisnik može da briše fajlove zakačene uz tekstove'\n'User may change article attachments': 'Korsnik može da menja fajlove prikačene uz tekstove'\n'User may add article attachments': 'Korsinik može da kači fajlove uz tekstove'\n'You do not have the right to create user accounts.': 'Nemate pravo da kreirate korisničke naloge.'\n'You must select a $1': 'Morate izabrati $1'\n'The password must be at least 6 characters long and both passwords should match.': 'Lozinka mora biti dugačka najmanje 6 karaktera i obe lozinke se moraju poklapati'\n'The user account could not be created.': 'Korisnički nalog ne može biti kreiran'\n'User account $1 was created successfully.': 'Korisnički nalog $1 je uspešno napravljen.'\n'You do not have the right to change user account permissions.': 'Nemate pravo da menjate dodeljena prava za korisničke naloge'\n'You do not have the right to change user account information.': 'Nemate pravo da promenite podatke za korisnički nalog'\n'The password you typed is incorrect.': 'Lozinka koju ste uneli je neispravna'\n'You do not have the right to delete user accounts.': 'Nemate pravo da brišete korisničke naloge'\n'User account $1 was deleted successfully.': 'Korisnički nalog $1 je uspešno obrisan.'\n'The IP Group $1 has been created.': 'Grupa zasnovana na IP adresi je kreirana'\n'There was an error creating the IP address group.': 'Došlo je do greške pri kreiranju grupe zasnovane na IP adresi.'\n'The IP address group $1 has been deleted.': 'Grupa zasnovana na IP adresi $1 je obrisana'\n'User $1 information was changed successfully.': 'Podaci o korisniku $1 su uspešno promenjeni.'\n'User Type': 'Tip korisnika'\n'The IP address group $1:$2 conflicts with another existing group.': 'IP adresna grupa  $1:$2 se sukobljava sa drugom, već postojećom grupom.'\n'User may add/change publications': 'Korisnik može da dodaje/menja publikacije'\n'Invalid value of user type parameter': 'Pogrešna vrednost parametra za tip korisnika'\n'User may delete publications': 'Korisnik može da briše publikacije'\n'User may add/change issues': 'Korisnik može da dodaje/menja izdanja'\n'User may delete issues': 'Korisnik može da briše izdanja'\n'User may add/change sections': 'Korisnik može da dodaje/menja rubrike'\n'User may delete sections': 'Korisnik može da briše rubrike'\n'User may add articles': 'Korisnik može da dodaje tekstove'\n'User may change articles': 'Korisnik može da menja tekstove'\n'User may delete articles': 'Korisnik može da briše tekstove'\n'User may add images': 'Korisnik može da dodaje slike'\n'User may change images': 'Korisnik može da menja slike'\n'User may delete images': 'Korisnik može da briše slike'\n'User may delete templates': 'Korisnik može da briše šablone'\n'User may add/change staff accounts and passwords': 'Korisnik može da dodaje/menja saradničke naloge i lozinke'\n'User may add/change subscribers accounts and passwords': 'Korisnik može da dodaje/menja pretplatničke naloge i lozinke'\n'User may delete staff accounts': 'Korisnik može da briše saradničke naloge'\n'User may manage user subscriptions': 'Korisnik može da administrira pretplate'\n'User may manage account types': 'Korisnik može da administrira tipove naloga'\n'User may add/change article types': 'Korisnik može da dodaje/menja tipove tekstova'\n'User may delete article types': 'Korisnik može da briše tipove tekstova'\n'User may manage templates': 'Korisnik može da upravlja šablonima'\n'User may add/change country entries': 'Korisnik može da dodaje/menja podatke o državama'\n'User may add languages and manage language information': 'Korisnik može da dodaje jezike i upravlja informacijama o jeziku'\n'User may delete languages': 'Korisnik može da briše jezike'\n'User may view audit logs': 'Korisnik ima pristup logovima'\n'User may delete country entries': 'Korisnik može da briše podatke o državama'\n'User may manage localizer': 'Korisnik ima pristup lokalizatoru'\n'User may publish articles': 'Korisnik može da objavljuje članke'\n'User may manage topics': 'Korisnik može da upravlja temama'\n'User may use bold': 'Korisnik može da koristi masna slova (bold)'\n'User may use italic': 'Korisnik može da koristi kurziv (italic)'\n'User may use underline': 'Korisnik može da koristi podvučena slova (underline)'\n'User may use strikethrough': 'Korisnik može da koristi precrtana slova (strikethrough)'\n'User may change text alignment': 'Korisnik može da koristi poravnavanje teksta'\n'User may copy, cut, and paste': 'Korisnik može da koristi kopiraj/zalepi/iseci (copy/paste/cut)'\n'User may undo/redo': 'Korisnik može da koristi  undo/redo'\n'User may change text direction': 'Korisnik može da menja pravac teksta'\n'User may set indents': 'Korisnik može da podešava uvlačenje'\n'User may add links': 'Korisnik može da dodaje linkove'\n'User may add subheads': 'Korisnik može da pravi međunaslove'\n'User may insert images': 'Korisnik može da ubacuje slike'\n'User may view the HTML source': 'Korisnik ima pristup HTML kodu'\n'User may enlarge the editor': 'Korisnik može da uvećava editor'\n'User may change the font face': 'Korisnik može da menja fontove'\n'User may change the font size': 'Korisnik može da menja veličinu slova'\n'User may create bulleted lists': 'Korisnik može da pravi liste bez rednih brojeva'\n'User may create numbered lists': 'Korisnik može da pravi liste sa rednim brojevima'\n'User may insert tables': 'Korisnik može da dodaje tabele'\n'User may insert horizontal rules': 'Korisnik može da ubacuje horizontalne linije'\n'User may change the font color': 'Korisnik može da menja boju slova'\n'User may use superscripts': 'Korisink može da koristi tekst u eksponentu'\n'User may use subscripts': 'Korisink može da koristi tekst u imeniocu'\n'User may backup and restore the site data': 'Korisnik može bekapovati i vraćati podatke o sajtu'\nMiscellaneous: Razno\n'Staff/Subscribers Management': 'Upravljanje saradničkim/pretplatničkim nalozima'\n'Editor Basic Settings': 'Osnovno podešavanje editora'\n'Editor Advanced Font Settings': 'Napredno podešavanje osobina fonta u editoru'\n'Editor Table Settings': 'Podešavanje osobina tabela u editoru'\n'Administrative tasks': 'Administratorski poslovi'\n'User will be notified on several events': 'Korisnik će biti obavešten o određenim sistemskim aktivnostima'\n'Editor Miscellaneous Settings': 'Podešavanje raznih osobina u editoru'\n'No such user account.': 'Nema takvog korisničkog naloga.'\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: 'Upravljanje korisnicima'\n    created: Napravljeno\n    updated: null\n    status:\n        status: Status\n        registered: Registrovan\n        pending: null\n        deleted: Obrisano\n        active: Aktivna\n    table:\n        actions:\n            actions: Akcije\n            edit: Uredi\n            resend_email: null\n            rename: Preimenuj\n            remove: Ukloni\n        confirm_remove: null\n        table_messages:\n            page: Strana\n            perPageText: null\n            pageText: 'Strane:'\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: '{recordsQueryCount} {collectionName}'\n            recordCountFilteredTemplate: '(izdvojeno među ukupno {recordsTotal}  unosa)'\n            recordCountText: null\n            recordCountTextTemplate: '{text} {pageTemplate} {totalTemplate} {filteredTemplate}'\n            recordCountTemplate: null\n            processingText: Obrađujem...\n    chart:\n        title: 'Aktivne prijave'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.sq.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': null\n'User may move articles': null\n'User may find and replace': null\n'User may change system preferences': null\n'User may attach topics to articles': null\n'User may attach images to articles': null\n'User may add special characters': null\n'That user name already exists, please choose a different login name.': null\n'User may delete article attachments': null\n'User may change article attachments': null\n'User may add article attachments': null\n'You do not have the right to create user accounts.': null\n'You must select a $1': null\n'The password must be at least 6 characters long and both passwords should match.': null\n'The user account could not be created.': null\n'User account $1 was created successfully.': null\n'You do not have the right to change user account permissions.': null\n'You do not have the right to change user account information.': null\n'The password you typed is incorrect.': null\n'You do not have the right to delete user accounts.': null\n'User account $1 was deleted successfully.': null\n'The IP Group $1 has been created.': null\n'There was an error creating the IP address group.': null\n'The IP address group $1 has been deleted.': null\n'User $1 information was changed successfully.': null\n'User Type': null\n'The IP address group $1:$2 conflicts with another existing group.': null\n'User may add/change publications': null\n'Invalid value of user type parameter': null\n'User may delete publications': null\n'User may add/change issues': null\n'User may delete issues': null\n'User may add/change sections': null\n'User may delete sections': null\n'User may add articles': null\n'User may change articles': null\n'User may delete articles': null\n'User may add images': null\n'User may change images': null\n'User may delete images': null\n'User may delete templates': null\n'User may add/change staff accounts and passwords': null\n'User may add/change subscribers accounts and passwords': null\n'User may delete staff accounts': null\n'User may manage user subscriptions': null\n'User may manage account types': null\n'User may add/change article types': null\n'User may delete article types': null\n'User may manage templates': null\n'User may add/change country entries': null\n'User may add languages and manage language information': null\n'User may delete languages': null\n'User may view audit logs': null\n'User may delete country entries': null\n'User may manage localizer': null\n'User may publish articles': null\n'User may manage topics': null\n'User may use bold': null\n'User may use italic': null\n'User may use underline': null\n'User may use strikethrough': null\n'User may change text alignment': null\n'User may copy, cut, and paste': null\n'User may undo/redo': null\n'User may change text direction': null\n'User may set indents': null\n'User may add links': null\n'User may add subheads': null\n'User may insert images': null\n'User may view the HTML source': null\n'User may enlarge the editor': null\n'User may change the font face': null\n'User may change the font size': null\n'User may create bulleted lists': null\n'User may create numbered lists': null\n'User may insert tables': null\n'User may insert horizontal rules': null\n'User may change the font color': null\n'User may use superscripts': null\n'User may use subscripts': null\n'User may backup and restore the site data': null\nMiscellaneous: null\n'Staff/Subscribers Management': null\n'Editor Basic Settings': null\n'Editor Advanced Font Settings': null\n'Editor Table Settings': null\n'Administrative tasks': null\n'User will be notified on several events': null\n'Editor Miscellaneous Settings': null\n'No such user account.': null\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: null\n        registered: null\n        pending: null\n        deleted: null\n        active: null\n    table:\n        actions:\n            actions: null\n            edit: null\n            resend_email: null\n            rename: null\n            remove: null\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.sr.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: 'Веб сајт'\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: Геолокација\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Приказано _START_ до _END_ од _TOTAL_ уноса'\n'Send email to user:': null\n'No users found.': null\n'No records found.': 'Нема записа'\n'No entries to show': 'Нема уноса за приказ'\n'Display _MENU_ records': 'Прикажи _MENU_ записе'\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': '- филтрирање међу _MAX_ записа'\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: Ниједан\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': 'Уреди своју лозинку'\n'Edit user $1': null\n'Edit subscriptions': 'Уреди претплате'\n'Edit profile': null\n'Edit permissions': 'Уреди корисничка права'\n'Create new account': 'Направи нови налог'\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: Шаблони\nUsername: 'Корисничко име'\n'Last Name': Презиме\n'First Name': Име\nEmail: email\n'You were logged out.': 'Сада сте одјављени'\n'Newscoop Subhead': 'Newscoop поднаслов'\nFilters: Филтери\n'Add new Author': 'Додај новог аутора'\n'Loading Data': 'Учитавање података'\n'Delete author type': 'Обриши тип аутора'\n'Cannot remove author type.': 'Није могуће уклонити тип аутора'\n'Cannot remove author alias.': 'Није могуће уконити ауторов алиас'\n'Author alias removed.': 'Ауторов алиас је уклоњен'\n'Are you sure you want to delete this author?': 'Да ли сте сигурни да желите да обришете овог аутора?'\n'Are you sure you want to delete this author alias?': 'Да ли сте сигурни да желите да обришете алиас овог аутора?'\n'All Author Types': 'Сви типови аутора'\n'Add author type': 'Додај тип аутора'\n'You do not have the permission to change authors.': 'Немате право да мењате ауторе'\n'Please fill at least first name and last name.': 'Молимо унесите барем име и презиме'\n'Cannot add author type, this type already exists.': 'Није могуће додати тип аутора, пошто већ постоји'\n'Author type removed.': 'тип аутора уклоњен'\n'Author type must be at least three characters long.': 'Назив типа аутора мора биити бар три карактера дуг'\n'Author type added.': 'Тип аутора додат'\n'Are you sure you want to delete this author type?': 'Да ли сте сигурни да желите да обришете овај тип аутора?'\n'User may change authors': 'Корисник може да мења ауторе'\n'Unable to add new image, target directory is not writable.': 'Није могуће додати нову слику, циљани директоријум нема право уписа'\n'Author saved.': 'Аутор снимљен'\n'Author deleted.': 'Аутор обрисан'\n'Enable Firefox spell checking by default': 'Омогући Фајерфокс проверу исправности уноса текста'\n'User may use the editor status bar': 'Корисник може да користи статус бар едитора'\n'User may clear up the system cache': 'Корисник може да брише системски кеш'\n'Another user is registered with that e-mail address, please choose a different one.': 'Други корисник је већ регистрован са том имејл адресом, молимо изаберите другу'\n'There was an error when trying to update the user info.': 'Дошло је до грешке при покушају измене података о информацијама'\n'User may moderate comments': 'Корисник може да модерише коментаре'\n'User may enable comments': 'Корисник може да одобрава коментаре'\n'User may translate articles': 'Корисник може да преводи текстове'\n'User may move articles': 'Корисник може да премешта текстове'\n'User may find and replace': 'Корисник може да користи опцију тражи/замени'\n'User may change system preferences': 'Корисник може да мења системске поставке'\n'User may attach topics to articles': 'Корисник може да додаје теме текстовима'\n'User may attach images to articles': 'Корисник може да качи слике уз текстове'\n'User may add special characters': 'Корисник може да додаје специјалне знакове'\n'That user name already exists, please choose a different login name.': 'То корисничко име већ постоји, изаберите неко друго име.'\n'User may delete article attachments': 'Корисник може да брише атачменте уз чланке.'\n'User may change article attachments': 'Корисник може да мења атачменте уз чланке'\n'User may add article attachments': 'Корисник може да додаје атачменте уз чланке'\n'You do not have the right to create user accounts.': 'Немате право да креирате корисничке налоге'\n'You must select a $1': 'Морате изабрати $1'\n'The password must be at least 6 characters long and both passwords should match.': 'Лозинка мора бити дугачка најмање 6 карактера и обе лозинке се морају поклапати'\n'The user account could not be created.': 'Кориснички налог не може бити креиран'\n'User account $1 was created successfully.': 'Кориснички налог $1 је успешно направљен.'\n'You do not have the right to change user account permissions.': 'Немате право да мењате додељена права за корисничке налоге'\n'You do not have the right to change user account information.': 'Немате право да мењате податке за кориснички налог '\n'The password you typed is incorrect.': 'Лозинка коју сте унели је неисправна'\n'You do not have the right to delete user accounts.': 'Немате право да бришете корисничке налоге'\n'User account $1 was deleted successfully.': 'Кориснички налог $1 је успешно обрисан.'\n'The IP Group $1 has been created.': 'Група заснована на IP адреси је креирана'\n'There was an error creating the IP address group.': 'Дошло је до грешке при креирању групе засноване на ИП адреси.'\n'The IP address group $1 has been deleted.': 'Група заснована на IP адреси $1 је обрисана'\n'User $1 information was changed successfully.': 'Подаци о кориснику $1 су успешно промењени.'\n'User Type': 'Тип корисника'\n'The IP address group $1:$2 conflicts with another existing group.': 'ИП адресна група $1:$2 се сукобљава са другом, већ постојећом групом.'\n'User may add/change publications': 'Корисник може да додаје/мења публикације'\n'Invalid value of user type parameter': 'Погрешна вредност параметра за тип корисника'\n'User may delete publications': 'Корисник може да брише публикације'\n'User may add/change issues': 'Корисник може да додаје/мења издања'\n'User may delete issues': 'Корисник може да брише издања'\n'User may add/change sections': 'Корисник може да додаје/мења рубрике'\n'User may delete sections': 'Корисник може да брише рубрике'\n'User may add articles': 'Корисник може да додаје текстове'\n'User may change articles': 'Корисник може да мења текстове'\n'User may delete articles': 'Корисник може да брише текстове'\n'User may add images': 'Корисник може да додаје слике'\n'User may change images': 'Корисник може да мења слике'\n'User may delete images': 'Корисник може да брише слике'\n'User may delete templates': 'Корисник може да брише шаблоне'\n'User may add/change staff accounts and passwords': 'Корисник може да додаје/мења сарадничке налоге и лозинке'\n'User may add/change subscribers accounts and passwords': 'Корисник може да додаје/мења претплатничке налоге и лозинке'\n'User may delete staff accounts': 'Корисник може да брише сарадничке налоге'\n'User may manage user subscriptions': 'Корисник може да администрира претплатама'\n'User may manage account types': 'Корисник може да администрира типовима налога'\n'User may add/change article types': 'Корисник може да додаје/мења типове текстова'\n'User may delete article types': 'Корисник може да брише типове текстова'\n'User may manage templates': 'Корисник може да управља шаблонима'\n'User may add/change country entries': 'Корисник може да додаје/мења податке о државама'\n'User may add languages and manage language information': 'Корисник може да додаје језике и управља информацијама о језику'\n'User may delete languages': 'Корисник може да брише језике'\n'User may view audit logs': 'Корисник има приступ логовима'\n'User may delete country entries': 'Корисник може да брише податке о државама'\n'User may manage localizer': 'Корисник има приступ лакализатору'\n'User may publish articles': 'Корисник може да објављује текстове'\n'User may manage topics': 'Корисник може да управља темама'\n'User may use bold': 'Корисник може да користи масна слова (болд)'\n'User may use italic': 'Корисник може да користи курзив (италик)'\n'User may use underline': 'Корисник може да користи подвучена слова'\n'User may use strikethrough': 'Корисник може да користи прецртана слова'\n'User may change text alignment': 'Корисник може да мења равнање текста'\n'User may copy, cut, and paste': 'Корисник може да корсити копирање, лепљење и сечење'\n'User may undo/redo': 'Корисник може да користи undo/redo'\n'User may change text direction': 'Корисник може да мења правац текста'\n'User may set indents': 'Корисник може да подешава увлачења'\n'User may add links': 'Корисник може да додаје линкове'\n'User may add subheads': 'Корисник може да додаје међунаслове'\n'User may insert images': 'Корисник може да убацује слике'\n'User may view the HTML source': 'Корисник има право прегледа ХТМЛ кода'\n'User may enlarge the editor': 'Корисник може да повећава едитор'\n'User may change the font face': 'Корисник може да мења фонтове'\n'User may change the font size': 'Корисник може да мења величину текста'\n'User may create bulleted lists': 'Корисник може да прави листе без редних бројева (bullet)'\n'User may create numbered lists': 'Корисник може да прави листе са редним бројевима'\n'User may insert tables': 'Корисник може да додаје табеле'\n'User may insert horizontal rules': 'Корисник може да додаје хоризонталне линије'\n'User may change the font color': 'Корисник може да мења боју слова'\n'User may use superscripts': 'Корисник може да користи текст у експоненту'\n'User may use subscripts': 'Корисник може да корсити имениоцу'\n'User may backup and restore the site data': 'Корисник може бекаповати и враћати податке о сајту'\nMiscellaneous: Разно\n'Staff/Subscribers Management': 'Управљање сарадничким/претплатничким налозима'\n'Editor Basic Settings': 'Основна подешавања едитора'\n'Editor Advanced Font Settings': 'Напредно подешавање особина фонта у едитору'\n'Editor Table Settings': 'Подешавање особина табела у едитору'\n'Administrative tasks': 'Администраторски послови'\n'User will be notified on several events': 'Корисник ће бити обавештен о одређеним системским активностима'\n'Editor Miscellaneous Settings': 'Подешавање разних особина у едитору'\n'No such user account.': 'Нема таквог корисничког налога'\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: 'Управљање корисницима'\n    created: Направљено\n    updated: Измењено\n    status:\n        status: Статус\n        registered: null\n        pending: null\n        deleted: Обрисано\n        active: Активна\n    table:\n        actions:\n            actions: Акције\n            edit: Уреди\n            resend_email: null\n            rename: Преименуј\n            remove: Уклони\n        confirm_remove: null\n        table_messages:\n            page: Страна\n            perPageText: 'Прикажи:'\n            pageText: Стране\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: Приказивање\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: Обрађујем...\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.sv.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': 'Användaren får översätta artiklar'\n'User may move articles': 'Användaren får flytta artiklar'\n'User may find and replace': 'Användaren får söka och ersätta'\n'User may change system preferences': 'Användaren får ändra systeminställningar'\n'User may attach topics to articles': 'Användaren får lägga till teman till artiklar'\n'User may attach images to articles': 'Användaren får bifoga bilder till artiklar'\n'User may add special characters': 'Användaren får lägga till specialtecken'\n'That user name already exists, please choose a different login name.': 'Användarnamnet finns redan, var god välj ett annat användarnamn.'\n'User may delete article attachments': 'Användaren får radera artikelbilagor'\n'User may change article attachments': 'Användaren får ändra på artikelbilagor'\n'User may add article attachments': 'Användaren får lägga till artikelbilagor'\n'You do not have the right to create user accounts.': 'Du har itne rätt att skapa användarkonton.'\n'You must select a $1': 'Du måste välja en $1'\n'The password must be at least 6 characters long and both passwords should match.': 'Lösenordet måste vara minst 6 tecken långt och båda lösenorden måste stämma överens.'\n'The user account could not be created.': 'Användarkontot kunde inte skapas.'\n'User account $1 was created successfully.': 'Användarkontot $1 skapades framgångsrikt.'\n'You do not have the right to change user account permissions.': 'du har inte rätt att ändra användarkontorättigheter.'\n'You do not have the right to change user account information.': 'Du har inte rätt att ändra användarkontoinformation.'\n'The password you typed is incorrect.': 'Lösenordet du skrev är felaktigt.'\n'You do not have the right to delete user accounts.': 'Du har inte rätt att radera användarkonton.'\n'User account $1 was deleted successfully.': 'Användarkontot $1 raderades framgångsrikt.'\n'The IP Group $1 has been created.': 'IP-gruppen $1 har skapats.'\n'There was an error creating the IP address group.': 'Ett fel uppstod när IP-adressgruppen skapades.'\n'The IP address group $1 has been deleted.': 'IP-adressgruppen $1 har raderats.'\n'User $1 information was changed successfully.': 'Användaren $1s information ändrades framgångsrikt.'\n'User Type': Användartyp\n'The IP address group $1:$2 conflicts with another existing group.': 'IP-adressgruppen $1:$2 krockar med en annan existerande grupp.'\n'User may add/change publications': 'Användaren får lägga till/ändra publikationer'\n'Invalid value of user type parameter': 'Felaktigt värde på användartypparametern.'\n'User may delete publications': 'Användaren får radera publikationer'\n'User may add/change issues': 'Användaren får lägga till/ändra utgåvor'\n'User may delete issues': 'Användaren får radera utgåvor'\n'User may add/change sections': 'Användaren får lägga till/ändra sektioner'\n'User may delete sections': 'Användaren får radera sektioner'\n'User may add articles': 'Användaren får lägga till artiklar'\n'User may change articles': 'Användaren får ändra artiklar'\n'User may delete articles': 'Användaren får radera artiklar'\n'User may add images': 'Användaren får lägga till bilder'\n'User may change images': 'Användaren får ändra bilder'\n'User may delete images': 'Användaren får radera bilder'\n'User may delete templates': 'Användaren får radera mallar'\n'User may add/change staff accounts and passwords': 'Användaren får lägga till/ändra stabskonton och lösenord'\n'User may add/change subscribers accounts and passwords': 'Användaren får lägga till/ändra prenumerantkonton och lösenord'\n'User may delete staff accounts': 'Användaren får radera stabskonton'\n'User may manage user subscriptions': 'Användaren får hantera prenumerantanvändare'\n'User may manage account types': 'Användaren får hantera kontotyper'\n'User may add/change article types': 'Användaren får lägga till/ändra artikeltyper'\n'User may delete article types': 'Användaren får radera artikeltyper'\n'User may manage templates': 'Användaren får hantera mallar'\n'User may add/change country entries': 'Användaren får lägga till/ändra landsposter'\n'User may add languages and manage language information': 'Användaren får lägga till språk och hantera språkinformation'\n'User may delete languages': 'Användaren får radera språk'\n'User may view audit logs': 'Användaren får visa loggar'\n'User may delete country entries': 'Användaren får radera landsposter'\n'User may manage localizer': 'Användaren får hantera översättaren'\n'User may publish articles': 'Användaren får publicera artiklar'\n'User may manage topics': 'Användaren får hantera teman'\n'User may use bold': 'Användaren får använda fet stil'\n'User may use italic': 'Användaren får använda kursiv stil'\n'User may use underline': 'Användaren får göra understrykningar'\n'User may use strikethrough': 'Användaren får göra överstrykningar'\n'User may change text alignment': 'Användaren får ändra textflöde'\n'User may copy, cut, and paste': 'Användaren får kopiera och klistra in'\n'User may undo/redo': 'Användaren får ångra/göra om'\n'User may change text direction': 'Användaren får ändra textriktning'\n'User may set indents': 'Användaren får sätta inskjutning'\n'User may add links': 'Användaren får lägga till länkar'\n'User may add subheads': 'Användaren får lägga in mellanrubriker'\n'User may insert images': 'Användaren får lägga in bilder'\n'User may view the HTML source': 'Användaren får visa HTML-källkoden'\n'User may enlarge the editor': 'Användaren får förstora redigeraren'\n'User may change the font face': 'Användaren får ändra typsnitt'\n'User may change the font size': 'Användaren får ändra textstorlek'\n'User may create bulleted lists': 'Användaren får skapa punktlistor'\n'User may create numbered lists': 'Användaren får skapa numrerade listor'\n'User may insert tables': 'Användaren får lägga in tabeller'\n'User may insert horizontal rules': 'Användaren får lägga in horisontala streck'\n'User may change the font color': 'Användaren får ändra textfärg'\n'User may use superscripts': 'Användaren får använda övertexter'\n'User may use subscripts': 'Användaren får använda undertexter'\n'User may backup and restore the site data': null\nMiscellaneous: Blandat\n'Staff/Subscribers Management': Stab/Prenumeranthantering\n'Editor Basic Settings': 'Textredigerare grundläggande inställningar'\n'Editor Advanced Font Settings': 'Textredigerare avancerade typsnittsinställningar inställningar'\n'Editor Table Settings': 'Textredigerare tabellinställningar'\n'Administrative tasks': 'Administrativa sysslor'\n'User will be notified on several events': 'Användaren meddelas vid flera händelser'\n'Editor Miscellaneous Settings': 'Textredigerare blandade inställningar'\n'No such user account.': 'Användarkontot finns inte.'\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: Status\n        registered: null\n        pending: null\n        deleted: null\n        active: Aktiv\n    table:\n        actions:\n            actions: Handlingar\n            edit: Redigera\n            resend_email: null\n            rename: null\n            remove: 'Ta bort'\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.tr.yml",
    "content": "'Password confirmation does not match your password.': 'Parola (tekrar) ve Parola alanları aynı değil.'\n'Password Confirmation': 'Şifrenizi tekrar girin'\nWebsite: null\nTwitter: Twitter\n'Save profile': 'Profili kaydet'\n'Profile image': 'Profil resmi'\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': Hakkımda\n'User with email %s is registered already.': 'Bu mail adresi kullanımda'\n'Username is used. Please use another one.': null\nContinue: İleri\n'Accepting terms of use': 'Yasal koşulları kabul ediyorum'\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: 'Kullanıcı adı'\n'Last Name': Soyisim\n'First Name': İsim\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': null\n'User may move articles': null\n'User may find and replace': null\n'User may change system preferences': null\n'User may attach topics to articles': null\n'User may attach images to articles': null\n'User may add special characters': null\n'That user name already exists, please choose a different login name.': null\n'User may delete article attachments': null\n'User may change article attachments': null\n'User may add article attachments': null\n'You do not have the right to create user accounts.': null\n'You must select a $1': null\n'The password must be at least 6 characters long and both passwords should match.': null\n'The user account could not be created.': null\n'User account $1 was created successfully.': null\n'You do not have the right to change user account permissions.': null\n'You do not have the right to change user account information.': null\n'The password you typed is incorrect.': null\n'You do not have the right to delete user accounts.': null\n'User account $1 was deleted successfully.': null\n'The IP Group $1 has been created.': null\n'There was an error creating the IP address group.': null\n'The IP address group $1 has been deleted.': null\n'User $1 information was changed successfully.': null\n'User Type': null\n'The IP address group $1:$2 conflicts with another existing group.': null\n'User may add/change publications': null\n'Invalid value of user type parameter': null\n'User may delete publications': null\n'User may add/change issues': null\n'User may delete issues': null\n'User may add/change sections': null\n'User may delete sections': null\n'User may add articles': null\n'User may change articles': null\n'User may delete articles': null\n'User may add images': null\n'User may change images': null\n'User may delete images': null\n'User may delete templates': null\n'User may add/change staff accounts and passwords': null\n'User may add/change subscribers accounts and passwords': null\n'User may delete staff accounts': null\n'User may manage user subscriptions': null\n'User may manage account types': null\n'User may add/change article types': null\n'User may delete article types': null\n'User may manage templates': null\n'User may add/change country entries': null\n'User may add languages and manage language information': null\n'User may delete languages': null\n'User may view audit logs': null\n'User may delete country entries': null\n'User may manage localizer': null\n'User may publish articles': null\n'User may manage topics': null\n'User may use bold': null\n'User may use italic': null\n'User may use underline': null\n'User may use strikethrough': null\n'User may change text alignment': null\n'User may copy, cut, and paste': null\n'User may undo/redo': null\n'User may change text direction': null\n'User may set indents': null\n'User may add links': null\n'User may add subheads': null\n'User may insert images': null\n'User may view the HTML source': null\n'User may enlarge the editor': null\n'User may change the font face': null\n'User may change the font size': null\n'User may create bulleted lists': null\n'User may create numbered lists': null\n'User may insert tables': null\n'User may insert horizontal rules': null\n'User may change the font color': null\n'User may use superscripts': null\n'User may use subscripts': null\n'User may backup and restore the site data': null\nMiscellaneous: null\n'Staff/Subscribers Management': null\n'Editor Basic Settings': null\n'Editor Advanced Font Settings': null\n'Editor Table Settings': null\n'Administrative tasks': null\n'User will be notified on several events': null\n'Editor Miscellaneous Settings': null\n'No such user account.': null\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: null\n        registered: null\n        pending: null\n        deleted: null\n        active: null\n    table:\n        actions:\n            actions: null\n            edit: null\n            resend_email: null\n            rename: null\n            remove: null\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.uk.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: Веб-сейт\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: Геопозіціонування\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': 'Показані від початку до кінця, від загального числа записів'\n'Send email to user:': null\n'No users found.': null\n'No records found.': 'Немає записів'\n'No entries to show': 'Немає записів для відображення'\n'Display _MENU_ records': 'Показати _MENU_ записи'\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': 'фільтрація від _MAX_ записів'\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': 'І’мя користувача вже використовується'\n'User with id $1 not found': 'Користувача з ID $1 не знайдено.'\n'User was deleted.': 'Користувач видалений.'\n'User saved': 'Користувач збережений'\n'User id not specified': 'ID користувача не визначено'\n'User $1 created': 'Користувач $1 створений'\n'Send confirm email': 'Відправити листа з підтвердженням'\n'Profile saved.': 'Профіль збережений.'\nPicture: Зображення\n'Password updated': 'Пароль оновлений'\nNone: 'Ні один'\n'New confirmation email was sent to user.': 'Новий лист для підтвердження відісланий користувачу.'\n'Email is used already': 'електрона адреса вже використовується'\n'Edit your password': 'Відредагуйте свій пароль'\n'Edit user $1': 'Редагувати користувача  $1'\n'Edit subscriptions': 'Редагувати підписки'\n'Edit profile': 'Редагувати профіль'\n'Edit permissions': 'Редагування прав'\n'Create new account': 'Створити новий обліковий запис'\n'Comment ban settings': 'Налаштування коментаря заборони'\n'Ban for user $1 saved.': 'Заборона для користувача $1 збережена'\n'User account is active': 'Акаунт користувача активний.'\n'Allow users profile to be publicly displayed': 'Дозволити відображати публічно профіль користувача'\n'Allow user access to login to site backend': 'Надати доступ до адмінцентру?'\nTemplates: Шаблони\nUsername: 'Ім’я користувача'\n'Last Name': Прізвище\n'First Name': Ім’я\nEmail: Е-пошта\n'You were logged out.': 'Ви вийшли з системи.'\n'Newscoop Subhead': 'Підзаголовок Newscoop'\nFilters: Фільтри\n'Add new Author': 'Додати нового автора'\n'Loading Data': 'Завантаження даних'\n'Delete author type': 'Видалити тип автора'\n'Cannot remove author type.': 'Неможливо видалити тип автора.'\n'Cannot remove author alias.': 'Неможливо видалити псевдонім автора.'\n'Author alias removed.': 'Псевдонім автора видалений.'\n'Are you sure you want to delete this author?': 'Ви впевнені що хочете видалити автора?'\n'Are you sure you want to delete this author alias?': 'Ви впевнені що хочете видалити псевдонім автора?'\n'All Author Types': 'Усі типи авторів'\n'Add author type': 'Додати тип автора'\n'You do not have the permission to change authors.': 'Ви не маєте прав для редагування авторів.'\n'Please fill at least first name and last name.': 'Будь ласка  введіть ім’я та прізвище.'\n'Cannot add author type, this type already exists.': 'Неможливо додати тип автора, такий тип вже існує.'\n'Author type removed.': 'Тип автора видалено.'\n'Author type must be at least three characters long.': 'Тип автора має містити принаймні три літери'\n'Author type added.': 'Тип автора додано.'\n'Are you sure you want to delete this author type?': 'Ви впевнені що хочете видати цей тип автора?'\n'User may change authors': 'Користувачі можуть змінювати типи авторів'\n'Unable to add new image, target directory is not writable.': 'Неможливо додати нове зображення, цільова директорія не сконфігурована для запису.'\n'Author saved.': 'Автора збережено.'\n'Author deleted.': 'Автора видалено.'\n'Enable Firefox spell checking by default': 'Увімкніть перевірку орфографії за замовчуванням у Firefox '\n'User may use the editor status bar': 'Користувач може використовувати редакторську інфо-панель '\n'User may clear up the system cache': 'Користувач може очищувати системний кеш.'\n'Another user is registered with that e-mail address, please choose a different one.': 'Інший користувач зареєстрований цю адресу електронної пошти, будь ласка, виберіть іншу.'\n'There was an error when trying to update the user info.': 'Помилка при спробі оновити інформацію про користувача.'\n'User may moderate comments': 'Користувач може модерувати коментарі'\n'User may enable comments': 'Користувач може вмикати коментарі'\n'User may translate articles': 'Користувач може перекладати статті'\n'User may move articles': 'Користувач може переміщати статті'\n'User may find and replace': 'Корисувач може знаходити та замінювати'\n'User may change system preferences': 'Користувач може змінювати системні налаштування'\n'User may attach topics to articles': 'Користувач може вказувати теми для статей'\n'User may attach images to articles': 'Користувач може прікріпляти зображення до статей'\n'User may add special characters': 'Користувач може додавати спеціальні символи'\n'That user name already exists, please choose a different login name.': 'Цей користувач вже існує, будь ласка виберіть інший логін'\n'User may delete article attachments': 'Користувач може видаляти прікріплення у статтях'\n'User may change article attachments': 'Користувач може змінювати прікріплення у статтях'\n'User may add article attachments': 'Користувач може додавати прікріплення у статті'\n'You do not have the right to create user accounts.': 'Ви не маєте прав створювати акаунти користувачів'\n'You must select a $1': 'Ви маєте вибрати $1'\n'The password must be at least 6 characters long and both passwords should match.': 'Пароль має містити принаймні шість символів та обидва паролі повинні збігатися.'\n'The user account could not be created.': 'Акаунт користувача не може бути створений.'\n'User account $1 was created successfully.': 'Акаунт користувача  $1 створено.'\n'You do not have the right to change user account permissions.': 'Ви не маєте прав змінювати акаунти користувачів.'\n'You do not have the right to change user account information.': 'Ви не маєете прав змінювати інформацію у акаунтах користувачів.'\n'The password you typed is incorrect.': 'Введений вами пароль не є вірним.'\n'You do not have the right to delete user accounts.': 'Ви не маєте прав видаляти акаунти користувачів.'\n'User account $1 was deleted successfully.': 'Акаунт користувача  $1 видалено.'\n'The IP Group $1 has been created.': 'Група ІР-адрес  $1 була створена.'\n'There was an error creating the IP address group.': 'Помилка при створенні групи ІР-адрес.'\n'The IP address group $1 has been deleted.': 'Група ІР-адресів  $1  видалена.'\n'User $1 information was changed successfully.': 'Інформацію про користувач $1 змінено.'\n'User Type': 'Тип користувача'\n'The IP address group $1:$2 conflicts with another existing group.': 'ІР-адрес групи  $1: $2 конфліктує з іншою існуючою групою.'\n'User may add/change publications': 'Користувач може додавати / змінювати публікації'\n'Invalid value of user type parameter': 'Невірне значення параметру типу користувачів'\n'User may delete publications': 'Користувач може видаляти публікації'\n'User may add/change issues': 'Користувач може додавати / змінювати випуски'\n'User may delete issues': 'Користувач може видаляти випуски'\n'User may add/change sections': 'Користувам може додавати / змінювати розділи'\n'User may delete sections': 'Користувач може видаляти розділи'\n'User may add articles': 'Користувач може додавати статті'\n'User may change articles': 'Користувач може змінювати статті'\n'User may delete articles': 'Користувач може видаляти статті'\n'User may add images': 'Користувач може додавати зображення'\n'User may change images': 'Користувач може змінювати зображення'\n'User may delete images': 'Користувач може видаляти зображення'\n'User may delete templates': 'Користувач може видаляти шаблони'\n'User may add/change staff accounts and passwords': 'Користувач може додавати / змінювати акаунти та паролі співробітників'\n'User may add/change subscribers accounts and passwords': 'Користувач може додавати / змінювати акаунти та паролі підписувачів'\n'User may delete staff accounts': 'Користувач може видаляти акаунти та паролі співробітників'\n'User may manage user subscriptions': 'Користувач може керувати піпискою користувачів'\n'User may manage account types': 'Користувач може керувати типами акаунтів'\n'User may add/change article types': 'Користувач може змінювати типи статей'\n'User may delete article types': 'Користувач може видаляти типи статей'\n'User may manage templates': 'Користувач може керувати шаблонами'\n'User may add/change country entries': 'Користувач може додавати / змінювати записи країн'\n'User may add languages and manage language information': 'Користувач може додавати та керувати інформацією про мови'\n'User may delete languages': 'Користувач може видаляти мови'\n'User may view audit logs': 'Користувач може переглядати логи аудіту'\n'User may delete country entries': 'Користувач може видаляти записи країн'\n'User may manage localizer': 'Користувач може керувати локалайзером'\n'User may publish articles': 'Користувач може публікувати статті'\n'User may manage topics': 'Користувач може керувати темами'\n'User may use bold': 'Користувач може використовувати <b>Ж</b>'\n'User may use italic': 'Користувач може використовувати <i>I</i>'\n'User may use underline': 'Користувач може використовувати <u>U</u>'\n'User may use strikethrough': 'Користувач може використовувати закреслювання'\n'User may change text alignment': 'Користувач може вирівнювання тексту'\n'User may copy, cut, and paste': 'Користувач може копіювати, вирізати та вставляти'\n'User may undo/redo': 'Користувач може використовувати Історію команд'\n'User may change text direction': 'Користувач може змінювати напрямок тексту'\n'User may set indents': 'Користувач може налаштовувати відступи'\n'User may add links': 'Користувач може додавати посилання'\n'User may add subheads': 'Користувач може додавати підзаголовки'\n'User may insert images': 'Користувач може вставляти зображення'\n'User may view the HTML source': 'Користувач може переглядати HTML-код'\n'User may enlarge the editor': 'Користувач може збільшувати окно редагування'\n'User may change the font face': 'Користувач може змінювати шрифти'\n'User may change the font size': 'Користувач може змінювати розмір шрифта'\n'User may create bulleted lists': 'Користувач може створювати марковані списки'\n'User may create numbered lists': 'Користувач може  створювати нумеровані списки'\n'User may insert tables': 'Користувач може вставляти таблиці'\n'User may insert horizontal rules': 'Користувач може вставляти горизонтальну лінію'\n'User may change the font color': 'Користувач може змінювати колір тексту'\n'User may use superscripts': 'Користувач може вставляти надрядковий текст (m.<sup>2</sup>)'\n'User may use subscripts': 'Користувач може вставляти підрядковий текст (m.<sub>2</sub>)'\n'User may backup and restore the site data': 'Користувач може робити резервні копії так відновлати дані з них.'\nMiscellaneous: Різне\n'Staff/Subscribers Management': 'Керування співробітниками / Підписувачами'\n'Editor Basic Settings': 'Редагувати базові налаштування'\n'Editor Advanced Font Settings': 'Редагувати розширені налаштування шрифтів'\n'Editor Table Settings': 'Редагувати налаштування таблиць'\n'Administrative tasks': 'Адміністративні завдання'\n'User will be notified on several events': 'Користувача буде повідомлено про декілька подій'\n'Editor Miscellaneous Settings': 'Редагувати різні налаштування'\n'No such user account.': 'Немає такої акаунту користувача.'\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: 'Керування користувачами'\n    created: Створена\n    updated: null\n    status:\n        status: Статус\n        registered: null\n        pending: null\n        deleted: Видалено\n        active: Активно\n    table:\n        actions:\n            actions: Дії\n            edit: Редагувати\n            resend_email: null\n            rename: null\n            remove: Видалити\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: Обробка...\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.vi.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': null\n'User may move articles': null\n'User may find and replace': null\n'User may change system preferences': null\n'User may attach topics to articles': null\n'User may attach images to articles': null\n'User may add special characters': null\n'That user name already exists, please choose a different login name.': null\n'User may delete article attachments': null\n'User may change article attachments': null\n'User may add article attachments': null\n'You do not have the right to create user accounts.': null\n'You must select a $1': null\n'The password must be at least 6 characters long and both passwords should match.': null\n'The user account could not be created.': null\n'User account $1 was created successfully.': null\n'You do not have the right to change user account permissions.': null\n'You do not have the right to change user account information.': null\n'The password you typed is incorrect.': null\n'You do not have the right to delete user accounts.': null\n'User account $1 was deleted successfully.': null\n'The IP Group $1 has been created.': null\n'There was an error creating the IP address group.': null\n'The IP address group $1 has been deleted.': null\n'User $1 information was changed successfully.': null\n'User Type': null\n'The IP address group $1:$2 conflicts with another existing group.': null\n'User may add/change publications': null\n'Invalid value of user type parameter': null\n'User may delete publications': null\n'User may add/change issues': null\n'User may delete issues': null\n'User may add/change sections': null\n'User may delete sections': null\n'User may add articles': null\n'User may change articles': null\n'User may delete articles': null\n'User may add images': null\n'User may change images': null\n'User may delete images': null\n'User may delete templates': null\n'User may add/change staff accounts and passwords': null\n'User may add/change subscribers accounts and passwords': null\n'User may delete staff accounts': null\n'User may manage user subscriptions': null\n'User may manage account types': null\n'User may add/change article types': null\n'User may delete article types': null\n'User may manage templates': null\n'User may add/change country entries': null\n'User may add languages and manage language information': null\n'User may delete languages': null\n'User may view audit logs': null\n'User may delete country entries': null\n'User may manage localizer': null\n'User may publish articles': null\n'User may manage topics': null\n'User may use bold': null\n'User may use italic': null\n'User may use underline': null\n'User may use strikethrough': null\n'User may change text alignment': null\n'User may copy, cut, and paste': null\n'User may undo/redo': null\n'User may change text direction': null\n'User may set indents': null\n'User may add links': null\n'User may add subheads': null\n'User may insert images': null\n'User may view the HTML source': null\n'User may enlarge the editor': null\n'User may change the font face': null\n'User may change the font size': null\n'User may create bulleted lists': null\n'User may create numbered lists': null\n'User may insert tables': null\n'User may insert horizontal rules': null\n'User may change the font color': null\n'User may use superscripts': null\n'User may use subscripts': null\n'User may backup and restore the site data': null\nMiscellaneous: null\n'Staff/Subscribers Management': null\n'Editor Basic Settings': null\n'Editor Advanced Font Settings': null\n'Editor Table Settings': null\n'Administrative tasks': null\n'User will be notified on several events': null\n'Editor Miscellaneous Settings': null\n'No such user account.': null\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: null\n        registered: null\n        pending: null\n        deleted: null\n        active: null\n    table:\n        actions:\n            actions: null\n            edit: null\n            resend_email: null\n            rename: null\n            remove: null\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.zh.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: 没有\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': null\n'User may move articles': null\n'User may find and replace': null\n'User may change system preferences': null\n'User may attach topics to articles': null\n'User may attach images to articles': null\n'User may add special characters': null\n'That user name already exists, please choose a different login name.': null\n'User may delete article attachments': null\n'User may change article attachments': null\n'User may add article attachments': null\n'You do not have the right to create user accounts.': 您无权建立新帐户\n'You must select a $1': 你必须选择一个$1\n'The password must be at least 6 characters long and both passwords should match.': 密码至少6个字符，两次密码要相同\n'The user account could not be created.': 此帐户不能创建\n'User account $1 was created successfully.': null\n'You do not have the right to change user account permissions.': 您无权改变帐户许可\n'You do not have the right to change user account information.': 您无权修改帐户信息\n'The password you typed is incorrect.': 密码输入正确\n'You do not have the right to delete user accounts.': 您无权删除帐户\n'User account $1 was deleted successfully.': null\n'The IP Group $1 has been created.': IP组$1已建立\n'There was an error creating the IP address group.': null\n'The IP address group $1 has been deleted.': IP地址组$1已被删除\n'User $1 information was changed successfully.': null\n'User Type': null\n'The IP address group $1:$2 conflicts with another existing group.': null\n'User may add/change publications': 用户可以添加/改变发布\n'Invalid value of user type parameter': null\n'User may delete publications': 用户可以删除发布\n'User may add/change issues': 用户可以添加/变化问题\n'User may delete issues': 用户可以删除问题\n'User may add/change sections': 用户可以添加/改变区域\n'User may delete sections': 用户可以删除区域\n'User may add articles': 用户可添加文章\n'User may change articles': 用户可以改编文章\n'User may delete articles': 用户可删除文章\n'User may add images': 用户可添加图片\n'User may change images': 用户可替换图片\n'User may delete images': 用户可删除图片\n'User may delete templates': 用户可删除模版\n'User may add/change staff accounts and passwords': null\n'User may add/change subscribers accounts and passwords': null\n'User may delete staff accounts': null\n'User may manage user subscriptions': 用户可管理用户订阅\n'User may manage account types': 用户可管理帐户类型\n'User may add/change article types': 用户可添加/变化文章类型\n'User may delete article types': 用户可删除文章类型\n'User may manage templates': null\n'User may add/change country entries': null\n'User may add languages and manage language information': 用户可添加/管理语言信息\n'User may delete languages': 用户可删除语言\n'User may view audit logs': 用户可查看日志\n'User may delete country entries': 用户可删除国家入口\n'User may manage localizer': 用户可管理本地\n'User may publish articles': 用户可发布文章\n'User may manage topics': 用户可管理主题\n'User may use bold': null\n'User may use italic': null\n'User may use underline': null\n'User may use strikethrough': null\n'User may change text alignment': null\n'User may copy, cut, and paste': null\n'User may undo/redo': null\n'User may change text direction': null\n'User may set indents': null\n'User may add links': null\n'User may add subheads': null\n'User may insert images': null\n'User may view the HTML source': null\n'User may enlarge the editor': null\n'User may change the font face': null\n'User may change the font size': null\n'User may create bulleted lists': null\n'User may create numbered lists': null\n'User may insert tables': null\n'User may insert horizontal rules': null\n'User may change the font color': null\n'User may use superscripts': null\n'User may use subscripts': null\n'User may backup and restore the site data': null\nMiscellaneous: null\n'Staff/Subscribers Management': null\n'Editor Basic Settings': null\n'Editor Advanced Font Settings': null\n'Editor Table Settings': null\n'Administrative tasks': null\n'User will be notified on several events': 用户将被告知\n'Editor Miscellaneous Settings': null\n'No such user account.': 无此帐户\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: 状态\n        registered: null\n        pending: null\n        deleted: null\n        active: null\n    table:\n        actions:\n            actions: null\n            edit: 编辑\n            resend_email: null\n            rename: null\n            remove: null\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/users.zh_TW.yml",
    "content": "'Password confirmation does not match your password.': null\n'Password Confirmation': null\nWebsite: null\nTwitter: null\n'Save profile': null\n'Profile image': null\nOrganisation: null\n'Last Name Public': null\nGoogle+: null\nGeolocation: null\nGender: null\n'First Name Public': null\nFacebook: null\n'Date of birth': null\n'Allow sending emails': null\n'About me': null\n'User with email %s is registered already.': null\n'Username is used. Please use another one.': null\nContinue: null\n'Accepting terms of use': null\n'send confirmation email': null\n'edit user': null\n'delete user': null\n'Verified profile': null\n'Showing _START_ to _END_ of _TOTAL_ entries': null\n'Send email to user:': null\n'No users found.': null\n'No records found.': null\n'No entries to show': null\n'Display _MENU_ records': null\n'Are you sure you want to {action}?': null\n'Active Logins': null\n' - filtering from _MAX_ records': null\n'User renamed.': null\n'User attributes': null\n'Rename user $1': null\n'Username is used already': null\n'User with id $1 not found': null\n'User was deleted.': null\n'User saved': null\n'User id not specified': null\n'User $1 created': null\n'Send confirm email': null\n'Profile saved.': null\nPicture: null\n'Password updated': null\nNone: null\n'New confirmation email was sent to user.': null\n'Email is used already': null\n'Edit your password': null\n'Edit user $1': null\n'Edit subscriptions': null\n'Edit profile': null\n'Edit permissions': null\n'Create new account': null\n'Comment ban settings': null\n'Ban for user $1 saved.': null\n'User account is active': null\n'Allow users profile to be publicly displayed': null\n'Allow user access to login to site backend': null\nTemplates: null\nUsername: null\n'Last Name': null\n'First Name': null\nEmail: null\n'You were logged out.': null\n'Newscoop Subhead': null\nFilters: null\n'Add new Author': null\n'Loading Data': null\n'Delete author type': null\n'Cannot remove author type.': null\n'Cannot remove author alias.': null\n'Author alias removed.': null\n'Are you sure you want to delete this author?': null\n'Are you sure you want to delete this author alias?': null\n'All Author Types': null\n'Add author type': null\n'You do not have the permission to change authors.': null\n'Please fill at least first name and last name.': null\n'Cannot add author type, this type already exists.': null\n'Author type removed.': null\n'Author type must be at least three characters long.': null\n'Author type added.': null\n'Are you sure you want to delete this author type?': null\n'User may change authors': null\n'Unable to add new image, target directory is not writable.': null\n'Author saved.': null\n'Author deleted.': null\n'Enable Firefox spell checking by default': null\n'User may use the editor status bar': null\n'User may clear up the system cache': null\n'Another user is registered with that e-mail address, please choose a different one.': null\n'There was an error when trying to update the user info.': null\n'User may moderate comments': null\n'User may enable comments': null\n'User may translate articles': null\n'User may move articles': null\n'User may find and replace': null\n'User may change system preferences': null\n'User may attach topics to articles': null\n'User may attach images to articles': null\n'User may add special characters': null\n'That user name already exists, please choose a different login name.': null\n'User may delete article attachments': null\n'User may change article attachments': null\n'User may add article attachments': null\n'You do not have the right to create user accounts.': null\n'You must select a $1': null\n'The password must be at least 6 characters long and both passwords should match.': null\n'The user account could not be created.': null\n'User account $1 was created successfully.': null\n'You do not have the right to change user account permissions.': null\n'You do not have the right to change user account information.': null\n'The password you typed is incorrect.': null\n'You do not have the right to delete user accounts.': null\n'User account $1 was deleted successfully.': null\n'The IP Group $1 has been created.': null\n'There was an error creating the IP address group.': null\n'The IP address group $1 has been deleted.': null\n'User $1 information was changed successfully.': null\n'User Type': null\n'The IP address group $1:$2 conflicts with another existing group.': null\n'User may add/change publications': null\n'Invalid value of user type parameter': null\n'User may delete publications': null\n'User may add/change issues': null\n'User may delete issues': null\n'User may add/change sections': null\n'User may delete sections': null\n'User may add articles': null\n'User may change articles': null\n'User may delete articles': null\n'User may add images': null\n'User may change images': null\n'User may delete images': null\n'User may delete templates': null\n'User may add/change staff accounts and passwords': null\n'User may add/change subscribers accounts and passwords': null\n'User may delete staff accounts': null\n'User may manage user subscriptions': null\n'User may manage account types': null\n'User may add/change article types': null\n'User may delete article types': null\n'User may manage templates': null\n'User may add/change country entries': null\n'User may add languages and manage language information': null\n'User may delete languages': null\n'User may view audit logs': null\n'User may delete country entries': null\n'User may manage localizer': null\n'User may publish articles': null\n'User may manage topics': null\n'User may use bold': null\n'User may use italic': null\n'User may use underline': null\n'User may use strikethrough': null\n'User may change text alignment': null\n'User may copy, cut, and paste': null\n'User may undo/redo': null\n'User may change text direction': null\n'User may set indents': null\n'User may add links': null\n'User may add subheads': null\n'User may insert images': null\n'User may view the HTML source': null\n'User may enlarge the editor': null\n'User may change the font face': null\n'User may change the font size': null\n'User may create bulleted lists': null\n'User may create numbered lists': null\n'User may insert tables': null\n'User may insert horizontal rules': null\n'User may change the font color': null\n'User may use superscripts': null\n'User may use subscripts': null\n'User may backup and restore the site data': null\nMiscellaneous: null\n'Staff/Subscribers Management': null\n'Editor Basic Settings': null\n'Editor Advanced Font Settings': null\n'Editor Table Settings': null\n'Administrative tasks': null\n'User will be notified on several events': null\n'Editor Miscellaneous Settings': null\n'No such user account.': null\n'User image (full-size)': null\n'User account is highlighted as \"featured account\"': null\n'Custom attribute...': null\n'An author with the same full name (combination of first and last name) already exists.': null\nusers:\n    label:\n        title: null\n    menu:\n        manage: null\n    created: null\n    updated: null\n    status:\n        status: 狀態\n        registered: null\n        pending: null\n        deleted: null\n        active: null\n    table:\n        actions:\n            actions: null\n            edit: 編輯\n            resend_email: null\n            rename: null\n            remove: null\n        confirm_remove: null\n        table_messages:\n            page: null\n            perPageText: null\n            pageText: null\n            recordCountPageBoundTemplate: null\n            recordCountPageUnboundedTemplate: null\n            recordCountTotalTemplate: null\n            recordCountFilteredTemplate: null\n            recordCountText: null\n            recordCountTextTemplate: null\n            recordCountTemplate: null\n            processingText: null\n    chart:\n        title: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.ar.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.az.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.be.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.bn.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.cs.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.da.yml",
    "content": "type_publications:\n    name:\n        min: 'Publikationens navn skal være længere end {{ limit }} tegn.'\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.de.yml",
    "content": "type_publications:\n    name:\n        min: 'Der Name der Publikation muss länger sein als  {{ limit }} Zeichen.'\n    metaDescription:\n        max: 'Die (SEO-)Beschreibung der Publikation muss kürzer sein als  {{ limit }} Zeichen.'\n    metaTitle:\n        max: 'Der (SEO-)Titel der Publikation muss kürzer sein als  {{ limit }} Zeichen.'\n    metaKeywords:\n        max: 'Die (SEO-)Schlüsselwörter der Publikation müssen insgesamt kürzer sein als  {{ limit }} Zeichen.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.de_AT.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.el.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.en.yml",
    "content": "type_publications:\n    name:\n        min: \"Publication name must be longer than {{ limit }} characters.\"\n    metaDescription:\n        max: \"Publication description must be shorter than {{ limit }} characters.\"\n    metaTitle:\n        max: \"Publication title must be shorter than {{ limit }} characters.\"\n    metaKeywords:\n        max: \"Publication keyword total must be shorter than {{ limit }} characters.\"    \n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.en_GB.yml",
    "content": "type_publications:\n    name:\n        min: 'Publication name must be longer than {{ limit }} characters.'\n    metaDescription:\n        max: 'Publication description must be shorter than {{ limit }} characters.'\n    metaTitle:\n        max: 'Publication title must be shorter than {{ limit }} characters.'\n    metaKeywords:\n        max: 'Publication keyword total must be shorter than {{ limit }} characters.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.es.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.es_AR.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.fa.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.fa_AF.yml",
    "content": "type_publications:\n    name:\n        min: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.fr.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.he.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.hr.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.hu.yml",
    "content": "type_publications:\n    name:\n        min: 'A kiadvány címének hosszabbnak kell lennie {{ limit }} karakternél.'\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.hy.yml",
    "content": "type_publications:\n    name:\n        min: 'Publication name must be longer than {{ limit }} characters.'\n    metaDescription:\n        max: 'Publication description must be shorter than {{ limit }} characters.'\n    metaTitle:\n        max: 'Publication title must be shorter than {{ limit }} characters.'\n    metaKeywords:\n        max: 'Publication keyword total must be shorter than {{ limit }} characters.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.hy_AM.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.id.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.it.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.ka.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.ko.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.ku.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.lv.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.mr.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.nb_NO.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.nl.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.pa.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: 'Publication description must be shorter than {{ limit }} characters.'\n    metaTitle:\n        max: 'Publication title must be shorter than {{ limit }} characters.'\n    metaKeywords:\n        max: 'Publication keyword total must be shorter than {{ limit }} characters.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.pl.yml",
    "content": "type_publications:\n    name:\n        min: 'Nazwa publikacji musi być dłuższa nie {{ limit }} znak(ów).'\n    metaDescription:\n        max: 'Opis publikacji musi być krótszy niż {{ limit }} znaków.'\n    metaTitle:\n        max: 'Tytuł publikacji musi być krótszy niż {{ limit }} znaków.'\n    metaKeywords:\n        max: 'Słowa kluczowe publikacji muszą być krótsze niż {{ limit }} znaków.'\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.ps.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.pt.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.pt_BR.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.ro.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.ru.yml",
    "content": "type_publications:\n    name:\n        min: 'Название издания должно содержать более {{ limit }} знаков.'\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.sh.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.sq.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.sr.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.sv.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.tr.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.uk.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.vi.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.zh.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/translations/validators.zh_TW.yml",
    "content": "type_publications:\n    name:\n        min: null\n    metaDescription:\n        max: null\n    metaTitle:\n        max: null\n    metaKeywords:\n        max: null\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/BackendArticleImages/edit.html.twig",
    "content": "{% extends 'NewscoopNewscoopBundle::admin_layout.html.twig' %}\n{% trans_default_domain \"articles\" %}\n\n{% block admin_page_menu_bar %}{% endblock %}\n\n{% block admin_page_title_box %}\n<div class=\"toolbar row\">\n<span class=\"article-title\">{{ 'articles.images.edit.edit_image_metadata'|trans }}</span>\n\n<div class=\"pull-right\">\n    <div class=\"actions\">\n        <ul class=\"navigation\" style=\"height: auto;\">\n            <li>\n                <input id=\"save-button\" type=\"button\" value=\"{{ 'articles.images.edit.save'|trans }}\" class=\"save-button\">\n            </li>\n        </ul>\n    </div>\n</div>\n</div>\n{% endblock %}\n\n{% block admin_stylesheets %}\n{% endblock %}\n\n{% block admin_scripts %}\n\n{% endblock %}\n\n{% block admin_content %}\n<div class=\"row\">\n\n    <div id=\"article-image-edit-thumbnail\">\n        {% set thumbnail = imageService.thumbnail(image, 400, 400, 'fit' ) %}\n        <img src=\"{{ generateZendUrl('image', 'cache', 'default', {'src': thumbnail.src}, 'image', false) }}\" width=\"{{thumbnail.width}}\" height=\"{{thumbnail.height}}\" />\n        <a target=\"_blank\" href=\"/{{image.getPath()}}\" style=\"display: block;font-size: 12px;padding: 10px 0px;\" >{{ 'articles.images.see_original'|trans }}</a>\n    </div>\n\n    <div id=\"article-image-edit-form\" style=\"margin: 13px 10px;background-color: #fff;padding: 10px; width: 450px;\">\n        {{ form_start(form, {'attr': {'class': 'form-horizontal', 'role': 'form'}}) }}\n            {{ form_errors(form) }}\n\n            <fieldset id=\"fieldset-article\" style=\"border: 1px solid #ccc; padding: 5px;\">\n                <legend>{{ 'articles.images.edit.form.article_specific'|trans }}</legend>\n                <div class=\"form-group\">\n                    {{ form_label(form.number, null, {'label_attr': {'class': 'col-sm-4 control-label'}}) }}\n                    <div class=\"col-sm-5\">{{ form_widget(form.number, {'attr': {'class': 'form-control'}}) }}</div>\n                </div>\n                <div class=\"form-group\" id=\"current-article-caption\">\n                    {{ form_label(form.caption, null, {'label_attr': {'class': 'col-sm-4 control-label'}}) }}\n                    <div class=\"col-sm-7\">{{ form_widget(form.caption, {'attr': {'class': 'form-control current-article-caption-value'}}) }}</div>\n                </div>\n            </fieldset>\n\n            <fieldset id=\"fieldset-article\" style=\"border: 1px solid #ccc; padding: 5px; margin-top: 10px;\">\n                <legend>{{ 'articles.images.edit.form.global'|trans }}</legend>\n                <div class=\"form-group\">\n                    {{ form_label(form.status, null, {'label_attr': {'class': 'col-sm-4 control-label'}}) }}\n                    <div class=\"col-sm-7\">{{ form_widget(form.status, {'attr': {'class': 'form-control'}}) }}</div>\n                </div>\n                <div class=\"form-group\">\n                    {{ form_label(form.description, null, {'label_attr': {'class': 'col-sm-4 control-label'}}) }}\n                    <div class=\"col-sm-7\">{{ form_widget(form.description, {'attr': {'class': 'form-control'}}) }}</div>\n                </div>\n                <div class=\"form-group\">\n                    {{ form_label(form.photographer, null, {'label_attr': {'class': 'col-sm-4 control-label'}}) }}\n                    <div class=\"col-sm-7\">{{ form_widget(form.photographer, {'attr': {'class': 'form-control'}}) }}</div>\n                </div>\n                <div class=\"form-group\">\n                    {{ form_label(form.photographer_url, null, {'label_attr': {'class': 'col-sm-4 control-label'}}) }}\n                    <div class=\"col-sm-7\">{{ form_widget(form.photographer_url, {'attr': {'class': 'form-control'}}) }}</div>\n                </div>\n                <div class=\"form-group\">\n                    {{ form_label(form.place, null, {'label_attr': {'class': 'col-sm-4 control-label'}}) }}\n                    <div class=\"col-sm-7\">{{ form_widget(form.place, {'attr': {'class': 'form-control'}}) }}</div>\n                </div>\n                <div class=\"form-group\">\n                    {{ form_label(form.date, null, {'label_attr': {'class': 'col-sm-4 control-label'}}) }}\n                    <div class=\"col-sm-7\">{{ form_widget(form.date, {'attr': {'class': 'form-control'}}) }}</div>\n                </div>\n            </fieldset>\n        {{ form_end(form) }}\n    </div>\n\n    <script type=\"text/javascript\">\n    $(function() {\n        var richTextCaptions = '{{ rich_text_caption }}';\n        var currentCaption = {{ caption|json_encode()|raw }};\n        var captions = {{ captions|json_encode()|raw }}.filter(function(caption) {\n            return caption.length && caption !== currentCaption;\n        });\n\n        if (captions.length) {\n            var fieldset = $('#current-article-caption').parent('fieldset');\n            $('<div class=\"form-group\" id=\"other-article-caption\" style=\"text-align:right;\"><label class=\"col-sm-4 control-label\" >{{ 'articles.images.edit.form.other_captions'|trans }}</label></div>').appendTo(fieldset);\n\n            for (var i = 0; i < captions.length; i++) {\n                var other = $('<div class=\"col-sm-11\" style=\"margin-bottom: 7px;\"></div>').appendTo('#other-article-caption');\n                $('<button style=\"margin-right: 15px;\" />').appendTo(other).text('{{ 'articles.images.edit.form.use'|trans }}').click(function(e) {\n\n                    if (richTextCaptions == 'Y') {\n                        tinyMCE.editors['article_image_caption'].setContent($(e.target).parent().find('input').val());\n                    } else {\n                        $('.current-article-caption-value').val($(e.target).parent().find('input').val());\n                    }\n\n                    return false;\n                });\n                $('<input class=\"js-caption\" type=\"text\"  style=\"float:right;width:180px;\" />').appendTo(other).val(captions[i]).attr('disabled', 'disabled');\n            }\n        }\n\n        $('#save-button').click(function(e) {\n            if (richTextCaptions == 'Y' && !validateTinyMCEEditors()) {\n                return false;\n            }\n            $('#article-image-edit-form form').submit();\n        });\n\n        if (parent) { // updates parent view\n\n            if (currentCaption !== null && currentCaption.length > 0) {\n                if (richTextCaptions == 'Y') {\n                    parent.$('{{'#image-%d-caption'|format(image.id)}}').html(currentCaption);\n                } else {\n                    parent.$('{{'#image-%d-caption'|format(image.id)}}').text(currentCaption);\n                }\n            } else {\n                if (richTextCaptions == 'Y') {\n                    parent.$('{{'#image-%d-caption'|format(image.id)}}').html(\"{{ form.vars.value.description|raw|escape('js') }}\");\n                } else {\n                    parent.$('{{'#image-%d-caption'|format(image.id)}}').text(\"{{ form.vars.value.description|raw|escape('js') }}\");\n                }\n            }\n        }\n    });\n    </script>\n\n    {{ editor|raw }}\n\n</div>\n{% endblock %}\n\n{% block admin_page_footer_box %}{% endblock %}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/BackendJournalistDashboard/index.html.twig",
    "content": "{% extends 'NewscoopNewscoopBundle::admin_layout.html.twig' %}\n{% trans_default_domain \"users\" %}\n\n{% block admin_page_title_box %}\n<div class=\"toolbar row\">\n    <span class=\"article-title\">Journalist dashboard</span>\n</div>\n{% endblock %}\n\n{% block admin_stylesheets %}\n<link rel=\"stylesheet\" href=\"{{ asset('/bundles/newscoopnewscoop/css/jquery.dynatable.css') }}\">\n<style type=\"text/css\">\n.dashboard h3 {font-size: 18px;padding: 0 0 8px 0;margin-top: 0px;}\n#users-table {padding: 10px;border: 1px solid #ccc;}\n#users-table th {background: #007fb3;color: #fff;}\n</style>\n{% endblock %}\n\n{% block admin_scripts %}\n<script src=\"{{ asset('/bundles/newscoopnewscoop/js/jquery.dynatable.js') }}\"></script>\n<script src=\"{{ asset('/js/raphael-min.js') }}\"></script>\n<script src=\"{{ asset('/js/morris.min.js') }}\"></script>\n{% endblock %}\n\n{% block admin_content %}\n<div class=\"row dashboard\">\n    <div class=\"col-md-5 widget\">\n        <h3>Draft Your new awesome article!</h3>\n        <div class=\"form-group\">\n            <textarea name=\"article_cotent\" rows=\"5\" class=\"form-control\"></textarea>\n        </div>\n        <div class=\"form-group pull-left\">\n            <input type=\"file\" multiple=\"true\" id=\"exampleInputFile\">\n            <p class=\"help-block\">Choose images or attachments.</p>\n        </div>\n        <div class=\"pull-right\">\n            <button type=\"submit\" class=\"btn btn-success\">Create pending article</button>\n        </div>\n    </div>\n\n    <div class=\"col-md-7 widget\">\n        <h3>Your Latest Articles</h3>\n        <table id=\"users-table\" class=\"table table-bordered table-hover table-striped\" style=\"word-wrap: break-word;table-layout: fixed;\">\n        <thead>\n          <tr>\n            <th data-dynatable-column=\"name\">Title</th>\n            <th data-dynatable-column=\"published\">Published</th>\n            <th data-dynatable-column=\"reads\">Reads</th>\n            <th data-dynatable-column=\"shares\">Shares (on Facebook)</th>\n          </tr>\n        </thead>\n        <tbody>\n        </tbody>\n        </table>\n    </div>\n    <div style=\"clear:both\"></div>\n    <div class=\"col-md-12 widget\" style=\"height: 350px;\">\n        <div id=\"line-widget\" style=\"height: 300px;\"></div>\n    </div>\n</div>\n\n<script type=\"text/javascript\">\n    var dynatable = $('#users-table')\n    .dynatable({\n        inputs: {\n            paginationClass: 'pagination',\n            paginationActiveClass: 'current',\n            paginationDisabledClass: 'unavailable',\n            paginationPrev: '&laquo;',\n            paginationNext: '&raquo;',\n            pageText: '{{ 'users.table.table_messages.page'|trans }}',\n            perPageText: '{{ 'users.table.table_messages.perPageText'|trans }}',\n            pageText: '{{ 'users.table.table_messages.pageText'|trans }}',\n            recordCountPageBoundTemplate: '{{ 'users.table.table_messages.recordCountPageBoundTemplate'|trans }}',\n            recordCountPageUnboundedTemplate: '{{ 'users.table.table_messages.recordCountPageUnboundedTemplate'|trans }}',\n            recordCountTotalTemplate: '{{ 'users.table.table_messages.recordCountTotalTemplate'|trans }}',\n            recordCountFilteredTemplate: '{{ 'users.table.table_messages.recordCountFilteredTemplate'|trans }}',\n            recordCountText: '{{ 'users.table.table_messages.recordCountText'|trans }}',\n            recordCountTextTemplate: '{{ 'users.table.table_messages.recordCountTextTemplate'|trans }}',\n            recordCountTemplate: '{{ 'users.table.table_messages.recordCountTemplate'|trans }}',\n            processingText: '{{ 'users.table.table_messages.processingText'|trans }}'\n        },\n        dataset: {\n            ajax: true,\n            ajaxUrl: Routing.generate('newscoop_newscoop_dashboard_author_articles'),\n            ajaxOnLoad: false,\n            records: [],\n            perPageDefault: 10,\n            perPageOptions: [10,20,50,100],\n        },\n        features: {\n            paginate: true,\n        },\n        writers: {\n            _cellWriter: function (column, record) {\n                if (column.id == 'published') {\n                    column.attributeWriter = function(record) {\n                        return record.published.date;\n                    }\n                }\n\n                if (column.id == 'shares') {\n                    column.attributeWriter = function(record) {\n                        column.cssClass = 'shares__'+record.id;\n                        $.ajax({\n                          url: \"https://graph.facebook.com\",\n                          dataType: \"json\",\n                          data: {\n                            id: record.link\n                          },\n                          success: function (data) {\n                            if (typeof data.shares != 'undefined') {\n                                $('.'+column.cssClass).html(data.shares);\n                            } else {\n                                $('.'+column.cssClass).html(0);\n                            }\n                          }\n                        });\n\n                        return 'Loading...';\n                    }\n                }\n\n                var html = column.attributeWriter(record),\n                    td = '<td';\n\n                if (column.hidden || column.textAlign) {\n                  td += ' style=\"';\n                  // keep cells for hidden column headers hidden\n                  if (column.hidden) {\n                    td += 'display: none;';\n                  }\n                  // keep cells aligned as their column headers are aligned\n                  if (column.textAlign) {\n                    td += 'text-align: ' + column.textAlign + ';';\n                  }\n                  td += '\"';\n                }\n                if (column.cssClass) {\n                  td += ' class=\"' + column.cssClass + '\"';\n                }\n\n                return td + '>' + html + '</td>';\n            }\n        },\n    }).data('dynatable');\n\n    Morris.Line({\n      element: 'line-widget',\n      data: {{ lineWidgetData|json_encode|raw }},\n      xkey: 'date',\n      lineColors: ['#0b62a4', 'green'],\n      ykeys: ['comments', 'articles'],\n      labels: ['Comments', 'Articles']\n    });\n</script>\n\n{% endblock %}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/BackendPublications/edit.html.twig",
    "content": "{% extends 'NewscoopNewscoopBundle::admin_layout.html.twig' %}\n{% form_theme form 'NewscoopNewscoopBundle::form_fields.html.twig' %}\n{% trans_default_domain \"pub\" %}\n\n{% block admin_page_title_box %}\n<div class=\"toolbar row\">\n    <span class=\"article-title\">{{ pageTitle }}</span>\n    <div class=\"pull-right\">\n        <div class=\"actions\">\n            <ul class=\"navigation\" style=\"height: auto;\">\n                <a class=\"list-publications pull-left action-button\" href=\"{{ url('newscoop_newscoop_publications_index')}}\">\n                    <span class=\"glyphicon glyphicon-arrow-left\"></span> {{ 'publications.buttons.listPublications'|trans }}\n                </a>\n                <li>\n                    <a class=\"add\" href=\"{{ url('newscoop_newscoop_publications_add')}}\">{{ 'publications.buttons.addNew'|trans }}</a>\n                </li>\n                {% if form.vars.data.id %}\n                    <a class=\"list-issues pull-left action-button\" href=\"/admin/issues/?Pub={{ form.vars.data.id }}\">\n                        {{ 'publications.buttons.listIssues'|trans }} <span class=\"glyphicon glyphicon-arrow-right\"></span>\n                    </a>\n                {% endif %}\n            </ul>\n        </div>\n    </div>\n</div>\n{% endblock %}\n\n{% block admin_title %}{{ pageTitle }} - {{ parent() }}{% endblock %}\n\n{% block admin_stylesheets %}\n<link rel=\"stylesheet\" href=\"{{ asset('/admin-style/action_buttons.css') }}\">\n<style type=\"text/css\" media=\"screen\">\n    .help-block{font-size: 13px;margin-bottom: 0px;}\n    .checkbox-group .checkbox {padding-top: 3px;}\n    .checkbox-group .checkbox label input {margin-right: 5px;}\n    .ns_container input {background-color: #fff}\n    .alert-danger ul {margin-bottom: 0px!important;}\n    #publication_seoChoices label input {margin-right: 5px;}\n</style>\n{% endblock %}\n\n{% block admin_content %}\n<div class=\"row publications ns_container col-md-8\">\n    {% if form_errors(form) %}\n    <div class=\"alerts alert-danger\">\n        {{ form_errors(form) }}\n    </div>\n    {% endif %}\n\n    <div>\n        {{ form_start(form, {'attr': {'class': 'form-horizontal', 'role': 'form'}}) }}\n        <div id=\"general_settings\" class=\"col-sm-6\" style=\"border-right: 1px solid #ccc;\">\n            <h3>{{ 'publications.general_settings'|trans({},'pub') }}</h3>\n            <div class=\"form-group\">\n                {{ form_label(form.name, label|default(null), {'label_attr': {'class': 'col-sm-4 control-label'}}) }}\n                <div class=\"col-sm-8\">\n                  {{ form_widget(form.name, {'attr': {'class': 'form-control input-sm'}}) }}\n                </div>\n            </div>\n            <div class=\"form-group\">\n                {{ form_label(form.defaultAlias, label|default(null), {'label_attr': {'class': 'col-sm-4 control-label'}}) }}\n                <div class=\"col-sm-6\">\n                  {{ form_widget(form.defaultAlias, {'attr': {'class': 'form-control input-sm'}}) }}\n                  {% if form.vars.data.id %}\n                  <span class=\"help-block\">\n                    <a href=\"/admin/pub/aliases.php?Pub={{form.vars.data.id}}\" target=\"_blank\">({{ 'publications.form_type.label.edit_aliases'|trans }})</a>\n                  </span>\n                  {% endif %}\n                </div>\n            </div>\n            <div class=\"form-group\">\n                {{ form_label(form.language, label|default(null), {'label_attr': {'class': 'col-sm-4 control-label'}}) }}\n                <div class=\"col-sm-6\">\n                  {{ form_widget(form.language, {'attr': {'class': 'form-control input-sm'}}) }}\n                  <span class=\"help-block\">\n                    <a href=\"/admin/languages/\" target=\"_blank\">({{ 'publications.form_type.label.edit_languages'|trans }})</a>\n                  </span>\n                </div>\n            </div>\n            <h3>{{ 'publications.comments_settings'|trans({},'pub') }}</h3>\n            <div class=\"form-group\">\n                <div class=\"col-sm-12\">\n                    <div class=\"checkbox checkbox-group\">\n                        <div class=\"checkbox\">{{ form_widget(form.commentsEnabled, {'attr': {'class': 'public-comments'}}) }}</div>\n                        <div class=\"checkbox child\" style=\"padding-left: 40px;\">{{ form_widget(form.public_enabled, {'attr': {'class': 'moderated-comments-public'}}) }}</div>\n                        <div class=\"checkbox child moderated-public\" style=\"padding-left: 60px;\">{{ form_widget(form.commentsPublicModerated, {'attr': {'class': 'enabled-comments-public'}}) }}</div>\n                        <div class=\"checkbox child \" style=\"padding-left: 40px;\">{{ form_widget(form.commentsSubscribersModerated, {'attr': {'class': 'moderated-comments'}}) }}</div>\n                        <div class=\"checkbox child moderated\" style=\"padding-left: 50px;\">\n                            <div class=\"form-group\">\n                                {{ form_label(form.moderator_to, label|default(null), {'label_attr': {'class': 'col-sm-5 control-label'}}) }}\n                                <div class=\"col-sm-6\">\n                                  {{ form_widget(form.moderator_to, {'attr': {'class': 'form-control input-sm'}}) }}\n                                </div>\n                            </div>\n                            <div class=\"form-group\">\n                                {{ form_label(form.moderator_from, label|default(null), {'label_attr': {'class': 'col-sm-5 control-label'}}) }}\n                                <div class=\"col-sm-6\">\n                                  {{ form_widget(form.moderator_from, {'attr': {'class': 'form-control input-sm'}}) }}\n                                </div>\n                            </div>\n                        </div>\n                        <div class=\"checkbox child\" style=\"padding-left: 40px;\">{{ form_widget(form.commentsArticleDefaultEnabled) }}</div>\n                        <div class=\"checkbox child\" style=\"padding-left: 40px;\">{{ form_widget(form.commentsCaptchaEnabled) }}</div>\n                        <div class=\"checkbox child\" style=\"padding-left: 40px;\">{{ form_widget(form.commentsSpamBlockingEnabled) }}</div>\n                    </div>\n                </div>\n            </div>\n        </div>\n        <div id=\"seo_settings\" class=\"col-sm-6\">\n            <h3>{{ 'publications.seo_settings'|trans({},'pub') }}</h3>\n            <div class=\"form-group\">\n                {{ form_label(form.urlTypeId, label|default(null), {'label_attr': {'class': 'col-sm-5 control-label'}}) }}\n                <div class=\"col-sm-6\">\n                  {{ form_widget(form.urlTypeId, {'attr': {'class': 'form-control input-sm'}}) }}\n                </div>\n            </div>\n            <div class=\"form-group\">\n                {{ form_label(form.seoChoices, label|default(null), {'label_attr': {'class': 'col-sm-5 control-label'}}) }}\n                <div class=\"col-sm-6\">\n                    <div class=\"checkbox\">\n                      <label>\n                        {{ form_widget(form.seoChoices) }}\n                      </label>\n                    </div>\n                </div>\n            </div>\n            <div class=\"form-group\">\n                {{ form_label(form.metaTitle, label|default(null), {'label_attr': {'class': 'col-sm-4 control-label'}}) }}\n                <div class=\"col-sm-8\">\n                  {{ form_widget(form.metaTitle, {'attr': {'class': 'form-control input-sm'}}) }}\n                </div>\n            </div>\n            <div class=\"form-group\">\n                {{ form_label(form.metaKeywords, label|default(null), {'label_attr': {'class': 'col-sm-4 control-label'}}) }}\n                <div class=\"col-sm-8\">\n                  {{ form_widget(form.metaKeywords, {'attr': {'class': 'form-control input-sm'}}) }}\n                </div>\n            </div>\n            <div class=\"form-group\">\n                {{ form_label(form.metaDescription, label|default(null), {'label_attr': {'class': 'col-sm-4 control-label'}}) }}\n                <div class=\"col-sm-8\">\n                  {{ form_widget(form.metaDescription, {'attr': {'class': 'form-control input-sm'}}) }}\n                </div>\n            </div>\n            {% if publication and publicationIssuesLanguages %}\n                <h3>{{ 'publications.front_page_theme_settings'|trans({},'pub') }}</h3>\n                {% for languageCode in publicationIssuesLanguages %}\n                {% set widget_name = languageCode ~ \"_front_theme\" %}\n                <div class=\"form-group\">\n                    {{ form_label(attribute(form, widget_name), label|default(null), {'label_attr': {'class': 'col-sm-4 control-label'}}) }}\n                    <div class=\"col-sm-8\">\n                      {{ form_widget(attribute(form, widget_name), {'attr': {'class': 'form-control input-sm'}}) }}\n                    </div>\n                </div>\n                {% endfor %}\n            {% endif %}\n        </div>\n        <div class=\"clearfix\"></div>\n        <button type=\"submit\" class=\"save-button pull-right\">{{ 'Save'|trans({}, 'messages') }}</button>\n        {{ form_end(form) }}\n    </div>\n</div>\n<script type=\"text/javascript\">\n    $('.public-comments').click(function(){\n        if($(this).is(':checked')) {\n            $('.checkbox-group .checkbox.child input').attr('disabled', false);\n            if (!$('.moderated-comments').is(':checked')) {\n                $('.checkbox-group .checkbox.child.moderated input').attr('disabled', true);\n            }\n        } else {\n            $('.checkbox-group .checkbox.child input').attr('disabled', true);\n        }\n    });\n\n    if (!$('.moderated-comments-public').is(':checked')) {\n        $('.checkbox-group .checkbox.child.moderated-public input').attr('disabled', true);\n        $('.checkbox-group .checkbox.child.moderated input').attr('disabled', true);\n    }\n\n    $('.moderated-comments').click(function(){\n        if($(this).is(':checked')) {\n            $('.checkbox-group .checkbox.child.moderated input').attr('disabled', false);\n        } else {\n            $('.checkbox-group .checkbox.child.moderated input').attr('disabled', true);\n        }\n\n        if ($('.enabled-comments-public').is(':checked')) {\n            $('.checkbox-group .checkbox.child.moderated input').attr('disabled', false);\n        }\n    });\n\n    $('.moderated-comments-public').click(function(){\n        if($(this).is(':checked')) {\n            $('.checkbox-group .checkbox.child.moderated-public input').attr('disabled', false);\n        } else {\n            if (!$('.moderated-comments').is('checked')) {\n                $('.checkbox-group .checkbox.child.moderated-public input').attr('disabled', true);\n                $('.checkbox-group .checkbox.child.moderated-public input').prop('checked', false);\n            }\n        }\n    });\n    $('.enabled-comments-public').click(function(){\n        if($(this).is(':checked')) {\n            $('.checkbox-group .checkbox.child.moderated input').attr('disabled', false);\n        } else {\n            $('.checkbox-group .checkbox.child.moderated input').attr('disabled', true);\n        }\n\n        if ($('.moderated-comments').is(':checked')) {\n            $('.checkbox-group .checkbox.child.moderated input').attr('disabled', false);\n        }\n    });\n</script>\n{% endblock %}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/BackendPublications/index.html.twig",
    "content": "{% extends 'NewscoopNewscoopBundle::admin_layout.html.twig' %}\n{% trans_default_domain \"pub\" %}\n\n{% block admin_page_title_box %}\n<div class=\"toolbar row\">\n    <span class=\"article-title\">{{ 'publications.title.list'|trans }}</span>\n    <div class=\"pull-right\">\n        <div class=\"actions\">\n            <ul class=\"navigation\" style=\"height: auto;\">\n                <li>\n                    <a class=\"add\" href=\"{{ url('newscoop_newscoop_publications_add') }}\">{{ 'publications.buttons.addNew'|trans }}</a>\n                </li>\n            </ul>\n        </div>\n    </div>\n</div>\n{% endblock %}\n\n{% block admin_title %}{{ 'publications.title.list'|trans }} - {{ parent() }}{% endblock %}\n\n{% block admin_stylesheets %}\n<link rel=\"stylesheet\" href=\"{{ asset('/bundles/newscoopnewscoop/css/jquery.dynatable.css') }}\">\n<link rel=\"stylesheet\" href=\"{{ asset('/admin-style/action_buttons.css') }}\">\n<style type=\"text/css\" media=\"screen\">\n    #publications-table {padding: 10px;border: 1px solid #ccc;}\n    #publications-table th {background: #007fb3;color: #fff;}\n    #publications-table .glyphicon{font-size: 1.50em;}\n    a.action-btn {margin-left: 5px; margin-bottom: 5px;}\n</style>\n{% endblock %}\n\n{% block admin_scripts %}\n<script src=\"{{ asset('/bundles/newscoopnewscoop/js/jquery.dynatable.js') }}\"></script>\n{% endblock %}\n\n{% block admin_content %}\n{% for flashMessage in app.session.flashbag.get('error') %}\n        <div class=\"alerts alert-danger\">\n            {{ flashMessage }}\n        </div>\n{% endfor %}\n{% for flashMessage in app.session.flashbag.get('success') %}\n        <div class=\"alerts alert-success\">\n            {{ flashMessage }}\n        </div>\n{% endfor %}\n\n<div class=\"row publications ns_container col-md-8\">\n    {% if publications|length > 0 %}\n    <table id=\"publications-table\" class=\"table table-bordered table-hover table-striped\" style=\"word-wrap: break-word;table-layout: fixed;\">\n        <thead>\n          <tr>\n            <th data-dynatable-column=\"id\" style=\"width: 60px;text-align: center\">{{ 'publications.table.number'|trans }}</th>\n            <th data-dynatable-column=\"name\">{{ 'publications.table.name'|trans }}</th>\n            <th data-dynatable-column=\"defaultAlias\">{{ 'publications.table.default_alias'|trans }}</th>\n            <th data-dynatable-column=\"defaultLanguage\">{{ 'publications.table.default_language'|trans }}</th>\n            <th data-dynatable-column=\"comments_on\" style=\"text-align: center\">{{ 'publications.table.comments_status'|trans }}</th>\n            <th data-dynatable-column=\"url_type\">{{ 'publications.table.url_type'|trans }}</th>\n            <th data-dynatable-column=\"configure\" data-dynatable-no-sort=\"true\" style=\"text-align: center\">{{ 'publications.table.configure'|trans }}</th>\n            <th data-dynatable-column=\"remove\" data-dynatable-no-sort=\"true\" style=\"text-align: center\">{{ 'publications.table.remove'|trans }}</th>\n          </tr>\n        </thead>\n        <tbody>\n\n        {% for publication in publications %}\n            <tr>\n                <td>{{ publication.id }}</td>\n                <td><a href=\"/admin/issues/?Pub={{ publication.id }}\" style=\"font-weight: bold;\">{{ publication.name }}</a></td>\n                <td>{% if publication.defaultAlias.name is defined %}{{ publication.defaultAlias.name}}{% endif %}</td>\n                <td>{{ publication.language.name}}</td>\n                <td><span class=\"glyphicon glyphicon-{% if publication.commentsEnabled %}ok{% else %}minus{% endif %}\"></span></td>\n                <td>{% if publication.urlTypeId == 1%}{{ 'template path'|trans({}, 'api')}}{% else %}{{ 'short names'|trans({}, 'api')}}{% endif %}</td>\n                <td><a href=\"{{ url('newscoop_newscoop_publications_edit', {'id': publication.id}) }}\"><span class=\"glyphicon glyphicon-pencil\"></span></a></td>\n                <td><a href=\"{{ url('newscoop_newscoop_publications_remove', {'id': publication.id}) }}\"><span class=\"glyphicon glyphicon-remove-circle\"></span></a></td>\n            </tr>\n        {% endfor %}\n        </tbody>\n    </table>\n    {% else %}\n    <h3>{{ 'publications.no_publications'|trans }}</h3>\n    <div class=\"center-block\" style=\"width: 160px;\">\n        <div class=\"actions\">\n            <ul class=\"navigation\" style=\"height: auto;\">\n                <li>\n                    <a class=\"add\" href=\"{{ url('newscoop_newscoop_publications_add') }}\">{{ 'publications.buttons.addNew'|trans }}</a>\n                </li>\n            </ul>\n        </div>\n    </div>\n    {% endif %}\n\n    {{ renderTip('publications.tip1'|trans) }}\n</div>\n\n<script type=\"text/javascript\">\n    var dynatable = $('#publications-table').dynatable({\n        inputs: {\n            paginationClass: 'pagination',\n            paginationActiveClass: 'current',\n            paginationDisabledClass: 'unavailable',\n            paginationPrev: '&laquo;',\n            paginationNext: '&raquo;',\n            pageText: '{{ 'dynatable.page'|trans({},'helpers') }}',\n            perPageText: '{{ 'dynatable.perPageText'|trans({},'helpers') }}',\n            pageText: '{{ 'dynatable.pageText'|trans({},'helpers') }}',\n            recordCountPageBoundTemplate: '{{ 'dynatable.recordCountPageBoundTemplate'|trans({},'helpers') }}',\n            recordCountPageUnboundedTemplate: '{{ 'dynatable.recordCountPageUnboundedTemplate'|trans({},'helpers') }}',\n            recordCountFilteredTemplate: '{{ 'dynatable.recordCountFilteredTemplate'|trans({},'helpers') }}',\n            recordCountText: '{{ 'dynatable.recordCountText'|trans({},'helpers') }}',\n            processingText: '{{ 'dynatable.processingText'|trans({},'helpers') }}'\n        },\n        features: {\n            paginate: false,\n            search: false,\n            recordCount: false,\n            perPageSelect: false\n        }\n    }).data('dynatable');\n</script>\n{% endblock %}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/BackendPublications/remove.html.twig",
    "content": "{% extends 'NewscoopNewscoopBundle::admin_layout.html.twig' %}\n{% trans_default_domain \"pub\" %}\n\n{% block admin_page_title_box %}\n<div class=\"toolbar row\">\n    <span class=\"article-title\">{{ 'publications.title.remove'|trans }}</span>\n    <div class=\"pull-right\">\n        <div class=\"actions\">\n            <ul class=\"navigation\" style=\"height: auto;\">\n                <a class=\"list-publications pull-left action-button\" href=\"{{ url('newscoop_newscoop_publications_index')}}\">\n                    <span class=\"glyphicon glyphicon-arrow-left\"></span> {{ 'publications.buttons.listPublications'|trans }}\n                </a>\n                <li>\n                    <a class=\"add\" href=\"{{ url('newscoop_newscoop_publications_add')}}\">{{ 'publications.buttons.addNew'|trans }}</a>\n                </li>\n                {% if publication.id %}\n                    <a class=\"list-issues pull-left action-button\" href=\"/admin/issues/?Pub={{ publication.id }}\">\n                        {{ 'publications.buttons.listIssues'|trans }} <span class=\"glyphicon glyphicon-arrow-right\"></span>\n                    </a>\n                {% endif %}\n            </ul>\n        </div>\n    </div>\n</div>\n{% endblock %}\n\n{% block admin_title %}{{ 'publications.title.remove'|trans }} - {{ parent() }}{% endblock %}\n\n{% block admin_stylesheets %}\n<link rel=\"stylesheet\" href=\"{{ asset('/admin-style/action_buttons.css') }}\">\n<style type=\"text/css\" media=\"screen\">\n    .help-block{font-size: 13px;margin-bottom: 0px;}\n    .remaining-elements {font-size: 12px;}\n    .help-block {padding-bottom: 10px;}\n</style>\n{% endblock %}\n\n{% block admin_content %}\n<div class=\"row publications ns_container col-md-5\">\n{% if issuesRemaining > 0 or sectionsRemaining > 0 or articlesRemaining > 0 %}\n    <h3>{{ 'publications.remove.cant_be_removed'|trans }}</h3>\n    <ul class=\"remaining-elements\">\n        <li>{{ 'publications.remove.left_issues'|trans }}: {{ issuesRemaining }} (<a href=\"/admin/issues/?Pub={{ publication.id }}\">{{ 'publications.remove.show_issues'|trans }}</a>)</li>\n        <li>{{ 'publications.remove.left_sections'|trans }}: {{ sectionsRemaining }}</li>\n        <li>{{ 'publications.remove.left_articles'|trans }}: {{ articlesRemaining }}</li>\n    </ul>\n    <p>{{ 'publications.remove.before_removing'|trans }}</p>\n    <div class=\"clearfix\"></div>\n    <a class=\"list-publications pull-left action-button\" href=\"{{ url('newscoop_newscoop_publications_index')}}\">\n        <span class=\"glyphicon glyphicon-arrow-left\"></span> {{ 'publications.buttons.listPublications'|trans }}\n    </a>\n{% else %}\n    <h3>{{ 'publications.remove.can_be_removed'|trans }}</h3>\n    <p>{{ 'publications.remove.you_sure'|trans }}: \"{{ publication.name }}\"?</p>\n    <div class=\"clearfix\"></div>\n    <div class=\"row\">\n        {{ form_start(form) }}\n        <button type=\"submit\" class=\"col-lg-4 center-block text-center action-button\" style=\"float:none;\">\n          <span class=\"glyphicon glyphicon-remove-circle\"></span> {{ 'publications.remove.remove'|trans }}\n        </button>\n        {{ form_end(form) }}\n    </div>\n{% endif %}\n</div>\n{% endblock %}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/Comments/index.html.twig",
    "content": "{% extends 'NewscoopNewscoopBundle::admin_layout.html.twig' %}\n{% trans_default_domain \"new_comments\" %}\n\n{% block admin_title %}{{ 'comments.label.comments'|trans }} - {{ parent() }}{% endblock %}\n\n{% block admin_page_title_box %}\n<div class=\"toolbar row\">\n    <span class=\"article-title\">{{ 'comments.label.comments'|trans }}</span>\n    <div class=\"pull-right\">\n        <form class=\"navbar-form\" method=\"post\" role=\"search\" style=\"width: 100%;\" action=\"{{ path('newscoop_newscoop_comments_search') }}\" {{ form_enctype(searchForm) }}>\n            <div class=\"form-group\">\n                {{ form_widget(searchForm.search, { 'attr': { 'class': 'form-control input-sm', 'placeholder' : 'comments.label.searchholder'|trans } }) }}\n            </div>\n            <input type=\"submit\" class=\"btn btn-default btn-sm\" value=\"{{ 'comments.btn.submit'|trans }}\">\n            {{ form_rest(searchForm) }}\n        </form>\n    </div>\n</div>\n{% endblock %}\n\n{% block admin_stylesheets %}\n<link rel=\"stylesheet\" href=\"{{ Newscoop['WEBSITE_URL'] }}/admin-style/comments.css\">\n<link rel=\"stylesheet\" type=\"text/css\" href=\"{{ asset('/js/select2/select2.css') }}\" />\n<link rel=\"stylesheet\" href=\"{{ asset('/bundles/newscoopnewscoop/css/comments.css') }}\">\n{% endblock %}\n\n{% block admin_scripts %}\n<script src=\"{{ asset('/js/select2/select2.js') }}\"></script>\n{% endblock %}\n\n{% block admin_content %}\n<div class=\"plugin-container\">\n    <div id=\"showComments\">\n        <form method=\"post\" action=\"\">\n        <fieldset class=\"filters\">\n            <legend>{{ 'comments.label.show'|trans }}</legend>\n            <ul class=\"list-inline\">\n                {% set filter = app.session.get('commentsFilters') %}\n                <li class=\"new\">\n                    {{ form_widget(filterForm.pending, { checked : filter.get('filterPending') ? true : false }) }} {{ form_label(filterForm.pending) }}\n                </li>\n                <li class=\"approved\">\n                    {{ form_widget(filterForm.approved, { checked : filter.get('filterApproved') ? true : false }) }} {{ form_label(filterForm.approved) }}\n                </li>\n                <li class=\"hidden\">\n                    {{ form_widget(filterForm.hidden, { checked : filter.get('filterHidden') ? true : false }) }} {{ form_label(filterForm.hidden) }}\n                </li>\n                <li class=\"hidden\">\n                   {{ form_widget(filterForm.recommended, { checked : filter.get('filterRecommended') ? true : false }) }} {{ form_label(filterForm.recommended) }}\n                </li>\n                <li class=\"hidden\">\n                    {{ form_widget(filterForm.unrecommended, { checked : filter.get('filterUnrecommended') ? true : false }) }} {{ form_label(filterForm.unrecommended) }}\n                </li>\n                <li id=\"filterBtn\">{{ form_widget(filterForm.filterButton, { 'attr': { 'class': 'btn btn-default btn-sm'} }) }}</li>\n                {{ form_rest(filterForm) }}\n            </ul>\n        </fieldset>\n        </form>\n    </div>\n    <div id=\"showComments\">\n        <fieldset class=\"filters\" style=\"height: 95px\">\n            <legend>{{ 'comments.label.actions'|trans }}</legend>\n            <select style=\"width: 300px\" class=\"form-control input-sm actions\">\n                <option value=\"\">{{ 'comments.label.selectstatus'|trans }}</option>\n                <option value=\"pending\">{{ 'comments.label.new'|trans }}</option>\n                <option value=\"approved\">{{ 'comments.label.approved'|trans }}</option>\n                <option value=\"hidden\">{{ 'comments.label.hidden'|trans }}</option>\n                <option value=\"deleted\">{{ 'comments.label.deleted'|trans }}</option>\n            </select>\n        </fieldset>\n    </div>\n\n    {% if pagination.getTotalItemCount > 0 %}\n    <div class=\"row\" id=\"paging\">\n            <div class=\"col-xs-3 col-sm-4 col-md-5\">\n                <div class=\"dataTables_info\" id=\"commentsTable_info\">\n                    {% set pages = (pagination.getItemNumberPerPage * (pagination.getCurrentPageNumber)) %}\n                    {% set startRange = (pagination.getCurrentPageNumber * pagination.getItemNumberPerPage) - pagination.getItemNumberPerPage + 1 %}\n                    {{ 'comments.label.showing'|trans }}\n                    {% if pagination.getCurrentPageNumber == 1 %}\n                        {{ pagination.getCurrentPageNumber }}\n                    {% elseif pagination.getCurrentPageNumber < ((pagination.getTotalItemCount / pagination.getItemNumberPerPage)|round ) %}\n                        {{ startRange }}\n                    {% elseif pagination.getTotalItemCount < (pagination.getItemNumberPerPage * (pagination.getCurrentPageNumber)) %}\n                        {{ startRange }}\n                        {% set pages = pagination.getTotalItemCount %}\n                    {% endif %}\n                    {{ 'comments.label.to'|trans }} {{ pages }} {{ 'comments.label.of'|trans }} {{ pagination.getTotalItemCount }} {{ 'comments.label.entries'|trans }}.\n                </div>\n            </div>\n            <div class=\"col-xs-9 col-sm-8 col-md-7 text-right\"></div>\n    </div>\n    {% endif %}\n    <div class=\"table-responsive\">\n        {% if pagination.getTotalItemCount > 0 %}\n        <table class=\"table\" id=\"commentsTable\">\n            <thead>\n                <tr>\n                  <th><input class=\"toggle-checkbox\" type=\"checkbox\"></th>\n                  <th >{{ knp_pagination_sortable(pagination, 'comments.label.author'|trans, 'cm.name') }}</th>\n                  <th>{{ knp_pagination_sortable(pagination, 'comments.label.date'|trans, 'c.time_created') }}</th>\n                  <th>{{ 'comments.label.article'|trans }}</th>\n              </tr>\n            </thead>\n            <tbody>\n                {% for row in commentsArray %}\n                <tr id=\"use-hover\" class=\"js-comment-body comment_{{ row.comment.id }} {% if row.comment.status == 'hidden' %} status-hidden{% endif %}\">\n                    <td style=\"width: 3%; \">\n                        <input type=\"checkbox\" name=\"index[]\" value=\"{{ row.comment.id }}\" class=\"table-checkbox\"><span class=\"index\">{% if pagination.getCurrentPageNumber == 1 %}\n                            {{ row.index }}.\n                        {% elseif pagination.getCurrentPageNumber != 1 %}\n                           {{ (pagination.getItemNumberPerPage * (pagination.getCurrentPageNumber - 1)) +  row.index }}.\n                        {% endif %}</span>\n                    </td>\n                    <td class=\"clickable\">\n                        <div class=\"commentUserHolder\">\n                            <div>\n                                {% if row.user is empty %}\n                                    <img src=\"http://www.gravatar.com/avatar/{{ row.avatarHash }}?s=50&amp;d=identicon\">\n                                {% else %}\n                                    {% if row.user.image(50, 50, 'crop') is empty %}\n                                     <img src=\"http://www.gravatar.com/avatar/{{ row.avatarHash }}?s=50&amp;d=identicon\">\n                                    {% else %}\n                                     <img style=\"width: 49px;\" src=\"{{ row.user.image(50, 50, 'crop') }}\">\n                                    {% endif %}\n                                {% endif %}\n                            </div>\n                            <p></p>\n                            <p>\n                            {% if row.comment.commenter.user is empty %}\n                                {% if row.comment.commenter.url is empty %}\n                                    {{ row.comment.commenter.name }}\n                                {% else %}\n                                    <a href=\"{{ row.comment.commenter.url }}\" target=\"_blank\">{{ row.comment.commenter.name|striptags }}</a>\n                                {% endif %}\n                                ({{ 'comments.label.anonymous'|trans }}) {% if row.banned %} <span class=\"label label-danger\">{{ 'comments.label.banned'|trans }}</span>{% endif %}\n                            {% else %}\n\n                                <a href=\"{{ generateZendUrl('user', 'profile', 'default') }}/{{ row.comment.commenter.user.username|striptags }}\">{{ row.comment.commenter.user.username|striptags }}</a>{% if row.banned %} <span class=\"label label-danger\">{{ 'comments.label.banned'|trans }}</span>{% endif %}</p>\n                            {% endif %}\n                            <p><a target=\"_blank\" href=\"http://www.ip-adress.com/ip_tracer/{{ row.comment.commenter.ip }}\">{{ row.comment.commenter.ip }}</a></p>\n                            <p><a href=\"mailto:{{ row.comment.commenter.email }}\">{{ row.comment.commenter.email }}</a></p>\n                            <a href=\"/admin/comment-commenter/toggle-ban/format/json/commenter/{{ row.comment.commenter.id }}/thread/{{ row.comment.thread }}/language/{{ row.comment.language.id }}\" class=\"btn btn-default btn-xs ban-btn\"><span class=\"glyphicon glyphicon-ban-circle\"></span> {{ 'comments.label.ban'|trans }}</a>\n                            <p></p>\n                        </div>\n                    </td>\n                    <td style=\"width: 40%;\" class=\"clickable\">\n                        <div class=\"dateCommentHolder\" id=\"comment-section_{{ row.comment.id }}\">\n                            <h4>\n                                <span>{{ row.comment.timeCreated|date(\"Y.m.d\") }} {{ 'comments.label.at'|trans }} {{ row.comment.timeCreated|date(\"H:i:s\") }}</span>\n                                {% if row.comment.source %}\n                                    <span class=\"label label-info\">{{ row.comment.source }}</span>\n                                {% endif %}\n                                <span class=\"commentSubject\">\n                                    {{ row.comment.subject }}\n                                </span>\n                            </h4>\n                            <p class=\"commentBody\">\n                                {{ row.comment.message }}\n                            </p>\n                        </div>\n                        <div class=\"dateCommentHolderReply\">\n                            <fieldset class=\"content-reply_{{ row.comment.id }}\" style=\"display:none;\">\n                                <h3>{{ 'comments.label.replyto'|trans }}</h3>\n                                <form action=\"{{ path('newscoop_newscoop_comments_reply', { id: row.comment.id }) }}\">\n                                    <label>{{ 'comments.label.subject'|trans }}</label>\n                                    <input name=\"subject\" type=\"text\" class=\"form-control input-sm\">\n                                    <label>{{ 'comments.label.comment'|trans }}</label>\n                                    <textarea name=\"message\" class=\"form-control input-sm\"></textarea>\n                                    <div class=\"buttonBar\">\n                                        <input type=\"button\" value=\"{{ 'comments.btn.cancel'|trans }}\" id=\"{{ row.comment.id }}\" class=\"btn btn-default btn-sm reply-cancel\">\n                                        <input type=\"submit\" value=\"{{ 'comments.btn.submit'|trans }}\" class=\"btn btn-default btn-sm\">\n                                    </div>\n                                </form>\n                            </fieldset>\n                        </div>\n                        <div class=\"dateCommentHolderEdit\">\n                            <fieldset class=\"content-edit_{{ row.comment.id }}\" style=\"display:none; margin-top: -30px;\">\n                                <h3>{{ 'comments.label.editcomment'|trans }}</h3>\n                                <form action=\"{{ path('newscoop_newscoop_comments_update', { id: row.comment.id }) }}\">\n                                    <label>{{ 'comments.label.subject'|trans }}</label>\n                                    <input name=\"subject\" type=\"text\" class=\"form-control input-sm\">\n                                    <label>{{ 'comments.label.comment'|trans }}</label>\n                                    <textarea name=\"message\" class=\"form-control input-sm\"></textarea>\n                                    <div class=\"buttonBar\">\n                                        <input type=\"button\" value=\"{{ 'comments.btn.cancel'|trans }}\" id=\"{{ row.comment.id }}\" class=\"btn btn-default btn-sm edit-cancel\">\n                                        <input type=\"submit\" value=\"{{ 'comments.btn.submit'|trans }}\" class=\"btn btn-default btn-sm\">\n                                    </div>\n                                </form>\n                            </fieldset>\n                        </div>\n                    </td>\n                    <td class=\"clickable\">\n                        <div class=\"commentArticleHolder\">\n                            <p>\n                                <a href=\"/admin/articles/get.php?f_publication_id={{ row.article.publication.id }}&amp;f_issue_number={{ row.issueNumber }}&amp;f_section_number={{ row.article.section.number }}&amp;f_article_number={{ row.article.number }}&amp;f_language_id={{ row.article.language.id }}&amp;f_language_selected={{ row.article.language.id }}\" class=\"articleLink\">{{ row.article.name }}</a><br>\n                                <span>{{ row.article.publication.name }} - <b>{{ 'comments.label.section'|trans }}</b> {{ row.section }}</span>\n                            </p>\n                            <a class=\"goToArticle\" href=\"/admin/articles/edit.php?f_publication_id={{ row.article.publication.id }}&amp;f_issue_number={{ row.issueNumber }}&amp;f_section_number={{ row.article.section.number }}&amp;f_article_number={{ row.article.number }}&amp;f_language_id={{ row.article.language.id }}&amp;f_language_selected={{ row.article.language.id }}\">{{ 'comments.label.editarticle'|trans }}</a>\n                        </div>\n                    </td>\n                </tr>\n                <tr id=\"hoverBtns\" class=\"comment_{{ row.comment.id }} {% if row.comment.status == 'hidden' %} status-hidden{% endif %}\">\n                    <td colspan=\"1\"></td>\n                    <td colspan=\"6\">\n                        <div class=\"commentBtns\" id=\"{{ row.comment.id }}\" style=\"display: none; visibility: visible;\">\n                            <ul>\n                                <li>\n                                    <input type=\"radio\" name=\"action_comment_{{ row.comment.id }}\" class=\"action new\" id=\"comment_buttons_form_buttons_0\" value=\"pending\" data=\"pending_{{ row.comment.id }}\" {% if row.comment.status == 'pending' %}checked {% endif %}>\n                                    <label for=\"pending_{{ row.comment.id }}\">{{ 'comments.label.new'|trans }}</label>\n                                </li>\n                                <li>\n                                    <input type=\"radio\" name=\"action_comment_{{ row.comment.id }}\" class=\"action approved\" data=\"approved_{{ row.comment.id }}\" value=\"approved\" {% if row.comment.status == 'approved' %}checked {% endif %}>\n                                    <label for=\"approved_{{ row.comment.id }}\">{{ 'comments.label.approved'|trans }}</label>\n                                </li>\n                                <li>\n                                    <input type=\"radio\" name=\"action_comment_{{ row.comment.id }}\" class=\"action hidden\" data=\"hidden_{{ row.comment.id }}\" value=\"hidden\" style=\"height: auto\" {% if row.comment.status == 'hidden' %}checked {% endif %}>\n                                    <label for=\"hidden_{{ row.comment.id }}\">{{ 'comments.label.hidden'|trans }}</label>\n                                </li>\n                                <li><button type=\"button\" id=\"{{ row.comment.id }}\" class=\"action-edit btn btn-default btn-xs\"><span class=\"glyphicon glyphicon-edit\"></span> {{ 'comments.btn.edit'| trans }}</button>\n                                </li>\n                                <li><button type=\"button\" id=\"{{ row.comment.id }}\" class=\"action-reply btn btn-default btn-xs\"><span class=\"glyphicon glyphicon-pencil\"></span> {{ 'comments.btn.reply'| trans }}</button>\n                                </li>\n                                <li><button type=\"button\" data=\"deleted_{{ row.comment.id }}\" class=\" action btn btn-default btn-xs\"><span class=\"glyphicon glyphicon-remove-circle\"></span> {{ 'comments.btn.delete'| trans }}</button>\n                                </li>\n                                <li>\n                                    {% if row.comment.recommended == 1 %}\n                                        <button type=\"button\" id=\"unrecommend_{{ row.comment.id }}\" class=\"action-unrecommend btn btn-default btn-xs\"><span class=\"glyphicon glyphicon-thumbs-down\"></span> {{ 'comments.btn.unrecommend'|trans }}</button>\n                                    {% else %}\n                                    <button type=\"button\" id=\"recommend_{{ row.comment.id }}\" class=\"btn btn-default btn-xs action-recommend\"><span class=\"glyphicon glyphicon-thumbs-up\"></span> {{ 'comments.btn.recommend'|trans }}</button>\n                                    {% endif %}\n                                </li>\n                                {{ renderHook('newscoop_admin.interface.comments.listsbutton', {'commentId': row.comment.id }) }}\n                            </ul>\n                        </div>\n                    </td>\n                </tr>\n                {% endfor %}\n            </tbody>\n        </table>\n        {% else %}\n        {{ 'comments.label.noentries'|trans }}\n        {% endif %}\n        {% if pagination.getTotalItemCount > 0 %}\n        <div class=\"row\">\n            <div class=\"col-xs-3 col-sm-4 col-md-5\">\n                <div class=\"dataTables_info\" id=\"commentsTable_info\">\n                    {{ 'comments.label.showing'|trans }}\n                    {% if pagination.getCurrentPageNumber == 1 %}\n                        {{ pagination.getCurrentPageNumber }}\n                    {% elseif pagination.getCurrentPageNumber < ((pagination.getTotalItemCount / pagination.getItemNumberPerPage)|round ) %}\n                        {{ startRange }}\n                    {% elseif pagination.getTotalItemCount < (pagination.getItemNumberPerPage * (pagination.getCurrentPageNumber)) %}\n                        {{ startRange }}\n                        {% set pages = pagination.getTotalItemCount %}\n                    {% endif %}\n                    {{ 'comments.label.to'|trans }} {{ pages }} {{ 'comments.label.of'|trans }} {{ pagination.getTotalItemCount }} {{ 'comments.label.entries'|trans }}.\n                </div>\n            </div>\n            <div class=\"col-xs-9 col-sm-8 col-md-7 text-right\"></div>\n        </div>\n        {% endif %}\n        <div class=\"pagination-wrapper\">\n            <ul class=\"pagination pagination-sm\">\n            {{ knp_pagination_render(pagination) }}\n            </ul>\n        </div>\n    </div>\n    <div class=\"dialogPopup dialog-1\" title=\"{{ 'comments.label.fullarticle'|trans }}\"></div>\n</div>\n\n<div class=\"modal fade\" id=\"modalAlert\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"modalAlertLabel\" aria-hidden=\"true\">\n  <div class=\"modal-dialog\">\n    <div class=\"modal-content\">\n      <div class=\"modal-header\">\n        <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-hidden=\"true\">&times;</button>\n        <h4 class=\"modal-title\" id=\"modalAlertLabel\">{{ 'comments.label.alert'|trans }}</h4>\n      </div>\n      <div class=\"modal-body\">\n        {{ 'comments.msg.first'|trans }}\n      </div>\n      <div class=\"modal-footer\">\n        <button type=\"button\" class=\"btn btn-primary\" data-dismiss=\"modal\">{{ 'comments.btn.close'|trans }}</button>\n      </div>\n    </div>\n  </div>\n</div>\n<script type=\"text/javascript\">\n    function changeCommentStatus(status, value) {\n        if (status == 'approved') {\n            $('input[data=approved_'+value+']').prop('checked', true);\n            $('input[data=hidden_'+value+']').prop('checked', false);\n            $('input[data=pending_'+value+']').prop('checked', false);\n        }\n\n        if (status == 'hidden') {\n            $('input[data=approved_'+value+']').prop('checked', false);\n            $('input[data=hidden_'+value+']').prop('checked', true);\n            $('input[data=pending_'+value+']').prop('checked', false);\n        }\n\n        if (status == 'pending') {\n            $('input[data=approved_'+value+']').prop('checked', false);\n            $('input[data=hidden_'+value+']').prop('checked', false);\n            $('input[data=pending_'+value+']').prop('checked', true);\n        }\n\n        if (status == 'deleted') {\n            $('.comment_'+value).remove();\n        }\n    };\n\n    $(\"tr#use-hover\").hover(function() {\n        $(this).next().find('.commentBtns').show();\n    }, function() {\n        $(this).next().find('.commentBtns').hide();\n    });\n\n    $(\"#hoverBtns td:last-child\").hover(function() {\n        $(this).children('div').show();\n    }, function() {\n       $(this).children('div').hide();\n    });\n\n    $('.commentBtns .action').live('click', function () {\n        var el = $(this);\n        var id = el.attr('data');\n        var ids = [id.match(/\\d+/)[0]];\n        var status = id.match(/[^_]+/)[0];\n\n        if (status == 'deleted' && !confirm('{{ 'comments.msg.sure'|trans }}' + '\\n' + '{{ 'comments.msg.surequestion'|trans }}')) {\n            return false;\n        }\n        callServer('ping', [], function(json) {\n            $.ajax({\n                type: 'POST',\n                url: Routing.generate('newscoop_newscoop_comments_setstatus'),\n                data: {\n                    \"comment\": ids,\n                    \"status\": status\n                },\n                success: function (data) {\n                    $.each(data.comments, function(index, value) {\n                        changeCommentStatus(data.status, value);\n                    });\n\n                    if ('deleted' == status) {\n                        flashMessage('{{ 'comments.msg.status.single'|trans }} {{ 'comments.msg.deleted'|trans }}');\n                    } else if (status == 'pending') {\n                        flashMessage('{{ 'comments.msg.status.single'|trans }} {{ 'comments.msg.status.new'|trans }}');\n                        $('.comment_'+ids).removeClass('status-hidden');\n                    } else if (status == 'approved') {\n                        flashMessage('{{ 'comments.msg.status.single'|trans }} {{ 'comments.msg.status.approved'|trans }}');\n                        $('.comment_'+ids).removeClass('status-hidden');\n                    } else if (status == 'hidden') {\n                        flashMessage('{{ 'comments.msg.status.single'|trans }} {{ 'comments.msg.status.hidden'|trans }}');\n                        $('.comment_'+ids).addClass('status-hidden');\n                    }\n                },\n                error: function (rq, status, error) {\n                    if (status == 0 || status == -1) {\n                        flashMessage('{{ 'comments.msg.error.reach|trans '}}', \"error\");\n                    }\n                }\n            });\n        });\n    });\n\n    $('.action-reply').live('click', function () {\n        var el = $(this);\n        $('.content-reply_'+el.attr('id')).hide();\n        var editDiv = $('.content-edit_'+el.attr('id'));\n        editDiv.hide();\n        var subject = editDiv.find(\"input[name=subject]\").val();\n        var message = editDiv.find(\"textarea[name=message]\").val();\n        if (subject || message) {\n            $('#comment-section_'+el.attr('id')).find('.commentSubject').text(subject);\n            $('#comment-section_'+el.attr('id')).find('.commentBody').text(message);\n        }\n\n        $('.content-reply_'+el.attr('id')).toggle(\"fast\");\n    });\n\n    $('.dateCommentHolderReply form').live('submit', function () {\n        var that = $(this);\n        callServer('ping', [], function(json) {\n            $.ajax({\n                type: 'POST',\n                url: that.attr('action'),\n                data: that.serialize(),\n                success: function (data) {\n                    if (data.status) {\n                        flashMessage('{{ 'comments.msg.updated'|trans }}');\n                        location.href = Routing.generate('newscoop_newscoop_comments_index');\n                    } else if (!status.data) {\n                        flashMessage('{{ 'comments.msg.error.update'|trans }}', \"error\");\n                    } else {\n                        flashMessage(data.status, \"error\");\n                    }\n                },\n                error: function (rq, status, error) {\n                    if (status == 0 || status == -1) {\n                        flashMessage('{{ 'comments.msg.error.reach|trans '}}', \"error\");\n                    }\n                }\n            });\n        });\n\n        return false;\n    });\n\n    $('.dateCommentHolderReply .reply-cancel').live('click', function () {\n        var el = $(this);\n        var form = $('.content-reply_'+el.attr('id')+' form');\n        $(form).each(function () {\n            this.reset();\n        });\n\n        $('.content-reply_'+el.attr('id')).slideToggle(\"slow\");\n    });\n\n    $('.js-comment-body td.clickable').live('click', function () {\n        var commentCheckbox = $('.table-checkbox', $(this).parent());\n        commentCheckbox.attr('checked', !commentCheckbox.attr(\"checked\"));\n    });\n\n    $('.action-edit').live('click', function () {\n        var el = $(this);\n        var subject = $('#comment-section_'+el.attr('id')).find('.commentSubject');\n        var message = $('#comment-section_'+el.attr('id')).find('.commentBody');\n        var editDiv = $('.content-edit_'+el.attr('id'));\n        editDiv.hide();\n        editDiv.find(\"input[name=subject]\").val($.trim(subject.text()));\n        editDiv.find(\"textarea[name=message]\").val($.trim(message.text()));\n        subject.empty();\n        message.empty();\n        $('.content-reply_'+el.attr('id')).hide();\n        editDiv.toggle(\"fast\");\n    });\n\n    $('.dateCommentHolderEdit form').live('submit', function () {\n        var that = $(this);\n        callServer('ping', [], function(json) {\n            $.ajax({\n                type: 'POST',\n                url: that.attr('action'),\n                data: that.serialize(),\n                success: function (data) {\n                    if (data.status) {\n                        var divSubject = $('#comment-section_'+data.comment).find('.commentSubject');\n                        var divMessage = $('#comment-section_'+data.comment).find('.commentBody');\n                        divSubject.empty();\n                        divSubject.text(data.subject);\n                        divMessage.empty();\n                        divMessage.text(data.message);\n                        $('.content-edit_'+data.comment).slideToggle(\"slow\");\n                        flashMessage('{{ 'comments.msg.updated'|trans }}');\n                    } else if (!data.status) {\n                        flashMessage('{{ 'comments.msg.error.update'|trans }}', \"error\");\n                    } else {\n                        flashMessage(data.status, \"error\");\n                    }\n                },\n                error: function (rq, status, error) {\n                    if (status == 0 || status == -1) {\n                        flashMessage('{{ 'comments.msg.error.reach|trans '}}', \"error\");\n                    }\n                }\n            });\n        });\n\n        return false;\n    });\n\n    $('.dateCommentHolderEdit .edit-cancel').live('click', function () {\n        var el = $(this);\n        var form = $('.content-edit_'+el.attr('id')+' form');\n        var editDiv = $('.content-edit_'+el.attr('id'));\n        var subject = editDiv.find(\"input[name=subject]\").val();\n        var message = editDiv.find(\"textarea[name=message]\").val();\n        $(form).each(function () {\n            this.reset();\n        });\n\n        $('#comment-section_'+el.attr('id')).find('.commentSubject').text(subject);\n        $('#comment-section_'+el.attr('id')).find('.commentBody').text(message);\n        $('.content-edit_'+el.attr('id')).slideToggle(\"slow\");\n    });\n\n    $('.commentBtns .action-recommend').live('click', function () {\n        var el = $(this);\n        var ids = [el.attr('id').replace('recommend_', '')];\n        var li = $(this).parent();\n\n        callServer('ping', [], function(json) {\n            $.ajax({\n                type: 'POST',\n                url: Routing.generate('newscoop_newscoop_comments_setrecommended', {comments: ids, recommended: 1 }),\n                success: function (data) {\n                    flashMessage('{{ 'comments.msg.updated'|trans }}');\n                    li.empty();\n                    li.append('<button type=\"button\" id=\"unrecommend_'+ids+'\" class=\"action-unrecommend btn btn-default btn-xs\"><span class=\"glyphicon glyphicon-thumbs-down\"></span> {{ 'comments.btn.unrecommend'|trans }}</button>');\n                },\n                error: function (rq, status, error) {\n                    if (status == 0 || status == -1) {\n                        flashMessage('{{ 'comments.msg.error.reach'|trans }}', \"error\");\n                    }\n                }\n            });\n        });\n    });\n\n    $('.commentBtns .action-unrecommend').live('click', function () {\n        var el = $(this);\n        var ids = [el.attr('id').replace('unrecommend_', '')];\n        var li = $(this).parent();\n\n        callServer('ping', [], function(json) {\n            $.ajax({\n                type: 'POST',\n                url: Routing.generate('newscoop_newscoop_comments_setrecommended', {comments: ids, recommended: 0 }),\n                success: function (data) {\n                    flashMessage('{{ 'comments.msg.updated'|trans }}');\n                    li.empty();\n                    li.append('<button type=\"button\" id=\"recommend_'+ids+'\" class=\"btn btn-default btn-xs action-recommend\"><span class=\"glyphicon glyphicon-thumbs-up\"></span> {{ 'comments.btn.recommend'|trans }}</button>');\n                },\n                error: function (rq, status, error) {\n                    if (status == 0 || status == -1) {\n                        flashMessage('{{ 'comments.msg.error.reach'|trans }}', \"error\");\n                    }\n                }\n            });\n        });\n    });\n\n    $('.toggle-checkbox').click(function() {\n        $(this).parents('table').find('.table-checkbox').prop('checked', this.checked);\n    });\n\n    $('.actions').change(function () {\n        action = $(this);\n        var status = action.val();\n        if (status != '') {\n            ids = [];\n            $('.table-checkbox:checked').each(function () {\n                ids[ids.length] = $(this).val();\n            });\n            action.val('');\n            if (!ids.length) {\n                $('#modalAlert').modal();\n                return false;\n            }\n            var translationComment = '{{ 'comments.msg.status.single'|trans }}';\n            if (ids.length != 1) {\n                if (status == 'deleted' && !confirm('{{ 'comments.msg.suremultiple'|trans }}' + '\\n' + '{{ 'comments.msg.surequestion'|trans }}')) {\n                    return false;\n                }\n\n                translationComment = '{{ 'comments.msg.status.all'|trans }}';\n            }\n\n            callServer('ping', [], function(json) {\n                $.ajax({\n                    type: 'POST',\n                    url: Routing.generate('newscoop_newscoop_comments_setstatus'),\n                    data: {\n                        \"comment\": ids,\n                        \"status\": status\n                    },\n                    success: function (data) {\n                        $.each(data.comments, function(index, value) {\n                            changeCommentStatus(data.status, value);\n                        });\n\n                        if ('deleted' == status) {\n                            flashMessage(translationComment+' {{ 'comments.msg.deleted'|trans }}');\n                        } else if (status == 'pending') {\n                            flashMessage(translationComment+' {{ 'comments.msg.status.new'|trans }}');\n                        } else if (status == 'approved') {\n                            flashMessage(translationComment+' {{ 'comments.msg.status.approved'|trans }}');\n                        } else if (status == 'hidden') {\n                            flashMessage(translationComment+' {{ 'comments.msg.status.hidden'|trans }}');\n                        }\n                    },\n                    error: function (rq, status, error) {\n                        if (status == 0 || status == -1) {\n                            flashMessage('{{ 'comments.msg.error.reach|trans '}}', \"error\");\n                        }\n                    }\n                });\n            });\n        }\n    });\n\n    // Dialog\n    var buttons = {};\n    buttons['{{ 'comments.btn.close'|trans }}'] = function () {\n        $(this).dialog(\"close\");\n    };\n\n    $('.dialogPopup').dialog({\n        autoOpen: false,\n        width: 600,\n        height: 560,\n        position: 'right',\n        buttons: buttons\n    });\n    // Dialog Link\n    $('.articleLink').live('click', function () {\n        var that = $(this);\n        callServer('ping', [], function(json) {\n            $.ajax({\n                type: 'GET',\n                url: that.attr('href'),\n                success: function (data) {\n                    data = $.parseJSON(data);\n                    var content = '<h3>' + $(that).html() + '</h3>';\n                    for (i in data) {\n                        if (i != 'date' && i != 'title' && i != 'authorsLabel') {\n                            content += '<h4>' + i + '</h4>';\n                            content += '<p>' + data[i] + '</p>';\n                        }\n                    }\n                    $('.dialogPopup').html(content);\n                    $('.dialogPopup').dialog('open');\n                },\n                error: function (rq, status, error) {\n                    if (status == 0 || status == -1) {\n                        flashMessage('{{ 'comments.msg.error.reach|trans '}}', \"error\");\n                    }\n                }\n            });\n        });\n\n        return false;\n    });\n</script>\n{% endblock %}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/Exception/exception.html.twig",
    "content": "{% extends 'NewscoopNewscoopBundle::admin_layout.html.twig' %}\n\n{% block admin_title %}{{ 'nopermissions'|trans }} - {{ parent() }}{% endblock %}\n{% block admin_content %}\n<div class=\"alert alert-danger\" style=\"font-size: 14px\"><center>{{ 'nopermissions'|trans }}</center></div>\n{% endblock %}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/Images/createFilter.html.twig",
    "content": "{% extends 'NewscoopNewscoopBundle::admin_layout.html.twig' %}\n{% trans_default_domain \"plugins_manager\" %}\n\n{% block admin_title %}Image Filters management{% endblock %}\n{% block admin_page_title_content %}Image Filters - create{% endblock %}\n\n{% block admin_stylesheets %}\n{% endblock %}\n\n{% block admin_scripts %}\n\n{% endblock %}\n\n{% block admin_content %}\n<div class=\"row\">\n    <div class=\"col-md-6\" style=\"background-color: #fff;border: 1px solid #9d9d9d;float: none;margin: 30px 30px;padding: 20px 20px 50px 20px;-moz-box-shadow: 0 2px 2px rgba(0,0,0,.10);-webkit-box-shadow: 0 2px 2px rgba(0,0,0,.10);box-shadow: 0 2px 2px rgba(0,0,0,.10); width: 600px\">\n    {{ form_start(form) }}\n        {{ form_errors(form) }}\n\n        <div class=\"form-group\">\n            {{ form_row(form.name, {attr: {class: 'form-control', style: 'width: 300px'}}) }}\n        </div>\n\n        <div class=\"form-group\">\n            {{ form_row(form.type, {attr: {class: 'form-control', style: 'width: 200px'}}) }}\n        </div>\n\n        <div class=\"form-group\">\n            {{ form_row(form.save, {attr: {class: 'btn btn-success pull-right'}}) }}\n        </div>\n    {{ form_end(form) }}\n    </div>\n</div>\n{% endblock %}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/Images/filterOptions.html.twig",
    "content": "{% extends 'NewscoopNewscoopBundle::admin_layout.html.twig' %}\n{% trans_default_domain \"plugins_manager\" %}\n\n{% block admin_title %}Image Filters management{% endblock %}\n{% block admin_page_title_content %}Edit '{{ imageFilter.name }}' filter options{% endblock %}\n\n{% block admin_stylesheets %}\n{% endblock %}\n\n{% block admin_scripts %}\n\n{% endblock %}\n\n{% block admin_content %}\n<div class=\"row\">\n    <div class=\"col-md-6\" style=\"background-color: #fff;border: 1px solid #9d9d9d;float: none;margin: 30px 30px;padding: 20px 20px 50px 20px;-moz-box-shadow: 0 2px 2px rgba(0,0,0,.10);-webkit-box-shadow: 0 2px 2px rgba(0,0,0,.10);box-shadow: 0 2px 2px rgba(0,0,0,.10); width: 600px\">\n    <h2>Edit {{ imageFilter.name }} options</h2>\n    {% for p in form.children %}\n        <div class=\"form-group\">\n            {{ form_row(p) }}\n        </div>\n    {% endfor %}\n\n    </div>\n</div>\n{% endblock %}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/Menu/knp_menu.html.twig",
    "content": "{% extends \"knp_menu.html.twig\" %}\n\n{% block item %}\n{% import \"knp_menu.html.twig\" as macros %}\n{% if item.displayed %}\n    {%- set attributes = item.attributes %}\n    {%- set is_dropdown = attributes.dropdown|default(false) %}\n    {%- set is_rightdrop = attributes.rightdrop|default(false) %}\n    {%- set divider_prepend = attributes.divider_prepend|default(false) %}\n    {%- set divider_append = attributes.divider_append|default(false) %}\n\n{# unset bootstrap specific attributes #}\n    {%- set attributes = attributes|merge({'dropdown': null, 'rightdrop': null, 'divider_prepend': null, 'divider_append': null }) %}\n\n    {%- if divider_prepend %}\n        {{ block('dividerElement') }}\n    {%- endif %}\n\n{# building the class of the item #}\n    {%- set classes = item.attribute('class') is not empty ? [item.attribute('class')] : [] %}\n    {%- if matcher.isCurrent(item) %}\n        {%- set classes = classes|merge([options.currentClass]) %}\n    {%- elseif matcher.isAncestor(item, options.depth) %}\n        {%- set classes = classes|merge([options.ancestorClass]) %}\n    {%- endif %}\n    {%- if item.actsLikeFirst %}\n        {%- set classes = classes|merge([options.firstClass]) %}\n    {%- endif %}\n    {%- if item.actsLikeLast %}\n        {%- set classes = classes|merge([options.lastClass]) %}\n    {%- endif %}\n\n{# building the class of the children #}\n    {%- set childrenClasses = item.childrenAttribute('class') is not empty ? [item.childrenAttribute('class')] : [] %}\n    {%- set childrenClasses = childrenClasses|merge(['menu_level_' ~ item.level]) %}\n\n{# adding classes for dropdown #}\n    {%- if is_dropdown %}\n        {%- set classes = classes|merge(['dropdown']) %}\n        {%- set childrenClasses = childrenClasses|merge(['dropdown-menu']) %}\n    {%- endif %}\n\n{# adding classes for rightdrop #}\n    {%- if is_rightdrop %}\n        {%- set classes = classes|merge(['rightdrop']) %}\n        {%- set childrenClasses = childrenClasses|merge(['dropdown-menu']) %}\n    {%- endif %}\n\n{# putting classes together #}\n    {%- if classes is not empty %}\n        {%- set attributes = attributes|merge({'class': classes|join(' ')}) %}\n    {%- endif %}\n    {%- set listAttributes = item.childrenAttributes|merge({'class': childrenClasses|join(' ') }) %}\n\n{# displaying the item #}\n    <li{{ macros.attributes(attributes) }}>\n        {%- if is_dropdown %}\n            {{ block('dropdownElement') }}\n        {%- elseif is_rightdrop %}\n            {{ block('rightdropElement') }}\n        {%- elseif item.uri is not empty and (not item.current or options.currentAsLink) %}\n            {{ block('linkElement') }}\n        {%- else %}\n            {{ block('spanElement') }}\n        {%- endif %}\n{# render the list of children#}\n        {{ block('list') }}\n    </li>\n\n    {%- if divider_append %}\n        {{ block('dividerElement') }}\n    {%- endif %}\n{% endif %}\n{% endblock %}\n\n{% block dividerElement %}\n{% if item.level == 1 %}\n    <li class=\"divider-vertical\"></li>\n{% else %}\n    <li class=\"divider\"></li>\n{% endif %}\n{% endblock %}\n\n{% block dropdownElement %}\n    {%- set classes = item.linkAttribute('class') is not empty ? [item.linkAttribute('class')] : [] %}\n    {%- set classes = classes|merge(['dropdown-toggle']) %}\n    {%- set attributes = item.linkAttributes %}\n    {%- set attributes = attributes|merge({'class': classes|join(' ')}) %}\n    {%- set attributes = attributes|merge({'data-toggle': 'dropdown'}) %}\n    <a href=\"#\"{{ macros.attributes(attributes) }}>{{ block('label') }} <b class=\"caret\"></b></a>\n{% endblock %}\n\n{% block rightdropElement %}\n    {%- set classes = item.linkAttribute('class') is not empty ? [item.linkAttribute('class')] : [] %}\n    {%- set classes = classes|merge(['rightdrop-toggle']) %}\n    {%- set attributes = item.linkAttributes %}\n    {%- set attributes = attributes|merge({'class': classes|join(' ')}) %}\n    {%- set attributes = attributes|merge({'data-toggle': 'rightdrop'}) %}\n    {% if item.uri is not empty %}\n    <a href=\"{{ item.uri }}\"\n    {% else %}\n    <a href=\"#\"\n    {% endif %}\n    {{ macros.attributes(attributes) }}>{{ block('label') }} <b class=\"caret-right\"></b></a>\n{% endblock %}\n\n{% block label %}{{ item.label|trans }}{% endblock %}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/Pagination/pagination_bootstrap3.html.twig",
    "content": "{% if pageCount > 1 %}\n<ul class=\"pagination pagination-sm\">\n{% spaceless %}\n    {% if previous is defined %}\n        <li>\n            <a href=\"{{ path(route, query|merge({(pageParameterName): previous})) }}\">&laquo;&nbsp;</a>\n        </li>\n    {% else %}\n        <li class=\"disabled\">\n            <span>&laquo;&nbsp;</span>\n        </li>\n    {% endif %}\n\n    {% if startPage > 1 %}\n        <li>\n            <a href=\"{{ path(route, query|merge({(pageParameterName): 1})) }}\">1</a>\n        </li>\n        {% if startPage == 3 %}\n            <li>\n                <a href=\"{{ path(route, query|merge({(pageParameterName): 2})) }}\">2</a>\n            </li>\n        {% elseif startPage != 2 %}\n        <li class=\"disabled\">\n            <span>&hellip;</span>\n        </li>\n        {% endif %}\n    {% endif %}\n\n    {% for page in pagesInRange %}\n        {% if page != current %}\n            <li>\n                <a href=\"{{ path(route, query|merge({(pageParameterName): page})) }}\">{{ page }}</a>\n            </li>\n        {% else %}\n            <li class=\"active\">\n                <span>{{ page }}</span>\n            </li>\n        {% endif %}\n\n    {% endfor %}\n\n    {% if pageCount > endPage %}\n        {% if pageCount > (endPage + 1) %}\n            {% if pageCount > (endPage + 2) %}\n                <li class=\"disabled\">\n                    <span>&hellip;</span>\n                </li>\n            {% else %}\n                <li>\n                    <a href=\"{{ path(route, query|merge({(pageParameterName): (pageCount - 1)})) }}\">{{ pageCount -1 }}</a>\n                </li>\n            {% endif %}\n        {% endif %}\n        <li>\n            <a href=\"{{ path(route, query|merge({(pageParameterName): pageCount})) }}\">{{ pageCount }}</a>\n        </li>\n    {% endif %}\n\n    {% if next is defined %}\n        <li>\n            <a href=\"{{ path(route, query|merge({(pageParameterName): next})) }}\">&nbsp;&raquo;</a>\n        </li>\n    {% else %}\n        <li class=\"disabled\">\n            <span>&nbsp;&raquo;</span>\n        </li>\n    {% endif %}\n{% endspaceless %}\n</ul>\n{% endif %}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/PasswordRecovery/check.html.twig",
    "content": "<html lang=\"{{ localeFromCookie }}\" dir=\"ltr\">\n<head>\n  <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n  <title>{% block admin_title %}{{ 'Password Recovery'|trans({},'home') }}{% endblock %}</title>\n  <link rel=\"shortcut icon\" href=\"{{ Newscoop['ADMIN_IMAGE_BASE_URL'] }}/7773658c3ccbf03954b4dacb029b2229.ico\" />\n  <link rel=\"stylesheet\" type=\"text/css\" href=\"{{ Newscoop['ADMIN_STYLE_URL'] }}/admin_stylesheet_new.css\" />\n  <link rel=\"stylesheet\" type=\"text/css\" href=\"{{ Newscoop['ADMIN_STYLE_URL'] }}/admin_stylesheet.css\" />\n  <style type=\"text/css\" media=\"screen\">\n  .recovery-alert {font-size: 12px;padding: 0 5px;}\n  .recovery-errors {color: #FF2200;}\n  .recovery-success {color: #5cb85c;}\n  </style>\n  <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/campsite.js\"></script>\n  <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/fValidate/fValidate.config.js\"></script>\n  <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/fValidate/fValidate.core.js\"></script>\n  <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/fValidate/fValidate.lang-enUS.js\"></script>\n  <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/fValidate/fValidate.validators.js\"></script>\n  <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/crypt.js\"></script>\n</head>\n<body>\n<form name=\"check_token_form\" action=\"{{ path('newscoop_newscoop_passwordrecovery_checktoken') }}\" method=\"post\" {{ form_enctype(form) }}>\n    <input type=\"hidden\" name=\"email\" value=\"{{ email }}\" />\n    <input type=\"hidden\" name=\"token\" value=\"{{ token }}\" />\n    <div class=\"login_box\">\n        <div class=\"logobox\"><img src=\"{{ Newscoop['ADMIN_IMAGE_BASE_URL'] }}/sign_big.gif\" border=\"0\" alt=\"\" /></div>\n        <h2>{{ \"Password Recovery\"|trans({},'home') }}</h2>\n        <noscript>\n            {{ 'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.'|trans({},'home') }}\n        </noscript>\n        <div class=\"login_error\">\n            {{ form_errors(form) }}\n            {% if error %}\n                <h4 class=\"recovery-alert recovery-errors\">{{ error }}</h4>\n            {% endif %}\n        </div>\n        {% if success %}\n            <h4 class=\"recovery-alert recovery-success\">{{ 'Your password has been reset.'|trans({},'home') }}</h4>\n        {% endif %}\n        {% if noPassword %}\n            <table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"box_table login\" width=\"420\">\n                <tr>\n                  <td align=\"right\">\n                    <strong>{{ 'New password'|trans({},'users') }}:</strong>\n                </td>\n                <td>\n                    {{ form_widget(form.password, {'attr' : {'class' : 'input_text', 'style' : 'width: 250px'}}) }}\n                </td>\n            </tr>\n            <tr class=\"buttonBlock2\">\n                <td></td>\n                <td>\n                    <input type=\"submit\" class=\"button\" name=\"Login\" value=\"{{ 'Change password'|trans({},'home') }}\" />\n                </td>\n            </tr>\n            {{ form_rest(form) }}\n            </table>\n        {% endif %}\n        <a class=\"goto recovery-alert\" href=\"{{ Newscoop['WEBSITE_URL'] }}/admin/login\">{{ 'Back to login'|trans({},'home') }}</a>\n    </div>\n</form>\n<div class=\"footer\">\n    <a href=\"http://newscoop.sourcefabric.org/\" target=\"_blank\">{{ NewscoopVersion.getPackage() }}</a>, the open content management system for professional journalists. \n    <br />\n    &copy; {{ NewscoopVersion.getCopyrightYear() }} \n    <a href=\"{{ NewscoopVersion.getWebURL() }}\" target=\"_blank\">{{ NewscoopVersion.getOrganization() }}</a> {{ NewscoopVersion.getPackage() }} is distributed under {{ NewscoopVersion.getLicense() }}   \n</div>\n</body>\n</html>"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/PasswordRecovery/email.txt.twig",
    "content": "{{ 'Hi, \\n\\nfor password recovery, please follow this link: $1'|trans({'$1': link}, 'home') }}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/PasswordRecovery/index.html.twig",
    "content": "<html lang=\"{{ localeFromCookie }}\" dir=\"ltr\">\n<head>\n  <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n  <title>{% block admin_title %}{{ 'Password Recovery'|trans({},'home') }}{% endblock %}</title>\n  <link rel=\"shortcut icon\" href=\"{{ Newscoop['ADMIN_IMAGE_BASE_URL'] }}/7773658c3ccbf03954b4dacb029b2229.ico\" />\n  <link rel=\"stylesheet\" type=\"text/css\" href=\"{{ Newscoop['ADMIN_STYLE_URL'] }}/admin_stylesheet_new.css\" />\n  <link rel=\"stylesheet\" type=\"text/css\" href=\"{{ Newscoop['ADMIN_STYLE_URL'] }}/admin_stylesheet.css\" />\n  <style type=\"text/css\" media=\"screen\">\n  .recovery-alert {font-size: 12px;padding: 0 5px;}\n  .recovery-errors {color: #FF2200;}\n  .recovery-success {color: #5cb85c;}\n  </style>\n  <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/campsite.js\"></script>\n  <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/fValidate/fValidate.config.js\"></script>\n  <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/fValidate/fValidate.core.js\"></script>\n  <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/fValidate/fValidate.lang-enUS.js\"></script>\n  <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/fValidate/fValidate.validators.js\"></script>\n  <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/crypt.js\"></script>\n</head>\n<body>\n<form name=\"login_form\" action=\"{{ path('newscoop_newscoop_passwordrecovery_index') }}\" method=\"post\" {{ form_enctype(form) }} >\n    <div class=\"login_box\">\n        <div class=\"logobox\"><img src=\"{{ Newscoop['ADMIN_IMAGE_BASE_URL'] }}/sign_big.gif\" border=\"0\" alt=\"\" /></div>\n        <h2>{{ 'Password Recovery'|trans({},'home') }}</h2>\n        <noscript>{{ 'Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.'|trans({},'home') }}\n        </noscript>\n\n        <div class=\"login_error\">\n            {{ form_errors(form) }}\n            {% if error %}\n                <h4 class=\"recovery-alert recovery-errors\">{{ error }}</h4>\n            {% endif %}\n        </div>\n        {% if sent == false and disabled == false %}\n        <table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"box_table login\" width=\"420\">\n            <tr>\n                <td align=\"right\">\n                    <strong>{{ 'Email'|trans }}:</strong>\n                </td>\n                <td>\n                    {{ form_widget(form.email, {'attr' : {'class' : 'input_text', 'style' : 'width: 250px'}}) }}\n                </td>\n            </tr>\n            <tr class=\"buttonBlock2\">\n                <td><a href=\"{{ Newscoop['WEBSITE_URL'] }}/admin/login\">{{ 'Back to login.'|trans({},'home') }}</a></td>\n                <td>\n                    <input type=\"submit\" class=\"button\" name=\"Login\" value=\"{{ 'Recover password'|trans({},'home') }}\" />\n                </td>\n            </tr>\n            {{ form_rest(form) }}\n        </table>\n        {% elseif disabled %}\n            <h4 class=\"recovery-alert recovery-errors\"><center>{{ 'Password recovery is disabled.'|trans({}, 'home') }}</center></h4>\n            <a class=\"goto\" href=\"{{ Newscoop['WEBSITE_URL'] }}/admin/login\">{{ 'Back to login'|trans({},'home') }}</a>\n        {% else %}\n            <h4 class=\"recovery-alert recovery-success\"><center>{{ 'An email with instructions on how to recover you password has been sent to your inbox.'|trans({},'home') }}</center></h4>\n            <a class=\"goto recovery-alert\" href=\"{{ Newscoop['WEBSITE_URL'] }}/admin/login\">{{ 'Proceed to login.'|trans({},'home') }}</a>\n        {% endif %}\n    </div>\n</form>\n<div class=\"footer\">\n    <a href=\"http://newscoop.sourcefabric.org/\" target=\"_blank\">{{ NewscoopVersion.getPackage() }}</a>, the open content management system for professional journalists. \n    <br />\n    &copy; {{ NewscoopVersion.getCopyrightYear() }} \n    <a href=\"{{ NewscoopVersion.getWebURL() }}\" target=\"_blank\">{{ NewscoopVersion.getOrganization() }}</a> {{ NewscoopVersion.getPackage() }} is distributed under {{ NewscoopVersion.getLicense() }}   \n</div>\n</body>\n</html>"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/Playlists/index.html.twig",
    "content": "{% extends 'NewscoopNewscoopBundle::admin_layout.html.twig' %}\n{% trans_default_domain \"articles\" %}\n{% block admin_title %}{{ 'Featured Article Lists'|trans }} - {{ parent() }}{% endblock %}\n{% block admin_page_title_content %}{{ 'Featured Article Lists'|trans }}{% endblock %}\n{% block admin_page_title_box %}\n  {% if editorView == false %}\n      <div class=\"toolbar row\"><span class=\"article-title\">\n    {{ 'Featured Article Lists'|trans }}\n  </span></div>\n  {% endif %}\n{% endblock %}\n{% block admin_stylesheets %}\n<link rel=\"stylesheet\" href=\"{{ asset('/bundles/newscoopnewscoop/css/playlists.css') }}\">\n<link rel=\"stylesheet\" href=\"{{ asset('/bundles/newscoopnewscoop/css/bootstrap-custom.css') }}\">\n<link rel=\"stylesheet\" href=\"{{ asset('/bundles/newscoopnewscoop/css/select.min.css') }}\">\n<link rel=\"stylesheet\" href=\"/js/select2/select2.css\">\n<link rel=\"stylesheet\" href=\"{{ asset('/bundles/newscoopnewscoop/css/ng-table.min.css') }}\">\n<link rel=\"stylesheet\" href=\"{{ asset('/bundles/newscooparticles/app/loading-bar.css') }}\">\n{% endblock %}\n{% block admin_scripts %}\n<script type=\"text/javascript\" src=\"{{ asset('/bundles/newscoopnewscoop/js/angular.min.js') }}\"></script>\n{% endblock %}\n{% block admin_page_menu_bar %}\n  {% if editorView == false %}\n    {{ parent() }}\n  {% endif %}\n{% endblock %}\n{% block admin_content %}\n<div ng-app=\"playlistsApp\" ng-controller=\"PlaylistsController\" ng-cloak>\n    <div class=\"system_pref\" {% if editorView %}style=\"margin: -20px -24px; padding: 14px;\"{% endif %}>\n        {% if editorView %}\n        <div class=\"toolbar\" style=\"background: #fff;box-shadow: none;margin-bottom: 13px;border: none;padding: 0;\">\n            <div class=\"select-playlist-bar\" style=\"float: left;\">\n                    <ui-select ng-model=\"playlist.selected\" theme=\"select2\" ng-click=\"loadAllPlaylists()\" on-select=\"setPlaylistInfoOnChange($item)\" style=\"min-width: 200px;\">\n                            <ui-select-match placeholder=\"{{ 'Select a list'|trans }}\">{[{$select.selected.title}]}</ui-select-match>\n                            <ui-select-choices repeat=\"playlist in playlists | listsFilter: {title: $select.search}\">\n                            <div ng-bind-html=\"playlist.title | highlight: $select.search\"></div>\n                        </ui-select-choices>\n                    </ui-select>\n            </div>\n\n            <div class=\"save-button-bar\">\n                <button ng-disabled=\"!playlist.selected\" ng-click=\"addArticleToListFromEditor('{{ articleNumber }}', '{{ language }}')\" class=\"btn btn-default btn-xs\">{{ 'Add to list'|trans }}</button>\n                <button onclick=\"parent.$.fancybox.close(); parent.location.reload();\" id=\"modal-close-btn\" style=\"display: none;\" class=\"btn btn-default btn-xs\">{{ 'Close'|trans({}, 'messages') }}</button>\n                <button type=\"button\" ng-disabled=\"processing || !playlist.selected\" ng-click=\"savePlaylistInEditorMode()\" name=\"save\" class=\"btn btn-xs btn-primary\"><span class=\"glyphicon glyphicon-ok\"></span> {{ 'Save'|trans({}, 'messages') }}</button>\n            </div>\n        </div>\n        {% endif %}\n        {% if editorView == false %}\n        <ul class=\"list-inline first-menu\" ng-form=\"playlistForm\">\n            {% if editorView == false %}\n            <li><button class=\"add btn btn-primary btn-sm\" ng-click=\"addNewPlaylist()\"><span class=\"glyphicon glyphicon-plus\"></span> {{ 'Add list'|trans }}</button></li>\n            <li>\n            {% endif %}\n        <ui-select ng-model=\"playlist.selected\" theme=\"select2\" ng-click=\"loadAllPlaylists()\" on-select=\"setPlaylistInfoOnChange($item)\" style=\"min-width: 200px;\">\n                <ui-select-match placeholder=\"{{ 'Select a list'|trans }}\">{[{$select.selected.title}]}</ui-select-match>\n                <ui-select-choices repeat=\"playlist in playlists | listsFilter: {title: $select.search}\">\n                <div ng-bind-html=\"playlist.title | highlight: $select.search\"></div>\n            </ui-select-choices>\n        </ui-select>\n    </li>\n    <li ng-if=\"playlist.selected\">\n        <label id=\"playlist-name-label\">{{ 'List Name'|trans }}:</label>\n    </li>\n    <li ng-if=\"playlist.selected\">\n        <form name=\"listNameForm\">\n        <span id=\"list_name\">\n            <input name=\"playlistName\" ng-minlength=\"1\" ng-maxlength=\"60\" ng-model=\"formData.title\" required value=\"{[{ formData.title }]}\" class=\"form-control\" style=\"float: left;\" id=\"playlist-name\" ng-change=\"validateListName(this)\">\n        </span>\n        </form>\n    </li>\n    <li ng-if=\"playlist.selected.id\">\n        <label id=\"playlist-id-label\">{{ 'List ID'|trans }}:</label>\n    </li>\n    <li ng-if=\"playlist.selected.id\">\n        <span style=\"float: left;\">\n            <input name=\"playlist-id\" id=\"playlistId\" value=\"{[{ playlist.selected.id }]}\" class=\"form-control\" ng-disabled=\"true\">\n        </span>\n    </li>\n    <li style=\"float: right\" ng-if=\"playlist.selected\">\n        <div class=\"save-button-bar\">\n            <button type=\"button\" ng-click=\"removePlaylist()\" ng-disabled=\"processing\" class=\"btn btn-sm btn-default\"><span class=\"glyphicon glyphicon-trash\"></span> {{ 'Remove'|trans({}, 'messages') }}</button>\n            <button type=\"button\" ng-disabled=\"processing || playlistForm.$invalid || !playlistLimit\" ng-click=\"savePlaylist()\" name=\"save\" class=\"btn btn-sm btn-primary\"><span class=\"glyphicon glyphicon-ok\"></span> {{ 'Save'|trans({}, 'messages') }}</button>\n        </div>\n    </li>\n</ul>\n{% endif %}\n<div class=\"context-content\">\n{% if editorView == false %}\n    <div class=\"context-block context-search plugin-context-block\">\n        <h3>{{ 'Available Articles'|trans }}</h3>\n        <div class=\"smartlist\">\n            <div class=\"filters\">\n                <div class=\"container\">\n                <div class=\"heading\">\n                <button class=\"btn btn-sf-invisible\" ng-click=\"showAddFilter = !showAddFilter\">\n                <span class=\"glyphicon glyphicon-plus\" ng-class=\"{'glyphicon-plus': !showAddFilter,\n                             'glyphicon-minus': showAddFilter}\"></span>\n                <span class=\"add-text\">{{ 'Filter'|trans({}, 'library') }}</span>\n                </button>\n            </div>\n                    <div ng-show=\"showAddFilter\" ng-controller=\"FiltersController\">\n                        <div class=\"filters-left\">\n                            <ul class=\"list-group\">\n                                <li class=\"list-group-item\">\n                                    <ui-select ng-model=\"publication.selected\" theme=\"select2\" ng-click=\"loadPublications()\" on-select=\"loadIssues($item)\">\n                                        <ui-select-match placeholder=\"{{ 'Publication'|trans({}, 'messages') }}...\">{[{$select.selected.name}]}</ui-select-match>\n                                        <ui-select-choices repeat=\"publication in publications\">\n                                            <div ng-bind-html=\"publication.name | highlight: $select.search\"></div>\n                                        </ui-select-choices>\n                                    </ui-select>\n                                </li>\n                              <li class=\"list-group-item\">\n                                    <ui-select ng-model=\"issue.selected\" ng-disabled=\"!publication.selected\" theme=\"select2\" on-select=\"loadSections($item)\">\n                                        <ui-select-match placeholder=\"{{ 'Issue'|trans({}, 'messages') }}...\">{[{$select.selected.title}]}</ui-select-match>\n                                        <ui-select-choices repeat=\"issue in issues\">\n                                            <div ng-bind-html=\"issue.title | highlight: $select.search\"></div>\n                                            <small>number: {[{ ::issue.number}]}, language: {[{ ::issue.language}]}</small>\n                                        </ui-select-choices>\n                                    </ui-select>\n                              </li>\n                              <li class=\"list-group-item\">\n                                    <ui-select ng-model=\"section.selected\" ng-disabled=\"!issue.selected\" theme=\"select2\" on-select=\"loadByMainFilters($item)\">\n                                        <ui-select-match placeholder=\"{{ 'Section'|trans({}, 'messages') }}...\">{[{$select.selected.title}]}</ui-select-match>\n                                        <ui-select-choices repeat=\"section in sections\">\n                                            <div ng-bind-html=\"section.title | highlight: $select.search\"></div>\n                                            <small>number: {[{ ::section.number}]}, language: {[{ ::section.language}]}</small>\n                                        </ui-select-choices>\n                                    </ui-select>\n                              </li>\n                              <li class=\"list-group-item\">\n                                    <ui-select ng-model=\"articleType.selected\" theme=\"select2\" ng-click=\"loadArticleTypes()\" on-select=\"loadByArticleTypesOnSelect($item)\">\n                                        <ui-select-match placeholder=\"{{ 'Select type'|trans({}, 'library') }}...\">{[{$select.selected.name}]}</ui-select-match>\n                                        <ui-select-choices repeat=\"articleType in articleTypes\">\n                                            <div ng-bind-html=\"articleType.name | highlight: $select.search\"></div>\n                                        </ui-select-choices>\n                                    </ui-select>\n                              </li>\n                              <li class=\"list-group-item\">\n                                    <ui-select ng-model=\"author.selected\" theme=\"select2\" on-select=\"loadByAuthorsOnSelect($item)\">\n                                        <ui-select-match placeholder=\"{{ 'Author'|trans({}, 'messages') }}...\">{[{$select.selected.firstName + ' ' + $select.selected.lastName}]}</ui-select-match>\n                                        <ui-select-choices repeat=\"author in authors\" refresh=\"loadAuthors($select.search)\" refresh-delay=\"500\">\n                                            <div ng-bind-html=\"author.firstName + ' ' + author.lastName | highlight: $select.search\"></div>\n                                        </ui-select-choices>\n                                    </ui-select>\n                              </li>\n                              <li class=\"list-group-item\">\n                                    <ui-select ng-model=\"user.selected\" theme=\"select2\" ng-disabled=\"disabled\" reset-search-input=\"false\" on-select=\"loadByUsersOnSelect($item)\">\n                                        <ui-select-match placeholder=\"{{ 'Users'|trans({}, 'messages') }}...\">{[{$select.selected.firstName + ' ' + $select.selected.lastName}]}</ui-select-match>\n                                        <ui-select-choices repeat=\"user in users\" refresh=\"loadUsers($select.search)\" refresh-delay=\"500\">\n                                            <div ng-bind-html=\"user.firstName + ' ' + user.lastName | highlight: $select.search\"></div>\n                                        </ui-select-choices>\n                                    </ui-select>\n                              </li>\n                            </ul>\n                        </div>\n                        <div class=\"filters-right\">\n                            <ul class=\"list-group\">\n                              <li class=\"list-group-item\">\n                                    <input type=\"text\" ng-change=\"loadByDateOnChange(this)\" placeholder=\"{{ 'Publish date'|trans({}, 'library') }}...\" ng-model=\"filterDate\" class=\"form-control input-sm input-filter-date date\"/>\n                              </li>\n                              <li class=\"list-group-item\">\n                                    <input type=\"text\" ng-change=\"loadByPublishedBeforeOnChange(this)\" placeholder=\"{{ 'Published before'|trans({}, 'library') }}...\" ng-model=\"filterPublishedBefore\" class=\"form-control input-sm input-filter-date date\"/>\n                              </li>\n                              <li class=\"list-group-item\">\n                                    <input type=\"text\" ng-change=\"loadByPublishedAfterOnChange(this)\" placeholder=\"{{ 'Published after'|trans({}, 'library') }}...\" ng-model=\"filterPublishedAfter\" class=\"form-control input-sm input-filter-date date\"/>\n                              </li>\n                              <li class=\"list-group-item\">\n                                    <ui-select ng-model=\"status.selected\" theme=\"select2\" on-select=\"loadByStatusOnSelect($item)\">\n                                        <ui-select-match placeholder=\"{{ 'Status'|trans({}, 'messages') }}...\">{[{$select.selected.name}]}</ui-select-match>\n                                        <ui-select-choices repeat=\"status in statuses\">\n                                            <div ng-bind-html=\"status.name | highlight: $select.search\"></div>\n                                        </ui-select-choices>\n                                    </ui-select>\n                              </li>\n                              <li class=\"list-group-item\">\n                                    <ui-select ng-model=\"topic.selected\" theme=\"select2\" on-select=\"loadByTopicOnSelect($item)\">\n                                        <ui-select-match placeholder=\"{{ 'Topic'|trans({}, 'messages') }}...\">{[{$select.selected.title}]}</ui-select-match>\n                                        <ui-select-choices repeat=\"topic in topics\" refresh=\"loadTopics($select.search)\" refresh-delay=\"500\">\n                                            <div ng-bind-html=\"topic.title | highlight: $select.search\"></div>\n                                        </ui-select-choices>\n                                    </ui-select>\n                              </li>\n                              <li class=\"list-group-item\">\n                                    <ui-select ng-model=\"language.selected\" theme=\"select2\" ng-click=\"loadLanguages()\" on-select=\"loadByLanguageOnSelect($item)\">\n                                        <ui-select-match placeholder=\"{{ 'Language'|trans({}, 'messages') }}...\">{[{$select.selected.name}]}</ui-select-match>\n                                        <ui-select-choices repeat=\"language in languages | filter:$select.search\">\n                                            <div ng-bind-html=\"language.name | highlight: $select.search\"></div>\n                                        </ui-select-choices>\n                                    </ui-select>\n                              </li>\n                            </ul>\n                        </div>\n                    </div>\n                </div>\n                    </div>\n                    <div loading-container=\"tableParams.settings().$loading\">\n                        <table ng-table=\"tableParams\" show-filter=\"true\" class=\"table datatable dataTable\">\n                            <tbody ng-sortable=\"sortableConfig\">\n                                <tr ng-repeat=\"article in $data\" class=\"move-elements\">\n                                    <td class=\"query\" filter=\"{ 'query': 'text' }\" sortable=\"query\">\n                                        <div class=\"context-item\">\n                                            <div class=\"context-drag-topics\"><a href=\"#\" title=\"drag to sort\"></a></div>\n                                            <div class=\"context-item-header\">\n                                                <div class=\"context-item-date\">{[{::article.created| date:\"dd.MM.yyyy 'at' H:mm:ss\"}]}\n                                                    <span class=\"label label-default\" style=\"margin-right: 5px\">\n                                                            <span ng-switch on=\"article.status\">\n                                                                <span ng-switch-when=\"Y\">{{ 'Published'|trans({}, 'messages') }}</span>\n                                                                <span ng-switch-when=\"N\">{{ 'New'|trans({}, 'messages') }}</span>\n                                                                <span ng-switch-when=\"S\">{{ 'Submitted'|trans({}, 'messages') }}</span>\n                                                                <span ng-switch-default>{{ 'Unknown'|trans({}, 'messages') }}</span>\n                                                            </span></span><span class=\"label label-primary\">{[{ ::article.type}]}</span>\n                                                        <span class=\"label label-default\">{[{ ::article.language}]}</span>\n                                                    </div>\n                                                    <a href=\"#\" style=\"text-decoration: none;\" ng-click=\"viewArticle(article)\" class=\"view-article\">{{ 'View article'|trans }}</a>\n                                                </div>\n                                                <div class=\"context-item-summary\">\n                                                    {[{ ::article.title}]}\n                                                </div>\n                                            </div>\n                                        </td>\n                                    </tr>\n                                <tr ng-if=\"!$data.length\" class=\"ignore-elements\">\n                                    <td>\n                                        <div class=\"context-item\">\n                                            {{ 'No records found.'|trans({}, 'library')}}\n                                        </div>\n                                    </td>\n                                </tr>\n                                </tbody>\n                            </table>\n                        </div>\n                    </div>\n                </div>\n                {% endif %}\n                <div ng-controller=\"FeaturedController\">\n                    <div ng-if=\"!$parent.isViewing\" class=\"context-block context-list plugin-context-block\" {% if editorView %}style=\"width: 643px;\"{% endif %}>\n                        <div class=\"row\">\n                            <div class=\"col-xs-6\"><h3 style=\"display:inline\">{[{ playlist.selected.title}]}</h3></div>\n                            <div class=\"col-xs-6\" ng-if=\"playlist.selected\">\n                            <form name=\"limitForm\" class=\"limit-input\">\n                            <label id=\"playlist-id-label\">{{ 'List limit'|trans}}:</label>\n                            {% if editorView == false %}\n                                <input ng-change=\"updateParentLimit(this)\" type=\"number\" name=\"input\" ng-model=\"playlist.selected.maxItems\" min=\"0\" max=\"99\" class=\"form-control input-sm\" id=\"playlistId\">\n                                <span class=\"error-custom\" ng-show=\"limitForm.input.$error.number\">{{ 'Not valid number'|trans}}!</span>\n                            {% else %}\n                                <span ng-if=\"playlist.selected.maxItems\" style=\"line-height: 28px;\">{[{ playlist.selected.maxItems }]}</span>\n                                <span ng-if=\"!playlist.selected.maxItems\" style=\"line-height: 28px;\">0</span>\n                            {% endif %}\n                            </form>\n                            </div>\n                        </div>\n                        <div class=\"context-list-results\" >\n                        <div ng-if=\"loadingSpinner\" style=\"margin-left:45%; margin-top: 100px;\" class=\"ai-circled ai-indicator ai-grey-spin\"></div>\n                            <div style=\"display: block\" ng-hide=\"loadingSpinner\">\n                                <form>\n                                <div infinite-scroll=\"loadArticlesOnScrollDown()\" infinite-scroll-container=\"'#context_list'\" infinite-scroll-parent infinite-scroll-distance='2'>\n                                    <div id=\"placeholder-wrapper\" {% if editorView == false %}ng-class=\"{'empty-placeholder': $parent.featuredArticles.length == 0}\" {% endif %}>\n                                    <p>{{ 'Drag here to add to list'|trans }}</p>\n                                    <ul id=\"context_list\" ng-sortable=\"sortableConfig\">\n                                        <li class=\"item\" ng-repeat=\"article in $parent.featuredArticles\">\n                                            <div class=\"context-item\" {% if editorView %}style=\"width: 620px\"{% endif %} >\n                                                <div class=\"context-drag-topics\"><a href=\"#\" title=\"drag to sort\"></a></div>\n                                                <div class=\"context-item-header\">\n                                                    <div class=\"context-item-date\">{[{::article.created| date:\"dd.MM.yyyy 'at' H:mm:ss\"}]}\n                                                        <span class=\"label label-default\" style=\"margin-right: 5px\">\n                                                            <span ng-switch on=\"article.status\">\n                                                                <span ng-switch-when=\"Y\">{{ 'Published'|trans({}, 'messages') }}</span>\n                                                                <span ng-switch-when=\"N\">{{ 'New'|trans({}, 'messages') }}</span>\n                                                                <span ng-switch-when=\"S\">{{ 'Submitted'|trans({}, 'messages') }}</span>\n                                                                <span ng-switch-default>{{ 'Unknown'|trans({}, 'messages') }}</span>\n                                                            </span></span><span class=\"label label-primary\">{[{ ::article.type}]}</span>\n                                                            <span class=\"label label-default\">{[{ ::article.language}]}</span>\n                                                        </div>\n                                                        <a href=\"#\" ng-click=\"removeArticle(article)\" class=\"corner-button\" style=\"display: block; padding-right: 19px;\">\n                                                            <span class=\"ui-icon ui-icon-closethick\"></span>\n                                                        </a>\n                                                    </div>\n                                                    <div class=\"context-item-summary\">\n                                                        {[{ ::article.title}]}\n                                                    </div>\n                                                </div>\n                                            </li>\n                                        </ul>\n                                        </div>\n                                    </div>\n                                    </form>\n                                </div>\n                                <!-- alert message start -->\n                                <div class=\"limit-alert-wrapper\" ng-show=\"$parent.showLimitAlert\">\n                                    <div class=\"limit-alert\">\n                                        <button type=\"button\" class=\"close\" ng-click=\"removeLastInsertNew()\"><span aria-hidden=\"true\">×</span></button>\n                                        <div class=\"limit-alert-content\">{{'The last article of this list has been removed.'|trans}} {[{countDown}]}...</div>\n                                        <div class=\"limit-alert-footer\">\n                                            <button type=\"button\" ng-click=\"revertAction()\" name=\"revert\" class=\"btn btn-sm btn-default\">{{'Revert'|trans}}</button>\n                                            <button type=\"button\" ng-click=\"removeLastInsertNew()\" name=\"revert\" class=\"btn btn-sm btn-primary\">{{'Ok'|trans({}, 'messages')}}</button>\n                                        </div>\n                                    </div>\n                                </div>\n                                <!-- alert message end -->\n                            </div>\n                        </div>\n                    </div>\n                    <div class=\"context-block plugin-context-block context-preview\" ng-if=\"isViewing\">\n                        <div class=\"save-button-bar\">\n                        <button ng-click=\"addArticleToListFromPreview()\" class=\"btn btn-default btn-xs\">{{ 'Add to list'|trans }}</button>\n                        <button ng-click=\"closeViewArticle()\" class=\"btn btn-default btn-xs\">{{ 'Close'|trans({}, 'messages') }}</button>\n                        </div>\n\n                        <div class=\"context-article-preview\" style=\"overflow-y:auto; height:500px;\">\n                            <h3 id=\"preview-article-title\">{[{ articlePreview.title }]}</h3>\n                            <div id=\"preview-article-body\" style=\"color: #444444\">\n                                <h5>{{ 'Authors'|trans }}</h5>\n                                <span ng-repeat=\"author in articlePreview.authors\">\n                                    <p>- {[{ ::author.name }]}</p>\n                                </span>\n                                <span ng-repeat=\"(key, value) in articlePreview.fields\">\n                                    <h5>{[{ ::key}]}</h5>\n                                    <p ng-bind-html=\"value\"></p>\n                                </span>\n                                <h5>{{ 'Date'|trans }}</h5>\n                                <p>{[{ ::articlePreview.created | date:\"dd.MM.yyyy H:mm:ss\"}]}</p>\n                            </div>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n                <div>\n            </div>\n            </div>\n\n            <script type=\"text/javascript\">\n                var clientId = '{{ clientId }}',\n                    redirectUris = '{{ redirectUris }}',\n                    selectedListId = '{{ selectedListId }}';\n\n                $(document).ready(function() {\n                    $('.input-filter').attr('placeholder', \"{{'Search'|trans({}, 'messages') }}...\");\n                });\n\n                if (parent !== undefined && parent.$('div.featuredArticlesModal').length == 0) {\n                    $('#modal-close-btn').show();\n                }\n            </script>\n            <script src=\"{{ asset('/bundles/newscoopnewscoop/js/lodash.min.js') }}\"></script>\n            <script src=\"{{ asset('/bundles/newscoopnewscoop/js/sanitize.js') }}\"></script>\n            <script src=\"{{ asset('/bundles/newscoopnewscoop/js/ui-bootstrap-modal.js') }}\"></script>\n            <script src=\"{{ asset('/bundles/newscooparticles/app/ng-infinite-scroll.min.js') }}\"></script>\n            <script src=\"{{ asset('/bundles/newscooparticles/app/loading-bar.js') }}\"></script>\n            <script src=\"{{ asset('/bundles/newscoopnewscoop/js/select.min.js') }}\"></script>\n            <script src=\"{{ asset('/bundles/newscoopnewscoop/js/ng-table.min.js') }}?v=3\"></script>\n            <script src=\"{{ asset('/bundles/newscoopnewscoop/js/Sortable.js') }}?v=4\"></script>\n            <script src=\"{{ asset('/bundles/newscoopnewscoop/js/ng-sortable.js') }}?v=3\"></script>\n            <script src=\"{{ asset('/bundles/newscoopnewscoop/js/playlists/app.js') }}\"></script>\n            <script src=\"{{ asset('/bundles/newscoopnewscoop/js/playlists/controllers/playlists.js') }}\"></script>\n            <script src=\"{{ asset('/bundles/newscoopnewscoop/js/playlists/controllers/featured-articles.js') }}?v=5\"></script>\n            <script src=\"{{ asset('/bundles/newscoopnewscoop/js/playlists/controllers/articles-filters.js') }}\"></script>\n            <script src=\"{{ asset('/bundles/newscoopnewscoop/js/playlists/directives/loading-container.js') }}\"></script>\n            <script src=\"{{ asset('/bundles/newscoopnewscoop/js/playlists/directives/sf-iframe.js') }}\"></script>\n            <script src=\"{{ asset('/bundles/newscoopnewscoop/js/playlists/filters/lists-search.js') }}\"></script>\n            <script src=\"{{ asset('/bundles/newscoopnewscoop/js/playlists/services/modal-factory.js') }}\"></script>\n            <script src=\"{{ asset('/bundles/newscoopnewscoop/js/playlists/services/user-auth.js') }}\"></script>\n            <script src=\"{{ asset('/bundles/newscoopnewscoop/js/playlists/services/auth-interceptor.js') }}\"></script>\n            <script src=\"{{ asset('/bundles/newscoopnewscoop/js/playlists/services/playlists.js') }}?v=1\"></script>\n            <script src=\"{{ asset('/bundles/newscoopnewscoop/js/playlists/services/filters-service.js') }}\"></script>\n            <script src=\"{{ url('bazinga_jstranslation_js', { 'domain': 'articles' }) }}\"></script>\n\n{% endblock %}\n{% block admin_page_footer_box %}\n{% if editorView == false %}\n    {{ parent() }}\n{% endif %}\n{% endblock %}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/Plugins/index.html.twig",
    "content": "{% extends 'NewscoopNewscoopBundle::admin_layout.html.twig' %}\n{% trans_default_domain \"plugins_manager\" %}\n\n{% block admin_title %}{{ 'newscoop.plugins_manager.manager'|trans }} - {{ parent() }}{% endblock %}\n{% block admin_page_title_box %}\n<div class=\"toolbar row\">\n<span class=\"article-title\">{{ 'newscoop.plugins_manager.manager'|trans }}</span>\n\n<div class=\"pull-right\">\n    <div class=\"actions\">\n        <ul class=\"navigation\" style=\"height: auto;\">\n            <li>\n                <a href=\"{{ generateZendUrl('plugins', 'manage.php', 'admin') }}\">{{ 'newscoop.plugins_manager.legacy_manager'|trans }}</a>\n            </li>\n        </ul>\n    </div>\n</div>\n</div>\n{% endblock %}\n\n{% block admin_stylesheets %}\n<link rel=\"stylesheet\" type=\"text/css\" href=\"{{ asset('/js/select2/select2.css') }}\" />\n<link rel=\"stylesheet\" href=\"{{ Newscoop['WEBSITE_URL'] }}/bundles/newscoopnewscoop/css/bootstrap.css\">\n<link rel=\"stylesheet\" type=\"text/css\" href=\"{{ Newscoop['WEBSITE_URL'] }}/bundles/newscoopnewscoop/css/DT_bootstrap.css\">\n<style type=\"text/css\">\n.tabs-left > .nav-tabs {min-height: 150px;}\nli:after {content: none;}\n</style>\n{% endblock %}\n\n{% block admin_scripts %}\n<script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/bundles/newscoopnewscoop/js/popover.js\"></script>\n<script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/bundles/newscoopnewscoop/js/DT_bootstrap.js\"></script>\n<script src=\"{{ asset('/js/select2/select2.js') }}\"></script>\n<link rel=\"stylesheet\" href=\"{{ asset('/admin-style/action_buttons.css') }}\">\n{% endblock %}\n\n{% block admin_content %}\n\n{% for key, message in app.session.flashbag.get('error') %}\n    <script type=\"text/javascript\">\n        flashMessage('{{ message|raw }}', 'error', true);\n    </script>\n{% endfor %}\n\n{% for key, message in app.session.flashbag.get('success') %}\n    <script type=\"text/javascript\">\n        flashMessage('{{ message|raw }}');\n    </script>\n{% endfor %}\n\n<div class=\"system_pref\">\n    <div class=\"tabbable tabs-left\"> \n        <ul class=\"nav nav-tabs\">\n            <li class=\"active\"><a href=\"#public_plugins\" data-toggle=\"tab\">{{ 'newscoop.plugins_manager.public_plugins'|trans }}</a></li>\n            <li><a href=\"#private_plugins\" data-toggle=\"tab\">{{ 'newscoop.plugins_manager.private_plugins'|trans }}</a></li>\n        </ul>\n        <div class=\"tab-content\">\n            <div class=\"tab-pane active\" id=\"public_plugins\">\n                <fieldset class=\"filters\">\n                    <legend>{{ 'newscoop.plugins_manager.install.public'|trans }}</legend>\n\n                    <div class=\"plugins-search\" style=\"width: 100%;margin-right: 20px;float: left;\">\n                        <div style=\"width: 600px;\" class=\"search-for-plugins\"></div>\n                    </div>\n\n                    <div class=\"choosen-plugin-info\" style=\"margin-top: 40px; margin-bottom: 25px;\"></div>\n                    <div id=\"instructions\" style=\"display: none\">\n                        <ul class=\"list-group\">\n                        <h5>{{ 'newscoop.plugins_manager.install'|trans }}</h5>\n                        <li class=\"list-group-item\">\n                            <strong>1.</strong> {{ 'newscoop.plugins_manager.openterminal'|trans }}: <strong>cd {{ newscoopPath }}</strong> <button type=\"button\" class=\"btn btn-default btn-xs\" title=\"{{'newscoop.plugins_manager.copy'|trans}}\" onclick=\"copyToClipboard('cd {{ newscoopPath }}')\"><span class=\"glyphicon glyphicon-share\"></span></button>\n                        </li>\n                        <li class=\"list-group-item\">\n                              <strong>2.</strong> {{ 'newscoop.plugins_manager.runcommand'|trans }}: <strong><span id=\"plugin-command\"></span></strong>\n                              <button type=\"button\" class=\"btn btn-default btn-xs\" title=\"{{'newscoop.plugins_manager.copy'|trans}}\" onclick=\"copyToClipboard('plugin-command')\"><span class=\"glyphicon glyphicon-share\"></span></button>\n                        </li>\n                        <li class=\"list-group-item\">\n                              <strong>3.</strong> {{ 'newscoop.plugins_manager.installassets'|trans }}: <strong>php application/console assets:install public/</strong>\n                              <button type=\"button\" class=\"btn btn-default btn-xs\" title=\"{{'newscoop.plugins_manager.copy'|trans}}\" onclick=\"copyToClipboard('php application/console assets:install public/')\"><span class=\"glyphicon glyphicon-share\"></span></button>\n                        </li>\n                        <li class=\"list-group-item\">\n                              <strong>4.</strong> {{'newscoop.plugins_manager.installed'|trans}}</strong>\n                        </li>\n                        </ul>\n                    </div>\n                </fieldset>\n                <div class=\"clear:both;\"></div>\n\n\n                <div id=\"manage-plugins\" style=\"padding: 10px 10px 30px 10px; border: 1px solid #ccc; background-color: #FFF;\">\n                    <table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" class=\"datatable table table-striped table-bordered\" id=\"pluginsTable\">\n                        <thead>\n                            <tr>\n                                <th>{{ 'newscoop.plugins_manager.installed_table.name'|trans }}</th>\n                                <th style=\"width: 25%;\">{{ 'newscoop.plugins_manager.installed_table.description'|trans }}</th>\n                                <th style=\"width: 30%;\">{{ 'newscoop.plugins_manager.installed_table.enabled'|trans }}</th>\n                                <th>{{ 'newscoop.plugins_manager.installed_table.version'|trans }}</th>\n                                <th>{{ 'newscoop.plugins_manager.installed_table.license'|trans }}</th>\n                                <th style=\"width: 14%;\">{{ 'newscoop.plugins_manager.installed_table.installed_at'|trans }}</th>\n                                <th style=\"width: 14%;\">{{ 'newscoop.plugins_manager.installed_table.updated_at'|trans }}</th>\n                                <th style=\"width: 15%;\">{{ 'newscoop.plugins_manager.installed_table.actions'|trans }}</th>\n                            </tr>\n                        </thead>\n                        <tbody>\n                            {% for plugin in allAvailablePlugins %}\n                            <tr id=\"{{ plugin.id }}\">\n                                <td>{{ plugin.name }}</td>\n                                <td style=\"width: 25%;\">{{ plugin.description }}</td>\n                                <td style=\"text-align: center; width: 50px;\"><input type=\"checkbox\" {% if plugin.enabled %}checked=\"true\"{% endif %} value=\"1\" class=\"change-status\" data-plugin-id=\"{{ plugin.id }}\"/></td>\n                                <td style=\"text-align: center\">{{ plugin.version }}</td>\n                                <td>{{ plugin.license }}</td>\n                                <td style=\"width: 14%;\">{{ plugin.installedAt|date('Y-m-d H:i:s') }}</td>\n                                <td style=\"width: 14%;\">{% if plugin.updatedAt %}{{ plugin.updatedAt|date('Y-m-d H:i:s') }}{% else %} {% endif %}</td>\n                                <td style=\"width: 12%; text-align: center;\">\n                                    <button data-toggle=\"modal\" data-target=\"#popupModal\" data-type=\"update\" data-command=\"php application/console plugins:update\" type=\"button\" class=\"btn btn-default btn-xs\" title=\"{{ 'newscoop.plugins_manager.installed_table.update_plugin'|trans }}\"><span class=\"glyphicon glyphicon-repeat\"></span></button>\n\n                                    <button type=\"button\" data-type=\"remove\" data-toggle=\"modal\" data-target=\"#popupModal\" data-command=\"php application/console plugins:remove\" class=\"btn btn-default btn-xs\" title=\"{{ 'newscoop.plugins_manager.installed_table.remove_plugin'|trans }}\"><span class=\"glyphicon glyphicon-remove\"></span></button>\n                                </td>\n                            </tr>\n                            {% endfor %}\n                        </tbody>\n                    </table>\n                </div>\n            </div>\n            <div class=\"tab-pane\" id=\"private_plugins\">\n                {% if privatePluginsPathWritable %}\n                <fieldset class=\"filters\">\n                    <legend>{{ 'newscoop.plugins_manager.upload.private'|trans }}</legend>\n\n                    <form method=\"post\" role=\"form\" action=\"\" enctype=\"multipart/form-data\">\n                        <div class=\"form-group\">\n                            {{ form_label(form.package) }}\n                            {{ form_widget(form.package) }}\n                        </div>\n                        <div class=\"form-group\">\n                            {{ form_label(form.upload) }}\n                            {{ form_widget(form.upload, {'attr': {'class': 'btn btn-xs btn-default'}}) }}\n                        </div>\n                        {{ form_widget(form) }}\n                    </form>\n                    <!-- class=\"form-inline\" -->\n                </fieldset>\n                {% else %}\n                <div class=\"uploaded-plugins\" style=\"margin-bottom: 50px; padding: 10px 10px 30px 10px; border: 1px solid #ccc; background-color: #FFF;\">\n                <div class=\"alert alert-danger\" style=\"font-size: 14px;\" role=\"alert\">{{ 'newscoop.plugins_manager.private_plugins_not_writable'|trans({'%privatePluginsPath%': privatePluginsPath}) }}</div>\n                <p>{{ 'newscoop.plugins_manager.private_plugins_not_writable_commands'|trans }}</p>\n                <pre>chgrp www-data {{ privatePluginsPath }}\nchmod g+w {{ privatePluginsPath }}</pre>\n                </div>\n                {% endif %}\n\n                <div class=\"uploaded-plugins\" style=\"margin-bottom: 50px; padding: 10px 10px 30px 10px; border: 1px solid #ccc; background-color: #FFF;\">\n                    <table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" class=\"datatable table table-striped table-bordered\" style=\"width: 100%\" id=\"privatePluginsTable\">\n                        <thead>\n                            <tr>\n                                <th>{{ 'newscoop.plugins_manager.installed_table.name'|trans }}</th>\n                                <th>{{ 'newscoop.plugins_manager.installed_table.description'|trans }}</th>\n                                <th>{{ 'newscoop.plugins_manager.installed_table.version'|trans }}</th>\n                                <th>{{ 'newscoop.plugins_manager.installed_table.license'|trans }}</th>\n                                <th style=\"text-align: center;\">{{ 'newscoop.plugins_manager.installed_table.actions'|trans }}</th>\n                            </tr>\n                        </thead>\n                        <tbody>\n                            {% for plugin in privatePackages %}\n                            <tr>\n                                <td style=\"width: 20%;\">{{ plugin.name }}</td>\n                                <td style=\"width: 35%;\">{{ plugin.description }}</td>\n                                <td>{{ plugin.version }}</td>\n                                <td>{{ plugin.license }}</td>\n                                <td style=\"text-align: center;\">{% if not plugin.installed %}<button type=\"button\" data-type=\"install\" data-toggle=\"modal\" data-target=\"#popupModal\" data-command=\"php application/console plugins:install\" class=\"btn btn-default btn-xs\" title=\"{{ 'newscoop.plugins_manager.installed_table.install_plugin'|trans }}\"><span class=\"glyphicon glyphicon-ok-circle\"></span></button>{% else %}{{ 'newscoop.plugins_manager.installed_table.plugin_installed'|trans }}{% endif %}\n                                </td>\n                            </tr>\n                            {% endfor %}\n                        </tbody>\n                    </table>\n                </div>\n            </div>\n        </div>\n    </div>\n</div>\n\n<div class=\"modal fade\" id=\"popupModal\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"popupModalLabel\" aria-hidden=\"true\">\n  <div class=\"modal-dialog\">\n    <div class=\"modal-content\">\n      <div class=\"modal-header\">\n        <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"{{ 'newscoop.plugins_manager.close'|trans }}\"><span aria-hidden=\"true\">&times;</span></button>\n        <h4 class=\"modal-title\" id=\"popupModalLabel\"></h4>\n      </div>\n      <div class=\"modal-body\">\n        <ul class=\"list-group\" style=\"font-size: 12px\">\n            <li class=\"list-group-item\">\n                <strong>1.</strong> {{ 'newscoop.plugins_manager.openterminal'|trans }}: <br><strong>cd {{ newscoopPath }}</strong> <button type=\"button\" class=\"btn btn-default btn-xs\" title=\"{{'newscoop.plugins_manager.copy'|trans}}\" onclick=\"copyToClipboard('cd {{ newscoopPath }}')\"><span class=\"glyphicon glyphicon-share\"></span></button>\n            </li>\n            <li class=\"list-group-item\">\n                <strong>2.</strong> {{ 'newscoop.plugins_manager.runcommand'|trans }}: <br><strong><span id=\"popup-plugin-command\"></span></strong>\n                <button type=\"button\" class=\"btn btn-default btn-xs\" title=\"{{'newscoop.plugins_manager.copy'|trans}}\" onclick=\"copyToClipboard('popup-plugin-command')\"><span class=\"glyphicon glyphicon-share\"></span></button>\n            </li>\n            <li class=\"list-group-item\">\n                <strong>3.</strong> {{ 'newscoop.plugins_manager.installassets'|trans }}: <br><strong>php application/console assets:install public/</strong>\n                <button type=\"button\" class=\"btn btn-default btn-xs\" title=\"{{'newscoop.plugins_manager.copy'|trans}}\" onclick=\"copyToClipboard('php application/console assets:install public/')\"><span class=\"glyphicon glyphicon-share\"></span></button>\n            </li>\n            <li class=\"list-group-item\">\n                    <strong>4.</strong> {{ 'newscoop.plugins_manager.done'|trans }}</strong>\n            </li>\n        </ul>\n      </div>\n      <div class=\"modal-footer\">\n        <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\">{{ 'newscoop.plugins_manager.close'|trans }}</button>\n      </div>\n    </div>\n  </div>\n</div>\n\n<script type=\"text/javascript\">\n    $('#popupModal').on('show.bs.modal', function(e) {\n        var command = $(e.relatedTarget).data('command');\n        var type = $(e.relatedTarget).data('type');\n        var pluginName = $(e.relatedTarget).parent().parent().find('td:first').text();\n        $(e.currentTarget).find('#popup-plugin-command').text(command+' \"'+pluginName+'\"');\n        switch(type) {\n            case 'update':\n                $(e.currentTarget).find('#popupModalLabel').text(\"{{ 'newscoop.plugins_manager.update'|trans }}\");\n                break;\n            case 'remove':\n                $(e.currentTarget).find('#popupModalLabel').text(\"{{ 'newscoop.plugins_manager.remove'|trans }}\");\n                break;\n            case 'install':\n                $(e.currentTarget).find('#popupModalLabel').text(\"{{ 'newscoop.plugins_manager.install'|trans }}\");\n                break;\n            default:\n        }\n    });\n    function pluginFormat(item) {\n        var markup = \"<div><h5>\"+item.name+\"</h5><p>\"+item.description+\"</p><p>{{ 'newscoop.plugins_manager.downloads'|trans}}:<span class=\\\"badge\\\">\"+item.downloads+\"</span>, {{ 'newscoop.plugins_manager.favers'|trans}}: <span class=\\\"badge\\\">\"+item.favers+\"</span></p></div>\";\n        return markup;\n    };\n    function pluginFormatSelection(item) { return item.name; }\n    var initData = null;\n    $(\".search-for-plugins\").select2({\n        placeholder: '{{ 'newscoop.plugins_manager.search_for_plugins'|trans }}',\n        minimumInputLength: null,\n        id: function(item){return {id: item.name};},\n        cache: true,\n        ajax: {\n            url: \"/admin/plugins/getPackagesFromPackagist\",\n            dataType: 'json',\n            data: function (term, page) {\n                return {\n                    q: term,\n                };\n            },\n            results: function (data, page) {\n                return {results: data.results};\n            }\n        },\n        initSelection: function(element, callback) {\n            var value = $(element).val();\n            var initData = null;\n            callServer('ping', [], function(json) {\n                $.ajax(\"/admin/plugins/getPackagesFromPackagist\", {\n                    data: {},\n                    dataType: \"json\"\n                }).done(function(data) { initData = data; callback(data.results); });\n            }); // /ping\n        },\n        formatResult: pluginFormat, \n        formatSelection: pluginFormatSelection,\n        dropdownCssClass: \"bigdrop\", \n       escapeMarkup: function (m) { return m; } \n   })\n    .on(\"select2-selecting\", function(e) {\n        var item = e.object;\n       $('.choosen-plugin-info').html(\"<div><h3>\"+item.name+\"</h3><p>\"+item.description+\"</p><p>{{ 'newscoop.plugins_manager.downloads'|trans}}:<span class=\\\"badge\\\">\"+item.downloads+\"</span>, {{ 'newscoop.plugins_manager.favers'|trans}}: <span class=\\\"badge\\\">\"+item.favers+\"</span></p></div>\");\n\n        $('span#plugin-command').html('');\n        $('span#plugin-command').append('php application/console plugins:install \"' + item.name +'\"');\n        $('#instructions').show();\n    });\n    $('.change-status').change(function(){\n        var checked = $(this).attr('checked');\n        var pluginId = $(this).data('pluginId');\n        var status = 'disable';\n        if (checked) {\n            status = 'enable';\n        }\n\n        callServer('ping', [], function(json) {\n            $.ajax(\"/admin/plugins/chnageStatus/\"+status+\"/\"+pluginId, {\n                data: {},\n                dataType: \"json\"\n            }).done(function(data) { \n                console.table(data.results);\n            });\n        }); // /ping\n    })\n\n    $('#subscriptionsTable').css('font-size', '13px');\n    $('#pluginsTable').dataTable({\n        \"aoColumns\" : [\n            null,\n            { sWidth: '25%' },\n            { sWidth: '30px' },\n            null,\n            null,\n            { sWidth: '14%' },\n            { sWidth: '14%' },\n            { sWidth: '15%' },\n        ],\n        'oLanguage': {\n            'oPaginate': {\n                'sFirst': '{{ 'newscoop.datatable.label.first'|trans }}',\n                'sNext': '{{ 'newscoop.datatable.label.next'|trans }}',\n                'sPrevious': '{{ 'newscoop.datatable.label.previous'|trans }}',\n                'sLast': '{{ 'newscoop.datatable.label.last'|trans }}',\n            },\n            'sZeroRecords': '{{ 'newscoop.datatable.label.norecords'|trans }}',\n            'sSearch': '',\n            'sInfo': '{{ 'newscoop.datatable.table.info'|trans }}',\n            'sEmpty': '{{ 'newscoop.datatable.table.noentries'|trans }}',\n            'sInfoFiltered': '{{ 'newscoop.datatable.table.filtering'|trans }}',\n            'sLengthMenu': '{{ 'newscoop.datatable.table.menu'|trans }}',\n            'sInfoEmpty': '',\n        },\n        \"bAutoWidth\": false,\n        \"bPaging\": true,\n    }).fnAdjustColumnSizing();\n\n    $('#privatePluginsTable').css('font-size', '13px');\n    $('#privatePluginsTable').dataTable({\n        \"aoColumns\" : [\n            { sWidth: '20%' },\n            { sWidth: '35%' },\n            null,\n            null,\n            null,\n        ],\n        'oLanguage': {\n            'oPaginate': {\n                'sFirst': '{{ 'newscoop.datatable.label.first'|trans }}',\n                'sNext': '{{ 'newscoop.datatable.label.next'|trans }}',\n                'sPrevious': '{{ 'newscoop.datatable.label.previous'|trans }}',\n                'sLast': '{{ 'newscoop.datatable.label.last'|trans }}',\n            },\n            'sZeroRecords': '{{ 'newscoop.datatable.label.norecords'|trans }}',\n            'sSearch': '',\n            'sInfo': '{{ 'newscoop.datatable.table.info'|trans }}',\n            'sEmpty': '{{ 'newscoop.datatable.table.noentries'|trans }}',\n            'sInfoFiltered': '{{ 'newscoop.datatable.table.filtering'|trans }}',\n            'sLengthMenu': '{{ 'newscoop.datatable.table.menu'|trans }}',\n            'sInfoEmpty': '',\n        },\n        \"bAutoWidth\": false,\n        \"bPaging\": true,\n    }).fnAdjustColumnSizing();\n\n    $('.datatable').each(function(){\n        var datatable = $(this);\n        var search_input = datatable.closest('.dataTables_wrapper').find('div[id$=_filter] input');\n        search_input.attr('placeholder', '{{ 'newscoop.datatable.label.search'|trans }}');\n        search_input.addClass('form-control input-sm');\n        var length_sel = datatable.closest('.dataTables_wrapper').find('div[id$=_length] select');\n        length_sel.addClass('form-control input-sm');\n    });\n\n    function copyToClipboard(text) {\n        if (text == \"plugin-command\") {\n            text = $('#'+text).text();\n        }\n\n        if (text == \"popup-plugin-command\") {\n            text = $('#'+text).text();\n        }\n      window.prompt(\"{{'newscoop.plugins_manager.clipboard'|trans}}\", text);\n    }\n\n</script>\n\n{% endblock %}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/Security/login.html.twig",
    "content": "<html lang=\"{{ localeFromCookie }}\" dir=\"ltr\">\n<head>\n    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n    <meta http-equiv=\"Expires\" content=\"now\" />\n    <title>{% block admin_title %}{{ 'Login'|trans }}{% endblock %}</title>\n    <link rel=\"shortcut icon\" href=\"{{ Newscoop['WEBSITE_URL'] }}/images/7773658c3ccbf03954b4dacb029b2229.ico\" />\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"{{ Newscoop['ADMIN_STYLE_URL'] }}/admin_stylesheet_new.css\" />\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"{{ Newscoop['ADMIN_STYLE_URL'] }}/admin_stylesheet.css\" />\n\n    <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/campsite.js\"></script>\n    <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/fValidate/fValidate.config.js\"></script>\n    <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/fValidate/fValidate.core.js\"></script>\n    <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/fValidate/fValidate.lang-enUS.js\"></script>\n    <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/fValidate/fValidate.validators.js\"></script>\n    <script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/js/crypt.js\"></script>\n</head>\n<body>\n    <form name=\"login_form\" action=\"{{ path('admin_login_check') }}{% if app.request.query.has('ajax') %}?ajax=true{% endif %} \" method=\"post\">\n        <div class=\"login_box\">\n            {% if not app.request.query.has('ajax') %}\n            <div class=\"logobox\">\n                <img src=\"{{ Newscoop['ADMIN_IMAGE_BASE_URL'] }}/sign_big.gif\" border=\"0\" alt=\"\" />\n            </div>\n            {% endif %}\n            <h2>{{ \"Login\"|trans }}</h2>\n            <noscript>\n               {{ \"Your browser does not support Javascript or (more likely) you have Javascript disabled. Please fix this to be able to use Newscoop.\"|trans({},'home') }}\n            </noscript>\n\n            <div class=\"login_error\" style=\"color: #ff2200;\">\n            {% if error %}\n                {{ error.message|trans({},'home') }}\n            {% endif %}\n            </div>\n\n            <table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"box_table login\" width=\"420\">\n                <tr>\n                    <td colspan=\"2\"><span class=\"light\">{{ \"Please enter your user name and password\"|trans({},'home') }}:</span></td>\n                </tr>\n                <tr>\n                    <td align=\"right\" >\n                        <strong>{{ \"User name\"|trans({},'home') }}:</strong>\n                    </td>\n                    <td>\n                        <input type=\"text\" value=\"{{ last_username }}\" name=\"_username\" size=\"32\" class=\"input_text\" alt=\"blank\" style=\"width:250px;\" emsg=\"{{ \"Please enter your user name.\"|trans({},'home') }}\" />\n                    </td>\n                </tr>\n                <tr>\n                    <td align=\"right\"><strong>{{ \"Password\"|trans }}:</strong></td>\n                    <td>\n                        <input type=\"password\" name=\"_password\" size=\"32\" class=\"input_text\" alt=\"blank\" style=\"width:250px;\" emsg=\"{{ \"Please enter your password.\"|trans({},'home') }}\" />\n                        <input type=\"hidden\" name=\"_target_path\" value=\"{% if app.request.server.get('REDIRECT_URL') != path('admin_login') and app.request.server.get('REDIRECT_URL') != \"\" %}{{ app.request.server.get('REDIRECT_URL') }}?{{ app.request.server.get('REDIRECT_QUERY_STRING') }}{% else %}/admin{% endif %}\" />\n                    </td>\n                </tr>\n                <tr>\n                    <td align=\"right\"><strong>{{ \"Remember me\"|trans }}:</strong></td>\n                    <td>\n                        <input type=\"checkbox\" name=\"_remember_me\" class=\"input_checkbox\" />\n                    </td>\n                </tr>\n                <tr>\n                    <td align=\"right\"><strong>{{ \"Language\"|trans }}:</strong></td>\n                    <td>\n                        <select name=\"login_language\" class=\"input_select\" style=\"width:253px;\">\n                        {% for language in languages %}\n                            <option value=\"{{ language.code }}\" {% if language.code ==  defaultLanguage%}selected{% endif %}>\n                            {% if language.name %}{{ language.name }}{% elseif language.nativeName %}language.nativeName{% endif %}\n                            </option>\n                        {% endfor %}\n                        </select>\n                    </td>\n                </tr>\n\n                {% if maxLoginAttemptsExceeded %}\n                <tr>\n                  <td colspan=\"2\" align=\"center\">\n                    <img src=\"{{ getReCaptchaImage()|raw }}\" />\n                  </td>\n                </tr>\n                <tr>\n                  <td colspan=\"2\" align=\"center\">\n                    {{ 'Type the code shown above:'|trans({},'home') }}\n                    <input name=\"captcha_code\" size=\"5\" class=\"input_text\" alt=\"blank\" emsg=\"{{ 'Please enter the code shown in the image.'|trans({},'home') }}\" />\n                  </td>\n                </tr>\n                {% endif %}\n\n                <tr class=\"buttonBlock2\">\n                    <td>\n                    {% if getSystemPref('PasswordRecovery') == 'Y' %}\n                        <a href=\"{{ Newscoop['WEBSITE_URL'] }}/admin/password-recovery\">{{ 'Forgot your password?'|trans({},'home') }}</a>\n                    {% endif %}\n                    </td>\n                    <td>\n                        <noscript>\n                          <input type=\"submit\" class=\"button\" name=\"Login\" value=\"{{ 'Login'|trans }}\" disabled />\n                        </noscript>\n                        <script type=\"text/javascript\">\n                            document.write('<input type=\"submit\" class=\"button\" name=\"Login\" value=\"{{ 'Login'|trans }}\"/>');\n                        </script>\n                    </td>\n                </tr>\n            </table>\n        </div>\n    </form>\n\n    <div class=\"footer\">\n        <a href=\"http://newscoop.sourcefabric.org/\" target=\"_blank\">{{ NewscoopVersion.getPackage() }}</a>, the open content management system for professional journalists. \n        <br />\n        &copy; {{ NewscoopVersion.getCopyrightYear() }} \n        <a href=\"{{ NewscoopVersion.getWebURL() }}\" target=\"_blank\">{{ NewscoopVersion.getOrganization() }}</a> {{ NewscoopVersion.getPackage() }} is distributed under {{ NewscoopVersion.getLicense() }}   \n    </div>\n</body>\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/SystemPref/index.html.twig",
    "content": "{% extends 'NewscoopNewscoopBundle::admin_layout.html.twig' %}\n{% trans_default_domain \"system_pref\" %}\n{% block admin_title %}{{ 'newscoop.preferences.label.title'|trans }} - {{ parent() }}{% endblock %}\n{% block admin_page_title_content %}{{ 'newscoop.preferences.label.header'|trans }}{% endblock %}\n{% form_theme form 'NewscoopNewscoopBundle::forms.html.twig' %}\n{% block admin_stylesheets %}\n<link rel=\"stylesheet\" href=\"{{ Newscoop['WEBSITE_URL'] }}/bundles/newscoopnewscoop/css/bootstrap.css\">\n<link rel=\"stylesheet\" href=\"{{ asset('/bundles/newscoopnewscoop/css/jquery.dynatable.css') }}\">\n<style>\n.font-fix {\n    font-size: 12px;\n}\nth a, th a:hover{\n    color: #000;\n}\n.cron-jobs tbody tr td, #dynatable-search-, #dynatable-record-count- {\n    font-size: 12px;\n}\ntable.cron-jobs td:nth-child(2) {\n    width: 40%;\n}\n</style>\n{% endblock %}\n{% block admin_scripts %}\n<script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/bundles/newscoopnewscoop/js/popover.js\"></script>\n<script src=\"{{ asset('/bundles/newscoopnewscoop/js/jquery.dynatable.js') }}\"></script>\n{% endblock %}\n{% block admin_content %}\n{% if form_errors(form) %}\n    <div class=\"alerts alert-danger\">\n        {{ form_errors(form) }}\n    </div>\n{% endif %}\n{% for flashMessage in app.session.flashbag.get('error') %}\n        <div class=\"alerts alert-danger\">\n            {{ flashMessage }}\n        </div>\n{% endfor %}\n{% for flashMessage in app.session.flashbag.get('success') %}\n        <div class=\"alerts alert-success\">\n            {{ flashMessage }}\n        </div>\n{% endfor %}\n<form action=\"{{ path('newscoop_newscoop_systempref_index') }}\" method=\"post\" {{ form_enctype(form) }} novalidate>\n<div class=\"system_pref\">\n    <div class=\"tabbable tabs-left\">\n        <ul class=\"nav nav-tabs\">\n            <li class=\"active\"><a href=\"#general_settings\" data-toggle=\"tab\">{{ 'newscoop.preferences.menu.general'|trans }}</a></li>\n            <li><a href=\"#cache_settings\" data-toggle=\"tab\">{{ 'newscoop.preferences.menu.cache'|trans }}</a></li>\n            {% if hasManagePermission %}\n                <li><a href=\"#cronjob_settings\" data-toggle=\"tab\">{{ 'newscoop.preferences.menu.cronjob'|trans }}</a></li>\n                <li><a href=\"#email_settings\" data-toggle=\"tab\">{{ 'newscoop.preferences.menu.email'|trans }}</a></li>\n                <li><a href=\"#editor_settings\" data-toggle=\"tab\">{{ 'newscoop.preferences.menu.editor'|trans }}</a></li>\n                <li><a href=\"#media_settings\" data-toggle=\"tab\">{{ 'newscoop.preferences.menu.media'|trans }}</a></li>\n            {% endif %}\n            <li><a href=\"#geolocation_settings\" data-toggle=\"tab\">{{ 'newscoop.preferences.menu.geolocation'|trans }}</a></li>\n            <li><a href=\"#facebook_settings\" data-toggle=\"tab\">{{ 'newscoop.preferences.menu.fb'|trans }}</a></li>\n            <li><a href=\"#recaptcha_settings\" data-toggle=\"tab\">{{ 'newscoop.preferences.menu.recaptcha'|trans }}</a></li>\n            {% if hasManagePermission %}\n                <li><a href=\"#other_settings\" data-toggle=\"tab\">{{ 'newscoop.preferences.menu.other'|trans }}</a></li>\n            {% endif %}\n        </ul>\n        <div class=\"tab-content\">\n            <div class=\"tab-pane active\" id=\"general_settings\">\n                <h3>{{ 'newscoop.preferences.menu.general'|trans }}</h3>\n                    <dl>\n                        <dt>\n                            <label>{{ 'newscoop.preferences.label.siteonline'|trans }}</label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.siteonline) }}\n                        </dd>\n                        <dt>\n                            <label>{{ 'newscoop.preferences.label.sitetitle'|trans }}</label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.title, {'attr' : {'class' : 'input_text'}}) }}\n                        </dd>\n                        <dt>\n                            <label>{{ 'newscoop.preferences.label.metakeywords'|trans }}</label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.meta_keywords, {'attr' : {'class' : 'input_text'}}) }}\n                        </dd>\n                        <dt>\n                            <label>{{ 'newscoop.preferences.label.metadescription'|trans }}</label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.meta_description, {'attr' : {'class' : 'input_text'}}) }}\n                        </dd>\n                        <dt>\n                            <label>{{ 'newscoop.preferences.label.timezone'|trans }}</label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.timezone, {'attr' : {'class' : 'input_select wide'}}) }}\n                        </dd>\n                        <dt>\n                            <label>{{ 'newscoop.preferences.label.allowrecovery'|trans }} <small id=\"allowrecovery\">(?)</small></label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.allow_recovery) }}\n                        </dd>\n                        <dt>\n                            <label>{{ 'newscoop.preferences.label.emailfrom'|trans }} <small id=\"emailfrom\">(?)</small></label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.email_from, {'attr' : {'class' : 'input_text'}}) }}\n                        </dd>\n                        <dt>\n                            <label>{{ 'newscoop.preferences.label.secretkey'|trans }} <small id=\"secret\">(?)</small></label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.secret_key, {'attr' : {'class' : 'input_text', 'disabled': 'disabled'}}) }}\n                        </dd>\n                        <dt>\n                            <label>{{ 'newscoop.preferences.label.sessionlifetime'|trans }} <small id=\"lifetime\">(?)</small></label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.session_lifetime, {'attr' : {'class' : 'input_text'}}) }}\n                        </dd>\n                        <dt>\n                            <label>{{ 'newscoop.preferences.label.separator'|trans }} <small id=\"separator\">(?)</small></label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.separator, {'attr' : {'class' : 'input_text', 'style' : 'width: 50px'}}) }}\n                        </dd>\n                        <dt>\n                            <label>{{ 'newscoop.preferences.label.captcha'|trans }}</label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.captcha, {'attr' : {'class' : 'input_text', 'style' : 'width: 50px'}}) }}\n                        </dd>\n                        <dt>\n                            <label>{{ 'newscoop.preferences.label.maxupload'|trans }}</label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.max_upload_size, {'attr' : {'class' : 'input_text', 'style' : 'width: 50px'}}) }}\n                            <p>{{ 'newscoop.preferences.label.maxuploadmsg'|trans({'%max%': upload_min_filesize}) }}</p>\n                        </dd>\n                        {% if hasManagePermission %}\n                        <dt>\n                            <label>{{ 'newscoop.preferences.label.stats'|trans }} <small id=\"stats\">(?)</small></label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.automatic_collection) }}\n                        </dd>\n                        {% endif %}\n                    <dl>\n            </div>\n            <div class=\"tab-pane\" id=\"cache_settings\">\n                <h3>{{ 'newscoop.preferences.menu.cache'|trans }}</h3>\n                <dl>\n                 {% if hasManagePermission %}\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.cacheengine'|trans }} <small id=\"cacheengine\">(?)</small></label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.cache_engine, {'attr' : {'class' : 'input_select wide'}}) }}\n                    </dd>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.cacheenginehost'|trans }} <small id=\"cacheenginehost\">(?)</small></label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.cache_engine_host, {'attr' : {'class' : 'input_text wide'}}) }}\n                    </dd>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.cacheengineport'|trans }} <small id=\"cacheengineport\">(?)</small></label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.cache_engine_port, {'attr' : {'class' : 'input_text','style' : 'width: 81px;'}}) }}\n                    </dd>\n\n                    <div class=\"clear-database-cache\">\n                        <button class=\"btn btn-xs btn-danger\" type=\"text\">{{ 'newscoop.preferences.btn.cleardatabasecache'|trans }}</button>\n                    </div>\n\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.cachetemplate'|trans }} <small id=\"cachetemplate\">(?)</small></label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.cache_template, {'attr' : {'class' : 'input_select wide'}}) }}\n                    </dd>\n                {% endif %}\n                    <dt>\n                         <label>{{ 'newscoop.preferences.label.cacheimage'|trans }} <small id=\"cacheimage\">(?)</small></label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.cache_image, {'attr' : {'class' : 'input_select wide'}}) }}\n                    </dd>\n                </dl>\n            </div>\n            {% if hasManagePermission %}\n            <div class=\"tab-pane\" id=\"cronjob_settings\">\n                <h3>{{ 'newscoop.preferences.menu.cronjob'|trans }}</h3>\n                <ul id=\"tabsPanel\" class=\"nav nav-tabs nav-justified\">\n                  <li class=\"active last\"><a href=\"#jobs-table\" data-toggle=\"tab\" class=\"font-fix\">{{ 'newscoop.preferences.label.cronslist'|trans }}</a></li>\n                  <li><a href=\"#jobs-settings\" data-toggle=\"tab\" class=\"font-fix\">{{ 'newscoop.preferences.label.cronsadvanced'|trans }}</a></li>\n              </ul>\n              <div class=\"tab-content\" style=\"margin-top: -300px;\">\n                <div class=\"tab-pane fade in active\" id=\"jobs-table\" style=\"margin: 0\">\n                <span class=\"font-fix label label-info\">{{ 'newscoop.preferences.label.info'|trans }}</span> <span class=\"font-fix\">{{ 'newscoop.preferences.label.infodesc'|trans }}</span><br><br>\n                <table class=\"table table-striped cron-jobs\">\n                {% if jobs %}\n                  <thead>\n                    <tr>\n                      <th data-dynatable-no-sort=\"true\" class=\"font-fix\">#</th>\n                      <th class=\"font-fix\">{{ 'newscoop.preferences.label.cronjob'|trans }}</th>\n                      <th class=\"font-fix\">{{ 'newscoop.preferences.label.prevRun'|trans }}</th>\n                      <th data-dynatable-column=\"nextRunDate\" class=\"font-fix\">{{ 'newscoop.preferences.label.nextRun'|trans }}</th>\n                      <th data-dynatable-column=\"enabled\" data-dynatable-sorts=\"status\" class=\"font-fix\">{{ 'newscoop.preferences.label.enabled'|trans }}</th>\n                      <th data-dynatable-column=\"sendMail\" data-dynatable-sorts=\"notify\" class=\"font-fix\">{{ 'newscoop.preferences.label.cronJobNotify'|trans }}</th>\n                      <th data-dynatable-no-sort=\"true\" class=\"font-fix\">{{ 'newscoop.preferences.label.options'|trans }}</th>\n                    </tr>\n                  </thead>\n                  <tbody>\n                        {% for job in jobs %}\n                            <tr>\n                              <td>{{ loop.index }}</td>\n                              <td>{{ job.name }} {% if job.detailsUrl %}<a href=\"{{ job.detailsUrl }}\" target=\"_blank\">{{ 'newscoop.preferences.label.moredetails'|trans }}</a>{% endif %}</td>\n                              <td>{{ job.prevRun }}</td>\n                              <td><span title=\"{{ job.schedule }}\">{{ job.nextRun }}</span></td>\n                              <td>{% if job.enabled %}<div id=\"enabled\"><span class=\"font-fix label job-status{{ job.id }} label-success\"><span class=\"glyphicon glyphicon-thumbs-up\"></span></span></div>{% else %}<div id=\"disabled\"><span class=\"font-fix label job-status{{ job.id }} label-danger\"><span class=\"glyphicon glyphicon-thumbs-down\"></span></span></div>{% endif %}</td>\n                              <td><div class=\"notify-job\" {% if job.sendMail %}id=\"checked\"{% else %}id=\"unchecked\"{% endif %}><input type=\"checkbox\" class=\"cron-jobs-notify\" value=\"{{ job.id }}\" {% if job.sendMail %} checked {% endif %}/></div></td>\n                              <td>\n                                {% if job.enabled %}<button type=\"button\" job-id=\"{{ job.id }}\" class=\"disable-cron job-options{{ job.id }} btn btn-default btn-xs\"><span class=\"glyphicon glyphicon-remove-circle\"></span> {{ 'newscoop.preferences.btn.disable'|trans}}</button>{% else %}<button type=\"button\" job-id=\"{{ job.id }}\" class=\"enable-cron job-options{{ job.id }} btn btn-default btn-xs\"><span class=\"glyphicon glyphicon-ok-circle\"></span> {{ 'newscoop.preferences.btn.enable'|trans}}</button>{% endif %}</td>\n                            </tr>\n                        {% endfor %}\n                  </tbody>\n                {% else %}\n                    <span class=\"font-fix\">{{ 'newscoop.preferences.label.norecords'|trans }}</span>\n                {% endif %}\n                </table>\n                </div>\n                <div class=\"tab-pane fade\" id=\"jobs-settings\"><br>\n                        <dl style=\"margin-left: -200px;\">\n                            <dt>\n                                <label>{{ 'newscoop.preferences.label.cronJobEmail'|trans }} <small id=\"cronjobemails\">(?)</small></label>\n                            </dt>\n                            <dd>\n                                {{ form_row(form.cronJobNotificationEmail, {'attr' : {'class' : 'input_text'}}) }}\n                            </dd>\n                            <dt>\n                                <label>{{ 'newscoop.preferences.label.cronJobSenderEmail'|trans }} <small id=\"cronjobsender\">(?)</small></label>\n                            </dt>\n                            <dd>\n                                {{ form_row(form.cronJobSmtpSender, {'attr' : {'class' : 'input_text'}}) }}\n                            </dd>\n                            <dt>\n                                <label>{{ 'newscoop.preferences.label.cronJobSenderName'|trans }}</label>\n                            </dt>\n                            <dd>\n                                {{ form_row(form.cronJobSmtpSenderName, {'attr' : {'class' : 'input_text'}}) }}\n                            </dd>\n                        </dl>\n                </div>\n                </div>\n            </div>\n            <div class=\"tab-pane\" id=\"email_settings\">\n                <h3>{{ 'newscoop.preferences.menu.email'|trans }}</h3>\n                <dl>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.smtphost'|trans }}</label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.smtp_host, {'attr' : {'class' : 'input_text'}}) }}\n                    </dd>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.smtpport'|trans }}</label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.smtp_port, {'attr' : {'class' : 'input_text'}}) }}\n                    </dd>\n                </dl>\n            </div>\n            <div class=\"tab-pane\" id=\"editor_settings\">\n                <h3>{{ 'newscoop.preferences.menu.editor'|trans }}</h3>\n                <dl>\n                    <dt>\n                      <label>{{ 'newscoop.preferences.label.imageratio'|trans }} <small id=\"ratio\">(?)</small></label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.image_ratio, {'attr' : {'class' : 'input_text', 'style' : 'width: 67px'}}) }} %\n                    </dd>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.imagewidth'|trans }}</label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.image_width, {'attr' : {'class' : 'input_text', 'style' : 'width: 67px'}}) }} pixels\n                    </dd>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.imageheight'|trans }}</label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.image_height, {'attr' : {'class' : 'input_text', 'style' : 'width: 67px'}}) }} pixels\n                    </dd>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.zoom'|trans }} <small id=\"zoom\">(?)</small></label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.zoom) }}\n                    </dd>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.mediaRichTextCaptions'|trans }} <small id=\"richtext_status\">(?)</small></label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.mediaRichTextCaptions) }}\n                        <div id=\"richtext_captions\">\n                            <dl>\n                                <dt>\n                                    <label>{{ 'newscoop.preferences.label.mediaCaptionLength'|trans }} <small id=\"richtext_length\">(?)</small></label>\n                                </dt>\n                                <dd>\n                                    {{ form_row(form.mediaCaptionLength) }} {{ 'newscoop.preferences.label.mediaCaptionLength_after'|trans }}\n                                </dd>\n                            </dl>\n                        </div>\n                    </dd>\n                </dl>\n            </div>\n            {% endif %}\n            <div class=\"tab-pane\" id=\"geolocation_settings\">\n                <h3>{{ 'newscoop.preferences.menu.geolocation'|trans }}</h3>\n                <dl>\n                    {% if mysql_client_command_path %}\n                    <dt align=\"left\" width=\"400px\" title=\"{{ 'newscoop.preferences.label.mysqlpathmsg'|trans }}\" style=\"color:#b06000\">\n                            {{ 'newscoop.preferences.label.mysqlpath'|trans }}\n                    </dt>\n                    <dd align=\"left\" valign=\"top\">\n                        {{ form_row(form.mysql_client_command_path, {'attr' : {'class' : 'input_text'}}) }}\n                    </dd>\n                    {% endif %}\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.latitude'|trans }}</label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.center_latitude_default, {'attr' : {'class' : 'input_text'}}) }}\n                    </dd>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.longitude'|trans }}</label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.center_longitude_default, {'attr' : {'class' : 'input_text'}}) }}\n                    </dd>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.zoomlevel'|trans }}</label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.map_display_resolution_default, {'attr' : {'class' : 'input_text', 'style' : 'width: 81px;'}}) }}\n                    </dd>\n                    {% if hasManagePermission %}\n                        <dt>\n                            <label>{{ 'newscoop.preferences.label.defaultwidth'|trans }}</label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.map_view_width_default, {'attr' : {'class' : 'input_text', 'style' : 'width: 81px;'}}) }}\n                        </dd>\n                        <dt>\n                            <label>{{ 'newscoop.preferences.label.defaultheight'|trans }}</label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.map_view_height_default, {'attr' : {'class' : 'input_text', 'style' : 'width: 81px;'}}) }}\n                        </dd>\n                    {% endif %}\n                    <dt class=\"border\">\n                        <label>{{ 'newscoop.preferences.label.css'|trans }}</label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.map_auto_cSS_file, {'attr' : {'class' : 'input_text'}}) }}\n                    </dd>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.autofocus'|trans }}</label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.map_auto_focus_default, {'attr' : {'class' : 'input_text'}}) }}\n                    </dd>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.zoomautofocus'|trans }} (0-18)</label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.map_auto_focus_max_zoom, {'attr' : {'class' : 'input_text', 'style' : 'width: 81px;'}}) }}\n                    </dd>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.borderautofocus'|trans }}</label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.map_auto_focus_border, {'attr' : {'class' : 'input_text', 'style' : 'width: 81px;'}}) }}\n                    </dd>\n                    <dt class=\"border\">\n                        <label>{{ 'newscoop.preferences.label.mapprovider'|trans }}</label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.map_provider_available_google_v3) }}\n                    </dd>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.mapquest'|trans }}</label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.map_provider_available_map_quest) }}\n                    </dd>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.openstreet'|trans }}</label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.map_provider_available_oSM) }}\n                    </dd>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.defaultmapprovider'|trans }}</label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.map_provider_default, {'attr' : {'class' : 'input_select'}}) }}\n                    </dd>\n                    <dt class=\"border\">\n                        <label>{{ 'newscoop.preferences.label.geosearch'|trans }}</label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.geo_search_local_geonames) }}\n                    </dd>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.nominatimsearch'|trans }}</label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.geo_search_mapquest_nominatim) }}\n                    </dd>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.preflanguage'|trans }}</label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.geo_search_preferred_language, {'attr' : {'class' : 'input_select'}}) }}\n                    </dd>\n                    {% if hasManagePermission %}\n                        <dt class=\"border\">\n                            <label>{{ 'newscoop.preferences.label.markerdir'|trans }}</label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.map_marker_directory, {'attr' : {'class' : 'input_text'}}) }}\n                        </dd>\n                         <dt>\n                            <label>{{ 'newscoop.preferences.label.defaultmarker'|trans }}</label>\n                        </dt>\n                        <dd>\n                            {% if map_marker_source_default is iterable %}\n                                <select name=\"preferencesform[map_marker_source_default]\" class=\"input_select\">\n                                    {% for mark in map_marker_source_default %}\n                                        <option value=\"{{ mark }}\" {% if map_marker_source_selected == mark %} selected=\"selected\" {% endif %}>{{ mark }}</option>\n                                    {% endfor %}\n                                </select>\n                            {% else %}\n                                <input type=\"text\" name=\"preferencesform[map_marker_source_default]\" value=\"{{ map_marker_source_default }}\" maxlength=\"80\" size=\"40\" class=\"input_text\"/>\n                            {% endif %}\n                        </dd>\n                        <dt class=\"border\">\n                            <label>{{ 'newscoop.preferences.label.popupwidth'|trans }}</label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.map_popup_width_min, {'attr' : {'class' : 'input_text', 'style' : 'width: 81px;'}}) }}\n                        </dd>\n                         <dt>\n                            <label>{{ 'newscoop.preferences.label.popupheight'|trans }}</label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.map_popup_height_min, {'attr' : {'class' : 'input_text', 'style' : 'width: 81px;'}}) }}\n                        </dd>\n                    {% endif %}\n                </dl>\n            </div>\n            {% if hasManagePermission %}\n                <div class=\"tab-pane\" id=\"media_settings\">\n                    <h3>{{ 'newscoop.preferences.menu.media'|trans }} <label><small id=\"video\">(?)</small></label></h3>\n                    <dl>\n                        <dt>\n                            <label>{{ 'newscoop.preferences.label.youtubewidth'|trans }}</label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.map_video_width_you_tube, {'attr' : {'class' : 'input_text', 'style' : 'width: 81px;'}}) }}\n                        </dd>\n                        <dt>\n                            <label>{{ 'newscoop.preferences.label.youtubeheight'|trans }}</label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.map_video_height_you_tube, {'attr' : {'class' : 'input_text', 'style' : 'width: 81px;'}}) }}\n                        </dd>\n                        <dt class=\"border\">\n                            <label>{{ 'newscoop.preferences.label.vimeowidth'|trans }}</label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.map_video_width_vimeo, {'attr' : {'class' : 'input_text', 'style' : 'width: 81px;'}}) }}\n                        </dd>\n                        <dt>\n                            <label>{{ 'newscoop.preferences.label.vimeoheight'|trans }}</label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.map_video_height_vimeo, {'attr' : {'class' : 'input_text', 'style' : 'width: 81px;'}}) }}\n                        </dd>\n                        <dt class=\"border\">\n                            <label>{{ 'newscoop.preferences.label.flashwidth'|trans }}</label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.map_video_width_flash, {'attr' : {'class' : 'input_text', 'style' : 'width: 81px;'}}) }}\n                        </dd>\n                        <dt>\n                            <label>{{ 'newscoop.preferences.label.flashheight'|trans }}</label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.map_video_height_flash, {'attr' : {'class' : 'input_text', 'style' : 'width: 81px;'}}) }}\n                        </dd>\n                        <dt class=\"border\">\n                            <label>{{ 'newscoop.preferences.label.flashserver'|trans }}</label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.geo_flash_server, {'attr' : {'class' : 'input_text' }}) }}\n                        </dd>\n                        <dt>\n                            <label>{{ 'newscoop.preferences.label.flashdir'|trans }}</label>\n                        </dt>\n                        <dd>\n                            {{ form_row(form.geo_flash_directory, {'attr' : {'class' : 'input_text' }}) }}\n                        </dd>\n                    </dl>\n                </div>\n            {% endif %}\n            <div class=\"tab-pane\" id=\"facebook_settings\">\n                <h3>{{ 'newscoop.preferences.menu.fb'|trans }}</h3>\n                <dl>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.appid'|trans }}</label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.facebook_appid, {'attr' : {'class' : 'input_text' }}) }}\n                    </dd>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.fbsecret'|trans }}</label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.facebook_appsecret, {'attr' : {'class' : 'input_text' }}) }}\n                    </dd>\n                </dl>\n            </div>\n            {% if hasManagePermission %}\n                <div class=\"tab-pane\" id=\"other_settings\">\n                    <h3>{{ 'newscoop.preferences.menu.other'|trans }}</h3>\n                    <dl>\n                        <dt><label>{{ 'newscoop.preferences.label.usereplication'|trans }} <small id=\"replication\">(?)</small></label></dt>\n                        <dd>\n                            {{ form_row(form.use_replication) }}\n                        </dd>\n                        <div id=\"replication_server\">\n                            <dl>\n                                <dt><h4>{{ 'newscoop.preferences.label.serverdb'|trans }}</h4></dt>\n                                <dt><label>{{ 'newscoop.preferences.label.replicationhost'|trans }}</label></dt>\n                                <dd>\n                                    {{ form_row(form.use_replication_host, {'attr' : {'class' : 'input_text'}}) }}\n                                </dd>\n                                <dt><label>{{ 'newscoop.preferences.label.replicationuser'|trans }}</label></dt>\n                                <dd>\n                                    {{ form_row(form.use_replication_user, {'attr' : {'class' : 'input_text'}}) }}\n                                </dd>\n                                <dt><label>{{ 'newscoop.preferences.label.replicationpw'|trans }}</label></dt>\n                                <dd>\n                                    {{ form_row(form.use_replication_password, {'attr' : {'class' : 'input_text'}}) }}\n                                </dd>\n                                <dt><label>{{ 'newscoop.preferences.label.replicationport'|trans }}</label></dt>\n                                <dd>\n                                    {{ form_row(form.use_replication_port, {'attr' : {'class' : 'input_text'}}) }}\n                                </dd>\n                            </dl>\n                        </div>\n                        <dt class=\"border\"><label>{{ 'newscoop.preferences.label.filter'|trans }} <small id=\"filter\">(?)</small></label></dt>\n                        <dd>\n                           {{ form_row(form.template_filter, {'attr' : {'class' : 'input_text'}}) }}\n                        </dd>\n                        <dt class=\"border\"><label>{{ 'newscoop.preferences.label.usergarbage'|trans }} <small id=\"garbage\">(?)</small></label></dt>\n                        <dd>\n                           {{ form_row(form.userGarbageActive) }}\n                        </dd>\n                        <div id=\"user-garbage\">\n                            <dl>\n                                <dt><h4>{{ 'newscoop.preferences.label.usergarbagedaysinfo'|trans }}</h4></dt>\n                                <label>{{ 'newscoop.preferences.label.usergarbagedays'|trans }}</label>\n                                <dd>\n                                   {{ form_row(form.userGarbageDays, {'attr' : {'class' : 'input_text' , 'style' : 'width: 81px;'}}) }}\n                                </dd>\n                            </dl>\n                        </div>\n                        <dt class=\"border\"><label>{{ 'newscoop.preferences.label.smartyUseProtocol'|trans }} <small id=\"smartyuseprotocol-popover\">(?)</small></label></dt>\n                        <dd>\n                           {{ form_row(form.smartyUseProtocol) }}\n                        </dd>\n                    </dl>\n                </div>\n            {% endif %}\n            <div class=\"tab-pane\" id=\"recaptcha_settings\">\n                <h3>{{ 'newscoop.preferences.menu.recaptcha'|trans }}</h3>\n                <dl>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.recaptchapublickey'|trans }} <small id=\"recaptchapublickey\">(?)</small></label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.recaptchaPublicKey, {'attr' : {'class' : 'input_text' }}) }}\n                    </dd>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.recaptchaprivatekey'|trans }} <small id=\"recaptchaprivatekey\">(?)</small></label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.recaptchaPrivateKey, {'attr' : {'class' : 'input_text' }}) }}\n                    </dd>\n                    <dt>\n                        <label>{{ 'newscoop.preferences.label.recaptchasecure'|trans }} <small id=\"recaptchasecure\">(?)</small></label>\n                    </dt>\n                    <dd>\n                        {{ form_row(form.recaptchaSecure) }}\n                    </dd>\n                </dl>\n            </div>\n            <div class=\"save-button-bar\">\n                <button type=\"submit\" class=\"save-button\">{{ 'newscoop.btn.save'|trans }}</button>\n            </div>\n        </div>\n    </div>\n</div>\n{{ form_widget(form._token) }}\n</form>\n<script type=\"text/javascript\"><!--\n$( document ).ready(function() {\n    $('.cron-jobs').dynatable({\n        features: {\n            paginate: false,\n            pushState: true\n        },\n        inputs: {\n            paginationClass: 'pagination',\n            paginationActiveClass: 'current',\n            paginationDisabledClass: 'unavailable',\n            paginationPrev: '&laquo;',\n            paginationNext: '&raquo;',\n            pageText: '{{ 'users.table.table_messages.page'|trans({}, \"users\") }}',\n            perPageText: '{{ 'users.table.table_messages.perPageText'|trans({}, \"users\") }}',\n            pageText: '{{ 'users.table.table_messages.pageText'|trans({}, \"users\") }}',\n            recordCountPageBoundTemplate: '{{ 'users.table.table_messages.recordCountPageBoundTemplate'|trans({}, \"users\") }}',\n            recordCountPageUnboundedTemplate: '{{ 'users.table.table_messages.recordCountPageUnboundedTemplate'|trans({}, \"users\") }}',\n            recordCountTotalTemplate: '{{ 'users.table.table_messages.recordCountTotalTemplate'|trans({}, \"users\") }}',\n            recordCountFilteredTemplate: '{{ 'users.table.table_messages.recordCountFilteredTemplate'|trans({}, \"users\") }}',\n            recordCountText: '{{ 'users.table.table_messages.recordCountText'|trans({}, \"users\") }}',\n            recordCountTextTemplate: '{{ 'users.table.table_messages.recordCountTextTemplate'|trans({}, \"users\") }}',\n            recordCountTemplate: '{{ 'users.table.table_messages.recordCountTemplate'|trans({}, \"users\") }}',\n            processingText: '{{ 'users.table.table_messages.processingText'|trans({}, \"users\") }}'\n        },\n        readers: {\n            enabled: function(cell, record) {\n                var $cell = $(cell);\n                var status = $cell.find('div').get(0);\n                record['status'] = status.id;\n\n                return $cell.html();\n            },\n            sendMail: function(cell, record) {\n                var $cell = $(cell);\n                var notify = $cell.find(\"div.notify-job\").get(0);\n                record['notify'] = notify.id\n\n                return $cell.html();\n            }\n        }\n    });\n});\n\n    function popover(target, content) {\n        target.popover({\n            trigger: 'hover',\n            content : content\n        });\n    };\n\n    $(function() {\n        $(\"input:radio[name=preferencesform\\\\[mediaRichTextCaptions\\\\]]\").change(function() {\n            var richtext_div = $('#richtext_captions');\n            if ($(this).val() == 'Y') {\n                richtext_div.show();\n            } else {\n                richtext_div.hide();\n            }\n        });\n\n        $(\"input:radio[name=preferencesform\\\\[mediaRichTextCaptions\\\\]]:checked\").change();\n    });\n\n    $(function() {\n        $('#tabsPanel a:first').tab('show');\n        $(\"input:radio[name=preferencesform\\\\[use_replication\\\\]]\").change(function() {\n            var replication_div = $('#replication_server');\n            if ($(this).val() == 'Y') {\n                replication_div.show();\n            } else {\n                replication_div.hide();\n            }\n        });\n\n        $(\"input:radio[name=preferencesform\\\\[use_replication\\\\]]:checked\").change();\n    });\n\n    $(function() {\n        $(\"input:radio[name=preferencesform\\\\[userGarbageActive\\\\]]\").change(function() {\n            var garbageDiv = $('#user-garbage');\n            if ($(this).val() == 'Y') {\n                garbageDiv.show();\n            } else {\n                garbageDiv.hide();\n            }\n        });\n\n        $(\"input:radio[name=preferencesform\\\\[userGarbageActive\\\\]]:checked\").change();\n    });\n\n    $('.clear-database-cache button').click(function(e){\n        e.preventDefault();\n\n        var that = $(this);\n        callServer('ping', [], function(json) {\n            $.ajax({\n                type: 'POST',\n                url: Routing.generate('newscoop_newscoop_systempref_cleardatabasecache'),\n                success: function (data) {\n                    flashMessage('{{ 'newscoop.preferences.success.cacheCleared'|trans}}');\n                },\n                error: function (rq, status, error) {\n                    flashMessage('{{ 'newscoop.preferences.error.cacheNotCleared'|trans}}', \"error\");\n                }\n            });\n        });\n    });\n\n    $('button.disable-cron').live('click', function(e){\n        e.preventDefault();\n\n        var that = $(this);\n        var jobId = that.attr('job-id');\n        callServer('ping', [], function(json) {\n            $.ajax({\n                type: 'POST',\n                url: Routing.generate('newscoop_newscoop_systempref_disablejob', {id: jobId }),\n                success: function (data) {\n                    var parentOptions = $('.job-options' + jobId).parent();\n                    parentOptions.html('');\n                    parentOptions.append('<button type=\"button\" job-id=\"'+jobId+'\" class=\"enable-cron job-options' + jobId+' btn btn-default btn-xs\"><span class=\"glyphicon glyphicon-ok-circle\"></span> {{ 'newscoop.preferences.btn.enable'|trans}}</button>');\n                    var parent = $(\".job-status\" + jobId).parent();\n                    parent.html('');\n                    parent.append('<span class=\"font-fix label job-status'+jobId+' label-danger\"><span class=\"glyphicon glyphicon-thumbs-down\"></span></span>')\n                    flashMessage('{{ 'newscoop.preferences.success.jobdisabled'|trans}}');\n                },\n                error: function (rq, status, error) {\n                    flashMessage('{{ 'newscoop.preferences.error.joberror'|trans}}', \"error\");\n                }\n            });\n        });\n    });\n\n    $('button.enable-cron').live('click', function(e){\n        e.preventDefault();\n\n        var that = $(this);\n        var jobId = that.attr('job-id');\n        callServer('ping', [], function(json) {\n            $.ajax({\n                type: 'POST',\n                url: Routing.generate('newscoop_newscoop_systempref_enablejob', {id: jobId }),\n                success: function (data) {\n                    var parentOptions = $('.job-options' + jobId).parent();\n                    parentOptions.html('');\n                    parentOptions.append('<button type=\"button\" job-id=\"'+jobId+'\" class=\"disable-cron job-options' + jobId+' btn btn-default btn-xs\"><span class=\"glyphicon glyphicon-remove-circle\"></span> {{ 'newscoop.preferences.btn.disable'|trans}}</button>');\n                    var parent = $(\".job-status\" + jobId).parent();\n                    parent.html('');\n                    parent.append('<span class=\"font-fix label job-status'+jobId+' label-success\"><span class=\"glyphicon glyphicon-thumbs-up\"></span></span>')\n                    flashMessage('{{ 'newscoop.preferences.success.jobenabled'|trans}}');\n                },\n                error: function (rq, status, error) {\n                    flashMessage('{{ 'newscoop.preferences.error.joberror'|trans}}', \"error\");\n                }\n            });\n        });\n    });\n\n    $('.cron-jobs-notify').live('click', function(e){\n        var jobId = $(this).val();\n        callServer('ping', [], function(json) {\n            $.ajax({\n                type: 'POST',\n                url: Routing.generate('newscoop_newscoop_systempref_jobnotify', {id: jobId }),\n                success: function (data) {\n                    flashMessage('{{ 'newscoop.preferences.success.jobnotifyswitched'|trans}}');\n                },\n                error: function (rq, status, error) {\n                    flashMessage('{{ 'newscoop.preferences.error.jobnotifyerror'|trans}}', \"error\");\n                }\n            });\n        });\n    });\n\n    popover($('#cacheengine'), '{{ 'newscoop.preferences.popover.cacheengine'|trans }}');\n    popover($('#cacheenginehost'), '{{ 'newscoop.preferences.popover.cacheenginehost'|trans }}');\n    popover($('#cacheengineport'), '{{ 'newscoop.preferences.popover.cacheengineport'|trans }}');\n    popover($('#cachetemplate'), '{{ 'newscoop.preferences.popover.cachetemplate'|trans }}');\n    popover($('#cacheimage'), '{{ 'newscoop.preferences.popover.cacheimage'|trans }}');\n    popover($('#allowrecovery'), '{{ 'newscoop.preferences.popover.recovery'|trans }}');\n    popover($('#secret'), '{{ 'newscoop.preferences.popover.secret'|trans }}');\n    popover($('#separator'), '{{ 'newscoop.preferences.popover.separator'|trans }}');\n    popover($('#stats'), '{{ 'newscoop.preferences.popover.stats'|trans }}');\n    popover($('#zoom'), '{{ 'newscoop.preferences.popover.zoom'|trans }}');\n    popover($('#richtext_status'), '{{ 'newscoop.preferences.popover.richtext_status'|trans }}');\n    popover($('#richtext_length'), '{{ 'newscoop.preferences.popover.richtext_length'|trans }}');\n    popover($('#ratio'), '{{ 'newscoop.preferences.popover.ratio'|trans }}');\n    popover($('#replication'), '{{ 'newscoop.preferences.popover.replication'|trans }}');\n    popover($('#filter'), '{{ 'newscoop.preferences.popover.filter'|trans }}');\n    popover($('#cron'), '{{ 'newscoop.preferences.popover.cron'|trans }}');\n    popover($('#video'), '{{ 'newscoop.preferences.popover.video'|trans }}');\n    popover($('#emailfrom'), '{{ 'newscoop.preferences.popover.emailfrom'|trans }}');\n    popover($('#recaptchaprivatekey'), '{{ 'newscoop.preferences.popover.recaptcha.privatekey'|trans }}');\n    popover($('#recaptchapublickey'), '{{ 'newscoop.preferences.popover.recaptcha.publickey'|trans }}');\n    popover($('#recaptchasecure'), '{{ 'newscoop.preferences.popover.recaptcha.secure'|trans }}');\n    popover($('#garbage'), '{{ 'newscoop.preferences.popover.garbage'|trans }}');\n    popover($('#lifetime'), '{{ 'newscoop.preferences.popover.lifetime'|trans }}');\n    popover($('#smartyuseprotocol-popover'), '{{ 'newscoop.preferences.popover.smartyuseprotocol'|trans }}');\n    popover($('#cronjobemails'), '{{ 'newscoop.preferences.popover.cronJobEmail'|trans }}');\n    popover($('#cronjobsender'), '{{ 'newscoop.preferences.popover.cronJobSenderEmail'|trans }}');\n    $(document).ready(function(){\n        if ($('.has-error').offset()) {\n            var tabPane = $(\".has-error :input\").parents('.tab-pane');\n            $.each(tabPane, function(index, value) {\n                $('.nav-tabs a[href=\"#' + $(value).attr('id') + '\"]').tab('show');\n            });\n\n            $(window).scrollTop($('.has-error').offset().top - 50);\n        }\n    });\n//--></script>\n{% endblock %}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/Topics/index.html.twig",
    "content": "{% extends 'NewscoopNewscoopBundle::admin_layout.html.twig' %}\n{% trans_default_domain \"topics\" %}\n{% block admin_title %}{{ 'topics.title'|trans }} - {{ parent() }}{% endblock %}\n{% block admin_page_title_box %}\n  {% if compactView == false %}\n      <div class=\"toolbar row\"><span class=\"article-title\">\n    {{ 'topics.title'|trans }}\n  </span></div>\n  {% endif %}\n{% endblock %}\n{% block admin_stylesheets %}\n<link rel=\"stylesheet\" href=\"{{ asset('/bundles/newscoopnewscoop/css/angular-ui-tree.min.css') }}\">\n<link rel=\"stylesheet\" href=\"{{ asset('/bundles/newscoopnewscoop/css/bootstrap-custom.css') }}\">\n<link rel=\"stylesheet\" href=\"{{ asset('/bundles/newscoopnewscoop/css/new-design.css') }}\">\n<style>\n.font-fix {\n    font-size: 12px;\n}\n</style>\n{% endblock %}\n{% block admin_scripts %}\n<script type=\"text/javascript\" src=\"{{ Newscoop['WEBSITE_URL'] }}/bundles/newscoopnewscoop/js/popover.js\"></script>\n<script type=\"text/javascript\" src=\"{{ asset('/bundles/newscoopnewscoop/js/angular.min.js') }}\"></script>\n<script type=\"text/javascript\" src=\"{{ asset('/bundles/newscoopnewscoop/js/angular-ui-tree.js') }}\"></script>\n<script type=\"text/javascript\" src=\"{{ asset('/bundles/newscoopnewscoop/js/highlight.min.js') }}\"></script>\n<script type=\"text/javascript\" src=\"{{ asset('/bundles/newscoopnewscoop/js/angular-ui-tree-filter.min.js') }}?v=1\"></script>\n<script type=\"text/javascript\" src=\"{{ asset('/bundles/newscoopnewscoop/js/checklist-model.js') }}\"></script>\n<script type=\"text/javascript\" src=\"{{ asset('/bundles/newscoopnewscoop/js/tree.js') }}?v=2\"></script>\n<script src=\"/js/admin.js\"></script>\n{% endblock %}\n{% block admin_page_menu_bar %}\n  {% if compactView == false %}\n    {{ parent() }}\n  {% endif %}\n{% endblock %}\n{% block admin_content %}\n\n<div class=\"system_pref topics\" ng-app=\"treeApp\" ng-controller=\"treeController as treeCtrl\" ng-cloak>\n{% if compactView %}\n<div class=\"fixed-top topics-top\">\n  <button class=\"button right-floated with-margin-top\" type=\"button\" ng-click=\"treeCtrl.attachTopics('{{ articleNumber }}', '{{ articleLanguage }}')\">{{ 'topics.btn.saveandclose'|trans }}</button>\n  <button class=\"button right-floated with-margin-top\" onclick=\"parent.$.fancybox.close(); return false;\">{{ 'topics.btn.close'|trans }}</button>\n  <h3>{{ 'topics.title'|trans }} - {{ 'topics.attachtopics'|trans }}</h3>\n  </div>\n{% else %}\n\n{{ renderTip('topics.tip'|trans) }}\n\n{% endif %}\n<div class=\"container\">\n<div class=\"row\" ng-init=\"dim=false; highlight=true; {% if compactView %}treeCtrl.onFilterLanguageChange('{{ articleLanguage }}', '{{app.request.locale}}', '{{ articleNumber }}'){% else %}treeCtrl.loadTopicsTree('{{app.request.locale}}'){% endif %}\">\n{% if compactView and assignedTopics|length > 0 %}\n<div class=\"col-lg-12\">\n<h3>{{ 'topics.attachedtopics'|trans }}</h3>\n  <div class=\"list\">\n    {% for topic in assignedTopics %}\n    <div\n       class=\"tree-node tree-node-content angular-ui-tree-handle angular-ui-tree ng-scope\" style=\"cursor:pointer; background: #E1E9EF; padding: 10px 10px\" ng-click=\"treeCtrl.goToTopic('{{topic.title}}', {{topic.id}})\">\n       <div class=\"default-wrap\">\n          <input type=\"checkbox\" ng-click=\"$event.stopPropagation();\" id=\"selectedCheckbox\" checklist-model=\"treeCtrl.selectedTopics.ids\" checklist-value=\"{{topic.id}}\" class=\"topic-marker\"/>\n            {{ topic.path }}\n        </div>\n    </div>\n    {% endfor %}\n  </div>\n</div>\n{% endif %}\n        <div class=\"col-sm-4\">\n            <h3>{{ 'topics.label.addroot'|trans }}</h3>\n            <div class=\"alert alert-danger\" ng-show=\"addTopicForm.title.$error.maxlength\" role=\"alert\">{{ 'topics.toolong'|trans }}</div>\n            <div class=\"alert alert-danger\" ng-show=\"addTopicForm.title.$error.minlength\" role=\"alert\">{{ 'topics.tooshort'|trans }}</div>\n            <form class=\"form-inline\" name=\"addTopicForm\" ng-submit=\"treeCtrl.addNewTopic()\" role=\"form\">\n                <div class=\"row\">\n                  <div class=\"col-lg-12\">\n                    <div class=\"form-group\">\n                      <input type=\"text\" name=\"title\" ng-model=\"treeCtrl.formData.title\" required ng-minlength=\"1\" ng-maxlength=\"60\" class=\"form-control input-sm\" id=\"addNewTopic\" placeholder=\"{{ 'topics.label.topicname'|trans }}\">\n                      <button ng-disabled=\"addTopicForm.$invalid\" type=\"submit\" class=\"btn btn-sm btn-primary\">{{ 'topics.btn.add'|trans }}</button>\n                      </div>\n                    </div>\n                </div>\n            </form>\n        </div>\n        <div class=\"col-sm-4\">\n            <h3>{{ 'topics.label.search'|trans }}</h3>\n            <form class=\"form-inline\" name=\"searchForm\" role=\"form\">\n                <input type=\"search\" class=\"form-control search input-sm\" placeholder=\"{{ 'topics.label.filterplaceholder'|trans }}\"  ng-model=\"treeCtrl.pattern\">\n            </form>\n        </div>\n        <div class=\"col-sm-4\">\n          {% if compactView == false %}\n          <h3>{{ 'topics.label.filterbylang'|trans }}</h3>\n          <form class=\"form-inline\" name=\"filterForm\" role=\"form\">\n            <select ng-model=\"treeCtrl.langSelected\" ng-options='language.code as (language.name + \" [\" + language.code + \"]\") for language in treeCtrl.languageList' ng-change=\"treeCtrl.onFilterLanguageChange(treeCtrl.langSelected, '{{app.request.locale}}')\" class=\"form-control input-sm\">\n            <option value=\"\">{{ 'topics.label.all'|trans }}</option>\n            </select>\n          </form>\n          {% endif %}\n        </div>\n  </div>\n        <div class=\"row\">\n          <div class=\"col-lg-12\"> \n            <h3>{{ 'topics.label.tree'|trans }}\n            <div class=\"expand-btn pull-right\">\n                <span class=\"label\">{{ 'topics.label.expandcollapse'|trans }}</span>\n                <button type=\"button\" class=\"btn btn-default btn-sm\" title=\"Expand/collapse tree\" ng-click=\"treeCtrl.expandCollapseAll()\"><span class=\"glyphicon glyphicon-resize-vertical\"></span></button>\n              </div>\n            </h3>\n            <!-- Nested node template -->\n            <script type=\"text/ng-template\" id=\"nodes_renderer.html\">\n              <div ui-tree-handle ng-class=\"{'active': editing || addingSubtopic}\" class=\"tree-node tree-node-content angular-ui-tree-handle\" {% if compactView %}style=\"cursor:auto\" ng-style=\"{ background: node.attached ? '#E1E9EF' : '#f2f2f2' }\"{% endif %}>\n              <div class=\"pull-right btn-group\">\n                <a data-nodrag ng-click=\"treeCtrl.startEditing(this)\" class=\"btn btn-default btn-sm\" ng-class=\"{'active': treeCtrl.editing}\"><span title=\"{{ 'topics.btn.edit'|trans }}\" class=\"glyphicon glyphicon-pencil\"></span></a>\n                <a data-nodrag ng-click=\"treeCtrl.showNewSubtopicBox(this)\" class=\"btn btn-default btn-sm\" ng-class=\"{'active': addingSubtopic}\"><span title=\"{{ 'topics.label.addsubtopic'|trans }}\" class=\"glyphicon glyphicon-plus\"></span></a>\n                {% if compactView == false %}\n                <a data-nodrag ng-click=\"treeCtrl.removeTopicAlert(node.id)\" data-toggle=\"modal\" data-target=\"#removeAlert\" class=\"btn btn-default btn-sm\"><span title=\"{{ 'topics.btn.remove'|trans }}\" class=\"glyphicon glyphicon-trash\"></span></a>\n                {% endif %}\n              </div>\n                <div class=\"drag-bar\" {% if compactView %}style=\"display: none;\"{% endif %}></div>\n                <a data-nodrag ng-click=\"toggle(this)\" class=\"pointer\"><span ng-if=\"node.__children.length > 0\" class=\"glyphicon\" ng-class=\"{'glyphicon-chevron-right': !collapsed || !treeCtrl.showExpanded || !toggler, 'glyphicon-chevron-down': collapsed || treeCtrl.showExpanded || toggler}\"></span></a>\n\n                <div class=\"default-wrap\" {% if not compactView %}ng-if=\"!editing\"{% endif %}>\n                  {% if compactView %}<input type=\"checkbox\" id=\"selectedCheckbox\" checklist-model=\"treeCtrl.selectedTopics.ids\" checklist-value=\"node.id\" class=\"topic-marker\" />{% endif %}\n                  <div><span ng-bind-html=\"node.title | highlight:treeCtrl.pattern | trust\" class=\"ng-binding\" {% if compactView %}style=\"margin-left: 20px;\"{% endif %}></span>\n                  <ul ng-if=\"!editing\" class=\"list-group\" ng-model=\"node.translations\">\n                      <li class=\"list-group-item\" ng-class=\"{'active': node.activeLabel, 'fallback': treeCtrl.languageCode != node.locale && !node.activeLabel && node.fallback}\" ng-repeat=\"node in node.translations track by node.id\">\n                          <span class=\"badge ng-binding\">{[{ ::node.locale }]}</span>\n                      </li>\n                  </ul></div>\n                </div>\n                <div class=\"node-add-subtopic-div\" ng-if=\"addingSubtopic\" data-nodrag style=\"cursor:auto\">\n                <h3>{{ 'topics.label.addsubtopic'|trans }}</h3>\n                  <div class=\"node-edit-div\" data-nodrag>\n                    <div class=\"form-group\">\n                      <form name=\"addSubTopicForm\" class=\"form-inline\" role=\"form\" novalidate>\n                          <div class=\"alert alert-danger\" ng-show=\"addSubTopicForm.title.$error.maxlength\" role=\"alert\">{{ 'topics.toolong'|trans }}</div>\n                          <div class=\"alert alert-danger\" ng-show=\"addSubTopicForm.title.$error.minlength\" role=\"alert\">{{ 'topics.tooshort'|trans }}</div>\n                          <div class=\"form-group\">\n                            <input type=\"text\" name=\"title\" required ng-minlength=\"1\" ng-maxlength=\"60\" class=\"form-control input-sm\" ng-model=\"node.newChild[node.id]\" placeholder=\"{{ 'topics.label.subtopicname'|trans }}\">\n                            <button type=\"submit\" ng-disabled=\"addSubTopicForm.$invalid\" class=\"btn btn-sm btn-default\" ng-click=\"treeCtrl.addNewTopic(this)\">{{ 'topics.btn.add'|trans }}</button>\n                          </div>\n                        </form>\n                    </div>\n                  </div>\n                </div>\n                <div class=\"node-edit-div\" data-nodrag ng-if=\"editing\" data-nodrag style=\"cursor:auto\">\n                  <div class=\"form-group\">\n                    <form name=\"editTopicForm\" class=\"form-inline\" role=\"form\" novalidate>\n                      <div class=\"alert alert-danger\" ng-show=\"editTopicForm.title.$error.maxlength\" role=\"alert\">{{ 'topics.toolong'|trans }}</div>\n                      <div class=\"alert alert-danger\" ng-show=\"editTopicForm.title.$error.minlength\" role=\"alert\">{{ 'topics.tooshort'|trans }}</div>\n                        <input type=\"text\" name=\"title\" required ng-minlength=\"1\" ng-maxlength=\"60\" class=\"form-control input-sm\" placeholder=\"{{ 'topics.label.topicname'|trans }}\" ng-model=\"node.title\">\n                      <button type=\"submit\" ng-disabled=\"editTopicForm.$invalid\" class=\"btn btn-sm btn-default\" ng-click=\"treeCtrl.updateTopic(node)\">{{ 'topics.btn.save'|trans }}</button>\n                    </form>\n                  </div>\n                </div>\n                <div class=\"node-lang-div\" ng-if=\"editing\" data-nodrag style=\"cursor:auto\">\n                    <h3>{{ 'topics.label.addtranslation'|trans }}</h3>\n                    <form name=\"addTranslationForm\" class=\"form-inline\" role=\"form\" novalidate>\n                            <div class=\"alert alert-danger\" ng-show=\"addTranslationForm.title.$error.maxlength\" role=\"alert\">{{ 'topics.toolong'|trans }}</div>\n                            <div class=\"alert alert-danger\" ng-show=\"addTranslationForm.title.$error.minlength\" role=\"alert\">{{ 'topics.tooshort'|trans }}</div>\n                            <div class=\"form-group\">\n                              <select ng-model=\"treeCtrl.languageSelected\" ng-options=\"language.name for language in treeCtrl.languageList\" ng-change=\"treeCtrl.onLanguageChange(treeCtrl.languageSelected)\" class=\"form-control input-sm\" style=\"width: 160px\" required>\n                                <option value=\"\">{{ 'topics.label.choose'|trans }}</option>\n                              </select>\n                              <input type=\"text\" name=\"title\" required ng-minlength=\"1\" ng-maxlength=\"60\" class=\"form-control input-sm\" ng-model=\"node.newTranslation[node.id]\" placeholder=\"{{ 'topics.label.translationstring'|trans }}\">\n                              <button type=\"submit\" ng-disabled=\"addTranslationForm.$invalid\" class=\"btn btn-sm btn-default\" ng-click=\"treeCtrl.addTranslation(node)\">{{ 'topics.btn.add'|trans }}</button>\n                            </div>\n                      </form>\n                      <h3>{{ 'topics.label.topictranslations'|trans }}</h3>\n                      <ul class=\"lang-list\" ng-model=\"node.translations\">\n                          <li ng-repeat=\"node in node.translations track by node.id\">\n                            <div>\n                              <span class=\"badge\">{[{ ::node.locale }]}</span>\n                              {[{ ::node.content }]}\n                              <a data-nodrag class=\"remove-translation\" ng-click=\"treeCtrl.removeTranslation(node.id)\"><span title=\"{{ 'topics.btn.removetrans'|trans }}\" class=\"glyphicon glyphicon-remove\"></span></a>\n                            </div>\n                          </li>\n                      </ul>\n                </div>\n                <div class=\"button-close\" ng-show=\"editing || addingSubtopic\">\n                  <a class=\"btn btn-sm btn-default\" data-nodrag ng-click=\"treeCtrl.hideExtraOptions(this)\"><span title=\"{{ 'topics.btn.hide'|trans }}\" class=\"glyphicon glyphicon-chevron-up\"></span></a>\n                </div>\n              </div>\n              <ol ui-tree-nodes ng-model=\"node.__children\">\n                  <li ng-if=\"collapsed || treeCtrl.showExpanded || toggler\" ng-repeat=\"node in node.__children\" id=\"node{[{::node.id}]}\" ng-if=\"treeCtrl.treeFilter(node, treeCtrl.pattern, treeCtrl.supportedFields, this) && !dim\" ui-tree-node ng-include=\"'nodes_renderer.html'\">\n\n                  </li>\n              </ol>\n            </script>\n            <div ui-tree=\"treeCtrl.treeOptions\" {% if compactView %}data-drag-enabled=\"false\"{% endif %} id=\"tree-root\">\n              <ol ui-tree-nodes ng-model=\"treeCtrl.data\">\n                <li ng-repeat=\"node in treeCtrl.data\" id=\"node{[{::node.id}]}\" ui-tree-node ng-include=\"'nodes_renderer.html'\" ng-hide=\"treeCtrl.pattern && !treeCtrl.treeFilter(node, treeCtrl.pattern, treeCtrl.supportedFields, this) && !dim\"></li>\n              </ol>\n            </div>\n            <!-- Modal -->\n            <div class=\"modal fade\" id=\"removeAlert\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"removeAlertLabel\" aria-hidden=\"true\">\n              <div class=\"modal-dialog\">\n                <div class=\"modal-content\">\n                  <div class=\"modal-header\">\n                    <button type=\"button\" class=\"close\" data-dismiss=\"modal\"><span aria-hidden=\"true\">&times;</span><span class=\"sr-only\">{{ 'topics.btn.close'|trans }}</span></button>\n                    <h4 class=\"modal-title\" id=\"myModalLabel\">{{ 'topics.alerts.beforedelete'|trans }}</h4>\n                  </div>\n                  <div class=\"modal-body\" style=\"font-size: 14px;\">\n                    {{ 'topics.alerts.beforedeleteinfo'|trans }}\n                  </div>\n                  <div class=\"modal-body attached-info\" style=\"font-size: 14px; display: none;\">\n                  </div>\n                  <div class=\"modal-footer\">\n                    <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\">{{ 'topics.btn.close'|trans }}</button>\n                    <button type=\"button\" ng-click=\"treeCtrl.removeTopic()\" ng-disabled=\"treeCtrl.deleteDisabled\" class=\"btn btn-danger\">{{ 'topics.btn.remove'|trans }}</button>\n                  </div>\n                </div>\n              </div>\n            </div>\n          </div>\n        </div>\n    </div>\n</div>\n<script>\n    var token = \"{{ default_csrf_token() }}\";\n</script>\n{% endblock %}\n{% block admin_page_footer_box %}\n  {% if compactView == false %}\n    {{ parent() }}\n  {% endif %}\n{% endblock %}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/Users/index.html.twig",
    "content": "{% trans_default_domain \"users\" %}\n{% extends 'NewscoopNewscoopBundle::admin_layout.html.twig' %}\n\n{% block admin_title %}{{ 'users.label.title'|trans }} - {{ parent() }}{% endblock %}\n{% block admin_page_title_box %}\n<div class=\"toolbar row\">\n<span class=\"article-title\">{{ 'users.label.title'|trans }}</span>\n\n<div class=\"pull-right\">\n    <div class=\"actions\">\n        <ul class=\"navigation\" style=\"height: auto;\">\n            <li>\n                <a class=\"add\" href=\"{{ generateZendUrl('user', 'create', 'admin') }}\">{{ 'Create new account'|trans }}</a>\n            </li>\n        </ul>\n    </div>\n</div>\n</div>\n{% endblock %}\n\n{% block admin_stylesheets %}\n<link rel=\"stylesheet\" type=\"text/css\" href=\"{{ asset('/js/select2/select2.css') }}\" />\n<link rel=\"stylesheet\" href=\"{{ asset('/bundles/newscoopnewscoop/css/bootstrap.css') }}\">\n<link rel=\"stylesheet\" href=\"{{ asset('/bundles/newscoopnewscoop/css/jquery.dynatable.css') }}\">\n<link rel=\"stylesheet\" href=\"{{ asset('/admin-style/action_buttons.css') }}\">\n<style type=\"text/css\">\n    .form-control {\n        margin: 0px 0px 10px 0px;\n    }\n    .form-control input {\n        margin-right: 10px;\n    }\n\n    #users-table {\n        padding: 10px;\n        border: 1px solid #ccc;\n    }\n\n    #users-table th {\n        background: #007fb3;\n        color: #fff;\n    }\n\n    a.action-btn {margin-left: 5px; margin-bottom: 5px;}\n</style>\n{% endblock %}\n\n{% block admin_scripts %}\n<script src=\"{{ asset('/js/select2/select2.js') }}\"></script>\n<script src=\"{{ asset('/bundles/newscoopnewscoop/js/jquery.dynatable.js') }}\"></script>\n{% endblock %}\n\n{% block admin_content %}\n<div class=\"row\">\n    <div class=\"col-md-3 aside\">\n        <ul id=\"status-filter\" class=\"filters\">\n            <li class=\"vspace\">{{ 'users.status.status'|trans }}</li>\n            <li><a href=\"#registered\" class=\"active dynatable-filter filter-registered\" data-filter=\"registered\">{{ 'users.status.registered'|trans }} (<span>{{ registered }}</span>)</a></li>\n            <li><a href=\"#pending\" class=\"dynatable-filter filter-pending\" data-filter=\"pending\">{{ 'users.status.pending'|trans }} (<span>{{ pending }}</span>)</a></li>\n            <li><a href=\"#deleted\" class=\"dynatable-filter filter-deleted\" data-filter=\"deleted\">{{ 'users.status.deleted'|trans }} (<span>{{ deleted }}</span>)</a></li>\n            <li><a href=\"#active\" class=\"dynatable-filter filter-active\" data-filter=\"active\">{{ 'users.status.active'|trans }} (<span>{{ active }}</span>)</a></li>\n        </ul>\n\n        <ul id=\"status-filter\" class=\"filters\">\n            <li class=\"vspace\">User Types</li>\n\n            {% for group in userGroups %}\n            <li><input type=\"checkbox\" class=\"dynatable-user-group\" name=\"user-groups[]\" value=\"{{group.id}}\" /> {{ group.name }}</li>\n            {% endfor %}\n        </ul>\n\n        <div id=\"chart\"></div>\n    </div>\n\n    <div class=\"col-md-10\">\n        <table id=\"users-table\" class=\"table table-bordered table-hover table-striped\" style=\"word-wrap: break-word;table-layout: fixed;\">\n        <thead>\n          <tr>\n            <th data-dynatable-column=\"username\">{{ 'Username'|trans }}</th>\n            <th data-dynatable-column=\"first_name\">{{ 'First Name'|trans }}</th>\n            <th data-dynatable-column=\"last_name\">{{ 'Last Name'|trans }}</th>\n            <th>{{ 'Email'|trans }}</th>\n            <th  data-dynatable-column=\"types\" data-dynatable-no-sort=\"true\">{{ 'User Type'|trans }}</th>\n            <th  data-dynatable-column=\"created\">{{ 'users.created'|trans }}</th>\n            <th  data-dynatable-column=\"updated\">{{ 'users.updated'|trans }}</th>\n            <th style=\"width: 220px;\">{{ 'users.table.actions.actions'|trans }}</th>\n          </tr>\n        </thead>\n        <tbody>\n        </tbody>\n        </table>\n    </div>\n    <div class=\"cleafix\"></div>\n</div>\n\n<script type=\"text/javascript\">\n    var dynatable = $('#users-table')\n    .bind('dynatable:init', function (e, dynatable) {\n        var hash = window.location.hash.substring(1);\n        if (hash != \"\") {\n            $('.dynatable-filter').removeClass('active');\n            $('.dynatable-filter.filter-'+hash).addClass('active');\n            dynatable.queries.add('filter', hash);\n        } else {\n            dynatable.queries.add('filter', 'registered');\n        }\n    })\n    .dynatable({\n        inputs: {\n            paginationClass: 'pagination',\n            paginationActiveClass: 'current',\n            paginationDisabledClass: 'unavailable',\n            paginationPrev: '&laquo;',\n            paginationNext: '&raquo;',\n            pageText: '{{ 'users.table.table_messages.page'|trans }}',\n            perPageText: '{{ 'users.table.table_messages.perPageText'|trans }}',\n            pageText: '{{ 'users.table.table_messages.pageText'|trans }}',\n            recordCountPageBoundTemplate: '{{ 'users.table.table_messages.recordCountPageBoundTemplate'|trans }}',\n            recordCountPageUnboundedTemplate: '{{ 'users.table.table_messages.recordCountPageUnboundedTemplate'|trans }}',\n            recordCountTotalTemplate: '{{ 'users.table.table_messages.recordCountTotalTemplate'|trans }}',\n            recordCountFilteredTemplate: '{{ 'users.table.table_messages.recordCountFilteredTemplate'|trans }}',\n            recordCountText: '{{ 'users.table.table_messages.recordCountText'|trans }}',\n            recordCountTextTemplate: '{{ 'users.table.table_messages.recordCountTextTemplate'|trans }}',\n            recordCountTemplate: '{{ 'users.table.table_messages.recordCountTemplate'|trans }}',\n            processingText: '{{ 'users.table.table_messages.processingText'|trans }}'\n        },\n        dataset: {\n            ajax: true,\n            ajaxUrl: Routing.generate('newscoop_newscoop_users_loadusers'),\n            ajaxOnLoad: false,\n            records: [],\n            perPageDefault: 10,\n            perPageOptions: [10,20,50,100],\n        },\n        features: {\n            paginate: true,\n        },\n        writers: {\n            _cellWriter: function (column, record) {\n                if (column.label == '{{ 'users.table.actions.actions'|trans }}') {\n                    column.attributeWriter = function(record) {\n                        var html = \"\";\n                        for (index = 0; index < record['links'].length; ++index) {\n                            var el = record['links'][index];\n\n                            if (el['rel'] == 'edit') {\n                                html += \"<a class='btn btn-xs btn-success action-btn' href=\"+el['href']+\">{{ 'users.table.actions.edit'|trans }}</a>\";\n                            }\n\n                            if (el['rel'] == 'token' && record['status'] == \"Inactive\") {\n                                html += \"<a class='btn btn-xs btn-success action-btn js-resend-mail' href=\"+el['href']+\">{{ 'users.table.actions.resend_email'|trans }}</a>\";\n                            }\n\n                            if (el['rel'] == 'rename') {\n                                html += \"<a class='btn btn-xs btn-success action-btn' href=\"+el['href']+\">{{ 'users.table.actions.rename'|trans }}</a>\";\n                            }\n\n                            if (el['rel'] == 'delete' && record['status'] != \"Deleted\") {\n                                html += \"<a class='btn btn-xs btn-danger action-btn js-remove-user' data-user-id='\"+record.id+\"' href=\"+el['href']+\">{{ 'users.table.actions.remove'|trans }}</a>\";\n                            }\n                        }\n                        return html;\n                    }\n                }\n\n                if (column.id == 'created') {\n                    column.attributeWriter = function(record) {\n                        return record.created.date;\n                    }\n                }\n\n                if (column.id == 'updated') {\n                    column.attributeWriter = function(record) {\n                        return record.updated.date;\n                    }\n                }\n\n                var html = column.attributeWriter(record),\n                    td = '<td';\n\n                if (column.hidden || column.textAlign) {\n                  td += ' style=\"';\n                  // keep cells for hidden column headers hidden\n                  if (column.hidden) {\n                    td += 'display: none;';\n                  }\n                  // keep cells aligned as their column headers are aligned\n                  if (column.textAlign) {\n                    td += 'text-align: ' + column.textAlign + ';';\n                  }\n                  td += '\"';\n                }\n                if (column.cssClass) {\n                  td += ' class=\"' + column.cssClass + '\"';\n                }\n\n                return td + '>' + html + '</td>';\n            }\n        }\n    }).data('dynatable');\n\n    $('.dynatable-filter').click(function(e){\n        $('.dynatable-filter').removeClass('active');\n        $(this).addClass('active');\n        dynatable.queries.add('filter', $(this).data('filter'));\n        dynatable.process();\n    });\n\n    $('.dynatable-user-group').click(function(e){\n        var values = [];\n        $('.dynatable-user-group').each(function(key, el){\n            if ($(el).is(':checked')) {\n                values.push($(el).val());\n            }\n        });\n\n        dynatable.queries.add('user-group', values);\n        dynatable.process();\n    });\n\n    $('.js-remove-user').live('click', function(event){\n        event.preventDefault();\n        var r = confirm(\"{{ 'users.table.confirm_remove'|trans }}\");\n        if (r == true) {\n            $.getJSON($(this).attr('href'), {'format': 'json'}, function(data, textStatus, jqXHR) {\n                if (data.message) {\n                    flashMessage(data.message, 'error');\n                    return false;\n                }\n                dynatable.process();\n                flashMessage('{{ 'User was deleted.'|trans }}');\n            });\n        }\n    });\n\n    $('.js-resend-mail').live('click', function(event){\n        event.preventDefault();\n        $.getJSON($(this).attr('href'), {'format': 'json'}, function(data, textStatus, jqXHR) {\n            if (data.message) {\n                flashMessage(data.message, 'error');\n                return false;\n            }\n\n            flashMessage('{{ 'New confirmation email was sent to user.'|trans }}');\n        });\n    });\n</script>\n<script type=\"text/javascript\" src=\"https://www.google.com/jsapi\"></script>\n<script type=\"text/javascript\">\n    // Load the Visualization API and the piechart package.\n    google.load('visualization', '1.0', {'packages':['corechart']});\n\n    // Set a callback to run when the Google Visualization API is loaded.\n    google.setOnLoadCallback(drawChart);\n\n    // Callback that creates and populates a data table,\n    // instantiates the pie chart, passes in the data and\n    // draws it.\n    function drawChart() {\n\n        // Create the data table.\n        var data = new google.visualization.DataTable();\n        data.addColumn('string', 'Type');\n        data.addColumn('number', 'Users');\n        data.addRows([\n            ['Newscoop', {{active_logins.newscoop }}],\n            ['External', {{active_logins.external }}]\n        ]);\n\n        // Set chart options\n        var options = {\n            'title': '{{ 'users.chart.title'|trans }}',\n            'width':150,\n            'height':150,\n            'legend': {\n                'position': 'bottom'\n            }\n        };\n\n        // Instantiate and draw our chart, passing in some options.\n        var chart = new google.visualization.PieChart(document.getElementById('chart'));\n        chart.draw(data, options);\n    }\n</script>\n{% endblock %}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/admin_layout.html.twig",
    "content": "{% trans_default_domain \"home\" %}\n<!DOCTYPE HTML>\n<html lang=\"{{ localeFromCookie }}\" dir=\"ltr\">\n<head>\n    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />\n    <meta http-equiv=\"Expires\" content=\"now\" />\n    <title>{% block admin_title %}Newscoop Admin{% endblock %}</title>\n\n    <link rel=\"shortcut icon\" href=\"{{ Newscoop['ADMIN_STYLE_URL'] }}/images/7773658c3ccbf03954b4dacb029b2229.ico\" />\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"{{ Newscoop['ADMIN_STYLE_URL'] }}/jquery-ui-1.8.6.custom.css\" />\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"{{ Newscoop['ADMIN_STYLE_URL'] }}/admin_stylesheet.css\" />\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"{{ Newscoop['ADMIN_STYLE_URL'] }}/admin_stylesheet_new.css\" />\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"{{ Newscoop['ADMIN_STYLE_URL'] }}/content.css\" />\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"{{ Newscoop['ADMIN_STYLE_URL'] }}/layout.css\" />\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"{{ Newscoop['ADMIN_STYLE_URL'] }}/ColVis.css\" />\n    <link rel=\"stylesheet\" media=\"screen\" href=\"{{ asset('bundles/newscoopnewscoop/css/bootstrap.min.css') }}\" />\n    <link rel=\"stylesheet\" media=\"screen\" href=\"{{ asset('bundles/newscoopnewscoop/css/plugin.css') }}\" />\n    {% block admin_stylesheets %}{% endblock %}\n\n    <script src=\"{{ Newscoop['WEBSITE_URL'] }}/js/jquery/jquery-1.7.1.min.js\" type=\"text/javascript\"></script>\n    <script src=\"{{ Newscoop['WEBSITE_URL'] }}/js/jquery/jquery-ui-1.8.6.custom.min.js\" type=\"text/javascript\"></script>\n    <script src=\"{{ asset('bundles/newscoopnewscoop/js/bootstrap.min.js') }}\"></script>\n    <script src=\"{{ Newscoop['WEBSITE_URL'] }}/js/jquery/jquery.cookie.js\" type=\"text/javascript\"></script>\n    <script src=\"{{ Newscoop['WEBSITE_URL'] }}/js/jquery/jquery.dataTables.min.js\" type=\"text/javascript\"></script>\n    <script src=\"{{ Newscoop['WEBSITE_URL'] }}/js/jquery/ColVis.min.js\" type=\"text/javascript\"></script>\n    <script src=\"{{ Newscoop['WEBSITE_URL'] }}/js/admin.js\" type=\"text/javascript\"></script>\n    <script src=\"{{ Newscoop['WEBSITE_URL'] }}/js/jquery/fg.menu.js\" type=\"text/javascript\"></script>\n    <script src=\"{{ Newscoop['WEBSITE_URL'] }}/js/jquery/jquery.widgets.js\" type=\"text/javascript\"></script>\n    <script src=\"{{ Newscoop['WEBSITE_URL'] }}/js/jquery/fancybox/jquery.fancybox-1.3.4.pack.js\" type=\"text/javascript\"></script>\n    <script src=\"{{ asset('bundles/fosjsrouting/js/router.js') }}\"></script>\n    <script src=\"{{ path('fos_js_routing_js', {\"callback\": \"fos.Router.setData\"}) }}\"></script>\n    <script src=\"{{ asset('bundles/bazingajstranslation/js/translator.min.js') }}\"></script>\n    <script src=\"{{ url('bazinga_jstranslation_js') }}?locales={{ localeFromCookie }},en\"></script>\n    {% block admin_scripts %}{% endblock %}\n\n    {% if localeFromCookie != 'en' %}\n    <script src=\"{{ Newscoop['WEBSITE_URL'] }}/js/jquery/i18n/jquery.ui.datepicker-{{localeFromCookie}}.js\" type=\"text/javascript\"></script>\n    {% endif %}\n    <script src=\"{{ Newscoop['WEBSITE_URL'] }}/js/jquery/jquery-ui-timepicker-addon.min.js\" type=\"text/javascript\"></script>\n\n    <script type=\"text/javascript\"><!--\n    var website_url = '{{ Newscoop['WEBSITE_URL'] }}';\n    var g_admin_url = '/{{ Newscoop['ADMIN'] }}';\n    var g_security_token = '{{ SecurityToken }}';\n    var g_admin_img = '{{ Newscoop[\"ADMIN_IMAGE_BASE_URL\"] }}';\n    var popupFlash = false;\n\n    var localizer = localizer || {\n        processing: '{{ 'Processing...'|trans }}',\n        session_expired: '{{ 'Session expired.'|trans }}',\n        please: '{{ 'Please'|trans }}',\n        login: '{{ 'login'|trans }}',\n        connection_interrupted : '{{ 'Connection interrupted'|trans }}',\n        try_again_later : '{{ 'try again later'|trans }}'\n    };\n\n    $(function() {\n        $.datepicker.setDefaults( $.datepicker.regional['{{localeFromCookie}}'] );\n    });\n    //--></script>\n\n    <link rel=\"shortcut icon\" href=\"{{ Newscoop['ADMIN_STYLE_URL'] }}/images/7773658c3ccbf03954b4dacb029b2229.ico\" />\n\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"{{ Newscoop['ADMIN_STYLE_URL'] }}/fg.menu.css\" />\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"{{ Newscoop['ADMIN_STYLE_URL'] }}/widgets.css\" />\n    <link rel=\"stylesheet\" type=\"text/css\" href=\"{{ Newscoop['WEBSITE_URL'] }}/js/jquery/fancybox/jquery.fancybox-1.3.4.css\" />\n\n    <!--[if IE 6]>\n    <style type=\"text/css\">\n        .fg-menu-ipod .fg-menu li { width: 95%; }\n        .fg-menu-ipod .ui-widget-content { border:0; }\n    </style>\n    <![endif]-->\n\n    {% if strpos(app.request.server.get('HTTP_REFERER'), 'login.php')  %}\n    <script type=\"text/javascript\">\n    <!--\n    if (opener && !opener.closed && opener.setSecurityToken) {\n        opener.setSecurityToken(g_security_token);\n        opener.focus();\n        window.close();\n    }\n    //-->\n    </script>\n    {% endif %}\n    <script type=\"text/javascript\">\n    <!--\n    $(function(){\n        // BUTTONS\n        $('.fg-button-menu').hover(\n            function(){ $(this).removeClass('fg-button-ui-state-default').addClass('fg-button-ui-state-focus'); },\n            function(){ $(this).removeClass('fg-button-ui-state-focus').addClass('fg-button-ui-state-default'); }\n        );\n    });\n    //-->\n    </script>\n    <script type=\"text/javascript\">\n      $(document).ready(function() {\n        var sticky_limit = 0;\n        $(window).scroll(function() {\n            if ($('.sticky').size() == 0) {\n                return false; // no sticky\n            }\n\n            var windowTop = $(window).scrollTop();\n            var stickyTop = $('.sticky').offset().top;\n            if (windowTop > stickyTop && sticky_limit == 0) {\n                $('.sticky').css('width', '100%').css('position', 'fixed').css('top', '0');\n                sticky_limit = stickyTop;\n            }\n            if (sticky_limit > 0 && windowTop < sticky_limit) {\n                $('.sticky').css('position', 'relative');\n                sticky_limit = 0;\n            }\n        });\n      });\n\n      var user_msgs = '';\n      {% if app.request.session.has('camp_user_msgs') %}\n      user_msgs = \"{{ app.request.session.get('camp_user_msgs')[0]['msg']|replace({'\"': \"'\"}) }}\";\n      {{ app.request.session.set('camp_user_msgs', {}) }}\n      {% endif %}\n    </script>\n</head>\n<body class=\"container admin-font-size\">\n{% block admin_page_menu_bar %}\n{% include \"NewscoopNewscoopBundle::admin_menu.html.twig\" %}\n{% set breadcrumbsMenu = knp_menu_get('breadcrumb') %}\n{% set breadcrumbsMenuArray = getBreadcrumbsArray(breadcrumbsMenu) %}\n{% if breadcrumbsMenuArray|length > 1 %}\n    <div class=\"row\">\n        <ol class=\"breadcrumb\">\n        {% for key, menu in breadcrumbsMenuArray %}\n            {% if (menu['label'] != 'root') %}\n                {% if loop.index0 != loop.length-1 %}\n                    <li><a href=\"{{ menu['uri'] }}\">{{ menu['label'] }}</a></li>\n                {% else %}\n                   <li>{{ menu['label'] }}</li>\n                {% endif %}\n            {% endif %}\n        {% endfor %}\n        </ol>\n    </div>\n{% endif %}\n{% endblock %}\n\n{% block admin_page_title_box %}\n<div class=\"toolbar row\"><span class=\"article-title\">\n    {% block admin_page_title_content %}{% endblock %}\n</span></div>\n{% endblock %}\n\n<div class=\"content\">\n{% block admin_content %}{% endblock %}\n</div>\n\n{% block admin_page_footer_box %}\n<div class=\"footer row\">\n    <a href=\"http://newscoop.sourcefabric.org/\" target=\"_blank\">{{ NewscoopVersion.getPackage() }}</a>, the open content management system for professional journalists. Version: {{ NewscoopVersion.getRelease() }}\n    <br />\n    &copy; {{ NewscoopVersion.getCopyrightYear() }} \n    <a href=\"{{ NewscoopVersion.getWebURL() }}\" target=\"_blank\">{{ NewscoopVersion.getOrganization() }}</a> {{ NewscoopVersion.getPackage() }} is distributed under {{ NewscoopVersion.getLicense() }}   \n</div>\n</body>\n{% endblock %}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/admin_menu.html.twig",
    "content": "<div class=\"meta-bar row\">\n    {% if NewscoopUser %}\n    <ul class=\"pull-right\">\n        <li>{{ \"Signed in: $1\"|trans({'$1': '<strong>' ~ NewscoopUser.getFirstName() ~ ' ' ~ NewscoopUser.getLastName() ~ '</strong>'}, 'home')|raw }}</li>\n        <li><a href=\"{{ generateZendUrl('application', 'help', 'admin') }}\" target=\"_blank\">{{ 'Help'|trans({}, 'home') }}</a></li>\n        <li><a href=\"/{{ Newscoop['ADMIN'] }}/logout\">{{ 'Logout'|trans({}, 'messages') }}</a></li>\n    </ul>\n    {% endif %}\n</div>\n\n{% set menuItem = knp_menu_get('main_modern') %}\n<nav class=\"navbar navbar-default row\" role=\"navigation\">\n    <div class=\"collapse navbar-collapse\" id=\"bs-example-navbar-collapse-1\">\n        {{ knp_menu_render(menuItem, {'template': 'NewscoopNewscoopBundle:Menu:knp_menu.html.twig'}) }}\n        <div class=\"logo\"></div>\n    </div>\n</nav>"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/form_fields.html.twig",
    "content": "{% block choice_widget_expanded %}\n{% spaceless %}\n    <div {{ block('widget_container_attributes') }}>\n    {% for child in form %}\n        {% if multiple %}\n            <div class=\"checkbox\">\n        {% else %}\n            <div class=\"radio\">\n        {% endif %}\n\n        {{ form_widget(child) }}\n        </div>\n    {% endfor %}\n    </div>\n{% endspaceless %}\n{% endblock choice_widget_expanded %}\n\n{% block checkbox_widget %}\n{% spaceless %}\n{% if label is empty %}\n    {% set label = name|humanize %}\n{% endif %}\n    <label  for=\"{{ id }}\">\n        <input type=\"checkbox\" {{ block('widget_attributes') }}{% if value is defined %} value=\"{{ value }}\"{% endif %}{% if checked %} checked=\"checked\"{% endif %} />{{ label|trans({}, translation_domain) }}\n    </label>\n{% endspaceless %}\n{% endblock checkbox_widget %}\n\n{% block radio_widget %}\n{% spaceless %}\n{% if label is empty %}\n    {% set label = name|humanize %}\n{% endif %}\n    <label  for=\"{{ id }}\">\n        <input type=\"radio\" {{ block('widget_attributes') }}{% if value is defined %} value=\"{{ value }}\"{% endif %}{% if checked %} checked=\"checked\"{% endif %} />{{ label|trans({}, translation_domain) }}\n    </label>\n{% endspaceless %}\n{% endblock radio_widget %}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/forms.html.twig",
    "content": "{% extends 'form_div_layout.html.twig' %}\n{% block form_row %}\n{% spaceless %}\n    <div class=\"form-group{% if errors|length > 0 %} has-error{% endif %}\" id=\"has-error\">\n        <div {% if label %}class=\"col-lg-10\"{% endif %}>\n        {% if errors|length > 0 %}\n        {{ form_widget(form, {'attr' : {'style' : 'border: 1px solid #b94a48; background-color: #FFF7F7;' }}) }}\n        {% else %}\n        {{ form_widget(form) }}\n        {% endif %}\n        {% for error in errors %}\n            <span class=\"help-block form-error\">\n                {{\n                    error.messagePluralization is null\n                    ? error.messageTemplate|trans(error.messageParameters, 'validators')\n                    : error.messageTemplate|transchoice(error.messagePluralization, error.messageParameters, 'validators')\n                }}\n            </span>\n        {% endfor %}\n        </div>\n    </div>\n{% endspaceless %}\n{% endblock form_row %}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Resources/views/tooltip.html.twig",
    "content": "<style type=\"text/css\" media=\"screen\">\n.coverMessageButton {\n    overflow:hidden;\n    text-align:left;\n    text-transform:uppercase;\n    font-size:11px;\n    font-weight:600;\n    padding-left:22px;\n    cursor:pointer;\n    margin-bottom:10px;\n    line-height:16px;\n}\n\n.coverMessageButton:before {\n    content:\"\";\n    display:inline-block;\n    height:1px;\n    position:relative;\n    vertical-align:middle;\n    width:100%;\n    top:-2px;\n    right:.6em;\n    margin-left:-100%;\n    background-color:#ccc;\n}\n\n.coverMessageButton:after {\n    background-color:#ccc;\n    content:\"\";\n    display:inline-block;\n    height:1px;\n    position:relative;\n    vertical-align:middle;\n    width:100%;\n    top:-2px;\n    left:.6em;\n    margin-right:-100%;\n}\n\n.coverMessageButton .glyphicon {\n    font-size:12px;\n    margin-right:4px;\n}\n\n.coverMessage {\n    margin-top:-19px;\n    display:none;\n    font-size:13px;\n    line-height:18px;\n    border-color:#ccc;\n    border-style:solid;\n    border-width:0 1px 1px;\n    padding:20px;\n}\n\n.coverMessage.open {\n    display:block;\n}\n@font-face {\n  font-family: 'Glyphicons Halflings';\n  src: url('../../../../public/bundles/newscoopnewscoop/fonts/glyphicons-halflings-regular.eot');\n  src: url('../../../../public/bundles/newscoopnewscoop/fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../../../../public/bundles/newscoopnewscoop/fonts/glyphicons-halflings-regular.woff') format('woff'), url('../../../../public/bundles/newscoopnewscoop/fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../../../../public/bundles/newscoopnewscoop/fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg');\n}\n.glyphicon {\n  position: relative;\n  top: 1px;\n  display: inline-block;\n  font-family: 'Glyphicons Halflings';\n  font-style: normal;\n  font-weight: normal;\n  line-height: 1;\n\n  -webkit-font-smoothing: antialiased;\n  -moz-osx-font-smoothing: grayscale;\n}\n.glyphicon-question-sign:before {\n  content: \"\\e085\";\n}\n</style>\n<div class=\"coverMessageButton\"><span class=\"glyphicon glyphicon-question-sign\"></span>\n    {{ 'importantmessage'|trans }}\n</div>\n<div class=\"coverMessage\">\n{{ tipMessage }}\n{% if tipCode %}<pre>{{ tipCode }}</pre>{% endif %}\n</div>\n<script type=\"text/javascript\">\n    $('.coverMessageButton').click(function(e){\n        e.preventDefault();\n        $('.coverMessage').toggle();\n    })\n</script>"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Routing/PluginsLoader.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n\nnamespace Newscoop\\NewscoopBundle\\Routing;\n \nuse Symfony\\Component\\Config\\Loader\\LoaderInterface;\nuse Symfony\\Component\\Config\\Loader\\LoaderResolverInterface;\nuse Symfony\\Component\\Routing\\Route;\nuse Symfony\\Component\\Routing\\RouteCollection;\nuse Newscoop\\Services\\Plugins\\ManagerService;\nuse Symfony\\Component\\Config\\FileLocator;\nuse Symfony\\Component\\Routing\\Loader\\YamlFileLoader;\n \nclass PluginsLoader implements LoaderInterface\n{\n    protected $loaded = false;\n\n    /**\n     * @var ManagerService\n     */\n    protected $pluginsManager;\n\n    protected $container;\n\n    public function __construct($pluginsManager, $container) {\n        $this->pluginsManager = $pluginsManager;\n        $this->container = $container;\n    }\n \n    public function load($resource, $type = null)\n    {\n        if (true === $this->loaded) {\n            throw new \\RuntimeException('Do not add this loader twice');\n        }\n\n        $routes = new \\Symfony\\Component\\Routing\\RouteCollection();\n\n        $availablePlugins = $this->pluginsManager->getInstalledPlugins();\n        $dirs = array();\n        foreach ($availablePlugins as $plugin) {\n            $pluginPath = explode('\\\\', $plugin);\n            $directoryPath = realpath(__DIR__ . '/../../../../plugins/'.$pluginPath[0].'/'.$pluginPath[1].'/Resources/config/routing.yml');\n            if ($directoryPath) {\n                $dirs[] = realpath(__DIR__ . '/../../../../plugins/'.$pluginPath[0].'/'.$pluginPath[1].'/Resources/config/');\n            }\n        }\n\n        $routesCollection = new \\Symfony\\Component\\Routing\\RouteCollection();\n        foreach ($dirs as $directory) {\n            $routeLoader = $this->container->get('routing.loader');\n            $routesCollection->addCollection($routeLoader->load($directory.'/routing.yml'));\n        }\n \n        return $routesCollection;\n    }\n \n    public function supports($resource, $type = null)\n    {\n        return 'plugins' === $type;\n    }\n \n    public function getResolver()\n    {}\n \n    public function setResolver(LoaderResolverInterface $resolver)\n    {}\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Security/Encoder/NewscoopPasswordEncoder.php",
    "content": "<?php\n\nnamespace Newscoop\\NewscoopBundle\\Security\\Encoder;\n\nuse Symfony\\Component\\Security\\Core\\Encoder\\PasswordEncoderInterface;\n\nclass NewscoopPasswordEncoder implements PasswordEncoderInterface\n{\n    public function encodePassword($raw, $salt)\n    {\n        $user =  new \\Newscoop\\Entity\\User();\n        return implode($user::HASH_SEP, array(\n            $user::HASH_ALGO,\n            $salt,\n            hash($user::HASH_ALGO, $salt . $raw),\n        ));\n    }\n\n    public function isPasswordValid($encoded, $raw, $salt)\n    {\n        return $encoded === $this->encodePassword($raw, $salt);\n    }\n\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Security/Http/Authentication/AbstractAuthenticationHandler.php",
    "content": "<?php\n\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2015 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace  Newscoop\\NewscoopBundle\\Security\\Http\\Authentication;\n\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\Security\\Http\\Authentication\\DefaultAuthenticationSuccessHandler;\n\n/**\n * Abstract authentication success handler\n */\nabstract class AbstractAuthenticationHandler extends DefaultAuthenticationSuccessHandler\n{\n    /**\n     * Sets NO_CACHE cookie;\n     *\n     * @param Request $request Request\n     */\n    public function setNoCacheCookie(Request $request)\n    {\n        setcookie('NO_CACHE', '1', null, '/', '.'.$this->extractDomain($request->getHost()));\n    }\n\n    private function extractDomain($domain)\n    {\n        if (preg_match(\"/(?P<domain>[a-z0-9][a-z0-9\\-]{1,63}\\.[a-z\\.]{2,6})$/i\", $domain, $matches)) {\n            return $matches['domain'];\n        } else {\n            return $domain;\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Security/Http/Authentication/AbstractLogoutHandler.php",
    "content": "<?php\n\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2015 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace  Newscoop\\NewscoopBundle\\Security\\Http\\Authentication;\n\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\Security\\Http\\Logout\\DefaultLogoutSuccessHandler;\n\n/**\n * Abstract logout success handler\n */\nabstract class AbstractLogoutHandler extends DefaultLogoutSuccessHandler\n{\n    /**\n     * Unsets NO_CACHE cookie. Sets its to \"NO\".\n     *\n     * @param Request $request Request\n     */\n    public function unsetNoCacheCookie(Request $request)\n    {\n        setcookie('NO_CACHE', 'NO', null, '/', '.'.$this->extractDomain($request->getHost()));\n    }\n\n    private function extractDomain($domain)\n    {\n        if (preg_match(\"/(?P<domain>[a-z0-9][a-z0-9\\-]{1,63}\\.[a-z\\.]{2,6})$/i\", $domain, $matches)) {\n            return $matches['domain'];\n        } else {\n            return $domain;\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Security/Http/Authentication/AuthenticationFailedHandler.php",
    "content": "<?php\n\nnamespace Newscoop\\NewscoopBundle\\Security\\Http\\Authentication;\n\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException;\nuse Symfony\\Component\\Security\\Http\\Authentication\\DefaultAuthenticationFailureHandler;\n\n/**\n * Custom authentication success handler\n */\nclass AuthenticationFailedHandler extends DefaultAuthenticationFailureHandler\n{\n    /**\n     * This is called when an interactive authentication attempt fails. This is\n     * called by authentication listeners inheriting from\n     * AbstractAuthenticationListener.\n     *\n     * @param Request                 $request\n     * @param AuthenticationException $exception\n     *\n     * @return Response The response to return, never null\n     */\n    function onAuthenticationFailure(Request $request, AuthenticationException $exception)\n    {\n        return parent::onAuthenticationFailure($request, $exception);\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Security/Http/Authentication/AuthenticationFrontendSuccessHandler.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\NewscoopBundle\\Security\\Http\\Authentication;\n\nuse Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Symfony\\Component\\Security\\Http\\HttpUtils;\n\n/**\n * Custom authentication success handler for frontend\n */\nclass AuthenticationFrontendSuccessHandler extends AbstractAuthenticationHandler\n{\n    protected $authAdapter;\n\n    protected $userService;\n\n    /**\n     * Constructor\n     *\n     * @param HttpUtils                                  $httpUtils\n     * @param array                                      $options\n     * @param Newscoop\\Services\\Auth\\DoctrineAuthService $authAdapter\n     * @param UserService                                $userService\n     */\n    public function __construct(HttpUtils $httpUtils, array $options, $authAdapter, $userService)\n    {\n        $this->authAdapter = $authAdapter;\n        $this->userService = $userService;\n\n        parent::__construct($httpUtils, $options);\n    }\n\n    /**\n     * This is called when an interactive authentication attempt succeeds. This\n     * is called by authentication listeners inheriting from AbstractAuthenticationListener.\n     * @param Request        $request\n     * @param TokenInterface $token\n     *\n     * @return Response\n     */\n    public function onAuthenticationSuccess(Request $request, TokenInterface $token)\n    {\n        $user = $token->getUser();\n        $zendAuth = \\Zend_Auth::getInstance();\n        $this->authAdapter->setEmail($user->getEmail())->setPassword($request->request->get('password'));\n        $zendAuth->authenticate($this->authAdapter);\n\n        $OAuthtoken = $this->userService->loginUser($user, 'oauth_authorize');\n        $session = $request->getSession();\n        $session->set('_security_oauth_authorize', serialize($OAuthtoken));\n        $this->setNoCacheCookie($request);\n\n        return parent::onAuthenticationSuccess($request, $token);\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Security/Http/Authentication/AuthenticationSuccessHandler.php",
    "content": "<?php\n\nnamespace Newscoop\\NewscoopBundle\\Security\\Http\\Authentication;\n\nuse Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Symfony\\Component\\Security\\Http\\HttpUtils;\nuse Symfony\\Component\\Security\\Core\\SecurityContextInterface;\nuse Symfony\\Component\\Security\\Core\\Exception\\AuthenticationException;\n\n/**\n * Custom authentication success handler\n */\nclass AuthenticationSuccessHandler extends AbstractAuthenticationHandler\n{\n    protected $authAdapter;\n\n    protected $em;\n\n    protected $userService;\n\n    /**\n     * Constructor\n     *\n     * @param Zend_Auth $zendAuth\n     */\n    public function __construct(HttpUtils $httpUtils, array $options, $authAdapter, $em, $userService)\n    {\n        $this->authAdapter = $authAdapter;\n        $this->em = $em;\n        $this->userService = $userService;\n\n        parent::__construct($httpUtils, $options);\n    }\n\n    /**\n     * This is called when an interactive authentication attempt succeeds. This\n     * is called by authentication listeners inheriting from AbstractAuthenticationListener.\n     * @param  Request        $request\n     * @param  TokenInterface $token\n     * @return Response       The response to return\n     */\n    public function onAuthenticationSuccess(Request $request, TokenInterface $token)\n    {\n        $user = $token->getUser();\n\n        // This should actually be handle by the AuthenticationFailedHandler\n        if (!$user->isAdmin()) { // can't go into admin\n            $request->getSession()->set(\n                SecurityContextInterface::AUTHENTICATION_ERROR,\n                new AuthenticationException('User is not an admin.')\n            );\n\n            return $this->httpUtils->createRedirectResponse($request, 'admin_login');\n        }\n\n        \\LoginAttempts::DeleteOldLoginAttempts();\n        \\LoginAttempts::ClearLoginAttemptsForIp();\n\n        $this->authAdapter->setUsername($user->getUsername())->setPassword($request->request->get('_password'))->setAdmin(true);\n        \\Zend_Auth::getInstance()->authenticate($this->authAdapter);\n\n        $OAuthtoken = $this->userService->loginUser($user, 'oauth_authorize');\n        $session = $request->getSession();\n        $session->set('_security_oauth_authorize', serialize($OAuthtoken));\n        $frontendToken = $this->userService->loginUser($user, 'frontend_area');\n        $session = $request->getSession();\n        $session->set('_security_frontend_area', serialize($frontendToken));\n\n        \\Article::UnlockByUser($user->getId());\n\n        $request->setLocale($request->request->get('login_language'));\n        $this->setNoCacheCookie($request);\n        $user->setLastLogin(new \\DateTime());\n        $this->em->flush();\n\n        if ($request->get('ajax') === 'true') {\n            // close popup with login.\n            return new Response(\"<script type=\\\"text/javascript\\\">window.parent.g_security_token = '\".\\SecurityToken::GetToken().\"';window.parent.$(window.parent.document.body).data('loginDialog').dialog('close');window.parent.setSecurityToken(window.parent.g_security_token);</script>\");\n        }\n\n        return parent::onAuthenticationSuccess($request, $token);\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Security/Http/Authentication/FrontendLogoutSuccessHandler.php",
    "content": "<?php\n/**\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Security\\Http\\Authentication;\n\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\Security\\Http\\HttpUtils;\nuse Symfony\\Component\\Security\\Core\\Authentication\\Token\\AnonymousToken;\n\n/**\n * Custom authentication success handler.\n */\nclass FrontendLogoutSuccessHandler extends AbstractLogoutHandler\n{\n    protected $securityContext;\n\n    /**\n     * @param HttpUtils $httpUtils\n     * @param string    $targetUrl\n     */\n    public function __construct(HttpUtils $httpUtils, $targetUrl, $securityContext)\n    {\n        parent::__construct($httpUtils, $targetUrl);\n        $this->securityContext = $securityContext;\n    }\n\n    /**\n     * Creates a Response object to send upon a successful logout.\n     *\n     * @param Request $request\n     *\n     * @return Response never null\n     */\n    public function onLogoutSuccess(Request $request)\n    {\n        $this->targetUrl = $request->query->get('_target_path', $request->query->get('url', $this->targetUrl));\n        $zendAuth = \\Zend_Auth::getInstance();\n        $zendAuth->clearIdentity();\n        // logout from OAuth\n        $token = new AnonymousToken(null, 'anon.');\n        $session = $request->getSession();\n        $request->getSession()->invalidate();\n        $session->set('_security_oauth_authorize', serialize($token));\n        $this->securityContext->setToken($token);\n\n        $this->unsetNoCacheCookie($request);\n\n        return parent::onLogoutSuccess($request);\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Security/Http/Authentication/InteractiveDoctrineAuthService.php",
    "content": "<?php\n\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2015 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Security\\Http\\Authentication;\n\n/**\n * Temporary class for remember_me token based authentication\n */\nclass InteractiveDoctrineAuthService implements \\Zend_Auth_Adapter_Interface\n{\n    public $user = null;\n\n    /**\n     * Perform authentication attempt\n     *\n     * @return \\Zend_Auth_Result\n     */\n    public function authenticate()\n    {\n        if (empty($this->user)) {\n            return new \\Zend_Auth_Result(\\Zend_Auth_Result::FAILURE_IDENTITY_NOT_FOUND, NULL);\n        }\n\n        if (!$this->user->isActive()) {\n            return new \\Zend_Auth_Result(\\Zend_Auth_Result::FAILURE_UNCATEGORIZED, NULL);\n        }\n\n        return new \\Zend_Auth_Result(\\Zend_Auth_Result::SUCCESS, $this->user->getId());\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Security/Http/Authentication/InteractiveLogin.php",
    "content": "<?php\n\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2015 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Security\\Http\\Authentication;\n\nuse Symfony\\Component\\Security\\Http\\RememberMe\\TokenBasedRememberMeServices;\nuse Symfony\\Component\\HttpFoundation\\Request;\n\n/**\n * Custom login listener.\n */\nclass InteractiveLogin extends TokenBasedRememberMeServices\n{\n    /**\n     * {@inheritdoc}\n     */\n    protected function processAutoLoginCookie(array $cookieParts, Request $request)\n    {\n        $user = parent::processAutoLoginCookie($cookieParts, $request);\n\n        $zendAuth = \\Zend_Auth::getInstance();\n        $authAdapter = new InteractiveDoctrineAuthService();\n        $authAdapter->user = $user;\n        $zendAuth->authenticate($authAdapter);\n\n        return $user;\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Security/Http/Authentication/LogoutSuccessHandler.php",
    "content": "<?php\n\nnamespace Newscoop\\NewscoopBundle\\Security\\Http\\Authentication;\n\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\Security\\Http\\HttpUtils;\nuse Symfony\\Component\\Security\\Core\\Authentication\\Token\\AnonymousToken;\n\n/**\n * Custom authentication success handler\n */\nclass LogoutSuccessHandler extends AbstractLogoutHandler\n{\n    protected $securityContext;\n\n    /**\n     * @param HttpUtils $httpUtils\n     * @param string    $targetUrl\n     */\n    public function __construct(HttpUtils $httpUtils, $targetUrl, $securityContext)\n    {\n        parent::__construct($httpUtils, $targetUrl);\n        $this->securityContext = $securityContext;\n    }\n\n    /**\n     * Creates a Response object to send upon a successful logout.\n     *\n     * @param Request $request\n     *\n     * @return Response never null\n     */\n    public function onLogoutSuccess(Request $request)\n    {\n        // Clear Zend auth\n        $zendAuth = \\Zend_Auth::getInstance();\n        $zendAuth->clearIdentity();\n\n        $referer = $request->headers->get('referer');\n        // logout from OAuth\n        $token = new AnonymousToken(null, 'anon.');\n        $session = $request->getSession();\n        $request->getSession()->invalidate();\n        $session->set('_security_oauth_authorize', serialize($token));\n        $this->securityContext->setToken($token);\n\n        $this->unsetNoCacheCookie($request);\n\n        return $this->httpUtils->createRedirectResponse($request, $referer);\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Security/Http/Authentication/OAuthLogoutSuccessHandler.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\NewscoopBundle\\Security\\Http\\Authentication;\n\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\Security\\Http\\HttpUtils;\nuse Symfony\\Component\\Security\\Core\\Authentication\\Token\\AnonymousToken;\n\n/**\n * OAuth logout success handler\n */\nclass OAuthLogoutSuccessHandler extends AbstractLogoutHandler\n{\n    protected $securityContext;\n\n    /**\n     * @param HttpUtils $httpUtils\n     * @param string    $targetUrl\n     */\n    public function __construct(HttpUtils $httpUtils, $securityContext)\n    {\n        parent::__construct($httpUtils);\n        $this->securityContext = $securityContext;\n    }\n\n    /**\n     * Creates a Response object to send upon a successful logout.\n     *\n     * @param Request $request\n     *\n     * @return Response never null\n     */\n    public function onLogoutSuccess(Request $request)\n    {\n        // logout from zend\n        $zendAuth = \\Zend_Auth::getInstance();\n        $zendAuth->clearIdentity();\n        // logout from frontend\n        $token = new AnonymousToken(null, 'anon.');\n        $session = $request->getSession();\n        $request->getSession()->invalidate();\n        $session->set('_security_frontend_area', serialize($token));\n        $this->securityContext->setToken($token);\n\n        $this->unsetNoCacheCookie($request);\n\n        return parent::onLogoutSuccess($request);\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Security/Http/Authentication/OAuthSuccessHandler.php",
    "content": "<?php\n\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2015 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\NewscoopBundle\\Security\\Http\\Authentication;\n\nuse Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Symfony\\Component\\Security\\Http\\HttpUtils;\n\n/**\n * Custom authentication success handler for OAuth.\n * It sings in to the Symfony frontend firewall and also to the Zend,\n * when signing in via OAuth firewall.\n */\nclass OAuthSuccessHandler extends AbstractAuthenticationHandler\n{\n    protected $authAdapter;\n    protected $userService;\n\n    /**\n     * Constructor\n     *\n     * @param HttpUtils                                  $httpUtils\n     * @param array                                      $options\n     * @param Newscoop\\Services\\Auth\\DoctrineAuthService $authAdapter\n     * @param UserService                                $userService\n     */\n    public function __construct(HttpUtils $httpUtils, array $options, $authAdapter, $userService)\n    {\n        $this->authAdapter = $authAdapter;\n        $this->userService = $userService;\n\n        parent::__construct($httpUtils, $options);\n    }\n\n    /**\n     * This is called when an interactive authentication attempt succeeds. This\n     * is called by authentication listeners inheriting from AbstractAuthenticationListener.\n     *\n     * @param Request        $request\n     * @param TokenInterface $token\n     *\n     * @return Response\n     */\n    public function onAuthenticationSuccess(Request $request, TokenInterface $token)\n    {\n        $user = $token->getUser();\n\n        $zendAuth = \\Zend_Auth::getInstance();\n        $this->authAdapter->setUsername($user->getUsername())->setPassword($request->request->get('_password'));\n        $zendAuth->authenticate($this->authAdapter);\n        $frontendToken = $this->userService->loginUser($user, 'frontend_area');\n        $session = $request->getSession();\n        $session->set('_security_frontend_area', serialize($frontendToken));\n        $this->setNoCacheCookie($request);\n\n        return parent::onAuthenticationSuccess($request, $token);\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Security/User/SimpleUserProvider.php",
    "content": "<?php\n\nnamespace Newscoop\\NewscoopBundle\\Security\\User;\n\nuse Newscoop\\Entity\\User;\nuse Symfony\\Component\\Security\\Core\\User\\UserProviderInterface;\nuse Symfony\\Component\\Security\\Core\\User\\UserInterface;\nuse Symfony\\Component\\Security\\Core\\Exception\\UsernameNotFoundException;\nuse Symfony\\Component\\Security\\Core\\Exception\\UnsupportedUserException;\n\nclass SimpleUserProvider implements UserProviderInterface\n{\n    protected $users;\n\n    protected $em;\n\n    protected $config;\n\n    public function __construct($em, array $config)\n    {\n        $this->em = $em;\n        $this->config = $config;\n        if (file_exists($this->config['users_file'])) {\n            $this->users = json_decode(file_get_contents($this->config['users_file']), true);\n        } else {\n            $this->users = array();\n        }\n    }\n\n    public function loadUserByUsername($username)\n    {\n        if (isset($this->users[$username])) {\n            // query User entity\n            $user = $this->em->getRepository('Newscoop\\Entity\\User')->findOneByUsername($username);\n\n            // create the user if they don't already exist\n            if (empty($user)) {\n                // create user\n                $user = new User();\n                $this->em->getRepository('Newscoop\\Entity\\User')->save($user, array(\n                    'username' => $username,\n                    'email' => $username,\n                    'password' => $this->users[$username],\n                    'status' => 1,\n                    'is_admin' => 1,\n                    'is_verified' => 1,\n                    'is_featured' => 0,\n                    'user_type' => array('4'), // set as Journalist\n                    'attributes' => array()\n                ));\n                return $user;\n            } else {\n                // or return the user\n                return $user;\n            }\n        }\n\n        throw new UsernameNotFoundException(sprintf('Username \"%s\" does not exist.', $username));\n    }\n\n    public function refreshUser(UserInterface $user)\n    {\n        if (!$user instanceof User) {\n            throw new UnsupportedUserException(sprintf('Instances of \"%s\" are not supported.', get_class($user)));\n        }\n\n        return $this->loadUserByUsername($user->getUsername());\n    }\n\n    public function supportsClass($class)\n    {\n        return 'Newscoop\\Entity\\User' === $class;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Services/SystemPreferencesService.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\NewscoopBundle\\Services;\n\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\NewscoopBundle\\Entity\\SystemPreferences;\nuse Doctrine\\Common\\Collections\\Criteria;\n\n/**\n * System preferences service\n */\nclass SystemPreferencesService\n{\n    /** @var Doctrine\\ORM\\EntityManager */\n    protected $em;\n\n    protected $preferences;\n\n    private $requestedPropertiesStack = array();\n\n    /**\n     * @param Doctrine\\ORM\\EntityManager $em\n     */\n    public function __construct(EntityManager $em)\n    {\n        $this->em = $em;\n    }\n\n    /**\n     * Magic function to set given value for given property\n     *\n     * @param  $property Given property\n     * @param  $value    Value for given property\n     *\n     * @return void\n     */\n    public function __set($property, $value)\n    {\n        if (empty($property) || !is_string($property)) {\n            return;\n        }\n\n        $checkProperty = $this->em->getRepository('Newscoop\\NewscoopBundle\\Entity\\SystemPreferences')\n            ->findOneBy(array(\n                'option' => $property,\n        ));\n\n        if ($checkProperty) {\n            if (isset($this->requestedPropertiesStack[$property])) {\n                unset($this->requestedPropertiesStack[$property]);\n            }\n\n            $queryBuilder = $this->em->createQueryBuilder();\n            $preference = $queryBuilder->update('Newscoop\\NewscoopBundle\\Entity\\SystemPreferences', 's')\n                ->set('s.value', ':value')\n                ->set('s.created_at', ':lastmodified')\n                ->where('s.option = :property')\n                ->setParameters(array(\n                    'value' => $value,\n                    'property' => $property,\n                    'lastmodified' => new \\DateTime('now'),\n                ))\n                ->getQuery();\n            $preference->execute();\n\n            $this->$property = $value;\n        } else {\n            $newProperty = new SystemPreferences();\n            $newProperty->setOption($property);\n            $newProperty->setValue($value);\n            $newProperty->setCreatedAt(new \\DateTime('now'));\n            $this->em->persist($newProperty);\n            $this->em->flush();\n        }\n    }\n\n    /**\n     * Magic function to get property value\n     *\n     * @param  $property Given property\n     *\n     * @return string|null\n     */\n    public function __get($property)\n    {\n        if (isset($this->requestedPropertiesStack[$property])) {\n            return $this->requestedPropertiesStack[$property];\n        }\n\n        $currentProperty = $this->findOneBy($property);\n        if (!empty($currentProperty)) {\n            $currentProperty = reset($currentProperty);\n            $this->requestedPropertiesStack[$property] = $currentProperty['value'];\n\n            return $currentProperty['value'];\n        }\n    }\n\n    /**\n     * Set given value for given property\n     *\n     * @param $property Given property\n     * @param $value    Value for given property\n     *\n     * @return void\n     */\n    public function set($property, $value)\n    {\n        $this->$property = $value;\n    }\n\n    /**\n     * Get value for given property\n     *\n     * @param $property Given property\n     *\n     * @return string\n     */\n    public function get($property, $default = null)\n    {\n        $property = $this->$property;\n\n        if ($property === null) {\n            return $default;\n        }\n\n        return $property;\n    }\n\n    /**\n     * Delete system preference by varname\n     *\n     * @param string $varname System preference varname\n     *\n     * @return void\n     */\n    public function delete($varname)\n    {\n        $property = $this->em->getRepository('Newscoop\\NewscoopBundle\\Entity\\SystemPreferences')\n            ->findOneBy(array(\n                'option' => $varname,\n        ));\n\n        if ($property) {\n            if (isset($this->requestedPropertiesStack[$varname])) {\n                unset($this->requestedPropertiesStack[$varname]);\n            }\n\n            $this->em->remove($property);\n            $this->em->flush();\n        }\n    }\n\n    /**\n     * Get all available preferences\n     *\n     * @return array\n     */\n    public function getAllPreferences()\n    {\n        if ($this->preferences) {\n            return $this->preferences;\n        }\n\n        return $this->preferences = $this->em\n            ->createQueryBuilder('p')\n            ->select('p.value', 'p.option')\n            ->from('Newscoop\\NewscoopBundle\\Entity\\SystemPreferences', 'p')\n            ->getQuery()\n            ->getArrayResult();\n    }\n\n    /**\n     * Find one preference by matching criteria from object\n     * Works like caching\n     *\n     * @param string $property Property name\n     *\n     * @return array\n     */\n    public function findOneBy($property)\n    {\n        return array_filter($this->getAllPreferences(), function ($pref) use ($property) {\n            return $pref['option'] === $property;\n        });\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Services/TopicService.php",
    "content": "<?php\n\n/**\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\NewscoopBundle\\Services;\n\nuse Newscoop\\NewscoopBundle\\Entity\\Topic;\nuse Newscoop\\Entity\\Article;\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Exception\\ResourcesConflictException;\nuse Doctrine\\ORM\\Query;\nuse Newscoop\\EventDispatcher\\Events\\GenericEvent;\nuse Newscoop\\NewscoopBundle\\Entity\\TopicTranslation;\n\n/**\n * Topcis service.\n */\nclass TopicService\n{\n    protected $em;\n    protected $dispatcher;\n\n    /**\n     * @param EntityManager   $em\n     * @param EventDispatcher $dispatcher\n     */\n    public function __construct(EntityManager $em, $dispatcher)\n    {\n        $this->em = $em;\n        $this->dispatcher = $dispatcher;\n    }\n\n    /**\n     * Adds topic to the article.\n     *\n     * @param Topic   $topic   Topic object\n     * @param Article $article Article object\n     *\n     * @return bool\n     *\n     * @throws ResourcesConflictException\n     */\n    public function addTopicToArticle(Topic $topic, Article $article)\n    {\n        $result = $this->attachTopicToArticle($topic, $article);\n\n        if (!$result) {\n            throw new ResourcesConflictException('Topic already attached to article', 409);\n        }\n\n        return true;\n    }\n\n    /**\n     * Removes topic from the article.\n     *\n     * @param Topic   $topic   Topic object\n     * @param Article $article Article object\n     *\n     * @return bool\n     *\n     * @throws ResourcesConflictException\n     */\n    public function removeTopicFromArticle(Topic $topic, Article $article)\n    {\n        $result = $this->detachTopicFromArticle($topic, $article);\n\n        if (!$result) {\n            throw new ResourcesConflictException('Topic already removed from the article', 409);\n        }\n\n        return true;\n    }\n\n    /**\n     * Adds topic to the article.\n     *\n     * @param Topic   $topic   Topic object\n     * @param Article $article Article object\n     *\n     * @return bool\n     */\n    protected function attachTopicToArticle(Topic $topic, Article $article)\n    {\n        $result = $article->addTopic($topic);\n        if ($result) {\n            $this->em->flush();\n\n            $this->dispatcher->dispatch('article-topic.attach', new GenericEvent($this, $this->getLogArray($topic, $article)));\n        }\n\n        return $result;\n    }\n\n    /**\n     * Removes topic from the article.\n     *\n     * @param Topic   $topic   Topic object\n     * @param Article $article Article object\n     *\n     * @return bool\n     */\n    protected function detachTopicFromArticle(Topic $topic, Article $article)\n    {\n        $result = $article->removeTopic($topic);\n        if ($result) {\n            $this->em->flush();\n\n            $this->dispatcher->dispatch('article-topic.detach', new GenericEvent($this, $this->getLogArray($topic, $article)));\n        }\n\n        return $result;\n    }\n\n    private function getLogArray(Topic $topic, Article $article)\n    {\n        return array(\n            'title' => $topic->getTitle(),\n            'id' => array(\n                'Title' => $article->getName(),\n                'Number' => $article->getNumber(),\n                'IdLanguage' => $article->getLanguageId(),\n            ),\n            'diff' => array(\n                'id' => $topic->getId(),\n                'title' => $topic->getTitle(),\n            ),\n        );\n    }\n\n    /**\n     * Removes topic from all articles it is attached to.\n     *\n     * @param string|int $topicId Topic id\n     *\n     * @return bool\n     */\n    public function removeTopicFromAllArticles($topicId)\n    {\n        $updateDateTime = new \\DateTime();\n        $qb = $this->em->createQueryBuilder();\n        $topic = $this->em->getReference('Newscoop\\NewscoopBundle\\Entity\\Topic', $topicId);\n        $children = $this->getTopicRepository()->childrenQuery($topic)->getArrayResult();\n        $attachedTopics = array();\n        foreach ($children as $key => $child) {\n            if ($this->isAttached($child['id'])) {\n                $attachedTopics[] = $child['id'];\n            }\n        }\n\n        $attachedTopics[] = $topicId;\n\n        $articles = $this->em->createQueryBuilder()\n            ->select('a')\n            ->from('Newscoop\\Entity\\Article', 'a')\n            ->innerJoin('Newscoop\\Entity\\ArticleTopic', 'at')\n            ->where('at.topic IN (:topic_ids)')\n            ->setParameter('topic_ids', $attachedTopics)\n            ->getQuery()\n            ->getResult();\n\n        foreach ($articles as $article) {\n            $article->setUpdated($updateDateTime);\n            $this->em->persist($article);\n        }\n        $this->em->flush();\n\n        $topicsQuery = $qb->delete('Newscoop\\Entity\\ArticleTopic', 'at')\n            ->where('at.topic IN (?1)')\n            ->setParameter(1, $attachedTopics)\n            ->getQuery();\n\n        $topicsQuery->execute();\n\n        return true;\n    }\n\n    /**\n     * Saves topic position when it was dragged and dropped.\n     *\n     * @param Topic $node   Dragged topic object\n     * @param array $params Parameters with positions\n     *\n     * @return Topic\n     */\n    public function saveTopicPosition(Topic $node, $params)\n    {\n        if (isset($params['parent']) && $params['parent']) {\n            $repository = $this->getTopicRepository();\n            $parent = $repository->findOneBy(array(\n                'id' => $params['parent'],\n            ));\n\n            if (!$parent) {\n                return false;\n            }\n\n            $node->setOrder(null);\n            foreach ($params as $key => $isSet) {\n                switch ($key) {\n                    case 'first':\n                        if ($isSet) {\n                            $repository->persistAsFirstChildOf($node, $parent);\n                        }\n                        break;\n                    case 'last':\n                        if ($isSet) {\n                            $repository->persistAsLastChildOf($node, $parent);\n                        }\n                        break;\n                    case 'middle':\n                        if ($isSet) {\n                            $repository->persistAsNextSiblingOf($node, $parent);\n                        }\n                        break;\n                    default:\n                        break;\n                }\n            }\n        }\n\n        // when dragging children to roots\n        if (isset($params['asRoot']) && $params['asRoot']) {\n            $node->setParent(null);\n        }\n\n        $metadata = $this->em->getClassMetaData(get_class($node));\n        $metadata->setIdGeneratorType(\\Doctrine\\ORM\\Mapping\\ClassMetadata::GENERATOR_TYPE_NONE);\n        $this->em->flush();\n\n        return $node;\n    }\n\n    /**\n     * Reorder root topics.\n     *\n     * @param array $rootNodes Root topics\n     * @param array $order     Topics ids in order\n     *\n     * @return bool\n     */\n    public function reorderRootNodes($rootNodes, $order = array())\n    {\n        foreach ($rootNodes as $rootNode) {\n            $rootNode->setOrder(null);\n        }\n\n        $this->em->flush();\n\n        if (count($order) > 1) {\n            $counter = 0;\n\n            foreach ($order as $item) {\n                foreach ($rootNodes as $rootNode) {\n                    if ($rootNode->getId() == $item) {\n                        $rootNode->setOrder($counter + 1);\n                        ++$counter;\n                    }\n                }\n            }\n        } else {\n            $counter = 1;\n            foreach ($rootNodes as $rootNode) {\n                $rootNode->setOrder($counter);\n                ++$counter;\n            }\n        }\n\n        $this->em->flush();\n\n        return true;\n    }\n\n    /**\n     * Saves new topic. Possibility to overwrite AUTO strategy (set custom ids).\n     *\n     * @param Topic       $node   Topic object\n     * @param string|null $locale Language code\n     *\n     * @return bool\n     *\n     * @throws ResourcesConflictException When Topic already exists\n     */\n    public function saveNewTopic(Topic $node, $locale = null)\n    {\n        $node->setTranslatableLocale($locale ?: $node->getTranslatableLocale());\n        $topicTranslation = $this->getTopicRepository()->createQueryBuilder('t')\n            ->join('t.translations', 'tt')\n            ->where('tt.locale = :locale')\n            ->andWhere('tt.content = :title')\n            ->andWhere(\"tt.field = 'title'\")\n            ->setParameters(array(\n                'title' => $node->getTitle(),\n                'locale' => $node->getTranslatableLocale(),\n            ))\n            ->getQuery()\n            ->getOneOrNullResult();\n\n        if ($topicTranslation) {\n            throw new ResourcesConflictException('Topic already exists', 409);\n        }\n\n        if (!$node->getParent()) {\n            $qb = $this->getTopicRepository()->createQueryBuilder('t');\n            $maxOrderValue = $qb\n                ->select('MAX(t.topicOrder)')\n                ->setMaxResults(1)\n                ->getQuery()\n                ->getSingleScalarResult();\n\n            $node->setOrder((int) $maxOrderValue + 1);\n        }\n\n        $node->addTranslation(new TopicTranslation($locale ?: $node->getTranslatableLocale(), 'title', $node->getTitle(), true));\n\n        $this->em->persist($node);\n        $metadata = $this->em->getClassMetaData(get_class($node));\n        $metadata->setIdGeneratorType(\\Doctrine\\ORM\\Mapping\\ClassMetadata::GENERATOR_TYPE_NONE);\n        $this->em->flush();\n\n        $this->dispatcher->dispatch('topic.create', new GenericEvent($this, array(\n            'title' => $node->getTitle(),\n            'id' => array('id' => $node->getId()),\n            'diff' => (array) $node,\n        )));\n\n        return true;\n    }\n\n    /**\n     * Checks if topic is attached to any article.\n     *\n     * If $attachedCount is set to yes, returns an array with the number of topics attached to articles,\n     * else returns boolean. By default set to false.\n     *\n     * @param string|int $topicId       Topic id\n     * @param bool       $attachedCount Switch to include/exclude number of topics\n     *\n     * @return bool|array\n     */\n    public function isAttached($topicId, $attachedCount = false)\n    {\n        $topic = $this->em->getRepository('Newscoop\\Entity\\ArticleTopic')\n            ->getTheOccurrenceOfTheTopic($topicId)\n            ->getSingleScalarResult();\n\n        $count = (int) $topic;\n        if ($attachedCount) {\n            if ($count > 0) {\n                return array($count, true);\n            }\n\n            return array($count, false);\n        }\n\n        if ($count > 0) {\n            return true;\n        }\n\n        return false;\n    }\n\n    /**\n     * Returns a topic object identified by the full name in the\n     * format topic_name:language_code.\n     *\n     * @param string $fullName Topic's full name\n     *\n     * @return Topic|null object\n     */\n    public function getTopicByFullName($fullName)\n    {\n        $extractedData = $this->extractNameAndLanguage($fullName);\n        if (empty($extractedData)) {\n            return;\n        }\n\n        $name = $extractedData['name'];\n        $languageCode = $extractedData['locale'];\n\n        $topicTranslation = $this->em->getRepository('Newscoop\\NewscoopBundle\\Entity\\TopicTranslation')->findOneBy(array(\n            'content' => $name,\n            'locale' => $languageCode,\n            'field' => 'title',\n        ));\n\n        if (!$topicTranslation) {\n            return;\n        }\n\n        return $topicTranslation->getObject();\n    }\n\n    /**\n     * Returns a topic as an array identified by the full name in the\n     * format topic_name:language_code.\n     *\n     * @param string $fullName Topic's full name\n     *\n     * @return array\n     */\n    public function getTopicByFullNameAsArray($fullName)\n    {\n        $extractedData = $this->extractNameAndLanguage($fullName);\n        if (empty($extractedData)) {\n            return;\n        }\n\n        $name = $extractedData['name'];\n        $languageCode = $extractedData['locale'];\n\n        $topicTranslation = $this->em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')\n            ->getOneByExtractedFullName($name, $languageCode)\n            ->getArrayResult();\n\n        if (empty($topicTranslation)) {\n            return;\n        }\n\n        $topicTranslation[0]['object']['title'] = $topicTranslation[0]['title'];\n\n        return $topicTranslation[0]['object'];\n    }\n\n    private function extractNameAndLanguage($fullName)\n    {\n        $fullName = trim($fullName);\n        $lastColon = strrpos($fullName, ':');\n        if (!$lastColon) {\n            return;\n        }\n\n        $name = substr($fullName, 0, $lastColon);\n        $languageCode = substr($fullName, $lastColon + 1);\n\n        return array(\n            'name' => $name,\n            'locale' => $languageCode,\n        );\n    }\n\n    /**\n     * Gets the topic by id, its title or title\n     * combined with the language and language code.\n     * $string parameter value can be: \"test\", 20, \"test:en\".\n     *\n     * @param string      $string Topic search phrase\n     * @param string|null $locale Locale\n     *\n     * @return Topic|null\n     */\n    public function getTopicBy($string, $locale = null)\n    {\n        $topic = $this->getTopicRepository()\n            ->getTopicByIdOrName($string, $locale)\n            ->getOneOrNullResult();\n\n        if (!$topic) {\n            $topic = $this->getTopicByFullName($string);\n            if (!$topic) {\n                return;\n            }\n        }\n\n        return $topic;\n    }\n\n    /**\n     * Wrapper method for setting translatable hint.\n     * When for instance getting topic with German name\n     * $locale should be set to \"de\".\n     *\n     * @param Query  $query  Query object\n     * @param string $locale Locale\n     *\n     * @return Query\n     */\n    public function setTranslatableHint(Query $query, $locale = null)\n    {\n        return $this->getTopicRepository()->setTranslatableHint($query, $locale);\n    }\n\n    /**\n     * Wrapper method for getting readable topic path.\n     *\n     * @param Topic       $topic  Topic object\n     * @param string|null $locale Locale e.g. \"en\"\n     *\n     * @return string Topic's readable path\n     */\n    public function getReadablePath(Topic $topic, $locale = null)\n    {\n        return $this->getTopicRepository()->getReadablePath($topic, $locale);\n    }\n\n    /**\n     * Count topics by given criteria.\n     *\n     * @param array $criteria\n     *\n     * @return int\n     */\n    public function countBy(array $criteria = array())\n    {\n        return $this->getTopicRepository()->countBy($criteria);\n    }\n\n    /**\n     * Count article topics by given criteria.\n     *\n     * @param array $criteria\n     *\n     * @return int\n     */\n    public function countArticleTopicsBy(array $criteria = array())\n    {\n        return $this->getArticleTopicRepository()->countBy($criteria);\n    }\n\n    /**\n     * Check if topic name already exists by given locale.\n     *\n     * @param string $locale Locale\n     * @param string $title  Topic name\n     *\n     * @return bool\n     */\n    public function checkTopicName($locale, $title)\n    {\n        $topicTranslation = $this->getTopicRepository()->createQueryBuilder('t')\n            ->select('count(t)')\n            ->join('t.translations', 'tt')\n            ->where('tt.locale = :locale')\n            ->andWhere('tt.content = :title')\n            ->andWhere(\"tt.field = 'title'\")\n            ->setParameters(array(\n                'title' => $title,\n                'locale' => $locale,\n            ))\n            ->getQuery()\n            ->getSingleScalarResult();\n\n        if ((int) $topicTranslation > 0) {\n            return true;\n        }\n\n        return false;\n    }\n\n    /**\n     * Deletes the topic. If topic is attached to any article\n     * it is first detached and deleted.\n     *\n     * @param Topic $topic Topic\n     *\n     * @return bool\n     */\n    public function deleteTopic(Topic $topic)\n    {\n        if ($this->isAttached($topic->getId())) {\n            $this->removeTopicFromAllArticles($topic->getId());\n        }\n\n        $this->removeTopicFromAllUsers($topic->getId());\n        $this->em->remove($topic);\n        $this->em->flush();\n        $this->em->clear();\n\n        return true;\n    }\n\n    /**\n     * Removes topic from all users it is followed by.\n     *\n     * @param string|int $topicId Topic id\n     *\n     * @return bool\n     */\n    public function removeTopicFromAllUsers($topicId)\n    {\n        $qb = $this->em->createQueryBuilder();\n        $topicsQuery = $qb->delete('Newscoop\\Entity\\UserTopic', 'ut')\n            ->where('ut.topic = :topicId')\n            ->setParameter('topicId', $topicId)\n            ->getQuery();\n\n        $topicsQuery->execute();\n\n        return true;\n    }\n\n    /**\n     * Checks if topic is attached to any article.\n     *\n     * If $attachedCount is set to yes, returns an array with the number of topics attached to articles,\n     * else returns boolean. By default set to false.\n     *\n     * @param string|int $topicId       Topic id\n     * @param bool       $attachedCount Switch to include/exclude number of topics\n     *\n     * @return bool|array\n     */\n    public function isFollowed($topicId)\n    {\n        $topic = $this->em->getRepository('Newscoop\\Entity\\UserTopic')\n            ->getTheOccurrenceOfTheUserTopic($topicId)\n            ->getSingleScalarResult();\n\n        $count = (int) $topic;\n        if ($count > 0) {\n            return true;\n        }\n\n        return false;\n    }\n\n    /**\n     * Get options for forms.\n     *\n     * @return array\n     */\n    public function getMultiOptions()\n    {\n        return $this->getTopicRepository()->findOptions();\n    }\n\n    /**\n     * Gets Topic Repository.\n     *\n     * @return Newscoop\\NewscoopBundle\\Entity\\Repository\\TopicRepository\n     */\n    protected function getTopicRepository()\n    {\n        return $this->em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic');\n    }\n\n    /**\n     * Gets article topic Repository.\n     *\n     * @return Newscoop\\Entity\\Repository\\ArticleTopicRepository\n     */\n    protected function getArticleTopicRepository()\n    {\n        return $this->em->getRepository('Newscoop\\Entity\\ArticleTopic');\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Session/Storage.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Session;\n\nuse Symfony\\Component\\HttpFoundation\\Session\\Storage\\PhpBridgeSessionStorage;\n\n/**\n * Newscoop Session Storage adapter.\n * Newscoop still uses the Zend_Session and we now have a custom wrapper for it (PhpBridgeSessionStorage).\n * This class provides support for a custom session lifetime value.\n */\nclass Storage extends PhpBridgeSessionStorage\n{\n    /**\n     * @param array                                                            $options\n     * @param AbstractProxy|NativeSessionHandler|\\SessionHandlerInterface|null $handler\n     * @param MetadataBag                                                      $metaBag MetadataBag\n    */\n    public function __construct(array $options = array(), $preferencesService, $handler = null, MetadataBag $metaBag = null)\n    {\n        $options['cookie_lifetime'] = $preferencesService->SiteSessionLifeTime;\n\n        $this->setMetadataBag($metaBag);\n        $this->setOptions($options);\n        $this->setSaveHandler($handler);\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Tests/Controller/DefaultControllerTest.php",
    "content": "<?php\n\nnamespace Newscoop\\NewscoopBundle\\Tests\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Test\\WebTestCase;\n\nclass DefaultControllerTest extends WebTestCase\n{\n    public function testIndex()\n    {\n        $client = static::createClient();\n\n        $crawler = $client->request('GET', '/hello/Fabien');\n\n        $this->assertTrue($crawler->filter('html:contains(\"Hello Fabien\")')->count() > 0);\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Twig/IncludeAsVerbatimExtension.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Yorick Terweijden <yorick.terweijden@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\NewscoopBundle\\Twig;\n\nuse Twig_Environment;\nuse Twig_Extension;\n\nclass IncludeAsVerbatimExtension extends \\Twig_Extension\n{\n    /**\n     * Returns a list of global functions to add to the existing list.\n     *\n     * @return array An array of global functions\n     */\n    public function getFunctions() {\n        return array(\n            new \\Twig_SimpleFunction( 'include_as_verbatim', array( $this, 'includeAsVerbatim' ), array( 'needs_environment' => true, 'is_safe' => array( 'html' ) ) )\n        );\n    }\n\n    function includeAsVerbatim( Twig_Environment $env, $location) {\n        $contents = $env->getLoader()->getSource( $location );\n        return \"{$contents}\";\n    }\n\n    /**\n     * Returns the name of the extension.\n     *\n     * @return string The extension name\n     */\n    public function getName() {\n        return 'include_as_verbatim_extension';\n    }\n}"
  },
  {
    "path": "newscoop/src/Newscoop/NewscoopBundle/Twig/NewscoopExtension.php",
    "content": "<?php\n/**\n * @package Newscoop\\NewscoopBundle\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nnamespace Newscoop\\NewscoopBundle\\Twig;\n\nuse Newscoop\\Exception\\AuthenticationException;\n\nclass NewscoopExtension extends \\Twig_Extension\n{\n\n    /**\n     * @var ContainerInterface\n     */\n    protected $container;\n\n    /**\n     * @var Request\n     */\n    protected $request;\n\n    /**\n     * Constructor\n     *\n     * @param ContainerInterface $container\n     */\n    public function __construct($container)\n    {\n        $this->container = $container;\n\n        if ($this->container->isScopeActive('request')) {\n            $this->request = $this->container->get('request');\n        }\n    }\n\n    public function getGlobals()\n    {\n        global $Campsite;\n\n        $localeFromCookie = 'en';\n        if ($this->request) {\n            $localeFromCookie = $this->request->cookies->has('TOL_Language') == true ? $this->request->cookies->get('TOL_Language') : 'en';\n        }\n\n        try {\n            $currentUser = $this->container->getService('user')->getCurrentUser();\n        } catch (AuthenticationException $e) {\n            $currentUser = null;\n        }\n\n        return array(\n            'Newscoop' => $Campsite,\n            'NewscoopVersion' => new \\CampVersion(),\n            'SecurityToken' => \\SecurityToken::GetToken(),\n            'NewscoopUser' => $currentUser,\n            'localeFromCookie' => $localeFromCookie,\n        );\n    }\n\n    public function getFunctions()\n    {\n        return array(\n            new \\Twig_SimpleFunction('strpos', 'strpos'),\n            new \\Twig_SimpleFunction('getBreadcrumbsArray', array($this, 'getBreadcrumbsArray')),\n            new \\Twig_SimpleFunction('getReCaptchaImage', array($this, 'getReCaptchaImage')),\n            new \\Twig_SimpleFunction('renderHook', array($this, 'renderHook')),\n            new \\Twig_SimpleFunction('getSystemPref', \"\\Zend_Registry::get('container')->getService('system_preferences_service')->get\"),\n            new \\Twig_SimpleFunction('generateZendUrl', array($this, 'generateZendUrl')),\n            new \\Twig_SimpleFunction('hasPermission', array($this, 'hasPermission')),\n            new \\Twig_SimpleFunction('default_csrf_token', array($this, 'getCsrfToken')),\n            new \\Twig_SimpleFunction('renderTip', array($this, 'renderTip'), array('is_safe' => array( 'html' ))),\n        );\n    }\n\n    public function getBreadcrumbsArray($currentMenuItem)\n    {\n        $manipulator = new \\Knp\\Menu\\Util\\MenuManipulator();\n\n        return $manipulator->getBreadcrumbsArray($currentMenuItem);\n    }\n\n    public function generateZendUrl($controller, $action, $module = 'admin', $params = array(), $name = 'default', $encode = true)\n    {\n        $zendRouter = $this->container->get('zend_router');\n\n        return $zendRouter->assemble(array_merge(array(\n            'module' => $module,\n            'controller' => $controller,\n            'action' => $action,\n        ), $params), $name, true, $encode);\n    }\n\n    public function getReCaptchaImage()\n    {\n        $fontsDirectory = __DIR__.'/../../../../include/captcha/';\n        $aFonts = array(\n            $fontsDirectory.'fonts/VeraBd.ttf',\n            $fontsDirectory.'fonts/VeraIt.ttf',\n            $fontsDirectory.'fonts/Vera.ttf',\n        );\n        $oVisualCaptcha = new \\PhpCaptcha($aFonts, 200, 60);\n        $oVisualCaptcha->Create(__DIR__.'/../../../../images/cache/recaptcha.png');\n\n        return '/images/cache/recaptcha.png';\n    }\n\n    public function renderHook($hookName, $params = array())\n    {\n        echo $this->container->get('newscoop.plugins.service')\n            ->renderPluginHooks($hookName, null, $params);\n    }\n\n    /**\n     * Checks if user has permission\n     *\n     * @param string $permissionName Permission name\n     *\n     * @return boolean\n     */\n    public function hasPermission($permissionName = null)\n    {\n        $user = $this->container->get('user')->getCurrentUser();\n        if ($user->hasPermission($permissionName)) {\n            return true;\n        }\n\n        return false;\n    }\n\n    /**\n     * Generates default CRSF token for forms using AJAX\n     *\n     * @return string CSRF token\n     */\n    public function getCsrfToken()\n    {\n        $csrfProvider = $this->container->get('form.csrf_provider');\n\n        return $csrfProvider->generateCsrfToken('default');\n    }\n\n    public function renderTip($tipMessage, $tipCode = null)\n    {\n        return $this->container->get('templating')->render('NewscoopNewscoopBundle::tooltip.html.twig', array(\n            'tipMessage' => $tipMessage,\n            'tipCode' => $tipCode,\n        ));\n    }\n\n    public function getName()\n    {\n        return 'newscoop_extension';\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Command/GeneratePluginBundleCommand.php",
    "content": "<?php\n/*\n * This file is part of the NewscooPluginGeneratorBundle package.\n *\n * (c) Mark Lewis <mark.lewis@sourcefabric.org>\n *\n * For the full copyright and license information, please view the LICENSE\n * file that was distributed with this source code.\n */\nnamespace Newscoop\\PluginGeneratorBundle\\Command;\nuse Newscoop\\PluginGeneratorBundle\\Command\\GeneratorPluginCommand;\nuse Newscoop\\PluginGeneratorBundle\\Generator\\BundleGenerator;\n\nuse Symfony\\Component\\Console\\Input\\InputOption;\nuse Symfony\\Component\\Console\\Input\\InputInterface;\nuse Symfony\\Component\\Console\\Output\\OutputInterface;\nuse Symfony\\Component\\Console\\Output\\Output;\nuse Symfony\\Component\\HttpKernel\\KernelInterface;\n\nuse Sensio\\Bundle\\GeneratorBundle\\Manipulator\\KernelManipulator;\nuse Sensio\\Bundle\\GeneratorBundle\\Manipulator\\RoutingManipulator;\nuse Sensio\\Bundle\\GeneratorBundle\\Command\\Helper\\DialogHelper;\n\n/**\n * Generates bundles.\n *\n * @author Mark Lewis <mark.lewis@sourcefabric.org>\n */\nclass GeneratePluginBundleCommand extends GeneratorPluginCommand\n{\n    /**\n     * @see Command\n     */\n    protected function configure()\n    {\n        $this\n            ->setDefinition(array(\n                new InputOption('vendor', '', InputOption::VALUE_REQUIRED, 'The vendor of the plugin to create'),\n                new InputOption('namespace', '', InputOption::VALUE_REQUIRED, 'The namespace of the plugin to create'),\n                new InputOption('dir', '', InputOption::VALUE_REQUIRED, 'The directory where to create the bundle'),\n                new InputOption('bundle-name', '', InputOption::VALUE_REQUIRED, 'The required bundle name'),\n                new InputOption('plugin-name', '', InputOption::VALUE_REQUIRED, 'The required plugin name'),\n                new InputOption('format', '', InputOption::VALUE_REQUIRED, 'Use the format for configuration files (php, xml, yml, or annotation)'),\n                new InputOption('structure', '', InputOption::VALUE_NONE, 'Whether to generate the whole directory structure'),\n                new InputOption('admin', '', InputOption::VALUE_NONE, 'Whether to generate a plugin admin structure'),\n                new InputOption('zip', '', InputOption::VALUE_NONE, 'Whether to generate a private plugin zip archive'),\n            ))\n            ->setDescription('Generates a Newscoop Plugin bundle')\n            ->setHelp(<<<EOT\nThe <info>generate:plugin-bundle</info> command helps you generates new Newscoop Plugin bundles.\n\nBy default, the command interacts with the developer to tweak the generation.\nAny passed option will be used as a default value for the interaction\n(<comment>--namespace</comment> is the only one needed if you follow the\nconventions):\n\n<info>php app/console generate:plugin-bundle --plugin-name=NewFeature</info>\n\nIf you want to disable any user interaction, use <comment>--no-interaction</comment> but don't forget to pass all needed options:\n\n<info>php app/console generate:plugin-bundle --plugin-name=NewFeature --dir=src [--bundle-name=...] --no-interaction</info>\n\nNote that the plugin-name should NOT include the words \"Plugin\" or \"Bundle\".\nEOT\n            )\n            ->setName('generate:plugin-bundle')\n        ;\n    }\n\n    /**\n     * @see Command\n     *\n     * @throws \\InvalidArgumentException When namespace doesn't end with Bundle\n     * @throws \\RuntimeException         When bundle can't be executed\n     */\n    protected function execute(InputInterface $input, OutputInterface $output)\n    {\n        $dialog = $this->getDialogHelper();\n\n        if ($input->isInteractive()) {\n            if (!$dialog->askConfirmation($output, $dialog->getQuestion('Do you confirm generation', 'yes', '?'), true)) {\n                $output->writeln('<error>Command aborted</error>');\n\n                return 1;\n            }\n        }\n\n        foreach (array('plugin-name', 'namespace', 'dir') as $option) {\n            if (null === $input->getOption($option)) {\n                throw new \\RuntimeException(sprintf('The \"%s\" option must be provided.', $option));\n            }\n        }\n\n        // validate the namespace\n        $vendor = Validators::validateVendor($input->getOption('vendor'));\n        $pluginName = Validators::validatePluginName($input->getOption('plugin-name'));\n        $namespace = Validators::validateBundleNamespace($input->getOption('namespace'), false);\n        if (!$bundle = $input->getOption('bundle-name')) {\n            $bundle = strtr($namespace, array('\\\\' => ''));\n        }\n        $bundle = Validators::validateBundleName($bundle);\n        $dir = Validators::validateTargetDir($input->getOption('dir'));\n        if (null === $input->getOption('format')) {\n            $input->setOption('format', 'annotation');\n        }\n        $format = Validators::validateFormat($input->getOption('format'));\n        $structure = $input->getOption('structure');\n        $admin = $input->getOption('admin');\n        $zip = $input->getOption('zip');\n\n        $dialog->writeSection($output, 'Bundle generation');\n\n        if (!$this->getContainer()->get('filesystem')->isAbsolutePath($dir)) {\n            $dir = getcwd().'/'.$dir;\n        }\n\n        $generator = $this->getGenerator();\n        $generator->generate(\n            $vendor,\n            $pluginName, \n            $namespace, \n            $bundle, \n            $dir, \n            $format, \n            $structure, \n            $admin, \n            $zip\n        );\n\n        $output->writeln('Generating the bundle code: <info>OK</info>');\n\n        $errors = array();\n\n        $dialog->writeGeneratorSummary($output, $errors);\n\n        $output->writeln('You must run the plugin install command manually: <comment>php application/console plugins:install '.strtolower($vendor).'/'.strtolower($pluginName).'-plugin-bundle</comment>');\n    }\n\n    protected function interact(InputInterface $input, OutputInterface $output)\n    {\n        $dialog = $this->getDialogHelper();\n        $dialog->writeSection($output, 'Welcome to the Newscoop Plugin bundle generator');\n\n        // vendor \n        $vendor = null;\n        try {\n            // validate the plugin name\n            $vendor = $input->getOption('vendor') ? Validators::validateVendor($input->getOption('vendor')) : null;\n        } catch (\\Exception $error) {\n            $output->writeln($dialog->getHelperSet()->get('formatter')->formatBlock($error->getMessage(), 'error'));\n        }\n\n        if (null === $vendor) {\n            $output->writeln(array(\n                '',\n                'Your application code must be written in <comment>bundles</comment>. This command helps',\n                'you generate the bundle name and namespace easily.',\n                '',\n                'Each bundle is hosted under a namespace (like <comment>Google/YoutubePluginBundle</comment>).',\n                'The vendor should be a \"vendor\" name like your company name',\n                '(Google in the above example)',\n                'It should be camel cased with no spaces, and should NOT contain the words \"Plugin\"',\n                'or \"Bundle\" (these will be appended automatically)',\n                '',\n            ));\n\n            $acceptedVendor = false;\n            while (!$acceptedVendor) {\n                $vendor = $dialog->askAndValidate(\n                    $output,\n                    $dialog->getQuestion('Vendor', $input->getOption('vendor')),\n                    function ($vendor) use ($dialog, $output) {\n                        return Validators::validateVendor($vendor);\n                    },\n                    false,\n                    $input->getOption('vendor')\n                );\n\n                // mark as accepted, unless they want to try again below\n                $acceptedVendor = true;\n            }\n            $input->setOption('vendor', $vendor);\n        }\n\n        // pluginName\n        $pluginName = null;\n        try {\n            // validate the plugin name\n            $pluginName = $input->getOption('plugin-name') ? Validators::validatePluginName($input->getOption('plugin-name')) : null;\n        } catch (\\Exception $error) {\n            $output->writeln($dialog->getHelperSet()->get('formatter')->formatBlock($error->getMessage(), 'error'));\n        }\n\n        if (null === $pluginName) {\n            $output->writeln(array(\n                '',\n                'Your application code must be written in <comment>bundles</comment>. This command helps',\n                'you generate the bundle name and namespace easily.',\n                '',\n                'Each bundle is hosted under a namespace (like <comment>Newscoop/YoutubePluginBundle</comment>).',\n                'The plugin name should be a project name, product name, or your client name.',\n                'It should be camel cased with no spaces, and should NOT contain the words \"Plugin\"',\n                'or \"Bundle\" (these will be appended automatically)',\n                '',\n            ));\n\n            $acceptedPluginName = false;\n            while (!$acceptedPluginName) {\n                $pluginName = $dialog->askAndValidate(\n                    $output,\n                    $dialog->getQuestion('Plugin name', $input->getOption('plugin-name')),\n                    function ($pluginName) use ($dialog, $output) {\n                        return Validators::validatePluginName($pluginName);\n                    },\n                    false,\n                    $input->getOption('plugin-name')\n                );\n\n                // mark as accepted, unless they want to try again below\n                $acceptedPluginName = true;\n            }\n            $input->setOption('plugin-name', $pluginName);\n        }\n\n        // namespace\n        $namespace = ucwords($vendor) .\"/\" . $pluginName . 'PluginBundle';\n        $input->setOption('namespace', $namespace);\n\n        // bundle name\n        $bundle = ucwords($vendor) . $pluginName . 'PluginBundle';\n        $input->setOption('bundle-name', $bundle);\n\n        // target dir\n        $dir = null;\n        try {\n            $dir = $input->getOption('dir') ? Validators::validateTargetDir($input->getOption('dir')) : null;\n        } catch (\\Exception $error) {\n            $output->writeln($dialog->getHelperSet()->get('formatter')->formatBlock($error->getMessage(), 'error'));\n        }\n\n        if (null === $dir) {\n            $dir = dirname($this->getContainer()->getParameter('kernel.root_dir')).'/plugins/'.ucwords($vendor);\n\n            $output->writeln(array(\n                '',\n                'The bundle can be generated anywhere. The suggested default directory uses',\n                'the plugin directory for this Newscoop instance.',\n                '',\n            ));\n            $dir = $dialog->askAndValidate($output, $dialog->getQuestion('Target directory', $dir), function ($dir) use ($bundle, $namespace) { return Validators::validateTargetDir($dir); }, false, $dir);\n            $input->setOption('dir', $dir);\n        }\n\n        // format\n        $format = null;\n        try {\n            $format = $input->getOption('format') ? Validators::validateFormat($input->getOption('format')) : null;\n        } catch (\\Exception $error) {\n            $output->writeln($dialog->getHelperSet()->get('formatter')->formatBlock($error->getMessage(), 'error'));\n        }\n\n        if (null === $format) {\n            $output->writeln(array(\n                '',\n                'Determine the format to use for the generated configuration.',\n                '',\n            ));\n            $format = $dialog->askAndValidate($output, $dialog->getQuestion('Configuration format (yml, xml, php, or annotation)', $input->getOption('format')), array('Newscoop\\PluginGeneratorBundle\\Command\\Validators', 'validateFormat'), false, $input->getOption('format'));\n            $input->setOption('format', $format);\n        }\n\n        // optional files to generate\n        $output->writeln(array(\n            '',\n            'To help you get started faster, the command can generate some',\n            'code snippets for you.',\n            '',\n        ));\n\n        $structure = $input->getOption('structure');\n        if (!$structure && $dialog->askConfirmation($output, $dialog->getQuestion('Do you want to generate the whole directory structure', 'no', '?'), false)) {\n            $structure = true;\n        }\n        $input->setOption('structure', $structure);\n\n        $admin = $input->getOption('admin');\n        if (!$admin && $dialog->askConfirmation($output, $dialog->getQuestion('Do you want to generate an Admin structure', 'no', '?'), false)) {\n            $admin = true;\n        }\n        $input->setOption('admin', $admin);\n\n        $zip = $input->getOption('zip');\n        if (!$zip && $dialog->askConfirmation($output, $dialog->getQuestion('Do you want to generate a private plugin zip', 'no', '?'), false)) {\n            $zip = true;\n        }\n        $input->setOption('zip', $zip);\n\n        // summary\n        $output->writeln(array(\n            '',\n            $this->getHelper('formatter')->formatBlock('Summary before generation', 'bg=blue;fg=white', true),\n            '',\n            sprintf(\"You are going to generate a \\\"<info>%s\\\\%s</info>\\\" bundle\\nin \\\"<info>%s</info>\\\" using the \\\"<info>%s</info>\\\" format.\", $namespace, $bundle, $dir, $format),\n            '',\n        ));\n    }\n\n    protected function createGenerator()\n    {\n        return new BundleGenerator($this->getContainer());\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Command/GeneratorPluginCommand.php",
    "content": "<?php\n/*\n * This file is part of the NewscooPluginGeneratorBundle package.\n *\n * (c) Mark Lewis <mark.lewis@sourcefabric.org>\n *\n * For the full copyright and license information, please view the LICENSE\n * file that was distributed with this source code.\n */\nnamespace Newscoop\\PluginGeneratorBundle\\Command;\n\nuse Symfony\\Component\\HttpKernel\\Bundle\\BundleInterface;\nuse Symfony\\Bundle\\FrameworkBundle\\Command\\ContainerAwareCommand;\n\nuse Sensio\\Bundle\\GeneratorBundle\\Generator\\Generator;\nuse Sensio\\Bundle\\GeneratorBundle\\Command\\Helper\\DialogHelper;\n/**\n * Base class for generator commands.\n *\n * @author Mark Lewis <mark.lewis@sourcefabric.org>\n */\nabstract class GeneratorPluginCommand extends ContainerAwareCommand\n{\n    private $generator;\n    // only useful for unit tests\n    public function setGenerator(Generator $generator)\n    {\n        $this->generator = $generator;\n    }\n    abstract protected function createGenerator();\n    protected function getGenerator(BundleInterface $bundle = null)\n    {\n        if (null === $this->generator) {\n            $this->generator = $this->createGenerator();\n            $this->generator->setSkeletonDirs($this->getSkeletonDirs($bundle));\n        }\n        return $this->generator;\n    }\n    protected function getSkeletonDirs(BundleInterface $bundle = null)\n    {\n        $skeletonDirs = array();\n        if (isset($bundle) && is_dir($dir = $bundle->getPath().'/Resources/SensioGeneratorBundle/skeleton')) {\n            $skeletonDirs[] = $dir;\n        }\n        if (is_dir($dir = $this->getContainer()->get('kernel')->getRootdir().'/Resources/SensioGeneratorBundle/skeleton')) {\n            $skeletonDirs[] = $dir;\n        }\n        $skeletonDirs[] = __DIR__.'/../Resources/skeleton';\n        $skeletonDirs[] = __DIR__.'/../Resources';\n        return $skeletonDirs;\n    }\n    protected function getDialogHelper()\n    {\n        $dialog = $this->getHelperSet()->get('dialog');\n        if (!$dialog || get_class($dialog) !== 'Sensio\\Bundle\\GeneratorBundle\\Command\\Helper\\DialogHelper') {\n            $this->getHelperSet()->set($dialog = new DialogHelper());\n        }\n        return $dialog;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Command/Validators.php",
    "content": "<?php\n\n/*\n * This file is part of the Symfony package.\n *\n * (c) Fabien Potencier <fabien@symfony.com>\n *\n * For the full copyright and license information, please view the LICENSE\n * file that was distributed with this source code.\n */\n\nnamespace Newscoop\\PluginGeneratorBundle\\Command;\n\n/**\n * Validator functions.\n *\n * @author Fabien Potencier <fabien@symfony.com>\n */\nclass Validators\n{\n    public static function validateVendor($vendor)\n    {\n        if (!preg_match('/^[a-zA-Z_\\x7f-\\xff][a-zA-Z0-9_\\x7f-\\xff]*$/', $vendor)) {\n            throw new \\InvalidArgumentException('The vendor contains invalid characters.');\n        }\n\n        return $vendor;\n    }\n\n    public static function validatePluginName($pluginName)\n    {\n        if (!preg_match('/^[a-zA-Z_\\x7f-\\xff][a-zA-Z0-9_\\x7f-\\xff]*$/', $pluginName)) {\n            throw new \\InvalidArgumentException('The plugin name contains invalid characters.');\n        }\n\n        return $pluginName;\n    }\n\n    public static function validateBundleNamespace($namespace, $requireVendorNamespace = true)\n    {\n        if (!preg_match('/Bundle$/', $namespace)) {\n            throw new \\InvalidArgumentException('The namespace must end with Bundle.');\n        }\n\n        $namespace = strtr($namespace, '/', '\\\\');\n        if (!preg_match('/^(?:[a-zA-Z_\\x7f-\\xff][a-zA-Z0-9_\\x7f-\\xff]*\\\\\\?)+$/', $namespace)) {\n            throw new \\InvalidArgumentException('The namespace contains invalid characters.');\n        }\n\n        // validate reserved keywords\n        $reserved = self::getReservedWords();\n        foreach (explode('\\\\', $namespace) as $word) {\n            if (in_array(strtolower($word), $reserved)) {\n                throw new \\InvalidArgumentException(sprintf('The namespace cannot contain PHP reserved words (\"%s\").', $word));\n            }\n        }\n\n        // validate that the namespace is at least one level deep\n        if ($requireVendorNamespace && false === strpos($namespace, '\\\\')) {\n            // language is (almost) duplicated in GenerateBundleCommand\n            $msg = array();\n            $msg[] = sprintf('The namespace must contain a vendor namespace (e.g. \"VendorName\\%s\" instead of simply \"%s\").', $namespace, $namespace);\n            $msg[] = 'If you\\'ve specified a vendor namespace, did you forget to surround it with quotes (init:bundle \"Acme\\BlogBundle\")?';\n\n            throw new \\InvalidArgumentException(implode(\"\\n\\n\", $msg));\n        }\n\n        return $namespace;\n    }\n\n    public static function validateBundleName($bundle)\n    {\n        if (!preg_match('/^[a-zA-Z_\\x7f-\\xff][a-zA-Z0-9_\\x7f-\\xff]*$/', $bundle)) {\n            throw new \\InvalidArgumentException('The bundle name contains invalid characters.');\n        }\n\n        if (!preg_match('/Bundle$/', $bundle)) {\n            throw new \\InvalidArgumentException('The bundle name must end with Bundle.');\n        }\n\n        return $bundle;\n    }\n\n    public static function validateControllerName($controller)\n    {\n        try {\n            self::validateEntityName($controller);\n        } catch (\\InvalidArgumentException $e) {\n            throw new \\InvalidArgumentException(\n                sprintf(\n                    'The controller name must contain a : (\"%s\" given, expecting something like AcmeBlogBundle:Post)',\n                    $controller\n                )\n            );\n        }\n\n        return $controller;\n    }\n\n    public static function validateTargetDir($dir)\n    {\n        // add trailing / if necessary\n        return '/' === substr($dir, -1, 1) ? $dir : $dir.'/';\n    }\n\n    public static function validateFormat($format)\n    {\n        $format = strtolower($format);\n\n        if (!in_array($format, array('php', 'xml', 'yml', 'annotation'))) {\n            throw new \\RuntimeException(sprintf('Format \"%s\" is not supported.', $format));\n        }\n\n        return $format;\n    }\n\n    public static function validateEntityName($entity)\n    {\n        if (false === strpos($entity, ':')) {\n            throw new \\InvalidArgumentException(sprintf('The entity name must contain a : (\"%s\" given, expecting something like AcmeBlogBundle:Blog/Post)', $entity));\n        }\n\n        return $entity;\n    }\n\n    public static function getReservedWords()\n    {\n        return array(\n            'abstract',\n            'and',\n            'array',\n            'as',\n            'break',\n            'callable',\n            'case',\n            'catch',\n            'class',\n            'clone',\n            'const',\n            'continue',\n            'declare',\n            'default',\n            'do',\n            'else',\n            'elseif',\n            'enddeclare',\n            'endfor',\n            'endforeach',\n            'endif',\n            'endswitch',\n            'endwhile',\n            'extends',\n            'final',\n            'finally',\n            'for',\n            'foreach',\n            'function',\n            'global',\n            'goto',\n            'if',\n            'implements',\n            'interface',\n            'instanceof',\n            'insteadof',\n            'namespace',\n            'new',\n            'or',\n            'private',\n            'protected',\n            'public',\n            'static',\n            'switch',\n            'throw',\n            'trait',\n            'try',\n            'use',\n            'var',\n            'while',\n            'xor',\n            'yield',\n            '__CLASS__',\n            '__DIR__',\n            '__FILE__',\n            '__LINE__',\n            '__FUNCTION__',\n            '__METHOD__',\n            '__NAMESPACE__',\n            '__TRAIT__',\n            '__halt_compiler',\n            'die',\n            'echo',\n            'empty',\n            'exit',\n            'eval',\n            'include',\n            'include_once',\n            'isset',\n            'list',\n            'require',\n            'require_once',\n            'return',\n            'print',\n            'unset',\n        );\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/DependencyInjection/Configuration.php",
    "content": "<?php\n\nnamespace Newscoop\\PluginGeneratorBundle\\DependencyInjection;\n\nuse Symfony\\Component\\Config\\Definition\\Builder\\TreeBuilder;\nuse Symfony\\Component\\Config\\Definition\\ConfigurationInterface;\n\n/**\n * This is the class that validates and merges configuration from your app/config files\n *\n * To learn more see {@link http://symfony.com/doc/current/cookbook/bundles/extension.html#cookbook-bundles-extension-config-class}\n */\nclass Configuration implements ConfigurationInterface\n{\n    /**\n     * {@inheritdoc}\n     */\n    public function getConfigTreeBuilder()\n    {\n        $treeBuilder = new TreeBuilder();\n\n        // Here you should define the parameters that are allowed to\n        // configure your bundle. See the documentation linked above for\n        // more information on that topic.\n\n        return $treeBuilder;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/DependencyInjection/NewscoopPluginGeneratorExtension.php",
    "content": "<?php\n\nnamespace Newscoop\\PluginGeneratorBundle\\DependencyInjection;\n\nuse Symfony\\Component\\DependencyInjection\\ContainerBuilder;\nuse Symfony\\Component\\Config\\FileLocator;\nuse Symfony\\Component\\HttpKernel\\DependencyInjection\\Extension;\nuse Symfony\\Component\\DependencyInjection\\Loader;\n\n/**\n * This is the class that loads and manages your bundle configuration\n *\n * To learn more see {@link http://symfony.com/doc/current/cookbook/bundles/extension.html}\n */\nclass NewscoopPluginGeneratorExtension extends Extension\n{\n    /**\n     * {@inheritdoc}\n     */\n    public function load(array $configs, ContainerBuilder $container)\n    {\n        $configuration = new Configuration();\n\n        $loader = new Loader\\YamlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));\n        $loader->load('services.yml');\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Generator/BundleGenerator.php",
    "content": "<?php\n\n/*\n * This file is part of the Symfony package.\n *\n * (c) Fabien Potencier <fabien@symfony.com>\n *\n * For the full copyright and license information, please view the LICENSE\n * file that was distributed with this source code.\n */\n\nnamespace Newscoop\\PluginGeneratorBundle\\Generator;\n\nuse Symfony\\Component\\Filesystem\\Filesystem;\nuse Symfony\\Component\\DependencyInjection\\Container;\n\n/**\n * Generates a bundle.\n *\n * @author Fabien Potencier <fabien@symfony.com>\n */\nclass BundleGenerator extends Generator\n{\n    private $filesystem;\n\n    protected $container;\n\n    public function __construct(Container $container)\n    {\n        $this->container = $container;\n        $this->filesystem = $this->container->get('filesystem');\n    }\n\n    public function generate($vendor, $pluginName, $namespace, $bundle, $dir, $format, $structure, $admin, $zip)\n    {\n        $dir .= '/'.strtr($namespace, array(ucwords($vendor) => '', '\\\\' => '', '\\/' => ''));\n        if (file_exists($dir)) {\n            if (!is_dir($dir)) {\n                throw new \\RuntimeException(sprintf('Unable to generate the bundle as the target directory \"%s\" exists but is a file.', realpath($dir)));\n            }\n            $files = scandir($dir);\n            if ($files != array('.', '..')) {\n                throw new \\RuntimeException(sprintf('Unable to generate the bundle as the target directory \"%s\" is not empty.', realpath($dir)));\n            }\n            if (!is_writable($dir)) {\n                throw new \\RuntimeException(sprintf('Unable to generate the bundle as the target directory \"%s\" is not writable.', realpath($dir)));\n            }\n        }\n\n        $basename = substr($bundle, 0, -6);\n        $parameters = array(\n            'vendor' => $vendor,\n            'admin' => $admin,\n            'pluginName' => $pluginName,\n            'namespace' => $namespace,\n            'bundle'    => $bundle,\n            'format'    => $format,\n            'bundle_basename' => $basename,\n            'extension_alias' => Container::underscore($basename),\n        );\n\n        $this->renderFile('bundle/composer.json.twig', $dir.'/composer.json', $parameters);\n        $this->renderFile('bundle/Bundle.php.twig', $dir.'/'.$bundle.'.php', $parameters);\n        $this->renderFile('bundle/Extension.php.twig', $dir.'/DependencyInjection/'.$basename.'Extension.php', $parameters);\n        $this->renderFile('bundle/Configuration.php.twig', $dir.'/DependencyInjection/Configuration.php', $parameters);\n        $this->renderFile('bundle/LifecycleSubscriber.php.twig', $dir.'/EventListener/LifecycleSubscriber.php', $parameters);\n        $this->renderFile('bundle/DefaultController.php.twig', $dir.'/Controller/'.$pluginName.'Controller.php', $parameters);\n        $this->renderFile('bundle/DefaultControllerTest.php.twig', $dir.'/Tests/Controller/'.$pluginName.'ControllerTest.php', $parameters);\n        $this->renderFile('bundle/index.html.twig.twig', $dir.'/Resources/views/'.$pluginName.'/index.html.twig', $parameters);\n\n        if ('xml' === $format || 'annotation' === $format) {\n            $this->renderFile('bundle/services.xml.twig', $dir.'/Resources/config/services.xml', $parameters);\n        } else {\n            $this->renderFile('bundle/services.'.$format.'.twig', $dir.'/Resources/config/services.'.$format, $parameters);\n        }\n\n        if ('annotation' != $format) {\n            $this->renderFile('bundle/routing.'.$format.'.twig', $dir.'/Resources/config/routing.'.$format, $parameters);\n        }\n\n        if ($admin) {\n            $this->renderFile('bundle/ConfigurationMenuListener.php.twig', $dir.'/EventListener/ConfigurationMenuListener.php', $parameters);\n            $this->renderFile('bundle/AdminController.php.twig', $dir.'/Controller/AdminController.php', $parameters);\n            $this->renderFile('bundle/admin.index.html.twig.twig', $dir.'/Resources/views/Admin/index.html.twig', $parameters);\n        }\n\n        if ($structure) {\n            $this->renderFile('bundle/messages.fr.xlf', $dir.'/Resources/translations/messages.fr.xlf', $parameters);\n\n            $this->filesystem->mkdir($dir.'/Resources/doc');\n            $this->filesystem->touch($dir.'/Resources/doc/index.rst');\n            $this->filesystem->mkdir($dir.'/Resources/translations');\n            $this->filesystem->mkdir($dir.'/Resources/public/css');\n            $this->filesystem->mkdir($dir.'/Resources/public/images');\n            $this->filesystem->mkdir($dir.'/Resources/public/js');\n        }\n\n        if ($zip) {\n            $zipFilePath = dirname($this->container->getParameter('kernel.root_dir')).'/plugins/private_plugins/' . $vendor . $pluginName .'PluginBundle.zip';\n            $zipFile = new \\ZipArchive();\n            // open archive\n            if ($zipFile->open($zipFilePath, \\ZipArchive::CREATE | \\ZipArchive::OVERWRITE) !== TRUE) {\n                throw new \\RuntimeException(sprintf('Could not create zip archive \"%s\".', realpath($zipFilePath)));\n            }\n\n            $dirPathLength = strlen($dir);\n            // initialize an iterator\n            // pass it the directory to be processed\n            $iterator = new \\RecursiveIteratorIterator(new \\RecursiveDirectoryIterator($dir));\n            // iterate over the directory\n            // add each file found to the archive\n            $addedDirs = array('/');\n            foreach ($iterator as $key=>$value) {\n                $fname = substr($key, $dirPathLength);\n                if (strlen($fname) > 0 && !in_array(basename($fname), array('.', '..')) ) {\n                    if ( !in_array(dirname($fname),$addedDirs) ) {\n                        if (!$zipFile->addEmptyDir(dirname($fname))) {\n                            return false;\n                        }\n                        $addedDirs[]=dirname($fname);\n                    }\n                    if (!$zipFile->addFile(realpath($key), ltrim($fname, '/'))) {\n                        throw new \\RuntimeException(sprintf('Could not add file to zip archive \"%s\".', $key));\n                    }\n                }\n            }\n\n            // close and save archive\n            if (!$zipFile->close()) {\n                throw new \\RuntimeException(sprintf('Could not save zip archive \"%s\".', realpath($zipFilePath)));\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Generator/Generator.php",
    "content": "<?php\n\n/*\n * This file is part of the Symfony package.\n *\n * (c) Fabien Potencier <fabien@symfony.com>\n *\n * For the full copyright and license information, please view the LICENSE\n * file that was distributed with this source code.\n */\n\nnamespace Newscoop\\PluginGeneratorBundle\\Generator;\n\n/**\n * Generator is the base class for all generators.\n *\n * @author Fabien Potencier <fabien@symfony.com>\n */\nclass Generator\n{\n    private $skeletonDirs;\n\n    /**\n     * Sets an array of directories to look for templates.\n     *\n     * The directories must be sorted from the most specific to the most\n     * directory.\n     *\n     * @param array $skeletonDirs An array of skeleton dirs\n     */\n    public function setSkeletonDirs($skeletonDirs)\n    {\n        $this->skeletonDirs = is_array($skeletonDirs) ? $skeletonDirs : array($skeletonDirs);\n    }\n\n    protected function render($template, $parameters)\n    {\n        $twig = $this->getTwigEnvironment();\n\n        return $twig->render($template, $parameters);\n    }\n\n    /**\n     * Get the twig environment that will render skeletons\n     * @return \\Twig_Environment\n     */\n    protected function getTwigEnvironment()\n    {\n        return new \\Twig_Environment(new \\Twig_Loader_Filesystem($this->skeletonDirs), array(\n            'debug'            => true,\n            'cache'            => false,\n            'strict_variables' => true,\n            'autoescape'       => false,\n        ));\n    }\n\n    protected function renderFile($template, $target, $parameters)\n    {\n        if (!is_dir(dirname($target))) {\n            mkdir(dirname($target), 0777, true);\n        }\n\n        return file_put_contents($target, $this->render($template, $parameters));\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/NewscoopPluginGeneratorBundle.php",
    "content": "<?php\n\nnamespace Newscoop\\PluginGeneratorBundle;\n\nuse Symfony\\Component\\HttpKernel\\Bundle\\Bundle;\n\nclass NewscoopPluginGeneratorBundle extends Bundle\n{\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/config/routing.yml",
    "content": "newscoop_plugin_generator_homepage:\n    path:     /hello/{name}\n    defaults: { _controller: NewscoopPluginGeneratorBundle:Default:index }\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/config/services.yml",
    "content": "services:\n#    newscoop_plugin_generator.example:\n#        class: Newscoop\\PluginGeneratorBundle\\Example\n#        arguments: [@service_id, \"plain_value\", %parameter%]\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/bundle/AdminController.php.twig",
    "content": "<?php\n\nnamespace {{ namespace }}\\Controller;\n\n{% block use_statements %}\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Template;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Symfony\\Component\\HttpFoundation\\JsonResponse;\nuse Symfony\\Component\\Security\\Core\\Exception\\AccessDeniedException;\n{% endblock use_statements %}\n\n{% block class_definition %}\nclass AdminController extends Controller\n{% endblock class_definition %}\n{\n{% block class_body %}\n    /**\n     * @Route(\"/admin/{{ pluginName | lower }}\")\n     * @Template()\n     */\n    public function indexAction(Request $request)\n    {\n        return array('name' => \"admin\");\n\n    }\n{% endblock class_body %}\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/bundle/Bundle.php.twig",
    "content": "<?php\n\nnamespace {{ namespace }};\n\n{% block use_statements %}\nuse Symfony\\Component\\HttpKernel\\Bundle\\Bundle;\n{% endblock use_statements %}\n\n{% block class_definition %}\nclass {{ bundle }} extends Bundle\n{% endblock class_definition %}\n{\n{% block class_body %}\n{% endblock class_body %}\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/bundle/Configuration.php.twig",
    "content": "<?php\n\nnamespace {{ namespace }}\\DependencyInjection;\n\n{% block use_statements %}\nuse Symfony\\Component\\Config\\Definition\\Builder\\TreeBuilder;\nuse Symfony\\Component\\Config\\Definition\\ConfigurationInterface;\n{% endblock use_statements %}\n\n/**\n{% block phpdoc_class_header %}\n * This is the class that validates and merges configuration from your app/config files\n{% endblock phpdoc_class_header %}\n *\n * To learn more see {@link http://symfony.com/doc/current/cookbook/bundles/extension.html#cookbook-bundles-extension-config-class}\n */\n{% block class_definition %}\nclass Configuration implements ConfigurationInterface\n{% endblock class_definition %}\n{\n{% block class_body %}\n    /**\n     * {@inheritdoc}\n     */\n    public function getConfigTreeBuilder()\n    {\n        $treeBuilder = new TreeBuilder();\n        $rootNode = $treeBuilder->root('{{ extension_alias }}');\n\n        // Here you should define the parameters that are allowed to\n        // configure your bundle. See the documentation linked above for\n        // more information on that topic.\n\n        return $treeBuilder;\n    }\n{% endblock class_body %}\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/bundle/ConfigurationMenuListener.php.twig",
    "content": "<?php\n\nnamespace {{ namespace }}\\EventListener;\n\n{% block use_statements %}\nuse Newscoop\\NewscoopBundle\\Event\\ConfigureMenuEvent;\nuse Symfony\\Component\\Translation\\Translator;\n{% endblock use_statements %}\n\n{% block class_definition %}\nclass ConfigureMenuListener\n{% endblock class_definition %}\n{\n{% block class_body %}\n    protected $translator;\n\n    /**\n     * @param Translator $translator\n     */\n    public function __construct(Translator $translator)\n    {\n        $this->translator = $translator;\n    }\n\n    /**\n     * @param \\Newscoop\\NewscoopBundle\\Event\\ConfigureMenuEvent $event\n     */\n    public function onMenuConfigure(ConfigureMenuEvent $event)\n    {\n        $menu = $event->getMenu();\n        $menu[$this->translator->trans('Plugins')]->addChild(\n            '{{ pluginName }} Plugin',\n            array('uri' => $event->getRouter()->generate('{{ vendor | lower }}_{{ pluginName | lower }}plugin_admin_index'))\n        );\n    }\n{% endblock class_body %}\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/bundle/DefaultController.php.twig",
    "content": "<?php\n\nnamespace {{ namespace }}\\Controller;\n\n{% block use_statements %}\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Template;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\Response; \n{% endblock use_statements %}\n\n/**\n * Route(\"/{{ pluginName | lower }}\")\n */ \n{% block class_definition %}\nclass {{ pluginName }}Controller extends Controller\n{% endblock class_definition %}\n{\n{% block class_body %}\n    /**\n     * @Route(\"/{{ pluginName | lower }}/{name}\")\n     * @Template()\n     */\n    public function indexAction($name)\n    {\n        return array('name' => $name);\n    }\n{% endblock class_body %}\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/bundle/DefaultControllerTest.php.twig",
    "content": "<?php\n\nnamespace {{ namespace }}\\Tests\\Controller;\n\n{% block use_statements %}\nuse Symfony\\Bundle\\FrameworkBundle\\Test\\WebTestCase;\n{% endblock use_statements %}\n\n{% block class_definition %}\nclass {{ pluginName }}ControllerTest extends WebTestCase\n{% endblock class_definition %}\n{\n{% block class_body %}\n    public function testIndex()\n    {\n        $client = static::createClient();\n\n        $crawler = $client->request('GET', '/{{ pluginName | lower }}/Tester');\n\n        $this->assertTrue($crawler->filter('html:contains(\"Hello Tester\")')->count() > 0);\n    }\n{% endblock class_body %}\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/bundle/Extension.php.twig",
    "content": "<?php\n\nnamespace {{ namespace }}\\DependencyInjection;\n\n{% block use_statements %}\nuse Symfony\\Component\\DependencyInjection\\ContainerBuilder;\nuse Symfony\\Component\\Config\\FileLocator;\nuse Symfony\\Component\\HttpKernel\\DependencyInjection\\Extension;\nuse Symfony\\Component\\DependencyInjection\\Loader;\n{% endblock use_statements %}\n\n/**\n{% block phpdoc_class_header %}\n * This is the class that loads and manages your bundle configuration\n{% endblock phpdoc_class_header %}\n *\n * To learn more see {@link http://symfony.com/doc/current/cookbook/bundles/extension.html}\n */\n{% block class_definition %}\nclass {{ bundle_basename }}Extension extends Extension\n{% endblock class_definition %}\n{\n{% block class_body %}\n    /**\n     * {@inheritdoc}\n     */\n    public function load(array $configs, ContainerBuilder $container)\n    {\n        $configuration = new Configuration();\n        $config = $this->processConfiguration($configuration, $configs);\n\n        {% if format == 'yml' -%}\n        $loader = new Loader\\YamlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));\n        $loader->load('services.yml');\n        {%- elseif format == 'xml' or format == 'annotation' -%}\n        $loader = new Loader\\XmlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));\n        $loader->load('services.xml');\n        {%- elseif format == 'php' -%}\n        $loader = new Loader\\PhpFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));\n        $loader->load('services.php');\n        {%- endif %}\n\n    }\n{% endblock class_body %}\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/bundle/LifecycleSubscriber.php.twig",
    "content": "<?php\n\nnamespace {{ namespace }}\\EventListener;\n\n{% block use_statements %}\nuse Symfony\\Component\\EventDispatcher\\EventSubscriberInterface;\nuse Newscoop\\EventDispatcher\\Events\\GenericEvent;\nuse Symfony\\Component\\DependencyInjection\\ContainerInterface;\n{% endblock use_statements %}\n\n/**\n * Event lifecycle management\n */\n\n{% block class_definition %}\nclass LifecycleSubscriber implements EventSubscriberInterface\n{% endblock class_definition %}\n{\n{% block class_body %}\n    private $container;\n   \n    protected $em;\n \n    protected $scheduler;\n\n    protected $cronjobs;\n\n    protected $preferences;\n\n    public function __construct(ContainerInterface $container)\n    {\n        $appDirectory = realpath(__DIR__.'/../../../../application/console');\n        $this->container = $container;\n        $this->em = $this->container->get('em');\n        $this->scheduler = $this->container->get('newscoop.scheduler');\n        $this->preferences = $this->container->get('system_preferences_service');\n        $this->cronjobs = array();\n    }\n\n    public function install(GenericEvent $event)\n    {\n        $tool = new \\Doctrine\\ORM\\Tools\\SchemaTool($this->em);\n        $tool->updateSchema($this->getClasses(), true);\n        \n        // Set default preferences here\n\n        // Generate proxies for entities\n        $this->em->getProxyFactory()->generateProxyClasses($this->getClasses(), __DIR__ . '/../../../../library/Proxy');\n        $this->addJobs();\n    }\n\n    public function update(GenericEvent $event)\n    {\n        $tool = new \\Doctrine\\ORM\\Tools\\SchemaTool($this->em);\n        $tool->updateSchema($this->getClasses(), true);\n\n        // Generate proxies for entities\n        $this->em->getProxyFactory()->generateProxyClasses($this->getClasses(), __DIR__ . '/../../../../library/Proxy');\n    }\n\n    public function remove(GenericEvent $event)\n    {\n        $tool = new \\Doctrine\\ORM\\Tools\\SchemaTool($this->em);\n        $tool->dropSchema($this->getClasses(), true);\n        $this->removeJobs();\n    }\n\n    public static function getSubscribedEvents()\n    {\n        return array(\n            'plugin.install.newscoop_{{ pluginName | lower }}_plugin_bundle' => array('install', 1),\n            'plugin.update.newscoop_{{ pluginName | lower }}_plugin_bundle' => array('update', 1),\n            'plugin.remove.newscoop_{{ pluginName | lower }}_plugin_bundle' => array('remove', 1),\n        );\n    }\n\n    /**\n     * Add plugin cron jobs\n     */\n    private function addJobs()\n    {\n        foreach ($this->cronjobs as $jobName => $jobConfig) {\n            $this->scheduler->registerJob($jobName, $jobConfig);\n        }\n    }\n\n    /**\n     * Remove plugin cron jobs\n     */\n    private function removeJobs()\n    {\n        foreach ($this->cronjobs as $jobName => $jobConfig) {\n            $this->scheduler->removeJob($jobName, $jobConfig);\n        }\n    }\n\n    private function getClasses()\n    {\n        return array();\n    }\n{% endblock class_body %}\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/bundle/admin.index.html.twig.twig",
    "content": "{% raw %}\n{% extends 'NewscoopNewscoopBundle::admin_layout.html.twig' %}\n\n{% block admin_title %}{{ parent() }} - {% endraw %}{{ pluginName }}{% raw %} Admin{% endblock %}\n{% block admin_page_title_content %}{% endraw %}{{ pluginName }}{% raw %} Admin{% endblock %}\n\n{% block admin_stylesheets %}\n<link rel=\"stylesheet\" href=\"{{ asset('/bundles/newscoopnewscoop/css/jquery.dynatable.css') }}\">\n{% endblock %}\n\n{% block admin_scripts %}\n<script src=\"{{ asset('/js/select2/select2.js') }}\"></script>\n<script src=\"{{ asset('/bundles/newscoopnewscoop/js/jquery.dynatable.js') }}\"></script>\n{% endblock %}\n\n{% block admin_content %}\n{% endraw %}\n\n<div class=\"plugin-container\">\n  <p>Hi, {% raw %}{{ name }}{% endraw %}</p>\n</div>\n\n{% raw %}{% endblock %}{% endraw %}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/bundle/composer.json.twig",
    "content": "{\n    \"name\": \"{{ vendor | lower }}/{{ pluginName | lower }}-plugin-bundle\",\n    \"description\": \"{{ pluginName }} plugin for Newscoop\",\n    \"keywords\": [\"{{ vendor }}\", \"{{ pluginName | lower }}\"],\n    \"version\": \"0.0.1\",\n    \"type\": \"newscoop-plugin\",\n    \"license\": \"GPL-3.0\",\n    \"authors\": [\n        {\n            \"name\": \"Your Name\",\n            \"email\": \"your.name@domain.com\"\n        }\n    ],\n    \"require\": {\n        \"php\": \">=5.3.3\",\n        \"newscoop/plugins-installer\": \">=v0.2\"\n    },\n    \"autoload\": {\n        \"psr-0\": { \"{{ vendor | capitalize }}\\\\{{ pluginName }}PluginBundle\\\\{{ pluginName }}PluginBundle\": \"\" }\n    },\n    \"target-dir\": \"{{ vendor | capitalize }}/{{ pluginName }}PluginBundle\",\n    \"minimum-stability\": \"dev\"\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/bundle/index.html.twig.twig",
    "content": "Hello {% raw %}{{ name }}{% endraw %}!\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/bundle/messages.fr.xlf",
    "content": "<?xml version=\"1.0\"?>\n<xliff version=\"1.2\" xmlns=\"urn:oasis:names:tc:xliff:document:1.2\">\n    <file source-language=\"en\" datatype=\"plaintext\" original=\"file.ext\">\n        <body>\n            <trans-unit id=\"1\">\n                <source>Symfony2 is great</source>\n                <target>J'aime Symfony2</target>\n            </trans-unit>\n        </body>\n    </file>\n</xliff>\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/bundle/routing.php.twig",
    "content": "<?php\n\n{% block use_statements %}\nuse Symfony\\Component\\Routing\\RouteCollection;\nuse Symfony\\Component\\Routing\\Route;\n{% endblock use_statements %}\n\n{% block definition %}\n$collection = new RouteCollection();\n{% endblock definition %}\n\n{% block body %}\n$collection->add('{{ extension_alias }}', new Route('/{{ pluginName | lower }}/{name}', array(\n    '_controller' => '{{ bundle }}:Default:index',\n)));\n{% endblock body %}\n\n{% block return %}\nreturn $collection;\n{% endblock return %}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/bundle/routing.xml.twig",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n\n<routes xmlns=\"http://symfony.com/schema/routing\"\n    xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n    xsi:schemaLocation=\"http://symfony.com/schema/routing http://symfony.com/schema/routing/routing-1.0.xsd\">\n\n{% block body %}\n    <route id=\"{{ extension_alias }}\" path=\"/hello/{name}\">\n        <default key=\"_controller\">{{ bundle }}:Default:index</default>\n    </route>\n{% endblock body %}\n</routes>\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/bundle/routing.yml.twig",
    "content": "{{ extension_alias }}:\n    resource: \"@{{ bundle }}/Controller\"\n    type:     annotation\n    prefix:   /\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/bundle/services.php.twig",
    "content": "<?php\n\n{% block use_statements %}\nuse Symfony\\Component\\DependencyInjection\\Definition;\nuse Symfony\\Component\\DependencyInjection\\Reference;\nuse Symfony\\Component\\DependencyInjection\\Parameter;\n{% endblock use_statements %}\n\n/*\n\n{% block services %}\n$container->setDefinition(\n    '{{ extension_alias }}.example',\n    new Definition(\n        '{{ namespace }}\\Example',\n        array(\n            new Reference('service_id'),\n            \"plain_value\",\n            new Parameter('parameter_name'),\n        )\n    )\n);\n{% endblock services %}\n\n*/\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/bundle/services.xml.twig",
    "content": "<?xml version=\"1.0\" ?>\n\n<container xmlns=\"http://symfony.com/schema/dic/services\"\n    xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n    xsi:schemaLocation=\"http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd\">\n\n    <!--\n    <services>\n{% block services %}\n        <service id=\"{{ extension_alias }}.example\" class=\"{{ namespace }}\\Example\">\n            <argument type=\"service\" id=\"service_id\" />\n            <argument>plain_value</argument>\n            <argument>%parameter_name%</argument>\n        </service>\n{% endblock services %}\n    </services>\n    -->\n</container>\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/bundle/services.yml.twig",
    "content": "services:\n{% block services %}\n    {{ vendor | lower }}_{{ pluginName | lower }}_plugin.lifecyclesubscriber:\n        class: {{ namespace }}\\EventListener\\LifecycleSubscriber\n        arguments:\n            - @service_container\n        tags:\n            - { name: kernel.event_subscriber}\n\n{% if admin == true %}\n    {{ vendor | lower }}_{{ pluginName | lower }}_plugin.configure_menu_listener:\n        class: {{ namespace }}\\EventListener\\ConfigureMenuListener\n        tags:\n          - { name: kernel.event_listener, event: newscoop_newscoop.menu_configure, method: onMenuConfigure }\n        arguments:\n            - @translator\n{% endif %}\n\n{% endblock services %}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/controller/Controller.php.twig",
    "content": "<?php\n\nnamespace {{ namespace }}\\Controller;\n\n{% block use_statements %}\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\n{% if 'annotation' == format.routing -%}\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Template;\n{% endif %}\n{% endblock use_statements %}\n\n{% block class_definition %}\nclass {{ controller }}Controller extends Controller\n{% endblock class_definition %}\n{\n{% block class_body %}\n{% for action in actions %}\n    {% if 'annotation' == format.routing -%}\n    /**\n     * @Route(\"{{ action.route }}\")\n     {% if 'default' == action.template -%}\n     * @Template()\n     {% else -%}\n     * @Template(\"{{ action.template }}\")\n     {% endif -%}\n     */\n    {% endif -%}\n    public function {{ action.name }}(\n        {%- if action.placeholders|length > 0 -%}\n            ${{- action.placeholders|join(', $') -}}\n        {%- endif -%})\n    {\n        {% if 'annotation' != format.routing -%}\n            {% if 'default' == action.template -%}\n            return $this->render('{{ bundle }}:{{ controller }}:{{ action.name|slice(0, -6) }}.html.{{ format.templating }}', array(\n                // ...\n            ));\n            {%- else -%}\n            return $this->render('{{ action.template }}', array(\n                // ...\n            ));\n            {%- endif %}\n        {%- else -%}\n            return array(\n                // ...\n            );\n        {%- endif %}\n    }\n\n{% endfor -%}\n{% endblock class_body %}\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/controller/ControllerTest.php.twig",
    "content": "<?php\n\nnamespace {{ namespace }}\\Tests\\Controller;\n\n{% block use_statements %}\nuse Symfony\\Bundle\\FrameworkBundle\\Test\\WebTestCase;\n{% endblock use_statements %}\n\n{% block class_definition %}\nclass {{ controller }}ControllerTest extends WebTestCase\n{% endblock class_definition %}\n{\n{% block class_body %}\n{% for action in actions %}\n    public function test{{ action.basename|capitalize }}()\n    {\n        $client = static::createClient();\n\n        $crawler = $client->request('GET', '{{ action.route }}');\n    }\n\n{% endfor -%}\n{% endblock class_body %}\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/controller/Template.html.php.twig",
    "content": "<?php $view->extend('::base.html.twig') ?>\n\n<?php $view['slots']->set('title', '{{ bundle }}:{{ controller }}:{{ action.basename }}') ?>\n\n<?php $view['slots']->start('body') ?>\n    <h1>Welcome to the {{ controller }}:{{ action.basename }} page</h1>\n<?php $view['slots']->stop() ?>\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/controller/Template.html.twig.twig",
    "content": "{{ '{% extends \"::base.html.twig\" %}' }}\n\n{{ '{% block title %}' -}}\n{{ bundle }}:{{ controller }}:{{ action.basename }}\n{{- '{% endblock %}' }}\n\n{{ '{% block body %}' }}\n<h1>Welcome to the {{ controller }}:{{ action.basename }} page</h1>\n{{ '{% endblock %}' }}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/crud/actions/create.php.twig",
    "content": "    /**\n{% block phpdoc_method_header %}\n     * Creates a new {{ entity }} entity.\n{% endblock phpdoc_method_header %}\n     *\n{% block phpdoc_method_annotations %}\n{% if 'annotation' == format %}\n     * @Route(\"/\", name=\"{{ route_name_prefix }}_create\")\n     * @Method(\"POST\")\n     * @Template(\"{{ bundle }}:{{ entity }}:new.html.twig\")\n{% endif %}\n{% endblock phpdoc_method_annotations %}\n     */\n{% block method_definition %}\n    public function createAction(Request $request)\n{% endblock method_definition %}\n    {\n{% block method_body %}\n        $entity = new {{ entity_class }}();\n        $form = $this->createCreateForm($entity);\n        $form->handleRequest($request);\n\n        if ($form->isValid()) {\n            $em = $this->getDoctrine()->getManager();\n            $em->persist($entity);\n            $em->flush();\n\n            {% if 'show' in actions -%}\n                return $this->redirect($this->generateUrl('{{ route_name_prefix }}_show', array('id' => $entity->getId())));\n            {%- else -%}\n                return $this->redirect($this->generateUrl('{{ route_name_prefix }}'));\n            {%- endif %}\n\n        }\n{% endblock method_body %}\n\n{% block method_return %}\n{% if 'annotation' == format %}\n        return array(\n            'entity' => $entity,\n            'form'   => $form->createView(),\n        );\n{% else %}\n        return $this->render('{{ bundle }}:{{ entity|replace({'\\\\': '/'}) }}:new.html.twig', array(\n            'entity' => $entity,\n            'form'   => $form->createView(),\n        ));\n{% endif %}\n{% endblock method_return %}\n    }\n\n{% block form %}\n    /**\n     * Creates a form to create a {{ entity }} entity.\n     *\n     * @param {{ entity_class }} $entity The entity\n     *\n     * @return \\Symfony\\Component\\Form\\Form The form\n     */\n    private function createCreateForm({{ entity_class }} $entity)\n    {\n        $form = $this->createForm(new {{ entity_class }}Type(), $entity, array(\n            'action' => $this->generateUrl('{{ route_name_prefix }}_create'),\n            'method' => 'POST',\n        ));\n\n        $form->add('submit', 'submit', array('label' => 'Create'));\n\n        return $form;\n    }\n{% endblock form %}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/crud/actions/delete.php.twig",
    "content": "    /**\n{% block phpdoc_method_header %}\n     * Deletes a {{ entity }} entity.\n{% endblock phpdoc_method_header %}\n     *\n{% block phpdoc_method_annotations %}\n{% if 'annotation' == format %}\n     * @Route(\"/{id}\", name=\"{{ route_name_prefix }}_delete\")\n     * @Method(\"DELETE\")\n{% endif %}\n{% endblock phpdoc_method_annotations %}\n     */\n{% block method_definition %}\n    public function deleteAction(Request $request, $id)\n{% endblock method_definition %}\n    {\n{% block method_body %}\n        $form = $this->createDeleteForm($id);\n        $form->handleRequest($request);\n\n        if ($form->isValid()) {\n            $em = $this->getDoctrine()->getManager();\n            $entity = $em->getRepository('{{ bundle }}:{{ entity }}')->find($id);\n\n            if (!$entity) {\n                throw $this->createNotFoundException('Unable to find {{ entity }} entity.');\n            }\n\n            $em->remove($entity);\n            $em->flush();\n        }\n{% endblock method_body %}\n\n{% block method_return %}\n        return $this->redirect($this->generateUrl('{{ route_name_prefix }}'));\n{% endblock method_return %}\n    }\n\n{% block form %}\n    /**\n     * Creates a form to delete a {{ entity }} entity by id.\n     *\n     * @param mixed $id The entity id\n     *\n     * @return \\Symfony\\Component\\Form\\Form The form\n     */\n    private function createDeleteForm($id)\n    {\n        return $this->createFormBuilder()\n            ->setAction($this->generateUrl('{{ route_name_prefix }}_delete', array('id' => $id)))\n            ->setMethod('DELETE')\n            ->add('submit', 'submit', array('label' => 'Delete'))\n            ->getForm()\n        ;\n    }\n{% endblock form %}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/crud/actions/edit.php.twig",
    "content": "\n    /**\n{% block phpdoc_method_header %}\n     * Displays a form to edit an existing {{ entity }} entity.\n{% endblock phpdoc_method_header %}\n     *\n{% block phpdoc_method_annotations %}\n{% if 'annotation' == format %}\n     * @Route(\"/{id}/edit\", name=\"{{ route_name_prefix }}_edit\")\n     * @Method(\"GET\")\n     * @Template()\n{% endif %}\n{% endblock phpdoc_method_annotations %}\n     */\n{% block method_definition %}\n    public function editAction($id)\n{% endblock method_definition %}\n    {\n{% block method_body %}\n        $em = $this->getDoctrine()->getManager();\n\n        $entity = $em->getRepository('{{ bundle }}:{{ entity }}')->find($id);\n\n        if (!$entity) {\n            throw $this->createNotFoundException('Unable to find {{ entity }} entity.');\n        }\n\n        $editForm = $this->createEditForm($entity);\n        $deleteForm = $this->createDeleteForm($id);\n{% endblock method_body %}\n\n{% block method_return %}\n{% if 'annotation' == format %}\n        return array(\n            'entity'      => $entity,\n            'edit_form'   => $editForm->createView(),\n            'delete_form' => $deleteForm->createView(),\n        );\n{% else %}\n        return $this->render('{{ bundle }}:{{ entity|replace({'\\\\': '/'}) }}:edit.html.twig', array(\n            'entity'      => $entity,\n            'edit_form'   => $editForm->createView(),\n            'delete_form' => $deleteForm->createView(),\n        ));\n{% endif %}\n{% endblock method_return %}\n    }\n\n{% block form %}\n    /**\n    * Creates a form to edit a {{ entity }} entity.\n    *\n    * @param {{ entity_class }} $entity The entity\n    *\n    * @return \\Symfony\\Component\\Form\\Form The form\n    */\n    private function createEditForm({{ entity_class }} $entity)\n    {\n        $form = $this->createForm(new {{ entity_class }}Type(), $entity, array(\n            'action' => $this->generateUrl('{{ route_name_prefix }}_update', array('id' => $entity->getId())),\n            'method' => 'PUT',\n        ));\n\n        $form->add('submit', 'submit', array('label' => 'Update'));\n\n        return $form;\n    }\n{% endblock form %}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/crud/actions/index.php.twig",
    "content": "\n    /**\n{% block phpdoc_method_header %}\n     * Lists all {{ entity }} entities.\n{% endblock phpdoc_method_header %}\n     *\n{% block phpdoc_method_annotations %}\n{% if 'annotation' == format %}\n     * @Route(\"/\", name=\"{{ route_name_prefix }}\")\n     * @Method(\"GET\")\n     * @Template()\n{% endif %}\n{% endblock phpdoc_method_annotations %}\n     */\n{% block method_definition %}\n    public function indexAction()\n{% endblock method_definition %}\n    {\n{% block method_body %}\n        $em = $this->getDoctrine()->getManager();\n\n        $entities = $em->getRepository('{{ bundle }}:{{ entity }}')->findAll();\n{% endblock method_body %}\n\n{% block method_return %}\n{% if 'annotation' == format %}\n        return array(\n            'entities' => $entities,\n        );\n{% else %}\n        return $this->render('{{ bundle }}:{{ entity|replace({'\\\\': '/'}) }}:index.html.twig', array(\n            'entities' => $entities,\n        ));\n{% endif %}\n{% endblock method_return %}\n    }\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/crud/actions/new.php.twig",
    "content": "\n    /**\n{% block phpdoc_method_header %}\n     * Displays a form to create a new {{ entity }} entity.\n{% endblock phpdoc_method_header %}\n     *\n{% block phpdoc_method_annotations %}\n{% if 'annotation' == format %}\n     * @Route(\"/new\", name=\"{{ route_name_prefix }}_new\")\n     * @Method(\"GET\")\n     * @Template()\n{% endif %}\n{% endblock phpdoc_method_annotations %}\n     */\n{% block method_definition %}\n    public function newAction()\n{% endblock method_definition %}\n    {\n{% block method_body %}\n        $entity = new {{ entity_class }}();\n        $form   = $this->createCreateForm($entity);\n{% endblock method_body %}\n\n{% block method_return %}\n{% if 'annotation' == format %}\n        return array(\n            'entity' => $entity,\n            'form'   => $form->createView(),\n        );\n{% else %}\n        return $this->render('{{ bundle }}:{{ entity|replace({'\\\\': '/'}) }}:new.html.twig', array(\n            'entity' => $entity,\n            'form'   => $form->createView(),\n        ));\n{% endif %}\n{% endblock method_return %}\n    }\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/crud/actions/show.php.twig",
    "content": "\n    /**\n{% block phpdoc_method_header %}\n     * Finds and displays a {{ entity }} entity.\n{% endblock phpdoc_method_header %}\n     *\n{% block phpdoc_method_annotations %}\n{% if 'annotation' == format %}\n     * @Route(\"/{id}\", name=\"{{ route_name_prefix }}_show\")\n     * @Method(\"GET\")\n     * @Template()\n{% endif %}\n{% endblock phpdoc_method_annotations %}\n     */\n{% block method_definition %}\n    public function showAction($id)\n{% endblock method_definition %}\n    {\n{% block method_body %}\n        $em = $this->getDoctrine()->getManager();\n\n        $entity = $em->getRepository('{{ bundle }}:{{ entity }}')->find($id);\n\n        if (!$entity) {\n            throw $this->createNotFoundException('Unable to find {{ entity }} entity.');\n        }\n{% if 'delete' in actions %}\n\n        $deleteForm = $this->createDeleteForm($id);\n{% endif %}\n{% endblock method_body %}\n\n{% block method_return %}\n{% if 'annotation' == format %}\n        return array(\n            'entity'      => $entity,\n{% if 'delete' in actions %}\n            'delete_form' => $deleteForm->createView(),\n{% endif %}\n        );\n{% else %}\n        return $this->render('{{ bundle }}:{{ entity|replace({'\\\\': '/'}) }}:show.html.twig', array(\n            'entity'      => $entity,\n{% if 'delete' in actions %}\n            'delete_form' => $deleteForm->createView(),\n{% endif %}\n        ));\n{% endif %}\n{% endblock method_return %}\n    }\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/crud/actions/update.php.twig",
    "content": "    /**\n{% block phpdoc_method_header %}\n     * Edits an existing {{ entity }} entity.\n{% endblock phpdoc_method_header %}\n     *\n{% block phpdoc_method_annotations %}\n{% if 'annotation' == format %}\n     * @Route(\"/{id}\", name=\"{{ route_name_prefix }}_update\")\n     * @Method(\"PUT\")\n     * @Template(\"{{ bundle }}:{{ entity }}:edit.html.twig\")\n{% endif %}\n{% endblock phpdoc_method_annotations %}\n     */\n{% block method_definition %}\n    public function updateAction(Request $request, $id)\n{% endblock method_definition %}\n    {\n{% block method_body %}\n        $em = $this->getDoctrine()->getManager();\n\n        $entity = $em->getRepository('{{ bundle }}:{{ entity }}')->find($id);\n\n        if (!$entity) {\n            throw $this->createNotFoundException('Unable to find {{ entity }} entity.');\n        }\n\n        $deleteForm = $this->createDeleteForm($id);\n        $editForm = $this->createEditForm($entity);\n        $editForm->handleRequest($request);\n\n        if ($editForm->isValid()) {\n            $em->flush();\n\n            return $this->redirect($this->generateUrl('{{ route_name_prefix }}_edit', array('id' => $id)));\n        }\n{% endblock method_body %}\n\n{% block method_return %}\n{% if 'annotation' == format %}\n        return array(\n            'entity'      => $entity,\n            'edit_form'   => $editForm->createView(),\n            'delete_form' => $deleteForm->createView(),\n        );\n{% else %}\n        return $this->render('{{ bundle }}:{{ entity|replace({'\\\\': '/'}) }}:edit.html.twig', array(\n            'entity'      => $entity,\n            'edit_form'   => $editForm->createView(),\n            'delete_form' => $deleteForm->createView(),\n        ));\n{% endif %}\n{% endblock method_return %}\n    }\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/crud/config/routing.php.twig",
    "content": "<?php\n\n{% block use_statements %}\nuse Symfony\\Component\\Routing\\RouteCollection;\nuse Symfony\\Component\\Routing\\Route;\n{% endblock use_statements %}\n\n{% block definition %}\n$collection = new RouteCollection();\n{% endblock definition %}\n\n{% block body %}\n{% if 'index' in actions %}\n$collection->add('{{ route_name_prefix }}', new Route('/', array(\n    '_controller' => '{{ bundle }}:{{ entity }}:index',\n)));\n{% endif %}\n\n{% if 'show' in actions %}\n$collection->add('{{ route_name_prefix }}_show', new Route('/{id}/show', array(\n    '_controller' => '{{ bundle }}:{{ entity }}:show',\n)));\n{% endif %}\n\n{% if 'new' in actions %}\n$collection->add('{{ route_name_prefix }}_new', new Route('/new', array(\n    '_controller' => '{{ bundle }}:{{ entity }}:new',\n)));\n\n$collection->add('{{ route_name_prefix }}_create', new Route(\n    '/create',\n    array('_controller' => '{{ bundle }}:{{ entity }}:create'),\n    array('_method' => 'post')\n));\n{% endif %}\n\n{% if 'edit' in actions %}\n$collection->add('{{ route_name_prefix }}_edit', new Route('/{id}/edit', array(\n    '_controller' => '{{ bundle }}:{{ entity }}:edit',\n)));\n\n$collection->add('{{ route_name_prefix }}_update', new Route(\n    '/{id}/update',\n    array('_controller' => '{{ bundle }}:{{ entity }}:update'),\n    array('_method' => 'post|put')\n));\n{% endif %}\n\n{% if 'delete' in actions %}\n$collection->add('{{ route_name_prefix }}_delete', new Route(\n    '/{id}/delete',\n    array('_controller' => '{{ bundle }}:{{ entity }}:delete'),\n    array('_method' => 'post|delete')\n));\n{% endif %}\n{% endblock body %}\n\n{% block return %}\nreturn $collection;\n{% endblock return %}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/crud/config/routing.xml.twig",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n\n<routes xmlns=\"http://symfony.com/schema/routing\"\n    xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n    xsi:schemaLocation=\"http://symfony.com/schema/routing http://symfony.com/schema/routing/routing-1.0.xsd\">\n\n{% block body %}\n    <route id=\"{{ route_name_prefix }}\" path=\"/\">\n        <default key=\"_controller\">{{ bundle }}:{{ entity }}:index</default>\n    </route>\n\n    <route id=\"{{ route_name_prefix }}_show\" path=\"/{id}/show\">\n        <default key=\"_controller\">{{ bundle }}:{{ entity }}:show</default>\n    </route>\n\n{% if 'new' in actions %}\n    <route id=\"{{ route_name_prefix }}_new\" path=\"/new\">\n        <default key=\"_controller\">{{ bundle }}:{{ entity }}:new</default>\n    </route>\n\n    <route id=\"{{ route_name_prefix }}_create\" path=\"/create\">\n        <default key=\"_controller\">{{ bundle }}:{{ entity }}:create</default>\n        <requirement key=\"_method\">post</requirement>\n    </route>\n{% endif %}\n\n{% if 'edit' in actions %}\n    <route id=\"{{ route_name_prefix }}_edit\" path=\"/{id}/edit\">\n        <default key=\"_controller\">{{ bundle }}:{{ entity }}:edit</default>\n    </route>\n\n    <route id=\"{{ route_name_prefix }}_update\" path=\"/{id}/update\">\n        <default key=\"_controller\">{{ bundle }}:{{ entity }}:update</default>\n        <requirement key=\"_method\">post|put</requirement>\n    </route>\n{% endif %}\n\n{% if 'delete' in actions %}\n    <route id=\"{{ route_name_prefix }}_delete\" path=\"/{id}/delete\">\n        <default key=\"_controller\">{{ bundle }}:{{ entity }}:delete</default>\n        <requirement key=\"_method\">post|delete</requirement>\n    </route>\n{% endif %}\n{% endblock body %}\n\n</routes>\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/crud/config/routing.yml.twig",
    "content": "{% if 'index' in actions %}\n{{ route_name_prefix }}:\n    path:     /\n    defaults: { _controller: \"{{ bundle }}:{{ entity }}:index\" }\n{% endif %}\n\n{% if 'show' in actions %}\n{{ route_name_prefix }}_show:\n    path:     /{id}/show\n    defaults: { _controller: \"{{ bundle }}:{{ entity }}:show\" }\n{% endif %}\n\n{% if 'new' in actions %}\n{{ route_name_prefix }}_new:\n    path:     /new\n    defaults: { _controller: \"{{ bundle }}:{{ entity }}:new\" }\n\n{{ route_name_prefix }}_create:\n    path:     /create\n    defaults: { _controller: \"{{ bundle }}:{{ entity }}:create\" }\n    requirements: { _method: post }\n{% endif %}\n\n{% if 'edit' in actions %}\n{{ route_name_prefix }}_edit:\n    path:     /{id}/edit\n    defaults: { _controller: \"{{ bundle }}:{{ entity }}:edit\" }\n\n{{ route_name_prefix }}_update:\n    path:     /{id}/update\n    defaults: { _controller: \"{{ bundle }}:{{ entity }}:update\" }\n    requirements: { _method: post|put }\n{% endif %}\n\n{% if 'delete' in actions %}\n{{ route_name_prefix }}_delete:\n    path:     /{id}/delete\n    defaults: { _controller: \"{{ bundle }}:{{ entity }}:delete\" }\n    requirements: { _method: post|delete }\n{% endif %}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/crud/controller.php.twig",
    "content": "<?php\n\nnamespace {{ namespace }}\\Controller{{ entity_namespace ? '\\\\' ~ entity_namespace : '' }};\n\n{% block use_statements %}\n{% if 'new' in actions or 'edit' in actions or 'delete' in actions %}\nuse Symfony\\Component\\HttpFoundation\\Request;\n{%- endif %}\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\n{% if 'annotation' == format -%}\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Method;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Template;\n{%- endif %}\n\nuse {{ namespace }}\\Entity\\{{ entity }};\n{% if 'new' in actions or 'edit' in actions %}\nuse {{ namespace }}\\Form\\{{ entity }}Type;\n{% endif %}\n{% endblock use_statements %}\n\n/**\n{% block phpdoc_class_header %}\n * {{ entity }} controller.\n{% endblock phpdoc_class_header %}\n *\n{% block phpdoc_class_annotations %}\n{% if 'annotation' == format %}\n * @Route(\"/{{ route_prefix }}\")\n{% endif %}\n{% endblock phpdoc_class_annotations %}\n */\n{% block class_definition %}\nclass {{ entity_class }}Controller extends Controller\n{% endblock class_definition %}\n{\n{% block class_body %}\n    {%- if 'index' in actions %}\n        {%- include 'crud/actions/index.php.twig' %}\n    {%- endif %}\n\n    {%- if 'new' in actions %}\n        {%- include 'crud/actions/create.php.twig' %}\n        {%- include 'crud/actions/new.php.twig' %}\n    {%- endif %}\n\n    {%- if 'show' in actions %}\n        {%- include 'crud/actions/show.php.twig' %}\n    {%- endif %}\n\n    {%- if 'edit' in actions %}\n        {%- include 'crud/actions/edit.php.twig' %}\n        {%- include 'crud/actions/update.php.twig' %}\n    {%- endif %}\n\n    {%- if 'delete' in actions %}\n        {%- include 'crud/actions/delete.php.twig' %}\n    {%- endif %}\n{% endblock class_body %}\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/crud/tests/others/full_scenario.php.twig",
    "content": "\n    public function testCompleteScenario()\n    {\n        // Create a new client to browse the application\n        $client = static::createClient();\n\n        // Create a new entry in the database\n        $crawler = $client->request('GET', '/{{ route_prefix }}/');\n        $this->assertEquals(200, $client->getResponse()->getStatusCode(), \"Unexpected HTTP status code for GET /{{ route_prefix }}/\");\n        $crawler = $client->click($crawler->selectLink('Create a new entry')->link());\n\n        // Fill in the form and submit it\n        $form = $crawler->selectButton('Create')->form(array(\n            '{{ form_type_name|lower }}[field_name]'  => 'Test',\n            // ... other fields to fill\n        ));\n\n        $client->submit($form);\n        $crawler = $client->followRedirect();\n\n        // Check data in the show view\n        $this->assertGreaterThan(0, $crawler->filter('td:contains(\"Test\")')->count(), 'Missing element td:contains(\"Test\")');\n\n        // Edit the entity\n        $crawler = $client->click($crawler->selectLink('Edit')->link());\n\n        $form = $crawler->selectButton('Update')->form(array(\n            '{{ form_type_name|lower }}[field_name]'  => 'Foo',\n            // ... other fields to fill\n        ));\n\n        $client->submit($form);\n        $crawler = $client->followRedirect();\n\n        // Check the element contains an attribute with value equals \"Foo\"\n        $this->assertGreaterThan(0, $crawler->filter('[value=\"Foo\"]')->count(), 'Missing element [value=\"Foo\"]');\n\n        // Delete the entity\n        $client->submit($crawler->selectButton('Delete')->form());\n        $crawler = $client->followRedirect();\n\n        // Check the entity has been delete on the list\n        $this->assertNotRegExp('/Foo/', $client->getResponse()->getContent());\n    }\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/crud/tests/others/short_scenario.php.twig",
    "content": "\n    public function testCompleteScenario()\n    {\n        // Create a new client to browse the application\n        $client = static::createClient();\n\n        // Go to the list view\n        $crawler = $client->request('GET', '/{{ route_prefix }}/');\n        $this->assertEquals(200, $client->getResponse()->getStatusCode(), \"Unexpected HTTP status code for GET /{{ route_prefix }}/\");\n\n        // Go to the show view\n        $crawler = $client->click($crawler->selectLink('show')->link());\n        $this->assertEquals(200, $client->getResponse()->getStatusCode(), \"Unexpected HTTP status code\");\n    }\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/crud/tests/test.php.twig",
    "content": "<?php\n\nnamespace {{ namespace }}\\Tests\\Controller{{ entity_namespace ? '\\\\' ~ entity_namespace : '' }};\n\n{% block use_statements %}\nuse Symfony\\Bundle\\FrameworkBundle\\Test\\WebTestCase;\n{% endblock use_statements %}\n\n{% block class_definition %}\nclass {{ entity_class }}ControllerTest extends WebTestCase\n{% endblock class_definition %}\n{\n{% block class_body %}\n    /*\n\n{%- if 'new' in actions %}\n    {%- include 'crud/tests/others/full_scenario.php.twig' -%}\n{%- else %}\n    {%- include 'crud/tests/others/short_scenario.php.twig' -%}\n{%- endif %}\n\n    */\n{% endblock class_body %}\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/crud/views/edit.html.twig.twig",
    "content": "{% block extends %}\n{{ \"{% extends '::base.html.twig' %}\" }}\n{% endblock extends %}\n\n{% block body %}\n{{ \"{% block body -%}\" }}\n    <h1>{{ entity }} edit</h1>\n\n    {{ '{{ form(edit_form) }}' }}\n\n    {% set hide_edit, hide_delete = true, false %}\n    {% include 'crud/views/others/record_actions.html.twig.twig' %}\n{{ \"{% endblock %}\" }}\n{% endblock body %}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/crud/views/index.html.twig.twig",
    "content": "{% block extends %}\n{{ \"{% extends '::base.html.twig' %}\" }}\n{% endblock extends %}\n\n{% block body %}\n{{ \"{% block body -%}\" }}\n    <h1>{{ entity }} list</h1>\n\n    <table class=\"records_list\">\n        <thead>\n            <tr>\n            {%- for field, metadata in fields %}\n\n                <th>{{ field|capitalize }}</th>\n\n            {%- endfor %}\n\n                <th>Actions</th>\n            </tr>\n        </thead>\n        <tbody>\n        {{ '{% for entity in entities %}' }}\n            <tr>\n\n        {%- for field, metadata in fields %}\n            {%- if loop.first and ('show' in actions) %}\n\n                <td><a href=\"{{ \"{{ path('\" ~ route_name_prefix ~ \"_show', { 'id': entity.\"~ identifier ~\" }) }}\" }}\">{{ '{{ entity.' ~ field|replace({'_': ''}) ~ ' }}' }}</a></td>\n\n            {%- elseif metadata.type in ['date', 'datetime'] %}\n\n                <td>{{ '{% if entity.' ~ field|replace({'_': ''}) ~ ' %}{{ entity.' ~ field|replace({'_': ''}) ~ '|date(\\'Y-m-d H:i:s\\') }}{% endif %}' }}</td>\n\n            {%- else %}\n\n                <td>{{ '{{ entity.' ~ field|replace({'_': ''}) ~ ' }}' }}</td>\n\n            {%- endif %}\n\n            {%- if loop.last %}\n\n                <td>\n                    {%- include \"crud/views/others/actions.html.twig.twig\" %}\n                </td>\n\n            {%- endif %}\n        {%- endfor %}\n\n            </tr>\n        {{ '{% endfor %}' }}\n        </tbody>\n    </table>\n\n    {% if 'new' in actions %}\n    <ul>\n        <li>\n            <a href=\"{{ \"{{ path('\" ~ route_name_prefix ~ \"_new') }}\" }}\">\n                Create a new entry\n            </a>\n        </li>\n    </ul>\n    {% endif %}\n{{ \"{% endblock %}\" }}\n{% endblock body %}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/crud/views/new.html.twig.twig",
    "content": "{% block extends %}\n{{ \"{% extends '::base.html.twig' %}\" }}\n{% endblock extends %}\n\n{% block body %}\n{{ \"{% block body -%}\" }}\n    <h1>{{ entity }} creation</h1>\n\n    {{ '{{ form(form) }}' }}\n\n    {% set hide_edit, hide_delete = true, true %}\n    {% include 'crud/views/others/record_actions.html.twig.twig' %}\n{{ \"{% endblock %}\" }}\n{% endblock body %}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/crud/views/others/actions.html.twig.twig",
    "content": "\n                <ul>\n\n                {%- for action in record_actions %}\n\n                    <li>\n                        <a href=\"{{ \"{{ path('\" ~ route_name_prefix ~ \"_\" ~ action ~ \"', { 'id': entity.\"~ identifier ~\" }) }}\" }}\">{{ action }}</a>\n                    </li>\n\n                {%- endfor %}\n\n                </ul>\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/crud/views/others/record_actions.html.twig.twig",
    "content": "<ul class=\"record_actions\">\n    <li>\n        <a href=\"{{ \"{{ path('\" ~ route_name_prefix ~ \"') }}\" }}\">\n            Back to the list\n        </a>\n    </li>\n{% if ('edit' in actions) and (not hide_edit) %}\n    <li>\n        <a href=\"{{ \"{{ path('\" ~ route_name_prefix ~ \"_edit', { 'id': entity.\"~ identifier ~\" }) }}\" }}\">\n            Edit\n        </a>\n    </li>\n{% endif %}\n{% if ('delete' in actions) and (not hide_delete) %}\n    <li>{{ '{{ form(delete_form) }}' }}</li>\n{% endif %}\n</ul>\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/crud/views/show.html.twig.twig",
    "content": "{% block extends %}\n{{ \"{% extends '::base.html.twig' %}\" }}\n{% endblock extends %}\n\n{% block body %}\n{{ \"{% block body -%}\" }}\n    <h1>{{ entity }}</h1>\n\n    <table class=\"record_properties\">\n        <tbody>\n        {%- for field, metadata in fields %}\n\n            <tr>\n                <th>{{ field|capitalize }}</th>\n\n            {%- if metadata.type in ['date', 'datetime'] %}\n\n                <td>{{ '{{ entity.' ~ field|replace({'_': ''}) ~ '|date(\\'Y-m-d H:i:s\\') }}' }}</td>\n\n            {%- else %}\n\n                <td>{{ '{{ entity.' ~ field|replace({'_': ''}) ~ ' }}' }}</td>\n\n            {%- endif %}\n\n            </tr>\n\n        {%- endfor %}\n\n        </tbody>\n    </table>\n\n    {% set hide_edit, hide_delete = false, false %}\n    {% include 'crud/views/others/record_actions.html.twig.twig' %}\n{{ \"{% endblock %}\" }}\n{% endblock body %}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/skeleton/form/FormType.php.twig",
    "content": "<?php\n\nnamespace {{ namespace }}\\Form{{ entity_namespace ? '\\\\' ~ entity_namespace : '' }};\n\n{% block use_statements %}\nuse Symfony\\Component\\Form\\AbstractType;\nuse Symfony\\Component\\Form\\FormBuilderInterface;\nuse Symfony\\Component\\OptionsResolver\\OptionsResolverInterface;\n{% endblock use_statements %}\n\n{% block class_definition %}\nclass {{ form_class }} extends AbstractType\n{% endblock class_definition %}\n{\n{% block class_body %}\n    {%- if fields|length > 0 %}\n    /**\n     * @param FormBuilderInterface $builder\n     * @param array $options\n     */\n    public function buildForm(FormBuilderInterface $builder, array $options)\n    {\n        $builder\n        {%- for field in fields %}\n\n            ->add('{{ field }}')\n        {%- endfor %}\n\n        ;\n    }\n    {% endif %}\n\n    /**\n     * @param OptionsResolverInterface $resolver\n     */\n    public function setDefaultOptions(OptionsResolverInterface $resolver)\n    {\n        $resolver->setDefaults(array(\n            'data_class' => '{{ namespace }}\\Entity{{ entity_namespace ? '\\\\' ~ entity_namespace : '' }}\\{{ entity_class }}'\n        ));\n    }\n\n    /**\n     * @return string\n     */\n    public function getName()\n    {\n        return '{{ form_type_name }}';\n    }\n{% endblock class_body %}\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Resources/views/Default/index.html.twig",
    "content": "Hello {{ name }}!\n"
  },
  {
    "path": "newscoop/src/Newscoop/PluginGeneratorBundle/Tests/Controller/DefaultControllerTest.php",
    "content": "<?php\n\nnamespace Newscoop\\PluginGeneratorBundle\\Tests\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Test\\WebTestCase;\n\nclass DefaultControllerTest extends WebTestCase\n{\n    public function testIndex()\n    {\n        $client = static::createClient();\n\n        $crawler = $client->request('GET', '/hello/Fabien');\n\n        $this->assertTrue($crawler->filter('html:contains(\"Hello Fabien\")')->count() > 0);\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/ZendBridgeBundle/Controller/BridgeController.php",
    "content": "<?php\n\nnamespace Newscoop\\ZendBridgeBundle\\Controller;\n\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\Controller;\nuse Sensio\\Bundle\\FrameworkExtraBundle\\Configuration\\Route;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\Response;\n\nclass BridgeController extends Controller\n{\n    /**\n    * @Route(\"/admin/\")\n    * @Route(\"/admin/{rest}\", requirements={\"rest\" = \".+\"})\n    * @Route(\"/\")\n    * @Route(\"/{rest}\", requirements={\"rest\" = \".+\"})\n    */\n    public function indexAction(Request $request)\n    {\n        // don't render page on tinymce files\n        $specialfiles = array(\n            'js/tinymce/plugins/campsiteimage/popup.php',\n            'js/tinymce/plugins/campsiteimage/images.php',\n            'js/tinymce/plugins/campsiteattachment/popup.php',\n            'js/tinymce/plugins/campsiteattachment/attachments.php',\n            'js/tinymce/plugins/campsiteinternallink/link.php',\n            'js/tinymce/plugins/campsitemedia/popup.php',\n            'js/tinymce/plugins/campsitemedia/attachments.php',\n            'bin/events-notifier',\n            'bin/newscoop-autopublish',\n            'bin/newscoop-indexer',\n            'bin/newscoop-statistics'\n        );\n\n        foreach ($specialfiles as $file) {\n            if (strpos($request->server->get('SCRIPT_FILENAME'), $file) !== false) {\n                return new Response();\n            }\n        }\n\n        $logger = $this->container->get('monolog.logger.sentry');\n        \\Monolog\\ErrorHandler::register($logger);\n\n        $application = \\Zend_Registry::get('zend_application');\n        $bootstrap = $application->getBootstrap();\n\n        // set https on when it's ssl\n        if ($request->isSecure()) {\n            $_SERVER['HTTPS'] = 'on';\n        }\n\n        $front = $bootstrap->getResource('FrontController');\n        $front->setDefaultControllerName('legacy');\n        $front->returnResponse(true);\n        $default = $front->getDefaultModule();\n        if (null === $front->getControllerDirectory($default)) {\n            throw new \\Zend_Application_Bootstrap_Exception(\n                'No default controller directory registered with front controller'\n            );\n        }\n\n        $front->setParam('bootstrap', $bootstrap);\n        $front->setParam('locale', $request->getLocale());\n        $front->setBaseUrl('/');\n        $response = $front->dispatch();\n\n        //copy headers\n        $symfonyHeaders = array();\n        foreach ($response->getHeaders() as $key => $header) {\n            $symfonyHeaders[$header['name']] = $header['value'];\n        }\n\n        return new Response($response, $response->getHttpResponseCode(), $symfonyHeaders);\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/ZendBridgeBundle/DependencyInjection/Configuration.php",
    "content": "<?php\n\nnamespace Newscoop\\ZendBridgeBundle\\DependencyInjection;\n\nuse Symfony\\Component\\Config\\Definition\\Builder\\TreeBuilder;\nuse Symfony\\Component\\Config\\Definition\\ConfigurationInterface;\n\n/**\n * This is the class that validates and merges configuration from your app/config files\n *\n * To learn more see {@link http://symfony.com/doc/current/cookbook/bundles/extension.html#cookbook-bundles-extension-config-class}\n */\nclass Configuration implements ConfigurationInterface\n{\n    /**\n     * {@inheritDoc}\n     */\n    public function getConfigTreeBuilder()\n    {\n        $treeBuilder = new TreeBuilder();\n        $rootNode = $treeBuilder->root('newscoop_zend_bridge');\n\n        // Here you should define the parameters that are allowed to\n        // configure your bundle. See the documentation linked above for\n        // more information on that topic.\n\n        return $treeBuilder;\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/ZendBridgeBundle/DependencyInjection/NewscoopZendBridgeExtension.php",
    "content": "<?php\n\nnamespace Newscoop\\ZendBridgeBundle\\DependencyInjection;\n\nuse Symfony\\Component\\DependencyInjection\\ContainerBuilder;\nuse Symfony\\Component\\Config\\FileLocator;\nuse Symfony\\Component\\HttpKernel\\DependencyInjection\\Extension;\nuse Symfony\\Component\\DependencyInjection\\Loader;\n\n/**\n * This is the class that loads and manages your bundle configuration\n *\n * To learn more see {@link http://symfony.com/doc/current/cookbook/bundles/extension.html}\n */\nclass NewscoopZendBridgeExtension extends Extension\n{\n    /**\n     * {@inheritDoc}\n     */\n    public function load(array $configs, ContainerBuilder $container)\n    {\n        $configuration = new Configuration();\n        $config = $this->processConfiguration($configuration, $configs);\n\n        $loader = new Loader\\YamlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));\n        $loader->load('services.yml');\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/ZendBridgeBundle/EventListener/ZendApplicationListener.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nnamespace Newscoop\\ZendBridgeBundle\\EventListener;\n\nuse Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent;\nuse Symfony\\Component\\HttpKernel\\HttpKernel;\n\n/**\n * Run zend legacy code (zend router, acl etc...)\n */\nclass ZendApplicationListener\n{\n    protected $container;\n\n    public function __construct($container)\n    {\n        $this->container = $container;\n        \\Zend_Registry::set('container', $this->container);\n    }\n\n    public function onRequest(GetResponseEvent $event)\n    {\n        if (HttpKernel::MASTER_REQUEST != $event->getRequestType()) {\n            // don't do anything if it's not the master request\n            return;\n        }\n\n        $request = $event->getRequest();\n        $pos = strpos($request->server->get('REQUEST_URI'), '_profiler');\n\n        // don't call Zend Application for profiler.\n        if (false === $pos) {\n            // init adodb\n            require_once __DIR__ . '/../../../../db_connect.php';\n\n            // Fill zend application options\n            $config = $this->container->getParameterBag()->all();\n            $application = new \\Zend_Application(APPLICATION_ENV);\n            $application->setOptions($config);\n            $application->bootstrap();\n\n            \\Zend_Registry::set('zend_application', $application);\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/ZendBridgeBundle/NewscoopZendBridgeBundle.php",
    "content": "<?php\n\nnamespace Newscoop\\ZendBridgeBundle;\n\nuse Symfony\\Component\\HttpKernel\\Bundle\\Bundle;\n\nclass NewscoopZendBridgeBundle extends Bundle\n{\n}\n"
  },
  {
    "path": "newscoop/src/Newscoop/ZendBridgeBundle/Resources/config/routing.yml",
    "content": "NewscoopZendBridgeBundle:\n    resource: \"@NewscoopZendBridgeBundle/Controller/BridgeController.php\"\n    prefix:   /\n    type:     annotation"
  },
  {
    "path": "newscoop/src/Newscoop/ZendBridgeBundle/Resources/config/services.yml",
    "content": "services:\n    newscoop.zendbridge.zendapplication_listener:\n        class: Newscoop\\ZendBridgeBundle\\EventListener\\ZendApplicationListener\n        arguments: [\"@service_container\"]\n        tags:\n            - { name: kernel.event_listener, event: kernel.request, method: onRequest, priority: 31 }\n"
  },
  {
    "path": "newscoop/template_engine/classes/ArticleAttachmentsList.php",
    "content": "<?php\n\nrequire_once('ListObject.php');\n\n\n/**\n * ArticleAttachmentsList class\n *\n */\nclass ArticleAttachmentsList extends ListObject\n{\n\t/**\n\t * Creates the list of objects. Sets the parameter $p_hasNextElements to\n\t * true if this list is limited and elements still exist in the original\n\t * list (from which this was truncated) after the last element of this\n\t * list.\n\t *\n\t * @param int $p_start\n\t * @param int $p_limit\n\t * @param array $p_parameters\n\t * @param int &$p_count\n\t * @return array\n\t */\n\tprotected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count)\n\t{\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('metaAttachmentsList', implode('-', $this->m_constraints), implode('-', $this->m_order), $p_start, $p_limit, $p_count), 'attachments');\n        if ($cacheService->contains($cacheKey)) {\n            $metaAttachmentsList = $cacheService->fetch($cacheKey);\n        } else {\n\t        $articleAttachmentsList = ArticleAttachment::GetList($this->m_constraints, $this->m_order, $p_start, $p_limit, $p_count);\n\t        $metaAttachmentsList = array();\n\t        foreach ($articleAttachmentsList as $attachment) {\n\t            $metaAttachmentsList[] = new MetaAttachment($attachment->getAttachmentId());\n\t        }\n            $cacheService->save($cacheKey, $metaAttachmentsList);\n\t\t}\n\t    return $metaAttachmentsList;\n\t}\n\n\t/**\n\t * Processes list constraints passed in an array.\n\t *\n\t * @param array $p_constraints\n\t * @return array\n\t */\n\tprotected function ProcessConstraints(array $p_constraints)\n\t{\n\t\treturn array();\n\t}\n\n\t/**\n\t * Processes order constraints passed in an array.\n\t *\n\t * @param array $p_order\n\t * @return array\n\t */\n\tprotected function ProcessOrder(array $p_order)\n\t{\n\t\treturn array();\n\t}\n\n\t/**\n\t * Processes the input parameters passed in an array; drops the invalid\n\t * parameters and parameters with invalid values. Returns an array of\n\t * valid parameters.\n\t *\n\t * @param array $p_parameters\n\t * @return array\n\t */\n\tprotected function ProcessParameters(array $p_parameters)\n\t{\n\t\t$parameters = array();\n    \tforeach ($p_parameters as $parameter=>$value) {\n    \t\t$parameter = strtolower($parameter);\n    \t\tswitch ($parameter) {\n    \t\t\tcase 'length':\n    \t\t\tcase 'columns':\n    \t\t\tcase 'name':\n    \t\t\tcase 'language':\n    \t\t\t\tif ($parameter == 'length' || $parameter == 'columns') {\n    \t\t\t\t\t$intValue = (int)$value;\n    \t\t\t\t\tif (\"$intValue\" != $value || $intValue < 0) {\n    \t\t\t\t\t\tCampTemplate::singleton()->trigger_error(\"invalid value $value of parameter $parameter in statement list_article_attachments\");\n    \t\t\t\t\t}\n\t    \t\t\t\t$parameters[$parameter] = (int)$value;\n    \t\t\t\t} else {\n\t    \t\t\t\t$parameters[$parameter] = $value;\n    \t\t\t\t}\n    \t\t\t\tbreak;\n    \t\t\tdefault:\n    \t\t\t\tCampTemplate::singleton()->trigger_error(\"invalid parameter $parameter in list_article_attachments\", $p_smarty);\n    \t\t}\n    \t}\n\n        $operator = new Operator('is', 'integer');\n        $context = CampTemplate::singleton()->context();\n        if (!$context->article->defined) {\n        \tCampTemplate::singleton()->trigger_error(\"undefined environment attribute 'Article' in statement list_article_attachments\");\n        \treturn false;\n        }\n        $this->m_constraints[] = new ComparisonOperation('article_number', $operator,\n                                                         $context->article->number);\n\n        if (isset($p_parameters['language'])\n                && strtolower($p_parameters['language']) == 'current'\n                && $context->language->defined) {\n            $this->m_constraints[] = new ComparisonOperation('language_id', $operator,\n                                                             $context->language->number);\n        }\n        \n        $operator = new Operator('is', 'string');\n        $this->m_constraints[] = new ComparisonOperation('status', $operator, 'approved');\n\n    \treturn $parameters;\n\t}\n}\n\n?>"
  },
  {
    "path": "newscoop/template_engine/classes/ArticleAuthorsList.php",
    "content": "<?php\n\nrequire_once('ListObject.php');\n\n\n/**\n * ArticleAuthorsList class\n *\n */\nclass ArticleAuthorsList extends ListObject\n{\n    private static $s_orderFields = array('default',\n                                          'byfirstname',\n                                          'bylastname'\n                                         );\n\n\t/**\n\t * Creates the list of objects. Sets the parameter $p_hasNextElements to\n\t * true if this list is limited and elements still exist in the original\n\t * list (from which this was truncated) after the last element of this\n\t * list.\n\t *\n\t * @param int $p_start\n\t * @param int $p_limit\n\t * @param array $p_parameters\n\t * @param int &$p_count\n\t * @return array\n\t */\n\tprotected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count)\n\t{\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('metaAuthorsList', implode('-', $this->m_constraints), implode('-', $this->m_order), $p_start, $p_limit, $p_count), 'authors');\n        if ($cacheService->contains($cacheKey)) {\n            $metaAuthorsList = $cacheService->fetch($cacheKey);\n        } else {\n            $articleAuthorsList = ArticleAuthor::GetList($this->m_constraints, $this->m_order, $p_start, $p_limit, $p_count);\n            $metaAuthorsList = array();\n\t\t    foreach ($articleAuthorsList as $author) {\n\t                $authorTypeId = NULL;\n\t                if (!is_null($author->getAuthorType()) && $author->getAuthorType()->exists()) {\n\t                    $authorTypeId = $author->getAuthorType()->getId();\n\t                }\n\t\t        $metaAuthorsList[] = new MetaAuthor($author->getId(), $authorTypeId);\n\t\t    }\n\n            $cacheService->save($cacheKey, $metaAuthorsList);\n        }\n        \n\t    return $metaAuthorsList;\n\t}\n\n\t/**\n\t * Processes list constraints passed in an array.\n\t *\n\t * @param array $p_constraints\n\t * @return array\n\t */\n\tprotected function ProcessConstraints(array $p_constraints)\n\t{\n        $processesConstraints = array();\n        $constraints = array_chunk($p_constraints, 3, true);\n        foreach ($constraints as $constraint) {\n            if (count($constraint) == 3) {\n                $operator = new Operator($constraint[1]);\n                $processesConstraints[] = new ComparisonOperation($constraint[0], $operator, $constraint[2]);\n            }\n        }\n\n        return $processesConstraints;\n\t}\n\n\t/**\n\t * Processes order constraints passed in an array.\n\t *\n\t * @param array $p_order\n\t * @return array\n\t */\n\tprotected function ProcessOrder(array $p_order)\n\t{\n        $order = array();\n        if (count($p_order) == 1) {\n            $p_order[] = 'asc';\n        }\n        $state = 1;\n        foreach ($p_order as $word) {\n            switch ($state) {\n            case 1: // reading the order field\n                if (array_search(strtolower($word), self::$s_orderFields) === false) {\n                    CampTemplate::singleton()->trigger_error(\"invalid order field $word in list_article_authors, order parameter\");\n                } else {\n                    $orderField = $word;\n                    $state = 2;\n                }\n                break;\n            case 2: // reading the order direction\n                if (MetaOrder::IsValid($word)) {\n                    $order[] = array('field'=>$orderField, 'dir'=>$word);\n                } else {\n                    CampTemplate::singleton()->trigger_error(\"invalid order $word of attribute $orderField in list_article_authors, order parameter\");\n                }\n                $state = 1;\n                break;\n            }\n        }\n        if ($state != 1) {\n            CampTemplate::singleton()->trigger_error('unexpected end of order parameter in list_article_authors');\n        }\n        return $order;\n    }\n\n\t/**\n\t * Processes the input parameters passed in an array; drops the invalid\n\t * parameters and parameters with invalid values. Returns an array of\n\t * valid parameters.\n\t *\n\t * @param array $p_parameters\n\t * @return array\n\t */\n\tprotected function ProcessParameters(array $p_parameters)\n\t{\n\t    $parameters = array();\n\t    foreach ($p_parameters as $parameter => $value) {\n\t        $parameter = strtolower($parameter);\n\t        switch ($parameter) {\n\t            case 'length':\n\t            case 'columns':\n\t            case 'name':\n                case 'constraints':\n\t            case 'order':\n\t                if ($parameter == 'length' || $parameter == 'columns') {\n\t                    $intValue = (int)$value;\n\t                    if (\"$intValue\" != $value || $intValue < 0) {\n\t                        CampTemplate::singleton()->trigger_error(\"invalid value $value of parameter $parameter in statement list_article_authors\");\n\t                    }\n\t                    $parameters[$parameter] = (int) $value;\n\t                } else {\n\t                    $parameters[$parameter] = $value;\n\t                }\n\t                break;\n\t            default:\n\t                CampTemplate::singleton()->trigger_error(\"invalid parameter $parameter in list_article_authors\", $p_smarty);\n\t        }\n\t    }\n\n        $operator = new Operator('is', 'integer');\n        $context = CampTemplate::singleton()->context();\n        if (!$context->article->defined) {\n        \tCampTemplate::singleton()->trigger_error(\"undefined environment attribute 'Article' in statement list_article_authors\");\n        \treturn array();\n        }\n        $this->m_constraints[] = new ComparisonOperation('article', $operator, $context->article->number);\n        if (!$context->language->defined) {\n        \tCampTemplate::singleton()->trigger_error(\"undefined environment attribute 'Language' in statement list_article_authors\");\n        \treturn array();\n        }\n        $this->m_constraints[] = new ComparisonOperation('language', $operator, $context->language->number);\n\n\t\treturn $parameters;\n\t}\n}\n\n?>\n"
  },
  {
    "path": "newscoop/template_engine/classes/ArticleCommentsList.php",
    "content": "<?php\n\nrequire_once('ListObject.php');\n\n\n/**\n * ArticleCommentsList class\n *\n */\nclass ArticleCommentsList extends ListObject\n{\n    private static $s_orderFields = array('bydate', 'default');\n    private $_nested = false;\n\n    /**\n     * Creates the list of objects. Sets the parameter $p_hasNextElements to\n     * true if this list is limited and elements still exist in the original\n     * list (from which this was truncated) after the last element of this\n     * list.\n     *\n     * @param int $p_start\n     * @param int $p_limit\n     * @param array $p_parameters\n     * @param int &$p_count\n     * @return array\n     */\n    protected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count)\n    {\n        $container = Zend_Registry::get('container');\n        $repository = $container->get('em')->getRepository('Newscoop\\Entity\\Comment');\n        $cols = array('time_created' => 'bydate', 'thread_order' => 'default');\n\n        $filter = array();\n        $filter = $this->m_constraints;\n        $filter['status'] = array('approved');\n        if ($p_parameters['show_hidden'] === true) {\n            $filter['status'][] = 'hidden';\n        }\n\n        $params = array(\n            'sFilter' => $filter\n        );\n        if ($p_limit) {\n            $params['iDisplayStart'] = $p_start;\n            $params['iDisplayLength'] = $p_limit;\n        }\n        foreach ($this->m_order as $order) {\n            if (strtolower($order['field']) == 'bydate') {\n                $params['iSortCol_0'] = 0;\n                $params['sSortDir_0'] = $order['dir'];\n            } elseif (strtolower($order['field']) == 'default') {\n                $params['iSortCol_0'] = 1;\n                $params['sSortDir_0'] = $order['dir'];\n            }\n        }\n\n        $p_count = $repository->getCount($params, $cols);\n        $articleCommentsList = $repository->getData($params, $cols);\n\n        if ($this->_nested) {\n            $nodeTree = new \\Newscoop\\GimmeBundle\\Node\\NodeTree();\n            $nodeTree->build($articleCommentsList);\n            $articleCommentsList = $nodeTree->getFlattened();\n        }\n\n        $metaCommentsList = array();\n        foreach ($articleCommentsList as $comment) {\n            $metaCommentsList[] = new MetaComment($comment->getId());\n        }\n\n        return $metaCommentsList;\n    }\n\n\n    /**\n     * Processes list constraints passed in an array.\n     *\n     * @param array $p_constraints\n     * @return array\n     */\n    protected function ProcessConstraints(array $p_constraints)\n    {\n        return array();\n    }\n\n\n    /**\n     * Processes order constraints passed in an array.\n     *\n     * @param array $p_order\n     * @return array\n     */\n    protected function ProcessOrder(array $p_order)\n    {\n        $order = array();\n        $state = 1;\n        foreach ($p_order as $word) {\n            switch ($state) {\n                case 1: // reading the order field\n                    if (array_search(strtolower($word), ArticleCommentsList::$s_orderFields) === false) {\n                        CampTemplate::singleton()->trigger_error(\"invalid order field $word in list_article_comments, order parameter\");\n                    } else {\n                        $orderField = $word;\n                        $state = 2;\n                    }\n                    break;\n                case 2: // reading the order direction\n                    if (MetaOrder::IsValid($word)) {\n                        $order[] = array('field' => $orderField, 'dir' => $word);\n                    } else {\n                        CampTemplate::singleton()->trigger_error(\"invalid order $word of attribute $orderField in list_article_comments, order parameter\");\n                    }\n                    $state = 1;\n                    break;\n            }\n        }\n        if ($state != 1) {\n            CampTemplate::singleton()->trigger_error(\"unexpected end of order parameter in list_issues\");\n        }\n\n        return $order;\n    }\n\n\n    /**\n     * Processes the input parameters passed in an array; drops the invalid\n     * parameters and parameters with invalid values. Returns an array of\n     * valid parameters.\n     *\n     * @param array $p_parameters\n     * @return array\n     */\n    protected function ProcessParameters(array $p_parameters)\n    {\n        $parameters = array();\n        $parameters['ignore_language'] = false;\n        $parameters['ignore_article'] = false;\n        $parameters['show_hidden'] = false;\n        foreach ($p_parameters as $parameter => $value) {\n            $parameter = strtolower($parameter);\n            switch ($parameter) {\n                case 'length':\n                case 'columns':\n                case 'name':\n                case 'order':\n                    if ($parameter == 'length' || $parameter == 'columns') {\n                        $intValue = (int)$value;\n                        if (\"$intValue\" != $value || $intValue < 0) {\n                            CampTemplate::singleton()->trigger_error(\"invalid value $value of parameter $parameter in statement list_article_comments\");\n                        }\n                        $parameters[$parameter] = (int)$value;\n                    } else {\n                        $parameters[$parameter] = $value;\n                    }\n                    break;\n                case 'ignore_language':\n                    if (isset($value) && strtolower($value) == 'true') {\n                        $parameters[$parameter] = true;\n                    }\n                    break;\n                case 'ignore_article':\n                    if (isset($value) && strtolower($value) == 'true') {\n                        $parameters[$parameter] = true;\n                    }\n                    break;\n                case 'recommended':\n                    if ($value == 'true' || $value == 'false') $parameters[$parameter] = $value;\n                    break;\n                case 'nested':\n                    if ($value == 'true') $this->_nested = true;\n                case 'show_hidden':\n                    if ($value == 'true') $parameters[$parameter] = true;\n                default:\n                    CampTemplate::singleton()->trigger_error(\"invalid parameter $parameter in list_article_comments\", $p_smarty);\n            }\n        }\n\n        $operator = new Operator('is', 'integer');\n        $context = CampTemplate::singleton()->context();\n\n        if (!$parameters['ignore_article']) {\n            if (!$context->article->defined) {\n                CampTemplate::singleton()->trigger_error(\"undefined environment attribute 'Article' in statement list_article_comments\");\n                return false;\n            }\n            $this->m_constraints['thread'] = $context->article->number;\n        } else {\n            $order = array();\n            if (count($this->m_order) == 0) {\n                $this->m_order = array();\n            }\n            foreach ($this->m_order as $orderCond) {\n                if ($orderCond['field'] == 'bydate') {\n                    $order[] = $orderCond;\n                }\n            }\n            if (count($order) == 0) {\n                $this->m_order[] = array('field' => 'bydate', 'dir' => 'desc');\n            } else {\n                $this->m_order = $order;\n            }\n        }\n\n        if (!$parameters['ignore_language']) {\n            if (!$context->language->defined) {\n                CampTemplate::singleton()->trigger_error(\"undefined environment attribute 'Language' in statement list_article_comments\");\n                return false;\n            }\n            $this->m_constraints['language'] = $context->language->number;\n        }\n\n        if (array_key_exists('recommended', $parameters)) {\n            if ($parameters['recommended'] == 'true') $this->m_constraints['recommended'] = 1;\n            if ($parameters['recommended'] == 'false') $this->m_constraints['recommended'] = 0;\n        }\n\n        return $parameters;\n    }\n}\n\n?>\n"
  },
  {
    "path": "newscoop/template_engine/classes/ArticleImagesList.php",
    "content": "<?php\n\nrequire_once('ListObject.php');\n\n\n/**\n * ArticleImagesList class\n *\n */\nclass ArticleImagesList extends ListObject\n{\n    private static $s_orderFields = array('default',\n                                          'bynumber',\n                                          'bydescription',\n                                          'byphotographer',\n                                          'bydate',\n                                          'bylastupdate'\n                                    );\n\n\t/**\n\t * Creates the list of objects. Sets the parameter $p_hasNextElements to\n\t * true if this list is limited and elements still exist in the original\n\t * list (from which this was truncated) after the last element of this\n\t * list.\n\t *\n\t * @param int $p_start\n\t * @param int $p_limit\n\t * @param array $p_parameters\n\t * @param int &$p_count\n\t * @return array\n\t */\n\tprotected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count)\n\t{\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array(\n            'ArticleImagesList',\n            implode('-', $this->m_constraints),\n            implode('-', $this->m_order),\n            $p_start,\n            $p_limit,\n            implode('-', $p_parameters),\n            $p_count\n        ), 'article_image');\n\n        if ($cacheService->contains($cacheKey)) {\n            $metaImagesList = $cacheService->fetch($cacheKey);\n        } else {\n            $articleImagesList = ArticleImage::GetList($this->m_constraints, $this->m_order, $p_start, $p_limit, $p_count);\n            $metaImagesList = array();\n            foreach ($articleImagesList as $image) {\n                $metaImagesList[] = new MetaImage($image->getImageId());\n            }\n            $cacheService->save($cacheKey, $metaImagesList);\n        }\n\n        return $metaImagesList;\n\t}\n\n\t/**\n\t * Processes list constraints passed in an array.\n\t *\n\t * @param array $p_constraints\n\t * @return array\n\t */\n\tprotected function ProcessConstraints(array $p_constraints)\n\t{\n\t\treturn $p_constraints;\n\t}\n\n\t/**\n\t * Processes order constraints passed in an array.\n\t *\n\t * @param array $p_order\n\t * @return array\n\t */\n\tprotected function ProcessOrder(array $p_order)\n\t{\n\t    $order = array();\n\t    $state = 1;\n\t    foreach ($p_order as $word) {\n\t        switch ($state) {\n                case 1: // reading the order field\n\t                if (array_search(strtolower($word), self::$s_orderFields) === false) {\n\t                    CampTemplate::singleton()->trigger_error(\"invalid order field $word in list_images, order parameter\");\n\t                } else {\n    \t                $orderField = $word;\n                        $state = 2;\n\t                }\n\t                break;\n                case 2: // reading the order direction\n                    if (MetaOrder::IsValid($word)) {\n                        $order[] = array('field'=>$orderField, 'dir'=>$word);\n                    } else {\n                        CampTemplate::singleton()->trigger_error(\"invalid order $word of attribute $orderField in list_images, order parameter\");\n                    }\n                    $state = 1;\n\t                break;\n\t        }\n\t    }\n\t    if ($state != 1) {\n            CampTemplate::singleton()->trigger_error(\"unexpected end of order parameter in list_images\");\n\t    }\n\n\t    return $order;\n\t}\n\n\t/**\n\t * Processes the input parameters passed in an array; drops the invalid\n\t * parameters and parameters with invalid values. Returns an array of\n\t * valid parameters.\n\t *\n\t * @param array $p_parameters\n\t * @return array\n\t */\n\tprotected function ProcessParameters(array $p_parameters)\n\t{\n\t\t$parameters = array();\n    \tforeach ($p_parameters as $parameter=>$value) {\n    \t\t$parameter = strtolower($parameter);\n    \t\tswitch ($parameter) {\n    \t\t\tcase 'length':\n    \t\t\tcase 'columns':\n    \t\t\tcase 'name':\n    \t\t\tcase 'order':\n    \t\t\t\tif ($parameter == 'length' || $parameter == 'columns') {\n    \t\t\t\t\t$intValue = (int)$value;\n    \t\t\t\t\tif (\"$intValue\" != $value || $intValue < 0) {\n    \t\t\t\t\t\tCampTemplate::singleton()->trigger_error(\"invalid value $value of parameter $parameter in statement list_article_images\");\n    \t\t\t\t\t}\n\t    \t\t\t\t$parameters[$parameter] = (int)$value;\n    \t\t\t\t} else {\n\t    \t\t\t\t$parameters[$parameter] = $value;\n    \t\t\t\t}\n    \t\t\t\tbreak;\n    \t\t\tdefault:\n    \t\t\t\tCampTemplate::singleton()->trigger_error(\"invalid parameter $parameter in list_article_images\", $p_smarty);\n    \t\t}\n    \t}\n\n        $operator = new Operator('is', 'integer');\n        $context = CampTemplate::singleton()->context();\n        if (!$context->article->defined) {\n        \tCampTemplate::singleton()->trigger_error(\"undefined environment attribute 'Article' in statement list_article_images\");\n        \treturn false;\n        }\n        $this->m_constraints[] = new ComparisonOperation('nrarticle', $operator,\n                                                         $context->article->number);\n        $this->m_constraints[] = new ComparisonOperation('status', $operator, 'approved');\n\n        return $parameters;\n\t}\n}\n\n?>\n"
  },
  {
    "path": "newscoop/template_engine/classes/ArticleLocationsList.php",
    "content": "<?php\n\nrequire_once('ListObject.php');\n\n\n/**\n * ArticleLocationsList class\n *\n */\nclass ArticleLocationsList extends ListObject\n{\n\t/**\n\t * Creates the list of objects. Sets the parameter $p_hasNextElements to\n\t * true if this list is limited and elements still exist in the original\n\t * list (from which this was truncated) after the last element of this\n\t * list.\n\t *\n\t * @param int $p_start\n\t * @param int $p_limit\n\t * @param array $p_parameters\n\t * @param int &$p_count\n\t * @return array\n\t */\n\tprotected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count)\n\t{\n\t    $articleLocationsList = Geo_MapLocation::GetList($this->m_constraints, $this->m_order, $p_start, $p_limit, $p_count);\n\t    $metaLocationsList = array();\n\t    foreach ($articleLocationsList as $location) {\n\t        $metaLocationsList[] = new MetaMapLocation($location);\n\t    }\n\t    return $metaLocationsList;\n\t}\n\n\t/**\n\t * Processes list constraints passed in an array.\n\t *\n\t * @param array $p_constraints\n\t * @return array\n\t */\n\tprotected function ProcessConstraints(array $p_constraints)\n\t{\n\t\treturn array();\n\t}\n\n\t/**\n\t * Processes order constraints passed in an array.\n\t *\n\t * @param array $p_order\n\t * @return array\n\t */\n\tprotected function ProcessOrder(array $p_order)\n\t{\n\t\treturn array();\n\t}\n\n\t/**\n\t * Processes the input parameters passed in an array; drops the invalid\n\t * parameters and parameters with invalid values. Returns an array of\n\t * valid parameters.\n\t *\n\t * @param array $p_parameters\n\t * @return array\n\t */\n\tprotected function ProcessParameters(array $p_parameters)\n\t{\n\t    $parameters = array();\n\t    foreach ($p_parameters as $parameter => $value) {\n\t        $parameter = strtolower($parameter);\n\t        switch ($parameter) {\n\t            case 'length':\n\t            case 'columns':\n\t            case 'name':\n\t                if ($parameter == 'length' || $parameter == 'columns') {\n\t                    $intValue = (int)$value;\n\t                    if (\"$intValue\" != $value || $intValue < 0) {\n\t                        CampTemplate::singleton()->trigger_error(\"invalid value $value of parameter $parameter in statement list_article_locations\");\n\t                    }\n\t                    $parameters[$parameter] = (int)$value;\n\t                } else {\n\t                    $parameters[$parameter] = $value;\n\t                }\n\t                break;\n\t            default:\n\t                CampTemplate::singleton()->trigger_error(\"invalid parameter $parameter in list_article_locations\", $p_smarty);\n\t        }\n\t    }\n\n        $operator = new Operator('is', 'integer');\n        $context = CampTemplate::singleton()->context();\n        if (!$context->article->defined) {\n        \tCampTemplate::singleton()->trigger_error(\"undefined environment attribute 'Article' in statement list_article_locations\");\n        \treturn array();\n        }\n        $this->m_constraints[] = new ComparisonOperation('article', $operator, $context->article->number);\n\n\t\treturn $parameters;\n\t}\n}\n\n?>"
  },
  {
    "path": "newscoop/template_engine/classes/ArticleTopicsList.php",
    "content": "<?php\n\nrequire_once 'ListObject.php';\n\n/**\n * ArticleTopicsList class\n *\n */\nclass ArticleTopicsList extends ListObject\n{\n    /**\n     * Creates the list of objects. Sets the parameter $p_hasNextElements to\n     * true if this list is limited and elements still exist in the original\n     * list (from which this was truncated) after the last element of this\n     * list.\n     *\n     * @param  int   $p_start\n     * @param  int   $p_limit\n     * @param  array $p_parameters\n     * @param  int   &$p_count\n     * @return array\n     */\n    protected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count)\n    {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('ArticleTopicsList', implode('-', $this->m_constraints), implode('-', $this->m_order), $p_start, $p_limit, $p_count), 'article');\n        if ($cacheService->contains($cacheKey)) {\n            $metaTopicsList = $cacheService->fetch($cacheKey);\n        } else {\n            $articleTopicsList = ArticleTopic::GetList($this->m_constraints, $this->m_order, $p_start, $p_limit, $p_count);\n            $metaTopicsList = array();\n            foreach ($articleTopicsList as $topic) {\n                $metaTopicsList[] = new MetaTopic($topic);\n            }\n\n            $cacheService->save($cacheKey, $metaTopicsList);\n        }\n\n        return $metaTopicsList;\n    }\n\n    /**\n     * Processes list constraints passed in an array.\n     *\n     * @param  array $p_constraints\n     * @return array\n     */\n    protected function ProcessConstraints(array $p_constraints)\n    {\n        return array();\n    }\n\n    /**\n     * Processes order constraints passed in an array.\n     *\n     * @param  array $p_order\n     * @return array\n     */\n    protected function ProcessOrder(array $p_order)\n    {\n        return array();\n    }\n\n    /**\n     * Processes the input parameters passed in an array; drops the invalid\n     * parameters and parameters with invalid values. Returns an array of\n     * valid parameters.\n     *\n     * @param  array $p_parameters\n     * @return array\n     */\n    protected function ProcessParameters(array $p_parameters)\n    {\n        $parameters = array();\n        foreach ($p_parameters as $parameter=>$value) {\n            $parameter = strtolower($parameter);\n            switch ($parameter) {\n                case 'length':\n                case 'columns':\n                case 'name':\n                    if ($parameter == 'length' || $parameter == 'columns') {\n                        $intValue = (int) $value;\n                        if (\"$intValue\" != $value || $intValue < 0) {\n                            CampTemplate::singleton()->trigger_error(\"invalid value $value of parameter $parameter in statement list_article_topics\");\n                        }\n                        $parameters[$parameter] = (int) $value;\n                    } else {\n                        $parameters[$parameter] = $value;\n                    }\n                    break;\n                case 'root':\n                    $arrayTopics = explode(';',(string) $value);\n                    for ($i = 0, $count = count($arrayTopics); $i < $count; $i++) {\n                        $metaTopic = new MetaTopic($arrayTopics[$i]);\n                        if (!$metaTopic->defined) {\n                            CampTemplate::singleton()->trigger_error(\"invalid value \" . $arrayTopics[$i] . \" of parameter $parameter in statement list_article_topics\");\n\n                            return array();\n                        }\n                        $operator = new Operator('is', 'integer');\n                        $this->m_constraints[] = new ComparisonOperation('roottopic', $operator, $metaTopic->identifier);\n                    }\n                    break;\n                default:\n                    CampTemplate::singleton()->trigger_error(\"invalid parameter $parameter in list_article_topics\", $p_smarty);\n            }\n        }\n\n        $operator = new Operator('is', 'integer');\n        $context = CampTemplate::singleton()->context();\n        if (!$context->article->defined) {\n            CampTemplate::singleton()->trigger_error(\"undefined environment attribute 'Article' in statement list_article_topics\");\n\n            return array();\n        }\n        $this->m_constraints[] = new ComparisonOperation('nrarticle', $operator,\n                                                         $context->article->number);\n\n        return $parameters;\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/classes/ArticlesList.php",
    "content": "<?php\n\nrequire_once 'ListObject.php';\nrequire_once $GLOBALS['g_campsiteDir'].'/classes/CampCache.php';\nrequire_once $GLOBALS['g_campsiteDir'].'/classes/Article.php';\n\n/**\n * ArticlesList class\n *\n */\nclass ArticlesList extends ListObject\n{\n    private static $s_parameters = array('number' => array('field' => 'Number', 'type' => 'integer'),\n                                         'name' => array('field' => 'Name', 'type' => 'string'),\n                                         'keyword' => array('field' => null, 'type' => 'string'),\n                                         'onfrontpage' => array('field' => 'OnFrontPage',\n                                                              'type' => 'switch', ),\n                                         'onsection' => array('field' => 'OnSection',\n                                                            'type' => 'switch', ),\n                                         'upload_date' => array('field' => 'UploadDate',\n                                                              'type' => 'date', ),\n                                         'publish_date' => array('field' => 'PublishDate',\n                                                              'type' => 'date', ),\n                                         'publish_datetime' => array(\n                                             'field' => 'PublishDate',\n                                             'type' => 'datetime',\n                                         ),\n                                         'public' => array('field' => 'Public',\n                                                         'type' => 'switch', ),\n                                         'type' => array('field' => 'Type',\n                                                       'type' => 'string', ),\n                                         'matchalltopics' => array('field' => null,\n                                                                 'type' => 'void', ),\n                                         'matchanytopic' => array('field' => null,\n                                                                'type' => 'void', ),\n                                         'topic' => array('field' => null,\n                                                        'type' => 'topic', ),\n                                         'topic_strict' => array('field' => null,\n                                                                 'type' => 'topic', ),\n                                         'reads' => array('field' => null, 'type' => 'integer'),\n                                         'author' => array('field' => null, 'type' => 'string'),\n                                         'section' => array('field' => 'NrSection', 'type' => 'integer'),\n                                         'issue' => array('field' => 'NrIssue', 'type' => 'integer'),\n                                         'insection' => array(\n                                             'field' => 'insection',\n                                             'type' => 'string',\n                                         ),\n                                   );\n\n    private static $s_orderFields = array(\n                                          'bynumber',\n                                          'byname',\n                                          'bydate',\n                                          'bycreationdate',\n                                          'bypublishdate',\n                                          'bylastupdate',\n                                          'bypopularity',\n                                          'bypublication',\n                                          'byissue',\n                                          'bysection',\n                                          'bylanguage',\n                                          'bysectionorder',\n                                          'bycomments',\n                                          'bylastcomment',\n                                          'bykeywords',\n                                    );\n\n    private static $s_articleTypes = null;\n\n    private static $s_dynamicFields = null;\n\n    const CONSTRAINT_ATTRIBUTE_NAME = 1;\n    const CONSTRAINT_DYNAMIC_FIELD = 4;\n    const CONSTRAINT_OPERATOR = 2;\n    const CONSTRAINT_VALUE = 3;\n\n    private $m_ignoreIssue = false;\n\n    private $m_ignoreSection = false;\n\n    /**\n     * Creates the list of objects. Sets the parameter $p_hasNextElements to\n     * true if this list is limited and elements still exist in the original\n     * list (from which this was truncated) after the last element of this\n     * list.\n     *\n     * @param  int   $p_start\n     * @param  int   $p_limit\n     * @param  array $p_parameters\n     * @param  int   &$p_count\n     * @return array\n     */\n    protected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count)\n    {\n        $articlesList = Article::GetList($this->m_constraints, $this->m_order, $p_start, $p_limit, $p_count, false, false);\n        $metaArticlesList = array();\n        foreach ($articlesList as $article) {\n            $metaArticlesList[] = new MetaArticle($article['language_id'], $article['number']);\n        }\n\n        return $metaArticlesList;\n    }\n\n    /**\n     * Processes list constraints passed in an array.\n     *\n     * @param  array $p_constraints\n     * @return array\n     */\n    protected function ProcessConstraints(array $p_constraints)\n    {\n        $parameters = array();\n        $state = 1;\n        $attribute = null;\n        $articleTypeName = null;\n        $operator = null;\n        $value = null;\n        $switchTypeHint = false;\n        $context = CampTemplate::singleton()->context();\n        $constraintsCount = count($p_constraints);\n        for ($index = 0; $index < $constraintsCount; $index++) {\n            $word = $p_constraints[$index];\n\n            switch ($state) {\n                case self::CONSTRAINT_ATTRIBUTE_NAME: // reading the parameter name\n                    $attribute = strtolower($word);\n                    if (!array_key_exists($attribute, ArticlesList::$s_parameters)) {\n                        // not a static field; is it a article type name?\n                        self::ReadArticleTypes();\n                        if (array_key_exists($attribute, self::$s_articleTypes)) {\n                            $articleTypeName = self::$s_articleTypes[$attribute];\n                            $state = self::CONSTRAINT_DYNAMIC_FIELD;\n                            break;\n                        }\n\n                        // not an article type name; is it a dynamic field name?\n                        $dynamicFields = self::GetDynamicFields($articleTypeName, $attribute);\n                        if (count($dynamicFields) > 0) {\n                            if (count($dynamicFields) == 1) {\n                                $type = $dynamicFields[0]->getGenericType();\n                            } else {\n                                $type = null;\n                                foreach ($dynamicFields as $field) {\n                                    $switchTypeHint = $switchTypeHint || $field->getType() == ArticleTypeField::TYPE_SWITCH;\n                                    if (is_null($type)) {\n                                        $type = $field->getGenericType();\n                                    } elseif ($type != $field->getGenericType()) {\n                                        $type = 'string';\n                                    }\n                                }\n                            }\n                            $state = self::CONSTRAINT_OPERATOR;\n                            break;\n                        }\n\n                        // unknown attribute\n                        CampTemplate::singleton()->trigger_error(\"invalid attribute $word in statement list_articles, constraints parameter\");\n\n                        return false;\n                    } else {\n                        $type = ArticlesList::$s_parameters[$attribute]['type'];\n                    }\n                    if ($attribute == 'keyword') {\n                        $operator = new Operator('is', 'string');\n                        $state = self::CONSTRAINT_VALUE;\n                    } elseif ($attribute == 'matchalltopics' || $attribute == 'matchanytopic') {\n                        if ($attribute == 'matchalltopics') {\n                            $operator = new Operator('is', 'boolean');\n                            $comparisonOperation = new ComparisonOperation($attribute, $operator, 'true');\n                            $parameters[] = $comparisonOperation;\n                        }\n                        $state = self::CONSTRAINT_ATTRIBUTE_NAME;\n                    } else {\n                        $state = self::CONSTRAINT_OPERATOR;\n                    }\n                    $this->m_ignoreIssue = $this->m_ignoreIssue || $attribute == 'issue';\n                    $this->m_ignoreSection = $this->m_ignoreSection || $attribute == 'section';\n\n                    if ($attribute == 'onfrontpage' || $attribute == 'onsection') {\n                        if (($index + 1) < count($p_constraints)) {\n                            try {\n                                $operator = new Operator($p_constraints[$index+1], 'switch');\n                            } catch (InvalidOperatorException $e) {\n                                $operator = new Operator('is', 'switch');\n                                $comparisonOperation = new ComparisonOperation($attribute, $operator, 'on');\n                                $parameters[] = $comparisonOperation;\n                                $state = self::CONSTRAINT_ATTRIBUTE_NAME;\n                            }\n                        } else {\n                            $operator = new Operator('is', 'switch');\n                            $comparisonOperation = new ComparisonOperation($attribute, $operator, 'on');\n                            $parameters[] = $comparisonOperation;\n                            $state = self::CONSTRAINT_ATTRIBUTE_NAME;\n                        }\n                    }\n                    break;\n                case self::CONSTRAINT_DYNAMIC_FIELD:\n                    $attribute = strtolower($word);\n                    $dynamicFields = self::GetDynamicFields($articleTypeName, $attribute);\n                    if (count($dynamicFields) > 0) {\n                        $type = $dynamicFields[0]->getGenericType();\n                        $state = self::CONSTRAINT_OPERATOR;\n                        break;\n                    }\n                    CampTemplate::singleton()->trigger_error(\"invalid dynamic field $word in statement list_articles, constraints parameter\");\n\n                    return false;\n                case self::CONSTRAINT_OPERATOR: // reading the operator\n                    try {\n                        $operator = new Operator($word, $type);\n                    } catch (InvalidOperatorException $e) {\n                        CampTemplate::singleton()->trigger_error(\"invalid operator $word of parameter constraints.$attribute in statement list_articles\");\n\n                        return false;\n                    }\n                    $state = self::CONSTRAINT_VALUE;\n                    break;\n                case self::CONSTRAINT_VALUE: // reading the value to compare against\n                    if ($attribute == 'publish_datetime' && $index + 1 < count($p_constraints)) { // add time to date\n                        if (preg_match('/^[0-2][0-9]:[0-5][0-9](:[0-5][0-9])?$/', $p_constraints[$index + 1])) {\n                            $word .= ' '.$p_constraints[$index + 1];\n                            $index++; // skip next value\n                        }\n                    }\n\n                    $metaClassName = 'Meta'.ucfirst($type);\n                    try {\n                        $valueObj = new $metaClassName($word);\n                    } catch (InvalidValueException $e) {\n                        CampTemplate::singleton()->trigger_error(\"invalid value $word of parameter constraints.$attribute in statement list_articles\");\n\n                        return false;\n                    }\n                       if ($attribute == 'type') {\n                           $word = trim($word);\n                           $articleType = new ArticleType($word);\n                           if (!$articleType->exists()) {\n                               CampTemplate::singleton()->trigger_error(\"invalid value $word of parameter constraints.$attribute in statement list_articles\");\n\n                               return false;\n                           }\n                           $value = $word;\n                       } elseif ($attribute == 'topic') {\n                           $context = CampTemplate::singleton()->context();\n                           $locale = $context->language->code;\n                           $topicService = \\Zend_Registry::get('container')->getService('topic');\n                           $topic = $topicService->getTopicBy($word, $locale);\n                           if (!$topic) {\n                               CampTemplate::singleton()->trigger_error(\"invalid value $word of parameter constraints.$attribute in statement list_articles\");\n\n                               return false;\n                           }\n\n                           $value = $topic->getTopicId();\n                       } elseif ($attribute == 'author') {\n                           if (strtolower($word) == '__current') {\n                               $value = $context->article->author->name;\n                           } else {\n                               $value = $word;\n                           }\n                       } elseif ($type == 'switch') {\n                           $value = (int) (strtolower($word) == 'on');\n                       } else {\n                           $wordLower = strtolower($word);\n                           if ($switchTypeHint && ($wordLower == 'on' || $wordLower == 'off')) {\n                               $value = (int) (strtolower($word) == 'on');\n                           } else {\n                               $value = $word;\n                           }\n                       }\n                       if (!is_null($articleTypeName)) {\n                           $attribute = \"$articleTypeName.$attribute\";\n                       }\n                       $comparisonOperation = new ComparisonOperation($attribute, $operator, $value);\n                       $parameters[] = $comparisonOperation;\n                       $state = self::CONSTRAINT_ATTRIBUTE_NAME;\n                    $attribute = null;\n                    $articleTypeName = null;\n                    $type = null;\n                    $value = null;\n                    break;\n            }\n        }\n        if ($state != self::CONSTRAINT_ATTRIBUTE_NAME) {\n            CampTemplate::singleton()->trigger_error(\"unexpected end of constraints parameter in list_articles\");\n\n            return false;\n        }\n\n        if (!$this->m_ignoreIssue && $context->issue->defined) {\n            $this->m_constraints[] = new ComparisonOperation('NrIssue', new Operator('is', 'integer'),\n                                                             $context->issue->number);\n        }\n        if (!$this->m_ignoreSection && $context->section->defined) {\n            $this->m_constraints[] = new ComparisonOperation('NrSection', new Operator('is', 'integer'),\n                                                             $context->section->number);\n        }\n\n        return $parameters;\n    }\n\n    /**\n     * Processes order constraints passed in an array.\n     *\n     * @param  array $p_order\n     * @return array\n     */\n    protected function ProcessOrder(array $p_order)\n    {\n        $order = array();\n        $state = 1;\n        foreach ($p_order as $word) {\n            switch ($state) {\n                case 1: // reading the order field\n                    if (array_search(strtolower($word), ArticlesList::$s_orderFields) === false) {\n                        $checked_info = Article::CheckCustomOrder($word);\n                        if (!$checked_info['status']) {\n                            CampTemplate::singleton()->trigger_error(\"invalid order field $word in list_articles, order parameter\");\n                        }\n                        // ordering by custom fields; runs the same way as other order specs\n                        $orderField = $word;\n                        $state = 2;\n                    } else {\n                        $orderField = $word;\n                        $state = 2;\n                    }\n                    break;\n                case 2: // reading the order direction\n                    if (MetaOrder::IsValid($word)) {\n                        $order[] = array('field' => $orderField, 'dir' => $word);\n                    } else {\n                        CampTemplate::singleton()->trigger_error(\"invalid order $word of attribute $orderField in list_articles, order parameter\");\n                    }\n                    $state = 1;\n                    break;\n            }\n        }\n        if ($state != 1) {\n            CampTemplate::singleton()->trigger_error(\"unexpected end of order parameter in list_articles\");\n        }\n\n        return $order;\n    }\n\n    /**\n     * Processes the input parameters passed in an array; drops the invalid\n     * parameters and parameters with invalid values. Returns an array of\n     * valid parameters.\n     *\n     * @param  array $p_parameters\n     * @return array\n     */\n    protected function ProcessParameters(array $p_parameters)\n    {\n        self::ReadArticleTypes();\n        $parameters = array();\n        $parameters['ignore_publication'] = false;\n        $parameters['ignore_issue'] = false;\n        $parameters['ignore_section'] = false;\n        $parameters['ignore_language'] = false;\n        foreach ($p_parameters as $parameter => $value) {\n            $parameter = strtolower($parameter);\n            switch ($parameter) {\n                case 'length':\n                case 'columns':\n                case 'name':\n                case 'constraints':\n                case 'order':\n                    if ($parameter == 'length' || $parameter == 'columns') {\n                        $intValue = (int) $value;\n                        if (\"$intValue\" != $value || $intValue < 0) {\n                            CampTemplate::singleton()->trigger_error(\"invalid value $value of parameter $parameter in statement list_articles\");\n                        }\n                        $parameters[$parameter] = (int) $value;\n                    } else {\n                        $parameters[$parameter] = $value;\n                    }\n                    break;\n                case 'ignore_publication':\n                case 'ignore_issue':\n                case 'ignore_section':\n                case 'ignore_language':\n                    $value = isset($value) && (strtolower($value) != 'false');\n                    $parameters[$parameter] = $value;\n                    break;\n                case 'location':\n                    $num = '[-+]?[0-9]+(?:\\.[0-9]+)?';\n                    if (preg_match(\"/$num $num, $num $num/\", trim($value))) {\n                        $parameters[$parameter] = $value;\n                    } else {\n                        CampTemplate::singleton()->trigger_error(\"invalid value $value of parameter $parameter in statement list_articles\");\n                    }\n                    break;\n                default:\n                    $foundField = false;\n                    foreach (self::$s_articleTypes as $atype) {\n                        if (count($dynaBlaster = self::GetDynamicFields($atype, $parameter))) {\n                            $foundField = current($dynaBlaster)->getType();\n                            break;\n                        }\n                    }\n                    if (!$foundField) {\n                        CampTemplate::singleton()->trigger_error(\"invalid parameter $parameter in list_articles\");\n                        break;\n                    }\n                    switch ($foundField) {\n                        case 'complex_date' :\n                            $this->m_constraints[] = new ComparisonOperation('complex_date', new Operator('is', 'string'), array($parameter => $value));\n                        break;\n                        default: break;\n                    }\n                    CampTemplate::singleton()->trigger_error(\"invalid parameter $parameter in list_articles\");\n            }\n        }\n\n        $operator = new Operator('is', 'integer');\n        $context = CampTemplate::singleton()->context();\n        if ($context->publication->defined && !$parameters['ignore_publication']) {\n            $this->m_constraints[] = new ComparisonOperation('IdPublication', $operator,\n                                                             $context->publication->identifier);\n        }\n        if ($context->language->defined && !$parameters['ignore_language']) {\n            $this->m_constraints[] = new ComparisonOperation('IdLanguage', $operator,\n                                                             $context->language->number);\n        }\n        $this->m_ignoreIssue = $parameters['ignore_issue'];\n        $this->m_ignoreSection = $parameters['ignore_section'];\n        if ($context->topic->defined) {\n            $this->m_constraints[] = new ComparisonOperation('topic', $operator,\n                                                             $context->topic->identifier);\n        }\n        if (!$context->preview) {\n            $this->m_constraints[] = new ComparisonOperation('published', $operator, 'true');\n        }\n\n        if (!empty($parameters['location'])) {\n            $this->m_constraints[] = new ComparisonOperation('location',\n                new Operator('is', 'string'), $parameters['location']);\n        }\n\n        return $parameters;\n    }\n\n    private static function ReadArticleTypes()\n    {\n        if (is_null(self::$s_articleTypes)) {\n            require_once $GLOBALS['g_campsiteDir'].'/classes/ArticleType.php';\n            $articleTypes = ArticleType::GetArticleTypes(true);\n            self::$s_articleTypes = array();\n            foreach ($articleTypes as $articleType) {\n                self::$s_articleTypes[strtolower($articleType)] = $articleType;\n            }\n        }\n    }\n\n    private static function ReadDynamicFields()\n    {\n        if (is_null(self::$s_dynamicFields)) {\n            require_once $GLOBALS['g_campsiteDir'].'/classes/ArticleTypeField.php';\n            self::$s_dynamicFields = ArticleTypeField::FetchFields();\n        }\n    }\n\n    private static function GetDynamicFields($p_articleTypeName = null, $p_fieldName)\n    {\n        $result = array();\n        self::ReadDynamicFields();\n        foreach (self::$s_dynamicFields as $dynamicField) {\n            if (strtolower($dynamicField->getPrintName()) == strtolower($p_fieldName)\n            && (is_null($p_articleTypeName)\n            || strtolower($dynamicField->getArticleType()) == strtolower($p_articleTypeName))) {\n                $result[] = $dynamicField;\n            }\n        }\n\n        return $result;\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/classes/BoxArticlesList.php",
    "content": "<?php\n\nrequire_once('ListObject.php');\n\n\n/**\n * BoxArticlesList class\n *\n */\nclass BoxArticlesList extends ListObject\n{\n    private static $s_parameters = array();\n\n    private static $s_orderFields = array(\n        'bynumber',\n        'byname',\n        'bydate',\n        'bycreationdate',\n        'bypublishdate'\n    );\n\n    /**\n     * Creates the list of objects. Sets the parameter $p_hasNextElements to\n     * true if this list is limited and elements still exist in the original\n     * list (from which this was truncated) after the last element of this\n     * list.\n     *\n     * @param int $p_start\n     * @param int $p_limit\n     * @param array $p_parameters\n     * @param int &$p_count\n     * @return array\n     */\n    protected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count)\n    {\n        $context = CampTemplate::singleton()->context();\n        if (!$context->article->defined()) {\n            return array();\n        }\n\n        if (!$context->language->defined()) {\n            $languageId = $context->publication->default_language->number;\n        } else {\n            $languageId = $context->language->number;\n        }\n\n        $contextBox = new ContextBox(null, $context->article->number);\n        $p_parameters['context_box'] = $contextBox->getId();\n        $p_parameters['article'] = $context->article->number;\n\n        $BoxArticlesList = ContextBoxArticle::GetList($p_parameters, $this->m_order, $p_start, $p_limit, $p_count);\n        $preview = $context->preview;\n        $metaBoxArticlesList = array();\n        foreach ($BoxArticlesList as $articleNo) {\n            $article = new MetaArticle($languageId, $articleNo);\n            if ($article->defined() && ($preview || $article->is_published)) {\n                $metaBoxArticlesList[] = $article;\n            }\n    \t}\n\n        return $metaBoxArticlesList;\n    }\n\n    /**\n     * Processes list constraints passed in an array.\n     *\n     * @param array $p_constraints\n     * @return array\n     */\n    protected function ProcessConstraints(array $p_constraints)\n    {\n        $parameters = array();\n        $state = 1;\n        $attribute = null;\n        $operator = null;\n        $value = null;\n        foreach ($p_constraints as $word) {\n            switch ($state) {\n                case 1: // reading the parameter name\n                    if (!array_key_exists($word, BoxArticlesList::$s_parameters)) {\n                        CampTemplate::singleton()->trigger_error(\"invalid attribute $word in statement list_box_articles, constraints parameter\");\n                        return false;\n                    }\n                    $attribute = $word;\n                    $state = 2;\n                    break;\n                case 2: // reading the operator\n\t                $type = BoxArticlesList::$s_parameters[$attribute]['type'];\n\t                try {\n\t                    $operator = new Operator($word, $type);\n\t                }\n\t                catch (InvalidOperatorException $e) {\n\t                    CampTemplate::singleton()->trigger_error(\"invalid operator $word of parameter constraints.$attribute in statement list_box_articles\");\n\t                    return false;\n\t                }\n\t                $state = 3;\n\t                break;\n\t            case 3: // reading the value to compare against\n\t                $type = BoxArticlesList::$s_parameters[$attribute]['type'];\n\t                $metaClassName = 'Meta'.strtoupper($type[0]).strtolower(substr($type, 1));\n\t                try {\n\t                    $value = new $metaClassName($word);\n    \t                $value = $word;\n       \t                $comparisonOperation = new ComparisonOperation($attribute, $operator, $value);\n    \t                $parameters[] = $comparisonOperation;\n\t                } catch (InvalidValueException $e) {\n\t                    CampTemplate::singleton()->trigger_error(\"invalid value $word of parameter constraints.$attribute in statement list_box_articles\");\n\t                    return false;\n\t                }\n\t                $state = 1;\n\t                break;\n\t        }\n\t    }\n\t    if ($state != 1) {\n            CampTemplate::singleton()->trigger_error(\"unexpected end of constraints parameter in list_box_articles\");\n            return false;\n\t    }\n\n\t\treturn $parameters;\n\t}\n\n\t/**\n\t * Processes order constraints passed in an array.\n\t *\n\t * @param array $p_order\n\t * @return array\n\t */\n\tprotected function ProcessOrder(array $p_order)\n\t{\n\t    $order = array();\n\t    $state = 1;\n\t    foreach ($p_order as $word) {\n\t        switch ($state) {\n                case 1: // reading the order field\n\t                if (array_search(strtolower($word), BoxArticlesList::$s_orderFields) === false) {\n\t                    CampTemplate::singleton()->trigger_error(\"invalid order field $word in list_box_articles, order parameter\");\n\t                } else {\n    \t                $orderField = $word;\n                        $state = 2;\n\t                }\n\t                break;\n                case 2: // reading the order direction\n                    if (MetaOrder::IsValid($word)) {\n                        $order[] = array('field'=>$orderField, 'dir'=>$word);\n                    } else {\n                        CampTemplate::singleton()->trigger_error(\"invalid order $word of attribute $orderField in list_box_articles, order parameter\");\n                    }\n                    $state = 1;\n\t                break;\n\t        }\n\t    }\n\t    if ($state != 1) {\n            CampTemplate::singleton()->trigger_error(\"unexpected end of order parameter in list_box_articles\");\n\t    }\n\n\t    return $order;\n\t}\n\n\t/**\n\t * Processes the input parameters passed in an array; drops the invalid\n\t * parameters and parameters with invalid values. Returns an array of\n\t * valid parameters.\n\t *\n\t * @param array $p_parameters\n\t * @return array\n\t */\n\tprotected function ProcessParameters(array $p_parameters)\n\t{\n            $parameters = array();\n            foreach ($p_parameters as $parameter=>$value) {\n                $parameter = strtolower($parameter);\n                switch ($parameter) {\n                    case 'length':\n                    case 'columns':\n                    case 'name':\n                    case 'order':\n                    case 'published':\n                    case 'role':\n                        if ($parameter == 'length' || $parameter == 'columns') {\n                            $intValue = (int)$value;\n                            if (\"$intValue\" != $value || $intValue < 0) {\n                                CampTemplate::singleton()->trigger_error(\"invalid value $value of parameter $parameter in statement list_box_articles\");\n                            }\n                            $parameters[$parameter] = (int)$value;\n                        } else {\n                            $parameters[$parameter] = $value;\n                        }\n                        break;\n                    default:\n                        CampTemplate::singleton()->trigger_error(\"invalid parameter $parameter in list_box_articles\", $p_smarty);\n                }\n            }\n\n            return $parameters;\n        }\n}\n\n?>\n"
  },
  {
    "path": "newscoop/template_engine/classes/CampConfig.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Holman Romero <holman.romero@gmail.com>\n * @copyright 2007 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\n\n/**\n * Class CampConfig\n */\nfinal class CampConfig\n{\n    /**\n     * Holds instance of the class\n     *\n     * @var object\n     */\n    private static $m_instance = null;\n\n    /**\n     * Holds configuration settings\n     *\n     * @var m_config\n     */\n    private $m_config = array();\n\n\n    /**\n     * Class constructor\n     *\n     * @param string $p_configFile\n     *      The full path to the configuration file\n     */\n    private function __construct($p_configFile = null)\n    {\n        global $Campsite;\n\n        if (empty($p_configFile)) {\n            $p_configFile = $GLOBALS['g_campsiteDir'].'/conf/configuration.php';\n        }\n\n        require_once($p_configFile);\n        $this->m_config = $Campsite;\n    } // fn __construct\n\n\n    /**\n     * Builds an instance object of this class only if there is no one.\n     *\n     * @param string $p_configFile\n     *      The full path to the configuration file\n     *\n     * @return object $m_instance\n     *      The CampConfig instance\n     */\n    public static function singleton($p_configFile = null)\n    {\n        if (!isset(self::$m_instance)) {\n            self::$m_instance = new CampConfig($p_configFile);\n        }\n\n        return self::$m_instance;\n    } // fn singleton\n\n\n    /**\n     * Gets all the configuration settings\n     *\n     * @return array\n     *    m_config The array of settings\n     */\n    public function getAllSettings()\n    {\n        return $this->m_config;\n    } // fn getAllSettings\n\n\n    /**\n     * Gets a setting var value from configuration.\n     *\n     * @param string\n     *    $p_varName The name of the setting variable\n     *\n     * @return mixed\n     *    null Var name passed is no valid\n     *    mixed The value of the setting variable\n     */\n    public function getSetting($p_varName)\n    {\n        if (empty($p_varName)) {\n            return null;\n        }\n\n        $settingVar = CampConfig::TranslateSettingName($p_varName);\n        if (!$settingVar) {\n            return array_key_exists($p_varName, $this->m_config) ? $this->m_config[$p_varName] : null;\n        }\n\n        $varname = $settingVar['varname'];\n        $namespace = $settingVar['namespace'];\n\n        if (!isset($this->m_config[$namespace]) || !is_array($this->m_config[$namespace])\n        \t\t|| !array_key_exists($varname, $this->m_config[$namespace])) {\n            return null;\n        }\n\n        return $this->m_config[$namespace][$varname];\n    } // fn getSetting\n\n\n    /**\n     * Translates the given setting variable name into the form\n     * namespace and var name.\n     *\n     * @param string\n     *    p_varName The full variable name\n     *\n     * @return mixed\n     *    null If the given value is not appropriate\n     *    settingVar An array containing the namespace and variable actual name\n     */\n    public static function TranslateSettingName($p_varName)\n    {\n        $settingVar = null;\n        if (strpos($p_varName, '.') !== FALSE) {\n            @list($namespace, $varname) = explode('.', $p_varName);\n        }\n        if (!empty($namespace) && !empty($varname)) {\n            $settingVar['namespace'] = $namespace;\n            $settingVar['varname'] = $varname;\n        }\n\n        return $settingVar;\n    } // fn TranslateVarName\n\n} // class CampConfig\n\n?>\n"
  },
  {
    "path": "newscoop/template_engine/classes/CampContext.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Mugur Rus <mugur.rus@gmail.com>\n * @author Holman Romero <holman.romero@gmail.com>\n * @copyright 2007 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\n\nrequire_once dirname(__FILE__) . '/../../classes/Browser.php';\n\n/**\n * Class CampContext\n */\nfinal class CampContext\n{\n    /**\n     * dummy login action\n     * @var array\n     */\n    public $login_action;\n\n    /** @var int */\n    private $userCount;\n\n    // Defines the object types\n    private static $m_objectTypes = array(\n        'language'=>array(\n            'class'=>'Language',\n            'handler'=>'setLanguageHandler'\n        ),\n        'publication'=>array(\n            'class'=>'Publication',\n            'handler'=>'setPublicationHandler'\n        ),\n        'issue'=>array(\n            'class'=>'Issue',\n            'handler'=>'setIssueHandler'\n        ),\n        'section'=>array(\n            'class'=>'Section',\n            'handler'=>'setSectionHandler'\n        ),\n        'article'=>array(\n            'class'=>'Article',\n            'handler'=>'setArticleHandler'\n        ),\n        'image'=>array(\n            'class'=>'Image'\n        ),\n        'attachment'=>array(\n            'class'=>'Attachment'\n        ),\n        'comment'=>array(\n            'class'=>'Comment',\n            'handler'=>'setCommentHandler'\n        ),\n        'subtitle'=>array(\n            'class'=>'Subtitle',\n            'handler'=>'setSubtitleHandler'\n        ),\n        'topic'=>array(\n            'class'=>'Topic',\n            'handler'=>'setTopicHandler'\n        ),\n        'user'=>array(\n            'class'=>'User'\n        ),\n        'template'=>array(\n            'class'=>'Template'\n        ),\n        'location'=>array(\n            'class'=>'MapLocation'\n        ),\n        'author'=>array(\n            'class'=>'Author'\n        ),\n        'list_user' => array(\n            'class' => 'User',\n        ),\n        'user_comment' => array(\n            'class' => 'Comment',\n        )\n    );\n\n    // Defines the list objects\n    private $m_listObjects = array(\n        'languages'=>array(\n            'class' =>'Languages',\n            'list'  =>'languages',\n            'url_id'=>'lang'\n        ),\n        'issues'=>array(\n            'class'=>'Issues',\n            'list'=>'issues',\n            'url_id'=>'iss'\n        ),\n        'sections'=>array(\n            'class'=>'Sections',\n            'list'=>'sections',\n            'url_id'=>'sec'\n        ),\n        'articles'=>array(\n            'class'=>'Articles',\n            'list'=>'articles',\n            'url_id'=>'art'\n        ),\n        'maparticles'=>array(\n            'class'=>'MapArticles',\n            'list'=>'map_articles',\n            'url_id'=>'mart'\n        ),\n        'articleauthors'=>array(\n            'class'=>'ArticleAuthors',\n            'list'=>'article_authors',\n            'url_id'=>'aas'\n        ),\n        'sectionauthors'=>array(\n            'class'=>'SectionAuthors',\n            'list'=>'section_authors',\n            'url_id'=>'sas'\n        ),\n        'articlelocations'=>array(\n            'class'=>'ArticleLocations',\n            'list'=>'article_locations',\n            'url_id'=>'alc'\n        ),\n        'maplocations'=>array(\n            'class'=>'MapLocations',\n            'list'=>'map_locations',\n            'url_id'=>'mlc'\n        ),\n        'articleimages'=>array(\n            'class'=>'ArticleImages',\n            'list'=>'article_images',\n            'url_id'=>'aim'\n        ),\n        'articleattachments'=>array(\n            'class'=>'ArticleAttachments',\n            'list'=>'article_attachments',\n            'url_id'=>'aat'\n        ),\n        'articlecomments'=>array(\n            'class'=>'ArticleComments',\n            'list'=>'article_comments',\n            'url_id'=>'acm'\n        ),\n        'subtitles'=>array(\n            'class'=>'Subtitles',\n            'list'=>'subtitles',\n            'url_id'=>'st'\n        ),\n        'articletopics'=>array(\n            'class'=>'ArticleTopics',\n            'list'=>'article_topics',\n            'url_id'=>'atp'\n        ),\n        'searchresults'=>array(\n            'class'=>'SearchResults',\n            'list'=>'search_results',\n            'url_id'=>'src'\n        ),\n        'searchresultssolr' => array(\n            'class' => 'SearchResultsSolr',\n            'list' => 'search_solr',\n            'url_id' => 'solr'\n        ),\n        'subtopics'=>array(\n            'class'=>'Subtopics',\n            'list'=>'subtopics',\n            'url_id'=>'tp'\n        ),\n        'images'=>array(\n            'class'=>'Images',\n            'list'=>'images',\n            'url_id'=>'img'\n        ),\n        'users' => array(\n            'class' => 'Users',\n            'list' => 'users',\n            'url_id' => 'uid',\n        ),\n        'boxarticles' => array(\n            'class' => 'BoxArticles',\n            'list' => 'box_articles',\n            'url_id' => 'box',\n        ),\n        'usercomments' => array(\n            'class' => 'UserComments',\n            'list' => 'user_comments',\n            'url_id' => 'cid',\n        ),\n        'playlist' => array(\n            'class' => 'Playlist',\n            'list' => 'playlist',\n            'url_id' => 'pls'\n        )\n    );\n\n    /**\n     * Stores the context objects.\n     *\n     * @var array\n     */\n    private $m_objects = array();\n\n    /**\n     * Stores the context properties.\n     *\n     * @var array\n     */\n    private $m_properties = null;\n\n    /**\n     * Stores the readonly properties; the users can't modify them directly\n     *\n     * @var array\n     */\n    private $m_readonlyProperties = null;\n\n    /**\n     * Stores a given list of properties at the beginning of each list block\n     *\n     * @var array\n     */\n    private $m_savedProperties = array();\n\n    /**\n     * Stores the current context at the beginning of each local block\n     *\n     * @var array\n     */\n    private $m_savedContext = array();\n\n    /**\n     * Stores the list count for each list type for the current request\n     *\n     * @var array\n     */\n    private $m_list_count = array();\n\n    private static $m_nullMetaArticle = null;\n\n    private static $m_nullMetaSection = null;\n\n    /** @var Application_Form_Contact */\n    public $form_contact;\n\n    /** @var array */\n    public $flash_messages = array();\n\n    /**\n     * Class constructor\n     */\n    final public function __construct()\n    {\n        global $Campsite, $controller;\n\n        if (!is_null($this->m_properties)) {\n            return;\n        }\n\n        $this->login_action = (object) array(\n            'is_error' => false,\n            'error_message' => '',\n        );\n\n        self::$m_nullMetaArticle = new MetaArticle();\n        self::$m_nullMetaSection = new MetaSection();\n\n        // LEGACY PLUGINS\n        // register plugin objects and listobjects\n        foreach (CampPlugin::GetPluginsInfo(true) as $info) {\n            if (is_array($info['template_engine']['objecttypes'])) {\n                foreach ($info['template_engine']['objecttypes'] as $objecttype) {\n                    $this->registerObjectType($objecttype);\n                }\n            }\n\n            if (is_array($info['template_engine']['listobjects'])) {\n                foreach ($info['template_engine']['listobjects'] as $listobject) {\n                    $this->registerListObject($listobject);\n                }\n            }\n        }\n\n        // Register new plugins system list objects\n        $pluginsService = \\Zend_Registry::get('container')->get('newscoop.plugins.service');\n        $collectedData = $pluginsService->collectListObjects();\n        $this->m_listObjects = array_merge($collectedData['listObjects'], $this->m_listObjects);\n        CampContext::$m_objectTypes = array_merge($collectedData['objectTypes'], CampContext::$m_objectTypes);\n\n        $this->m_properties['htmlencoding'] = false;\n        $this->m_properties['subs_by_type'] = null;\n\n        $this->m_readonlyProperties['version'] = $Campsite['VERSION'];\n        $this->m_readonlyProperties['current_list'] = null;\n        $this->m_readonlyProperties['lists'] = array();\n        $this->m_readonlyProperties['prev_list_empty'] = null;\n        $this->m_readonlyProperties['default_url'] = new MetaURL();\n        $this->m_readonlyProperties['url'] = new MetaURL();\n        if (!$this->m_readonlyProperties['default_url']->is_valid) {\n            if (!$this->m_readonlyProperties['url']->language->defined) {\n                $this->m_readonlyProperties['url']->language = $this->m_readonlyProperties['url']->publication->default_language;\n                $this->m_readonlyProperties['default_url'] = $this->m_readonlyProperties['url'];\n            }\n        }\n\n        $this->m_objects['user'] = $this->m_readonlyProperties['url']->user;\n        $this->m_readonlyProperties['preview'] = $this->m_readonlyProperties['url']->preview;\n\n        if (!$this->m_readonlyProperties['preview']) {\n            if (!$this->m_readonlyProperties['url']->article->is_published) {\n                $this->m_readonlyProperties['default_url']->article = self::$m_nullMetaArticle;\n                $this->m_readonlyProperties['url']->article = self::$m_nullMetaArticle;\n            }\n            if (!$this->m_readonlyProperties['url']->issue->is_published) {\n                $this->m_readonlyProperties['default_url']->article = self::$m_nullMetaArticle;\n                $this->m_readonlyProperties['url']->article = self::$m_nullMetaArticle;\n                $this->m_readonlyProperties['default_url']->section = self::$m_nullMetaSection;\n                $this->m_readonlyProperties['url']->section = self::$m_nullMetaSection;\n                $this->m_readonlyProperties['default_url']->issue = new MetaIssue();\n                $this->m_readonlyProperties['url']->issue = new MetaIssue();\n            }\n        }\n\n        $this->m_objects['publication'] = $this->m_readonlyProperties['url']->publication;\n        $this->m_objects['language'] = $this->m_readonlyProperties['url']->language;\n        $this->m_objects['issue'] = $this->m_readonlyProperties['url']->issue;\n        $this->m_objects['section'] = $this->m_readonlyProperties['url']->section;\n        $this->m_objects['article'] = $this->m_readonlyProperties['url']->article;\n        $this->m_objects['template'] = $this->m_readonlyProperties['url']->template;\n        if (is_numeric($this->m_readonlyProperties['url']->get_parameter('tpid'))) {\n            $this->m_objects['topic'] = new MetaTopic(\n                $this->m_readonlyProperties['url']->get_parameter('tpid'),\n                $this->m_readonlyProperties['url']->language->code\n            );\n        }\n\n        $this->m_readonlyProperties['default_template'] = $this->m_objects['template'];\n        $this->m_readonlyProperties['default_language'] = $this->m_objects['language'];\n        $this->m_readonlyProperties['default_publication'] = $this->m_objects['publication'];\n        $this->m_readonlyProperties['default_issue'] = $this->m_objects['issue'];\n        $this->m_readonlyProperties['default_section'] = $this->m_objects['section'];\n        $this->m_readonlyProperties['default_article'] = $this->m_objects['article'];\n        $this->m_readonlyProperties['default_topic'] = $this->topic;\n\n        if (!is_null($commentId = CampRequest::GetVar('acid'))) {\n            $this->m_objects['comment'] = new MetaComment($commentId);\n        }\n\n        $this->m_readonlyProperties['request_action'] = MetaAction::CreateAction(CampRequest::GetInput(CampRequest::GetMethod()));\n        $requestActionName = $this->m_readonlyProperties['request_action']->name;\n\n        $runAction = true;\n        if ($requestActionName == 'submit_comment' && $pluginsService->isInstalled('terwey/plugin-newscoop-comments')) {\n            $runAction = false;\n        }\n\n        if ($requestActionName != 'default' && $runAction) {\n            $this->m_readonlyProperties['request_action']->takeAction($this);\n        }\n\n        foreach (MetaAction::ReadAvailableActions() as $actionName=>$actionAttributes) {\n            $propertyName = $actionName . '_action';\n            if ($requestActionName == $actionName) {\n                $this->m_readonlyProperties[$propertyName] =& $this->m_readonlyProperties['request_action'];\n            } else {\n                $this->m_readonlyProperties[$propertyName] = MetaAction::DefaultAction();\n            }\n        }\n\n        // Initialize the default comment attribute at the end, after the\n        // submit comment action had run.\n        $this->m_readonlyProperties['default_comment'] = $this->comment;\n\n        // add browser info\n        $this->m_readonlyProperties['browser'] = new Browser;\n\n        // initialize plugins\n        foreach (CampPlugin::GetPluginsInfo(true) as $info) {\n            if (function_exists($info['template_engine']['init'])) {\n                $plugin_init = $info['template_engine']['init'];\n                $plugin_init($this);\n            }\n        }\n\n        // initialize geo-map holders\n        $this->m_properties['map_dynamic_constraints'] = null;\n        $this->m_properties['map_dynamic_areas'] = null;\n        $this->m_properties['map_dynamic_max_points'] = 0;\n        $this->m_properties['map_dynamic_tot_points'] = 0;\n        $this->m_properties['map_dynamic_points_raw'] = null;\n        $this->m_properties['map_dynamic_points_objects'] = null;\n        $this->m_properties['map_dynamic_meta_article_objects'] = null;\n        $this->m_properties['map_dynamic_map_label'] = \"\";\n        $this->m_properties['map_dynamic_id_counter'] = 0;\n        $this->m_properties['map_common_header_set'] = false;\n\n        $flashMessenger = new \\Newscoop\\Controller\\Helper\\FlashMessenger();\n        $this->flash_messages = $flashMessenger->getMessages();\n    } // fn __construct\n\n\n    /**\n     * Overloaded method call to give access to context properties.\n     *\n     * @param  string $p_element - the property name\n     * @return mix    - the property value\n     */\n    final public function __get($p_element)\n    {\n        try {\n            $p_element = CampContext::TranslateProperty($p_element);\n\n            // Verify if an object of this type exists\n            if (!is_null(CampContext::ObjectType($p_element))) {\n\n                if (!isset($this->m_objects[$p_element])\n                || is_null($this->m_objects[$p_element])) {\n                    $this->createObject($p_element);\n                }\n\n                return $this->m_objects[$p_element];\n            }\n\n            // Verify if a readonly property with this name exists\n            if (is_array($this->m_readonlyProperties)\n            && array_key_exists($p_element, $this->m_readonlyProperties)) {\n                return $this->m_readonlyProperties[$p_element];\n            }\n\n            // Verify if a property with this name exists\n            if (is_array($this->m_properties)\n            && array_key_exists($p_element, $this->m_properties)) {\n                return $this->m_properties[$p_element];\n            }\n\n            // No object of this type of property with this name exist.\n            $this->trigger_invalid_property_error($p_element);\n        } catch (InvalidObjectException $e) {\n            $this->trigger_invalid_object_error($e->getClassName());\n        }\n\n        return null;\n    } // fn __get\n\n\n    /**\n     * Overloade method call to set the context properties.\n     *\n     * @param  string $p_element - property name\n     * @param  string $p_value   - value of the property\n     * @return mix    - the property value\n     */\n    final public function __set($p_element, $p_value)\n    {\n        $p_element = CampContext::TranslateProperty($p_element);\n\n        // Verify if an object of this type exists\n        if (!is_null(CampContext::ObjectType($p_element))) {\n            try {\n                if (!is_object($p_value)) {\n                    throw new InvalidObjectException($p_element);\n                }\n\n                $classFullPath = $GLOBALS['g_campsiteDir'].'/template_engine/metaclasses/'\n                . CampContext::ObjectType($p_element).'.php';\n\n                if (file_exists($classFullPath)) {\n                    require_once($classFullPath);\n                } elseif (class_exists(CampContext::$m_objectTypes[$p_element]['class'])) {\n                    $className = CampContext::ObjectType($p_element);\n                } else {\n                    $pluginImplementsClassFullPath = false;\n\n                    foreach (CampPlugin::GetEnabled() as $CampPlugin) {\n                        $pluginClassFullPath = $GLOBALS['g_campsiteDir'].'/'.$CampPlugin->getBasePath()\n                        .'/template_engine/metaclasses/'.CampContext::ObjectType($p_element).'.php';\n                        if (file_exists($pluginClassFullPath)) {\n                            $pluginImplementsClassFullPath = $pluginClassFullPath;\n                        }\n                    }\n                    if ($pluginImplementsClassFullPath) {\n                        require_once(($pluginImplementsClassFullPath));\n                    } else {\n                        throw new InvalidObjectException($p_element);\n                    }\n                }\n\n\n                $metaclass = CampContext::ObjectType($p_element);\n                if (!is_a($p_value, $metaclass)) {\n                    throw new InvalidObjectException($p_element);\n                }\n\n                if (isset($this->m_objects[$p_element])\n                && !is_null($this->m_objects[$p_element])) {\n                    $oldValue = $this->m_objects[$p_element];\n                } else {\n                    $oldValue = new $metaclass;\n                }\n\n                if (isset(CampContext::$m_objectTypes[$p_element]['handler'])) {\n                    $setHandler = CampContext::$m_objectTypes[$p_element]['handler'];\n                    $this->$setHandler($oldValue, $p_value);\n                } else {\n                    $this->m_objects[$p_element] = $p_value;\n                }\n\n                return isset($this->m_objects[$p_element]) ? $this->m_objects[$p_element] : null;\n            } catch (InvalidObjectException $e) {\n                $this->trigger_invalid_object_error($e->getClassName());\n\n                return null;\n            }\n        }\n\n        // Verify if a property with this name exists\n        if (is_array($this->m_properties)\n        && array_key_exists($p_element, $this->m_properties)) {\n            return $this->m_properties[$p_element] = $p_value;\n        }\n\n        // No object of this type of property with this name exist.\n        $this->trigger_invalid_property_error($p_element);\n\n        return null;\n    } // fn __set\n\n\n    /**\n     * Returns true if the given property exists.\n     *\n     * @param string $p_property\n     */\n    public function has_property($p_property)\n    {\n        $p_property = CampContext::TranslateProperty($p_property);\n\n        return !is_null(CampContext::ObjectType($p_property))\n        || array_key_exists($p_property, $this->m_properties)\n        || array_key_exists($p_property, $this->m_readonlyProperties);\n    } // fn has_property\n\n\n    /**\n     * Returns true if the given object exists.\n     *\n     * @param string $p_object\n     */\n    public function has_object($p_object)\n    {\n        $p_object = CampContext::TranslateProperty($p_object);\n\n        return !is_null(CampContext::ObjectType($p_object));\n    } // fn has_object\n\n\n    /**\n     * Returns the object name from the list class name.\n     *\n     * @param  string $p_listClassName\n     * @return string\n     */\n    private function GetListObjectName($p_listClassName)\n    {\n        $nameLength = strlen($p_listClassName);\n        if ($nameLength <= 4) {\n            return '';\n        }\n        $tail = substr($p_listClassName, ($nameLength - 4));\n        if (strtolower($tail) != 'list') {\n            return '';\n        }\n\n        return strtolower(substr($p_listClassName, 0, ($nameLength - 4)));\n    } // fn GetListObjectName\n\n\n    /**\n     * Returns the list name of the current list.\n     *\n     * @return string\n     *                The name of the list\n     */\n    public function getCurrentListName()\n    {\n        if (!isset($this->m_readonlyProperties['current_list'])\n        || count($this->m_readonlyProperties['lists']) == 0) {\n            return null;\n        }\n\n        $objectName = $this->GetListObjectName(get_class($this->m_readonlyProperties['current_list']));\n        $listName = $this->m_listObjects[$objectName]['list'];\n\n        return 'current_'.$listName.'_list';\n    } // fn getCurrentListName\n\n\n    /**\n     * Saves a given list of properties\n     *\n     * @param array $p_propertiesList\n     *\n     * @return void\n     */\n    private function SaveProperties(array $p_propertiesList)\n    {\n        $savedProperties = array();\n        foreach ($p_propertiesList as $propertyName) {\n            if (!$this->has_property($propertyName)) {\n                continue;\n            }\n            $savedProperties[$propertyName] = $this->$propertyName;\n        }\n        array_push($this->m_savedProperties, $savedProperties);\n    } // fn SaveProperties\n\n\n    /**\n     * Restores the last list of properties from the stack\n     */\n    private function RestoreProperties()\n    {\n        if (empty($this->m_savedProperties)) {\n            return;\n        }\n        $savedProperties = array_pop($this->m_savedProperties);\n        foreach ($savedProperties as $propertyName=>$propertyValue) {\n            $this->$propertyName = $propertyValue;\n        }\n    } // fn RestoreProperties\n\n\n    /**\n     * Saves the current context objects.\n     *\n     * @param array $p_objectsList\n     *\n     * @return void\n     */\n    public function saveCurrentContext(array $p_propertiesList = array())\n    {\n        if (count($p_propertiesList) == 0) {\n            $p_propertiesList = $this->allPropertiesNames();\n        }\n        $savedContext = array();\n        foreach ($p_propertiesList as $propertyName) {\n            if ($this->has_property($propertyName)) {\n                $savedContext[$propertyName] = $this->$propertyName;\n            }\n        }\n        array_push($this->m_savedContext, $savedContext);\n    } // fn saveCurrentContext\n\n\n    /**\n     * Restores the global context.\n     */\n    public function restoreContext()\n    {\n        if (empty($this->m_savedContext)) {\n            return;\n        }\n        $savedContext = array_pop($this->m_savedContext);\n        foreach ($savedContext as $propertyName => $propertyValue) {\n            $this->$propertyName = $propertyValue;\n        }\n    } // fn restoreContext\n\n\n    /**\n     * Returns the list of all properties\n     *\n     * @return array\n     */\n    public function allPropertiesNames()\n    {\n        $propertiesNames = array_keys($this->m_properties);\n        $propertiesNames[]= 'language';\n        $propertiesNames[]= 'publication';\n        $propertiesNames[]= 'issue';\n        $propertiesNames[]= 'section';\n        $propertiesNames[]= 'article';\n        $propertiesNames[]= 'image';\n        $propertiesNames[]= 'attachment';\n        $propertiesNames[]= 'comment';\n        $propertiesNames[]= 'subtitle';\n        $propertiesNames[]= 'topic';\n        $propertiesNames[]= 'user';\n\n        return $propertiesNames;\n    }\n\n\n    /**\n     * Sets the current list.\n     *\n     * @param  object $p_list\n     * @return void\n     */\n    public function setCurrentList(&$p_list, array $p_savePropertiesList = array())\n    {\n        if (!is_object($p_list)) {\n            throw new InvalidObjectException($p_list);\n        }\n\n        $objectName = $this->GetListObjectName(get_class($p_list));\n        if ($objectName == '' || !isset($this->m_listObjects[$objectName])) {\n            throw new InvalidObjectException(get_class($p_list));\n        }\n\n        $listObjectName = $this->m_listObjects[$objectName]['class'].'List';\n        if (!is_a($p_list, $listObjectName)) {\n            throw new InvalidObjectException(get_class($p_list));\n        }\n\n        $p_list->setId($this->next_list_id($listObjectName));\n\n        $listName = $this->m_listObjects[$objectName]['list'];\n        if (!isset($this->m_list_count[$listName.'_lists'])) {\n            $this->m_list_count[$listName.'_lists'] = 1;\n        } else {\n            $this->m_list_count[$listName.'_lists']++;\n        }\n\n        $this->SaveProperties($p_savePropertiesList);\n\n        $this->m_readonlyProperties['lists'][] =& $p_list;\n        $this->m_readonlyProperties['current_list'] =& $p_list;\n        $this->m_readonlyProperties[$listName.'_lists'][] =& $p_list;\n        $this->m_readonlyProperties['current_'.$listName.'_list'] =& $p_list;\n\n        return $this->m_readonlyProperties;\n    } // fn setCurrentList\n\n\n    public function getListName($list)\n    {\n        $objectName = $this->GetListObjectName(get_class($list));\n        if ($objectName == '' || !isset($this->m_listObjects[$objectName])) {\n            throw new InvalidObjectException(get_class($list));\n        }\n\n        $listObjectName = $this->m_listObjects[$objectName]['class'].'List';\n        if (!is_a($list, $listObjectName)) {\n            throw new InvalidObjectException(get_class($list));\n        }\n\n        return $listObjectName;\n    }\n\n    /**\n     * Resets the current list.\n     *\n     * @return void\n     */\n    public function resetCurrentList()\n    {\n        if (!isset($this->m_readonlyProperties['current_list'])\n        || count($this->m_readonlyProperties['lists']) == 0) {\n            return;\n        }\n\n        $this->m_readonlyProperties['prev_list_empty'] = (int) ($this->m_readonlyProperties['current_list']->count == 0);\n\n        $this->RestoreProperties();\n\n        $objectName = $this->GetListObjectName(get_class($this->m_readonlyProperties['current_list']));\n        $listName = $this->m_listObjects[$objectName]['list'];\n\n        if (count($this->m_readonlyProperties[$listName.'_lists']) > 0) {\n            array_pop($this->m_readonlyProperties[$listName.'_lists']);\n            $this->m_readonlyProperties['current_'.$listName.'_list'] =\n                end($this->m_readonlyProperties[$listName.'_lists']);\n        }\n\n        array_pop($this->m_readonlyProperties['lists']);\n        $this->m_readonlyProperties['current_list'] = end($this->m_readonlyProperties['lists']);\n    } // fn resetCurrentList\n\n\n    /**\n     * Returns the corresponding id for the current list\n     *\n     * @return int - the current list identifier\n     */\n    public function current_list_id()\n    {\n        $objectName = $this->GetListObjectName(get_class($this->m_readonlyProperties['current_list']));\n        $listName = $this->m_listObjects[$objectName]['list'];\n        if (!isset($this->m_readonlyProperties['current_list'])) {\n            return null;\n        }\n\n        return $this->m_readonlyProperties['current_list']->id;\n    }\n\n\n    /**\n     * Returns the corresponding id for a new list of the given type\n     *\n     * @param string $p_className\n     */\n    public function next_list_id($p_className)\n    {\n        $objectName = $this->GetListObjectName($p_className);\n        if (is_null($objectName) || $objectName == '') {\n            return null;\n        }\n        $listName = $this->m_listObjects[$objectName]['list'];\n        $prefix = 'ls-'.$this->m_listObjects[$objectName]['url_id'];\n        if (!isset($this->m_list_count[$listName.'_lists'])) {\n            return $prefix . '0';\n        }\n\n        return $prefix . $this->m_list_count[$listName.'_lists'];\n    }\n\n\n    public function list_id_prefix($p_className)\n    {\n        $objectName = $this->GetListObjectName($p_className);\n        if (is_null($objectName) || $objectName == '') {\n            return null;\n        }\n\n        return 'ls-'.$this->m_listObjects[$objectName]['url_id'];\n    }\n\n\n    /**\n     * Returns the corresponding list start index for a new list of the given type\n     *\n     * @param string $p_className\n     */\n    public function next_list_start($p_className)\n    {\n        $nextListId = $this->next_list_id($p_className);\n        if (is_null($nextListId)) {\n            return null;\n        }\n\n        return $this->m_readonlyProperties['default_url']->get_parameter($nextListId);\n    }\n\n\n    /**\n     * Creates an object of the given type. Returns the created object.\n     *\n     * @param  string $p_objectType\n     * @return object\n     */\n    private function createObject($p_objectType)\n    {\n        $p_objectType = CampContext::TranslateProperty($p_objectType);\n\n        $classFullPath = $GLOBALS['g_campsiteDir'].'/template_engine/metaclasses/'\n        . CampContext::ObjectType($p_objectType).'.php';\n\n        if (file_exists($classFullPath)) {\n            require_once($classFullPath);\n        } elseif (class_exists(CampContext::$m_objectTypes[$p_objectType]['class'])) {\n            $className = CampContext::ObjectType($p_objectType);\n        } else {\n            $pluginImplementsClassFullPath = false;\n\n            foreach (CampPlugin::GetEnabled() as $CampPlugin) {\n                $pluginClassFullPath = $GLOBALS['g_campsiteDir'].'/'.$CampPlugin->getBasePath()\n                .'/template_engine/metaclasses/'.CampContext::ObjectType($p_objectType).'.php';\n                if (file_exists($pluginClassFullPath)) {\n                    $pluginImplementsClassFullPath = $pluginClassFullPath;\n                }\n            }\n            if ($pluginImplementsClassFullPath) {\n                require_once(($pluginImplementsClassFullPath));\n            } else {\n                throw new InvalidObjectException($p_objectType);\n            }\n        }\n\n        $className = CampContext::ObjectType($p_objectType);\n        $this->m_objects[$p_objectType] = new $className();\n\n        return $this->m_objects[$p_objectType];\n    } // fn createObject\n\n\n    /**\n     * Processes a property name; returns a valid property name.\n     *\n     * @param  string $p_property\n     * @return string\n     */\n    public static function TranslateProperty($p_property)\n    {\n        return strtolower($p_property);\n    } // fn TranslateProperty\n\n\n    /**\n     * Triggers an invalid object error.\n     *\n     * @param string $p_object - object name\n     */\n    final protected function trigger_invalid_object_error($p_object)\n    {\n        CampTemplate::singleton()->trigger_error(INVALID_OBJECT_STRING . \" $p_object \");\n    } // fn trigger_invalid_object_error\n\n\n    /**\n     * Triggers an invalid property error.\n     *\n     * @param string $p_property - property name\n     */\n    final protected function trigger_invalid_property_error($p_property, $p_smarty=null)\n    {\n        $errorMessage = INVALID_PROPERTY_STRING . \" $p_property \"\n        . OF_OBJECT_STRING . ' campsite';\n        CampTemplate::singleton()->trigger_error($errorMessage, $p_smarty);\n    } // fn trigger_invalid_property_error\n\n\n    /**\n     * Register an new object type\n     *\n     * @param array $p_objectType\n     *                            structure: array(object name => object class name)\n     */\n    final private function registerObjectType(array $p_objectType)\n    {\n        try {\n            // check the structure\n            $keys = array_keys($p_objectType);\n            $values = array_values($p_objectType);\n\n            if (count($keys) !== 1 || count($values) !== 1) {\n                throw new Exception('CampContext::registerObjectType called with malformed parameter: '.print_r($p_objectType));\n            }\n        } catch (Exception $e) {\n            $this->trigger_invalid_register_error($e->getMessage());\n        }\n\n        CampContext::$m_objectTypes += $p_objectType;\n    }\n\n\n    /**\n     * Register an list object\n     *\n     * @param array $p_listObject\n     *                            structure: array(list object name => array('class' => class name, 'list' => list class name))\n     */\n    final private function registerListObject(array $listObject)\n    {\n        try {\n            // check the structure\n            $keys = array_keys($listObject);\n            $values = array_values($listObject);\n\n            if (count($keys) !== 1 || count($values) !== 1) {\n                throw new Exception('CampContext::registerListObject called with malformed parameter: '.print_r($listObject));\n            }\n        } catch (Exception $e) {\n            $this->trigger_invalid_register_error($e->getMessage());\n        }\n\n        $this->m_listObjects += $listObject;\n    }\n\n\n    final protected function trigger_invalid_register_error($p_message)\n    {\n        CampTemplate::singleton()->trigger_error($p_message);\n    }\n\n\n    /**\n     * Returns the language defined in the current context; if it\n     * wasn't defined it initializes the language by an empty object.\n     * This method was defined because it's faster than using the\n     * magic method __get().\n     *\n     * @return MetaIssue\n     */\n    final protected function getLanguage()\n    {\n        if (!isset($this->m_objects['language'])) {\n            $this->createObject('language');\n        }\n\n        return $this->m_objects['language'];\n    }\n\n\n    /**\n     * Returns the publication defined in the current context; if it\n     * wasn't defined it initializes the publication by an empty object.\n     * This method was defined because it's faster than using the\n     * magic method __get().\n     *\n     * @return MetaPublication\n     */\n    final protected function getPublication()\n    {\n        if (!isset($this->m_objects['publication'])) {\n            $this->createObject('publication');\n        }\n\n        return $this->m_objects['publication'];\n    }\n\n\n    /**\n     * Returns the issue defined in the current context; if it\n     * wasn't defined it initializes the issue by an empty object.\n     * This method was defined because it's faster than using the\n     * magic method __get().\n     *\n     * @return MetaIssue\n     */\n    final protected function getIssue()\n    {\n        if (!isset($this->m_objects['issue'])) {\n            $this->createObject('issue');\n        }\n\n        return $this->m_objects['issue'];\n    }\n\n\n    /**\n     * Returns the section defined in the current context; if it\n     * wasn't defined it initializes the section by an empty object.\n     * This method was defined because it's faster than using the\n     * magic method __get().\n     *\n     * @return MetaIssue\n     */\n    final protected function getSection()\n    {\n        if (!isset($this->m_objects['section'])) {\n            $this->createObject('section');\n        }\n\n        return $this->m_objects['section'];\n    }\n\n\n    /**\n     * Returns the article defined in the current context; if it\n     * wasn't defined it initializes the article by an empty object.\n     * This method was defined because it's faster than using the\n     * magic method __get().\n     *      *\n     * @return MetaIssue\n     */\n    final protected function getArticle()\n    {\n        if (!isset($this->m_objects['article'])) {\n            $this->createObject('article');\n        }\n\n        return $this->m_objects['article'];\n    }\n\n\n    /**\n     * Handler for the language change event.\n     *\n     * @param MetaLanguage $p_oldLanguage\n     * @param MetaLanguage $p_newLanguage\n     */\n    private function setLanguageHandler(MetaLanguage $p_oldLanguage, MetaLanguage $p_newLanguage)\n    {\n        static $languageHandlerRunning = false;\n        if ($languageHandlerRunning || $p_newLanguage->same_as($p_oldLanguage)) {\n            return;\n        }\n        $languageHandlerRunning = true;\n\n        $this->m_readonlyProperties['url']->language = $p_newLanguage;\n        $this->m_objects['language'] = $p_newLanguage;\n\n        if ($this->article->defined()) {\n            $oldArticle = $this->m_objects['article'];\n            $newArticle = new MetaArticle($p_newLanguage->number,\n                                          $oldArticle->number);\n            $this->setArticleHandler($oldArticle, $newArticle);\n        }\n        if ($this->section->defined() && !$this->m_objects['article']->defined()) {\n            $oldSection = $this->m_objects['section'];\n            $newSection = new MetaSection($oldSection->publication->identifier,\n                                          $oldSection->issue->number,\n                                          $p_newLanguage->number,\n                                          $oldSection->number);\n            $this->setSectionHandler($oldSection, $newSection);\n        }\n        if ($this->issue->defined() && !$this->m_objects['section']->defined()) {\n            $oldIssue = $this->m_objects['issue'];\n            $newIssue = new MetaIssue($oldIssue->publication->identifier,\n                                      $p_newLanguage->number,\n                                      $oldIssue->number);\n            $this->setIssueHandler($oldIssue, $newIssue);\n        }\n\n        $languageHandlerRunning = false;\n    }\n\n\n    /**\n     * Handler for the publication change event.\n     *\n     * @param MetaPublication $p_oldPublication\n     * @param MetaPublication $p_newPublication\n     */\n    private function setPublicationHandler(MetaPublication $p_oldPublication,\n    MetaPublication $p_newPublication)\n    {\n        static $publicationHandlerRunning = false;\n        if ($publicationHandlerRunning || $p_newPublication->same_as($p_oldPublication)) {\n            return;\n        }\n        $publicationHandlerRunning = true;\n\n        if ($p_newPublication->defined() && !$this->getLanguage()->defined()) {\n            $this->setLanguageHandler($this->getLanguage(), $p_newPublication->default_language);\n        }\n        $this->setIssueHandler($this->getIssue(), new MetaIssue());\n        $this->m_readonlyProperties['url']->publication = $p_newPublication;\n        $this->m_objects['publication'] = $p_newPublication;\n\n        $publicationHandlerRunning = false;\n    }\n\n\n    /**\n     * Handler for the issue change event.\n     *\n     * @param MetaIssue $p_oldIssue\n     * @param MetaIssue $p_newIssue\n     */\n    private function setIssueHandler(MetaIssue $p_oldIssue, MetaIssue $p_newIssue)\n    {\n        static $issueHandlerRunning = false;\n\n        if (!$this->m_readonlyProperties['preview']\n        && !$p_newIssue->is_published && $p_newIssue->defined()) {\n            return;\n        }\n\n        if ($issueHandlerRunning || $p_newIssue->same_as($p_oldIssue)) {\n            return;\n        }\n        $issueHandlerRunning = true;\n\n        if ($p_newIssue->defined() && !$this->getPublication()->same_as($p_newIssue->publication)) {\n            $this->setPublicationHandler($this->getPublication(), $p_newIssue->publication);\n        }\n        if ($p_newIssue->defined() && !$this->getLanguage()->same_as($p_newIssue->language)) {\n            $this->setLanguageHandler($this->getLanguage(), $p_newIssue->language);\n        }\n        $this->setSectionHandler($this->getSection(), self::$m_nullMetaSection);\n        $this->m_readonlyProperties['url']->issue = $p_newIssue;\n        $this->m_objects['issue'] = $p_newIssue;\n\n        $issueHandlerRunning = false;\n    }\n\n\n    /**\n     * Handler for the section change event.\n     *\n     * @param MetaSection $p_oldSection\n     * @param MetaSection $p_newSection\n     */\n    private function setSectionHandler(MetaSection $p_oldSection, MetaSection $p_newSection)\n    {\n        static $sectionHandlerRunning = false;\n\n        if (!$this->m_readonlyProperties['preview'] && isset($p_newSection->issue)\n        && !$p_newSection->issue->is_published && $p_newSection->defined()) {\n            return;\n        }\n\n        if ($sectionHandlerRunning || $p_newSection->same_as($p_oldSection)) {\n            return;\n        }\n        $sectionHandlerRunning = true;\n\n        if ($p_newSection->defined() && !$this->getIssue()->same_as($p_newSection->issue)) {\n            $this->setIssueHandler($this->getIssue(), $p_newSection->issue);\n        }\n        $this->setArticleHandler($this->getArticle(), self::$m_nullMetaArticle);\n        $this->m_readonlyProperties['url']->section = $p_newSection;\n        $this->m_objects['section'] = $p_newSection;\n\n        $sectionHandlerRunning = false;\n    }\n\n\n    /**\n     * Handler for the article change event.\n     *\n     * @param MetaArticle $p_oldArticle\n     * @param MetaArticle $p_newArticle\n     */\n    private function setArticleHandler(MetaArticle $p_oldArticle, MetaArticle $p_newArticle)\n    {\n        static $articleHandlerRunning = false;\n\n        if (!$this->m_readonlyProperties['preview']\n        && (!$p_newArticle->is_published || !$p_newArticle->issue->is_published)\n        && $p_newArticle->defined()) {\n            return;\n        }\n\n        if ($articleHandlerRunning || $p_newArticle->same_as($p_oldArticle)) {\n            return;\n        }\n        $articleHandlerRunning = true;\n\n        if ($p_newArticle->defined() && !$this->getSection()->same_as($p_newArticle->section)) {\n            $this->setSectionHandler($this->getSection(), $p_newArticle->section);\n        }\n        unset($this->m_objects['subtitle']);\n        unset($this->m_objects['image']);\n        unset($this->m_objects['attachment']);\n        unset($this->m_objects['comment']);\n        unset($this->m_objects['location']);\n        $this->m_readonlyProperties['url']->article = $p_newArticle;\n        $formParameters = $this->m_readonlyProperties['url']->form_parameters;\n        foreach ($formParameters as $parameter) {\n            if (strncmp($parameter['name'], 'st-', strlen('st-')) == 0) {\n                $this->m_readonlyProperties['url']->reset_parameter($parameter['name']);\n            }\n        }\n        $this->m_objects['article'] = $p_newArticle;\n\n        $articleHandlerRunning = false;\n    }\n\n\n    /**\n     * Handler for the comment change event.\n     *\n     * @param MetaComment $p_oldComment\n     * @param MetaComment $p_newComment\n     */\n    private function setCommentHandler(MetaComment $p_oldComment, MetaComment $p_newComment)\n    {\n        if (!$p_oldComment->same_as($p_newComment)) {\n            if ($p_newComment->defined()) {\n                $this->setArticleHandler($this->article, $p_newComment->article);\n            }\n            $this->m_objects['comment'] = $p_newComment;\n        }\n    }\n\n\n    private function setSubtitleHandler(MetaSubtitle $p_oldSubtitle, MetaSubtitle $p_newSubtitle)\n    {\n        if (!$p_oldSubtitle->same_as($p_newSubtitle)) {\n            $this->m_objects['subtitle'] = $p_newSubtitle;\n        }\n    }\n\n\n    private function setTopicHandler(MetaTopic $p_oldTopic, MetaTopic $p_newTopic)\n    {\n        if ($p_oldTopic !== $p_newTopic) {\n            $this->m_readonlyProperties['url']->set_parameter('tpid', $p_newTopic->identifier);\n            $this->m_objects['topic'] = $p_newTopic;\n        }\n    }\n\n\n    /**\n     * Returns the name corresponding to the given property; null if\n     * the property is not an object.\n     *\n     * @param string $p_property\n     */\n    protected static function ObjectType($p_property)\n    {\n\n        // Verify if an object of this type exists\n        if (array_key_exists($p_property, CampContext::$m_objectTypes)) {\n            if (\n                strpos(CampContext::$m_objectTypes[$p_property]['class'], '\\\\') !== false &&\n                class_exists(CampContext::$m_objectTypes[$p_property]['class'])\n            ) {\n                return CampContext::$m_objectTypes[$p_property]['class'];\n            }\n\n            return 'Meta'.CampContext::$m_objectTypes[$p_property]['class'];\n        }\n\n        return null;\n    }\n\n    /**\n     * Get active user count\n     *\n     * @return int\n     */\n    public function getUserCount()\n    {\n        if ($this->userCount === null) {\n            $this->userCount = (int) Zend_Registry::get('container')->getService('user')\n                ->getPublicUserCount();\n        }\n\n        return $this->userCount;\n    }\n\n    /**\n     * Check if plugin is installed and enabled\n     *\n     * @param string $pluginName Plugin name ex. \"vendor/plugin-name\"\n     *\n     * @return boolean\n     */\n    public function isPluginEnabled($pluginName)\n    {\n        $pluginsService = \\Zend_Registry::get('container')->get('newscoop.plugins.service');\n\n        if ($pluginsService->isEnabled($pluginName)) {\n            return true;\n        }\n\n        return false;\n    }\n\n    /**\n     * Check system preferences in smarty\n     *\n     * @param string $preferenceName Systempreferences machine name\n     * @param string $defaultValue   Default value if preference is null (not set)\n     *\n     * @return mixed\n     */\n    public function getSystemPreference($preferenceName, $default = null)\n    {\n        $preferencesService = \\Zend_Registry::get('container')->get('preferences');\n\n        return $preferencesService->get($preferenceName, $default);\n    }\n\n    /**\n    * Set preview mode for context.\n    *\n    * Setting preview mode allows rendering not published issues and articles.\n    */\n    public function setPreviewMode($status = true)\n    {\n        $this->m_readonlyProperties['preview'] = $status;\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/classes/CampGetImage.php",
    "content": "<?php\n\nrequire_once($GLOBALS['g_campsiteDir'].'/db_connect.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/classes/CampRequest.php');\n\n/**\n * Class CampGetImage\n */\nclass CampGetImage\n{\n    const RFC1123 = 'D, d M Y H:i:s T';\n\n    /**\n     * @var string $m_imageSource\n     *      Path to a local file.\n     */\n    private $m_imageSource = '';\n\n    /**\n     * @var string $m_imageTarget\n     *      Path to a local derivate file.\n     */\n    private $m_imageTarget = '';\n\n    /**\n     * @var string $m_isLocal\n     *      Flag if image is local ore remote.\n     */\n    private $m_isLocal = TRUE;\n\n    /**\n     * @var Image $m_image\n     *      Consists name, type and url of the image\n     */\n    private $m_image = null;\n\n    /**\n     * @var integer $m_ratio\n     *      resize ratio in percent\n     */\n    private $m_ratio = 100;\n\n    /**\n     * @var integer $m_resizeWidth\n     *      resize width in pixels\n     */\n    private $m_resizeWidth = 0;\n\n    /**\n     * @var integer $m_resizeHeight\n     *      resize height in pixels\n     */\n    private $m_resizeHeight = 0;\n\n    /**\n     * @var string\n     * \t\tcrop image from\n     * \t\ttop-left, top-right, bottom-left, bottom-right\n     * \t\tcenter-left, center-right, top-center, bottom-center\n     * \t\ttop(-center), bottom(-center), (center-)left, (center-)right\n     * \t\tcenter(-center)\n     */\n    private $m_crop = null;\n\n    /**\n     * @var string\n     * \t\tafter resizing\n     * \t\tcrop image from\n     * \t\ttop, center, bottom, left, right\n     */\n    private $m_resizeCrop = null;\n\n\t/**\n     * @param integer $m_ttl\n     *      ttl for cached files\n     */\n    private $m_ttl = 0;\n\n    private $m_basePath;\n\n    private $m_cache_dir = '/image_cache/';\n\n    private $m_derivates_dir = '/derivates/';\n\n    private $m_fetch_dir = '/fetched/';\n\n\n    /**\n     * Class constructor.\n     *\n     * @param integer $p_imageId\n     *      The image identifier\n     * @param integer $p_imageRatio\n     *      The ratio for image resize\n     * @param integer $p_imageWidth\n     *      The max width for image resize\n     * @param integer $p_imageHeight\n     *      The max height for image resize\n     */\n    public function __construct($p_imageId, $p_imageRatio=100, $p_imageWidth = 0, $p_imageHeight = 0, $p_imageCrop = null, $p_resizeCrop = null)\n    {\n        $this->m_basePath = $GLOBALS['g_campsiteDir'].'/images/';\n        $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n        $maxImageWidth = $preferencesService->get('CroopedImageMaxWidth', 3000);\n        $maxImageHeight = $preferencesService->get('CroopedImageMaxHeight', 3000);\n        $this->m_ttl = $preferencesService->ImagecacheLifetime;\n\n        if (empty($p_imageId) || !is_numeric($p_imageId)) {\n            $this->ExitError('Invalid parameters');\n        }\n        if($p_imageRatio > 0 && $p_imageRatio < 100) {\n            $this->m_ratio = $p_imageRatio;\n        }\n        if ($p_imageWidth > 0) {\n            if ((int) $p_imageWidth > $maxImageWidth) {\n                 $p_imageWidth = $maxImageWidth;\n            }\n            $this->m_resizeWidth = $p_imageWidth;\n        }\n        if ($p_imageHeight > 0) {\n            if ((int) $p_imageHeight > $maxImageHeight) {\n                 $p_imageHeight = $maxImageHeight;\n            }\n            $this->m_resizeHeight = $p_imageHeight;\n        }\n        if (!is_null($p_imageCrop)) {\n            $availableCropOptions = array(\n\t\t\t\t'top-left', 'top-right', 'bottom-left', 'bottom-right',\n\t\t\t\t'center-left', 'center-right', 'top-center', 'bottom-center',\n\t\t\t\t'top', 'bottom', 'left', 'right', 'center', 'center-center'\n\t\t\t);\n\n\t\t\tif (in_array($p_imageCrop, $availableCropOptions)) {\n\t\t\t\tif ($p_imageCrop == 'top' || $p_imageCrop == 'bottom') {\n\t\t\t\t\t$p_imageCrop = $p_imageCrop.'-center';\n\t\t\t\t}\n\t\t\t\tif ($p_imageCrop == 'left' || $p_imageCrop == 'right') {\n\t\t\t\t\t$p_imageCrop = 'center-'.$p_imageCrop;\n\t\t\t\t}\n\t\t\t\tif ($p_imageCrop == 'center') {\n\t\t\t\t\t$p_imageCrop = 'center-center';\n\t\t\t\t}\n\t\t\t\t$this->m_crop = $p_imageCrop;\n\t\t\t}\n        }\n        if (!is_null($p_resizeCrop)) {\n            $availableCropOptions = array(\n\t\t\t\t'top', 'bottom', 'left', 'right', 'center'\n\t\t\t);\n\n\t\t\tif (in_array($p_resizeCrop, $availableCropOptions)) {\n\t\t\t\t$this->m_resizeCrop = $p_resizeCrop;\n\t\t\t}\n        }\n        $this->GetImage($p_imageId);\n    }   // fn __construct\n\n\n    /**\n     * Sets path to the local image file.\n     *\n     * @param string $p_path\n     */\n    public function setSourcePath()\n    {\n        $fetched = !$this->m_isLocal ? $this->m_cache_dir.$this->m_fetch_dir : null;\n        if ($this->CheckLocalFile($this->m_basePath.$fetched.$this->getLocalFileName())) {\n            $this->m_isLocal = true;\n            $this->m_imageSource = $this->m_basePath.$fetched.$this->getLocalFileName();\n\n        } elseif ($this->CheckRemoteFile($this->m_image->getUrl())) {\n            $this->m_isLocal = false;\n            $this->m_imageSource = $this->m_image->getUrl();\n\n        } else {\n            return false;\n        }\n        return true;\n    }   // fn setSourcePath\n\n\n    /**\n     * Returns path to the local image file.\n     *\n     */\n    public function getSourcePath()\n    {\n        return $this->m_imageSource;\n    }   // fn getSourcePath\n\n    /**\n     * Returns path to the local image derivate file.\n     *\n     */\n    public function getTargetPath()\n    {\n        $fetched = !$this->m_isLocal ? $this->m_fetch_dir : null;\n        $derivates = null;\n        if ($this->m_ratio > 0 && $this->m_ratio < 100) {\n            $derivates = $this->m_derivates_dir.$this->m_ratio.'/';\n        } elseif ($this->m_resizeCrop == null && $this->m_crop == null && ($this->m_resizeWidth > 0 || $this->m_resizeHeight > 0)) {\n        \t$derivates = $this->m_derivates_dir.$this->m_resizeWidth.'x'.$this->m_resizeHeight.'/';\n        } elseif ($this->m_resizeCrop != null) {\n            $derivates = $this->m_derivates_dir.$this->m_resizeWidth.'x'.$this->m_resizeHeight.'_crop_'.$this->m_resizeCrop.'/';\n        } elseif ($this->m_crop != null) {\n            $derivates = $this->m_derivates_dir.$this->m_resizeWidth.'x'.$this->m_resizeHeight.'_forcecrop_'.$this->m_crop.'/';\n        }\n\n        $path = $this->m_basePath.$this->m_cache_dir.$fetched.$derivates.$this->getLocalFileName();\n        return $path;\n    }   // fn getTargetPath\n\n\n    /**\n     * Writes the given error message and exit.\n     *\n     * @param string $p_errorMessage\n     */\n    public function ExitError($p_errorMessage)\n    {\n        header('Content-type: text/html; charset=utf-8');\n        die($p_errorMessage);\n    }  // fn ExitError\n\n\n    /**\n     * Checkes if local file exists\n     *\n     * @param string $p_imagePath\n     */\n    private function CheckLocalFile($p_imagePath)\n    {\n        return is_readable($p_imagePath);\n    }  // fn CheckLocalFile\n\n\n    /**\n     * Checkes if remote file exists\n     *\n     * @param string $p_imageUrl\n     */\n    private function CheckRemoteFile($p_imageUrl)\n    {\n        $status = array();\n        $status = get_headers($p_imageUrl);\n        return (strpos($status[0],'404'))?0:1;\n    }  // fn CheckRemoteFile\n\n\n    /**\n     * Reads image from a local or remote file.\n     * Creates image string\n     *\n     * @param string $p_ending\n     */\n    private function ReadImage($p_ending)\n    {\n        $func = 'imagecreatefrom'.$p_ending;\n        return $func($this->getSourcePath());\n    }  // fn ReadImage\n\n\n    /**\n     * Create an proper file ending for given ContenType\n     *\n     * @return string\n     */\n    private function GetEnding()\n    {\n        switch($this->m_image->getContentType()){\n            case 'image/gif': $func_ending ='gif'; break;\n            case 'image/jpeg': $func_ending ='jpeg'; break;\n            case 'image/png': $func_ending ='png'; break;\n            default: $func_ending ='jpeg'; break;\n        }\n        return $func_ending;\n    }\n\n    private function GetHeaders()\n    {\n        $headers = array();\n\n        if (function_exists('apache_request_headers')) {\n            $headers = apache_request_headers();\n        }\n        else {\n            foreach($_SERVER as $key => $value) {\n                if (strtolower(substr($key, 0, 5)) == 'http_') {\n                    $key = str_replace(' ', '-' , ucwords(strtolower(str_replace('_', ' ', substr($key,5)))));\n                    $headers[$key] = $value;\n                } else {\n                    $headers[$key] = $value;\n                }\n            }\n        }\n        return $headers;\n    }\n\n    /**\n     * Sends headers and output image\n     * Send image to resize if need\n     *\n     */\n    private function PushImage()\n    {\n        header('Expires: ' . gmdate(self::RFC1123, time() + $this->m_ttl));\n        header('Cache-Control: public, max-age=' . $this->m_ttl);\n        header('Pragma: cache');\n\n        if ($this->m_isLocal && $this->m_ratio == 100 && $this->m_resizeWidth == 0 && $this->m_resizeHeight == 0 && $this->m_crop == null && $this->m_resizeCrop == null) {\n            // do not cache local 100% images\n\n            // Getting headers sent by the client.\n            $headers = $this->GetHeaders();\n            $fmt = filemtime($this->getSourcePath());\n\n            // Checking if the client is validating his cache and if it is current.\n            if (isset($headers['If-Modified-Since']) && (strtotime($headers['If-Modified-Since']) == $fmt)) {\n                // Client's cache IS current, so we just respond '304 Not Modified'.\n                header('Last-Modified: '.gmdate(self::RFC1123, $fmt), true, 304);\n            }\n            else {\n                // Image not cached or cache outdated, we respond '200 OK' and output the image.\n                header('Last-Modified: '.gmdate(self::RFC1123, $fmt), true, 200);\n                header('Content-Length: '.filesize($this->getSourcePath()));\n                header('Content-Type: '.$this->m_image->getContentType());\n\n                return readfile($this->getSourcePath());\n            }\n\n        }\n        else {\n            $this->imageCacheHandler();\n        }\n\n    }  // fn PushImage\n\n\t/**\n     * crops image\n     *\n     *\n     */\n    private function CropImage()\n    {\n        //list($current_width, $current_height) = getimagesize($filename);\n        list($current_width, $current_height) = getimagesize($this->m_imageSource);\n\n        // Resulting size of the image after cropping\n        $width = $this->m_resizeWidth;\n        $height = $this->m_resizeHeight;\n\n        if (!$width) {\n            $width = $current_width;\n        }\n        if (!$height) {\n            $height = $current_height;\n        }\n\n        // Cropping coordinates\n        $cropPosition = explode('-', $this->m_crop);\n        if ($cropPosition[0] == 'top') {\n            $top = 0;\n        }\n        if ($cropPosition[0] == 'center') {\n            $top = ($current_height - $height) / 2;\n        }\n        if ($cropPosition[0] == 'bottom') {\n            $top = ($current_height - $height);\n        }\n        if ($cropPosition[1] == 'left') {\n            $left = 0;\n        }\n        if ($cropPosition[1] == 'center') {\n            $left = ($current_width - $width) / 2;\n        }\n        if ($cropPosition[1] == 'right') {\n            $left = ($current_width - $width);\n        }\n\n        // Resample the image\n        $canvas = @imagecreatetruecolor($width, $height);\n        $current_image = @imagecreatefromjpeg($this->getSourcePath());\n        @imagecopy($canvas, $current_image, 0, 0, $left, $top, $current_width, $current_height);\n        return($canvas);\n    }\n\n    /**\n     * crops resized image to fit size\n     *\n     * @param resource $p_im\n     */\n    private function CropResizedImage($p_im)\n    {\n        $current_width = imagesx($p_im);\n        $current_height = imagesy($p_im);\n\n        // Resulting size of the image after cropping\n        $width = $this->m_resizeWidth;\n        $height = $this->m_resizeHeight;\n\n        if ($current_width == $width && $current_height == $height) {\n\t\t\t// no cropping necessary\n\t\t\treturn($p_im);\n\t\t}\n\n        // hcrop\n        if ($width < $current_width) {\n\t\t\t// translate vertical and horizontal values to each other for convenience\n\t\t\tif ($this->m_resizeCrop == 'top') $this->m_resizeCrop = 'left';\n\t\t\tif ($this->m_resizeCrop == 'bottom') $this->m_resizeCrop = 'right';\n\n\t\t\tif ($this->m_resizeCrop == 'left') {\n\t\t\t\t$top = 0;\n\t\t\t\t$left = 0;\n\t\t\t}\n\t\t\tif ($this->m_resizeCrop == 'center') {\n\t\t\t\t$top = 0;\n\t\t\t\t$left = ($current_width - $width) / 2;\n\t\t\t}\n\t\t\tif ($this->m_resizeCrop == 'right') {\n\t\t\t\t$top = 0;\n\t\t\t\t$left = ($current_width - $width);\n\t\t\t}\n\t\t}\n\t\t// vcrop\n\t\tif ($height < $current_height) {\n\t\t\t// translate vertical and horizontal values to each other for convenience\n\t\t\tif ($this->m_resizeCrop == 'left') $this->m_resizeCrop = 'top';\n\t\t\tif ($this->m_resizeCrop == 'right') $this->m_resizeCrop = 'bottom';\n\n\t\t\tif ($this->m_resizeCrop == 'top') {\n\t\t\t\t$top = 0;\n\t\t\t\t$left = 0;\n\t\t\t}\n\t\t\tif ($this->m_resizeCrop == 'center') {\n\t\t\t\t$top = ($current_height - $height) / 2;\n\t\t\t\t$left = 0;\n\t\t\t}\n\t\t\tif ($this->m_resizeCrop == 'bottom') {\n\t\t\t\t$top = ($current_height - $height);\n\t\t\t\t$left = 0;\n\t\t\t}\n\t\t}\n\n        // Resample the image\n        $canvas = @imagecreatetruecolor($width, $height);\n        @imagecopy($canvas, $p_im, 0, 0, $left, $top, $current_width, $current_height);\n        return($canvas);\n    }\n\n    /**\n     * resizes image\n     *\n     * @param resource $p_im\n     */\n    private function ResizeImage($p_im)\n    {\n        $w_src = imagesx($p_im);\n        $h_src = imagesy($p_im);\n\t\tif ($this->m_ratio > 0 && $this->m_ratio < 100) {\n\t\t\t$ratio = $this->m_ratio / 100;\n\t\t\t$w_dest = @round($w_src * $ratio);\n\t\t\t$h_dest = @round($h_src * $ratio);\n\t\t} else {\n\t\t\t// if both width and height are set, get the smaller resulting\n\t\t\t// image dimension\n\t\t\t// but if m_resizeCrop is set, then get the bigger resulting one\n\t\t\t// because we will crop the excess\n\t\t\tif ($this->m_resizeWidth > 0 && $this->m_resizeHeight > 0) {\n\t\t\t\t$h_dest = (100 / ($w_src / $this->m_resizeWidth)) * 0.01;\n\t\t\t\t$h_dest = @round($h_src * $h_dest);\n\n\t\t\t\tif ($this->m_resizeCrop == null) {\n\t\t\t\t\tif ($h_dest < $this->m_resizeHeight) {\n\t\t\t\t\t\t$w_dest = $this->m_resizeWidth;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$w_dest = (100 / ($h_src / $this->m_resizeHeight)) * 0.01;\n\t\t\t\t\t\t$w_dest = @round($w_src * $w_dest);\n\t\t\t\t\t\t$h_dest = $this->m_resizeHeight;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tif ($h_dest > $this->m_resizeHeight) {\n\t\t\t\t\t\t$w_dest = $this->m_resizeWidth;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$w_dest = (100 / ($h_src / $this->m_resizeHeight)) * 0.01;\n\t\t\t\t\t\t$w_dest = @round($w_src * $w_dest);\n\t\t\t\t\t\t$h_dest = $this->m_resizeHeight;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} elseif ($this->m_resizeWidth > 0 && $this->m_resizeHeight == 0) {\n\t\t\t\t// autocompute height\n\t\t\t\t$h_dest = (100 / ($w_src / $this->m_resizeWidth)) * 0.01;\n\t\t\t\t$h_dest = @round($h_src * $h_dest);\n\t\t\t\t$w_dest = $this->m_resizeWidth;\n\t\t\t} elseif ($this->m_resizeHeight > 0 && $this->m_resizeWidth == 0) {\n\t\t\t\t// autocompute width\n\t\t\t\t$w_dest = (100 / ($h_src / $this->m_resizeHeight)) * 0.01;\n\t\t\t\t$w_dest = @round($w_src * $w_dest);\n\t\t\t\t$h_dest = $this->m_resizeHeight;\n\t\t\t}\n\t\t}\n\t\t$dest = @imagecreatetruecolor($w_dest, $h_dest);\n\t\t$imageType = $this->m_image->getContentType();\n\n\t\t// fix transparent backgrounds for png/gif\n\t\tif (in_array($imageType, array('image/gif', 'image/png'))) {\n            imagesavealpha($dest, TRUE);\n            $color = imagecolorallocatealpha($dest, 0, 0, 0, 127);\n\n            imagealphablending($dest, FALSE);\n            imagefilledrectangle($dest, 0, 0, $w_dest - 1, $h_dest - 1, $color);\n            imagealphablending($dest, TRUE);\n            imagecolortransparent($dest, $color);\n        }\n\n        @imagecopyresampled($dest, $p_im, 0, 0, 0, 0, $w_dest, $h_dest, $w_src, $h_src);\n        return $dest;\n    }  // fn ResizeImage\n\n\n    /**\n     * Return an local filename.\n     * For the url's, use md5 hash for it.\n     *\n     * @return string filename\n     */\n    private function getLocalFileName()\n    {\n        if ($this->m_image->getUrl() == '') {\n            return $this->m_image->getImageFileName();\n        } else {\n            return md5($this->m_image->getUrl()).'.'.$this->getEnding();\n        }\n    }\n\n\n    /**\n     * Receives image name, type and url if any from DB.\n     *\n     * @param string $p_imageId\n     */\n    private function GetImage($p_imageId)\n    {\n        $this->m_image = new Image($p_imageId);\n        if (!$this->m_image->exists()) {\n            $this->ExitError('Image not found');\n        }\n        if (!$this->setSourcePath()) {\n            $this->ExitError('File \"'.$this->m_image->getImageStorageLocation().$this->m_image->getUrl().'\" not found');\n        }\n\n        $this->m_image->fixMissingThumbnail();\n        $this->PushImage();\n    } // fn GetImage\n\n\n    /**\n     * Create the cached version of an image.\n     * If failed, send the original or dynamically created derivate to the browser.\n     *\n     * @return unknown\n     */\n    private function imageCacheHandler()\n    {\n        if ($this->m_ttl == 0) {\n            // cache disabled\n            return $this->createImage();\n        }\n\n        if (is_readable($this->getTargetPath())) {\n            if ($this->cacheHasExpired()) {\n                // remove cached version\n                $this->removeCachedImage();\n            } else {\n                // use the cached image\n                return $this->sendCachedImage();\n            }\n        }\n\n        $targetpath = $this->getTargetPath();\n\n        $cachedir  = dirname($targetpath);\n        $cachefile = basename($targetpath);\n\n        if (!is_dir($cachedir) || !is_writable($cachedir)) {\n            // try to create the folder and cache file\n            if (!self::MkDirRecursive($cachedir)) {\n                // cache folder not creatable/writable\n                return $this->createImage();\n            }\n        }\n\n        if (!$this->createImage($this->getTargetPath())) {\n            // fallback without caching\n            return $this->createImage();\n        }\n    }\n\n    private function sendCachedImage()\n    {\n        // Getting headers sent by the client.\n        $headers = $this->GetHeaders();\n        $fmt = filemtime($this->getTargetPath());\n\n        // Checking if the client is validating his cache and if it is current.\n        if (isset($headers['If-Modified-Since']) && (strtotime($headers['If-Modified-Since']) == $fmt)) {\n            // Client's cache IS current, so we just respond '304 Not Modified'.\n            header('Last-Modified: '.gmdate(self::RFC1123, $fmt), true, 304);\n        }\n        else {\n            // Image not cached or cache outdated, we respond '200 OK' and output the image.\n            header('Last-Modified: '.gmdate(self::RFC1123, $fmt), true, 200);\n            header('Content-Length: '.filesize($this->getTargetPath()));\n            header('Content-Type: '.$this->m_image->getContentType());\n\n            return readfile($this->getTargetPath()) !== false;\n        }\n    }\n\n    private function createImage($p_target=null)\n    {\n        $func_ending = $this->GetEnding();\n        $t = $this->ReadImage($func_ending);\n        $quality = 90;\n\n        if ($this->m_crop == null) {\n            $t = $this->ResizeImage($t);\n            if ($this->m_resizeCrop != null) {\n                $t = $this->CropResizedImage($t);\n            }\n        }\n        else {\n            $t = $this->CropImage($t);\n        }\n\n        $function = 'image'.$func_ending;\n        if ($func_ending == 'png') {\n            $quality = 9;\n        }\n\n        if (!$p_target) {\n            header('Content-type: ' . $this->m_image->getContentType());\n            header('Last-Modified: ' . gmdate(self::RFC1123));\n\n            header('Newscoop-Image-Cache: disabled');\n            return $function($t);\n        }\n        else {\n            $function($t, $p_target, $quality);\n            imagedestroy($t);\n            return $this->sendCachedImage();\n        }\n    }\n\n    private function cacheHasExpired()\n    {\n        if ($this->m_ttl == -1) {\n            // infinite cache\n            return false;\n        }\n\n        $mtime = filemtime($this->getTargetPath());\n\n        if (time() > $mtime + $this->m_ttl) {\n            return true;\n        }\n        return false;\n    }\n\n    private function removeCachedImage()\n    {\n        unlink($this->getTargetPath());\n    }\n\n\n    /**\n     *  Create an directory tree.\n     *\n     * @param string $p_dir\n     * @return boolean\n     */\n    static private function MkdirRecursive($p_dir) {\n    \t$subdir = '';\n        foreach (explode('/', $p_dir) as $piece) {\n            $subdir .= '/'.$piece;\n            @mkdir($subdir);\n        }\n        if (is_dir($p_dir) && is_writable($p_dir)) {\n            return true;\n        }\n        return false;\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/classes/CampHTMLDocument.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Holman Romero <holman.romero@gmail.com>\n * @copyright 2007 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\n\n/**\n * Class CampHTMLDocument\n */\nfinal class CampHTMLDocument\n{\n    /**\n     * @var string\n     */\n    private $m_type = 'html';\n\n    /**\n     * @var string\n     */\n    private $m_title = null;\n\n    /**\n     * @var string\n     */\n    private $m_generator = 'Campsite 3.0';\n\n    /**\n     * @var string\n     */\n    private $m_mime = 'text/html';\n\n    /**\n     * @var string\n     */\n    private $m_charset = 'utf-8';\n\n    /**\n     * @var string\n     */\n    private $m_language = 'en';\n\n    /**\n     * @var array\n     */\n    private $m_metaTags = array();\n\n    /**\n     * @var\n     */\n    private $m_output = null;\n\n    /**\n     * Holds instance of the class.\n     *\n     * @var object\n     */\n    private static $m_instance = null;\n\n    /**\n     * @var object\n     */\n    private $m_config = null;\n\n    /**\n     * Class constructor\n     *\n     * @param array $p_attributes\n     */\n    private function __construct($p_attributes = array())\n    {\n        $this->m_config = CampConfig::singleton();\n\n        if (isset($p_attributes['type'])) {\n            $this->m_type = $p_attributes['type'];\n        } else {\n            $this->m_type = 'html';\n        }\n\n        if (isset($p_attributes['charset'])) {\n            $this->m_charset = $p_attributes['charset'];\n        } else {\n            $this->m_charset = 'utf-8';\n        }\n\n        if (isset($p_attributes['language'])) {\n            $this->m_language = $p_attributes['language'];\n        }\n\n        //set default document metadata\n        $this->setMetaTag('Content-Type',\n                           $this->m_mime.'; charset='.$this->m_charset, true);\n        $this->setMetaTag('robots', 'index, follow');\n    } // fn __construct\n\n    /**\n     * Builds an instance object of this class only if there is no one.\n     *\n     * @param array $p_attributes\n     *\n     * @return object\n     */\n    public static function singleton($p_attributes = array())\n    {\n        if (!isset(self::$m_instance)) {\n            self::$m_instance = new CampHTMLDocument($p_attributes);\n        }\n\n        return self::$m_instance;\n    } // fn singleton\n\n    /**\n     * Returns the type of document.\n     *\n     * @return string\n     */\n    public function getType()\n    {\n        return $this->m_type;\n    } // fn getType\n\n    /**\n     * Returns the title of the document.\n     *\n     * @return string\n     */\n    public function getTitle()\n    {\n        return $this->m_title;\n    } // fn getTitle\n\n    /**\n     * Returns the page generator.\n     *\n     * @return string\n     */\n    public function getGenerator()\n    {\n        return $this->m_generator;\n    } // fn getGenerator\n\n    /**\n     * Sets the document title.\n     *\n     * @param string $p_title\n     *\n     * @return void\n     */\n    public function setTitle($p_title = null)\n    {\n        $config = CampSite::GetConfigInstance();\n\n        if ($config->getSetting('site.online') == 'N') {\n            $p_title .= ' [ Offline ]';\n        }\n\n        $this->m_title = $p_title;\n    } // fn setTitle\n\n    /**\n     * Returns the MIME type.\n     *\n     * @return string\n     */\n    public function getMimeType()\n    {\n        return $this->m_mime;\n    } // fn getMimeType\n\n    /**\n     * Sets the MIME type for the document.\n     *\n     * @param string $p_mime\n     *\n     * @return void\n     */\n    public function setMimeType($p_mime = 'text/html')\n    {\n        $this->m_mime = $p_mime;\n    } // fn setMimeType\n\n    /**\n     * Returns the charset.\n     *\n     * @return string\n     */\n    public function getCharset()\n    {\n        return $this->m_charset;\n    } // fn getCharset\n\n    /**\n     * Sets the charset.\n     *\n     * @param string $p_charset\n     *\n     * @return void\n     */\n    public function setCharset($p_charset = 'utf-8')\n    {\n        $this->m_charset = $p_charset;\n    } // fn setCharset\n\n    /**\n     * Returns the requested META tag.\n     *\n     * @param string  $p_name\n     *                             The name of the META tag to be retrieved\n     * @param boolean $p_httpEquiv\n     *                             Whether it is a http-equiv META tag or not\n     *\n     * @return string $tag\n     */\n    public function getMetaTag($p_name, $p_httpEquiv = false)\n    {\n        $tag = '';\n        if ($p_httpEquiv == true) {\n            $tag = isset($this->m_metaTags['http-equiv'][$p_name])\n                ? $this->m_metaTags['http-equiv'][$p_name] : null;\n        } else {\n            $tag = isset($this->m_metaTags['name'][$p_name])\n                ? $this->m_metaTags['name'][$p_name] : null;\n        }\n\n        return $tag;\n    } // fn getMetaTag\n\n    /**\n     * Sets the given META tag.\n     *\n     * @param string  $p_name\n     *                             The name of the META tag to be retrieved\n     * @param mixed   $p_value\n     *                             The value for the META tag\n     * @param boolean $p_httpEquiv\n     *                             Whether it is a http-equiv META tag or not\n     *\n     * @return void\n     */\n    public function setMetaTag($p_name, $p_value, $p_httpEquiv = false)\n    {\n        if ($p_httpEquiv == true) {\n            $this->m_metaTags['http-equiv'][$p_name] = $p_value;\n        } else {\n            $this->m_metaTags['name'][$p_name] = $p_value;\n        }\n    } // fn setMetaTag\n\n    /**\n     * Renders the document.\n     *\n     * Displays the document after parsing it.\n     *\n     * @param array $p_params\n     *\n     * @return void\n     */\n    public function render($p_params)\n    {\n        $siteinfo = array();\n        $context = $p_params['context'];\n        $template = $p_params['template'];\n\n        $siteinfo['info_message'] = isset($p_params['info_message']) ? $p_params['info_message'] : null;\n        $siteinfo['error_message'] = isset($p_params['error_message']) ? $p_params['error_message'] : null;\n        $siteinfo['templates_path'] = isset($p_params['templates_dir'])\n                            ? $p_params['templates_dir'] : CS_TEMPLATES_DIR;\n        $siteinfo['title'] = $this->getTitle();\n        $siteinfo['content_type'] = $this->getMetaTag('Content-Type', true);\n        $siteinfo['generator'] = $this->getGenerator();\n        $siteinfo['keywords'] = $this->getMetaTag('keywords');\n        $siteinfo['description'] = $this->getMetaTag('description');\n        $tpl = CampTemplate::singleton();\n        $tpl->template_dir = array_unique($tpl->template_dir);\n        if (!$template) {\n            $siteinfo['error_message'] = \"No template set for display.\";\n        } elseif (!$this->templateExists($template, $tpl)) {\n            $siteinfo['error_message'] = \"The template '$template' does not exist in the templates directory.\";\n        }\n\n        if (!is_null($siteinfo['error_message'])) {\n            $siteinfo['templates_path'] = CS_TEMPLATES_DIR . DIR_SEP . CS_SYS_TEMPLATES_DIR;\n            $template = '_campsite_error.tpl';\n        }\n\n        $tpl->assign('gimme', $context);\n        $tpl->assign('siteinfo', $siteinfo);\n\n        // on template caching add additional info\n        if ($tpl->templateCacheHandler) {\n            $themesService = \\Zend_Registry::get('container')->getService('newscoop_newscoop.themes_service');\n            $uri = CampSite::GetURIInstance();\n            $smarty = CampTemplate::singleton();\n            $tpl->campsiteVector = array_merge(\n                $uri->getCampsiteVector(),\n                $smarty->campsiteVector\n            );\n\n            $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n            $cacheKey = $cacheService->getCacheKey(array('template', $themesService->getThemePath(), ltrim($template, '/')), 'template');\n            if ($cacheService->contains($cacheKey)) {\n                $tpl->cache_lifetime = $cacheService->fetch($cacheKey);\n            } else {\n                $templateObj = new Template($themesService->getThemePath() . ltrim($template, '/'));\n                $tpl->cache_lifetime = (int) $templateObj->getCacheLifetime();\n                $cacheService->save($cacheKey, $tpl->cache_lifetime);\n            }\n        }\n\n        if (strpos($template, 'rss.tpl') !== false) {\n            $this->setMimeType('application/rss+xml');\n        }\n        if (strpos($template, 'atom.tpl') !== false) {\n            $this->setMimeType('application/atom+xml');\n        }\n\n        try {\n            $tpl->display($template);\n        } catch (\\Exception $e) {\n            // log samrty errors to sentry channel\n            $logger = \\Zend_Registry::get('container')->get('monolog.logger.sentry');\n            $logger->log(\\Psr\\Log\\LogLevel::CRITICAL, 'Uncaught exception', array(\n                'message' => $e->getMessage(),\n                'stackTrace' => $e->getTraceAsString(),\n                'string' => $e->__toString(),\n                'exception' => $e\n            ));\n\n            CampTemplate::singleton()->trigger_error($e->getMessage(), $tpl);\n        }\n    } // fn render\n\n    /**\n     * Test if template exists\n     *\n     * @param  string $template\n     * @param  Smarty $smarty\n     * @return bool\n     */\n    private function templateExists($template, $smarty)\n    {\n        foreach ($smarty->template_dir as $dir) {\n            $filePath = \"$dir/\" . ltrim($template, '/');\n            if (file_exists($filePath)) {\n                return true;\n            }\n        }\n\n        return false;\n    }\n\n} // class CampHTMLDocument\n"
  },
  {
    "path": "newscoop/template_engine/classes/CampRequest.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Holman Romero <holman.romero@gmail.com>\n * @copyright 2007 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\n\n/**\n * Class CampRequest\n */\nfinal class CampRequest\n{\n    /**\n     * Language identifier parameter name\n     */\n    const LANGUAGE_ID = 'IdLanguage';\n\n    /**\n     * Publication identifier parameter name\n     */\n    const PUBLICATION_ID = 'IdPublication';\n\n    /**\n     * Issue number parameter name\n     */\n    const ISSUE_NR = 'NrIssue';\n\n    /**\n     * Section number parameter name\n     */\n    const SECTION_NR = 'NrSection';\n\n    /**\n     * Article number parameter name\n     */\n    const ARTICLE_NR = 'NrArticle';\n\n    /**\n     * Template identifier parameter name\n     */\n    const TEMPLATE_ID = 'tpl';\n\n    const REQUEST_METHOD_KEY = 'REQUEST_METHOD';\n    const REQUEST_METHOD_DEFAULT = 'GET';\n\n    /**\n     * Stores the input parameters\n     *\n     * @var array\n     */\n    private static $m_input = array();\n\n\n    /**\n     * Gets the current URL.\n     *\n     * @return string\n     *      The current URL\n     */\n    public static function GetURL()\n    {\n        $uri = CampSite::GetURIInstance();\n        return $uri->getURL();\n    } // fn getURI\n\n\n    /**\n     * Gets a var from the input.\n     * Allows to fetch the variable value requested from the\n     * appropiate input method.\n     *\n     * @param string $p_varName\n     *      The name of the variable to be fetched.\n     * @param mixed $p_defaultValue\n     *      The default value to be fetched for the given variable\n     * @param string $p_reqMethod\n     *      The requested input method, default is REQUEST\n     * @param string $p_dataType\n     *      TODO to be implemented\n     *\n     * @return mixed $var\n     *      The value of the requested variable\n     */\n    public static function GetVar($p_varName, $p_defaultValue = null,\n                                  $p_reqMethod = 'default', $p_dataType = null)\n    {\n        self::InitInput($p_reqMethod);\n\n        if (isset($GLOBALS['CampRequestInput'][$p_reqMethod][$p_varName])\n        && !is_null($GLOBALS['CampRequestInput'][$p_reqMethod][$p_varName])) {\n            $var = $GLOBALS['CampRequestInput'][$p_reqMethod][$p_varName];\n        } else {\n            $var = $p_defaultValue;\n        }\n\n        return $var;\n    } // fn GetVar\n\n\n    /**\n     * Sets the value to the given variable.\n     *\n     * @param string $p_varName\n     *      The name of the variable to be set\n     * @param mixed $p_varValue\n     *      The variable value to be assigned\n     * @param string $p_reqMethod\n     *      The input method\n     * @param boolean $p_overwrite\n     *      Whether overwrite the current value of the variable or not\n     *\n     * @returns void\n     */\n    public static function SetVar($p_varName, $p_varValue = null,\n                                  $p_reqMethod = 'default', $p_overwrite = true)\n    {\n        self::InitInput($p_reqMethod);\n        if (!$p_overwrite && isset($GLOBALS['CampRequestInput'][$p_reqMethod][$p_varName])) {\n            return $GLOBALS['CampRequestInput'][$p_reqMethod][$p_varName];\n        }\n\n        $GLOBALS['CampRequestInput'][$p_reqMethod][$p_varName] = $p_varValue;\n        if ($p_reqMethod == 'DEFAULT') {\n            self::InitInput($method = 'get');\n            self::InitInput($method = 'post');\n            if (!is_null($p_varValue)) {\n                $GLOBALS['CampRequestInput']['GET'][$p_varName] = $p_varValue;\n                $GLOBALS['CampRequestInput']['POST'][$p_varName] = $p_varValue;\n            } else {\n                unset($GLOBALS['CampRequestInput']['GET'][$p_varName]);\n                unset($GLOBALS['CampRequestInput']['POST'][$p_varName]);\n            }\n        } else {\n            self::InitInput($method = 'DEFAULT');\n            if (!is_null($p_varValue)) {\n                $GLOBALS['CampRequestInput']['DEFAULT'][$p_varName] = $p_varValue;\n            } else {\n                unset($GLOBALS['CampRequestInput']['DEFAULT'][$p_varName]);\n            }\n        }\n    } // fn SetVar\n\n\n    /**\n     * Returns the whole parameters array for the given input method.\n     *\n     * @param string $p_reqMethod\n     * @return array\n     */\n    public static function GetInput($p_reqMethod = 'default')\n    {\n        self::InitInput($p_reqMethod);\n        return $GLOBALS['CampRequestInput'][$p_reqMethod];\n    } // fn GetInput\n\n\n    /**\n     * Returns the method used to read the input data: GET, POST etc.\n     *\n     * @return string\n     */\n    public static function GetMethod()\n    {\n        return array_key_exists(self::REQUEST_METHOD_KEY, $_SERVER)\n            ? $_SERVER[self::REQUEST_METHOD_KEY]\n            : self::REQUEST_METHOD_DEFAULT;\n    }\n\n    /**\n     * Initializes the input parameters array\n     *\n     * @param string $p_reqMethod\n     */\n    private static function InitInput(&$p_reqMethod) {\n        self::TranslateMethod($p_reqMethod);\n        if (!isset($GLOBALS['CampRequestInput'][$p_reqMethod])) {\n        \tswitch($p_reqMethod) {\n        \t\tcase 'GET':\n        \t\t\t$input = &$_GET;\n        \t\t\tbreak;\n        \t\tcase 'POST':\n        \t\t\t$input = &$_POST;\n        \t\t\tbreak;\n        \t\tcase 'COOKIE':\n        \t\t\t$input = &$_COOKIE;\n        \t\t\tbreak;\n        \t\tcase 'FILES':\n        \t\t\t$input = &$_FILES;\n        \t\t\tbreak;\n        \t\tcase 'DEFAULT':\n        \t\t\t$input = array_merge($_COOKIE, $_REQUEST);\n        \t\t\tbreak;\n        \t\tdefault:\n        \t\t\treturn;\n        \t}\n        \trequire_once($GLOBALS['g_campsiteDir'].'/classes/Input.php');\n            $GLOBALS['CampRequestInput'][$p_reqMethod] = Input::CleanMagicQuotes($input);\n        }\n    }\n\n\n    /**\n     * Returns a valid input method name\n     *\n     * @param string &$p_reqMethod\n     * @return string\n     */\n    private static function TranslateMethod(&$p_reqMethod) {\n        $p_reqMethod = strtoupper($p_reqMethod);\n        if ($p_reqMethod == 'SERVER') {\n            $p_reqMethod = strtoupper($_SERVER['REQUEST_METHOD']);\n        }\n        if ($p_reqMethod != 'GET' && $p_reqMethod != 'POST'\n        && $p_reqMethod != 'FILES' && $p_reqMethod != 'COOKIE') {\n            $p_reqMethod = 'DEFAULT';\n        }\n        return $p_reqMethod;\n    }\n\n} // class CampRequest\n\n?>\n"
  },
  {
    "path": "newscoop/template_engine/classes/CampSession.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Holman Romero <holman.romero@gmail.com>\n * @copyright 2007 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\n\ndefine('ACTIVE', 1);\ndefine('EXPIRED', 2);\ndefine('DESTROYED', 3);\n\n/**\n * Class CampSession\n */\nfinal class CampSession\n{\n    /**\n     * Holds instance of the class\n     *\n     * @var object\n     */\n    private static $m_instance = null;\n\n    /**\n     * Status of the current session\n     *\n     * @var int\n     */\n    private $m_status = ACTIVE;\n\n    /**\n     * Session expiration time\n     *\n     * @var int\n     */\n    private $m_expirationTime = 30;\n\n\n    /**\n     * Class constructor\n     */\n    private function __construct()\n    {\n        $this->start();\n\n        $this->setStatus(ACTIVE);\n\n        $this->setTimer();\n        $this->setCounter();\n    } // fn __construct\n\n\n    /**\n     * Builds an instance object of this class only if there is no one.\n     *\n     * @return CampSession\n     */\n    public static function singleton()\n    {\n        if (!isset(self::$m_instance)) {\n            self::$m_instance = new CampSession();\n        }\n\n        return self::$m_instance;\n    } // fn singleton\n\n\n    /**\n     * Starts the session.\n     */\n    function start()\n    {\n        if (!\\Zend_Session::isStarted()) {\n            \\Zend_Session::start();\n        }\n        // session started already\n    } // fn start\n\n\n    /**\n     * Destroys the session.\n     */\n    function destroy()\n    {\n        if (isset($_COOKIE[session_name()])) {\n            setcookie(session_name(), '', time() - 50000, '/');\n        }\n\n        session_unset();\n        session_destroy();\n\n        return true;\n    } // fn destroy\n\n\n    /**\n     *\n     */\n    function unsetData($p_name, $p_namespace = 'default')\n    {\n        if ($this->dataExists($p_name, $p_namespace)) {\n            unset($_SESSION[$p_namespace][$p_name]);\n        }\n    } // fn unsetData\n\n\n    /**\n     *\n     */\n    function close()\n    {\n        session_write_close();\n    } // fn close\n\n\n    /**\n     *\n     */\n    function getStatus()\n    {\n        return $this->m_status;\n    } // fn getStatus\n\n\n    /**\n     *\n     */\n    function getExpirationTime()\n    {\n        return $this->m_expirationTime;\n    } // fn getExpirationTime\n\n\n    /**\n     *\n     */\n    function getId()\n    {\n        return session_id();\n    } // fn getId\n\n\n    /**\n     *\n     */\n    function getName()\n    {\n        return session_name();\n    } // fn getName\n\n\n    /**\n     *\n     */\n    function getData($p_name, $p_namespace = 'default')\n    {\n        return ($this->dataExists($p_name, $p_namespace)) ? $_SESSION[$p_namespace][$p_name] : null;\n    } // fn getData\n\n\n    /**\n     *\n     */\n    function getToken()\n    {\n        $token = $this->getData('session.token');\n        if ($token === null) {\n            $token = $this->generateToken();\n            $this->setData('session.token', $token);\n        }\n\n        return $token;\n    } // fn getToken\n\n\n    /**\n     *\n     */\n    function validateToken($p_token)\n    {\n        if ($p_token !== $this->getToken()) {\n            $this->setStatus(EXPIRED);\n        }\n\n        return true;\n    } // fn validateToken\n\n\n    /**\n     *\n     */\n    function dataExists($p_name, $p_namespace = 'default')\n    {\n        return isset($_SESSION[$p_namespace]) && isset($_SESSION[$p_namespace][$p_name]);\n    } // fn dataExists\n\n\n    /**\n     *\n     */\n    function setStatus($p_status)\n    {\n        $this->m_status = $p_status;\n    } // fn setStatus\n\n\n    /**\n     *\n     */\n    function setData($p_name, $p_value, $p_namespace = 'default', $p_force = false)\n    {\n        if (!$this->dataExists($p_name, $p_namespace) || $p_force == true) {\n            if (!empty($p_value)) {\n                $_SESSION[$p_namespace][$p_name] = $p_value;\n            } else {\n                unset($_SESSION[$p_namespace][$p_name]);\n            }\n        }\n    } // fn setData\n\n\n    /**\n     *\n     */\n    function setCounter()\n    {\n        $cnt = $this->getData('session.counter');\n        $this->setData('session.counter', ++$cnt);\n    } // fn setCounter\n\n\n    /**\n     *\n     */\n    function setTimer()\n    {\n        if (!$this->dataExists('session.timer.start')) {\n            $now = time();\n            $this->setData('session.timer.start', $now);\n            $this->setData('session.timer.current', $now);\n            $this->setData('session.timer.finish', $now);\n        }\n\n        $this->setData('session.timer.finish', $this->getData('session.timer.current'));\n        $this->setData('session.timer.current', time());\n    } // fn setTimer\n\n\n    /**\n     *\n     */\n    function generateToken()\n    {\n        $length = 32;\n        $values = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';\n        $token = '';\n        for ($i = 0; $i < $length; $i++) {\n            $token .= substr($values, rand(0, (strlen($values) - 1)), 1);\n        }\n\n        return $token;\n    } // fn generateToken\n\n} // class CampSession\n\n?>\n"
  },
  {
    "path": "newscoop/template_engine/classes/CampSite.php",
    "content": "<?php\n\n/**\n * @package Campsite\n *\n * @author Holman Romero <holman.romero@gmail.com>\n * @author Mugur Rus <mugur.rus@gmail.com>\n * @copyright 2007 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\n\n/**\n * Class CampSite\n */\nfinal class CampSite extends CampSystem\n{\n\n    /**\n     * Class constructor\n     */\n    final public function __construct()\n    {\n\n    }// fn __construct\n\n    /**\n     * Initialises the context.\n     *\n     * After load the session, the application parse the current URI\n     * and starts the context from the request parameters.\n     *\n     * @return void\n     */\n    public function init()\n    {\n        // returns when site is not in online mode\n        if ($this->getSetting('site.online') == 'N') {\n            return;\n        }\n\n        // gets the context\n        CampTemplate::singleton()->refreshContext();\n    }// fn initContext\n\n    /**\n     * Initialises the session.\n     */\n    public function initSession()\n    {\n        $session = CampSession::singleton();\n    }// fn initSession\n\n    /**\n     * Loads the configuration options.\n     *\n     * @param string $p_configFile\n     *                             The path to the config file\n     */\n    public function loadConfiguration($p_configFile = null)\n    {\n        if (empty($p_configFile)) {\n            $p_configFile = $GLOBALS['g_campsiteDir'] . '/conf/configuration.php';\n        }\n        CampConfig::singleton($p_configFile);\n    }// fn loadConfiguration\n\n    /**\n     * Dispatches the site.\n     *\n     * Sets attribute values from site configuration to the document\n     * to be displayed.\n     *\n     * @return void\n     */\n    public function dispatch()\n    {\n        $document = self::GetHTMLDocumentInstance();\n        $config = self::GetConfigInstance();\n\n        $document->setMetaTag('description',\n                $config->getSetting('site.description'));\n        $document->setMetaTag('keywords', $config->getSetting('site.keywords'));\n        $document->setTitle($config->getSetting('site.title'));\n    }// fn dispatch\n\n    /**\n     * Displays the site.\n     *\n     * @return void\n     */\n    public function render()\n    {\n        global $g_errorList;\n\n        $themesService = \\Zend_Registry::get('container')->getService('newscoop_newscoop.themes_service');\n        $errors = array();\n        if (array_key_exists('controller', $GLOBALS)) {\n            $errors = $GLOBALS['controller']->getRequest()->getParam('errors', null);\n        }\n\n        $uri = self::GetURIInstance();\n        $document = self::GetHTMLDocumentInstance();\n\n        $context = CampTemplate::singleton()->context();\n        // sets the appropiate template if site is not in mode online\n        if ($this->getSetting('site.online') == 'N') {\n            $templates_dir = CS_TEMPLATES_DIR . DIR_SEP . CS_SYS_TEMPLATES_DIR;\n            $template = '_campsite_offline.tpl';\n        } elseif (!$uri->publication->defined) {\n            $templates_dir = CS_TEMPLATES_DIR . DIR_SEP . CS_SYS_TEMPLATES_DIR;\n            $template = '_campsite_error.tpl';\n            $error_message = 'The site alias \\'' . $_SERVER['HTTP_HOST']\n                    . '\\' was not assigned to a publication. Please create a publication and '\n                    . ' assign it the current site alias.';\n        } elseif (is_array($g_errorList) && !empty($g_errorList)) {\n            $templates_dir = CS_TEMPLATES_DIR . DIR_SEP . CS_SYS_TEMPLATES_DIR;\n            $template = '_campsite_error.tpl';\n            $error_message = 'At initialization: ' . $g_errorList[0]->getMessage();\n        } elseif (!empty($errors)) {\n            $templates_dir = CS_TEMPLATES_DIR . DIR_SEP . CS_SYS_TEMPLATES_DIR;\n            $template = '_campsite_error.tpl';\n            if (defined('APPLICATION_ENV') && APPLICATION_ENV == 'development') {\n                $error_message = $errors->exception;\n            } else {\n                $error_message = 'Error occurred.';\n            }\n        } else {\n            $template = $uri->getTemplate(CampRequest::GetVar(CampRequest::TEMPLATE_ID));\n            switch ($template) {\n                case null:\n                    $error_message = \"Unable to select a template! \"\n                    . \"Please make sure the following conditions are met:\\n\"\n                    . \"<li>there is at least one issue published and it had assigned \"\n                    . \"valid templates for the front, section and article pages;</li>\\n\"\n                    . \"<li>a template was assigned for the URL error handling in \"\n                    . \"the publication configuration screen.\";\n                    $templates_dir = CS_TEMPLATES_DIR . DIR_SEP . CS_SYS_TEMPLATES_DIR;\n                    $template = '_campsite_error.tpl';\n                    break;\n                default:\n                    $themePath = $themesService->getThemePath(CampRequest::GetVar('language', null));\n                    $templates_dir = CS_TEMPLATES_DIR . DIR_SEP . $themePath;\n            }\n        }\n\n        $params = array(\n            'context' => $context,\n            'template' => $template,\n            'templates_dir' => $templates_dir,\n            'error_message' => isset($error_message) ? $error_message : null\n        );\n        $document->render($params);\n\n        if (array_key_exists('controller', $GLOBALS)) {\n            $GLOBALS['controller']->getResponse()->setHeader(\n                'Content-Type',\n                sprintf('%s; charset=%s', $document->getMimeType(), $document->getCharset())\n            );\n            $GLOBALS['header_content_type_set'] = true;\n        }\n    }// fn render\n\n    /**\n     * @param string $p_eventName\n     */\n    public function event($p_eventName)\n    {\n        $preview = CampTemplate::singleton()->context()->preview;\n        switch ($p_eventName) {\n            case 'beforeRender':\n                return $preview ? CampRequest::GetVar('previewLang', null) : null;\n            case 'afterRender':\n                if ($preview) {\n                    $errorList = '';\n                    foreach ($GLOBALS['g_errorList'] as $error) {\n                        $errorList = $errorList . '<p>' . addslashes($error->getMessage()) . '</p>';\n                    }\n                    ?>\n                        <script>\n                            parent.e.document.getElementById('error_count').innerHTML = '<?php echo(count($GLOBALS['g_errorList'])); ?>';\n                            parent.e.document.getElementById('error_list').innerHTML = '<?php echo($errorList); ?>';\n                        </script>\n                    <?php\n                }\n                break;\n        }\n    }// fn event\n\n    /**\n     * Returns a CampConfig instance.\n     *\n     * @return object\n     *                A CampConfig instance\n     */\n    public static function GetConfigInstance()\n    {\n        return CampConfig::singleton();\n    }// fn GetConfig\n\n    /**\n     * Returns a CampHTMLDocument instance.\n     *\n     * @return object\n     *                The CampHTMLDocument instance.\n     */\n    public static function GetHTMLDocumentInstance()\n    {\n        $config = self::GetConfigInstance();\n        $attributes = array(\n            'type' => CampRequest::GetVar('format', 'html'),\n            'charset' => $config->getSetting('site.charset'),\n            'language' => CampRequest::GetVar('language', 'en')\n        );\n\n        return CampHTMLDocument::singleton($attributes);\n    }// fn GetHTMLDocumentInstance\n\n    /**\n     * Returns a CampSession instance.\n     *\n     * @return object\n     *                A CampSession instance\n     */\n    public static function GetSessionInstance()\n    {\n        return CampSession::singleton();\n    }// fn GetSession\n\n    /**\n     * Returns the appropiate URI instance.\n     *\n     * @param  string  $p_uri\n     *                        The URI to work with\n     * @return CampURI\n     */\n    public static function GetURIInstance()\n    {\n        static $uriInstance = null;\n\n        $publicationService = \\Zend_Registry::get('container')->getService('newscoop.publication_service');\n        $publication = $publicationService->getPublication();\n\n        if ($publication) {\n            $urlType = $publication->getUrlTypeId();\n        }\n\n        // sets url type to default if necessary\n        if (!isset($urlType)) {\n            $config = self::GetConfigInstance();\n            $urlType = $config->getSetting('campsite.url_default_type');\n        }\n\n        // instanciates the corresponding URI object\n        switch ($urlType) {\n            case 1:\n                $uriInstance = new \\CampURITemplatePath();\n                break;\n            case 2:\n                $uriInstance = new \\CampURIShortNames();\n                break;\n        }\n\n        return $uriInstance;\n    } // fn GetURI\n\n} // class CampSite\n"
  },
  {
    "path": "newscoop/template_engine/classes/CampSystem.php",
    "content": "<?php\n\n/**\n * @package Campsite\n *\n * @author Holman Romero <holman.romero@gmail.com>\n * @author Mugur Rus <mugur.rus@gmail.com>\n * @copyright 2007 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\nuse Newscoop\\Service\\Resource\\ResourceId;\nuse Newscoop\\Service\\ITemplateSearchService;\nuse Newscoop\\Service\\IThemeService;\nuse Newscoop\\Service\\IOutputService;\nuse Newscoop\\Service\\ISectionService;\nuse Newscoop\\Service\\IIssueService;\nuse Newscoop\\Service\\IOutputSettingIssueService;\n\n/**\n * Class CampSystem\n */\nabstract class CampSystem\n{\n\n    /**\n     *\n     */\n    abstract protected function dispatch();\n\n    /**\n     *\n     */\n    abstract protected function render();\n\n    /**\n     * Reads a configuration setting.\n     *\n     * @param string $p_varName\n     *\n     * @return mixed\n     *      The value of the configuration variable\n     */\n    protected function getSetting($p_varName)\n    {\n        $config = CampSite::GetConfigInstance();\n        return $config->getSetting($p_varName);\n    }// fn getSetting\n\n    /**\n     * Sets the context language object.\n     *\n     * @param integer $p_lngId\n     *      The language identifier\n     *\n     * @return void\n     */\n    protected function setLanguage($p_lngId)\n    {\n        $context = CampTemplate::singleton()->context();\n        if (is_object($context->language)\n                && $context->language->number == $p_lngId) {\n            return;\n        }\n        $context->language = new MetaLanguage($p_lngId);\n    }// fn setLanguage\n\n    /**\n     * Sets the context publication object.\n     *\n     * @param integer $p_pubId\n     *      The publication identifier\n     *\n     * @return void\n     */\n    protected function setPublication($p_pubId)\n    {\n        $context = CampTemplate::singleton()->context();\n        if (is_object($context->publication)\n                && $context->publication->identifier == $p_pubId) {\n            return;\n        }\n        $context->publication = new MetaPublication($p_pubId);\n    }// fn setPublication\n\n    /**\n     * Sets the context issue object.\n     *\n     * @param integer $p_pubId\n     *      The publication identifier\n     * @param integer $p_lngId\n     *      The language identifier\n     * @param integer $p_issNr\n     *      The issue number\n     *\n     * @return void\n     */\n    protected function setIssue($p_pubId, $p_lngId, $p_issNr)\n    {\n        $context = CampTemplate::singleton()->context();\n        if (is_object($context->issue)\n                && $context->issue->number == $p_issNr) {\n            return;\n        }\n        $context->issue = new MetaIssue($p_pubId, $p_lngId, $p_issNr);\n    }// fn setIssue\n\n    /**\n     * Sets the context section object.\n     *\n     * @param integer $p_pubId\n     *      The publication identifier\n     * @param integer $p_issNr\n     *      The issue number\n     * @param integer $p_lngId\n     *      The language identifier\n     * @param integer $p_sctNr\n     *      The section number\n     *\n     * @return void\n     */\n    protected function setSection($p_pubId, $p_issNr, $p_lngId, $p_sctNr)\n    {\n        $context = CampTemplate::singleton()->context();\n        if (is_object($context->section)\n                && $context->section->number == $p_sctNr) {\n            return;\n        }\n        $context->section = new MetaSection($p_pubId, $p_issNr, $p_lngId, $p_sctNr);\n    }// fn setSection\n\n    /**\n     * Sets the context article object.\n     *\n     * @param integer $p_lngId\n     *      The language identifier\n     * @param integer $p_artNr\n     *      The article number\n     *\n     * @return void\n     */\n    protected function setArticle($p_lngId, $p_artNr)\n    {\n        $context = CampTemplate::singleton()->context();\n        if (is_object($context->article)\n                && $context->article->number == $p_artNr) {\n            return;\n        }\n        $context->article = new MetaArticle($p_lngId, $p_artNr);\n    }// fn setArticle\n\n\n    public static function GetInvalidURLTemplate($p_pubId, $p_issNr = NULL, $p_lngId = NULL, $p_isPublished = true)\n    {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $issueTemplateKey = $cacheService->getCacheKey(array(\n            __CLASS__,\n            'IssueTemplate',\n            $p_lngId,\n            $p_pubId,\n            $p_issNr\n        ), 'templates');\n\n        if ($cacheService->contains($issueTemplateKey)) {\n            $issueTemplate = $cacheService->fetch($issueTemplateKey);\n            if ($issueTemplate !== false && !empty($issueTemplate)) {\n                return $issueTemplate;\n            }\n        }\n\n        $publication = null;\n        if (is_null($p_lngId)) {\n            $publication = new Publication($p_pubId);\n            if (!$publication->exists()) {\n                $template = null;\n            }\n            $p_lngId = $publication->getLanguageId();\n        }\n        if (is_null($p_issNr) && (!is_null($publication) || !is_null($p_pubId))) {\n            if (is_null($publication)) {\n                $publication = new Publication($p_pubId);\n            }\n            $lastIssue = self::GetLastIssue($publication, $p_lngId, $p_isPublished);\n            if (is_null($lastIssue)) {\n                $template = null;\n            }\n            $p_issNr = $lastIssue[0];\n        }\n        if (!is_null($p_issNr)) {\n            $resourceId = new ResourceId('template_engine/classes/CampSystem');\n            $outputService = $resourceId->getService(IOutputService::NAME);\n\n            if (!\\Zend_Registry::isRegistered('webOutput')) {\n                $webOutput = $outputService->findByName('Web');\n                \\Zend_Registry::set('webOutput', $webOutput);\n            }\n\n            $templateSearchService = $resourceId->getService(ITemplateSearchService::NAME);\n\n            $issueObj = new Issue($p_pubId, $p_lngId, $p_issNr);\n            $template = $templateSearchService->getErrorPage($issueObj->getIssueId(), Zend_Registry::get('webOutput'));\n        }\n\n        if (empty($template)) {\n            $template = null;\n        }\n\n        $cacheService->save($issueTemplateKey, $template);\n\n        return $template;\n    }// fn GetInvalidURLTemplate\n\n    /**\n     *\n     */\n    public static function GetTemplate($p_lngId, $p_pubId, $p_issNr, $p_sctNr, $p_artNr, $p_isPublished = true)\n    {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $templateCacheKey = $cacheService->getCacheKey(array(\n            'template', $p_pubId, $p_issNr, $p_sctNr, $p_artNr, $p_isPublished\n        ), 'templates');\n\n        if ($cacheService->contains($templateCacheKey)) {\n            return $cacheService->fetch($templateCacheKey);\n        }\n\n        global $g_ado_db;\n        if ($p_lngId <= 0) {\n            $cacheKey = $cacheService->getCacheKey('legacy_publication_language_id'.$p_pubId, 'publication');\n            if ($cacheService->contains($cacheKey)) {\n                $p_lngId = $cacheService->fetch($cacheKey);\n            } else {\n                $publication = new Publication($p_pubId);\n                if (!$publication->exists()) {\n                    return null;\n                }\n                $p_lngId = $publication->getLanguageId();\n                $cacheService->save($cacheKey, $p_lngId);\n            }\n        }\n        if ($p_artNr > 0) {\n            if ($p_issNr <= 0 || $p_sctNr <= 0) {\n                $article = new Article($p_lngId, $p_artNr);\n                if (!$article->exists()\n                        || ($p_isPublished && !$article->isPublished())) {\n                    return self::GetInvalidURLTemplate($p_pubId, $p_issNr, $p_lngId, $p_isPublished);\n                }\n                $p_issNr = $article->getIssueNumber();\n                $p_sctNr = $article->getSectionNumber();\n            }\n            return self::GetArticleTemplate($p_lngId, $p_pubId, $p_issNr, $p_sctNr);\n        }\n        if ($p_sctNr > 0) {\n            if ($p_issNr <= 0) {\n                $sql = 'SELECT MAX(i.Number) AS Number '\n                        . 'FROM Sections as s, Issues as i '\n                        . 'WHERE s.IdPublication = i.IdPublication'\n                        . ' AND s.IdLanguage = i.IdLanguage'\n                        . ' AND s.IdPublication = ' . (int)$p_pubId\n                        . ' AND s.IdLanguage = ' . (int)$p_lngId;\n                if ($p_isPublished == true) {\n                    $sql .= \" AND i.Published = 'Y'\";\n                }\n                $data = $g_ado_db->GetOne($sql);\n                if (empty($data)) {\n                    return null;\n                }\n                $p_issNr = $data;\n            }\n            return self::GetSectionTemplate($p_lngId, $p_pubId, $p_issNr,\n                    $p_sctNr);\n        }\n        if ($p_issNr <= 0) {\n            $sql = 'SELECT MAX(Number) AS Number FROM Issues '\n                    . 'WHERE IdPublication = ' . $p_pubId\n                    . ' AND IdLanguage = ' . $p_lngId;\n            if ($p_isPublished == true) {\n                $sql .= \" AND Published = 'Y'\";\n            }\n            $data = $g_ado_db->GetOne($sql);\n            if (empty($data)) {\n                return null;\n            }\n            $p_issNr = $data;\n        }\n\n        $template = self::GetIssueTemplate($p_lngId, $p_pubId, $p_issNr);\n        $cacheService->save($templateCacheKey, $template);\n        \n        return $template;\n    }// fn GetTemplate\n\n    public static function GetLastIssue(Publication $publication, $p_langId = null, $p_isPublished = true)\n    {\n        global $g_ado_db;\n\n        if (!$publication->exists()) {\n            return null;\n        }\n        if (empty($p_langId)) {\n            $p_langId = $publication->getDefaultLanguageId();\n        }\n        $sql = 'SELECT MAX(Number) AS Number FROM Issues '\n        . 'WHERE IdPublication = ' . (int)$publication->getPublicationId()\n        . ' AND IdLanguage = ' . (int)$p_langId;\n        if ($p_isPublished == true) {\n            $sql .= \" AND Published = 'Y'\";\n        }\n        $issueNo = $g_ado_db->GetOne($sql);\n        if (empty($issueNo)) {\n            return null;\n        }\n        return array($issueNo, $p_langId);\n    }\n\n    public static function GetIssueTemplate($p_lngId, $p_pubId, $p_issNr)\n    {\n        global $g_ado_db;\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('GetIssueTemplate', $p_lngId, $p_pubId, $p_issNr), 'issue');\n        if ($cacheService->contains($cacheKey)) {\n            return $cacheService->fetch($cacheKey);\n        } else {\n            $resourceId = new ResourceId('template_engine/classes/CampSystem');\n            $outputService = $resourceId->getService(IOutputService::NAME);\n\n            if (!\\Zend_Registry::isRegistered('webOutput')) {\n                $cacheKeyWebOutput = $cacheService->getCacheKey(array('OutputService', 'Web'), 'outputservice');\n                if ($cacheService->contains($cacheKeyWebOutput)) {\n                    \\Zend_Registry::set('webOutput', $cacheService->fetch($cacheKeyWebOutput));\n                } else {\n                    $webOutput = $outputService->findByName('Web');\n                    $cacheService->save($cacheKeyWebOutput, $webOutput);\n                    \\Zend_Registry::set('webOutput', $webOutput);\n                }\n            }\n\n            /* @var $templateSearchService ITemplateSearchService */\n            $templateSearchService = $resourceId->getService(ITemplateSearchService::NAME);\n\n            $issueObj = new Issue($p_pubId, $p_lngId, $p_issNr);\n            $data = $templateSearchService->getFrontPage($issueObj->getIssueId(),\n                \\Zend_Registry::get('webOutput'));\n\n            if (empty($data)) {\n                $data = self::GetInvalidURLTemplate($p_pubId, $p_issNr, $p_lngId);\n            }\n            $cacheService->save($cacheKey, $data);\n\n            return $data;\n        }\n    }// fn GetIssueTemplate\n\n    public static function GetSectionTemplate($p_lngId, $p_pubId, $p_issNr, $p_sctNr)\n    {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('GetSectionTemplate', $p_lngId, $p_pubId, $p_issNr, $p_sctNr), 'section');\n        if ($cacheService->contains($cacheKey)) {\n            return $cacheService->fetch($cacheKey);\n        } else {\n            $resourceId = new ResourceId('template_engine/classes/CampSystem');\n            $resourceId = new ResourceId('template_engine/classes/CampSystem');\n            $outputService = $resourceId->getService(IOutputService::NAME);\n\n            if (!\\Zend_Registry::isRegistered('webOutput')) {\n                $cacheKeyWebOutput = $cacheService->getCacheKey(array('OutputService', 'Web'), 'outputservice');\n                if ($cacheService->contains($cacheKeyWebOutput)) {\n                    \\Zend_Registry::set('webOutput', $cacheService->fetch($cacheKeyWebOutput));\n                } else {\n                    $webOutput = $outputService->findByName('Web');\n                    $cacheService->save($cacheKeyWebOutput, $webOutput);\n                    \\Zend_Registry::set('webOutput', $webOutput);\n                }\n            }\n\n            $templateSearchService = $resourceId->getService(ITemplateSearchService::NAME);\n\n            $sectionObj = new Section($p_pubId, $p_issNr, $p_lngId, $p_sctNr);\n            $data = $templateSearchService->getSectionPage($sectionObj->getSectionId(),\n                \\Zend_Registry::get('webOutput'));\n            if (empty($data)) {\n                $data = self::GetInvalidURLTemplate($p_pubId, $p_issNr, $p_lngId);\n            }\n            $cacheService->save($cacheKey, $data);\n\n            return $data;\n        }\n    }// fn GetSectionTemplate\n\n    public static function GetArticleTemplate($p_lngId, $p_pubId, $p_issNr, $p_sctNr)\n    {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('GetArticleTemplate', $p_lngId, $p_pubId, $p_issNr, $p_sctNr), 'article');\n        if ($cacheService->contains($cacheKey)) {\n            return $cacheService->fetch($cacheKey);\n        } else {\n            $resourceId = new ResourceId('template_engine/classes/CampSystem');\n            $outputService = $resourceId->getService(IOutputService::NAME);\n\n            if (!\\Zend_Registry::isRegistered('webOutput')) {\n                $cacheKeyWebOutput = $cacheService->getCacheKey(array('OutputService', 'Web'), 'outputservice');\n                if ($cacheService->contains($cacheKeyWebOutput)) {\n                    \\Zend_Registry::set('webOutput', $cacheService->fetch($cacheKeyWebOutput));\n                } else {\n                    $webOutput = $outputService->findByName('Web');\n                    $cacheService->save($cacheKeyWebOutput, $webOutput);\n                    \\Zend_Registry::set('webOutput', $webOutput);\n                }\n            }\n\n            $templateSearchService = $resourceId->getService(ITemplateSearchService::NAME);\n\n            $sectionObj = new Section($p_pubId, $p_issNr, $p_lngId, $p_sctNr);\n            $data = $templateSearchService->getArticlePage($sectionObj->getSectionId(),\n                \\Zend_Registry::get('webOutput'));\n\n            if (empty($data)) {\n                $data = self::GetInvalidURLTemplate($p_pubId, $p_issNr, $p_lngId);\n            }\n            $cacheService->save($cacheKey, $data);\n\n            return $data;\n        }// fn GetArticleTemplate\n    }\n}// class CampSystem\n?>"
  },
  {
    "path": "newscoop/template_engine/classes/CampTemplate.php",
    "content": "<?php\n\n/**\n * @author Holman Romero <holman.romero@gmail.com>\n * @author Mugur Rus <mugur.rus@gmail.com>\n * @copyright 2007 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n *\n * @version $Revision$\n *\n * @link http://www.sourcefabric.org\n */\nuse Symfony\\Component\\Finder\\Finder;\nuse Symfony\\Component\\Translation\\Loader\\YamlFileLoader;\nuse Symfony\\Component\\Filesystem\\Filesystem;\n\n/**\n * Class CampTemplate.\n */\nfinal class CampTemplate extends SmartyBC\n{\n    const PLUGINS = '/../include/smarty/campsite_plugins';\n    const SCRIPTS = '/views/scripts';\n\n    /** @var CampTemplate */\n    private static $m_instance = null;\n\n    /** @var CampContext */\n    private $m_context;\n\n    /** @var bool */\n    private $m_preview = false;\n\n    public $useprotocol;\n\n    public $templateCacheHandler;\n\n    /** @var array */\n    public $campsiteVector = array();\n\n    /**\n     */\n    public function __construct()\n    {\n        parent::__construct();\n\n        $config = CampSite::GetConfigInstance();\n\n        $this->debugging = $config->getSetting('smarty.debugging');\n        $this->force_compile = $config->getSetting('smarty.force_compile');\n        $this->compile_check = $config->getSetting('smarty.compile_check');\n        $this->use_sub_dirs = $config->getSetting('smarty.use_subdirs');\n\n        // cache settings\n        $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n\n        $this->useprotocol = ($preferencesService->get('SmartyUseProtocol') === 'Y') ? 'true' : 'false';\n\n        $this->templateCacheHandler = $preferencesService->TemplateCacheHandler;\n        if ($this->templateCacheHandler) {\n            $this->caching = 1;\n            $this->caching_type = 'newscoop';\n            CampTemplateCache::factory();\n        } else {\n            $this->caching = 0;\n        }\n\n        if (defined('APPLICATION_ENV') && APPLICATION_ENV == 'development') {\n            $this->force_compile = true;\n        }\n\n        // define dynamic uncached block\n        require_once APPLICATION_PATH.self::PLUGINS.'/block.dynamic.php';\n        $this->registerPlugin('block', 'dynamic', 'smarty_block_dynamic', false);\n\n        // define render function\n        require_once APPLICATION_PATH.self::PLUGINS.'/function.render.php';\n        $this->registerPlugin('function', 'render', 'smarty_function_render', false);\n\n        // define translate modifier\n        require_once APPLICATION_PATH.self::PLUGINS.'/modifier.translate.php';\n        $this->registerPlugin('modifier', 'translate', 'smarty_modifier_translate', false);\n\n        $this->left_delimiter = '{{';\n        $this->right_delimiter = '}}';\n        $this->auto_literal = false;\n\n        $this->cache_dir = APPLICATION_PATH.'/../cache';\n        $this->compile_dir = APPLICATION_PATH.'/../cache';\n\n        $this->plugins_dir = array_merge(\n            (array) $this->plugins_dir,\n            array(APPLICATION_PATH.self::PLUGINS),\n            self::getPluginsPluginsDir()\n        );\n\n        $this->setTemplateDir(array(\n            APPLICATION_PATH.'/../themes/',\n            APPLICATION_PATH.'/../themes/system_templates/',\n            APPLICATION_PATH.self::SCRIPTS,\n        ));\n\n        $this->assign('view', \\Zend_Registry::get('container')->get('view'));\n        $this->assign('userindex', false);\n        $this->assign('user', new MetaUser());\n        $this->assign('siteinfo', array(\n            'title' => $preferencesService->SiteTitle,\n            'keywords' => $preferencesService->SiteMetaKeywords,\n            'description' => $preferencesService->SiteMetaDescription,\n        ));\n\n        $this->getTemplateTranslationsFiles();\n    }\n\n    /**\n     * Get translations files for theme.\n     */\n    private function getTemplateTranslationsFiles()\n    {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $themesService = \\Zend_Registry::get('container')->getService('newscoop_newscoop.themes_service');\n        $locale = $translator->getLocale();\n\n        $translator->addLoader('yaml', new YamlFileLoader());\n        $cacheKey = $cacheService->getCacheKey(array('templates_translations', $themesService->getThemePath(), $locale), 'templates_translations');\n        $templateTranslations = array();\n        if ($cacheService->contains($cacheKey)) {\n            $templateTranslations = $cacheService->fetch($cacheKey);\n            foreach ($templateTranslations as $translation) {\n                $translator->addResource('yaml', $translation[0], $translation[1], $translation[2]);\n            }\n\n            return;\n        }\n\n        $filesystem = new Filesystem();\n        $dir = __DIR__.'/../../themes/'.$themesService->getThemePath().'translations';\n        if ($filesystem->exists($dir)) {\n            $finder = new Finder();\n            $extension = $locale.'.yml';\n            $finder->files()->in($dir);\n            $finder->files()->name('*.'.$locale.'.yml');\n\n            foreach ($finder as $file) {\n                $domain = substr($file->getFileName(), 0, -1 * strlen($extension) - 1);\n                $translator->addResource('yaml', $file->getRealpath(), $locale, $domain);\n                $templateTranslations[] = array($file->getRealpath(), $locale, $domain);\n            }\n        }\n\n        $cacheService->save($cacheKey, $templateTranslations);\n    }\n\n    /**\n     * Get plugins plugins dir.\n     *\n     * @return array\n     */\n    public static function getPluginsPluginsDir()\n    {\n        $pluginsManager = \\Zend_Registry::get('container')->getService('newscoop.plugins.manager');\n        $availablePlugins = $pluginsManager->getInstalledPlugins();\n        $dirs = array();\n        foreach ($availablePlugins as $plugin) {\n            $pluginPath = explode('\\\\', $plugin);\n            $directoryPath = realpath(__DIR__.'/../../plugins/'.$pluginPath[0].'/'.$pluginPath[1].'/Resources/smartyPlugins');\n            if ($directoryPath) {\n                $dirs[] = $directoryPath;\n            }\n        }\n\n        //legacy plugins\n        foreach (CampPlugin::GetEnabled() as $CampPlugin) {\n            $dirs[] = CS_PATH_SITE.\"/{$CampPlugin->getBasePath()}/smarty_camp_plugins\";\n        }\n\n        //comunity ticker\n        $dirs[] = __DIR__.'/../../src/Newscoop/CommunityTickerBundle/Resources/smartyPlugins';\n\n        return $dirs;\n    }\n\n    /**\n     * Singleton function that returns the global class object.\n     *\n     * @return CampTemplate object\n     */\n    public static function singleton()\n    {\n        if (!isset(self::$m_instance)) {\n            self::$m_instance = new self();\n        }\n\n        return self::$m_instance;\n    }\n\n    /**\n     * Test if context is initialized.\n     *\n     * @return bool\n     */\n    public function contextInitialized()\n    {\n        return !is_null($this->m_context);\n    }\n\n    /**\n     * Returns the template context object.\n     *\n     * @return CampContext object\n     */\n    public function context()\n    {\n        if (!isset($this->m_context)) {\n            $this->refreshContext();\n        }\n\n        return $this->m_context;\n    }\n\n    public function refreshContext()\n    {\n        $this->m_context = new CampContext();\n        $this->m_preview = $this->m_context->preview;\n    }\n\n    /**\n     * Inserts an error message into the errors list.\n     *\n     * @param string $p_message\n     * @param object $p_smarty\n     */\n    public function trigger_error($p_message, $p_smarty = null)\n    {\n        if (!self::singleton()->m_preview) {\n            return;\n        }\n\n        if (is_object($p_smarty)) {\n            $p_smarty->trigger_error($p_message);\n        } else {\n            trigger_error(\"Newscoop error: $p_message\");\n        }\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/classes/CampURI.php",
    "content": "<?php\n\n/**\n * @package Campsite\n *\n * @author Holman Romero <holman.romero@gmail.com>\n * @author Mugur Rus <mugur.rus@gmail.com>\n * @copyright 2007 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\ndefine('URLTYPE_TEMPLATE_PATH', 1);\ndefine('URLTYPE_SHORT_NAMES', 2);\n\nuse Newscoop\\Service\\Resource\\ResourceId;\nuse Newscoop\\Service\\ISyncResourceService;\n\n/**\n * Class CampURI\n */\nabstract class CampURI\n{\n    const INVALID_SITE_NAME = 1;\n    const INVALID_LANGUAGE = 2;\n    const INVALID_ISSUE = 3;\n    const INVALID_SECTION = 4;\n    const INVALID_ARTICLE = 5;\n    const INVALID_TEMPLATE = 6;\n\n    /**\n     * The URI type\n     * It can be either:\n     * Template Path = 1\n     * Short Names = 2\n     *\n     * @var integer\n     */\n    protected $m_type = null;\n    /**\n     * The URI value\n     *\n     * @var string\n     */\n    protected $m_uri = null;\n    /**\n     * The URI parts\n     *\n     * @var array\n     */\n    protected $m_parts = array('scheme', 'user', 'password', 'host', 'port', 'path', 'query', 'fragment');\n    protected static $m_objects = array('publication' => 'Publication', 'issue' => 'Issue',\n        'section' => 'Section', 'article' => 'Article', 'language' => 'Language');\n    /**\n     * @var string\n     */\n    protected $m_scheme = null;\n    /**\n     * @var string\n     */\n    protected $m_host = null;\n    /**\n     * @var int\n     */\n    protected $m_port = null;\n    /**\n     * @var MetaUser\n     */\n    protected $m_user = null;\n    /**\n     * @var string\n     */\n    protected $m_password = null;\n    /**\n     * @var string\n     */\n    protected $m_path = null;\n    /**\n     * @var string\n     */\n    protected $m_query = null;\n    /**\n     * @var string\n     */\n    protected $m_fragment = null;\n    /**\n     * @var array\n     */\n    private $m_queryArray = array();\n    /**\n     * @var string\n     */\n    protected $m_buildPath = null;\n    /**\n     * @var string\n     */\n    protected $m_buildQuery = null;\n    /**\n     * @var array\n     */\n    protected $m_buildQueryArray = array();\n    /**\n     * True if in preview mode\n     *\n     * @var boolean\n     */\n    protected $m_preview = false;\n    /**\n     * Language object\n     *\n     * @var MetaLanguage\n     */\n    protected $m_language = null;\n    /**\n     * Publication object\n     *\n     * @var MetaPublication\n     */\n    protected $m_publication = null;\n    /**\n     * Issue object\n     *\n     * @var MetaIssue\n     */\n    protected $m_issue = null;\n    /**\n     * Section object\n     *\n     * @var MetaSection\n     */\n    protected $m_section = null;\n    /**\n     * Article object\n     *\n     * @var MetaArticle\n     */\n    protected $m_article = null;\n    /**\n     * Template object\n     *\n     * @var MetaTemplate\n     */\n    protected $m_template = null;\n    /**\n     * The theme path storage\n     */\n    protected $_themePath = null;\n    /**\n     *\n     * @var bool\n     */\n    private $m_validCache = false;\n    /**\n     * Whether the URI is valid or not\n     *\n     * @var boolean\n     */\n    protected $m_validURI = false;\n    /**\n     * Holds the URL process error code; null if no error\n     *\n     * @var int\n     */\n    protected $m_errorCode = null;\n    /**\n     * The list of parameters used in preview mode\n     * @var array\n     */\n    protected static $m_previewParameters = array('LoginUserId',\n        'LoginUserKey', 'AdminAccess', 'previewLang', 'preview');\n    /**\n     * @var object\n     */\n    protected $m_config = null;\n\n    /**\n     * Class constructor\n     *\n     * @param string $p_uri\n     *                      The full URI string\n     */\n    public function __construct($p_uri = 'SELF')\n    {\n        $this->m_config = CampConfig::singleton();\n\n        if (isset($p_uri) && $p_uri != 'SELF') {\n            $uriString = $p_uri;\n        } else {\n            // ... otherwise we build the uri from the server itself.\n            //\n            // checks whether the site is being queried through SSL\n            if (isset($_SERVER['HTTPS'])\n                    && !empty($_SERVER['HTTPS'])\n                    && (strtolower($_SERVER['HTTPS']) != 'off')) {\n                $scheme = 'https://';\n            } else {\n                $scheme = 'http://';\n            }\n\n            // this works at least for apache, some research is needed\n            // in order to support other web servers.\n            if (!empty($_SERVER['PHP_SELF'])) {\n                $uriString = $scheme . $_SERVER['HTTP_HOST'];\n            }\n            if (isset($_SERVER['REQUEST_URI'])) {\n                $uriString .= $_SERVER['REQUEST_URI'];\n            }\n\n            // some cleaning directives\n            $uriString = urldecode($uriString);\n            $uriString = str_replace('\"', '&quot;', $uriString);\n            $uriString = str_replace('<', '&lt;', $uriString);\n            $uriString = str_replace('>', '&gt;', $uriString);\n            $uriString = preg_replace('/eval\\((.*)\\)/', '', $uriString);\n            $uriString = preg_replace('/[\\\\\\\"\\\\\\'][\\\\s]*javascript:(.*)[\\\\\\\"\\\\\\']/',\n                    '\"\"', $uriString);\n        }\n\n        $this->parse($uriString);\n        $this->m_queryArray = array_merge($this->m_queryArray,\n                CampRequest::GetInput('POST'));\n\n        $this->readUser();\n    }\n\n// fn __construct\n\n    /**\n     * Returns true if the given parameter is restricted and can not\n     * be set from outside the URL object.\n     *\n     * @param  string $p_parameterName\n     * @return bool\n     */\n    abstract public function isRestrictedParameter($p_parameterName);\n\n    /**\n     * Parses the given URI.\n     *\n     * @param string $p_uri\n     *                      The URI string\n     *\n     * @return boolean\n     *                 true on success, false on failure\n     */\n    private function parse($p_uri)\n    {\n        $success = false;\n        if (empty($p_uri)) {\n            return $success;\n        }\n\n        $this->m_uri = $p_uri;\n        $p_uri = urldecode($p_uri);\n\n        if ($parts = @parse_url($p_uri)) {\n            $success = true;\n        }\n\n        // sets the value for every URI part\n        foreach ($this->m_parts as $part) {\n            $property = 'm_' . $part;\n            if (property_exists($this, $property)) {\n                $this->$property = (isset($parts[$part])) ? $parts[$part] : null;\n            }\n        }\n\n        // populates the query array\n        if (isset($parts['query']) && CampRequest::GetMethod() != 'POST') {\n            parse_str($parts['query'], $this->m_queryArray);\n        }\n\n        return $success;\n    }\n\n// fn parse\n\n    /**\n     * Builds a URI string from the given parts.\n     *\n     * @param array $p_parts\n     *                       The array of URI parts\n     *\n     * @return string $uriString\n     *                The rendered URI\n     */\n    protected function render(array $p_parts = array())\n    {\n        if (empty($p_parts)) {\n            $p_parts = $this->m_parts;\n        }\n        if (!$this->isValidCache()) {\n            $this->m_path = $this->getURIPath();\n            $this->m_query = $this->getQuery();\n        }\n        $uriString = '';\n        foreach ($p_parts as $part) {\n            $property = 'm_' . $part;\n            if (!empty($this->$property)) {\n                $uriString .= ( $part == 'scheme') ? $this->$property . '://' : '';\n                $uriString .= ( $part == 'user') ? $this->$property : '';\n                $uriString .= ( $part == 'password') ? ':' . $this->$property . '@' : '';\n                $uriString .= ( $part == 'host') ? $this->$property : '';\n                $uriString .= ( $part == 'port') ? ':' . $this->$property : '';\n                $uriString .= ( $part == 'path') ? $this->$property : '';\n                $uriString .= ( $part == 'query') ? '?' . $this->$property : '';\n                $uriString .= ( $part == 'fragment') ? '#' . $this->$property : '';\n            }\n        }\n\n        return $uriString;\n    }\n\n// fn render\n\n    /**\n     * Gets the URL type.\n     *\n     * @return integer\n     */\n    public function getURLType()\n    {\n        return $this->m_type;\n    }\n\n// fn getURLType\n\n    /**\n     * Gets the URL from the object attributes.\n     *\n     * @return string $url\n     *                The full URL\n     */\n    public function getURL()\n    {\n        $url = $this->render(array(\n                    'scheme',\n                    'user',\n                    'password',\n                    'host',\n                    'port',\n                    'path',\n                    'query',\n                    'fragment'\n                        )\n        );\n\n        return $url;\n    }\n\n// fn getURL\n\n    /**\n     * Gets the requested URI.\n     *\n     * @return string\n     *                The requested URI string\n     */\n    public function getRequestURI()\n    {\n        if (empty($this->m_query)) {\n            return $this->m_path;\n        }\n\n        return $this->render(array('path', 'query'));\n    }\n\n// fn getRequestURI\n\n    /**\n     * Gets the URI base, it is the scheme, host and (if exists) port.\n     *\n     * @return string $base\n     *                The URI base\n     */\n    public function getBase()\n    {\n        $base = $this->m_scheme . '://' . $this->m_host;\n        if (is_numeric($this->m_port)) {\n            $base .= ':' . $this->m_port;\n        }\n\n        return $base;\n    }\n\n// fn getBase\n\n    /**\n     * Gets the relative URI base, it is '//', host and (if exists) port.\n     *\n     * @return string $relativeBase\n     *                The relative URI base\n     */\n    public function getRelativeBase()\n    {\n        $relativeBase = '//' . $this->m_host;\n        if (is_numeric($this->m_port)) {\n            $relativeBase .= ':' . $this->m_port;\n        }\n\n        return $relativeBase;\n    }\n\n    /**\n     * Gets the base plus the path from the current URI.\n     *\n     * @return string\n     *                The URI base path\n     */\n    public function getBasePath()\n    {\n        return $this->render(array('scheme', 'host', 'port', 'path'));\n    }\n\n// fn getBasePath\n\n    /**\n     * Gets the query part from the current URI.\n     *\n     * @return string $m_query\n     *                The query part\n     */\n    public function getQuery()\n    {\n        if (!$this->isValidCache()) {\n            $this->m_query = CampURI::QueryArrayToString($this->getQueryArray());\n        }\n\n        return $this->m_query;\n    }\n\n// fn getQuery\n\n    /**\n     * Gets the given variable from the URI query.\n     *\n     * @param string $p_varName\n     *                          The variable name\n     *\n     * @return string\n     *                null on failure, otherwise the variable value\n     */\n    public function getQueryVar($p_varName)\n    {\n        $queryArray = $this->getQueryArray();\n        if (!isset($queryArray[$p_varName])) {\n            return null;\n        }\n\n        return $queryArray[$p_varName];\n    }\n\n// fn getQueryVar\n\n    /**\n     * Gets the array containing the query variables.\n     *\n     * @return array $m_queryArray\n     *               The array of query vars\n     */\n    public function getQueryArray(array $p_keepParameters = array(),\n            array $p_removeParameters = array())\n    {\n        $queryArray = $this->m_queryArray;\n        if (count($p_removeParameters) > 0) {\n            $removeKeys = array_combine($p_removeParameters,\n                    array_fill(0, count($p_removeParameters, null)));\n            $queryArray = array_diff_key($queryArray, $removeKeys);\n        }\n        if (count($p_keepParameters)) {\n            $keepKeys = array_combine($p_keepParameters,\n                    array_fill(0, count($p_keepParameters), null));\n            $queryArray = array_intersect_key($queryArray, $keepKeys);\n        }\n\n        return $queryArray;\n    }\n\n// fn getQueryArray\n\n    /**\n     * Gets the scheme part from the current URI.\n     *\n     * @return string $m_scheme\n     *                The scheme value\n     */\n    public function getScheme()\n    {\n        return $this->m_scheme;\n    }\n\n// fn getScheme\n\n    /**\n     * Gets the host part from the current URI.\n     *\n     * @return string $m_host\n     *                The host value\n     */\n    public function getHost()\n    {\n        return $this->m_host;\n    }\n\n// fn getHost\n\n    /**\n     * Gets the port part from the current URI.\n     *\n     * @return int $m_port\n     *             The port value\n     */\n    public function getPort()\n    {\n        return $this->m_port;\n    }\n\n// fn getPort\n\n    /**\n     * Returns the user part from the current URI.\n     *\n     * @return string\n     *                The username value\n     */\n    public function getUser()\n    {\n        return $this->m_user;\n    }\n\n// fn getUser\n\n    /**\n     * Gets the password part from the current URI.\n     *\n     * @return string $m_password\n     *                The password value\n     */\n    public function getPassword()\n    {\n        return $this->m_password;\n    }\n\n// fn getPassword\n\n    /**\n     * Gets the path part from the current URI.\n     *\n     * @return string $m_path\n     *                The path value\n     */\n    public function getPath()\n    {\n        return $this->m_path;\n    }\n\n// fn getPath\n\n    /**\n     * Gets the fragment part from the current URI.\n     *\n     * @return string $m_fragment\n     *                The fragment value\n     */\n    public function getFragment()\n    {\n        return $this->m_fragment;\n    }\n\n// fn getFragment\n\n    /**\n     * Returns the URI string based on given URL parameter.\n     *\n     * @param string  $p_param\n     *                           The URL parameter\n     * @param boolean $p_preview\n     *                           If true, will keep the preview parameters in the URL\n     *\n     * @return string\n     *                The URI string requested\n     */\n    public function getURI($p_param = null, $p_preview = false)\n    {\n        $this->m_buildPath = null;\n        $this->m_buildQuery = null;\n        $this->m_buildQueryArray = $this->getQueryArray();\n\n        $params = preg_split(\"/[\\s]+/\", $p_param);\n        $this->buildURI($params, $p_preview);\n        if (!empty($this->m_buildQuery)) {\n            return $this->m_buildPath . '?' . $this->m_buildQuery;\n        }\n\n        return $this->m_buildPath;\n    }\n\n// fn getURI\n\n    /**\n     * Returns the URI path based on given URL parameter.\n     *\n     * @param string  $p_param\n     *                           The URL parameter\n     * @param boolean $p_preview\n     *                           If true, will keep the preview parameters in the URL\n     *\n     * @return string\n     *                The URI path string requested\n     */\n    public function getURIPath($p_param = null, $p_preview = false)\n    {\n        $this->m_buildPath = null;\n        $this->m_buildQuery = null;\n        $this->m_buildQueryArray = $this->getQueryArray();\n\n        $params = preg_split(\"/[\\s]+/\", $p_param);\n        $this->buildURI($params, $p_preview);\n\n        return $this->m_buildPath;\n    }\n\n// fn getURIPath\n\n    /**\n     * Returns the URI query parameters based on given URL parameter.\n     *\n     * @param string  $p_param\n     * @param boolean $p_preview\n     *                           If true, will keep the preview parameters in the URL\n     *\n     * @return string\n     *                The URI query string requested\n     */\n    public function getURLParameters($p_param = null, $p_preview = false)\n    {\n        $this->m_buildPath = null;\n        $this->m_buildQuery = null;\n        $this->m_buildQueryArray = $this->getQueryArray();\n\n        $params = preg_split(\"/[\\s]+/\", $p_param);\n        $this->buildURI($params, $p_preview);\n\n        return $this->m_buildQuery;\n    }\n\n// fn getURLParameters\n\n    /**\n     * Returns campsite params: language, publication, issue, section, article.\n     *\n     * @return array\n     */\n    public function getCampsiteVector()\n    {\n        return array('language' => $this->language->number,\n                     'publication' => $this->publication->identifier,\n                     'issue' => $this->issue->number,\n                     'section' => $this->section->number,\n                     'article' => $this->article->number);\n    }\n\n    public function getThemePath()\n    {\n        $themesService = \\Zend_Registry::get('container')->getService('newscoop_newscoop.themes_service');\n        if (is_null($this->_themePath)) {\n            $this->_themePath = $themesService->getThemePath();\n        }\n\n        return $this->_themePath;\n    }\n\n    /**\n     *\n     */\n    public function getTemplate($p_templateIdOrName = null)\n    {\n        if (!is_null($this->m_template)) {\n            return $this->m_template->name;\n        }\n\n        if (!empty($p_templateIdOrName)) {\n            $tplObj = new MetaTemplate($p_templateIdOrName);\n            if (!$tplObj->defined()) {\n                $template = CampSystem::GetInvalidURLTemplate($this->publication->identifier,\n                $this->issue->number, $this->language->number, !$this->m_preview);\n                $template = substr($template, strlen($this->getThemePath()));\n            } else {\n                $template = $tplObj->name;\n            }\n        } elseif (is_null($this->m_errorCode)) {\n            $template = CampSystem::GetTemplate($this->language->number,\n                            $this->publication->identifier,\n                            $this->issue->number, $this->section->number,\n                            $this->article->number);\n            if (is_null($template)) {\n                $template = CampSystem::GetInvalidURLTemplate($this->publication->identifier,\n                $this->issue->number, $this->language->number, !$this->m_preview);\n            }\n            $template = substr($template, strlen($this->getThemePath()));\n        } else {\n            return null;\n        }\n\n        $filePath = CS_PATH_TEMPLATES . DIR_SEP . $this->getThemePath() . $template;\n        if (!file_exists($filePath)) {\n            return null;\n        }\n\n        return $template;\n    }\n\n// fn getTemplate\n\n    /**\n     * Returns the URL processing error code\n     *\n     * @return int\n     */\n    public function getErrorCode()\n    {\n        return $this->m_errorCode;\n    }\n\n// fn getErrorCode\n\n    /**\n     * Returns whether the template name given is a valid template resource.\n     *\n     * @param string $p_templateName\n     *                               The name of the template from the URI path\n     *\n     * @return boolean\n     *                 true on success, false on failure\n     */\n    protected function isValidTemplate($p_templateName)\n    {\n        if (is_null($this->m_issue) || !$this->m_issue->defined()) {\n            return false;\n        }\n\n        $resourceId = new ResourceId(__CLASS__);\n        $syncResService = $resourceId->getService(ISyncResourceService::NAME);\n\n        return !is_null($syncResService->findByPath($this->getThemePath().$p_templateName));\n    }// fn isValidTemplate\n\n    /**\n     * Sets the URL type.\n     *\n     * @param integer $p_type\n     *                        The URL type number\n     *\n     * @return void\n     */\n    protected function setURLType($p_type)\n    {\n        $this->m_type = (int) $p_type;\n    }\n\n// fn setURLType\n\n    /**\n     * Adds the given parameters to the query array\n     */\n    protected function addToQuery(&$p_query, array $p_parameters)\n    {\n        if (count($p_parameters) == 0) {\n            return;\n        }\n        if (!empty($p_query)) {\n            $this->m_query .= '&';\n        }\n        $p_query .= CampURI::QueryArrayToString($p_parameters);\n    }\n\n    /**\n     * Gets the query part from the current URI.\n     *\n     * @return string $m_query\n     *                The query value\n     *\n     * @return void\n     */\n    public function setQuery($p_query)\n    {\n        $this->m_query = $p_query;\n        parse_str($p_query, $this->m_queryArray);\n    }\n\n// fn setQuery\n\n    /**\n     * Sets the given URI query variable.\n     *\n     * @param string $p_varName\n     *                          The name of the URI query variable\n     * @param string $p_value\n     *                          The value for the variable\n     *\n     * @return void\n     */\n    public function setQueryVar($p_varName, $p_value = null)\n    {\n        if (is_null($p_value)) {\n            unset($this->m_queryArray[$p_varName]);\n        } else {\n            $this->m_queryArray[$p_varName] = $p_value;\n        }\n        $this->validateCache(false);\n    }\n\n// fn setQueryVar\n\n    /**\n     * Sets the URI scheme.\n     *\n     * @param string $p_scheme\n     *                         The scheme value\n     *\n     * @return void\n     */\n    public function setScheme($p_scheme)\n    {\n        $this->m_scheme = $p_scheme;\n    }\n\n// fn setScheme\n\n    /**\n     * Sets the URI host.\n     *\n     * @param string $p_host\n     *                       The host name\n     *\n     * @return void\n     */\n    public function setHost($p_host)\n    {\n        $this->m_host = $p_host;\n    }\n\n// fn setHost\n\n    /**\n     * Sets the URI port.\n     *\n     * @param int $p_port\n     *                    The port number\n     *\n     * @return void\n     */\n    public function setPort($p_port)\n    {\n        $this->m_port = (int) $p_port;\n    }\n\n// fn setPort\n\n    /**\n     * Sets the URI user part.\n     *\n     * @param string $p_user\n     *                       The user name\n     *\n     * @return void\n     */\n    public function setUser($p_user)\n    {\n        $this->m_user = $p_user;\n    }\n\n// fn setUser\n\n    /**\n     * Sets the URI password part.\n     *\n     * @param string @p_password\n     *      The user password\n     *\n     * @return void\n     */\n    public function setPassword($p_password)\n    {\n        $this->m_password = $p_password;\n    }\n\n// fn setPassword\n\n    /**\n     * Sets the URI path.\n     *\n     * @param string $p_path\n     *                       The path\n     *\n     * @return void\n     */\n    public function setPath($p_path)\n    {\n        $this->m_path = $p_path;\n    }\n\n// fn setPath\n\n    /**\n     * Sets the URI fragment.\n     *\n     * @param string $p_fragment\n     *                           The fragment part\n     *\n     * @return void\n     */\n    public function setFragment($p_fragment)\n    {\n        $this->m_fragment = $p_fragment;\n    }\n\n// fn setFragment\n\n    /**\n     * Sets an object property\n     *\n     * @param  string $p_property\n     * @return bool\n     */\n    public function __get($p_property)\n    {\n        $p_property = strtolower($p_property);\n        switch ($p_property) {\n            case 'error_code':\n                $p_property = 'errorCode';\n                break;\n            case 'is_valid':\n                $p_property = 'validURI';\n                break;\n        }\n        if (!property_exists($this, \"m_$p_property\")) {\n            return null;\n        }\n        $memberName = \"m_$p_property\";\n        if (array_key_exists($p_property, self::$m_objects)\n                && !is_object($this->$memberName)) {\n            $className = 'Meta' . self::$m_objects[$p_property];\n            $this->$p_property = new $className;\n        }\n\n        return $this->$memberName;\n    }\n\n// fn __get\n\n    /**\n     * Sets an object property\n     *\n     * @param  string $p_property\n     * @param  mixed  $p_value\n     * @return bool\n     */\n    public function __set($p_property, $p_value)\n    {\n        $p_property = strtolower($p_property);\n        if (!array_key_exists($p_property, self::$m_objects)) {\n            return false;\n        }\n        if (!property_exists($this, \"m_$p_property\")) {\n            return false;\n        }\n        if (!is_a($p_value, 'Meta' . $p_property) && !is_null($p_value)) {\n            return false;\n        }\n        $memberName = \"m_$p_property\";\n        $this->$memberName = $p_value;\n        if ($p_property == 'publication') {\n            $this->m_host = $this->m_publication->site;\n        }\n        $this->validateCache(false);\n\n        return true;\n    }\n\n// fn __set\n\n    /**\n     * Sets the cache validation for URI rendering\n     *\n     * @param bool $p_valid\n     */\n    protected function validateCache($p_valid)\n    {\n        $this->m_validCache = $p_valid;\n    }\n\n// fn validateCache\n\n    /**\n     * Returns the cache valid state\n     *\n     * @return bool\n     */\n    protected function isValidCache()\n    {\n        return false;\n        // A proper cache scheme was not implemented yet.\n        //        return $this->m_validCache;\n    }\n\n// fn isValidCache\n\n    /**\n     * Returns whether the site is running over SSL or not.\n     *\n     * @return boolean\n     *                 true on success, false on failure\n     */\n    public function isSSL()\n    {\n        return ($this->m_scheme == 'https') ? true : false;\n    }\n\n// fn isSSL\n\n    /**\n     * Sets the URI path and query values based on given parameters.\n     *\n     * @param array   $p_params\n     *                           An array of valid URL parameters\n     * @param boolean $p_preview\n     *                           If true, will keep the preview parameters in the URL\n     *\n     * @return void\n     */\n    protected function buildURI(array &$p_params = array(), $p_preview = false)\n    {\n        if ($this->isValidCache()) {\n            return;\n        }\n\n        if (count($p_params) == 0) {\n            return;\n        }\n        $parameter = strtolower(array_shift($p_params));\n\n        switch ($parameter) {\n            case 'static_file':\n                $staticFile = isset($p_params[0]) ? array_shift($p_params) : null;\n                $p_params = array();\n                $this->m_buildQueryArray = array();\n                if (empty($staticFile)) {\n                    $this->m_buildPath = '';\n                    break;\n                }\n                $this->m_buildPath = '/themes/' . $this->getThemePath() . $staticFile;\n                break;\n            case 'root_level':\n                $this->m_buildPath = '/';\n                if ($p_preview) {\n                    $this->m_buildQueryArray = $this->getQueryArray(CampURI::$m_previewParameters);\n                } else {\n                    $this->m_buildQueryArray = array();\n                }\n                $p_params = array();\n                break;\n            case 'articleattachment':\n                $context = CampTemplate::singleton()->context();\n                $attachment = new Attachment($context->attachment->identifier);\n                $this->m_buildPath = $attachment->getAttachmentUri();\n                $this->m_buildQueryArray = array();\n                $p_params = array();\n                break;\n            case 'articlecomment':\n                $context = CampTemplate::singleton()->context();\n                if ($context->comment->defined) {\n                    $this->m_buildQueryArray['acid'] = $context->comment->identifier;\n                }\n                break;\n            case 'image':\n                $this->m_buildQueryArray = array();\n                if (isset($p_params[0]) && is_numeric($p_params[0])) {\n                    $this->processOldImageOptions($imageNo, $p_params);\n                } else {\n                    $this->processImageOptions($imageNo, $p_params);\n                }\n\n                $context = CampTemplate::singleton()->context();\n                if (!is_null($imageNo)) {\n                    $oldImage = $context->image;\n                    $articleImage = new ArticleImage($context->article->number, null, $imageNo);\n                    $context->image = new MetaImage($articleImage->getImageId());\n                }\n                $this->m_buildPath = '/get_img';\n                $this->m_validURI = $context->image->defined();\n                $this->m_buildQueryArray['ImageId'] = $context->image->number;\n                if (!is_null($imageNo)) {\n                    $context->image = $oldImage;\n                }\n                $p_params = array();\n                break;\n            case 'previous_subtitle':\n            case 'next_subtitle':\n            case 'all_subtitles':\n                $option = isset($p_params[0]) ? array_shift($p_params) : null;\n                $article = CampTemplate::singleton()->context()->article;\n                $subtitleNo = $article->current_subtitle_no($option);\n                if (!$article->defined || (!is_null($subtitleNo) && !is_numeric($subtitleNo))) {\n                    return;\n                }\n                $fieldObj = $article->$option;\n                if (($parameter == 'previous_subtitle' && !$fieldObj->has_previous_subtitles)\n                        || ($parameter == 'next_subtitle' && !$fieldObj->has_next_subtitles)) {\n                    return;\n                }\n                $subtitleURLId = $article->subtitle_url_id($option);\n                if ($parameter == 'all_subtitles') {\n                    $newSubtitleNo = 'all';\n                } else {\n                    $newSubtitleNo = $subtitleNo + ($parameter == 'previous_subtitle' ? -1 : 1);\n                }\n                $this->m_buildQueryArray[$subtitleURLId] = $newSubtitleNo;\n                break;\n            case 'previous_items':\n            case 'next_items':\n                $context = CampTemplate::singleton()->context();\n                if ($context->current_list == null) {\n                    return;\n                }\n                $listId = $context->current_list->id;\n                $this->m_buildQueryArray[$listId] = ($parameter == 'previous_items' ?\n                                $context->current_list->previous_start : $context->current_list->next_start);\n                if ($this->m_buildQueryArray[$listId] == 0) {\n                    unset($this->m_buildQueryArray[$listId]);\n                }\n                break;\n            case 'reset_issue_list':\n                $context = CampTemplate::singleton()->context();\n                $listIdPrefix = $context->list_id_prefix('IssuesList');\n                $this->resetList($listIdPrefix);\n                break;\n            case 'reset_section_list':\n                $context = CampTemplate::singleton()->context();\n                $listIdPrefix = $context->list_id_prefix('SectionsList');\n                $this->resetList($listIdPrefix);\n                break;\n            case 'reset_article_list':\n                $context = CampTemplate::singleton()->context();\n                $listIdPrefix = $context->list_id_prefix('ArticlesList');\n                $this->resetList($listIdPrefix);\n                break;\n            case 'reset_searchresult_list':\n                $context = CampTemplate::singleton()->context();\n                $listIdPrefix = $context->list_id_prefix('SearchResultsList');\n                $this->resetList($listIdPrefix);\n                break;\n            case 'reset_subtitle_list':\n                $context = CampTemplate::singleton()->context();\n                $listIdPrefix = $context->list_id_prefix('SubtitlesList');\n                $this->resetList($listIdPrefix);\n                break;\n            default:\n                ;\n        }\n    }\n\n    /**\n     * Process the image options given in the new format:\n     * <attribute> <value>\n     * where <attribute> may be one of: number, ratio, width, height\n     * and <value> an integer\n     * @param integer $p_imageNo\n     * @param array   $p_params\n     */\n    private function processImageOptions(&$p_imageNo, array $p_params)\n    {\n        $p_imageNo = null;\n        for ($parIndex = 0; isset($p_params[$parIndex]); $parIndex++) {\n            $parameter = strtolower($p_params[$parIndex]);\n            $parIndex++;\n            if (!in_array($parameter,\n                            array('number', 'ratio', 'width', 'height', 'crop'))) {\n                CampTemplate::singleton()->trigger_error(\"Invalid image parameter '$parameter' in URL statement\");\n                break;\n            }\n            if (!isset($p_params[$parIndex]) || !is_numeric($p_params[$parIndex])) {\n                CampTemplate::singleton()->trigger_error(\"Invalid image $parameter in URL statement\");\n                break;\n            }\n            if ($parameter == 'number') {\n                $p_imageNo = $p_params[$parIndex];\n            } else {\n                $this->m_buildQueryArray['Image' . ucfirst($parameter)] = $p_params[$parIndex];\n            }\n        }\n    }\n\n    /**\n     * Process the image options given in the old format (for compatibility):\n     * [<image_number> [<image_ratio>]]\n     * or:\n     * [<image_number> [width <image_width> | height <image_height>]\n     * @param integer $p_imageNo\n     * @param array   $p_params\n     */\n    private function processOldImageOptions(&$p_imageNo, array $p_params)\n    {\n        $p_imageNo = isset($p_params[0]) ? array_shift($p_params) : null;\n        if (isset($p_params[0]) && is_numeric($p_params[0])) {\n            $this->m_buildQueryArray['ImageRatio'] = $p_params[0];\n        } else {\n            while (isset($p_params[0])) {\n                $option = strtolower(array_shift($p_params));\n                if ($option != 'width' && $option != 'height' && $option != 'crop' && $option != 'forcecrop') {\n                    CampTemplate::singleton()->trigger_error(\"Invalid image attribute '$option' in URL statement.\");\n                    break;\n                }\n                if (isset($p_params[0])) {\n                    $option_value = array_shift($p_params);\n                } else {\n                    CampTemplate::singleton()->trigger_error(\"Value not set for '$option' image attribute in URL statement.\");\n                    break;\n                }\n                $param = 'Image' . ucfirst($option);\n\n                $this->m_buildQueryArray[$param] = $option_value;\n            }\n        }\n    }\n\n    protected function resetList($listIdPrefix)\n    {\n        foreach ($this->getQueryArray() as $parameter => $value) {\n            if (strncasecmp($parameter, $listIdPrefix, strlen($listIdPrefix)) == 0) {\n                unset($this->m_buildQueryArray[$parameter]);\n            }\n        }\n    }\n\n    protected function clearParams(array $parameters)\n    {\n        foreach ($parameters as $parameter) {\n            $this->setQueryVar($parameter);\n            unset($this->m_buildQueryArray[$parameter]);\n        }\n    }\n\n    private function readUser()\n    {\n\n        $this->m_preview = false;\n        $container = \\Zend_Registry::get('container');\n        $userService = $container->getService('user');\n\n        $auth = Zend_Auth::getInstance();\n        if ($auth->hasIdentity()) {\n            $user = $userService->find($auth->getIdentity());\n            if (!empty($user)) {\n                $this->m_user = new MetaUser($user);\n                $this->m_preview = CampRequest::GetVar('preview') === 'on' && $this->m_user->isAdmin();\n                if (!$this->m_preview && CampRequest::GetVar('preview') === 'on' && $container->getService('blog')->isBlogger($user)) {\n                    $lang = \\Language::GetLanguageIdByCode(CampRequest::GetVar('language'));\n                    $article = new \\Article($lang, CampRequest::GetVar('articleNo'));\n                    $this->m_preview = $container->getService('blog')->isUsersArticle($article, $user);\n                }\n            }\n        } elseif (!empty($_SERVER['REMOTE_ADDR'])) { // empty in cli\n            $ipUsers = IPAccess::GetUsersHavingIP($_SERVER['REMOTE_ADDR']);\n            if (!empty($ipUsers)) {\n                $user = $userService->find($ipUsers[0]->getUserId());\n                $this->m_user = new MetaUser($user);\n            }\n        }\n    }\n\n    public static function GetPreviewParameters()\n    {\n        return CampURI::$m_previewParameters;\n    }\n\n    /**\n     * Builds a URI query string from the given query array.\n     *\n     * @param array $p_queryArray\n     *                            An array of query variables\n     *\n     * @return string $queryString\n     *                The generated query string\n     */\n    protected static function QueryArrayToString(array $p_queryArray,\n            $p_HTMLEscape = true)\n    {\n        if (!is_array($p_queryArray) || sizeof($p_queryArray) < 1) {\n            return false;\n        }\n\n        $queryString = '';\n        $queryVars = array();\n        foreach ($p_queryArray as $var => $value) {\n            if (is_array($value)) {\n                foreach ($value as $key => $item) {\n                    $queryVars[] = $var . '[' .$key. ']=' . urlencode($item);\n                }\n            } else {\n                $queryVars[] = $var . '=' . urlencode($value);\n            }\n        }\n        $separator = $p_HTMLEscape ? '&amp;' : '&';\n        $queryString = implode($separator, $queryVars);\n\n        return $queryString;\n    }\n\n// fn QueryArrayToString\n}\n\n// class CampURI\n"
  },
  {
    "path": "newscoop/template_engine/classes/CampURIShortNames.php",
    "content": "<?php\n\n/**\n * @package Campsite\n *\n * @author Holman Romero <holman.romero@gmail.com>\n * @author Mugur Rus <mugur.rus@gmail.com>\n * @copyright 2007 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\nuse Newscoop\\Service\\Resource\\ResourceId;\nuse Newscoop\\Service\\ISyncResourceService;\nuse Newscoop\\Entity\\Resource;\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'] . '/classes/Language.php');\nrequire_once($GLOBALS['g_campsiteDir'] . '/classes/Publication.php');\nrequire_once($GLOBALS['g_campsiteDir'] . '/classes/Issue.php');\nrequire_once($GLOBALS['g_campsiteDir'] . '/classes/Section.php');\nrequire_once($GLOBALS['g_campsiteDir'] . '/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'] . '/classes/Alias.php');\nrequire_once($GLOBALS['g_campsiteDir'] . '/template_engine/classes/CampRequest.php');\nrequire_once($GLOBALS['g_campsiteDir'] . '/template_engine/classes/CampURI.php');\nrequire_once($GLOBALS['g_campsiteDir'] . '/template_engine/classes/CampTemplate.php');\n\n/**\n * Class CampURIShortNames\n */\nclass CampURIShortNames extends CampURI\n{\n    /**\n     * The theme path storage\n     */\n    protected $_themePath = null;\n\n    /**\n     * Parameters that are restricted to CampURIShortNames object use.\n     *\n     * @var array\n     */\n    private static $m_restrictedParameters = array(\n    );\n\n    /**\n     * Class constructor\n     *\n     * @param string $p_uri\n     *                      The full URI string\n     */\n    public function __construct($p_uri = null)\n    {\n        parent::__construct($p_uri);\n\n        try {\n            $this->setURLType(URLTYPE_SHORT_NAMES);\n            // HUGE TODO: rewrite this - remove globals controller usage!\n            if (array_key_exists('controller', $GLOBALS)) {\n                if (is_object($GLOBALS['controller'])) {\n                    $this->setURL($GLOBALS['controller']->getRequest());\n                } else {\n                    $this->setURLFromSymfony(Zend_Registry::get('container')->getService('request'));\n                }\n            } else {\n                $this->setURL(new Zend_Controller_Request_Http());\n            }\n\n            $this->m_validURI = true;\n            $this->validateCache(false);\n        } catch (Exception $e) {\n            $this->m_validURI = false;\n            $this->m_errorCode = $e->getCode();\n\n            if (!is_null($this->m_publication)) {\n                $tplId = CampSystem::GetInvalidURLTemplate($this->m_publication->identifier, null, null, !$this->m_preview);\n                $themePath = $this->getThemePath();\n                $tplId = substr($tplId, strlen($themePath));\n                $template = new MetaTemplate($tplId, $themePath);\n                if ($template->defined()) {\n                    $this->m_template = $template;\n                }\n\n                CampTemplate::singleton()->config_dir = APPLICATION_PATH . '/../themes/' . $themePath . '_conf';\n            }\n\n            CampTemplate::singleton()->trigger_error($e->getMessage());\n        }\n    }\n\n    /**\n     * Gets the language URI path.\n     *\n     * @return string\n     *                The language URI path\n     */\n    private function getURILanguage()\n    {\n        $uriString = null;\n        if (!is_null($this->m_language) && $this->m_language->defined()) {\n            $uriString = '/' . $this->m_language->code . '/';\n        }\n\n        return $uriString;\n    }\n\n// fn getURILanguage\n\n    /**\n     * Gets the issue URI path.\n     * It fetches the issue URL name from URI or current issue list if any.\n     *\n     * @return string\n     *                The issue URI path\n     */\n    private function getURIIssue()\n    {\n        $uriString = $this->getURILanguage();\n        if (is_null($uriString)) {\n            return null;\n        }\n\n        if (!is_null($this->m_issue) && $this->m_issue->defined()) {\n            $uriString .= $this->m_issue->url_name . '/';\n        } else {\n            $uriString = null;\n        }\n\n        return $uriString;\n    }\n\n// fn getURIIssue\n\n    /**\n     * Gets the section URI path.\n     * It fetches the section URL name from URI or current section list if any.\n     *\n     * @return string\n     *                The section URI path\n     */\n    private function getURISection()\n    {\n        $uriString = $this->getURIIssue();\n        if (is_null($uriString)) {\n            return null;\n        }\n\n        if (!is_null($this->m_section) && $this->m_section->defined()) {\n            $uriString .= $this->m_section->url_name . '/';\n        } else {\n            $uriString = null;\n        }\n\n        return $uriString;\n    }\n\n// fn getURISection\n\n    /**\n     * Gets the article URI path.\n     * It fetches the article URL name from URI or current article list if any.\n     *\n     * @return string\n     *                The article URI path\n     */\n    private function getURIArticle()\n    {\n        if (!is_null($this->m_article) && $this->m_article->defined()) {\n            $uriString = $this->getURISection();\n            $uriString .= $this->m_article->url_name . '/';\n            if ($seo = $this->m_publication->seo) {\n                $article = $this->m_article->seo_url_end;\n                $uriString .= $article;\n            }\n        } else {\n            $uriString = null;\n        }\n\n        return $uriString;\n    }\n\n// fn getURIArticle\n\n    /**\n     * @return array\n     *               An array containing all the form parameters to print out\n     */\n    public function getFormParameters()\n    {\n        $baseParameters = array('IdLanguage', 'IdPublication',\n            'NrIssue', 'NrSection', 'NrArticle');\n        $parameters = array();\n\n        $queryParameters = $this->getQueryArray();\n        foreach ($queryParameters as $paramName => $paramValue) {\n            if (in_array($paramName, $baseParameters)) {\n                continue;\n            }\n            $parameters[] = array('name' => $paramName, 'value' => $paramValue);\n        }\n\n        return $parameters;\n    }\n\n// fn getFormParameters\n\n    /**\n     * Returns true if the given parameter is restricted and can not\n     * be set from outside the URL object.\n     *\n     * @param  string $p_parameterName\n     * @return bool\n     */\n    public function isRestrictedParameter($p_parameterName)\n    {\n        return in_array($p_parameterName,\n                CampURIShortNames::$m_restrictedParameters);\n    }\n\n    /**\n     * Get publication by site name\n     *\n     * @return MetaPublication\n     */\n    private function _getPublication()\n    {\n        $alias = preg_replace('/^' . $this->getScheme() . ':\\/\\//', '', $this->getBase());\n\n        $publicationService = \\Zend_Registry::get('container')->getService('newscoop.publication_service');\n        $publication = $publicationService->getPublication();\n\n        if (!$publication) {\n            throw new InvalidArgumentException(\"Invalid site name '$alias' in URL.\", self::INVALID_SITE_NAME);\n        }\n\n        return new MetaPublication($publication->getId());\n    }\n\n    /**\n     * Get language by code\n     *\n     * @param  string          $code\n     * @param  MetaPublication $publication\n     * @return MetaLanguage\n     */\n    private function _getLanguage($code, MetaPublication $publication)\n    {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('CampURIShortNameLanguage', $code, $publication->name), 'language');\n        if ($cacheService->contains($cacheKey)) {\n            return $cacheService->fetch($cacheKey);\n        } else {\n            $language = $publication->default_language;\n\n            if (!empty($code)) {\n                $langArray = Language::GetLanguages(null, $code);\n                if (is_array($langArray) && sizeof($langArray) == 1) {\n                    $language = new MetaLanguage($langArray[0]->getLanguageId());\n                }\n            }\n\n            if (!$language->defined()) {\n                throw new InvalidArgumentException(\"Invalid language identifier in URL.\", self::INVALID_LANGUAGE);\n            }\n\n            $cacheService->save($cacheKey, $language);\n\n            return $language;\n        }\n    }\n\n    /**\n     * Get issue\n     *\n     * @param  string $name\n     *\n     * @return MetaIssue\n     */\n    private function _getIssue($name, MetaLanguage $language, MetaPublication $publication)\n    {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $issueKey = $cacheService->getCacheKey(array('metaIssue', $name, $publication->identifier, $language->number), 'issue');\n        if ($cacheService->contains($issueKey)) {\n            return $cacheService->fetch($issueKey);\n        }\n\n        $issueObj = Issue::GetCurrentIssue($publication->identifier, $language->number);\n        if (!empty($name)) {\n            $issueArray = Issue::GetIssues($publication->identifier, $language->number, null, $name, null, !$this->m_preview);\n            if (is_array($issueArray) && sizeof($issueArray) == 1) {\n                $issue = new MetaIssue($publication->identifier, $language->number, $issueArray[0]->getIssueNumber());\n            } else {\n                throw new InvalidArgumentException(\"Invalid issue identifier in URL.\", self::INVALID_ISSUE);\n            }\n        } else {\n            $issue = new MetaIssue($publication->identifier, $language->number, $issueObj->getIssueNumber());\n            if (!$issue->defined()) {\n                throw new InvalidArgumentException(\"No published issue was found.\", self::INVALID_ISSUE);\n            }\n        }\n\n        $cacheService->save($issueKey, $issue);\n\n        return $issue;\n    }\n\n    /**\n     * Get section\n     *\n     * @param  string          $name\n     * @param  MetaIssue       $issue\n     * @param  MetaLanguage    $language\n     * @param  MetaPublication $publication\n     * @return MetaSection\n     */\n    private function _getSection($name, MetaIssue $issue, MetaLanguage $language, MetaPublication $publication)\n    {\n        if (empty($name)) {\n            return null;\n        }\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('getSection', $name, $issue->id, $language->number, $publication->identifier), 'section');\n        if ($cacheService->contains($cacheKey)) {\n             $metaSection = $cacheService->fetch($cacheKey);\n        } else {\n            $sections = Section::GetSections($publication->identifier, $issue->number, $language->number, $name);\n            if (is_array($sections) && sizeof($sections) == 1) {\n                $metaSection = new MetaSection($publication->identifier, $issue->number, $language->number, $sections[0]->getSectionNumber());\n                $cacheService->save($cacheKey, $metaSection);\n            } else {\n                throw new InvalidArgumentException(\"Invalid section identifier in URL.\", self::INVALID_SECTION);\n            }\n        }\n\n        return $metaSection;\n    }\n\n    /**\n     * Get article\n     *\n     * @param  int          $articleNo\n     * @param  MetaLanguage $language\n     * @return MetaArticle\n     */\n    private function _getArticle($articleNo, MetaLanguage $language)\n    {\n        if (empty($articleNo)) {\n            return null;\n        }\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('getArticle', $articleNo, $language->number), 'article');\n        if ($cacheService->contains($cacheKey)) {\n             $metaArticle = $cacheService->fetch($cacheKey);\n        } else {\n            $articleObj = new Article($language->number, $articleNo);\n            if (!$articleObj->exists() || (!$this->m_preview && !$articleObj->isPublished())) {\n                throw new InvalidArgumentException(\"Invalid article identifier in URL.\", self::INVALID_ARTICLE);\n            }\n\n            $metaArticle = new MetaArticle($language->number, $articleObj->getArticleNumber());\n            $cacheService->save($cacheKey, $metaArticle);\n        }\n\n        return $metaArticle;\n    }\n\n    /**\n     * Get template\n     *\n     * @return MetaTemplate\n     */\n    private function _getTemplate()\n    {\n        $templateId = CampRequest::GetVar(CampRequest::TEMPLATE_ID);\n        $themePath = $this->m_issue->defined() ? $this->m_issue->theme_path : $this->m_publication->theme_path;\n        $template = new MetaTemplate(parent::getTemplate($templateId), $themePath);\n        if (!$template->defined()) {\n            throw new InvalidArgumentException(\"Invalid template in URL or no default template specified.\", self::INVALID_TEMPLATE);\n        }\n\n        CampTemplate::singleton()->config_dir = APPLICATION_PATH . '/../themes/' . $themePath . '_conf';\n\n        return $template;\n    }\n\n    /**\n     * Sets the URL values\n     *\n     * @param  Zend_Controller_Request_Abstract $request\n     * @return void|PEAR_Error\n     */\n    private function setURL(Zend_Controller_Request_Abstract $request)\n    {\n        $this->setQueryVar('acid', null);\n        $this->m_publication = $this->_getPublication();\n        $controller = $request->getParam('controller');\n        if ($controller != 'index') {\n            if ($controller == 'legacy' && $request->getParam('language') == false) {\n               $publication_service = \\Zend_Registry::get('container')->getService('newscoop.publication_service');\n               $language = $publication_service->getPublication()->getLanguage()->getCode();\n            } if ($request->getParam('language') !== false) {\n                $language = $request->getParam('language');\n            } else {\n                $language = $controller;\n            }\n        } else {\n            $language = $request->getParam('language');\n        }\n\n        if ($request->getParam('webcode')) {\n            if (!empty($language)) {\n                $webcodeLanguageId = Language::GetLanguageIdByCode($language);\n            } else {\n                $webcodeLanguageId = $this->m_publication->default_language->number;\n            }\n\n            $webcode = trim(trim($request->getParam('webcode'), '@+'));\n            $article = Zend_Registry::get('container')->getService('webcode')->findArticleByWebcode($webcode);\n            $article_no = null;\n            if ($article) {\n                $article_no = $article->getNumber();\n                $webcodeLanguageId = $article->getLanguageId();\n            }\n\n            $metaArticle = new MetaArticle($webcodeLanguageId, $article_no);\n            $this->m_article = $metaArticle;\n            if ($metaArticle->defined()) {\n                $this->m_language = $this->m_article->language;\n                $this->m_publication = $this->m_article->publication;\n            } else {\n                $this->m_language = $this->_getLanguage($metaArticle->language, $this->m_publication);\n            }\n            $this->m_issue = $this->m_article->issue;\n            $this->m_section = $this->m_article->section;\n        } else {\n            $this->m_language = $this->_getLanguage($language, $this->m_publication);\n            $this->m_issue = $this->_getIssue($request->getParam('issue'), $this->m_language, $this->m_publication);\n            $this->m_section = $this->_getSection($request->getParam('section'), $this->m_issue, $this->m_language, $this->m_publication);\n            $this->m_article = $this->_getArticle($request->getParam('articleNo'), $this->m_language);\n        }\n        $this->m_template = $this->_getTemplate();\n\n    }\n\n    /**\n     * Sets the URL values\n     *\n     * @param Symfony\\Component\\HttpFoundation\\Request $request\n     */\n    private function setURLFromSymfony($request)\n    {\n        $this->setQueryVar('acid', null);\n        $this->m_publication = $this->_getPublication();\n        $language = $request->get('language', 'en');\n\n        $this->m_language = $this->_getLanguage($language, $this->m_publication);\n        $this->m_issue = $this->_getIssue($request->get('issue'), $this->m_language, $this->m_publication);\n        $this->m_section = $this->_getSection($request->get('section'), $this->m_issue, $this->m_language, $this->m_publication);\n        $this->m_article = $this->_getArticle($request->get('articleNo'), $this->m_language);\n\n        $this->m_template = $this->_getTemplate();\n    }\n\n    /**\n     * Sets the URI path and query values based on given parameters.\n     *\n     * @param array   $p_params\n     *                           An array of valid URL parameters\n     * @param boolean $p_preview\n     *                           If true, will keep the preview parameters in the URL\n     *\n     * @return void\n     */\n    protected function buildURI(array &$p_params = array(), $p_preview = false)\n    {\n        if ($this->isValidCache()) {\n            return;\n        }\n\n        $parameter = count($p_params) > 0 ? strtolower(array_shift($p_params)) : null;\n\n        switch ($parameter) {\n            case 'language':\n            case 'publication':\n                $this->m_buildPath = $this->getURILanguage();\n                if ($p_preview) {\n                    $this->m_buildQueryArray = $this->getQueryArray(CampURI::$m_previewParameters);\n                } else {\n                    $this->m_buildQueryArray = array();\n                }\n                $p_params = array();\n                break;\n            case 'issue':\n                $this->m_buildPath = $this->getURIIssue();\n                if ($p_preview) {\n                    $this->m_buildQueryArray = $this->getQueryArray(CampURI::$m_previewParameters);\n                } else {\n                    $this->m_buildQueryArray = array();\n                }\n                $p_params = array();\n                break;\n            case 'section':\n                $this->m_buildPath = $this->getURISection();\n                if ($p_preview) {\n                    $this->m_buildQueryArray = $this->getQueryArray(CampURI::$m_previewParameters);\n                } else {\n                    $this->m_buildQueryArray = array();\n                }\n                $p_params = array();\n                break;\n            case 'article':\n                $this->m_buildPath = $this->getURIArticle();\n                if ($p_preview) {\n                    $this->m_buildQueryArray = $this->getQueryArray(CampURI::$m_previewParameters);\n                } else {\n                    $this->m_buildQueryArray = array();\n                }\n                $p_params = array();\n                break;\n            case 'template':\n            case 'id':\n                $option = isset($p_params[0]) ? array_shift($p_params) : null;\n                if (is_null($option)) {\n                    break;\n                }\n\n                if (is_null($this->_themePath)) {\n                    $themesService = \\Zend_Registry::get('container')->getService('newscoop_newscoop.themes_service');\n                    $this->_themePath = $themesService->getThemePath();\n                }\n\n                $pathRsc = new Resource();\n                $pathRsc->setName('buildPage');\n                $pathRsc->setPath($this->_themePath.$option);\n                $resourceId = new ResourceId('template_engine/classes/CampURIShortNames');\n                $pathRsc = $resourceId->getService(ISyncResourceService::NAME)->getSynchronized($pathRsc);\n                if (!is_null($pathRsc) && $pathRsc->exists()) {\n                    $this->m_buildQueryArray[CampRequest::TEMPLATE_ID] = $pathRsc->getId();\n                }\n                break;\n            default:\n                if (!empty($parameter)) {\n                    array_unshift($p_params, $parameter);\n                    $count = count($p_params);\n                    parent::buildURI($p_params, $p_preview);\n                    if (count($p_params) == $count) {\n                        array_shift($p_params);\n                    }\n                }\n        }\n\n        if (count($p_params) > 0) {\n            $this->buildURI($p_params);\n        }\n\n        if (!is_null($this->m_language) && $this->m_language->defined() && is_null($this->m_buildPath)) {\n            $this->m_buildPath = '/' . $this->m_language->code . '/';\n            if (!is_null($this->m_issue) && $this->m_issue->defined()) {\n                $this->m_buildPath .= $this->m_issue->url_name . '/';\n                if (!is_null($this->m_section) && $this->m_section->defined()) {\n                    $this->m_buildPath .= $this->m_section->url_name . '/';\n                    if (!is_null($this->m_article) && $this->m_article->defined()) {\n                        $this->m_buildPath = $this->getURIArticle();\n                    }\n                }\n            }\n        }\n\n        if (is_null($this->m_buildQuery)) {\n            $this->m_buildQuery = CampURI::QueryArrayToString($this->m_buildQueryArray);\n        }\n        $this->validateCache(true);\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/classes/CampURITemplatePath.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Holman Romero <holman.romero@gmail.com>\n * @author Mugur Rus <mugur.rus@gmail.com>\n * @copyright 2007 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Publication.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Issue.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Section.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Article.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Alias.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/classes/CampURI.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/classes/CampTemplate.php');\n\n/**\n * Class CampURITemplatePath\n */\nclass CampURITemplatePath extends CampURI\n{\n    /**\n     * Parameters that are restricted to CampURITemplatePath object use.\n     *\n     * @var array\n     */\n    static private $m_restrictedParameters = array(\n    CampRequest::LANGUAGE_ID,\n    CampRequest::PUBLICATION_ID,\n    CampRequest::ISSUE_NR,\n    CampRequest::SECTION_NR,\n    CampRequest::ARTICLE_NR\n    );\n\n    /**\n     * Parameters used for the language definition\n     *\n     * @var array\n     */\n    static private $m_languageParameters = array(\n    CampRequest::LANGUAGE_ID\n    );\n\n    /**\n     * Parameters used for the issue definition\n     *\n     * @var array\n     */\n    static private $m_issueParameters = array(\n    CampRequest::LANGUAGE_ID,\n    CampRequest::ISSUE_NR\n    );\n\n    /**\n     * Parameters used for the section definition\n     *\n     * @var array\n     */\n    static private $m_sectionParameters = array(\n    CampRequest::LANGUAGE_ID,\n    CampRequest::ISSUE_NR,\n    CampRequest::SECTION_NR\n    );\n\n    /**\n     * Parameters used for the article definition\n     *\n     * @var array\n     */\n    static private $m_articleParameters = array(\n    CampRequest::LANGUAGE_ID,\n    CampRequest::ISSUE_NR,\n    CampRequest::SECTION_NR,\n    CampRequest::ARTICLE_NR\n    );\n\n    /**\n     * Templates directory\n     *\n     * @var string\n     */\n    private $m_templatesPrefix = null;\n\n    /**\n     * Class constructor\n     *\n     * @param string $p_uri\n     *      The requested URI\n     */\n    public function __construct($p_uri = null)\n    {\n        parent::__construct($p_uri);\n\n        $this->setURLType(URLTYPE_TEMPLATE_PATH);\n        $subdir = $this->m_config->getSetting('SUBDIR');\n        $this->m_templatesPrefix = empty($subdir) ? 'tpl' : substr($subdir, 1) . '/tpl';\n        $res = $this->setURL();\n        if (PEAR::isError($res)) {\n            $this->m_validURI = false;\n            $this->m_errorCode = $res->getCode();\n            if ($this->m_errorCode == self::INVALID_TEMPLATE\n            && !is_null($this->m_publication)) {\n            \t$tplId = CampSystem::GetInvalidURLTemplate($this->m_publication->identifier, null, null, !$this->m_preview);\n            \t$template = new MetaTemplate($tplId);\n            \tif ($template->defined()) {\n            \t\t$this->m_template = $template;\n            \t}\n            }\n            CampTemplate::singleton()->trigger_error($res->getMessage());\n        } else {\n            foreach (CampURITemplatePath::$m_restrictedParameters as $parameter) {\n                $this->setQueryVar($parameter);\n            }\n            $this->m_validURI = true;\n        }\n        $this->validateCache(false);\n    } // fn __construct\n\n\n    public function getQueryArray(array $p_keepParameters = array(),\n    array $p_removeParameters = array()) {\n        $queryArray = parent::getQueryArray();\n        if (!is_null($this->m_language) && $this->m_language->defined()) {\n            $queryArray[CampRequest::LANGUAGE_ID] = $this->m_language->number;\n        }\n        if (!is_null($this->m_issue) && $this->m_issue->defined()) {\n            $queryArray[CampRequest::ISSUE_NR] = $this->m_issue->number;\n        }\n        if (!is_null($this->m_section) && $this->m_section->defined()) {\n            $queryArray[CampRequest::SECTION_NR] = $this->m_section->number;\n        }\n        if (!is_null($this->m_article) && $this->m_article->defined()) {\n            $queryArray[CampRequest::ARTICLE_NR] = $this->m_article->number;\n        }\n        if (count($p_removeParameters) > 0) {\n            $removeKeys = array_combine($p_removeParameters,\n            array_fill(0, count($p_removeParameters, null)));\n            $queryArray = array_diff_key($queryArray, $removeKeys);\n        }\n        if (count($p_keepParameters)) {\n            $keepKeys = array_combine($p_keepParameters,\n            array_fill(0, count($p_keepParameters), null));\n            $queryArray = array_intersect_key($queryArray, $keepKeys);\n        }\n        return $queryArray;\n    }\n\n\n\n    /**\n     * Gets the language URI query path.\n     *\n     * @return string\n     *      The language URI query path\n     */\n    private function getURILanguage()\n    {\n        $uriString = '';\n        if ($this->m_language->defined()) {\n            $uriString = CampRequest::LANGUAGE_ID.'='.$this->m_language->number;\n        }\n\n        return $uriString;\n    } // fn getURILanguage\n\n\n    /**\n     * Gets the publication URI query path.\n     * It fetches the publication URL name from URI context.\n     *\n     * @return string\n     *      The publication URI query path\n     */\n    private function getURIPublication()\n    {\n        $uriString = $this->getURILanguage();\n        if (empty($uriString)) {\n            return null;\n        }\n\n        return $uriString;\n    } // fn getURIPublication\n\n\n    /**\n     * Gets the issue URI query path.\n     * It fetches the issue URL name from URI or current issue list if any.\n     *\n     * @return string\n     *      The issue URI query path\n     */\n    private function getURIIssue()\n    {\n        $uriString = $this->getURIPublication();\n        if (empty($uriString)) {\n            return null;\n        }\n\n        if ($this->m_issue->defined()) {\n            $uriString .= '&'.CampRequest::ISSUE_NR.'='.$this->m_issue->number;\n        } else {\n            $uriString = null;\n        }\n\n        return $uriString;\n    } // fn getURIIssue\n\n\n    /**\n     * Gets the section URI query path.\n     * It fetches the section URL name from URI or current section list if any.\n     *\n     * @return string\n     *      The section URI query path\n     */\n    private function getURISection()\n    {\n        $uriString = $this->getURIIssue();\n        if (empty($uriString)) {\n            return null;\n        }\n\n        if ($this->m_section->defined()) {\n            $uriString .= '&'.CampRequest::SECTION_NR.'='.$this->m_section->number;\n        } else {\n            $uriString = null;\n        }\n\n        return $uriString;\n    } // fn getURISection\n\n\n    /**\n     * Gets the article URI query path.\n     * It fetches the article URL name from URI or current article list if any.\n     *\n     * @return string\n     *      The article URI query path\n     */\n    private function getURIArticle()\n    {\n        $uriString = $this->getURISection();\n        if (empty($uriString)) {\n            return null;\n        }\n\n        if ($this->m_article->defined()) {\n            $uriString .= '&'.CampRequest::ARTICLE_NR.'='.$this->m_article->number;\n        } else {\n            $uriString = null;\n        }\n\n        return $uriString;\n    } // fn getURISection\n\n\n    /**\n     * @return array\n     *      An array containing all the form parameters to print out\n     */\n    public function getFormParameters()\n    {\n        $parameters = array();\n        $queryParameters = $this->getQueryArray();\n        foreach ($queryParameters as $paramName => $paramValue) {\n            $parameters[$i++] = array('name' => $paramName, 'value' => $paramValue);\n        }\n\n        return $parameters;\n    } // fn getFormParameters\n\n\n    /**\n     * Returns true if the given parameter is restricted and can not\n     * be set from outside the URL object.\n     *\n     * @param string $p_parameterName\n     * @return bool\n     */\n    public function isRestrictedParameter($p_parameterName)\n    {\n        return in_array($p_parameterName, CampURITemplatePath::$m_restrictedParameters);\n    }\n\n\n\n    /**\n     * Sets the URL values.\n     *\n     * @return void\n     */\n    private function setURL()\n    {\n        $this->setQueryVar('tpl', null);\n        $this->setQueryVar('acid', null);\n\n        $this->m_publication = null;\n        $this->m_language = null;\n        $this->m_issue = null;\n        $this->m_section = null;\n        $this->m_article = null;\n\n        // gets the publication object based on site name (URI host)\n        $alias = preg_replace('/^'.$this->getScheme().':\\/\\//', '', $this->getBase());\n        $aliasObj = new Alias($alias);\n        if ($aliasObj->exists()) {\n            $this->m_publication = new MetaPublication($aliasObj->getPublicationId());\n        }\n        if (is_null($this->m_publication) || !$this->m_publication->defined()) {\n            return new PEAR_Error(\"Invalid site name '$alias' in URL.\", self::INVALID_SITE_NAME);\n        }\n\n        // sets the language identifier\n        if (CampRequest::GetVar(CampRequest::LANGUAGE_ID) > 0) {\n            $this->m_language = new MetaLanguage(CampRequest::GetVar(CampRequest::LANGUAGE_ID));\n        } else {\n            $this->m_language = new MetaLanguage($this->m_publication->default_language->number);\n        }\n        if (!$this->m_language->defined()) {\n            return new PEAR_Error(\"Invalid language identifier in URL.\", self::INVALID_LANGUAGE);\n        }\n\n        // sets the issue number\n        if (CampRequest::GetVar(CampRequest::ISSUE_NR) > 0) {\n            $this->m_issue = new MetaIssue($this->m_publication->identifier,\n            $this->m_language->number, CampRequest::GetVar(CampRequest::ISSUE_NR));\n        } else {\n            $issueObj = Issue::GetCurrentIssue($this->m_publication->identifier,\n            $this->m_language->number);\n            $this->m_issue = new MetaIssue($this->m_publication->identifier,\n            $this->m_language->number, $issueObj->getIssueNumber());\n        }\n        if (!$this->m_issue->defined()) {\n            return new PEAR_Error(\"Invalid issue identifier in URL.\", self::INVALID_ISSUE);\n        }\n\n        // sets the section if any\n        if (CampRequest::GetVar(CampRequest::SECTION_NR) > 0) {\n            $this->m_section = new MetaSection($this->m_publication->identifier,\n            $this->m_issue->number, $this->m_language->number,\n            CampRequest::GetVar(CampRequest::SECTION_NR));\n            if (!$this->m_section->defined()) {\n                return new PEAR_Error(\"Invalid section identifier in URL.\", self::INVALID_SECTION);\n            }\n        }\n\n        // sets the article if any\n        if (CampRequest::GetVar(CampRequest::ARTICLE_NR) > 0) {\n            $this->m_article = new MetaArticle($this->m_language->number,\n            CampRequest::GetVar(CampRequest::ARTICLE_NR));\n            if (!$this->m_article->defined()) {\n                return new PEAR_Error(\"Invalid article identifier in URL.\", self::INVALID_ARTICLE);\n            }\n        }\n\n        $this->m_template = new MetaTemplate($this->getTemplate($this->readTemplate()), $this->getThemePath());\n        if (!$this->m_template->defined()) {\n            return new PEAR_Error(\"Invalid template in URL or no default template specified.\",\n            self::INVALID_TEMPLATE);\n        }\n\n        $this->m_validURI = true;\n        $this->validateCache(false);\n    } // fn setURL\n\n\n    /**\n     * Returns the template name from URI.\n     *\n     * @return null|string $template\n     *      null on failure, otherwise the template name\n     */\n    private function readTemplate()\n    {\n        if ($this->getPath() == '' || $this->getPath() == '/') {\n            return null;\n        }\n\n        $template = str_replace($this->m_templatesPrefix . '/', '', trim($this->getPath(), '/'));\n        $validName = strpos($template, '.tpl');\n        if (!$validName) {\n            return null;\n        }\n\n        return $template;\n    } // fn readTemplate\n\n\n    /**\n     * Sets the URI path and query values based on given parameters.\n     *\n     * @param array $p_params\n     *      An array of valid URL parameters\n     * @param boolean $p_preview\n     *      If true, will keep the preview parameters in the URL\n     *\n     * @return void\n     */\n    protected function buildURI(array &$p_params = array(), $p_preview = false)\n    {\n        if ($this->isValidCache()) {\n            return;\n        }\n\n        $parameter = count($p_params) > 0 ? strtolower(array_shift($p_params)) : null;\n\n        switch ($parameter) {\n            case 'language':\n                $this->m_buildPath = $this->buildPath(CampSystem::GetTemplate($this->m_language->number,\n                $this->m_publication->identifier));\n                $keepParams = CampURITemplatePath::$m_languageParameters;\n                if ($p_preview) {\n                    $keepParams = array_merge(CampURI::$m_previewParameters, $keepParams);\n                }\n                $this->m_buildQueryArray = $this->getQueryArray($keepParams);\n                $p_params = array();\n                break;\n            case 'publication':\n                $this->m_buildPath = $this->buildPath(CampSystem::GetTemplate($this->m_language->number,\n                $this->m_publication->identifier));\n                $keepParams = CampURITemplatePath::$m_languageParameters;\n                if ($p_preview) {\n                    $keepParams = array_merge(CampURI::$m_previewParameters, $keepParams);\n                }\n                $this->m_buildQueryArray = $this->getQueryArray($keepParams);\n                $p_params = array();\n                break;\n            case 'issue':\n                $this->m_buildPath = $this->buildPath(CampSystem::GetIssueTemplate($this->m_language->number,\n                $this->m_publication->identifier, $this->m_issue->number));\n                $keepParams = CampURITemplatePath::$m_issueParameters;\n                if ($p_preview) {\n                    $keepParams = array_merge(CampURI::$m_previewParameters, $keepParams);\n                }\n                $this->m_buildQueryArray = $this->getQueryArray($keepParams);\n                $p_params = array();\n                break;\n            case 'section':\n                $this->m_buildPath = $this->buildPath(CampSystem::GetSectionTemplate($this->m_language->number,\n                $this->m_publication->identifier, $this->m_issue->number, $this->m_section->number));\n                $keepParams = CampURITemplatePath::$m_sectionParameters;\n                if ($p_preview) {\n                    $keepParams = array_merge(CampURI::$m_previewParameters, $keepParams);\n                }\n                $this->m_buildQueryArray = $this->getQueryArray($keepParams);\n                $p_params = array();\n                break;\n            case 'article':\n                $this->m_buildPath = $this->buildPath(CampSystem::GetArticleTemplate($this->m_language->number,\n                $this->m_publication->identifier, $this->m_issue->number, $this->m_section->number));\n                $keepParams = CampURITemplatePath::$m_articleParameters;\n                if ($p_preview) {\n                    $keepParams = array_merge(CampURI::$m_previewParameters, $keepParams);\n                }\n                $this->m_buildQueryArray = $this->getQueryArray($keepParams);\n                $p_params = array();\n                break;\n            case 'template':\n                $option = isset($p_params[0]) ? array_shift($p_params) : null;\n                if (!is_null($option) && $this->isValidTemplate($option)) {\n                    $this->m_buildPath = $this->buildPath($option);\n                }\n                break;\n            default:\n                if (!empty($parameter)) {\n                    array_unshift($p_params, $parameter);\n                    $count = count($p_params);\n                    parent::buildURI($p_params, $p_preview);\n                    if (count($p_params) == $count) {\n                        array_shift($p_params);\n                    }\n                }\n        }\n\n        if (count($p_params) > 0) {\n            $this->buildURI($p_params);\n        }\n\n        if (is_null($this->m_buildPath)) {\n        \t$template = $this->getTemplate();\n            if (empty($template)) {\n                CampTemplate::singleton()->trigger_error('Invalid template in context');\n                return;\n            }\n            $this->m_buildPath = $this->buildPath($template);\n        }\n\n        if (is_null($this->m_buildQuery)) {\n            $this->m_buildQuery = CampURI::QueryArrayToString($this->m_buildQueryArray);\n        }\n\n        $this->validateCache(true);\n    } // fn buildURI\n\n\n    private function buildPath($p_template) {\n        if (!empty($p_template)) {\n            return '/'.$this->m_templatesPrefix.'/'.$p_template;\n        }\n        return '/';\n    }\n\n} // class CampURITemplatePath\n\n?>"
  },
  {
    "path": "newscoop/template_engine/classes/CampVersion.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Holman Romero <holman.romero@gmail.com>\n * @copyright 2010 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\n\n/**\n * Class CampVersion\n */\nfinal class CampVersion\n{\n    /**\n     * @var string\n     */\n    private $m_organization = 'Sourcefabric z.ú.';\n\n    /**\n     * @var string\n     */\n    private $m_package = 'Newscoop';\n\n    /**\n     * @var string\n     */\n    private $m_release = '4.4.7';\n\n    /**\n     * @var string\n     */\n    private $m_devStatus = '';\n\n    /**\n     * @var string\n     */\n    private $m_codeName = 'Richard';\n\n    /**\n     * @var string\n     */\n    private $m_releaseDate = '2016-02-08';\n\n    /**\n     * @var string\n     */\n    private $m_license = 'GNU GPL v.3';\n\n    /**\n     * @var string\n     */\n    private $m_website = 'http://www.sourcefabric.org';\n\n    public function getVersion() {\n        $version = $this->m_release;\n        if (!empty($this->m_devStatus)) {\n            $version .= '-' . $this->m_devStatus;\n        }\n        if (!empty($this->m_codeName)) {\n            $version .= ' \"' . $this->m_codeName . '\"';\n        }\n        return $version;\n    }\n\n    public function getOrganization()\n    {\n        return $this->m_organization;\n    }\n\n    public function getPackage()\n    {\n        return $this->m_package;\n    }\n\n    public function getRelease()\n    {\n        return $this->m_release;\n    }\n\n    public function getDevelopmentStatus()\n    {\n        return $this->m_devStatus;\n    }\n\n    public function getCodeName()\n    {\n        return $this->m_codeName;\n    }\n\n    public function getReleaseDate()\n    {\n        return $this->m_releaseDate;\n    }\n\n    public function getCopyright()\n    {\n        $c = '&copy;&nbsp;' . $this->getCopyrightYear() . '&nbsp;<a href=\"' . $this->m_website\n            . '\" target=\"_blank\">' . $this->m_organization . '</a>';\n        return $c;\n    }\n\n    public function getLicense()\n    {\n        return $this->m_license;\n    }\n\n    public function getWebURL()\n    {\n        return $this->m_website;\n    }\n\n    public function getCopyrightYear()\n    {\n        return date(\"Y\");\n    }\n\n    function getFullInfo()\n    {\n        $text  = $this->m_package.' '.$this->getVersion();\n        $text .= ' '.$this->m_releaseDate;\n        $text .= ' '.$this->m_organization;\n        return $text;\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/classes/Captcha.php",
    "content": "<?php\n/**\n * @package Newscoop\n */\n\nabstract class Captcha\n{\n    /**\n     * Loads the captcha handler specified by the given name.\n     * @param $p_handler\n     * @return object\n     */\n    public static function factory($p_handler)\n    {\n        $pluginName = strtolower($p_handler);\n        $path = WWW_DIR . '/plugins/' . $pluginName . '/classes';\n        $filePath = \"$path/Captcha_$p_handler.php\";\n        if (!file_exists($filePath)) {\n            throw new InvalidCaptchaHandler($p_handler);\n        }\n\n        // check whether the plugin exists and is enabled\n        $plugin = new CampPlugin($pluginName);\n        if (!$plugin->exists() || !$plugin->isEnabled()) {\n            return NULL;\n        }\n\n        require_once($filePath);\n        $className = \"Captcha_$p_handler\";\n        if (!class_exists($className)) {\n            throw new InvalidCaptchaHandler($p_handler);\n        }\n        $captchaObj = new $className;\n        return $captchaObj;\n    }\n\n    /**\n     * @return void\n     */\n    abstract public function render();\n\n    /**\n     * @return void\n     */\n    abstract public function validate();\n\n}\n\nclass InvalidCaptchaHandler extends Exception {}\n"
  },
  {
    "path": "newscoop/template_engine/classes/ComparisonOperation.php",
    "content": "<?php\n\nrequire_once('Operator.php');\n\n\n/**\n * Defines a comparison operation; holds data for the left and right\n * operands and for the operator.\n */\nclass ComparisonOperation\n{\n\t/**\n\t * left operand\n\t *\n\t * @var mix\n\t */\n\tprivate $m_leftOperand;\n\n\t/**\n\t * operator\n\t *\n\t * @var object of type Operator\n\t */\n\tprivate $m_operator;\n\n\t/**\n\t * right operand\n\t *\n\t * @var mix\n\t */\n\tprivate $m_rightOperand;\n\n\t/**\n\t * constructor\n\t *\n\t * @param mix $p_leftOperand\n\t * @param object of type Operator $p_operator\n\t * @param mix $p_rightOperand\n\t */\n\tpublic function __construct($p_leftOperand, $p_operator, $p_rightOperand)\n\t{\n\t\t$this->m_leftOperand = $p_leftOperand;\n\t\t$this->m_operator = $p_operator;\n\t\t$this->m_rightOperand = $p_rightOperand;\n\t}\n\n\t/**\n\t * Returns the left operand\n\t *\n\t * @return mix\n\t */\n\tpublic function getLeftOperand()\n\t{\n\t\treturn $this->m_leftOperand;\n\t}\n\n\t/**\n\t * Returns the operator\n\t *\n\t * @return object of type Operator\n\t */\n\tpublic function getOperator()\n\t{\n\t\treturn $this->m_operator;\n\t}\n\n\t/**\n\t * Returns the right operand\n\t *\n\t * @return mix\n\t */\n\tpublic function getRightOperand()\n\t{\n\t    // some values have to be computed\n\t    switch (strtolower($this->m_rightOperand)) {\n\t        \n\t       case 'now()': \n\t           $this->m_rightOperand = strftime('%Y-%m-%d %H:%M:%S');\n\t       break;\n\t       \n\t       case 'curdate()':\n\t           $this->m_rightOperand = strftime('%Y-%m-%d');    \n\t       break;\n\t       \n\t       case 'curtime()':\n\t           $this->m_rightOperand = strftime('%H:%M:%S');\n\t       break;\n\t       \n\t       case 'current()':\n\t           // this value indicates that the left operand have to compared with the value from current context\n\t           // e.g. language_number is current()\n\t           \n\t           $Context = CampTemplate::singleton()->context();\n\t           $object = strtolower($this->m_leftOperand);\n\t           \n\t           switch ($object) {\n\t               \n\t               case 'language':\n\t               case 'publication':\n\t               case 'issue':\n\t               case 'section':\n\t               case 'article': \n\t                   $this->m_rightOperand = $Context->$object->number;\n\t               break; \n\t               \n\t               case 'publication':   \n\t                   $this->m_rightOperand = $Context->$object->identifier;\n\t               break;                     \n\t           }\n\t       break; \n\t    }\n\t    \n\t\treturn $this->m_rightOperand;\n\t}\n\n    public function __toString()\n    {\n        return $this->getLeftOperand() .'_'. $this->getOperator()->getName() .'_'. $this->getRightOperand();\n    }\n}\n\n\n?>"
  },
  {
    "path": "newscoop/template_engine/classes/Exceptions.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\nfinal class InvalidFunctionException extends Exception {\n    private $m_className = null;\n\n    private $m_methodName = null;\n\n\n    public function __construct($p_className, $p_methodName)\n    {\n        parent::__construct(\"$p_methodName() method is not available for the $p_className class\", 0);\n        $this->m_className = $p_className;\n        $this->m_methodName = $p_methodName;\n    } // fn __construct\n\n\n    public function getClassName()\n    {\n        return $this->m_className;\n    } // fn getClassName\n\n\n    public function getMethodName()\n    {\n        return $this->m_methodName;\n    } // fn getMethodName\n\n} // class InvalidFunctionException\n\n\nfinal class InvalidPropertyHandlerException extends Exception {\n    private $m_className = null;\n\n    private $m_propertyName = null;\n\n\n    public function __construct($p_className, $p_propertyName)\n    {\n        parent::__construct(\"No handler was assigned for property $p_propertyName in class $p_className\", 0);\n        $this->m_className = $p_className;\n        $this->m_propertyName = $p_propertyName;\n    } // fn __construct\n\n\n    public function getClassName()\n    {\n        return $this->m_className;\n    } // fn getClassName\n\n\n    public function getPropertyName()\n    {\n        return $this->m_propertyName;\n    } // fn getPropertyName\n\n} // class InvalidPropertyHandlerException\n\n\nfinal class InvalidObjectException extends Exception {\n    private $m_className = null;\n\n\n    public function __construct($p_className)\n    {\n        parent::__construct(\"the $p_className() object is not a valid resource\", 0);\n        $this->m_className = $p_className;\n    } // fn __construct\n\n\n    public function getClassName()\n    {\n        return $this->m_className;\n    } // fn getClassName\n\n}// class InvalidObjectException\n\n\nfinal class InvalidOperatorException extends Exception {\n    private $m_operatorName = null;\n\n    private $m_typeName = null;\n\n\n    public function __construct($p_operatorName, $p_typeName)\n    {\n        parent::__construct(\"The name '$p_operatorName' is not a valid operator for the type $p_typeName.\", 0);\n        $this->m_operatorName = $p_operatorName;\n        $this->m_typeName = $p_typeName;\n    } // fn __construct\n\n\n    public function getOperatorName()\n    {\n        return $this->m_operatorName;\n    } // fn getOperatorName\n\n\n    public function getTypeName()\n    {\n        return $this->m_typeName;\n    } // fn getTypeName\n\n}// class InvalidOperatorException\n\n\nfinal class InvalidValueException extends Exception {\n    private $m_value = null;\n    private $m_type = null;\n\n\n    public function __construct($p_value, $p_type)\n    {\n        parent::__construct(\"the value $p_value is not a valid $p_type\", 0);\n        $this->m_value = $p_value;\n        $this->m_type = $p_type;\n    } // fn __construct\n\n\n    public function getValue()\n    {\n        return $this->m_value;\n    } // fn getValue\n\n\n    public function getType()\n    {\n        return $this->m_type;\n    } // fn getType\n\n}// class InvalidValueException\n\n?>"
  },
  {
    "path": "newscoop/template_engine/classes/ImagesList.php",
    "content": "<?php\n\nrequire_once('ListObject.php');\n\n\n/**\n * ImagesList class\n *\n */\nclass ImagesList extends ListObject\n{\n    private static $s_orderFields = array('default',\n                                          'bydescription',\n                                          'byphotographer',\n                                          'bydate',\n                                          'bylastupdate'\n                                    );\n\n\t/**\n\t * Creates the list of objects. Sets the parameter $p_hasNextElements to\n\t * true if this list is limited and elements still exist in the original\n\t * list (from which this was truncated) after the last element of this\n\t * list.\n\t *\n\t * @param int $p_start\n\t * @param int $p_limit\n\t * @param array $p_parameters\n\t * @param int &$p_count\n\t * @return array\n\t */\n\tprotected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count)\n\t{\n\t    $articleImagesList = Image::GetList($this->m_constraints, $this->m_order, $p_start, $p_limit, $p_count);\n\t    $metaImagesList = array();\n\t    foreach ($articleImagesList as $image) {\n\t        $metaImagesList[] = new MetaImage($image->getImageId());\n\t    }\n\t    return $metaImagesList;\n\t}\n\n\t/**\n\t * Processes list constraints passed in an array.\n\t *\n\t * @param array $p_constraints\n\t * @return array\n\t */\n\tprotected function ProcessConstraints(array $p_constraints)\n\t{\n\t\treturn $p_constraints;\n\t}\n\n\t/**\n\t * Processes order constraints passed in an array.\n\t *\n\t * @param array $p_order\n\t * @return array\n\t */\n\tprotected function ProcessOrder(array $p_order)\n\t{\n\t    $order = array();\n\t    $state = 1;\n\t    foreach ($p_order as $word) {\n\t        switch ($state) {\n                case 1: // reading the order field\n\t                if (array_search(strtolower($word), self::$s_orderFields) === false) {\n\t                    CampTemplate::singleton()->trigger_error(\"invalid order field $word in list_images, order parameter\");\n\t                } else {\n    \t                $orderField = $word;\n                        $state = 2;\n\t                }\n\t                break;\n                case 2: // reading the order direction\n                    if (MetaOrder::IsValid($word)) {\n                        $order[] = array('field'=>$orderField, 'dir'=>$word);\n                    } else {\n                        CampTemplate::singleton()->trigger_error(\"invalid order $word of attribute $orderField in list_images, order parameter\");\n                    }\n                    $state = 1;\n\t                break;\n\t        }\n\t    }\n\t    if ($state != 1) {\n            CampTemplate::singleton()->trigger_error(\"unexpected end of order parameter in list_images\");\n\t    }\n\n\t    return $order;\n\t}\n\n\t/**\n\t * Processes the input parameters passed in an array; drops the invalid\n\t * parameters and parameters with invalid values. Returns an array of\n\t * valid parameters.\n\t *\n\t * @param array $p_parameters\n\t * @return array\n\t */\n\tprotected function ProcessParameters(array $p_parameters)\n\t{\n\t\t$parameters = array();\n    \tforeach ($p_parameters as $parameter=>$value) {\n    \t\t$parameter = strtolower($parameter);\n    \t\tswitch ($parameter) {\n    \t\t\tcase 'length':\n    \t\t\tcase 'columns':\n    \t\t\tcase 'name':\n    \t\t\tcase 'order':\n    \t\t\t\tif ($parameter == 'length' || $parameter == 'columns') {\n    \t\t\t\t\t$intValue = (int)$value;\n    \t\t\t\t\tif (\"$intValue\" != $value || $intValue < 0) {\n    \t\t\t\t\t\tCampTemplate::singleton()->trigger_error(\"invalid value $value of parameter $parameter in statement list_images\");\n    \t\t\t\t\t}\n\t    \t\t\t\t$parameters[$parameter] = (int)$value;\n    \t\t\t\t} else {\n\t    \t\t\t\t$parameters[$parameter] = $value;\n    \t\t\t\t}\n    \t\t\t\tbreak;\n    \t\t\tcase 'description':\n    \t\t\tcase 'photographer':\n    \t\t\tcase 'place':\n    \t\t\tcase 'caption':\n    \t\t\tcase 'date':\n    \t\t\tcase 'type':\n\t\t\t\t\t$operator = new Operator('is', 'string');\n\t\t\t\t\t$this->m_constraints[] = new ComparisonOperation($parameter, $operator, $value);\n\t\t\t\t\tbreak;\n    \t\t\tcase 'start_date':\n\t\t\t\t\t$operator = new Operator('greater_equal', 'string');\n\t\t\t\t\t$this->m_constraints[] = new ComparisonOperation('date', $operator, $value);\n    \t\t\t\tbreak;\n    \t\t\tcase 'end_date':\n\t\t\t\t\t$operator = new Operator('smaller_equal', 'string');\n\t\t\t\t\t$this->m_constraints[] = new ComparisonOperation('date', $operator, $value);\n    \t\t\t\tbreak;\n    \t\t\tcase 'description_like':\n    \t\t\tcase 'photographer_like':\n    \t\t\tcase 'place_like':\n    \t\t\tcase 'caption_like':\n\t\t\t\t\t$operator = new Operator('match', 'string');\n\t\t\t\t\t$listParam = substr($parameter, 0, strlen($parameter) - strlen('_like'));\n\t\t\t\t\t$this->m_constraints[] = new ComparisonOperation($listParam, $operator, $value);\n\t\t\t\t\tbreak;\n    \t\t\tcase 'search':\n\t\t\t\t\t$operator = new Operator('match', 'string');\n\t\t\t\t\t$this->m_constraints[] = new ComparisonOperation($parameter, $operator, $value);\n    \t\t\t\tbreak;\n    \t\t\tcase 'local':\n    \t\t\t\t$opName = strtolower($value) == 'true' ? 'is' : 'not';\n\t\t\t\t\t$operator = new Operator($opName, 'string');\n\t\t\t\t\t$this->m_constraints[] = new ComparisonOperation($parameter, $operator, 'local');\n    \t\t\t\tbreak;\n                case 'user':\n                    $operator = new Operator('is', 'int');\n                    $this->m_constraints[] = new ComparisonOperation($parameter, $operator, $value);\n                    break;\n    \t\t\tdefault:\n    \t\t\t\tCampTemplate::singleton()->trigger_error(\"invalid parameter $parameter in list_images\", $p_smarty);\n    \t\t}\n    \t}\n\n    \t$this->m_constraints[] = new ComparisonOperation('status', new Operator('is', 'string'), 'approved');\n\n        return $parameters;\n\t}\n}\n\n?>"
  },
  {
    "path": "newscoop/template_engine/classes/IssuesList.php",
    "content": "<?php\n\nrequire_once('ListObject.php');\n\n\n/**\n * IssuesList class\n *\n */\nclass IssuesList extends ListObject\n{\n    private static $s_parameters = array('number'=>array('field'=>'Number', 'type'=>'integer'),\n                                         'name'=>array('field'=>'Name', 'type'=>'string'),\n                                         'publish_date'=>array('field'=>'PublicationDate',\n                                                               'type'=>'date'),\n                                         'publish_year'=>array('field'=>'YEAR(PublicationDate)',\n                                                               'type'=>'integer'),\n                                         'publish_month'=>array('field'=>'MONTH(PublicationDate)',\n                                                                'type'=>'integer'),\n                                         'publish_mday'=>array('field'=>'DAYOFMONTH(PublicationDate)',\n                                                               'type'=>'integer'),\n                                         'year'=>array('field'=>'YEAR(PublicationDate)',\n                                                   'type'=>'integer'),\n                                         'mon_nr'=>array('field'=>'MONTH(PublicationDate)',\n                                                   'type'=>'integer'),\n                                         'mday'=>array('field'=>'DAYOFMONTH(PublicationDate)',\n                                                   'type'=>'integer'),\n                                         'yday'=>array('field'=>'DAYOFYEAR(PublicationDate)',\n                                                   'type'=>'integer'),\n                                         'wday'=>array('field'=>'DAYOFWEEK(PublicationDate)',\n                                                   'type'=>'integer'),\n                                         'hour'=>array('field'=>'HOUR(PublicationDate)',\n                                                   'type'=>'integer'),\n                                         'min'=>array('field'=>'MINUTE(PublicationDate)',\n                                                   'type'=>'integer'),\n                                         'sec'=>array('field'=>'SECOND(PublicationDate)',\n                                                   'type'=>'integer')\n                                   );\n\n    private static $s_orderFields = array(\n                                          'bynumber',\n                                          'byname',\n                                          'bydate',\n                                          'bycreationdate',\n                                          'bypublishdate'\n                                    );\n\n\t/**\n\t * Creates the list of objects. Sets the parameter $p_hasNextElements to\n\t * true if this list is limited and elements still exist in the original\n\t * list (from which this was truncated) after the last element of this\n\t * list.\n\t *\n\t * @param int $p_start\n\t * @param int $p_limit\n\t * @param array $p_parameters\n\t * @param int &$p_count\n\t * @return array\n\t */\n\tprotected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count)\n\t{\n\t    $issuesList = Issue::GetList($this->m_constraints, $this->m_order, $p_start, $p_limit, $p_count, false, false);\n\t    $metaIssuesList = array();\n\t    foreach ($issuesList as $issue) {\n\t        $metaIssuesList[] = new MetaIssue($issue['publication_id'],\n\t                                          $issue['language_id'],\n\t                                          $issue['number']);\n\t    }\n\t    return $metaIssuesList;\n\t}\n\n\t/**\n\t * Processes list constraints passed in an array.\n\t *\n\t * @param array $p_constraints\n\t * @return array\n\t */\n\tprotected function ProcessConstraints(array $p_constraints)\n\t{\n\t    $parameters = array();\n\t    $state = 1;\n\t    $attribute = null;\n\t    $operator = null;\n\t    $value = null;\n\t    foreach ($p_constraints as $word) {\n\t        switch ($state) {\n\t            case 1: // reading the parameter name\n\t                if (!array_key_exists($word, IssuesList::$s_parameters)) {\n\t                    CampTemplate::singleton()->trigger_error(\"invalid attribute $word in statement list_issues, constraints parameter\");\n\t                    return false;\n\t                }\n\t                $attribute = $word;\n\t                $state = 2;\n\t                break;\n\t            case 2: // reading the operator\n\t                $type = IssuesList::$s_parameters[$attribute]['type'];\n\t                try {\n\t                    $operator = new Operator($word, $type);\n\t                }\n\t                catch (InvalidOperatorException $e) {\n\t                    CampTemplate::singleton()->trigger_error(\"invalid operator $word of parameter constraints.$attribute in statement list_issues\");\n\t                    return false;\n\t                }\n\t                $state = 3;\n\t                break;\n\t            case 3: // reading the value to compare against\n\t                $type = IssuesList::$s_parameters[$attribute]['type'];\n\t                $metaClassName = 'Meta'.strtoupper($type[0]).strtolower(substr($type, 1));\n\t                try {\n\t                    $value = new $metaClassName($word);\n    \t                $value = $word;\n       \t                $comparisonOperation = new ComparisonOperation($attribute, $operator, $value);\n    \t                $parameters[] = $comparisonOperation;\n\t                } catch (InvalidValueException $e) {\n\t                    CampTemplate::singleton()->trigger_error(\"invalid value $word of parameter constraints.$attribute in statement list_issues\");\n\t                    return false;\n\t                }\n\t                $state = 1;\n\t                break;\n\t        }\n\t    }\n\t    if ($state != 1) {\n            CampTemplate::singleton()->trigger_error(\"unexpected end of constraints parameter in list_issues\");\n            return false;\n\t    }\n\n\t\treturn $parameters;\n\t}\n\n\t/**\n\t * Processes order constraints passed in an array.\n\t *\n\t * @param array $p_order\n\t * @return array\n\t */\n\tprotected function ProcessOrder(array $p_order)\n\t{\n\t    $order = array();\n\t    $state = 1;\n\t    foreach ($p_order as $word) {\n\t        switch ($state) {\n                case 1: // reading the order field\n\t                if (array_search(strtolower($word), IssuesList::$s_orderFields) === false) {\n\t                    CampTemplate::singleton()->trigger_error(\"invalid order field $word in list_issues, order parameter\");\n\t                } else {\n    \t                $orderField = $word;\n                        $state = 2;\n\t                }\n\t                break;\n                case 2: // reading the order direction\n                    if (MetaOrder::IsValid($word)) {\n                        $order[] = array('field'=>$orderField, 'dir'=>$word);\n                    } else {\n                        CampTemplate::singleton()->trigger_error(\"invalid order $word of attribute $orderField in list_issues, order parameter\");\n                    }\n                    $state = 1;\n\t                break;\n\t        }\n\t    }\n\t    if ($state != 1) {\n            CampTemplate::singleton()->trigger_error(\"unexpected end of order parameter in list_issues\");\n\t    }\n\n\t    return $order;\n\t}\n\n\t/**\n\t * Processes the input parameters passed in an array; drops the invalid\n\t * parameters and parameters with invalid values. Returns an array of\n\t * valid parameters.\n\t *\n\t * @param array $p_parameters\n\t * @return array\n\t */\n\tprotected function ProcessParameters(array $p_parameters)\n\t{\n\t\t$parameters = array();\n    \tforeach ($p_parameters as $parameter=>$value) {\n    \t\t$parameter = strtolower($parameter);\n    \t\tswitch ($parameter) {\n    \t\t\tcase 'length':\n    \t\t\tcase 'columns':\n    \t\t\tcase 'name':\n    \t\t\tcase 'constraints':\n    \t\t\tcase 'order':\n    \t\t\t\tif ($parameter == 'length' || $parameter == 'columns') {\n    \t\t\t\t\t$intValue = (int)$value;\n    \t\t\t\t\tif (\"$intValue\" != $value || $intValue < 0) {\n    \t\t\t\t\t\tCampTemplate::singleton()->trigger_error(\"invalid value $value of parameter $parameter in statement list_issues\");\n    \t\t\t\t\t}\n\t    \t\t\t\t$parameters[$parameter] = (int)$value;\n    \t\t\t\t} else {\n\t    \t\t\t\t$parameters[$parameter] = $value;\n    \t\t\t\t}\n    \t\t\t\tbreak;\n    \t\t\tdefault:\n    \t\t\t\tCampTemplate::singleton()->trigger_error(\"invalid parameter $parameter in list_issues\", $p_smarty);\n    \t\t}\n    \t}\n\n        $operator = new Operator('is', 'integer');\n        $context = CampTemplate::singleton()->context();\n        $this->m_constraints[] = new ComparisonOperation('IdPublication', $operator,\n                                                         $context->publication->identifier);\n        if ($context->language->defined) {\n            $this->m_constraints[] = new ComparisonOperation('IdLanguage', $operator,\n                                                             $context->language->number);\n        }\n        if (!$context->preview) {\n            $this->m_constraints[] = new ComparisonOperation('published', $operator, 'true');\n        }\n\n    \treturn $parameters;\n\t}\n}\n\n?>"
  },
  {
    "path": "newscoop/template_engine/classes/LanguagesList.php",
    "content": "<?php\n\nrequire_once('ListObject.php');\n\n\n/**\n * LanguagesList class\n *\n */\nclass LanguagesList extends ListObject\n{\n    private static $s_orderFields = array(\n                                          'bynumber',\n                                          'byname',\n                                          'byenglish_name',\n                                          'bycode'\n                                    );\n\n\n    /**\n\t * Creates the list of objects. Sets the parameter $p_hasNextElements to\n\t * true if this list is limited and elements still exist in the original\n\t * list (from which this was truncated) after the last element of this\n\t * list.\n\t *\n\t * @param int $p_start\n\t * @param int $p_limit\n\t * @param array $p_parameters\n\t * @param int &$p_count\n\t * @return array\n\t */\n\tprotected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count)\n\t{\n\t    $context = CampTemplate::singleton()->context();\n\n        if ($p_parameters['of_article']) {\n        \t$metaLanguagesList = $context->article->languages_list(\n        \t$p_parameters['exclude_current'], $this->m_order);\n        } elseif ($p_parameters['of_issue']) {\n        \t$metaLanguagesList = $context->issue->languages_list(\n        \t$p_parameters['exclude_current'], $this->m_order);\n        } elseif ($p_parameters['of_publication']) {\n        \t$metaLanguagesList = $context->publication->languages_list(\n        \t$p_parameters['exclude_current'], $this->m_order);\n        } else {\n        \tif ($p_parameters['exclude_current']) {\n        \t\t$excludeList = array($context->language->number);\n        \t} else {\n        \t\t$excludeList = array();\n        \t}\n        \t$languagesList = Language::GetLanguages(null, null, null,\n        \t$excludeList, $this->m_order);\n        \t$metaLanguagesList = array();\n        \tforeach ($languagesList as $language) {\n        \t\t$metaLanguagesList[] = new MetaLanguage($language->getLanguageId());\n        \t}\n        }\n\n\t    return $metaLanguagesList;\n\t}\n\n\n\t/**\n\t * Processes list constraints passed in an array.\n\t *\n\t * @param array $p_constraints\n\t * @return array\n\t */\n\tprotected function ProcessConstraints(array $p_constraints)\n\t{\n\t    return array();\n\t}\n\n\n\t/**\n\t * Processes order constraints passed in an array.\n\t *\n\t * @param array $p_order\n\t * @return array\n\t */\n\tprotected function ProcessOrder(array $p_order)\n\t{\n\t    $order = array();\n\t    $state = 1;\n\t    foreach ($p_order as $word) {\n\t        switch ($state) {\n                case 1: // reading the order field\n\t                if (array_search(strtolower($word), LanguagesList::$s_orderFields) === false) {\n\t                    CampTemplate::singleton()->trigger_error(\"invalid order field $word in list_languages, order parameter\");\n\t                } else {\n    \t                $orderField = $word;\n                        $state = 2;\n\t                }\n\t                break;\n                case 2: // reading the order direction\n                    if (MetaOrder::IsValid($word)) {\n                        $order[] = array('field'=>$orderField, 'dir'=>$word);\n                    } else {\n                        CampTemplate::singleton()->trigger_error(\"invalid order $word of attribute $orderField in list_languages, order parameter\");\n                    }\n                    $state = 1;\n\t                break;\n\t        }\n\t    }\n\t    if ($state != 1) {\n            CampTemplate::singleton()->trigger_error(\"unexpected end of order parameter in list_languages\");\n\t    }\n\n\t    return $order;\n\t}\n\n\n\t/**\n\t * Processes the input parameters passed in an array; drops the invalid\n\t * parameters and parameters with invalid values. Returns an array of\n\t * valid parameters.\n\t *\n\t * @param array $p_parameters\n\t * @return array\n\t */\n\tprotected function ProcessParameters(array $p_parameters)\n\t{\n\t\t$parameters = array();\n\t\t$parameters['of_publication'] = false;\n        $parameters['of_issue'] = false;\n\t\t$parameters['of_section'] = false;\n        $parameters['of_article'] = false;\n        $parameters['exclude_current'] = false;\n        foreach ($p_parameters as $parameter=>$value) {\n    \t\t$parameter = strtolower($parameter);\n    \t\tswitch ($parameter) {\n    \t\t\tcase 'length':\n    \t\t\tcase 'columns':\n    \t\t\tcase 'name':\n    \t\t\tcase 'order':\n    \t\t\t\tif ($parameter == 'length' || $parameter == 'columns') {\n    \t\t\t\t\t$intValue = (int)$value;\n    \t\t\t\t\tif (\"$intValue\" != $value || $intValue < 0) {\n    \t\t\t\t\t\tCampTemplate::singleton()->trigger_error(\"invalid value $value of parameter $parameter in statement list_languages\");\n    \t\t\t\t\t}\n\t    \t\t\t\t$parameters[$parameter] = (int)$value;\n    \t\t\t\t} else {\n\t    \t\t\t\t$parameters[$parameter] = $value;\n    \t\t\t\t}\n    \t\t\t\tbreak;\n                case 'of_publication':\n                case 'of_issue':\n                case 'of_article':\n                case 'exclude_current':\n                \t$value = isset($value) && strtolower($value) != 'false';\n                    $parameters[$parameter] = $value;\n                    break;\n    \t\t    default:\n    \t\t\t\tCampTemplate::singleton()->trigger_error(\"invalid parameter $parameter in list_languages\", $p_smarty);\n    \t\t}\n    \t}\n    \treturn $parameters;\n\t}\n\n\n    protected function getCacheKey()\n    {\n        if (is_null($this->m_cacheKey)) {\n            $this->m_cacheKey = __CLASS__ . '__' . serialize($this->m_parameters)\n            . '__' . $this->m_start . '__' . $this->m_limit . '__' . $this->m_columns;\n        }\n        return $this->m_cacheKey;\n    }\n}\n\n?>"
  },
  {
    "path": "newscoop/template_engine/classes/ListObject.php",
    "content": "<?php\n\nrequire_once('Operator.php');\nrequire_once('ComparisonOperation.php');\n\n\n/**\n * DO NOT DELETE THIS CLASS. Deleting this class will generate hazardous\n * behavior of the iterator: after reaching the array end, the next()\n * method will rewind the pointer.\n *\n */\nclass MyArrayObject extends ArrayObject\n{\n\tpublic function getIterator()\n\t{\n\t\treturn new ArrayIterator($this);\n\t}\n}\n\n\n/**\n * List of template objects (e.g. list issue, list section etc.)\n *\n */\nabstract class ListObject\n{\n    /**\n     * The identifier of the list\n     *\n     * @var string\n     */\n    private $m_id;\n\n\t/**\n\t * The name of the list\n\t *\n\t * @var string\n\t */\n\tprivate $m_name;\n\n\t/**\n\t * The start element number from which to generate the list.\n\t *\n\t * @var int\n\t */\n\tprotected $m_start;\n\n\t/**\n\t * The maximum number of objects in the list, 0 for no limit\n\t *\n\t * @var int\n\t */\n\tprotected $m_limit;\n\n\t/**\n\t * True if the generated list has more elements than $this->m_limit\n\t *\n\t * @var bool\n\t */\n\tprivate $m_hasNextElements;\n\n\t/**\n\t * The number of columns (for generating tables)\n\t *\n\t * @var int\n\t */\n\tprotected $m_columns;\n\n\t/**\n\t * The initial constraints string.\n\t *\n\t * @var string\n\t */\n\tprivate $m_constraintsStr;\n\n\t/**\n\t * The initial order constraints string.\n\t *\n\t * @var string\n\t */\n\tprivate $m_orderStr;\n\n\tprotected $m_parameters;\n\n\t/**\n\t * The constraints array\n\t *\n\t * @var array\n\t */\n\tprotected $m_constraints = array();\n\n\t/**\n\t * The order constraints array\n\t *\n\t * @var array\n\t */\n\tprotected $m_order;\n\n\t/**\n\t * The list of objects.\n\t *\n\t * @var array\n\t */\n\tprotected $m_objects;\n\n\t/**\n\t * The total number of elements in the list without the limits.\n\t *\n\t * @var integer\n\t */\n\tprotected $m_totalCount;\n\n\t/**\n\t * The default iterator for the current object.\n\t *\n\t * @var object\n\t */\n\tprotected $m_defaultIterator = null;\n\n\tprotected $m_cacheKey = null;\n\n\tprotected $m_defaultTTL = 600;\n\n\n\t/**\n\t * constructor\n\t * For blank lists the start element index ($p_start) is smaller\n\t * than 0.\n\t *\n\t * @param int $p_start\n\t * @param string $p_parameters\n\t */\n\tpublic function __construct($p_start = 0, $p_parameters = array())\n\t{\n\t\t/**\n\t\t * For blank lists the start element index ($p_start) is smaller\n\t\t * than 0.\n\t\t */\n\t\tif ($p_start < 0) {\n\t\t\t$this->m_start = -1;\n\t\t\t$this->m_limit = -1;\n\t\t\t$this->m_columns = 0;\n\t\t\t$this->m_objects = new MyArrayObject(array());\n\t\t\treturn;\n\t\t}\n\n\t\t$this->m_id = null;\n\n\t\t/**\n\t\t * Processes the input parameters passed in an array; drops the invalid\n\t\t * parameters and parameters with invalid values. Returns an array of\n\t\t * valid parameters.\n\t\t */\n\t\t$parameters = $this->ProcessParameters($p_parameters);\n\n\t\t/**\n\t\t * Set common parameters:\n\t\t * - start element index (m_start)\n\t\t * - maximum list length (m_limit)\n\t\t * - list columns (m_columns)\n\t\t * - constraints string (m_constraintsStr)\n\t\t * - order string (m_orderStr)\n\t\t * - list name (m_name)\n\t\t */\n\t\t$this->m_start = is_numeric($p_start) ? (int)$p_start : 0;\n\t\t$this->m_limit = isset($parameters['length']) ? (int)$parameters['length'] : 0;\n\t\t$this->m_columns = isset($parameters['columns']) ? (int)$parameters['columns'] : 0;\n\t\t$this->m_constraintsStr = isset($parameters['constraints']) ? $parameters['constraints'] : '';\n\t\t$this->m_orderStr = isset($parameters['order']) ? $parameters['order'] : '';\n\t\t$name = isset($parameters['name']) ? $parameters['name'] : '';\n\t\t$this->m_name = is_string($name) && trim($name) != '' ? $name : $this->defaultName();\n\n\t\t/**\n\t\t * Process the list constraints.\n\t\t */\n\t\t$constraints = $this->ProcessConstraints(self::ParseConstraintsString($this->m_constraintsStr));\n        if ($constraints === false || $parameters === false) {\n            $this->m_totalCount = 0;\n            $this->m_objects = new MyArrayObject(array());\n            $this->m_hasNextElements = false;\n            return;\n        }\n        $this->m_parameters = $parameters;\n        if (isset($constraints)) {\n            $this->m_constraints = array_merge($this->m_constraints, $constraints);\n        }\n\n\t\t/**\n\t\t * Process order constraints.\n\t\t */\n\t\t$this->m_order = $this->ProcessOrder(ListObject::ParseConstraintsString($this->m_orderStr));\n\n\t\t$objects = $this->CreateList($this->m_start, $this->m_limit, $parameters, $this->m_totalCount);\n\t\tif (!is_array($objects)) {\n\t\t    $objects = array();\n\t\t}\n  \t\t$this->m_objects = new MyArrayObject($objects);\n  \t\t$this->m_hasNextElements = $this->m_totalCount > ($this->m_start + $this->getLength());\n\t}\n\n\n\t/**\n\t * Creates the list of objects. Sets the parameter $p_hasNextElements to\n\t * true if this list is limited and elements still exist in the original\n\t * list (from which this was truncated) after the last element of this\n\t * list.\n\t *\n\t * @param int $p_start\n\t * @param int $p_limit\n\t * @param array &$p_parameters\n\t * @param int $p_count\n\t * @return array\n\t */\n\tabstract protected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count);\n\n\t/**\n\t * Processes list constraints passed in an array.\n\t *\n\t * @param array $p_constraints\n\t * @return array\n\t */\n\tabstract protected function ProcessConstraints(array $p_constraints);\n\n\t/**\n\t * Processes order constraints passed in an array.\n\t *\n\t * @param array $p_order\n\t * @return array\n\t */\n\tabstract protected function ProcessOrder(array $p_order);\n\n\t/**\n\t * Processes the input parameters passed in an array; drops the invalid\n\t * parameters and parameters with invalid values. Returns an array of\n\t * valid parameters.\n\t *\n\t * @param array $p_parameters\n\t * @return array\n\t */\n\tabstract protected function ProcessParameters(array $p_parameters);\n\n\tprotected function getCacheKey()\n\t{\n\t\tif (is_null($this->m_cacheKey)) {\n\t\t\t$this->m_cacheKey = get_class($this) . '__' . serialize($this->m_constraints)\n\t\t\t. '__' . serialize($this->m_order) . '__' . $this->m_start\n\t\t\t. '__' . $this->m_limit . '__' . $this->m_columns;\n\t\t}\n\t\treturn $this->m_cacheKey;\n\t}\n\n\n    /**\n     * Copies the given object\n     *\n     * @param object $p_source\n     * @return object\n     */\n    private function duplicateObject($p_source)\n    {\n        foreach ($p_source as $key=>$value) {\n            $this->$key = $value;\n        }\n    }\n\n\n\t/**\n\t * Generates a unique name for this list object.\n\t *\n\t * @return string\n\t */\n\tpublic function defaultName()\n\t{\n\t\treturn sha1(time());\n\t}\n\n\t/**\n\t * Returns the default iterator of this list.\n\t *\n\t * @return object of type ArrayIterator\n\t */\n\tpublic function defaultIterator()\n\t{\n\t\tif (!isset($this->m_defaultIterator)) {\n\t\t\t$this->m_defaultIterator = $this->getIterator();\n\t\t}\n\t\t\n\t\treturn $this->m_defaultIterator;\n\t}\n\n\t/**\n\t * Returns the current element of the default iterator.\n\t *\n\t * @return object\n\t */\n\tpublic function getCurrent()\n\t{\n\t\tif ($this->isEmpty()) {\n\t\t\treturn null;\n\t\t}\n\t\treturn $this->defaultIterator()->current();\n\t}\n\n\t/**\n\t * Returns the index of the current element of the default iterator.\n\t *\n\t * @return int\n\t */\n\tpublic function getIndex()\n\t{\n\t\tif ($this->isEmpty()) {\n\t\t\treturn 0;\n\t\t}\n\t\treturn 1 + $this->m_start + $this->defaultIterator()->key();\n\t}\n\n\t/**\n\t * Returns an iterator for this list.\n\t *\n\t * @return object of type ArrayIterator\n\t */\n\tpublic function getIterator()\n\t{\n\t\treturn $this->m_objects->getIterator();\n\t}\n\n\t/**\n\t * Returns the list name.\n\t *\n\t * @return string\n\t */\n\tpublic function getName()\n\t{\n\t\treturn $this->m_name;\n\t}\n\n\t/**\n\t * Returns the length of the list.\n\t *\n\t * @return int\n\t */\n\tpublic function getLength()\n\t{\n\t\treturn $this->m_objects->count();\n\t}\n\n\t/**\n\t * Return true if the list is blank (see the constructor documentation).\n\t *\n\t * @return bool\n\t */\n\tpublic function isBlank()\n\t{\n\t\treturn $this->m_start < 0;\n\t}\n\n\t/**\n\t * Return true if the list is empty.\n\t *\n\t * @return bool\n\t */\n\tpublic function isEmpty()\n\t{\n\t\treturn $this->m_objects->count() == 0;\n\t}\n\n\t/**\n\t * Returns true if the list is limited to a certain number of elements.\n\t *\n\t * @return bool\n\t */\n\tpublic function isLimited()\n\t{\n\t\treturn $this->m_limit > 0;\n\t}\n\n\t/**\n\t * Returns the maximum number of elements, 0 for limitless.\n\t *\n\t * @return int\n\t */\n\tpublic function getLimit()\n\t{\n\t\treturn $this->m_limit;\n\t}\n\n\t/**\n\t * Returns the index of the start element of this list in the\n\t * original list from which this was truncated.\n\t *\n\t * @return int\n\t */\n\tpublic function getStart()\n\t{\n\t\treturn $this->m_start;\n\t}\n\n\t/**\n\t * Returns the start element index of the previous group of items\n\t * from the list. Returns null if the list had no limit.\n\t *\n\t * @return int\n\t */\n\tprivate function getPrevStart()\n\t{\n\t    if ($this->m_limit == 0) {\n\t        return null;\n\t    }\n\t    return ($this->m_start >= $this->m_limit ? ($this->m_start - $this->m_limit) : 0);\n\t}\n\n\t/**\n\t * Returns the start element index of the next group of items\n\t * from the list. Returns null if the list had no limit.\n\t *\n\t * @return int\n\t */\n\tprivate function getNextStart()\n\t{\n\t    if ($this->m_limit == 0) {\n\t        return null;\n\t    }\n\t    return $this->m_start + $this->m_limit;\n\t}\n\n\t/**\n\t * Returns the index of the last element of this list in the\n\t * original list from which this was truncated.\n\t *\n\t * @return int\n\t */\n\tpublic function getEnd()\n\t{\n\t\treturn $this->m_start + $this->m_objects->count();\n\t}\n\n\t/**\n\t * Returns true if the index of the start element in the\n\t * original list - from which this was truncated - is greater\n\t * than 0.\n\t *\n\t * @return bool\n\t */\n\tpublic function hasPreviousElements()\n\t{\n\t\treturn $this->m_start > 0;\n\t}\n\n\t/**\n\t * Returns true if this list is limited and elements still exist\n\t * in the original list (from which this was truncated) after the\n\t * last element of this list.\n\t *\n\t * @return bool\n\t */\n\tpublic function hasNextElements()\n\t{\n\t\treturn $this->m_hasNextElements;\n\t}\n\n\t/**\n\t * Returns the total number of elements in the list without the limits.\n\t *\n\t * @return unknown\n\t */\n\tpublic function getTotalCount()\n\t{\n\t    return $this->m_totalCount;\n\t}\n\n\t/**\n\t * Returns the column number for the given iterator\n\t *\n\t * @param int $p_iterator\n\t */\n\tpublic function getColumn($p_iterator = null)\n\t{\n\t\tif (!isset($p_iterator)) {\n\t\t\t$p_iterator = $this->defaultIterator();\n\t\t}\n\t\tif ($this->m_columns == 0 || $p_iterator->count() == 0) {\n\t\t\treturn 0;\n\t\t}\n\t\treturn 1 + ($p_iterator->key() % $this->m_columns);\n\t}\n\n\t/**\n\t * Returns the row number for the given iterator\n\t *\n\t * @param int $p_iterator\n\t */\n\tpublic function getRow($p_iterator = null)\n\t{\n\t\tif (!isset($p_iterator)) {\n\t\t\t$p_iterator = $this->defaultIterator();\n\t\t}\n\t\tif ($this->m_columns == 0 || $this->m_columns == 1) {\n\t\t\treturn (1 + $p_iterator->key());\n\t\t}\n\t\treturn 1 + (int)($p_iterator->key() / $this->m_columns);\n\t}\n\n\t/**\n\t * Returns the number of columns.\n\t *\n\t * @return int\n\t */\n\tpublic function getColumns()\n\t{\n\t\treturn $this->m_columns;\n\t}\n\n\t/**\n\t * Returns the constraints string.\n\t *\n\t * @return string\n\t */\n\tpublic function getConstraintsString()\n\t{\n\t\treturn $this->m_constraintsStr;\n\t}\n\n\t/**\n\t * Returns the order string.\n\t *\n\t * @return string\n\t */\n\tpublic function getOrderString()\n\t{\n\t\treturn $this->m_orderStr;\n\t}\n\n    /**\n     * Overloaded method call to give access to the list properties.\n     *\n     * @param string $p_element - the property name\n     * @return mix - the property value\n     */\n\tpublic function __get($p_property)\n\t{\n\t    $p_property = strtolower($p_property);\n\t    switch ($p_property) {\n\t        case 'column':\n\t            return $this->getColumn($this->defaultIterator());\n\t        case 'columns':\n\t            return $this->getColumns();\n\t        case 'current':\n\t            return $this->getCurrent();\n\t        case 'end':\n\t            return $this->getEnd();\n\t        case 'index':\n\t            return $this->getIndex();\n\t        case 'length':\n\t            return $this->getLength();\n\t        case 'limit':\n\t            return $this->getLimit();\n\t        case 'name':\n\t            return $this->getName();\n\t        case 'row':\n\t            return $this->getRow();\n\t        case 'start':\n\t            return $this->getStart();\n\t        case 'count':\n\t            return $this->getTotalCount();\n\t        case 'at_beginning':\n\t            return $this->getIndex() == ($this->getStart() + 1);\n\t        case 'at_end';\n\t            return $this->getIndex() == $this->getEnd();\n\t        case 'has_next_elements':\n\t            return $this->hasNextElements();\n\t        case 'has_previous_elements':\n\t            return $this->hasPreviousElements();\n\t        case 'previous_start':\n\t            return $this->getPrevStart();\n\t        case 'next_start':\n\t            return $this->getNextStart();\n\t        case 'id':\n\t            return $this->m_id;\n\t        default:\n    \t        $errorMessage = INVALID_PROPERTY_STRING . \" $p_property \"\n        \t\t\t\t        . OF_OBJECT_STRING . ' list';\n\t            CampTemplate::singleton()->trigger_error($errorMessage);\n\t    }\n\t}\n\n    /**\n     * Sets the list identifier\n     *\n     * @param string $p_id\n     */\n\tpublic function setId($p_id) {\n\t    $this->m_id = $p_id;\n\t}\n\n\t/**\n\t * Parses the constraints string and returns an array of words\n\t *\n\t * @param string $p_constraintsString\n\t * @return array\n\t */\n\tpublic static function ParseConstraintsString($p_constraintsString)\n\t{\n\t    if (empty($p_constraintsString)) {\n\t        return array();\n\t    }\n\n\t    $words = array();\n\t    $escaped = false;\n\t    $lastWord = '';\n\t    foreach (str_split($p_constraintsString) as $char) {\n\t        if (preg_match('/[\\s]/', $char) && !$escaped) {\n\t            if (strlen($lastWord) > 0) {\n\t            \tif ($lastWord == \"''\") {\n\t            \t\t$lastWord = '';\n\t            \t}\n\t            \t$words[] = $lastWord;\n\t                $lastWord = '';\n\t            }\n\t        } elseif ($char == \"\\\\\" && !$escaped) {\n\t            $escaped = true;\n\t        } else {\n\t            $lastWord .= $char;\n    \t        $escaped = false;\n\t        }\n\t    }\n\t    if (strlen($lastWord) > 0) {\n\t    \tif ($lastWord == \"''\") {\n\t    \t\t$lastWord = '';\n\t    \t}\n\t        $words[] = $lastWord;\n\t    }\n\t    return $words;\n\t}\n}\n\n?>\n"
  },
  {
    "path": "newscoop/template_engine/classes/MapArticlesList.php",
    "content": "<?php\n\nrequire_once('ListObject.php');\n\n\n/**\n * MapArticlesList class\n *\n */\nclass MapArticlesList extends ListObject\n{\n    /**\n     * Creates the list of objects. Sets the parameter $p_hasNextElements to\n     * true if this list is limited and elements still exist in the original\n     * list (from which this was truncated) after the last element of this\n     * list.\n     *\n     * @param int $p_start\n     * @param int $p_limit\n     * @param array $p_parameters\n     * @param int &$p_count\n     * @return array\n     */\n    protected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count)\n    {\n        $p_count = 0;\n\n        if (!is_numeric($p_start)) {\n            $p_start = 0;\n        }\n        $p_start = 0 + $p_start;\n        if (0 > $p_start) {$p_start = 0;}\n\n        if (!is_numeric($p_limit)) {\n            $p_limit = 0;\n        }\n        $p_limit = 0 + $p_limit;\n        if (0 > $p_limit) {$p_limit = 0;}\n\n        $campsite = CampTemplate::singleton()->context();\n\n        $mapArticlesList = $campsite->map_dynamic_meta_article_objects;\n        if (!is_array($mapArticlesList)) {\n            return array();\n        }\n        $p_count = count($mapArticlesList);\n\n        if ($p_limit) {\n            $mapArticlesList = array_slice($mapArticlesList, $p_start, $p_limit);\n        }\n        if ($p_start && (!$p_limit)) {\n            $mapArticlesList = array_slice($mapArticlesList, $p_start);\n        }\n\n        $metaMapArticlesList = array();\n        foreach ($mapArticlesList as $article) {\n            $metaMapArticlesList[] = $article;\n        }\n\n        return $metaMapArticlesList;\n\n    }\n\n    /**\n     * Processes list constraints passed in an array.\n     *\n     * @param array $p_constraints\n     * @return array\n     */\n    protected function ProcessConstraints(array $p_constraints)\n    {\n        return array();\n    }\n\n    /**\n     * Processes order constraints passed in an array.\n     *\n     * @param array $p_order\n     * @return array\n     */\n    protected function ProcessOrder(array $p_order)\n    {\n        return array();\n    }\n\n    /**\n     * Processes the input parameters passed in an array; drops the invalid\n     * parameters and parameters with invalid values. Returns an array of\n     * valid parameters.\n     *\n     * @param array $p_parameters\n     * @return array\n     */\n    protected function ProcessParameters(array $p_parameters)\n    {\n        $parameters = array();\n        foreach ($p_parameters as $parameter => $value) {\n            $parameter = strtolower($parameter);\n            switch ($parameter) {\n                case 'length':\n                case 'columns':\n                case 'name':\n                    if ($parameter == 'length' || $parameter == 'columns') {\n                        $intValue = (int)$value;\n                        if (\"$intValue\" != $value || $intValue < 0) {\n                            CampTemplate::singleton()->trigger_error(\"invalid value $value of parameter $parameter in statement list_article_locations\");\n                        }\n                        $parameters[$parameter] = (int)$value;\n                    } else {\n                        $parameters[$parameter] = $value;\n                    }\n                    break;\n                default:\n                    CampTemplate::singleton()->trigger_error(\"invalid parameter $parameter in list_article_locations\", $p_smarty);\n            }\n        }\n        return $parameters;\n    }\n}\n\n?>\n"
  },
  {
    "path": "newscoop/template_engine/classes/MapLocationsList.php",
    "content": "<?php\n\nrequire_once('ListObject.php');\n\n\n/**\n * MapLocationsList class\n *\n */\nclass MapLocationsList extends ListObject\n{\n    /**\n     * Creates the list of objects. Sets the parameter $p_hasNextElements to\n     * true if this list is limited and elements still exist in the original\n     * list (from which this was truncated) after the last element of this\n     * list.\n     *\n     * @param int $p_start\n     * @param int $p_limit\n     * @param array $p_parameters\n     * @param int &$p_count\n     * @return array\n     */\n    protected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count)\n    {\n        $p_count = 0;\n\n        if (!is_numeric($p_start)) {\n            $p_start = 0;\n        }\n        $p_start = 0 + $p_start;\n        if (0 > $p_start) {$p_start = 0;}\n\n        if (!is_numeric($p_limit)) {\n            $p_limit = 0;\n        }\n        $p_limit = 0 + $p_limit;\n        if (0 > $p_limit) {$p_limit = 0;}\n\n        $campsite = CampTemplate::singleton()->context();\n\n        $mapLocationsList = $campsite->map_dynamic_points_objects;\n        if (!is_array($mapLocationsList)) {\n            return array();\n        }\n        if ($campsite->map_dynamic_tot_points) {\n            $p_count = $campsite->map_dynamic_tot_points;\n        }\n\n        if ($p_limit) {\n            $mapLocationsList = array_slice($mapLocationsList, $p_start, $p_limit);\n        }\n        if ($p_start && (!$p_limit)) {\n            $mapLocationsList = array_slice($mapLocationsList, $p_start);\n        }\n\n        $metaLocationsList = array();\n        foreach ($mapLocationsList as $location) {\n            $metaLocationsList[] = new MetaMapLocation($location);\n        }\n        return $metaLocationsList;\n    }\n\n    /**\n     * Processes list constraints passed in an array.\n     *\n     * @param array $p_constraints\n     * @return array\n     */\n    protected function ProcessConstraints(array $p_constraints)\n    {\n        return array();\n    }\n\n    /**\n     * Processes order constraints passed in an array.\n     *\n     * @param array $p_order\n     * @return array\n     */\n    protected function ProcessOrder(array $p_order)\n    {\n        return array();\n    }\n\n    /**\n     * Processes the input parameters passed in an array; drops the invalid\n     * parameters and parameters with invalid values. Returns an array of\n     * valid parameters.\n     *\n     * @param array $p_parameters\n     * @return array\n     */\n    protected function ProcessParameters(array $p_parameters)\n    {\n        $parameters = array();\n        foreach ($p_parameters as $parameter => $value) {\n            $parameter = strtolower($parameter);\n            switch ($parameter) {\n                case 'length':\n                case 'columns':\n                case 'name':\n                    if ($parameter == 'length' || $parameter == 'columns') {\n                        $intValue = (int)$value;\n                        if (\"$intValue\" != $value || $intValue < 0) {\n                            CampTemplate::singleton()->trigger_error(\"invalid value $value of parameter $parameter in statement list_article_locations\");\n                        }\n                        $parameters[$parameter] = (int)$value;\n                    } else {\n                        $parameters[$parameter] = $value;\n                    }\n                    break;\n                default:\n                    CampTemplate::singleton()->trigger_error(\"invalid parameter $parameter in list_article_locations\", $p_smarty);\n            }\n        }\n        return $parameters;\n    }\n}\n\n?>\n"
  },
  {
    "path": "newscoop/template_engine/classes/Operator.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Holds metadata of an operator.\n */\nclass Operator\n{\n\t/**\n\t * The name of the operator\n\t *\n\t * @var string\n\t */\n\tprivate $m_name;\n\n\t/**\n\t * The type of the operands\n\t *\n\t * @var string\n\t */\n\tprivate $m_type;\n\n\t/**\n\t * The symbols of the operator for different output formats (SQL, PHP etc.)\n\t *\n\t * @var array\n\t */\n\tprivate static $s_symbols = array('sql' => array('is' => '=',\n                                                     'smaller_equal' => '<=',\n                                                     'greater_equal' => '>=',\n                                                     'smaller' => '<',\n                                                     'greater' => '>',\n                                                     'not' => '<>',\n                                                     'like' => 'like',\n\t\t\t\t\t\t\t\t\t\t\t\t\t 'match'=> 'match',\n                                                     'in' => 'IN'\n                                               ),\n                                      'php' => array('is' => '==',\n                                                     'smaller_equal' => '<=',\n                                                     'greater_equal' => '>=',\n                                                     'smaller' => '<',\n                                                     'greater' => '>',\n                                                     'not' => '!='\n                                               )\n\t                            );\n\n\t/**\n\t * The list of operators corresponding to the operand types\n\t *\n\t * @var array\n\t */\n\tprivate static $s_typeOperators = array('integer'=>array('is',\n                                                             'smaller_equal',\n                                                             'greater_equal',\n                                                             'smaller',\n                                                             'greater',\n                                                             'not',\n                                                             'in'\n                                                       ),\n                                            'string'=>array('is',\n\t                                                        'smaller_equal',\n\t                                                        'greater_equal',\n\t                                                        'smaller',\n\t                                                        'greater',\n\t                                                        'not',\n\t                                                        'like',\n                                                       \t\t'match',\n                                                            'in'\n\t                                                  ),\n                                            'boolean'=>array('is',\n\t                                                      'not'\n\t                                                ),\n                                            'date'=>array('is',\n\t                                                      'smaller_equal',\n\t                                                      'greater_equal',\n\t                                                      'smaller',\n\t                                                      'greater',\n\t                                                      'not'\n\t                                                ),\n                                            'datetime'=>array('is',\n\t                                                          'smaller_equal',\n\t                                                          'greater_equal',\n\t                                                          'smaller',\n\t                                                          'greater',\n\t                                                          'not'\n\t                                                    ),\n                                            'time'=>array('is',\n\t                                                      'smaller_equal',\n\t                                                      'greater_equal',\n\t                                                      'smaller',\n\t                                                      'greater',\n\t                                                      'not'\n\t                                                ),\n                                            'timestamp'=>array('is',\n\t                                                           'smaller_equal',\n\t                                                           'greater_equal',\n\t                                                           'smaller',\n\t                                                           'greater',\n\t                                                           'not'\n\t                                                     ),\n                                            'switch'=>array('is',\n\t                                                        'not'\n\t                                                  ),\n                                            'topic'=>array('is',\n\t                                                       'not'\n\t                                                 )\n\t                                  );\n\n\t/**\n\t * The default symbol type\n\t *\n\t * @var string\n\t */\n\tprivate static $s_defaultSymbolType = 'sql';\n\n\t/**\n\t * constructor\n\t *\n\t * @param string $p_name\n\t * @param string $p_type\n\t */\n\tpublic function __construct($p_name, $p_type = 'string')\n\t{\n\t    $p_name = strtolower($p_name);\n\t    $p_type = strtolower($p_type);\n\t    if (!isset($p_type) || !array_key_exists($p_type, Operator::$s_typeOperators)) {\n\t        $p_type = 'string';\n\t    }\n\t    if (array_search($p_name, Operator::$s_typeOperators[$p_type]) === false) {\n\t        throw new InvalidOperatorException($p_name, $p_type);\n\t    }\n\t\t$this->m_name = $p_name;\n\t\t$this->m_type = $p_type;\n\t}\n\n\t/**\n\t * Returns the operator name.\n\t *\n\t * @return string\n\t */\n\tpublic function getName()\n\t{\n\t\treturn $this->m_name;\n\t}\n\n\t/**\n\t * Returns the operands type.\n\t *\n\t * @return string\n\t */\n\tpublic function getType()\n\t{\n\t    return $this->m_type;\n\t}\n\n\t/**\n     * Returns the operator symbol.\n     *\n     * @param string $p_format\n     *    The format used to get the symbol.\n     *\n     * @return string\n     */\n\tpublic function getSymbol($p_format = null)\n\t{\n        if (is_null($p_format)) {\n            $p_format = Operator::$s_defaultSymbolType;\n        }\n\n        if (!array_key_exists($p_format, Operator::$s_symbols)) {\n            return null;\n        }\n\n        return Operator::$s_symbols[$p_format][$this->m_name];\n    }\n\n\t/**\n\t * Returns an array of available operators for the given type\n\t *\n\t * @return array\n\t */\n\tpublic static function GetOperators($p_type = 'string')\n\t{\n\t    if (!isset($p_type) || !array_key_exists($p_type, Operator::$s_typeOperators)) {\n\t        $p_type = 'string';\n\t    }\n\n\t    return Operator::$s_typeOperators[$p_type];\n\t}\n}\n\n?>\n"
  },
  {
    "path": "newscoop/template_engine/classes/PlaylistList.php",
    "content": "<?php\n\nrequire_once 'ListObject.php';\nrequire_once $GLOBALS['g_campsiteDir'].'/classes/CampCache.php';\n\n/**\n * ArticlesList class.\n */\nclass PlaylistList extends ListObject\n{\n    private static $s_parameters = array(\n        'id' => array('field' => 'id_playlist', 'type' => 'integer'),\n        'name' => array('field' => 'name', 'type' => 'string'),\n    );\n    private static $s_orderFields = array();\n    private static $s_articleTypes = null;\n    private static $s_dynamicFields = null;\n\n    const CONSTRAINT_ATTRIBUTE_NAME = 1;\n    const CONSTRAINT_DYNAMIC_FIELD = 4;\n    const CONSTRAINT_OPERATOR = 2;\n    const CONSTRAINT_VALUE = 3;\n\n    private $m_ignoreIssue = false;\n    private $m_ignoreSection = false;\n\n    /**\n     * Creates the list of objects. Sets the parameter $p_hasNextElements to\n     * true if this list is limited and elements still exist in the original\n     * list (from which this was truncated) after the last element of this\n     * list.\n     *\n     * @param int   $p_start\n     * @param int   $p_limit\n     * @param array $p_parameters\n     * @param int   &$p_count\n     *\n     * @return array\n     */\n    protected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count)\n    {\n        $doctrine = Zend_Registry::get('container')->getService('doctrine');\n        if (!$doctrine) {\n            return false;\n        }\n\n        $repo = $doctrine->getManager()->getRepository('Newscoop\\Entity\\Playlist');\n        /* @var $repo \\Newscoop\\Entity\\Repository\\PlaylistRepository */\n\n        // get playlist\n        if (isset($p_parameters['name']) && trim($p_parameters['name'])) {\n            $playlist = current($repo->findBy(array('name' => $p_parameters['name'])));\n        }\n        if (isset($p_parameters['id']) && trim($p_parameters['id']) != '') {\n            $playlist = $repo->find($p_parameters['id']);\n        }\n        $languages = array();\n        if (isset($p_parameters['language']) && !empty($p_parameters['language'])) {\n            $languages = $p_parameters['language'];\n        }\n\n        if (!($playlist instanceof \\Newscoop\\Entity\\Playlist)) {\n            return array();\n        }\n        $length = null;\n        if (isset($p_parameters['length']) && trim($p_parameters['length']) != '') {\n            $length = $p_parameters['length'];\n        }\n        $start = null;\n        if (isset($p_parameters['start']) && trim($p_parameters['start']) != '') {\n            $start = $p_parameters['start'];\n        }\n\n        $context = CampTemplate::singleton()->context();\n        $preview = $context->preview;\n        $articlesList = $repo->articles($playlist, $languages, false, $length, $start, !$preview);\n\n        $metaArticlesList = array();\n        foreach ($articlesList as $article) {\n            $metaArticle = new MetaArticle($article['languageId'], $article['articleId']);\n            if ($metaArticle->defined()\n            && ($metaArticle->is_published\n                || ($preview && $metaArticle->section->defined() && $metaArticle->issue->defined())\n               )\n            ) {\n                $metaArticlesList[] = $metaArticle;\n            }\n        }\n\n        $p_count = $repo->articlesCount($playlist, $languages, !$preview);\n\n        return $metaArticlesList;\n    }\n\n    /**\n     * Processes list constraints passed in an array.\n     *\n     * @param array $p_constraints\n     *\n     * @return array\n     */\n    protected function ProcessConstraints(array $p_constraints)\n    {\n        return $p_constraints;\n    }\n\n    /**\n     * Processes order constraints passed in an array.\n     *\n     * @param array $p_order\n     *\n     * @return array\n     */\n    protected function ProcessOrder(array $p_order)\n    {\n        return $p_order;\n    }\n\n    /**\n     * Processes the input parameters passed in an array; drops the invalid\n     * parameters and parameters with invalid values. Returns an array of\n     * valid parameters.\n     *\n     * @param array $p_parameters\n     *\n     * @return array\n     */\n    protected function ProcessParameters(array $p_parameters)\n    {\n        foreach ($p_parameters as $parameter => $value) {\n            switch (($parameter = strtolower($parameter))) {\n                case 'columns':\n                case 'start' :\n                case 'length' :\n                    $intValue = (int) $value;\n                    if (\"$intValue\" != $value || $intValue < 0) {\n                        CampTemplate::singleton()->trigger_error(\"invalid value $value of parameter $parameter in statement list_articles\");\n                    }\n                    $parameters[$parameter] = (int) $value;\n                    break;\n                case 'name' :\n                    $parameters[$parameter] = (string) $value;\n                    break;\n                case 'language' :\n                    $parameters[$parameter] = (array) $value;\n                    break;\n                case 'id' :\n                    $parameters[$parameter] = (int) $value;\n                    break;\n            }\n        }\n\n        return $parameters;\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/classes/SearchResultsList.php",
    "content": "<?php\n\nrequire_once('ListObject.php');\n\n\n/**\n * SearchResultsList class\n *\n */\nclass SearchResultsList extends ListObject\n{\n    private static $s_orderFields = array(\n                                          'bynumber',\n                                          'byname',\n                                          'bydate',\n                                          'bycreationdate',\n                                          'bypublishdate',\n                                          'bylanguage'\n                                    );\n\n\t/**\n\t * Creates the list of objects. Sets the parameter $p_hasNextElements to\n\t * true if this list is limited and elements still exist in the original\n\t * list (from which this was truncated) after the last element of this\n\t * list.\n\t *\n\t * @param int $p_start\n\t * @param int $p_limit\n\t * @param array $p_parameters\n\t * @param int &$p_count\n\t * @return array\n\t */\n\tprotected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count)\n\t{\n\t    if ($p_parameters['scope'] == 'index') {\r\n\t    \t$articlesList = Article::SearchByKeyword($p_parameters['search_phrase'],\n\t    \t                $p_parameters['match_all'],\n\t    \t                $this->m_constraints,\n\t    \t                $this->m_order,\n\t    \t                $p_start, $p_limit, $p_count);\n\t    } else {\n\t        $keywords = preg_split('/[\\s,.-]/', $p_parameters['search_phrase']);\n\t        $articlesList = Article::SearchByField($keywords,\n                            $p_parameters['scope'],\n                            $p_parameters['match_all'],\n                            $this->m_constraints,\n                            $this->m_order,\n                            $p_start, $p_limit, $p_count);\n\t    }\n\r\n\t    $metaArticlesList = array();\n\t    foreach ($articlesList as $article) {\n\t        $metaArticlesList[] = new MetaArticle($article['language_id'], $article['number']);\n\t    }\n\t\treturn $metaArticlesList;\n\t}\n\n\t/**\n\t * Processes list constraints passed in an array.\n\t *\n\t * @param array $p_constraints\n\t * @return array\n\t */\n\tprotected function ProcessConstraints(array $p_constraints)\n\t{\n\t\treturn array();\n\t}\n\n\t/**\n\t * Processes order constraints passed in an array.\n\t *\n\t * @param array $p_order\n\t * @return array\n\t */\n\tprotected function ProcessOrder(array $p_order)\n\t{\n\t    $order = array();\n\t    $state = 1;\n\t    foreach ($p_order as $word) {\n\t        switch ($state) {\n                case 1: // reading the order field\n\t                if (array_search(strtolower($word), SearchResultsList::$s_orderFields) === false) {\n\t                    CampTemplate::singleton()->trigger_error(\"invalid order field $word in list_search_results, order parameter\");\n\t                } else {\n    \t                $orderField = $word;\n                        $state = 2;\n\t                }\n\t                break;\n                case 2: // reading the order direction\n                    if (MetaOrder::IsValid($word)) {\n                        $order[] = array('field'=>$orderField, 'dir'=>$word);\n                    } else {\n                        CampTemplate::singleton()->trigger_error(\"invalid order $word of attribute $orderField in list_search_results, order parameter\");\n                    }\n                    $state = 1;\n\t                break;\n\t        }\n\t    }\n\t    if ($state != 1) {\n            CampTemplate::singleton()->trigger_error(\"unexpected end of order parameter in list_search_results\");\n\t    }\n\n\t    return $order;\n\t}\n\n\t/**\n\t * Processes the input parameters passed in an array; drops the invalid\n\t * parameters and parameters with invalid values. Returns an array of\n\t * valid parameters.\n\t *\n\t * @param array $p_parameters\n\t * @return array\n\t */\n\tprotected function ProcessParameters(array $p_parameters)\n\t{\n\t\t$parameters = array();\n    \tforeach ($p_parameters as $parameter=>$value) {\n    \t\t$parameter = strtolower($parameter);\n    \t\tswitch ($parameter) {\n    \t\t\tcase 'length':\r\n    \t\t\tcase 'columns':\n    \t\t\tcase 'name':\n    \t\t\tcase 'order':\n    \t\t\tcase 'template':\n    \t\t\tcase 'match_all':\n    \t\t\tcase 'search_level':\n    \t\t\tcase 'search_phrase':\n    \t\t\tcase 'search_results':\n                case 'search_issue':\n                case 'search_section':\n    \t\t\tcase 'start_date':\r\n                case 'end_date':\n                case 'topic_id':\n                case 'scope':\n                \tif (is_null($value)) {\n                \t\tbreak;\n                \t}\n    \t\t\t\tif ($parameter == 'length' || $parameter == 'columns'\n    \t\t\t\t|| $parameter == 'search_level' || $parameter == 'search_section') {\n    \t\t\t\t\t$intValue = (int)$value;\n    \t\t\t\t\tif (\"$intValue\" != $value || $intValue < 0) {\n    \t\t\t\t\t\tCampTemplate::singleton()->trigger_error(\"invalid value $value of parameter $parameter in statement list_search_results\");\n    \t\t\t\t\t}\n\t    \t\t\t\t$parameters[$parameter] = (int)$value;\n    \t\t\t\t} else {\n\t    \t\t\t\t$parameters[$parameter] = $value;\n    \t\t\t\t}\n    \t\t\t\tbreak;\n    \t\t\tdefault:\n    \t\t\t\tCampTemplate::singleton()->trigger_error(\"invalid parameter $parameter in list_search_results\", $p_smarty);\n    \t\t}\n    \t}\n\n        $operator = new Operator('is', 'integer');\n        $context = CampTemplate::singleton()->context();\n        if ($p_parameters['search_level'] >= MetaActionSearch_Articles::SEARCH_LEVEL_PUBLICATION\n        && $context->publication->defined) {\n            $this->m_constraints[] = new ComparisonOperation('Articles.IdPublication', $operator,\n                                                             $context->publication->identifier);\n        }\n        if ($p_parameters['search_level'] >= MetaActionSearch_Articles::SEARCH_LEVEL_ISSUE\n        && $context->issue->defined && $p_parameters['search_issue'] == 0) {\n            $this->m_constraints[] = new ComparisonOperation('Articles.NrIssue', $operator,\n                                                             $context->issue->number);\n        }\n        if ($p_parameters['search_level'] >= MetaActionSearch_Articles::SEARCH_LEVEL_SECTION\n        && $context->section->defined && $p_parameters['search_section'] == 0) {\n            $this->m_constraints[] = new ComparisonOperation('Articles.NrSection', $operator,\n                                                             $context->section->number);\n        }\n        if ($p_parameters['search_issue'] != 0) {\n            $this->m_constraints[] = new ComparisonOperation('Articles.NrIssue', $operator,\n                                                             $p_parameters['search_issue']);\n        }\n        if ($p_parameters['search_section'] != 0) {\n            $this->m_constraints[] = new ComparisonOperation('Articles.NrSection', $operator,\n                                                             $p_parameters['search_section']);\n        }\n        if (!empty($p_parameters['start_date'])) {\n            $startDateOperator = new Operator('greater_equal', 'date');\n            $this->m_constraints[] = new ComparisonOperation('Articles.PublishDate', $startDateOperator,\n                                                             $p_parameters['start_date']);\n        }\n        if (!empty($p_parameters['end_date'])) {\n            $endDateOperator = new Operator('smaller_equal', 'date');\n            $this->m_constraints[] = new ComparisonOperation('Articles.PublishDate', $endDateOperator,\n                                                             $p_parameters['end_date'] . ' 23:59:59');\n        }\n        if (!empty($p_parameters['topic_id'])) {\n            $this->m_constraints[] = new ComparisonOperation('ArticleTopics.TopicId', $operator,\n                                                             $p_parameters['topic_id']);\n        }\n        if (!$context->preview) {\n        \t$this->m_constraints[] = new ComparisonOperation('Published', $operator, 'Y');\n        }\n\n        if (!empty($p_parameters['type_not'])) {\n            $this->m_constraints[] = new ComparisonOperation('Articles.Type', new Operator('not', 'string'), $p_parameters['type_not']);\n        }\n\n    \treturn $parameters;\n\t}\n\n\n    protected function getCacheKey()\n    {\n        if (is_null($this->m_cacheKey)) {\n            $this->m_cacheKey = __CLASS__ . '__' . serialize($this->m_parameters)\n            . '__' . $this->m_start . '__' . $this->m_limit . '__' . $this->m_columns;\n        }\n        return $this->m_cacheKey;\n    }\n}\n\n?>\n"
  },
  {
    "path": "newscoop/template_engine/classes/SearchResultsSolrList.php",
    "content": "<?php\n\nuse Newscoop\\Search\\Query;\n\nrequire_once __DIR__ . '/ListObject.php';\n\n/**\n * SearchResultsList class\n */\nclass SearchResultsSolrList extends ListObject\n{\n    private static $s_orderFields = array(\n        'bynumber',\n        'byname',\n        'bydate',\n        'bycreationdate',\n        'bypublishdate',\n        'bylanguage',\n    );\n\n\t/**\n\t * Creates the list of objects. Sets the parameter $p_hasNextElements to\n\t * true if this list is limited and elements still exist in the original\n\t * list (from which this was truncated) after the last element of this\n\t * list.\n\t *\n\t * @param int $p_start\n\t * @param int $p_limit\n\t * @param array $p_parameters\n\t * @param int &$p_count\n\t * @return array\n\t */\n\tprotected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count)\n\t{\n        $index = Zend_Registry::get('container')->getService('search.index');\n        $p_parameters['core'] = $p_parameters['language'];\n        $query = new Query($p_parameters);\n\n        try {\n            $result = $index->find($query);\n        } catch (Exception $e) {\n            $p_count = 0;\n            return array();\n        }\n\n        if ($result) {\n            $p_count = $result->numFound;\n            $languageId = Language::GetLanguageIdByCode($p_parameters['language']);\n            return array_map(function ($doc) use ($languageId) {\n                return new MetaArticle($languageId, $doc->number);\n            }, $result->docs);\n        } else {\n            $p_count = 0;\n            return array();\n        }\n\t}\n\n\t/**\n\t * Processes list constraints passed in an array.\n\t *\n\t * @param array $p_constraints\n\t * @return array\n\t */\n\tprotected function ProcessConstraints(array $p_constraints)\n\t{\n\t\treturn array();\n\t}\n\n\t/**\n\t * Processes order constraints passed in an array.\n\t *\n\t * @param array $p_order\n\t * @return array\n\t */\n\tprotected function ProcessOrder(array $p_order)\n\t{\n        return array();\n\t}\n\n\t/**\n\t * Processes the input parameters passed in an array; drops the invalid\n\t * parameters and parameters with invalid values. Returns an array of\n\t * valid parameters.\n\t *\n\t * @param array $p_parameters\n\t * @return array\n\t */\n\tprotected function ProcessParameters(array $p_parameters)\n\t{\n        return $p_parameters;\n\t}\n\n    protected function getCacheKey()\n    {\n        if (is_null($this->m_cacheKey)) {\n            $this->m_cacheKey = __CLASS__ . '__' . serialize($this->m_parameters)\n            . '__' . $this->m_start . '__' . $this->m_limit . '__' . $this->m_columns;\n        }\n\n        return $this->m_cacheKey;\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/classes/SectionAuthorsList.php",
    "content": "<?php\n\nrequire_once('ListObject.php');\n\n\n/**\n * SectionAuthorsList class\n *\n */\nclass SectionAuthorsList extends ListObject\n{\n    private static $s_orderFields = array('default',\n                                          'byfirstname',\n                                          'bylastname'\n                                         );\n\n    /**\n     * Creates the list of objects. Sets the parameter $p_hasNextElements to\n     * true if this list is limited and elements still exist in the original\n     * list (from which this was truncated) after the last element of this\n     * list.\n     *\n     * @param int $p_start\n     * @param int $p_limit\n     * @param array $p_parameters\n     * @param int &$p_count\n     * @return array\n     */\n    protected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count)\n    {\n        $em = \\Zend_Registry::get('container')->get('em');\n\n        $query = $em->getRepository('Newscoop\\Entity\\Article')\n            ->createQueryBuilder('a')\n            ->select('DISTINCT au.id')\n            ->leftJoin('a.authors', 'au');\n        \n        foreach($this->m_constraints as $comparison) {\n            $query->andWhere('a.'.$comparison->getLeftOperand().' '.$comparison->getOperator()->getSymbol().' :'.$comparison->getLeftOperand().'');\n            $query->setParameter($comparison->getLeftOperand(), $comparison->getRightOperand());\n        }\n\n        if (array_key_exists('order', $p_parameters)) {\n            $orderOptions = explode(' ', $p_parameters['order']);\n            $query->orderBy('au.'.str_replace('by', '', $orderOptions[0]), $orderOptions[1]);\n        }\n        \n        $sectionAuthorsList = $query->getQuery()->getArrayResult();\n        $metaAuthorsList = array();\n        foreach ($sectionAuthorsList as $author) {\n            if ($author['id']) {\n                $metaAuthorsList[] = new MetaAuthor($author['id'], null);\n            }\n        }\n\n        return $metaAuthorsList;\n    }\n\n    /**\n     * Processes list constraints passed in an array.\n     *\n     * @param array $p_constraints\n     * @return array\n     */\n    protected function ProcessConstraints(array $p_constraints)\n    {   \n        $processesConstraints = array();\n        $constraints = array_chunk($p_constraints, 3, true);\n        foreach ($constraints as $constraint) {\n            if (count($constraint) == 3) {\n                $operator = new Operator($constraint[1]);\n                $processesConstraints[] = new ComparisonOperation($constraint[0], $operator, $constraint[2]);\n            }\n        }\n\n        return $processesConstraints;\n    }\n\n    /**\n     * Processes order constraints passed in an array.\n     *\n     * @param array $p_order\n     * @return array\n     */\n    protected function ProcessOrder(array $p_order)\n    {\n        if (count($p_order) == 1) {\n            $p_order[] = 'asc';\n        }\n        $state = 1;\n        foreach ($p_order as $word) {\n            switch ($state) {\n            case 1: // reading the order field\n                if (array_search(strtolower($word), self::$s_orderFields) === false) {\n                    CampTemplate::singleton()->trigger_error(\"invalid order field $word in list_section_authors, order parameter\");\n                } else {\n                    $orderField = $word;\n                    $state = 2;\n                }\n                break;\n            case 2: // reading the order direction\n                if (MetaOrder::IsValid($word)) {\n                    $order[] = array('field'=>$orderField, 'dir'=>$word);\n                } else {\n                    CampTemplate::singleton()->trigger_error(\"invalid order $word of attribute $orderField in list_section_authors, order parameter\");\n                }\n                $state = 1;\n                break;\n            }\n        }\n        if ($state != 1) {\n            CampTemplate::singleton()->trigger_error('unexpected end of order parameter in list_section_authors');\n        }\n        return $order;\n    }\n\n    /**\n     * Processes the input parameters passed in an array; drops the invalid\n     * parameters and parameters with invalid values. Returns an array of\n     * valid parameters.\n     *\n     * @param array $p_parameters\n     * @return array\n     */\n    protected function ProcessParameters(array $p_parameters)\n    {\n        $parameters = array();\n        foreach ($p_parameters as $parameter => $value) {\n            $parameter = strtolower($parameter);\n            switch ($parameter) {\n                case 'length':\n                case 'columns':\n                case 'name':\n                case 'constraints':\n                case 'order':\n                    if ($parameter == 'length' || $parameter == 'columns') {\n                        $intValue = (int)$value;\n                        if (\"$intValue\" != $value || $intValue < 0) {\n                            CampTemplate::singleton()->trigger_error(\"invalid value $value of parameter $parameter in statement list_section_authors\");\n                        }\n                        $parameters[$parameter] = (int) $value;\n                    } else {\n                        $parameters[$parameter] = $value;\n                    }\n                    break;\n                default:\n                    CampTemplate::singleton()->trigger_error(\"invalid parameter $parameter in list_section_authors\", $p_smarty);\n            }\n        }\n\n        $operator = new Operator('is', 'integer');\n        $context = CampTemplate::singleton()->context();\n        if (!$context->section->defined) {\n            CampTemplate::singleton()->trigger_error(\"undefined environment attribute 'Section' in statement list_section_authors\");\n            return array();\n        }\n        $this->m_constraints[] = new ComparisonOperation('section', $operator, $context->section->number);\n        if (!$context->language->defined) {\n            CampTemplate::singleton()->trigger_error(\"undefined environment attribute 'Language' in statement list_section_authors\");\n            return array();\n        }\n        $this->m_constraints[] = new ComparisonOperation('language', $operator, $context->language->number);\n\n        return $parameters;\n    }\n}\n\n?>\n"
  },
  {
    "path": "newscoop/template_engine/classes/SectionsList.php",
    "content": "<?php\n\nrequire_once('ListObject.php');\n\n\n/**\n * SectionsList class\n *\n */\nclass SectionsList extends ListObject\n{\n    private static $s_parameters = array('number'=>array('field'=>'Number', 'type'=>'integer'),\n                                         'name'=>array('field'=>'Name', 'type'=>'string')\n                                   );\n\n\t/**\n\t * Creates the list of objects. Sets the parameter $p_hasNextElements to\n\t * true if this list is limited and elements still exist in the original\n\t * list (from which this was truncated) after the last element of this\n\t * list.\n\t *\n\t * @param int $p_start\n\t * @param int $p_limit\n\t * @param array $p_parameters\n\t * @param int &$p_count\n\t * @return array\n     */\n    protected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count)\n    {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('metaSectionList', implode('-', $this->m_constraints), implode('-', $this->m_order), $p_start, $p_limit, $p_count), 'section');\n        if ($cacheService->contains($cacheKey)) {\n            return $cacheService->fetch($cacheKey);\n        }\n        \n        $sectionsList = Section::GetList($this->m_constraints, $this->m_order, $p_start, $p_limit, $p_count);\n        $metaSectionsList = array();\n        foreach ($sectionsList as $section) {\n            $metaSectionsList[] = new MetaSection(\n                $section->getPublicationId(),\n                $section->getIssueNumber(),\n                $section->getLanguageId(),\n                $section->getSectionNumber()\n            );\n        }\n\n        $cacheService->save($cacheKey, $metaSectionsList);\n\n        return $metaSectionsList;\n    }\n\n\t/**\n\t * Processes list constraints passed in an array.\n\t *\n\t * @param array $p_constraints\n\t * @return array\n\t */\n\tprotected function ProcessConstraints(array $p_constraints)\n\t{\n\t    $parameters = array();\n\t    $state = 1;\n\t    $attribute = null;\n\t    $operator = null;\n\t    $value = null;\n\t    foreach ($p_constraints as $word) {\n\t        switch ($state) {\n\t            case 1: // reading the parameter name\n\t                if (!array_key_exists($word, SectionsList::$s_parameters)) {\n\t                    CampTemplate::singleton()->trigger_error(\"invalid attribute $word in statement list_sections, constraints parameter\");\n\t                    return false;\n\t                }\n\t                $attribute = $word;\n\t                $state = 2;\n\t                break;\n\t            case 2: // reading the operator\n\t                $type = SectionsList::$s_parameters[$attribute]['type'];\n\t                try {\n\t                    $operator = new Operator($word, $type);\n\t                }\n\t                catch (InvalidOperatorException $e) {\n\t                    CampTemplate::singleton()->trigger_error(\"invalid operator $word of parameter constraints.$attribute in statement list_sections\");\n\t                    return false;\n\t                }\n\t                $state = 3;\n\t                break;\n\t            case 3: // reading the value to compare against\n\t                $type = SectionsList::$s_parameters[$attribute]['type'];\n\t                $metaClassName = 'Meta'.strtoupper($type[0]).strtolower(substr($type, 1));\n\t                try {\n\t                    $value = new $metaClassName($word);\n    \t                $value = $word;\n       \t                $comparisonOperation = new ComparisonOperation($attribute, $operator, $value);\n    \t                $parameters[] = $comparisonOperation;\n\t                } catch (InvalidValueException $e) {\n\t                    CampTemplate::singleton()->trigger_error(\"invalid value $word of parameter constraints.$attribute in statement list_sections\");\n\t                    return false;\n\t                }\n\t                $state = 1;\n\t                break;\n\t        }\n\t    }\n\t    if ($state != 1) {\n            CampTemplate::singleton()->trigger_error(\"unexpected end of constraints parameter in list_sections\");\n            return false;\n\t    }\n\n\t\treturn $parameters;\n\t}\n\n\t/**\n\t * Processes order constraints passed in an array.\n\t *\n\t * @param array $p_order\n\t * @return array\n\t */\n\tprotected function ProcessOrder(array $p_order)\n\t{\n\t\treturn array('Number'=>'asc');\n\t}\n\n\t/**\n\t * Processes the input parameters passed in an array; drops the invalid\n\t * parameters and parameters with invalid values. Returns an array of\n\t * valid parameters.\n\t *\n\t * @param array $p_parameters\n\t * @return array\n\t */\n\tprotected function ProcessParameters(array $p_parameters)\n\t{\n\t\t$parameters = array();\n    \tforeach ($p_parameters as $parameter=>$value) {\n    \t\t$parameter = strtolower($parameter);\n    \t\tswitch ($parameter) {\n    \t\t\tcase 'length':\n    \t\t\tcase 'columns':\n    \t\t\tcase 'name':\n    \t\t\tcase 'constraints':\n    \t\t\t\tif ($parameter == 'length' || $parameter == 'columns') {\n    \t\t\t\t\t$intValue = (int)$value;\n    \t\t\t\t\tif (\"$intValue\" != $value || $intValue < 0) {\n    \t\t\t\t\t\tCampTemplate::singleton()->trigger_error(\"invalid value $value of parameter $parameter in statement list_sections\");\n    \t\t\t\t\t}\n\t    \t\t\t\t$parameters[$parameter] = (int)$value;\n    \t\t\t\t} else {\n\t    \t\t\t\t$parameters[$parameter] = $value;\n    \t\t\t\t}\n    \t\t\t\tbreak;\n    \t\t\tdefault:\n    \t\t\t\tCampTemplate::singleton()->trigger_error(\"invalid parameter $parameter in list_sections\", $p_smarty);\n    \t\t}\n    \t}\n\n        $operator = new Operator('is', 'integer');\n        $context = CampTemplate::singleton()->context();\n        $this->m_constraints[] = new ComparisonOperation('IdPublication', $operator,\n                                                         $context->publication->identifier);\n        if ($context->issue->defined) {\n            $this->m_constraints[] = new ComparisonOperation('NrIssue', $operator,\n                                                             $context->issue->number);\n        }\n        if ($context->language->defined) {\n            $this->m_constraints[] = new ComparisonOperation('IdLanguage', $operator,\n                                                             $context->language->number);\n        }\n\n    \treturn $parameters;\n\t}\n}\n\n?>"
  },
  {
    "path": "newscoop/template_engine/classes/SubtitlesList.php",
    "content": "<?php\n\nrequire_once('ListObject.php');\n\n\n/**\n * SubtitlesList class\n *\n */\nclass SubtitlesList extends ListObject\n{\n    /**\n     * Creates the list of objects. Sets the parameter $p_hasNextElements to\n     * true if this list is limited and elements still exist in the original\n     * list (from which this was truncated) after the last element of this\n     * list.\n     *\n     * @param int $p_start\n     * @param int $p_limit\n     * @param array $p_parameters\n     * @param int &$p_count\n     * @return array\n     */\n    protected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count)\n    {\n        $context = CampTemplate::singleton()->context();\n        if (!$context->article->defined) {\n            return array();\n        }\n        $articleData = new ArticleData($context->article->type_name,\n                                       $context->article->number, $context->language->number);\n        $customFields = $articleData->getUserDefinedColumns();\n        $fieldValue = null;\n        foreach ($customFields as $customField) {\n            if (strtolower($customField->getPrintName()) == strtolower($p_parameters['field_name'])) {\n                $p_parameters['field_name'] = $customField->getPrintName();\n                $fieldValue = $articleData->getProperty('F'.$p_parameters['field_name']);\n                break;\n            }\n        }\n        if (is_null($fieldValue)) {\n            return array();\n        }\n        $subtitles = MetaSubtitle::ReadSubtitles($fieldValue, $p_parameters['field_name'], $context->article->name);\n        $p_count = count($subtitles);\n        return ($p_limit !== 0 ? array_slice($subtitles, $p_start, $p_limit) : array_slice($subtitles, $p_start));\n    }\n\n    /**\n     * Processes list constraints passed in an array.\n     *\n     * @param array $p_constraints\n     * @return array\n     */\n    protected function ProcessConstraints(array $p_constraints)\n    {\n        return array();\n    }\n\n    /**\n     * Processes order constraints passed in an array.\n     *\n     * @param array $p_order\n     * @return array\n     */\n    protected function ProcessOrder(array $p_order)\n    {\n        return array();\n    }\n\n    /**\n     * Processes the input parameters passed in an array; drops the invalid\n     * parameters and parameters with invalid values. Returns an array of\n     * valid parameters.\n     *\n     * @param array $p_parameters\n     * @return array\n     */\n    protected function ProcessParameters(array $p_parameters)\n    {\n        $parameters = array();\n        foreach ($p_parameters as $parameter=>$value) {\n            $parameter = strtolower($parameter);\n            switch ($parameter) {\n                case 'length':\n                case 'columns':\n                case 'name':\n                case 'field_name':\n                    if ($parameter == 'length' || $parameter == 'columns') {\n                        $intValue = (int)$value;\n                        if (\"$intValue\" != $value || $intValue < 0) {\n                            CampTemplate::singleton()->trigger_error(\"invalid value $value of parameter $parameter in statement list_subtitles\");\n                        }\n                        $parameters[$parameter] = (int)$value;\n                    } else {\n                        $parameters[$parameter] = $value;\n                    }\n                    break;\n                default:\n                    CampTemplate::singleton()->trigger_error(\"invalid parameter $parameter in list_subtitles\", $p_smarty);\n            }\n        }\n        $article = CampTemplate::singleton()->context()->article;\n        $parameters['article_number'] = $article->number;\n        $parameters['language_number'] = $article->language->number;\n        return $parameters;\n    }\n\n\n    protected function getCacheKey()\n    {\n        if (is_null($this->m_cacheKey)) {\n            $this->m_cacheKey = __CLASS__ . '__' . serialize($this->m_parameters)\n            . '__' . $this->m_start . '__' . $this->m_limit . '__' . $this->m_columns;\n        }\n        return $this->m_cacheKey;\n    }\n}\n\n?>"
  },
  {
    "path": "newscoop/template_engine/classes/SubtopicsList.php",
    "content": "<?php\n\nrequire_once 'ListObject.php';\n\n/**\n * SubtopicsList class\n *\n */\nclass SubtopicsList extends ListObject\n{\n    private static $s_orderFields = array(\n        'default',\n        'bynumber',\n        'byname',\n    );\n\n    /**\n     * Creates the list of objects. Sets the parameter $p_hasNextElements to\n     * true if this list is limited and elements still exist in the original\n     * list (from which this was truncated) after the last element of this\n     * list.\n     *\n     * @param  int   $p_start\n     * @param  int   $p_limit\n     * @param  array $p_parameters\n     * @param  int   &$p_count\n     * @return array\n     */\n    protected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count)\n    {\n        $rootTopicId = $p_parameters['topic_identifier'];\n        $order = array();\n        if (!isset($p_parameters['direct'])) {\n            $p_parameters['direct'] = true;\n        }\n\n        if (!empty($this->m_order)) {\n            $order = $this->m_order[0];\n        }\n\n        $em = \\Zend_Registry::get('container')->getService('em');\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $topicService = \\Zend_Registry::get('container')->getService('newscoop_newscoop.topic_service');\n        $repository = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic');\n        $language = $em->getReference('Newscoop\\Entity\\Language', $p_parameters['language_id']);\n        $topic = $repository->getSingleTopicQuery($rootTopicId, $language ? $language->getCode() : null)->getOneOrNullResult();\n        if (!$topic) {\n            $subtopics = $repository->getRootNodes(\n                $language ? $language->getCode() : null,\n                isset($order['field']) ? $order['field'] : null,\n                isset($order['dir']) ? $order['dir'] : null\n            )->getArrayResult();\n        } else {\n            $topicsCount = $topicService->countBy();\n            $cacheKey = $cacheService->getCacheKey(array('topics', $topicsCount, $rootTopicId), 'topic');\n            $repository = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic');\n            if ($cacheService->contains($cacheKey)) {\n                $subtopics = $cacheService->fetch($cacheKey);\n            } else {\n                $subtopics = $repository->childrenWithTranslations(\n                    $topic,\n                    $language ? $language->getCode() : null,\n                    $p_parameters['direct'],\n                    isset($order['field']) ? $order['field'] : null,\n                    isset($order['dir']) ? $order['dir'] : null,\n                    false,\n                    $start,\n                    $limit\n                )->getArrayResult();\n\n                $cacheService->save($cacheKey, $subtopics);\n            }\n        }\n\n        $p_count = count($subtopics);\n        $metaTopicsList = array();\n        $index = 0;\n        foreach ($subtopics as $topic) {\n            $index++;\n            if ($p_limit == 0 || ($p_limit > 0 && $index <= $p_limit)) {\n                $metaTopicsList[] = new MetaTopic($topic['id']);\n            }\n        }\n\n        return $metaTopicsList;\n    }\n\n    /**\n     * Processes list constraints passed in an array.\n     *\n     * @param  array $p_constraints\n     * @return array\n     */\n    protected function ProcessConstraints(array $p_constraints)\n    {\n        return array();\n    }\n\n    /**\n     * Processes order constraints passed in an array.\n     *\n     * @param  array $p_order\n     * @return array\n     */\n    protected function ProcessOrder(array $p_order)\n    {\n        $order = array();\n        $state = 1;\n        $aliases = array(\n            'byname' => 'title',\n            'bynumber' => 'id',\n        );\n\n        foreach ($p_order as $word) {\n            switch ($state) {\n                case 1: // reading the order field\n                    if (array_search(strtolower($word), SubtopicsList::$s_orderFields) === false) {\n                        CampTemplate::singleton()->trigger_error(\"invalid order field $word in list_subtopics, order parameter\");\n                    } else {\n                        $orderField = $aliases[strtolower($word)];\n                        $state = 2;\n                    }\n                    break;\n                case 2: // reading the order direction\n                    if (MetaOrder::IsValid($word)) {\n                        $order[] = array('field' => $orderField, 'dir' => $word);\n                    } else {\n                        CampTemplate::singleton()->trigger_error(\"invalid order $word of attribute $orderField in list_subtopics, order parameter\");\n                    }\n                    $state = 1;\n                    break;\n            }\n        }\n        if ($state != 1) {\n            CampTemplate::singleton()->trigger_error(\"unexpected end of order parameter in list_issues\");\n        }\n\n        return $order;\n    }\n\n    /**\n     * Processes the input parameters passed in an array; drops the invalid\n     * parameters and parameters with invalid values. Returns an array of\n     * valid parameters.\n     *\n     * @param  array $p_parameters\n     * @return array\n     */\n    protected function ProcessParameters(array $p_parameters)\n    {\n        $parameters = array();\n        foreach ($p_parameters as $parameter => $value) {\n            $parameter = strtolower($parameter);\n            switch ($parameter) {\n                case 'length':\n                case 'columns':\n                case 'name':\n                case 'order':\n                    if ($parameter == 'length' || $parameter == 'columns') {\n                        $intValue = (int) $value;\n                        if (\"$intValue\" != $value || $intValue < 0) {\n                            CampTemplate::singleton()->trigger_error(\"invalid value $value of parameter $parameter in statement list_subtopics\");\n                        }\n                        $parameters[$parameter] = (int) $value;\n                    } else {\n                        $parameters[$parameter] = $value;\n                    }\n                    break;\n                case 'direct':\n                    $parameters[$parameter] = filter_var($value, FILTER_VALIDATE_BOOLEAN);\n                    break;\n                default:\n                    CampTemplate::singleton()->trigger_error(\"invalid parameter $parameter in list_subtopics\", $p_smarty);\n            }\n        }\n        // 'topic_identifier' and 'language_id' parameters are needed for the cache key\n        $context = CampTemplate::singleton()->context();\n        $parameters['topic_identifier'] = $context->topic->identifier;\n        if (is_null($parameters['topic_identifier'])) {\n            $parameters['topic_identifier'] = 0;\n        }\n        $parameters['language_id'] = $context->language->number;\n\n        return $parameters;\n    }\n\n    protected function getCacheKey()\n    {\n        if (is_null($this->m_cacheKey)) {\n            $this->m_cacheKey = __CLASS__.'__'.serialize($this->m_parameters)\n            .'__'.$this->m_start.'__'.$this->m_limit.'__'.$this->m_columns;\n        }\n\n        return $this->m_cacheKey;\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/classes/SyntaxError.php",
    "content": "<?php\n\ndefine('SYNTAX_ERROR_CODE', 'error_code');\ndefine('SYNTAX_ERROR_TEMPLATE', 'template_name');\ndefine('SYNTAX_ERROR_LINE', 'line');\ndefine('SYNTAX_ERROR_WHAT', 'what');\n\ndefine('WHAT_STATEMENT', 'statement');\ndefine('WHAT_PARAMETER', 'parameter');\ndefine('WHAT_VALUE', 'value');\n\ndefine('SYNTAX_ERROR_UNKNOWN', 'Unknown error: $1');\ndefine('SYNTAX_ERROR_UNRECOGNIZED_TAG', 'Unrecognized tag <em>$1</em>');\ndefine('SYNTAX_ERROR_UNKNOWN_REFERENCE', 'Unknown reference <em>$1</em>');\ndefine('SYNTAX_ERROR_INVALID_PROPERTY', 'Invalid property <em>$1</em> of object <em>$2</em>');\ndefine('SYNTAX_ERROR_INVALID_PROPERTY_VALUE', 'Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>');\ndefine('SYNTAX_ERROR_INVALID_PARAMETER', 'Invalid parameter <em>$1</em> in statement <em>$2</em>');\ndefine('SYNTAX_ERROR_INVALID_PARAMETER_VALUE', 'Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>');\ndefine('SYNTAX_ERROR_MISSING_PARAMETER', 'Missing parameter <em>$1</em> in statement <em>$2</em>');\ndefine('SYNTAX_ERROR_INVALID_OPERATOR', 'Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>');\ndefine('SYNTAX_ERROR_INVALID_ATTRIBUTE', 'Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter');\ndefine('SYNTAX_ERROR_INVALID_TEMPLATE', 'Invalid template <em>$1</em> specified in the <em>$2</em> form');\n\n// Needed for localizer\n//$translator->trans('Unknown error: $1');\n//$translator->trans('Unrecognized tag <em>$1</em>');\n//$translator->trans('Unknown reference <em>$1</em>');\n//$translator->trans('Invalid property <em>$1</em> of object <em>$2</em>');\n//$translator->trans('Invalid value <em>$1</em> of property <em>$2</em> of object <em>$3</em>');\n//$translator->trans('Invalid parameter <em>$1</em> in statement <em>$2</em>');\n//$translator->trans('Invalid value <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>');\n//$translator->trans('Missing parameter <em>$1</em> in statement <em>$2</em>');\n//$translator->trans('Invalid operator <em>$1</em> of parameter <em>$2</em> in statement <em>$3</em>');\n//$translator->trans('Invalid attribute <em>$1</em> in statement <em>$2</em>, <em>$3</em> parameter');\n//$translator->trans('Invalid template <em>$1</em> specified in the <em>$2</em> form');\n\n\nclass SyntaxError {\n\tprivate $m_errorCode = null;\n\n\tprivate $m_templateName = null;\n\n\tprivate $m_line = null;\n\n\tprivate $m_what = null;\n\n\n\tpublic function __construct($p_parameters)\n\t{\n\t\tif (!is_array($p_parameters) || !array_key_exists(SYNTAX_ERROR_CODE, $p_parameters)) {\n\t\t\treturn;\n\t\t}\n\n\t\t$this->m_errorCode = $p_parameters[SYNTAX_ERROR_CODE];\n\t\tif (isset($p_parameters[SYNTAX_ERROR_TEMPLATE])) {\n\t\t\t$this->m_templateName = $p_parameters[SYNTAX_ERROR_TEMPLATE];\n\t\t\t$this->m_line = isset($p_parameters[SYNTAX_ERROR_LINE]) ?\n\t\t\t\t\t\t\t\t$p_parameters[SYNTAX_ERROR_LINE] : null;\n\t\t}\n\t\t$this->m_what = isset($p_parameters[SYNTAX_ERROR_WHAT]) ?\n\t\t\t\t\t\t\t$p_parameters[SYNTAX_ERROR_WHAT] : null;\n\t}\n\n\n\tpublic static function ConstructParameters($p_errorCode, $p_templateName, $p_line = null,\n\t\t\t\t\t\t\t\t\t\t\t   $p_what = null)\n\t{\n\t\t$parameters[SYNTAX_ERROR_CODE] = $p_errorCode;\n\t\t$parameters[SYNTAX_ERROR_TEMPLATE] = $p_templateName;\n\t\tif (isset($p_line)) {\n\t\t\t$parameters[SYNTAX_ERROR_LINE] = $p_line;\n\t\t}\n\t\tif (isset($p_what)) {\n\t\t\t$parameters[SYNTAX_ERROR_WHAT] = $p_what;\n\t\t}\n\t\treturn $parameters;\n\t}\n\n\n\tpublic function getMessage()\n\t{   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n\t\tif (is_null($this->m_errorCode)) {\n\t\t\treturn null;\n\t\t}\n\n\t\t$errorMessage = $translator->trans(SyntaxError::ErrorMessage($this->m_errorCode), array('$1' => $this->m_what), 'preview');\n\t\tif (is_null($errorMessage)) {\n\t\t\treturn null;\n\t\t}\n\n\t\tif (isset($this->m_templateName)) {\n\t\t\t$message .= $translator->trans('template', array(), 'preview') . ' ' . $this->m_templateName;\n\t\t\tif (isset($this->m_line)) {\n\t\t\t\t$message .= ', ' . $translator->trans('line', array(), 'preview') . ' ' . $this->m_line;\n\t\t\t}\n\t\t\t$message .= ': ';\n\t\t}\n\n\t\t$message .= $errorMessage;\n\n\t\treturn $message;\n\t}\n\n\n\tprivate static function ErrorMessage($p_errorCode)\n\t{\n\t\treturn $p_errorCode;\n\t}\n\n\n\tpublic function getErrorCode()\n\t{\n\t\treturn $this->m_errorCode;\n\t}\n\n\n\tpublic function getTemplateName()\n\t{\n\t\treturn $this->m_templateName;\n\t}\n\n\n\tpublic function getLine()\n\t{\n\t\treturn $this->m_line;\n\t}\n\n\n\tpublic function what()\n\t{\n\t\treturn $this->m_what;\n\t}\n\n}\n\n\n$GLOBALS['g_errorList'] = array();\n\n\nfunction templateErrorHandler($p_errorCode, $p_errorString, $p_errorFile = null,\n                              $p_errorLine = null, $p_errorContext = null)\n{\n    if (strncasecmp($p_errorString, 'Newscoop error:', strlen(\"Newscoop error:\")) == 0) {\n        $errorString = substr($p_errorString, strlen(\"Newscoop error:\"));\n    } elseif(strncasecmp($p_errorString, 'Smarty error:' ,strlen('Smarty error:')) == 0) {\n        $errorString = substr($p_errorString, strlen(\"Smarty error:\"));\n    } else {\n        return;\n    }\n\n    $what = null;\n\n    if (preg_match('/unrecognized tag:?\\s*\\'?([^\\(]*)\\'?\\s*\\(/', $errorString, $matches)) {\n        $errorCode = SYNTAX_ERROR_UNRECOGNIZED_TAG;\n        $what = array($matches[1]);\n    } elseif (preg_match('/(\\$.+)\\s+is\\s+an\\s+unknown\\s+reference/', $errorString, $matches)) {\n        $errorCode = SYNTAX_ERROR_UNKNOWN_REFERENCE;\n        $what = array($matches[1]);\n    } elseif (preg_match('/invalid\\s+property\\s+(.+)\\s+of\\s+object\\s+(.*)/', $errorString, $matches)) {\n        $errorCode = SYNTAX_ERROR_INVALID_PROPERTY;\n        $what = array($matches[1], $matches[2]);\n    } elseif (preg_match('/invalid\\s+value\\s+(.+)\\s+of\\s+property\\s+(.*)\\s+of\\s+object\\s+(.*)/', $errorString, $matches)) {\n        $errorCode = SYNTAX_ERROR_INVALID_PROPERTY_VALUE;\n        $what = array($matches[1], $matches[2], $matches[3]);\n    } elseif (preg_match('/invalid\\s+parameter\\s+(.+)\\s+in\\s+(.*)/', $errorString, $matches)) {\n        $errorCode = SYNTAX_ERROR_INVALID_PARAMETER;\n        $what = array($matches[1], $matches[2]);\n    } elseif (preg_match('/invalid\\s+value\\s+(.+)\\s+of\\s+parameter\\s+(.*)\\s+in\\s+statement\\s+(.*)/', $errorString, $matches)) {\n        $errorCode = SYNTAX_ERROR_INVALID_PARAMETER_VALUE;\n        $what = array($matches[1], $matches[2], $matches[3]);\n    } elseif (preg_match('/missing\\s+parameter\\s+(.*)\\s+in\\s+statement\\s+(.*)/', $errorString, $matches)) {\n        $errorCode = SYNTAX_ERROR_MISSING_PARAMETER;\n        $what = array($matches[1], $matches[2]);\n    } elseif (preg_match('/invalid\\s+operator\\s+(.+)\\s+of\\s+parameter\\s+(.*)\\s+in\\s+statement\\s+(.*)/', $errorString, $matches)) {\n        $errorCode = SYNTAX_ERROR_INVALID_OPERATOR;\n        $what = array($matches[1], $matches[2], $matches[3]);\n    } elseif (preg_match('/invalid\\s+attribute\\s+(.+)\\s+in\\s+statement\\s+(.*),\\s+(.*)\\s+parameter/', $errorString, $matches)) {\n        $errorCode = SYNTAX_ERROR_INVALID_ATTRIBUTE;\n        $what = array($matches[1], $matches[2], $matches[3]);\n    } elseif (preg_match('/invalid\\s+template\\s+(.*)\\s+specified\\s+in\\s+the\\s+(.*)\\s+form/', $errorString, $matches)) {\n        $errorCode = SYNTAX_ERROR_INVALID_TEMPLATE;\n        $what = array($matches[1], $matches[2]);\n    } else {\n        $errorCode = SYNTAX_ERROR_UNKNOWN;\n        $what = array($errorString);\n    }\n\n    if (preg_match('/\\[in\\s+([\\d\\w]*\\.tpl)*\\s+line\\s+([\\d]+)\\s*\\]/', $errorString, $matches)) {\n        $errorFile = $matches[1];\n        $errorLine = $matches[2];\n    } else {\n        $errorFile = null;\n        $errorLine = null;\n    }\n\n    $error = new SyntaxError(SyntaxError::ConstructParameters($errorCode, $errorFile,\n                             $errorLine, $what));\n    $GLOBALS['g_errorList'][] = $error;\n}\n\n?>"
  },
  {
    "path": "newscoop/template_engine/classes/UserCommentsList.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * UserComments list\n */\nclass UserCommentsList extends ListObject\n{\n    /** @var array */\n    private static $s_orderFields = array(\n        'bydate',\n    );\n\n    /** @var array */\n    private $orderMapping = array(\n        'bydate' => 'time_created'\n    );\n\n\t/**\n\t * Creates the list of objects. Sets the parameter $p_hasNextElements to\n\t * true if this list is limited and elements still exist in the original\n\t * list (from which this was truncated) after the last element of this\n\t * list.\n\t *\n\t * @param int $p_start\n\t * @param int $p_limit\n\t * @param array $p_parameters\n\t * @param int &$p_count\n\t * @return array\n\t */\n\tprotected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count)\n\t{\n\t    $comments = array();\n        if(!isset($p_parameters['commenters'])) {\n            return $comments;\n\t    }\n\n        $commentService = \\Zend_Registry::get('container')->getService('comment');\n\n        foreach ($commentService->findUserComments($p_parameters, $this->m_order, $p_limit, $p_start) as $comment) {\n            $comments[] = new MetaComment($comment->getId());\n        }\n\n        $p_count = $commentService->countUserComments($p_parameters);\n\n        return $comments;\n\t}\n\n\t/**\n\t * Processes list constraints passed in an array.\n\t *\n\t * @param array $p_constraints\n\t * @return array\n\t */\n\tprotected function ProcessConstraints(array $p_constraints)\n\t{\n        return $p_constraints;\n\t}\n\n\t/**\n\t * Processes order constraints passed in an array.\n\t *\n\t * @param array $p_order\n\t * @return array\n\t */\n\tprotected function ProcessOrder(array $p_order)\n\t{\n        $order = array();\n        for ($i = 0; $i < count($p_order); $i++) {\n            if (in_array(strtolower($p_order[$i]), array('asc', 'desc'))) {\n                continue;\n            }\n\n            if (!isset($this->orderMapping[$p_order[$i]])) {\n                continue;\n            }\n\n            $dir = 'asc';\n            if (isset($p_order[$i + 1]) && strtolower($p_order[$i + 1]) == 'desc') {\n                $dir = 'desc';\n            }\n\n            $field = $this->orderMapping[$p_order[$i]];\n            $order[$field] = $dir;\n        }\n\n        return $order;\n    }\n\n\t/**\n\t * Processes the input parameters passed in an array; drops the invalid\n\t * parameters and parameters with invalid values. Returns an array of\n\t * valid parameters.\n\t *\n\t * @param array $p_parameters\n\t * @return array\n\t */\n\tprotected function ProcessParameters(array $p_parameters)\n\t{\n        $user_service = \\Zend_Registry::get('container')->getService('user');\n\n\t    $parameters = array();\n\t    foreach ($p_parameters as $parameter => $value) {\n\t        $parameter = strtolower($parameter);\n\t        switch ($parameter) {\n\t            case 'length':\n\t            case 'columns':\n\t            case 'name':\n\t            case 'order':\n\t                if ($parameter == 'length' || $parameter == 'columns') {\n\t                    $intValue = (int)$value;\n\t                    if (\"$intValue\" != $value || $intValue < 0) {\n\t                        throw new \\InvalidArgumentException(\"CommentsList Property '$parameter' invalid\");\n\t                    }\n\t                    $parameters[$parameter] = (int) $value;\n\t                } else {\n\t                    $parameters[$parameter] = $value;\n\t                }\n\t                break;\n\t            case 'user':\n\t                $user = $user_service->find((int)$value);\n\t                $commenter_ids = array();\n\n\t                foreach ($user->getCommenters() as $commenter) {\n\t                    $commenter_ids[] = $commenter->getId();\n\t                }\n\t                if (count($commenter_ids) > 0) {\n\t                   $parameters['commenters'] = $commenter_ids;\n\t                }\n                    break;\n                case 'status':\n                    $validValues = \\Newscoop\\Entity\\Comment::$status_enum;\n\n                    if (is_array($value)) {\n                        foreach ($value AS $parameterKey => $parameterValue) {\n                            if (!in_array($parameterValue, $validValues)) {\n                                throw new \\InvalidValueException(\"CommentsList Property '$parameter' has invalid value\");\n                            } else {\n                                $value[$parameterKey] = array_search($parameterValue, $validValues);\n                            }\n                        }\n\n                        $parameters[$parameter] = $value;\n\n                    } elseif (!in_array($value, $validValues)) {\n                        throw new \\InvalidValueException(\"CommentsList Property '$parameter' has invalid value\");\n                    } else {\n                        $parameters[$parameter] = array(array_search($value, $validValues));\n                    }\n\n                    break;\n\t            default:\n\t                throw new \\InvalidArgumentException(\"CommentsList Property '$parameter' invalid\");\n\t        }\n\t    }\n\n\t\treturn $parameters;\n\t}\n}\n"
  },
  {
    "path": "newscoop/template_engine/classes/UsersList.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Entity\\User;\nuse Newscoop\\User\\UserCriteria;\n\n/**\n * Users list\n */\nclass UsersList extends ListObject\n{\n    /** @var array */\n    private static $s_orderFields = array(\n        'default',\n        'byusername',\n        'byfirstname',\n        'bylastname',\n    );\n\n    /** @var array */\n    private $orderMapping = array(\n        'byusername' => 'username',\n        'byfirstname' => 'first_name',\n        'bylastname' => 'last_name',\n        'bycreated' => 'created',\n        'byrandom' => 'random',\n    );\n\n    /**\n     * Creates the list of objects. Sets the parameter $p_hasNextElements to\n     * true if this list is limited and elements still exist in the original\n     * list (from which this was truncated) after the last element of this\n     * list.\n     *\n     * @param int $p_start\n     * @param int $p_limit\n     * @param array $p_parameters\n     * @param int &$p_count\n     * @return array\n     */\n    protected function CreateList($p_start = 0, $p_limit = 0, array $p_parameters, &$p_count)\n    {\n\n        $criteria = new UserCriteria();\n        $criteria->status = User::STATUS_ACTIVE;\n        $criteria->is_public = true;\n        $criteria->firstResult = $p_start;\n        $criteria->maxResults = $p_limit;\n        $criteria->orderBy = $this->m_order;\n\n        if (array_key_exists('search', $p_parameters)) {\n            $criteria->query = $p_parameters['search'];\n        } else if (array_key_exists('filter', $p_parameters)) {\n            $filter = $p_parameters['filter'];\n            $criteria->groups = !empty($p_parameters['editor_groups']) ? array_map('intval', explode(',', $p_parameters['editor_groups'])) : array();\n            switch ($filter) {\n                case 'active':\n                    $criteria->orderBy = array('comments' => 'desc');\n                    $criteria->excludeGroups = true;\n                    break;\n\n                case 'editors':\n                    $criteria->excludeGroups = false;\n                    break;\n\n                default:\n                    $criteria->groups = array();\n\n                    // example: filter=\"a-c\"\n                    if (preg_match('/([a-z])-([a-z])/', $filter, $matches)) {\n                        $criteria->nameRange = range($matches[1], $matches[2]);\n                    } else {\n                        CampTemplate::singleton()->trigger_error(\"invalid parameter $filter in filter\", $p_smarty);\n                    }\n                    break;\n            }\n        }\n\n        $service = \\Zend_Registry::get('container')->get('user.list');\n        $list = $service->findByCriteria($criteria);\n        $p_count = count($list);\n\n        $metaUsers = array();\n        foreach ($list as $user) {\n            $metaUsers[] = new MetaUser($user);\n        }\n\n        return $metaUsers;\n    }\n\n    /**\n     * Processes list constraints passed in an array.\n     *\n     * @param array $p_constraints\n     * @return array\n     */\n    protected function ProcessConstraints(array $p_constraints)\n    {\n        return $p_constraints + array(\n            'is_public' => true,\n        );\n    }\n\n    /**\n     * Processes order constraints passed in an array.\n     *\n     * @param array $p_order\n     * @return array\n     */\n    protected function ProcessOrder(array $p_order)\n    {\n        $order = array();\n        for ($i = 0; $i < count($p_order); $i++) {\n            if (in_array(strtolower($p_order[$i]), array('asc', 'desc'))) {\n                continue;\n            }\n\n            if (!isset($this->orderMapping[$p_order[$i]])) {\n                continue;\n            }\n\n            $dir = 'asc';\n            if (isset($p_order[$i + 1]) && strtolower($p_order[$i + 1]) == 'desc') {\n                $dir = 'desc';\n            }\n\n            $field = $this->orderMapping[$p_order[$i]];\n            $order[$field] = $dir;\n        }\n\n        return $order;\n    }\n\n    /**\n     * Processes the input parameters passed in an array; drops the invalid\n     * parameters and parameters with invalid values. Returns an array of\n     * valid parameters.\n     *\n     * @param array $p_parameters\n     * @return array\n     */\n    protected function ProcessParameters(array $p_parameters)\n    {\n        $parameters = array();\n        foreach ($p_parameters as $parameter => $value) {\n            $parameter = strtolower($parameter);\n            switch ($parameter) {\n                case 'length':\n                case 'columns':\n                case 'name':\n                case 'search':\n                case 'filter':\n                case 'editor_groups':\n                case 'constraints':\n                case 'page':\n                case 'order':\n                    if ($parameter == 'length' || $parameter == 'columns') {\n                        $intValue = (int)$value;\n                        if (\"$intValue\" != $value || $intValue < 0) {\n                            CampTemplate::singleton()->trigger_error(\"invalid value $value of parameter $parameter in statement list_article_authors\");\n                        }\n                        $parameters[$parameter] = (int) $value;\n                    } else {\n                        $parameters[$parameter] = $value;\n                    }\n                    break;\n                default:\n                    CampTemplate::singleton()->trigger_error(\"invalid parameter $parameter in list_article_authors\", $p_smarty);\n            }\n        }\n\n        return $parameters;\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaAction.php",
    "content": "<?php\n\ndefine('ACTION_OK', 0);\n\n\nclass MetaAction\n{\n\tconst CACHE_KEY_LIST_OF_ACTIONS = 'template_engine_available_actions';\n\n    /**\n     * True if an action was set up; this member is set to false by the\n     * base class. The specialized class must set it to true.\n     *\n     * @var bool\n     */\n    protected $m_defined = false;\n\n    /**\n     * Action properties\n     *\n     * @var array\n     */\n    protected $m_properties = null;\n\n    /**\n     * Stores the error data\n     *\n     * @var PEAR_Error\n     */\n    protected $m_error = null;\n\n    /**\n     * Stores the action type name\n     *\n     * @var string\n     */\n    protected $m_name = null;\n\n    /**\n     * Stores the available actions\n     *\n     * @var array\n     */\n    private static $m_availableActions = null;\n\n\n    private static $m_defaultAction = null;\n\n\n    /**\n     * Base initializations\n     *\n     * @param array $p_input\n     */\n    public function __construct($p_name = 'default')\n    {\n        $this->m_name = $p_name;\n        if (!is_array($this->m_properties)) {\n            $this->m_properties = array();\n        }\n    }\n\n\n    /**\n     * Performs the action; returns true on success, false on error.\n     *\n     * @param $p_context - the current context object\n     * @return bool\n     */\n    public function takeAction(CampContext &$p_context)\n    {\n        return false;\n    }\n\n\n    /**\n     * Returns the error code of the action. Returns 0 on success,\n     * PEAR_Error object on error.\n     *\n     * @return mixed\n     */\n    protected function getError()\n    {\n        return $this->m_error;\n    }\n\n\n    public static function DefaultAction()\n    {\n    \tif (is_null(self::$m_defaultAction)) {\n    \t\tself::$m_defaultAction = new MetaAction();\n    \t}\n    \treturn self::$m_defaultAction;\n    }\n\n    /**\n     * Factory method; creates an object specialized from MetaAction\n     * based on the given input.\n     *\n     * @param array $p_input\n     * @return MetaAction\n     */\n    public static function CreateAction(array $p_input)\n    {\n        if (count($p_input) == 0) {\n            return self::DefaultAction();\n        }\n\n        $actions = MetaAction::ReadAvailableActions();\n\n        foreach ($p_input as $parameter=>$value) {\n            $parameter = strtolower($parameter);\n            if (strncmp($parameter, 'f_', 2) != 0) {\n                continue;\n            }\n\n            $actionLowerCase = strtolower(substr($parameter, 2));\n            if (isset($actions[$actionLowerCase])) {\n                require_once($actions[$actionLowerCase]['file']);\n                $className = 'MetaAction'.$actions[$actionLowerCase]['name'];\n                return new $className($p_input);\n            }\n        }\n\n        return self::DefaultAction();\n    }\n\n\n    /**\n     * Searches for classes that process actions. Returns an array of\n     * action names.\n     *\n     * @return array\n     */\n    public static function ReadAvailableActions()\n    {\n        if (is_array(MetaAction::$m_availableActions)) {\n            return MetaAction::$m_availableActions;\n        }\n\n        if (self::FetchActionsFromCache()) {\n        \treturn self::$m_availableActions;\n        }\n\n        $actions = array();\n\n        $basePaths = array('.');\n        foreach (CampPlugin::GetEnabled() as $CampPlugin) {\n            $basePaths[] = $CampPlugin->getBasePath();  \n        }\n        foreach ($basePaths as $basePath) {\n            $directoryPath = $GLOBALS['g_campsiteDir'].'/'.$basePath.'/template_engine/metaclasses';\n            $actionIncludeFiles = glob(realpath($directoryPath) . '/MetaAction*.php');\n            foreach ((array)$actionIncludeFiles as $includeFile) {\n                if (preg_match('/MetaAction([^.]+)\\.php/', $includeFile, $matches) == 0\n                || strtolower($matches[1]) == 'request') {\n                    continue;\n                }\n\n                require_once($includeFile);\n                $actionName = $matches[1];\n                if (class_exists('MetaAction'.$actionName)) {\n                    $actions[self::TranslateProperty($actionName)] = array('name'=>$actionName,\n                    'file'=>\"$directoryPath/MetaAction$actionName.php\");\n                }\n            }\n        }    \n        self::$m_availableActions = $actions;\n        self::StoreActionsInCache();\n        return self::$m_availableActions;\n    }\n\n\n    private static function FetchActionsFromCache()\n    {\n    \tif (CampCache::IsEnabled()) {\n            $actions = CampCache::singleton()->fetch(self::CACHE_KEY_LIST_OF_ACTIONS);\n            if ($actions !== false && is_array($actions)) {\n                self::$m_availableActions = $actions;\n                return true;\n            }\n        }\n        return false;\n    }\n\n\n    private static function StoreActionsInCache()\n    {\n    \tif (CampCache::IsEnabled()) {\n            return CampCache::singleton()->add(self::CACHE_KEY_LIST_OF_ACTIONS, self::$m_availableActions);\n        }\n        return false;\n    }\n\n\n    public static function DeleteActionsFromCache()\n    {\n        if (CampCache::IsEnabled()) {\n        \treturn CampCache::singleton()->delete(self::CACHE_KEY_LIST_OF_ACTIONS);\n        }\n        return false;\n    }\n\n\n    /**\n     * Returns the value of the given property; throws\n     * InvalidPropertyHandlerException if the property didn't exist.\n     *\n     * @param string $p_property\n     * @return mixed\n     */\n    public function __get($p_property)\n    {\n        $p_property = MetaAction::TranslateProperty($p_property);\n\n        if ($p_property == 'defined') {\n            return $this->defined();\n        }\n        if ($p_property == 'is_error') {\n            return PEAR::isError($this->m_error);\n        }\n        if ($p_property == 'error_code') {\n            return PEAR::isError($this->m_error) ? $this->m_error->getCode() : null;\n        }\n        if ($p_property == 'error_message') {\n            return PEAR::isError($this->m_error) ? $this->m_error->getMessage() : null;\n        }\n        if ($p_property == 'ok') {\n            return $this->getError() === ACTION_OK;\n        }\n        if ($p_property == 'name') {\n            return $this->m_name;\n        }\n\n        if (!is_array($this->m_properties)\n        || !array_key_exists($p_property, $this->m_properties)) {\n            $this->trigger_invalid_property_error($p_property);\n        }\n        if (is_string($this->m_properties[$p_property])\n        && method_exists($this, $this->m_properties[$p_property])) {\n            $methodName = $this->m_properties[$p_property];\n            return $this->$methodName();\n        }\n        return $this->m_properties[$p_property];\n    } // fn __get\n\n\n    /**\n     * Throws InvalidFunctionException; action properties can not be modified.\n     *\n     * @param string $p_property\n     * @param mixed $p_value\n     */\n    final public function __set($p_property, $p_value)\n    {\n        throw new InvalidFunctionException(get_class($this), '__set');\n    } // fn __set\n\n\n    /**\n     * Throws InvalidFunctionException; action properties can not be modified.\n     *\n     * @param string $p_property\n     */\n    final public function __unset($p_property)\n    {\n        throw new InvalidFunctionException(get_class($this), '__unset');\n    } // fn __set\n\n\n    /**\n     * Returns true if an action was set up.\n     *\n     * @return bool\n     */\n    final public function defined()\n    {\n        return $this->m_defined;\n    } // fn defined\n\n\n    /**\n     * Returns true and sets the error to null if the input field was defined\n     * and it's size respected the minimum size constraint. Returns false and\n     * initializes the error to a pear error object with the given error message\n     * and code if the input field was not defined or did not respect the minimum\n     * size constraint. The minimum size constraint may be null.\n     *\n     * @param array $p_input\n     * @param string $p_fieldName\n     * @param int $p_minSize\n     * @param mixed $p_error\n     * @param string $p_errorMessage\n     * @param mixed $p_errorCode\n     * @return bool\n     */\n    public static function ValidateInput(array $p_input, $p_fieldName, $p_minSize = null,\n    &$p_error, $p_errorMessage, $p_errorCode) {\n        if (isset($p_input[$p_fieldName])\n        && (is_null($p_minSize) || strlen($p_input[$p_fieldName]) >= $p_minSize)) {\n            $p_error = null;\n            return true;\n        }\n        $p_error = new PEAR_Error($p_errorMessage, $p_errorCode);\n        return false;\n    }\n\n\n    /**\n     * Converts the property name to the standard way of naming properties.\n     *\n     * @param string $p_property\n     * @return string\n     */\n    public static function TranslateProperty($p_property)\n    {\n        return strtolower($p_property);\n    }\n\n\n    /**\n     * Registers an error message in the CampTemplate singleton object.\n     *\n     * @param string $p_property\n     * @param mixed $p_smarty\n     */\n    protected function trigger_invalid_property_error($p_property, $p_smarty = null)\n    {\n        $errorMessage = INVALID_PROPERTY_STRING . \" $p_property \"\n        . OF_OBJECT_STRING . ' ' . $this->m_name;\n        CampTemplate::singleton()->trigger_error($errorMessage, $p_smarty);\n    }\n\n}\n\n?>\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaActionLogin.php",
    "content": "<?php\n\ndefine('ACTION_LOGIN_ERR_NO_USER_NAME', 'action_login_err_no_user_name');\ndefine('ACTION_LOGIN_ERR_NO_PASSWORD', 'action_login_err_no_password');\ndefine('ACTION_LOGIN_ERR_INVALID_CREDENTIALS', 'action_login_err_invalid_credentials');\n\nclass MetaActionLogin extends MetaAction\n{\n    private $m_user;\n\n\n    /**\n     * Reads the input parameters and sets up the login action.\n     *\n     * @param array $p_input\n     */\n    public function __construct(array $p_input)\n    {\n        $this->m_defined = true;\n        $this->m_name = 'login';\n        if (!isset($p_input['f_login_uname']) || empty($p_input['f_login_uname'])) {\n            $this->m_error = new PEAR_Error('The user name was not filled in.',\n            ACTION_LOGIN_ERR_NO_USER_NAME);\n            return;\n        }\n        $this->m_properties['user_name'] = $p_input['f_login_uname'];\n        if (!isset($p_input['f_login_password'])) {\n            $this->m_error = new PEAR_Error('The password was not filled in.',\n            ACTION_LOGIN_ERR_NO_PASSWORD);\n            return;\n        }\n\n        global $controller;\n        $adapter = $controller->getHelper('service')->direct('auth.adapter');\n        $adapter->setUsername($p_input['f_login_uname']);\n        $adapter->setPassword($p_input['f_login_password']);\n        $result = Zend_Auth::getInstance()->authenticate($adapter);\n\n        if ($result->getCode() != Zend_Auth_Result::SUCCESS) {\n            $this->m_error = new PEAR_Error('Invalid user credentials', ACTION_LOGIN_ERR_INVALID_CREDENTIALS);\n            return;\n        }\n\n        $this->m_error = ACTION_OK;\n        $this->m_properties['remember_user'] = !empty($p_input['f_login_rememberuser']);\n        $this->m_user = $controller->getHelper('service')->direct('user')->getCurrentUser();\n    }\n\n\n    /**\n     * Performs the action; returns true on success, false on error.\n     *\n     * @param $p_context - the current context object\n     * @return bool\n     */\n    public function takeAction(CampContext &$p_context)\n    {\n        $p_context->default_url->reset_parameter('f_'.$this->m_name);\n        $p_context->url->reset_parameter('f_'.$this->m_name);\n\n        $p_context->default_url->reset_parameter('f_login_uname');\n        $p_context->url->reset_parameter('f_login_uname');\n        $p_context->default_url->reset_parameter('f_login_password');\n        $p_context->url->reset_parameter('f_login_password');\n\n        if (!is_int($this->m_error) || $this->m_error != ACTION_OK) {\n            return false;\n        }\n        $time = $this->m_properties['remember_user'] ? time() + 14 * 24 * 3600 : null;\n\n        $p_context->user = new MetaUser($this->m_user);\n        return true;\n    }\n}\n\n?>\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaActionPreview_Comment.php",
    "content": "<?php\n\ndefine('ACTION_PREVIEW_COMMENT_ERR_NO_SUBJECT', 'action_comment_preview_err_no_subject');\ndefine('ACTION_PREVIEW_COMMENT_ERR_NO_CONTENT', 'action_comment_preview_err_no_content');\ndefine('ACTION_PREVIEW_COMMENT_ERR_NO_ARTICLE', 'action_comment_preview_err_no_article');\ndefine('ACTION_PREVIEW_COMMENT_ERR_NOT_ENABLED', 'action_comment_preview_err_not_enabled');\ndefine('ACTION_PREVIEW_COMMENT_ERR_NO_EMAIL', 'action_comment_preview_err_no_email');\ndefine('ACTION_PREVIEW_COMMENT_ERR_NO_PUBLIC', 'action_comment_preview_err_no_public');\ndefine('ACTION_PREVIEW_COMMENT_ERR_BANNED', 'action_comment_preview_err_banned');\n\n\nclass MetaActionPreview_Comment extends MetaAction\n{\n    /**\n     * Reads the input parameters and sets up the comment preview action.\n     *\n     * @param array $p_input\n     */\n    public function __construct(array $p_input)\n    {   \n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $this->m_defined = true;\n        $this->m_name = 'preview_comment';\n        $this->m_error = null;\n\n        if (!isset($p_input['f_comment_subject']) || empty($p_input['f_comment_subject'])) {\n            $this->m_error = new PEAR_Error('The comment subject was not filled in.',\n            ACTION_PREVIEW_COMMENT_ERR_NO_SUBJECT);\n            return;\n        }\n        if (!isset($p_input['f_comment_content']) || empty($p_input['f_comment_content'])) {\n            $this->m_error = new PEAR_Error('The comment content was not filled in.',\n            ACTION_PREVIEW_COMMENT_ERR_NO_CONTENT);\n            return;\n        }\n        $this->m_properties['nickname'] = isset($p_input['f_comment_nickname']) ?\n                                          $p_input['f_comment_nickname'] : $translator->trans('Anonymous', array(), 'comments');\n        $this->m_properties['subject'] = $p_input['f_comment_subject'];\n        $this->m_properties['content'] = $p_input['f_comment_content'];\n        if (isset($p_input['f_comment_reader_email'])) {\n            $readerEmail = trim($p_input['f_comment_reader_email']);\n            if (!empty($readerEmail)) {\n                $this->m_properties['reader_email'] = $readerEmail;\n            }\n        }\n    }\n\n\n    /**\n     * Performs the action; returns true on success, false on error.\n     *\n     * @param $p_context - the current context object\n     * @return bool\n     */\n    public function takeAction(CampContext &$p_context)\n    {\n        $p_context->default_url->reset_parameter('f_'.$this->m_name);\n        $p_context->url->reset_parameter('f_'.$this->m_name);\n\n        if (!is_null($this->m_error)) {\n            return false;\n        }\n\n        // Check that the article exists.\n        $articleMetaObj = $p_context->default_article;\n        if (!$articleMetaObj->defined) {\n            $this->m_error = new PEAR_Error('The article was not selected. You must view an article in order to post comments.',\n            ACTION_PREVIEW_COMMENT_ERR_NO_ARTICLE);\n            return false;\n        }\n        if (!$articleMetaObj->comments_enabled || $articleMetaObj->comments_locked)  {\n            $this->m_error = new PEAR_Error('Comments are not enabled for this publication/article.',\n            ACTION_PREVIEW_COMMENT_ERR_NOT_ENABLED);\n            return false;\n        }\n\n        // Get the publication.\n        $publicationObj = new Publication($articleMetaObj->publication->identifier);\n\n        $user = $p_context->user;\n        if ($user->defined) {\n            $this->m_properties['reader_email'] = $user->email;\n        } else {\n            if (!isset($this->m_properties['reader_email']))\n            {\n                $this->m_error = new PEAR_Error('You must be a registered user in order to submit a comment. Please subscribe or log in if you already have a subscription.',\n                ACTION_SUBMIT_COMMENT_ERR_NO_PUBLIC);\n                return false;\n            }\n            if(!$publicationObj->getPublicComments())\n            {\n                $this->m_error = new PEAR_Error('EMail field is empty. You must fill in your EMail address.',\n                ACTION_SUBMIT_COMMENT_ERR_NO_EMAIL);\n                return false;\n            }\n        }\n\n        // Check if the reader was banned from posting comments.\n        global $controller;\n        $repositoryAcceptance = $controller->getHelper('entity')->getRepository('Newscoop\\Entity\\Comment\\Acceptance');\n        $repository = $controller->getHelper('entity')->getRepository('Newscoop\\Entity\\Comment');\n        if ($repositoryAcceptance->checkParamsBanned($userRealName, $userEmail, $userIp, $publication_id))\n        {\n            $this->m_error = new PEAR_Error('You are banned from submitting comments.',\n            ACTION_SUBMIT_COMMENT_ERR_BANNED);\n            return false;\n        }\n\n        $this->m_error = ACTION_OK;\n        return true;\n    }\n}\n\n?>"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaActionSearch_Articles.php",
    "content": "<?php\n\ndefine('ACTION_SEARCH_ARTICLES_ERR_NO_KEYWORD', 'action_search_articles_err_no_keyword');\ndefine('ACTION_SEARCH_ARTICLES_ERR_INVALID_SCOPE', 'action_search_articles_err_invalid_scope');\n\n\nclass MetaActionSearch_Articles extends MetaAction\n{\n    const SEARCH_LEVEL_MULTIPLE_PUBLICATION = 0;\n\n    const SEARCH_LEVEL_PUBLICATION = 1;\n\n    const SEARCH_LEVEL_ISSUE = 2;\n\n    const SEARCH_LEVEL_SECTION = 3;\n\n    const DEFAULT_SEARCH_LEVEL = MetaActionSearch_Articles::SEARCH_LEVEL_PUBLICATION;\n\n    /**\n     * Stores the total number of articles that matched the search criteria.\n     *\n     * @var int\n     */\n    private $m_totalCount = null;\n\n\n    /**\n     * Reads the input parameters and sets up the articles search action.\n     *\n     * @param array $p_input\n     */\n    public function __construct(array $p_input)\n    {\n        $this->m_defined = true;\n        $this->m_name = 'search_articles';\n        if (!isset($p_input['f_search_keywords'])) {\n            $this->m_error = new PEAR_Error('No keyword was filled in.',\n            ACTION_SEARCH_ARTICLES_ERR_NO_KEYWORD);\n            return;\n        }\n        $this->m_properties['search_phrase'] = htmlspecialchars($p_input['f_search_keywords']);\n        $this->m_properties['search_keywords'] = preg_split('/[\\s,.-]/', htmlspecialchars($p_input['f_search_keywords']));\n        $this->m_properties['search_results'] = 'getSearchResults';\n\n        $this->m_properties['match_all'] = isset($p_input['f_match_all'])\n        && strtolower($p_input['f_match_all']) == 'on' ? true : null;\n\n        if (isset($p_input['f_search_level'])) {\n            if ($p_input['f_search_level'] < MetaActionSearch_Articles::SEARCH_LEVEL_MULTIPLE_PUBLICATION\n            || $p_input['f_search_level'] > MetaActionSearch_Articles::SEARCH_LEVEL_SECTION) {\n                $p_input['f_search_level'] = MetaActionSearch_Articles::DEFAULT_SEARCH_LEVEL;\n            }\n            $this->m_properties['search_level'] = $p_input['f_search_level'];\n        } else {\n            $this->m_properties['search_level'] = MetaActionSearch_Articles::DEFAULT_SEARCH_LEVEL;\n        }\n\n        if (isset($p_input['f_search_issue']) && $p_input['f_search_issue'] > 0) {\n        \t$this->m_properties['search_issue'] = (int)$p_input['f_search_issue'];\n        } else {\n        \t$this->m_properties['search_issue'] = null;\n        }\n\n        if (isset($p_input['f_search_section']) && $p_input['f_search_section'] > 0) {\n            $this->m_properties['search_section'] = (int)$p_input['f_search_section'];\n        } else {\n            $this->m_properties['search_section'] = null;\n        }\n\n        if (isset($p_input['f_search_start_date']) && !empty($p_input['f_search_start_date'])) {\n        \t$this->m_properties['start_date'] = $p_input['f_search_start_date'];\n        } else {\n        \t$this->m_properties['start_date'] = null;\n        }\n\n        if (isset($p_input['f_search_end_date']) && !empty($p_input['f_search_end_date'])) {\n            $this->m_properties['end_date'] = $p_input['f_search_end_date'];\n        } else {\n            $this->m_properties['end_date'] = null;\n        }\n\n        if (isset($p_input['f_search_topic']) && $p_input['f_search_topic'] > 0) {\n            $this->m_properties['topic_id'] = $p_input['f_search_topic'];\n        } else {\n            $this->m_properties['topic_id'] = null;\n        }\n\n        $this->m_properties['submit_button'] = $p_input['f_search_articles'];\n\n        $this->m_properties['scope'] = 'index';\n        if (isset($p_input['f_search_scope'])) {\n        \t$searchScope = strtolower($p_input['f_search_scope']);\n        \tswitch ($searchScope) {\n        \t\tcase 'keywords':\n        \t\tcase 'content':\n        \t\tcase 'index':\n        \t\t\t$this->m_properties['scope'] = 'index';\n        \t\t\tbreak;\n        \t\tcase 'title':\n        \t\tcase 'author':\n        \t\t\t$this->m_properties['scope'] = $searchScope;\n        \t\t\tbreak;\n        \t\tdefault:\n                    $this->m_error = new PEAR_Error('Invalid search scope specified.',\n                    ACTION_SEARCH_ARTICLES_ERR_INVALID_SCOPE);\n        \t\t\treturn;\n        \t}\n        }\n\n        $this->m_error = ACTION_OK;\n    }\n\n\n    /**\n     * Performs the action; returns true on success, false on error.\n     *\n     * @param $p_context - the current context object\n     * @return bool\n     */\n    public function takeAction(CampContext &$p_context)\n    {\n        if (isset($p_input['tpl'])) {\n            $template = new MetaTemplate($p_input['tpl']);\n            if ($template->defined()) {\n                $this->m_properties['template'] = $template;\n            } else {\n                $this->m_properties['template'] = $p_context->template;\n            }\n        } else {\n            $this->m_properties['template'] = $p_context->template;\n        }\n\n        $fields = array('f_search_articles', 'f_match_all', 'f_search_level',\n                        'f_search_keywords', 'f_search_issue', 'f_search_section',\n                        'f_search_start_date', 'f_search_end_date', 'f_search_topic_id',\n                        'f_search_scope');\n        foreach ($fields as $field) {\n            $p_context->default_url->reset_parameter($field);\n            $p_context->url->reset_parameter($field);\n        }\r\n\r\n\t    $operator = new Operator('is', 'integer');\r\n\t    $this->m_properties['constraints'] = array();\r\n\t    if ($this->m_properties['search_level'] >= MetaActionSearch_Articles::SEARCH_LEVEL_PUBLICATION\n\t    && $p_context->publication->defined) {\r\n\t        $this->m_properties['constraints'][] = new ComparisonOperation('Articles.IdPublication', $operator,\r\n\t                                                         $p_context->publication->identifier);\r\n\t    }\r\n\t    if ($this->m_properties['search_level'] >= MetaActionSearch_Articles::SEARCH_LEVEL_ISSUE\n\t    && $p_context->issue->defined && $this->m_properties['search_issue'] == 0) {\r\n\t        $this->m_properties['constraints'][] = new ComparisonOperation('Articles.NrIssue', $operator,\r\n\t                                                         $p_context->issue->number);\r\n\t    }\r\n\t    if ($this->m_properties['search_level'] >= MetaActionSearch_Articles::SEARCH_LEVEL_SECTION\n\t    && $p_context->section->defined && $this->m_properties['search_section'] == 0) {\r\n\t        $this->m_properties['constraints'][] = new ComparisonOperation('Articles.NrSection', $operator,\r\n\t                                                         $p_context->section->number);\r\n\t    }\n\t    if ($this->m_properties['search_issue'] > 0) {\n\t    \t$this->m_properties['constraints'][] = new ComparisonOperation('Articles.NrIssue', $operator,\n                                                             $this->m_properties['search_issue']);\n\t    }\n        if ($this->m_properties['search_section'] > 0) {\n            $this->m_properties['constraints'][] = new ComparisonOperation('Articles.NrSection', $operator,\n                                                             $this->m_properties['search_section']);\n        }\n\t    if (!empty($this->m_properties['start_date'])) {\n            $startDateOperator = new Operator('greater_equal', 'date');\n\t    \t$this->m_properties['constraints'][] = new ComparisonOperation('Articles.PublishDate', $startDateOperator,\n\t    \t                                                 $this->m_properties['start_date']);\n\t    }\r\n\t    if (!empty($this->m_properties['end_date'])) {\n            $endDateOperator = new Operator('smaller_equal', 'date');\n\t    \t$this->m_properties['constraints'][] = new ComparisonOperation('Articles.PublishDate', $endDateOperator,\n                                                             $this->m_properties['end_date']);\n        }\n        if (!empty($this->m_properties['topic_id'])) {\n            $this->m_properties['constraints'][] = new ComparisonOperation('ArticleTopics.TopicId', $operator,\n                                                             $this->m_properties['topic_id']);\n        }\n        return true;\n    }\n\n\n    /**\n     * Returns the value of the given property; throws\n     * InvalidPropertyHandlerException if the property didn't exist.\n     *\n     * @param string $p_property\n     * @return mixed\n     */\n    public function __get($p_property)\n    {\n        $p_property = MetaAction::TranslateProperty($p_property);\n        if ($p_property == 'results_count') {\n        \tif (!empty($this->m_totalCount)) {\n        \t\treturn $this->m_totalCount;\n        \t}\n            if ($this->m_properties['scope'] == 'index') {\n                Article::SearchByKeyword($this->m_properties['search_keywords'],\n                                         $this->m_properties['match_all'],\n                                         $this->m_properties['constraints'],\n                                         array(), 0, 0,\n                                         $this->m_totalCount, true);\n            } else {\n                Article::SearchByField($this->m_properties['search_keywords'],\n                                       $this->m_properties['scope'],\n                                       $this->m_properties['match_all'],\n                                       $this->m_properties['constraints'],\n                                       array(), 0, 0,\n                                       $this->m_totalCount, true);\n            }\n            return $this->m_totalCount;\n        }\n        return parent::__get($p_property);\n    }\n}\n\n?>"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaActionSubmit_Comment.php",
    "content": "<?php\ndefine('ACTION_SUBMIT_COMMENT_ERR_INTERNAL', 'action_comment_submit_err_internal');\ndefine('ACTION_SUBMIT_COMMENT_ERR_NO_SUBJECT', 'action_comment_submit_err_no_subject');\ndefine('ACTION_SUBMIT_COMMENT_ERR_NO_CONTENT', 'action_comment_submit_err_no_content');\ndefine('ACTION_SUBMIT_COMMENT_ERR_NO_ARTICLE', 'action_comment_submit_err_no_article');\ndefine('ACTION_SUBMIT_COMMENT_ERR_NOT_ENABLED', 'action_comment_submit_err_not_enabled');\ndefine('ACTION_SUBMIT_COMMENT_ERR_NO_EMAIL', 'action_comment_submit_err_no_email');\ndefine('ACTION_SUBMIT_COMMENT_ERR_NO_PUBLIC', 'action_comment_submit_err_no_public');\ndefine('ACTION_SUBMIT_COMMENT_ERR_NO_CAPTCHA_CODE', 'action_comment_submit_err_no_captcha_code');\ndefine('ACTION_SUBMIT_COMMENT_ERR_INVALID_CAPTCHA_CODE', 'action_comment_submit_err_invalid_captcha_code');\ndefine('ACTION_SUBMIT_COMMENT_ERR_BANNED', 'action_comment_submit_err_banned');\ndefine('ACTION_SUBMIT_COMMENT_ERR_REJECTED', 'action_comment_submit_err_rejected');\n\nrequire_once($GLOBALS['g_campsiteDir'].'/include/captcha/php-captcha.inc.php');\n\nclass MetaActionSubmit_Comment extends MetaAction\n{\n    /**\n     * Reads the input parameters and sets up the comment submit action.\n     *\n     * @param array $p_input\n     */\n    public function __construct(array $p_input)\n    {\n        $this->m_defined = true;\n        $this->m_name = 'submit_comment';\n        $this->m_error = null;\n        $this->m_properties['rejected'] = null;\n\n        $p_input += array('f_comment_is_anonymous' => false);\n\n        if (!isset($p_input['f_comment_content']) || empty($p_input['f_comment_content'])) {\n            $this->m_error = new PEAR_Error('The comment content was not filled in.',\n            ACTION_SUBMIT_COMMENT_ERR_NO_CONTENT);\n            return;\n        }\n        $this->m_properties['nickname'] = isset($p_input['f_comment_nickname']) ?\n                                          $p_input['f_comment_nickname'] : '';\n        $this->m_properties['subject'] = (!empty($p_input['f_comment_subject'])) ? $p_input['f_comment_subject'] : '';\n        $this->m_properties['parent'] = (!empty($p_input['f_comment_parent'])) ? $p_input['f_comment_parent'] : 0;\n        $this->m_properties['content'] = $p_input['f_comment_content'];\n        $this->m_properties['is_anonymous'] = $p_input['f_comment_is_anonymous'];\n        $this->m_properties['bot_detect'] = $p_input['f_comment_email_protect'];\n\n        if (isset($p_input['f_comment_reader_email'])) {\n            $readerEmail = trim($p_input['f_comment_reader_email']);\n            if (!empty($readerEmail)) {\n                $this->m_properties['reader_email'] = $readerEmail;\n            }\n        }\n    }\n\n    /**\n     * @return void\n     */\n    private function _processCaptcha()\n    {\n        //@session_start();\n        $captchaHandler = CampRequest::GetVar('f_captcha_handler', '', 'POST');\n        if (!empty($captchaHandler)) {\n            $captcha = Captcha::factory($captchaHandler);\n            if (!$captcha->validate()) {\n                $this->m_error = new PEAR_Error('The code you entered is not the same as the one shown.',\n                ACTION_SUBMIT_COMMENT_ERR_INVALID_CAPTCHA_CODE);\n                return FALSE;\n            }\n        } else {\n            $f_captcha_code = CampRequest::GetVar('f_captcha_code');\n            if (is_null($f_captcha_code) || empty($f_captcha_code)) {\n                $this->m_error = new PEAR_Error('Please enter the code shown in the image.',\n                ACTION_SUBMIT_COMMENT_ERR_NO_CAPTCHA_CODE);\n                return FALSE;\n            }\n            if (!PhpCaptcha::Validate($f_captcha_code, true)) {\n                $this->m_error = new PEAR_Error('The code you entered is not the same with the one shown in the image.',\n                ACTION_SUBMIT_COMMENT_ERR_INVALID_CAPTCHA_CODE);\n                return FALSE;\n            }\n        }\n        return TRUE;\n    }\n\n    /**\n     * Performs the action; returns true on success, false on error.\n     *\n     * @param $p_context - the current context object\n     * @return bool\n     */\n    public function takeAction(CampContext &$p_context)\n    {\n        $p_context->default_url->reset_parameter('f_'.$this->m_name);\n        $p_context->url->reset_parameter('f_'.$this->m_name);\n        \\CampRequest::SetVar('f_'.$this->m_name);\n\n        $translator = \\Zend_Registry::get('container')->getService('translator');\n        $userService = \\Zend_Registry::get('container')->getService('user');\n\n        if (!is_null($this->m_error)) {\n            return false;\n        }\n\n        // Check that the article exists.\n        $articleMetaObj = $p_context->default_article;\n        if (!$articleMetaObj->defined) {\n            $this->m_error = new PEAR_Error('The article was not selected. You must view an article in order to post comments.',\n            ACTION_SUBMIT_COMMENT_ERR_NO_ARTICLE);\n            return false;\n        }\n        if (!$articleMetaObj->comments_enabled || $articleMetaObj->comments_locked)  {\n            $this->m_error = new PEAR_Error('Comments are not enabled for this publication/article.',\n            ACTION_SUBMIT_COMMENT_ERR_NOT_ENABLED);\n            return false;\n        }\n\n        // Detect if it's a bot bot_detect\n        if (!empty($this->m_properties['bot_detect']))  {\n            $this->m_error = new PEAR_Error('The comment cannot be submitted.',\n            ACTION_SUBMIT_COMMENT_BOT_DETECTED);\n            return false;\n        }\n\n        $publication_id =  $articleMetaObj->publication->identifier;\n\n        // Get the publication.\n        $publicationObj = new Publication($publication_id);\n        $user = $p_context->user;\n        $userIp = $userService->getUserIp();\n\n        if ($user->defined)\n        {\n            $userId = $user->identifier;\n            $userEmail = $user->email;\n            if ($this->m_properties['nickname'] == '') {\n\t\t\t\t$userRealName = $user->name;\n\t\t\t}\n            else {\n\t\t\t\t$userRealName = $this->m_properties['nickname'];\n\t\t\t}\n\t\t\tif ($this->m_properties['is_anonymous']) {\n\t\t\t\t$userRealName = $translator->trans('Anonymous', array(), 'comments');\n\t\t\t}\n        }\n        else\n        {\n            if(!$publicationObj->getPublicComments())\n            {\n                $this->m_error = new PEAR_Error('You must be a registered user in order to submit a comment. Please subscribe or log in if you already have a subscription.',\n                ACTION_SUBMIT_COMMENT_ERR_NO_PUBLIC);\n                return false;\n            }\n            else\n            {\n                if (!isset($this->m_properties['reader_email'])) {\n                    $this->m_error = new PEAR_Error('EMail field is empty. You must fill in your EMail address.',\n                    ACTION_SUBMIT_COMMENT_ERR_NO_EMAIL);\n                    return false;\n                }\n            }\n            $userId = null;\n            $userEmail = $this->m_properties['reader_email'];\n\n            $userRealName = $this->m_properties['nickname'];\n        }\n\n        // Validate the CAPTCHA code if it was enabled for the current publication.\n        if ($publicationObj->isCaptchaEnabled()) {\n            if ($this->_processCaptcha() === FALSE) {\n                return FALSE;\n            }\n        }\n        // Check if the reader was banned from posting comments.\n        global $controller;\n        $repositoryAcceptance = $controller->getHelper('entity')->getRepository('Newscoop\\Entity\\Comment\\Acceptance');\n        $repository = $controller->getHelper('entity')->getRepository('Newscoop\\Entity\\Comment');\n        if ($repositoryAcceptance->checkParamsBanned($userRealName, $userEmail, $userIp, $publication_id))\n        {\n            $this->m_error = new PEAR_Error('You are banned from submitting comments.',\n            ACTION_SUBMIT_COMMENT_ERR_BANNED);\n            return false;\n        }\n        // get the article object\n        $articleObj = new Article($articleMetaObj->language->number, $articleMetaObj->number);\n\n        // Set the parent to the currently viewed comment if a certain existing\n        // comment was selected. Otherwise, set the parent identifier to the root message.\n\n        // Create the comment. If there was an error creating the comment set the\n        // error code to 'internal error' and exit.\n        $values = array(\n            'thread' => $articleMetaObj->number,\n            'language' => $articleMetaObj->language->code,\n            'name' => $userRealName,\n            'email'=> $userEmail,\n            'message' =>  $this->m_properties['content'],\n            'subject' => $this->m_properties['subject'],\n            'parent' => $this->m_properties['parent'],\n            'ip' => $userIp,\n            'time_created' => new DateTime\n        );\n\n        // If the user was unknown (public comment) and public comments were moderated\n        // or the user was known (subscriber comment) and subscriber comments were moderated\n        // set the comment status to 'hold'. Otherwise, set the status to 'approved'.\n        if ((!is_null($userId) && $publicationObj->commentsSubscribersModerated())\n        || (is_null($userId) && $publicationObj->commentsPublicModerated())) {\n            $values['status'] = \"pending\";\n        } else {\n            $values['status'] = \"approved\";\n        }\n\n        // If the user was known set it\n        if(!is_null($userId))\n            $values['user'] = $userId;\n\n        //If there is a comment idetifier set it the parent of the comment\n        if($p_context->comment->identifier)\n            $values['parent'] = $p_context->comment->identifier;\n\n        $commentObj = $repository->getPrototype();\n        $comment = $repository->save($commentObj,$values);\n        $repository->flush();\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheService->clearNamespace('comment');\n\n        if (!$comment) {\n            $this->m_error = new PEAR_Error('There was an internal error when submitting the comment (code 3).',\n            ACTION_SUBMIT_COMMENT_ERR_INTERNAL);\n            return false;\n        }\n\n        $p_context->default_url->reset_parameter('f_comment_reader_email');\n        $p_context->default_url->reset_parameter('f_comment_subject');\n        $p_context->default_url->reset_parameter('f_comment_content');\n        $p_context->default_url->reset_parameter('f_comment_parent');\n        $p_context->default_url->reset_parameter('f_submit_comment');\n        $p_context->default_url->reset_parameter('f_captcha_code');\n        $p_context->url->reset_parameter('f_comment_reader_email');\n        $p_context->url->reset_parameter('f_comment_subject');\n        $p_context->url->reset_parameter('f_comment_content');\n        $p_context->url->reset_parameter('f_comment_parent');\n        $p_context->url->reset_parameter('f_submit_comment');\n        $p_context->url->reset_parameter('f_captcha_code');\n\n        $this->m_properties['rejected'] = false;\n\n        $this->m_error = ACTION_OK;\n\n        header('Location: ' . $_SERVER['REQUEST_URI'], true, 303);\n        exit(0);\n    }\n\n}\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaArticle.php",
    "content": "<?php\n/**\n * @package Newscoop\n */\n\nrequire_once __DIR__ . '/../../classes/Article.php';\nrequire_once __DIR__ . '/../../classes/ArticleAttachment.php';\nrequire_once __DIR__ . '/../../classes/Language.php';\nrequire_once __DIR__ . '/MetaDbObject.php';\nrequire_once __DIR__ . '/MetaArticleSlideshowList.php';\n\n/**\n */\nfinal class MetaArticle extends MetaDbObject\n{\n    private $m_articleData = null;\n\n    private $m_state = null;\n\n    private $m_contentCache = null;\n\n    private static $m_baseProperties = array(\n    'name'=>'Name',\n    'title'=>'Name',\n    'number'=>'Number',\n    'keywords'=>'Keywords',\n    'type_name'=>'Type',\n    'creation_date'=>'UploadDate',\n    'publish_date'=>'PublishDate',\n    'url_name'=>'ShortName',\n    'comments_locked'=>'comments_locked',\n    'last_update'=>'time_updated',\n    'request_object_id'=>'object_id',\n    );\n\n    private static $m_defaultCustomProperties = array(\n    'year'=>'getCreationYear',\n    'mon'=>'getCreationMonth',\n    'wday'=>'getCreationWeekDay',\n    'mday'=>'getCreationMonthDay',\n    'yday'=>'getCreationYearDay',\n    'hour'=>'getCreationHour',\n    'min'=>'getCreationMinute',\n    'sec'=>'getCreationSecond',\n    'mon_name'=>'getCreationMonthName',\n    'wday_name'=>'getCreationWeekDayName',\n    'template'=>'getTemplate',\n    'rating_enabled'=>'getRatingEnabled',\n    'comments_enabled'=>'getCommentsEnabled',\n    'on_front_page'=>'getOnFrontPage',\n    'on_section_page'=>'getOnSectionPage',\n    'is_published'=>'getIsPublished',\n    'is_public'=>'getIsPublic',\n    'is_indexed'=>'getIsIndexed',\n    'publication'=>'getPublication',\n    'issue'=>'getIssue',\n    'section'=>'getSection',\n    'language'=>'getLanguage',\n    'owner'=>'getOwner',\n    'author'=>'getAuthor',\n    'authors'=>'getAuthors',\n    'defined'=>'defined',\n    'has_attachments'=>'hasAttachments',\n    'has_map'=>'hasMap',\n    'map'=>'getMap',\n    'image_index'=>'getImageIndex',\n    'comment_count'=>'getCommentCount',\n    'comment_count_all_lang'=>'getCommentCountAllLang',\n    'recommended_comment_count'=>'getRecommendedCommentCount',\n    'content_accessible'=>'isContentAccessible',\n    'image'=>'getImage',\n    'reads'=>'getReads',\n    'topics_count'=>'topicsCount',\n    'has_topics'=>'hasTopics',\n    'topics'=>'getTopics',\n    'type_translation'=>'getTypeTranslated',\n    'seo_url_end'=>'getSEOURLEnd',\n    'url' =>'getUrl',\n    'webcode' => 'getWebcode',\n    'dates' => 'getDatetime'\n    );\n\n    /** @var Article */\n    private $bloginfo;\n\n    /** @var array */\n    private $renditions;\n\n    /** @var array */\n    public $slideshows;\n\n    public function __construct($p_languageId = null, $p_articleId = null)\n    {\n        $this->m_properties = self::$m_baseProperties;\n        $this->m_customProperties = self::$m_defaultCustomProperties;\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey('legacy_article_'.$p_languageId.'_'.$p_articleId, 'article');\n        if ($cacheService->contains($cacheKey)) {\n            $this->m_dbObject = $cacheService->fetch($cacheKey);\n        } else {\n            $this->m_dbObject = new Article($p_languageId, $p_articleId);\n            if ($p_languageId && $p_articleId) {\n                $cacheService->save($cacheKey, $this->m_dbObject);\n            }\n        }\n\n        if ($this->m_dbObject->exists()) {\n            $cacheKeyArticleData = $cacheService->getCacheKey(array('articleData', $this->m_dbObject->getType(),\n            $this->m_dbObject->getArticleNumber(), $this->m_dbObject->getLanguageId()), 'article');\n            if ($cacheService->contains($cacheKeyArticleData)) {\n                $this->m_articleData = $cacheService->fetch($cacheKeyArticleData);\n            } else {\n                $this->m_articleData = new ArticleData($this->m_dbObject->getType(),\n                    $this->m_dbObject->getArticleNumber(),\n                    $this->m_dbObject->getLanguageId());\n                $cacheService->save($cacheKeyArticleData, $this->m_articleData);\n            }\n\n            foreach ($this->m_articleData->m_columnNames as $property) {\n                if ($property[0] != 'F') {\n                    continue;\n                }\n                $property = substr($property, 1);\n                $tr_property = strtolower($property);\n                if (array_key_exists($tr_property, $this->m_customProperties)) {\n                    continue;\n                }\n                $this->m_customProperties[$tr_property] = array($property);\n            }\n        } else {\n            if (!is_null($p_languageId) || !is_null($p_articleId)) {\n                $this->m_dbObject = new Article();\n            }\n            $this->m_articleData = new ArticleData(null, null, null);\n        }\n\n        $this->slideshows = new MetaArticleSlideshowList($p_articleId);\n    } // fn __construct\n\n    final public function __get($p_property)\n    {\n        $property = $this->translateProperty($p_property);\n        if ($this->m_state == 'type_name_error') {\n            $this->m_state = null;\n\n            return null;\n        }\n\n        if ($property == 'type' && $this->m_state == null) {\n            $this->m_state = 'type';\n\n            return $this;\n        }\n\n        if ($this->m_state == 'type') {\n            if (strcasecmp($this->m_dbObject->getType(), $property) != 0) {\n                $this->m_state = 'type_name_error';\n            } else {\n                $this->m_state = null;\n            }\n\n            return $this;\n        }\n\n        if (is_null($this->m_state) && $property != 'image_index'\n        && strncasecmp('image', $property, 5) == 0 && strlen($property) > 5) {\n            $imageNo = substr($property, 5);\n            $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n            $cacheKey = $cacheService->getCacheKey(array('MetaImage', $this->m_dbObject->getArticleNumber(), $imageNo), 'article');\n            if ($cacheService->contains($cacheKey)) {\n                return $cacheService->fetch($cacheKey);\n            } else {\n                $articleImage = new ArticleImage($this->m_dbObject->getArticleNumber(), null, $imageNo);\n                if (!$articleImage->exists()) {\n                    $this->trigger_invalid_property_error($p_property);\n                    $metaImage = new MetaImage();\n                } else {\n                    $metaImage = new MetaImage($articleImage->getImageId());\n                }\n                $cacheService->save($cacheKey, $metaImage);\n\n                return $metaImage;\n            }\n        }\n\n        try {\n            if (array_search($property, $this->m_properties)) {\n                $methodName = $this->m_getPropertyMethod;\n                $propertyValue = $this->m_dbObject->$methodName($property);\n            } elseif (array_key_exists($property, $this->m_customProperties)) {\n                return $this->getCustomProperty($property);\n            } else { // empty\n                //$this->trigger_invalid_property_error($p_property);\n                return null;\n            }\n            if (empty($propertyValue) || !is_string($propertyValue) || is_numeric($propertyValue)) {\n                return $propertyValue;\n            }\n            if (count($this->m_skipFilter) == 0 || !in_array(strtolower($p_property), $this->m_skipFilter)) {\n                $propertyValue = self::htmlFilter($propertyValue);\n            }\n\n            return $propertyValue;\n        } catch (InvalidPropertyException $e) {\n            $this->trigger_invalid_property_error($p_property);\n\n            return null;\n        }\n    } // fn __get\n\n    public function subtitle_url_id($p_fieldName)\n    {\n        $property = $this->translateProperty($p_fieldName);\n\n        return 'st-'.$property;\n    }\n\n    public function current_subtitle_no($p_fieldName)\n    {\n        $property = $this->translateProperty($p_fieldName);\n        if (isset($this->m_customProperties[$property])\n        && is_array($this->m_customProperties[$property])) {\n            $dbProperty = $this->m_customProperties[$property][0];\n            $articleFieldType = new ArticleTypeField($this->type_name, $dbProperty);\n            if ($articleFieldType->getType() == ArticleTypeField::TYPE_BODY) {\n                $subtitleId = $this->subtitle_url_id($p_fieldName);\n\n                return CampTemplate::singleton()->context()->default_url->get_parameter($subtitleId);\n            }\n        }\n\n        return null;\n    }\n\n    protected function getCustomProperty($p_property)\n    {\n        $property = $this->translateProperty($p_property);\n        if (isset($this->m_customProperties[$property])\n        && is_array($this->m_customProperties[$property])) {\n            try {\n                $dbProperty = $this->m_customProperties[$property][0];\n                $fieldValue = $this->m_articleData->getProperty('F'.$dbProperty);\n\n                $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n                $cacheKey = $cacheService->getCacheKey(array('ArticleTypeField', $this->type_name, $dbProperty), 'article_type');\n                if ($cacheService->contains($cacheKey)) {\n                    $articleFieldType = $cacheService->fetch($cacheKey);\n                } else {\n                    $articleFieldType = new ArticleTypeField($this->type_name, $dbProperty);\n                    $cacheService->save($cacheKey, $articleFieldType);\n                }\n                if ($articleFieldType->getType() == ArticleTypeField::TYPE_BODY) {\n                    if (is_null($this->getContentCache($property))) {\n                        $context = CampTemplate::singleton()->context();\n                        $subtitleId = $this->subtitle_url_id($property);\n                        $subtitleNo = $context->default_url->get_parameter($subtitleId);\n                        if (is_null($subtitleNo)) {\n                            $subtitleNo = 0;\n                        } elseif ($subtitleNo === 'all') {\n                            $subtitleNo = null;\n                        }\n                        $bodyField = new MetaArticleBodyField($fieldValue, $this,\n                                         $articleFieldType->getPrintName(), $this->name, $subtitleNo,\n                                         '<span class=\"subtitle\"><p>', '</p></span>');\n                        $this->setContentCache($property, $bodyField);\n                    }\n                    $fieldValue = $this->getContentCache($property);\n                }\n                if ($articleFieldType->getType() == ArticleTypeField::TYPE_TOPIC) {\n                    $fieldValue = TopicName::GetTopicNames($fieldValue);\n                    $fieldValue = $fieldValue[$this->m_dbObject->getProperty('IdLanguage')];\n                }\n\n                return $fieldValue;\n            } catch (InvalidPropertyException $e) {\n                // do nothing; will throw another exception with original property field name\n            }\n            throw new InvalidPropertyException(get_class($this->m_dbObject), $p_property);\n        }\n\n        return parent::getCustomProperty($p_property);\n    }\n\n    private function getContentCache($p_property)\n    {\n        $p_property = $this->translateProperty($p_property);\n        if (is_null($this->m_contentCache)\n        || !isset($this->m_contentCache[$p_property])) {\n            return null;\n        }\n\n        return $this->m_contentCache[$p_property];\n    }\n\n    private function setContentCache($p_property, $p_value)\n    {\n        $p_property = $this->translateProperty($p_property);\n        $this->m_contentCache[$p_property] = $p_value;\n    }\n\n    protected function getCreationYear()\n    {\n        $creation_timestamp = strtotime($this->m_dbObject->getProperty('UploadDate'));\n        $creation_date_time = getdate($creation_timestamp);\n\n        return $creation_date_time['year'];\n    }\n\n    protected function getCreationMonth()\n    {\n        $creation_timestamp = strtotime($this->m_dbObject->getProperty('UploadDate'));\n        $creation_date_time = getdate($creation_timestamp);\n\n        return $creation_date_time['mon'];\n    }\n\n    protected function getCreationWeekDay()\n    {\n        $creation_timestamp = strtotime($this->m_dbObject->getProperty('UploadDate'));\n        $creation_date_time = getdate($creation_timestamp);\n\n        return $creation_date_time['wday'];\n    }\n\n    protected function getCreationMonthDay()\n    {\n        $creation_timestamp = strtotime($this->m_dbObject->getProperty('UploadDate'));\n        $creation_date_time = getdate($creation_timestamp);\n\n        return $creation_date_time['mday'];\n    }\n\n    protected function getCreationYearDay()\n    {\n        $creation_timestamp = strtotime($this->m_dbObject->getProperty('UploadDate'));\n        $creation_date_time = getdate($creation_timestamp);\n\n        return $creation_date_time['yday'];\n    }\n\n    protected function getCreationHour()\n    {\n        $creation_timestamp = strtotime($this->m_dbObject->getProperty('UploadDate'));\n        $creation_date_time = getdate($creation_timestamp);\n\n        return $creation_date_time['hours'];\n    }\n\n    protected function getCreationMinute()\n    {\n        $creation_timestamp = strtotime($this->m_dbObject->getProperty('UploadDate'));\n        $creation_date_time = getdate($creation_timestamp);\n\n        return $creation_date_time['minutes'];\n    }\n\n    protected function getCreationSecond()\n    {\n        $creation_timestamp = strtotime($this->m_dbObject->getProperty('UploadDate'));\n        $creation_date_time = getdate($creation_timestamp);\n\n        return $creation_date_time['seconds'];\n    }\n\n    protected function getCreationMonthName()\n    {\n        $dateTime = new MetaDatetime($this->m_dbObject->getProperty('UploadDate'));\n\n        return $dateTime->getMonthName();\n    }\n\n    protected function getCreationWeekDayName()\n    {\n        $dateTime = new MetaDatetime($this->m_dbObject->getProperty('UploadDate'));\n\n        return $dateTime->getWeekDayName();\n    }\n\n    protected function getOnFrontPage()\n    {\n        return (int) ($this->m_dbObject->getProperty('OnFrontPage') == 'Y');\n    }\n\n    protected function getOnSectionPage()\n    {\n        return (int) ($this->m_dbObject->getProperty('OnSection') == 'Y');\n    }\n\n    protected function getIsPublished()\n    {\n        return (int) ($this->m_dbObject->getProperty('Published') == 'Y');\n    }\n\n    protected function getIsPublic()\n    {\n        return (int) ($this->m_dbObject->getProperty('Public') == 'Y');\n    }\n\n    protected function getIsIndexed()\n    {\n        return (int) ($this->m_dbObject->getProperty('IsIndexed') == 'Y');\n    }\n\n    protected function getPublication()\n    {\n        return new MetaPublication($this->m_dbObject->getProperty('IdPublication'));\n    }\n\n    protected function getIssue()\n    {\n        return new MetaIssue($this->m_dbObject->getProperty('IdPublication'),\n        $this->m_dbObject->getProperty('IdLanguage'),\n        $this->m_dbObject->getProperty('NrIssue'));\n    }\n\n    protected function getSection()\n    {\n        return new MetaSection($this->m_dbObject->getProperty('IdPublication'),\n        $this->m_dbObject->getProperty('NrIssue'),\n        $this->m_dbObject->getProperty('IdLanguage'),\n        $this->m_dbObject->getProperty('NrSection'));\n    }\n\n    protected function getLanguage()\n    {\n        return new MetaLanguage($this->m_dbObject->getProperty('IdLanguage'));\n    }\n\n    protected function getOwner()\n    {\n        $container = Zend_Registry::get('container');\n        $userService =  $container->getService('user');\n\n        return new MetaUser($userService->find($this->m_dbObject->getProperty('IdUser')));\n    }\n\n    protected function getAuthor()\n    {\n        $authors = ArticleAuthor::GetAuthorsByArticle($this->m_dbObject->getProperty('Number'),\n            $this->m_dbObject->getProperty('IdLanguage'));\n        $author = array_shift($authors);\n        if (is_null($author)) {\n            return new MetaAuthor();\n        } else {\n            return new MetaAuthor($author->getId(), $author->getAuthorType());\n        }\n    }\n\n    protected function getAuthors()\n    {\n        $authors = ArticleAuthor::GetAuthorsByArticle($this->m_dbObject->getProperty('Number'),\n            $this->m_dbObject->getProperty('IdLanguage'));\n        if (!is_array($authors)) {\n            $authors = array();\n        }\n\n        $metaAuthors = array();\n        foreach ($authors as $author) {\n            $metaAuthors[] = new MetaAuthor($author->getId(), $author->getType());\n        }\n\n        return $metaAuthors;\n    }\n\n    protected function getTemplate()\n    {\n        $articleSection = new Section($this->m_dbObject->getProperty('IdPublication'),\n        $this->m_dbObject->getProperty('NrIssue'),\n        $this->m_dbObject->getProperty('IdLanguage'),\n        $this->m_dbObject->getProperty('NrSection'));\n        if ($articleSection->getArticleTemplateId() > 0) {\n            return new MetaTemplate($articleSection->getArticleTemplateId());\n        }\n        $articleIssue = new Issue($this->m_dbObject->getProperty('IdPublication'),\n        $this->m_dbObject->getProperty('IdLanguage'),\n        $this->m_dbObject->getProperty('NrIssue'));\n\n        return new MetaTemplate($articleIssue->getArticleTemplateId());\n    }\n\n    protected function hasAttachments()\n    {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('hasAttachments', $this->m_dbObject->getProperty('Number')), 'attachments');\n        if ($cacheService->contains($cacheKey)) {\n            $attachments = $cacheService->fetch($cacheKey);\n        } else {\n            $attachments = ArticleAttachment::GetAttachmentsByArticleNumber($this->m_dbObject->getProperty('Number'));\n            $cacheService->save($cacheKey, $attachments);\n        }\n\n        return (int) (sizeof($attachments) > 0);\n    }\n\n    /**\n     * Has Article a map?\n     *\n     * @return bool\n     */\n    protected function hasMap()\n    {\n        $map = Geo_Map::GetMapByArticle($this->m_dbObject->getProperty('Number'));\n\n        return (bool) $map->exists();\n    }\n\n    /**\n     * Get Map for this article\n     *\n     * @return Geo_Map\n     */\n    protected function getMap()\n    {\n        $map = Geo_Map::GetMapByArticle($this->m_dbObject->getProperty('Number'));\n\n        return new MetaMap($map);\n    }\n\n    protected function getRatingEnabled()\n    {\n        return (bool) ($this->m_dbObject->ratingEnabled() == '1');\n    }\n\n    protected function getCommentsEnabled()\n    {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('are_comments_enabled', $this->m_dbObject->getProperty('IdPublication'), $this->m_dbObject->getProperty('Type'), $this->m_dbObject->getArticleNumber(), $this->m_dbObject->getLanguageId()), 'publication');\n        if ($cacheService->contains($cacheKey)) {\n            return $cacheService->fetch($cacheKey);\n        }\n\n        $publicationObj = new Publication($this->m_dbObject->getProperty('IdPublication'));\n        $articleTypeObj = new ArticleType($this->m_dbObject->getProperty('Type'));\n\n        $commentsEnabled = $publicationObj->commentsEnabled() && $articleTypeObj->commentsEnabled() && $this->m_dbObject->commentsEnabled();\n        $cacheService->save($cacheKey, $commentsEnabled);\n\n        return $commentsEnabled;\n    }\n\n    /**\n     * Returns the index of the current image inside the article.\n     * If the image doesn't belong to the article returns null.\n     *\n     * @return int\n     */\n    protected function getImageIndex()\n    {\n        $image = CampTemplate::singleton()->context()->image;\n        if (!$image->defined) {\n            return null;\n        }\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('ArticleImageIndex', $this->m_dbObject->getArticleNumber(), $image->number), 'article');\n        if ($cacheService->contains($cacheKey)) {\n            return $cacheService->fetch($cacheKey);\n        }\n\n        $articleImage = new ArticleImage($this->m_dbObject->getArticleNumber(),\n        $image->number);\n        if (!$articleImage->exists()) {\n            $index = null;\n        } else {\n            $index = $articleImage->getImageArticleIndex();\n        }\n        $cacheService->save($cacheKey, $index);\n\n        return $index;\n    }\n\n\n    protected function getCommentCount()\n    {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('getCommentCount', $this->m_dbObject->getArticleNumber(), $this->m_dbObject->getLanguageId()), 'comment');\n        if ($cacheService->contains($cacheKey)) {\n            return $cacheService->fetch($cacheKey);\n        }\n\n        $container = Zend_Registry::get('container');\n        $repository = $container->get('em')->getRepository('Newscoop\\Entity\\Comment');\n        $filter = array(\n            'status' => 'approved',\n            'thread' => $this->m_dbObject->getArticleNumber(),\n            'language' => $this->m_dbObject->getLanguageId(),\n        );\n        $params = array(\n            'sFilter' => $filter\n        );\n        $result = $repository->getCount($params);\n        $cacheService->save($cacheKey, $result);\n\n        return $result;\n    }\n\n\n    protected function getCommentCountAllLang()\n    {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('getCommentCountAllLang', $this->m_dbObject->getArticleNumber()), 'comment');\n        if ($cacheService->contains($cacheKey)) {\n            return $cacheService->fetch($cacheKey);\n        }\n\n        $container = Zend_Registry::get('container');\n        $repository = $container->get('em')->getRepository('Newscoop\\Entity\\Comment');\n        $filter = array(\n            'status' => 'approved',\n            'thread' => $this->m_dbObject->getArticleNumber(),\n        );\n        $params = array(\n            'sFilter' => $filter\n        );\n        $result = $repository->getCount($params);\n        $cacheService->save($cacheKey, $result);\n\n        return $result;\n    }\n\n    protected function getRecommendedCommentCount()\n    {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('getRecommendedCommentCount', $this->m_dbObject->getArticleNumber(), $this->m_dbObject->getLanguageId()), 'comment');\n        if ($cacheService->contains($cacheKey)) {\n            $result = $cacheService->fetch($cacheKey);\n        } else {\n            $container = Zend_Registry::get('container');\n            $repository = $container->get('em')->getRepository('Newscoop\\Entity\\Comment');\n            $filter = array(\n                'status' => 'approved',\n                'thread' => $this->m_dbObject->getArticleNumber(),\n                'language' => $this->m_dbObject->getLanguageId(),\n                'recommended' => '1'\n            );\n            $params = array(\n                'sFilter' => $filter\n            );\n            $result = $repository->getCount($params);\n            $cacheService->save($cacheKey, $result);\n        }\n\n        return $result;\n    }\n\n\n    /**\n     * Test if content is accessible for current user\n     *\n     * @return bool\n     */\n    protected function isContentAccessible()\n    {\n        if ($this->m_dbObject->isPublic() && $this->getIsPublished()) {\n            return (int) true;\n        }\n\n        $context = CampTemplate::singleton()->context();\n        if ($context->preview) {\n            return (int) true;\n        }\n\n        $user = $context->user;\n        if (!$user->defined) {\n            return false;\n        }\n\n        if ($user->isAdmin()) {\n            return true;\n        }\n\n        return (int) ($user->subscription->is_valid && $user->subscription->has_section($context->section->number));\n    }\n\n\n    protected function getImage()\n    {\n        $context = CampTemplate::singleton()->context();\n        if ($context->image->defined) {\n            return $context->image;\n        }\n        $images = ArticleImage::GetImagesByArticleNumber($this->m_dbObject->getArticleNumber());\n        if (count($images) == 0) {\n            return new MetaImage();\n        }\n\n        return new MetaImage($images[0]->getImageId());\n    }\n\n\n    protected function getReads()\n    {\n        return $this->m_dbObject->getReads();\n    }\n\n\n    protected function topicsCount()\n    {\n        $articleTopics = $this->getContentCache('article_topics');\n        if (is_null($articleTopics)) {\n            $articleTopics = ArticleTopic::GetArticleTopics($this->m_dbObject->getArticleNumber());\n            $this->setContentCache('article_topics', $articleTopics);\n        }\n\n        return count($articleTopics);\n    }\n\n\n    protected function hasTopics()\n    {\n        return (int) ($this->topicsCount() > 0);\n    }\n\n\n    protected function getTopics()\n    {\n        $articleTopics = $this->getContentCache('article_topics');\n        if (is_null($articleTopics)) {\n            $articleTopics = ArticleTopic::GetArticleTopics($this->m_dbObject->getArticleNumber());\n            $this->setContentCache('article_topics', $articleTopics);\n        }\n        $topics = array();\n        foreach ($articleTopics as $topic) {\n            $topics[] = $topic->getName($this->getLanguage()->number);\n        }\n\n        return $topics;\n    }\n\n    /**\n     * Get SEO Url\n     *\n     * @return string\n     */\n    protected function getSEOURLEnd()\n    {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('seo_url_end', $this->m_dbObject->getProperty('Number'), $this->m_dbObject->getProperty('IdLanguage')), 'article');\n        if ($cacheService->contains($cacheKey)) {\n            return $cacheService->fetch($cacheKey);\n        }\n\n        $pubSeo = $this->getPublication()->seo;\n        $lanNum = $this->getLanguage()->number;\n        if (empty($pubSeo) || empty($lanNum)) {\n            $cacheService->save($cacheKey, '');\n            return '';\n        }\n\n        $seoUrlEnd = $this->m_dbObject->getSEOURLEnd($pubSeo, $lanNum);\n        $cacheService->save($cacheKey, $seoUrlEnd);\n\n        return $seoUrlEnd;\n    }\n\n    protected function getTypeTranslated()\n    {\n        return $this->m_dbObject->getTranslateType($this->m_dbObject->getLanguageId());\n    }\n\n    protected function getUrl()\n    {\n        return ShortURL::GetURL($this->m_dbObject->getPublicationId(), $this->m_dbObject->getLanguageId(), null, null, $this->m_dbObject->getArticleNumber());\n    }\n\n    protected function getWebcode()\n    {\n        return $this->m_dbObject->getWebcode();\n    }\n\n    private $_datetimeData;\n    protected function getDatetime()\n    {\n        if (is_null($this->_datetimeData)) {\n            $em = Zend_Registry::get('container')->getService('em');\n            $repo = $em->getRepository('Newscoop\\Entity\\ArticleDatetime');\n            $this->_datetimeData = new MetaArticleDatetime($repo->findBy(array('articleId'=>$this->m_dbObject->getProperty('Number'))));\n        }\n\n        return $this->_datetimeData;\n    }\n\n    public function has_topic($p_topicName)\n    {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('has_topic', $this->m_dbObject->getArticleNumber(), $p_topicName), 'article');\n        if ($cacheService->contains($cacheKey)) {\n            $exists = $cacheService->fetch($cacheKey);\n        } else {\n            $exists = (int) false;\n            $em = \\Zend_Registry::get('container')->getService('em');\n            $repository = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic');\n            $context = CampTemplate::singleton()->context();\n            $locale = $context->language->code;\n            $topic = $repository->getTopicByIdOrName($p_topicName, $locale)->getOneOrNullResult();\n            if (!$topic) {\n                $this->trigger_invalid_value_error('has_topic', $p_topicName);\n\n                return null;\n            }\n\n            $articleTopics = ArticleTopic::GetArticleTopics($this->m_dbObject->getArticleNumber());\n            foreach ($articleTopics as $articleTopic) {\n                if ($articleTopic->getTopicId() == $topic->getTopicId()) {\n                    $exists = (int) true;\n                }\n            }\n\n            $cacheService->save($cacheKey, $exists);\n        }\n\n        return $exists;\n    }\n\n\n    /**\n     * Returns true if the article was translated in to the language\n     * identified by the given language code\n     *\n     * @param  string $p_language - language code\n     * @return bool\n     */\n    public function translated_to($p_language)\n    {\n        if (is_string($p_language)) {\n            $languages = Language::GetLanguages(null, $p_language);\n            if (sizeof($languages) == 0) {\n                return (int) false;\n            }\n            $language = $languages[0];\n        } else {\n            $language = $p_language;\n        }\n        $article = new Article($language->getLanguageId(),\n        $this->m_dbObject->getArticleNumber());\n\n        return (int) $article->exists()\n        && ($article->isPublished() || CampTemplate::singleton()->context()->preview);\n    }\n\n\n    /**\n     * Returns a list of MetaLanguage objects - list of languages in which\n     * the article was translated.\n     *\n     * @param  boolean $p_excludeCurrent\n     * @param  array   $p_order\n     * @return array   of MetaLanguage\n     */\n    public function languages_list($p_excludeCurrent = true,\n    array $p_order = array()) {\n        $languages = $this->m_dbObject->getLanguages($p_excludeCurrent, $p_order,\n        !CampTemplate::singleton()->context()->preview);\n        $metaLanguagesList = array();\n        foreach ($languages as $language) {\n            $metaLanguagesList[] = new MetaLanguage($language->getLanguageId());\n        }\n\n        return $metaLanguagesList;\n    }\n\n\n    /**\n     * Returns true if the article keywords field had the given keyword.\n     *\n     * @param  string $p_keyword\n     * @return bool\n     */\n    public function has_keyword($p_keyword)\n    {\n        $keywords = $this->m_dbObject->getKeywords();\n\n        return (int) (stristr($keywords, $p_keyword) !== false);\n    }\n\n\n    /**\n     * Returns the number of the subtitles of the given article field.\n     * Returns null if the field name was invalid or it name a non body field.\n     *\n     * @param  string $p_property - article field name\n     * @return int\n     */\n    public function subtitles_count($p_property)\n    {\n        try {\n            $propertyValue = $this->getCustomProperty($p_property);\n            if (!is_a($propertyValue, 'MetaArticleBodyField')) {\n                return null;\n            }\n\n            return $propertyValue->subtitles_count;\n        } catch (InvalidPropertyException $e) {\n            // do nothing, return null\n        }\n\n        return null;\n    }\n\n\n    /**\n     * Returns true if the article had an attached image identified\n     * by the given article internal index.\n     *\n     * @param  int  $p_imageIndex - the index of the image attachment in the article\n     * @return bool\n     */\n    public function has_image($p_imageIndex)\n    {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n\n        $cacheKey = $cacheService->getCacheKey(array('has_article_image', $this->m_dbObject->getArticleNumber(), $p_imageIndex), 'article_image');\n\n        if ($cacheService->contains($cacheKey)) {\n            $exists = $cacheService->fetch($cacheKey);\n        } else {\n            $articleImage = new ArticleImage($this->m_dbObject->getArticleNumber(), null, $p_imageIndex);\n            $exists = (int) $articleImage->exists();\n            $cacheService->save($cacheKey, $exists);\n        }\n\n        return $exists;\n    }\n\n\n    /**\n     * Returns an image meta object corresponding to the given index\n     * of the image attachment inside the article. Returns an empty\n     * meta image object if the image did not exist.\n     *\n     * @param  int       $p_imageIndex - the index of the image attachment in the article\n     * @return MetaImage\n     */\n    public function image($p_imageIndex)\n    {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $imageCacheKey = $cacheService->getCacheKey(array('MetaImage', $this->m_dbObject->getArticleNumber(), $p_imageIndex), 'article');\n        if ($cacheService->contains($imageCacheKey)) {\n            return $cacheService->fetch($imageCacheKey);\n        }\n\n        $articleImage = new ArticleImage($this->m_dbObject->getArticleNumber(), null, $p_imageIndex);\n        if (!$articleImage->exists()) {\n            $metaImage = new MetaImage();\n        } else {\n            $metaImage = new MetaImage($articleImage->getImageId());\n        }\n        $cacheService->save($imageCacheKey, $metaImage);\n\n        return $metaImage;\n    }\n\n    /**\n     * Get related bloginfo\n     *\n     * @return Article|null\n     */\n    public function get_bloginfo()\n    {\n        if (NULL === $this->bloginfo) {\n            $infos = \\Article::GetArticles($this->m_dbObject->getPublicationId(), $this->m_dbObject->getIssueNumber(), $this->m_dbObject->getSectionNumber(), null, null, false, array(\n                \"Type = 'bloginfo'\",\n            ));\n\n            if (!empty($infos)) {\n                $this->bloginfo = new self($infos[0]->getLanguageId(), $infos[0]->getArticleNumber());\n            }\n        }\n\n        return $this->bloginfo;\n    }\n\n    /**\n     * Get article renditions\n     *\n     * @return array\n     */\n    public function getRenditions()\n    {\n        if ($this->renditions === null) {\n            $this->renditions = Zend_Registry::get('container')->getService('image.rendition')->getArticleRenditions($this->m_dbObject->getArticleNumber());\n        }\n\n        return $this->renditions;\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaArticleBodyField.php",
    "content": "<?php\n\n/**\n * @package Campsite\n */\n\n\nfinal class MetaArticleBodyField {\n    /**\n     * Stores the number of the subtitle that has to be displayed\n     *\n     * @var int\n     */\n    private $m_subtitleNumber;\n\n\n    /**\n     * Stores the subtitle objects\n     *\n     * @var array of MetaSubtitle\n     */\n    private $m_subtitles;\n\n\n    /**\n     * Stores the subtitles names\n     *\n     * @var array of string\n     */\n    private $m_sutitlesNames;\n\n\n    /**\n     * Stores the article object that owns the body field\n     *\n     * @var MetaArticle\n     */\n    private $m_parent_article;\n\n\n    /**\n     * Stores the object describing the article type field\n     *\n     * @var ArticleTypeField\n     */\n    private $m_articleTypeField;\n\n\n    /**\n     * Stores the body field name\n     */\n    private $m_fieldName;\n\n\n    /**\n     * Constructor\n     *\n     * @param string $p_content\n     */\n    public function __construct($p_content, MetaArticle $p_parent, $p_fieldName, $p_articleName, $p_subtitleNumber = null, $p_headerFormatStart = null, $p_headerFormatEnd = null) \n    {\n        $this->m_subtitleNumber = $p_subtitleNumber;\n        $this->m_subtitles = MetaSubtitle::ReadSubtitles($p_content, $p_fieldName, $p_articleName,\n                                                         $p_headerFormatStart, $p_headerFormatEnd);\n        $this->m_sutitlesNames = array();\n        foreach ($this->m_subtitles as $subtitle) {\n            $this->m_sutitlesNames[] = $subtitle->name;\n        }\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKeyArticle = $cacheService->getCacheKey(array('Article', $p_parent->language->number, $p_parent->number), 'article');\n        if ($cacheService->contains($cacheKeyArticle)) {\n            $this->m_parent_article = $cacheService->fetch($cacheKeyArticle);\n        } else {\n            $this->m_parent_article = new Article($p_parent->language->number, $p_parent->number);\n            $cacheService->save($cacheKeyArticle, $this->m_parent_article);\n        }\n        $this->m_fieldName = $p_fieldName;\n        $cacheKey = $cacheService->getCacheKey(array('ArticleTypeField', $p_parent->type_name, $p_fieldName), 'article_type');\n        if ($cacheService->contains($cacheKey)) {\n            $this->m_articleTypeField = $cacheService->fetch($cacheKey);\n        } else {\n             $articleTypeField = new ArticleTypeField($p_parent->type_name, $p_fieldName);\n             $cacheService->save($cacheKey, $articleTypeField);\n             $this->m_articleTypeField = $articleTypeField;\n        }\n    }\n\n\n    public function __toString() {\n        return $this->getContent(!is_null($this->m_subtitleNumber) ? array($this->m_subtitleNumber) : array());\n    }\n\n\n    public function __get($p_property) {\n        switch (strtolower($p_property)) {\n            case 'all_subtitles': return $this->getContent(array());\n            case 'first_paragraph': return $this->getParagraphs($this->__toString(), array(1));\n            case 'subtitles_count': return $this->getSubtitlesCount();\n            case 'subtitle_number': return $this->m_subtitleNumber;\n            case 'subtitle_is_current':\n                return $this->m_subtitleNumber == CampTemplate::singleton()->context()->subtitle->number\n                && !is_null($this->m_subtitleNumber);\n            case 'has_previous_subtitles':\n                if (is_null($this->m_subtitleNumber)) {\n                    return null;\n                }\n                return (int)($this->m_subtitleNumber > 0);\n            case 'has_next_subtitles':\n                if (is_null($this->m_subtitleNumber)) {\n                    return null;\n                }\n                return (int)($this->m_subtitleNumber < ($this->getSubtitlesCount() - 1));\n            default:\n                $this->trigger_invalid_property_error($p_property);\n                return null;\n        }\n    }\n\n\n    private function getParagraphs($p_content, array $p_paragraphs = array()) {\n        $printAll = count($p_paragraphs) == 0;\n        $content = '';\n        $paragraphs = preg_split(\"/(<[\\s]*\\/?[\\s]*p[\\s]*>|<[\\s]*br[\\s]*\\/?>([\\s]|&nbsp;)*<[\\s]*br[\\s]*\\/?>)/i\",\n        $p_content, -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY);\n        $index = 0;\n        $pStart = false;\n        foreach ($paragraphs as $paragraph) {\n            if (preg_match(\"/^([\\s]|&nbsp;)*$/i\", $paragraph)) {\n                // This is an empty paragraph, skip it.\n                continue;\n            }\n            if (preg_match(\"/^<[\\s]*\\/p[\\s]*>$/i\", $paragraph)\n            || preg_match(\"/^<[\\s]*br[\\s]*\\/?>([\\s]|&nbsp;)*<[\\s]*br[\\s]*\\/?>$/i\", $paragraph)) {\n                if ($printAll || array_search($index, $p_paragraphs) !== false) {\n                    $content .= $paragraph;\n                }\n                continue;\n            } elseif (preg_match(\"/^<[\\s]*p[\\s]*>$/i\", $paragraph)) {\n                // paragraph start\n                $pStart = true;\n                $index++;\n            } else {\n                if (!$pStart) {\n                    $index++;\n                }\n                $pStart = false;\n            }\n            if ($printAll || array_search($index, $p_paragraphs) !== false) {\n                $content .= $paragraph;\n            }\n        }\n        return $content;\n    }\n\n\n    /**\n     * Returns the content of the given subtitles of the article body field.\n     *\n     * @param array $p_subtitles\n     * @return string\n     */\n    private function getContent(array $p_subtitles = array())\n    {\n        global $Campsite;\n\n        $printAll = count($p_subtitles) == 0;\n        $content = '';\n        foreach ($this->m_subtitles as $index=>$subtitle) {\n            if (!$printAll && array_search($index, $p_subtitles) === false) {\n                continue;\n            }\n            $content .= $index > 0 ? $subtitle->formatted_name : '';\n            $content .= $subtitle->content;\n        }\n        if ($this->m_articleTypeField->isContent()) {\n            $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n            $cacheKeyObjectType = $cacheService->getCacheKey(array('ObjectType', 'article'), 'ObjectType');\n            if ($cacheService->contains($cacheKeyObjectType)) {\n                $objectType = $cacheService->fetch($cacheKeyObjectType);\n            } else {\n                $objectType = new ObjectType('article');\n                $cacheService->save($cacheKeyObjectType, $objectType);\n            }\n            $requestObjectId = $this->m_parent_article->getProperty('object_id');\n            $updateArticle = empty($requestObjectId);\n            try {\n                if ($updateArticle) {\n                    $requestObject = new RequestObject($requestObjectId);\n                    if (!$requestObject->exists()) {\n                        $requestObject->create(array('object_type_id'=>$objectType->getObjectTypeId()));\n                        $requestObjectId = $requestObject->getObjectId();\n                    }\n                    $this->m_parent_article->setProperty('object_id', $requestObjectId);\n                }\n\n                // statistics shall be only gathered if the site admin set it on (and not for editor previews)\n                $context = CampTemplate::singleton()->context();\n                $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n                if (($preferencesService->CollectStatistics == 'Y') && (!$context->preview)) {\n                    $stat_web_url = $Campsite['WEBSITE_URL'];\n                    if ('/' != $stat_web_url[strlen($stat_web_url)-1]) {\n                        $stat_web_url .= '/';\n                    }\n                    $article_number = $this->m_parent_article->getProperty('Number');\n                    $language_obj = new MetaLanguage($this->m_parent_article->getProperty('IdLanguage'));\n                    $language_code = $language_obj->Code;\n                    $name_spec = '_' . $article_number . '_' . $language_code;\n                    $object_type_id = $objectType->getObjectTypeId();\n\n                    $content .= Statistics::JavaScriptTrigger(array('name_spec' => $name_spec, 'object_type_id' => $object_type_id, 'request_object_id' => $requestObjectId));\n                }\n            } catch (Exception $ex) {\n                $content .= \"<p><strong><font color=\\\"red\\\">INTERNAL ERROR! \" . $ex->getMessage()\n                         . \"</font></strong></p>\\n\";\n                // do something\n            }\n        }\n        return $content;\n    }\n\n\n    /**\n     * Returns the array of subtiles existent in the article body field.\n     *\n     * @return array of MetaSubtitle\n     */\n    private function getSubtitles() {\n        return $this->m_subtitles;\n    }\n\n\n    /**\n     * Returns the total number of subtitles\n     *\n     * @return int\n     */\n    private function getSubtitlesCount() {\n        return count($this->m_subtitles);\n    }\n\n\n    /**\n     * Returns an array containing the subtitle names\n     *\n     * @return array of string\n     */\n    private function getSubtitlesNames() {\n        return $this->m_sutitlesNames;\n    }\n\n\n    protected function trigger_invalid_property_error($p_property, $p_smarty = null)\n    {\n        $errorMessage = INVALID_PROPERTY_STRING . \" $p_property \"\n                        . OF_OBJECT_STRING . ' article->' . $this->m_fieldName;\n        CampTemplate::singleton()->trigger_error($errorMessage, $p_smarty);\n    }\n}\n\n?>"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaArticleDatetime.php",
    "content": "<?php\n\nuse Newscoop\\Entity\\ArticleDatetime;\n\nclass MetaArticleDatetime implements IteratorAggregate\n{\n    private $datetimes;\n\n    private $iterator;\n\n    public function __construct($dates)\n    {\n        $this->datetimes = (array) $dates;\n        $this->iterator = new ArrayIterator($this->datetimes);\n    }\n\n    public function getIterator()\n    {\n        return (is_null($this->iterator) ? ($this->iterator = new ArrayIterator($this->datetimes)) : $this->iterator);\n    }\n\n    public function __get($name)\n    {\n        if (!(($currentItem = $this->iterator->current()) instanceof ArticleDatetime)) {\n            return null;\n        }\n        $getMethod = 'get'.preg_replace(\"`(?<=[a-z])(_([a-z]))`e\",\"ucfirst(strtoupper('\\\\2'))\",trim($name));\n        if (!is_callable(array($currentItem, $getMethod))) {\n            return null;\n        }\n        return $currentItem->$getMethod();\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaArticleSlideshowList.php",
    "content": "<?php\n/**\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nfinal class MetaArticleSlideshowList implements Iterator\n{\n    /**\n     * @var int\n     */\n    private $articleNumber;\n\n    /**\n     * @var array\n     */\n    private $slideshows;\n\n    /**\n     * @param int $articleNumber\n     */\n    public function __construct($articleNumber)\n    {\n        $this->articleNumber = (int) $articleNumber;\n    }\n\n    /**\n     * @return MetaSlideshow\n     */\n    public function current()\n    {\n        return new MetaSlideshow($this->slideshows->current());\n    }\n\n    /**\n     * @return void\n     */\n    public function rewind()\n    {\n        if ($this->slideshows === null) {\n            $this->slideshows = new ArrayIterator(Zend_Registry::get('container')->getService('package')->findByArticle($this->articleNumber));\n        }\n\n        $this->slideshows->rewind();\n    }\n\n    /**\n     * @return void\n     */\n    public function next()\n    {\n        $this->slideshows->next();\n    }\n\n    /**\n     * @return int\n     */\n    public function key()\n    {\n        return $this->slideshows->key();\n    }\n\n    /**\n     * @return bool\n     */\n    public function valid()\n    {\n        return $this->slideshows->valid();\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaAttachment.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Attachment.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/metaclasses/MetaDbObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/classes/CampTemplate.php');\n\n\n/**\n * @package Campsite\n */\nfinal class MetaAttachment extends MetaDbObject {\n\n\tprivate static $m_baseProperties = array(\n\t'identifier'=>'id',\n    'file_name'=>'file_name',\n    'mime_type'=>'mime_type',\n    'extension'=>'extension',\n    'size_b'=>'size_in_bytes'\n\t);\n\t\n\tprivate static $m_defaultCustomProperties = array(\n    'description'=>'getDescription',\n    'size_kb'=>'getSizeKB',\n    'size_mb'=>'getSizeMB',\n    'defined'=>'defined'\n\t);\n\n\n    public function __construct($p_attachmentId = null)\n    {\n    \t$this->m_properties = self::$m_baseProperties;\n    \t$this->m_customProperties = self::$m_defaultCustomProperties;\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('attachment', $p_attachmentId), 'attachment');\n        if ($cacheService->contains($cacheKey)) {\n            $this->m_dbObject = $cacheService->fetch($cacheKey);\n        } else {\n            $this->m_dbObject = new Attachment($p_attachmentId);\n            $cacheService->save($cacheKey, $this->m_dbObject);\n        }\n\n        if (!$this->m_dbObject->exists() && !is_null($p_attachmentId)) {\n            $this->m_dbObject = new Attachment($p_attachmentId);\n        }\n\n        if (!$this->m_dbObject->exists()) {\n        \t$this->m_dbObject = new Attachment();\n        }\n    } // fn __construct\n\n\n    protected function getDescription($p_languageId = null)\n    {\n    \tif (is_null($p_languageId)) {\n    \t\t$smartyObj = CampTemplate::singleton();\n    \t\t$contextObj = $smartyObj->getTemplateVars('gimme');\n    \t\t$p_languageId = $contextObj->language->number;\n    \t}\n    \treturn $this->m_dbObject->getDescription($p_languageId);\n    }\n\n\n\tprotected function getSizeKB()\n\t{\n\t\treturn (int)($this->m_dbObject->getSizeInBytes() / 1024);\n\t}\n\n\n\tprotected function getSizeMB()\n\t{\n\t\treturn (int)($this->m_dbObject->getSizeInBytes() / 1048576);\n\t}\n\n} // class MetaAttachment\n\n?>"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaAuthor.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Author.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/metaclasses/MetaDbObject.php');\n\n/**\n * @package Campsite\n */\nfinal class MetaAuthor extends MetaDbObject\n{\n    /** @var array */\n    private static $m_baseProperties = array(\n        'first_name' => 'first_name',\n        'last_name' => 'last_name',\n        'email' => 'email'\n    );\n\n    /** @var array */\n    private static $m_defaultCustomProperties = array(\n        'name' => 'getName',\n        'biography' => 'getBiography',\n        'picture' => 'getImage',\n        'type' => 'getType',\n        'defined' => 'defined',\n        'user' => 'getUser',\n        'has_url' => 'hasUrl',\n        'url' => 'getUrl',\n        'aim' => 'getAim',\n        'skype' => 'getSkype',\n        'jabber' => 'getJabber'\n    );\n\n    /** @var AuthorBiography **/\n    private $m_biography = NULL;\n\n    /** @var MetaUser */\n    private $user;\n\n    /** @var string */\n    private $url;\n\n    public function __construct($p_idOrName = NULL, $p_type = NULL)\n    {\n        $this->m_properties = self::$m_baseProperties;\n        $this->m_customProperties = self::$m_defaultCustomProperties;\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('MetaAuthor', $p_idOrName, serialize($p_type)), 'author');\n        if ($cacheService->contains($cacheKey)) {\n            $this->m_dbObject = $cacheService->fetch($cacheKey);\n        } else {\n            $this->m_dbObject = new Author($p_idOrName, $p_type);\n            $cacheService->save($cacheKey, $this->m_dbObject);\n        }\n        if (!$this->m_dbObject->exists()) {\n            $this->m_dbObject = new Author();\n        }\n    }\n\n\n    protected function getName($p_format = '%_FIRST_NAME %_LAST_NAME')\n    {\n    \treturn $this->m_dbObject->getName($p_format);\n    }\n\n    protected function getAim()\n    {\n        return $this->m_dbObject->getAim();\n    }\n\n    protected function getSkype()\n    {\n        return $this->m_dbObject->getSkype();\n    }\n\n    protected function getJabber()\n    {\n        return $this->m_dbObject->getJabber();\n    }\n\n    protected function getBiography()\n    {\n        if (is_null($this->m_biography)) {\n            $language = (int) CampTemplate::singleton()->context()->language->number;\n            $this->m_biography = new MetaAuthorBiography($this->m_dbObject->getId(), $language);\n        }\n\n        return $this->m_biography;\n    }\n\n\n    protected function getImage()\n    {\n        return new MetaImage($this->m_dbObject->getImage());\n    }\n\n\n    protected function getType()\n    {\n        return $this->m_dbObject->getAuthorType()->getName();\n    }\n\n    /**\n     * Get user related to author\n     *\n     * @return MetaUser\n     */\n    protected function getUser()\n    {\n        $user = \\Zend_Registry::get('container')->getService('user')->findByAuthor($this->m_dbObject->getId());\n\n        return new \\MetaUser($user);\n    }\n\n    /**\n     * Test if author has profile url\n     *\n     * @return bool\n     */\n    protected function hasUrl()\n    {\n        return $this->getUrl() !== '';\n    }\n\n    /**\n     * Get author profile url\n     *\n     * @return string\n     */\n    protected function getUrl()\n    {\n        if ($this->url === null) {\n            $user = $this->getUser();\n            if (!$user->defined || !$user->is_active) {\n                $this->url = '';\n            } else {\n                $this->url = \\Zend_Registry::get('view')->url(array(\n                    'username' => $user->uname,\n                ), 'user');\n            }\n        }\n\n        return $this->url;\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaAuthorBiography.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/AuthorBiography.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/metaclasses/MetaDbObject.php');\n\n/**\n * @package Campsite\n */\nfinal class MetaAuthorBiography extends MetaDbObject\n{\n    /** @var array */\n    private static $m_baseProperties = array(\n        'text' => 'biography',\n        'first_name' => 'first_name',\n        'last_name' => 'last_name',\n    );\n\n    /** @var array */\n    private static $m_defaultCustomProperties = array(\n        'name' => 'getName',\n        'defined' => 'defined'\n    );\n\n    /**\n     * @param int\n     * @param int\n     */\n    public function __construct($p_id = NULL, $p_language = NULL)\n    {\n        $this->m_properties = self::$m_baseProperties;\n        $this->m_customProperties = self::$m_defaultCustomProperties;\n\n        $this->m_dbObject = new AuthorBiography($p_id, $p_language);\n        if (!$this->m_dbObject->exists()) {\n            $this->m_dbObject = new AuthorBiography();\n        }\n    }\n\n    protected function getName($p_format = '%_FIRST_NAME %_LAST_NAME')\n    {\n        return $this->m_dbObject->getName($p_format);\n    }\n}\n\n?>\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaBoolean.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/classes/Exceptions.php');\n\n\n/**\n * @package Campsite\n */\nfinal class MetaBoolean\n{\n    private $m_value = null;\n\n\tpublic function __construct($p_value)\n    {\n        $this->setValue($p_value);\n    } // fn __construct\n\n    public function setValue($p_value)\n    {\n        if (!MetaBoolean::IsValid($p_value)) {\n            throw new InvalidValueException($p_value, MetaBoolean::GetTypeName());\n        }\n        $this->m_value = trim($p_value);\n    }\n\n    public function getValue()\n    {\n        return $this->m_value;\n    }\n\n    public static function IsValid($p_value)\n    {\n        $p_value = trim($p_value);\n        return strtolower($p_value) == 'true' || strtolower($p_value) == 'false';\n    }\n\n    public static function GetTypeName()\n    {\n        return 'boolean';\n    }\n\n} // class MetaBoolean\n\n?>"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaComment.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/metaclasses/MetaDbObject.php');\n\n/**\n * @package Campsite\n */\nfinal class MetaComment extends MetaDbObject\n{\n    /** @var array */\n    private static $m_baseProperties = array(\n        'id' => 'id',\n        'recommended' => 'recommended',\n    );\n\n\tprivate $m_realName = false;\n\n    public function __construct($messageId = null)\n    {\n        $container = \\Zend_Registry::get('container');\n        $repository = $container->getService('em')->getRepository('Newscoop\\Entity\\Comment');\n        if(is_null($messageId)) {\n            $this->m_dbObject = $repository->getPrototype();\n        } else{\n            $this->m_dbObject = $repository->find($messageId);\n        }\n\n        $this->m_properties = self::$m_baseProperties;\n\n        $this->m_customProperties['level'] = 'getThreadDepth';\n        $this->m_customProperties['identifier'] = 'getId';\n        $this->m_customProperties['subject'] = 'getSubject';\n        $this->m_customProperties['content'] = 'getMessage';\n        $this->m_customProperties['content_real'] = 'getMessage';\n        $this->m_customProperties['nickname'] = 'getCommenter';\n        $this->m_customProperties['reader_email'] = 'getEmail';\n\n        $this->m_customProperties['real_name'] = 'getRealName';\n        $this->m_customProperties['anonymous_author'] = 'isAuthorAnonymous';\n        $this->m_customProperties['submit_date'] = 'getSubmitDate';\n        $this->m_customProperties['article'] = 'getArticle';\n        $this->m_customProperties['defined'] = 'defined';\n        $this->m_customProperties['user'] = 'getUser';\n        $this->m_customProperties['source'] = 'getSource';\n        $this->m_customProperties['parent'] = 'getParent';\n        $this->m_customProperties['has_parent'] = 'hasParent';\n        $this->m_customProperties['thread_level'] = 'threadLevel';\n        $this->m_customProperties['status'] = 'getStatus';\n\n        $this->m_skipFilter = array('content_real');\n    } // fn __construct\n\n    protected function getThreadDepth()\n    {\n        return $this->m_dbObject->getThreadLevel();\n    }\n\n    protected function getId()\n    {\n        return $this->m_dbObject->getId();\n    }\n\n    protected function getRealName()\n    {\n    \tif ($this->m_realName === false) {\n            \t$this->m_realName = $this->m_dbObject->getRealName();\n    \t}\n    \treturn $this->m_realName;\n    }\n\n    protected function getCommenter()\n    {\n        return $this->m_dbObject->getCommenter()->getName();\n    }\n\n    protected function getEmail()\n    {\n        return $this->m_dbObject->getCommenter()->getEmail();\n    }\n\n    protected function isAuthorAnonymous()\n    {\n    \t$this->getRealName();\n    \treturn is_null($this->m_realName);\n    }\n\n\n    protected function getSubmitDate()\n    {\n        return $this->m_dbObject->getTimeCreated()->format('Y-m-d H:i:s');\n    }\n\n    protected function getSubject()\n    {\n        return $this->m_dbObject->getSubject();\n    }\n\n    protected function getMessage()\n    {\n        return $this->m_dbObject->getMessage();\n    }\n\n    protected function getArticle()\n    {\n        return new MetaArticle( $this->m_dbObject->getLanguage()->getId(), $this->m_dbObject->getThread() );\n    }\n\n\n    protected function trigger_invalid_property_error($p_property, $p_smarty = null)\n    {\n        $errorMessage = INVALID_PROPERTY_STRING . \" $p_property \"\n                        . OF_OBJECT_STRING . ' comment';\n        CampTemplate::singleton()->trigger_error($errorMessage, $p_smarty);\n    }\n\n    /**\n     * Get user\n     *\n     * @return MetaUser\n     */\n    public function getUser()\n    {\n        try {\n            $user = $this->m_dbObject->getCommenter()->getUser();\n\n            return new \\MetaUser($user);\n        } catch (\\Doctrine\\ORM\\EntityNotFoundException $e) {\n            return new \\MetaUser();\n        }\n    }\n\n\n    protected function getSource()\n    {\n        return $this->m_dbObject->getSource();\n    }\n\n    public function getParent()\n    {\n        $parent = $this->m_dbObject->getParent();\n        if ($parent instanceof \\Newscoop\\Entity\\Comment) {\n            $parent = $this->m_dbObject->getParent()->getId();\n        } else {\n            $parent = 0;\n        }\n        return $parent;\n    }\n\n    public function hasParent()\n    {\n        if ($this->getParent() != 0) {\n            return true;\n        }\n        return false;\n    }\n\n    public function threadLevel()\n    {\n        return $this->m_dbObject->getThreadLevel();\n    }\n\n    protected function getStatus()\n    {\n        return $this->m_dbObject->getStatus();\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaDate.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/classes/Exceptions.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/classes/CampTemplate.php');\n\n\n/**\n * @package Campsite\n */\nfinal class MetaDate\n{\n    private $m_value = null;\n\n    private $m_year = null;\n\n    private $m_month = null;\n\n    private $m_monthDay = null;\n\n    private $m_weekDay = null;\n\n    public function __construct($p_value)\n    {\n        $this->setValue($p_value);\n    } // fn __construct\n\n    public function setValue($p_value)\n    {\n        if (!MetaDate::IsValid($p_value)) {\n            throw new InvalidValueException($p_value, MetaDate::GetTypeName());\n        }\n        $this->m_value = trim($p_value);\n        list($this->m_year, $this->m_month, $this->m_monthDay) = preg_split('/-/', $this->m_value);\n        $timestamp = strtotime($this->m_value);\n        $date_time = getdate($timestamp);\n        $this->m_weekDay = $date_time['wday'];\n    }\n\n    public function getValue()\n    {\n        return $this->m_value;\n    }\n\n    public function getYear()\n    {\n        return $this->m_year;\n    }\n\n    public function getMonth()\n    {\n        return $this->m_month;\n    }\n\n    public function getMonthName() {\n        $language = new Language(CampTemplate::singleton()->context()->language->number);\n        if (!$language->exists()) {\n            return null;\n        }\n        return $language->getProperty('Month'.(int)$this->getMonth());\n    }\n\n    public function getMonthDay()\n    {\n        return $this->m_monthDay;\n    }\n\n    public function getWeekDay() {\n        return $this->m_weekDay;\n    }\n\n    public function getWeekDayName() {\n        $language = new Language(CampTemplate::singleton()->context()->language->number);\n        if (!$language->exists()) {\n            return null;\n        }\n        return $language->getProperty('WDay'.(int)$this->getWeekDay());\n    }\n\n    public static function IsValid($p_value)\n    {\n        $p_value = trim($p_value);\n        \n        // curdate() is an value which have to be computed\n        if (preg_match('/now\\(\\)|curdate\\(\\)|curtime\\(\\)/i', $p_value)) {\n            return true;   \n        }\n        \n        if (preg_match('/^[\\d]{4,4}-[\\d]{1,2}-[\\d]{1,2}$/', $p_value) == 0) {\n            return false;\n        }\n\n        list($year, $month, $monthDay) = preg_split('/-/', $p_value);\n\n        if ($month < 1 || $month > 12) {\n            return false;\n        }\n\n        $lastMonthDay = strftime('%d', mktime(0, 0, 0, $month+1, 0, $year));\n        if ($monthDay < 1 || $monthDay > $lastMonthDay) {\n            return false;\n        }\n        return true;\n    }\n\n    public static function GetTypeName()\n    {\n        return 'date';\n    }\n\n} // class MetaDate\n\n?>"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaDatetime.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/classes/Exceptions.php');\n\n\n/**\n * @package Campsite\n */\nfinal class MetaDatetime\n{\n    private $m_value = null;\n\n    private $m_date = null;\n\n    private $m_time = null;\n\n    public function __construct($p_value)\n    {\n    \t$p_value = trim($p_value);\n    \tif (!empty($p_value)) {\n            $this->setValue($p_value);\n    \t}\n    } // fn __construct\n\n    public function setValue($p_value)\n    {\n        if (!self::IsValid($p_value)) {\n            throw new InvalidValueException($p_value, self::GetTypeName());\n        }\n        $this->m_value = trim($p_value);\n        $datetimeParts = preg_split('/[\\s]+/', $this->m_value);\n        $date = $datetimeParts[0];\n        $time = isset($datetimeParts[1]) ? $datetimeParts[1] : '00:00:00';\n\n        $this->m_date = new MetaDate($date);\n        $this->m_time = new MetaTime($time);\n    }\n\n    public function getValue()\n    {\n        return $this->m_value;\n    }\n\n    public function getYear()\n    {\n        return $this->m_date->getYear();\n    }\n\n    public function getMonth()\n    {\n        return $this->m_date->getMonth();\n    }\n\n    public function getMonthName() {\n        return $this->m_date->getMonthName();\n    }\n\n    public function getMonthDay()\n    {\n        return $this->m_date->getMonthDay();\n    }\n\n    public function getWeekDay() {\n        return $this->m_date->getWeekDay();\n    }\n\n    public function getWeekDayName() {\n        return $this->m_date->getWeekDayName();\n    }\n\n    public function getHour()\n    {\n        return $this->m_time->getHour();\n    }\n\n    public function getMinute()\n    {\n        return $this->m_time->getMinute();\n    }\n\n    public function getSecond()\n    {\n        return $this->m_time->getSecond();\n    }\n\n    public static function IsValid($p_value)\n    {\n        $p_value = trim($p_value);\n        \n        // now() is an value which have to be computed\n        if (strtolower($p_value) == 'now()') {\n            return true;   \n        }\n        \n        $datetimeParts = preg_split('/[\\s]+/', $p_value);\n        $date = $datetimeParts[0];\n        $time = isset($datetimeParts[1]) ? $datetimeParts[1] : '00:00:00';\n\n        if (!MetaDate::IsValid($date)) {\n            return false;\n        }\n\n        if (!MetaTime::IsValid($time)) {\n            return false;\n        }\n\n        return true;\n    }\n\n    public static function GetTypeName()\n    {\n        return 'datetime';\n    }\n\n} // class MetaDatetime\n\n?>"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaDbObject.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/classes/Exceptions.php');\n\n/**\n * @package Campsite\n */\nclass MetaDbObject {\n    /**\n     * Pointer to the database access class instantiation\n     * @var DatabaseObject\n     */\n    protected $m_dbObject = null;\n\n    /**\n     * Array of meta class properties\n     * @var array\n     */\n    protected $m_properties = array();\n\n    /**\n     * Array of meta class custom properties\n     * @var array\n     */\n    protected $m_customProperties = array();\n\n    /**\n     * The name of the method used to retrieve a property value\n     * @var string\n     */\n    protected $m_getPropertyMethod = 'getProperty';\n\n    /**\n     * Array of fields for which the HTML filter is not applied.\n     * @var array\n     */\n    protected $m_skipFilter = array();\n\n    /**\n     * Returns true if the current object is the same type as the given\n     * object then has the same value.\n     * @param mix $p_otherObject\n     * @return boolean\n     */\n    public function same_as($p_otherObject)\n    {   \n        if (get_class($this) == get_class($p_otherObject)) {\n            if (is_null($this->m_dbObject) && is_null($p_otherObject->m_dbObject)) {\n                return true;\n            } else if (is_object($this->m_dbObject)) {\n                if ($this->m_dbObject->sameAs($p_otherObject->m_dbObject)) {\n                    return true;\n                }\n            }\n        }\n\n        return false;\n    } // fn same_as\n\n\n    public function __toString()\n    {\n    \t$className = get_class($this);\n    \tif (strncasecmp($className, 'Meta', 4) == 0) {\n    \t\t$className = strtolower(substr($className, 4));\n    \t}\n    \tCampTemplate::singleton()->trigger_error(\"Invalid use of object of type '$className'. Use \\$campsite->${className}->[property_name] to display a property of this object.\");\n    \treturn '';\n    }\n\n\n    static public function htmlFilter($p_text)\n    {\n    \treturn str_replace(array('&', '<', '>'), array('&amp;', '&lt;', '&gt;'), $p_text);\n    }\n\n\n    public function __get($p_property)\n    {\n        if (!$this->defined()) {\n            return null;\n        }\n        $property = $this->translateProperty($p_property);\n\n        try {\n            if (array_search($property, $this->m_properties)) {\n                $methodName = $this->m_getPropertyMethod;\n                $propertyValue = $this->m_dbObject->$methodName($property);\n            } elseif (array_key_exists($property, $this->m_customProperties)) {\n                $propertyValue = $this->getCustomProperty($property);\n            } else {\n                $this->trigger_invalid_property_error($p_property);\n                return null;\n            }\n            if (empty($propertyValue) || !is_string($propertyValue) || is_numeric($propertyValue)) {\n            \treturn $propertyValue;\n            }\n            if (count($this->m_skipFilter) == 0 || !in_array(strtolower($p_property), $this->m_skipFilter)) {\n            \t$propertyValue = self::htmlFilter($propertyValue);\n            }\n            return $propertyValue;\n        } catch (InvalidPropertyException $e) {\n            $this->trigger_invalid_property_error($p_property);\n        \treturn null;\n        }\n    } // fn __get\n\n\n    final public function __set($p_property, $p_value)\n    {\n        throw new InvalidFunctionException(get_class($this), '__set');\n    } // fn __set\n\n\n    final public function __unset($p_property)\n    {\n        throw new InvalidFunctionException(get_class($this), '__unset');\n    } // fn __set\n\n\n    /**\n     * Returns true if the article has a property with the given name\n     *\n     * @return bool\n     */\n    public function has_property($p_property) {\n        $p_property = $this->translateProperty($p_property);\n        return (is_array($this->m_properties)\n        && array_search($p_property, $this->m_properties))\n        || (is_array($this->m_customProperties)\n        && array_key_exists($p_property, $this->m_customProperties));\n    }\n\n\n\n    /**\n     * Returns true if the current object was initialized\n     *\n     * @return boolean\n     */\n    final public function defined()\n    {\n        return is_object($this->m_dbObject) && $this->m_dbObject->exists();\n    } // fn defined\n\n\n    final public function translateProperty($p_property)\n    {\n        $p_property = strtolower($p_property);\n        if (is_array($this->m_properties) && isset($this->m_properties[$p_property])) {\n        \treturn $this->m_properties[$p_property];\n        }\n    \treturn $p_property;\n    }\n\n\n    protected function getCustomProperty($p_property)\n    {\n    \tif (!is_array($this->m_customProperties)\n    \t\t\t|| !array_key_exists($p_property, $this->m_customProperties)) {\n\t    \tthrow new InvalidPropertyException(get_class($this->m_dbObject), $p_property);\n    \t}\n    \tif (!method_exists($this, $this->m_customProperties[$p_property])) {\n    \t\tthrow new InvalidPropertyHandlerException(get_class($this->m_dbObject), $p_property);\n    \t}\n    \t$methodName = $this->m_customProperties[$p_property];\n    \treturn $this->$methodName();\n    }\n\n\n    protected function trigger_invalid_property_error($p_property, $p_smarty = null)\n    {\n    \t$errorMessage = INVALID_PROPERTY_STRING . \" $p_property \"\n        \t\t\t\t. OF_OBJECT_STRING . ' ' . get_class($this->m_dbObject);\n\t\tCampTemplate::singleton()->trigger_error($errorMessage, $p_smarty);\n    }\n\n\n    final public function trigger_invalid_value_error($p_property, $p_value, $p_smarty = null)\n    {\n    \t$errorMessage = INVALID_VALUE_STRING . \" $p_value \"\n        \t\t\t\t. OF_PROPERTY_STRING . \" $p_property \"\n        \t\t\t\t. OF_OBJECT_STRING . ' ' . get_class($this->m_dbObject);\n\t\tCampTemplate::singleton()->trigger_error($errorMessage, $p_smarty);\n    }\n}\n\n?>\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaEntity.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nabstract class MetaEntity\n{\n    /**\n     * Call method via attribute\n     * Provides backward compatibility for callbacks called as property\n     *\n     * @param string $property\n     */\n    public function __get($property)\n    {\n        if (method_exists($this, $property)) {\n            return $this->$property();\n        }\n\n        throw new \\InvalidArgumentException(\"Property '$property' not found\");\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaImage.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Image.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/metaclasses/MetaDbObject.php');\n\n/**\n * @package Campsite\n */\nfinal class MetaImage extends MetaDbObject {\n\n    public function __construct($p_imageId = null)\n    {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('legacy_image', $p_imageId), 'image');\n        if ($cacheService->contains($cacheKey)) {\n            $this->m_dbObject = $cacheService->fetch($cacheKey);\n        } else {\n            $this->m_dbObject = new Image($p_imageId);\n            $cacheService->save($cacheKey, $this->m_dbObject);\n        }\n\n        if (!$this->m_dbObject->exists()) {\n            $this->m_dbObject = new Image();\n        }\n\n        $this->m_properties['number'] = 'Id';\n        $this->m_properties['photographer'] = 'Photographer';\n        $this->m_properties['photographer_url'] = 'photographer_url';\n        $this->m_properties['place'] = 'Place';\n        $this->m_properties['description'] = 'Description';\n        $this->m_properties['date'] = 'Date';\n        $this->m_properties['last_update'] = 'LastModified';\n\n        $this->m_customProperties['year'] = 'getYear';\n        $this->m_customProperties['mon'] = 'getMonth';\n        $this->m_customProperties['wday'] = 'getWeekDay';\n        $this->m_customProperties['mday'] = 'getMonthDay';\n        $this->m_customProperties['yday'] = 'getYearDay';\n        $this->m_customProperties['hour'] = 'getHour';\n        $this->m_customProperties['min'] = 'getMinute';\n        $this->m_customProperties['sec'] = 'getSecond';\n        $this->m_customProperties['mon_name'] = 'getMonthName';\n        $this->m_customProperties['wday_name'] = 'getWeekDayName';\n        $this->m_customProperties['article_index'] = 'getArticleIndex';\n        $this->m_customProperties['defined'] = 'defined';\n        $this->m_customProperties['imageurl'] = 'getImageUrl';\n        $this->m_customProperties['thumbnailurl'] = 'getThumbnailUrl';\n        $this->m_customProperties['filerpath'] = 'getImageRelativePath';\n        $this->m_customProperties['is_local'] = 'isLocal';\n        $this->m_customProperties['type'] = 'getType';\n        $this->m_customProperties['photographer_url'] = 'getPhotographerUrl';\n        $this->m_customProperties['caption'] = 'getCaption';\n\n        $preferencesService = \\Zend_Registry::get('container')->getService('preferences');\n        if ($preferencesService->MediaRichTextCaptions == 'Y') {\n            $this->m_skipFilter = array('caption');\n        }\n    } // fn __construct\n\n\n    protected function getYear()\n    {\n        $timestamp = strtotime($this->m_dbObject->getProperty('Date'));\n        $date_time = getdate($timestamp);\n        return $date_time['year'];\n    }\n\n\n    protected function getMonth()\n    {\n        $timestamp = strtotime($this->m_dbObject->getProperty('Date'));\n        $date_time = getdate($timestamp);\n        return $date_time['mon'];\n    }\n\n\n    protected function getWeekDay()\n    {\n        $timestamp = strtotime($this->m_dbObject->getProperty('Date'));\n        $date_time = getdate($timestamp);\n        return $date_time['wday'];\n    }\n\n\n    protected function getMonthDay()\n    {\n        $timestamp = strtotime($this->m_dbObject->getProperty('Date'));\n        $date_time = getdate($timestamp);\n        return $date_time['mday'];\n    }\n\n\n    protected function getYearDay()\n    {\n        $timestamp = strtotime($this->m_dbObject->getProperty('Date'));\n        $date_time = getdate($timestamp);\n        return $date_time['yday'];\n    }\n\n\n    protected function getHour()\n    {\n        $timestamp = strtotime($this->m_dbObject->getProperty('Date'));\n        $date_time = getdate($timestamp);\n        return $date_time['hours'];\n    }\n\n\n    protected function getMinute()\n    {\n        $timestamp = strtotime($this->m_dbObject->getProperty('Date'));\n        $date_time = getdate($timestamp);\n        return $date_time['minutes'];\n    }\n\n\n    protected function getSecond()\n    {\n        $timestamp = strtotime($this->m_dbObject->getProperty('Date'));\n        $date_time = getdate($timestamp);\n        return $date_time['seconds'];\n    }\n\n\n    public function getImageUrl($width = null, $height = null, $specs = 'crop')\n    {\n        $url = $this->m_dbObject->getImageUrl();\n\n        if ($width && $height) {\n            $container = \\Zend_Registry::get('container');\n\n            return $container->get('zend_router')->assemble(array(\n                'src' => $container->getService('image')->getSrc('images/' . $this->m_dbObject->getImageFileName(), $width, $height, $specs),\n            ), 'image', false, false);\n        }\n\n        return $url;\n    }\n\n\n    public function getThumbnailUrl()\n    {\n        $url = $this->m_dbObject->getThumbnailUrl();\n        return $url;\n    }\n\n    protected function getImageRelativePath()\n    {\n        global $Campsite;\n\n        $imagesdir = basename(rtrim($Campsite['IMAGE_DIRECTORY'], '/'));\n        return (string) $imagesdir . '/' . $this->m_dbObject->getImageFileName();\n    }\n\n    protected function getMonthName() {\n        $dateTime = new MetaDatetime($this->m_dbObject->getProperty('Date'));\n        return $dateTime->getMonthName();\n    }\n\n\n    protected function getWeekDayName() {\n        $dateTime = new MetaDatetime($this->m_dbObject->getProperty('Date'));\n        return $dateTime->getWeekDayName();\n    }\n\n\n    protected function isLocal()\n    {\n    \treturn $this->m_dbObject->isLocal();\n    }\n\n    protected function getType()\n    {\n    \treturn $this->m_dbObject->getType();\n    }\n\n\n    /**\n     * Returns the index of the current image inside the article.\n     * If the image doesn't belong to the article returns null.\n     *\n     * @return int\n     */\n    protected function getArticleIndex() {\n        return CampTemplate::singleton()->context()->article->image_index;\n    }\n\n    /**\n    * Get article specific caption\n    *\n    * @return string\n    */\n    protected function getCaption()\n    {\n        $article = CampTemplate::singleton()->context()->article;\n        $imageService = \\Zend_Registry::get('container')->getService('image');\n        $caption = $imageService->getCaption(\n            $imageService->find($this->m_dbObject->getImageId()),\n            $article->number,\n            $article->language->number\n        );\n\n        return $caption;\n    }\n\n} // class MetaSection\n\n?>\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaInteger.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/classes/Exceptions.php');\n\n\n/**\n * @package Campsite\n */\nfinal class MetaInteger\n{\n    private $m_value = null;\n\n\tpublic function __construct($p_value)\n    {\n        $this->setValue($p_value);\n    } // fn __construct\n\n    public function setValue($p_value)\n    {\n        if (!MetaInteger::IsValid($p_value)) {\n            throw new InvalidValueException($p_value, MetaInteger::GetTypeName());\n        }\n        $this->m_value = preg_replace('[\\s]', '', $p_value);\n    }\n\n    public function getValue()\n    {\n        return $this->m_value;\n    }\n\n    public static function IsValid($p_value)\n    {\n        $p_value = preg_replace('[\\s]', '', $p_value);\n        if (preg_match('/^([-+]?[\\s]*[\\d]+)$/', $p_value) > 0) {\n            return true;\n        }\n        return false;\n    }\n\n    public static function GetTypeName()\n    {\n        return 'integer';\n    }\n\n} // class MetaInteger\n\n?>"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaIssue.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Issue.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/metaclasses/MetaDbObject.php');\n\n/**\n * @package Campsite\n */\nfinal class MetaIssue extends MetaDbObject\n{\n    private static $m_baseProperties = array(\n    'id'=>'id',\n    'name'=>'Name',\n    'number'=>'Number',\n    'date'=>'PublicationDate',\n    'publish_date'=>'PublicationDate',\n    'url_name'=>'ShortName'\n    );\n\n    private static $m_defaultCustomProperties = array(\n    'year'=>'getPublishYear',\n    'mon'=>'getPublishMonth',\n    'wday'=>'getPublishWeekDay',\n    'mday'=>'getPublishMonthDay',\n    'yday'=>'getPublishYearDay',\n    'hour'=>'getPublishHour',\n    'min'=>'getPublishMinute',\n    'sec'=>'getPublishSecond',\n    'mon_name'=>'getPublishMonthName',\n    'wday_name'=>'getPublishWeekDayName',\n    'template'=>'getTemplate',\n    'publication'=>'getPublication',\n    'language'=>'getLanguage',\n    'is_current'=>'isCurrent',\n    'is_published'=>'isPublished',\n    'defined'=>'defined',\n    'theme_path'=>'getThemePath'\n    );\n\n    public function __construct($p_publicationId = null, $p_languageId = null,\n    $p_issueNumber = null)\n    {\n        $this->m_properties = self::$m_baseProperties;\n        $this->m_customProperties = self::$m_defaultCustomProperties;\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('issue', $p_publicationId, $p_languageId, $p_issueNumber), 'issue');\n        if ($cacheService->contains($cacheKey)) {\n             $this->m_dbObject = $cacheService->fetch($cacheKey);\n        } else {\n            $this->m_dbObject = new Issue($p_publicationId, $p_languageId, $p_issueNumber);\n            $cacheService->save($cacheKey, $this->m_dbObject);\n        }\n\n        if (!$this->m_dbObject->exists()) {\n            $this->m_dbObject = new Issue();\n        }\n    } // fn __construct\n\n    protected function getThemePath()\n    {\n        $themesService = \\Zend_Registry::get('container')->getService('newscoop_newscoop.themes_service');\n\n        return $themesService->getThemePath();\n    }\n\n    /**\n     * Returns a list of MetaLanguage objects - list of languages in which\n     * the issue was translated.\n     *\n     * @param  boolean $p_excludeCurrent\n     * @param  array   $p_order\n     * @param  boolean $p_allIssues\n     * @return array   of MetaLanguage\n     */\n    public function languages_list($p_excludeCurrent = true,\n    array $p_order = array(), $p_allIssues = false) {\n        $languages = $this->m_dbObject->getLanguages(false, $p_excludeCurrent,\n        $p_order, $p_allIssues, !CampTemplate::singleton()->context()->preview);\n        $metaLanguagesList = array();\n        foreach ($languages as $language) {\n            $metaLanguagesList[] = new MetaLanguage($language->getLanguageId());\n        }\n\n        return $metaLanguagesList;\n    }\n\n    protected function getPublishYear()\n    {\n        $publish_timestamp = strtotime($this->m_dbObject->getProperty('PublicationDate'));\n        $publish_date_time = getdate($publish_timestamp);\n\n        return $publish_date_time['year'];\n    }\n\n    protected function getPublishMonth()\n    {\n        $publish_timestamp = strtotime($this->m_dbObject->getProperty('PublicationDate'));\n        $publish_date_time = getdate($publish_timestamp);\n\n        return $publish_date_time['mon'];\n    }\n\n    protected function getPublishWeekDay()\n    {\n        $publish_timestamp = strtotime($this->m_dbObject->getProperty('PublicationDate'));\n        $publish_date_time = getdate($publish_timestamp);\n\n        return $publish_date_time['wday'];\n    }\n\n    protected function getPublishMonthDay()\n    {\n        $publish_timestamp = strtotime($this->m_dbObject->getProperty('PublicationDate'));\n        $publish_date_time = getdate($publish_timestamp);\n\n        return $publish_date_time['mday'];\n    }\n\n    protected function getPublishYearDay()\n    {\n        $publish_timestamp = strtotime($this->m_dbObject->getProperty('PublicationDate'));\n        $publish_date_time = getdate($publish_timestamp);\n\n        return $publish_date_time['yday'];\n    }\n\n    protected function getPublishHour()\n    {\n        $publish_timestamp = strtotime($this->m_dbObject->getProperty('PublicationDate'));\n        $publish_date_time = getdate($publish_timestamp);\n\n        return $publish_date_time['hours'];\n    }\n\n    protected function getPublishMinute()\n    {\n        $publish_timestamp = strtotime($this->m_dbObject->getProperty('PublicationDate'));\n        $publish_date_time = getdate($publish_timestamp);\n\n        return $publish_date_time['minutes'];\n    }\n\n    protected function getPublishSecond()\n    {\n        $publish_timestamp = strtotime($this->m_dbObject->getProperty('PublicationDate'));\n        $publish_date_time = getdate($publish_timestamp);\n\n        return $publish_date_time['seconds'];\n    }\n\n    protected function getPublishMonthName()\n    {\n        $dateTime = new MetaDatetime($this->m_dbObject->getProperty('PublicationDate'));\n\n        return $dateTime->getMonthName();\n    }\n\n    protected function getPublishWeekDayName()\n    {\n        $dateTime = new MetaDatetime($this->m_dbObject->getProperty('PublicationDate'));\n\n        return $dateTime->getWeekDayName();\n    }\n\n    protected function getTemplate()\n    {\n        return new MetaTemplate($this->m_dbObject->getIssueTemplateId());\n    }\n\n    protected function getPublication()\n    {\n        return new MetaPublication($this->m_dbObject->getPublicationId());\n    }\n\n    protected function getLanguage()\n    {\n        return new MetaLanguage($this->m_dbObject->getLanguageId());\n    }\n\n    protected function isCurrent()\n    {\n        $currentIssue = Issue::GetCurrentIssue($this->m_dbObject->getPublicationId(),\n        $this->m_dbObject->getLanguageId());\n\n        return !is_null($currentIssue)\n        && $currentIssue->getIssueNumber() == $this->m_dbObject->getIssueNumber();\n    }\n\n    protected function isPublished()\n    {\n        return $this->m_dbObject->isPublished();\n    }\n\n} // class MetaIssue\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaLanguage.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/metaclasses/MetaDbObject.php');\n\n/**\n * @package Campsite\n */\nfinal class MetaLanguage extends MetaDbObject {\n\n    public function __construct($p_languageId = null)\n    {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('metaLanguage', $p_languageId), 'metaLanguage');\n        if ($cacheService->contains($cacheKey)) {\n             $this->m_dbObject = $cacheService->fetch($cacheKey);\n        } else {\n            $this->m_dbObject = new Language($p_languageId);\n            $cacheService->save($cacheKey, $this->m_dbObject);\n        }\n\n        if (!$this->m_dbObject->exists() && !is_null($p_languageId)) {\n            $this->m_dbObject = new Language($p_languageId);\n        }\n\n        if (!$this->m_dbObject->exists()) {\n            $this->m_dbObject = new Language();\n        }\n\n        $this->m_properties['name'] = 'OrigName';\n        $this->m_properties['number'] = 'Id';\n        $this->m_properties['english_name'] = 'Name';\n        $this->m_properties['code'] = 'Code';\n        $this->m_properties['rfc_code'] = 'RFC3066bis';\n        $this->m_properties['month1'] = 'Month1';\n        $this->m_properties['month2'] = 'Month2';\n        $this->m_properties['month3'] = 'Month3';\n        $this->m_properties['month4'] = 'Month4';\n        $this->m_properties['month5'] = 'Month5';\n        $this->m_properties['month6'] = 'Month6';\n        $this->m_properties['month7'] = 'Month7';\n        $this->m_properties['month8'] = 'Month8';\n        $this->m_properties['month9'] = 'Month9';\n        $this->m_properties['month10'] = 'Month10';\n        $this->m_properties['month11'] = 'Month11';\n        $this->m_properties['month12'] = 'Month12';\n        $this->m_properties['short_month1'] = 'ShortMonth1';\n        $this->m_properties['short_month2'] = 'ShortMonth2';\n        $this->m_properties['short_month3'] = 'ShortMonth3';\n        $this->m_properties['short_month4'] = 'ShortMonth4';\n        $this->m_properties['short_month5'] = 'ShortMonth5';\n        $this->m_properties['short_month6'] = 'ShortMonth6';\n        $this->m_properties['short_month7'] = 'ShortMonth7';\n        $this->m_properties['short_month8'] = 'ShortMonth8';\n        $this->m_properties['short_month9'] = 'ShortMonth9';\n        $this->m_properties['short_month10'] = 'ShortMonth10';\n        $this->m_properties['short_month11'] = 'ShortMonth11';\n        $this->m_properties['short_month12'] = 'ShortMonth12';\n        $this->m_properties['weekday1'] = 'WDay1';\n        $this->m_properties['weekday2'] = 'WDay2';\n        $this->m_properties['weekday3'] = 'WDay3';\n        $this->m_properties['weekday4'] = 'WDay4';\n        $this->m_properties['weekday5'] = 'WDay5';\n        $this->m_properties['weekday6'] = 'WDay6';\n        $this->m_properties['weekday7'] = 'WDay7';\n        $this->m_properties['short_weekday1'] = 'ShortWDay1';\n        $this->m_properties['short_weekday2'] = 'ShortWDay2';\n        $this->m_properties['short_weekday3'] = 'ShortWDay3';\n        $this->m_properties['short_weekday4'] = 'ShortWDay4';\n        $this->m_properties['short_weekday5'] = 'ShortWDay5';\n        $this->m_properties['short_weekday6'] = 'ShortWDay6';\n        $this->m_properties['short_weekday7'] = 'ShortWDay7';\n\n        $this->m_customProperties['defined'] = 'defined';\n        } // fn __construct\n\n        public static function createFromCode($code)\n        {\n            $languageId = Language::GetLanguageIdByCode($code);\n            return new self($languageId);\n        }\n    }\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaMap.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\nrequire_once dirname(__FILE__) . '/MetaDbObject.php';\nrequire_once dirname(__FILE__) . '/MetaMapLocation.php';\nrequire_once($GLOBALS['g_campsiteDir'] . '/classes/GeoMap.php');\n\n/**\n * @package Campsite\n */\nfinal class MetaMap extends MetaDbObject\n{\n    /**\n     * @var array\n     */\n    private static $m_baseProperties = array(\n        'number' => 'id',\n        'name' => 'MapName',\n        'provider' => 'MapProvider',\n        'center_lon' => 'MapCenterLongitude',\n        'center_lat' => 'MapCenterLatitude',\n        'resolution' => 'MapDisplayResolution',\n    );\n\n    /**\n     * @var array\n     */\n    private static $m_defaultCustomProperties = array(\n        'locations' => 'getLocations',\n        'is_enabled' => 'isEnabled',\n    );\n\n    /**\n     * @var array of MetaMapLocation\n     */\n    private $m_locations = NULL;\n\n    /**\n     * @param IGeoMap $p_dbObject\n     */\n    public function __construct(IGeoMap $p_dbObject  = null)\n    {\n        $this->m_properties = self::$m_baseProperties;\n        $this->m_customProperties = self::$m_defaultCustomProperties;\n        if (!is_null($p_dbObject)) {\n            $this->m_dbObject = $p_dbObject;\n        } else {\n            $this->m_dbObject = new Geo_Map();\n        }\n    }\n\n    /**\n     * Get locations\n     *\n     * @return array of MetaMapLocation\n     */\n    protected function getLocations()\n    {\n        if ($this->m_locations === NULL) {\n            $locations = array();\n            foreach ($this->m_dbObject->getLocations() as $location) {\n                $locations[] = new MetaMapLocation($location);\n            }\n            $this->m_locations = $locations;\n        }\n        return $this->m_locations;\n    }\n\n    /**\n     * Is Map enabled?\n     *\n     * @return bool\n     */\n    protected function isEnabled()\n    {\n        return $this->m_dbObject->isEnabled();\n    }\n\n    /**\n     * @param int $p_articleNumber\n     * @param int $p_languageId\n     * @return string\n     */\n    public static function GetMapTagBody($p_articleNumber, $p_languageId)\n    {\n        return Geo_Map::GetMapTagBody((int) $p_articleNumber, (int) $p_languageId);\n    }\n\n    /**\n     * @param int $p_articleNumber\n     * @param int $p_languageId\n     * @return string\n     */\n    public static function GetMapTagHeader($p_articleNumber, $p_languageId,\n                                           $p_mapWidth = 0, $p_mapHeight = 0, $p_autoFocus = null)\n    {\n        return Geo_Map::GetMapTagHeader((int) $p_articleNumber, (int) $p_languageId,\n                                        (int) $p_mapWidth, (int) $p_mapHeight, $p_autoFocus);\n    }\n\n    /**\n     * @param int $p_articleNumber\n     * @param int $p_languageId\n     * @return string\n     */\n    public static function GetMapTagCenter($p_articleNumber, $p_languageId)\n    {\n        return Geo_Map::GetMapTagCenter((int) $p_articleNumber, (int) $p_languageId);\n    }\n\n    /**\n     * @param int $p_article\n     * @param int $p_language\n     * @return string\n     */\n    public static function GetMapTagList($p_articleNumber, $p_languageId)\n    {\n        return Geo_Map::GetMapTagList((int) $p_articleNumber, (int) $p_languageId);\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaMapLocation.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\nrequire_once dirname(__FILE__) . '/MetaDbObject.php';\nrequire_once dirname(__FILE__) . '/MetaMapLocationMultimedia.php';\nrequire_once $GLOBALS['g_campsiteDir'] . '/classes/GeoMapLocation.php';\n\n/**\n * @package Campsite\n */\nfinal class MetaMapLocation extends MetaDbObject\n{\n    /** @var array */\n    private static $m_defaultCustomProperties = array(\n        'name' => 'getName',\n        'latitude' => 'getLatitude',\n        'longitude' => 'getLongitude',\n        'text' => 'getText',\n        'content' => 'getContent',\n        'multimedia' => 'getMultimedia',\n        'enabled' => 'isEnabled',\n    );\n\n    /** @var IGeoMapLocationContent */\n    private $m_content = NULL;\n\n    /** @var array of MetaMapLocationMultimedia */\n    private $multimedia = NULL;\n\n    /**\n     * @param IGeoMapLocation $p_dbObject\n     */\n    public function __construct(IGeoMapLocation $p_dbObject = null)\n    {\n        $this->m_properties = array();\n        $this->m_customProperties = self::$m_defaultCustomProperties;\n        if (!is_null($p_dbObject)) {\n            $this->m_dbObject = $p_dbObject;\n            $languageId = (int) CampTemplate::singleton()->context()->language->number;\n            $this->m_content = $this->m_dbObject->getContent($languageId);\n        } else {\n            $this->m_dbObject = new Geo_MapLocation();\n        }\n    }\n\n    /**\n     * Get name\n     * @return string\n     */\n    protected function getName()\n    {\n        return (!is_null($this->m_content)) ? $this->m_content->getName() : null;\n    }\n\n    /**\n     * Get enabled state\n     * @return boolean\n     */\n    protected function isEnabled()\n    {\n        $languageId = (int) CampTemplate::singleton()->context()->language->number;\n        if ($this->m_dbObject->isEnabled($languageId)) {return true;}\n        return false;\n    }\n\n    /**\n     * Get latitude\n     * @return float\n     */\n    protected function getLatitude()\n    {\n        return $this->m_dbObject->getLatitude();\n    }\n\n    /**\n     * Get longitude\n     * @return float\n     */\n    protected function getLongitude()\n    {\n        return $this->m_dbObject->getLongitude();\n    }\n\n    /**\n     * Get text\n     * @return string\n     */\n    protected function getText()\n    {\n        return (!is_null($this->m_content)) ? $this->m_content->getText() : null;\n    }\n\n    /**\n     * Get content\n     * @return string\n     */\n    protected function getContent()\n    {\n        return !is_null($this->m_content) ? $this->m_content->getContent() : null;\n    }\n\n    /**\n     * Get multimedia\n     * @return array of MetaMapLocationMultimedia\n     */\n    protected function getMultimedia()\n    {\n        if ($this->multimedia === NULL) {\n            $this->multimedia = array();\n            foreach ($this->m_dbObject->getMultimedia() as $multimedia) {\n                $this->multimedia[] = new MetaMapLocationMultimedia($multimedia);\n            }\n        }\n        return $this->multimedia;\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaMapLocationMultimedia.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\nrequire_once dirname(__FILE__) . '/MetaDbObject.php';\nrequire_once $GLOBALS['g_campsiteDir'] . '/classes/GeoMultimedia.php';\nrequire_once $GLOBALS['g_campsiteDir'] . '/classes/IGeoMultimedia.php';\nrequire_once $GLOBALS['g_campsiteDir'] . '/classes/IGeoMapLocation.php';\n\n/**\n * @package Campsite\n */\nfinal class MetaMapLocationMultimedia extends MetaDbObject\n{\n    /** @var array */\n    private static $m_defaultCustomProperties = array(\n        'src' => 'getSrc',\n        'type' => 'getType',\n        'spec' => 'getSpec',\n        'width' => 'getWidth',\n        'height' => 'getHeight',\n    );\n\n    /**\n     * @param IGeoMultimedia $p_dbObject\n     */\n    public function __construct(IGeoMultimedia $p_dbObject = NULL)\n    {\n        $this->m_properties = array();\n        $this->m_customProperties = self::$m_defaultCustomProperties;\n\n        if (!is_null($p_dbObject)) {\n            $this->m_dbObject = $p_dbObject;\n        } else {\n            $this->m_dbObject = new Geo_Multimedia;\n        }\n    }\n\n    /**\n     * Get src\n     * @return string\n     */\n    protected function getSrc()\n    {\n        return $this->m_dbObject->getSrc();\n    }\n\n    /**\n     * Get type\n     * @return string\n     */\n    protected function getType()\n    {\n        return $this->m_dbObject->getType();\n    }\n\n    /**\n     * Get spec\n     * @return string\n     */\n    protected function getSpec()\n    {\n        return $this->m_dbObject->getSpec();\n    }\n\n    /**\n     * Get width\n     * @return int\n     */\n    protected function getWidth()\n    {\n        return $this->m_dbObject->getWidth();\n    }\n\n    /**\n     * Get height\n     * @return int\n     */\n    protected function getHeight()\n    {\n        return $this->m_dbObject->getHeight();\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaOrder.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/classes/Exceptions.php');\n\n\n/**\n * @package Campsite\n */\nfinal class MetaOrder\n{\n    private $m_value = null;\n\n\tpublic function __construct($p_value)\n    {\n        $this->setValue($p_value);\n    } // fn __construct\n\n    public function setValue($p_value)\n    {\n        if (!MetaOrder::IsValid($p_value)) {\n            throw new InvalidValueException($p_value, MetaOrder::GetTypeName());\n        }\n        $this->m_value = trim($p_value);\n    }\n\n    public function getValue()\n    {\n        return $this->m_value;\n    }\n\n    public static function IsValid($p_value)\n    {\n        $p_value = trim($p_value);\n        return strtolower($p_value) == 'asc' || strtolower($p_value) == 'desc';\n    }\n\n    public static function GetTypeName()\n    {\n        return 'order';\n    }\n\n} // class MetaOrder\n\n?>"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaPlaylist.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n\n/**\n * @package Campsite\n */\nfinal class MetaPlaylist {\n\n    /**\n     * Constructor\n     *\n     * @param string $p_number\n     * @param string $p_count\n     * @param string $p_name\n     * @param string $p_content\n     * @param string $p_formattingStart\n     * @param string $p_formattingEnd\n     */\n    public function __construct($p_playlistId = null)\n    {\n    }\n\n    public function __get($p_property)\n    {\n        switch (strtolower($p_property))\n        {\n            default:\n                $this->trigger_invalid_property_error($p_property);\n                return null;\n        }\n    }\n\n    /**\n     * Process the body field content (except subtitles):\n     *  - internal links\n     *  - image links\n     *\n     * @param string $p_content\n     * @return string\n     */\n    private static function ProcessContent($p_content)\n    {\n    \t$content = trim($p_content);\n    \tif (empty($content)) {\n    \t\treturn $p_content;\n    \t}\n    }\n\n    protected function trigger_invalid_property_error($p_property, $p_smarty = null)\n    {\n        $errorMessage = INVALID_PROPERTY_STRING . \" $p_property \"\n        . OF_OBJECT_STRING . ' subtitle';\n        CampTemplate::singleton()->trigger_error($errorMessage, $p_smarty);\n    }\n}\n\n?>"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaPublication.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Publication.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Alias.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/metaclasses/MetaDbObject.php');\n\n/**\n * @package Campsite\n */\nfinal class MetaPublication extends MetaDbObject\n{\n    public function __construct($p_publicationId = null)\n    {\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey('legacy_publication'.$p_publicationId, 'publication');\n        if ($cacheService->contains($cacheKey)) {\n            $this->m_dbObject = $cacheService->fetch($cacheKey);\n        } else {\n            $this->m_dbObject = new Publication($p_publicationId);\n            $cacheService->save($cacheKey, $this->m_dbObject);\n        }\n\n        if (!$this->m_dbObject->exists()) {\n            $this->m_dbObject = new Publication();\n        }\n\n        $this->m_properties['name'] = 'Name';\n        $this->m_properties['identifier'] = 'Id';\n        $this->m_properties['subscription_currency'] = 'Currency';\n        $this->m_properties['subscription_trial_time'] = 'TrialTime';\n        $this->m_properties['subscription_paid_time'] = 'PaidTime';\n        $this->m_properties['subscription_unit_cost'] = 'UnitCost';\n        $this->m_properties['subscription_unit_cost_all_lang'] = 'UnitCostAllLang';\n        $this->m_properties['meta_title'] = 'meta_title';\n        $this->m_properties['meta_keywords'] = 'meta_keywords';\n        $this->m_properties['meta_description'] = 'meta_description';\n\n        $this->m_customProperties['site'] = 'getDefaultSiteName';\n        $this->m_customProperties['defined'] = 'defined';\n        $this->m_customProperties['default_language'] = 'getDefaultLanguage';\n        $this->m_customProperties['public_comments'] = 'getPublicComments';\n        $this->m_customProperties['moderated_comments'] = 'getModeratedComments';\n        $this->m_customProperties['captcha_enabled'] = 'getCAPTCHAEnabled';\n        $this->m_customProperties['subscription_time_unit'] = 'getSubscriptionTimeUnit';\n        $this->m_customProperties['subscription_time'] = 'getSubscriptionTime';\n        $this->m_customProperties['seo'] = 'getSeo';\n        $this->m_customProperties['theme_path'] = 'getThemePath';\n    } // fn __construct\n\n    protected function getThemePath()\n    {\n        $themesService = \\Zend_Registry::get('container')->getService('newscoop_newscoop.themes_service');\n\n        return $themesService->getThemePath();\n    }\n\n    /**\n     * Returns a list of MetaLanguage objects - list of languages in which\n     * the issue was translated.\n     *\n     * @param  boolean $p_excludeCurrent\n     * @param  array   $p_order\n     * @param  boolean $p_allIssues\n     * @return array   of MetaLanguage\n     */\n    public function languages_list($p_excludeCurrent = true,\n    array $p_order = array()) {\n        if ($p_excludeCurrent) {\n            $context = CampTemplate::singleton()->context();\n            $languageId = $context->language->number;\n        } else {\n            $languageId = null;\n        }\n        $languages = $this->m_dbObject->getLanguages($languageId, $p_order,\n        !CampTemplate::singleton()->context()->preview);\n        $metaLanguagesList = array();\n        foreach ($languages as $language) {\n            $metaLanguagesList[] = new MetaLanguage($language->getLanguageId());\n        }\n\n        return $metaLanguagesList;\n    }\n\n    protected function getDefaultSiteName()\n    {\n        $publicationService = \\Zend_Registry::get('container')->getService('newscoop.publication_service');\n        if ($publicationService->getPublicationAlias()) {\n            if ($publicationService->getPublicationAlias()->getId() == $this->m_dbObject->getDefaultAliasId()) {\n                return $publicationService->getPublicationAlias()->getName();\n            }\n        }\n\n        $defaultAlias = new Alias($this->m_dbObject->getDefaultAliasId());\n        if (!$defaultAlias->exists()) {\n            return null;\n        }\n\n        return $defaultAlias->getName();\n    }\n\n    protected function getDefaultLanguage()\n    {\n        return new MetaLanguage($this->m_dbObject->getDefaultLanguageId());\n    }\n\n    protected function getPublicComments()\n    {\n        return $this->m_dbObject->publicComments();\n    }\n\n    protected function getModeratedComments()\n    {\n        if (CampTemplate::singleton()->context()->user->logged_in) {\n            return $this->m_dbObject->commentsSubscribersModerated();\n        } else {\n            return $this->m_dbObject->commentsPublicModerated();\n        }\n    }\n\n    protected function getCAPTCHAEnabled()\n    {\n        return $this->m_dbObject->isCaptchaEnabled();\n    }\n\n    protected function getSubscriptionTimeUnit()\n    {\n        return $this->m_dbObject->getTimeUnitName(CampTemplate::singleton()->context()->language->number);\n    }\n\n    protected function getSubscriptionTime()\n    {\n        if (strtolower(CampRequest::GetVar('SubsType')) == 'trial') {\n            return $this->subscription_trial_time;\n        } elseif (strtolower(CampRequest::GetVar('SubsType')) == 'paid') {\n            return $this->subscription_paid_time;\n        }\n\n        return null;\n    }\n\n    protected function getSeo()\n    {\n        return $this->m_dbObject->getSeo();\n    }\n} // class MetaPublication\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaSection.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Section.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/metaclasses/MetaDbObject.php');\n\n/**\n * @package Campsite\n */\nfinal class MetaSection extends MetaDbObject {\n\tprivate static $m_baseProperties = array(\n\t'name'=>'Name',\n    'number'=>'Number',\n    'description'=>'Description',\n    'url_name'=>'ShortName',\n    'identifier' => 'id'\n\t);\n\n\tprivate static $m_defaultCustomProperties = array(\n\t'template'=>'getTemplate',\n    'publication'=>'getPublication',\n    'issue'=>'getIssue',\n    'language'=>'getLanguage',\n    'defined'=>'defined'\n\t);\n\n\n    public function __construct($p_publicationId = null, $p_issueNumber = null, $p_languageId = null, $p_sectionNumber = null)\n    {\n        $this->m_properties = self::$m_baseProperties;\n        $this->m_customProperties = self::$m_defaultCustomProperties;\n        $this->m_skipFilter = array('description');\n\n        if (is_null($p_publicationId) && is_null($p_issueNumber) && is_null($p_languageId) && is_null($p_sectionNumber)) {\n            $this->m_dbObject = new Section();\n\n            return;\n        }\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('section', $p_publicationId, $p_issueNumber, $p_languageId, $p_sectionNumber), 'section');\n        if ($cacheService->contains($cacheKey)) {\n             $this->m_dbObject = $cacheService->fetch($cacheKey);\n        } else {\n            $this->m_dbObject = new Section($p_publicationId, $p_issueNumber, $p_languageId, $p_sectionNumber);\n            $cacheService->save($cacheKey, $this->m_dbObject);\n        }\n\n        if (!$this->m_dbObject->exists() && !is_null($p_sectionNumber)) {\n            $this->m_dbObject = new Section();\n        }\n    } // fn __construct\n\n\n    protected function getTemplate()\n    {\n    \tif ($this->m_dbObject->getSectionTemplateId() > 0) {\n   \t\t\treturn new MetaTemplate($this->m_dbObject->getSectionTemplateId());\n    \t}\n    \t$sectionIssue = new Issue($this->m_dbObject->getProperty('IdPublication'),\n    \t\t\t\t\t\t\t  $this->m_dbObject->getProperty('IdLanguage'),\n    \t\t\t\t\t\t\t  $this->m_dbObject->getProperty('NrIssue'));\n   \t\treturn new MetaTemplate($sectionIssue->getSectionTemplateId());\n    }\n\n\n    protected function getPublication()\n    {\n        return new MetaPublication($this->m_dbObject->getPublicationId());\n    }\n\n\n    protected function getLanguage()\n    {\n        return new MetaLanguage($this->m_dbObject->getLanguageId());\n    }\n\n\n    protected function getIssue()\n    {\n        return new MetaIssue($this->m_dbObject->getPublicationId(),\n                             $this->m_dbObject->getLanguageId(),\n                             $this->m_dbObject->getIssueNumber());\n    }\n\n} // class MetaSection\n\n?>"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaSlideshow.php",
    "content": "<?php\n/**\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nfinal class MetaSlideshow\n{\n    /**\n     * @var string\n     */\n    public $headline;\n\n    /**\n     * @var string\n     */\n    public $slug;\n\n    /**\n     * @var array\n     */\n    public $items;\n\n    /**\n     * @var Newscoop\\Package\\Package\n     */\n    public $slideshow;\n\n    /**\n     * @param Newscoop\\Package\\Package $package\n     */\n    public function __construct(\\Newscoop\\Package\\Package $package)\n    {\n        $this->slideshow = $package;\n        $this->headline = $this->slideshow->getHeadline();\n        $this->slug = $this->slideshow->getSlug();\n        $this->items = new MetaSlideshowItemList($this->slideshow);\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaSlideshowItem.php",
    "content": "<?php\n/**\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nfinal class MetaSlideshowItem\n{\n    /**\n     * @var string\n     */\n    public $caption;\n\n    /**\n     * @var bool\n     */\n    public $is_image;\n\n    /**\n     * @var bool\n     */\n    public $is_video;\n\n    /**\n     * @var object\n     */\n    public $video;\n\n    /**\n     * @var object\n     */\n    public $image;\n\n    /**\n     * @var Newscoop\\Package\\Item\n     */\n    private $item;\n\n    /**\n     * @param Newscoop\\Package\\Item $item\n     */\n    public function __construct(\\Newscoop\\Package\\Item $item)\n    {\n        global $Campsite;\n\n        $this->item = $item;\n        $this->caption = $item->getCaption();\n        $this->is_image = $item->isImage();\n        $this->is_video = $item->isVideo();\n\n        if ($item->isImage()) {\n            $image = $item->getImage();\n            $thumbnail = $item->getRendition()->getThumbnail($image, Zend_Registry::get('container')->getService('image'));\n            $this->image = (object) array(\n                'src' => Zend_Registry::get('view')->url(array(\n                    'src' => $thumbnail->src,\n                ), 'image', true, false),\n                'width' => $thumbnail->width,\n                'height' => $thumbnail->height,\n                'id' => $image->getId(),\n                'caption' => $item->getCaption() ?: $item->getImage()->getCaption(),\n                'photographer' => $image->getPhotographer(),\n                'photographer_url' => $image->getPhotographerUrl(),\n                'original' => $image->getPath()\n            );\n        } else {\n            $this->video = (object) array(\n                'url' => $item->getVideoUrl(),\n                'width' => $item->getRendition()->getWidth(),\n                'height' => $item->getRendition()->getHeight(),\n            );\n        }\n    }\n\n    /**\n     * Get preview\n     *\n     * @return object\n     */\n    public function preview($width, $height)\n    {\n        $preview = $this->item->getRendition()->getPreview($width, $height);\n        $thumbnail = $preview->getThumbnail($this->item->getImage(), Zend_Registry::get('container')->getService('image'));\n        return (object) array(\n            'src' => Zend_Registry::get('view')->url(array(\n                'src' => $thumbnail->src,\n            ), 'image', true, false),\n            'width' => $thumbnail->width,\n            'height' => $thumbnail->height,\n        );\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaSlideshowItemList.php",
    "content": "<?php\n/**\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n */\nfinal class MetaSlideshowItemList implements Iterator\n{\n    /**\n     * @var Newscoop\\Package\\Package\n     */\n    private $slideshow;\n\n    /**\n     * @var ArrayIterator\n     */\n    private $items;\n\n    /**\n     * @param Newscoop\\Package\\Package $slideshow\n     */\n    public function __construct(\\Newscoop\\Package\\Package $slideshow)\n    {\n        $this->slideshow = $slideshow;\n    }\n\n    /**\n     * @return MetaSlideshow\n     */\n    public function current()\n    {\n        return new MetaSlideshowItem($this->items->current());\n    }\n\n    /**\n     * @return void\n     */\n    public function rewind()\n    {\n        if ($this->items === null) {\n            $this->items = new ArrayIterator($this->slideshow->getItems()->toArray());\n        }\n\n        return $this->items->rewind();\n    }\n\n    /**\n     * @return void\n     */\n    public function next()\n    {\n        return $this->items->next();\n    }\n\n    /**\n     * @return int\n     */\n    public function key()\n    {\n        return $this->items->key();\n    }\n\n    /**\n     * @return bool\n     */\n    public function valid()\n    {\n        return $this->items->valid();\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaString.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/classes/Exceptions.php');\n\n\n/**\n * @package Campsite\n */\nfinal class MetaString\n{\n    private $m_value = null;\n\n\tpublic function __construct($p_value)\n    {\n        $this->setValue($p_value);\n    } // fn __construct\n\n    public function setValue($p_value)\n    {\n        if (!MetaString::IsValid($p_value)) {\n            throw new InvalidValueException($p_value, MetaString::GetTypeName());\n        }\n        $this->m_value = ''.$p_value;\n    }\n\n    public function getValue()\n    {\n        return $this->m_value;\n    }\n\n    public static function IsValid($p_value)\n    {\n        return is_scalar($p_value);\n    }\n\n    public static function GetTypeName()\n    {\n        return 'string';\n    }\n\n} // class MetaString\n\n?>"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaSubscription.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Subscription.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Language.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/metaclasses/MetaDbObject.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/classes/CampTemplate.php');\n\n/**\n * @package Campsite\n */\nfinal class MetaSubscription extends MetaDbObject {\n\n    public function __construct($p_subscriptionId = null)\n    {\n        $this->m_dbObject = new Subscription($p_subscriptionId);\n        if (!$this->m_dbObject->exists()) {\n            $this->m_dbObject = new Subscription();\n        }\n\n        $this->m_properties['identifier'] = 'Id';\n        $this->m_properties['currency'] = 'Currency';\n\n        $this->m_customProperties['type'] = 'getType';\n        $this->m_customProperties['start_date'] = 'getStartDate';\n        $this->m_customProperties['expiration_date'] = 'getExpirationDate';\n        $this->m_customProperties['is_active'] = 'isActive';\n        $this->m_customProperties['is_valid'] = 'isValid';\n        $this->m_customProperties['publication'] = 'getPublication';\n        $this->m_customProperties['defined'] = 'defined';\n    } // fn __construct\n\n\n    protected function getType()\n    {\n        $type = $this->m_dbObject->getType();\n        return $type == 'T' ? 'trial' : 'paid';\n    }\n\n\n    protected function getStartDate() {\n        $startDate = null;\n        $sections = SubscriptionSection::GetSubscriptionSections($this->m_dbObject->getSubscriptionId());\n        foreach ($sections as $section) {\n            $sectionStartDate = $section->getStartDate();\n            if ($sectionStartDate < $startDate || is_null($startDate)) {\n                $startDate = $sectionStartDate;\n            }\n        }\n        return $startDate;\n    }\n\n\n    protected function getExpirationDate() {\n        $expirationDate = null;\n        $sections = SubscriptionSection::GetSubscriptionSections($this->m_dbObject->getSubscriptionId());\n        foreach ($sections as $section) {\n            $sectionExpDate = $section->getExpirationDate();\n            if ($sectionExpDate > $expirationDate) {\n                $expirationDate = $sectionExpDate;\n            }\n        }\n        return $expirationDate;\n    }\n\n\n    protected function isActive()\n    {\n        return (int)$this->m_dbObject->isActive();\n    }\n\n\n    protected function isValid() {\n        $expirationDate = $this->getExpirationDate();\n        $today = new Date(time());\n        return (int)($this->isActive() && $expirationDate >= $today->getDate());\n    }\n\n\n    protected function getPublication() {\n        return new MetaPublication($this->m_dbObject->getPublicationId());\n    }\n\n\n    public function has_section($p_sectionNumber) {\n        $today = new Date(time());\n\n        $subscriptionId = $this->m_dbObject->getSubscriptionId();\n        $section = new SubscriptionSection($subscriptionId, $p_sectionNumber, 0);\n        if ($section->exists() && $section->getExpirationDate() >= $today->getDate()) {\n            return (int)true;\n        }\n        $currentLanguageNumber = CampTemplate::singleton()->context()->language->number;\n        $section = new SubscriptionSection($subscriptionId, $p_sectionNumber, $currentLanguageNumber);\n        return (int)($section->exists() && $section->getExpirationDate() >= $today->getDate());\n    }\n\n    public function has_article($articleNumber) {\n        $container = \\Zend_Registry::get('container');\n        $today = new Date(time());\n        $currentLanguageNumber = CampTemplate::singleton()->context()->language->number;\n        $subscriptionId = $this->m_dbObject->getSubscriptionId();\n\n        $subscriptionArticle = $container->getService('em')\n            ->getRepository('Newscoop\\Subscription\\Article')\n            ->findOneBy(array(\n                'subscription' => $subscriptionId,\n                'articleNumber' => $articleNumber,\n                'language' => $currentLanguageNumber\n            ));\n        \n        if ($subscriptionArticle) {\n            if ($subscriptionArticle->getExpirationDate() >= $today->getDate()) {\n                return (int) true;\n            }\n        }\n\n        return (int) false;\n    }\n\n    public function has_issue($issueNumber) {\n        $container = \\Zend_Registry::get('container');\n        $today = new Date(time());\n        $currentLanguageNumber = CampTemplate::singleton()->context()->language->number;\n        $subscriptionId = $this->m_dbObject->getSubscriptionId();\n\n        $subscriptionIssue = $container->getService('em')\n            ->getRepository('Newscoop\\Subscription\\Issue')\n            ->findOneBy(array(\n                'subscription' => $subscriptionId,\n                'issueNumber' => $issueNumber,\n                'language' => $currentLanguageNumber\n            ));\n        \n        if ($subscriptionIssue) {\n            if ($subscriptionIssue->getExpirationDate() >= $today->getDate()) {\n                return (int) true;\n            }\n        }\n\n        return (int) false;\n    }\n\n} // class MetaSubscription\n\n?>"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaSubscriptions.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/Subscription.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/metaclasses/MetaDbObject.php');\n\n/**\n * @package Campsite\n */\nfinal class MetaSubscriptions extends MetaDbObject {\n\n    public function __construct($publicationId, $userId)\n    {\n        $this->m_dbObject = Subscription::GetSubscriptions($publicationId, $userId);\n        if (count($this->m_dbObject) == 0) {\n            $this->m_dbObject = array();\n        }\n    }\n\n    public function has_section($sectionNumber)\n    {\n        foreach ($this->m_dbObject as $subscription) {\n            $subscription = new MetaSubscription($subscription->getSubscriptionId());\n            if ($subscription->has_section($sectionNumber) && $subscription->is_active) {\n                return $subscription;\n            }\n        }\n\n        return false;\n    }\n\n    public function has_article($articleNumber)\n    {\n        foreach ($this->m_dbObject as $subscription) {\n            $subscription = new MetaSubscription($subscription->getSubscriptionId());\n            if ($subscription->has_article($articleNumber) && $subscription->is_valid) {\n                return $subscription;\n            }\n        }\n\n        return false;\n    }\n\n    public function has_issue($issueNumber)\n    {\n        foreach ($this->m_dbObject as $subscription) {\n            $subscription = new MetaSubscription($subscription->getSubscriptionId());\n            if ($subscription->has_issue($issueNumber) && $subscription->is_valid) {\n                return $subscription;\n            }\n        }\n\n        return false;\n    }\n\n    public function has_publication($publicationId)\n    {\n        foreach ($this->m_dbObject as $subscription) {\n            $subscription = new MetaSubscription($subscription->getSubscriptionId());\n            if ($subscription->publication->identifier == $publicationId && $subscription->is_valid) {\n                return $subscription;\n            }\n        }\n\n        return false;\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaSubtitle.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * @package Campsite\n */\nfinal class MetaSubtitle\n{\n    /**\n     * The pattern used to detect the subtitles.\n     *\n     * @var string\n     */\n    private static $m_SubtitlePattern = '<!\\*\\*[\\s]*Title[\\s]*>([^<]*)<!\\*\\*[\\s]*EndTitle[\\s]*>';\n\n    /**\n     * The pattern used to detect the subtitle formatting start.\n     *\n     * @var string\n     */\n    private static $m_HeaderStartPattern = '(<[\\s]*[hH][\\d][\\s]*>[\\s]*)*';\n\n    /**\n     * The pattern used to detect the subtitle formatting end.\n     *\n     * @var string\n     */\n    private static $m_HeaderEndPattern = '([\\s]*<[\\s]*\\/[\\s]*[hH][\\d][\\s]*>)*';\n\n    /**\n     * The subtitle order number\n     *\n     * @var int\n     */\n    private $m_number;\n\n    /**\n     * The field name to which this subtitle belongs\n     *\n     * @var string\n     */\n    private $m_fieldName;\n\n    /**\n     * The number of subtitles\n     *\n     * @var int\n     */\n    private $m_count;\n\n    /**\n     * The subtitle name\n     *\n     * @var string\n     */\n    private $m_name;\n\n    /**\n     * The subtitle content\n     *\n     * @var string\n     */\n    private $m_content;\n\n    /**\n     * Stores the subtitle name formatting start\n     *\n     * @var string\n     */\n    private $m_nameFormattingStart;\n\n    /**\n     * Stores the subtitle name formatting end\n     *\n     * @var string\n     */\n    private $m_nameFormattingEnd;\n\n    /**\n     * Constructor\n     *\n     * @param string $p_number\n     * @param string $p_count\n     * @param string $p_name\n     * @param string $p_content\n     * @param string $p_formattingStart\n     * @param string $p_formattingEnd\n     */\n    public function MetaSubtitle($p_number = null, $p_fieldName = null,\n    $p_count = null, $p_name = null, $p_content = null, $p_formattingStart = '',\n    $p_formattingEnd = '')\n    {\n        $this->m_number = $p_number;\n        $this->m_fieldName = $p_fieldName;\n        $this->m_count = $p_count;\n        $this->m_name = $p_name;\n        $this->m_content = MetaSubtitle::ProcessContent($p_content);\n        $this->m_nameFormattingStart = $p_formattingStart;\n        $this->m_nameFormattingEnd = $p_formattingEnd;\n    }\n\n    /**\n     * Returns true if the current object is the same type as the given\n     * object then has the same value.\n     * @param  mix     $p_otherObject\n     * @return boolean\n     */\n    public function same_as($p_otherObject)\n    {\n        return get_class($this) == get_class($p_otherObject)\n        && $this->m_number == $p_otherObject->m_number\n        && $this->m_fieldName == $p_otherObject->m_fieldName\n        && $this->m_name == $p_otherObject->m_name;\n    }\n\n    public function __get($p_property)\n    {\n        switch (strtolower($p_property)) {\n            case 'number': return $this->m_number;\n            case 'field_name': return $this->m_fieldName;\n            case 'count': return $this->m_count;\n            case 'name': return $this->m_name;\n            case 'formatted_name': return $this->getFormattedName();\n            case 'content': return $this->m_content;\n            case 'has_previous_subtitles': return (int) ($this->m_number > 0);\n            case 'has_next_subtitles': return (int) ($this->m_number < ($this->m_count - 1));\n            default:\n                $this->trigger_invalid_property_error($p_property);\n\n                return;\n        }\n    }\n\n    /**\n     * Returns the formatted subtitle name\n     *\n     * @param  string $p_formattingStart\n     * @param  string $p_formattingEnd\n     * @return string\n     */\n    protected function getFormattedName($p_formattingStart = '<p>', $p_formattingEnd = '</p>')\n    {\n        $formattingStart = empty($this->m_nameFormattingStart) ? $p_formattingStart : $this->m_nameFormattingStart;\n        $formattingEnd = empty($this->m_nameFormattingEnd) ? $p_formattingEnd : $this->m_nameFormattingEnd;\n\n        return $formattingStart.$this->m_name.$formattingEnd;\n    }\n\n    /**\n     * Reads the subtitles from the given content\n     *\n     * @param  string $p_content\n     * @param  string $p_firstSubtitle\n     * @return array  of MetaSubtitle\n     */\n    public static function ReadSubtitles($p_content, $p_fieldName, $p_firstSubtitle = '',\n    $p_headerFormatStart = null, $p_headerFormatEnd = null)\n    {\n        $result = preg_match_all('/('.MetaSubtitle::GetFindPattern().')/i', $p_content, $subtitlesNames);\n\n        $contentParts = preg_split('/'.MetaSubtitle::GetSplitPattern().'/i', $p_content);\n        $subtitlesContents = array();\n        foreach ($contentParts as $index => $contentPart) {\n            $name = $index > 0 ? $subtitlesNames[3][$index-1] : $p_firstSubtitle;\n            if (empty($p_headerFormatStart)) {\n                $formatStart = $index > 0 ? $subtitlesNames[2][$index-1] : '';\n            } else {\n                $formatStart = $p_headerFormatStart;\n            }\n            if (empty($p_headerFormatEnd)) {\n                $formatEnd = $index > 0 ? $subtitlesNames[4][$index-1] : '';\n            } else {\n                $formatEnd = $p_headerFormatEnd;\n            }\n            $subtitles[] = new MetaSubtitle($index, $p_fieldName, count($contentParts),\n            $name, $contentPart, $formatStart, $formatEnd);\n        }\n\n        return $subtitles;\n    }\n\n    /**\n     * Process the body field content (except subtitles):\n     *  - internal links\n     *  - image links\n     *\n     * @param  string $p_content\n     * @return string\n     */\n    public static function ProcessContent($p_content, $articleNumber = null, $articleLanguageNumber = null)\n    {\n        if (!is_null($articleNumber)) {\n            $context = CampTemplate::singleton()->context();\n            $uri = $context->url;\n            $uri->article = new MetaArticle($articleLanguageNumber, $articleNumber);\n        }\n\n        $content = trim($p_content);\n        if (empty($content)) {\n            return $p_content;\n        }\n        // process internal links\n        $linkPattern = '<!\\*\\*[\\s]*Link[\\s]+Internal[\\s]+(([\\d\\w]+[=][\\d\\w]+&?)*)([\\s]+TARGET[\\s]+([^>\\s]*))*[\\s]*>';\n        $content = preg_replace_callback(\"|$linkPattern|i\",\n                                         array('MetaSubtitle', 'ProcessInternalLink'),\n                                         $p_content);\n        $endLinkPattern = '<!\\*\\*[\\s]*EndLink[\\s]*>';\n        $content = preg_replace(\"|$endLinkPattern|i\", '</a>', $content);\n\n        // image tag format: <!** Image 1 align=\"left\" alt=\"FSF\" sub=\"FSF\" attr=\"value\">\n        $imagePattern = '<!\\*\\*[\\s]*Image[\\s]+([\\d]+)(([\\s]+(align|alt|sub|width|height|ratio|\\w+)\\s*=\\s*(\"[^\"]*\"|[^\\s]*))*)[\\s]*>';\n        $content = preg_replace_callback(\"/$imagePattern/i\",\n                                     array('MetaSubtitle', 'ProcessImageLink'),\n                                     $content);\n\n        // snippet tag format: <-- Snippet 1 -->\n        $snippetPattern = '<\\-\\-\\sSnippet\\s([\\d]+)\\s\\-\\->';\n        $content = preg_replace_callback(\"/$snippetPattern/i\",\n                                     array('MetaSubtitle', 'ProcessSnippet'),\n                                     $content);\n\n        return $content;\n    }\n\n    /**\n     * Process the image statement given in Campsite internal formatting.\n     * Returns a standard image URL.\n     *\n     * @param  array  $p_matches\n     * @return string\n     */\n    public static function ProcessImageLink(array $p_matches)\n    {\n        $context = CampTemplate::singleton()->context();\n        $oldImage = $context->image;\n        $uri = $context->url;\n        if ($uri->article->number == 0) {\n            return '';\n        }\n\n        $imageNumber = $p_matches[1];\n        $detailsString = $p_matches[2];\n        $detailsArray = array();\n        if (trim($detailsString) != '') {\n            $imageAttributes = 'align|alt|sub|width|height|ratio|\\w+';\n            preg_match_all(\"/[\\s]+($imageAttributes)=\\\"([^\\\"]+)\\\"/i\", $detailsString, $detailsArray1);\n            $detailsArray1[1] = array_map('strtolower', $detailsArray1[1]);\n            if (count($detailsArray1[1]) > 0) {\n                $detailsArray1 = array_combine($detailsArray1[1], $detailsArray1[2]);\n            } else {\n                $detailsArray1 = array();\n            }\n            preg_match_all(\"/[\\s]+($imageAttributes)=([^\\\"\\s]+)/i\", $detailsString, $detailsArray2);\n            $detailsArray2[1] = array_map('strtolower', $detailsArray2[1]);\n            if (count($detailsArray2[1]) > 0) {\n                $detailsArray2 = array_combine($detailsArray2[1], $detailsArray2[2]);\n            } else {\n                $detailsArray2 = array();\n            }\n            $detailsArray = array_merge($detailsArray1, $detailsArray2);\n        }\n\n        $articleImage = new ArticleImage($uri->article->number, null, $imageNumber);\n        $image = new MetaImage($articleImage->getImageId());\n        $context->image = $image;\n\n        $imageOptions = '';\n        $preferencesService = \\Zend_Registry::get('container')->getService('system_preferences_service');\n\n        if (array_key_exists('sub', $detailsArray)) {\n            if ($preferencesService->MediaRichTextCaptions == 'Y') {\n                $detailsArray['sub'] = html_entity_decode($detailsArray['sub'], ENT_QUOTES, 'UTF-8');\n            } else {\n                $detailsArray['sub'] = strip_tags(html_entity_decode($detailsArray['sub'], ENT_QUOTES, 'UTF-8'));\n            }\n        }\n\n        $defaultOptions = array('ratio' => 'EditorImageRatio', 'width' => 'EditorImageResizeWidth',\n        'height' => 'EditorImageResizeHeight', );\n        foreach (array('ratio', 'width', 'height') as $imageOption) {\n            $defaultOption = (int) $preferencesService->get($defaultOptions[$imageOption]);\n            if (isset($detailsArray[$imageOption]) && $detailsArray[$imageOption] > 0) {\n                if (isset($detailsArray['size']) && strpos($detailsArray['size'], 'px') !== false) {\n                    $detailsArray['percentage'] = '100%';\n                    $imageOptions .= \" $imageOption \".rtrim($detailsArray['size'], 'px');\n                } else {\n                    $imageOptions .= \" $imageOption \".(int) $detailsArray[$imageOption];\n                }\n            } elseif ($imageOption != 'ratio' && $defaultOption > 0) {\n                $imageOptions .= \" $imageOption $defaultOption\";\n            } elseif ($imageOption == 'ratio' && $defaultOption != 100) {\n                $imageOptions .= \" $imageOption $defaultOption\";\n            }\n        }\n        $imageOptions = trim($imageOptions);\n\n        $imgZoomLink = '';\n        if ($preferencesService->EditorImageZoom == 'Y' && strlen($imageOptions) > 0) {\n            $imgZoomLink = '/'.$image->filerpath;\n        }\n\n        try {\n            $copiedUriParameters = $uri->uri_parameter;\n            $templatesService = \\Zend_Registry::get('container')->getService('newscoop.templates.service');\n            $originalVector = $templatesService->getSmarty()->campsiteVector;\n            $uri->uri_parameter = \"image $imageOptions\";\n            $templatesService->setVector(array_merge($templatesService->getSmarty()->campsiteVector, array(\n                'params' => implode('__', array(\n                    $uri->article->number,\n                    $imageNumber,\n                    $articleImage->getImageId(),\n                    $templatesService->getContentImageTemplate()\n                ))\n            )));\n\n            $image = $templatesService->fetchTemplate($templatesService->getContentImageTemplate(), array(\n                'imageDetails' => $detailsArray,\n                'MediaRichTextCaptions' => $preferencesService->MediaRichTextCaptions,\n                'uri' => $uri,\n                'imgZoomLink' => $imgZoomLink\n            ));\n            $uri->uri_parameter = $copiedUriParameters;\n            $templatesService->setVector($originalVector);\n\n            return $image;\n        } catch (\\Exception $e) {\n            return $e->getMessage();\n        }\n    }\n\n    /**\n     * Process the Snippet markup and return the Snippet rendered\n     *\n     * @param  array  $p_matches\n     * @return string\n     */\n    public static function ProcessSnippet(array $p_matches)\n    {\n        $snippet = '';\n        if (array_key_exists(1, $p_matches)) {\n            $em = \\Zend_Registry::get('container')->getService('doctrine.em');\n            $snippet = $em->getRepository('Newscoop\\Entity\\Snippet')->getSnippetById($p_matches[1]);\n            $snippet = $snippet->render();\n        }\n\n        return $snippet;\n    }\n\n    /**\n     * Process the internal link statement given in Campsite internal formatting.\n     * Returns a standard URL.\n     *\n     * @param  array  $p_matches\n     * @return string\n     */\n    public static function ProcessInternalLink(array $p_matches)\n    {\n        $parametersString = $p_matches[1];\n        $targetName = isset($p_matches[4]) ? $p_matches[4] : null;\n        preg_match_all('/([\\d\\w]+)=([\\d\\w]+)&?/i', $parametersString, $parametersArray);\n        $parametersArray = array_combine($parametersArray[1], $parametersArray[2]);\n\n        $uri = new MetaURL();\n        $uri->reset_parameters();\n        $uri->language = new MetaLanguage($parametersArray['IdLanguage']);\n        $uri->publication = new MetaPublication($parametersArray[CampRequest::PUBLICATION_ID]);\n        $uri->issue = new MetaIssue($parametersArray[CampRequest::PUBLICATION_ID],\n        $parametersArray[CampRequest::LANGUAGE_ID],\n        $parametersArray[CampRequest::ISSUE_NR]);\n        $uri->section = new MetaSection($parametersArray[CampRequest::PUBLICATION_ID],\n        $parametersArray[CampRequest::ISSUE_NR],\n        $parametersArray[CampRequest::LANGUAGE_ID],\n        $parametersArray[CampRequest::SECTION_NR]);\n        $uri->article = new MetaArticle($parametersArray[CampRequest::LANGUAGE_ID],\n        $parametersArray[CampRequest::ARTICLE_NR]);\n        $urlString = '<a href=\"'.$uri->url.'\" target=\"'.$targetName.'\">';\n\n        return $urlString;\n    }\n\n    /**\n     * Returns the pattern used to split the content in subtitles\n     *\n     * @return string\n     */\n    private static function GetSplitPattern()\n    {\n        return MetaSubtitle::$m_HeaderStartPattern.MetaSubtitle::$m_SubtitlePattern.MetaSubtitle::$m_HeaderEndPattern;\n    }\n\n    /**\n     * Returns the pattern used to find a subtitle in the article content field\n     *\n     * @return string\n     */\n    private static function GetFindPattern()\n    {\n        return MetaSubtitle::$m_HeaderStartPattern.MetaSubtitle::$m_SubtitlePattern.MetaSubtitle::$m_HeaderEndPattern;\n    }\n\n    protected function trigger_invalid_property_error($p_property, $p_smarty = null)\n    {\n        $errorMessage = INVALID_PROPERTY_STRING.\" $p_property \"\n        .OF_OBJECT_STRING.' subtitle';\n        CampTemplate::singleton()->trigger_error($errorMessage, $p_smarty);\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaSwitch.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/classes/Exceptions.php');\n\n\n/**\n * @package Campsite\n */\nfinal class MetaSwitch\n{\n    private $m_value = null;\n\n\tpublic function __construct($p_value)\n    {\n        $this->setValue($p_value);\n    } // fn __construct\n\n    public function setValue($p_value)\n    {\n        if (!MetaSwitch::IsValid($p_value)) {\n            throw new InvalidValueException($p_value, MetaSwitch::GetTypeName());\n        }\n        $this->m_value = trim($p_value);\n    }\n\n    public function getValue()\n    {\n        return $this->m_value;\n    }\n\n    public static function IsValid($p_value)\n    {\n        $p_value = trim($p_value);\n        return strtolower($p_value) == 'on' || strtolower($p_value) == 'off';\n    }\n\n    public static function GetTypeName()\n    {\n        return 'switch';\n    }\n\n} // class MetaSwitch\n\n?>"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaTemplate.php",
    "content": "<?php\n\n/**\n * @package Campsite\n */\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'] . '/template_engine/metaclasses/MetaDbObject.php');\n\nuse Newscoop\\Service\\Resource\\ResourceId;\nuse Newscoop\\Service\\ISyncResourceService;\nuse Newscoop\\Entity\\Resource;\n\n/**\n * @package Campsite\n */\nfinal class MetaTemplate extends MetaDbObject\n{\n    private $_name = false;\n\n    protected $_map = array();\n\n    public function __construct($p_templateIdOrName = null, $p_themePath = null)\n    {\n        $this->m_properties = array();\n\n        $this->m_customProperties['name'] = 'getValue';\n        $this->m_customProperties['identifier'] = 'getId';\n        $this->m_customProperties['type'] = 'getTemplateType';\n        $this->m_customProperties['defined'] = 'defined';\n        $this->m_customProperties['theme_dir'] = 'getThemeDir';\n\n        $this->_map = array(\n            \"frontPage\" => \"issue\",\n            \"errorPage\" => \"default\",\n            \"sectionPage\" => \"section\",\n            \"issuePage\" => \"issue\",\n            \"articlePage\" => \"article\"\n        );\n\n        if ((is_string($p_templateIdOrName) || is_int($p_templateIdOrName))\n        && !empty($p_templateIdOrName)) {\n            $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n            $cacheKey = $cacheService->getCacheKey(array('MetaTemplate', $p_templateIdOrName, $p_themePath), 'template');\n            if ($cacheService->contains($cacheKey)) {\n                $this->m_dbObject = $cacheService->fetch($cacheKey);\n            } else {\n                $filePath = is_numeric($p_templateIdOrName) ? $p_templateIdOrName : $p_themePath.$p_templateIdOrName;\n\n                $resourceId = new ResourceId('template_engine/metaclasses/MetaTemplate');\n                /* @var $syncResourceService ISyncResourceService */\n                $syncResourceService = $resourceId->getService(ISyncResourceService::NAME);\n\n                $this->m_dbObject = $syncResourceService->findByPathOrId($filePath);\n                $cacheService->save($cacheKey, $this->m_dbObject);\n            }\n\n            if (is_null($this->m_dbObject)) {\n                $pathRsc = new Resource();\n                $pathRsc->setName('buildPage');\n                $filePath = CS_PATH_TEMPLATES.DIR_SEP.$p_themePath.$p_templateIdOrName;\n                if (!is_numeric($p_templateIdOrName) && !is_null($p_themePath)\n                && file_exists($filePath)) {\n                    $pathRsc->setPath($p_themePath.$p_templateIdOrName);\n                    $this->m_dbObject = $syncResourceService->getSynchronized($pathRsc);\n                } else {\n                    $this->m_dbObject = $pathRsc;\n                }\n            }\n        }\n    }// fn __construct\n\n    /**\n     * Try to get it from the template id (templates table)\n     * @param int $tplId\n     * @author Mihai Balaceanu\n     */\n    protected function getByTemplateIdOrName($tplId)\n    {\n        $doctrine = Zend_Registry::get('container')->getService('doctrine');\n        if( is_numeric($tplId) ) {\n            $tpl = $doctrine->getEntityManager()->getRepository('Newscoop\\Entity\\Template')->find($tplId);\n        } else {\n            $tpl = $doctrine->getEntityManager()->getRepository('Newscoop\\Entity\\Template')->findOneBy(array('key' => $tplId));\n        }\n        /* @var $tpl \\Newscoop\\Entity\\Template */\n        $this->m_dbObject = $tpl;\n    }\n\n    protected function getTemplateType()\n    {\n        if (isset($this->_map[$this->m_dbObject->getName()])) {\n            return $this->_map[$this->m_dbObject->getName()];\n        }\n        return 'default';\n    }\n\n    protected function getValue()\n    {\n        if ($this->_name !== false) {\n            return $this->_name;\n        }\n        $parts = explode('/', $this->m_dbObject->getPath());\n        if (count($parts) < 3) {\n            $this->_name = null;\n            return null;\n        }\n        array_shift($parts);\n        array_shift($parts);\n        $this->_name = implode('/', $parts);\n        return $this->_name;\n    }\n\n    protected function getId()\n    {\n    \treturn $this->m_dbObject->getId();\n    }\n\n    public static function GetTypeName()\n    {\n        return 'template';\n    }\n\n\t// we need this theme info for securing the smarty caching\n\tprotected function getThemeDir()\n\t{\n\t\t$path = $this->getValue();\n\t\tif (empty($path)) {\n\t\t\treturn '';\n\t\t}\n\n\t\t$dir_arr = explode(DIR_SEP, $path);\n\t\tif (2 < count($dir_arr)) {\n\t\t\treturn  $dir_arr[0] . DIR_SEP . $dir_arr[1];\n\t\t}\n\n\t\treturn $path;\n\t}\n}\n// class MetaTemplate\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaTime.php",
    "content": "<?php\n/**\n * @package Campsite\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/classes/Exceptions.php');\n\n\n/**\n * @package Campsite\n */\nfinal class MetaTime\n{\n    private $m_value = null;\n\n    private $m_hour = null;\n\n    private $m_minute = null;\n\n    private $m_second = null;\n\n\tpublic function __construct($p_value)\n    {\n        $this->setValue($p_value);\n    } // fn __construct\n\n    public function setValue($p_value)\n    {\n        if (!MetaTime::IsValid($p_value)) {\n            throw new InvalidValueException($p_value, MetaTime::GetTypeName());\n        }\n        $this->m_value = trim($p_value);\n        $timeComponents = preg_split('/:/', $p_value);\n        $this->m_hour = $timeComponents[0];\n        $this->m_minute = $timeComponents[1];\n        $this->m_second = isset($timeComponents[2]) ? $timeComponents[2] : 0;\n    }\n\n    public function getValue()\n    {\n        return $this->m_value;\n    }\n\n    public function getHour()\n    {\n        return $this->m_hour;\n    }\n\n    public function getMinute()\n    {\n        return $this->m_minute;\n    }\n\n    public function getSecond()\n    {\n        return $this->m_second;\n    }\n\n    public static function IsValid($p_value)\n    {\n        $p_value = trim($p_value);\n        \n        // curtime() is an value which have to be computed\n        if (strtolower($p_value) == 'curtime()') {\n            return true;   \n        }\n        \n        if (preg_match('/^[\\d]{1,2}:[\\d]{1,2}(:[\\d]{1,2})?$/', $p_value) == 0) {\n            return false;\n        }\n\n        $timeComponents = preg_split('/:/', $p_value);\n        $hour = $timeComponents[0];\n        $minute = $timeComponents[1];\n        $second = isset($timeComponents[2]) ? $timeComponents[2] : 0;\n\n        if ($hour < 0 || $hour > 23 || $minute < 0 || $minute > 59\n                || $second < 0 || $second > 59) {\n            return false;\n        }\n\n        return true;\n    }\n\n    public static function GetTypeName()\n    {\n        return 'time';\n    }\n\n} // class MetaTime\n\n?>"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaTopic.php",
    "content": "<?php\n\n/**\n * @package Newscoop\n * @author Rafał Muszyński <rafal.muszynski@sourcefabric.org>\n * @copyright 2014 Sourcefabric z.ú.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nrequire_once __DIR__.'/MetaDbObject.php';\n\n/**\n * Meta topic class\n */\nclass MetaTopic extends MetaDbObject\n{\n    /**\n     * Topic\n     * @var Topic object\n     */\n    private $topic;\n\n    /**\n     * Topic id\n     * @var integer\n     */\n    public $identifier;\n\n    /**\n     * Topic name\n     * @var string\n     */\n    public $name;\n\n    /**\n     * Topic full name e.g. topic:en\n     * @var string\n     */\n    public $value;\n\n    /**\n     * Is topic root\n     * @var boolean\n     */\n    public $is_root;\n\n    /**\n     * Parent topic\n     * @var MetaTopic\n     */\n    public $parent;\n\n    /**\n     * Checks if topic is defined\n     * @var boolean\n     */\n    public $defined;\n\n    /**\n     * Alias to identifier\n     * @var integer\n     */\n    public $id;\n\n    /**\n     * Construct\n     *\n     * @param string $topicIdOrName\n     */\n    public function __construct($topicIdOrName = null, $languageCode = null)\n    {\n        if (!$topicIdOrName) {\n            return;\n        }\n\n        $cacheService = \\Zend_Registry::get('container')->getService('newscoop.cache');\n        $cacheKey = $cacheService->getCacheKey(array('MetaTopic', $topicIdOrName), 'topic');\n        if ($cacheService->contains($cacheKey)) {\n            $this->topic = $cacheService->fetch($cacheKey);\n        } else {\n            $em = \\Zend_Registry::get('container')->getService('em');\n            $topicService = \\Zend_Registry::get('container')->getService('newscoop_newscoop.topic_service');\n            $repository = $em->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic');\n            if ($languageCode) {\n                $locale = $languageCode;\n            } else {\n                $locale = $this->getLocale();\n            }\n\n            $topic = $repository->getTopicByIdOrName($topicIdOrName, $locale)->getArrayResult();\n            if (empty($topic)) {\n                $this->topic = $topicService->getTopicByFullNameAsArray($topicIdOrName);\n            } else {\n                $this->topic = $topic[0];\n            }\n\n            if (empty($this->topic)) {\n                return;\n            }\n\n            $this->topic['locale'] = $locale;\n\n            $cacheService->save($cacheKey, $this->topic);\n        }\n\n        $this->id = $this->topic['id'];\n        $this->identifier = $this->topic['id'];\n        $this->name = $this->getName();\n        $this->value = $this->getValue();\n        $this->is_root = $this->isRoot();\n        $this->parent = $this->getParent();\n        $this->defined = isset($this->topic);\n    }\n\n    protected function getName()\n    {\n        return $this->topic['title'];\n    }\n\n    protected function getLocale()\n    {\n        return \\CampTemplate::singleton()->context()->language->code;\n    }\n\n    protected function getValue()\n    {\n        if (!isset($this->topic) || empty($this->topic)) {\n            return;\n        }\n\n        $name = $this->topic['title'];\n        if (empty($name)) {\n            return;\n        }\n\n        return $name.':'.$this->topic['locale'];\n    }\n\n    protected function isRoot()\n    {\n        if (isset($this->topic['id']) && isset($this->topic['root'])) {\n            if ($this->topic['root'] == $this->topic['id']) {\n                return true;\n            }\n\n            return false;\n        }\n    }\n\n    protected function getParent()\n    {\n        if (isset($this->topic['id']) && isset($this->topic['parent'])) {\n            return new MetaTopic($this->topic['parent']['id'], $this->topic['locale']);\n        }\n\n        return;\n    }\n\n    public static function GetTypeName()\n    {\n        return 'topic';\n    }\n}\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaURL.php",
    "content": "<?php\n/**\n * @package Campsite\n *\n * @author Holman Romero <holman.romero@gmail.com>\n * @copyright 2007 MDLF, Inc.\n * @license http://www.gnu.org/licenses/gpl.txt\n * @version $Revision$\n * @link http://www.sourcefabric.org\n */\n\n/**\n * Includes\n */\nrequire_once($GLOBALS['g_campsiteDir'].'/classes/UrlType.php');\nrequire_once($GLOBALS['g_campsiteDir'].'/template_engine/classes/Exceptions.php');\n\n/**\n * Class MetaURL\n */\nfinal class MetaURL\n{\n\tprivate static $m_defaultCustomProperties = array(\n\t'uri'=>'getURI',\n    'uri_path'=>'getURIPath',\n    'url'=>'getURL',\n    'url_parameters'=>'getURLParameters',\n    'form_parameters'=>'getFormParameters',\n    'base'=>'getBase',\n    'base_relative'=>'getRelativeBase',\n    'path'=>'getPath',\n    'query'=>'getQuery',\n    'type'=>'getURLType',\n\t'request_uri'=>'getRequestURI'\n\t);\n\n    /**\n     * @var CampURI object\n     */\n    private $m_uriObj = null;\n\n    /**\n     * @var string\n     */\n    private $m_uri_parameter = null;\n\n    /**\n     * @var array\n     */\n    private $m_customProperties = null;\n\n\n    public function __construct()\n    {\n        $this->m_customProperties = self::$m_defaultCustomProperties;\n    \t$this->m_uriObj = CampSite::GetURIInstance();\n    } // fn __construct\n\n\n    /**\n     *\n     */\n    public function __get($p_property)\n    {\n    \t$p_property = strtolower($p_property);\n    \t$property = 'm_'.$p_property;\n    \tif (property_exists($this, $property)) {\n    \t\treturn $this->$property;\n    \t}\n    \tif (array_key_exists($p_property, $this->m_customProperties)\n    \t&& method_exists($this, $this->m_customProperties[$p_property])) {\n    \t\t$methodName = $this->m_customProperties[$p_property];\n    \t\t$value = $this->$methodName();\n    \t\t$this->m_uri_parameter = null;\n    \t\treturn $value;\n    \t}\n    \treturn $this->m_uriObj->$p_property;\n    } // fn __get\n\n\n    /**\n     * Returns the value of the given parameter\n     *\n     * @param string $p_parameterName\n     * @return string\n     */\n    final public function get_parameter($p_parameterName)\n    {\n        return $this->m_uriObj->getQueryVar($p_parameterName);\n    }\n\n\n    /**\n     * Sets the given parameter to the given value. Returns true if the parameter\n     * can be set (is not a restricted parameter name), false otherwise.\n     *\n     * @param string $p_parameterName\n     * @param string $p_parameterValue\n     * @return bool\n     */\n    final public function set_parameter($p_parameterName, $p_parameterValue)\n    {\n        $isRestricted = $this->m_uriObj->isRestrictedParameter($p_parameterName);\n        if ($isRestricted) {\n            return false;\n        }\n        $this->m_uriObj->setQueryVar($p_parameterName, $p_parameterValue);\n    }\n\n\n    /**\n     * Resets the given parameter (sets it's value to null). Returns true if the\n     * parameter can be set (is not a restricted parameter name), false otherwise.\n     *\n     * @param string $p_parameterName\n     * @return bool\n     */\n    final public function reset_parameter($p_parameterName)\n    {\n        return $this->set_parameter($p_parameterName, null);\n    }\n\n\n    /**\n    * Resets all query parameters. Returns true if the\n    * parameter can be set (is not a restricted parameter name), false otherwise.\n    *\n    * @param string $p_parameterName\n    * @return bool\n    */\n    final public function reset_parameters()\n    {\n        return $this->m_uriObj->setQuery(null);\n    }\n\n\n    /**\n     *\n     */\n    final public function __set($p_property, $p_value)\n    {\n        if (strtolower($p_property) == 'uri_parameter') {\n            $this->m_uri_parameter = $p_value;\n        } else {\n            $this->m_uriObj->$p_property = $p_value;\n            //            throw new InvalidFunctionException(get_class($this), '__set');\n        }\n    } // fn __set\n\n\n    /**\n     *\n     */\n    private function getFormParameters()\n    {\n        return $this->m_uriObj->getFormParameters();\n    } // fn getFormParameters\n\n\n    /**\n     *\n     */\n    private function getURI()\n    {\n        $string =  $this->m_uriObj->getURI($this->m_uri_parameter,\n        CampTemplate::singleton()->context()->preview);\n        return $string;\n    } // fn getURL\n\n\n    /**\n     *\n     */\n    private function getURIPath()\n    {\n        return $this->m_uriObj->getURIPath($this->m_uri_parameter,\n        CampTemplate::singleton()->context()->preview);\n    } // fn getURL\n\n\n    /**\n     *\n     */\n    private function getURLParameters()\n    {\n        return $this->m_uriObj->getURLParameters($this->m_uri_parameter,\n        CampTemplate::singleton()->context()->preview);\n    } // fn getURL\n\n\n    /**\n     *\n     */\n    private function getURL()\n    {\n        return $this->m_uriObj->getURL();\n    } // fn getURL\n\n\n    /**\n     *\n     */\n    private function getBase()\n    {\n        return $this->m_uriObj->getBase();\n    } // fn getBase\n\n\n    /**\n     *\n     */\n    private function getRelativeBase()\n    {\n        return $this->m_uriObj->getRelativeBase();\n    } // fn getBase\n\n\n    /**\n     *\n     */\n    private function getPath()\n    {\n        return $this->m_uriObj->getPath();\n    } // fn getPath\n\n\n    /**\n     *\n     */\n    private function getQuery()\n    {\n        return $this->m_uriObj->getQuery();\n    } // fn getQuery\n\n\n    /**\n     *\n     */\n    private function getURLType()\n    {\n        $urlTypeObj = new UrlType($this->m_uriObj->getURLType());\n        if (!is_object($urlTypeObj) || !$urlTypeObj->exists()) {\n            return null;\n        }\n\n        return $urlTypeObj->getId();\n    } // fn getURLType\n\n\n    /**\n     *\n     */\n    private function getRequestURI()\n    {\n        return $this->m_uriObj->getRequestURI();\n    } // fn getRequestURI\n\n\n    /**\n     *\n     */\n    final protected function trigger_invalid_property_error($p_property, $p_smarty = null)\n    {\n        $errorMessage = INVALID_PROPERTY_STRING . \" $p_property \"\n        . OF_OBJECT_STRING . ' url';\n        CampTemplate::singleton()->trigger_error($errorMessage, $p_smarty);\n    } // fn trigger_invalid_property_error\n\n} // class MetaURL\n\n?>\n"
  },
  {
    "path": "newscoop/template_engine/metaclasses/MetaUser.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @copyright 2011 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Newscoop\\Entity\\User;\n\nrequire_once __DIR__ . '/MetaDbObject.php';\nrequire_once __DIR__ . '/MetaSubscriptions.php';\n\n/**\n * Template user\n */\nfinal class MetaUser extends MetaDbObject implements ArrayAccess\n{\n\n    /**\n     * @param Newscoop\\Entity\\User $user\n     */\n    public function __construct(User $user = NULL)\n    {\n        if (is_null($user)) {\n            $user = new User;\n        }\n        $this->m_dbObject = $user;\n\n        $this->m_properties = array();\n\n        $this->m_customProperties['identifier'] = 'getId';\n        $this->m_customProperties['first_name'] = 'getFirstName';\n        $this->m_customProperties['last_name'] = 'getLastName';\n        $this->m_customProperties['uname'] = 'getUsername';\n        $this->m_customProperties['email'] = 'getEmail';\n        $this->m_customProperties['subscriber'] = 'getSubscriber';\n\n        $this->m_customProperties['name'] = 'getDisplayName';\n        $this->m_customProperties['created'] = 'getCreated';\n        $this->m_customProperties['country'] = 'getCountry';\n        $this->m_customProperties['subscriptions'] = 'getSubscriptions';\n        $this->m_customProperties['logged_in'] = 'isLoggedIn';\n        $this->m_customProperties['topics'] = 'getTopics';\n        $this->m_customProperties['is_blocked_from_comments'] = 'isBlockedFromComments';\n        $this->m_customProperties['is_admin'] = 'isAdmin';\n        $this->m_customProperties['defined'] = 'isDefined';\n        $this->m_customProperties['posts_count'] = 'getPostsCount';\n        $this->m_customProperties['is_author'] = 'isAuthor';\n        $this->m_customProperties['is_active'] = 'isActive';\n        $this->m_customProperties['is_blogger'] = 'isBlogger';\n        $this->m_customProperties['author'] = 'getAuthor';\n        $this->m_customProperties['image'] = 'image';\n\n        $this->m_skipFilter[] = \"name\";\n    }\n\n    protected function getFirstName()\n    {\n        return $this->m_dbObject->getFirstName();\n    }\n\n    protected function getLastName()\n    {\n        return $this->m_dbObject->getLastName();\n    }\n\n    protected function getUsername()\n    {\n        return $this->m_dbObject->getusername();\n    }\n\n    protected function getEmail()\n    {\n        return $this->m_dbObject->getEmail();\n    }\n\n    protected function getSubscriber()\n    {\n        return $this->m_dbObject->getSubscriber();\n    }\n\n    /**\n     * @return string\n     */\n    protected function getDisplayName()\n    {\n        $url = \\Zend_Registry::get('container')->get('zend_router')->assemble(array('username' => $this->m_dbObject->getUsername()), 'user');\n\n        $name = trim($this->m_dbObject->getFirstName() . ' ' . $this->m_dbObject->getLastName());\n\n        if ($this->m_dbObject->isPublic()) {\n            return \"<a href='{$url}'>{$name}</a>\";\n        } else {\n            return $name;\n        }\n    }\n\n    /**\n     * Get user id\n     * @author Mihai Balaceanu\n     * @return int\n     */\n    protected function getId()\n    {\n        return $this->m_dbObject->getId();\n    }\n\n    protected function isDefined()\n    {\n        return $this->m_dbObject->getId() > 0;\n    }\n\n    protected function getCreated()\n    {\n        $date = $this->m_dbObject->getCreated();\n\n        return $date->format('d.m.Y');\n    }\n\n    /**\n     * Get subscription\n     *\n     * @return MetaSubscription\n     */\n    protected function getSubscriptions()\n    {\n        $publicationId = CampTemplate::singleton()->context()->publication->identifier;\n\n        return new MetaSubscriptions($publicationId, $this->m_dbObject->getId());\n    }\n\n    /**\n     * Get the name of the country of the registered user\n     *\n     * @return string\n     */\n    protected function getCountry()\n    {\n        require_once dirname(__FILE__) . '/../../classes/Country.php';\n        require_once dirname(__FILE__) . '/../../classes/Language.php';\n\n        $countryCode = $this->m_dbObject->getAttribute('country_code');\n        $smartyObj = CampTemplate::singleton();\n        $contextObj = $smartyObj->getTemplateVars('gimme');\n        $country = new Country($countryCode, $contextObj->language->number);\n\n        return !$country->exists() ? '' : $country->getName();\n    }\n\n    /**\n     * Test if user has permission\n     *\n     * @param  string  $permission\n     * @return boolean\n     */\n    public function has_permission($permission)\n    {\n        return $this->m_dbObject->hasPermission($permission);\n    }\n\n    /**\n     * Test if user is admin\n     *\n     * @return bool\n     */\n    public function isAdmin()\n    {\n        return $this->m_dbObject->isAdmin() && !$this->isBlogger();\n    }\n\n    /**\n     * Test if user is blogger\n     *\n     * @return bool\n     */\n    public function isBlogger()\n    {\n        return (bool) \\Zend_Registry::get('container')->getService('blog')\n            ->isBlogger($this->m_dbObject);\n    }\n\n    /**\n     * Test if user is logged in\n     *\n     * @return bool\n     */\n    protected function isLoggedIn()\n    {\n        $auth = Zend_Auth::getInstance();\n\n        return $auth->hasIdentity() && $auth->getIdentity() == $this->m_dbObject->getId();\n    }\n\n    /**\n     * Test if user is blocked from commenting\n     *\n     * @return bool\n     */\n    protected function isBlockedFromComments()\n    {\n        $em = \\Zend_Registry::get('container')->getService('em');\n        $userService = \\Zend_Registry::get('container')->getService('user');\n        $userIp = $userService->getUserIp();\n        $publicationId = CampTemplate::singleton()->context()->publication->identifier;\n        $repositoryAcceptance = $em->getRepository('Newscoop\\Entity\\Comment\\Acceptance');\n\n        return (int) $repositoryAcceptance->checkParamsBanned($this->name, $this->email, $userIp, $publicationId);\n    }\n\n    /**\n     * Get image src\n     *\n     * @param  int    $width\n     * @param  int    $height\n     * @param  string $specs\n     * @param  string $imagePath\n     *\n     * @return string\n     */\n    public function image($width = 80, $height = 80, $specs = 'fit', $imagePath = null)\n    {\n        $zendRouter = \\Zend_Registry::get('container')->getService('zend_router');\n        $imageService = \\Zend_Registry::get('container')->getService('image');\n        $themesService = \\Zend_Registry::get('container')->getService('newscoop_newscoop.themes_service');\n        $themePath = 'themes/' . $themesService->getThemePath();\n\n        if (!$this->m_dbObject->getImage() && is_null($imagePath)) {\n            return '';\n        }\n\n        $src = null;\n        if ($this->m_dbObject->getImage()) {\n            $src = $imageService->getSrc('images/' . $this->m_dbObject->getImage(), $width, $height, $specs);\n        }\n\n        if ($imagePath && file_exists(APPLICATION_PATH . '/../' . $themePath . $imagePath)) {\n            $src = $imageService->getSrc($themePath . $imagePath, $width, $height, $specs);\n        }\n\n        return $zendRouter->assemble(array(\n            'src' => $src,\n        ), 'image', false, false);\n    }\n\n    /**\n     * Get topics\n     *\n     * @return array\n     */\n    protected function getTopics()\n    {\n        if (!$this->m_dbObject->getId()) {\n            return array();\n        }\n\n        $service = \\Zend_Registry::get('container')->getService('user.topic');\n        $locale = \\CampTemplate::singleton()->context()->language->code;\n        $topics = array();\n        foreach ($service->getTopics($this->m_dbObject, $locale) as $topic) {\n            $topics[$topic->getId()] = $topic->getName();\n        }\n\n        return $topics;\n    }\n\n    /**\n     * Get posts count\n     *\n     * @return int\n     */\n    protected function getPostsCount()\n    {\n        if (!$this->m_dbObject->getId()) {\n            return 0;\n        }\n\n        return $this->m_dbObject->getPoints();\n    }\n\n    /**\n     * @see ArrayAccess\n     * @todo\n     */\n    public function offsetExists($offset)\n    {\n        $offset = $this->m_dbObject->getAttribute($offset);\n\n        return isset($offset);\n    }\n\n    /**\n     * @see ArrayAccess\n     */\n    public function offsetGet($offset)\n    {\n        return $this->m_dbObject->getAttribute($offset);\n    }\n\n    /**\n     * @see ArrayAccess\n     * @todo\n     */\n    public function offsetSet($offset, $value)\n    {\n    }\n\n    /**\n     * @see ArrayAccess\n     * @todo\n     */\n    public function offsetUnset($offset)\n    {\n    }\n\n    /**\n     * Test if user is author\n     *\n     * @return bool\n     */\n    public function isAuthor()\n    {\n        if ($this->m_dbObject->getAuthorId()) {\n            return true;\n        }\n\n        return false;\n    }\n\n    /**\n     * Get user related author\n     *\n     * @return MetaAuthor\n     */\n    public function getAuthor()\n    {\n        try {\n            return new \\MetaAuthor($this->m_dbObject->getAuthorId());\n        } catch (\\Exception $e) {\n            return null;\n        }\n    }\n\n    /**\n     * Test if user is active\n     *\n     * @return bool\n     */\n    public function isActive()\n    {\n        return $this->m_dbObject->isActive();\n    }\n\n    /**\n     * Test if user is a given type\n     *\n     * @param string $type\n     *\n     * @return bool\n     */\n    public function is($name)\n    {\n        return $this->m_dbObject->hasGroup($name);\n    }\n\n    /**\n     * Gets user attribute\n     *\n     * @param string $attribute User attribute\n     *\n     * @return string\n     */\n    public function getAttribute($attribute)\n    {\n        return $this->m_dbObject->getAttribute($attribute);\n    }\n\n    /**\n     * Checks user attribute\n     *\n     * @param string $attribute User attribute\n     *\n     * @return bool\n     */\n    public function hasAttribute($attribute)\n    {\n        if ($this->m_dbObject->getAttribute($attribute)) {\n            return true;\n        }\n\n        return false;\n    }\n}\n"
  },
  {
    "path": "newscoop/themes/system_templates/_campsite_error.tpl",
    "content": "{{ dynamic }}\n<!DOCTYPE html\n    PUBLIC \"-//W3C//DTD HTML 4.01//EN\"\n    \"http://www.w3.org/TR/html4/strict.dtd\">\n<html>\n<head>\n  <title>{{ $siteinfo.title }}</title>\n  <meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\" />\n  <meta name=\"generator\" content=\"{{ $siteinfo.generator }}\" />\n  <meta name=\"description\" content=\"{{ $siteinfo.description }}\" />\n  <meta name=\"keywords\" content=\"{{ $siteinfo.keywords }}\" />\n\n  <link rel=\"stylesheet\" type=\"text/css\" href=\"/{{ $siteinfo.templates_path }}/css/_style_offline.css\" />\n</head>\n<body>\n<div id=\"offline\">\n  <div><img src=\"/{{ $siteinfo.templates_path }}/img/newscoop_logo_big.png\" />\n  <div>Error: {{ $siteinfo.error_message }}</div>\n</div>\n</body>\n</html>\n{{ /dynamic }}"
  },
  {
    "path": "newscoop/themes/system_templates/_campsite_message.tpl",
    "content": "{{ dynamic }}\n<!DOCTYPE html\n    PUBLIC \"-//W3C//DTD HTML 4.01//EN\"\n    \"http://www.w3.org/TR/html4/strict.dtd\">\n<html>\n<head>\n  <title>{{ $siteinfo.title }}</title>\n  <meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\" />\n  <meta name=\"generator\" content=\"{{ $siteinfo.generator }}\" />\n  <meta name=\"description\" content=\"{{ $siteinfo.description }}\" />\n  <meta name=\"keywords\" content=\"{{ $siteinfo.keywords }}\" />\n\n  <link rel=\"stylesheet\" type=\"text/css\" href=\"/{{ $siteinfo.templates_path }}/css/_style_offline.css\" />\n</head>\n<body>\n<div id=\"offline\">\n  <div><img src=\"/{{ $siteinfo.templates_path }}/img/newscoop_logo_big.png\" />\n  <div>{{ $siteinfo.info_message }}</div>\n</div>\n</body>\n</html>\n{{ /dynamic }}"
  },
  {
    "path": "newscoop/themes/system_templates/_campsite_offline.tpl",
    "content": "{{ dynamic }}\n<!DOCTYPE html\n    PUBLIC \"-//W3C//DTD HTML 4.01//EN\"\n    \"http://www.w3.org/TR/html4/strict.dtd\">\n<html>\n<head>\n  <title>{{ $siteinfo.title }}</title>\n  <meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\" />\n  <meta name=\"generator\" content=\"{{ $siteinfo.generator }}\" />\n  <meta name=\"description\" content=\"{{ $siteinfo.description }}\" />\n  <meta name=\"keywords\" content=\"{{ $siteinfo.keywords }}\" />\n\n  <link rel=\"stylesheet\" type=\"text/css\" href=\"/{{ $siteinfo.templates_path }}/css/_style_offline.css\" />\n</head>\n<body>\n<div id=\"offline\">\n  <div><img src=\"/{{ $siteinfo.templates_path }}/img/newscoop_logo_big.png\" />\n  <div>This site is offline, please come back later.<br />\n    Sorry for the inconvenience.</div>\n</div>\n</body>\n</html>\n{{ /dynamic }}"
  },
  {
    "path": "newscoop/themes/system_templates/_events_notifier.tpl",
    "content": "{{ $event_text }} on {{ $event_timestamp }}\nPerformed by: {{ $user_real_name }} ({{ $user_name }}) - email: {{ $user_email }}\n\nTo unsubscribe - go to site administration and update your profile settings.\n"
  },
  {
    "path": "newscoop/themes/system_templates/_feed/default.tpl",
    "content": "<rss version=\"2.0\" xmlns:atom=\"http://www.w3.org/2005/Atom\" xmlns:media=\"http://search.yahoo.com/mrss/\">\n  <channel>\n    <title>{{$gimme->publication->meta_title}}</title>\n    <link>https://{{$gimme->publication->site}}</link>\n    <description>{{$gimme->publication->meta_description}}</description>\n    <language>{{ $gimme->language->code }}</language>\n    <copyright>Copyright {{$smarty.now|date_format:\"%Y\"}}, {{$gimme->publication->name}}</copyright>\n    <lastBuildDate>{{$smarty.now|date_format:\"%a, %d %b %Y %H:%M:%S\"}} +0100</lastBuildDate>\n    <ttl>60</ttl>\n    <generator>Newscoop</generator>\n    <image>\n      <url>https:{{ url static_file=\"_img/logo.png\" }}</url>\n      <title>{{$gimme->publication->meta_title}}</title>\n      <link>http://{{$gimme->publication->site}}</link>\n    </image>\n    <atom:link href=\"http://{{ $gimme->publication->site }}{{ generate_url route=\"newscoop_feed\" }}\" rel=\"self\" type=\"application/rss+xml\" />\n    {{ list_articles length=\"30\" name=\"recent_articles\" ignore_section=\"true\" ignore_issue=\"true\" ignore_publication=\"true\" order=\"bypublishdate desc\"}}\n    <item>\n      <title>{{$gimme->article->name|html_entity_decode|regex_replace:'/&(.*?)quo;/':'&quot;'}}</title>\n      <link>https://{{ $gimme->publication->site }}/+{{ $gimme->article->webcode }}</link>\n      <description>\n        {{ list_article_images length=\"1\" }}\n          &lt;img src=\"//{{$gimme->publication->site}}/{{$gimme->article->image->getImageUrl(600, 400)}}\" border=\"0\" align=\"left\" hspace=\"5\" /&gt;\n        {{ /list_article_images }}\n        {{$gimme->article->deck|strip_tags:false|strip|escape:'html':'utf-8'}}\n        &lt;br clear=\"all\"&gt;\n      </description>\n      <category domain=\"{{ uri name=\"section\" }}\">{{$gimme->section->name}}</category>\n      <atom:author>\n        <atom:name>{{ $gimme->article->author->name }}</atom:name>\n      </atom:author>\n      <pubDate>{{$gimme->article->publish_date|date_format:\"%a, %d %b %Y %H:%M:%S\"}} +0100</pubDate>\n      <guid isPermaLink=\"true\">{{ uri name=\"article\" }}</guid>\n    </item>\n    {{/list_articles}}\n  </channel>\n</rss>\n"
  },
  {
    "path": "newscoop/themes/system_templates/_pagination/twitter_bootstrap_v2_pagination.tpl",
    "content": "{{ dynamic }}\n{{ math equation=\"ceil(totalCount / numItemsPerPage)\" assign=pageCountCeil numItemsPerPage=$data['numItemsPerPage'] totalCount=$data['totalCount'] }}\n{{ $pageCount =  $pageCountCeil|intval }}\n\n{{ $current = $data['current'] }}\n{{ math equation=\"abs(3)\" assign=pageRange }}\n{{ math equation=\"ceil(pageRange/2)\" assign=delta pageRange=$pageRange }}\n\n{{ if $pageCount < $current }}\n    {{ $current = $pageCount }}\n    {{ $currentPageNumber = $current }}\n{{ /if }}\n\n{{ if ($pageRange > $pageCount) }}\n    {{ $pageRange = $pageCount }}\n{{ /if }}\n\n{{ if ($current - $delta) > ($pageCount - $pageRange) }}\n    {{ $pages = range($pageCount - $pageRange + 1, $pageCount) }}\n{{ else }}\n    {{ if $current - $delta < 0 }}\n        {{ $delta = $current }}\n    {{ /if }}\n\n    {{ $offset = $current - $delta }}\n    {{ $pages = range($offset + 1, $offset + $pageRange) }}\n{{ /if }}\n\n{{ math equation=\"floor(pageRange/2)\" assign=proximity pageRange=$pageRange }}\n{{ $startPage = $current - $proximity }}\n\n{{ $endPage = ($current + $proximity) }}\n\n{{ if $startPage < 1 }}\n    {{ math equation=\"min(endPage + (1 - startPage), pageCount)\" startPage=$startPage endPage=$endPage pageCount=$pageCount assign=endPage }}\n    {{ $startPage = 1 }}\n{{ /if }}\n\n{{ if ($endPage > $pageCount) }}\n    {{ math equation=\"max(startPage - (endPage - pageCount), 1)\" startPage=$startPage endPage=$endPage pageCount=$pageCount assign=startPage }}\n    {{ $endPage = $pageCount }}\n{{ /if }}\n\n{{ if $pageCount > 1 }}\n    <div class=\"pagination\">\n        <ul>\n        {{ if ($current - 1) > 0 }}\n            <li>\n                <a href=\"{{ generate_url route=$data['route'] parameters=$data['route_params']|array_merge:[$data['pageParameterName'] => ($data['current'] - 1)] }}\">&laquo;&nbsp;{{ 'Previous'|translate:'messages' }}</a>\n            </li>\n        {{ else }}\n            <li class=\"disabled\">\n                <span>&laquo;&nbsp;{{ 'Previous'|translate:'messages' }}</span>\n            </li>\n        {{ /if }}\n\n        {{ if $startPage > 1 }}\n            <li>\n                <a href=\"{{ generate_url route=$data['route'] parameters=$data['route_params']|array_merge:[$data['pageParameterName'] => 1] }}\">1</a>\n            </li>\n            {{ if $startPage == 3 }}\n                <li>\n                    <a href=\"{{ generate_url route=$data['route'] parameters=$data['route_params']|array_merge:[$data['pageParameterName'] => 2] }}\">2</a>\n                </li>\n            {{ elseif $startPage != 2 }}\n            <li class=\"disabled\">\n                <span>&hellip;</span>\n            </li>\n            {{ /if }}\n        {{ /if }}\n\n        {{ foreach from=$pages item=page }}\n            {{ if $page != $current }}\n                <li>\n                    <a href=\"{{ generate_url route=$data['route'] parameters=$data['route_params']|array_merge:[$data['pageParameterName'] => $page] }}\">{{ $page }}</a>\n                </li>\n            {{ else }}\n                <li class=\"active\">\n                    <span>{{ $page }}</span>\n                </li>\n            {{ /if }}\n        {{ /foreach }}\n\n        {{ if $pageCount > $endPage }}\n            {{ if $pageCount > ($endPage + 1) }}\n                {{ if $pageCount > ($endPage + 2) }}\n                    <li class=\"disabled\">\n                        <span>&hellip;</span>\n                    </li>\n                {{ else }}\n                    <li>\n                        <a href=\"{{ generate_url route=$data['route'] parameters=$data['route_params']|array_merge:[$data['pageParameterName'] => ($pageCount -1)] }}\">{{ $pageCount -1 }}</a>\n                    </li>\n                {{ /if }}\n            {{ /if }}\n            <li>\n                <a href=\"{{ generate_url route=$data['route'] parameters=$data['route_params']|array_merge:[$data['pageParameterName'] =>$pageCount] }}\">{{ $pageCount }}</a>\n            </li>\n        {{ /if }}\n\n        {{ if ($current +1) <= $pageCount }}\n            <li>\n                <a href=\"{{ generate_url route=$data['route'] parameters=$data['route_params']|array_merge:[$data['pageParameterName'] => $current +1] }}\">{{ 'Next'|translate:'messages' }}&nbsp;&raquo;</a>\n            </li>\n        {{ else }}\n            <li class=\"disabled\">\n                <span>{{ 'Next'|translate:'messages' }}&nbsp;&raquo;</span>\n            </li>\n        {{ /if }}\n        </ul>\n    </div>\n{{ /if }}\n{{ /dynamic }}"
  },
  {
    "path": "newscoop/themes/system_templates/_pagination/twitter_bootstrap_v3_pagination.tpl",
    "content": "{{ dynamic }}\n{{ math equation=\"ceil(totalCount / numItemsPerPage)\" assign=pageCountCeil numItemsPerPage=$data['numItemsPerPage'] totalCount=$data['totalCount'] }}\n{{ $pageCount =  $pageCountCeil|intval }}\n\n{{ $current = $data['current'] }}\n{{ math equation=\"abs(3)\" assign=pageRange }}\n{{ math equation=\"ceil(pageRange/2)\" assign=delta pageRange=$pageRange }}\n\n{{ if $pageCount < $current }}\n    {{ $current = $pageCount }}\n    {{ $currentPageNumber = $current }}\n{{ /if }}\n\n{{ if ($pageRange > $pageCount) }}\n    {{ $pageRange = $pageCount }}\n{{ /if }}\n\n{{ if ($current - $delta) > ($pageCount - $pageRange) }}\n    {{ $pages = range($pageCount - $pageRange + 1, $pageCount) }}\n{{ else }}\n    {{ if $current - $delta < 0 }}\n        {{ $delta = $current }}\n    {{ /if }}\n\n    {{ $offset = $current - $delta }}\n    {{ $pages = range($offset + 1, $offset + $pageRange) }}\n{{ /if }}\n\n{{ math equation=\"floor(pageRange/2)\" assign=proximity pageRange=$pageRange }}\n{{ $startPage = $current - $proximity }}\n\n{{ $endPage = ($current + $proximity) }}\n\n{{ if $startPage < 1 }}\n    {{ math equation=\"min(endPage + (1 - startPage), pageCount)\" startPage=$startPage endPage=$endPage pageCount=$pageCount assign=endPage }}\n    {{ $startPage = 1 }}\n{{ /if }}\n\n{{ if ($endPage > $pageCount) }}\n    {{ math equation=\"max(startPage - (endPage - pageCount), 1)\" startPage=$startPage endPage=$endPage pageCount=$pageCount assign=startPage }}\n    {{ $endPage = $pageCount }}\n{{ /if }}\n\n{{ if $pageCount > 1 }}\n<ul class=\"pagination\">\n{{ if ($current - 1) > 0 }}\n    <li>\n        <a href=\"{{ generate_url route=$data['route'] parameters=$data['route_params']|array_merge:[$data['pageParameterName'] => ($data['current'] - 1)] }}\">&laquo;&nbsp;{{ 'Previous'|translate:'messages' }}</a>\n    </li>\n{{ else }}\n    <li class=\"disabled\">\n        <span>&laquo;&nbsp;{{ 'Previous'|translate:'messages' }}</span>\n    </li>\n{{ /if }}\n\n{{ if $startPage > 1 }}\n    <li>\n        <a href=\"{{ generate_url route=$data['route'] parameters=$data['route_params']|array_merge:[$data['pageParameterName'] => 1] }}\">1</a>\n    </li>\n    {{ if $startPage == 3 }}\n        <li>\n            <a href=\"{{ generate_url route=$data['route'] parameters=$data['route_params']|array_merge:[$data['pageParameterName'] => 2] }}\">2</a>\n        </li>\n    {{ elseif $startPage != 2 }}\n    <li class=\"disabled\">\n        <span>&hellip;</span>\n    </li>\n    {{ /if }}\n{{ /if }}\n\n{{ foreach from=$pages item=page }}\n    {{ if $page != $current }}\n        <li>\n            <a href=\"{{ generate_url route=$data['route'] parameters=$data['route_params']|array_merge:[$data['pageParameterName'] => $page] }}\">{{ $page }}</a>\n        </li>\n    {{ else }}\n        <li class=\"active\">\n            <span>{{ $page }}</span>\n        </li>\n    {{ /if }}\n{{ /foreach }}\n\n{{ if $pageCount > $endPage }}\n    {{ if $pageCount > ($endPage + 1) }}\n        {{ if $pageCount > ($endPage + 2) }}\n            <li class=\"disabled\">\n                <span>&hellip;</span>\n            </li>\n        {{ else }}\n            <li>\n                <a href=\"{{ generate_url route=$data['route'] parameters=$data['route_params']|array_merge:[$data['pageParameterName'] => ($pageCount -1)] }}\">{{ $pageCount -1 }}</a>\n            </li>\n        {{ /if }}\n    {{ /if }}\n    <li>\n        <a href=\"{{ generate_url route=$data['route'] parameters=$data['route_params']|array_merge:[$data['pageParameterName'] =>$pageCount] }}\">{{ $pageCount }}</a>\n    </li>\n{{ /if }}\n\n{{ if ($current +1) <= $pageCount }}\n    <li>\n        <a href=\"{{ generate_url route=$data['route'] parameters=$data['route_params']|array_merge:[$data['pageParameterName'] => $current +1] }}\">{{ 'Next'|translate:'messages' }}&nbsp;&raquo;</a>\n    </li>\n{{ else }}\n    <li class=\"disabled\">\n        <span>{{ 'Next'|translate:'messages' }}&nbsp;&raquo;</span>\n    </li>\n{{ /if }}\n</ul>\n{{ /if }}\n{{ /dynamic }}"
  },
  {
    "path": "newscoop/themes/system_templates/_subscription_notifier.tpl",
    "content": "{{ dynamic }}\nDear {{ $user_title }} {{ $user_name }},\\n\\n\nThis is an automatically generated mail message.\\n\\n\nYour {{ $subs_type }} subscription (started on {{ $subs_date  }}) to publication \"{{ $publication_name }}\" {{ if $subs_expire }}will expire on {{ $subs_expire_date }} (in {{ $subs_remained_days }} days).{{ else }}{{ if $subs_expire_plan }} will expire as follows:{{ /if }}\\n\n{{ $expire_plan }} on {{ $subs_expire_date }} (remained {{ $subs_remained_days }}) - started on {{ $subs_start_date }}{{ /if }}\\n\\n\nPlease enter the site http://{{ $site }} to update subscription.\\n\n{{ /dynamic }}"
  },
  {
    "path": "newscoop/themes/system_templates/css/_style_offline.css",
    "content": "/*** Core html setup stuff ***/\n\nbody {\n    font-family: sans-serif, arial, verdana;\n    background: #ffffff;\n    margin: 30px;\n    padding: 30px;\n}\n\ndiv#offline {\n    margin: 0;\n    padding: 20px;\n    font-size: 120%;\n    color: #cc0000;\n    text-align: center;\n    border: 1px solid #afafaf;\n}"
  },
  {
    "path": "newscoop/themes/system_templates/css/main.css",
    "content": "        body {\n            padding-top: 40px;\n            padding-bottom: 40px;\n            background-color: #fff;\n        }\n        .fullscreen_bg {\n            position: fixed;\n            top: 0;\n            right: 0;\n            bottom: 0;\n            left: 0;\n            background-size: cover;\n            background-position: 50% 50%;\n        }\n        .form-signin {\n            max-width: 420px;\n            padding: 35px;\n            margin: 20px auto;\n            background:#f2f2f2;\n            text-align:center;\n            overflow:hidden;\n        }\n        .form-signin .form-signin-heading, .form-signin {\n            margin-bottom: 10px;\n        }\n        .form-signin .form-control {\n            position: relative;\n            font-size: 16px;\n            height: auto;\n            padding: 10px;\n            -webkit-box-sizing: border-box;\n            -moz-box-sizing: border-box;\n            box-sizing: border-box;\n        }\n        .form-signin .form-control:focus {\n            z-index: 2;\n        }\n        .form-signin input[type=\"text\"] {\n            margin-bottom: 20px;\n            border-top-style: solid;\n            border-right-style: solid;\n            border-bottom-style: solid;\n            border-left-style: solid;\n            border-color: #aaa;\n        }\n        .form-signin input[type=\"password\"] {\n            margin-bottom: 10px;\n            border-top-style: solid;\n            border-right-style: solid;\n            border-bottom-style: solid;\n            border-left-style: solid;\n            border-color: #aaa;\n        }\n        .form-signin-heading {\n            color: #444;\n            text-align: center;\n            font-size:18px;\n            font-weight: normal;\n        }\n        .form-signin img { max-width: 200px; margin-bottom: 20px; margin-left: 10px; margin-top: 20px; }\n        .login_error {\n            padding: 10px;\n        }\n        .forgot-password {margin-bottom: 10px; margin-top: 10px; text-align: left;}\n        .pull-left, .pull-right {width:49%;}\n"
  },
  {
    "path": "newscoop/themes/system_templates/editor_image.tpl",
    "content": "{{ dynamic }}\n{{ if isset($imageDetails['align'] ) && $imageDetails['align'] }} <div align=\"center\"> {{ /if }}\n\t<div class=\"cs_img {{ if isset($imageDetails['align'] ) && $imageDetails['align'] }}cs_fl_{{ $imageDetails['align'] }}{{ /if }}\" {{ if isset($imageDetails['percentage'] ) && $imageDetails['percentage'] }}style=\"width:{{ $imageDetails['percentage'] }};\"{{ /if }} {{ if isset($imageDetails['percentage'] ) && !$imageDetails['percentage'] && $imageDetails['width']}}style=\"width:{{ $imageDetails['width'] }}px;\"{{ /if }}>\n\t\t{{ if strlen($imgZoomLink) > 0 }} <p><a href=\"{{ $imgZoomLink }}\" class=\"photoViewer\" title=\"{{ $imageDetails['sub'] }}\"> {{ else }}<p> {{ /if }}\n\t\t\t<img src=\"{{ $uri->uri }}\" {{ if isset($imageDetails['alt']) }}alt=\"{{ $imageDetails['alt'] }}\"{{ /if }} {{ if isset($imageDetails['sub']) }}title=\"{{ $imageDetails['sub'] }}\" {{ /if }} border=\"0\"/>\n\t\t{{ if strlen($imgZoomLink) > 0 }} </a></p> {{ else }}</p> {{ /if }}\n\t\t{{ if isset($imageDetails['sub']) }}\n            {{ if $MediaRichTextCaptions == 'Y' }}\n                <div class=\"cs_img_caption\">{{$imageDetails['sub']}}</div>\n            {{ else }}\n                <p class=\"cs_img_caption\">{{$imageDetails['sub']}}</p>\n            {{ /if }}\n        {{ /if }}\n\t</div>\n{{ if isset($imageDetails['align'] ) && $imageDetails['align'] }}</div>{{ /if }}\n{{ /dynamic }}\n"
  },
  {
    "path": "newscoop/themes/system_templates/oauth_authorize.tpl",
    "content": "{{ dynamic }}\n<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"utf-8\">\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n    <meta name=\"description\" content=\"\">\n    <meta name=\"author\" content=\"\">\n\n    <title></title>\n\n    <!-- Bootstrap core CSS -->\n    <link href=\"/themes/system_templates/css/bootstrap.min.css\" rel=\"stylesheet\">\n    <link href=\"/themes/system_templates/css/main.css\" rel=\"stylesheet\">\n    <style type=\"text/css\" media=\"screen\">\n        body {\n            padding-top: 40px;\n            padding-bottom: 40px;\n            background-color: #eee;\n        }\n        #container {\n            max-width: 320px;\n            padding: 15px;\n            margin: 0 auto;\n        }\n    </style>\n  </head>\n\n  <body>\n    <div id=\"container\">\n        <form class=\"form-signin\" action=\"{{ generate_url route=\"fos_oauth_server_authorize\" parameters=[\n            \"client_id\" => {{ get_request_param name=\"client_id\" default=\"\" }},\n            \"response_type\" => {{ get_request_param name=\"response_type\" default=\"\" }},\n            \"redirect_uri\" => {{ get_request_param name=\"redirect_uri\" default=\"\" }},\n            \"state\" => {{ get_request_param name=\"state\" default=\"\" }},\n            \"scope\" => {{ get_request_param name=\"scope\" default=\"\" }}\n        ] absolute=true}}\" method=\"post\">\n            <img src=\"/themes/system_templates/img/newscoop_logo_big.png\" />\n            <h1 class=\"form-signin-heading text-muted\" style=\"text-align: center; margin-bottom: 20px;\">Grant access to: <br />\"{{ $client->getName() }}\"</h1>\n            <p>Allow to access instance rest api resources like: read/write/delete articles, images, comments and more...</p>\n            <input type=\"hidden\" name=\"newscoop_gimme_oauth_authorize[allowAccess]\" value=\"true\" />\n            <button class=\"btn pull-left btn-danger\">\n                Cancel\n            </button>\n            <button class=\"btn pull-right btn-primary\" type=\"submit\">\n                Allow Access\n            </button>\n        </form>\n    </div>\n\n    <!-- Placed at the end of the document so the pages load faster -->\n    <script src=\"https://code.jquery.com/jquery-1.10.2.min.js\"></script>\n    <script src=\"/themes/system_templates/js/bootstrap.min.js\"></script>\n  </body>\n</html>\n{{ /dynamic }}"
  },
  {
    "path": "newscoop/themes/system_templates/oauth_login.tpl",
    "content": "{{ dynamic }}\n<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"utf-8\">\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n    <meta name=\"description\" content=\"\">\n    <meta name=\"author\" content=\"\">\n\n    <title></title>\n\n    <!-- Bootstrap core CSS -->\n    <link href=\"/themes/system_templates/css/bootstrap.min.css\" rel=\"stylesheet\">\n    <link href=\"/themes/system_templates/css/main.css\" rel=\"stylesheet\">\n    <style type=\"text/css\" media=\"screen\">\n        body {\n            padding-top: 0px;\n            padding-bottom: 0px;\n            background-color: transparent;\n        }\n        .fullscreen_bg {\n            position: fixed;\n            top: 0;\n            right: 0;\n            bottom: 0;\n            left: 0;\n            background-size: cover;\n            background-position: 50% 50%;\n        }\n        .form-signin {\n            max-width: 100%;\n            padding: 15px;\n            margin: 0 auto;\n        }\n        .form-signin .form-signin-heading, .form-signin {\n            margin-bottom: 10px;\n        }\n        .form-signin .form-control {\n            position: relative;\n            font-size: 16px;\n            height: auto;\n            padding: 10px;\n            -webkit-box-sizing: border-box;\n            -moz-box-sizing: border-box;\n            box-sizing: border-box;\n        }\n        .form-signin .form-control:focus {\n            z-index: 2;\n        }\n        .form-signin-heading {\n            text-align: center;\n        }\n\n        .login_error {\n            padding: 10px;\n        }\n        .forgot-password {margin-bottom: 10px;}\n    </style>\n\n  </head>\n\n  <body>\n    <div id=\"container\">\n        <form class=\"form-signin\" action=\"{{ generate_url route=\"oauth_login_check\" }}\" method=\"post\">\n            <img src=\"/themes/system_templates/img/newscoop_logo_big.png\" />\n            <h1 class=\"form-signin-heading text-muted\">Sign In to {{ $gimme->publication->name }}</h1>\n\n            <div class=\"login_error\" style=\"color: #ff2200;\">\n            {{ if $error }}\n                {{ $error }}\n            {{ /if }}\n            </div>\n\n            <input type=\"text\" class=\"form-control\" placeholder=\"Login\" value=\"{{ $lastUsername }}\" name=\"_username\" required=\"\" autofocus=\"\">\n            <input type=\"password\" class=\"form-control\" placeholder=\"Password\" name=\"_password\" required=\"\">\n            <input type=\"hidden\" name=\"_target_path\" value=\"{{ $targetPath }}\" />\n            <a class=\"forgot-password pull-left\" href=\"{{ $view->url(['controller' => 'auth', 'action' => 'password-restore']) }}\">Forgot password?</a>\n            <button class=\"btn btn-lg btn-primary btn-block\" type=\"submit\">\n                Sign In\n            </button>\n        </form>\n    </div>\n\n    <!-- Placed at the end of the document so the pages load faster -->\n    <script src=\"https://code.jquery.com/jquery-1.10.2.min.js\"></script>\n    <script src=\"/themes/system_templates/js/bootstrap.min.js\"></script>\n  </body>\n</html>\n{{ /dynamic }}"
  },
  {
    "path": "newscoop/themes/system_templates/oauth_result.tpl",
    "content": "{{ dynamic }}\n<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"utf-8\">\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n    <title>Newscoop OAuth Authentication Result</title>\n\n    <!-- Bootstrap core CSS -->\n    <link href=\"/themes/system_templates/css/bootstrap.min.css\" rel=\"stylesheet\">\n    <link href=\"/themes/system_templates/css/main.css\" rel=\"stylesheet\">\n    <style type=\"text/css\" media=\"screen\">\n        body {\n            padding-top: 40px;\n            padding-bottom: 40px;\n            background-color: #eee;\n        }\n        #container {\n            max-width: 320px;\n            padding: 15px;\n            margin: 0 auto;\n            margin-top: 60px;\n        }\n    </style>\n  </head>\n\n  <body>\n    <div id=\"container\">\n        <center>\n        <img src=\"/themes/system_templates/img/newscoop_logo_big.png\" />\n        <h1 class=\"form-signin-heading text-muted\"><b>Authentication finished.</b></h1>\n        <p>Check result in this page url (with javascript) and continue with returned data</p>\n        </center>\n    </div>\n    <script type=\"text/javascript\">\n        var tokenRegex = new RegExp('access_token=(\\\\w+)'),\n            matches = tokenRegex.exec(window.location.hash),\n            token;\n\n        token = matches[1];\n        console.log('Your access_token is: ' + token);\n        if (token) {\n            console.log('Saving access_token in sessionStorage');\n            sessionStorage.setItem('newscoop.token', token);\n        }\n    </script>\n  </body>\n</html>\n{{ /dynamic }}"
  },
  {
    "path": "newscoop/upgrade.php",
    "content": "<?php\n/**\n * @package Newscoop\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2013 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\nif (!file_exists(__DIR__.'/vendor') && !file_exists(__DIR__.'/vendor/autoload.php')) {\n    echo \"Welcome in Newscoop Upgrade.<br/><br/>\";\n    echo \"Looks like you forget about our vendors. Please install all dependencies with Composer.\";\n    echo \"<pre>curl -s https://getcomposer.org/installer | php <br/>php composer.phar install --no-dev</pre>\";\n    echo \"After that please refresh that page. Thanks!\";\n    die;\n}\n\nif (!file_exists(__DIR__.'/conf/database_conf.php')) {\n    echo \"Welcome in Newscoop Upgrade.<br/><br/>\";\n    echo \"Looks like you want upgrade not installed yet Newscoop instance.<br/>\";\n    echo \"Please install Newscoop first and upgrade it with next release!<br/>\";\n    die;\n}\n\nif (!is_writable(__DIR__.'/log')) {\n    echo \"Welcome in Newscoop Upgrade.<br/><br/>\";\n    echo \"Looks like your log directory isn't writable - please fix it.<br/><br/>\";\n    echo \"In linux systems it can be done with <pre>sudo chmod -R 777 \".__DIR__.\"/log</pre>\";\n    echo \"After that please refresh that page. Thanks!\";\n    die;\n}\n\nrequire_once __DIR__.'/vendor/autoload.php';\nrequire_once __DIR__.'/conf/database_conf.php';\n\nuse Newscoop\\Installer\\Services;\nuse Monolog\\Logger;\n\n$app = new Silex\\Application();\n$app->register(new Silex\\Provider\\MonologServiceProvider(), array(\n    'monolog.logfile' => __DIR__.'/log/upgrade.log',\n    'monolog.level' => Logger::NOTICE,\n    'monolog.name' => 'upgrade',\n));\n\n$app->register(new Silex\\Provider\\TwigServiceProvider(), array(\n    'twig.path' => __DIR__.'/install/Resources/views',\n));\n$app->register(new Silex\\Provider\\TranslationServiceProvider(), array(\n    'locale_fallbacks' => array('en'),\n));\n\n$app->register(new Silex\\Provider\\DoctrineServiceProvider(), array(\n    'db.options' => array(\n        'driver'    => 'pdo_mysql',\n        'host'      => $Campsite['db']['host'],\n        'dbname'    => $Campsite['db']['name'],\n        'user'      => $Campsite['db']['user'],\n        'password'  => $Campsite['db']['pass'],\n        'port'      => $Campsite['db']['port'],\n        'charset'   => 'utf8',\n    ),\n));\n\nif (defined('APPLICATION_ENV') && (APPLICATION_ENV === 'development' || APPLICATION_ENV === 'dev')) {\n    $app['debug'] = true;\n}\n\n$app['upgrade_service'] = $app->share(function () use ($app) {\n    return new Services\\UpgradeService($app['db'], $app['monolog']);\n});\n\n$app->get('/', function (Silex\\Application $app) {\n    $oldVersions = $app['upgrade_service']->getDBVersion();\n    $response = $app['upgrade_service']->upgradeDatabase($oldVersions);\n    $newVersions = $app['upgrade_service']->getDBVersion();\n\n    if (php_sapi_name() == \"cli\") {\n        if (is_array($response)) {\n            foreach ($response as $key => $error) {\n                echo \"Error with query: \".$error.\"\\n\";\n            }\n\n            echo \"Upgrade process ended up with some errors. \\n\";\n\n            return false;\n        }\n\n        echo \"Your Newscoop instance is upgraded from \".$oldVersions['dbInfo'].\" to \".$newVersions['dbInfo'].\" without errors. \\n\";\n\n        return false;\n    }\n\n    if (is_array($response)) {\n        return $app['twig']->render('upgrade/errors.twig', array(\n            'errors' => $response,\n            'oldVersions' => $oldVersions,\n            'newVersions' => $newVersions,\n        ));\n    }\n\n    return $app['twig']->render('upgrade/success.twig', array(\n        'newVersions' => $newVersions,\n        'oldVersions' => $oldVersions,\n    ));\n\n});\n\n$app->run();\n"
  },
  {
    "path": "old_features/0_endpoints.feature.unfinished",
    "content": "Feature: Endpoints\n  I need to be able list all gimme endpoints\n\n  Scenario: Get all gimme endpoints\n    When I send a GET request to \"/\"\n    Then the response code should be 200"
  },
  {
    "path": "old_features/10_images.feature",
    "content": "Feature: Images\n  I need to be able list and get images\n\n  Scenario: Get single image from gimme\n    When I send a GET request to \"/images\"\n    Then the response code should be 200\n    And response should have \"items\" with elements\n    And response should have item with keys \"id, basename\"\n\n  Scenario: Get single slideshow from gimme\n    When I send a GET request to \"/images/8\"\n    Then the response code should be 200\n    And response should have keys \"id, location, basename, thumbnailPath, url, description, width, height, photographer, photographerUrl, place\"\n\n  Scenario: I want to create, update and delete image\n    Given that i want to create \"image\" with name \"image\" and content \"picture.jpg\" with type \"file\"\n    Given that i want to create \"image\" with name \"description\" and content \"Test Image\" with type \"text\"\n    Given that i want to create \"image\" with name \"photographer\" and content \"John Doe\" with type \"text\"\n    Given that i want to create \"image\" with name \"photographer_url\" and content \"newscoop.dev\" with type \"text\"\n    Given that i want to create \"image\" with name \"place\" and content \"Prague\" with type \"text\"\n    When I send a \"POST\" request to \"/images\" with custom form data\n    Then the response code should be 201\n    And response should have header \"X-Location\"\n\n    Given that i want to create \"image\" with name \"image\" and content \"picture.jpg\" with type \"file\"\n    Given that i want to create \"image\" with name \"description\" and content \"Test Image updated\" with type \"text\"\n    Given that i want to create \"image\" with name \"photographer\" and content \"John Doe updated\" with type \"text\"\n    Given that i want to create \"image\" with name \"photographer_url\" and content \"newscoop.dev updated\" with type \"text\"\n    Given that i want to create \"image\" with name \"place\" and content \"Prague updated\" with type \"text\"\n    When I send a \"POST\" request to \"last resource\" with custom form data\n    Then the response code should be 200\n    And response should have header \"X-Location\"\n\n    When I send a \"GET\" request to last resource\n    Then the response code should be 200\n    And response should have keys \"id, location, basename, thumbnailPath, url, description, width, height, photographer, photographerUrl, place\"\n    Then response should have key \"description\" with value \"Test Image updated\"\n    Then response should have key \"photographer\" with value \"John Doe updated\"\n    Then response should have key \"photographerUrl\" with value \"newscoop.dev updated\"\n    Then response should have key \"place\" with value \"Prague updated\"\n\n    When I send a \"DELETE\" request to last resource\n    Then the response code should be 204"
  },
  {
    "path": "old_features/11_attachments.feature",
    "content": "Feature: Attachemnts\n  Scenario: I want to create, update and delete attachment\n    Given that i want to create \"attachment\" with name \"attachment\" and content \"picture.jpg\" with type \"file\"\n    Given that i want to create \"attachment\" with name \"description\" and content \"Test attachment description\" with type \"text\"\n    Given that i want to create \"attachment\" with name \"name\" and content \"Test attachment name\" with type \"text\"\n    Given that i want to create \"attachment\" with name \"language\" and content \"1\" with type \"text\"\n    When I send a \"POST\" request to \"/attachments\" with custom form data\n    Then the response code should be 201\n    And response should have header \"X-Location\"\n\n    When I send a \"GET\" request to \"last resource\" with custom form data\n    Then the response code should be 200\n    And response should have keys \"id, name, extension, mimeType, contentDisposition, sizeInBytes, description, updated, created, source, status\"\n    Then response should have key \"description\" with value \"Test attachment description\"\n    Then response should have key \"name\" with value \"Test attachment name\"\n\n    Given that i want to create \"attachment\" with name \"attachment\" and content \"picture.jpg\" with type \"file\"\n    Given that i want to create \"attachment\" with name \"description\" and content \"Test attachment updated\" with type \"text\"\n    Given that i want to create \"attachment\" with name \"name\" and content \"Test attachment name updated\" with type \"text\"\n    Given that i want to create \"attachment\" with name \"language\" and content \"1\" with type \"text\"\n    When I send a \"POST\" request to \"last resource\" with custom form data\n    Then the response code should be 200\n    And response should have header \"X-Location\"\n\n    When I send a \"GET\" request to last resource\n    Then the response code should be 200\n    And response should have keys \"id, name, extension, mimeType, contentDisposition, sizeInBytes, description, updated, created, source, status\"\n    Then response should have key \"description\" with value \"Test attachment updated\"\n    Then response should have key \"name\" with value \"Test attachment name updated\"\n\n    When I send a \"DELETE\" request to last resource\n    Then the response code should be 204"
  },
  {
    "path": "old_features/12_snippet.feature",
    "content": "Feature: Snippet\n    I need to be able list and get snippets\n\n    Scenario: Create a new Snippet Template on the Gimme\n        Given that i want to create \"snippetTemplate\" with name \"name\" and content \"Youtube\" with type \"text\"\n        Given that i want to create \"snippetTemplate\" with name \"code\" and content \"<iframe width='{{ width }}' height='{{ height }}' src='//www.youtube.com/embed/{{ ID }}' frameborder='0' allowfullscreen></iframe>\" with type \"text\"\n        When I send a \"POST\" request to \"/snippetTemplates\" with custom form data\n        Then the response code should be 201\n        And response should have header \"X-Location\"\n\n    Scenario: Get snippets from gimme\n        When I send a GET request to \"/snippets\"\n        Then the response code should be 200\n        And response should have \"items\" with elements\n\n    Scenario: Get single snippet from gimme\n        When I send a GET request to \"/snippets/1\"\n        Then the response code should be 200\n        And response should have keys \"templateId, id, template, name, enabled, created, modified\"\n        And response should have \"fields\" with elements\n        And response should have keys \"ID, width, height\" under \"fields\"\n\n    Scenario: Get snippets attached to Article from gimme\n        When I send a GET request to \"/articles/64/en/snippets\"\n        Then the response code should be 200\n        And response should have \"items\" with elements\n"
  },
  {
    "path": "old_features/1_article.feature",
    "content": "Feature: Article\n  I need to be able list and get articles\n\n  Scenario: Get articles from gimme\n    When I send a GET request to \"/articles\"\n    Then the response code should be 200\n    And response should have \"items\" with elements\n\n  Scenario: Get single article from gimme\n    When I send a GET request to \"/articles/65\"\n    Then the response code should be 200\n    And response should have keys \"number, title, updated, published, language, comments, webcode, type\"\n    And response should have \"fields\" with elements\n    And response should have \"authors\" with elements"
  },
  {
    "path": "old_features/2_author.feature",
    "content": "Feature: Author\n  I need to be able list all gimme endpoints\n\n  Scenario: Get all gimme endpoints\n    When I send a GET request to \"/author/7\"\n    Then the response code should be 200\n    And response should have keys \"firstName, lastName, image\""
  },
  {
    "path": "old_features/3_comments.feature",
    "content": "Feature: Comments\n  I need to be able list article comments\n\n  Scenario: Get single article comments from gimme\n    When I send a GET request to \"/articles/77/en/comments\"\n    Then the response code should be 200\n    And response should have keys \"items\"\n    And response should have item with keys \"author, subject, message, created\""
  },
  {
    "path": "old_features/4_user.feature",
    "content": "Feature: Users\n  I need to be able list and get users\n\n  Scenario: Get users from gimme\n    When I send a GET request to \"/users\"\n    Then the response code should be 200\n    And response should have \"items\" with elements\n\n  Scenario: Get single user from gimme\n    When I send a GET request to \"/users/39\"\n    Then the response code should be 200\n    And response should have keys \"email, username, firstName, lastName, attributes\"\n    And response should have \"attributes\" with elements\n"
  },
  {
    "path": "old_features/5_topic.feature",
    "content": "Feature: Topic\n  I need to be able list and get topics\n\n  Scenario: Get topics from gimme\n    When I send a GET request to \"/topics\"\n    Then the response code should be 200\n    And response should have \"items\" with elements\n    And response should have item with keys \"id, title, articlesLink\"\n\n  Scenario: Get single topic from gimme\n    When I send a GET request to \"/topics/18/en/articles\"\n    Then the response code should be 200\n    And response should have keys \"id, title, items\"\n    And response should have \"items\" with elements\n"
  },
  {
    "path": "old_features/6_slideshow.feature",
    "content": "Feature: Slideshow\n  I need to be able list and get slideshows\n\n  Scenario: Get single slideshow from gimme\n    When I send a GET request to \"/slideshows/5\"\n    Then the response code should be 200\n    And response should have keys \"id, title, items\"\n    And response should have \"items\" with elements\n    And response should have item with keys \"caption, type, link\""
  },
  {
    "path": "old_features/7_section.feature",
    "content": "Feature: Sections\n  I need to be able list and get sections\n\n  Scenario: Get single section from gimme\n    When I send a GET request to \"/sections\"\n    Then the response code should be 200\n    And response should have \"items\" with elements\n    And response should have item with keys \"number, title, articlesLink\"\n\n  Scenario: Get single section from gimme\n    When I send a GET request to \"/sections/20/en/articles\"\n    Then the response code should be 200\n    And response should have keys \"id, title, items\"\n    And response should have \"items\" with elements"
  },
  {
    "path": "old_features/8_articles_lists.feature",
    "content": "Feature: Articles Lists\n  I need to be able list and get articles lists\n\n  Scenario: Get single articles-lists from gimme\n    When I send a GET request to \"/articles-lists\"\n    Then the response code should be 200\n    And response should have \"items\" with elements\n    And response should have item with keys \"id, title, articlesLink\"\n\n  Scenario: Get single slideshow from gimme\n    When I send a GET request to \"/articles-lists/1/articles\"\n    Then the response code should be 200\n    And response should have keys \"id, title, items\"\n    And response should have \"items\" with elements"
  },
  {
    "path": "old_features/99_functions.feature",
    "content": "Feature: Functions\n  All API functions should work properly\n\n  Scenario: Sort articles\n    When I send a GET request to \"/articles?sort[number]=asc\"\n    Then the response code should be 200\n    And first item from response should have key \"number\" with value 64\n\n  Scenario: Get only 3 items\n    When I send a GET request to \"/articles?items_per_page=3\"\n    Then the response code should be 200\n    And i should have only \"3\" items\n\n  Scenario: Partial response for one item\n    When I send a GET request to \"/articles?items_per_page=1&fields=number\"\n    Then the response code should be 200\n    And i should have only \"1\" items\n    And response should have item with only \"number\" keys"
  },
  {
    "path": "old_features/bootstrap/FeatureContext.php",
    "content": "<?php\n\nuse Behat\\Behat\\Context\\BehatContext;\nuse Behat\\Behat\\Exception\\PendingException;\nuse Behat\\Gherkin\\Node\\PyStringNode;\nuse Behat\\Gherkin\\Node\\TableNode;\nuse Buzz\\Message\\Form\\FormUpload;\n\n/**\n * Features context.\n */\nclass FeatureContext extends BehatContext\n{\n    private $browser;\n\n    private $fields = array();\n\n    private $parameters;\n\n    /**\n     * Initializes context.\n     * Every scenario gets it's own context object.\n     *\n     * @param array $parameters context parameters (set them up through behat.yml)\n     */\n    public function __construct(array $parameters)\n    {\n        $this->useContext(\n            'api',\n            new Behat\\CommonContexts\\WebApiContext($parameters['base_url'], new \\Buzz\\Browser(new \\Buzz\\Client\\FileGetContents()))\n        );\n        $this->browser = $this->getMainContext()->getSubcontext('api')->getBrowser();\n\n        $url = str_replace($parameters['api_prefix'].'/', '', $parameters['base_url']).'oauth/v2/token?client_id=1_svdg45ew371vtsdgd29fgvwe5v&grant_type=client_credentials&client_secret=h48fgsmv0due4nexjsy40jdf3sswwr';\n        $this->browser->call($url, 'GET', array());\n        $token = json_decode($this->browser->getLastResponse()->getContent(), true);\n\n        $this->getMainContext()->getSubcontext('api')->setPlaceholder('<base_url>', $parameters['base_url']);\n        $this->browser->addListener(new PublicationListener(array(\n            'publication' => $parameters['publication'],\n            'access_token' => $token['access_token']\n        )));\n\n        $this->parameters = $parameters;\n    }\n\n    /**\n     * @Given /^response should have \"([^\"]*)\" with elements$/\n     */\n    public function responseShouldHaveWithElements($key)\n    {\n        $response = json_decode($this->browser->getLastResponse()->getContent(), true);\n\n        if (!array_key_exists($key, $response)) {\n            throw new \\Exception('key \"'.$key.'\" don\\'t exist');\n        }\n\n        if (!count($response[$key]) > 0) {\n            throw new \\Exception('response[\"'.$key.'\"] don\\'t have elements');\n        }\n\n        return true;\n    }\n\n    /**\n     * @Given /^response should have keys \"([^\"]*)\"$/\n     */\n    public function responseShouldHaveKeys($keys)\n    {\n        $response = json_decode($this->browser->getLastResponse()->getContent(), true);\n        $keys = explode(', ', $keys);\n\n        foreach ($keys as $key) {\n            if (!array_key_exists($key, $response)) {\n                throw new \\Exception('key \"'.$key.'\" don\\'t exist');\n            }\n        }\n\n        return true;\n    }\n\n    /**\n     * @Given /^response should have keys \"([^\"]*)\" under \"([^\"]*)\"$/\n     */\n    public function responseShouldHaveKeysUnder($keys, $mainKey)\n    {\n        $response = json_decode($this->browser->getLastResponse()->getContent(), true);\n        $keys = explode(', ', $keys);\n\n        $this->responseShouldHaveWithElements($mainKey);\n\n        foreach ($keys as $key) {\n            if (!array_key_exists($key, $response[$mainKey])) {\n                throw new \\Exception('key \"'.$key.'\" don\\'t exist');\n            }\n        }\n\n        return true;\n    }\n\n    /**\n     * @Given /^response should have \"([^\"]*)\" with elements under \"([^\"]*)\"$/\n     */\n    public function responseShouldHaveWithElementsUnder($keys, $mainKey)\n    {\n        $response = json_decode($this->browser->getLastResponse()->getContent(), true);\n\n        $this->responseShouldHaveWithElements($mainKey);\n\n        if (!array_key_exists($key, $response[$mainKey])) {\n            throw new \\Exception('key \"'.$key.'\" don\\'t exist');\n        }\n\n        if (!count($response[$mainKey][$key]) > 0) {\n            throw new \\Exception('response[\"'.$key.'\"] don\\'t have elements');\n        }\n\n        return true;\n    }\n\n    /**\n     * @Given /^response should have item with keys \"([^\"]*)\"$/\n     */\n    public function responseShouldHaveItemWithKeys($keys)\n    {\n        $response = json_decode($this->browser->getLastResponse()->getContent(), true);\n        $keys = explode(', ', $keys);\n\n        $this->responseShouldHaveWithElements('items');\n\n        $haveAllKeys = false;\n        foreach ($response['items'] as $item) {\n            $itemKeys = array_keys($item);\n            foreach ($keys as $key) {\n                if (!in_array($key, $itemKeys)) {\n                    continue;\n                }\n\n                return true;\n            }\n        }\n\n        throw new \\Exception('There is no items with all provided keys');\n    }\n\n    /**\n     * @Given /^first item from response should have key \"([^\"]*)\" with value (\\d+)$/\n     */\n    public function firstItemFromResponseShouldHaveKeyWithValue($key, $value)\n    {\n\n        $response = json_decode($this->browser->getLastResponse()->getContent(), true);\n        $this->responseShouldHaveWithElements('items');\n\n        if ($response['items'][0][$key] == $value) {\n            return true;\n        }\n\n        throw new \\Exception($key.' don\\'t have value '.$value);\n    }\n\n    /**\n     * @Then /^response should have key \"([^\"]*)\" with value \"([^\"]*)\"$/\n     */\n    public function responseShouldHaveKeyWithValue($key, $value)\n    {\n\n        $response = json_decode($this->browser->getLastResponse()->getContent(), true);\n\n        if ($response[$key] == $value) {\n            return true;\n        }\n\n        throw new \\Exception($key.' don\\'t have value '.$value);\n    }\n\n    /**\n     * @Given /^i should have only \"([^\"]*)\" items$/\n     */\n    public function iShouldHaveOnlyItems($number)\n    {\n        $response = json_decode($this->browser->getLastResponse()->getContent(), true);\n        $this->responseShouldHaveWithElements('items');\n\n        if (count($response['items']) == $number) {\n            return true;\n        }\n\n        throw new \\Exception('Items number is not equal '.$number);\n    }\n\n    /**\n     * @Given /^response should have item with only \"([^\"]*)\" keys$/\n     */\n    public function responseShouldHaveItemWithOnlyKeys($keys)\n    {\n        $response = json_decode($this->browser->getLastResponse()->getContent(), true);\n        $keys = explode(', ', $keys);\n\n        $this->responseShouldHaveWithElements('items');\n\n        if (count(array_keys($response['items'][0])) == count($keys)) {\n            foreach ($keys as $key) {\n                if (!array_key_exists($key, $response['items'][0])) {\n                    throw new \\Exception('Key '.$key.' don\\'t exist');\n                }\n\n                return true;\n            }\n        }\n\n        throw new \\Exception('Response is wrong');\n    }\n\n    /**\n     * @Given /^that i want to create new file \\'([^\\']*)\\' with name \\'([^\\']*)\\'$/\n     */\n    public function thatIWantToSendFileWithName($fileName, $name)\n    {\n        $upload = new FormUpload(__DIR__.'/assets/'.$fileName);\n        $upload->setName($name);\n        $this->fields[$name] = $upload;\n    }\n\n    /**\n     * @Given /^that i want to create \"([^\"]*)\" with name \"([^\"]*)\" and content \"([^\"]*)\" with type \"([^\"]*)\"$/\n     */\n    public function thatIWantToCreateWithNameAndContentWithType($form, $name, $content, $contentType)\n    {\n        if ($contentType == 'file') {\n            $fileName = $content;\n            $content = new FormUpload(__DIR__.'/assets/'.$fileName);\n            $content->setName($fileName);\n        }\n\n        if (!array_key_exists($form, $this->fields)) {\n            $this->fields[$form] = array();\n        }\n\n        $this->fields[$form][$name] = $content;\n    }\n\n    /**\n     * Sends HTTP request to specific URL with form data from PyString.\n     *\n     * @param string $method request method\n     * @param string $url    relative url\n     *\n     * @When /^I send a \"([^\"]*)\" request to \"([^\"]+)\" with custom form data$/\n     */\n    public function iSendARequestToWithCustomFormData($method, $url)\n    {\n        $webApiContext = $this->getMainContext()->getSubcontext('api');\n\n        if ($url == \"last resource\") {\n            if ($this->browser->getLastResponse()->getHeader('X-Location') !== null) {\n                $url = $this->browser->getLastResponse()->getHeader('X-Location');\n            } else {\n                $url = $this->browser->getLastRequest()->getUrl();\n            }\n        } else {\n            $url = $this->parameters['base_url'].ltrim($webApiContext->replacePlaceHolder($url), '/');\n        }\n\n        $this->browser->submit($url, $this->fields, $method);\n        $this->fields = array();\n\n        $request  = $this->browser->getLastRequest();\n        $response = $this->browser->getLastResponse();\n\n        $this->printDebug(sprintf(\"%s %s => %d:\\n%s\",\n            $request->getMethod(),\n            $request->getUrl(),\n            $response->getStatusCode(),\n            $response->getContent()\n        ));\n    }\n\n    /**\n     * @Given /^response should have header \"([^\"]*)\"$/\n     */\n    public function responseShouldHaveHeader($name)\n    {\n        $headers = $this->browser->getLastResponse()->getHeaders();\n        if ($this->browser->getLastResponse()->getHeader($name) !== null) {\n            return true;\n        }\n\n        throw new \\Exception('header \"'.$name.'\" don\\'t exist');\n    }\n\n    /**\n     * @When /^I send a \"([^\"]*)\" request to last resource$/\n     */\n    public function iSendARequestToLastResource($method)\n    {\n        $url = $this->browser->getLastRequest()->getUrl();\n        if (array_key_exists('X-Location', $this->browser->getLastResponse()->getHeaders())) {\n            $url = $this->browser->getLastResponse()->getHeader('X-Location');\n        }\n\n        $this->browser->call($url, $method);\n\n        $request  = $this->browser->getLastRequest();\n        $response = $this->browser->getLastResponse();\n\n        $this->printDebug(sprintf(\"%s %s => %d:\\n%s\",\n            $request->getMethod(),\n            $request->getUrl(),\n            $response->getStatusCode(),\n            $response->getContent()\n        ));\n    }\n}\n"
  },
  {
    "path": "old_features/bootstrap/PublicationListener.php",
    "content": "<?php\n/**\n * @package Newscoop\\Gimme\n * @author Paweł Mikołajczuk <pawel.mikolajczuk@sourcefabric.org>\n * @copyright 2012 Sourcefabric o.p.s.\n * @license http://www.gnu.org/licenses/gpl-3.0.txt\n */\n\nuse Buzz\\Listener\\ListenerInterface;\nuse Buzz\\Message\\MessageInterface;\nuse Buzz\\Message\\RequestInterface;\nuse Buzz\\Util\\Url;\n\n/**\n * Publication listener for behat testing\n */\nclass PublicationListener implements ListenerInterface\n{\n    /**\n     * Array with parameters appended to all requests\n     * @var array\n     */\n    private $params;\n\n    /**\n     * Construct Listener\n     * @param array $params Array with parameters appended to all requests\n     */\n    public function __construct(array $params)\n    {\n        $this->params = $params;\n    }\n\n    /**\n     * PreSend event\n     * @param RequestInterface $request Request object\n     */\n    public function preSend(RequestInterface $request)\n    {\n        $url = $request->getUrl();\n        $pos = strpos($url, '?');\n\n        if ($pos !== false) {\n            $url .= '&'.utf8_encode(http_build_query($this->params, '', '&'));\n        } else {\n            $url .= '?'.utf8_encode(http_build_query($this->params, '', '&'));\n        }\n\n        $request->fromUrl(new Url($url));\n    }\n\n    public function postSend(RequestInterface $request, MessageInterface $response)\n    {\n    }\n}\n"
  },
  {
    "path": "phpspec.yml",
    "content": "suites:\n    src:\n        namespace: Newscoop\n        src_path: 'newscoop/src'\n        spec_path: .\n    gimme_library:\n        namespace: Newscoop/Gimme\n        src_path: 'newscoop/library'\n        spec_path: .\n\nformatter.name: pretty"
  },
  {
    "path": "spec/Newscoop/Gimme/PaginatorServiceSpec.php",
    "content": "<?php\n\nnamespace spec\\Newscoop\\Gimme;\n\nuse PhpSpec\\ObjectBehavior;\nuse Prophecy\\Argument;\nuse Knp\\Component\\Pager\\Paginator;\nuse Symfony\\Bundle\\FrameworkBundle\\Routing\\Router;\nuse Newscoop\\Gimme\\Pagination;\nuse Newscoop\\Gimme\\PartialResponse;\n\nclass PaginatorServiceSpec extends ObjectBehavior\n{\n    function let(\n        $die,\n        Paginator $paginator,\n        Router $router,\n        \\Knp\\Component\\Pager\\Pagination\\AbstractPagination $paginationView\n    ){\n        $paginator->paginate(array(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20), null, null, array())\n            ->willReturn($paginationView);\n        $paginationView->getItems()->willReturn(array(6,7,8,9,10));\n\n        $this->beConstructedWith($paginator, $router);\n    }\n\n    function it_is_initializable()\n    {\n        $this->shouldHaveType('Newscoop\\Gimme\\PaginatorService');\n    }\n\n    function it_should_set_pagination(Pagination $pagination)\n    {\n        $this->setPagination($pagination)->shouldReturn($this);\n        $this->getPagination()->shouldReturn($pagination);\n    }\n\n    function it_should_set_partial_response(PartialResponse $partialResponse)\n    {\n        $this->setPartialResponse($partialResponse)->shouldReturn($this);\n        $this->getPartialResponse()->shouldReturn($partialResponse);\n\n        $newPartialResponse = new PartialResponse();\n        $newPartialResponse->setFields('id,name,subject');\n        $this->setPartialResponse($newPartialResponse)->shouldReturn($this);\n        $this->getPartialResponse()->shouldReturn($newPartialResponse);\n    }\n\n    function it_shoud_set_used_route_params()\n    {\n        $this->setUsedRouteParams(array('id' => 5, 'number' => 34))\n            ->shouldReturn($this);\n    }\n\n    function it_should_paginate(Pagination $pagination)\n    {\n        $this->setPagination($pagination);\n        $this->setPaginationData(array(\n            'numItemsPerPage' => 5,\n            'current' => 2,\n            'totalCount' => 20,\n            'lastPageInRange' => 3,\n            'firstPageInRange' => 1,\n        ));\n\n        $this->paginate(array(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20))->shouldReturn(array(\n            'items' => array(6,7,8,9,10),\n            'pagination' => array(\n                'itemsPerPage' => 5,\n                'currentPage' => 2,\n                'itemsCount' => 20,\n                'nextPageLink' => null,\n                'previousPageLink' => null\n            )\n        ));\n    }\n}\n"
  },
  {
    "path": "spec/Newscoop/GimmeBundle/Controller/ArticlesControllerSpec.php",
    "content": "<?php\n\nnamespace spec\\Newscoop\\GimmeBundle\\Controller;\n\nuse PhpSpec\\ObjectBehavior;\nuse Prophecy\\Argument;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\DependencyInjection\\Container;\nuse Newscoop\\Entity\\Repository\\ArticleRepository;\nuse Newscoop\\Entity\\Repository\\LanguageRepository;\nuse Newscoop\\Entity\\Repository\\ArticleTypeRepository;\nuse Newscoop\\Entity\\Repository\\AuthorTypeRepository;\nuse Newscoop\\Entity\\Repository\\PublicationRepository;\nuse Newscoop\\Entity\\Repository\\IssueRepository;\nuse Newscoop\\Entity\\Repository\\SectionRepository;\nuse Newscoop\\Services\\ArticleService;\nuse Newscoop\\Services\\AuthorService;\nuse Newscoop\\Services\\CacheService;\nuse Doctrine\\ORM\\EntityManager;\nuse Symfony\\Component\\Form\\FormFactory;\nuse Symfony\\Component\\Form\\FormBuilder;\nuse Symfony\\Component\\Form\\Form;\nuse Symfony\\Component\\Form\\FormView;\nuse Symfony\\Component\\Routing\\Router;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\Entity\\Article;\nuse Newscoop\\Entity\\ArticleType;\nuse Newscoop\\Entity\\Publication;\nuse Newscoop\\Entity\\Issue;\nuse Newscoop\\Entity\\Section;\nuse Newscoop\\Entity\\Language;\nuse Newscoop\\Entity\\Author;\nuse Newscoop\\Entity\\AuthorType;\nuse Doctrine\\ORM\\AbstractQuery;\nuse Newscoop\\Services\\UserService;\nuse Symfony\\Component\\Security\\Core\\SecurityContext;\nuse Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface;\n\nclass ArticlesControllerSpec extends ObjectBehavior\n{\n    public function let(\n        ArticleService $articleService,\n        AuthorService $authorService,\n        CacheService $cacheService,\n        Container $container,\n        ArticleRepository $articleRepository,\n        LanguageRepository $languageRepository,\n        ArticleTypeRepository $articleTypeRepository,\n        PublicationRepository $publicationRepository,\n        IssueRepository $issueRepository,\n        SectionRepository $sectionRepository,\n        AuthorTypeRepository $authorTypeRepository,\n        EntityManager $entityManager,\n        Request $request,\n        FormFactory $formFactory,\n        FormBuilder $formBuilder,\n        Form $form,\n        FormView $formView,\n        User $user,\n        UserService $userService,\n        Article $article,\n        Publication $publication,\n        ArticleType $articleType,\n        Issue $issue,\n        Section $section,\n        Language $language,\n        Author $author,\n        AuthorType $authorType,\n        AbstractQuery $query,\n        SecurityContext $security,\n        TokenInterface $token,\n        Router $router\n    ) {\n        $container->get('em')->willReturn($entityManager);\n        $container->get('request')->willReturn($request);\n        $container->get('user')->willReturn($userService);\n        $container->get('form.factory')->willReturn($formFactory);\n        $container->get('newscoop_newscoop.article_service')->willReturn($articleService);\n        $container->get('author')->willReturn($authorService);\n        $container->get('newscoop.cache')->willReturn($cacheService);\n        $container->get('router')->willReturn($router);\n\n        $formBuilder->getForm(Argument::cetera())->willReturn($form);\n        $formFactory->create(Argument::cetera())->willReturn($form);\n        $form->createView()->willReturn($formView);\n        $form->handleRequest(Argument::cetera())->willReturn(true);\n        $form->isValid()->willReturn(true);\n\n        $security->getToken()->willReturn($token);\n        $container->get('security.context')->willReturn($security);\n        $container->has('security.context')->willReturn(true);\n\n        $this->setContainer($container);\n\n        $entityManager->getRepository('Newscoop\\Entity\\Article')->willReturn($articleRepository);\n        $entityManager->getRepository('Newscoop\\Entity\\Language')->willReturn($languageRepository);\n        $entityManager->getRepository('Newscoop\\Entity\\ArticleType')->willReturn($articleTypeRepository);\n        $entityManager->getRepository('Newscoop\\Entity\\Publication')->willReturn($publicationRepository);\n        $entityManager->getRepository('Newscoop\\Entity\\Issue')->willReturn($issueRepository);\n        $entityManager->getRepository('Newscoop\\Entity\\Section')->willReturn($sectionRepository);\n        $entityManager->getRepository('Newscoop\\Entity\\AuthorType')->willReturn($authorTypeRepository);\n        $articleRepository->getArticle(Argument::cetera())->willReturn($query);\n        $entityManager->flush(Argument::any())->willReturn(true);\n        $userService->getCurrentUser()->willReturn($user);\n        $number = 64;\n        $language = \"en\";\n    }\n\n    public function it_is_initializable()\n    {\n        $this->shouldHaveType('Newscoop\\GimmeBundle\\Controller\\ArticlesController');\n        $this->shouldImplement('FOS\\RestBundle\\Controller\\FOSRestController');\n    }\n\n    public function its_lockUnlockArticle_should_lock_article($request, $article, $query, $number, $language, $user, $token, $security)\n    {\n        $query->getOneOrNullResult()->willReturn($article);\n        $request->getMethod()->willReturn('POST');\n        $article->isLocked()->willReturn(false);\n        $user = new User('jhon.doe@example.com');\n        $user->setUsername('doe');\n        $security->getToken()->willReturn($token);\n        $token->getUser()->willReturn($user);\n        $article->setLockUser($user)->willReturn(null);\n        $article->setLockTime(Argument::type('\\DateTime'))->willReturn(null);\n        $response = $this->lockUnlockArticle($request, $number, $language);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\Response');\n        $response->getStatusCode()->shouldReturn(200);\n    }\n\n    public function its_lockUnlockArticle_should_unlock_article($request, $article, $query, $number, $language)\n    {\n        $article->isLocked()->willReturn(true);\n        $request->getMethod()->willReturn('DELETE');\n        $article->setLockUser()->willReturn(null);\n        $article->setLockTime()->willReturn(null);\n        $query->getOneOrNullResult()->willReturn($article);\n        $response = $this->lockUnlockArticle($request, $number, $language);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\Response');\n        $response->getStatusCode()->shouldReturn(204);\n    }\n\n    public function its_lockUnlockArticle_should_return_status_code_403_when_setting_the_same_status_while_locking($request, $article, $query, $number, $language)\n    {\n        $article->isLocked()->willReturn(true);\n        $request->getMethod()->willReturn('POST');\n        $query->getOneOrNullResult()->willReturn($article);\n        $response = $this->lockUnlockArticle($request, $number, $language);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\Response');\n        $response->getStatusCode()->shouldReturn(403);\n    }\n\n    public function its_deleteUnlockArticle_should_return_status_code_403_when_setting_the_same_status_while_unlocking($request, $article, $query, $number, $language)\n    {\n        $article->isLocked()->willReturn(false);\n        $request->getMethod()->willReturn('DELETE');\n        $query->getOneOrNullResult()->willReturn($article);\n        $response = $this->lockUnlockArticle($request, $number, $language);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\Response');\n        $response->getStatusCode()->shouldReturn(403);\n    }\n\n    public function it_should_create_new_article(\n        $request,\n        $user,\n        $form,\n        $languageRepository,\n        $language,\n        $articleTypeRepository,\n        $articleType,\n        $publicationRepository,\n        $publication,\n        $issueRepository,\n        $issue,\n        $sectionRepository,\n        $section,\n        $author,\n        $authorTypeRepository,\n        $authorType,\n        $articleService,\n        $article\n    ) {\n        $user->hasPermission('AddArticle')->willReturn(true);\n        $user->getAuthor()->willReturn($author);\n        $form->getData()->willReturn(array(\n            'language' => 1,\n            'type' => 'news',\n            'publication' => 1,\n            'issue' => null,\n            'section' => null,\n        ));\n        $languageRepository->findOneBy(Argument::any())->willReturn($language);\n        $articleTypeRepository->findOneBy(Argument::any())->willReturn($articleType);\n        $publicationRepository->findOneBy(Argument::any())->willReturn($publication);\n        $issueRepository->findOneBy(Argument::any())->willReturn($issue);\n        $sectionRepository->findOneBy(Argument::any())->willReturn($section);\n        $authorTypeRepository->findOneBy(Argument::any())->willReturn($authorType);\n\n        $articleService->createArticle(Argument::cetera())->willReturn($article);\n\n        $this->createArticleAction($request);\n    }\n\n    public function it_should_update_article($request, $user, $query, $article, $form, $articleService)\n    {\n        $user->hasPermission('AddArticle')->willReturn(true);\n        $query->getOneOrNullResult()->willReturn($article);\n\n        $form->getData()->willReturn(array(\n            'language' => 1,\n            'type' => 'news',\n            'publication' => 1,\n            'issue' => null,\n            'section' => null,\n            'fields' => array(\n                'lead' => 'sample lead',\n                'content' => 'sample content',\n            ),\n        ));\n\n        $articleService->updateArticle(Argument::cetera())->willReturn($article);\n\n        $this->patchArticleAction($request, 1, 'en');\n    }\n}\n"
  },
  {
    "path": "spec/Newscoop/GimmeBundle/Controller/EditorialCommentsApiControllerSpec.php",
    "content": "<?php\n\nnamespace spec\\Newscoop\\GimmeBundle\\Controller;\n\nuse PhpSpec\\ObjectBehavior;\nuse Prophecy\\Argument;\nuse Symfony\\Component\\DependencyInjection\\Container;\nuse Doctrine\\Bundle\\DoctrineBundle\\Registry;\nuse Doctrine\\ORM\\AbstractQuery;\nuse Newscoop\\Entity\\Repository\\ArticleRepository;\nuse Doctrine\\ORM\\EntityManager;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\Form\\FormFactory;\nuse Symfony\\Component\\Form\\FormBuilder;\nuse Symfony\\Component\\Form\\Form;\nuse Symfony\\Component\\Form\\FormView;\nuse Symfony\\Component\\Routing\\Router;\nuse Newscoop\\Services\\UserService;\nuse Doctrine\\ORM\\EntityRepository;\nuse Newscoop\\ArticlesBundle\\Entity\\EditorialComment;\nuse Newscoop\\ArticlesBundle\\Entity\\Repository\\EditorialCommentRepository;\nuse Newscoop\\ArticlesBundle\\Services\\EditorialCommentsService;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\Entity\\Article;\n\nclass EditorialCommentsApiControllerSpec extends ObjectBehavior\n{\n     function let(\n        Container $container,\n        Registry $doctrine,\n        ArticleRepository $articleRepository,\n        EntityManager $entityManager,\n        Request $request,\n        FormFactory $formFactory,\n        FormBuilder $formBuilder,\n        Form $form,\n        FormView $formView,\n        Router $router,\n        EditorialCommentsService $editorialCommentService,\n        EditorialComment $editorialComment,\n        EditorialCommentRepository $editorialCommentRepository,\n        User $user,\n        UserService $userService,\n        Article $article,\n        AbstractQuery $query\n    ){\n        $container->get('em')->willReturn($entityManager);\n        $container->get('form.factory')->willReturn($formFactory);\n        $container->get('request')->willReturn($request);\n        $container->get('router')->willReturn($router);\n        $container->get('newscoop.editorial_comments')->willReturn($editorialCommentService);\n        $container->get('user')->willReturn($userService);\n\n        $formBuilder->getForm(Argument::cetera())->willReturn($form);\n        $formFactory->create(Argument::cetera())->willReturn($form);\n        $form->createView()->willReturn($formView);\n        $form->handleRequest(Argument::cetera())->willReturn(true);\n        $form->isValid()->willReturn(true);\n        $userService->getCurrentUser()->willReturn($user);\n\n        $entityManager->getRepository('Newscoop\\ArticlesBundle\\Entity\\EditorialComment')->willReturn($editorialCommentRepository);\n        $entityManager->getRepository('Newscoop\\Entity\\Article')->willReturn($articleRepository);\n\n        $articleRepository->getArticle(Argument::cetera())->willReturn($query);\n        $editorialCommentService->create(Argument::cetera())->willReturn($editorialComment);\n        $editorialCommentService->edit(Argument::cetera())->willReturn($editorialComment);\n        $editorialCommentService->resolve(\n            Argument::type('\\Newscoop\\ArticlesBundle\\Entity\\EditorialComment'),\n            Argument::type('\\Newscoop\\Entity\\User'),\n            Argument::type('bool')\n        )->willReturn($editorialComment);\n\n        $editorialCommentService->remove(\n            Argument::type('\\Newscoop\\ArticlesBundle\\Entity\\EditorialComment'),\n            Argument::type('\\Newscoop\\Entity\\User')\n        )->willReturn(true);\n\n        $this->setContainer($container);\n    }\n\n    function it_is_initializable()\n    {\n        $this->shouldHaveType('Newscoop\\GimmeBundle\\Controller\\EditorialCommentsApiController');\n        $this->shouldImplement('FOS\\RestBundle\\Controller\\FOSRestController');\n    }\n\n    function it_should_create_new_editorial_comment(Request $request, $form, $query, $article)\n    {\n        $form->getData()->willReturn(array(\n            'comment' => 'test editorial comment',\n        ));\n\n        $query->getOneOrNullResult()->willReturn($article);\n        $response = $this->createCommentAction($request, 1, 1);\n\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\Response');\n        $response->getStatusCode()->shouldReturn(201);\n    }\n\n    function it_should_edit_editorial_comment(Request $request, EditorialComment $comment, $form, $editorialCommentRepository, $query)\n    {\n        $form->getData()->willReturn(array(\n            'comment' => 'edit editorial comment',\n        ));\n        $editorialCommentRepository->getOneByArticleAndCommentId(1,1,1)->willReturn($query);\n        $query->getOneOrNullResult()->willReturn($comment);\n\n        $response = $this->editCommentAction($request, 1, 1, 1);\n\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\Response');\n        $response->getStatusCode()->shouldReturn(200);\n    }\n\n    function it_should_resolve_editorial_comment(Request $request, EditorialComment $comment, $form, $editorialCommentRepository, $query)\n    {\n        $form->getData()->willReturn(array(\n            'resolved' => true,\n        ));\n        $editorialCommentRepository->getOneByArticleAndCommentId(1,1,1)->willReturn($query);\n        $query->getOneOrNullResult()->willReturn($comment);\n\n        $response = $this->editCommentAction($request, 1, 1, 1);\n\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\Response');\n        $response->getStatusCode()->shouldReturn(200);\n    }\n\n    function it_should_remove_editorial_comment(Request $request, EditorialComment $comment, $editorialCommentRepository, $query)\n    {\n        $editorialCommentRepository->getOneByArticleAndCommentId(1,1,1)->willReturn($query);\n        $query->getOneOrNullResult()->willReturn($comment);\n\n        $response = $this->removeCommentAction($request, 1, 1, 1);\n\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\Response');\n        $response->getStatusCode()->shouldReturn(204);\n    }\n}\n"
  },
  {
    "path": "spec/Newscoop/GimmeBundle/Controller/SlideshowsControllerSpec.php",
    "content": "<?php\n\nnamespace spec\\Newscoop\\GimmeBundle\\Controller;\n\nuse PhpSpec\\ObjectBehavior;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\DependencyInjection\\Container;\nuse Doctrine\\ORM\\EntityManager;\nuse Doctrine\\ORM\\AbstractQuery;\nuse Newscoop\\Gimme\\PaginatorService;\nuse Knp\\Component\\Pager\\Paginator;\nuse Newscoop\\Package\\Package;\nuse Newscoop\\Package\\PackageRepository;\nuse Newscoop\\Entity\\Repository\\ArticleRepository;\nuse Newscoop\\Services\\PublicationService;\nuse Newscoop\\Entity\\Publication;\nuse Newscoop\\Entity\\Language;\nuse Newscoop\\Entity\\Article;\nuse Symfony\\Component\\HttpFoundation\\ParameterBag;\nuse Newscoop\\Criteria\\SlideshowCriteria;\n\nclass SlideshowsControllerSpec extends ObjectBehavior\n{\n    public function it_is_initializable()\n    {\n        $this->shouldHaveType('Newscoop\\GimmeBundle\\Controller\\SlideshowsController');\n        $this->shouldImplement('FOS\\RestBundle\\Controller\\FOSRestController');\n    }\n\n    public function let(\n        Container $container,\n        EntityManager $entityManager,\n        Request $request,\n        AbstractQuery $query,\n        PaginatorService $paginator,\n        Paginator $knpPaginator,\n        Package $package,\n        PackageRepository $packageRepository,\n        ArticleRepository $articleRepository,\n        PublicationService $publicationService,\n        Publication $publication,\n        Language $language,\n        Article $article\n    ) {\n        $container->get('em')->willReturn($entityManager);\n        $container->get('request')->willReturn($request);\n        $container->get('newscoop.paginator.paginator_service')->willReturn($paginator);\n        $container->get('newscoop.publication_service')->willReturn($publicationService);\n\n        $this->setContainer($container);\n\n        $entityManager->getRepository('Newscoop\\Package\\Package')->willReturn($packageRepository);\n    }\n\n    public function its_getSlideshowItemsAction_should_return_slideshow_info_and_its_items(\n        $request,\n        $package,\n        $packageRepository\n    ) {\n        $package->getId()->willReturn(1);\n        $package->getHeadline()->willReturn('Tempore qui nisi voluptatibus.');\n        $package->getDescription()->willReturn('Tempore qui nisi voluptatibus caption.');\n        $items = array('items' => array(\n            new \\Newscoop\\Package\\RemoteVideo('https://www.youtu.be/8xfbum8dmqw'),\n        ));\n\n        $package->getItems()->willReturn($items);\n\n        $packageRepository->findOneBy(array(\n            'id' => 1,\n        ))->willReturn($package);\n\n        $this->getSlideshowItemsAction($request, 1)->shouldReturn($package);\n    }\n\n    public function its_getSlideshowItemsAction_should_throw_NotFoundHttpException_when_no_slideshow($request, $packageRepository)\n    {\n        $packageRepository->findOneBy(array(\n            'id' => 1,\n        ))->willReturn(null);\n\n        $this\n            ->shouldThrow('Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException')\n            ->during('getSlideshowItemsAction', array($request, 1));\n    }\n\n    public function its_getArticleSlideshowsAction_should_return_list_of_article_slideshows(\n        ParameterBag $parameterBag,\n        ArticleRepository $articleRepository,\n        $request,\n        $entityManager,\n        $query,\n        $paginator,\n        $knpPaginator,\n        $publicationService,\n        $publication,\n        $language,\n        $article,\n        $packageRepository\n    ) {\n        $entityManager->getRepository('Newscoop\\Entity\\Article')->willReturn($articleRepository);\n        $parameterBag->get('language', 'en')->willReturn('en');\n        $request->request = $parameterBag;\n        $language->getCode()->willReturn('en');\n        $language->getId()->willReturn(1);\n        $publication->getLanguage()->willReturn($language);\n        $publicationService->getPublication()->willReturn($publication);\n\n        $article->getNumber()->willReturn(64);\n        $article->getName()->willReturn('test article');\n        $article->getLanguage()->willReturn($language);\n        $article->getLanguageId()->willReturn(1);\n\n        $articleRepository->getArticle(64, 'en')->willReturn($query);\n        $query->getOneOrNullResult()->willReturn($article);\n\n        $criteria = new SlideshowCriteria();\n        $criteria->articleNumber = 64;\n        $criteria->articleLanguage = 1;\n        $slideshows = $packageRepository->getListByCriteria($criteria)->willReturn($query);\n\n        $result = array(\n            'id' => 1,\n            'headline' => 'Tempore qui nisi voluptatibus.',\n            'items' => array(array(\n                'type' => 'video',\n                'link' => 'https://www.youtu.be/8xfbum8dmqw',\n            ), array(\n                'caption' => '',\n                'type' => 'image',\n                'link' => \"http:\\/\\/newscoop.dev\\/images\\/cache\\/3200x2368\\/fit\\/images%7Ccms-image-000000131.jpg\",\n            )),\n            'itemsCount' => 2,\n        );\n\n        $paginator->setUsedRouteParams(array('number' => 64, 'language' => 'en'))->willReturn($knpPaginator);\n        $paginator->paginate($query)->willReturn($result);\n\n        $this->getArticleSlideshowsAction($request, 64, 'en')->shouldReturn($result);\n    }\n}\n"
  },
  {
    "path": "spec/Newscoop/GimmeBundle/Controller/TopicsControllerSpec.php",
    "content": "<?php\n\nnamespace spec\\Newscoop\\GimmeBundle\\Controller;\n\nuse PhpSpec\\ObjectBehavior;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\DependencyInjection\\Container;\nuse Doctrine\\ORM\\EntityManager;\nuse Doctrine\\ORM\\AbstractQuery;\nuse Newscoop\\Gimme\\PaginatorService;\nuse Newscoop\\NewscoopBundle\\Entity\\Repository\\TopicRepository;\nuse Newscoop\\NewscoopBundle\\Entity\\Topic;\nuse Symfony\\Component\\HttpFoundation\\ParameterBag;\nuse Doctrine\\Common\\Collections\\ArrayCollection;\nuse Knp\\Component\\Pager\\Paginator;\nuse Newscoop\\NewscoopBundle\\Services\\TopicService;\nuse Doctrine\\ORM\\EntityRepository;\nuse Prophecy\\Argument;\n\nclass TopicsControllerSpec extends ObjectBehavior\n{\n    public function let(\n        Container $container,\n        EntityManager $entityManager,\n        Request $request,\n        AbstractQuery $query,\n        TopicRepository $topicRepository,\n        PaginatorService $paginator,\n        Topic $topic,\n        Paginator $knpPaginator,\n        TopicService $topicService\n    ) {\n        $container->get('em')->willReturn($entityManager);\n        $container->get('request')->willReturn($request);\n        $container->get('newscoop.paginator.paginator_service')->willReturn($paginator);\n        $container->get(\"newscoop_newscoop.topic_service\")->willReturn($topicService);\n\n        $this->setContainer($container);\n\n        $entityManager->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')->willReturn($topicRepository);\n    }\n\n    public function it_is_initializable()\n    {\n        $this->shouldHaveType('Newscoop\\GimmeBundle\\Controller\\TopicsController');\n        $this->shouldImplement('FOS\\RestBundle\\Controller\\FOSRestController');\n    }\n\n    public function its_getTopicsAction_should_return_list_of_all_topics($request, $topicRepository, $query, $topic, $paginator)\n    {\n        $topic->getId()->willReturn(1);\n        $topic->getTitle()->willReturn('test topic');\n        $topic->getRoot()->willReturn(1);\n        $topic->getParent()->willReturn(null);\n        $topics = array('items' => array(\n            $topic\n        ));\n\n        $topicRepository->getTopics(null)->willReturn($query);\n\n        $paginator->paginate($query, array(\n            'distinct' => false\n        ))->willReturn($topics);\n\n        $this->getTopicsAction($request)->shouldReturn($topics);\n    }\n\n    public function its_getTopicsAction_should_return_list_of_all_topics_by_language(\n        $request,\n        $topicRepository,\n        $query,\n        $topic,\n        $paginator\n    )\n    {\n        $topic->getId()->willReturn(2);\n        $topic->getTitle()->willReturn('test topic de');\n        $topic->getRoot()->willReturn(2);\n        $topic->getParent()->willReturn(null);\n        $topics = array('items' => array(\n            $topic\n        ));\n\n        $locale = $request->get('language')->willReturn('de');\n        $topicRepository->getTopics(\"de\")->willReturn($query);\n\n        $paginator->paginate($query, array(\n            'distinct' => false\n        ))->willReturn($topics);\n\n        $this->getTopicsAction($request)->shouldReturn($topics);\n    }\n\n    public function its_getTopicsAction_should_throw_NotFoundHttpException_when_no_result($request, $topicRepository)\n    {\n        $topicRepository->getTopics(null)->willReturn(null);\n\n        $this\n            ->shouldThrow('Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException')\n            ->during('getTopicsAction', array($request));\n    }\n\n    public function its_getTopicByIdAction_should_return_single_topic($request, $topicRepository, $query, $topic)\n    {\n        $id = 1;\n        $topic->getId()->willReturn(1);\n        $topic->getTitle()->willReturn('test topic');\n        $topic->getRoot()->willReturn(1);\n        $topic->getParent()->willReturn(null);\n        $topic->getLeft()->willReturn(2);\n        $topic->getRight()->willReturn(4);\n        $topicRepository->getSingleTopicQuery($id)->willReturn($query);\n        $query->getOneOrNullResult()->willReturn($topic);\n        $this->getTopicByIdAction($id)->shouldReturn($topic);\n    }\n\n    public function its_getTopicByIdAction_should_throw_NotFoundHttpException_when_no_result($request, $topicRepository, $query)\n    {\n        $topicRepository->getSingleTopicQuery(1)->willReturn($query);\n        $query->getOneOrNullResult()->willReturn(null);\n        $this\n            ->shouldThrow('Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException')\n            ->during('getTopicByIdAction', array(1));\n    }\n\n    public function its_searchTopicsAction_should_return_array_of_topics_by_given_search_criteria(ParameterBag $parameterBag, $topic, $paginator, $query, $request, $topicRepository)\n    {\n        $searchPhrase = 'topic1';\n        $parameterBag->get(\"query\", \"\")->willReturn($searchPhrase);\n        $request->query = $parameterBag;\n        $topicRepository->searchTopics($searchPhrase)->willReturn($query);\n        $topic->getId()->willReturn(1);\n        $topic->getTitle()->willReturn('topic1');\n        $topic->getRoot()->willReturn(1);\n        $topic->getParent()->willReturn(null);\n        $topic->getTranslations()->willReturn(new ArrayCollection());\n        $topics = array(\n            'id' => 1,\n            'title' => 'topic1',\n            'items' => array(\n                $topic\n            )\n        );\n\n        $paginator->paginate($query, array(\n            'distinct' => false\n        ))->willReturn($topics);\n\n        $this->searchTopicsAction($request)->shouldReturn($topics);\n    }\n\n    public function its_searchTopicsAction_should_return_empty_array_when_no_results(ParameterBag $parameterBag, $topic, $paginator, $query, $request, $topicRepository)\n    {\n        $searchPhrase = 'topic1';\n        $parameterBag->get(\"query\", \"\")->willReturn($searchPhrase);\n        $request->query = $parameterBag;\n        $topicRepository->searchTopics($searchPhrase)->willReturn($query);\n\n        $paginator->paginate($query, array(\n            'distinct' => false\n        ))->willReturn(array());\n\n        $this->searchTopicsAction($request)->shouldReturn(array());\n    }\n\n    public function its_getArticlesTopicsAction_should_return_list_of_topics_for_given_article($request, $topicRepository, $entityManager, $query, $topic, $paginator, $knpPaginator)\n    {\n        $entityManager->getRepository('Newscoop\\Entity\\Topic')->willReturn($topicRepository);\n        $topic->getId()->willReturn(1);\n        $topic->getTitle()->willReturn('test topic');\n        $topic->getRoot()->willReturn(1);\n        $topic->getParent()->willReturn(null);\n        $topics = array('items' => array(\n            $topic\n        ));\n\n        $topicRepository->getArticleTopics(64, 'en')->willReturn($query);\n        $paginator->setUsedRouteParams(array(\"number\" => 64, \"language\" => \"en\"))->willReturn($knpPaginator);\n        $paginator->paginate($query)->willReturn($topics);\n\n        $this->getArticlesTopicsAction(64, 'en')->shouldReturn($topics);\n    }\n\n    public function its_deleteTopicAction_should_delete_topic($topicService, $request, $topic, EntityRepository $repository, $entityManager)\n    {\n        $entityManager->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')->willReturn($repository);\n        $topic->getId()->willReturn(1);\n        $repository->findOneBy(array(\n            'id' => 1,\n        ))->willReturn($topic);\n\n        $topicService->deleteTopic($topic)->shouldBeCalled();\n\n        $response = $this->deleteTopicAction($request, 1);\n        $response->shouldHaveType('Symfony\\Component\\HttpFoundation\\Response');\n        $response->getStatusCode()->shouldReturn(204);\n    }\n\n    public function its_deleteTopicAction_should_throw_not_found_exception($request)\n    {\n        $this\n            ->shouldThrow('Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException')\n            ->during('deleteTopicAction', array($request, 1));\n    }\n}\n"
  },
  {
    "path": "spec/Newscoop/GimmeBundle/Controller/UserTopicsControllerSpec.php",
    "content": "<?php\n\nnamespace spec\\Newscoop\\GimmeBundle\\Controller;\n\nuse PhpSpec\\ObjectBehavior;\nuse Prophecy\\Argument;\nuse Newscoop\\Services\\UserTopicService;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Doctrine\\ORM\\AbstractQuery;\nuse Doctrine\\ORM\\EntityRepository;\nuse Newscoop\\Entity\\Repository\\UserRepository;\nuse Symfony\\Component\\DependencyInjection\\Container;\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Entity\\User;\nuse Knp\\Component\\Pager\\Paginator;\nuse Newscoop\\Gimme\\PaginatorService;\nuse Symfony\\Component\\HttpFoundation\\ParameterBag;\nuse Newscoop\\NewscoopBundle\\Entity\\Topic;\n\nclass UserTopicsControllerSpec extends ObjectBehavior\n{\n    public function it_is_initializable()\n    {\n        $this->shouldHaveType('Newscoop\\GimmeBundle\\Controller\\UserTopicsController');\n        $this->shouldImplement('FOS\\RestBundle\\Controller\\FOSRestController');\n    }\n\n    public function let(\n        Container $container,\n        EntityManager $entityManager,\n        Request $request,\n        AbstractQuery $query,\n        UserTopicService $userTopicService,\n        UserRepository $userRepository,\n        User $user,\n        Paginator $knpPaginator,\n        PaginatorService $paginator,\n        EntityRepository $repository\n    ) {\n        $container->get('em')->willReturn($entityManager);\n        $container->get('user.topic')->willReturn($userTopicService);\n        $container->get('newscoop.paginator.paginator_service')->willReturn($paginator);\n\n        $entityManager->persist(Argument::any())->willReturn(true);\n        $entityManager->flush(Argument::any())->willReturn(true);\n        $entityManager->remove(Argument::any())->willReturn(true);\n        $entityManager->getRepository('Newscoop\\Entity\\User')->willReturn($repository);\n        $user->getId()->willReturn(1);\n        $user->getUsername()->willReturn('admin');\n        $user->getEmail()->willReturn('foo@bar.com');\n\n        $this->setContainer($container);\n    }\n\n    public function its_getUserTopicsAction_should_return_list_of_topics_followed_by_user(\n        $request,\n        $repository,\n        $user,\n        $userTopicService,\n        $paginator,\n        ParameterBag $parameterBag,\n        $knpPaginator\n    ) {\n        $userId = 1;\n        $topic = new Topic();\n        $topic->setId(10);\n        $topic->setTitle('test');\n        $topic->setParent(null);\n        $repository->findOneBy(array('id' => $userId))->shouldBeCalled()->willReturn($user);\n        $topics = array(\n            $topic,\n        );\n\n        $userTopics = array(\n            'items' => $topics,\n        );\n\n        $parameterBag->get(\"language\", null)->willReturn(null);\n        $request->query = $parameterBag;\n\n        $userTopicService->getTopics($user, null)->shouldBeCalled()->willReturn($topics);\n        $paginator->setUsedRouteParams(array(\"id\" => $userId, \"language\" => null))->willReturn($knpPaginator);\n        $paginator->paginate($topics, array(\n            'distinct' => false,\n        ))->willReturn($userTopics);\n\n        $this->getUserTopicsAction($request, $userId)->shouldReturn($userTopics);\n    }\n\n    public function its_getUserTopicsAction_should_return_list_of_topics_by_language_followed_by_user(\n        $request,\n        $repository,\n        $user,\n        $userTopicService,\n        $paginator,\n        ParameterBag $parameterBag,\n        $knpPaginator\n    ) {\n        $userId = 1;\n        $topic = new Topic();\n        $topic->setId(10);\n        $topic->setTitle('test');\n        $topic->setParent(null);\n        $repository->findOneBy(array('id' => $userId))->shouldBeCalled()->willReturn($user);\n        $topics = array(\n            $topic,\n        );\n\n        $userTopics = array(\n            'items' => $topics,\n        );\n\n        $parameterBag->get(\"language\", null)->willReturn(\"de\");\n        $request->query = $parameterBag;\n        $userTopicService->getTopics($user, \"de\")->shouldBeCalled()->willReturn($topics);\n        $paginator->setUsedRouteParams(array(\"id\" => $userId, \"language\" => \"de\"))->willReturn($knpPaginator);\n        $paginator->paginate($topics, array(\n            'distinct' => false,\n        ))->willReturn($userTopics);\n\n        $this->getUserTopicsAction($request, $userId)->shouldReturn($userTopics);\n    }\n\n    public function its_getUserTopicsAction_should_throw_exception_when_user_not_found(\n        $request,\n        $repository\n    ) {\n        $userId = 1;\n        $repository->findOneBy(array('id' => $userId))->shouldBeCalled()->willReturn(null);\n\n        $this\n            ->shouldThrow('Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException')\n            ->during('getUserTopicsAction', array($request, $userId));\n    }\n\n    public function its_getUserTopicsAction_should_throw_exception_when_no_user_id_param_given(\n        $request\n    ) {\n        $this\n            ->shouldThrow('Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException')\n            ->during('getUserTopicsAction', array($request, null));\n    }\n\n    public function its_getUserTopicsAction_should_return_empty_array_when_no_results(\n        $request,\n        $repository,\n        $user,\n        $userTopicService,\n        ParameterBag $parameterBag,\n        $paginator,\n        $knpPaginator\n    ) {\n        $userId = 1;\n        $repository->findOneBy(array('id' => $userId))->shouldBeCalled()->willReturn($user);\n        $parameterBag->get(\"language\", null)->willReturn(null);\n        $request->query = $parameterBag;\n        $topics = array();\n        $userTopicService->getTopics($user, null)->shouldBeCalled()->willReturn($topics);\n\n        $userTopics = array(\n            'items' => $topics,\n        );\n\n        $paginator->setUsedRouteParams(array(\"id\" => $userId, \"language\" => null))->willReturn($knpPaginator);\n        $paginator->paginate($topics, array(\n            'distinct' => false,\n        ))->willReturn($userTopics);\n\n        $this->getUserTopicsAction($request, $userId)->shouldReturn($userTopics);\n    }\n\n    public function its_linkToUserAction_and_unlinkFromUserAction_should_throw_exception_when_user_not_found($request)\n    {\n        $this\n            ->shouldThrow('Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException')\n            ->during('linkToUserAction', array($request, 1));\n\n        $this\n            ->shouldThrow('Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException')\n            ->during('unlinkFromUserAction', array($request, 1));\n    }\n\n    public function its_linkToUserAction_and_unlinkFromUserAction_should_throw_invalid_params_exception(\n        $request,\n        $repository,\n        $user\n    ) {\n        $userId = 1;\n        $parameterBag = new ParameterBag();\n        $request->attributes = $parameterBag;\n        $repository->findOneBy(array('id' => $userId))->shouldBeCalled()->willReturn($user);\n        $this\n            ->shouldThrow('Newscoop\\Exception\\InvalidParametersException')\n            ->during('linkToUserAction', array($request, $userId));\n\n        $this\n            ->shouldThrow('Newscoop\\Exception\\InvalidParametersException')\n            ->during('unlinkFromUserAction', array($request, $userId));\n    }\n\n    public function its_linkToUserAction_should_link_topic_to_user(\n        $request,\n        $repository,\n        $user\n    ) {\n        $topic = new Topic();\n        $topic->setId(10);\n        $topic->setTitle('test');\n        $topic->setParent(null);\n        $userId = 1;\n        $parameterBag = new ParameterBag();\n        $parameterBag->set('links', array(array('object' => $topic)));\n        $request->attributes = $parameterBag;\n        $repository->findOneBy(array('id' => $userId))->shouldBeCalled()->willReturn($user);\n        $this->linkToUserAction($request, $userId)->shouldReturn(null);\n    }\n\n    public function its_linkToUserAction_should_do_nothing_when_links_array_is_wrong(\n        $request,\n        $repository,\n        $user\n    ) {\n        $topic = new Topic();\n        $topic->setId(10);\n        $topic->setTitle('test');\n        $topic->setParent(null);\n        $userId = 1;\n        $parameterBag = new ParameterBag();\n        $parameterBag->set('links', array('object' => $topic));\n        $request->attributes = $parameterBag;\n        $repository->findOneBy(array('id' => $userId))->shouldBeCalled()->willReturn($user);\n        $this->linkToUserAction($request, $userId)->shouldReturn(null);\n    }\n\n    public function its_unlinkFromUserAction_should_do_nothing_when_links_array_is_wrong(\n        $request,\n        $repository,\n        $user\n    ) {\n        $topic = new Topic();\n        $topic->setId(10);\n        $topic->setTitle('test');\n        $topic->setParent(null);\n        $userId = 1;\n        $parameterBag = new ParameterBag();\n        $parameterBag->set('links', array('object' => $topic));\n        $request->attributes = $parameterBag;\n        $repository->findOneBy(array('id' => $userId))->shouldBeCalled()->willReturn($user);\n        $this->unlinkFromUserAction($request, $userId)->shouldReturn(null);\n    }\n\n    public function its_unlinkFromUserAction_should_unlink_topic_from_user(\n        $request,\n        $repository,\n        $user\n    ) {\n        $topic = new Topic();\n        $topic->setId(10);\n        $topic->setTitle('test');\n        $topic->setParent(null);\n        $userId = 1;\n        $parameterBag = new ParameterBag();\n        $parameterBag->set('links', array(array('object' => $topic)));\n        $request->attributes = $parameterBag;\n        $repository->findOneBy(array('id' => $userId))->shouldBeCalled()->willReturn($user);\n        $this->unlinkFromUserAction($request, $userId)->shouldReturn(null);\n    }\n}\n"
  },
  {
    "path": "spec/Newscoop/GimmeBundle/EventListener/HookListenerSpec.php",
    "content": "<?php\n\nnamespace spec\\Newscoop\\ArticlesBundle\\EventListener;\n\nuse PhpSpec\\ObjectBehavior;\nuse Prophecy\\Argument;\nuse Doctrine\\Bundle\\DoctrineBundle\\Registry;\n\nclass HookListenerSpec extends ObjectBehavior\n{\n    /**\n     * @param \\Doctrine\\ORM\\EntityManager                                           $em\n     * @param \\Symfony\\Bundle\\FrameworkBundle\\Templating\\EngineInterface            $templating\n     * @param \\Newscoop\\Entity\\Article                                              $article\n     * @param \\Newscoop\\ArticlesBundle\\Entity\\Repository\\EditorialCommentRepository $repository\n     */\n    public function let($die, $em, $templating, $article, $repository, Registry $doctrine)\n    {\n        $doctrine->getManager()->willReturn($em);\n        $em->getRepository(Argument::exact('Newscoop\\ArticlesBundle\\Entity\\EditorialComment'))->willReturn($repository);\n        $repository->getAllByArticleNumber(Argument::any(), Argument::any())->willReturn(Argument::any());\n        $article->getNumber()->willReturn(1);\n        $this->beConstructedWith($em, $templating);\n    }\n\n    public function it_is_initializable()\n    {\n        $this->shouldHaveType('Newscoop\\ArticlesBundle\\EventListener\\HookListener');\n    }\n\n    /**\n     * @param \\Newscoop\\EventDispatcher\\Events\\PluginHooksEvent $event\n     * @param \\Symfony\\Component\\HttpFoundation\\Response        $response\n     */\n    public function it_will_display_list_of_editorial_comments_for_article($event, $response, $em, $repository, $templating)\n    {\n        $event->getArgument('articleNumber')->willReturn(4);\n        $repository->getAllByArticleNumber(4)->willReturn(array(\n            'id' => 1,\n            'articleNumber' => 4,\n            'comment' => 'test comment'\n        ));\n\n        $templating->renderResponse(\n            'NewscoopArticlesBundle:Hook:editorialComments.html.twig',\n            array(\n                'editorialComments' => array(\n                    'id' => 1,\n                    'articleNumber' => 4,\n                    'comment' => 'test comment'\n                ),\n            'articleNumber' => 4\n            )\n        )->willReturn($response);\n\n        $event->addHookResponse($response)->willReturn(null);\n        $this->listEditorialComments($event)->shouldReturn(true);\n    }\n}\n"
  },
  {
    "path": "spec/Newscoop/GimmeBundle/Serializer/Topic/TopicPathHandlerSpec.php",
    "content": "<?php\n\nnamespace spec\\Newscoop\\GimmeBundle\\Serializer\\Topic;\n\nuse PhpSpec\\ObjectBehavior;\nuse Newscoop\\NewscoopBundle\\Entity\\Topic;\nuse JMS\\Serializer\\JsonSerializationVisitor;\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\NewscoopBundle\\Entity\\Repository\\TopicRepository;\n\nclass TopicPathHandlerSpec extends ObjectBehavior\n{\n    public function let($die, EntityManager $entityManager, TopicRepository $topicRepository)\n    {\n        $entityManager->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')->willReturn($topicRepository);\n\n        $this->beConstructedWith($entityManager);\n    }\n\n    public function it_is_initializable()\n    {\n        $this->shouldHaveType('Newscoop\\GimmeBundle\\Serializer\\Topic\\TopicPathHandler');\n    }\n\n    public function it_should_return_a_path_of_the_topic(JsonSerializationVisitor $visitor, Topic $topic, $topicRepository)\n    {\n        $topic->getId()->willReturn(1);\n        $topic->getTitle()->willReturn(\"Test topic\");\n        $topic->getParent()->willReturn(\"Parent topic\");\n\n        $topicRepository->getReadablePath($topic)->willReturn(\" / Parent topic / Test topic\");\n\n        $type = array(\n            'name' => \"topic_path\",\n            'params' => array()\n        );\n\n        $this->serializeToJson($visitor, $topic, $type)->shouldReturn(\" / Parent topic / Test topic\");\n    }\n\n    public function it_should_return_null_when_no_language(JsonSerializationVisitor $visitor, Topic $topic)\n    {\n        $type = array(\n            'name' => \"topic_path\",\n            'params' => array()\n        );\n\n        $this->serializeToJson($visitor, null, $type)->shouldReturn(null);\n    }\n}\n"
  },
  {
    "path": "spec/Newscoop/GimmeBundle/Services/EditorialCommentsServiceSpec.php",
    "content": "<?php\n\nnamespace spec\\Newscoop\\ArticlesBundle\\Services;\n\nuse PhpSpec\\ObjectBehavior;\nuse Prophecy\\Argument;\nuse Newscoop\\Services\\UserService;\nuse Newscoop\\Entity\\Article;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\ArticlesBundle\\Entity\\EditorialComment;\n\nclass EditorialCommentsServiceSpec extends ObjectBehavior\n{\n    public function let(\n        $die,\n        \\Doctrine\\ORM\\EntityManager $em,\n        UserService $userService,\n        \\Newscoop\\Entity\\User $user\n    ) {\n        $em->persist(Argument::any())->willReturn(true);\n        $em->flush(Argument::any())->willReturn(true);\n        $em->remove(Argument::any())->willReturn(true);\n\n        $user->getId()->willReturn(1);\n\n        $this->beConstructedWith($em);\n    }\n\n    public function it_is_initializable()\n    {\n        $this->shouldHaveType('Newscoop\\ArticlesBundle\\Services\\EditorialCommentsService');\n    }\n\n    public function it_should_create_comment(Article $article, User $user)\n    {\n        $this->create('comment', $article, $user, false)\n            ->shouldReturn(true);\n    }\n\n    /**\n     * @param \\Newscoop\\ArticlesBundle\\Entity\\EditorialComment $comment\n     * @param \\Newscoop\\Entity\\User                            $user\n     */\n    public function it_should_edit_comment(EditorialComment $comment, User $user)\n    {\n        $comment->getUser()->willReturn($user);\n        $comment->setComment(Argument::type('string'))->willReturn(true);\n\n        $this->edit('updated comment', $comment, $user)\n            ->shouldReturn(true);\n    }\n\n    public function it_shouldnt_edit_comment(EditorialComment $comment, User $user, User $newUser)\n    {\n        $comment->getUser()->willReturn($user);\n        $comment->setComment(Argument::type('string'))->willReturn(true);\n\n        $newUser->getId()->willReturn(5);\n        $newUser->isAdmin()->willReturn(false);\n\n        $this\n            ->shouldThrow('Symfony\\Component\\HttpKernel\\Exception\\AccessDeniedHttpException')\n            ->during('edit', array('updated comment', $comment, $newUser));\n    }\n\n    public function it_should_resolve_comment(EditorialComment $comment, User $user)\n    {\n        $comment->getUser()->willReturn($user);\n        $comment->setResolved(Argument::type('bool'))->willReturn(true);\n\n        $this->resolve($comment, $user)\n            ->shouldReturn(true);\n    }\n\n    public function it_should_remove_comment(EditorialComment $comment, User $user)\n    {\n        $comment->getUser()->willReturn($user);\n        $comment->setIsActive(Argument::type('bool'))->willReturn(true);\n\n        $this->remove($comment, $user)\n            ->shouldReturn(true);\n    }\n}\n"
  },
  {
    "path": "spec/Newscoop/Image/ImageServiceSpec.php",
    "content": "<?php\n\nnamespace spec\\Newscoop\\Image;\n\nuse PhpSpec\\ObjectBehavior;\nuse Symfony\\Component\\Filesystem\\Filesystem;\nuse Symfony\\Component\\HttpFoundation\\File\\UploadedFile;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\Services\\CacheService;\n\nclass ImageServiceSpec extends ObjectBehavior\n{\n    public function let($die, \\Doctrine\\ORM\\EntityManager $em, CacheService $cacheService)\n    {\n        $this->beConstructedWith(array(\n            'image_path' =>  realpath(__DIR__ . '/../../../newscoop/images/').'/',\n            'thumbnail_path' => realpath(__DIR__ . '/../../../newscoop/images/thumbnails/').'/',\n            'thumbnail_max_size' => 64,\n            'cache_path' => realpath(__DIR__ . '/../../../newscoop/images/cache/').'/',\n            'cache_url' => 'images/cache',\n            'thumbnail_prefix' => 'cms-thumb-',\n            'image_prefix' => 'cms-image-',\n        ), $em, $cacheService);\n    }\n\n    public function it_is_initializable()\n    {\n        $this->shouldHaveType('Newscoop\\Image\\ImageService');\n    }\n\n    public function it_gives_you_src()\n    {\n        $image = 'images/picture.jpg';\n        $this->getSrc($image, 300, 300)->shouldBe('300x300/fit/' . rawurlencode(str_replace('/', '|', $image)));\n    }\n\n    public function it_upload_new_image()\n    {\n        $filesystem = new Filesystem();\n\n        $newFileName = __DIR__.'/../../assets/images/temp-image.jpg';\n        $filesystem->copy(__DIR__.'/../../assets/images/picture.jpg', $newFileName);\n        $uploadedFile = new UploadedFile($newFileName, 'temp-image.jpg', 'image/jpg', null, null, true);\n        $user = new User('test@newscoop.dev');\n        $user->setAdmin(true);\n        $this->upload($uploadedFile, array('user' => $user))->shouldHaveType('Newscoop\\Image\\LocalImage');\n    }\n\n    public function letgo()\n    {\n        $filesystem = new Filesystem();\n        $filesystem->remove(realpath(__DIR__.'/../../../newscoop/images/cms-image-000000000.jpg'));\n        $filesystem->remove(realpath(__DIR__.'/../../../newscoop/images/thumbnails/cms-thumb-000000000.jpg'));\n    }\n}\n"
  },
  {
    "path": "spec/Newscoop/Installer/Services/BootstrapServiceSpec.php",
    "content": "<?php\n\nnamespace spec\\Newscoop\\Installer\\Services;\n\nuse PhpSpec\\ObjectBehavior;\nuse Prophecy\\Argument;\n\nclass BootstrapServiceSpec extends ObjectBehavior\n{\n    function let($die)\n    {\n        $this->mustBeWritable = array('assets');\n        $this->basePath = realpath(__DIR__.'/../../../');\n    }\n\n    function it_is_initializable()\n    {\n        $this->shouldHaveType('Newscoop\\Installer\\Services\\BootstrapService');\n        $this->mustBeWritable->shouldBeEqualTo(array('assets'));\n    }\n\n    function it_checks_if_it_can_make_directory_writable()\n    {\n        $this->makeDirectoriesWritable()->shouldReturn(true);\n    }\n\n    function it_checks_if_directory_is_writable()\n    {\n        $this->checkDirectories()->shouldReturn(true);\n    }\n}\n"
  },
  {
    "path": "spec/Newscoop/NewscoopBundle/Controller/BackendPublicationsControllerSpec.php",
    "content": "<?php\n\nnamespace spec\\Newscoop\\NewscoopBundle\\Controller;\n\nuse PhpSpec\\ObjectBehavior;\nuse Prophecy\\Argument;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\HttpFoundation\\Response;\nuse Symfony\\Component\\DependencyInjection\\Container;\nuse Newscoop\\Entity\\Repository\\PublicationRepository;\nuse Doctrine\\ORM\\EntityManager;\nuse Symfony\\Component\\Translation\\Translator;\nuse Symfony\\Bundle\\FrameworkBundle\\Templating\\DelegatingEngine;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\Entity\\Publication;\nuse Newscoop\\Entity\\Resource;\nuse Newscoop\\Services\\UserService;\nuse Newscoop\\NewscoopBundle\\Form\\Type\\PublicationType;\nuse Newscoop\\NewscoopBundle\\Form\\Type\\RemovePublicationType;\nuse Doctrine\\ORM\\AbstractQuery;\nuse Symfony\\Component\\Security\\Core\\SecurityContext;\nuse Symfony\\Component\\Security\\Core\\Authentication\\Token\\TokenInterface;\nuse Newscoop\\Service\\Implementation\\ThemeManagementServiceLocal;\n\nclass BackendPublicationsControllerSpec extends ObjectBehavior\n{\n    public function let(\n        Container $container,\n        EntityManager $entityManager,\n        Request $request,\n        User $user,\n        UserService $userService,\n        AbstractQuery $query,\n        SecurityContext $security,\n        TokenInterface $token,\n        Translator $translator,\n        PublicationRepository $publicationRepository,\n        \\Newscoop\\Entity\\Repository\\IssueRepository $issueRepository,\n        \\Newscoop\\Entity\\Repository\\SectionRepository $sectionRepository,\n        \\Newscoop\\Entity\\Repository\\ArticleRepository $articleRepository,\n        DelegatingEngine $templating,\n        Publication $publication,\n        ThemeManagementServiceLocal $themeManagementServiceLocal,\n        \\Symfony\\Component\\Form\\FormFactory $formFactory,\n        \\Symfony\\Component\\Form\\Form $form,\n        \\Symfony\\Component\\Form\\FormView $formView,\n        \\Newscoop\\Services\\CacheService $cacheService,\n        \\Symfony\\Component\\HttpFoundation\\Session\\Session $session,\n        \\Symfony\\Component\\HttpFoundation\\Session\\Flash\\FlashBag $flashBag,\n        \\Symfony\\Bundle\\FrameworkBundle\\Routing\\Router $router,\n        \\Doctrine\\Common\\Collections\\ArrayCollection $arrayCollection\n    ) {\n        $container->get('em')->willReturn($entityManager);\n        $container->get('request')->willReturn($request);\n\n        $security->getToken()->willReturn($token);\n        $container->get('security.context')->willReturn($security);\n        $container->has('security.context')->willReturn(true);\n        $container->get('user')->willReturn($userService);\n        $userService->getCurrentUser()->willReturn($user);\n        $container->get('translator')->willReturn($translator);\n        $container->get('templating')->willReturn($templating);\n        $container->get('form.factory')->willReturn($formFactory);\n        $container->get('newscoop.cache')->willReturn($cacheService);\n        $container->get('session')->willReturn($session);\n        $container->get('router')->willReturn($router);\n\n        $entityManager->getRepository('Newscoop\\Entity\\Publication')->willReturn($publicationRepository);\n        $entityManager->getRepository('Newscoop\\Entity\\Issue')->willReturn($issueRepository);\n        $entityManager->getRepository('Newscoop\\Entity\\Section')->willReturn($sectionRepository);\n        $entityManager->getRepository('Newscoop\\Entity\\Article')->willReturn($articleRepository);\n        $entityManager->flush(Argument::any())->willReturn(true);\n        $entityManager->persist(Argument::any())->willReturn(true);\n        $entityManager->remove(Argument::any())->willReturn(true);\n        $entityManager->createQuery(Argument::any())->willReturn($query);\n        $publicationRepository->getPublications()->willReturn($query);\n        $issueRepository->getIssuesCountForPublication(Argument::type('int'))->willReturn($query);\n        $sectionRepository->getSectionsCountForPublication(Argument::type('int'))->willReturn($query);\n        $articleRepository->getArticlesCountForPublication(Argument::type('int'))->willReturn($query);\n        $session->getFlashBag()->willReturn($flashBag);\n\n        $publication->getId()->willReturn(1);\n        $publication->getIssues()->willReturn($arrayCollection);\n        $publication->getDefaultAlias()->willReturn('newscoop.dev');\n        $publication->setDefaultAlias(Argument::any())->willReturn($publication);\n\n        $themeManagementServiceLocal->getThemes(1)->willReturn(array());\n\n        $this->setContainer($container);\n    }\n\n    function it_is_initializable()\n    {\n        $this->shouldHaveType('Newscoop\\NewscoopBundle\\Controller\\BackendPublicationsController');\n    }\n\n    function it_should_list_publications($request, $user, $templating)\n    {\n        $user->hasPermission('ManagePub')->willReturn(true);\n        $response = new Response();\n\n        $templating->renderResponse(\n            'NewscoopNewscoopBundle:BackendPublications:index.html.twig',\n            Argument::type('array'),\n            null\n        )\n        ->willReturn($response);\n\n        $response = $this->indexAction($request);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\Response');\n        $response->getStatusCode()->shouldReturn(200);\n    }\n\n    function it_should_edit_and_create_publication(\n        $request,\n        $publication,\n        $user,\n        $templating,\n        $form,\n        $formFactory,\n        $formView,\n        $router,\n        Resource $resource\n    ){\n        $user->hasPermission('ManagePub')->willReturn(true);\n        $response = new Response();\n\n        $templating->renderResponse(\n            'NewscoopNewscoopBundle:BackendPublications:edit.html.twig',\n            Argument::type('array'),\n            null\n        )\n        ->willReturn($response);\n\n        $formFactory->create(\n            Argument::type('\\Newscoop\\NewscoopBundle\\Form\\Type\\PublicationType'),\n            Argument::type('\\Newscoop\\Entity\\Publication'),\n            Argument::any()\n        )->willReturn($form);\n        $form->createView()->willReturn($formView);\n\n        $response = $this->editAction($request, $publication);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\Response');\n        $response->getStatusCode()->shouldReturn(200);\n\n        $form->handleRequest($request)->willReturn(true);\n        $form->isValid()->willReturn(true);\n        $router->generate('newscoop_newscoop_publications_index', Argument::cetera())->willReturn('http://newscoop.dev');\n        $request->getMethod()->willReturn('POST');\n\n        // Test POST edit request\n        $response = $this->editAction($request, $publication);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\RedirectResponse');\n        $response->getStatusCode()->shouldReturn(302);\n\n        // Test GET create request\n        $request->getMethod()->willReturn('GET');\n        $response = $this->createAction($request);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\Response');\n        $response->getStatusCode()->shouldReturn(200);\n\n        // Test POST create request\n        $request->getMethod()->willReturn('POST');\n        $form->getData()->willReturn($publication);\n        $response = $this->createAction($request);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\RedirectResponse');\n        $response->getStatusCode()->shouldReturn(302);\n    }\n\n    function it_should_remove_publication(\n        $request,\n        $publication,\n        $user,\n        $templating,\n        $form,\n        $formFactory,\n        $formView,\n        $router,\n        $query\n    )\n    {\n        $user->hasPermission('ManagePub')->willReturn(true);\n        $response = new Response();\n\n        $templating->renderResponse(\n            'NewscoopNewscoopBundle:BackendPublications:remove.html.twig',\n            Argument::type('array'),\n            null\n        )\n        ->willReturn($response);\n\n        $formFactory->create(\n            Argument::type('\\Newscoop\\NewscoopBundle\\Form\\Type\\RemovePublicationType'),\n            Argument::type('\\Newscoop\\Entity\\Publication'),\n            Argument::any()\n        )->willReturn($form);\n        $form->createView()->willReturn($formView);\n\n        $publication->getId()->willReturn(1);\n        $query->setParameters(Argument::type('array'))->willReturn($query);\n        $query->getSingleScalarResult()->willReturn(0);\n        $query->getResult()->willReturn(true);\n\n        $form->handleRequest($request)->willReturn(true);\n        $form->isValid()->willReturn(true);\n        $router->generate('newscoop_newscoop_publications_index', Argument::cetera())->willReturn('http://newscoop.dev');\n        $request->getMethod()->willReturn('POST');\n\n        // Test GET remove request\n        $request->getMethod()->willReturn('GET');\n        $response = $this->removeAction($request, $publication);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\Response');\n        $response->getStatusCode()->shouldReturn(200);\n\n        // Test POST remove request\n        $request->getMethod()->willReturn('POST');\n        $form->getData()->willReturn($publication);\n        $response = $this->removeAction($request, $publication);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\RedirectResponse');\n        $response->getStatusCode()->shouldReturn(302);\n    }\n}\n"
  },
  {
    "path": "spec/Newscoop/NewscoopBundle/Controller/TopicsControllerSpec.php",
    "content": "<?php\n\nnamespace spec\\Newscoop\\NewscoopBundle\\Controller;\n\nuse PhpSpec\\ObjectBehavior;\nuse Symfony\\Component\\DependencyInjection\\Container;\nuse Doctrine\\ORM\\EntityRepository;\nuse Doctrine\\ORM\\EntityManager;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Prophecy\\Argument;\nuse Newscoop\\NewscoopBundle\\Entity\\Repository\\TopicRepository;\nuse Symfony\\Component\\HttpFoundation\\Session\\Session;\nuse Symfony\\Component\\Translation\\Translator;\nuse Symfony\\Component\\Form\\FormFactory;\nuse Symfony\\Component\\Form\\FormBuilder;\nuse Symfony\\Component\\Form\\Form;\nuse Symfony\\Component\\Form\\FormView;\nuse Newscoop\\NewscoopBundle\\Entity\\Topic;\nuse Symfony\\Component\\Form\\Extension\\Csrf\\CsrfProvider\\CsrfTokenManagerAdapter;\nuse Doctrine\\ORM\\AbstractQuery;\nuse Doctrine\\Common\\Collections\\ArrayCollection;\nuse Newscoop\\NewscoopBundle\\Entity\\TopicTranslation;\nuse Symfony\\Component\\HttpFoundation\\ParameterBag;\nuse Symfony\\Component\\Form\\FormErrorIterator;\nuse Symfony\\Component\\Form\\FormError;\nuse Newscoop\\Entity\\Repository\\ArticleTopicRepository;\nuse Newscoop\\Entity\\User;\nuse Newscoop\\Services\\UserService;\nuse Newscoop\\NewscoopBundle\\Services\\TopicService;\nuse Newscoop\\Entity\\Article;\nuse Doctrine\\ORM\\QueryBuilder;\nuse Newscoop\\Services\\CacheService;\nuse Symfony\\Component\\HttpKernel\\Debug\\TraceableEventDispatcher as EventDispatcher;\n\nclass TopicsControllerSpec extends ObjectBehavior\n{\n    private $token;\n\n    public function it_is_initializable()\n    {\n        $this->shouldHaveType('Newscoop\\NewscoopBundle\\Controller\\TopicsController');\n    }\n\n    public function it_is_of_type_container_aware()\n    {\n        $this->shouldBeAnInstanceOf('Symfony\\Component\\DependencyInjection\\ContainerAware');\n    }\n\n    public function let(\n        Container $container,\n        Translator $translator,\n        Session $session,\n        TopicRepository $topicRepository,\n        EntityRepository $repository,\n        EntityManager $entityManager,\n        Request $request,\n        FormFactory $formFactory,\n        FormBuilder $formBuilder,\n        Form $form,\n        FormView $formView,\n        Topic $topic,\n        CsrfTokenManagerAdapter $csrfTokenManagerAdapter,\n        AbstractQuery $query,\n        AbstractQuery $query2,\n        ParameterBag $parameterBag,\n        ArticleTopicRepository $articleTopicrepository,\n        UserService $userService,\n        User $user,\n        TopicService $topicService,\n        Article $article,\n        QueryBuilder $queryBuilder,\n        CacheService $cacheService,\n        EventDispatcher $dispatcher\n    ) {\n        $container->get('em')->willReturn($entityManager);\n        $container->get('session')->willReturn($session);\n        $container->get('request')->willReturn($request);\n        $container->get('translator')->willReturn($translator);\n        $container->get('form.factory')->willReturn($formFactory);\n        $container->get('form.csrf_provider')->willReturn($csrfTokenManagerAdapter);\n        $container->get('newscoop.cache')->willReturn($cacheService);\n        $container->get('user')->willReturn($userService);\n        $container->get('dispatcher')->willReturn($dispatcher);\n        $userService->getCurrentUser()->willReturn($user);\n        $container->get('newscoop_newscoop.topic_service')->willReturn($topicService);\n\n        $formBuilder->getForm(Argument::cetera())->willReturn($form);\n        $formFactory->create(Argument::cetera())->willReturn($form);\n        $form->createView()->willReturn($formView);\n        $form->handleRequest(Argument::cetera())->willReturn(true);\n        $form->isValid()->willReturn(true);\n\n        $entityManager->persist(Argument::any())->willReturn(true);\n        $entityManager->flush(Argument::any())->willReturn(true);\n        $entityManager->remove(Argument::any())->willReturn(true);\n\n        $entityManager->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')->willReturn($repository);\n        $entityManager->getRepository('Newscoop\\Entity\\ArticleTopic')->willReturn($articleTopicrepository);\n        $this->setContainer($container);\n\n        $this->token = 'uTxRiEkont4XxRpTcSADPCowge7TgNONE7Y5HWd4pmY';\n        $request->get('_csrf_token')->willReturn($this->token);\n        $request->get('_code')->willReturn('en');\n        $request->get('_articleNumber')->willReturn('64');\n        $request->getLocale()->willReturn('en');\n        $request->get('_code', 'en')->willReturn('en');\n        $request->request = $parameterBag;\n    }\n\n    public function its_treeAction_should_render_the_tree_of_topics(\n        $topicRepository,\n        $articleTopicrepository,\n        $request,\n        $query2,\n        $entityManager,\n        $query,\n        $topicService\n    ) {\n        $entityManager->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')->willReturn($topicRepository);\n        $topicRepository->getTranslatableTopics('en')->willReturn($query);\n        $topics = array(array(\n            'id' => 1,\n            'level' => 0,\n            'lft' => 1,\n            'rgt' => 6,\n            'root' => null,\n            'title' => 'new root polish',\n            'topicOrder' => 1,\n        ), array(\n            'id' => 2,\n            'level' => 0,\n            'lft' => 2,\n            'rgt' => 8,\n            'root' => null,\n            'title' => 'new root2 polish',\n            'topicOrder' => 2,\n        ));\n\n        $topicService->countBy()->shouldBeCalled()->willReturn(20);\n        $topicService->countArticleTopicsBy()->shouldBeCalled()->willReturn(10);\n        $query->getArrayResult()->willReturn($topics);\n        $articleTopicrepository->getArticleTopicsIds(64, true)->willReturn($query2);\n        $query2->getArrayResult()->willReturn(array(array('109'), array('111')));\n        $topicRepository->buildTreeArray($topics)->willReturn($topics);\n        $response = $this->treeAction($request);\n        $response->getStatusCode()->shouldReturn(200);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\JsonResponse');\n    }\n\n    public function its_addAction_should_add_a_new_topic_when_form_is_valid(\n        $request,\n        $formFactory,\n        $form,\n        $entityManager,\n        $topicService,\n        $repository,\n        $topic,\n        $csrfTokenManagerAdapter,\n        $cacheService\n    ) {\n        $csrfTokenManagerAdapter->isCsrfTokenValid('default', $this->token)->willReturn(true);\n\n        $classTopic = Argument::exact('Newscoop\\NewscoopBundle\\Entity\\Topic')->getValue();\n        $topic = new $classTopic();\n        $classTopicType = Argument::exact('Newscoop\\NewscoopBundle\\Form\\Type\\TopicType')->getValue();\n        $topicType = new $classTopicType();\n\n        $formFactory->create($topicType, $topic)->willReturn($form);\n        $form->handleRequest($request)->willReturn($form);\n        $form->isValid()->willReturn(true);\n\n        $topicService->saveNewTopic($topic, 'en')->willReturn(true);\n        $cacheService->clearNamespace('topic')->shouldBeCalled();\n\n        $response = $this->addAction($request);\n        $response->getStatusCode()->shouldReturn(200);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\JsonResponse');\n    }\n\n    public function its_addAction_should_not_add_a_new_topic_when_form_is_invalid(\n        FormErrorIterator $formIterator,\n        FormError $formError,\n        $request,\n        $formFactory,\n        $form,\n        $entityManager,\n        $topicRepository,\n        $repository,\n        $topic,\n        $csrfTokenManagerAdapter\n    ) {\n        $entityManager->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')->willReturn($topicRepository);\n        $csrfTokenManagerAdapter->isCsrfTokenValid('default', $this->token)->willReturn(true);\n\n        $classTopic = Argument::exact('Newscoop\\NewscoopBundle\\Entity\\Topic')->getValue();\n        $topic = new $classTopic();\n        $classTopicType = Argument::exact('Newscoop\\NewscoopBundle\\Form\\Type\\TopicType')->getValue();\n        $topicType = new $classTopicType();\n\n        $formFactory->create($topicType, $topic)->willReturn($form);\n        $form->handleRequest($request)->willReturn($form);\n        $form->isValid()->willReturn(false);\n        $form->getErrors()->willReturn($formIterator);\n        $formIterator->getChildren()->willReturn($formError);\n        $formError->getMessage()->willReturn('Invalid form');\n        $responseArray = '{\"status\":false,\"message\":\"Invalid form\"}';\n        $response = $this->addAction($request);\n        $response->getContent()->shouldReturn($responseArray);\n        $response->getStatusCode()->shouldReturn(200);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\JsonResponse');\n    }\n\n    public function its_addAction_should_return_403_when_invalid_csrf_token($request, $form, $repository, $topic, $csrfTokenManagerAdapter)\n    {\n        $csrfTokenManagerAdapter->isCsrfTokenValid('default', $this->token)->willReturn(false);\n        $response = $this->addAction($request);\n        $response->getStatusCode()->shouldReturn(403);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\JsonResponse');\n    }\n\n    public function its_deleteAction_should_delete_single_topic(\n        $request,\n        $topic,\n        $repository,\n        $cacheService\n    ) {\n        $repository->findOneBy(array(\n            'id' => 1,\n        ))->willReturn($topic);\n\n        $cacheService->clearNamespace('topic')->shouldBeCalled();\n        $response = $this->deleteAction($request, 1);\n        $response->getStatusCode()->shouldReturn(200);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\JsonResponse');\n    }\n\n    public function its_deleteAction_should_return_404_when_topic_not_found($request, $repository)\n    {\n        $repository->findOneBy(array(\n            'id' => 3,\n        ))->willReturn(null);\n        $response = $this->deleteAction($request, 3);\n        $response->getStatusCode()->shouldReturn(404);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\JsonResponse');\n    }\n\n    public function its_editAction_should_edit_topic(\n        $request,\n        $repository,\n        $topic,\n        $csrfTokenManagerAdapter,\n        $form,\n        $cacheService\n    ) {\n        $repository->findOneBy(array(\n            'id' => 1,\n        ))->willReturn($topic);\n        $data = array('id' => 1, 'title' => 'test');\n        $form->getData()->willReturn($data);\n\n        $csrfTokenManagerAdapter->isCsrfTokenValid('default', $this->token)->willReturn(true);\n        $topicTranslation = new TopicTranslation('en', 'title', $data['title']);\n        $topic->getTranslations()->willReturn(new ArrayCollection(array($topicTranslation)));\n\n        $cacheService->clearNamespace('topic')->shouldBeCalled();\n\n        $response = $this->editAction($request, 1);\n        $response->getStatusCode()->shouldReturn(200);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\JsonResponse');\n    }\n\n    public function its_editAction_should_return_404_when_topic_not_found($request, $repository, $csrfTokenManagerAdapter)\n    {\n        $repository->findOneBy(array(\n            'id' => 1,\n        ))->willReturn(null);\n\n        $csrfTokenManagerAdapter->isCsrfTokenValid('default', $this->token)->willReturn(true);\n        $response = $this->editAction($request, 1);\n        $response->getStatusCode()->shouldReturn(404);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\JsonResponse');\n    }\n\n    public function its_editAction_should_return_403_when_invalid_csrf_token($request, $csrfTokenManagerAdapter)\n    {\n        $csrfTokenManagerAdapter->isCsrfTokenValid('default', $this->token)->willReturn(false);\n        $response = $this->editAction($request, 1);\n        $response->getStatusCode()->shouldReturn(403);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\JsonResponse');\n    }\n\n    public function its_moveAction_should_move_child_topic_to_first_position_in_current_subtree(\n        $request,\n        $topicService,\n        $entityManager,\n        $topicRepository,\n        $parameterBag,\n        $repository,\n        $topic,\n        $cacheService\n    ) {\n        $entityManager->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')->willReturn($topicRepository);\n        $parameterBag->all()->willReturn(array(\n            'first' => true,\n            'parent' => 2,\n        ));\n\n        $request->get('last')->willReturn(null);\n        $request->get('first')->willReturn(true);\n        $request->get('middle')->willReturn(null);\n        $request->request = $parameterBag;\n\n        $topicRepository->findOneBy(array(\n            'id' => 1,\n        ))->willReturn($topic);\n\n        $topicService->saveTopicPosition($topic, $request->request->all())->willReturn(true);\n\n        $cacheService->clearNamespace('topic')->shouldBeCalled();\n\n        $response = $this->moveAction($request, 1);\n        $response->getStatusCode()->shouldReturn(200);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\JsonResponse');\n    }\n\n    public function its_moveAction_should_move_child_topic_to_last_position_in_current_subtree(\n        $request,\n        $topicService,\n        $entityManager,\n        $topicRepository,\n        $parameterBag,\n        $repository,\n        $topic,\n        $cacheService\n    ) {\n        $entityManager->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')->willReturn($topicRepository);\n        $parameterBag->all()->willReturn(array(\n            'last' => true,\n            'parent' => 2,\n        ));\n\n        $request->get('last')->willReturn(true);\n        $request->get('first')->willReturn(null);\n        $request->get('middle')->willReturn(null);\n        $request->request = $parameterBag;\n\n        $topicRepository->findOneBy(array(\n            'id' => 1,\n        ))->willReturn($topic);\n\n        $topicService->saveTopicPosition($topic, $request->request->all())->willReturn(true);\n\n        $cacheService->clearNamespace('topic')->shouldBeCalled();\n\n        $response = $this->moveAction($request, 1);\n        $response->getStatusCode()->shouldReturn(200);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\JsonResponse');\n    }\n\n    public function its_moveAction_should_move_child_topic_to_middle_position_in_current_subtree(\n        $request,\n        $topicService,\n        $entityManager,\n        $topicRepository,\n        $parameterBag,\n        $repository,\n        $topic,\n        $cacheService\n    ) {\n        $entityManager->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')->willReturn($topicRepository);\n        $parameterBag->all()->willReturn(array(\n            'middle' => true,\n            'parent' => 3,\n        ));\n\n        $request->get('last')->willReturn(null);\n        $request->get('first')->willReturn(null);\n        $request->get('middle')->willReturn(true);\n        $request->request = $parameterBag;\n\n        $topicRepository->findOneBy(array(\n            'id' => 1,\n        ))->willReturn($topic);\n\n        $topicService->saveTopicPosition($topic, $request->request->all())->willReturn(true);\n\n        $cacheService->clearNamespace('topic')->shouldBeCalled();\n\n        $response = $this->moveAction($request, 1);\n        $response->getStatusCode()->shouldReturn(200);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\JsonResponse');\n    }\n\n    public function its_moveAction_should_return_404_status_code_when_topic_to_be_moved_not_found($request)\n    {\n        $response = $this->moveAction($request, 1);\n        $response->getStatusCode()->shouldReturn(404);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\JsonResponse');\n    }\n\n    public function its_detachTopicAction_should_return_403_status_code_when_no_permissions($request, $user)\n    {\n        $user->hasPermission('AttachTopicToArticle')->willReturn(false);\n        $response = $this->detachTopicAction($request);\n        $response->getStatusCode()->shouldReturn(403);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\JsonResponse');\n    }\n\n    public function its_detachTopicAction_should_return_404_status_code_when_no_article($request, $user, $entityManager, $repository)\n    {\n        $user->hasPermission('AttachTopicToArticle')->willReturn(true);\n        $entityManager->getRepository('Newscoop\\Entity\\Article')->willReturn($repository);\n        $request->get('articleNumber')->willReturn('64');\n        $request->get('topicId')->willReturn('1');\n        $request->get('language')->willReturn('1');\n        $repository->findOneBy(array(\n            'number' => '64',\n            'language' => '1',\n        ))->willReturn(null);\n        $response = $this->detachTopicAction($request);\n        $response->getStatusCode()->shouldReturn(404);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\JsonResponse');\n    }\n\n    public function its_detachTopicAction_should_return_404_status_code_when_no_topic($request, $query, $user, $topicRepository, $entityManager, $repository, $article)\n    {\n        $user->hasPermission('AttachTopicToArticle')->willReturn(true);\n        $entityManager->getRepository('Newscoop\\Entity\\Article')->willReturn($repository);\n        $request->get('articleNumber')->willReturn('64');\n        $request->get('topicId')->willReturn('1');\n        $request->get('language')->willReturn('1');\n        $repository->findOneBy(array(\n            'number' => '64',\n            'language' => '1',\n        ))->willReturn($article);\n\n        $entityManager->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')->willReturn($topicRepository);\n        $topicRepository->getSingleTopicQuery('1')->willReturn($query);\n        $query->getOneOrNullResult()->willReturn(null);\n\n        $response = $this->detachTopicAction($request);\n        $response->getStatusCode()->shouldReturn(404);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\JsonResponse');\n    }\n\n    public function its_detachTopicAction_should_detach_topic_from_the_article(\n        $request,\n        $topicService,\n        $topic,\n        $query,\n        $user,\n        $topicRepository,\n        $entityManager,\n        $repository,\n        $article,\n        $cacheService\n    ) {\n        $user->hasPermission('AttachTopicToArticle')->willReturn(true);\n        $entityManager->getRepository('Newscoop\\Entity\\Article')->willReturn($repository);\n        $request->get('articleNumber')->willReturn('64');\n        $request->get('topicId')->willReturn('1');\n        $request->get('language')->willReturn('1');\n        $repository->findOneBy(array(\n            'number' => '64',\n            'language' => '1',\n        ))->willReturn($article);\n\n        $topic->getTitle()->willReturn('test topic');\n\n        $entityManager->getRepository('Newscoop\\NewscoopBundle\\Entity\\Topic')->willReturn($topicRepository);\n        $topicRepository->getSingleTopicQuery('1')->willReturn($query);\n        $query->getOneOrNullResult()->willReturn($topic);\n\n        $topicService->removeTopicFromArticle($topic, $article)->willReturn(true);\n        $cacheService->clearNamespace('topic')->shouldBeCalled();\n\n        $response = $this->detachTopicAction($request);\n        $response->getStatusCode()->shouldReturn(200);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\JsonResponse');\n    }\n\n    public function its_attachTopicAction_should_return_403_status_code_when_no_permissions($request, $user)\n    {\n        $user->hasPermission('AttachTopicToArticle')->willReturn(false);\n        $response = $this->attachTopicAction($request);\n        $response->getStatusCode()->shouldReturn(403);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\JsonResponse');\n    }\n\n    public function its_attachTopicAction_should_return_404_status_code_when_no_article($request, $queryBuilder, $user, $entityManager, $repository, $query)\n    {\n        $user->hasPermission('AttachTopicToArticle')->willReturn(true);\n        $entityManager->getRepository('Newscoop\\Entity\\Article')->willReturn($repository);\n        $request->get('_articleNumber')->willReturn('64');\n        $request->get('_languageCode')->willReturn('1');\n        $repository\n            ->createQueryBuilder('a')\n            ->willReturn($queryBuilder);\n        $queryBuilder->join('a.language', 'l')->willReturn($queryBuilder);\n        $queryBuilder->where('a.number = :number')->willReturn($queryBuilder);\n        $queryBuilder->andWhere('l.code = :code')->willReturn($queryBuilder);\n        $queryBuilder->setParameters(array('number' => '64', 'code' => '1'))->willReturn($queryBuilder);\n        $queryBuilder->getQuery()->willReturn($query);\n        $query->getOneOrNullResult()->willReturn(null);\n\n        $response = $this->attachTopicAction($request);\n        $response->getStatusCode()->shouldReturn(404);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\JsonResponse');\n    }\n\n    public function its_attachTopicAction_should_attach_topics(\n        $request,\n        $topic,\n        $topicService,\n        $queryBuilder,\n        $user,\n        $entityManager,\n        $repository,\n        $articleTopicrepository,\n        $query,\n        $article,\n        $cacheService\n    ) {\n        $user->hasPermission('AttachTopicToArticle')->willReturn(true);\n        $entityManager->getRepository('Newscoop\\Entity\\Article')->willReturn($repository);\n        $request->get('_articleNumber')->willReturn('64');\n        $request->get('_languageCode')->willReturn('1');\n        $request->get('ids')->willReturn(array('112', '113'));\n        $repository\n            ->createQueryBuilder('a')\n            ->willReturn($queryBuilder);\n        $queryBuilder->join('a.language', 'l')->willReturn($queryBuilder);\n        $queryBuilder->where('a.number = :number')->willReturn($queryBuilder);\n        $queryBuilder->andWhere('l.code = :code')->willReturn($queryBuilder);\n        $queryBuilder->setParameters(array('number' => '64', 'code' => '1'))->willReturn($queryBuilder);\n        $queryBuilder->getQuery()->willReturn($query);\n        $query->getOneOrNullResult()->willReturn($article);\n\n        $entityManager->getReference(\"Newscoop\\NewscoopBundle\\Entity\\Topic\", Argument::type('string', 'integer'))->willReturn($topic);\n        $articleTopicrepository->getArticleTopicsIds('64', true)->willReturn($query);\n        $query->getArrayResult()->willReturn(array(array('109'), array('111')));\n\n        $cacheService->clearNamespace('topic')->shouldBeCalled();\n\n        $response = $this->attachTopicAction($request);\n        $response->getStatusCode()->shouldReturn(200);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\JsonResponse');\n    }\n\n    public function its_isAttachedAction_should_return_404_status_code_when_topic_doesnt_exist($request, $repository)\n    {\n        $repository->findOneBy(array(\n            'id' => 3,\n        ))->willReturn(null);\n        $response = $this->isAttachedAction($request, 3);\n        $response->getStatusCode()->shouldReturn(404);\n        $response->shouldBeAnInstanceOf('Symfony\\Component\\HttpFoundation\\JsonResponse');\n    }\n}\n"
  },
  {
    "path": "spec/Newscoop/NewscoopBundle/EventListener/IssueListenerSpec.php",
    "content": "<?php\n\nnamespace spec\\Newscoop\\NewscoopBundle\\EventListener;\n\nuse PhpSpec\\ObjectBehavior;\nuse Newscoop\\Services\\IssueService;\nuse Symfony\\Component\\HttpKernel\\Event\\GetResponseEvent;\nuse Symfony\\Component\\HttpFoundation\\Request;\n\nclass IssueListenerSpec extends ObjectBehavior\n{\n    public function it_is_initializable()\n    {\n        $this->shouldHaveType('Newscoop\\NewscoopBundle\\EventListener\\IssueListener');\n    }\n\n    public function let(IssueService $issueService, Request $request)\n    {\n        $this->beConstructedWith($issueService);\n    }\n\n    public function it_calls_issue_resolver_on_request(GetResponseEvent $event, Request $request)\n    {\n        $event->getRequest()->willReturn($request);\n        $this->onRequest($event)->shouldReturn(null);\n    }\n}\n"
  },
  {
    "path": "spec/Newscoop/Services/ArticleServiceSpec.php",
    "content": "<?php\n\nnamespace spec\\Newscoop\\Services;\n\nuse PhpSpec\\ObjectBehavior;\nuse Prophecy\\Argument;\nuse Doctrine\\ORM\\EntityManager;\n\nclass ArticleServiceSpec extends ObjectBehavior\n{\n    public function let(\n        EntityManager $em\n    ){\n        $this->beConstructedWith($em);\n    }\n\n    function it_is_initializable()\n    {\n        $this->shouldHaveType('Newscoop\\Services\\ArticleService');\n\n    }\n}\n"
  },
  {
    "path": "spec/Newscoop/Services/AttachmentServiceSpec.php",
    "content": "<?php\n\nnamespace spec\\Newscoop\\Services;\n\nuse PhpSpec\\ObjectBehavior;\nuse Newscoop\\Entity\\Attachment;\nuse Newscoop\\Entity\\Translation;\nuse Newscoop\\Entity\\Language;\nuse Symfony\\Component\\Filesystem\\Filesystem;\nuse Symfony\\Component\\HttpFoundation\\File\\UploadedFile;\nuse Newscoop\\Services\\UserService;\nuse Prophecy\\Argument;\n\nclass AttachmentServiceSpec extends ObjectBehavior\n{\n    public function let(\n        $die,\n        \\Doctrine\\ORM\\EntityManager $em,\n        \\Symfony\\Component\\Routing\\Router $router,\n        UserService $userService,\n        \\Newscoop\\Entity\\Repository\\AutoIdRepository $repository,\n        \\Newscoop\\Entity\\User $user\n    ){\n        $em\n            ->getRepository('Newscoop\\Entity\\AutoId')\n            ->willReturn($repository);\n\n        $em->persist(Argument::any())->willReturn(true);\n        $em->flush(Argument::any())->willReturn(true);\n        $em->remove(Argument::any())->willReturn(true);\n\n        $repository->getNextTranslationPhraseId()->willReturn('7');\n        $user\n            ->hasPermission('AddFile')\n            ->willReturn(true);\n\n        $userService\n            ->getCurrentUser()\n            ->willReturn($user);\n\n        $this->beConstructedWith(array(\n            'file_base_url' => \"files/\",\n            'file_directory' => realpath(__DIR__ . '/../../../newscoop/public/files').'/',\n            'file_num_dirs_level_1' => 1000,\n            'file_num_dirs_level_2' => 1000,\n        ), $em, $router, $userService);\n    }\n\n    public function it_is_initializable()\n    {\n        $this->shouldHaveType('Newscoop\\Services\\AttachmentService');\n    }\n\n    public function it_should_return_path_for_attachment()\n    {\n        $this->getStorageLocation(new Attachment())\n            ->shouldBe(realpath(__DIR__ . '/../../../newscoop/public/files').'/0000/0000/000000000');\n\n        $attachment = new Attachment();\n        $attachment->setExtension('pdf')\n            ->setId(34);\n\n        $this->getStorageLocation($attachment)\n            ->shouldBe(realpath(__DIR__ . '/../../../newscoop/public/files').'/0000/0000/000000034.pdf');\n\n    }\n\n    public function it_should_upload_attachment()\n    {\n        $filesystem = new Filesystem();\n\n        $newFileName = __DIR__.'/../../assets/images/temp-image.jpg';\n        $filesystem->copy(__DIR__.'/../../assets/images/picture.jpg', $newFileName);\n        $uploadedFile = new UploadedFile($newFileName, 'temp-image.jpg', 'image/jpg', filesize($newFileName), null, true);\n        $language = new Language();\n\n        $this->upload($uploadedFile, 'Test file', $language, array());\n    }\n\n    public function it_should_update_attachment()\n    {\n        $filesystem = new Filesystem();\n\n        $newFileName = __DIR__.'/../../assets/images/temp-image.jpg';\n        $filesystem->copy(__DIR__.'/../../assets/images/picture.jpg', $newFileName);\n        $uploadedFile = new UploadedFile($newFileName, 'temp-image.jpg', 'image/jpg', filesize($newFileName), null, true);\n        $language = new Language();\n        $attachment = new Attachment();\n\n        $phraseId = 1;\n        $description = new Translation($phraseId);\n        $description->setLanguage($language);\n        $description->setTranslationText('Description text');\n        $attachment->setDescription($description);\n\n        $this->upload($uploadedFile, 'Test file - updated', $language, array(), $attachment);\n    }\n\n    public function it_should_remove_attachemnt()\n    {\n        $attachment = new Attachment();\n\n        $this->remove($attachment);\n    }\n\n    public function it_should_generate_attachment_url()\n    {\n        $attachment = new Attachment();\n        $attachment->setName('testfile.pdf')->setId(34);\n        $this->getAttachmentUrl($attachment);\n    }\n}\n"
  },
  {
    "path": "spec/Newscoop/Services/CommentServiceSpec.php",
    "content": "<?php\n\nnamespace spec\\Newscoop\\Services;\n\nuse PhpSpec\\ObjectBehavior;\nuse Prophecy\\Argument;\n\nclass CommentServiceSpec extends ObjectBehavior\n{\n    public function it_is_initializable()\n    {\n        $this->shouldHaveType('Newscoop\\Services\\CommentService');\n    }\n\n    /**\n     * @param \\Doctrine\\ORM\\EntityManager                                       $em\n     * @param \\Newscoop\\Entity\\Repository\\Comment\\AcceptanceRepository          $repository\n     * @param \\Doctrine\\ORM\\QueryBuilder                                        $queryBuilder\n     * @param \\Doctrine\\ORM\\Query\\Expr                                          $expr\n     * @param \\Doctrine\\ORM\\AbstractQuery                                       $query\n     * @param \\Newscoop\\Services\\PublicationService                             $publicationService\n     */\n    public function let($em, $repository, $queryBuilder, $expr, $query, $publicationService)\n    {\n        $em\n            ->getRepository('Newscoop\\Entity\\Comment\\Acceptance')\n            ->willReturn($repository);\n\n        $repository\n            ->createQueryBuilder('a')\n            ->willReturn($queryBuilder);\n\n        $repository\n            ->isBanned(Argument::any(), Argument::any())\n            ->willReturn(array());\n\n        $queryBuilder->select('a.search')->willReturn($queryBuilder);\n        $queryBuilder->where(null)->willReturn($queryBuilder);\n        $queryBuilder->expr()->willReturn($expr);\n        $queryBuilder->setParameters(array(\"name\" => null, \"email\" => null, \"ip\" => null))->willReturn($queryBuilder);\n        $queryBuilder->getQuery()->willReturn($query);\n\n        $this->beConstructedWith($em, $publicationService);\n    }\n\n    /**\n     * @param \\Newscoop\\Entity\\Repository\\CommentRepository $commentRepository\n     */\n    public function it_should_get_all_replies($commentRepository)\n    {\n        $commentRepository->getDirectReplies(33)->willReturn(array(20));\n        $commentRepository->getDirectReplies(20)->willReturn(array());\n        $this->getAllReplies(33, $commentRepository)->shouldReturn(array(33, 20));\n    }\n\n    /**\n     * @param \\Newscoop\\Entity\\Comment\\Commenter $commenter\n     */\n    public function it_should_check_if_user_is_banned($commenter)\n    {\n        $this->isBanned($commenter)->shouldReturn(false);\n    }\n}\n"
  },
  {
    "path": "spec/Newscoop/Services/EditorServiceSpec.php",
    "content": "<?php\n\nnamespace spec\\Newscoop\\Services;\n\nuse PhpSpec\\ObjectBehavior;\nuse Symfony\\Component\\HttpKernel\\Debug\\TraceableEventDispatcher;\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Entity\\Article;\nuse Newscoop\\Entity\\Language;\nuse Newscoop\\EventDispatcher\\Events\\GenericEvent;\nuse Prophecy\\Argument;\n\nclass EditorServiceSpec extends ObjectBehavior\n{\n    public function it_is_initializable()\n    {\n        $this->shouldHaveType('Newscoop\\Services\\EditorService');\n        $this->shouldImplement('Newscoop\\EditorInterface');\n    }\n\n    public function let(TraceableEventDispatcher $dispatcher, EntityManager $em, Article $article, Language $language)\n    {\n        $article->getNumber()->willReturn(10);\n        $article->getName()->willReturn(\"test article\");\n        $article->getPublicationId()->willReturn(2);\n        $article->getLanguageId()->willReturn(1);\n        $article->getIssueId()->willReturn(20);\n        $article->getSectionId()->willReturn(30);\n\n        $em\n            ->getReference('Newscoop\\Entity\\Language', 1)\n            ->willReturn($language);\n\n        $language->getCode()->willReturn('en');\n\n        $this->beConstructedWith($dispatcher, $em);\n    }\n\n    public function it_should_get_editor_link(\n        Article $article,\n        TraceableEventDispatcher $dispatcher,\n        GenericEvent $event)\n    {\n        $dispatcher->dispatch(\n             'newscoop_admin.editor',\n             Argument::type('Newscoop\\EventDispatcher\\Events\\GenericEvent')\n        )->shouldBeCalled()->willReturn($event);\n\n        $event->hasArgument('link')->willReturn(true);\n        $event->getArgument('link')->willReturn(null);\n        $params = \"f_publication_id=2&f_issue_number=20&f_section_number=30&f_article_number=10&f_language_id=1&f_language_selected=1\";\n\n        $this->getLink($article)->shouldReturn('/admin/articles/edit.php?'. $params);\n    }\n\n    public function it_should_get_3rd_party_editor_link(\n        Article $article,\n        TraceableEventDispatcher $dispatcher,\n        GenericEvent $event)\n    {\n        $dispatcher->dispatch(\n             'newscoop_admin.editor',\n             Argument::type('Newscoop\\EventDispatcher\\Events\\GenericEvent')\n        )->shouldBeCalled()->willReturn($event);\n\n        $link = '/admin/some/3rd/party/editor/link/10/1';\n        $event->hasArgument('link')->willReturn(true);\n        $event->getArgument('link')->willReturn($link);\n\n        $this->getLink($article)->shouldReturn($link);\n    }\n\n    public function it_should_return_default_editor_parameters(Article $article)\n    {\n        $params = \"?f_publication_id=2&f_issue_number=20&f_section_number=30&f_article_number=10&f_language_id=1&f_language_selected=1\";\n        $this->getLinkParameters($article)->shouldReturn($params);\n    }\n}\n"
  },
  {
    "path": "spec/Newscoop/Services/IssueServiceSpec.php",
    "content": "<?php\n\nnamespace spec\\Newscoop\\Services;\n\nuse PhpSpec\\ObjectBehavior;\nuse Prophecy\\Argument;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Newscoop\\Entity\\Issue;\nuse Newscoop\\Entity\\Language;\nuse Newscoop\\Services\\IssueService;\nuse Newscoop\\Services\\CacheService;\nuse Newscoop\\Services\\PublicationService;\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Entity\\Repository\\IssueRepository;\nuse Doctrine\\ORM\\EntityRepository;\nuse Newscoop\\Entity\\Publication;\nuse Symfony\\Component\\HttpFoundation\\ParameterBag;\nuse Doctrine\\ORM\\AbstractQuery;\n\nclass IssueServiceSpec extends ObjectBehavior\n{\n    public function it_is_initializable()\n    {\n        $this->shouldHaveType('Newscoop\\Services\\IssueService');\n        $this->shouldImplement('Newscoop\\IssueServiceInterface');\n    }\n\n    public function let(\n        EntityManager $em,\n        PublicationService $publicationService,\n        IssueRepository $issueRepository,\n        EntityRepository $languageRepository,\n        Issue $issue,\n        Publication $publication,\n        AbstractQuery $query,\n        CacheService $cacheService\n    ){\n        $em->getRepository('Newscoop\\Entity\\Issue')->willReturn($issueRepository);\n        $em->getRepository('Newscoop\\Entity\\Language')->willReturn($languageRepository);\n        $publicationService->getPublication()->willReturn($publication);\n\n        $this->beConstructedWith($em, $publicationService, $cacheService);\n    }\n\n    public function it_resolves_issue_from_request_data(\n        Request $request,\n        Issue $issue,\n        ParameterBag $attributes,\n        $issueRepository,\n        $publication,\n        $query\n    ){\n        $issueRepository->findOneBy(array(\n            'publication' => $publication,\n            'shortName' => 'may2014',\n        ))->willReturn($issue);\n        $issueRepository->getIssue('en', $publication, 'may2014')->willReturn($query);\n        $query->getOneOrNullResult()->willReturn($issue);\n\n        $request->getRequestUri()->willReturn('/en/may2014/60/test-article.htm');\n        $issue->getId()->willReturn(1);\n        $issue->getNumber()->willReturn(10);\n        $issue->getName()->willReturn(\"May 2014\");\n        $issue->getShortName()->willReturn(\"may2014\");\n        $language = new Language();\n        $language->setId(1);\n        $language->setCode(\"en\");\n        $issue->getLanguage()->willReturn($language);\n        $issue->getLanguageId()->willReturn(\"1\");\n        $request->attributes = $attributes;\n        $this->issueResolver($request)->shouldReturn($issue);\n        $this->getIssueMetadata()->shouldBeLike(array(\n            \"id\" => 1,\n            \"number\" => 10,\n            \"name\" => \"May 2014\",\n            \"shortName\" => \"may2014\",\n            \"code_default_language\" => \"en\",\n            \"id_default_language\" => \"1\",\n        ));\n    }\n\n    public function it_gets_the_latest_issue_for_current_publication(\n        Issue $issue,\n        Publication $publication,\n        $query,\n        $issueRepository,\n        $languageRepository,\n        $em\n    ){\n        $publication->getId()->willReturn(1);\n        $em->getReference('Newscoop\\Entity\\Issue', 7)->willReturn($issue);\n        $language = new Language();\n        $language->setId(1);\n        $languageRepository->findOneBy(Argument::type('array'))->willReturn($language);\n        $issueRepository->getLastPublishedByPublicationAndLanguage(1, 1)->willReturn($query);\n        $query->getSingleResult()->willreturn($issue);\n\n        $this->getLatestPublishedIssue()->shouldReturn($issue);\n    }\n}\n"
  },
  {
    "path": "spec/Newscoop/Services/RelatedArticlesServiceSpec.php",
    "content": "<?php\n\nnamespace spec\\Newscoop\\Services;\n\nuse PhpSpec\\ObjectBehavior;\nuse Prophecy\\Argument;\nuse Doctrine\\ORM\\EntityManager;\nuse Newscoop\\Entity\\RelatedArticles;\nuse Newscoop\\Entity\\RelatedArticle;\nuse Newscoop\\Entity\\Article;\nuse Newscoop\\Entity\\Repository\\RelatedArticleRepository;\nuse Newscoop\\Entity\\Repository\\RelatedArticlesRepository;\nuse Doctrine\\ORM\\AbstractQuery;\n\nclass RelatedArticlesServiceSpec extends ObjectBehavior\n{\n    \n    public function let(\n        EntityManager $em,\n        Article $article,\n        Article $articleToRemove,\n        Article $articleToAdd,\n        RelatedArticles $relatedArticles,\n        RelatedArticle $relatedArticle,\n        RelatedArticleRepository $relatedArticleRepository,\n        RelatedArticlesRepository $relatedArticlesRepository,\n        AbstractQuery $query,\n        AbstractQuery $getRelatedArticleQuery,\n        AbstractQuery $getAllArticlesQuery,\n        \\Doctrine\\DBAL\\Connection $connection\n\n    ){\n        $article->getNumber()->willReturn(1);\n        $articleToRemove->getNumber()->willReturn(2);\n        $articleToAdd->getNumber()->willReturn(2);\n        $em->persist(Argument::any())->willReturn(true);\n        $em->flush(Argument::any())->willReturn(true);\n        $em->remove(Argument::any())->willReturn(true);\n        $em->getConnection()->willReturn($connection);\n\n        $em->getRepository('Newscoop\\Entity\\RelatedArticle')->willReturn($relatedArticleRepository);\n        $em->getRepository('Newscoop\\Entity\\RelatedArticles')->willReturn($relatedArticlesRepository);\n\n        $relatedArticlesRepository->getRelatedArticles(Argument::type('integer'))->willReturn($query);\n\n        $relatedArticleRepository->getAllArticles(Argument::type('\\Newscoop\\Entity\\RelatedArticles'))->willReturn($getAllArticlesQuery);\n        $getAllArticlesQuery->getResult()->willReturn(array());\n        $relatedArticleRepository->getRelatedArticle(Argument::type('\\Newscoop\\Entity\\RelatedArticles'), Argument::type('integer'))->willReturn($query);\n        $relatedArticleRepository->getRelatedArticle(Argument::type('integer'))->willReturn($getRelatedArticleQuery);\n        $getRelatedArticleQuery->getOneOrNullResult()->willReturn($relatedArticle);\n\n        $relatedArticle->getOrder()->willReturn(Argument::type('integer'));\n\n        $this->beConstructedWith($em);\n    }\n\n    function it_is_initializable()\n    {\n        $this->shouldHaveType('Newscoop\\Services\\RelatedArticlesService');\n    }\n\n    function it_should_get_related_articles($article)\n    {\n        $this->getRelatedArticles($article);\n    }\n\n    function it_should_remove_related_article($article, $articleToRemove)\n    {\n        $this->removeRelatedArticle($article, $articleToRemove)->shouldReturn(true);\n    }\n\n    function it_should_add_related_article($article, $articleToAdd)\n    {\n        $this->addArticle($article, $articleToAdd);\n    }\n\n    function it_should_reposition_related_article($article, $articleToAdd)\n    {\n        $this->addArticle($article, $articleToAdd, 2);\n    }\n}\n"
  },
  {
    "path": "spec/Newscoop/Services/ThemesServiceSpec.php",
    "content": "<?php\n\nnamespace spec\\Newscoop\\Services;\n\nuse PhpSpec\\ObjectBehavior;\nuse Newscoop\\IssueServiceInterface;\nuse Newscoop\\Services\\CacheService;\nuse Newscoop\\Services\\PublicationService;\nuse Newscoop\\Entity\\Issue;\nuse Newscoop\\Entity\\Language;\nuse Newscoop\\Entity\\Publication;\nuse Doctrine\\ORM\\EntityManager;\nuse Doctrine\\ORM\\EntityRepository;\nuse Doctrine\\Bundle\\DoctrineBundle\\Registry;\nuse Newscoop\\Entity\\Output;\nuse Newscoop\\Entity\\Output\\OutputSettingsIssue;\nuse Newscoop\\Entity\\Output\\OutputSettingsPublication;\nuse Prophecy\\Argument;\nuse Newscoop\\Entity\\Resource;\n\nclass ThemesServiceSpec extends ObjectBehavior\n{\n    public function it_is_initializable()\n    {\n        $this->shouldHaveType('Newscoop\\Services\\ThemesService');\n        $this->shouldImplement('Newscoop\\ThemesServiceInterface');\n    }\n\n    public function let(\n        IssueServiceInterface $issueService,\n        Issue $issue,\n        CacheService $cacheService,\n        PublicationService $publicationService,\n        Publication $publication,\n        EntityManager $em,\n        Registry $doctrine,\n        EntityRepository $repository,\n        Output $output,\n        OutputSettingsIssue $issueOutput,\n        OutputSettingsPublication $publicationOutput,\n        Language $language\n    ){\n        $issueService->getIssue()->willReturn($issue);\n        $publicationService->getPublication()->willReturn($publication);\n        $publicationService->getPublicationMetadata()->willReturn(array('request' => array('uri' => '/')));\n        $doctrine->getManager()->willReturn($em);\n\n        $em->getRepository(Argument::exact('Newscoop\\Entity\\Output'))->willReturn($repository);\n        $repository->findBy(array('name' => 'Web'))->willReturn(array($output));\n\n        $em->getRepository(Argument::exact('Newscoop\\Entity\\Output\\OutputSettingsIssue'))->willReturn($repository);\n        $repository->findBy(array('issue' => 1, 'output' => 1))->willReturn(array($issueOutput));\n\n        $em->getRepository(Argument::exact('Newscoop\\Entity\\Output\\OutputSettingsPublication'))->willReturn($repository);\n        $repository->findBy(array('output' => 1, 'publication' => $publication, 'language' => 1))->willReturn(array($publicationOutput));\n\n        $em->getRepository(Argument::exact('Newscoop\\Entity\\Language'))->willReturn($repository);\n        $repository->findOneBy(Argument::type('array'))->willReturn($language);\n\n        $issue->getId()->willReturn(1);\n        $issue->getNumber()->willReturn(10);\n        $issue->getName()->willReturn(\"May 2014\");\n        $issue->getShortName()->willReturn(\"may2014\");\n        $issue->getLanguageId()->willReturn(1);\n        $output->getId()->willReturn(1);\n        $output->getName()->willReturn('Web');\n\n        $this->beConstructedWith($issueService, $cacheService, $publicationService, $em);\n    }\n\n    public function it_gets_weboutput_by_name(Output $output)\n    {\n        $this->findByName('Web')->shouldReturn($output);\n    }\n\n    public function it_finds_by_issue_and_output(Issue $issue, Output $output, OutputSettingsIssue $issueOutput)\n    {\n        $this->findByIssueAndOutput($issue, $output)->shouldReturn($issueOutput);\n    }\n\n    public function it_should_throw_exception_when_name_param_is_empty_or_null()\n    {\n        $this\n            ->shouldThrow('Exception')\n            ->during('findByName', array(null));\n\n        $this\n            ->shouldThrow('Exception')\n            ->during('findByName', array(''));\n    }\n\n    public function it_gets_theme_path(\n        OutputSettingsIssue $issueOutput,\n        Resource $resource,\n        $publicationOutput\n    ){\n        $resource->getPath()->willReturn('publication_1/theme_1/');\n        $issueOutput->getThemePath()->willReturn($resource);\n        $publicationOutput->getThemePath()->willReturn($resource);\n        $this->getThemePath()->shouldReturn('publication_1/theme_1/');\n    }\n}\n"
  }
]